帮帮忙!!谁会用matlab把这张二值图像中的连通区域分别用最小外接矩形框定,把代码写出来就行了

 我来答
百度网友db4b04636
2015-05-13 · TA获得超过2915个赞
知道小有建树答主
回答量:834
采纳率:92%
帮助的人:339万
展开全部
1)imread把图片读进去
2)设定黑白的标准大于0.5的认为是白色,小于0.5的认为是黑色;将读进去的图片转化为只含01的矩阵。
3)从上往下一行行的检测,发现某一行存在1,就记录这一行;然后继续检测,直到某一行中没有1,再记录没有1的这一行。
4)同理,从左往右一列列检测,记录出现1的列,和不再出现1的列。
5)根据3)和4)就可以确定矩阵的边界了,用比它大一圈像素标注一下就好了。

ps:如何检测一行存在1;比如矩阵A 的i行。if any(A(i,:)==1)
更多追问追答
追问
科那个不是面积最小的矩形吧
可那不是面积最小的矩形吧
平凡的小宋同学
2017-11-08
知道答主
回答量:8
采纳率:0%
帮助的人:7963
展开全部
[l,mm]=bwlabel(img2,8);%img2为二值图
status=regionprops(l,'BoundingBox'); %%画外接矩形
hold on;
for i=1:mm
rectangle('position',status(i).BoundingBox,'edgecolor','r');
end
hold off;
aa=zeros(mm,4);
a=status;
for ig=1:mm
aa(ig,1:4)=a(ig).BoundingBox;
end
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式