用移动物体稳定视频

时间:2019-06-28 17:44:17

标签: opencv video video-processing

我正在尝试稳定在海滩拍摄的视频,其中包含海浪,岩石,海滩,山脉等。

基于每个点的位移检测关键点和warpPerspective效果不佳,因为关键点包含诸如波和人之类的移动物体。

预期结果就像相机位置和角度始终固定不变;视频中唯一运动的物体是波浪,人,鸟等。

有没有建议的方法来实现这一目标?也许只检测不动的物体?由于摄像机的角度,静止的物体可能会在视频中移动,这就是问题所在。

1 个答案:

答案 0 :(得分:1)

不知道为什么这个问题会被否决,这是视频处理中的普遍需求。我认为最直接的方法是在相邻帧之间使用“相位相关”:

https://en.wikipedia.org/wiki/Phase_correlation

如果大多数内容相同,它将为您提供每对相邻框架之间的相对位移。 OpenCV具有一个方便的函数phaseCorrelate(...),该函数专门使用此算法:

https://docs.opencv.org/2.4/modules/imgproc/doc/motion_analysis_and_object_tracking.html#phasecorrelate

看看,看是否符合您的目的。其他图像配准算法也可能起作用,但是对于足够大的图像,相位相关可能是最快的。