吴 玲, 孙永荣, 赵科东
(1.南京航空航天大学导航研究中心, 南京 210016; 2.南京航空航天大学金城学院机电工程与自动化学院, 南京 211156)
自主空中加油技术(autonomous aerial refueling,AAR)能够有效扩大无人机飞行半径,延长无人机留空时间,大大提高了无人机的性能,在军事和民用方面都具有较大的应用潜力。其中,软管-锥套式加油由于可以同时为多架无人机加油,并且成本低,方式简单,而应用广泛[1-3]。针对软管-锥套式自主空中加油技术,对加油锥套相对位置和姿态的高精度、实时测量,是实现加油对接的关键。而基于视觉导航的锥套的检测与跟踪是实现相对位姿测量的前提,首先需要准确获取捕获图像中锥套的位置,然后才能进一步确定受油机探头与锥套的相对位置[4-5]。
视觉导航技术是解决软管-锥套式空中加油近距相对导航的最有效的方法,越来越受到广大学者的关注。软管-锥套式加油技术的视觉系统可分为主动视觉系统和被动视觉系统[6]。主动视觉系统常采用明显的特征标记,如彩色记号或者LED(light emitting diodes)信标来定位锥套。VisNav(vision-based navigation)是一种常用的主动视觉系统,已在一些AAR研究中得到应用[7]。主动视觉系统中,锥套目标捕获处理时间短,可靠性高,但该方法需要对加油机的结构进行改变为信标供电。被动视觉系统无需安装额外的硬件而易于实现。Martinez 等[8]针对自主空中加油任务提出了一种仅依靠锥套自身特征的被动视觉方法。Yin等[9]提出了一种基于锥套口近似圆形和内部黑暗特征的锥套检测和跟踪方法,并利用边缘图像提取图像特征。Gao[10]提出了一种基于局部多特征的低秩稀疏分解的锥套检测算法,并将锥套图像系列分解为低秩背景和稀疏运动目标。Wang等[11]采用了在锥套上增加红色环形标记以加强机器视觉的方法来进行锥套的检测与识别。Qin等[12]针对内部加油口特征,提出了一种粗精两级检测结构,利用图像局部区域的行列扫描方法获得较高精度的形状参数。被动视觉导航系统的关键在于提高图像处理的实时性和可靠性[13]。针对目前软管-锥套式自主空中加油视觉导航仍存在可靠性与实时性等性能不足的问题,提出了一种实用的基于单目视觉的锥套检测与跟踪方法,并采用真实的、1∶1尺寸的锥套进行算法验证,无需安装专门的硬件(如信标)。通过一个基于微型六旋翼无人机的高保真试验平台,对所提出的图像处理方法进行实时性及可靠性的评估。
在软管-锥套式空中加油中,将摄像头安装在受油机上,然后对摄像头捕获的图像进行分析处理,需要快速、可靠、准确地提取锥套特征从而确定锥套相对于受油机的三维位置是AAR视觉导航的主要任务。采用状态机进行图像处理操作,设计的状态机具有初始状态、捕获状态、锁定状态和退出状态四种情况。如图1所示。状态机从初始状态开始,其中计数器C被初始化为0。当在当前帧图像中不能检测到目标时,将计数器C增加1,当计数器达到最大设定值Cmax时,进入退出状态,停止任务。一旦检测到目标,将从初始状态转移到捕获状态,然后采取锥套跟踪方法,在跟踪过程中如果捕获目标失败将重新回到初始状态进行目标检测。如果检测成功并跟踪到目标,则转移到锁定状态,最后输出图像定位结果,并求解基于视觉的相对位置,否则再重新回到初始状态,等待新一帧图像进行检测。
图2为加油锥套的基本结构,当受油机位于加油机近后方或者近距对接时,捕获的锥套图像中加油口内部成像为近似圆形的黑色块,这将是锥套检测和跟踪的主要特征。提出的锥套检测方法由5个步骤组成,图3为锥套检测流程图。首先,通过对原始图像进行阈值分割得到二值图像,然后应用数学形态学方法进行滤波处理,消除图像干扰,尤其是锥套伞骨架干扰,其次利用轮廓提取方法得到所有的轮廓,并通过距离条件、面积条件、圆度条件和椭圆拟合条件进行判断,最后选择圆度最大的轮廓作为目标候选值进行目标检测。
图2 加油锥套基本结构
图3 锥套检测流程图
1.1.1 阈值分割处理
对图像进行阈值分割可以将图像分割为多个区域,每个区域在颜色和亮度上具有较高的均匀性。由于捕获的锥套图像内加油口为近似圆形的黑色块,因此内加油口像素点的灰度值较低,采用反阈值提取方法可以较容易地将其提取为前景区域。
读取锥套灰度图像S0,通过式(1)转换进行阈值分割为二值图像I0。
(1)
式(1)中:tb为二值化灰度阈值;(x,y)为对应的像素点坐标;S0(x,y)和I0(x,y)分别为相应图像在(x,y)处的像素值。
1.1.2 形态学滤波处理
在阈值分割后进行数学形态学滤波,可消除伞骨线和后方加油软管带来的干扰。在数学形态学中,将二值图像看成一个二维点集,利用设计的结构元素和形态学算子对集合中的像素值进行变换[14]。假设仅考虑白色像素点,选择圆形结构元素Rd与二值化图像I0进行开运算,即
I1=I0∘Rd=(I0⊖Rd)⊕Rd
(2)
式(2)中:I1为经过形态学滤波的图像;∘为开运算符;⊖为腐蚀运算符;⊕为膨胀运算符。
1.1.3 轮廓提取处理
经过形态学滤波处理后,可将二值图像中的目标区域(内加油口)与其他区域分离,然后采用等高线提取方法对各分割区域进行边缘提取。轮廓提取主要包括两步:①镂空区域内的点,仅保留边界点;②根据连通性规则跟踪所有连通区域的轮廓线。
对图像I1进行轮廓提取,可得到所有连通区域的轮廓点集P,定义为
P={Pi|i=1,2,…,N},Pi={(xim,yim)|m=1,2,…,ni}
(3)
式(3)中:N为连通区域个数;Pi为第i个连通区域的轮廓点集;ni为轮廓点个数;(xim,yim)为第m个轮廓点。
1.1.4 目标轮廓判断
轮廓提取后需要对目标区域轮廓进行判断。这里采用范围条件、面积条件、圆度条件和椭圆拟合条件来逐步搜索目标轮廓。
对于每一个轮廓点集Pi,进行上述4个条件的判断,符合条件的轮廓集记为Psc={Pj|j=l1,l2,…,lq},其中l1,l2,…,lq表示轮廓候选值序号。
自主空中加油视觉系统中,只有受油机靠近锥套时才能正常工作,此时图像中的内加油口看起来应该足够大。因此目标轮廓必须满足约束条件为
xd>trx,yd>try,xd>trsyd,yd>trsxd
(4)
式(4)中:trx,try分别为x轴和y轴的阈值范围;trs为阈值比;(xd,yd)为轮廓点集Pi中的像素坐标范围,即xd=max{xim}-min{xim},yd=max{yim}-min{yim}。
根据成像原理,圆在图像中会成像为一个椭圆图形。因此一旦轮廓线满足上述3个条件后,将采用最小二乘椭圆拟合方法对轮廓数据点进行拟合[15]。椭圆拟合函数表示为
f(x,y)=x2+e1xy+e2y2+e3x+e4y+e5=0
(5)
(6)
式(6)中:(exm,eym)为椭圆点(xim,yim)的归一化坐标,其计算公式为
(7)
1.1.5 目标确定
经目标轮廓判断后,如果最终目标轮廓候选个数为0,则在当前图像中找不到目标。如果等于1,则确定轮廓椭圆。如果大于1,则选择圆度最大的候选轮廓作为目标轮廓,并将其椭圆拟合结果作为目标特征定位结果。定义对数圆度为
(8)
式(8)中:ai,bi分别为候选轮廓Pi经椭圆拟合结果的长半轴和短半轴。
空中加油过程中,加受油机需保持稳定的飞行状态,假设视频图片帧流中锥套图像变化缓慢,且锥套在当前图像中的位置与最后一帧图像中的位置非常接近。因此,可利用最后一帧图像中锥套的位置作为先验信息来减少图像处理时间,并保证当前帧图像的可靠性。
锥套跟踪基于最后一帧图像定位的结果进行。如图4所示,(a,b,θ,xp,yp)表示最后一帧内加油口的椭圆形状参数,然后在当前帧图像中选取最后一个检测区域周围较大的区域ABCD,并通过1.1节所述的锥套检测方法在ABCD区域中搜索并解算锥套的位置。所选的矩形区域ABCD大小计算公式为
图4 椭圆参数及跟踪矩阵提取示意图
(9)
式(9)中:ex、ey为扩展区域尺寸;rext为扩大系数。
通过自主空中加油试验台进行了算法验证。如图5所示,试验台由加油机、受油机和地面站组成。其中加油机由一个二维移动平台模拟,并将加油锥套安装在上面。为了达到高保真度试验,所使用的锥套是与实际应用中相同尺寸和颜色的1∶1锥套模型。受油机采用六旋翼飞行器模拟,并在其安装摄像头来模拟视觉系统,地面站对系统运行进行监控,以保证实验在可控、安全的条件下进行。所使用的相机为罗技C270,该相机能够捕捉30 Hz的图像,分辨率为1 280×720。为了减小图像处理时间,进行图像处理的分辨率设为640×480,捕捉速度为25 fps。所提出的图像处理方法在C++中开发完成,并使用OpenCV库管理图像数据。实验中采集了四段视频进行本文算法的性能验证,每段视频包含800帧锥套不同运动的图像,并将本文方法与文献[9]方法进行比较。
图5 自主空中加油试验台
利用所提出图像处理方法对所采集的所有图像进行检测,其中视频#1有4帧(第545~548帧)没有找到目标,视频#4有2帧(第61帧和77帧)没有找到目标,视频#2和#3中的所有帧图像均准确检测到目标,并利用肉眼观察可判断锥套检测结果正确。图6为部分帧图片的锥套检测结果。
图6 部分帧图片的锥套检测结果
表1列出了两种方法对所有3 200张图像进行锥套检测的成功率对比结果。其中,文献[9]方法成功率为97.38%,本文方法成功率为99.81%。
表1 两种方法下锥套检测成功率
对所有图像进行锥套检测计算时间进行统计,如图7所示。可见,本文方法的所有帧图像在30 ms内检测完成,采用文献[9]方法所用的平均计算时间为54.21 ms,与文献[9]方法进行比较统计结果如表2所示。可见,本文方法计算时间更短。
表2 两种方法下锥套检测时间比较
图7 锥套检测计算时间统计
由于锥套检测时间较长,采用锥套跟踪方法可以减少图像处理的计算时间。将所提出的锥套检测和跟踪方法相结合,可实现无人机自主空中加油视觉系统图像处理的高可靠性和实时性。对前述4
个视频采用锥套跟踪算法处理,计算时间如图8所示。可见,所有帧的跟踪时间均小于5 ms,可显著提高图像处理实时性。与文献[9]方法进行比较统计结果如表3所示。
图8 锥套检测与跟踪计算时间统计
表3 两种方法下跟踪时间比较
基于视觉的相对导航技术是自主空中加油近距导航的关键技术,其中加油锥套的检测与跟踪是实现高精度视觉导航的前提。针对自主空中加油系统,提出了一种锥套检测和跟踪方法相结合的视觉导航图像处理策略,并在一个高保真自主空中加油试验台上进行了试验验证。得出如下结论。
(1)所提出的锥套检测方法,具有较高的可靠性,检测成功率可达99.8%;平均计算时间为26.89 ms。
(2)采用锥套跟踪算法,有利于提高锥套识别实时性,减小锥套图像处理时间,平均计算时间为1.0 ms。