




已阅读5页,还剩64页未读, 继续免费阅读
(模式识别与智能系统专业论文)二维条码编解码及其应用研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
西南科技大学硕士研究生学位论文第1 页 摘要 在信息技术高速发展的今天,条码技术在物流、交通、海关和军事等领 域得到了广泛的应用。传统的一维条码由于受到信息容量小、保密性差以及 对数据库的依赖的限制,已经不能满足实际应用的需求,以p d f 4 1 7 条码为 代表的二维条码逐渐替代了一维条码。 本文研究了p d f 4 1 7 条形码的结构特点和编码规则,在p d f 4 1 7 码编码 理论的基础上开发了在v s 2 0 0 5 平台上基于c j | j 语言的p d f 4 1 7 二维条码的编 解码系统,包括基于相关算法的条码生成模块、识别模块和显示模块。条码 生成模块采用查表的方式实现了码字符号字符的快速搜索,采用了高效快速 的a d o n e t 连接数据源和小型数据库。条码识别模块利用扫描仪采集图像, 采用了自适应阈值二值化的方法进行图像分割,并且利用改进的中值滤波方 法对图像进行去噪,在保证图像质量的前提下减少了运算量,通过几种算子 的比较,选择了s o b e l 算子进行水平边缘检测,利用投影算法分割出符号字 符,编写了与编码算法对应的解码算法。显示模块可以显示码图、码字和各 种处理效果。最后开发了一个基于p d f 4 1 7 条码的学生信息管理系统。 关键词:p d f 4 1 7 二维条码编码数据库条码识别 解码 a b s t r a c t w i t ht h ed e v e l o p m e n to fi n f o r m a t i o nt e c h n o l o g y ,b a r c o d et e c h n o l o g yh a s b e e nw i d e l yu s e di nm a n yf i e l d s ,s u c ha sl o g i s t i c s ,t r a f f i c ,c u s t o m sa n dm i l i t a r y , e t c b e c a u s e1 i m i t e db ys m a l lc a p a c i t y ,p o o rs e c u r i t ya n dd e p e n d e n c et o t h e d a t a b a s e t h et r a d i t i o n a lo n e d i m e n s i o n a lb a r c o d ec a n n ol o n g e r m e e tt h e p r a c t i c a la p p l i c a t i o n sr e q u i r e m e n t s ,s o t h et w o - d i m e n s i o n a lb a r c o d e s ,s u c ha s p d f 417h a v eg r a d u a l l yr e p l a c e dt h eo n e d i m e n s i o n a lb a r c o d e s t h i sp a p e rs t u d i e dt h es t r u c t u r a lc h a r a c t e r i s t i c sa n de n c o d i n gr u l e s o f p d f 417b a rc o d e s b a s e do nt h ee n c o d i n gt h e o r y ,ae n c o d i n ga n dd e c o d i n g s v s t e mo fp d f 417b a r c o d ew a sd e v e l o p e db yc 撑l a n g u a g eo n t h ev s 2 0 0 5 p l a t f o r m ,i n c l u d i n g b a r c o d eg e n e r a t i o nm o d u l e ,i d e n t i f i c a t i o n m o d u l ea n d d i s p l a ym o d u l eb a s e do nt h er e l a t e da l g o r i t h m s l o o k u p t a b l ew a su s e di n b a r c o d eg e n e r a t i o nm o d u l et or e a l i z et h eq u i c ks e a r c h i n go fc o d e w o r d s - s y m b o l c h a r a c t e r s ,d a t as o u r c e sa n dt h es m a l ld a t a b a s ew a sc o n n e c t e db yq u i c ka n d e f f i c i e n ta d o n e t s c a n n e rw a su s e di nb a r c o d ei d e n t i f i c a t i o nm o d u l et og r a b i m a g e s ,s e l f - a d a p t i v et h r e s h o l db i n a r i z a t i o nm e t h o dw a s u s e dt os e g m e n ti m a g e s , i m p r o v e d m e d i a nf i l t e r i n gm e t h o d w a su s e di ni m a g ed e n o i s i n g , t h e c o m p u t a t i o n a lc o m p l e x i t yw a s r e d u c e da tt h ep r e m i s eo fi m a g eq u a l i t ya s s u r a n c e c o m p a r e ds e v e r a lo p e r a t o r s ,s o b e lo p e r a t o rw a ss e l e c t e d a se d g ed e t e c t i o n m e t h o d ,p r o j e c t i o na l g o r i t h mw a su s e di ns y m b o lc h a r a c t e r ss e g m e n t a t i o n ,a n d d e c o d i n ga l g o r i t h mc o r r e s p o n d i n gt ot h ee n c o d i n ga l g o r i t h mw a sp r o g r a m m e d d i s p l a ym o d u l e i n c l u d e dd i s p l a y i n gb a r c o d ei m a g e ,c o d e w o r d s a n dt h e p r o c e s s i n ge f f e c t s f i n a l l y ,as t u d e n t i n f o r m a t i o nm a n a g e m e n ts y s t e mw a s d e v e l o p e db a s e do np d f 4 17t w o - d i m e n s i o n a lb a r c o d e k e y w o r d s :p d f 4 1 7t w o d i m e n s i o n a lb a r c o d e ;e n c o d e ;d a t a b a s e ; b a r c o d er e c o g n i t i o n ;d e c o d e 独创性声明 本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研 究成果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他 人已经发表或撰写过的研究成果,也不包含为获得西南科技大学或其它教育机构 的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均 已在论文中作了明确的说明并表示了谢意。 签名:卿晚雷同期:细口7 午钢争日 关于论文使用和授权的说明 本人完全了解西南科技大学有关保留、使用学位论文的规定,即:学校有权 保留学位论文的复印件,允许该论文被查阅和借阅;学校可以公布该论文的全部 或部分内容,可以采用影印、缩印或其他复制手段保存论文。 ( 保密的学位论文在解密后应遵守此规定) 签名:卿晓雷导师签名:舌o lt 霭lr 期:加珊夕拳6 月p 1 6 i 西南科技大学硕士研究生学位论文第1 页 1绪论 1 1 引言 在经济全球化、信息网络化、生产国际化的当今社会,信息技术已经渗 透到人类生活及社会活动的各个领域,信息在人们的生活中扮演着越来越重 要的角色。在信息化社会发展的今天,人们要求对各个领域的信息进行快速、 准确、有效和适时的管理,而计算机技术的出现,极大提高了人们处理信息 的速度和能力,因此利用计算机自动识读和自动采集数据的自动识别技术应 运而生i l l 。 自动识别技术是以计算机技术和通信技术的发展为基础的一种多学科综 合性的科学技术。自动识别技术自诞生以来在全球范围内得到了迅猛的发展, 形成了包括条码技术、射频技术、生物识别、磁卡及智能识别卡识别、光学 字符识别、视觉识别、语音识别、图像识别等集计算机、光、电、通信技术 为一体的高新技术学科。 条码技术是电子与信息科学领域的高新技术,研究如何将计算机所需的 数据用一组条码表示,以及如何将条码所表示的信息转变为计算机可读的数 据,包括研究编码规则及标准、符号技术、自动识读技术、印刷技术和应用 系统设计五个部分。经过多年的研究和应用实践,条码技术已经发展成为较 成熟的实用技术,具有操作简单、信息采集速度快、信息采集量大、可靠性 高、设备结构简单和成本低等优点,因而具有广阔的发展前景。 越来越完善的条码技术不仅在国际范围内为商品提供了一套可靠的代码 标识体系,而且为产、供、销等各个环节提供了通用的“语言”,为实现商业 数据的自动凭票供应和电子数据交换奠定了基础,推动了电子商务的发展。 在商业智能解决方案的帮助下,企业用户可以通过充分挖掘现有的数据资源, 捕获信息、分析信息、沟通信息,发现许多过去缺乏认识或未被认知的数据 关系,帮助企业管理者做出更好的商业决策,使企业获得最大利润,同时也 提高了企业的竞争能力 1 1 3 1 。 1 2 现有条码概述 1 2 1一维条码 1 2 1 1一维条码的种类 西南科技大学硕士研究生学位论文第2 页 条码的种类很多,已知的条码种类现在就有2 5 0 种之多。目前使用频率 最高的几种一维条码码制有:e a n l 3 、u p c 、3 9 码、交叉2 5 码、库德巴码 和e a n l 2 8 码。其中u p c 条码主要用于北美地区;e a n 条码是国际通用符 号体系,主要用于商品标识;e a n l2 8 条码是国际物品编码协会和美国统一 代码委员会联合开发、共同采用的一种特定的条码符号,它是一种连续型、 非定长、有含义的高密度代码,用以表示生产日期、批号、数量、规格、保 质期和收货地等更多的商品信息。另有一些码制主要是适应于某些特殊场合, 如库德巴码用于血库、图书馆、包裹等的跟踪管理;2 5 码用于包装、运输和 国际航空系统为机票进行顺序编号。还有类似3 9 码的9 3 码,它的密度较高, 可代替3 9 码。常见一维条码如图1 1 所示【l 】。 9 图l 一1一维条码 f i g 1 - 1 o n e d i m e n s i o n a ib a r c o d e 1 2 1 2 一维条码的识别方法 一维条码的识别通常是通过条码扫描仪采用模数转换的方法探测条码图 形上的黑和白( 条和空) 。其中常见的光束式条码扫描仪,直接采用模拟电 路探测条码的条空分界信号。其原理是:扫描光被黑色部分吸收,被白色部 分反射,于是可以将黑白视觉信号转化为电信号,再经过整形、滤波,在条 空的分界线处将出现较大的电压跳变,于是它的导数会出现极大值或者极小 值。因此使原始扫描信号经过微分滤波器后,只要探测到大于门限电压的跳 变电压,就视为一个条空分界线( 边缘信号) 。这样,可以将模拟信号转化 为数字信号,条码的条空宽度与所得的边缘信号的间距成正比。然后再使用 定时计数器计算条空的宽度比。但光束式条码扫描仪的频域特性相当于一个 高斯低通滤波器,扫描结果会使条空边界线钝化,降低以后操作中对信号检 测的准确性,因此这种方法仅适合于信息密度较低的一维条码【2 】。 1 2 2二维条码 由于一维条码的信息容量小,如商品上的条码仅能容纳几位或者几十位 i1 _。i,)_l_l_l-,t87 , 芒_ i、 i j 崎 jltl ,ittltiii_tl_t_,_rli1jl11i-_ _3 -_-l。lll i , ii- _ 1t1tli j i、j-。-_1 n 8 _i , 西南科技大学硕士研究生学位论文第3 页 阿拉伯数字和字母,商品的描述只能依赖数据库系统,离开了预先建立的数 据库,一维条码的使用就受到很大限制,因此发展信息容量大、可靠性高的 二维条码技术成为必然趋势。二维条码是实现证件及卡片等大容量、高可靠 性信息自动存储、携带的理想手段,并可用机器自动识读。二维条码能够在 横向和纵向两个方位同时表达信息,不仅能在很小的面积内表达大量的信息, 使条码脱离数据库成为独立的信息载体,而且能够表达汉字和存储图像,拓 展了条码的应用领域。目前国际上使用的二维条码有两种,一种是行排码, 如c o d e 4 9 、1 6 k 、p d f 4 1 7 等;另一类是矩阵码,如d a t a m a t r i x 、q r c o d e 、 m a x i c o d e 等。二维条码如图1 2 所示。二维条码属于高密度条码,可以将大 量数据在小区域内编码,它本身就是一个完整的数据文件。在国外有便携式 数据文件、自备式数据库、纸上网络等美称。其中p d f 4 1 7 二维条码是由美 籍华人王寅君博士( v n j i u np w a n g ) 在1 9 9 2 年发明的【3 】。p d f 是英文p o r t a b l e d a t af i l e 三个单词的首字母缩写,称为“便携式数据文件 。p d f 4 1 7 是一 种使用较广、较成熟的二维条码,也是本文重点研究的二维条形码。 图1 - 2 二维条码 西南科技大学硕士研究生学位论文第4 页 1 3p d f 4 17 二维条码的特点和应用 p d f 4 1 7 二维条码的性能很突出,它的优点包括: ( 1 ) 信息容量大密度高。p d f 4 1 7 条码符号可以容纳18 4 8 个字母字符, 或者2 7 2 9 个数字,或者1 10 8 个字节。表示相同的信息,二维条码比一维条 码节省空间,例如表示1 7 个字母数字符号串,c o d e 3 9 码需要大约 8 0 m m x1 0 m m 左右的面积,c o d e l 2 8 码需要长度6 0 m m 1 5 m m 左右的面积, 而p d f 4 1 7 只用2 5 m m x 2 5 m m 的面积。 ( 2 ) 译码可靠性高。二维条码可利用图像处理技术和错误纠正技术相结 合,有效防止译码错误,还能提高译码速度。 ( 3 ) 保密性强。信息按密码格式编码,可以防止伪造条码或非法使用有关 编码信息。 ( 4 ) 易打印且耐用持久。使用激光、热敏、喷墨等打印技术将条码印在纸、 卡片等载体上,不受读卡次数限制,使用寿命长。 ( 5 ) 识读方法灵活。经过一般摄像头或者扫描仪等设备采集到数据以后均 可以通过软件进行识别。 ( 6 ) 成本低。使用条码与使用射频等技术相比最大的优势是成本低,所以 能得到广泛的应用1 4 。 1 3 1p d f 4 17 条形码在国外的应用 二维条码作为一种新颖的条形码,其适用范围广,具有极高的推广价值, 在许多国家不同领域逐渐得到应用。 ( 1 ) 南非交通运输部门最近引入了新的驾照系统,在基础设施发展方面迈 出了重要的一步。该系统的一个关键功能是信用卡大小的驾照卡,其中包含 持卡人的数码照片,可便于身份识别。 ( 2 ) 在今天,管理快速的物品递送也就意味着快速准确地处理大量信息, 并将这些信息告知客户。法国邮政局l ap o s t e 新的快速递送服务d i l i p a c k 就 面临着这一挑战,因而转而采用p d f 4 1 7 作为其解决方案的关键部分。 ( 3 ) s y m b o lt e c h n o l o g i e s 。i n c ( 纽约证券交易所:s b l ) 及商业合作伙伴 v y t e kp u b l i cs a f e t ys o l u t i o n s ,i n c 宣布,洛杉矶警察局( l a p d ) 将实施v ”e k 的集成移动解决方案p r o f i l e r p t t m 和s y m b o l 的坚固耐用的p d t8 1 0 0 手持 数据终端,使驾车或徒步执勤的警员可以收集重要的执法数据,并在其城际 网络范围内与警局和中心数据库进行通信。 西南科技大学硕士研究生学位论文第5 页 ( 4 ) 在美国亚利桑那州、科罗拉多州、纽约州、宾夕法尼亚州和弗吉尼亚 州的每个检查站都己安装了支持p d f 4 1 7 技术的扫描器,用以检查汽车尾气 排放和汽车安全1 5 1 。 1 3 2p d f 4 17 条码在我国的应用前景 由于二维条码具有成本低、信息可随载体移动、不依赖于数据库和计算 机网络、保密防伪性能强等优点,结合我国人口多、计算机网络投资资金难 度较大、对证件的防伪措施要求较高等特点,可以预见,p d f 4 17 条码在我 国极有推广价值: ( 1 ) 证件管理。由于二维条码可以把照片或指纹编在二维条码中,有效地 解决了证件的可机读及防伪等问题,因此可广泛地应用在护照、身份证、驾 驶证、暂住证、行车证、军人证、健康证、保险卡等任何需要唯一识别个人 身份的证件上。 ( 2 ) 执照年检。行车证、驾驶证的年审,各种工商营业执照、税务登记证、 卫生检疫证、企事业代码证、统计登记证等各种政府部门登记证件的年检, 可以通过采用二维条码,解决年检登记的计算机录入问题,既节约了政府工 作人员的时间,同时,为企事业单位提供了良好的服务。采用这种先进的技 术,有利于改善政府的服务和公众形象。 ( 3 ) 报表管理。海关报关单、税务报表、保险登记表等任何需重复录入或 禁止伪造、删改的表格,都可以将表中填写的信息编在p d f 4 1 7 条码中,以 解决表格的自动录入和防止篡改表中内容。 ( 4 ) 机电产品的生产和组配线。如汽车和电子产品总装线皆可采用二维条 码并通过二维条码实现数据的自动交换。 ( 5 ) 银行票据管理。 ( 6 ) 行包、货物的运输和邮递。 总之,二维条码在我国有着广阔的应用前景,p d f 4 1 7 条码技术在我国 的推广应用必将为我国信息产业的发展和现代化的经济建设带来可观的社会 效益和经济效益 2 1 。 1 4 课题研究意义 上世纪9 0 年代末,美国的s y m b o l 公司将先进的自动识别技术应用在二 维条码数据采集和识别领域,极大提高了译码的效率和准确性,并把对高密 西南科技大学硕士研究生学位论文第6 页 度二维条码的特征提取和分析的问题推向了应用领域。而到今天,他们的二 维条码产品已经遍布世界各地,包括零售、仓储、物流、生产制造、医药卫 生、交通运输、邮政、教育、金融、军工和政府等众多领域和部门,带来了 丰厚的经济收益。1 9 9 8 年s y m b o l 公司在美国商业周刊杂志排名世界i t 行业第5 1 名,并在纽约股市业绩排名前十。可见,二维条码技术有着非常广 阔的市场前景和价值,能够产生巨大的经济效益,是促进国家发展的高科技 项目。 虽然在美国等发达国家,二维条码技术已经在不少的应用领域崭露头角, 但在我国,由于技术的商业保密性等原因,大部分技术以及几乎所有设备都 是从国外引进的,使用成本非常高,目前实际使用范围非常小,很多地方对 这样的新兴技术不是太了解甚至根本没有听说过。另外,p d f 4 1 7 条码的信 息密度大,数据采集及识别难度大,国内的资料来源也很少,使我们对这个 技术的研究受到了很大的限制。但只有开发出具有自主知识产权的编解码软 件以及配套的译码设备,我们才能够在条码市场上占据一席之地,推广到更 多地方和领域使用,促进二维条码的普及应用。在我国,1 9 9 7 年1 2 月正式 颁布了p d f 4 1 7 条码国家标准。有一些高校和科研机构对二维条码进行了研 究,如南京航空航天大学、上海交通大学和浙江工业大学等1 2 1 e 2 3 je 2 5 ,取得了 一定的成果,但仍然有很多工作要做。因此,研究这样一种很有前景的条码 技术具有非常重要的意义。 基于此,本课题设计了套p d f 4 1 7 编解码软件,采用c 撑语言在v s 2 0 0 5 平台下实现了软件仿真,编码软件采用了人性化的界面设计,而识别系统主 要是基于图像处理的方法,利用纯软件方式实现,并不需要专门的识读设备, 可以拓宽二维条码的应用领域,节约成本,对二维条码的推广和发展具有重 要意义。 1 5 本课题主要研究工作 本文的p d f 4 1 7 条形码研究工作主要分为三个部分: ( 1 ) 根据p d f 4 1 7 条形码的结构和编码算法编写了p d f 4 1 7 条码生成软 件,成功实现条码的编码、打印、显示和分析数据的功能,采用了a d o n e t 来构建数据库关联。 ( 2 ) 根据p d f 4 1 7 条形码的特点,设计出基于图像处理的识别算法,在有 干扰的情况下,运用图像二值化、中值滤波、h o u g h 变换、插值、边缘检 西南科技大学硕士研究生学位论文第7 页 测和投影等算法实现图像预处理、条码定位、分割和数据提取,根据不同压 缩模式编写了相对应的解码算法,并成功实现译码。 ( 3 ) 本文还开发了基于p d f 4 1 7 二维条码的学生信息管理系统应用方案, 用具体实例介绍了二维条码的使用。 西南科技大学硕士研究生学位论文第8 页 2p d f 4 17 条码结构和编码原理 2 1p d f 4 17 结构 p d f 4 1 7 条码是一种多层的、可变长度、具有高数据量和错误纠正能力 的连续型的二维条码,可编码的字符集包括全a s c i i 字符及扩展a s c i i 字符 或8 位二进制数据,多达8 1i8 0 0 种不同的字符集或解释。每个p d f 4 1 7 条码 符号最大数据量可以表示1 8 4 8 个字节,或者1 1 0 8 个a s c i i 字符,或者2 7 2 9 个数字的信息。 p d f 4 1 7 条码符号是一个多行结构。符号的顶部和底部为空白区。上下 空白区之间为多行结构。每行数据符号字符数相同,行与行左右对齐直接衔 接。其最小行数为3 行,最大行数为9 0 行。一个p d f 4 1 7 条码是由起始符、 终止符、左右行指示符和数据区字符组成的。起始符和终止符是唯一的,自 左向右,由条开始,起始符的条、空组合序列为8 11 1l i1 3 ,终止符的条、空 序列为7 1 1 3i1 1 2 1 。图2 1 为一个l5 行的条码符号结构图。 左空白区起始符 左行指示符 数据区字符右行指示符终止符右空白区 图2 1p d f 4 1 7 条码符号结构 fig 2 1s t r u c t u r eo fp d f 4 17b a r c o d e 2 1 1 符号字符的结构 在条码符号中,由特定的条空组合而成的表示信息的基本单位称为符号 字符。每个符号字符由4 个条( 黑) 和4 个空( 白) 组成,自左向右,每个 西南科技大学硕士研究生学位论文第9 页 符号字符都是由条开始。每一个条或空包括1 6 个模块,在一个符号字符中 4 个条和4 个空的模块总数为1 7 ,这也是p d f 4 1 7 条码名称的由来。符号字 符结构如图2 - 2 所示,其中b l 一钆表示条,s ,j 。表示空。 8 1 9 1 1 _ i l1i l 岛岛与 b 吩 图2 - 2符号字符结构 fig 2 - 2s t r u c t u r eo fs y m b oic h a r a c t e r s 2 1 2码字集 p d f 4 1 7 条码码字集包含9 2 9 个码字。码字的取值范围为0 - 9 2 8 。在码字 集中,码字的使用遵循下列规则: ( 1 ) 码字0 8 9 9 :根据当前的压缩模式和全球标记标识符( g l i ) 解释, 用于表示数据。 ( 2 ) 码字9 0 0 、9 0 1 、9 0 2 、9 13 和9 2 4 用于模式标识。 ( 3 ) 码字9 2 2 、9 2 3 、9 2 8 用于宏4 1 7 条码。 ( 4 ) 码字9 2 l 用于阅读器初始化。 ( 5 ) 码字9 0 3 9 1 2 、9 1 4 9 2 0 等保留待用。 2 。1 3 符号字符的簇 p d f 4 1 7 条码符号字符集由三个簇构成,每一簇包含以不同的条、空形 式表示的所有9 2 9 个4 1 7 条码的码字。在每一簇中,每个符号字符对应唯一 的码字,其范围为0 9 2 8 。 p d f 4 1 7 条码使用簇号0 ,3 ,6 。每一行只使用一个簇中的符号字符。同 一簇每三行重复一次。第一行用第0 簇的符号字符,第二行用第3 簇的符号 字符,第三行用第6 簇的符号字符,第四行用第0 簇的符号字符,以此类推。 行号由上向下递增,第一行的行号为1 。 对于一个特定的符号字符,其簇号由式( 2 - 1 ) 决定: 川 西南科技大学硕士研究生学位论文第10 页 簇号= ( b l b 2 + 6 3 一b 4 + 9 ) m o d9 式中b 。、b :、b 3 、b 4 分别表示自左向右的四个条的模块数。 例如,对于图2 2 中的符号字符,其簇号的计算如下: 簇号= ( 5 1 + 1 2 + 9 ) m o d9 = 3 则该符号字符是属于第3 簇的。 对于每一特定的行,使用的符号字符的簇号由式( 2 2 ) 计算: 簇号= ( 行号1 ) m o d3 ) 】3 例如,如符号字符是第5 行,那么簇号的计算如下: 簇号= ( 5 1 ) m o d3 x 3 = 3 即第5 行应该属于第3 簇。 ( 2 - 1 ) ( 2 - 2 ) 2 1 4 行指示符号字符 行指示符号字符包括左行指示符号字符( 厶) 和右行指示符号字符( r ) ,分 别与起始符和终止符相邻接,如图2 - 3 所示。行指示符号字符的值( 码字) 指 示4 1 7 条码的行号( f ) 、行数( 3 - 9 0 ) 、数据区中的数据符号字符的列数( 1 - 3 0 ) 、 错误纠正等级( 0 - 8 ) 。 l l ( x l ,y )r l ( x l ,1 ,) l 2 ( x 2 ,z ) r 2 ( x 2 ,y ) l 3 ( x 3 ,1 ,) r 3 ( x 3 ,z ) 起始 l 4 ( x 4y )r 4 ( x 4 ,v ) 终止 符 厶( x 5 ,z )r 5 ( 屯,y ) 符 6 ( 吒,1 ,)r 6 ( x 6 ,) 图2 - 3左右行指示符号字符 f i g 2 - 3 l e f t ri g h tr o wi n d i c a t o rc h a r a c t e r s 左行指示符号字符( 三,) 的值由式( 2 - 3 ) 决定: 厶慑毒蒌 右行指示符号字符( r ,) 的值由式( 2 - 4 ) 决定: ( 2 - 3 ) 西南科技大学硕士研究生学位论文第1 1 页 f 3 0 x f + ,当c ;= o 时 尺f = 3 0 x j + y 当c = 3 时 ( 2 4 ) 【3 0 + z 当c f = 6 时 式中一= i n t ( f - 1 ) 3 】( 汪1 , 2 ,3 9 0 ) y = i n t ( 行数- 1 ) 3 】 z = 错误纠正等级x 3 + ( 行数1 ) m o d3 1 ,= 数据区的列数1 c := 第f 行的簇号 例如:一个4 l7 条码符号为3 行、3 列,错误纠正等级为0 ,那么( 厶,2 ,上,) 为( o ,2 ,2 ) ,( r i ,r 2 , r 3 ) 为( 2 ,o ,2 ) 。 2 2p d f 4 17 编码 2 2 1p d f 4 17 编码压缩模式 p d f 4 1 7 码有三种数据压缩模式,包括文本压缩( t c ) 、数字压缩( n c ) 和 字节压缩( b c ) 。数据编码可只采用其中一种压缩模式,但单一的模式压缩率 太低,可以通过模式锁定转移码字,可在一个条码符号中应用多种模式表示 数据,有效提高了压缩率。三种模式间的转换如图2 4 所示。 图2 - 4模式转换示意图 f i g 2 - 4 m o d ec o n v e r s i o ns c h e m a t i c 图中的数字表示模式锁定码字,9 0 0 表示文本压缩,9 0 2 表示数字压缩, 9 0 1 9 2 4 表示字节压缩。 西南科技大学硕士研究生学位论文第12 页 2 2 1 1文本压缩模式 文本压缩模式将两个字符以3 0 为基组合成一个码字,通常表示字母和标 点符号的效率比较高,包括了四个子模式,分别为大写字母子模式、小写字 母子模式、混合型子模式和标点型子模式。子模式的设置是为了更有效表示 数据,每种子模式选择了文件出现频率较高的一组字符组成的字符集。在子 模式中,每个字符对应0 2 9 中的一个值,详细对应值见附录。这样就可以 用单独的码字表示一个字符对,表示字符对的码字由式( 2 5 ) 计算: c o d e w o r d = 3 0 h + l ( 2 - 5 ) 式中日、依次表示字符中的高位和低位字符值。 下面举一个例子来说明文本压缩模式下码字的产生。例如输入字符串 “x i a ol e i ,通过查找表格找到子模式中各字符的对应值,得到的一次编 码值为“9 0 0 ,2 3 ,2 7 ,8 ,0 ,1 4 ,3 2 ,11 ,2 7 ,4 ,8 。再根据文本压缩模 式的原理,从第一个码字开始,将得到的元素两两组合为一个码字,根据公 式2 4 得到二次编码后码字的值,得到的结果为“9 0 0 ,7 1 7 ,2 4 0 ,4 5 2 ,3 5 7 , 1 2 8 。9 0 0 是模式锁定码字,不在压缩的范围内。 2 2 1 2 数字压缩模式 数字压缩模式是指从基1 0 到基9 0 0 的数据压缩的一种方法。将约3 个数 字位用一个码字表示,在表示数字时效率最高。在数字压缩模式下,根据下 述算法对数字位进行编码: ( 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 位,所以只有一组; 其次,在其最左边加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 5 个码字从左向右分为一组( 约3 个数字可由1 个码字表 示,则每1 5 个码字可以转换成4 4 个数字位) ,其中最后一组码字可少于1 5 个。再对每一组码字进行基9 0 0 至基1 0 的转换,最后去掉前导位。 西南科技大学硕士研究生学位论文第13 页 4 0 0 0 如上面的例子,只有6 个码字仅能分为一组,其转换为: l 9 0 05 + 6 2 4 9 0 04 + 4 3 4 9 0 03 + 6 3 2 x 9 0 02 + 2 8 2 9 0 0 + 2 0 0 = 1 0 0 0 2 1 3 2 9 8 1 7 去掉前导位1 得:0 0 0 2 1 3 2 9 8 1 7 4 0 0 0 2 2 1 3 字节压缩模式 字节压缩模式通过基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 个码字表示,从左到右进行转换。 例如,数据序列0 1 h ,0 2 h ,0 3 h ,0 4 h ,0 5 h ,0 6 h ( h 为1 6 进制) 可 转换为一个码字序列9 2 4 ,1 ,6 2 0 ,8 9 ,7 4 ,8 4 6 。 因为有6 个数据单元,当然应该选择字节压缩模式锁定码字9 2 4 ,该6 个字节转换为5 个码字由下式得到: 1 2 5 65 + 2 2 5 64 + 3 2 5 63 + 4 x 2 5 62 + 5 2 5 6 + 6 = 1 9 0 04 + 6 2 0 9 0 03 + 8 9 9 0 02 + 7 4 9 0 0 + 8 4 6 当所要表示的字节数不是6 的倍数时,必须使用模式锁定码字9 0 1 ,能 被6 整除的部分仍然按照前面的方法处理,被6 整除后剩余的字节每个字节 对应一个码字,逐字节用码字表示。 例如,数据序列o l h ,0 2 h ,0 3 h ,0 4 h ,0 5 h ,0 6 h ,0 4 h ,0 7 h ,0 8 h 共9 个字节,可将其转换为9 0 1 ,1 ,6 2 0 ,8 9 ,7 4 ,8 4 6 ,4 ,7 ,8 。 其中,第一个码字9 0 1 为字节数不是6 的倍数时的压缩模式锁定码字, 前6 个字节用基2 5 6 到基9 0 0 的转换,所剩的字节0 4 h ,0 7 h ,0 8 h 每个码 字对应一个字节,依次直接表示。 4 1 7 条码符号的形状为矩形,当码字的总数不能正好填充一个矩阵时, 用码字9 0 0 作为虚拟码字填充,虚拟码字填充必须放在错误纠正码字之前。 2 2 2 错误纠正码字 每一个4 1 7 条形码至少包含两个错误纠正码字,用于符号的错误检测与 纠正。 西南科技大学硕士研究生学位论文第1 4 页 2 2 2 1错误纠正等级 p d f 4 17 条码的错误纠正等级可由用户选择,每种错误纠正等级所对应 的错误纠正码字数目如表2 1 。 表2 - 1p d f 4 1 7 条码的错误纠正等级 t a b 2 1e rr o rc o rr e c t i o nl e v e fso fp d f 4 17 错误纠止等级错误纠止码字数目 2 2 2 2 错误纠正容量 对于一个给定的纠错等级,其纠错容量由式( 2 - 6 ) 决定: e + 2 t d 一2 = 2 什1 2 ( 2 - 6 ) 式中:e 为拒读错误数目,t 为替代错误数目,j 为纠正等级,d 为纠正码字 数目。 错误纠正码字的总数为2 h 1 ,其中两个用于错误检测,其余的错误纠正 码字用于错误纠正。用一个错误纠正码字恢复一个拒读错误,用两个错误纠 正码字纠正一个替代错误。 当被纠正的替代错误数目小于4 时( j = o 除外) ,错误纠正容量由式( 2 - 7 ) 决定: e + 2 t d 一3( 2 7 ) 例:一个错误纠正等级为3 的4 1 7 条码符号能纠正1 3 个拒读错误或6 个替代错误,或者e 和t 的各种组合,但必须满足上述纠正容量条件【3 1 。 2 2 2 3 错误纠正码宇的计算 2 4 8 m 勉 斛 m ;弓 m 西南科技大学硕士研究生学位论文第15 页 对于一组给定的数据码字,错误纠正码字根据r e e d s o l o m o n 错误控制码 算法计算。 一组给定的数据码字和一个选定的错误纠正等级,错误纠正码字为符号 数据多项式d ( x ) 乘以x d ( d 为纠错码字个数) ,除以生成多项式g ( x ) 后所得 余式的各系数的补数。 第一步:建立符号数据多项式d ( x ) ,如式( 2 - 8 ) 。 d ( x ) = d 。一l x ”- 1 + d 。一2 x ”一2j r + d l x + d o ( 2 8 ) 式中,多项式的系数由数据码字区中的码字组成,包括符号长度码字,数据 码字和填充码字等。每一数据码字( d ;,f - 0 ,n 一2 ,n 一1 ) 在4 1 7 条码符号中 的排列位置如图2 5 所示。 厶d n l见一2r o 厶蜀 起始 终止 符符 一2d 2 ,d ld oc a ic d 一2r m 一2 m lc 3 ,c 2 c l c or 。一l 图2 - 5数据、行指示字符及纠错码排列 f i g 2 - 5 l o c a t i o n so fd a t a 、r o wi n d i c a t o rc h a r a c t e r sa n de r r o rc o rr e c t i o n c o d e s 第二步:建立纠正码字的生成多项式。 d 个纠错码字的生成多项式如式( 2 - 9 ) : g ( x ) = ( x 一3 ) ( x 一3 2 ) ( x 一3 4 ) = z 4 + g d l x d - 1 + + g l x + g o ( 2 - 9 ) 式中,d 为错误纠正码字c ,( f - 0 ,d 一2 ,d 一1 ) 的个数,c ,在4 1 7 条码符号 中的排列位置如表2 3 所示。 第三步:错误纠正码字的计算。 c ,为掣后所得余式的各系数的补数。掣求得的系数q 通常 西南科技大学硕士研究生学位论文第16 页 为负数,如果c , - 9 2 9 ,在有限域g f ( 9 2 9 ) 的负值等于该值的补数,如果 q 一9 2 9 ,在有限域g f ( 9 2 9 ) 中的负值等于余数( c ,9 2 9 ) 的补数。有限域 g f ( 9 2 9 ) 是一个闭集,范围是 0 ,9 2 8 】,求得的系数的补数都必须映射到此空间 中。 例如,若c f = 一3 2 3 ,那么它的补数就为9 2 9 - ( - c f ) = 6 0 6 ;若c f = - 1 0 0 0 , 那么它的补数就为9 2 9 - ( - c ,9 2 9 ) = 8 5 8 。 2 2 2 4 错误纠正等级选择 对于开放式系统,不同数量的编码数据所对应的错误纠正等级推荐值见 表2 2 。在4 1 7 条码符号容易损坏的场所,建议选用较高的错误纠正等级; 在封闭系统中,可选用低于推荐错误纠正等级的纠错等级 6 1 。 表2 - 2p d f 4 1 7 条码的推荐错误纠正等级 t a b 2 - 2r e c o m m e n de rr o rc o rr e c t i o ni e v e fso fp d f 4 1 7 数据码字数错误纠止等级 3 2 1 - 8 6 3 但纠错码字太多会影响条码的存储容量,因此在使用纠错码字以前尽可 能使用图像处理的方法先去除各种干扰,本文第四章设计了一种利用图像处 理方式降低纠错码等级进行条码识别的方法。 2 3 本章小结 本章主要介绍了p d f 4 1 7 二维条码的结构特点及编码原理。它是一种行 排式的条形码,包括起始符、终止符、左右行符号指示字符、数据码字和纠 错码字,还介绍了行符号指示字符的计算方法,数据压缩的三种压缩模式( 包 括文本压缩、数字压缩和字节压缩) 和纠错码字的计算方法及使用。根据上 述对p d f 4 1 7 条码的结构特点的详细说明,本文第三章将给出每一部分的实 现过程。 知 m 毒| 卜 札 阶 西南科技大学硕士研究生学位论文第17 页 3p d f 4 17 编码软件实现 由第二章所给出的二维条码p d f 4 17 编码原理,本文采用c f 语言,在 v s 2 0 0 5 平台上编写了条码的编码和绘制程序。 本文设计的条码编辑系统中,计算机编码的过程是将可读信息转换成用 于绘制条码的码字,如有需要还可加入附加信息。其流程为:运用编码算法 将有用信息转换成p d f 4 1 7 码字,再通过查表的方式把码字转换成对应的条 空相间的符号字符,最后在计算机上将图像绘制出来,得到二维条码图像。 每一部分都可将其编为一个类,按照要求将几个类组合起来就可产生条形码。 条码产生的过程框图如图3 1 所示。 图3 - 1 p d f 4 17 条码产生过程框图 f i g 3 1 d ia g r a mo fp d f 4 1 7g e n e r a t i o r 3 1编码流程 p d f 4 1 7 二维条码的编码分为数据码字编码、错误纠正码字编码、前后 行指示符
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025至2030股份商业银行行业市场发展现状及竞争格局与投资价值报告
- 年终工作总结自我评价
- 消防安全月培训教学课件
- 项目管理全流程课件
- 矿山合作协议及承包权转让与执行监管协议
- 离婚法律协议变更与子女抚养权调整执行顾问合同
- 家庭关系调整与财产分配分居协议示范
- 离婚协议补充协议范本:家庭财产分割补充条款
- 离婚房产分割及婚后财产增值补偿协议书
- 砂石料运输合同范本:绿色环保物流合作
- 2025至2030全球及中国两轮组合仪表行业产业运行态势及投资规划深度研究报告
- 2024公路运营领域重大事故隐患判定标准解读学习课件
- 耕地保护培训课件
- MES追溯管理制度
- 质量专项改善管理制度
- T/CHES 79-2022大中型输水渠道工程维修养护规程
- 人工智能智慧体育课件教学
- GA/T 2187-2024法庭科学整体分离痕迹检验规范
- 盗窃谅解赔偿协议书范本
- GB 45549-2025石墨和萤石单位产品能源消耗限额
- 2024年晋能控股集团有限公司招聘笔试真题
评论
0/150
提交评论