-
MATLAB 任意比例放大 缩小 滤波 旋转
2012-06-17 17:17:30任意比例放大 缩小 滤波 旋转 均衡化处理 阙值分割 -
MATLAB局部放大功能 magnify.m
2020-12-21 10:19:522、打开figure图,输入magnify,然后右键选中想要放大的区域(按着右键不要动),然后可以使用‘<’和‘>’缩放方法范围,‘+’和‘-’缩放放大比例,看着放大的小图满意后松开右键即可。(这一过程网上都管他们叫... -
Matlab之启用或禁用缩放或者按比例放大函数zoom
2021-02-09 16:53:50启用或禁用缩放或者按比例放大图像 二、详解 1.zoom on zoomon%启用缩放模式。 在图窗中启用缩放模式时,如果在光标处于坐标区内时按下鼠标按键,将会放大或缩小鼠标下面的点。 缩放将会改变坐标区范围。 2....一、zoom函数功能
启用或禁用缩放或者按比例放大图像
二、详解
1.zoom on
zoom on %启用缩放模式。
在图窗中启用缩放模式时,如果在光标处于坐标区内时按下鼠标按键,将会放大或缩小鼠标下面的点。
缩放将会改变坐标区范围。
2.zoom off
zoom off %禁用缩放模式。
从 R2018b 开始,默认情况下启用某些缩放交互,而不管缩放模式如何设置。
如果要禁用这些默认交互,请使用
disableDefaultInteractivity
函数。3.zoom out
zoom out %将绘图恢复为其初始缩放设置。
4.zoom reset
zoom reset %将当前缩放设置记作初始缩放设置。
启用交互式
zoom
模式后,对zoom out
的后续调用或双击都将使绘图恢复到此缩放级别。5.zoom
在禁用和启用缩放模式之间切换(恢复最近使用的缩放工具)。
6.zoom x/yon
zoom xon
和zoom yon
分别为 x 和 y 轴设置zoom on
。7.
zoom
(factor)
zoom(factor)
放大或缩小指定的缩放因子,而不影响交互式缩放模式。大于 1 的值将按该数量放大,大于 0 且小于 1 的数将按
1/factor
缩小。8.
zoom(fig, option)
zoom(fig, option)
使用此语法,可在当前图窗以外的图窗中指定上述任意选项。9.
h = zoom(figure_handle)
h = zoom(figure_handle)
返回图窗figure_handle
的缩放模式对象,以自定义模式的行为。三、示例
1.绘制一个图形并启用缩放模式
plot(1:10); zoom on % zoom in on the plot
2.创建缩放模式对象并将缩放约束到 x 轴。使用圆点表示法设置属性。
plot(1:10); h = zoom; h.Motion = 'horizontal'; h.Enable = 'on'; % zoom in on the plot in the horizontal direction.
3.创建四个坐标区作为子图,并通过为每个坐标区句柄设置不同的属性来设置不同的缩放样式:
ax1 = subplot(2,2,1); plot(1:10); h = zoom; ax2 = subplot(2,2,2); plot(rand(3)); setAllowAxesZoom(h,ax2,false); ax3 = subplot(2,2,3); plot(peaks); setAxesZoomMotion(h,ax3,'horizontal'); ax4 = subplot(2,2,4); contour(peaks); setAxesZoomMotion(h,ax4,'vertical'); % Zoom in on the plots
4.为要触发的缩放模式对象创建 buttonDown 回调。
将以下代码复制到一个新文件,执行代码并观察缩放行为。使用圆点表示法设置属性。
function demo % Allow a line to have its own 'ButtonDownFcn' callback. hLine = plot(rand(1,10)); hLine.ButtonDownFcn = 'disp(''This executes'')'; hLine.Tag = 'DoNotIgnore'; h = zoom; h.ButtonDownFilter = @mycallback; h.Enable = 'on'; % mouse click on the line % function [flag] = mycallback(obj,event_obj) % If the tag of the object is 'DoNotIgnore', then return true. objTag = obj.Tag; if strcmpi(objTag,'DoNotIgnore') flag = true; else flag = false; end
5.为要触发的缩放模式对象的 buttonDown 前和后事件创建回调。
将以下代码复制到一个新文件,执行代码并观察缩放行为。使用圆点表示法设置属性。
function demo % Listen to zoom events plot(1:10); h = zoom; h.ActionPreCallback = @myprecallback; h.ActionPostCallback = @mypostcallback; h.Enable = 'on'; % function myprecallback(obj,evd) disp('A zoom is about to occur.'); % function mypostcallback(obj,evd) newLim = evd.Axes.XLim; msgbox(sprintf('The new X-Limits are [%.2f %.2f].',newLim));
6.通过对上下文菜单编码,用户可以通过右击来切换到平移模式。
使用圆点表示法设置属性
figure plot(magic(10)) hCMZ = uicontextmenu; hZMenu = uimenu('Parent',hCMZ,'Label','Switch to pan',... 'Callback','pan(gcbf,''on'')'); hZoom = zoom(gcf); hZoom.ContextMenu = hCMZ; zoom('on')
-
magnify matlab用放大局部绘图程序
2013-05-06 20:15:14使用方法:1.打开figure图(取消编辑模式),2.在matlab命令窗口中输入magnify,3.回到figure窗口,左键动态选取查看,4.ctrl+左键固化,也可右键固化,‘<’和‘>’缩放方法范围,‘+’和‘-’缩放放大比例 -
matlab图像局部放大算法
2017-11-30 13:56:53本算法简单的实现了图像局部放大的效果,算法需要确定放大区域的中心坐标点,以及放大圆形区域的半径和放大强度,来进行放大区域内的等比例放大,与美图秀秀的大眼功能类似。以人脸图像放大眼睛为例。在使用机器学习...此代码可从https://github.com/TimeIvyace/Partial-Enlargement-of-Image.git中下载
本算法简单的实现了图像局部放大的效果,算法需要确定放大区域的中心坐标点,以及放大圆形区域的半径和放大强度,来进行放大区域内的等比例放大,与美图秀秀的大眼功能类似。以人脸图像放大眼睛为例。在使用机器学习等算法得到人脸68个特征点的基础上,我们可以大致确定眼珠中点的位置。
由此可以大致得到左眼中心点位置为坐标37和40的中点,右眼中心点位置为坐标43和46的中点。接下来,通过设置放大区域半径以及放大强度,则可以实现眼睛放大。局部放大算法代码:
function J=bigger(I,pointx,pointy,r) %I为原图像,pointx和pointy为放大中心点坐标,r为放大半径 im=I; %分别得到放大区域的上下左右坐标 left=round(pointy-r); right=round(pointy+r); top=round(pointx-r); bottom=round(pointx+r); %放大区域面积 space = r * r; strength=30; %放大强度 %原图像为彩色图像,要分成RGB三个分量进行处理 fr=im(:,:,1); fg=im(:,:,2); fb=im(:,:,3); im2fr=fr; im2fg=fg; im2fb=fb; %插值算法 for x=top:bottom offsetx=x-pointx; for y=left:right offsety=y-pointy; xy=offsetx*offsetx+offsety*offsety; if xy<=space %等比例放大 scale=1-xy/space; scale=1-strength/100*scale; %posy和posx为放大后坐标值 %采用最近邻插值算法 posy=round(offsety*scale+pointy); posx=round(offsetx*scale+pointx); im2fr(x,y)=fr(posx,posy); im2fg(x,y)=fg(posx,posy); im2fb(x,y)=fb(posx,posy); end end end %将RGB三个分量整合,得到彩色图像 J=cat(3,im2fr,im2fg,im2fb);
算法没有对图像边界进行判断,若放大区域超出图片范围,则会出错。插值算法使用的是最简单的最近邻算法,所以放大区域边界并不是特别平滑,接下来可以使用更高阶的插值算法进行改进。通过修改放大半径r以及放大强度strength,可以得到一个较为满意的效果。 -
matlab画图坐标放大_matlab画一个局部放大的图中图(总结)
2020-12-30 18:14:25edit plot移动小图,能选取多个局部图,这个方法不错用法:打开figure图,输入magnify,左键动态选取查看,ctrl+左键固化,也可右键固化,‘’缩放方法范围,‘+’和‘-’缩放放大比例第二种:用起来也很方便,缺点...照旧感谢原作者,分享者们,阿门!
以下三种方法,szlqq345喜欢用第一种的。
第一种:magnify是个动态放大镜,固化后可以用tools>edit plot移动小图,能选取多个局部图,这个方法不错
用法:打开figure图,输入magnify,左键动态选取查看,ctrl+左键固化,也可右键固化,‘’缩放方法范围,‘+’和‘-’缩放放大比例
第二种:用起来也很方便,缺点是只能框选一处,不能选取多个。Duane HanselmanandBruce Littlefield编写的MasteringMATLAB7上的例子,实现图中图缩放功能,使用了3个函数,这三个函数在附件中,当然也可以到网站http://www.eece.maine.edu/mm/去下载。
函数简单介绍:
getn()将get()函数的输出参数简化为单个变量;
getbox()实现矩形区域的选择,并捕捉该区域的横纵标的范围
mmzoom创建一个缩放坐标轴。
试图做了例子,传上来一起分享。
例子:
x = -pi:pi/12:pi;
y = tan(sin(x)) - sin(tan(x));
plot(x,y,'-- ro','LineWidth',2,'MarkerEdgeColor','k','MarkerFaceColor','g',
'MarkerSize',7.5)
mmzoom
第三种:也可编个小程序,分别在两个图形句柄里画图,可以借鉴下
代码;
figure(1);
h2=axes('position',[0 0 1 1]);
axis(h2);
x2=0:pi/50:2*pi;
y2=sin(x2);
h3=plot(x2,y2,'b-');
h1=axes('position',[0.3 0.2 0.4 0.4]);
axis(h1);
x1=0:pi/50:2*pi;
y1=cos(x1);
h4=plot(x1,y1,'r-');
hold on
h=[h3; h4];
str=['大图中的曲线';'小图中的曲线'];
legend(h,str);
-
Matlab实现图像的比例缩放
2018-05-10 22:35:49要求:创建4个figure窗口(不可以用subplot,显示不出来放大效果),分别用于显示原始图像、等比例放大1.5倍后的图像、等比例缩小0.5倍后的图像、缩放为高190宽400的图像(实现不等比例缩放)。并保存缩放后的所有...以灰度图像circuit.tif为例,利用Matlab图像处理工具箱中的imresize函数对图像进行比例缩放变换。要求:创建4个figure窗口(不可以用subplot,显示不出来放大效果),分别用于显示原始图像、等比例放大1.5倍后的图像、等比例缩小0.5倍后的图像、缩放为高190宽400的图像(实现不等比例缩放)。并保存缩放后的所有图像文件到当前目录中。
I=imread('circuit.tif'); F=imresize(I,1.5,'nearest'); imwrite(F,'circuitFangda1_5.tif'); S=imresize(I,0.5,'nearest'); imwrite(S,'circuitSuoxiao0_5.tif'); J=imresize(I, [190,400],'nearest'); imwrite(J,'circuitbudengbi190_400.tif'); figure(1); imshow(I); figure(2); imshow(F); figure(3); imshow(S); figure(4); imshow(J);
-
用matlab放大一个(1,n)的矩阵
2020-12-11 19:25:14用matlab放大一个(1,n)的矩阵,这段代码的编写逻辑可以应用于图片的放大中 clear all a=randi(100,1,10); b=input('输入矩阵的列数(大于10)'); c=zeros(1,b); %比例系数 bs=b/10; for m=1:b x=1+round(m/(bs)); ... -
Matlab绘图基本——局部放大图
2020-01-09 15:31:30之前写论文的时候,出图用到了局部放大图,当时网上搜到了一个比较好用的函数:magnify.m文件。...'缩小或扩大方框范围,通过'-'和'+'键减小或增加局部缩放比例,调整到自己想到的区域和缩放大小,松开右键即... -
matlab画一个局部放大的图中图
2017-04-19 10:10:00用法:打开figure图,输入magnify,左键动态选取查看,ctrl+左键固化,也可右键固化,‘’缩放方法范围,‘+’和‘-’缩放放大比例。 Ever wish MATLAB had a magnifying glass so you could loo -
matlab图像处理基础知识1(双线性插值matlab实现--等比例调整缩放倍数)
2016-05-25 17:07:32需求说明:FPGA图像...%当前算法只能等比例放大或者缩小 function scaler_bilinear_matlab() %-----------------------------0:配置输入输出-------------------------------- I=imread('F:\book\Digital -
Matlab画一个局部放大的图中图
2014-01-02 22:51:29照旧感谢原作者,分享者们,阿门!...用法:打开figure图,输入magnify,左键动态选取查看,ctrl+左键固化,也可右键固化,‘’缩放方法范围,‘+’和‘-’缩放放大比例 原帖:http://www.mathworks -
matlab画一个局部放大的图中图(转)
2014-07-11 11:04:00用法:打开figure图,输入magnify,左键动态选取查看,ctrl+左键固化,也可右键固化,‘’缩放方法范围,‘+’和‘-’缩放放大比例 原帖:http://www.mathworks.com/matlabcentral/fileexchange/5961 -
matlab画一个局部放大的图中图(总结)
2019-09-21 20:49:41照旧感谢原作者,分享者们,阿门! 以下三种方法,szlqq345喜欢用第一种的。 第一种:magnify是个动态放大镜,固化后可以用tools>edit plot移动小图,能选取多...’缩放方法范围,‘+’和‘-’缩放放大比例 原... -
【转】Matlab - 实现图像的比例缩放
2018-12-20 17:47:41重点是放大缩小时,需要用到的插值算法命令,不能单纯地用 imresize(A, 0.5); 来进行0.5倍放大(缩小)操作,而要用 imresize(A, 0.5, 'cubic'); 来进行三次样条插值。 转载网址: ... -
【matlab】画一个局部放大的图中图
2016-10-13 09:14:00以下三种方法,szlqq345喜欢用第一种的。 第一种:magnify是个动态放大镜,固化后可以用tools>edit plot移动小图,能选取多个局部图...’缩放方法范围,‘+’和‘-’缩放放大比例 原帖:http://www.mathwork... -
matlab图中图.7z
2020-03-20 10:44:453、打开figure图,输入magnify,然后右键或者ctrl+左键选中想要放大的区域,然后可以使用‘<’和‘>’缩放方法范围,‘+’和‘-’缩放放大比例,看着放大的小图满意后松开右键即可。 4、然后用tools>edit plot就... -
matlab step函数_动画展示PID参数作用——在MATLAB中用代码动态分析
2020-11-28 11:02:32先看PI参数作用效果图:0 系统传递函数我们以一个二阶系统为例,传递函数为在MATLAB中用传递函数创建二阶系统G 运行得到G 1 比例控制比例控制(P)就是将误差信号直接放大或缩小,输出与输入误差成比例关系,传递... -
《传递函数MATLAB实验》.ppt
2020-10-21 09:27:58传递函数MATLAB实验 练习 各种典型环节的阶跃响应曲线 1比例环节K 从图形库浏览器中拖曳Step阶跃输入Gain增益模块Scope模块到仿真操作画面连接成仿真框图 结论比例环节 K 改变则放大倍数改变 2积分环节 1/Ts 拖曳... -
MatLab 图像基本运算实验 数字图像处理
2021-04-05 11:34:10(1)对图像比例放大1.5倍,比例缩小0.7倍,非比例放大到600x700像素,非比例缩小到300x400像素。 I=imread('D:/lenagray.jpg'); I=im2double(I); O1=imresize(I,1.5,'bilinear'); O2=imresize(I,0.7,'bilinear'); ... -
Matlab画图小结(一)
2018-09-18 20:22:08#前言 Matlab作为常用的科学计算软件,其自带的画图足以支持我们日常的画图所学。 ##图中子图作法 第一种:magnify是个动态放大镜,固化后可以用tools&...’缩放方法范围,‘+’和‘-’缩放放大比例。 ... -
MATLAB worldmap 仿真图处理
2017-09-28 20:17:541.MATLAB处理数据为double型,但现在excel表里数据需要转换 判断是否为double型: isa( num_est(1,1),'double' ) % 判断xxx是不是 double类型。返回为1说明为double 2.画图时,如果是数列是按列取值 3.画出图像... -
数学建模算法的matlab代码
2014-07-29 13:18:46显示或隐藏属性编辑器 使用鼠标旋转三维视图 显示或隐藏窗口的图形工具 图形的放大、缩小或按比例缩放 标注图形 annotation clabel datacursormode datetick gtext legend rectangle texlabel title 创建注释对象 ... -
matlab2012b帮助中字体大小调整
2014-06-12 08:16:00matlab2012b help中字体太小,不方便查阅,而preference>>...找到安装目录下相关配置文件即可更改页面比例的初始设置,D:\Program Files\MATLAB\R2012b\help\includes\product\css\site5.... -
动画展示PID参数作用——在MATLAB中用代码动态分析
2020-08-15 16:56:30比例控制(P)就是将误差信号直接放大或缩小,输出与输入误差成比例关系,传递函数为 比例系数Kp在一定范围内按照一定步长变化,绘制带有比例控制的二阶系统单位阶跃响应曲线动画 G = tf(2,[6 ... -
单闭环直流调速系统的设计与Matlab仿真(一).doc
2020-05-11 07:42:47PAGE PAGE 1 课题一单闭环直流调速系统的设计与Matlab仿真一 作 者 学 号 专 业 班 级 指导教师 摘 要 在对调速性能有较高要求的领域如果直流电动机开环系统稳态性能不满足要求可利用速度负反馈提高稳态精度而采用... -
Matlab 图像几何变换 最近邻插值
2020-08-08 18:45:01function new_img = zoom_nearest(filename,s_x,s_y) %图像缩放变换 最近邻插值 ... 为什么放大,新图能由旧图局部少量像素点生成? % 答:floor向左取整,新像素点与旧像素点存在 多对一 的映射关系; %% i... -
qlineseries绘制动态曲线_动画展示PID参数作用——在MATLAB中用代码动态分析
2021-01-08 02:38:47先看PI参数作用效果图:0 系统传递函数我们以一个二阶系统... 1 比例控制比例控制(P)就是将误差信号直接放大或缩小,输出与输入误差成比例关系,传递函数为比例系数Kp在一定范围内按照一定步长变化,绘制带有比例... -
图片处理(旋转缩放)matlab程序
2011-08-08 15:25:19可以实现: 1.图片缩小,采用平均值算法,可以实现长宽比不等的缩小 2.图片放大,采用线性插值,可以实现图片比例改变 3.图片旋转