基于改进sobel算子的灰度图像边缘检测算法研究与仿真
基于改进sobel算子的灰度图像边缘检测算法研究与仿真[20200406135651]
摘要
数字图像的边缘检测技术和图像分割技术一直是国内外图像分析领域中最基础的技术,因此怎样精准,快速提取出图像边缘信息的研究一直很活跃。边缘检测最简单的方法是利用边缘检测算子,迄今为止,人类研究出了很多边缘检测算子。其中经典的是Sobel边缘检测算子,Sobel边缘算子边缘定位比较精确,但是Sobel算子也有着一些缺点,比如不能完全排除检测结果中出现虚假边缘等问题。本文根据经典Sobel边缘检测算法利用方向差分运算与局部平均相结合的原理,设计了一种新的边缘检测算子。其模板大小由原有的3×3阶扩展成5×5阶的矩阵形式,同时还增加了两个对角线方向上的检测。改进的Sobel边缘检测算子为了提高边缘检测的精度,在本算法中引入了归一化因子,将它与边缘检测算子的检测结果相乘,以此来去除数据溢出的可能性。这样得到的是不失真的边缘图,更好的保留了原图边缘中的信息。
*查看完整论文请 +Q: 3 5 1 9 1 6 0 7 2
关键字:边缘检测MATLAB改进的Sobel算子
目 录
第1章 绪论 6
1.1引言 6
1.2研究背景 6
1.3研究目的及意义 7
1.4主要研究工作 7
第2章 图像边缘检测简介 9
2.1 经典图像边缘检测方法 9
2.1.1基本概念 9
2.1.2原理 9
2.2边缘检测算子 10
2.2.1 Roberts(罗伯特)边缘检测算子 10
2.2.2 Sobel(索贝尔)边缘检测算子 11
2.2.3 Prewitt(普瑞维特)边缘检测算子 12
2.2.4 Laplacian(拉普拉斯)边缘检测算子 12
2.2.5 Marr-Hildreth(马尔)边缘检测算子 13
2.2.6 canny(凯尼)边缘检测算子 16
2.3 最大类间方差的Otsu法 19
2.3.1最大类间方差法原理 19
2.3.2关于最大类间方差法(otsu)的性能 20
第3章 改进的Sobel算法 21
3.1 Sobel边缘检测算子的改进 21
3.2检测过程中的数据溢出处理 22
3.3检测结果的细化处理与二值化 23
3.4实验仿真 23
3.4.1 实验工具 23
3.4.2 实验现象 24
3.4.3 实验分析 24
第4章 分析总结 25
参考文献 26
附录 27
致谢 29
第1章 绪论
1.1引言
边缘检测技术和图像分割技术在图像处理中的占据了非常重要的位置,它们主要研究目标的识别,目标特征提取[1]。目前,它已经是机器视觉研究领域最流行的研究领域之一,占据了工程应用中一个非常重要的位置。利用边缘检测算子来寻找边缘是最简单的,边缘检测算子是利用了图像中灰度变化的特性,图像中灰度变化显著的地方都可以通过一阶导数或二阶导数反映出来。边缘检测的基本思想是先进行滤波,通过滤波器降低噪声,再利用增强算子凸显变化强烈的点,最后利用阈值确定图像的边缘。常见的边缘检测算子主要是罗伯特边缘算子,索贝尔边缘算子,Prewitt边缘算子,拉普拉斯边缘算子,高斯-拉普拉斯边缘算子和坎尼边缘算子。
1.2研究背景
边缘是一种非常重要的视觉信息,对处理图像很重要,而且同时也为纹理特征,图像分割提供了重要依据。由于经常受到许多外界因素的影响,图像的传输和获取更容易被和边缘点频率相近的噪声干扰,因此提取出的图像边缘总是存在各种问题,比如漏检测、伪检测等,所以人们越来越的关注和重视噪声图像的边缘检测。
虽然自从提出计算机图像处理边缘检测后,涌现了很多的边缘检测算法,然而图像边缘检测一般都可以归纳成以下几个步骤:
1) 利用滤波器降低原图中的噪声。
2) 通过增强算法突出变化明显的点。
3) 利用阈值判断突出的点是否是边缘点。
4) 定位边缘位置。
前三个步骤的利用很常见,通过以上步骤可以很好地检测出图像的边缘。近几十年来得到了很多的边缘检测算法,对计算机图像的边缘检测有非常大的影响。
经典的计算机图像处理的边缘检测方法都是基于图像的微分的边缘提取算法,比如索贝尔算子、罗伯特算子等,根据不同的模板的尺寸和权值,已经有很多的梯度算子。罗伯特算子是最简单的算子,它的卷积模板是2×2的, 罗伯特算子容易检测边缘明显的图像。然而罗伯特算子对噪声敏感,将有一个孤立的点,因此它适合处理低噪声图像。所以,人们又提出普瑞维特算子以及索贝尔算子,它们通过像素平均抑制了噪声,但是很容易出现虚假边缘。检测算子没有考虑到边缘和噪声这两个的差异,而且梯度方向信息没有被充分的运用。所以虽然有较高的边缘定位精度,但它很容易出现虚假边缘由于噪声的干扰,影响测试效果。
1.3研究目的及意义
其实使用计算机图像处理中的重要目的就是生成人类观察的合适的图像。图像的边缘存储了许多图像的重要信息,而图像的最基本的特征就是图像的边缘,边缘的定义是图像中局部强度变化最为显著的那一部分。边缘对整个图像的识别的影响也很大,经过边缘检测后,我们才可以进行更高层的图像分析,边缘检测技术一向是非常重要的,边缘检测在图像的处理和研究起到的作用得到人们的重视。
而图像的边缘是图像最基本的特征,也是成功理解一幅图形的基础。在图像中,边缘是图像一种很重要的特征,轮廓边缘显示了大量的信息量,因此边缘检测在图像处理中的地位非常重要,图像的边界会有明显的边缘,因此边缘检测是完成图像分割的基础,而边缘检测的效果会对图像分割以及识别的性能产生直接的影响。
边缘检测技术一直是图像处理领域中最基本的技术,因此怎样精确、快速的提取图像边缘信息是国内外研究中的热门,但是边缘检测又一直是图像处理中的一个难题。在早期的经典算法中主要有曲面拟合方法、边缘算子法、门限化法、模板匹配法。这些年依靠人工智能和数学理论的快速发展,又出现了非常多的全新的边缘检测的方法,比如小波包和小波的变换边缘检测法,基于模糊理论,数学形态学,一种新的神经网络的新的边缘检测法。
1.4主要研究工作
1 介绍经典边缘检测方法的概念和原理。
2 介绍几种常见的边缘检测算子,分析它们的优缺点,给出它们的MATLAB表达形式,介绍最大类间方差法,并给出它的MATLAB表达形式。
3 介绍改进的sobel算子的原理,实验的设计原理,实验步骤 ,给出实验现象,分析实验现象,与其他的算子做对比,总结出改进的sobel算子的优缺点。
第2章 图像边缘检测简介
边缘检测一直是计算机图像处理和计算机视觉 里的根基,图像存在边缘是因为灰度不连续,而边缘检测的根本目的就是识别出数字图像里面亮度变化显著的点。图像中特征区域发生明显的变化往往意味着这边存在边缘,而边缘检测正是利用了这一点。以下将对图像边缘的检测技术进行简单介绍。
2.1 经典图像边缘检测方法
2.1.1基本概念
图像边缘检测的方法是利用一阶微分算子或二阶微分算子提取图像中的交界线,根据各像素点处的微分幅值判断其是否为边界点。边缘就是一幅图像里区域特征产生非常剧烈的变化的区域边界。图像的灰度变化的显著程度可以利用一阶导数或者二阶导数来表示,所以边缘检测算子基本都是利用一阶导数和二阶导数。经典的边缘检测方法有Roberts算子、Log算子、Sobel算子、Prewitt算子、Laplacian算子、Kirsch算子、Canny算子等。它们是由一个小邻域内的原始图像的像素来构造出边缘检测算子,利用滤波器来减弱图像中的噪声,然后再利用一阶导数或者二阶导数与图像进行计算,求算一阶微分的局部最大值或者二阶微分的过零点[2]。它们都是图像灰度变化很大的地方,然后再选取合适闭值,最后就可以提取出边界。
2.1.2原理
图像的边缘存在两个亮度发生明显变化的区域中间,而灰度图像的变化的显著程度也就是灰度图像的梯度。函数一阶导数和二阶导数反映了灰度发生变化的速率,梯度函数可以在图像的边缘上可以取得最大值。在检测边缘之前,可以利用梯度算子来测算图像的梯度方向,然后再加强图像里面发生变化明显的点,最后再利用阈值对梯度进行运算,一旦梯度值大于我们设定的阈值,那就可以判定存在边缘。
摘要
数字图像的边缘检测技术和图像分割技术一直是国内外图像分析领域中最基础的技术,因此怎样精准,快速提取出图像边缘信息的研究一直很活跃。边缘检测最简单的方法是利用边缘检测算子,迄今为止,人类研究出了很多边缘检测算子。其中经典的是Sobel边缘检测算子,Sobel边缘算子边缘定位比较精确,但是Sobel算子也有着一些缺点,比如不能完全排除检测结果中出现虚假边缘等问题。本文根据经典Sobel边缘检测算法利用方向差分运算与局部平均相结合的原理,设计了一种新的边缘检测算子。其模板大小由原有的3×3阶扩展成5×5阶的矩阵形式,同时还增加了两个对角线方向上的检测。改进的Sobel边缘检测算子为了提高边缘检测的精度,在本算法中引入了归一化因子,将它与边缘检测算子的检测结果相乘,以此来去除数据溢出的可能性。这样得到的是不失真的边缘图,更好的保留了原图边缘中的信息。
*查看完整论文请 +Q: 3 5 1 9 1 6 0 7 2
关键字:边缘检测MATLAB改进的Sobel算子
目 录
第1章 绪论 6
1.1引言 6
1.2研究背景 6
1.3研究目的及意义 7
1.4主要研究工作 7
第2章 图像边缘检测简介 9
2.1 经典图像边缘检测方法 9
2.1.1基本概念 9
2.1.2原理 9
2.2边缘检测算子 10
2.2.1 Roberts(罗伯特)边缘检测算子 10
2.2.2 Sobel(索贝尔)边缘检测算子 11
2.2.3 Prewitt(普瑞维特)边缘检测算子 12
2.2.4 Laplacian(拉普拉斯)边缘检测算子 12
2.2.5 Marr-Hildreth(马尔)边缘检测算子 13
2.2.6 canny(凯尼)边缘检测算子 16
2.3 最大类间方差的Otsu法 19
2.3.1最大类间方差法原理 19
2.3.2关于最大类间方差法(otsu)的性能 20
第3章 改进的Sobel算法 21
3.1 Sobel边缘检测算子的改进 21
3.2检测过程中的数据溢出处理 22
3.3检测结果的细化处理与二值化 23
3.4实验仿真 23
3.4.1 实验工具 23
3.4.2 实验现象 24
3.4.3 实验分析 24
第4章 分析总结 25
参考文献 26
附录 27
致谢 29
第1章 绪论
1.1引言
边缘检测技术和图像分割技术在图像处理中的占据了非常重要的位置,它们主要研究目标的识别,目标特征提取[1]。目前,它已经是机器视觉研究领域最流行的研究领域之一,占据了工程应用中一个非常重要的位置。利用边缘检测算子来寻找边缘是最简单的,边缘检测算子是利用了图像中灰度变化的特性,图像中灰度变化显著的地方都可以通过一阶导数或二阶导数反映出来。边缘检测的基本思想是先进行滤波,通过滤波器降低噪声,再利用增强算子凸显变化强烈的点,最后利用阈值确定图像的边缘。常见的边缘检测算子主要是罗伯特边缘算子,索贝尔边缘算子,Prewitt边缘算子,拉普拉斯边缘算子,高斯-拉普拉斯边缘算子和坎尼边缘算子。
1.2研究背景
边缘是一种非常重要的视觉信息,对处理图像很重要,而且同时也为纹理特征,图像分割提供了重要依据。由于经常受到许多外界因素的影响,图像的传输和获取更容易被和边缘点频率相近的噪声干扰,因此提取出的图像边缘总是存在各种问题,比如漏检测、伪检测等,所以人们越来越的关注和重视噪声图像的边缘检测。
虽然自从提出计算机图像处理边缘检测后,涌现了很多的边缘检测算法,然而图像边缘检测一般都可以归纳成以下几个步骤:
1) 利用滤波器降低原图中的噪声。
2) 通过增强算法突出变化明显的点。
3) 利用阈值判断突出的点是否是边缘点。
4) 定位边缘位置。
前三个步骤的利用很常见,通过以上步骤可以很好地检测出图像的边缘。近几十年来得到了很多的边缘检测算法,对计算机图像的边缘检测有非常大的影响。
经典的计算机图像处理的边缘检测方法都是基于图像的微分的边缘提取算法,比如索贝尔算子、罗伯特算子等,根据不同的模板的尺寸和权值,已经有很多的梯度算子。罗伯特算子是最简单的算子,它的卷积模板是2×2的, 罗伯特算子容易检测边缘明显的图像。然而罗伯特算子对噪声敏感,将有一个孤立的点,因此它适合处理低噪声图像。所以,人们又提出普瑞维特算子以及索贝尔算子,它们通过像素平均抑制了噪声,但是很容易出现虚假边缘。检测算子没有考虑到边缘和噪声这两个的差异,而且梯度方向信息没有被充分的运用。所以虽然有较高的边缘定位精度,但它很容易出现虚假边缘由于噪声的干扰,影响测试效果。
1.3研究目的及意义
其实使用计算机图像处理中的重要目的就是生成人类观察的合适的图像。图像的边缘存储了许多图像的重要信息,而图像的最基本的特征就是图像的边缘,边缘的定义是图像中局部强度变化最为显著的那一部分。边缘对整个图像的识别的影响也很大,经过边缘检测后,我们才可以进行更高层的图像分析,边缘检测技术一向是非常重要的,边缘检测在图像的处理和研究起到的作用得到人们的重视。
而图像的边缘是图像最基本的特征,也是成功理解一幅图形的基础。在图像中,边缘是图像一种很重要的特征,轮廓边缘显示了大量的信息量,因此边缘检测在图像处理中的地位非常重要,图像的边界会有明显的边缘,因此边缘检测是完成图像分割的基础,而边缘检测的效果会对图像分割以及识别的性能产生直接的影响。
边缘检测技术一直是图像处理领域中最基本的技术,因此怎样精确、快速的提取图像边缘信息是国内外研究中的热门,但是边缘检测又一直是图像处理中的一个难题。在早期的经典算法中主要有曲面拟合方法、边缘算子法、门限化法、模板匹配法。这些年依靠人工智能和数学理论的快速发展,又出现了非常多的全新的边缘检测的方法,比如小波包和小波的变换边缘检测法,基于模糊理论,数学形态学,一种新的神经网络的新的边缘检测法。
1.4主要研究工作
1 介绍经典边缘检测方法的概念和原理。
2 介绍几种常见的边缘检测算子,分析它们的优缺点,给出它们的MATLAB表达形式,介绍最大类间方差法,并给出它的MATLAB表达形式。
3 介绍改进的sobel算子的原理,实验的设计原理,实验步骤 ,给出实验现象,分析实验现象,与其他的算子做对比,总结出改进的sobel算子的优缺点。
第2章 图像边缘检测简介
边缘检测一直是计算机图像处理
2.1 经典图像边缘检测方法
2.1.1基本概念
图像边缘检测的方法是利用一阶微分算子或二阶微分算子提取图像中的交界线,根据各像素点处的微分幅值判断其是否为边界点。边缘就是一幅图像里区域特征产生非常剧烈的变化的区域边界。图像的灰度变化的显著程度可以利用一阶导数或者二阶导数来表示,所以边缘检测算子基本都是利用一阶导数和二阶导数。经典的边缘检测方法有Roberts算子、Log算子、Sobel算子、Prewitt算子、Laplacian算子、Kirsch算子、Canny算子等。它们是由一个小邻域内的原始图像的像素来构造出边缘检测算子,利用滤波器来减弱图像中的噪声,然后再利用一阶导数或者二阶导数与图像进行计算,求算一阶微分的局部最大值或者二阶微分的过零点[2]。它们都是图像灰度变化很大的地方,然后再选取合适闭值,最后就可以提取出边界。
2.1.2原理
图像的边缘存在两个亮度发生明显变化的区域中间,而灰度图像的变化的显著程度也就是灰度图像的梯度。函数一阶导数和二阶导数反映了灰度发生变化的速率,梯度函数可以在图像的边缘上可以取得最大值。在检测边缘之前,可以利用梯度算子来测算图像的梯度方向,然后再加强图像里面发生变化明显的点,最后再利用阈值对梯度进行运算,一旦梯度值大于我们设定的阈值,那就可以判定存在边缘。
版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/dzxx/gdxx/349.html