二维码生成与识别Word版

上传人:仙*** 文档编号:45274907 上传时间:2021-12-06 格式:DOC 页数:20 大小:939KB
收藏 版权申诉 举报 下载
二维码生成与识别Word版_第1页
第1页 / 共20页
二维码生成与识别Word版_第2页
第2页 / 共20页
二维码生成与识别Word版_第3页
第3页 / 共20页
资源描述:

《二维码生成与识别Word版》由会员分享,可在线阅读,更多相关《二维码生成与识别Word版(20页珍藏版)》请在装配图网上搜索。

1、传播优秀Word版文档 ,希望对您有帮助,可双击去除! 南京航空航天大学课程设计题 目二维码的生成及识别小组成员: 何俊豪 韩怀晓 晋晓飞 瞿诗华 薛莉二一五年十一月传播优秀Word版文档 ,希望对您有帮助,可双击去除!第一章 QR码简介QR码是由日本Denso公司与1994年制定出来的一种矩阵二维码符号,它除了具有信息容量大、可靠性高、可表示汉字及图像信息、保密性强等优点外,还具有超高速响应、全方位识别等特点。QR码符号是由正方形的细小模块构成,分为功能区和编码区。功能图形包括位置探测图形、分隔符、定位图形、校正图形、格式信息、版本信息等,编码区域包括数据编码块和纠错码图形。普通QR码基本图

2、形及区域功能对照图如图1.1所示。图1.1 QR码基本结构1.1 QR码的密度标识图形位于两个“回”字标识符之间的黑白相间的条纹,用红色线标注的,这个区域可以用于确定QR码符号的像素方块的密度(即一个像素的大小),标识识别模块如图1.2所示。图1.2 QR码密度标识图形1.2 位置探测图形位置探测图形由三个重叠的同心正方形构成,如图1.3所示。通过探测位置探测图形可以迅速的从背景图像中判断出QR码符号的大致位置。传播优秀Word版文档 ,希望对您有帮助,可双击去除!图1.3 QR码探测图形二维码定位就是找到二维码符号的位置探测图形,对有明显条码特征的区域进行定位,然后根据图形结构特征值对不同的

3、条码符号进行进一步的处理。通过QR码的定位图形,可以得到左上角位置探测图形的边界点和左下角位置探测图形的边界点如图1.4(a)所示,因此可以采用鲁棒性较好的算法拟合条码左边框,然后通过直线拟合得到条码的上边框直线。在此基础上构建直角三角形,寻找出图形中心,如图1.4(b)所示,并可以得到第四个交点,如图1.4(c)所示。(a)确定左边界和上边界 (b)确定探测图形中心 (c)确定第四个交点图1.4 条码图像初步定位流程 1.3 版本信息QR码符号共有40种规格,版本1的规格为21模块21模块,版本2为25模块25模块,以此类推,每一版本符号比前一版本每边增加4个模块,直到版本40,规格为177

4、模块177模块。QR码的版本信息图形在整个二维码图像中的位置如图1.5所示,QR码最高版本40可容纳多达1850个大写字母或2710个数字或1108个字节,或500多个汉字,比普通条码信息容量约高几十倍。图1.5 版本信息图形1.4 纠错码QR码具有“纠错能力”,即使在使用过程中遇到污损、折叠等现象,也可以自动恢复数据。这一传播优秀Word版文档 ,希望对您有帮助,可双击去除!“纠错能力”具备四个级别,级别越高,纠错能力越高,但是数据量也会增加,编码尺寸也会变大。QR码各级别纠错码纠错能力如表1.1所示。表1.1 纠错码级别纠错能力对照表QR码的纠错能力级别L约7%级别M约15%级别Q约25%

5、级别H约30%传播优秀Word版文档 ,希望对您有帮助,可双击去除!第二章 QR码编码规则介绍将输入的数据转变为一个位流,如果最开始的模式指示符不是默认的,其前面要用ECI标头,如果以默认的开始,位流的开头为第一个模式的指示符,如表2.1 所示,该表定义了不同模式下的模式指示符。表2.2定义了不同模式和符号版本下的字符计数指示符的长度。表2.1 模式指示符模式指示符ECI0111数字0001字母数字00108位字节0100日本汉字1000中国汉字1101结构链接0011FNCI0101(第一位置)1001(第二位置)终止符(信息结尾)0000表2.2 字符计数指示符的位数版本数字模式字母数字模

6、式8位字节模式中国汉字模式19109881026121116102740141316122.1 数字模式编码实现将输入的数据从左至右每三位转化成一个10位的二进制数,剩余的一位或者两位数据分别转化成4位或7位二进制数。然后在转换后的二进制数据前加上模式指示符和字符计数指示符。例如输入数据:88899966,编码步骤如图2.1所示。传播优秀Word版文档 ,希望对您有帮助,可双击去除!图2.1 数字模式编码流程2.2 字母模式编码实现字母模式编码规则与数字模式编码规则类似,不过首先要根据对应的字母模式编码转换表2.3将字符转化为相应的数值,再将每两个字母分为一组,前面字符的值乘以与第二个字符的值

7、相加,所得的结果转换为位二进制数。表2.3 字母模式编码转换表字符值字符值字符值字符值字符值字符值字符值字符值0066C12I18O24U30SP36.421177D13J19P25V31$37/432288E14K20Q26W32%38:443399F15L21R27X33*3944A10G16M22S28Y34+4055B11H17N23T29Z35-412.3 中国汉字模式编码实现GB2312标准规定的汉字字符为双字节表示。QR的汉字编码模式将16位的转换为13位二进制字符序列,提高了编码效率。编码具体步骤:(1) 将第一字节值减去0xA6;(2) 将(1)的结果乘以0x60;(3) 将

8、第二字节值减去0xA1;(4) 将(2)的值加上(3)的值;(5) 将结果转化成13位二进制。2.4 纠错编码按需要将码字序列分块,并根据纠错等级和分块的码字,产生纠错码字,并把纠错码字加入到数据码字序列后面,成为一个新的序列。在二维码规格和纠错等级确定的情况下,其实它所能容纳的码字总数和纠错码字数也就确定了。纠错码主要通过里德-所罗门纠错算法算出来,例如:版本10,纠错等级时H时,总共能容纳346个码字,其中224个纠错码字。就是说二维码区域中大约1/3的码字时冗余的。对于这224个纠错码字,它能够纠正112个替代错误(如黑白颠倒)或者224个据读错误(无法读到或者无法译码)。传播优秀Wor

9、d版文档 ,希望对您有帮助,可双击去除!在规格确定的条件下,将原先产生的序列按次序放如分块中,按规定把数据分块,然后对每一块进行计算,得出相应的纠错码字区块,把纠错码字区块按顺序构成一个序列,添加到原先的数据码字序列后面,如图2.2所示。 图2.2 二维码矩阵构造2.5 Zxing简介Zxing是一个开放源码的,用Java实现的多种格式一维或者二维的条码图像处理库,它包含了联系到其他语言的端口,通常使用Zxing生成相应的二维码码以及解码。生成二维码的编码技术是指基于给定内容生成二维条码图片,Zxing可以对生成的二维码的图片格式、各项参数以及二维码类型进行设置,生成的图片包含给定的内容,当使

10、用识别设备进行扫描时,能够读出给定的内容。使用Zxing进行编码的步骤主要如下:首先,将所需的Zxing类库中的包导入工程;其次,对需要生成二维条码的给定内容进行编码方式处理,防止在显示中文时出现乱码问题,并指定所生成二维条码图片的路径、名称和文件格式;然后,找到Zxing中二维码QR码所对应的编码类QR-CodeWriter,调用encode方法生成给定内容对应的比特矩阵;最后将比特矩阵转化为制定的图片格式。传播优秀Word版文档 ,希望对您有帮助,可双击去除!第三章 处理流程及结果演示3.1 处理流程二维码处理流程如图3.1所示,若已有二维码图像,直接读取该图像,在此基础上完成解码识别等过

11、程,用户也可按照自己的意愿在文本框里输入汉字或数值等内容,调用Zxing,生成对应的二维码图像。后对图像进行灰度化、加噪平滑、二值化、旋转校正、畸变校正等预处理,并在此基础上再次调用Zxing完成解码识别的过程。图3.1 二维码生成及处理流程图3.2 界面设计 本实验设计界面如图3.2所示,界面可实现功能:打开一幅二维码图像,对该图像进行灰度化、加噪平滑、二值化、旋转校正、畸变校正等预处理,并在这些过程的基础上完成对二维码图像的解码过程。还可以对用户自身想要的文字或者网址进行二维码图形的制作,并传播优秀Word版文档 ,希望对您有帮助,可双击去除!完成解码显示。 图3.2 界面设计3.3 预处

12、理及其结果演示通过读取图像打开待处理原始二维码图像,并显示该二维码图像如图3.3 所示。根据待识别图像各自特点施以不同的预处理手段。图3.3 原始QR图像3.3.1 灰度化处理通常情况下,使用数码相机等摄像设备获取的QR码是彩色的,和灰度图像相比,彩色图像含有的信息量较大,所占存储空间更多,将彩色图像转化成灰度图像是为了减少存储空间,降低运算量。灰度化处理后图像如图3.4所示。传播优秀Word版文档 ,希望对您有帮助,可双击去除!图3.4 灰度化处理图像3.3.2 平滑处理对图像加入椒盐噪声,然后采用中值滤波对图像进行平滑滤波处理,加噪及平滑处理后图像分别如图3.5(a)和(b)所示。 (a)

13、加噪图像 (b)平滑图像图3.5 加噪平滑处理3.3.3 二值化处理标准的二维码图像是由黑白两种小的模块组合而成的,灰度化之后需对图像进行二值化处理,以便数据的压缩、特征的突出以及图形的识别。图像二值化的方法是通过预先设定的一个阈值,将灰度图像分为小于这个阈值和大于这个阈值的两部分,通过阈值的选取可以将图像的背景区和条码符号分开,本文采用自适应阈值法对图像进行二值化处理。自适应阈值法的基本原理是采用某一假定的灰度值t将图像的灰度分为两组,当两组的类间方差最大时,此灰度值就是二值化的最佳阈值,二值化处理结果如图3.6所示。传播优秀Word版文档 ,希望对您有帮助,可双击去除!图3.6 二值化处理

14、3.3.4 旋转校正在二维码图像采集的过程之中,由于拍摄角度的问题,会导致图像产生一定的旋转畸变,本文采取霍夫变换的方法对此情况进行校正,旋转校正前后的图像如图3.7所示。 图3.7 原图(左)以及旋转校正后的图像(右)在旋转校正之前,需要对图像做边缘检测。本实验使用的边缘检测算子为“canny”算子,“canny”算子可寻找图像梯度的局部最大值,且不易受噪声干扰,能够很好地检测出弱边缘,边缘检测结果如图3.8所示。传播优秀Word版文档 ,希望对您有帮助,可双击去除!图3.8 边缘检测采取霍夫变换的方法对图像进行旋转校正,主要是在图像空间和参数空间建立起一个“线-点”之间的对应关系,每条曲线

15、表示一个点,Hough变换统计所有变化的峰值,并标记,得到4个顶点,如图3.9所示。图3.9 Hough空间显示图使用Hough变换检测线段,标出线段以及线段的起始和端点,得到每条线段的斜率,并计算倾斜角度值,最后将图像中的线条与点显示出来,如图3.10所示。图3.10 直线标识图像图像的坐标原点默认为平面的左上角,根据得到的角度值,将图像按照角度进行旋转,传播优秀Word版文档 ,希望对您有帮助,可双击去除!便能够完成对图像的旋转校正。3.3.5 畸变矫正可能会由于角度的问题,导致图像产生几何形变,使原来的QR码呈现不规则的四边形,从而影响二维码信息的正确提取。使用双线性插值法将不规则则的四

16、边形区域通过一定的映射关系变为QR码标准正方形,从而方便了对二维码信息的提取。畸变校正前后如图3.10所示。 图3.10 原图(左)以及畸变校正后的图像(右)3.4 QR码解码识别解码技术是指从二维码中读取出所包含的信息,本实验直接调用Zxing完成解码识别的过程,包括以下几个步骤:首先,导入Zxing类库中的包;其次,指定二维条码图片的路径;然后,找到 Zxing 中二维条码QR码所对应的解码类QR-CodeReader,调用其decode方法生成二维条码所包含信息对应的对象;最后,读取出对象中的信息。3.5 结果展示本实验对不同的QR二维码图像进行解码识别,证明,对于不同的二维码图片,本文的处理效果具有普遍适应性,如图3.11,3.12,3.13,3.14,3.15所示。图3.11 含网址的普通QR码解码显示传播优秀Word版文档 ,希望对您有帮助,可双击去除!图3.12 模糊QR码图像解码显示图3.13 带图片的QR码解码显示传播优秀Word版文档 ,希望对您有帮助,可双击去除!图3.14 旋转QR码图像解码显示 图3.15 畸变QR码图像解码显示本实验也可以对用户所需内容进行二维码图像生成及解码显示,如图3.16所示。传播优秀Word版文档 ,希望对您有帮助,可双击去除!图3.16 自制二维码并解码显示

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!