数字图像处理课程设计.docx
《数字图像处理课程设计.docx》由会员分享,可在线阅读,更多相关《数字图像处理课程设计.docx(7页珍藏版)》请在冰豆网上搜索。
数字图像处理课程设计
中南林业科技大学
数字图像处理课程设计
学院_____理学院______
学生姓名__***_____
学号_***_____
专业班级___***_
指导老师_***____
2011年10月
中文摘要
这次课程设计要实现图象的锐化处理,图像锐化的目的是突出图象中的细节或者增强被模糊了的细节。
其主要被用于景物边界的检测与提取。
本次课程设计中用数字微分锐化的方法通过实现微分算子来将图象锐化。
用到的一阶微分算子有:
Robirts微分算子、Sobel微分算子、Priwitt微分算子等。
二阶微分算子用到了Laplacian微分算子。
通过实现不同的微分算子,得到对图象轮廓在不同程度上的提取。
关键词数字图象处理;图像锐化;微分算子
英文摘要
Thiscoursedesigntorealizetheimageprocessing,imageofsharpeningsharpeningpurposeistohighlightthedetailsoftheimageorenhancethedetailsoftheblurred.Itismainlyusedintheboundarydetectionandextractionofthescenery.
Thiscoursedesignwithdigitaldifferentialsharpenmethodbyimplementingdifferentialoperatortoimagesofsharpening.Useofthefirstorderdifferentialoperator:
Robirtsdifferentialoperator,Sobeldifferentialoperator,Priwittdifferentialoperator,etc.SecondorderdifferentialoperatorusetheLaplaciandifferentialoperator.Throughtherealizationofdifferentdifferentialoperator,togettheimageindifferentdegreeofcontourextraction.
Keywordsdigitalimageprocessing;Theimageofsharpening;Differentialoperator
目录
引言3
1.设计目的与要求4
1.1设计目的4
1.2设计要求4
2.设计的主要内容及基本原理4
2.1基本原理4
2.2主要内容5
3.图像编码程序总体方案设计6
3.1图像处理程序流程图6
3.2用MATLAB实现图像处理程序源代码及注释7
总结与体会8
参考文献9
引言
图像是人类获取和交换信息的主要来源,因此,图像处理的应用领域必然涉及到人类生活和工作的方方面面。
随着人类活动范围的不断扩大,图像处理的应用领域也将随之不断扩大。
数字图像处理(DigitalImageProcessing)又称为计算机图像处理,它是指将图像信号转换成数字信号并利用计算机对其进行处理的过程。
数字图像处理主要研究以下内容:
图像几何变换;如傅立叶变换、沃尔什变换、离散余弦变换等;图象锐化处理;图像编码压缩;图像增强和复原;图像分割;图像描述;图像分类(识别)。
其中图象锐化处理的目的是使模糊的图像变得更加清晰起来。
图像的模糊实质就是图像受到平均或积分运算造成的,因此可以对图像进行逆运算如微分运算来使图像清晰化。
微分运算是通过实现微分算子来对图像进行锐化。
微分算子有一阶微分算子和二阶微分算子。
1.设计目的与要求
1.1设计目的
1.用MATLAB或其他的语言来实现数字图像处理方面的一些操作;
2.熟悉MATLAB7.1的一些基本函数及与数字图像处理相关的函数;
3.熟悉图形用户界面(GUI),并用其来编写界面;
4.熟悉在界面(GUI)实现读图像,保存图像,Robert算子、Sobel算子、Prewitt算子、Kirsch算子、Log算子、Canny算子进行边缘检测。
并能用MATLAB实现以上的功能;
5.掌握从简单到复杂的方法,一步一步的实现功能,并能耐心排错,养成合作互助精神。
1.2设计要求
1.实现图像的打开,显示,保存操作。
2.实现图像的边缘检测,如Robert算子边缘检测,Sobel算子边缘检测,Prewitt算子边缘检测,Log算子边缘检测,Canny算子边缘检测;
3.实现整个界面的设计,编排,最终达到一种比较完美的效果。
2.设计的主要内容及基本原理
2.1基本原理
图像的模糊实质就是图像受到平均或积分运算造成的,因此可以对图像进行逆运算如微分运算来使图像清晰化。
从频谱角度分析,图像模糊的实质是其高频分量被衰减,因而可以通过高通滤波操作来清晰图像。
但要注意,进行锐化处理的图像必须有较高的信噪比,否则锐化后图像信噪比反而更低,从而使噪声增加得比信号还要多,因此一般是先去除或减轻噪声后再进行锐化处理。
根据梯度计算式可以计算Roberts、Prewitt和Sobel梯度。
一旦梯度算出后,即可根据不同的需要生成不同的梯度增强图像。
2.2主要内容
整个程序的设计过程,大致上是按照实习的任务顺序来设计的。
基本设计过程如下所示:
1、在刚刚接触MATLAB的GUI设计时,还不太熟悉GUI。
因而经过了一段时间的资料查询和书本学习以及和同学们讨论过后,渐渐掌握了基本的GUI用户交互界面的设计方法。
2、首先是新建一个空白的GUI界面,然后根据功能的需要,往界面里拖动各个控件。
在这个时候,整个界面的对齐和控件的摆放都需要经过设计。
由于我们所设计的界面思路是:
将所有需要实现的功能全部摆放在界面上,当使用者进入界面时就能直截了当地看到所有的东西,点击控件就能实现想要的功能。
所以除了菜单栏以外,所有功能都能在GUI界面上直接找到。
3、在设计任务上要求的有几个大范围,我们对各个任务的设计如下:
文件的打开、显示、保存。
我们将文件的打开、保存以及程序退出放到菜单栏里,当点击菜单栏的“文件(F)”时,会出现下拉菜单,点击各个选项就能实现相应功能。
“文件打开”可以打开在文件夹‘MATLAB’中'*.png'、'*.tif'、'*jpg'、'*.bmp'、'*.gif'格式的图像文件,并将其显示到GUI界面中的“原始图像”和“处理后图像”。
“文件保存”则是将当前“处理后图像”以‘*.jpg’的形式保存到文件夹‘MATLAB’中。
对于“图像显示”,我们的设计是:
当用户一进入GUI界面时,就能看到界面中已经显示出来的两幅一样的图像,它们就是“原始图像”和“处理后图像”。
而后“原始图像”在整个功能实现过程中,除了“文件打开”功能会变换显示的图像之外,“原始图像”一直不做改变以便与“处理后图像”形成对比。
对于“图像旋转”,也是只显示在“处理后图像”,其针对的是原始图像或加噪后的图像,我们将它设计为向逆时针方向旋转90度,并且可以一直向这个方向旋转。
实现图像的边缘检测。
包括“Robert算子”、“Sobel算子”、“Prewitt算子”、“Log算子”、“Canny算子”这5个选择。
这5项均放在一个“buttongroup”——“边缘检测”中,每次点击都只有一项“radioButton”起作用,分别对“原始图像”进行处理后显示到“处理后图像”中,
4、为了图像处理的易于观察性,我们添加了一个名为“恢复原图”的“pushButton”。
当使用者点击该按钮时,在“处理后图像”中则会显示与“原始图像”相同的未经过处理的图像。
这时,使用者可以像刚进入GUI界面一样进行各种处理,若不满意“处理后图像”或者不下心点击了其它不需要的功能,则可以点击该按钮,使图像复原。
5、整个设计过程中,最重要的也是花费最多时间的部分就是为各个功能按钮添加程序代码,从图像的读入到处理后图像的显示,每个细节都需要考虑并且在实验过程进行中反复的纠错和修改。
3.图像编码程序总体方案设计
3.1图像处理程序流程图
图3-1为操作时用到的原图:
图3-1Lena原图-24位色
图3-2到3-5是将原图-31锐化后的结果
图3-2Roberts微分算子处理图像图3-3Sobel微分算子处理图像
图3-4Priwitt微分算子处理图像图3-5Laplacian微分算子处理图像
3.2用MATLAB实现图像处理程序源代码及注释
[I,map]=imread('cameraman.tif');
imshow(I,map);
I=double(I);
[Gx,Gy]=gradient(I); %计算梯度
G=sqrt(Gx.*Gx+Gy.*Gy); %注意是矩阵点乘
J1=G;
figure,imshow(J1,map); %第一种图像增强
J2=I; %第二种图像增强
K=find(G>=7);
J2(K)=G(K);
figure,imshow(J2,map);
J3=I; %第三种图像增强
K=find(G>=7);
J3(K)=255;
figure,imshow(J3,map);
J4=I; %第四种图像增强
K=find(G<=7);
J4(K)=255;
figure,imshow(J4,map);
J5=I; %第五种图像增强
K=find(G<=7);
J5(K)=0;
Q=find(G>=7);
J5(Q)=255;
figure,imshow(J5,map);
总结与体会
锐化(sharpening)和平滑恰恰相反,它是通过增强高频分量来减少图象中的模糊,因此又称为高通滤波(highpassfilter)。
锐化处理在增强图象边缘的同时增加了图象的噪声。
在图象边界轮廓的部分要采用高通滤波。
因为边界轮廓灰度值相差很大,呈现出高频特性。
而图像内部则是灰度变化平缓,对应的应该是低频部分。
由实验结果可以分析看出,如果一片暗区出现了一个亮点,那么锐化处理的结果是这个亮点变得更亮,增加了图象的噪声。
经过这次课程设计,不但能够让我们再次复习了本学期所学的图像处理的知识,加深了对这些知识的记忆,并且让我们对图像处理的各种处理方法如灰度变换、直方图均衡、滤波等等对图像产生的效果有了更加直观的了解,不但加深了记忆也能因此更加了解各种处理方法的应用,可以用MATLAB软件来对这些处理来实现。
参考文献
[1]朱虹.计算机图象处理基础[M].科学出版社,2005
[2]RC.Gonzalez,RE.Woods著,阮秋琦,阮宇智等译.计算机图象处理(第2版).北京:
电子工业出版社,2003
[3]K.R.Castleman.计算机图象处理.北京:
电子工业出版社,2002
[4]章毓晋.图像处理与分析-图像工程(上册),清华大学,2001
[5]何斌等编著.VisualC++计算机图象处理.人民邮电出版社,2002
[6]张宏林编著.VisualC++计算机图象模式识别技术及工程实践.人民邮电出版社,2003.
[7]黄维通.VisualC++面向对象与可视化程序设计.清华大学出版社,2003
[8]RC.Gonzalez,RE.Woods,SL.Eddins著,阮秋琦,阮宇智等译.计算机图象处理(MATLAB版).北京:
电子工业出版社,2005
指导老师评语:
签字:
日期:
年月日
成
绩