CN112287819A - 一种用于摄录设备的高速多路实时稳像方法 - Google Patents
一种用于摄录设备的高速多路实时稳像方法 Download PDFInfo
- Publication number
- CN112287819A CN112287819A CN202011173340.6A CN202011173340A CN112287819A CN 112287819 A CN112287819 A CN 112287819A CN 202011173340 A CN202011173340 A CN 202011173340A CN 112287819 A CN112287819 A CN 112287819A
- Authority
- CN
- China
- Prior art keywords
- frame
- video
- motion
- matrix
- turning
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 65
- 230000000087 stabilizing effect Effects 0.000 title claims abstract description 9
- 239000011159 matrix material Substances 0.000 claims abstract description 68
- 230000006641 stabilisation Effects 0.000 claims abstract description 59
- 238000011105 stabilization Methods 0.000 claims abstract description 59
- 239000013598 vector Substances 0.000 claims abstract description 37
- 238000001914 filtration Methods 0.000 claims abstract description 26
- 230000009466 transformation Effects 0.000 claims abstract description 25
- 238000004364 calculation method Methods 0.000 claims abstract description 19
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 claims abstract description 18
- 230000003287 optical effect Effects 0.000 claims abstract description 12
- 238000005070 sampling Methods 0.000 claims abstract description 4
- 230000008569 process Effects 0.000 claims description 22
- 230000006870 function Effects 0.000 claims description 9
- 238000013519 translation Methods 0.000 claims description 9
- 230000008859 change Effects 0.000 claims description 6
- 238000009499 grossing Methods 0.000 claims description 6
- 230000000717 retained effect Effects 0.000 claims description 6
- 238000013507 mapping Methods 0.000 claims description 4
- 238000005259 measurement Methods 0.000 claims description 4
- 230000001186 cumulative effect Effects 0.000 claims description 3
- 238000006073 displacement reaction Methods 0.000 claims description 3
- 230000005284 excitation Effects 0.000 claims description 3
- BULVZWIRKLYCBC-UHFFFAOYSA-N phorate Chemical compound CCOP(=S)(OCC)SCSCC BULVZWIRKLYCBC-UHFFFAOYSA-N 0.000 claims description 3
- 238000010845 search algorithm Methods 0.000 claims description 3
- 239000000126 substance Substances 0.000 claims description 3
- 230000002195 synergetic effect Effects 0.000 claims description 3
- 238000012360 testing method Methods 0.000 claims description 3
- 238000000844 transformation Methods 0.000 claims description 3
- 238000012545 processing Methods 0.000 abstract description 5
- 230000000694 effects Effects 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000007547 defect Effects 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000001788 irregular Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000003860 storage Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 208000003464 asthenopia Diseases 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 210000003205 muscle Anatomy 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000013441 quality evaluation Methods 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/46—Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/527—Global motion vector estimation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种用于摄录设备的高速多路实时稳像方法,涉及图像处理领域,该方法包括以下步骤:建立按时间线缓存的视频帧队列,所述视频帧队列包括n帧按拍摄时间先后顺序排列的图像,将n帧图像灰度化,计算得到的首帧图像的强角点,其他帧相对首帧进行光流计算得到强角点的对应点,帧间全局运动矢量估计,选用Affine仿射变换运动模型表征视频帧间的运动,采用RANSAC算法进行随机采样,得到n帧相邻图像的运动变换矩阵,通过帧间Kalman运动滤波获取意向运动,通过仿射变换矩阵的计算方法获取稳像结果,进行视频帧补偿,输出稳像结果。本发明成本较低,且计算效率较高。
Description
技术领域
本发明涉及图像处理领域,具体涉及一种用于摄录设备的高速多路实时稳像方法。
背景技术
摄录设备(如手机)在拍摄视频时,会因为机械振动或肌肉颤动等原因造成视频采集设备的载体发生不规则运动,尤其是在使用高倍放大的镜头时,轻微的机械震动会引起图像的剧烈抖动,抖动的视频序列会导致诸多不良后果:人工观测困难,极易引起视觉疲劳,导致后期的误判和漏判,由于图像细节不能清晰地表达真实场景,导致后期图像处理难度较大;压缩比降低,导致视频采集后端的存储空间开销变大;运动目标的跟踪识别困难,极易导致目标的丢失。因此,数字稳像技术的研究具有重要的现实意义。
当前视频稳像技术分为四类:物理稳像、光学稳像、电子稳像和数字稳像,数字稳像由于不依赖于任何额外的机械设备和光学元件,在体积、能耗、操作性等方面都远远优于物理稳像、光学稳像、电子稳像技术,成为视频稳像领域的重点研究方向。
数字视频稳像在应用时,主要存在以下挑战:实时性和去抖动质量,由于实时性和去抖动质量之间存在一定的制约关系,难以取得较好的平衡。
为提高视频的去抖动质量,Matthias Grundmann等提出了基于电影拍摄美学原则的视频稳像方法:按照约束的L1最小化方法将原始杂乱的相机运动路径优化为恒定路径(固定摄像机)、恒定匀速路径(平移或安装在推车上的摄像机)和恒定加速度的路径(上面两种路径之间的转化)三个部分,通过该方法稳像后的视屏质量较好,视觉观赏效果较好,但是存在视频帧裁剪尺寸较大,无法实时在线视频稳像的缺陷。
针对实时性的缺陷,Liu Shuaicheng等人提出的MeshFlow的运动场与经验性权重因子结合的自适应相机路径优化策略,该算法虽然能够有效提高实时性,但是稳像质量较低,尤其是当视频存在卷帘效应或者视频中存在较大遮挡物时,视觉效果较差。
电子产品中对实时视频稳像的应用需求较旺盛,但是,目前的稳像方案均存在输出质量与价格难以兼顾的问题,如4G执法记录仪等摄录终端,随着执法人员的剧烈运动,在视频拍摄中会不可避免的出现抖动,而光学、机械稳像的方式会显著提高移动终端的功耗、体积和重量,从而需要配置更多的电池和相应的设施,导致成本较高,移动难度较大,在实时远程视频集中式执法监督过程中难以使用。
实时数字视频稳像存在单指令流多数据流计算密度较大的问题,使用时通常进行串行顺序处理,效率较低,难以满足实时性需求。
发明内容
针对现有技术中存在的缺陷,本发明的目的在于提供一种用于摄录设备的高速多路实时稳像方法,成本较低,且计算效率较高,能够满足实时性需求。
为达到以上目的,本发明采取的技术方案是:
一种用于摄录设备的高速多路实时稳像方法,包括以下步骤:
S1、建立按时间线缓存的视频帧队列,所述视频帧队列包括n帧按拍摄时间先后顺序排列的图像;
S2、将n帧图像灰度化;
S3、通过Good Features to Track强角点搜索算法计算得到的首帧图像的强角点;
S4、其他帧相对首帧进行光流计算得到强角点的对应点;
S5、帧间全局运动矢量估计
选用Affine仿射变换运动模型表征视频帧间的运动,表达视频帧之间的平移、旋转、缩放等一般变换,运动模型参见公式6:
其中(tx,ty)表示平移量,参数ai(i=1,2,3,4)反应图像旋转、缩放等变化,公式6中仿射变换的方程组有6个未知数,需要找到3组映射点,同时,为消除不同匹配点导致的观测结果之间产生矛盾,采用RANSAC算法进行随机采样,该算法需要进行如下基本假设:给定数据大部分由“局内点”组成;给定数据包含少部分的“局外点”,它不能适应给定数据决定的模型;除“局内点”之外,也包含一些噪声数据;进一步的:给定一组局内点,存在一个可以求解的模型参数,而该模型能够解释或者适用于局内点,从匹配数据集中随机抽出3组特征匹配点对并保证这3个点对之间不共线,计算出单应性矩阵H,然后利用这个模型H测试所有数据,并计算满足这个模型数据点的个数与重投影误差,即代价函数L(H),函数按公式7计算:
若此模型H为最优模型,则对应的代价函数最小,其中RANSAC的最大迭代次数k设置为100,置信度p设置为0.995;
通过上述方法获得视频帧队列中相对队列首帧的单应性矩阵序列Hn={Ht+1,Ht+2,……,Ht+n-2,},然后基于线性变化的特点,依次用Hn序列中后一个运动参数矩阵除以前一个参数矩阵,得到n帧相邻图像的运动变换矩阵H'n={Ht+2/Ht+2,……,Ht+n-1/Ht+n-2};
S6、通过帧间Kalman运动滤波获取意向运动;
进行Kalman运动滤波的具体步骤:
上一步骤中帧间全局运动矢量估计的最优估计包含了摄录设备的意向运动分量、抖动分量、视频中动态场景的运动分量,为了只对抖动分量进行补偿,需要从全局运动估计中分离出意向运动分量;
采用kalman滤波求解t帧到t+1帧全局运动矢量的过程如下:求解旋转角度θt+1,x轴方向的缩放尺度为Sxt+1、y轴方形的缩放尺寸为Syt+1,x轴方向和y轴方向的平移分量分别为dxt+1,dyt+1,全局运动矢量
已知t-1到t帧的kalman滤波后验状态估计结果和Pt,通过步骤S5中求解的t到t+1帧的全局运动矢量估计向量首帧到t+1帧共t个全局运动矢量的累计和为Sumt,运动模型中θt+1,dxt+1,dyt+1,Sxt+1,Syt+1这5个分量的协同差矩阵为Σt+1,设置各分量的过程激励噪声协方差为Q0=0.004,全局运动矢量估计的观测噪声协方差为R0=0.5,先验状态估计协方差矩阵Σ0为单位矩阵,则其滤波过程的kalman增益可以通过公式8计算:
Kt+1=(Σt+1+Q)/(Σt+1+Q+R) 公式8
5个分量的后验估计协方差矩阵Σt+1量测更新为公式10:
Σt+1′=(l-Kt+1)*∑t+1 公式10
S7、通过仿射变换矩阵的计算方法获取稳像结果;
S8、视频帧补偿,输出稳像结果。
进一步的,步骤S1具体包括以下步骤:
打开视频文件,若不能成功打开,则结束;若能打开,读取摄录设备拍摄的彩色图像I的视频帧,按拍摄时间先后顺序,将It,It+1,It+2,……,It+n-1的n帧视频缓存,作为一组图像队列;按顺序读取图像并判定当前图像有效。
进一步的,步骤S3中通过Good Features to Track强角点搜索算法计算得到的首帧图像的强角点的具体方法为:
在亮度恒定、时间连续或者是运动是“小运动”空间一致,临近点有相似运动的前提假设下,同一目标出现在两帧图像I、J中,如果图像中两点匹配,那么以这两点为中心,W为窗口存在极小的灰度平方差ξ,平方差ξ根据公式2计算:
ξ=∫∫W[J(X)-I(X+d)]2ω(X)dX 公式2
公式2中,坐标X=[x,y]T,偏移量d=[dx,dy]T,权重函数ω(X)=1,为了得到最佳匹配,需要使得ξ取最小值,此时,公式2的导数为0并求取极小值,最终得到ξ最小值为a;
点a=[ax,ay]T/mathb fa=[ax,ay]T,进行泰勒级数展开,截断高阶保留线性项,得到公式3:
∫∫W[J(X)-I(X)+gTd]dX=-[∫∫Wg(X)g(X)Tω(X)dX]d 公式4
通过公式4可简化为方程Zd=e,Z=∫∫Wg(X)g(X)Tω(X)dX,其中,Z为2*2矩阵,e为2*1向量;
利用牛顿迭代法求解,当残差e小于一定阈值时,就认为得到了近似解,根据公式4简化后Z矩阵的两个特征值来选择的Good FeaturestoTrack强角点,Z矩阵的两个特征值需要满足公式5的条件:
min(λ1,λ2)>λ 公式5
此处的阈值是为区分目标前景和背景的,在实际操作中,一致亮度区域的特征值为阈值下限λmin,角点或高纹理区域的特征值视为上限λmax,当λ取(λmax-λmin)/2时,即得到的强角点坐标X。
进一步的,步骤S5具体包括以下步骤:
S401、对每一帧图像进行找角点,查找所有非首帧图像的对应点,将对应点存储到存储器中,转入步骤S402;
S402、判断当前帧i+1是否有角点,若是,转入步骤S5计算第i+1帧图像的变化矩阵,再转入步骤S6;否则,不变换,转入步骤S6;
进一步的,所述查找所有非首帧图像的对应点的方法如下:
完成参考帧的强角点选择后,即得到Z矩阵,然后基于“相邻视频帧的取帧时间连续,或者,相邻帧之间物体的运动比较微小”的光流前提假设,按照公式Zd=e,计算位移矢量d,按照公式X=x+d实现在当前帧上提取参考帧上强角点的对应点,将对应点存储至对应存储器中。
进一步的,步骤S6具体包括以下步骤:
S601、判断当前帧i是否有角点,若是,转入步骤602,否则,转入S603;
S602、对当前帧i进行Kalman滤波,转入S603;
S603、判断当前帧i是否小于n,若是,调取下一帧i+1并转入步骤S601;若i=n,转入步骤S7。
进一步的,步骤S7具体包括以下步骤:
S701、判断当前帧i是否有角点,若是,转入步骤S702,否则,转入步骤S8;
S702、通过仿射变换得到第i帧的稳像结果,转入步骤S703;
S703、下载稳像结果并存储,转入步骤S8;
进一步的,步骤S8具体包括以下步骤:
S801、按顺序将第i帧的稳像结果进行存储,转入步骤S802;
S802、判断i是否小于n,若是,将i变为i+1转入步骤S801,否则,转入步骤S803;
S803、将队列最后一帧拷贝到第一帧,作为下一个队列的第一帧,转入步骤S804;
S804、清空存储器中存储的角点和对应点,转入步骤S1,进行下一队列的处理。
与现有技术相比,本发明的优点在于:
(1)本发明中用于摄录设备的高速多路实时稳像方法,通过调度多对当前帧参考帧并行运算,提升了CPU利用效率,并通过视频帧全局运动估计任务调度,简化了相邻视频帧运动估计复杂度,将图像特征追踪的角点提取时间降为现有技术的1/n左右,并且实时在线视频稳像的时间延迟小于0.2s,显著提高了计算运行效率,相比现有方法,在同等视频帧长度条件下,本发明所述方法能够在去抖动视觉效果差异不大甚至更优的情况下,显著提高视频稳像速度。
附图说明
图1为本发明实施例中用于摄录设备的高速多路实时稳像方法的流程图;
图2为步骤S1的具体流程图;
图3为步骤S2至S6的具体流程图;
图4为步骤S6至S8的具体流程图;
图5为采用不同方法稳像的对比图。
具体实施方式
以下结合附图对本发明的实施例作进一步详细说明。
参见图1至图4所示,本发明实施例提供一种用于摄录设备的高速多路实时稳像方法,该方法包括以下步骤:
S1、建立按时间线缓存的视频帧队列
打开视频文件,若不能成功打开,则结束;若能打开,读取摄录设备拍摄的彩色图像I的视频帧,按拍摄时间先后顺序,将It,It+1,It+2,……,It+n-1的n帧视频缓存,作为一组图像队列。
按顺序读取图像并判断当前图像(第i帧图像(i≤n))是否有效,若有效,上传当前图像至CPU,转入步骤S2,否则结束。
S2、将上传的图像按公式1依次进行灰度化:
Igray(x,y)=0.3*I_R(x,y)+0.59*I_G(x,y)+0.11*I_B(x,y) 公式1
为提高灰度图像转换效率,本发明使用查找表的方式,提前将0~255与0.3、0.59和0.11的计算结果放进查找表,避免大量的矩阵乘法运算。
同时,控制视频帧队列的帧数n,通过反复实验表明帧数n取4~6为最优值,当n>6时,相邻视频帧全局运动估计的累计误差较大;当n<4时,并行计算效率降低。
S3、提取视频队列首帧的角点
要从图片序列中获取不能直接获取的运动场,按照KLT光流计算的思想,特征点应当能被较好的跟踪,因此,本实施例选用Good Features to Track强角点搜索算法(一种特征点检测算法),将得到的参考视频帧强角点作为跟踪的特征点,其中,参考视频帧为选取的首帧图像。
其算法理论为:在亮度恒定、时间连续或者是运动是“小运动”空间一致,临近点有相似运动的前提假设下,同一目标出现在两帧图像I、J中,如果图像中两点匹配,那么以这两点为中心,W为窗口存在极小的灰度平方差ξ,平方差ξ根据公式2计算:
ξ=∫∫W[J(X)-I(X+d)]2ω(X)dX 公式2
公式2中,坐标X=[x,y]T,偏移量d=[dx,dy]T,权重函数ω(X)=1,为了得到最佳匹配,需要使得ξ取最小值,此时,公式2的导数为0并求取极小值,最终得到ξ最小值为a。
点a=[ax,ay]T/mathbfa=[ax,ay]T,进行泰勒级数展开,截断高阶保留线性项,得到公式3:
∫∫W[J(X)-I(X)+gTd]dX=-[∫∫Wg(X)g(X)Tω(X)dX]d 公式4
通过公式4可简化为方程Zd=e,Z=∫∫Wg(X)g(X)Tω(X)dX,其中,Z为2*2矩阵,e为2*1向量,Z可逆。
利用牛顿迭代法求解,当残差e小于一定阈值时,就认为得到了近似解,根据公式Z矩阵的两个特征值来选择的Good Features to Track强角点,一方面两个特征值不能太小,排除噪声影响,另一方面两个特征值不能差别太大,来证明跟踪点为角点,Z矩阵的两个特征值需要满足公式5的条件:
min(λ1,λ2)>λ 公式5
此处的阈值是为区分目标前景和背景的,在实际操作中,一致亮度区域的特征值为阈值下限λmin,角点或高纹理区域的特征值视为上限λmax,当λ取(λmax-λmin)/2时,即得到的强角点坐标X。
特征点选择准则为:
a、计算图像每个像素(或已提取的角点)的Z矩阵,及其最小的特征值λm;b、从所有中取最大值为λmax;c、保留λm大于一定百分比(10%)λmax的像素(角点);d、在c中的像素(角点)中,保留局部最大值;e、视计算能力,保留其中的子集。
S4、其他帧相对首帧进行光流计算得到强角点的对应点
S401、查找所有非首帧图像的角点和对应点,将对应点存储到存储器中,转入步骤S402。
S402、判断当前帧i+1是否有角点,若是,转入步骤S5计算第i+1帧图像的变化矩阵,再转入步骤S6;否则,不变换,转入步骤S6。
查找所有非首帧图像的对应点的方法如下:
完成参考帧的强角点选择后,即得到Z矩阵,然后基于“相邻视频帧的取帧时间连续,或者,相邻帧之间物体的运动比较微小”的光流前提假设,按照公式Zd=e,计算位移矢量(光流)d,按照公式X=x+d实现在当前帧上提取参考帧上强角点的对应点,将对应点存储至对应存储器中。
同时,为保证特征跟踪的鲁棒性和准确性,计算参考帧上的角点与当前帧上的对应点决定的Z矩阵上的的最小特征值,进行非最大值抑制,仅保留3*3邻域中的局部最大值,将最小特征值小于特征值阈值的像素点排除,最后将参考帧角点和当前帧角点之间的距离大于距离阈值的剔除,确保角点均匀分布在视频帧,使全局运动矢量估计的更为准确。
特征值阈值即图像中每个像素点Z矩阵最小特征值(Z为3*3矩阵,有3个特征值),取所有像素最小特征值进行比较,找出最大值,以最大值的0.9作为特征阈值,最小特征值大于特征阈值的就作为特征点。
距离阈值为一个经验值,通常为5~10个像素,在实际情况中根据需要选择,可以为5~10中的任一数值。
S5、帧间全局运动矢量估计
全局运动矢量估计是从参考帧和当前帧对应的角点对集中建立符合设定的运动模型参数的过程,进一步的,再进行图像变换矩阵的具体计算:
选用Affine仿射变换运动模型表征视频帧间的运动,能很好的表达视频帧之间的平移、旋转、缩放等一般变换,运动模型参见公式6:
其中(tx,ty)表示平移量,参数ai(i=1,2,3,4)反应图像旋转、缩放等变化,公式6中仿射变换的方程组有6个未知数,需要找到3组映射点,三个点刚好确定一个平面,而进行视频帧间特征点选择时,远远超出3组匹配点,通常为200组以上,因此出现了多余观测,选择不同匹配点会导致观测结果之间产生矛盾,为消除这些矛盾来求得全局运动矢量估计的最可靠结果,需要进行测量平差。
本发明采用RANSAC随机采样一致算法(Random Sample Consensus)解决上述问题,该算法需要进行如下基本假设:(a)给定数据大部分由“局内点”组成,例如:数据的分布可以用一些模型参数来解释;(b)给定数据包含少部分的“局外点”,它不能适应给定数据决定的模型;(c)除“局内点”之外,也包含一些噪声数据。
为了加强RANSAC算法的鲁棒性,进一步给定以下假设:给定一组(通常很小的)局内点,存在一个可以求解的模型参数,而该模型能够解释或者适用于局内点,从匹配数据集中随机抽出3组特征匹配点对并保证这3个点对之间不共线,计算出单应性矩阵H,然后利用这个模型H测试所有数据,并计算满足这个模型数据点的个数与重投影误差,即代价函数L(H),函数按公式7计算:
若此模型H为最优模型,则对应的代价函数最小,其中RANSAC的最大迭代次数k设置为100,置信度p设置为0.995。
通过上述方法获得视频帧队列中相对队列首帧的单应性矩阵序列Hn={Ht+1,Ht+2,……,Ht+n-2,},然后基于线性变化的特点,依次用Hn序列中后一个运动参数矩阵除以前一个参数矩阵,得到n帧相邻图像的运动变换矩阵H'n={Ht+2/Ht+2,……,Ht+n-1/Ht+n-2}。
S6、帧间Kalman(Kalman filtering,卡尔曼滤波)运动滤波获取意向运动。
S601、判断当前帧i是否有角点,若是,转入步骤602,否则,转入S603。
S602、对当前帧i进行Kalman滤波,转入S603。
S603、判断当前帧i是否小于n,若是,调取下一帧i+1并转入步骤S601;若i=n,转入步骤S7。
进行Kalman运动滤波的具体步骤:
上一步骤中帧间全局运动矢量估计的最优估计包含了摄录设备的意向运动分量、抖动分量、视频中动态场景的运动分量,为了只对抖动分量进行补偿,需要从全局运动估计中分离出意向运动分量。
本实施例选用Kalman对其最优线性状态估计,只需输入t到t+1帧的全局运动估计参数和t-1到t帧的kalman滤波参数就能估计t到t+1帧的kalman运动滤波结果,其滤波结果理论上最为可靠,能有效平滑视频的不规则抖动,同时不占用较大存储空间、计算量小,提高意向运动估计的效率。
由于Kalman滤波是目前较成熟的方案,本实施例中不再赘述。
以一个典型的t帧到t+1帧全局运动矢量的kalman滤波过程为例说明其求解过程,按照本实施例采用的仿射变换运动模型,即为求解旋转角度θt+1,x轴方向的缩放尺度为Sxt+1、y轴方形的缩放尺寸为Syt+1,x轴方向和y轴方向的平移分量分别为dxt+1,dyt+1,全局运动矢量
已知t-1到t帧的kalman滤波后验状态估计结果和Pt,通过步骤S5中求解的t到t+1帧的全局运动矢量估计向量首帧到t+1帧共t个全局运动矢量的累计和为Sumt,运动模型中θt+1,dxt+1,dyt+1,Sxt+1,Syt+1这5个分量的协同差矩阵为Σt+1,设置各分量的过程激励噪声协方差为Q0=0.004,全局运动矢量估计的观测噪声协方差为R0=0.5,先验状态估计协方差矩阵Σ0为单位矩阵,则其滤波过程的kalman增益可以通过公式8计算:
Kt+1=(Σt+1+Q)/(Σt+1+Q+R) 公式8
5个分量的后验估计协方差矩阵Σt+1量测更新为公式10:
Σt+1′=(1-Kt+1)*∑t+1 公式10
S7、获取稳像结果
S701、判断当前帧i是否有角点,若是,转入步骤S702,否则,转入步骤S8。
S702、通过仿射变换得到第i帧的稳像结果,转入步骤S703。
S703、下载稳像结果并存储,转入步骤S8。
S8、视频帧补偿,输出稳像结果
S801、按顺序将第i帧的稳像结果进行存储,转入步骤S802。
S802、判断i是否小于n,若是,将i变为i+1转入步骤S801,否则,转入步骤S803。
S803、将队列最后一帧拷贝到第一帧,作为下一个队列的第一帧,转入步骤S804。
S804、清空存储器中存储的角点和对应点,转入步骤S1,进行下一队列的处理。
为获得一致尺寸的稳像输出结果,和仿射变换造成视频帧外围出现黑边(无像素值区域),本实施例统一设定裁剪比例β,将补偿后的视频帧按照帧尺寸长宽的β=0.1比例对边缘进行裁剪,保留中心稳定区域,提高稳像质量。
表1不同稳像结果比较表
参见表1所示,为常规的MeshFlow(一种常用且效果较好的视频去噪方法)与本发明实施例的方法对同一图像进行稳像的比较结果,其中,稳像后输出的图像参见图5,本发明实施例的方法平均每帧稳像耗时为25.3ms,小于MeshFlow的31.6ms,有效缩短了稳像时间,提高了稳像效率;本发明的方法稳像后图像的PSNR值(Peak Signal to Noise Ratio,峰值信噪比)、SSIM值(Structural SIMilarity,结构相似性)、VMAF值(一种视频质量评价指标,值越高代表质量越好)均高于MeshFlow,由此可知,通过本发明的方法得到的稳像质量较好。
本发明不仅局限于上述最佳实施方式,任何人在本发明的启示下都可得出其他各种形式的产品,但不论在其形状或结构上作任何变化,凡是具有与本发明相同或相近似的技术方案,均在其保护范围之内。
Claims (9)
1.一种用于摄录设备的高速多路实时稳像方法,其特征在于,包括以下步骤:
S1、建立按时间线缓存的视频帧队列,所述视频帧队列包括n帧按拍摄时间先后顺序排列的图像;
S2、将n帧图像灰度化;
S3、通过Good Features to Track强角点搜索算法计算得到的首帧图像的强角点;
S4、其他帧相对首帧进行光流计算得到强角点的对应点;
S5、帧间全局运动矢量估计
选用Affine仿射变换运动模型表征视频帧间的运动,表达视频帧之间的平移、旋转、缩放等一般变换,运动模型参见公式6:
其中(tx,ty)表示平移量,参数ai(i=1,2,3,4)反应图像旋转、缩放等变化,公式6中仿射变换的方程组有6个未知数,需要找到3组映射点,同时,为消除不同匹配点导致的观测结果之间产生矛盾,采用RANSAC算法进行随机采样,该算法需要进行如下基本假设:给定数据大部分由“局内点”组成;给定数据包含少部分的“局外点”,它不能适应给定数据决定的模型;除“局内点”之外,也包含一些噪声数据;进一步的:给定一组局内点,存在一个可以求解的模型参数,而该模型能够解释或者适用于局内点,从匹配数据集中随机抽出3组特征匹配点对并保证这3个点对之间不共线,计算出单应性矩阵H,然后利用这个模型H测试所有数据,并计算满足这个模型数据点的个数与重投影误差,即代价函数L(H),函数按公式7计算:
若此模型H为最优模型,则对应的代价函数最小,其中RANSAC的最大迭代次数k设置为100,置信度p设置为0.995;
通过上述方法获得视频帧队列中相对队列首帧的单应性矩阵序列Hn={Ht+1,Ht+2,……,Ht+n-2,},然后基于线性变化的特点,依次用Hn序列中后一个运动参数矩阵除以前一个参数矩阵,得到n帧相邻图像的运动变换矩阵H'n={Ht+2/Ht+2,……,Ht+n-1/Ht+n-2};
S6、通过帧间Kalman运动滤波获取意向运动;
进行Kalman运动滤波的具体步骤:
上一步骤中帧间全局运动矢量估计的最优估计包含了摄录设备的意向运动分量、抖动分量、视频中动态场景的运动分量,为了只对抖动分量进行补偿,需要从全局运动估计中分离出意向运动分量;
采用kalman滤波求解t帧到t+1帧全局运动矢量其中,需要求解旋转角度θt+1,x轴方向的缩放尺度为Sxt+1、y轴方形的缩放尺寸为Syt+1,x轴方向和y轴方向的平移分量分别为dxt+1,dyt+1,全局运动矢量
具体步骤为:已知t-1到t帧的kalman滤波后验状态估计结果和Pt,通过步骤S5中求解的t到t+1帧的全局运动矢量估计向量首帧到t+1帧共t个全局运动矢量的累计和为Sumt,运动模型中θt+1,dxt+1,dyt+1,Sxt+1,Syt+1这5个分量的协同差矩阵为Σt+1,设置各分量的过程激励噪声协方差为Q0=0.004,全局运动矢量估计的观测噪声协方差为R0=0.5,先验状态估计协方差矩阵Σ0为单位矩阵,则其滤波过程的kalman增益可以通过公式8计算:
Kt+1=(Σt+1+Q)/(Σt+1+Q+R) 公式8
5个分量的后验估计协方差矩阵Σt+1量测更新为公式10:
∑t+1′=(1-Kt+1)*∑t+1 公式10
S7、通过仿射变换矩阵的计算方法获取稳像结果;
S8、视频帧补偿,输出稳像结果。
2.如权利要求1所述的一种用于摄录设备的高速多路实时稳像方法,其特征在于:步骤S1具体包括以下步骤:
打开视频文件,若不能成功打开,则结束;若能打开,读取摄录设备拍摄的彩色图像I的视频帧,按拍摄时间先后顺序,将It,It+1,It+2,……,It+n-1的n帧视频缓存,作为一组图像队列;按顺序读取图像并判定当前图像有效。
3.如权利要求1所述的一种用于摄录设备的高速多路实时稳像方法,其特征在于:步骤S3中通过Good Features to Track强角点搜索算法计算得到的首帧图像的强角点的具体方法为:
在亮度恒定、时间连续或者是运动是“小运动”空间一致,临近点有相似运动的前提假设下,同一目标出现在两帧图像I、J中,如果图像中两点匹配,那么以这两点为中心,W为窗口存在极小的灰度平方差ξ,平方差ξ根据公式2计算:
ξ=∫∫W[J(X)-I(X+d)]2ω(X)dX 公式2
公式2中,坐标X=[x,y]T,偏移量d=[dx,dy]T,权重函数ω(X) =1,为了得到最佳匹配,需要使得ξ取最小值,此时,公式2的导数为0并求取极小值,最终得到ξ最小值为a;
点a=[ax,ay]T/mathbfa=[ax,ay]T,进行泰勒级数展开,截断高阶保留线性项,得到公式3:
∫∫W[J(X)-I(X)+gTd]dX=-[∫∫Wg(X)g(X)Tω(X)dX]d 公式4
通过公式4可简化为方程Zd=e,Z=∫∫Wg(X)g(X)Tω(X)dX,其中,Z为2*2矩阵,e为2*1向量;
利用牛顿迭代法求解,当残差e小于一定阈值时,就认为得到了近似解,根据公式4简化后Z矩阵的两个特征值来选择的Good Features to Track强角点,Z矩阵的两个特征值需要满足公式5的条件:
min(λ1,λ2)>λ 公式5
此处的阈值是为区分目标前景和背景的,在实际操作中,一致亮度区域的特征值为阈值下限λmin,角点或高纹理区域的特征值视为上限λmax,当λ取(λmax-λmin)/2时,即得到的强角点坐标X。
4.如权利要求1所述的一种用于摄录设备的高速多路实时稳像方法,其特征在于:步骤S5具体包括以下步骤:
S401、对每一帧图像进行找角点,查找所有非首帧图像的对应点,将对应点存储到存储器中,转入步骤S402;
S402、判断当前帧i+1是否有角点,若是,转入步骤S5计算第i+1帧图像的变化矩阵,再转入步骤S6;否则,不变换,转入步骤S6。
5.如权利要求4所述的一种用于摄录设备的高速多路实时稳像方法,其特征在于:所述查找所有非首帧图像的对应点的方法如下:
完成参考帧的强角点选择后,即得到Z矩阵,然后基于“相邻视频帧的取帧时间连续,或者,相邻帧之间物体的运动比较微小”的光流前提假设,按照公式Zd=e,计算位移矢量d,按照公式X=x+d实现在当前帧上提取参考帧上强角点的对应点,将对应点存储至对应存储器中。
6.如权利要求1所述的一种用于摄录设备的高速多路实时稳像方法,其特征在于:步骤S6具体包括以下步骤:
S601、判断当前帧i是否有角点,若是,转入步骤602,否则,转入S603;
S602、对当前帧i进行Kalman滤波,转入S603;
S603、判断当前帧i是否小于n,若是,调取下一帧i+1并转入步骤S601;若i=n,转入步骤S7。
8.如权利要求1所述的一种用于摄录设备的高速多路实时稳像方法,其特征在于:步骤S8具体包括以下步骤:
S801、按顺序将第i帧的稳像结果进行存储,转入步骤S802;
S802、判断i是否小于n,若是,将i变为i+1转入步骤S801,否则,转入步骤S803;
S803、将队列最后一帧拷贝到第一帧,作为下一个队列的第一帧,转入步骤S804;
S804、清空存储器中存储的角点和对应点,转入步骤S1,进行下一队列的处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011173340.6A CN112287819A (zh) | 2020-10-28 | 2020-10-28 | 一种用于摄录设备的高速多路实时稳像方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011173340.6A CN112287819A (zh) | 2020-10-28 | 2020-10-28 | 一种用于摄录设备的高速多路实时稳像方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112287819A true CN112287819A (zh) | 2021-01-29 |
Family
ID=74372400
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011173340.6A Pending CN112287819A (zh) | 2020-10-28 | 2020-10-28 | 一种用于摄录设备的高速多路实时稳像方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112287819A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113923369A (zh) * | 2021-12-13 | 2022-01-11 | 北京海兰信数据科技股份有限公司 | 一种用于船舶的视频防抖方法和系统 |
CN113947608A (zh) * | 2021-09-30 | 2022-01-18 | 西安交通大学 | 一种基于几何匹配法控制的结构不规则运动高精度测量方法 |
CN114143459A (zh) * | 2021-11-26 | 2022-03-04 | 中国电子科技集团公司第五十四研究所 | 一种适用于大变焦摄像头的视频消抖方法 |
CN114584785A (zh) * | 2022-02-07 | 2022-06-03 | 武汉卓目科技有限公司 | 视频图像的实时稳像方法及装置 |
CN116434128A (zh) * | 2023-06-15 | 2023-07-14 | 安徽科大擎天科技有限公司 | 一种基于缓存帧的电子稳像未填充区域的去除方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104144283A (zh) * | 2014-08-10 | 2014-11-12 | 大连理工大学 | 一种基于改进的卡尔曼滤波的实时数字视频稳像方法 |
CN104156933A (zh) * | 2013-05-13 | 2014-11-19 | 哈尔滨点石仿真科技有限公司 | 一种基于光流场的图像配准方法 |
CN106550174A (zh) * | 2016-10-28 | 2017-03-29 | 大连理工大学 | 一种基于单应性矩阵的实时视频稳像方法 |
CN107222662A (zh) * | 2017-07-12 | 2017-09-29 | 中国科学院上海技术物理研究所 | 一种基于改进的klt和卡尔曼滤波的电子稳像方法 |
CN110796010A (zh) * | 2019-09-29 | 2020-02-14 | 湖北工业大学 | 一种结合光流法和卡尔曼滤波的视频稳像方法 |
CN111539872A (zh) * | 2020-04-23 | 2020-08-14 | 南京理工大学 | 随机抖动干扰下视频图像的实时电子稳像方法 |
-
2020
- 2020-10-28 CN CN202011173340.6A patent/CN112287819A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104156933A (zh) * | 2013-05-13 | 2014-11-19 | 哈尔滨点石仿真科技有限公司 | 一种基于光流场的图像配准方法 |
CN104144283A (zh) * | 2014-08-10 | 2014-11-12 | 大连理工大学 | 一种基于改进的卡尔曼滤波的实时数字视频稳像方法 |
CN106550174A (zh) * | 2016-10-28 | 2017-03-29 | 大连理工大学 | 一种基于单应性矩阵的实时视频稳像方法 |
CN107222662A (zh) * | 2017-07-12 | 2017-09-29 | 中国科学院上海技术物理研究所 | 一种基于改进的klt和卡尔曼滤波的电子稳像方法 |
CN110796010A (zh) * | 2019-09-29 | 2020-02-14 | 湖北工业大学 | 一种结合光流法和卡尔曼滤波的视频稳像方法 |
CN111539872A (zh) * | 2020-04-23 | 2020-08-14 | 南京理工大学 | 随机抖动干扰下视频图像的实时电子稳像方法 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113947608A (zh) * | 2021-09-30 | 2022-01-18 | 西安交通大学 | 一种基于几何匹配法控制的结构不规则运动高精度测量方法 |
CN113947608B (zh) * | 2021-09-30 | 2023-10-20 | 西安交通大学 | 一种基于几何匹配法控制的结构不规则运动高精度测量方法 |
CN114143459A (zh) * | 2021-11-26 | 2022-03-04 | 中国电子科技集团公司第五十四研究所 | 一种适用于大变焦摄像头的视频消抖方法 |
CN113923369A (zh) * | 2021-12-13 | 2022-01-11 | 北京海兰信数据科技股份有限公司 | 一种用于船舶的视频防抖方法和系统 |
CN113923369B (zh) * | 2021-12-13 | 2022-03-15 | 北京海兰信数据科技股份有限公司 | 一种用于船舶的视频防抖方法和系统 |
CN114584785A (zh) * | 2022-02-07 | 2022-06-03 | 武汉卓目科技有限公司 | 视频图像的实时稳像方法及装置 |
CN116434128A (zh) * | 2023-06-15 | 2023-07-14 | 安徽科大擎天科技有限公司 | 一种基于缓存帧的电子稳像未填充区域的去除方法 |
CN116434128B (zh) * | 2023-06-15 | 2023-08-22 | 安徽科大擎天科技有限公司 | 一种基于缓存帧的电子稳像未填充区域的去除方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112287819A (zh) | 一种用于摄录设备的高速多路实时稳像方法 | |
AU2011216119B2 (en) | Generic platform video image stabilization | |
CN110248048B (zh) | 一种视频抖动的检测方法及装置 | |
KR100985805B1 (ko) | 적응적인 칼만필터를 이용한 영상 안정화 장치 및 방법 | |
US20120162451A1 (en) | Digital image stabilization | |
WO2021017809A1 (zh) | 视频去噪方法、装置及计算机可读存储介质 | |
US20150138441A1 (en) | System and method for spatio temporal video image enhancement | |
CN110753181A (zh) | 一种基于特征跟踪和网格路径运动的视频稳像方法 | |
WO2006043258A2 (en) | Dominant motion estimation for image sequence processing | |
CN111901532B (zh) | 基于循环神经网络迭代策略的视频稳定方法 | |
CN107360377B (zh) | 一种车载视频稳像方法 | |
CN108270945B (zh) | 一种运动补偿去噪方法及装置 | |
CN114429191B (zh) | 基于深度学习的电子防抖方法、系统及存储介质 | |
CN116091868A (zh) | 在线视频防抖设备、在线视频防抖方法及其学习方法 | |
CN114390188B (zh) | 一种图像处理方法和电子设备 | |
CN113784014B (zh) | 一种图像处理方法、装置及设备 | |
CN114143459A (zh) | 一种适用于大变焦摄像头的视频消抖方法 | |
Lee et al. | Efficient Low Light Video Enhancement Based on Improved Retinex Algorithms | |
CN113542588A (zh) | 一种基于视觉显著性的抗干扰电子稳像方法 | |
Batur et al. | Video stabilization with optimized motion estimation resolution | |
WO2020118565A1 (en) | Keyframe selection for texture mapping wien generating 3d model | |
CN113807124B (zh) | 图像处理方法、装置、存储介质及电子设备 | |
CN111355881B (zh) | 同时消除卷帘伪影和抖动的视频稳定化方法 | |
CN113489896B (zh) | 一种能够鲁棒预测全局运动估计的视频稳像方法 | |
Sreegeethi et al. | Online Video Stabilization using Mesh Flow with Minimum Latency |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |