|
|
|
@ -320,6 +320,7 @@ void fill_truth_detection(char *path, int num_boxes, float *truth, int classes, |
|
|
|
|
if (count > num_boxes) count = num_boxes; |
|
|
|
|
float x, y, w, h; |
|
|
|
|
int id; |
|
|
|
|
int sub = 0; |
|
|
|
|
|
|
|
|
|
for (i = 0; i < count; ++i) { |
|
|
|
|
x = boxes[i].x; |
|
|
|
@ -337,23 +338,27 @@ void fill_truth_detection(char *path, int num_boxes, float *truth, int classes, |
|
|
|
|
sprintf(buff, "echo %s \"Wrong annotation: class_id = %d. But class_id should be [from 0 to %d]\" >> bad_label.list", labelpath, id, classes); |
|
|
|
|
system(buff); |
|
|
|
|
getchar(); |
|
|
|
|
++sub; |
|
|
|
|
continue; |
|
|
|
|
} |
|
|
|
|
if ((w < lowest_w || h < lowest_h)) { |
|
|
|
|
//sprintf(buff, "echo %s \"Very small object: w < lowest_w OR h < lowest_h\" >> bad_label.list", labelpath);
|
|
|
|
|
//system(buff);
|
|
|
|
|
++sub; |
|
|
|
|
continue; |
|
|
|
|
} |
|
|
|
|
if (x == 999999 || y == 999999) { |
|
|
|
|
printf("\n Wrong annotation: x = 0, y = 0 \n"); |
|
|
|
|
sprintf(buff, "echo %s \"Wrong annotation: x = 0 or y = 0\" >> bad_label.list", labelpath); |
|
|
|
|
system(buff); |
|
|
|
|
++sub; |
|
|
|
|
continue; |
|
|
|
|
} |
|
|
|
|
if (x <= 0 || x > 1 || y <= 0 || y > 1) { |
|
|
|
|
printf("\n Wrong annotation: x = %f, y = %f \n", x, y); |
|
|
|
|
sprintf(buff, "echo %s \"Wrong annotation: x = %f, y = %f\" >> bad_label.list", labelpath, x, y); |
|
|
|
|
system(buff); |
|
|
|
|
++sub; |
|
|
|
|
continue; |
|
|
|
|
} |
|
|
|
|
if (w > 1) { |
|
|
|
@ -371,11 +376,11 @@ void fill_truth_detection(char *path, int num_boxes, float *truth, int classes, |
|
|
|
|
if (x == 0) x += lowest_w; |
|
|
|
|
if (y == 0) y += lowest_h; |
|
|
|
|
|
|
|
|
|
truth[i*5+0] = x; |
|
|
|
|
truth[i*5+1] = y; |
|
|
|
|
truth[i*5+2] = w; |
|
|
|
|
truth[i*5+3] = h; |
|
|
|
|
truth[i*5+4] = id; |
|
|
|
|
truth[(i-sub)*5+0] = x; |
|
|
|
|
truth[(i-sub)*5+1] = y; |
|
|
|
|
truth[(i-sub)*5+2] = w; |
|
|
|
|
truth[(i-sub)*5+3] = h; |
|
|
|
|
truth[(i-sub)*5+4] = id; |
|
|
|
|
} |
|
|
|
|
free(boxes); |
|
|
|
|
} |
|
|
|
|