基于matlab的纸币面额面向识别方法设计

摘 要:本设计的主要研究内容是在获取人民币的基础上通过FPGA、CIS传感器进行纸币图像采集,并对采集到的纸币图像进行预处理,包括去噪、边缘检测和倾斜校正。边缘检测过程中,利用离散点进行直线拟合,不仅可以得到纸币的边缘,还可以计算出纸币的中心点和倾斜角度,然后将纸币图像旋转校正,使图像位置归一化。预处理完成之后,利用尺寸识别算法完成对纸币尺寸的测量,从而确定纸币的面额。在面额得到识别的基础上,根据提取得到的纸币特征与模板匹配来对纸币面向进行识别。

关键词:图像采集;FPGA;模板匹配

1 引言

1.1 背景与国内外研究现状

当前,在美、英、德等西方发达国家,纸币识别技术早已广泛的应用在生活当中。我国这些年来也加强教育,不断增加科研投资,使我国的科研水平节节升高,但与国外相比仍有一定的差距。近年来,由于部分著名院校的合作研发,我国在自动化方面的水准有了显著的提升。不过纸币识别在我国几乎从零开始研究,应着手于图像识别相关的理论,勇于实践,造出属于我国独立自主研发的自动识别设备。

1.2 研究的主要内容

1)对图像采集系统的研究。

2)对采集到的图像预处理。

3)纸币面额面向的识别及程序的研究。

2 纸币图像采集系统

2.1 图像采集系统描述

获取图像,是图像处理等一切操作的前提基础,当前各种图像都是用釆集设备获得。本文设计是应用FPGA(Field-Programmable Gate Array)、CIS(Contact Image Sensor)图像传感器为核心器件的图像的采集系统。

2.2 系统的选型

CIS是最新型线性图像传感器,最大特点小巧轻便,当它工作时,LED光源发出光,照到待采集的物体表面,反射光线之后,经聚焦成像于光电传感器的阵列上,被转成电荷储存起来。达到积蓄的时间后,以模拟信号的形式将像素电信号依次输出,从而得到了纸币模拟图像的信号。本设计选型为MC06H-Z04。

本课题研究必须进行多图像数据相关传输处理,因此FPGA型号的选择必须拥有快速I/O转移的能力,选择的型号是XC2S100E。外加二片SDRAM芯片来辅助FPGA进行信号相关的采集处理。该芯片容量为512Mb。用的是双电源供电,应用芯片是TPS70451。FPGA芯片I/O口电平是3.3V,有源晶振在选型时要用3.3V来供电。50MHz的全局时钟发生电路。

本文采用的是CIS为MC06H-Z04,有效频率是15MHz,数据信息是三通道输出。A/D转换器实现选型时,为了匹配传感器,采样频率必须要大于45MHz,并且为三通道的输入模式,因此选用的A/D转换器为TLC5540。传感器型号为MC06H-Z04,是一种电压输出型传感器,所以运算放大器则应当是电压反馈型的,因此放大器选择型号为AD8054。选择USB接口作为传输数据的计算机接口。

3 纸币图像预处理

3.1 图像的去噪

纸币图像中产生噪声,方式多样,类型繁多。由于噪声影响,图像信号的幅值和相位的影响十分繁琐。若果要剔除图像噪声,应针对种类不同,具体分析,实施不同措施,让效果事半功倍。否则问题复杂化会加剧,难以实现目标。

3.2 纸币图像的边缘检测

Sobel边缘算子所利用的算法是对图像原始像素点加权平均后进行微分处理,所以我们可以利用差分取代一阶偏导,算子的数学表达如式(1)所示。

Sobel算子主要用两个三维矩阵,它们分别进行水平方向和垂直方向的检测。

算法矩阵如下:

3.3 纸币图像的倾斜校正

处理纸币图像后识别过程中,因为输入设备精度欠佳,和操作过程中肯定存在着相应误差,采集到的图像会出现一定程度倾斜,这将会影响之后的纸币认别。因此,把采集到的图像进行边缘检测和倾斜校正就很有必要。

进行倾斜校正普遍应用的方法是Hough变换。

设原图像 空间中直线的方程为y=kx+b,将其转换成极坐标 空间中对应的极坐标方程如式(2)所示。

4 纸币面额识别

4.1 特征块识别法

因为不同面额的纸币有明显差异的区域,这些区域为特征块识别法提供了基础, 这些区域涵盖纸币里的盲文和数字等,泛用的就是通过纸币表面能表达纸币面额的数字来识别。特征块识别法就是通过识别纸币自身带有的不同特征进行面额识别的。特征块识别法的原理是在两图像的相同位置提取两个大小不一的区域,其中模板图像略小些,这样有利于更好的识别。之后将这两个图像进行内容比对,检测两个模板是否匹配一致,即可以识别出纸币面额。

4.2 尺寸识别法

本文纸币面额识别的重点应用对象是第五版人民币。所以进行对比人民币的长宽来识别人民币的面额大小。通过测量获得第五版人民币的各面值尺寸,如表1所示。

纸币面额的尺寸识别法是根据不同纸币的长宽不等、差异明显的特点进行面额识别,不同面额的纸币且面额差距越大纸币大小相差也就越显著。因此只要我们通过手段确定出扫描纸币图像的长宽,即可识别出纸币的面额。

5 纸币面向识别

5.1 基于模板匹配的面向识别算法

本文利用模板匹配进行面向的识别。图像的匹配算法分为几何特征匹配和灰度特征匹配两类。图像的几何特征包括投影特征、方向码、图像边缘轮廓及纹理等,这些特征对于图像的放缩、旋转及灰度变化能保持很好的稳定性。

待识别图像输入、预处理、灰度特征提取、匹配计算、结果输出是模板匹配的一般流程。这几个步骤间又有很大关系,预处理的结果将会影响特征提取的方法和质量,根据不同的提取特征,我们会采用不同的匹配算法,最后得到的输出结果可能不尽相同。

5.2 100元面向识别的程序代码

        clear%清内存%***将彩色图像转换为灰度图像,读取模板图像****I=imread(‘C:\Users\DELL\Desktop\人民币识别\面向识别\模板与测试图像和说明\001.jpg’);%该路径为模板图片文件夹位置,下同x01=rgb2gray(I); x1=double(x01);I=imread(‘C:\Users\DELL\Desktop\人民币识别\面向识别\模板与测试图像和说明\002.jpg’);x02=rgb2gray(I);x2=double(x02);I=imread(‘C:\Users\DELL\Desktop\人民币识别\面向识别\模板与测试图像和说明\003.jpg’);x03=rgb2gray(I);x3=double(x03);I=imread(‘C:\Users\DELL\Desktop\人民币识别\面向识别\模板与测试图像和说明\004.jpg’);x04=rgb2gray(I);x4=double(x04);%***将彩色图像转换为灰度图像,读取测试图像%手动更改t01-t04对应测试图像的正反面与正倒像I=imread(‘C:\Users\DELL\Desktop\人民币识别\面向识别\模板与测试图像和说明\t04.jpg’);y01=rgb2gray(I);y1=double(y01);figure;imshow(I)%调用函数ppmm求取误差最小值进行比较,其中裁剪参数c001需要根据实际情况手动输入%调用的函数ppmm需要与主程序在一个文件夹内z1=ppmin(x1,y1)z2=ppmin(x2,y1)z3=ppmin(x3,y1)z4=ppmin(x4,y1)z5=min([z1,z2,z3,z4])if z5==z1disp(‘100元正面正像’)elseif z5==z2disp(‘100元正面倒像’)elseif z5==z3disp(‘100元反面正像’)elsedisp(‘100元反面倒像’)End6 软件仿真

6.1 面额仿真

目前MATLAB软件是功能最为强大的,应用的方向非常广泛。本设计主要是应用MATLAB软件强大的图像处理功能,对CIS图像传感器采集到的纸币图像进行去噪、增强、边缘检测及倾斜校正,从而可以达到面额识别的相关目的。仿真图如4所示。

6.2 面向仿真

下面对面向识别进行仿真,模板图像4个面向,每个图像总像素数1590。随机选取纸面有污迹的100元钞票做为测试样本,在不同光照条件下采集图像的4个面向。分别将测试的4幅图像输入程序进行测试,每一幅图像分别与模板的4个样本进行匹配计算找出误差最小的对应模板即为匹配成功,直接输出结果,仿真情况如图5所示。

从仿真结果来看本文算法面额面向识别是有效的,可以正确的实现预定的功能,至此设计完成。

7 结论

本设计的主要任务是设计一款纸币识别系统,弥补目前市场上应用产品的不足。整个系统工作的主要流程是应用采集系统对纸币进行采集,通过高速图像传感器CIS将图像信息传达给FPGA处理,之后通过USB上传到PC机,应用MATLAB中带有的各种算法,做进一步处理。

本设计的主要创新之处在于应用了独特的面额面向识别法对纸币进行识别,目前为止尺寸识别法从未应用于实践。虽然改善了设计环节,降低了生产成本,但这不是最完美的设计。在精度和准确性上还需更加的完善,细节方面还需更多地考虑。在今后的学习中一定要更加努力,希望能在纸币鉴伪以及外币识别方面多作研究。

基于matlab的纸币面额面向识别方法设计相关推荐

  1. matlab点云中值滤波,基于车载激光雷达的车道线识别方法与流程

    本发明属于自动驾驶的模式识别领域,涉及激光雷达点云数据处理及识别方法. 背景技术: 车道线检测在智能车辆辅助安全系统中起着关键的作用,车道偏离警示系统在车道保持辅助系统以及车道换道辅助系统中有着广泛的 ...

  2. matlab形态学降噪,基于MATLAB的荧光分子图像降噪方法

    基于MATLAB的荧光分子图像降噪方法 [摘要]:医学成像是一种身体内部的视觉显示的技术,用于临床分析和医学干预.其目它旨在揭示身体的内部结构,以便进行诊断和治疗.医学成像产生了大量数据,可形成常规解 ...

  3. 基于MATLAB人脸面部检测的口罩识别系统

    基于MATLAB人脸面部检测的口罩识别系统 课题意义 作为数字图像处理和计算机视觉领域的一个重要组成部分,利用摄像机对图像进行采集,从图像中检测人脸并进行口罩穿戴的识别的有着非常重要的研究意义和应用价 ...

  4. 基于MATLAB图像处理的硬币个数识别系统

    基于MATLAB图像处理的硬币个数识别系统 1.课题介绍 本设计为基于MATLAB的硬币图像识别统计装置,通过数码相机获取平铺无重叠堆积的硬币的图像,并通过Matlab工具处理后统计硬币的数目.通过控 ...

  5. matlab交通标志检测与分类,基于MATLAB的道路交通标志识别.doc

    基于MATLAB的道路交通标志识别摘要:本文介绍用MATLAB强大的计算功能和各种功能齐全的函数,图像工具箱来进行道路交通标志的识别.介绍基于LAB颜色模型的颜色特征提取和基于radon变换的形状特征 ...

  6. python爬取电子病历_一种基于中文电子病历的实体识别方法技术

    本发明专利技术提供了一种基于中文电子病历的实体识别方法,涉及医疗实体识别技术领域.针对目前国内缺少公开中文电子病历标注语料库的缺陷,本发明专利技术通过构建整理医学词典,提出了一种半自动语料库标注方法, ...

  7. matlab 图像模板匹配,基于MATLAB模板匹配的车牌识别系统

    一.课题名称[Q1321814823] 基于MATLAB模板匹配的车牌识别系统 二.课题背景 随着汽车数量的增加,城市交通状况日益受到人们的重视,如何进行有效的交通管理更是成为了人们关注的焦点.针对此 ...

  8. 【项目调研+论文阅读】基于BERT的中文命名实体识别方法[J] | day6

    <基于BERT的中文命名实体识别方法>王子牛 2019-<计算机科学> 文章目录 一.相关工作 二.具体步骤 1.Bi-LSTM 2.CRF结构 三.相关实验 1.数据集 2. ...

  9. matlab 程序 收缩,基于MATLAB的小波收缩去噪方法研究(程序)

    基于MATLAB的小波收缩去噪方法研究(程序)(课题申报表,任务书,开题报告,中期检查表,外文翻译,论文15400字,程序,答辩PPT) 摘 要 信号在采集.传输和获取的过程中难免会受到各种噪声的干扰 ...

最新文章

  1. MySQL-自定义函数
  2. 基于全局场景背景图和关系优化的全景3D场景理解(ICCV 2021)
  3. python处理图片文件_python 学习(二)处理图片、TXT文档
  4. python三目运算符_Python十日谈
  5. JSON.parse()和eval()的区别
  6. altium 去掉部分铺铜_干货|HFSS器件导入Altium进行PCB制作教程!!!
  7. ios如何判断键盘是否已经显示
  8. Python二级笔记(11)
  9. c++已知2点求中垂线_电力系统负荷预测-基本方法以及分析(2)
  10. 战神级CTO直招产品技术小鲜肉,“悦家”团队带你玩转家装O2O
  11. java计算两个字符串格式的时间间隔多少天多少小时多少分钟
  12. 归并排序(数组指针详细讲解,图例分析)
  13. paip.python NameError name 'xxx' is not defined\
  14. 实现关联条件的casewhen效果
  15. 集团HR人事资源管理系统软件有哪些
  16. JavaWeb之Servlet技术完全版
  17. eclipse简单导入xtend项目
  18. cs224u GloVe词向量方法
  19. (SQL入门经典+SQL必知必会+视频)笔记之一
  20. Day1: 正点原子mini-linux 开发板 开机测试

热门文章

  1. 【Python】list写入txt文件
  2. 常用计算方法(C语言代码)(计算方法课程)
  3. Vultr centost7一键安装BBR工具教程
  4. Spring MVC过滤器-超类
  5. Fiddler抓包:详解Fiddler抓包工具软件使用教程
  6. SQL语言——更新操作命令
  7. 创建uni-app项目
  8. 3.4利用单臂路由实现vlan间路由
  9. Android 为摄像头增加闪光灯
  10. java中关于输出三角形图案类型题目的思路