何建方,席 涛,张 凌
(韶关东阳光自动化设备有限公司,广东 韶关 512721)
小型旋翼无人机在侦察、探测和监控等领域扮演着越来越重要的角色。面对不同的复杂任务,小型无人机智能化是当前的必然趋势[1],而自主定位是其中最重要的组成之一。
视觉定位是当前无人机自主定位导航最常用的手段[2-4]。慕尼黑科技大学在四旋翼平台上搭载RGB-D摄像头,建立室内环境的稠密地图,完成无人机的自主定位和导航[5]。但是采用的SLAM算法需要远程依赖地面站,导致控制延迟以及成本高。
本文设计一种小型化、轻量级的无人机视觉定位系统,研究了单目视觉定位算法,设计了自主定位系统的软硬件架构。验证实验表明,本文设计的轻量级视觉定位系统可以实现无人机单目定位。
本文搭建的多旋翼无人机平台包括Pixhawk飞行控制板、视觉传感器、机载嵌入式计算机。搭建的视觉定位无人机平台如图1所示。
图1 视觉定位旋翼无人机平台
飞行控制板Pixhawk使无人机执行自主命令和控制飞行。Pixhawk是一种高性能的自动驾驶仪,以两片STM32芯片为主从控制器,并且集成了三轴陀螺仪、三轴加速度计、高度计等MEMS传感器。将传感器采集的数据发送给处理器,采用扩展卡尔曼滤波(EKF)算法对无人机平台的位置进行估计[6]。
机载嵌入式计算机是视觉定位信息处理的核心。本文的机载嵌入式计算机采用ODROID XU4控制板。从参数上来看,ODROID XU4的整体性能基本和目前的中端智能手机相似,它搭载了主频为2 GHz的三星Exynos5422八核处理器与2GB RAM,主板上设有以太网接口、2个USB 3.0接口、1个USB 2.0接口、1个HDMI视频接口以及1个GPIO接口。由于采用了ARM架构,ODROID XU4可以运行基于ARM架构所设计的操作系统,包括Debian,Ubuntu以及 Android等。
视觉定位系统中所有的视觉信息处理和控制均在机载计算机上完成。因此,需在机载计算机上安装Ubuntu系统,实现视觉定位算法以及和无人机的通信。另外,在Ubuntu系统上安装机器人操作系统(Robot Operating System,ROS),帮助建立定位算法、模块通信、采集传感器数据。ROS主要应用在机器人平台操作与控制系统的软件框架,其最大优势为点对点设计,工具包丰富,系统模块化,非常便于应用。
机载嵌入式计算机与Pixhawk飞行控制板之间的通信接口节点是实现机载计算机实时获取飞行器飞行状态和自主控制飞行状态的关键。该节点主要通过Mavlink协议接收多旋翼飞行器的心跳包、姿态角数据包和位置数据包等,并按类别以特定消息格式将数据发布到不同的主题上。同时订阅了vision 和position 等主题,再以Mavlink协议的形式将这些主题数据发送到飞行控制板,获取外部传感器的数据并实现自主飞行控制。自主控制节点的设计原理可以总结为订阅飞行器的当前位置主题,提供位置反馈,再将位置控制命令发布到通信节点的/mavros/setpoint/local_position主题上。通过对无人飞行器状态的实时监测调整位置控制信息。
本文无人机视觉定位系统框架如图2所示,描述了硬件系统和软件系统各组成部分之间的连接关系。
本节主要研究一种实时、稳定的单目视觉定位算法,该算法能够通过采集单目相机信息,在机载计算机上实时运行,实现无人机的定位。由于单目相机获得的视觉信息是没有深度的,因此必须移动相机之后能估计它的运动,优点在于成本低,处理视觉信息消耗的计算资源小。
SVO(Semi-direct Visual Odoemtry)是瑞士苏黎世理工学院提出的一种半直接法视觉里程计,可建立稀疏地图,实现实时的无人机定位[7]。SVO里程计的跟踪线程框架如图3所示。SVO框架包括了运动估计和建图两个线程,采用稀疏关键点的灰度值匹配法得到估计位置。
图3 SVO里程计算法流程
该算法使用直接法最小化稀疏关键点的重投影残差来获取位置,假设Tk,k-1为位置变化,通过不断优化位置Tk,k-1最小化残差损失函数,如公式1所示。
(1)
其中,δI(T,u)为相邻图像帧对应关键点的灰度值差,如公式2所示。
δI(T,u)=Ik(π(T·π-1(u,du)))-Ik-1(u)
(2)
本节将对设计的无人机视觉定位系统进行试验分析,验证视觉定位的实时性和稳定性。以开源数据集airground_rig_s3_2013-03-18_21-38-48.bag作为图像输入,在本文设计的硬件系统下,运行视觉定位算法,运行结果显示,图像处理帧率在10 fps~25 fps,视觉定位系统数据集运行实验如图4所示。视觉定位系统单目相机运行实验如图5所示,帧率平均值为15 fps。
图4 视觉定位系统运行数据集实验
图5 视觉定位系统单目相机运行实验。
多旋翼无人机的应用需求促进了智能化的趋势,在未知和复杂环境下,视觉定位成了重要手段。本文提出了基于单目视觉的无人机定位系统,搭建了定位系统的软件硬件架构,研究了单目视觉定位算法。实验验证结果表明本文的定位系统满足实时性和稳定性要求。