图像边缘检测程序

图像边缘检测程序
图像边缘检测程序

图像边缘检测程序

*******************

实践教学

*******************

兰州理工大学

计算机与通信学院

2012年秋季学期

图像处理综合训练

题目:图像边缘检测程序设计

专业班级:

姓名:

学号:

指导教师:

成绩:

目录

摘要 (1)

一、前言 (2)

二、算法分析与描述 (3)

三、详细设计过程 (7)

四、调试过程中出现的问题及相应解决办法 (11)

五、程序运行截图及其说明 (12)

六、简单操作手册 (15)

设计总结 (18)

参考资料 (19)

致谢 (20)

附录 (21)

摘要

图像处理就是对图像信息加工以满足人的视觉心理或应用需求的方法。图像处理方法有光学方法和电子学方法。数字图像处理是利用数字计算机或其它的硬件设备对图像信息转换而得到的电信号进行某些数学处理以提高图像的实用性。

边缘检测是目前图像分析领域中的基础技术,也是数字图像处理中的一项重要内容。它利用图像一阶倒数的极值或二阶倒数的过零点信息来提取边缘。本文对图像边缘检测的几种经典算法包括一阶微分的Sobel算子、Robert算子、Priwitt算子,二阶微分laplacian算子及Canny算子。通过实例图像对不同边缘检测算法的效果进行分析,比较了不同算法的特点和适用范围。

关键词:图像处理;边缘检测;一阶微分;二阶微分

一、前言

在实际图像边缘检测问题中图像的边缘作为图像的一种基本特征经常被应用到较高层次的图像应用中去。它在图像识别图像分割图像增强以及图像压缩等的领域中有较为广泛的应用也是它们的基础。

图像边缘是图像最基本的特征之一往往携带着一幅图像的大部分信息。而边缘存在于图像的不规则结构和不平稳现象中也即存在于信号的突变点处这些点给出了图像轮廓的位置。这些轮廓常常是我们在图像边缘检测时所需要的非常重要的一些特征条件这就需要我们对一幅图像检测并提取出它的边缘。边缘是以图像的局部特征不连续的形式出现的,也就是指图像局部亮度变化最显著的部分,同时边缘也是不同区域的分界处。

边缘检测是图像特征提取的重要技术之一,边缘常常意味着一个区域的终结和另一个区域的开始。图像的边缘包含了物体形状的重要信息,它不仅在分析图像时大幅度地减少了要处理的信息量,而且还保护了目标的边界结构,它对于我们进行高层次的特征描述、识别和理解等有着重大的影响。又由于边缘检测是图像分割、目标区域的识别、区域形状提取等图像分析领域十分重要的基础,是图像识别中提取图像特征的一个重要属性。图像理解和分析的第一步往往就是边缘检测。在工程应用中占有十分重要的地位,所以人们一直在致力于研究和解决如何构造出具有良好性质及好的效果的边缘检测算子的问题。

本次的目的是从理论上对几种经典的边缘检测算法(Sobel算子、Robert 算子、Priwitt算子、laplacian算子及Canny算子)进行分析,并用实现这些算法。最后,通过实例图像对不同边缘检测算法的效果进行分析,找出各种算法的适用范围。

二、算法分析与描述

2.1基于一阶微分的边缘的检测

1、Sobel 算子

Sobel 算子和P rew it t 算子都是一阶的微分算子,都是先对图像进行

平滑处理, 虽然两者都是加权平均滤波, 但是前者邻域的像素对当前像素产生的影响不是等价的, 距离不同的像素具有不同的权值, 对算子结果产生的影响也不同。这两种算子对噪声都有一定的抑制作用, 但不能完全排除检测结果中出现虚假边缘的情况。这两者对灰度渐变低噪声的图像有较好的检测效果, 但是对于混合多复杂噪声的图像处理效果就不理想了。

正如前面所讲,采用33?邻域可以避免在像素之间内插点上计算梯度.考虑一下上图中所示的点[,]i j 周围点的排列.Sobel 算子也是一种梯度幅值, M s s x y

=+22 (1.1) 其中的偏导数用下式计算:

)()()

()(456210670432a ca a a ca a s a ca a a ca a s y x ++-++=++-++= (1.2)

其中常数2=c

和其他的梯度算子一样,s x 和s y 可用卷积模板来实现,如图1.1所示:

1012

02101---=x s 1

2100012

1---=y s

图1.1

请注意这一算子把重点放在接近于模板中心的像素点.Sobel 算子是边缘检测器中最常用的算子之一.

4

5637

210

],[a a a a j i a a a a (图1.2)

图1.2 用于说明Sobel算子和Prewitt算子的邻域像素点标记 Prewitt算子与Sobel算子的方程完全一样,只是常量c=1.所以

1

1

1

1

1

1

-

-

-

=

x

s

1

1

1

1

1

1

-

-

-

=

y

s (1.3)

请注意,与Sobel算子不同,这一算子没有把重点放在接近模板中心的像素

点如图1.3所示

2、Robert算子

Robert算子边缘检测算子也叫交叉差分算子,是一种利用局部差分寻找

边缘的算子,用22

?领域的处理。

边缘,是指周围像素灰度有阶跃变化或屋顶等变化的那些像素的集合。图

像的边缘对应着图像灰度的不连续性。显然图像的边缘很少是从一个灰度跳

到另一个灰度这样的理想状况。真实图像的边缘通常都具有有限的宽度呈现

出陡峭的斜坡状。边缘的锐利程度由图像灰度的梯度决定。梯度是一个向量,?f指出灰度变化最快的方向和变化量。

)

,

(

f

y

f

x

f

?

?

?

?

=

? (1.5)

2

2

??

?

?

?

?

?

?

+

?

?

?

?

?

?

?

=

?

y

f

x

f

f(1.6)

?

?

?

?

?

?

?

?

?

?

?

=

x

f

y

f

θ (1.7)

梯度大小由确定。而梯度方向则由确定,因此最简单的边缘检测算子是用图像的垂直和水平差分来逼近梯度算子:

()()))1

,

(

)

,

(

,

,1

,

(-

-

-

-

=

?y

x

f

y

x

f

y

x

f

y

x

f

f (1.8)

因此当我们寻找边缘的时候,最简单的方法是对每一个像素计算出(1.8)的向量,然后求出它的绝对值。利用这种思想就得到了Roberts算子:

21

22})],1()1,([)]1,1(),({[),(y x f y x f y x f y x f y x g +-++++-= (1.9) 其中f(x,y)是具有整数像素坐标的输入图像。

其中g(x,y)由下面的模板计算:

G x =-1001 G y =-0110

(1.3) 同前面的22?梯度算子一样,差分值将在内插点[x+1/2;y+1/2]处计算.Roberts 算子是该点连续梯度的近似值,而不是所预期的点[x,y]处的近似值。

3、laplacian 算子

平滑过的阶跃边缘二阶导数是一个在边缘点处过零的函数。拉普拉斯算子

是二阶导数边缘算子。函数),(y x f 的拉普拉斯算子公式为

?=+2

2222f f x f y ???? (1.7) 使用差分方程对x 和y 方向上的二阶偏导数近似如下:

5 (1.8)

这一近似式是以点[x,y+1]为中心的。用y-1替换y ,得到

=2

2x f ??]1,[]),[2]1,[(-+-+j i f j i f j i f (1.9) 它是以点[,]i j 为中心的二阶偏导数的理想近似式,类似地,

=22y

f ??],1[]),[2],1[(j i f j i f j i f -+-+ (1.10) 把这两个式子合并为一个算子,就成为下面能用来近似拉普拉斯算子的模板:

??????????-≈?010******* (1.11)

当拉普拉斯算子输出出现过零点时就表明有边缘存在,其中忽略无意义的

过零点(均匀零区)。原则上,过零点的位置精度可以通过线性内插方法精确到子像素分辨率,不过由于噪声,结果可能不会很精确。

4.Canny 算子

检测阶跃边缘的基本思想是在图像中找出具有局部最大梯度幅值的像素点。

检测阶跃边缘的大部分工作集中在寻找。

Canny 边缘检测器是高斯函数的一阶导数,是对信噪比与定位之乘积的最优化逼近算子[Canny 1986]。我们将通过下面的符号对Canny 边缘检测器算法作一概括说明。用],[j i I 表示图像,使用可分离滤波方法求图像与高斯平滑滤波器卷积,得到的结果是一个已平滑数据阵列

],[];,[],[j i I j i G j i S *=σ,

其中σ是高斯函数的散布参数,它控制着平滑程度。

已平滑数据阵列S i j [,]的梯度可以使用22?一阶有限差分近似来计算x 与y 偏导数的两个阵列],[j i P 与],[j i Q :

2

/])1,1[]1,[],1[],[(],[2/]),1[]1,1[],[]1,[(],[++-+++-≈+-+++-+≈j i S j i S j i S j i S j i Q j i S j i S j i S j i S j i P (1.12) 在这个22?正方形内求有限差分的均值,以便在图像中的同一点计算x 和y 的偏导数梯度。幅值和方位角可用直角坐标到极坐标的坐标转化公式来计算:

[]22],[],[,j i Q j i P j i M += (1.13)

)],[/],[(arctan ],[j i P j i Q j i =θ (1.14)

其中,反正切函数包含了两个参量,它表示一个角度,其取值范围是整个圆周范围内。为高效率地计算这些函数,尽量不用浮点运算.梯度的幅度和方向也可以通过查找表由偏导数计算。

三、详细设计过程

1、分析

图像的大部分主要信息都存在于图像的边缘中,主要表现为图像局部特征的不连续性,是图像中灰度变化比较剧烈的地方,即通常所说的信号发生奇异变化的地方。奇异信号沿边缘走向的灰度变化剧烈,通常将边缘划分为阶跃状和屋顶状两种类型如图 3.1所示。阶跃边缘中两边的灰度值有明显的变化;而屋顶状边缘位于灰度增加与减少的交界处。在数学上可利用灰度的导数来刻画边缘点的变化,对阶跃边缘、屋顶状边缘分别求其一阶、二阶导数。

图3.1 阶跃边缘和屋顶状边缘处一阶和二阶导

数变化规律

(其中第一排为理想信号,第二排对应实际信号) 2、工作流程分析

系统工作流程较为简单,功能用于对图像进行边缘检测,工作流程并不

复杂。

双击ch1_1.exe 文件,系统界面就出现了,点击文件,然后选择打开,

打开BMP 格式的图片文件,此时图片就会显示在工作区域;主要模块的系统过程如图3.2所示

图3.2

4、一阶微分算法的实验结果与分析

(1)Sobel 算子公式的定义为:

(2)实验结果分析

以cameraman 图片为例,用Sobel 算法,分别给检测结果。

理论上Sobel 算子可以轻易在空间上实现,Sobel 边缘检测器不但可以产生

)1,1()1,(2)1,1(|),(++++++-=y x f y x f y x f y x G X |)1,1()1,(2)1,1(-+------y x f y x f y x f )1,1(),1(2)1,1(|),(+++++-+=y x f y x f y x f y x G y |

)1,1(),1(2)1,1(+-------y x f y x f y x f

较好的边缘检测效果由5.2图可以看出Sobel 算子虽然检测到的边缘信息很丰富,也较为连续,但是边缘很模糊,严重的影响了视觉效果。

(4)Robert 算子的公式定义为: 21

22})],1()1,([)]1,1(),({[),(y x f y x f y x f y x f y x g +-++++-=

(5)Prewitt 算子: Prewitt 算子与Soble 算子不同的地方在于没有把重点放在接近模板中心的像素点。Prewitt 算子首先进行邻域平均或加权平均,然后进行微分。

(6)实验结果分析

以cameraman 图片为例,分别用Roberts 、Prewitt 两种算法,分别给检测结果。

通过图5.3和图5.4知, Roberts 算子、Prewitt 算子,都能够比较准确的检测出图像的边缘。

基于一阶微分的边缘检测算子具有实现简单、运算速度快等特点,检测结果不可靠,不能准确判定边缘的存在及边缘的准确位置,造成这种情况的原因:(1)实际边缘灰度与理想边缘灰度值间存在差异,这类算子可能检测出多个边缘;(2)边缘存在的尺度范围各不相同,这类算子固定的大小不利于检测出不同尺度上的所有边缘;(3)对噪声都比较敏感。

5、二阶微分算法的实验结果与分析

(1)Laplacian 算子的公式为: ?=+2

2222f f x f y ???? (2)Canny 算子的公式为:

],[];,[],[j i I j i G j i S *=σ

(3)实验结果分析

以cameraman 图片为例,分别用Laplacian 、Canny 两种算法,分别给检测结果。

由图5.5可以看出Laplacian 算子:对图像中的阶跃性边缘点定位准确。 Canny :采用高斯函数对图像进行平滑处理,该算子也将一些高频边缘平滑

掉,造成边缘丢失,采用了双阈值算法检测和连接边缘,边缘的连续性较好。 Laplacian算子是对二维函数进行运算的二阶导数算子,与方向无关,对取向不敏感,因而计算量要小。根据边缘的特性,Laplacian算子可以作为边缘提取算子,计算数字图像的Laplacian值可以借助模板实现,它相当于高通滤波,常会出现一些虚假边缘。Canny算子是一个具有滤波、增强和检测的多阶段的优化算子。

在进行处理前,Canny算子增强边缘是将邻域(或局部)强度值有显著变化的点突出来,一般通过计算梯度幅值来完成。Canny分割算法采用一阶偏导的有限差分来计算梯度的幅值和方向。对一个边缘来说,其一阶导数在边界处存在一个向上的阶跃,或者其二阶导数过零点。在处理过程中,Canny算法还将经过一个非极大值抑制的过程。最后Canny算法将采用两个阈值来连接边缘。但也有不足之处,Canny算法对整幅图像采用同一高斯函数进行滤波,无法顾及图像局部特征信息,边缘检测的阈值需要预先设定。先确定一个阈值系数,该系数定义为梯度小于阈值的像素数所占边缘像素总数的比例,以此来确定阈值。这种方法没有利用图像自身的信息,不具有自适应能力。

四、调试过程中出现的问题及相应解决办法

Matlab语言是一种解释执行的语言,它灵活、方便,其调试程序手段丰富,调试速度快。。Matlab语言与其它语言相比,把编辑、编译、连接和执行融为一体。它能在同一画面上进行灵活操作快速排除输入程序中的书写错误、语法错误以至语意错误,从而加快了用户编写、修改和调试程序的速度,可以说在编程和调试过程中它是一种非常简单的语言。

但之前并没有熟悉Matlab的编译,出现直接把程序复制粘贴的错误,后来才学习正确的编译运行过程。

代码在运行过程中的错误:

[filename, pathname] = uigetfile( ...

{'*.bmp;*.jpg;*.png;*.jpeg', 'Image Files (*.bmp, *.jpg, *.png, *.jpeg)'; ...

'*.*', 'All Files (*.*)'}, ...

'Pick an image');

axes(handles.axes_src);

fpath=[pathname filename];

此代码缺少了imread读入图片,因此不能够正确的运行。应在代码后面加入如下代码:

img_src=imread(fpath);

五、程序运行截图及其说明

1、图5.1:是原图,做为参考图片

图5.

2、图5.2:是Sobel算子运行出来后的图片,能检测到的边缘信息较为连续,但边缘很模糊。

图5.2

3、图5.3:是Roberts算子运行出来后所得的图片,但边缘较细。

图5.3

4、图5.4:是Prewitt算子运行后的图片,所得的图片精度不高,边缘较粗。

图5.4

5、图5.5:是Laplacian算子所得,对图像中的阶跃性边缘点定位准确,有信息丢失,边缘不够连续。

图5.5

6、图5.6:是Canny算子所得,边缘较联系,但还是有丢失边缘信息。

图5.6

六、简单操作手

1、Matlab运行环境简介

1)启动Matlab 可由下列方法之一进入Matlab命令行窗口:

(1)开始→程序→ Matlab。

(2)双击桌面Matlab图标。

2)编制、运行Matlab程序可用下列方法之一编制和运行Matlab程序

选择菜单条中的“File → Open (或New)进入Matlab程序编辑器,在编辑器中编辑程序。 A. 命令行以“,”或“;”结尾。以“,”结尾运行时显示该命令运行结果,以“;”结尾不显示该命令运行结果。 B. 注释前加“%”。

C. 运行操作可使用命令快捷键。

2、图像文件的读、写和显示

图像文件的读取读图像文件的函数格式:

A=imread(‘路径、文件名及文件后缀’),如

I=imread(‘e:\image.bmp’)

其含义:将e盘中的bmp文件image赋给变量I,bmp(windows bitmap)为位图文件。

3、得到的窗口如图6.1,文件菜单里包括:打开,保存,退出按钮;图像处理菜单里包括:Sobel算子、Robert算子、Priwitt算子、laplacian算子、Canny算子功能相应的按钮,分别为Sobel、Robert、Priwitt、laplacian、Canny。

基于小波变换的图像边缘检测算法

基于小波变换的图像边缘检测算法仿真实 现 学生姓名:XX 指导教师:xxx 专业班级:电子信息 学号:00000000000 学院:计算机与信息工程学院 二〇一五年五月二十日

摘要 数字图像边缘检测是图像分割、目标区域识别和区域形态提取等图像分析领域中十分重要的基础,是图像识别中提取图像特征一个重要方法。 目前在边缘检测领域已经提出许多算法,但是提出的相关理论和算法仍然存在很多不足之处,在某些情况下仍然无法很有效地检测出目标物的边缘。由于小波变换在时域和频域都具有很好的局部化特征,并且具有多尺度特征,因此,利用多尺度小波进行边缘检测既能得到良好的抑制噪声的能力,又能够保持边缘的完备。 本文就是利用此方法在MATLAB环境下来对数字图像进行边缘的检测。 关键词:小波变换;多尺度;边缘检测

Abstract The boundary detection of digital image is not only the important foundation in the field of image segmentation and target area identification and area shape extraction, but also an important method which extract image feature in image recognition. Right now, there are a lot of algorithms in the field of edge detection, but these algorithms also have a lot of shotucuts, sometimes, they are not very effective to check the boundary of the digital image. Wavelet transform has a good localization characteristic in the time domain and frequency domain and multi-scale features, So, the boundary detection of digital image by using multi-scale wavelet can not only get a good ability to suppress noise, but also to maintain the completeness of the edge. This article is to use this method in the environment of MATLAB to detect the boundary of the digital image. Keywords: wavelet transform; multi-scale; boundary detection.

汽车标志识别设计-MATLAB程序设计

设计目的:车牌定位系统的目的在于正确获取整个图像中车标的区域,并识别出车标。 程序效果: 程序实现: STEP1:输入待处理的原始图像: 程序: 1 2 3 4 clear;clc;close all; %Step1 获取图像 装入待处理彩色图像并显示原始图像 Scolor = imread( '1.jpg');%imread 函数读取图像文件 subplot(3,4,1);imshow(Scolor),title('原始图像') 输出:

SETP2:图像的灰度化: 彩色图像包含着大量的颜色信息,不但在存储上开销很大,而且在处理上也会降低系统的执行速度,因此在对图像进行识别等处理中经常将彩色图像转变为灰度图像,以加快处理速度。由彩色转换为灰度的过程叫做灰度化处理。选择的标准是经过灰度变换后,像素的动态范围增加,图像的对比度扩展,使图像变得更加清晰、细腻、容易识别。 程序: 输出: 原始图像 1 2 3 %将彩色图像转换为黑白并显示 Sgray = rgb2gray(Scolor);%rgb2gray 转换成灰度图 subplot(3,4,2);imshow(Sgray),title('原始黑白图像');

STEP3:对原始图像进行开操作得到图像背景图像:程序: 1 2 3 4 %对原始图像进行开操作得到图像背景图像: s=strel('disk',13);%strei函数 Bgray=imopen(Sgray,s);%打开sgray s图像 subplot(3,4,3);imshow(Bgray);title('背景图像');%输出背景图像 输出: 原始黑白图像

Matlab做图像边缘检测的多种方法

Matlab做图像边缘检测的多种方法 1、用Prewitt算子检测图像的边缘 I = imread('bacteria.BMP'); BW1 = edge(I,'prewitt',0.04); % 0.04为梯度阈值 figure(1); imshow(I); figure(2); imshow(BW1); 2、用不同σ值的LoG算子检测图像的边缘 I = imread('bacteria.BMP'); BW1 = edge(I,'log',0.003); % σ=2 imshow(BW1);title('σ=2') BW1 = edge(I,'log',0.003,3); % σ=3 figure, imshow(BW1);title('σ=3') 3、用Canny算子检测图像的边缘 I = imread('bacteria.BMP'); imshow(I); BW1 = edge(I,'canny',0.2); figure,imshow(BW1); 4、图像的阈值分割 I=imread('blood1.tif'); imhist(I); % 观察灰度直方图,灰度140处有谷,确定阈值T=140 I1=im2bw(I,140/255); % im2bw函数需要将灰度值转换到[0,1]范围内 figure,imshow(I1); 5、用水线阈值法分割图像 afm = imread('afmsurf.tif');figure, imshow(afm); se = strel('disk', 15); Itop = imtophat(afm, se); % 高帽变换 Ibot = imbothat(afm, se); % 低帽变换 figure, imshow(Itop, []); % 高帽变换,体现原始图像的灰度峰值 figure, imshow(Ibot, []); % 低帽变换,体现原始图像的灰度谷值 Ienhance = imsubtract(imadd(Itop, afm), Ibot);% 高帽图像与低帽图像相减,增强图像figure, imshow(Ienhance); Iec = imcomplement(Ienhance); % 进一步增强图像

图像的阈值分割及边缘检测技术

数字图像处理实验报告 题目:图像的阈值分割及边缘检测技术 班级: 姓名: 学号:

图像的阈值分割及边缘检测技术 一、实验目的 1、了解图像的分割技术,掌握图像的全局阈值分割技术并通过MATLAB实现; 2、了解图像的边缘检测,掌握梯度算子图像边缘检测方法。 二、实验内容 1、基于直方图的全局阈值图像分割方法; 2、Edge命令(roberts,perwitt,sobel,log,canny),实现边缘检测。 三、实验原理 1、全局阈值是最简单的图像分割方法。其中,直方图法的原理如下:想做出图 像的直方图,若其直方图呈双峰且有明显的谷底,则可以讲谷底点所对应的灰度值作为阈值T,然后根据该阈值进行分割,九可以讲目标从图像中分割出来。这种方法是用于目标和背景的灰度差较大且直方图有明显谷底的情况。 2、用于边缘检测的梯度算子主要有Roberts算子、Prewitt算子、Sobel算子。 这三种检测算子中,Roberts算子定位精度较高,但也易丢失部分边缘,抗噪声能力差,适用于低噪声、陡峭边缘的场合。Prewitt算子、Sobel算子首先对图像做平滑处理,因此具有一定的抑制噪声的能力,但不能排除检测结果中的虚假边缘,易出现多像素宽度。

四、实验步骤 1、全局阈值分割: ①读取一张图像; ②生成该图像的直方图; ③根据直方图双峰产生的低谷估计阈值T; ④依次读取图像各个点的像素,若大于阈值,则将像素改为255,若小于 阈值,则将该像素改为0; 实验代码如下: I=imread('cameraman.tif'); %读取一张图像 subplot(221);imshow(I); %显示该图像 subplot(222);imhist(I); %生成该图像的直方图 T=60; %根据直方图估计阈值T为60 [m,n]=size(I); %取图像的大小为【m,n】 for i=1:m %依次读取图像各个点的像素,若大于阈 值,则将像素改为255,若小于阈值, 则将该像素改为0 for j=1:n if I(i,j)>=T I(i,j)=255; else I(i,j)=0; end end

几种常用边缘检测算法的比较

几种常用边缘检测算法的比较摘要:边缘是图像最基本的特征,边缘检测是图像分析与识别的重要环节。基于微分算子的边缘检测是目前较为常用的边缘检测方法。通过对Roberts,Sobel,Prewitt,Canny 和Log 及一种改进Sobel等几个微分算子的算法分析以及MATLAB 仿真实验对比,结果表明,Roberts,Sobel 和Prewitt 算子的算法简单,但检测精度不高,Canny 和Log 算子的算法复杂,但检测精度较高,基于Sobel的改进方法具有较好的可调性,可针对不同的图像得到较好的效果,但是边缘较粗糙。在应用中应根据实际情况选择不同的算子。 0 引言 边缘检测是图像分析与识别的第一步,边缘检测在计算机视觉、图像分析等应用中起着重要作用,图像的其他特征都是由边缘和区域这些基本特征推导出来的,边缘检测的效果会直接影响图像的分割和识别性能。边缘检测法的种类很多,如微分算子法、样板匹配法、小波检测法、神经网络法等等,每一类检测法又有不同的具体方法。目前,微分算子法中有Roberts,Sobel,Prewitt,Canny,Laplacian,Log 以及二阶方向导数等算子检测法,本文仅将讨论微分算子法中的几个常用算子法及一个改进Sobel算法。 1 边缘检测

在图像中,边缘是图像局部强度变化最明显的地方,它主要存在于目标与目标、目标与背景、区域与区域( 包括不同色彩) 之间。边缘表明一个特征区域的终结和另一特征区域的开始。边缘所分开区域的内部特征或属性是一致的,而不同的区域内部特征或属性是不同的。边缘检测正是利用物体和背景在某种图像特征上的差异来实现检测,这些差异包括灰度、颜色或纹理特征,边缘检测实际上就是检测图像特征发生变化的位置。边缘的类型很多,常见的有以下三种: 第一种是阶梯形边缘,其灰度从低跳跃到高; 第二种是屋顶形边缘,其灰度从低逐渐到高然后慢慢减小; 第三种是线性边缘,其灰度呈脉冲跳跃变化。如图1 所示。 (a) 阶梯形边缘(b) 屋顶形边缘 (b) 线性边缘 图像中的边缘是由许多边缘元组成,边缘元可以看作是一个短的直线段,每一个边缘元都由一个位置和一个角度确定。边缘元对应着图像上灰度曲面N 阶导数的不连续性。如果灰度曲面在一个点的N 阶导数是一个Delta 函数,那么就

图像边缘检测方法比较研究

图像边缘检测方法比较研究 作者:关琳琳孙媛 来源:《现代电子技术》2008年第22期 摘要:边缘检测在数字图像处理中有着重要的作用。系统分析目前具有代表性的边缘检测方法,并用IDL6.3软件实现各种算法。实验结果表明,各种方法均有各自的优缺点和适用条件,在做图像边缘检测之前,应对图像进行分析,针对图像的特点和应用需求选用合适的方法。 关键词:边缘检测;检测算子;高通滤波;小波变换 中图分类号:TP391文献标识码:A 文章编号:1004-373X(2008)22-096-03 Comparison of Image Edge Detection Methods GUAN Linlin1,SUN Yuan2 (1.Department of Resource Science and Technology,Beijing Normal University,Beijing,100875,China; 2.96656 Unit of Second Artillery F orces,Chinese People′s Liberation Army,Beijing,100820,China) Abstract:Edge detection plays an important role in digital image processing.This paper comprehensively analyze the representative methods of edge detection at present,and realizes each algorithm with the IDL6.3 software.Results indicate that each method has some advantages and limitations.It should be carefully selected according to the characteristics of the image as well as application needs before conducting edge detection. Keywords:edge detection;detective operators;high-pass filtering;wavelet transform 1 引言 边缘检测技术是图像特征提取中的重要技术之一,也是图像分割、目标区域识别、区域形状提取等图像分析方法的基础。近年来,边缘检测技术被广泛地应用在各个领域,例如工程技术中零件检查[1]、医学中器官病变状况观察[2]、遥感图像处理中道路等典型地物的提取[3]以及估算遥感平台的稳定精度[4]等。这使得如何快速、准确地获得边缘信息成为国内外研究的热点。边缘检测方法在空间域和频域中均可以实现,而且不断涌现出新技术新方法。这些方法

数字图像处理中的边缘检测技术

课程设计报告 设计题目:数字图像处理中的边缘检测技术学院: 专业: 班级:学号: 学生姓名: 电子邮件: 时间:年月 成绩: 指导教师:

数字图像处理中的边缘检测技术课程设计报告I 目录 1 前言:查阅相关文献资料,了解和掌握基本原理、方法和研究现状,以及实际应用的背景意义 (1) 1.1理论背景 (1) 1.2图像边缘检测技术研究的目的和意义 (1) 1.3国内外研究现状分析 (2) 1.4常用边缘检测方法的基本原理 (3) 2 小波变换和小波包的边缘检测、基于数学形态学的边缘检测法算法原理 (7) 2.1 小波边缘检测的原理 (7) 2.2 数学形态学的边缘检测方法的原理 (7) 3 算法实现部分:程序设计的流程图及其描述 (9) 3.1 小波变换的多尺度边缘检测程序设计算法流程图 (9) 3.2 数学形态学的边缘检测方法程序设计算法描述 (10) 4实验部分:对所给的原始图像进行对比实验,给出相应的实验数据和处理结果 (11) 5分析及结论:对实验结果进行分析比较,最后得出相应的结论 (15) 参考文献 (17) 附录:代码 (18)

1前言 查阅相关文献资料,了解和掌握基本原理、方法和研究现状,以及实际应用的背景意义 1.1 理论背景 图像处理就是对图像信息加工以满足人的视觉心理或应用需求的方法。图像处理方法有光学方法和电子学方法。从20世纪60年代起随着电子计算机和计算技术的不断提高和普及,数字图像处理进入了高速发展时期,而数字图像处理就是利用数字计算机或其它的硬件设备对图像信息转换而得到的电信号进行某些数学处理以提高图像的实用性。 图像处理在遥感技术,医学领域,安全领域,工业生产中有着广泛的应用,其中在医学应用中的超声、核磁共振和CT等技术,安全领域的模式识别技术,工业中的无损检测技术尤其引人注目。 计算机进行图像处理一般有两个目的:(1)产生更适合人观察和识别的图像。 (2)希望能由计算机自动识别和理解图像。数字图像的边缘检测是图像分割、目标区域的识别、区域形状提取等图像分析领域的重要基础,图像处理和分析的第一步往往就是边缘检测。 物体的边缘是以图像的局部特征不连续的形式出现的,也就是指图像局部亮度变化最显著的部分,例如灰度值的突变、颜色的突变、纹理结构的突变等,同时物体的边缘也是不同区域的分界处。图像边缘有方向和幅度两个特性,通常沿边缘的走向灰度变化平缓,垂直于边缘走向的像素灰度变化剧烈。根据灰度变化的特点,图像边缘可分为阶跃型、房顶型和凸缘型。 1.2 图像边缘检测技术研究的目的和意义 数字图像处理是伴随着计算机发展起来的一门新兴学科,随着计算机硬件、软件的高度发展,数字图像处理也在生活中的各个领域得到了广泛的应用。边缘检测技术是图像处理和计算机视觉等领域最基本的技术,如何快速、精确的提取图像边缘信息一直是国内外研究的热点,然而边缘检测也是图像处理中的一个难题。 首先要研究图像边缘检测,就要先研究图像去噪和图像锐化。前者是为了得到飞更真实的图像,排除外界的干扰,后者则是为我们的边缘检测提供图像特征更加明显的图片,即加大图像特征。两者虽然在图像处理中都有重要地位,但本次研究主要是针对图像边缘检测的研究,我们最终所要达到的目的是为了处理速

图像边缘检测算法体验步骤

图像边缘检测算法体验步骤 图像边缘检测算法体验步骤(Photoshop,Matlab)1. 确定你的电脑上已经安装了Photoshop和Matlab2. 使用手机或其他任何方式,获得一张彩色图像(任何格式),建议图像颜色丰富,分辨率比较高,具有比较明显的图像边界(卡通图像,风景图像,桌面图像)3. 将图像保存到一个能够找到的目录中,例如img文件夹(路径上没有汉字)4. 启动Photoshop,打开img文件夹中的图像5. 在工具箱中选择“矩形选择”工具,到图面上选择一个区域(如果分辨率比较高,建议不要太大,否则计算过程比较长)6. 点击下拉菜单【文件】-【新建】,新建一个与矩形选择框同样尺寸的Photoshop图像,不要求保存该图像7. 将该彩色图像转换为亮度图像,即点击下拉菜单【图像】-【模式】-【灰度】,如提示是否合并,选择“Yes”8. 将该单色的亮度图像另存为Windows的BMP文件,点击下拉菜单【文件】-【存储为】,在“存储为”窗口中,为该文件起一个名字,例如test1(保存为test1.bmp)9. 启动Matlab,将当期路径(Current Directory)定位到图像文件夹,例如这里的img文件夹10. 使用imread命令读入该图像,在命令行输入:>> f = imread(test1.bmp);11. 在Matlab中显示该图像,在命令行输入:>> figure, imshow(f)12. 然后,分别使用Matlab图像工具箱中的Edge函数,分别使用Sobel算法,高斯-拉普拉斯(Log)算法和Canny算法得到的边缘图像:在命令行输入:>> g_sobel = edge(f, sobel, 0.05); >> g_log = edge(f, log, 0.003, 2.25); >> g_canny = edge(f, canny, [0.04 0.10], 1.5);13 得到边缘图像计算结果后,显示这些边缘图像: >> figure, imshow(g_sobel) >> figure, imshow(g_log) >> figure, imshow(g_canny)14 可以用不同的图像做对比,后续课程解释算法后,可以变换不同的阈值,得到不同的边缘图像

图像边缘检测方法的研究与实现刘法200832800066

图像边缘检测方法的研究与实现刘法200832800066

青岛大学专业课程设计 院系: 自动化学院 专业: 电子信息工程 班级: 08级电子信息工程3班学生姓名: 刘法 指导教师: 王汉萍庄晓东 日期: 2011年12月23日

题目:图像边缘检测方法的研究与实现 一、边缘检测以及相关概念 1.1边缘,边缘检测的介绍 边缘(edge)是指图像局部强度变化最显著的部分.边缘主要存在于目标与目标、目标与背景、区域与区域(包括不同色彩)之间,是图像分割、纹理特征和形状特征等图像分析的重要基础.图像分析和理解的第一步常常是边缘检测(edge detection). 边缘检测是指使用数学方法提取图像像元中具有亮度值(灰度)空间方向梯度大的边、线特征的过程。 在讨论边缘算子之前,首先给出一些术语的定义: 边缘点:图像中具有坐标] ,[j i且处在强度显著变化的位置上的点.边缘段:对应于边缘点坐标] i及其方位 ,边缘的方位可能是梯度角. ,[j 边缘检测器:从图像中抽取边缘(边缘点和边缘段)集合的算法. 轮廓:边缘列表,或是一条表示边缘列表的拟合曲线. 边缘连接:从无序边缘表形成有序边缘表的过程.习惯上边缘的表示采用顺时针方向序. 边缘跟踪:一个用来确定轮廊的图像(指滤波后的图像)搜索过程. 边缘点的坐标可以是边缘位置像素点的行、列整数标号,也可以在子像素分辨率水平上表示.边缘坐标可以在原始图像坐标系上表示,但大多数情况下是在边缘检测滤波器的输出图像的坐标系上表示,因为滤波过程可能导致图像坐标平移或缩放.边缘段可以用像素点尺寸大小的小线段定义,或用具有方位属性的一个点定义.请注意,在实际中,边缘点和边缘段都被称为边缘.边缘连接和边缘跟踪之间的区别在于:边缘连接是把边缘检测器产生的无序边缘集作为输入,输出一个有序边缘集;边缘跟踪则是将一幅图像作为输入,输出一个有序边缘集.另外,边缘检测使用局部信息来决定边缘,而边缘跟踪使用整个图像信息来决定一个像素点是不是边缘. 1.2 边缘检测算子 边缘检测是图像特征提取的重要技术之一, 边缘常常意味着一个区域的终结和另一个区域的开始. 图像的边缘包含了物体形状的重要信息,它不仅在分析图像时大幅度地减少了要处理的信息量,而且还保护了目标的边界结构. 因此,边缘检测可以看做是处理许多复杂问题的关键. 边缘检测的实质是采用某种算法来提取出图像中对对象与背景间的交界线。图像灰度的变化情况可以用图像灰度分布的梯度来反映,因此可以用局部图像微分技术来获取边缘检测算子。经典的边缘检测方法是对原始图像中的像素的某个邻域来构造边缘检测算子。以下是对几种经典的边缘检测算子进行理论分析,并对各自的性能特点做出比较和评价。 边缘检测的原理是:由于微分算子具有突出灰度变化的作用,对图像进行微分运算,在图像边缘处其灰度变化较大,故该处微分计算值教高,可将这些微分值作为相应点的边缘强度,通过阈值判别来提取边缘点,即如果微分值大于阈值,则为边缘点。

基于matlab的图像边缘检测算法研究和仿真设计

基于matlab的图像边缘检测算法研究和仿真 目录 第1章绪论 1 1.1 序言 1 1.2 数字图像边缘检测算法的意义 1 第2章传统边缘检测方法及理论基础 2 2.1 数字图像边缘检测的现状与发展 2 2.2 MATLAB和图像处理工具箱的背景知识 3 2.3 数字图像边缘检测关于边缘的定义 4 2.4 基于一阶微分的边缘检测算子 4 2.5 基于二阶微分的边缘检测算子 7 第3章编程和调试 10 3.1 edge函数 10 3.2 边缘检测的编程实现 11 第4章总结 13 第5章图像边缘检测应用领域 13 附录参考文献 15

第1章绪论 §1.1 序言 理解图像和识别图像中的目标是计算机视觉研究的中心任务,物体形状、物体边界、位置遮挡、阴影轮廓及表面纹理等重要视觉信息在图像中均有边缘产生。图像边缘是分析理解图像的基础,它是图像中最基本的特征。在Marr的计算机视觉系统中,图像边缘提取占据着非常重要位置,它位于系统的最底层,为其它模块所依赖。图像边缘提取作为计算机视觉领域最经典的研究课题,长期受到人们的重视。 图像边缘主要划分为阶跃状和屋脊状两种类型。阶跃状边缘两侧的灰度值变化明显,屋脊状边缘则位于灰度增加与减少的交界处。传统的图像边缘检测方法大多是从图像的高频分量中提取边缘信息,微分运算是边缘检测与提取的主要手段。由于传统的边缘检测方法对噪声敏感,所以实际运用效果有一定的局限性。近年来,越来越多的新技术被引入到边缘检测方法中,如数学形态学、小波变换、神经网络和分形理论等。 Canny于1986年提出基于最优化算法的边缘检测算子,得到了广泛的应用,并成了与其它实验结果作比较的标准。其原因在于他最先建立了优化边缘检测算子的理论基础,提出了迄今为止定义最为严格的边缘检测的三个标准。另外其相对简单的算法使得整个过程可以在较短的时间实现。实验结果也表明,Canny算子在处理受加性高斯白噪声污染的图像方面获得了良好的效果[1]。 §1.2 数字图像边缘检测算法的意义 数字图像处理是控制领域的重要课题,数字图像边缘检测是图像分割、目标区域识别和区域形状提取等图像分析领域十分重要的基础,是图像识别中提取图像特征的一个重要方法。边缘中包含图像物体有价值的边界信息,这些信息可以用于图像理解和分析,并且通过边缘检测可以极降低后续图像分析和处理的数据量。图像理解和分析的第一步往往就是边缘检测,目前它已成为机器视觉研究领域最活跃的课题之一,在工程应用中占有十分重要的地位。 图像的边缘检测技术是数字图像处理技术的基础研究容,是物体识别的重要基础。边缘特征广泛应用于图像分割、运动检测与跟踪、工业检测、目标识别、双目立体视觉等领域。现有边缘检测技术在抑制噪声方面有一定的局限性,在阈值参数选取方面自适

实验三图像分割与边缘检测

数字图像处理实验报告 学生姓名王真颖 学生学号L0902150101 指导教师梁毅雄 专业班级计算机科学与技术1501 完成日期2017年11月06日

计算机科学与技术系信息科学与工程学院

目录 实验一.................................................................................................. 错误!未定义书签。 一、实验目的.................................................................................................... 错误!未定义书签。 二、实验基本原理 ........................................................................................... 错误!未定义书签。 三、实验内容与要求....................................................................................... 错误!未定义书签。 四、实验结果与分析....................................................................................... 错误!未定义书签。实验总结............................................................................................... 错误!未定义书签。参考资料.. (3) 实验一图像分割与边缘检测 一.实验目的 1. 理解图像分割的基本概念; 2. 理解图像边缘提取的基本概念; 3. 掌握进行边缘提取的基本方法;

基于MATLAB的图像处理的课程设计(车牌识别系统)

目录 一、课程设计目的 (3) 二、课程设计要求 (3) 三、课程设计的内容 (3) 四、题目分析 (3) 五、总体设计 (4) 六、具体设计 (5) 1、文件 (5) 1.1、打开 (5) 1.2、保存 (5) 1.3、退出 (5) 2、编辑 (5) 6.2.1、灰度 (5) 6.2.2、亮度 (6) 6.2.3、截图 (7) 6.2.4、缩放 (7) 3、旋转 (9) 6.3.1、上下翻转 (9) 6.3.2、左右翻转 (9) 6.3.3任意角度翻转 (9) 6.4、噪声 (10) 6.5、滤波 (10) 6.6、直方图统计 (11) 6.7、频谱分析 (12) 6.7.1、频谱图 (12) 6.7.2、通过高通滤波器........................... .. (12) 6.7.3、通过低通滤波器...................................... . (13) 6.8、灰度图像处理................................................ . . (14) 6.8.1、二值图像……………………………………………….. .14 6.8.2、创建索引图像............................................. (14) 6.9、颜色模型转换...................................... .. (14) 6.10、操作界面设计 (15) 七、程序调试及结果分析 (15) 八、心得体会 (16) 九、参考文献 (17) 十、附录 (18)

图像边缘检测方法研究综述_段瑞玲

第31卷第3期2005年5月 光学技术 OP T ICA L T ECHN IQ U E V ol.31No.3 M ay 2005 文章编号:1002-1582(2005)03-0415-05 图像边缘检测方法研究综述 段瑞玲,李庆祥,李玉和 (清华大学精密仪器及机械学系,北京 100084) 摘 要:图像的边缘是图像最基本也是最重要的特征之一。边缘检测一直是计算机视觉和图像处理领域的经典研究课题之一。图像分析和理解的第一步常常是边缘检测。边缘检测的目的是去发现图像中关于形状和反射或透射比的信息,是图像处理、图像分析、模式识别、计算机视觉以及人类视觉的基本步骤之一。其结果的正确性和可靠性将直接影响到机器视觉系统对客观世界的理解。对一些传统的边缘检测方法和近年来广泛收到关注的边缘检测算法进行了简单介绍。综述中只涉及到检测方面,而没有讨论滤波、边缘定位、算法的复杂程度和边缘检测器性能的评价。 关键词:图像处理;边缘检测;梯度算法;差分边缘检测 中图分类号:T P751 文献标识码:A Summary of image edge detection DU AN Rui_ling,LI Qin g_xiang,LI Yu_he (Department of P recisio n I nstrument and M echanology,Tsing hua University,Beijing 100084,China) Abstract:Edg e is one of the most fundamental and sig nificant features.Edge detection is alw ay s one of the most classical studying projects o f computer vision and image processing field.T he fist step of image analy sis and understanding is edg e de tec-tion.T he g oal of edge detection is to recover information about shapes and reflectance o r transmittance in an image.I t is one of the fundamental steps in image processing,mage analy sis,image patter recognition,and computer vision,as well as in human vision.T he correctness and reliability of its results affect directly the comprehension machine system made fo r objective w orld. T he summary for basic edge de tection metho ds was made.It involv ed the detection methods only but no t filtering,edge loca-tion,analy sis of algorithm complexity and functional evaluation about a detecto r. Key words:image processing;imag e detection;gradient arithmetic; 1 引 言 早在本世纪初,人类为了用图片及时传输世界各地发生的新闻事件,便开始了对图像处理技术的研究。用计算机进行图像处理,改善图像质量的有效应用开始于1964年美国喷气推进实验室对太空传回的大批月球照片进行处理,并收到了明显的效果。然而,图像处理技术的真正发展还是在上世纪60年代末,其原因一方面是由于受到航天技术发展的刺激,另一方面是作为图像处理工具的数字计算机和各种不同类型的数字化仪器及显示器的突飞猛进发展。迄今为止,数字图像作为一门崭新的学科,日益受到人们的重视,并且在科学研究、工农业生产、军事技术和医疗卫生等领域发挥着越来越重要的作用。 机器视觉主要是利用计算机实现人类的视觉功能,对客观世界的三维场景的感知、识别和理解。边缘是图像的最基本特征,边缘检测通常是机器视觉系统处理图像的第一个阶段,是机器视觉领域内经典的研究课题之一,其结果的正确性和可靠性将直接影响到机器视觉系统对客观世界的理解。 2 图像边缘定义 图像的大部分信息都存在于图像的边缘中,主要表现为图像局部特征的不连续性,即图像中灰度变化比较剧烈的地方。因此,我们把边缘定义为图像中灰度发生急剧变化的区域边界。根据灰度变化的剧烈程度,通常将边缘划分为阶跃状和屋顶状两种类型[1]。阶跃边缘两边的灰度值变化明显,而屋顶边缘位于灰度值增加与减少的交界处。那么,对阶跃边缘和屋顶边缘分别求取一阶、二阶导数就可以表示边缘点的变化。因此,对于一个阶跃边缘点,其灰度变化曲线的一阶导数在该点达到极大值,二阶导数在该点与零交叉;对于一个屋顶边缘点,其灰 415 收稿日期:2004-06-01;收到修改稿日期:2004-10-20 E-mail:duanrl03@mails.ts https://www.360docs.net/doc/0b13576086.html, 作者简介:段瑞玲(1979_),女,山西人,清华大学博士研究生,从事装配系统及微观图像处理研究。

边缘检测原理(内含三种算法)

边缘检测原理的论述

摘要 数字图像处理技术是信息科学中近几十年来发展最为迅速的学科之一。图像边缘是图像最基本的一种特征,边缘在图像的分析中起着重要的作用。边缘作为图像的一种基本特征,在图像识别、图像分割、图像增强以及图像压缩等的领域中有较为广泛的应用,其目的就是精确定位边缘,同时更好地抑制噪声。目前,数字图像处理技术被广泛应用于航空航天、通信、医学及工业生产等领域中。图像边缘提取的手段多种多样,本文主要通过MATLAB语言编程分别用不同的算子例如Roberts算子、Prewitt算子、Sobel算子、Kirsch 算子、Laplacian算子、Log算子和Canny算子等来实现静态图像的边缘检测,并且和检测加入高斯噪声的图像进行对比。阐述了不同算子在进行图像边缘提取的特点,并在此基础上提出利用小波变换来实现静态图像的边缘检测。 【关键字】图像边缘数字图像边缘检测小波变换 背景 图像处理就是对图像信息加工以满足人的视觉心理或应用需求的方法。图像处理方法有光学方法和电子学方法。从20世纪60年

代起随着电子计算机和计算技术的不断提高和普及,数字图像处理进入了高速发展时期,而数字图像处理就是利用数字计算机或其它的硬件设备对图像信息转换而得到的电信号进行某些数学处理以提高图像的实用性。 计算机进行图像处理一般有两个目的:(1)产生更适合人观察和识别的图像。(2)希望能由计算机自动识别和理解图像。数字图像的边缘检测是图像分割、目标区域的识别、区域形状提取等图像分析领域的重要基础,图像处理和分析的第一步往往就是边缘检测。 边缘是图象最基本的特征.边缘检测在计算机视觉、图象分析等应用中起着重要的作用,是图象分析与识别的重要环节,这是因为子图象的边缘包含了用于识别的有用信息.所以边缘检测是图像分析和模式识别的主要特征提取手段。 所谓边缘是指其周围像素灰度后阶变化或屋顶状变化的那些像素的集合,它存在于目标与背景、目标与目标、区域与区域,基元与基元之间。因此它是图象分割所依赖的重要的特征,也是纹理特征的重要信息源和形状特征的基础;而图象的纹理形状特征的提取又常常依赖于图象分割。图象的边缘提取也是图象匹配的基础,因为它是位置的标志,对灰度的变化不敏感,它可作为匹配的特征点。 图象的其他特征都是由边缘和区域这些基本特征推导出来 的.边缘具有方向和幅度两个特征.沿边缘走向,像素值变化比较平缓;而垂直与边缘走向,则像素值变化比较剧烈.而这种剧烈可能呈

数字图像边缘检测算法设计与实现

本科毕业论文(设计、创作) 题目:数字图像边缘检测算法设计与实现 学生姓名:学号:023******* 所在院系:信息与通信技术系专业:电子信息工程 入学时间:2010 年9 月导师姓名:职称/学位:讲师/博士 导师所在单位: 完成时间:2014 年 5 月 安徽三联学院教务处制

数字图像边缘检测算法设计与实现 摘要:图像有很多最基本的特征,边缘是其中之一,所以图像处理的主要内容中也有图像的边缘检测,图像的边缘检测也是图像测量技术中的热点。本篇论文是来研究图像边缘检测,图像处理技术已经有很广阔的应用域,图像的边缘检测最主要的意思是将图像的边缘提取出来。本文首先简要的介绍了什么是边缘检测,和边缘检测的一些基本知识和原理,然后回顾了一些经典的边缘检测算法。最后在已有的经典算法基础上进行编程仿真来提取图像的边缘。 关键词:图像处理;边缘检测;Hough变换;轮廓跟踪

Design and implementation the algorithm of digital image edge detection Abstract:Images have a lot of the most basic features, edge is one of them. So the image edge detection is one of the main content for image processing, the image edge detection has been the hot point in image measurement technology. This paper is to study the image edge detection. Image processing technology has very broad application field. The main mean of image edge detection is to detect image edge. In this article, first, briefly introduced what is edge detection, and some basic knowledge and principle of edge detection. Then reviews some of the classical edge detection algorithm. Finally, extracting image edge programming simulation on the basis of the existing classic algorithms. Key words: Image Processing, Edge Detection, Hough manipulation, contour tracing

图像边缘检测方法的研究与实现刘法200832800066

青岛大学 专业课程设计 院系: 自动化学院 专业: 电子信息工程 班级: 08级电子信息工程3班 学生姓名: 刘法 指导教师: 王汉萍庄晓东 日期: 2011年12月23日 题目:图像边缘检测方法的研究与实现 一、边缘检测以及相关概念 1.1边缘,边缘检测的介绍 边缘(edge)是指图像局部强度变化最显著的部分.边缘主要存在于目标与目标、目标与背景、区域与区域(包括不同色彩)之间,是图像分割、纹理特征和形状特征等图像分析的重要基础.图像分析和理解的第一步常常是边缘检测(edge detection). 边缘检测是指使用数学方法提取图像像元中具有亮度值(灰度)空间方向梯度大的边、线特征的过程。 在讨论边缘算子之前,首先给出一些术语的定义: 边缘点:图像中具有坐标] i且处在强度显著变化的位置上的点. ,[j 边缘段:对应于边缘点坐标] i及其方位 ,边缘的方位可能是梯度角. ,[j 边缘检测器:从图像中抽取边缘(边缘点和边缘段)集合的算法. 轮廓:边缘列表,或是一条表示边缘列表的拟合曲线. 边缘连接:从无序边缘表形成有序边缘表的过程.习惯上边缘的表示采用顺时针方向序. 边缘跟踪:一个用来确定轮廊的图像(指滤波后的图像)搜索过程. 边缘点的坐标可以是边缘位置像素点的行、列整数标号,也可以在子像素分辨率水平上表示.边缘坐标可以在原始图像坐标系上表示,但大多数情况下是在边缘检测滤波器的输出图像的坐标系上表示,因为滤波过程可能导致图像坐标平移或缩放.边缘段可以用像素点尺寸大小的小线段定义,或用具有方位属性的一个点定义.请注意,在实际中,边缘点和边缘段都被称为边缘.

边缘连接和边缘跟踪之间的区别在于:边缘连接是把边缘检测器产生的无序边缘集作为输入,输出一个有序边缘集;边缘跟踪则是将一幅图像作为输入,输出一个有序边缘集.另外,边缘检测使用局部信息来决定边缘,而边缘跟踪使用整个图像信息来决定一个像素点是不是边缘. 1.2 边缘检测算子 边缘检测是图像特征提取的重要技术之一, 边缘常常意味着一个区域的终结和另一个区域的开始. 图像的边缘包含了物体形状的重要信息,它不仅在分析图像时大幅度地减少了要处理的信息量,而且还保护了目标的边界结构. 因此,边缘检测可以看做是处理许多复杂问题的关键. 边缘检测的实质是采用某种算法来提取出图像中对对象与背景间的交界线。图像灰度的变化情况可以用图像灰度分布的梯度来反映,因此可以用局部图像微分技术来获取边缘检测算子。经典的边缘检测方法是对原始图像中的像素的某个邻域来构造边缘检测算子。以下是对几种经典的边缘检测算子进行理论分析,并对各自的性能特点做出比较和评价。 边缘检测的原理是:由于微分算子具有突出灰度变化的作用,对图像进行微分运算,在图像边缘处其灰度变化较大,故该处微分计算值教高,可将这些微分值作为相应点的边缘强度,通过阈值判别来提取边缘点,即如果微分值大于阈值,则为边缘点。 Roberts,Sobel,Prewwit是基于一阶导数的边缘检测算子,图像的边缘检测是通过2*2或者3*3模板作为核与该图像中的每个像素点做卷积和运算,然后选取合适的阈值以提取边缘。 Laplace边缘检测算子是基于二阶导数的边缘检测算子,该算子对噪声敏感。Laplace算子的改进方式是先对图像进行平滑处理,然后再应用二阶导数的边缘检测算子,其代表是拉普拉斯高斯(LOG)算子。前边介绍的边缘检测算法是基于微分方法的,其依据是图像的边缘对应一阶导数的极大值点和二阶导数过零点。Canny算子是另外一类边缘检测算子,它不是通过微分算子检测边缘,而是在满足一定约束条件下推导出的边缘检测最优化算子。 1.3 边缘检测算法 对于边缘的检测常常借助于空域微分算子进行,通过将其模板与图像卷积完成。两个具有不同灰度值的相邻区域之间总存在灰度边缘。灰度边缘是灰度值不连续(或突变) 的结果,这种不连续常可利用求一阶和二阶导数方便地检测到。已有的局部技术边缘检测方法,主要有一次微分(Sobel 算子、Robert s 算子等) 、二次微分(拉普拉斯算子等)。这些边缘检测器对边缘灰度值过渡比较尖锐且噪声较小等不太复杂的图像,大多数提取算法均可以取得较好的效果。但对于边缘复杂、采光不均匀的图像来说,则效果不太理想。主要表现为边缘模糊、边缘非单像素宽、弱边缘丢失和整体边缘的不连续等方面。 用算子检测图像边缘的方法是用小区域模板对图像进行处理,即采用卷积核作为掩模模板在图像中依次移动,完成图像中每个像素点同模板的卷积运算,最终输出的边缘幅度结果可以检测出图像的边缘。卷积运算是一种邻域运算。图像处理认为:某一点像素的结果不但和本像素灰度有关,而且和其邻域点值有关。运用模板在图像上依此对每一个像素进行卷积, 即模板上每一个点的值与其在图像上当前位置对应的像素点值相乘后再相加,得出的值就是该点处理后的新值。 边缘检测算法有如下四个步骤:

相关文档
最新文档