基于地标的轻量化无人机精准降落算法

2022-09-06 11:09李劲松仝家朋
计算机工程与应用 2022年17期
关键词:顶角标的线段

原 辉,裴 楚,王 帅,李劲松,姜 敏,仝家朋

1.国网山西省电力公司 电力科学研究院,太原 030001

2.华北电力大学 自动化系,河北 保定 071003

随着无人机在各领域的不断普及,对其功能的要求越来越高,其中无人机精准自主降落技术是无人机自主飞行的关键技术。目前,大多数厂商选用全球定位系统(global positioning system,GPS)来进行无人机的定位[1],这种定位方式虽然简单易行,但是需要考虑GPS精度,而且在某些特殊环境下,GPS 信号容易受到干扰。所以,如何实现无人机的精准降落,突破GPS 定位在特殊环境下的局限性,成为了无人机领域亟待解决的问题。近年来,国内外越来越多的研究者对该领域做研究,南京航空航天大学的何昱等人[2]对微小型四旋翼无人机自主着陆视觉系统做了研究,采用嵌入式处理器设计了一种适用于微型四旋翼无人飞行器自主降落的视觉系统,在实际应用中证实了嵌入式设备的实用性。湖南工业大学的罗哲[3]对着陆标志的拍摄图像进行预处理后,通过改进的Wellner自适应阈值算法获得二值图像,查找轮廓并采用最小周长多边形(MPP)对轮廓进行多边形逼近,从而找到目标。瓦伦西亚理工大学的Wubben等学者[4]设计了ArUco 地面标识,通过视觉特征来计算搭载低成本相机的无人机与目标标记之间的相对位置,并通过实验验证了该方法的可行性。哈尔滨工业大学樊珑[5]提出用超声波测量高度、再通过机载相机寻找停机坪上黑白相间的圆环降落标志来计算出无人机位置的的视觉定位方法,完成自动降落控制。西北工业大学张咪等人[6]通过对特定地标进行预处理、Canny 算子二值化、腐蚀膨胀等算法进行滤噪、提取图像的轮廓信息并经过校验后进行位姿估计的方式,实现无人机的降落。

但是上述方法都有着一些问题:

(1)地标占地面积较大,不利于在特定环境中例如电厂杆塔针对小型无人机的精准降落的需求。

(2)在环境信息丰富的环境中不便于应用,例如有着丰富物体存在的室外环境会对地标识别造成干扰,或者误识别。

(3)算法都需要对图像进行预处理等步骤,增加了图像处理环节,不利于在嵌入式设备上计算。

考虑到无人机的自主运行环境以及嵌入式计算设备计算力有限的问题,提出一种基于地标的轻量化精准降落算法,对ArUco地面标识法与张咪论文中地标过大与室外环境复杂会出现干扰的情况这两个方面改进。

(1)通过加入颜色域信息,取消了张咪、罗哲等人在图像处理中常有的灰度化、高斯滤波等滤噪、提高对比度的环节,节省了图像处理时间,降低了信息提取难度。

(2)通过提出基于地标长度的二维空间相对位置计算方法,取消了张咪、樊珑等人通过无人机三维空间位姿估计方式,也避免了因机载相机的焦距计算不准确带来的影响,方便了本文算法在不同无人机、采用不同机载相机时的使用。通过识别设定的两种形成对比的颜色和指定形状实现快速实时地检测地面标识,然后通过二维层面相对位置计算得到无人机与降落地标的相对位置和相对方向,从而可以引导无人机精准降落且无人机方向准确。此过程便于在复杂环境中准确查找地标,不需要考虑相机焦距,所以结果更加准确且方法便于移植。

1 系统构成

1.1 地标设计

无人机的降落地标在设计时需考虑三个重要因素,分别为标志需要包含定点降落所需的信息、标志需要是机载处理器能够快速识别的形状以及标志需要容易辨识[7]。设计的降落地标如图1 所示,该图形由两个菱形叠加组成,一个是黄色菱形,另一个是比前菱形略大的蓝色菱形,两种颜色形成对比;再外围是白色方形背景板,其可以将目标图像与其他有色噪声隔离开。

图1 降落地标Fig.1 Landing landmark

地标的大小视无人机降落的初始高度而定。将地标的黄色菱形的狭长边界构成的角记为顶角,与顶角对应的、两个短边界形成的夹角记为底角,则定好地标后,地标的顶角角度和顶角到底角的距离可以测量得到。对地标大小的要求是在无人机初始降落高度上机载相机拍摄图片后地标蓝色边界宽度要大于4个像素,而黄色菱形的底角处宽度要3 倍于蓝色边界宽度。黄色菱形的顶角弧度值要不同于另外三个角。所以使用的地标可以根据GPS精度、无人机大小等要求自行设计其他尺寸的地标,同时地标的颜色构成和顶角大小也可以自行更换。

后面的实验中无人机初始降落高度是10 m,地标蓝色边界为5 cm 宽,黄色菱形顶角到底角长0.45 m,顶角弧度值是0.68,且黄色菱形其余三个角度均大于此弧度。图2 中地标是图1 地标的变体,其上蓝黄地标被金属薄片遮挡了一部分,顶角弧度大于底角弧度,用于实验设计地标被遮挡时的情况。

图2 被遮挡的地标Fig.2 Obscured landmark

1.2 无人机架构

无人机部分主要分为硬件部分和软件系统,如图3。硬件部分包括无人机机体、机载计算机、机载相机、机载飞控、GPS等,该部分主要完成无人机飞行、飞行动作控制、图像拍摄、执行算法等功能。软件部分主要是降落初始阶段的GPS信息处理和降落第二阶段的算法执行。

图3 无人机架构Fig.3 UAV architecture

2 精准降落算法

通过检测地标的两个狭长边界线来确定地标的位置,分析地标位置来获取无人机位移所需信息的。算法流程分为边界提取、边界筛选、确定中心、相对位置计算、无人机位移控制等步骤。下文中说的像素坐标系即图像处理中常用的笛卡尔坐标系,以图像的左上角为原点。

2.1 边界提取

无人机在初始降落阶段会依据GPS信息控制飞行,使无人机飞到地标上空,以使无人机机载相机可以拍摄到地标。接下来就进入图像处理的环节。

机载相机拍摄的彩色图像从RGB颜色空间转换到HSV空间。因为颜色信息在HSV空间中更贴近人类感官,且受光照等变化的影响更小[8-9]。地标图片转化为HSV空间后,黄色在H、S、V通道上有一段对应的阈值,其中H 通道对应颜色色相。根据黄色的三个通道的阈值进行二值化,做法是介于此阈值内的像素点设为255,其余的都设为0。然后对该二值图使用Robert算法[10]进行边缘检测,然后使用累计概率霍夫变换[11-13]直线检测算法进行处理,得到的直线检测结果。

2.2 边界筛选

上面直线检测结果中会存在误检测的线段,这种情况在复杂环境中尤为多,所以还需对边界检测出的线段进行筛选和确定。

检测上面边界检测结果中每个线段两侧是否分别为黄蓝二色。做法是依次在每个线段左右两侧对称位置取检测点,当验证检测点的像素值分别属于黄色H值和蓝色H 值时,保留该线段。设当前线段Li的两端在像素坐标系中坐标值为(x1,y1)和(x2,y2),要在Li上取Npi个等间距的分割点,在这些分割点的两侧、与Li垂直的方向上距线段Li为像素值Nin取测试点对,如图4。样本点集合为(xsim,ysim)。一般情况下样本点的坐标求取公式为:

图4 线段两侧的样本点(Npi=2)Fig.4 Sample points on both sides of line segment(Npi=2)

其中k=0,1,…,Npi-1。

公式(1)和(2)是针对一般情况下直线检测结果的计算。对于水平和垂直情况下的直线检测结果,实现类似计算只需对公式(1)和(2)进行化简即可,后面所有计算公式也只针对一般情况下的直线检测结果。

然后对上述检测结果做同一直线的多次描述的剔除,从而实现一个边界处只由一个检测线段来描述,做法是从上述检测结果中任选两条直线记为L1、L2,然后按照由两直线延长线夹角为θ12,当θ12≤θpa(其中θpa为设定临界值)时认为两直线为同一线,且保留L1、L2中线段长度较长的线段。如此将所有的线段两两配对且处理。

之后筛选上述结果中线段延长线夹角符合地标顶角弧度的两个线段,这两个线段就是最终的地标提取结果。做法是设事先测量确定的地标狭长边界的夹角的弧度值为θLi。设定阈值θma,当两线段夹角满足|θ12-θLi|>|θma-θLi|则认定为不合格。在合格线段中所有两线段之间按照直线向量的余弦值反求夹角,当θ12满足 |θ12-θLi|>|θma-θLi|则此两线段不合格;而对于合格的θ12,只保留本环节中 |θ12-θLi|最小的θ12和其对应的两线段。如此计算一轮后,会得到最靠近θLi的θ12和其对应的两线段。

此时筛选出的两个线段准确描述了图像上地标黄蓝色交界的狭长线,记为边界描述线,用LL和LR。

2.3 确定中心

筛选出的两个边界描述线相交处就是地标的顶角处。认定地标上从底角点(xb,yb)到顶角点(xv,yv)连线上距底角点S比例处就是地标的中心点(xp,yp),如图5。若无人机准确降落,机载相机光心应该与地标中心相重叠。

图5 地标的中心Fig.5 Center of landmark

先由两个边界描述线相交求出顶角点位置,做法是在两个边界描述线的延长线上找到两线的交点。一般情况下设线段LL和LR的两端坐标分别为(x1,y1)、(x2,y2)和(x3,y3)、(x4,y4),则对于顶角点(xv,yv)有公式如下:

再求地标的底角。做法是在两个线段上找出距顶角点相同距离的点,记为(xD1,yD1)、(xD2,yD2),此两个点连线的中点(xm,ym)与顶角点的连线就是顶角点和底角点的共线,然后从顶角点沿上述连线找到第一个颜色为蓝、同时倒退2 个像素后颜色为黄的点,此点就是提取到的底角点(xb,yb)。在一般情况下先计算(xD1,yD1),即:

其中,Llen为LL与LR中距离较小的长度,(xt1,yt1)、(xt2,yt2)为方程(1+kc2)x2+(2kcbc-2xv-2kc yv)x+x2v+b2c+yv(yv-2bc)-Llen的两个根。

LL01与LL02分别为(xt1,yt1)、(xt2,yt2)到(xc,yc)的距离。当LL01≤LL02时,(xD1,yD1)为(xt1,yt1),否则,(xD1,yD1)为(xt2,yt2)。

按照同样的方式,在公式(7)的条件下求出(xD2,yD2)。

此时可得(xm,ym)为:

接下来计算底角点位置:

公式(10)和(11)中xadd和yadd用于表明像素坐标系上从顶角点到底角点的过程中x方向和y方向上增长趋势。

判断在像素坐标系上从顶角点到底角点的过程中x方向和y方向的增长快慢。

Ltpv1与Ltpv2分别为(xtp1,ytp1)、(xtp2,ytp2)到(xv,yv)的距离。

当Ltpv1≤Ltpv2时认为xadd方向上增长较慢;否则yadd方向上增长较慢。

开始通过测试找到底角点。设定(xla,yla)为(xv,yv)。

当xadd方向上增长相对慢时,初始n=0,

检测点(xla,yla)的像素值是否为黄色H值,同时点(xtm,ytm)的像素值是否为蓝色H 值,成立则认定点(xtm,ytm)就是底角点(xb,yb);否则按下面公式计算:

再令n=1,计算公式(14),并对点(xla,yla)和(xtm,ytm)进行颜色检测。如此进行测试,直到找到底角点或者n等于图像的短边界的长度值时停止。

当yadd方向上增长相对慢时,初始n=0,

检测点(xla,yla)的像素值是否为黄色H值,同时点(xtm,ytm)的像素值是否为蓝色H 值,成立则认定点(xtm,ytm)就是底角点(xb,yb);否则按下面公式计算:

再令n=1 ,计算公式(16),并对点(xla,yla)和(xtm,ytm)进行颜色检测。如此进行测试,直到找到底角点或者n等于图像的短边界的长度值时停止。

如此找到了底角点(xb,yb),然后计算地标中心点(xp,yp),计算如下:

2.4 相对位置计算

本文无人机降落所需位置参数有三个:二维平面上无人机到地标中心所需位移距离,分为机头方向所需前进距离xcmd和机身所需右移距离ycmd,参数若为负值表示需要反方向移动;无人机机头方向转到地标顶角所指方向的所需偏转角度θL。

图像的像素坐标系的y轴负向对应实际的无人机机头方向。角度θL为地标顶角方向顺时针偏离图像的像素坐标系y轴负向的角度,如图6。

图6 地标相对位置参数Fig.6 Landmark relative position parameters

确定θL的角度值。先设定两个辅助向量Ve和Le,其中Ve=( 0,-10 ),Le=(1 0,0 )。设底角点指向顶角点的向量为Mi。计算出Mi和Ve的夹角θVM,同样计算出Mi和Le的夹角θLM。计算θL为:

然后开始计算地标相对位置。计算过程是按照针孔成像的原理,通过二次对比信息应用地标长度和像素数直接测得相对位置,不用测量相机的焦距。原理如图7所示。

图7 地标相对位置原理Fig.7 Principle of relative position of landmark

图7 中f是机载相机的焦距,H是相机光心的对地高度,Pcmd是地标中心到图像中心的像素值,Pla是地标顶角点到底角点的像素值,Lcmd是实际中地标中心到相机光心的平面距离,Lla是实际中地标顶角点到底角点的平面距离。Lla可以被事先很方便地测量得到;要得到f需要对所用相机进行测量,而且每个相机需要单独去测,机载相机更换就需要重新测;要测得H需要读取无人机GPS 信息或者气压计,有较大误差;Lcmd是需要得到的数值。根据针孔成像原理可以得到:

所以可以得到:

这样Lcmd可以十分方便地通过计算得到,而且当无人机更换机载相机时也不需要重新测量焦距。

计算xcmd和ycmd,设像素坐标系上图像宽Lcol和图像长Lrow,Lla是实际中地标顶角点到底角点的平面长度,参数Rt记录比例。

2.5 无人机位移控制

计算出xcmd、ycmd和θL,当无人机按照该参数移动后,无人机的相机光心就会与地标中心重叠且无人机机头方向与地标顶角的指向相同。

无人机在计算出上述参数后,就进入比例-积分-微分(PID)控制器[14-16]进行无人机位移控制,使无人机边下降边靠近地标中心。这个调节过程是分为两步进行的,先迅速进行水平上的位置调整,再立即进行方向调整且同时下降一定高度。这样无人机一边调整一边降落。待地标在机载相机中边界超出图像拍摄范围时,无人机就停止位置调整,只进行降落和停机。至此无人机完成整个降落环节。

3 实验对比与性能分析

本文采用的飞行平台是大疆经纬M210 RTK V2无人机,垂直悬停精度为±0.1 m,水平悬停精度为±0.3 m;计算核心使用的配套的妙算2 模块。衡量降落方案的精准程度,需要比较降落结果的误差,首先需要对图标建立平面坐标系,如图8 所示,图中O处就是地标中心。根据无人机降落后相机光心与地标中心的相对位置,就可以看出降落的精准程度。图中AO距离为直线误差,AB向量与CO向量的夹角为无人机降落角度误差。

图8 降落图标坐标系Fig.8 Landing icon coordinate system

3.1 图片的处理效果

优化后的算法在实际应用中有着显著效果,如图9到图13 表示了算法在不同距离情况下检测地标的效果。图中青色线段表示检测到的边界线,黄色点表示顶角点和底角点,红色点表示S=0.3 时地标中心点。从图中可以看出,算法可以明显对抗距离变化和地标旋转。

图9 地标距相机1 mFig.9 Result when distance from landmark to camera is 1 m

图13 地标距相机5 m且左转Fig.13 Result when distance from landmark to camera is 5 m and turning left

图14展示算法在地标被遮挡或者地标与其他功能相结合时的应用情况。图14中是地标上贴有两块用于无人机充电的电击贴片,对于地标识别来说,这是很大的遮挡物。但是从图14中可以看出地标识别情况依然良好。

图14 地标距相机2 m且地标后侧被占用Fig.14 Result when distance between landmark and camera is 2 m and landmark is blocked

3.2 算法降落实验

为了验证降落策略的可行性,实验采用的降落方案分为三个阶段,第一阶段为GPS 位移,无人机以固定高度采用GPS信息移动到地标上空,使地标在相机“视野”范围内;第二阶段为算法执行阶段,无人机根据地标测算出相对位置信息后,立即调整无人机位移和方向,使无人机飞到地标中心正上方且其机头方向与地标正向相同,同时无人机匀速下降;第三阶段为无人机只执行降落指令,当图像匹配程序执行完毕之后,无人机只执行降落指令,完成降落。

图10 地标距相机3 mFig.10 Result when distance from landmark to camera is 3 m

图11 地标距相机5 mFig.11 Result when distance from landmark to camera is 5 m

图12 地标距相机5 m且右转Fig.12 Result when distance from landmark to camera is 5 m and turning right

实验的过程如下,设定无人机的初始高度为10 m,在下降过程中使用图1 地标,当无人机降落到1 m 高度时无人机开始进行只降落阶段。无人机的高度变化如图15所示,无人机的姿态横滚角变化如图16所示,俯仰角变化如图17所示,降落结果如图18所示。

图15 高度变化Fig.15 Height change

图16 横滚角变化Fig.16 Roll angle change

图17 俯仰角变化Fig.17 Pitch angle change

图18 降落结果Fig.18 Landing results

3.3 性能分析

本文算法、基于地标的TLD 算法[17]、基于ArUco 标记的方法[4]和大疆无人机基于GPS 的自有返航功能进行降落效果对比如表1所示。其中本文算法进行8次实验,实验结果使用8 次实验的平均数,降落用时只计算第二阶段和第三阶段用时;大疆无人机返航功能定返航高度为10 m,降落用时只计算下降所用时间。其他方法使用对应论文中的结果。

表1 算法平均降落精度对比Table 1 Comparison of algorithm average landing accuracy

从表1 可以看出本文算法的位置精度和角度精度都相对较高。与基于地标的TLD 方式和基于ArUco 标记的方法相对比,本文算法位置误差更小,且增加一个角度判断功能。与基于GPS的自有返航功能进行对比,具有明显的实用性。

本文算法与TLD的平均帧率如表2所示,本文算法的平均帧率达到了25.97 frame/s,虽然与TLD、KCF 方式的帧率相比略差了一些,但是在成功率上有了较为明显的提升,不仅如此本文算法还考虑了角度方向的偏差,综合整体而言,本文算法在本文所设定环境下性能是要明显优于这两种算法的,而且本文算法处理帧率完全满足飞行过程中的需求,因此在实时性上也得到了一定的保证。

表2 算法平均帧率对比Table 2 Algorithm average frame rate comparison

4 结束语

针对无人机自主降落精度不高的问题,提出基于地标的轻量化精准降落算法,通过识别构成对比的颜色和地标形状实现快速实时地检测着陆标识,图像处理流程简单快速且准确,然后通过相对位置计算在二维层面得到无人机对于降落地标的相对位置和方向,引导无人机精准降落。算法执行过程不需要考虑相机焦距,无需事先进行相机标定,在一定遮挡情况下也能精准识别。图像计算过程尽可能简单,无需进行图像降噪滤波等预处理,减少了图像处理时间和对计算平台计算力的需求。实验结果表明,本文提出的策略能大大提高无人机自动降落的精度,在地标大小设计合适的情况下,无人机完全可以降落在地标上,且方向准确。

猜你喜欢
顶角标的线段
探讨一般三棱镜偏向角与棱镜顶角的关系
画出线段图来比较
凉亭中的数学
怎样画线段图
我们一起数线段
数线段
红周刊绩优指数100只标的股一览
红周刊绩优指数100只标的股一览
红周刊绩优指数100只标的股一览
红周刊绩优指数100只标的股一览