毕业论文:基于matlab的数字图像分割技术研究及实现(分享需要的同学)

您所在的位置:网站首页 图像分割有哪些种类 毕业论文:基于matlab的数字图像分割技术研究及实现(分享需要的同学)

毕业论文:基于matlab的数字图像分割技术研究及实现(分享需要的同学)

2024-07-11 12:42| 来源: 网络整理| 查看: 265

本科毕业设计(论文) 题目: 基于matlab的数字图像分割技术研究及实现

摘 要 本文通过对图像分割技术的深入研究,对图像分割的研究现状和国内外研究动态进行了跟踪,针对目前常用的图像分割技术如:阈值分割方法,边缘检测方法,边界法和区域法等作了总结。在matlab环境下用这些方法对一些具有不同特点的图像进行分割处理,并取得了比较满意的效果,为图像处理的进一步进行奠定了基础。最后对图像分割技术的研究前景和应用前景作了展望和预见。 关键词:图像分割,直方图,matlab实现 Abstract The images are passed to the in-depth technical study on the status of research and images are dynamic and a tracking study, with the present images are commonly used technologies such as : thresholds are methods of detection methods, such as border law and regional law summarized. In matlab environment using some of these methods have different characteristics to the images are processed and made more satisfactory results for the image processing laid the foundation for the further. Finally on the images are the prospects for technology research and application prospects of a vision and foresight.

Key words: Imagery processing, image Partition, histogram, Mat lab realization

目 录 第1章 绪论 1 1.1数字图像处理技术简介 1 1.2数字图像处理的应用 2 1.3数字图像处理的优点 4 1.4数字图像处理方法 5 1.4.1空域法 5 1.4.2变换域法 6 第二章 数字图像处理基础 7 2.1 数字图像处理的主要研究内容 7 2.1.1图像变换 7 2.1.3图像增强和复原 8 2.1.4图像分割 8 2.1.5.图像描述 8 2.1.6图像分类(识别) 8 2.2相关概念介绍 9 2.2.1图像的表示方法 9 2.2.2图像的数字化 10 2.2.3灰度 10 2.2.4灰度图像 10 2.2.5像素(Pixel) 10 2.2.6图像二值化 11 2.2.7图像增强 11 2.2.8直方图 11 2.2.8.1直方图的基本概念 11 2.2.8.2直方图的性质 12 第三章图像分割 13 3.1 图像分割的研究现状 13 3.2图像分割在图象处理中的位置 13 3.3 图像分割的定义 14 3.4传统图像阈值分割法 15 第四章 MATLAB简介 16 4.1 MATLAB的主要功能 19 4.2 MATLAB的技术特点 21 4.3MATLAB的基本知识 22 4.3.1、基本运算 22 4.3.2、常用函数: 23 4.3.3MATLAB常用的三角函数 23 4.3.4适用于向量的常用函数有: 23 4.3.5重复命令 24 4.3.6逻辑命令 26 4.3.7基本xy平面绘图命令 26 第五章 基于matlab的算法实现及仿真 31 5.1基于阈值的分割方法 31 5.2边缘检测法 33 5.3边界法 35 5.4区域法 38 5.5其他特殊方法 41 结 论 46 参考文献 47 致 谢 49

第1章 绪论 1.1数字图像处理技术简介 所谓图像处理就是对图像信息进行加工以满足人的视觉心理或应用需求的行为。图像处理技术也成为科技领域中必不可少的手段。已经广泛应用于遥感技术,生物医学,工业应用,军事安全和文化艺术等方面。随着电子技术和计算机软、硬件技术发展,图像处理技术也在不断发展和完善。图像处理分为两大类:模拟图像处理和数字图像处理。 模拟图像处理(Analogi mageP rocessing)利用光学原理和物理学原理在物体成像的过程中进行图像处理。例如:利用高分辨率的透镜观察物体或调整透镜的焦距得到物体更清晰的像。从简单的光学滤波到现在的激光全息技术,模拟图像理论也日趋完善。最明显的特点是处理速度快,信息量小。模拟图像处理的缺点是精度较差,灵活性差和稳定性差。数字图像处理(Digitalim agep rocessing)利用数字计算机或其它的数字处理硬件,完成由模拟图像信息转换而得到的数字电信号的某种数学处理。其处理过程主要包括图像采集、图像变换、图像增强、图像存储及图像分析和理解等几方面的内容。数字图像处理与其它传统的模拟处理方法相比较,具有灵活性好、精度高、可定量分析、再现和适应性好等特点。其缺点是因为数据量庞大,处理速度还是一个问题,特别是进行复杂的处理更是如此。它涉及的领域十分广泛,是建立在数学、光学、生理学、信息学、计算机技术和电子技术等学科上的一门综合性跨学科的新兴学科。数字图像信息有以下四个特点: (1) 信息量大。例如一帧黑白电视图像有512×512个像素,若像素用8bi[度级的二进制来表示,则有28=256个灰度级,那么一帧黑白电视图像的信息量为5125128bit=2 097 152bit. (2) 数字图像占用的频带较宽。与语音信息相比,其占用的频带要大几个数量级。如电视视频图像的带宽为5-SMHZ,而语音带宽仅为4KHZ. (3) 数字图像中各个像素间的相关性大。例如电视视频画面中,相邻两像素的相关系数高达0.9,而相邻两帧之间的相关系数比帧内相关性还要大,因此图像信息的具有很大压缩潜力。 (4) 在一般情况下,观察人员是图像效果的最终评价者。观察的效果是评价X射线底片图像处理系统图像处理后的图像标准,故图像处理要考虑人的生理和心理因素的影响。因此要求系统与人的具有良好配合性。 1.2数字图像处理的应用 图像是人类获取和交换信息的主要来源,因此,图像处理的应用领域必然涉及到人类生活和工作的方方面面,随着人类活动范围的不断扩大,图像处理的应用领域也将随之扩大。 航天和航空技术方面的应用 数字图像处理技术在航天和航空技术方面的应用,除了JPL对月球、火星照片的处理之外,另一方面的应用是在飞机遥感和卫星遥感技术中。现在世界各国都在利用陆地卫星获取的图像进行资料调查,灭害检测,资源勘查,农业规划,城市规划,我国也陆续开展了以上诸方面的一些实际应用,并获得了良好的效果。在气象预报和对太空其他星球研究方面,数字图像处理技术也发挥了相当大的作用。 生物医学工程方面的应用 数字图像处理在生物医学工程方面的应用十分广泛,而且很有成效。除了一般的CT技术以外,还有一类是对医用显微图像的处理分析,如红细胞、白细胞分裂,染色体分析,癌细胞识别等,此外,在X光肺部图像增晰、超声波图像处理、心电图分析、立体定向放射治疗等医学诊断方面都广泛地应用图像处理技术。 通信工程方面的应用 当前通信的主要发展方向是声音、文字、图像和数据结合的多媒体通信。具体地讲是将电话、电视和计算机以三网合一的方式在数字通信网上传输。其中以图像通信最为复杂和困难,因图像的数据量十分巨大,如传送彩色电视信号的速率达100Mbit/s以上,要将这样高的速率的数据实时传送出去,必须采用编码技术来压缩信息的比特量。在一定意义上讲,编码压缩是这些技术的关键。除了已应用广泛的熵编码、DPCM编码、变换编码外,目前国内外正在大力发展研究新的 编码方法,如分行编码、自适应网络编码小波变换图像压缩编码等。 工业和工程方面的应用 在工业和工程领域中图像处理技术有着广泛的应用,如自动装配线中检测零件的质量,并对零件进行分类,印刷电路板检查,弹性力学照片的应力分析,流体力学图片的阻力和升力分析,邮政信件的自动分拣,在一些有毒、放射性环境内识别工件及物体的行状和排列状态,先进的设计和制造技术中采用工业视觉等等。其中值得一提的是研制具备视觉、听觉和触觉功能的智能机器人,将会给工农业生产带来新的激励,目前已在工业生产中的喷漆、焊接、装配中得到有效的利用。 5. 军事公安方面的应用 在军事方面图像处理和识别主要用于导弹精确末制导,各种侦查照片的判读,具有图像传输、存储和显示的军事自动化指挥系统,飞机、坦克和军舰模拟训练系统等;公安业务图片的判读分析,指纹识别,人脸鉴别,不完整图片的复原,以及交通监控、事故分析等。目前已投入运行的高速公路不停车自动收费系统中的车辆和车骗自动识别都是图像处理技术成功应用的例子。 6.文化艺术方面的应用 目前这类应用油电视画面的数字编辑,动画的制作,电子图像游戏,纺织工艺品设计,服装设计与制作,发型设计,文物资料照片的复制和修复,运动员动作分析和评分等等,现在已逐渐形成一门新的艺术–计算机美术。 1.3数字图像处理的优点 1.再现性好 数字图像处理与模拟图像处理的根本不同在于,它不会因图像的存储、传输或复制等一系列变换操作而导致图像质量的退化,只要图像在数字化时准确地表现了原稿,则数字图像处理过程始终能保持图像的再现。 2.处理精度高 按目前的技术,几乎可将一幅模拟图像数字化为任意大小的二维数组,这主要取决于图像数字化设备的能力。现代扫描仪可以把每个像素的灰度等级量化为16位甚至更高、这意味着图像的数字化精度可以达到满足任一应用要求。对计算机而言,不论数组大小,也不论每个像素的位数多少,其处理程序几乎是一样的,换言之,从原理上讲不论图像的精度有多高,处理总是能实现的,只要在处理时改变程序中的数组参数就可以了。回想一下图像的模拟处理,为了要把处理精度提高一个数量级,就要大幅度改进处理装置,这在经济上极不核算的。 3适用面宽 图像可以来自多种信息源,它们可以使可见光图像,也可以是不可见的波谱图像(例如X射线图像、射线图像、超声波图像或红外图像等)。从图像反映的客观实体尺度看,不可小岛电子显微图像,大到航空照片、遥感图像甚至天文望远镜图像,这些来自不同信息源的图像只要被变换为数字编码形式后,均是用二维数组表示的灰度图像(彩色图像也使由灰度图象组合成的,例如RGB图像有红、绿、蓝三个灰度图象组合而成)组合而成,因而均可用 计算机来处理,即只要针对不同的图像信息源,采取相应得图象信息采集措施,图像的数字处理方法适用于任何一种图像。 4.灵活性高 图像处理大体上可分为图像的像质改善、图像分析和图像重建三大部分,每一部分均包含丰富的内容。由于图像的官靴处理从原理上讲智能进行线性运算,这极大地限制了光学图像处理能实现的目标。而数字图像处理不仅能完成线性运算、而且能实现非线性处理、即凡是可以用数学公式或逻辑关系来表达的一切运算军可以用数字图像处理实现。 1.4数字图像处理方法 模拟图像经过采样、量化后成为数字图像,数字图像特别适合用计算机处理。数字图像处理方法大致可分为两大类,即:空域法和变换域法。 1.4.1空域法 数字图像看作是平面中各个像素组成的二维数组,可直接对这个二维数组进行相应的图像处理。空域处理法主要有下面两大类: (1) 邻域处理法 其中包括:梯度运算(Gradient Algorithm),拉普拉斯算子运算(LaplacianOperator),平滑算子运算(Smoothing Operator)和卷积运算(ConvolutionAlgorithm )。 (2) 点处理法 灰度处理 (GreyP rocessing)、二值运算、四则运算等。

1.4.2变换域法 数字图像处理的变换域方法是对图像进行变换,得到变换域系数阵列,然后在变换域中进行图像处理,处理后再反变换到空间域,得到处理结果。这类处理包括:滤波、数据压缩、特征提取等处理。数字图像中的主要变换有:离散傅立叶变换(DFT)、离散余弦变换(DCT), Randon变换,小波(Wavelet)变换等

第二章 数字图像处理基础 2.1 数字图像处理的主要研究内容 2.1.1图像变换 由于图像阵列很大,直接在空间域中进行处理,涉及计算量很大,因此,往往采用各种图像变换的方法,如付立叶变换、沃尔什变换、离散余弦变换等间接处理技术,将空间域的处理转换为变换域处理不仅可以减少计算量,而且可以获得更有效的处理(如付立叶变换可在频域中进行数字滤波处理)。目前新兴研究的小波变换在时域和频域中进行数字滤波处理)。目前新兴研究的小波变换在时域和频域中都具有良好的局部化特征,它在图像处理中也有着广泛而有效的应用。 2.1.2 图像编码压缩 计算机处理中的数字图像灰度多数用8bit表示量化并用普通的PCM编码,而医学图像处理和其他科研应用的图像灰度量化可用到12bit以上,因而所需数据量太大,这无疑对图像的存储、处理、传送带来很大的困难,若是量化比特减少,又必然有图像量化噪声增大的缺点,且丢失灰度细节的信息。数字图像的庞大数据对计算机的处理速度、存储容量都提出过高的要求,因此必须把数据量压缩,图像编码压缩技术可减少描述图像的数据量(即比特数),以便节省图像传输、处理时间和减少所占用的存储器容量。压缩可以在不失真的前提下获得,也可以在允许的失真条件下进,编码是压缩技术中最重要的方法,它在图像处理技术中是发展最早且比较成熟的技术。数字图像数据量的压缩按应用不同科分为三类:即信息保持性数据压缩,它要求压缩图像的比特数而不丢失任何信息,主要用在图像信息保存中,要求图像能保持信息并能快速存取图像;保真度型数据压缩,允许在压缩过程中丢失一些人感觉不到的信息;特征保持型数据压缩,保存图像中感兴趣的信息,无用信息都丢掉。 2.1.3图像增强和复原 图像增强和复原的目的是为了提高图像的质量,如去除噪声,提高图象的清晰度等,图像增强高频分量,可使图像中物体轮廓清晰,细节明显,强化低频分量可减少图像中噪声影响。图像复原要求对图像降质的原因有一定的了解,一般来讲应根据降质过程建立“降质模型”,再采用某种滤波方法,恢复或重建原来的图像。 2.1.4图像分割 图像分割是数字图像处理中的关键技术之一。图像分割时将图像中有意义的特征部分提取出来,其有意义的特征有图像中的边缘、区域等,这是进一步进行图像识别、分析和理解的基础,虽然目前已研究出不少边缘提取,区域分割的方法,但还没有一种普通适用于各种图像的有效方法。因此,对图像分割的研究还在不断深入之中,是目前图像处理中研究的热点之一。 2.1.5.图像描述 图像描述是图像识别和理解的必要前提,作为最简单的二值图像可采用其结合特征描述物体的特征,一般图像的描述方法采用二维形状描述,它有边界描述和区域描述两类方法。对于特殊的纹理图像可采用二维纹理特征描述,随着图像处理研究的深入发展,已经开始进行三维物体描述的研究,提出了体积描述、表面描述、广义圆柱体描述等方法。 2.1.6图像分类(识别) 图像分类(识别)属于模式识别的范畴,其主要内容是图像经过某些预处理(增强、复原、压缩)后,进行图像分割和特征提取,从而进行判决分类。图像分类常采用经典的模式识别方法,有统计模式分类和句法(结构)模式分类,近年来新发展起来的模糊模式识别和人工神经网络模式分类在图像中也越来越受重视。 2.2相关概念介绍 2.2.1图像的表示方法 计算机是用数字列表来表示图像的,数字列表可以很长,包含数以百万计的数字。在计算机内部,弱电信号只有两种不同状态,即高压和低压。一个二进制数字称为一位。如果要表示比1大的数,就用多位二进制数。一个字节包含8个二进制数,排列组合后可以表示从00000000到11111111的256个不同数值。所以,我们通常用00000000到11111111来表示十进制数的0~255。 在计算机中用多个字节可以表示很大的数字,例如: 1个字节可以表示256个不同的数值; 2个字节就可以表示65536个不同的数值; 3个字节则可以表示16777216个不同的数值; 4个字节可以表示4294967296个不同的数值。 在计算机内部,排好顺序的数据列表称为阵列,阵列可以很大,也可以是多维的。例如,如果我们用一个1000字节的阵列,然后再在每个阵列里生成一个1000字节的阵列,将得到一个1000×1000=1000000字节的阵列。阵列的一个特性就是阵列里的每个元素都有惟一的地址 在表示数码图像的时候,阵列十分有用,它为我们提供了如何组织大数据表的方式。一幅黑白照片可以由多个维阵列表示,阵列中的每一个字节都代表原稿中一个单独的点。 2.2.2图像的数字化 图像的数字化可以使用扫描方式。在扫描黑白原稿时,扫描头采集原稿上每一点的亮度,获得相对应的模拟信号,然后转换成数字信号。如果每一个点都用一个字节表示,那么原稿的亮度将会有256级。256级对于黑白照片从高光到暗调范围内视觉能分辨的阶调级数来说已经足够了。如果从原稿水平方向上采集1000个样点,垂直方向上采集1000行,那么,这幅原稿扫描的数据量就是1000×1000字节,此庞大数据阵列就是原稿的数字表示。如果原稿扫描时在水平和垂直方向都采集500个样本,那么原稿的数据量就是500×500=250000字节,是前面原稿数据量的1/4。相反地,如果原稿在扫描时水平和垂直方向都采集2000个样本,原稿的数据量就是前面的4倍。 2.2.3灰度 灰度顾名思义就是灰的程度,灰度值越大越趋近于白色。把一幅彩色图转变成灰度图,只 需在matlab中用map(gray)灰色,就可把图像改为灰度的 2.2.4灰度图像 在灰度图像中,像素灰度级用8bit表示,所以每个像素都是介于黑色和白色之间的256种灰度中的一种。灰度图像只有灰度颜色而没有彩色。我们通常所说的黑白照片,其实包含了黑白之间的所有灰度色调。从技术上来说,就是具有从黑到白的256种灰度色域(Gamut)的单色图像. 2.2.5像素(Pixel) 在计算机中,图像是由显示器上许多光点组成的,将显示在显示器上的这些点(光的单元)称为像素. 2.2.6图像二值化 是指将多灰度图像用0和1两个灰度级表示.0代表黑,1代表白 2.2.7图像增强 图像增强是对图像质量在一般意义上的改善.当无法知道图像退化有关的质量信息时,可以使用图像增强技术较为主观地改善图像的质量.所以,图像增强技术是用于改善图像视觉质量所采取的一种方法.因为增强技术并非是针对某种退化所采取的方法,所以很难预测哪一种特定技术是最好的,只能通过试验和分析误差来选择一种合适的方法.有时可能需要彻底改变图像的视觉效果,以便突出重要特征的可观察性,使人或计算机更容易观察或检测.在这种情况下,可以把增强理解为增强感兴趣特征的可检测性,而非改善视觉质量. 2.2.8直方图 2.2.8.1直方图的基本概念 如果将图像中像素亮度(灰度级别)看成是一个随即变量,则其分布情况就反映了图像的统计特性,这可用Probability Density Function (PDF)密度估计函数来刻画和描述,表现为灰度直方图(Histogram)。灰度直方图是灰度级的函数,它表示图像中具有某种灰度级的像素的个数,反映了图像中每种灰度出现的频率。灰度直方图的横坐标是灰度级,纵坐标是该灰度级出现的频率,它是图像最基本的统计特征。 在对图像进行处理之前,了解图像整体或局部的灰度分布情况是非常必要的。对图像的灰度分布进行分析的重要手段就是建立灰度直方图(Density Histogram)利用图像灰度直方图,可以直观地看出图像中的像素亮度分布情况,通过直方图均衡化、归一化的处理等,可对图像的质量进行调整。另外,通过直方图的分析,有助于确定图像阈值化处理的阈值(Threshold)。 2.2.8.2直方图的性质 由直方图的基本概念可知,图像的直方图具有以下三个重要的性质。 (1)直方图是一幅图像中各像素灰度出现次数(或频数)的统计结果,它只反映该图像中不同灰度值出现的次数(或频数),而未反映某一灰度值像素所在位置。也就是说,他只包含了该图像中某一灰度值的像素出现的概率,而丢失了其所在位置的信息。 (2)任一幅图像,都能惟一地确定出一幅与它对应得直方图,但不同的图像,可能有相同的直方图。也就是说,图像与直方图之间是多对一的关系。 (3)由于直方图是对具有相同灰度值的像素统计得到的,因此,一幅图像各子区的直方图之和就等于该图像全图的直方图。

第三章图像分割 3.1 图像分割的研究现状 随着科学技术的不断发展,人们逐渐认识到现有的任何一种单独的图像分割算法都难以对一般图像取得令人满意的分割结果,因而在继续致力于将新的概念以及新的方法引入图像分割领域的同时,更加重视多种分割算法的有效结合。采取什么样的结合方法才能体现各种方法的优点和取得好的效果已成为人们关注的问题。 在20世纪80年代后期,在图像处理、模式识别和计算机视觉的主流领域,受到人工智能发展的影响,出现了将更高层次的推理机制用于识别系统的做法,这种思路也开始影响图像分割方法.神经网络、形态学理论、小波理论等在图像分割领域得到广泛的应用,遗传算法、尺度空间、多分辨率方法、非线性扩散方程等近期涌现的新方法和新思想也不断被用于解决分割问题,国内外学者提出了不少针对一些具体应用的好的分割方法。 目前人们仍在继续研究更先进的成像技术和更复杂的图像处理算法。图像分割方法的研究与分析与影像数据的物理成像原理、图像形成和重构算法的关系更为密切,而且图像分割与其他图像处理分析任务(如图像增强、匹配、可视化)在识别对象结果和功能上是相关的,因此将他们结合起来共同研究是未来研究的一种趋势。 3.2图像分割在图象处理中的位置 图像分割(image Segmentation)是一种重要的图像技术,它不但得到广泛的重视和研究,它在实际中也得到大量的应用。图像分割在不同领域中有时它用其他名称,如目标轮廓(obiect lineation)技术,阈值化(thresholding)技术,图像区分或求差(image discrimination)技术,目标检测(target detection)技术,目标识别(target recognition)技术,目标跟踪(target tracking)技术等。这些技术本身或核心实际上它是图像分割技术图像分割是图像处理、分析的一项基本内容。图像工程是一对整个图像领域进行研究应用的新学科,它的内容丰富,根据抽象程度和研究方法的不同可分为三个各有特点的层测:图像处理,图像分析和图像理解如下图所示:

图3—1图像分割在图像工程中的位置 图像处理着重强调在图像之间进行变换以改善图像的视觉效果。图像分析则主要是对图像中感兴趣的目标进行检测和测量。以获得它们的客观信息从而建立对图像的描述。图像理解的重点是在图像分析的基础上,进一步研究图像中各目标的性质和它们之间的相互关系,并得出对原始图像或客观场景的解释。从而知道和规划行动。 图像分割就是把图像分成各具特性的区域并提出感兴趣目标的技术和过程。这里特性可以是像素的灰度、颜色、纹理等,预先定义的目标可以对应单个区域,也可以对应多个区域。图像分割时由图像处理进到图像分析的关键步骤,在图像工程中占有重要位置。一方面,它是目标表达的基础,对特征测量有重要影响。另一方面,因为图像分割及其基于分割的目标表达、特征提取和参数测量等将原始图像转化为更抽象更紧凑的形式,使得更高层的图像分析和理解成为可能。图像分割在实际应用中已得到广泛的应用,例如在工业自动化,在线产品检验,生产过程控制,文档图像处理,遥感和生物医学图像分析,保安监视,以及军事,体育,农业工程等方面。概括来说,在各种图像应用中,只要需要对图像目标进行提取,测量等都离不开图像分割。近年来,图像分割在对图像编码中也起到越来越重要的作用,例如国际标准 MPEG-4中模型基/目标基编码等都需要基于分割的结果。可见,图像分割在图像工程中有重要的地位和影响。 3.3 图像分割的定义 图像分割是指将图像中具有特殊含义的不同区域区分开来,也就是将图像分成有意义的各目标区域。例如,在医学图像处理中,如输入的是一幅细胞的照片,就需要分割出单个细胞,又如,输入的是地形航空照片或地貌遥感图像,则就需要检析出山区、平原、水域、森林、城市、道路等。这些从图像域中分离出来的“目标”便是图像分割的对象。图像中目标的形状可以用两种方式来表达:目标的边界或目标所覆盖的区域。用边缘检测和边缘跟踪技术,能够实现目标形状的边缘表达。而用目标覆盖的区域表达形状,则需要把图像分割成几个具有某种均匀一致性的区域。在实际图像中往往存在一些具有某种均匀一致性的区域,如灰度、纹理等分布的均匀一致性。这种一致性构成的特征向里可用于区分图像的各个区域。图像分割就是利用这些特征向量来检验各区域的一致性,从而达到将图像分割成不同区域的目的。 3.4传统图像阈值分割法 图像分割是计算机视觉研究中一个重要而困难的任务。计算机视觉中的图像处理包括目标检测、特征提取和目标识别等,都依赖于图像分割的质量。虽然图像分割一直受到研究人员的重视,但它的进展比较缓慢,被认为是计算机视觉中的一个瓶颈。 图像分割是自动目标识别的关键和首要步骤,其目的是将目标和背景分离,为计算机视觉的后续处理提供依据,通常图像分割包括阈值法、边缘检测法和区域跟踪法。其中阈值法是图像分割的常用方法。

第四章 MATLAB简介 MATLAB的发展历程和介绍 MATLAB软件是由美国Mathworks公司推出的用于数值计算和图形处理的科学计算系统环境。MATLAB是英文MATrix LABoratory(短阵实验室)的缩写。它的第1版(DoS版本1.0)发行于1984年,经过10余年的不断改进,现今已推出它的WindoM 98/NT版本(6.1版)。新的版本集中了日常数学处理中的各种功能,包括高效的数值计算、矩阵运算、信号处理和图形生成等功能。 在MATLAB环境下,用户可以集成地进行程序设计、数值计算、图形绘制、输入输出、文件管理等各项操作。 MATLAB提供了一个人机交互的数学系统环境,该系统的基本数据结构是矩阵,在生成矩陈对象时,不要求作明确的维数说明。与利用c语言或FoRTRAN语言作数值计算的程序设计相比,利用MATLAB可以节省大量的编程时间。在美国的一些大学里,MATLAB正在成为对数值线性代数以及其他一些高等应用数学课程进行辅助教学的有益工具。在工程技术界,MATLAB也被用来解决一些实际课题和数学模型问题。典型的应用包括数值计算、算法预设计与验证,以及一些特殊的短阵计算应用,如自动控制理论、统计、数字信号处理(时间序列分拆)等。 MATLAB系统最初是由CIeve Moler用FORTRAN语盲设计的,有关短阵的算法来自LINPACK和EIsPACK课题的研究成果;现在的MATLAB程序是MathWorks公司用 C语言开发的,第一版由steve Bangert主持开发编译解释程序,Steve Kleiman完成图形功能的设计,John Little和Cleve Moler主持开发了各类数学分分析的子模块,撰写用户指南和大部分的M文件。自从第1版发行以来,已有众多的科技工作者加入到MATLAB的开发队伍中,并为形成今天约MATLAB系统做出了巨大的贡献。 MATLAB以商品形式出现后,仅短短几年,就以其良好的开放性和运行的可靠性,使原先控制领域里的封闭式软件包(如英国的UMIST,瑞典的LUND和SIMNON,德国的KEDDC)纷纷淘汰,而改以MATLAB为平台加以重建。 在时间进入20世纪九十年代的时候,MATLAB已经成为国际控制界公认的标准计算软件。 到九十年代初期,在国际上30几个数学类科技应用软件中,MATLAB在数值计算方面独占鳌头,而Mathematica和Maple则分居符号计算软件的前两名。Mathcad因其提供计算、图形、文字处理的统一环境而深受中学生欢迎。 MathWorks公司于2001年推出MATLAB6.0版本,6.x版在继承和发展其原有的数值计算和图形可视能力的同时,出现了以下几个重要变化: (1)推出了SIMULINK。这是一个交互式操作的动态系统建模、仿真、分析集成环境。它的出现使人们有可能考虑许多以前不得不做简化假设的非线性因素、随机因素,从而大大提高了人们对非线性、随机动态系统的认知能力。 (2)开发了与外部进行直接数据交换的组件,打通了MATLAB进行实时数据分析、处理和硬件开发的道路。 (3)推出了符号计算工具包。1993年MathWorks公司从加拿大滑铁卢大学购得Maple的使用权,以Maple为“引擎”开发了Symbolic Math Toolbox 1.0。MathWorks公司此举加快结束了国际上数值计算、符号计算孰优孰劣的长期争论,促成了两种计算的互补发展新时代。 (4)构作了Notebook 。MathWorks公司瞄准应用范围最广的Word ,运用DDE和OLE,实现了MATLAB与Word的无缝连接,从而为专业科技工作者创造了融科学计算、图形可视、文字处理于一体的高水准环境。 MTALAB系统由五个主要部分组成,下面分别加以介绍。 (1)MATALB语言体系 MATLAB是高层次的矩阵/数组语言.具有条件控制、函数调用、数据结构、输入输出、面向对象等程序语言特性。利用它既可以进行小规模端程,完成算法设计和算法实验的基本任务,也可以进行大规模编程,开发复杂的应用程序。 (2)MATLAB工作环境 这是对MA丁LAB提供给用户使用的管理功能的总称.包括管理工作空间中的变量据输入输出的方式和方法,以及开发、调试、管理M文件的各种工具。 (3)图形句相系统 这是MATLAB图形系统的基础,包括完成2D和3D数据图示、图像处理、动画生成、图形显示等功能的高层MATLAB命令,也包括用户对图形图像等对象进行特性控制的低层MATLAB命令,以及开发GUI应用程序的各种工具。 (4)MATLAB数学函数库这是对MATLAB使用的各种数学算法的总称.包括各种初等函数的算法,也包括矩阵运算、矩阵分析等高层次数学算法。 (5)MATLAB应用程序接口(API) 这是MATLAB为用户提供的一个函数库,使得用户能够在MATLAB环境中使用c程序或FORTRAN程序,包括从MATLAB中调用于程序(动态链接),读写MAT文件的功能。 可以看出MATLAB是一个功能十分强大的系统,是集数值计算、图形管理、程序开发为一体的环境。除此之外,MA丁LAB还具有根强的功能扩展能力,与它的主系统一起,可以配备各种各样的工具箱,以完成一些特定的任务。用户可以根据自己的工作任务,开发自己的工具箱。 在欧美大学里,诸如应用代数、数理统计、自动控制、数字信号处理、模拟与数字通信、时间序列分析、动态系统仿真等课程的教科书都把MATLAB作为内容。这几乎成了九十年代教科书与旧版书籍的区别性标志。在那里,MATLAB是攻读学位的大学生、硕士生、博士生必须掌握的基本工具。 在国际学术界,MATLAB已经被确认为准确、可靠的科学计算标准软件。在许多国际一流学术刊物上,(尤其是信息科学刊物),都可以看到MATLAB的应用。 在设计研究单位和工业部门,MATLAB被认作进行高效研究、开发的首选软件工具。如美国National Instruments公司信号测量、分析软件LabVIEW,Cadence公司信号和通信分析设计软件SPW等,或者直接建筑在MATLAB之上,或者以MATLAB为主要支撑。又如HP公司的VXI硬件,TM公司的DSP,Gage公司的各种硬卡、仪器等都接受MATLAB的支持。 4.1 MATLAB的主要功能 MATLAB之所以成文世界顶尖的科学计算与数学应用软件,是因为它随着版本的升级与不断完善而具有愈来愈强大的功能。 1)数值计算功能。MATLAB出色的数值计算功能是使之优于其他数学应用软件的决定性因素之一,尤其是当今流行的最新版本,其数值计算功能可谓十分完善了。 2)符号计算功能。科学计算有数值计算与符号计算之分,仅有优异的数值计算功能并不能满足解决科学计算时的全部需要。在数学科学、应用科学和工程计算领域,常常会遇到 符号计算问题。1993年,Math Works公司从加拿大Waterloo大学购买了Maple的使用权,并以Maple的“内核”作为符号计算功能的“引擎”,依靠Maple已有的库函数,开发出了在MATLABA环境下实现符号计算功能的系统组建。 3)数据分析功能。MATLAB不但在科学计算方面具有很强大的功能,而且在数值计算结果的分析和数据可视化方面也有着其他同类软件难以匹敌的优势。在科学计算和工程应用中,技术人员经常会遇到大量的原始数据和数值计算结果需要进行分析,而对数据的分析并非易事。MATLAB能将这些数据以图形的方式显示出来,不仅使数据间的关系清新明了,而且对于揭示其内在本质往往有着非常重要的作用。 4)动态仿真功能。MATLAB提供了一个模拟东tia系统得交互式程序SIMULINK,允许用户在屏幕上绘制框图来模拟一个系统,并能动态地控制该系统。SIMULINK采用鼠标驱动方式,能处理线性、非线性、连续、离散等多种系统。 SIMULINK还为用户提供了两个应用程序扩展集:Simulink Extensions 和Blocksets. 其中Simulink Extensions 和支持在SIMULINK环境下进行系统开发的一些可选择的工具类应用程序,包括Simulink Accelerator、Real-Time Workshop 以及Stateflow;而Blocksets则是针对DSP(数字信号处理)、Communications(通信)、Nonlinear Control Design (非线性控制设计)、Fixed Point(不动点)等几个特殊应用领域设计的SIMULINK程序的集合。 5)程序结果功能。MATLAB提供了方便的应用程序接口(API),用户可以在MATLAB环境下直接调用已编译过的C和Fortran子程序中,也可以调用MATLAB的函数或命令,使得这些语言可以充分利用MATLAB强大矩阵运算功能和方便的绘图功能。 6)文字处理功能。MATLAB Notebook 能成功地将MATLAB与文字处理系统Microsoft Word 集成一个整体,为用户进行文字处理、科学计算、工程设计等营造了一个完美统一的工作环境。用户不仅可以利用Word强大的文字编辑处理功能,极其方便地创建MATLAB的系统手册、技术报告、命令序列、函数程序、注释文档以及与MATLAB有关的教科书等6种文档,而且还能从Word访问MATLAB的数值计算和可视化结果,直接利用Word对于MATLAB 所生成的图形图像进行移动、缩放、裁剪、编辑等加工处理。 4.2 MATLAB的技术特点   1)界面友好,编程效率高。MATLAB是一种以矩阵为基本变量单元的可视化程序设计语言,语法结构简单,数据类型单一,指令表达方式非常接近于常用的数学公式。即使对于那些不太熟悉计算机编程的用户,只要有一点Windows操作的经验,在短时间内就能快速掌握MATLAB的主要内容和基本操作,甚至能解决大量复杂的手工难以完成的工作。 MATLAB不仅能使用户免去大量常重复的基本数学运算,受到事半功倍之效,而且其编译和执行速度都远远超过了采用C和Fortran语言设计的程序。可以说,MATLAB在科学计算与工程应用方面的编程效率远远高于其他语言。   2)功能强大,可扩展性强。MATLAB语言不但为用户提供了科学计算、数据分析与可视化、系统仿真等强大的功能,而且还具有独树一帜的可扩展性特征。 MathWorks公司针对不同领域的应用,推出了自动控制、信号处理、图像处理、模糊逻辑、神经网络、小波分析、通信、最优化、数理统计、偏微分方程、财政金融等30多个具有专门功能的MATLAB工具箱。各种工具箱中的函数可以链装,也可以由用户更改。 MATLAB支持用户自由地进行二次开发,用户的应用程序既可以作为新的函数添加到相应的工具箱中,也可以扩充为新的工具箱。这些年来,国外许多不同应用领域的专家使用MATLAB开发出了相当多的应用程序。 3)图像功能,灵活且方便。MATLAB具有灵活的二维与三维绘图功能,在程序的运行过程中,可以方便迅速地用图形、图像、声音动画等多媒体技术直接表述数值计算结果,可以选择不同的坐标系,可以设置颜色、线型、视角等,可以在图中加上 比例尺、标题等标记,可以在程序运行结束后改变图形标记、控制图形句柄等,并还可以将图形嵌入到用户的Word文件中。 4)在线帮助,有利于自学。MATLAB提供了丰富的库函数,用户可以借助于MATLAB环境下的“在线帮助”学习各种函数的用法及其内涵。 总之,MATLAB的功能与特点使它不仅获得了对应用科学,尤其是对边缘科学的极强的适应能力,很快成为计算机辅助分析、设计、仿真等不可缺少的基础软件,而且在CAI教学方面也极具应用潜力。笔者认为,除非开发商业软件,对于完成数值试验、算法验证、图形绘制、辅助教学等方面的任务,MATLAB都势必会成为人们首选软件工具。一方面可以减少重复编程,提高工作效率;另一方面,更为重要的是研究人员能够将主要精力放在数学与物力建模、算法研究等方面,有利于提高科技成果的质量。可以预见,愈来愈多的科技工作者与高校教师加入到学习、运用并推广MATLAB的行列中来,愈来愈多的研究设计单位和工业 部门将MATLAB作为研究和解决工程计算问题的一种标准化软件。 4.3MATLAB的基本知识 4.3.1、基本运算 在MATLAB下进行基本数学运算,只需将运算式直接打入提示号(>>)之後,并按入Enter键即可。例如:

(5*2+1.3-0.8)10/25 ans =4.2000 MATLAB会将运算结果直接存入一变数ans,代表MATLAB运算後的答案(Answer)并显示其数值於萤幕上。 我们也可将上述运算式的结果设定给另一个变数x: x = (52+1.3-0.8)10^2/25 x = 42 若不想让MATLAB每次都显示运算结果,只需在运算式最後加上分号(;)即可,如下例: y = sin(10)exp(-0.34^2); 在上例中,sin是正弦函数,exp是指数函数,这些都是MATLAB常用到的数学函数。 4.3.2、常用函数: MATLAB常用的基本数学函数 abs(x):纯量的绝对值或向量的长度 angle(z):复 数z的相角(Phase angle) sqrt(x):开平方 real(z):复数z的实部 imag(z):复数z的虚 部 conj(z):复数z的共轭复数 round(x):四舍五入至最近整数 fix(x):无论正负,舍去小数至最近整数 floor(x):地板函数,即舍去正小数至最近整数 ceil(x):天花板函数,即加入正小数至最近整数 rat(x):将实数x化为分数表示 rats(x):将实数x化为多项分数展开 sign(x):符号函数 (Signum function)。 当x0时,sign(x)=1。 4.3.3MATLAB常用的三角函数 sin(x):正弦函数 cos(x):馀弦函数 tan(x):正切函数 asin(x):反正弦函数 acos(x):反馀弦函数 atan(x):反正切函数 atan2(x,y):四象限的反正切函数 sinh(x):超越正弦函数 cosh(x):超越馀弦函数 tanh(x):超越正切函数 asinh(x):反超越正弦函数 acosh(x):反超越馀弦函数 atanh(x):反超越正切函数 4.3.4适用于向量的常用函数有: min(x): 向量x的元素的最小值 max(x): 向量x的元素的最大值 mean(x): 向量x的元素的平均值 median(x): 向量x的元素的中位数 std(x): 向量x的元素的标准差 diff(x): 向量x的相邻元素的差 sort(x): 对向量x的元素进行排序(Sorting)length(x): 向量x的元素个数 norm(x): 向量x的欧氏(Euclidean)长度 sum(x): 向量x的元素总和 prod(x): 向量x的元素总乘积 cumsum(x): 向量x的累计元素总和 cumprod(x): 向量x的累计元素总乘积dot(x, y): 向量x和y的内 积 cross(x, y): 向量x和y的外积 4.3.5重复命令 最简单的重复命令是for圈(for-loop),其基本形式为: for 变数 = 矩阵; 运算式; end 其中变数的值会被依次设定为矩阵的每一行,来执行介於for和end之间的运算式。因此,若无意外情况,运算式执行的次数会等於矩阵的行数。 举例来说,下列命令会产生一个长度为6的调和数列(Harmonic sequence): x = zeros(1,6); % x是一个16的零矩阵 for i = 1:6, x(i) = 1/i; end 在上例中,矩阵x最初是一个16的零矩阵,在for圈中,变数i的值依次是1到6,因此矩阵x的第i个元素的值依次被设为1/i。我们可用分数来显示此数列: format rat % 使用分数来表示数值 disp(x) 1 1/2 1/3 1/4 1/5 1/6 for圈可以是多层的,下例产生一个16的Hilbert矩阵h,其中为於第i列、第j行的元素为 h = zeros(6); for i = 1:6, for j = 1:6, h(i,j) = 1/(i+j-1); end end disp(h) 1 1/2 1/3 1/4 1/5 1/6 1/2 1/3 1/4 1/5 1/6 1/7 1/3 1/4 1/5 1/6 1/7 1/8 1/4 1/5 1/6 1/7 1/8 1/9 1/5 1/6 1/7 1/8 1/9 1/10 1/6 1/7 1/8 1/9 1/10 1/11 小提示:预先配置矩阵 在上面的例子,我们使用zeros来预先配置(Allocate)了一个适当大小的矩阵。若不预先配置矩阵,程式仍可执行,但此时MATLAB需要动态地增加(或减小)矩阵的大小,因而降低程式的执行效率。所以在使用一个矩阵时,若能在事前知道其大小,则最好先使用zeros或ones等命令来预先配置所需的记忆体(即矩阵)大小。 在下例中,for圈列出先前产生的Hilbert矩阵的每一行的平方和: for i = h, disp(norm(i)^2); % 印出每一行的平方和 end 1299/871 282/551 650/2343 524/2933 559/4431 831/8801 在上例中,每一次i的值就是矩阵h的一行,所以写出来的命令特别简洁。 令一个常用到的重复命令是while圈,其基本形式为: while 条件式; 运算式; end 也就是说,只要条件示成立,运算式就会一再被执行。例如先前产生调和数列的例子,我们可用while圈改写如下: x = zeros(1,6); % x是一个16的零矩阵 i = 1; while i 0.5, disp(‘Given random number is greater than 0.5.’); end Given random number is greater than 0.5. 4.3.7基本xy平面绘图命令 MATLAB不但擅长於矩阵相关的数值运算,也适合用在各种科学目视表示(Scientific visualization)。 本节将介绍MATLAB基本x,y平面及xyz空间的各项绘图命令,包含一维曲线及二维曲面的绘制、列印及存档。 plot是绘制一维曲线的基本函数,但在使用此函数之前,我们需先定义曲线上每一点的x 及y座标。 下例可画出一条正弦曲线(如图4—1)所示: close all; x=linspace(0, 2pi, 100); % 100个点的x座标 y=sin(x); % 对应的y座标 plot(x,y);

在这里插入图片描述

图4—1 MATLAB基本绘图函数 plot: x轴和y轴均为线性刻度(Linear scale) loglog: x轴和y轴均为对数刻度(Logarithmic scale) semilogx: x轴为对数刻度,y轴为线性刻度 semilogy: x轴为线性刻度,y轴为对数刻度 若要画出多条曲线,只需将座标对依次放入plot函数即可:(如图4—2所示) plot(x, sin(x), x, cos(x)); 在这里插入图片描述

图4—2 若要改变颜色,在座标对後面加上相关字串即可:(如图4—3所示) plot(x, sin(x), ‘c’, x, cos(x), ‘g’);

在这里插入图片描述

图4—3

若要同时改变颜色及图线型态(Line style),也是在座标对後面加上相关字串即可:(如图4—4所示) plot(x, sin(x), ‘co’, x, cos(x), ‘g*’); 在这里插入图片描述

图4—4

plot绘图函数的叁数 字元 颜色字元 图线型态y 黄色. 点k 黑色o 圆w 白色x xb 蓝色+ +g 绿色* *r 红色- 实线c 亮青色: 点线m 锰紫色-. 点虚线-- 虚线 图形完成後,我们可用axis([xmin,xmax,ymin,ymax])函数来调整图轴的范围(如图4—5所示: axis([0, 6, -1.2, 1.2]); 在这里插入图片描述

图4—5

此外,MATLAB也可对图形加上各种注解与处理(如图4—6所示): xlabel(‘Input Value’); % x轴注解 ylabel(‘Function Value’); % y轴注解 title(‘Two Trigonometric Functions’); % 图形标题 legend(‘y = sin(x)’,‘y = cos(x)’); % 图形注解 grid on; % 显示格线 在这里插入图片描述

图4—6

我们可用subplot来同时画出数个小图形於同一个视窗之中(如图4—7所示): subplot(2,2,1); plot(x, sin(x)); subplot(2,2,2); plot(x, cos(x)); subplot(2,2,3); plot(x, sinh(x)); subplot(2,2,4); plot(x, cosh(x)); 在这里插入图片描述

图4-7

第五章 基于matlab的算法实现及仿真 5.1基于阈值的分割方法 基于阈值的分割方法是一种应用十分广泛的图像分割技术。所谓阈值分割方法的实质是利用图像的灰度直方图信息得到用于分割的阈值。它是用一个或几个阈值将图像的灰度级分为几个部分,认为属于同一个部分的象素是同一个物体。它不仅可以极大的压缩数据量,而且也大大简化了图像信息的分析和处理步骤。因此,在很多情况下,是进行图像分析、特征提取与模式识别之前必要的图像预处理过程。它特别适用于目标和背景占据不同灰度级范围的图像。 阈值分割方法的最大特点是计算简单,在重视运算效率的应用场合,它得到了广泛的应用。 下面举例说明这种方法的实现过程,具体算法如下: 1.读取图像如示; 2.将彩色图像转化为灰度图像; 3.计算直方图; 4.根据直方图选取阈值; 5.根据阈值将图像分成两部分:背景和实物区 具体的MATLAB实现过程如下所示: clear I=imread(‘E:\学习\大四毕业设计\新建文件夹\8.jpg’) 读取图像 imshow(I); 显示图像 J=rgb2gray(I); 将图像变为灰度图 figure, 画图 imshow(J); 显示灰度图象 figure 画图 imhist(J); 显示灰度直方图 [M,N]=size(J); 求图像的大小 for ( i=1:1:M) for ( j=1:1:N) if J(i,j)>150 如果灰度值大于150,就增强到255 J(i,j)=255; end end end figure imshow(J);  画图 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述

原始图像 灰度图像 分割后的图像 在这里插入图片描述

灰度直方图 5.2边缘检测法 图像的边缘对人的视觉具有重要意义,一般而言,人们看到一个有边缘的物体时,首先感觉到的便是边缘,灰度或结构信息的突变处成为边缘。图像的边缘有方向性和幅度两个属性,沿边缘方向像素变化缓慢,垂直于边缘方向像素变化剧烈,边缘上的这种变化可用微分算子检测出来,常用一阶导数来检测边缘,基于一阶导数检测边缘有:Roberts算子, Sober算子, Prewitt算子。 应用Roberts,Sober,Prewitt算子检测边缘实例。 I=imread(‘E:\学习\大四毕业设计\新建文件夹\10.jpg’); 读取图像 imshow(I); 显示图像 title(‘原始图像’);  标记 figure,  画图 J=rgb2gray(I);  变为灰度图像 subplot(2,2,1); 将画图空间分成4块,取第一块 imshow(J);   显示灰度图 title(‘灰度变化后的图像’) 标记 [g,t]=edge(J,‘Roberts’,[],‘both’) 进行边缘检测 subplot(2,2,2);  将画图空间分成4块,取第2块 imshow(g);  显示灰度图g title(‘Roberts算子分割结果’) [g,t]=edge(J,‘sobel’,[],‘both’) subplot(2,2,3); imshow(g); title(‘sobel算子分割结果’) [g,t]=edge(J,‘prewitt’,[],‘both’) subplot(2,2,4); imshow(g); title(‘prewitt算子分割结果’) 在这里插入图片描述

原始图像 在这里插入图片描述

5.3边界法 这种方法是寻找两个区域间边界的方法,具体实现如下所示: I=imread(‘E:\学习\大四毕业设计\新建文件夹\2.jpg’);  显示图像 subplot(2,2,1); imshow(I); J=rgb2gray(I); subplot(2,2,2); imshow(J); J=imadjust(J,[],[0 1],3);  调整灰度级把灰度变到0到1之间 J=im2bw(J);       二值化 subplot(2,2,3); imshow(J); width=sum(J); %求每列一的个数 x=1:size(width,2); %求车牌宽度 figure bar(x,width); title(‘字符宽度’) ; %产生水平投影图即字符宽 begins=zeros(1,2); ends=zeros(1,2); j=0; k=0; for i=2:size(width,2)-1 if width(i:i+1)>0 & width(i-1)==0 求边界,对边界进行处理 j=j+1; begins(j)=i; elseif width(i-1:i)>0 & width(i+1)==0 ; k=k+1; ends(k)=i; end end cut_img1=J(:,begins(1):ends(1)); cut_img2=J(:,begins(2):ends(2)); figure, subplot(1,2,1) imshow(cut_img1) subplot(1,2,2) imshow(cut_img2) 在这里插入图片描述 在这里插入图片描述

5.4区域法 如果说前面谈到的两节的算法分别从类似于“点”、“线”的视角看待图像分割问题,下面介绍这类图像分割算法就相当于从“面”的角度来看待图像分割问题了。根据图像分割的定义,其最终是要得到满足一定条件的若干个区域。那么,基于区域的图像分割算法,就是如何直接利用区域这个概念进行算法的研究。区域法包括区域生长法和区域分裂法,在此只介绍区域生长法。 区域生长法主要有以下三步构成: 1、选择合适的种子点; 2、确定生长准则; 3、确定生长停止条件 区域生长法是通过MATLAB工具箱中的函数imreconstruct完成的,由于涉及到形态学的知识本文只利用了这个函数实现了分割图像,没有讨论具体的过程。 I=imread(‘E:\学习\大四毕业设计\新建文件夹\4.jpg’);  读取图像 imshow(I); 显示 figure;   画图 J=rgb2gray(I);  变为灰度图 subplot(2,2,1); imshow(J);    显示灰度图 seedx=[80,400,200]; 建立种子点的横坐标 seedy=[290,400,300]; 建立种子点的纵坐标 hold on plot(seedx,seedy,‘gs’); 将画在图中 title(‘原始图像及种子点位置’); 加标题 J=double(J);  变换图像类型 markerim=JJ(seedy(1),seedx(1)); 初始化种子点 for i=2:length(seedx) 循环 markerim=markerim|(JJ(seedy(i),seedx(i))); end thresh=[12,6,12]; maskim=zeros(size(J)); for i=1:3 g=abs(J-J(seedy(i),seedx(i)))



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3