CN101908125B - Qr码条码解码芯片及其解码方法 - Google Patents
Qr码条码解码芯片及其解码方法 Download PDFInfo
- Publication number
- CN101908125B CN101908125B CN201010189802.3A CN201010189802A CN101908125B CN 101908125 B CN101908125 B CN 101908125B CN 201010189802 A CN201010189802 A CN 201010189802A CN 101908125 B CN101908125 B CN 101908125B
- Authority
- CN
- China
- Prior art keywords
- module
- bar code
- parameter
- feature
- pixel coordinate
- 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
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/1417—2D bar codes
-
- 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/10544—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum
- G06K7/10821—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum further details of bar or optical code scanning devices
- G06K7/10851—Circuits for pulse shaping, amplifying, eliminating noise signals, checking the function of the sensing device
-
- 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/146—Methods for optical code recognition the method including quality enhancement steps
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Electromagnetism (AREA)
- Artificial Intelligence (AREA)
- Toxicology (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Image Processing (AREA)
- Facsimile Image Signal Circuits (AREA)
Abstract
本发明提供一种QR码条码解码芯片。特征搜索单元在条码图像中搜索特征图形来确定特征图形的像素坐标。条码参数获取单元根据特征图形的像素坐标来获取条码参数。版本/格式参数获取单元获取条码的版本参数和/或格式参数。校正特征获取单元在条码图像上搜索特征位置,根据特征位置获取校正特征。模块信息处理单元根据版本参数、条码参数和校正特征,计算模块所对应的灰度值。二值化单元,对模块进行二值化处理。码字提取单元,根据二值化处理的模块提取码字。纠错译码单元对码字进行译码处理。本发明还提供一种通过QR码解码方法。本发明的QR码条码解码芯片以及QR码解码方法能保证QR码解码过程快速、顺利地进行。
Description
【技术领域】
本发明涉及条码识别技术领域,特别地,涉及一种QR码条码解码芯片及其解码方法。
【背景技术】
条码技术是在计算机技术与信息技术基础上发展起来的一门集编码、印刷、识别、数据采集和处理于一身的新兴技术。条码技术由于其识别快速、准确、可靠以及成本低等优点,被广泛应用于商业、图书管理、仓储、邮电、交通和工业控制等领域,并且势必在逐渐兴起的“物联网”应用中发挥重大的作用。
目前被广泛使用的条码包括一维条码及二维条码。一维条码又称线形条码是由平行排列的多个“条”和“空”单元组成,条形码信息靠条和空的不同宽度和位置来表达。一维条码只是在一个方向(一般是水平方向)表达信息,而在垂直方向则不表达任何信息,因此信息容量及空间利用率较低,并且在条码污损后即无法识别。
二维条码是由按一定规律在二维方向上分布的黑白相间的特定几何图形组成,其可以在二维方向上表达信息,因此信息容量及空间利用率较低,并具有一定的校验功能。二维条码可以分为堆叠式二维条码和矩阵式二维条码。堆叠式二维条码是由多行短截的一维条码堆叠而成,代表性的堆叠式二维条码包括PDF417、Code49、Code16K等。矩阵式二维条码是由按预定规则分布于矩阵中的黑、白模块组成,代表性的矩阵式二维条码包括QR码、Data Matrix码、Maxi Code、Aztec Code、汉信码等。二维条码除具备一维条码也具有的优点外,同时还具有信息容量大、密度高、具有纠错功能、可表示各种多媒体信息以及多种文字信息、保密防伪性强、解码可靠性高的特点。
在矩阵式二维条码进行解码的过程中,通常是利用摄影设备对条码进行拍摄,以获取条码图像,然后对条码图像进行去燥、灰度提取、二值化、码字提取、译码等处理方法。
如图1所示,重庆大学提出的中国专利申请第CN200910103378.3号,其公开了一种基于现场可编程门阵列的QR二维条码识别方法及***,该QR二维条码识别方法包括以下步骤:自适应亮度均衡化;二值化;条码图像定位;条码图像矫正;从背景中提取条码符号信息;根据符号信息进行译码。如图2所示,该专利还公开了一种基于FPGA的QR码识别***的硬件结构。该***采用处理器解码方式,通过将NIOS CPU嵌入FPGA芯片内部,与用户自定义逻辑结合构成一个基于FPGA的片上***。该***采用NIOSII处理器的自定义模块用硬件实现部分复杂算法,以便于在软件程序中调用,还利用C2H工具直接将一些软件程序进行硬件化,以提高***性能。
然而,上述现有技术的QR二维条码识别方法中,在对条码图像进行自适应亮度均衡化和二值化处理过程时,是针对每一个像素点进行自适应亮度均衡化和二值化处理,因此要对每一个像素点的灰度进行调节,并与阈值灰度进行比对,数据计算量很大,降低了***的处理速度。
而且由于该***是在不知晓条码特征信息(即条码的相关参数,包括条码方向、条码区域尺寸和条码版本、条码畸变系数等信息)的情况下进行二值化处理,会造成模块错误,即在二值化过程中,由于噪声、畸变等因素的影响,出现模块的深浅状态和设计状态发生倒置的情况,这大大降低条码的识别能力,增加了条码识别的误码率。尤其在条码版本较高,所含模块数量较多的情况下,或者是条码图像分辨率低,曝光质量不佳的情况下,这种方法较难对QR码进行识别。
另外,在上述现有技术的QR码识别***中,用于识别解码的主体仍然是NIOS II处理器,该***通过处理器调用程序存储器中的解码程序,对条码图像进行处理来实现识别解码。该***的问题在于:一、处理速度慢,该***需要在微处理器中写入实现解码算法的一系列程序,单个处理器只能同时针对一种特定类型的条码格式进行解码处理,处理器在一个时钟周期只能处理一个操作,软件处理也决定了解码流程的单流程特性,较难实现对条码图像的流水线作业和并行处理,处理速度较慢;二、使用成本高,由于解码算法较为复杂,因此需要使用高端的处理器(如32位处理器)实现以上算法,需要NIOS II处理器以及硬件加速电路相配合,这样会造成***成本高昂;三、***复杂,集成难度大,功耗高,不易于便携应用。
因此,针对现有技术存在的以上不足,亟需提供一种QR码条码解码芯片及其解码方法,使得能保证解码过程快速、顺利地进行。
【发明内容】
针对现有技术存在的处理速度慢、错误发生机率较大等不足,本发明提供一种QR码条码解码芯片及其解码方法,能保证QR码解码过程快速、顺利地进行。
本发明提供一种QR码条码解码芯片,包括:特征搜索单元、条码参数获取单元、版本/格式参数获取单元、校正特征获取单元、模块信息处理单元、二值化单元、码字提取单元以及纠错译码单元。特征搜索单元在条码图像中搜索特征图形来确定特征图形的像素坐标。条码参数获取单元根据特征图形的像素坐标来获取条码参数。版本/格式参数获取单元获取条码的版本参数。校正特征获取单元在条码图像上搜索特征位置,根据特征位置获取校正特征,根据校正特征获取校正特征的像素坐标。模块信息处理单元包括模块参数计算单元、校正特征模块坐标计算单元、校正参数计算单元、模块像素点计算单元以及模块灰度值计算单元,其中:模块参数计算单元根据版本参数获取模块参数;校正特征模块坐标计算单元根据条码参数、模块参数和校正特征的像素坐标,计算校正特征的模块坐标;校正参数计算单元根据校正特征的像素坐标和模块坐标,计算条码图像的像素坐标与模块坐标之间的映射关系;模块像素点计算单元根据映射关系计算各个模块所对应的像素坐标;模块灰度值计算单元根据各个模块所对应的像素坐标计算各个模块的灰度值。二值化单元,对QR码模块进行二值化处理。码字提取单元,根据二值化处理的模块提取码字。纠错译码单元对码字进行译码处理。
本发明又提供一种QR码条码解码芯片,包括特征搜索单元、条码参数获取单元、版本/格式参数获取单元、模块信息处理单元、二值化单元、码字提取单元以及纠错译码单元。特征搜索单元在条码图像中搜索特征图形来确定特征图形的像素坐标。条码参数获取单元根据特征图形的像素坐标来获取条码参数。版本/格式参数获取单元获取条码的版本参数。模块信息处理单元包括模块参数计算单元、校正特征模块坐标计算单元、校正参数计算单元、模块像素点计算单元以及模块灰度值计算单元,其中:模块参数计算单元根据版本参数获取模块参数;校正特征模块坐标计算单元根据特征图形的像素坐标、条码参数和模块参数计算特征图形的模块坐标;校正参数计算单元根据特征图形的像素坐标和模块坐标计算条码图像的像素坐标与模块坐标之间的映射关系;模块像素点计算单元根据映射关系计算各个模块所对应的像素坐标;模块灰度值计算单元根据各个模块所对应的像素坐标计算各个模块的灰度值。二值化单元对模块进行二值化处理。码字提取单元根据二值化处理的模块提取码字。纠错译码单元对码字进行译码处理。
本发明还提供一种QR码解码方法,包括以下步骤:a.获取条码图像;b.搜索探测图形,获取条码参数;c.获取版本参数,根据版本参数获取模块参数;d.搜索校正特征,获取校正特征的像素坐标;e.根据条码参数、模块参数和校正特征的像素坐标,计算校正特征的模块坐标;f.根据校正特征的像素坐标和模块坐标,计算条码图像的像素坐标与模块坐标之间的映射关系;g.根据映射关系计算各个模块所对应的像素坐标;h.根据各个模块所对应的像素坐标计算各个模块的灰度值;i.对模块灰度值进行二值化处理;j.根据二值化处理结果提取码字;k.对码字进行译码处理。
本发明另提供一种QR码解码方法,包括以下步骤:a.获取条码图像;b.搜索特征图形,获取条码参数和特征图形的像素坐标;c.获取版本参数,根据版本参数获取模块参数;d.根据条码参数、模块参数和特征图形的像素坐标,计算特征图形的模块坐标;e.根据特征图形的像素坐标和模块坐标,计算条码图像的像素坐标与模块坐标之间的映射关系;f.根据映射关系计算各个模块所对应的像素坐标;g.根据各个模块所对应的像素坐标计算各个模块的灰度值;h.对模块灰度值进行二值化处理;i.根据二值化处理结果提取码字;j.对码字进行译码处理。
本发明又提供一种QR码解码方法,包括以下步骤:a.获取条码图像;b.在条码图像的预定区域内,提取符合预定长度的多个黑白边界线段;c.基于多个黑白边界线段构建多个直线;d.根据平行线特性对多个直线进行分组并形成行平行线组及列平行线组;e.根据QR码的特性,通过对行平行线组及列平行线组构建的网格进行判断来确认是否存在QR码;f.获取行平行线组及列平行线组构建的网格的特征图形的像素坐标,根据特征图形的像素坐标获取条码参数;g.获取版本参数,根据版本参数获取模块参数;h.搜索校正特征,获取校正特征的像素坐标;i.根据条码参数、模块参数和校正特征的像素坐标,计算校正特征的模块坐标;j.根据校正特征的像素坐标和校正特征的模块坐标,计算条码图像的像素坐标与模块坐标之间的映射关系;k.根据映射关系计算各个模块所对应的像素坐标;l.根据各个模块所对应的像素坐标计算各个模块的灰度值;m.对模块灰度值进行二值化处理;n.根据二值化处理的结果提取码字;o.对码字进行译码处理。
本发明的QR码解码方法,通过搜索校正特征,获取校正特征的像素灰度坐标与模块坐标,计算条码图像的像素坐标与模块坐标之间的映射关系,然后根据该映射关系计算模块灰度值,对模块灰度值进行二值化,进而还原QR码所对应的条码符号图形。与现有技术相比,本发明的QR码解码方法是在知晓条码特征信息,并根据条码特征信息对条码图像进行校正后进行的二值化处理,因此降低了噪声、畸变等因素对二值化过程的影响,减少了模块错误的出现,大大增加了条码的识别能力,提升了条码识别的解码成功率。
本发明的QR码条码解码芯片采用硬件流水线结构,通过硬件逻辑实现对条码图像的识别解码,由于硬件流水线结构适于对条码图像进行流水线作业和并行处理,因此处理速度很快。
相对于现有技术的处理器解码技术而言,本发明的QR码条码解码芯片采用全硬件结构,无需处理器参与解码,芯片结构相对于处理器而言结构更为简化、面积更小、功耗更低、成本更低、易于集成,容易实现便携应用。可以方便地与物联网技术相结合,为条码技术的应用提供了更为广阔的发展空间。
【附图说明】
图1是现有技术的一种QR码识别方法的流程图。
图2是图1所示的QR码识别方法的硬件结构图。
图3是QR码的条码符号图形示意图。
图4是QR码的条码符号图形的功能示意图。
图5是根据本发明的QR码条码解码芯片的解码方法的处理流程图。
图6是根据本发明的QR码条码解码芯片的第一实施方式的结构示意图。
图7是根据本发明的QR码条码解码芯片的第一实施方式中校正特征获取单元的第一种校正点获取结构的示意图。
图8是根据本发明的QR码条码解码芯片的第一实施方式中模块信息处理单元的结构示意图。
图9是根据本发明的QR码条码解码芯片的第一实施方式中模块信息处理单元的转换原理示意图。
图10是根据本发明的QR码条码解码芯片的第二实施方式的结构示意图。
图11是根据本发明的QR码条码解码芯片的第二实施方式中校正特征获取单元的第二种校正点获取结构的示意图。
【具体实施方式】
有关本发明的特征及技术内容,请参考以下的详细说明与附图,附图仅提供参考与说明,并非用来对本发明加以限制。
为使本领域技术人员更易于理解本发明的技术内容,提供以下条码术语的参考与说明,其中部分条码术语是根据中华人民共和国国家标准GB/T12905-2000而来,并非用于对本发明加以限制。
条码符号:某种条码定义的表示信息的条、空组合形式或模块的组合形式。
码字:码字表示源数据向条码符号转换的中间值。一种符号的码字数决定了该条码符号的所有符号的数量。
数据码字:数据码字表示数据符号的值。
纠错码字:纠错码字表示纠错符号的值。
模块:矩阵式二维条码中的一个最小独立单元,代表一位二进制数据。
功能图形:矩阵式二维条码符号中用于符号定位与特征识别的特定图形。功能图形包括探测图形、定位图形、校正图形等。
探测图形:矩阵式二维条码符号图形中,用于在条码图像中进行符号定位的特殊图形,也称位置探测图形。
定位图形:矩阵式二维条码符号图形中,用于确定符号中模块的像素坐标的图形。
校正图形:矩阵式二维条码符号图形中,用于确定符号位置的一个固定的参照图形。在条码图像有一定程度畸变或污损的情况下,可以通过校正图形对条码图像中模块的像素坐标进行校正。
编码区域:矩阵式二维条码符号图形中,未被功能图形占据,用于对数据和纠错码字进行编码,表示数据符号和纠错符号的区域。
版本:用于表示矩阵式二维条码符号规格的序列,反映了符号尺寸、符号中的模块数量和符号中的模块的排列方式。
版本信息:矩阵式二维条码符号图形中,用于确定矩阵式二维条码符号版本号的功能图形。
格式:用于表示矩阵式二维条码符号所使用的纠错等级以及掩模图形。
格式信息:矩阵式二维条码符号图形中,用于确定矩阵式二维条码符号所使用的纠错等级以及掩模图形信息的功能图形。
掩模图形:在编码区域内用掩模图形对位图进行异或处理,其目的是使符号中深色与浅色模块的比例均衡,并减少影响条码图像处理的图形出现。
二值化条码图像:用整体阈值或局部阈值对灰度条码图像进行处理,从而得到的深浅两色的条码图像。
阈值:分割两个检验等级的边界值,其值本身是上面等级的下限值。
模块错误:在二值化条码图像中,深浅状态和设计状态发生倒置的模块。
像素:光敏阵列(如CCD或CMOS器件)上的单个光敏单元在条码图像上所对应的单位,一个像素通常被视为条码图像的最小的完整单位。数码条码图像的储存方式一般以像素(Pixel)为单位,每个像素是数码条码图像里面积最小的单位。
图3是QR码的符号图形示意图,图4是QR码的符号图形功能说明图。为使本领域技术人员更易于理解本发明的技术内容,以下结合图3、图4对QR码进行简单说明。
如图3所示,QR码属于矩阵式二维条码的一种,其在结构形体及元素排列上与代数矩阵具有相似的特征。QR码的符号结构是由特定的符号功能图形及分布在矩阵元素位置上表示数据信息的正方形图形模块构成。其用深色模块单元表示二进制的“1”,用浅色模块单元表示二进制的“0”(当然,作为一种约定,也可用深色模块单元表示二进制的“0”,用浅色模块单元表示二进制的“1”)。数据码字流通过分布在矩阵元素位置上的单元模块的不同组合来表示。QR码的符号字符由8个模块按特定规律排列构成。
如图4所示,QR码符号图形的***是空白区,空白区是环绕在符号图形四周的4个模块宽的区域,其反射率与浅色模块相同,便于对条码符号图形的特征搜索。QR码符号图形包括功能图形和编码区两大部分。其中,功能图形包括位置探测图形、位置探测图形分隔符、校正图形和定位图形。
QR码符号图形包括3个相同的位置探测图形,分别位于符号图形的左上角、右上角和左下角,如图4所示。每个位置探测图形可以看作是由3个重叠的同心的正方形组成,它们分别为7x7的深色模块、5X5的浅色模块和3X3的深色模块。位置探测图形的模块宽度比为1:1:3:1:1。QR码符号图形中其他区域遇到类似图形的可能性极小。因此,可以根据位置探测图形在条码图像中识别可能存在的QR码符号图形。通过识别3个位置探测图形,可以明确地确定条码图像中QR码符号图形的位置区域和方向。此外,根据位置探测图形尺寸,还可以粗略地获得单一模块的尺寸参数。
QR码符号图形中位置探测图形分隔符位于每个位置探测图形和编码区之间,其全部由宽度为一个模块的浅色模块组成。
QR码符号图形中校正图形的数量视版本号而定,版本2以上(含版本2)的符号均有校正图形。与位置探测图形类似的,每个校正图形可以看作是由3个重叠的同心的正方形组成,它们分别为5x5的深色模块、3X3的浅色模块以及位于中心的一个深色模块。校正图形的模块宽度比为1:1:1:1:1。
QR码符号图形中定位图形包括水平定位图形和垂直定位图形,其分别为一个模块宽度的一行和一列深色和浅色模块交替组成,这种定位图形也成为轨道线或轨道码。其开始和结尾都是深色模块,水平定位图形位于上部的两个位置探测图形之间,符号图形的第6列。垂直定位图形位于左侧的两个位置定位图形之间,符号图形的第6列。
编码区包括版本信息、格式信息以及数据码字和纠错码字。版本信息表示QR码符号的模块数量以及排列方式,格式信息表示QR码的纠错等级和掩模图形信息。版本信息为18位,其中6位数据位,12位是BCH编码计算得到的纠错位。格式信息为15位,其中有5个数据位,10个是BCH编码计算得到的纠错位。第1、2数据位是符号的纠错等级,第3至5数据位是符号的掩模图形信息。对于所有版本的QR码符号而言,版本信息和格式信息在符号中的位置都是相同的,版本信息位于编码区临近右上角位置探测图形分隔符的左侧位置和左下角位置探测图形分隔符的上侧位置。格式信息位于编码区临近右上角位置探测图形分隔符的下侧位置、左下角位置探测图形分隔符的右侧位置以及左上角位置探测图形分隔符的两侧位置。数据码字表示QR码符号记载的数据信息。纠错码字是对数据码字进行纠错编码所形成的纠错码字,用于对数据码字进行错误纠正。
以下对本发明的QR码解码方法进行详细描述,图5是根据本发明的QR码解码方法的处理流程图。
如图5所示,在步骤901,在条码图像上进行特征搜索,以确定功能图形的像素坐标,根据功能图形的像素坐标和模块宽度比,计算条码参数,条码参数包括条码区域、条码方向和/或条码模块宽度、模块坐标等。在本发明的一种实施方式中,此步骤可以通过模板匹配检测功能图形,主要是位置探测图形或校正图形的方式实现。在本发明的另一种实施方式中,此步骤也可以通过比例检测的方式实现,该方式包括通过扫描方式检测条码图像中的深浅模块边界点,将深浅模块边界点之间的间距关系与位置探测图形或校正图形的模块尺寸比例相比较,根据比较结果确定位置探测图形或校正图形在条码图像上的像素坐标。另外,本发明还提供一种通过行列线检测实现对QR码的识别的实施方式,该方法包括以下步骤:首先在条码图像的预定区域内,提取符合预定长度的多个黑白边界线段;然后基于提取到的多个黑白边界线段构建多个直线;再根据平行线特性对多个直线进行分组并形成行平行线组及列平行线组;最后根据QR码的特性,通过对行平行线组及列平行线组构建的网格进行判断来确认是否存在QR码,并获取行平行线组及列平行线组构建的网格的特征图形的像素坐标,根据特征图形的像素坐标获取条码参数。
在步骤902,根据检测到的功能图形的像素坐标和条码参数,在条码图像上提取版本信息和格式信息,对版本信息和格式信息进行解码以获取版本/格式参数,例如包括版本号、纠错等级和掩模图形等。在某些情况下,条码图像上版本信息和格式信息区域会被污损而导致无法读取数据时,可以根据条码类型对条码的格式、版本进行预估。其中格式包括掩模图形及纠错等级。例如,通过将各个版本、掩模图形及纠错等级的可能进行排列组合来对版本和格式预估。例如将QR码的1~40个版本和L、M、Q、H四个纠错等级以及掩模图形进行排列组合,根据预估的格式、版本对条码图像进行后续处理。
在步骤903,在条码图像上搜索特征图形,例如包括条码图像的转角点、位置探测图形、校正图形、定位图形、动态特征模板、划线特征模板等,根据特征图形获取校正特征,例如包括校正点的像素坐标和灰度值。
在步骤904,根据版本参数确定模块参数,根据校正特征、模块参数和条码参数计算校正特征所对应的模块坐标,根据校正特征的像素坐标和模块坐标计算校正参数,该校正参数反映了条码图像的像素点与条码模块之间的映射关系,根据模块参数和校正参数计算各个模块所对应的像素点,根据各个模块所对应的像素点的坐标和灰度值计算各个模块所对应的灰度值,构造模块图。
在步骤905,对模块图进行二值化处理以提取位图。
在步骤906,根据步骤902得到的掩模图形对位图进行去掩模计算,例如是异或(XOR)计算,解除掩模并恢复表示数据码字和纠错码字的位流。
在步骤907,根据QR码的排列规则进行位流提取并转换为数据码字和纠错码字。
在步骤908,根据步骤902得到的版本号和纠错等级,重新将数据码字和纠错码字按块排列,进行错误检测和纠错计算,纠正删除错误和未知错误,直到版本号和纠错等级所规定的最大纠错容量,然后重新组配数据块序列,还原表示QR码信息的数据位流。
在步骤909,根据还原的数据位流进行译码,以获得QR码信息。
以下对本发明的QR码条码解码芯片进行详细描述,图6是根据本发明的QR码条码解码芯片的第一实施方式的结构示意图。
如图6所示,数据存储器11存储条码图像,QR码条码解码芯片10对数据存储器11存储条码图像进行识别解码。QR码条码解码芯片10包括控制逻辑单元100、特征搜索单元101、条码参数获取单元102、版本/格式参数获取单元103、校正特征获取单元104、模块信息处理单元105、二值化单元106、码字提取单元107以及纠错译码单元108。
控制逻辑单元100用于控制特征搜索单元101、条码参数获取单元102、版本/格式参数获取单元103、校正特征获取单元104、模块信息处理单元105、二值化单元106、码字提取单元107以及纠错译码单元108的工作状态和处理流程。控制逻辑单元100采用有限状态机(Finite State Machine)形式进行控制。有限状态机又称有限状态自动机或简称状态机,是表示有限个状态以及在这些状态之间的转移和动作等行为的状态逻辑。控制逻辑单元100可以用可编程逻辑设备、可编程逻辑控制器、逻辑门和触发器来构造。优选的实施方式中,控制逻辑单元100包括寄存器、确定状态转移的组合逻辑以及确定状态控制模块输出的组合逻辑。寄存器用于存储状态变量。
特征搜索单元101通过在条码图像中搜索特征图形来确定特征图形在条码图像上的像素坐标。特征图形包括但不限于条码的功能图形,例如位置探测图形、校正图形、定位图形等。优选的实施方式中,位置特征搜索单元101采用模板匹配的方式搜索位置探测图形,其根据位置探测图形的模块宽度比,例如是按照1:1:3:1:1的模块宽度比生成位置探测图形检测模板,将位置探测图形检测模板相对条码图像进行平移并进行灰度匹配,以确定位置探测图形检测模板与条码图像的最佳匹配位置,并根据最佳匹配位置确定条码图像中位置探测图形的中心点和四角的像素坐标。在本发明的另一种实施方式中,特征搜索单元101也可以通过比例检测的方式来确定特征图形在条码图像上的像素坐标,该方式包括通过扫描方式检测条码图像中的深浅模块边界点,将深浅模块边界点之间的间距关系与位置探测图形或校正图形的模块尺寸比例相比较,根据比较结果确定特征图形在条码图像上的像素坐标。另外,本发明还提供一种通过行列线检测实现对QR码的识别的实施方式,在该实施方法中,特征搜索单元101首先在条码图像的预定区域内,提取符合预定长度的多个黑白边界线段,然后基于提取到的多个黑白边界线段构建多个直线,再根据平行线特性对多个直线进行分组并形成行平行线组及列平行线组,最后根据QR码的特性,通过对行平行线组及列平行线组构建的网格进行判断来确认是否存在QR码,并获取行平行线组及列平行线组构建的网格的特征图形的像素坐标。
条码参数获取单元102根据特征搜索单元101所检测的特征图形的像素坐标来计算条码参数,例如条码方向、条码区域等,更进一步的,条码参数获取单元102根据特征图形的像素坐标和模块宽度比还可以进一步条码区域的范围和粗略计算条码模块宽度的尺寸,即条码模块宽度与像素宽度的比值,根据条码区域的范围和条码模块宽度还可以进一步估算模块坐标。
版本/格式参数获取单元103根据特征搜索单元101所检测的特征图形的像素坐标和条码参数,在条码图像上提取版本信息和格式信息,对版本信息和格式信息进行解码以获取版本/格式参数。由于编码区的版本信息、格式信息是临近位置检测图形设置的,版本/格式参数获取单元103根据位置检测图形的像素坐标和条码方向、条码模块宽度,可以搜索获得版本信息、格式信息区域,进行二值化计算和纠错译码后即可获取版本/格式参数,例如版本号、纠错等级和掩模图形等。
在某些情况下,条码图像上版本信息和格式信息区域会被污损而导致无法读取数据。版本/格式参数获取单元103可以根据条码类型对条码的格式、版本进行预估。其中格式包括掩模图形及纠错等级。例如,通过将各个版本、掩模图形及纠错等级的可能进行排列组合来对版本和格式预估。例如将QR码的1~40个版本和L、M、Q、H四个纠错等级以及掩模图形进行排列组合,根据预估的格式、版本对条码图像进行后续处理。
校正特征获取单元104通过在条码图像上搜索特征位置,例如包括条码图像的转角点、位置探测图形、校正图形、定位图形、动态模板、划线模板等,根据特征位置获取校正特征,例如包括校正点的像素坐标和/或模块坐标以及灰度值。校正特征获取单元包括多种实施方式,并非限定于根据校正图形获取校正特征。
图7是根据本发明的QR码条码解码芯片的第一实施方式中校正特征获取单元的第一种校正点获取结构的示意图。如图7所示,校正特征获取单元104包括校正图形搜索单元1041和校正点获取单元1042。与特征搜索单元101类似,校正图形搜索单元1041根据校正图形的模块宽度比和条码参数,例如是按照1:1:1:1:1的模块宽度比生成校正图形检测模板,将校正图形检测模板相对条码图像进行平移并进行灰度匹配。校正点获取单元1042对匹配结果进行相似度计算处理,以确定校正图形检测模板与条码图像的最佳匹配位置,根据最佳匹配位置确定条码图像中校正图形的中心点和/或四角的像素坐标以及灰度值。
模块信息处理单元105根据版本参数确定模块参数,根据校正特征、模块参数和条码参数计算校正特征所对应的模块坐标,根据校正特征的像素坐标和模块坐标计算校正参数,该校正参数反映了条码图像的像素点与条码模块之间的映射关系,根据模块参数和校正参数计算各个模块所对应的像素点,根据各个模块所对应的像素点的坐标和灰度值计算各个模块所对应的灰度值,构造模块图。
图8是根据本发明的QR码条码解码芯片的第一实施方式中模块信息处理单元的结构示意图。模块信息处理单元105包括模块参数计算单元1051、校正特征模块坐标计算单元1052、校正参数计算单元1053、模块像素点计算单元1054以及模块灰度值计算单元1055。模块参数计算单元1051根据版本参数,例如是版本号,通过查表或函数计算的方式获取与版本参数相对应的模块行数、列数和模块数量。校正特征模块坐标计算单元1052根据校正特征获取单元104提供的校正特征的像素坐标,结合条码参数计算获得像素坐标在条码区域中的相对位置,根据相对位置结合模块参数计算获得校正特征的模块坐标。校正参数计算单元1053根据校正特征的像素坐标和模块坐标计算获得校正参数,该校正参数反映了条码图像的像素点与条码模块之间的映射关系。模块像素点计算单元1054根据模块参数和校正参数计算各个模块所对应的像素点。模块与像素点之间的映射计算可以通过多种方式实现,包括透视变换、二次多项式、三次多项式、三角网格、小波变换或上述计算方式的结合等。模块像素点计算单元1054可以通过模块坐标计算对应的像素点的坐标,也可以通过像素坐标计算对应的模块的坐标。本发明对上述计算过程及其所采取的计算手段并不加以限定。模块灰度值计算单元1055根据各个模块所对应的像素点的坐标和灰度值计算各个模块所对应的灰度值,以构造模块图。模块的灰度值计算可以通过多种方式实现,包括统计计算、插值计算、均值计算、加权计算或上述计算方式的结合等,本发明对上述计算过程及其所采取的计算手段并不加以限定。
为便于本领域技术人员理解本发明的模块信息处理单元的处理过程,本发明举例一种计算方法对本发明的模块信息处理单元的转换原理进行说明,但是,该计算方法不应理解为对本发明的模块信息处理单元的限制。
图9是根据本发明的QR码条码解码芯片的第一实施方式中模块信息处理单元的转换原理示意图。模块81与像素区域82之间具有映射关系,变形区域821对应于模块81在像素区域82上的映射范围。模块81的中心点W在像素区域82所对应的映射点为W'。由图9可知,模块81所对应的像素点包括A-P的16个像素点,围绕映射点W'的像素点为A、B、C、D4个像素点。中心变形区域822对应于模块81的中心区域在像素区域82上的映射范围。对于矩阵条码而言,模块的中心区域所反映的模块值最准确。优选的实施方式中,可以通过A、B、C、D4个像素点的灰度值来计算与映射点W'相对应的模块中心点W的灰度值。当然,也可以通过像素区域82所对应的所有像素点来计算模块81的灰度值。即,模块81的灰度值可以通过与其对应的若干个像素点的灰度值计算得出。
二值化单元106接收模块信息处理单元105计算获得的模块灰度值,根据阈值对模块图进行二值化处理以提取位图。阈值的获取方式包括预设阈值、整体阈值获取、局部阈值获取等多种方式
码字提取单元107根据版本/格式参数获取单元103得到的掩模图形对位图进行去掩模计算,例如是异或(XOR)计算,解除掩模并恢复表示数据码字和纠错码字的位流,根据QR码的排列规则进行位流提取并转换为码字。在某些情况下,条码在编码生成时没有采用掩模图形进行处理,码字提取单元107可以根据位图直接提取表示数据码字和纠错码字的位流并转换为数据码字和纠错码字。
纠错译码单元108根据版本/格式参数获取单元103得到的版本号和纠错等级,重新将数据码字和纠错码字按块排列,进行错误检测和纠错计算,纠正删除错误和未知错误,直到版本号和纠错等级所规定的最大纠错容量,然后重新组配数据块序列,还原表示QR码信息的数据位流,根据还原的数据位流进行译码,以获得QR码信息。
图10是根据本发明的QR码条码解码芯片的第二实施方式的结构示意图。与本发明的QR码条码解码芯片的第一实施方式的不同之处在于,QR码条码解码芯片20的结构作了以下改进,其通过特征搜索单元201实现对功能图形和/或校正特征的搜索,取消了校正特征获取单元。
与本发明的第一实施方式相类似,特征搜索单元201通过在条码图像中搜索特征图形来确定特征图形在条码图像上的像素坐标。特征图形例如是位置探测图形。通过调整模板匹配的模块宽度比和/或模块坐标,特征搜索单元101还可以对其他特征图形进行搜索,例如校正图形。特征搜索单元201按照1:1:1:1:1的模块宽度比生成校正图形检测模板,将校正图形检测模板相对条码图像进行平移并进行灰度匹配。校正点获取单元1042对匹配结果进行相似度计算处理,以确定校正图形检测模板与条码图像的最佳匹配位置,根据最佳匹配位置确定条码图像中校正图形的中心点和/或四角的像素坐标以及灰度值。
特征图形包括但不限于条码的功能图形,例如位置探测图形、校正图形、定位图形等。为使本领域技术人员易于理解本发明,下面对功能图形之外的特征图形的表现形式作举例说明。QR码属于矩阵码的一种,其条码符号图形具有矩阵码的代数矩阵特征,条码符号可以视为是由若干个深浅不同的矩形模块组成。通过选取条码图像区域中相对于相邻模块图形比较容易区分的标志性较好的矩形模块图形的集合,可以形成动态特征模板。另外还可以通过搜索条码图像上位于同一行或列上的相互间隔的两个同色模块(深色模块或浅色模块),形成划线特征模板。
特征搜索单元201按照动态特征模板或划线特征模板的模块坐标所对应的模块宽度比生成动态特征模板或划线特征模板的检测模板,将动态特征模板或划线特征模板的检测模板相对条码图像进行平移并进行灰度匹配。对匹配结果进行相似度计算处理,以确定动态特征模板或划线特征模板的检测模板与条码图像的最佳匹配位置,根据最佳匹配位置确定条码图像中动态特征模板或划线特征模板的中心点和/或四角的像素坐标以及灰度值。
模块信息处理单元205直接接收特征搜索单元201所提供的特征图形的像素坐标作为校正特征进行处理,校正特征例如是条码图像中位置探测图形的中心点和四角的像素坐标,校正图形的中心点和四角的像素坐标,定位图形的像素坐标,或者是动态特征模板或划线特征模板的中心点的像素坐标等。图11是根据本发明的QR码条码解码芯片的第二实施方式中模块信息处理单元的结构示意图。与本发明的QR码条码解码芯片的第一实施方式的不同之处在于,校正特征模块坐标计算单元2052连接特征搜索单元201,并根据条码参数和模块参数计算单元2051提供的模块参数计算获得特征图形的模块坐标。校正参数计算单元2053根据特征图形的像素坐标和模块坐标计算获得校正参数,该校正参数反映了条码图像的像素点与条码模块之间的映射关系。模块像素点计算单元2054根据模块参数和校正参数计算各个模块所对应的像素点。模块与像素点之间的映射计算可以通过多种方式实现,包括透视变换、二次多项式、三次多项式、三角网格、小波变换或上述计算方式的结合等。模块灰度值计算单元2055根据各个模块所对应的像素点的坐标和灰度值计算各个模块所对应的灰度值,以构造模块图。
本发明的QR码解码方法,通过搜索校正特征,获取校正特征的像素灰度坐标与模块坐标,计算条码图像的像素坐标与模块坐标之间的映射关系,然后根据该映射关系计算模块灰度值,对模块灰度值进行二值化,进而还原QR码所对应的条码符号图形。与现有技术相比,本发明的QR码解码方法是在知晓条码特征信息,并根据条码特征信息对条码图像进行校正后进行的二值化处理,因此降低了噪声、畸变等因素对二值化过程的影响,减少了模块错误的出现,大大增加了条码的识别能力,提升了条码识别的解码成功率。
本发明的QR码条码解码芯片采用硬件流水线结构,通过硬件逻辑实现对条码图像的识别解码,由于硬件流水线结构适于对条码图像进行流水线作业和并行处理,因此处理速度很快。
相对于现有技术的处理器解码技术而言,本发明的QR码条码解码芯片采用全硬件结构,无需处理器参与解码,芯片结构相对于处理器而言结构更为简化、面积更小、功耗更低、成本更低、易于集成,容易实现便携应用。可以方便地与物联网技术相结合,为条码技术的应用提供了更为广阔的发展空间。
以上参照附图说明了本发明的各种优选实施例,但是只要不背离本发明的实质和范围,本领域的技术人员可以对其进行各种形式上的修改和变更,都属于本发明的保护范围。
Claims (10)
1.一种QR码条码解码芯片,包括:
特征搜索单元,在条码图像中搜索特征图形来确定所述特征图形的像素坐标;
条码参数获取单元,根据所述特征图形的像素坐标来获取条码参数;
版本/格式参数获取单元,获取条码的版本参数;
校正特征获取单元,在所述条码图像上搜索特征位置,根据所述特征位置获取校正特征,根据所述校正特征获取校正特征的像素坐标;
模块信息处理单元,所述模块信息处理单元包括模块参数计算单元、校正特征模块坐标计算单元、校正参数计算单元、模块像素点计算单元以及模块灰度值计算单元,其中:
所述模块参数计算单元根据所述版本参数获取模块参数;
所述校正特征模块坐标计算单元根据所述条码参数、所述模块参数和所述校正特征的像素坐标,计算所述校正特征的模块坐标;
所述校正参数计算单元根据所述校正特征的像素坐标和所述模块坐标,计算所述条码图像的像素坐标与模块坐标之间的映射关系;
所述模块像素点计算单元根据所述映射关系计算各个模块所对应的像素坐标;
所述模块灰度值计算单元根据所述各个模块所对应的像素坐标计算所述各个模块的灰度值;
二值化单元,对所述模块进行二值化处理;
码字提取单元,根据二值化处理的所述模块提取码字;
纠错译码单元,对所述码字进行译码处理。
2.根据权利要求1所述的QR码条码解码芯片,其特征在于,所述特征搜索单元根据所述特征图形的模块宽度比生成特征图形检测模板,将所述特征图形检测模板相对所述条码图像进行平移并进行灰度匹配,以确定所述特征图形检测模板与所述条码图像的最佳匹配位置,并根据所述最佳匹配位置确定所述条码图像中所述特征图形的像素坐标。
3.根据权利要求1所述的QR码条码解码芯片,其特征在于,所述特征搜索单元通过扫描方式检测所述条码图像中的深浅模块边界点,将所述深浅模块边界点之间的间距关系与所述特征图形的模块尺寸比例相比较,根据比较结果确定所述条码图像中所述特征图形的像素坐标。
4.根据权利要求1所述的QR码条码解码芯片,其特征在于,所述特征搜索单元在所述条码图像的预定区域内,提取符合预定长度的多个黑白边界线段,然后基于提取到的所述多个黑白边界线段构建多个直线,再根据平行线特性对所述多个直线进行分组并形成行平行线组及列平行线组,最后根据QR码的特性,通过对所述行平行线组及列平行线组构建的网格进行判断来确认是否存在QR码,并获取所述行平行线组及列平行线组构建的网格的所述特征图形的像素坐标。
5.根据权利要求1所述的QR码条码解码芯片,其特征在于,所述版本/格式参数获取单元根据所述特征图形的像素坐标和所述条码参数,在所述条码图像上提取版本信息,对所述版本信息进行解码以获取所述版本参数。
6.根据权利要求1所述的QR码条码解码芯片,其特征在于,所述版本/格式参数获取单元根据QR码的版本进行预估以获取所述版本参数。
7.一种QR码条码解码芯片,包括:
特征搜索单元,在条码图像中搜索特征图形来确定所述特征图形的像素坐标;
条码参数获取单元,根据所述特征图形的像素坐标来获取条码参数;
版本/格式参数获取单元,获取条码的版本参数;
模块信息处理单元,所述模块信息处理单元包括模块参数计算单元、校正特征模块坐标计算单元、校正参数计算单元、模块像素点计算单元以及模块灰度值计算单元,其中:
所述模块参数计算单元根据所述版本参数获取模块参数;
所述校正特征模块坐标计算单元根据所述特征图形的像素坐标、所述条码参数和所述模块参数计算特征图形的模块坐标;
所述校正参数计算单元根据所述特征图形的像素坐标和所述模块坐标计算所述条码图像的像素坐标与模块坐标之间的映射关系;
所述模块像素点计算单元根据所述映射关系计算各个模块所对应的像素坐标;
所述模块灰度值计算单元根据所述各个模块所对应的像素坐标计算所述各个模块的灰度值;
二值化单元,对所述模块进行二值化处理;
码字提取单元,根据二值化处理的所述模块提取码字;
纠错译码单元,对所述码字进行译码处理。
8.一种QR码解码方法,其特征在于,包括以下步骤:
a.获取条码图像;
b.搜索位置探测图形,获取条码参数;
c.获取版本参数,根据所述版本参数获取模块参数;
d.搜索校正特征,获取校正特征的像素坐标;
e.根据所述条码参数、所述模块参数和所述校正特征的像素坐标,计算所述校正特征的模块坐标;
f.根据所述校正特征的像素坐标和所述校正特征的模块坐标,计算所述条码图像的像素坐标与模块坐标之间的映射关系;
g.根据所述映射关系计算各个模块所对应的像素坐标;
h.根据所述各个模块所对应的像素坐标计算所述各个模块的灰度值;
i.对所述模块灰度值进行二值化处理;
j.根据所述二值化处理的结果提取码字;
k.对所述码字进行译码处理。
9.一种QR码解码方法,其特征在于,包括以下步骤:
a.获取条码图像;
b.搜索特征图形,获取条码参数和特征图形的像素坐标;
c.获取版本参数,根据所述版本参数获取模块参数;
d.根据所述条码参数、所述模块参数和所述特征图形的像素坐标,计算所述特征图形的模块坐标;
e.根据所述特征图形的像素坐标和所述特征图形的模块坐标,计算所述条码图像的像素坐标与模块坐标之间的映射关系;
f.根据所述映射关系计算各个模块所对应的像素坐标;
g.根据所述各个模块所对应的像素坐标计算所述各个模块的灰度值;
h.对所述模块灰度值进行二值化处理;
i.根据所述二值化处理结果提取码字;
j.对所述码字进行译码处理。
10.一种QR码解码方法,其特征在于,包括以下步骤:
a.获取条码图像;
b.在所述条码图像的预定区域内,提取符合预定长度的多个黑白边界线段;
c.基于所述多个黑白边界线段构建多个直线;
d.根据平行线特性对所述多个直线进行分组并形成行平行线组及列平行线组;
e.根据QR码的特性,通过对所述行平行线组及列平行线组构建的网格进行判断来确认是否存在QR码;
f.获取行平行线组及列平行线组构建的网格的特征图形的像素坐标,根据所述特征图形的像素坐标获取条码参数;
g.获取版本参数,根据所述版本参数获取模块参数;
h.搜索校正特征,获取所述校正特征的像素坐标;
i.根据所述条码参数、所述模块参数和所述校正特征的像素坐标,计算所述校正特征的模块坐标;
j.根据所述校正特征的像素坐标和所述校正特征的模块坐标,计算所述条码图像的像素坐标与模块坐标之间的映射关系;
k.根据所述映射关系计算各个模块所对应的像素坐标;
l.根据所述各个模块所对应的像素坐标计算所述各个模块的灰度值;
m.对所述模块灰度值进行二值化处理;
n.根据所述二值化处理的结果提取码字;
o.对所述码字进行译码处理。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010189802.3A CN101908125B (zh) | 2010-06-01 | 2010-06-01 | Qr码条码解码芯片及其解码方法 |
EP11168066.6A EP2393035B1 (en) | 2010-06-01 | 2011-05-30 | QR barcode decoding chip and decoding method thereof |
US13/149,842 US8550352B2 (en) | 2010-06-01 | 2011-05-31 | QR barcode decoding chip and decoding method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010189802.3A CN101908125B (zh) | 2010-06-01 | 2010-06-01 | Qr码条码解码芯片及其解码方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101908125A CN101908125A (zh) | 2010-12-08 |
CN101908125B true CN101908125B (zh) | 2014-07-02 |
Family
ID=43263582
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010189802.3A Active CN101908125B (zh) | 2010-06-01 | 2010-06-01 | Qr码条码解码芯片及其解码方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US8550352B2 (zh) |
EP (1) | EP2393035B1 (zh) |
CN (1) | CN101908125B (zh) |
Families Citing this family (40)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102087698B (zh) * | 2011-03-03 | 2015-12-02 | 天地融科技股份有限公司 | 一种信息传输方法及***、条形码显示及读取装置 |
JP5412465B2 (ja) * | 2011-04-27 | 2014-02-12 | 京セラドキュメントソリューションズ株式会社 | 画像処理装置 |
EP2634725B1 (en) * | 2011-05-31 | 2016-08-31 | Rakuten, Inc. | Image processing device, image processing method, program, and recording medium |
EP2751750A4 (en) * | 2011-08-30 | 2015-04-01 | Hewlett Packard Development Co | IDENTIFY THE USER TARGET RELATION |
US8500026B2 (en) * | 2011-12-06 | 2013-08-06 | Xerox Corporation | Dual resolution two-dimensional barcode |
US9892300B2 (en) * | 2012-11-13 | 2018-02-13 | Kyodo Printing Co., Ltd. | Two-dimensional code |
CN103366149B (zh) * | 2013-06-05 | 2017-05-31 | 北京奇付通科技有限公司 | 移动终端处理可视化图形编码的方法和装置 |
US9270386B2 (en) * | 2013-06-24 | 2016-02-23 | Intel Corporation | Error detecting and correcting structured light patterns |
CN104517109B (zh) * | 2013-09-29 | 2018-03-06 | 北大方正集团有限公司 | 一种qr码图像的校正方法及*** |
CN104517092B (zh) * | 2013-09-29 | 2018-04-03 | 北大方正集团有限公司 | 一种qr码校正图形的检测方法及*** |
CN103617441A (zh) * | 2013-11-27 | 2014-03-05 | 上海电机学院 | 基于二维码的***生成***及其图案识别方法 |
CN103646266A (zh) * | 2013-11-27 | 2014-03-19 | 上海电机学院 | 基于二维码的票据生成***及其识别方法 |
USD757094S1 (en) * | 2014-04-29 | 2016-05-24 | Tencent Technology (Shenzhen) Company Limited | Display screen portion with animated graphical user interface |
JP2016095603A (ja) * | 2014-11-13 | 2016-05-26 | カシオ計算機株式会社 | 電子機器およびプログラム |
CN104463066B (zh) * | 2014-12-03 | 2017-05-10 | 上海电机学院 | 一种商品外包装一维条形码快速定位识别方法 |
CN105069389B (zh) * | 2015-07-27 | 2017-10-31 | 福建联迪商用设备有限公司 | 二维码分块解码方法及*** |
EP3166048A1 (en) * | 2015-11-06 | 2017-05-10 | ams AG | Optical reader device, tag for use on a disposable or replaceable component, optical data validation system and method for optical data validation |
CN105512598A (zh) * | 2015-12-29 | 2016-04-20 | 暨南大学 | 一种qr码图像取样的自适应匹配识别方法 |
CN106127276B (zh) * | 2016-06-27 | 2018-12-21 | 福建联迪商用设备有限公司 | 一种量化污损QRCode的方法及*** |
CN111291584B (zh) * | 2016-07-22 | 2023-05-02 | 创新先进技术有限公司 | 识别二维码位置的方法及其*** |
CN106503604B (zh) * | 2016-10-18 | 2019-05-14 | 上海觉感视觉科技有限公司 | 一种qr码的位置探测图形分组方法 |
CN106779745A (zh) * | 2016-12-15 | 2017-05-31 | 上海净意信息科技有限公司 | 一种有机畜牧追溯监测***及方法 |
TWI684134B (zh) * | 2017-07-24 | 2020-02-01 | 國立臺灣師範大學 | 圖像化二維條碼製作裝置及製作方法 |
CN107563477A (zh) * | 2017-07-26 | 2018-01-09 | 中国农业大学 | 二维码及其生成方法和装置 |
CN108596001B (zh) * | 2017-09-21 | 2021-02-02 | 北京三快在线科技有限公司 | 二维码纠错译码方法、装置、电子设备及计算机可读介质 |
RU2695054C1 (ru) * | 2018-06-18 | 2019-07-18 | Общество с ограниченной ответственностью "Аби Продакшн" | Детектирование баркодов на изображениях |
CN110874538B (zh) * | 2018-08-29 | 2023-06-02 | 杭州海康威视数字技术股份有限公司 | 对条形码的译码结果的评测方法、装置及电子设备 |
CN110889304B (zh) * | 2018-09-11 | 2023-04-28 | 杭州海康威视数字技术股份有限公司 | 二维码质量评估方法及装置、存储介质、电子设备、*** |
CN109858303B (zh) * | 2018-12-19 | 2022-05-06 | 维沃移动通信有限公司 | 一种扫描方法及终端设备 |
CN109871723B (zh) * | 2019-01-16 | 2022-06-21 | 王诗会 | 图像融合信息的处理方法及*** |
CN110245537B (zh) * | 2019-05-28 | 2020-10-02 | 北京三快在线科技有限公司 | 图形码解码方法,装置,存储介质及电子设备 |
EP3789906B1 (de) * | 2019-09-05 | 2021-07-07 | Sick Ag | Bestimmen der modulgrösse eines optischen codes |
EP3812953B1 (de) * | 2019-10-22 | 2021-09-29 | Sick Ag | Codeleser und verfahren zum lesen von optischen codes |
CN110765804B (zh) * | 2019-10-22 | 2023-01-20 | 江苏邦融微电子有限公司 | 一种条形码硬件解码ip核及解码方法 |
CN111222613B (zh) * | 2020-04-16 | 2020-07-28 | 上海商魁信息科技有限公司 | 一种处理二维码的方法、装置和计算机存储介质 |
CN111931537B (zh) * | 2020-06-19 | 2023-06-13 | 广东奥普特科技股份有限公司 | 一种颗粒状qr二维码定位方法 |
CN114021596A (zh) * | 2021-09-22 | 2022-02-08 | 厦门华联电子股份有限公司 | 一种基于深度学习的条码识别方法及装置 |
CN114021595A (zh) * | 2021-09-22 | 2022-02-08 | 厦门华联电子股份有限公司 | 一种二维码识别方法及装置 |
CN115759145B (zh) * | 2022-11-14 | 2023-05-23 | 东集技术股份有限公司 | 条码识别方法、装置、存储介质及计算机设备 |
CN116776909B (zh) * | 2023-08-28 | 2023-11-03 | 四川星点网络技术有限公司 | 一种瓶盖二维码溯源*** |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5481103A (en) * | 1994-07-26 | 1996-01-02 | Metanetics Corporation | Packet bar code with data sequence encoded in address/data packets |
CN1801188A (zh) * | 2006-01-18 | 2006-07-12 | 冯文伦 | 一种矩阵式二维条码及其编码解码方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4301775B2 (ja) * | 2002-07-18 | 2009-07-22 | シャープ株式会社 | 2次元コード読み取り装置,2次元コード読み取り方法,2次元コード読み取りプログラム及び該プログラムの記録媒体 |
US8326037B1 (en) * | 2005-11-23 | 2012-12-04 | Matrox Electronic Systems, Ltd. | Methods and apparatus for locating an object in an image |
US7546950B2 (en) * | 2006-03-28 | 2009-06-16 | Seiko Epson Corporation | Method and apparatus for locating and decoding a two-dimensional machine-readable symbol |
US7946491B2 (en) * | 2006-08-03 | 2011-05-24 | Nokia Corporation | Method, apparatus, and computer program product for providing a camera barcode reader |
US20100327066A1 (en) * | 2009-06-25 | 2010-12-30 | Samsung Electronics Co. Ltd. | Network based reliable decoding of bar codes |
CN101882210B (zh) * | 2010-06-01 | 2012-06-27 | 福建新大陆电脑股份有限公司 | 矩阵式二维条码解码芯片及其解码方法 |
CN101882207B (zh) * | 2010-06-01 | 2012-06-20 | 福建新大陆电脑股份有限公司 | Data Matrix码条码解码芯片及其解码方法 |
EP2393036B1 (en) * | 2010-06-01 | 2016-03-02 | Fujian Newland Computer Co., Ltd. | Barcode decoding chip |
-
2010
- 2010-06-01 CN CN201010189802.3A patent/CN101908125B/zh active Active
-
2011
- 2011-05-30 EP EP11168066.6A patent/EP2393035B1/en active Active
- 2011-05-31 US US13/149,842 patent/US8550352B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5481103A (en) * | 1994-07-26 | 1996-01-02 | Metanetics Corporation | Packet bar code with data sequence encoded in address/data packets |
CN1801188A (zh) * | 2006-01-18 | 2006-07-12 | 冯文伦 | 一种矩阵式二维条码及其编码解码方法 |
Non-Patent Citations (1)
Title |
---|
胡孝鹏.基于图像处理的嵌入式QR码识别***的研究与实现.《CNKI-中国优秀硕士学位论文全文数据库》.2007,第10页,第13页至第38页,第54页至第57页. * |
Also Published As
Publication number | Publication date |
---|---|
US20110290879A1 (en) | 2011-12-01 |
EP2393035B1 (en) | 2016-03-23 |
CN101908125A (zh) | 2010-12-08 |
EP2393035A2 (en) | 2011-12-07 |
EP2393035A3 (en) | 2012-11-14 |
US8550352B2 (en) | 2013-10-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101908125B (zh) | Qr码条码解码芯片及其解码方法 | |
CN101882207B (zh) | Data Matrix码条码解码芯片及其解码方法 | |
CN101882210B (zh) | 矩阵式二维条码解码芯片及其解码方法 | |
CN101908128B (zh) | Aztec Code条码解码芯片及其解码方法 | |
US9406010B2 (en) | Producing, capturing and using visual identification tags for moving objects | |
CN106156820B (zh) | 二维码生成方法及装置 | |
CN101645081A (zh) | 一种通过二维码追溯农产品信息的方法和*** | |
CN101923632B (zh) | Maxi Code条码解码芯片及其解码方法 | |
AU2017380263B2 (en) | Method for detecting and recognising long-range high-density visual markers | |
CN105787897A (zh) | 一种模糊二维码图像的处理方法及装置 | |
CN103530669A (zh) | 一种数据信息的二维码编码方法 | |
Jia et al. | EMBDN: An efficient multiclass barcode detection network for complicated environments | |
CN101840499B (zh) | 一种条码解码方法及其二值化方法 | |
CN101882211B (zh) | 汉信码条码解码芯片及其解码方法 | |
CN101908126B (zh) | Pdf417条码解码芯片 | |
CN201946008U (zh) | 矩阵式二维条码解码芯片 | |
CN201518129U (zh) | 一种用于农产品的二维码信息追溯*** | |
US9129171B2 (en) | Code reading device and code reading method | |
CN101833640B (zh) | 条空边界像素点计算模块及其计算方法 | |
CN201965627U (zh) | Aztec Code条码解码芯片 | |
CN201936319U (zh) | Qr码条码解码芯片 | |
CN201946009U (zh) | 汉信码条码解码芯片 | |
CN201936317U (zh) | Data Matrix码条码解码芯片 | |
CN201927029U (zh) | Maxi Code条码解码芯片 | |
CN101833642B (zh) | MicroPDF417条码解码芯片 |
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 |
Address after: 350015 No. 1 Rujiangxi Road, Mawei District, Fuzhou City, Fujian Province Patentee after: New Continent 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. |
|
CP03 | Change of name, title or address |