发明名称 基于多分辨率块匹配和PI控制的数字视频稳像方法
摘要 本发明公开了一种基于多分辨率块匹配和PI控制的数字视频稳像方法,通过改进的菱形搜索算法得到选定块的运动矢量,并用最小二乘估计得到全局运动向量的运动参数,然后将运动向量代入比例积分控制器为核心的补偿单元,得到运动补偿向量,进而对抖动视频序列进行运动补偿。本发明将含抖的视频序列进行去抖,提高了传统菱形快速搜索算法的准确性,也提高了视频的观看质量;根据追拍运动的加速度,基于比例积分控制器提出了新的运动补偿方法,该方法能够更好地保留主观运动的追拍分量和拍摄者主观的追拍运动,可以估计得到更准确的运动矢量,产生较小的稳态误差,并可以根据要求补偿包括平移、旋转、缩放等抖动现象。
申请公布号 CN102685371A 申请公布日期 2012.09.19
申请号 CN201210158233.5 申请日期 2012.05.22
申请人 大连理工大学 发明人 宋继飞;高宇洋;孙傲楠;马晓红
分类号 H04N5/21(2006.01)I;H04N5/14(2006.01)I;H04N5/232(2006.01)I 主分类号 H04N5/21(2006.01)I
代理机构 大连星海专利事务所 21208 代理人 徐淑东
主权项 1.基于多分辨率块匹配和PI控制的数字视频稳像方法,包括以下步骤:步骤100:建立帧间运动模型:选用Similarity 运动模型对图像序列的运动进行描述,以反映图像序列帧间的平移、绕光轴旋转和变焦运动,其运动模型为:<img file="2012101582335100001DEST_PATH_IMAGE002.GIF" wi="264" he="83" />(1)其中,(x,y)和(x’, y’)分别表示每个像素点在参考帧和当前帧(前一帧和后一帧)的坐标,s代表摄像机的变焦系数,<img file="2012101582335100001DEST_PATH_IMAGE004.GIF" wi="13" he="42" />代表帧间图像的旋转角度,d<sub>x</sub>、d<sub>y</sub>分别代表水平和垂直方向的偏移量;对于安防监控或手持成像小幅抖动的情况下,图像序列帧间的偏转角<img file="103924DEST_PATH_IMAGE004.GIF" wi="13" he="42" />很小,认为<img file="2012101582335100001DEST_PATH_IMAGE006.GIF" wi="57" he="42" />1,<img file="2012101582335100001DEST_PATH_IMAGE008.GIF" wi="71" he="42" />;同时,变焦系数s保持不变,设为1,这样,式(1)的简化模型为:<img file="2012101582335100001DEST_PATH_IMAGE010.GIF" wi="203" he="83" />(2)步骤200:对图像进行分块:设视频图像的大小为M×N,将每帧图像水平和垂直方向五等分,则每一个图像块的大小为[M/5]×[N/5];这样图像的外围有16个图像块,将相邻5个字块进行组合,以形成四个“L”形区域;按照同样方法,将外围的16个图像块在水平和垂直方向继续五等分,每个子块的大小为[M/25]×[N/25];步骤210:特征块的选取:对16个背景图像块中的每一个子块按照式(3)计算其SAD值:<img file="2012101582335100001DEST_PATH_IMAGE012.GIF" wi="512" he="62" />其中,m , n表示选定子块内像素坐标;<img file="2012101582335100001DEST_PATH_IMAGE014.GIF" wi="68" he="42" />表示第k帧图像m , n位置像素的灰度值;用h, w分别表示每个子块的长和宽,则(<img file="2012101582335100001DEST_PATH_IMAGE016.GIF" wi="44" he="42" />)分别取{(0,w), (0,-w), (h,0), (-h,0)}中的一个;式(3)表示选定子块与四邻域子块对应位置像素值差的绝对值和;选定SAD值最大的若干个子块为特征子块,用于后续的运动矢量估计;步骤300:多分辨率自适应分级块匹配:对选定的特征块进行多分辨率自适应分级块匹配;确定自适应分级的初始级数,在各级中进行传统的菱形搜索算法,将级别自减并循环调用传统的菱形搜索算法,直到级别小于0停止;具体包括子步骤310,320,330;步骤310:自适应分级:确定自适应分级的初始级数,令R<sub>L</sub>=[M/5],R<sub>W</sub>=[N/5],则初始级数n定义为满足式(4)所示条件的最大整数:n=[<img file="2012101582335100001DEST_PATH_IMAGE018.GIF" wi="145" he="42" />]                                   (4)步骤320:进行级别n下的传统菱形快速块匹配:选取以当前帧选定子块为中心的8×8个间距为2<sup>n</sup>的像素点,进行对应上一帧的相同位置和周围8个方向的搜索,使用菱形搜索算法大模板,搜索的单位步长为2<sup>n</sup>;步骤321:如果匹配后,最小位置为9个位置中的中心位置,进行对应上一帧的相同位置和周围4个方向的搜索,使用菱形搜索算法小模板,搜索的单位步长为2<sup>n</sup>;如果不为中心位置,则跳转到步骤320执行;步骤330:如果当前级数不为0,则以上一步骤得到的最小MAD值的位置为初始位置,级数减1,跳转到320执行;如果级数为0,则当前得到的最小MAD值即为最佳匹配位置;步骤400:基于最小二乘的全局运动估计:对式(1)进行整理,得到的矩阵方程:<img file="2012101582335100001DEST_PATH_IMAGE020.GIF" wi="244" he="104" />(5)根据每个“L”型区域得到的运动矢量,以及式(5)对参数<img file="2012101582335100001DEST_PATH_IMAGE022.GIF" wi="113" he="42" />进行最小二乘估计;若采取简化后的运动模型,则根据式(6)进行运动估计,表达式如下:<img file="2012101582335100001DEST_PATH_IMAGE024.GIF" wi="220" he="104" />(6)利用最小二乘估计,每个“L”型区域都估计出一组全局运动参数,再利用取中位数的方法从四组参数以及上一帧的运动参数共五组参数中选出一组,作为当前帧相对于上一帧的全局运动参数;步骤500:利用基于比例积分控制器的自适应运动补偿方法对图像序列进行补偿,包括子步骤510,520,530,540;步骤510;如果当前帧为第一帧,运动补偿向量CMV赋初值0;如果为第二帧,由上一步骤求出的全局运动矢量GMV,和上一帧的运动补偿向量CMV,赋值为第二帧的全局运动矢量减去上一帧的运动补偿向量,即CMV[2]=GMV[2]+CMV[1],跳转到步骤530,否则执行步骤520;步骤520;计算追拍分量PMV和追拍运动的加速度分量▽PMV:对于第三帧和以后的每帧图像,由之前计算得到的全局运动分量和运动补偿向量,根据式(7)和式(8)计算追拍分量PMV和追拍运动的加速度分量▽PMV:PMV[i]= GMV[i]- CMV[i]+CMV[i-1]               (7)▽PMV[i]=GMV[i]-GMV[i-1]-CMV[i]+2CMV[i-1]-CMV[i-2] (8)步骤521:引入PI控制器,将▽PMV的实际值和0进行比较,把误差作为PI控制器的输入,记为EMV,▽PMV[i]一般在0附近;每当处理新的一帧图像时,在没有计算CMV[i]之前,CMV[i]未知,令CMV[i]=0,如果真实的CMV[i]不为0,既需要补偿时,平衡被破坏,此时计算得到的▽PMV[i](非真实的▽PMV[i])不在0附近,即产生了误差,认为真实的▽PMV[i]受到了+CMV[i]的扰动,EMV[i]表示如下:EMV[i]=▽PMV[i]+CMV[i]=GMV[i]-GMV[i-1]+2CMV[i-1]-CMV[i-2] (9)步骤522:根据PI控制器的输入EMV,得到PI控制器的输出U为:<img file="2012101582335100001DEST_PATH_IMAGE026.GIF" wi="445" he="63" />其中,<img file="2012101582335100001DEST_PATH_IMAGE028.GIF" wi="21" he="42" />为PI调节的比例系数,<img file="2012101582335100001DEST_PATH_IMAGE030.GIF" wi="17" he="42" />为PI调节的积分系数;考虑到PI调节后,▽PMV[i]又重新趋于0,既有▽PMV[i]+U+CMV[i]<img file="2012101582335100001DEST_PATH_IMAGE032.GIF" wi="15" he="42" />0                  (11)考虑到受扰动前▽PMV[i]近似为0,按下式求得需要的运动补偿向量CMV:<img file="2012101582335100001DEST_PATH_IMAGE034.GIF" wi="435" he="63" />步骤530:对含抖的图像序列进行补偿:将运动补偿得到的运动补偿向量的各个参量<img file="2012101582335100001DEST_PATH_IMAGE036.GIF" wi="133" he="42" />以及原图像的像素位置代入下式,进行补偿:<img file="2012101582335100001DEST_PATH_IMAGE038.GIF" wi="283" he="83" />(13)并将像素赋给新的坐标位置(x’,y’),即完成了稳像;同样的,如果采取简化后的模型,应用下式进行补偿:<img file="2012101582335100001DEST_PATH_IMAGE040.GIF" wi="216" he="83" />(14)。
地址 116024 辽宁省大连市高新园区凌工路2号