Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Opencv 使用暗网进行训练后获得预测_Opencv_Neural Network_Deep Learning_Conv Neural Network - Fatal编程技术网

Opencv 使用暗网进行训练后获得预测

Opencv 使用暗网进行训练后获得预测,opencv,neural-network,deep-learning,conv-neural-network,Opencv,Neural Network,Deep Learning,Conv Neural Network,我是CNN的新手,我正在尝试使用数据集训练分类器。下面我将训练一个10类数据集的简单分类器。 我使用下面的代码对模型进行了训练,得到了cifar\u small.weights,我后来将其用于检测 ./darknet classifier train cfg/cifar.data cfg/cifar_small.cfg 训练完简单网络后,我尝试使用cifar\u small.cfg和cifar\u small.weights ./darknet detect cfg/cifar_small.c

我是CNN的新手,我正在尝试使用数据集训练分类器。下面我将训练一个10类数据集的简单分类器。

我使用下面的代码对模型进行了训练,得到了
cifar\u small.weights
,我后来将其用于检测

./darknet classifier train cfg/cifar.data cfg/cifar_small.cfg
训练完简单网络后,我尝试使用
cifar\u small.cfg
cifar\u small.weights

./darknet detect cfg/cifar_small.cfg cifar_small.weights data/dog.jpg
层过滤器大小输入输出
0转换32 3 x 3/1 28 x 28 x 3->28 x 28 x 32
1个最大2 x 2/2 28 x 28 x 32->14 x 14 x 32
2个conv 64 3 x 3/1 14 x 14 x 32->14 x 14 x 64
3个最大2 x 2/2 14 x 14 x 64->7 x 7 x 64
4 conv 128 3 x 3/1 7 x 7 x 64->7 x 7 x 128
5conv101x1/17x7x128->7x7x10
6平均7 x 7 x 10->10
7 softmax 10
8个成本10个装载重量
来自cifar\u small。重量…完成
data/dog.jpg:在中预测 0.007035秒。
未使用OpenCV编译,而是保存到predictions.png

它不会预测端子中的值,也不会在输出图像上绘制边界框。图像的输出与输入相同。

当我尝试使用
yolo.cfg
和预先训练的
yolo.weights
对同一图像进行预测时,其工作原理如下所示

层过滤器大小输入输出
0转换32 3 x 3/1 416 x 416 x 3->416 x 416 x 32
1个最大2 x 2/2 416 x 416 x 32->208 x 208 x 32
2 conv 64 3 x 3/1 208 x 208 x 32->208 x 208 x 64
3个最大2 x 2/2 208 x 208 x 64->104 x 104 x 64
4转换128 3 x 3/1 104 x 104 x 64->104 x 104 x 128
5节conv 64 1 x 1/1 104 x 104 x 128->104 x 104 x 64
6 conv 128 3 x 3/1 104 x 104 x 64->104 x 104 x 128
7最大2 x 2/2 104 x 104 x 128->52 x 52 x 128
8 conv 256 3 x 3/1 52 x 52 x 128->52 x 52 x 256
9 conv 128 1 x 1/1 52 x 52 x 256->52 x 52 x 128
10 conv 256 3 x 3/1 52 x 52 x 128->52 x 52 x 256
11最大2 x 2/2 52 x 52 x 256->26 x26x256
12 conv 512 3x3/126x26x256->
26 x 26 x 512
13 conv 256 1 x 1/1 26 x 26 x 512-> 26 x 26 x 256
14 conv 512 3 x 3/1 26 x 26 x 256-> 26 x 26 x 512
15 conv 256 1 x 1/1 26 x 26 x 512-> 26 x 26 x 256
16 conv 512 3 x 3/1 26 x 26 x 256-> 26 x 26 x 512
17最大2 x 2/2 26 x 26 x 512-> 13 x 13 x 512
18 conv 1024 3 x 3/1 13 x 13 x 512-> 13 x 13 x1024
19 conv 512 1 x 1/1 13 x 13 x1024-> 13 x 13 x 512
20 conv 1024 3 x 3/1 13 x 13 x 512-> 13 x 13 x1024
21 conv 512 1 x 1/1 13 x 13 x1024-> 13 x 13 x 512
22 conv 1024 3 x 3/1 13 x 13 x 512-> 13 x 13 x1024
23 conv 1024 3 x 3/1 13 x 13 x1024-> 13 x 13 x1024
24 conv 1024 3 x 3/1 13 x 13 x1024-> 13 x 13 x1024
25路线16
26 reorg/2
26 x 26 x 512->13 x 13 x2048
27路线26 24
28 conv 1024 3 x 3/1 13 x 13 x3072->13 x 13 x1024

29 conv 425 1 x 1/1 13 x 13 x1024->13 x 13 x 425
30检测
从yolo加载重量。重量…完成
data/dog.jpg:预测时间为11.057513秒。
汽车:54%
自行车:51%
狗:56%


它与输出图像中的边界框一起按预期进行预测。

我认为您应该使用以下命令:

./darknet classify cfg/cifar_small.cfg cifar_small.weights data/dog.jpg

检查这里:

在/examples/darknet.c(第422~500行)中,您可以看到darknet框架对“./darknet”之后的每个函数输入都做了什么。 在本例中,“/.darknet classification~”使函数“predict_classifier”在examples/classifier.c run中运行

预测结果由第601~606行的部件打印(在分类器c中)

for(i=0;i
for(i = 0; i < top; ++i)
{
    int index = indexes[i];
    printf("%5.2f%%: %s\n", predictions[index] * 100, names[index]);
}