图像处理二维码解码技术.doc
《图像处理二维码解码技术.doc》由会员分享,可在线阅读,更多相关《图像处理二维码解码技术.doc(18页珍藏版)》请在沃文网上搜索。
1、东华大学研究生课程论文封面教师填写:得分任课教师签名年 月 日学生填写:姓名学号专业导师课程名称任课教师课程学分上课时间20 至20 学年 第 学期 星期 递交时间年 月 日本人郑重声明:我恪守学术道德,崇尚严谨学风。所呈交的课程论文,是本人独立进行研究工作所取得的成果。除文中已明确注明和引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写过的作品及成果的内容。论文为本人亲自撰写,我对所写的内容负责,并完全意识到本声明的法律结果由本人承担。 论文作者签名: 1摘 要在自动识别技术中,二维条码技术以其低成本、快速识读、大信息量、高安全性等优点,在社会生活中应用越来越广泛。物联网技术的蓬勃发
2、展,也对二维条技术提供了广阔的应用空间。相应的二维条码编码、解码技术研究已经很多,应用上也基本成熟。目前,随着移动通信技术的飞速发展,手机的拥有量和使用量越来越大,功能也越来越强。二维条码技术和移动通信技术的结合,促成了手机二维码的诞生。因此,研究在手机等带有摄像头的智能嵌入式设备中的解码技术变得非常必要。与PC 系统下的解码方式相比,手机型号多种多样,性能差别很大,摄像头拍摄时受环境干扰也多。在复杂条件下如何有效进行二维条码解码的研究就显得非常必要。本文以QR 二维条码为例,通过图像处理技术对带有摄像头的智能设备采集的二维条码图像进行分析处理,解码出二维条码的编码信息,为手机二维码的广泛应用
3、打下一定的技术基础。关键词:QR,二维码,编解码,物联网目录目录21 绪 论11.1 目的和要求11.2 设计内容11.3 总体设计方案12 二维码简介22.1 定义22.2 原理22.3 应用33 二维码解码技术43.1 算法总体流程43.2 图像的灰度化43.3 图像的降噪处理53.4 图像的二值化处理63.5 图形的定位73.6 常规扫描方法73.7 测试和调试11结论13致谢14参考文献151 绪 论1.1 目的和要求本课题主要研究二维条码的识别程序及译码方法,使用C语言来开发二维码的识别程序。查找并阅读相关资料,了解基本的内容,利用需求分析文档,对整个系统有个初步的架构。搜寻实验用的
4、文件文档集和研究过程中用到的各种工具软件。根据已有的资料并借助面向对象的程序设计思想对系统各模块进行分析、建模、设计。使用C语言来开发二维码识别程序。1.2 设计内容本文主要来完成二维码识别和译码程序,运用图像校正、二值化、边缘检测等各种图像处理方法实现条码的预处理,并进行二维码码的解码,结合图像处理技术,完成了基于图像处理的二维码快速识别的解码系统。1.3 总体设计方案本设计的主要任务是在研究二维条码的码制标准的基础上实现对二维码的告诉采集与识别,详细分析二维码的基本特点、符号结构;在条码图像识别方面,研究了对采集的条码图像进行预处理的方法,即:对图像进行整形。运用图像校正、二值化、去噪、边
5、缘检测、图像旋转、数据纠错等多种图像处理方法实现条码图像的预处理、条码定位、条码分割和数据提取。对预处理后的条码图像进行译码。2 二维码简介2.1 定义二维条码/二维码(英文名:QR Code) 是用某种特定的几何图形按一定规律在平面(二维方向)分布的黑白相间的图形记录数据符号信息的。二维码是DOI(Digital Object Unique Identifier,数字对象唯一识别符)的一种,全球最大的二维码资源中心是“渡云” ,为全球用户统一提供了“唯一数据样本”的物品、人员、组织二维码识别信息2.2 原理二维码的原理可以从矩阵式二维码的原理和行列式二维码的原理来讲述。矩阵式二维码(又称棋盘
6、式二维码)是在一个矩形空间通过黑、白像素在矩阵中的不同分布进行编码。下图是国内常用的矩阵式二维码实例,手机正常扫描后会跳出高可靠性的信息:在矩阵元素位置上,出现方点、圆点或其他形状点表示二进制“1”,不出现点表示二进制的“0”,点的排列组合确定了矩阵式二维码所代表的意义。矩阵式二维码是建立在计算机图像处理技术、组合编码原理等基础上的一种新型图形符号自动识读处理码制。具有代表性的矩阵式二维码有:Code One、Maxi Code、QR Code、 Data Matrix等。图21*21的矩阵中,黑白的区域在QR码规范中被指定为固定的位置,称为寻像图形(finder pattern)和定位图形(
7、timingpattern)。寻像图形和定位图形用来帮助解码程序确定图形中具体符号的坐标。黄色的区域用来保存被编码的数据内容以及纠错信息码。蓝色的区域,用来标识纠错的级别(也就是Level L到Level H)和所谓的Mask pattern,这个区域被称为“格式化信息”(format information)。行排式二维码(又称:堆积式二维码或层排式二维码),其编码原理是建立在一维码基础之上,按需要堆积成二行或多行。它在编码设计、校验原理、识读方式等方面继承了一维码的一些特点,识读设备与条码印刷与一维码技术兼容。但由于行数的增加,需要对行进行判定、其译码算法与软件也不完全相同于一维码。有代表
8、性的行排式二维码有CODE49、CODE 16K、PDF417等。其中的CODE49,是1987年由 David Allair 博士研制,Intermec 公司推出的第一个二维码。2.3 应用网络资源下载(网址链接,APP下载)二维码名片(拍码即可快速导入联系人)证照应用(身份证、识别证、会员证等证照之资料登记及自动输入)支付方式(拍码支付,方便快捷)车辆管理应用(驾驶证,车辆的年审文件等基本信息转化保存在二维码)景点门票应用(景点门票,采用二维码进行售票、检票,提高通行效率)表单应用(公文表单、商业表单、进出口报单、舱单等资料之传送交换)婚礼应用(传统的婚礼要大派请柬,2013年婚礼只用发一
9、张二维码即可)会议服务(二维码彩信短信邀请函,二维码签到,彩信会刊、会后感谢)追踪应用(生产线零件、客户服务、邮购运送、维修记录等自动追踪)创意应用(二维码指示牌,二维码宣传广告,二维码食品身份证)保密应用(商业情报、政治情报、军事情报等机密资料之加密及传递)3 二维码解码技术3.1 算法总体流程首先,对采集的彩色图像进行灰度化,以提高后继的运行速度。其次,去除噪声。采用十字形中值滤波去除噪音对二码图像的干扰主要是盐粒噪声。再次,利用灰度直方图工具,使用迭代法选取适当的阈值,对二维码进行二值化处理,使其变为白底黑色条码。最后,确定二维码的位置探测图形,对条码进行定位,旋转至水平后,获得条码数据
10、,以便下一步进行解码。灰度化去噪二值化寻找探测图形确定旋转角度定位旋转获得数据图3.1 算法总体流程3.2 图像的灰度化灰度化的常用方法有两种:1.Gray(i,j) = 0.299 * R(i,j) + 0.587 * G(i,j) + 0.114 * B(i,j)2.Gray(i,j) = 30 * R(i,j) + 59 * G(i,j) + 11 * B(i,j)/100本设计进行灰度化的实现函数如下:internal virtual void imageToGrayScale(int image)for (int y = 0; y image0.Length; y+)for (int
11、 x = 0; x 16 & 0xFF;int g = imagexy 8 & 0xFF;int b = imagexy & 0xFF;int m = (r * 30 + g * 59 + b * 11) / 100;imagexy = m;3.3 图像的降噪处理降噪的方法很多,选用的是中值滤波法,因为中值滤波是一种非线性平滑滤波器。中值滤波在降低噪声的同时,又可以保持图像的细节,使用中值滤波时能较好保护图像的边缘。中值滤波的滤波窗口的形状和尺寸对滤波效果有一定的影响。常用的中值滤波窗口形状一般为正方形、十字形等。就一般经验而言,对于有缓慢变化的较长轮廓线物体的图像,适合使用正方形窗口;对于包
12、含尖角物体的图像,适合使用十字形窗口。窗口大小一般小于图像中最小有效物尺寸为宜。中值滤波的函数实现如下:internal virtual bool applyMedianFilter(bool image, int threshold)bool filteredMatrix = new boolimage.Length;for (int i = 0; i image.Length; i+)filteredMatrixi = new boolimage0.Length;/filtering noise in image with median filter int numPointDark;fo
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
10 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 图像 处理 二维码 解码 技术