Object Detection using Yolov3 results : yolo insert of multiple boxes for the same object

조회 수: 5 (최근 30일)
Hello Matlabers,
I am usong YOLO v3 on matlab 2021a to recognize objects using YOLOv3 detector pretrained on COCO dataset.
the detector initiation is performed as:
name = 'tiny-yolov3-coco';
detector = yolov3ObjectDetector(name);
after the detection , I insert the bounding boxes using insertObjectAnnotation function
my problem is that the detector shows multiple boxes for the same object as shown in the image bellow
I am using grayscale image with replicated channels as Image=[gray, gray, gray]
the detection part is performed as follow:
[bboxes,scores,labels] = detect(detector,Image);
detected = insertObjectAnnotation(Image,'rectangle',bboxes,strcat(string(labels),{' - '},num2str(scores)));
what could be the problem and what are the possible solutions?
regards,

채택된 답변

Vivek Akkala
Vivek Akkala 2022년 4월 28일
Hi,
You can use selectStrongestBboxMulticlass to suppress the detections. Try lowering the "OverlapThreshold" of selectStrongestBboxMulticlass function. Following is the reference code:
[updatedBboxes, updatedScores, updatedClassNames] = selectStrongestBboxMulticlass(bboxes, scores, labels ,...
'RatioType', 'Union', 'OverlapThreshold', 0.3);
bboxes, scores and lables in the above code can be obtained from the detect(detector,image).
  댓글 수: 1
ahcen aliouat
ahcen aliouat 2022년 4월 29일
Hi vivek,
Thank you for the sugestition, it helps me.
I have tried it before and the problem was that it eliminate the two inserted boxes in many cases. Which significantly reduce the accuracy. but as you said , I have to lowerise the overlap threshold to get best performances.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by