我在matlab中使用regionprop函数来获取图像的MajorAxisLength。我认为逻辑上这个数字不应该大于sqrt(a ^ 2 + b ^ 2),其中abd b是图像的宽度和高度。但对于我的形象来说。我的黑白图像在图像中央包含一个黑色圆圈。我觉得这很奇怪。有人能帮助我吗?
感谢。
答案 0 :(得分:1)
如果您查看regionprops
(子功能ComputeEllipseParams
)的代码,您会看到他们使用第二个时刻来估算椭球半径。这对于椭球形特征非常有效,但对于具有孔的特征不是很好。如果你从质心周围移除像素,那么第二个时刻会增加(顺便说一下,为什么它们会产生光束)。因此,图像中间的“洞”越大,表观椭球半径越大。
在您的情况下,您可能最好使用regionprops的extrema
属性,并从那里计算最大半径。