【视频微小运动放大】系列之三:拉格朗日微小运动放大
微小运动放大依赖对运动信号的分析,在对运动信号的分析方面前人有过不少研究。对运动信号进行分析的最出名的方法莫过于光流法(Optical Flow)。光流是由Gibson在1950年提出的描述视觉世界中运动物体的一种视角。光流法也被常用来进行运动目标检测、目标分割、运动补偿和立体视差测量等工作。设想视频中的每一张图片都是由很多个固定大小和颜色的正方体积木(即像素)拼接而成,不同帧上这些积木的相对位置会发生少量改变,也就是这些正方体积木在帧与帧之间“流动”。光流法将视频中每个像素(或像素块)在帧与帧之间的运动用矢量箭头或颜色进行表示,如图1所示。矢量箭头的方向是该像素(或像素块)的运动方向,矢量箭头的长度是该像素(或像素块)的运动速率;不同颜色代表该像素(或像素块)的不同运动方向,颜色的亮度值代表该像素(或像素块)的运动速率。所有的矢量箭头或颜色空间就构成了两帧图片之间的光流场。光流法建立了图像帧之间和像素块之间的对应关系,能够计算帧与帧之间的物体的运动信号,对视频中运动信号分析的发展做出了卓越的贡献。光流法是Liu等人跟踪微小运动的基础算法,有关微小运动放大的开创性工作是由Liu等人于2005年依据拉格朗日视角完成的。
图1.一个视频中各个物体在运动的光流示意图。(a)视频中的第1帧;(b)视频中的第2帧;(c)箭头形式的光流可视化;(d)颜色形式的光流可视化
Liu 等人的微小运动放大方法(Motion Magnification)被称为拉格朗日微小运动放大。如图2所示,该方法共需要五个步骤:图像配准、轨迹特征跟踪聚类、不同运动的分层描述、微小运动放大、纹理合成孔洞。
第一个步骤是对所有视频帧进行图像配准。相机抖动造成的全局微小运动是不应该被放大的,所以要进行图像配准,以消除相机抖动对画面的整体影响。进行图像配准时,先假设整个视频帧中的主要场景是静态的,然后对检测到的特征点(忽略离群点)进行跟踪,并对不同帧的相同特征点进行仿射变换,从而对所有视频帧进行图像配准,确保后续步骤放大的微小运动是有意义的微小运动,而不是相机抖动带来的噪声信号。
第二个步骤是对不同的微小运动进行跟踪与聚类。为了使微小运动放大不会割裂同一个目标,需要对不同的微小运动目标进行分类。先计算出所有视频帧的特征点,再对每个特征点进行轨迹跟踪,对类似的轨迹进行聚类,聚类结果就是不同的微小运动目标。为了消除目标物体的瞬时大幅动作可能带来的不符合实际情况的聚类效果,还需要在所有视频帧的尺度上计算轨迹相关性并进行归一化。
第三个步骤是对相同的微小运动目标进行分层表示。上述的运动跟踪聚类仅能做粗略的分层表示,更细化的分层表示还需要根据像素颜色、像素位置、像素运动的综合情况进行鲁棒性的图像分割。
第四个步骤是对微小运动进行放大。一般情况下,放大倍率为4-40倍。
第五个步骤是纹理填充空洞。上述放大过程中会出现黑色空洞,这时候就需要前人的纹理填充算法根据邻近像素内容进行空洞的纹理填充,以让最终的微小运动放大画面符合人眼直觉。
拉格朗日微小运动放大受限于拉格朗日视角,步骤繁多,需要大量人工调参才能取得不错的处理效果,因此没有得到大面积的推广和应用。
图2.拉格朗日微小运动放大步骤。(a)待放大的原始图像帧,对其进行图像配准;(b)对微小运动目标进行轨迹跟踪与聚类;(c)对相同的微小运动目标进行图像分割;(d)对微小运动进行放大,但出现无信息的黑色空洞;(e)对黑色空洞进行纹理填充;(f)微小运动放大后的图像(放大效果是秋千横梁出现了弯曲)
参考文献:
Liu C, Torralba A, Freeman W T, et al. Motion magnification; proceedings of the ACM transactions on graphics (TOG), ACM, 2005.
- 点赞
- 收藏
- 关注作者
评论(0)