- 如果图像对比度较低,这可能需要大量的预处理步骤,如对比均衡使用“histeq”或“adapthisteq”。
- 如果第一步放大噪声,那么可以考虑使用一些去噪步骤之前。
- 如果感兴趣的特性还不突出,可以使用某种特征提取或增强在使用“imfindcircles”之前。
- 在许多情况下,正确的圆检测还需要调整“EdgeThreshold”,“敏感性”和“ObjectPolarity”参数。
- 可以进一步使用“标准”输出过滤假圈如果高灵敏度结果太多虚假的圈子里。
- imfindcircles也有两个独立的算法下罩,可以切换使用方法的参数。有时候一个算法给出更好的结果。
“imfindcircles”为什么不找圈在我的图像吗?
93(30天)
显示旧的评论
MathWorks支万博1manbetx持团队
2017年4月6日
编辑:
MathWorks支万博1manbetx持团队
2023年5月11日13:07
“imfindcircles”功能不可靠地发现圈子,尤其是如果他们不完美或者图像对比度低。我怎么能找到圈子更可靠和有效地在我的图像吗?
接受的答案
MathWorks支万博1manbetx持团队
2023年5月10日下午4
编辑:MathWorks支万博1manbetx持团队
2023年5月11日13:07
成功使用的几个小贴士imfindcircles的“技巧”一节中可以找到这个函数的文档:
也有一些其他因素阻碍的正确检测。例如,已知imfindcircles敏感图像的对比。下面是几个额外的因素时要考虑使用imfindcircles函数:
- - - - - - - - - - -
完全寻找圈在一个图像的另一种方法是使用函数“regionprops”,结合“偏心”属性。这往往是一个更灵活、健壮的方法,特别是在地区并不完美的圈子里,或对比度低。例如,当操作在一个二进制图像,“BW”,你可以做一些类似如下:
统计= regionprops (“表”BW,“重心”,“偏心”,“EquivDiameter”);
这返回每个地区在图像和它的离心率(衡量圆的东西是如何),近似圆的直径,和近似圆的中心。此外,你可以做一些过滤的结果少只接受古怪的地区,0.5和直径在80年和100年之间像素如下:
统计(统计数据。偏心率> 5:)= []
统计(统计数据。EquivDiameter > 80 |统计数据。EquivDiameter < 100:) = []
如果你想画个圈子,可以使用“viscircles”功能使用重心和半径作为输入。你可以找到更多的信息在功能上“regionprops”在以下页面:
//www.tianjin-qmedu.com/help/images/ref/regionprops.html
如果你想早些时候发布的文档,请导航到我们的文档档案:
//www.tianjin-qmedu.com/help/doc-archives.html?s_tid=hc_other_releases