如何识别具有给定形状的对象

时间:2015-05-22 15:25:40

标签: opencv

我希望通过以下步骤使用OpenCV识别已知对象:

  1. 使用Background Sub-tractor获取前景对象。
  2. 查找轮廓并迭代顶层。
  3. 现在,在迭代轮廓时,我希望将每个轮廓与给定形状匹配,如果轮廓与给定形状匹配,则绘制一个矩形。

    在这里我也想说;给定的形状大小类似于100x100像素,但轮廓大小可能比形状大小更小或更大,然后大小不得影响匹配的结果。

    在我使用Template Matching之前,结果并不是那么好,因为即使给定的对象不在帧中,它也会检测其他内容。和matchShapes()函数,但大小可能会影响结果。

    现在有什么好方法可以完成这项工作吗?如果有人知道,请告诉我如何做到这一点。

    提前致谢!

1 个答案:

答案 0 :(得分:0)

Shape context descriptors通常用于对象识别,形状上下文旨在描述允许测量形状相似性和恢复点对应的形状。

以下是OpenCV中的一个示例: https://github.com/Itseez/opencv/blob/master/samples/cpp/shape_example.cpp