Not enough input arguments for plotting Precision-Recall curve
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Fahmi Akmal Dzulkifli
el 8 de Nov. de 2022
Comentada: Walter Roberson
el 11 de Nov. de 2022
Greetings,
I want to evaluate my Yolov3 model by plotting the Precision-Recall curve. I tried to follow the example provided in the "Object Detection Using Yolo v3 Deep Learning' (https://www.mathworks.com/help/vision/ug/object-detection-using-yolo-v3-deep-learning.html). However the error displayed as follows:
Error using plot
Not enough input arguments.
Error in testyolo (line 41)
plot(recall, precision);
May I know what is the problem with my code? My code is
celldetector = load('trainedyolov3Detector-2022-11-04-00-30-56.mat');
testData = combine(imdsTest, bldsTest);
detector = celldetector.yolov3Detector;
results = detect(detector,testData,'MiniBatchSize',8);
[ap,recall, precision] = evaluateDetectionPrecision(results, testData);
figure;
plot(recall, precision);
xlabel('Recall')
ylabel('Precision')
grid on
title(sprintf('Average precision = %.1f', ap))
0 comentarios
Respuesta aceptada
Walter Roberson
el 8 de Nov. de 2022
"For a multiclass detector, recall and precision are cell arrays, where each cell contains the data points for each object class."
So it appears you have a multi-class situation, and your recall and precision are being returned as cell arrays. plot() cannot handle cell arrays
4 comentarios
Más respuestas (0)
Ver también
Categorías
Más información sobre Graphics Performance en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!