APP下载

基于图像处理与深度学习算法的船舶水尺智能读数分析与研究

2020-07-04朱学海罗陨飞

质量安全与检验检测 2020年3期
关键词:水尺水线读数

朱学海 罗陨飞

(力鸿智信(北京)科技有限公司 北京 100102)

1 前言

水尺计重[1]是一种适用于大宗散装固体、价值较低、一般衡器计重困难等货物的计重方法,通过对船舶六面吃水进行观测,求得船舶的排水量,减去船舶自重和其他物件重量,计算装卸货物的重量。计量结果的准确性会受计重过程中因素的影响,目前,随着国际贸易的发展,散装货船日益大型化,货物价值不断提高,货物买卖方对水尺计重的计量准确性要求越来越高[2]。传统的人工读数方法是由专业的水尺计重工作人员攀爬舷梯或租用小型船舶等水上交通工具,在尽可能靠近吃水刻度线的位置通过人眼观测直接进行读数,或采用手持录像设备拍摄水尺标记位置的录像后统一进行读数。该方法需要花费较长的时间和较大的成本,水尺鉴定人员的人身安全不易保证,而且读数的最终确定容易受到主观因素的干扰,缺乏客观性。

近些年,随着人工智能科学技术的迅速发展,一系列新型的水尺测量设备被研究开发出来,这些设备以激光、雷达和图像识别等为检测分析原理进行测量[3-6],图像识别处理技术日益发展与完善[7-9],并陆续应用到船舶水尺测量的检测研究工作[10-13]。利用该技术对船舶水尺图像进行分析和检测,可准确完整地获得并记录船舶吃水数据,不仅可以避免目测引起的主观意向问题,且便于后续数据查询,避免商业贸易纠纷。图像处理技术的应用可以使人与计算机优势互补,提高测量数据的准确性和测量效率[14]。

2 系统组成和原理

LeonZX-IDSS智能水尺测定系统包括船舶吃水影像采集系统(硬件系统)和数据图像处理分析系统(软件系统)2部分,2系统彼此相连,详见图1。

图1 测定系统组成

影像采集系统包含稳定采集支架(手持伸缩杆或固定支架)、摄像装置、可操作云台和照明补光设备4部分;处理分析系统识别分析程序主要分为图片抽帧、水尺字符和吃水线检测、水尺读数计算和结果数据界面显示4部分。影像采集系统和处理分析系统由手持终端通过无线/有线网络连接,水尺鉴定操作人员可以手持终端单人操作,进行水尺影像的拍摄和读数。

水尺测定系统能够获得拍摄质量优良的水尺影像[15],用影像采集系统采集船舶吃水影像,操作简单便捷,搭载稳定性好,适用性广。数据图像处理分析系统对水尺影像采用抽帧转换技术,制成符合识别要求数量的图像文件;采用机器视觉技术[16],基于神经网络的深度学习算法[17],准确定位、识别局部二值化后水尺图像中的字符和吃水线,根据识别的字符和吃水线,计算出船舶水尺影像的吃水读数。

3 深度学习算法研究

3.1 字符检测

船舶水尺标记字符包括2类:水尺数字和英文字母。其中,水尺数字是0到9的10个阿拉伯数字的组合,英文字母为大写字母M。要获取准确的水尺读数,识别图片字符的信息至关重要。图像数据可以当成一种二维像素网格,而卷积神经网络[18]是一种专门处理具有类似网格状结构数据的前馈神经网络,它包括卷积层、激活函数和池化层,可以看作是一个由一系列相互连接的关联单元组成的系统,当输入一些外部刺激时,这个系统便会相应地作出反应,进而激活整个系统[19]。若输入一张二维图像A,采用二维核B进行卷积计算,其卷积结果为:S(i,j)=其中,RA和CA分别为二维图像A的行数和列数;RB和CB分别为二维核 B 的行数和列数;i,j满足 i<RA+RB-1,j<CA+CB-1。

卷积神经网络的卷积计算一般包括多层卷积,从低层次的特征开始,随着卷积层级的提升,对所得特征不断进行提取与压缩,最终得到较高层次、更加可靠的特征,利用最后一层特征完成字符的分类与回归。

对于水尺智能读数来说,除字符分类的问题外,还需要解决字符的定位问题,本文采用Faster R-CNN[20]算法。Faster R-CNN网络结构包括卷积神经网络、区域候选网络、ROI池化层和分类4部分。图片的特征图通过以卷积层、探测层、池化层搭配的卷积神经网络来提取;区域候选网络通过分类器分类得到图像前景和背景,同时剔除不合适的候选框进而获得精确的候选框;ROI池化层分为特征图和候选框,ROI池化层将每个候选框对应的特征图区域切分为固定份数,并对每一份进行最大池化以实现固定大小的输出;分类分为图像识别和精确框2部分,每个候选框属于某类的概率通过全连接层和分类器获得,同时,其位置偏移量利用框回归分析获得。Faster R-CNN算法训练分为利用训练好的网络模型训练区域候选网络、利用训练好的区域候选网络得到候选框、首次训练Fast R-CNN网络、第二次训练区域候选网络、利用训练好的区域候选网络得到候选框、第二次训练Fast R-CNN网络6步。

通过Faster R-CNN对字符进行识别定位时,会存在部分识别字符的外边框未与字符相切,导致边框大小与实际字符大小出现偏离的情况(图2)。如矩形边框abcd与字符8所处情形所示,这会对最后的水尺智能读数的计算产生较大影响,因此,需要对识别后的外边框进行矫正,使其矫正后的外边框与字符保持相切的水平。此时,可以使用灰度值遍历的方法调整字符外边框,首先,遍历外边框abcd里的所有灰度像素点,设定字符像素值阈值,然后遍历上边框ab的像素点,若ab上的像素值均小于所设定的阈值,则将ab下移1个像素距离,继续遍历,直到遍历得到的像素值大于设定阈值,此时,继续下移一定数量的像素点距离进行检验,确保每次遍历像素值均大于设定阈值,则将满足条件的首次出现的上边框a1b1记为字符上端相切边框。依次按此方法遍历字符8的右、下和左边框,所有遍历结束之后,得到字符的相切外边框ABCD,该边框即为矫正后的字符外边框。

图2 字符边框矫正

3.2 吃水线检测

对船舶吃水线进行识别时,吃水线附近船舶背景颜色会对识别效果产生一定的影响,针对不同颜色背景下的水线识别,可采取不同的识别算法。一般情况下,红色和黑色背景颜色的船体采用RG双通道像素差分法,该方法可快速识别水线,得到水线的坐标信息。水尺图像中,船体背景处于水线的上部分,水体处于水线的下部分,从上到下图像的像素分布变化呈现一定的规律性(图3),图中从左到右分别是识别的水尺图像、R通道和G通道以及R-G像素面积图、R通道像素面积差分图、R-G像素面积差分图,船体背景色为红色,水体颜色偏墨绿色,R通道和G通道以及R-G像素面积在背景区和水体区变化平稳,而在水线处各通道的像素面积会产生突变,出现陡坡,在R和R-G像素面积差分图上的量化指标也能体现出这种变化趋势,在水线处会出现极值。

图3 水尺图像R-G像素差分

其他情况的水线检测采用基于Faster R-CNN的深度学习算法,整个学习过程主要包括样本制作、模型训练、试验校正等步骤。先采集抽取jpg格式的水尺图片制成训练样本,训练样品制作过程中较为关键的是对水线的标定,水线标定的基本原则是既满足Faster R-CNN算法要求,又能对识别后的水线进行准确拟合,标定基本思路是水线分割标框,标框中心线与水线平齐;将制作好的样本置入区域候选和识别网络进行迭代训练,得到训练模型之后通过调用模型对验证用水尺图片进行水线识别,进而调整参数,优化模型;最后,根据多数水线位置信息排除被误识别的非水线,预测出未识别出的水线,实现水线的完全拟合,达到准确检测和识别水线的目的。

3.3 水尺读数计算

一般情况下,船舶水尺标记中的字符呈一条垂线竖直排列,字符高度均为10 cm,2字符间的间隔距离也为10 cm,水尺标记字符,水线经过识别和定位后,根据分析高度与实际高度的对比求出水尺读数(图4)。假定水尺图像中的字符高度为LA,水线以上最近字符下端离水线的距离为LB,相邻字符下端间的距离为LC,水线以上最近字符对应的读数为L,则读取的水尺读数X可以按公式X=L-0.1LB/LA或X=L-0.2LB/LC计算得出。

图4 水尺图像字符和水线识别

当摄像装置镜头方向与船体水尺字符存在偏离角而导致水尺图像中字符产生较大畸变,或是船体水尺标记字符自身刻绘倾斜时,处理分析系统会对畸变数字和水线间距进行校正,根据校正后的水尺图像拟合情况,分析系统即可计算得出该水尺图片的水尺读数。对每一个采集到的水尺影像,分析系统都会抽取百余帧图像进行识别分析检测,获取每一帧的水尺智能读数,排除离群值之后取水尺影像的平均值作为最终读数,尽可能保证水尺智能读数的准确性。

4 智能与人工读数对比

水尺计重专业作业人员携带系统设备到天津港和黄骅港码头进行测试。所选择的船舶为工作船(已装完煤炭货物,等待水尺计重确定货重的船舶),影像采集时间受现场作业时间限制。水尺影像采集完成之后,在计重现场由水尺作业人员和船方大副逐一对影像进行查看并确认人工参比读数,人工测试执行行业标准SN/T 3023.2—2012《进出口商品重量鉴定规程 第2部分:水尺记重》;另外,将影像导入智能测试系统,经过规范化的条件参数设定,由系统测试分析给出系统智能读数。最后,将船舶的智能读数和人工读数按照标准SN/T 3023.2—2012进行计算,结合水尺计重中的其他有关参数,得出智能货重和人工货重。将智能读数与人工读数、智能货重和人工货重进行了对比分析,智能测试系统的读数精度为0.001 m,人工读数精度为0.01 m,合格标准设定为二者读数差值绝对值在0.02 m以内,货重差值分数在3‰以内。测试分析得到黄骅港和天津港各46条船,共552个水尺影像的人工和智能读数结果及货重结果,详见表 1、图 5、图 6。

表1 智能和人工测试比较

图5 读数偏差曲线

图6 货重偏差率曲线

将所有数据进行分析,结果表明,在常规的水尺计重工作情形下,与人工参比读数做对比,若除去船体和影像拍摄质量的原因,只考虑系统软件本身的影响,黄骅港水尺影像的系统读数合格率可达到97.67%,天津的合格率可达96.15%。以装煤货重来衡量整条船的测试合格率,黄骅港的合格率为95.65%,天津的合格率为93.48%,详见表2。

表2 比较结果统计

5 结论

为解决水尺计重过程中船舶六面水尺读数的非客观性问题,可采取基于深度学习的智能水尺测定系统进行测定的办法,通过采集系统和分析系统分别获取和识别水尺影像。利用基于Faster R-CNN的深度学习算法来识别确定船舶水尺字符,通过边框矫正算法精调识别的水尺字符位置,通过RG双通道像素差分法和深度学习算法来识别确认吃水线。采取基于深度学习的智能水尺测定系统进行水尺读数测定精度可达0.001 m,1个水尺影像采取百余帧图像读数排除离群值之后再取平均值,可以使读数准确率维持在较高的水平。水尺影像拍摄的规范性会影响系统的读数准确性,因此,需要考虑完善采集系统功能结构,提高作业人员的操作水平。

猜你喜欢

水尺水线读数
大型船舶水线面视觉图像准确检测系统
浅析国内海洋渔船与海船载重线、水尺标志勘划的区别
“0”的读法和要领
关于游标卡尺读数问题易错点的剖析
非瘟复养:猪场水线清洗和消毒分六步走
海运电厂船舶靠岸侧水尺图像采集实验研究*
基于SSD目标检测的视频水位检测算法
基于机器视觉的快速水尺刻度提取技术
规模化肉鸡养殖场水线管理
仪器工作原理决定了仪器的读数规则