CN112733568A - 一维条码识别方法、装置、设备及存储介质 - Google Patents
一维条码识别方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN112733568A CN112733568A CN202110082399.2A CN202110082399A CN112733568A CN 112733568 A CN112733568 A CN 112733568A CN 202110082399 A CN202110082399 A CN 202110082399A CN 112733568 A CN112733568 A CN 112733568A
- Authority
- CN
- China
- Prior art keywords
- character
- bar code
- recognition
- recognition result
- result
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 69
- 230000011218 segmentation Effects 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 3
- 238000003709 image segmentation Methods 0.000 description 3
- 238000012015 optical character recognition Methods 0.000 description 3
- 238000001579 optical reflectometry Methods 0.000 description 2
- 238000002310 reflectometry Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/14—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
- G06K7/1404—Methods for optical code recognition
- G06K7/1408—Methods for optical code recognition the method being specifically adapted for the type of code
- G06K7/1413—1D bar codes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/22—Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- Electromagnetism (AREA)
- General Health & Medical Sciences (AREA)
- Toxicology (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Character Discrimination (AREA)
Abstract
本发明实施例公开了一种一维条码识别方法、装置、设备及存储介质,该方法包括:将待识别的一维条码图像沿预设方向分割为包含字符信息的字符图像以及包含条码信息的至少两个条码图像;对每个条码图像进行条码识别,并在条码识别过程中检测到条码识别失败的字符位时,将该字符位的识别结果标识为预设标识符,以得到该至少两个条码图像对应的至少两个条码识别结果;对字符图像进行字符识别,并在字符识别过程中检测到字符识别失败的字符位时,将该字符位的识别结果标识为预设标识符,以得到字符识别结果;根据字符识别结果与至少两个条码识别结果,确定并输出一维条码图像的目标识别结果。解决了现有技术无法对一维条码进行准确识别的问题。
Description
技术领域
本发明实施例涉及计算机程序领域,尤其涉及一种一维条码识别方法、装置、设备及存储介质。
背景技术
目前,快递电子面单上通常打印有一维条码,快递员或收件人通常通过PDA或手机扫描一维条形码来获取对应快递的运输信息。随着快递业务的迅猛发展,快递运输过程中的不可控因素越来越多,因此快递件的电子面单发生损坏、部分覆盖、折叠等情况时有发生。
发明人在实现本发明实施例的过程中发现,电子面单一旦出现损坏、部分覆盖或折叠等情况,就无法对一维条码进行准确识别。
发明内容
本发明实施例提供了一种一维条码识别方法、装置、设备及存储介质,以解决了现有技术无法对一维条码进行准确识别的问题。
第一方面,本发明实施例提供了一种一维条码识别方法,包括:
将待识别的一维条码图像沿预设方向分割为包含字符信息的字符图像以及包含条码信息的至少两个条码图像,所述预设方向垂直于条空排列方向;
对每个所述条码图像进行条码识别,并在条码识别过程中检测到条码识别失败的字符位时,将该字符位的识别结果标识为预设标识符,以得到该至少两个条码图像对应的至少两个条码识别结果;
对所述字符图像进行字符识别,并在字符识别过程中检测到字符识别失败的字符位时,将该字符位的识别结果标识为预设标识符,以得到字符识别结果;
根据所述字符识别结果与所述至少两个条码识别结果,确定并输出所述一维条码图像的目标识别结果。
第二方面,本发明实施例还提供了一种一维条码识别装置,包括:
分割模块,用于将待识别的一维条码图像沿预设方向分割为包含字符信息的字符图像以及包含条码信息的至少两个条码图像,所述预设方向垂直于条空排列方向;
条码识别模块,用于对每个所述条码图像进行条码识别,并在条码识别过程中检测到条码识别失败的字符位时,将该字符位的识别结果标识为预设标识符,以得到该至少两个条码图像对应的至少两个条码识别结果;
字符识别模块,用于对所述字符图像进行字符识别,并在字符识别过程中检测到字符识别失败的字符位时,将该字符位的识别结果标识为预设标识符,以得到字符识别结果;
确定模块,用于根据所述字符识别结果与所述至少两个条码识别结果,确定并输出所述一维条码图像的目标识别结果。
第三方面,本发明实施例还提供了一种电子设备,所述电子设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如任意实施例所述的一维条码的确定方法。
第四方面,本发明实施例还提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如任意实施例所述的一维条码的确定方法。
本发明实施例提供的一维条码的确定方法的技术方案,相较于现有技术,由于一维条码携带的信息与其各个条码的排列顺序、宽度有关,而与条码的长度无关,因此沿条码延伸方向将一维条码划分为多个区域时,各个区域均携带有一维条码的全部信息;而且在字符图像与至少两个条码图像的识别过程中,允许一个或多个字符位的识别失败,并以预设标识符表示识别失败;可以理解的是,如果字符识别结果或任一条码识别结果正确,或者字符识别结果与该至少两个条码识别结果的合集包括所有字符位的准确识别结果时,即可得出一维条码的准确识别结果,显著地提高了一维条码识别的准确率;即便字符识别结果与该至少两个条码识别结果的交集没有覆盖所有字符位的准确识别结果,也可以得到包含预设标识符的目标识别结果,以便于用户根据部分准确的目标识别结果确定当前业务的处置策略。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图做一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一维条码的示意图;
图2是本发明实施例一提供的一维条码识别方法的流程图;
图3是本发明实施例一提供的存在数据丢失区的一维条码图像的分割结果示意图;
图4是本发明实施例二提供的一维条码识别方法的流程图;
图5是本发明实施例三提供的一维条码识别装置的结构框图;
图6是本发明实施例四提供的电子设备的结构框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,以下将参照本发明实施例中的附图,通过实施方式清楚、完整地描述本发明的技术方案,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请中,一维条码是由一组规则排列的条、空以及对应的字符组成的标记,“条”是指对光线反射率较低的部分,“空”是指对光线反射率较高的部分,这些条和空组成的数据表达一定的信息,并能够由特定的设备识读,转换成与计算机兼容的二进制和十进制信息。常用一维条码的码制包括:EAN码、39码、交叉25码、UPC码、128码、93码,ISBN码,及Codabar(库德巴码)等。其中,EAN码有标准版(EAN-13)和缩短版(EAN-8)两种。
图1示出了EAN-13码的结构,黑色条表示二进制的1,白色条表示二进制的0,而且0.33mm宽度的黑色条或白色条为一个基本的二进制位。符合EAN-13码制的一维条码包括左侧空白区、起始符、左侧数据符、中间分隔符、右侧数据符、校验符、终止符、右侧空白区及供人识别的字符组成。左侧空白区位于条码图像的最左侧,与空的反射率相同的区域,其最小宽度为11个模块宽。起始符位于条码图像左侧空白区的右侧,用于表示信息开始的特殊符号,由3个模块组成。左侧数据符位于起始符右侧,用于表示6位数字信息的一组条码字符,由42个模块组成。中间分隔符位于左侧数据符的右侧,是平分条码字符的特殊符号,由5个模块组成。右侧数据符位于中间分隔符右侧,用于表示5位数字信息的一组条码字符,由35个模块组成。校验符位于右侧数据符的右侧,用于表示校验码的条码字符,由7个模块组成。终止符位于校验符的右侧,用于表示信息结束的特殊符号,由3个模块组成。右侧空白区位于一维条码的最右侧且与空的反射率相同的区域,其最小宽度为7个模块宽。供人识读的字符位于一维条码的下方,是与条码字符相对应的供人识别的13位数字,最左边一位称前置码。供人识别的字符优先选用OCR-B字符集,字符顶部和条码底部的最小距离为0.5个模块宽。标准版商品条码中的前置码印制在起始符的左侧。
符合EAN-13码制的一维条码的每个字符位的字符由2个条和2个空构成,每一个条或空由1~4个模块组成,每个字符的总模块数为7。用二进制“1”表示条的模块,用二进制“0”表示空的模块。每个字符位的条码可表示10个数字字符:0~9。
EAN-13对应三个子集,分别为表1中的A子集、B子集和C子集。其中,A子集中的条码字符所包含的条的模块的个数为奇数,称为奇排列或奇子集;B子集和C子集中条码字符所包含的条的模块的个数为偶数,称为偶排列或偶子集。
表1 EAN-13码的编码子集
数字字符 | A子集 | B子集 | C子集 |
0 | 0001101 | 0100111 | 1110010 |
1 | 0011001 | 0110011 | 1100110 |
2 | 0010011 | 0011011 | 1101100 |
3 | 0111101 | 0100001 | 1000010 |
4 | 0100011 | 0011101 | 1011100 |
5 | 0110001 | 0111001 | 1001110 |
6 | 0101111 | 0000101 | 1010000 |
7 | 0111011 | 0010001 | 1000100 |
8 | 0110111 | 0001001 | 1001000 |
9 | 0001011 | 0010111 | 1110100 |
EAN-13条码中的每个字符位应该如何编码,这要取决于这个字符位位于条码的哪半边(左边还是右边)。在这种情况下,一个左手边字符位的编码(奇数性还是偶数性)取决于第一个字符位的数值。如图1中的一维条码,第一个字符位的数值为2,因此应该遵循表2中2所在行的编码方式,即奇、奇、偶、奇、偶和偶。具体地,采用A子集编码符号位1’、符号位2’和符号位4’的字符,采用B子集编码符号位3’、符号位5’和符号位6’的字符,所有以EAN-13码制构建的一维条码始终有3个左手边字符采用偶数性编码,有3个左手边字符采用奇数性编码。
表2 EAN-13左边字符位的编码方式
实施例一
图2是本发明实施例一提供的一维条码的确定方法的流程图。本实施例的技术方案适用于通过分别识别一维条码图像的字符图像和至少两个条码图像,并根据该字符图像的字符识别结果和该至少两个条码图像的条码识别结果来确定一维条码图像的目标识别结果的情况。该方法可以由本发明实施例提供的一维条码的确定装置来执行,该装置可以采用软件和/或硬件的方式实现,并配置在终端的处理器中应用,其中,终端为PDA(Personal Digital Assistant,简称PDA,掌上电脑)、手机或手持扫描设备等。该方法具体包括如下步骤:
S101、将待识别的一维条码图像沿预设方向分割为包含字符信息的字符图像以及包含条码信息的至少两个条码图像,该预设方向垂直于条空排列方向。
其中,待识别的一维条码图像优选是由终端拍摄的待识别一维条码的图像。
其中,条空排列方向即为“条”和“空”的排列方向(参见图1所示),也为一维条码的数字区中的数字排列方向。
其中,字符图像优选为一维条码数字区部分的图像,如图1中一维条码下方的2112345678917;条码图像优选仅包括“条”和“空”,并不包含数字信息。
本实施例优选沿预设方向将一维条码图像分割为包含字符信息的字符图像以及包含条码信息的至少四个条码图像。
在一个实施例中,将获取到的整个一维条码图像划分为数字区和条码区,将数字区作为字符图像,将条码区均分为至少四个部分以得到至少四个条码图像。
在一个实施例中,如图3所示,在检测到获取的一维条码图像存在数据丢失区时,将获取到的一维条码图像沿预设方向均分为10个部分,将该10个部分中仅包含字符信息的部分作为字符图像,将剩余的9个部分均作为条码图像。
在一个实施例中,手持扫描设备配置有分区扫描装置,该分区扫描装置按照设定图像宽度,沿预设方向依次扫描一维条码图像,以得到一个字符图像和至少两个条码图像。
在一个实施例中,手持扫描设备被配置为同时扫描至少三个设定图像宽度的图像。且该至少三个设定图像宽度之和大于或等于同一焦距下该一维条码的图像在预设方向上的长度。此时,将手持扫描设备放置到待识别的一维条码图像上,手持扫描设备可以直接得到至少三个图像,该至少三个图像包括一个字符图像与至少两个条码图像。
S102、对每个条码图像进行条码识别,并在条码识别过程中检测到条码识别失败的字符位时,将该字符位的识别结果标识为预设标识符,以得到该至少两个条码图像对应的至少两个条码识别结果。
其中,预设标识符可自行配置,比如“?”、“*”等。
对图3中的每个条码图像进行条码识别,确定识别准确的字符位的识别结果以及识别失败的字符位,将识别失败的字符位的识别结果标识为预设标识符,以得到每个条码图像的识别结果,从而得到该至少两个条码图像对应的至少两个条码识别结果,参见表3。
表3条码图像的条码识别结果
条码图像标识 | 条码识别结果 |
A1 | 69012345?789 |
A2 | 6901234??789 |
A3 | 6901234?6789 |
A4 | 6901234?6789 |
A5 | 690123?56789 |
A6 | 690123?56789 |
A7 | 690123?56789 |
A8 | 69012??56789 |
A9 | 69012?456789 |
在一个实施例中,确定字符图像与该至少两个条码图像分别对应的条码长度(即字符位数量),将最大的条码长度作为当前一维条码图像的条码长度,比如,图3中的最大条码长度为13位;确定一维条码的校验符所包含的模块的数量,根据确定的条码长度和校验符所包含的模块的数量确定当前一维条码图像对应的码制。比如图3对应的码制为EAN-13码制。根据预先存储的当前一维条码图像对应的码制,对每个条码图像的每个字符位的条码进行解析,输出识别成功的字符位的识别结果,并将识别失败的字符位的识别结果标识为预设标识符,比如“?”,从而得到每个条码图像的条码识别结果,具体参见表3。
S103、对字符图像进行字符识别,并在字符识别过程中检测到字符识别失败的字符位时,将该字符位的识别结果标识为预设标识符,以得到字符识别结果。
采用光学字符识别方法(Optical Character Recognition,简称OCR,光学字符识别)对字符图像进行识别,输出识别成功的字符位的识别结果,并将识别失败的字符位的识别结果标识为预设标识符,比如“?”,以得到字符识别结果。可以理解的是,图3中的字符识别结果为“69012?4567892”。其中,用于表示字符图像中识别失败的字符位的识别结果的预设标识符,与用于表示条码图像中识别失败的字符位的识别结果的预设标识符可以相同,也可以不同。
可以理解的是,上述S102与S103的执行顺序仅为示例性顺序,本实施例不对二者的执行顺序进行具体限定,在实际的一维条码识别过程中,可以同时执行S102与S103,也可以先执行S103,再执行S102。
S104、根据字符识别结果与至少两个条码识别结果,确定并输出一维条码图像的目标识别结果。
可以理解的是,由于本实施例将识别失败的字符位的识别结果标识为预设标识符,因此在一维条码图像存在数据丢失区,且该数据丢失区没有竖直贯穿一维条码图像时,该一维条码图像对应的数字识别结果与该至少两个条码识别结果中,至少有一个字符位存在两种识别结果,且该两种识别结果分别为准确的识别结果与预设标识符。鉴于此,本实施例根据确定的字符识别结果与至少两个条码识别结果确定当前字符位对应的每种识别结果,并根据每种识别结果的数量当量确定当前字符位的字符;直至在检测到作为当前字符位的最后一字符位的字符确定完毕时,将所有字符位的字符顺序排列以得到该一维条码图像的目标识别结果。
其中,每种识别结果的数量当量是指每种识别结果内的各个识别结果对应权重之和。如果每个条码识别结果的权重为1个单位,字符识别结果的权重为3个单位。以表3中的第7个字符位为例,共有5个条码识别结果识别出了4,字符识别结果也识别出了4,因此对于第7个字符位,识别结果为4的数量当量为1×5+3×1=8。
为了准确地根据每种识别结果的数量当量确定当前字符位的字符,本实施例在根据预设权重规则确定了字符识别结果与该至少两个条码识别结果在当前字符位上的每一种字符的数量当量后,依次确定每一种字符的数量当量与总权重的比值,并将比值大于或等于预设比值阈值的字符作为当前字符位的字符。
示例性的,为每个条码识别结果配置1个单位权重,为字符识别结果配置为3个单位权重,因此每个字符位的总权重为1×9+3×1=12。以第8个字符位为例,由表3可知,共有6个字符位的条码识别结果为5,有3个字符位的条码识别结果为“?”,再加上字符识别结果也成功地识别出了5,那么该字符位的正确识别结果的第一权重为6×1+1×3=9,因此识别结果“5”的概率为9/12=0.75,如果预设比值阈值为0.7时,则得到该符号位的识别结果为5。
其中,总权重为字符识别结果的预设权重与所有条码识别结果的预设权重之和。不同的条码识别结果可被配置为相同的预设权重,也可被配置为不同的预设权重,比如,字符识别结果的预设权重大于任一条码识别结果的预设权重;或者根据条码识别结果中包含的预设标识符的数量动态设置每个条码识别结果的预设权重,以使每个条码识别结果的预设权重与其所包含的预设标识符的数量成反比。
本实施例中,所有条码识别结果的预设权重之和与字符识别结果的预设权重的比值大于或等于2,且优选为3。示例性的,如图3所示,一维条码图像对应9个条码识别结果和一个数字识别结果,每个条码识别结果的预设权重被配置为1,数字识别结果的预设权重被配置为3,那么,(1×9):(3×1)=3:1。
在一个实施例中,目标识别结果的确定方法包括:将字符识别结果和至少两个条码识别结果中的一个识别结果作为目标识别结果,在检测到该目标识别结果包含预设标识符时,依次确定其他识别结果在该预设标识符所在字符位上的字符是否与该预设标识符一致,如果是,则保留该预设标识符;如果否,则将预设标识符更新为与该预设标识符不一致的字符。换言之,将字符识别结果与该至少两个条码识别结果中的一个识别结果作为基础识别结果,其他的识别结果作为补充识别结果;比如将标识为1的条码识别结果或包含最少数量的预设标识符的条码识别结果作为基础识别结果;然后遍历该基础识别结果中的所有字符位以确定包含预设标识符的当前字符位,以及遍历所有补充识别结果中该当前字符位的识别结果,若存在非预设标识符的识别结果,则使用该非预设标识符替换基础识别结果中对应字符位的预设标识符,若均为预设标识符,则保留基础识别结果中相应字符位的预设标识符。由于条码和字符的识别准确率都比较高,因此任一字符位的识别结果仅有两种,即准确识别结果与预设标识符,而不会输出第三种识别结果,因此该方法可以准确、快速地根据字符识别结果和至少两个条码识别结果确定一维条码图像的目标识别结果。
本发明实施例提供的一维条码的确定方法的技术方案,相较于现有技术,由于一维条码携带的信息与其各个条码的排列顺序、宽度有关,而与条码的长度无关,因此沿条码延伸方向将一维条码划分为多个区域时,各个区域均携带有一维条码的全部信息;而且在字符图像与至少两个条码图像的识别过程中,允许一个或多个字符位的识别失败,并以预设标识符表示识别失败;可以理解的是,如果字符识别结果或任一条码识别结果正确,或者字符识别结果与该至少两个条码识别结果的合集包括所有字符位的准确识别结果时,即可得出一维条码的准确识别结果,显著地提高了一维条码识别的准确率;即便字符识别结果与该至少两个条码识别结果的交集没有覆盖所有字符位的准确识别结果,也可以得到包含预设标识符的目标识别结果,以便于用户根据部分准确的目标识别结果确定当前业务的处置策略。
实施例二
图4是本发明实施例提供的一维条码识别方法的流程图。本发明实施例在上述实施例的基础上,增加了通过模糊查询更新一维条码的目标识别结果的步骤。
相应地,本实施例的方法包括:
S101、将待识别的一维条码图像沿预设方向分割为包含字符信息的字符图像以及包含条码信息的至少两个条码图像,预设方向垂直于条空排列方向。
S102、对每个条码图像进行条码识别,并在条码识别过程中检测到条码识别失败的字符位时,将该字符位的识别结果标识为预设标识符,以得到该至少两个条码图像对应的至少两个条码识别结果。
S103、对字符图像进行字符识别,并在字符识别过程中检测到字符识别失败的字符位时,将该字符位的识别结果标识为预设标识符,以得到字符识别结果。
S104、根据字符识别结果与至少两个条码识别结果,确定并输出一维条码图像的目标识别结果。
S105、将目标识别结果以及该目标识别结果对应的预设附加条件输出至业务服务器,以使业务服务器根据目标识别结果中的有效字符与预设附加条件在业务数据库中进行模糊查询以得到模糊查询结果,并根据模糊查询结果更新目标识别结果,其中,预设附加条件包括当前一维条码图像对应的快件的运输信息。
其中,预设附加条件为当前一维条码图像对应的快递件的运输信息。该运输信息包括但不限于该快递件当前所在的快递站,以及该快递件的寄件方信息和收件方信息。
其中,有效字符是指目标识别结果中除预设标识符之外的其他字符位的字符,即目标识别结果中被准确确定的字符位的字符。
终端处理器在完成一维条码图像的识别时,将相应的目标识别结果以及该目标识别结果对应的预设附加条件发送至业务服务器,以使业务服务器在检测到目标识别结果包含预设标识符时,直接触发该目标识别结果的模糊查询,具体为:根据目标识别结果中的有效字符与预设附加条件在业务数据库中进行模糊查询以得到模糊查询结果,并根据模糊查询结果更新并输出目标识别结果。配置在终端处理器中的一维条码识别装置与业务服务器配合完成了目标识别结果的更新,从而得到一维条码图像的准确识别结果。
在一个实施例中,终端处理器在完成一维条码图像的识别时,将相应的目标识别结果输出至终端显示器。用户在看到当前的目标识别结果包含预设字符位,则输入模糊查询指令,终端根据该模糊查询指令将目标识别结果发送至业务服务器,且终端在将该目标识别结果发生至业务服务器的同时,还将其所属的快递站信息发送至业务服务器,业务服务器根据目标识别结果的有效字符以及该快递站信息在业务数据库中进行模糊查询以得到模糊查询结果,如果模糊查询结果仅包括一个一维条码的信息,则根据模糊查询结果确定该目标识别结果对应的快递件的状态信息,以及根据模糊查询结果更新该目标识别结果。可以理解的是,如果模糊查询结果包括至少两个一维条码信息,则用户可以将当前一维条码图像对应的快递的寄件方信息或收件方信息输入终端,以使终端将接收的寄件方信息或收件方信息发送至业务服务器,以使业务服务器根据该寄件方信息或收件方信息从模糊查询结果中筛选出当前一维条码图像对应的快递的一维条码信息。
终端处理器在完成一维条码图像的识别时,优选以键盘输入方式将目标识别结果输出至终端显示器,以使终端显示器所显示的目标识别结果的格式与用户在终端手动输入的目标识别结果的格式相同,从而便于用户在发现目标识别结果包含预设标识符时,可以直接对其进行人工修改。比如,如果用户肉眼识别出了PDA没有识别出的字符位的字符,则用户可以直接将该字符位上的预设标识符修改为实际的字符。
本发明实施例提供的一维条码识别方法的技术方案,相较于现有技术,根据目标识别结果中的有效字符与预设附加条件在业务数据库中对该目标识别结果进行模糊查询以得到模糊查询结果,并根据模糊查询结果更新目标识别结果。通过预设附加条件可以缩小目标识别结果中的有效字符位所对应的一维条码的范围,而且在预设附加条件精准的情况下,可以唯一地确定当前一维条码图像对应的条码信息,从而变相提高一维条码识别的准确性。
实施例三
图5是本发明实施例提供的一维条码识别装置的结构框图。该装置用于执行上述任意实施例所提供的一维条码识别方法,该装置可选为软件或硬件实现。该装置包括:
图像分割模块11,用于将待识别的一维条码图像沿预设方向分割为包含字符信息的字符图像以及包含条码信息的至少两个条码图像,所述预设方向垂直于条空排列方向;
条码识别模块12,用于对每个所述条码图像进行条码识别,并在条码识别过程中检测到条码识别失败的字符位时,将该字符位的识别结果标识为预设标识符,以得到该至少两个条码图像对应的至少两个条码识别结果;
字符识别模块13,用于对所述字符图像进行字符识别,并在字符识别过程中检测到字符识别失败的字符位时,将该字符位的识别结果标识为预设标识符,以得到字符识别结果;
确定模块14,用于根据所述字符识别结果与所述至少两个条码识别结果,确定并输出所述一维条码图像的目标识别结果。
优选地,图像分割模块11,用于沿预设方向将一维条码图像分割为包含字符信息的字符图像以及均包含条码信息的至少四个条码图像,该至少四个条码图像等高。
优选地,确定模块14用于根据字符识别结果和至少两个条码识别结果确定当前字符位对应的每种识别结果,并根据每种识别结果的数量当量确定当前字符位的字符;在检测到作为当前字符位的最后一字符位的字符确定完毕时,将所有字符位的字符顺序排列以得到一维条码图像的目标识别结果
优选地,确定模块14具体用于根据预设权重规则,确定字符识别结果和该至少两个条码识别结果在当前字符位上的每一种字符的数量当量;依次确定每一种字符的数量当量与总权重的比值;将比值大于或等于预设比值阈值的字符作为当前字符位的字符。
优选地,确定模块14用于将字符识别结果和至少两个条码识别结果中的一个识别结果作为目标识别结果;在检测到该目标识别结果包含预设标识符时,依次确定其他识别结果在该预设标识符所在字符位上的字符是否与该预设标识符一致;若是,则保留该预设标识符;若否,则将预设标识符更新为与该预设标识符不一致的字符。
可选地,确定模块14还用于将目标识别结果以键盘输入方式输出至终端显示器。
可选地,确定模块14还用于将目标识别结果以及该目标识别结果对应的预设附加条件输出至业务服务器,以使业务服务器根据目标识别结果中的有效字符与预设附加条件在业务数据库中进行模糊查询以得到模糊查询结果,并根据模糊查询结果更新目标识别结果,其中,预设附加条件包括当前一维条码图像对应的快件的运输信息。
本发明实施例提供的一维条码识别装置的技术方案,相较于现有技术,由于一维条码携带的信息与其各个条码的排列顺序、宽度有关,而与条码的长度无关,因此沿条码延伸方向将一维条码划分为多个区域时,各个区域均携带有一维条码的全部信息;而且在字符图像与至少两个条码图像的识别过程中,允许一个或多个字符位的识别失败,并以预设标识符表示识别失败;可以理解的是,如果字符识别结果或任一条码识别结果正确,或者字符识别结果与该至少两个条码识别结果的合集包括所有字符位的准确识别结果时,即可得出一维条码的准确识别结果,显著地提高了一维条码识别的准确率;即便字符识别结果与该至少两个条码识别结果的交集没有覆盖所有字符位的准确识别结果,也可以得到包含预设标识符的目标识别结果,以便于用户根据部分准确的目标识别结果确定当前业务的处置策略。
本发明实施例所提供的一维条码识别装置可执行本发明任意实施例所提供的一维条码识别方法,具备执行方法相应的功能模块和有益效果。
实施例四
图6为本发明实施例提供的电子设备的结构示意图,如图6所示,该设备包括处理器201、存储器202、输入装置203以及输出装置204;设备中处理器201的数量可以是一个或多个,图6中以一个处理器201为例;设备中的处理器201、存储器202、输入装置203以及输出装置204可以通过总线或其他方式连接,图6中以通过总线连接为例。
存储器202作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的一维条码识别方法对应的程序指令/模块(例如,图像分割模块11、条码识别模块12、字符识别模块13以及确定模块14)。处理器201通过运行存储在存储器202中的软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述的一维条码识别方法。
存储器202可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器202可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器202可进一步包括相对于处理器201远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置203可用于接收输入的字符或字符信息,以及产生与设备的用户设置以及功能控制有关的键信号输入。
输出装置204可包括显示屏等显示设备,例如,用户终端的显示屏。
实施例五
本发明实施例还提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种一维条码识别方法,该方法包括:
将待识别的一维条码图像沿预设方向分割为包含字符信息的字符图像以及包含条码信息的至少两个条码图像,所述预设方向垂直于条空排列方向;
对每个所述条码图像进行条码识别,并在条码识别过程中检测到条码识别失败的字符位时,将该字符位的识别结果标识为预设标识符,以得到该至少两个条码图像对应的至少两个条码识别结果;
对所述字符图像进行字符识别,并在字符识别过程中检测到字符识别失败的字符位时,将该字符位的识别结果标识为预设标识符,以得到字符识别结果;
根据所述字符识别结果与所述至少两个条码识别结果,确定并输出所述一维条码图像的目标识别结果。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的一维条码识别方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(RandomAccess Memory,简称RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的一维条码识别方法。
值得注意的是,上述一维条码识别装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (12)
1.一种一维条码识别方法,其特征在于,包括:
将待识别的一维条码图像沿预设方向分割为包含字符信息的字符图像以及包含条码信息的至少两个条码图像,所述预设方向垂直于条空排列方向;
对每个所述条码图像进行条码识别,并在条码识别过程中检测到条码识别失败的字符位时,将该字符位的识别结果标识为预设标识符,以得到该至少两个条码图像对应的至少两个条码识别结果;
对所述字符图像进行字符识别,并在字符识别过程中检测到字符识别失败的字符位时,将该字符位的识别结果标识为预设标识符,以得到字符识别结果;
根据所述字符识别结果与所述至少两个条码识别结果,确定并输出所述一维条码图像的目标识别结果。
2.根据权利要求1所述的方法,其特征在于,所述将待识别的一维条码图像沿预设方向分割为包含字符信息的字符图像以及包含条码信息的至少两个条码图像,包括:
沿预设方向将所述一维条码图像分割为包含字符信息的字符图像以及均包含条码信息的至少四个条码图像,所述至少四个条码图像等高。
3.根据权利要求1所述的方法,其特征在于,根据所述字符识别结果与所述至少两个条码识别结果,确定所述一维条码图像的目标识别结果,包括:
根据所述字符识别结果和所述至少两个条码识别结果确定当前字符位对应的每种识别结果,并根据每种识别结果的数量当量确定当前字符位的字符;
在检测到作为当前字符位的最后一字符位的字符确定完毕时,将所有字符位的字符顺序排列以得到所述一维条码图像的目标识别结果。
4.根据权利要求3所述的方法,其特征在于,所述根据所述字符识别结果和所述至少两个条码识别结果确定当前字符位对应的每种识别结果,并根据每种识别结果的数量当量确定当前字符位的字符,包括:
根据预设权重规则,确定所述字符识别结果和该至少两个条码识别结果在当前字符位上的每一种字符的数量当量;
依次确定每一种字符的数量当量与总权重的比值;
将比值大于或等于预设比值阈值的字符作为当前字符位的字符。
5.根据权利要求4所述的方法,其特征在于,所述总权重为字符识别结果的预设权重与所有条码识别结果的预设权重之和,且所述字符识别结果的预设权重大于任一条码识别结果的预设权重。
6.根据权利要求5所述的方法,其特征在于,
所述条码识别结果的预设权重之和与所述字符识别结果的预设权重的比值大于或等于2。
7.根据权利要求1所述的方法,其特征在于,根据所述字符识别结果与所述至少两个条码识别结果,确定所述一维条码图像的目标识别结果,包括:
将所述字符识别结果和所述至少两个条码识别结果中的一个识别结果作为目标识别结果;
在检测到该目标识别结果包含预设标识符时,依次确定其他识别结果在该预设标识符所在字符位上的字符是否与该预设标识符一致;
若是,则保留该预设标识符;
若否,则将预设标识符更新为与该预设标识符不一致的字符。
8.根据权利要求1所述的方法,其特征在于,所述输出所述一维条码图像的目标识别结果,包括:
将所述目标识别结果以键盘输入方式输出至终端显示器。
9.根据权利要求1-8中任一项所述的方法,其特征在于,还包括:
将所述目标识别结果以及该目标识别结果对应的预设附加条件输出至业务服务器,以使所述业务服务器根据所述目标识别结果中的有效字符与所述预设附加条件在业务数据库中进行模糊查询以得到模糊查询结果,并根据所述模糊查询结果更新所述目标识别结果,其中,预设附加条件包括当前一维条码图像对应的快件的运输信息。
10.一种一维条码识别装置,其特征在于,包括:
分割模块,用于将待识别的一维条码图像沿预设方向分割为包含字符信息的字符图像以及包含条码信息的至少两个条码图像,所述预设方向垂直于条空排列方向;
条码识别模块,用于对每个所述条码图像进行条码识别,并在条码识别过程中检测到条码识别失败的字符位时,将该字符位的识别结果标识为预设标识符,以得到该至少两个条码图像对应的至少两个条码识别结果;
字符识别模块,用于对所述字符图像进行字符识别,并在字符识别过程中检测到字符识别失败的字符位时,将该字符位的识别结果标识为预设标识符,以得到字符识别结果;
确定模块,用于根据所述字符识别结果与所述至少两个条码识别结果,确定并输出所述一维条码图像的目标识别结果。
11.一种电子设备,其特征在于,所述电子设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-9中任一所述的一维条码识别方法。
12.一种包含计算机可执行指令的存储介质,其特征在于,所述计算机可执行指令在由计算机处理器执行时用于执行如权利要求1-9中任一所述的一维条码识别方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110082399.2A CN112733568B (zh) | 2021-01-21 | 2021-01-21 | 一维条码识别方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110082399.2A CN112733568B (zh) | 2021-01-21 | 2021-01-21 | 一维条码识别方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112733568A true CN112733568A (zh) | 2021-04-30 |
CN112733568B CN112733568B (zh) | 2024-04-19 |
Family
ID=75594623
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110082399.2A Active CN112733568B (zh) | 2021-01-21 | 2021-01-21 | 一维条码识别方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112733568B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113255392A (zh) * | 2021-06-29 | 2021-08-13 | 浙江华睿科技有限公司 | 一种基于人工智能的条码识别方法、装置和存储介质 |
CN113298211A (zh) * | 2021-05-25 | 2021-08-24 | 北京京东振世信息技术有限公司 | 条码生成、条码识别方法和装置 |
CN114004245A (zh) * | 2021-10-25 | 2022-02-01 | 北京小米移动软件有限公司 | 条码信息识别方法、装置、设备及存储介质 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040074967A1 (en) * | 2002-10-10 | 2004-04-22 | Fujitsu Limited | Bar code recognizing method and decoding apparatus for bar code recognition |
CN101840496A (zh) * | 2010-06-01 | 2010-09-22 | 福建新大陆电脑股份有限公司 | 一维条码解码芯片 |
CN201927028U (zh) * | 2010-06-01 | 2011-08-10 | 福建新大陆电脑股份有限公司 | 一种基于置信度的码字解码装置 |
US20110309138A1 (en) * | 2010-06-17 | 2011-12-22 | Mstar Semiconductor, Inc. | Barcode Image Recognition System and Associated Method for Hand-Held Device |
US20130063620A1 (en) * | 2011-09-08 | 2013-03-14 | Samsung Electronics Co., Ltd. | Apparatus for recognizing character and barcode simultaneously and method for controlling the same |
CN104732183A (zh) * | 2015-03-20 | 2015-06-24 | 杭州晟元芯片技术有限公司 | 一种基于图像采样线灰度信息分析的一维条码识别方法 |
CN109740403A (zh) * | 2019-01-04 | 2019-05-10 | 凌云光技术集团有限责任公司 | 一种识读一维条码的方法和装置 |
CN110008782A (zh) * | 2019-06-06 | 2019-07-12 | 江苏东大集成电路系统工程技术有限公司 | 条码信息的获取方法及装置 |
CN110659704A (zh) * | 2019-09-29 | 2020-01-07 | 西安邮电大学 | 一种物流快件信息识别系统及方法 |
CN110827247A (zh) * | 2019-10-28 | 2020-02-21 | 上海悦易网络信息技术有限公司 | 一种识别标签的方法及设备 |
CN111144161A (zh) * | 2020-04-03 | 2020-05-12 | 支付宝(杭州)信息技术有限公司 | 条形码的识别方法及装置、商品信息确定方法及支付方法 |
CN111368574A (zh) * | 2020-03-06 | 2020-07-03 | 联想(北京)有限公司 | 一种条形码识别方法及装置 |
CN112183134A (zh) * | 2020-09-02 | 2021-01-05 | 福建(泉州)哈工大工程技术研究院 | 一种快递条码的拼接及校正方法 |
-
2021
- 2021-01-21 CN CN202110082399.2A patent/CN112733568B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040074967A1 (en) * | 2002-10-10 | 2004-04-22 | Fujitsu Limited | Bar code recognizing method and decoding apparatus for bar code recognition |
CN101840496A (zh) * | 2010-06-01 | 2010-09-22 | 福建新大陆电脑股份有限公司 | 一维条码解码芯片 |
CN201927028U (zh) * | 2010-06-01 | 2011-08-10 | 福建新大陆电脑股份有限公司 | 一种基于置信度的码字解码装置 |
US20110309138A1 (en) * | 2010-06-17 | 2011-12-22 | Mstar Semiconductor, Inc. | Barcode Image Recognition System and Associated Method for Hand-Held Device |
US20130063620A1 (en) * | 2011-09-08 | 2013-03-14 | Samsung Electronics Co., Ltd. | Apparatus for recognizing character and barcode simultaneously and method for controlling the same |
CN104732183A (zh) * | 2015-03-20 | 2015-06-24 | 杭州晟元芯片技术有限公司 | 一种基于图像采样线灰度信息分析的一维条码识别方法 |
CN109740403A (zh) * | 2019-01-04 | 2019-05-10 | 凌云光技术集团有限责任公司 | 一种识读一维条码的方法和装置 |
CN110008782A (zh) * | 2019-06-06 | 2019-07-12 | 江苏东大集成电路系统工程技术有限公司 | 条码信息的获取方法及装置 |
CN110659704A (zh) * | 2019-09-29 | 2020-01-07 | 西安邮电大学 | 一种物流快件信息识别系统及方法 |
CN110827247A (zh) * | 2019-10-28 | 2020-02-21 | 上海悦易网络信息技术有限公司 | 一种识别标签的方法及设备 |
CN111368574A (zh) * | 2020-03-06 | 2020-07-03 | 联想(北京)有限公司 | 一种条形码识别方法及装置 |
CN111144161A (zh) * | 2020-04-03 | 2020-05-12 | 支付宝(杭州)信息技术有限公司 | 条形码的识别方法及装置、商品信息确定方法及支付方法 |
CN112183134A (zh) * | 2020-09-02 | 2021-01-05 | 福建(泉州)哈工大工程技术研究院 | 一种快递条码的拼接及校正方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113298211A (zh) * | 2021-05-25 | 2021-08-24 | 北京京东振世信息技术有限公司 | 条码生成、条码识别方法和装置 |
CN113298211B (zh) * | 2021-05-25 | 2023-09-01 | 北京京东振世信息技术有限公司 | 条码生成、条码识别方法和装置 |
CN113255392A (zh) * | 2021-06-29 | 2021-08-13 | 浙江华睿科技有限公司 | 一种基于人工智能的条码识别方法、装置和存储介质 |
CN114004245A (zh) * | 2021-10-25 | 2022-02-01 | 北京小米移动软件有限公司 | 条码信息识别方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112733568B (zh) | 2024-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112733568B (zh) | 一维条码识别方法、装置、设备及存储介质 | |
US7889926B2 (en) | Image dictionary creating apparatus, coding apparatus, image dictionary creating method | |
JP3195038B2 (ja) | 複数の文字認識プロセッサを備えた記号判定システムのための選択装置 | |
US5305396A (en) | Data processing system and method for selecting customized character recognition processes and coded data repair processes for scanned images of document forms | |
JP6527410B2 (ja) | 文字認識装置、文字認識方法、及びプログラム | |
CN111783495B (zh) | 一种条形码识别方法、装置、电子设备及存储介质 | |
CN109754044B (zh) | 条形码、条形码生成方法及识别方法 | |
CN113673655B (zh) | 用于确定二维码解码方向的方法及装置、电子设备、介质 | |
CN104579360A (zh) | 一种数据处理的方法和设备 | |
CN115392955B (zh) | 门店去重处理方法、装置、设备及存储介质 | |
US20050226516A1 (en) | Image dictionary creating apparatus and method | |
CN116739022B (zh) | 用于条码图像的译码方法、装置和电子设备 | |
CN112396048A (zh) | 图片信息提取方法、装置、计算机设备及存储介质 | |
US9679179B2 (en) | Method for processing information from a hand-held scanning device | |
KR101163511B1 (ko) | 식별 코드 생성 방법, 식별 코드 인식 방법 및 장치 | |
CN101833645B (zh) | 一种基于码字组合的条码解码方法 | |
EP3531335B1 (en) | Barcode identification method and apparatus | |
CN115147847A (zh) | 文本识别结果的确定方法、装置、存储介质及计算机设备 | |
CN111639506B (zh) | 图像中条形码的定位方法、装置、扫码设备 | |
JP4802502B2 (ja) | 単語認識装置および単語認識方法 | |
CN111814535A (zh) | 掌纹图像的识别方法、装置、设备及计算机可读存储介质 | |
CN114943241B (zh) | 用于修复条码码图的方法、电子设备、存储介质 | |
CN110502658B (zh) | 文档图像页码迁移方法、服务器及存储介质 | |
JP6024118B2 (ja) | 文字読取装置及び文字認識方法 | |
CN115345717A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |