我怎么能直观地隔离和测量圆形物体在MATLAB图像吗?

20 Ansichten(30天)的
我怎么能直观地隔离和测量圆形物体在MATLAB图像吗?
你有一个示例,显示如何在MATLAB中执行以下操作:
1。选择一个图像中圆形物体
2。用背景色填充的图像
3所示。画一个轮廓的对象
4所示。找到物体的直径和中心

Akzeptierte Antwort

MathWorks支金宝app持团队
MathWorks支金宝app持团队 我麦2023嗯4点
Bearbeitet:MathWorks支金宝app持团队 我麦2023嗯20:17
这里有一个例子如何视觉隔离并在MATLAB测量圆的对象在一个图像:
我= imread (“eight.tif”);
imshow(我)
BW = roipoly(我);
%手动选择区域
BW1 =不(BW);
J = roifill(我BW1);imshow (J)
%使用ipexsegcell演示
%类型ipexsegcell从MATLAB命令提示符
%查看文档演示
受虐妇女综合症=边缘(J,“索贝尔”(graythresh (I) *。1));
图,imshow(受虐妇女综合症)、标题(“二元梯度面具”);
se90 = strel (“行”,90);
se0 = strel (“行”3 0);
BWsdil = imdilate(受虐妇女综合症,[se90 se0]);
图,imshow (BWsdil)、标题(“扩张梯度面具”);
BWdfill = imfill (BWsdil,“黑洞”);
图中,imshow (BWdfill);
标题(的二进制图像填充孔”);
BWnobord = imclearborder (BWdfill 4);
图,imshow (BWnobord)、标题(“清除边界图像”);
seD = strel (“钻石”1);
BWfinal = imerode (BWnobord, seD);
BWfinal = imerode (BWfinal, seD);
图,imshow (BWfinal)、标题(“分割图像”);
BWoutline = bwperim (BWfinal);
Segout =我;
Segout (BWoutline) = 255;
图,imshow (Segout)、标题(概述了原始图像的);
%找到所选硬币的直径和中心
(i, j) =找到(BWfinal);
i1 =独特(i);
j - 1 =独特(j);
直径= max (i)分钟(我)
center_i =地板(平均(i1))
center_j =地板(平均(j - 1))
此外,另一个演示你可以考虑如下MathWorks FileExchange提交:
//www.tatmou.com/matlabcentral/fileexchange/25157-image-segmentation-tutorial
2 Kommentare
图像分析
图像分析 我31 Okt。2017
开始一个 在这个问题。

Melden您西奇,嗯祖茂堂kommentieren。

Weitere Antworten (1)

图像分析
图像分析 我2016年11月20日
Bearbeitet:MathWorks支金宝app持团队 我2023年4月27日嗯7:10
我不建议接受的答案。看到我的图像处理教程更好和更简单的方法。 //www.tatmou.com/matlabcentral/fileexchange/25157-image-segmentation-tutorial 你可以简单的阈值和调用regionprops。不需要所有不必要的边缘检测和形态学的东西。

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!

翻译的