(精密仪器及机械专业论文)二维条码研究(精密仪器及机械专业优秀论文).pdf_第1页
(精密仪器及机械专业论文)二维条码研究(精密仪器及机械专业优秀论文).pdf_第2页
(精密仪器及机械专业论文)二维条码研究(精密仪器及机械专业优秀论文).pdf_第3页
(精密仪器及机械专业论文)二维条码研究(精密仪器及机械专业优秀论文).pdf_第4页
(精密仪器及机械专业论文)二维条码研究(精密仪器及机械专业优秀论文).pdf_第5页
已阅读5页,还剩49页未读 继续免费阅读

(精密仪器及机械专业论文)二维条码研究(精密仪器及机械专业优秀论文).pdf.pdf 免费下载

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

文档简介

摘要 二维条码是近年来在一维条码的基础上发展起来的新型条码,其信息量大为 增加,不但可对编码的物品进行标识,而且可以实现对编码物品的描述,本文针 对一种典型的二维条码p d f 4 1 7 ,研究了其编码、信息隐藏和检测技术。 首先介绍了二维条码p d f 4 1 7 编码原理,并根据其编码算法实现了条码分析软 件的开发;其次,提出了基于p d f 4 1 7 条码的信息隐藏方法,通过结构微调的方式, 在保证条码正确识别的前提下,将信息隐藏嵌入进条码之中;最后,在传统条码 检测算法基础上,提出了一种改进的条码检测算法,利用对条码边界信号一阶导 数进行加权平均的方法,将条码的边界检测精度提高到亚像素级别。 关键词:二维条码条码编码信息隐藏条码检测 a b s t r a c t t w o 。d i m e n s i o n a lb a r c o d ei san e w - s t y l eb a r c o d eb a s e do n ed i m e n s i o n ,t h e c o n t e n to fi n f o r m a t i o ni n c r c a s e se n o r m o u s l y , i ti sn o to n l yt h em a r k i n gb u ta l s ot h e d e s c r i p t i o no ft h ep r o d u c t s p d f 4 1 7i sar e p r e s e n t a t i v eo f2 db a r c o d e t h et e c h n i q u e s o fp d f 4 1 7b a r c o d ec o d i n g , i n f o r m a t i o nh i d i n ga n d d e t e c t i n ga r es t u d i e d a tf i r s t ,t h ec o d i n gt h e o r yo fp d f 4 1 7i si n t r o d u c e d ,a n dt h es o f t w a r eo fa n a l y s i s b a r c o d ei sa c h i e v e da c c o r d i n gt ot h ea l g o r i t h m s e c o n d l y , a ni n f o r m a t i o nh i d i n g t e c h n i q u ei sp r o p o s e d ,w h i c hi sb a s e do nt h ec o n f i g u r a t i o no fp d f 4 1 7b a r c o d e b y m o d i f y i n gt h ec o n f i g u r a t i o no fb a ra n ds p a c es l i g h t l y , i n f o r m a t i o ni sh i d d e ni n t o p d f 4 1 7b a r c o d ei nt h ep r e c o n d i t i o no fd e c o d i n gc o r r e c t l y f i n a l l y , b a s e do nt h e f o u n d a t i o no ft h et r a d i t i o n a lb a r c o d ed e t e c t i n ga l g o r i t h m ,a ni m p r o v e m e n t a l g o r i t h mi s p u tf o r w a r d ,i ti sc a l c u l a t e dt h a tt h ew e i g h t e da v e r a g eo ff i r s td e r i v a t i v eo ft h eb a r c o d e b o u n d a r ys i g n a lt oa c c u r a t et h ee d g ei nt h es u b p i x e lc l a s s k e y w o r d s :t w od i m e n s i o nb a r c o d e b a r c o d ec o d i n gi n f o r m a t i o nh i d i n g b a r c o d ed e t e c t i n g 西安电子科技大学 创新性声明 秉承学校严谨的学风和优良的科学道德,本人声明所呈交的论文是我个人在 导师指导下进行的研究工作及取得的研究成果。尽我所知,除了文中特别加以标 注和致谢中所罗列的内容以外,论文中不包含其他人已经发表或撰写过的研究成 果;也不包含为获得西安电子科技大学或其它教育机构的学位或证书而使用过的 材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中做了明确的说 明并表示了谢意。 申请学位论文与资料若有不实之处,本人承担一切的法律责任。 本人签名:壶叠逸 西安电子科技大学 关于论文使用授权的说明 本人完全了解西安电子科技大学有关保留和使用学位论文的规定,即:研究 生在校攻读学位期间论文工作的知识产权单位属西安电子科技大学。学校有权保 留送交论文的复印件,允许查阅和借阅论文;学校可以公布论文的全部或部分内 容,可以允许采用影印、缩印或其它复制手段保存论文。同时本人保证,毕业后 结合学位论文研究课题再撰写的文章一律署名单位为西安电子科技大学。 ( 保密的论文在解密后遵守此规定) 本学位沦文属于保密,在一年解密后适用本授权书。 本人签名: 巡邈r 期2 司! ! ! :马 导师签名: 日期苎簟! :型 第一章绪论 第一章绪论 1 1 引言 伴随科技的高速发展,国际经济迅速向一体化迈进,促进了信息开发和信息 服务产业的诞生和发展。计算机在性能上日臻完善,超大规模集成电路和超高速 计算机技术的突飞猛进,人们开始关注如何改变手工数据输入,使输入质量和速 度与其相匹配。条码自动识别技术就是在这样的环境下应运而生的,它是以计算 机、光电技术和通信技术的发展为基础的一项综合性科学技术,是信息数据自动 识别、输入的重要方法和手段f 1 2 】。 条码是一种信息的图形标示符,它是由一组规则排列的条、空以及对应的字 符组成的标记。这些条和空组成的数据表达一定的信息,并能够被识读,转换成 与计算机兼容的二进制信息,由条码、条码符号的生成及其扫描阅读等部分组成 的自动识别系统称之为条码系统,应用条码系统进行信息处理的技术称之为条码 技术。 条码技术现已应用在计算机管理的各个领域,渗透到了商业、工业、交通运 输业、邮电通讯业、物资管理、仓储、医疗卫生、安全检查、餐饮旅游、票证管 理以及军事装备、工程项目等国民经济各行各业。因此研究条码技术有着重要意 义。目前,人们在同常生活中常见的条码是一维条码。 1 2 1 一维条码 1 2 现有条码技术概述 1 一维条码简介 一维条码是由组粗细不同、黑白( 或彩色) 相间的条、空及其相应的字符( 数 字字母) 组成的标记,即传统条码,也就是目前我们常见的印刷在商品包装、集装 运输包装、车票、挂号邮件、图书杂志上的条形符号,如图1 1 所示。 目前一维条码应用最为广泛的主要有e a n 和u p c 两种,其中e a n 码是我国主要采 用的编码标准。e a n 码有两种版本标准版和缩短版。标准版表示1 3 位数字,又 称为e a n l 3 码,缩短版表示8 位数字,又称e a n 8 。两种条码的最后一位为校验位, 由前面1 2 位或7 位数字计算得出。 e a n 码由| j i 缀码、厂商识别码、商品项目代码和校验码组成。前缀码是国际e a n 组织表示各会员组织的代码,我国为6 9 0 、6 9 1 和6 9 2 ;厂商代码是e a n 编码组织在 2= 维条码研究 e a n 分配的前缀码的基础上分配给厂商的代码;商品项目代码有厂商自行编码;校 验码为了校验代码的正确性。在编制项目代码时,厂商必须遵守商品编码的原则; 对同一商品项目的商品必须编制相同的商品项目代码,对不同的商品必须编制不 同的商品项目代码。保证商品项目与其标识代码一一对应,即一个项目只有一个 代码,一个代码只标识一个商品项目。 图1 1 一维条码图像 2 一维条码的局限 一维条码只是在一个方向( 一般是水平方向) 表达信息,而在垂直方向则不表 达任何信息,其一定的高度通常是为了便于阅读器的对准。 一维条码的应用可以提高信息录入的速度,减少差错率,但是一维条码也存 在一些不足之处: 1 ) 数据容量较小,仅有3 0 个字符左右; 2 ) 只能包含字母和数字; 3 ) 码尺寸相对较大( 空间利用率较低) ; 4 ) 码遭到损坏后便不能阅读。 然而信息社会的高速发展,迫切需要用条码在有限的几何空间内表示更多的 信息,以满足千变万化的信息表示的需要。二维条码就是在一维条码无法满足实 际应用需要的前提下产生的。 1 2 2 二维条码 二维条码是用某种特定的几何图形按一定规律在平面( 二维方向) 上分布的 条、空相间的图形来记录数据符号信息。它具有条码技术的共性,即每种码制有 其特定的字符集;每个字符占有一定的宽度;具有一定的校验功能等。具有高信 息容量、强纠错能力、安全性好、编码范围广和不依赖后台数据库等优点的二维 条码已经成为现代条码应用的新兴技术。 1 一维条码与二维条码的比较 由于受信息容量的限制,一维条码通常是对物品的标识,而不是对物品的描 述。所谓对物品的标识,就是给物品分配一个代码,代码以条码的形式标识在物 第一章绪论 3 品上,用来标识该物品以便自动扫描设备的识读,代码或一维条码本身不表示该 物品的描述性信息。因此,在通用商品条码的应用系统中,对商品信息,如生产 日期、价格等的描述必须依赖数据库的支持。在没有预先建立商品数据库或不便 联网的地方,一维条码表示汉字和图像信息几乎是不可能的,即便可以表示,也 显得十分不便且效率很低。 传统的一维条码显然不能满足在有限的几何空间内表示大量的信息的需要。 二维条码就是在这种情况下应运而生的,表1 2 比较了一维、二维条码的性能指标。 表1 2 一维、二维条码比较 项目信息密错误检验及纠错 用途对数据库和识读设备 度与信能力 通讯网络的 条码类秋息容鼍 依赖 一维条码信息密可通过校验字符对物多数戍用场可用线扫描器识 度低,信进行错误校验,没品的合依赖数据读,如光笔、线阵 息容量有纠错能力标识库及通讯网c c d 、激光枪等 较小 络 二维条码 信息密具有错误校验和对物可不依赖数对于行排式二维条 度高,信纠错能力,可根据品的据库及通讯码可h j 线扫描器的 息容量需求设置不同的描述网络而单独多次扫描识读;对 大纠错级别应用于矩阵式二维条码 仅能用图像扫描器 识读 2 二维条码的分类 与一维条码一样,二维条码也有许多不同的编码方法,或称码制。根据二维 条码实现原理、结构形状的差异,可分为堆叠式或层排式二维条码( s t a c k e db a r c o d e ) 和棋盘式或矩阵式二维条码( d o tm a t r i xb a rc o d e ) 两大类型: 1 ) 线性堆叠式或层排式二维条码 线型堆叠式二维条码是在一维条码编码原理的基础上,按需要堆积成两行或 多行的条码。它在编码设计、校验原理、识读方法等方面继承了一维条码的一些 特点。但是由于行数的增加,需要对行进行判定,其编译码算法又与一维条码有 4二维条码研究 很大不同。典型的码制如:c o d e1 6 k 、c o d e4 9 、p d f 4 1 7 等。 2 ) 矩阵式或棋盘式二维条码 矩阵式二维条码是在一个矩形空间通过黑、白像素在矩阵中的不同分布进行 编码的条码。在矩阵相应元素位置上,用点( 方点、圆点或者其它形状) 的出现 表示二进制的“1 ”,点的不出现表示二进制的“0 ”,点的排列组合确定了矩阵式 二维条码所代表的意义。典型的码制如:q rc o d e 、d a t am a t r i x 、m a x ic o d e 、c o d e o n e 、c o m p a c t m a t r i x 、龙贝码等。 3 二维条码主要的应用领域 二维条码作为现代条码的新兴技术,其适用范围广泛、推广应用价值极高, 它应用的主要有以下几个方面: 1 ) 运输行业的应用 一个典型的运输业务过程通常经历:供应商货运代理,货运代理+ 货运公 司,货运公舌卜+ 客户等几个过程,在每个过程中都牵涉到发货单据的处理。发货 单据含有大量的信息,包括:发货人信息,收货人信息,货物清单、运输方式等等。 单据处理的前提是数据的录入,人工键盘录入的方式存在着效率低、差错率高的 问题,已不能适应现代运输业的要求。二维码在这方面提供了一个很好的解决方 案,将单据的内容编成一个二维码,打印在发货单据上,在运输业务的各个环节 使用二维条码阅读器扫描条码,信息便录入到计算机管理系统中,即快速又准确。 2 ) 身份识别卡的应用 美国国防部已经在军人身份卡上印刷p d f 4 1 7 码。持卡人的姓名,军衔,照片 和其他个人信息被编成一个p d f 4 1 7 码印在卡上,卡被用来做重要场所的进出管理 及医院就诊管理。该项应用的优点在于数据采集的实时性,低实施成本,卡片损 坏也能阅读,以及防伪性。我国香港特别行政区的居民身份证也采用p d f 4 1 7 码 其他的应用,如营业执照、驾驶执照、护照、我国城市的流动人口暂住证、医疗 保险卡等也都是很好的应用方向。 3 ) 文件和表格应用 日本s e i m e i 保险公司的每个经纪人在会见客户时都带着笔记本电脑。每张保 单和协议都在电脑中制作并打印出来当他们回到办公室后需要将保单数据手工 输入到公司的主机中。为了提高数据录入的准确性和速度,他们在制作保单的同 时将保单内容编成一个p d f 4 1 7 条码,打印在单据上,这样他们就可以使用二维条 码阅读器扫描条码数据录入主机。其它类似的应用还有:海关保单表、税务申报表、 政府部门的各类申请表等等。 4 ) 资产跟踪 美国钢管公司在各地拥有不同种类的管道需要维护,为了跟踪每根管子,他 们将管子的编号,制造厂商,长度,等级,尺寸,厚度以及其它信息编成一个二 第一章绪论 5 维条码,制成标签后贴在管子上。当管子移走或安装时,操作员扫描条码标签, 数据库信息得到及时更新。工厂可以采用二维条码跟踪生产设备,医院和诊所也 可以采用二维条码标签跟踪设备、计算机及手术器械。 在诸多二维条码当中,美国符号科技( s y m b o lt e c h n o l o g i e s ,i n c ) 公司发 明的p d f 4 1 7 - 维条码是应用最广泛的二维条码之一。 1 3p d f 4 1 7 简介 p d f 4 1 7 码的发明人是留美华人王寅敬( 音) 博士,他在1 9 8 8 年进入符号科技进 行二维条码的研发工作,于1 9 9 2 年底推出p d f 4 1 7 条码。p d f 是取英文p o r t a b l ed a t a f i l e 三个单词的首字母的缩写,意为“便携数据文件”。因为组成条码的每一符号 字符都是由4 个条和4 个空构成,如果将组成条码的最窄条或空称为一个模块,则 上述的4 个条和4 个空的总模块数为1 7 ,所以称四一七条码或p d f 4 1 7 码 3 - 5 1 。 p d f 4 1 7 码的特点: 1 信息容量大 p d f 4 1 7 码除可以表示字母、数字、a s c i i 字符外,还能表达二进制数。为了使 得编码更加紧凑,提高信息密度,p d f 4 1 7 在编码时有三种格式: 1 ) 扩展的字母数字压缩格式可容纳1 8 5 0 个字符; 2 ) 二进$ 0 a s c ii 格式可容纳11 0 8 个字节; 3 ) 数字压缩格式可容纳2 7 1 0 个数字。 在相同面积情况下,二维条码比一维条码信息含量高几十倍。 2 修正错误能力强 一维条码通常具有校验功能以防止错读,一旦条码发生污损将被拒读。p d f 4 1 7 采用了目前世界上最先进的错误修正技术r s 纠错码,这种隐含于符号内的错误修 正技术,不仅可以有效地防止译码错误,提高译码的速度及可靠性,而且可以将 由于条码符号破损、沾污等丢失的信息破译出来。错误修j 下可分为九个等级,最 高时,可以将符号受损面积5 0 的条码符号所含信息复现出来。 3 容易z o $ , j 且寿命长、成本低 p d f 4 1 7 条码可以印在纸、卡片及各种常用条码载体上,可以用多种标准的打 印技术及卡片印制,包括:喷墨打印、激光打印、热敏热转印条码打印机打印等。 磁卡寿命一般为两年,i c 卡寿命为三年,但价格昂贵,p d f 4 1 7 二维条码卡的寿命 为9 1 0 年,而单价只有i c 卡的四分之一,批量生产价格更低。 4 可用多种阅读设备阅读 p d f 4 1 7 码可用带光栅的激光阅读器,线性及面扫描的图像式阅读器阅读。 5 尺寸可调以适应不同的打印空问 6二维条码研究 6 保密性强 p d f 4 1 7 可以把编码信息按密码格式进行编码,以防止伪造条码符号或非法使 用有关编码的信息。 7 码制公开 已形成国际标准,我国也已制定了四一七条码的国标( g b t1 7 1 7 2 1 9 9 7 ) 。 1 4p d f 4 1 7 条码的应用16 】及发展前景 1 4 1 二维条码p d f 4 1 7 在国际上的应用 二维条码p d f 4 1 7 作为一种新的信息存储和传递技术,从诞生之始就受到了国 际社会的广泛关注。p d f 4 1 7 条码在1 9 9 4 年被选定为国际自动识别制造商协会( a i m ) 标准,在1 9 9 6 年被美国标准化委员会( a n s i ) 作为美国的运输包装的纸面e d i 标准。 在1 9 9 7 年,欧洲标准化委员会( c e n ) 通过了p d f 4 1 7 的欧洲标准。 美国符号科技( s y m b o lt e c h n o l o g i e s ,i n c ) 公司发明的p d f 4 1 7 二维条码, 已被使用在国防、公共安全、交通运输、物流、医疗保健、工业自动化、商业、 金融、海关及政府管理等领域,并取得了巨大的社会效益和经济效益。在美国, 军人证、军人医疗证、居民身份证、驾驶证等都采用了二维条码p d f 4 1 7 技术。 此外,哥伦比亚、南非、埃及、菲律宾、巴林、黎巴嫩等许多国家也已在身 份证或驾驶证上采用二维条码。香港9 7 回归后,香港居民新发放的特区护照上采 用的就是二维条码p d f 4 1 7 技术。 1 4 2 二维条码p d f 4 1 7 在我国的应用 由于二维条码具有成本低、信息可随载体移动、不依赖于数据库和计算机网 络、保密防伪性强等优点,结合我国人口多,底子薄,计算机网络投资资金难度 较大,对证件的防伪要求较高等特点,因此,p d f 4 1 7 条码在我国极有推广价值。 很多科研文献【7 d l l 都分析了二维条码的卓越性能和实际应用。目前在美国等发 达国家,p d f 4 1 7 条码已经在一些实际应用领域崭露头角。但在我国,由于大部分 技术及几乎所有设备都需从国外引进,使用成本非常高,因此目前实际应用范围 很小。另一方面,p d f 4 1 7 二维条形码信息密度大,数据采集及识别的难度很高, 加之该技术具有商业保密性,资料来源较少,相关研究受到很大限制。但是,只 有开发出拥有自主知识产权的条码及其相关技术,我国才能够在条码市场上占据 一席之地,降低使用成本,促进二维条码的普及应用。当前,我国政府和科研机 构也对二维条码技术设备的开发给予了广泛的关注,己经把二维条形码技术的研 第一章绪论 7 究和推广应用逐步提到议事日程。 总之,二维条码在我国有着广阔的应用前景,p d f 4 1 7 条码技术在我国的推广 应用必将为我国信息产业的发展和现代化的经济建设带来可观的社会效益和经济 效益。 1 5 课题来源和本文的主要工作 论文来源于教育部留学回国人员基金项目“喷墨式c t p 关键技术研究”中二 维条码技术研究部分,我们选择二维条码中具有代表性的p d f 4 1 7 条码进行研究。 本文的二维条码技术研究部分的工作主要分为三部分: 1 根据p d f 4 1 7 条码的编码算法编制了p d f 4 1 7 条码分析软件。成功的实现了 p d f 4 1 7 条码的编码、打印、显示分析数据等功能。 2 研究基于p d f 4 1 7 条码的信息隐藏方法。在二维条码p d f 4 1 7 的基础上,提 出了一种基于二维条码的信息隐藏方法,根据p d f 4 1 7 条码自身特点,通过对其进 行结构微调,使信息隐藏嵌入进条码之中。 3 提出改进的条码检测方法。在传统的条码检测算法对条码图像进行 微分或二阶微分来确定条码边缘的算法的基础上提出了改进的检测算法,根据对 条码边界图像采样后灰度值的投影信号一阶导数的加权平均,将条码的边界检测 精度提高到亚像素级别。 本文针对一种典型的二维条码p d f 4 1 7 ,研究了其编码、信息隐藏和检测技术。 论文内容具体安排如下: 第一章:绪论概括论述了论文的研究背景,论述了常见的一维条码和二维 条码,介绍了一种典型的p d f 4 1 t - 维条码。 第二章:p d f 4 1 7 条码的结构与编码原理。详细的介绍了p d f 4 1 7 条码的基本结 构与编码原理。 第三章:p d f 4 1 7 条码的分析软件实现。包括数据码字编码、错误纠正码字编 码、前后行指示符码字编码、条码生成等各个部分的计算方法及其相应程序。 第四章:基于p d f 4 1 7 条码的信息隐藏方法。在二维条码p d f 4 1 7 的基础上,根 据p d f 4 1 7 条码自身特点,通过对其进行结构微调,使信息隐藏嵌入进条码之中。 第五章:二维条码的检测。在传统的条码检测算法的基础上提出了改进的检 测算法,根据对条码边界图像采样后玖度值的投影信号一阶导数进行加权平均的 方法,将条码的边界检测精度提高到亚像素级别。 第六章:工作总结和展望。回顾全文所作的工作,指出了论文中的创新点和 有待继续研究之处。 第二章p d f 4 1 7 条码的结构与编码原理9 第二章p d f 4 17 条码的结构与编码原理 2 1p d f 4 1 7 条码的符号结构和特性 p d f 4 1 7 条码是一种便携式数据文件,无需建立后台数据库,可以直接阅读条 码得到相应的信息。四一七条码符号是一个多行结构,符号的顶部和底部为空白 区。上下空白区之间为多行结构。每行数据符号字符数相同,行与行左右对齐直 接衔接。其最小行数为3 ,最大行数为9 0 。条码结构如图2 1 所示: a ) 左空白区 b ) 起始符 c ) 左行指示符号字符 d ) 1 3 0 个数据符号字符 e ) 右行指示符号字符 f ) 终止符 g ) 右空白区 图2 1p d f 4 1 7 条码符号结构 上空自区 四一七条码的可编码字符集包括全a s c i i 字符及扩展a s c i i 字符或8 位二进制 数据,多达8 1 1 ,8 0 0 种不同的字符集或解释。条码的符号尺寸是可变的,高度范围 为3 9 0 行,宽度范围为9 0 x 5 8 3 x ,x 是符号的模块宽度。条码的最大数据量( 错误 纠正等级为0 时) 为每个符号表示1 8 5 0 个大写字母或2 7 1 0 个数字或1 1 0 8 个字节 1 2 - 1 4 】。 2 2p d f 4 1 7 条码的符号表示 本节主要介绍条码的符号字符的结构、码字集、符号字符的簇和行指示符号 字符。 1 0 二维条码研究 2 2 1 符号字符的结构 每个p d f 4 1 7 一- - 维条码符号字符由4 个条和4 个空构成,每个条( b - b 4 ) 或空( s l s 4 ) 包含1 8 个模块,总模块数是1 7 ,故又称为4 1 7 条码如图2 2 。 2 2 2 码字集 -l p d f 4 1 7 条码码字集包含9 2 9 个码字,码字的取值范围为0 9 2 8 。在码字集中, 码字的使用遵循下列规则: 码字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 用于模式标识; 码字9 2 5 ,9 2 6 ,9 2 7 用于g l i ; 码字9 2 2 ,9 2 3 ,9 2 8 用于宏四一七条码; 码字9 2 1 用于阅读器初始化; 码字9 0 3 9 1 2 ,9 1 4 9 2 0 保留待用。 2 2 3 符号字符的簇 条码符号字符由三个簇构成,每一簇包含以不同的条、空形式表示的所有9 2 9 个四一七条码的码字。在一簇中,每一符号字符对应唯一的码字,其范围为0 9 2 8 。 四一七条码使用簇号0 。3 ,6 。簇号的定义适用于所有的四一七条码符号字符。 四一七条码的每行只使用一个簇中的符号字符。同一簇每三行重复一次。第 一行使用第0 簇,第二行使用第3 簇,第三行使用第6 簇,第四行使用第0 簇,以此 类推。行号由上往下递增,最上一行行号为1 。 对于特定的符号字符,其簇号由下式确定: 第一二章p d f 4 1 7 条码的结构与编码原理 1 1 簇号= ( b , - b2 + b3 - b4 ) m o d9 ( 2 1 ) 式中:b 。,b :,b ,b 分别表示自左向右的四个条的模块数。 例如:对每一特定的行,使用的符号字符的簇号由下式计算: 簇号= ( 行号- 1 ) m o d3 3 2 2 4 行指示符号字符 行指示符号字符包括左行指示符号字符( l ;) 和右行指示符号字符( r ;) ,分别 与起始符和终止符相邻,见图2 1 。行指示符号字符的值( 码字) 指示四一七条码的 行号( i ) ,行数( 3 9 0 ) ,数据区中的数据符号的列数( 1 3 0 ) ,错误纠正等级( o 8 ) 。 左行指示符号字符( l ) 的值由下式确定: 3 0 x , + y当c j 一0 l ,= 1 3 0 x , + z当q一3(2-2) 1 3 0 x , + y当c 。一6 右行指示符号字符( r ;) 的值由下式确定: 当c 一0 当c 。一3 ( 2 - - 3 ) 当c 。;6 式中:x = i n t ( 行号一1 ) 3 i = l ,2 ,3 ,9 0 y = i n t ( 行数一1 ) 3 z = 错误纠正等级3 + ( 行数一1 ) m o d 3 v = 数据区的列数一1 c = 第i 行簇号 如:一个四一七条码符号为3 行、3 列,错误纠正等级为l ,那么 ( l l ,l 2 ,l ,) 为( 0 ,5 ,2 ) ( r 1 ,r2 ,r3 ) 为( 2 ,0 ,5 ) 2 3p d f 4 1 7 条码的压缩模式结构 四一七条码由三种压缩模式:文本压缩模式( t c ) ;字节压缩模式( b c ) ;数字压 缩模式( n c ) 。通过应用模式锁定转移( l a t c h s h i f t ) 码字,可以在一个四一七条 y y z + + + 帆 乃b b 一 = r 二维条码研究 码符号中应用多种模式表示数据。 2 3 1 模式锁定与模式转移码字 模式锁定与模式转移用于模式之间的切换,切换码字表见表2 1 。 表2 1 模式切换码字表 模式模式锁定模式转移 文本 大写字母型子模式 压缩 小写字母型子模式9 0 0 混合犁子模式 模式 标点型子模式 字节压缩模式9 0 1 9 2 4 9 1 3 数字压缩模式 9 0 2 模式锁定码字用于将当前模式切换为指定的目标模式,该模式切换在下一次 切换之一直有效。 模式转移码字用于将文本压缩模式( t c ) 暂时切换为字节压缩模式( b c ) 。这种 切换仅切换后的第一个码字有效,随后的码字又返回文本压缩模式( t c ) 。 锁定模式可以将当前模式切换成任一种,包括切换成当前模式:字节压缩模式 ( b c ) 下不能在用字节模式。模式切换结构如图2 3 。 图2 3 模式切换 第二章p d f 4 1 7 条码的结构与编码原理 2 3 2 文本压缩模式( t c ) 1 子模式 文本压缩模式是每一符号起始的默认有效的压缩模式。为了更有效的表示数 据,文本压缩又分为四个子模式: 1 ) 大写字母型子模式( a l p h a )2 ) 小写字母型子模式( l o w e rc a s e ) 3 ) 混合型子模式( m i x e d )4 ) 标点型子模式( p u n c t u a t i o n ) 子模式的设置是为了更有效地表示数据,每种子模式选择了文件中出现频率 较高的一组字符组成的字符集。在子模式中,每一个字符对应一个值( o 2 9 ) ,见 附录中表1 。这样就可以用一个单独的码字表示一个字符对,表示字符对的码字由 下式计算: 码字= 3 0 xh + l( 2 4 ) 式中:h ,l 依次表示字符对中的高位和低位字符值。 2 子模式之间的切换 任何模式到文本压缩模式( t c ) 的锁定都是到大写字母型子模式( a l p h a ) 的锁 定,见图2 4 。在文本压缩模式中,每一个码字用两个基为3 0 的值表示( 范围为o 2 9 ) 。如果在一个字符串的尾部有奇数个基为3 0 的值,需要用值为2 9 的虚拟字符p s 填充最后一个码字。如果在一个字节转移( 码字9 1 3 ) 之前紧接着应用p s ( 2 9 ) 做为一 个填充,那么p s 贝, j 无效。不允许紧跟在一个子模式转移之后的另一个子模式转移 或锁定。 图2 4 描述文本压缩中各子模式的切换结构 子模式锁定子模式转移 ) 1 4二维条码研究 1l = 锁定为小写字母型孑模式 a l = 锁定为大写字母型子模式 a s = 转移为大写字母型子模式 2 3 3 字节压缩模式( b c ) m l = 锁定为混合型子模式 p l = 锁定为标点型子模式 p s = 转移为标点型子模式 字节压缩模式通过基2 5 6 至基9 0 0 的转换,将字节序列转换为码字序列。 对于字节压缩模式,有两个模式锁定( 9 0 1 ,9 2 4 ) ,当所要表示的字节总数不是 6 的倍数时,用模式锁定9 0 1 ;当所表示的字节总数为6 的倍数时,用模式锁定9 2 4 。 在应用模式锁定9 2 4 的情况下,6 个字节可通过基2 5 6 至基9 0 0 的转换用5 个码字 表示,从左到右进行转换。 例:一个两位1 6 进制的序列0 1 h ,0 2 h ,0 3 h ,0 4 h ,0 5 h ,0 6 h ( h 代表十六进制) 可表 示为一个码字序列9 2 4 ,1 ,6 2 0 ,8 9 ,7 4 ,8 4 6 。 因为有6 个数据单元,第一个码字选用字节压缩模式锁定码字9 2 4 ,该6 个数据 字节到5 个码字的转换右下式给出: 1x2 5 6 5 + 2 2 5 64 + 3x2 5 6 3 + 4x2 5 62 + 5x2 5 6 + 6 = 1x9 0 0 4 + 6 2 0x9 0 03 + 8 9x9 0 02 + 7 4x9 0 0 + 8 4 6 当所要表示的字节数不是6 的倍数时,必须使用模式锁定码字9 0 1 ,前每6 个字 节的转换方法与上述方法相同,对被6 整除所剩余的字节应每个字节对应一个码 字,逐字节用码字表示。 例:数据序歹u o i 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 个字节,可将其转换 为码字序n 9 0 l ,1 ,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 ,每个字节对应一个码字,依次直接 表示。 模式转移9 1 3 用于从文本压缩模式( t c ) 到字节压缩模式( b c ) 的暂时性转移。 2 3 4 数字压缩模式( n c ) 数字压缩模式是指从基1 0 至9 0 0 的数据压缩的一种方法。g l i 为0 时,数字压缩 用于数字位数的压缩。数字值的映象见附录中表2 。 数字压缩模式能把约三个数字位用一个码字表示。尽管在任意数字长度下都 可以应用数字压缩模式,一般推荐当连续的数字位数大于1 3 时用数字压缩模式, 第二章p d f 4 1 7 条码的结构与编码原理 否则应用文本压缩模式。 在数字模式下,将根据下述算法对数字位进行编码。 1 将数字序列从左向右每4 4 位分为一组,最后一组包含的数字位可以少于4 4 个。 2 对于每一组数字: 首先在数字序列前加一位有效数字l ( 即前导位) ,然后执行基1 0 至基9 0 0 的转 换。 例:数字序列0 0 0 2 1 3 2 9 8 1 7 4 0 0 0 的表示。 首先,对其进行分组。因它共有1 5 位,故只有一组; 其次,在其最左边加l ,将得到数字序列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 9 0 05 + 6 2 4x 9 0 04 + 4 3 4 9 0 03 + 6 3 2 9 0 02 + 2 8 2 9 0 0 + 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 0 2 4p d f 4 1 7 条码的数据编码 数据区的第一个码字是符号长度,它表示数据码字( 包括符号长度码字) 的个 数。模式结构的应用从第二个码字开始。文本模式的大写字母型子模式和g l i o 译 解对每一符号的起始时有效;在符号中,其模式可按本章给出的模式锁定或模式 转移码字进行切换。 1 在文本压缩模式中,每一码字由两个基为3 0 的值表示,计算方法按式( 2 4 ) 例:字符串“a d :1 0 2 ”可以编码为字符序列a ,1 l ,d ,m t ,:,1 ,0 ,2 0 。 其中:1 l 为小写字母型锁定,m 1 为混合型锁定。 可从附录中的表1 得到这些字符对应的值为( 0 ,2 7 ,3 ,2 8 ,1 4 ,1 ,0 ,2 ) 。可分组为 ( 0 ,2 7 ) ,( 3 ,2 8 ) ,( 1 4 ,1 ) ,( 0 ,2 ) 。根据上述公式,符号字符值计算如下: ( 0 3 0 + 2 7 ,3 x 3 0 + 2 8 ,1 4 x 3 0 + 1 ,0 3 0 + 2 ) = ( 2 7 ,1 1 8 ,4 2 1 ,2 ) 1 6 二维条码研究 结果6 个字符通过模式转换机制用4 个码字来表示。 2 通过应用锁定和转移的不同压缩,可用不同的码字序列表示同一个数据字符 串。 例:输入( 一个4 个字符的a s c i i 串) : 应用不同的锁定和转移得输出: ( 月;列1 ) :( ) ( ) ( ) ( ) ; ( 序列2 ) :( ) ( ) ( ) ( ) ( ) ; 相对应的码字为: 序列l :8 1 9 ,9 1 3 ,6 ,4 6 6 序列2 :9 0 1 ,1 0 6 ,6 ,1 1 2 ,1 1 3 序列l 是先从小写字母型文本模式转移到字节压缩模式,然后又返回小写字母 型文本模式;序y u 2 是仅应用字节压缩模式。 3 四一七条码符号的形状为矩形,当码字的总数不能正好填充一个矩阵时,用码 字9 1 1 作为虚拟码字填充。虚拟码字填充必须放在可选的宏四一七条码控制模块和 错误纠正码字之前。 2 5 全球标记标识符( g l i ) 全球标记标识符( g l o b a ll a b e li d e n t i f i e r ) 是对数据流的一种特定解释的标 识。它的表示形式为g l iy ,y 的取值范围为0 8 1 1 7 9 9 。在符号中,用相应的码字 序列来表示并激活一组解释,这组解释为由数据压缩模式表示的数据流赋予一定 的含义,直到下一个g l i ,否则在符号结束之前一直有效。 i g l i 值及码字序列 当y 为0 8 9 9 时,对应的码字序列为:9 2 7 ,g 1 ( g l = y ) ; 当y 为9 0 0 8 1 0 8 9 9 时,对应的码字序列为:9 2 6 ,g 2 ,g 3 ( 6 2 + 1 ) x 9 0 0 + g 3 = y ; 当y 为8 1 0 9 0 0 8 1 1 7 9 9 时,对应的码字序列为:9 2 5 ,g 4 ( 8 1 0 9 0 0 + g 4 = y ) ; 以上当g l ,g 2 ,g 3 ,g 4 为0 8 9 9 之日j 的码字。 2 g l i 应用 g l i o g l l 8 9 9 用于国际字符集: g l l 9 0 0 g l l 8 1 0 8 9 9 用于通用目的; g l l 8 1 0 9 0 0 g l l 8 1 1 7 9 9 用于用户自定义。 在一个四一七条码中可以应用多重g l i 。 四一七条码符号缺省的g l i 值为0 。在起始位置,不需要g l i 码字序列来激活这 种缺省解释;如果当前的g l i 值不为0 ,并希望用g l io 来解释,那么可使用码字序 列9 2 7 ,0 将其转换为缺省解释。 第一二章p d f 4 1 7 条码的结构与编码原理 1 7 2 6 错误检测与纠正 每个四一七条码符号至少包含两个错误纠正码字,用于符号的错误检测与纠 正。 2 6 1 纠错等级 四一七条码的错误纠正等级可由用户选择。每种错误纠正等级所对应的错误 纠正码字数目见表2 2 。 表2 2 四一七条码的错误纠正等级 错误纠正等级错误纠正码字数目 02 14 28 31 6 43 2 5 6 4 61 2 8 72 5 6 85 1 2 2 6 2 错误纠正容量 对于一个给定的错误纠正等级,其错误纠正容量由下式确定: e + 2 ts d 一2 = 2 ,+ 1 2( 2 5 ) 式中:e :拒读错误数目; t :代替错误数目; s :错误纠正等级; d :错误纠正码字数目。 纠正码字的总数为2 ”1 。其中。两个用于错误检测,其余的错误纠正码字用于 错误纠正。用一个错误纠正码字恢复一个拒读错误,用两个错误纠正码字纠正一 个替代错误。 当被纠正的替代错误数目小于4 时( s = o 除外) ,错误纠正容量由下式确定: e + 2 t d 一3( 2 6 ) 例:一个错误纠正等级为3 的四一七条码符号字符能纠正1 3 个拒读错误或7 个 1 8二维条码研究 代替错误,或者为e 和t 的各种组合,但必须满足上述纠正容量条件。 2 6 3 错误检测与错误纠正码字的计算 对于一组给定的数据码字,错误纠正等级根据r e e d - s o l o m o n 错误控制码算法 计算。 纠正码字的计算步骤: 第一步:建立符号数据多项式 符号数据多项式如下: d ( x ) - d _ l x 4 1 + d 。一2 工4 2 + + d l z + d o ( 2 - - 7 ) 式中,多项式的系数由数据区码字组成。其中包括长度码、数据码字、填充 码和宏四一七条码控制块。每一数据码字( d ;,i :o n 一2 ,n 一1 ) 在4 1 7 条码符号 中的排列位置见表2 3 。 表2 3 数据、行标识符及错误纠正 l od 一ld 月2r o l lr 1 起 终 始止 符符 l m 一2 dock - ick - 2 r m 一2 l 。一lc lc or m 一1 第二步:建立纠正码字的生成多项式k 个错误纠正码字的生成多项式如下: g i ) 暑o 一3 ) o 一3 2 ) ( x 一3 ) 昌口o + a ,工+ + q 一一- 1 + x ( 2 - - 8 ) 式中,k 为错误纠正码字c 。( i = o k 一2 ,k 1 ) 的个数,c 。在4 1 7 条码符号中的 排列位置见表2 3 。 第三步:错误纠正码字计算 对一组给定的数据码字和一选定的错误纠正等级,错误纠正码字为符号数据 多项式d ( x ) 乘以x ,然后除以生成多项式g ( x ) ,所得余式的各系数的补数。如果 c ; 一9 2 9 ,在有限域g f ( 9 2 9 ) 中的负值等于该值的补数;如果c ;s 一9 2 9 ,在有限域 g f ( 9 2 9 ) 中的负值等于余数( c ,9 2 9 ) 的补数。 第二章p d f 4 1 7 条码的结构与编码原理 2 6 4 错误纠正等级的选择 对于开放式系统,不同数量的编码数据所对应的错误纠正等级推荐值见表 2 4 。在四一七条码符号容易损坏的场所,建议选用较高的错误纠正等级。 表2 4 四一七条码的推荐错误纠正等级 数据码字数错误纠正等级 1 4 02 4 0 - 1 6 03 1 6 l 一3 2 04 3 2 1 - 8 6 35 第三章p o f 4 1 7 条码的分析软件实现 第三章p d f 4 17 条码的分析软件实现 由第二章所给出的二维条码p d f 4 1 7 编码原理,我们用v i s u a lb a s i c 语言编 程实现

温馨提示

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

评论

0/150

提交评论