Problem with evaluate(i?magecatego?ryclassifi?er) function from Vision System tool box

Technical Source
2 min readJan 27, 2022

--

Hello Matlab communtiy, I have a quich question to the evaluate(imagecategoryclassifier) function in matlab. I tried the given sample code, but it seems to missmatch some predicted labels considering the calculated scores. In the help it states that the predicted label corresponds to the highest value given by the score. After I run the example multiple times, it seemed to missmatch at least two labels. Here is the code I ran and the output it produced:

setDir = fullfile(toolboxdir('vision'),'visiondata','imageSets'); imgSets = imageSet(setDir, 'recursive');
[trainingSets, testSets] = partition(imgSets, 0.3, 'randomize');
bag = bagOfFeatures(trainingSets,'Verbose',false);
categoryClassifier = trainImageCategoryClassifier(trainingSets, bag);
[confMat,knownLabelIdx,predictedLabelIdx,score] = evaluate(categoryClassifier, testSets);
disp(score); disp(predictedLabelIdx);
-0.6226 -0.3774
-0.6509 -0.3491
-0.4416 -0.5584
-0.4953 -0.5047
-0.6226 -0.3774
-0.6509 -0.3491
-0.4416 -0.5584
-0.4953 -0.5047
2
1
1
1
2
2
1
1

So here I don’t understand why the second predicted label is 1 and not 2. The rest makes sense to me.

NOTE:-

Matlabsolutions.com provide latest MatLab Homework Help,MatLab Assignment Help for students, engineers and researchers in Multiple Branches like ECE, EEE, CSE, Mechanical, Civil with 100% output.Matlab Code for B.E, B.Tech,M.E,M.Tech, Ph.D. Scholars with 100% privacy guaranteed. Get MATLAB projects with source code for your learning and research.

Thanks for reporting this issue. This is a bug. The predicted labels are correct, but the scores are not.

I can create a patched version for you. What release are you using?

EDIT: patched version for 15a attached. You’ll need to put the patched version of the file here:

$MATLAB_ROOT/toolbox/vision/vision/

Also added patched version for 15b, which has _15b appended to it (imageCategoryClassifier_15b.m). You’ll need to download this file and remove the “_15b” from the file name before copying it over to the toolbox directory.

SEE COMPLETE ANSWER CLICK THE LINK

--

--

Technical Source
Technical Source

Written by Technical Source

Simple! That is me, a simple person. I am passionate about knowledge and reading. That’s why I have decided to write and share a bit of my life and thoughts to.

No responses yet