使用计算机视觉检测对象的状态/位置

时间:2017-11-03 13:03:51

标签: python opencv vision

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

为此,我想比较两个图像:观察到的位置与所需的位置。

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

所以基本上我需要一些算法来检查阴影是否被关闭,通过将它与参考的闭合阴影图像进行比较,从相同的角度等取得,但考虑到一些照明变化..

非常感谢!

1 个答案:

答案 0 :(得分:1)

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

首先,我们需要确定对象的位置,可以在下面找到,因为图像中存在单个对象。

当您使用python时,您可以在opencv-python库中执行以下步骤:

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

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

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

4)使用矩形坐标找到它的中心作为代表点。

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

reference会有所帮助。