CN101882202B - 符号字符提取模块及其提取方法 - Google Patents
符号字符提取模块及其提取方法 Download PDFInfo
- Publication number
- CN101882202B CN101882202B CN201010188829A CN201010188829A CN101882202B CN 101882202 B CN101882202 B CN 101882202B CN 201010188829 A CN201010188829 A CN 201010188829A CN 201010188829 A CN201010188829 A CN 201010188829A CN 101882202 B CN101882202 B CN 101882202B
- Authority
- CN
- China
- Prior art keywords
- bar
- empty
- border
- width
- sign character
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Printers Characterized By Their Purpose (AREA)
- Character Discrimination (AREA)
Abstract
本发明提供一种应用在条码识别装置中的符号字符提取模块,包括:条空边界存储器,存储条码的条空边界;边界计数器,对条空边界存储器存储的条空边界的数量进行统计;宽度计算单元,对条空边界存储器存储的条空边界的总宽度进行计算以获得已存储的条空边界的组合的宽度值;控制逻辑单元,获取条码的符号字符的条空边界数和条空宽度,根据条空边界的数量和已存储的条空边界的组合的宽度值与条码的符号字符的条空边界数和条空宽度进行判断,以排除条空边界中的干扰边界。本发明还提供一种符号字符提取方法。本发明的符号字符提取模块及其提取方法可以在获取条空边界的同时完成排除干扰边界的工作,加快了条码的解码速度,缩短了解码时间。
Description
【技术领域】
本发明涉及条码识别技术领域,特别地,涉及一种应用在条码识别装置中的符号字符提取模块及其提取方法。
【背景技术】
条码技术是在计算机技术与信息技术基础上发展起来的一门集编码、印刷、识别、数据采集和处理于一身的新兴技术。条码技术由于其识别快速、准确、可靠以及成本低等优点,被广泛应用于商业、图书管理、仓储、邮电、交通和工业控制等领域,并且势必在逐渐兴起的“物联网”应用中发挥重大的作用。
目前被广泛使用的条码包括一维条码及二维条码。一维条码又称线形条码是由平行排列的多个“条”和“空”单元组成,条码信息依靠条和空的不同宽度和位置来表达。二维条码是由按一定规律在二维方向上分布的黑白相间的特定几何图形组成,其可以在二维方向上表达信息。二维条码可以分为行列式二维条码和矩阵式二维条码。行列式二维条码是由多行短截的一维条码堆叠而成,代表性的行列式二维条码包括PDF417、Code 49、Code 16K等。行列式二维条码信息表示方法与一维条码类似,也是依靠条和空的不同宽度和位置来表达。矩阵式二维条码是由按预定规则分布于矩阵中的黑、白模块组成,代表性的矩阵式二维条码包括QR码、Data Matrix码、Maxi码、Aztec码、汉信码等。
在对条码图像进行解码的过程中,经常会遇到条码图像上存在干扰边界的情况,图1是现有技术中存在干扰边界的条码图像的示意图。如图1所示,条码图像上可能存在不同类型的干扰边界,例如图1中的干扰边界81、82、83。这种干扰边界可能会造成误读,降低解码成功率。
针对现有技术中存在的问题,亟需提供一种应用在条码识别装置中的符号字符提取模块及其提取方法,使得在对条码图像进行解码的过程中,可以排除掉此类干扰边界,减少误读,提高解码成功率。
【发明内容】
针对现有技术存在的条码图像具有干扰边界,容易造成误读而降低解码成功率的问题,本发明提供一种符号字符提取模块及其提取方法,可以正确识别条码的条空信息,提高解码成功率。
本发明提供一种符号字符提取模块,包括:条空边界存储器,存储条码的条空边界;边界计数器,对条空边界存储器存储的条空边界的数量进行统计;宽度计算单元,对条空边界存储器存储的条空边界的总宽度进行计算以获得已存储的条空边界的组合的宽度值;控制逻辑单元,从码制识别模块中获取条码的符号字符的条空边界数和条空宽度,根据条空边界的数量和已存储的条空边界的组合的宽度值与条码的符号字符的条空边界数和条空宽度进行判断,以排除条空边界中的干扰边界。
本发明还提供一种符号字符提取方法,包括以下步骤:a.获取条码码制,根据条码码制获得与码制的符号字符所对应的条空边界数和条空宽度;b.对条码图像进行识别,获取条码的条空边界;c.对步骤b获取的条空边界数量进行统计;d.判断步骤c已获取的条空边界数量是否满足码制的符号字符所对应的条空边界数,当条空边界数量小于码制的符号字符所对应的条空边界数时,继续获取条空边界;e.当条空边界数量等于码制的符号字符所对应的条空边界数时,对步骤b已获取的条空边界的组合的条空宽度进行计算,以获取所述条空边界的组合的条空宽度值;f.判断条空边界的组合的条空宽度值是否满足码制的符号字符所对应的条空宽度,当条空边界的组合的条空宽度值小于条码的符号字符的条空宽度时,排除条空边界的组合中灰度落差宽度最小的条空边界,并继续获取条空边界;g.当条空边界的组合的条空宽度值达到条码的符号字符的条空宽度时,根据条空边界的组合计算各个条空宽度,提取符号字符。
本发明的符号字符提取模块通过采用硬件解码流水线,与现有的软件解码相比解码速度更快。本发明的符号字符提取模块及其提取方法可以在获取条空边界的同时完成排除干扰边界的工作,当完成条空边界计算的同时也同步完成了排除干扰边界的工作,这大大加快了条码的解码速度,缩短了解码时间。
【附图说明】
图1是现有技术中存在干扰边界的条码图像的示意图。
图2A是条空的理想阶跃边界示意图。
图2B是条空的理想阶跃边界所对应的点扩展函数的示意图。
图3是本发明的符号字符提取模块及其提取方法的工作原理示意图。
图4是根据本发明的符号字符提取方法的流程图。
图5是本发明的符号字符提取模块的结构示意图。
【具体实施方式】
有关本发明的特征及技术内容,请参考以下的详细说明与附图,附图仅提供参考与说明,并非用来对本发明加以限制。
为使本领域技术人员更易于理解本发明,以下首先对条码条空的边界灰度落差进行原理分析,图2A是条空的理想阶跃边界示意图。图2B是条空的理想阶跃边界所对应的点扩展函数的示意图。如图2A所示,条码符号的条空的理想边界可以用灰度值从0-255的理想阶跃边界表示。但是经过光学系统成像后,条空的理想边界会发生扩展。如图2B所示,理想阶跃边界所对应的点扩展函数通常用高斯函数表示。由图2A和图2B可知,可以用高斯函数表示条空边界的灰度落差宽度。条码图像中的干扰边界通常包括显示装置本身的栅格线、条码打印时的拖影纹、刮擦线、毛发、污点等。这些干扰边界的物理尺寸基本都小于条码符号的最小条空模块的物理宽度。经过上述对条码图像中条空边界的分析,在干扰边界的物理尺寸小于条码符号的最小条空模块的物理宽度的情况下,条码成像时干扰边界的点扩展函数所对应的灰度落差宽度会小于条码中最小条空模块的点扩展函数所对应的灰度落差宽度。
以下对本发明的符号字符提取模块及其提取方法的工作原理进行详细描述,图3是本发明的符号字符提取模块及其提取方法的工作原理示意图。如图3所示,条空模块的灰度落差宽度表示为d1,刮擦线的灰度落差宽度表示为d2,毛发的灰度落差宽度表示为d3,污点的灰度落差宽度表示为d4。其中d1的宽度明显大于d2、d3和d4。
根据条码的国家标准,不同的条码类型由不同码制表示,不同码制的条码具有不同的符号字符表示规则,每种码制的条码的符号字符的条空数量和模块数量是确定的,而条空数量决定了条空边界的数量,模块数量决定了条空宽度。以一二八条码为例,国标GB-T 18347-2001规定了一二八条码的每个符号字符由6个单元组成,包括3个条、3个空,每个条(或空)宽度为1、2、3或4个模块,每个符号字符总共有11个模块。即在一二八条码中,每个符号字符包括6个条空边界,每个符号字符的条空宽度为11个模块宽度。
图4是根据本发明的符号字符提取方法的流程图。如图4所示,本发明的符号字符提取方法包括如下步骤:
在步骤951中,获取条码码制,根据条码码制获得与该码制的符号字符所对应的条空边界数和条空宽度。
在步骤952中,对条码图像进行识别,获取条码图像中的条码符号的条空边界。
在步骤953中,对获取的条码符号的条空边界数量进行统计。
在步骤954中,判断已获取的条码符号的条空边界数量是否满足该码制的符号字符所对应的条空边界数。如果条空边界数量未达到该码制的符号字符所对应的条空边界数,则意味着还不能对该条空边界的组合进行解码,因此返回至步骤952,继续获取新的条码符号的条空边界。如果条空边界数量已经达到该码制的符号字符所对应的条空边界数,则进入下一步。
在步骤955中,当条空边界数量已经达到该码制的符号字符所对应的条空边界数时,对已获取的条空边界的组合的条空宽度进行计算,得到已获取的条空边界的组合的条空宽度值。由于已获取的条空边界的组合中可能存在干扰边界,由于干扰边界的物理尺寸小于最小条空模块的宽度,因此包括了干扰边界的条空边界的组合的条空宽度会小于正常的条空宽度。
在步骤956中,根据已获取的条空边界的组合的条空宽度值与该码制的符号字符所对应的条空宽度进行比较。如果已获取的条空边界的组合的条空宽度值小于该码制的符号字符所对应的条空宽度,这意味着已获取的条空边界的组合中存在着干扰边界。
在步骤957中,由于干扰边界的灰度落差宽度小于条空模块的灰度落差宽度,因此排除灰度落差宽度最小的条空边界,就可以排除掉一个干扰边界,这时需要返回步骤952,继续获取新的条码符号的条空边界。
在步骤956中,如果已获取的条空边界的组合的条空宽度值已经与该码制的符号字符所对应的条空宽度大致相等,满足了判断条件,则意味着已获取的条空边界的组合已经符合解码条件。
在步骤958中,根据符合解码条件的条空边界的组合计算各个条空宽度,提取符号字符。
由上所述,本发明的上述符号字符提取方法可以在获取条空边界的同时进行排除干扰边界的处理,无需等到将条码符号的条空边界都计算完成后再排除干扰边界。由于计算条空边界的时间大于排除干扰边界的时间,因此本发明的符号字符提取方法可以在获取条空边界的同时完成排除干扰边界的工作,当完成条空边界计算的同时也同步完成了排除干扰边界的工作,这种符号字符提取方法大大加快了条码的解码速度,缩短了解码时间。
图5是本发明的符号字符提取模块的结构示意图。如图5所示,符号字符提取模块151一端连接码制识别模块160和条空边界处理模块140,另一端连接条空值计算模块152。码制识别模块160对条码符号的码制进行识别以获取与码制相关的符号字符参数,符号字符参数包括符号字符的条空边界数和条空宽度。条空边界处理模块140对条码的条空边界进行识别,以获取条空边界。
符号字符提取模块151包括控制逻辑单元1511、条空边界存储器1512、边界计数器1513、宽度计算单元1514。条空边界存储器1512存储条空边界处理模块140输入的条空边界数据,该条空边界数据包括条空边界的坐标和灰度落差宽度。边界计数器1513对条空边界存储器1512存储的条空边界的数量进行统计。宽度计算单元1514对条空边界存储器1512输入的条空边界的组合的总宽度进行计算以获得已存储的条空边界的组合的宽度值。
控制逻辑单元1511获取码制识别模块160提供的符号字符参数,并根据边界计数器1513统计的条空边界的数量和宽度计算单元1514计算的条空边界的宽度值进行条件判断,以对条空边界存储器1512的工作状态进行控制,排除条空边界存储器1512存储的条空边界中的干扰边界。
控制逻辑单元1511的条件判断流程如图4及上述步骤954至步骤958所述。当边界计数器1513统计的条空边界数量未达到符号字符参数中的条空边界数时,控制逻辑单元1511控制条空边界存储器1512继续获取条空边界处理模块140提供的条空边界。当边界计数器1513统计的条空边界数量达到符号字符参数中的条空边界数时,控制逻辑单元1511根据宽度计算单元1514提供的条空宽度值与符号字符参数中的条空宽度相比较,当宽度计算单元1514提供的条空宽度值小于符号字符参数中的条空宽度时,控制逻辑单元1511控制条空边界存储器1512排除所存储的灰度落差宽度最小的条空边界,并继续获取条空边界处理模块140提供的条空边界。当宽度计算单元1514提供的条空宽度值达到符号字符参数中的条空宽度时,控制逻辑单元1511控制条空边界存储器1512将所存储的条空边界的组合输出至条空值计算模块152。条空值计算模块152获取条空边界的组合中各个条空边界的坐标和灰度落差宽度,通过比较计算由各个条空边界所构成的条空宽度值,进而获取符号字符。
本发明的符号字符提取模块通过采用图5所示的硬件解码流水线,与现有的软件解码相比解码速度更快。本发明的符号字符提取模块可以在获取条空边界的同时完成排除干扰边界的工作,当完成条空边界计算的同时也同步完成了排除干扰边界的工作,这种符号字符提取模块大大加快了条码的解码速度,缩短了解码时间。
以上参照附图说明了本发明的各种优选实施例,但是只要不背离本发明的实质和范围,本领域的技术人员可以对其进行各种形式上的修改和变更,都属于本发明的保护范围。
Claims (8)
1.一种符号字符提取模块,其特征在于,包括:
条空边界存储器,存储条码的条空边界;
边界计数器,对所述条空边界存储器存储的所述条空边界的数量进行统计;
宽度计算单元,对所述条空边界存储器存储的所述条空边界的总宽度进行计算以获得已存储的条空边界的组合的宽度值;
控制逻辑单元,从码制识别模块中获取条码的符号字符的条空边界数和条空宽度,根据所述条空边界的数量和所述已存储的条空边界的组合的宽度值与所述条码的符号字符的条空边界数和条空宽度进行判断,以排除所述条空边界中的干扰边界。
2.根据权利要求1所述的符号字符提取模块,其特征在于,所述符号字符提取模块一端连接所述码制识别模块和条空边界处理模块,另一端连接条空值计算模块。
3.根据权利要求2所述的符号字符提取模块,其特征在于,所述码制识别模块对条码符号的码制进行识别以获取所述符号字符的条空边界数和条空宽度并提供至所述符号字符提取模块。
4.根据权利要求2所述的符号字符提取模块,其特征在于,所述条空边界处理模块对所述条码的所述条空边界进行识别,以获取所述条空边界,并将获取的所述条空边界提供至所述符号字符提取模块。
5.根据权利要求4所述的符号字符提取模块,其特征在于,当所述边界计数器统计的条空边界数量未达到所述条空边界数时,所述控制逻辑单元控制所述条空边界存储器继续获取所述条空边界处理模块提供的所述条空边界。
6.根据权利要求4所述的符号字符提取模块,其特征在于,当所述边界计数器统计的条空边界数量达到所述条空边界数时,所述控制逻辑单元根据所述已存储的条空边界的组合的宽度值与所述条码的符号字符的条空宽度相比较,当所述已存储的条空边界的组合的宽度值小于所述条码的符号字符的条空宽度时,所述控制逻辑单元控制所述条空边界存储器排除所存储的灰度落差宽度最小的条空边界,并继续获取所述条空边界处理模块提供的所述条空边界。
7.根据权利要求6所述的符号字符提取模块,其特征在于,当所述已存储的条空边界的组合的宽度值达到所述条码的符号字符的条空宽度时,所述控制逻辑单元控制所述条空边界存储器将所存储的条空边界的组合输出至所述条空值计算模块。
8.一种符号字符提取方法,其特征在于,包括以下步骤:
a.获取条码码制,根据所述条码码制获得与所述码制的符号字符所对应的条空边界数和条空宽度;
b.对条码图像进行识别,获取条码的条空边界;
c.对步骤b获取的条空边界数量进行统计;
d.判断步骤c已获取的所述条空边界数量是否满足所述码制的符号字符所对应的条空边界数,当所述条空边界数量小于所述码制的符号字符所对应的条空边界数时,继续获取所述条空边界;
e.当所述条空边界数量等于所述码制的符号字符所对应的条空边界数时,对步骤b已获取的条空边界的组合的条空宽度进行计算,以获取所述条空边界的组合的条空宽度值;
f.判断所述条空边界的组合的条空宽度值是否满足所述码制的符号字符所对应的条空宽度,当所述条空边界的组合的条空宽度值小于所述条码的符号字符的条空宽度时,排除所述条空边界的组合中灰度落差宽度最小的条空边界,并继续获取所述条空边界;
g.当所述条空边界的组合的条空宽度值达到所述条码的符号字符的条空宽度时,根据所述条空边界的组合计算各个条空宽度,提取符号字符。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010188829A CN101882202B (zh) | 2010-06-01 | 2010-06-01 | 符号字符提取模块及其提取方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010188829A CN101882202B (zh) | 2010-06-01 | 2010-06-01 | 符号字符提取模块及其提取方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101882202A CN101882202A (zh) | 2010-11-10 |
CN101882202B true CN101882202B (zh) | 2012-10-03 |
Family
ID=43054214
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010188829A Expired - Fee Related CN101882202B (zh) | 2010-06-01 | 2010-06-01 | 符号字符提取模块及其提取方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101882202B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107016318B (zh) * | 2017-03-21 | 2019-09-17 | 浙江华睿科技有限公司 | 一种条码解码方法及装置 |
CN106991348B (zh) * | 2017-03-21 | 2019-11-15 | 浙江华睿科技有限公司 | 一种条码解码方法及装置 |
CN109299628B (zh) * | 2017-07-24 | 2021-06-18 | 杭州海康威视数字技术股份有限公司 | 一种条码的译码方法及装置 |
CN111801675A (zh) * | 2018-08-14 | 2020-10-20 | 深圳配天智能技术研究院有限公司 | 一种一维码识别方法、终端、装置及具有存储功能的装置 |
CN109657515B (zh) * | 2018-12-18 | 2022-02-11 | 福州图腾易讯信息技术有限公司 | 一种一维条形码的解码方法及设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4414468A (en) * | 1981-05-18 | 1983-11-08 | International Business Machines Corporation | Systematic error correction in bar code scanner |
US4728784A (en) * | 1987-01-30 | 1988-03-01 | Federal Express Corporation | Apparatus and method of encoding and decoding barcodes |
CN1083238A (zh) * | 1992-08-27 | 1994-03-02 | 清华大学 | 一种条形码识别算法 |
CN1084661A (zh) * | 1992-09-25 | 1994-03-30 | 欧林巴斯光学工业股份有限公司 | 条形码读取方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62197877A (ja) * | 1986-02-26 | 1987-09-01 | Hitachi Ltd | バ−コ−ド読取方式 |
-
2010
- 2010-06-01 CN CN201010188829A patent/CN101882202B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4414468A (en) * | 1981-05-18 | 1983-11-08 | International Business Machines Corporation | Systematic error correction in bar code scanner |
US4728784A (en) * | 1987-01-30 | 1988-03-01 | Federal Express Corporation | Apparatus and method of encoding and decoding barcodes |
CN1083238A (zh) * | 1992-08-27 | 1994-03-02 | 清华大学 | 一种条形码识别算法 |
CN1084661A (zh) * | 1992-09-25 | 1994-03-30 | 欧林巴斯光学工业股份有限公司 | 条形码读取方法及装置 |
Non-Patent Citations (1)
Title |
---|
JP昭62-197877A 1987.09.01 |
Also Published As
Publication number | Publication date |
---|---|
CN101882202A (zh) | 2010-11-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101882205B (zh) | 一维条码图像扫描方法 | |
CN101882202B (zh) | 符号字符提取模块及其提取方法 | |
CN101587556B (zh) | 一种二维条码识别方法 | |
CN101833641B (zh) | 条码解码芯片 | |
CN101908122B (zh) | 条空边界处理模块、条码识别装置及其方法 | |
CN103530669A (zh) | 一种数据信息的二维码编码方法 | |
CN108091033B (zh) | 一种纸币的识别方法、装置、终端设备和存储介质 | |
CN113673655B (zh) | 用于确定二维码解码方向的方法及装置、电子设备、介质 | |
CN116704209B (zh) | 一种法兰轮廓快速提取方法及系统 | |
CN111311497B (zh) | 一种条形码图像角度校正方法和装置 | |
CN112926379A (zh) | 一种构建人脸识别模型的方法及装置 | |
CN113420580B (zh) | 用于对二维码进行辅助定位符定位的方法及装置、二维码扫描设备、存储介质 | |
CN110399912B (zh) | 一种字符识别的方法、系统、设备及计算机可读存储介质 | |
CN101840499A (zh) | 一种条码解码方法及其二值化方法 | |
CN201946007U (zh) | 符号字符提取模块 | |
CN107016318A (zh) | 一种条码解码方法及装置 | |
CN106548499B (zh) | 一种编码图案的生成、识别方法及装置 | |
CN110135382B (zh) | 一种人体检测方法和装置 | |
CN115438682B (zh) | 用于确定解码方向的方法、装置及解码设备 | |
CN101908133B (zh) | 一种条码解码方法及装置 | |
CN101882201A (zh) | 一种条码解码芯片及方法 | |
CN101840500B (zh) | 一种基于置信度的码字解码装置及方法 | |
CN201927035U (zh) | 一种条码解码装置及其二值化装置 | |
CN101833645A (zh) | 一种基于码字组合的条码解码方法 | |
CN101882204A (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address | ||
CP03 | Change of name, title or address |
Address after: 350015 No. 1 Rujiangxi Road, Mawei District, Fuzhou City, Fujian Province Patentee after: NEWLAND DIGITAL TECHNOLOGY Co.,Ltd. Address before: 350015 New Continental Science Park No. 1 Rujiangxi Road, Mawei District, Fuzhou City, Fujian Province Patentee before: Fujian Newland Computer Co.,Ltd. |
|
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20121003 |