预览加载中,请您耐心等待几秒...
1/5
2/5
3/5
4/5
5/5

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

一、基于FCM的图像分割(调用FCM函数) clc clearall I=imread('14.jpg'); figure,imshow(I) I2=rgb2gray(I); figure,imshow(I2) I3=reshape(I2,10000,1); I4=im2double(I3); [center,U,obj_fcn]=fcm(I4,2); z1=center(1,:);z2=center(2,:); fori=1:10000%分别计算每个样本到个聚类中心的欧式距离 f1=imsubtract(I4(i,:),z1); D1(:,i)=sqrt(f1*f1'); f2=imsubtract(I4(i,:),z2); D2(:,i)=sqrt(f2*f2'); end D=[D1;D2]; fori=1:10000%并按最近邻规则聚类 ifD1(:,i)==min(D(:,i)')%样本中心稳定,则为最终聚类结果 s1(i,:)=zeros(1,1); else s1(i,:)=ones(1,1); end end fori=1:10000 ifD2(:,i)==min(D(:,i)') s2(i,:)=zeros(1,1); else s2(i,:)=ones(1,1); end end a1=reshape(s1,100,100); a2=reshape(s2,100,100); figure,imshow(a1)%样本S1组成的图像 figure,imshow(a2)%样本S2组成的图像 二、基于HCM的灰度图像分割 预备知识: 1.K—均值算法(HCM) 依据准则函数进行分类,具体内容:先选择K个聚类中心,然后根据聚类准则对K个中心反复修改(用迭代法),直至分类合理。聚类过程中,聚类中心数目不变。属于一种硬分类。 2.模糊C均值算法(FCM) 将上述硬分类模糊化,引入隶属度函数,定义聚类损失函数,并使其最小化(用迭代法求解)。当算法收敛时,可得到各类聚类中心和各个样本对于各类的隶属度值,从而完成模糊聚类划分。Matlab自带了FCM函数,如下例: function[center,U,obj_fcn]=FCM(data,cluster_n,options)%FCM.m采用模糊C均值对数据集data聚为cluster_n类%用法:%1.[center,U,obj_fcn]=FCM(Data,N_cluster,options);%2.[center,U,obj_fcn]=FCM(Data,N_cluster);%输入:%data----nxm矩阵,表示n个样本,每个样本具有m的维特征值%N_cluster----标量,表示聚合中心数目,即类别数%options----4x1矩阵,其中%options(1):隶属度矩阵U的指数,>1(缺省值:2.0)%options(2):最大迭代次数(缺省值:100)%options(3):隶属度最小变化量,迭代终止条件(缺省值:1e-5)%options(4):每次迭代是否输出信息标志(缺省值:1)%输出:%center----聚类中心%U----隶属度矩阵%obj_fcn----目标函数值%Example:%data=rand(100,2);%[center,U,obj_fcn]=FCM(data,2);%plot(data(:,1),data(:,2),'o');%holdon;%maxU=max(U);%index1=find(U(1,:)==maxU);%index2=find(U(2,:)==maxU);%line(data(index1,1),data(index1,2),'marker','*','color','g');%line(data(index2,1),data(index2,2),'marker','*','color','r');%plot([center([12],1)],[center([12],2)],'*','color','k')%holdoff; 3.图像分割 基本原理:根据图像的组成结构和应用需求将图像划分为若干个互不相交的子区域的过程。这些子区域四某种意义下具有共同属性的像素的连通集合。常用方法有: 以区域为对象进行分割,以相似性原则作为分割的依据,即可根据图像的灰度、色彩、变换关系等方面的特征相似来划分图像的子区域,并将各像素划归到相应物体或区域的像素聚类方法,即区域法; 以物体边界为对象进行分割,通过直接确定区域间的边界来实现分割; 先检测边缘像素,再将边缘像素连接起来构成边界形成分割。 本课题要求采用聚类算法进行图像分割,即将样本像素归为两类(目标和背景),并以0或1来分别赋阈值,处理结果类似于二值化。 图像