《MATLAB应用》课程设计说明书MATLAB图像处理

上传人:hs****ma 文档编号:553788650 上传时间:2023-04-13 格式:DOC 页数:34 大小:2.22MB
返回 下载 相关 举报
《MATLAB应用》课程设计说明书MATLAB图像处理_第1页
第1页 / 共34页
《MATLAB应用》课程设计说明书MATLAB图像处理_第2页
第2页 / 共34页
《MATLAB应用》课程设计说明书MATLAB图像处理_第3页
第3页 / 共34页
《MATLAB应用》课程设计说明书MATLAB图像处理_第4页
第4页 / 共34页
《MATLAB应用》课程设计说明书MATLAB图像处理_第5页
第5页 / 共34页
点击查看更多>>
资源描述

《《MATLAB应用》课程设计说明书MATLAB图像处理》由会员分享,可在线阅读,更多相关《《MATLAB应用》课程设计说明书MATLAB图像处理(34页珍藏版)》请在金锄头文库上搜索。

1、武汉理工大学MATLAB应用课程设计说明书课程设计任务书学生姓名: 专业班级: 通信 指导教师: 工作单位: 信息工程学院 题 目: MATLAB图像处理 初始条件:(1)MATLAB软件(2)数字信号处理与图像处理基本知识要求完成的主要任务: (包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)(1)能够对图像亮度和对比度变化调整,并比较结果;(2)编写程序通过最近邻插值和双线性插值等算法将用户所选取的图像区域进行放大和缩小整数倍的和旋转操作,并保存,比较几种插值的效果;(3)图像直方图统计和直方图均衡,要求显示直方图统计,比较直方图均衡后的效果;(4)对图像加入各种噪声,比较效果。

2、时间安排:第12周:安排任务,分组第13-14周:设计仿真,撰写报告第15周:完成设计,提交报告,答辩指导教师签名: 年 月 日系主任(或责任教师)签名: 年 月 日摘 要数字图像处理技术是20世纪60年代发展起来的一门新兴学科,随着图像处理理论和方法的进一步完善,使得数字图像处理技术在各个领域得到了广泛应用,并显示出广阔的应用前景。MATLAB既是一种直观、高效的计算机语言,同时又是一个科学计算平台。它为数据分析和数据可视化、算法和应用程序开发提供了最核心的数学和高级图形工具。根据它提供的500多个数学和工程函数,工程技术人员和科学工作者可以在它的集成环境中交互或编程以完成各自的计算。 MA

3、TLAB中集成了功能强大的图像处理工具箱。由于MATLAB语言的语法特征与C语言极为相似,而且更加简单,更加符合科技人员对数学表达式的书写格式,而且这种语言可移植性好、可扩展性强,再加上其中有丰富的图像处理函数,所以MATLAB在图像处理的应用中具有很大的优势。本文基于MATLAB的图像处理的基本运算,首先对图像进行了亮度和对比度的调整、旋转、缩放等操作,然后对图像进行了直方图统计和直方图均衡,最后对图像加入了各种噪声并进行了去噪处理。关键词:数字图像处理,MATLAB目 录1 绪论11.1 数字图像处理简介11.2 MATLAB简介22 图像的获取52.1 图像的读取与保存53 图像的处理7

4、3.1 图像的亮度和对比度调整73.1.1 图像的亮度调整73.1.2 图像的对比度调整83.2 区域图像的选取与保存93.3 利用算法对图像的处理113.3.1 最近邻插值法113.3.2 双线性插值法153.4 图像的直方图统计和直方图均衡183.4.1 图像的直方图统计183.4.2 图像的直方图均衡193.5 图像的噪声加入与滤波处理213.5.1 加高斯噪声213.5.2 加椒盐噪声223.5.3 高斯噪声的自适应滤波处理233.5.4 椒盐噪声的中值滤波处理244 总结及心得体会265 参考文献27I1 绪论1.1 数字图像处理简介数字图像处理(Digital Image Proc

5、essing)又称为计算机图像处理,它是指将图像信号转换成数字信号并利用计算机对其进行处理的过程。数字图像处理有以下6种常用方法:1)图像变换由于图像阵列很大,直接在空间域中进行处理,涉及计算量很大。因此,往往采用各种图像变换的方法,如傅立叶变换、沃尔什变换、离散余弦变换等间接处理技术,将空间域的处理转换为变换域处理,不仅可减少计算量,而且可获得更有效的处理(如傅立叶变换可在频域中进行数字滤波处理)。目前新兴研究的小波变换在时域和频域中都具有良好的局部化特性,它在图像处理中也有着广泛而有效的应用。 2)图像编码压缩图像编码压缩技术可减少描述图像的数据量(即比特数),以便节省图像传输、处理时间和

6、减少所占用的存储器容量。压缩可以在不失真的前提下获得,也可以在允许的失真条件下进行。编码是压缩技术中最重要的方法,它在图像处理技术中是发展最早且比较成熟的技术。 3)图像增强和复原图像增强和复原的目的是为了提高图像的质量,如去除噪声,提高图像的清晰度等。图像增强不考虑图像降质的原因,突出图像中所感兴趣的部分。如强化图像高频分量,可使图像中物体轮廓清晰,细节明显;如强化低频分量可减少图像中噪声影响。图像复原要求对图像降质的原因有一定的了解,一般讲应根据降质过程建立“降质模型”,再采用某种滤波方法,恢复或重建原来的图像。 4)图像分割图像分割是数字图像处理中的关键技术之一。图像分割是将图像中有意义

7、的特征部分提取出来,其有意义的特征有图像中的边缘、区域等,这是进一步进行图像识别、分析和理解的基础。虽然目前已研究出不少边缘提取、区域分割的方法,但还没有一种普遍适用于各种图像的有效方法。因此,对图像分割的研究还在不断深入之中,是目前图像处理中研究的热点之一。 5)图像描述图像描述是图像识别和理解的必要前提。作为最简单的二值图像可采用其几何特性描述物体的特性,一般图像的描述方法采用二维形状描述,它有边界描述和区域描述两类方法。对于特殊的纹理图像可采用二维纹理特征描述。随着图像处理研究的深入发展,已经开始进行三维物体描述的研究,提出了体积描述、表面描述、广义圆柱体描述等方法。 6)图像分类(识别

8、)图像分类(识别)属于模式识别的范畴,其主要内容是图像经过某些预处理(增强、复原、压缩)后,进行图像分割和特征提取,从而进行判决分类。图像分类常采用经典的模式识别方法,有统计模式分类和句法(结构)模式分类,近年来新发展起来的模糊模式识别和人工神经网络模式分类在图像识别中也越来越受到重视。1.2 MATLAB简介MATLAB是矩阵实验室(Matrix Laboratory)的简称,是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。Matlab语言有如下特点:1)编程效率高它

9、是一种面向科学与工程计算的高级语言,允许用数学形式的语言编写程序,且比Basic、Fortran和C等语言更加接近我们书写计算公式的思维方式,用Matlab编写程序犹如在演算纸上排列出公式与求解问题。因此,Matlab语言也可通俗地称为演算纸式科学算法语言由于它编写简单,所以编程效率高,易学易懂。2)用户使用方便Matlab语言是一种解释执行的语言(在没被专门的工具编译之前),它灵活、方便,其调试程序手段丰富,调试速度快,需要学习时间少。人们用任何一种语言编写程序和调试程序一般都要经过四个步骤:编辑、编译、连接以及执行和调试。各个步骤之间是顺序关系,编程的过程就是在它们之间作瀑布型的循环。Ma

10、tlab语言与其它语言相比,较好地解决了上述问题,把编辑、编译、连接和执行融为一体。它能在同一画面上进行灵活操作快速排除输入程序中的书写错误、语法错误以至语意错误,从而加快了用户编写、修改和调试程序的速度,可以说在编程和调试过程中它是一种比VB还要简单的语言。3)扩充能力强 高版本的Matlab语言有丰富的库函数,在进行复杂的数学运算时可以直接调用,而且Matlab的库函数同用户文件在形成上一样,所以用户文件也可作为Matlab的库函数来调用。因而,用户可以根据自己的需要方便地建立和扩充新的库函数,以便提高Matlab使用效率和扩充它的功能。另外,为了充分利用Fortran、C等语言的资源,包

11、括用户已编好的Fortran,C语言程序,通过建立Me调文件的形式,混合编程,方便地调用有关的Fortran,C语言的子程序。4)语句简单,内涵丰富Mat1ab语言中最基本最重要的成分是函数,其一般形式为a,6,c = fun(d,e,f,),即一个函数由函数名,输入变量d,e,f,和输出变量a,b,c组成,同一函数名F,不同数目的输入变量(包括无输入变量)及不同数目的输出变量,代表着不同的含义(有点像面向对象中的多态性。这不仅使Matlab的库函数功能更丰富,而大大减少了需要的磁盘空间,使得Matlab编写的M文件简单、短小而高效。5)高效方便的矩阵和数组运算Matlab语言象Basic、F

12、ortran和C语言一样规定了矩阵的算术运算符、关系运算符、逻辑运算符、条件运算符及赋值运算符,而且这些运算符大部分可以毫无改变地照搬到数组间的运算,有些如算术运算符只要增加“”就可用于数组间的运算,另外,它不需定义数组的维数,并给出矩阵函数、特殊矩阵专门的库函数,使之在求解诸如信号处理、建模、系统识别、控制、优化等领域的问题时,显得大为简捷、高效、方便,这是其它高级语言所不能比拟的。在此基础上,高版本的Matlab已逐步扩展到科学及工程计算的其它领域。因此,不久的将来,它一定能名符其实地成为“万能演算纸式的”科学算法语言。6)方便的绘图功能Matlab的绘图是十分方便的,它有一系列绘图函数(

13、命令),例如线性坐标、对数坐标,半对数坐标及极坐标,均只需调用不同的绘图函数(命令),在图上标出图题、XY轴标注,格(栅)绘制也只需调用相应的命令,简单易行。另外,在调用绘图函数时调整自变量可绘出不变颜色的点、线、复线或多重线。这种为科学研究着想的设计是通用的编程语言所不及的。2 图像的获取2.1 图像的读取与保存利用函数imread()可完成图形图像文件的读取,其调用格式为:a=imread(filename,fmt)X,map=imread(filename,fmt).=imread(filename).=imread(filename,idx) (只对TIF格式的文件).=imread(

14、filename,ref) (只对HDF格式的文件)通常,读取的大多数图像均为8bit,当这些图像加载到内存中时,Matlab就将其存放在类uint8中。此为Matlab还支持16bit的PNG和TIF图像,当读取这类文件时,Matlab就将其存贮在uint16中。对于索引图像,即使图像阵列的本身为类uint8或类uint16,imread函数仍将颜色映象表读取并存贮到一个双精度的浮点类型的阵列中。利用函数imwrite()可以完成对图像数据的保存操作,语法:imwrite(A,filename,fmt)imwrite(X,map,filename,fmt)imwrite(.,filename)imwrite(.,Param1,Val1,Param2,Val2.)A可以是一个M -的- N的(灰度图像)或M -的- N的按3(真彩色图像)阵列,但它不能是一个空数组。至于TIFF文件,A可以是一个m -的- N的 4数组,包含颜色数据,使用的CMYK色彩空间。对于GIF文件,A可以是一个m -的- N的按1由- P的含灰度或索引图像阵列 - RGB图像不支持。程序如下:ren=imread(C:matlab7我的ren.jpg); %读取图像路径figuresubplot(1,1,1)imshow(ren); %显示图像title(原彩色图)

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号