好文档 - 专业文书写作范文服务资料分享网站

数字图像处理课程设计

天下 分享 时间: 加入收藏 我要投稿 点赞

1课程设计目的

(1)对数字图像处理这门课程所学知识进行巩固和扩充。 (2)运用图像理论知识来完成图像的膨胀的设计。 (3)学习并且熟练使用MATLAB软件进行编程和仿真。

(4)增强学生对图像学科的学习兴趣,培养图像处理的仿真建模能力。 (5)培养学生分析问题、解决问题的能力及动手操作能力。

2 课程设计要求

(1)掌握课程设计的相关知识、概念清晰; (2)程序设计合理、能够正确运行;

(3)查阅资料,掌握图像腐蚀的基本方法,编程实现膨胀; (4)掌握运用Matlab软件对灰度与二值图像的腐蚀的处理方法; (5)使用imerode函数进行图像腐蚀,观察腐蚀后的图像变化情况。

3 理论知识叙述

3.1 图像处理与数字图像处理概念

图像处理并不仅限于对图像进行增强、复原和编码,还要对图像进行分析,图像分析旨在对图像进行描述,即用一组数或符号表征图像中目标区的特征、性质和相互间的关系,为模式识别提供基础。描述一般针对图像或景物中的特定区域或目标。闭运算通常用来填充目标内细小空洞,连接断开的邻近目标,平滑其边界的同时不明显改变其面积。

数字图像处理(digitalimageprocessing)是用计算机对图像信息进行处理的一门技术,使利用计算机对图像进行各种处理的技术和方法。利用数字图像处理主要是为了修改图形,改善图像质量,或是从图像中提起有效信息,还有利用数字图像处理可以对图像进行体积压缩,便于传输和保存。

3.2 MATLAB 及其图像处理工具箱

MATLAB语言是由美国MathWorks公司推出的计算机软件,经过多年的逐步发展与不断完善,现已成为国际公认的最优秀的科学计算与数学应用软件之一,它集数值分析、矩阵运算、信号处理和图形显示于一体,构成了一个方便的、界面友好的用户环境,而且还具有可扩展性特征。MATLAB中的数字图像是以矩阵形式表示的,矩阵运算的语法对MATLAB中的数字图像同样适用,这意味着MATLAB强大的矩阵运算能力对用于图像处理非常有利。

图像处理工具箱(Image Processing Toolbox)提供了一套全方位的参照标准算法和图形工具,用于进行图像处理、分析、可视化和算法开发。可进行图像压缩、空间转换、图像增强、特征检测、降噪、图像分割和图像配准等功能。工具箱中大部分函数均以开放式 MATLAB 语言编写,这意味着可以检查算法、修改源代码和创建自定义函数。本文利用MATLAB图像处理工具箱对基于DCT的JPEG图像压缩编码理论算法进行仿真,实验证明该软件功能强大,语言简洁易学,工具箱具有丰富的技术支持并集成了该领域专家的智慧,应用简单而效果良好。

3.3 MATLAB在数字图像处理中的应用

MATLAB7.x提供了2O类图像处理函数,涵盖了图像处理包括近期研究成果在内的几乎所有的技术方法,是学习和研究图像处理的人员难得的宝贵资料和加工工具箱。这些函数按功能可分为图像显示、图像文件I/O、图像算术运算、几何变换、图像登记、像素值与统计、图像分析、图像增强、线性滤波、线性二元滤波设计、图像去模糊、图像变换、邻域与块处理、灰度与二值图像的形态学运算、结构元素创建与处理、基于边缘的处理、色彩映射表操作、色彩空间变换及图像类型与类型转换。

Matlab数字图像处理工具箱函数包括以下几类:(1)图像显示函数;(2)图像文件输入、输出函数;(3)图像几何操作函数;(4)图像像素值及统计函数;(5)图像分析函数;(6)图像增强函数;(7)线性滤波函数;(8)二维线性滤波器设计函数;(9)图像变换函数;(10)图像邻域及块操作函数;(11)二值图像操作函数;(12)基于区域的图像处理函数;(13)颜色图操作函数;(14)颜色空间转换函数;(15)图像类型和类型转换函数。

3.4原理简述

3.4.1形态学简介

数字图像处理中的形态学处理是指将数字形态学作为工具从图像中提取对于表达和描绘区域形状有用处的图像分量,比如边界、骨架以及凸壳,还包括用于预处理或后处理的形态学过滤、细化和修剪等。图像形态学处理中我们感兴趣的主要是二值图像。

在二值图像中,所有黑色像素的集合是图像完整的形态学描述,二值图像的各个分量是Z2的元素。假定二值图像A和形态学处理的结构元素B是定义在笛卡儿网格上的集合,网格中值为1的点是集合的元素,当结构元素的原点移到点(x,y)时,记为Sxy,为简单起见,结构元素为3x3,且全都为1,在这种限制下,决定输出结果的是逻辑运算。 3.4.2图像膨胀的原理

膨胀和腐蚀操作是形态学处理的基础,许多形态学算法都是以这两种运算为基础的。膨胀,即给图像中的对象边界添加像素。

膨胀是以得到B的相对与它自身原点的映像并且由z对映像进行移位为基础的。A被B膨胀是所有位移z的集合,这样, 和A至少有一个元素是重叠的。我们可以把上式改写为:结构元素B可以看作一个卷积模板,区别在于膨胀是以集合运算为基础的,卷积是以算术运算为基础的,但两者的处理过程是相似的:⑴ 用结构元素B,扫描图像A的每一个像素;⑵ 用结构元素与其覆盖的二值图像做“与”操作;⑶ 如果都为0,结果图像的该像素为0,否则为1。在操作中,输出图像中所有给定像素的状态都是通过对输入图像的相应像素及邻域使用一定的规则进行确定。在膨胀操作时,输出像素值是输入图像相应像素邻域内所有像素的最大值。在二进制图像中,如果任何像素值为1,那么对应的输出像素值为1。

可以使用imdilate函数进行图像膨胀,imdilate函数需要两个基本输入参数,即待处理的输入图像和结构元素对象。结构元素对象可以是strel函数返回的对象,也可以是一个自己定义的表示结构元素邻域的二进制矩阵。此外,imdilate还可以接受两个可选参数:PADOPT(padopt) ——影响输出图片的大小、PACKOPT(packopt).——说明输入图像是否为打包的二值图像(二进制图像)。

4 设计方案

4.1 灰度矩阵的膨胀

首先创建一个包含矩形对象的二值图像矩阵,然后定义结构元素('square',9),再用imdilate函数将图像进行膨胀操作,最终显示原图像和膨胀后的图像进行对比观察。

4.2灰度图像的膨胀

首先从F盘中读取灰度图像,然后定义一个结构元素('square',6),再用imdilate函数对图像进行膨胀操作和用1-im2bw(I)进行相反方向操作,再用imdilate函数将相反图像进行膨胀操作,并依次显示原始图像,膨胀结果图像,相反图像,相反图像膨胀结果进行对比观察。

4.3 彩色图像的膨胀 首先读取

F盘中的彩色图像,然后定义结构元素('square',3),用imdilate函

数将原始图像膨胀,再通过rgb2gray(I)函数将图像进行二值化操作,转化为灰度图像,继而再用imdilate函数将灰度图像膨胀,依次显示原始图像,原始图像膨胀结果 ,灰度图像,灰度图像膨胀结果进行对比观察。

4.4图像的膨胀与边缘提取

首先读取F盘中的彩色图像,然后定义结构元素('diamond',2),再用rgb2gray(I)函数将图像进行二值化操作,转化为灰度图像,用imdilate函数膨胀灰度图像和J1=imerode(J,SE);J2=J-J1;两步操作提取灰度图像的边缘,显示原始图像,图像灰度化结果,灰度图像膨胀结果和边缘提取图像的结果,并进行对比观察。

5 程序设计

5.1 灰度矩阵的膨胀

BW=zeros(90,90);

BW(30:60,30:60)=1; %创建一个包含矩形对象的二值图像矩阵 SE=strel('square',9); %定义结构元素

BW2=imdilate(BW,SE); %将图像进行膨胀操作 figure(1);

imshow(BW); %显示原图像 title('原图像'); figure(2);

imshow(BW2); %显示膨胀后的图像 title('膨胀结果图像');

5.2灰度图像的膨胀

I=imread('F:\\1003030405\\zhaowei.jpg'); %从F盘中读取图像 SE=strel('square',6); %定义一个结构元素 IM1=imdilate(I,SE); %将图像进行膨胀操作

J=1-im2bw(I); %将图像进行相反方向操作 IM2=imdilate(J,SE); %将相反图像进行膨胀操作 figure(1); imshow(I);

title('原始图像'); %显示原始图像 figure(2);

imshow(IM1); %显示膨胀结果图像 title('膨胀结果图像'); figure(3); imshow(J);

title('相反图像'); %显示相反图像 figure(4);

imshow(IM2); %显示相反图像膨胀结果 title('相反图像膨胀结果');

数字图像处理课程设计

1课程设计目的(1)对数字图像处理这门课程所学知识进行巩固和扩充。(2)运用图像理论知识来完成图像的膨胀的设计。(3)学习并且熟练使用MATLAB软件进行编程和仿真。(4)增强学生对图像学科的学习兴趣,培养图像处理的仿真建模能力。(5)培养学生分析问题、解决问题的能力及动手操作能力。2课
推荐度:
点击下载文档文档为doc格式
624q24psjh5uqa87qzsz8c83h0epna0167h
领取福利

微信扫码领取福利

微信扫码分享