好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

直升机巡视光电吊舱视频去抖增稳算法研究.docx

15页
  • 卖家[上传人]:ji****81
  • 文档编号:227691789
  • 上传时间:2021-12-21
  • 文档格式:DOCX
  • 文档大小:1.89MB
  • / 15 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 直升机巡视光电吊舱视频去抖增稳算法研究 谷连军 孟秀军摘 要:直升机在进行架空输电线路巡视过程中,其光电吊舱受多变的载体姿态和复杂的飞行环境等因素影响,导致所摄取的巡视视频失稳、模糊不清,分辨率严重下降,影响后续对巡视视频的应用为实时输出稳定的巡视视频,提出了一种直升机巡视光电吊舱去抖增稳算法,该算法在传统运动估计模块与运动補偿模块之外,增加了运动判断模块实验表明,该算法的巡视去抖增稳效果明显,视频抖动判断准确率为91%;抖动量估计的均方根误差的平均值为0.024像素,稳像精度达到亚像素级;对于标清巡视视频的去抖增稳平均单帧处理时间为39 ms(处理帧率为25 f/s),满足了实时性要求关键词:直升机巡视;光电吊舱;视频去抖增稳;运动估计;运动补偿;自适应:TP399:A:2095-1302(2020)06-00-050 引 言随着电力建设的迅速发展,复杂地形条件下的电网建设和设备维护工作越来越多随着投运设备的日益增加,巡检需求和人力缺员的矛盾日益突出,传统依靠人力为主的线路运维模式已无法满足当前及未来公司追求管理精益化、降本增效的战略发展需要直升机巡视方式的推广应用提高了巡检效率,缩短了巡检周期[1-2]。

      直升机在进行架空输电线路巡视的过程中,其光电吊舱受多变的载体姿态和复杂的飞行环境等因素影响,导致所摄取的巡视视频失稳、模糊不清,分辨率严重下降,影响后续对巡视视频的应用[3]因此亟需利用电子稳像技术[4]对所摄取的巡视视频进行稳像处理,去除随机抖动的干扰,为进一步的线路目标检测识别与跟踪等提供基础运动估计[5]和运动补偿[6]是电子稳像的关键,而实时性和准确性是决定电子稳像技术能否应用于直升机巡视系统等领域的关键指标在国内外诸多算法中,基于特征点提取的运动估计方法结合适当的运动补偿方法的电子稳像算法具有良好的应用基于特征点提取的运动估计的研究方向是选取适当的算子,快速准确的提取和匹配特征点,进而提高电子稳像的准确性和实时性目前常见的提取特征点的算子有SIFT(Scale Invariant Feature Transfer,尺度不变特征变换)算子[7]、SURF(Speed-Up Robust Feature,加速鲁棒特征)算子[8-9]、GFTT(Good Feature to Track,易于跟踪特征)算子、BRISK(Binary Robust Invariant Scalable Keypoint,二进制局部特征)算子[10]、FAST(Features From Accelerated Segment Test,加速段试验特征)算子等。

      Walhaa采用SIFT算子提取和匹配特征点进行运动估计,并利用Kalman滤波结合中值滤波获取运动补偿参数,取得了较好的稳像精度,然而所采用的SIFT的描述子维度太高导致耗费的时间较长Matsushita采用GFTT算子提取特征点并通过LK(Lucas & Kanade)光流法[11]匹配进行运动估计,可以适应静态背景和动态背景,然而GFTT算子计算图像梯度时需要耗费较多时间,影响实时性程德强等[12]利用SUSAN算子提取特征点,并采用LK光流法实现抖动视频序列的运动估计,但实时性仍有待提高周凯汀等[13]将ORB算法用于多姿态人脸识别中,通过改进ORB算子的采样模式提高了鲁棒性;李小红等[14]将ORB算法用于快速目标检测中,结合ORB(Oriented Brief)特征匹配算法使用帧差法获得运动目标初守艳利用ORB算法中具有方向性的FAST算子提取并匹配特征点进行运动估计,提取的特征点具有旋转不变性,且FAST算子提取特征点速度快、准确率高,其算法具有较高的稳像实时性和运动估计准确性,可以进一步通过改进运动补偿方法得到更好的稳像效果1 研究思路为提高算法的实时性和准确性,直升机巡视光电吊舱去抖增稳算法在传统的运动估计模块与运动补偿模块之外增加了运动判断模块。

      该算法具备自适应性,根据可见光和红外视频抖动程度自动采取合适的处理策略及方法,实现视频的去抖增稳,具体研究思路如图1所示对于输入视频初始的若干帧,采用基于相位相关法的运动初判,获取初始运动状态;对于视频的后续帧,提取FAST特征点,并通过LK光流法得到特征点的运动参数,进而通过建立仿射变换模型得到全局运动参数;利用初始运动状态和全局运动矢量矩阵,采用基于主运动识别方向的方法进行运动补偿,输出稳定视频2 算法设计与实现2.1 基于相位相关法的运动初判摄像机的拍摄状态包括静态拍摄、运动拍摄及静态拍摄与运动拍摄相互切换三种状态运动初判是指利用视频的初始若干帧,计算摄像机的二维平移量,并进行摄像机运动的初步判断,得到摄像机的初始运动状态,为后续稳像处理提供基础相位相关法对相邻两视频帧进行快速傅里叶变换,将视频帧从空域变换到频域,然后通过互功率谱直接计算两视频帧间的平移量设f1(x, y)和f2(x, y)分别为两帧视频的信号,若f1(x, y)和f2(x, y)简单平移相关,(Δx, Δy)为帧间平移量,则有:相应的傅里叶变换为:归一化功率谱为:F*1(w1, w2),F*2(w1, w2)分别为F1(w1, w2)和F2(w1, w2)的共轭,对上式进行傅里叶逆变换,在(x, y)空间形成的脉冲函数δ(x-Δx, y-Δy)脉冲峰值的位置(Δx, Δy)为两帧之间的平移量。

      以该平移量(Δx, Δy)近似作为摄像机的二维平移量(x0, y0)如图2所示,根据二维平移量(x0, y0)进行帧间运动方向识别,分别对正负帧间运动方向的数值P0,N0进行统计若进行帧间运动方向判断的帧数达到预先设定的帧数F0,则进行主运动方向初始值确定判断,若正负帧间运动方向的数值达到一定阈值T0,则确定主运动方向M,若P0与N0之差大于预先设定的阈值T1,则存在主运动方向M(其值1为正,-1为负),且为运动拍摄;若P0与N0之差小于预先设定的阈值T1,则不存在主运动方向M(其值设为0),且判定为静态拍摄,当前运动状态即为初始运动状态2.2 运动估计2.2.1 FAST特征点提取FAST算子提取特征点的原理是若在某一像素点P的邻域内有足够多的像素点的灰度值大于或小于该点的灰度值,则选择该点为特征点对于图像上一像素点P,其灰度值为Ip,以P为中心,r为半径的圆周上,与P存在联系的n个像素点,其灰度值为Ik(k=1, 2, ..., n),FAST特征点的角点响应函数CRF(Corner Respond Function)如下:式中,threshold为给定的小阈值(一般取threshold=10-4),如果CRF=1的个数大于1个给定的阈值(推荐值为12),则P点为FAST特征点。

      2.2.2 基于仿射变换模型的全局运动参数估计根据估计出的n个FAST特征点的光流矢量,可以求出两帧间的仿射变换矩阵,两帧间的仿射变换如下:式中,vi(x)和vi(y)分别是点(xi, yi)的x方向和y方向光流值利用最小二乘法解上述方程,得到的仿射变换矩阵即为全局运动参数,a2,a5分别为水平运动矢量和垂直运动矢量主要实现代码如下:estimateGlobMotionLeastSquaresTranslation(int npoints,Point2f *points0,Point2f *points1,float *rmse){Mat_ M = Mat::eye(3,3,CV_32F);for (int i = 0; i < npoints; ++i){M(0,2) += points1[i].x - points0[i].x;M(1,2) += points1[i].y - points0[i].y;}M(0,2) /= npoints;M(1,2) /= npoints;if (rmse){*rmse = 0;for (int i = 0; i < npoints; ++i)*rmse += sqr(points1[i].x - points0[i].x - M(0,2)) +sqr(points1[i].y - points0[i].y - M(1,2));*rmse = std::sqrt(*rmse / npoints);}return M;}2.3 运动补偿基于主运动方向识别的运动补偿流程如图3所示。

      实现步骤如下所示1)运动状态初始化,基于相位相关的运动初判,实现对静态拍摄和运动拍摄及两种拍摄状态相互切换的识别2)运动估计参数输入,在进行运动状态初始化后,在电子稳像过程中连续输入视频的运动估计参数3)针对每两帧之间的运动矢量进行抖动判断,如果当前运动状态为静态拍摄,对当前水平方向运动矢量、垂直方向运动矢量进行判定,若大于一定阈值则判定为静态抖动,否则判定为非抖动;若当前运动状态为运动拍摄,且当前水平方向运动矢量、垂直方向运动矢量与主运动方向M不一致,则判定为动态抖动,若当前运动量与主运动方向一致,则判定为非抖动4)运动补偿,若判定为静态抖动则以当前运动矢量为补偿参数;若判定为动态抖动,则采用高斯权值的均值滤波对得到的运动矢量进行平滑,并利用滤波后的运动矢量对当前帧进行仿射变换,得到稳定的视频5)帧间运动方向识别,若连续F1帧的帧间水平方向运动矢量x、垂直方向运动矢量y均为正(负),则对帧间运动方向值P1(N1)计数6)瞬时主运动方向识别,若连续F2帧的帧间运动方向均为正(负),则对瞬时主运动方向值P2(N2)进行计数,若P2与N2之差大于预先设定的阈值T2,则存在瞬时主运动方向M1(其值1为正,-1为负);若P2与N2之差小于预先设定的阈值T2,则不存在瞬时主运动方向M1(其值设为0)。

      7)主运动方向识别,若连续F3帧的瞬时主运动方向都为正(负),则对瞬时主运动方向值P3(N3)进行计数,若P3与N3之差大于预先设定的阈值T3,则存在主运动方向M(其值1为正,-1为负);若P2与N3之差小于預先设定的阈值T3,则不存在主运动方向M(其值设为0),识别出静态拍摄和运动拍摄的相互切换8)运动状态识别,若能够识别出主运动方向,则判定当前运动状态为运动拍摄;若无法识别主运动方向,则判定当前运动状态为静态拍摄,采用固定帧补偿3 实验分析本算法在Visual Studio 2010平台基于OpenCV3.0 beta的C++语言开发算法,实验平台为Inter(R) Core(TM) i7-4790CPU @3.60 GHz,RAM 16 GB采用11个视频进行算法的实验验证,各视频缩略图如图4所示,编号1~4视频为仿真视频,编号5~11视频为真实架空输电线路巡视视频,其中5~9为可见光视频,10~11为红外视频视频1和视频2是仿真静态拍摄视频,生成方法是对静态图像加入随机抖动量生成多帧图像,并将多帧图像合成仿真视频,视频的抖动量和方向已知,可用于评价稳像精度和统计抖动判断误差通过计算估计抖动量和真实抖动量的均方根误差RMSE(Root Mean Square Error)评价稳像精度。

      RMSE定义如下:式中:(xi, yi)和(Xi, Yi)分别为视频第i帧与第i+1帧之间的估计补偿量和真实抖动量;N为视频总帧数抖动判断设置抖动量阈值的绝对值为0.5像素,即估计抖动量的绝对值大于0.5像素时判定为抖动以视频1的71~90帧为例,其帧间的真实抖动量、估计抖动量和抖动判断结果见表1所列视频3和视频4是仿真动态拍摄视频,生成方法是对平滑视频加入具有一定方向性的随机抖动量合成仿真视频,视频的抖动方向已知,可用于统计抖动判断误差仿真视频稳像处理结果见表2所列,抖动判断精度平均值为91。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.