‘壹’ 图像分割最好方法
1.基于阈值的分割方法
阈值法的基本思想是基于图像的灰度特征来计算一个或多个灰度阈值,并将图像中每个像素的灰度值与阈值作比较,最后将像素根据比较结果分到合适的类别中。因此,该方法最为关键的一步就是按照某个准则函数来求解最佳灰度阈值。
阈值法特别适用于目标和背景占据不同灰度级范围的图。图像若只有目标和背景两大类,那么只需要选取一个阈值进行分割,此方法成为单阈值分割;但是如果图像中有多个目标需要提取,单一阈值的分割就会出现作物,在这种情况下就需要选取多个阈值将每个目标分隔开,这种分割方法相应的成为多阈值分割。
2.基于区域的图像分割方法
基于区域的分割方法是以直接寻找区域为基础的分割技术,基于区域提取方法有两种基本形式:一种是区域生长,从单个像素出发,逐步合并以形成所需要的分割区域;另一种是从全局出发,逐步切割至所需的分割区域。
分水岭算法
分水岭算法是一个非常好理解的算法,它根据分水岭的构成来考虑图像的分割,现实中我们可以想象成有山和湖的景象,那么一定是水绕山山围水的景象。
分水岭分割方法,是一种基于拓扑理论的数学形态学的分割方法,其基本思想是把图像看作是测地学上的拓扑地貌,图像中每一点像素的灰度值表示该点的海拔高度,每一个局部极小值及其影响区域称为集水盆,而集水盆的边界则形成分水岭。分水岭的概念和形成可以通过模拟浸入过程来说明。在每一个局部极小值表面,刺穿一个小孔,然后把整个模型慢慢浸入水中,随着浸入的加深,每一个局部极小值的影响域慢慢向外扩展,在两个集水盆汇合处构筑大坝,即形成分水岭。
‘贰’ 图象分割有哪三种不同的途径
图象分割有三种不同的途径,其一是将各象素划归到相应物体或区域的象素聚类方法即区域法,其二是通过直接确定区域间的边界来实现分割的边界方法,其三是首先检测边缘象素再将边缘象素连接起来构成边界形成分割。早期的图像分割方法可以分为两大类。一类是边界方法,这种方法假设图像分割结果的某个子区域在原来图像中一定会有边缘存在;一类是区域方法,这种方法假设图像分割结果的某个子区域一定会有相同的性质,而不同区域的像素则没有共同的性质。这两种方法都有优点和缺点,有的学者考虑把两者结合起来进行研究。现在,随着计算机处理能力的提高,很多方法不断涌现,如基于彩色分量分割、纹理图像分割。所使用的数学工具和分析手段也是不断的扩展,从时域信号到频域信号处理,小波变换等等。
图像分割主要包括4种技术:并行边界分割技术、串行边界分割技术、并行区域分割技术和串行区域分割技术。下面是分别对每一项做简单的介绍。
‘叁’ 机器人视觉系统中图像分割技术传统方法概论1
姓名:寇世文
学号:21011110234
【嵌牛导读】:随着人工智能技术的不断发展,智能机器人领域也得到了空前的发展。尤其是深度神经网络广泛应用于视觉系统中后,取得了许多很明显的成效。对于自主移动机器人来说,视觉系统有着十分重要的作用,而图像分割技术更是在这个系统中担任着十分重要的角色。传统的图像分割技术基本上已经能够将图像的前景和后景分隔开来,但是近年来随着深度学习算法的发展,人们开始将其应用到图像分割中,提出了很多分割网络,也达到了很好的分割效果。在实现图像分割的基础上,人们还使得分割具有了语义类别和标签,就是现在的语义分割。本文在介绍了语义分割的基础上又引出了新的任务分割场景,实例分割和全景分割。并且介绍了最近研究的热点三维点云的语义分割问题,阐述了其实现的必要性。
【嵌牛鼻子】智能机器人,图像分割、语义分割、计算机视觉
【嵌牛提问】图像分割技术的传统常见方法
【嵌牛正文】
一、引言
计算机视觉,即computer vision,就是通过计算机来模拟人的视觉工作原理,来获取和完成一系列图像信息处理的机器。计算机视觉属于机器学习在视觉领域的应用,是一个多学科交叉的研究领域,其涉及数学、物理、生物、计算机工程等多个学科。
计算机视觉的主要应用有无人驾驶、人脸识别、无人安防、车辆车牌识别、智能传图、3D重构、VR/AR、智能拍照、医学图像处理、无人机、工业检测等。人驾驶又称自动驾驶,是目前人工智能领域一个比较重要的研究方向,让汽车可以进行自主驾驶,或者辅助驾驶员驾驶,提升驾驶操作的安全性。人脸识别技术目前已经研究得相对比较成熟,并在很多地方得到了应用,且人脸识别准确率目前已经高于人眼的识别准确率。安防一直是我国比较重视的问题,也是人们特别重视的问题,在很多重要地点都安排有巡警巡查,在居民小区以及公司一般也都有保安巡查来确保安全。车辆车牌识别目前已经是一种非诚成熟的技术了,高速路上的违章检测,车流分析,安全带识别,智能红绿灯,还有停车场的车辆身份识别等都用到了车辆车牌识别。3D重构之前在工业领域应用比较多,可以用于对三维物体进行建模,方便测量出物体的各种参数,或者对物体进行简单复制。计算机视觉还有很多应用,随着技术的发展,应用领域也会越来越多。在工业领域的应用,在机器人技术方面的应用等。
对于传统的图像分割过程,通常可以分为5个步骤,即特征感知、图像预处理、特征提取、特征筛选和推理预测与识别。通过研究发现,在视觉的早期的发展过程中,人们对于图像中的特征并没有表现出足够的关注。且传统的分割过程是把特征提取和分类分开来做的,等到需要输出结果的时候再结合到一起,可想而知其实现的困难程度。
在深度学习算法出来之后,卷积神经网络被广泛应用于计算机视觉技术中,也因此衍生出了很多的研究方向。深度学习主要是以特征为基础来进行比对,如在人脸识别方面,使用卷积神经网络分别对两张人脸进行不同位置的特征提取,然后再进行相互比对,最后得到比对结果。目前的计算机视觉的主要研究方向有图像分类、目标检测、图像分割、目标跟踪、图像滤波与降噪、图像增强、风格化、三维重建、图像检索、GAN等。本文主要是针对图像分割这一领域,进行简要的概述。
图像分割技术是计算机视觉领域的个重要的研究方向,是图像语义理解的重要一环。图像分割是指将图像分成若干具有相似性质的区域的过程,从数学角度来看,图像分割是将图像划分成互不相交的区域的过程。近些年来随着深度学习技术的逐步深入,图像分割技术有了突飞猛进的发展,该技术相关的场景物体分割、人体前背景分割、人脸人体Parsing、三维重建等技术已经在无人驾驶、增强现实、安防监控等行业都得到广泛的应用。
二、发展现状
近来已经有很多学者将图像分割技术应用到移动机器人的控制中,能够做到在机器人运动的同时定位、构建地图并分割出不同的前景和后景,使视觉系统扫描到的图像具有语义信息。并有学者也致力于分割得更为准确和精细,不仅能够做到区分不同类的物体,也能够实现对同类的不同物体的分类,甚至可以做到在此基础上加上对背景的分割。由于我们生活的世界是三维空间,还有学者将图像场景还原到三维中,然后使用相关方法对整个三维场景进行分割。作为计算机视觉的研究中的一个较为经典的难题,图像分割这一领域也越来越被人们所关注。
首先是传统的图像分割方法。在传统分割方面,人们使用数字图像处理、拓扑学、数学等方面的知识来进行图像分割。虽然现在的算力逐渐增加且深度学习不断发展,一些传统的分割方法所取得的效果不如深度学习,但是其分割的思想仍有很多值得我们去学习的。
第一种方法是基于阈值的图像分割方法。这种方法的核心思想是想根据图像的灰度特征来给出一个或多个灰度阈值,将此阈值作为一个标准值与图像中的每个像素逐一进行比较。很容易想到,通过这个逐一比较过程能够得到两类结果,一类是灰度值大于阈值的像素点集,另一类是灰度值小于阈值的像素点集,从而很自然地将图像进行了分割。所以,不难发现,此方法的最关键的一步就是按照一定的准则函数来得到最佳灰度阈值,这样才能够得到合适的分类结果。值得一提的是,如果图像中需要分割的目标和背景分别占据了不同的灰度值甚至是不同的等级,那使用这种方法会得到很好的效果。并且,假如对于一张图像的处理,我们只需要设定一个阈值时,可以将其称为单阈值分割。但是图像中如果不止一个目标,即有多个目标需要进行提取的时候,单一阈值分割就无法做到将它们都分割开来,此时应选取多个阈值对其进行处理,这个分割的过程为多阈值分割。总的来说,阈值分割法有着其独特的特点,其计算简单、效率较高。但是,由于这种方法只考虑的是单个像素的灰度值及其特征,而完全忽略了空间特征,这也就导致了其对噪声比较敏感且鲁棒性不高。
第二种方法是基于区域的图像分割方法。这种方法具有两种基本形式:一种是区域生长,这种分割方法是从单个像素出发,逐渐将相似的区域进行合并,最终得到需要的区域。另一种方法是直接从图像的全局出发,一点一点逐步切割至所需要的区域。区域生长指的是,给定一组种子像素,其分别代表了不同的生长区域,然后让这些种子像素逐渐合并邻域里符合条件的像素点。如果有新的像素点添加进来,同样把它们作为种子像素来处理。
区域分裂合并的分割过程可以说是区域生长的逆过程,这种方法是从图像的全局出发通过不断分裂得到各个子区域,然后提取目标的过程。此外,在此过程中,还需要合并前景区域。
在区域分割方法中还有一种分水岭算法。受启发于分水岭的构成,这种分割方法将图像看作是测地学上的拓扑地貌,这样图像中每一个像素点对应的海拔高度可以用该点的灰度值来表示。分水岭的形成过程实际上可以通过模拟浸入过程来实现。具体做法是,在每个局部极小值的表面都刺穿一个小孔,然后把模型慢慢浸入水中,随着水慢慢浸入其中,分水岭就随之形成了。
第三种方法是基于边缘检测的分割方法。边缘检测的思想就是试图通过检测不同物体的边缘来将图像分割开来,这种方法是人们最先想到的也是研究最多的方法之一。如果我们将图片从空间域变换到频率域中去,其中物体的边缘部分就对应着高频部分,很容易就能够找到边缘信息,因此也使得分割问题变得容易。边缘检测的方法能够实现快而且准确的定位,但是其不能保证边缘的连续性和封闭性,且当一幅图像的细节信息过多时,其就会在边缘处产生大量的细碎边缘,在形成完整的分割区域时就会有缺陷。
第四种图像分割方法结合了特定的工具。这里所说的特定工具是各种图像处理工具以及算法等,随着图像分割研究工作的深入,很多学者开始将一些图像处理的工具和一些算法应用到此工作中,并取得了不错的结果。小波变换在数字图像处理中发挥着很重要的作用,它能够将时域和频域统一起来研究信号。尤其是在图像边缘检测方面,小波变换能够检测二元函数的局部突变能力。其次是基于遗传算法的图像分割,遗传算法主要借鉴了生物界自然选择和自然遗传机制的随机化搜索方法。其模拟了由基因序列控制的生物群体的进化过程,其擅长于全局搜索,但是局部搜多能力不足。将遗传算法应用到图像处理中也是当前研究的一个热点问题,在此选择这种方法的主要原因是遗传算法具有快速的随机搜索能力,而且其搜索能力与问题的领域没有任何关系。
除此之外,还有基于主动轮廓模型的分割方法,这种方法具有统一的开放式的描述形式,为图像分割技术的研究和创新提供了理想的框架。此方法也是对边缘信息进行检测的一种方法,主要是在给定图像中利用曲线演化来检测目标。
‘肆’ 本人大一 为论文发愁
摘 要
本文详细介绍了多变量预测控制算法及其在环境试验设备控制中的应用。由于环境试验设备的温度和湿度控制系统具有较大的时间滞后,而且系统间存在比较严重的耦合现象,用常规的PID控制不能取得满意的控制效果。针对这种系统,本文采用了多变量预测控制算法对其进行了控制仿真。
预测控制算法是一种基于系统输入输出描述的控制算法,其三项基本原理是预测模型、滚动优化、反馈校正。它选择单位阶跃响应作为它的“预测模型”。这种算法除了能简化建模过程外,还可以通过选择合适的设计参数,获得较好的控制效果和解耦效果。
本文先对环境试验设备作了简介,对控制中存在的问题进行了说明;而后对多变量预测控制算法进行了详细的推导,包括多变量自衡系统预测制算法和多变量非自衡系统预测控制算法;然后给出了系统的建模过程及相应的系统模型,在此基础上采用多变量预测控制算法对环境试验设备进行了控制仿真,并对仿真效果进行了比较。
仿真结果表明,对于和环境试验设备的温度湿度控制系统具有类似特性的多变量系统,应用多变量预测控制算法进行控制能够取得比常规PID控制更加令人满意的效果。
关键词:多变量系统;预测控制;环境试验设备
【中文摘要共100—300个字,关键词3—7个词
中文摘要和关键词占一页】
【英文全部用Times New Roman字体】
Abstract 【三号字体,加粗,居中上下空一行】
【正文小四号字体,行距为固定值20磅】
In this paper, multivariable predictive control algorithm and its application to the control of the environmental test device are introced particularly. The temperature and humidity control system of the environmental test device is characterized as long time delay and severe coupling. Therefore, the routine PID control effect is unsatisfactory. In this case, the simulation of the temperature and humidity control of the environmental test device based on multivariable predictive control algorithm is made.
Predictive control algorithm is one of control algorithm based on description of system’s input-output. Its three basic principles are predictive model, rolling optimization and feedback correction. It chooses unit step response as its predictive model, so that the modeling process is simplified. In addition, good control and decoupling effects could be possessed by means of selection suitable parameters.
In this paper, the environmental test device is introced briefly and the existing problems are showed. Then multivariable predictive control algorithm is presented particularly, including multivariable auto-balance system predictive control algorithm and multivariable auto-unbalance system predictive control algorithm. Next, system modeling process and corresponding system model are proposed. Further, the multivariable predictive control algorithm is applied to the temperature and humidity control system of the environmental test device. Finally, the simulation results are compared.
Results of the simulation show that multivariable predictive control algorithm could be used in those multivariable system like the temperature and humidity control system of the environmental test device and the control result would be more satisfactory than that of the routine PID control.
Keyword: Multivariable system; Predictive control; Environmental test device
【英文摘要和关键词应该是中文摘要和关键词的翻译
英文摘要和关键词占一页】
【目录范例,word自动生成】
目 录
第一章 绪 论 1
1.1 引言 1
1.2 数字图像技术的应用与发展 1
1.3 问题的提出 3
1.4 论文各章节的安排 4
第二章 数字图像处理方法与研究 5
2.1 灰度直方图 5
2.1.1 定义 5
2.1.2 直方图的性质和用途 5
2.2 几何变换 8
2.2.1 空间变换 8
2.2.2 灰度级插值 8
2.2.3 几何运算的应用 10
2.3 空间滤波增强 10
2.3.1 空间滤波原理 10
2.3.2 拉普拉斯算子 11
2.3.3 中值滤波 12
2.4 图像分割处理 13
2.4.1 直方图门限化的二值分割 14
2.4.2 直方图的最佳门限分割 14
2.4.3 区域生长 16
第三章 图像处理软件设计 18
3.1 图像处理软件开发工具的选择 18
3.1.1 BMP图像格式的结构 18
3.1.2 软件开发工具的选择 19
3.2 EAN-13码简介 20
3.2.1 EAN-13条码的结构 20
3.2.2 条码的编码方法 21
3.1 系统界面设计 22
第四章 条码图像测试 24
4.1 条码图像处理的主要方法 24
4.2 条码图像测试结果 25
第五章 总结与展望 28
参考文献 29
当先验概率相等,即 时,则
(2.33)
恰为二者均值。
以上分析可知,只要 和 已知以及 和 为正态,容易计算其最佳门限值T。
实际密度函数的参数常用拟合法来求出 参数的估值。如最小均方误差拟合估计来会计 参量,并使拟合的均方误差为最小。例如,设想理想分布的密度为正态 ,实际图像直方图为 ,用离散方式其拟合误差为
(2.34)
式中N为直方图横坐标。通常这种拟合求密度函数的几个参数很难解,只能用计算机求数值解,但若 为正态分布时只需求均值和标准差二参数即可。
2.4.3 区域生长
区域生长是一种典型的串行区域分割技术,在人工智能领域的计算机视觉研究中是一种非常重要的图像分割方法,其主要思想是将事先选中的种子点周围符合某种相似性判断的像素点集合起来以构成区域。在具体处理时,是从把一幅图像分成许多小区域开始的,这些初始小区域一般是小的邻域,甚至是单个的像素点。然后通过定义适当的区域内部隶属规则而对周围像素进行检验,对于那些符合前述隶属规则的像素点就将其合并在内,否则将其据弃,经过若干次迭代最终可形成待分割的区域。在此提到的“内部隶属规则”可根据图像的灰度特性、纹理特性以及颜色特性等多种因素来作出决断。从这段文字可以看出,区域生长成功与否的关键在于选择合适的内部隶属规则(生长准则)。
对于基于图像灰度特性的生长准则,可以用下面的流程对其区域生长过程进行表述,如图2.6所示。
图 2. 6 区域生长流程图
第三章 图像处理软件设计
3.1 图像处理软件开发工具的选择
3.1.1 BMP图像格式的结构
数字图像存储的格式有很多种,如BMP、GIF、JPEG、TIFF等,数字图像处理中最常用的当属BMP,本课题采集到的图片也是用BMP格式存储的,要对这种格式的图片进行处理,那么首先就要了解它的文件结构。
(1)BMP文件格式简介
BMP(Bitmap-File)图形文件是Windows采用的图形文件格式在Windows环境下运行的所有图象处理软件都支持BMP图像文件格式。Windows系统内部各图像绘制操作都是以BMP为基础的。Windows 3.0以前的BMP位图文件格式与显示设备有关,因此把这种BMP图像文件格式称为设备相关位图DDB(device-dependent bitmap)文件格式。Windows 3.0以后的BMP图像文件与显示设备无关,因此把这种BMP图像文件格式称为设备无关位图DIB(device-independent bitmap)格式,目的是为了让Windows能够在任何类型的显示设备上显示所存储的图像。BMP位图文件默认的文件扩展名是BMP或者bmp(有时它也会以.DIB或.RLE作扩展名)。
(2)BMP文件构成
BMP文件由位图文件头(bitmap-file header)、位图信息头(bitmap-information header)、颜色信息(color table)和图形数据四部分组成。它具有如表3.1所示的形式。
表 3. 1 BMP位图结构
位图文件的组成 结构名称 符号
位图文件头(bitmap-file header) BITMAPFILEHEADER bmfh
位图信息头(bitmap-information header) BITMAPINFOHEADER bmih
颜色信息(color table) RGBQUAD aColors[]
图形数据 BYTE aBitmapBits[]
3.1.2 软件开发工具的选择
(1)Win32 API
Microsoft Win32 API(Application Programming Interface)是Windows的应用编程接口,包括窗口信息、窗口管理函数、图形设备接口函数、系统服务函数、应用程序资源等。Win32 API是Microsoft 32位Windows操作系统的基础,所有32位Windows应用
程序都运行在Win32 API之上,其功能是由系统的动态链接库提供的。
(2)Visual C++
Visual C++是Microsoft公司出品的可视化编程产品,具有面向对象开发,与Windows API紧密结合以及丰富的技术资源和强大的辅助工具。Visual C++自诞生以来,一直是Windows环境下最主要的应用开发系统之一,Visual C++不仅是C++语言的集成开发环境,而且与Win32紧密相连,所以利用Visual C++可以完成各种各样的应用程序的开发,从底层软件直到上层直接面向用户的软件。Visual C++是一个很好的可视化编程环境,它界面友好,便于程序员操作。
Visual C++可以充分利用MFC的优势。在MFC中具有许多的基本库类,特别是MFC中的一些,利用它们可以编写出各种各样的Windows应用程序,并可节省大量重复性的工作时间,缩短应用程序的开发周期。使用MFC的基本类库,在开发应用程序时会起到事半功倍的效果。
Visual C++具有以下这些特点:
简单性:Visual C++中提供了MFC类库、ATL模板类以及AppWizard、ClassWizard等一系列的Wizard工具用于帮助用户快速的建立自己的应用程序,大大简化了应用程序的设计。使用这些技术,可以使开发者编写很少的代码或不需编写代码就可以开发一个Windows应用程序。
灵活性:Visual C++提供的开发环境可以使开发者根据自己的需要设计应用程序的界面和功能,而且,Visual C++提供了丰富的类库和方法,可以使开发者根据自己的应用特点进行选择。
可扩展性:Visual C++提供了OLE技术和ActiveX技术,这种技术可以增强应用程序的能力。使用OLE技术和ActiveX技术可以使开发者利用Visual C++中提供的各种组件、控件以及第三方开发者提供的组件来创建自己的程序,从而实现应用程序的组件化。使用这种技术可以使应用程序具有良好的可扩展性。
(3)MFC
MFC(Microsoft Foundation Class)是Microsoft公司用C++语言开发的一套基础类
库。直接利用Win32 API进行编程是比较复杂的,且Win32 API不是面向对象的。MFC封装了Win32 API的大部分内容,并提供了一个应用程序框架用于简化和标准化Windows程序的设计。MFC是Visual C++的重要组成部分,并且以最理想的方式与其集成为一体。主要包括以下各部分:Win32 API的封装、应用程序框架、OLE支持、数据库支持、通用类等。
3.2 EAN-13码简介
人们日常见到的印刷在商品包装上的条码,自本世纪70年代初期问世以来,很快得到了普及并广泛应用到工业、商业、国防、交通运输、金融、医疗卫生、邮电及办公室自动化等领域。条码按照不同的分类方法,不同的编码规则可以分成许多种,现在已知的世界上正在使用的条码就有250种之多。本章以EAN条码中的标准版EAN-13为例说明基于数字图像处理技术,对EAN条码图像识别的软件开发方法。
EAN码是国际物品编码协会在全球推广应用的商品条码,是定长的纯数字型条码,它表示的字符集为数字0~9。由前缀码、厂商识别代码、商品项目代码和校验码组成。前缀码是国际EAN组织标识各会员组织的代码,我国为690~695;厂商识别代码是EAN会员组织在EAN前缀码的基础上分配给厂商的代码;商品项目代码由厂商自行编码;校验码上为了校验前面12位或7位代码的正确性。
3.2.1 EAN-13条码的结构
EAN-13码是按照“模块组合法”进行编码的。它的符号结构由八大部分组成:左侧空白区、 起始符、左侧数据符、中间分隔符、右侧数据符、校验符、终止符及右侧空白区,见表3.2。尺寸:37.29mm ×26.26mm ;条码:31.35mm ;起始符/分隔符/终止符:24.50mm ;放大系数取值范围是0.80~2.00;间隔为0.05。
表 3. 2 EAN-13码结构
左侧
空白区 起始符 左侧
数据符 中间
间隔符 右侧
数据符 校验符 终止符
右侧
空白区
9个
模块 3个
模块 42个
模块 5个
模块 35个
模块 7个
模块 3个
模块 9个
模块
EAN-13码所表示的代码由13位数字组成,其结构如下:
结构一:
其中:X13~X11为表示国家或地区代码的前缀码;X10~X7为制造厂商代码;X6~X2为商品的代码;X1为校验码。
结构二:
其中:X13~X11为表示国家或地区代码的前缀码;X10~X6为制造厂商代码;X5~X2为商品的代码;X1为校验码。
在我国,当X13X12X11为690、691时其代码结构同结构一;当X13X12X11为692
时其代码结构为同结构二。
EAN条码的编码规则,见表3.3:
起始符:101;中间分隔符:01010;终止符:101。
A、B、C中的“0”和“1”分别表示具有一个模块宽度的“空”和“条”。
表 3. 3 EAN条码的编码规则
数据符 左侧
数据符 右侧
数据符
A B C
0 0001101 0100111 1110010
1 0011001 0110011 1100110
2 0010011 0011011 1101100
3 011101 0100001 1000010
4 0100011 0011101 1011100
5 0110001 0111001 1001110
6 0101111 000101 1010000
7 0111011 0010001 1000100
8 0110111 0001001 1001000
9 0001011 0010111 1110100
3.2.2 条码的编码方法
条码的编码方法是指条码中条空的编码规则以及二进制的逻辑表示的设置。众所周知,计算机设备只能识读二进制数据(数据只有“0”和“1”两种逻辑表示),条码符号作为一种为计算机信息处理而提供的光电扫描信息图形符号,也应满足计算机二进制的要求。条码的编码方法就是通过设计条码中条与空的排列组合来表示不同的二进制数据。一般来说,条码的编码有两种:模块组合和宽度调节法。
模块组合法是指条码符号中,条与空是由标准宽度的模块组合而成。一个标准宽度的条表示二进制的“1”而一个标准的空模块表示二进制的“0”。商品条码模块的标准宽度是0.33mm ,它的一个字符由两个条和两个空构成,每一个条或空由1~4个标准宽度模块组成。
宽度调节法是指条码中,条与空的宽窄设置不同,用宽单元表示二进制的“1” ,而用窄单元表示二进制的“0”,宽窄单元之比一般控制在2~3之间。
3.1 系统界面设计
本文图像处理软件基本功能包括读取图像、保存图像、对图像进行处理等。图3.1所示为本图像处理软件的界面。
图 3. 1 软件主界面
软件设计流程图如图3.2所示。
图 3. 2 程序设计流程图
第四章 条码图像测试
4.1 条码图像处理的主要方法
(1)256色位图转换成灰度图
运用点处理中的灰度处理为实现数字图像的阈值变换提供前提条件。要将256色位图转变为灰度图,首先必须计算每种颜色对应的灰度值。灰度与RGB颜色的对应关系如下:
Y=0.299R+0.587G+0.114B (4.1)
这样,按照上式我们可以方便地将256色调色板转换成为灰度调色板。由于灰度图调色板一般是按照灰度逐渐上升循序排列的,因此我们还必须将图像每个像素值(即调色板颜色的索引值)进行调整。实际编程中只要定义一个颜色值到灰度值的映射表bMap[256](长为256的一维数组,保存256色调色板中各个颜色对应的灰度值),将每个像素值p(即原256色调色板中颜色索引值)替换成bMap[p]。
(2)灰度的阈值变换
利用点运算中的阈值变换理论将灰度图像变为二值图像,为图像分析做准备工作。灰度的阈值变换可以将一幅灰度图像转变为黑白二值图像。它的操作是先由用户指定一个阈值,如果图像中某像素的灰度值小于该阈值,则将该像素的灰度值设置为0,否则灰度值设置为255。
(3)中值滤波
运用变换域法中的空域滤波法对图像进行降噪处理。中值滤波是一种非线性的信号
处理方法,与其对应的滤波器当然也是一种非线性的滤波器。中值滤波一般采用一个含有奇数个点的滑动窗口,将窗口中各点灰度值的中值来替代指定点(一般是窗口的中心点)的灰度值。对于奇数个元素,中值是指按大小排序后,中间的数值,对于偶数个元素,中值是指排序后中间两个元素灰度值的平均值。
(4)垂直投影
利用图像分析中的垂直投影法实现对二值图像的重建,为条码识别提供前提条件。垂直投影是利用投影法对黑白二值图像进行变换。变换后的图像中黑色线条的高度代表了该列上黑色点的个数。
(5)几何运算
几何运算可以改变图像中各物体之间的空间关系。几何运算的一个重要应用是消除摄像机导致的数字图像的几何畸变。当需要从数字图像中得到定量的空间测量数据时,几何校正被证明是十分重要的。另外,一些图像系统使用非矩形的像素坐标。在用普通的显示设备观察这些图像时,必须先对它们进行校直,也就是说,将其转换为矩形像素坐标。
4.2 条码图像测试结果
本软件的处理对象为EAN-13码的256色BMP位图,应用数字图像处理技术中的灰度处理、阈值分割、空域滤波、区域生长、投影等方法,对有噪声的条码图像进行了相应处理,其结果如下:
图4. 1 原始条码图 图4. 2 灰度窗口变换
图4. 3 原条码直方图 图4. 4 灰度窗口变换直方图
图4. 5灰度直方图规定化界面 图4. 6灰度直方图规定化直方图
图4. 7 中值滤波的界面
图4. 8 区域生长 图4. 9 阈值面积消除
图4. 10 垂直投影
从以上处理结果可以看出,对原始条码图像进行灰度变换、中值滤波、二值化以及小面积阈值消除后得到条码的投影图像,下一步就可以通过图像模式识别的方法将条码读取出来,该部分工作还有待进一步研究。
第五章 总结与展望
数字图像处理技术起源于20世纪20年代,当时由于受技术手段的限制,使图像处理技术发展缓慢。直到第三代计算机问世以后,数字图像处理才得到迅速的发展并得到普遍应用。今天,已经几乎不存在与数字图像处理无关的技术领域。
本论文主要研究了数字图像处理的相关知识,然后通过Visual C++这一编程工具来实现图像处理算法;对文中所提到的各种算法都进行了处理,并得出结论。所做工作如下:
(1)运用点处理法中的灰度处理为实现数字图像的阈值变换提供前提条件。
(2)运用变换域法中的空域滤波法对图像进行降噪处理。
(3)利用点运算中的阈值变换理论将灰度图像变为二值图像,为图像分析做准备工作。
(4)利用图像分析中的垂直投影法实现对二值图像的重建,为条码识别提供前提条件。
在论文的最后一章,给出了各种算法处理的结果。结果表明通过数字图像处理可以把有噪声的条码处理成无噪声的条码。
数字图像处理技术的应用领域多种多样,不仅可以用在像本文的图像处理方面,还可以用于模式识别,还有机器视觉等方面。近年来在形态学和拓扑学基础上发展起来的图像处理方法,使图像处理的领域出现了新的局面,相信在未来图像处理的应用将会更加广泛。
参考文献
[1] 阮秋琦.数字图像处理学[M].北京:电子工业出版社,2001.
[2] 黄贤武,王加俊,李家华.数字图像处理与压缩编码技术[M].成都:科技大学出版社,2000.
[3] 容观澳.计算机图像处理[M].北京:清华大学出版社,2000.
[4] 胡学钢.数据结构-算法设计指导[M].北京:清华大学出版社,1999.
[5] 黄维通.Visual C++面向对象与可视化程序设计[M].北京:清华大学出版社,2001.
[6] 夏良正.数字图像处理[M].南京:东南大学出版社,1999.
[7] 费振原.条码技术及应用[M].上海:上海科学技术文献出版社,1992.
[8] 李金哲.条形码自动识别技术[M].北京:国防工业出版社,1991.
[9] 何斌.Visual C++数字图像处理[M].北京:人民邮电出版社,2001.
[10] 李长江. C++使用手册[M].北京:电子工业出版社,1995.
[11] 席庆,张春林. Visual C++ 6.0.实用编程技术[M].北京:中国水利水电出版社,1999.
[12] 胡学钢.数据结构-算法设计指导[M].北京:清华大学出版社,1999.
[13] Kenneth R.Castleman着,朱志刚等译.数字图像处理[M].北京:电子工业出版社,1998.
[14] Davis. Chapman.Visual C++ 6.0[M].北京:清华大学出版社,1999.
[15] Richard C.Leinecker.Visual C++ 5 Power Toolkit[M].北京:机械工业出版社,1999.
‘伍’ 图像分割的分割方法
灰度阈值分割 法是一种最常用的并行区域技术,它是图像分割中应用数量最多的一类。阈值分割方法实际上是输入图像f到输出图像g的如下变换:
其中,T为阈值,对于物体的图像元素g(i,j)=1,对于背景的图像元素g(i,j)=0。
由此可见,阈值分割算法的关键是确定阈值,如果能确定一个合适的阈值就可准确地将图像分割开来。阈值确定后,将阈值与像素点的灰度值逐个进行比较,而且像素分割可对各像素并行地进行,分割的结果直接给出图像区域。
阈值分割的优点是计算简单、运算效率较高、速度快。在重视运算效率的应用场合(如用于硬件实现),它得到了广泛应用。
人们发展了各种各样的阈值处理技术,包括全局阈值、自适应阈值、最佳阈值等等。
全局阈值是指整幅图像使用同一个阈值做分割处理,适用于背景和前景有明显对比的图像。它是根据整幅图像确定的:T=T(f)。但是这种方法只考虑像素本身的灰度值,一般不考虑空间特征,因而对噪声很敏感。常用的全局阈值选取方法有利用图像灰度直方图的峰谷法、最小误差法、最大类间方差法、最大熵自动阈值法以及其它一些方法。
在许多情况下,物体和背景的对比度在图像中的各处不是一样的,这时很难用一个统一的阈值将物体与背景分开。这时可以根据图像的局部特征分别采用不同的阈值进行分割。实际处理时,需要按照具体问题将图像分成若干子区域分别选择阈值,或者动态地根据一定的邻域范围选择每点处的阈值,进行图像分割。这时的阈值为自适应阈值。
阈值的选择需要根据具体问题来确定,一般通过实验来确定。对于给定的图像,可以通过分析直方图的方法确定最佳的阈值,例如当直方图明显呈现双峰情况时,可以选择两个峰值的中点作为最佳阈值。
图1(a)和(b)分别为用全局阈值和自适应阈值对经典的Lena图像进行分割的结果。
区域生长和分裂合并法是两种典型的串行区域技术,其分割过程后续步骤的处理要根据前面步骤的结果进行判断而确定。 区域生长 区域生长的基本思想是将具有相似性质的像素集合起来构成区域。具体先对每个需要分割的区域找一个种子像素作为生长的起点,然后将种子像素周围邻域中与种子像素有相同或相似性质的像素(根据某种事先确定的生长或相似准则来判定)合并到种子像素所在的区域中。将这些新像素当作新的种子像素继续进行上面的过程,直到再没有满足条件的像素可被包括进来。这样一个区域就长成了。
区域生长需要选择一组能正确代表所需区域的种子像素,确定在生长过程中的相似性准则,制定让生长停止的条件或准则。相似性准则可以是灰度级、彩色、纹理、梯度等特性。选取的种子像素可以是单个像素,也可以是包含若干个像素的小区域。大部分区域生长准则使用图像的局部性质。生长准则可根据不同原则制定,而使用不同的生长准则会影响区域生长的过程。区域生长法的优点是计算简单,对于较均匀的连通目标有较好的分割效果。它的缺点是需要人为确定种子点,对噪声敏感,可能导致区域内有空洞。另外,它是一种串行算法,当目标较大时,分割速度较慢,因此在设计算法时,要尽量提高效率。
区域分裂合并
区域生长是从某个或者某些像素点出发,最后得到整个区域,进而实现目标提取。分裂合并差不多是区域生长的逆过程:从整个图像出发,不断分裂得到各个子区域,然后再把前景区域合并,实现目标提取。分裂合并的假设是对于一幅图像,前景区域由一些相互连通的像素组成的,因此,如果把一幅图像分裂到像素级,那么就可以判定该像素是否为前景像素。当所有像素点或者子区域完成判断以后,把前景区域或者像素合并就可得到前景目标。
在这类方法中,最常用的方法是四叉树分解法(如图3所示)。设R代表整个正方形图像区域,P代表逻辑谓词。基本分裂合并算法步骤如下:(1)对任一个区域,如果H(Ri)=FALSE就将其分裂成不重叠的四等份;
(2)对相邻的两个区域Ri和Rj,它们也可以大小不同(即不在同一层),如果条件H(Ri∪Rj)=TRUE满足,就将它们合并起来。
(3)如果进一步的分裂或合并都不可能,则结束。
分裂合并法的关键是分裂合并准则的设计。这种方法对复杂图像的分割效果较好,但算法较复杂,计算量大,分裂还可能破坏区域的边界。 图像分割的一种重要途径是通过边缘检测,即检测灰度级或者结构具有突变的地方,表明一个区域的终结,也是另一个区域开始的地方。这种不连续性称为边缘。不同的图像灰度不同,边界处一般有明显的边缘,利用此特征可以分割图像。
图像中边缘处像素的灰度值不连续,这种不连续性可通过求导数来检测到。对于阶跃状边缘,其位置对应一阶导数的极值点,对应二阶导数的过零点(零交叉点)。因此常用微分算子进行边缘检测。常用的一阶微分算子有Roberts算子、Prewitt算子和Sobel算子,二阶微分算子有Laplace算子和Kirsh算子等。在实际中各种微分算子常用小区域模板来表示,微分运算是利用模板和图像卷积来实现。这些算子对噪声敏感,只适合于噪声较小不太复杂的图像。
由于边缘和噪声都是灰度不连续点,在频域均为高频分量,直接采用微分运算难以克服噪声的影响。因此用微分算子检测边缘前要对图像进行平滑滤波。LoG算子和Canny算子是具有平滑功能的二阶和一阶微分算子,边缘检测效果较好,如图4所示。其中loG算子是采用Laplacian算子求高斯函数的二阶导数,Canny算子是高斯函数的一阶导数,它在噪声抑制和边缘检测之间取得了较好的平衡。关于微分算子的边缘检测的详细内容可参考文献 。 与其他图像分割方法相比,基于直方图的方法是非常有效的图像分割方法,因为他们通常只需要一个通过像素。在这种方法中,直方图是从图像中的像素的计算,并在直方图的波峰和波谷是用于定位图像中的簇。颜色和强度可以作为衡量。
这种技术的一种改进是递归应用直方图求法的集群中的形象以分成更小的簇。重复此操作,使用更小的簇直到没有更多的集群的形成。
基于直方图的方法也能很快适应于多个帧,同时保持他们的单通效率。直方图可以在多个帧被考虑的时候采取多种方式。同样的方法是采取一个框架可以应用到多个,和之后的结果合并,山峰和山谷在以前很难识别,但现在更容易区分。直方图也可以应用于每一个像素的基础上,将得到的信息被用来确定的像素点的位置最常见的颜色。这种方法部分基于主动对象和一个静态的环境,导致在不同类型的视频分割提供跟踪。
‘陆’ 图像分割技术论文
图像分割是图像处理与计算机视觉的基本问题之一,是图像处理图像分析的关键步骤。我整理了图像分割技术论文,欢迎阅读!
图像分割技术研究
摘要:图像分割是图像处理与计算机视觉的基本问题之一,是图像处理图像分析的关键步骤。本文介绍了基于阈值的分割方法和图像分割的图像分割性能的评价、应用现状;最后总结出图像分割的发展趋势。
关键词:图像分割、阈值、边缘检测、区域分割
中图分类号: TN957.52 文献标识码: A
1引言
随着图像分割技术研究的深入,其应用日趋广泛。凡属需要对图像目标进行提取、测量的工作都离不开图像分割。图像分割是图像处理、模式识别和人工智能等多个领域中一个十分重要且又十分困难的问题,是计算机视觉技术中首要的、重要的关键步骤。图像分割结果的好坏直接影响对计算机视觉中的图像理解。现有的方法多是为特定应用设计的,有很大的针对性和局限性,到目前为止还不存在一个通用的方法,也不存在一个判断分割是否成功的客观标准。因此,对图像分割的研究目前还缺乏一个统一的理论体系,使得图像分割的研究仍然是一个极富有挑战性的课题。
2图像分割方法
图像分割(Image Segmentation),简单地说就是将一幅数字图像分割成不同的区域,在同一区域内具有在一定的准则下可认为是相同的性质,如灰度、颜色、纹理等。而任何相邻区域之间其性质具有明显的区别。
2.1基于灰度特征的阈值分割方法
阈值分割技术是经典的、流行的图象分割方法之一,它是用一个或几个阈值将图像的灰度级分为几个部分,认为属于同一个部分的像素是同一个物体。
这类方法主要包括以下几种:
(1)单阈值法,用一个全局阈值区分背景和目标。当一幅图像的直方图具有明显的双峰时,选择两峰之间的谷底作为阈值。
(2)双阈值法,用两个阈值区分背景和目标。通过设置两个阈值,以防单阈值设置阈值过高或过低,把目标像素误归为背景像素,或把背景像素误归为目标像素。
(3)多阈值法,当存在照明不均,突发噪声等因素或背景灰度变化较大时,整幅图像不存在合适的单一阈值,单一阈值不能兼顾图像不同区域的具体情况,这时可将图像分块处理,对每一块设一个阈值。
2.2 边缘检测分割法
基于边缘检测技术可以按照处理的顺序分为并行边缘检测和串行边缘检测两大类。常见的边缘检测方法有:差分法、模板匹配法及统计方法等。由于边缘灰度变化规律一般体现为阶梯状或者脉冲状。边缘与差分值的关系可以归纳为两种情况,其一是边缘发生在差分最大值或者最小值处;其二是边缘发生在过零处。
2.3基于区域的分割方法
基于区域的分割方法利用的是图像的空间性质。该方法认为分割出来的某一区域具有相似的性质。常用的方法有区域生长法和区域分裂合并法。该类方法对含有复杂场景或自然景物等先验知识不足的图像进行分割,效果较好。
区域生长方法是把一幅图像分成许多小区域开始的,这些初始的小区域可能是小的邻域甚至是单个像素,在每个区域中,通过计算能反映一个物体内像素一致性的特征,作为区域合并的判断标准。区域合并的第一步是赋给每个区域一组参数,即特征。接下来对相邻区域的所有边界进行考查,如果给定边界两侧的特征值差异明显,那么这个边界很强,反之则弱。强边界允许继续存在,而弱边界被消除,相邻区域被合并。没有可以消除的弱边界时,区域合并过程结束,图像分割也就完成。
2.4结合特定工具的图像分割技术
20世纪80年代末以来,随着一些特殊理论的出现及其成熟,如数学形态学、分形理论、模糊数学、小波分析、模式识别、遗传算法等,大量学者致力于将新的概念、新的方法用于图像分割,有效地改善了分割效果。产生了不少新的分割算法。下面对这些算法做一些简单的概括。
2.4.1基于数学形态学的分割算法
分水岭算法是一种经典的借鉴了数学形态理论的分割方法。该方法中,将一幅图像比为一个具有不同高度值的地形,高灰度值处被认为是山脊,底灰度值处被认为是山谷,将一滴水从任一点流下,它会朝地势底的地方流动,最终聚于某一局部最底点,最后所有的水滴会分聚在不同的吸引盆地,由此,相应的图像就被分割成若干部分。分水岭算法具有运算简单、性能优良,能够较好提取运动对象轮廓、准确得到运动物体边缘的优点。但分割时需要梯度信息,对噪声较敏感。
2.4.2基于模糊数学的分割算法
目前,模糊技术在图像分割中应用的一个显着特点就是它能和现有的许多图像分割方法相结合,形成一系列的集成模糊分割技术,例如模糊聚类、模糊阈值、模糊边缘检测技术等。
这类方法主要有广义模糊算子与模糊阈值法两种分割算法。
(1)广义模糊算子在广义模糊集合的范围内对图像处理,使真正的边缘处于较低灰度级,但还有一些不是边缘的像素点的灰度也在较低灰度级中,虽然算法的计算简明,且边缘细腻,但得到的边缘图会出现断线问题。
(2)模糊阈值法引入灰度图像的模糊数学描述,通过计算图像的模糊熵来选取图像的分割阈值,后用阈值法处理图像得到边界。
2.4.3基于遗传算法的分割方法
此算法是受生物进化论思想提出的一种优化问题的解决方法,它使用参数编码集而不是参数本身,通过模拟进化,以适者生存的策略搜索函数的解空间,它是在点群中而不是在单点进行寻优。遗传算法在求解过程中使用随机转换规则而不是确定性规则来工作,它唯一需要的信息是适应值,通过对群体进行简单的复制、杂交、变异作用完成搜索过程。由于此法能进行能量函数全局最小优化搜索,且可以降低搜索空间维数,降低算法对模板初始位置的敏感,计算时间也大为减少。其缺点是容易收敛于局部最优。
2.4.4基于神经网络分割算法
人工神经网络具有自组织、自学习、自适应的性能和非常强的非线性映射能力,适合解决背景知识不清楚、推理规则不明确和比较复杂的分类问题,因而也适合解决比较复杂的图像分割问题。原则上讲,大部分分割方法都可用 ANN(attificial neural network)实现。ANN 用于分割的研究起步较晚,只有多层前馈NN,多层误差反传(BP)NN,自组织NN,Hopfield NN以及满足约束的NN(CSNN-Const raint Satisfaction Neurat Network)等得到了应用。使用一个多层前向神经网络用于图象分割,输入层神经元的数目取决于输入特征数,而输出层神经元的数目等同于分类的数目。
2.5图像分割中的其他方法
前面介绍了4大类图像分割较常用的方法,有关图像分割方法和文献很多,新方法不断产生,这些方法有的只对特定的情形有效,有的综合了几种方法,放在一起统称为第5类。
(1)标号法(labeling)是一种基于统计学的方法,这种方法将图像欲分割成的几个区域各以一个不同的标号来表示,用一定的方式对图像中的每一个像素赋以标号,标号相同的像素就合并成该标号所代表的区域。
(2)基于Snak模型的分割方法,基于Snake模型的分割是通过对能量函数的动态优化来逼近图像目标的真实轮廓的
(3)纹理分割,由于新的数学工具的引入,纹理分割技术取得了一些进展,张蓬等人将小波分析应用于纹理基元提取。
(4)基于知识的图像分割方法,直接建立在先验知识的基础上,使分割更符合实际图像的特点。该方法的难度在于知识的正确合理的表示与利用。
3图像分割性能的评价
图像分割评价主要有两个方面的内容:一是研究各分割算法在不同情况下的表现,掌握如何选择和控制其参数设置,以适应不同需要。二是分析多个分割算法在分割同一图像时的性能,比较优劣,以便在实际应用中选取合适的算法。分割评价方法分为分析法和实验法两大类。分析法是直接分析分割算法本身的原理及性能,而实验法是通过对测试图像的分割结果来评价算法的。两种方法各有优劣,由于缺乏可靠理论依据,并非所有分割算法都能够通过分析法分析其性能。每种评价方法都是出于某种考虑而提出来的,不同的评价方法只能反映分割算法性能的某一性能。另一方面,每一种分割算法的性能是由多种因素决定的,因此,有可能需要多种准则来综合评价。
4图像分割技术的发展趋势
随着神经网络、遗传算法、统计学理论、小波理论以及分形理论等在图像分割中的广泛应用,图像分割技术呈现出以下的发展趋势:(1)多种特征的融合。(2)多种分割方法的结合。(3)新理论与新方法。
参考文献
[1] [美]RC冈萨雷斯.数字图像处理(第二版)[M].阮秋琦,等译.北京:电子工业出版社,2003
[2] 章毓晋.图像分割[M].北京:科学出版社,2001.
[3] 李弼程,彭天强,彭波等.智能图像处理技术[M].北京:电子工业出版社,2004.
[4] 杨晖,曲秀杰.图像分割方法综述[J].电脑开发与应用。2005,18(3):21-23.
点击下页还有更多>>>图像分割技术论文
‘柒’ 区域生长的区域生长
它是一个迭代的过程,这里每个种子像素点都迭代生长,直到处理过每个像素,因此形成了不同的区域,这些区域它们的边界通过闭合的多边形定义。
在区域生长中的主要问题如下:
(1)表示区域的初始化种子的选择:在区域生长过程中,这些不同区域点合适属性的选择。
(2)基于图像具体属性的像素生长不一定是好的分割。在区域生长过程中,不应该使用连通性或邻接信息。
(3)相似性:相似性表示在灰度级中观察在两个空间邻接像素之间或像素集合的平均灰度级间的最小差分,它们将产生不同的区域。如果这个差分比相似度阈值小,则像素属于相同的区域。
(4)区域面积:最小面积阈值与像素中的最小区域大小有关。在分割的图像中,没有区域比这个阈值小,它由用户定义。
区域生长的后处理(region growing post-processing):由于非优化参数的设置,区域生长经常会导致欠生长或过生长。人们已经开发了各种各样的后处理。从区域生长和基于边缘的分割中,后处理能获得联合分割的信息。更加简单的后处理是根据一般启发法,并且根据最初应用的均匀性标准,减少分割图像中无法与任何邻接区域合并的最小区域的数量。
区域连接图
在场景中区域间的邻接关系可以由区域邻接图(region adjacency graph, RAG)表示。在场景中的区域由在RAG的节点集合表示 N = {N1, N2, ... , Nm},这里,节点Ni表示在场景中的区域Ri ,并且区域Ri的属性存储在节点的数据结构Ni中。在Ni和Nj之间的边缘Eij表示在区域Ri和Rj之间的连接。如果在区域Ri里存放一个像素与在区域Rj彼此相邻,那么两个区域Ri和Rj是相邻的。邻接可能是4连通或8连通的。邻接关系是自反(reflexive)和对称(symmetric)的,但不一定是可传递(transitive)的。下图显示具有6个截然不同区域的场景邻接图。
当它表示区域邻接图(RAG)是,二进制矩阵A成为邻接矩阵(adjacency matrix)。在RAG里,当节点Ni和Nj邻接,在A中,aij是1。因为邻接关系是自反的,矩阵的对角元素都是1。在上图的多区域场景邻接矩阵(关系)如下所示。
区域合并和分裂
由于在场景中分割单一大区域,分割算法可能产生许多个小区域。在这种情况下,较小的区域需要根据相似性合并,并且使较小的区域更紧密。简单的区域合并算法如下所述。
步骤1:使用阈值集合将图像分割为R1,R2,R,…,Rm。
步骤2:从图像的分割描述中生成区域邻接图(region adjacency graphics,RAG)。
步骤3:对于每个Rj,i = 1,2,…,m,从RAG中确定所有Rj,j≠i,如Ri和Rj邻接。
步骤4:对于所有i和j,计算在Ri和Rj之间合适的相似性度量Sij。
步骤5:如果Sij>T,那么合并Ri和Rj
步骤6:根据相似性标准,重复步骤3~步骤5,直到没有合并的区域为止。
合并的另一个策略是根据两个区域之间的边缘强度。在这个方法中,在邻接区域之间的合并是根据两个区域间沿标定边界长度的边缘强度。如果边缘强度小,即边缘点较弱(weak),如果合并没有大量改变平均像素强度值,那么可以合并两个区域。
还有这种情况:由于错误的预处理分割,产生了太小的区域。这归结于不同区域错误合并成一个区域。在这种情况下,在分割区域中灰度值的变化可能高于阈值(T),因此,需要将区域分裂成更小的区域,这样每个更小的区域都有均匀小方差。
分裂和合并可能结合在一起用于复杂场景的分割,基于规则可以指导分裂和合并运算的应用。
‘捌’ 区域生长的区域生长的优势和劣势
1. 区域生长通常能将具有相同特征的联通区域分割出来。
2. 区域生长能提供很好的边界信息和分割结果。
3. 区域生长的思想很简单,只需要若干种子点即可完成。
4. 在生长过程中的生长准则可以自由的指定。
5. 可以在同一时刻挑选多个准则。 1. 计算代价大。
2. 噪声和灰度不均一可能会导致空洞和过分割。
3. 对图像中的阴影效果往往不是很好。
对噪声问题,通常可以用一些平滑滤波器,或是diffusion滤波器做预处理来解决,所以通常噪声问题并不是很严重。所以实际上,区域生长的最严重的问题就是效率低下。
据实验,在2.4GHz的电脑上,一个512*512*343的数据,进行一次区域生长大约需要200s的时间
‘玖’ 图像分割
图像阈值化分割是一种传统的最常用的图像分割方法,因其实现简单、计算量小、性能较稳定而成为图像分割中最基本和应用最广泛的分割技术。它特别适用于目标和背景占据不同灰度级范围的图像。它不仅可以极大的压缩数据量,而且也大大简化了分析和处理步骤,因此在很多情况下,是进行图像分析、特征提取与模式识别之前的必要的图像预处理过程。
图像阈值化的目的是要按照灰度级,对像素集合进行一个划分,得到的每个子集形成一个与现实景物相对应的区域,各个区域内部具有一致的属性,而相邻区域不具有这种一致属性。这样的划分可以通过从灰度级出发选取一个或多个阈值来实现。
基本原理是:通过设定不同的特征阈值,把图像象素点分为若干类。
常用的特征包括:直接来自原始图像的灰度或彩色特征;由原始灰度或彩色值变换得到的特征。
设原始图像为f(x,y),按照一定的准则f(x,y)中找到特征值T,将图像分割为两个部分,分割后的图像为:
若取:b0=0(黑),b1=1(白),即为我们通常所说的图像二值化。
阈值分割方法实际上是输入图像f到输出图像g的如下变换:
其中,T为阈值,对于物体的图像元素g(i,j)=1,对于背景的图像元素g(i,j)=0。
由此可见,阈值分割算法的关键是确定阈值,如果能确定一个合适的阈值就可准确地将图像分割开来。阈值确定后,将阈值与像素点的灰度值逐个进行比较,而且像素分割可对各像素并行地进行,分割的结果直接给出图像区域。
阈值分割的优点是计算简单、运算效率较高、速度快。有着各种各样的阈值处理技术,包括全局阈值、自适应阈值、最佳阈值等等。
阈值处理技术参看:
区域分割是讲图像按照相似性准则分成不同的区域,主要包括区域增长,区域分裂合并和分水岭等几种类型。
区域生长是一种串行区域分割的图像分割方法。区域生长是指从某个像素出发,按照一定的准则,逐步加入邻近像素,当满足一定的条件时,区域生长终止。区域生长的好坏决定于1. 初始点(种子点)的选取。 2. 生长准则。 3. 终止条件 。区域生长是从某个或者某些像素点出发,最后得到整个区域,进而实现目标的提取。
区域生长的基本思想是将具有相似性质的像素集合起来构成区域。具体先对每个需要分割的区域找一个种子像素作为生长的起点,然后将种子像素周围邻域中与种子像素有相同或相似性质的像素(根据某种事先确定的生长或相似准则来判定)合并到种子像素所在的区域中。将这些新像素当作新的种子像素继续进行上面的过程,直到再没有满足条件的像素可被包括进来。这样一个区域就长成了。
区域生长需要选择一组能正确代表所需区域的种子像素,确定在生长过程中的相似性准则,制定让生长停止的条件或准则。相似性准则可以是灰度级、彩色、纹理、梯度等特性。选取的种子像素可以是单个像素,也可以是包含若干个像素的小区域。大部分区域生长准则使用图像的局部性质。生长准则可根据不同原则制定,而使用不同的生长准则会影响区域生长的过程。
图1是区域增长的示例。
区域生长是一种古老的图像分割方法,最早的区域生长图像分割方法是由Levine等人提出的。该方法一般有两种方式,一种是先给定图像中要分割的目标物体内的一个小块或者说种子区域(seed point),再在种子区域基础上不断将其周围的像素点以一定的规则加入其中,达到最终将代表该物体的所有像素点结合成一个区域的目的;另一种是先将图像分割成很多的一致性较强,如区域内像素灰度值相同的小区域,再按一定的规则将小区域融合成大区域,达到分割图像的目的,典型的区域生长法如T. C. Pong等人提出的基于小面(facet)模型的区域生长法,区域生长法固有的缺点是往往会造成过度分割,即将图像分割成过多的区域
区域生长实现的步骤如下:
区域分裂合并算法的基本思想是先确定一个分裂合并的准则,即区域特征一致性的测度,当图像中某个区域的特征不一致时就将该区域分裂成4个相等的子区域,当相邻的子区域满足一致性特征时则将它们合成一个大区域,直至所有区域不再满足分裂合并的条件为止。当分裂到不能再分的情况时,分裂结束,然后它将查找相邻区域有没有相似的特征,如果有就将相似区域进行合并,最后达到分割的作用。在一定程度上区域生长和区域分裂合并算法有异曲同工之妙,互相促进相辅相成的,区域分裂到极致就是分割成单一像素点,然后按照一定的测量准则进行合并,在一定程度上可以认为是单一像素点的区域生长方法。区域生长比区域分裂合并的方法节省了分裂的过程,而区域分裂合并的方法可以在较大的一个相似区域基础上再进行相似合并,而区域生长只能从单一像素点出发进行生长(合并)。
反复进行拆分和聚合以满足限制条件的算法。
令R表示整幅图像区域并选择一个谓词P。对R进行分割的一种方法是反复将分割得到的结果图像再次分为四个区域,直到对任何区域Ri,有P(Ri)=TRUE。这里是从整幅图像开始。如果P(R)=FALSE,就将图像分割为4个区域。对任何区域如果P的值是FALSE.就将这4个区域的每个区域再次分别分为4个区域,如此不断继续下去。这种特殊的分割技术用所谓的四叉树形式表示最为方便(就是说,每个非叶子节点正好有4个子树),这正如图10.42中说明的树那样。注意,树的根对应于整幅图像,每个节点对应于划分的子部分。此时,只有R4进行了进一步的再细分。
如果只使用拆分,最后的分区可能会包含具有相同性质的相邻区域。这种缺陷可以通过进行拆分的同时也允许进行区域聚合来得到矫正。就是说,只有在P(Rj∪Rk)=TRUE时,两个相邻的区域Rj和Rk才能聚合。
前面的讨论可以总结为如下过程。在反复操作的每一步,我们需要做:
可以对前面讲述的基本思想进行几种变化。例如,一种可能的变化是开始时将图像拆分为一组图象块。然后对每个块进一步进行上述拆分,但聚合操作开始时受只能将4个块并为一组的限制。这4个块是四叉树表示法中节点的后代且都满足谓词P。当不能再进行此类聚合时,这个过程终止于满足步骤2的最后的区域聚合。在这种情况下,聚合的区域可能会大小不同。这种方法的主要优点是对于拆分和聚合都使用同样的四叉树,直到聚合的最后一步。
分水岭分割方法,是一种基于拓扑理论的数学形态学的分割方法,其基本思想是把图像看作是测地学上的拓扑地貌,图像中每一点像素的灰度值表示该点的海拔高度,每一个局部极小值及其影响区域称为集水盆,而集水盆的边界则形成分水岭。分水岭的概念和形成可以通过模拟浸入过程来说明。在每一个局部极小值表面,刺穿一个小孔,然后把整个模型慢慢浸入水中,随着浸入的加深,每一个局部极小值的影响域慢慢向外扩展,在两个集水盆汇合处构筑大坝,即形成分水岭。
分水岭的计算过程是一个迭代标注过程。分水岭比较经典的计算方法是L. Vincent提出的。在该算法中,分水岭计算分两个步骤,一个是排序过程,一个是淹没过程。首先对每个像素的灰度级进行从低到高排序,然后在从低到高实现淹没过程中,对每一个局部极小值在h阶高度的影响域采用先进先出(FIFO)结构进行判断及标注。
分水岭变换得到的是输入图像的集水盆图像,集水盆之间的边界点,即为分水岭。显然,分水岭表示的是输入图像极大值点。因此,为得到图像的边缘信息,通常把梯度图像作为输入图像,即
分水岭算法对微弱边缘具有良好的响应,图像中的噪声、物体表面细微的灰度变化,都会产生过度分割的现象。但同时应当看出,分水岭算法对微弱边缘具有良好的响应,是得到封闭连续边缘的保证的。另外,分水岭算法所得到的封闭的集水盆,为分析图像的区域特征提供了可能。
为消除分水岭算法产生的过度分割,通常可以采用两种处理方法,一是利用先验知识去除无关边缘信息。二是修改梯度函数使得集水盆只响应想要探测的目标。
为降低分水岭算法产生的过度分割,通常要对梯度函数进行修改,一个简单的方法是对梯度图像进行阈值处理,以消除灰度的微小变化产生的过度分割。即
程序可采用方法:用阈值限制梯度图像以达到消除灰度值的微小变化产生的过度分割,获得适量的区域,再对这些区域的边缘点的灰度级进行从低到高排序,然后在从低到高实现淹没的过程,梯度图像用Sobel算子计算获得。对梯度图像进行阈值处理时,选取合适的阈值对最终分割的图像有很大影响,因此阈值的选取是图像分割效果好坏的一个关键。缺点:实际图像中可能含有微弱的边缘,灰度变化的数值差别不是特别明显,选取阈值过大可能会消去这些微弱边缘。
参考文章:
图像分割的一种重要途径是通过边缘检测,即检测灰度级或者结构具有突变的地方,表明一个区域的终结,也是另一个区域开始的地方。这种不连续性称为边缘。不同的图像灰度不同,边界处一般有明显的边缘,利用此特征可以分割图像。
图像中边缘处像素的灰度值不连续,这种不连续性可通过求导数来检测到。对于阶跃状边缘,其位置对应一阶导数的极值点,对应二阶导数的过零点(零交叉点)。因此常用微分算子进行边缘检测。常用的一阶微分算子有Roberts算子、Prewitt算子和Sobel算子,二阶微分算子有Laplace算子和Kirsh算子等。在实际中各种微分算子常用小区域模板来表示,微分运算是利用模板和图像卷积来实现。这些算子对噪声敏感,只适合于噪声较小不太复杂的图像。
由于边缘和噪声都是灰度不连续点,在频域均为高频分量,直接采用微分运算难以克服噪声的影响。因此用微分算子检测边缘前要对图像进行平滑滤波。LoG算子和Canny算子是具有平滑功能的二阶和一阶微分算子,边缘检测效果较好,
在边缘检测算法中,前三个步骤用得十分普遍。这是因为大多数场合下,仅仅需要边缘检测器指出边缘出现在图像某一像素点的附近,而没有必要指出边缘的精确位置或方向.边缘检测误差通常是指边缘误分类误差,即把假边缘判别成边缘而保留,而把真边缘判别成假边缘而去掉.边缘估计误差是用概率统计模型来描述边缘的位置和方向误差的.我们将边缘检测误差和边缘估计误差区分开,是因为它们的计算方法完全不同,其误差模型也完全不同.
Roberts算子 :边缘定位准,但是对噪声敏感。适用于边缘明显且噪声较少的图像分割。Roberts边缘检测算子是一种利用局部差分算子寻找边缘的算子,Robert算子图像处理后结果边缘不是很平滑。经分析,由于Robert算子通常会在图像边缘附近的区域内产生较宽的响应,故采用上述算子检测的边缘图像常需做细化处理,边缘定位的精度不是很高。
Prewitt算子 :对噪声有抑制作用,抑制噪声的原理是通过像素平均,但是像素平均相当于对图像的低通滤波,所以Prewitt算子对边缘的定位不如Roberts算子。
Sobel算子 :Sobel算子和Prewitt算子都是加权平均,但是Sobel算子认为,邻域的像素对当前像素产生的影响不是等价的,所以距离不同的像素具有不同的权值,对算子结果产生的影响也不同。一般来说,距离越远,产生的影响越小。
Isotropic Sobel算子 :加权平均算子,权值反比于邻点与中心点的距离,当沿不同方向检测边缘时梯度幅度一致,就是通常所说的各向同性。
在边沿检测中,常用的一种模板是Sobel 算子。Sobel 算子有两个,一个是检测水平边沿的;另一个是检测垂直平边沿的 。Sobel算子另一种形式是各向同性Sobel(Isotropic Sobel)算子,也有两个,一个是检测水平边沿的,另一个是检测垂直平边沿的 。各向同性Sobel算子和普通Sobel算子相比,它的位置加权系数更为准确,在检测不同方向的边沿时梯度的幅度一致。由于建筑物图像的特殊性,我们可以发现,处理该类型图像轮廓时,并不需要对梯度方向进行运算,所以程序并没有给出各向同性Sobel算子的处理方法。
1971年,R.Kirsch[34]提出了一种能检测边缘方向的Kirsch算子新方法:它使用了8个模板来确定梯度幅度值和梯度的方向。
图像中的每个点都用8个掩模进行卷积,每个掩模对某个特定边缘方向作出最大响应。所有8个方向中的最大值作为边缘幅度图像的输出。最大响应掩模的序号构成了对边缘方向的编码。
Kirsch算子的梯度幅度值用如下公式:
不同检测算子的对比:
参考文章:
文章引用于 木夜溯
编辑 Lornatang
校准 Lornatang
‘拾’ 图像分割与边缘处理有什么区别请大侠回答,谢谢了。
这个不太熟悉,下面是转载,希望能帮到你:
图像分割有那些方法 区别如何
图像分割有那些方法 区别如何?
yhl41001 发表于 2009-4-14 15:20
图像分割是图像处理领域中的一个基本问题。从大的方面来说,图像分割方法可大致分为基于区域的方法、基于边缘的方法、区域与边缘相结合的方法,以及在此基础上的、采用多分辨率图像处理理论的多尺度分割方法 。基于区域的方法采用某种准则,直接将图像划分为多个区域,基于边缘的方法则通过检测包含不同区域的边缘,获得关于各区域的边界轮廓描述,达到图像分割的目的,而区域与边缘相结合的方法通过区域分割与边缘检测的相互作用,得到分割结果。
·1 基于区域的图像分割
图像分割中常用的直方图门限法、区域生长法、基于图像的随机场模型法、松弛标记区域分割法等均属于基于区域的方法。
(1)直方图门限分割就是在一定的准则下,用一个或几个门限值将图像的灰度直方图(一维的或多维的)分成几个类,认为图像中灰度值在同一个灰度类内的象素属于同一个物体,可以采用的准则包括直方图的谷底 、最小类内方差(或最大类间方差) 、最大熵 (可使用各种形式的熵)、最小错误率 、矩不变 、最大繁忙度 (由共生矩阵定义)等。门限法的缺陷在于它仅仅考虑了图像的灰度信息,而忽略了图像中的空间信息,对于图像中不存在明显的灰度差异或各物体的灰度值范围有较大重叠的图像分割问题难以得到准确的结果。
(2)区域生长是一种古老的图像分割方法,最早的区域生长图像分割方法是由Levine等人提出的。该方法一般有两种方式,一种是先给定图像中要分割的目标物体内的一个小块或者说种子区域,再在种子区域基础上不断将其周围的像素点以一定的规则加入其中,达到最终将代表该物体的所有像素点结合成一个区域的目的;另一种是先将图像分割成很多的一致性较强,如区域内像素灰度值相同的小区域,再按一定的规则将小区域融合成大区域,达到分割图像的目的,典型的区域生长法如T. C. Pong等人提出的基于小面(facet)模型的区域生长法,区域生长法固有的缺点是往往会造成过度分割,即将图像分割成过多的区域。
(3)基于图像的随机场模型法主要以Markov随机场作为图像模型,并假定该随机场符合Gibbs分布。使用MRF模型进行图像分割的问题包括:邻域系统的定义;能量函数的选择及其参数的估计;极小化能量函数从而获得最大后验概率的策略。邻域系统一般是事先定义的,因而主要是后面两个问题。S. Geman,首次将基于Gibbs分布的Markov随机场模型用于图像处理,详细讨论了MRF模型的邻域系统,能量函数,Gibbs采样方法等各种问题,提出用模拟退火算法来极小化能量函数的方法,并给出了模拟退火算法收敛性的证明,同时给出了MRF模型在图像恢复中的应用实例。在此基础上,人们提出了大量的基于MRF模型的图像分割算法 。
(4)标记法(labeling)就是将图像欲分割成的几个区域各以一个不同的标号来表示,对图像中的每一个象素,用一定的方式赋之以这些标记中的某一个,标记相同的连通象素就组成该标记所代表的区域。标记法常采用松弛技术来给图像中的各个象素赋予标记,一般可分为离散松弛、概率松弛、模糊松弛等三种 。Smith等人最先采用松弛标记技术进行图像分割 ,以后人们又提出了大量的图像松弛分割算法 。另外,松弛标记不仅可用于图像分割,还可用于边缘检测、目标识别等。
·2 基于边缘的图像分割
基于边缘的分割方法则与边缘检测理论紧密相关,此类方法大多是基于局部信息的,一般利用图像—阶导数的极大值或二阶导数的过零点信息来提供判断边缘点的基本依据,进一步还可以采用各种曲线拟合技术获得划分不同区域边界的连续曲线。根据检测边缘所采用的方式的不同,边缘检测方法可大致分为以下几类:基于局部图像函数的方法、图像滤波法、基于反应—扩散方程的方法、基于边界曲线拟合的方法及活动轮廊(active contour)法等。
(1) 基于局部图像函数法的基本思想是将灰度看成高度,用一个曲面来拟合一个小窗口内的数据,然后根据该曲面来决定边缘点.
(2) 图像滤波法是基于如下理论的:即对滤波算子与图像的卷积结果求导,相当于用算子的同阶导数与图像做卷积。于是,只要事先给出算子的一阶或二阶导数,就可以将图像平滑滤波与对平滑后的图像求一阶或二阶导数在一步完成。因而,这种方法的核心问题是滤波器的设计问题。
常用的滤波器主要是高斯(Gaussian)函数的一阶和二阶层数,Canny认为高斯函数的一阶导数是他求得的最优滤波器的较好似近,一般采用Laplacian算子求高斯函数的二阶导数得到LOG(Laplacian of Gaussian) 滤波算子,该算子由计算机视觉的创始人Marr首先提出.近年来研究的滤波器还有可控滤波器(steerable),B-样条滤波器等。
问题提出:图像滤波的方法是基于对平滑滤波后的图像求其一阶导数的极大值或二阶导数的过零点来决定边缘的,必然遇到的问题是,一阶的极大值或二阶导数的过零点对应的像素点是否真的就是边缘点?
(3) 基于反应—扩散方程的方法是从传统意义上的Gaussian核函数多尺度滤波来的。由于本人阅读文献有限,这里不多做介绍了。
(4) 基于边界曲线拟合的方法用平面曲线来表示不同区域之间的图像边界线,试图根据图像梯度等信息找出能正确表示边界的曲线从而得到图像分割的目的,而且由于它直接给出的是边界曲线而不象一般的方法找出的是离散的、不相关的边缘点,因而对图像分割的后继处理如物体识别等高层处理有很大帮助。即使是用一般的方法找出的边缘点,用曲线来描述它们以便于高层处理也是经常被采用的一种有效的方式。L. H. Staib等人在文献中给出了一种用Fourier参数模型来描述曲线的方法,并根据Bayes定理,按极大后验概率的原则给出了一个目标函数,通过极大化该目标函数来决定Fourier系数。实际应用中,先根据对同类图像的分割经验,给出一条初始曲线,再在具体分割例子中根据像数据优化目标函数来改变初始曲线的参数,拟合图像数据,得到由图像数据决定的具体曲线。这种方法比较适合于医学图像的分割。除了用Fourier模型来描述曲线外,近年来还研究了一些其它的曲线描述方法,如A. Goshtasby详细介绍了用有理Gaussian曲线和曲面来设计和拟合二维及三维形状的方法。R. Legault等人给出了一种曲线平滑的方法。M. F. Wu等人给出了一种双变量三维Fourier描述子来描述三维曲面。
(5) 活动轮廓(又称Snake模型)是一种可变形模型(或称弹性模型),最初由Kass等人提出 。活动轮廓法边缘检测认为图像中各区域的轮廓线应为平滑曲线,各轮廓线的能量由内部能量及外部能量(包括图像能量及控制能量)两部分组成,其中内部能量表征了轮廓线的光滑约束,图像能量由轮廓线上对应点的灰度、梯度和角点曲率半径(若该点为角点)等决定,而控制能量则代表了图像平面上固定点对轮廓线的吸引或排斥作用。采用变分法求解该能量函数的极小值就可得到与区域边界相对应的轮廓线。