1

我目前正在使用 PRtools。我非常坚持我正在做的事情。

请谁能指导我如何从训练数据集到分类器?我查看的训练和测试数据的所有示例都是从同一数据集生成的,在本例中为 A,随机生成如下:

A=datafile(2:end,1:end-1);
labs=datafile(2:end,end);
A=dataset(A,labs);
A=setprior(A,[0.5 0.5]);
[B,C] = gendat(A,0.2);
W = pca(B,2);  % compute PCA on training set only
A2 = A*W;      % maps all data to 2D
B2 = B*W;      % maps training set to 2D
C2 = C*W;      % maps test set to 2D
figure; gridsize(50); scatterd(A2,'legend');
V = B2*ldc;    % compute classifier in 2D
plotc(V);      % plot in 2D
D = C2*V;      % classify
testc(D);      % compute error
confmat(D)     % compute confusion matrix 

但是,我有不同纹理的训练图像。计算特征;

train = dataset(double(glcm_features));     
train_label = setlabels(a, label(:,1));

但我的测试图像是单个图像上 2 个或多个纹理的组合:http: //i.imgur.com/hLjPh.jpg

请任何人都可以给我一些指导我需要做什么才能做到这一点?我被卡住了,因为我显然没有测试集的标签,而且它给了我错误,说应该有标签......

请帮忙。先感谢您。

========================更新

我真正想做的是,如何让程序对包含多个纹理的图像中的纹理进行分类

在此处输入图像描述

4

1 回答 1

0

首先我不明白你想做什么。但是,要计算分类错误,您需要随身携带真实/真实标签。但是正如您所说,您没有测试集的标签,因此您无法计算错误。

但是,通常所做的是将训练集分为两组,分别称为训练集和验证集。您使用训练集进行训练,并在您拥有真实标签的验证集上计算分类错误。

假设您的测试集和训练集来自相同的分布,您可以将验证集上计算的错误概括为测试集上的预期错误。

于 2012-05-01T07:15:00.760 回答