发明名称 应用于电子稳像的改进块匹配算法
摘要 本发明涉及一种应用于电子稳像的改进块匹配算法,如下:用块匹配进行运动估计,主要包括匹配块大小的确定、有效块的判断、匹配的准则,采用中心扩展搜索算法及全局运动向量的计算。中心扩展搜索算法,根据帧间实际偏移大小调整搜索范围,快速准确定位块的偏移。由每个块偏移情况得到各块局部运动向量,经随机抽样一致性处理,筛选出最可靠的一部分局部运动向量,再由最小二乘法确定帧间相似变换模型参数。本发明减小了计算量,提高了搜索速度。相比基于最小中心偏置特性的快速搜索法,能处理更大范围的帧间偏移。本发明可应用于摄像机、计算机视频播放以及车载稳像装置等应用电子稳像技术的场合,具有精度高、速度快、适应性强的优点。
申请公布号 CN103237156A 申请公布日期 2013.08.07
申请号 CN201310128322.X 申请日期 2013.04.02
申请人 哈尔滨工业大学 发明人 王栋;于志伟;曾鸣;吴昊
分类号 H04N5/14(2006.01)I;G06T7/20(2006.01)I 主分类号 H04N5/14(2006.01)I
代理机构 代理人
主权项 1.一种应用于电子稳像的改进块匹配算法,其特征在于,方法如下:(一)、采用相机运动相似变换模型:<maths num="0001"><![CDATA[<math><mrow><mi>M</mi><mo>=</mo><mfenced open='[' close=']'><mtable><mtr><mtd><mi>s</mi><mi>cos</mi><mi>&alpha;</mi></mtd><mtd><mi>s</mi><mi>sin</mi><mi>&alpha;</mi></mtd><mtd><mi>dx</mi></mtd></mtr><mtr><mtd><mo>-</mo><mi>s</mi><mi>sin</mi><mi>&alpha;</mi></mtd><mtd><mi>s</mi><mi>cos</mi><mi>&alpha;</mi></mtd><mtd><mi>dy</mi></mtd></mtr><mtr><mtd><mn>0</mn></mtd><mtd><mn>0</mn></mtd><mtd><mn>1</mn></mtd></mtr></mtable></mfenced></mrow></math>]]></maths>其中α为图像沿光轴的旋转角度,s为镜头缩放倍数,dx和dy为平移量;(二)、根据视频的分辨率确定子块尺寸,由先验知识预先设定不同分辨率下的子块尺寸;(三)、计算每个子块B沿四个方向的梯度值,l<sub>1</sub>、l<sub>2</sub>、l<sub>3</sub>和l<sub>4</sub>分别代表沿水平、左斜对角、竖直、右斜对角的方向矢量的导数,只保留同时满足<img file="FSA00000879155800012.GIF" wi="356" he="145" /><img file="FSA00000879155800013.GIF" wi="349" he="146" /><img file="FSA00000879155800014.GIF" wi="324" he="144" />和<img file="FSA00000879155800015.GIF" wi="324" he="145" />的初选块B;其中I(x,y)为(x,y)点处的像素灰度值,B为所选块,T为预设阈值;(四)、采用最小绝对值误差SAD准则<img file="FSA00000879155800016.GIF" wi="719" he="100" />作为搜索的匹配的判断条件;(i,j)表示搜索位置相对于起始点(x,y)的水平和竖直偏移量;(五)、搜索方式采用中心扩展搜索算法,参数定义:P<sub>0</sub>为当前帧中起始搜索位置,其坐标与相应子块在参考帧中坐标相同;圆环C<sub>k</sub>表示第k次搜索所考察的位置,其与P<sub>0</sub>相距长度为r<sub>k</sub>;P<sub>k</sub>代表第k次搜索所得最佳匹配位置;LV<sub>k</sub>表示第k-1次搜索的最佳位置指向第k次最佳位置的向量;具体步骤:(1)以与子块在参考帧中相同坐标处起始点P<sub>0</sub>为圆心,找到半径r<sub>1</sub>的圆环C<sub>1</sub>上的最小SAD值SAD(P<sub>1</sub>),P<sub>1</sub>为最小SAD值所在位置,并记圆心到P<sub>1</sub>的向量为LV<sub>1</sub>=P<sub>1</sub>-P<sub>0</sub>;(2)令r<sub>2</sub>=r<sub>1</sub>+Δr,得到半径r<sub>2</sub>的圆环C<sub>2</sub>上最小SAD值SAD(P<sub>2</sub>)及位置P<sub>2</sub>,并得到向量LV<sub>2</sub>=P<sub>2</sub>-P<sub>1</sub>,其中Δr=2;(3)用相同的计算方式在半径为r<sub>k</sub>=r<sub>1</sub>+(k-1)Δr的圆环C<sub>k</sub>上最小SAD值SAD(P<sub>k</sub>)及位置P<sub>k</sub>,并得到向量LV<sub>k</sub>=P<sub>k</sub>-P<sub>k-1</sub>;(4)当k>3时,若有<img file="FSA00000879155800021.GIF" wi="400" he="97" /><img file="FSA00000879155800022.GIF" wi="378" he="88" /><img file="FSA00000879155800023.GIF" wi="369" he="90" />且SAD(P<sub>k</sub>)>SAD(P<sub>k-1</sub>)。则认为P<sub>k</sub>、P<sub>k-1</sub>、P<sub>k-2</sub>、P<sub>k-3</sub>位于最佳匹配点最小中心偏置区域内,P<sub>k-1</sub>离最佳匹配点最近。考察P<sub>k-1</sub>相邻位置的SAD值,最小的SAD所在位置则为匹配块在当前帧中坐标;(5)若不满足步骤(4)中条件,则继续执行第(3)步,直到半径扩大到搜索窗口的边界为止;随机抽样一致性筛选各块局部运动向量,w为一次计算所选向量符合实际模型的概率,p为至少有一次所选向量符合真实模型的概率,则选择次数<maths num="0002"><![CDATA[<math><mrow><mi>k</mi><mo>=</mo><mfrac><mrow><mi>log</mi><mrow><mo>(</mo><mn>1</mn><mo>-</mo><mi>p</mi><mo>)</mo></mrow></mrow><mrow><mi>log</mi><mrow><mo>(</mo><mn>1</mn><mo>-</mo><mi>w</mi><mo>)</mo></mrow></mrow></mfrac><mo>;</mo></mrow></math>]]></maths>设w=0.75,取p=0.99,得到k=16,即取16组数据分别计算偏移模型,至少有一个模型描述真实偏移情况的概率不小于0.99;比较所有数据符合模型的数目,最多的那组为最接近真实模型,再经最小二乘法重新计算后得到的帧间全局运动向量参数。
地址 150001 黑龙江省哈尔滨市南岗区一匡街2号哈尔滨工业大学科学园E2栋