视频中运动物体的速度测量算法

时间:2012-05-25 10:55:05

标签: matlab opencv video-processing opencvdotnet

您使用配备智能手机的相机拍摄了移动车的视频。该视频的分辨率非常高,并假设完成了一些无损编码。 (显然规模会很大)。它的播放速度为60fps。有哪些方法可以从视频中测量汽车的实际速度? (对于所有情况,可能不存在完美的解决方案,因此,如果有的话,我可以在特定条件下做出一些合理的假设。)

如果这是不可能的,我的下一个目标是将汽车的速度测量用于视频中的静止物体。

修改

在我的情况下,相机总是静止不动,汽车从左向右移动,并以恒定速度移动。

我已经看过哪种方法

当汽车移动时,我以一定的已知速度移动摄像机前面的物体(参考物体)。然后视频同时具有移动物体,一个已知,另一个未知。通过适当的校准,我可以找到汽车的速度。 但我正在寻找一个解决方案,我不必移动参考对象。

1 个答案:

答案 0 :(得分:1)

如果您的相机静止不动,并且您的车辆以固定距离从左向右移动,那么您应该能够在整个序列中跟踪车辆,并确定其移动速度(以每帧像素为单位) 。然后你将需要一个一次性校准步骤,你可以计算转换因子对mph的影响,例如,你可能计算出每帧100像素= 30英里/小时,这样你就可以以每帧像素为单位乘以速度并乘以30/100。

如果你不知道到汽车的距离(或者更确切地说,如果距离不是恒定的)那么这种方法将不起作用,因为较近的物体将比较远的物体快速穿过图像,即使他们的实际速度相同。