基于全局特征点迭代的全景稳像方法转让专利

申请号 : CN200810150384.X

文献号 : CN101316368B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 郭宝龙朱娟娟

申请人 : 西安电子科技大学

摘要 :

本发明公开了一种基于全局特征点迭代的全景稳像方法。它包括基于特征点迭代的图像运动参数估计和基于滤波的图像运动补偿两部分。该全局运动参数的估计是将图像中最稳定的Harris特征点与特征窗相结合,通过距离一致性验证和特征点迭代更新,逐渐删除局部特征点,使全局特征点集合快速收敛,以准确求取全局运动参数。该运动图像的补偿是对全局运动参数进行滤波提取抖动参数,并对实际抖动参数进行补偿而保留摄像系统的正常扫描运动,同时在补偿时结合图像融合实现全景图像的输出。该方法能有效地处理摄像系统平移,旋转,变焦等抖动以及更为复杂的场景局部运动情况,可用于消除运动载体对视频序列的影响,输出稳定视频,改善视频监控或跟踪的观测效果。

权利要求 :

1.一种基于特征点迭代的图像运动参数估计方法,包括如下步骤:(1)将参考帧图像fk分成互不重叠的区域,在各区域内利用Harris算子选取特征点(xi,yi);

(2)以每一个特征点为中心取尺寸为M×N的特征窗,在当前帧fk+1的一定搜索范围内,利用最小绝对误差和准则SAD对特征窗进行匹配,并以匹配窗对应的中心点作为匹配特征点 建立初始全局特征点对集合;

(3)对初始全局特征点对集合,并按如下步骤对该集合的一致性验证,取出c对候选全局特征点对集合:(3a)计算所有特征点对之间的距离,

式中,(xi,yi)和 分别表示参考帧和当前帧中对应的特征点和匹配特征点;

(3b)将这些距离分成l类,逐个比较和统计每一距离类中特征点的个数ct,t=1,

2,…,l;

(3c)判断每类距离的数目,如果满足:c=max{ct|t=1,…,l},则该距离所对应的特征匹配具有良好的距离一致性,作为候选全局特征点对;

(4)将候选点对集合代入仿射运动模型,利用如下步骤对特征点迭代更新,得到最终的K对全局特征点对集合,并获得全局运动6参数矩阵Maffine:(4a)将c对候选全局特征点的坐标差 作为初始数据集合S;

(4b)将S中对应的候选全局特征点代入仿射运动模型,建立仿射方程:B=AMaffine,式中(4c)利用最小二乘算法计算仿射参数矩阵Maffine=(ATA)-1AB;

(4d)利用所求的参数矩阵Maffine,计算参考帧中各特征点映射后的坐标(xi,yi),并计算其与当前帧中检测特征点的坐标差(Δxi,Δyi),Δxi=xi-xi,Δyi=yi-yi;

(4e)计算初始数据集合S中(Δxi,Δyi)与(Δxi,Δyi)的位置误差E,(4f)将集合S中误差大于设定阈值的对应特征点对删除,更新集合S并转至步骤(4b),若误差均小于设定阈值,则停止迭代,已求的参数矩阵即为最终的全局运动参数,且被保留的特征点对为最终的全局特征点对集合。

说明书 :

基于全局特征点迭代的全景稳像方法

技术领域

[0001] 本发明属于图像处理技术领域,涉及图像的稳定处理,具体的说是一种视频序列电子稳像方法,可用于消除运动载体对视频序列的影响,有效稳定输出视频,改善视频监控或者跟踪系统的观测效果。

背景技术

[0002] 随着电视摄像系统在各领域中的广泛应用,对图像信息的确定性要求也在不断提高,其中最基本也是最重要的一点,就是要求视频图像画面质量高,有一定的清晰度和稳定性。而电视摄像系统的工作效果往往会受到载体不同时刻的姿态变化或者振动的影响,从而反映到监视器上,使得获得的图像信息不稳定,甚至模糊。由于这种不稳定的图像对于观察者会产生疲劳感,因而导致误判和漏判;对于目标自动识别系统,会导致漏警和虚警。所以,在运动的载体中,摄像系统的稳像是一个十分重要的问题,特别是在长焦距,高分辨率的监视跟踪系统中尤为突出。
[0003] 国内稳像技术的研究起步较晚,最初多是利用陀螺传感器和伺服系统构成陀螺稳定平台实现机械式稳像。自上世纪90年代开始提出电子稳像方法,但传统的方法主要集中在快速估计视频帧间的平移或者旋转运动上,其前提是对运动产生的起因作理想的假设,且对运动的补偿方法也未作深入研究。而在实际应用中,帧间运动的产生有多种起因,比如摄像系统的随机抖动、有意跟踪扫描、拍摄场景中前景目标的运动、背景中小物体的移动等,正是这些多起因的相互影响,对于运动的估计以及后续处理,提出了较高的要求。
[0004] 目前,电子稳像方法中常用的运动参数估计方法主要分为以下几类:
[0005] (1)基于像素灰度信息法。该方法利用空间像素点的灰度值之间的关系,如像素相关法、像素递归法和光流场法等。这类方法的特点是算法思路简单,但是计算较为复杂不利于实时系统,且稳像精度易受噪声影响,其精度不高。
[0006] (2)基于图像块信息匹配法。该方法以参考帧中图像块为基准,在当前帧中寻找相似度最高的图像块,其位置之差就是运动偏移量。其缺点是只能求取平移运动,而实际应用中,图像之间同时存在旋转运动和比例缩放,而且研究表明,人眼对于旋转运动十分敏感,故不能忽略旋转运动。
[0007] (3)基于图像特征信息法。该方法选取图像中的有明显特征的特征量作为运动估计的基本单元,进行特征跟踪。这类方法能较好地接近人的视觉特性,通常提取的图像特征是边缘、直线以及点特征,其中边缘和直线特征提取步骤复杂,不利于实时处理。因此,本发明是基于图像的特征点信息,其技术关键是点特征提取的全局性和定位的精确性。
[0008] 电子稳像方法中另一关键技术就是图像运动补偿方法,即利用已知全局运动参数对当前图像直接进行补偿作为输出图像,输出图像的边界信息会有丢失。图像运动补偿的难点在于:需要补偿的仅为摄像机的随机抖动,而应保留正常的扫描运动,从而达到既能有效减轻摄像机的抖动,同时又能实时跟踪真实场景。因此,在运动补偿时,应对全局运动矢量中的平稳运动量和不稳定运动量进行区分,即对运动矢量信号进行滤波处理,从而提取出抖动分量进行补偿。已有的滤波方法存在不同的缺陷,例如:均值滤波法,容易出现过稳或者欠稳现象;曲线拟和法又会导致较大延迟,不能实时应用;惯性滤波法需要事先对运动类型进行准确设置。因此,需要寻找适合稳像系统的达到实时稳定运动矢量序列的自适应滤波方法。
[0009] 上述已有运动估计方法和图像补偿方法的不足,造成对图像运动参数的估计精度不高,不能实时处理摄像机的复杂随机抖动和复杂运动场景,无法跟随扫描运动,且边界信息的丢失现象会降低输出视频的质量。

发明内容

[0010] 本发明的目的在于避免上述已有技术的不足,提出一种基于全局特征点迭代的全景稳像方法,一是解决对复杂环境的全局运动参数的快速精确估计,二是解决对全局运动参数进行实时自适应滤波提取抖动参数,并实现图像的全景补偿,以消除或者减轻视频序列的不稳定现象,改善视频监控或者跟踪系统的观测效果。
[0011] 本发明的目的是这样实现的:
[0012] 本发明主要包括基于特征点迭代的图像运动参数估计和基于滤波的图像运动补偿两部分。其中,全局运动参数的估计是充分利用特征跟踪的思想,将图像中最稳定的Harris特征点与特征窗相结合,通过距离一致性验证和特征点迭代更新,逐渐删除局部特征点,使得全局特征点集合快速收敛,以准确求取全局运动参数。运动图像的补偿是利用信号处理的方法滤波提取抖动参数,仅对实际抖动参数进行补偿而保留摄像系统的正常扫描运动,同时在补偿时结合图像融合实现全景图像的输出。具体方案如下:
[0013] 一.基于特征点迭代的图像全局运动参数估计方法,包括如下步骤:
[0014] (1)将参考帧图像fk分成互不重叠的区域,在各区域内利用Harris算子选取特征点(xi,yi);
[0015] (2)以每一个特征点为中心取尺寸为M×N的特征窗,在当前帧fk+1的一定搜索范围内,利用最小绝对误差和准则SAD对特征窗进行匹配,并以匹配窗对应的中心点作为匹配特征点 建立初始全局特征点对集合;
[0016] (3)对初始全局特征点对集合,通过距离准则进行一致性验证,取出c对候选全局特征点对集合;
[0017] (4)将候选点对集合代入仿射运动模型,利用特征点对迭代更新,得到最终的K对全局特征点对集合,并获得全局运动6参数矩阵Maffine:
[0018]
[0019] 二.基于滤波的图像运动补偿方法,包括如下步骤:
[0020] 1)利用全局运动6参数仿射矩阵Maffine,计算图像的旋转角度θ′,水平偏移dx′和垂直偏移dy′,
[0021] dx′=m2,dy′=m5;
[0022] 2)对旋转角度θ′,水平偏移dx′和垂直偏移dy′,采用kalman滤波器进行平滑处理,得到θ″、dx″和dy″;
[0023] 3)集合最终的K对特征点,计算图像的比例因子s,
[0024]
[0025] 其中,(xi,yi)和 分别表示参考帧和当前帧中对应特征点,(x,y)和 分别表示参考帧和当前帧中特征点集合的质心;
[0026] 4)以滤波前后各运动分量之差θ=θ′-θ″,dx=dx′-dx″,dy=dy′-dy″作为抖动参数,计算待补偿矩阵Maffine的6个参数,即
[0027] m0=s×cosθ,m1=s×(-sinθ),m2=dx
[0028] ;
[0029] m3=s×sinθ,m4=s×cosθ,m5=dy
[0030] 5)以参考帧作为初始全景图,利用待补偿矩阵Maffine的6参数对当前帧像素点进行仿射变换,并利用图像融和策略确定每个点的灰度值,得到图像的补偿结果。
[0031] 上述图像运动参数估计方法,其中(3)中所述的通过距离准则进行一致性验证,按如下步骤进行:
[0032] (3a)计算所有特征点对之间的距离,
[0033]
[0034] 式中,(xi,yi)和 分别表示参考帧和当前帧中对应特征点和匹配特征点;
[0035] (3b)将这些距离分成l类,逐个比较和统计每一距离类中特征点的个数ct,t=1,2,…,l;
[0036] (3c)判断每类距离的数目,如果满足:c=max{ct|t=1,…,l},则该距离所对应的特征匹配具有良好的距离一致性,作为候选全局特征点对。
[0037] 上述图像运动参数估计方法,其中(4)所述的利用特征点对迭代更新,求取全局运动6参数矩阵,具体步骤如下:
[0038] (4a)将c对候选全局特征点的坐标差 作为初始数据集合S;
[0039] (4b)将S中对应的候选全局特征点代入仿射运动模型,建立仿射方程:B=AMaffine,
[0040] 式中
[0041] (4c)利用最小二乘算法计算仿射参数矩阵Maffine=(ATA)-1AB;
[0042] (4d)利用所求的参数矩阵Maffine,计算参考帧中各特征点映射后的坐标(xi,yi),并计算其与当前帧中检测特征点的坐标差(Δxi,Δyi),
[0043] Δxi=xi-xi,Δyi=yi-yi;
[0044] (4e)计算初始数据集合S中(Δxi,Δyi)与(Δxi,Δyi)的位置误差E,[0045]
[0046] (4f)将集合S中误差大于设定阈值的对应特征点对删除,更新集合S并转至步骤(4b),若误差均小于设定阈值,则停止迭代,已求的参数矩阵即为最终的全局运动参数,且被保留的特征点对为最终的全局特征点对集合。
[0047] 本发明具有如下效果:
[0048] (1)由于采用特征点迭代更新,提高了图像全局运动参数的计算精度。
[0049] 本发明采用的特征点提取原则是,利用Harris算子在图像各分区内取响应最大点,以使特征点均匀分布在图像内,并不会集中于前景目标;本发明通过距离一致性验证和位置误差的迭代判断,逐渐剔除局部运动特征点,使得全局特征点集合得到收敛,不仅有效地处理摄像系统平移,旋转,变焦等抖动以及更为复杂的场景局部运动情况,且提高全局运动估计的精度。
[0050] (2)由于采用滤波性能良好的Kalman滤波器,一方面较好地平滑运动矢量以降低视频抖动,另一方面有效跟随摄像系统的有意扫描运动。
[0051] 相对于传统的采用固定窗长的均值滤波器,它可以有效避免过稳或者欠稳现象的发生,能够自适应地根据实际运动参数曲线,调整平滑程度,同时又可有效保留摄像系统的扫描运动,保证输出视频的真实性。
[0052] (3)由于结合图像融合技术,使得输出全景补偿图像,提高视频序列的完整性。
[0053] 图像补偿往往会出现边界丢失现象,即常见的黑色边框,给视觉效果带来不良影响,且不能反映真实场景,本发明利用已知待补偿矩阵,对当前图像和参考图像进行融和处理,切出同尺寸的图像作为最终补偿结果,可以有效去除黑色边框,达到边界信息的重建。

附图说明

[0054] 图1是本发明的整体流程示意图;
[0055] 图2是本发明的特征点对迭代更新求全局运动参数的流程图;
[0056] 图3是本发明特征点提取、特征窗建立以及特征点匹配结果示意图;
[0057] 图4是本发明特征点对迭代结果图;
[0058] 图5是本发明对原始水平偏移和垂直偏移进行滤波的结果图;
[0059] 图6是本发明利用图像融合进行全景补偿的结果图;
[0060] 图7是本发明对视频序列进行稳定前后的PSNR对比结果图。

具体实施方式

[0061] 以下参照附图对本发明作进一步详细的描述。
[0062] 参照图1,本发明的图像运动参数估计的步骤如下:
[0063] 步骤1,对原始参考图像提取特征点。
[0064] 将原始图像I(x,y),分成4×4共16个互不重叠的区域,在每个区域内利用Harris角点检测方法提取特征点,其过程是:
[0065] (1a)利用下式计算梯度图像:
[0066]
[0067] 其中 表示卷积,X表示水平方向的梯度图像,Y表示垂直方向的梯度图像;
[0068] (1b)构造自相关矩阵R:
[0069] 令
[0070] 其中,w=exp(-(X2+Y2)/2σ2)为高斯平滑窗函数;
[0071] (1c)计算Harris特征点响应值:
[0072] RH=det(R)-k·trace(R)
[0073] 其中 λ1,λ2为自相关矩阵R的两个特征值。
[0074] (1d)提取特征点:
[0075] 在每个区域内取RH最大的点,作为特征点,如图3(a)所示的特征点。
[0076] 步骤2,在参考帧中建立特征窗。
[0077] 以参考帧中的每一特征点为中心,构造M×N大小的图像块作为特征窗。由于摄像机的旋转运动,特征窗相应也会旋转,如果特征窗过大则会导致像素点的错位;特征窗过小,则包含的信息量又过少,因而就要确定合适尺寸的特征窗。下面给出了特征窗尺寸和旋转角度之间的关系式,从而推导出合适的特征窗尺寸。
[0078] 设以图像中心为坐标原点,旋转前两点坐标分别为(x1,y1)和(x2,y2),旋转后对应两点坐标分别为(x′1,y′1)和(x′2,y′2),则图像旋转之前,两点之间的水平和垂直距离分别为:
[0079] Δx=x2-x1
[0080] Δy=y2-y1
[0081] 假设图像旋转α度,由旋转方程可知,图像旋转之后两点水平和垂直距离为:
[0082] Δx′=Δxcosα+Δysinα
[0083] Δy′=-Δxsinα+Δycosα
[0084] 若要保证特征窗旋转后没有发生错位,只要保证旋转后两点水平间距和垂直间距的变化都小于1,即Δx′-Δx|<1和|Δy′-Δy|<1。
[0085] 假设特征窗的边长分别为M和N,即Δx=M,Δy=N
[0086] |Δx-Δx′|=|Δysinα+(cosα-1)Δx|=|sinα-1+cosα|M<1[0087] |Δy-Δy′|=|-Δxsinα+(cosα-1)Δy|=|sinα+1-cosα|N<1[0088] 由此,可以计算,在保证特征窗旋转后没有发生错位时,旋转角度与特征窗大小的关系如表1所示:在旋转角度小于5度时,特征窗尺寸小于11,可以保证特征窗不发生错位。本发明选用9×9的特征窗,如图3(a)在参考帧fk中以特征点为中心建立特征窗。
[0089] 表1旋转角度与模板尺寸关系表
[0090]
[0091] 步骤3,在当前帧中匹配特征窗。
[0092] (3a)如图3(b)在当前帧fk+1中取出对应的搜索窗,尺寸为(M+2p)×(N+2p),其中p表示水平和垂直方向最大偏移量;
[0093] (3b)利用全搜索策略和最小误差和SAD准则,找到特征窗在搜索窗内对应的匹配块,该块中心点即为对应的匹配特征点,其中SAD准则的计算公式如下:
[0094]
[0095] 式中,i,j=-p,…,p。
[0096] 步骤4,特征点对距离验证。
[0097] (4a)计算所有特征点对之间的距离,
[0098]
[0099] 式中,(xi,yi)和 分别表示参考帧和当前帧中对应特征点;
[0100] (4b)将这些距离分成l类,逐个比较和统计每一距离类中特征点的个数ci(i=1,2,…,l);
[0101] (4c)判断每类距离的数目,如果满足:c=max{ci|i=1,…,l},则该距离所对应的特征匹配具有良好的距离一致性,作为候选全局特征点对。
[0102] 步骤5:特征点对迭代更新,求全局运动参数。
[0103] 参照图2,特征点对迭代更新求全局运动参数的具体步骤为:
[0104] (5a)将c对特征点的坐标差 作为初始数据集合S;
[0105] (5b)将S中对应的特征点代入仿射运动模型,建立仿射方程:B=AMaffine,[0106] 式中
[0107] (5c)利用最小二乘算法计算仿射参数矩阵Maffine=(ATA)-1AB;
[0108] (5d)利用所求的参数矩阵Maffine,计算参考帧中各特征点映射后的坐标(xi,yi),并计算其与当前帧中检测特征点的坐标差(Δxi,Δyi),
[0109] Δxi=xi-xi,Δyi=yi-yi;
[0110] (5e)计算初始数据集合S中(Δxi,Δyi)与(Δxi,Δyi)的位置误差E,[0111]
[0112] (5f)将集合S中误差大于设定阈值的对应特征点对删除,更新集合S并转至步骤(2),若误差均小于设定阈值,则停止迭代,输出已求的仿射参数矩阵,作为最终的全局运动参数,且被保留的特征点对为最终的K对全局特征点对集合。
[0113] 如图4(a)所示,标注了通过特征点迭代删除的2个局部特征点:位于场景左边的移动车身。图4(b)为初始数据集合S中各特征点对坐标差的结果图,其中这两点出现明显不一致现象,其位置误差大于设定阈值,应该予以删除。
[0114] 参照图1,本发明的图像运动补偿的步骤如下:
[0115] 步骤A,对已估计的全局运动参数进行存储。
[0116] 步骤B,计算图像的运动分量。
[0117] 利用已求的全局运动6参数仿射矩阵 计算相邻帧间图像的旋转角度θ′,水平偏移dx′和垂直偏移dy′,
[0118] dx′=m2,dy′=m5。
[0119] 步骤C,对运动分量进行滤波。
[0120] 将各帧间运动分量排成一个序列,作为原始运动分量序列,采用kalman滤波器进行平滑处理,得到θ″、dx″和dy″。其中,kalman滤波器中的状态矢量定义为S(k)=[θ′(k),d′x(k),d′vx(k),d′y(k),d′vy(k)],分别表示旋转角度,水平和垂直偏移以及它们的速度;观测矢量定义为Z(k)=[θ″(k),dx″(k),dy″(k)];则完整的状态方程和观测方程为:
[0121]
[0122]
[0123] 式中,N(0,σθ),N(0,σx)和N(0,σy)分别表示旋转角度,水平偏移和垂直偏移的随机噪声。
[0124] 本发明以对水平偏移dx′和垂直偏移dy′进行滤波处理为例,给出了其滤波后的dx″和dy″的效果对比图,如图5所示。由于摄像机存在连续的水平方向镜头右移的扫描运动,因此可以观察到水平方向曲线呈稳定上升趋势;而垂直方向存在低幅抖动,滤波后相对平滑稳定。
[0125] 步骤D,计算图像的比例因子。
[0126] 集合最终的K对特征点,计算图像的比例因子s:
[0127]
[0128]
[0129] 其中,(xi,yi)和 分别表示参考帧和当前帧中保留的特征点对,(x,y)和分别表示参考帧和当前帧中特征点集合的质心。
[0130] 步骤E,计算待补偿矩阵。
[0131] 以滤波前后各运动分量之差θ=θ′-θ″,dx=dx′-dx″,dy=dy′-dy″作为抖动参数,结合已计算的图像比例因子s,计算待补偿矩阵Maffine的6个参数,即[0132] m0=s×cosθ,m1=s×(-sinθ),m2=dx
[0133] ,
[0134] m3=s×sinθ,m4=s×cosθ,m5=dy
[0135]
[0136] 步骤F,图像全景补偿。
[0137] 以参考帧fk作为初始全景图,利用待补偿矩阵Maffine的6参数对当前帧fk+1像素点进行仿射变换,并利用图像融和策略确定每个像素点(p,q)的灰度值,得到补偿图像f。融合后的图像像素f(p,q)为:
[0138]
[0139] 式中d1,d2表示权重值,代表该点相对位置与重叠区域宽度的比例,即该点与边界点位置之差/重叠区域宽度,且d1+d2=1,0<d1,d2<1。在重叠区域中,d1由1渐变至0,d2由0渐变至1,由此实现了在重叠区域中由fk慢慢平滑过渡到fk+1,使得融和的图像效果更加自然,不会影响整个视频的观察效果。
[0140] 图6给出了本发明对图像进行运动补偿的结果图,其中6(a)为参考帧,6(b)为当前帧,6(c)为当前帧直接补偿的结果,在图6(c)边界处出现了明显的信息丢失现象,图6(d)是利用图像融和进行全景补偿的结果。从图6(d)可以看出,全景补偿提高了图像质量,从而保证对整个场景全貌的观察效果及输出视频序列的完整流畅。
[0141] 本发明对视频序列进行稳定的效果可以通过实验进一步说明:
[0142] 本实验利用PC机在VC++编程下实现了320×240图像序列25帧/秒的实时处理,图7给出了稳定前后的帧间PSNR比较结果,其中曲线original表示原始序列的PSNR,曲线stabilized表示稳定序列的PSNR。PSNR值的计算公式如下:
[0143]
[0144] 其中,
[0145] PSNR直观反映两幅图像的相似程度,如果PSNR值越高,则说明两幅图像越相似,即帧间稳定性也高。由图7可以看出,稳定后的PSNR值比稳定前有明显的提高,证明本发明对抖动视频序列具有良好的稳定效果,同时也证明本发明的全局运动参数估计具有较高的精度。