韩恩全
(海军研究院,北京 100161)
自主式无人潜航器(AUV)是将人工智能、自动控制、模式识别、信息融合与理解、系统等集成技术应用于传统的水下平台上,在无人操纵的情况下自主完成复杂海洋环境中预定任务的水下机器人。
目前我国已有多型用于深海探测、水下侦察、水下作业、爆破和作战的AUV,但在避障方面普遍存在障碍物信息感知能力不强、智能化程度不高等问题。为保障AUV的安全自主航行,国外研究机构正积极开展对未知环境下AUV导航问题的研究。未知环境下的自主导航对机器人的避障能力提出了更高的要求,国外在这方面的研究中主要是采用势场法[1]、模糊控制[2]和神经网络[3]等综合技术手段来检测目标。与国外研究相比,国内也在不断开展AUV避障及避障传感器技术的研究,提出了很多解决方案,但大部分仍处于理论探索和初步实践阶段,应用于AUV的避障技术也只具备在特定的条件下使用。目前,我国AUV避障手段经历了单波束测距声呐、二维前视声呐和三维成像声呐[4]这一历程,并在发展过程中取得了关键性成果。但与国外的成熟产品相比,仍存在较大不足,特别是在三维自主避障技术方面,国外早在20世纪就开始三维成像声呐关键技术的研究,并取得了多项研究成果。美国FarSounder公司于 2001年推出 3D前视避障声呐,得到了广泛的应用。纵观我国在三维避障声呐技术的研究领域,虽然展开了三维成像声呐的关键技术研究,但在三维自主避障声呐技术的研究方面仍然处于起步阶段。因此,研究基于三维信息的无人AUV避障技术,对于提高AUV自主导航能力及智能化水平,扩展我国AUV的作战区域和巡航范围,加快军事化运用进程具有重要的意义。
AUV在复杂海洋环境中航行,可由感知系统和运动系统实现。在环境感知的基础上实现 AUV的航路规划和导航。AUV根据导航信号,控制推进器和方向舵,使得AUV主体向目标点移动,实现自主航行。
在AUV航行过程中,由于AUV位于海洋环境之中,因而必然要与环境产生交互。此时 AUV与环境构成了一个整体,所以在AUV运行的过程中必然要对一些事物进行感知,例如:准确地知道AUV当前的位置,了解AUV航行方向是否有障碍物等。只有在AUV感知到环境信息时,AUV的决策机构才能决定AUV下一步怎么做。通过执行机构完成AUV行动,根据AUV的感知信息进行下一个动作,即AUV航行过程中就是一个动作—感知循环的过程,如图1所示。
图1 AUV动作—感知循环Fig.1 AUV action-sensing cycling
AUV内部感知系统主要是对 AUV位置、姿态、速度和系统内部状态进行监控,用以感知AUV本体状态的内部感知系统:定位系统和检测系统。定位系统即根据GPS、姿态传感器等设备信息对AUV的位置、速度、姿态等进行推测;检测系统是完成AUV系统状态,例如:判断执行机构是否有效以及传感器是否故障等工作。
AUV外部感知系统主要是指AUV依据自身所携带的各种传感器,对海洋环境信息进行获取、测量和融合的一种过程。实践证明:水声技术是AUV在海洋环境下进行探测、通讯、导航和定位的最佳手段,因此AUV外部感知系统是由各种声呐及其它环境探测传感器等组成,包括三维避障声呐、导航声呐和通讯声呐,还有测量海洋水文环境的CTD、海流计等设备。其中,三维避障声呐主要完成AUV周围环境地形地貌信息的获取:导航声呐包括多普勒计程仪、声相关计程仪、长基线和短基线定位声呐,主要是根据外部信息实现 AUV自身位置的精确定位;通讯声呐主要是完成 AUV与外界的信息交互。
在一个动态非结构化的海洋环境中,AUV通过高精度的外界感知系统获得准确的信息,是AUV自主安全地导航、顺利完成指定任务的前提。因此,AUV利用自身的各种声呐传感器对外界环境信息进行主动获取或被动感知,进而对各种感知信息进行数据融合,得到周围环境信息,进而完成AUV精确定位、障碍物探测、环境模型构建等任务。
AUV环境感知与地形建模系统框图如图 2所示。AUV在海洋环境下执行特定任务的过程中,一方面,经自身携带的姿态传感器感知自身的姿态和位置;另一方面,由声呐感知外界环境信息,然后经数据信息关联,由地图构建算法建立周围环境并可视化,经与虚拟地形比较,验证环境感知系统的准确性和稳定性。环境感知系统模型主要包括:坐标系统模型、AUV运动模型、环境地图模型、声呐观测模型、环境特征的动态模型以及传感器噪声模型和系统噪声模型。
图2 环境感知系统框图Fig.2 Block diagram of environment sensing system
障碍物感知系统主要由感知声呐、任务计算机和同步控制器组成。如图3所示,障碍物探测设备包括三维自主避障声呐、多普勒计程仪等,主要功能是获取探测区域的三维环境数据信息和AUV速度、离底高度等信息。多普勒计程仪为惯导提供AUV下方水域深度信息,结合深度计确定航行海域海底深度。任务计算机主要运行数据处理软件,存储声呐获取的图像数据并进行解算,进行三位环境建模、障碍物识别。同步控制器主要控制声学设备的时序,减少相互之间的声干扰。
图3 障碍物感知系统组成Fig.3 Composition of obstacle sensing system
三维障碍物数据处理系统主要由声呐数据处理和障碍物避碰及航路规划 2部分组成。其中,声呐数据处理的功能主要包含4个方面:1)获取原始三维声呐数据;2)声呐数据解析;3)小目标探测;4)障碍物信息的环境模型建立。避障及航路规划的功能主要有 2点:实时动态路径规划和自主避障决策。
软件架构的设计依照开—闭原则,通过面向对象的封装、继承和多态降低程序模块之间的耦合度,将声呐数据模块与图像处理算法分开,实现不同类型二维或三维避碰声呐数据兼容要求。
图4 声呐数据处理软件(声呐图像、识别结果、状态信息、运动轨迹综合显示)Fig.4 Sonar data processing software(comprehensive display of sonar image,recognition result,status information,and motion track)
1.7.1 障碍物检测流程图
基于深度学习[5-6]模型的障碍物检测整体可分为 3个流程,首先利用深度卷积神经网络[7-8]对原始图像进行特征提取,在获得原始图像的特征层后,利用目标边框预测算法对目标边界框进行预测,然后检测与识别网络分别负责对产生的边界框中的内容进行修正与识别工作,最后输出结果。
图5 障碍物检测算法框图Fig.5 Block diagram of obstacle detection algorithm
1.7.2 障碍物标定
1)训练和测试样本制作。
制作训练与测试数据集,制作过程如下:
①根据三维声呐数据格式进行数据解析,生成三维避碰声呐俯视图像(垂直方向上取所有值的最大值),生成三维避碰声呐平面扇形图。
②将全部样本(从所有数据中挑选3 000张进行测试)按条次分成2部分:2 100张作为训练使用,900张作为测试使用,900张图片均属于相同航行条次。
③声呐图像统一裁剪为 800×500,最大限度利用声呐扇形探测区域。
2)三维声呐图像目标训练样本标记。
使用labelImg数据标注工具对全部3 000张图片进行标注,标注时选择将所有障碍物进行全部框选模式,标注完成后将训练样本和测试样本分别放入2个文件夹中。
3)模型训练。
模型训练参数及试验计算机参数如表1所示。
表1 模型训练参数及试验计算机参数Table 1 Model training parameters and test computer parameters
根据构建的特征提取网络模型以及设置的训练参数对特征网络进行训练,训练结果如图6所示,其中蓝色曲线为损失函数曲线。
图6 损失函数曲线Fig.6 Loss function curve
从图6可以看出,网络训练效果良好,在迭代约800次后,损失函数值约为0.22,且随着轮数的增加不断下降,说明网络训练效果比较理想。
4)模型验证。
对 900张测试图片使用训练好的模型进行障碍物识别,对识别结果进行统计,截取部分障碍物目标识别结果如图7所示。
图7 障碍物识别结果Fig.7 Obstacle recognition result
根据识别结果可以有效的检测出障碍物目标。
以漳河观音岛周边小岛、观音岛东侧崖壁为目标,验证障碍物自主规避算法。
图8 漳河水域岛屿目标Fig.8 Island target of Zhanghe reservoir
图9 试验航路简图Fig.9 Test route
以测试点1为例,说明测试结果。
图10 声呐三维成像图Fig.10 Sonar 3D imaging map
从栅格数据中可以明显看出在船舷左侧出现一高度明显延伸至水面的弧形障碍物。由于小岛2周围有一浅滩,因此在水下探测到大面积的障碍物,障碍物探测识别结果准确,可准确反映出障碍物三维轮廓图像。
试验结果显示:该自主避障算法可以较好的规避障碍物目标,从A点运行到B点。
本文采用三维成像声呐和深度学习技术,提出了水下无人航行器目标自主规避算法。通过试验过程中对三维声呐采集数据的实时观察及试验后对试验数据分析,得出图像数据可完整地反映出水下障碍物正面投影的三维轮廓,采用深度学习技术可以有效的检测出障碍物并准确计算出障碍物目标地区域,能够有效规划水下无人航行器航路,提高水下无人航行器自主航行的安全性。