侯晨曦
(陆军勤务学院,重庆 401331)
无人机航测是当下航测领域的一种新式手段,在土地测绘、环境监测、城市规划、农业、林业等领域发挥着重要的作用。相比传统的航测手段,无人机航测具有灵活、高效、精确和成本较低的特点[1]。例如在建设四通八达的交通体系的过程中,很多公路修建在荒郊野外,穿山而建或者绕山而建,无人机航测可以通过航拍获取高分辨率的地形地貌影像、数字地面模型(DTM)以及3D点云数据,这些数据可以提供详尽的地理信息,包括地形起伏、地势坡度、植被覆盖等。利用这些数据,可以更准确地了解野外环境,评估潜在风险,优化公路修建方案,并为施工人员提供实时的导航和引导。无人机航测可以轻松到达人们难以接近或探测的位置。对于复杂、危险或难以进入的地形和环境条件,无人机可以快速飞行并获取高质量的数据,且具有灵活性和机动性,能够悬停在特定位置、低空飞行或穿越狭窄的区域,从而获得更全面、精确的地理信息,提供更好的资源监控和管理基础。相比于传统的人工测量方法,无人机可以高效地进行大范围的数据采集,极大地减少野外测量工作的安全风险,避免这些潜在的危险,提高工作安全性,并节约人力资源和时间成本。然而,山地地形的陡峭和植被茂密,加上可能遭遇到静态障碍物如树木、岩石等,以及动态障碍物如飞行类动物,都会对无人机的航行安全和数据采集产生影响,给无人机山地航测带来了极大的阻碍,导致经常发生坠机的风险[2]。面对这种情况,进行无人机山地航测避障路径的有效规划是十分必要的。
在上述背景下,关于无人机航行路径规划的研究有很多,例如张涛等[3]在其研究中通过一个指数函数来对复杂地貌进行了描述,以路径最短作为适应度函数,用于评估无人机的飞行轨迹,通过改进人工鱼群算法进行优化求解,得出无人机的最短飞行路径。该研究中改进了人工鱼群算法,因此解决了容易陷入局部最优路径的问题,但是该算法的收敛速度相对较慢,因此在路径规划时经常出现较大的延迟,不利于无人机执行快速反应。陈明强等[4]在其研究中分析了能够影响无人机航迹规划质量的因素,从中选取了4个主要影响因素构建一个总目标函数并通过权重进行了调整,利用 BAS 算法对PSO 进行了优化,利用改进PSO求解无人机三维航迹规划路径。该方法的优点是提高了PSO的全局搜索能力,使得求出的航迹路径更短、更平滑,但是该方法引入太多信息,导致计算量增加。苏菲[5]在其研究中综合了无人机的飞行路径、平均平滑度和飞行高度3个目标,构建了综合目标函数,然后利用Golden-SA改进后的蝙蝠算法求取了约束条件下的最优飞行路径。这种方法的优点是在收敛时间以及种群收敛度方面有着良好的性能,但是良好性能的发挥是建立在精准建模的基础上,因此在面对复杂山体时,航测避障路径规划稳定性不足。
总结前人研究中存在的问题,研究一种基于滚动速度障碍法的无人机山地航测避障路径规划方法。通过本研究以期为无人机山地航测提供有效的辅助。
通过有效的路径规划能够帮助无人机在山地航测时及时规避障碍,提高飞行质量[6]。本研究中无人机山地航测避障路径规划主要分为三部分,即无人机山地航测初始路径规划、滚动速度障碍探测,基于滚动速度障碍避障的初始路径优化。下面针对这3个部分进行具体分析。
无人机山地航测是按照设计的飞行路径从起点飞行到目标节点,采集飞行过程中山地信息。在已知起点和终点的基础上,会规划出一个理想的初始航测路径,该路径可以实现飞行最短、成本最低、安全性最高等等理想目标,但是在实际航测中,理想的初始航测路径是很难实现的,因为在山地地区,无人机飞行过程中很容易遭遇动态障碍物,如飞行鸟类[7]。若不能及时避障,仍按照理想的初始航测路径飞行,无人机极容易撞上鸟类,导致坠机。为避免这一问题,需要在规划的初始路径上引入避障机制,使得规划的无人机山地航测路径更加灵活。当然,在无人机飞行过程中若没有遭遇动态障碍物,就可以一直按照理想的初始航测路径飞行,这是最期望达到的。基于上述描述可知整个研究都是在明确航测初始路径的基础上进行的[8]。为此,本环节就无人机山地航测初始路径规划进行分析。分析过程主要分为3个步骤,前一步骤建立山地环境模型,第二步骤构建路径规划的目标函数,最后步骤求解初始路径规划方案。
1)山地环境模型:
山地环境模型,即山地地貌描述函数。无人机在山地间探测,因此了解山地地形是必要的[9]。基于探测地区的基础信息以及卫星遥感信息,构建山地地貌模型即:
(1)
2)构建路径规划的目标函数:
目标函数可以是一个,也可以是多个,前者相比较后者容易求解,后者相比较前者,综合效率更高。在本研究中基于后者建立一个双重目标综合函数,分别包括飞行路径长度、路径平滑度[10]。将构建的山地环境模型输入其中,获取目标函数为:
P=A(x,y)(w1B1+w2B2)
(2)
其中:P代表综合目标函数;B1代表飞行距离函数;B2代表路径平滑度函数;w1、w2代表3个函数对应的权重,且w1+w2=1。
1)飞行路径长度函数B1:
在理想环境中,无人机的飞行长度当然是越短越好,为此,计算已知出发点和终点的基础建立的飞行距离函数,即:
(3)
其中:m代表无人机飞行路径上航迹点总数,b(j,j+1)代表无人机飞行路径上第j个航迹点与下一个航迹点之间的距离,表示为:
(4)
式中,(Xj,Yj,Zj)、(Xj+1,Yj+1,Zj+1)分别代表第j个航迹点和下一个航迹点的三维坐标。无人机的飞行路径长度越短越好[11],因此该函数取其最小值,即minB1。
2)路径平滑度函数:
路径越平滑代表无人机飞行过程中的偏转和俯仰的次数更少,这样就能极大降低无人机的机动次数,不仅有利于节约能耗,也有利于飞行安全[12]。由此建立路径平滑函数,即
(5)
式中,c(l(j,j+1),l(j+1,j+2))代表无人机飞行路径上第j个航迹点与第j+1个航迹点之间、第j+1个航迹点与第j+2个航迹点路径线段之间的偏转角;d(j,j+1)、d(j+1,j+2)代表第j个航迹点与第j+1个航迹点之间、第j+1个航迹点与第j+2个航迹点之间的俯仰角。无人机的飞行路径越平滑越好,因此该函数取其最大值,即maxB2。
3)求解初始路径规划方案:
在构建完目标函数之后,需要对目标函数进行求解,求出的最优解就是初始路径规划方案。布谷鸟搜索算法是一种基于布谷鸟繁殖期间寻找最佳巢穴过程而开发的寻优搜索算法,具有全局搜索能力强,收敛精度较高等优势,但是该算法前期收敛速度略有欠缺。针对这一点,在本研究中将算法中的飞行步长比例因子设置为一个变量,通过调整该参数来调节算法前后期对搜索能力不同的要求。该参数设置如下:
(6)
式中,ι代表飞行步长比例因子;ιmax、ιmin分别ι的最大和最小值;N代表当前迭代次数;Nmax代表最大迭代次数。
改进后的布谷鸟搜索算法求取初始路径规划方案过程如下:
1)设置该算法的初始参数。
2)在搜索空间中随机产生多个鸟窝位置,得到初始种群。一条完整的无人机航测路径是由多个航迹点连接而成的多段路径线段组成的,每一条路径线段都代表一个鸟窝位置,因此由这些路径线段构成的集合就是鸟窝位置初始种群。
3)对初始种群中每一个鸟窝位置,也就是路径线段进行编码。
4)构建适应度函数。适应度函数是评价种群中每一个个体优劣程度的指标,是找到无人机初始全局最优路径的重要保证,基于上述构建的双重目标函数,获取无人机初始路径,即
(7)
5)按照上述公式(7)计算每一个鸟窝位置的适应度函数值,选出其中最大值并将其对应的鸟窝位置保留到下一代。
6)更新除最大值对应的鸟窝位置外所有剩余鸟窝的位置。
7)按照上述公式(7)再次计算更新后的鸟窝位置的适应度函数值并选出最大值对应的鸟窝位置。
8)将这一代最优鸟窝位置与上一代最优鸟窝位置进行对比。若前者大于后者,则利用前者代替后者,否则保持后者不变。
9)重复上述过程,直至达到最大迭代次数,结束算法,得到最优初始路径组成线段的集合,将集合中的线段连接,就是一条完整的初始路径;否则回到步骤4)。基于上述过程,得到理想的初始航测路径。通过初始路径规划可以预先计算和规划避开山地区域中存在的静态障碍物位置,减少无人机飞行过程中的碰撞风险。
将上述研究获取的理想无人机飞行初始航测路径赋予给无人机,无人机会按照初始路径进行飞行航测。在实际中,飞行过程中极有可能遭遇动态障碍物,若是按照既定的飞行路径飞行,会撞上动态障碍物,因此需要避障[13]。而要实现有效的避障,探测障碍是重要的前提和基础。滚动速度障碍法是一种基于滚动窗口的思想,将无人机当前所处位置的一定范围内的障碍物信息与预定义的安全距离进行比较,获取最优路径的方法。滚动速度障碍探测过程主要分为两步,第一步识别初始航测路径上是否出现障碍物,第二步是设置一个滚动窗口,该窗口包含无人机当前位置及其周围的一定范围内的障碍物信息,判断当存在故障时,该故障是否与无人机发生冲突,也就是该故障是否影响无人机的飞行[14]。下面进行具体分析。
1.2.1 图像预处理及障碍识别
当无人机起飞后,其上搭载的CCD传感器同时启动,在采集山地地貌图像的同时,也获得了飞行时的环境图像[15]。基于采集到的环境图像,进行路径上速度障碍物的识别。但采集到的图像中可能包含噪声、背景干扰等因素,和数目、建筑等障碍物,影响无人机的路径规划能力,为此,首先对采集的环境图像进行预处理。具体如下。
1)图像灰度化:
CCD传感器采集到的原始图像中为彩色图像,信息量较大,为减少后期运算量,需要对无人机初始路径规划的图像进行灰度化处理,处理公式如下:
(8)
式中,Z(k,m)代表处理后像素点(k,m)处的灰度值;R(k,m)、G(k,m)、B(k,m)代表红、绿、蓝原始3个基色分量。
2)图像去噪:
图像中含有噪声是难以避免的,但是为了避免噪声产生的干扰,需要去除掉图像中的噪声像素[16]。去除方法为均值滤波法。该方法是通过滑动滤波模板,让板中各像素点像素值的均值去替换掉板中中间位置的像素值。均值滤波法表达式如下:
(9)
式中,E(k,m)代表均值滤波后像素点(k,m)处的像素值;M代表滤波模板U中像素点个数。
3)直方图均衡化:
当航测遭遇较为恶劣的天气时,采集到的图像会存在一定对比度失衡的情况,也就是过亮或者过暗的情况[17]。针对这一点,可以通过直方图均衡化操作来对亮度进行调节,从而提高对比度。直方图均衡化的变换函数的公式如下:
(10)
式中,F(k,m)代表直方图均衡化变换后(k,m)处的像素灰度值;ν代表灰度级的数量;f(T)代表灰度值≤阈值T的像素数;α×β代表图像的尺寸;minf代表最小非零灰度值的像素数。
针对预处理好的图像,利用卷积神经网络构建障碍物识别模型。识别模型的识别过程总共分为5步:第一步输入预处理好的CCD图像;第二步图像进行第二层卷积层,顾名思义,就是对CCD图像进行卷积操作,卷积的目的提取图像的特征。图像特征是进行后续识别的依据,卷积层一般会设置多个卷积核,通过这些卷积核提取到多个局部特征。第三步进入下采样层,卷积层提取到了多个局部特征,但是有的局部特征属于冗余特征,其存在会增大Softmax 函数的识别工作量,因此下采样层的作用是实现特征的降维。第四步进入全连接层,该层的作用是将降维后的特征全连接到一起,形成一维特征向量。第五步进入输出层,利用Softmax 函数将障碍物类别输出转换为概率输出,然后依据隶属度最大原则将概率最大值对应的那一类作为识别结果。
1.2.2 速度障碍碰撞分析
通过滚动窗口的方式明确在无人机飞行的初始路径上是否存在障碍。假设存在障碍后,由于无人机与障碍物二者都处于动态移动中,且识别到障碍时,二者之间还存在一定的距离[18],当二者沿着既定的轨迹持续飞行的话,在t时间后是否会发生碰撞还需要进一步确定,有可能在t时刻二者相遇,发生碰撞,也可能二者错开,并不会发生冲突[19]。速度障碍法就是基于上述问题,提出了一种解决方法。该方法中定义了一个相对速度障碍区域,当相对速度的指向与该区域有重合时,视为无人机与障碍物之间存在飞行冲突,否则不存在。基于定义,速度障碍分析,实质也就是飞行冲突分析[20]。该探测器计算出无人机与障碍物之间的距离是关键,为获得这一参数,无人机上一般还会搭载超声波测距仪。当识别出障碍后,会立刻触发超声波测距仪,超声波测距仪会向着障碍物发送超声波,当超声波接触到障碍物之后,会被反射回来,最后借助超声波往返之间时间通过下述计算就可以确定无人机与识别出来的障碍物之间的距离。
(11)
式中,g代表无人机与识别出来的障碍物之间的距离;h代表超声波在空气中的声速;Δt代表超声波往返时间;χ代表环境温度。基于g建立速度障碍模型,如图1所示。
图1 速度障碍模型
在图1中,无人机所在位置为I点,障碍物中心点的为o,r′为无人机与障碍物之间不发生碰撞的安全半径,围绕o,以该半径画圆,得到速度障碍区。在图中还有1条直线SIO,该条直线代表了无人机相对障碍物移动速度所在直线。此外,还有两个角,ϑ代表连线IO与相对移动速度V之间的夹角;θ代表无人机与障碍物之间连线IO与速度障碍区边界的夹角,由下述公式求出。
(12)
在上述图2模型中以O为原点,IO方向作为横坐标轴,垂直IO引出一条射线,建立一个二维直角坐标系,分别计算无人机和障碍的移动速度,计算公式如下:
(13)
图2 山地环境模型图
式中,V1、V2分别代表无人机和障碍的移动速度;u1、u2分别代表无人机和障碍的速率;ε1、ε2分别代表无人机和障碍的与横轴之间形成的正向夹角。
(14)
接下来,根据得到的飞行碰撞阈值,构建碰撞发生判断规则:当无人机所在直线SIO落在速度障碍区,且θ>φ时,认为二者发生了飞行冲突,也就是在t时刻后二者会发生碰撞[22];否则,不会发生飞行冲突,以此完成速度障碍碰撞分析,判定无人机是否有可能与障碍物发生碰撞,方便选择最优路径。
当无人机与动态障碍物之间存在飞行冲突后,无人机若是按照章节1.1规划的初始路径继续飞行的话,必然会发生碰撞。针对这种情况,通过滚动速度障碍避障来对初始路径进行优化。研究主要分为两个步骤,前一步计算无人机滚动避障角度并判断是否采用该方式进行避障,后一步计算无人机避障速度,然后回到初始航行路径上,实现基于滚动速度障碍避障的初始路径优化。
1)滚动角度避障方法:
Δδ=δ-τ′
(15)
式中,Δδ代表用于无人机航向调整的滚动角度;τ′代表无人机移动速度V1与横轴的夹角。
判断求出的Δδ是否在航向改变范围之内,也就是Δδ是否小于等于最大滚动角度阈值?若是,控制无人机让其按照上述调整滚动角度调整航向,当无人机沿着障碍区边界绕过障碍后,再回到初始路径上,继续沿着路径飞行,直至再次遇到动态障碍,再次启动上述程序躲避障碍,重复上述过程,最终到达目的地。否则,启用下一个避障策略。
2)速度避障方法:
当滚动角度避障策略无法实施后,则需要通过调整无人机飞行速度来进行避障,即速度避障。通过提高或者降低无人机速度,使其错过与障碍物的相遇时间,让其自身不进入障碍区,从而实现避障[24]。这种避障的好处是不需要改变无人机的原始航测路径,能够一直按照理想路径飞行。最后按照下述公式计算速度调整量,即
(16)
L′=φ(ΔV+Δδ)
(17)
当通过调整无人机飞行速度规避掉障碍之后,无人机恢复原始飞行速度,继续沿着原始路径飞行,直至再次遇到动态障碍,再次启动上述程序躲避障碍,不断更新滚动窗口和障碍物信息,获取最优路径。
为验证滚动速度障碍法求得的路径是否为最优,与改进人工鱼群算法(文献[3]方法)、改进PSO算法(文献[4]方法)、改进蝙蝠算法(文献[5]方法)求得的路径方案进行对比,3种方法的主要参数如表1所示。
表1 对比方法的主要参数表
主要实验过程如下:
1)根据山地环境模型A(x,y),建立路径规划综合目标函数P;
2)计算飞行路径长度函数B1和路径平滑度函数B2,获取初始路径规划方案Ll;
3)对图像经过灰度化、去噪、直方图均衡化处理后F(k,m),识别障碍物信息,分析速度障碍碰撞情况;
4)通过滚动速度障碍法调整无人机飞行航向角度,获取最优路径L′。
实验主要硬件设备为:CPU-AMD Ryzen 9 5950X;GPU-AMD Radeon RX 6900 XT;网络连接-支持高速以太网和无线网络连接的网卡;内存-32 GB。
下面针对整个实验测试过程进行具体分析。
以某山地地区作为研究区,公式(1)构建的山地环境函数将探测地区的若干山体映射到长、宽高、为 100 m × 100 m ×100 m 的三维空间中,生成山地环境模型,如图2所示。
研究区山地基本参数如表2所示。
表2 研究区山地基本参数表
以一架四翼无人机为载体,搭载CCD传感器、超声波超声波测距仪以及其它航测设备,对其飞行路径进行规划,如图3所示。
图3 无人机示意图
该无人机飞行数据如表3所示。
表3 无人机飞行数据
利用改进布谷鸟搜索算法求解图2山地环境中,无人机从出发点到达终点的初始航测路径规划方案,如图4所示。
图4 无人机初始航测路径规划
人为设置无人机飞行的初始航测路径遭遇了5个鸟类动态障碍,这些障碍位置如图5所示。
图5 动态障碍位置分布图
设置无人机初始速度为8 m/s,让其按照图4初始航测路径飞行,当遭遇图5设置的动态障碍时,基于章节1.3研究,进行避障,优化航测路径,结果如图6所示。
图6 优化后的航测路径
从图6中可以看出,无人机在飞行途中遭遇5个动态障碍时,前4个障碍选择了通过调整滚动角度来避障,最后1个障碍则通过调整飞行速度来避障,具体避障方案如表4所示。
表4 避障参数
为进一步测试滚动速度障碍法在无人机山地航测避障路径规划中的应用效果,以改进人工鱼群算法、改进PSO算法、改进蝙蝠算法为对比项。在相同测试环境和参数下,利用对比方法规划无人机山地航测避障路径。最后统计路径的长度以及平滑度,以此验证路径规划方法的合理性,结果如表5所示。
表5 路径长度以及平滑度对比表
从表5中可以看出,滚动速度障碍法求出的航测避障路径长度最小,为571.45m,短于改进人工鱼群算法、改进PSO算法、改进蝙蝠算法,且滚动速度障碍法的平滑度大于其他3种对比方法,为165.52。综合来看,滚动速度障碍法应用下求得的无人机山地航测避障路径综合性能更强,规划方案更为合理。
航测是了解土地资源利用、森林资源分布、山体布局等的重要手段。山地地势陡峭,环境较为恶劣,工作人员很难亲身到达,即使到达山中,风险性也较高,因此通过无人机搭载航测设备来替代人工进行测量,不仅效率高,风险性也较低。然而,无人机在山中飞行时,经常遇到鸟类等动态障碍,这给无人机航测带来了巨大的困难。面对这种情况,如何在飞行过程中让无人机及时规避掉障碍,同时保证飞行的综合效益成为当下研究的重点。为此,进行基于滚动速度障碍法的无人机山地航测避障路径规划研究。该研究主要取得如下研究成果:一是通过改进改进布谷鸟搜索算法得到了满足无人机飞行路径最短和路径平滑度最高两个目标的初始航测路径;二是对初始航测路径上出现的动态障碍,建立速度障碍模型进行了飞行冲突分析;三是通过计算滚动角度和飞行速度调整量来帮助无人机规避障碍,实现初始航测路径的优化。通过仿真实验验证了所提方法的有效性与优越性。然而针对这个方法依然有许多不足之处等待进一步的研究:本研究中规划的初始航测路径没有将无人机飞行能耗考虑进去、无人机的电量是有限的,否则一旦能量耗尽,就需要返回出发点进行充电,会降低航测效率。基于此,在规划初始航测路径时,有必要将无人机能耗考虑进去。在下一步研究中,将针对这一点,进行进一步研究,以完善和优化无人机航测路径。