无人船在民用领域和军事领域都具有非常广泛的用途,在民用领域,无人船可用于海洋信息监测、海洋资源探测、海上快速救援等,在军事领域,无人船可完成对可疑地区的侦查、封锁、反潜以及军事打击等。无人船之所以在二战后得到迅速发展并得到各国政府的重视,是由于现代化信息技术的发展支持,使得无人船的用途越来越多样化。在GPS、北斗导航、海洋路径规划、无线通信技术以及图像处理技术的支持下,无人船可实现定点巡航,并对目标实现自动快速检测[1 − 2]。
相对于传统的固定浮标观测系统,使用无人船对目标的观测和跟踪可实现定点观测、移动跟踪等功能,特别是针对一些海上入侵事件、海上撞船事故现场等,这些场合都需对目标进行移动跟踪。在无人船控制领域有半自动和全自动2种方式,半自动是通过人为远程遥控帮助无人船规定行动路径,并使用摄像头观察周围环境,以保证对目标船舶的识别及跟踪,但这种方式费时费力,且实时性难以保证[3]。另外一种方式是全自动规划路径的无人船,结合GPS、雷达系统、AIS系统等使得无人船以根据规划的行动路径达到海上指定位置,并通过视频检测的方式来实现对现场环境的识别及可疑船舶的移动跟踪,相对于半自动控制方式,全自动无人船在加入控制算法及视觉检测后更加智能化,为同时控制大量的无人船舶提供了可能[4 − 5]。
目前,对无人船的研究主要集中在路径规划、目标识别等方面,在目标识别上,有很多研究者采用双目识别来完成对目标的测距,并识别其运动路线,同时将所有目标分为固定浮标、普通船舶、邮轮、砂船、帆船等,建立船舶数据库,将获取的船舶图像和建立的数据库进行对比,进而达到对目标识别的目的。本文提出一种无人船红外图像单目视觉检测方案,对海上目标检测算法YOLOV7进行了研究,并使用KCF算法实现对其他船舶目标的跟踪。
1 单目视觉检测技术 1.1 单目视觉检测原理在无人船上设置的相机可捕获外界环境或目标图片,获取的图片为二维图像,在视觉检测中需构建三维图形,因而就需要对二维图形中的所有目标边缘、线、轮廓点进行识别和提取,同时通过相机不断获取图像,并通过比较这些图像了解图像中的不同目标变化,使用一定算法将这些二维图形还原成三维图形。在单目视觉检测中最大的难点是获取不同目标的景深,只能通过运动的视觉差距、尺度不变特征等来对目标景深进行判断[6]。
1.2 YOLOV7目标检测YOLOV7是目前世界上实现目标检测最快的算法之一,其底层基础是基于深度神经网络的图像目标识别。YOLOV7主要包括input、backbone和head等部分。Input为输入的图片,backbone为主干网络,用于提取图片的主要特征,head主要用于输出预测结果。
在使用YOLOV7对红外图像进行识别时,需采取的步骤主要包括:
1)选择红外图片训练集
由于在无人船上实现对目标的识别及跟踪采用的是红外图像,因而需建立红外图片训练集,其中3000张用于训练,200张用于验证,1000张用于测试,可保证建立的YOLOV7目标识别模型拥有足够的泛化能力以及对无人船红外目标的识别能力。
2)图片的预处理
将所有数据集中的图片大小规定为640*640*3,图2为数据集的船舶种类数量分布,由于本文采取的数据集中船舶的数量较多,但浮标、军舰的数量则较少,因而在对目标的识别过程中会由于图片中不同目标数量的极为不平衡而导致建立的YOLOV7需要大量的训练次数,才能达到对所有目标实现较高识别率。因而,需在后续的处理中对不同类别的目标赋以不同权重,并以此来确定不同目标的损失函数,从而避免在YOLOV7模型中出现过度拟合的情况。
3)模型训练
使用训练集对模型进行训练,并使用验证集对已经训练完成的模型进行验证。使用损失函数来对模型进行评价,得到如图3所示红外图像目标识别损失结果,可发现类别的训练损失和目标函数的损失值都会随着训练次数的增加而不断降低。这就意味着,随着训练次数的增加,当前建立的YOLOV7模型识别红外图像目标的概率变得越来越高。
4)采用完成训练的YOLOV7模型对测试集红外图像进行测试,得到的结果如图4所示,可发现,系统能完成对常见的浮标、船舶、砂船等的识别,且具有较高准确率。
在使用单目视觉检测技术发现周围环境中的目标后,就需确定一个目标进行跟踪,目标跟踪任务为无人船实现其功能的关键。图5为KCF算法的流程图。
对目标进行跟踪的过程为:
1)确定跟踪目标
在初始图像中将目标和环境分开,这些环境包括海洋、天空、其他船舶或固定障碍物,将目标作为正样本,其他作为负样本,而对于任意图像而言,负样本的数量几乎无限,因而需将这些负样本进行合并。采用基于“核岭回归”的跟踪器,该跟踪器能对负样本进行有效分类和过滤。
2)预计算
图片尺寸设置为60×60,预计算主要是为了将导入的图片转化为长度为n的特征向量,计算出HOG特征值。为了计算出HOG特征值,需获取图片的梯度图,梯度方向θ和强度值g的计算方法为:
$ \theta = \arctan \frac{{{g_x}}}{{{g_y}}} \text{,} $ |
$ g = \sqrt {g_x^2 + g_y^2} \text{。} $ |
对图像进行分割,分割的大小为8×8,计算图片中的每一个像素点的g和θ,对图像进行标准化操作,并得到HOG向量。
3)快速核计算
将输出图像转换到离散傅里叶空间进行点积运算,离散傅里叶空间表示如下:
$ {\boldsymbol{F}}=\left[\begin{array}{lllllllllll} 1 & 1 & \cdots & 1 & 1\\ 1& {w}& \cdots& {{w}}^{{n}-2}& {{w}}^{{n}-1}\\ 1& {{w}}^{{2}}& \cdots& {{w}}^{{2}({n}-2)}& {{w}}^{{2}({n}-1)}\\ \cdots & \cdots & \cdots& \cdots & \cdots \\ 1 & {{w}}^{{n}-1}& \cdots& {{w}}^{({n-1})({n}-2)}& {{w}}^{({n}-1{)}^{2}}\end{array}\right] {。} $ |
使用循环转换模型将得到的离散傅里叶矩阵进行对角化计算,即
$ X=F\text{diag}(\stackrel{\wedge }{{x}}){{\boldsymbol{F}}}^{H} \text{,} $ |
因而,多项式
$ {K}^{X{X}^{\text{'}}}=({{\boldsymbol{F}}}^{-1}(\stackrel{\wedge }{x}\otimes \stackrel{\wedge }{{x}^{{'}}}))+a \text{。} $ |
式中:F−1为傅里叶逆变换,
$ {K}^{X{X}^{{'}}}=\text{exp}\left(-\frac{1}{{\sigma }^{2}}\left(\Vert {x}_{i}^{2}\Vert +\Vert {x}_{j}^{2}\Vert \right)-2{({{\boldsymbol{F}}}^{-1}(\stackrel{\wedge }{x}\otimes \stackrel{\wedge }{{x}^{{'}}}))}^{\rm{T}}\right) \text{。} $ |
4)训练分类器并更新
为了能够持续跟踪到这个目标,就需训练一个分类器,并且确保这个分类器能持续地将目标和环境分开,进而实现目标的跟踪。KCF算法中采用的分类器有效使用了图片中的前景和背景,因而对目标的识别效率得到了大幅度提升。使用分类器对样本进行训练,并不断对建立的KCF算法模型进行更新;
5)目标定位及跟踪
在连续的图片中寻找到目标位置并持续跟踪。
2.2 仿真分析使用无人船单相机拍摄的连续单一目标图片建立训练集,单一目标图片数量为10个大类,每一个大类下面图片数量为40张,共计400张,一半作为训练集,另一半作为测试集,训练次数设置为500次,使用DCF和KCF这2种算法对同一数据集进行训练和测试,对同一目标的位置进行跟踪,记录跟踪误差,得到的结果如图6所示。可发现随着设定跟踪误差阈值的增大,KCF算法和DCF算法跟踪的准确率都在不断上升,跟踪误差阈值设置为30 cm时,KCF算法的跟踪准确率最大值为0.78,优于同等情况下的DCF算法,跟踪误差阈值继续增加后跟踪准确率没有出现明显提升。
无人船在未来科研、军事、民用等领域具有非常广泛的应用,无人船红外图像单目视觉检测是实现对目标识别、跟踪的关键,本文在充分研究无人船图像单目视觉检测技术的基础上,使用YOLOV7算法和KCF算法对无人船红外图像进行了识别和跟踪。本文得到的结论主要如下:
1)使用YOLOV7算法通过一定次数训练后可以实现对红外图像目标的识别,且具有很高的准确率,训练次数的增加可有效降低目标函数和类别的损失值;
2)KCF算法可有效将红外图像中的背景和目标区分开,实现负样本的有效过滤,使用循环转换模型可快速实现径向基函数的计算,在经过一定次数训练后可实现对船舶目标的识别并跟踪。
[1] |
金久才, 张家林, 刘德庆, 等. 基于改进SiamRPN的高速无人船海上目标视觉跟踪研究[J]. 海洋科学进展, 1−10. JIN Jiu-cai, ZHANG Jia-lin, LIU De-qing, et al. Research on visual tracking of marine targets by high-speed unmanned ship based on improved SiamRPN[J]. Progress in Marine Science, 1−10. |
[2] |
李可染, 李立刚, 贺则昊, 等. 基于岸堤特征提取的近岸无人船激光SLAM方法[J]. 激光与光电子学进展, 1−20. LI Ke-ran, LI Li-gang, HE Ze-hao, et al. Laser SLAM method for nearshore unmanned ship based on embankment feature extraction[J]. Progress in Laser and Optoelectronics, 1−20. |
[3] |
葛燕龙, 金久才, 李立刚, 等. 视觉辅助下的无人船双雷达障碍物融合检测技术[J]. 舰船科学技术, 2023, 45(20): 87-92. GE Yan-long, JIN Jiu-cai, LI Li-gang, et al. Dual radar obstacle fusion detection technology for unmanned ship with visual aid[J]. Ship Science and Technology, 2023, 45(20): 87-92. DOI:10.3404/j.issn.1672-7649.2023.20.016 |
[4] |
谭静仪, 潘进, 黄婷, 等. 多变光照下的无人船图像模糊纹理光点定位识别[J]. 舰船科学技术, 2021, 43(12): 61-63. TAN Jing-yi, PAN Jin, HUANG Ting, et al. Positioning and recognition of blurred texture light spot in unmanned ship image under variable illumination[J]. Ship Science and Technology, 2021, 43(12): 61-63. DOI:10.3404/j.issn.1672-7649.2021.6A.021 |
[5] |
刘雨青, 姜亚锋, 邢博闻, 等. 基于无人船装置的大水域环境监测系统设计[J]. 船舶工程, 2019, 41(1): 17-22+73. LIU Yu-qing, JIANG Ya-feng, XING Bo-wen, et al. Design of large water area environmental monitoring system based on unmanned ship device[J]. Ship Engineering, 2019, 41(1): 17-22+73. |
[6] |
王贵槐, 谢朔, 初秀民, 等. 基于深度学习的水面无人船前方船只图像识别方法[J]. 船舶工程, 2018, 40(4): 19-22+99. WANG Gui-huai, XIE Shuo, CHU Xiu-min, et al. Image recognition method for front ship of unmanned surface ship based on deep learning[J]. Ship Engineering, 2018, 40(4): 19-22+99. |