版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、边缘检测原理的论述 摘 要 数字图像处理技术是信息科学中近几十年来发展最为迅速的学科之一。图像边缘是图像最基本的一种特征,边缘在图像的分析中起着重要的作用。边缘作为图像的一种基本特征,在图像识别、图像分割、图像增强以及图像压缩等的领域中有较为广泛的应用,其目的就是精确定位边缘,同时更好地抑制噪声。目前,数字图像处理技术被广泛应用于航空航天、通信、医学及工业生产等领域中。图像边缘提取的手段多种多样,本文主要通过MATLAB语言编程分别用不同的算子例如Roberts算子、Prewitt算子、Sobel算子、Kirsch算子、Laplacian算子、Log算子和Canny算子等来
2、实现静态图像的边缘检测,并且和检测加入高斯噪声的图像进行对比。阐述了不同算子在进行图像边缘提取的特点,并在此基础上提出利用小波变换来实现静态图像的边缘检测。 【关键字】 图像边缘 数字图像 边缘检测 小波变换背景图像处理就是对图像信息加工以满足人的视觉心理或应用需求的方法。图像处理方法有光学方法和电子学方法。从20世纪60年代起随着电子计算机和计算技术的不断提高和普及,数字图像处理进入了高速发展时期,而数字图像处理就是利用数字计算机或其它的硬件设备对图像信息转换而得到的电信号进行某些数学处理以提高
3、图像的实用性。计算机进行图像处理一般有两个目的:(1)产生更适合人观察和识别的图像。(2)希望能由计算机自动识别和理解图像。数字图像的边缘检测是图像分割、目标区域的识别、区域形状提取等图像分析领域的重要基础,图像处理和分析的第一步往往就是边缘检测。边缘是图象最基本的特征. 边缘检测在计算机视觉、图象分析等应用中起着重要的作用,是图象分析与识别的重要环节,这是因为子图象的边缘包含了用于识别的有用信息. 所以边缘检测是图像分析和模式识别的主要特征提取手段。 所谓边缘是指其周围像素灰度后阶变化或屋顶状变化的那些像素的集合,它存在于目标与背景、目标与目标、区域与区域,基元
4、与基元之间。 因此它是图象分割所依赖的重要的特征,也是纹理特征的重要信息源和形状特征的基础;而图象的纹理形状特征的提取又常常依赖于图象分割。 图象的边缘提取也是图象匹配的基础,因为它是位置的标志,对灰度的变化不敏感,它可作为匹配的特征点。 图象的其他特征都是由边缘和区域这些基本特征推导出来的. 边缘具有方向和幅度两个特征. 沿边缘走向,像素值变化比较平缓;而垂直与边缘走向,则像素值变化比较剧烈. 而这种剧烈可能呈现阶跃状,也可能呈现斜坡状。 边缘上像素值的一阶导数较大;二阶导数在边缘处值为零,呈现零交叉。 经典的、
5、最简单的边缘检测方法是对原始图象按像素的某邻域构造边缘算子. 由于原始图象往往含有噪声,而边缘和噪声在空间域表现为灰度有比较大的起落;在频域则反应为同是高频分量,这就给边缘检测带来困难. 原理边缘是图像上灰度变化最剧烈的地方,传统的边缘检测就是利用了这个特点,对图像各个像素点进行微分或求二阶微分来确定边缘像素点。一阶微分图像的峰值处对应着图像的边缘点;二阶微分图像的过零点处对应着图像的边缘点。根据数字图像的特点,处理图像过程中常采用差分来代替导数运算,对于图像的简单一阶导数运算,由于具有固定的方向性,只能检测特定方向的边缘,所以不具有普遍性。为了克服一阶导数的缺点,我们定义
6、图像的梯度为梯度算子,它是图像处理中最常用的一阶微分算法。图像梯度的最重要性质是梯度的方向是在图像灰度最大变化率上,它恰好可以反映出图像边缘上的灰度变化。1 .Roberts算子 边缘,是指周围像素灰度有阶跃变化或屋顶等变化的那些像素的集合。图像的边缘对应着图像灰度的不连续性。显然图像的边缘很少是从一个灰度跳到另一个灰度这样的理想状况。真实图像的边缘通常都具有有限的宽度呈现出陡峭的斜坡状。 边缘的锐利程度由图像灰度的梯度决定。梯度是一个向量,f指出灰度变化最快的方向和变化量。 梯度大小由 确定。而梯度方向则由 确定。因此最简单的边缘检测算子是用图像的垂直和水平差分来逼近梯度算子: 因此当我们寻
7、找边缘的时候,最简单的方法是对每一个像素计算出(2.1.4)的向量,然后求出它的绝对值。利用这种思想就得到了Roberts算子: 2 .Prewitt算子Roberts算子是直观的也是简单的,但是对噪声多的情况显然效果不好。实践中人们做了大量的实践,总结出了一些经验,后来Prewitt提出了一个算子,这就是Prewitt算子。 Prewitt边缘检测算子使用两个有向算子(一个水平的,一个是垂直的,一般称为模板),每一个逼近一个偏导数: 如果我们用Prewitt算子检测图像 M 的边缘的话,我们可以先分别用水平算子和垂直算子对图像进行卷积,得到的是两个矩阵,在不考虑边界的情形下也是和原图像同样大
8、小的 M1,M2,他们分别表示图像M中相同位置处的两个偏导数。然后把M1,M2 对应位置的两个数平方后相加得到一个新的矩阵G,G表示M中各个像素的灰度的梯度值(一个逼近)。然后就可以通过阀值处理得到边缘图像。我们假设图像的灰度满足下面这个关系: 则梯度是(,) 。 显然,当前像素 3×3 邻域内像素值为: 定义垂直算子和水平算子形如: 利用这两个模板对当前像素进行卷积,得到的方向导数为 : 因此当前像素处的梯度的大小为 : 显然要有: 2(2a+b)= 1 我们取 a=b=1/6则得到的模板就是1/6乘Prewitt算子。3. Kirsch算子Kirsch算子由8个3×3窗
9、口模扳组成、每个模板分别代表一个特定的检测方向,其模板算子如图所示。 在进行边缘检测时,把M0-M7所表示的边缘模板(加权矩阵)分别与图像中的一个3×3区域相乘,选取输出值为最大的模板。然后,把这一最大输出值作为中央像素点上的边缘强度,把取得最大值的边缘模板Mk的方向k(k的取值如图所示)作为其边缘方向。假设图像中一点P(i,j)及其八邻域的灰度如图所示,并设Qk(k0,1,7)为图像经过kirsch算子第k个模板处理后得到的k方向上的边缘强度,则P(i,j)的边缘强度为s(i,j)=max|qk|(k=0,1,7),而相应的边缘方向D(i,j)=k|qk为最大值 图 图2.3.2
10、图实验内容1.实验程序清单:<1>Roberts算子程序: clc clear all close all A = imread('cameraman.tif'); % 读入图像 imshow(A);title('原图'); x_mask = 1 0;0 -1; % 建立X方向的模板 y_mask = rot90(x_m
11、ask); % 建立Y方向的模板 I = im2double(A); % 将图像数据转化为双精度 dx = imfilter(I, x_mask); % 计算X方向的梯度分量 dy = imfilter(I, y_mask); % 计算Y方向的梯度分量 grad = sqrt(dx.*dx + dy.*dy);
12、 % 计算梯度 grad = mat2gray(grad); % 将梯度矩阵转换为灰度图像 level = graythresh(grad); % 计算灰度阈值 BW = im2bw(grad,level); % 用阈值分割梯度图像 figure, imshow(BW); % 显示分割后的图像即边缘图像 title(&
13、#39;Roberts') <2>Prewitt算子程序: clc clear all close all A = imread('cameraman.tif');% 读入图像 imshow(A);title('原图'); y_mask = -1 -1 -1;0 0 0;1 1 1; % 建立Y方向的模板
14、;x_mask = y_mask' % 建立X方向的模板 I = im2double(A); % 将图像数据转化为双精度 dx = imfilter(I, x_mask); % 计算X方向的梯度分量 dy = imfilter(I, y_mask); % 计算Y方向的梯度分量 grad =
15、sqrt(dx.*dx + dy.*dy); % 计算梯度 grad = mat2gray(grad); % 将梯度矩阵转换为灰度图像 level = graythresh(grad); % 计算灰度阈值 BW = im2bw(grad,level); % 用阈值分割梯度图像 figure, imshow(BW); &
16、#160;% 显示分割后的图像即边缘图像 title('Prewitt') <3>Kirsch算子程序 clc clear all close all A = imread('cameraman.tif'); % 读入图像 imshow(A);title('原图'); mask1=-3,-3,-3;-3,0,5;-3,5,5; %
17、 建立方向模板 mask2=-3,-3,5;-3,0,5;-3,-3,5; mask3=-3,5,5;-3,0,5;-3,-3,-3; mask4=-3,-3,-3;-3,0,-3;5,5,5; mask5=5,5,5;-3,0,-3;-3,-3,-3; mask6=-3,-3,-3;5,0,-3;5,5,-3; mask7=5,-3,-3;5,0,-3;5,-3,-3; mask8=5,5,-3;5,0,-3;-3,-3,-3; I = im2double(A);
18、0;% 将数据图像转化为双精度 d1 = imfilter(I, mask1); % 计算8个领域的灰度变化 d2 = imfilter(I, mask2); d3 = imfilter(I, mask3); d4 = imfilter(I, mask4); d5 = imfilter(I, mask5); d6 = imfi
19、lter(I, mask6); d7 = imfilter(I, mask7); d8 = imfilter(I, mask8); dd = max(abs(d1),abs(d2); % 取差值变化最大的元素组成灰度变化矩阵 dd = max(dd,abs(d3); dd = max(dd,abs(d4); dd = max(dd,abs(d5);
20、0;dd = max(dd,abs(d6); dd = max(dd,abs(d7); dd = max(dd,abs(d8); grad = mat2gray(dd); % 将灰度变化矩阵转化为灰度图像 level = graythresh(grad); % 计算灰度阈值 BW = im2bw(grad,level); % 用阈值
21、分割梯度图像 figure, imshow(BW); % 显示分割后的图像,即边缘图像 title('Kirsch') 2.实验结果以cameraman图片为例,分别用Roberts、Prewitt和Kirsch三种算法,在无噪声(图11)和有高斯白噪声(图12)的环境下,分别给检测结果。 (图11对未加噪声图片的检测结果 )(图12 噪声图片的检测结果 )实验分析通过图11和图12知,在图像没有噪声的情况下,Roberts算子、Prewitt算子、Kirsch算子,都能够比较准确的检测出图像的边缘。加入高斯白噪声后,三种边缘检测算子的边缘检测效果都多少受到噪声的干扰,检测出大量的噪声点和伪边缘,甚至无法检测出边缘。Roberts算子受噪声的影响最大,Kirsch算子、Prewitt算子受噪声影响比Roberts算子小。 由于各种原因,图像总是受到随机噪声的干扰,可以说噪声无处不在。经典的边缘检测方法由于引入了各种形式的微分运算
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 深度解析(2026)《GBT 33533-2017温泉服务 基本术语》(2026年)深度解析
- 深度解析(2026)《GBT 33457-2016商业网点规划制图规范》(2026年)深度解析
- 任务1.6 绑定收付款方式
- 医疗数据安全治理:区块链政策法规适配创新
- 医疗数据安全未来挑战与应对策略
- 医疗数据安全态势感知:标准规范
- 医疗数据安全培训中的区块链溯源实践
- 医疗数据安全合规的区块链标准国际化
- 【9语12月月考】合肥市蜀山区部分学校2025-2026学年九年级上学期12月考试语文试题
- 医疗数据安全共享标准体系
- 员工放弃社保补缴协议书
- 婚介行业服务创新案例-全面剖析
- 电梯作业人员理论考试练习题库
- 新媒体部笔试试题及答案
- 税务师事务所内部管理制度
- 新版教科版五年级上册科学(全册)教学(期末知识复习知识梳理知识归纳)
- 磷酸铁及磷酸铁锂异物防控管理
- 2025年安徽合肥蜀山科技创新投资集团有限公司招聘笔试参考题库附带答案详解
- 上消化道异物指南解读
- 2025年中国铁路昆明局集团有限公司招聘笔试参考题库含答案解析
- SOX404条款的实施-控制例外事项与缺陷的评估框架课件
评论
0/150
提交评论