一种基于改进多层感知机的药品字符标签的识别方法

文档序号:1738164 发布日期:2019-12-20 浏览:5次 >En<

阅读说明:本技术 一种基于改进多层感知机的药品字符标签的识别方法 (Medicine character label identification method based on improved multilayer perceptron ) 是由 吴健 于 2019-08-01 设计创作,主要内容包括:本发明涉及机器视觉学习领域,更具体地,涉及一种基于改进多层感知机的药品字符标签的识别方法。包括以下步骤:选取药瓶的字符标签,选取出字符标签中需要识别的区域;将待识别的区域以相片的形式进行预处理,定位目标区域;对目标区域进行划分,将目标区域中字符进行切割,将切割后的字符作为标签字符的数据集;构建多层感知机;将数据集输入到多层感知机中,得到最终的识别结果。本发明改进过的的多层感知机相比于传统的能防止陷入局部极小,寻得最优解。通过对多层感知机引入droupout以解决过拟合问题,引入使用动量的随机梯度下降以防止陷入局部极小的问题,引入ReLU解决梯度弥散的问题;相比于模板匹配法,有着较高的识别率和泛化能力。(The invention relates to the field of machine vision learning, in particular to a medicine character label identification method based on an improved multilayer perceptron. The method comprises the following steps: selecting a character label of the medicine bottle, and selecting an area needing to be identified in the character label; preprocessing an area to be identified in a photo form, and positioning a target area; dividing a target area, cutting characters in the target area, and taking the cut characters as a data set of label characters; constructing a multilayer perceptron; and inputting the data set into a multi-layer perceptron to obtain a final recognition result. Compared with the traditional method, the improved multilayer perceptron can prevent from being trapped into local minimum and find the optimal solution. The problem of overfitting is solved by introducing droupout to the multilayer perceptron, the problem of using random gradient decline of momentum to prevent local minimum is introduced, and the problem of gradient dispersion is solved by introducing ReLU; compared with a template matching method, the method has higher recognition rate and generalization capability.)

一种基于改进多层感知机的药品字符标签的识别方法

技术领域

本发明涉及机器视觉学习领域,更具体地,涉及一种基于改进多层感知机的药品字符标签的识别方法。

背景技术

机器视觉作为一门新兴的学科,近20年来一直以迅猛的速度进行发展,并且机器视觉的发展阶段已经由实验研究走向了实际应用,得到了广泛的工业应用。

药品在我们的日常生活中起到了举足轻重的作用,密切关系着我们的生活,关系着人们的健康甚至是生命健康安全。其中国家规定,在药品上必须表明产品批号、生产日期、有效期这三项内容,而且这三项内容是药品使用安全性的一方面,一般是使用一组***数字或者数字加字母加汉字的形式来标识。国家药品管理部门对药厂及药品的检测要求也越来越严格。其中对药品、药品包装的视觉检测和分析是药品检测的重要手段之一。视觉检测作为机器视觉的一种,将其用在药品标签字符的识别上,可以提高生产效率和减少次品率。现有的对于药品标签识别是运用传统的模板匹配法进行识别,其局限性也非常明显,识别准确率不高,泛化能力差,这些都是字符标签识别的瓶颈所在。

发明内容

为了解决现有技术中机器视觉对于药品标签识别准确率不高,泛化能力差的不足,本发明提供了一种基于改进多层感知机的药品字符标签的识别方法。

一种基于改进多层感知机的药品字符标签的识别方法,包括以下步骤:

步骤S1:选取药瓶的字符标签,选取出字符标签中需要识别的区域;

步骤S2:将待识别的区域以相片的形式进行预处理,定位目标区域;

步骤S3:对目标区域进行划分,将目标区域中字符进行切割,将切割后的字符作为标签字符的数据集;

步骤S4:构建多层感知机,使用传统多层感知机作为基础,对其引入droupout以解决过拟合问题,引入使用动量的随机梯度下降以防止陷入局部极小的问题,引入ReLU解决梯度弥散的问题;

步骤S5:将步骤S3中的数据集输入到多层感知机中进行训练以及测试。

优选的,步骤S2中图像预处理的过程包括对图像进行翻转,去噪,灰度化以及二值化处理。

优选的,所述步骤S3中切割出来的每一张字符都需采取归一化操作,保持一样的大小和格式,并且给定对应的标签。

优选的,根据权利要求1所述的基于改进感知机的标签字符识别方法,其特征在于,所述步骤S4中,引入的Droupout结构,每个节点消失的概率:

其中,A为当前迭代次数,a为当前该节点消失的次数。

优选的,步骤S4引入的ReLU解决弥散的问题,即替换感知机的激活函数为一个非线性函数y=max(0,x)。

优选的,步骤S4引入的引入使用动量的随机梯度下降,其公式如下:

计算速度更新:v:=αv-∈g

计算应用更新:θ:=θ+v

其中,学习率∈,初始参数θ,动量参数α,初始速度v,梯度g。

优选的,在步骤S5中,将步骤S3中得到的数据集划分为训练集,验证集以及测试集,先将训练集的数据输入到多层感知机中进行训练,训练集采用反向传播来更新多层感知机的参数,在训练期间输入验证集进行多层感知机超参数的微调,多层感知机训练完毕后,利用测试集对多层感知机的性能进行测试,最后选择性能最佳的多层感知机进行药品标签的测试,验证其泛化能力。

优选的,数据集以比例5:1:1划分为训练集,验证集以及测试集。

与现有技术相比,本发明技术方案的有益效果是:

本发明改进过的的多层感知机相比于传统的能防止陷入局部极小,寻得最优解。通过对多层感知机引入droupout以解决过拟合问题,引入使用动量的随机梯度下降以防止陷入局部极小的问题,引入ReLU解决梯度弥散的问题;相比于模板匹配法,有着较高的识别率和泛化能力。

附图说明

图1为本发明的步骤流程图。

图2为实施例2中切割出来的待识别的字符。

具体实施方式

附图仅用于示例性说明,不能理解为对本专利的限制;

为了更好说明本实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;

对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。

下面结合附图和实施例对本发明的技术方案做进一步的说明。

实施例1

如图1所示,一种基于改进多层感知机的药品字符标签的识别方法,包括以下步骤:

步骤S1:选取药瓶的字符标签,选取出字符标签中需要识别的区域;

步骤S2:将待识别的区域以相片的形式进行预处理,定位目标区域;

步骤S3:对目标区域进行划分,将目标区域中字符进行切割,将切割后的字符作为标签字符的数据集;

步骤S4:构建多层感知机,使用传统多层感知机作为基础,对其引入droupout以解决过拟合问题,引入使用动量的随机梯度下降以防止陷入局部极小的问题,引入ReLU解决梯度弥散的问题;

步骤S5:将步骤S3中的数据集输入到多层感知机中进行训练以及测试。

优选的,步骤S2中图像预处理的过程包括对图像进行翻转,去噪,灰度化以及二值化处理。

优选的,所述步骤S3中切割出来的每一张字符都需采取归一化操作,保持一样的大小和格式,并且给定对应的标签。

优选的,根据权利要求1所述的基于改进感知机的标签字符识别方法,其特征在于,所述步骤S4中,引入的Droupout结构,每个节点消失的概率:

其中,A为当前迭代次数,a为当前该节点消失的次数。

优选的,步骤S4引入的ReLU解决弥散的问题,即替换感知机的激活函数为一个非线性函数y=max(0,x)。

优选的,步骤S4引入的引入使用动量的随机梯度下降,其公式如下:

计算速度更新:v:=αv-∈g

计算应用更新:θ:=θ+v

其中,学习率∈,初始参数θ,动量参数α,初始速度v,梯度g。

优选的,在步骤S5中,将步骤S3中得到的数据集划分为训练集,验证集以及测试集,先将训练集的数据输入到多层感知机中进行训练,训练集采用反向传播来更新多层感知机的参数,在训练期间输入验证集进行多层感知机超参数的微调,多层感知机训练完毕后,利用测试集对多层感知机的性能进行测试,最后选择性能最佳的多层感知机进行药品标签的测试,验证其泛化能力。

优选的,数据集以比例5:1:1划分为训练集,验证集以及测试集。

实施例2

如图1以及图2所示,如附图1和2所示,本发明揭示了一种基于改进感知机的药品标签识别的方法,包括以下步骤:

S1:以实际需求为出发,将待识别的区域以相片的形式进行图片预处理,包括图像翻转,去噪,灰度化,二值化,然后对目标区域进行定位,将目标区域进行划分,利用算法将目标区域的字符进行切割出来作为标签字符的数据集,标签的数据集又分为训练集、验证机和测试集;

如图2所述,为切割出来的标签字符。本发明的数据集字母,符号分为

大写字母A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,Y;

小写字母a,b,c,d,e,f,g,h,I,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;

数字1,2,3,4,5,6,7,8,9,0,标签字符为上述字符的组合。条件允许的情况下,数据集大小应该是越大越好,数据集越大对于训练会有帮助。在实际中,数据集的制作方法不局限于本方法,可使用别的方法来制作数据。

S2:所述步骤S1算法分割出来的每一张字符都需采取归一化操作,保持一样的大小和格式,并且给定对应的标签,所述步骤S1的数据集分为训练集、验证集和测试集比例约为5:1:1。

S3:利用步骤S2所述改进的感知机对于S1制作的数据集进行测试,实现药品上标签字符的识别改进;

感知机引入的Droupout结构,每个节点消失的概率P=

0.5-a/2A(a>=0.5A),

0.5+(0.5-a/4A)(a<0.5A)

其中A为当前迭代次数,a为当前该节点消失的次数。即每个节点消失概率设置为0.5,随着节点消失越多,起赋予的消失概率越低。随着迭代次数上升,节点消失次数小于均值时,赋予其消失的概率也就越高。保证了每个节点能够尽量平均的进行丢失;

引入的ReLU解决弥散问题。即替换感知机的激活函数为一个简单的非线性函数,

引入使用动量的随机梯度下降(SGDM)以防止陷入局部极小。其公式如下:

计算速度更新:v:=αv-∈g

计算应用更新:θ:=θ+v

其中,学习率∈,初始参数θ,动量参数α,初始速度v,梯度g。

相同或相似的标号对应相同或相似的部件;

附图中描述位置关系的用语仅用于示例性说明,不能理解为对本专利的限制;

显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。

7页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种基于深度学习的椭圆识别方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!