CN107731011B - 一种港口泊船监测方法、系统及电子设备 - Google Patents
一种港口泊船监测方法、系统及电子设备 Download PDFInfo
- Publication number
- CN107731011B CN107731011B CN201711037723.9A CN201711037723A CN107731011B CN 107731011 B CN107731011 B CN 107731011B CN 201711037723 A CN201711037723 A CN 201711037723A CN 107731011 B CN107731011 B CN 107731011B
- Authority
- CN
- China
- Prior art keywords
- port
- ship
- berthing
- network
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 55
- 238000012544 monitoring process Methods 0.000 title claims abstract description 50
- 238000003062 neural network model Methods 0.000 claims abstract description 82
- 230000011218 segmentation Effects 0.000 claims abstract description 82
- 230000006870 function Effects 0.000 claims description 71
- 238000010586 diagram Methods 0.000 claims description 68
- 238000012549 training Methods 0.000 claims description 63
- 238000011176 pooling Methods 0.000 claims description 62
- 238000012545 processing Methods 0.000 claims description 48
- 238000004422 calculation algorithm Methods 0.000 claims description 21
- 230000015654 memory Effects 0.000 claims description 17
- 238000007781 pre-processing Methods 0.000 claims description 17
- 238000004364 calculation method Methods 0.000 claims description 15
- 238000005070 sampling Methods 0.000 claims description 13
- 238000012935 Averaging Methods 0.000 claims description 12
- 238000000605 extraction Methods 0.000 claims description 12
- 230000015572 biosynthetic process Effects 0.000 claims description 11
- 238000003786 synthesis reaction Methods 0.000 claims description 11
- 239000011159 matrix material Substances 0.000 claims description 8
- 230000000694 effects Effects 0.000 claims description 7
- 238000005457 optimization Methods 0.000 claims description 6
- 230000002194 synthesizing effect Effects 0.000 claims description 5
- 238000010276 construction Methods 0.000 claims description 4
- 238000003672 processing method Methods 0.000 claims description 3
- 238000005516 engineering process Methods 0.000 abstract description 10
- 238000010801 machine learning Methods 0.000 description 11
- 238000011156 evaluation Methods 0.000 description 7
- 238000003384 imaging method Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 238000011160 research Methods 0.000 description 6
- 238000012360 testing method Methods 0.000 description 6
- 238000013473 artificial intelligence Methods 0.000 description 5
- 238000011161 development Methods 0.000 description 4
- 230000018109 developmental process Effects 0.000 description 4
- 238000005286 illumination Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 238000003032 molecular docking Methods 0.000 description 3
- 238000013480 data collection Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000002372 labelling Methods 0.000 description 2
- 238000002156 mixing Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 239000004575 stone Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G08—SIGNALLING
- G08G—TRAFFIC CONTROL SYSTEMS
- G08G3/00—Traffic control systems for marine craft
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2413—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Ocean & Marine Engineering (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Image Analysis (AREA)
Abstract
本申请涉及港口交通管理技术领域,特别涉及一种港口泊船监测方法、系统及电子设备。所述港口泊船监测方法包括:步骤a:通过摄像装置采集港口泊船数据;步骤b:构建基于“全卷积网络+区域目标网络分支”的神经网络模型;步骤c:将所述港口泊船数据输入基于“全卷积网络+区域目标网络分支”的神经网络模型,所述基于“全卷积网络+区域目标网络分支”的神经网络模型根据所述港口泊船数据进行舰船对象区域分割以及舰船类型分类,并根据所述舰船对象区域分割结果和舰船类型分类结果计算港口泊船状态。本申请通过可以自动准确地评估出当前港口码头的拥塞状态,对应用场景的限制条件少且更加智能便利,便于广泛使用。
Description
技术领域
本申请涉及港口交通管理技术领域,特别涉及一种港口泊船监测方法、系统及电子设备。
背景技术
航运事业的迅猛发展,为国家经济的发展做出了很大贡献。港口码头的泊船监测对航运事业的影响至关重要,在协调舰船靠岸停泊和控制舰船驶入港口码头的过程中,高效准确地划分出港口和码头的拥塞程度,是合理调度舰船停靠的关键。但目前的海上交通管理系统已跟不上航运事业发展的需要。
海军兵种指挥学院的郭石军针对海上交通出现了船舶吨位增大、船舶航行密度大、航行事故发生率有所上升的趋势,为了更有效地管理海上交通,在《舰载成像雷达在港口交管系统的应用》一文中提出利用一些先进技术例如成像雷达及飞艇等装备对港口交通管理系统进行改进。在研究中就成像雷达及飞艇应用到港口交通管理系统中作了一些初步研究和探讨,主要涉及成像雷达及飞艇介绍、成像雷达及飞艇的优势,并提出了通过飞艇将目标雷达图像传给系统数据处理单元,系统数据处理单元通过智能对比、提取、分析港口区域里的图像情报变化来监视和跟踪所有目标及变化态势。
交通部天津海上安全监督局的史光平、甄刚、李冬梅和孙虎山提出一种船舶数据处理系统(申请号CN98117214.8),该系统应用软件中设置的数据库由基本资料、引航员资料、泊位资料、船舶管理资料、航行计划、航行记录及统计资料各个数据库构成。在船舶管理资料数据库中设置当前位置状态字段,该字段随着船舶的位置不同而改变。并采用ODBC(Open Database Connectivity,开放数据库连接)接口连接ORACLE数据库与FOXPRO数据库,从而实现数据的转换。
综上所述,现有的海上交通管理技术至少存在以下缺点:
一、现有的一种基于雷达、飞艇等装备的海上交通管理技术研究需要维护一个巨大的港口区域信息知识库,通过与以前的知识进行比较,来完成图像判读理解,因此计算复杂度较高。
二、利用图像处理的航运中舰船目标识别技术都是仅仅完成主要目标的提取、识别和分类,并没有分割出各个类别舰船目标的区域,在效率和准确率上都无法达到较为满意的效果。
三、最新研究中提取对象区域的技术,人工地将识别分类和区域分割划分开,造成训练中计算复杂度提高。
四、截止目前尚没有采用机器学习的方法进行舰船种类识别和区域分割的技术。
随着人工智能和海洋交通运输业的发展,机器学习的相关研究成果在陆地、海洋交通领域的应用越来越多。机器学习是人工智能的一个分支。人工智能的研究是从以“推理”为重点到以“知识”为重点,再到以“学习”为重点,一条自然、清晰的脉络。显然,机器学习是实现人工智能的一个途径,即以机器学习为手段解决人工智能中的问题。机器学习理论主要是设计和分析一些让计算机可以自动“学习”的算法。机器学习算法是一类从数据中自动分析获得规律,并利用规律对未知数据进行预测的算法。然而,基于机器学习的对象识别和分割技术目前并没有应用于港口和码头拥塞程度监测技术中。
发明内容
本申请提供了一种港口泊船监测方法、系统及电子设备,旨在至少在一定程度上解决现有技术中的上述技术问题之一。
为了解决上述问题,本申请提供了如下技术方案:
一种港口泊船监测方法,其特征在于,包括:
步骤a:通过摄像装置采集港口泊船数据;
步骤b:构建基于“全卷积网络+区域目标网络分支”的神经网络模型;
步骤c:将所述港口泊船数据输入基于“全卷积网络+区域目标网络分支”的神经网络模型,所述基于“全卷积网络+区域目标网络分支”的神经网络模型根据所述港口泊船数据进行舰船对象区域分割以及舰船类型分类,并根据所述舰船对象区域分割结果和舰船类型分类结果计算港口泊船状态。
本申请实施例采取的技术方案还包括:在所述步骤a中,所述通过摄像装置采集港口泊船数据还包括:所述摄像装置的数量为至少两个,根据数据分割间隔时间分别将各个摄像装置采集的港口泊船数据分割成包含数据采集时刻的港口泊船区域图像,并分别将各个摄像装置在同一数据采集时刻下的港口泊船区域图像合成为一张完整的港口泊船图像。
本申请实施例采取的技术方案还包括:所述步骤a中还包括:对所述港口泊船图像进行向下采样后,在所述港口泊船图像中标注舰船类型和舰船对象区域。
本申请实施例采取的技术方案还包括:所述步骤b还包括:将所述港口泊船图像输入基于“全卷积网络+区域目标网络分支”的神经网络模型,通过反向传播算法对所述基于“全卷积网络+区域目标网络分支”的神经网络模型进行训练。
本申请实施例采取的技术方案还包括:所述对基于“全卷积网络+区域目标网络分支”的神经网络模型进行训练具体包括:
步骤b1:通过输入层输入港口泊船图像;
步骤b2:通过具备残差网络结构的全卷积网络提取港口泊船图像的港口泊船特征图,并输出通道特征图;
步骤b3:分别通过具备残差网络结构的全卷积网络和区域目标网络分支对所述通道特征图进行卷积处理,得到港口泊船特征图中舰船对象的内部特征图和外部特征图;
步骤b4:通过卷积层对港口泊船特征图的各个像素进行卷积处理,得到港口泊船特征集,并通过全连接层将所述港口泊船特征集重新归一为原始港口泊船图像的尺寸大小,并分别执行步骤b5和步骤b6;
步骤b5:通过softmax池化层对所述港口泊船特征集中的舰船对象进行区域分割处理,并输出舰船对象区域分割结果;
步骤b6:通过max池化层对所述港口泊船特征集中各个像素点进行上采样,得到各个舰船类型像素点的概率值;
步骤b7:通过average池化层对所述港口泊船特征集中各个舰船对象活跃区域取平均值处理,得到各个舰船类型活跃区域的概率值;
步骤b8:根据各个舰船类型像素点的概率值及活跃区域的概率值输出舰船类型分类结果。
本申请实施例采取的技术方案还包括:所述对基于“全卷积网络+区域目标网络分支”的神经网络模型进行训练还包括:
步骤b9:根据输出的舰船对象区域分割结果和舰船类型分类结果与所述港口泊船图像中标注的舰船类型和舰船对象区域之间的误差计算损失函数L;
步骤b10:判断所述损失函数L是否满足最小值,如果不满足最小值,执行步骤b11;如果满足最小值,执行步骤b12;
步骤b11:运用反向传播算法,根据损失函数L调整网络参数,直到损失函数L满足最小值;
步骤b12:保存网络模型的参数,模型训练结束。
本申请实施例采取的技术方案还包括:所述损失函数L包括舰船类型Lclass、舰船对象预选框Lbbox和舰船对象区域Lmask三个分量:
L({pi},{ti},{Ki})=Lclass(pi)+Lbbox(ti)+Lmask(Ki)
其中:
上述公式中,参数Nclass代表港口舰船类型的数目;
参数i是港口泊船特征集中一个小型batch的anchor的索引值,设共有m个anchor,i从1遍历至m;
参数Z代表softmax函数Z=WX+B,其中,Z为n维向量,W为权值矩阵,X为m维输入向量,B为n维偏置量;
参数Nbbox代表单类舰船类型的预测框中anchor的总数;
本申请实施例采取的技术方案还包括:在所述步骤c中,所述根据舰船对象区域分割结果和舰船类型分类结果计算港口泊船状态具体为:将舰船类型的数目Nclass分为Nclass_big和Nclass_small,将各舰船类型的数量Num分为Num_big和Num_small,并设定港口泊船最大值时的参数阈值Ymax以及比较参数Yyongse和Ykongxian,根据Ymax阈值、参数Yyongse和Ykongxian计算港口泊船状态,所述港口泊船状态包括拥塞、正常和空闲:
Ymax=Wclass_big×Num_big+Wclass_small×Num_small
Yyongse=Ymax×0.8
Ykongxian=Ymax×0.3
在上述公式中,Wclass_big为大型舰船种类权重,Wclass_small为中小型船只种类权重,Num_big为大型舰船数量,Num_small为中小型船只数量。
本申请实施例采取的另一技术方案为:一种港口泊船监测系统,包括:
数据采集模块:用于采集港口泊船数据;
网络模型构建模块:用于构建基于“全卷积网络+区域目标网络分支”的神经网络模型;
状态监测模块:用于将所述港口泊船数据输入基于“全卷积网络+区域目标网络分支”的神经网络模型,所述基于“全卷积网络+区域目标网络分支”的神经网络模型根据所述港口泊船数据进行舰船对象区域分割以及舰船类型分类,并根据所述舰船对象区域分割结果和舰船类型分类结果计算港口泊船状态。
本申请实施例采取的技术方案还包括数据分割模块和数据合成模块,所述摄像装置的数量为至少两个,所述数据分割模块用于根据数据分割间隔时间分别将各个摄像装置采集的港口泊船数据分割成包含数据采集时刻的港口泊船区域图像;所述数据合成模块用于分别将各个摄像装置在同一数据采集时刻下的港口泊船区域图像合成为一张完整的港口泊船图像。
本申请实施例采取的技术方案还包括数据预处理模块,所述数据预处理模块用于对所述港口泊船图像进行向下采样后,在所述港口泊船图像中标注舰船类型和舰船对象区域。
本申请实施例采取的技术方案还包括网络模型训练模块,所述网络模型训练模块用于将港口泊船图像输入基于“全卷积网络+区域目标网络分支”的神经网络模型,通过反向传播算法对所述基于“全卷积网络+区域目标网络分支”的神经网络模型进行训练。
本申请实施例采取的技术方案还包括:所述网络模型训练模块包括:
图像输入单元:用于通过输入层输入港口泊船图像;
第一特征图提取单元:用于通过具备残差网络结构的全卷积网络提取港口泊船图像的港口泊船特征图,并输出通道特征图;
第二特征图提取单元:用于分别通过具备残差网络结构的全卷积网络和区域目标网络分支对所述通道特征图进行卷积处理,得到港口泊船特征图中舰船对象的内部特征图和外部特征图;
泊船特征集提取单元:用于通过卷积层对港口泊船特征图的各个像素进行卷积处理,得到港口泊船特征集,并通过全连接层将所述港口泊船特征集重新归一为原始港口泊船图像的尺寸大小;
区域分割单元:用于通过softmax池化层对所述港口泊船特征集中的舰船对象进行区域分割处理,并输出舰船对象区域分割结果;
第一概率值计算单元:用于通过max池化层对所述港口泊船特征集中各个像素点进行上采样,得到各个舰船类型像素点的概率值;
第二概率值计算单元:用于通过average池化层对所述港口泊船特征集中各个舰船对象活跃区域取平均值处理,得到各个舰船类型活跃区域的概率值;
类型分类单元:用于根据各个舰船类型像素点的概率值及活跃区域的概率值输出舰船类型分类结果。
本申请实施例采取的技术方案还包括:所述网络模型训练模块还包括:
损失函数计算单元:用于根据输出的舰船对象区域分割结果和舰船类型分类结果与所述港口泊船图像中标注的舰船类型和舰船对象区域之间的误差计算损失函数L,并判断所述损失函数L是否满足最小值,如果不满足最小值,通过网络优化单元优化网络参数;如果满足最小值,通过参数存储单元存储网络参数;
网络优化单元:用于运用反向传播算法,根据损失函数L调整网络参数,直到损失函数L满足最小值;
参数存储单元:用于保存网络模型的参数,模型训练结束。
本申请实施例采取的技术方案还包括:所述损失函数L包括舰船类型Lclass、舰船对象预选框Lbbox和舰船对象区域Lmask三个分量:
L({pi},{ti},{Ki})=Lclass(pi)+Lbbox(ti)+Lmask(Ki)
其中:
上述公式中,参数Nclass代表港口舰船类型的数目;
参数i是港口泊船特征集中一个小型batch的anchor的索引值,设共有m个anchor,i从1遍历至m;
参数Z代表softmax函数Z=WX+B,其中,Z为n维向量,W为权值矩阵,X为m维输入向量,B为n维偏置量;
参数Nbbox代表单类舰船类型的预测框中anchor的总数;
本申请实施例采取的技术方案还包括:所述状态监测模块根据舰船对象区域分割结果和舰船类型分类结果计算港口泊船状态具体为:将舰船类型的数目Nclass分为Nclass_big和Nclass_small,将各舰船类型的数量Num分为Num_big和Num_small,并设定港口泊船最大值时的参数阈值Ymax以及比较参数Yyongse和Ykongxian,根据Ymax阈值、参数Yyongse和Ykongxian计算港口泊船状态,所述港口泊船状态包括拥塞、正常和空闲:
Ymax=Wclass_big×Num_big+Wclass_small×Num_small
Yyongse=Ymax×0.8
Ykongxian=Ymax×0.3
在上述公式中,Wclass_big为大型舰船种类权重,Wclass_small为中小型船只种类权重,Num_big为大型舰船数量,Num_small为中小型船只数量。
本申请实施例采取的又一技术方案为:一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述的港口泊船监测方法的以下操作:
步骤a:通过摄像装置采集港口泊船数据;
步骤b:构建基于“全卷积网络+区域目标网络分支”的神经网络模型;
步骤c:将所述港口泊船数据输入基于“全卷积网络+区域目标网络分支”的神经网络模型,所述基于“全卷积网络+区域目标网络分支”的神经网络模型根据所述港口泊船数据进行舰船对象区域分割以及舰船类型分类,并根据所述舰船对象区域分割结果和舰船类型分类结果计算港口泊船状态。
相对于现有技术,本申请实施例产生的有益效果在于:本申请实施例的港口泊船监测方法、系统及电子设备通过在港口码头的特定位置安装摄像装置实时采集港口码头内泊船区域的泊船图像,并将采集的泊船图像输入已经训练好的“全卷积网络+区域目标网络分支”的神经网络模型,神经网络模型通过机器学习分别对泊船区域的商船、渔船等小型船只以及军舰、邮轮等大型舰船进行舰船对象区域分割与舰船类型分类,并自动准确地评估出当前港口码头的拥塞状态;本申请对应用场景的限制条件少且更加智能便利,便于广泛使用。
附图说明
图1是本申请实施例的港口泊船监测方法的流程图;
图2为摄像装置的数据采集示意图;
图3为本申请实施例的港口泊船区域图像合成示意图;
图4为本申请实施例的基于“全卷积网络+区域目标网络分支”的神经网络模型的结构示意图;
图5为本申请实施例对基于“全卷积网络+区域目标网络分支”的神经网络模型进行训练及测试的流程图;
图6是本申请实施例的港口泊船监测系统的结构示意图;
图7是本发明实施例提供的港口泊船监测方法的硬件设备结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。
本申请实施例的港口泊船监测方法、系统及电子设备通过在港口码头的特定位置安装摄像装置实时采集港口码头内泊船区域的泊船图像,并将采集的泊船图像输入已经训练好的“全卷积网络+区域目标网络分支”的神经网络模型,神经网络模型通过机器学习分别对泊船区域的商船、渔船等小型船只以及军舰、邮轮等大型舰船进行舰船对象区域分割与舰船类型分类,并自动准确地评估出当前港口码头的拥塞状态,从而达到指导和辅助航运交通调度的目的,相对于现有技术,本申请对应用场景的限制条件少且更加智能便利,便于广泛使用。
具体地,请参阅图1,是本申请实施例的港口泊船监测方法的流程图。本申请实施例的港口泊船监测方法包括以下步骤:
步骤100:通过摄像装置采集各个港口内所有泊船区域的港口泊船数据;
在步骤100中,港口泊船数据为视频数据或图像数据,主要包括广东沿海区域和珠江沿岸部分民用港口码头地区在合适天气(无降雨,少云雾且合适光照)情况下的白天日照以及夜晚灯照下泊船区域的港口泊船数据,摄像装置采集的港口泊船数据比成像雷达能保留更多的特征信息,比飞艇航拍更稳定不易受天气影响。同一港口内,所有泊船区域的数据采集范围应该能够包括整个港口的泊船情况,因此,在数据采集阶段,需要使用一系列的摄像装置进行港口泊船数据采集,具体如图2所示,为摄像装置的数据采集示意图。在本申请实施例中,摄像装置的数量优选为三个,港口泊船数据每帧大小为224×224像素,港口泊船数据帧数为每秒25帧,具体地,摄像装置数量、港口泊船数据的尺寸及帧数可根据实际应用进行设定。
步骤200:根据设定的数据分割间隔时间分别将各个摄像装置采集的港口泊船数据分割成包含数据采集时刻的港口泊船区域图像;在步骤200中,本申请实施例以设定数据分割间隔时间为15秒到一分钟,即可得到包含1500×25×4×3,即450000个港口泊船区域图像;其中,1500接近于1440=60*24,表示数据采集时间为一天左右;25为每秒的得到的港口泊船数据帧数,4为平均每分钟进行4次分割数据,3为三个摄像装置。
步骤300:分别将各个摄像装置在同一数据采集时刻下的港口泊船区域图像合成为一张完整的港口泊船图像,得到港口泊船图像训练集;
在步骤300中,图像合成具体如图3所示,为本申请实施例的港口泊船区域图像合成示意图。图像合成完成后,再对港口泊船图像训练集中的每个训练样本进行角度反转和镜像处理,以增加训练样本示例数。本申请通过对港口泊船数据进行分割和合成处理,得到一张完整的港口泊船图像,保留了港口泊船图像中各舰船类型的时空特征,识别精度更高。
步骤400:对港口泊船图像训练集中的训练样本进行数据预处理;
在步骤400中,数据预处理具体为:对港口泊船图像进行向下采样后,分别标注每帧港口泊船图像的标签;其中,向下采样即模糊处理,例如将港口泊船图像的分辨率由224×224变成80×80,以压缩内存占用,提高算法效率。标签包括舰船类型class以及舰船对象区域mask,用于在模型训练时判断模型输出值的误差。
步骤500:构建基于“全卷积网络+区域目标网络分支”的神经网络模型;
在步骤500中,本申请实施例的神经网络模型包括具备残差网络结构的全卷积网络和区域目标网络分支,具备残差网络结构的全卷积网络用于提取港口泊船图像的港口泊船特征图,并输出1024个通道特征图;区域目标网络分支用于根据1024个通道特征图获取泊船区域中舰船对象的ROI(region of interest,感兴趣区域、活跃区域)特征图。
具体地,请参阅图4,是本申请实施例的基于“全卷积网络+区域目标网络分支”的神经网络模型的结构示意图。该神经网络模型包括输入层、全卷积网络、全卷积网络池化层、卷积层、全连接层、softmax层、区域目标网络池化层、max池化层和average池化层,其中,全卷积网络和全连接层为共享层,全卷积网络包括叠加5层的卷积层,每层卷积层的卷积核均为3*3、步长均为1。神经网络模型通过两个分支结构同时对舰船对象的活跃区域特征图进行处理:
1、舰船对象内部特征图分支:港口泊船图像的1024个通道特征图经过全卷积网络池化层的处理,得到活跃区域中舰船对象内部特征图;
2、舰船对象外部特征图分支:港口泊船图片的1024个通道特征图经过区域目标网络池化层的处理,得到活跃区域中舰船对象外部特征图;
接下来是“装配(assembling)”处理,活跃区域中舰船对象的内部特征图和外部特征图分别输入卷积层,卷积层采用的卷积核尺寸为1X1,步长为1,对输入的舰船对象内部特征图和外部特征图进行卷积处理,并输出标有像素级别分数的港口泊船特征集;然后通过后面的全连接层将输入的港口泊船特征集统一尺寸比例,变为原始港口泊船图像的高宽比例,得到输出为7*7(C+1)的舰船对象特征集。全连接层分别连接到softmax层和max池化层,softmax层作为分割分支,通过对港口泊船特征集进行处理后输出舰船对象的区域分割结果;max池化层和average池化层作为分类分支,首先经过像素级别的max池化层处理,再对舰船类型进行活跃区域级别的average池化层处理,经过两层池化层处理之后,输出舰船类型分类结果。
舰船对象的内部特征图和外部特征图合并后输出是2(C+1)*k*k,其中,“2”表示该像素在某个相对位置属于某个物体的概率和该像素在物体边界之内或之外的概率,C为港口内的舰船类型(一般按照体型或者吨位粗略地分为大型舰船和中小型船只两类),k为港口泊船特征图尺寸。装配处理过程即是分别对活跃区域中的各个像素点进行检测和分割:
检测:像素点是否属于目标舰船对象的预测框,是则+,否则-;
分割:像素点是否属于目标舰船对象的区域范围,是则+,否则-。
步骤600:将港口泊船图像训练集中的训练样本输入基于“全卷积网络+区域目标网络分支”的神经网络模型,通过反向传播算法对基于“全卷积网络+区域目标网络分支”的神经网络模型进行训练和测试;
在步骤600中,对基于“全卷积网络+区域目标网络分支”的神经网络模型训练完成后,模型可以对输入的港口泊船区域图像中的大型舰船、邮轮、民用中小型货船、渔船等舰船对象进行区域分割以及舰船类型分类,从而根据舰船类型及舰船数量实时评估港口的拥塞状态,辅助港口管理人员对海港泊船和舰船靠岸等进行监管和调度。
为了更为清楚的说明神经网络模型的训练及测试过程,请一并参阅图5,是本申请实施例对基于“全卷积网络+区域目标网络分支”的神经网络模型进行训练及测试的流程图(其中带入的参数仅用于举例说明,技术方案的实现并不局限于具体参数)。本申请实施例的对基于“全卷积网络+区域目标网络分支”的神经网络模型进行训练的训练及测试方式包括以下步骤:
步骤601:通过输入层输入一张224×224*3的港口泊船图像;
步骤602:通过具备残差网络结构的全卷积网络提取港口泊船图像的港口泊船特征图,并输出1024个通道特征图;
在步骤602中,经过叠加5层的卷积层卷积处理后,得到的港口泊船特征图的尺寸为214*214*3。
步骤603:分别通过具备残差网络结构的全卷积网络和区域目标网络分支对1024个通道特征图进行卷积处理,得到港口泊船特征图中舰船对象的内部特征图和外部特征图;
在步骤603中,具备残差网络结构的全卷积网络,卷积核尺寸为3X3、步长为16。通过该卷积层处理,得到港口泊船特征图中舰船对象边界内部,各像素在相对位置下概率值的特征集;区域目标网络分支同样是全卷积网络,卷积核尺寸为3X3、步长为16。港口泊船特征图通过该卷积层处理,得到港口泊船特征图中舰船对象边界外部,各像素在相对位置下概率值的特征集。经过上述处理,得到港口泊船特征图中舰船对象边界内部和外部,各像素在相对位置下概率值的2(2+1)*7*7的特征集,其中,括号外的“2”表示该像素在某个相对位置属于某个物体的概率和该像素在物体边界之内或之外的概率,括号内的“2”表示舰船类型的数目(本申请实施例中,仅以按照体型或者吨位将舰船类型分为大型舰船和中小型船只2类为例,具体舰船类型的数目可根据实际应用进行设定),1为港口码头的背景,7*7为港口泊船特征图的尺寸。
本申请实施例通过在区域目标网络分支引入残差网络进行特征提取,增强了训练的拟合度,并且减少了计算量,模型参数少,提高了算法的适用性和鲁棒性。同时,采取共享卷积层和全连接层的思路,通过位置敏感的内部特征图和外部特征图使得舰船对象区域分割和舰船类型分类两个任务之间互相影响,将港口泊船图像中的舰船类型和舰船对象区域分割两个任务紧密结合起来,底层卷积参数在两个任务及所有目标区域之间是完全共享的,两个任务同时进行,不存在先后处理的顺序,降低了硬件设备的计算性能要求,进一步减少了计算量和模型参数,使得港口泊船图像中的舰船对象区域分割更加精确、快捷、高效。
步骤604:通过卷积层对港口泊船特征图的各个像素进行卷积处理,得到输出为7*7(2+1)的港口泊船特征集,并通过全连接层将港口泊船特征集重新归一为原始港口泊船图像的长宽比尺寸大小,得到输出为7*7(C+1)的舰船对象特征集,并分别执行步骤605和步骤606;
步骤605:通过softmax池化层对港口泊船特征集中的舰船对象进行区域分割处理,输出各个舰船对象的区域分割结果;
步骤606:通过max池化层对港口泊船特征集中各个像素点进行上采样处理,得到各个舰船类型像素点的概率值;
步骤607:通过average池化层对港口泊船特征集中各个舰船对象活跃区域取平均值处理,得到各个舰船类型活跃区域的概率值;
步骤608:根据各个舰船类型像素点的概率值及活跃区域的概率值输出港口中舰船类型分类结果;
步骤609:根据输出的舰船对象区域分割结果和舰船类型分类结果与原港口泊船图像中标注的舰船类型class和舰船对象区域mask之间的误差计算损失函数L;
在步骤609中,根据舰船类型class、舰船对象预选框bbox和舰船对象区域mask这三个输出,损失函数L分为三个分量:
L({pi},{ti},{Ki})=Lclass(pi)+Lbbox(ti)+Lmask(Ki) (1)
其中:
上述公式中,舰船对象预选框的损失函数分量Lbbox(ti)和舰船对象区域的损失函数分量Lmask(Ki)是仅仅针对港口泊船图像中积极值的活跃区域;
参数Nclass代表港口舰船类型的数目,在本申请实施例子中,Nclass=2,即大型舰船和中小型船只,具体可根据实际操作进行设定;
参数i是港口泊船特征集中一个小型batch的anchor的索引值,设共有m个anchor,i从1遍历至m;
参数Z代表softmax函数Z=WX+B,其中,Z为n维向量,W为权值矩阵(矩阵大小为n×m),X为m维输入向量,B为n维偏置量,用于修正偏移量;
参数Nbbox代表单类舰船类型的预测框中anchor的总数,此处将Nbbox值设置为2400;
将Lclass、Lbbox和Lmask三个损失函数分量进行归一化,在模型训练中本申请将三个损失函数分量的平衡参数分别设置为相同大小,具体可根据实际应用进行设定。
步骤610:判断损失函数L是否满足最小值,如果不满足最小值,执行步骤611;如果满足最小值,执行步骤612;
步骤611:运用反向传播算法,根据损失函数L调整网络参数,直到损失函数L满足最小值;
步骤612:保存网络模型的参数,模型训练结束。
在步骤612中,模型训练结束后,即可得到一个以港口泊船图像数据作为输入,并输出不同的舰船类型分类结果、以及各个舰船对象的区域分割结果的基于“全卷积网络+区域目标网络分支”的神经网络模型。将训练好的基于“全卷积网络+区域目标网络分支”的神经网络模型移植到硬件平台,实现单机识别,并便于后续的系统升级和更新。可以理解,本申请还可以适用于城市交通路口和车辆、博物馆、展厅和参观游客等相对简单且易于识别分割的应用场景,只需要在模型训练阶段替换为相应场景的训练样本即可。
步骤700:将采集的港口泊船图像输入训练好的基于“全卷积网络+区域目标网络分支”的神经网络模型,通过该神经网络模型输出对应的舰船类型分类结果以及舰船对象区域分割结果,并根据舰船类型分类结果以及舰船对象区域分割结果进行港口泊船状态评估。
在步骤700中,港口泊船状态评估算法具体为:
步骤701:针对实际使用中的港口码头,根据舰船类型Nclass的数目(将舰船类型分为Nclass_big和Nclass_small)与各舰船类型的数量Num(将舰船类型分为Num_big和Num_small),港口监管人员和航运调度人员根据本港口的实际情况设定港口泊船最大值时的参数阈值Ymax以及两个比较参数Yyongse和Ykongxian,根据Ymax阈值、参数Yyongse和Ykongxian来评估当前的港口泊船状态(拥塞、正常、空闲):
Ymax=Wclass_big×Num_big+Wclass_small×Num_small
Yyongse=Ymax×0.8
Ykongxian=Ymax×0.3
在上述公式中,大型舰船种类权重Wclass_big、中小型船只种类权重Wclass_small、大型舰船数量Num_big和中小型船只数量Num_small四个参数存在多种组合情况,但是四个参数的乘积值Ymax根据各个港口的实际泊船容量是固定不变的。参数0.8和0.3仅作为本申请实施例中判断拥塞和空闲状态的优选参数,具体可根据实际情况进行设定。
步骤702:对摄像装置采集的港口泊船图像进行预处理;
在步骤702中,预处理方式与前述的训练样本预处理方式一致,此处将不再赘述。
步骤703:将预处理完成后的港口泊船图像输入基于“全卷积网络+区域目标网络分支”的神经网络模型,神经网络模型对港口泊船图像进行舰船对象区域分割和舰船类型分类,并通过显示设备显示港口泊船状态评估结果。
在步骤704中,本申请实施例以图像的方式实时显示该港口泊船区域的拥塞状态评估结果,港口监管人员和航运调度人员可根据拥塞状态评估结果对当前港口泊船状态做出航运的调度。
请参阅图6,是本申请实施例的港口泊船监测系统的结构示意图。本申请实施例的港口泊船监测系统包括数据采集模块、数据分割模块、数据合成模块、数据预处理模块、网络模型构建模块、网络模型训练模块、状态监测模块和显示模块。
数据采集模块:用于采集各个港口内所有泊船区域的港口泊船数据;其中,港口泊船数据主要包括广东沿海区域和珠江沿岸部分民用港口码头地区在合适天气(无降雨,少云雾且合适光照)情况下的白天日照以及夜晚灯照下泊船区域的港口泊船数据,同一港口内,所有泊船区域的视频采集范围应该能够包括整个港口的泊船情况;因此,在数据采集阶段,需要使用一系列的数据采集模块进行视频采集。在本申请实施例中,数据采集模块为摄像头、相机等摄像装置,摄像装置的数量优选为三个,港口泊船数据每帧大小为224×224像素,港口泊船数据帧数为每秒25帧,具体地,摄像装置数量、港口泊船数据的尺寸及帧数可根据实际应用进行设定。
数据分割模块:用于根据设定的数据分割间隔时间分别将各个摄像装置采集的港口泊船数据分割成包含数据采集时刻的港口泊船区域图像;其中,本申请实施例以设定数据分割间隔时间为15秒到一分钟,即可得到包含1500×25×4×3,即450000个港口泊船区域图像;其中,1500接近于1440=60*24,表示数据采集时间为一天左右;25为每秒的得到的港口泊船数据帧数,4为平均每分钟进行4次分割数据,3为三个摄像装置。
数据合成模块:用于分别将各个摄像装置在同一数据采集时刻下的港口泊船区域图像合成为一张完整的港口泊船图像,得到港口泊船图像训练集;图像合成完成后,再对港口泊船图像训练集中的每个训练样本进行角度反转和镜像处理,以增加训练样本示例数。本申请通过对港口泊船数据进行分割和合成处理,得到一张完整的港口泊船图像,保留了港口泊船图像中各舰船类型的时空特征,识别精度更高。
数据预处理模块:用于对港口泊船图像训练集中的训练样本进行数据预处理;其中,数据预处理具体为:对港口泊船图像进行向下采样后,分别标注每帧港口泊船图像的标签;其中,向下采样即模糊处理,例如将港口泊船图像的分辨率由224×224变成80×80,以压缩内存占用,提高算法效率。标签包括舰船类型class以及舰船对象区域mask,用于在模型训练时判断模型输出值的误差。
网络模型构建模块:用于构建基于“全卷积网络+区域目标网络分支”的神经网络模型;其中,本申请实施例的神经网络模型包括具备残差网络结构的全卷积网络和区域目标网络分支,具备残差网络结构的全卷积网络用于提取港口泊船图像的港口泊船特征图,并输出1024个通道特征图;区域目标网络分支用于根据1024个通道特征图获取泊船区域中舰船对象的活跃区域特征图。
该神经网络模型包括输入层、全卷积网络、全卷积网络池化层、卷积层、全连接层、softmax层、区域目标网络池化层、max池化层和average池化层,其中,全卷积网络和全连接层为共享层,全卷积网络包括叠加5层的卷积层,每层卷积层的卷积核均为3*3、步长均为1。神经网络模型通过两个分支结构同时对舰船对象的活跃区域特征图进行处理:
1、舰船对象内部特征图分支:港口泊船图像的1024个通道特征图经过全卷积网络池化层的处理,得到活跃区域中舰船对象内部特征图;
2、舰船对象外部特征图分支:港口泊船图片的1024个通道特征图经过区域目标网络池化层的处理,得到活跃区域中舰船对象外部特征图;
接下来是“装配(assembling)”处理,活跃区域中舰船对象的内部特征图和外部特征图分别输入卷积层,卷积层采用的卷积核尺寸为1X1,步长为1,对输入的舰船对象内部特征图和外部特征图进行卷积处理,并输出标有像素级别分数的港口泊船特征集;然后通过后面的全连接层将输入的港口泊船特征集统一尺寸比例,变为原始港口泊船图像的高宽比例,得到输出为7*7(C+1)的舰船对象特征集。全连接层分别连接到softmax层和max池化层,softmax层作为分割分支,通过对港口泊船特征集进行处理后输出舰船对象的区域分割结果;max池化层和average池化层作为分类分支,首先经过像素级别的max池化层处理,再对舰船类型进行活跃区域级别的average池化层处理,经过两层池化层处理之后,输出舰船类型分类结果。
舰船对象的内部特征图和外部特征图合并后输出是2(C+1)*k*k,其中,“2”表示该像素在某个相对位置属于某个物体的概率和该像素在物体边界之内或之外的概率,C为港口内的舰船类型(一般按照体型或者吨位粗略地分为大型舰船和中小型船只两类),k为港口泊船特征图尺寸。装配处理过程即是分别对活跃区域中的各个像素点进行检测和分割:
检测:像素点是否属于目标舰船对象的预测框,是则+,否则-;
分割:像素点是否属于目标舰船对象的区域范围,是则+,否则-。
网络模型训练模块:用于将港口泊船图像训练集中的训练样本输入基于“全卷积网络+区域目标网络分支”的神经网络模型,通过反向传播算法对基于“全卷积网络+区域目标网络分支”的神经网络模型进行训练和测试;
具体地,网络模型训练模块包括:
图像输入单元:用于通过输入层输入一张224×224*3的港口泊船图像;
第一特征图提取单元:通过全卷积网络提取港口泊船图像的港口泊船特征图,并输出1024个通道特征图;其中,经过叠加5层的卷积层卷积处理后,得到的港口泊船特征图的尺寸为214*214*3。
第二特征图提取单元:用于分别通过具备残差网络结构的全卷积网络和区域目标网络分支对1024个通道特征图进行卷积处理,得到港口泊船特征图中舰船对象的内部特征图和外部特征图;其中,具备残差网络结构的全卷积网络,卷积核尺寸为3X3、步长为16。通过该卷积层处理,得到港口泊船特征图中舰船对象边界内部,各像素在相对位置下概率值的特征集;区域目标网络分支同样是全卷积网络,卷积核尺寸为3X3、步长为16。港口泊船特征图通过该卷积层处理,得到港口泊船特征图中舰船对象边界外部,各像素在相对位置下概率值的特征集。经过上述处理,得到港口泊船特征图中舰船对象边界内部和外部,各像素在相对位置下概率值的2(2+1)*7*7的特征集,其中,括号外的“2”表示该像素在某个相对位置属于某个物体的概率和该像素在物体边界之内或之外的概率,括号内的“2”表示舰船类型的数目(本申请实施例中,仅以按照体型或者吨位将舰船类型分为大型舰船和中小型船只2类为例,具体舰船类型的数目可根据实际应用进行设定),1为港口码头的背景,7*7为港口泊船特征图的尺寸。
本申请实施例通过在区域目标网络分支引入残差网络进行特征提取,增强了训练的拟合度,并且减少了计算量,模型参数少,提高了算法的适用性和鲁棒性。同时,采取共享卷积层和全连接层的思路,通过位置敏感的内部特征图和外部特征图使得舰船对象区域分割和舰船类型分类两个任务之间互相影响,将港口泊船图像中的舰船类型和舰船对象区域分割两个任务紧密结合起来,两个任务同时进行,不存在先后处理的顺序,降低了硬件设备的计算性能要求,进一步减少了计算量和模型参数,使得港口泊船图像中的舰船对象区域分割更加精确、快捷、高效。
泊船特征集提取单元:通过卷积层对港口泊船特征图的各个像素进行卷积处理,得到输出为7*7(2+1)的港口泊船特征集,并通过全连接层将港口泊船特征集重新归一为原始港口泊船图像的长宽比尺寸大小,得到输出为7*7(C+1)的舰船对象特征集;
区域分割单元:用于通过softmax池化层对港口泊船特征集中的舰船对象进行区域分割处理,输出各个舰船对象的区域分割结果;
第一概率值计算单元:用于通过max池化层对港口泊船特征集中各个像素点进行上采样处理,得到各个舰船类型像素点的概率值;
第二概率值计算单元:用于通过average池化层对港口泊船特征集中各个舰船对象活跃区域取平均值处理,得到各个舰船类型活跃区域的概率值;
类型分类单元:用于根据各个舰船类型像素点的概率值及活跃区域的概率值输出港口中舰船类型分类结果;
损失函数计算单元:用于根据输出的舰船对象区域分割结果和舰船类型分类结果与原港口泊船图像中标注的舰船类型class和舰船对象区域mask之间的误差计算损失函数L,并判断损失函数L是否满足最小值,如果不满足最小值,通过网络优化单元优化网络参数;如果满足最小值,通过参数存储单元存储网络参数;其中,根据舰船类型class、舰船对象预选框bbox和舰船对象区域mask这三个输出,损失函数L分为三个分量:
L({pi},{ti},{Ki})=Lclass(pi)+Lbbox(ti)+Lmask(Ki) (1)
其中:
上述公式中,舰船对象预选框的损失函数分量Lbbox(ti)和舰船对象区域的损失函数分量Lmask(Ki)是仅仅针对港口泊船图像中积极值的活跃区域;
参数Nclass代表港口舰船类型的数目,在本申请实施例子中,Nclass=2,即大型舰船和中小型船只,具体可根据实际操作进行设定;
参数i是港口泊船特征集中一个小型batch的anchor的索引值,设共有m个anchor,i从1遍历至m;
参数Z代表softmax函数Z=WX+B,其中,Z为n维向量,W为权值矩阵(矩阵大小为n×m),X为m维输入向量,B为n维偏置量,用于修正偏移量;
参数Nbbox代表单类舰船类型的预测框中anchor的总数,此处将Nbbox值设置为2400;
将Lclass、Lbbox和Lmask三个损失函数分量进行归一化,在模型训练中本申请将三个损失函数分量的平衡参数分别设置为相同大小,具体可根据实际应用进行设定。
网络优化单元:用于运用反向传播算法,根据损失函数L调整网络参数,直到损失函数L满足最小值;
参数存储单元:用于保存网络模型的参数,模型训练结束。
状态监测模块:用于将采集的港口泊船图像输入训练好的基于“全卷积网络+区域目标网络分支”的神经网络模型,通过该神经网络模型输出对应的舰船类型分类结果以及舰船对象区域分割结果,并根据舰船类型分类结果以及舰船对象区域分割结果进行港口泊船状态评估;
状态监测模块具体包括:
阀值设定单元:用于针对实际使用中的港口码头,根据舰船类型Nclass的数目(将舰船类型分为Nclass_big和Nclass_small)与各舰船类型的数量Num(将舰船类型分为Num_big和Num_small),根据本港口的实际情况设定港口泊船最大值时的参数阈值Ymax以及两个比较参数Yyongse和Ykongxian,根据Ymax阈值、参数Yyongse和Ykongxian来评估当前的港口泊船状态(拥塞、正常、空闲):
Ymax=Wclass_big×Num_big+Wclass_small×Num_small
Yyongse=Ymax×0.8
Ykongxian=Ymax×0.3
在上述公式中,大型舰船种类权重Wclass_big、中小型船只种类权重Wclass_small、大型舰船数量Num_big和中小型船只数量Num_small四个参数存在多种组合情况,但是四个参数的乘积值Ymax根据各个港口的实际泊船容量是固定不变的。参数0.8和0.3仅作为本申请实施例中判断拥塞和空闲状态的优选参数,具体可根据实际情况进行设定。
预处理单元:用于对摄像装置采集的港口泊船图像进行预处理;
结果输出单元:用于将预处理完成后的港口泊船图像输入基于“全卷积网络+区域目标网络分支”的神经网络模型,神经网络模型对港口泊船图像进行舰船对象区域分割和舰船类型分类,并根据舰船对象区域分割和舰船类型分类结果进行港口泊船状态评估。
显示模块:用于显示并存储港口泊船状态评估结果。显示模块包括但不限于电视、PC等显示设备。
图7是本发明实施例提供的港口泊船监测方法的硬件设备结构示意图,如图7所示,该设备包括一个或多个处理器以及存储器。以一个处理器为例,该设备还可以包括:输入系统和输出系统。
处理器、存储器、输入系统和输出系统可以通过总线或者其他方式连接,图7中以通过总线连接为例。
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块。处理器通过运行存储在存储器中的非暂态软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现上述方法实施例的处理方法。
存储器可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至处理系统。上述网络的包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入系统可接收输入的数字或字符信息,以及产生信号输入。输出系统可包括显示屏等显示设备。
所述一个或者多个模块存储在所述存储器中,当被所述一个或者多个处理器执行时,执行上述任一方法实施例的以下操作:
步骤a:通过摄像装置采集港口泊船数据;
步骤b:构建基于“全卷积网络+区域目标网络分支”的神经网络模型;
步骤c:将所述港口泊船数据输入基于“全卷积网络+区域目标网络分支”的神经网络模型,所述基于“全卷积网络+区域目标网络分支”的神经网络模型根据所述港口泊船数据进行舰船对象区域分割以及舰船类型分类,并根据所述舰船对象区域分割结果和舰船类型分类结果计算港口泊船状态。
上述产品可执行本发明实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本发明实施例提供的方法。
本发明实施例提供了一种非暂态(非易失性)计算机存储介质,所述计算机存储介质存储有计算机可执行指令,该计算机可执行指令可执行以下操作:
步骤a:通过摄像装置采集港口泊船数据;
步骤b:构建基于“全卷积网络+区域目标网络分支”的神经网络模型;
步骤c:将所述港口泊船数据输入基于“全卷积网络+区域目标网络分支”的神经网络模型,所述基于“全卷积网络+区域目标网络分支”的神经网络模型根据所述港口泊船数据进行舰船对象区域分割以及舰船类型分类,并根据所述舰船对象区域分割结果和舰船类型分类结果计算港口泊船状态。
本发明实施例提供了一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行以下操作:
步骤a:通过摄像装置采集港口泊船数据;
步骤b:构建基于“全卷积网络+区域目标网络分支”的神经网络模型;
步骤c:将所述港口泊船数据输入基于“全卷积网络+区域目标网络分支”的神经网络模型,所述基于“全卷积网络+区域目标网络分支”的神经网络模型根据所述港口泊船数据进行舰船对象区域分割以及舰船类型分类,并根据所述舰船对象区域分割结果和舰船类型分类结果计算港口泊船状态。
本申请实施例的港口泊船监测方法、系统及电子设备通过在港口码头的特定位置安装摄像装置实时采集港口码头内泊船区域的泊船图像,并将采集的泊船图像输入已经训练好的“全卷积网络+区域目标网络分支”的神经网络模型,神经网络模型通过机器学习分别对泊船区域的商船、渔船等小型船只以及军舰、邮轮等大型舰船进行舰船对象区域分割与舰船类型分类,大大提高了舰船识别的分析速度和效率,并自动准确地评估出当前港口码头的拥塞状态,从而达到指导和辅助航运交通调度的目的,相对于现有技术,本申请至少具有以下优点:
1、通过视频图像的方式直接采集港口泊船区域的港口泊船数据,保证了港口泊船区域的港口泊船数据时空信息的完整性;
2、使用更先进的”全卷积网络+区域目标网络分支”识别算法,可以根据港口泊船数据的连续帧图片进行识别和分割,并且将识别分割两个自然同步的过程在神经网络模型中紧密结合,精度更高且处理速度更快;
3、本申请对应用场景的限制条件少,不需要港口监管人员和航运调度人员具备成像雷达的设备使用要求,也不需要飞艇对港口进行航拍,通过使用低廉可长期使用的摄像装置,减少了港口监控成本,且一定程度上减少了天气对数据采集的影响,优化了港口监管人员和航运调度人员的使用体验;
4、识别和分割两个任务之间通过位置敏感的内/外特征图互相影响,使得计算量和模型参数得到了简化,一定程度上提高了系统的性能。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (13)
1.一种港口泊船监测方法,其特征在于,包括:
步骤a:通过摄像装置采集港口泊船数据;
步骤b:构建基于“全卷积网络+区域目标网络分支”的神经网络模型;
步骤c:将所述港口泊船数据输入基于“全卷积网络+区域目标网络分支”的神经网络模型,所述基于“全卷积网络+区域目标网络分支”的神经网络模型根据所述港口泊船数据进行舰船对象区域分割以及舰船类型分类,并根据舰船对象区域分割结果和舰船类型分类结果计算港口泊船状态;
所述基于“全卷积网络+区域目标网络分支”的神经网络模型包括:具备残差网络结构的全卷积网络和区域目标网络分支,具备残差网络结构的全卷积网络用于提取港口泊船图像的港口泊船特征图,并输出1024个通道特征图;区域目标网络分支用于根据1024个通道特征图获取泊船区域中舰船对象的ROI特征图;
所述神经网络模型在层级上包括:输入层、全卷积网络、全卷积网络池化层、卷积层、全连接层、softmax层、区域目标网络池化层、max池化层和average池化层,其中,全卷积网络和全连接层为共享层,全卷积网络包括叠加5层的卷积层;全连接层分别连接到softmax层和max池化层,softmax层作为分割分支,通过对港口泊船特征集进行处理后输出舰船对象的区域分割结果;max池化层和average池化层作为分类分支,首先经过像素级别的max池化层处理,再对舰船类型进行活跃区域级别的average池化层处理,经过两层池化层处理之后,输出舰船类型分类结果;
其中,所述步骤a包括:通过摄像装置采集各个港口内所有泊船区域的港口泊船数据;根据设定的数据分割间隔时间分别将各个摄像装置采集的港口泊船数据分割成包含数据采集时刻的港口泊船区域图像;分别将各个摄像装置在同一数据采集时刻下的港口泊船区域图像合成为一张完整的港口泊船图像,得到港口泊船图像训练集;对港口泊船图像训练集中的训练样本进行数据预处理;
所述步骤b包括:将所述港口泊船图像输入基于“全卷积网络+区域目标网络分支”的神经网络模型,通过反向传播算法对所述基于“全卷积网络+区域目标网络分支”的神经网络模型进行训练;
所述步骤c包括:所述根据舰船对象区域分割结果和舰船类型分类结果计算港口泊船状态具体为:将舰船类型的数目Nclass分为Nclass_big和Nclass_small,将各舰船类型的数量Num分为Num_big和Num_small,并设定港口泊船最大值时的参数阈值Ymax以及比较参数Yyongse和Ykongxian,根据Ymax阈值、参数Yyongse和Ykongxian计算港口泊船状态,所述港口泊船状态包括拥塞、正常和空闲:
Ymax=Wclass_big×Num_big+Wclass_small×Num_small
Yyongse=Ymax×0.8
Ykongxian=Ymax×0.3
在上述公式中,Wclass_big为大型舰船种类权重,Wclass_small为中小型船只种类权重,Num_big为大型舰船数量,Num_small为中小型船只数量。
2.根据权利要求1所述的港口泊船监测方法,其特征在于,在所述步骤a中,所述通过摄像装置采集港口泊船数据还包括:所述摄像装置的数量为至少两个。
3.根据权利要求2所述的港口泊船监测方法,其特征在于,所述数据预处理包括:对所述港口泊船图像进行向下采样后,在所述港口泊船图像中标注舰船类型和舰船对象区域。
4.根据权利要求1所述的港口泊船监测方法,其特征在于,对基于“全卷积网络+区域目标网络分支”的神经网络模型进行训练具体包括:
步骤b1:通过输入层输入港口泊船图像;
步骤b2:通过具备残差网络结构的全卷积网络提取港口泊船图像的港口泊船特征图,并输出通道特征图;
步骤b3:分别通过具备残差网络结构的全卷积网络和区域目标网络分支对所述通道特征图进行卷积处理,得到港口泊船特征图中舰船对象的内部特征图和外部特征图;
步骤b4:通过卷积层对港口泊船特征图的各个像素进行卷积处理,得到港口泊船特征集,并通过全连接层将所述港口泊船特征集重新归一为原始港口泊船图像的尺寸大小,并分别执行步骤b5和步骤b6;
步骤b5:通过softmax池化层对所述港口泊船特征集中的舰船对象进行区域分割处理,并输出舰船对象区域分割结果;
步骤b6:通过max池化层对所述港口泊船特征集中各个像素点进行上采样,得到各个舰船类型像素点的概率值;
步骤b7:通过average池化层对所述港口泊船特征集中各个舰船对象活跃区域取平均值处理,得到各个舰船类型活跃区域的概率值;
步骤b8:根据各个舰船类型像素点的概率值及活跃区域的概率值输出舰船类型分类结果。
5.根据权利要求4所述的港口泊船监测方法,其特征在于,所述对基于“全卷积网络+区域目标网络分支”的神经网络模型进行训练的步骤b8之后还包括:
步骤b9:根据输出的舰船对象区域分割结果和舰船类型分类结果与所述港口泊船图像中标注的舰船类型和舰船对象区域之间的误差计算损失函数L;
步骤b10:判断所述损失函数L是否满足最小值,如果不满足最小值,执行步骤b11;如果满足最小值,执行步骤b12;
步骤b11:运用反向传播算法,根据损失函数L调整网络参数,直到损失函数L满足最小值;
步骤b12:保存网络模型的参数,模型训练结束。
6.根据权利要求5所述的港口泊船监测方法,其特征在于,所述损失函数L包括舰船类型Lclass、舰船对象预选框Lbbox和舰船对象区域Lmask三个分量:
L({pi},{ti},{Ki})=Lclass(pi)+Lbbox(ti)+Lmask(Ki)
其中:
上述公式中,参数Nclass代表港口舰船类型的数目;
参数i是港口泊船特征集中一个小型batch的anchor的索引值,设共有m个anchor,i从1遍历至m;
参数Z代表softmax函数Z=WX+B,其中,Z为n维向量,W为权值矩阵,X为m维输入向量,B为n维偏置量;
参数Nbbox代表单类舰船类型的预测框中anchor的总数;
7.一种港口泊船监测系统,其特征在于,包括:
数据采集模块:用于通过摄像装置采集港口泊船数据;
网络模型构建模块:用于构建基于“全卷积网络+区域目标网络分支”的神经网络模型;
状态监测模块:用于将所述港口泊船数据输入基于“全卷积网络+区域目标网络分支”的神经网络模型,所述基于“全卷积网络+区域目标网络分支”的神经网络模型根据所述港口泊船数据进行舰船对象区域分割以及舰船类型分类,并根据舰船对象区域分割结果和舰船类型分类结果计算港口泊船状态;
所述基于“全卷积网络+区域目标网络分支”的神经网络模型包括:具备残差网络结构的全卷积网络和区域目标网络分支,具备残差网络结构的全卷积网络用于提取港口泊船图像的港口泊船特征图,并输出1024个通道特征图;区域目标网络分支用于根据1024个通道特征图获取泊船区域中舰船对象的ROI特征图;
所述神经网络模型在层级上包括:输入层、全卷积网络、全卷积网络池化层、卷积层、全连接层、softmax层、区域目标网络池化层、max池化层和average池化层,其中,全卷积网络和全连接层为共享层,全卷积网络包括叠加5层的卷积层;全连接层分别连接到softmax层和max池化层,softmax层作为分割分支,通过对港口泊船特征集进行处理后输出舰船对象的区域分割结果;max池化层和average池化层作为分类分支,首先经过像素级别的max池化层处理,再对舰船类型进行活跃区域级别的average池化层处理,经过两层池化层处理之后,输出舰船类型分类结果;
所述系统还包括数据分割模块和数据合成模块,所述数据分割模块用于根据数据分割间隔时间分别将各个摄像装置采集的港口泊船数据分割成包含数据采集时刻的港口泊船区域图像;所述数据合成模块用于分别将各个摄像装置在同一数据采集时刻下的港口泊船区域图像合成为一张完整的港口泊船图像;
所述系统还包括网络模型训练模块,所述网络模型训练模块用于将港口泊船图像输入基于“全卷积网络+区域目标网络分支”的神经网络模型,通过反向传播算法对所述基于“全卷积网络+区域目标网络分支”的神经网络模型进行训练;
所述状态监测模块根据舰船对象区域分割结果和舰船类型分类结果计算港口泊船状态具体为:将舰船类型的数目Nclass分为Nclass_big和Nclass_small,将各舰船类型的数量Num分为Num_big和Num_small,并设定港口泊船最大值时的参数阈值Ymax以及比较参数Yyongse和Ykongxian,根据Ymax阈值、参数Yyongse和Ykongxian计算港口泊船状态,所述港口泊船状态包括拥塞、正常和空闲:
Ymax=Wclass_big×Num_big+Wclass_small×Num_small
Yyongse=Ymax×0.8
Ykongxian=Ymax×0.3
在上述公式中,Wclass_big为大型舰船种类权重,Wclass_small为中小型船只种类权重,Num_big为大型舰船数量,Num_small为中小型船只数量。
8.根据权利要求7所述的港口泊船监测系统,其特征在于,所述摄像装置的数量为至少两个。
9.根据权利要求8所述的港口泊船监测系统,其特征在于,还包括数据预处理模块,所述数据预处理模块用于对所述港口泊船图像进行向下采样后,在所述港口泊船图像中标注舰船类型和舰船对象区域。
10.根据权利要求7所述的港口泊船监测系统,其特征在于,所述网络模型训练模块包括:
图像输入单元:用于通过输入层输入港口泊船图像;
第一特征图提取单元:用于通过具备残差网络结构的全卷积网络提取港口泊船图像的港口泊船特征图,并输出通道特征图;
第二特征图提取单元:用于分别通过具备残差网络结构的全卷积网络和区域目标网络分支对所述通道特征图进行卷积处理,得到港口泊船特征图中舰船对象的内部特征图和外部特征图;
泊船特征集提取单元:用于通过卷积层对港口泊船特征图的各个像素进行卷积处理,得到港口泊船特征集,并通过全连接层将所述港口泊船特征集重新归一为原始港口泊船图像的尺寸大小;
区域分割单元:用于通过softmax池化层对所述港口泊船特征集中的舰船对象进行区域分割处理,并输出舰船对象区域分割结果;
第一概率值计算单元:用于通过max池化层对所述港口泊船特征集中各个像素点进行上采样,得到各个舰船类型像素点的概率值;
第二概率值计算单元:用于通过average池化层对所述港口泊船特征集中各个舰船对象活跃区域取平均值处理,得到各个舰船类型活跃区域的概率值;
类型分类单元:用于根据各个舰船类型像素点的概率值及活跃区域的概率值输出舰船类型分类结果。
11.根据权利要求10所述的港口泊船监测系统,其特征在于,所述网络模型训练模块还包括:
损失函数计算单元:用于根据输出的舰船对象区域分割结果和舰船类型分类结果与所述港口泊船图像中标注的舰船类型和舰船对象区域之间的误差计算损失函数L,并判断所述损失函数L是否满足最小值,如果不满足最小值,通过网络优化单元优化网络参数;如果满足最小值,通过参数存储单元存储网络参数;
网络优化单元:用于运用反向传播算法,根据损失函数L调整网络参数,直到损失函数L满足最小值;
参数存储单元:用于保存网络模型的参数,模型训练结束。
12.根据权利要求11所述的港口泊船监测系统,其特征在于,所述损失函数L包括舰船类型Lclass、舰船对象预选框Lbbox和舰船对象区域Lmask三个分量:
L({pi},{ti},{Ki})=Lclass(pi)+Lbbox(ti)+Lmask(Ki)
其中:
上述公式中,参数Nclass代表港口舰船类型的数目;
参数i是港口泊船特征集中一个小型batch的anchor的索引值,设共有m个anchor,i从1遍历至m;
参数Z代表softmax函数Z=WX+B,其中,Z为n维向量,W为权值矩阵,X为m维输入向量,B为n维偏置量;
参数Nbbox代表单类舰船类型的预测框中anchor的总数;
13.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述权利要求 1至6任一项所述的港口泊船监测方法的以下操作:
步骤a:通过摄像装置采集港口泊船数据;
步骤b:构建基于“全卷积网络+区域目标网络分支”的神经网络模型;
步骤c:将所述港口泊船数据输入基于“全卷积网络+区域目标网络分支”的神经网络模型,所述基于“全卷积网络+区域目标网络分支”的神经网络模型根据所述港口泊船数据进行舰船对象区域分割以及舰船类型分类,并根据所述舰船对象区域分割结果和舰船类型分类结果计算港口泊船状态。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711037723.9A CN107731011B (zh) | 2017-10-27 | 2017-10-27 | 一种港口泊船监测方法、系统及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711037723.9A CN107731011B (zh) | 2017-10-27 | 2017-10-27 | 一种港口泊船监测方法、系统及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107731011A CN107731011A (zh) | 2018-02-23 |
CN107731011B true CN107731011B (zh) | 2021-01-19 |
Family
ID=61202321
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711037723.9A Active CN107731011B (zh) | 2017-10-27 | 2017-10-27 | 一种港口泊船监测方法、系统及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107731011B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108921066B (zh) * | 2018-06-22 | 2021-12-17 | 西安电子科技大学 | 基于特征融合卷积网络的光学遥感图像舰船检测方法 |
CN110874953B (zh) * | 2018-08-29 | 2022-09-06 | 杭州海康威视数字技术股份有限公司 | 区域报警方法、装置、电子设备及可读存储介质 |
CN110163059B (zh) * | 2018-10-30 | 2022-08-23 | 腾讯科技(深圳)有限公司 | 多人姿态识别方法、装置及电子设备 |
CN110087041B (zh) * | 2019-04-30 | 2021-01-08 | 中国科学院计算技术研究所 | 基于5g基站的视频数据处理及传输方法和系统 |
CN112818789B (zh) * | 2021-01-25 | 2024-10-22 | 海南海兰寰宇海洋信息科技有限公司 | 一种船只进出港的检测方法及装置 |
CN114066303B (zh) * | 2021-11-25 | 2022-07-19 | 交通运输部规划研究院 | 一种基于ais的港口规划适应性分析方法及系统 |
CN114898222B (zh) * | 2022-04-21 | 2024-01-02 | 中国人民解放军91977部队 | 一种舰船目标航迹识别方法及装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN201322990Y (zh) * | 2008-12-09 | 2009-10-07 | 天津港环球滚装码头有限公司 | 基于rfid技术的港口车辆在线监测系统 |
US10489703B2 (en) * | 2015-05-20 | 2019-11-26 | Nec Corporation | Memory efficiency for convolutional neural networks operating on graphics processing units |
CN106022384B (zh) * | 2016-05-27 | 2019-07-12 | 中国人民解放军信息工程大学 | 基于fMRI视觉功能数据DeconvNet的图像关注目标语义分割方法 |
CN107123114A (zh) * | 2017-04-21 | 2017-09-01 | 佛山市南海区广工大数控装备协同创新研究院 | 一种基于机器学习的布匹缺陷检测方法及装置 |
-
2017
- 2017-10-27 CN CN201711037723.9A patent/CN107731011B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN107731011A (zh) | 2018-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107731011B (zh) | 一种港口泊船监测方法、系统及电子设备 | |
CN110796037B (zh) | 基于轻量级感受野金字塔的星载光学遥感图像舰船目标检测方法 | |
CN108665496B (zh) | 一种基于深度学习的端到端的语义即时定位与建图方法 | |
WO2022111219A1 (zh) | 一种域自适应设备运检系统和方法 | |
CN110084234B (zh) | 一种基于实例分割的声呐图像目标识别方法 | |
CN110060508B (zh) | 一种用于内河桥区的船舶自动检测方法 | |
CN110796009A (zh) | 基于多尺度卷积神经网络模型的海上船只检测方法及系统 | |
CN111753677B (zh) | 基于特征金字塔结构的多角度遥感船舶图像目标检测方法 | |
CN112800838A (zh) | 一种基于深度学习的航道船舶检测与识别方法 | |
CN109145747A (zh) | 一种水面全景图像语义分割方法 | |
CN116310689B (zh) | 一种无人智能多模态信息融合与目标感知系统及作业方法 | |
CN113486819A (zh) | 一种基于YOLOv4算法的船舶目标检测方法 | |
CN110163207A (zh) | 一种基于Mask-RCNN船舶目标定位方法及存储设备 | |
Sun et al. | IRDCLNet: Instance segmentation of ship images based on interference reduction and dynamic contour learning in foggy scenes | |
Shaodan et al. | A ship target location and mask generation algorithms base on Mask RCNN | |
CN115035295A (zh) | 一种基于共享卷积核和边界损失函数的遥感图像语义分割方法 | |
CN113591617B (zh) | 基于深度学习的水面小目标检测与分类方法 | |
CN115393690A (zh) | 一种轻量化神经网络的空对地观测多目标识别方法 | |
CN114067142A (zh) | 一种实现场景结构预测、目标检测和车道级定位的方法 | |
CN115909245A (zh) | 一种基于深度学习的视觉多任务处理方法 | |
CN115861756A (zh) | 基于级联组合网络的大地背景小目标识别方法 | |
CN117456346A (zh) | 一种水下合成孔径声呐图像目标检测方法及系统 | |
Chang et al. | Yolov3 based ship detection in visible and infrared images | |
Shao et al. | An efficient model for small object detection in the maritime environment | |
CN110069987B (zh) | 基于改进vgg网络的单阶段船舶检测算法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |