我的項目是使用MATLAB中的SVM分類器進行急性腦卒中分類。使用GLCM特徵的SVM分類器
下面的屏幕截圖顯示了使用glcm(其被稱爲svm分類器的訓練數據)的13個特徵提取急性腦卒中(21個患者)和正常腦(6個患者)。
以下屏幕截圖顯示Y
或組訓練數據。
這是我使用的代碼和它的顯示錯誤。
Load Trainset.mat
data = new_var;
group = label;
SVMStruct = svmtrain(data, group, 'kernel_function', 'linear');
newClasses = svmclassify(SVMStruct, texturedata, 'showplot', true);
%To plot classification graphs, SVM can take only two dimensional data
data1 = [new_var(:, 1), new_var(:, 2)];
newfeat = [texturedata(:, 1), texturedata(:, 2)];
SVMStruct_new =
svmtrain(data, group, 'kernel_function', 'linear', 'showplot', true);
%species_Linear_new = svmclassify(SVMStruct_new, newfeat, 'showplot', true);
警告:Y包含沒有出現在這些水平將用於訓練分類而言可以忽略Y的元素絕對水平。 在svmtrain at 277
使用svmtrain時出錯(第335行) Y必須包含方法'SMO'的恰好兩個組。
我認爲這是因爲正常大腦的值0
和NAN
該行被忽略。所以我的問題是:我應該怎麼做才能包含這一行,或者它絕對不適用於此代碼?
怎樣的方式,我可以得到更好的數據集?我怎麼能用正確的方式計算glcm?請問你能給我先生的方式嗎?對於急性腦卒中,我使用glcm提取急性腦卒中的參考圖像,而對於健康的腦卒中,我使用黑色圖像,因爲我雖然在對正常圖像進行分割時結果使圖像變黑,因爲沒有腦卒中。 –
使用黑色圖像不起作用。我不知道你如何獲得更好的數據集。這是你必須解決的問題 – harshkn
或者我可以將雙數組轉換爲其他參數? –