我一直在尝试进行形状分析,以区分矩形对象和非矩形对象(如半圆)使用二值图像
一些可能的例子
矩形
非矩形
我的算法如下:
到目前为止,我已经尝试过偏心率和直角度测量。在
例如:理想情况下,矩形度应仅对矩形高。在我的实验中,我有时会得到类似矩形或圆形物体的直角度。因此,我不能用这个方法来分析,因为它不可靠
偏心率也会出现同样的问题。理想情况下,圆的偏心率为零,而对于矩形物体,偏心率应该很高。但事实证明,对于矩形或圆形来说,它是非常相似的
有没有一种方法可以判断出物体大致是矩形还是不使用任何几何信息??
如有任何帮助,我们将不胜感激
我想你可以用approxPolyDP。我给你C++程序,我认为用Python翻译很容易。其思想是寻找具有四个角的形状来近似真实轮廓,然后计算出四个角(角角)。当轮廓点个数大于4时,新轮廓与真实轮廓的误差增大。 当你认为它不是矩形的时候,你必须选择一个阈值角度(90+/-x°)。 (抱歉英语不好)
使用之前的图像程序可以得到这些结果:
^{pr2}$相关问题 更多 >
编程相关推荐