分享

算法与编码-levension's Sky

 patrickzhu 2010-10-10


QR Code码是由日本Denso公司于1994年9月研制的一种矩阵二维码符号,它除具有一维条码及其它二维条码所具有的信息容量大、可靠性高、可表示汉字及图象多种文字信息、保密防伪性强等优点外,还具有如下主要特点:

普通的一维条码只能在横向位置表示大约20为的字母或数字信息,无纠错功能,使用时候需要后台数据库的支持,而二维条码是横向纵向都存有信息,可以放入字母、数字、汉字、照片、指纹等大量信息,相当一个可移动的数据库。如果用一维条码与二维条码表示同样的信息,QR二维码占用的空间只是条码1/11的面积。

QR 码 (2D 符号) 在横向和纵向上都包含有信息,而 条码只有一个方向上包含有信息。QR 码能够包含的信息比条码多得多

点击看大图


  QR二维码比其他二维码相比,具有识读速度快、数据密度大、占用空间小的优势。QR码的三个角上有三个寻象图形,使用CCD识读设备来探测码的位置、大小、倾斜角度、并加以解码,实现360读高速识读。每秒可以识读30个含有100个字符QR码。QR码容量密度大,可以放入1817个汉字、7089个数字、4200个英文字母。QR码用数据压缩方式表示汉字,仅用13bit即可表示一个汉字,比其他二维条码表示汉字的效率提高了20%。QR具有4个等级的纠错功能,即使破损或破损也能够正确识读。QR码抗弯曲的性能强,通过QR码中的每隔一定的间隔配置有校正图形,从码的外形来求得推测校正图形中心点与实际校正图形中心点的误差来修正各个模快的中心距离,即使将QR码贴在弯曲的物品上也能够快速识读。QR码可以分割成16个QR码,可以一次性识读数个分割码,适应于印刷面积有限及细长空间印刷的需要。此外微型QR码可以在1厘米的空间内放入35个数字或9个汉字或21个英文字母,适合对小型电路板对ID号码进行采集的需要。

多到 7,089 数字可以被编码(下图为300 个字符或数字被编进这样大小的QR码里面)


同样的数据只有条码的十分之一大小


超高速识读:
从QR Code码的英文名称Quick Response Code可以看出,超高速识读特点是QR Code码区别于四一七条码、Data Matrix等二维码的主要特性。由于在用CCD识读QR Code码时,整个QR Code码符号中信息的读取是通过QR Code码符号的位置探测图形,用硬件来实现,因此,信息识读过程所需时间很短,它具有超高速识读特点。用CCD二维条码识读设备,每秒可识读30个含有100个字符的QR Code码符号;对于含有相同数据信息的四一七条码符号,每秒仅能识读3个符号;对于Data Martix矩阵码,每秒仅能识读2~3个符号。QR Code码的超高速识读特性是它能够广泛应用于工业自动化生产线管理等领域。

全方位识读:
QR Code码具有全方位(360°)识读特点,这是QR Code码优于行排式二维条码如四一七条码的另一主要特点,由于四一七条码是将一维条码符号在行排高度上的截短来实现的,因此,它很难实现全方位识读,其识读方位角仅为±10°.

能够有效地表示中国汉字、日本汉字:
由于QR Code码用特定的数据压缩模式表示中国汉字和日本汉字,它仅用13bit可表示一个汉字,而四一七条码、Data Martix等二维码没有特定的汉字表示模式,因此仅用字节表示模式来表示汉字,在用字节模式表示汉字时,需用16bit(二个字节)表示一个汉字,因此QR Code码比其它的二维条码表示汉字的效率提高了20%。

编码字符集:
1、数字型数据(数字0~9);
2、字母数字型数据(数字0~9;大写字母A~Z;9个其他字符:space ,$, %, *, +, -, ., /, :);
3、8位字节型数据;
4、日本汉字字符;
5、中国汉字字符(GB 2312对应的汉字和非汉字字符)。

QR Code码符号的基本特性

符号规格 21×21模块(版本1)-177×177 模块(版本40) (每一规格:每边增加4个模块)

数据类型与容量(指最大规格符号版本40-L级)
· 数字数据 :7,089个字符
· 字母数据 :4,296个字符
· 8位字节数据 :2,953个字符
· 中国汉字、日本汉字数据 :1,817个字符

数据表示方法 深色模块表示二进制“1”,浅色模块表示二进制“0”。


纠错能力
· L级:约可纠错7%的数据码字
· M级:约可纠错15%的数据码字
· Q级:约可纠错25%的数据码字
· H级:约可纠错30%的数据码字

结构链接(可选) 可用1-16个QR Code码符号表示一组信息

掩模(固有) 可以使符号中深色与浅色模块的比例接近1:1,使因相邻模块的排列造成译码困难的可能性降为最小。

扩充解释(可选) 这种方式使符号可以表示缺省字符集以外的数据(如阿拉伯字符、古斯拉夫字符、希腊字母等),以及其他解释(如用一定的压缩方式表示的数据)或者对行业特点的需要进行编码。 独立定位功能

QR Code码可高效地表示汉字,相同内容,其尺寸小于相同密度的PDF417条码。目前市场上的大部分条码打印机都支持QR code条码,其专有的汉字模式更加适合我国应用。因此,QR code在我国具有良好的应用前景。

 

Data Matrix

Data Matrix 二维条码的发展

Data Matrix 二维条码原名Datacode,由美国国际资料公司(International Data Matrix, 简称ID Matrix)於1989年发明。Data-Matrix二维条码是一种矩阵式二维条码,其发展的构想是希望在较小的条码标签上存入更多的资料量。Data Matrix二维条码的最小尺寸是目前所有条码中最小的,尤其特别适用於小零件的标识,以及直接印刷在实体上。

Data Matrix 二维条码又可分为ECC000-140与ECC200两种类型,ECC000-140具有多种不同等级的错误纠正功能,而ECC200则透过Reed-Solomon演算法产生多项式计算出错误纠正码,其尺寸可以依需求印成不同大小,但采用的错误纠正码应与尺寸配合,由於其演算法较为容易,且尺寸较有弹性,故一般以ECC200较为普遍,本节也仅介绍ECC200规格的Data Matrix二维条码码,以下所说的Data- Matrix二维条码事实上都是指ECC200而言。


图 Data Matrix二维条码的外观

如图所示,Data Matrix二维条码的外观是一个由许多小方格所组成的正方形或长方形符号,其资讯的储存是以浅色与深色方格的排列组合,以二位元码(Binary-code)方式来编码,故电脑可直接读取其资料内容,而不需要如传统一维条码的符号对映表(Character Look-up Table)。深色代表 “1”,浅色代表 “0”,再利用成串(String)的浅色与深色方格来描述特殊的字元资讯,这些字串再列成一个完成的矩阵式码,形成DataMatrix二维条码码,再以不同的印表机印在不同材质表面上。由於Data Matrix二维条码只需要读取资料的20%即可精确辨读,因此很适合应用在条码容易受损的场所,例如印在暴露於高热、化学清洁剂、机械剥蚀等特殊环境的零件上。

Data Matrix二维条码的尺寸可任意调整,最大可到14平方英寸,最小可到0.0002平方英寸,这个尺寸也是目前一维与二维条码中最小的,因此特别适合印在电路板的零组件上。另一方面,大多数的条码的大小与编入的资料量有绝对的关系,但是Data Matrix二维条码的尺寸与其编入的资料量却是相互独立的,因此它的尺寸比较有弹性。 此外,DataMatrix二维条码最大储存量为2,000bytes,自动纠正错误的能力较低,只适用特别的CCD扫瞄器来解读。

Data Matrix二维条码的结构

(一) 特性

Data Matrix二维条码码具有以下特性:

可编码字元集包括全部的ASCII字元及扩充ASCII字元,共256个字元。
 

条码大小(不包括空白区):10×10 ~ 144×144
 

资料容量:235个文数字资料,1556个8位元资料,3116个数字资料。
 

错误纠正:透过Reed-Solomon演算法产生多项式计算获得错误纠正码。不同尺寸宜采用不同数量的错误纠正码。
 

(二 )基本结构

每个Data Matrix二维条码符号由规则排列的方形模组构成的资料区组成,资料区的四周由定位图形(Finder Pattern)所包围,定位图形的四周则由空白区包围,资料区再以排位图形(Alignment Patterns)加以分隔。

定位图形
定位图形是资料区域的一个周界,为一个模组宽度。其中两条邻边为暗实线,主要用於限定物理尺寸;定位和符号失真。另两条邻边由交替的深色和浅色模组组成,主要用於限定符号的单元结构,但也能帮助确定物理尺寸及失真。
 

符号尺寸
ECC000-140符号有奇数行与奇数列。符号外观为一方形矩阵,尺寸从9×9至49×49,不包括空白区。这些符号可透过右上角深色方格识别出来。

ECC200符号有偶数行与偶数列。有些符号是正方形,尺寸从10×10至144×144,不包括空白区。有些是长方形,尺寸从8×18至16×48,不包括空白区。所有的ECC200符号都可以透过右上角浅色方格识别出来。

 

资料表示方法

Data Matrix二维条码按以下步骤来表示资料:

资料编码
先分析要表示的资料,选取合适的编码方案,按所选定的方案将资料流转为字码流,并加入必要的填字,如果使用者未规定矩阵寸,则应选取能满足要存放资料的最小尺寸。DataMatrix二维条码共有6种编码方案,即6种字码集,见表10.1。

Data Matrix二维条码的编码方案与相对应之字元集

编码方案 字元集
ASCII

十进位数字

ASCII值0~127

扩展ASCII值128~255

C40
基本大写文数字型
Text 基本小写文数字型
EDIFACT 32~94
Base256 0~255
X12 ANSI X12 EDI数据集

 

错误检测和纠正字码(ECC)的产生
对少於255个字码的Data Matrix二维条码,错误纠正字码可由资料字码计算得出。对於多於255个字码的符号,应将资料字码分成多个模组,然後再产生每一个模组的错误纠正字码。错误纠正字码能够纠正两种类误字码,包括E错误(已知位置上的错误字码),以及T错误(未知位置上的错误字码)。换句话说,E错误是不能被扫瞄或不能被解码的符号字元,T错误则是被错误解码的符号字元。

 

  • 什么是二维条码/二维码:
      二维条码/二维码 (2-dimensional bar code) 是用某种特定的几何图形按一定规律在平面(二维方向上)分布的黑白相间的图形记录数据符号信息的;在代码编制上巧妙地利用构成计算机内部逻辑基础的“0”、“1”比特流的概念,使用若干个与二进制相对应的几何形体来表示文字数值信息,通过图象输入设备或光电扫描设备自动识读以实现信息自动处理:它具有条码技术的一些共性:每种码制有其特定的字符集;每个字符占有一定的宽度;具有一定的校验功能等。同时还具有对不同行的信息自动识别功能、及处理图形旋转变化等特点。
      二维条码/二维码能够在横向和纵向两个方位同时表达信息,因此能在很小的面积内表达大量的信息。
      
  • 二维条码/二维码的分类
    二维条码/二维码可以分为堆叠式/行排式二维条码和矩阵式二维条码。堆叠式/行排式二维条码形态上是由多行短截的一维条码堆叠而成;矩阵式二维条码以矩阵的形式组成,在矩阵相应元素位置上用“点”表示二进制“1”, 用“空”表示二进制“0”,由“点”和“空”的排列组成代码。

    1. 堆叠式/行排式二维条码
    堆叠式/行排式二维条码(又称堆积式二维条码或层排式二维条码),其编码原理是建立在一维条码基础之上,按需要堆积成二行或多行。它在编码设计、校验原理、识读方式等方面继承了一维条码的一些特点,识读设备与条码印刷与一维条码技术兼容。但由于行数的增加,需要对行进行判定,其译码算法与软件也不完全相同于一维条码。有代表性的行排式二维条码有:Code 16K、Code 49、PDF417等。

    2. 矩阵式二维码
    短阵式二维条码(又称棋盘式二维条码)它是在一个矩形空间通过黑、白像素在矩阵中的不同分布进行编码。在矩阵相应元素位置上,用点(方点、圆点或其他形状)的出现表示二进制“1”,点的不出现表示二进制的“0”,点的排列组合确定了矩阵式二维条码所代表的意义。矩阵式二维条码是建立在计算机图像处理技术、组合编码原理等基础上的一种新型图形符号自动识读处理码制。具有代表性的矩阵式二维条码有:Code One、Maxi Code、QR Code、 Data Matrix等。

    在目前几十种二维要码中,常用的码制有:PDF417二维条码, Datamatrix二维条码, Maxicode二维条码, QR Code, Code 49, Code 16K ,Code one,等,除了这些常见的二维条码之外,还有Vericode条码、CP条码、Codablock F条码、田字码、 Ultracode条码,Aztec条码。

  • 二维条码/二维码的特点
    1.高密度编码,信息容量大:可容纳多达1850个大写字母或2710个数字或1108个字节,或500多个汉字,比普通条码信息容量约高几十倍。
    2.编码范围广:该条码可以把图片、声音、文字、签字、指纹等可以数字化的信息进行编码,用条码表示出来;可以表示多种语言文字;可表示图像数据。
    3.容错能力强,具有纠错功能:这使得二维条码因穿孔、污损等引起局部损坏时,照样可以正确得到识读,损毁面积达50%仍可恢复信息。
    4.译码可靠性高:它比普通条码译码错误率百万分之二要低得多,误码率不超过千万分之一。
    5.可引入加密措施:保密性、防伪性好。
    6.成本低,易制作,持久耐用。
    7.条码符号形状、尺寸大小比例可变。
    8.二维条码可以使用激光或CCD阅读器识读。

  • 二维条码目前应用:
    二维条码具有储存量大、保密性高、追踪性高、抗损性强、备援性大、成本便宜等特性,这些特性特别适用於表单、安全保密、追踪、证照、存货盘点、资料备援等方面。
    表单应用:
    公文表单、商业表单、进出口报单、舱单等资料之传送交换,减少人工重覆输入表单资料,避免人为错误,降低人力成本
    保密应用:
    商业情报、经济情报、政治情报、军事情报、私人情报等机密资料之加密及传递。
    追踪应用:
    公文自动追踪、生产线零件自动追踪、客户服务自动追踪、邮购运送自动追踪、维修记录自动追踪、危险物品自动追踪、後勤补给自动追踪、医疗体检自动追踪、生态研究(动物、鸟类...)自动追踪等。
    证照应用:
    护照、身分证、挂号证、驾照、会员证、识别证、连锁店会员证等证照之资料登记及自动输入,发挥「随到随读」、「立即取用」的资讯管理效果。
    盘点应用:
    物流中心、仓储中心、联勤中心之货品及固定资产之自动盘点,发挥「立即盘点、立即决策」的效果。
    备援应用:
    文件表单的资料若不愿或不能以磁碟、光碟等电子媒体储存备援时,可利用二维条码来储存备援,携带方便,不怕折叠,保存时间长,又可影印传真,做更多备份。
    手机二维码应用:
    手机扫描二维码技术简单的说是通过手机拍照功能对二维码进行扫描,快速获取到二维条码中存储的信息,进行上网、发送短信、拨号、资料交换、自动文字输入等,手机二维码目前已经被各大手机厂商使用开发。
    手机二维码是二维码的一种,手机二维码不但可以印刷在报纸、杂志、广告、图书、包装以及个人名片上,用户还可以通过手机扫描二维码,或输入二维码下面的号码即可实现快速手机上网功能,并随时随地下载图文、了解企业产品信息等。
  •  


     

            条形码技术最早产生在风声鹤唳的二十年代,诞生于Westinghouse的实验室里。一位名叫John Kermode性格古怪的发明家“异想天开”地想对邮政单据实现自动分检,那时候对电子技术应用方面的每一个设想都使人感到非常新奇。

            他的想法是在信封上做条码标记,条码中的
    信息是收信人的地址,就象今天的邮政编码。为此Kermode发明了最早的条码标识,设计方案非常的简单(注:这种方法称为模块比较法),即一个“条”表示数字“1”,二个“条”表示数字“2”,以次类推。然后,他又发明了由基本的元件组成的条码识读设备:一个扫描器(能够发射光并接收反射光);一个测定反射信号条和空的方法,即边缘定位线圈;和使用测定结果的方法,即译码器。

            Kermode的扫描器利用当时新发明的
    光电池来收集反射光。“空”反射回来的是强信号,“条”反射回来的是弱信号。与当今高速度的电子元气件应用不同的是,Kermode利用磁性线圈来测定“条”和“空”。就象一个小孩将电线与电池连接再绕在一颗钉子上来夹纸。Kermode用一个带铁芯的线圈在接收到“空”的信号的时候吸引一个开关,在接收到“条”的信号的时候,释放开关并接通电路。因此,最早的条码阅读器噪音很大。开关由一系列的继电器控制,“开”和“关”由打印在信封上“条”的数量决定。通过这种方法,条码符号直接对信件进行分检。

            此后不久, Kermode的合作者Douglas Young,在Kermode码的基础上作了些改进。

            Kermode码所包含的信息量相当的低,并且很难编出十个以上的不同代码。而Young码使用更少的条,但是利用条之间空的尺寸变化,就象今天的UPC条码符号使用四个不同的条空尺寸。新的条码符号可在同样大小的空间对一百个不同的地区进行编码,而Kermode码只能对十个不同的地区进行编码。

            直到1949年的专利文献中才第一次有了Norm Woodland和Bernard Silver发明的全方位条形码符号的记载,在这之前的专利文献中始终没有条形码技术的记录,也没有投入实际应用的先例。Norm Woodland和Bemard Silver的想法是利用Kermode和YOung的垂直的“条”和“空”,并使之弯曲成环状,非常象射箭的靶子。这样扫描器通过
    扫描图形的中心,能够对条形码符号解码,不管条形码符号方向的朝向。

            在利用这项专利技术对其进行不断改进的过程中,一位
    科幻小说作家Isaac-Azimov在他的“裸露的太阳”一书中讲述了使用信息编码的新方法实现自动识别的事例。那时人们觉得此书中的条形码符号看上去象是一个方格子的棋盘,但是今天的条形码专业人士马上会意识到这是一个二维矩阵条形码符号。虽然此条形码符号没有方向、定位和定时,但很显然它表示的是高信息密度的数字编码。

            直到1970年Iterface  Mechanisms公司开发出“
    二维码”之后,才有了价格适于销售的二维矩阵条码的打印和识读设备。那时二维矩阵条形码用于报社排版过程的自动化。二维矩阵条形码印在纸带上,由今天的一维CCD扫描器扫描识读。CCD发出的光照在纸带上,每个光电池对准纸带的不同区域。每个光电池根据纸带上印刷条码与否输出不同的图案,组合产生一个高密度信息图案。用这种方法可在相同大小的空间打印上一个单一的字符,作为早期Kermode码之中的一个单一的条。定时信息也包括在内,所以整个过程是合理的。当第一个系统进入市场后,包括打印和识读设备在内的全套设备大约要5000美元。

            此后不久,随着LED(
    发光二极管)、微处理器激光二极管的不断发展,迎来了新的标识符号(象征学)和其应用的大爆炸,人们称之为“条码工业”。今天很少能找到没有直接接触过即快又准的条形码技术的公司或个人。由于在这一领域的技术进步与发展非常迅速,并且每天都有越来越多的应用领域被开发,用不了多久条形码就会象灯泡半导体收音机一样普及,将会使我们每一个人的生活都变得更加轻松和方便。

    条形码技术的优点

            条形码是迄今为止最经济、实用的一种
    自动识别技术。条形码技术具有以下几个方面的优点

            A.输入速度快:与键盘输入相比,条形码输入的速度是键盘输入的5倍,并且能实现"即时数据输入"。

            B.可靠性高:键盘输入数据出错率为三百分之一,利用光学字符识别技术出错率为万分之一,而采用条形码技术误码率低于百万分之一。

            C.采集信息量大:利用传统的一维条形码一次可采集几十位字符的信息,二维条形码更可以携带数千个字符的信息,并有一定的自动纠错能力。

            D.灵活实用:条形码标识既可以作为一种识别手段单独使用,也可以和有关识别设备组成一个系统实现自动化识别,还可以和其他控制设备联接起来实现自动化管理。

            另外,条形码标签易于制作,对设备和材料没有特殊要求,识别设备操作容易,不需要特殊培训,且设备也相对便宜。

    编码规则

            唯一性:同种规格同种产品对应同一个产品代码,同种产品不同规格应对应不同的产品代码。根据产品的不同性质,如:重量、包装、规格、气味、颜色、形状等等,赋予不同的商品代码。

            永久性:产品代码一经分配,就不再更改,并且是终身的。当此种产品不再生产时,其对应的产品代码只能搁置起来,不得重复起用再分配给其它的商品。

            无含义:为了保证代码有足够的容量以适应产品频繁的更新换代的需要,最好采用无含义的顺序码。

    条形码的码制区别

    UPC:(统一产品代码)

            只能表示数字 有A、B、C、D、E四个版本 版本 A - 12 位数字 版本 E - 7 位数字 最后一位为校验位 大小是宽1.5" 高1 " ,而且背景要与清晰 主要使用于
    美国加拿大地区,用于工业、医药、仓库等部门。当UPC 作为十二位进行解码时,定义如下: 第一位 = 数字标识 (已经由UCC(统一代码委员会)所建立). 第2-6位 = 生产厂家的标识号(包括第一位) 第7-11 = 唯一的厂家产品代码 第12位 = 校验位(used for error detection)

    Code 3 of 9 :

            能表示字母、数字和其它一些符号共43个
    字符:A -Z,0 - 9,-.$/+%,pace 条形码的长度是可变化的,通常用“*”号作为起始、终止符校验码不用代码密度介于3 - 9.4个字符/每英寸,空白区是窄条的10倍,用于工业、图书、以及票证自动化管理上。

    Code 128:

            表示高密度数据, 字符串可变长,符号内含校验码,有三种不同版本: A, B, and C 可用128个字符分别在 A, B, or C 三个字符串集合中,用于工业、仓库、零售批发。

    Interleaved 2-of-5 (I2 of 5):

            只能表示数字0 -9 可变长度,连续性条形码,所有条与空都表示代码,第一个数字由条开始,第二个数字由空组成 空白区比窄条宽10倍,应用于商品批发、仓库、机场、生产/包装识别、工业中,条形码的识读率高,可适用于固定扫描器可靠扫描,在所有一维条形码中的密度最高。

    Codabar(库德巴条形码):

            可表示数字0 - 9,字符$、+、 -、还有只能用作起始/终止符的a, b, c d四个字符,可变长度,没有校验位,应用于物料管理、
    图书馆、血站和当前的机场包裹发送中,空白区比窄条宽10,非连续性条形码,每个字符表示为4条3空。

    PDF417 (二维码):

            多行组成的条形码,不需要连接一个
    数据库,本身可存储大量数据,应用于:医院驾驶证、物料管理、货物运输,当条形码受一定破坏时,错误纠正能使条形码能正确解码PDF417, 是Symbol科技公司于1990研制产品。它是一个多行、连续性、可变长、包含大量数据的符号标识。每个条形码有3 - 90行,每一行有一个起始部分、数据部分、终止部分。它的字符集包括所有128个字符,最大数据含量是1850个字符。

            一维条形码只是在一个方向(一般是水平方向)表达信息,而在垂直方向则不表达任何信息,其一定的高度通常是为了便于阅读器的对准。

            一维条形码的应用可以提高信息录入的速度,减少差错率,但是一维条形码也存在一些不足之处:

            * 数据容量较小: 30个字符左右

            * 只能包含字母和数字

            * 条形码尺寸相对较大(空间利用率较低)

            * 条形码遭到损坏后便不能阅读

            在水平和垂直方向的二维空间存储信息的条形码, 称为二维条形码(2-dimensional bar code)。

            与一维条形码一样,二维条形码也有许多不同的编码方法,或称码制。就这些码制的编码原理而言,通常可分为以下三种类型

    1. 线性堆叠式二维码

            是在一维条形码编码原理的基础上,将多个一维码在纵向堆叠而产生的。典型的码制如:Code 16K、Code 49、PDF417等。

    2. 矩阵式二维码

            是在一个矩形空间通过黑、白像素在矩阵中的不同分布进行编码。典型的码制如: Aztec、Maxi Code、QR Code、 Data Matrix等。

    3. 邮政码

            通过不同长度的条进行编码,主要用于邮件编码,如:Postnet、BPO 4-State。

            在许多种类的二维条形码中,常用的码制有:Data Matrix, Maxi Code, Aztec, QR Code, Vericode, PDF417, Ultracode, Code 49, Code 16K 等,其中:

            * Data Matrix 主要用于电子行业小零件的标识,如
    Intel的奔腾处理器的背面就印制了这种码。

            * Maxi Code 是由美国联合包裹服务(
    UPS)公司研制的,用于包裹的分拣和跟踪。

            * Aztec 是由美国韦林(Welch Allyn)公司推出的,最多可容纳3832个数字或3067个字母字符或1914个字节的数据。

            下面,我们以PDF417码为例,介绍二维条形码的特性和特点。

    一)PDF417简介

            PDF417码是由留美华人王寅敬(音)
    博士发明的。PDF是取英文Portable Data File三个单词的首字母的缩写,意为“便携数据文件”。因为组成条形码的每一符号字符都是由4个条和4个空构成,如果将组成条形码的最窄条或空称为一个模块,则上述的4个条和4个空的总模块数一定为17,所以称417码或PDF417码。

    二)PDF417的特点

            1. 信息容量大

            PDF417码除可以表示字母、数字、ASCII字符外,还能表达
    二进制数。为了使得编码更加紧凑,提高信息密度,PDF417在编码时有三种格式:

            * 扩展的字母数字压缩格式 可容纳1850 个字符;

            * 二进制 / ASCII格式 可容纳1108 个字节;

            * 数字压缩格式 可容纳2710 个数字。

            2. 错误纠正能力

            一维条形码通常具有校验功能以防止错读,一旦条形码发生污损将被拒读。而二维条形码不仅能防止错误,而且能纠正错误,即使条形码部分损坏,也能将正确的信息还原出来。

            3. 印制要求不高

            普通打印设备均可打印,
    传真件也能阅读。

            4. 可用多种阅读设备阅读

            PDF417码可用带光栅的激光阅读器,线性及面扫描的图像式阅读器阅读。

            5. 尺寸可调以适应不同的打印空间

            6. 码制公开已形成国际标准,我国也已制定了417码的国标。

    三)PDF417的纠错功能

            二维条形码的纠错功能是通过将部分信息重复表示(
    冗余)来实现的。比如在PDF417码中,某一行除了包含本行的信息外,还有一些反映其它位置上的字符(错误纠正码)的信息。这样,即使当条形码的某部分遭到损坏,也可以通过存在于其它位置的错误纠正码将其信息还原出来。

            PDF417的纠错能力依错误纠正码字数的不同分为0~8共9级,见图4,级别越高,纠正码字数越多,纠正能力越强,条形码也越大。当纠正等级为8时,即使条形码污损50%也能被正确读出。

    四)PDF417的几种变形

            PDF417还有几种变形的码制形式:

            * PDF417截短码

            在相对“干净”的环境中,条形码损坏的可能性很小,则可将右边的行指示符省略并减少终止符。

            * PDF417微码

            进一步缩减的PDF码。

            * 宏PDF417码

            当文件内容太长,无法用一个PDF417码表示时,可用包含多个(1~99999个)条形码分块的宏PDF417码来表示。

    二维条形码的优势

            从以上的介绍可以看出,与一维条形码相比二维条形码有着明显的优势,归纳起来主要有以下几个方面:

            一)数据容量更大

            二)超越了字母数字的限制

            三)条形码相对尺寸小

            四)具有抗损毁能力

      本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
      转藏 分享 献花(0

      0条评论

      发表

      请遵守用户 评论公约

      类似文章 更多