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

在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函数完场第五行代码的功能。

程序结果图像如下:

0818b9ca8b590ca3270a3433284dd417.png

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值