利用Matlab完成图像的截图工作实例教程 - 技术蛀虫

时间:2024-02-18 08:39:12

利用Matlab完成图像的截图工作实例教程

截图首先要进行的就是选取你要截图的正方形的点,选取方式,调用函数:

[x,y,c]=ginput(n);

即可。上面的函数中n参数用于决定图像中选取的点的个数,x,y返回的是所选取的点的坐标,

c返回的是你选择的键的类型:是左键还是右键或者是中间的键。

imcrop函数用于截图,并返回你截的图像。

假设我们想想得到类似于qq截图的效果,可以这样进行:

在你的GUI中,添加一个按钮,在你的按钮的Callbacks函数中,添加下面的语句即可:

被截取的图像在GUI中的axes1中,

[x,y,c]=ginput(2);
if c==1
BB=imcrop(A,[min(x(1),x(2)),min(y(1),y(2)),abs(x(2)-x(1)),abs(y(2)-y(1))]);
axes(handles.axes2); %你的截图放在GUI中的axes2中
imshow(BB)
end

我建立的GUI界面如下所示:

点击Open按钮,加载你的图像,然后点击Cut按钮,结果如下所示

点击Cut后,会出现一个让你选择的十字框,然后你就可以进行截图了……截图后,自动在右边的axes中显示你的截图结果。如下所示: