使用MATLAB在图像中选择矩形框区域的操作函数即过程

原创 2012年06月29日 17:14:25

在MATLAB图像处理工具箱(Image Processing Toolbox)的GUI函数中,有一些用来在图像或坐标轴上选择矩形或椭圆区域的函数,使用示例如下:

figure, imshow('cameraman.tif');
h = imrect(gca, [10 10 100 100]);
api = iptgetapi(h);
api.addNewPositionCallback(@(p) title(mat2str(p,3)));
fcn = makeConstrainToRectFcn('imrect',get(gca,'XLim'),get(gca,'YLim'));
api.setPositionConstraintFcn(fcn);
下面解释程序功能,

第一行代码:显示matlab内置的一个图像

第一行代码:在图像的以左上角为原点画一个矩形区域,返回矩形区域axes对象的句柄值h,MATLAB的help解释为:

h = imrect(hparent, position)createsa draggable rectangle on the object specified by hparent. position isa four-element vector that specifies the initial size and locationof the rectangle.position has the form [xminymin width height].
第三行代码:得到句柄h的API接口,用于后面的程序调用。

第四行代码:添加一个回调函数,当矩形框的位置更新时,这个回调函数被调用对此进行反应,此处反应的方式为在图像的标题处显示矩形框的位置和大小信息。mat2str用于将句柄函数p的矩形框位置数据转化为字符串。

第五行代码:定义一个矩形框区域限制函数,这个函数使得矩形框被限制在图像内部,不能被挪到图像外部。

第六行代码:调用setPositionConstraintFcn函数完场第五行代码的功能。


程序结果图像如下:


Matlab从图像中选取矩形区域

Matlab从图像中选取矩形区域
  • u012526003
  • u012526003
  • 2016年03月18日 16:37
  • 4087

使用MATLAB在图像中选择矩形框区域的操作函数即过程

在MATLAB图像处理工具箱(Image Processing Toolbox)的GUI函数中,有一些用来在图像或坐标轴上选择矩形或椭圆区域的函数,使用示例如下: [plain]...
  • SMF0504
  • SMF0504
  • 2016年06月28日 21:43
  • 3213

【matlab】从图片中截取矩形区域(手工选取/标记在原图上/截取矩形区域并保存)

%第一步:从图片中选取矩形框区域 I = imread('o.png'); [A,rect] = imcrop(I); imshow(A); rect %第二步:根据rect确定:在原图中绘...
  • u013035197
  • u013035197
  • 2016年11月16日 10:17
  • 2485

Matlab中Rectangle对象的用法

示例 subplot(221) %MATLAB中的函数subplot[1] 使用方法:subplot(m,n,p)或者subplot(m n p)。 subplot是将多个图画到一个平...
  • kobesdu
  • kobesdu
  • 2013年02月27日 16:52
  • 13928

图像中某一块区域数据的选定获取

图像处理过程中,经常对图像中某一部分感兴趣的区域进行研究分析,那么首先第一步就是从图像出获取出该区域的变量。 MATLAB 和 C++ 中对图像数据的访问稍微有些差别,初学者或者一段时间不用,很容易忘...
  • qing101hua
  • qing101hua
  • 2016年10月18日 18:35
  • 1372

图像处理中矩形标记图像中某一块区域matlab中rectangle函数介绍

rectangle('Position',[x,y,w,h]) 从点(x,y)开始绘制一个宽w高h的矩形,对坐标轴数据单元指定值。 注意,按指定的比例显示矩形,需要设置坐标轴数据宽高比来使得x和y...
  • whu_zcj
  • whu_zcj
  • 2016年03月04日 19:47
  • 4582

用matlab做一个高效的辅助标注工具

最近准备做人工智能–深度学习方面的研究,主要方向是计算机视觉,先行的准备工作就是做数据集,包括训练集和测试集。由于算法的目标是大数据的,单训练集就要人工标注5W+的图片,所以用matlab做了一个辅助...
  • humble_thumber
  • humble_thumber
  • 2016年11月01日 20:49
  • 1013

matlab-图片-imrect使用

1.使用固定大小的框 Display updated position in the title. Specify a position constraint function using make...
  • huantuzi
  • huantuzi
  • 2015年12月01日 20:03
  • 2049

matlab 结束imrect的等待

事情是这样的:我想在matlab gui中获取图中的一部分,于是用到了imrect,它的用法一般如下:h = imrect; % 由用户用鼠标绘制矩形 % 继而进行更多的操作,例如获得选中区域的位置 ...
  • shanchuan2012
  • shanchuan2012
  • 2017年06月20日 15:58
  • 926

【Matlab图像处理】截取图像中的矩形区域(可不平行于坐标轴)并保存为图片

待续
  • u013035197
  • u013035197
  • 2016年12月08日 17:31
  • 689
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:使用MATLAB在图像中选择矩形框区域的操作函数即过程
举报原因:
原因补充:

(最多只允许输入30个字)