CN106446732B - 一种条形码的识别方法、装置及设备 - Google Patents
一种条形码的识别方法、装置及设备 Download PDFInfo
- Publication number
- CN106446732B CN106446732B CN201510496347.4A CN201510496347A CN106446732B CN 106446732 B CN106446732 B CN 106446732B CN 201510496347 A CN201510496347 A CN 201510496347A CN 106446732 B CN106446732 B CN 106446732B
- Authority
- CN
- China
- Prior art keywords
- bar code
- value
- digital
- result
- positional parameter
- 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.)
- Active
Links
Landscapes
- Character Discrimination (AREA)
- Character Input (AREA)
Abstract
本发明提供一种条形码的识别方法、装置及设备,涉及图像处理领域,为解决现有技术中不能准确识别具有条形码的模糊图像中的条形码的问题而发明。本发明的方法包括:获取一输入的具有条形码的图像;获取所述图像中条形码区域的条形码解码过程产生的第一值以及所述图像中数字区域的数字识别过程产生的第二值;获取所述第一值和第二值的和最小时对应的输出结果,并输出。本发明的方案可以对模糊图像中的条形码进行准确识别。
Description
技术领域
本发明涉及图像处理技术领域,特别是指一种条形码的识别方法、装置及设备。
背景技术
条形码是使机器读取数据的一项通用技术。目前,大多数的条形码都是使用激光扫描的方式来读取的,这种读取方式具有价格低廉和稳定的优点。但在一些特殊的场景下,激光扫描的方式并不能有效工作:比如读取任意方向的条形码或者同时读取多个条形码。在某些有难度的场景下激光扫描也无法达到好的性能,比如光照变化强烈时。
基于图像的条形码解码技术可以在某种程度上有效解决激光扫描读取方式存在的问题。它可以读取任意数量、任意摆放的条形码。在物流系统、商品验证等场合下可以大幅度提高效率。
基于图像的一维条形码识别技术可以大致分为以下的四个大类:
1)通过阈值二值化
这种方法将扫描线上的灰度,使用阈值或者动态阈值进行二值化,该方法对于模糊和噪声敏感。
2)边缘检测
这种方法使用Canny算子或者Hough Line检测边缘。它具有和阈值二值化方法一样的缺点:对模糊和噪声敏感。
3)基于统计的识别
基于统计学习的方法提取条形码的特征,并学习分类,因此对于噪声和模糊有一定鲁棒性,但这种方法的效果很大程度上取决于训练样本的数量和质量。
4)基于OCR(Optical Character Recognition,光学字符识别)的数字识别
大多数的条形码具有对应的数字区域,所以可以通过定位数字区域和识别数字来解码字符串。该方法丢失了条形码的信息,并且因为数字串不含校验位,因此无法确认所得到的结果的正确性。
基于图像的条形码识别任务的主要挑战就是由于图像模糊(比如由于对焦不准确)和非均匀的光照。现有技术中,没有一种对模糊图像中的条形码进行准确识别的方法。
发明内容
本发明要解决的技术问题是提供一种可以对模糊图像中的条形码进行准确识别的条形码的识别方法、装置及设备。
为解决上述技术问题,本发明的实施例提供一种条形码的识别方法,包括:
获取一输入的具有条形码的图像;
获取所述图像中条形码区域的条形码解码过程产生的第一值以及所述图像中数字区域的数字识别过程产生的第二值;其中,所述第一值表示所述条形码区域的条形码解码的仿真结果与所述条形码区域的条形码解码结果果之间的差值,所述第二值表示所述数字区域的数字识别仿真结果与所述数字区域的数字识别结果之间的差值;
获取所述第一值和第二值的和最小时对应的输出结果,并输出。
另一方面,本发明的实施例还提供一种条形码的识别装置,包括:
第一获取模块,用于获取一输入的具有条形码的图像;
第二获取模块,用于获取所述图像中条形码区域的条形码解码过程产生的第一值以及所述图像中数字区域的数字识别过程产生的第二值;其中,所述第一值表示所述条形码区域的条形码解码的仿真结果与所述条形码区域的条形码解码结果之间的差值,所述第二值表示所述数字区域的数字识别仿真结果与所述数字区域的数字识别结果之间的差值;
输出模块,用于获取所述第一值和第二值的和最小时对应的输出结果,并输出。
又一方面,本发明的实施例还提供一种设备,包括:
输入接口,用于获取一输入的具有条形码的图像;
处理器,用于获取所述图像中条形码区域的条形码解码过程产生的第一值以及所述图像中数字区域的数字识别过程产生的第二值;其中,所述第一值表示所述条形码区域的条形码解码的仿真结果与所述条形码区域的条形码解码结果之间的差值,所述第二值表示所述数字区域的数字识别仿真结果与所述数字区域的数字识别结果之间的差值;并获取所述第一值和第二值的和最小时对应的输出结果;
输出接口,用于输出所述处理器得到的输出结果。
本发明的上述技术方案的有益效果如下:
上述方案,通过获取所述图像中条形码区域的条形码解码过程产生的第一值以及所述图像中数字区域的数字识别过程产生的第二值;其中,所述第一值表示所述条形码区域的条形码解码的仿真结果与所述条形码区域的条形码解码结果之间的差值,所述第二值表示所述数字区域的数字识别仿真结果与所述数字区域的数字识别结果之间的差值;获取所述第一值和第二值的和最小时对应的输出结果,并输出;从而可以对模糊图像中的条形码进行准确识别。
附图说明
图1是根据本发明一个实施例的总体流程图。
图2是根据本发明一个实施例的解释模糊和非均匀光照对于图像上条形码解码任务带来难度的示意图。
图3是根据本发明一个实施例的解释基于图像的条形码解码任务可以将条形码区域和字符识别区域分开的示意图。
图4是根据本发明一个实施例的解释条形码和数字字符识别结果可以来交叉验证得到最终结果的示意图。
图5和图6是根据本发明一个实施例的解释通过联合优化条形码和数字字符识别,两个任务的结果都会变得更加准确的示意图。
图7是根据本发明一个实施例的条形码解码的流程示意图。
图8是根据本发明一个实施例的解释使用已知的条形码位来初始化模型参数的示意图。
图9是根据本发明一个实施例的解释通过模糊模型和光照模型产生仿真信号的示意图。
图10是根据本发明一个实施例的条形码的数字识别的流程示意图。
图11是根据本发明一个实施例的输出数字的每一位的流程图。
图12是根据本发明一个实施例的解释错误校正的示意图。
图13是根据本发明一个实施例的条形码的识别装置的示意图。
图14是根据本发明一个实施例的设备的示意图。
具体实施方式
为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
本发明针对现有技术中,无法对模糊图像中的条形码进行准确识别的问题,本发明的实施例同时结合OCR(Optical Character Recognition,光学字符识别)和条形码解码,当将条形码解码和OCR数字识别结合起来联合优化模型时,OCR数字识别和条形码解码都会变得更加准确。在具有条形码的一幅模糊图像中:条形码和数字字符都对应共同的数字串,可以使用交叉验证来得到最终的结果。更重要的原因是:OCR数字字符识别和条形码解码有一些共有的特性:相同的模糊参数和相关的光照分布。
第一实施例
如图1所示,本发明的实施例提供一种条形码的识别方法,包括:
步骤11,获取一输入的具有条形码的图像;其中,该图像可以是具有条形码的一幅模糊的图像;
步骤12,获取所述图像中条形码区域的条形码解码过程产生的第一值以及所述图像中数字区域的数字识别过程产生的第二值;其中,所述第一值表示所述条形码区域的条形码解码的仿真结果与所述条形码区域的条形码解码结果之间的差值,所述第二值表示所述数字区域的数字识别仿真结果与所述数字区域的数字识别结果之间的差值;
步骤13,获取所述第一值和第二值的和最小时对应的输出结果,并输出。
本发明的该实施例,通过获取所述图像中条形码区域的条形码解码过程产生的第一值以及所述图像中数字区域的数字识别过程产生的第二值;其中,所述第一值表示所述条形码区域的条形码解码的仿真结果与所述条形码区域的条形码解码结果之间的差值,所述第二值表示所述数字区域的数字识别仿真结果与所述数字区域的数字识别结果之间的差值;获取所述第一值和第二值的和最小时对应的输出结果,并输出;从而可以对模糊图像中的条形码进行准确识别。
图2是待解码的图像受到模糊和光照变化的影响的示意图。在图像拍摄过程中,相机有可能未能对焦到条形码区域,条形码中白色空隙和黑色条之间出现了模糊而很难准确检测到条形码的边缘。而光照对条形码的影响也很明显,如图2所述,光照从左到右渐渐增加。无论是传统基于图像的解码技术还是使用OCR数字识别,对于图2所示的条形码图像都很难准确提取信息。
图3是根据本发明一个实施例的解释基于图像的条形码解码任务可以将条形码区域和字符识别区域分开的示意图。大多数条形码包括:条形码区域31以及条形码区域下面对应的数字区域32,尤其是对于商品包装上印刷的条形码,利用OCR数字识别和条形码解码结合起来进行识别,可以提高识别的准确率。一个原因是两者均有相同的数字内容,可以通过交叉验证猜测到最终的结果。
图4是根据本发明一个实施例的解释条形码和数字字符识别结果可以来交叉验证得到最终结果的示意图。如果条形码识别结果或者数字字符识别结果因为噪声、模糊或者光斑有未能识别的数字,交叉验证可以得到最终的结果。
更为重要的是:OCR数字识别和条形码解码有一些共有的特性:首先,它们的模糊程度相同。因为大多数条形码的模糊是因为相机的未能对焦,而这种情况下整幅图像,无论是条形码区域还是数字区域,模糊程度都是相同的。其次,它们的光照模型是有一定关系的:如图3所示,条形码区域和数字区域均是由左向右依次变亮。当结合这两种方法联合优化模型,OCR数字识别和条形码解码都会变得更加准确。这对于模糊严重或者光照严重不均衡的情况时非常有用。
图5和图6是根据本发明一个实施例的解释通过联合优化条形码和数字字符识别,两个任务的结果都会变得更加准确的示意图。
图5所示的是条形码解码和数字识别的结果分别运算。由于解码时光照或者噪声的影响,各自结果中都有太多的位没有被正确解码。
图6所示的是结合条形码解码和数字识别,两种方法的结果都变得更加准确。具体来说,模糊和光照不均匀都会首先被建模。
之后,使用条形码部分和数字部分的信息来调整参数,分别猜测最终结果的每一位。
第二实施例
如图7所示,本发明的实施例提供一种条形码的识别方法,包括:
步骤21,获取一输入的具有条形码的图像;其中,该图像可以是具有条形码的一幅模糊的图像;
步骤22,获取所述图像中条形码区域的第一定位参数信息;
步骤23,根据所述第一定位参数信息,得到条形码解码过程产生的第一值;其中,所述第一值表示所述条形码区域的条形码解码的仿真结果与所述条形码区域的条形码解码结果之间的差值;
步骤24,获取所述图像中数字区域的数字识别过程产生的第二值;其中,所述第二值表示所述数字区域的数字识别仿真结果与所述数字区域的数字识别结果之间的差值;
步骤25,获取所述第一值和第二值的和最小时对应的输出结果,并输出。
该实施例中,步骤23和24并没有先后顺序的限定,二者可以是同时进行,且进一步的,该步骤23可以具体包括:
步骤231,根据所述第一定位参数信息,得到第一仿真信号;
步骤232,根据所述第一仿真信号与条形码区域的条形码解码过程得到的条形码解码结果,获得用于表示所述第一仿真信号与条形码解码结果之间差别的残差值,并将所述残差值作为所述第一值输出。
其中,步骤231中,可以根据公式:f3(x)=f1(x)+f2(x)得到第一仿真信号;
其中,f1(x)=G(x)×f4(x),G(x)为高斯核函数,σ用于控制高斯核的宽度,f2(x)为根据所述第一定位参数得到的光照模型函数,f4(x)为输入的条形码信号,f3(x)为第一仿真信号。
其中,步骤232中,可以根据公式:获得残差值;
其中,ebar为残差值,f5(x)为条形码解码过程得到的条形码解码结果,l为条形码数字串的长度。
而光照模型函数f2(x)具体可以通过以下步骤获得:
步骤2321,比较标准光照和输入光照,得到条形码的用于对条形码进行定位的第一定位参数,所述第一定位参数是所述条形码的守护位;
步骤2322,对所述守护位的光照值进行线性插值,得到条形码的其余部分的光照值;
步骤2323,根据所述守护位的光照值和其余部分的光照值,得到条形码的光照模型函数。
在上述实施例中,以条形码的编码规则为EAN-13编码规则来举例,如图8所示,对于具有条形码的模糊图像,一开始就能获得该条形码的守护位81,该守护位用于对条形码进行定位时使用,该守护位(guard bar)包括有11位黑白条。在获取模糊图像的光照模型函数时,可以利用该守护位的光照值进行模拟,如上述步骤2321、步骤2322以及步骤2323所示;利用该光照模型函数以及该模糊图像的模糊模型函数,如上述f1(x)=G(x)×f4(x),而该模型中,高斯核函数,可以是图像采集设备(如相机)的1D或者2D信号与高斯核卷积得到,而上述高斯核函数中,σ控制核的宽度,因此,可以使用使得上述残差最小的高斯核宽度。
上述实施例中,猜测每一位数字,对于0-9中的每个数字,通过模糊模型和光照模型产生仿真信号。图9是通过模糊模型和光照模型产生仿真信号的示意图;91是理想信号,92是使用较小的高斯核产生的仿真信号,93是使用较大的高斯核产生的仿真信号。
第三实施例
如图10所示,本发明的实施例提供一种条形码的识别方法,包括:
步骤101,获取一输入的具有条形码的图像;其中,该图像可以是具有条形码的一幅模糊的图像;
步骤102,获取所述图像中条形码区域的条形码解码过程产生的第一值;其中,所述第一值表示所述条形码区域的条形码解码与所述条形码区域的条形码解码结果的仿真结果之间的差值;
步骤103,获取所述图像中条形码的数字区域的第二定位参数信息;
步骤104,根据所述第二定位参数信息,得到数字识别过程产生的第二值;其中,所述第二值表示所述数字区域的数字识别仿真结果与所述数字区域的数字识别结果之间的差值;
步骤105,获取所述第一值和第二值的和最小时对应的输出结果,并输出。
该实施例中,步骤102和104并没有先后顺序的限定,二者可以同时进行。
该实施例中,步骤104具体可以包括:
步骤1041,根据所述第二定位参数信息,得到第二仿真信号;这里的第二定位参数和上述实施列中的第一定位参数信息可以是相同的,对于同一幅模糊图像来说,其中的条形码的定位参数信息如可以是上述实施例中的守护位或者与守护位相关的定位信息;
步骤1042,根据所述第二仿真信号与条形码的数字识别过程产生的输入数字图像信号,获得用于表示所述第二仿真信号与数字区域的数字识别结果之间差别的距离,并将所述距离作为所述第二值输出。
该实施例中,上述步骤1041中,具体可以根据公式:
f9(x,y)=f7(x,y)+f8(x)得到第二仿真信号;
其中,f7(x,y)=G(x,y)×f6(x,y),
其中,G(x,y)为高斯核函数,σ用于控制高斯核的宽度,f8(x)为根据所述第二定位参数得到的光照模型函数,f6(x,y)为输入的数字模板信号,f9(x,y)为第二仿真信号。这里的光照模型函数f8(x),可以认为是光照沿X轴方向变化情况的函数,Y轴方向的光照情况不变;也可以是只考虑条形码的X轴方向的光照,如条形码数字串的长度方向的光照情况。
该实施例中,步骤1042中,具体可以根据公式:
获得
所述距离;
其中,edigit为距离值,f10(x,y)为条形码的数字识别过程产生的数字识别结果,l是条形码数字串的长度。
该实施例中,第二仿真信号同样如图9所示,其中,91是理想信号,92是使用较小的高斯核产生的仿真信号,93是使用较大的高斯核产生的仿真信号。
第四实施例
如图11所示,本发明的实施例提供一种条形码的识别方法,包括:
步骤111,获取一输入的具有条形码的图像;其中,该图像可以是具有条形码的一幅模糊的图像;
对于条形码解码过程:
步骤112,获取所述图像中条形码的第一定位参数信息以及所述图像中条形码的数字区域的第二定位参数信息;
步骤113,根据第一定位参数信息以及输入的条形码信号,产生第一仿真信号;
步骤114,根据第一仿真信号以及输入条形码信号,得到条形码的残差,将该残差作为第一值;其中,所述第一值表示所述条形码区域的条形码解码的仿真结果与所述条形码区域的条形码解码结果之间的差值;
对于条形码的数字识别过程:
步骤115,根据第二定位参数信息以及输入的数字模板,产生第二信真信号;
步骤116,根据第二信真信号以及输入数字图像,得到距离,将该距离作为第二值;其中,所述第二值表示所述数字区域的数字识别仿真结果与所述数字区域的数字识别结果之间的差值;
步骤117,对所述第一值和第二值求和或者加权和,得到第三值;
步骤118,获取所述第三值最小时对应的输出结果。
该实施例中,猜测每一位数字时,任何带有先验的分类器都可以用来做OCR数字识别。一种简单的方式是模板匹配。对于0-9数字中的每一个模板,可以使用模糊和光照模型作用在原始模板中产生第二仿真信号,然后计算真实输入的数字图像信号与第二仿真信号之间的距离edigit。这里选取K近邻来增加鲁棒性。原始输入模板和仿真之后的模板都保存起来当作近邻的候选数据库样本。最后,总误差(即第三值)最小时的数字当作猜测得到的数字。
第五实施例
该第五实施例包括上述第四实施例的所有步骤,在输出数字之后,还可以进一步包括:
步骤119,对输出的结果数字进行校验,如果得到的校验结果与条形码的校验位数字不匹配,则对输出的数字进行错误纠正。
该步骤119中,对输出的数字进行错误纠正的步骤包括:
步骤1191,获取每个输出的数字对应的所述第三值;
步骤1192,对所述第三值大于一预设值的一个或者多个错误数字进行替换,并获取替换后数字的第三值;
步骤1193,根据替换后数字的第三值,得到替换后数字的置信度,所述置信度表示所述替换后的输出数字与正确的数字的接近程度;
步骤1194,若所述置信度高于一预设阈值,则输出替换后的数字。
该实施例中,根据公式:得到替换后数字的置信度;
其中,C为置信度,etotal为是经过错误数字校正后的误差,btotal为没有进行错误数字校正时的误差,l是条形码数字串的长度,为第三值。
如图12所示,假如经过图11所示的流程,识别出来的条形码对应的数字串为6,9,1,7,5,6,8,1,9,1,2,3,4,每一位数字一起来计算校验和。如果检验和不匹配,解码得到的数字串中必然有一位或者几位错误。本实施例中,可以将其中最有可能出错的数字用候选数字来代替,代替的方法是满足使替换之后所新增的误差最小。
如图12所示,而针对该数字串中的每一位数字对应的第三值,即该数字与正确的数字之间的误差分别为0.3,0.2,0.3,.06,.03,0.2,0.5,0.3,0.3,0.1,0.3,0.2,0.4,该数字串的总误差为4.0;其中,第4位数字7以及第7位数字8以及第11位数字2的误差较大,因此,可以对数字第4位数字、第7位数字和/或第11位数字进行替换;如可以将第4位数字的数字7替换为1进行校验运算,也可同时将第7位数字8替换为6进行校验运算,依次类推,多个可以进行替换的数字可以分别进行替换后进行校验运算,也可以同时替换后进行校验运算,也可以部分替换后进行校验运算,只要满足替换之后所新增的误差最小且校验成功。
本发明的上述实施例通过将条形码解码和OCR数字识别结合起来联合优化模型时,使OCR数字识别和条形码解码都会变得更加准确。
第六实施例
如图13所示,本发明的实施例还提供一种条形码的识别装置130,包括:
第一获取模块131,用于获取一输入的具有条形码的图像;
第二获取模块132,用于获取所述图像中条形码区域的条形码解码过程产生的第一值以及所述图像中数字区域的数字识别过程产生的第二值;其中,所述第一值表示所述条形码区域的条形码解码的仿真结果与所述条形码区域的条形码解码结果之间的差值,所述第二值表示所述数字区域的数字识别仿真结果与所述数字区域的数字识别结果之间的差值;
输出模块133,用于获取所述第一值和第二值的和最小时对应的输出结果,并输出。
其中,所述第二获取模块包括:
解码子模块,用于获取所述图像中条形码区域的第一定位参数信息;根据所述第一定位参数信息,得到条形码解码过程产生的第一值。
其中,所述第二获取模块还包括:
识别子模块,用于获取所述图像中条形码的数字区域的第二定位参数信息;根据所述第二定位参数信息,得到数字识别过程产生的第二值。
需要说明的是,上述所有方法实施例的具体实现方式均适用于该装置的实施例中,也能相同的技术效果。
第七实施例
如图14所示,本发明的实施例还提供一种设备,包括:
输入接口141,用于获取一输入的具有条形码的图像;
处理器142,用于获取所述图像中条形码区域的条形码解码过程产生的第一值以及所述图像中数字区域的数字识别过程产生的第二值;其中,所述第一值表示所述条形码区域的条形码解码的仿真结果与所述条形码区域的条形码解码结果之间的差值,所述第二值表示所述数字区域的数字识别仿真结果与所述数字区域的数字识别结果之间的差值;并获取所述第一值和第二值的和最小时对应的输出结果;
输出接口143,用于输出所述处理器得到的输出结果。
处理器142通过总线接口与输入接口141以及输出接口143连接。总线接口可以是可以包括任意数量的互联的总线和桥;总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其它电路连接在一起,这些都是本领域所公知的。因此,本文不再对其进行详细描述。
需要说明的是,上述方法实施例的所有实现方式均可以适用于该设备的实施例中,也能达到相同的技术效果,该实施例中的设备如可以是任何一种条形码识别的设备。
以上结合具体实施例描述了本发明的基本原理,但是,需要指出的是,对本领域的普通技术人员而言,能够理解本发明的方法和装置的全部或者任何步骤或者部件,可以在任何计算装置(包括处理器、存储介质等)或者计算装置的网络中,以硬件、固件、软件或者它们的组合加以实现,这是本领域普通技术人员在阅读了本发明的说明的情况下运用他们的基本编程技能就能实现的。
因此,本发明的目的还可以通过在任何计算装置上运行一个程序或者一组程序来实现。所述计算装置可以是公知的通用装置。因此,本发明的目的也可以仅仅通过提供包含实现所述方法或者装置的程序代码的程序产品来实现。也就是说,这样的程序产品也构成本发明,并且存储有这样的程序产品的存储介质也构成本发明。显然,所述存储介质可以是任何公知的存储介质或者将来所开发出来的任何存储介质。
还需要指出的是,在本发明的装置和方法中,显然,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本发明的等效方案。并且,执行上述系列处理的步骤可以自然地按照说明的顺序按时间顺序执行,但是并不需要一定按照时间顺序执行。某些步骤可以并行或彼此独立地执行。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
Claims (19)
1.一种条形码的识别方法,其特征在于,包括:
获取一输入的具有条形码的图像;
获取所述图像中条形码区域的条形码解码过程产生的第一值以及所述图像中数字区域的数字识别过程产生的第二值;其中,所述第一值表示所述条形码区域的条形码解码的仿真结果与所述条形码区域的条形码解码结果之间的差值,所述第二值表示所述数字区域的数字识别仿真结果与所述数字区域的数字识别结果之间的差值;
获取所述第一值和第二值的和最小时对应的输出结果,并输出。
2.根据权利要求1所述的条形码的识别方法,其特征在于,获取所述图像中条形码区域的条形码解码过程产生的第一值的步骤包括:
获取所述图像中条形码区域的第一定位参数信息;
根据所述第一定位参数信息,得到条形码解码过程产生的第一值。
3.根据权利要求2所述的条形码的识别方法,其特征在于,根据所述第一定位参数信息,得到条形码解码过程产生的第一值的步骤包括:
根据所述第一定位参数信息,得到第一仿真信号;
根据所述第一仿真信号与所述条形码区域的条形码解码过程得到的条形码解码结果,获得用于表示所述第一仿真信号与所述条形码解码结果之间差别的残差值,并将所述残差值作为所述第一值输出。
4.根据权利要求3所述的条形码的识别方法,其特征在于,根据所述第一定位参数信息,得到第一仿真信号的步骤包括:
根据公式:f3(x)=f1(x)+f2(x)得到第一仿真信号;
其中,f1(x)=G(x)×f4(x),G(x)为高斯核函数,σ用于控制高斯核的宽度,f2(x)为根据所述第一定位参数得到的光照模型函数,f4(x)为输入的条形码信号,f3(x)为第一仿真信号。
5.根据权利要求4所述的条形码的识别方法,其特征在于,根据所述第一仿真信号与条形码解码过程得到的条形码解码结果,获得用于表示所述第一仿真信号与所述条形码解码结果之间差别的残差值的步骤包括:
根据公式:获得残差值;
其中,ebar为残差值,f5(x)为条形码解码过程得到的条形码解码结果,l为条形码数字串的长度。
6.根据权利要求4所述的条形码的识别方法,其特征在于,根据所述第一定位参数得到光照模型函数的步骤包括:
比较标准光照和输入光照,得到条形码的用于对条形码进行定位的第一定位参数,所述第一定位参数是所述条形码的守护位;
对所述守护位的光照值进行线性插值,得到条形码的其余部分的光照值;
根据所述守护位的光照值和其余部分的光照值,得到条形码的光照模型函数。
7.根据权利要求1所述的条形码的识别方法,其特征在于,获取所述图像中数字区域的数字识别过程产生的第二值的步骤包括:
获取所述图像中条形码的数字区域的第二定位参数信息;
根据所述第二定位参数信息,得到数字识别过程产生的第二值。
8.根据权利要求7所述的条形码的识别方法,其特征在于,根据所述第二定位参数信息,得到数字识别过程产生的第二值的步骤包括:
根据所述第二定位参数信息,得到第二仿真信号;
根据所述第二仿真信号与条形码的数字区域的数字识别过程产生的数字识别结果,获得用于表示所述第二仿真信号与所述数字识别结果之间差别的距离,并将所述距离作为所述第二值输出。
9.根据权利要求8所述的条形码的识别方法,其特征在于,根据所述第二定位参数信息,得到第二仿真信号的步骤包括:
根据公式:f9(x,y)=f7(x,y)+f8(x)得到第二仿真信号;
其中,f7(x,y)=G(x,y)×f6(x,y),
其中,G(x,y)为高斯核函数,σ用于控制高斯核的宽度,f8(x)为根据所述第二定位参数得到的光照模型函数,f6(x,y)为输入的数字模板信号,f9(x,y)为第二仿真信号。
10.根据权利要求8所述的条形码的识别方法,其特征在于,根据所述第二仿真信号与条形码的数字区域的数字识别过程产生的数字识别结果,获得用于表示所述第二仿真信号与所述数字识别结果之间差别的距离的步骤包括:
根据公式:获得用于表示所述第二仿真信号与所述数字识别结果之间差别的距离;
其中,edigit为距离值,f10(x,y)为条形码的数字区域的数字识别过程产生的数字识别结果,l是条形码数字串的长度。
11.根据权利要求1所述的条形码的识别方法,其特征在于,获取所述第一值和第二值的和最小时对应的输出结果的步骤包括:
对所述第一值和第二值求和或者加权和,得到第三值;
获取所述第三值最小时对应的输出结果。
12.根据权利要求11所述的条形码的识别方法,其特征在于,获取所述第一值和第二值的和最小时对应的输出结果的步骤之后,还包括:
对输出的数字进行校验,如果得到的校验结果与条形码的校验位数字不匹配,则对输出的数字进行错误纠正。
13.根据权利要求12所述的条形码的识别方法,其特征在于,对输出的数字进行错误纠正的步骤包括:
获取每个输出的数字对应的所述第三值;
对所述第三值大于一预设值的一个或者多个错误数字进行替换,并获取替换后数字的第三值;
根据替换后数字的第三值,得到替换后数字的置信度,所述置信度表示所述替换后的输出数字与正确的数字的接近程度;
若所述置信度高于一预设阈值,则输出替换后的数字。
14.根据权利要求13所述的条形码的识别方法,其特征在于,根据替换后数字的第三值,得到替换后数字的置信度的步骤包括:
根据公式:得到替换后数字的置信度;
其中,C为置信度,etotal为是经过错误数字校正后的误差,btotal为没有进行错误数字校正时的误差,l是条形码数字串的长度。
15.根据权利要求1所述的条形码的识别方法,其特征在于,所述图像中数字区域的数字识别过程采用光学字符识别OCR的方法进行识别。
16.一种条形码的识别装置,其特征在于,包括:
第一获取模块,用于获取一输入的具有条形码的图像;
第二获取模块,用于获取所述图像中条形码区域的条形码解码过程产生的第一值以及所述图像中数字区域的数字识别过程产生的第二值;其中,所述第一值表示所述条形码区域的条形码解码的仿真结果与所述条形码区域的条形码解码结果之间的差值,所述第二值表示所述数字区域的数字识别仿真结果与所述数字区域的数字识别结果之间的差值;
输出模块,用于获取所述第一值和第二值的和最小时对应的输出结果,并输出。
17.根据权利要求16所述的条形码的识别装置,其特征在于,所述第二获取模块包括:
解码子模块,用于获取所述图像中条形码区域的第一定位参数信息;根据所述第一定位参数信息,得到条形码解码过程产生的第一值。
18.根据权利要求17所述的条形码的识别装置,其特征在于,所述第二获取模块还包括:
识别子模块,用于获取所述图像中条形码的数字区域的第二定位参数信息;根据所述第二定位参数信息,得到数字识别过程产生的第二值。
19.一种条形码的识别设备,其特征在于,包括:
输入接口,用于获取一输入的具有条形码的图像;
处理器,用于获取所述图像中条形码区域的条形码解码过程产生的第一值以及所述图像中数字区域的数字识别过程产生的第二值;其中,所述第一值表示所述条形码区域的条形码解码的仿真结果与所述条形码区域的条形码解码结果之间的差值,所述第二值表示所述数字区域的数字识别仿真结果与所述数字区域的数字识别结果之间的差值;并获取所述第一值和第二值的和最小时对应的输出结果;
输出接口,用于输出所述处理器得到的输出结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510496347.4A CN106446732B (zh) | 2015-08-13 | 2015-08-13 | 一种条形码的识别方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510496347.4A CN106446732B (zh) | 2015-08-13 | 2015-08-13 | 一种条形码的识别方法、装置及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106446732A CN106446732A (zh) | 2017-02-22 |
CN106446732B true CN106446732B (zh) | 2019-05-07 |
Family
ID=58092676
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510496347.4A Active CN106446732B (zh) | 2015-08-13 | 2015-08-13 | 一种条形码的识别方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106446732B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
BE1029610B1 (de) * | 2021-08-05 | 2023-09-07 | Zebra Technologies | Systeme und Verfahren zum Verbessern einer Performanz einer trainierbaren optischen Zeichenerkennung (OCR) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107132026B (zh) * | 2017-04-11 | 2019-04-30 | 上海汇尔通信息技术有限公司 | 扫描设备支持的最低显示设备背光亮度的测试方法及系统 |
CN107609448B (zh) * | 2017-08-28 | 2020-10-20 | 苏州佳世达电通有限公司 | 条码解码方法以及条码解码装置 |
CN110874538B (zh) * | 2018-08-29 | 2023-06-02 | 杭州海康威视数字技术股份有限公司 | 对条形码的译码结果的评测方法、装置及电子设备 |
CN110428027B (zh) * | 2019-07-22 | 2023-06-23 | 杭州沃朴物联科技有限公司 | 基于lcd防伪标签的识别验伪方法、装置、设备及介质 |
CN111144161A (zh) * | 2020-04-03 | 2020-05-12 | 支付宝(杭州)信息技术有限公司 | 条形码的识别方法及装置、商品信息确定方法及支付方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1848136A (zh) * | 2005-04-13 | 2006-10-18 | 摩托罗拉公司 | 对条形码图像解码的方法和系统 |
CN101093547A (zh) * | 2007-05-18 | 2007-12-26 | 上海邮政科学研究院 | 基于高度参数的条码和数字协同识别物品的方法 |
CN101474064A (zh) * | 2008-09-18 | 2009-07-08 | 中国计量学院机电工程学院 | 电子体温计检定方法及装置 |
CN102354363A (zh) * | 2011-09-15 | 2012-02-15 | 西北工业大学 | 高反光柱面金属上的二维条码图像识别方法 |
CN102682264A (zh) * | 2011-01-31 | 2012-09-19 | 霍尼韦尔国际公司 | 用于使用多个数据源来读取光学标记的方法和设备 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070063043A1 (en) * | 2005-09-21 | 2007-03-22 | Intermec Ip Corp. | Optoelectronic reader and method for reading machine-readable symbols |
-
2015
- 2015-08-13 CN CN201510496347.4A patent/CN106446732B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1848136A (zh) * | 2005-04-13 | 2006-10-18 | 摩托罗拉公司 | 对条形码图像解码的方法和系统 |
CN101093547A (zh) * | 2007-05-18 | 2007-12-26 | 上海邮政科学研究院 | 基于高度参数的条码和数字协同识别物品的方法 |
CN101474064A (zh) * | 2008-09-18 | 2009-07-08 | 中国计量学院机电工程学院 | 电子体温计检定方法及装置 |
CN102682264A (zh) * | 2011-01-31 | 2012-09-19 | 霍尼韦尔国际公司 | 用于使用多个数据源来读取光学标记的方法和设备 |
CN102354363A (zh) * | 2011-09-15 | 2012-02-15 | 西北工业大学 | 高反光柱面金属上的二维条码图像识别方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
BE1029610B1 (de) * | 2021-08-05 | 2023-09-07 | Zebra Technologies | Systeme und Verfahren zum Verbessern einer Performanz einer trainierbaren optischen Zeichenerkennung (OCR) |
Also Published As
Publication number | Publication date |
---|---|
CN106446732A (zh) | 2017-02-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106446732B (zh) | 一种条形码的识别方法、装置及设备 | |
US8550351B2 (en) | Matrix type two-dimensional barcode decoding chip and decoding method thereof | |
CN103034831B (zh) | 线性条码识别方法和系统 | |
US8550352B2 (en) | QR barcode decoding chip and decoding method thereof | |
Liu et al. | Recognition of QR Code with mobile phones | |
Belussi et al. | Fast QR code detection in arbitrarily acquired images | |
EP2393037B1 (en) | Data matrix decoding chip and decoding method thereof | |
US9361499B2 (en) | Barcode decoding | |
CN111783495B (zh) | 一种条形码识别方法、装置、电子设备及存储介质 | |
CN111767754B (zh) | 一种识别码的识别方法、装置、电子设备及存储介质 | |
CN109426756B (zh) | 一种条码识别结果的查错方法及装置 | |
CN107403179A (zh) | 一种物品包装信息的注册方法及装置 | |
Aberdam et al. | Clipter: Looking at the bigger picture in scene text recognition | |
CN118428382B (zh) | 条形码识别方法、终端及系统 | |
CN103034830B (zh) | 条码解码方法及装置 | |
CN101923632B (zh) | Maxi Code条码解码芯片及其解码方法 | |
CN114021596A (zh) | 一种基于深度学习的条码识别方法及装置 | |
CN104217189A (zh) | 一种用于试纸条的条形码的自学习识别方法 | |
Tian et al. | BAN, a barcode accurate detection network | |
JP7427427B2 (ja) | 解像度不足のシンボルをデコードするための方法と装置 | |
JP6511942B2 (ja) | 情報処理装置および情報処理プログラム | |
Chen et al. | Multi Barcode Scanning and Decoding Technology Based on AR Smart Glasses. | |
KR102682942B1 (ko) | 바코드 이미지 식별 방법 및 그 장치 | |
Wu et al. | A Distortion Rectification Method for Distorted QR Code Images Based on Self-Adapting Structural Element | |
CN110555498A (zh) | 二维码的生成方法、装置、电子设备、存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |