CN201927043U - 一维条码解码芯片 - Google Patents

一维条码解码芯片 Download PDF

Info

Publication number
CN201927043U
CN201927043U CN2010202132799U CN201020213279U CN201927043U CN 201927043 U CN201927043 U CN 201927043U CN 2010202132799 U CN2010202132799 U CN 2010202132799U CN 201020213279 U CN201020213279 U CN 201020213279U CN 201927043 U CN201927043 U CN 201927043U
Authority
CN
China
Prior art keywords
module
bar
bar code
barcode
border
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
Application number
CN2010202132799U
Other languages
English (en)
Inventor
王贤福
蔡强
陈文传
陈春光
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujian Newland Computer Co Ltd
Original Assignee
Fujian Newland Computer Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujian Newland Computer Co Ltd filed Critical Fujian Newland Computer Co Ltd
Priority to CN2010202132799U priority Critical patent/CN201927043U/zh
Application granted granted Critical
Publication of CN201927043U publication Critical patent/CN201927043U/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Abstract

本实用新型提供一种一维条码解码芯片,包括:扫描模块,产生扫描坐标;边界识别模块,根据扫描坐标读取条码图像,并对所读取的图像像素点进行计算,以获取条码图像的条空边界点;方向识别模块,根据边界识别模块获取的条空边界点计算获得条码方向;条空边界处理模块,根据条码方向对条码图像进行处理,以获取条码图像中的条空边界;符号参数识别模块,根据条空边界对条码的符号参数进行识别,以获取符号参数;符号字符获取模块,根据条空边界和符号参数计算获得符号字符;以及译码模块,将符号字符转换为条码信息。本实用新型的一维条码解码芯片采用硬件流水线结构,适于对条码图像进行流水线作业和并行处理,处理速度快。

Description

一维条码解码芯片
【技术领域】
本实用新型涉及条码识别技术领域,特别地,涉及一种一维条码解码芯片。
【背景技术】
条码技术是在计算机技术与信息技术基础上发展起来的一门集编码、印刷、识别、数据采集和处理于一身的新兴技术。条码技术由于其识别快速、准确、可靠以及成本低等优点,被广泛应用于商业、图书管理、仓储、邮电、交通和工业控制等领域,并且势必在逐渐兴起的“物联网”应用中发挥重大的作用。
目前被广泛使用的条码包括一维条码及二维条码。一维条码又称线形条码是由平行排列的多个“条”和“空”单元组成,条码信息依靠条和空的不同宽度和位置来表达。二维条码是由按一定规律在二维方向上分布的黑白相间的特定几何图形组成,其可以在二维方向上表达信息。二维条码可以分为行列式二维条码和矩阵式二维条码。行列式二维条码是由多行短截的一维条码堆叠而成,代表性的行列式二维条码包括PDF417、Code 49、Code 16K等。行列式二维条码信息表示方法与一维条码类似,也是依靠条和空的不同宽度和位置来表达。矩阵式二维条码是由按预定规则分布于矩阵中的黑、白模块组成,代表性的矩阵式二维条码包括QR码、Data Matrix码、Maxi码、Aztec码、汉信码等。
在条码进行解码的过程中,通常是利用扫描设备对于条码进行扫描,以获取反射光信号,或者是利用摄影设备对条码进行拍摄,以获取条码图像,通过对反射光信号或条码图像进行识别处理来获取条码信息。
如图1所示,是三星电子株式会社提出的中国专利申请第200510126730.7号,其公开了一种读取条码的方法和装置。该装置包括:扫描单元,用于感测条码并且生成扫描信号;搜索单元,用于计算扫描信号的变化率,从扫描信号中提取斜线段,并搜索所提取的斜线段的起点和终点以检测条码的条的边缘;以及条码读取单元,用于基于所检测的边缘之间的距离而读出条码。这种读取条码的方法和装置的缺点在于,该装置必须依赖于使用者通过扫描单元正确地感测条码方向,读取条码的装置本身不能识别条码方向,不能根据条码方向调整解码方向,由此造成了使用不便和应用的局限性,在条码的条空密度较大,或者是畸变较大的情况下会造成无法识别解码。
因此,针对现有技术存在的以上不足,亟需提供一种一维条码解码芯片,使得能保证正确识别条码的条空信息,提高解码成功率。
【发明内容】
针对现有技术存在的解码装置依赖于使用者通过扫描单元正确地感测条码方向,不能根据条码方向调整解码方向的不足,本实用新型提供一种一维条码解码芯片,可以正确识别条码的条空信息,提高解码成功率。
本实用新型提供一种一维条码解码芯片,包括:扫描模块;边界识别模块,与扫描模块连接;方向识别模块,与边界识别模块连接;符号参数识别模块,与边界识别模块和方向识别模块连接;符号字符获取模块,与符号参数识别模块连接;译码模块,与所述符号字符获取模块连接。
本实用新型的一维条码解码芯片能够自动识别条码方向,无需使用者调整扫描单元的扫描方向即可实现对条码图像的识别解码,并且条码边界的识别精度高,解码成功率高。
本实用新型的一维条码解码芯片能够根据条码方向调整解码方向,获取条码边界的精确坐标值,大大提高了解码成功率,特别适用于高密度条码或畸变条码的识别解码。
本实用新型的一维条码解码芯片采用硬件流水线结构,通过硬件逻辑实现对条码图像的识别解码,由于硬件流水线结构适于对条码图像进行流水线作业和并行处理,因此处理速度很快。由于采用全硬件结构,无需处理器参与解码,芯片结构相对于处理器而言结构更为简化、面积更小、功耗更低、成本更低、易于集成,容易实现便携应用。可以方便地与物联网技术相结合,为条码技术的应用提供了更为广阔的发展空间。
【附图说明】
图1是现有技术的一种读取条码的方法和装置的结构示意图。
图2是本实用新型的一维条码解码芯片示意图。
图3是本实用新型的一维条码解码芯片中的扫描模块的结构示意图。
图4是根据本实用新型的条码方向识别方法的识别原理示意图。
图5是本实用新型的一维条码解码芯片中的条空边界处理模块的结构示意图。
图6是本实用新型的条空边界处理模块对条码图像进行处理的工作原理示意图。
图7是图6中对条码图像进行处理的局部放大图。
图8是本实用新型的一维条码解码芯片中的符号字符提取模块的结构示意图。
图9是本实用新型的一维条码解码芯片中的译码模块的结构示意图。
图10是本实用新型的一维条码解码芯片中的译码模块的另一种实施方式的结构示意图。
【具体实施方式】
有关本实用新型的特征及技术内容,请参考以下的详细说明与附图,附图仅提供参考与说明,并非用来对本实用新型加以限制。
以下首先对本实用新型的一维条码解码芯片进行详细描述,图2是本实用新型的一维条码解码芯片示意图。本实用新型的一维条码解码芯片10连接数据存储器11。数据存储器11用于存储条码图像信息。条码图像信息包括图像像素坐标以及图像像素灰度值等。这些条码图像信息以一定顺序的存储方式存储在数据存储器11内。进一步地,数据存储器11还包括地址存储空间(图未示),地址存储空间用于存储图像像素坐标,一个图像像素坐标对应地址存储空间内的一个地址位,图像像素坐标在地址存储空间内的存储方式为顺序存储。
一维条码解码芯片10包括状态控制模块100、扫描模块110、边界识别模块120、方向计算模块130、条空边界处理模块140、符号字符提取模块150、符号参数识别模块160以及译码模块170。
状态控制模块100用于控制扫描模块110、边界识别模块120、方向计算模块130、条空边界处理模块140、符号字符提取模块150、符号参数识别模块160以及译码模块170的工作状态和处理流程。
下面结合图2-10对本实用新型的一维条码解码芯片的各个模块逐一进行详细描述。
图3是本实用新型的一维条码解码芯片中扫描模块的结构示意图。
扫描模块110用于建立扫描坐标系,并产生扫描坐标,扫描坐标对应于数据存储器11的地址存储空间内的地址位,用于扫描数据存储器11内与地址位相对应的条码图像信息。扫描模块110包括扫描坐标生成单元111和坐标映射变换单元112。扫描坐标生成单元111用于产生初始扫描坐标。坐标 映射变换单元112用于将初始扫描坐标生成单元111产生的初始扫描坐标经过坐标变换后映射至数据存储器11的地址存储空间。坐标映射变换单元112的坐标变换功能至少包括坐标平移变换、坐标旋转变换或坐标轴互换变换中的一种或其组合。坐标映射变换单元112坐标变换可以实现对条码图像进行不同方向的扫描。
边界识别模块120根据扫描模块110所产生的扫描坐标读取数据存储器11内的与地址位相对应的条码图像信息,对条码图像进行虚拟扫描,条码图像信息包括图像像素坐标以及图像像素灰度值。所谓虚拟扫描是指通过扫描电路根据一定的逻辑获取条码图像的择像素坐标和灰度值,例如是X方向沿水平方向扫完第1行,Y方向递增10个像素间距,继续X方向沿水平方向扫第2行。边界识别模块120通过计算虚拟扫描线上存在灰度落差的像素点的坐标位置来获取与虚拟扫描线相交的条空边界点。对于条码符号而言,条一般用黑色或深色表示,空一般用白色或浅色表示。更进一步的,边界识别模块120还可以根据获取的条空边界点对条码类型进行识别。
方向识别模块130根据边界识别模块120所获取的条空边界点计算获得条码方向。以下对本实用新型的方向识别模块130获取条码方向的方法进行详细描述,图4是根据本实用新型的条码方向识别方法的识别原理示意图。如图4所示,条码图像为倾斜状态,无法直接沿水平方向作虚拟扫描线进行识别解码。需要获取条码方向后对虚拟扫描方向进行调整。第一扫描方向条码方向的夹角为θ2,而由于θ2与θ1与统一角度互为补角,因此θ1=θ2。所以只需知道θ1的斜率tgθ1,即可获得条码方向的斜率tgθ2。
而由图4可知, tgθ 1 = - x 2 - x 1 y 2 - y 1 .
上式中,(x2,y2)和(x1,y1)的坐标可以由虚拟扫描线与条空相交的边 界点获得,根据各条虚拟扫描线与条空相交的边界点的坐标值,通过X坐标位置比较,y坐标位置比较来判断各点的平行四边形特征,可以确定位于一个平行四边形特征内的(x2,y2)和(x1,y1)的像素点的坐标,进而计算获得tgθ1的值,即获得条码方向。上述平行四边形特征也可以采用平行线特征代替,上述平行四边形特征或平行线特征并不限定在一个条空范围内。
在方向识别模块130计算获得条码方向之后,条空边界处理模块140根据条码方向对条码图像进行处理,以获取条码图像中准确的条空边界。
图5是本实用新型的一维条码解码芯片中条空边界处理模块的结构示意图。如图5所示,条空边界处理模块140进一步包括扫描边界获取单元141、直线扫描单元142、亚像素边界计算单元143、直线计算单元144以及扫描坐标计算单元145。图6是本实用新型的条空边界处理模块对条码图像进行处理的工作原理示意图,图7是图6中对条码图像进行处理的局部放大图。以下结合图5、图6和图7对条空边界处理模块140中各个单元的结构功能和处理流程进行描述。
如图5所示,扫描边界获取单元141连接边界识别模块120和方向计算模块130。扫描边界获取单元141从边界识别模块120获取条码边界点,从方向计算模块130获取条码方向。
如图6和图7所示,扫描边界获取单元141以两侧的条码边界点为中心,依据条码方向和与条码方向垂直的方向向外扩展,分别获取边界区域821和826。边界区域821和826内包括了条码边界点及其附近的像素点的集合。扫描边界获取单元141将边界区域821和826内的像素点的集合输入直线计算单元144中,直线计算单元144对边界区域821和826内的像素点的集合进行Hough(霍夫)运算。Hough运算的基本原理为:假设在直角坐标系中存在一条原点距离为ρ,方位角为θ的直线,则直线上每一点满足公式 ρ=xcosθ+ysinθ。在条码边界搜索过程中,对于每一个像素点的图像空间坐标x、y,利用不同的θ离散值通过上述运算公式计算对应的ρ值,通过对θ离散值和ρ值的统计,求得直线所对应的像素坐标。在本实用新型的实施方式中,直线计算单元144例如可以采用多个串行连接的cordic迭代运算单元实现对像素点的集合内的霍夫(Hough)计算,以求得直线坐标。
直线计算单元144通过Hough运算获取边界区域821内条码边界所对应的边界直线822的像素点坐标,以及边界区域826内条码边界所对应的边界直线827的像素点坐标,将运算结果返回至扫描边界获取单元141。边界直线822和827反映了边界区域821和826内的条空边界的直线特征。
扫描边界获取单元141依据条码方向,将边界直线822和边界直线827的像素点坐标向条码区域外平移预定距离以获得扫描边界823和828,预定距离例如是5-10个像素点的间距。边界直线822和827反映的是条空边界的直线特征,但是由于条码印刷或条码成像的影响,条码图像中实际的条空边界并非是一条严格的直线,而是基于直线特征的带有微小波动的曲线或多个直线段的集合。为了获取更准确的条空边界,扫描边界获取单元141通过将边界直线822和边界直线827的像素点坐标向外平移,以将基于直线特征的带有微小波动的曲线或多个直线段的集合包括在扫描边界823和828的范围内。之后,扫描边界获取单元141将扫描边界823和828输入直线扫描单元142中进行下一步处理。
直线扫描单元142在一侧扫描边界823上选取点A,在另一侧的扫描边界828上获取与点A相对应的点A′。点A′的包括多种获取方法。在本实用新型的一种实施方式中,点A′获取方法为以点A为起点,根据条码方向(即tgθ1的值)在扫描边界828上搜索与点A位于同一条直线上的点A′,即根据已知直线、直线外的坐标点A的坐标以及经点A的另一条直线的斜率值, 求出已知直线与另一条直线的交点A′的坐标。在本实用新型的另一种实施方式中,点A′获取方法为计算在扫描边界828上与点A距离最短的坐标点,该坐标点即为点A′。
直线扫描单元142以A为扫描起点,A′为扫描终点,计算A-A′之间的直线824上的像素点的坐标。直线扫描单元142通过将点A和点A′的坐标值输入扫描坐标计算单元145中,扫描坐标计算单元145对A-A′之间的直线824上的像素点825的坐标进行计算。
扫描坐标计算单元145计算像素点825的坐标的方法包括多种方式。在本实用新型的一种实施方式中,扫描坐标计算单元145包括Breshem运算单元,通过Breshem运算单元计算A-A′两点之间的直线824上各个像素点的坐标。Breshem算法原理如下:条码图像由像素点构成,过条码图像中各行各列的像素中心构造一组虚拟网格线。按直线从起点到终点的顺序计算直线与各垂直网格线的交点,然后确定该列像素中与此交点最近的像素。Breshem算法的巧妙之处在于采用增量计算,使得对于每一列,只要检查一个误差项的符号,就可以确定该列的所求像素点的坐标。Breshem使得在求两点之间直线上各点坐标的过程中全部以整数来运算,因而大幅度提升了计算速度。
扫描坐标计算单元145将计算出的A-A′两点之间的直线824上的像素点825的坐标返回至直线扫描单元142,直线扫描单元142将A-A′两点之间的直线824上的像素点825的坐标输入亚像素边界计算单元143中。
亚像素边界计算单元143依据A-A′之间像素点825的坐标以及灰度值,进行亚像素边界计算,将像素点825所对应的分为更小的单位以获取条空边界的精确坐标并计算出该精确坐标所对应的灰度落差值。
由此,条空边界处理模块140获取了条码图像中精确的条空边界坐标和该精确坐标所对应的灰度落差值,并将此条空边界数据输入符号字符获取模 块150和符号参数识别模块160中。
图8是本实用新型的一维条码解码芯片中的符号字符提取模块的结构示意图。如图8所示,本实用新型的符号字符提取模块150包括条空判定单元151和条空值计算单元152。
其中,条空判定单元151一端连接符号参数识别模块160和条空边界处理模块140,另一端连接条空值计算单元152,其存储条空边界处理模块140提供的条空边界数据并对其中的干扰边界进行判定排除,获取有效的条空边界组合。
符号参数识别模块160根据条空边界处理模块140提供的条空边界数据,对条码的符号参数进行识别,符号参数包括条码的符号字符的条空边界数、符号字符的条空宽度、校验信息等。符号参数识别模块160识别符号参数的方法包括簇号计算、码制判断等多种方法。
条空判定单元151根据符号参数识别模块160提供的符号参数,对条空边界处理模块140提供的条空边界数据进行处理,将其中的干扰边界排除。条空判定单元151的具体工作过程如下:条空判定单元151存储的条空边界数量未达到符号参数中的条空边界数时,条空判定单元151继续获取条空边界处理模块140提供的条空边界数据。当条空判定单元151存储的条空边界数量达到符号参数中的条空边界数时,条空判定单元151计算已存储的条空边界组合的条空宽度值,并将已存储的条空边界组合的条空宽度值与符号参数中的条空宽度相比较,当已存储的条空边界组合的条空宽度值小于符号参数中的条空宽度时,条空判定单元151排除所存储的灰度落差宽度最小的条空边界,并继续获取条空边界处理模块140提供的条空边界。当已存储的条空边界组合的条空宽度值达到符号参数中的条空宽度时,条空判定单元151将所存储的条空边界的组合输出至条空值计算单元152。
条空值计算单元152获取条空边界的组合中各个条空边界的坐标和灰度落差值,通过比较计算由各个条空边界所构成的条空宽度值,进而获取符号字符,将计算出的符号字符输入译码模块170中。
图9是本实用新型的一维条码解码芯片中的译码模块的结构示意图。如图9所示,本实用新型的译码模块170包括码字获取单元171、码字纠错单元172、译码单元173以及码表存储单元174。译码模块170将符号字符提取模块150提供的符号字符转换为码字并进行纠错译码,以获得条码信息,然后将条码信息输入数据存储器11的解码信息存储区。
其中,码表存储单元174存储表示符号字符与码字对应关系的码表。码字获取单元171根据码表利用接收的符号字符获取初始码字。码字纠错单元172对初始码字进行RS纠错处理,以获取正确码字。译码单元173根据码表利用正确码字获取正确符号字符,并根据正确符号字符所对应的字符集进行译码来获得条码信息。
码表存储单元174存储符号字符与码字对应关系的码表。其中,符号字符则对应于条码的不同条空值组合。码表存储单元174将码表存储于ROM(Read-Only Memory,只读内存)中。
图10是本实用新型的一维条码解码芯片中的译码模块的另一种实施方式的结构示意图。如图10所示,本实用新型的译码模块270包括错误检验单元271和译码单元272。译码模块270将符号字符提取模块150提供的符号字符进行错误检验,并根据符号字符所对应的字符集获得条码信息,然后将条码信息输入数据存储器的解码信息存储区。
本实用新型的一维条码解码芯片能够自动识别条码方向,无需使用者调整扫描单元的扫描方向即可实现对条码图像的识别解码,并且条码边界的识别精度高,解码成功率高。
本实用新型的一维条码解码芯片能够根据条码方向调整解码方向,获取条码边界的精确坐标值,大大提高了解码成功率,特别适用于高密度条码或畸变条码的识别解码。
本实用新型的一维条码解码芯片采用硬件流水线结构,通过硬件逻辑实现对条码图像的识别解码,由于硬件流水线结构适于对条码图像进行流水线作业和并行处理,因此处理速度很快。由于采用全硬件结构,无需处理器参与解码,芯片结构相对于处理器而言结构更为简化、面积更小、功耗更低、成本更低、易于集成,容易实现便携应用。可以方便地与物联网技术相结合,为条码技术的应用提供了更为广阔的发展空间。
以上参照附图说明了本实用新型的各种优选实施例,但是只要不背离本实用新型的实质和范围,本领域的技术人员可以对其进行各种形式上的修改和变更,都属于本实用新型的保护范围。

Claims (1)

1.一种一维条码解码芯片,其特征在于,包括:
扫描模块;
边界识别模块,与所述扫描模块连接;
方向识别模块,与所述边界识别模块连接;
条空边界处理模块,与所述边界识别模块和所述方向识别模块连接;
符号参数识别模块,与所述条空边界处理模块连接;
符号字符获取模块,与所述条空边界处理模块和所述符号参数识别模块连接;
译码模块,与所述符号字符获取模块连接。 
CN2010202132799U 2010-06-01 2010-06-01 一维条码解码芯片 Expired - Fee Related CN201927043U (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2010202132799U CN201927043U (zh) 2010-06-01 2010-06-01 一维条码解码芯片

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2010202132799U CN201927043U (zh) 2010-06-01 2010-06-01 一维条码解码芯片

Publications (1)

Publication Number Publication Date
CN201927043U true CN201927043U (zh) 2011-08-10

Family

ID=44430883

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010202132799U Expired - Fee Related CN201927043U (zh) 2010-06-01 2010-06-01 一维条码解码芯片

Country Status (1)

Country Link
CN (1) CN201927043U (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107403123A (zh) * 2016-03-30 2017-11-28 兄弟工业株式会社 识别目标图像中的条码图像的图像分析设备
CN109241806A (zh) * 2018-08-10 2019-01-18 北京龙贝世纪科技股份有限公司 一种多码同时识别方法及识别系统
CN109657515A (zh) * 2018-12-18 2019-04-19 福州图腾易讯信息技术有限公司 一种一维条形码的解码方法及设备

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107403123A (zh) * 2016-03-30 2017-11-28 兄弟工业株式会社 识别目标图像中的条码图像的图像分析设备
CN109241806A (zh) * 2018-08-10 2019-01-18 北京龙贝世纪科技股份有限公司 一种多码同时识别方法及识别系统
CN109657515A (zh) * 2018-12-18 2019-04-19 福州图腾易讯信息技术有限公司 一种一维条形码的解码方法及设备
CN109657515B (zh) * 2018-12-18 2022-02-11 福州图腾易讯信息技术有限公司 一种一维条形码的解码方法及设备

Similar Documents

Publication Publication Date Title
CN101840496B (zh) 一维条码解码芯片
CN101833641B (zh) 条码解码芯片
CN101908122B (zh) 条空边界处理模块、条码识别装置及其方法
CN101908125B (zh) Qr码条码解码芯片及其解码方法
CN101882207B (zh) Data Matrix码条码解码芯片及其解码方法
CN101882210B (zh) 矩阵式二维条码解码芯片及其解码方法
US5814801A (en) Maxicode data extraction using spatial domain features exclusive of fourier type domain transfer processing
CN102521558B (zh) 一种条码识别方法及装置
EP2393036A1 (en) Barcode decoding chip
CN101908126B (zh) Pdf417条码解码芯片
CN101882205A (zh) 一维条码图像扫描方法
CN101908128B (zh) Aztec Code条码解码芯片及其解码方法
CN201927043U (zh) 一维条码解码芯片
CN101833640B (zh) 条空边界像素点计算模块及其计算方法
CN101833643B (zh) 复合码条码解码芯片
CN202630963U (zh) 基于二维码的室内移动机器人定位系统
CN101833642B (zh) MicroPDF417条码解码芯片
CN101908127B (zh) 行列式条码解码芯片
CN201936321U (zh) 行列式条码解码芯片
CN201955795U (zh) 复合码条码解码芯片
CN201927044U (zh) 条码解码芯片
CN201927038U (zh) Pdf417条码解码芯片
CN201927033U (zh) MicroPDF417条码解码芯片
CN201927046U (zh) 条空边界像素点计算模块
CN201927031U (zh) 条空边界处理模块以及条码识别装置

Legal Events

Date Code Title Description
C14 Grant of patent or utility model
GR01 Patent grant
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: 20110810

Termination date: 20170601