基于视觉注意机制的电子稳像方法转让专利

申请号 : CN201310287353.X

文献号 : CN103426182B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 朱娟娟郭宝龙

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

摘要 :

一种基于视觉注意机制的电子稳像方法,包括以下步骤:对参考帧进行前景运动区域检测,标记前景运动子块;提取参考帧中全局显著特征点;特征点对匹配;误匹配特征点对剔除;运动参数获得;运动滤波;快速运动补偿;重建未定义的边界信息,获得全景图像。本发明方法通过全局显著特征点对的提取、匹配、验证和运动参数计算,以及自适应滤波平滑运动获得补偿参数,提高视频帧间的视觉稳定度和清晰度,消除或者减轻了视频序列的不稳定现象,改善了视频监控或者跟踪系统的观测效果。

权利要求 :

1.一种基于视觉注意机制的电子稳像方法,其特征在于,包括以下步骤:步骤1、对参考帧进行前景运动区域检测,标记前景运动子块步骤;

子步骤1a、对视频序列的一段连续帧图像进行平均,获得背景图像B(x,y),x、y表示像素点的x轴和y轴坐标;

子步骤1b、定义k-1时刻的图像为参考帧fk-1(x,y),k时刻的图像为当前帧fk(x,y),分别计算它们与背景图像B(x,y)的差分图像:参考帧差分图像Dk-1(x,y)=abs[fk-1(x,y)-B(x,y)],当前帧差分图像Dk(x,y)=abs[fk(x,y)-B(x,y)];

子步骤1c、将参考帧差分图像Dk-1(x,y)和当前帧差分图像Dk(x,y)分别划分成互不重叠的M×N个子块,所述子块尺寸为I×J像素,计算各子块内的平均绝对误差:参考帧图像子块平均绝对误差

当前帧图像子块平均绝对误差

其中,i=1,…,I,j=1,…,J,m=1,…,M,n=1,…,N;

子步骤1d、计算参考帧子块差分平均值和当前帧子块差分平均值,分别作为阈值Th1和Th2:Th1=∑Bk-1(m,n)/(M×N),

Th2=∑Bk(m,n)/(M×N);

子步骤1e、通过二值化初步判断各子块是否为运动子块,定义MOk-1(m,n)为参考帧运动子块,MOk(m,n)为当前帧运动子块,判断条件如下:子步骤1f、对参考帧运动子块MOk-1(m,n)进行空域相似性检测,将不属于运动前景的子块删除;

子步骤1g、对参考帧运动子块MOk-1(m,n)进行时域相似性检测,将不属于运动前景的子块删除;

经过空域、时域相似性检测后,最终保留的运动子块为运动前景区域;

步骤2、提取参考帧中全局显著特征点步骤;

子步骤2a、将参考帧fk-1(x,y)利用下式计算梯度图像:T

其中, 表示卷积,X表示水平方向的梯度图像,Y表示垂直方向的梯度图像,[·]表示转置操作;

子步骤2b、构造自相关矩阵R:

其中, 为高斯平滑窗函数, 为窗函数的标准差;

子步骤2c、计算Harris角点响应值RH:

RH=λ1×λ2-0.05·(λ1+λ2);

其中,λ1和λ2为自相关矩阵R的两个特征值;

子步骤2d、将参考帧fk-1(x,y)划分成互不重叠的M×N个子块,子块尺寸为I×J像素,将参考帧fk-1(x,y)的每个子块内的最大Harris角点响应值作为该子块的特征响应值RHMAX(m,n);

子步骤2e、将特征响应值RHMAX(m,n)进行由高到低的排序,取出前20%较大值,将所述特征响应值对应的位置记为参考帧特征点(xi,yi);

子步骤2f、利用子步骤1g的结果对参考帧特征点(xi,yi)进行判断,判断该特征点对应的参考帧运动子块MOk-1(m,n)及其周围8相邻领域内是否为1,若为1,则表明该特征点属于运动目标或者在运动边界的不可靠区域,该特征点予以删除;

步骤3、特征点对匹配步骤;

子步骤3a、在参考帧fk-1(x,y)中以参考帧特征点(xi,yi)为中心,构建尺寸为P×Q像素的特征窗;

子步骤3b、利用全搜索策略及最小误差和SAD准则,在当前帧fk(x,y)中找到对应的匹配窗,匹配窗尺寸为(P+2T)×(Q+2T)像素,匹配窗的中心点即为当前帧匹配特征点其中,T表示水平方向和垂直方向的像素最大偏移量,SAD准则的计算公式为:p=1,…,P,q=1,…,Q,x,y=-T,…,T;

步骤4:误匹配特征点对剔除步骤;

根据欧式距离公式 计算参考帧和当前帧的第i对特征点对在水平方向和垂直方向平移量的距离,将匹配的特征点对利用距离正态性分布特征进行距离验证,剔除误匹配特征点对,得到正确匹配的C对特征点对;

步骤5:运动参数的获得步骤;

子步骤5a、建立描述参考帧特征点(xi,yi)和当前帧匹配特征点 间关系的运动参数模型: 其中,θ为图像旋转角度,u为像素垂直平移量,v为像素水平平移量,θ、u和v组成运动参数;

子步骤5b、将正确匹配的C对特征点对代入运动参数模型,整理得到运动参数矩阵方程:子步骤5c、求解超定线性方程B=Am,运动参数矩阵m的最小二乘解为m=(ATA)-1AB,从而得到运动参数;

步骤6:运动滤波步骤;

子步骤6a、令状态矢量S(k)=[u(k),v(k),du(k),dv(k)]T,观测矢量Z(k)=[u(k),v(k)]T,其中,u(k)为k时刻的像素垂直平移量,v(k)为k时刻的像素水平平移量,du(k)为k时刻像素垂直平移量对应的瞬时速度,dv(k)为k时刻像素水平平移量对应的瞬时速度;

子步骤6b、建立线性离散系统模型,得到状态方程和观测方程:状态方程为S(k)=F·S(k-1)+δ,

观测方程为Z(k)=H·S(k)+η;

其中, 是状态转移矩阵, 是观测矩阵,δ、η为相互独立的白噪声,δ~N(0,Φ),η~N(0,Γ),Φ为过程噪声的方差阵,Γ为观测噪声的方差阵;

子步骤6c、建立系统状态预测方程,并对其协方差矩阵进行预测及更新,完成运动滤波:系统状态预测方程为:S(k|k-1)=F·S(k-1|k-1);

T

对S(k|k-1)的协方差矩阵P(k|k-1)进行预测:P(k|k-1)=F·P(k-1)F+Φ(k-1),Φ为过程噪声的方差阵;

系统状态更新方程为:S(k|k)=S(k|k-1)+Kg(k)·ε(K);

更新k时刻状态下S(k|k)的滤波方差矩阵:P(k|k)=(Ψ-Kg(k)·H)·P(k|k-1);

T T -1

其中,Kg(k)=P(k|k-1)·H(H·P(k|k-1)·H+Γ(k)) 为Kalman增益,ε(k)=Z(k)-H·S(k|k-1)为新息序列,Γ为观测噪声的方差阵,Ψ为同阶的单位阵;

步骤7、快速运动补偿步骤;

子步骤7a、将滤波前、后平移运动分量之差ujitter=u-ufilter,vjitter=v-vfilter结合图像旋转角度θ,作为补偿参数 其中,u为像素垂直平移量,v为像素水平平移量,ujitter为滤波后的像素垂直平移量,vjitter为滤波后的像素水平平移量;

子步骤7b、利用运动参数模型计算当前帧fk(x,y)首行首列像素[x,y]的旋转结果:子步骤7c、根据图像坐标线性结构进行加减运算,计算出当前帧fk(x,y)其余行列的像素,获得当前帧像素的新坐标[x′,y′],实现当前帧的补偿;

步骤8、重建未定义的边界信息,获得全景图像步骤;

以参考帧fk-1(x,y)作为初始全景图,利用图像拼接技术,对参考帧和当前帧进行融合,根据图像融和策略确定融合后图像的每个像素点(x′,y′)的灰度值,得到补偿图像f(x′,y′),实现全景图像输出:上式中的τ、ξ表示权重值,代表该像素点相对位置与重叠区域宽度的比例,即该像素点与边界点位置之差,且τ+ξ=1,0<τ,ξ<1,在重叠区域中,τ由1渐变至0,ξ由0渐变至1;

所述子步骤1f中对参考帧运动子块MOk-1(m,n)进行空域相似性检测的具体步骤为:统计参考帧运动子块MOk-1(m,n)周围8相邻的运动子块的数量,如运动子块数量小于3,说明该运动子块为背景中差异较大的孤立子块,不属于运动前景,予以删除,否则说明该子块和领域块相似,都属于前景运动区域:l是取值为0、1的变量;

所述子步骤1g中对参考帧运动子块MOk-1(m,n)进行时域相似性检测的具体步骤为:在当前帧运动子块MOk(m,n)周围8相邻的运动子块中判断是否有运动子块,若有则说明目标在时间上连续,是真实的运动前景,否则,视为偶尔出现的误检,需要删除,最终保留的运动子块为运动前景区域:l是取值为0、1的变量;

所述步骤6还包括协方差矩阵的修正步骤,在完成子步骤6c后继续执行以下步骤:T

子步骤6d、利用新息序列ε(k)的性质来判断滤波是否发散:ε(k)·ε(k)≤γ·TracTe[H·P(k|k-1)·H+Γ(k)];

其中,γ为可调系数且γ>1;

子步骤6e、当子步骤6d中式子成立时,说明滤波器处于正常工作状态,直接得到当前状态的最优估计值;当式子不成立时,表明实际误差将超过理论估计值的γ倍,滤波将发散,此时通过加权系数C(k)对子步骤6c中的协方差矩阵P(k|k-1)进行修正,修正完毕后完成运动参数的自适应滤波,修正公式如下:

T

P(k|k-1)=C(k)·F·P(k-1)·F+Φ(k),

2.根据权利要求1所述的基于视觉注意机制的电子稳像方法,其特征在于:所述步骤4中对匹配的特征点对进行距离验证步骤为:判断参考帧和当前帧的第i对特征点对在水平方向和垂直方向平移量的距离di是否满足以下条件:|di-μ|>3σ,μ、σ分别为di的均值和标准差,满足以上条件时,认为该特征点对为误匹配特征点对,将其剔除。

说明书 :

基于视觉注意机制的电子稳像方法

技术领域

[0001] 本发明属于数字图像处理技术领域,尤其涉及一种基于视觉注意机制的电子稳像方法。

背景技术

[0002] 由于人的视觉系统具有视觉暂留特性,当摄像设备出现频率较高抖动时,视觉系统容易捕捉图像中画面的抖动,从而会觉得视觉模糊和难以观察目标。摄像机的高频抖动会引起视频序列的不稳定,视频序列中的运动可以分为目标运动和摄像机运动,其中,前者为局部运动,后者为全局运动。为了便于观察,需要对视频序列中的运动进行平滑稳定处理,由此出现了电子稳像技术。电子稳像技术是采用图像处理的方法来估计视频帧间偏移量并进行补偿的技术。目前电子稳像技术已广泛应用于目标检测与跟踪、步行机器人、视频压缩和图像拼接等领域。
[0003] 对电子稳像系统的研究主要集中在全局运动估计和图像运动补偿两大关键技术上。全局运动估计的任务是确定帧间运动偏移量,目前全局运动估计的研究热点是可以处理平移、旋转和变焦情况的特征匹配法。现有技术中常采用的特征匹配方法主要有以下几类:
[0004] (1)基于Hough直线的特征匹配法。如专利申请号为201010528024.6、发明名称为基于特征直线的船载摄像系统电子稳像方法的中国发明专利申请公开的电子稳像方法,该方法利用Hough变换提取图像中的海天线直线特征,然后通过直线段的参数和位置进行匹配。这类方法的算法思路简单且易实现,但是适用场景较为局限,对于简单场景会难以甚至无法提取直线,而对于复杂场景会提取过多杂乱短小的直线,给直线匹配带来困难。
[0005] (2)基于Sift兴趣点的匹配法。该方法基于尺度空间理论,提取参考帧和当前帧的Sift特征点集合,进行配准,可以处理两幅图像的平移、旋转、 仿射和视角变换,精确地获得图像的运动参数,具有较高的鲁棒性。但其存在着提取sift特征点数量过大,匹配过程复杂,无法进行实时应用的不足。
[0006] (3)基于Harris角点的匹配法。如专利号为201110178881.2、发明名称为基于特征匹配的电子稳像方法的中国发明专利公开的电子稳像方法,该方法选取图像中的较少数量的角点特征作为运动估计的基本单元,进行特征跟踪。由于其特征点提取是在整幅图像中进行的,因此易落在局部运动物体上,通常需要进行特征验证和迭代,以剔除局部特征点,从而影响全局运动估计的速度和精度。
[0007] 图像运动补偿方法作为电子稳像系统的另一关键技术,是对原始的运动参数序列进行滤波,从而获得抖动分量,以抖动分量作为补偿参数来补偿当前帧。其重点在于去除抖动的同时保留扫描运动。目前常用的滤波方法有运动衰减法、均值滤波法、Kalman滤波法等。其中,运动衰减法中的衰减系数是实验中凭经验设定的,无法适用于所有的视频序列;均值滤波采用简单的求平均运算,会引入多余的低频噪声;Kalman滤波则要求过程噪声和观测噪声先验已知,并服从零均值的高斯分布,这在实际系统中是难以满足的。
[0008] 前述电子稳像系统中采用的运动估计方法和运动补偿方法,算法的速度依赖于特征信息的提取、匹配和迭代运算,而复杂运动场景存在局部运动物体,由于传统的特征点检测是对整幅图像进行的,因而无法避免特征点选在了前景目标上,导致全局运动估计的精度下降;同时,算法难以同时处理摄像机的复杂随机抖动和扫描运动,容易出现滤波发散以至输出虚假场景,与真实的扫描场景相差很大,从而影响观察效果;另外,补偿时对当前帧逐点计算变换参数,消耗运算时间,影响系统的实时处理能力,边界信息的丢失也会影响视觉观察。

发明内容

[0009] 针对上述技术的不足,本发明的目的在于提供一种基于视觉注意机制的电子稳像方法,可以消除载体运动产生的图像模糊和不稳定的现象,有效稳定输出视频,改善视频监控或者跟踪系统的观测效果。
[0010] 为了实现上述目的,本发明采取如下的技术解决方案:
[0011] 一种基于视觉注意机制的电子稳像方法,包括以下步骤:
[0012] 步骤1、对参考帧进行前景运动区域检测,标记前景运动子块步骤;
[0013] 子步骤1a、对视频序列的一段连续帧图像进行平均,获得背景图像B(x,y),x、y表示像素点的x轴和y轴坐标;
[0014] 子步骤1b、定义k-1时刻的图像为参考帧fk-1(x,y),k时刻的图像为当前帧fk(x,y),分别计算它们与背景图像B(x,y)的差分图像:
[0015] 参考帧差分图像Dk-1(x,y)=abs[fk-1(x,y)-B(x,y)],
[0016] 当前帧差分图像Dk(x,y)=abs[fk(x,y)-B(x,y)];
[0017] 子步骤1c、将参考帧差分图像Dk-1(x,y)和当前帧差分图像Dk(x,y)分别划分成互不重叠的M×N个子块,所述子块尺寸为I×J像素,计算各子块内的平均绝对误差:
[0018] 参考帧图像子块平均绝对误差
[0019] 当前帧图像子块平均绝对误差
[0020] 其中,i=1,…,I,j=l,…,J,m=1,…,M,n=l,…,N;
[0021] 子步骤1d、计算参考帧子块差分平均值和当前帧子块差分平均值,分别作为阈值Th1和Th2:
[0022] Th1=∑Bk-1(m,n)/(M×N),
[0023] Th2=∑Bk(m,n)/(M×N);
[0024] 子步骤1e、通过二值化初步判断各子块是否为运动子块,定义MOk-1(m,n)为参考帧运动子块,MOk(m,n)为当前帧运动子块,判断条件如下:
[0025]
[0026]
[0027] 子步骤1f、对参考帧运动子块MOk-1(m,n)进行空域相似性检测,将不属于运动前景的子块删除;
[0028] 子步骤1g、对参考帧运动子块MOk-1(m,n)进行时域相似性检测,将不属于运动前景的子块删除;
[0029] 经过空域、时域相似性检测后,最终保留的运动子块为运动前景区域;
[0030] 步骤2、提取参考帧中全局显著特征点步骤;
[0031] 子步骤2a、将参考帧fk-1(x,y)利用下式计算梯度图像:
[0032]
[0033] 其中, 表示卷积,X表示水平方向的梯度图像,Y表示垂直方向的梯度图像,[·]T表示转置操作;
[0034] 子步骤2b、构造自相关矩阵R:
[0035]
[0036] 其中, 为高斯平滑窗函数, 为窗函数的标准差;
[0037] 子步骤2c、计算Harris角点响应值RH:
[0038] RH=λ1×λ2-0.05·(λ1+λ2);
[0039] 其中,λ1和λ2为自相关矩阵R的两个特征值;
[0040] 子步骤2d、将参考帧fk-1(x,y)划分成互不重叠的M×N个子块,子块尺寸为I×J像素,将参考帧fk-1(x,y)的每个子块内的最大Harris角点响应值作为该子块的特征响应值RHMAX(m,n);
[0041] 子步骤2e、将特征响应值RHMAX(m,n)进行由高到低的排序,取出前20%较大值,将所述特征响应值对应的位置记为参考帧特征点(xi,yi);
[0042] 子步骤2f、利用子步骤1g的结果对参考帧特征点(xi,yi)进行判断,判断该特征点对应的参考帧运动子块MOk-1(m,n)及其周围8相邻领域内是否为1,若为1,则表明该特征点属于运动目标或者在运动边界的不可靠区域,该特征点予以删除;
[0043] 步骤3、特征点对匹配步骤;
[0044] 子步骤3a、在参考帧fk-1(x,y)中以参考帧特征点(xi,yi)为中心,构建尺寸为P×Q像素的特征窗;
[0045] 子步骤3b、利用全搜索策略及最小误差和SAD准则,在当前帧fk(x,y)中找到对应的匹配窗,匹配窗尺寸为(P+2T)×(Q+2T)像素,匹配窗的中心点即为当前帧匹配特征点 其中,T表示水平方向和垂直方向的像素最大偏移量, SAD准则的计算公式为:p=1,…,P,q=1,…,Q,x,y=-T,…,T;
[0046] 步骤4:误匹配特征点对剔除步骤;
[0047] 根据欧式距离公式 计算参考帧和当前帧的第i对特征点对在水平方向和垂直方向平移量的距离,将匹配的特征点对利用距离正态性分布特征进行距离验证,剔除误匹配特征点对,得到正确匹配的C对特征点对;
[0048] 步骤5:运动参数的获得步骤;
[0049] 子步骤5a、建立描述参考帧特征点(xi,yi)和当前帧匹配特征点 间关系的运动参数模型: 其中,θ为图像旋转角度,u为像素垂直平移量,v为像素水平平移量,θ、u和v组成运动参数;
[0050] 子步骤5b、将正确匹配的C对特征点对代入运动参数模型,整理得到运动参数矩阵方程:
[0051] 子步骤5c、求解超定线性方程B=Am,运动参数矩阵m的最小二乘解为m=T -1(AA) AB,从而得到运动参数;
[0052] 步骤6:运动滤波步骤;
[0053] 子步骤6a、令状态矢量S(k)=[u(k),v(k),du(k),dv(k)]T,观测矢量Z(k)=T[u(k),v(k)],其中,u(k)为k时刻的像素垂直平移量,v(k)为k时刻的像素水平平移量,du(k)为k时刻像素垂直平移量对应的瞬时速度,dv(k)为k时刻像素水平平移量对应的瞬时速度;
[0054] 子步骤6b、建立线性离散系统模型,得到状态方程和观测方程:
[0055] 状态方程为S(k)=F·S(k-1)+δ,
[0056] 观测方程为Z(k)=H·S(k)+η;
[0057] 其中, 是状态转移矩阵, 是观测矩阵,δ、η为相互独立的白噪声,δ~N(0,Φ),η~N(0,Γ),Φ为过程噪声的方差阵,Γ为观测噪声的方差阵;
[0058] 子步骤6c、建立系统状态预测方程,并对其协方差矩阵进行预测及更新,完成运动滤波:
[0059] 系统状态预测方程为:S(k|k-1)=F·S(k-1|k-1);
[0060] 对S(k|k-1)的 协 方 差 矩 阵 P(k|k-1)进 行 预 测:P(k|k-1)= F·P(k-1)TF+Φ(k-1),Φ为过程噪声的方差阵;
[0061] 系统状态更新方程为:S(k|k)=S(k|k-1)+Kg(k)·ε(K);
[0062] 更新k时刻状态下S(k|k)的滤波方差矩阵:P(k|k)=(Ψ-Kg(k)·H)·P(k|k-1);
[0063] 其中,Kg(k)=P(k|k-1)·HT(H·P(k|k-1)·HT+Γ(k))-1为Kalman增益,ε(k)=Z(k)-H·S(k|k-1)为新息序列,Γ为观测噪声的方差阵,Ψ为同阶的单位阵;
[0064] 步骤7、快速运动补偿步骤;
[0065] 子步骤7a、将滤波前、后平移运动分量之差ujitter=u-ufilter,vjitter=v-vfilter结合图像旋转角度θ,作为补偿参数 其中,u为像素垂直平移量,v为像素水平平移量,ujitter为滤波后的像素垂直平移量,vjitter为滤波后的像素水平平移量;
[0066] 子步骤7b、利用运动参数模型计算当前帧fk(x,y)首行首列像素[x,y]的旋转结果:
[0067] 子步骤7c、根据图像坐标线性结构进行加减运算,计算出当前帧fk(x,y)其余行列的像素,获得当前帧像素的新坐标[x′,y′],实现当前帧的补偿;
[0068] 步骤8、重建未定义的边界信息,获得全景图像步骤;
[0069] 以参考帧fk-1(x,y)作为初始全景图,利用图像拼接技术,对参考帧和当前帧进行融合,根据图像融和策略确定融合后图像的每个像素点(x′,y′)的灰度值,得到补偿图像f(x′,y′),实现全景图像输出:
[0070]
[0071] 上式中的τ、ξ表示权重值,代表该像素点相对位置与重叠区域宽度的比例,即该像素点与边界点位置之差,且τ+ξ=1,0<τ,ξ<1,在重叠区域中,τ由1渐变至0,ξ由0渐变至1。
[0072] 进一步的具体方案为:所述步骤6还包括协方差矩阵的修正步骤,在完成子步骤6c后继续执行以下步骤:
[0073] 子步骤6d、利用新息序列ε(k)的性质来判断滤波是否发散:ε(k)T·ε(k)≤γ·Trace[H·P(k|k-1)·HT+Γ(k)];
[0074] 其中,γ为可调系数且γ>1;
[0075] 子步骤6e、当子步骤6d中式子成立时,说明滤波器处于正常工作状态,直接得到当前状态的最优估计值;当式子不成立时,表明实际误差将超过理论估计值的γ倍,滤波将发散,此时通过加权系数C(k)对子步骤6c中的协方差矩阵P(k|k-1)进行修正,修正完毕后完成运动参数的自适应滤波,
[0076] 修正公式如下:
[0077] P(k|k-1)=C(k)·F·P(k-1)·FT+Φ(k),
[0078]
[0079] 进一步的具体方案为:所述子步骤1f中对参考帧运动子块MOk-1(m,n)进行空域相似性检测的具体步骤为:统计参考帧运动子块MOk-1(m,n)周围8相邻的运动子块的数量,如运动子块数量小于3,说明该运动子块为背景中差异较大的孤立子块,不属于运动前景,予以删除,否则说明该子块和领域块相似,都属于前景运动区域:
[0080] l是取值为0、1的变量;
[0081] 进一步的具体方案为:所述子步骤1g中对参考帧运动子块MOk-1(m,n)进行时域相似性检测的具体步骤为:在当前帧运动子块MOk(m,n)周围8相邻的运动子块中判断是否有运动子块,若有则说明目标在时间上连续,是真实的运动前 景,否则,应视为偶尔出现的误检,需要删除,最终保留的运动子块为运动前景区域:
[0082] l是取值为0、1的变量。
[0083] 进一步的具体方案为:所述步骤4中对匹配的特征点对进行距离验证步骤为:判断参考帧和当前帧的第i对特征点对在水平方向和垂直方向平移量的距离di是否满足以下条件:
[0084] |di-μ|>3σ,μ、σ分别为di的均值和标准差,
[0085] 当满足以上条件时,认为该特征点对为误匹配特征点对,将其剔除。
[0086] 由以上技术方案可知,本发明方法利用图像的运动特征信息,基于运动差异对视频序列中的运动前景和背景进行分割,对去除了前景目标的背景区域进行全局显著特征点的提取和配准,提高了全局运动估计的精度;同时,以人眼的视觉注意为指导,模拟视觉平滑特性,构建摄像机在连续成像时间内的低频匀速运动模式,即对全局运动矢量序列中的高频分量进行滤波,获取补偿参数;补偿时,利用图像的线性存储结构,只需计算图像首行首列的变换参数,提高系统的实时性能,且结合图像拼接技术对边界进行重建,获得清晰稳定的全景图像。
[0087] 与现有技术相比,本发明具有以下技术效果:
[0088] (1)改进Harris角点算子,保证了特征点为具有独特信息的视觉显著特征点:本发明对图像分块,提取角点响应较大的一定数量的特征点作为显著特征点,特征点的固定数量防止在复杂区域提取的特征点数目过多的情况,特征点的显著信息避免简单纹理重复区域的误匹配;
[0089] (2)由于采用前景运动区域标记和排除,保证了提取的特征点均在背景上:本发明的特征提取不是在整幅图像直接提取,而是先将运动区域进行判定、标记和排除后,仅在背景区域进行特征检测,从而保证特征点很好的代表了摄像机的运动,即全局运动信息;
[0090] (3)由于结合特征匹配的距离验证,进一步提高全局运动估计的精度:当出现误匹配时,采用距离准则,快速判定并剔除该特征点对,使得参与运动参数计算的特征点均为正确匹配,提高运动估计的精度;
[0091] (4)采用自适应Sage-Husa滤波算法,模拟视觉平滑特性,一方面较好地平滑运动矢量以降低视频抖动,另一方面有效跟随摄像系统的有意扫描运动:相对于传统的Kalman滤波精度较低甚至发散,自适应Sage-Husa滤波通过观测数据不断修正预测值,同时将过程噪声和观测噪声的统计特性代入标准卡尔曼滤波器中,进行实时估计和修正,增强对突变状态的跟踪能力,从而达到降低模型误差、提高滤波精度;
[0092] (5)快速补偿和未定义区的重建,保证输出视频在视觉观察时的流畅和完整性:本发明利用像素点间的相对位置具有旋转不变性的特点,采用图像旋转的快速补偿方法,提高坐标计算的效率,保证系统的实时性能;同时,为避免图像补偿出现未定义的黑色边框,给视觉效果带来不良影响,本发明利用拼接和融和技术,对未定义区进行重建,输出全景图像序列。

附图说明

[0093] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中需要使用的附图做简单介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0094] 图1是本发明方法的流程图;
[0095] 图2是特征点对距离正态分布图;
[0096] 图3a是标记了运动子块后的参考帧图像;
[0097] 图3b是标记了运动子块后的当前帧图像;
[0098] 图3c是进行空域相似性检测的参考帧图像;
[0099] 图3d是进行时域相似性检测的当前帧图像;
[0100] 图4a是提取了所有特征点的参考帧图像;
[0101] 图4b是提取了显著特征点的参考帧图像;
[0102] 图4c是去除局部特征点后的结果图;
[0103] 图4d是当前帧中配准的特征点结果图;
[0104] 图5a是旋转前的图像;
[0105] 图5b是旋转后的图像;
[0106] 图6a是水平偏移分量采用本发明方法优选方案自适应滤波和Kalman滤波处理后的对比结果图;
[0107] 图6b是垂直偏移分量采用本发明方法优选方案自适应滤波和Kalman滤波处理后的对比结果图。

具体实施方式

[0108] 为了让本发明的上述和其它目的、特征及优点能更明显,下文特举本发明实施例,并配合所附图示,做详细说明如下。
[0109] 基于人类视觉系统中对运动注意的敏感性分析可知,背景的晃动会削弱视觉系统对前景目标的注意力,而前景目标的不一致运动又会干扰背景全局运动的检测。为了消除或者减轻视频序列的不稳定现象,改善了视频监控或者跟踪系统的观测效果,本发明方法的基本思路是:
[0110] 首先,在运动估计模块,利用相邻帧平均获得背景图像,然后将相邻的参考帧和当前帧分别与背景图像进行差分,然后基于图像块的时域和空域相似性检测来获得前景运动区域,将前景和背景相分离,然后在参考帧的背景区域内提取Harris角点响应较大的特征点并进行配准,求解超定线性方程的最小二乘解,获得全局运动参数;
[0111] 其次,在运动补偿模块,优选通过改进Sage-Husa滤波,实时估计和修正过程噪声和观测噪声的统计特性,对过程噪声和观测噪声进行在线估计,得到最终的补偿参数,采用图像线性快速补偿算法和图像拼接来实现实时全景稳像,输出视觉完整流畅的真实场景,保证了系统的实时性。
[0112] 通过全局显著特征点对的提取、匹配、验证和运动参数计算,以及自适应滤波平滑运动获得补偿参数,提高视频帧间的视觉稳定度和清晰度。
[0113] 以上是本发明的核心思想,下面将结合本发明实施例中的附图,对本发明实施例的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下获得的所有其他实施例,都属于本发明保护的范围。
[0114] 在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其它不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施例的限制。
[0115] 参照图1,图1为本发明方法的流程图,本发明方法的具体步骤如下:
[0116] 步骤1、将参考帧进行前景运动区域检测,标记前景运动子块步骤;
[0117] 该步骤中在提取背景图像后,将连续两帧图像(参考帧和当前帧)与背景图像进行差分,将参考帧差分图像和当前帧差分图像划分成多个子块,以子块内的平均差分值作为阈值进行比较,以确定运动子块,利用时空域相似性进行分块检测前景运动区域并进行标记,实现视频序列中的前景和背景的快速分割,去除运动目标对视觉注意的干扰;
[0118] 步骤1的具体步骤如下:
[0119] 子步骤1a、对视频序列的一段连续帧图像进行平均,获得背景图像B(x,y),如可将视频序列的前25帧(1秒)图像进行平均来获得背景图像,x、y表示像素点的x轴和y轴坐标;
[0120] 子步骤1b、定义k-1时刻的图像为参考帧fk-1(x,y),k时刻的图像为当前帧fk(x,y),分别计算它们与背景图像B(x,y)的差分图像:
[0121] 参考帧差分图像Dk-1(x,y)=abs[fk-1(x,y)-B(x,y)],
[0122] 当前帧差分图像Dk(x,y)=abs[fk(x,y)-B(x,y)];
[0123] 子步骤1c、将参考帧差分图像Dk-1(x,y)和当前帧差分图像Dk(x,y)分别划分成互不重叠的M×N个子块,所述子块尺寸为I×J像素,如16×16像素,计算各子块内的平均绝对误差:
[0124] 参考帧图像子块平均绝对误差
[0125] 当前帧图像子块平均绝对误差
[0126] 其中,i=1,…,I,j=1,…,J,m=1,…,M,n=1,…,N;
[0127] 子步骤1d、计算参考帧子块差分平均值和当前帧子块差分平均值,分别作为阈值Th1和Th2:
[0128] Th1=∑Bk-1(m,n)/(M×N),
[0129] Th2=∑Bk(m,n)/(M×N);
[0130] 子步骤1e、通过二值化初步判断各子块是否为运动子块(Moving object,简称MO),定义MOk-1(m,n)为参考帧运动子块,MOk(m,n)为当前帧运动子块,判断条件如下:
[0131]
[0132]
[0133] 子步骤1f、对参考帧运动子块MOk-1(m,n)进行空域相似性检测,即统计参考帧运动子块MOk-1(m,n)周围8相邻的运动子块的数量,如运动子块数量小于3,说明该运动子块为背景中差异较大的孤立子块,不属于运动前景,予以删除,否则说明该子块和领域块相似,都属于前景运动区域:
[0134] l是取值为0、1的变量;
[0135] 子步骤1g、对参考帧运动子块MOk-1(m,n)进行时域相似性检测,即在对应的当前帧运动子块MOk(m,n)周围8相邻的运动子块中判断是否有运动子块,若有则说明目标在时间上连续,是真实的运动前景,否则,应视为偶尔出现的误检,需要删除:
[0136] l是取值为0、1的变量;
[0137] 经过空域和时域相似性检测后,最终保留的运动子块为运动前景区域。
[0138] 步骤2、提取参考帧的全局显著特征点步骤;
[0139] 该步骤中首先计算Harris角点响应值,并在参考帧fk-1(x,y)的各子块内找到最大Harris角点响应值作为特征响应值,然后进行排序,取出较大的前20%特征响应值对应的位置作为特征点,即为视觉观察到的具有独特信息的显著特征点,根据步骤1中前景运动区域的标记结果,判断该特征点是否位于前景运动区域内,若位于前景运动区域内则删除,保留下来的即为视觉观察到的全局显著特征点;
[0140] 步骤2的具体步骤如下:
[0141] 子步骤2a、将参考帧fk-1(x,y)利用下式计算梯度图像:
[0142]
[0143] 其中, 表示卷积,X表示水平方向的梯度图像,Y表示垂直方向的梯度图像,[·]T表示转置操作;
[0144] 子步骤2b、构造自相关矩阵R:
[0145]
[0146] 其中, 为高斯平滑窗函数, 为窗函数的标准差;
[0147] 子步骤2c、计算Harris角点响应值RH:
[0148] RH=λ1×λ2-0.05·(λ1+λ2);
[0149] 其中,λ1和λ2为自相关矩阵R的两个特征值;
[0150] 子步骤2d、将参考帧fk-1(x,y)划分成互不重叠的M×N个子块,子块尺寸为I×J像素,将参考帧fk-1(x,y)的每个子块内的最大Harris角点响应值作为该子块的特征响应值RHMAX(m,n);
[0151] 子步骤2e、将特征响应值RHMAX(m,n)进行由高到低的排序,取出前20%较大值,将所述特征响应值对应的位置记为参考帧特征点(xi,yi);
[0152] 子步骤2f、利用子步骤1g的结果对参考帧特征点(xi,yi)进行判断,判断该特征点对应的参考帧运动子块MOk-1(m,n)及其周围8相邻领域内是否为1,若为1,则表明该特征点属于运动目标或者在运动边界的不可靠区域,该特征点予以删除。
[0153] 步骤3、特征点对匹配步骤;
[0154] 根据基于视觉判断正确匹配点对的周围像素块信息一致性,通过在参考帧的每一特征点周围建立特征窗,并获得当前帧对应的匹配窗,匹配窗的中心点为匹配特征点,参考帧特征点和当前帧匹配特征点构成特征点对。
[0155] 步骤3的具体步骤如下:
[0156] 子步骤3a、在参考帧fk-1(x,y)中以参考帧特征点(xi,yi)为中心,构建尺寸为P×Q像素的特征窗;
[0157] 子步骤3b、利用全搜索策略及最小误差和SAD准则,在当前帧fk(x,y)中找到对应的匹配窗,匹配窗尺寸为(P+2T)×(Q+2T)像素,匹配窗的中心点即为当前帧匹配特征点 其中,T表示水平方向和垂直方向的像素最大偏移量,SAD准则的计算公式为:p=1,…,P,q=1,…,Q,x,y=-T,…,T;
[0158] 步骤4:误匹配特征点对剔除步骤;
[0159] 统计相邻帧(参考帧和当前帧)的特征点对在水平方向和垂直方向上平移量的距离,将匹配的特征点对利用距离正态性分布特征进行距离验证,剔除误匹配特征点对,最终得到正确匹配的C对特征点对;
[0160] 根据欧式距离公式, 其中,di为参考帧和当前帧的第i对特征点对在水平方向和垂直方向平移量的距离,当|di-μ|>3σ时,认为该特征点对为误匹配特征点对,将其剔除,μ、σ分别为di的均值和标准差。
[0161] 如图2所示,根据实验统计,di近似服从正态分布,根据正态分布的“3σ准则”可知,在[μ-3σ,μ+3σ]区
间上的数据占总数据的99.7%(图2),因此认为当|di-μ|>3σ时,该特征点对为误匹配特征点对。
[0162] 步骤5:运动参数的获得步骤;
[0163] 该步骤中建立运动参数模型,将正确匹配的特征点对代入运动参数模型,整理得到运动参数矩阵方程,通过求解超定线性方程组的最小二乘解获得运动参数;
[0164] 步骤5的具体步骤如下:
[0165] 子步骤5a、建立描述参考帧特征点(xi,yi)和当前帧匹配特征点 间关系的运动参数模型: 其中,θ为图像旋转角度,u为像素垂直平移量,v为像素水平平移量,θ、u和v组成运动参数(即旋转、平移参数);
[0166] 子步骤5b、将步骤4验证得到的正确匹配的C对特征点对代入运动参数模型,整理得到运动参数矩阵方程:
[0167] 子步骤5c、求解超定线性方程B=Am,运动参数矩阵m的最小二乘解为m=T -1(AA) AB,从而得到运动参数。
[0168] 步骤6:运动滤波步骤;
[0169] 累积运动参数获得平移运动参数曲线,对平移运动参数曲线进行应平滑滤波,模拟出视觉上的运动平滑性,增强对突变状态的跟踪能力;
[0170] 步骤6的具体步骤如下:
[0171] 子步骤6a、令状态矢量S(k)=[u(k),v(k),du(k),dv(k)]T,观测矢量Z(k)=T[u(k),v(k)],其中,u(k)为k时刻的像素垂直平移量,v(k)为k时刻的像素水平平移量,du(k)为k时刻像素垂直平移量对应的瞬时速度,dv(k)为k时刻像素水平平移量对应的瞬时速度;
[0172] 子步骤6b、建立线性离散系统模型,得到状态方程和观测方程:
[0173] 状态方程为S(k)=F·S(k-1)+δ,
[0174] 观测方程为Z(k)=H·S(k)+η;
[0175] 其中, 是状态转移矩阵, 是观测矩阵,δ、η为相互独立的白噪声,δ~N(0,Φ),η~N(0,Γ),Φ为过程噪声的方差阵,Γ为观测噪声的方差阵;
[0176] 子步骤6c、建立系统状态预测方程,并对其协方差矩阵进行预测及更新,完成运动滤波:
[0177] 系统状态预测方程为:S(k|k-1)=F·S(k-1|k-1);
[0178] 对S(k|k-1)的 协 方 差 矩 阵 P(k|k-1)进 行 预 测:P(k|k-1)= F·P(k-1)TF+Φ(k-1),Φ为过程噪声的方差阵;
[0179] 系统状态更新方程为:S(k|k)=S(k|k-1)+Kg(k)·ε(K);
[0180] 更新k时刻状态下S(k|k)的滤波方差矩阵:P(k|k)=(Ψ-Kg(k)·H)·P(k|k-1),T T -1其 中,Kg(k) = P(k|k-1)·H(H·P(k|k-1)·H+Г(k)) 为 Kalman 增 益,ε(k) =Z(k)-H·S(k|k-1)为新息序列,Γ为观测噪声的方差阵,Ψ为同阶的单位阵。
[0181] 作为进一步的优选方案,本发明对前述Sage-Husa滤波过程进行改进,增加协方差矩阵P(k|k-1)的修正步骤,通过实时估计和修正过程噪声和观测噪声的统计特性,对平移运动参数曲线进行自适应平滑滤波,具体步骤如下:
[0182] 子步骤6d、利用新息序列ε(k)的性质来判断滤波是否发散:
[0183] ε(k)T·ε(k)≤γ·Trace[H·P(k|k-1)·HT+Γ(k)];
[0184] 其中,γ为可调系数且γ>1;
[0185] 子步骤6e、当子步骤6d中式子成立时,滤波器处于正常工作状态,直接得到当前状态的最优估计值;当前式不成立时,表明实际误差将超过理论估计值的γ倍,滤波将发散,此时通过加权系数C(k)对子步骤6c中的协方差矩阵P(k|k-1)进行修正,修正完毕后完成运动参数的自适应滤波;
[0186] 修正公式如下:
[0187] P(k|k-1)=C(k)·F·P(k-1)·FT+Φ(k),
[0188]
[0189] 步骤7、快速运动补偿步骤;
[0190] 根据补偿参数对当前帧fk(x,y)进行变换,结合图像线性存储结构,采用线性运算的加减,实现当前帧图像fk(x,y)的快速补偿;
[0191] 步骤7的具体步骤如下:
[0192] 子步骤7a、将滤波前、后平移运动分量之差ujitter=u-ufilter,vjitter=v-vfilter结合图像旋转角度θ,作为补偿参数 其中,u为像素垂直平移量,v为像素水平平移量,ujitter为滤波后的像素垂直平移量,vjitter为滤波后的像素水平平移量;
[0193] 子步骤7b、利用运动参数模型计算当前帧fk(x,y)首行首列像素[x,y]的旋转结果:
[0194] 子步骤7c、根据坐标线性结构进行加减运算,计算出当前帧fk(x,y)其余行列的像素,获得当前帧像素的新坐标[x′,y′],实现当前帧的补偿。
[0195] 步骤8、重建未定义的边界信息,获得全景图像步骤;
[0196] 根据步骤7利用补偿参数 对当前帧fk(x,y)像素点进行坐标变换后,以参考帧fk-1(x,y)作为初始全景图,利用图像拼接技术,对参考帧和当前帧进行融合,根据图像融和策略确定融合后图像的每个像素点(x′,y′)的灰度值,得到补偿图像f(x′,y′),实现全景图像输出:
[0197]
[0198] 上式中的τ、ξ表示权重值,代表该像素点相对位置与当前帧和参考帧重叠区域宽度的比例,即该像素点与边界点位置之差,且τ+ξ=1,0<τ,ξ<1,在重叠区域中,τ由1渐变至0,ξ由0渐变至1。由此实现了在重叠区域中由参考帧fk-1(x,y)慢慢平滑过渡到当前帧fk(x,y),使得融和得到的图像效果更加自然,不会影响整个视频的观察效果,提高视觉的完整性。
[0199] 本发明的效果可通过以下检测实验进行说明。
[0200] 根据人体视觉对运动的感知,人眼无法观察到单个像素点的差异,而是以整个区域的持续变化来判断运动。如图3a和图3b所示,图3a为标记了运动子块后的参考帧图像,图3b为标记了运动子块后的当前帧图像,图3a和图3b中“+”符号表示该子块为运动子块。
[0201] 对参考帧图像内运动子块的8邻域块进行空域相似性分析,若周围块存在不少于3个运动子块,说明该块和领域块相似,都属于前景运动区域;否则判定该块为背景中残差较大孤立块,予以删除,删除后保留的候选前景子块如图3c所示。
[0202] 再对参考帧图像内运动子块进行时域相似性分析:若在连续的当前帧内,类似的8领域位置出现运动子块,则判断为真实的运动;否则,应视为偶尔出现的误检,需要删除,最终保留的子块为检测的运动前景区域,如图3d所示。
[0203] 参照图4a至图4d,为全局显著特征点提取及特征点对匹配的过程图。
[0204] 图4a为参考帧图像分区提取的所有特征点,可以看出,特征点均匀分布在整幅图像中,部分特征点选在了运动目标上,另有大量特征点位于纹理重复的背景区域(如天空和地面),这两类特征点会造成误匹配,从而导致全局运动估计精度的降低。
[0205] 图4b为显著特征点提取结果图,保留了特征响应较大的前20%个特征点,提高特征点信息的独特性。
[0206] 图4c为去除误匹配特征点后的结果图,结合图3d的实验结果,判断特征点位置是否位于前景运动或周围不可靠区域内,若是则直接予以删除,而保留背景区域的全局显著特征点,从而利于特征点的正确匹配。
[0207] 图4d为当前帧图像中对应的配准的特征点结果图,特征点成功配准,且能够实时处理。
[0208] 参照图5a和5b,对前面描述中出现的图像线性快速补偿的原理进行说明如下:
[0209] 图像的线性存储结构保证了像素点间的相对位置具有旋转不变性。参照图5a和5b,图5a为图像旋转前像素点位置,图像定义在矩形域ABCD中,任意像素点E(x,y)和与其同列的第一行像素点E1(x1,y1)、与其同行的第一列像素点E2(x2,y2)、以及第一行的第一列像素点A(xA,yA)在几何上是矩形的四顶点关系。在任意坐标系中,矩形的一个顶点坐标E(x,y)可以由其它三个顶点坐标确定:
[0210]
[0211] 旋转变换是线性变换,矩形的形状并不因旋转而发生变化。图5b为图像旋转后像素点位置,图像旋转后,矩形的四个顶点为A′(x′A,y′A)、E1′(x1′,y1′)、E2′(x2′,y2′)、E′(x′,y′),其坐标关系仍满足关系式:
[0212]
[0213] 因此,利用图像首行和首列的像素点的旋转结果就可以计算出其它所有像素点的旋转结果。
[0214] 具体步骤为:对第一行和第一列的像素点通过相似变化模型作坐标变换,变化模型为 对其余行列的像素点可用以上公式进行加减 运算。这样避免了对整幅图像的每个像素点作矩阵乘法运算,从而有效地节省了运算时间,提高坐标计算的效率。
[0215] 参照图6a和图6b,以对水平和垂直偏移分量滤波为例,给出了其本发明方法优选方案自适应滤波和现有技术的Kalman滤波的对比结果图。由于水平方向上存在近匀速的摄像机扫描运动,因此图6a的实验曲线呈稳定上升状态;摄像机在垂直方向仅存在随机抖动,因此图6b的实验曲线在0位置波动。由该图可见,Kalman滤波中选择不同的过程噪声Q对补偿结果影响较大:当过程噪声Q值较大时,滤波曲线与原始曲线逼近,故无明显的滤波效果;当过程噪声Q值较小时,虽能得到平滑的滤波曲线,但由图6b观察52帧后原始抖动已经结束,而其滤波结果却偏离0矢量,从而造成滤波发散。而本发明自适应滤波法可有效避免这种滤波发散的现象,既能很好的平滑抖动分量,同时有效地跟踪摄像机的真实扫描运动。
[0216] 根据以上技术方案,本发明方法首先针对存在运动目标的运动场景环境下,提出全局显著特征点的检测和配准方法,提高全局运动估计的速度和精度;其次解决了摄像机跟踪扫描过程中出现抖动,改进Sage-Husa滤波以自适应地区分扫描和抖动,在平滑运动的同时跟踪真实扫描场景;最后避免了图像变换时逐点的矩阵乘法带来的费时运算,基于图像线性存储结构,提出线性运算从而实现快速补偿,且结合图像融合对补偿时丢失的边界进行重建,消除或者减轻视频序列的不稳定现象,改善了视频监控或者跟踪系统的观测效果。
[0217] 以上所述,仅是本发明的较佳实施例而已,并非对本发明做任何形式上的限制,虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容做出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。