2. 河南科技职业大学信息工程学院,河南 周口 466100
2. School of Information Engineering, Henan Vocational University of Science and Technology, Zhoukou 466100, China
卷积神经网络作为船舶纹理识别中一种较为常见的排障网络模型,可以借助噪声图像对船舶外形进行色彩通道分离,并针对船体的每处纹理在各色彩通道上进行卷积,最后经过特征识别,对噪声加以分类,从而借助网络提取出船舶存在的安全隐患,并据此进行针对性的维护[1-3]。
而在识别分类的细节上,卷积神经网络会基于不同的识别步骤形成不同的排障模型。目前最为常见的2种模型分别为One-stage和Two-stage。其中Two-stage算法有着较高的精确度与时间复杂度,但是在对船舶纹理图形进行分类的过程中,对计算机硬件也有着较高的要求。而One-stage算法虽然没有形成预选框的步骤,导致其在精度上会稍逊于Two-stage,但在算法时间的占用上却较短,可以及时协助技术人员找出船舶存在的裂纹隐患,从而加快维修效率,缩短维修时间。本文从One-stage算法入手,以民用工程船为例,通过结合实景拍摄搜集相关数据,并导入系统进行计算,搭建一个较为完整的船舶纹理图形排查模型[4-5]。
1 深度学习框架选择随着信息技术的发展,船舶行业在发展过程中也在“互联网+”的时代背景上进行产业升级,其中引入的深度学习框架,在对船舶进行检修的过程中可以为其提供丰富的函数库,从而协助维修人员更为高效地完成相关安全检查作业。目前关于深度学习框架的网络搭建,主要有Caffe,Tensorflow,Keras,Pytorch四类,极大地丰富了船舶纹理的检测,让操作人员在使用的过程中可以从多元的模型里挑选出更适合针对性故障识别的工具[6]。
其中Caffe在使用中,如果需要引入新变量,则需相适应的加入C++语言进行编程,从而增大了操作人员的工作量;Tensorflow在功能上只支持静态计算图,因此要想对民用工程船进行纹理识别,必须先被编译才可正常运行;而Keras在运行的过程中需要占用一定的内存,并且速度较慢,因此本文考虑深度学习框架的功能性、易操作性、效率性等综合因素,最终选择其中的Pytorch框架来构建YOLOv5卷积神经网络及改进卷积神经网络。
2 基于改进卷积神经网络的船舶纹理识别方法 2.1 数据集的制作改进卷积神经网络在实际应用中具有很强的现实意义,真正起到识别民用工程船的船舶纹理效果,因此需求在进行操作之前先构建一个民用工程船纹理的可用数据库。搜集了2239张民用工程船纹理图形样本,并将船舶纹理进行了样本分类。最终得到了正样本1121张,负样本1118张,并录入数据库作为本次研究的依据。
2.2 数据标注借助能够兼容Python版本的LabelImage对其中正样本中含有噪声的图像进行标注,并由操作人员亲自编辑名称,从而保证标注的可靠性。待标注完成后,将相关信息以VOC数据格式生成,并录入XML文件,注明其原始图片尺寸、边界框坐标以及噪声类别等信息。
最后,将1121张民用工程船正样本纹理图形按照9∶1进行训练集与测试集的分类,创建Annotations文件夹保存以上标记语言,创建JPEGImages文件夹保存以上原始船舶纹理图像,创建ImageSets文件夹保存训练集与测试集。
2.3 图像增强与预处理图像扩充为了可以更好地体现改进卷积神经网络在船舶领域的应用功能,提升船舶纹理的识别准确度,采用Mosaic方法对本次搜集的船舶纹理素材按照随机缩放、剪裁、排布等方式进行扩充。一方面,是为了可以丰富样本数据库,提升网络鲁棒性;另一方面,则起到平衡大小噪声比例的作用,使其更适用于不同网络的训练。
对船舶纹理进行了灰度化处理后,考虑到船舶纹理会受到诸如气候、光线、建筑遮挡等因素的影响,而致使收集的图像在灰度值上呈现出如图1(a)所示的集聚现象,因此通过灰度线性变换,对船舶纹理图像进行如图1(b)所示的处理,通过改变其灰度参数,从而防止在后续识别中因船舶纹理过亮或过暗,而干扰训练结果。
在以上操作中,为了可以保持船舶纹理样本的特征,方便提取以及最终结果的表达,在纹理线性变换上,实施如下计算:
$ Out\left( {x,y} \right) = a \times In\left( {x,y} \right) + b,\\ 0\leqslant \text{x}\leqslant W\text{,}0\leqslant \text{y}\leqslant H \text{。} $ | (1) |
式中:Out(x,y)为输出船舶纹理像素,In(x,y)为输入船舶纹理像素,W为船舶纹理宽度,H为船舶纹理高度。参数a负责调节输出船舶纹理的对比度,参数b负责调节输出船舶纹理的亮度,并将以上计算结果按照归一化方法进行数据分析。
本文采用的原始船舶图片由于外部光线等原因导致噪声与背景的灰度十分接近,很难明确噪声位置与自身的轮廓。图2(a)和2(c)为原始图片,经过图像增强后的图像如图2(b)和(d)所示,灰度集聚问题得到了改善。
为探讨其他算法在本次收集的数据库与训练参数中可以呈现出相同的结果,分别选取了Faster R-CNN与SSD两组模型对本次收集的船舶纹理展开分别训练。
3.1 Faster R-CNN结构与方法分析在关于Faster R-CNN的识别中,设计区域生成网络(region proposal networks,RPN),并通过卷积操作对船舶纹理的特征进行筛选分析,最终形成候选区。分析可知,Faster R-CNN在操作流程上较精简,因此不仅可以缩短排障的时间,并且还能提升船舶裂纹的识别效率。按照以上研究思路,通过卷积的特征进行图形分割改进,将数据库中的船舶纹理识别分为2条路径:1)按照区域生成网络,得到候选区域;2)直接向后传播并整合船舶纹理特征,进行回归分析与分类。
依据前文创建的相关数据库进行测试,采用Tensorflow作为本次深度学习框架,为保证输入图像的格式统一,将数据库中录入的相关图片尺寸统一按比例调整为240 mm×240 mm,并通过镜像、旋转等方式对数据库进一步扩充。待完成以上流程,再借助Faster R-CNN对本次的船舶纹理图形数据库实施ImageNet预训练,并基于观察结果进行相关的指标评价。在网络收敛完成后识别结果,如表1所示。借助Faster R-CNN进行的船舶纹理识别,因为焊接节点失误而造成船舶裂纹的识别精度(AP)仅有0.487,由于结构设计不精细,识别的平均精度仅有0.498,损失值为0.102。
此外,按照深度学习框架选择优劣对比可知,该检测识别耗时较长,也极大地拖慢了操作人员对船舶纹理的排障时间。由此看出,基于Faster R-CNN的船舶纹理识别可行性不高,需要展开进一步的改进。
3.2 SSD结构与结果对比本文基于One-stage算法,采取SSD(single shot multibox detector)对YOLO算法进行改进,得出如下改进算法:
$ P_i = \frac{{D{{\left( {x_i} \right)}^2}}}{{\displaystyle\sum\nolimits_{i = 1}^n {D{{\left( {x_i} \right)}^2}} }} \text{。} $ | (2) |
式中:Pi为计算出下一个聚类中心的概率,D(xi)为聚类中心的最短距离,n为本次收集的船舶纹理样本量。
通过对其进行浅层特征的融合,并对目标像素坐标进行求值,替换卷积方式并修改损失函数。最邻近元法计算示意如图3所示。
得出IoU系列的损失函数:
$ Los{s_{loU}} = 1 - loU + R\left( {Bo{x^{gt}}} \right) \text{,} $ | (3) |
其中,R为预测框与目标框的惩罚项,Boxgt为实际框。
按照SSD300模型,随机抽取特征网络中6层的特征图像,并将生成的default boxes数据通过非极大值抑制(NMS)展开筛选,得出理想的预测框。
结果分析中,采取的是SSD算法对之前搜集的船舶纹理进行识别测试。通过最终的结果呈现可知,因为焊接节点失误而造成船舶裂纹的识别精度(AP)为0.621,由于结构设计不精细而进水,导致表面腐蚀的识别精度则为0.578,平均损失值为0.0626。借助One-stage算法得出的识别精度具有明显的优势,并且SSD算法作为One-stage算法,在操作人员的排障用时上要明显短于Faster R-CNN模型的Two-stage算法。可知,基于SSD模型的One-stage算法,无论是精准度还是排障时间,都得到了一个显著的提升,其应用效率得到了一定的改进,因此可以在后续的船舶纹理识别中使用。
4 结 语民用工程船一旦出现裂纹,如不对其进行及时修补,将会给海上作业带来不可估量的危害,因此不断尝试更为先进的排障策略,降低安全隐患。因此,本文针对焊接节点以及结构腐蚀导致的船舶纹理,提出一种基于改进卷积神经网络的识别方法,并在实例结果测试中验证了其先进性及可行性。本文提出的改进措施在船舶纹理的识别过程中,与其他常用识别算法相比有着明显优势,其在应用的过程中不仅可以有效节约人力物力的运维成本,同时也可以提高民用工程船设备的安全性和稳定性。然而由于收集的相关数据量较小,因此在精准度上依旧存在一定提升的空间。
[1] |
鲁玉军, 周世豪, 胡小勇. 基于BP神经网络和小波神经网络的太阳辐射强度预测[J]. 软件工程, 2023, 26(1): 5-8+4. LU Yu-jun, ZHOU Shi-hao, HU Xiao-yong. Prediction of solar radiation intensity based on BP neural network and wavelet neural network[J]. Software Engineering, 2023, 26(1): 5-8+4. |
[2] |
刘月峰, 杨涵晰, 蔡爽, 等. 基于改进卷积神经网络的单幅图像超分辨率重建方法[J]. 计算机应用, 2019, 39(5): 1440-1447. LIU Yue-feng, YANG Han-xi, CAI Shuang, et al. Single image super-resolution reconstruction method based on improved convolutional neural network[J]. Computer Applications, 2019, 39(5): 1440-1447. |
[3] |
王霄, 朱恩照, 艾自胜. 卷积神经网络的原理及其在医学影像诊断中的应用[J]. 中国医学物理学杂志, 2022, 39(12): 1485-1489. WANG Xiao, ZHU En-zhao, AI Zi-sheng. The principle of convolutional neural network and its application in medical imaging diagnosis[J]. Chinese Journal of Medical Physics, 2022, 39(12): 1485-1489. |
[4] |
刘宇, 王伟伟, 邸克, 等. 基于SA优化BP神经网络的室内外无缝定位算法[J]. 计算机仿真, 2022, 39(12): 485-489. LIU Yu, WANG Wei-wei, DI Ke, et al. Indoor and outdoor seamless positioning algorithm based on SA optimized BP neural network[J]. Computer Simulation, 2022, 39(12): 485-489. |
[5] |
石晨晨, 陈宏涛, 杨波, 等. 基于人工神经网络的水下爆破振动预测技术[J]. 价值工程, 2022, 41(34): 133-135. SHI Chen-chen, CHEN Hong-tao, YANG Bo, et al. Underwater blasting vibration prediction technology based on artificial neural network[J]. Value Engineering, 2022, 41(34): 133-135. |
[6] |
陈欣, 王凌, 朱佳佳, 等. 深度卷积神经网络图像超分辨率重建方法研究[J]. 单片机与嵌入式系统应用, 2023, 23(1): 7-10. CHEN Xin, WANG Ling, ZHU Jiajia, et al. Research on image super-resolution reconstruction method of deep convolutional neural network[J]. Application of Microcontroller and Embedded System, 2023, 23(1): 7-10. |