基于船号深度学习的船舶身份识别方法与流程

文档序号:32167448发布日期:2022-11-12 05:22阅读:295来源:国知局
基于船号深度学习的船舶身份识别方法与流程

1.本发明涉及一种基于船号深度学习的船舶身份识别方法,属于渔港智能识别领域。


背景技术:

2.随着人工智能技术的飞速发展,ocr(optical character recognition)技术在日常生活中有广泛的应用,如:文字提取、翻译等。船号识别是计算机视频图像识别技术在渔船牌照识别中的一种应用。船号识别技术要求能够将运动中的渔船牌照从复杂背景中提取并识别出来,在闸口进出渔船管理和渔港管理中有广泛应用。
3.但现有识别模型缺少在渔港这种特定场景中的优化算法,并且现有的识别算法对渔船场景的船号有识别准确率低的问题。随着船龄越来越大,渔船经过风吹雨淋,船号难免受到一定程度的磨损,这样就会造成识别的难度。比如船号图像的倾斜、船号自身的磨损、光线的干扰都会影响到定位精度,因此难以保证船号最终识别结果的准确性。
4.一种基于船号深度学习的船舶身份识别方法,实现了渔港场景下的船号识别,解决了渔船运动状态中船号模糊、遮挡时识别难的问题,且识别速度快,准确率高。


技术实现要素:

5.为克服现有技术的缺陷,本发明提供一种基于船号深度学习的船舶身份识别方法,本发明的技术方案是:一种基于船号深度学习的船舶身份识别方法,包括以下步骤:s1、海岸边架设摄像头,对航行的船舶进行自动跟踪及抓拍,并将抓拍的渔船及船号的图像进行保存;s2、将步骤s1收集的渔船图像进行预处理,将分辨率低、船号肉眼看不清、有遮挡和缺失的图像剔除;s3、将步骤s2预处理的数据集进行数据标注,标注船号位置边框和船号文字;s4、使用深度学习crnn模型进行船号识别。
6.所述步骤s3使用ppocrlabel进行数据半自动化数据标注,具体步骤包括:s31、进行字符识别之前,对检测出的文字区域进行透视变换,以便对字符进行矫正,形成数据训练集;s32、对数据训练集进行渔船船号区域裁切,得到相应的船号识别数据集,并将所有出现的字符存为一个字符文件,供模型作为自定义字典使用。
7.所述步骤s4 具体步骤包括:s41、将输入的二维图像,先经过两个卷积层到池化层,然后经过全连接层,最后使用softmax激活函数进行分类,以作为输出层;通过卷积运算提取不同的图像特征;池化层主要用于聚合特征相近的特征,降低特征图的尺寸来减少训练参数和加快训练速度;
s42、采用双向lstm作为循环神经网络,将梯度直接返回浅层神经元,缓解rnn网络中梯度消失的能力;循环神经网络挖掘出数据背后时序和语义的信息,并且处理和预测序列数据;利用blstm将特征向量进行融合以提取字符序列的上下文特征,然后得到每列特征的概率分布;s43、使用ctc损失函数把获取的预测结果转录成最终的标签序列;为了避免网络模型训练出现过拟合现象,把惩罚因子加进损失函数里面,减少输出的值与预期的真实值之间的差距。
8.所述步骤s41具体步骤包括:s411、卷积部分限制输入图像为的大小为width x 32,即该指定图像高度为32,宽度为任意值;s412、构建卷积神经网络cnn;s413、将统一高度后的图像输入卷积神经网络cnn中,经过cnn计算后输出特征序列,从而获得双向循环神经网络rnn待输入的特征序列;由于卷积池化具有平移不变性,因此,每一个输出与输入的对应的两列直接相关,并在原图像上有对应的感受野。
9.所述步骤s42具体步骤为:s421、在卷积层的上部建立一个深度双向递归神经网络,称为递归层,递归层对特征序列x = x1......xt中每帧的标签分布进行预测;s422、在crnn网络结构中增加可变尺度机制,使用滑动窗口和步长来动态的提取图像不同大小的卷积特征, 最后使用池化函数将卷积特征对应的二维矩阵转化为相同尺度;s423、采用双向循环神经网络rnn结合resnet网络,能够将梯度直接返回浅层神经元。
10.所述步骤s43具体为:s431、采用在ctc损失函数中加入惩罚因子避免网络模型训练出现过拟合现象,如果ctc损失函数的值就应该越小,则说明数据拟合的越好;s432、引入blank字符,解决有些位置没有字符的问题,通过递推,计算梯度;将双向循环神经网络rnn输出的每帧预测标签分布转录成标签序列,其中转录模式包括无词典转录和基于词典转录,基于词典转录模式中,通过选择具有最高概率的标签序列进行预测。
11.在所述步骤s411中,将所有测试图片的高度均归一化到32,以便加速测试图片训练的过程。
12.在所述步骤s412中,卷积神经网络cnn结构使用vgg网络结构提取图像特征;第一层与第二层均采取dw卷积,将第三层最大池化max pooling和第四层最大池化max pooling的核大小设置为设为1
×ꢀ
2;第五层卷积到第六层卷积引入batchnormalization(bn)模块,bn层可以加快网络的训练和收敛的速度;控制梯度爆炸防止梯度消失,防止过拟合。
13.本发明的优点是:该基于船号深度学习的船舶身份识别方法通过改进了数据字典的获取方法,实现了字符字典聚焦,减少不必要的字符匹配,提升速度、构造自定义字典,实现多分辨率船号字典匹配支持; 通过优化的深度学习模型crnn,即卷积神经网络cnn的前两层采取dw卷积,取代了原有卷积层前两层,减少了计算量,提高了速度; 加入残差网络结构resnet,测试取得更好的结果;在ctc损失函数中引入blank字符,解决有些位置没有字符
的问题,通过递推,快速计算梯度,降低了损失函数。
附图说明
14.图1为本发明的基于船号深度学习的船舶身份识别方法的流程图;图2为本发明的crnn网络结构图。
15.图3是本发明的cnn结构图。
具体实施方式
16.下面结合具体实施例来进一步描述本发明,本发明的优点和特点将会随着描述而更为清楚。但这些实施例仅是范例性的,并不对本发明的范围构成任何限制。本领域技术人员应该理解的是,在不偏离本发明的精神和范围下可以对本发明技术方案的细节和形式进行修改或替换,但这些修改和替换均落入本发明的保护范围内。
17.参见图1至图3,本发明涉及一种基于船号深度学习的船舶身份识别方法,包括以下步骤:s1、海岸边架设摄像头,对航行的船舶进行自动跟踪及抓拍,并将抓拍的渔船及船号的图像进行保存;s2、将步骤s1收集的渔船图像进行预处理,将分辨率低、船号肉眼看不清、有遮挡和缺失的图像剔除;s3、将步骤s2预处理的数据集进行数据标注,标注船号位置边框和船号文字;s4、使用深度学习crnn模型进行船号识别。构建优化卷积神经网络cnn,使用优化后的卷积神经网络cnn对步骤3中得的图像数据集进行图像特征提取,得到特征图。使用双向rnn(blstm)对特征序列进行预测,对序列中的每个特征向量进行学习,并输出预测标签(真实值)分布;使用ctc损失函数,把从循环层获取的一系列标签分布转换成最终的标签序列。
18.所述步骤s3使用ppocrlabel进行数据半自动化数据标注,具体步骤包括:s31、进行字符识别之前,对检测出的文字区域进行透视变换(透视变换是以一点为视角对原平面进行观察得到的新的投影。其本质是将图像投影到一个新的视平面图),以便对字符进行矫正,形成数据训练集;s32、对训练集进行渔船船号区域裁切,得到相应的船号识别数据集,并将所有出现的字符存为一个字符文件,供模型作为自定义字典使用。
19.所述步骤s4 具体步骤包括:s41、将输入的二维图像,先经过两个卷积层到池化层,然后经过全连接层,最后使用softmax激活函数进行分类,以作为输出层;通过卷积运算提取不同的图像特征;池化层主要用于聚合特征相近的特征,降低特征图的尺寸来减少训练参数和加快训练速度;s42、采用双向lstm作为循环神经网络,将梯度直接返回浅层神经元,缓解rnn网络中梯度消失的能力;循环神经网络挖掘出数据背后时序和语义的信息,并且处理和预测序列数据;利用blstm将特征向量进行融合以提取字符序列的上下文特征,然后得到每列特征的概率分布;
s43、使用ctc损失函数把获取的预测结果转录成最终的标签序列;为了避免网络模型训练出现过拟合现象,把惩罚因子加进损失函数里面,减少输出的值与预期的真实值之间的差距。
20.所述步骤s4 1具体步骤包括:s411、卷积部分限制输入图像为的大小为width x 32,即该指定图像高度为32,宽度为任意值;s412、构建卷积神经网络cnn;s413、将统一高度后的图像输入卷积神经网络cnn中,经过cnn计算后输出特征序列,从而获得双向循环神经网络rnn待输入的特征序列。由于卷积池化具有平移不变性,因此,每一个输出与输入的对应的两列直接相关,并在原图像上有对应的感受野。
21.所述步骤s42具体步骤为:s421、在卷积层的上部建立一个深度双向递归神经网络,称为递归层,递归层对特征序列x = x1......xt中每帧的标签分布进行预测;s422、在crnn网络结构中增加可变尺度机制,使用滑动窗口和步长来动态的提取图像不同大小的卷积特征, 最后使用池化函数将卷积特征对应的二维矩阵转化为相同尺度;s423、采用双向循环神经网络rnn结合resnet网络,能够将梯度直接返回浅层神经元。该结构的优点有三方面。首先,rnn具有很强的序列上下文信息捕获能力。使用上下文线索进行基于图像的序列识别比单独处理每个符号更加稳定和有用。以场景文本识别为例,宽字符可能需要几个连续帧来充分描述。此外,有些歧义字在观察其上下文时更容易区分,例如“il”通过字高对比比单独识别更容易识别。其次,rnn可以将误差微分反向传播到它的输入,即卷积层,让我们在一个统一的网络中共同训练递归层和卷积层。第三,rnn能够对任意长度的序列进行操作,从开始到结束进行遍历。
22.所述步骤s43具体为:s431、采用在ctc损失函数中加入惩罚因子避免网络模型训练出现过拟合现象,如果ctc损失函数的值就应该越小,则说明数据拟合的越好;s432、引入blank字符,解决有些位置没有字符的问题,通过递推,计算梯度;将双向循环神经网络rnn输出的每帧预测标签分布转录成标签序列,其中转录模式包括无词典转录和基于词典转录,基于词典转录模式中,通过选择具有最高概率的标签序列进行预测。
23.在所述步骤s411中,将所有测试图片的高度均归一化到32,以便加速测试图片训练的过程。
24.在所述步骤s412中,卷积神经网络cnn结构使用vgg网络结构提取图像特征;第一层与第二层均采取dw卷积,将第三层最大池化max pooling和第四层最大池化max pooling的核大小设置为设为1
×ꢀ
2;第五层卷积到第六层卷积引入batchnormalization(bn)模块,bn层可以加快网络的训练和收敛的速度;控制梯度爆炸防止梯度消失;防止过拟合。
25.本发明通过优化的深度学习模型crnn,即卷积神经网络cnn的前两层采取dw卷积,取代了原有卷积层前两层,减少了计算量,提高了速度; 加入残差网络结构resnet,测试取得更好的结果;在ctc损失函数中引入blank字符,解决有些位置没有字符的问题,通过递推,快速计算梯度,降低了损失函数。
26.以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1