程德强1, 黄晓丽1, 厉航1, 王浩宇1, 李尚同2
(1.中国矿业大学 信息与控制工程学院, 江苏 徐州 221116;2.徐州市公安局 科技处, 江苏 徐州 221000)
摘要:针对矿井车载摄像系统拍摄的视频因含有前景运动目标及高噪声造成的全局运动矢量估计误匹配率高、实时性较差等问题,提出了一种基于ORB特征匹配与改进粒子滤波的矿井车载视频图像稳像算法。在运动矢量估计阶段,采用ORB算法提取图像特征点;采用基于图像块的连续3帧间差分法,联合时空一致性准则快速剔除前景运动区域的特征点;结合前景标记区域,对特征点位置进行初次筛选,对保留下来的背景特征点进行配准;利用仿射变换模型实现帧间运动矢量的估计。在运动滤波阶段,采用基于估计窗的实时粒子滤波算法滤除抖动分量,获得补偿参数。实验结果表明,该算法有效避免了前景运动目标对稳像精度的影响,且具有较快的处理速度。
关键词:矿井视频监控; 车载视频; 稳像; 运动矢量估计; ORB特征匹配; 粒子滤波
为了便于观测井下情况,煤矿生产过程中使用了大量的车载摄像系统,监控视频画面实时传输到地面监控中心。但移动拍摄导致视频图像失稳,不仅影响监控视频呈现效果,而且增加了后续人员识别及图像预警、安全事故处理等难度。因此,对车载摄像系统进行稳像技术处理,对于煤炭安全高效生产具有重要的现实意义[1]。
近年来,对视频稳像技术的研究主要集中在如何获取准确的全局运动矢量及运动补偿方面。文献[2]采用灰度投影获取全局运动矢量,具有运算量较小、速度快等优点,但只适用于灰度信息比较丰富的视频序列,且局限于平移运动方式。文献[3]采用光流法获取运动矢量,所得结果非常精确,但计算过程复杂,难以满足煤矿井下视频监控对实时性的要求。文献[4]采用基于Harris特征点匹配与运动滤波相结合的方式处理抖动视频,取得了一定成效,但Harris角点提取过程中的梯度运算导致特征点检测耗时较长,且会产生特征点冗余现象,易造成噪声环境下特征点之间的误匹配。尺度不变特征变换(Scale-Invariant Feature Transform,SIFT)和加速鲁棒性特征 (Speeded Up Robust Features,SURF)算法对于视频稳像具有较好的效果。但SIFT和SURF算法要求的描述子维度太高,且必须反复计算Harr小波的响应值,因此需要大量内存空间和较长的运行时间,稳像速度难以提高。本文提出采用既能抗旋转又能抗噪声的ORB(Oriented FAST and Rotated BRIEF)算法来提高视频稳像运算速度[5]。ORB算法采用一种局部不变特征描述子,其计算速度比SURF算法快1个数量级,比SIFT算法快2个数量级[6],对图像的旋转及平移具有不变性,同时对光照变化具有较强的鲁棒性。
为了减小矿井车载摄像系统视频抖动序列中前景运动目标对稳像效果的影响,必须改善对运动矢量的估计精度,同时滤除运动矢量中的随机抖动分量,以模拟视觉平滑效果。本文提出一种基于ORB特征匹配与改进粒子滤波的矿井车载视频图像稳像算法。该算法首先利用ORB算法完成特征点提取;然后对图像进行分块,结合连续3帧间差分图像,采用基于图像块的时域和空域一致性准则快速标记运动子块,将位于前景运动区域的特征点剔除,以保证得到的特征点尽可能位于背景区域;接下来对背景区域上的特征点进行配准,并结合RANSAC(Random Sample Consensus,随机抽样一致)算法剔除误匹配点对;最后采用改进的粒子滤波算法实现正常扫描与随机抖动分离,获取待补偿运动参数。实验结果表明,该算法有效消除了视频中前景运动目标对稳像精度的影响,且运行速度较SURF、SIFT算法有较大提高。
1.1 ORB特征点提取
ORB算法基于FAST角点特征检测算子来定位关键点,采用矩计算方式获得局部区域内的灰度形心,利用检测到的特征点到形心的矢量方向确定其主方向,计算过程如下。
定义某特征点的邻域像素局部区域U的矩:
(1)
式中:p,q分别为矩在x,y方向的取值;I(x,y)为(x,y)处像素点的灰度值。
区域U上的灰度形心为(,),形心与特征点之间的夹角θ为FAST角点主方向。
θ=arctan()
(2)
为了获取特征点的尺度信息,可利用金字塔技术对金字塔图像的每一层进行FAST特征检测。
1.2 ORB特征描述及匹配
ORB算法采用二进制的鲁棒性独立特征BRIEF描述子对检测到的特征点进行描述[7]。BRIEF描述子生成过程:在图像块内随机选择n(n可为128,256,512,本文取256)个测试点对pi,i=1,2,…,n,对每个点对定义一个s×s图像邻域的测试准则:
(3)
式中I(xi),I(yi)分别为测试点对pi在x,y方向的灰度值。
对选择的n个测试点对重复式(3)操作,即可生成一个n维二进制比特位描述子:
(4)
为了提高ORB算法的抗噪声能力,在测试点对邻域的31×31像素区域内,通过高斯分布随机选取5×5的子窗口,利用积分图像方法对图像进行灰度积分,以替换点对的像素值。为了加强对图像旋转变化的适应性,ORB算法采用特征点形心的方向作为BRIEF的主方向[6]。在获得的特征点上任意选择n对特征,得到一个2×n矩阵:
(5)
采用由特征点形心方向θ确定的旋转矩阵Rθ对S进行旋转操作,得到新的描述矩阵:
(6)
这样即可得到具备旋转不变性的BRIEF描述子:
gn=fn|(xi,yi)∈Sθ
(7)
最后,ORB算法通过贪婪法则从n对特征点中选取具有相关性及高反差较低的256 对特征点进行特征描述,并采用基于汉明距离的最近邻穷举搜索实现对特征点的匹配[6]。
1.3 基于ORB算法的运动矢量估计
实际应用中,因特征点检测是针对整幅图像的,不可避免地将特征点选在前景运动目标上,尤其是在前景运动目标过大的情况下,导致局部特征点过多,严重干扰全局运动矢量估计的准确度。本文采用基于图像块的连续3帧间差分法,对子块进行差值计算并统计其平均值。运动子块的差分值较大,可先初步判别该块是否为运动目标。相邻2帧图像内的运动区域应满足时域一致性,即运动子块在下一帧类似的位置也会出现运动子块[4];单帧图像内运动子块的差分应满足空域一致性,即运动子块的8邻域块内同时存在运动子块。若不能满足时空一致性准则,则标记该块为背景中残差较大的孤立子块,予以剔除。以下为具体判断步骤。
(1) 取连续3帧图像(灰度分别为Ik-1,Ik,Ik+1),分别计算它们之间的差分值:
Dk(x,y)=abs[Ik(x,y)-Ik-1(x,y)]
(8)
Dk+1(x,y)=abs[Ik+1(x,y)-Ik(x,y)]
(9)
(2) 假设图像分块尺寸为16×16,计算各子块的平均绝对残差:
(10)
(11)
(3) 初步判断各块是否运动,将平均绝对残差大于阈值(采用最大类间方差法设定)的块设为候选运动块。
(4) 对候选运动块进行时空一致性检测,即统计连续2帧图像各子块的8相邻子块,若标记的运动子块大于3个,说明该块周围同属于前景,且时间上连续,为真实的运动前景。
定义ORB算法在第k帧提取出的特征点集合为Pk={pki,i=1,2,…,n},PFk,PBk分别为特征点集中的前景特征点与背景特征点子集,Pk=PFk∪PBk。对特征点pki位置(xki,yki)进行判断,若其为运动块,则将其标记为PFk,予以剔除,其余的即为待匹配的背景特征点,标记为PBk。
为进一步提高估计精度,采用RANSAC算法剔除误匹配点对,最后采用4参数仿射变换模型[8]求取运动矢量。
(12)
式中:(xi+1,yi+1),(xi,yi)分别为当前帧与参考帧的特征点坐标;m0,m1,m2,m3为图像的缩放与旋转分量;tx,ty分别为图像x,y方向的平移分量。
令则式(12)可写为A=BC,利用最小二乘法即可求解出运动矢量:
B=[CTC]-1CTA
(13)
图像运动一般由摄像机自身的正常扫描运动和载体引起的随机抖动组成[9]。摄像机的正常扫描运动属于平稳的低频运动,随机抖动属于高频运动。粒子滤波算法可将二者分离。但传统的粒子滤波算法计算复杂,耗时较长,且会导致滤波发散问题。本文对传统粒子滤波算法进行改进,提出一种基于估计窗的实时粒子滤波算法[10],其可保留主动扫描,过滤随机抖动,还可完成视频图像序列的运动补偿。
基于估计窗的实时粒子滤波算法原理:首先假设观测间隔为ε,如果在一个估计窗口内有c个观测值[11]到来,那么粒子滤波器的一个更新周期即cε。将N个粒子按照权值分割成c个粒子子集(大小为αjN),根据观测值对每一个粒子子集进行粒子滤波,最后采用加权和方式将获取的粒子子集估计值进行归一化处理,得到最终的状态估计。
采用基于估计窗的实时粒子滤波算法时,即使每一个观测值都是通过相对较小的粒子集进行滤波处理,但是由估计窗递推得到的下一时刻的状态是由上一个估计窗内所有粒子子集的加权和得到的[11],因此,该算法的状态估计由N个粒子表示,解决了因粒子数目减少而导致的滤波发散问题。
基于估计窗的实时粒子滤波算法描述如下。
(1) 初始化。设m为图像序列的帧数,在m=0时开始初始化处理,采样得到初始粒子集表示第m帧运动矢量的变化量,则初始粒子集中每个粒子代表1对值。窗口宽度设为c,混合分布权值初值α0l=,l=1,2,…,c。粒子采样公式为
(14)
式中:λ为常数,λ∈[-1,1];d为运动补偿的最大范围。
(2) 估计窗内粒子滤波运算。首先建立系统转移方程及观测方程。当图像更新至第m帧时,首先将粒子集按权值αm-1l分成c个粒子子集此时每一个粒子状态对应的空间模型为
(15)
式中:γ,β为常量,一般γ=β=1;Om-1l为均值为零的白噪声。
状态转移矩阵为
(16)
经计算可得(Δxml,Δyml),将(Δxml,Δyml)记作观测量。定义粒子之间的相似度:
Fr=
(17)
则观测概率密度函数为
(18)
式中σ为常数。
粒子权值的递推公式为
(19)
归一化处理后的权值更新为
(20)
然后进行重采样。当重采样阈值不小于实际采样值时,对进行替换,获取新的粒子集并将所有粒子的权值设置为
最后获取第m帧状态估计值。单个观测值的变化量为
(21)
则第m帧状态估计值为
(22)
通过上述步骤计算得到的状态估计值(Δ,Δ)即为所求的运动矢量变化量(Δxm,Δym)。将Δxm和Δym相邻帧分别进行累加即可获得最终的运动补偿矢量。
基于ORB特征匹配与改进粒子滤波的矿井车载视频图像稳像算法流程如图1所示。
图1 基于ORB特征匹配与改进粒子滤波的矿井车载视频图像稳像算法流程
Fig.1 Process of vehicle video image stabilization algorithm for mine based on ORB feature matching and improved particle filter
首先利用ORB算法提取相邻帧特征点,对图像做分块处理,标记前景运动区域,判断特征点位置;然后对背景特征点进行描述与匹配,结合RANSAC算法剔除误匹配点对,代入式(13)计算运动矢量;采用基于估计窗的实时粒子滤波算法对全局运动矢量进行滤波处理,获取运动补偿参数;最后采用快速补偿法对当前帧进行逐帧补偿。
采用矿井车载摄像系统采集到的视频序列(图像分辨率为640×480),结合OpenCv与VS2010仿真工具,在Intel(R) Core(TM )i5-4590 CPU@3.30 GHz的PC机上对提出的基于ORB特征匹配与改进粒子滤波的矿井车载视频图像稳像算法进行验证。
4.1 全局显著特征点检测与匹配
矿井车载摄像系统采集的视频序列存在较多的前景运动目标。原始ORB特征匹配效果如图2(a)所示,可看出特征点大部分分布在背景区域上,但是有一部分特征点在前景运动目标上。本文ORB特征匹配效果如图2(b)所示,可看出误匹配点得到有效消除。
(a) 原始ORB匹配效果
(b) 本文ORB匹配效果
图2 矿井视频图像ORB特征匹配效果
Fig.2 ORB feature matching effect of mine video image
4.2 特征点匹配对数及实时性分析
采用矿井视频图像中的3组数据测试SIFT,SURF及本文ORB算法的特征点匹配对数及实时性,结果见表1。可看出采用ORB算法得到的特征点匹配对最多,且耗时最少,平均耗时1.21 s。其算法处理速度约为SIFT算法的12倍、SURF算法的4倍,满足煤矿井下视频数据实时处理需求。
表1 不同算法的特征点匹配对数和耗时对比
Table 1 Comparision of feature point matching amount and operation time of different algorithm
4.3 视频图像滤波
设系统采样时间t=0.1 s,估计窗口宽度c=4,窗内粒子数N=200,轨迹粒子数为40,梯度下降法[12]迭代次数为6。采用传统粒子滤波算法及基于估计窗的实时粒子滤波算法对连续100帧视频序列进行滤波,结果如图3所示。通常在没有不规划随机运动时,摄像机的正常扫描运动是一种较平滑且不包含抖动的运动,因此从图3可看出,在粒子数相同的情况下,基于估计窗的实时粒子滤波算法的滤波效果明显优于传统粒子滤波算法。运行50次蒙特卡罗算法来比较2种算法的运行时间,结果显示传统粒子滤波算法运行时间为3.361 s,基于估计窗的实时粒子滤波算法运行时间为1.035 s,运行速度提高约69%。
(a) 传统粒子滤波算法
(b) 基于估计窗的实时粒子滤波算法
图3 视频图像滤波效果
Fig.3 Vedio image filtering effect
4.4 算法有效性分析
4.4.1 稳像前后偏移量对比
采用图像帧间的偏移量能够较好地反映视频稳像后的稳定情况,偏移量越小,说明稳像效果越好。采用连续100 帧视频序列,分析稳像前后水平方向偏移量(矿井车载摄像系统在水平方向抖动较明显)。图像稳像前后水平方向偏移量如图4所示,可看出本文算法对抖动视频具有较好的稳像效果。
图4 图像稳像前后水平方向偏移量
Fig.4 Offset on horizontal direction before and after image stabilization
4.4.2 图像PSNR与差分图对比
采用帧间峰值信噪比(PSNR)检验稳像前后相邻2帧图像的逼真度,PSNR越大,说明稳像效果越好。稳像前后图像PSNR如图5所示。可看出经本文算法处理后,图像PSNR明显高于原始图像。稳像前后的差分图如图6所示,其验证了本文算法具有一定的抗前景干扰能力。
图5 稳像前后图像PSNR
Fig.5 PSNR before and after image stabilization
图6 稳像前后差分图
Fig.6 Difference image before and after image stabilization
(1) 在运动估计阶段,提出了ORB特征匹配与帧间差分相结合的方法,通过快速剔除前景特征点及对背景特征点进行配准,提高了全局运动矢量估计的准确度。经实验验证,该方法的处理速度约为SIFT算法的12倍、SURF算法的4倍,满足煤矿井下对视频监控实时性的要求。
(2) 在运动滤波阶段,提出了基于估计窗的实时粒子滤波算法。通过该算法获取需要补偿的抖动分量,可有效解决滤波发散问题,且处理速度较传统粒子滤波算法提高约69%。
(3) 矿井车载视频序列测试结果验证了基于ORB特征匹配与改进粒子滤波的矿井车载视频图像稳像算法对具有大运动前景及高噪声干扰的矿井车载视频图像具有较好的稳像效果及实时性。
参考文献(References):
[1] 程德强,郭政,郑珍,等.矿井车载摄像系统中电子稳像算法的研究[J].电视技术,2015,39(15):19-23.
CHENG Deqiang,GUO Zheng,ZHENG Zhen,et al. Electronic image stabilization of camera system for underground vehicle carries[J].Video Engineering,2015,39(15):19-23.
[2] 郭政.基于多分辨率灰度投影的电子稳像算法研究[D].徐州:中国矿业大学,2016.
[3] 程德强,郭政,刘洁,等. 一种基于改进光流法的电子稳像算法[J].煤炭学报,2015,40(3):707-712.
CHENG Deqiang, GUO Zheng,LIU Jie,et al. An electronic image stabilization algorithm based on improved optical flow method[J]. Journal of China Coal Society,2015,40(3):707-712.
[4] 朱娟娟,范静,郭宝龙.抗前景干扰的自适应电子稳像算法[J].光子学报,2015,44(6):45-52.
ZHU Juanjuan, FAN Jing,GUO Baolong. Adaptive electronic image stabilization algorithm resistant to foreground moving object[J].Acta Photonica Sinica,2015,44(6):45-52.
[5] 吉淑娇,朱明,雷艳敏,等.基于改进运动矢量估计法的视频稳像[J].光学精密工程,2015,23(5):1458-1465.
JI Shujiao, ZHU Ming,LEI Yanmin,et al.Video stabilization with improved motion vector estimation[J].Optics and Precision Engineering,2015,23(5):1458-1465.
[6] 邱家涛.电子稳像算法和视觉跟踪算法研究[D].西安:西安电子科技大学,2013.
[7] 白雪冰,车进,牟晓凯,等.结合快速鲁棒性特征改进ORB的特征点匹配算法[J].计算机应用,2016,36(7):1923-1926.
BAI Xuebing, CHE Jin,MU Xiaokai,et al.Improved feature points matching algorithm based on speed-up robust feature and oriented fast and rotated brief [J].Journal of Computer Applications,2016,36(7):1923-1926.
[8] 易盟,楚岩.基于仿射不变约束与快速EKF滤波的航拍图像稳像[J].计算机科学,2016(8):313-317.
YI Meng, CHU Yan. Aerial video image stabilization based on affine invariant constraint and fast EKF adaptive filter[J]. Computer Science,2016(8):313-317.
[9] 常征.基于特征点匹配的视频电子稳像算法研究[D].沈阳:东北大学,2013.
[10] 胡昭华,宋耀良.一种用于运动跟踪的加窗粒子滤波新算法研究[J].南京理工大学学报(自然科学版),2007,31(3):337-341.
HU Zhaohua, SONG Yaoliang. Motion tracking based on novel windowing particle filter[J].Journal of Nanjing University of Science and Technology(Natural Science Edition),2007,31(3):337-341.
[11] 蒋蔚,伊国兴,曾庆双.基于SVM数据融合的实时粒子滤波算法[J].系统工程与电子技术,2010,32(6):1334-1338.
JIANG Wei,YI Guoxing,ZENG Qingshuang.Real-time particle filter based on data fusion with support vector machines[J].Systems Engineering and Electronics,2010,32(6):1334-1338.
[12] 蒋蔚.粒子滤波改进算法研究与应用[D].哈尔滨:哈尔滨工业大学,2010.
CHENG Deqiang1, HUANG Xiaoli1, LI Hang1, WANG Haoyu1, LI Shangtong2
(1.School of Information and Control Engineering, China University of Mining and Technology,Xuzhou 221116, China; 2.Technology Department, Xuzhou Public Security Bureau, Xuzhou 221000, China)
Abstract:For high error matching rate and poor real-time performance of global motion vector estimation caused by foreground moving target and high noise in video image captured by mine vehicle camera system, a vehicle video image stabilization algorithm for mine was proposed which was based on ORB feature matching and improved particle filter. In motion vector estimation stage, ORB algorithm is used to complete extraction of image feature points firstly. Then continuous three-frame difference method based on image block is adopted to quickly mark foreground movement area jointing space-time consistency criteria. Combined with foreground mark area, location of feature points is selected for the first time, and retained points are registered. Finally, affine transformation model is used to estimate motion vectors among frames. In motion filtering stage, a real-time particle filter algorithm based on estimation window is used to filter jitter components, and compensation parameters are obtained. The experimental results show that the proposed algorithm can effectively avoid influence of foreground moving target on image stabilization precision, and has quick processing speed.
Key words:mine video monitoring; vehicle video; image stabilization; motion vector estimation; ORB feature matching; particle filter
文章编号:1671-251X(2017)11-0021-06
DOI:10.13272/j.issn.1671-251x.2017.11.005
中图分类号:TD67
文献标志码:A 网络出版时间:2017-10-27 08:33
网络出版地址:http://kns.cnki.net/kcms/detail/32.1627.TP.20171027.0833.005.html
收稿日期:2017-05-10;
修回日期:2017-09-22;责任编辑李明。
基金项目:江苏省“六大人才高峰”高层次人才培养项目(2015-ZBZZ-009)。
作者简介:程德强(1979-),男,河南洛阳人,教授,博士,研究方向为图像智能检测与模式识别、图像处理与视频编码、多媒体专用集成电路设计,E-mail:hxlcumt15@163.com。
引用格式:程德强,黄晓丽,厉航,等.矿井车载视频图像稳像算法研究[J].工矿自动化,2017,43(11):21-26.
CHENG Deqiang, HUANG Xiaoli, LI Hang, et al. Research on vehicle video image stabilization algorithm for mine[J].Industry and Mine Automation,2017,43(11):21-26.