• 美文
  • 文章
  • 散文
  • 日记
  • 诗歌
  • 小说
  • 故事
  • 句子
  • 作文
  • 签名
  • 祝福语
  • 情书
  • 范文
  • 读后感
  • 文学百科
  • 当前位置: 柠檬阅读网 > 范文 > 正文

    无人机光流跟踪检测新方法

    时间:2023-04-17 08:20:03 来源:柠檬阅读网 本文已影响 柠檬阅读网手机站

    贺 勇, 高正涛, 邓 婷

    (长沙理工大学电气与信息工程学院,长沙 410000)

    无人机凭其优秀的飞行能力和远距离操作能力在很多领域得以应用[1-6],在传统的无人机计算系统中,GPS和气压计作为定位追踪的首选,但在信号较差情况下,无人机的定位存在精度差、跟踪不及时、机身不能较好稳定的问题。因此,通过视觉进行无人机定位追踪成为近年来各大院校的研究目标,其中光流法在无人机中的应用越来越多,成为无人机视觉导航算法中的热门应用。但是光流算法通常用在环境较好的条件下,因此在有遮挡等恶劣环境中对光流算法进行改进具有重要的实际价值和研究价值。

    为了提高算法的快速性,李小红等[1]提出了一种新颖的快速目标检测算法,基于ORB特征的特征点匹配算法,结合最小二乘法进行运动补偿,同时使用帧差法来获得运动目标,算法具备良好的快速性,但是在复杂环境中可靠性较低;
    戴雪梅等[2]结合快速鲁棒特征点(SURF)算法,将ORB算法改进为SURB算法,利用具有尺度不变性的SURF算法特征点,构建ORB算法描述子,同时对图像进行分块处理,有较高的实时性,但是由于大量减少了特征点的读取区域,使得特征点数目较少,处于突变环境中的无人机鲁棒性较差,不能进行精准导航;
    樊彦国等[5]将ORB算法和随机抽样一致(RANSAC)算法结合,然后创新性地采取梯度采取模式再对图像构建分块,最后利用RANSAC算法随机取样检测,可以实现无人机的定位导航,大幅减少了错误匹配率,但是复杂的算法大量增加了运行时间,尤其是无人机下方环境复杂度较高的情况下,过度复杂的算法导致综合环境下实时性较低。

    本文为了解决光流算法跟踪精度不高、可靠性不强的问题,提出了一种基于卡尔曼滤波预测的无人机光流跟踪算法。该算法流程为将LK光流算法和卡尔曼滤波相结合,利用ORB算法提取特征点并送入LK光流金字塔中,通过双向追踪得到特征点,并且利用前后双向预测跟踪估计下一帧的特征点,同时校验并补充当前帧特征点,在消除错误点后得到由初步可信点与预测可信点组成的点集坐标并进行位姿计算,由预测帧的快速计算性弥补前后双向算法复杂度的时间。

    无人机改进匹配跟踪算法如图1所示。

    在定位跟踪中,通过分析无人机返回的当前帧和其他帧图片,利用改进的角点检测算法分析每一帧特征点的数量和位置[7],将得到的特征点利用LK光流算法进行特征点跟踪,对不同帧数的特征点位置变化进行分析,对于相邻帧距离变化小的特征点,采用改进的前后双向跟踪策略,对于变化距离较大的特征点采用改进的可信点匹配过滤函数进行过滤,筛选出适用于自适应插入点算法的特征点,同时检测错误点并将其舍去。最后将得到的全部可信点通过自适应加权滤波对无人机返回信息中的高斯白噪声等进行过滤,通过再次对比设定的阈值,反馈信息并将其送入无人机进行相关的解算。

    1.1 光流算法

    光流算法是一种经典的基于两帧图像特征点之间关系的匹配算法, LK光流算法的原理就是通过分析前后两帧图像的像素点等差异,在信息丢失最小的情况下,将真实的三维世界的运动转化成计算机二维图像,其使用需要满足3个假定条件[8-10]。

    1) 前一帧图像中特征点H(x,y)与后一帧图像对应点E(x,y)的亮度和颜色相同,即

    Color(E(x1,y1))=Color(H(x2,y2))

    (1)

    Light(E(x1,y1))=Light(H(x2,y2))

    (2)

    式中:Color(·)表示对像素点颜色的函数值;
    Light(·)表示对像素点亮度的函数值。

    2) 前后两张图像之间特征点的运动是不间断且细微的,即

    F(VEX1,VEY1)=F(VHX2,VHY2)

    (3)

    式中,VEX1,VEY1,VHX2和VHY2分别表示E(x1,y1)和H(x2,y2)的特征点在x,y方向速度的偏导数。

    3) 相邻两帧图像之间对应像素点的2D瞬时速度场相同,即

    VFH=VFE

    (4)

    式中,VFH和VFE分别表示H(x2,y2)和E(x1,y1)的瞬时速度场。由3个假设条件得到的光流约束方程为

    ΙXVX+ΙYVY+ΙT=0

    (5)

    式中:ΙX,ΙY表示2D光流中的对应点在x,y方向的偏导数,可以由两帧图像直接得出;
    VX,VY表示对应点在x,y方向上的光流值;
    ΙT表示图像像素点亮度关于时间的导数,通过光流算法可以得到不同帧数图像的特征点位置等信息。

    1.2 卡尔曼滤波

    卡尔曼滤波通过分析两帧的连续点之间的关系,经过一系列的加权推算,通过先验值和最新观测数据得到的值经过一系列加权平均来更新状态估计,而其他非递推类型算法中没有先验估计值,估计的结果均由观测数据的结果计算得出。其可以由无人机返回的前帧图像预测下一帧图像的位置,在无人机面对复杂环境时有重要跟踪作用。

    卡尔曼滤波对于干扰大多是高斯白噪声的无人机滤波有显著的作用,同时用于后文预测跟踪,为改进算法提供了快速性。

    1.3 角点检测

    无人机进行光流计算时,采用LK光流法可以得到稀疏的光流场,可以精简计算量从而提高算法的执行效率,但是由于稀疏光流算法计算过程会丢失信息从而导致算法的精确性难以保证。与其他算法相比,LK光流算法迭代计算得到的稀疏光流场对无人机在速度小时偏移位姿计算有更加精准的光流,考虑到光流算法中所有的像素点都是符合高斯分布以及正态分布的,本文针对连续图像,通过提取特征点,根据RGB特征点的不变性可以得到更加稳定的光流,最后通过卡尔曼滤波得到无人机的估计光流,并且使用特定的约束条件来验证过滤过程的输出。

    1.4 特征点跟踪

    使用LK光流迭代算法确定特征点的光流。对相邻两帧的特征点分析[8,11],考虑使用独立分量分析方法在时间t检测到物体。设(VT,ST)为图像中特征点位置。

    图像T+1中相同点的位置(VT+1,ST+1)表示为

    VT+1=VT+DU

    (6)

    ST+1=ST+DS

    (7)

    其中,GT(DS,DU)为像素点的光流位移矢量。定义无人机误差函数为

    (8)

    式中,WS和WV表示以矢量GT(DS,DU)为中心的2D窗的大小。

    常规的无人机采用的都是两帧图像特征点的直接匹配法,将汉明距离小于最小距离两倍作为判断依据。当环境较暗特征点读取不准确或者图像中有多处区域纹理类似时,依然会将两帧图像中的错误点当成特征点,导致匹配时出现大量错误,使得无人机出现悬停不稳定等情况[12]。对此,本文就特征点的匹配规则及相关算法进行改进。

    现阶段无人机常用ORB特征点提取算法得到图像特征点。本文算法通过求出预测插入可信点和初步可信点来提高精确度,具体内容如下。

    2.1 角点检测

    飞行过程中无人机相机送回图像,通过角点检测算法对比当前帧与下一帧特征点的数量和位置,将特征点信息保存并传递。由于特征点符合高斯分布,噪声也符合高斯分布,由Harris角点检测法可得

    (9)

    (10)

    其中:P(f(x))为光流的分布,可以求出特征点的X方向和Y方向的光流;
    M为像素的各个方向灰度平均值;
    σ为在各个方向上的光流偏差;
    GX和GY为图像上像素点的灰度值;
    ω(X,Y)为图像每个点的灰度值。由条件随机场(Conditional Random Field,CRF)算法可知像素点的灰度值

    C(x3,y3)=detM-K(Mt)2

    (11)

    式中:式(10)中像素矩阵特征值为γ1和γ2,Mt为特征值之和;
    在无人机悬停时取经验值K=0.05。当灰度值C(x3,y3)超过预设值时,满足角点的灰度定义,取为角点。

    2.2 LK光流分析

    LK算法在于通过最小化误差函数来计算位移向量(du,dv)。

    对角点采用投影公式计算区域内像素点的光流阈值

    Δ=Vf/h

    (12)

    式中:V为无人机摄像头的位移速度;
    f为无人机摄像头的焦距;
    h为无人机机身高度。当选择的光流区域的阈值低于光流点时,通过相似性函数进行筛选,即

    (13)

    式中:P*为光流值;
    r(pi),g(pi),b(pi)分别为像素点的红绿蓝色彩强度。

    2.3 确定初步可信点

    采用特征点双向匹配法对选取的特征点区域进行追踪,如图2所示,通过LK金字塔最顶层得到前一帧对应的特征点,在获得所有特征对应后,使用双向光流跟踪方法去除错误的特征点。

    图2 特征点双向算法原理图

    图中的实线表示光流跟踪的过程,特征点5对应于特征点1,特征点6对应于特征点2。现在执行反向跟踪,图中的虚线表示从特征点3到特征点1的反向跟踪过程。如果特征点5和特征点3之间的距离d1小于0.6像素,特征点5和特征点1之间的对应关系正确。相反,特征点5和特征点1之间的对应关系无法确定可信度,再次考虑特征点1与另外随机一个已经确定为初步可信点的特征点2的距离,即特征点1与特征点2的距离d2,特征点5与特征点4之间的距离d3,特征点3与特征点6之间的距离d4,得到可信点匹配过滤函数

    (14)

    能够获得初步可信点和错误点,将其送入下一步。反向跟踪可以提高光流跟踪的精度,并且得到所需要的初步可信点特征集合。

    2.4 确定预测点与错误点

    采用自适应插入匹配帧法,对有较多匹配误差的帧数使用自适应预测区域替换错误区域,对当前帧预测可信点较多时将其设为跟踪帧。选择对应的匹配误差区域,利用当前帧与上一个未插入补充帧的图像,将新得到的预测特征点与当前帧特征点进行替代,得到预测点,将预测点重新进行匹配,处于阈值内则将预测点设置为预测可信点,否则作为错误点舍弃。

    存在较多匹配错误的特征点,通常因为无人机处于镜头被遮挡或者光线突变,拟采用自主插入方案进行如下处理。

    1) 将光流追踪的难度通过数值量化,有

    (15)

    式中,ξFI是第I帧中的特征数,从而得到光流的追踪难度会随着光流的进程而增大。

    2) 设置算法初始帧,将图像第一帧和上个循环结束后的初帧设置为首帧并对特征点进行选取。

    3) 将跟踪误差和跟踪错误点在阈值范围内的帧设置为跟踪帧,接下来对跟踪帧进行判断,将帧数n=2设置为匹配帧并执行特征检测,接下来计算光流跟踪难度以及根据前后双向光流将接下来的帧设置为跟踪帧并执行特征跟踪,算式为

    ni=N(1-η)

    (16)

    式中:N表示不添加新特征点的平均连续跟踪帧数;
    ni为自适应跟踪时间。

    4) 重复步骤3),直到结束。根据测试,使用改进LK光流跟踪无人机返回图像中的特征点,在没有人为干预的情况下,平均可以稳定跟踪15帧。之后由于特征点太少或误差较大,跟踪无法保证质量。因此,在跟踪时,N取15左右的数字,在更为复杂的环境中可以适当减小N的设置。得到自适应插入算法如图3所示。

    图3 自适应插入算法原理图

    当无人机得到相当的特征点后, 由于采用插入帧的方法可以保证特征点的数量足够,因此可以使用通用的3D-2D方法计算运动,得到两帧n个特征点对应。场景点和特征点之间的关系表示为

    (17)

    式中:si为场景点的深度;
    (ui,vi,zi)为特征点;
    (xi,yi,zi)为场景点;
    Kc为相机内部参数;
    Rc,Tc为相机外部参数。最小化重投影误差来估计Rc和Tc,即

    (18)

    式中:ui为特征点;
    pi为场景点;
    ρ为Huber函数;
    ∑为协方差矩阵求和。

    将有误差区域的特征点采用自适应预测跟踪进行替换,输出最终得到的预测可信点与初步可信点。

    2.5 确定准确点

    将初步可信点和预测可信点采用反向预测光流追踪和KNN-RANSAC进行匹配,步骤如下。

    1) 将返回的点载入近似相邻库(Fast Library for Approximate Nearest Neighbors,FLANN)匹配器。

    2) 利用K最邻近(K-Nearest Neighbor,KNN) 算法对可信点所对应的描述集合进行筛除操作。

    3) 利用特征向量之间的欧氏距离筛选好的描述集及对应点集。

    4) 通过随机抽样一致(RANSAC)算法消除点集中的误匹配点获得最终匹配对集,若误差来自预测帧则保留,否则删除。从而得到满足无人机导航和追踪要求的准确特征点,使光流值更加准确,为光流解算无人机机体速度和姿态消除了错误的图像信息。

    本文对改进ORB-LK(ORB结合LK光流算法)特征光流提取效果以及在实际无人机室内导航应用中的算法性能(阿木实验室P200无人机上)进行验证与理论分析。对比现有的ORB-SLAM(ORB结合SLAM算法)和ORB-LK算法,影响性能的主要参数是每帧中特征点数量和特征点匹配误差及匹配时间。

    3.1 算法的效果分析

    为提高无人机LK算法中光流信息的准确度,根据金字塔LK光流跟踪特性,使用本文方式对 ORB特征进行了误匹配筛选改进。3种算法提取的特征点的图像采用了不同环境,光流金字塔的层数均为7,同时采用绝对轨迹误差的均方根误差来评估算法精度,利用平均处理时间来评估算法的响应速度。

    特征点提取实验中分别采用Harris角点检测算法、ORB光流算法和本文改进的双向预测跟踪算法在单纯环境、复杂环境、有遮挡环境、强光环境和弱光环境5个不同场景下进行光流特征点提取分析,结果如图4和表1所示。图4中自上而下分别为Harris,ORB和本文算法的提取结果。特征点的数量关联算法的可靠程度,匹配时间关联算法的运行速度,误匹配率关联算法的精度。

    图4 特征点提取对比图

    表1 不同环境中算法对比Table 1 Comparison of algorithms in different environments

    对图4和表1分析可知,特征点的数量可以反映算法的精确程度,可以检测到的有效特征点数量多则无人机飞行的准确性越高,匹配时间可以反映算法的复杂度,匹配时间过长会影响无人机正常飞行和反应时间,误匹配率表征算法的准确性,低误匹配率可以提高无人机飞行的可靠性。图4中Harris角点检测算法能够检测的特征点比较少,都集中在光流值较大的区域,对于复杂区域的特征点提取误差有所升高,ORB算法相比Harris算法在特征点的提取数量方面有增加,但是随着数量增加错误率也相对较高,在有遮挡的环境中错误率更高,更容易将遮挡物的边角视为特征点,本文改进的算法在ORB算法的基础上进行预测替代,并由双向检测算法检查特征点是否满足要求,相对ORB算法过滤了部分特征点,增加了少量预测特征点,总体特征点数目有所下降,但是具有更好的准确性以及面对复杂环境的可靠性。本文算法由于增加了双向跟踪,增大了计算的复杂度,提高了算法执行难度,但由于采用了自适应插入法,由原本的相邻帧的特征点关系计算变为特征点预测计算,可以大量减少误差较大的帧的运行时间,在运行时间略微减少的基础上大幅提高了算法的精度。

    3.2 无人机飞行效果分析

    本文搭建的实验平台包括电器执行机构、飞控计算机MCU、感知和任务管理计算机CPU、传感器以及环境配置、地面控制系统和仿真平台Gazebo等。如图5(a)所示,不同的模块负责收集无人机的位姿速度和高度等信息,送入TX2板卡中进行集成。

    无人机仿真使用Gazebo进行仿真,如图5(b)所示,绿线表示搭载改进算法无人机的飞行轨迹,红线表示搭载原始光流算法无人机的飞行轨迹,改进算法仿真结果在模拟环境下与原始算法效果误差差距减小,均可满足理论跟踪要求。考虑无人机在真实情况下环境更为复杂多变,在仿真结果满足的情况下采用真机进行实验更能反映算法的实用性。

    为验证搭载本文算法的无人机的性能,分别采用Harris算法、ORB算法和本文改进算法进行综合环境下无人机定位实验。多次试验平均飞行时间190 s,无人机采取热启动,时间平均5.7 s,从第20 s开始进行定高飞行,第100 s左右人工遮挡镜头3 s作为遮挡环境,第190 s左右进行自动降落。图5(c)和图5(d)是无人机定位的X,Y方向的偏移量。在定位时无人机在X,Y方向偏移的稳定性,可以由线条的波动程度反映,波动程度越小抗干扰能力越强。从图5(c)和图5(d)得出,改进算法在常规环境和添加遮挡时,在X,Y方向的偏移量更小,拥有更好的飞行稳定性。实验设定的飞行高度为160 cm,高度曲线在预设高度的波动越小表征算法拥有更好的无人机定高能力。图5(e)是无人机跟踪高度变化图,可以看出,无人机在前90 s起飞至稳定阶段,稳定性均强于其他算法,稳定时,在预设高度160 cm附近偏移量最小,在第100 s施加遮挡后高度波动增大的幅度最小且稳定高度的速度最快,依然具备良好的定高能力,因此更适用于常规环境和存在遮挡物环境的定高。

    图5 无人机实验平台及真机实验结果图

    通过图5(f)实验结果比较图5(c)和图5(d),分析得到,当无人机起飞后,Harris算法和ORB算法定位不理想,高度偏移量均接近10 cm,由于特征点数量较少,高度和角度检测数据不够,导致高度上下限差距大,且图5(f)显示其他算法定位方向曲线波动很大,结果偏差较大。ORB算法由于其大量的特征点,当无人机出现偏差时短时间内曲线波动变化不会很大,但是准确率较低,当面对人工遮挡时误差更加剧烈,最终定位误差依然较大。本文算法相较于其他算法,无人机在简单环境下飞行时能够更稳定地维持飞行高度,在复杂环境下能够极大地减小误差,使得无人机飞行保证算法运行时间不增加,并提高无人机定位导航性能。

    本文针对综合环境中无人机GPS定位误差较大,传统光流法定位的准确度不高,面对复杂环境的抗干扰较差的问题,在ORB检测算法和光流金字塔的基础上,采用前后双向特征值法进行特征点筛选,对综合环境中的干扰采取自适应预测帧插入,提高算法可靠性。实验结果验证了,在不变更其他硬件的条件下,算法运行时间基本不变,定位误差仅有原始算法的10%,可靠性和精确性良好,适用于综合环境下无人机导航定高,具备良好的实用性和参考价值。下一步工作将着力降低算法复杂度,进一步提高算法的快速性。

    猜你喜欢光流像素点误差利用掩膜和单应矩阵提高LK光流追踪效果导航定位学报(2022年5期)2022-10-13基于局部相似性的特征匹配筛选算法现代电子技术(2021年1期)2021-01-17角接触球轴承接触角误差控制哈尔滨轴承(2020年2期)2020-11-06Beidou, le système de navigation par satellite compatible et interopérable今日中国·法文版(2020年7期)2020-07-04压力容器制造误差探究中国特种设备安全(2019年1期)2019-03-13基于5×5邻域像素点相关性的划痕修复算法上海大学学报(自然科学版)(2018年5期)2018-11-02基于canvas的前端数据加密电脑知识与技术(2018年35期)2018-02-27基于逐像素点深度卷积网络分割模型的上皮和间质组织分割自动化学报(2017年11期)2017-04-04九十亿分之一的“生死”误差山东青年(2016年2期)2016-02-28一种改进的基于全局最小能量泛函光流算法中北大学学报(自然科学版)(2014年3期)2014-11-22
    相关热词搜索: 无人机 新方法 跟踪

    • 文学百科
    • 故事大全
    • 优美句子
    • 范文
    • 美文
    • 散文
    • 小说文章