模式识别课程设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

模式识别

课程设计

关于黄绿树叶的分类问题

成员:李家伟2015020907010

黄哲2015020907006

老师:程建

学生签字:

一、小组分工

黄哲:数据采集以及特征提取。

李家伟:算法编写设计,完成测试编写报告。

二、特征提取

选取黄、绿树叶各15片,用老师给出的识别算法进行特征提取

%Extract the feature of the leaf

clear, close all

I = imread('/Users/DrLee/Desktop/kmeans/1.jpg');

I = im2double(I);

figure, imshow(I)

n = input('Please input the number of the sample regions n:');

h = input('Please input the width of the sample region h:');

[Pos] = ginput(n);

SamNum = size(Pos,1);

Region = [];

RegionFeatureCum = zeros((2*h+1)*(2*h+1)*3,1);

RegionFeature = zeros((2*h+1)*(2*h+1)*3,1);

for i = 1:SamNum

P = round(Pos(i,:));

rectangle('Position', [P(1) P(2) 2*h+1 2*h+1]);

hold on

Region{i} = I(P(2)-h:P(2)+h,P(1)-h:P(1)+h,:);

RegionFeatureCum = RegionFeatureCum +

reshape(Region{i},[(2*h+1)*(2*h+1)*3,1]);

end

hold off

RegionFeature = RegionFeatureCum / SamNum

1~15为绿色树叶特征,16~30为黄色树叶特征,取n=3;h=1,表示每片叶子取三个区域,每个区域的特征为3*3*3维的向量,然后变为27*1的列向量,表格如下。

三、在matlab中用K均值算法聚类分析利用matlab中的K均值函数形式

其中x为这30个样本的特征向量。

将数据列表导入matlab空间,用列表读取函数

X=xlsread( ‘总和.numbers,'A2:AD28');

[Idx,C,sumD,D]=kmeans(X’,2,’dist’,'sqEuclidean','rep',4);而后是分类情况的函数

close all;clear all;clc;

load(‘D.mat')

for i = 1:15

plot(D(i,1),D(i,2),’*b');

hold on;

plot(D(i+15,1),D(i+15,2),’*r');

end

x1 = [sum(D(1:15,1)) sum(D(1:15,2))];

x2 = [sum(D(16:30,1)) sum(D(16:30,2))];

x1 = x1./15; x2 = x2./15;

plot(x1(1,1),x1(1,2),'or');hold on;

plot(x2(1,1),x2(1,2),'ob');hold on;

xlabel(‘x1');ylabel('x2');

text(x1(1,1)+0.1,x1(1,2)+0.2 ,’第一类');

text(x2(1,1)+0.1,x2(1,2)+0.1 ,'第二类');

之后利用算法查看分类情况:

可以得知成功分成了2类。

相关文档
最新文档