MMOD Dlib对象检测器检测到一组不可能的对象标签

时间:2017-07-07 08:49:45

标签: machine-learning computer-vision dlib

您好我正在尝试为道路标志训练探测器,类似于fhog_object_detector_ex.cpp。我将裁剪的地面实况图像放在 stopsign_train 文件夹中。

string stopsign_train = "/media/user/DATA/Dataset/StopSignModeling/train             
/01/";

std::vector<string> imgListTrain, imgListValidation ;
listAllFiles(imgListTrain, stopsign_train, "png");

dlib::array<array2d<dlib::rgb_pixel > > images_train ;
std::vector<std::vector<rectangle> > stop_boxes_train ;

 //filling the stop_boxes_train and images_train

    for(unsigned int ii=0; ii < imgListTrain.size(); ii++){
        string fileName = stopsign_train + imgListTrain[ii];
        dlib::array2d<dlib::rgb_pixel > tmpImg ;
        load_png(tmpImg, fileName);
        array2d<rgb_pixel> sizeImg(18, 18);
        resize_image(tmpImg, sizeImg, interpolate_nearest_neighbor());
        images_train.push_back(sizeImg);
        dlib::rectangle tmpRect(dlib::point(2, 2), dlib::point(16, 16)) ;
        std::vector<rectangle> tmpVecRect ;
        tmpVecRect.push_back(tmpRect);
        stop_boxes_train.push_back(tmpVecRect);
    }
typedef scan_fhog_pyramid<pyramid_down<6> > image_scanner_type;
image_scanner_type scanner;
// The sliding window detector will be 16 pixels wide and 16 pixels tall.
scanner.set_detection_window_size(16, 16);
// I have tried 12 by 12 as well as 14 by 14 (samller than the   
 stop_boxes_train rectangle size as well as exact also)
int C = 1;
trainer.set_c(C);
float eps = 0.01 ;
trainer.set_epsilon(eps);
object_detector<image_scanner_type> detector = trainer.train(images_train,    
stop_boxes_train);

总是存在类似输出的异常,如下所示 的 -------------------------------------------

num training图片:2284

异常抛出! 检测到一组不可能的对象标签。发生这种情况是因为没有 由提供的图像扫描仪检查的对象位置是否足够接近 匹配其中一个真值框。要解决此问题,您需要降低 match_eps或调整图像扫描仪的设置,使其达到此目的 真相盒。或者你可以调整有问题的真实矩形,这样就可以了 与当前的图像扫描仪匹配。另外,如果您正在使用 scan_image_pyramid对象然后你可以尝试使用更精细的图像金字塔或 添加更多检测模板。例如。如果您现有的检测之一 模板具有匹配的宽度/高度比,并且面积小于违规 矩形然后更精细的图像金字塔可能会有所帮助。

图像索引0

match_eps:0.5

最佳匹配:0.0926276

真相矩形:[(2,2)(16,16)]

真相矩形/高度:1

真实地区:225

最近检测模板rect:[(10,10)(24,24)]

最近检测模板rect width / height:1

最近检测模板rect区域:225

0 个答案:

没有答案