APP下载

一种基于图像处理的船舶水尺标志识别方法

2018-07-04沈益骏黄昱洪何吉飞

上海海事大学学报 2018年2期
关键词:水线字符船体

沈益骏, 黄昱洪, 何吉飞

(1.舟山出入境检验检疫局,浙江 舟山 316000;2.嵊泗出入境检验检疫局,浙江 溗泗 202450;3.戈朗海事技术咨询有限公司,上海 201206)

0 引 言

针对传统水尺计重[1]中目测船舶吃水值这一环节存在主观性强、效率低等弊端,船舶工程等相关领域的一些专家学者基于激光、电子器件等提出了新的船舶水尺检测方法:马晓波等[2]利用水导电的原理设计了一种测量船舶吃水的测量尺;陈文炜等[3]提出了一种基于激光测距传感器的船舶吃水测量系统;郑灼辉[4]研制了智能化船舶水尺检测仪。然而,用上述几类测量方法或仪器进行水尺计重时必须先选取甲板线或船舶某处固定位置为基准点,再利用激光或者智能尺测量基准点到水平面的距离,最后用计算公式间接算出船舶吃水值;此外,激光测距或智能尺在现阶段还存在检测过程复杂、测量精度不高的问题。以载质量7万t的散货船为例,1 cm吃水误差就可能导致货物质量70余t的差异。由此可见,在检测源头上尽量少引入误差源,并且有效提升仪器设备的精准度是准确计重的关键。精度高意味着代价高,控制误差源使测量过程变得更加烦琐,可能严重影响港区正常作业。

鉴于此,本文提出基于图像处理技术的船舶水尺标志识别方法,操作人员借助摄像手段[5]采集水尺图像,然后通过水尺识别程序精准读取船舶吃水值。在此之前,已有不少学者提出基于图像处理技术的类似理论,但在水线识别、船舶实际吃水值计算上未有较好的处理方法。针对此类问题,本文不仅给出了解决方案,而且通过验证试验证明了该方案是切实可行的。

船舶水线准确识别是该方案的第一步,也是最重要的一步。在沿海风浪较大水域,由于波浪起伏在船体上所留下的水迹、船体自身携带的锈迹及不同时段光线等因素的干扰,用普通的图像处理技术无法准确读取船舶实际吃水值。本文通过纵向颜色梯度积分曲线处理方法,可准确识别水线;基于船舶水尺标记规则字符,设计并优化计算公式,然后据此开发软件程序,实现根据导入的船舶水尺影像给出吃水值。

1 船舶水尺图像采集和预处理

船舶水尺识别前提是获取水尺图像,因此水尺图像采集是否规范与符合要求对后期精准识别船舶吃水值至关重要。

由于波浪涌动具有周期性,如果仅对单张图片进行检测分析,那么所得到的数据不能准确代表船舶的实际吃水值。为使获取的数据真实可信,船舶水尺图像采集要求如下:动态视频至少需要包括3个波浪峰谷周期,一般需在船舶同一位置至少拍摄3 min。视频采集完毕后,需对图像进行预处理。首先对采集的动态视频进行等时间间隔截图(截图越多,数据越精准),然后对所截取的水尺图像逐次单张进行分析检测得出吃水值,最后对得到的吃水值进行统计汇总、加权平均得出船舶在该处的实际吃水值。用该方法对其他5处水尺标记点进行相似操作,依次读取吃水值。

船舶水尺是印刷或者点焊在船体上的,对称分布在船首、船中、船尾左右两侧。如果船首、船尾钢板呈弧度铺设,那么从某些角度拍摄的水尺图像中的字符可能会变形,需要利用仿射变换或者非线性变换进行几何校正。郭秀艳[6]对此类问题进行了具体阐述。本文要求采集的水尺图像正置(船壳在上,水在下),而对于侧置或倒置的水尺图像应将其调整至正置。

2 水线识别原理及应用

本文根据纵向颜色梯度原理识别水线,识别前要求水尺图像已调整至正置,图像呈现的水尺标志清晰且无变形。

2.1 理想情况下水线的识别

图1 理想情况下水线模拟

理想情况下船体与水体两种不同颜色介质分界处的情况见图1。取该图片某固定横坐标X0处的空间色彩值TRGB的纵向序列{TRGB(X0,0),TRGB(X0,1),TRGB(X0,2),…},则纵向色差的评判标准公式可设定为

Δ=f(TRGB(X0,y+1)-TRGB(X0,y)),
y=0,1,2,…

(1)

然后,对三原色差值进行等权加和:

(2)

图2理想情况下水线处的梯度曲线

式中:R(X0,y)、G(X0,y)和B(X0,y)分别代表在坐标(X0,y)处的红色值、绿色值和蓝色值。经计算,初步得到纵向颜色梯度曲线,见图2。

2.2 实际情况下水线的识别

理想情况下水线处的梯度曲线只有一个脉冲峰值,其峰值处即对应水线的位置。然而,在实际情况下,受光线、部分船体被水润湿、锈迹及船体焊接边界等因素干扰,梯度曲线呈现为多峰值的有噪声曲线,见图3。在背景亮度变化、干扰颜色未知的条件下,不能单纯通过搜索最大脉冲峰值判断水线位置。

图3实际情况下水线处的梯度曲线

为解决实际情况下水线的识别问题,将纵向颜色梯度曲线调整为纵向颜色梯度积分曲线,经过差值的累加,原来有噪声的梯度曲线转变为台阶状曲线,水线的识别方式由对原来的脉冲峰值的判断转化为对台阶状曲线上升沿的判断,见图4。

图4 经差值累加后水线处的台阶状曲线

图5过滤干扰后水线处的噪声曲线

噪声区域带来的干扰经过积分后形成一段非常短的、不明显的台阶,然后通过统计数据曲线的台阶拟合程度来识别水线。

经上述方法处理后,噪声区域带来的干扰被有效过滤,水线能够被准确、快速地识别,见图5。

在实际情况下船况错综复杂,如:在沿海风浪较大的港区,船体上时常有不规则的水迹线;在船舶满载的情况下,水线上、下涂刷有两种不同颜色油漆。虽然船体上的锈迹、光线等因素的干扰可用图像颜色梯度积分方法滤除,但是船体上的水迹线和船体上的两种颜色等势必对后续吃水值的准确识别造成干扰。为解决这一问题,在上述图像颜色梯度积分方法基础上,运用彭将辉等[7]提出的一种采用数学、形态学与Canny算子相结合的方法识别水线。另外,在实际操作过程中,如遇水尺刻度两侧有载重线等异物,则应对其进行过滤处理,以免再度干扰对水线的准确识别。在图像处理实例中,水线一般都能被较好地识别出来,见图6。

图6 水线识别实例

3 船舶水尺标志匹配方法

3.1 水尺标志识别方法选择

船舶需要勘划水尺,水尺实质就是吃水的标志[8]。识别船体上的水尺标志通常有两种思路:基于标准样本的图像匹配和基于图像数据的模式识别。前者的优点在于不需要机器学习和大量数据的训练,识别工作量小,程序运行时间短;缺点在于目标图像需要与标准样本图像精准匹配,限定于有限范围内的若干种匹配模式,适用广泛性差、局限性大。后者的优点在于识别的智能性高,适用于非标准形状的图像识别,普适性强;缺点在于需要先采集不同类别、不同特征的数量庞大的样本进行训练,前期工作任务重,而且过量的学习会导致模式识别不能反映图像本质特征,可能出现识别效果失常。

船体上水尺的刻度字符具有形状固定、规格一致等特点,见图7。以米制船舶水尺标志为例,字体高度和上、下两行字符之间的距离均为10 cm,字符宽度为2 cm[9]。待识别的目标字符与标准样本间具有强匹配关系,适用于上述第一种思路——基于标准样本的图像匹配,同时也能保证程序的处理速度。

图7 米制船舶水尺标志

3.2 基于标准样本的图像匹配方法简述

图8 拍摄的水尺图像

此方法首先将拍摄的真实船体的水尺图像作为获取标准样本图像的基准,见图8。将拍摄得到的高清图像中包含的所有不重复字符截取出来,如2、4、6、8、10M等,将它们均调整为水平状态,同时保证所截取的图像上、下、左、右边缘紧贴字符边缘;将截取出的图像进行二值化处理[10],如字符颜色全白、背景颜色全黑,即得到一系列标准样本图像。

基于上述标准样本的图像匹配方法简述如下:

(1)在识别出水线后,取目标图像中水线以上涵盖水尺字符的部分,沿用处理标准样本图像的方法进行二值化处理,如接近字符的颜色全赋白(TRGB=255,255,255),接近背景的颜色全赋黑(TRGB=0,0,0)。

图9 水尺标志目标图像匹配曲线跳变

(2)逐行、逐列地统计颜色信息,在有字符出现的行和列中,由于存在白色像素点,统计曲线会发生跳变,见图9。根据各方向上的跳变沿,即可得到目标图像中所有字符的上、下、左、右4边缘。

(3)考虑到船在水中晃动,所拍摄的图像中字符有可能倾斜,有必要对截取出的字符做旋转处理。旋转角度的确定依据为:水尺发生倾斜通常会导致字符的检测高度变大,两字符间的检测竖直间距变小,整体上二者的间距比大于1。根据间距比可估算水尺的倾斜角度,在倾斜角附近进行间距比最小化的优化,即可得到较准确的倾斜角。根据所确定的倾斜角将图像转至正置,再将图像紧贴数字边缘切割,最后将图像进行二值化处理。二值化处理后的水尺标志目标图像见图10。

图10 二值化处理后的水尺标志目标图像

(4)将目标图像与各标准样本图像进行匹配评估,具体匹配方法如下:将目标图像缩放为与标准样本图像相同的尺寸,逐个对像素点的颜色值做同或异(颜色相同为1,不同为0)统计并累加。图片匹配累计值最大的标准样本图像中的字符,即可认为与该目标图像中的字符相匹配[11]。将图10与各标准样本图像进行匹配,即可判定该目标图像中的字符为“10M”。

4 船舶吃水值的计算方法

根据水尺的字符高度、字符间距均为10 cm和字符宽度为2 cm,制定船舶吃水值的求取方法如下:

(1)逐行扫描统计颜色信息以划分各数字的上下边缘。在程序软件实际运行中,红色线表示数字上边缘,黄色线表示其下边缘。通过计算红黄两线距离判断每10 cm对应图像的像素高度H0。

(2)设水线上方首个非主刻度字符(为数字)为n,n上方的首个主刻度字符中的数字为N,通过数据匹配判断则易判定水线高度在N-1+0.1(n-1)与N-1+0.1n(单位:m)之间。

(3)进一步精确计算水线与数字n下边缘的间距为h,则h代表的实际距离为0.1h/H0。因此,船舶吃水值F的计算公式为

F=N-1+0.1n-0.1h/H0

(3)

5 结果与讨论

为验证基于图像处理技术的水尺标志识别方法的准确性,于2017年7月8日在浙江省舟山市老塘山港码头进行了一次试验。当日沿海风力4~5级,阵风6级,海边涌浪比较大,读水尺难度较大。舟山地处长江入海口,风、浪等水文条件明显比内陆地区恶劣,由于《进出口商品重量鉴定规程》等标准文件明确规定,在水尺计重时船舶吃水处浪高应不大于0.5 m,所以在大风、大浪等恶劣天气不宜进行试验。在本次试验中,为避免人工读取水尺误差,特地选取了水下压力计[12](通过压力计探头所探测到的水体压力可以反算出压力计距水体表面的高度)的测量结果与水尺标志识别结果进行对比。

由于巴拿马型和好望角型船为载质量达数万吨的散货船,出于安全考虑,无法安装压力计,故在老塘山港码头选取载质量为3 000 t的小船作为试验对象。试验方法为:每隔30 min,在船中左侧水尺标志处进行一次压力计测量和基于图像处理的水尺标志识别试验,共进行20组。具体操作为:船舶停泊至码头后,在低潮时段通过工作小艇将水下压力计送至船中左侧水尺标志处,接着由工作人员将水下压力计安装固定至船底位置(即船舶水尺基准点)。当水位上涨时,水体淹没船底,船体呈现漂浮状态,由压力计可测量得到船底所在位置与海面的距离H(即为船舶实际吃水值,以下简称压力计吃水值);与此同时,用摄像手段获取水线处的图像,录入水尺标志识别程序进行读数。20组试验结果见表1。

表1 水尺标志识别结果与压力计测量结果对比

表1中,差异率计算公式为

(4)

从表1中可以看出,水尺标志识别结果差异率范围为-0.57%~+0.95%,在误差值浮动范围内剔除最大值和最小值,其余误差值均小于0.015 m,符合设计之初对于误差的预估,也符合船舶制表的准确度在0.1%以内、水尺计重的准确度在0.5%以内的要求。试验结果表明,基于图像处理技术的水尺标志识别方法具有较高的可靠性。在风力较大的情况下能获得如此好的试验结果,说明该方法具有普适性。

6 结束语

针对传统水尺计重中目测船舶吃水值存在主观性强、效率低等问题,本文对以往水尺图像处理技术进行创新和改进,结合水尺标志图像匹配和船舶吃水算法等手段,成功实现了从“人眼”识别水尺刻度到“机眼”识别水尺刻度的转变,使水尺计重方法在获得船舶吃水值这一重点环节更具准确性和客观性。

参考文献:

[1] 刘辉强. 水尺计重及其误差分析[D]. 大连: 大连海事大学, 2010.

[2] 马晓波, 杜柏松, 戴冉. 一种船舶吃水测量尺的设计[J]. 船海工程, 2016(3): 35-38. DOI: 10.3963/j.issn.1671-7953.2016.03.008.

[3] 陈文炜, 俞汲, 徐杰, 等. 一种船舶吃水测量系统[J]. 中国造船, 2013, 28(1): 166-171.

[4] 郑灼辉. 一种新型智能化船舶水尺检测仪[J]. 工业计量, 1999(6): 38-40.

[5] 沈益骏, 王琦, 武华伟. 水尺图像分析检测一体化程序开发及应用研究[J]. 中国科技纵横, 2014, 17: 44.

[6] 郭秀艳. 船舶水尺吃水值检测方法研究[D]. 大连: 大连海事大学, 2014.

[7] 彭将辉, 冉鑫. 基于图像处理的船舶吃水线检测方法[J]. 中国水运, 2012, 12(6): 66-67.

[8] 冯振玉. 水尺标志的正确勘划[J]. 中国船检, 2015(10): 31-33.

[9] 刘扬睿, 汤洪兵. 进出口商品鉴定专业基础[M]. 北京: 中国标准出版社, 2007: 18-120.

[10] 周广程. 图像处理技术在船舶吃水自动检测系统中的应用[D]. 南京: 南京理工大学, 2006.

[11] 冉鑫, 彭将辉. 基于图像处理的船舶水尺刻度识别[J]. 上海海事大学学报, 2012, 33(2): 6-9.

[12] 陈炽彬. 崖城13-4气田水下控制系统设计及应用[J]. 中国海上油气, 2015, 27(4): 126-130. DOI: 10.11935/j.issn.1673-1506.2015.04.019.

猜你喜欢

水线字符船体
船体结构设计与建造细节优化处理研究
大型船舶水线面视觉图像准确检测系统
基于NURBS曲线与曲面光顺理论的船体设计与优化
风雨激振中斜拉索表面水线运动的三维数值模拟
正则表达式快速入门
字符代表几
图片轻松变身ASCⅡ艺术画
船模玻璃钢船体的制作方法(上)
规模化肉鸡养殖场水线管理
劈波斩浪