我正在使用Matlab来处理这个简单的图像分类器。 我有两个图像阵列,如下所示:
DataSet = cell([], 1);
TestSet = cell([], 1);
我使用循环填充这些数组,如下所示:
DataSet{j} = double(imresize(tempImage,[width height]));
此外,train_label
定义如下,并帮助分离两个类别:
train_label = zeros(size(10,1),1);
train_label(1:5,1) = 1; % 1 = my first category of images
train_label(6:10,1) = 2; % 2 = my second category of images
我现在正在训练SVM分类器如下:
SVMvar = svmtrain(Training_Set , train_label, 'kernel_function', 'linear');
现在,我可以通过此分类器传递图像,并使用svmclassify
获得可接受的结果。
我的问题是,如何在图表上绘制测试数据(和支持向量),以便我可以看到他们与第1类或第2类分类的距离有多近?
我意识到我使用的是线性内核,但我读到的大多数材料表明我需要绘制一个3D图形。为什么它是3D图形而不是2D图形,我该怎么做?