我正在做一个拇指识别项目。以下是我正在读取 42 X 25 顺序的 118 张图像并将它们存储在训练矩阵中的代码。
training=zeros(118, 1050);
imagefiles = dir('*.png');
nfiles = length(imagefiles);
for ii=1:nfiles
currentfilename = imagefiles(ii).name;
I = imread(currentfilename);
BW=im2bw(I,graythresh(I));
temp = reshape(BW,1,1050);
training(ii,:)=temp;
end
现在我正在创建一个 labelData 矩阵来为图像分配标签。
labelData = zeros(118,1);
labelData(1:50,:) = 0;
labelData(51:83,:) = 1;
labelData(84:118,:) = 2;
在这里,我通过提供训练数据和标签数据来训练我的系统。
options=optimset('MaxIter',5000);
SVMStruct = svmtrain(training,labelData,'Kernel_Function','linear','QuadProg_Opts',options);
但是当我运行这段代码时,它给了我一个错误,比如
Error 1 : SVMTRAIN only supports classification into two groups. GROUP contains 3 groups.
Error 2 : SVMStruct = svmtrain(training,labelData,'Kernel_Function','linear','QuadProg_Opts',options);
请帮助我在它工作正常之前我使用它的问题是什么,但现在我不知道发生了什么。提前致谢。