如何使用经过训练的svm模型预测图像是否包含汽车对象

时间:2019-04-11 03:56:22

标签: matlab svm

我想使用svm对图像是否包含汽车进行分类。

我使用HOG训练了svm分类器。然后,我尝试使用分类器,因此我查找了某些Mathworks教程。 我无法对使用svm分类器的任何有用教程进行罚款。

我使用来自http://cogcomp.org/Data/Car/的数据集

这是我的svm分类器代码。

imgPos = imread(strrep(file, '*', int2str(0)));

[hog_4x4, vis4x4] = extractHOGFeatures(imgPos,'CellSize',[4 4]);
cellSize = [4 4];
hogFeatureSize = length(hog_4x4);

temp(1:500) = 1;
temp(501:1000) = 0;

trainingLabels = categorical(temp);
trainingFeatures = zeros(fileNum*2, hogFeatureSize, 'single');

for n = 1:500
    posfile = strrep(posFile, "*", int2str(n-1));
    imgPos = imread(posfile); 
    trainingFeatures(n, :) = extractHOGFeatures(imgPos, 'CellSize', cellSize);

    negfile = strrep(negFile, "*", int2str(n-1));
    imgNeg = imread(negfile);
    trainingFeatures(n+500, :) = extractHOGFeatures(imgNeg, 'CellSize', cellSize);
end

classifier = fitcecoc(trainingFeatures, trainingLabels);

我想使用分类器来检测汽车物体。 如果可能的话,我想用框架围绕每个检测到的汽车对象。

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

您正在寻找predict方法。获取测试数据功能并运行以下命令:

predictions = predict(classifier, testFeatures);