




已阅读5页,还剩30页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
武汉工程大学邮电与信息工程学院毕业设计( 论 文)说明书论文题目 硬币表面形状的自动检测与识别研究学 号 学生姓名 专业班级 指导教师 总评成绩 2013 年 6 月 1 日II武汉工程大学邮电与信息工程学院 毕业设计(论文)摘 要数字04图像处理技术是20世纪60年代发展起来的一门新兴学科,随着图像处理理论和方法的进一步完善,使得数字图像处理技术在各个领域得到了广泛应用,并显示出广阔的应用前景。MATLAB既是一种直观、高效的计算机语言,同时又是一个科学计算平台。它为数据分析和数据可视化、算法和应用程序开发提供了最核心的数学和高级图形工具。根据它提供的500多个数学和工程函数,工程技术人员和科学工作者可以在它的集成环境中交互或编程以完成各自的计算。MATLAB中集成了功能强大的图像处理工具箱。由于MATLAB语言的语法特征与C语言极为相似,而且更加简单,更加符合科技人员对数学表达式的书写格式,而且这种语言可移植性好、可扩展性强,再加上其中有丰富的图像处理函数,所以MATLAB在图像处理的应用中具有很大的优势。本文从预处理、边缘检测、硬币定位、字符分割、字符识别五个方面,具体介绍了硬币自动识别的原理。并用MATLAB软件编程来实现每一个部分,最后识别出硬币表面形状。关键词:MATLAB;数字图像处理AbstractDigital image processing technology in the 1960s developed a new discipline, with the image processing theory and methods to further improve, making the digital image processing technology has been widely applied in various fields, and shows broad application prospects. MATLAB is a kind of intuitive, efficient computer language, but it is also a scientific computing platform. It provides data analysis and data visualization, algorithms, and application development provides the core mathematics and advanced graphical tools. It provides more than 500 according to mathematical and engineering functions, engineering and technical personnel and scientists can interact with its integrated environment or programming to complete their calculations.MATLAB integrates powerful image processing toolbox. Since MATLAB language features and syntax of the C language is very similar, but more simple, more in line with scientific and technical personnel of mathematical expressions written format, and this language portability, scalability, coupled with a wealth of images which handler, so MATLAB applications in image processing has a great advantage.In this paper, pre-processing, edge detection, plate location, character segmentation, character recognition in five areas, specifically introduced for automatic vehicle identification principle. And use MATLAB software programming to implement every part of the final identification of the coin surface shape. Keywords: MATLAB; digital image processing武汉工程大学邮电与信息工程学院 毕业设计(论文)目 录摘 要IAbstractII目 录1第一章 绪 论- 2 -1.1 课题背景- 2 -1.2 国内外研究状况和应用前景- 3 -1.3 课程设计目的- 5 -1.4 课程设计的内容- 5 -第二章 MATLAB简介- 6 -2.1 MATLAB介绍- 6 -2.2 MATLAB 产品系列重要功能:- 6 -第三章 硬币表面形状的自动检测与识别- 17 -3.1 硬币识别工作原理- 17 -3.2 硬币识别系统的matlab实现- 18 -3.3 硬币字符识别- 26 -第四章 总结与展望- 30 -4.1 总 结- 30 -4.2 展 望- 30 -致 谢- 31 -参考文献- 32 -1武汉工程大学邮电与信息工程学院 毕业设计(论文)第一章 绪 论 1.1 课题背景伴随着计算机技术的高速发展,数字图像处理成为了一门新兴学科,并且在生活中的各个领域得以广泛应用。图像边缘检测技术则是数字图像处理和计算机视觉等领域最重要的技术之一。在实际图像处理中,图像边缘作为图像的一种基本特征,经常被用到较高层次的图像处理中去。边缘检测技术是图像测量、图像分割、图像压缩以及模式识别等图像处理技术的基础,是数字图像处理重要的研究课题之一。 边缘检测是图像理解、分析和识别领域中的一个基础又重要的课题, 边缘是图像中重要的特征之一,是计算机视觉、模式识别等研究领域的重要基础。图像的大部分主要信息都存在于图像的边缘中,主要表现为图像局部特征的不连续性,是图像中灰度变化比较强烈的地方,也即通常所说的信号发生奇异变化的地方。经典的边缘检测算法是利用边缘处的一阶导数取极值、二阶导数在阶梯状边缘处呈零交叉或在屋顶状边缘处取极值的微分算法。图像边缘检测一直是图像处理中的热点和难点。 近年来,随着数学和人工智能技术的发展,各种类型的边缘检测算法不断涌现,如神经网络、遗传算法、数学形态学等理论运用到图像的边缘检测中。但由于边缘检测存在着检测精度、边缘定位精度和抗噪声等方面的矛盾及对于不同的算法边缘检测结果的精度却没有统一的衡量标准,所以至今都还不能取得令人满意的效果。另外随着网络和多媒体技术的发展,图像库逐渐变得非常庞大,而又由于实时图像的目标和背景间的变化都不尽相同,如何实现实时图像边缘的精确定位和提取成为人们必须面对的问题。MATLAB是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。特点:1、高效的数值计算及符号计算功能,能使用户从繁杂的数学运算分析中解脱出来;2、具有完备的图形处理功能,实现计算结果和编程的可视化;3、友好的用户界面及接近数学表达式的自然化语言,使学者易于学习和掌握;4、 功能丰富的应用工具箱(如信号处理工具箱、通信工具箱等) ,为用户提供了大量方便实用的处理工具。本课题就是MATLAB软件在图像检测与目标识别中的应用进行研究,主要任务是对硬币各表面形状态检测,完成硬币的自动检测与识别研究。1.2 国内外研究状况和应用前景作为计算机视觉的经典性研究课题,图像检测的研究已有较长历史,涌现了许多方法,这些方法分为两大类,基于空间域上微分算子的经典方法和基于图像滤波的检测方法。基于空间域上微分算子的经典方法。在阶跃型边缘的正交切面上,阶跃边缘点周围的图像灰度表现为一维阶跃函数边缘点位于图像灰度的跳变点。根据边缘点的特性,人们提出了基于图像灰度一阶导数、梯度、二阶导数以及更为复杂的laplace算子等提取图像边缘的方法。基于图像滤波的检测方法。在实际图像中,边缘和噪声均表现为图像灰度有较大的起落,同是高频信号,但相对来说边缘具有更高的强度。 几种经典的边缘检测算法论述:1roberts算子。roberts边缘检测算子根据任意一对互相垂直方向上的差分用来计算梯度的原理,采用对角线方向相邻两像素之差。roberts算子采用对角线方向相邻两像素之差近似梯度幅值检测边缘。它适合于得到方向不同的边缘,对不同方向的边缘都比较敏感,检测水平和万垂直边缘的效果好于斜向边缘,定位精度高。但是在进行差分计算的过程中对噪声敏感,即有噪声影响的像素点可能被检测为边缘点。 2sobel算子。对数字图像的每个像素点,考察它上、下、左、右邻点灰度加权差,与之接近的邻点的权值大。sobel算子很容易在空间上实现sobel边缘检测器不但产生较好的边缘检测效果而且受噪声的影响也比较少。 3log算子。前面介绍的梯度算子和拉普拉斯算子实际上都是微分或差分算法,因此算法对噪声十分敏感。所以,在边缘检测前必须滤除噪声。4Sobel算法的改进,经典的Sobel图像边缘检测算法,是在图像空间利用两个方向模板与图像进行邻域卷积来完成的,这两个方向模板一个是检测垂直边缘,一个是检测水平边缘。算法的基本原理,由于图像边缘附近的亮度变化较大,所以可以把那些在邻域内,灰度变化超过某个适当阈值TH的像素点当作边缘点。Sobel算法的优点是计算简单,速度快。图像加权中值滤波。由于图像中的边缘和噪声在频域中均表现为高频成分,所以在边缘检测之前有必要先对图像进行一次滤波处理,减少噪声对边缘检测的影响。中值滤波是一种非线性信号的处理方法,在图像处理中,常用来保护边缘信息,保证滤波的效果。加权中值滤波,首先对每个窗口进行排序,取适当的比例,进行曲线拟合拟合后的曲线斜率表征了此窗口的图像特征,再根据图像各部分特性适当的选择权重进行加权。MATLAB 产品族可以用来进行以下各种工作:数值分析,数值和符号计算,工程与科学绘图,控制系统的设计与仿真,数字图像处理技术,数字信号处理技术,通讯系统设计与仿真,财务与金融工程,管理与调度优化计算(运筹学)。MATLAB 的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。附加的工具箱(单独提供的专用MATLAB函数集)扩展了MATLAB 环境,以解决这些应用领域内特定类型的问题。MATLAB自产生之日起就具有方便的数据可视化功能,以将向量和矩阵用图形表现出来,并且可以对图形进行标注和打印。高层次的作图包括二维和三维的可视化、图象处理、动画和表达式作图。可用于科学计算和工程绘图。新版本的MATLAB对整个图形处理功能作了很大的改进和完善,使它不仅在一般数据可视化软件都具有的功能方面更加完善,而且对于一些其他软件所没有的功能,MATLAB同样表现了出色的处理能力。同时对一些特殊的可视化要求, MATLAB也有相应的功能函数,保证了用户不同层次的要求。另外新版本的MATLAB还着重在图形用户界面(GUI)的制作上作了很大的改善,对这方面有特殊要求的用户也可以得到满足。本文运用MATLAB软件进行硬币表面形状分析,很方便却又真实的表达出硬币的表面形状,为后续的检测分析与目标识别提供便捷的服务。1.3 课程设计目的Matlab技术课程设计是利用Matlab应用软件的基础知识和基本程序设计方法,解决选修专业课程中数字信号处理的实际应用问题,从而加深对理论知识的掌握,并把所学的知识系统、高效的贯穿到实践中来,避免理论与实践的脱离。同时提高独立编程水平,并在实践中不断完善理论基础,有助于培养综合能力。1.4 课程设计的内容1、查阅图像处理与分析相关的资料;2、掌握目标检测与识别的有关知识;3、熟悉MATLAB软件的操作及用途;4、用MATLAB对硬币表面进行目标检测识别分析;5、完成论文的编写和外文翻译。第二章 MATLAB简介2.1 MATLAB介绍MATLAB是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。编辑本段简介MATLAB是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。MATLAB和Mathematica、Maple、MathCAD并称为四大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他汇编语言的程序等,主要应用于工程计算、控制设计、信号处理与通信、图像处理、信号检测、金融建模设计与分析等领域。MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C+,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用。2.2 MATLAB 产品系列重要功能:MATLAB: MATLAB 语言的单元测试框架Trading Toolbox: 一款用于访问价格并将订单发送到交易系统的新产品Financial Instruments Toolbox: 赫尔-怀特、线性高斯和 LIBOR 市场模型的校准和 Monte Carlo 仿真Image Processing Toolbox: 使用有效轮廓进行图像分割、对 10 个函数实现 C 代码生成,对 11 个函数使用 GPU 加速Image Acquisition Toolbox: 提供了用于采集图像、深度图和框架数据的 Kinect for Windows传感器支持Statistics Toolbox: 用于二进制分类的支持向量机 (SVM)、用于缺失数据的 PCA 算法和 Anderson-Darling 拟合优度检验Data Acquisition Toolbox: 为 Digilent Analog Discovery Design Kit 提供了支持包Vehicle Network Toolbox: 为访问 CAN 总线上的 ECU 提供 XCP 支持Simulink 产品系列重要功能Simulink: Simulation Performance Advisor,链接库模块的封装,以及通过逻辑表达式控制有效变量Simulink: 除 LEGO MINDSTORMS NXT、Arduino、Pandaboard 和 Beagleboard 外,还为 Raspberry Pi 和 Gumstix Overo 硬件提供了内置支持SimRF: 针对快速仿真和模型加载时间的电路包络求解器SimMechanics: 发布了用于从 CAD 和其他系统导入模型的 XML 架构Simulink Design Verifier: 数组超出边界检查MATLAB 和 Simulink 的系统工具箱Communications System Toolbox: Sphere 解码器和 Constellation 框图系统对象Computer Vision System Toolbox: Viola-Jones 对象检测培训,FREAK 特征提取和其他新函数DSP System Toolbox: 频谱分析仪和逻辑分析示波器,以及时域示波器的触发Phased Array System Toolbox: 极化支持、数组锥化以及针对传感器数组分析、波形分析和雷达方程计算的应用程序代码生成和实现Simulink Coder: 减少了从 Stateflow 调用的 Simulink 函数的数据副本Fixed-Point Designer: 一款结合了 Fixed-Point Toolbox 和 Simulink Fixed Point 功能的新产品HDL Verifier: 从 MATLAB 生成 HDL 测试工作台编程创造的功能在命令行或者在手稿里确定单个行的函数的匿名的函数当任何表示是真实的时,有条件的休息点,让你停止块意见出于记分员可发表意见的一个代码的整个部分数学整数算术,让你处理更大的整数数据集合单精度运算,线性代数,FFT和过滤,使你能够处理更大的单精度数据集合更坚固的计算几何学程序使用Qhull.1,给更大的对算法选择的控制linsolve 功能,使你能够迅速通过指定系数的基体的结构解决线性方程序的系统和multipoint边值问题图形和3D新绘制的交互式建立和编辑的接口密谋而没有输入M代码来自一个外形的M 代码产生,让你按部就班地重新使用风俗密谋提高绘制注释,对取值点的注释的包括画形状,物体调整,并且别住1MMX的JIT 加速器产生对整数算术起作用处理器制造商提供尽可能完善图书馆,包括multiprocessor 支持和更快的FFT 常规(使用FFTW3的新版本)编辑本段优势特点1) 高效的数值计算及符号计算功能,能使用户从繁杂的数学运算分析中解脱出来;2) 具有完备的图形处理功能,实现计算结果和编程的可视化;3) 友好的用户界面及接近数学表达式的自然化语言,使学者易于学习和掌握;4) 功能丰富的应用工具箱(如信号处理工具箱、通信工具箱等) ,为用户提供了大量方便实用的处理工具。编程环境MATLAB由一系列工具组成。这些工具方便用户使用MATLAB的函数和文件,其中许多工具采用的是图形用户界面。包括MATLAB桌面和命令窗口、历史命令窗口、编辑器和调试器、路径搜索和用于用户浏览帮助、工作空间、文件的浏览器。随着MATLAB的商业化以及软件本身的不断升级,MATLAB的用户界面也越来越精致,更加接近Windows的标准界面,人机交互性更强,操作更简单。而且新版本的MATLAB提供了完整的联机查询、帮助系统,极大的方便了用户的使用。简单的编程环境提供了比较完备的调试系统,程序不必经过编译就可以直接运行,而且能够及时地报告出现的错误及进行出错原因分析。简单易用Matlab是一个高级的矩阵/阵列语言,它包含控制语句、函数、数据结构、输入和输出和面向对象编程特点。用户可以在命令窗口中将输入语句与执行命令同步,也可以先编写好一个较大的复杂的应用程序(M文件)后再一起运行。新版本的MATLAB语言是基于最为流行的C+语言基础上的,因此语法特征与C+语言极为相似,而且更加简单,更加符合科技人员对数学表达式的书写格式。使之更利于非计算机专业的科技人员使用。而且这种语言可移植性好、可拓展性极强,这也是MATLAB能够深入到科学研究及工程计算各个领域的重要原因。强处理能力MATLAB是一个包含大量计算算法的集合。其拥有600多个工程中要用到的数学运算函数,可以方便的实现用户所需的各种计算功能。函数中所使用的算法都是科研和工程计算中的最新研究成果,而前经过了各种优化和容错处理。在通常情况下,可以用它来代替底层编程语言,如C和C+ 。在计算要求相同的情况下,使用MATLAB的编程工作量会大大减少。MATLAB的这些函数集包括从最简单最基本的函数到诸如矩阵,特征向量、快速傅立叶变换的复杂函数。函数所能解决的问题其大致包括矩阵运算和线性方程组的求解、微分方程及偏微分方程的组的求解、符号运算、傅立叶变换和数据的统计分析、工程中的优化问题、稀疏矩阵运算、复数的各种运算、三角函数和其他初等数学运算、多维数组操作以及建模动态仿真等。图形处理MATLAB自产生之日起就具有方便的数据可视化功能,以将向量和矩阵用图形表现出来,并且可以对图形进行标注和打印。高层次的作图包括二维和三维的可视化、图象处理、动画和表达式作图。可用于科学计算和工程绘图。新版本的MATLAB对整个图形处理功能作了很大的改进和完善,使它不仅在一般数据可视化软件都具有的功能(例如二维曲线和三维曲面的绘制和处理等)方面更加完善,而且对于一些其他软件所没有的功能(例如图形的光照处理、色度处理以及四维数据的表现等),MATLAB同样表现了出色的处理能力。同时对一些特殊的可视化要求,例如图形对话等,MATLAB也有相应的功能函数,保证了用户不同层次的要求。另外新版本的MATLAB还着重在图形用户界面(GUI)的制作上作了很大的改善,对这方面有特殊要求的用户也可以得到满足。MATLAB对许多专门的领域都开发了功能强大的模块集和工具箱。一般来说,它们都是由特定领域的专家开发的,用户可以直接使用工具箱学习、应用和评估不同的方法而不需要自己编写代码。领域,诸如数据采集、数据库接口、概率统计、样条拟合、优化算法、偏微分方程求解、神经网络、小波分析、信号处理、图像处理、系统辨识、控制系统设计、LMI控制、鲁棒控制、模型预测、模糊逻辑、金融分析、地图工具、非线性控制设计、实时快速原型及半物理仿真、嵌入式系统开发、定点仿真、DSP与通讯、电力系统仿真等,都在工具箱(Toolbox)家族中有了自己的一席之地。程序接口新版本的MATLAB可以利用MATLAB编译器和C/C+数学库和图形库,将自己的MATLAB程序自动转换为独立于MATLAB运行的C和C+代码。允许用户编写可以和MATLAB进行交互的C或C+语言程序。另外,MATLAB网页服务程序还容许在Web应用中使用自己的MATLAB数学和图形程序。MATLAB的一个重要特色就是具有一套程序扩展系统和一组称之为工具箱的特殊应用子程序。工具箱是MATLAB函数的子程序库,每一个工具箱都是为某一类学科专业和应用而定制的,主要包括信号处理、控制系统、神经网络、模糊逻辑、小波分析和系统仿真等方面的应用。应用软件开发在开发环境中,使用户更方便地控制多个文件和图形窗口;在编程方面支持了函数嵌套,有条件中断等;在图形化方面,有了更强大的图形标注和处理功能,包括对性对起连接注释等;在输入输出方面,可以直接向Excel和HDF5进行连接。编辑本段应用MATLAB 产品族可以用来进行以下各种工作:数值分析数值和符号计算工程与科学绘图控制系统的设计与仿真数字图像处理技术数字信号处理技术通讯系统设计与仿真 MATLAB在通讯系统设计与仿真的应用财务与金融工程管理与调度优化计算(运筹学)MATLAB 的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。附加的工具箱(单独提供的专用MATLAB函数集)扩展了MATLAB 环境,以解决这些应用领域内特定类型的问题。工具常用工具箱MATLAB包括拥有数百个内部函数的主包和三十几种工具包。工具包又可以分为功能性工具包和学科工具包。功能工具包用来扩充MATLAB的符号计算,可视化建模仿真,文字处理及实时控制等功能。学科工具包是专业性比较强的工具包,控制工具包,信号处理工具包,通信工具包等都属于此类。开放性使MATLAB广受用户欢迎。除内部函数外,所有MATLAB主包文件和各种工具包都是可读可修改的文件,用户通过对源程序的修改或加入自己编写程序构造新的专用工具包。Matlab Main Toolboxmatlab主工具箱Control System Toolbox控制系统工具箱Communication Toolbox通讯工具箱Financial Toolbox财政金融工具箱System Identification Toolbox系统辨识工具箱Fuzzy Logic Toolbox模糊逻辑工具箱Higher-Order Spectral Analysis Toolbox高阶谱分析工具箱Image Processing Toolbox图象处理工具箱computer vision system toolbox-计算机视觉工具箱LMI Control Toolbox线性矩阵不等式工具箱Model predictive Control Toolbox模型预测控制工具箱-Analysis and Synthesis Toolbox分析工具箱Neural Network Toolbox神经网络工具箱Optimization Toolbox优化工具箱Partial Differential Toolbox偏微分方程工具箱Robust Control Toolbox鲁棒控制工具箱Signal Processing Toolbox信号处理工具箱Spline Toolbox样条工具箱Statistics Toolbox统计工具箱Symbolic Math Toolbox符号数学工具箱Simulink Toolbox动态仿真工具箱Wavele Toolbox小波工具箱DSP system toolbox-DSP处理工具箱常用函数Matlab内部常数eps:浮点相对精度exp:自然对数的底数ei 或j:基本虚数单位inf 或Inf:无限大, 例如1/0nan或NaN:非数值(Not a number),例如0/0,/pi:圆周率intmax:可表达的最大正整数。intmin:可表达的最小负整数。realmax:系统所能表示的最大正实数,默认1.797710308realmin:系统所能表示的最小负实数,默认2.2251e10(-308)nargin:函数的输入引数个数nargout:函数的输出引数个数lasterr:存放最新的错误信息lastwarn:存放最新的警告信息MATLAB常用基本数学函数abs(x):纯量的绝对值或向量的长度angle(z):复数z的相角(Phase angle)sqrt(x):开平方real(z):复数z的实部imag(z):复数z的虚部conj(z):复数z的共轭复数整数fix(x):无论正负,舍去小数至最近整数floor(x):下取整,即舍去正小数至最近整数ceil(x):上取整,即加入正小数至最近整数rat(x):将实数x化为多项分数展开rats(x):将实数x化为分数表示sign(x):符号函数(Signum function)。当x0时,sign(x)=1。rem(x,y):求x除以y的余数gcd(x,y):整数x和y的最大公因数lcm(x,y):整数x和y的最小公倍数exp(x) :自然指数pow2(x):2的指数log(x):以e为底的对数,即自然对数或log2(x):以2为底的对数log10(x):以10为底的对数MATLAB常用三角函数sin(x):正弦函数cos(x):余弦函数tan(x):正切函数asin(x):反正弦函数acos(x):反余弦函数atan(x):反正切函数atan2(x,y):四象限的反正切函数sinh(x):双曲正弦函数cosh(x):双曲余弦函数tanh(x):双曲正切函数asinh(x):反双曲正弦函数acosh(x):反双曲余弦函数atanh(x):反双曲正切函数适用于向量的常用函数有min(x): 向量x的元素的最小值max(x): 向量x的元素的最大值mean(x): 向量x的元素的平均值median(x): 向量x的元素的中位数std(x): 向量x的元素的标准差diff(x): 向量x的相邻元素的差sort(x): 对向量x的元素进行排序(Sorting)length(x): 向量x的元素个数norm(x): 向量x的欧氏(Euclidean)长度sum(x): 向量x的元素总和prod(x): 向量x的元素总乘积cumsum(x): 向量x的累计元素总和cumprod(x): 向量x的累计元素总乘积dot(x, y): 向量x和y的内积cross(x, y): 向量x和y的外积MATLAB基本绘图函数plot: x轴和y轴均为线性刻度(Linear scale)loglog: x轴和y轴均为对数刻度(Logarithmic scale)semilogx: x轴为对数刻度,y轴为线性刻度semilogy: x轴为线性刻度,y轴为对数刻度matlab插值和样条 matlab插值和样条plot绘图函数的参数字元颜色 字元图线型态y 黄色. 点k 黑色o 圆w 白色x xb 蓝色+ +g 绿色* *r 红色- 实线c 亮青色: 点线m 锰紫色-. 点虚线- 虚线注解xlabel(Input Value); % x轴注解ylabel(Function Value); % y轴注解title(Two Trigonometric Functions); % 图形标题legend(y = sin(x),y = cos(x); % 图形注解grid on; % 显示格线二维绘图函数bar 长条图errorbar 图形加上误差范围fplot 较精确的函数图形polar 极座标图hist 累计图rose 极座标累计图stairs阶梯图stem 针状图fill 实心图feather 羽毛图compass 罗盘图quiver向量场图MATLAB中有趣的演示实例MATLAB中也同样有许多有意思的实例,为提高读者对MATLAB和Simulink的兴趣,特举部分以供参考。具体如下,运行的时候只要将“:”前面的代码复制到MATLAB中就可以了,随之会出现各种各样的演示实例,对初学者帮助不小哦。平面与立体绘图graf2d :XY平面绘图(火柴棒)graf2d2 :XYZ立体绘图(切片)hndlgraf :平面显示线型处理窗口及命令演示hndlaxis :平面显示处理窗口及命令演示graf3d :立体显示处理窗口及命令演示 复杂函数的三维绘图cplxdemo :复杂的XYZ立体图形 等高线绘制quivdemo :等高线箭头显示 动画lorenz :Lorenz吸引子动画显示电影vibes :L-形薄膜振动Fourier变换sshow sunspots :太阳黑点数据的傅里叶分析fftdemo :分析噪声序列中两组数据的相关度数据拟合sshow fitdemo :显示非线性数据拟合过程census :预测世界人口spline2d :样条拟合稀疏矩阵sshow sparsity :降阶 游戏xpbombs :仿Windows系统自带的扫雷游戏life :生命发展游戏 三维效果图klein1 :肤色三维效果图tori4 :四个首尾相接的圆环spharm2 :球形和声cruller :类似油饼的东西xpklein :Klein瓶 bottlemodes :L-形薄膜的12中模态logo :MATLAB的Logoxpquad :不同比例的巴尔体超四方体truss :二维桁架的12个模模态travel :旅行商问题动画演示wrldtrv :在地球仪上演示两地间的飞行线路makevase :通过点击鼠标来制作花瓶xpsound :声音样本分析funfuns :综合了找零点,最小化和单输入函数积分功能sshow e2pi :epi或者piequake :地震波可视化penny :便士可视化imageext :改变图像的映射颜色earthmap :地球仪 优化工具箱bandem :香蕉最优化展示expo-style banana optimizationsshow filtdem :滤波效果演示filter effect demosshow filtdem2 :滤波设计演示filter design demo1cztdemo :FFT和CZT (两种不同类型的Z-变换算法)phone :演示电话通声音的时间与频率的关系sigdemo1 :离散信号的时频图,可用鼠标设置sigdemo2 :连续信号的时频图,可用鼠标设置filtdemo :低通滤波器的交互式设计moddemo :声音信号的调制sosdemo :数字滤波器的切片图 神经网络工具箱neural :神经网络模块组firdemo :二维FIR滤波器nlfdemo :非线性滤波器dctdemo :DCT演示mlpdm1 :利用多层感知器神经网络拟合曲线动画mlpdm2 :利用多层感知器神经网络进行XOR问题运算 模糊逻辑工具箱invkine :运动逆问题juggler :跳球戏法fcmdemo :FCMslcp :类似倒立摆动画slcp1 :类似倒立摆动画cart and a varying poleslcpp1 :类似倒立摆动画,有两个摆,一个可以变化sltbu :卡车支援slbb :类似于翘翘板第三章 硬币表面形状的自动检测与识别3.1 硬币识别工作原理3.1.1 硬币识别工作原理硬币表面形状的自动检测与识别的基本工作原理为:将拍摄到的包含硬币的图像通过视频卡输入到计算机中进行预处理,再由检索模块对牌照进行搜索、检测、定位,并分割出包含牌照字符的矩形区域,然后对牌照字符进行二值化并将其分割为单个字符,然后输入JPEG或BMP格式的数字,输出则为硬币的数字。图3.1 工作原理图 3.1.2硬币识别系统组成(1)图像预处理:对硬币图像进行图像转换、图像增强和边缘检测等。(2)图像采集:从预处理后的硬币照片中分割出硬币图像(3)字符分割:对硬币图像进行几何校正、去噪、二值化以及字符分割以从车牌图像中分离出组成图像的单个字符图像(4)字符识别:对分割出来的字符进行预处理(二值化、归一化),然后分析提取,对分割出的字符图像进行识别给出文本形式的硬币数字。3.2 硬币识别系统的matlab实现3.2.1 图像预处理输入的彩色图像包含大量颜色信息,会占用较多的存储空间,且处理时也会降低系统的执行速度,因此对图像进行识别等处理时,常将彩色图像转换为灰度图像,以加快处理速度。对图像进行灰度化处理、边缘提取、再利用形态学方法对车牌进行定位。具体步骤如下:首先对图像进行灰度转换,二值化处理然后采用4X1的结构元素对图像进行腐蚀,去除图像的噪声。采用25X25的结构元素,对图像进行闭合应算使车牌所在的区域形成连通。在进行形态学滤波去除其它区域。图3.2 硬币照片I=imread(DSC01344.jpg);%读取图像figure(); subplot(3,2,1),imshow(I), title(原始图像);I1=rgb2gray(I);%转化为灰度图像subplot(3,2,2),imshow(I1),title(灰度图像);图3.3 灰度图像I2=edge(I1,robert,0.09,both);%采用robert算子进行边缘检测subplot(3,2,3),imshow(I2),title(边缘检测后图像);图3.4 边缘检测后图像se=1;1;1; %线型结构元素 I3=imerode(I2,se); %腐蚀图像subplot(3,2,4),imshow(I3),title(腐蚀后边缘图像);图3.5 腐蚀后边缘图像se=strel(rectangle,25,25); 矩形结构元素I4=imclose(I3,se);%图像聚类、填充图像subplot(3,2,5),imshow(I4),title(填充后图像);图3.6 填充后图像I5=bwareaopen(I4,2000);%去除聚团灰度值小于2000的部分subplot(3,2,6),imshow(I5),title(形态滤波后图像);图3.7 形态滤波后图像%求的硬币的行起始位置和终止位置% y,x,z=size(I5);I6=double(I5); Y1=zeros(y,1); for i=1:y for j=1:x if(I6(i,j,1)=1) Y1(i,1)= Y1(i,1)+1; end end end temp MaxY=max(Y1); figure(); subplot(3,2,1),plot(0:y-1,Y1),title(行方向像素点灰度值累计和),xlabel(行值),ylabel(像素); 图3.8 行方向像素点灰度值累积和PY1=MaxY; while (Y1(PY1,1)=50)&(PY11) PY1=PY1-1; end PY2=MaxY; while (Y1(PY2,1)=50)&(PY2y) PY2=PY2+1; end IY=I(PY1:PY2,:,:);%求的车牌的列起始位置和终止位置% X1=zeros(1,x); for j=1:x for i=PY1:PY2 if(I6(i,j,1)=1) X1(1,j)= X1(1,j)+1; end end end subplot(3,2,2),plot(0:x-1,X1),title(列方向像素点灰度值累计和),xlabel(列值),ylabel(像数);图3.9 列方向像素点灰度值累积和PX1=1; while (X1(1,PX1)3)&(PX1x) PX1=PX1+1; end PX2=x; while (X1(1,PX2)PX1) PX2=PX2-1; end PX1=PX1-1; PX2=PX2+1; %分割出硬币图像%dw=I(PY1:PY2,PX1:PX2,:); subplot(3,2,3),imshow(dw),title(定位剪切后的彩色硬币
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年陪诊师考试服务态度试题及答案
- 2025年东莞市人工智能训练师初赛竞赛练习题及答案
- (试题)社会救助公共基础知识题库及答案
- 施工现场应急预案方案
- 2025年新媒体运营师中级考试预测题及实战技巧解析
- 2025年护士招聘面试预测题及应对技巧
- 北京市门头沟区2023-2024学年九年级下学期初中学业水平考试(一模)化学试题及答案
- 桃花姬阿胶糕课件
- 桃江眼科知识培训班课件
- 2025年财务主管职位面试预测题及应对建议
- JJF 1847-2020 电子天平校准规范-(高清现行)
- 人工智能遥感解译介绍课件
- 大信审计执业问题解答-存货监盘审计指引
- 锚杆支护技术规范正式版本
- 婚育情况证明
- 下一代互联网技术
- 皮肤知识与问题性皮肤分析(入行必看)
- 单位消防安全评估报告(模板)
- 江西之江化工“7.2”压力容器爆炸事故
- 岩土工程勘察 第七章 静力触探试验ppt课件
- 流行性出血热疫苗接种知情同意书
评论
0/150
提交评论