资讯详情

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

基于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\Desktop001.jpg);%该路径为模板图片文件夹位置,下同         x01=rgb2gray(I); x1=double(x01);         I=imread(‘C:\Users\DELL\Desktop02.jpg’);         x02=rgb2gray(I);x2=double(x02);         I=imread(‘C:\Users\DELL\Desktop03.jpg’);         x03=rgb2gray(I);x3=double(x03);         I=imread(‘C:\Users\DELL\Desktop04.jpg’);         x04=rgb2gray(I);x4=double(x04);         %***将彩色图像转换为灰度图像,读取测试图像         %手动更改t01-t对应测试图像的正反面和正倒像         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==z1         disp(‘100元正面正像’)         elseif z5==z2         disp(‘100元正面倒像’)         elseif z5==z3         disp(‘100元反面正像’)         else         disp(反面倒像100元)         End         6 软件仿真 

6.1 面额仿真

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

6.2 面向仿真

模拟下面的面向识别,模板图像4个面向,每个图像总像素1590。随机选择纸上有污渍的100元钞票作为测试样本,在不同光照条件下采集图像的四个方向。测试四个图像输入程序,每个图像匹配模板的四个样本,找出最小误差的对应模板,即匹配成功,直接输出结果,如图5所示。

从模拟结果来看,本文算法面额面向识别是有效的,可以正确实现预定功能,到目前为止设计已经完成。

7 结论

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

本设计的主要创新是采用独特的面额识别方法来识别纸币。到目前为止,尺寸识别方法还没有应用于实践中。虽然设计环节得到了改进,生产成本也得到了降低,但这并不是最完美的设计。精度和准确性需要更加完善,细节需要更加考虑。我们必须在未来的研究中更加努力,希望在纸币识别和外币识别方面进行更多的研究。

标签: 6x3光电传感器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台