图形图像基础 - 图像分割

更新时间:2024-05-05 06:14:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

昆明理工大学信息工程与自动化学院学生实验报告

( 201—201学年 第 学期 )

课程名称:图形图像基础 开课实验室: 201年 月 日 年级、专业、班 实验项目名称 教师评 教师签名: 图像分割 学号 姓名 成绩 指导教师 语 年 月 日 一、实验目的及内容

目的:掌握和熟悉Matlab编程环境及语言;掌握数学形态学和图像分割的基本原理及应用。

内容:

1. 通过数学形态学实现边界提取。

2. 通过全局阈值及局部阈值实现灰度图像二值化;

3. 分别用Sobel算子和Canny算子对图像进行边缘检测;通过Hough检测图像中的直线。

二、要求

1. 描述腐蚀、膨胀、开运算、闭运算的原理。 2. 编写程序,使用数学形态学方法实现边界提取。 3. 描述全局阈值、局部阈值对图像进行二值化的原理。 4. 描述Canny边缘检测算法原理及Hough变换直线检测原理。

5. 使用Matlab中的edge函数分别进行Sobel和Canny边缘检测并比较检测结果。

6. 写一个M函数,实现局部阈值二值化,并与Matlab中通过graythresh和im2bw两函数进行全

局阈值二值化的结果进行对比。

7. M函数结构清晰,运行结果正确。

8. 描述M函数的设计、实现和结果,并对结果进行分析。

三、实验环境

-1-

Windows 7、MATLAB7.10.0

四、实验原理及实现

1.描述腐蚀、膨胀、开运算、闭运算的原理。

膨胀:把二值图像各1像素连接成分的边界扩大一层(填充边缘或0像素内部的孔)

腐蚀:把二值图像各1像素连接成分的边界点去掉从而缩小一层(可提取骨干信息去掉毛刺,去掉孤立的0像素)

开:先腐蚀再膨胀,可以去掉目标外的孤立点。 闭:先膨胀再腐蚀,可以去掉目标内的孔。

先腐蚀后膨胀的过程称为开运算。它具有消除细小物体,在纤细处分离物体和平滑较大物体边界的作用。

2.编写程序,使用数学形态学方法实现边界提取。

代码:

close all; clear all;

f=imread('Fig0409(a)(bld).tif'); imshow(f),title('original image');

se = strel('disk',1);

fe=imerode(f,se); %í????ˉê′

figure,imshow(fe),title('erosed image');

se = strel('disk',1);

fd=imdilate(f,se); %í????ò?í

figure,imshow(fd),title('dilated image'); f1=fd-fe;

thresh = graythresh(f1); f2 = im2bw(f1,thresh);

figure,imshow(f2),title('±??μìáè?');

运行截图:

-2-

原始图像 原始图像边界提取

3.描述全局阈值、局部阈值对图像进行二值化的原理。

图像的二值化处理就是将图像上的点的灰度置为0 或255,也就是使整个图像呈现出明显的黑白效果。即将256 个亮度等级的灰度图像通过适当的阀值选取而获得仍然可以反映图像整体和局部特征的二值化图像。例如输人灰度图像函数为f (x, y)

g(x, y)

阈值(threshold )是把目标和背景区分开的标尺,选取适当的阈值就是既要尽可能保存图像信息,又要尽可能减少背景和噪声的干扰,这是选择阈值的原则。

全局阈值法是指在二值化过程中只使用一个全局阈值T 的方法。它将图像的每个像素

的灰度值与T 进行比较。若大于T 则取为前景色白色否则取为背景色。根据文本图像的直方图或灰度空间分布确定一个阈值,以此实现灰度文本图像到二值图像的转化。

其中全局阈值法又可分为基于点的阈值法和基于区域的阈值法。典型的全局阈值方法包括Otsu 方

由当前像素灰度值与该像素周围点局部灰度特征来确定像素的阈值。像划分为一些不相交的小块,将各块图像的灰度均值作为该部块图像的阈值。在局部上采用上面的整体阈值法。局部阈值法一般用于识别干扰比较严重、品质较差的图像。相对整体阈值方法有更广泛的应用,但也存在缺点和问题。如实现速度慢、不能保证字符笔画连通性以及容易出现伪影现象(即在背景域受到噪音干扰得到笔画结果)等。比较典型的局部二值化算法有Bernsen 方法、多阈值的梯度强度法、基于纹理图像的方法、最大方差法

-3-

等。

4. 描述Canny边缘检测算法原理及Hough变换直线检测原理。 Canny边缘检测基本原理

(1)图象边缘检测必须满足两个条件:一能有效地抑制噪声;二必须尽量精确确定边缘的位置。 (2)根据对信噪比与定位乘积进行测度,得到最优化逼近算子。这就是Canny边缘检测算子。 (3)类似与Marr(LoG)边缘检测方法,也属于先平滑后求导数的方法。

Hough变换是一种利用图像的全局特征将特定形状的边缘像素连接起来,形成连续平滑边缘的一种方法。它通过将源图像上的点映射到用于累加的参数空间,实现对已知解析式曲线的识别。Hough变换常用于对图像中的直线和圆进行识别。

5.使用Matlab中的edge函数分别进行Sobel和Canny边缘检测并比较检测结果。 clear all; close all;

f=imread('images\\dipum_images_ch10\\fig1006(a)(building).tif'); imshow(f),title('original image'); [gv,x]=edge(f,'sobel','vertical');

figure,imshow(gv),title('sobel vertical edge'); [gv,x]=edge(f,'sobel',0.15,'vertical');

figure,imshow(gv),title('canny few edge'); [gv,x]=edge(f,'canny','vertical');

figure,imshow(gv),title('canny vertical edge'); [gv,x]=edge(f,'canny',0.15,'vertical'); figure,imshow(gv),title('canny few edge'); 图像显示如下:

Sobel算子是一阶导数的边缘检测算子。在算法实现过程中,通过3×3模板作为核与图像中的每个像素点做卷积和运算。然后选取合适的阈值以提取边缘。采用3×3邻域可以避免在像素之间内插点上计算梯度。Sobel算子也是一种梯度幅值,即

其中的偏导数Sx 和Sy可用卷积模板来实现。

-4-

6.写一个M函数,实现局部阈值二值化,并与Matlab中通过graythresh和im2bw两函数进行全局阈值二值化的结果进行对比。 clear all; close all;

f=imread('images\\dipum_images_ch10\\Fig1013(a)(scanned-text-grayscale).tif');

imshow(f),title('original image');

T=0.5*(double(min(f(:)))+double(max(f(:)))); done=false; while ~done g=f>=T;

Tnext=0.5*(mean(f(g))+mean(f(~g))); done=abs(T-Tnext)<0.5; T=Tnext; end

figure,imshow(g),title('binarized image'); T2=graythresh(f); gotsu=im2bw(f,T2);

figure,imshow(gotsu),title('binarized by Otsu');

-5-

五、实验总结

通过本次试验我对二值化、边缘检测和直线检测的形式对图像实现了图像的分割等知识有了一定的了解。其中试验中得很多方法对生活中得一些问题也有实际的运用。如:全局阈值分割方法在图像处理中应用比较多,它在整幅图像内采用固定的阈值分割图像。经典的阈值选取以灰度直方图为处理对象。

这些方法都是以图像的直方图为研究对象来确定分割的阈值的。另外还有类间方差阈值分割法、二维最大熵分割法、模糊阈值分割法、共生矩阵分割法、区域生长法等等。

最主要的是我通过这个试验对以前好多自己不懂得东西有了新的认识和感悟。其实没学完一门课我们都要问自己,这门课中自己掌握了多少东西,这些东西在实际生活中怎么运用。而且自己要把握好重点,复习和提升有用的课程,课堂的时间是有限的,老师给我们的支持入门指导。我们需要学习的还有很多。

-6-

五、实验总结

通过本次试验我对二值化、边缘检测和直线检测的形式对图像实现了图像的分割等知识有了一定的了解。其中试验中得很多方法对生活中得一些问题也有实际的运用。如:全局阈值分割方法在图像处理中应用比较多,它在整幅图像内采用固定的阈值分割图像。经典的阈值选取以灰度直方图为处理对象。

这些方法都是以图像的直方图为研究对象来确定分割的阈值的。另外还有类间方差阈值分割法、二维最大熵分割法、模糊阈值分割法、共生矩阵分割法、区域生长法等等。

最主要的是我通过这个试验对以前好多自己不懂得东西有了新的认识和感悟。其实没学完一门课我们都要问自己,这门课中自己掌握了多少东西,这些东西在实际生活中怎么运用。而且自己要把握好重点,复习和提升有用的课程,课堂的时间是有限的,老师给我们的支持入门指导。我们需要学习的还有很多。

-6-

本文来源:https://www.bwwdw.com/article/rqfg.html

Top