使用计算机视觉检测对象的 state/position

Detect the state/position of an object using computer vision

我需要检查对象是否已移动到特定位置。 (在我的例子中,它是电动 window 遮阳帘的位置)。我想为此使用计算机视觉/图像识别。

为此,我正在考虑比较两张图片:观察到的位置与所需位置。

我在 openCv 上进行了一些搜索,发现了圆检测(在我可以使用的阴影上应用某些标记)或模板匹配等概念,但我不是计算机视觉专家(我知道 python 虽然) 我真的很感激朝着正确的方向前进。

所以我需要一些算法来检查阴影是否关闭,方法是将它与从相同角度拍摄的参考闭合阴影图像进行比较,但要考虑到一些光照变化..

该问题需要将图像中对象的位置与给定的静态参考点进行比较。

所以首先我们需要确定物体的位置,可以找到如下图,因为图像中存在单个物体。

由于您正在使用 python,因此您可以在 opencv-python 库中执行以下步骤:

1) 加载您的图像并将其二值化。

2) 使用cv2.findContours(thresh, 1, 2) 找到感兴趣对象的轮廓。

3) 使用 cv2.boundingRect(cnt) 函数找到边界矩形。

4) 用矩形坐标求其中心为代表点

5) 通过计算欧几里德距离将中心与参考点进行比较。

这个 reference 会有帮助。