killed some warnings, cam control
| | |
| | | } |
| | | |
| | | #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); |
| | |
| | | } |
| | | #endif |
| | | |
| | | void show_image(image p, char *name) |
| | | void show_image(image p, const char *name) |
| | | { |
| | | #ifdef OPENCV |
| | | show_image_cv(p, name); |
| | |
| | | #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); |
| | |
| | | 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); |
| | |
| | | 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); |
| | |
| | | #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; |
| | |
| | | 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); |
| | | } |
| | |
| | | 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); |
| | |
| | | |
| | | srand(2222222); |
| | | |
| | | cv::VideoCapture cam(0); |
| | | cv::VideoCapture cam(cam_index); |
| | | cap = cam; |
| | | if(!cap.isOpened()) error("Couldn't connect to webcam.\n"); |
| | | |
| | |
| | | } |
| | | } |
| | | #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 |