CopyRight 2009-2020 © All Rights Reserved.版权所有: 中国海关未经授权禁止复制或建立镜像
基于无人机的船舶水尺图像识别系统设计
作者:沈益骏 刘新 黄昱洪 刘冲伟 朱纯瑶 张悠格 沈昌宁
沈益骏 刘新 黄昱洪 刘冲伟 朱纯瑶 张悠格 沈昌宁
随着经济的飞速发展,我国对资源类散货需求旺盛。以舟山口岸进口铁矿为例,近5年,保税混矿从50多万t增长至1750万t,居全国第一[1];铁矿石进口从2900多万t增长至4600多万t,占全国4.5%,增幅明显。随进口量大幅增长,散货“缺斤少两”“以水充矿”等违规案件时有发生。水尺计重[2]是船舶运输大宗散装货物计量重量的方法,当前国际贸易中已广泛应用于大宗散货的计重。船舶水尺差异1 cm,就可导致货物近100 t的货量差异。水尺计重是否准确,作业模式是否高效,直接影响国内收货人的经济效益。
针对传统水尺计重作业模式中存在准确性差、智能化不强、工作强度大等问题,黄彪斌等[3]提出无人机在水尺计重领域的应用,避免了乘坐交通艇观测船舶外挡水尺,提升了工作效能,但仍是基于人工目测水尺。王智等[4]提出基于激光测距的船舶吃水深度检测系统,实现了船舶水尺检测由机器向人工目测的转变,但是该系统测得的数据需扣除船舶干弦长度,再经转换计算得出船舶吃水值,该过程易引入误差,且未考虑低温、浪大等使用环境,具有一定的局限性。
当前,船舶吃水值检测主要分为直接采集读取和借助器具间接读取两种方式。前者利用无人机、机器人等采集图像,可直接观测读取,也可辅以图像识别软件自动读取数值;而后者以雷达、激光等经公式转换计算间接取得。本研究是基于直接采集水尺图像,并结合自行设计研发的图像识别软件自动给出吃水值,较以往图像识别,区别在于本研究为达到精准识别,根据现场作业实际,定制算法流程,改进主要算法,如采用双边滤波取代高斯滤波等。
综上所述,虽然现有研究较传统水尺计重作业模式确实有较大进步,但是仍然存在不足之处。经充分调研分析,本研究设计了基于无人机的船舶水尺图像识别系统。其优势一是利用无人机的能动性,快速采集船舶水尺图像;二是改进现有算法,研发船舶水尺图像识别系统,准确识别水尺;三是实现水尺计重一体化、自动化的目的。
1 算法整体构架
在大型散货船专用码头,操作人员操控航拍无人机稳定悬停在船舶外挡一侧,使云台相机对准船舶水尺区域,拍摄高清视频图像,通过无线图像模块将视频流数据实时回传到平板电脑。平板电脑运行水尺图像识别软件,软件调用图像处理算法快速识别处理视频流里抽取的单帧图像,并输出水尺读数。
算法运行的主流程逻辑如图1所示,首先初始化参数设置和导入模板库,再循环从视频流中抽取连续帧图像,将每一帧图像分辨率统一调整到1280×720;算法主体部分是对单帧图像进行识别处理,采用图像分割方法识别出水尺所在区域和船舶吃水线位置,再进一步识别出区域内水尺刻字对应的数字或字母,结合水线位置即可计算出船舶水尺读数;前一帧图像的识别结果可以辅助当前帧图像的识别处理,从而降低搜索范围。
图1 算法运行的主流程图
Fig.1 Main process diagram of algorithm operation
针对每一帧图像,算法主要的处理步骤如图2所示,通过灰度化和边缘检测[5]函数获得二值化图像[5],根据水尺刻字的几何形状约束和空间位置分布规律,搜索出水尺小数部分刻字所在区域。将水尺所在区域截取出来,进行船体与水体交界线位置的识别处理,再确定距离水线最近的水尺整数部分刻字,识别出整数刻字对应的数字值,即可获得水尺整数部分的读数。根据每个刻字实际高度(10 cm)计算出图像上单位像素代表的实际长度,即图像比例尺。由水尺整数刻字位置与水线位置的像素差值和图像比例尺可以计算水尺小数部分的读数,最终计算出单帧图像上的水尺读数。
图2 单帧识别部分处理步骤
Fig.2 Single frame recognition processing steps
2 水尺区域搜索
对于第一帧图像,如图3所示,必须对整幅图像进行搜索,以检测出水尺区域作为感兴趣区域[6](region of interest,ROI)。由于本研究的ROI通常由图像下部分的水面和中部的吃水线及以上带水尺刻字的船体构成,检测该区域容易实现。ROI检测采用图像分割方法,该方法根据图像中水体及对水尺标记区域的观察和经验总结,采用固定比例,具体是图像中线上下1/3内的固定区域作为某一帧图像ROI区域。而后续的识别处理都只在ROI区域内进行,包括水尺小数部分、整数部分刻字的定位检测与识别、船体与水体交界线(吃水线)识别等。
基于对水尺刻字在船体上的规则排列的观察,本研究设计了一种简单快速的水尺ROI区域搜索算法,而非采用滑动窗口模板匹配方式。
图3 单帧图像处理区域
Fig.3 Single frame image processing area
2.1 二值图像的计算
二值图像是一种特殊的灰度图像,它仅有白色和黑色两种灰度级。本研究的水尺二值图像计算设计如下:首先将读入的彩色图像进行灰度化变换,再对图像中变化最明显的区域进行边缘扫描和检测。对本研究而言,边缘主要存在于水尺刻字之间,水尺刻字与钢板背景之间,它呈现颜色的异常和突变、像素的断裂和不连续性。
本边缘算法基于Canny算子[7]改进得到边缘检测器阶导数[8],但求导对噪声表现较敏感,为降低影响,必须予以使用滤波器来提升其性能。本研究的边缘检测器改进点主要为两点:一是将原来高斯滤波改为双边滤波[8],达到了图像顺滑、颜色过渡自然等目的。该滤波不仅滤除部分噪声,同时保留边缘细节,避免图像失真。二是精准计算水尺图像中每个像素点的梯度强度和方向,精准反映图像真实特点。
双边滤波与高斯滤波的区别在于:一是高斯滤波为线性而双边滤波为非线性;二是双边滤波可有效去除噪声,同时保留图像边缘的细节,而高斯滤波可使图像变得平滑,但是细节处理能力较弱。实质上,双边滤波是在高斯滤波基础上取长补短,较好地完成了图像的噪声处理。具体为:它将滤波器权系数[9]优化成图像亮度信息和高斯函数的乘积,其乘积值再与图像亮度信息作卷积运算[10]。双边滤波后某点的像素值见公式(1):
(1)
式(1)中:(x, y)为像素坐标点;Gx, y为中心点(x, y)的[(2N+1)×(2N+1)]大小区域;(i, j)为Gx, y区域内的像素点;h(i, j)为灰度值;w(i, j)为双边滤波器权值;f(x, y)为区域内像素亮度加权平均值。
如图4(A)所示为采用高斯滤波器对灰度图进行平滑的效果,可见除了噪声被平滑,细节边缘也被平滑;如图4(B)所示为灰度图的双边滤波效果,可见达到了保边去噪的效果,更适合进行Canny边缘检测。
A. 高斯滤波效果; B. 双边滤波效果
图4 灰度图像滤波去噪
Fig.4 Gray image filtering and denoising
2.2 水尺小数部分区域
图5所示为水尺图像二值化处理结果。对图像从左到右、从上到下进行扫描,进行连通域标记[11],即通过像素邻接关系进行连通区域标记。在二值图像中,彼此邻近的像素点,则视为连通,而且连通的像素点彼此之间具有传递性。在水尺图像中,连通在一起的像素点构成若干个集合,一个集合则为一个连通域。
图5 通过Canny边缘检测得到二值图像
Fig.5 Obtaining binary images through Canny edge detection
完成连通域标记后,可以单独取出一个个独立的连通域,从而可以计算每一个连通域的质心、二阶矩、最小包围矩形等参数。由此,可以设定一些规则初步剔除干扰的连通域,保留水尺刻字的候选连通域。
3 水尺图像识别和读数
3.1 船舶吃水线识别
根据获得的水尺ROI区域,将其从原彩色图像中裁剪出来,如图6所示,可以进行吃水线位置识别。首先根据图5所示的二值图像,得到水尺ROI区域的掩膜(Mask)[12],掩膜中黑色值为0,白色值为1,将掩膜与原始水尺ROI区域相乘,结果如图7所示,值为0的区块标识了对应彩色图像的像素,且不参与后续的处理。
图6 水尺ROI区域
Fig.6 Draft ROI area
图7 水尺ROI区域图像掩膜
Fig.7 Draft ROI area image mask
上述环节处理后可以对水尺ROI区域彩色图像进行滤波平滑,比如采用双边滤波或加权中值滤波,在平滑噪声的同时避开对吃水线边缘的平滑处理。鉴于大型散货船船体颜色一般为白色、黑色、蓝色、红色中的一种或两种组合,而码头水体一般为灰色、浑黄色或绿色,因此,可以利用颜色差异区分船体和水体,从而确定图像中水线位置。
例如,当检测到船体是黑灰色时,则对水尺ROI区域每个像素重新计算值P,见公式(2):
(2)
式(2)中:P为像素计算值;R为彩色图红色通道的值;G为彩色图绿色通道的值;Cons为定值由图像整体亮度决定。
此时黑灰船体部分的R、G值通常较小,则船体的P值会很小,而水体的R、G值通常较大,水体的P值会较大。图7中,水线以上还存在部分红色船体(红色防锈漆),则自适应地将该部分的P值计算公式调整为公式(3):
(3)
经该公式计算,可使得船体部分的像素值很小。上述系列操作就是将船体部分的像素值趋于最小,同时水体部分的像素值较大,从而提高船体和水体的差异,其处理结果如图8所示。
3.2 水尺刻字识别与读数
确定了吃水线位置后,即可剔除吃水线下方被误认为水尺小数部分的干扰物,则可认为准确辨识了水线上方真实的水尺小数部分刻字。确定了水尺小数部分和吃水线位置,便可接着定位水尺整数部分刻字并识别整数刻字表示的数值。可以通过水尺小数部分与位于其左侧检测出的水尺整数部分刻字形成连通域,结果如图9所示。
图8 水线检测
Fig.8 Waterline detection
图9 水尺整数部分刻字检测结果
Fig.9 Detection results of the round part of the draft
由于水尺整数部分刻字可能表示的数字包括0~9,这是一个多分类的数字识别问题,通常是构造一种特征提取器对图像进行特征提取[13],得到图像的数值或向量等的表示或描述,再选取一种分类器对不同类的特征集合进行训练,实现数字分类识别。整体的水尺刻字数字识别过程如图10所示。
图10 水尺刻字图像识别流程图
Fig.10 Draft lettering image recognition process
常见的特征提取算子包括LBP[14]、Haar-like[14]和HoG[15]等。由于HoG的优势在于能更好地描述轮廓或形状,因此本研究选择HoG作为船舶水尺图像的特征提取算子。
HoG特征提取算法的实现过程分为六步。一是为减少外界影响,水尺图像由任意尺寸到规定统一大小,且水尺图像做二值化处理,避免干扰,达到颜色空间归一化[16];二是算出每个像素点在x和y方向上的梯度值;三是通过干预,将水尺图像分成若干个单元(cell);四是把梯度方向平均划分为9个区间(bin),在每个单元(cell)内对所有像素的梯度方向进行直方图统计[17],进而得到该单元的9维特征向量;五是成立块(block),每个块由若干个单元所组成;六是计算得到所需的特征向量。
利用以上算法先将图像中检测出来的水尺刻字部分截取并保存到本地,人工进行非水尺刻字图像的剔除,并给水尺刻字图像标注正确的数字标签,如图11所示。
图11 部分人工构建的水尺刻字图像训练集
Fig.11 The training set of partially artificially constructed draft lettering images
依次读取训练集中的水尺刻字图像,按上述HoG特征提取步骤提取HoG特征向量,每幅图像的HoG特征向量与其数字标签相配对,从而构建出一个带标签的特征空间。接着就需要一个合适的分类器对特征空间进行划分,使得每一个特征向量都能被划分到正确的类别,这可以通过对比真实标签以及分类器输出的最大概率标签进行检验,从而根据计算的分类精度或者分类损失函数进行分类器的迭代训练。
至此,已经检测出水尺整数部分、小数部分刻字、吃水线位置,并识别出水尺整数部分的数值,最后一步是读取水尺小数部分的数值,以完成水尺读数。如图12所示,SVM[18]已经识别出“19”,即整数部分为19 m,再依次读取水尺小数部分的刻字,每多一个完整的水尺小数刻字,小数部分增加0.2 m(由此可以获得图像像素比例尺),累加完后,计算最下方一个完整水尺刻字与吃水线位置的像素间隔,利用比例尺计算该部分的实际距离并累加到小数部分,最终整数部分减去小数部分即为该帧图像的水尺读数。
图12 水尺读数
Fig.12 Draft reading
4 验证实验
根据上述系列算法开发的水尺图像识别软件以及配套使用的无人机在舟山某港区开展验证实验,图13为某次验证实验进行时的软件界面,表1为验证实验的结果。
图13 测试数据主界面
Fig.13 The main interface of test data
表1 实验数据汇总
Table 1 Summary of experimental data
船舶编号 | 观测水尺位置 | 软件测量值 (m) | 目测测量值 (m) |
1 | 船肿左 | 21.42 | 21.43 |
2 | 船艏右 | 17.52 | 17.52 |
3 | 船肿右 | 18.17 | 18.16 |
4 | 船肿左 | 16.58 | 16.58 |
5 | 船艉左 | 10.98 | 10.99 |
6 | 船艉右 | 14.23 | 14.22 |
7 | 船肿右 | 13.26 | 13.26 |
8 | 船艉左 | 14.64 | 14.65 |
9 | 船艏右 | 11.32 | 11.32 |
10 | 船艏右 | 19.78 | 19.77 |
从表1中可以看出,水尺图像识别软件和传统目测方式测量值基本保持一致,最大差异仅为1 cm,且均在规定的合理范围内。通过本次验证实验,可认为该水尺图像识别系统是可靠和准确的。
5 结语
水尺计重是大宗散货重要计量方式之一,但是传统水尺计重模式存在效能低、准确性差、数据认同度低等问题。虽然激光雷达、无人机等新型水尺计重辅助仪器起到一定的积极作用,但是仍有一定的提升空间。基于无人机的船舶水尺图像识别系统,驾驶无人机快速采集水尺图像,重新设计、改进图像识别算法,并针对船舶水尺标志的特征,构建训练样本集,使该系统能快速识别数值,同时通过后期测试,可不断进行调整、改良。目前,该套系统已成功应用到大宗散货的水尺计重作业中,使用效果良好,作业时长大幅缩短,数据结果真实、可靠。
参考文献
[1]郭媛媛, 张佳楠. 浙江自贸区蓝海弄新潮[N]. 中国自然资源报, 2022-03-07(005).
[2]丁海涛, 王益平. 进出口商品重量鉴定方式有哪些[J]. 中国海关, 2021(8): 38-39.
[3]黄彪斌, 赖华海, 周立群, 等. 无人机在水尺计重领域的应用[J]. 中国水运, 2020(12): 77-79.
[4]王智, 陈甜, 李玉乐. 基于激光测距的船舶吃水深度检测系统设计[J]. 机械工程师, 2019(9): 113-115.
[5]关晓菊, 周激流, 何坤. 基于方向能量的灰度图像边缘检测[J]. 激光杂志, 2010(2): 14-16.
[6]张文影, 李礼夫. 针对车辆与行人检测的感兴趣区域自适应分割算法[J]. 科学技术与工程, 2020, 20(5): 1967-1972.
[7]刘宇涵, 闫河, 陈早早, 等. 强噪声下自适应Canny算子边缘检测[J]. 光学精密工程, 2022, 30(3): 350-362.
[8]夏银红, 姚巧鸽. 激光雷达图像边缘检测器的设计与实现[J]. 激光杂志, 2017, 38(9): 42-45.
[9]蔡玉芳, 陈桃艳, 王珏, 等. 基于自适应滤波系数的非局部均值计算机层析成像的图像降噪方法[J]. 光学学报, 2020, 40(7): 38-46.
[10]费宇航, 隋修宝, 王庆宝, 等. 微透镜阵列光学实现卷积运算[J]. 红外与激光工程, 2022, 51(2): 417-422.
[11]甘晓英, 白阳, 何晓栋, 等. 一种并行二值图像连通域标记算法[J]. 计算机与数字工程, 2021, 49(5): 993-997.
[12]白雪. 基于改进中值滤波的反锐化掩膜算法[J]. 工业控制计算机, 2021, 34(2): 102-104.
[13]仇小鹏, 田杰, 胡秋霞, 等. 基于HSV的交通信号标志识别方法设计与实现[J]. 电子设计工程, 2022, 30(10): 120-123.
[14]付心浩, 谢勤岚. 基于MB-LBP特征和JIH的Adaboost人脸检测算法[J]. 计算机与数字工程, 2016, 44(5): 944-947.
[15]刘庆华, 李智. 一种基于HOG与LBP双特征融合模型的人脸年龄估计方法[J]. 江苏科技大学学报: 自然科学版, 2021, 35(3): 50-55.
[16]褚江, 陈强. 自然图像颜色空间统计规律性研究[J]. 计算机科学, 2014, 41(11): 309-312.
[17]曲爱妍, 张正, 梁颖红, 等. 基于方向梯度直方图特征的车脸识别方法研究[J]. 软件工程, 2021, 24(9): 38-43.
[18]韩宾宾, 韩萍, 程争. 面向对象的PolSAR图像SVM分类[J]. 中国民航大学学报, 2022, 40(1): 21-26.
基金项目:宁波市自然科学基金项目(2016A610038)
第一作者:陈小青(1977—),男,汉族,江西新余人,硕士,主任医师,主要从事卫生检疫和毒理学安全性评价,E-mail: 13586926825@163.com
通信作者:王燕(1964—),女,汉族,浙江黄岩人,本科,副主任技师,主要从事卫生检疫和健康安全研究,E-mail: 13857899058@qq.com
1. 宁波国际旅行卫生保健中心(宁波海关口岸门诊部) 宁波 315012
2. 宁波市第二医院 宁波 315012
3. 宁波海关技术中心 宁波 315012
1. Ningbo International Travel Health Care Center (Ningbo Customs Port Outpatient), Ningbo 315012
2. Ningbo No.2 Hospital, Ningbo 315012
3. Ningbo Customs District Technology Center, Ningbo 315012