四旋翼无人机单目视觉自主着陆系统研究

2019-05-22 02:45邱鹏瑞
关键词:飞控位姿旋翼

邱鹏瑞,刘 筠,刘 聪

(1.昆明理工大学 国土资源工程学院,云南 昆明 650093;2.昆明冶金高等专科学校 实训处,云南 昆明 650033;3.昆明冶金高等专科学校 矿业学院,云南 昆明 650033)

无人机(unmanned aerial vehicle)是一种没有驾驶人员的飞行器,它利用机载的飞行控制系统和航电系统,按照系统预设的程序自主飞行或者有地面人员进行操控飞行[1].四旋翼无人机是无人机的一种重要类型,四旋翼有4个螺旋桨,且机架呈现交叉垂直结构,通过4个旋翼的转速来实现机体的姿态与位置改变.近年来,随着传感器技术、微机电、微惯导和新型材料技术的发展,四旋翼无人机朝着高度自主与智能化的方向发展[2].而自主飞行与智能飞行的前置核心技术是导航技术.目前,传统的导航技术有GPS导航、惯性导航、激光雷达导航、无线电导航和红外导航等,GPS导航在室内等特殊环境下,位置信息容易丢失,惯性导航由于定位误差的累加会导致定位精度下降,激光雷达导航由于不断发射信号使得隐蔽性较差,无线电导航存在信号强度导致定位不精确问题,红外导航受光照影响较大[3-4].相较于以上几种导航方式,基于视觉的无人机自主飞行是一种比较新颖的导航方式,同时还有图像采集方式可靠安全、应用方式多样、采集功耗低、估计精度高的优点,特别是在某些GPS信号容易受损丢失的环境,视觉自主飞行成为视觉反馈导航和微型飞行器交叉学科研究热点.四旋翼无人机视觉导航自主着陆是在四旋翼无人机的飞行过程中,通过视觉传感器获取图像信息,并对图像信息进行分析、理解后,解算运动状态及运动目标位置信息来赋予无人机自主功能的应用.本文基于Pixhawk开源飞控和mavros技术,以NVIDIA TX2为机载图像处理上位机结合Opencv视觉库实现基于单目机器视觉的四旋翼无人机定点着陆系统.

1 系统架构

系统架构在设计时要考虑到四旋翼无人机载重量小的特点,对机载相关设备、飞控和各类传感器如摄像头等都有一定的限制,系统研究需要四旋翼无人机进行视觉算法处理并实时解算,这就要求摄像头选取时,视角、重量和清晰度达到要求,同时用于处理视觉算法的机载电脑符合图像处理能力强和重量轻等特点.本文设计的单目视觉自主着陆系统架构如图1所示.完整的四旋翼无人机硬件系统由机架、飞控、电调、电机、遥控器、地面站及视觉处理相关传感器如摄像头、超声波传感器和视觉处理机载电脑组成.本研究采用的飞控是开源的Pixhawk飞控,它是四旋翼无人机的核心器件,飞控主要实现飞行数据采集、姿态解算、位置解算以及飞行控制与导航.机载摄像头模块是视觉自主降落所采集数据的源头,本系统采用200万像素高清低照度USB单目摄像头,摄像头 3.6 mm 焦距,90°视角.摄像头采集的着陆标识数据经TX2视觉处理板进行视觉处理后,将飞控命令发送至飞控版,控制无人机实现自主降落.

2 着陆标识设计与识别算法

2.1 着陆标识设计

自主着陆系统的搭建,其首要任务是完成着陆地标设计[5].着陆图标按识别特征种类进行划分,可以分为:曲线特征、直线特征和点特征,不同种类的着陆图标有着不同的优缺点.着陆标识的数据信息由摄像头捕获后需进行图像处理和识别,因此标识的设计要尽量简单,规避复杂的模式识别处理以减少运算量,标识尽量具备区别于其他地物的特征并包含有无人机着陆位姿解算所需的基本信息,同时由于无人机单目视觉的视野范围有限,着陆标识存在识别不全可能,此时着陆标识需具有分级特性.在图像识别中,圆形能够较快的确定中心点,但在具体实践中圆形在自然界也较容易被误判,本研究的着陆标识采用黑白相间的分级地标,如图2所示,标识的内外轮廓为正方形且面积比值为固定值,黑白相间的正方形标识由小到大逐级嵌套,灰度差值大,便于阈值分割,同时,内外轮廓固定比值对地标级数可以实现唯一识别.

2.2 动态阈值二值化

摄像头获取的着陆标记图像采用大津动态阈值法进行二值化,该方法由日本的大津展之[6]提出,方法是通过阈值将图像分割为2个组别,一个组灰度对应目标,另一个组灰度对应背景,那么这2个组的灰度值的类间方差最大,类内方差最小.具体方法假设图像由背景和待识别物体构成,背景和物体的灰度值不同,设原图的灰度等级为1~m级,在灰度等级k处进行分组,C0={1~k}和C1={(k+1)~m},对2个组产生的概率ω0和ω1进行计算,组内的灰度平均值用μ0和μ1表示,图像整体灰度平均值用μ表示,2组间方差可用下式表示:

δ2(k)=ω0(μ0-μ)2+ω1(μ1-μ)2,

(1)

δ2(k)=ω0ω1(μ1-μ0)2,

(2)

δ2(k)=[μω(k)-μ(k)]2/ω(k)[1-ω(k)].

(3)

δ2(k)为阈值选择函数,灰度k由1~m级取值,并求得上式最大值的k便得到所求阈值,该方法在图像的直方图无明显峰值时能取得较好的效果.

2.3 轮廓提取与矩形检测识别

完成图像二值化后,接下来对着陆标记进行图像处理即轮廓提取,具体采用OpenCV的函数库来实现.OpenCV函数库是针对计算机视觉的开源函数库,由C/C++语言编写能够运行于Windows、Linux和Mac OS操作系统上,并提供有Matlab、Ruby、Python等语言的接口.研究以TX2为图像处理机载上位机,调用OpenCV的cvFindContours进行轮廓提取,然后用cvApproxPloly函数对提取的轮廓多边形近似,并遍历四条边且面积较大轮廓判断为矩形,完成矩形检测.之后,进行矩形聚类处理,即将矩形分类后,将中心点近似重合的矩形归为一类,然后判定矩形数量最多的聚类为着陆点目标,具体实现效果如图3所示的着陆目标A和着陆目标B检测效果.

3 位姿估计与着陆

位姿估计通常使用PnP估计方法,但PnP主要是针对点的估计,本研究设定地标的特征角点较少,因此使用面积来对相对位置进行估计.根据图像平面坐标与摄像机平面坐标关系[7],如式(4)和式(5):

zc×Puv=K×Pc.

(4)

(5)

其中,K在张正友经典标定法中为相机内参数[8],Puv=(uv1)T为图像平面坐标,Pc=(xcyczc)T为相机平面坐标,fx和fy为焦距f在x,y方向上的像素度量表示.在无人机自主着陆过程中,机体存在发生震动导致横滚角和俯仰角轻微震动可能,在此先假设机体无横滚和俯仰,根据图4,可先做如下推导:

AB2=(xA-xB)2+(yA-yB)2

(6)

(7)

(8)

(9)

由于之前假设的情况是在地标平面与相机平面平行时候才成立,此时根据式(10)的仿射变换可以算出xc和yc从而确定位置坐标,式中θ为机体的俯仰角,φ为机体的横滚角:

(10)

在获得位姿数据后,根据相对位置结合Pixhawk的飞控源码,通过速度控制,视觉伺服的方式控制无人机飞行并逐渐逼近目标点,最后完成自主着陆.

实际测试中,四旋翼旋翼无人机在地标高度7 m左右开启视觉着陆功能,通过TX2识别地标解算得到机体位姿并将控制信号通过mavros发送至飞控来控制机体降落.实验采用开源的Gazebo模拟器和OpenCV视觉库进行仿真,实验采集逐渐降低高度图像4组,每组分别采集4个不同位姿图像,视觉位姿估计实验数据见下表,随着陆高度降低位姿估计精度升高,位置估计误差控制在 30 mm.实验数据分析后可知机体飞行高度较高时,由机体震动导致的微小倾斜会导致拍摄区不规则漂移,位置误差大,影响位姿控制效果,而随着机体与着陆平台不断逼近,采样图像量化为数字图像存在的量化误差稳定且逐渐减小,位姿误差均减小到可控范围.经多次室外实验,机体工作稳定,系统各部件供电及功能正常,飞控视觉处理基本能满足降落时延需求.

表1 视觉位姿估计对比数据

4 结语

本文以四旋翼无人机为飞行平台对基于视觉的无人机位姿估计与自主着陆进行了研究,系统采用Pixhawk开源飞控进行无人机飞行控制,设计了黑白相间的正方形分级地标,并通过单目摄像头采集图像数据输入机载图像处理上位机NVIDIA TX2中进行视觉图像处理,结合OpenCV函数库功能完成地标检测识别,最终通过mavros完成位姿估计与着陆控制.经实验验证,研究实现了无人机对定点地标的识别和着陆控制指令生成,系统设计简单,运行高效,工作稳定.鉴于研究局限性,系统在采集图像到最终生成导航数据的平均时耗虽能满足自主着陆要求,但相对于多传感器组合导航系统,实时性仍有待提高.

猜你喜欢
飞控位姿旋翼
改进型自抗扰四旋翼无人机控制系统设计与实现
花样旋翼大秀场
大载重长航时油动多旋翼无人机
基于PLC的六自由度焊接机器人手臂设计与应用
基于位置依赖的密集融合的6D位姿估计方法
民用飞机飞控通电自检测安全性研究
曲柄摇杆机构的动力学仿真
基于STM32的四旋翼飞行器的设计
基于单目视觉的工件位姿六自由度测量方法研究
中小型太阳能无人机航电系统设计