#include "stdafx.h"
// Brief Sample of using OpenCV dnn module in real time with device capture, video and image.
#include <opencv2/dnn.hpp>
#include <opencv2/dnn/shape_utils.hpp>
#include <opencv2/imgproc.hpp>
#include <opencv2/highgui.hpp>
#include <fstream>
#include <iostream>
#include <algorithm>
#include <cstdlib>
using namespace std;
using namespace cv;
using namespace cv::dnn;
static const char* about =
"This sample uses You only look once (YOLO)-Detector (https://arxiv.org/abs/1612.08242) to detect objects on camera/video/image.\n"
"Models can be downloaded here: https://pjreddie.com/darknet/yolo/\n"
"Default network is 416x416.\n"
"Class names can be downloaded here: https://github.com/pjreddie/darknet/tree/master/data\n";
static const char* params =
"{ help |false | print usage }"
"{ cfg |yolov3-voc.cfg | yolov3-voc.cfg}" //模型配置文件
"{ model |yolov3.weights |yolov3.weights}" //模型权重文件
"{ camera_device | 0 | 0}" //摄像头
"{ source | road.avi |road.avi}" //图片路径
"{ save | | path/}" //可设置保存文件路径
"{ fps | 3 | 3 }"
"{ style | box | box }"
"{ min_confidence | 0.24 | 0.24 }" //最小置信阀值
"{ class_names | voc.names| voc.names }"; //分类文件
int main(int argc, char** argv)
{
/*CommandLineParser parser(argc, argv, params);
if (parser.get<bool>("help"))
{
cout << about << endl;
parser.printMessage();
return 0;
}*/
//String modelConfigur