diff options
author | Christian C <cc@localhost> | 2025-03-23 15:43:59 -0700 |
---|---|---|
committer | Christian C <cc@localhost> | 2025-03-23 15:43:59 -0700 |
commit | 3cfdec959d9ae00d6b44391cc8daec5ded831295 (patch) | |
tree | 32839f739b9fa8c268c3a339fe79e88f8e50a1f7 | |
parent | 22c32ae8649e8540198942b33d4bab72c4ea7238 (diff) |
Refactor mask field
-rw-r--r-- | include/lib/data/image_types.h | 6 | ||||
-rw-r--r-- | lib/data/image_types.c | 16 | ||||
-rw-r--r-- | lib/seg/util.c | 10 | ||||
-rw-r--r-- | src/prog.c | 4 |
4 files changed, 19 insertions, 17 deletions
diff --git a/include/lib/data/image_types.h b/include/lib/data/image_types.h index ca97d21..fdeeecc 100644 --- a/include/lib/data/image_types.h +++ b/include/lib/data/image_types.h @@ -5,18 +5,20 @@ #include <stddef.h> #define ImageData_t uint8_t +#define Image_t ImageData_t** #define ImageMaskData_t uint16_t +#define ImageMask_t ImageMaskData_t** typedef struct Image { size_t width; size_t height; - ImageData_t** image; + Image_t image; } Image; typedef struct ImageMask { size_t width; size_t height; - ImageMaskData_t** mask; + ImageMask_t image; } ImageMask; Image* create_image(size_t width, size_t height); diff --git a/lib/data/image_types.c b/lib/data/image_types.c index 0375a24..74c7ec4 100644 --- a/lib/data/image_types.c +++ b/lib/data/image_types.c @@ -19,10 +19,10 @@ ImageMask* create_image_mask(size_t width, size_t height) ImageMask* ip = (ImageMask*)malloc(sizeof(ImageMask)); ip->width = width; ip->height = height; - ip->mask = (ImageMaskData_t**)malloc(sizeof(ImageMaskData_t*) * ip->height); + ip->image = (ImageMaskData_t**)malloc(sizeof(ImageMaskData_t*) * ip->height); ImageMaskData_t* image_data = calloc(width*height, sizeof(ImageMaskData_t)); for (size_t y = 0; y < height; y++) { - ip->mask[y] = &image_data[y*width]; + ip->image[y] = &image_data[y*width]; } return ip; } @@ -44,13 +44,13 @@ void free_image(Image* image) void free_image_mask(ImageMask* image_mask) { - if (image_mask->mask[0] != NULL) { - free(image_mask->mask[0]); - image_mask->mask[0] = NULL; + if (image_mask->image[0] != NULL) { + free(image_mask->image[0]); + image_mask->image[0] = NULL; } - if (image_mask->mask != NULL) { - free(image_mask->mask); - image_mask->mask = NULL; + if (image_mask->image != NULL) { + free(image_mask->image); + image_mask->image = NULL; } if (image_mask != NULL) { free(image_mask); diff --git a/lib/seg/util.c b/lib/seg/util.c index 6eee1a2..afced0a 100644 --- a/lib/seg/util.c +++ b/lib/seg/util.c @@ -209,8 +209,8 @@ ImageMask* combine_masks(ImageMask *destination, ImageMask *extra_labels) } for (size_t y = 0; y < destination->height; y++) { for (size_t x = 0; x < destination->width; x++) { - if (destination->mask[y][x] == 0) { - destination->mask[y][x] = extra_labels->mask[y][x]; + if (destination->image[y][x] == 0) { + destination->image[y][x] = extra_labels->image[y][x]; } } } @@ -275,21 +275,21 @@ ImageMask* tif_to_labels(char* tif_file_name, uint32_t *width, uint32_t *height, TIFFClose(tif); return NULL; } - if (im_data->mask == NULL) { + if (im_data->image == NULL) { fprintf(stderr, "Memory allocation error\n"); free_image_mask(im_data); free(image_data); TIFFClose(tif); return NULL; } - if (im_data->mask[0] == NULL) { + if (im_data->image[0] == NULL) { fprintf(stderr, "Memory allocation error\n"); free_image_mask(im_data); free(image_data); TIFFClose(tif); return NULL; } - ImageMaskData_t *labels = im_data->mask[0]; + ImageMaskData_t *labels = im_data->image[0]; /* labels = (ImageMaskData_t*)calloc((*width)*(*height),sizeof(ImageMaskData_t)); if (labels == NULL) { @@ -119,7 +119,7 @@ int main(int argc, char** argv) //-PROCESS-TIFF-TO-LABELS------------------------ //----------------------------------------------- ImageMask *file_im = tif_to_labels(fpath, &width, &height, &starting_label); - ImageMaskData_t *file_labels = file_im->mask[0]; + ImageMaskData_t *file_labels = file_im->image[0]; if (file_labels == NULL) { free(fpath); free(file_list[index]); @@ -137,7 +137,7 @@ int main(int argc, char** argv) } } } - masks = masks_im->mask[0]; + masks = masks_im->image[0]; if (masks == NULL) { fprintf(stderr, "No masks found!\n"); return 1; |