基于MATLAB彩色图像的特征提取与研究

基于MATLAB彩色图像的特征提取与研究
基于MATLAB彩色图像的特征提取与研究

本科生毕业论文(设计)

题目:基于MATLAB的彩色图

像特征提取的研究

学生姓名:王昊东

学号: 201016020225

专业班级:通信工程10102班

指导教师:杨智

完成时间: 2014年5月12日

摘要

特征提取是计算机视觉和图像处理中的一个概念。它指的是使用计算机提取图像信息,决定每个图像的点是否属于一个图像特征。特征提取的结果是把图像上的点分为不同的子集,这些子集往往属于孤立的点、连续的曲线或者连续的区域。

本文以普通的彩色图像为例,介绍了对彩色图像特征提取的原理。其具体过程分为原图像的预处理、图像信息分析、图像的特征提取,然后用MATLAB实现具体的过程,最后获得需要的颜色特征、纹理特征、轮廓特征等。测试结果表明,本课题充分利用MATLAB中已有的函数库,使整个研究简单易行。可以有效的掌握彩色图像特征信息提取的方法和知识点。从原理和应用效果上对经典的图像分割方法如边缘检测、阈值分割技术和区域增长等进行了分析。对梯度算法中的Roberts算子、Prewitt算子、坎尼(Canny)算子的分割步骤、分割方式、分割准则相互比较可以看出根据坎尼(Canny)边缘算子的3个准则得出的边缘检测结果最满意。而阈值分割技术的关键在于阈值的确定,只有阈值确定好了才能有效的划分物体与背景,这种方法对于那些灰度分布明显,背景与物体差别大的图像的分割效果明显。区域增长的基本思想是将具有相似性质的像素集合起来构成新区域。与此同时本文还分析了图像分割技术研究的方向。

关键词:彩色图像;特征提取;图像处理;图像分割;

Abstract

Feature extraction is a concept in computer vision and image processing. It refers to use the computer to extract image information, to determine whether each image point belongs to an image characteristic. Feature extraction is the result of the points on the image is divided into different subsets of these subsets are often belong to the isolated points, continuous curve or continuous area. In the case of ordinary color images, this paper introduces the principle of the color image feature extraction. The specific process is divided into original image preprocessing, image analysis, image feature extraction, and then used MATLAB to realize the process of concrete, finally get the need to color features and texture features, outline, etc. To general color images through the image preprocessing and image analysis, can extract the image feature, such as color, shape, texture feature, for image retrieval, and color image processing technology has a lot of help. Test results show that this topic make full use of MATLAB in the library, make whole study is simple. This article analyses the application effect to the classics image segmentation method like the edge examination, territory value division technology, and the region growth and so on. For comparing the Roberts operator, Prewitt operator ,Canny operator in gradient algorithm, the way and the standard of the image segmentation, we can find out the three standard of Canny edge operator the edge detection result of reaching most satisfy. And the key point of threshold segmentation lie in fixing the threshold value, it is good to have only threshold value to determine it then can be effective to divide object and background, but this kind of method is good to those gray scales, the big difference image effect between the background and object. The basic idea of area is to form the new region from similar nature. And also, this paper analyses the research direction of image segmentation technology at the same time.

Key words: Colored image;Feature extraction;Image processing;Image segmentation operator;

目录

摘要 (1)

Abstract (2)

第一章绪论 (5)

1.1 课题背景及意义 (5)

1.2分割算法与提取技术综述 (5)

1.3 图像分割发展和现状 (6)

1.4程序简介 (6)

1.5 本文的主要工作 (8)

第二章方案论证选择 (10)

2.1 图像分割的概念 (10)

2.2图像分割算法分类 (11)

2.3方案一边缘检测方法 (12)

2.4方案二阈值分割法 (17)

2.5 方案三区域分割 (22)

第三章方案设计 (24)

3.1 图像的预处理 (24)

3.1.1 图像的直方图修正 (24)

3.1.2 图像的平滑与锐化 (25)

3.2图像类型转换 (26)

3.3图像的分析 (27)

3.3.1像素值统计 (27)

3.3.2 区域属性 (27)

3.4基于阈值的图像分割技术 (27)

3.4.1 阈值分割原理 (27)

3.4.2 图像分割方法 (28)

3.4.3 图像二值化 (28)

3.4.4 双峰法 (28)

3.4.5 最大方差自动取闭法 (29)

第四章软件设计与仿真 (322)

4.1 图像分割预处理 (322)

4.2图像平滑处理 (37)

4.3图像的阈值分割及特征提取 (39)

4.4小结 (32)

参考文献 (42)

致谢 (44)

第一章绪论

1.1 课题背景及意义

21世纪人类也进入到了信息化时代,在这个飞速发展的信息化社会中,计算机在信息处理中发挥着巨大的作用。尤其是在图像处理领域,计算机的加入使得数字图像处理技术得到了飞速的发展,并在国民经济的各个领域也都有了相对比较广泛的应用。在实际图像处理中,一般情况下我们只是注意到图像中那些我们感兴趣的目标,因为只有这部分也就是我们注意到的有用的目标物才能为我们提供高效、有用的信息。而这些目标一般又都对应着图像中某些特定的、具有独特性质的区域。为了把这些有用的区域提取出来供我们人类使用,图像分割这门技术也就应运而生了。我们通常情况下所说的图像分割就是指把图像划分成若干个有意义的区域的过程,每个区域都是具有相近特性的像素的连通集合,一般情况下我们所关注到的那些有用的目标物就存在与这些区域中。研究者们为了识别和分析图像中的那部分我们感兴趣的目标,例如进行特征提取或者测量,就需要将这些相关的区域从图像背景中提取出来。图像分割就能够把图像中的这些有用的区域分割出来,从而把一幅图像分成一系列的有意义的、各具特征的目标或者区域。

随着计算机视觉研究的不断进步、多媒体技术和虚拟现实技术的不断完善、彩色成像设备的不断改进,彩色图像的应用越来越广泛,然而,图像处理研究仍然集中在灰度图像上。对灰度图像的技术通常不能用到彩色图像,因为彩色图像更复杂,对计算机的计算速度与存储容量更高。彩色图像处理己经成为当前图像处理领域重要的研究课题。图像的特征有颜色、形状、纹理等。颜色是物体表面的属性,因此对于图像分割和目标识别等的研究都具有非常重要的意义。

1.2 分割算法与提取技术综述

从上个世纪六十年代初算起,图像分割算法的研究工作就已经起步,算起来也已经有了几十年的历史,但是虽然提出来的分割算法及其繁多,在图像分割算法上也做了大量的工作,但是分割算法至今仍然没有得到一个相对通用的算法,即使是这样多年来从事图像分割算法研究的学者们的工作热情还是没有减弱,他们仍然鞠躬尽瘁的奋斗在实验台前,为了研究出一种通用的分割算法而努力着。上面的事实说明虽然现在存在的图

像分割算法种类很多,但是还是没有一种通用的算法供不同地域,有不同目的的人使用。究其根本原因是因为来自不同的国家不同的领域的人们他们研究出来的分割算法有很大的差异,而不同的人对于同一幅图像感兴趣的地方也不尽相同,因此没能够设计出一个通用的算法也是可以理解的。上面我们对图像分割算法的现状做了一个初步的了解,下面我们来进一步的研究图像分割的发展现状。

1.3 图像分割发展和现状

计算机视觉技术在现代生活中已获得了广泛的应用,高效的图像处理算法是计算机视觉技术能否获得成功应用的关键,近年来,随着计算机视觉研究的不断进步、多媒体技术和虚拟现实技术的不断完善、彩色成像设备的不断改进,彩色图像的应用越来越广泛,然而,图像处理研究仍然集中在灰度图像上。对灰度图像的技术通常不能用到彩色图像,因为彩色图像更复杂,对计算机的计算速度与存储容量更高。彩色图像处理己经成为当前图像处理领域重要的研究课题。

图像的特征有颜色、形状、纹理等。颜色是物体表面的属性,因此对于图像分割和目标识别等的研究都具有非常重要的意义。颜色在计算机视觉中应用也在不断进步;另一方面,纹理是物体表面结构的模式,可以认为是颜色(灰度)在空间以一定的变化形式而产生的图案(模式),是图像的一种区域性质。

1.4 程序简介

Matlab是由美国Maths Works公司推出的用于数值计算和图形处理的系统环境,它的名字是由矩阵(Matrix)和实验室(Laboratory)这两个词的英文头三个字母组成的。Matlab除了具备卓越的数值计算能力外,它还提供了专业的符号计算、文字处理、可视化建模仿真和实时控制等功能。它是以矩阵为基本单位的,其指令表达式与数学、工程中常用形式十分相似,故用Matlab来解决问题要比用C、C++、FORTRAN等语言要简单的多,是一种高性能的、可以用于工程计算的一种编程软件。另外Matlab对于矩阵还有巨大的处理能力,他也能够与C语言和Fortran等其他语言混用,是的用户能够更加简单的进行可视化编程。Matlab可以把科学计算、用户界面以及结果可视化和编程都集中在一个使用起来极其方便的环境中。Matlab也是世界公认的一款优秀的数学应用软件。其语法规则与一般的结构化编程语言(如C语言等)大同小异,而且它不需要定义变量和数组,使用更加方便。具有一般的语言基础就可以很快掌握。其次MATLAB有代

码短小高效的特点,由于MATLAB已经将数学问题的具体算法编成了现成的函数,我们只要熟悉算法的特点、使用场合、函数的调用格式和参数意义等,通过调用函数就可以很快地解决问题。它有强大的图形表达功能,不仅可以绘制一般的二维、三维图像,如线图、条形图、饼图、散点图、直方图与误差条图等,还可以绘制工程特性较强的特殊图形,如玫瑰花图、极坐标图、二维、三维等值线图、三维表面图、假彩色图、二维、三维流线图、三维彩色流锥图、流沙图、流带图、流管图、卷曲图与切片图等,此外还可以生成快照图和进行动画制作,对于图像的处理有很重要的作用。该软件有六十多个工具箱,可以直接调用,节省时间和精力。工具箱实际上是对MATLAB进行扩展应用的一系列MATLAB函数(称为M文件),它可用来求解各类学科的问题,包括信号处理、图象处理、控制系统辨识、神经网络等。随着MATLAB版本的不断升级,其所含的工具箱的功能也越来越丰富。

MATLAB的主要应用:

1、线性代数

2、矩阵分析

3、数值及优化

4、数理统计和随机信号分析

5、电路与系统

6、系统动力学

7、信号和图像处理

8、控制理论分析和系统设计

9、过程控制、建模和仿真

10、通信系统和财政金融

MATLAB的特点:一般来说,整个Matlab系统是由两部分组成的,即Matlab内核和辅助工具箱,两者的调用构成了Matlab的强大功能。Matlab语言一数组为基本单位,具备以下主要的特点:

(1)运算符和库函数及其丰富。Matlab除了提供了和C语言一样的运算符号之外还加入了其他的矩阵和向量运算符号。这样可以使得程序变得更加简短,以前可能需要几十行甚至上百行C或者Fortran语言才能实现的功能,在Matlab中只需要两三行的语句就可以实现,因此用Matlab语言编程的效率被大大的提高,同时因为编写起来极为简单也就易懂易学。

(2)图形功能强大。Matlab包括二维和三维数据可视化、动画制作、图像处理等高层次的绘图命令,也包括可以修改图形和编制完整图形界面的、低层次的绘图命令。

(3)易于扩充。Matlab语言的库函数主要用于汤尼盖用户文件在形式上是一样的,所有的用户文件都可以作为Matlab的库函数而被调用。它的库函数也很丰富,在进行复杂一点的数学运算的时候可以直接拿来调用。除了内部的一些函数之外,所有的Matlab的核心文件和工具箱文件几乎都是可以更改,可以读写的源文件,用户可以根据实际要求在源文件中加入自己的文件,而这些被更改之后的文件也和库函数一样可以随时被调用。

(4)Matlab语言是一种解释执行的语言。Matlab语言用起来及其方便灵活,它的调用程序手段也很丰富,调试起来所用时间很短,不会造成时间的浪费,同时还会提高工作效率。基本上,大家在用一种语言来编程和调试时,一样都会需要很多步骤。例如:编程、连接、调试、执行这几个步骤。各个不走之间都有其内在的联系,变成其实就是它们之间的一种循环。Matlab语言和其他的语言相比较,可以更好的解决上面出现所出现的各类问题,把编程、连接、调试、执行连为一体。并且它能够在同一画面中连续的进行灵活的操作,可以迅速的排除编程过程中出现的语法错误和书写错误,加快了用户编写程序的速度,提高了工作效率。

(5)Matlab具有强大的工具箱。一般来说工具箱分为两大类,也就是功能性工具箱和学科性工具箱。学科性工具箱主要是用来进行比较专业的一些运用,例如统计工具箱、控控制工具箱、小波工具箱、优化工具箱、图像处理工具箱和通信工具箱等等,这些可以协助我们进行专业性较强的工作。功能性工具箱就不同了它主要用来扩充符号计算功能、图示的建设和仿真,文字处理与编辑以及硬件实时交互功能。

(6)具有良好的交互性和开放性。Matlab是用C语言来编写的,而C语言具有良好的移植性,所以Matlab也有很好的移植性,可以很方便的在C语言的操作平台上运行。除此之外还可以用来混合编程,它可以方便的调用C、C++、Fortran语言的子程序,可以避免重复的工作,减少工作时间。随着MATLAB版本的不断升级,其所含的工具箱的功能也越来越丰富,因此,应用范围也越来越广泛,成为涉及数值分析的各类工程师不可不用的工具。所以这次研究我们以MATLAB作为实现原理过程的程序。

1.5 本文的主要工作

第一章分析了特征提取及分割法的研究背景和意义,总结了该领域的国内外研究现

状、特征提取主要方法以及存在的问题,了解分类的方法,明确了本文要研究和实现的具体内容以及研究的难点。

第二章介绍了设计方案的选择与论证,详细介绍了其中特征脸提取方法及其优劣势所在,选择出最适合此次研究的方法,另外对各分类方法也做了简述并且对阈值分割法做了详细叙述。

第三章主要对图像特征提取的过程和方法做了详细的概述,包括图像的预处理、图像分析、特征提取进行描述。

第四章介绍了图像的预处理,彩色图像灰度化、图像增强、图像平滑去噪、以及特征分析和提取。

第五章实验结果及分析。

最后,总结全文并对存在的问题进行了分析和展望。

第二章 方案论证选择

2.1 图像分割的概念

图像分割的目的是为了将感兴趣的区域提取出来有关图像分割的解释和表述很多,

借助于集合概念对图像分割可以给出如下比较正式的定义:令集合R 代表整幅图像的区域,对R 的分割可看成将n R 个满足以下5个条件的非空子集(子区域)n R R R ,,21:

①R R i N

i == 1;

②对所有的i 和j ,有i≠j, =j i R R Φ;

③对i=1,2,…,N,有P (i R )=True;

④对i≠j,P (j i R R )=False;

⑤i=1,2, …,N, i R 是连通的区域。

其中P (i R )是对所有在集合中元素的逻辑谓词,Φ代表空集。下面先对上述各个

条件分别给予简略解释。

条件①指出对一幅图像所得的全部子区域的综合(并集)应能包括图像中所有像素

(就是原图像),或者说分割应将图像的每个像素都分进某个区域中。

条件②指出在分割结果中各个子区域是互不重叠的,或者说在分割结果中一个像素

不能同时属于两个区域。

条件③指出在分割结果中每个子区域都有独特的特性,或者说属于同一个区域中的

像素应该具有某些相同特性。

条件④指出在分割结果中,不同的子区域具有不同的特性,没有公共元素,或者说

属于不同区域的像素应该具有一些不同的特性。

条件⑤要求分割结果中同一个子区域内的像素应当是连通的,即同一个子区域的两

个像素在该子区域内互相连通,或者说分割得到的区域是一个连通组元。

另外,上述这些条件不仅定义了分割,也对进行分割有指导作用。对图像的分割总

是根据一些分割准则进行的。条件①与条件②说明正确的分割准则应可适用于所有区域和所有像素,而条件③和条件④说明合理的分割准则应能帮助确定各区域像素有代表性

的特性,条件⑤说明完整的分割准则应直接或间接地对区域内像素的连通性有一定的要求或限定。

最后需要指出,实际应用中图像分割不仅要把一幅图像分成满足上面5个条件的各具特性的区域而且需要把其中感兴趣的目标区域提取出来。只有这样才算真正完成了图像分割的任务。

2.2 图像分割算法分类

图像分割算法的研究一直受到人们的高度重视,到目前为止,提出的分割算法已经多达上千种,由于现有的分割算法粉肠多,所以将它们进行分类的方法也提出了不少。例如有把分割算法分成3类的:

①边缘检测②阈值分割和③区域生长。但事实上阈值分割算法分割的方法在本质上也是一种区域提取方法,所以③实际上包含了①。

本章从实际应用的角度考虑,详细讨论了图像分割的如下算法:边缘检测、灰度阈值分割、区域生长分割等。图像分割是由图像处理到图像分析的关键步骤,也是一种基本的计算机视觉技术。随的图像处理,诸如特征提取和对象识别,都依赖于图像分割的质量。图像分割就是指把像分成各具特性的区域并提取感兴趣目标的技术和过程。尽管人们在图像分割方面做了许多研究工作,但由于没有通用的分割理论,现己提出的分割算法大都是针对具体问题的,并没有一种适合所有图像的通用分割算法。对于彩色图像分割问题,必须充分利用彩色图像所包含的丰富的色彩信息,选择适当的特征,使目标和背景能依据特征上的差别进行区分,利用这个颜色特征将彩色图像转变成灰度图像,再确定阈值对灰度图像进行特征提取。方案选择论证框图如下:

图1-1 主要流程图

2.3 方案一边缘检测方法

边缘(Edge)是指图像局部亮度变化最显著的部分。边缘主要存在于目标、目标与背景、区域与区域(包括不同色彩)之间,是图像分割、纹理特征提取和形状特征提取等图像分析的重要基础。图像分析和理解的第一步常常是边缘检测(Edge Detection)。由于边缘检测十分重要,因此成为机器视觉研究领域最活跃的课题之一。本节主要讨论边缘检测和定位的基本概念,并通过几种常用的边缘检测器来说明边缘检测的基本问题。

图像中的边缘通常与图像亮度或图像亮度的一阶导数的不连续性有关。图像亮度的不连续可分为:①阶跃不连续,即图像亮度在不连续处的两边的像素灰度值有着显著的差异:②线条不连续,即图像亮度从一个值变化到另一个值,保持一个较小的行程后又返回到原来的值。在实际中,阶跃和线条边缘图像是很少见的,由于大多数传感元件具有低频特性,使得阶跃边缘变成斜坡型边缘,线条边缘变成屋顶形边缘,其中的亮度变化不是瞬间的,而是跨越一定的距离。

对一个边缘来说,有可能同时具有阶跃和线条特性。例如在一个表面上,由一个平面变化到法线方向不同的另一个平面就会产生阶跃边缘;如果这一表面具有镜面反射特性且两平面形成的棱角比较圆滑,则当棱角圆滑表面的法线经过镜面反射角时,由于镜面反射分量,在棱角圆滑表面上会产生明亮光条,这样的边缘看起来像在阶跃边缘上叠

加了一个线条边缘。由于边缘可能与场景中物体的重要特性对应,所以它是很重要的图像特征。比如,一个物体的轮廓通常产生阶跃边缘,因为物体的图像亮度不同于背景的图像亮度。

在讨论边缘算子之前,首先给出下列术语的定义。

边缘点:图像中亮度显著变化的点。

边缘段:边缘点坐标[i,j]及其方向θ的综合,边缘的方向是可以是梯度角。

边缘检测器:从图像中抽取边缘(边缘点或边缘段)集合的算法。

轮廓:边缘列表,或是一条边缘列表的曲线模型。

边缘连接:从无序边缘表形成有序边缘表的过程。习惯上边缘的表示采用顺时针方向来排序。

边缘跟踪:一个用来确定轮廓图像(指滤波后的图像)的搜索过程。

边缘点的坐标可以是边缘位置像素点的行、列整数标号,也可以在子像素分辨率水平上表示。边缘坐标可以在原始图像坐标系上表示,但大多数情况下是在边缘检测滤波器的是输出图像的坐标系上表示,因为滤波过程可能导致图像坐标平移或者缩放。边缘段可以用像素点尺寸大小的小线段定义,或用具有方向属性的一个点定义。在实际应用中,边缘点和边缘段都称为边缘。

由于边缘检测器生成的边缘集分成两个:真边缘和假边缘集。真边缘集对应场景中的边缘,假边缘集不是场景中的边缘。还有一个边缘集,即场景中的漏边缘集。假边缘集称之为假阳性(False Positive),而漏掉的边缘集则称之为假阴性(False Negative)。

边缘连接和边缘跟踪之间的区别在于:边缘连接是把边缘检测器产生的无序边缘集作为输出,输入一个有序边缘集;边缘跟踪则是将一幅图像作为输入,输出一个有序边缘集。另外,边缘检测使用局部信息来决定边缘,而边缘跟踪使用整个图像信息来决定一个像素点是不是边缘。

梯度边缘检测算法有如下4个步骤。

(1)滤波:边缘检测算法主要是基于图像强度的一阶和二阶导数,但导数的计算对噪声敏感,因此必须使用滤波器来改善与噪声有关的边缘检测器的功能。需要指出的是,大多数滤波器在降低噪声的同时也导致了边缘强度的损失,因此,增强边缘和降低噪声之间需要折中。

(2) 增强:增强边缘的基础是确定图像各点邻域强度的变化值。增强算法可以将邻域(或局部)强度值有显著变化的点突显出来。边缘增强一般是通过计算梯度幅值来完

成的。

(3) 检测:在图像中有许多点的梯度幅值比较大,而这些点在特定的应用领域中并

不都是边缘,所以应该用某些方法来确定哪些点是边缘带内。最简单的边缘检测判据是梯度幅值阈值判据。

(4) 定位:如果某一应用场合要求来确定边缘位置,则边缘的位置可在子像素分辨

率上来估计,边缘的方位可以被估计出来。

在边缘检测算法中,前3个步骤用得十分普遍。这是因为大多数场合下,仅仅需要

边缘检测器指出边缘出现在图像某一像素点的附近,而没必要指出边缘的精确位置或方向。在这本文主要讨论常用的几种边缘检测器,并调用其中的函数进行边缘检测得出效果图。

(1)Robert 算子

Robert 交叉算子为梯度幅值计算提供了一种简单的近似方法:

()()()()()1,,11,1,,+-++++-=j i f j i f j i f j i f j i G (2-1)

用卷积模板表示方法,上式变成:

()y x G G j i G +=, (2-2)

其中x G 和y G 由下面的模板计算:

x G

y G

在计算梯度时,计算空间同一位置(x,y )的真实偏导数非常重要。采用上述2×2

邻域模板计算的梯度近似值x G 和y G 并不位于同一位置,x G 实际上是内差点()2

1,+j i 处的近似梯度,y G 实际上是内差点()

j i ,2

1+出的近似梯度。因此,Robert 算子是该点连续梯度的近似值,而不是所预期点()j i ,处的近似值。所以,通常用3×3邻域计算梯度值。

(2)Prewitt 算子

Prewitt 与Sobel 算子的方程完全一样,只是常系数c=1。所以x s 和y s 可分别用卷

积模板表示为:

下面

使用MATLAB 图像处理工具箱中的edge 函数

利用以上算子来检测边缘。Edge 函数提供许多微分算子模板,对于某些模板可以指定其是对水平边缘还是对垂直边缘(或者二者都有)敏感(即主要检测是水平边缘还是垂直边缘)。Edge 函数在检测边缘时可以指定一个灰度阈值,只有满足这个阈值条件的点才视为边界点。

(3)Canny 算子

检测阶跃边缘的基本思想是在图像中找出具有局部最大梯度幅值的像素点。检测阶跃边缘的大部分工作集中在寻找能够用于实际图像的梯度数字逼近。由于实际的图像经过了摄像机光学系统和电路系统(带宽限制)固有的低通滤波器的平滑,因此,图像中的阶跃边缘不是十分陡立。图像也受到摄像机噪声和场景中不希望的细节的干扰。图像梯度逼近必须满足两个要求:①逼近必须能够抑制噪声效应:②必须尽量精确地确定边缘的位置。抑制噪声和边缘精确定位是无法同时得到满足的,也就是说,边缘检测算法通过图像平滑算子去除了噪声,但却增加了边缘定位的不确定性;反过来,若提高边缘检测算子对边缘的敏感性,同时也提高了对噪声的敏感性。有一种先行算子可以在抗噪声干扰和精确定位之间选择一个最佳折衷方案,它就是高斯函数的一阶导数,对应于图像的高斯函数平滑和梯度计算。边缘算子的如下3个准则:

信噪比准则:

信噪比越大,提取的边缘质量越高。信噪比SNR 定义为:

()()()??+-+--=w

w w w dx

x h dx x h x G SNR 2σ (2-3)

其中G (x )代表边缘函数,h(x)代表宽度为W 的滤波器的脉冲响应。

定位精确度准则

边缘定位精度L 如下定义:

()()()dx

x h dx x h x G L w

w w w ??+-+--=2'''σ (2-4)

其中()X G '和()X H '分别是()X G 和()X h 的导数。L 越大表明定位精度越高。

单边缘响应准则:

为了保证单边缘只有一个响应,检测算子的脉冲响应导数的零交叉点平均距离

()'f D 应满足:

()()()21''2''

??????????=??∞+∞-∞+∞-dx x h dx x h f D π (2-5) ()x h ''是()x h 的二阶导数

以上述指标和准则为基础,利用泛函数求导的方法可导出坎尼边缘检测器是信噪比与定位之乘积的最优逼近算子,表达式近似于高斯函数的一阶导数。将坎尼3个准则相结合可以获得最优的检测算子。

利用MATLAB 我们可以很方便的对图像边缘检测算法进行仿真研究。比较各自优缺

点,得到最优,效果最好的算法来进行图像的处理。

Roberts 算子定位比较精确,但由于不包括平滑,所以对于噪声比较敏感。Prewitt

算子是平均滤波的一阶算子,检测的图像边缘可能 大于两个像素,对灰度渐变低噪声的图像有较好的检测效果但是对于混合多噪声的图像,处理效果就不理想了。Canny 方

图2-1 梯度边缘检测流程图

法则以一阶倒数为基础来判断边缘点,它是一阶传统微分中检测阶跃型边缘最好算子之一。

2.4 方案二阈值分割法

阈值化分割算法是图像分割中应用数量最多的一类。简单地说,对灰度图像的阈值分割就是先确定一个处于图像灰度取值范围内的灰度阈值,然后将图像中各个像素的灰度值与这个阈值相比较,并根据比较的结果将对应的像素划分为(分割)为两类:像素灰度大于阈值的一类,像素灰度值小于阈值的为另一类,灰度值等于阈值的像素可以归如这两类之一。分割后的两类像素一般分属图像的两个不同区域,所以对像素根据阈值分类达到了区域分割的目的。由此可见,阈值分割算法主要有两个步骤:

(1)确定需要分割的阈值;

(2)将分割阈值与像素点的灰度值比较,以分割图像的像素。

以上步骤中,确定阈值是分割的关键,如果能确定一个合适的阈值就可准确地将图像分割开来。阈值确定后,将阈值与像素点的灰度值比较和像素分割可对像素并行地进行,分割的结果直接给出图像区域,如图2-2。

图2-2 阈值分割流程图

在利用取阈值方法来分割灰度图像时一般对图像的灰度分布有一定的假设,或者说是基于一定的图像模型。最常用的模型可描述如下:假设图像由具有单峰灰度分布的目标和背景组成,处于目标和背景内部相邻像素间的灰度值是高度相关的,但处于目标和

背景交界处两边的像素在灰度值上有很大的差别。若一幅图像满足这些条件,它的灰度直方图基本上可看作是由分别对应于目标和背景的两个单峰直方图混合构成的。而且如果这两个分布大小(数量)接近且均值相距足够远,两部分的均方差也足够小,则直方图应为较明显的双峰。类似地,如果图像中有多个单峰灰度分布的目标,则直方图有可能表现为较明显的多峰。对这类图像常可用取阈值方法来较好地分割。

把图像中各种灰度的像素分成两个不同的类,需要确定一个阈值。如果要把图像中

各种灰度的像素分成多个不同的类,那么需要选择一系列阈值以将每个像素分到合适的类别中去。如果只用一个阈值分割称为单阈值分割方法,如果用多个阈值分割称为多阈值分割方法。单阈值分割可以看作是多阈值分割的特例,许多单阈值分割算法可推广以进行多阈值分割。反之,有时候也可以将多阈值分割问题转化为一系列单阈值分割问题来解决。不管用任何方法选取阈值,一幅原始图像f(x,y)取单阈值T 分割后的图像可定义为:

()()()??

?≤>=T y x f T y x f y x g ,0,1, (2-6)

这样得到的()y x g ,是一幅二值图像。

在一般的多阈值情况下,取阈值分割后的图像可表示为:

()()K k T y x f T k y x g k k ,,2,1,,1 =≤≤=- (2-7) 其中k T T T ,,,10 是一系列分割阈值,k 表示赋予分割后图像各区域不同的标号。

需要指出,无论是单阈值分割或多阈值分割,分割结果中都有可能出现不同区域具

有相同标号或区域值的情况。这是因为取阈值分割时只考虑了像素本身的值,未考虑像素的空间位置。所以根据像素值划分到同一类的像素有可能分属于图像中不相连通的区域。这时候往往需要借助一些对场景的先验知识来进一步确定目标的区域。已提出的阈值化分割算法很多,相应的分类方法也很多,例如,对文档图像的阈值化技术可油种分类的方法:

考虑分割过程是否需要人工干预,可分为交互的与自动的;

根据阈值的不同作用范围,可分为全局的与局部的;

考虑阈值选取中所采用的灰度分布统计特性,可分为上下文相关与上下文无关的,前者基于灰度分布的一阶统计,后者基于灰度分布的二阶统计;

从处理策略角度考虑,可分为迭代的与非迭代的;

根据为进行分割是否选用训练像素集以估计目标或背景的特性参数,可分为有监督

的与无监督的。

在前面关于阈值化原理的讨论中已指出选取合适的分割阈值化算法的关键问题,据

此可根据阈值选取本身的特点对算法分类。阈值一般可写成如下形式:

()()[]y x p y x f y x T T ,,,,,=

(2-8) 其中()y x f ,代表在像素点()y x ,处的灰度值,()y x p ,代表在该点邻域的某种局部性

质。即阈值T 在一般情况下可以是(y x ,),()y x f ,,()y x p ,的函数。借助上式,可将取阈值分割方法分成如下3类,相应的阈值分别称为:

基于各像素值的阈值 阈值仅根据()y x f ,来选取,所得到的阈值仅与全图各像素的

本身性质(像素值)有关;

基于区域性质的阈值 阈值是根据()y x f ,和()y x p ,来选取的,所得的阈值与区域性

质(区域内各像素的值,相邻像素值的关系等)有关;

基于坐标位置的阈值阈值进一步(除根据()y x f ,和()y x p ,来选取外)还与y x ,有关,

即阈值要考虑位置(y x ,),来确定,则所得的阈值是与像素空间坐标有关的。

以上对取阈值分割方法的分类思想是通用的。近年来,许多取阈值分割算法借用了

视觉神经、神经网络和模糊数学等工具,但仍可把它们归纳到以上3种方法类型中。

有时图像中目标和背景的灰度值有部分交错,这时如用一个全阈值进行分割则总会

产生一定的误差。实际中常希望能尽可能减少误分割(包括把目标分成背景和把背景分成目标两类)的概率,而选取最优阈值是一种常用的方法。这里最优阈值指能使误分割率最小的分割阈值。图像的直方图可看成像素灰度值的概率分布密度函数的一个近似,设一幅图像仅包括两类主要的灰度值区域(目标和背景),那么其直方图所代表的像素灰度值概率分布密度函数实际上是对应目标和背景的两个单峰分布密度函数之和。如果已知密度函数的形式,就有可能计算出一个最优阈值,用它可把图像分成两类区域而使误分割率最小。

设有这样一幅混有加性高斯噪声的图像,背景和目标的概率密度分别是()z P 1和()z P 2,整幅图像的混合概率密度:

()()()z p p z p p z p 2211+=

相关主题
相关文档
最新文档