mirror of
https://github.com/pjreddie/darknet.git
synced 2023-08-10 21:13:14 +03:00
Fixed replace_image_to_label(): replaces directories only for Pascal VOC and COCO, replaces only extensions for other.
This commit is contained in:
@ -999,6 +999,7 @@ image get_image_from_stream_resize(CvCapture *cap, int w, int h, IplImage** in_i
|
||||
src = get_webcam_frame(cap);
|
||||
if (!src) return make_empty_image(0, 0, 0);
|
||||
} while (src->width < 1 || src->height < 1 || src->nChannels < 1);
|
||||
printf("Video stream: %d x %d \n", src->width, src->height);
|
||||
} else
|
||||
src = get_webcam_frame(cap);
|
||||
}
|
||||
|
51
src/utils.c
51
src/utils.c
@ -169,7 +169,7 @@ void pm(int M, int N, float *A)
|
||||
|
||||
void find_replace(char *str, char *orig, char *rep, char *output)
|
||||
{
|
||||
char buffer[4096] = {0};
|
||||
char *buffer = calloc(8192, sizeof(char));
|
||||
char *p;
|
||||
|
||||
sprintf(buffer, "%s", str);
|
||||
@ -181,21 +181,46 @@ void find_replace(char *str, char *orig, char *rep, char *output)
|
||||
*p = '\0';
|
||||
|
||||
sprintf(output, "%s%s%s", buffer, rep, p+strlen(orig));
|
||||
free(buffer);
|
||||
}
|
||||
|
||||
void find_replace_extension(char *str, char *orig, char *rep, char *output)
|
||||
{
|
||||
char *buffer = calloc(8192, sizeof(char));
|
||||
|
||||
sprintf(buffer, "%s", str);
|
||||
char *p = strstr(buffer, orig);
|
||||
int offset = (p - buffer);
|
||||
int chars_from_end = strlen(buffer) - offset;
|
||||
if (!p || chars_from_end != strlen(orig)) { // Is 'orig' even in 'str' AND is 'orig' found at the end of 'str'?
|
||||
sprintf(output, "%s", str);
|
||||
return;
|
||||
}
|
||||
|
||||
*p = '\0';
|
||||
|
||||
sprintf(output, "%s%s%s", buffer, rep, p + strlen(orig));
|
||||
free(buffer);
|
||||
}
|
||||
|
||||
void replace_image_to_label(char *input_path, char *output_path) {
|
||||
find_replace(input_path, "images", "labels", output_path);
|
||||
find_replace(output_path, "JPEGImages", "labels", output_path);
|
||||
find_replace(output_path, ".jpg", ".txt", output_path);
|
||||
find_replace(output_path, ".JPG", ".txt", output_path);
|
||||
find_replace(output_path, ".jpeg", ".txt", output_path);
|
||||
find_replace(output_path, ".JPEG", ".txt", output_path);
|
||||
find_replace(output_path, ".png", ".txt", output_path);
|
||||
find_replace(output_path, ".PNG", ".txt", output_path);
|
||||
find_replace(output_path, ".bmp", ".txt", output_path);
|
||||
find_replace(output_path, ".BMP", ".txt", output_path);
|
||||
find_replace(output_path, ".ppm", ".txt", output_path);
|
||||
find_replace(output_path, ".PPM", ".txt", output_path);
|
||||
//find_replace(input_path, "images", "labels", output_path); // COCO
|
||||
find_replace(input_path, "images/train2014/", "labels/train2014/", output_path); // COCO
|
||||
find_replace(input_path, "images/val2014/", "labels/val2014/", output_path); // COCO
|
||||
//find_replace(output_path, "JPEGImages", "labels", output_path); // PascalVOC
|
||||
find_replace(output_path, "VOC2007/JPEGImages", "VOC2007/labels", output_path); // PascalVOC
|
||||
find_replace(output_path, "VOC2012/JPEGImages", "VOC2012/labels", output_path); // PascalVOC
|
||||
// replace only ext of files
|
||||
find_replace_extension(output_path, ".jpg", ".txt", output_path);
|
||||
find_replace_extension(output_path, ".JPG", ".txt", output_path);
|
||||
find_replace_extension(output_path, ".jpeg", ".txt", output_path);
|
||||
find_replace_extension(output_path, ".JPEG", ".txt", output_path);
|
||||
find_replace_extension(output_path, ".png", ".txt", output_path);
|
||||
find_replace_extension(output_path, ".PNG", ".txt", output_path);
|
||||
find_replace_extension(output_path, ".bmp", ".txt", output_path);
|
||||
find_replace_extension(output_path, ".BMP", ".txt", output_path);
|
||||
find_replace_extension(output_path, ".ppm", ".txt", output_path);
|
||||
find_replace_extension(output_path, ".PPM", ".txt", output_path);
|
||||
}
|
||||
|
||||
float sec(clock_t clocks)
|
||||
|
Reference in New Issue
Block a user