基于深度学习的船牌识别方法及系统技术方案

技术编号:26971477 阅读:26 留言:0更新日期:2021-01-06 00:02
本发明专利技术提供了一种基于深度学习的船牌识别方法及系统,包括以下步骤:数据采集步骤:通过光电采集设备采集到包含船只的图片;标记训练集步骤:对图片中船牌的文字内容进行标记,形成数据训练集;图片处理步骤:将标记过的图片通过灰度、增强等处理后,凸显其文本内容的边界特征;文字区域检测步骤:采用CTPN(一种文字检测网络)网络模型检测出船牌文字区域,输出结果作为下一步文字识别网络的输入使用;训练文字识别模型步骤:基于深度学习网络,使用划分好的数据集进行训练,获得预测模型;文字矫正处理步骤:分别对文字区域和字体进行倾斜矫正;预测船牌步骤:将矫正处理后的文字区域图片输入预测模型进行识别,输出船牌文字内容。

【技术实现步骤摘要】
基于深度学习的船牌识别方法及系统
本专利技术涉及深度学习、自然环境文字识别领域,具体地,涉及一种基于深度学习的船牌识别方法及系统。
技术介绍
我国水运资源丰富,水路运输具有运能大、占地少、能耗低、污染小等特点,一直是客货运输的一种极为重要的方式,在我国综合交通运输体系中具有举足轻重的地位和作用。近年来,我国的船运行业更是愈加发达,各类型船舶穿梭于大江大河以及各大海港之间。船只通常采取关闭AIS等已有检测设备的方式,避开监管系统。虽然现在的港口和岸边拥有很多监控和雷达设备,但是全凭人工识别去发现和跟踪非法船只难度较大。随着大数据和人工智能的发展,以人工智能代替人工识别来提高监管效率必将是未来的发展方向。但是在这个过程中,如何高效准确的识别出这些船只的船牌,就成了这项技术的一个关键技术难点。公开号为CN110245613A的专利文献“基于深度学习特征对比的船牌识别方法”公开了一种采用深度学习卷积神经网络技术构建船只船牌检测模型及船牌字符识别模型,解决的是将待识别船牌字符的数字识别和汉字识别分开处理,保证训练效率和收敛速度的问题,与本专利技术要解决的问题并不一致。
技术实现思路
针对现有技术中的缺陷,本专利技术的目的是提供一种基于深度学习的船牌识别方法及系统。根据本专利技术的一个方面,提供的一种基于深度学习的船牌识别方法,包括如下步骤:数据采集步骤:通过光电采集设备采集包含船只的船舶图片;标记训练集步骤:对船舶图片中船牌的文字内容进行标记,形成数据训练集;图片处理步骤:将标记过的船舶图片通过灰度、增强等处理操作后,凸显文本内容的边界特征;文字区域检测步骤:对经过图片处理步骤处理过的船舶图片,采用CTPN文字检测网络模型检测出船舶图片中的船牌文字区域,检测结果作为训练文字识别模型步骤的输入使用;训练文字识别模型步骤:基于深度学习网络,使用检测结果进行训练,获得文字识别预测模型;文字矫正处理步骤:对待识别船舶图片中的船牌文字区域进行整体倾斜矫正以及文字本身的字体倾斜矫正;预测船牌步骤:将文字矫正处理后的检测结果输入文字识别预测模型进行识别,输出船牌文字内容。优选地,所述数据采集步骤中,所述船舶图片包括两部分,一部分是直接使用带有抓拍功能的成像设备抓拍所得的照片,另一部分是光电视频采集设备获取的视频,从中截取出包含船只的帧图片。优选地,所述从中截取出包含船只的帧图片,包括采用三帧差分算法,记获取视频序列中某第n-1帧、第n帧和第n+1帧图片对应为fn-1、fn和fn+1,三帧对应像素点的灰度值记为fn-1(x,y)、fn(x,y)和fn+1(x,y),其中x为获取的帧图片中像素点的横坐标值,y为获取的帧图片中像素点的纵坐标值,将第n-1帧和第n帧相减取绝对值获得Dn,第n帧和第n+1帧相减取绝对值获得Dn+1,Dn与Dn+1取交集D,结果D大于设定阀值的就是目标,最终通过连续性分析得到符合要求的图片,所述设定阀值需要依据不同环境因素取值。优选地,所述标记训练集步骤中,使用ImageLab标记软件,对上一步收集到的船舶图片进行人工标注,标注出船牌的文字内容,标注结果输出至XML文件中保存,一张船舶图片对应与一个XML文件建立联系。优选地,所述图片处理步骤中,包括:图片灰度处理子步骤:对图片进行一次预处理,将图片灰度化,仅由一个分量表示出来,采用平均值灰度法,公式为Gray(x,y)=(R(x,y)+G(x,y)+B(x,y))/3,将彩色图片中的三分量亮度求平均得到一个灰度值,最终得到灰度后的图片,所述x表示像素点的横坐标,所述y表示像素点的纵坐标,所述R是红色分量,所述G是绿色分量,所述B是蓝色分量;图片增强处理子步骤:将图片灰度处理子步骤处理得到的灰度图片进行增强处理,采用灰度直方图均衡化算法实现细节增强,包括:首先,统计原始图像各灰度级的像素数目ni,0≤i<L,L是图像中所有的灰度数,通常为256;然后,图像中灰度为i的像素的出现概率是:n是图像中所有的像素数,pz(i)实际上是像素值为i的图像的直方图,归一化到[0,1],其中z表示概率函数的自变量;接着,pz的累积分布函数是图像的累计归一化直方图;最后,直方图均衡化计算公式中,cdfmin为累积分布函数最小值,M和N分别代表了图像的长宽像素个数,L是灰度级数,如图像为8位深度,则灰度级别共有2^8=256级数,这也是最常见的灰度级数,v为原始图像中为v的像素值。优选地,所述文字区域检测步骤中,所述采用CTPN文字检测网络模型检测出船舶图片中的船牌文字区域,包括文字区域检测采用成熟的CTPN文字检测算法实现,将标记过船牌文字内容的训练集图片输入准备好的CTPN文字检测模型中,得到船牌文字内容的坐标位置信息,并输入所述船舶图片对应的XML文件中作为训练集数据保存。优选地,所述训练文字识别模型步骤包括:预处理子步骤:所述训练集数据在输入船牌识别网络进行训练之前,需要进行一次预处理,依据所述船舶图片对应XML文件中存储的文字区域信息进行图片截取,设截取的图片宽为W,高为H,再对截取出的图片进行统一高度的缩放处理,使高度缩放到32,宽度等比缩放至W*H/32尺寸,形成高度统一宽度不定的训练集数据,把训练集数据输入船牌训练网络进行训练;文字识别网络结构搭建子步骤:船牌识别网络结构包括7个Conv层、4个Max-Pooling层、2个Bn层、2个双向LSTM网络和CTCloss转录层;其中CNN卷积层,使用深度CNN,对输入图像提取特征,得到特征图;其中RNN循环层,使用双向RNN,包含BLSTM,对特征序列进行预测,对序列中的每个特征向量进行学习,并输出预测标签包含真实值分布;所述的CTCloss转录层,使用CTC损失,把RNN循环层获取的一系列标签分布转换成最终的标签序列;接入relu函数子步骤:所述的Conv层,在每一层卷积层后面都接入了relu函数,解决梯度消失问题,使网络具有稀疏性;引入BatchNormalization模块子步骤:在第Conv5和Conv6卷积层后面引入了BatchNormalization模块,用于加速模型的收敛,缩短训练过程;池化层尺寸选取子步骤:所述的Max-Pooling层,窗口尺寸选取2*2,适合整体方正的汉字对象识别;CNN处理子步骤:输入预处理子步骤得到的训练集数据,图片通过CNN后,高度由32变为1,所以CNN的输入数据尺寸为(channel,height,width)=(1,32,width),CNN的输出尺寸为(512,1,width/4),CNN最后得到的是512个特征图;RNN处理子步骤:将CNN得到的特征图输入到RNN进行训练,在此之前,需要先从CNN产生的特征图中提取特征向量序列,每一个特征向量在特征图上按列从左到右生成,每一列包含512维特征,第i个特征向量是所有的特征图第i列像素的连接,这些特征向量就构成了一个特征向量序列,这些特征向量序本文档来自技高网...

【技术保护点】
1.一种基于深度学习的船牌识别方法,其特征在于,包括:/n数据采集步骤:通过光电采集设备采集包含船只的船舶图片;/n标记训练集步骤:对船舶图片中船牌的文字内容进行标记,形成数据训练集;/n图片处理步骤:将标记过的船舶图片通过灰度、增强处理操作,凸显出文本内容的边界特征;/n文字区域检测步骤:对经过图片处理步骤处理过的船舶图片,采用CTPN文字检测网络模型检测出船舶图片中的船牌文字区域,检测结果作为训练文字识别模型步骤的输入使用;/n训练文字识别模型步骤:基于深度学习网络,使用检测结果进行训练,获得文字识别预测模型;/n文字矫正处理步骤:对待识别船舶图片中的船牌文字区域进行整体倾斜矫正以及文字本身的字体倾斜矫正;/n预测船牌步骤:将文字矫正处理后的检测结果输入文字识别预测模型进行识别,输出船牌文字内容。/n

【技术特征摘要】
1.一种基于深度学习的船牌识别方法,其特征在于,包括:
数据采集步骤:通过光电采集设备采集包含船只的船舶图片;
标记训练集步骤:对船舶图片中船牌的文字内容进行标记,形成数据训练集;
图片处理步骤:将标记过的船舶图片通过灰度、增强处理操作,凸显出文本内容的边界特征;
文字区域检测步骤:对经过图片处理步骤处理过的船舶图片,采用CTPN文字检测网络模型检测出船舶图片中的船牌文字区域,检测结果作为训练文字识别模型步骤的输入使用;
训练文字识别模型步骤:基于深度学习网络,使用检测结果进行训练,获得文字识别预测模型;
文字矫正处理步骤:对待识别船舶图片中的船牌文字区域进行整体倾斜矫正以及文字本身的字体倾斜矫正;
预测船牌步骤:将文字矫正处理后的检测结果输入文字识别预测模型进行识别,输出船牌文字内容。


2.根据权利要求1所述的一种基于深度学习的船牌识别方法,其特征在于,所述数据采集步骤中,所述船舶图片包括两部分,一部分是直接使用带有抓拍功能的成像设备抓拍所得的照片,另一部分是光电视频采集设备获取的视频,从中截取出包含船只的帧图片。


3.根据权利要求2所述的一种基于深度学习的船牌识别方法,其特征在于,所述从中截取出包含船只的帧图片,包括采用三帧差分算法,记获取视频序列中某第n-1帧、第n帧和第n+1帧图片对应为fn-1、fn和fn+1,三帧对应像素点的灰度值分别记为fn-1(x,y)、fn(x,y)和fn+1(x,y),其中x为获取的帧图片中像素点的横坐标值,y为获取的帧图片中像素点的纵坐标值,将第n-1帧和第n帧相减取绝对值获得Dn,第n帧和第n+1帧相减取绝对值获得Dn+1,Dn与Dn+1取交集D,结果D大于设定阀值的就是目标帧图片,最终通过连续性分析得到符合要求的图片,所述设定阀值需要依据不同环境因素取值。


4.根据权利要求3所述的一种基于深度学习的船牌识别方法,其特征在于,所述标记训练集步骤中,使用ImageLab标记软件,对上一步收集到的船舶图片进行人工标注,标注出船牌的文字内容,标注结果输出至XML文件中保存,一张船舶图片对应与一个XML文件建立联系。


5.根据权利要求4所述的一种基于深度学习的船牌识别方法,其特征在于,所述图片处理步骤中,包括:
图片灰度处理子步骤:对图片进行一次预处理,将图片灰度化,仅由一个分量表示出来,采用平均值灰度法,公式为Gray(x,y)=(R(x,y)+G(x,y)+B(x,y))/3,将彩色图片中的三分量亮度求平均得到一个灰度值,最终得到灰度后的图片,所述x表示像素点的横坐标,所述y表示像素点的纵坐标,所述R是红色分量,所述G是绿色分量,所述B是蓝色分量;
图片增强处理子步骤:将图片灰度处理子步骤处理得到的灰度图片进行增强处理,采用灰度直方图均衡化算法实现细节增强,包括:
统计原始图像各灰度级的像素数目ni,0≤i<L,L是图像中所有的灰度数;
图像中灰度为i的像素的出现概率是:n是图像中所有的像素数,pz(i)实际上是像素值为i的图像的直方图,归一化到[0,1],其中z表示概率函数的自变量;
pz的累积分布函数是图像的累计归一化直方图;
直方图均衡化计算公式中,cdfmin为累积分布函数最小值,M和N分别代表了图像的长宽像素个数,L是灰度级数,如图像为8位深度,则灰度级别共有2^8=256级数,这也是最常见的灰度级数,v为原始图像中为v的像素值。


6.根据权利要求5所述的一种基于深度学习的船牌识别方法,其特征在于,所述文字区域检测步骤中,所述采用CTPN文字检测网络模型检测出船舶图片中的船牌文字区域,包括文字区域检测采用成熟的CTPN文字检测算法实现,将标记过船牌文字内容的训练集图片输入准备好的CTPN文字检测模型中,得到船牌文字内容的坐标位置信息,并输入所述船舶图片对应的XML文件中作为训练集数据保存。


7.根据权利要求6所述的一种基于深度学习的船牌识别方法,其特征在于,所述训练文字识别模型步骤包括:
预处理子步骤:所述训练集数据在输入船牌识别网络进行训练之前,需要进行一次预处理,依据所述船舶图片对应XML文件中存储的文字区域信息进行图片截取,设截取的图片宽为W,高为H,再对截取出的图片进行统一高度的缩放处理,使高度缩放到32,宽度等比缩放至W*H/32尺寸,形成高度统一宽度不定的训练集数据,把训练集数据输入船牌训练网络进行训练;
文字识别网络结构搭建子步骤:船牌识别网络结构包括7个Conv层、4个Max-Pooling层、2个Bn层、2个双向LSTM网络和CTCloss转录层;其中CNN卷积层,使用深度CNN,对输入图像提取特征,得到特征图;其中RNN循环层,使用双向RNN,包含BLSTM,对特征序列进行预测,对序列中的每个特征向量进行学习,并输出预测标签包含真实值分布;所述的CTCloss转录层,使用CTC损失,把RNN循环层获取的一系列标签分布转换成最终的标签序列;
接入relu函数子步骤:所述的Conv层,在每一层卷积层后面都接入了relu函数,解决梯度消失问题,使网络具有稀疏性;
引入BatchNormalization模块子步骤:在第Conv5和Conv6卷积层后面引入了BatchNormalization模块,用于加速模型的收敛,缩短训练过程;
池化层尺寸选取子步骤:所述的Max-Pooling层,窗口尺寸选取2*2,适合整体方正的汉字对象识别;
CNN处理子步骤:输入预处理子步骤得到的训练集数据,图片通过CNN后,高度由32变为1,所以CNN的输入数据尺寸为(channel,height,width...

【专利技术属性】
技术研发人员:林德银邬营波孙林王林钱亮
申请(专利权)人:上海鹰觉科技有限公司安徽鹰觉科技有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1