欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    数字图像处理课程设计-基于matlab图像增强的比较及其理论分析.doc

    • 资源ID:54388413       资源大小:188KB        全文页数:23页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    数字图像处理课程设计-基于matlab图像增强的比较及其理论分析.doc

    课程设计任务书学生姓名: 专业班级: 指导教师: 工作单位: 题 目:基于matlab图像增强的比较及其理论分析初始条件:1. 提供实验室机房及其matlab软件;2. 给定一张灰度图片,模拟加入高斯噪声、椒盐噪声等若干噪声,然后使用中值滤波、均值滤波等方法进行图像增强。要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求):(1)了解对灰度图片处理的基本原理和方法;(2)熟悉掌握matlab软件;(3)对灰度图片模拟加入噪声;(4)利用matlab对加入噪声的该图片进行处理,记录每一种方法的过程,并进行比较,分析哪种噪声的所对应的增强方法效果最好;(5)在进行处理时要对每一步处理进行理论分析;(6)要求阅读相关参考文献不少于5篇;(7)根据课程设计有关规范,按时、独立完成课程设计说明书。时间安排: (1) 布置课程设计任务,查阅资料 四天; (2) 利用软件进行的图片处理,记录其结果 一周; (3) 完成课程设计报告书 三天;指导教师签名: 年 月 日系主任(或责任教师)签名: 年 月 日目录摘要I1 Matlab软件简介11.1 Matlab语言的历史11.2 Matlab软件概况12 原理分析32.1 数字图像噪声32.2 空间域图像增强32.3 均值滤波32.4 中值滤波43 程序设计63.1 程序设计思路63.2 要使用的Matlab函数64 程序流程图84.1 添加高斯噪声流程图84.2 添加椒盐噪声流程图84.3 均值滤波流程图94.4 中值滤波流程图95 源程序105.1 添加高斯噪声再滤波105.2 添加椒盐噪声再滤波116 程序运行结果及分析136.1 高斯噪声滤波结果136.2 椒盐噪声滤波结果136.3 结果分析147 课程设计心得体会15参考文献16致谢17摘要图像在实际应用中可能会遇到各种噪声干扰,如高斯噪声、椒盐噪声等。可以采用空间域图像增强的办法对其进行处理,减少噪声的影响。本次课设使用的是空间滤波对图片处理,包括均值滤波和中值滤波。关键词:高斯噪声,椒盐噪声,均值滤波,中值滤波1 Matlab软件简介1.1 Matlab语言的历史70年代后期,身为美国New Mexico大学计算机系系主任的Cleve Moler发现学生用FORTRAN编写接口程序很费时间,于是他开始自己动手,利用业余时间为学生编写EISPACK和LINPACK的接口程序。Cleve Moler给这个接口程序取名为Matlab。1984年,为了推广Matlab在数值计算中的应用,Cleve Moler、Johon Little等正式成立了Math works公司,从而把Matlab推向市场,并开始了对Matlab工具相等的开发设计。 1.2 Matlab软件概况Matlab是MatrixLaboratory的缩写,意为矩阵实验室。它具有强大的矩阵处理功能和绘图功能,进还能进行文字处理,绘图,建模仿真等功能。随着版本的不断升级,它在数值计算及符号计算功能上得到了进一步完善。Matlab已经发展成为多学科、多种工作平台的功能强大的大型软件。在欧美等高校,Matlab已经成为线性代数、自动控制理论、概率论及数理统计、数字信号处理、时间序列分析、动态系统仿真等高级课程的基本教学工具。Matlab有以下一些特点:Matlab的帮助功能很强大,自带有详细的帮助手册,基于HTML的完整的帮助功能,也可以用help命令来得到帮助信息。程序语法与C语言类似,设计自由度大,方便我们编程。例如在Matlab里,用户无需对变量预定义就可使用。大量数学函数已经定义好,并且有很强的用户自定义函数的能力。Matlab有高级的程序环境,但程序环境很简单易用,有与其它语言编写的程序结合和输入输出格式化数据的能力;Matlab既具有结构化的控制语句,又有面向对象编程的特性。还有一个原因使Matlab受人们欢迎的,那就是Matlab源程序具有很大的开放性。除了内部函数以外,所有Matlab的核心文件和工具箱文件都是可读可改的源文件,用户可通过对源文件的修改以及加入自己的文件构成新的工具箱。Matlab有强大的的图形绘制功能。在Matlab里,数据可视化的操作非常简单易用。Matlab还有较强的编辑图形界面的能力。可以用来声成图解和可视化的二维、三维图。Matlab还拥有功能强大的各种工具箱。其工具箱分为两类:功能性工具箱和学科性工具箱。功能性工具箱主要用来扩充其符号计算功能,图示建模仿真功能,文字处理功能以及与硬件实时交互功能。功能性工具箱用于多种学科。而学科性工具箱是专业性比较强的,如(control、signal proceessing 、commumnication) toolbox等。这些工具箱都是由该领域内学术水平很高的专家编写的,所以用户无需编写自己学科范围内的基础程序,而直接进行高,精,尖的研究,能极大地促进我们的学习研究工作。虽然Matlab有很多优点,但它也有一些缺点,比如:由于Matlab的程序不用编译等预处理,也不生成可执行文件,程序为解释执行,所以速度较慢。2 原理分析2.1 数字图像噪声数字图像在图像获取集数字化过程,以及在数字图像传输的过程中,有可能会受到噪声干扰。图像传感器在获取图像中会受到环境和原件质量的影响,产生噪声。例如照相机照相时会受到光照影响。数字图像在传输过程中,由于传输信道回手到噪声干扰,也会产生噪声。噪声有很多种类,例如:高斯噪声,瑞利噪声,椒盐噪声,指数分布噪声等等。本次课设讨论的是高斯噪声和椒盐噪声。高斯噪声符合高斯分布,高斯噪声的产生源于电子电路噪声和由低照明度或高温带来的传感器噪声。其概率密度函数为:椒盐噪声又称(双极)脉冲噪声,其概率密度函数为:b>a,灰度级b在图像中将显示为一个亮点,灰度级a为一个暗点。椒盐噪声最主要表现在成像中的短暂停留中。2.2 空间域图像增强对噪声图片处理要使用图像增强的方法。图像增强技术是为了人类视觉系统的生理接受特点而设计一种改善图像的方法,处理图像,使其更适合于特定应用。图像增强的方法有空间域方法和频域方法。本次课设使用的是空间域方法。空间域指图像平面本身,以图像像素直接处理为基础。空间域增强包括灰度变换,直方图处理,用算数、逻辑操作增强,空间滤波等。其中空间滤波包括平滑空间滤波器,锐化空间滤波器。平滑空间滤波器包括平滑线性滤波器和统计排序滤波器。2.3 均值滤波平滑线性滤波器,即为均值滤波,其输出是包含在滤波掩模邻域内像素的简单平均值。这种处理减小了图像灰度的尖锐变化,可以减噪,也会有灰度边缘模糊的负面效应。一幅M×N的图像经过一个m×n(m和n是奇数)的加权平均值滤波器滤波的过程可由下式给出:如下图2.1、2.2显示了两个3×3线性平滑滤波器:111111111图2.1空间均值滤波器121242121图2.2 加权平均滤波器图2.1所有系数都相等的空间均值滤波器,又称为盒滤波器,设R是由掩膜定义的3×3邻域像素灰度的平均值,则:,在滤波处理后,所有图像被9除。m×n掩膜应有等于1/mn的归一化常数。图2.2所示的掩膜叫加权平均,一些像素比另一些像素更为重要,对于图2.2,掩膜中心位置的像素权值大一些,因此这一像素比较重要,其他像素不太重要。随着距中心距离的增加权值也在减小,这样设定可以减小平滑处理中的模糊。另外,掩膜中所有系数的和为16,很方便于计算机的实现。2.4 中值滤波统计排序滤波器是一种非线性的空间滤波器,它的响应就与图像滤波器包围的图像区域中像素的排序,然后由统计排序结果决定的值代替中心像素的值。最常见的例子就是中值滤波器。为对一幅图像上的某个点做中值滤波处理,必须先将掩模内欲求的像素及其邻域的像素排序,确定出中值,并将该值赋予该像素点。中值滤波器有优秀的去噪能力,比小尺寸的线性平滑滤波器的模糊程度要低很多。3 程序设计3.1 程序设计思路首先考虑如何在图像中加入噪声。本次课设使用的图片是256级灰度图片,在Matlab中表示为一个矩阵。加入噪声就是改变矩阵中某些点的值。在加入高斯噪声时,可以使用函数随机生成高斯分布的矩阵,随机的加到某些点上。在加入椒盐噪声时,也是二循环循环矩阵中每一点,随机的改变某一点的值为0或255。均值滤波以3×3为例,产生一个3×3的矩阵,矩阵中每个值为1/9,用该矩阵和图片卷积就可以实现均值滤波。中值滤波可以用两重循环循环图片中除了边缘的点,对该点及周围的八个点的数值进行排序,得到中值,将该点的值改为中值即可实现。3.2 要使用的Matlab函数程序设计思路已经有了,结下来分析如何在Matlab里具体实现该程序。Matlab的语法并不困难,掌握了所需的函数后就能很快设计出程序了,这里主要介绍一下要用到的函数。加入噪声要用到随机数生成函数。加入高斯噪声用的函数是randn,随机数randn产生均值为0,方差 2 = 1,标准差 = 1的正态分布的随机数或矩阵的函数。其用法有Y = randn,Y = randn(n),Y = randn(m,n),Y = randn(m n),Y = randn(m,n,p,.),Y = randn(m n p.),Y = randn(size(A),randn(method,s),s = randn(method)。本课设程序中的用法是Y = randn(size(A),返回一个和A有同样维数大小的随机数组。加入椒盐噪声时用的函数是rand,可以返回一个0-1之间均匀分布的随机数。其用法有Y = rand,Y = rand(n),Y = rand(m,n),Y = rand(m n),Y = rand(m,n,p,.),Y = rand(m n p.),Y = rand(size(A),rand(method,s),s = rand(method),本程序中的用法是Y=rand,Y值是一个随机数。均值滤波时可以用ones(n)函数产生n阶全是1的矩阵。二维卷积时可以用conv2函数,用法有C = conv2(A,B),C = conv2(hcol,hrow,A),C = conv2(.,'shape')。本程序使用C = conv2(A,B),表示矩阵A和B进行二维卷积。中值滤波时可以使用reshape函数进行矩阵变形,其用法有B = reshape(A,m,n),B = reshape(A,m,n,p,.),B = reshape(A,m n p .),B = reshape(A,.,.),B = reshape(A,siz)。本程序中用法是b=reshape(a,1,9),就是把3×3矩阵转化为1×9的矩阵以便于排序。再用sort函数对一个数组进行排序,用法是B = sort(A),B = sort(A,dim),B = sort(.,mode),B,IX = sort(.)。本程序中用法是B = sort(A),把矩阵A按行进行升序排序。4 程序流程图4.1 添加高斯噪声流程图如下图4.1是添加高斯噪声的流程图,通过高斯随机数函数生成高斯分布数,加到原图像中。读入图片到I把I转换为double型数据生成和I大小一样的高斯分布矩阵J并取整I=I+J再把I转化为整数型图4.1添加高斯噪声流程图4.2 添加椒盐噪声流程图图4.2是添加椒盐噪声的流程图,通过均匀随机数函数随机的在图片中添加白点或黑点,噪声密度是0.05。该点值为255读入图片到I从I的第一到最后一行循环从I的第一到最后一列循环如果随机数大于0.95该点值为0得到加入噪声的矩阵YYYNNN如果随机数小于0.5YN图4.2添加椒盐噪声4.3 均值滤波流程图下图4.3是均值滤波的流程图,以3×3全1矩阵为掩膜,通过掩膜和图片进行2维卷积实现均值滤波。读入图片到I生成全1的3×3矩阵hh=h/9h与I进行二维卷积得到均值滤波后矩阵图4.3 均值滤波流程图4.4 中值滤波流程图如图4.4是中值滤波流程图,首先找出某点及周围8个点的数值,对其进行排序,找出其中的中值,赋值给该点。读入图片到I从I的第一到最后一行循环从I的第一到最后一列循环该点值为0得到中值滤波后的矩阵YNNYa等于以该点为中心的3×3矩阵把a转化为1×9的矩阵b对b排序该点的值等于b(5)4.4 中值滤波流程图5 源程序5.1 添加高斯噪声再滤波以下程序是给图片2.jpg添加高斯噪声,再用3×3的均值滤波和中值滤波处理。I=imread('2.jpg');%读入图片到Ifigure(1);%显示原图片imshow(I);J=round(0.1*randn(size(I)*256); %产生均值为0,方差0.1,范围0-1的高斯噪声矩阵J,再乘以256以适应灰度图片的数值,J与I大小相同J=uint8(J);%把J转换为整数型矩阵I=I+J;%I加入噪声figure(2);%显示加入噪声后的图片imshow(I,0 255);h=ones(3) ; %均值滤波,生成3×3全1矩阵hh=h/9; %把矩阵变为全是1/9J=conv2(I,h) ; %矩阵与I进行二维卷积figure(3);%显示均值滤波结果imshow(J,);for m=2:size(I,1)-1 %中值滤波 for n=2:size(I,2)-1%循环矩阵I中除了边缘外每一点 a=I(m-1:m+1,n-1:n+1);%a等于该点周围3×3矩阵 b=reshape(a,1,9);%把a转化为1×9矩阵 b=sort(b);%对b升序排序 I(m,n)=b(5);%该点值等于中值b(5) end;end;figure(4)%显示中值滤波结果imshow(I);5.2 添加椒盐噪声再滤波以下程序是给图片2.jpg添加椒盐噪声,再用3×3的均值滤波和中值滤波处理。I=imread('2.jpg');%读入图片到Ifigure(1)%显示原图片imshow(I);for m=1:size(I,1) %加椒盐噪声。噪声密度0.05 for n=1:size(I,2)%循环I内每一点 if rand>0.95%如果均匀随机数大于0.95 if round(rand)%如果均匀随机数大于0.5 I(m,n)=0;%该点值变为0 else I(m,n)=255;%否则该点值变为255 end; end; end;end;figure(2)%显示添加椒盐噪声后的图片imshow(I);h=ones(3) ; %均值滤波h=h/9; J=conv2(I,h) ; figure(3);%显示均值滤波后图片imshow(J,);for m=2:size(I,1)-1 %中值滤波 for n=2:size(I,2)-1 a=I(m-1:m+1,n-1:n+1); b=reshape(a,1,9); b=sort(b); I(m,n)=b(5); end;end;figure(4) %显示中值滤波后图片imshow(I);6 程序运行结果及分析6.1 高斯噪声滤波结果首先在Matlab中输入源程序,然后保存,选择Debug菜单中的Run执行程序。程序运行结果如图6.1-6.4:图6.1 原图片图6.2 添加高斯噪声图片图6.3 均值滤波结果图6.4 中值滤波结果6.2 椒盐噪声滤波结果椒盐噪声滤波程序使用的图片和高斯噪声滤波程序一样,都是2.jpg,其程序运行结果如图6.5-6.7:图6.5 添加椒盐噪声图片图6.6 均值滤波结果图6.7 中值滤波结果6.3 结果分析通过程序运行结果可以看出,在添加高斯噪声的图片中,使用均值滤波后,图像的噪声减弱了,同时图像也变模糊了。如果采用更大的掩模,图像会更加模糊。使用中值滤波后噪声也明显降低,图片没有均值滤波那么模糊,说明中值滤波效果更好。在添加椒盐噪声的图片中,经过均值滤波后,图片变得模糊,但是椒盐噪声并没有被明显滤除,说明均值滤波对椒盐噪声效果不好。使用中值滤波后,滤除了椒盐噪声,图片也没有明显模糊,说明中值滤波滤除椒盐噪声很有效。7 课程设计心得体会通过Matlab一周以来的学习研究,我对Matlab有了初步的认识,我掌握了Matlab的基本操作,并学会了用Matlab解决一些课程中的问题,下面是我具体的一些体会Matlab功能非常强大,几乎可以计算我们目前所遇到的任何问题,不仅可以计算数学问题,也可以用来解决电路等其他学科的各种问题。而且我们可以自编函数,从而可以解决更多样的问题。但以目前我们的知识,只能掌握Matlab的一小部分功能,在以后的学习中,我还需要继续学习Matlab的相关知识。Matlab虽然功能非常强大,但其操作却非常简单,它的语法类似于我们以前学过的C语言,使我很容易上手,而其语法比C语言更为自由,限制更少,语法类似于自然语言,简洁而智能化,使我可以很容易的编写程序且不容易出错。关于绘图的操作则比C语言简单得多,用几条简单的语句就可以绘出各种曲线、图形,使我们的学习研究变的非常方便。通过本次课程设计我掌握了FFT的编程方法,对FFT有了更深刻的了解。我认为学习Matlab的关键在于函数,只要掌握了函数的用法,那么就能很快的编出程序。而Matlab的难点也正是函数,因为Matlab拥有大量的函数,仅仅基本的函数就超过七百个,要是算上专业拓展函数那就更多,想在短时间内掌握这么多函数是很难的。我认为应该多练多学,在解决问题的过程中学习并记住所用的函数,有不懂的就查资料,问同学,争取彻底搞懂所作的问题,并牢牢掌握,这样以后就可以独立解决类似问题。在这次课程设计中,我学到了很多关于Matlab的知识,但这还远远不够,我现在只掌握了一些基本的功能,而解决更高级问题我的知识还不够,我要在日后进一步学习,更好地掌握Matlab。参考文献1 冈萨雷斯,伍兹数字图像处理北京:电子工业出版社,20042 冈萨雷斯,伍兹数字图像处理(Matlab版)北京:电子工业出版社,20053 陈怀琛,吴大正,高西全Matlab及在电子信息课程中的应用,第三版北京:电子工业出版社,20064 杨高波,元波精通Matlab 7.0混合编程北京:电子工业出版社,20065 陈怀琛Matlab及其在理工课程中的应用指南西安:西安电子科技大学出版社,2000致谢本次课设的指导老师XXX老师给了我很大帮助,帮助我修订了课程设计说明书,巩固了数字图像处理的相关知识,使我的知识水平有了较大提高。XXX老师在数字图像处理课上认真细致的讲解也使我受益匪浅,在此对他表示诚挚的谢意。我同组的同学也给了我很多帮助,我们共同努力完成了本次课程设计,在此也对他们表示感谢。 本科生课程设计成绩评定表姓 名性 别专业 班级课程设计题目:基于matlab图像增强的比较及其理论分析课程设计答辩或质疑记录:成绩评定依据: 指导教师签字:_ 年 月 日

    注意事项

    本文(数字图像处理课程设计-基于matlab图像增强的比较及其理论分析.doc)为本站会员(飞****2)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开