首页> 中国专利> 基于深度学习的航道船牌检测、定位及识别方法

基于深度学习的航道船牌检测、定位及识别方法

摘要

本发明涉及基于深度学习的航道船牌检测、定位及识别方法。本发明基于深度学习语义分割技术,利用迁移学习从而能够在小数据集上取得可靠识别精度的船牌检测、定位及识别方法。利用语义分割方法,基于AdvancedEAST算法对船牌图像进行像素级分类,从而得到准确可靠的船牌文本行边界框,并结合CRNN文字识别算法输出准确的船牌文字信息。本发明针对船牌识别难度大、研究内容少但具体应用需求高的问题,实现了准确的船牌检测、定位,克服了图像背景复杂、船牌放置位置不固定等问题。实现了不定长文字序列识别,解决了船牌文字数量多、具体数目不固定、汉字数字混合的问题。

著录项

  • 公开/公告号CN112633277A

    专利类型发明专利

  • 公开/公告日2021-04-09

    原文格式PDF

  • 申请/专利权人 杭州电子科技大学;

    申请/专利号CN202011609509.8

  • 发明设计人 曹九稳;刘德康;王建中;杨洁;

    申请日2020-12-30

  • 分类号G06K9/32(20060101);G06K9/34(20060101);G06K9/62(20060101);G06N3/04(20060101);G06N3/08(20060101);

  • 代理机构33240 杭州君度专利代理事务所(特殊普通合伙);

  • 代理人朱亚冠

  • 地址 310018 浙江省杭州市下沙高教园区2号大街

  • 入库时间 2023-06-19 10:32:14

说明书

技术领域

本发明属于深度学习、计算机视觉、自然场景文字识别、计算机应用技术领域,涉及一种基于深度学习的航道船牌检测、定位及识别方法。

背景技术

内河运输作为一种污染小、运量大、耗能低的运输方式,在重点大宗货物运送中有着不可替代的作用。内河运输历史悠久,对人类社会经济发展、文化传播产生了深远影响。时代发展、科技进步,内河运输业日久弥新,数量急剧增长的运河行船数量大幅加剧了管理部门的监管负担,同时存在着人工关闭船舶自动识别系统(Automatic IdentificationSystem,AIS)或蓄意录入错误信息等手段“隐藏”船只通行记录,从而逃避监管的乱象。而码头、港口或运河两岸架设的大量高清摄像头,目前仅作为监管部门后期执法直接证据使用,采集到的大量船舶数据未有更深层次运用,造成了某种程度上的资源浪费。

随着深度学习、计算机视觉技术的发展,陆路交通通过综合道路监控系统与车牌识别技术,建立起成熟的智能交通管理系统。车牌识别有效提高了车辆收费管理、道路稽查、违章处罚等应用场景下的工作效率。然而内河航运系统中尚未出现智能化的船牌识别技术,船牌作为船舶身份识别的最佳方式,对于打造全信息化、智能化内河航运系统具有重要意义,是构建智慧型“水上高速公路”的基础。

目前船牌识别领域研究几乎一片空白的原因在于船牌识别难度远大于车牌识别,主要体现在如下几方面:

1.船牌图像背景往往为更复杂的自然场景,船牌检测、定位难度大,且背景中多存在易导致误识的伪船牌区域。

2.船牌放置位置不固定,导致采集图像中船牌多呈现出倾斜、旋转等非水平方向。且因拍摄距离不同,船牌呈现出尺度多变的特点。

3.船牌图像易因拍摄角度或拍摄环境影响而产生遮挡、光照不均、过曝、过暗、模糊等现象。

4.船牌文字数量多,不同文本行文字大小、字间距变化明显,无显著性构成规律。

5.缺乏公开通用的大型船牌数据集,可应用的数据集规模较小。

因此为解决上述问题,克服船牌识别问题难点,为内河航运智能化综合管理系统建设提供技术基础,本发明提供一种基于深度学习的船牌检测、定位及识别方法,通过拍摄采集自然场景中货船船牌图像作为算法输入,直接输出船牌识别结果。

发明内容

本发明的目的就是提供一种基于深度学习的航道船牌检测、定位及识别方法,基于深度学习语义分割技术,利用迁移学习从而能够在小数据集上取得可靠识别精度的船牌检测、定位及识别方法。利用语义分割方法,基于 AdvancedEAST算法对船牌图像进行像素级分类,从而得到准确可靠的船牌文本行边界框,并结合CRNN文字识别算法输出准确的船牌文字信息。

为实现上述目的,本发明的技术方案主要包括如下步骤:

步骤1、船牌检测、定位数据集创建:通过摄像机采集涵盖船牌图像的图片,使用labelme标注软件进行数据标注,从而构建目标数据集。

步骤2、船牌检测、定位模型训练:基于AdvancedEAST算法,利用船牌数据集进行模型训练。

步骤3、船牌文字识别训练集创建:根据标注坐标,裁剪船牌文本行,以文字内容作为标注信息,通过本发明中的数据扩充方法,对裁剪出的船牌文本行数据进行扩充,从而创建识别训练集。

步骤4、识别模型训练:基于CRNN算法,利用船牌文字识别训练集进行模型训练。

步骤5、模型测试及应用:用训练好的模型对船牌图片进行船牌检测、定位及识别结果测试,输出带有文本行边界框的图片及船牌文本行文字内容。

所述步骤1,具体步骤如下:

步骤1-1、在运河岸边、码头、港口等处架设摄像机,对船只号牌进行拍摄,得到不同尺度大小、不同背景、不同光照、不同倾斜角度、不同位置的图片。该步为保证数据分布均衡,比较有代表性,对于模型泛化性能的提高具有重要作用。

步骤1-2、使用labelme标注软件以四边形方式对图像中船牌文本行进行边界框标注,同时标注对应的文字信息,保存为.json文件。标注时以文本行左上角顶点为起点,逆时针旋转。模型训练时,需将.json文件中的边界框坐标信息及文本标注信息提取出,以.txt格式进行保存,保存格式为“(x

所述步骤2,具体步骤如下:

步骤2-1、AdvancedEAST算法是性能卓越的文字检测算法,基本思想是将文字检测转化为语义分割问题。网络结构分为“特征提取”、“特征融合”、“输出层”三个部分。

步骤2-2、“特征提取”是使用在ImageNet图像数据集上训练过的VGG16 深度模型作为基础网络,去掉全连接层,将其改造成为全卷积网络,使用卷积、池化操作进行下采样。

步骤2-3、“特征融合”通过上采样操作放大feature maps尺寸,然后抽取

步骤2-4、“输出层”采用四边形框作为文本行的边界框,通过定义边界像素,分别预测一侧的四边形框的两个顶点,从而得到四个顶点坐标,称为geometry map;同时输出图像文字区域及背景区域的二分类信息,称为score map。

步骤2-5、geometry map与score map的训练学习过程使用的损失函数可表示为:L=L

步骤2-6、通过如下公式计算score map损失

其中

步骤2-7、通过如下公式计算geometry map损失

其中

其中D(p

步骤2-8、利用迁移学习思想,使用合成文字检测数据集训练检测模型,得到稳定效果后;使用创建的小规模船牌检测数据集进行模型微调。

步骤2-9、使用船牌上数据集具体训练时,将船牌检测数据集中的图片,随机分为8:2的两部分,其中80%为训练样本,剩余的20%为测试样本。加载训练好的VGG16模型,加载文字检测合成数据集上训练好的AdvancedEAST算法模型。使用Adam作为优化器,初始学习率设置为10

所述步骤3,具体步骤如下:

步骤3-1、根据标注四边形坐标,计算四边形最小外接矩形及水平方向旋转角度。利用最小外接矩形对文本行区域进行裁剪,利用旋转角度对文本行区域进行粗矫正,得到小规模船牌文本行图片。

步骤3-2、通过对小规模图片数据集在保持图片长宽比的前提下进行随机旋转、随机对比度调整、随机尺度调整、随机分辨率调整、随机模糊处理,处理后图片放置于宽高为100×32的灰色模板上。通过该方式对步骤3-1中得到的小规模船牌文本图片进行扩充,得到可适用于CRNN深度模型训练的数据规模。

步骤3-3、船牌文字识别模型标注,借助步骤1-2中坐标与文本行的对应关系,将裁剪、扩充后的船牌文本行图片以“文件名标注”的格式保存为.txt格式,作为标注信息。从而创建完成船牌文字识别模型训练数据集。

所述步骤4,具体步骤如下:

步骤4-1、CRNN算法是性能优良的文字识别算法,主要分为“卷积层”、“循环层”、“转录层”三部分,分别进行“图像特征提取”、“文字序列识别”、“CTC损失”。其中“CTC”全称为“Connectionist Temporal Classification,联结时序分类”。

步骤4-2、训练前需对输入图片进行预处理,将图像进行二值化,以此降低图像处理计算量,提高训练速度。用于图像特征提取的卷积层使用VGG16深度模型作为基础网络,同时改造其第三、第四最大池化层,使用1×2的pooling strides,以此适应文本行“狭长”的特点。

步骤4-3、循环层使用双向长短时记忆网络(Long short-term memory,LSTM),隐藏层节点设置为256。将卷积层输出feature maps转化为序列特征作为循环层输入。循环层根据输入特征序列

步骤4-4、转录层对循环层输出的每个时间步的预测结果进行处理,消除冗余得到最终的输出文字序列。

步骤4-5、网络训练,假设数据集为

其中,

所述步骤5,具体步骤如下:

步骤5-1、分别将检测、定位模型以及识别模型训练完成后,利用级联方法关联。以检测、定位模型输出作为识别模型输入,识别模型输出船牌文字识别结果。

步骤5-2、为更方便查看本发明船牌检测、定位及识别结果,可将其在设计的简易GUI界面上进行结果显示,包括标记有文本区域边界框的输出图像,以及文字识别结果和算法识别耗时。

本发明针对船牌识别难度大、研究内容少但具体应用需求高的问题,提出了基于深度学习的船牌检测、定位及识别方法。基于语义分割思路,利用 AdvancedEAST算法,实现了准确的船牌检测、定位,克服了图像背景复杂、船牌放置位置不固定等问题。利用CRNN算法,实现了不定长文字序列识别,解决了船牌文字数量多、具体数目不固定、汉字数字混合的问题。利用迁移学习、数据扩充等方法,仅使用小规模船牌数据集微调大型深度模型便能取得良好检测、定位及识别性能。实验表明,语义分割、迁移学习、数据扩充三者相辅相成,使本方法拥有了较高的识别准确率。

附图说明

图1本发明的适用场景示例图;

图2本发明的流程图;

图3本发明的实际应用效果图。

具体实施方式

下面结合附图和具体实施方式对本发明作详细说明。

如图1所示,本发明的适用场景为运河行船船牌检测、定位与识别,所用图像示例如图所示。主要为蓝色标准船牌,适用于背景环境复杂、拍摄角度不同、船牌存在倾斜、低对比度、光照不均等情况。

如图2所示,本发明的算法流程主要包括如下步骤:

步骤1、船牌检测、定位数据集创建:通过摄像机采集涵盖船牌图像的图片,使用labelme标注软件进行数据标注,从而构建目标数据集。

具体如下:

步骤1-1、在运河岸边、码头、港口等处架设摄像机,对船只号牌进行拍摄,得到不同尺度大小、不同背景、不同光照、不同倾斜角度、不同位置的图片。该步为保证数据分布均衡,比较有代表性,对于模型泛化性能的提高具有重要作用。

步骤1-2、使用labelme标注软件以四边形方式对图像中船牌文本行进行边界框标注,同时标注对应的文字信息,保存为.json文件。标注时以文本行左上角顶点为起点,逆时针旋转。模型训练时,需将.json文件中的边界框坐标信息及文本标注信息提取出,以.txt格式进行保存,保存格式为“(x

步骤2、船牌检测、定位模型训练:基于AdvancedEAST算法,利用船牌数据集进行模型训练。

具体如下:

步骤2-1、AdvancedEAST算法是性能卓越的文字检测算法,基本思想是将文字检测转化为语义分割问题。网络结构分为“特征提取”、“特征融合”、“输出层”三个部分。

步骤2-2、“特征提取”是使用在ImageNet图像数据集上训练过的VGG16 深度模型作为基础网络,去掉全连接层,将其改造成为全卷积网络,使用卷积、池化操作进行下采样。

步骤2-3、“特征融合”通过上采样操作放大feature maps尺寸,然后抽取

步骤2-4、“输出层”采用四边形框作为文本行的边界框,通过定义边界像素,分别预测一侧的四边形框的两个顶点,从而得到四个顶点坐标,称为geometry map;同时输出图像文字区域及背景区域的二分类信息,称为score map。

步骤2-5、geometry map与score map的训练学习过程使用的损失函数可表示为:L=L

步骤2-6、通过如下公式计算score map损失

其中

步骤2-7、通过如下公式计算geometry map损失

其中

预测四边形框坐标

其中D(p

步骤2-8、AdvancedEAST算法中使用的预训练过的VGG16模型保证了图像特征提取的准确、有效性。在此基础上,进一步利用迁移学习思想,首先使用合成文字检测数据集训练检测模型,如阿里云天池竞赛“场景文字检测”数据集,得到稳定效果后。使用创建的小规模船牌检测数据集进行模型微调,从而克服船牌图像数据量不足的困难。

步骤2-9、使用船牌上数据集具体训练时,将船牌检测数据集中的图片,随机分为8:2的两部分,其中80%为训练样本,剩余的20%为测试样本。加载训练好的VGG16模型,加载文字检测合成数据集上训练好的AdvancedEAST算法模型。使用Adam作为优化器,初始学习率设置为10

步骤3、船牌文字识别训练集创建:根据标注坐标,裁剪船牌文本行,以文字内容作为标注信息,通过本发明中的数据扩充方法,对裁剪出的船牌文本行数据进行扩充,从而创建识别训练集。

具体步骤如下:

步骤3-1、根据标注四边形坐标,计算四边形最小外接矩形及水平方向旋转角度。利用最小外接矩形对文本行区域进行裁剪,利用旋转角度对文本行区域进行粗矫正。得到小规模船牌文本行图片。

步骤3-2、通过对小规模图片数据集在保持图片长宽比的前提下进行随机旋转、随机对比度调整、随机尺度调整、随机分辨率调整、随机模糊处理,处理后图片放置于宽高为100×32的灰色模板上。通过该方式对步骤3-1中得到的小规模船牌文本图片进行扩充,得到可适用于CRNN深度模型训练的数据规模。本发明实验测试过程中,将2148张裁剪船牌文本行图片扩充至42891张图片,基于CRNN算法训练得到的船牌文字识别模型取得了可靠的准确率。

步骤3-3、船牌文字识别模型标注,借助步骤1-2中坐标与文本行的对应关系,将裁剪、扩充后的船牌文本行图片以“文件名标注”的格式保存为.txt格式,作为标注信息。以“浙XX货”为例,图片文件名为“zhe_X_X_huo02XX8_ 浙XX货.jpg”,标注为文字内容“浙XX货”中文字在词典中的索引,即标注内容为:zhe_jia_xing_huo02XX8_浙XX货.jpg 16601626 726 1066.从而创建完成船牌文字识别模型训练数据集。

步骤4、识别模型训练:基于CRNN算法,利用船牌文字识别训练集进行模型训练。

具体步骤如下:

步骤4-1、CRNN算法是性能优良的文字识别算法,主要分为“卷积层”、“循环层”、“转录层”三部分,分别进行“图像特征提取”、“文字序列识别”、“CTC损失”。其中“CTC”全称为“Connectionist Temporal Classification,联结时序分类”。

步骤4-2、训练前需对输入图片进行预处理,将图像进行二值化,以此降低图像处理计算量,提高训练速度。用于图像特征提取的卷积层使用VGG16深度模型作为基础网络,同时改造其第三、第四最大池化层,使用1×2的pooling strides,以此适应文本行“狭长”的特点。

步骤4-3、循环层使用双向LSTM(Long short-term memory,LSTM,长短时记忆网络),隐藏层节点设置为256。将卷积层输出feature maps转化为序列特征作为循环层输入。循环层根据输入特征序列

步骤4-4、转录层对循环层输出的每个时间步的预测结果进行处理,消除冗余得到最终的输出文字序列。

步骤4-5、网络训练,假设数据集为

其中,

具体步骤如下:

步骤5-1、分别将检测、定位模型以及识别模型训练完成后,利用级联方法关联。以检测、定位模型输出作为识别模型输入,识别模型输出船牌文字识别结果。

步骤5-2、为更方便查看本发明船牌检测、定位及识别结果,可将其在设计的简易GUI界面上进行结果显示,包括标记有文本区域边界框的输出图像,以及文字识别结果和算法识别耗时。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号