CN104144283A - 一种基于改进的卡尔曼滤波的实时数字视频稳像方法 - Google Patents

一种基于改进的卡尔曼滤波的实时数字视频稳像方法 Download PDF

Info

Publication number
CN104144283A
CN104144283A CN201410389926.4A CN201410389926A CN104144283A CN 104144283 A CN104144283 A CN 104144283A CN 201410389926 A CN201410389926 A CN 201410389926A CN 104144283 A CN104144283 A CN 104144283A
Authority
CN
China
Prior art keywords
motion
value
frame
image
mad
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201410389926.4A
Other languages
English (en)
Other versions
CN104144283B (zh
Inventor
宋继飞
马晓红
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dalian University of Technology
Original Assignee
Dalian University of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dalian University of Technology filed Critical Dalian University of Technology
Priority to CN201410389926.4A priority Critical patent/CN104144283B/zh
Publication of CN104144283A publication Critical patent/CN104144283A/zh
Application granted granted Critical
Publication of CN104144283B publication Critical patent/CN104144283B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Studio Devices (AREA)
  • Image Analysis (AREA)

Abstract

本发明涉及一种数字视频稳像方法,一种基于改进的卡尔曼滤波的实时数字视频稳像方法,包括以下步骤:步骤1、建立帧间运动模型,步骤2、对图像进行分块,步骤3、改进的菱形快速块匹配,步骤4、基于最小二乘的全局运动估计,步骤5、利用改进的卡尔曼滤波器对图像序列进行补偿,步骤6、对含抖动的图像序列进行补偿;本发明对传统的菱形搜索进行了优化,在达到同样或是较好的估计效果的条件下,能减少块匹配算法的运行时间;在运动补偿方面,也能很好的去除抖动分量、很好地保留追拍分量。

Description

一种基于改进的卡尔曼滤波的实时数字视频稳像方法
技术领域
本发明涉及一种数字视频稳像方法,更具体地说,涉及一种基于改进的卡尔曼滤波的实时数字视频稳像方法。
背景技术
数字稳像技术(Digital Image Stabilization,DIS)是图像处理领域中一项新技术,它能将抖动的视频序列中的抖动分量很好地滤除,同时能将有意的追拍分量进行保留。它的这些特点使其在视频监控、手持和机载摄像、遥感领域有着重要的应用价值。在当前的研究背景下,提出一种有效、鲁棒性强的算法,也是本专利的主旨所在。
典型的数字稳像***包括运动估计单元和运动补偿单元。运动估计单元中,传统的运动估计算法包括块匹配法、位平面匹配法、灰度投影法、特征点匹配等算法。其中,菱形快速搜索算法因具有快速性和较优异的性能而得到了广泛的应用。但传统意义上的菱形搜索算法的性能还有待进一步优化;运动补偿单元中,常用的补偿算法包括卡尔曼滤波器、比例积分差分控制器(Proportional IntegralDifferential,PID)、运动矢量累加(Motion Vector Integration,MVI)、低通滤波器和帧间位置平滑(Frame Position Smooth,FPS)等方法。然而,FPS方法需要消耗大量的时间来重构相机长时间的运动情况,因此不满足实时稳像的要求;MVI等方法可以很好地对帧间抖动进行平滑,但会对追拍分量造成损失,同时有较明显的时滞现象;传统的卡尔曼滤波器方法和PID方法会对追拍分量有一定的保留,但仍然有明显的丢边现象存在,同时对抖动的平滑效果不如MVI性能好。因此,传统卡尔曼滤波器很难做到在平滑抖动分量的同时,对主观的追拍分量进行很好地保留。
发明内容
为了克服现有技术中存在的不足,本发明目的是基于Similarity运动模型,在传统的菱形搜索块匹配算法的基础上,提供一种基于改进的卡尔曼滤波的实时数字视频稳像方法。该方法对传统的菱形搜索算法和卡尔曼滤波器进行了改进,即便是有高速的主观追拍运动存在时,该方法依然能很好地保留追拍分量,同时取得较好的平滑效果,对丢边现象的抑制明显优于其他补偿算法。
为了实现上述发明目的,解决现有技术中所存在的问题,本发明采取的技术方案是:一种基于改进的卡尔曼滤波的实时数字视频稳像方法,包括以下步骤:
步骤1:建立帧间运动模型:选用Similarity运动模型对图像序列的运动进行描述,以反映图像序列帧间的平移、绕光轴旋转和变焦运动,其运动模型为:
x ′ y ′ = s cos θ sin θ - sin cos θ x y + d x d y - - - ( 1 )
其中,(x,y)和(x',y')分别表示每个像素点在参考帧和当前帧的坐标,s代表摄像机的变焦系数,θ代表帧间图像的旋转角度,dx、dy分别代表水平和垂直方向的偏移量;对于安防监控或手持成像小幅抖动的情况下,图像序列帧间的偏转角θ很小,认为cosθ≈1,sinθ≈θ;同时,变焦系数s保持不变,设为1,这样,(1)式的简化模型为:
x ′ y ′ = s 1 θ - θ 1 x y + d x d y - - - ( 2 )
步骤2:对图像进行分块:将图像分成一系列8×8的图像块,图像块应选在具有明显图像特征且不为运动前景目标的区域;
步骤3:改进的菱形快速块匹配:按照绝对平均误差函数(Mean AbsoluteDifference,MAD)准则进行匹配;选取以当前帧选定子块为中心的8×8个像素点,进行对应上一帧的相同位置和周围8个方向的搜索,使用菱形搜索算法大模板,搜索的单位步长为2,具体包括以下子步骤(a)、(b)及(c);
步骤(a):若匹配后,最小位置为9个位置中的中心位置,则执行步骤(c),否则,最小位置为***的8个位置,则执行步骤(b);
步骤(b):记录当前最小位置的MAD值,记为MAD0,并沿着该最小位置的方向再进行一次匹配,得到新的MAD值,记为MAD1,若MAD1小于MAD0,则循环执行步骤(b),若MAD1大于或等于MAD0,则跳转到步骤3;
步骤(c):匹配后,最小位置为9个位置中的中心位置,则以步骤(a)得到的最小MAD值的位置为初始位置,进行对应上一帧的相同位置和周围4个方向的搜索,使用菱形搜索算法小模板,得到当前的最小MAD值即为最佳匹配位置:
MAD ( i , j ) = 1 64 Σ m = 1 8 Σ n = 1 8 | f k ( m , n ) - f k - 1 ( m + i , n + j ) | - - - ( 3 )
步骤4:基于最小二乘的全局运动估计:对式(1)进行整理,得到的矩阵方程:
x - y 1 0 y x 0 1 s cos θ s sin θ d x d y = x ′ y ′ - - - ( 4 )
根据每个8×8的图像块得到的运动矢量及匹配点对,利用随机采样一致性(Random Sample Consensus,RANSAC)剔除错误的匹配点对,并利用保留下来的正确值以及式(4)对参数s,θ,dx,dy进行最小二乘估计;利用最小二乘估计思想估计出的全局运动参数,即得到了当前帧相对于上一帧的全局运动向量,即GMV=[GMVs,GMVθ,GMVx,GMVy]=[s,θ,dx,dy];
步骤5:利用改进的卡尔曼滤波器对图像序列进行补偿,具体包括子步骤(a)、(b)、(c)、(d)、(e)及(f);
步骤(a):根据状态空间理论对稳像***进行建模,***的状态方程和观测方程分别为:
x ( k + 1 ) = Φx ( k ) + Γu ( k ) + v ( k ) y ( k + 1 ) = Hx ( k ) + w ( k ) - - - ( 5 )
其中,Φ、Γ和H分别为传递矩阵、输入矩阵和观测矩阵;x(k)、y(k)和u(k)分别为状态向量、观测向量和控制向量,而v(k)和w(k)代表噪声向量;为了简化起见,采用具有两个状态和单观测的线性***进行建模,其中Φ,Γ和H的取值如下:
Φ = 1 1 0 1 , Γ = 1 0 0 1 , H = 1 0 - - - ( 6 )
步骤(b):用PGMV表示全局运动矢量GMV的累加量,PGMV(k-1)表示GMV从第1帧到第k帧的累加值,将PGMV的各个分量分别送入一维的卡尔曼滤波器中进行滤波,则得到:
JMV s ( k - 1 ) = CMV s ( k - 1 ) = PGMV s ( k - 1 ) - Ko s ( k - 1 ) JMV θ ( k - 1 ) = CMV θ ( k - 1 ) = PGMV θ ( k - 1 ) - Ko θ ( k - 1 ) JMV x ( k - 1 ) = CMV x ( k - 1 ) = PGMV x ( k - 1 ) - Ko x ( k - 1 ) JMV y ( k - 1 ) = CMV y ( k - 1 ) = PGMV y ( k - 1 ) - Ko y ( k - 1 ) - - - ( 7 )
其中,Ko(k-1)=[Kos(k-1),Koθ(k-1),Kox(k-1),Koy(k-1)]表示四个卡尔曼滤波器在第k-1时刻的输出,PGMV(k-1)和Ko(k-1)两个矢量之间的差表示第k-1帧的运动补偿矢量,CMV(k-1)=[CMVs(k-1),CMVθ(k-1),CMVx(k-1),CMVy(k-1)]第k-1帧的抖动运动矢量用JMV(k-1)=[JMVs(k-1),JMVθ(k-1),JMVx(k-1),JMVy(k-1)]表示,其在数值上与第k-1帧的运动补偿矢量CMV(k-1)相等;
步骤(c):根据卡尔曼滤波器理论对状态进行预测;
x ^ ( k + 1 | k ) = Φ x ^ ( k | k ) + Γu ( k ) P ( k + 1 | k ) = ΦP ( k ) Φ T + R 1 - - - ( 8 )
其中,是根据k时刻对k+1时刻的估值,而P(k)为协方差矩阵,P(k+1|k)是其根据当前时刻对下一时刻的估值,另外,噪声信号v(k)和w(k)认为是不相关的,R1为噪声信号v(k)的方差;
步骤(d):引入场景识别参数,λ=[λsθxy],来识别当前场景为追拍运动或是抖动运动,λ值由下式确定:
λ x = | max ( Σ i = k - L k - 1 JMV x ( i ) ) + min ( Σ i = k - L k - 1 JMV x ( i ) ) | 2 λ y = | max ( Σ i = k - L k - 1 JMV y ( i ) ) + min ( Σ i = k - L k - 1 JMV y ( i ) ) | 2 λ θ = | max ( Σ i = k - L k - 1 JMV θ ( i ) ) + min ( Σ i = k - L k - 1 JMV θ ( i ) ) | 2 - - - ( 9 )
其中,L表示选取一定时间段内JMV的窗长,当某一个参量方向上存在追拍运动时,参数λ在这个方向上的数值大,反之,λ将是一个接近于0的很小值;
步骤(e):根据λ的值确定第k帧观测噪声方差R(k)的值:
R s ( k ) = f ( λ s ) R θ ( k ) = f ( λ θ ) R x ( k ) = f ( λ x ) R y ( k ) = f ( λ y ) - - - ( 10 )
其中f(·)为非线性函数,而且随着λ的增大而递减,这里给出一个参考的非线性函数,参考函数中,参量kp的经验值取100;
R s ( k ) = f ( λ s ) = k p λ s 2 R θ ( k ) = f ( λ θ ) = k p λ θ 2 R x ( k ) = f ( λ x ) = k p λ x 2 R y ( k ) = f ( λ y ) = k p λ y 2 - - - ( 11 )
当某一个参数方向存在追拍时,由参量确定的R(k)会很小,因而能很好的发挥卡尔曼滤波器的跟踪特性;反之,当前只存在随机抖动,R(k)的值很大,能很好的发挥卡尔曼滤波器的平滑作用;
步骤(f):利用改进的卡尔曼滤波器和步骤(e)确定的观测噪声方差R(k),对状态进行更新:
K ( k ) = P ( k | k - 1 ) C T ( H ( k ) P ( k | k - 1 ) H ( k ) T + R ( k ) ) - 1 x ^ ( k | k ) = x ^ ( k | k - 1 ) + K ( k ) ( y ( k ) - C x ^ ( k | k - 1 ) ) P ( k + 1 ) = ( 1 - K ( k ) C ( k ) ) P ( k + 1 | k ) - - - ( 12 )
这里,R(k)为标量而非矢量,这是由于采用***模型是单观测的,若采用多观测的***模型,则应用R(k)来表示观测噪声的协方差矩阵;
步骤6:对含抖动的图像序列进行补偿:将运动补偿得到的运动补偿向量的各个参量,CMV=[s',θ',d'x,d'y]以及原图像的像素位置代入下式,进行补偿:
x ′ y ′ = s ′ cos θ ′ - sin θ ′ sin θ ′ cos θ ′ x y + d x ′ d y ′ - - - ( 13 )
并将像素赋给新的坐标位置(x',y'),即完成了稳像;如果采取简化后的模型,应用下式进行补偿:
x ′ y ′ = 1 - θ ′ θ ′ 1 x y + d x ′ d y ′ - - - ( 14 )
本发明有益效果是:一种基于改进的卡尔曼滤波的实时数字视频稳像方法,包括以下步骤:步骤1、建立帧间运动模型,步骤2、对图像进行分块,步骤3、改进的菱形快速块匹配,步骤4、基于最小二乘的全局运动估计,步骤5、利用改进的卡尔曼滤波器对图像序列进行补偿,步骤6、对含抖动的图像序列进行补偿;与已有技术相比,本发明对传统的菱形搜索进行了优化,在达到同样或是较好的估计效果的条件下,能减少块匹配算法的运行时间;在运动补偿方面,也能很好的去除抖动分量、很好地保留追拍分量。
附图说明
图1是改进的菱形搜索(大模板)的示意图。
图2是菱形搜索(小模板)的示意图。
图3是基于优化的菱形搜索和改进的卡尔曼滤波的实时数字视频稳像方法的***框图。
图4是原始视频(A)参考帧图像图。
图5是原始视频(A)当前帧图像图。
图6是用传统菱形搜索算法处理后图像图。
图7是用本发明方法改进的菱形搜索算法处理后图像图。
图8是原始视频(B)参考帧图像图。
图9是原始视频(B)当前帧图像。
图10是用本发明方法处理后图像图。
图11是原始视频(C)的连续图像序列图。
图12是用本发明方法改进的卡尔曼滤波器处理后连续图像序列图。
图13是用传统的卡尔曼滤波器处理后的连续图像序列图。
图14是利用PID、MVI、传统的卡尔曼滤波器和本方法存在追拍时的补偿效果对比图。
具体实施方式
下面结合附图对本发明作进一步说明。
一种基于改进的卡尔曼滤波的实时数字视频稳像方法,包括以下步骤:
步骤1:建立帧间运动模型:选用Similarity运动模型对图像序列的运动进行描述,以反映图像序列帧间的平移、绕光轴旋转和变焦运动,其运动模型为:
x ′ y ′ = s cos θ sin θ - sin θ cos θ x y + d x d y - - - ( 15 )
其中,(x,y)和(x',y')分别表示每个像素点在参考帧和当前帧的坐标,s代表摄像机的变焦系数,θ代表帧间图像的旋转角度,dx、dy分别代表水平和垂直方向的偏移量;对于安防监控或手持成像小幅抖动的情况下,图像序列帧间的偏转角θ很小,认为cosθ≈1,sinθ≈θ;同时,变焦系数s保持不变,设为1,这样,(1)式的简化模型为:
x ′ y ′ = s 1 θ - θ 1 x y + d x d y - - - ( 16 )
步骤2:对图像进行分块:将图像分成一系列8×8的图像块,图像块应选在具有明显图像特征且不为运动前景目标的区域;
步骤3:改进的菱形快速块匹配:按照绝对平均误差函数(Mean AbsoluteDifference,MAD)准则进行匹配;选取以当前帧选定子块为中心的8×8个像素点,进行对应上一帧的相同位置和周围8个方向的搜索,使用菱形搜索算法大模板,搜索的单位步长为2,具体包括以下子步骤(a)、(b)及(c);
步骤(a):若匹配后,最小位置为9个位置中的中心位置,则执行步骤(c),否则,最小位置为***的8个位置,则执行步骤(b);
步骤(b):记录当前最小位置的MAD值,记为MAD0,并沿着该最小位置的方向再进行一次匹配,得到新的MAD值,记为MAD1,若MAD1小于MAD0,则循环执行步骤(b),若MAD1大于或等于MAD0,则跳转到步骤3;
步骤(c):匹配后,最小位置为9个位置中的中心位置,则以步骤(a)得到的最小MAD值的位置为初始位置,进行对应上一帧的相同位置和周围4个方向的搜索,使用菱形搜索算法小模板,得到当前的最小MAD值即为最佳匹配位置:
MAD ( i , j ) = 1 64 Σ m = 1 8 Σ n = 1 8 | f k ( m , n ) - f k - 1 ( m + i , n + j ) | - - - ( 17 )
步骤4:基于最小二乘的全局运动估计:对式(1)进行整理,得到的矩阵方程:
x - y 1 0 y x 0 1 s cos θ s sin θ d x d y = x ′ y ′ - - - ( 18 )
根据每个8×8的图像块得到的运动矢量及匹配点对,利用随机采样一致性(Random Sample Consensus,RANSAC)剔除错误的匹配点对,并利用保留下来的正确值以及式(4)对参数s,θ,dx,dy进行最小二乘估计;利用最小二乘估计思想估计出的全局运动参数,即得到了当前帧相对于上一帧的全局运动向量,即GMV=[GMVs,GMVθ,GMVx,GMVy]=[s,θ,dx,dy];
步骤5:利用改进的卡尔曼滤波器对图像序列进行补偿,具体包括子步骤(a)、(b)、(c)、(d)、(e)及(f);
步骤(a):根据状态空间理论对稳像***进行建模,***的状态方程和观测方程分别为:
x ( k + 1 ) = Φx ( k ) + Γu ( k ) + v ( k ) y ( k + 1 ) = Hx ( k ) + w ( k ) - - - ( 19 )
其中,Φ、Γ和H分别为传递矩阵、输入矩阵和观测矩阵;x(k)、y(k)和u(k)分别为状态向量、观测向量和控制向量,而v(k)和w(k)代表噪声向量;为了简化起见,采用具有两个状态和单观测的线性***进行建模,其中Φ,Γ和H的取值如下:
Φ = 1 1 0 1 , Γ = 1 0 0 1 , H = 1 0 - - - ( 20 )
步骤(b):用PGMV表示全局运动矢量GMV的累加量,PGMV(k-1)表示GMV从第1帧到第k帧的累加值,将PGMV的各个分量分别送入一维的卡尔曼滤波器中进行滤波,则得到:
JMV s ( k - 1 ) = CMV s ( k - 1 ) = PGMV s ( k - 1 ) - Ko s ( k - 1 ) JMV θ ( k - 1 ) = CMV θ ( k - 1 ) = PGMV θ ( k - 1 ) - Ko θ ( k - 1 ) JMV x ( k - 1 ) = CMV x ( k - 1 ) = PGMV x ( k - 1 ) - Ko x ( k - 1 ) JMV y ( k - 1 ) = CMV y ( k - 1 ) = PGMV y ( k - 1 ) - Ko y ( k - 1 ) - - - ( 21 )
其中,Ko(k-1)=[Kos(k-1),Koθ(k-1),Kox(k-1),Koy(k-1)]表示四个卡尔曼滤波器在第k-1时刻的输出,PGMV(k-1)和Ko(k-1)两个矢量之间的差表示第k-1帧的运动补偿矢量,CMV(k-1)=[CMVs(k-1),CMVθ(k-1),CMVx(k-1),CMVy(k-1)]第k-1帧的抖动运动矢量用JMV(k-1)=[JMVs(k-1),JMVθ(k-1),JMVx(k-1),JMVy(k-1)]表示,其在数值上与第k-1帧的运动补偿矢量CMV(k-1)相等;
步骤(c):根据卡尔曼滤波器理论对状态进行预测;
x ^ ( k + 1 | k ) = Φ x ^ ( k | k ) + Γu ( k ) P ( k + 1 | k ) = ΦP ( k ) Φ T + R 1 - - - ( 22 )
其中,是根据k时刻对k+1时刻的估值,而P(k)为协方差矩阵,P(k+1|k)是其根据当前时刻对下一时刻的估值,另外,噪声信号v(k)和w(k)认为是不相关的,R1为噪声信号v(k)的方差;
步骤(d):引入场景识别参数,λ=[λsθxy],来识别当前场景为追拍运动或是抖动运动,λ值由下式确定:
λ x = | max ( Σ i = k - L k - 1 JMV x ( i ) ) + min ( Σ i = k - L k - 1 JMV x ( i ) ) | 2 λ y = | max ( Σ i = k - L k - 1 JMV y ( i ) ) + min ( Σ i = k - L k - 1 JMV y ( i ) ) | 2 λ θ = | max ( Σ i = k - L k - 1 JMV θ ( i ) ) + min ( Σ i = k - L k - 1 JMV θ ( i ) ) | 2 - - - ( 23 )
其中,L表示选取一定时间段内JMV的窗长,当某一个参量方向上存在追拍运动时,参数λ在这个方向上的数值大,反之,λ将是一个接近于0的很小值;
步骤(e):根据λ的值确定第k帧观测噪声方差R(k)的值:
R s ( k ) = f ( λ s ) R θ ( k ) = f ( λ θ ) R x ( k ) = f ( λ x ) R y ( k ) = f ( λ y ) - - - ( 24 )
其中f(·)为非线性函数,而且随着λ的增大而递减,这里给出一个参考的非线性函数,参考函数中,参量kp的经验值取100;
R s ( k ) = f ( λ s ) = k p λ s 2 R θ ( k ) = f ( λ θ ) = k p λ θ 2 R x ( k ) = f ( λ x ) = k p λ x 2 R y ( k ) = f ( λ y ) = k p λ y 2 - - - ( 25 )
当某一个参数方向存在追拍时,由参量确定的R(k)会很小,因而能很好的发挥卡尔曼滤波器的跟踪特性;反之,当前只存在随机抖动,R(k)的值很大,能很好的发挥卡尔曼滤波器的平滑作用;
步骤(f):利用改进的卡尔曼滤波器和步骤(e)确定的观测噪声方差R(k),对状态进行更新:
K ( k ) = P ( k | k - 1 ) C T ( H ( k ) P ( k | k - 1 ) H ( k ) T + R ( k ) ) - 1 x ^ ( k | k ) = x ^ ( k | k - 1 ) + K ( k ) ( y ( k ) - C x ^ ( k | k - 1 ) ) P ( k + 1 ) = ( 1 - K ( k ) C ( k ) ) P ( k + 1 | k ) - - - ( 26 )
这里,R(k)为标量而非矢量,这是由于采用***模型是单观测的,若采用多观测的***模型,则应用R(k)来表示观测噪声的协方差矩阵;
步骤6:对含抖动的图像序列进行补偿:将运动补偿得到的运动补偿向量的各个参量,CMV=[s',θ',d'x,d'y]以及原图像的像素位置代入下式,进行补偿:
x ′ y ′ = s ′ cos θ ′ - sin θ ′ sin θ ′ cos θ ′ x y + d x ′ d y ′ - - - ( 27 )
并将像素赋给新的坐标位置(x',y'),即完成了稳像;如果采取简化后的模型,应用下式进行补偿:
x ′ y ′ = 1 - θ ′ θ ′ 1 x y + d x ′ d y ′ - - - ( 28 )
表1是本发明提出的实时数字视频稳像方法处理不同分辨率视频的耗时(每帧取36个图像块)。
本发明优点在于:即便是有高速的主观追拍运动存在时,该方法依然能很好地保留追拍分量,同时取得较好的平滑效果,对丢边现象的抑制明显优于其他补偿算法。

Claims (1)

1.一种基于改进的卡尔曼滤波的实时数字视频稳像方法,其特征在于包括以下步骤: 
步骤1:建立帧间运动模型:选用Similarity运动模型对图像序列的运动进行描述,以反映图像序列帧间的平移、绕光轴旋转和变焦运动,其运动模型为 
其中,(x,y)和(x',y')分别表示每个像素点在参考帧和当前帧的坐标,s代表摄像机的变焦系数,θ代表帧间图像的旋转角度,dx、dy分别代表水平和垂直方向的偏移量;对于安防监控或手持成像小幅抖动的情况下,图像序列帧间的偏转角θ很小,认为cosθ≈1,sinθ≈θ;同时,变焦系数s保持不变,设为1,这样,(1)式的简化模型为: 
步骤2:对图像进行分块:将图像分成一系列8×8的图像块,图像块应选在具有明显图像特征且不为运动前景目标的区域; 
步骤3:改进的菱形快速块匹配:按照绝对平均误差函数(Mean Absolute Difference,MAD)准则进行匹配;选取以当前帧选定子块为中心的8×8个像素点,进行对应上一帧的相同位置和周围8个方向的搜索,使用菱形搜索算法大模板,搜索的单位步长为2,具体包括以下子步骤(a)、(b)及(c); 
步骤(a):若匹配后,最小位置为9个位置中的中心位置,则执行步骤(c),否则,最小位置为***的8个位置,则执行步骤(b); 
步骤(b):记录当前最小位置的MAD值,记为MAD0,并沿着该最小位置的方向再进行一次匹配,得到新的MAD值,记为MAD1,若MAD1小于MAD0,则循环执行步骤(b),若MAD1大于或等于MAD0,则跳转到步骤3; 
步骤(c):匹配后,最小位置为9个位置中的中心位置,则以步骤(a)得到的最小MAD值的位置为初始位置,进行对应上一帧的相同位置和周围4个方向的搜索,使用菱形搜索算法小模板,得到当前的最小MAD值即为最佳匹配位置: 
步骤4:基于最小二乘的全局运动估计:对式(1)进行整理,得到的矩阵方程: 
根据每个8×8的图像块得到的运动矢量及匹配点对,利用随机采样一致性(Random Sample Consensus,RANSAC)剔除错误的匹配点对,并利用保留下来的正确值以及式(4)对参数s,θ,dx,dy进行最小二乘估计;利用最小二乘估计思想估计出的全局运动参数,即得到了当前帧相对于上一帧的全局运动向量,即GMV=[GMVs,GMVθ,GMVx,GMVy]=[s,θ,dx,dy]; 
步骤5:利用改进的卡尔曼滤波器对图像序列进行补偿,具体包括子步骤(a)、(b)、(c)、(d)、(e)及(f); 
步骤(a):根据状态空间理论对稳像***进行建模,***的状态方程和观测方程分别为: 
其中,Φ、Γ和H分别为传递矩阵、输入矩阵和观测矩阵;x(k)、y(k)和u(k)分别为状态向量、观测向量和控制向量,而v(k)和w(k)代表噪声向量;为了简化起见,采用具有两个状态和单观测的线性***进行建模,其中Φ,Γ和H的取值如下: 
步骤(b):用PGMV表示全局运动矢量GMV的累加量,PGMV(k-1)表示GMV从第1帧到第k帧的累加值,将PGMV的各个分量分别送入一维的卡尔曼滤波器中进行滤波,则得到: 
其中,Ko(k-1)=[Kos(k-1),Koθ(k-1),Kox(k-1),Koy(k-1)]表示四个卡尔曼滤波器在第k-1时刻的输出,PGMV(k-1)和Ko(k-1)两个矢量之间的差表示第k-1帧的运动补偿矢量,CMV(k-1)=[CMVs(k-1),CMVθ(k-1),CMVx(k-1),CMVy(k-1)]第k-1帧的抖动运动矢量用JMV(k-1)=[JMVs(k-1),JMVθ(k-1),JMVx(k-1),JMVy(k-1)]表示,其在数值上与第k-1帧的运动补偿矢量CMV(k-1)相等; 
步骤(c):根据卡尔曼滤波器理论对状态进行预测; 
其中,是根据k时刻对k+1时刻的估值,而P(k)为协方差矩阵,P(k+1|k)是其根据当前时刻对下一时刻的估值,另外,噪声信号v(k)和w(k)认为是不相关的,R1为噪声信号v(k)的方差; 
步骤(d):引入场景识别参数,λ=[λsθxy],来识别当前场景为追拍运动或是抖动运动,λ值由下式确定: 
其中,L表示选取一定时间段内JMV的窗长,当某一个参量方向上存在追拍运动时,参数λ在这个方向上的数值大,反之,λ将是一个接近于0的很小值; 
步骤(e):根据λ的值确定第k帧观测噪声方差R(k)的值: 
其中f(·)为非线性函数,而且随着λ的增大而递减,这里给出一个参考的非线性函数,参考函数中,参量kp的经验值取100; 
当某一个参数方向存在追拍时,由参量确定的R(k)会很小,因而能很好的发挥卡尔曼滤波器的跟踪特性;反之,当前只存在随机抖动,R(k)的值很大,能很好的发挥卡尔曼滤波器的平滑作用; 
步骤(f):利用改进的卡尔曼滤波器和步骤(e)确定的观测噪声方差R(k), 对状态进行更新: 
这里,R(k)为标量而非矢量,这是由于采用***模型是单观测的,若采用多观测的***模型,则应用R(k)来表示观测噪声的协方差矩阵; 
步骤6:对含抖动的图像序列进行补偿:将运动补偿得到的运动补偿向量的各个参量,CMV=[s',θ',d'x,d'y]以及原图像的像素位置代入下式,进行补偿: 
并将像素赋给新的坐标位置(x',y'),即完成了稳像;如果采取简化后的模型,则应用下式进行补偿: 
CN201410389926.4A 2014-08-10 2014-08-10 一种基于改进的卡尔曼滤波的实时数字视频稳像方法 Expired - Fee Related CN104144283B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410389926.4A CN104144283B (zh) 2014-08-10 2014-08-10 一种基于改进的卡尔曼滤波的实时数字视频稳像方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410389926.4A CN104144283B (zh) 2014-08-10 2014-08-10 一种基于改进的卡尔曼滤波的实时数字视频稳像方法

Publications (2)

Publication Number Publication Date
CN104144283A true CN104144283A (zh) 2014-11-12
CN104144283B CN104144283B (zh) 2017-07-21

Family

ID=51853346

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410389926.4A Expired - Fee Related CN104144283B (zh) 2014-08-10 2014-08-10 一种基于改进的卡尔曼滤波的实时数字视频稳像方法

Country Status (1)

Country Link
CN (1) CN104144283B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104580830A (zh) * 2015-01-09 2015-04-29 安徽清新互联信息科技有限公司 一种面向视频监控的准静态图像抗抖动方法
CN106550187A (zh) * 2015-09-16 2017-03-29 韩华泰科株式会社 用于图像稳定的设备和方法
CN109462717A (zh) * 2018-12-12 2019-03-12 深圳市至高通信技术发展有限公司 电子稳像方法及终端
CN110248048A (zh) * 2019-06-21 2019-09-17 苏宁云计算有限公司 一种视频抖动的检测方法及装置
CN112287819A (zh) * 2020-10-28 2021-01-29 武汉三力通信有限责任公司 一种用于摄录设备的高速多路实时稳像方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006023863A1 (en) * 2004-08-23 2006-03-02 Intergraph Software Technologies Company Real-time image stabilization
CN102685371A (zh) * 2012-05-22 2012-09-19 大连理工大学 基于多分辨率块匹配和pi控制的数字视频稳像方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006023863A1 (en) * 2004-08-23 2006-03-02 Intergraph Software Technologies Company Real-time image stabilization
CN102685371A (zh) * 2012-05-22 2012-09-19 大连理工大学 基于多分辨率块匹配和pi控制的数字视频稳像方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
SARP ERTURK: "Digital image stabilization with sub-image phase", 《IEEE》 *
宋李亚: "基于块匹配的数字视频稳像***", 《信息科技辑》 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104580830A (zh) * 2015-01-09 2015-04-29 安徽清新互联信息科技有限公司 一种面向视频监控的准静态图像抗抖动方法
CN104580830B (zh) * 2015-01-09 2017-12-19 安徽清新互联信息科技有限公司 一种面向视频监控的准静态图像抗抖动方法
CN106550187A (zh) * 2015-09-16 2017-03-29 韩华泰科株式会社 用于图像稳定的设备和方法
CN106550187B (zh) * 2015-09-16 2020-10-23 韩华泰科株式会社 用于图像稳定的设备和方法
CN109462717A (zh) * 2018-12-12 2019-03-12 深圳市至高通信技术发展有限公司 电子稳像方法及终端
CN110248048A (zh) * 2019-06-21 2019-09-17 苏宁云计算有限公司 一种视频抖动的检测方法及装置
CN110248048B (zh) * 2019-06-21 2021-11-09 苏宁云计算有限公司 一种视频抖动的检测方法及装置
CN112287819A (zh) * 2020-10-28 2021-01-29 武汉三力通信有限责任公司 一种用于摄录设备的高速多路实时稳像方法

Also Published As

Publication number Publication date
CN104144283B (zh) 2017-07-21

Similar Documents

Publication Publication Date Title
CN104144283A (zh) 一种基于改进的卡尔曼滤波的实时数字视频稳像方法
JP5855445B2 (ja) デジタルイメージ安定化のための、ビデオデータ処理方法及びイメージ処理回路、並びにこれを用いるカメラ
US7605845B2 (en) Motion stabilization
CN105611116B (zh) 一种全局运动矢量估计方法及监控视频稳像方法及装置
JP7078139B2 (ja) ビデオ安定化方法及び装置、並びに非一時的コンピュータ可読媒体
US9100574B2 (en) Depth mask assisted video stabilization
US9716832B2 (en) Apparatus and method for stabilizing image
CN103841297B (zh) 一种适用于合成运动摄像载体的电子稳像方法
CN101729763A (zh) 数字视频电子稳像方法
CN103813056B (zh) 一种稳像方法及装置
CN104135598A (zh) 一种视频图像稳定方法及装置
US11222409B2 (en) Image/video deblurring using convolutional neural networks with applications to SFM/SLAM with blurred images/videos
CN105872345A (zh) 基于特征匹配的全帧电子稳像方法
KR102331538B1 (ko) 영상 안정화 방법, 장치 및 컴퓨터 기록매체
JP2010093779A (ja) 動き補償において周期的構造に対処する方法および装置
CN104869310A (zh) 基于移动设备gpu和角速度传感器的视频拍摄防抖方法
CN102685371B (zh) 基于多分辨率块匹配和pi控制的数字视频稳像方法
US20140368682A1 (en) Real-time image processing method and device
CN105721776A (zh) 一种带数字稳像功能的运动摄像机装置及数字稳像方法
CN104182940A (zh) 一种模糊图像恢复方法及***
CN105163004A (zh) 一种消除误匹配点的视频补偿方法
Song et al. A novel real-time digital video stabilization algorithm based on the improved diamond search and modified Kalman filter
CN102665033B (zh) 基于分层块匹配的实时数字视频稳像方法
JP2016220083A (ja) ローリングシャッタ回転歪み補正と映像安定化処理方法
Yabuki et al. Real-time video stabilization on an FPGA

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20170721

Termination date: 20200810