APP下载

基于人工智能的船舶身份识别及航行行为识别方法

2022-09-09杨正

电子技术与软件工程 2022年12期
关键词:船舶图像检测

杨正

(南京畅淼科技有限责任公司 江苏省南京市 211106)

1 相关背景

水上船舶的监管和执法是保障水上航道安全畅通的重要手段,是综合行政执法监督局水上执法监督局的主要工作。对船舶身份识别以及对船行行为监管是水上监管和执法工作的重要一环。然而,当前水上执法和监管工作中主要存在如下问题:

(1)船舶监管效率低下,仅依靠人工查看视频的方式容易出现疏漏,并且人工查看视频的方式耗时耗力效率低下。

(2)视频保存时间短,高清视频数据量很大,过大的信息量、较短的保存时间给调查取证、追查回溯带来很大不便-常常找不到视频数据。

(3)船名遮挡、涂改、不按规定悬挂,关闭或篡改船舶自动识别系统(AIS)等行为屡见不鲜。

因此,在当今现状下,亟需引入人工智能的手段替代人工监管。依托高清视频,应用视频分析、图像处理等技术,自动从视频数据中高效、甚至实时地提取有价值的信息,更好地利用视频资源,实现对船舶身份的识别以及航行行为识别,从而大大提升水上监管和执法动作的效率。

2 研究现状

2.1 船舶身份识别现状

随着计算机视觉技术的发展,从监控视频中自动提取出所需的有效信息越来越方便。文章以AIS信息作为参考,对视频序列中的运动船舶进行检测,可实现对船舶目标身份进行快速判别并且对人船舶侵入区域进行警告。文章采用了船舶遥感图像的特征分析以及遥感图像的噪声过滤与增强等图像处理技术对船舶遥感图像进行系统性的研究,可大大提高船舶遥感图像的目标识别精度。通过对基于智能自组网的船舶卫星定位技术和船舶身份识别技术的研究,文章提出船载OBU的概念,船载OBU通过将智能自组网与船舶卫星定位技术和船舶身份识别技术相结合,实现了船舶的信息化和网络化。

2.2 船行行为识别现状

船舶超载判别大致有四种方法,第一类是通过在船舶上安装特定的传感器进行检测,第二类类主要依靠视频分析进行超载测量,第三类是基于声呐、超声波阵列等技术的水下测量方法,第四类基于激光雷达等方式。

文献采用了于激光雷达扫描和视频分析的超载超吃水自动监测系统,可大大提升船舶超载的检测效果,最近几年在多地的海事局都取得了较好的应用效果。文献设计并实现了一套基于激光扫描和视频分析的船舶超载超吃水自动监测系统,并在镇江市地方海事局辖区水域实现了应用。文献提出了一种基于多波束声纳对超载船只进行快速、有效的检测方法。论文介绍了系统的整体设计和基本工作原理,并分别对水下检测分系统和岸端分系统做了详细论述。文献[提出基于压力传感器与船载陀螺仪相结合监测船舶吃水和装载状态的方法,采用压力传感器测得水深,利用船载陀螺仪获得倾斜状态,并结合船体结构求得船舶吃水,进而得到载重量。文献提出了基于激光扫描的船舶干舷测量方案,将船舶干舷值定义为船舶甲板到水面的距离,提出了基于Hough变换和均值漂移的船舶干舷值测量算法。

3 船舶身份识别技术

3.1 基于YOLO V3的船名定位技术

YOLO V3算法是Joseph Redmon所提出的一种单阶段的目标检测算法,在保证模型具有较好的检测准确率的同时拥有着十分出色的实时性。在船舶身份识别任务中,我们可以将yolo v3模型运用到船名的定位中去,方便我们进行后续的船名识别处理。

YOLO V3网络由骨干网络Darknet-53以及特征图金字塔网络(FPN)构成。Darknet-53主要用于对输入图像的特征提取,将输入的RGB图像转换为高层抽象特征图,网络结构由多个残差模块堆叠而成。Darknet-53总共含有53层卷积层,还引入了Batch Normalization层以及Leaky ReLU激活函数。Batch Normalization层可以加快网络的训练,并且可以较好的防止训练过程中出现过拟合。高层抽象特征图语义信息比较丰富,而其细粒度信息较不足;低层特征图语义信息较少,但其细粒度信息较为丰富。FPN可以较好的结合二者的优点,大幅提升目标检测的效果。模型最终输出三种尺寸的特征图,分别为[13, 13]、[26, 26]以及[52,52]。

YOLO V3引入了Anchor机制来拟合先验框,其中Anchor边界框的预设大小根据K-Means算法在COCO数据集上对标注框大小进行聚类而得,其结果为:[116, 90],[156,198],[373, 326],[30, 61],[62, 45],[59, 119],[10, 13],[16,30],[33, 23]。yolo v3算法则在这些预设的Anchor边界框的基础上进行相应的坐标偏移以及尺度拉伸。YOLO V3的损失函数如下:

3.2 基于crnn的单行船名识别技术

随着深度学习在计算机视觉领域的发展,文字识别任务可充分利用深度学习模型的自动特征提取能力,使得识别的准确率得到大幅度的提升。相比较于传统的多模块级联的方法,基于深度学习的模型可以有效避免多模块级联过程中产生的精度损失。在基于深度学习的文字识别模型中,我们通常采取连续时序分类损失函数(Connectionist Temporal Classification, 下文中简称为CTC)使用序列文本标签对“序列图片”进行监督训练。

CRNN(Convolutional Recurrent Neural Network)是目前较为流行的图文识别模型,可识别较长的文本序列。CRNN就是利用CNN特征提取层再用BLSTM序列特征提取层,能够同时进行端到端的联合训练的模型。CTC损失可以成功的将深度学习网络所输出的特征序列图像与长度互异的标签序列对齐,因此可以有效利用标签信息监督深层双向LSTM网络与卷积神经网络的学习。因为深度学习具有强大的自动抽象特征提取能力,并且在文字识别任务中可以通过CTC损失进行有效的监督学习,因此CRNN+CTC的方法在文字识别任务中一直是主流的方法。

CRNN模型网络结构主要三部分,分别为:转录层、循环层以及卷积层。卷积层的主要作用是提取输入图像的高级特征,以便进行后续的处理;循环层的主要作用则是在卷积特征的基础上继续提取文字序列特征,根据卷积层所提取的高级特征图预测真实值的分布信息,通常情况下循环层是一个深层的双向LSTM网络;转录层主要用于把从循环层所获取的标签分布信息通过去重、整合等操作,转换成最终的文字识别结果。

4 船行行为识别技术

4.1 船舶超载判别技术

船舶超载一般是通过船舶吃水或干舷高度来判别,很多内河船尤其是小型船,吃水线模糊的情况时有发生,因此研究基于图像的船舶超载判别技术主要研究干舷的识别技术,经调查研究发现,船舶吃水和干舷测量通常以系船柱位置为准,先通过系船柱定位技术定位系船柱位置,再通过边缘检测技术检测船水分割线,依此计算干舷,从而判断船舶是否超载。

4.1.1 基于Faster R-CNN的系船柱定位技术

系船柱通常位于船舶甲板的外侧,系船柱定位就是在一幅船舶图像中找出系船柱所在的位置,系船柱定位是识别船舶干舷高度的重要环节,对于判断船舶超载具有重要意义。

基于Faster R-CNN的系船柱定位方法是借助CNN等人工神经网络模型,通过在检测算法中加入一些组件可以提升整个网络的检测性能,例如,损失函数、区域生成、锚框(Anchor)设计等。

Faster R-CNN主 要 由Conv Layers、Region Proposal Networks(RPN)、Roi Pooling以及Classification组成。Conv Layers主要用于对输入图像进行特征提取,将输入图像转换成高级特征图的形式,采用了Conv+ReLU+Pooling的形式。RPN网络主要用于生成候选区域,该层通过Softmax层判断Anchors属于正例或者负例,同时对Anchors候选框进行偏移量的回归任务,最后则综合正例的Anchors以及所对应的偏移量获得最终的候选框。Faster R-CNN抛弃了传统的滑动窗口以及选择搜索的方法,直接使用RPN网络生成候选框,可以极大的提升候选框的生成速度。Roi Pooling层主要根据Conv Layers输出的特征图以及RPN层所生成的候选框进行信息的综合,提取候选区域特征图并输入到后续的全连接层判断检查目标的类别。Classification主要根据所输出的候选区域特征图计算候选框所包含物体的类别,同时再此对候选框进行偏移量的回归任务,获得检测框最终的精确位置。

4.1.2 船水分界线定位技术

船水分界线定位技术流程图见图1,首先对输入图像进行滤波预处理,过滤部分噪声,随后将平滑处理后的图像输入到我们所训练的分类器中,分类器可综合全局特征信息将船舶吃水线附近的目标点给检测出来,由于检查出的目标点是离散分布的,通常情况下我们可以通过最小二乘法进行直线拟合,便可将吃水线给定位出来。

图1:船水分界线定位技术

(1)分类器训练。为了保证分类器算法的鲁棒性以及泛化性,我们通常需要选取大量的训练样本。训练样本包含为正例样本以及负例样本,正例样本即船舶吃水线附近的样本点,负例样本则为其他区域的样本点。为了避免不同光照条件、不同水域特征以及不同船舶本身所带来的影响,我们所选取的样本要尽量包含各种各样的场景。

(2)直线拟合。经过分类器检测后,我们会得到大量的分布于船舶吃水线附近的目标点以及部分干扰点,此时我们可以对所得结果采用最小二乘法进行直线拟合。最小二乘法是对于组近似线性分布的数据通过计算的方法求出直线y=ax+b的斜率a以及截距b,使得与真实数据分布的差异尽可能小。对此,我们可根据最小均方误差的准则,建立目标函数,如式(5)。

D对a和b分别求一阶偏导数为:

式(6)、(7)有闭式解,令偏导数为零则可求得最优的a和b的值,最终获得我们所需的船舶吃水线。

4.2 船舶轨迹数据成链

船舶全链条感知应用的一大特点就是将单点采集的船舶信息包括照片、身份和行为信息等与船舶轨迹进行融合成链,形成一船一航一档案,实现船舶的全链条感知和跟踪。该项技术的重点是如何将采集的船舶与船舶轨迹进行匹配。

船舶图像是单点采集信息,船舶轨迹是连续信息,因此研究的重点在于如何将单点信息与连续信息进行融合。由于我们所获取的船舶轨迹信息数据源为AIS,因此只考虑有AIS且AIS开启的情况进行融合。船舶图像采集的信息包括:时间、地点、船舶航行方向、航行速度、船舶图像、船舶名称、船舶照片等。船舶AIS轨迹信息包括:位置(经纬度)、航行方向、航速、MMSI、AIS船名、船长、船宽、吃水、目的港等等。结合两种数据源的数据研究发现,可以通过时间、地点(位置)、身份进行匹配,确定是否为同一条船,如果是同一条船,可将数据融合。融合方法主要有两种:一、通过视频与AIS融合匹配技术,将AIS信息可视化在视频画面中,通过自动化的匹配算法将AIS信息与视频中的船舶目标进行匹配;二、通过AIS船名和船舶图像识别的船名,结合时间、地点等信息辅助判断,进行信息融合。在算法研究过程中发现,融合方法一在面对船舶并行,船舶流量大的情况下,准确率明显下降,故我们将两种方法进行融合,先采用方法一进行融合,再用方法二进行确认,通过设定自纠错机制,保障采集的船舶信息与船舶轨迹正确融合。

4.3 动静态数据融合

船舶动静态数据融合首先需研究静态信息的获取和整合,静态信息包含人、船、证的登记信息等。船舶动态信息包括船舶AIS信息、进出港报告信息、船舶行政处罚信息等,除AIS信息外其他信息更新频率不高,可使用常规的数据处理方法,因此研究重点主要是针对船舶AIS信息,船舶AIS信息属于准实时数据,船舶AIS更新间隔根据航速确定,正常航行船舶AIS更新间隔为30s,对于AIS信息接收服务而言,接收范围内的船舶数量庞大,因此对于更新频率高、数据量大的AIS数据需要研究数据处理和存储的相关技术。由于接收到的AIS信息可能包括一些不完整、错乱、乱码等数据,因此需要根据AIS规范对异常数据进行预处理,对AIS数据进行初步清洗。AIS信息由于其数据量庞大,新增速度快,因此在数据存储时对数据进行压缩提取处理,结合船舶航向、航行状态、航行距离等因素,设置数据存储间隔,最大程度保证数据压缩后的船舶轨迹与原始轨迹一致,在数据存储方面选用适合长期存储和查询的数据服务。

船舶动静态数据融合技术,主要工作是对数据清洗、整合与存储。数据清洗是对数据进行重新审查和校验的过程,目的在于删除重复信息、纠正存在的错误,并提供数据一致性。数据清洗指发现并纠正数据文件中可识别的错误的最后一道程序,包括检查数据一致性,处理无效值和缺失值等。我们要按照一定的规则把“脏数据”“洗掉”,在这个过程中,我们针对船舶数据制定了一系列自动校验和清洗的规则,将数据自动清洗完成。整合后的数据通过表之间的关联关系进行存储,方便数据永久化保存和索引。

5 实验结果

5.1 船舶身份识别技术

我们通过基于yolo v3的船名定位技术以及基于crnn的单行船名识别技术便可将船船舶身份给识别出来,其昼间以及夜间的识别结果如图2所示。根据结果我们可以发现我们的算法在无论在昼间还是夜间都可以将船舶身份给正确的识别出来。

图2:昼夜船名识别结果

5.2 船行行为识别技术

5.2.1 船舶超载判别

超载船舶对航行安全具有较大的安全隐患,一旦发生搁浅事件容易引发航道拥堵,影响通航效率甚至引发事故,自动识别船舶超载状态能有效提高船舶航行安全。首先基于海量船舶抓拍图像,利用深度学习和目标检测技术,研究系船柱定位模型,然后研究边缘检测技术分析船舶干舷位置、船底与水面分界线位置,最后通过计算系船柱与水面分界线距离判断船舶是否超载。其结果如图3所示。

图3:系船柱与水面分界线识别结果

5.2.2 船舶轨迹数据成链

我们将卡口采集识别的船舶信息和照片与船舶AIS轨迹融合成链,形成一船一航一档案,实现船舶的全链条感知和跟踪。

5.2.3 动静态数据融合

将船舶抓拍图片和船舶信息与船舶数据库对接,包括船主、吨位、船籍港、货物种类等信息,信息包含:船舶图片、船籍港、船名、速度、船型和货种等。

猜你喜欢

船舶图像检测
改进的LapSRN遥感图像超分辨重建
“不等式”检测题
“一元一次不等式”检测题
“一元一次不等式组”检测题
《船舶》2022 年度征订启事
有趣的图像诗
船舶!请加速
BOG压缩机在小型LNG船舶上的应用
船舶压载水管理系统
遥感图像几何纠正中GCP选取