一种基于卷积神经网络的带小数点数字仪表自动识别方法转让专利

申请号 : CN201810734321.2

文献号 : CN109034160B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 陈忠伟王文斐耿沛文马文辉

申请人 : 江苏迪伦智能科技有限公司

摘要 :

本发明公开了一种基于卷积神经网络的带小数点数字仪表自动识别方法,包括如下步骤:将采集的数字仪表LED图片样本分割成独立的LED字符图片,LED字符图片经过预处理后送入网络模型进行训练;将待识别图片输入训练好的网络模型进行识别。其中,网络模型由LED字符卷积神经网络模型和小数点卷积神经网络模型构成,LED字符图片的预处理过程包括LED数字样本图像预处理步骤和小数点样本图片预处理步骤。本发明将包含小数点的LED字符图片缩放后进行区域切分后送入网络模型中训练,即把回归定位问题转换为分类问题。因为小数点和LED字符识别是两个不同的网络,所以模型识别结果不会互相干扰,在网络调试方面更加灵活。

权利要求 :

1.一种基于卷积神经网络的带小数点数字仪表自动识别方法,其特征在于,包括如下步骤:将采集的数字仪表LED图片样本分割成独立的LED字符图片,所述LED字符图片经过预处理后送入网络模型进行训练;将待识别图片输入训练好的网络模型进行识别;其中,所述网络模型由LED字符卷积神经网络模型和小数点卷积神经网络模型构成,所述LED字符图片的预处理过程包括LED数字样本图像预处理步骤和小数点样本图片预处理步骤,具体的:所述LED数字样本图像预处理步骤包括:

A1:对LED字符图片进行标签标定;

A2:对带标签的LED字符图片进行数据增广;

A3:将所有LED字符图片大小统一;

A4:对所有LED字符图片进行灰度化,只保留亮度信息;

A5:将所有灰度化后的LED字符图片进行数据打包封装,分成训练和测试两个数据包以供所述LED字符卷积神经网络模型训练测试;

所述小数点样本图片预处理步骤包括:

B1:对LED字符图片进行标签标定;

B2:对带标签的LED字符图片进行数据增广;

B3:将所有LED字符图片大小统一;

B4:将字符图片进行3*3切分,在前8个区域内随机选取两个子区域,标签设为0,如果该LED图片含有小数点,则右下角的第9区域标签为1;

B5:将所有切分的小数点样本图片进行灰度化,只保留亮度信息;

B6:将所有的小数点样本图片进行封装打包,分成训练和测试两个数据包供所述小数点卷积神经网络模型训练测试;

利用训练好的网络模型进行图片识别时:对待识别图像进行预处理后先输入所述LED字符卷积神经网络模型,然后对预处理后的待识别图像进行3x3切割,取第9区域送入所述小数点卷积神经网络模型,根据小数点出现检测识别成功的次序,确定小数点的位置,最后将所述LED字符卷积神经网络模型和小数点卷积神经网络模型识别结果进行拼接。

2.根据权利要求1所述的基于卷积神经网络的带小数点数字仪表自动识别方法,其特征在于,所述LED字符卷积神经网络模型和小数点卷积神经网络模型均采用修正线单元作为非线性激活函数,对应地网络权重使用xavier方式;其中,修正线单元为权重范围为 式中yi表示非线性激活函数值,xi表示函数变量,m,n分别代表网络层输入和输出通道数。

3.根据权利要求2所述的基于卷积神经网络的带小数点数字仪表自动识别方法,其特征在于,模型训练中采用Adam网络权值更新算法更新梯度的指数移动均值mt和平方梯度vt,更新规则为:其中, 是对梯度的一阶矩估计, 为对梯度的二阶矩估计,η为学习率,β1、β2、ε为超参数,t表示更新时间步。

4.根据权利要求2所述的基于卷积神经网络的带小数点数字仪表自动识别方法,其特征在于,所述LED字符卷积神经网络模型包括4个卷积层、4个最大池化层以及2个全连接层构成,所述小数点卷积神经网络模型包括3个卷积层、1个最大池化层以及2个全连接层构成。

5.根据权利要求3所述的基于卷积神经网络的带小数点数字仪表自动识别方法,其特征在于,所述LED字符卷积神经网络模型和小数点卷积神经网络模型均采用Softmax损失作为网络权值更新的依据,Softmax损失函数为: 其中,T为网络类别数量,yi为样本的标签值,si为网络计算的预测值, a为yi向量的单个元素值,j为a的序号。

6.根据权利要求5所述的基于卷积神经网络的带小数点数字仪表自动识别方法,其特征在于,模型训练中依据网络当前预测准确率来判断网络的训练效果,具体为:其中, 代表取标签yi向量的最大序号; 代表取网络

计算预测值si的最大可能标签值;Accuracy表示准确率,BatchSize表示批大小。

说明书 :

一种基于卷积神经网络的带小数点数字仪表自动识别方法

技术领域

[0001] 本技术所属领域为计算机领域,具体涉及到图片中的数字电表的识别,应用于数字电表的自动化识别。

背景技术

[0002] LED数字电表常见于新型仪表中,相比于传统机械式电表,具有准确度高,功耗低,体积小,易于辨认等优点,广泛运用于化工,电子,电力等工业领域。然而很多场合下,这些LED电表的读数识别需要人工作业,不仅劳动强度大,效率低下,而且某些场景具有危险性因素,例如高压变电站的LED读数作业。
[0003] 专利申请号为201710195995.5,名为《一种变电站巡视机器人自主识别方法和一种巡视机器人》的中国专利申请,首先对LED数字进行二值化处理,后通过在垂直方向上的投影进行字符切割,得到单个字符的切分图片;将图片缩放至统一大小之后,通过模板匹配法对待预测的数字图片进行得分判定,将匹配得分最高的模板序号作为识别结果。该方法对LED数字图片质量要求很高,模糊,倾斜,光照变化会导致二值化不能很好地区分LED字符与背景的边缘。在后续模板匹配过程中,导致匹配出错。缺乏通用性和鲁棒性。
[0004] 专利申请号为201710195624.7,名为《一种仪表液晶数字自动切分和识别的方法及系统》的中国专利申请,公开了一种液晶仪表数字自动切分和识别的方法及系统,包括图像预处理,小数点识别,字符切分,字符识别四个模块。使用LoG算子对图片进行滤波,Otsu二值化后进行膨胀腐蚀操作,得到连通图,对其进行水平和垂直方向投影用于单个字符的切割。提取特征向量使用单字识别库识别切分的单个字符区域。针对小数点,通过设置较大的阈值对图像进行二值化,使得仅保留包含小数点以及噪声的二值化图,通过判定二值化区域外接矩形与之前二值化字符区域进行判断对比,确认小数点的相对位置。该方法流程存在较大的局限性。字符二值切分方面,因为光照环境变化导致二值化后无法区分字符与背景,小数点定位判断依靠阈值设定,所以该方法流程不具有通用性和稳定性。而且字符切分和小数点定位依赖于人工先验判断逻辑。算法在复杂多变的真实环境会失效。
[0005] LED数字电表因广泛应用于多个领域,所以其形态各异,导致LED字体字形,字体颜色,LED背板纹理等差异,在使用传统训练方法流程(例如特征值提取+SVM)中无法对各种形态颜色各异的LED字体图片设置合理的阈值。导致训练后的模型在某些质量不好的图片上识别效果差。

发明内容

[0006] 发明目的:针对上述现有技术,提出一种基于卷积神经网络的带小数点数字仪表自动识别方法,对LED字符构建的CNN网络可以对各种不同的LED字体都有很好的泛化性。
[0007] 技术方案:一种基于卷积神经网络的带小数点数字仪表自动识别方法,包括如下步骤:将采集的数字仪表LED图片样本分割成独立的LED字符图片,所述LED字符图片经过预处理后送入网络模型进行训练;将待识别图片输入训练好的网络模型进行识别;其中,所述网络模型由LED字符卷积神经网络模型和小数点卷积神经网络模型构成,所述LED字符图片的预处理过程包括LED数字样本图像预处理步骤和小数点样本图片预处理步骤,具体的:
[0008] 所述LED数字样本图像预处理步骤包括:
[0009] A1:对LED字符图片进行标签标定;
[0010] A2:对带标签的LED字符图片进行数据增广;
[0011] A3:将所有LED字符图片大小统一;
[0012] A4:对所有LED字符图片进行灰度化,只保留亮度信息;
[0013] A5:将所有灰度化后的LED字符图片进行数据打包封装,分成训练和测试两个数据包以供所述LED字符卷积神经网络模型训练测试;
[0014] 所述小数点样本图片预处理步骤包括:
[0015] B1:对LED字符图片进行标签标定;
[0016] B2:对带标签的LED字符图片进行数据增广;
[0017] B3:将所有LED字符图片大小统一;
[0018] B4:将字符图片进行3*3切分,在前8个区域内随机选取两个子区域,标签设为0,如果该LED图片含有小数点,则右下角的第9区域标签为1;
[0019] B5:将所有切分的小数点样本图片进行灰度化,只保留亮度信息;
[0020] B6:将所有的小数点样本图片进行封装打包,分成训练和测试两个数据包供所述小数点卷积神经网络模型训练测试;
[0021] 利用训练好的网络模型进行图片时:对待识别图像进行预处理后先输入所述LED字符卷积神经网络模型,然后对预处理后的待识别图像进行3x3切割,取第9区域送入所述小数点卷积神经网络模型,根据小数点出现检测识别成功的次序,确定小数点的位置,最后将所述LED字符卷积神经网络模型和小数点卷积神经网络模型识别结果进行拼接。
[0022] 进一步的,所述LED字符卷积神经网络模型和小数点卷积神经网络模型均采用修正线单元作为非线性激活函数,对应地网络权重使用xavier方式;其中,修正线单元为权重范围为 式中yi表示非线性激活函数值,xi表示函数变量,m,n分别代表网络层输入和输出通道数。
[0023] 进一步的,模型训练中采用Adam网络权值更新算法更新梯度的指数移动均值mt和平方梯度vt,更新规则为:
[0024]
[0025]
[0026]
[0027] 其中, 是对梯度的一阶矩估计, 为对梯度的二阶矩估计,η为学习率,β1、β2、ε为超参数,t表示更新时间步。
[0028] 进一步的,所述LED字符卷积神经网络模型包括4个卷积层、4个最大池化层以及2个全连接层构成,所述小数点卷积神经网络模型包括3个卷积层、1个最大池化层以及2个全连接层构成。
[0029] 进一步的,所述LED字符卷积神经网络模型和小数点卷积神经网络模型均采用Softmax损失作为网络权值更新的依据,Softmax损失函数为: 其中,T为网络类别数量,yi为样本的标签值,si为网络计算的预测值, a为yi向量的单
个元素值,j为a的序号。
[0030] 进一步的,模型训练中依据网络当前预测准确率来判断网络的训练效果,具体为:
[0031]
[0032] 其中, 代表取标签yi向量的最大序号; 代表取网络计算预测值si的最大可能标签值;Accuracy表示准确率,BatchSize表示批大小。
[0033] 有益效果:本说明书展示的使用卷积神经网络应用于LED字符和小数点识别方法,对比二值化处理后进行模板匹配或者特征值提取送入SVM或BP网络进行识别等方法,具有识别准确度高,预处理简单,泛用性,稳定性强的优点。在实际各种光照,样式不同的LED字体以及小数点,都可以实用。该方法应用于如仪表监控识别,变电站巡检等场景下,将会大大降低人工成本,提高检测效率。

附图说明

[0034] 图1是本发明方法流程图;
[0035] 图2是小数点3x3切分示意图;
[0036] 图3是LED字符卷积神经网络模型示意图;
[0037] 图4是小数点卷积神经网络模型示意图。

具体实施方式

[0038] 下面结合附图对本发明做更进一步的解释。
[0039] 如图1所示,一种基于卷积神经网络的带小数点数字仪表自动识别方法,包括如下步骤:将采集的数字仪表LED图片样本分割成独立的LED字符图片,LED字符图片经过预处理后送入网络模型进行训练,再将待识别图片输入训练好的网络模型进行识别。其中,网络模型由LED字符卷积神经网络模型和小数点卷积神经网络模型构成。LED字符图片的预处理过程包括LED数字样本图像预处理步骤和小数点样本图片预处理步骤,具体的:
[0040] LED数字样本图像预处理步骤包括:
[0041] A1:对LED字符图片进行标签标定,即对截取出来的单个字符进行类型标定,需要识别0-9,A,B,C以及不亮和异常字符,共分配14个标签,不亮和异常合并为同一类;
[0042] A2:对带标签的LED字符图片进行数据增广;
[0043] A3:将所有LED字符图片大小统一至48*48;
[0044] A4:对所有LED字符图片进行灰度化,只保留亮度信息;
[0045] A5:将所有灰度化后的LED字符图片进行数据打包封装,分成训练和测试两个数据包以供LED字符卷积神经网络模型训练测试。
[0046] 小数点样本图片预处理步骤包括:
[0047] B1:对LED字符图片进行标签标定,含有小数点的标签为1,不含小数点的标签为0;
[0048] B2:对带标签的LED字符图片进行数据增广;
[0049] B3:将所有LED字符图片大小统一至48*48;
[0050] B4:将48*48字符图片进行3*3切分,前八个切分区域必定不含小数点,在前8个区域内随机选取两个子区域,标签设为0,如果该LED图片含有小数点,则右下角的第9区域标签为1;其中,在前8个区域随机取2个是保证正负样本比例不会相差太大,随机取保证负样本的丰富性。
[0051] B5:将所有切分的小数点样本图片,即所有样本图片切分后的第9区域形成的正样本进行灰度化,只保留亮度信息;
[0052] B6:将所有的小数点样本图片进行封装打包,分成训练和测试两个数据包供小数点卷积神经网络模型训练测试。
[0053] 利用训练好的网络模型进行图片时:对待识别图像进行缩放和灰度化预处理(Resize+gray)后先输入所述LED字符卷积神经网络模型,然后对预处理后的待识别图像进行3x3切割,取第9区域送入小数点卷积神经网络模型,根据小数点出现检测识别成功的次序,确定小数点的位置,最后将LED字符卷积神经网络模型和小数点卷积神经网络模型识别结果进行拼接。例如12.34,小数点在第二个字符区域识别成功,则小数点位于第二位,最终拼接结果是(LED:1 2 3 4,Dot:2)->12.34。
[0054] LED字符卷积神经网络模型和小数点卷积神经网络模型均采用修正线单元(Relu,Rectified Linear Unit)作为非线性激活函数,对应地网络权重使用xavier方式,以保证网络能 够正 常 训练。其中 ,修正 线单 元为 权重 范围 为式中yi表示非线性激活函数值,xi表示函数变量,m,n分别代表网络层
输入和输出通道数。
[0055] 模型训练中采用能够自适应修改每个参数的学习率的Adam(Adaptive Moment Estimation)网络权值更新算法更新梯度的指数移动均值mt和平方梯度vt,更新规则为:
[0056]
[0057]
[0058]
[0059] 其中, 是对梯度的一阶矩估计,为对梯度的二阶矩估计,η为学习率,t表示更新时间步,β1、β2、ε为超参数,β1默认为0.9,β2默认为0.999,ε为默认为10e-8。
[0060] LED字符卷积神经网络模型包括4个卷积层、4个最大池化层以及2个全连接层构成,具体结构为:
[0061]Type Configutations Size
Input 48x48gray-scale image 48x48x1
Convolution #maps:20,k:3x3,s:1,p:1 48x48x20
MaxPooling Window:2x2,s:2 24x24x20
Convolution #maps:50,k:3x3,s:1,p:1 24x24x50
MaxPooling Window:2x2,s:2 12x12x50
Convolution #maps:128,k:3x3,s:1,p:1 12x12x128
MaxPooling Window:2x2,s:2 6x6x128
Convolution #maps:256,k:3x3,s:1 6x6x256
MaxPooling Window:2x2,s:2 3x3x256
Fully-Connection #maps:1024 1024x1
Fully-Connection #maps:14 14x1
[0062] 小数点卷积神经网络模型包括3个卷积层、1个最大池化层以及2个全连接层构成,具体结构为:
[0063]
[0064]
[0065] LED字符卷积神经网络模型和小数点卷积神经网络模型均采用Softmax损失作为网络权值更新的依据,Softmax损失函数为: 其中,T为网络类别数量,即网络输出的长度;yi为样本的标签值,是长度为T的向量;si为网络计算的预测值,是长度为T的向量; a为yi向量的单个元素值,j为a的序号,j=0代表yi向量中第0个元
素值。这里的Softmax是网络的计算损失,即以Softmax损失为判定标准,使用Adam算法对网络权值进行更新。
[0066] 在训练过程中不仅需要根据网络损失,同时也要依据网络当前预测准确率来判断网络的训练效果,具体为:
[0067]
[0068] 其中, 代表取标签yi向量的最大序号;标签与预测值比较前会进行向量化,假设类别数为14,标签3=[0,0,0,1,0,0,0,0,0,0,0,0,0,0],使用argmax可以取出标签3,序号从0开始。 代表取网络计算预测值si的最大可能标签值;
Accuracy表示准确率,BatchSize表示批大小。
[0069] 现有技术中,针对小数点定位识别,有分类和回归两种训练方式。分类:将含有小数点的图片样本设为1,不含小数点的图片样本设为0。回归:将小数点的图片样本中大小缩放至48*48,将小数点在图片中的坐标值作为标签数据。分类方法如果直接运用,训练识别效果都会非常差,因为小数点区域在整个LED字符图片中占比太小。而回归方法难以训练,很难应用。
[0070] 本发明将包含小数点的LED字符图片缩放到48*48的大小,然后进行3*3区域切分成9个16*16的子图片,小数点必定位于第9个切分区域。含有小数点的切分区域的标签设置为1,其他不含小数点的切分区域标签设置为0。将这些子图片送入CNN网络中训练,即把回归定位问题转换为分类问题。因为小数点和LED字符识别是两个不同的网络,所以模型识别结果不会互相干扰,在网络调试方面更加灵活。
[0071] 以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。