硕士学位论文-PDF417二维条码及其DSP实现.pdf_第1页
硕士学位论文-PDF417二维条码及其DSP实现.pdf_第2页
硕士学位论文-PDF417二维条码及其DSP实现.pdf_第3页
硕士学位论文-PDF417二维条码及其DSP实现.pdf_第4页
硕士学位论文-PDF417二维条码及其DSP实现.pdf_第5页
免费预览已结束,剩余56页可下载查看

硕士学位论文-PDF417二维条码及其DSP实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1 4 1 1 2 7 2 学科门娄:王! ! _ 分娄号: 单位代码:旦堡! ! 一酱 级: 商杰酃窟z 碧 硕士学位论文 论文题目:p d f 4 1 7 二维条码及其d s p 实现 学生 学 指导 学科 姓名 号 教师 专业 杨清华 硕0 5 0 7 1 5 张宗橙教授 信号与信息处理 研究方向现代通信中的信号与信息处理技术 论文提交日期 二0 0 八年四月 南京邮电大学硕士研究生学位论文摘要 摘要 随着一维条码的广泛应用,条码技术得到了飞速的发展,九十年代,美国s y m b o l 公 司发明了p d f 4 1 7 二维条码。我国也于1 9 9 7 年1 2 月正式颁布了p d f 4 1 7 二维条码的国家标 准。它是在传统一维条码编码原理的基础上,将多个一维条码在纵向堆叠而产生的,具有 信息容量大( 可有储1 k 数据) 、编码范围广、保密和防伪性能好、译码可靠性高、修正错误 能力高,容易制作且成本很低,条码符号的形状可变等诸多优点。一经面世,就受到广大 用户的青睐,在国内外得到广泛的应用。 本文首先简要介绍了二维条码的特点,研究p d f 4 1 7 条码的编码规则,并设计相关的 计算机编码算法使其程序化,完成系统软件的编码部分;其次,二维条码具有一维条码不 具备的纠错功能,简要介绍r e e d s o l o m o n 错误控制码( r s 码) 的编码与译码原理,在伽罗 华域g f ( 9 2 9 ) 1 内根据其编译码的原理,重点分析与研究它在p d f 4 1 7 条码中的应用;然后 根据条码的编码原则,对p d f 4 17 条码译码过程中的模式转换及不同模式下的译码进行了 分析与研究,并设计出相应的实现方法;最后利用具体实例,进行理论方面的实践同时将 设计方法程序化,并设计完成p d f 4 1 7 二维条码编码系统软件。 关键词:二维条码,p d f 4 1 7 条码,条码编码,r s 纠错码。 南京邮电大学硕士研究生学位论文 a b s t r a c t a b s t r a c t w i t ht h ew i d e ru s eo fo n e d i m e n s i o n a lb a rc o d e ,b a r - c o d et e c h n o l o g yh a sm a d er a p i d d e v e l o p m e n t n l eu n i t e ds t a t e ss y m b o lc o m p a n yi n v e n t e dt h ep d f 4 1 7t w o d i m e n s i o n a lb a r c o d ei nt h e19 9 0 s c h i n aa l s of o r m a l l yp r o m u l g a t e dt h ep d f 4 1 7t w o - d i m e n s i o n a lb a rc o d eo f n a t i o n a ls t a n d a r d si nd e c e m b e r19 9 7 i ti sb a s e do nt h ep r i n c i p l eo ft r a d i t i o n a lo n e - d i m e n s i o n a l b a rc o d e sc o d i n g ,a n di st h ev e r t i c a ls t a c ko fo n e d i m e n s i o n a lb a rc o d e i th a ss o m ea d v a n t a g e s , s u c ha s ,l a r g ea m o u n t so fi n f o r m a t i o n ( w h i c hc a l lc o n t e n t1k d a t a ) ,g o o dc o n f i d e n t i a l i t ya n d s e c u r i t yf e a t u r e s ,d e c o d i n g 、析t hl l i g hr e l i a b i l i t y , h i g hc a p a c i t yo fc o r r e c tm i s t a k e s ,c a nb ee a s i l y m a d ea n d 晰t hl o w - c o s tp r o d u c t i o n ,t h es h a p eo ft h eb a r c o d es y m b o lv a r i a b l e ,a n ds oo n o n c e p u b l i s h e d ,i ti sf a v o r e db yt h eg r e a tm a j o r i t yo fu s e r sa th o m ea n da b r o a da n dw i d e l yu s e d t h i st h e s i sf i r s ti n t r o d u c e st h ec h a r a c t e r i s t i c so ft h et w o d i m e n s i o n a lb a rc o d e b a s e do n p d f 417b a r c o d ec o d i n gr u l e s ,d e s i g nr e l a t e dc o m p u t e rc o d i n g a l g o r i t h m t op r o c e s sa n d c o m p l e t es y s t e ms o f t w a r ec o d i n g ;s e c o n d l y ,t h et w o - d i m e n s i o n a lb a rc o d eh a s t h ee r r o r c o r r e c t i o nf u n c t i o n , w h i c ho n e d i m e n s i o n a lb a rc o d ed o e s n t 1 1 1 i s p a p e rb r i e f l y i n t r o d u c e s r e e d s o l o m o ne r r o rc o n t r o lc o d e ( r sc o d e ) c o d i n ga n dd e c o d i n gp r i n c i p l e i nt h eg a l o i sf i e l d g f ( 9 2 9 ) a n di na c c o r d a n c ew i t ht h ep r i n c i p l e so fr sc o d e c ,a n a l y s i sa n dr e s e a r c hi sf o c u so nt h e a p p l i c a t i o no fp d f 4 17b a rc o d e i nt h ed e c o d i n go fp d f 417b a rc o d ep r o c e s s ,t h i sp a p e rd o r e s e a r c ho nm o d ec o n v e r s i o n a n dt h ed e c o d i n go fd i f f e r e n tm o d e f i n a l l y , c o m p l e t et h e p r o c e d u r e so f t h es o f t w a r ec o d i n gs y s t e m ,a n du s es p e c i f i ce x a m p l e st op r o v ei t k e yw o r d s :t w o - d i m e n s i o n a l b a rc o d e ,p d f 417c o d eb a r , b a r c o d e c o d i n g , r e e d s o l o m o ne r r o r - c o r r e c t i n gc o d e 南京邮电大学学位论文独创性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究 工作及取得的研究成果。尽我所知,除了文中特别加以标注和致谢的 地方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包 含为获得南京邮电大学或其它教育机构的学位或证书而使用过的材 料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了 明确的说明并表示了谢意。 研究生签名:鸳鸯l 蓝刍 日期:泄:z :r 南京邮电大学学位论文使用授权声明 南京邮电大学、中国科学技术信息研究所、国家图书馆有权保留 本人所送交学位论文的复印件和电子文档,可以采用影印、缩印或其 他复制手段保存论文。本人电子文档的内容和纸质论文的内容相一 致。除在保密期内的保密论文外,允许论文被查阅和借阅,可以公布 ( 包括刊登) 论文的全部或部分内容。论文的公布( 包括刊登) 授权 南京邮电大学研究生部办理。 研究生签名:丛! 塑导师签名:多叁堑窒日期:2 塑:竺! 南京邮电大学硕士研究生学位论文 第一章绪论 1 1 引言 第一章绪论 条码技术起源于2 0 世纪4 0 年代,所谓条码是一种信息的图形表示符,它是由一组规 则排列的条、空以及对应的字符组成的标记【l 】。这些条和空组成的数据表达一定的信息, 并能够被识读,转换成与计算机兼容的二进制信息,由条码、条码符号的生成及其扫描阅 读等部分组成的自动识别系统称之为条码系统,应用条码系统进行信息处理的技术称之为 条码技术。 我们日常见到的印刷在各种商品外包装上的条码,是普通的一维条码。一维条码从7 0 年代初问世以来,已广泛应用于超市、邮局、银行、图书馆、工业、交通运输、金融、医 疗、仓储业及办公自动化等领域,极大提高了信息处理的速度和工作效率。 由于一维条码受信息容量的限制,在没有数据库和不方便联网的地方使用受到限制。 另外,一维条码不便表示汉字信息,效率低。为解决传统条码存在的问题,经过逐渐改进, 升级版本“二维条码”诞生了。它是一种全新的自动识别和信息载体技术,相同单位面积 上的信息含量是一维条码的近百倍,在表单应用、情报保密应用、自动追踪应用、证照的 资料登记及自动输入、盘点应用、文件存储备援应用等方面开始大显身手。 1 2 条码简介 条码是将线条与空白按照一定的编码规则组合起来的符号,用以代表一定的字母、数 字等资料【2 11 4 。在进行辨识的时候,是用条码阅读机扫描,得到一组反射光信号,此信号 经光电转换后变为一组与线条、空白相对应的电子讯号,经解码后还原为相应的文字及数 字,再传入电脑。条码辨识技术己相当成熟,其读取的错误率约为百万分之一,首读率大 于9 8 ,是一种可靠性高、输入快速、准确性高、成本低、应用面广的资料自动收集技术。 世界上约有2 2 5 种以上的一维条码,每种一维条码都有自己的一套编码规格,规定每 个字母( 可能是文字或数字或两者兼有) 是由几个线条( b a r ) 及几个空白( s p a e e ) 组成,以及字 母的排列。一般较流行的一维条码有3 9 码、e a n 码、u p c 码、1 2 8 码,以及专门用于书 刊管理的i s b n 、i s s n 等。 1 从u p c 以后,为满足不同的应用需求,陆陆续续发展出各种不同的条码标准和规格, 时至今日,条码已成为商业自动化不可缺少的基本条件【3 】。条码可分为一维条码( o n e l 南京邮电大学硕士研究生学位论文 第一章绪论 d i m e n s i o n a lb a r c o d e ,1 d ) 和二维条码( t w od i m e n s i o n a lc o d e ,2 d ) 两大类,目前在商品上的应 用仍以一维条码为主,故一维条码又被称为商品条码,二维条码则是另一种渐受重视的条 码,其功能较一维条码强,应用范围更加广泛。 1 2 1 二维条码的发展 随着计算机和自动识别技术的发展,2 0 世纪8 0 年代末诞生了比一维条码更完善的二 维条码【5 】【6 】。所i f f - - 维条码是在二维空间即平面上用某种特定的黑白相间的几何图形来表 示数据符号信息,在代码编制上,用若干个与二进制对应的几何形体来表示文字数值信息。 二维条码突破了线性条码的局限性,即条码不再是一个代码,而是一个完整的数据文件, 可随时随地进行识读,而不必时时与主计算机联网进行数据操作。从应用角度讲,一维条 码是对物品的“标识”,二维条码则是对物品的“描述”。二维条码的出现是条码发展史上 的里程碑。 第一个二维条码“4 9 “ 码起源于1 9 8 7 年,是一种多行的、连续型长度可变的字母数 字式编码,且采用多种元素宽度。其字符集除包含“3 9 ”码的4 3 个,还增加了3 个功能 字符f l ,f 2 ,f 3 和3 个变换字符f 、ff 、n s ,共4 9 个字符。具有全a s c i i 码特性,使 用变换字符f 、ff 作为前置符,可为1 2 8 个a s c i i 码编码。 1 9 8 8 年和1 9 9 0 年出现了“1 6 k “ 码和“p d f 4 1 7 “ 码。1 9 9 4 年,z e b r a 公司又推出“超 级码。 二维条形码的研究方向:其一是在一维条码的基础上向二维条码扩展;其二是利用图 像识别的原理,采用新的编码结构和编码规则。循着这两条路线,迄今开发出的二维条码 可分两大类型:( 1 ) 堆积式或层排式二维条码( 2 ) 棋盘式或点矩阵式二维条码。 二维条码中p d f 4 1 7 堆积式二维条码应用较广,p d f 为p o r t a b l ed a t af i l e 的英文缩写, 意为“便携式数据文件”。 1 2 2 二维条码的分类 二维条码- - 维码可以分为堆叠式行排式二维条码和矩阵式二维条码。堆叠式行排式 二维条码形态上是由多行短截的一维条码堆叠而成:矩阵式二维条码以矩阵的形式组成, 在矩阵相应元素位置上用“点”表示二迸制“l “ ,用“空“ 表示二进制“0 “ ,由“点”和 “空”的排列组成代码【5 】 1 3 】。 1 堆叠式彳亍排式二维条码 2 雨京邮电大学硕士研究生学位论文第一章绪论 堆叠式行排式二维条码( 又称堆积式二维条码或层排式二维条码) ,其编码原理是建立 在一维条码基础之上,按需要堆积成两行或多行。它在编码设计、校验原理、识读方式等 方面继承了一维条码的一些特点,识读设备与条码印刷与一维条码技术兼容。但由于行数 的增加,需要对行进行判定,其译码算法与软件也不完全相同于一维条码。有代表性的行 排式二维条码有:c o d e1 6 k 、c o d e4 9 、p d f 4 1 7 等。 2 矩阵式二维码 短阵式二维条码( 又称棋盘式二维条码) 它是在一个矩形空间通过黑、白像素在矩阵中 的不同分布进行编码。在矩阵相应元素位置上,用点( 方点、圆点或其他形状) 的出现表示 二进制“1 “ ,点的不出现表示二进制的“0 ,点的排列组合确定了矩阵式二维条码所代表 的意义。矩阵式二维条码是建立在计算机图像处理技术、组合编码原理等基础上的一种新 型图形符号自动识读处理码制。具有代表性的矩阵式二维条码有:c o d eo n e 、m a x ic o d e 、 q rc o d e 、d a t am a t r i x 等。 在目前几十种二维条码中,常用的码制有:p d f 4 1 7 二维条码,d a t a m a t r i x 二维条码, m a x i c o d e 二维条码,q rc o d e ,c o d e4 9 ,c o d e1 6 k ,c o d eo n e 等,除了这些常见的二维 条码之外,还有v e r i c o d e 条码、c p 条码、c o d a b l o c kf 条码、田字码、u l t r a c o d e 条码,a z t e c 条码。 1 2 3 二维条码的特点 在讨论二维条码的特点前,先比较下一维条码与二维条码的优缺点【4 1 : 一维条码:一维条码只是在一个方向( 一般是水平方向) 表达信息,而在垂直方向则不 表达任何信息,其一定的高度通常是为了便于阅读器的对准。一维条码的应用可以提高信 息录入的速度,减少差错率,可直接显示内容为英文、数字、简单符号;贮存数据不多, 主要依靠计算机中的关联数据库;保密性能不高;损污后可读性差。 二维条码:在水平和垂直方向的二维空间存储信息的条码,称为二维条码 ( t w o d i m e n s i o n a lb a rc o d e ) 。可直接显示英文、中文、数字、符号、图形;贮存数据量大, 可存放l k 字符,可用扫描仪直接读取内容,无需另接数据库:保密性高( 可加密) ;安全级 别最高时,损污5 0 仍可读取完整信息【3 11 2 3 。 通过比较,从而总结出二维条码的特点: 1 高密度编码,信息容量大:可容纳多达1 8 5 0 个大写字母或2 7 1 0 个数字或11 0 8 个 字节,或5 0 0 多个汉字,比普通条码信息容量约高几十倍。 南京邮电大学硕士研究生学位论文第一章绪论 2 编码范围广:该条码可以把图片、声音、文字、签字、指纹等可以数字化的信息 进行编码,用条码表示出来:可以表示多种语言文字;可表示图像数据。 3 容错能力强,具有纠错功能:这使得二维条码因穿孔、污损等引起局部损坏时, 照样可以正确得到识读,损毁面积达5 0 仍可恢复信息。 4 译码可靠性高:它比普通条码译码错误率2 要低得多,误码率不超过千分之一。 5 可引入加密措施t 保密性、防伪性好。因为条码无法以肉眼直接读出,所以有使 资料隐蔽的功能。 6 成本低,易制作,持久耐用。 7 条码符号形状、尺寸大小比例可变。 8 二维条码可以使用激光或c c d 阅读器识读。 9 可影印及传真。 二维条码除了优于一维条码外,还有许多性能优于磁卡、i c 卡、光卡等。 1 2 4 二维条码的应用 二维条码技术是在计算机与信息技术基础上发展起来的一种标准化信息存储、传递和 自动识别技术,具有成本低、容量大、可靠性高、编码方式灵活、保密防伪性强等优点, 在这些特性优势下,二维条码在9 0 年代初已被重视与使用,应用的范围相当广范【6 】: 1 人事工资管理:员工的基本资料与工资。 2 公民医保与医疗网:病历、挂号证、个人就医资讯合而为一,可与医疗网相连。 3 证照系统:身份证、驾驶执照、学生证等。 4 图书资讯管理:出版社图书的预编目处理、书店的仓储管理、图书馆图书的自动 编目作业及管理等。 ,5 编程管理。 6 销售、进货、出货管理。 7 邮政系统、专利申请管理系统等。 1 3 本课题的意义 国外对二维条码技术的研究始于8 0 年代末和9 0 年代初,二维码( 国际标准b s i s 0 1 6 0 2 2 ) 在物流、邮政、航空、汽车、医疗医药、电子、通用工业、零售业中的作用越 来越广。在被载入航空工业的御r as p e c 2 0 0 0 标准等领域,更是等到广泛应用。在国外的 4 南京邮电大学硕士研究生学位论文 第一章绪论 身份证、驾驶证、军人证等证件,交通部门的车辆管理、工业生产等方面得到了应用。我 国香港特别行政区的护照已采用了二维条码,国内一些省、市的公安、劳动、交通管理等 部门也正准备采用二维条码。 二维条码中p d f 4 1 7 堆积式二维条码应用较广泛。p d f 为p o r t a b l ed a t af i l e 的英文缩 写,意为“便携式数据文件”。作为当今最先迸的条码技术,在国外p d f 4 1 7 条码已广泛应 用于各种证件、报表、银行票据的管理,机电产品的生产和组装线,乃至货物运输等领域。 我国国家技术监督局1 9 9 8 年8 月正式决定采用p d f 4 1 7 条码作为我国的二维条码码制。目 前,p d f 4 1 7 条码在我国正逐渐得到应用,如1 9 9 9 年初的全国人大和全国政协会议时,两 会使用的会议出席证均首次采用了p d f 4 1 7 条码技术。另外,一些大型汽车销售中心的车 辆信息管理系统也采用了p d f 4 1 7 条码。对邮政行业来说,p d f 4 1 7 条码同样有广阔的应用 前景,特别是在传统业务和开发网络邮票两个领域。 1 4 本课题研究内容 第一章主要介绍二维条码的发展,分类,特点,应用现状及课题的意义和内容。第二 章概述了p d f 4 1 7 二维条码的具体结构、编码原理,包括p d f 4 1 7 二维条码的基本特性、 符号结构、压缩模式和错误检测与纠正。重点介绍了其符号结构具体要求和几种压缩模式 的编码理论。第三章在第二章理论的基础上,实现p d f 4 1 7 二维条码的编码过程。首先对 其编码的整体流程进行介绍,再分别对具体的三大部分:数据码字、错误纠正码字、行指 示符码字用程序进行编码。第四章主要分析r s 纠错码及其在p d f 4 1 7 二维条码中的应用, 先介绍了r s 基础知识及其编、译码原理,再论述r s 在p d f 4 1 7 中的具体实现算法,最后 对r s 编码进行d s p 实验。第五章介绍了p d f 4 1 7 二维条码的部分译码算法,然后介绍 p d f 4 1 7 二维条码的编译码系统及系统应用方案。 南京邮电大学硕士研究生学位论文第二章p d f 4 1 7 二维条码的结构组成 第二章p d f 4 1 7 二维条码的结构组成 2 1p d f 4 1 7 条码结构 4 1 7 条码是一个多行结构,符号的顶部和底部为空白区,上下空白区之间为多行结构, 每行数据符号字符数相同( 符号字符:条码符号中,由特定的条、空组合而成的表示信息的 基本单位,参照图2 2 ) ,行与行左右对齐直接街接【7 1 。其最小行数为3 ,最大行数为9 0 , 见图2 1 。每行构成如下: 幻左空白区 b ) 起始符 c ) 左行指示符号字符 d ) l 3 0 个数据符号字符 e ) 右行指示符号字符 0 终止符 g ) 右空白区 2 2p d f 4 17 的基本特性 图2 - 1p d f 4 1 7 条码结构 上空白区 p d f 4 1 7 二维条码是一种高密度、高信息量的便携式数据文件,是实现证件及卡片等 大容量、高可靠性信息自动存储、携带并可用机器自动识读的理想手段。p d f 4 1 7 二维条 码具有如下特点【8 】【9 】: 1 信息容量大 4 1 7 条码的可编码字符集:包括全a s c i i 字符及扩展a s c i i 字符或8 位二进制数据, 根据不同的条空比例每平方英寸可以容纳2 5 0 到l1 0 0 个字符。在国际标准的证卡有效面积 6 南京邮电大学硕士研究生学位论文第二章p d f 4 1 7 二维条码的结构组成 上( 相当于信用卡面积的2 3 ,约为7 6 m m * 2 5 m m ) ,p d f 4 1 7 条码可以容纳1 8 5 0 个字母字符 或2 7 1 0 个数字字符,约5 0 0 个汉字信息。p d f 4 1 7 条码可以将照片、指纹、掌纹、签字、 声音、文字等凡可数字化的信息进行编码。这种二维条码比一维条码信息容量高近百倍。 2 条码的符号尺寸是可变的,高度范围为3 9 0 行,每行可包含1 3 0 个数据符号字符。 3 纠错能力强 4 1 7 是一个连续型,多行的结构,双向可读,且有字符自校验功能,p d f 4 1 7 二维条码 采用了世界上最先进的数学纠错算法,如果条码破损面积不超过5 0 ,由于沾污、破损等 所丢失的信息,一般都可破译出来。 4 容易制作且成本低 利用现有的点阵、激光、喷墨、热敏热转印、制卡机等打印技术,即可在纸张、卡片、 甚至金属表面上印出p d f 4 1 7 二维条码,由此所增加的费用仅是油墨的成本,因此人们又 称p d f 4 1 7 是“零成本技术。 t 5 保密、防伪性能好 p d f 4 1 7 二维条码具有多重防伪特性,它可以采用密码防伪、软件加密,以及利用所 包含的信息如指纹、照片等进行防伪,因此具有极强的保密防伪性能。 2 3 符号表示 2 3 1 符号字符的结构 每一符号字符由4 个条和4 个空构成,自左向右从条开始f 7 1 。每一个条或空包含1 6 个模块,在一个符号字符中,4 个条和4 个空的总模块数为1 7 ( 模块:即是最小的一个条或 空单位) ,如图2 2 所示,这也是4 1 7 名字的由来。 1 1i2f3 1 4 1 5 l6 f7 f8 1 9 1 1 0 1 1 1j 12 | 1 3 f 1 4 1 1 5 1 1 6 1 1 7 l 易岛 “ s l 5 2 s , 图2 - 2 符号字符 其中p d f 4 1 7 条码的起始符和终止符是唯一的。自左向右,由条开始,起始符的条、 空序列为8 1 1 1 1 1 1 3 。终止符的条、空序列为7 1 1 3 1 1 1 2 1 。注意到终止符为1 8 个模块,这是 7 i_ 南京邮电大学硕士研究生学位论文 第二章p d f 4 1 7 二维条码的结构组成 为了区分条码结束与右空白区,所以最后加1 个模块的条。 2 3 2 码字集 4 1 7 条码码字集包含9 2 9 个码字,码字( 码字:符号字符的值) 取值范围为0 - 9 2 8 。在码 字集中,码字使用应遵守下列规n t l o l : 码字0 - 8 9 9 :根据当前的压缩模式和g l i 解释,用于表示数据。 码字9 0 0 9 2 8 :在每一模式中,用于具有特定目的符号字符的表示。其中码字 9 0 0 ,9 0 1 ,9 0 2 ,9 1 3 ,9 2 4 用于模式标识,见表2 2 。 2 3 3 符号字符的簇 4 1 7 条码符号字符集由三个簇( 簇:构成4 1 7 条码符号字符集的与码字集对应的相互独 立的子集) 构成,每一簇包括以不同的条、空形式表示的所有9 2 9 个4 1 7 的码字【1 。在每一 簇中,每一符号字符对应唯一的码字,其范围为0 - 9 2 8 。附录a 的表给出了每一簇的部分 符号字符的条、空序列和它们所对应的码字。 4 1 7 条码使用簇号0 ,3 ,6 ,簇号的定义适用于所有4 1 7 条码符号字符。 4 1 7 条码符号的每行只使用一个簇中的符号字符,同一簇每三行重复次,第一行使 用第0 簇的符号字符,第二行使用第3 簇的符号字符,第三行使用第6 簇的符号字符,第 四行使用第0 簇的符号字符,以此类推。行号由上向下递增,最上一行行号为1 。 对于一个特定符号字符,其簇号由下式确定: 簇- 号- - ( b , - b 2 + b 3 - b 4 + 9 ) m o d 9 ( 2 - 1 ) 式中:6 l ,6 2 ,6 3 ,6 4 分别表示自左向右四个条的模块数( 参见图2 2 ) 。 例:对于图2 2 中的符号字符,其簇号计算如下: 簇号= ( 5 1 + 1 2 + 9 ) m o d9 = 3( 2 2 ) 对于每一特定的行,使用的符号字符的簇号由下式计算: 簇号= ( 行号- 1 ) m o d3 】幸3 ( 2 - 3 ) 2 4 行指示符号字符 行指示符号字符包括左行指示符号字符( 厶) 和右行指示符号字符( 置) 。分别与起始符 和终止符相邻接,见表2 1 。行指示符号字符的值( 码字) 指示4 1 7 条码的行号( i ) ,行数( 3 - 9 0 ) , 数据区中数据符号字符列数( 1 3 0 ) ,错误纠正等级( o 一8 ) 。 8 南京邮电大学硕士研究生学位论文 第二章p d f 4 1 7 二维条码的结构组成 表2 - 1p d f 4 1 7 条码结构 左右行指示符号字符的值由下式确定: 3 0 而+ y ( w h e n q = o ) 厶= 3 0 葺+ z ( w h e n q = 3 ) 【3 0 葺+ v ( w h e n q = 6 ) f 3 0 一+ v ( w h e n q = o ) 局= 3 0 薯+ y ( w h e n q = 3 )( 2 4 ) 【3 0 而+ z ( w h e n c t = 6 ) 其中i 为行号,错误纠正等级为s ,数据区列数为c ,行数为r ,c j 为第i 行的簇号, i n t 表示取一个数的整数部分,am o db 表示a 除以b 所得的余数。 x j = 1 n t ( i - 1 ) 3 】i = l ,2 ,3 9 0 : y = i n t ( r - 1 ) 3 z = sx3 + ( r - 1 ) m o d 3 ,= c 一1 例:如果一个4 1 7 条码符号为3 行、3 列,错误纠正等级为1 ,那么 ( 厶,厶,厶) 为( o ,5 ,2 ) ;( 墨,r 2 ,马) 为( 2 ,0 ,5 ) 。 2 5 模式结构 4 1 7 条码有三种数据压缩模式:文本压缩模式( t c ) 、字节压缩模式( b c ) 和数字压缩模 式( n c ) f 1 3 】。通过应用模式锁定转移( l a t c s h i r ) 码字,可在一个4 1 7 条码符号中应用多种模 式表示数据。例如:用码字9 0 0 表示锁定为文本压缩模式,用码字9 0 2 表示锁定为数字压 缩模式等。 2 5 1 模式锁定与模式转移码字 模式锁定与模式转换码字用于模式之间的切换,见表2 - 2 。 9 南京邮电大学硕士研究生学位论文 第二章p d f 4 1 7 二维条码的结构组成 表2 - 2 模式切换码字表 模式模式锁定模式转移 文本大写字母型子模式 9 0 0 压缩小写字母型子模式 模式混合型子模式 标点型子模式 字节压缩模式 9 0 1 9 2 49 1 3 数字压缩模式 9 0 2 模式锁定码字用于将当前模式切换为指定的目标模式,该模式切换在下一个切换前一 直有效。 模式转移9 1 3 用于从文本压缩模式( t c ) 至i j 字节压缩模式( b c ) 的暂时性转移。这种切换 仅对切换后的第一个码字有效,随后的码字又返回到文本压缩模式( t c ) 的当前子模式。 锁定模式可将当前模式切换成任一种模式,包括切换成当前模式,字节压缩模式下不 能再用字节模式转移。模式切换结构见图2 3 。 2 5 2 文本压缩模式( t c ) 图2 - 3 模式切换 1 子模式 文本压缩模式包括下列四个子模式【1 3 1 2 s 】: 大写字母型子模式( a l p h a ) 小写字母型子模式( l o w e rc a s e ) 混合型子模式( m i x e d ) 标点型子模式( p u n c t u a t i o n ) 子模式的设置是为了更有效地表示数据,每种子模式选择了文件中出现频率较高的一 1 0 南京邮电大学硕士研究生学位论文第二章p d f 41 7 二维条码的结构组成 组字符组成的字符集。在子模式中,每一个字符对应一个值( o - 2 9 ) ,见表2 3 。这样可用一 个单独的码字表示一个字符对。码字由下式计算: 码字= 3 0 h + l( 2 5 ) 式中:h ,l 依次表示字符对中的高位和低位字符值。 ,表2 - 3 文本压缩子模式下字符的对应值 值 大写字母型小写字母型混合型标点型 a s c i i 值字符a s c i i 值字符a s c i i 值字符a s c i i 值字符 o6 5a9 7a4 8o5 9 l6 6b9 8b4 9l6 0 36 8d1 0 0d5 l36 2 46 9e1 0 1e5 246 3 57 0f1 0 2f5 356 4 | 67 1g1 0 3 g 5 466 5 】 : : : : : : 2 4 8 9y 1 2 l y 9 4 4 1 ) 2 59 0z1 2 2z p l 6 3 ? 2 63 2s p3 2s p 3 2s 1 2 3 ( p 2 7h嬲n1 2 5 ) 2 8m lm la l3 9 , 2 9 p s p sp s 酊 注:l l ,p s ,m l ,a l ,p l ,a s 用于子模式切换 2 子模式之间的切换 任何模式到文本压缩模式( t c ) 的锁定都是到大写字母型子模式( a l p h a ) 的锁定,见图 2 4 。在文本压缩模式中,每一个码字用两个基为3 0 的值表示f 范围为0 - 2 9 ) 。如果在一个 字符串的尾部有奇数个基为3 0 的值,需要用值为2 9 的虚拟字符p s 填充最后一个码字。如 果在一个字节转移( 码字9 1 3 ) 之前紧接着应用p s ( 2 9 ) 做为一个填充,那么p s 则无效。不允 许紧跟在一个子模式转移之后的另一个子模式转移或锁定。 南京邮电大学硕士研究生学位论文 第二章p d f 41 7 二维条码的结构组成 - 子模式转移 n = 锁定为小写字母型子模式 阳= 转移为标点型子模式 m l = 锁定为混合型子模式 a l = 锁定为大写字母型子模式 p l = 锁定为标点型子模式 a s = 转移为大写字母型子模式 图2 - 4 描述子模式的切换结构 例:字符串“a d :1 0 2 ”可以编为字符序列a ,i i ,d ,m l ,:,1 ,o ,2 。 其中:l l 为小写字母型子模式锁定;m l 为混合型子模式锁定。 从表2 3 可得,这些字符所对应的值为( 0 ,2 7 ,3 ,2 8 ,1 4 ,l ,0 ,2 ) 。可分组为( 0 ,2 7 ) ,( 3 ,2 8 ) , ( 1 4 ,1 ) ,( 0 ,2 ) 。根据上述公式,符号字符值计算如下: ( 0 3 0 + 2 7 ,3 3 0 + 2 8 ,1 4 3 0 + 1 ,0 3 0 + 2 ) = ( 2 7 ,1 1 8 ,4 2 l ,2 ) 其结果6 个字符通过子模式切换机制用4 个码字来表示。 2 5 3 字节压缩模式( a c ) 字节压缩模式( b c ) 中,通过2 5 6 进制的数转换到9 0 0 进制的数,将6 个字节转换成5 个码字,从左到右进行转换,将字节序列转换为码字序列。有两个用来模式锁定字节压缩 模式的码字( 9 0 1 ,2 4 ) 。 当所要表示的字节总数为6 的倍数时,用模式锁定9 2 4 。如6 个字节 6 5 ,么,6 3 ,如,6 l ,b o ,( 0 岛2 5 5 ) 存在唯一的一组数q ,c 3 ,q ,q ,c o ,( 0 c j 9 0 0 ) ,使下式成立: 6 5x 2 5 6 5 + 钆x 2 5 6 4 + 6 3x 2 5 6 3 + 6 2x 2 5 6 2 + 岛x 2 5 6 + b o = c 4x 9 0 0 4 + c 3x 9 0 0 3 + c 2x 9 0 0 2 + c lx 9 0 0 + c o ( 2 6 ) 注意,上式中岛,q 均以十进制数形式带入。 当要表示的字节总数不是6 的倍数时,用模式锁定9 0 1 ,前面那些6 个一组的字节采 用同样的方法处理,最后剩下的不足6 个字节,每一个字节直接对应一个码字,逐字节地 1 2 堕室塑皇奎堂堡主婴窒生堂堡笙奎兰三皇呈里坠! :三堡墨塑塑竺塑望壁 用码字表示即可。 例:一个二位1 6 进制的数据序列0 1 h ,0 2 h ,0 3 h ,0 4 h ,5 h ,6 h ( h 代表十六进制) 可表示为 一个码字序列9 2 4 ,1 ,6 2 0 ,8 9 ,7 4 ,8 4 6 。 因为有6 个数据单元,第一个码字选用字节压缩模式锁定码字9 2 4 ,该6 个数据字节 到5 个码字的转换由下式给出: l 2 5 6 5 + 2 2 5 6 4 + 3 2 5 6 3 + 4 x 2 5 6 2 + 5 2 5 6 + 6 = l 9 0 0 4 + 6 2 0 x 9 0 0 3 + 8 9 x9 0 0 2 + 7 4 x 9 0 0 + 8 4 6 当所要表示的字节数不是6 的倍数时,必须使用模式锁定码字9 0 1 ,前每6 个字节的 转换方法与上述方法相同,对被6 整除所剩余的字节应每个字节对应一个码字,逐字节用 码字表示。 例:数据序列0 1 h ,0 2 h ,0 3 h ,0 4 h ,0 5 h ,0 6 h ,0 7 h ,0 8 h ,0 4 h 共9 个字节,可将其转换为码 字序列9 0 1 ,l ,6 2 0 ,8 9 ,7 4 ,8 4 6 ,7 ,8 ,4 表示。 其中:第一个码字9 0 1 为字节数不是6 的倍数时的字节模式锁定码字; 前6 个字节应用基2 5 6 至9 0 0 的转移,字节转移方法与上面所述方法相同; 剩余的字节0 7 h ,0 8 h ,0 4 h ,每个码字对应一个字节,依次直接表示。 2 5 4 数字压缩模z - - 戈( n c ) 数字压缩模式是指从基l o 至基9 0 0 的数据压缩的一种方法。g l i 为o 时,数字压缩用 于数据位数的压缩。数字值的映象见表2 4 。尽管在任意数字长度下都可应用数字压缩模 式,一般推荐当连续的数字位数大于1 3 时用数字压缩模式,否则应用文本压缩模式。 表2 4 数字压缩模式下的数字值映象 数字a s c i i 值g l l 0 字符 04 8o l4 91 25 02 3 5 l 3 4 5 2 4 5 5 3 5 6 5 4 6 75 57 85 68 95 79 南京邮电大学硕士研究生学位论文 第二章p d f 4 1 7 二维条码的结构组成 在数字模式下,将根据下述算法对数字位进行编码: 1 将数字序列从左向右每4 4 位分为一组,最后一组包含的数字位可少于4 4 个。 2 对每一组数字: 首先在数字序列前加一位有效数字1 ( 即前导位) ,然后执行基1 0 至基9 0 0 的转换。 例:数字序列0 0 0 2 1 3 2 9 8 1 7 4 0 0 0 的表示。 首先,对其进行分组。因它共有1 5 位,故只有一组; 其次,在其最左边加1 ,将得到数字序列1 0 0 0 2 1 3 2 9 8 1 7 4 0 0 0 ; 最后,将其转移成基9 0 0 的码字序列,结果为1 , 6 2 4 ,4 3 4 ,6 3 2 ,2 8 2 ,2 0 0 。 译码算法与编码算法相反: 1 将每1 5 个码字从左向右分为一组( 每1 5 个码字可转换成4 4 个数字位) ,其最后一 组码字可少于1 5 个。 2 对于每一组码字: 先执行基9 0 0 至基1 0 的转换; 然后去掉前导位1 。 对上述实例,因只有6 个码字,故仅能分为1 组。其转换为: l 9 0 0 5 - i - 6 2 4 9 0 0 4 - t - 4 3 4 x 9 0 0 3 + 6 3 2 x 9 0 0 2 - i - 2 8 2 9 0 0 - i - 2 0 0 = 1 0 0 0 2 1 3 2 9 8 1 7 4 0 0 0 去掉前导位1 得0 0 0 2 1 3 2 9 8 1 7 4 0 0 0 。 2 6 错误检测与纠正 每一个4 1 7 条码符号至少包含两个错误纠正码字,用于符号的错误检测与纠正【l l 】。 4 1 7 条码的错误纠正等级用s 表示,其取值范围为o 8 ,可由用户选择其一。每种错误 纠正等级所对应的错误纠正码字数目为2 “1 。 2 6 1 错误纠正容量 对于一个给定的错误纠正等级,其错误纠正容量由下式确定: e + 2 t d 2 即:e + 2 t , + 1 - 2( 2 7 ) 式中:r 拒读错误数目; t - 替代错误数目; 1 4 堕室坚皇奎堂堡主婴塞生兰垡笙塞笙三皇! 里坠! ! 三丝墨塑箜堕塑望堕 r 错误纠正等级; 艄误纠正码字数目。 错误纠正码字的总数为2 1 。其中,两个用于错误检测,其余的错误纠正码字用于错 误纠正。用一个错误纠正码字恢复一个拒读错误,用两个错误纠正码字纠正一个替代错误。 当被纠正的替代错误数目小于4 时( s = o 除外) ,错误纠正容量由下式确定: e + 2 t r 一9 2 9 ,在有限域 g f ( 9 2 9 ) q b 的负值等于该值的补数,如果e 9 2 9 ) r e t u m ( 2 ) ; i f ( i n _ _ r v a l ! = 9 9 9 ) r o w sa n dc o l u m n sa l r e a d yc a l c u l a t e d f i l l _ c o u n t = ( ( i n _ o v a l - 2 ) 木i n _ r v a l ) 一e c l e n c o d e i n d e x ; n u m b e r o f r o w s2i n _ r v a l ; n u m b e r o f c o l u m n s = i n _ o v a l ; ) e l s e r o w sn o tc a l c u l a t e d ,i n r v a l = 9 9 9 n u m b e r o f c o l u m n s = i n _ c v a l ; i f ( i n _ c v a l ! = 2 ) i f ( ( e c l e n + c o d e i n d e x ) ( i n _ c v a l 一2 ) ! = 0 ) f i l l c o u n t = ( i n _ e v a l - 2 ) - ( ( e c l e n + c o d e i n d e x ) ( i n _ e v a l - 2 ) ) ; n u m b e r o f r o w s = ( ( e c l e n + c o d e i n d e x ) ( i n _ c v a l - 2 ) ) + 1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论