使用Python, OpenCV和实时网络摄像头输入,我不知道如何根据x y坐标设置一个点并跟踪它的移动位置。
下面是跟踪一个黄色对象的简单示例。
https://github.com/abidrahmank/OpenCV-Python/blob/master/Other_Examples/track_yellow_draw_line.py下面是跟踪黄色的方法:
1)提取视频第一帧
2)将帧转换为HSV色彩空间。取H平面,阈值为黄色,这样你得到的二值图像中,黄色物体为白色(也称为blob),其余为黑色。
3)现在你找到了斑点的中心点。您可以使用力矩或轮廓(特别是如果您有多个斑点)。在上面的例子中,使用了非常简单的逻辑。只需找到最左边,最右边,最上面和最下面的点blob,并在它周围画一个矩形)。并存储这些值。
4)提取下一帧,并按照上述步骤获得新位置。把这两个位置连起来,画一条线。
。
有几个博客解释了这些基础知识。看看这个:OpenCV和Python 2.6中的对象跟踪。
Edit:我不认为你可以跟踪任意点。为了能够在两个图像中的一个点之间建立对应关系,您需要知道要跟踪的点的一些唯一信息。这通常是通过兴趣点完成的,这些兴趣点"足够独特",可以在图像之间进行比较。其他方法是基于使用投影方案使点易于检测。