轮廓匹配 - 找到轮廓位移

krz*_*ych 7 opencv image-processing computer-vision

我在两个具有相同物体的图像上找到了轮廓,我想找到这个物体的位移和旋转.我已经与这个轮廓的旋转边框,然后它的角度和中心点,但包围盒旋转试过不告诉轮廓旋转正确,因为它是相同的角度A + 0,+ 90,A + 180等.度.找到轮廓的旋转和位移是否还有其他好的方法?也许有些使用凸壳,凸度缺陷?我在学习OpenCv中读过有关匹配轮廓的内容,但它没有帮助.有人会举一些例子吗?

//编辑:也许有一些方法可以使用类似于freeman链的东西吗?但我现在无法弄清楚算法.用序列点之间的角度制作链然后检查序列匹配是不行的...

Adr*_*ian 3

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

由此您将获得 2 个线段(向量),从中您可以获得位移和旋转。