私はプロジェクトの親指の認識に取り組んでいます。以下は、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);
正常に動作する前に使用した問題を教えてください。しかし、今は何が起こっているのかわかりません。前もって感謝します。