我有一组包含彩色水滴的视频。所有这些都是相同的颜色。所有的液滴都在同一平面上,所以2D跟踪。
目前我正在使用高斯混合物进行背景减法和液滴检测,结果非常适合图像分割。
下一步是跟踪它们以计算速度。目前我只是重叠两个连续的帧。让我们说帧“i”和“i + 1”。给定帧i + 1中的液滴,我将其分配给帧i中最近的液滴。我有一个30像素的阈值,所以我只考虑半径为30像素的较近的液滴。
当液滴移动速度不快且场景没有聚集时,这种方法非常有效。但是我的场景聚集着水滴(我的意思是大约15-20),它们移动速度非常快,并且框架的帧完全重叠。有时它只是丢失一个液滴(跟踪,而不是分割),因为它移动了超过30个像素,或者它将它分配给另一个移动到更靠近前一个位置的液滴。
我确实想知道OpenCV是否有任何功能可以帮助我解决这个问题。非常好的细分,糟糕的跟踪。我之前(不是在这个项目中)使用了一个粒子滤波器来使用对象的动态来预测它的位置。
答案 0 :(得分:0)
您可以在此处找到包含C ++(vs2010)源代码的多个对象跟踪器项目:http://www.youtube.com/watch?v=2fW5TmAtAXM 它是使用MATLAB教程实现的:http://studentdavestutorials.weebly.com/