解决YOLOv3recall低的问题

解决YOLOv3recall低的问题

1、修改examples/detector.c中validate_detector_recall函数

list *plist = get _path("test.txt")  //你的验证集路径

2、计算recall

./darknet detector recall <.data> <.cfg> <.weights>

你会发现recall怎么这么低?
3、查到github上解决办法
fix error in validate_detector_recall #952
修改validate_detector_recall函数

            ++total;
            box t = {truth[j].x, truth[j].y, truth[j].w, truth[j].h};
            float best_iou = 0;
            // for(k = 0; k < l.w*l.h*l.n; ++k){
            for(k = 0; k < nboxes; ++k){  //用这个
                float iou = box_iou(dets[k].bbox, t);
                if(dets[k].objectness > thresh && iou > best_iou){
                    best_iou = iou;

4、查看是否提高了recall?
解决YOLOv3recall低的问题_第1张图片

你可能感兴趣的:(错误)