2011-04-20 146 views
4

使用Python,OpenCV和实时网络摄像头输入,我无法弄清楚如何设置基于xy坐标的点并跟踪其移动的位置。Python OpenCV跟踪点

回答

2

有几个博客解释了基本知识。看看这个:Object tracking in OpenCV and Python 2.6

编辑:我不认为你可以跟踪任意点。为了能够在两个图像中的一个点之间建立对应关系,您需要了解关于要跟踪的点的独特之处。这通常是通过兴趣点来完成的,这些兴趣点“足够独特”,可以跨图像进行比较。其他方法基于making the point easy to detect使用投影方案。

+1

这跟踪某个颜色的对象,而不是先前基于x,y坐标设置的点 – None 2011-05-15 23:07:39

+0

@无:请参阅我的编辑。 – 2011-05-16 14:36:43

+0

我已经看过一个opencv程序的视频,您可以点击屏幕上的任意位置的一个点,然后跟踪它 – None 2011-05-17 02:59:54

4

下面是一个跟踪黄色物体的简单示例。

https://github.com/abidrahmank/OpenCV-Python/blob/master/Other_Examples/track_yellow_draw_line.py

这里是跟踪黄颜色的方法:

1)提取视频

2的第一帧)转换帧划分HSV色空间。取H平面并将其限制为黄色,以便将黄色物体的二值图像显示为白色(也称为斑点)并保持为黑色。

3)现在你找到blob的中心点。你可以使用矩形或轮廓(特别是如果你有多个斑点的话),在上面的例子中,使用了非常简单的逻辑,只要在斑点上找到最左边,最右边,最上面和最下面的点,并在它周围绘制一个矩形。并存储这个值。

4)提取下一帧并按照以上所有步骤获取新位置。加入这两个位置并画出一条线。

结束。