边缘检测算法的研究及MATLAB实现毕业论文
2021-03-15 20:34:12
摘 要
图像的边缘包含大量信息,比如形状,轮廓,位置等,边缘检测是很多图像处理领域的重要基础,比如目标识别,图像压缩,图像增强,图像分割等。边缘检测对于数字图像处理和计算机视觉具有重要的意义。
本文所做工作是首先研究用于边缘检测的几种算法的原理,然后用数学软件MATLAB对其进行编程实现,用几种算子分别对原始图像和加噪图像进行边缘检测,比较分析边缘检测效果及抗噪性能。
论文主要研究了基于一阶微分的 Roberts算子、Prewitt算子、Sobel算子一阶基于二阶微分的LOG算子和Canny算子。这些算子均用模板与图像进行卷积计算来增强图像中的边缘,然后选取合适的阈值对边缘与背景进行分割,所以阈值的选取尤为重要,较低阈值可以保留更多边缘信息但同时保留噪声的影响,而较高的阈值在去除噪声的同时也丢失了部分边缘。本文提出一种基于最大后验概率估计的最佳阈值选取方法,并用这个方法来改进八方向的Sobel算子,改进的算子能很好地提取出加噪图像的边缘。
关键词:边缘检测;MATLAB;Sobel算子
Abstract
The edge of the image contains many information, such as shape, outline, location, etc. edge detection is an important basis of many image processing fields, such as target recognition, image compression, image enhancement, image segmentation and so on. Edge detection plays an important role in digital image processing and computer vision.
first, The work of this paper is researching for the principle of several edge detection algorithms,and carring on the programming by using mathematical software MATLAB.then performing image edge detection of original image and add-noise image by using several operators.last, analyzing the effect of edge detection and anti-noise performance.
This paper mainly studies the Roberts operator, Prewitt operator, Sobel operator based on the first order differential and LOG operator, Canny operator based on second order differential.these operators convolute by using image and templates to enhance the image edge, and then select the appropriate threshold that segmentating for edge and background, so the threshold selection is important.the lower threshold can retain the noise while retaining more edge information , but the higher threshold lose some of the edge while getting rid of the noise. In this paper, an optimal threshold selection method based on the maximum posterior probability estimation is proposed, and this method is used to improve the Sobel operator in the eight direction. The improved operator can extract the edges from noisy images well.
Key Words: edge detection;MATLAB; Sobel operator
目 录
第1章 绪论 1
1.1 图像及其边缘 1
1.2 边缘检测算子 1
1.3 本文主要安排 2
第2章 边缘检测基本原理 3
2.1 图像基础 3
2.2 边缘检测方法 4
2.3 空域滤波 5
2.3.1 模板运算 5
2.3.2 锐化滤波 6
2.3.3 高斯平滑滤波 8
第3章 边缘检测算子 10
3.1 基础算子的分析 10
3.2 一阶微分算子 11
3.2.1 Roberts算子 12
3.2.2 Prewitt算子 12
3.2.3 Sobel算子 13
3.3 二阶微分算子 14
3.3.1 二阶微分基础算子 14
3.3.2 LoG算子 15
3.3.3 Canny算子 16
第4章 基于MATLAB的实现结果与分析 18
4.1 MATLAB图像处理应用简介 18
4.2 改进的Sobel算子 19
4.3 各算子检测结果 21
4.3.1 一阶微分算子检测结果 21
4.3.2 二阶微分算子检测结果 23
4.3.3 Sobel算子的检测结果 25
4.4 性能分析 27
第5章 结论 29
参考文献 31
致谢 33
第1章 绪论
1.1 图像及其边缘
我们从外界获取的大部分信息都来自图像,在生活中常常需要借助图像来认识和观察世界,这些图像一般为:照片、绘画。为了能使用计算机处理图像,我们需要得到数字图像,数字图像是指可以用数值表达信息的抽象图像,表达方式为离散函数和连续函数,其中,用计算机视觉系统进行处理的图像都是离散函数组成的。我们用像素来描述图像的清晰度,它表示组成图像的最小单元,每个像素的像素值表示图像中该点的某种性质。一副图像中总会有比较重要的像素点,它们往往携带更多的信息,有比较显著的特点,这样的像素点我们一般称为基元。比如,我们都知道,未上色的漫画所描绘的就是物体的边缘,我们可以从这样的漫画中识别出许多信息,因此,在图像的基元中,边缘是比较基础的一种,边缘可以组成许多别的基元。由此可见,图像的边缘是基础而又重要的信息[1]。
我们通过视觉系统来观察和认识世界,我们都知道,人类的视觉系统由眼睛获取图像,由大脑来进行处理,这一整个过程包括把3-D世界投影成2-D图像,然后再由2-D图像认知和感受客观世界,这是一个由感觉到知觉的过程,由这个观测系统所得到的图像是3-D的客观世界在人心中形成的影像。计算机视觉,顾名思义,相比于人类视觉系统,它使用计算机来实现对3-D世界的图像的获取、加工和处理。计算机视觉系统首先需要通过摄像机从客观世界获取图像,然后对图像进行处理和加工,获得目标对象的形状,位置,运动情况等等信息,进而对目标对象进行识别,感知,描述和解释等[2]。我们在生活中要大量应用到图像处理,比如:通信,航天,军事公安,生物医学方面,工业方面,还有文化和艺术方面,图像处理都有大量应用。而在计算机视觉系统的加工和处理中,重要而又基础的处理就包括边缘检测[3]。边缘检测是一种低层次特征(基本特征),在图像的处理中需要进行的第一个步骤往往就是边缘检测,图像的边缘是图像分割的基础。通过提取图像的边缘,我们可以获得大量的信息,比如形状,位置,阶跃性质。基础的图像处理方法常常应用到高层次特征提取中去,作为图像基本特征的边缘经常被应用到诸如图像分割,图像识别,图像复原以及图像压缩和图像增强,目标区域识别领域等较高层次的应用中去。
1.2 边缘检测算子
边缘检测的最终目的是要得出一个如同漫画家作品的线图,图中的线即为边缘,这些线上的点为亮度变化明显的点,边缘检测的工作就是要把这些点标记出来。到现在为止已经有许多方法可以用于边缘检测。最早由Julez在1959年就提及了边缘检测技术,Roberts则于1965年开始了最早期的系统研究,提出Roberts交叉算子,之后有关边缘检测的理论和方法得到不断的发展和更新,有一些方法比较经典和流行,本文就主要研究这些比较流行的边缘检测办法。图像的亮度变化可以通过一阶微分计算和二阶微分计算的方法得到增强,然后通过选取恰当阈值的方法可以把边缘和背景分离并标记,从而得到图像的边缘,具体而言,一阶微分中的峰值和二阶微分的过零点对应亮度变化最明显的点。基于一阶微分的边缘检测算子有Roberts算子,Prewitt算子和Sobel算子[4]。不同的算子对应不同的模板,将模板放在图像中漫游,依次对每个像素点进行卷积运算得到一副灰度新值,然后再用阈值分割边缘和背景,这些模板计算出来的结果都是近似于一阶微分的。其中Prewitt算子在1970年由Prewitt提出,Sobel算子在1968年由Irwin Sobel最早提出[5]。基于二阶微分的边缘检测算子有拉普拉斯算子和LoG算子,它们的模板的计算结果近似于二阶微分。LoG算子在1980年由David Courtnay Marr和Ellen Hildreth共同提出。Canny算子于1986由John F.Canny提出,相较于别的算子,Canny算子的最大特色是由于采用了双阈值的方法从而能得到连续的边缘。
1.3 本文主要安排
第一章:首先简要概括边缘检测的研究背景及研究意义,然后概述边缘检测算子的发展历程,最后简述本文主要安排。