文档视界 最新最全的文档下载
当前位置:文档视界 › 基于MATLAB的图像分割算法研究毕业设计

基于MATLAB的图像分割算法研究毕业设计

基于MATLAB的图像分割算法研究毕业设计
基于MATLAB的图像分割算法研究毕业设计

基于MA TLAB的图像分割算法研究

基于MATLAB的图像分割算法研究

摘要

本文从原理和应用效果上对经典的图像分割方法如边缘检测、阈值分割技术和区域增长等进行了分析。对梯度算法中的Roberts算子、Sobel算子、Prewitt算子、拉普拉斯(Laplacian)算子、LoG(Laplacian-Gauss)算子、坎尼(Canny)算子的分割步骤、分割方式、分割准则相互比较可以看出根据坎尼(Canny)边缘算子的3个准则得出的边缘检测结果最满意。而阈值分割技术的关键在于阈值的确定,只有阈值确定好了才能有效的划分物体与背景,但这种方法只对于那些灰度分布明显,背景与物体差别大的图像的分割效果才明显。区域增长的基本思想是将具有相似性质的像素集合起来构成新区域。与此同时本文还分析了图像分割技术研究的方向。

关键词:图像处理图像分割

Abstract

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, Sobel operator, Prewitt operator, the operator of Laplacian and the operator of LoG(Laplacian-Gauss),Canny operator in gradient algorithm,the step, 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 obiect. 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: image processing image segmentation operator

基于MATLAB的图像分割算法研究

目录(一般目录要求最多是三级目录,不要出现四级目录)

第一章绪论 (1)

1.1数字图像处理的基本特点 (1)

1.1.1数字图像处理的信息大多是二维信息,处理信息量很大(三级标题有问题)1 1.1.2数字图像处理占用的频带较宽 (2)

1.1.3数字图像中各个像素是不独立的,其相关性大 (2)

1.1.4作合适的假定或附加新的测量 (2)

1.1.5数字图像处理后的图像受人的因素影响较大 (2)

1.2数字图像处理的优点 (2)

1.2.1再现性好 (2)

1.2.2处理精度高 (3)

1.2.3适用面宽 (3)

1.2.4灵活性高 (3)

1.3数字图像处理的应用 (4)

1.3.1航天和航空技术方面的应用 (4)

1.3.2生物医学工程方面的应用 (5)

1.3.3通信工程方面的应用 (5)

1.3.4工业和工程方面的应用 (5)

1.3.5军事公安方面的应用 (5)

1.3.6文化艺术方面的应用 (6)

1.4数字图像分割技术的发展概况 (6)

1.4.1 基于分形的图像分割技术 (6)

1.4.2 基于神经网络的图像分割技术 (7)

1.5本文的主要流程图 (8)

第二章数字图像处理的处理方式 (9)

2.1图像变换 (9)

2.2图像编码压缩 (9)

2.3图像增强和复原 (9)

2.4图像分割 (9)

2.5图像描述 (10)

2.6图像分类(识别) (10)

第三章 MATLAB平台及其开发环境 (11)

3.1.MATLAB的组成 (11)

3.1.1MATLAB主要有以下几个部分 (11)

a.数值计算功能 (12)

b.符号计算功能 (12)

c.数据分析功能 (12)

d.动态仿真功能 (12)

e.程序借口功能 (13)

基于MA TLAB的图像分割算法研究

3.2MATLAB的特点 (13)

3.2.1功能强大,可扩展性强 (13)

3.2.2界面友好,编程效率高 (14)

3.2.3图像功能,灵活且方便 (14)

3.3MATLAB在图像处理中的应用 (14)

第四章图像分割概念及算法研究 (16)

4.1图像分割的基本概念 (16)

4.1.1图像分割定义 (16)

4.2边缘检测方法(4.1和4.2之间不是并行关系) (17)

4.2.1边缘检测概述 (17)

4.2.2边缘检测梯度算法 (19)

a.梯度边缘检测算法基本步骤及流程图 (19)

b.Robert算子 (20)

c.Sobel算子 (21)

d.Prewitt算子 (21)

4.2.3拉普拉斯(Laplacian)算子 (22)

4.2.4LoG(Laplacian-Gauss)算子 (24)

4.2.5坎尼(Canny)算子 (25)

4.3灰度阈值分割 (27)

4.3.1阈值分割介绍 (28)

a.阈值化分割原则 (28)

b.阈值分割算法分类 (29)

4.3.2全局阈值 (30)

a.极小值点阈值 (31)

b.最优阈值 (31)

c.迭代阈值分割 (33)

4.3.3动态阈值 (34)

a.阈值插值 (35)

b.水线阈值算法 (35)

4.4区域分割 (37)

4.4.1区域生长的基本原理、步骤及流程图 (37)

4.4.2生长准则和过程 (40)

a.灰度差准则 (40)

b.灰度分布统计准则 (41)

c.区域形状准则 (42)

4.4.3分裂合并 (43)

第五章总结 (45)

5.1对于图像边缘检测的分析 (45)

5.2对于图像阈值分割的分析 (45)

5.3对于图像区域分割的分析 (46)

5.4改进意见(改进可另外做为一章比如说某某算法等的若干改进等,不要放入总结一章中)(总结是对整篇文章的一个概述,应该是写比如得出些什么结论,一些算法间比较等相关问题。) (46)

参考文献 (48)

基于MATLAB的图像分割算法研究

附录 (50)

第一章绪论

1.1数字图像处理的基本特点

1.1.1数字图像处理的信息大多是二维信息,处理信息量很大

如一幅256×256低分辨率黑白图像,要求约64kbit的数据量;对高分辨率彩色512×512图像,则要求768kbit数据量;如果要处理30帧/秒的电视图像序列,则每秒要求500kbit~22.5Mbit数据量。因此对计算机的计算速度、存储容量等要求较高。

1.1.2数字图像处理占用的频带较宽

与语言信息相比,占用的频带要大几个数量级。如电视图像的带宽约5.6MHz,而语音带宽仅为4kHz左右。所以在成像、传输、存储、处理、显示等各个环节的实现上,技术难度较大,成本亦高,这就对频带压缩技术提出了更高的要求。

1.1.3数字图像中各个像素是不独立的,其相关性大

在图像画面上,经常有很多像素有相同或接近的灰度。就电视画面而言,同一行中相邻两个像素或相邻两行间的像素,其相关系数可达0.9以上,而相邻两帧之间的相关性比帧内相关性一般说还要大些。因此,图像处理中信息压缩的潜力很大。

1.1.4作合适的假定或附加新的测量

由于图像是三维景物的二维投影,一幅图像本身不具备复现三维景物的全部几何信息的能力,很显然三维景物背后部分信息在二维图像画面上是反映不出来的。因此,要分析和理解三维景物必须作合适的假定或附加新的测量,例如双目图像或多视点图像。在理解三维景物时需要知识导引,这也是人工智能中正在致力解决的知识工程问题。

基于MA TLAB的图像分割算法研究

由于人的视觉系统很复杂,受环境条件、视觉性能、人的情绪爱好以及知识状况影响很大,作为图像质量的评价还有待进一步深入的研究。另一方面,计算机视觉是模仿人的视觉,人的感知机理必然影响着计算机视觉的研究。例如,什么是感知的初始基元,基元是如何组成的,局部与全局感知的关系,优先敏感的结构、属性和时间特征等,这些都是心理学和神经心理学正在着力研究的课题。

1.2数字图像处理的优点

1.2.1再现性好

数字图像处理与模拟图像处理的根本不同在于,它不会因图像的存储、传输或复制等一系列变换操作而导致图像质量的退化。只要图像在数字化时准确地表现了原稿,则数字图像处理过程始终能保持图像的再现。

1.2.2处理精度高

按目前的技术,几乎可将一幅模拟图像数字化为任意大小的二维数组,这主要取决于图像数字化设备的能力。现代扫描仪可以把每个像素的灰度等级量化为16位甚至更高,这意味着图像的数字化精度可以达到满足任一应用需求。对计算机而言,不论数组大小,也不论每个像素的位数多少,其处理程序几乎是一样的。换言之,从原理上讲不论图像的精度有多高,处理总是能实现的,只要在处理时改变程序中的数组参数就可以了。回想一下图像的模拟处理,为了要把处理精度提高一个数量级,就要大幅度地改进处理装置,这在经济上是极不合算的。

1.2.3适用面宽

图像可以来自多种信息源,它们可以是可见光图像,也可以是不可见的波谱图像(例如X射线图像、射线图像、超声波图像或红外图像等)。从图像反映的客观实体尺度看,可以小到电子显微镜图像,大到航空照片、遥感图像甚至天文望远镜图像。这些来自不同信息源的图像只要被变换为数字编码形式后,均是用二维数组表示的灰度图像(彩色图像也是由灰度图像组合成的,例如RGB图像由红、绿、蓝三个灰度图

基于MATLAB的图像分割算法研究

像组合而成)组合而成,因而均可用计算机来处理。即只要针对不同的图像信息源,采取相应的图像信息采集措施,图像的数字处理方法适用于任何一种图像。

1.2.4灵活性高

图像处理大体上可分为图像的像质改善、图像分析和图像重建三大部分,每一部分均包含丰富的内容。由于图像的光学处理从原理上讲只能进行线性运算,这极大地限制了光学图像处理能实现的目标。而数字图像处理不仅能完成线性运算,而且能实现非线性处理,即凡是可以用数学公式或逻辑关系来表达的一切运算均可用数字图像处理实现。

1.3数字图像处理的应用

图像是人类获取和交换信息的主要来源,因此,图像处理的应用领域必然涉及到人类生活和工作的方方面面。随着人类活动范围的不断扩大,图像处理的应用领域也将随之不断扩大。

1.3.1航天和航空技术方面的应用

数字图像处理技术在航天和航空技术方面的应用,除了上面介绍的JPL对月球、火星照片的处理之外,另一方面的应用是在飞机遥感和卫星遥感技术中。许多国家每天派出很多侦察飞机对地球上有兴趣的地区进行大量的空中摄影。对由此得来的照片进行处理分析,以前需要雇用几千人,而现在改用配备有高级计算机的图像处理系统来判读分析,既节省人力,又加快了速度,还可以从照片中提取人工所不能发现的大量有用情报。从60年代末以来,美国及一些国际组织发射了资源遥感卫星(如LANDSAT 系列)和天空实验室(如SKYLAB),由于成像条件受飞行器位置、姿态、环境条件等影响,图像质量总不是很高。因此,以如此昂贵的代价进行简单直观的判读来获取图像是不合算的,而必须采用数字图像处理技术。如LANDSAT系列陆地卫星,采用多波段扫描器(MSS),在900km高空对地球每一个地区以18天为一周期进行扫描成像,其图像分辨率大致相当于地面上十几米或100米左右(如1983年发射的LANDSAT-4,分辨率为30m)。这些图像在空中先处理(数字化,编码)成数字信号存入磁带中,在

基于MA TLAB的图像分割算法研究

卫星经过地面站上空时,再高速传送下来,然后由处理中心分析判读。这些图像无论是在成像、存储、传输过程中,还是在判读分析中,都必须采用很多数字图像处理方法。现在世界各国都在利用陆地卫星所获取的图像进行资源调查(如森林调查、海洋泥沙和渔业调查、水资源调查等),灾害检测(如病虫害检测、水火检测、环境污染检测等),资源勘察(如石油勘查、矿产量探测、大型工程地理位置勘探分析等),农业规划(如土壤营养、水分和农作物生长、产量的估算等),城市规划(如地质结构、水源及环境分析等)。我国也陆续开展了以上诸方面的一些实际应用,并获得了良好的效果。在气象预报和对太空其它星球研究方面,数字图像处理技术也发挥了相当大的作用。

1.3.2生物医学工程方面的应用

数字图像处理在生物医学工程方面的应用十分广泛,而且很有成效。除了上面介绍的CT技术之外,还有一类是对医用显微图像的处理分析,如红细胞、白细胞分类,染色体分析,癌细胞识别等。此外,在X光肺部图像增析、超声波图像处理、心电图分析、立体定向放射治疗等医学诊断方面都广泛地应用图像处理技术。

1.3.3通信工程方面的应用

当前通信的主要发展方向是声音、文字、图像和数据结合的多媒体通信。具体地讲是将电话、电视和计算机以三网合一的方式在数字通信网上传输。其中以图像通信最为复杂和困难,因图像的数据量十分巨大,如传送彩色电视信号的速率达100Mbit/s 以上。要将这样高速率的数据实时传送出去,必须采用编码技术来压缩信息的比特量。在一定意义上讲,编码压缩是这些技术成败的关键。除了已应用较广泛的熵编码、DPCM 编码、变换编码外,目前国内外正在大力开发研究新的编码方法,如分行编码、自适应网络编码、小波变换图像压缩编码等。

1.3.4工业和工程方面的应用

在工业和工程领域中图像处理技术有着广泛的应用,如自动装配线中检测零件的质量、并对零件进行分类,印刷电路板疵病检查,弹性力学照片的应力分析,流体力

基于MATLAB的图像分割算法研究

学图片的阻力和升力分析,邮政信件的自动分拣,在一些有毒、放射性环境内识别工件及物体的形状和排列状态,先进的设计和制造技术中采用工业视觉等等。其中值得一提的是研制具备视觉、听觉和触觉功能的智能机器人,将会给工农业生产带来新的激励,目前已在工业生产中的喷漆、焊接、装配中得到有效的利用。

1.3.5军事公安方面的应用

在军事方面图像处理和识别主要用于导弹的精确末制导,各种侦察照片的判读,具有图像传输、存储和显示的军事自动化指挥系统,飞机、坦克和军舰模拟训练系统等;公安业务图片的判读分析,指纹识别,人脸鉴别,不完整图片的复原,以及交通监控、事故分析等。目前已投入运行的高速公路不停车自动收费系统中的车辆和车牌的自动识别都是图像处理技术成功应用的例子。

1.3.6文化艺术方面的应用

目前这类应用有电视画面的数字编辑,动画的制作,电子图像游戏,纺织工艺品设计,服装设计与制作,发型设计,文物资料照片的复制和修复,运动员动作分析和评分等等,现在已逐渐形成一门新的艺术——计算机美术。

利用计算机进行图像处理有两个目的:一是产生适合人观察和识别的图像,二是希望能由计算机自动识别和理解图像。无论为了哪种目的,图像处理中关键的一步就是对包含有大量各式各样景物信息的图像进行分割。分割的最终结果是图像被分解成一些具有某种特征的最小成分,称为图像的基元。相对于整幅图像来说,这种图像基元更容易被快速处理。图像特征是指图像中可用作标志的属性,它可以氛围图像的统计特性和图像的视觉特征两类。图像的统计特性是指一些人为定义的特征,通过变换才能得到,如图像的直方图、矩、频谱等;图像的视觉特征是指人的视觉可直接感受到的自然特征,如区域的亮度、纹理或轮廓等。利用这两类特征把图像分解成一系列有意义的目标或区域的过程称为图像的分割。

1.4数字图像分割技术的发展概况

基于MA TLAB的图像分割算法研究

基于特征的图像分割方法包括两个重要的部分:特征抽取与模式聚类。特征提取是图像分割最重要的问题之一,能否抽取出有效的特征值对分割结果有很大的影响,如果没有好的特征值,分类方法再好也无法获得理想的结果。

特征抽取大致可以分为三类,即基于特征、基于模型以及基于结构。基于特征的方法就是寻找具有相同特性的区域或区域边界,基于模型的方法就是假设一个基本的随机过程并用过程参数作为特征。由于模型参数也可用作纹理特征,基于模型的方法可看成是基于特征方法的一个子集。结构特征基于假设图像中有可检测的基本结构元素并按一定的规则排列。

基于模型的方法最典型的模型主要有两种:分形几何模型与随机模型。分形函数近年来受到越来越多的重视。分形是B.B.Mandelbrot在总结了自然界中的非规整几何图形后,于1975年第一次提出了分形的概念。Mandelbrot给分形的定义为:设的豪斯道夫维数是D,如果这个维数恒大于集合A的拓扑维数D

,则称集合A是分形集,简称

t

分形。上述定义没有其他任何条件要求。1986年,Mandelbrot又给出了分形的第二个定义:组成部分与整体以某种相似的形叫做分形。这个定义突出了相似性的作用,反映了自然界中很广泛一类物体的基本属性;局部与局部,局部与整体在形态、功能、信息、时间与空间等方面具有统计意义上的相似性。简单地说分形就是一个维数大于拓扑维数的集合。分形维数的一大特点是尺度变换不变性。分形几何学已经广泛应用于图像压缩和图像编码,并且取得了较好的效果。同时也有一些研究者将分形特征用于自然纹理图像和自然景物的分割与识别中。分形维数特征对图像尺度变换不敏感,与人对物体表面粗糙度的判断有很大的相关性,由于许多自然纹理都具有线形对数功率谱,而分形维数就对应于这种线形对数功率谱斜率的估计值,因而用分形维数描述自然纹理有一定的合理性。

1.4.2 基于神经网络的图像分割技术

使用神经网络模型可以实现图像分割算法。Blanz and Gish使用一个多层前向神经网络用于图像分割,输入层神经元的数目取决于输入特征数,而输出层神经元的数目等同于分类的数目。由于BP网络能完成n维空间(输入节点数为n)到m维空间(输出节点数m)的复杂非线形映射,因此它具有Laplacian算子的能力,用神经网络可以获得良好的结果,而且用神经网络处理,一旦训练完毕,各节点间的互联权就完全确

基于MATLAB的图像分割算法研究

定,在识别时具有很快的速度。Babaguchi等使用多层BP神经网络,用于阈值分割图像,输入是统计直方图,输出是想要的阈值。使用这种方法,在神经网络学习阶段需要大量的已知阈值的样本图像,以用于调节网络参数产生合适的输出。但在实际应用中,要获得大量的样本图像是十分困难的。M.Liang借助于松弛标记技术与人工神经网络的有关理论,提出了一种用Kohonen网络作从网络粗分的主从神经网络分割方法,从网络的分割结果用于确定主网络中各神经元的初始状态,然后主网络从这一初始状态出发进行状态的动态演变,直至收敛到主网络的某一吸引子,这时主网络的状态对应于分割后的图像。这种方法能够分割低信噪比条件下图像,实验证明它比最佳鉴别门限准则门限分割法与矩阵保持门限分割法具有更好的效果,并且可以实现实时处理。类似的用于从高度噪声破坏的景物中提取对象的方法还可以使用Hopfield类型神经网络。

1.5本文的主要流程图

图1-1 主要流程图

基于MA TLAB的图像分割算法研究

第二章数字图像处理的处理方式

2.1图像变换

由于图像阵列很大,直接在空间域中进行处理,涉及计算量很大。因此,往往采用各种图像变换的方法,如傅立叶变换、沃尔什变换、离散余弦变换等间接处理技术,将空间域的处理转换为变换域处理,不仅可减少计算量,而且可获得更有效的处理(如傅立叶变换可在频域中进行数字滤波处理)。目前新兴研究的小波变换在时域和频域中都具有良好的局部化特性,它在图像处理中也有着广泛而有效的应用。

2.2图像编码压缩

图像编码压缩技术可减少描述图像的数据量(即比特数),以便节省图像传输、处理时间和减少所占用的存储器容量。压缩可以在不失真的前提下获得,也可以在允许的失真条件下进行。编码是压缩技术中最重要的方法,它在图像处理技术中是发展最早且比较成熟的技术。

2.3图像增强和复原

图像增强和复原的目的是为了提高图像的质量,如去除噪声,提高图像的清晰度等。图像增强不考虑图像降质的原因,突出图像中所感兴趣的部分。如强化图像高频分量,可使图像中物体轮廓清晰,细节明显;如强化低频分量可减少图像中噪声影响。图像复原要求对图像降质的原因有一定的了解,一般讲应根据降质过程建立“降质模型”,再采用某种滤波方法,恢复或重建原来的图像。

2.4图像分割

图像分割是数字图像处理中的关键技术之一。图像分割是将图像中有意义的特征部分提取出来,其有意义的特征有图像中的边缘、区域等,这是进一步进行图像识别、分析和理解的基础。虽然目前已研究出不少边缘提取、区域分割的方法,但还没有一

基于MATLAB的图像分割算法研究

种普遍适用于各种图像的有效方法。因此,对图像分割的研究还在不断深入之中,是目前图像处理中研究的热点之一。

2.5图像描述

图像描述是图像识别和理解的必要前提。作为最简单的二值图像可采用其几何特性描述物体的特性,一般图像的描述方法采用二维形状描述,它有边界描述和区域描述两类方法。对于特殊的纹理图像可采用二维纹理特征描述。随着图像处理研究的深入发展,已经开始进行三维物体描述的研究,提出了体积描述、表面描述、广义圆柱体描述等方法。

2.6图像分类(识别)

图像分类(识别)属于模式识别的范畴,其主要内容是图像经过某些预处理(增强、复原、压缩)后,进行图像分割和特征提取,从而进行判决分类。图像分类常采用经典的模式识别方法,有统计模式分类和句法(结构)模式分类,近年来新发展起来的模糊模式识别和人工神经网络模式分类在图像识别中也越来越受到重视。

基于MA TLAB的图像分割算法研究

第三章 MATLAB平台及其开发环境

MATLAB自1984年由美国Mathworks公司推向市场以来,历经十几年的发展,现已成为国际公认的最优秀的科技应用软件。MATLAB既是一种直观、高效的计算机语言,同时又是一个科学计算平台。MATLAB以矩阵作为基本编程单元,将数值分析、矩阵计算、科学数据可视化以及非线形动态系统的建模和仿真等许多强大功能集成在一个易于使用的视窗环境之中,为科学研究、工程设计以及必须进行有效数值计算的众多学科领域提供了一个简捷、高效大编程工具,为数据分析和数据可视化、算法和应用程序开发提供了最核心的数学和高级图形工具。根据它提供的500多个数学和工程函数,工程技术人员和科学工作者可以在它的集成环境中交互回变成以完成各自的计算。借助于这种编程环境,任何复杂的计算问题及其解大描述十分适合人们的逻辑思维方式和数学表达习惯,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编程模式,为自然科学和工程设计诸多领域或全面解决复杂数值计算问题提供了综合解决方案。MATLAB语言还提供可与C、Fortran语言的借口,可以很容易与用C、Fortran语言写的程序混合编译。

3.1.MATLAB的组成

3.1.1MATLAB主要有以下几个部分

矩阵语句——MATLAB的核心上控制流语句、函数、数据结构、输入/输出及面向对象编程特征的高级矩阵/数组语言。MATLAB不但允许用户交互地即算的小程序,也允许建立完整和复杂的庞大应用程序。

工作环境——MATLAB的工作环境是随使用者(作为MATLAB用户或程序员)一同工作的庞大工具和功能性程序的集合。MATLAB在用户工作区中执行变量管理和输入、输出数据的功能。MATLAB也包含一些游泳的工具,并提供了一个集成的开发环境。

句柄图形——句柄图形上MATLAB的图形系统。包括二维、三维数据的可视化、图形、图像处理、动画和显示图形的高级指令,也包括允许拥护全面控制图形外观

基于MATLAB的图像分割算法研究

数学函数库——MATLAB为满足复杂高科技计算任务大需要汇集了大量有价值的科学和工程计算算法,范围从初等函数、复数运算直到复杂函数如矩阵求逆、矩阵特征值、奇异值、Bessel程序的文件库。其功能包括从MATLAB中调用C或Fortran 程序、调用MATLAB作为(C或Fortran)计算引擎以及读写MAT文件。

MATLAB之所以成为世界顶尖的科学计算与数学应用软件,是因为它随着版本的升级与不断完善而具有越来越强大的功能。

a.数值计算功能

MATLAB出色的数值计算功能是使之优于其他数学应用软件的决定性因素之一,尤其是当今流行的MATLAB6.1版本,其数值计算功能可谓十分完善了。

b.符号计算功能

科学计算有数值计算与符号计算之分,仅有优异的数值计算功能并不能满足解决科学计算时的全部需要。在数学科学、应用科学和工程计算领域,常常会遇到符号计算问题。1993年,MathWorks公司从加拿大Waterloo大学购买了Maple的使用权,并以Malple的“内核”作为符号计算功能的引擎,依靠Maple已有的库函数,开发出了在MATLAB环境下实现符号计算功能的系统组件。

c.数据分析功能

MATLAB不但在科学计算方面具有强大的功能,而且在数值计算结果的分析和数据可视化方面也有着其他同类软件难以匹敌的优势。在科学计算和工程应用中,技术人员经常会遇到大量的原始数据和数值计算结果需要进行分析,而对数据的分析并非易事。MATLAB能将这些数据以图形的方式显示出来,不仅使数据间的关系清晰明了,而且对于揭示其内在本质往往有着非常重要的作用。

d.动态仿真功能

MATLAB提供了一个模拟动态系统的交互式Simulink,允许用户在屏幕上绘制框图来模拟一个系统,并能动态地控制该系统。Simulink采用鼠标驱动方式,能处理

基于MA TLAB的图像分割算法研究

e.程序借口功能

MATLAB提供了方便的应用程序借口(API),用户可以在MATLAB环境下直接调用已经编译过的CFortran子程序,可以在MATLAB和其他应用程序之间建立客户机/服务器关系。同样,在C和Fortran程序中,也可以调用MATLAB的函数命令,使得这些语言可以充分利用MATLAB强大矩阵运算功能和方便的绘图功能。

f.文字处理功能

MATLAB Notrbook能成功地将MATLAB与文字处理系统Microsoft word集成一个整体。为用户进行文字处理、科学计算、工程设计等营造了一个完美统一的工作环境。用户不仅可以利用word强大曲文字编辑处理功能极其方便地创建MATLAB的系统手册、技术报告、命令序列、函数程序、注释文档以及与MATLAB有关的教科书等6种文档,而且还能从word访问MATLAB的数值计算和可视化结果,直接利用word 对由MATLAB所生成的图形图像进行移动、缩放、剪裁、编辑等加工处理。

3.2MATLAB的特点

总的来说,MATLAB有三大特点:

3.2.1功能强大,可扩展性强

MATLAB语言不但为用户提供了科学计算、数据分析与可视化、系统仿真、数学和文字同意处理等强大的功能,而且还具有独树一帜的可扩展性特征。

MathWorks公司针对不同领域的应用,推出了自动控制、信号处理、图像处理、模糊逻辑、神经网格、小波分析、通信、最优化、数理统计、偏微分方程、财政金融等30多个具有专门功能的MATLAB工具箱。

MATLAB支持用户自由地进行二次开发。用户的应用程序既可以作为新的函数添加到相应的工具箱中,也可以扩充为新的工具箱。这些年来,国外许多不同应用领域的专家使用MATLAB开发出了相当多的应用程序。

基于MATLAB的图像分割算法研究

3.2.2界面友好,编程效率高

MATLAB是一种以矩阵为基本变量单元的可视化程度设计语言,语法结构简单,数据类型单一,指令表达方式非常接近于常用的数学公式。即使对于那些不大熟悉计算机编程的用户,只要有一点windows操作的经验,在短时间内就能快速掌握MATLAB的主要内容和基本操作,甚至能解决大量复杂的手工难以完成的工作。

MATLAB不仅能使用户免去大量经常重复的基本数学运算,收到事半功倍之效,而且其编译和执行速度都远远超过了采用C和Fortran语言设计的程序。可以说,MATLAB在科学计算与工程应用方面的编程效率远远高于其他高级语言。

3.2.3图像功能,灵活且方便

MATLAB具有灵活的二维与三维绘图功能,在程序的运行过程中。可以方便迅速地用图形、图像、声音、动画等多媒体技术直接表述数值计算,可以选择不同的坐标系,设置颜色、线型、视角等,并且还可以将图形嵌入到用户的word文件中。

MATLAB的这些特点使它获得了对应用学科(特别是边缘学科和交叉学科)的极强适应力,并很快成为应用学科计算机辅助分析、设计、教学,乃至科技文字处理不可缺少的基础软件。

3.3MATLAB在图像处理中的应用

MATLAB的数字图像处理功能很强大,其自带的图像处理工具箱(image processing toolbox)包括了经典图像处理的许多方面,如图像的集合操作、邻域和区域操作、图像变换、图像的恢复、增强和分割、线性滤波器和滤波器设计、图像分析和统计、色彩、集合及形态操作等方面。它集数值分析、矩阵运算、信号处理和图形显示于一体,其强大的扩展功能为各个领域的应用提供了基础。Matlab工具箱中主要包括信号处理(signal processing),控制系统(control system),神经网络(neural network),图像处理(image processing),鲁棒控制(robust control),非线形系统控制(nonlinear system control design),系统辨识(system identification),小波(wavelet)等工具箱。同时,MATLAB还提供了多种图像文件

基于MA TLAB的图像分割算法研究

具箱给各个领域的研究和工程应用提供了有力的工具。

在图像集合操作方面,MATLAB的图像集合操作提供了插值函数,图像尺寸调整,以及任意角度的图像旋转,可以对图像进行缩放、旋转和剪切等操作。

图像滤波方面,MATLAB图像处理工具箱提供了Fourier变换,离散余弦变换,Radon变换以及这些变换的逆变换等,同时也可以利用MATLAB的小波变换工具箱来实现图像的小波变换。

在二值图像处理方面,MATLAB图像处理工具箱的二值图像操作实现了二值图像的数学形态算法。MATLAB预定义的形态学操作有二值图像的腐蚀、膨胀,开运算、闭运算等数学形态学算法和对象标识和测量算法。同时还提供了灰度图像的形态学变换,包括Top-hat变换,Watershed等。

第四章 图像分割的概念和算法的研究 图像分割(Image Segmentation )是把图像分割成若干个特定的、具有独特性质的区域并提取出感兴趣的目标的技术和过程。在对图像的研究和应用中,人们往往仅对图像的某些部分感兴趣(目标或背景),他们一般对应图像中的特定的、具有独特性质的区域。为了分析和识别目标,需要将他们分割并提取出来。

图像分割是由图像处理转到图像分析的关键。一方面,它是目标图像表达的基础,对特征测量有重要的影响。另一方面,图像分割和分割的目标表达、特征提取和参数测量等将原始图像转化为数学表达形式,使得利用计算机进行图像分析和理解成为可能。本章主要介绍图像分割的基本概念和分割所用的主要方法。 4.1图像分割的基本概念

4.1.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 )是对所有在集合中元素的逻辑谓词,Φ代表空集。

下面先对上述各个条件分别给予简略解释。条件①指出对一幅图像所得的全部

基于MA TLAB的图像分割算法研究

子区域的综合(并集)应能包括图像中所有像素(就是原图像),或者说分割应将图像的每个像素都分进某个区域中。条件②指出在分割结果中各个子区域是互不重叠的,或者说在分割结果中一个像素不能同时属于两个区域。条件③指出在分割结果中每个子区域都有独特的特性,或者说属于同一个区域中的像素应该具有某些相同特性。条件④指出在分割结果中,不同的子区域具有不同的特性,没有公共元素,或者说属于不同区域的像素应该具有一些不同的特性。条件⑤要求分割结果中同一个子区域内的像素应当是连通的,即同一个子区域的两个像素在该子区域内互相连通,或者说分割得到的区域是一个连通组元。

另外,上述这些条件不仅定义了分割,也对进行分割有指导作用。对图像的分割总是根据一些分割准则进行的。条件①与条件②说明正确的分割准则应可适用于所有区域和所有像素,而条件③和条件④说明合理的分割准则应能帮助确定各区域像素有代表性的特性,条件⑤说明完整的分割准则应直接或间接地对区域内像素的连通性有一定的要求或限定。

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

4.1.2图像分割算法分类

图像分割算法的研究一直受到人们的高度重视,到目前为止,提出的分割算法已经多达上千种,由于现有的分割算法粉肠多,所以将它们进行分类的方法也提出了不少。例如有把分割算法分成3类的:①边缘检测、②阈值分割和③区域生长。但事实上阈值分割算法分割的方法在本质上也是一种区域提取方法,所以③实际上包含了①。

本章从实际应用的角度考虑,详细介绍了图像分割的如下算法:分割检测、阈值分割、区域生长等。

4.2边缘检测方法

4.2.1边缘检测概述

边缘(Edge)是指图像局部亮度变化最显著的部分。边缘主要存在于目标、目

基于MATLAB的图像分割算法研究

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

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

对一个边缘来说,有可能同时具有阶跃和线条特性。例如在一个表面上,由一个平面变化到法线方向不同的另一个平面就会产生阶跃边缘;如果这一表面具有镜面反射特性且两平面形成的棱角比较圆滑,则当棱角圆滑表面的法线经过镜面反射角时,由于镜面反射分量,在棱角圆滑表面上会产生明亮光条,这样的边缘看起来像在阶跃边缘上叠加了一个线条边缘。由于边缘可能与场景中物体的重要特性对应,所以它是很重要的图像特征。比如,一个物体的轮廓通常产生阶跃边缘,因为物体的图像亮度不同于背景的图像亮度。

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

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

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

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

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

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

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

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

基于Matlab的彩色图像分割

用Matlab来分割彩色图像的过程如下: 1)获取图像的RGB颜色信息。通过与用户的交互操作来提示用户输入待处理的彩色图像文件路径; 2)RGB彩色空间到lab彩色空间的转换。通过函数makecform()和applycform()来实现; 3)对ab分量进行Kmean聚类。调用函数kmeans()来实现; 4)显示分割后的各个区域。用三副图像分别来显示各个分割目标,背景用黑色表示。Matlab程序源码 %文件读取 clear; clc; file_name = input('请输入图像文件路径:','s'); I_rgb = imread(file_name); %读取文件数据 figure(); imshow(I_rgb); %显示原图 title('原始图像'); %将彩色图像从RGB转化到lab彩色空间 C = makecform('srgb2lab'); %设置转换格式 I_lab = applycform(I_rgb, C); %进行K-mean聚类将图像分割成3个区域 ab = double(I_lab(:,:,2:3)); %取出lab空间的a分量和b分量 nrows = size(ab,1); ncols = size(ab,2); ab = reshape(ab,nrows*ncols,2); nColors = 3; %分割的区域个数为3 [cluster_idx cluster_center] = kmeans(ab,nColors,'distance','sqEuclidean','Replicates',3); %重复聚类3次 pixel_labels = reshape(cluster_idx,nrows,ncols); figure(); imshow(pixel_labels,[]), title('聚类结果'); %显示分割后的各个区域 segmented_images = cell(1,3); rgb_label = repmat(pixel_labels,[1 1 3]); for k = 1:nColors color = I_rgb; color(rgb_label ~= k) = 0; segmented_images{k} = color;

部分图像分割的方法(matlab)

大津法: function y1=OTSU(image,th_set) image=imread('color1.bmp'); gray=rgb2gray(image);%原图像的灰度图 low_high=stretchlim(gray);%增强图像,似乎也不是一定需要gray=imadjust(gray,low_high,[]); % subplot(224);imshow(gray);title('after adjust'); count=imhist(gray); [r,t]=size(gray); n=r*t; l=256; count=count/n;%各级灰度出现的概率 for i=2:l if count(i)~=0 st=i-1; break end end %以上循环语句实现寻找出现概率不为0的最小灰度值 for i=l:-1:1 if count(i)~=0; nd=i-1; break end end %实现找出出现概率不为0的最大灰度值 f=count(st+1:nd+1); p=st;q=nd-st;%p和分别是灰度的起始和结束值 u=0; for i=1:q; u=u+f(i)*(p+i-1); ua(i)=u; end

%计算图像的平均灰度值 for i=1:q; w(i)=sum(f(1:i)); end %计算出选择不同k的时候,A区域的概率 d=(u*w-ua).^2./(w.*(1-w));%求出不同k值时类间方差[y,tp]=max(d);%求出最大方差对应的灰度级 th=tp+p; if thth) y1(i,j)=x1(i,j); else y1(i,j)=0; end end end %上面一段代码实现分割 % figure,imshow(y1); % title('灰度门限分割的图像');

基于MATLAB的图像分割方法及应用

安徽财经大学 (《图像处理》课程论文) 题目:图像分割算法研究——基于分水岭分割法的彩色图像分割学院:管理科学与工程学院 专业:电子信息工程 姓名:万多荃 学号:20123712 电话: 任课教师:许晓丽 论文成绩: 2015年10月

目录 摘要 图像分割技术是非常重要的图像处理技术之一,无语是在理论研究还是在实际应用中人们都非常的重视。图像分割有许多的种类和方式,一些分割运算能够直接应用于任何图像,而另外一些却只适用于特别种类的图像。图像分割技术是从图像处理技术,再到后期的图像分析的关键步骤,图像分割结果的好坏,可以说对图像的理解有直接影响。

本文根据图像分割原理及人眼视觉的基本理论,研究图像的彩色模型及图像分割的常用方法,比较各方法的特点,并选择合适的方法对图像进行分割。本文采用MATLAB软件对图像进行彩色坐标变换及阈值分割,计算简单,具有较高的运行效率,分割的结果是使图像更符合人眼的视觉特性,获得比较好的效果。 关键字:图像处理;图像分割;人类视觉;MATLAB 1.前言 1.1图像分割技术 图像分割技术是非常重要的图像处理技术之一,无语是在理论研究还是在实际应用中人们都非常的重视。图像分割有许多的种类和方式,一些分割运算能够直接应用于任何图像,而另外一些却只适用于特别种类的图像。图像分割技术是从图像处理技术,再到后期的图像分析的关键步骤,图像分割结果的好坏,可以说对图像的理解有直接影响。 图像数据的模糊和噪声的干扰是分割问题的两大难题。到目前为止,还没有一个完美的图像分割方法,可以根据人的意愿精确地分割任何一种图像。现实图像中景物情况各种不同,具体问题需具体分析,按照实际情况选择得当的方法。分割成果的好坏或正确与否,到现在为止,尚无一个统一的评价和判断标准,分割的好坏务必从分割的效果和现实应用的场合来判断。然而,在人类研究图像的历史长河中,仍然积累了许多经典的图像分割方法。固然这些分割方法不可以适应全部种类的图像分割,可是这些方法却是图像分割方法进一步发展的根基。实际上,当代一些分割算法恰巧是从经典的图像分割方法中产生出来的。图像分割法大致可以分为三个种:边缘检测法,阈值分割法和基于区域的图像分割法。 2研究目的 视觉是人类最高级的感知器官,所以图像在人类感知中承担着非常重要的角色,这是毋庸置疑的。 本文的主要研究目的是对图像的分割方法进行研究,选择适合本论文的设计方法,然后通过对图像的分割,以达到人眼的最佳视觉效果。 本课题主要是通过对人眼的视觉系统研究,然后选择与人眼视觉系统密切相关的颜色模型进行颜色空间模型之间的相互转换,再对图像分割方法进行比较选择合适的分割方法,通过MATLAB平台实现彩色图像分割,最后对分割后的图像进行比较来获得到最佳的视觉效果。

基于MATLAB的图像分割算法研究

摘要 本文从原理和应用效果上对经典的图像分割方法如边缘检测、阈值分割技术和区域增长等进行了分析。对梯度算法中的Roberts算子、Sobel算子、Prewitt算子、拉普拉斯(Laplacian)算子、LoG(Laplacian-Gauss)算子、坎尼(Canny)算子的分割步骤、分割方式、分割准则相互比较可以看出根据坎尼(Canny)边缘算子的3个准则得出的边缘检测结果最满意。而阈值分割技术的关键在于阈值的确定,只有阈值确定好了才能有效的划分物体与背景,但这种方法只对于那些灰度分布明显,背景与物体差别大的图像的分割效果才明显。区域增长的基本思想是将具有相似性质的像素集合起来构成新区域。与此同时本文还分析了图像分割技术研究的方向。 关键词:图像处理图像分割 Abstract 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, Sobel operator, Prewitt operator, the operator of Laplacian and the operator of LoG(Laplacian-Gauss),Canny operator in gradient algorithm,the step, 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 obiect. 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: image processing image segmentation operator

基于MATLAB的图像阈值分割技术

基于MATLAB 的图像阈值分割技术 摘要:本文主要针对图像阈值分割做一个基于MATLAB 的分析。通过双峰法,迭代法以及OUTS 法三种算法来实现图像阈值分割,并且就这三种算法做了一定的分析和比较,在加椒盐的图片上同时进行三种实验,做出比较,最终得出实践结论。 关键词:图像分割 MATLAB 阈值分割 算法 引言:图像分割是图像处理与计算机视觉领域低层次视觉中最为基础和重要的领域之一,它是对图像进行视觉分析和模式识别的基本前提.同时它也是一个经典难题,到目前为止既不存在一种通用的图像分割方法,也不存在一种判断是否分割成功的客观标准,图像阈值分割即是其中的一种方法。 阈值分割技术因其实现简单、计算量小、性能较稳定而成为图像分割中最基本和应用最广泛的分割技术,已被应用于很多的领域,在很多图像处理系统中都是必不可少的一个环节。 1、阈值分割思想和原理 若图像中目标和背景具有不同的灰度集合:目标灰度集合与背景灰度集合,且两个灰度集合可用一个灰度级阈值T 进行分割。这样就可以用阈值分割灰度级的方法在图像中分割出目标区域与背景区域,这种方法称为灰度阈值分割方法。 在物体与背景有较强的对比度的图像中,此种方法应用特别有效。比如说物体内部灰度分布均匀一致,背景在另一个灰度级上也分布均匀,这时利用阈值可以将目标与背景分割得很好。如果目标和背景的差别是某些其他特征而不是灰度特征时,那么先将这些特征差别转化为灰度差别,然后再应用阈值分割方法进行处理,这样使用阈值分割技术也可能是有效的 设图像为f(x,y),其灰度集范围是[0,L],在0和L 之间选择一个合适的灰度阈值T ,则图像分割方法可由下式描述: 这样得到的g(x,y)是一幅二值图像。 (一)原理研究 图像阈值分割的方法有很多,在这里就其中三种方法进行研究,双峰法,迭代法,以及OUTS 法。 方法一:双峰法 T y x f T y x f y x g ≥<),(),(10){,(

数字图像灰度阈值的图像分割技术matlab

1.课程设计的目的 (1)使学生通过实验体会一些主要的分割算子对图像处理的效果,以及各 种因素对分割效果的影响 (2)使用Matlab软件进行图像的分割 (3)能够进行自行评价各主要算子在无噪声条件下和噪声条件下的分割 性能 (4)能够掌握分割条件(阈值等)的选择 (5)完成规定图像的处理并要求正确评价处理结果,能够从理论上做出合 理的解释 2.课程设计的要求 (1)能对图像文件(bmp,jpg,tiff,gif)进行打开,保存,退出等功能操作 (2)包含功能模块:图像的边缘检测(使用不同梯度算子和拉普拉斯算子)(3)封闭轮廓边界 (4)区域分割算法:阈值分割,区域生长等

3.前言 3.1图像阈值分割技术基本原理 所谓图像分割是指根据灰度、彩色、空间纹理、几何形状等特征把图像划分成若干个互不相交的区域,使得这些特征在同一区域内,表现出一致性或相似性,而在不同区域间表现出明显的不同。简单的讲,就是在一幅图像中,把目标从背景中分离出来,以便于进一步处理。图像分割是图像处理与计算机视觉领域低层次视觉中最为基础和重要的领域之一,它是对图像进行视觉分析和模式识别的基本前提。同时它也是一个经典难题,到目前为止既不存在一种通用的图像分割方法,也不存在一种判断是否分割成功的客观标准]5[。 在对图像的研究和应用中,人们往往仅对图像中的某些部分感兴趣,这些部分称为目标或前景(其他部分称为背景),他们一般对应图像中特定的、具有独特性质的区域。为了辨识和分析目标,需要将他们分离提取出来,在此基础上才有可能对目标进一步利用。图像分割就是指把图像分成格局特性的区域并提取出感兴趣目标的技术和过程。这里特性可以是象素的灰度、颜色、纹理等,预先定义的目标可以对应单个区域,也可以对应多个区域。现有的图像分割算法有:阈值分割、边缘检测和区域提取法。本文着重研究基于阈值法的图像分割技术。 若图像中目标和背景具有不同的灰度集合:目标灰度集合与背景灰度集合,且两个灰度集合可用一个灰度级阈值T进行分割。这样就可以用阈值分割灰度级的方法在图像中分割出目标区域与背景区域,这种方法称为灰度阈值分割方法。 在物体与背景有较强的对比度的图像中,此种方法应用特别有效。比如说物体内部灰度分布均匀一致,背景在另一个灰度级上也分布均匀,这时利用阈值可以将目标与背景分割得很好。如果目标和背景的差别是某些其他特征而不是灰度特征时,那么先将这些特征差别转化为灰度差别,然后再应用阈值分割方法进行处理,这样使用阈值分割技术也可能是有效的

基于Matlab的彩色图像分割

3 Matlab编程实现 3.1 Matlab编程过程 用Matlab来分割彩色图像的过程如下: 1)获取图像的RGB颜色信息。通过与用户的交互操作来提示用户输入待处理的彩色图像文件路径; 2)RGB彩色空间到lab彩色空间的转换。通过函数makecform()和applycform()来实现; 3)对ab分量进行Kmean聚类。调用函数kmeans()来实现; 4)显示分割后的各个区域。用三副图像分别来显示各个分割目标,背景用黑色表示。3.2 Matlab程序源码 %文件读取 clear; clc; file_name = input('请输入图像文件路径:','s'); I_rgb = imread(file_name); %读取文件数据 figure(); imshow(I_rgb); %显示原图 title('原始图像'); %将彩色图像从RGB转化到lab彩色空间 C = makecform('srgb2lab'); %设置转换格式 I_lab = applycform(I_rgb, C); %进行K-mean聚类将图像分割成3个区域 ab = double(I_lab(:,:,2:3)); %取出lab空间的a分量和b分量 nrows = size(ab,1); ncols = size(ab,2); ab = reshape(ab,nrows*ncols,2); nColors = 3; %分割的区域个数为3 [cluster_idx cluster_center] = kmeans(ab,nColors,'distance','sqEuclidean','Replicates',3); %重复聚类3次 pixel_labels = reshape(cluster_idx,nrows,ncols); figure(); imshow(pixel_labels,[]), title('聚类结果'); %显示分割后的各个区域 segmented_images = cell(1,3); rgb_label = repmat(pixel_labels,[1 1 3]); for k = 1:nColors

部分图像分割的方法(matlab)

部分图像分割的方法(matlab)

大津法: function y1=OTSU(image,th_set) image=imread('color1.bmp'); gray=rgb2gray(image);%原图像的灰度图 low_high=stretchlim(gray);%增强图像,似乎也不是一定需要gray=imadjust(gray,low_high,[]); % subplot(224);imshow(gray);title('after adjust'); count=imhist(gray); [r,t]=size(gray); n=r*t; l=256; count=count/n;%各级灰度出现的概率 for i=2:l if count(i)~=0 st=i-1; break end end %以上循环语句实现寻找出现概率不为0的最小灰度值 for i=l:-1:1 if count(i)~=0; nd=i-1; break end end %实现找出出现概率不为0的最大灰度值 f=count(st+1:nd+1); p=st;q=nd-st;%p和分别是灰度的起始和结束值 u=0; for i=1:q; u=u+f(i)*(p+i-1); ua(i)=u; end

程序二: clc; clear; cd 'D:\My Documents\MATLAB' time = now; I = imread('qr4.bmp'); figure(1),imshow(I),title('p1_1.bmp'); % show the picture I2 = rgb2gray(I); figure(2),imshow(I2),title('I2.bmp'); %?D?μ??2¨ J = medfilt2(I2); figure(3),imshow(J); imwrite(J,'J.bmp'); [M N] = size(J); J1 = J(1:M/2,1:fix(N/2)); J2 = J(1:M/2,fix(N/2)+1:N); J3 = J(M/2+1:M, 1:fix( N/2)); J4 = J(M/2+1:M, fix(N/2)+1:N); % figure(4), img = J1; T1 = test_gray2bw( img ); % figure(5), img = J2; T2 = test_gray2bw( img ); % figure(6), img = J3; T3 = test_gray2bw( img ); % figure(7), img = J4; T4 = test_gray2bw( img ); T = [T1,T2;T3,T4]; figure,imshow(T) % T1 = edge(T,'sobel'); % figure,imshow(T1); % BW = edge(T,'sobel'); % f igure,imshow(BW); function [bw_img] = test_gray2bw( img ) %大津法 [row_img col_img ] = size( img ) all_pix = row_img * col_img % get probability of each pixel(????). count_pix = zeros(1,256) % pro_pix = [] for i = 1 : 1 : row_img for j = 1 : 1 : col_img count_pix(1,img(i,j)+1) = count_pix(1,img(i,j)+1) + 1 %í3??′?êy end en d pro_pix = count_pix / all_pix % choose k value; max_kesi = -1 T = 0 for k = 1 : 1 : while( i <= k ) wa = wa + pro_pix(1,i+1) %?°k??i£?????????μ??ò?è???ê£????êoí ua = ua + i * pro_pix(1,i+1) i = i + 1 end

基于MATLAB的图像分割算法研究毕业设计

基于MA TLAB的图像分割算法研究 基于MATLAB的图像分割算法研究 摘要 本文从原理和应用效果上对经典的图像分割方法如边缘检测、阈值分割技术和区域增长等进行了分析。对梯度算法中的Roberts算子、Sobel算子、Prewitt算子、拉普拉斯(Laplacian)算子、LoG(Laplacian-Gauss)算子、坎尼(Canny)算子的分割步骤、分割方式、分割准则相互比较可以看出根据坎尼(Canny)边缘算子的3个准则得出的边缘检测结果最满意。而阈值分割技术的关键在于阈值的确定,只有阈值确定好了才能有效的划分物体与背景,但这种方法只对于那些灰度分布明显,背景与物体差别大的图像的分割效果才明显。区域增长的基本思想是将具有相似性质的像素集合起来构成新区域。与此同时本文还分析了图像分割技术研究的方向。 关键词:图像处理图像分割 Abstract 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, Sobel operator, Prewitt operator, the operator of Laplacian and the operator of LoG(Laplacian-Gauss),Canny operator in gradient algorithm,the step, 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 obiect. 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: image processing image segmentation operator

图像分割技术与MATLAB仿真知识讲解

图像分割技术与M A T L A B仿真

中南民族大学 毕业论文(设计) 学院: 计算机科学学院 专业: 自动化年级:2012 题目: 图像分割技术与MATLAB仿真 学生姓名: 高宇成学号:2012213353 指导教师姓名: 王黎职称: 讲师 2012年5月10日

中南民族大学本科毕业论文(设计)原创性声明 本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。本人完全意识到本声明的法律后果由本人承担。 作者签名:年月日

目录 摘要 0 Abstract 0 引言 (2) 1 图像分割技术 (3) 1.1 图像工程与图像分割 (3) 1.2 图像分割的方法分类 (4) 2 图像分割技术算法综述 (5) 2.1 基于阈值的图像分割技术 (5) 2.2边缘检测法 (6) 2.3 区域分割法 (8) 2.4 基于水平集的分割方法 (9) 2.5 分割算法对比表格 (9) 3基于水平集的图像分割 (11) 3.1 水平集方法简介 (11) 3.2 水平集方法在图像分割上的应用 (12) 3.3 仿真算法介绍 (13) 3.4 实验仿真及其结果 (14) 结论 (22) 致谢 (23) 参考文献 (23)

图像分割技术研究及MATLAB仿真 摘要:作为一项热门的计算机科学技术,图像分割技术已经在我们生活中越来越普及。顾名思义这项技术的目的就是,将目标图像从背景图像中分离出去。由于这些被分割的图像区域在某些属性上很相近,因此图像分割与模式识别以及图像压缩编码有着密不可分的关系。完成图像分割所采用的方法各式各样,所应用的原理也不同。但他们的最终目的都是把图像中性质相似的某些区域归为一类,把性质差异明显的不同区域分割开来。通常在分割完成之后,我们就要对某些特定区域进行分析、计算、评估等操作,因而分割质量的好坏直接影响到了下一步的图像处理[1],因此图像分割是图像处理的一个关键步奏。图像分割技术在各个领域都有着及其重要的意义;在工业上有卫星遥感,工业过程控制监测等等;在医学方面,水平集的分割方法还可以通过医学成像帮助医生识别模糊的病变区域;在模式识别领域还可应用到指纹扫描、手写识别、车牌号识别等等。 本课题的研究内容是对图像分割技术的几种常用的方法进行综述和比较,并基于其中一种方法进行MATLAB仿真测试,给出性能分析比较结果。 关键字:图像分割,MATLAB仿真,模式识别 Image Segmentation and Matlab Simulation Abstract:Image segmentation is to image representation for the physically meaningful regional connectivity set, namely according to the prior knowledge of target and background, we on the image of target and background of labeling and localization, then separate the object from the

基于MATLAB的图像分割处理

学号:2011 —2012学年第 1 学期 专业综合课程设计报告 课题:基于MATLAB的图像分割处理 专业:通信工程 班级: 姓名: 指导教师: 成绩: 电气工程系 2011年11月16日

课程设计任务书 学生班级学生姓名:学号: 设计课题:基于MATLAB的图像分割处理 起止日期:2011.11.06—2011.11.16 指导教师: 设计要求: 本设计对图像分割中的小波变换进行了较为详细的综述。简要介绍医学图像分割的研究目的和意义,给出医学图像分割的基本方法及步骤。在对医学图像分割问题的起源、发展和研究现状进行简要综述的基础上,介绍该领域当前的研究热点及论文的主要研究内容。

图像分割是一种重要的图像分析技术。对图像分割的研究一直是图像技术 研究中的热点和焦点。图像分割是一个很关键的图像分析技术,是由图像处理 进到图像分析的关键步骤.它的目的就是把图像中感兴趣的那部分分割出来供 大家研究、处理和分析,一直都是图像技术研究中的热点。但是由于地域的差别,图像分割一直都没有一个比较通用的算法。 而对图像进行分割的方法有多种,阈值法是其中的一种简单实用的方法。本文主要对阈值法和matlab进行研究,并将它们结合起来以提高图像分割的准确性。本文的主要研究内容如下: 1) 分析了阈值分割方法近年来的新进展,并分析了图像阈值分割中的某些经典方法,如全局阈值方法、局部阈值方法、动态阈值方法等。2)讨论了matlab的主要应用及其特点。3) 将matlab应用于阈值分割,并做实验将其实现。 本次的设计报告首先介绍了双峰法以及最大类方差自动阈值法,然后重点介绍一种基于小波变换的图像分割方法,该方法先对图像的灰度直方图进行小波多尺度变换,然后从较大的尺度系数到较小的尺度系数逐步定位出灰度阈值。最后,对这几种算法的分割效果进行了比较。实验结果表明, 本设计能够实时稳定的对目标分割提取,分割效果良好。医学图像分割是医学图像处理中的一个经典难题。图像分割能够自动或半自动描绘出医学图像中的解剖结构和其它感兴趣的区域,从而有助于医学诊断。 关键词:小波变换;图像分割;阈值

两个matlab实现最大熵法图像分割程序

%两个程序,亲测可用 clear all a=imread('moon.tif'); figure,imshow(a) count=imhist(a); [m,n]=size(a); N=m*n; L=256; count=count/N;%%每一个像素的分布概率 count for i=1:L if count(i)~=0 st=i-1; break; end end st for i=L:-1:1 if count(i)~=0 nd=i-1; break; end end nd f=count(st+1:nd+1); %f是每个灰度出现的概率 size(f) E=[]; for Th=st:nd-1 %%%设定初始分割阈值为Th av1=0; av2=0; Pth=sum(count(1:Th+1)); %%%第一类的平均相对熵为 for i=0:Th av1=av1-count(i+1)/Pth*log(count(i+1)/Pth+0.00001); end %%%第二类的平均相对熵为 for i=Th+1:L-1 av2=av2-count(i+1)/(1-Pth)*log(count(i+1)/(1-Pth)+0.00001); end E(Th-st+1)=av1+av2; end position=find(E==(max(E))); th=st+position-1

for i=1:m for j=1:n if a(i,j)>th a(i,j)=255; else a(i,j)=0; end end end figure,imshow(a); %%%%%%%%%%%%%%%%%%%%%2-d 最大熵法(递推方法) %%%%%%%%%%% clear all; clc; tic a=imread('trial2_2.tiff'); figure,imshow(a); a0=double(a); [m,n]=size(a); h=1; a1=zeros(m,n); % 计算平均领域灰度的一维灰度直方图 for i=1:m for j=1:n for k=-h:h for w=-h:h; p=i+k; q=j+w; if (p<=0)|( p>m) p=i; end if (q<=0)|(q>n) q=j; end a1(i,j)=a0(p,q)+a1(i,j); end end a2(i,j)=uint8(1/9*a1(i,j)); end

数字图像去噪典型算法及matlab实现

图像去噪是数字图像处理中的重要环节和步骤。去噪效果的好坏直接影响到后续的图像处理工作如图像分割、边缘检测等。图像信号在产生、传输过程中都可能会受到噪声的污染,一般数字图像系统中的常见噪声主要有:高斯噪声(主要由阻性元器件内部产生)、椒盐噪声(主要是图像切割引起的黑图像上的白点噪声或光电转换过程中产生的泊松噪声)等; 目前比较经典的图像去噪算法主要有以下三种: 均值滤波算法:也称线性滤波,主要思想为邻域平均法,即用几个像素灰度的平均值来代替每个像素的灰度。有效抑制加性噪声,但容易引起图像模糊,可以对其进行改进,主要避开对景物边缘的平滑处理。 中值滤波:基于排序统计理论的一种能有效抑制噪声的非线性平滑滤波信号处理技术。中值滤波的特点即是首先确定一个以某个像素为中心点的邻域,一般为方形邻域,也可以为圆形、十字形等等,然后将邻域中各像素的灰度值排序,取其中间值作为中心像素灰度的新值,这里领域被称为窗口,当窗口移动时,利用中值滤波可以对图像进行平滑处理。其算法简单,时间复杂度低,但其对点、线和尖顶多的图像不宜采用中值滤波。很容易自适应化。 Wiener维纳滤波:使原始图像和其恢复图像之间的均方误差最小的复原方法,是一种自适应滤波器,根据局部方差来调整滤波器效果。对于去除高斯噪声效果明显。 实验一:均值滤波对高斯噪声的效果 代码 I=imread('C:\Documents and Settings\Administrator\桌面\1.gif');%读取图像 J=imnoise(I,'gaussian',0,0.005);%加入均值为0,方差为0.005的高斯噪声 subplot(2,3,1);imshow(I); title('原始图像'); subplot(2,3,2); imshow(J); title('加入高斯噪声之后的图像'); %采用MATLAB中的函数filter2对受噪声干扰的图像进行均值滤波 K1=filter2(fspecial('average',3),J)/255; %模板尺寸为3 K2=filter2(fspecial('average',5),J)/255;% 模板尺寸为5

车牌图像分割matlab代码

图像分割matlab代码 作者:佚名发布时间:2010-1-1 阅读次数:498 字体大小: 【小】【中】【大】 % This is a program for extracting objects from an image. Written for vehicle number plate segmentation and extraction % Authors : Jeny Rajan, Chandrashekar P S % U can use attached test image for testing % input - give the image file name as input. eg :- car3.jpg clc; clear all; k=input('Enter the file name','s'); % input image; color image im=imread(k); im1=rgb2gray(im); im1=medfilt2(im1,[3 3]); %Median filtering the image to remove noise% BW = edge(im1,'sobel'); %finding edges [imx,imy]=size(BW); msk=[0 0 0 0 0; 0 1 1 1 0; 0 1 1 1 0; 0 1 1 1 0; 0 0 0 0 0;]; B=conv2(double(BW),double(msk)); %Smoothing image to reduce the number of connected components L = bwlabel(B,8);% Calculating connected components mx=max(max(L)) % There will be mx connected components.Here U can give a value between 1 and mx for L or in a loop you can extract all connected components % If you are using the attached car image, by giving 17,18,19,22,27,28 to L you can extract the number plate completely. [r,c] = find(L==17); rc = [r c]; [sx sy]=size(rc);

基于MATLAB的数字图像分割的研究与实现

本科毕业论文(设计) 题目:基于MATLAB的数字图像分割的研究与实现 学院:计算机与信息工程学院 学生: 学号: 专业: 年级: 完成日期: 2012年04月 指导教师:

基于MATLAB的数字图像分割的研究与实现 摘要:视觉和听觉是我们认识和感知外部世界的主要途径,而视觉又是其中最重要的,因此要想更细致、全面地把握这些图像信息就需要对其进行必要的处理。在数字图像处理的研究和应用中很多时候我们只对图像的某些部分和特征感兴趣,此时就需要利用图像分割技术将所需的目标与图片的其他部分区分开,以供我们对图像进一步研究和分析。图像分割即通过一些必要的算法把图像中有意义的部分或特征提取出来,将图像分为若干有意义的区域,使得这些区域对应图像中的不同目标,进而能够对所感兴趣的区域进行研究。基于图像分割技术在图像处理之中的重要性,本研究在此对图像分割的一些经典算法进行了学习和对比,并通过MATLAB对其进行了实验,通过不同的算法对不同的图片进行处理,分析其优缺点,以便在进行图像分割时可以根据图片的特征选择合适的算法。 关键字:数字图像;分割;MATLAB

The Research and Implementation of Digital Image Segmentation Based on the MATLAB Abstract :Vision and auditory are the main ways which we use to understand and perceive the world outside, while vision is the most important. Therefore, it's require to process the image data to grasp them more painstaking and completely. In digital image processing of research and application we are only interested to some parts of the image and characteristic in many times, then you need to use the image segmentation technology to separate the goal and the picture for other parts for our further research and analysis of the image.Image segmentation is dividing the image into some significant areas through some necessary algorithms, then make these areas corresponding to different goals and we can do some research about the areas we are interested to. Based on the importance of image segmentation technology in image processing, I compared several classical algorithms of image segmentation. In the meanwhile, I used the MATLAB to do some research and to process the various images with different algorithms so that it's convinent to find the advantages of these algorithms. Then, I can base on the characteristics of the images to choose the suitable algorithms when to make some digital image segmentation. Key words : D igital Image; Segmentation; MATLAB

MATLAB的图像分割算法研究

清华大学本科生毕业设计 题目:基于MATLAB的图像分割算法研究 作者姓名XXX 学号 指导教师XX教授 学科专业计算机科学与技术 所在学院计算机学院 提交日期 目录: 1 引言 2 图像目标分割与提取技术综述 3 最优割集准则的设计 4 基于等周图割的图像分割 5 编程语言的选择 6 程序运行结果

1.引言 数字图像处理技术是一个跨学科的领域。随着计算机科学技术的不断发展,图像处理和分析逐渐形成了自己的科学体系,新的处理方法层出不穷,尽管其发展历史不长,但却引起各方面人士的广泛关注。首先,视觉是人类最重要的感知手段,图像又是视觉的基础,因此,数字图像成为心理学、生理学、计算机科学等诸多领域内的学者们研究视觉感知的有效工具。其次,图像处理在军事、遥感、气象等大型应用中有不断增长的需求。 基于图论的图像分割技术是近年来国际上图像分割领域的一个新的研究热点。该方法将图像映射为带权无向图,把像素视作节点。利用最小剪切准则得到图像的最佳分割该方法本质上将图像分割问题转化为最优化问题。是一种点对聚类方法。对数据聚类也具有很好的应用前景。但由于其涉及的理论知识较多,应用也还处在初级阶段。因此国内这方面的研究报道并不多见,本文将对图论方法用于图像分割的基本理论进行简要介绍,并对当前图论方法用于图像分割的最新研究进展进行综述,并着重介绍基于等周图割的图像分割的方法。 2.图像目标分割与提取技术综述 图像分割是一种重要的图像技术,在理论研究和实际应用中都得到了人们的广泛重视。图像分割的方法和种类有很多,有些分割运算可直接应用于任何图像,而另一些只能适用于特殊类别的图像。有些算法需要先对图像进行粗分割,因为他们需要从图像中提取出来的信息。例如,可以对图像的灰度级设置门限的方法分割。值得提出的是,没有唯一的标准的分割方法。许多不同种类的图像或景物都可作为待分割的图像数据,不同类型的图像,已经有相对应的分割方法对其分割,同时,某些分割方法也只是适合于某些特殊类型的图像分割。分割结果的好坏需要根据具体的场合及要求衡量。图像分割是从图像处理到图像分析的关键步骤,可以说,图像分割结果的好坏直接影响对图像的理解。 2.1图像分割方法的发展和现状 分割问题的困难在于图像数据的模糊和噪声的干扰。前面已经提到,到目前为止,还没有一种或者几种完善的分割方法,可以按照人们的意愿准确的分割任

相关文档
相关文档 最新文档