From 6c54f5ffb240f0c97b7d33a55ce852716d422919 Mon Sep 17 00:00:00 2001
From: AlexeyAB <alexeyab84@gmail.com>
Date: Wed, 06 Jun 2018 23:20:44 +0000
Subject: [PATCH] Show inconsistent information if it is present in .cfg and .names files
---
src/network.c | 11 +++++++++--
1 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/src/network.c b/src/network.c
index 6e50d54..b32dfc0 100644
--- a/src/network.c
+++ b/src/network.c
@@ -582,7 +582,7 @@
box *boxes = calloc(l.w*l.h*l.n, sizeof(box));
float **probs = calloc(l.w*l.h*l.n, sizeof(float *));
int i, j;
- for (j = 0; j < l.w*l.h*l.n; ++j) probs[j] = calloc(l.classes, sizeof(float *));
+ for (j = 0; j < l.w*l.h*l.n; ++j) probs[j] = calloc(l.classes, sizeof(float));
get_region_boxes(l, 1, 1, thresh, probs, boxes, 0, map);
for (j = 0; j < l.w*l.h*l.n; ++j) {
dets[j].classes = l.classes;
@@ -602,12 +602,18 @@
void fill_network_boxes(network *net, int w, int h, float thresh, float hier, int *map, int relative, detection *dets, int letter)
{
+ int prev_classes = -1;
int j;
for (j = 0; j < net->n; ++j) {
layer l = net->layers[j];
if (l.type == YOLO) {
int count = get_yolo_detections(l, w, h, net->w, net->h, thresh, map, relative, dets, letter);
dets += count;
+ if (prev_classes < 0) prev_classes = l.classes;
+ else if (prev_classes != l.classes) {
+ printf(" Error: Different [yolo] layers have different number of classes = %d and %d - check your cfg-file! \n",
+ prev_classes, l.classes);
+ }
}
if (l.type == REGION) {
custom_get_region_detections(l, w, h, net->w, net->h, thresh, map, hier, relative, dets, letter);
@@ -640,7 +646,8 @@
float *network_predict_image(network *net, image im)
{
- image imr = letterbox_image(im, net->w, net->h);
+ //image imr = letterbox_image(im, net->w, net->h);
+ image imr = resize_image(im, net->w, net->h);
set_batch_network(net, 1);
float *p = network_predict(*net, imr.data);
free_image(imr);
--
Gitblit v1.10.0