Joseph Redmon
2015-11-17 b394337824c59dd970b87c5978fe4e8b94b85cb2
killed some warnings, cam control
4 files modified
28 ■■■■■ changed files
src/image.c 6 ●●●● patch | view | raw | blame | history
src/image.h 4 ●●●● patch | view | raw | blame | history
src/yolo.c 12 ●●●●● patch | view | raw | blame | history
src/yolo_kernels.cu 6 ●●●● patch | view | raw | blame | history
src/image.c
@@ -201,7 +201,7 @@
}
#ifdef OPENCV
void show_image_cv(image p, char *name)
void show_image_cv(image p, const char *name)
{
    int x,y,k;
    image copy = copy_image(p);
@@ -244,7 +244,7 @@
}
#endif
void show_image(image p, char *name)
void show_image(image p, const char *name)
{
#ifdef OPENCV
    show_image_cv(p, name);
@@ -254,7 +254,7 @@
#endif
}
void save_image(image im, char *name)
void save_image(image im, const char *name)
{
    char buff[256];
    //sprintf(buff, "%s (%d)", name, windows);
src/image.h
@@ -43,8 +43,8 @@
image collapse_images_horz(image *ims, int n);
image collapse_images_vert(image *ims, int n);
void show_image(image p, char *name);
void save_image(image p, char *name);
void show_image(image p, const char *name);
void save_image(image p, const char *name);
void show_images(image *ims, int n, char *window);
void show_image_layers(image p, char *name);
void show_image_collapsed(image p, char *name);
src/yolo.c
@@ -21,7 +21,7 @@
        float prob = probs[i][class];
        if(prob > thresh){
            int width = pow(prob, 1./2.)*10+1;
            //width = 8;
            width = 8;
            printf("%s: %.2f\n", voc_names[class], prob);
            class = class * 7 % 20;
            float red = get_color(0,class,classes);
@@ -427,14 +427,18 @@
#endif
 */
void demo_yolo(char *cfgfile, char *weightfile, float thresh);
void demo_yolo(char *cfgfile, char *weightfile, float thresh, int cam_index);
#ifndef GPU
void demo_yolo(char *cfgfile, char *weightfile, float thresh){}
void demo_yolo(char *cfgfile, char *weightfile, float thresh, int cam_index)
{
    fprintf(stderr, "Darknet must be compiled with CUDA for YOLO demo.\n");
}
#endif
void run_yolo(int argc, char **argv)
{
    float thresh = find_float_arg(argc, argv, "-thresh", .2);
    int cam_index = find_int_arg(argc, argv, "-c", 0);
    if(argc < 4){
        fprintf(stderr, "usage: %s %s [train/test/valid] [cfg] [weights (optional)]\n", argv[0], argv[1]);
        return;
@@ -447,5 +451,5 @@
    else if(0==strcmp(argv[2], "train")) train_yolo(cfg, weights);
    else if(0==strcmp(argv[2], "valid")) validate_yolo(cfg, weights);
    else if(0==strcmp(argv[2], "recall")) validate_yolo_recall(cfg, weights);
    else if(0==strcmp(argv[2], "demo")) demo_yolo(cfg, weights, thresh);
    else if(0==strcmp(argv[2], "demo")) demo_yolo(cfg, weights, thresh, cam_index);
}
src/yolo_kernels.cu
@@ -61,7 +61,7 @@
    return 0;
}
extern "C" void demo_yolo(char *cfgfile, char *weightfile, float thresh)
extern "C" void demo_yolo(char *cfgfile, char *weightfile, float thresh, int cam_index)
{
    printf("YOLO demo\n");
    net = parse_network_cfg(cfgfile);
@@ -72,7 +72,7 @@
    srand(2222222);
    cv::VideoCapture cam(0);
    cv::VideoCapture cam(cam_index);
    cap = cam;
    if(!cap.isOpened()) error("Couldn't connect to webcam.\n");
@@ -118,7 +118,7 @@
    }
}
#else
extern "C" void demo_yolo(char *cfgfile, char *weightfile, float thresh){
extern "C" void demo_yolo(char *cfgfile, char *weightfile, float thresh, int cam_index){
    fprintf(stderr, "YOLO demo needs OpenCV for webcam images.\n");
}
#endif