mirror of https://github.com/AlexeyAB/darknet.git
Fixed for Linux: detection for batch > 1 and 0x0d at command line
This commit is contained in:
parent
b714004546
commit
84cdbaa1f1
|
@ -125,7 +125,7 @@ void demo(char *cfgfile, char *weightfile, float thresh, int cam_index, const ch
|
||||||
demo_classes = classes;
|
demo_classes = classes;
|
||||||
demo_thresh = thresh;
|
demo_thresh = thresh;
|
||||||
printf("Demo\n");
|
printf("Demo\n");
|
||||||
net = parse_network_cfg(cfgfile);
|
net = parse_network_cfg_custom(cfgfile, 1);
|
||||||
if(weightfile){
|
if(weightfile){
|
||||||
load_weights(&net, weightfile);
|
load_weights(&net, weightfile);
|
||||||
}
|
}
|
||||||
|
|
|
@ -461,7 +461,7 @@ void test_detector(char *datacfg, char *cfgfile, char *weightfile, char *filenam
|
||||||
char **names = get_labels(name_list);
|
char **names = get_labels(name_list);
|
||||||
|
|
||||||
image **alphabet = load_alphabet();
|
image **alphabet = load_alphabet();
|
||||||
network net = parse_network_cfg(cfgfile);
|
network net = parse_network_cfg_custom(cfgfile, 1);
|
||||||
if(weightfile){
|
if(weightfile){
|
||||||
load_weights(&net, weightfile);
|
load_weights(&net, weightfile);
|
||||||
}
|
}
|
||||||
|
@ -475,6 +475,7 @@ void test_detector(char *datacfg, char *cfgfile, char *weightfile, char *filenam
|
||||||
while(1){
|
while(1){
|
||||||
if(filename){
|
if(filename){
|
||||||
strncpy(input, filename, 256);
|
strncpy(input, filename, 256);
|
||||||
|
if (input[strlen(input) - 1] == 0x0d) input[strlen(input) - 1] = 0;
|
||||||
} else {
|
} else {
|
||||||
printf("Enter Image Path: ");
|
printf("Enter Image Path: ");
|
||||||
fflush(stdout);
|
fflush(stdout);
|
||||||
|
@ -561,6 +562,7 @@ void run_detector(int argc, char **argv)
|
||||||
int classes = option_find_int(options, "classes", 20);
|
int classes = option_find_int(options, "classes", 20);
|
||||||
char *name_list = option_find_str(options, "names", "data/names.list");
|
char *name_list = option_find_str(options, "names", "data/names.list");
|
||||||
char **names = get_labels(name_list);
|
char **names = get_labels(name_list);
|
||||||
|
if (filename[strlen(filename) - 1] == 0x0d) filename[strlen(filename) - 1] = 0;
|
||||||
demo(cfg, weights, thresh, cam_index, filename, names, classes, frame_skip, prefix, out_filename);
|
demo(cfg, weights, thresh, cam_index, filename, names, classes, frame_skip, prefix, out_filename);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -583,6 +583,11 @@ int is_network(section *s)
|
||||||
}
|
}
|
||||||
|
|
||||||
network parse_network_cfg(char *filename)
|
network parse_network_cfg(char *filename)
|
||||||
|
{
|
||||||
|
return parse_network_cfg_custom(filename, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
network parse_network_cfg_custom(char *filename, int batch)
|
||||||
{
|
{
|
||||||
list *sections = read_cfg(filename);
|
list *sections = read_cfg(filename);
|
||||||
node *n = sections->front;
|
node *n = sections->front;
|
||||||
|
@ -600,6 +605,7 @@ network parse_network_cfg(char *filename)
|
||||||
params.w = net.w;
|
params.w = net.w;
|
||||||
params.c = net.c;
|
params.c = net.c;
|
||||||
params.inputs = net.inputs;
|
params.inputs = net.inputs;
|
||||||
|
if (batch > 0) net.batch = batch;
|
||||||
params.batch = net.batch;
|
params.batch = net.batch;
|
||||||
params.time_steps = net.time_steps;
|
params.time_steps = net.time_steps;
|
||||||
params.net = net;
|
params.net = net;
|
||||||
|
@ -699,6 +705,8 @@ network parse_network_cfg(char *filename)
|
||||||
return net;
|
return net;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
list *read_cfg(char *filename)
|
list *read_cfg(char *filename)
|
||||||
{
|
{
|
||||||
FILE *file = fopen(filename, "r");
|
FILE *file = fopen(filename, "r");
|
||||||
|
|
|
@ -3,6 +3,7 @@
|
||||||
#include "network.h"
|
#include "network.h"
|
||||||
|
|
||||||
network parse_network_cfg(char *filename);
|
network parse_network_cfg(char *filename);
|
||||||
|
network parse_network_cfg_custom(char *filename, int batch);
|
||||||
void save_network(network net, char *filename);
|
void save_network(network net, char *filename);
|
||||||
void save_weights(network net, char *filename);
|
void save_weights(network net, char *filename);
|
||||||
void save_weights_upto(network net, char *filename, int cutoff);
|
void save_weights_upto(network net, char *filename, int cutoff);
|
||||||
|
|
Loading…
Reference in New Issue