数字图像处理课程设计实验报告

  • 格式:doc
  • 大小:2.06 MB
  • 文档页数:15

下载文档原格式

  / 15
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

江南大学《数字图像处理技术》课程设计报告

设计题目:数字图像处理系统

班级:数字媒体班

姓名:

学号:

指导老师:

日期:2013.7.2

一、课程设计目的要求:

1、提高分析图像处理问题的能力,进一步巩固在《数字图像处理技术》课程中所学的基本原理与方法。

2、掌握并使用一门计算机语言,进行数字图像处理的应用设计。

二、设计的内容:

根据本次课设完成的系统的主要功能如下:利用matlab的GUI 程序设计一个简单的图像处理程序,含有如下基本功能:

1、图像的读取、存储、剪切和粘贴

2、图像转化为灰度图像

3、图像大小的计算

4、直方图均衡化规定化的计算

5、图像求反、动态压缩

6、直接灰度调整

7、空域滤波(均值、中值、对比度增强滤波)

8、非线性锐化滤波(log滤波、prewitt滤波、sobel卷积、sobel滤波)

9、频域增强(高通、低通滤波)

三、总体方案设计:

(1)、软件的总体设计界面布局如下图:

系统的总体设计界面主要分为2个区域:显示区域和操作区域。

显示区域:在原始图像的基础上显示效果图。

操作区域:通过功能菜单实现图像的各种处理。

设计完成后运行的软件界面如下:

(2)、功能模块的划分:

1、图像的读取、存储、退出

2、编辑(还原、剪切、粘贴)

3、图像(图像大小的计算、旋转、直方图均衡化规定化的计算、图像求反、动态压缩)

4、滤波(直接灰度调整、空域滤波、非线性锐化滤波、频域增强)(3)、系统运行环境:

Windows 7 or SP1、Windows Vista SP2、Windows XP SP3、Windows XP x64 Edition SP2、Windows Server 2008 SP2 or R2、Windows Server 2003 R2 ,CPU要求:X86架构且支持SSE2指令集,硬盘空间:典型安装需要3-4G,内存:最低1G,推荐2G。

(4)、选用的工具:matlab7.0,win7X64

(5)、主要实现功能的原理:

直方图均衡化方法的基本思想是,对在图像中像素个数多的灰度级进行展宽,而对像素个数少的灰度级进行缩减。从而达到清晰图像的目的。空域是指图像平面本身,空域滤波这类方法直接对图像的像素进行处理。采用低通滤波(即只让低频信号通过)法,可去掉图中的噪声;采用高通滤波法,则可增强边缘等高频信号,使模糊的图片变得清晰。

四、各个功能模块的主要实现程序:

各个功能模块的具体实现,主要步骤实现的效果图如下:

1、图像另存为:

function tp_saveAs_Callback(hObject, eventdata, handles) global tpdata tp;

[FileName,PathName]=uiputfile({'*.jpg;*.tif;*.png;*.gif'; '*.*';'All Files' },'保存图像',tp);

if FileName==0

return;

else

tp=[PathName,FileName];

imwrite(tpdata,tp);

End

2、灰度调整:

function tp_filter_grayhound_Callback(hObject, eventdata, handles)

global tpdata;

I=tpdata;

prompt={'请输入两个0—1之间的数'};

dlgtitle = '输入';

num_lines = 1;

def = { '0.3 0.7'};

answer = inputdlg(prompt,dlgtitle,num_lines,def);

answer =char(answer);

answer=str2num(answer);

if

(answer(1)>0&answer(1)<1)&(answer(2)>0&answer(2)<1)

tpdata=imadjust(I,[answer(1) answer(2)],[]);

imshow(tpdata)

else

warndlg('输入错误!!!');

End

3、计算图像大小:

function tp_size_Callback(hObject, eventdata, handles) global tpdata;

[x,y]=size(tpdata);

msgbox( num2str([ x y ]) ,' 图片大小 ');

4、菜单中图片旋转:

function tp_rotate_Callback(hObject, eventdata, handles) global tpdata;

prompt={'+:为逆时针 -:为顺时针'};

dlgtitle = '输入角度';

num_lines = 1;

def = { '90'};

answer = inputdlg(prompt,dlgtitle,num_lines,def);

answer =char(answer);

answer=str2num(answer);

if answer>-360&answer<360

tpdata=imrotate(tpdata,answer,'bicubic');

imshow(tpdata);

End

直方图计算:

function tp_squarejs_Callback(hObject, eventdata, handles) global tpdata;

imhist(tpdata,64);

5、直方图均值计算:

function tp_squareMeanjs_Callback(hObject, eventdata,