收藏 分享(赏)

模式识别实验报告.doc

上传人:精品资料 文档编号:9572545 上传时间:2019-08-16 格式:DOC 页数:20 大小:1.04MB
下载 相关 举报
模式识别实验报告.doc_第1页
第1页 / 共20页
模式识别实验报告.doc_第2页
第2页 / 共20页
模式识别实验报告.doc_第3页
第3页 / 共20页
模式识别实验报告.doc_第4页
第4页 / 共20页
模式识别实验报告.doc_第5页
第5页 / 共20页
点击查看更多>>
资源描述

1、实 验 报 告实验课程名称: 模式识别 姓名: 王宇 班级: 20110813 学号: 2011081325 实验名称 规范程度 原理叙述 实验过程 实验结果 实验成绩图像的贝叶斯分类K 均值聚类算法神经网络模式识别平均成绩折合成绩注:1、每个实验中各项成绩按照 5 分制评定,实验成绩为各项总和2、平均成绩取各项实验平均成绩3、折合成绩按照教学大纲要求的百分比进行折合2014 年 6 月实验一、 图像的贝叶斯分类一、实验目的将模式识别方法与图像处理技术相结合,掌握利用最小错分概率贝叶斯分类器进行图像分类的基本方法,通过实验加深对基本概念的理解。二、实验仪器设备及软件HP D538、MATLAB

2、三、实验原理概念:阈值化分割算法是计算机视觉中的常用算法,对灰度图象的阈值分割就是先确定一个处于图像灰度取值范围内的灰度阈值,然后将图像中每个像素的灰度值与这个阈值相比较。并根据比较的结果将对应的像素划分为两类,灰度值大于阈值的像素划分为一类,小于阈值的划分为另一类,等于阈值的可任意划分到两类中的任何一类。最常用的模型可描述如下:假设图像由具有单峰灰度分布的目标和背景组成,处于目标和背景内部相邻像素间的灰度值是高度相关的,但处于目标和背景交界处两边的像素灰度值有较大差别,此时,图像的灰度直方图基本上可看作是由分别对应于目标和背景的两个单峰直方图混合构成。而且这两个分布应大小接近,且均值足够远,

3、方差足够小,这种情况下直方图呈现较明显的双峰。类似地,如果图像中包含多个单峰灰度目标,则直方图可能呈现较明显的多峰。上述图像模型只是理想情况,有时图像中目标和背景的灰度值有部分交错。这时如用全局阈值进行分割必然会产生一定的误差。分割误差包括将目标分为背景和将背景分为目标两大类。实际应用中应尽量减小错误分割的概率,常用的一种方法为选取最优阈值。这里所谓的最优阈值,就是指能使误分割概率最小的分割阈值。图像的直方图可以看成是对灰度值概率分布密度函数的一种近似。如一幅图像中只包含目标和背景两类灰度区域,那么直方图所代表的灰度值概率密度函数可以表示为目标和背景两类灰度值概率密度函数的加权和。如果概率密度

4、函数形式已知,就有可能计算出使目标和背景两类误分割概率最小的最优阈值。假设目标与背景两类像素值均服从正态分布且混有加性高斯噪声,上述分类问题可以使用模式识别中的最小错分概率贝叶斯分类器来解决。以 与 分别表示目标与背景的灰度1p2分布概率密度函数, 与 分别表示两类的先验概率,则图像的混合概率密度函数可用下1P2式表示为12()()()pxPpx式中 和 分别为1p221()1()xpxe2()22()x1P、 是针对背景和目标两类区域灰度均值 与 的标准差。若假定目标的灰度较亮,12 2其灰度均值为 ,背景的灰度较暗,其灰度均值为 ,因此有2112现若规定一门限值 对图像进行分割,势必会产生

5、将目标划分为背景和将背景划分为目标T这两类错误。通过适当选择阈值 ,可令这两类错误概率为最小,则该阈值 即为最佳阈T值。把目标错分为背景的概率可表示为12()()TEpxd把背景错分为目标的概率可表示为21()()T总的误差概率为212()()()EPE为求得使误差概率最小的阈值 ,可将 对 求导并令导数为零,可得TT12()()p代换后,可得221211()()lnPT此时,若设 ,则有1221211lnPT若还有 的条件,则12P12这时的最优阈值就是两类区域灰度均值 与 的平均值。12上面的推导是针对图像灰度值服从正态分布时的情况,如果灰度值服从其它分布,依理也可求出最优阈值来。一般情况

6、下,在不清楚灰度值分布时,通常可假定灰度值服从正态分布。在实际使用最优阈值进行分割的过程中,需要利用迭代算法来求得最优阈值。设有一幅数字图像 ,混有加性高斯噪声,可表示为(,)fxy(,)(,)(,)gxyfnxy此处假设图像上各点的噪声相互独立,且具有零均值,如果通过阈值分割将图像分为目标与背景两部分,则每一部分仍然有噪声点随机作用于其上,于是,目标 和1(,)gxy可表示为2(,)gxy11(,)(,)(,)gxyfnxy22迭代过程中,会多次地对 和 求均值,则1(,)xy(,)11(,)(,)EgfxynEfxy222(,),xy可见,随着迭代次数的增加,目标和背景的平均灰度都趋向于真

7、实值。因此,用迭代算法求得的最佳阈值不受噪声干扰的影响。四、实验步骤及程序1、实验步骤(1)确定一个初始阈值 , 可取为0Tminax02S式中, 和 为图像灰度的最小值和最大值。minSax(2)利用第 k 次迭代得到的阈值将图像分为目标 和背景 两大区域,其中1R21(,)|,kfxyfT2|0()(3)计算区域 和 的灰度均值 和 。1R21S(4)计算新的阈值 ,其中kT12kST(5)如果 小于允许的误差,则结束,否则 ,转步骤(2) 。 1|kk2、实验源程序I=imread(1.jpg);Im=rgb2gray(I); subplot(121),imhist(Im);title(

8、)ZMax=max(max(I);ZMin=min(min(I);TK=(ZMax+ZMin)/2;bCal=1;iSize=size(I);while(bCal)iForeground=0;iBackground=0;ForegroundSum=0;BackgroundSum=0;for i=1:iSize(1)for j=1:iSize(2)tmp=I(i,j);if(tmp=TK)iForeground=iForeground+1;ForegroundSum=ForegroundSum+double(tmp);elseiBackground=iBackground+1;Backgroun

9、dSum=BackgroundSum+double(tmp);endendendZO=ForegroundSum/iForeground;ZB=BackgroundSum/iBackground;TKTmp=double(ZO+ZB)/2);if(TKTmp=TK)bCal=0;elseTK=TKTmp;endenddisp(strcat(,num2str(TK);newI=im2bw(I,double(TK)/255);subplot(121),imshow(I)title(-)subplot(122),imshow(newI)title()五、实验结果与分析1、实验结果0200400600

10、80010001200一一一0 100 200一一一图 1 原图像以及其灰度直方图一一一 一一一一一一图 2 原图像以及分割后图像2、实验结果分析迭代后的阈值:94.8064实验中将大于阈值的部分设置为目标,小于阈值的部分设置为背景,分割结果大体上满足要求。实际过程中在利用迭代法求得最优阈值后,仍需进行一些人工调整才能将此阈值用于实验图像的分割,虽然这种方法利用了图像中所有像素点的信息,但当光照不均匀时,图像中部分区域的灰度值可能差距较大,造成计算出的最优阈值分割效果不理想。具体的改进措施分为以下两方面:一方面,在选取图片时,该图片的两个独立的峰值不够明显,因此在分割后产生误差,应改进选择的图

11、片的背景和物体的对比度,使得分割的效果更好;另一方面,实验程序中未涉及计算最优阈值时的迭代次数,无法直观的检测,应在实验程序中加入此项,便于分析。实验二、K 均值聚类算法一、实验目的将模式识别方法与图像处理技术相结合,掌握利用 K 均值聚类算法进行图像分类的基本方法,通过实验加深对基本概念的理解。二、实验仪器设备及软件HP D538、MATLAB、WIT三、实验原理K 均值聚类法分为三个步骤:初始化聚类中心1、根据具体问题,凭经验从样本集中选出 C 个比较合适的样本作为初始聚类中心。2、用前 C 个样本作为初始聚类中心。3、将全部样本随机地分成 C 类,计算每类的样本均值,将样本均值作为初始聚

12、类中心。初始聚类1、按就近原则将样本归入各聚类中心所代表的类中。2、取一样本,将其归入与其最近的聚类中心的那一类中,重新计算样本均值,更新聚类中心。然后取下一样本,重复操作,直至所有样本归入相应类中。判断聚类是否合理1、采用误差平方和准则函数判断聚类是否合理,不合理则修改分类。循环进行判断、修改直至达到算法终止条件。2、聚类准则函数误差平方和准则函数(最小平方差划分) cixiimJ12eixiN3、单样本改进:每调整一个样本的类别就重新计算一次聚类的中心 22min1kxkdljlijji i=1,2,.c 只调整一个样本四、实验步骤及程序1、实验步骤理解 K 均值算法基本原理,编写程序实现

13、对自选图像的分类,并将所得结果与 WIT 处理结果进行对比。K 均值算法步骤:1、给定类别数 C 和允许误差 ,maxE1k2、初始化聚类中心 ciki,.2,3、修正 2n1kxxdijiijji 0 其他i=1,2,c;j=1,2,.N4、修正聚类中心 Njijjii dxkm115、计算误差 如果 则结束,否则转( 3)ci iike12maxEe2、实验源程序clcclearticRGB= imread (Water lilies.jpg); %img=rgb2gray(RGB);m,n=size(img);subplot(2,2,1),imshow(img);title( -)sub

14、plot(2,2,2),imhist(img);title( -)hold off;img=double(img);for i=1:200c1(1)=25;c2(1)=125;c3(1)=200;%r=abs(img-c1(i);g=abs(img-c2(i);b=abs(img-c3(i);%r_g=r-g;g_b=g-b;r_b=r-b;n_r=find(r_g0%i=i+1;c1(i)=sum(img(n_r)/length(n_r);%c2(i)=sum(img(n_g)/length(n_g);%c3(i)=sum(img(n_b)/length(n_b);%d1(i)=abs(c1

15、(i)-c1(i-1);d2(i)=abs(c2(i)-c2(i-1);d3(i)=abs(c3(i)-c3(i-1);if d1(i)Rtocsubplot(2,2,3),imshow(img);title( ) subplot(2,2,4),imhist(img);title( ) 五、实验结果与分析1.WIT 结果图 3 WIT 聚类分析系统分析界面图 4 WIT 聚类分析系统分析结果聚类类别数 3聚类中心 R=18.8709 G=93.3122 B=190.678迭代次数 256运行时间 60.159ms2、K 均值聚类结果一一 一一一02000400060008000一一 一一一一一

16、一一一一0 100 200一一 一一一一一一024x 104 一一 一一一一一一一一一0 100 200图 5 K 均值聚类分析结果聚类类别数 3聚类中心 R =19.9483 G =94.4184 B =192.3320迭代次数 8运行时间 2.278493 seconds小结:K 均值聚类方法和 WIT 系统操作后对应的聚类中心误差较小,分别是 19.9483 94.4184 192.3320 和 18.8709 93.3122 190.678。说明 K 均值聚类分析方法误差较小,但是相较于 WIT 系统分析的时间,K 均值聚类时间较长,迭代次数较多。实验三、神经网络模式识别一、实验目的掌

17、握利用感知器和 BP 网进行模式识别的基本方法,通过实验加深对基本概念的理解。二、实验仪器设备及软件HP D538、MATLAB三、实验原理设计线性可分实验线性分类器原理:已知一样本集,如果有一个线性分类器能把每个样本正确分类,则称这组样本集为线性可分的,否则称为线性不可分的。如果样本集是线性可分的,则必然存在一个线性分类器能把每个样本正确分类。贝叶斯分类器是在错误率或风险下为最优的分类器。线性分类器针对错误率或者风险是“次优”的,但对于所采用的准则函数是最优的。线性分类器的设计步骤:1、有一已知类别的样本集 H2、确定一准则函数 J00,-, ww策 ”极 值 解 对 应 最 好 的 “决的

18、 函 数是3、利用最优化技术求出准则函数极值解 0,设计线性分类器对线性可分样本集进行分类,样本数目 10 个以上,训练及分类步骤齐全,记录分类器训练的迭代次数和训练时间。奇异样本对网络训练的影响奇异样本:该样本向量同其他样本向量比较起来特别大或特别小时,网络训练所花费的时间将很长。设计实验考察奇异样本对感知机训练的影响,比较有无奇异点时的训练时间及迭代次数,设计解决此问题的方案并实验验证。分类线性不可分样本利用线性分类器对线性不可分样本进行分类,考察训练时间及迭代次数。BP 法分类原理:根据样本希望输出与实际输出之间的平方误差最小,利用梯度下降法,从输出层开始,逐层修正权系数。一般为三层前馈

19、神经网络,激励函数为 Sigmoid 函数。前向传播阶段:输入层 输入节点:图像特征分量值输出节点: iixO隐层 输入节点: ijiwI输出节点: iiIexp1输出层 输入节点: ikkOI输出节点: kk-exp1I反向传播阶段:利用梯度下降法令误差函数最小k221kyE激励函数 f 的导数: xef1yefx12利用反向传播使某一隐层节点受所有输出层节点影响1、BP 采用 S 函数,输出不宜设为 1 或 0,可设为 0.9 或 0.1。2、权系数初始化:不应将初始值设为相同,否则在学习过程中始终不变,可设为随机值。3、步长的选择:应设为可变步长,以防止震荡。4、局部最小问题:BP 算法

20、是非线性优化算法,初始值设置不当,可能陷入局部极小。 5、前馈网络结构:输入节点数为模式维数,输出节点数一般为类别数,隐层节点数尚无明确方法,实验确定。ijjk利用 BP 网对该样本集进行分类,考察训练时间及迭代次数并作对比。四、实验步骤及程序1、实验步骤感知器实验:1、设计线性可分实验,要求训练样本 10 个以上2、奇异样本对网络训练的影响3、以线性不可分样本集训练分类器BP 网实验:利用 BP 网对上述线性不可分样本集进行分类2、实验源程序(1)感知器close all;clear;clc;tic;%PP=-5 -7 -4 -1 0 -5 4 2 -4 -2 1 4 4 3 1 -2;0

21、-5 4 2 -4 1 4 1 -1 -3 -1 7 -2 -3 5 -5;%TT=1 0 1 1 0 1 1 0 1 0 0 1 0 0 1 0;figure,plotpv(P,T);%net=newp(minmax(P),1);%-linehandle=plotpc(net.IW1,net.b1);E=1;n=0;%-while(sse(E)net,y,E=adapt(net,P,T);n=n+1;perf(n)=sse(E);linehandle=plotpc(net.IW1,net.b1,linehandle);drawnow;endtoc%figure,plot(perf);%(2)

22、奇异点clear;clc;tic;%PP=-3 -1 -5 4 2 -4 -2 1 4 3 1 -3;5 2 1 4 1 -1 -3 -1 -2 -4 5 -6;%TT=1 1 1 1 0 1 0 0 0 0 1 0;figure,plotpv(P,T);%net=newp(minmax(P),1);%-linehandle=plotpc(net.IW1,net.b1);E=1;n=0;%-while(sse(E)net,y,E=adapt(net,P,T);n=n+1;perf(n)=sse(E);linehandle=plotpc(net.IW1,net.b1,linehandle);dr

23、awnow;endtoc%figure,plot(perf);%(3)BP 网络close all;clear;clc;tic;%PP=-5 -7 -4 -1 0 -5 4 2 -4 -2 1 4 4 3 1 -2;0 -5 4 2 -4 1 4 1 -1 -3 -1 7 -2 -3 5 -5;%TT=1 0 1 0 0 1 1 0 1 0 0 1 0 0 1 0;figure,plotpv(P,T);%net=newff(minmax(P),5,5,1,tansig,purelin,logsig,trainlm);%inputWeights=net.IW1,1;inputbias=net.b

24、1;%layerWeights=net.LW2,1;layerbias=net.b2;%net.trainParam.show=300;net.trainParam.lr=0.05;net.trainParam.mc=0.9;net.trainParam.epochs=1000;net.trainParam.goal=1e-4;tic%TRAINGDMBPnet,tr=train(net,P,T);tocA=sim(net,P);E=T-A;MSE=mse(E);五、实验结果与分析1、感知器结果-10 -8 -6 -4 -2 0 2 4 6 8-8-6-4-20246810Vectors to

25、 be ClassifiedP(1)P(2)1 1.2 1.4 1.6 1.8 2 2.2 2.4 2.6 2.8 3012345678迭代次数 3 次训练时间 3.093490 seconds2、奇异点结果-8 -6 -4 -2 0 2 4 6-10-8-6-4-202468Vectors to be ClassifiedP(1)P(2)1 1.2 1.4 1.6 1.8 2 2.2 2.4 2.6 2.8 30123456迭代次数 3 次训练时间 0.270504 seconds3、BP 网络结果-10 -8 -6 -4 -2 0 2 4 6 8-8-6-4-20246810Vectors

26、 to be ClassifiedP(1)P(2)0 1 2 3 4 5 6 7 8 9 10 1110-510-410-310-210-1100Best Training Performance is 4.3132e-05 at epoch 11Mean Squared Error (mse)11 EpochsTrainBestGoal迭代次数 11 次训练时间 1 seconds小结:1.感知器网络通过网络训练得到的结果矢量与目标矢量做差,得到的误差平方和与 0 比较,若不为 0,则继续经过感知器网络直到它能够将输入的样本分开并且结果和目标矢量一致,即误差平方和为 0,实验中经过了 3 次迭代最终得到结果。2.奇异点对于实验训练数据产生较大影响,影响了正常的训练速度,增加了迭代次数,应通过 learnpn 函数去除奇异点。2.当输入训练数据线性不可分的前提下,实验数据在 BP 网络法下进行 11 次目标训练之后,达到了目标要求,训练的结果和目标的误差收敛于程序中定义的误差,所以经过训练的 BP网络可以对线性不可分网络进行分类。每次运行的 BP 网络可以得到不同的结果。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报