一种基于颜色恒量和几何不变特征的视频稳像方法
技术领域
本发明属于图像处理技术领域,具体涉及一种基于颜色恒量和几何不变特征的视频稳像方法。
背景技术
由于摄像载体的震动,摄像机拍摄的视频会产生抖动。如摄像机固定在建筑物、交通工具上,安装在带电机的设备上,或是手持摄像设备,这些载体都存在震动,带动摄像机镜头,使得拍摄的视频画面产生抖动。在使用高倍镜头情况下,轻微的震动都会引起图像的剧烈抖动,造成视频不稳定和模糊,严重影响视频质量,使观察者产生视觉疲劳乃至误判,同时也给图像后处理带来困难。视频稳像就是通过技术处理,消除由摄像机抖动引起的视频图像异常,如平移、旋转、缩放等,使原来抖动视频变得平稳,提高图像序列的平滑度和稳定性,从而提高视频图像质量,也为图像后处理提供前提和基础。
稳像技术经历了机械稳像、光学稳像和电子稳像三个发展阶段,其中电子稳像是一种新兴技术,是现代稳像技术的主要发展方向。电子稳像技术采用数字图像处理算法设计直接确定图像序列之间的映射关系,通过计算机程序消除抖动,得到稳定图像序列。与前两种方法相比,电子稳像系统具有操作简单、精度高、灵活性强、体积小、重量轻、能耗低以及智能化、实时处理等优点,在工业、商业和军事等领域具有广阔的应用前景。
电子稳像主要包括运动估计和运动补偿两个过程,根据一定的算法对视频图像进行抖动运动矢量估计,再通过抖动运动矢量对其补偿获得稳定图像,因此,运动估计的结果将直接影响稳像的性能。已有很多文献提出各种帧间运动估计算法,主要有基于块匹配(如基于简易快速全局运动参数估计的实时视频稳像方法,专利号为CN201010179280)、灰度投影算法(如一种机载视频稳像方法,专利号为CN20121011222)、基于位平面匹配(如一种基于fpga平台的快速位平面电子稳像方法,专利号为CN201310076351)、基于光流(如文献:Chang J Y,Hu W F,Cheng M H,et al.Digital image translational and rotationalmotion stabilization using optical flow technique.Consumer Electronics,IEEETransactions on,2002)、相位相关法(如文献:Erturk S.Digital image stabilizationwith sub-image phase correlation based global motion estimation.ConsumerElectronics,IEEE Transactions on,2003)以及基于特征匹配的算法等。
最近的运动估计研究主要采用基于特征匹配的算法,因为这类算法具有平移、旋转、尺度不变性,性能更加高效、稳健,且能满足实时处理的要求。如文献(R.Hu,R.Shi,I.Shen,et al,"Video stabilization using scale-invariant features",InformationVisualization,2007.IV'07.11th Inter,2007)对灰度图像序列提取SIFT特征,进行摄像机运动估计,通过高斯核滤波和抛物线拟合进行摄像机抖动估计,实现了视频稳像;基于特征匹配的电子稳像方法(专利号为CN201110178881)采用Harris角点提取算法和RANSAC算法进行匹配,得到全局运动矢量和局部运动矢量,进而通过运动补偿实现稳像;文献(K.Huang,Y.Tsai,C.Tsai,et al,"Video stabilization for vehicular applicationsusing SURF-like descriptor and KD-tree",Image Processing(ICIP),201017th IEEEInternation,2010)对灰度图像序列提取了Harris角点,用SURF-like描述子表达特征,并用KD-tree进行特征匹配,进而通过运动估计和运动补偿实现了稳像;文献(Wang,Yue,etal."Real-Time Video Stabilization for Unmanned Aerial Vehicles."MVA,2011)对灰度图像序列提取了FAST角点并进行特征匹配,获取了运动矢量并进行运动补偿,实现了视频稳像。
然而,上述这些算法通常仅对灰度图像进行处理,通过提取灰度图像的几何不变特征点进行特征点匹配,但在视频质量较差,尤其在昏暗、光照条件差或其他复杂等摄像场景下摄取的图像比较模糊,不能提取足够数量的有效特征点,因而造成特征点匹配失误,进而造成运动估计失误,最终稳像往往会失败。
发明内容
针对现有技术所存在的上述技术问题,本发明提供了一种基于颜色恒量和几何不变特征的视频稳像方法,可以在彩色视频中提取更多有效的特征点,去除由于摄像机震动而产生的视频抖动,从而提供较稳定的视频图像,避免目前其他基于灰度图像的稳像算法因视频质量差而稳像失败的问题。
一种基于颜色恒量和几何不变特征的视频稳像方法,包括如下步骤:
(1)使视频图像从RGB模式转换为颜色恒量模式,得到对应的颜色恒量图像;
(2)根据所述的颜色恒量图像,建立视频图像的三层高斯金字塔图像;
(3)提取三层高斯金字塔图像每一层子图中的角点,且将其他两层子图中的角点映射到底层子图中,进而建立每一角点的FREAK描述子;
(4)根据步骤(1)至(3)遍历每帧视频图像,以得到每帧视频图像各角点的FREAK描述子;进而根据FREAK描述子对前后两帧视频图像进行角点匹配;
(5)根据前后两帧视频图像的角点匹配关系,利用MSAC(M-estimator SampleConsensus,M估计子抽样一致性)算法对前后两帧视频图像进行帧间运动估计,以求得前后两帧视频图像的仿射变换矩阵,并依此进行遍历;
(6)以第一帧视频图像作为参考帧Z1,根据以下算式对当前帧视频图像进行稳像处理:
其中:Zk表示当前帧视频图像,Z'k表示当前帧视频图像Zk稳像处理后的输出图像,k表示当前帧视频图像的帧序号,Tp,p-1表示第p帧视频图像Zp与第p-1帧视频图像Zp-1的仿射变换矩阵。
所述的步骤(1)中使视频图像从RGB模式转换为颜色恒量模式的具体方法如下:
A1.对于视频图像中的任一像素点,根据以下算式计算该像素点的光谱分量EA、EB和EC:
其中:R、G和B分别对应像素点在红色、绿色和蓝色通道上的亮度值;
A2.根据光谱分量EA、EB和EC通过以下算式计算像素点的颜色恒量值ICI:
其中:和分别对应E1、E2和E3归一化后的值,α、β和γ分别为预设的权重系数;
A3.根据步骤A1~A2遍历视频图像中的每一像素点,得到视频图像对应的颜色恒量图像。
所述的步骤(2)中建立视频图像的三层高斯金字塔图像的具体方法如下:
B1.使颜色恒量图像作为三层高斯金字塔图像的底层子图P0;
B2.根据以下算式确定三层高斯金字塔图像的第1层子图P1和第2层子图P2,其中上层子图的行列数均为下层子图行列数的一半;
其中:Pl(i,j)为第l层子图Pl中第i行第j列像素点的颜色恒量值,Pl-1(2i+m-2,2j+n-2)为第l-1层子图Pl-1中第2i+m-2行第2j+n-2列像素点的颜色恒量值,W(m,n)为高斯低通滤波算子W中第m行第n列元素的元素值,l=1或2,i和j分别为第k层子图Pk的行列序号,m和n均为自然数且0≤m≤4,0≤n≤4;所述的高斯低通滤波算子W的表达形式如下:
所述的步骤(3)中采用FAST-9检测算法提取三层高斯金字塔图像每一层子图中的角点。
优选地,为了减少非稳健角点,降低运算量和运算时间,避免由此带来的匹配误差,所述的步骤(3)中,将其他两层子图中的角点映射到底层子图后,对角点进行非最大值抑制以剔除重复角点,具体过程如下:对于底层子图中任一3*3的像素区域,若该像素区域存在不止一个角点,则根据以下算式计算区域中每个角点与周围像素点颜色恒量值的差和ρ,保留其中差和ρ最大的角点并剔除其他角点;
其中:I为当前角点的颜色恒量值,I(x)为当前角点周围8个像素点中第x个像素点的颜色恒量值。
所述的步骤(4)中对前后两帧视频图像进行角点匹配的具体方法如下:
C1.对于当前帧视频图像的任一角点,根据FREAK描述子计算该角点与前一帧视频图像各角点的汉明距;
C2.提取前一帧视频图像中与该角点汉明距最小的角点Jmin,若该最小汉明距小于预设的距离阈值,则使该角点与角点Jmin匹配且该被匹配的角点Jmin不再与接下去的任何角点做匹配;否则,则表明该角点匹配失败;
C3.根据步骤C1~C2,遍历当前帧视频图像的所有角点。
本发明在色彩模式转换的基础上,建立了基于颜色恒量模式下的多尺度空间,提取了基于颜色恒量和几何多尺度局部不变的特征点,对视频图像序列进行特征点匹配和抖动运动估计,然后计算相邻帧图像的仿射变换矩阵,当前帧相对于参考帧图像的变形通过累积仿射变换矩阵进行转换,实现运动补偿,最终实现视频稳像。
与现有技术相比,本发明具有以下有益技术效果:
(1)本发明将视频图像转换为颜色恒量图像,该技术可以避免目前其他基于特征的视频稳像技术仅提取灰度图像的几何不变特征,不考虑图像的颜色特征,而不能提取足够数量的有效特征点,造成稳像失败的问题。
(2)本发明通过建立高斯金字塔多尺度颜色恒量空间,提取高斯金字塔不同尺度下各子图的特征点并映射到底层图像,可以比较充分的提取色彩和几何多尺度局部不变特征点,从而得到更多精确、可靠的特征点,该技术可以避免目前其他基于特征的视频稳像技术,由于视频光照条件差、图像模糊、图像对比度小等,而不能提取足够数量的有效特征点,造成稳像失败的问题。
附图说明
图1为本发明方法的流程示意图。
图2(a)为采用现有技术稳像处理后的图像。
图2(b)为采用本发明稳像处理后的图像。
具体实施方式
为了更为具体地描述本发明,下面结合附图及具体实施方式对本发明的技术方案进行详细说明。
如图1所示,一种基于颜色恒量和几何不变特征的视频稳像方法,包括以下步骤:
(1)获取视频的第1帧图像作为稳像处理的参考帧图像。
(2)色彩模式转换。历遍RGB图像的每个像素点,将图像所有像素点从RGB值转化为颜色恒量值,并进行归一化,获得颜色恒量图像ICI。计算过程如下:
采用高斯色彩模型,通过下面的公式计算RGB图像的每个像素点的光谱分量(EA,EB,EC)。
将当前处理帧图像从RGB模式转换为颜色恒量模式,提取不同类型的颜色恒量(E1,E2,E3),并归一化处理后线性组合成一个颜色恒量ICI,计算公式如下:
其中:和分别对应E1、E2和E3归一化后的值,α、β和γ分别为预设的权重系数;
本过程中不需要进行图像预处理。
(3)多尺度空间构建。在颜色恒量模式下,对当前处理帧图像进行平滑和连续降采样,获取3层高斯金字塔图像。高斯金字塔可表示为:
P(x,y,σ)=G(x,y,σ)*ICI(x,y)。
其中:*为卷积操作,为高斯函数。高斯金字塔图像P可通过下式获取:
其中:Pl(i,j)为第l层子图Pl中第i行第j列像素点的颜色恒量值,Pl-1(2i+m-2,2j+n-2)为第l-1层子图Pl-1中第2i+m-2行第2j+n-2列像素点的颜色恒量值,l=1或2,i和j分别为第k层子图Pk的行列序号,m和n均为自然数且0≤m≤4,0≤n≤4;W(m,n)为高斯低通滤波算子W中第m行第n列元素的元素值,高斯低通滤波算子W为5*5大小的矩阵:
(4)特征点提取。在当前处理帧高斯金字塔图像的每一层子图中提取FAST-9检测算法提取角点,即:对子图中的任意一点p为圆心,以半径为3,建立16像素模板,如果有连续9个或以上点的像素值大于或小于点p且差值大于设定阈值,则认为p是一个特征点;并将1层和2层子图提取的角点坐标映射到底层。对检测出的角点进行非最大值抑制,并从重复角点中选择所期望的最佳角点,即选择与周围邻域像素点的颜色恒量差之和最大的角点p,
p=arg max(∑X∈J|I(x)-I(p)|)
其中,J为角点p周围8个像素点的集合,对3*3邻域内所有角点按上式计算,保留与周围邻域像素点的颜色恒量差之和最大的点作为最终角点,将邻域内其他角点删除,得到最终角点集。
(5)在颜色恒量模式下,对提取的FAST角点建立FREAK描述子,即在颜色恒量模式高斯金字塔底层子图中的特征点形成512维度的特征描述子,并保存。FREAK描述子构建过程如下:
根据角点位置选择512个点对,分4组,每组128个,进行二元测试,获得特征点亮度特征F:
F=∑0≤a≤N2aT(Pa)。
其中,Pa是点对中的一个点;N=511,为特征维数;
其中,为点对Pa中一个点的像素值。
(6)获取视频下一帧图像,转到步骤(2)。
(7)角点匹配。对前一帧图像与当前帧图像的角点描述子,使用汉明距(Hammingdistance)判别描述子之间的相关度(XOR运算),利用最近邻法进行角点匹配;具体实现如下:
7.1对于当前帧视频图像的任一角点,根据FREAK描述子计算该角点与前一帧视频图像各角点的汉明距;
7.2提取前一帧视频图像中与该角点汉明距最小的角点Jmin,若该最小汉明距小于预设的距离阈值(本实施方式中距离阈值设定为51),则使该角点与角点Jmin匹配且该被匹配的角点Jmin不再与接下去的任何角点做匹配;否则,则表明该角点匹配失败;
7.3根据步骤7.1~7.2,遍历当前帧视频图像的所有角点。
(8)帧间运动估计。当前帧图像Ii与前一帧图像Ii-1的映射关系可以用下式表示:
其中,Ti为当前帧图像Ii相对于前一帧图像Ii-1的仿射变换矩阵,si为尺度变化量,θi为旋转角度,txi、tyi为平移变化量。通过MSAC算法去除奇异值点,对当前帧图像与前一帧图像进行运动估计,计算仿射变换矩阵Ti。MSAC计算过程如下:设有n个特征点,dn为前帧图像中每个特征点到前一帧图像特征点的距离,令E=Ti(dn 2),进行求和,当dn 2<Th时,Ti(dn 2)=dn 2;否则Ti(dn 2)=Th2,计算使得E最小的Ti,在每次迭代中阈值Th以选择95%内点(inliers)为准。经过数次迭代直至E不再明显变化为止,确定剩下的数据点都在内点范围内,最后得到仿射变换矩阵Ti。
(9)运动补偿。当前帧图像相对于参考帧(即第一帧)图像的累积变形可以通过下式进行转换:
其中:Zk表示当前帧视频图像,Z'k表示当前帧视频图像Zk稳像处理后的输出图像,k表示当前帧视频图像的帧序号,Tp,p-1表示第p帧视频图像Zp与第p-1帧视频图像Zp-1的仿射变换矩阵。
输出当前帧稳像图像Z'k后,判断是否视频结束,否则转到步骤(6)。
以下我们选择640×480像素点大小的视频图像进行稳像处理。首先利用现有方法将视频图像灰度化后,直接对灰度图像进行FAST角点提取、匹配,然后进行帧间运动估计和运动补偿,由于提取的有效角点数量很少,造成特征点匹配误差大甚至匹配失败,帧间运动估计误差大或失败,稳像处理效果差,其2~11帧稳像图像累加如图2(a)所示;采用本实施方式对同样的视频图像进行稳像处理,2~11帧稳像图像累加如图2(b)所示,通过两幅图的对比可以看出采用本实施方式稳像处理后的图像效果更好,有效消除了由于摄像机震动而产生的视频抖动。