1、引用格式:符强,孔健明,纪元法,等 基于双目视觉的无人机实时测距算法 电光与控制,():():基于双目视觉的无人机实时测距算法符 强,孔健明,纪元法,任风华,(桂林电子科技大学,广西精密导航技术与应用重点实验室;信息与通信学院,广西 桂林;卫星导航定位与位置服务国家地方联合工程研究中心,广西 桂林)摘 要:无人机对目标进行测距时,其算法的实时性和准确性一直是研究的重点。针对算法的实时性,提出双向搜索策略以及采用三条数据流并行处理实现 加速,并引入蝶形排序算法,提高了运算效率;针对算法的准确性,提出改进 算法与改进 算法融合,有效地解决了算法过度依赖中心像素的问题;为了降低算法复杂度,在基于背景
2、差法的目标检测中引入移动平均算法;针对无人机平台存储空间有限,提出存储数据优化方案,减少了数据的占用空间。在 数据集下与 算法、算法进行对比实验,采集室外场景与 算法进行测距性能对比,最后实现室外无人机测距。通过大量实验数据验证了所提算法可满足无人机实时测距的高精度要求。关键词:无人机;双目视觉;双向搜索;蝶形算法;移动平均算法中图分类号:文献标志码:(;):()()():;收稿日期:修回日期:基金项目:国家自然科学基金(,);广西科技厅项目(桂科);“认知无线电与信息处理”教育部重点实验室();广西精密导航技术与应用重点实验室();桂林电子科技大学研究生教育创新计划项目()作者简介:符 强(
3、),男,海南东方人,硕士,副教授。通讯作者:纪元法(),男,山东聊城人,博士,教授,博导。引言 年,与 发明了自动陀螺稳定器,使飞机在飞行中自动保持机体平衡,无人飞行器()由此诞生。百年间,固定翼、四旋翼、多旋翼等各式无人机相继问世,无人机实用价值越来越受到重视。无人机具有体积小、稳定性强、成本低等诸多 第 卷 第 期 年 月 电 光 与 控 制 符 强等:基于双目视觉的无人机实时测距算法优势,在军事和民用领域得到了广泛的应用。为了更好地完成城市交通监控、灾后搜救、军事侦察等任务,同时实现目标检测、目标跟踪、自主避障、视觉测距等功能,对算法的实时性和准确性均有越来越高的要求。目前,基于视觉的测
4、距主要有单目和双目两种:单目测距通过建立几何模型来估计距离,存在误差大、精度低等问题;双目测距通过左右图像形成视差图,利用三角测量原理计算距离,计算过程更加直观、准确。双目视觉测距难点在于立体匹配精度和效率。毛先胤等提出了一种加权最小二乘滤波法实现视差平滑,根据重投影计算物体深度信息,但效果不是很好,测距精度较低;李春明等通过多平台获取目标三维信息,验证方案可行性,但匹配速度较慢,视差图效果较差;王吉岱等提出了一种利用左摄像头对目标物进行预设取点,再通过双目对所取点实现测量并更新距离,该算法具有速度快、实时性高等优点,但测距精度有待改进;王连增等提出了利用 边缘检测算法对立体匹配进行约束,提高
5、了 算法的匹配速度,但从视差图角度来看,效果不好;卢艳军等提出了 工具箱与 视觉库结合的测距方案,用 算法处理视差图,其运算效率虽然是 算法的 倍以上,但从实时性上来说仍有待提高;盛明伟等提出了改进的 特征匹配算法,获得了准确的测量精度,但 算法对配置要求较高,算法运算时间较长,不满足实时性要求。针对上述问题,考虑到无人机测距的室外条件,在双目立体匹配阶段,提出中心像素均值化来改善传统方法过度依赖中心像素的弊端,并融合引入双向搜索策略的 算法降低室外光照对算法的影响。在目标检测阶段,为有效检测到运动物体,引入背景差法和移动平均法,利用 算法有效地实现动态物体的跟踪并实时更新搜索窗口。设计 条数
6、据流并行处理实现系统 加速,并引入蝶形优化算法,有效地提高了算法的执行效率,满足无人机对于实时性和测距精度方面的高要求。双目视觉立体匹配技术 传统()算法匹配代价计算是立体匹配第一步,是衡量视差搜索窗口内左、右图像对应像素的相似度,即匹配代价越小,两点越相似,如下(,)(,)(,)()式中:为代价值;,分别为左、右图像灰度值;(,)为像素点坐标;为视差搜索范围。中心像素均值化改进策略 算法过度依赖中心像素,若中心像素受到外部干扰就会影响计算结果,导致误匹配。设定某阈值,若中心像素与窗口内灰度均值差的绝对值大于设定阈值,则判定中心像素受到外部干扰,此时窗口内灰度均值取代中心像素;反之,中心像素不
7、变。判定规则为(,)(,)(,)(,)(,)(,)(,)()式中:为最终判定的中心像素大小;,分别为中心像素和窗口内灰度均值;为设定的阈值,取为。引入阈值判别后的重计算结果基本与中心像素未受到外部干扰相近,从一定程度上增强了算法的稳定性。传统 算法 变换根据中心与邻域点的灰度关系来体现中心像素匹配代价,根据灰度大小生成相应二进制码,解算生成码的汉明距离来代表中心点的相似性,假设邻域窗口大小为()(),如(),()()()()()()(,)(,),(,)()式中:(),()分别为中心点与邻域内各像素灰度;为拼接符;和 为像素索引,编码方式如图()所示。图 算法改进前后编码方式 对图像进行 变换得
8、到二进制匹配代价,寻找最优视差。双向搜索策略 变换窗口越大,包含的图像信息越多,匹配代价也就越准确,但无限增大窗口会加大对内存空间的需求,考虑最后需要进行无人机算法验证,因此,不得不考虑内存的占用问题。基于模式识别中()算子中有一种表达:只对窗口内中心对称的像素点对进行判别,即,(,)()()()()第 期式中:()为符号函数;为窗口内等距分布的像素灰度;为像素索引;为邻域半径;为邻域像素的个数;为阈值。基于 思想,提出双向搜索策略,让窗口内关于中心像素对称的像素进行对比,以 模板为例,如图()所示。图()详细地展现了改进策略的优越性,二进制码长减少了一半,降低了所需的数据存储空间,且双向搜索
9、大大提高了算法的运算效率,改进后的算法依旧体现的是像素关系,所以代价计算效果并未受到影响。融合算法评估 算法适于图像平缓区,算法适于图像丰富区,为了发挥两种算法的优势,同时基于 等提出的 思想,引入自适应权重的融合算法,具体实现如下(,)()(,),(,),()()()其中:(,),(,)分别为融合算法和引入双向策略 的匹配代价;为一种变换,将匹配代价映射到 到 中;为权重;为中心像素的梯度值;为映射系数;为梯度系数。双目测距算法 双目相机模型双目相机采集的图像只体现二维信息,需找出二维图像与三维信息对应关系,构建二维图像与全局坐标系映射模型为()式中:,为内参矩阵;,为外参矩阵;为相机焦距;
10、,为坐标轴上每个像素的物理长度;为光轴;(,)为像素坐标;(,)为三维坐标;,分别为旋转和平移矩阵。基于 的双目标定标定使用 棋盘格,每小格为 。使用 标定获得的相机内外参数将用于测距研究,图 所示为左目相机采集的 组图像数据,标定结果见表。图 左目相机采集的数据 表 标定结果 参数左目相机标定结果右目相机标定结果焦距,主点,倾斜系数 畸变系数 旋转、平移矩阵分别为 ,。双目测距原理双目测距主要采用三角测量的原理,图 为其二维平面示意图。图 三角测量原理 图 中,与 相似,根据对应边成比例,有 ()()式中:为左、右目相机间距离;,分别为左、右像素坐标系下的横坐标,两者差值即为视差;为点 到双
11、目相机基线的距离。将式()改写为第 卷电 光 与 控 制符 强等:基于双目视觉的无人机实时测距算法 ()化简为 ()双目相机焦距 已知,距离 可以测出,视差 通过立体匹配得出,根据三角测量原理可以求解目标物体到双目相机的距离。目标检测算法 基于背景差值法的目标检测算法背景差值法是一种有效的目标检测算法,基本思想是先通过选取几幅图像作为图像背景模型,再通过双目相机捕捉当前帧,与背景图像模型灰度值相减,对相减后结果进行当前帧是否存在运动物体判定,若差值大于所设定的阈值,则判定为当前帧存在运动物体,获取运动物体信息,如(,)(,)(,)(,)其他()式中:为图像帧数;(,)为图像序列;(,)为图像背
12、景模型;为阈值。背景差值法虽然对于检测运动物体有着良好的效果,但难点在于背景可能会受到光照变化干扰,需更新背景和重新建模。引入移动平均算法思想:假设一个数组 中内容是变化的,数组内总和也是变化的,当 个数填充后进行一次求平均,以后每次更新,数组都将进行一次更新,如(,)(,)()(,)()式中,(,)为背景图像;(,)为第 帧图像;(,)为图像坐标;为更新速度。引入 算法为了实现当前帧运动物体的有效检测和跟踪,引入 算法:根据运动物体的颜色概率分布建立颜色直方图,根据背景实时更新搜索窗口大小和位置,定位当前帧运动目标中心位置,并预测下一帧该目标中心位置。步骤如下所述。)初始化搜索窗口 大小和位
13、置。)生成零阶矩、和 方向的一阶矩,即(,)()(,)()(,)()式中,(,)为坐标(,)处的像素值。)质心位置(,)(,)。()更新搜索窗口大小,将中心位置更新为质心位置。)重复),),当中心与质心距离小于设定的阈值或循环次数达到了最大值,停止运算,认定已达到收敛。实验结果与分析实验平台是一个双目四旋翼无人机,主要有飞控模块、双目视觉测距模块以及超宽带模块 个模块。双目视觉测距模块使用的是科瑞象双目摄像头,内部集成处理器。嵌入式平台搭载包括个四核 处理器,和 共用 内存。系统立体匹配算法优化对立体匹配模块进行系统 加速,代价聚合采用 条数据流并行处理,同时处理 个方向代价,提升算法效率。每
14、条数据流完成 个方向的运算,运算结束后再进行视差计算。代价匹配采用二维数据块(),每块,方向包含 个线程,设定 个二维网格(),其,方向将包含 个。每个 处理一行像素,利用循环依次处理同行中其他像素,每个像素全部视差由线程()一次性获得,如图()所示。为提升数据重复利用率,基准像素数组长度为,待匹配像素数组长度为,假定视差为 个像素,待匹配图前一个 存放前一段 个视差的像素代价,后一个 则存放紧接着的下一段视差的像素代价,如图()所示。图 优化方案 蝶形排序算法能够有效减少排序次数,其基本思想是相邻线程间值进行数据交换,将线程中原数据与新数据做比较,找出相邻线程间数据的最大值,使数据量减少一半
15、;接着间隔 个线程做数据交换,找出 个线程间最小值,数据量又减少一半,以此类推,直到 个线程数据缩减到 个数据为止,有效减少了比较次数,降低运算复杂度,大大提高了运算效率。第 期 算法测试 基于 数据集算法实时性对比选取 数据集进行算法运算时间测试,并与 算法、算法进行对比实验,结果见表。表 种算法在 下平均运算时长 算法 算法本文算法 本文算法与 算法的运算时长相近,都优于 算法,运算效率约为 算法的 倍。室外环境下深度测量基线选定 ,最大视差,双目采集图像分辨率为 像素 像素,采集树荫下车辆真实距离从左往右依次为 ,并与实时性相当的 算法进行对比实验,图 为算法视差图对比,表 为算法测距误
16、差对比。图 两种算法视差图对比 表 两种算法测距误差对比 实际距离测量距离 算法本文算法误差绝对值 算法本文算法 结合图 和表 可知,本文算法优于运算速度相当的 算法,且本文算法处理的图像视差图对光线有着很好的适应性,而 算法生成的视差图出现大量的误匹配区域。从测距角度,算法的误差随着距离的增加而陡增,而本文算法误差变化幅度相对稳定。无人机平台室外实时测距算法验证无论从算法运算时间还是实验仿真对比均可证实本文算法的可行性,使算法具备在无人机上实现的可能。为了避免大气折射光对测距的干扰,选择同一天气的相同环境进行无人机测距实验,图 展示了双目系统无人机实时测距场景。图 无人机室外实时测距场景 表 所示为无人机室外测距数据。表 无人机室外测距数据 序号实际测距测量距离误差绝对值相对误差 从图 场景的变化可以看出,无人机可以根据测量与目标的距离及时做出飞行的调整,且对于光线变化的适应性也较强。通过表 可知,本文算法能够准确实现运动物体距离测量,且定位精度保持在 以内,误差主要源于匹配阶段的精度不可能达到,且无人机室外测距时其稳定性受到大气压的干扰。第 卷电 光 与 控 制符 强等:基于双目视