CN108229483A - 基于caffe与软触发下的门牌压印字符识别装置 - Google Patents
基于caffe与软触发下的门牌压印字符识别装置 Download PDFInfo
- Publication number
- CN108229483A CN108229483A CN201810044470.6A CN201810044470A CN108229483A CN 108229483 A CN108229483 A CN 108229483A CN 201810044470 A CN201810044470 A CN 201810044470A CN 108229483 A CN108229483 A CN 108229483A
- Authority
- CN
- China
- Prior art keywords
- character
- image
- module
- picture
- point
- 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.)
- Pending
Links
- 238000005520 cutting process Methods 0.000 claims abstract description 69
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 21
- 238000001514 detection method Methods 0.000 claims abstract description 17
- 238000013515 script Methods 0.000 claims abstract description 10
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 claims abstract description 8
- 238000012549 training Methods 0.000 claims description 47
- 238000012360 testing method Methods 0.000 claims description 44
- 238000000034 method Methods 0.000 claims description 27
- 238000012545 processing Methods 0.000 claims description 27
- 230000008569 process Effects 0.000 claims description 25
- 238000004519 manufacturing process Methods 0.000 claims description 20
- 238000007781 pre-processing Methods 0.000 claims description 16
- 101100332287 Dictyostelium discoideum dst2 gene Proteins 0.000 claims description 14
- 230000006870 function Effects 0.000 claims description 13
- 230000000149 penetrating effect Effects 0.000 claims description 11
- 238000006243 chemical reaction Methods 0.000 claims description 10
- 230000009466 transformation Effects 0.000 claims description 10
- 238000003708 edge detection Methods 0.000 claims description 9
- 238000013480 data collection Methods 0.000 claims description 7
- 230000000694 effects Effects 0.000 claims description 7
- 238000001914 filtration Methods 0.000 claims description 6
- 230000013016 learning Effects 0.000 claims description 6
- 238000010606 normalization Methods 0.000 claims description 6
- 239000011159 matrix material Substances 0.000 claims description 5
- 230000000750 progressive effect Effects 0.000 claims description 5
- 230000011218 segmentation Effects 0.000 claims description 5
- 230000004069 differentiation Effects 0.000 claims description 4
- 238000005457 optimization Methods 0.000 claims description 3
- 230000005540 biological transmission Effects 0.000 claims description 2
- 238000009826 distribution Methods 0.000 claims description 2
- 230000000877 morphologic effect Effects 0.000 claims description 2
- 238000003672 processing method Methods 0.000 claims description 2
- 238000012956 testing procedure Methods 0.000 claims description 2
- 230000008859 change Effects 0.000 claims 2
- 238000003860 storage Methods 0.000 claims 1
- 238000000605 extraction Methods 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 11
- 238000003384 imaging method Methods 0.000 description 5
- 238000013135 deep learning Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000004321 preservation Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000012216 screening Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000009776 industrial production Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/14—Image acquisition
- G06V30/148—Segmentation of character regions
- G06V30/153—Segmentation of character regions using recognition of characters or words
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/20—Image enhancement or restoration using local operators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
Abstract
本发明提出了一种基于caffe与软触发下的门牌压印字符识别装置,包括硬件采集设备模块与软件处理程序模块。硬件采集设备模块完成压印字符图像的获取。包括摄像头采集模块完成图像的获取与采集;并对其种类进行区分,完善产品信息;同时借助软件触发拍照模块进行图像采集。软件处理程序模块对获取的图像,进行图像处理、字符切分与识别工作。首先,检测图像是否包含规定尺寸的圆形,对满足条件的图像进行采集,避免采集图像清晰度过低;其次,提出一种漫水填充算法确定字符的位置,消除干扰背景;最后,调用caffe与LeNet‑5手写字体识别网络,对其进行学习与识别,相较于传统特征提取算法,准确率有显著提高。
Description
技术领域
本发明涉及图像处理和字符识别等技术领域,具体涉及基于caffe与软触发下的门牌压印字符识别装置。
背景技术
工业上对于门牌压印字符的识别装置在众多生产线中都有着极大的需求,现有的面向工业中的压印门牌字符识别装置在图像采集以及字符处理与识别方面主要存在以下几个方面的不足,有待改进:
首先,常见的压印门牌字符识别装置在图像获取以及触发拍照方面,主要集中在采用硬件触发图像采集模块进行图像采集工作,由于硬件存在着安装条件限制因素过多,例如:场地、环境、光线等条件的限制,因此往往不能很好地适应各种生产场景,同时硬件触发在获取的图像质量方面,不进行任何选择,对于成像质量不好的图片同样采集保存,造成资源浪费和识别效率、识别率的降低;其次常用装置无法对门面和门框做出产品种类上的区分,只能完成单纯的计数与拍照功能,对于后续生产过程中所需的产品种类与序列号无法提供相应的数据源,设备适用性不高,因此近年来对于该类设备在图像获取及其触发方式上均有一定程度的优化与改进。
其次,目前市面上常用的压印字符识别装置在字符识别方法上主要采用基于传统的模板特征匹配以及基于结构统计的算法,例如:以字符图像的灰度作为匹配信息,通过计算字符模板图像与待识别目标图像子区域的灰度相关系数来度量匹配度;或者利用字符本身的结构形态,如边缘、拐点、连通区域等特征进行模式识别;或者在建立字符图像的特征之后,通过有监督的方式学习特征与目标类别之间的关系,从而建立从输入到输出的函数关系。基于传统的模板匹配和特征提取的识别技术,在理想环境下的字符识别效果较好;但是随着生产环境的复杂多样化,一方面人为选取字符特征往往难以找到最合适的特征,另一方面传统方法在复杂场景下的字符识别效果不好,很难实时并且准确地识别门牌字符。近年来,随着神经网络以及机器学习的兴起和发展以及相关硬件设备条件的完善,利用神经网络和深度学习框架进行数据训练,让计算机自主学习,提取待检测数据的特征,建立识别模型从而达到自主识别的效果,成为了目前工业上对于多目标检测识别的一项热门技术。
本发明针对以上问题,提出了采用基于caffe与软触发下的门牌压印字符识别装置,进行门牌压印字符的识别。首先,基于红外对射装置对门牌所在产品的种类进行区分,方便生产过程中的后续工作,进一步完善产品信息,提高了装置的适用性;其次,采用软触发方式进行图像采集,避免了由硬件触发下引起的图像清晰度不高的问题,从而提高了***图像采集能力;最后,依托于手写字体识别深度学习框架LeNet-5,通过调用caffe框架中的LeNet-5手写字体识别网络框架,提高了门牌字符识别算法的正确率、鲁棒性和计算速度,能更好地适应目前的生产需求,在工业生产上有较强的适用性。
发明内容
本发明首先通过摄像头采集模块、红外对射模块以及工控机等硬件设备,通过软件触发的方式,完成字符图像的采集与门牌字符所在产品种类的区分工作;其次利用漫水填充算法对字符图像区域进行处理,去除背景干扰,得到完整且单一的字符区域图像,完成对字符的定位工作;同时采用基于caffe框架中的LeNet-5手写字体识别网络框架,进行字符的训练与学习,实现了对于门牌压印字符的识别功能。本发明通过以下技术方案实现:
基于caffe与软触发下的门牌压印字符识别装置,包括硬件采集模块与软件处理程序模块两部分。所述的硬件采集模块包括摄像头采集模块、红外对射模块、集控模块;所述的软件处理程序模块包括软件触发拍照模块、图像预处理模块、字符切分模块、caffe学习与识别模块;所述的摄像头采集模块包括摄像头1号与摄像头2号;所述的红外对射模块包括红外对射模块1号与红外对射模块2号,红外对射模块1号与红外对射模块2号又分别由对射发送端与对射接收端组成。
基于caffe与软触发下的门牌压印字符识别装置,首先对于硬件采集模块中所述的摄像头采集模块、红外对射模块以及集控模块的摆放位置及其连接方式说明如下:第一,摄像头采集模块主要负责采集当前字符图像,应生产线上采集区域指定位置需求,对摄像头1号、2号的摆放位置做如下说明:记摄像头1号所对应的可拍摄区域范围的极左侧与摄像头2号所对应的可拍摄区域范围的极左侧形成的交点为交点a,记摄像头1号所对应的可拍摄区域范围的极右侧与摄像头2号所对应的可拍摄区域范围的极右侧形成的交点为交点b,摄像头1号与摄像头2号在生产线中的放置位置需保证交点a与交点b均位于门牌生产线传送前进方向上,在此放置位置下,可以保证产品通过生产线传送方向上时,准确完整的位于摄像头的成像视野中心区域,此时成像较为清晰完整,字符内容被完整的获取,没有断裂缺失的情况;第二,由于压印字符位于门或门框边沿两侧,因此红外对射模块1号应位于交点a左侧,且与交点b的距离应小于一个门框的宽度;红外对射模块2号位于交点b右侧,且与交点a的距离应小于一个门框的宽度;以此确保当触发拍照时仅门面可以对其中一组红外对射模块产生遮挡;第三,所述的集控模块与摄像头采集模块通过USB数据连接线连接,传输数据,集控模块与红外对射模块则通过采集卡与串口连接器相连接,传递信号。
基于caffe与软触发下的门牌压印字符识别装置,其工作原理与流程如下:
首先,通过硬件采集模块采集字符图像,其中摄像头采集模块主要负责采集图像;红外对射模块判断产品种类;集控模块负责运算、信号传输与图像的处理和保存。
其次,通过软件处理程序模块中的软件触发拍照模块完成图像成像的区域选择与拍照;图像预处理模块对字符图像的处理加工,定位字符位置;字符切分模块对定位之后的训练字符、测试字符与待检测字符进行切分,形成相应的字符数据集;caffe学习与识别模块对字符数据集的训练与学习,完成最后的识别工作。
现对装置中各个模块的工作原理进行详细说明:
当门牌所在产品经由摄像头采集模块与红外对射模块,经生产线传输时,首先通过软件处理程序模块中所述的软件触发拍照模块进行检测,判断当前采集画面中有无符合设定尺寸大小的圆形存在(需要说明的是:在此规定默认待识别压印门牌字符区域中有一压印圆形,内部压印有代表产品等级的字符,且其尺寸大小固定,可以作为对产品的筛选标准),当检测到当前采集图像中存在唯一且清晰的符合设定尺寸大小的圆形时,说明当前采集区域有效,则通过软触发的方式对当前的字符图像进行采集拍照,同时检测红外对射模块1号与红外对射模块2号的通断状态:当红外对射模块1号与红外对射模块2号同时为导通状态时,判断当前门牌字符所在产品种类为门框;其他状态下判断当前门牌字符所在产品种类为门面,从而对产品种类进行区分,同时对当前采集的图像进行保存和记录,对于门框和门面,在判别种类之后,为了使用者方便直观的区分,在文件名命名的第三位上,将门框记为1,门面记为0,以示区分,为之后的生产过程中提供更加完整的产品数据信息。
本发明在图像采集阶段采用的拍照触发方式为软触发,相较于硬件触发拍照方式而言,软触发对装置所在环境以及周围的硬件条件要求不高,且无需安装硬件设备,其灵活性更强,通过对门牌字符区域有无标准圆形的检测,进一步限定了摄像头采集图像的范围,对于成像质量不好、圆形检测尺寸或清晰度不符合要求、成像区域中并没有所需待识别字符区域的图像不予采集,既缩小了采集范围,也降低了后续图像处理工作的计算量,提高了装置的处理速度与适用能力。
一、对于采集得到的字符图像,首先经软件处理程序模块中所述的图像预处理模块,完成对字符图像的处理加工以及字符位置的准确定位,得到不含背景干扰的纯字符图像。该模块的具体处理步骤流程如下:
步骤一:对于采集得到的字符图像首先进行图像灰度化,在减少图像处理数据量的同时保证图像中的基本信息不丢失;其次进行低通高斯滤波与中值滤波,对图像中的噪声点进行初步去除,进一步提高图像质量;之后利用sobel算子对图像X方向上进行梯度运算,(此处只对图像X方向上进行梯度运算原因在于:此处进行边缘检测的目的在于初步获取字符的位置信息,而根据先验知识可知字符位置集中压印在门牌的竖直方向上,因此只需要对图像进行X方向的梯度运算即可);再进行图像二值化,将字符图像转化为黑白二值图像,去除部分背景,获得字符区域的初步轮廓;最后对二值化之后的图像进行形态学运算,消除字符中的细小断裂区域以及细小的噪声点,将短小像素点进行连接合并,从而进一步去除非字符区域的干扰。
步骤二:对于经过步骤一之后的字符图像,进行门牌字符轮廓的检测与定位:首先通过边缘轮廓搜索函数,大致搜索字符图像的轮廓区域,返回轮廓边界的位置坐标矩阵contours,进而求取其最小外接矩形;其次对获得的外接矩形利用漫水填充算法,去除字符图像背景中的非字符区域,只保留门牌字符区域。
步骤三:对于经过步骤二之后的字符图像,利用边缘检测Canny算子对字符图像做边缘检测,获得字符图像的大致边缘轮廓;其次,通过霍夫变换函数检测图中满足特定要求的直线段。在此需要说明的是,根据先验知识,字符所在区域大致位于整幅图像的1/3至2/3区域,因此首先确定检测区域为整幅图像的1/3至2/3区域,对于该区域中依次绘制出利用霍夫变换函数检测到的每条线段,对于长度不满足基本像素点长度要求的线段,进行筛选。
经过霍夫变换检测直线之后,图像中只保留下长度大于一定像素个数且两条直线之间间隔大于设定阈值(此处阈值可以根据经验值做调整,本算法中设置为20个像素)的直线段,并对这些最终检测得到的直线线段按照坐标位置进行排序,按照直线所在位置,顺序返回每条直线的起点与终点的X、Y坐标,根据起点终点坐标,最终可以确定字符所在区域的边界线,记做图像dst,最终可以获得门牌字符的确定位置,由此完成字符轮廓的检测与定位工作。
步骤四:对于经过步骤三之后的字符图像dst,首先计算字符图像上下边界两直线的斜率,分别记为K1和K2,对于K1和K2,求其均值,记为K,进而计算出旋转角度;其次,以字符图像区域的中心点坐标为旋转中心,将字符图像dst进行旋转得到旋转之后的图像dst2,目的在于将字符图像旋转成水平方向,方便后续的字符切分和识别。
经以上处理步骤之后,可获得完整且没有背景干扰因素的纯字符图像区域,且字符压印顺序符合常见的文字顺序,方向为水平方向排列,为之后的字符切分模块提供了图像数据。
二、对通过上述步骤得到的字符图像,经过字符切分模块处理,得到切分后的单个字符图像,并且标准化为大小一致的切分结果图,结果图将在后续识别模块中作为训练数据源。该模块的具体处理步骤流程如下:
步骤一:首先,对字符图像dst2,以图像的左上角作为像素搜索的起点,对于整张图片,从上至下逐行扫描判断图像中每一点的像素值,主要处理流程如下:
1.判断该点像素值是否为0,若该点像素值为0(表示该点为黑色),则继续扫描下一点像素值;若该点像素值为1(表示该点为白色),则进行判断2。
2.判断该点纵坐标是否处于图片整体宽度的1/3到2/3之间,对于纵坐标不满足要求的则返回判断条件1,进行下一个点的判断;若满足要求,则进行判断3。
3.取该点纵坐标为基准,向左向右各30个像素范围内的点,统计该范围内点的像素值为1的像素点个数,判断满足要求的像素点个数是否大于该区域所有像素点个数的80%,若不满足要求,则返回判断条件1,进行下一个点的判断;若满足要求则返回该点的坐标值,记为点P1(X1,Y1)。
步骤二:其次,对字符图像dst2,以图像的左下角作为像素搜索的起点,对于整张图片,从下至上逐行扫描判断图像中每一点的像素值,其主要的处理流程同步骤一中的处理流程,由此得到的点坐标值记为P2(X2,Y2)。
步骤三:对字符图像dst2,以图像的左上角作为像素搜索的起点,对于整张图片,从左至右逐列扫描判断图像中每一点的像素值,其主要的处理流程同步骤一中的处理流程,由此得到的点坐标值记为P3(X3,Y3)。
步骤四:对字符图像dst2,以图像的左上角作为像素搜索的起点,对于整张图片,从右至左逐列扫描判断图像中每一点的像素值,其主要的处理流程同步骤一中的处理流程,由此得到的点坐标值记为P4(X4,Y4)。
步骤五:根据步骤一至步骤四得到的四个点的坐标值,根据以下公式求出字符的具***置,框定矩形框,进一步缩小字符位置所在范围:
定义height与width分别为矩形的宽和长,记:
height=|Y2-Y1|
width=|X4-X3|
这样在原图字符图像上和二值化之后的图像dst2上均框定一矩形框,认为该矩形框即为字符的精确外边框。
步骤六:对确定精确外边框之后的字符图像,需要进一步获得单个的字符切分结果图,主要处理流程如下:
1.对于确定精确外边框之后的字符图像,首先根据先验知识,分割汉字字符:按照W3,H3的长宽数据(W3,H3根据先验知识可知是压印字符模型中汉字字符的宽度和长度),在字符图像上以W3为标准,先确定第一个字符,即汉字字符的大致右边界;再以汉字字符的大致右边界为起点,从右向左逐列扫描字符图像,遍历每一列字符图像中的像素值,当且仅当该点像素值为1(表示该点为白色)且取该点横坐标为基准,向上向下各30个像素范围内的点,统计该范围内点的像素值为1的像素点个数,满足要求的像素点个数大于该区域所有像素点个数的80%时,记录当前点的横坐标,以该横坐标为轴,所在直线即为汉字字符的精确右边界。由此即可得到第一个字符,即汉字字符的精确位置。
2.对于之后的字母以及数字随机构成的6个字符,同样根据W1,H1、W2,H2(假设数字0-9模板的字符大小为W1,H1;字母A-Z模板大小为W2,H2)的大小宽度,先确定字符的大致右边界,再从大致右边界自右向左逐列扫描字符图像,遍历每一列字符图像中的像素值,进而确定字符的精确右边界,由此依次得到每一个字符的精确位置。
3.对于精确分割之后的单个字符,最后将其大小归一化为28*28的图片,因为后续网络模型要求其输入数据大小为28*28,将经过大小归一化之后的单个字符记为切分结果图。切分结果图按照对应的单个字符的内容保存在对应的文件夹下,字符内容与文件夹名一一对应。
在此需要说明的是:
1.该装置对应的门牌压印字符,字符均由模板压印而成,字符主要有数字、字母以及“甲乙丙丁”四类汉字构成,相同类别的字符压印模板大小统一,即所有的数字模板大小、所有的字母模板大小以及甲乙丙丁四种汉字的模板大小相同,但是这三种字符之间大小不同。
2.由于压印字符中,字母I与数字1、字母O与数字0难以区分,因此,该装置默认压印字符中没有字母I与O。
3.并且根据先验知识,假设数字0-9模板的字符大小为W1,H1;字母A-Z模板大小为W2,H2;汉字甲乙丙丁模板大小为W3,H3。汉字字符的尺寸大小最大,而字母和数字字符的尺寸大小相同,均略小于汉字字符。
4.该门牌压印字符从左往右的排列规则是:从左至右第一个字符为汉字,后续字符为数字和字母随机构成,共计7个字符。
5.切分结果图在后续识别模块中作为训练数据源,训练网络的称为训练切分结果图;在后续识别模块中作为测试数据源,测试网络优劣的称为测试切分结果图;在后续识别模块中作为待识别字符数据集的称为待识别切分结果图。
6.根据实际采集得到的图片数量,将其中的6万张字符图作为训练切分结果图的数据源,另采用1万张采集到的字符图作为测试切分结果图的数据源,需要注意的是此处的6万张训练样本源与1万张测试样本源互相独立不重合。
7.由于门牌压印字符除去首字符固定为汉字之外,后续6个字符的种类和内容均为随机产生的,因此不能保证不同种类下数字和字母的切分结果图数量均匀分布,对于个别种类下的字符切分结果图如果数量过少,可以采用基本的图像处理方法(例如:旋转、去噪声、模糊、形态学操作等等)生成,进而补全切分结果图。
根据以上所述的六个步骤,经过字符切分模块之后最终即可得切分后的单个字符图像结果,并且按照字符内容一一对应保存在相对应的文件夹下,形成相应的切分结果图,为之后的字符识别做准备。
四.对经过字符切分模块处理得到的切分结果图,经caffe框架中的手写字体识别网络,进行网络模型的学习,并进而测试当前网络模型的好坏,最后将待识别字符与训练学习得到的网络相结合,完成最后的字符内容的识别工作。
caffe学习与识别模块又包括学习模块与识别模块,其中学习模块具体处理流程如下(本文中所涉及文件路径名默认从caffe根目录开始):
步骤一:在该装置进行字符识别之前,需要对网络模型进行学习,要有大量的样本输入,因此对于训练切分结果图先进行人工分类,将对应字符分别保存到对应命名的文件夹下,形成训练样本集。
步骤二:对于测试切分结果图进行人工分类,将对应字符分别保存到对应命名的文件夹下,形成测试样本集。
步骤三:将训练样本集中的图片按照顺序打上标签,打乱顺序,形成标签文件,并记录标签文件所在路径,对于测试样本集中的图片做相同的操作,生成相应的标签文件。
步骤四:图片格式转换。由于LeNet-5网络中要求输入的数据格式是ldb或者lmdb格式,因此,需要进行图片格式的转换。格式转换的具体步骤如下:
1.在caffe根目录路径下自带有图片格式转换的cpp文件和对应的exe工具。
2.在caffe根目录路径下,创建create_mnist.bat文件(windows批量操作文件)并将其中的内容做修改。
3.修改完毕之后,运行bat文件,处理完毕之后将会在设置的需要保存的对应路径下,生成相应的测试集与训练集文件夹。
步骤五:对应的修改caffe包库下LeNet-5网络中的参数与文件所在路径。步骤六:运行bat文件,生成lenet_iter_10000.caffemodel模型。
步骤七:测试网络模型优劣。为了测试步骤六中所得的网络模型对于其他非训练样本集中的图片识别效果如何,利用测试样本集中的图片对网络进行测试。需要注意的是,6万张训练样本与1万张测试样本是互相独立不重合的,因此,可以测试出该网络对不同数据的优劣性能,此步骤也是变相的增大了训练样本的数量,对于网络有更好的训练效果。根据实验结果可知该模型对于测试集中的字符图像数据准确率很高且不会发生过拟合以及陷入局部最优的循环中。
经过以上步骤一至步骤七的处理之后,即可得到训练优化之后的模型文件caffemodel,后续将利用它,对待识别字符图像进行识别。
五.caffe学习与识别模块中的识别模块的具体处理流程如下:步骤一:在装置运行过程中,基于硬件采集设备模块所采集到的待识别的字符图像,同样经过上述流程得到待识别切分结果图。
步骤二:将步骤一中所得的待识别切分结果图按照caffe学习与识别模块中的学习模块中步骤四进行处理,得到格式转换之后的数据集,记为待识别字符数据集。
步骤三:调用caffe学习与识别模块中学习模块所得的模型文件caffemodel,将待识别字符数据放入模型中进行识别,最终输出与模型库中对比相似度概率值最高的对应字符,即当前字符的识别结果,再进行组合输出,即为最终的门牌压印字符识别结果,由此完成最终的字符识别。
本发明的优点:
1、本发明采用caffe深度学习网络作为计算工具,依托调用LeNet-5卷积神经网络进行卷积运算,采用训练数据集与测试数据集分开训练学习的方式。训练数据集训练生成模型文件,测试数据集对训练生成的模型进行测试,所采用的测试数据集与训练数据集独立分开,使得模型在训练过程中见过更多有差异的数据,从而进一步提高了模型的鲁棒性以及泛化能力,针对实际数据也有较好的鲁棒性。
2、本发明训练数据速度快,算法自动化程度高,使用方便,效率高。
3、本发明采用软触发方式触发摄像机拍照采集图像,避免了在硬件触发方式下引起的图像清晰度不高的问题,对于成像质量较差的图片进行过滤筛选,从而提高了***图像采集能力。
4、本发明将手写字体卷积网络架构LeNet-5应用于安全门生产过程中的字符识别需求中,对LeNet-5网络进行了推广应用。
5、本发明借助红外对射对门牌所在产品的种类进行区分标记,对应图像也进行区别保存,方便生产过程中的后续工作,进一步完善产品信息,进一步提高了装置的适用性。
6、本发明在定位字符所在位置过程中,采用了一种漫水填充算法来获得字符的位置信息,准确完整的消除了图片的背景区域,从而提高装置的字符提取能力,使其适用于更多更复杂的背景环境下。
附图说明
图1装置整体结构示意图;
图2装置硬件采集设备模块安装位置示意图;
图3装置摄像头采集模块成像示意图;
图4装置软件触发拍照模块流程图;
图5装置图像预处理模块流程图;
图6装置字符切分模块流程图;
图7装置门牌外观结构示意图;
具体实施方案
下面结合附图和实施案例对本发明专利作进一步的说明,但并不作为对本发明专利限制的依据。
如图1装置整体结构示意图所示,本装置由硬件采集设备模块1与软件处理程序模块2两部分组成,其中硬件采集设备模块1包括摄像头采集模块3、红外对射模块4、集控模块5;软件处理程序模块2包括软件触发拍照模块6、图像预处理模块7、字符切分模块8、caffe学习与识别模块9;摄像头采集模块3又包括摄像头1号10与摄像头2号11;红外对射模块4包括红外对射模块1号12与红外对射模块2号13,红外对射模块1号12与红外对射模块2号13又分别由对射发送端与对射接收端组成,集控模块5与摄像头采集模块3通过USB数据连接线连接,传输数据,集控模块5与红外对射模块4则通过采集卡与串口连接器相连接,传递信号。
基于软触发下的门牌16压印字符识别装置首先通过基于摄像头采集设备3、红外对射模块4以及集控模块5(工控机)等硬件设备完成字符图像的采集与门牌16字符所在产品种类的区分工作;其次对字符图像进行预处理,利用漫水填充算法对字符图像区域进行处理,去除背景像素的干扰,得到完整且单一的字符图像,完成对压印字符的定位工作;同时采用基于caffe深度学习与LeNet-5手写字体识别网络框架,进行网络的训练与学习,最终实现了对于门牌16压印字符的识别功能。
该装置运行过程中,如图2装置硬件采集设备模块安装位置示意图、图3装置摄像头采集模块成像示意图、图4装置软件触发拍照模块流程图以及图7装置门牌外观结构示意图所示,根据摄像头采集模块3与红外对射模块4之间的硬件摆放位置,当压印门牌16字符所在产品通过生产线进行传输,通过摄像头采集模块3,进入摄像头1号10与摄像头2号11的成像区域时,需要保证当前门牌16压印字符在摄像头1号10与摄像头2号11的成像区域中央:首先触发红外对射模块4中对射管的状态发生改变,其次,通过软件处理程序模块2中所述的软件触发拍照模块6进行检测,判断当前采集画面中有无符合设定尺寸大小的圆形存在,当检测到当前采集画面中存在唯一、清晰且符合设定尺寸大小的圆形时,说明当前采集区域有效,则通过软触发的方式由集控模块5对当前的字符图像进行采集拍照;同时检测红外对射模块1号12与红外对射模块2号13的通断状态:当红外对射模块1号12与红外对射模块2号13同时为导通状态时,判断当前门牌16字符所在产品种类为门框14;其他状态下判断当前门牌16字符所在产品种类为门面15,从而对产品种类进行区分,并对当前采集的图像进行保存和记录,对于门框14和门面15,在判别种类之后,为了使用者方便直观的区分,在文件名命名的第三位上,将门框14记为1,门面15记为0,为之后的生产过程中提供更加完整的产品数据信息。
经硬件采集设备模块1采集得到的压印门牌16字符图像,首先经集控模块5调取得到字符图像,经软件处理程序模块2中所述的图像预处理模块7,完成对字符图像的处理加工以及字符位置的准确定位,得到不含背景像素干扰的纯字符图像。如图5装置图像预处理模块流程图所示,该模块主要处理步骤如下:
步骤一:对于采集得到的字符图像首先进行图像灰度化,在减少图像处理数据量的同时保证图像中的基本信息不丢失;其次进行高斯滤波与中值滤波,对图像中的噪声点进行初步去除,进一步提高图像质量;之后利用sobel边缘检测算子对图像X方向上进行梯度运算;之后利用阈值分割进行图像二值化,将字符图像转化为黑白二值图像,去除部分背景,获得字符区域的初步轮廓;最后对二值化之后的图像进行形态学运算,消除字符中的细小断裂区域以及细小的噪声点,将短小像素点进行连接合并,从而进一步去除非字符区域的干扰。
步骤二:进行门牌16字符轮廓的检测与定位:首先通过边缘轮廓搜索函数函数,大致搜索字符图像的轮廓区域,返回轮廓边界的位置坐标矩阵contours,进而求取其中的最小包围矩阵;其次对获得的***轮廓矩阵,利用漫水填充算法,可以较好的去除字符图像背景中的非字符区域,通过设置可连通像素的上下限以及连通方式来达到填充的效果,从而只保留门牌16字符区域。
步骤三:利用边缘检测Canny算子对字符图像做边缘检测,获得字符图像的大致边缘轮廓;其次,通过霍夫变换函数检测图中满足特定要求的直线段,检测区域为整幅图像的1/3至2/3区域,对于该区域中依次绘制出利用霍夫变换函数检测到的线段进行筛选,对于长度不满足基本像素点长度要求的线段舍弃。经过霍夫变换检测直线之后,图像中只保留下长度大于一定像素个数且两条直线之间间隔大于设定阈值(此处阈值可以根据经验值做调整,本算法中设置为20个像素)的直线段,并对这些最终检测得到的直线线段按照坐标位置进行排序,按照直线所在位置,顺序返回每条直线的起点与终点的X、Y坐标,根据起点终点坐标,最终可以确定字符所在区域的边界线,记做图像dst,最终可以获得门牌16字符的确定位置。
步骤四:对字符图像dst,首先计算字符图像上下边界两直线的斜率,分别记为K1,K2,对于K1,K2,求其均值,记为K;其次,以字符图像区域的中心点坐标为旋转中心,将字符图像dst进行旋转,调用旋转函数,其中参数degree,即旋转角度通过K求其三角变换,计算其对应的角度得到,得到旋转之后的图像,记为图像dst2,目的在于将字符图像旋转成水平方向,保证字符为水平方向,方便后续的字符切分,再进行图像保存。
经以上处理步骤之后,可获得完整且没有背景干扰因素的纯字符图像区域,且字符压印顺序符合常见的文字顺序,方向为水平方向排列,为之后的字符切分模块8提供了图像数据。
经软件处理程序模块2中所述的图像预处理模块7处理得到的字符图像,如图6装置字符切分模块流程图所示,对经过图像预处理模块7之后的字符图像,首先以图像的左上角作为像素搜索的起点,对于整张图片,从上至下逐行扫描判断图像中每一点的像素值:首先判断该点像素值是否为0,若该点像素值为0(表示该点为黑色),则继续扫描下一点像素值;若该点像素值为1(表示该点为白色),则判断该点纵坐标是否处于图片整体宽度的1/3到2/3之间,对于纵坐标不满足要求的则返回判断条件1,进行下一个点的判断;若满足要求,则进行判断3:取该点纵坐标为基准,向左向右各30个像素范围内的点,统计该范围内点的像素值为1的像素点个数,判断满足要求的像素点个数是否大于该区域所有像素点个数的80%,若不满足要求,则返回判断条件1,进行下一个点的判断;若满足要求则返回该点的坐标值,记为点P1(X1,Y1)。同样的判断流程对于整张图片分别从上至下,从左至右扫描,得到精确的字符所在位置的四个点的坐标值,记为P2(X2,Y2);P3(X3,Y3);P4(X4,Y4);其次,根据四个点的坐标值,求出字符的具***置,框定矩形框,进一步缩小字符位置所在范围;之后,对确定精确外边框之后的字符图像,按照先验知识,依次分割单个字符。首先,分割汉字字符:按照W3,H3(即压印模型中汉字字符的宽度与长度)的长宽数据,在字符图像上以W3为标准,先确定第一个字符,即汉字字符的大致右边界;再以汉字字符的大致右边界为起点,从右向左逐列扫描字符图像,遍历每一列字符图像中的像素值,当且仅当该点像素值为1(表示该点为白色)且取该点横坐标为基准,向上向下各30个像素范围内的点,统计该范围内点的像素值为1的像素点个数,满足要求的像素点个数大于该区域所有像素点个数的80%时,记录当前点的横坐标,以该横坐标为轴,所在直线即为汉字字符的精确右边界。由此即可得到第一个字符,即汉字字符的精确位置;其次,对于之后的字母以及数字随机构成的6个字符,同样根据W1,H1、W2,H2的大小宽度,先确定字符的大致右边界,再从大致右边界自右向左逐列扫描字符图像,遍历每一列字符图像中的像素值,进而确定字符的精确右边界,由此依次得到每一个字符的精确位置;对于精确分割之后的单个字符,最后将其大小归一化为28*28像素的图片,此处进行大小归一化的目的在于后续所采用的网络模型要求其输入数据大小为28*28,,将经过大小归一化之后的单个字符记为切分结果图,切分结果图按照对应的单个字符的内容保存在对应的文件夹下,字符内容与文件夹名一一对应。
根据以上所述步骤,经过字符切分模块8之后最终即可得切分后的单个字符图像结果,并且按照字符内容一一对应保存在相对应的文件夹下,形成相应的切分结果图,为之后的字符识别提供数据。
经软件处理程序模块2中所述的字符切分模块8处理得到的单个字符图像结果,经caffe学习与识别模块借助caffe与LeNet-5手写字体识别网络,处理完成网络模型的学习,并测试当前网络模型的好坏,最后将待识别字符与训练学习得到的网络相结合,完成最后的字符内容的识别工作,具体流程如下:
首先,在该装置进行字符识别之前,需要对网络模型进行学习,需大量的样本输入,因此对于训练切分结果图先进行人工分类,将对应字符分别保存到对应命名的文件夹下,形成训练样本集,对于测试切分结果图进行人工分类,将对应字符分别保存到对应命名的文件夹下,形成测试样本集。
其次,将训练样本集中的图片按照顺序打上标签,打乱顺序,形成标签文件,并记录标签文件所在路径,对于测试样本集中的图片做相同的操作,生成相应的标签文件。
之后,进行图片格式的转换,由于LeNet-5网络中要求输入的数据格式是ldb或者lmdb格式,因此,在图片数据处理的最后一步,需要进行图片格式的转换。
修改完毕之后,运行bat文件,处理完毕之后将会在设置的需要保存的对应路径下,生成相应的测试集与训练集文件夹,其中所包含的就是转换完成之后的训练集与测试集的数据。之后,运行bat文件,生成模型文件。
测试网络模型的优劣。为了测试所得网络模型对于其他非训练样本集中的图片识别效果如何,需利用测试样本集中的图片对网络进行测试,需要注意的是,采集得到的6万张训练样本与1万张测试样本是互相独立不重合的,因此,可以测试出该网络对不同数据的优劣性能。
最后,在装置运行过程中,基于硬件采集设备模块1所采集到的待识别的字符图像,同样经过上述流程得到待识别切分结果图;将待识别切分结果图按照caffe学习与识别模块9中的学习模块进行处理,得到格式转换之后的数据集,记为待识别字符数据集;调用caffe学习与识别模块9中学习模块所得的模型文件lenet_iter_10000.caffemodel,将待识别字符数据放入模型中进行识别,最终输出与模型库中对比相似度概率值最高的对应字符,即当前字符的识别结果,进行组合输出,即为最终的字符识别结果,由此完成最终的字符识别。
以上所述仅为本发明专利的较佳实施例。
Claims (6)
1.基于caffe与软触发下的门牌压印字符识别装置,包括硬件采集设备模块与软件处理程序模块两部分,所述的硬件采集设备模块包括摄像头采集模块、红外对射模块、集控模块;所述的软件处理程序模块包括软件触发拍照模块、图像预处理模块、字符切分模块、caffe学习与识别模块;其特征在于通过软件触发检测判断是否对当前图像进行拍照,避免了硬件触发形式下的图像清晰度问题,提高了装置的图像采集能力;同时,通过红外对射模块辅助判断出门面与门框的种类,进一步提高了装置的适用性,为后续的生产过程提供了更加详细的产品信息,方便之后的数据处理与产品归类工作;其次,使用漫水填充算法对图像进行预处理,以消除图片背景,提高装置的字符提取能力;最后,通过调用caffe框架中的LeNet-5手写字体识别网络进行字符的学习与识别,将训练得到的模型应用于待识别的门牌压印字符图像,最终达到识别字符的目的。
2.根据权利要求1中所述的基于caffe与软触发下的门牌压印字符识别装置其特征在于,摄像头采集模块包括摄像头1号、摄像头2号;红外对射模块包括红外对射模块1号、红外对射模块2号;红外对射模块1号和2号分别由对射发送端与对射接收端组成;记摄像头1号拍摄区域的极左侧与摄像头2号拍摄区域的极左侧形成的交点为交点a,记摄像头1号拍摄区域的极右侧与摄像头2号拍摄区域的极右侧形成的交点为交点b,摄像头1号与摄像头2号放置位置需要保证交点a与交点b位于门牌生产线传送前进方向上;红外对射模块1号与红外对射模块2号分别放置于交点a与交点b的外侧;另外,红外对射模块1号位于交点a左侧,且与交点b的距离应小于一个门框的宽度;红外对射模块2号位于交点b右侧,且与交点a的距离应小于一个门框的宽度;集控模块与摄像头采集模块通过USB数据线传输数据,集控模块与红外对射模块通过采集卡与串口连接,传递信号。
3.根据权利要求1中所述的基于caffe与软触发下的门牌压印字符识别装置其特征在于,软件触发拍照模块处理流程为以下步骤:
步骤一:对权利要求1中通过摄像头获取的门牌压印字符图片采用霍夫变换进行有无圆形的检测。
步骤二:当检测到图片中存在唯一且清晰的圆形时,说明当前采集区域有效,通过软件触发对当前字符图像进行采集拍照,同时检测红外对射模块1号与红外对射模块2号的通断状态:当两者同时为导通状态时,判断当前产品种类为门框;其他状态下判断当前产品种类为门面,从而对产品种类进行区分。
步骤三:对当前采集的图像进行保存记录。对于门框与门面,在判别种类之后,为了使用者方便直观的区分,在图片文件名命名的第三位上,将门框记为1,门面记为0,以示区分。
4.根据权利要求1中所述的基于caffe与软触发下的门牌压印字符识别装置其特征在于,图像预处理模块处理流程为以下步骤:
步骤一:对权利要求3中处理保存之后的图片首先进行灰度化,其次进行低通高斯滤波与中值滤波,对图像中的噪声点进行初步去除;之后利用边缘检测sobel算子对图像X方向进行梯度运算(此处只对图像X方向上进行梯度运算原因在于:此处进行边缘检测的目的在于初步获取字符的位置信息,而根据先验知识可知字符位置集中压印在门牌的竖直方向上,因此只需要对图像进行X方向的梯度运算即可);利用阈值分割算法进行图像二值化,将图像转化为黑白二值图像,获得字符区域的初步轮廓;最后对二值化之后的图像先后进行形态学开运算和闭运算,消除字符中的细小断裂区域以及细小噪声点,将短小像素点连接合并,从而进一步去除非字符区域的干扰。
步骤二:对于经过步骤一之后的字符图像,进行门牌字符轮廓的检测与定位:首先通过边缘轮廓搜索函数大致搜索字符图像的轮廓区域,得到轮廓边界的位置坐标矩阵contours,获得最小外接矩形;其次对获得的外接矩形,采用漫水填充算法,去除背景中非字符区域,只保留门牌字符区域。
步骤三:对于经过步骤二之后的字符图像,先利用边缘检测Canny算子对字符图像做边缘检测,获得字符图像的大致边缘轮廓;其次,通过霍夫变换检测图中满足要求的直线段,需要说明的是,根据先验知识,字符所在区域大致位于整幅图像的1/3至2/3区域,因此首先确定检测区域为整幅图像的1/3至2/3区域,在该区域中依次在图中绘制出霍夫变换检测到的每条线段,只保留长度满足一定要求并且两条直线之间间隔大于设定的阈值(此处阈值可以根据经验值做调整)的直线段;检测之后按照直线所在位置,顺序返回每条直线的起点与终点的X、Y坐标,根据起点终点坐标,可以确定相邻两条线之间的图像区域,将其另做保存,记做图像dst(对于图像存储类型不做规定,可根据实际情况改变,下同),最终可以获得门牌字符的确定位置,由此完成字符轮廓的检测与定位工作。
步骤四:对于经过步骤三之后的字符图像dst,首先计算字符上下边界两直线的斜率,分别记为K1和K2,对于K1和K2,求其均值,记为K;其次,以字符图像区域的中心点坐标为旋转中心,将字符图像dst进行旋转,旋转角度即斜率K所对应角度,得到旋转之后的图像,记为图像dst2,其将字符图像旋转成水平方向。
经过以上步骤处理之后最终获得完整并且没有背景干扰因素存在的字符所在图像区域,且字符符合常见的文字顺序,为之后的字符切分模块奠定基础。
5.根据权利要求1中所述的基于caffe与软触发下的门牌压印字符识别装置其特征在于,对权利要求4中经过图像预处理模块之后的字符图像为一张二值图像dst2,每一点的像素值只有两种取值,即0和1,分别代表黑色和白色,由于字符位置已经确定位于图像的居中位置,外界干扰像素已经去除,因此字符切分模块主要目的在于得到切分字符图像,得到单个字符图像并进行保存。
字符切分模块的处理流程为以下几个步骤:
步骤一:首先,对权利要求4中经过图像预处理模块之后的字符图像dst2,以图像的左上角作为像素值搜索的起点,对于整张图片,从上至下,逐行扫描判断图像中每一点的像素值,主要处理流程如下:
(1).判断该点像素值是否为0,若该点像素值为0(表示该点为黑色),则继续扫描下一点像素值;若该点像素值为1(表示该点为白色),则进行判断(2)。
(2).判断该点纵坐标是否处于图片整体宽度的1/3到2/3之间,对于纵坐标不满足要求的则返回判断条件1,进行下一个点的判断;若满足要求,则进行判断(3)。
(3).取该点纵坐标为基准,向左向右各30个像素范围内的点,统计该范围内点的像素值为1的像素点个数,判断满足要求的像素点个数是否大于该区域所有像素点个数的80%,若不满足要求,则返回判断条件1,进行下一个点的判断;若满足要求则返回该点的坐标值,记为点P1(X1,Y1)。
步骤二:对权利要求4中经过图像预处理模块之后的字符图像dst2,以图像的左下角作为像素搜索的起点,对于整张图片,从下至上逐行扫描判断图像中每一点的像素值,其主要的处理流程同步骤一中的处理流程,由此得到的点坐标值,记为P2(X2,Y2)。
步骤三:对权利要求4中经过图像预处理模块之后的字符图像dst2,以图像的左上角作为像素搜索的起点,对于整张图片,从左至右逐列扫描判断图像中每一点的像素值,其主要的处理流程同步骤一中的处理流程,由此得到的点坐标值,记为P3(X3,Y3)。
步骤四:对权利要求4中经过图像预处理模块之后的字符图像dst2,以图像的左上角作为像素搜索的起点,对于整张图片,从右至左逐列扫描判断图像中每一点的像素值,其主要的处理流程同步骤三中的处理流程,由此得到的点坐标值,记为P4(X4,Y4)。
步骤五:根据步骤一至步骤四得到的四个点的坐标值,根据以下公式求出字符的具***置,框定矩形框,进一步缩小字符位置的所在范围:
定义变量height与width,记:
height=|Y2-Y1|
width=|X4-X3|
这样在原图字符图像上和二值化之后的图像dst2上均框定一矩形框,认为该矩形框即为字符的精确外边框。
步骤六:对确定精确外边框之后的字符图像,需要进一步获得单个字符的切分结果图,主要流程如下:
(1).对于确定精确外边框之后的字符图像,首先按照先验知识可知压印字符的模型大小尺寸是固定的,因此先分割汉字字符:记W3,H3为汉字字符模型的宽度与长度,按照W3,H3的长宽数据,在字符图像上以W3为标准,先确定第一个字符即汉字字符的大致右边界;再以汉字字符的大致右边界为起点,从右向左逐列扫描字符图像,遍历每一列字符图像中的像素值,当且仅当该点像素值为1(表示该点为白色)且取该点横坐标为基准,向上向下各30个像素范围内的点,统计该范围内点的像素值为1的像素点个数,满足要求的像素点个数大于该区域所有像素点个数的80%时,记录当前点的横坐标,以该横坐标为轴,所在直线即为汉字字符的精确右边界。由此即可得到第一个字符,即汉字字符的精确位置。
(2).对于之后的字母以及数字随机构成的6个字符,同样根据W1,H1、W2,H2(记数字0-9模板的字符大小为W1,H1;字母A-Z模板大小为W2,H2)的大小宽度,先确定字符的大致右边界,再从大致右边界自右向左逐列扫描字符图像,遍历每一列字符图像中的像素值,进而确定字符的精确右边界,由此依次得到每一个字符的精确位置。
(3).对于精确分割之后的单个字符,将其大小归一化为28*28的图片,此处进行大小归一化的目的在于后续所采用的网络模型要求其输入数据大小为28*28,,将经过大小归一化之后的单个字符记为切分结果图。切分结果图按照对应的字符的内容保存在对应的文件夹下,字符内容与文件夹名一一对应。
需要说明的是:首先,切分结果图在后续识别模块中作为训练数据源,训练网络的称为训练切分结果图;在后续识别模块中作为测试数据源,测试网络优劣的称为测试切分结果图;在后续识别模块中作为待识别字符数据集的称为待识别切分结果图。其次,根据实际采集图片数量,将根据权利要求书1所述的硬件采集设备模块采集所得的6万张字符图作为训练切分结果图的数据源,另采用1万张采集到的字符图作为测试切分结果图的数据源,需要注意的是此处的6万张训练样本源与1万张测试样本源互相独立不重合。最后,由于门牌压印字符除去首字符固定为汉字之外,后续6个字符的种类和内容均为随机产生的,因此不能保证不同种类下数字和字母的切分结果图数量均匀分布,对于个别种类下的字符切分结果图如果数量过少,可以采用基本的图像处理方法(例如:旋转、去噪声、模糊、形态学操作等等)生成补全切分结果图。
根据以上所述的六个步骤,最终即可得到字符切分后的单个字符图像结果,并且按照字符内容一一对应的保存在相应的文件夹下。
6.根据权利要求1中所述的基于caffe与软触发下的门牌压印字符识别装置其特征在于,caffe学习与识别模块又包括学习模块与识别模块:学习模块根据权利要求5所得的训练切分结果图使用caffe中的LeNet-5手写字体识别网络处理完成网络模型的学习,并根据权利要求5所得的测试切分结果图测试当前网络模型的好坏;识别模块主要根据待识别切分结果图与所得网络模型相结合,完成最终的识别工作。
学习模块具体处理流程如下:
步骤一:在该装置进行字符识别之前,需要对网络模型进行学习,需要有大量的输入样本,因此对于权利要求5所得的训练切分结果图进行人工分类,将对应字符分别保存到对应命名的文件夹下,形成训练样本集。
步骤二:对于权利要求5所得的测试切分结果图同样的进行人工分类,将对应字符分别保存到对应命名的文件夹下,形成测试样本集。
步骤三:将训练样本集中的图片按照顺序打上标签,打乱顺序,形成标签文件,并记录标签文件所在路径。对于测试样本集中的图片做相同的操作,生成相应的标签文件。
步骤四:图片格式转换。由于LeNet-5网络中要求输入的数据格式是ldb或者lmdb格式,需要进行图片格式的转换。转换完毕之后,运行bat文件,处理完毕之后得到相应的测试集与训练集。
步骤五:修改caffe包库下LeNet-5网络中的参数与文件所在路径。
步骤六:运行bat文件,生成模型文件。在caffe根路径下,创建train_mnist.bat文件并将其中的内容进行修改,运行bat文件之后,将在对应路径下生成模型文件。
步骤七:测试网络模型优劣。为了测试步骤六中所得的网络模型对于其他非训练样本集中的图片识别效果如何,利用测试样本对网络进行测试,可以测试出该网络的性能。
经过以上步骤一至步骤七的处理之后,即可得到一个训练优化之后的模型文件caffemodel,后续将利用它对待识别字符图像进行识别。
识别模块具体处理流程如下:步骤一:在装置运行过程中,基于权利要求1中所述的硬件采集设备模块所采集到的待识别的字符图像,同样经过权利要求2-5所述流程得到待识别切分结果图。
步骤二:将步骤一所得的待识别切分结果图按照权利要求6中学习模块中的步骤四进行处理,得到格式转换之后的数据集,记为待识别字符数据集。
步骤三:调用权利要求6中学习模块中所得的模型caffemodel文件,将待识别字符数据放入模型中进行识别,最终输出与模型库中对比相似度概率值最高的对应字符,即为当前字符的识别结果,再进行组合输出,即为最终的门牌压印字符识别结果,由此完成最终的字符识别工作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810044470.6A CN108229483A (zh) | 2018-01-11 | 2018-01-11 | 基于caffe与软触发下的门牌压印字符识别装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810044470.6A CN108229483A (zh) | 2018-01-11 | 2018-01-11 | 基于caffe与软触发下的门牌压印字符识别装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108229483A true CN108229483A (zh) | 2018-06-29 |
Family
ID=62641183
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810044470.6A Pending CN108229483A (zh) | 2018-01-11 | 2018-01-11 | 基于caffe与软触发下的门牌压印字符识别装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108229483A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109740601A (zh) * | 2019-01-04 | 2019-05-10 | 北京奇艺世纪科技有限公司 | 一种压印类型识别方法及装置 |
CN110598681A (zh) * | 2019-10-22 | 2019-12-20 | 广东技术师范大学 | 一种自然街景门牌号识别方法 |
CN110852419A (zh) * | 2019-11-08 | 2020-02-28 | 中山大学 | 一种基于深度学习的动作模型及其训练方法 |
CN112861736A (zh) * | 2021-02-10 | 2021-05-28 | 上海大学 | 基于图像处理的文献表格内容识别与信息提取方法 |
CN113378819A (zh) * | 2021-06-24 | 2021-09-10 | 成都飞机工业(集团)有限责任公司 | 一种机载软件版本的快速识别方法 |
CN114067192A (zh) * | 2022-01-07 | 2022-02-18 | 北京许先网科技发展有限公司 | 一种文字识别方法及*** |
CN116612476A (zh) * | 2023-07-20 | 2023-08-18 | 合肥图迅电子科技有限公司 | 一种芯片字符检测方法、装置、计算机设备及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1684096A (zh) * | 2004-04-16 | 2005-10-19 | 中国科学院自动化研究所 | 门牌号自动识别***及方法 |
CN101303803A (zh) * | 2008-06-11 | 2008-11-12 | 北京中星微电子有限公司 | 一种车牌识别的方法和*** |
US20090028435A1 (en) * | 2007-07-23 | 2009-01-29 | Bo Wu | Character image extracting apparatus and character image extracting method |
CN101697196A (zh) * | 2009-10-29 | 2010-04-21 | 上海索广电子有限公司 | 摄像机铭牌序列号数字识别***及方法 |
CN104408931A (zh) * | 2014-10-29 | 2015-03-11 | 合肥指南针电子科技有限责任公司 | 一种残缺符号车牌识别***及方法 |
CN104871180A (zh) * | 2012-12-13 | 2015-08-26 | 高通股份有限公司 | 用于ocr的基于文本图像质量的反馈 |
CN105975968A (zh) * | 2016-05-06 | 2016-09-28 | 西安理工大学 | 一种基于Caffe框架的深度学习车牌字符识别方法 |
-
2018
- 2018-01-11 CN CN201810044470.6A patent/CN108229483A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1684096A (zh) * | 2004-04-16 | 2005-10-19 | 中国科学院自动化研究所 | 门牌号自动识别***及方法 |
US20090028435A1 (en) * | 2007-07-23 | 2009-01-29 | Bo Wu | Character image extracting apparatus and character image extracting method |
CN101303803A (zh) * | 2008-06-11 | 2008-11-12 | 北京中星微电子有限公司 | 一种车牌识别的方法和*** |
CN101697196A (zh) * | 2009-10-29 | 2010-04-21 | 上海索广电子有限公司 | 摄像机铭牌序列号数字识别***及方法 |
CN104871180A (zh) * | 2012-12-13 | 2015-08-26 | 高通股份有限公司 | 用于ocr的基于文本图像质量的反馈 |
CN104408931A (zh) * | 2014-10-29 | 2015-03-11 | 合肥指南针电子科技有限责任公司 | 一种残缺符号车牌识别***及方法 |
CN105975968A (zh) * | 2016-05-06 | 2016-09-28 | 西安理工大学 | 一种基于Caffe框架的深度学习车牌字符识别方法 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109740601A (zh) * | 2019-01-04 | 2019-05-10 | 北京奇艺世纪科技有限公司 | 一种压印类型识别方法及装置 |
CN110598681A (zh) * | 2019-10-22 | 2019-12-20 | 广东技术师范大学 | 一种自然街景门牌号识别方法 |
CN110852419A (zh) * | 2019-11-08 | 2020-02-28 | 中山大学 | 一种基于深度学习的动作模型及其训练方法 |
CN110852419B (zh) * | 2019-11-08 | 2023-05-23 | 中山大学 | 一种基于深度学习的动作模型及其训练方法 |
CN112861736A (zh) * | 2021-02-10 | 2021-05-28 | 上海大学 | 基于图像处理的文献表格内容识别与信息提取方法 |
CN112861736B (zh) * | 2021-02-10 | 2022-08-09 | 上海大学 | 基于图像处理的文献表格内容识别与信息提取方法 |
CN113378819A (zh) * | 2021-06-24 | 2021-09-10 | 成都飞机工业(集团)有限责任公司 | 一种机载软件版本的快速识别方法 |
CN113378819B (zh) * | 2021-06-24 | 2022-11-18 | 成都飞机工业(集团)有限责任公司 | 一种机载软件版本的快速识别方法 |
CN114067192A (zh) * | 2022-01-07 | 2022-02-18 | 北京许先网科技发展有限公司 | 一种文字识别方法及*** |
CN116612476A (zh) * | 2023-07-20 | 2023-08-18 | 合肥图迅电子科技有限公司 | 一种芯片字符检测方法、装置、计算机设备及存储介质 |
CN116612476B (zh) * | 2023-07-20 | 2023-09-22 | 合肥图迅电子科技有限公司 | 一种芯片字符检测方法、装置、计算机设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108229483A (zh) | 基于caffe与软触发下的门牌压印字符识别装置 | |
CN107194418B (zh) | 一种基于对抗特征学习的水稻蚜虫检测方法 | |
CN109902806A (zh) | 基于卷积神经网络的噪声图像目标边界框确定方法 | |
Kulkarni et al. | Automatic number plate recognition (anpr) system for indian conditions | |
CN109829458B (zh) | 实时自动生成记录***操作行为的日志文件的方法 | |
CN111626177B (zh) | 一种pcb元件识别方法及装置 | |
CN110032932B (zh) | 一种基于视频处理和决策树设定阈值的人体姿态识别方法 | |
CN110598566A (zh) | 图像处理方法、装置、终端和计算机可读存储介质 | |
CN108664975A (zh) | 一种维吾尔文手写字母识别方法、***及电子设备 | |
CN109086772A (zh) | 一种扭曲粘连字符图片验证码的识别方法及*** | |
CN112464925A (zh) | 基于机器学习的移动端开户资料银行信息自动提取方法 | |
CN110599463A (zh) | 一种基于轻量级联神经网络的舌像检测及定位算法 | |
CN103699876B (zh) | 一种基于线阵ccd图像识别车号的方法及装置 | |
CN117523214A (zh) | 一种智能识别图片修改痕迹反欺诈的方法 | |
CN113076860B (zh) | 一种野外场景下的鸟类检测*** | |
Chen et al. | Salient object detection: Integrate salient features in the deep learning framework | |
CN117437647B (zh) | 基于深度学习和计算机视觉的甲骨文字检测方法 | |
CN112561885B (zh) | 基于YOLOv4-tiny的插板阀开度检测方法 | |
CN105404682B (zh) | 一种基于数字图像内容的图书检索方法 | |
CN117330582A (zh) | 一种高分子pe薄膜表面晶点检测*** | |
CN110766001B (zh) | 基于cnn和rnn的银行卡***定位与端到端识别方法 | |
CN112084103A (zh) | 界面测试方法、装置、设备和介质 | |
CN114529906A (zh) | 基于字符识别的输电设备数字仪表异常检测方法及*** | |
CN111046883B (zh) | 一种基于古钱币图像的智能评估方法及*** | |
CN109919863B (zh) | 一种全自动菌落计数仪、***及其菌落计数方法 |
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 | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20180629 |
|
WD01 | Invention patent application deemed withdrawn after publication |