mirror of
https://github.com/pjreddie/darknet.git
synced 2023-08-10 21:13:14 +03:00
small_object can be used in [net] in cfg-file for objects 1x1 pix on FullHD image
This commit is contained in:
@ -308,8 +308,8 @@ void fill_truth_detection(char *path, int num_boxes, float *truth, int classes,
|
||||
box_label *boxes = read_boxes(labelpath, &count);
|
||||
if (small_object == 1) {
|
||||
for (i = 0; i < count; ++i) {
|
||||
if (boxes[i].w < 0.01) boxes[i].w = 0.01;
|
||||
if (boxes[i].h < 0.01) boxes[i].h = 0.01;
|
||||
if (boxes[i].w < 0.001F) boxes[i].w = 0.001F;
|
||||
if (boxes[i].h < 0.001F) boxes[i].h = 0.001F;
|
||||
}
|
||||
}
|
||||
randomize_boxes(boxes, count);
|
||||
@ -326,7 +326,7 @@ void fill_truth_detection(char *path, int num_boxes, float *truth, int classes,
|
||||
id = boxes[i].id;
|
||||
|
||||
// not detect small objects
|
||||
if ((w < 0.001 || h < 0.001)) continue;
|
||||
if ((w < 0.001F || h < 0.001F)) continue;
|
||||
|
||||
truth[i*5+0] = x;
|
||||
truth[i*5+1] = y;
|
||||
|
@ -88,7 +88,7 @@ void train_detector(char *datacfg, char *cfgfile, char *weightfile, int *gpus, i
|
||||
args.classes = classes;
|
||||
args.jitter = jitter;
|
||||
args.num_boxes = l.max_boxes;
|
||||
args.small_object = l.small_object;
|
||||
args.small_object = net.small_object;
|
||||
args.d = &buffer;
|
||||
args.type = DETECTION_DATA;
|
||||
args.threads = 64; // 8
|
||||
|
@ -78,7 +78,6 @@ struct layer{
|
||||
int out_h, out_w, out_c;
|
||||
int n;
|
||||
int max_boxes;
|
||||
int small_object;
|
||||
int groups;
|
||||
int size;
|
||||
int side;
|
||||
|
@ -57,6 +57,7 @@ typedef struct network{
|
||||
float exposure;
|
||||
float saturation;
|
||||
float hue;
|
||||
int small_object;
|
||||
|
||||
int gpu_index;
|
||||
tree *hierarchy;
|
||||
|
@ -311,7 +311,6 @@ layer parse_region(list *options, size_params params)
|
||||
l.log = option_find_int_quiet(options, "log", 0);
|
||||
l.sqrt = option_find_int_quiet(options, "sqrt", 0);
|
||||
|
||||
l.small_object = option_find_int_quiet(options, "small_object", 0);
|
||||
l.softmax = option_find_int(options, "softmax", 0);
|
||||
l.focal_loss = option_find_int_quiet(options, "focal_loss", 0);
|
||||
//l.max_boxes = option_find_int_quiet(options, "max",30);
|
||||
@ -622,6 +621,7 @@ void parse_net_options(list *options, network *net)
|
||||
net->max_crop = option_find_int_quiet(options, "max_crop",net->w*2);
|
||||
net->min_crop = option_find_int_quiet(options, "min_crop",net->w);
|
||||
|
||||
net->small_object = option_find_int_quiet(options, "small_object", 0);
|
||||
net->angle = option_find_float_quiet(options, "angle", 0);
|
||||
net->aspect = option_find_float_quiet(options, "aspect", 1);
|
||||
net->saturation = option_find_float_quiet(options, "saturation", 1);
|
||||
|
Reference in New Issue
Block a user