毕业设计(论文)-二维码的研究与应用.doc_第1页
毕业设计(论文)-二维码的研究与应用.doc_第2页
毕业设计(论文)-二维码的研究与应用.doc_第3页
毕业设计(论文)-二维码的研究与应用.doc_第4页
毕业设计(论文)-二维码的研究与应用.doc_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

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

文档简介

班级030913学号03091288本科毕业设计论文 题 目 二维码的研究与应用 学 院 计算机学院 专 业 计算机科学与技术 学生姓名 导师姓名 毕业设计(论文)诚信声明书本人声明:本人所提交的毕业论文二维码的研究与应用是本人在指导教师指导下独立研究、写作的成果,论文中所引用他人的无论以何种方式发布的文字、研究成果,均在论文中加以说明;有关教师、同学和其他人员对本文的写作、修订提出过并为我在论文中加以采纳的意见、建议,均已在我的致谢辞中加以说明并深致谢意。本论文和资料若有不实之处,本人承担一切相关责任。论文作者: (签字) 时间: 年 月 日指导教师已阅: (签字) 时间: 年 月 日西 安 电 子 科 技 大 学毕业设计(论文)任务书学生姓名 杨修凡学号 03091288指导教师 职称 讲师 学院 计算机学院 专业 计算机科学与技术 题目名称 二维码的研究与应用 任务与要求:条形码分为一维条码和二维条码。二维条码信息存储量大、易识别、抗干扰。本次毕设的任务是研究二维码的编解码理论,开发一款基于Android平台的二维码编解码软件。该毕设的任务:1. 了解二维码的发展状况。2. 深入研究二维码编解码算法。3. 熟悉Android平台下软件开发技术及ZXing工具库。4. 实现编解码软件。开始日期 2013年 1月25 日 完成日期 2013年6月3日 院长(签字) 2013 年 1 月 25 日注:本任务书一式两份,一份交学院,一份学生自己保存。西 安 电 子 科 技 大 学毕业设计(论文)工作计划学生姓名 杨修凡 学号 03091288 指导教师 刘博 职称 讲师 学院 计算机学院 专业 计算机科学与技术 题目名称 二维码的研究与应用 一、毕业设计(论文)进度 起 止 时 间 工 作 内 容2013.1.25 至 2013.2.28 查阅资料文献,充分理解毕业设计任务要求2013.3.01 至 2013.4.20 研究相关原理和机制熟练编程语言和编程环境 2013.4.21 至 2013.5.10 软件实现和测试各模块功能完善2013.5.11 至 2013.6.3 整理资料、撰写论文、准备答辩 二、主要参考书目(资料) 1 刘瑞祯,于仕琪,OpenCV教程基础篇,背景航空航天大学出版社,2007 2 Robert Lanlere,OpenCV 2 Computer Vision Application Programming Cookbook 3 Davild Millan Escriva,Mastering OpenCV With Practical Computer Vision Projects 4 黄忠主,面向监视视频的运动轨迹提取方法研究,硕士论文,2011 5 A. Rav-Acha, Y. Pritch, and S. Peleg, Making a Long Video Short: Dynamic Video Synopsis, J.Proc. IEEE Conf. Computer Vision and Pattern Recognition, June 2006.435-441. 6 Stephen Prata,C+ Primer Plus,2012三、主要仪器设备及材料硬件:计算机一台。软件:Windows ,Eclipse, Android SDK, ZXing lib 四、教师的指导安排情况(场地安排、指导方式等)每周师生在南校区见面一次,汇报工作进展,确定下一步工作目标。其它时间通过电子邮件和电话保持联系,随时解决疑难问题。指导内容主要包括:理论基础、重点难点问题,论文撰写。五、对计划的说明毕设开始后,按此计划执行,若遇特殊情况,可适当调整。注:本计划一式两份,一份交学院,一份学生自己保存(计划书双面打印)西安电子科技大学毕业设计(论文)中期检查表学 院计算机学院专 业计算机科学与技术学生姓名杨修凡学 号03091288班 级030913导师姓名刘博职 称讲师单 位计算机学院题目名称二维码的研究与应用检 查 内 容检 查 结 果题目是否更换及更换原因否学生出勤情况该生能与老师保持联系。进 度 评 价(完成总工作量的百分比)已完成总工作量的70%质量评价、进度描述完成了部分模块的软件实现。总 体 评 价(按优、良、中、及格、不及格五挡评价)良存在的问题与建议继续完善软件学 院 审 核(盖章)注:此表由指导教师填写,5月15日前交学院办公室,中期检查成绩将作为毕业设计总成绩的一部分;此表装订入毕业设计(论文)中。ABSTRACT西 安 电 子 科 技 大 学毕业设计(论文)成绩登记表 编号:学 院计算机学院专 业计算机科学与技术姓 名杨修凡学号03091288成 绩题目名称二维码的研究与应用指导教师刘博职 称讲师指导教师评语及对成绩的评定意见论文在研究QR码编解码ZXing库的基础上实现了一个基于Android平台上的二维码生成与识别系统。该同学对毕业设计任务有较好的理解,学习态度端正,能够按照设计要求开展各项研究和设计工作。该同学能快速学习并使用软件开发环境,有综合运用理论知识和基本技能的能力。软件实现了预期的功能,完成了毕业设计任务书所要求的内容。该同学毕业论文组织结构合理、文字通顺、逻辑清晰。建议成绩:良。签名 年 月 日评阅人评语及成绩评定意见签名 年 月 日答辩小组意见签名 年 月 日学院答辩委员会意见答辩委员会主任签名 (学院盖章) 年 月 日注:学院、专业名均写全称;成绩登记表双面打印。摘 要随着计算机科学与技术的发展,自动识别技术得到了广泛的应用。在众多自动识别技术中,条形码技术已经成为当今备受关注的计算机自动识别技术之一。条码技术中存在两个非常热点的研究话题,即识别技术和编码理论。条形码分为一维条码和二维条码。由于一维条码受到容量的限制,仅能标识商品,而不能描述商品。二维条码弥补了一维条码面临的容量限制问题,具有可靠性高、信息量大、保密防伪等优点,而且可以用来表示多种文字、图像信息。同时,与其他自动识别技术如射频技术、磁卡技术、光学字符识别技术相比,二维条码也具有识别能力强、速度快,抗干扰,成本低等优势。随着我国信息技术的迅速发展和市场经济的不断完善,国内对二维条码这一新技术的需求与日俱增。本文的研究内容是二维条码QR码的研究与应用。首先简要介绍了国内外QR二维码的研究情况,然后详细阐述了其编码和解码过程的原理和方法。其次,针对失真、倾斜的QR码图像,本文提出了一种基于仿射变换快速识别QR码的图形处理方法。最后介绍了二维QR码生成与识别技术在Android智能手机平台上的实现,包括Android开发平台及开发环境的介绍,Android平台上二维QR码生成与识别的实现。关键字:二维码生成与识别 图像预处理仿射变换 Android平台 ABSTRACTWith the development of computer science and technology, Automatic identification technology has been widely used. Among many automatic identification technology , bar code technology has become one of computer automatic identification technology today concern. there are two very hot research topic in Bar code technology, namely recognition technology and coding theory. The bar code is divided into one-dimensional bar code and two-dimensional bar code. One-dimensional bar codes is limited by the capacity only identifies the product you are looking for, and can not describe the goods. The two-dimensional bar code to make up for the one-dimensional bar code facing capacity constraints, With high reliability, large amount of information, confidentiality, security and other advantages, but also can be used to represent a variety of text, images, data and other information. At the same time, compared with other automatic identification technologies such as radio frequency technology, magnetic card technology, optical character recognition technology, the two-dimensional bar code recognition ability, speed, anti-interference and low cost. With the rapid development of Chinas information technology and the market economy continues to improve, The content of this study is the research and application of two-dimensional bar code QR code. This paper briefly describes the QR code at domestic and abroad firstly, Then elaborates the principle and method of encoding and decoding process. Secondly, for the distortion, tilt of QR code image, this paper put forward a method to quickly identify QR code based on affine transformation. Finally, The document concludes the realization of two-dimensional QR code recognition technology on the Android system, the introduction of Android development platform and development environment. And implementation of the Android platform two - dimensional QR code generation and recognition.Keywords: QR-dimensional code Based affine transformation quickly identify QR code method Android platform目 录iii目 录第一章 绪论11.1 条码简介11.2 二维码技术发展11.2.2 二维码国内应用研究情况31.2.3 QR码的简介41.2.4 QR码的图形特征41.3 本文的研究意义和内容6第二章 QR码编码与解码的理论研究92.1 QR码编码理论92.1.1 QR码的图像特征92.1.2 QR码的编码方法122.2 QR码解码理论162.2.1 QR的图像预处理162.2.2 条码定位192.2.3 纠错和译码21第三章 QR码识别的图像算法253.1.QR码检测方法概述253.2常用的QR码检测方法253.3基于仿射变换快速识别QR码的方法263.3.1仿射变换概述263.3.2 仿射变换概述273.3.3 实验结果27第四章 Android平台上QR码生成与识别系统的搭建294.1Android平台简介及开发环境搭建294.1.1 Android系统架构294.1.2 Android开发平台搭建304.1.3 ZXing库314.2 QR码生成系统314.2.1需求分析314.2.2 系统实现324.3 QR码识别系统334.3.1 需求分析334.3.2 系统实现34第五章 总结与展望375.1 总结375.2 展望37致谢40参考文献42参考文献41第一章 绪论1.1 条码简介条形码技术 杨郁. 条码与自动识别技术J.企业标准化.2002,Vol.6:35-36.是当今最热门的一种自动化识别技术和信息化处理技术。条形码是基于计算机技术与信息技术基础而发展起来的一门结合了识别、编码、数据采集和处理、印刷于一体的新技术。条码技术的使用大大提高了信息自动输入的速度,并且使得计算机在处理信息时能提供准确及时的信息来支持不同的管理系统,。目前条形码技术被广泛应用到各个领域,如交通运输业、商业贸易、生产制造业、医疗卫生、仓储业等。条形码目前主要分为一维条形码和二维条形码。通常所说的条形码指的是一维条码 中国标准出版社.条码国家标准汇编S.中国标准出版社,2004.,它是由一组排列规则的条、空以及对应的字符组成的标记,这些条和空组成的数据包含了一定的信息,并能够用特定的设备识读,转换成计算机兼容的二进制和十进制信息。一维条形码自出现以来一直备受人们的广泛关注,但是由于受到信息容量的限制,一维条形码通常只是对物品的标识,却不包含对物品的任何描述。而且一维条形码使用时需要连接数据库,只有通过访问后台的数据库,提取出相应的信息才能识读物品标识的具体含义。一维条形码已经表现出了它的局限性,它已经无法满足实际应用系统的需求。首先,一维条码对信息的具体描述依赖于预先建立的后台数据库或网络,必须通过连接访问后台数据库的方式提取到对应的信息才能识读条码所表达的事物的信息含义,因此在没有数据库和不便联网的地方它的使用受到了极大的限制,有时甚至变得毫无意义;其次,一维条码只能表达字母和数字,而不能表达文字和图像或者多媒体,因此在有文字的场合使用显得十分不方便且效率很低;另外,在某些场合下,大信息容量的一维条码通常受到标签尺寸的限制,给产品的包装和印刷带来了不便。现代高新技术的发展,迫切要求条码能在有限的几何空间内表示更多的信息,从而满足千变万化的信息的需要,于是二维条码技术应运而生 矫运起 , 张成海 . 二维条码技术.北京:中国物价出版社.1996.12。1.2 二维码技术发展二维码 Sriram T,Rao V K. Application of Barcode Technology in Automated Storage & Retrieval Systems. Industrial Electronics Conference Proceedings. Taipei,Taiwan,1990.1:5-10.的发展最早起源于日本,它是采用一种特定的几何图形按照一定的规律通过二维方向的平面分布的黑白相间图形来记录数据符号信息的,在代码编制方面巧妙地利用构成计算机内部逻辑基础的“0”、“1”比特流的概念,使用多个与二进制相对应的黑白几何形体来表示文字数据信息,通过光电扫描设备或者图象输入设备来自动识读以实现信息自动处理。二维条形码具有条形码技术的一些共性:每种码制有其特定的字符集;每个字符占有一定的宽度;具有一定的校验功能等。同时还具有对不同行的信息自动识别功能、及处理图形旋转变化等特点。二维码是一把万能锁,它适用于所有的信息数据。在信息发达的现代商业市场中,可实现的应用十分广泛,如:广告推送、产品防伪/溯源、网站链接、数据下载、商品交易、定位、导航、铁路订票系统、车辆管理等等。在种类繁多的二维条码中,常见的二维条形码有:Data Matrix, ,QR Code, PDF417,等。1.2.1二维码国外应用研究情况国外对二维条码技术的研究开始于20世纪80年代末。在二维条码符号表示技术研究方面,已经研制出多种码制,常见的有PDF417,QR Code,Code 49,Code 16K,Code One等。这些二维条码的信息密度都比传统的一维条码有了较大的提高,如PDF417的信息密度是一维条码Code 39的20多倍。在二维条码标准化研究方面,国际自动识别制造商协会(AIM)、美国标准化协会(ANSI)已完成了PDF417,QR Code,Code 49,Code 16K,Code One等码制的符号标准。新成立的国际标准化组织国际电工委员会第1联合委员会的第31分委员会,即条码自动识别技术委员会(ISO/IEC/JTC1/SC31),已制定了QRCode的国际标准自动识别与数据采集技术条码符号技术规范QR码,起草了PDF417,Code16K,DataMatrix,MaxiCode等二维条码的ISO/IEC标准草案。二维条码作为一种全新的信息传递、存储和识别技术,自诞生以来就得到了世界上许多国家的关注。在二维条码设备开发研制、生产应用方面,美国、日本等国的设备制造商生产的图像识读设备、符号生成设备,已广泛应用于各类二维条码应用系统 王毅.二维条码技术应用及标准化状况介绍J.中国标准化,2006年5月,18-20.。美国、德国、日本、墨西哥、埃及、哥伦比亚、巴西、新加坡、菲律宾、南非、加拿大等国,不仅已将二维条码技术应用于公安、外交、军事等部门对各类证件的管理,而且也将二维条码应用于海关、税务等部门对各类报表和票据的管理,商业、交通运输等部门对商品及货物运输的管理,邮政部门对邮政包裹的管理,工业生产领域对工业生产线的自动化管理。1.2.2 二维码国内应用研究情况我国对二维条码技术的研究开始于1993年。中国物品编码中心对几种常用的二维条码PDF417,QR Code,Data Matrix,Maxi Code,Code 49,Code 16K,Code One的技术规范进行了翻译和跟踪研究。随着我国市场经济的不断完善和信息技术的迅速发展,国内在原国家质量技术监督局和国家有关部门的大力支持下对二维条码这一新技术的需求与日俱增,中国物品编码中心对二维要码技术的研究要不断深入。我国在吸收了解国外相关技术资料的基础上,制定了两个二维条码的国家标准:GB/T17172-1997四一七条码 、GB/T18284-2000快速响应矩阵码。为使二维条码技术能够在我国的证照管理领域得到应用,在国外应用软件平台的基础上,我国物品编码中心开发了人像照片和指纹数据压缩软件。目前,二维条码技术已在我国的汽车行业自动化生产线、涉外专利案件收费、医疗急救服务卡、珠宝玉石饰品管理、铁路售票系统及银行汇票上得到了应用;1999年3月在北京举行的全国人大第九届三次全体会议和全国政协第九届三次会议期间,在随行人员证件、记者证、旁听证上成功地应用了二维条码技术,引起了与会代表和新闻界的极大关注;更值得一提的是我国香港特别行政区已将二维条码应用在特别行政区的护照上。可见二维条码随着我国信息化产业的发展应用越来越广泛。QR码最初是为了在汽车制造厂的零件库中便于追踪和记录汽车零部件而设计,当今QR码已广泛使用在各行各业的存货管理。用户通过使用智能手机或者扫描终端便可以轻松的对二维码进行扫描识别,生活中已经得到了广泛的应用,如应用在食品物流、隐形眼镜、服装等商品标签领域。在我国已有把二维条码用于人员管理和物品管理的实例。例如上海汽车销售中心已经在车辆信息的跟踪管理上使用二维条码,中国银行北京分公司开始将二维码应用于汇票上。公安部门尝试将二维条码应用于身份证和流动人口管理上,进出境管理部门在探讨将二维条码应用在护照上,海关也预想将其用在报关单上,如果这些想法都得以实施,那么我国在人员、物流管理上又有了新的提升。同时,QR码被越来越广泛地应用于电子票务领域,电影票、电子优惠券、电子会员卡等给人们的日常生活带来无数便利。在国外电子机票登机已经普及了,我国也在推广电子机票。2009年12月,广州机场已经开始使用电子机票了,无需登机牌,一条二维码短信就可以轻松登机。铁道部于2009年12月10日开始改版铁路车票, 新版车票采用QR码作为防伪措施,取代以前的一维条码。电子票务一般是通过短信方式发送一张包含相关信息的二维码图片到用户手机,使用时用户只需在指定地点的二维码识别终端上照一下,相关信息被读取出来,十分方便。目前使用比较广泛的电子票务二维码识别终端是上海夏浪科技的SL-QC15S,春秋航空、海南航空也已将此设备运用于其系统中。与此同时,中国移动也推出了QR码的离线业务,此举使QR码从企业级的应用走向平民的生活,可以预见在不久的将来,QR码将会越来越贴近普通人的生活。1.2.3 QR码的简介QR码 中国物品编码中心.二维条码技术与应用M.北京:中国计量出版社,2007-07:1-5.最早是由日本Denso公司于1994年9月研制的一种矩阵二维码符号,它具有一维条码所具有的识别功能以及其它二维条码所具有的信息容量大、可靠性高、可表示汉字及图象等各种文字信息、保密防伪性强等优点。QR码中的“QR”指的是Quick Response 的缩写,即快速响应。顾名思义,这种二维码能够快速被读取。与之前的条形码相比,QR 码还能存储更丰富的信息,包括对文字、URL 地址和其他类型的数据加密。在2000年6月,QR码对应的ISO国际标准ISO/IEC18004获得批。根据Denso Wave公司的网站资料,QR码是属于开放式的标准,QR码的规格公开,而由Denso Wave公司持有的专利权益,则不会被执行。除了标准的QR码之外,还存在一种被称为“微型QR码”的条形码,是QR码标准下的缩小版本,主要是为了无法处理较大型扫描的应用而设计。微型QR码同样有多种标准,最高可储存35个字元。1.2.4 QR码的图形特征由于QR码不再使用线性扫描的方式工作,而是使用CMOS摄像头或者CCD扫描仪进行二维码图像的采集工作。由于二维码具有很高的纠错能力,所以二维码图像采集设备甚至能直接对液晶屏幕上显示的QR码进行扫描、识别,但是位于屏幕上的条码上方时容易因采集设备的红外光源在屏幕上的反光而影响识别,所以在识别过程中的图像预处理的鲁棒性决定了QR码识别率的高低。QR 码呈正方形,只存在黑色和白色两种模块。在正方形的4个角存在3个,印有较小的类似“回”字的的图案,分别位于左上、右上、和左下角,如图1.1所示。这 3个图像的主要功能是为了帮助解码软件快速的定位QR码的图像区域,使得图像采集器不需要精确的对准QR码,无论以任何角度扫描,QR码仍可正确被读取识别。图1.1 二维码的组成部分QR码比其他二维码相比,具有识读速度快、数据密度大、占用空间小的优势。QR码的三个角上有三个寻象图形,使用CCD识读设备来探测码的位置、大小、倾斜角度、并加以解码,实现360度高速识读。图1.2 QR码和一维码的比较每秒可以识读30个含有100个字符QR码。QR码容量密度大,可以放入1817个汉字、7089个数字、4200个英文字母。QR码用数据压缩式表示汉字,仅用13bit即可表示一个汉字,比其他二维条码表示汉字的效率提高了20%。QR具有4个等级的纠错功能,即使破损或破损也能够正确识读。QR码抗弯曲的性能强,通过QR码中的每隔一定的间隔配置有校正图形,从码的外形来求得推测校正图形中心点与实际校正图形中心点的误差来修正各个模快的中心距离,即使将QR码贴在弯曲的物品上也能够快速识读。QR码可以分割成16个QR码,可以一次性识读数个分割码,适应于印刷面积有限及细长空间印刷的需要。此外微型QR码可以在1厘米的空间内放入35个数字或9个汉字或21个英文字母,适合对小型电路板对ID号码进行采集的需要。从应用平台来分,二维QR码的生成与识别技术可以分为基于PC平台和移动平台。基于PC平台的生成与识别技术可以在Windows、Linux、Mac OS操作系统下的程序。PC平台上的生成与识别算法除了有良好的识别率,还有速度快、实时性高等优点。然而基于PC平台的识别技术因为不能随时移动而无法满足实际的应用。基于移动平台的二维QR码的生成与识别技术就很好的解决了这个问题。常见的移动平台有苹果公司的iOS平台、Google公司的Android手机平台以及微软的Windows Phone平台。在二维码生成与识别的技术上,目前已经有不少鲁棒性高,稳定的第三方工具库,如ZXing库 宋永生基于Android的商品比价系统的设计与实现J.电脑知识与技术2011 18,4359-4361是一个开源Java类库,用于解析多种格式的一维和二维条形码,并提供了多种平台下的客户端包括:J2ME、iOS和Android,以及ZBar库等。1.3 本文的研究意义和内容由于QR Code二维条码的专有高效的汉字编码模式非常适合我国应用,如果能够研究出属于我国自己的更为高效的QR码编译码算法,并将其实现,使之实用化,将是条码技术在我国应用的创新,也将推进二维条码在我国的普及过程。本文在充分了解条码技术的发展现状及趋势的基础上,认真研究QR Code二维条码国家标准GBT 182842000,详细介绍了二维QR码的结构和编解码规则,分析了QR码的编码流程,并结合QR码的编解码技术,纠错编码理论,在Android平台上用实现了QR码的编解码。在QR码的译码过程中需要对摄像头采集的图像进行预处理,特别是针对畸形的二维码需要进行校正,因此本文在二维码识别上重点研究了基于仿射变换快速识别QR码的方法,并分析比较了实验结果。本论文的具体章节内容安排如下:全文内容安排如下:第一章是绪论,首先阐述了二维码的国内外技术的研究和发展情况。然后简单的介绍了QR码的特性。第二章是QR码的结构以及编码、解码的介绍。本章首先介绍了QR码的图像特征和结构,然后简单叙述了QR码的编解码理论,以及图像的预处理方法。第三章是基于仿射变换快速识别QR码的方法。本章首先介绍了QR码的检测原理以及常用方法。然后重点研究仿射变换的方法以及基于QR码特征的仿射变换方法。第四章是二维QR码识别系统在Android手机平台上的应用。本章首先介绍了Android操作系统的结构和特点以及其环境的搭建。然后设计了QR码的生成与识别流程需求进行分析,并对QR码识别系统在Android平台下进行了完整的实现。第五章是总结和展望,对文本所做的工作和不足进行总结,对QR码的发展前景作出预测并且提出可能面对的新问题。第二章 QR码编码与解码的理论研究2.1 QR码编码理论2.1.1 QR码的图像特征QR码符号包括两大部分:编码区格式和功能图形。编码区格式包括了由格式信息、版本信息以及数据信息和RS生成的纠错码字,其中大部分是数据信息和纠错码字;而功能图形是指符号中用于符号定位与特征识别的特定图形,由位置探测图形、分隔符、定位图形以及校正图形组成。QR码符号区域被空白区包围,空白区不打印任何信息,四周空白区的宽度为四个模块的宽度。以版本7的QR7的QR码为例,它的符号结构图如图2.1所示 国家质量技术监督局GBT 18284-2000快速响应矩阵码国家标准M北京:中国标准出版社2001: 图2.1 QR码符号的结构(1)QR码的寻像图形QR码的寻像图像由三个处于相同的位置探测图像 张海成,郭卫华QR Code快速响应矩阵码M,北京:中国标准出版社2001:2325组成,分别位于符号的左上角、左下角和右上角,如图2.2所示。每个位置探测图形由3个黑白交替的重叠的同心的正方形组成,分别为77个黑色模块、55个白模块和33个黑色模块,如图22所示。位置探测图形的模块宽度比为1:1:3:1:1。采用此图形是由于在符号中其他地方遇到类似图形的几率极小,所以可以在图片中迅速地识别可能的QR码符号,明确符号的位置和方向。图2.2 位置探测图形的结构(2)分隔符在每个位置探测图形和编码区域之间有宽度为1个模块的分隔符,它全部由白色模块组成,如图2.1中所示。(3)定位图形定位图形为一个模块宽的一行和一列,水平定位图形位于上部的两个位置探测图形之间,符号的第6行。垂直定位图形位于左侧的两个位置探测图形之间,符号的第6列。,由黑色和白色模块交替组成,其开始模块和结尾模块都是黑色。它们的作用是确定符号的密度和版本,提供决定模块坐标的基准位置,如图2.1中所示。(4)校正图形每个校正图形由3个黑白交替的重叠的同心正方形组成。形状似小型位置探测图形,由内到外依次为11个黑色模块,33个白色模块和55个黑色模块,如图21所示。校正图形的数量依QR码的版本而定,版本2以上的符号均有校正图像。(5)格式信息格式信息位于符号的第9行和第9列,在符号中出现两次以提供冗余,因此它的正确译码对整个符号的译码至关重要,如图2.3中所示。图2.3 格式信息格式信息为15位,其中有5个数据位,10个是用BCH(15,5)编码计算得到的纠错位。在前5位数据位中,第1、2位代表符号的纠错等级,如表2.1所示。第3到第5位的内容为掩模图形参考,后10位为纠错位。格式信息的最低位编码为0,最高模块编号为14。表2.1 纠错等级指示符 纠错等级 二进制指示符L 01M 00Q 11H 10(6)版本信息版本信息位于符号的右上角的位置探测图形左侧的6行3行,和左下角的位置探测图形上部的3行6行处。版本信息的正确译码对整个符号的译码也很重要,因此在符号中也出现两次以提供冗余。如图2.4所示。图2.4 版本信息版本信息共18位,前6位为数据位,后12位为通过BCH(18,6)编码计算出的纠错码。6位数据位是版本信息,第1位是最高位。版本信息的最高位模块编号为17,最低位模块编号为0。(7)编码区域与空白区编码区域包括表示数据码字、纠错码字、版本信息和格式信息的符号字符。空白区为环绕在符号四周的4个模块宽的区域,其反射率应与白色模块相同,同时也将QR码符号和图像背景分割开来。2.1.2 QR码的编码方法QR码的编码过程如图2.5所示步骤进行。图2.5 QR码编码流程图(1)数据分析首先对输入的数据流进行分析,确定编码字符的类型。QR码可以支持对多种不同的数据模式进行编码,包括数字、字母和中国汉字等。分析数据的目的是为了能够对不同的数据模式进行高效的编码。同时根据需要选择相应的纠错等级来提高符号的可靠性。在没有预先设置所要采用的符号版本的情况下,默认选择与数据相适应的最小版本。(2)数据编码按照所选择模式的编码标准,将数据字符转换为位流。同时在数据位流前面加上模式指示符,在数据位流之后加上终止符,将产生的位流分为每8 位一个码字,必要时加入填充字符以确保填满按照版本所要求的数据字数。 数据编码举例。当输入数据为:01234567,数字模式。按如下步骤编码:1)分为3位一组:012/345/67;2)转换二进制:012-0000001100,345-0101011001,671000011;3)连接得到一个序列:000000110001010110011000011;4)字符数为8个,得到字符指示符(长度为10位):8-0000001000;5)加入模式指示符0001,字符计数指示符0000001000和终止符0000得到最终序列:0001 0000001000 0000001100 01010110011000011 0000。(3)纠错编码纠错编码 黄宏博,肖峻岭,佟刑娟基于ReedSolomon算法的QR码纠错编码J计算机工 程,2003(1),29期:9395即为根据需要将码字序列分块,生成相对应的纠错码字,一并加入到相应的数据码字序列的后面。QR码的编码采用ReedSolomon错误控制码来实现纠错功能,纠错面积高,可同时纠正突发错误和随机错误,使得符号在局部污损甚至缺失时仍然可以被正确解码。RS纠错算法可以纠正两种类型的错误:拒读错误(错误码字的位置已知)和替代错误(错误码字的位置未知)。可纠正的替代和拒读错误的数量如下式所示:式中:e表示拒读错误数;t表示替代错误数;d表示纠错码字数;P表示错误检测码字数。纠错具体步骤如下:1)依据版本和纠错等级,将数据码字分成块,分别计算每一块的纠错码;2)构造降幂的多项式h(x),多项式的系数为分块后得到的数据码字。第一个数据码字为多项式中幂次最高项的系数,而最后一个码字为幂次最低项的系数;3)多项式h(x)除纠错码后生成的多项式g(x)的余数就是纠错码。余数的幂次最高项为第一个纠错码字,幂次最低项就是最后一个纠错码字。纠错码的运算是在本原多项式:的伽罗毕域GF(28)内进行的。其中加减法为逐比特的异或运算,乘除法为幂指数的模255加减法。(4)构造数据码字和纠错码字当所有数据块的纠错码字都生成后,只需要把纠错码字添加到数据码字后面即可形成最终位流序列。在块序列中,所有的数据码字置于第一个纠错码字之前。通常情况下数据块和纠错块之和刚好可以填满符号的码字容量,而在某些版本中,则需要在最终的信息位流末尾添加3,4或7个剩余位。(5)置入功能模块和码字模块寻像图形、分隔符、定位图形、校正图形和码字模块一同放到矩阵当中。其中每个8位码字,按2个模块的宽度从符号的右下角开始蛇形排列。位序列从右到左,从最高位到最低位按模块的排列方向排列。图2.6为一个版本为2的符号字符布置,图2.7和图2.8为其中部分模块的位的序列。图2.6 版本2-M符号的符号字符布置 向上 向下 0 12 3 4 5 5 76 7 4 5 2 3 0 1 图2.7 向上或向下的规则字符的位的布置由向上变成向下 由向上变为向下2345016701234567 图2.8 布置方向改变的符号字符位布置示例(6)加入掩模 掩模的目的 Vanggils W J Two-dimensional dot code for product identification J IEEE Trans Information Theory 1 987:620-63 1尽可能避免与位置探测图形相同或者相似的图形出现在符号的其他区域。掩模的本质就是对符号进行异或(XOR)操作,并对根据相应的规则对异或后的结果图形记分,最后选择得分最低的图形。掩模过程如图2.9所示。图2.9 掩模过程(7)格式与版本信息格式信息由5位数据位和10位纠错位组成,与掩模图形101010000010010进行异或运算后,所得结果填入相应位置。版本信息由6位数据位和12位纠错位组成,同样放入符号的相应位置。2.2 QR码解码理论QR码解码过程就是对图片所包含信息的识读过程,二维码的解码过程可分为图像预处理、条码定位及纠错译码等几个主要步骤。参考国家质量技术监督局发布的 QR 码的参考译码方法如下:(1) 定位并获取符号图像。深色与浅色模块识别为“ 0”与“1”的阵列。(2)识读格式信息(如果需要,去除掩模图形并完成对格式信息模块的纠错,识别纠错等级与掩模图形参考。)(3) 识读版本信息,确定符号的版本。(4)用掩模图形掩模图形参考已经从格式信息中得出对编码区的位图进行异或处理消除掩模。(5)根据模块排列规则,识读符号字符,恢复信息的数据与纠错码字。(6)用与纠错级别信息相对应的纠错码字检测错误,如果发现错误,立即纠错。(7) 根据模式指示符和字符计数指示符将数据码字划分成多个部分。(8)最后,按照使用的模式译码得出数据字符并输出结果。2.2.1 QR的图像预处理图像的预处理在解码过程中是不可或缺的。它将解决图像存在的失真,歪斜,缺损,以及QR 码图像背景中常常存在与识别条码无关的噪声等问题。预处理流程如下图2.2.1所示。图2.10 预处理的基本步骤采集和处理二维条码图像的方式有扫描式和摄像式两种。由于QR码是矩阵式二维条码,所以采集和识读QR码图像只能采用摄像式方式。摄像式图片采集方式又分电荷耦合元件(CCD)和互补金属氧化物半导体(CMOS)两种。CCD采集方式的图像质量高,感光速度快,但硬件开销较大,图像采集成本较高。近年来随着半导体技术的快速发展,CMOS的性价比日益提高,正在逐步占领市场。采集二维条码图像时,首先,通过光学透镜把二维条码图像成像在图像采集传感器上,然后,通过模一数转换或者直接数字化图像采集传感器上的图像,最后采用数字图像处理技术提取和识别数字图像。面向小型嵌入式设备的应用时,如手机、PDA等,还应该考虑图像处理的速度是否满足实时性要求,检测和处理QR码的效率是制约QR码识别系统应用范围的关键。本文所用数据全部是采用摄像式方式采集的包含背景的QR码彩色图像,然后,进行灰度化处理。由于光照条件复杂,灰度化后的图像背景的像素值往往变化较大,QR码符号图像与背景常常不具有很好的分离性。由于检测和识别的是图像中的QR码,所以,在检测和识别QR码之前,需要对图像进行预处理,突出QR码符号图像。QR码图像预处理的步骤如下:(1)读取含有QR码的灰度图像,若为彩色图像,则先进行图像灰度化处理;(2)采用适当的滤波方法平滑灰度图像,去除部分噪声;(3)利用适当的二值化算法,二值化灰度图像;(4)检测QR码图像的边缘,并使用Hough变换求出图像的倾斜角度;(5)根据求出的倾斜角度,使用双线性插值法校正倾斜的图像;(6)寻找深色浅色模块的比符合为:1:1:3:1:1的位置探测图形。嵌入式系统所采集的图像为彩色格式图像。由于彩色图像包含有大量的颜色信息,在存储和处理上的运算量和开销很大,故先对采集的图像进行灰度化处理。典型的图像灰度化的处理算法有:分量法、最大值法、平均值法、加权平均值法。其中分量法是将中分某个分量当成灰度值,最大值法是将分量中最大值当成灰度值,平均值法是将的值取平均当成灰度值。由于人眼对绿色的敏感最高,对蓝色敏感最低,因此本文采用下式对RGB三分量进行加权平均能得到较合理的灰度图像: 二值化是图像预处理中的关键

温馨提示

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

评论

0/150

提交评论