寻找轮廓位移

我在两个具有相同对象的图像上找到了轮廓,我想查找这个对象的位移和旋转。 我尝试过使用这个轮廓的旋转边界框,然后是它的角度和中心点,但是边界框的旋转不能正确地告诉轮廓旋转,因为它对于角度a + 0,a + 90,a + 180等是一样的。度。 是否有其他好的方法来寻找轮廓和轮廓的位移? 也许有些使用凸包,凹凸缺陷? 我读过关于匹配轮廓的学习OpenCv,但它没有帮助。 有人可以举一些例子吗?

//编辑:也许有一些方法可以使用类似freeman链的东西来做到这一点? 但我目前无法弄清算法。 用序列点之间的角度制作链,然后检查序列匹配是不行的...


如果物体具有凸度缺陷,那么您可以选择一个缺陷,从第一个轮廓的质心到该缺陷的质心创建一个矢量。 然后,您可以检查第二个轮廓中的缺陷并与之前使用的轮廓相匹配。从轮廓质心到匹配缺陷质心的矢量。

从这里你可以得到2段(矢量),从中你可以获得位移和旋转。

链接地址: http://www.djcxy.com/p/10065.html

上一篇: finding contours displacement

下一篇: Why is this template code allowed to violate C++'s private access specifier?