发明名称 一种具有大范围旋转及平移运动估计的实时电子稳像方法
摘要 一种具有大范围旋转及平移运动估计的实时电子稳像方法,它涉及具有大范围旋转及平移运动估计的实时电子稳像方法。本发明是为解决现有基于灰度信息的实时电子稳像方法无法对图像的大范围旋转运动进行准确估计,块匹配搜索算法无法准确对大范围的图像帧间旋转及平移运动进行估计,对灰度色调单一的抖动视频只采用块匹配稳像一种方法稳像效果不佳,鲁棒性弱的问题。稳像方法采用图像位平面金字塔中间层进行块匹配解算帧间旋转运动角度,采用图像位平面金字塔自适应取块匹配,配合基于图像位平面金字塔的投影法进行相邻帧间平移运动估计,采用改进的六边形搜索算法进行搜索。本发明用于需进行大范围旋转及平移运动估计的实时电子稳像场合。
申请公布号 CN103841296A 申请公布日期 2014.06.04
申请号 CN201310722086.4 申请日期 2013.12.24
申请人 哈尔滨工业大学 发明人 遆晓光;靳万鑫;佟学俭;高红梅;徐剑飞
分类号 H04N5/14(2006.01)I;H04N5/21(2006.01)I 主分类号 H04N5/14(2006.01)I
代理机构 哈尔滨市松花江专利商标事务所 23109 代理人 杨立超
主权项 1.一种具有大范围旋转及平移运动估计的实时电子稳像方法,其特征在于:所述方法按以下步骤实现:步骤一、运动估计和运动滤波参数初始化;步骤二、将实时获取的待处理视频图像存入输入视频帧缓冲区,更新输入视频帧缓冲区中的视频图像;步骤三、将步骤二中存入输入视频帧缓冲区中的待处理视频的当前帧图像和与当前帧相邻的前一帧图像取出;步骤四、将步骤三中获得的当前帧图像和与当前帧相邻的前一帧图像,采用图像位平面金字塔中间层进行块匹配,并利用块匹配结果解算出当前帧图像和与当前帧相邻的前一帧图像的帧间旋转运动角度,将得到的帧间旋转运动角度进行累加求取当前帧图像相对于视频首帧图像的绝对旋转运动角度,即:<maths num="0001"><![CDATA[<math><mrow><msubsup><mi>&Theta;</mi><mi>k</mi><mi>abs</mi></msubsup><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><mi>j</mi><mo>=</mo><mn>2</mn></mrow><mi>k</mi></munderover><mi>&Delta;</mi><msub><mi>&Theta;</mi><mi>j</mi></msub></mrow></math>]]></maths>公式中:<img file="FDA0000445603400000012.GIF" wi="127" he="105" />为当前帧设为第k帧的绝对旋转运动角度,ΔΘ<sub>k</sub>为当前帧设为第k帧和与当前帧相邻的前一帧即第k-1帧的帧间旋转运动角度;步骤五、将步骤四中获得的绝对旋转运动角度,用Kalman滤波进行最优估计得到待保留的绝对旋转运动角度,并算出当前帧图像待补偿的抖动旋转运动角度,即:Θ<sup>comp</sup>=Θ<sup>intent</sup>-Θ<sup>abs</sup>公式中:Θ<sup>comp</sup>表示当前帧图像待补偿的抖动旋转运动角度,Θ<sup>intent</sup>表示当前帧图像的待保留的绝对旋转运动角度,Θ<sup>abs</sup>表示当前帧图像的绝对旋转运动角度;步骤六、用步骤五获得的待补偿的抖动旋转运动角度,对当前帧图像进行抖动旋转运动补偿,并将旋转补偿后的当前帧存入中间视频帧缓冲区,更新中间视频帧缓冲区中的视频图像;步骤七、从步骤六更新后的中间视频帧缓冲区中,取出经过旋转补偿后的当前帧和与经过旋转补偿后的当前帧相邻的前一帧图像;步骤八、对步骤七获得的经过旋转补偿后的当前帧图像和与经过旋转补偿后的当前帧相邻的前一帧图像,采用图像位平面金字塔自适应取块匹配,配合基于图像位平面金字塔的投影法进行相邻帧间平移运动估计,并对得到的帧间平移运动矢量进行累加,求取经过旋转运动补偿后的当前帧相对于视频首帧的绝对平移运动矢量,即:<maths num="0002"><![CDATA[<math><mrow><mrow><mo>(</mo><msubsup><mi>MOVX</mi><mi>k</mi><mi>abs</mi></msubsup><mo>,</mo><mi>MOV</mi><msubsup><mi>Y</mi><mi>k</mi><mi>abs</mi></msubsup><mo>)</mo></mrow><mo>=</mo><mrow><mo>(</mo><munderover><mi>&Sigma;</mi><mrow><mi>j</mi><mo>=</mo><mn>2</mn></mrow><mi>k</mi></munderover><mi>&Delta;MOV</mi><msub><mi>X</mi><mi>j</mi></msub><mo>,</mo><munderover><mi>&Sigma;</mi><mrow><mi>j</mi><mo>=</mo><mn>2</mn></mrow><mi>k</mi></munderover><mi>&Delta;MOV</mi><msub><mi>Y</mi><mi>j</mi></msub><mo>)</mo></mrow></mrow></math>]]></maths>公式中:<img file="FDA0000445603400000022.GIF" wi="504" he="83" />为经过旋转补偿后的当前帧设为第k帧的绝对平移运动矢量,(△MOVX<sub>k</sub>,△MOVY<sub>k</sub>)经过旋转补偿后的当前帧设为第k帧和与经过旋转补偿后的当前帧相邻的前一帧即第k-1帧的帧间平移运动矢量;步骤九、对步骤八得到的绝对平移运动矢量,用Kalman滤波进行最优估计得到待保留的绝对平移运动矢量,并算出经过旋转运动补偿后的当前帧图像的待补偿抖动平移运动矢量,即:(MOVX<sup>comp</sup>,MOVY<sup>comp</sup>)=(MOVX<sup>intent</sup>,MOVY<sup>intent</sup>)-(MOVX<sup>abs</sup>,MOVY<sup>abs</sup>)公式中:(MOVX<sup>comp</sup>,MOVY<sup>comp</sup>)表示经过旋转运动补偿后的当前帧图像的待补偿抖动平移运动矢量,(MOVX<sup>intent</sup>,MOVY<sup>intent</sup>)表示经过旋转运动补偿后的当前帧图像的待保留的绝对平移运动矢量,(MOVX<sup>abs</sup>,MOVY<sup>abs</sup>)表示经过旋转运动补偿后的当前帧图像的绝对平移运动矢量;步骤十、用步骤九得到的待补偿抖动平移运动矢量,对经过旋转运动补偿后的当前帧图像进行平移抖动补偿,并将补偿结果存入输出视频帧缓冲区,并进行视频输出;步骤十一、循环步骤二至步骤十,进行下一帧图像的操作。
地址 150001 黑龙江省哈尔滨市南岗区西大直街92号