文档视界 最新最全的文档下载
当前位置:文档视界 › 基于matlab的数字图像分割技术研究及实现

基于matlab的数字图像分割技术研究及实现

基于matlab的数字图像分割技术研究及实现
基于matlab的数字图像分割技术研究及实现

摘要

本文通过对图像分割技术的深入研究,对图像分割的研究现状和国内外研究动态进行了跟踪,针对目前常用的图像分割技术如:阈值分割方法,边缘检测方法,边界法和区域法等作了总结。在matlab环境下用这些方法对一些具有不同特点的图像进行分割处理,并取得了比较满意的效果,为图像处理的进一步进行奠定了基础。最后对图像分割技术的研究前景和应用前景作了展望和预见。

关键词:图像分割,直方图,matlab实现

I

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

II

目录

第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)

III

第四章 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)

致谢 ··········································································································错误!未定义书签。

IV

第1章绪论

1.1数字图像处理技术简介

所谓图像处理就是对图像信息进行加工以满足人的视觉心理或应用需求的行为。图像处理技术也成为科技领域中必不可少的手段。已经广泛应用于遥感技术,生物医学,工业应用,军事安全和文化艺术等方面。随着电子技术和计算机软、硬件技术发展,图像处理技术也在不断发展和完善。图像处理分为两大类:模拟图像处理和数字图像处理。

模拟图像处理(Analogi mageP rocessing)利用光学原理和物理学原理在物体成像的过程中进行图像处理。例如:利用高分辨率的透镜观察物体或调整透镜的焦距得到物体更清晰的像。从简单的光学滤波到现在的激光全息技术,模拟图像理论也日趋完善。最明显的特点是处理速度快,信息量小。模拟图像处理的缺点是精度较差,灵活性差和稳定性差。数字图像处理(Digitalim agep rocessing)利用数字计算机或其它的数字处理硬件,完成由模拟图像信息转换而得到的数字电信号的某种数学处理。其处理过程主要包括图像采集、图像变换、图像增强、图像存储及图像分析和理解等几方面的内容。数字图像处理与其它传统的模拟处理方法相比较,具有灵活性好、精度高、可定量分析、再现和适应性好等特点。其缺点是因为数据量庞大,处理速度还是一个问题,特别是进行复杂的处理更是如此。它涉及的领域十分广泛,是建立在数学、光学、生理学、信息学、计算机技术和电子技术等学科上的一门综合性跨学科的新兴学科。数字图像信息有以下四个特点:

(1) 信息量大。例如一帧黑白电视图像有512×512个像素,若像素用8bi[度级的二进制来表示,则有28=256个灰度级,那么一帧黑白电视图像的信息量为

1

512*512*8bit=2 097 152bit.]5[

(2) 数字图像占用的频带较宽。与语音信息相比,其占用的频带要大几个数量级。如电视视频图像的带宽为5-SMHZ,而语音带宽仅为4KHZ.]6[

(3) 数字图像中各个像素间的相关性大。例如电视视频画面中,相邻两像素的相关系数高达0.9,而相邻两帧之间的相关系数比帧内相关性还要大,因此图像信息的具有很大压缩潜力。]7[

(4) 在一般情况下,观察人员是图像效果的最终评价者。观察的效果是评价X 射线底片图像处理系统图像处理后的图像标准,故图像处理要考虑人的生理和心理因素的影响。因此要求系统与人的具有良好配合性。]8[

1.2数字图像处理的应用

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

航天和航空技术方面的应用]1[

数字图像处理技术在航天和航空技术方面的应用,除了JPL对月球、火星照片的处理之外,另一方面的应用是在飞机遥感和卫星遥感技术中。现在世界各国都在利用陆地卫星获取的图像进行资料调查,灭害检测,资源勘查,农业规划,城市规划,我国也陆续开展了以上诸方面的一些实际应用,并获得了良好的效果。在气象预报和对太空其他星球研究方面,数字图像处理技术也发挥了相当大的作用。

生物医学工程方面的应用]2[

数字图像处理在生物医学工程方面的应用十分广泛,而且很有成效。除了一般

2

的CT技术以外,还有一类是对医用显微图像的处理分析,如红细胞、白细胞分裂,染色体分析,癌细胞识别等,此外,在X光肺部图像增晰、超声波图像处理、心电图分析、立体定向放射治疗等医学诊断方面都广泛地应用图像处理技术。

通信工程方面的应用

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

工业和工程方面的应用]43[

在工业和工程领域中图像处理技术有着广泛的应用,如自动装配线中检测零件的质量,并对零件进行分类,印刷电路板检查,弹性力学照片的应力分析,流体力学图片的阻力和升力分析,邮政信件的自动分拣,在一些有毒、放射性环境内识别工件及物体的行状和排列状态,先进的设计和制造技术中采用工业视觉等等。其中值得一提的是研制具备视觉、听觉和触觉功能的智能机器人,将会给工农业生产带来新的激励,目前已在工业生产中的喷漆、焊接、装配中得到有效的利用。

5. 军事公安方面的应用

在军事方面图像处理和识别主要用于导弹精确末制导,各种侦查照片的判读,具有图像传输、存储和显示的军事自动化指挥系统,飞机、坦克和军舰模拟训练系

3

统等;公安业务图片的判读分析,指纹识别,人脸鉴别,不完整图片的复原,以及交通监控、事故分析等。目前已投入运行的高速公路不停车自动收费系统中的车辆和车骗自动识别都是图像处理技术成功应用的例子。

6.文化艺术方面的应用

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

1.3数字图像处理的优点

1.再现性好

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

2.处理精度高

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

3适用面宽

4

图像可以来自多种信息源,它们可以使可见光图像,也可以是不可见的波谱图像(例如X射线图像、射线图像、超声波图像或红外图像等)。从图像反映的客观实体尺度看,不可小岛电子显微图像,大到航空照片、遥感图像甚至天文望远镜图像,这些来自不同信息源的图像只要被变换为数字编码形式后,均是用二维数组表示的灰度图像(彩色图像也使由灰度图象组合成的,例如RGB图像有红、绿、蓝三个灰度图象组合而成)组合而成,因而均可用计算机来处理,即只要针对不同的图像信息源,采取相应得图象信息采集措施,图像的数字处理方法适用于任何一种图像。

4.灵活性高

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

1.4数字图像处理方法

模拟图像经过采样、量化后成为数字图像,数字图像特别适合用计算机处理。数字图像处理方法大致可分为两大类,即:空域法和变换域法。

1.4.1空域法

数字图像看作是平面中各个像素组成的二维数组,可直接对这个二维数组进行相应的图像处理。空域处理法主要有下面两大类:

(1) 邻域处理法

5

其中包括:梯度运算(Gradient Algorithm),拉普拉斯算子运算(LaplacianOperator),平滑算子运算(Smoothing Operator)和卷积运算(ConvolutionAlgorithm )。

(2) 点处理法

灰度处理 (GreyP rocessing)、二值运算、四则运算等。

1.4.2变换域法

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

6

基于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的图像分割方法及应用

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

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

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

基于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)

部分图像分割的方法(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的彩色图像分割

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)

大津法: 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的图像分割算法研究毕业设计

基于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实现最大熵法图像分割程序

%两个程序,亲测可用 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的图像分割处理

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

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

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

图像分割技术与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代码

图像分割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实现自适应图像阈值分割最大类方差法代码clear; warning off; SE = strel('diamond',4); BW1 = imread('cameraman.tif'); BW2 = imerode(BW1,SE); BW3 = imdilate(BW2,SE); BW4 = BW1-BW3; %rgb转灰度 if isrgb(BW4)==1 I_gray=rgb2gray(BW4); else I_gray=BW4; end figure,imshow(I_gray); I_double=double(I_gray);%转化为双精度 [wid,len]=size(I_gray); colorlevel=256; %灰度级 hist=zeros(colorlevel,1);%直方图 %threshold=128; %初始阈值 %计算直方图 for i=1:wid for j=1:len m=I_gray(i,j)+1; hist(m)=hist(m)+1; end end hist=hist/(wid*len);%直方图归一化 miuT=0; for m=1:colorlevel miuT=miuT+(m-1)*hist(m); end xigmaB2=0; for mindex=1:colorlevel threshold=mindex-1; omega1=0; omega2=0; for m=1:threshold-1 omega1=omega1+hist(m); end omega2=1-omega1; miu1=0; miu2=0; for m=1:colorlevel if m

基于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 MATLABto 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

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

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

基于某matlab车牌地定位与分割识别程序

基于Matlab的车牌定位与分割 经典算法 I=imread('car.jpg'); %读取图像 figure(); subplot(3,2,1),imshow(I), title('原始图像'); I1=rgb2gray(I);%转化为灰度图像 subplot(3,2,2),imshow(I1),title('灰度图像'); I2=edge(I1,'robert',0.09,'both');%采用robert算子进行边缘检测

subplot(3,2,3),imshow(I2),title('边缘检测后图像'); se=[1;1;1]; %线型结构元素 I3=imerode(I2,se); %腐蚀图像 subplot(3,2,4),imshow(I3),title('腐蚀后边缘图像'); se=strel('rectangle',[25,25]); 矩形结构元素 I4=imclose(I3,se);%图像聚类、填充图像subplot(3,2,5),imshow(I4),title('填充后图像');

I5=bwareaopen(I4,2000);%去除聚团灰度值小于2000的部分subplot(3,2,6),imshow(I5),title('形态滤波后图像'); [y,x,z]=size(I5); I6=double(I5); Y1=zeros(y,1); for i=1:y for j=1:x

if(I6(i,j,1)==1) Y1(i,1)= Y1(i,1)+1; end end end [temp MaxY]=max(Y1); figure(); subplot(3,2,1),plot(0:y-1,Y1),title('行方向像素点灰度值累计和'),xlabel('行值'),ylabel('像素'); %求的车牌的行起始位置和终止位置 PY1=MaxY; while ((Y1(PY1,1)>=50)&&(PY1>1)) PY1=PY1-1; end PY2=MaxY; while ((Y1(PY2,1)>=50)&&(PY2

MATLAB 软件使用简介 轮廓线提取 实验2 图像轮廓线提取技术 实验3 RGB向量空间中的图像分割技术 实

MATLAB 软件使用简介 MATLAB 是一个功能强大的数学软件, 它不但可以解决数学中的数值计算问题, 还可以解决符号演算问题, 并且能够方便地绘出各种函数图形。MATLAB自1984年由美国的MathWorks公司推向市场,现已成为国际最优秀的科技应用软件之一。 一、MATLAB 的工作界面 启动MATLAB后, 出现MATLAB命令窗口,空白区域是MATLAB 的工作区, 在此可输入和执行命令。 二、 MATLAB 操作的注意事项 ●在工作区输入MATLAB命令后, 按下Enter键才能执行命令。 ●MATLAB 是区分字母大小写的。 ●如果不想显示结果,只要在所输入命令的后面加上一个分号“;”即可。 如:x= 2 + 3↙ x=5 x = 2 + 3 ; ↙不显示结果5 ●如果一个表达式一行写不下,可以在行尾键入“...”来换行。 如:q=5^6+sin(pi)+exp(3)+(1+2+3+4+5) ... -5+1/2-567 ●命令行与M文件中的百分号“%”标明注释。 三、MATLAB的变量与表达式 ●MATLAB的变量名 MATLAB的变量名是用一个字母打头,后面最多跟19个字母或数字。应该注意不要用MATLAB中的内部函数或命令名作为变量名。列出当前工作空间中的变量命令为: who 将内存中的当前变量以简单形式列出; whos 列出当前内存变量的名称、大小、类型等信息;

clear 清除内存中的所有变量与函数。 ● MATLAB 常用的预定义变量 ans :保存计算结果的缺省变量;Inf 或inf :无穷大; i 或j pi :圆周率π。 ● MATLAB 的运算符 数学运算符:+,-,*, \(左除), / (右除) , ^ (乘幂) 关系运算符:<, >, <=, >=, = =(等于), ~= (不等于) 逻辑运算符:&(逻辑与), |( 逻辑或), ~( 逻辑非) ● MATLAB 的表达式及语句 表达式由运算符、函数、变量名和数字组成的式子。MATLAB 语句由变量、表达式及MATLAB 命令组成,用户输入的语句由MATLAB 系统解释运行。MATLAB 语句的2种最常见的形式为: 形式1:表达式 形式2:变量=表达式 在第一种形式中,表达式运算后产生的结果如果为数值类型,系统自动赋值给变量ans ,并显示在屏幕上。 例1:用两种形式计算3 6sin 5e ++π算术运算结果。 解:形式1: 5^6+sin(pi)+exp(3) ↙ ans = 1.5645e+004 形式2: a=5^6+sin(pi)+exp(3) ↙ a = 1.5645e+004 例2:已知矩阵 ?? ? ???=???? ??=22 11 ,2121B A ,对它们做简单的关系与逻辑运算 解:A=[1,2;1,2]; ↙ B=[1,1;2,2]; ↙ C=(A

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