




已阅读5页,还剩66页未读, 继续免费阅读
(通信与信息系统专业论文)在智能手机上实现二维条形码识别.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
在智能手机上实现二维条形码识别上海师范大学硕士学位论文 论文独创性声明 本论文是我个人在导师指导下进行的研究工作及取得的研究成果。论文中除 了特别加以标注和致谢的地方外,不包含其他人或机构已经发表或撰写过的研究 成果。其他同志对本研究的启发和所做的贡献均己在论文中做了明确的声明并表 示了谢意。 作者始鹞濠 吼口7r 22 论文使用授权声明 本人完全了解上海师范大学有关保留、使用学位论文的规定,即:学校有权 保留送交论文的复印件,允许论文被查阅和借阅;学校可以公布论文的全部或部 分内容,可以采用影印、缩印或其它手段保存论文。保密的论文在解密后遵守此 规定。 名:搦磊名多僭期:哆胁p 7 4 在智能手机上实现二维条形码识别 上海师范大学硕士学位论文 摘要 本文根据实际的项目内容,介绍了利用拍照手机实现对p d f 4 1 7 二维条形码 识别的一套完整解决方案,针对手机的软硬件组成设计了适合的识别算法,并在 一款l i n u x 手机上获得了实物成果。 文中首先分析了国内外二维条形码应用的发展趋势,介绍了p d f 4 1 7 二维条 形码的组成,对比了手机和专用条形码阅读器之间的性能差别,分析了手机应用 处理器的运算性能以及嵌入式l i n u x 平台的环境特点。由于手机的组成结构并不 是针对图像识别的应用而设计的,其光学特性和运算性能远不及专用条形码识别 设备,经典的条形码识别算法不完全适用于手机,利用手机作为图像识别平台会 产生一些专用条形码阅读设备所不会遇到的特殊问题,文中对产生这些问题的原 因进行了分析。 随后,根据对这些问题的分析结论,针对一款具体型号的l i n u x 智能手机展 开研究,提出了适合手机组成结构的p d f 4 1 7 二维条形码图像识别算法:在极为 有限的手机处理器资源下,针对手机摄像模组普遍存在的光学退化特性提出了图 像复原的方法;针对手机应用处理器的特性设计了计算量小、内存开销少的条形 码图像识别算法。调和了“图像识别问题的大量计算量、大存储空间开销”和“手 机嵌入式处理器数学运算性能低、内存空间有限”这一对矛盾。 最后,将识别算法移植到了一款l i n u x 智能手机上。文中论述了编写识别程 序代码过程中针对l i n u x q t o p i a 平台的一些主要优化方法和技术细节,给出了 实物测试结果。实测表明,根据本文的识别算法所编写的识别程序即使是在目前 属于低端配置的智能手机上也能很好地运行,对中小规模的p d f 4 1 7 条形码图像 的识别速度和准确度完全达到实用的水平。 和项目背景有关,本文的理论和实现工作都是针对东信e s 2 0 0 8 手枫的硬件 架构和操作系统平台而展开的。由于e s 2 0 0 8 的应用处理器采用的是常见的a r m 内核,加之实现程序使用c 语言作为源代码,因此图像识别的算法具有很强的可 移植性,研究结果的适用范围广泛,具有一般性,易于移植应用到其它手机上。 关键词:二维条形码识别、p d f 4 1 7 、图像识别、智能手机 在智能手机上实现二维条形码识别 上海师范大学硕士学位论文 a b s t r a c t i nt h i st h e s i s ,i ti n t r o d u c e das o l u t i o nm e t h o do fp d f 4 1 7b a r c o d e r e c o g n i t i o nb yu s eo ft h ec a m e r af u n c t i o ni nas m a r t p h o n ea c c o r d i n gt o ap r a c t i c a lp r o j e c tw o r k t h ea l g o r i t h mo fb a r c o d ei m a g er e c o g n i t i o nw a s a p p r o p r i a t e l yd e s i g n e db yt h es o f t w a r ea n dh a r d w a r es t r u c t u r eo fac e l l p h o n ea n dh a sb e e nf i n a l l yr e a l i z e di nal i n u xs m a r t p h o n e i nt h ef i r s ts e s s i o n ,i ta n a l y z e dt h ed e v e l o p m e n tt r e n do f t w o d i m e n s i o nb a r c o d ea p p l i c a t i o n ,i n t r o d u c e dt h es t r u c t u r eo fp d f 4 1 7 , c o m p a r e ds m a r t p h o n e ss t r u c t u r ew i t ht h es p e c i f i e db a r c o d er e a d e r s , a n a l y z e dt h ec p uc o m p u t ea b i l i t yo fas m a r t p h o n ea n dt h ec o n d i t i o n f e a t u r e so ft h ee m b e d d e dl i n u x a sc e llp h o n e sa r en o td e s i g n e df o ri m a g e r e c o g n i t i o n ,t h e i ro p t i c a lc h a r a c t e r i s t i ca n dc o m p u t ea b i l i t ya r em u c h i n f e r i o rt ot h es p e c i f l e db a r c o d er e a d e r s i tm e a n st h ec l a s s i c a l a l g o r i t h mo fb a r c o d er e c o g n i t i o ni sn o tq u i t es u i t a b l ef o rc e l lp h o n e s , w h i l eu s i n gt h ec e l lp h o n ea sab a r c o d er e a d e r ,al o to fp e c u l i a rp r o b l e m s h a v eo c c u r r e d t h e s ep e c u li a rp r o b l e m sa r ew h a th a v eb e e nm a i n l ya n a l y z e d i nt h i sp a r t i nt h ef o l l o w i n gs e s s i o n ,i tp r e s e n t e da na l g o r i t h mo fp d f 4 1 7 t w o d i m e n s i o nb a r c o d er e c o g n i t i o nc u s t o m i z e df o ral i n u xm o d e la c c o r d i n g t ot h ea n a l y s i sc o n c l u s i o n t h es p e c i a lp o i n to ft h ea l g o r i t h mi s :i t s o l v e st h eo p t i c a ld e g r a d a t i o np r o b l e mu b i q u i t o u si nt h ec a m e r ap a t t e r n a s s e m b l yo fc e l lp h o n e sa n dp r e s e n t st h ei m a g er e s t o r a t i o ns o l u t i o nb y u s eo ft h ev e r yl i m i t e dp r o c e s s o rr e s o u r c e :i ti sas m a l lc a l c u l a t e da m o u n t a n dl o wm e m o r ya s s u m p t i o nb a r c o d er e c o g n i t i o na l g o r i t h mb yt h e a p p l i c a t i o np r o c e s s o rc h a r a c t e r i s t i co fc e l lp h o n e s i tr e s o l v e dt h e c o n f l i c tb e t w e e n “t h el a r g ec a l c u l a t e da m o u n to fi m a g er e c o g n i t i o na n d t h eh i g hm e m o r ya s s u m p t i o n ”w i t h “t h es m a l lc o m p u t ea b i l i t yo ft h e e m b e d d e dp r o c e s sa n dt h e1 i m i t e dm e m o r ys p a c e ” k e y w o r d s :t w o d i m e n s i o nb a r c o d e ,p d f 4 1 7 ,i m a g er e c o g n i t i o n ,s m a r t p h o n e 2 在智能手机上实现二维条形码识别 上海师范大学硕士学位论文 第1 章绪论 1 1 概述 智能手机的定义 智能手机的定义,简而言之就是:有开放操作系统的手机【1 1 。智能手机除了 具备手机的通话功能外,还具备了p d a 的大部分功能,特别是个人信息管理以 及基于无线数据通信的浏览器和电子邮件功能。主流手机操作系统有:s y m b i a n 、 w i n d o w sm o b i l e 、l i n u x 、p a l m 【2 】等。由于项目背景的关系,本文的实现部分是 在一款l i n u x 手机上进行的。 表1 1常见的手机操作系统及其对比【2 】 常见手机操作系统市场占有率特点 s y m b i a n很大,超过5 0 小规模的操作系统,对硬件配 置要求低,性能上存在局限性 依托p c 版的技术与知名度, w i n d o w s d o b i l e 中,2 0 左右 容易使用,对硬件配置要求 高,价格高 l i n u x 中,但小于w i n d o w sm o b i l e 部分免费、开放源代码,但应 用软件还欠丰富 p a l m小 倾向于p d a 的操作系统,手 机市场中的比例不高 二维条形码简介 条形码是至今最为人所知和最成功的自动识别技术,分为一维条形码和二维 条形码两类【3 1 。一维条形码可存储8 到3 0 个字符【4 】,大多都用于存储数字索引, 其最大的缺点是容量小、抗污损能力弱。二维条形码作为一种新的条形码技术, 不仅具备一维条形码成本低、稳定可靠、简单易用等特点,而且数据容量非常大, 并且包含了非常强大的信息纠错功能,通常一个二维条形码能够存储多达上千字 符的信息。二维条形码在电子商务、电子政务的信息安全、交易、物流、产业链 管理等诸多方面具有广泛的应用,贯穿了工业、商业、国防、交通运输、金融、 6 在智能手机上实现二维条形码识别 上海师范大学硕士学位论文 医疗卫生、邮电及办公室自动化等识别领域。表1 2 显示了一维条形码与二维条 形码的对比: 表1 2 一维条形码与二维条形码的比较”1 垂直方向是是否需要后台 对识读 条形码类型信息密度与容量用途设备的 否携带信息数据库支持 要求 一维条形码密度低、容量小否 数据索引几乎总是需要简单 二维条形码密度高、容量大是数据存储很少需要复杂 二维条形码在手机上的应用 随着具备摄像功能的手机的普及以及手机硬件性能的不断提高,利用手机硬 件平台来处理图像识别问题得以成为可能。虽然手机的各项硬件性能都不及专用 的条形码识别设备,但是通过将条形码识别和手机的通信功能相结合,可以开辟 新的应用空间,适用于地域分散、数据集中、移动性强的应用。如:电子票据、 移动物流、电子广告业务等。 课题背景 本文是在参与了东信天羽移动技术有限公司的一款基于l i m t x 操作系统手 机的开发工作之后,在获得实物结果的情况下总结而成的。其中理论方案和实现 程序都是针对此款手机的c p u 架构和操作系统的特性而展开的。由于这款手机 的数字基带处理器采用的是常见的a r m 内核,加之开发程序使用c 语言作为源 代码,图像识别算法与操作系统无关,因此本文研究结果的适用范围具有广泛性, 可以移植到其他的手机操作系统之上。 1 2 二维条形码p d f 4 1 7 简介 二维条形码有多个国际标准,p d f 4 1 7 是目前被广泛使用的国际标准之一。 p d f 是取英文p o r t a b l ed a t af i l e 的缩写,意为“便携数据文件”。组成条形码的 每一符号字符都是由4 个条和4 个空构成,每一符号字符的编码长度固定为1 7 个单位宽度,p d f 4 1 7 因此得9 1 6 1 。 p d f 4 1 7 的标准化现状 7 在智能手机上实现二维条形码识别上海师范大学硕士学位论文 p d f 4 1 7 是美国s y m b o l 公司所开发的标准【“,1 9 9 1 年s y m b o l 公司将该标准 公开之后,p d f 4 1 7 条形码为越来越多的标准化机构所推崇。p d f 4 1 7 己成为国 际自动识别设备制造商协会( 蛐d 与美国国家标准协会( a n s i ) 的符号标准;欧洲 标准化委员会( c e n ) 己起草了p d f 4 1 7 的欧洲标准;美国工业论坛t c i f 已将 p d f 4 1 7 列为重要电讯产品的标识标准;欧洲负责e d i 及条形码在电子工业方面 应用的工业组织e d i f i c e 已将p d f 4 1 7 定为管理及纸面e d i 应用标准,并列入 运输标识条形码标签应用指南;我国也已依据p d f 4 1 7 规范制定了名为四一七 条形码的国家标准( g b t 1 7 1 7 2 1 9 9 7 ) 7 1 。 p d f 4 1 7 的特点i s 码制公开 己形成国际标准,我国己制定了p d f 4 1 7 码的国际标准r g b 厂r 1 7 1 7 2 1 9 9 7 ) 。 信息容量大 p d f 4 1 7 码除可以表示字母、数字、a s c i i 字符外,还能表达二进制数。为 了使得编码更加紧凑,提高信息密度,p d f 4 1 7 在编码时有三种格式:扩展的字 母数字压缩格式可容纳1 8 5 0 个字符;二进制a s c i 格式可容纳1 1 0 8 个字节; 数字压缩格式可容纳2 7 1 0 个数字。在相同面积情况下,二维条形码比一维条形 码信息含量高几十倍。 修正错误能力强 一维条码通常具有校验功能以防止错读,一旦条形码发生污损将被拒读。 p d f 4 1 7 采用了目前世界上最先进的错误修正技术,这种隐含于符号内的错误修 正技术,不仅可以有效地防止译码错误,提高译码的速度及可靠性,而且可以将 由于条形码符号破损、沾污等丢失的信息破译出来。错误修正可分为八个等级, 最高时,可以将符号受损面积5 0 的条形码符号所含信息复现出来。 容易印制,寿命长、成本低 p d f 4 1 7 条形码可以印在纸、卡片及各种常用条形码载体上,可以用多种标 准的打印技术及卡片印制,包括:喷墨打印、激光打印、热敏热转印条形码打印 机打印等。磁卡寿命一般为二年,i c 卡寿命为三年,但价格昂贵,p d f 4 1 7 二维 条形码卡的寿命为9 1 0 年,而单价只有i c 卡的四分之一,批量生产价格更低。 8 在智能手机上实现二维条形码识别 上海师范大学硕士学位论文 尺寸可调以适应不同的打印空间 保密性强 p d f 4 1 7 可以把编码信息按密码格式进行编码,以防止伪造条形码符号或非 法使用有关编码的信息。 1 3 手机条形码识别系统的组成 条形码识读器的组成原理 二维条形码识读设备根据扫描原理的不同可以分为两类: 光栅扫描式阅读器 可以阅读一维条形码和线性堆叠式二维条形码,是生活中最常见的条形码阅 读器。阅读时将光线对准条形码,由光栅元件完成垂直扫描。结构简单,适用范 围小,但无法识别非堆叠式二维条形码嘲。 摄像式阅读器 采用摄像方式将条形码图像摄取后进行分析和解码,可阅读一维条形码和所 有类型的二维条形码,需要完成复杂的图像处理和识别算法,是一种高端设备。 结构复杂,适用范围广,可以识别所有种类的二维条形码l 剐。 显然,通过手机识别二维条形码属于上述中的第二类结构。 系统组成框图 图1 3 1 手机识别条形码的系统组成 与专用条形码阅读器相比,利用手机实现条形码阅读有两大优势: 9 在智能手机上实现二维条形码识别 上海师范大学硕士学位论文 可以与手机的无线通信功能相结合,弥补了传统条形码阅读器数据通讯 功能的不足,拓展了条形码新的应用领域。 借助于手机自身的硬件资源,无需增加任何硬件投入,促进了条形码面 向个人用户应用的普及。 虽然手机作为条形码阅读器具有上述优点,但由于手机的硬件结构尤其是摄 像头的光学性能并不是为图像识别而量身定做的,因此带来了很多专用条形码阅 读器所不会遇到的问题,需要进行额外的运算处理,增加了软件的复杂性。 1 4 手机条形码识别的应用现状 二维条形码的应用现状1 8 1 国际上已经普及,国内正处于起步阶段。 对国内消费者而言,二维条形码是个较新的概念,因为目前国内应用最广泛 的还是一维条形码。这是由于一维条形码的应用历史很长,工业化程度极高,因 而具有很强的在位者优势。但一维条形码由于受信息容量所限,只能存储索引信 息。被称为“纸质存储器”的二维条形码优势非常明显,通常数千个字符能够被 存储到一个邮戳大小的条形码符号中。除了容量大幅增加外,二维条形码技术的 成本低、制作简便;信息密度高、容量大;抗损、抗干扰和纠错能力强;信息防 伪;信息自动传递等功能。 标准众多,相互不兼容 二维条形码的标准众多,目前常用的二维条形码主要有m a x i c o d e 、 d a t a m a t r i x 、p d f 4 1 7 、o r 等几种。主流二维条形码标准的技术专利都为国外所 掌握,其中大多都是有偿使用的,而p d f 4 1 7 是公开的系统标准,适合我国国情, 另外就目前国内的实际使用情况来看,二维条形码中p d f 4 1 7 的使用更为普及。 手机条形码识别的应用现状 手机条形码增值业务 这是推动手机识别条形码发展的首要原因。随着手机的普及,各类手机增值 服务也不断的涌现出来。目前带有摄像功能手机的日趋增多,围绕摄像手机的增 值服务正在越来越受到瞩目,首当其冲的就是电子标签( 条形码) 识别。 1 0 在智能手机上实现二维条形码识别 上海师范大学硕士学位论文 手机条形码识别的特点主要表现在两个方面:数据输入 的便捷性、数据传输的便捷性【引。通过条形码识别程序,可 以让冗长的信息在很短的时间内就输入到用户的手机之中, 而且这一信息可以被快速的传递到其他手机或终端设备上。 基于这些特点,手机条形码可以被用于电子票据、电子印刷 品、商品导购、分布物流管理等诸多应用方面。 电子印刷品 现代社会中各类数据都朝着电子化存储的方向发 北京餐饮打折券 图1 4 1 中国移动推出的 “条形码识别”服务 展,生活中经常会遇到需要把纸面的数据录入到电子产品中。以名片为例,人 们习惯把身份信息以印刷品的形式递交给对方,但实际使用上却是以电子数据 的形式存在的( 手机中的通讯录软件) 。通过条形码就可以方便的实现从纸面 数据到电子数据的转换,简化了数据录入的过程。 北京紫光新华科技发展有限公司就针对平面媒体推出了名为“优码”的手 机二维条形码应用方案。 物流管理 把条形码和手机通讯功能相结合又可以产生新的应用。以物流行业为例, 通过条形码识别可以迅速的确定物品信息,通过移动通信功能可以方便的把信 息传送到中心进行统一调配。 北京数字天堂信息科技有限公司就针对物流行业推出了名为“数字天堂移动 物流”的应用方案。其组成结构如图1 4 2 : 在智能手机上实现二维条形码识别 上海师范大学硬士学位论文 图1 4 2 手机条形码识别在物流行业的应用例子 1 5 手机处理图像识别所面临的特殊问题 智能手机的发展赋予了手机更广泛的使用功能,硬件的不断提高使得在手机 上进行图像识别得以实现。但是与专用条形码阅读器相比,手机作为一种通信工 具,并不是为图像识别处理而量身定制的,因此在实现的过程中会遇到很多独特 的问题。表1 5 1 列出了手机和专用设备在硬件结构上的区别: 下面三个问题是手机进行图像识别时所必须解决的问题: 必须考虑手机镜头产生的光学退化 专用设备的光学部分是针对具体应用而设计的( 如光圈尺寸、光源波长等) , 而手机的摄像头结构过于简单,光学性能的各项指标都远远不及专用设备。对于 同样的识别问题,手机必须以更大的分辨率来拍摄图像,通过采集更多的像素来 弥补镜头的先天不足,最终达到同样的识别效果。 在智能手机上实现二维条形码识别上海师范大学硕士学位论文 表1 5 1 手机识别条形码与专用设备的对比i 1 0 l 光学性能硬件架构特点成本 专用图像 针对图像识别而设计的针对专门的应用,在优良的光学性能降 镜头和拍摄光源;光学设计阶段就给予了充 低了对图像分辨率 高 识别系统 退化很小足的硬件资源的要求 由于开放操作系统和要使用更高的分辨 针对消费类的应用,镜多任务的存在,很难率来弥补光学性能低,仅 手机头结构简单。光学退化确定可_ f j 的硬件资源 上的不足,同时增软件成 很严重是否可以让设计出的加了硬件的处理负本 识别程序运行担 必须解决算法和手机内存容量之间的矛盾,否则会引起系统崩溃 受f l a s h 擦写寿命的限制,基于f l a s h 存储器的嵌入式操作系统不具备虚拟 内存的功能,一旦系统的内存耗尽,系统就会崩溃或重启。出于成本考虑,手机 的内存容量都不大( e s 2 0 0 8 只配有3 2 m 内存) ,而且还要被操作系统内核 ( k e r n e l ) 、图形用户界面( g u i ) 和后台任务( t a s k ) 占用很大一部分,剩余的 空闲内存并不充裕i l l l 。另一方面,图像处理又要求开辟大量的临时数据存储空间, 存储空间的大小和图像分辨率成正比( 实验表明,为达到一般的识别效果,要求 分辨率达到1 3 0 万像素以上) 。也就是说,手机留给应用程序的内存数量相当有 限,无论问题有多复杂,识别程序对内存的开销都不能超过这一限制。 必须解决算法和手机运算速度之间的矛盾,否则识别速度令人无法接受 手机镜头的先天不足要求拍摄分辨率增高,由此造成对各个像素的模板运算 和像素之间的插值运算使得总的计算量程几何方式增长。因此用手机进行图像识 别的计算量要远远超过专用设备。另一方面,同样是由于操作系统和后台任务的 开销,手机真正提供给应用程序的c p u 时间片极其有限( 实测表明,未经优化 的识别程序响应时间在3 0 s 以上) 。如果程序的识别速度慢到让使用者无法接受, 那么它就没有了实用价值。 在智能手机上实现二维条形码识别 上海师范大学硕士学位论文 表1 5 2 手机条形码识别的两大根本问题 c p u 运算开销 内存开销 专用图像识c p u 主要负责图像处理丁作,额外的负由于功能同定,所需内存数量在设 别系统 担很少,保证了识别的实时性。计阶段就可以确定 c p u 主要负责操作系统、图形界面、通系统的任务情况不固定,空闲内存 手机信功能的运行,图像处理只作为一个应 的容量很难确定。一旦内存耗尽, 用程序执行,很难做到实时识别。系统就会崩溃。 1 6 本课题的研究内容 手机本身不是针对图像识别而设计的,它的硬件组成与专用条形码阅读器有 很大的差别,因此手机条形码识别从理论到方法都与传统的方案有很大的差别。 表1 6 对比了两者之间的主要差别: 表1 6手机和专用条形码阅读器的硬件对比 处理器特点识别算法特点用户群 采用专用处理器,全彼此相似。已形成经 专用条形码阅读器专业用户 速运算典的识别算法 采用通用处理器,大经典算法不适用,不 摄像手机 普通个人用户 量繁忙的后台任务宜采用模板运算 本文主要解决了以下几个问题: 1 ) 针对相对较低的手机运算处理能力,在保留较高识别率的前提下,提出 了具有较快相应速度的图像处理算法方案。 一方面,手机摄像头的光学特性远不及专用识别系统的光学特性,因此同样 的识别问题就要求手机摄像头具有更多的像素数,图像处理的运算量因此也就更 大。 另一方面,专用的图像识别系统中往往采用d s p 或p c 来负责运算工作,而 手机上的数字基带处理器一般采用低功耗、低成本、精简指令集的c p u ( 如最 常见的a r m 处理器) ,它的特性并不针对于图像处理运算。另外由于操作系统 ( 这里采用的是l i n u x ) 本身会对c p u 资源有较大的开销,加之系统必须运行其 他的后台服务( 如通讯、图形用户界面) ,因此手机上的应用程序所能支配的c p u 资源是很有限的。但是图像识别必须具有一定的速度才能满足实际应用。 总之,所面临的问题就是要在较低的c p u 资源上较快的运行大量的图像处 1 4 在智能手机上实现二维条形码识别上海师范大学硕士学位论文 理操作。本文通过对图像处理算法的设计,较好的解决了这一矛盾。实测数据表 明具有较好的识别速度,完全满足实际应用的要求。 2 ) 针对手机摄像头普遍存在的暗角退化,提出了一种通用的暗角退化模型, 并在不增加额外计算量的前提下解决了这一问题。 手机上的摄像头体积小、成本低、结构简单,光学退化较为严重,拍摄的图 片绝大多数都存在暗角现象。后文中可以看到,暗角现象对条形码识别会造成很 大影响,需要去除。本文针对手机摄像头提出了一种通用的暗角退化模型,并将 其直接作为图像二值化的比较模板,从而没有额外增加计算量,提高了图像识别 的速度。 本文的主要内容安排如下: 第2 章:介绍了p d f 4 1 7 二维条形码规范,包括二维条形码的符号表示、编 码压缩模式、错误纠正等内容。后续章节的识别算法就是根据p d f 4 1 7 规范来分 析二维条形码所具有的图像特征,继而提出相应的识别方法。 第3 章:分析了手机和专用条形码识别设备组成结构上的不同之处,论述了 图像识别问题对手机硬件所提出的基本要求,以及利用手机作为图像识别硬件平 台所带来的特殊问题。引出了下一章条形码图像识别算法。 第4 章:针对手机的硬件配置以及操作系统特点提出了适合手机平台的条形 码图像识别算法,是本文的理论中心。这一章的识别算法包括了:图像获取一一 复原一一分割一一配准一一识别中的每个步骤,是一套针对手机平台的完整的条 形码图像识别方案。 第5 章:是识别算法在l i n u x 手机上的具体实现,是本文实现工作的中心。 其中还论述了编写识别程序时针对手机操作系统g u i 环境的编程优化技巧,进 一步提高了识别程序的响应速度和性能。最后还给出了本课题所对应项目的执行 和完成情况以及部分测试数据。由于嵌入式l i n u x 的开发环境较为繁琐,牵涉较 多琐碎的技术性内容,不便在正文中占用较大文字篇幅,因此单独将开发调试技 术相关的内容列于附录2 在智能手机上实现二维条形码识别 上海师范大学硕士学位论文 第2 章p d f 4 1 7 二维条形码规范 2 1p d f 4 17 的符号结构和特性 p d f 4 1 7 条形码符号是一个多行结构。符号顶部和低部为空白区,上下空白 区之间为多行结构,每行数据符号字符数相同,行与行之间左右对齐直接连接, 其最小行数为3 行,最大为9 0 行【1 2 1 。符号结构如下图所示: 陋嘣醛 区 屡l 屡; 髻 图2 1p d f 4 1 7 的结构示意图 每层的组成都是相同的,从左到右依次是:左空白区起始符左层 指示符1 到3 0 个数据符号字符右层指示符终止符右空白区。 p 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 13 1 。 2 2 符号表示 符号字符的结构【1 4 由特定的条和空组合而成的表示信息的基本单位叫做符号字符。每个字符由 4 个条和空组成,自左到右从条开始。每个条或空包括1 - - 6 个模块。在一个符号 中,4 个条和4 个空的总模块数为1 7 ,如图2 2 所示 1 6 在智能手机上实现二维条形码识别上海师范大学硕士学位论文 图2 2 符号字符 码字集【1 5 1 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 u ; 码字9 2 2 、9 2 3 、9 28 用于宏四一七条形码; 码字9 2 1 用于阅读器初始化; 码字9 0 3 、91 2 、9 1 4 、9 2 0 保留待用。 符号字符的簇【1 3 】 条形码符号字符由三个簇构成,每一簇包含以不同的条、空形式表示的所有 9 2 9 个四一七条形码的码字。在一簇中,每一符号字符对应唯一的码字,其范围 为0 - 9 2 8 。 p d f 4 1 7 使用簇号为0 、3 、6 的簇,每行只使用一个簇中的符号字符。同一 簇每三行重复一次。第一行使用第0 簇,第二行使用第3 簇,第三行使用第6 簇,第四行使用第0 簇,以此类推。行号由上往下递增,最上一行行号为1 。 对每一特定的行,使用的符号字符的簇号由下式计算: 簇号= 【( 行号一1 ) r o o d 3r 3 对于每行的符号字符,簇号满足下列关系: 簇号= ( 阢6 2 + 6 3 6 4 ) l n o d9 1 7 在智能手机上实现二维条形码识别 上海师范大学硕士学位论文 式中,6 1 、6 2 、屯、6 4 分别表示自左向右的四个条的模块数。 行指示符号字符【1 4 1 行指示符号字符包括左行指示符号字符( 厶) 和右行指示符号字符( r ) ,分别 与起始符和终止符相邻( 见图2 1 ) 。行指示符号字符的值包含了p d f 4 1 7 的行号、 行数、数据区中的数据符号的列数、错误纠正等级。 左行指示符号字符( l j ) 的值由下式确定: f 3 0 x j + ) ,当c i = 0 日寸 厶- 3 0 x i + z ,当c i = 3 时 1 3 0 x i + ,当c i = 6 日寸 右行指示符号字符限i ) 的值由下式确定: f 3 0 x f + ,当c i = 册寸 r 一 3 0 x i + y ,当c i = 3 日寸 1 3 0 x i + 2 ,当c i = 6 日寸 式中: i ;行号,i = 1 ,2 ,3 ,9 0 x i i n t ( i - 1 ) 3 y n 伊f 行数一1 ) 3 z 错误纠正等级3 + ( 行数一dr o o d3 1 ,一数据区列数- 1 c 。- 第i 行簇号 如,一个p d f 4 1 7 条形码符号为3 行、3 列,错误纠正等级为1 那么: 【厶,工2 ,工3 】为【o ,5 ,2 】;而【蜀,r 2 ,r 3 】为【2 ,0 ,5 】 2 3 压缩模式结构h s p d f 4 1 7 有三种压缩模式:文本压缩模式( t q 、字节压缩模式( b c ) 、数字压 缩模式( n c ) 。通过应用模式锁定转移( l a t c h s h i f t ) i 马字,可以在一个条形码符号 中应用多种模式表示数据。 模式锁定与模式转移 模式锁定与模式转移用于模式之间的切换,切换码字表见表2 1 1 r 在智能手机上实现二维条形码识别上海师范大学硕士学位论文 表2 1p d f 4 1 7 模式结构 模式模式m模式锁定模式转换 文本压缩模式( 大写字母型、小写 09 0 0 9 1 2 字母型、混合型、标点型) 字节压缩模式19 0 1 9 2 49 1 3 数字压缩模式29 0 2 模式锁定码字用于将当前模式切换为指定的目标模式,该模式切换在下一次 切换之前一直有效。模式转移码字用于将文本压缩模式口c ) 暂时切换为字节压缩 模式( b o 。这种切换仅对切换后的第一个码字有效,随后的码字又返回文本压缩 模式) 。锁定模式可以将当前模式切换成任一种,包括切换成当前模式;字节 压缩模式( b c ) 下不能在用字节模式。模式切换结构如图2 3 图2 3 模式切换图 2 4 编码压缩模式i ,3 1 数据区的第一个码字是符号长度,它表示数据码字( 包括符号长度码字) 的个 数。模式结构的应用从第二个码字开始。p d f 4 1 7 条形码有三种数据压缩模式: 文本压缩模式( 1 d ) 字节压缩模式( b c ) 、数字压缩模式( n c ) 。 文本压缩模式( t c ) 文本压缩模式将两个字符以3 0 为基组合成一个码字,该模式在表述文本时 效率较高。它包含四个予模式,分别为大写字母子模式、小写字母子模式、混合 型予模式和标点型子模式。字模式的设置是为了更有效地表示数据,每种子模式 选择了文件中出现频率较高的一组字符组成字符集。在子模式中,每个字符对应 一个值( o 一2 9 ) ,两个字符对应值以3 0 为基组合成一个码字,这样可以用单独的码 1 9 在智能手机上实现二维条形码识别 上海师范大学硕士学位论文 字表示一个字符对,表示字符对的码字由下式计算: 码字= 3 0 * h + l 式中:h ,l 依次表示字符对中的高位和低位字符值。 数字压缩模式( n c ) 数字压缩模式通过从基1 0 到基9 0 0 的转换压缩数据。将约3 个数字位用一 个码字表示,在表示数字时效率最高。在数字压缩模式下,将根据下述算法对数 字位进行编码: 1 ) 将数字序列从左向右每4 4 位分为一组,最后一组包含的数字位可以少于 4 4 个。 2 ) 对每一组数字,首先在数字序列前加一位有效数字1 ( 即前导位) ,然后执 行基1 0 至基9 0 0 的转换。 译码算法与编码算法相反: 1 ) 将每1 5 个码字从左向右分为一组,( 每1 5 个码字可以转换成4 4 个数字位) , 其中最后一组的码字可以少1 5 个。 2 ) 对于每一组码字,先执行基9 0 0 至基1 0 的转换,然后去掉前导位1 。 字节压缩模式( b c ) 字节压缩模式通过基2 5 6 到基9 0 0 的转换,将6 个字节转换成5 个码字,从 左到右进行转换。它有两个模式锁定( 9 0 1 ,9 2 4 ) 。当要表示的字节总数不是6 的倍数时,用模式锁定9 0 1 ;当所要表示的字节总数为6 的倍数时,用模式锁定 9 2 4 。如6 个字节a 1 ,a 2 ,a 3 ,a 4 , a 5 ,a 6 转换为5 个码字s 1 ,s 2 ,s 3 ,s 4 ,s 5 ,方法 是: 4 + 2 5 6 5 + 爿2 + 2 5 6 4 + 4 2 5 6 3 + 爿4 。2 5 6 2 + 4 2 5 6 + 以 _ s + 9 0 0 4 + s 2 9 0 0 3 + s 3 。9 0 0 2 + s 4 + 9 0 0 + s 5 注意:上式中a 1 至a 6 均以十进制数形式带入。 若所要表示的字节数不是6 的倍数,除了模式锁定码字用9 0 1 外,对于 被6 整除所剩余的字节,每个字节对应一个码字,逐字节用码字表示。另外,以 2 0 在智能手机上实现二维条形码识别上海师范大学硕士学位论文 上三种预定义的压缩模式可以结合使用,通过应用模式锁定转移( l a t c h s h i f t1 码 字,可在一个条形码符号中应用多种模式表示数据。相较而言,字节压缩模式的 算法较为复杂。 2 5 错误检测与纠正i ,q p d f 4 1 7 具有几个不同的纠错等级供用户选择。纠错等级越高,所占用的校 验码字也就越多,每个p d f 4 1 7 条形码符号至少包含两个错误纠正码字,用于符 号的错误检测与纠正。 纠错等级 p d f 4 1 7 的错误纠正等级可由用户选择。每种错误纠正等级所对应的错误纠 正码字数目见表2 表2 2p d f 4 1 7 的纠错等级 错误纠正等级 错误纠正码字数目 0 2 14 28 31 6 43 2 56 4 61 2 8 7 2 5 6 85 1 2 错误纠正容量 对于一个给定的错误纠正等级,其错误纠正容量由下式确定: e + 2 t 主d 一2 2 5 “一2 式中,e :拒读错误数目;t :代替错误数目;s :错误纠正等级;d :错误 纠正码字数目。 纠正码字的总数为2 “1 。其中两个用于错误检测,其余的错误纠正码字用于 错误纠正。用一个错误纠正码字恢复一个拒读错误,用两个错误纠正码字纠正一 个替代错误。当被纠正的替代错误数目小于4 时( s = 0 除外) ,错误纠正容量由 2 1 在智能手机上实现二维条艏码识别上海师范大学硕士学位论文 下式确定: e + 2 t d 一3 错误纠正等级的选择 对于开放式系统,不同数量的编码数据所对应的错误纠正等级推荐值见表 2 3 。对于条形码符号容易污损的应用环境,建议选用较高的错误纠正等级。 表2 3p d f 4 1 7 错误纠正等级推荐值 数据码字数错误纠正等级 1 - 4 02 4 1 - 1 6 03 1 6 0 一3 2 04 3 2 1 - 8 6 35 错误检测与错误纠正码字的计算 p d f 4 1 7 规范中,对于一组给定的数据码字,错误纠正等级采用r e e d s o l o m o n 错误控制码算法计算。纠正码字的计算步骤如下: 1 ) 建立符号数据多项式,如下: d ( x ) i d _ i x “- 1 + d _ z x “一2 + + d l z + d o 式中,多项式的系数由数据区码字组成。其中包括长度码、数据码字、填充 码和宏控制块。每一数据码字盔( f 一0 n 一2 , n 一1 ) 在条形码符号中的排列位置 见图2 4 厶d 。一1d 。一2风 l 1 墨 起终 始止 符 符 l 一:d oq 。 q 一:兄一2 k 。 c 1 c or q 图2 4p d f 4 1 7 的码字布局 2 ) 建立纠正码字的生成多项式 k 个错误纠正码字的生成多项式如下: 在智能手机上实现二维条形码识别 上海师范大学硕士学位论文 g ( x ) - ( x 一3 ) o 一3 2 ) ( x - 3 ) 一工+ g i - 1 工- 1 + g l x + g o 式中,i 为错误纠正码字q a o 七一2 , k 一1 ) 的个数,c 。在条形码符号中的 排列位置见图2 4 。 3 ) 错误纠正码字计算 对于一组给定的数据码字和一选定的错误纠正等级,错误纠正码字为符号数 据多项式d o ) 乘以,然后除以生成多项式g ) ,所得余式的各系数的补数。 如果。r 9 2 9 ,在有限域g f ( 9 2 9 ) 中的负值等于该值的补数;如果c js 一9 2 9 ,在 有限域g f ( 9 2 9 ) 中的负值等于余数( 。92 9 ) 的补数。 在智能手机上实现二维条形码识别上海师范大学硕士学位论文 第3 章手机图像识别需要解决的特殊问题 手机作为一种通信工具,不是为处理图像识别问题而量身定制的,并不是所 有的手机都能够实现条形码识别的功能。本章分析了手机实现条形码识别对手机 软硬件的需求,以及识别过程中所遇到的各种问题。 3 1 对手机组成结构的要求 3 1 1 手机摄像模组简介 和专用图像识别系统相比,最大的区别就是手机不具备一副性能优良的摄像 头。手机摄像模组( c c m ) 俗称手机摄像头,它的核心是光学传感器。目前广 泛使用的光学传感器有两种:一种是c c d ( 电荷藕合) 元件;另一种是c m o s ( 互补金属氧化物导体) 器件。c m o s 的成像质量劣于c c d ,但是由于c m o s 的功耗和成本均低于c c d ,适合手机的产品特点,因此目前大多数的手机摄像 模组均采用c o m s 镜头。为实现条形码识别需要关心的几个c c m 技术参数如下 1 1 7 1 : 像素 数码相机的像素数包括有效像素( e f f e c t i v ep i x e l s ) 和最大像素( m a x i m u m p i x e l s ) 。与最大像素不同的是有效像素数是指真正参与感光成像的像素值,而最 高像素的数值是感光器件的真实像素,这个数据通常包含了感光器件的非成像部 分,而有效像素是在镜头变焦倍率下所换算出来的值。 焦距 有两种方式可以改变焦距:一种是数字变焦;另一种是光学变焦。手机c c m 多数采用固定焦距,数码变焦的结构。数码变焦是通过“插值”运算在原图片内 人为插入像素,从而达到图像放大目的。数码变焦并不会增加图像的细节,因此 对图像识别不会带来任何的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 水果合伙经营合同(标准版)
- (2025年标准)工厂征用协议书
- (2025年标准)工厂出卖协议书
- (2025年标准)耕地补偿协议书
- (2025年标准)个人诊所医患协议书
- (2025年标准)个人退房协议书
- 市政建设施工专业分包合同样本合集
- (2025年标准)个人个人提成协议书
- (2025年标准)隔离供餐协议书
- (2025年标准)糕点加盟合同协议书
- 以课程标准为导向:上海市初中信息科技教学设计的探索与实践
- 2025年公共基础知识考试试题(附完整答案)
- 北川羌族自治县农业农村局北川羌族自治县测雨雷达建设项目环评报告
- 2025社区工作者必考试题库(含答案)
- 友邦资讯面试题目及答案
- 2025年山东青岛海关缉私局辅警招聘考试笔试试卷【附答案】
- 2025年社区工作者考试真题库及答案
- 飞灰处置再生资源化利用项目可行性研究报告模板-立项备案
- 2025年中国药典试题及答案
- 昆明一中实验班数学试卷
- 2025年腾讯校招综合素质测评试题及答案
评论
0/150
提交评论