基于阶层标识的无人机自主精准降落系统

2018-10-30 11:54张咪赵勇布树辉张臻炜杨君
航空学报 2018年10期
关键词:停机坪嵌套位姿

张咪,赵勇,布树辉,张臻炜,杨君

西北工业大学 航空学院,西安 710072

近年来,随着具有体积小、重量轻、隐蔽性好等特点的无人飞行器被广泛应用,迎来了无人机(UAV)技术大爆炸时代。其中多旋翼无人机系统更是因为结构简单、稳定性好、起飞降落方式灵活、自身占用空间小、转向性能良好等优点,成为民/商用及研究领域的热门。面对越来越多的无人机民用新需求,比如动态追踪拍摄[1]、快递行业定点投送物品[2]等,对微型无人机的自主精准降落技术[3]提出了新的挑战。

基于全球定位系统(GPS)导航[4]的自动降落是目前最常用的方法,但GPS引导自动降落有一定的不足。首先,不做特殊处理的GPS定位精度仅能达到10 m,对于地形复杂的区域,比如建筑群密集的城市,无人机很可能因为导航误差在低空进近区域坠毁;其次,GPS信号受非空气介质干扰大,在遮挡物较多的区域,比如森林,会造成误差增大甚至信号丢失;专业级高精度GPS设备成本昂贵,不具备经济实用性。

鉴于GPS的精度不高,有学者陆续提出了基于视觉的自动降落技术。其中,2014年上海理工大学的夏云龙等提出基于声源时延和气压高度传感器的无人机精确降落技术[5],该项技术在降落点安置声源,在无人机上构造基于全向性驻极体麦克风的正四面体麦克风接收阵列[6],利用声源时延技术计算无人机的俯仰角和偏航角,再通过无人机上安装的气压高度传感器感知无人机的高度,从而精确引导无人机降落。2016年南京航空航天大学吴赛飞等提出基于红外视觉的无人机自动着陆引导系统[7],通过在无人机上设计红外视觉识别标志,利用停机坪上的红外相机对无人机目标进行识别和定位并完成自主降落。同年,哈尔滨工业大学樊珑提出一种在无人机上完成所有计算的视觉定位方法[8],但此方法也需要借助超声波测距仪测量高度,再通过机载相机寻找停机坪上黑白相间的圆环降落标志的圆心计算出无人机的位置,完成自动降落控制。

然而以上方法存在一些共同的不足:

1) 仅支持无人机和停机坪一对一关系,无法支持多无人机同时降落。但在快递运输定点投送物品等实际应用中,需要多架无人机同时进行配送任务,以提高工作效率。

2) 易受降落环境干扰,对降落环境要求较高,很难完成精准降落。比如红外视觉识别标志在强光下很容易被干扰,或产生错误的识别。气压高度计极易受到温度影响,而超声波测距对气温变化和噪声很敏感,环境因素的影响都可能导致精度不高。

3) 在完成整个自主降落的过程中,需要其他设备(比如红外激光探测仪、气压高度传感器和超声波测距仪等[9-10])辅助完成定位、测高等任务。

为了解决上述问题,我们设计了一种多层嵌套Marker的阶层降落标识,并针对该标识提出了有针对性的快速检测识别及定位算法,实现了一套自主精准降落系统。经电脑仿真试验和无人机自主降落试验验证了系统的可行性和实效性。与现有系统相比,此系统具备以下特点:

1) 无须依赖其他设备就可以完成精确的相对定位、定高、定姿态等工作。

2) 抗干扰能力强、计算效率高,可在低成本计算平台上快速实现图像处理、无人机位姿计算等任务。

3) 所设计的算法可以为多无人机提供定位和降落信息。

1 系统总体框架

本系统由硬件和软件两部分构成,系统的整体框架与流程如图1所示。硬件部分主要包括机载摄像机、机载CPU处理器和机载飞行控制器。

对于本系统,在降落过程中将机载摄像机拍摄的实时图像传给机载CPU处理器进行处理,检测并校验停机坪上的降落标识估计无人机的位置和姿态;将相对位置、姿态信息发送给飞行控制器,从而控制无人机逐步逼近停机坪,最终实现无人机全自主降落。

图1 系统总体框架Fig.1 Overall framework of system

2 降落标识设计

无人机降落标识为用于辅助无人机视觉定位的基础,其设计需要满足以下要求:

1) 特征鲜明突出,容易被识别且识别应该尽可能鲁棒准确。

2) 为了能够在不同高度,或者多尺度成功定位,其应具有多尺度识别能力。

3) 该特征能够较好地辅助无人机进行相对定位。

为了使降落标识符合以上3点要求,提出了多层嵌套Marker的阶层降落标识设计,能够很好地解决一般情况下无人机对降落标识的需求。

Marker设计规则:每个Marker由N×N的黑白方格组成(根据编码的容量来选择N的大小,一般情况下N为5~7);每个Marker最外侧方格颜色一致,并根据内侧(N-2)×(N-2)的区域进行编码,组成独一无二的无符号整型编码值(ID)。根据最外侧颜色可将Marker分为白边和黑边两种,对于黑边Marker中的每个方格,白色多的是1,黑色多的是0,对于白边Marker则相反。无人机降落标识示例如图2所示。

如图2(a)所示的单个Marker设计,其ID对应二进制011 101 111,即239。由于识别此Marker在4个方向上观察不一致,为保证其唯一性,一般不允许Marker存在对称性,同时选择4个解析结果中的最小值作为Marker的ID,并记录获得最小值所在的方向,从而确定唯一的顶点顺序。虽然为了满足通用性,Marker采用了最简单的编码规则,但这样的设计同样可以满足利用冗余信息来使得ID检测更鲁棒的需求。

为了能在多尺度上提供定位信息,停机坪上设计的降落标识由单个或多个Marker镶嵌而成。在降落标识(本身为Marker)内嵌套设计规则相同但规格较小的Marker,所有的Marker采用统一的方格数目。嵌套Marker有很多规格,分布在阶层降落标识的内部。这里的多种规格是指嵌套Marker的大小不一样,即边长不一样,并且每个嵌套Marker内部的黑色、白色区域分布也是不同的,这样每个嵌套Marker的ID互不相同。虽然多个Marker之间可以相互嵌套,但嵌套不能影响对父Marker的ID判断,为满足这个要求,对于父Marker的每个单元格改动不能超过三分之一。针对停机坪上设计的降落标识的中心GPS位置、各停机位Marker的ID和顶点位置已知。

图2 无人机降落标识示例Fig.2 Landing markers of UAVs

如图2(b)和图2(c)分别是为单个无人机和多个无人机泊位停机坪上设计的阶层降落标识示例。图2(b)的单泊位停机坪中,停机位采用5×5的Marker作为阶层降落标识,编码为9位。其外侧大Marker的ID对应数字为239,内侧Marker对应二进制000 011 110,即30。对于图2(c) 的多泊位停机坪,每个停机位采用7×7的Marker作为阶层降落标识,编码为25位。多泊位停机坪采用汉明编码[11],可以保证在每行出现一个二进制错误时给予纠正,同时也保证ID之间至少存在每行一个以上的二进制不同,相当于文本所用编码中的多个编码可被看做同一个编码,并映射到统一的顶点。

3 自主精准降落算法

如图3所示,当无人机接收到飞行控制的降落指令(停机坪GPS位置信息、无人机待降落停机位Marker ID),到达设定的停机坪发现域(停机坪上方半径3~10 m的空域内)准备降落时,系统启动自主降落程序,通过边缘检测和轮廓提取、确定候选停机位Marker、检测并校验Marker ID、实时位姿估计等步骤完成无人机精确降落。

步骤1边缘检测和轮廓提取

无人机到达停机坪发现域后,以固定速率边下降边利用机载摄像机不断拍摄采集实时图像,并将其转化为灰度图,利用Canny算子或自适应阈值方法[12-13]得到二值化的边缘分布图,利用腐蚀膨胀等算法[14-15]进行滤噪,然后提取图像的轮廓信息(包含停机坪以及停机坪内所有停机位Marker的轮廓)。

步骤2确定候选停机位Marker

对于得到的轮廓信息,滤除两类轮廓:① 停机坪中停机位Marker内部必定会有其他轮廓,因此将所有内部无子轮廓的轮廓去除;② 构成轮廓的像素点个数应超过一定数量,以去除噪点的干扰。对于剩下的轮廓,选取外部为凸四边形的轮廓作为候选停机位Marker,并求取其4个顶点在图像中的坐标。

步骤3检测并校验Marker ID

图3 自主精准降落算法流程图Fig.3 Flow chart of algorithm of autonomous precision landing

对每一个候选停机位Marker,将其通过射影变换映射到固定大小的方形区域,其中方形区域的大小应为N的整数倍,一般宽高都为4×N个像素,这样对于每个方格都存在16个像素点用于二进制统计。将候选停机位Marker映射到方形区域后,利用计算复杂度低、效率高的K-Means算法[16]将区域内的像素进行二值化并进一步利用二值化后的图像进行解码(白色多为1,黑色多为0),得到一个N×N的二值矩阵。对于二值矩阵,首先判断其最外圈是否为全0或全1,不满足则认为此候选停机位Marker不正确,直接丢弃。然后根据内侧(N-2)×(N-2)区域可以解码得到候选停机位Marker的ID及朝向信息。将候选停机位Marker的ID与无人机接收到的降落指令中待降落停机位Marker的ID进行匹配,选择匹配成功的候选停机位Marker作为待降落停机位Marker,否则停机位Marker定位失败。

步骤4实时位姿估计

实际应用中在地面上选定并绘制停机坪时,停机位Marker的空间位置及大小是已知信息,即已知待降落停机位Marker在三维空间的顶点坐标,根据一系列三维点和图像二维点的对应关系,结合相机参数对无人机相对于待停机位Marker坐标系的位置和姿态进行求解。

图4为相机投影模型,对于世界坐标系中某个坐标为(XW,YW,ZW)的三维空间点P,利用相机位姿R、t(R为旋转矩阵,t为平移向量)将其转化为相机坐标系下的点P′(XC,YC,ZC):

图4 相机投影模型Fig.4 Projection model of camera

(1)

已知相机内参K,将点P′投影到图像I1上,得到图像特征点坐标向量[u1,v1,1]T(以归一化平面齐次坐标表示)为

(2)

式中: (u0,v0)为主点的坐标;fx和fy分别为x和y方向的焦距。

假设某个Marker顶点的三维空间点坐标向量为Pi=[Xi,Yi,Zi]T,其投影到图像上的像素坐标向量为pi=[ui,vi]T,根据图4的相机投影模型可得到像素位置与空间点位置关系为

(3)

式中:si为图像上二维像素点向量pi在相机坐标系下的深度,矩阵形式为

sipi=K(RPi+t)

(4)

由于相机位姿R、t未知以及观测点pi的噪声,式(4)的等式存在误差。因此,为了寻找最好的相机位姿,构建最小二乘问题,使误差最小化为

(5)

此最小二乘问题的误差项,是将Marker顶点的像素坐标(观测到的图像投影位置)与其三维空间点按照相机模型得到的投影位置相比较得到的误差,称之为重投影误差。通过Levenberg-Marquardt(LM)优化算法[17]迭代优化最小二乘问题求得无人机此时最优相机位姿R、t。

步骤5无人机飞行控制

根据无人机与待停机位Marker坐标系相对位置关系调整无人机的Yaw方向(绕Y方向旋转,即偏航角),并不断下降。

无人机降落到一定位置时,停机位Marker已经不能完全呈现在相机平面内,此时嵌套Marker起作用,无人机只需要按照步骤2和步骤3的Marker ID解析算法,进行嵌套Marker的ID匹配即可(该停机位Marker内的嵌套Marker)。

为了让无人机保持较好的控制效果,不同阶段采用不同的控制方式。当无人机降落到一定高度时,图像定位效果较好,即使进行一些运动调整也不容易发生定位失败,因此采用比例-积分-微分(PID)控制器[18-19]进行速度环控制,使得无人机始终跟随平台进行速度调整运动。而当无人机降落高度过低,来不及进行位置调整时,为了保证无人机能较平稳精准地降落在停机坪上,特别对于移动降落平台,采用PID控制器对加速度环进行控制,从而完成精确降落。

停机位Marker定位失败有两种情况:① 确定候选停机位Marker时未找到符合筛选条件的凸四边形轮廓;② 找到候选停机位后,未检测或识别到待降落停机位Marker ID。

定位失败后,无人机盘旋数秒捕获实时图像,若仍无法完成准确定位,无人机攀升并不断尝试重新对停机位Marker定位以完成降落。

4 试验结果

4.1 仿真验证

为了测试本文的无人机自主精准降落系统,首先在PC机上对从图像数据获取、算法实现到闭环控制整个过程进行了完整仿真测试。其中整个仿真系统主要包含无人机动力学仿真、视景仿真、算法模块封装和数据可视化4部分。

1) 无人机动力学仿真

采用无人机刚体动力学仿真模拟无人机实体及飞控部分。无人机的受力主要分为重力、空气作用力和无人机推力。重力在世界坐标系下始终不变,空气作用力由无人机速度和风速决定,设定一个高斯过程,绝对值不超过1.5 m/s的风扰动,算法给出的控制决定无人机推力。无人机动力学仿真模块以100 Hz的固定频率进行加速度、速度和位置、姿态等关键参数的更新。

2) 视景仿真

模拟摄像头采集过程。假设摄像头安装在无人机机体正下方视角向下,根据无人机动力学仿真的实时位姿及摄像机内参实时渲染得到虚拟的摄像头曝光图片。

3) 算法模块封装

将信息输入接口、控制输出接口和核心算法部分封装成统一模块,代码复用方便开发,并避免移植中的错误。

4) 数据可视化

使用Qt和OpenGL完成整个自主降落系统的三维可视化分析[20],实现无人机位置、实时渲染图片、风速方向和算法位姿估计与控制输出等部分的可视化,方便观察整个系统流程。

图5是针对图2(b)设计的降落标识,无人机模拟自主降落仿真系统的界面显示,其中上侧四旋翼无人机是无人机当前真实位姿,左下角是仿真渲染得到的图像及算法处理检测到的Marker标记,中间朝向下的视角框表示算法计算得到的无人机位姿,正下方是世界坐标系下摆放的降落板及模拟的当前风速表征线。从图5(a)侧视图和图5(b)俯视图可以看出此时降落高度已完全检测和识别停机位的所有Marker(包括嵌套Marker),无人机的位姿估计比较准确。

图5 自主降落系统仿真验证Fig.5 Simulation verification of autonomous landing system

4.2 自主降落试验验证

为测试算法在真实环境下的性能特性,搭建了试验环境,并进行多次测试。所采用的无人机是自己组装的四旋翼,飞控硬件采用Pixhawk,飞控软件采用APM,飞机上装载一个NanoPi2(1.4 GHz四核A9处理器搭配1 G内存)作为视觉计算平台,飞控和计算机之间通过UART接口通信,相机为VGA(Video Graphics Array)分辨率的USB相机。

手动控制无人机起飞,到达指定空域(相机视野内出现停机位),开始进入自主精准降落程序,相机将得到的含有降落标识(Marker)的图像信息传送给视觉计算平台,实时计算出无人机与Marker的相对位置关系,将相对位置坐标传入飞控系统,飞控控制无人机飞行完成整个自主精准降落过程。在下降过程中,图像采集频率是30 帧/s,分辨率是640×480。

图6分别展示了本系统无人机在地面固定位置和在移动车顶降落的试验。地面和车顶上放置的降落板上的降落标识如图2(b)所示。试验部分具体采用如下硬件配置:

图6 四旋翼无人机自主降落试验验证Fig.6 Autonomous landing test verification of quadrotor UAV

1) 机架与飞控

采用如图6(a)和图6(b)中的设计,在机架最外侧4个机臂下安置脚架,尽可能让无人机在各种降落平台保持稳定。而为了让算法直接省略对姿态中Pitch(绕X方向旋转,俯仰角)和Roll(绕Z方向旋转,滚转角)的计算,飞控将通过串口实时发布最新姿态信息,并接受算法输出的控制指令完成相应动作。

2) 摄像头

对于自主降落系统,对图像分辨率要求不高,但帧率越高越好,并要求适应各种光线情形。图像采集部分使用OV2710芯片为核心的广角USB摄像头模块,其特点是在低照度的环境下成像效果较好,并且分辨率为640×480时,帧率最高达到100 Hz。

从图6(a)和图6(b)中可以看出无人机成功并准确地降落到降落板上。图6(c)和图6(d)是在车顶上搭建了移动降落平台,并进行了多次降落试验,无人机都能很好地降落到车顶。

图7 无人机相对位置变化图Fig.7 Variation of relative positions of UAVs

静止降落试验进行了20次,图7是某次静止降落试验中,无人机在位于7 m高度下降时20 s内X、Y、Z方向相对于起飞点的偏移量,可以看出自主精准降落算法得到的相对位移量随着高度的下降呈变小趋势,当无人机到达地面时,水平和垂直方向偏移量能达到10 cm以内。经过统计20次试验的偏移量,发现总体偏离误差不超过 10 cm,相比红外等降落标志易受强光、温度或灰尘等影响,本系统不易受光照、温度、噪声等环境因素干扰。即使受风影响,也只有在少数情况下偏离误差会超过10 cm,如图8所示。

图8 静止降落试验总体偏离误差散点图Fig.8 Total deviation error scatter of static landing test

4.3 系统性能分析

为了评估本文自主精准降落系统的性能,在NanoPi2机载运算平台上对系统各部分的时间消耗进行统计,如表1所示。从表中可以看出系统的效率非常高,边缘轮廓提取部分因为其处理了大量像素点,耗时最长,其他的部分都只是对少量数据进行处理,故耗时相对较短。

表1 系统工作时各部分在NanoPi2的耗时统计Table 1 Statistics of time duration of each part of system in NanoPi2

5 结 论

1) 本文提出的阶层降落标识采用多层嵌套的Marker,很容易被检测识别,并能够在多尺度上提供其定位信息,且可以达到更鲁棒的需求。

2) 在进行充分的仿真试验和实飞测试后,证明了本文提出的无人机自主精准降落系统不易受到环境干扰,其鲁棒性和效率较高,且对计算性能要求极低,可为多个不同无人机同时提供精准降落服务。

3) 本文提出的自主精准降落系统依托于阶层降落标识进行相对定位,忽略了其他环境信息。后期可综合考虑其他环境纹理信息,更鲁棒地提供更准确的定位信息。

猜你喜欢
停机坪嵌套位姿
巧建“停机坪”,助力心成长
兼具高自由度低互耦的间距约束稀疏阵列设计
机智号直升机着陆火星“停机坪” 最早4月11日首飞
基于PLC的六自由度焊接机器人手臂设计与应用
基于位置依赖的密集融合的6D位姿估计方法
铝制直升机停机坪通用质量特性分析
曲柄摇杆机构的动力学仿真
基于单目视觉的工件位姿六自由度测量方法研究
夜色中的停机坪
论电影嵌套式结构的内涵与类型