安卓系统下的二维码生成与识别方法研究开题报告
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
研究现状
国外对二维码技术的研究始于20世纪80年代末,在二维码符号表示技 术研究方面已研制出多种码制,在二维码标准化研究方面,国际自动识别 制造商协会(AIM)、美国标准化协会(ANSI)已完成了PDF417、QR Code、Code 49、Code 16K、Code One等码制的符号标准。我国对二 维码技术的研究相对落后,大约始于1994年。
愿各位老师能多提出建议,谢谢!
END.
QR码编码
●模块构造:将寻像图形,分隔符,定位图形,校正图形,码字图统一编 入同一矩阵,每8位码字按2个模块宽度从右下角开始进行蛇形排列。 ●加入掩膜:避免出现相似区域,对符号进行异或操作后计分,选择得分 最低图形。 ●版本与格式:格式信息右5个数据位和10个纠错位组成与掩模图形进行 异或运算后填入相应位置。
研究内容
学习Android平台下的图像读取和绘图功能,利用二维码的编码和解码 原理,通过Android手机对二维码的数据进行解析和编码,实现对二维码生 成和识别。
主要研究内容: 1.学习二维码的编码和解码原理; 2.学习安卓系统; 3.设计二维条码的生成系统; 4.设计二维条码的识别系统。
完成的工作: 1.系统完成从输入数据到生成相应二维码的功能; 2.识别系统完成对采集到的二维码符号进行译码还原出所携带信息的功能。
QR码解码
●读取符号:根据模块的排列规则,适度符号字符,恢复信息数据与纠错 码字。 ●甄别错误:利用纠错级别信息相对应的纠错码字检测错误,如发现错误 立即纠错。 ●划分数据码:根据模式指示符和字符技术指示符,将数据码划分成多个 部分。 ●输出:按照适用的模式译码出数据字符并得出结果。
ຫໍສະໝຸດ Baidu
借鉴ZXing库
桂林电子科技大学毕业设计开题报告
• 题 目:安卓系统下二维码生成与识别方法研究 • 作 者:李朝庭 • 学 号:1300820112
2017-1-8
选题背景和意义
二维码作为一种全新的信息存储、传递和识别技术,自诞生之日起 就得到了世界上许多国家的关注。它是当代人获取信息重要方式,特别是 手持设备上信息的获取。随着时代的发展,它将渗透到我们日常生活的方 方面面。现代社会, 人人都接触到二维码,这正反映了时代文化的变迁。 充分利用二维码这一技术将会给我们的生活带来极大的便利。
研究重点
我们之所以对二维码进行扫描能读出那么多信息,就是因为这些信息 被编入了二维码之中。其中QR码具有数据容量大,编码范围广,可靠性高, 成本低,纠错力强等优点,现在常见的二维码都是以QR码作为编码的码制。 所以,本次课题采用的编码方式时QR码。如何在安卓平台上设计出对 QR二维码符号进行编码和解码的算法是本次课题的一大难点。
QR码理论
QR码由两大部分组成:编码区格式和功能图形区。 编码区格式包括了由格式信息、版本信息以及数据信息和 Rs生成的纠错码字, 其中大部分是数据信息和纠错码字; 功能图形区是指符号中用于符号定位与特征识别的特定图形,由位置探测图 形、分隔符、定位图形以及校正图形组成。 QR码符号区域被空白区包围, 空白区不打印任何信息,四周空白区的宽度为 四个模块的究度。
应用前景
其相关技术应用前景不可估量,这种技术最热门的应用领域有:
●信息获取(名片、地图、WIFI密码、资料) ●网站跳转(跳转到微博、手机网站、网站) ●广告推送(浏览商家推送的视频、音频广告) ●手机电商(手机直接购物下单) ●优惠促销(下载电子优惠券,抽奖) ●会员管理(获取电子会员信息、VIP服务) ●手机支付(扫描商品二维码,通过银行或第三方支付提供的手机端通道完成支付)
Zxing库是一个开源的支持多种一维和二维条码格式的图像处理库, Zxing 库主要使用Java语言实现并且提供其他多种语言的程序接口,可以再多种不同 的平台上使用。它的重点是在使用手机的内置摄像头设各的对条形码进行扫描 识别和编码,而不与服务器通信。它也可用于PC机或者服务器上的进行条形码 的编码和解码,支持条码有 QR码、PDF417、DataMatrix等。 本方案要求设计者具有很高的算法设计以及实际敲代码调试的能力。在方 案实践过程中肯定会遇到大大小小的问题,处理这些问题的一个好方法就是借 鉴。由于Zxing库存在这许多值得借鉴的算法,本方案在算法方面应该向它的 某些方面多加学习,这将大大简化程序设计的周期。
可能遇到的困难
安卓系统:本人没有系统地学习过安卓系统,开发经验不怎么多,此过 程可能会遇到这方面的问题。
算法设计:从理论过渡到实际的代码将会是沉重考验。
Zxing库:难点在于理解,能写出具体代码调试好是另外一回事。
图像处理:二维码图像与背景常常不具有很好的分离性,能做好图像的 预处理是提高识别率的关键。
QR码解码
●定位获取符号:处理好需要解码的图片后,定位并获取符号图像,深色 与浅色模块识别为“0”与“1”的阵列。 ●读取格式:对上述阵列进行格式信息的读取,去除掩膜图形并完成对格 式信息模块的纠错,识别纠错等级与掩模图形参考。 ●读取版本:识别版本信息,确定符号的版本。 ●消除掩模:用掩模图形参考已经从格式信息中得出对编码区的位图进行 抑或处理,从而消除掩模。
进度计划安排
根据实际情况,本方案拟出的时间安排计划如下:
2016年: 12月——确定题目、查阅资料、拟定方案; 2017年: 1月~2月——开题,翻译英文资料,配置开发环境; 2月~3月——建立app基本界面,实现条码生成模块; 3月~4月——实现条码识别模块,对各模块进行总测试; 4月~5月——整理、分析数据及撰写论文; 5月~6月——论文修改与完成及评阅答辩等。
QR码编码
●数据分析:区分数字,字母汉字等,对不同数据模式进行高效编码。 ●数据编码:根据数据编码模式将数据字符转化为二进制位流,位流分为 每8位一个码字,必要时需加入填充。 ●纠错编码:将码字序列分块,生成相应的纠错码字。一并加入对应数据 码字后面。采用Reed.Solomom错误控制码实现纠错。 ●编码构造:将纠错码字添加到数据码字后面形成最终位流序列。
方案简要分析
Android 移 动 客户端界面
条码生成
条码识别
历史查看
保存,退出
生成结果展示
识别结果展示
软件界面设计框图
实施的方案:
本方案的二维码识别手机客户端主要模块有条码生成模块、识别模块、历 史查看模块等。生成模块涉及到字符到二维码的编码处理以及图片的文件存储 方式的设计;识别模块涉及到图片的滤波,二值化处理与二维码矩阵的解码过 程等。 利用eclipse安卓开发工具结合java语言开发app。借鉴Zxing库设计基于 QR码制的二维码生成/识别算法,完成软件界面以及源码的编写与调试,最终 设计出一款能在安卓手机终端实现二维码的生成、识别的app。