APP下载

基于卷积神经网络的船舶舷号检测

2024-03-06骆双龙孙庆峰朱闯王仁君

中国储运 2024年2期
关键词:舷号注意力准确率

文/骆双龙 孙庆峰 朱闯 王仁君

引言

水路运输的运输成本较低,运输量较大,在全球贸易中的占比不断提高,内河运输也在经济发展中占有重要地位。随着经济发展与国家的支持,港口与船舶的建设都有了快速的发展,监控摄像头的布置不仅有利于港口管理而且为机器视觉奠定了基础。人工智能技术的大力发展带动了基于神经网络的机器视觉活动的发展,其中对目标检测与识别的应用比较广泛,借鉴车牌识别的应用,船舶舷号的检测识别也具有一定的研究价值,但是,船舶舷号与车牌不尽相同,主要表现在船舶舷号涂装方式不同,涂装位置不固定,字体大小不统一,这导致清晰船舶舷号图片获取难度高、相关研究较少。文章使用基于CNN的Yolov5s模型对船舶舷号进行检测,通过对Yolov5s模型加入SE注意力机制以及与Transform er结合的BoTNet注意力机制,提高检测准确率。

1.方法介绍

1.1 Yolov5s模型介绍。Yolo最早是在2016年提出来的,随着Yolo不断改进,其检测效果也逐渐提高。Yolov5模型[1-5]是由Ultralytics公司在2020年公开发布的,它是基于Yolov3[6]为基础改进而来,根据不同深度分为Yolov5s、Yolov5m、Yolov5l、Yolov5x四个模型。Yolov5s主要有四个部分,分别为输入端、主干网络、颈部以及输出端。其中Yolov5s深度小,能更好地应用在算力有限的移动设备和数据集较小的训练上。在输入端为了提高对数据集小目标检测的准确性,对图片进行随机裁剪、排布达到数据增强的效果,另外使用自适应图片缩放与锚框计算对输入图片批量归一化,还具有图像数据预处理功能。主干网络主要结构有Conv模块、C3模块、SPP模块,Conv模块是对图像卷积提取特征值,C3模块提高特征值的提取能力通过增加网络深度和感受野,SPP模块是主干网络引入颈部的池化层。颈部使用了FPN特征金字塔结构,通过上采样和下采样操作将不同层次的特征图融合到一起,生产多尺度的金字塔,以提高目标检测准确率。

1.2 Yolov5s-SE模型。SE[7-8]注意力机制主要包含两部分操作,首先是压缩,输入特征图为W×H×C时,通过全局平均池化对输入的特征进行压缩,特征图压缩为1×1×C的向量。最后是激励,通过一对全连接层和激活函数,对压缩后的特征进行非线性映射和调整,学习特征之间的权重关系,这使得SE模块能够自适应选择和强调重要特征,提高对特征的辨别能力,对映入SE注意力机制的模型命名为Yolov5s-SE模型。

1.3 Yolov5s-BoTNet模型。YOLOv5s主干特征提取网络为CNN网络,由于其具有平移不变性与局部性,因此缺乏全局建模长距离建模的能力,将自然语言处理领域的Transform er框架[9-10]与CNN进行融合形成CNN+Transform er架构即命名为Yolov5s-BoTNet,充分利用两者的优点,提高目标检测效果。Yolov5s-BoTNet利用了Transform er架构的多头自注意力,使其应用在图像分类、目标检测和实例分割的计算机视觉任务中。其原理如图1,是在ResNet的最后三个瓶颈模块中用多头自注意力(MHSA)替换空间卷积,使得目标检测方面显著改善了基线,同时还减少了参数。然而Transform er架构中的MHSA与Yolov5s-BoTNet中的MHSA是有些区别的,其表现在归一化上,Transform er使用分层标准化,而Yolov5s-BoTNet使用批量标准化。非线性激活数量不尽相同,Transformer使用一个非线性激活,Yolov5s-BoTNet使用了3个非线性激活。

图1 多头注意力机制替换原理图

2.实验准备

2.1 船舶数据集构建。本文采用的数据集来自不同渠道,主要由Seaship公开数据集以及龙船社区的船员朋友们“随手拍”渠道构建,筛选出具有舷号船舶图片2023张,对数据集按照9:1的比例划分训练集与验证集,使用Labelimg标注工具标注。

2.2 实验设置。本文实验硬件与开发环境在移动设备上进行,实验环境为:(1)中央处理器(cpu):Intel core i7-7700,(2)显卡类型:NVIDIAGTX1060(6G),(3)Cuda版本:11.3,(4)Pytorch版本:1.11.0。实验参数设置应用普遍使用的学习率、循环率、学习率动量等,在训练轮次中设置为100轮,批量大小受到GPU显卡的影响设置为8。

3.实验结果与分析

为验证Yolov5s模型对船舶舷号的检测效果以及改进后Yolov5s-SE模型、Yolov5s-BoTNet模型在船舶检测方面的效果,使用准确率(P)、召回率(R)对结果进行评估。

其中,TP代表检测正确的结果数量,FN表示捡漏的数量,FP表示误检测结果数量。测试结果如表1所示。

表1 三种模型对比结果

从准确率与召回率衡量指标来看,Yolov5s模型对船舶舷号检测效果比较好,加入了SE注意力机制的Yolov5s-SE模型,在检测准确率上有所提升,而融合了Transformer架构的Yolov5s-BoTNet模型在准确率和召回率上表现最佳。

其中对船舶舷号检测效果最佳的Yolov5s-BoTNet模型的指标如图2所示,检测效果如图3所示。

图2 Yolov5s-BoTNet模型指标

图3 检测效果图

4.结束语

本文使用基于CNN的Yolov5s模型对船舶舷号进行检测,检测效果比较好,并引入了不同的注意力机制对Yolov5s模型进行改进,通过对比结果发现加入注意力机制对准确率的提升有很大帮助。Yolov5s-BoTNet模型的精确度达到了93.95%,检测效果较佳。该改进模型对船舶舷号识别、建立船舶信息系统、船舶安全航行、依托机器视觉进行船舶管理等方面有一定的帮助。

猜你喜欢

舷号注意力准确率
让注意力“飞”回来
习近平出席海军三型主战舰艇集中交接入列活动
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
2015—2017 年宁夏各天气预报参考产品质量检验分析
战航,祖国为你命民
高速公路车牌识别标识站准确率验证法
“扬眼”APP:让注意力“变现”
A Beautiful Way Of Looking At Things
方正字库为社会特殊领域用字提供服务