MATLAB手动选取roi区域(自己写的一个小函数)

简单的matlab的手动选取ROI区域的函数
function [out_roi] = Choose_ROI(meta_path)
%UNTITLED 此处显示有关此函数的摘要
%   此处显示详细说明
a = imread(meta_path);  %从路径读取图片 比如 ./jx.jpg
figure(1),imshow(a);
b=imrect;
h=getPosition(b); %在图片上画roi区域  

%一般图片有三个维度(行,列,三通道)  round函数是四舍五入取整
row=round(h(2));    %左上角的点的所在的行
col=round(h(1));    %左上角的点所在的列
high=round(h(4));   %roi区域的高度
width=round(h(3));  %roi区域的宽度
out_roi=a(row:row+high,col:col+width,:  );
figure(2),imshow(out_roi);
end
函数缺陷

这个函数在图上画了区域之后就直接获取数据并往后执行了,不能弹出一个提示框是否要使用这个区域或者是否重画,如果自己手滑或者画的区域不满意,就只有重新再运行一次该函数
当然封装成项目的时候可以把这个函数单独弄出来,混合编译,设置一个按钮,直到满意为止

事例效果

在这里插入图片描述

  • 9
    点赞
  • 74
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值