From 5fd022dc1383bf11c46b762c9f94b4fc66045f34 Mon Sep 17 00:00:00 2001 From: Riley Ball Date: Fri, 20 Oct 2023 00:15:14 +1000 Subject: [PATCH 01/45] readme addition + checkout out topic recognition --- README.md | 68 ++++++++++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 57 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index 4a064f841..a9088f728 100644 --- a/README.md +++ b/README.md @@ -1,15 +1,61 @@ -# Pattern Analysis -Pattern Analysis of various datasets by COMP3710 students at the University of Queensland. +# Improved U-Net for ISIC 2018 Skin Lesion Segmentation -We create pattern recognition and image processing library for Tensorflow (TF), PyTorch or JAX. +## Description -This library is created and maintained by The University of Queensland [COMP3710](https://my.uq.edu.au/programs-courses/course.html?course_code=comp3710) students. +The Improved U-Net is a cutting-edge neural network architecture which can be tailored for biomedical image segmentation tasks. Originally inspired by the U-Net architecture, this version boasts enhancements that further optimize its accuracy and performance. The algorithm effectively addresses the problem of segmenting skin lesions from dermoscopic images, a crucial step in early skin cancer detection. -The library includes the following implemented in Tensorflow: -* fractals -* recognition problems +## How It Works -In the recognition folder, you will find many recognition problems solved including: -* OASIS brain segmentation -* Classification -etc. +### Upsampling the Feature Maps: + +- The first step in the localization module is to upsample the feature maps coming from the deeper layers (lower spatial resolution) to a higher spatial resolution. +- Instead of directly using a transposed convolution, the Improved U-Net often employs a simpler upscale mechanism. This could involve just doubling each pixel value or using a simple bilinear or nearest-neighbor interpolation. +- After the upscale, a 2D convolution is applied. This helps in refining the upsampled feature maps and can reduce the number of feature channels (if required). + +### Concatenation with Skip Connection: + +- Feature maps from the corresponding level in the downsampling pathway (or the encoder) are concatenated with the upsampled feature maps. This is the hallmark of the U-Net architecture and is referred to as a skip connection. +- The concatenated feature maps combine the high-resolution spatial details from the encoder with the high-level contextual information from the decoder. + +[Insert Image from paper] + +Above is an image that showcases the localisation module in the context of processing 3 dimensional data. + +## Dependencies + +- **TensorFlow**: version x +- **NumPy**: version x +- **matplotlib**: version x + +## Reproducibility + +To ensure the reproducibility of results: +- We use fixed random seeds. +- Exact versions of all dependencies are listed. +- Training procedures, including data augmentation strategies and hyperparameters, are documented in detail. + +## Example Inputs and Outputs + +**Input**: + +**Output**: + +**Plot**: + + +## Data Pre-processing + +Images were resized to 128x128 pixels for consistency. Furthermore, we applied histogram equalization to enhance the contrast of the images, ensuring better visibility of the lesions. Any artifacts or annotations present in the images were masked out to prevent interference during segmentation. + +**References**: +- https://arxiv.org/pdf/1802.10508v1.pdf + +## Data Splits + +We divided the ISIC 2018 dataset into training, validation, and test sets following an 80-10-10 split: + +- **Training Data**: 80% - Used for training the network. +- **Validation Data**: 10% - Used for hyperparameter tuning and early stopping. +- **Test Data**: 10% - Held out for evaluating the final performance of the model. + +This division ensures a robust assessment of the model's performance, minimising overfitting and providing a reliable estimation of its real-world applicability. From d40c8477633176bdd8b5e82ddb72576f6318403e Mon Sep 17 00:00:00 2001 From: Riley Ball Date: Fri, 20 Oct 2023 00:19:07 +1000 Subject: [PATCH 02/45] added placeholder files to populate --- README.md | 3 ++- architecture.png | Bin 0 -> 85051 bytes dataset.py | 0 modules.py | 0 predict.py | 0 train.py | 0 6 files changed, 2 insertions(+), 1 deletion(-) create mode 100644 architecture.png create mode 100644 dataset.py create mode 100644 modules.py create mode 100644 predict.py create mode 100644 train.py diff --git a/README.md b/README.md index a9088f728..3b352652b 100644 --- a/README.md +++ b/README.md @@ -17,7 +17,8 @@ The Improved U-Net is a cutting-edge neural network architecture which can be ta - Feature maps from the corresponding level in the downsampling pathway (or the encoder) are concatenated with the upsampled feature maps. This is the hallmark of the U-Net architecture and is referred to as a skip connection. - The concatenated feature maps combine the high-resolution spatial details from the encoder with the high-level contextual information from the decoder. -[Insert Image from paper] +// insert architecture.png image below +![Architecture] Above is an image that showcases the localisation module in the context of processing 3 dimensional data. diff --git a/architecture.png b/architecture.png new file mode 100644 index 0000000000000000000000000000000000000000..1c5aab0aedaf7c86a6754b4c3ba7152c97d0f1c3 GIT binary patch literal 85051 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�uF6)> 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 literal 0 HcmV?d00001 diff --git a/dataset.py b/dataset.py new file mode 100644 index 000000000..e69de29bb diff --git a/modules.py b/modules.py new file mode 100644 index 000000000..e69de29bb diff --git a/predict.py b/predict.py new file mode 100644 index 000000000..e69de29bb diff --git a/train.py b/train.py new file mode 100644 index 000000000..e69de29bb From e815ed79df82b2732e60ffa86dc4b6b9676afb5f Mon Sep 17 00:00:00 2001 From: Riley Ball Date: Fri, 20 Oct 2023 00:21:38 +1000 Subject: [PATCH 03/45] initial template for unet model with localisation module --- modules.py | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/modules.py b/modules.py index e69de29bb..315e18430 100644 --- a/modules.py +++ b/modules.py @@ -0,0 +1,31 @@ +import tensorflow as tf +from tensorflow.keras.layers import Input, Conv2D, MaxPooling2D, UpSampling2D, Concatenate + +def unet_model(input_shape=(256, 256, 1)): + inputs = Input(input_shape) + + # Downsampling (Context) Path + c1 = Conv2D(64, (3, 3), activation='relu', padding='same')(inputs) + p1 = MaxPooling2D((2, 2))(c1) + c2 = Conv2D(128, (3, 3), activation='relu', padding='same')(p1) + p2 = MaxPooling2D((2, 2))(c2) + + # Bottleneck + c3 = Conv2D(256, (3, 3), activation='relu', padding='same')(p2) + + # Upsampling (Localization) Path + u1 = UpSampling2D((2, 2))(c3) + concat1 = Concatenate()([u1, c2]) # Concatenate with feature maps from the downsampling path + c4 = Conv2D(128, (3, 3), activation='relu', padding='same')(concat1) + u2 = UpSampling2D((2, 2))(c4) + concat2 = Concatenate()([u2, c1]) + c5 = Conv2D(64, (3, 3), activation='relu', padding='same')(concat2) + + # Output Layer + outputs = Conv2D(1, (1, 1), activation='sigmoid')(c5) + + model = tf.keras.Model(inputs, outputs) + return model + +model = unet_model() +model.summary() From 6e7e27bda116a1a933eedfc30ebb2cc0ae1704ca Mon Sep 17 00:00:00 2001 From: Riley Ball Date: Fri, 20 Oct 2023 00:21:52 +1000 Subject: [PATCH 04/45] added initial requirements.txt file --- requirements.txt | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 requirements.txt diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 000000000..f3381910c --- /dev/null +++ b/requirements.txt @@ -0,0 +1,5 @@ +# requirements.txt +tensorflow +matplotlib +numpy + From 92db5f5dba6168bec2fe3dc038587b481938f1af Mon Sep 17 00:00:00 2001 From: Riley Ball Date: Fri, 20 Oct 2023 00:22:40 +1000 Subject: [PATCH 05/45] added initial template for dataloaders - need testing --- dataset.py | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/dataset.py b/dataset.py index e69de29bb..846e1e209 100644 --- a/dataset.py +++ b/dataset.py @@ -0,0 +1,45 @@ +# dataset.py +from torch.utils.data import Dataset, DataLoader +from torchvision import transforms +import glob +import cv2 + +class SegmentationDataset(Dataset): + def __init__(self, imageDir, maskDir, transforms=None, cache=False): + # store the image and mask filepaths, and augmentation transforms + self.cache = cache + self.imagePaths = sorted(glob.glob(imageDir + "/*")) + self.maskPaths = sorted(glob.glob(maskDir + "/*")) + self.transforms = transforms + if self.cache: + self.cache_storage = [None] * self.__len__() + + def __len__(self): + # return the number of total samples contained in the dataset + return len(self.imagePaths) + + def __getitem__(self, idx): + # ... [Rest of the implementation] + pass + + def get_dataloaders(batch_size=32): + p = [transforms.Compose([transforms.ToTensor(), transforms.Resize((572,572))]), + transforms.Compose([transforms.ToTensor(), transforms.Resize((388,388))])] + + train_dataset = SegmentationDataset("/content/drive/MyDrive/isic/isic-512/resized_train", + "/content/drive/MyDrive/isic/isic-512/resized_train_gt", + transforms=p, cache=True) + + test_dataset = SegmentationDataset("/content/drive/MyDrive/isic/isic-512/resized_test", + "/content/drive/MyDrive/isic/isic-512/resized_test_gt", + transforms=p, cache=True) + + valid_dataset = SegmentationDataset("/content/drive/MyDrive/isic/isic-512/resized_valid", + "/content/drive/MyDrive/isic/isic-512/resized_valid_gt", + transforms=p, cache=True) + + train_dataloader = DataLoader(train_dataset, batch_size=batch_size, shuffle=False, pin_memory=True) + test_dataloader = DataLoader(test_dataset, batch_size=batch_size, shuffle=False, pin_memory=True) + valid_dataloader = DataLoader(valid_dataset, batch_size=batch_size, shuffle=False, pin_memory=True) + + return train_dataloader, test_dataloader, valid_dataloader From 837d75e86488e6af33e6df92dcd8a6dab6b84f3b Mon Sep 17 00:00:00 2001 From: Riley Ball Date: Fri, 20 Oct 2023 00:26:23 +1000 Subject: [PATCH 06/45] modified dataloader --- dataset.py | 81 ++++++++++++++++++++++++++++++------------------------ 1 file changed, 45 insertions(+), 36 deletions(-) diff --git a/dataset.py b/dataset.py index 846e1e209..4ce944cf3 100644 --- a/dataset.py +++ b/dataset.py @@ -1,45 +1,54 @@ -# dataset.py -from torch.utils.data import Dataset, DataLoader -from torchvision import transforms +import tensorflow as tf import glob import cv2 +import numpy as np -class SegmentationDataset(Dataset): - def __init__(self, imageDir, maskDir, transforms=None, cache=False): +class SegmentationDataset(tf.data.Dataset): + def __init__(self, imageDir, maskDir, image_size, cache=False): # store the image and mask filepaths, and augmentation transforms self.cache = cache self.imagePaths = sorted(glob.glob(imageDir + "/*")) self.maskPaths = sorted(glob.glob(maskDir + "/*")) - self.transforms = transforms - if self.cache: - self.cache_storage = [None] * self.__len__() - - def __len__(self): - # return the number of total samples contained in the dataset - return len(self.imagePaths) - - def __getitem__(self, idx): - # ... [Rest of the implementation] - pass - - def get_dataloaders(batch_size=32): - p = [transforms.Compose([transforms.ToTensor(), transforms.Resize((572,572))]), - transforms.Compose([transforms.ToTensor(), transforms.Resize((388,388))])] + self.image_size = image_size - train_dataset = SegmentationDataset("/content/drive/MyDrive/isic/isic-512/resized_train", - "/content/drive/MyDrive/isic/isic-512/resized_train_gt", - transforms=p, cache=True) + # Create a dataset from the list of file paths + self.dataset = tf.data.Dataset.from_tensor_slices((self.imagePaths, self.maskPaths)) + self.dataset = self.dataset.map(self._load_image_and_mask, num_parallel_calls=tf.data.experimental.AUTOTUNE) - test_dataset = SegmentationDataset("/content/drive/MyDrive/isic/isic-512/resized_test", - "/content/drive/MyDrive/isic/isic-512/resized_test_gt", - transforms=p, cache=True) - - valid_dataset = SegmentationDataset("/content/drive/MyDrive/isic/isic-512/resized_valid", - "/content/drive/MyDrive/isic/isic-512/resized_valid_gt", - transforms=p, cache=True) - - train_dataloader = DataLoader(train_dataset, batch_size=batch_size, shuffle=False, pin_memory=True) - test_dataloader = DataLoader(test_dataset, batch_size=batch_size, shuffle=False, pin_memory=True) - valid_dataloader = DataLoader(valid_dataset, batch_size=batch_size, shuffle=False, pin_memory=True) - - return train_dataloader, test_dataloader, valid_dataloader + if self.cache: + self.dataset = self.dataset.cache() + + def _load_image_and_mask(self, image_path, mask_path): + image = tf.io.read_file(image_path) + image = tf.image.decode_jpeg(image, channels=3) + image = tf.image.resize(image, self.image_size) + image = image / 255.0 # Normalize + + mask = tf.io.read_file(mask_path) + mask = tf.image.decode_jpeg(mask, channels=1) + mask = tf.image.resize(mask, self.image_size) + mask = mask / 255.0 # Normalize + + return image, mask + + def __call__(self, batch_size=32, shuffle=False): + if shuffle: + self.dataset = self.dataset.shuffle(buffer_size=1000) + self.dataset = self.dataset.batch(batch_size) + self.dataset = self.dataset.prefetch(buffer_size=tf.data.experimental.AUTOTUNE) + return self.dataset + +def get_dataloaders(batch_size=32): + train_dataset = SegmentationDataset("/content/drive/MyDrive/isic/isic-512/resized_train", + "/content/drive/MyDrive/isic/isic-512/resized_train_gt", + (572, 572), cache=True) + + test_dataset = SegmentationDataset("/content/drive/MyDrive/isic/isic-512/resized_test", + "/content/drive/MyDrive/isic/isic-512/resized_test_gt", + (572, 572), cache=True) + + valid_dataset = SegmentationDataset("/content/drive/MyDrive/isic/isic-512/resized_valid", + "/content/drive/MyDrive/isic/isic-512/resized_valid_gt", + (572, 572), cache=True) + + return train_dataset(batch_size), test_dataset(batch_size), valid_dataset(batch_size) From 9f872f3d5b1cfa1a886fa8abeabf86202890f1a9 Mon Sep 17 00:00:00 2001 From: Riley Ball Date: Fri, 20 Oct 2023 00:30:08 +1000 Subject: [PATCH 07/45] moved to recognition folder --- .../ImprovedUNet-ISIC2018-45293915/LICENSE | 0 .../ImprovedUNet-ISIC2018-45293915/README.md | 0 .../ImprovedUNet-ISIC2018-45293915/architecture.png | Bin .../ImprovedUNet-ISIC2018-45293915/dataset.py | 0 .../ImprovedUNet-ISIC2018-45293915/modules.py | 0 .../ImprovedUNet-ISIC2018-45293915/predict.py | 0 .../ImprovedUNet-ISIC2018-45293915/requirements.txt | 0 .../ImprovedUNet-ISIC2018-45293915/train.py | 0 8 files changed, 0 insertions(+), 0 deletions(-) rename LICENSE => recognition/ImprovedUNet-ISIC2018-45293915/LICENSE (100%) rename README.md => recognition/ImprovedUNet-ISIC2018-45293915/README.md (100%) rename architecture.png => recognition/ImprovedUNet-ISIC2018-45293915/architecture.png (100%) rename dataset.py => recognition/ImprovedUNet-ISIC2018-45293915/dataset.py (100%) rename modules.py => recognition/ImprovedUNet-ISIC2018-45293915/modules.py (100%) rename predict.py => recognition/ImprovedUNet-ISIC2018-45293915/predict.py (100%) rename requirements.txt => recognition/ImprovedUNet-ISIC2018-45293915/requirements.txt (100%) rename train.py => recognition/ImprovedUNet-ISIC2018-45293915/train.py (100%) diff --git a/LICENSE b/recognition/ImprovedUNet-ISIC2018-45293915/LICENSE similarity index 100% rename from LICENSE rename to recognition/ImprovedUNet-ISIC2018-45293915/LICENSE diff --git a/README.md b/recognition/ImprovedUNet-ISIC2018-45293915/README.md similarity index 100% rename from README.md rename to recognition/ImprovedUNet-ISIC2018-45293915/README.md diff --git a/architecture.png b/recognition/ImprovedUNet-ISIC2018-45293915/architecture.png similarity index 100% rename from architecture.png rename to recognition/ImprovedUNet-ISIC2018-45293915/architecture.png diff --git a/dataset.py b/recognition/ImprovedUNet-ISIC2018-45293915/dataset.py similarity index 100% rename from dataset.py rename to recognition/ImprovedUNet-ISIC2018-45293915/dataset.py diff --git a/modules.py b/recognition/ImprovedUNet-ISIC2018-45293915/modules.py similarity index 100% rename from modules.py rename to recognition/ImprovedUNet-ISIC2018-45293915/modules.py diff --git a/predict.py b/recognition/ImprovedUNet-ISIC2018-45293915/predict.py similarity index 100% rename from predict.py rename to recognition/ImprovedUNet-ISIC2018-45293915/predict.py diff --git a/requirements.txt b/recognition/ImprovedUNet-ISIC2018-45293915/requirements.txt similarity index 100% rename from requirements.txt rename to recognition/ImprovedUNet-ISIC2018-45293915/requirements.txt diff --git a/train.py b/recognition/ImprovedUNet-ISIC2018-45293915/train.py similarity index 100% rename from train.py rename to recognition/ImprovedUNet-ISIC2018-45293915/train.py From 52db445b7b233998809a2f8b91a7f923ced8b235 Mon Sep 17 00:00:00 2001 From: Riley Ball Date: Fri, 20 Oct 2023 00:32:23 +1000 Subject: [PATCH 08/45] updated for working image in readme file --- recognition/ImprovedUNet-ISIC2018-45293915/README.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/README.md b/recognition/ImprovedUNet-ISIC2018-45293915/README.md index 3b352652b..fc9158afc 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/README.md +++ b/recognition/ImprovedUNet-ISIC2018-45293915/README.md @@ -17,8 +17,7 @@ The Improved U-Net is a cutting-edge neural network architecture which can be ta - Feature maps from the corresponding level in the downsampling pathway (or the encoder) are concatenated with the upsampled feature maps. This is the hallmark of the U-Net architecture and is referred to as a skip connection. - The concatenated feature maps combine the high-resolution spatial details from the encoder with the high-level contextual information from the decoder. -// insert architecture.png image below -![Architecture] +![Improved UNet Model Architecture](architecture.png) Above is an image that showcases the localisation module in the context of processing 3 dimensional data. From a71623b47cfe253dd2e3a61c1c1c4641b1edbaa1 Mon Sep 17 00:00:00 2001 From: Riley Ball Date: Fri, 20 Oct 2023 00:34:28 +1000 Subject: [PATCH 09/45] modules.py cleanup --- recognition/ImprovedUNet-ISIC2018-45293915/modules.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/modules.py b/recognition/ImprovedUNet-ISIC2018-45293915/modules.py index 315e18430..9d995345b 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/modules.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/modules.py @@ -26,6 +26,3 @@ def unet_model(input_shape=(256, 256, 1)): model = tf.keras.Model(inputs, outputs) return model - -model = unet_model() -model.summary() From d5961224c86a016673b7557bc3cdba2cc4e548f9 Mon Sep 17 00:00:00 2001 From: Riley Ball Date: Fri, 20 Oct 2023 00:35:36 +1000 Subject: [PATCH 10/45] template for train.py --- .../ImprovedUNet-ISIC2018-45293915/train.py | 78 +++++++++++++++++++ 1 file changed, 78 insertions(+) diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/train.py b/recognition/ImprovedUNet-ISIC2018-45293915/train.py index e69de29bb..5db4be716 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/train.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/train.py @@ -0,0 +1,78 @@ +import tensorflow as tf +from modules import unet_model + +# Sample Configuration +EPOCHS = 10 +BATCH_SIZE = 32 +TRAINING_DATA_DIR = "path_to_training_images/" +TRAINING_MASK_DIR = "path_to_training_masks/" +VAL_DATA_DIR = "path_to_val_images/" +VAL_MASK_DIR = "path_to_val_masks/" +IMG_SIZE = (256, 256) + +# ImageDataGenerator for data augmentation +train_datagen = tf.keras.preprocessing.image.ImageDataGenerator( + rescale=1./255, + rotation_range=20, + width_shift_range=0.2, + height_shift_range=0.2, + zoom_range=0.2 +) + +val_datagen = tf.keras.preprocessing.image.ImageDataGenerator(rescale=1./255) + +# Create generators for training and validation datasets +train_image_generator = train_datagen.flow_from_directory( + TRAINING_DATA_DIR, + target_size=IMG_SIZE, + batch_size=BATCH_SIZE, + class_mode=None, # No labels + seed=42, + color_mode="grayscale" +) + +train_mask_generator = train_datagen.flow_from_directory( + TRAINING_MASK_DIR, + target_size=IMG_SIZE, + batch_size=BATCH_SIZE, + class_mode=None, + seed=42, + color_mode="grayscale" +) + +val_image_generator = val_datagen.flow_from_directory( + VAL_DATA_DIR, + target_size=IMG_SIZE, + batch_size=BATCH_SIZE, + class_mode=None, + seed=42, + color_mode="grayscale" +) + +val_mask_generator = val_datagen.flow_from_directory( + VAL_MASK_DIR, + target_size=IMG_SIZE, + batch_size=BATCH_SIZE, + class_mode=None, + seed=42, + color_mode="grayscale" +) + +# Combine image and mask generators +train_generator = zip(train_image_generator, train_mask_generator) +val_generator = zip(val_image_generator, val_mask_generator) + +# Compile and train the model +model = unet_model() +model.compile(optimizer='adam', loss='binary_crossentropy', metrics=['accuracy']) + +model.fit( + train_generator, + validation_data=val_generator, + steps_per_epoch=len(train_image_generator), + validation_steps=len(val_image_generator), + epochs=EPOCHS +) + +# Save the model (optional) +model.save("unet_model.h5") From 31d66e24920d03445304af3b960b5a6fcaeb98c9 Mon Sep 17 00:00:00 2001 From: Riley Ball Date: Fri, 20 Oct 2023 00:53:17 +1000 Subject: [PATCH 11/45] updated readme with dataset folder structure --- .../ImprovedUNet-ISIC2018-45293915/README.md | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/README.md b/recognition/ImprovedUNet-ISIC2018-45293915/README.md index fc9158afc..6927121b1 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/README.md +++ b/recognition/ImprovedUNet-ISIC2018-45293915/README.md @@ -50,6 +50,23 @@ Images were resized to 128x128 pixels for consistency. Furthermore, we applied h **References**: - https://arxiv.org/pdf/1802.10508v1.pdf +## Dataset Folder Structure + +``` +root_directory +│ +├── datasets +│ ├── isic-512 +│ │ ├── resized_train +│ │ ├── resized_train_gt +│ │ ├── resized_test +│ │ ├── resized_test_gt +│ │ ├── resized_valid +│ │ └── resized_valid_gt +│ +└── your_script.py +``` + ## Data Splits We divided the ISIC 2018 dataset into training, validation, and test sets following an 80-10-10 split: From 68ccaac68f2351315684ede963b869f6bbc5ad34 Mon Sep 17 00:00:00 2001 From: riley-ball Date: Sat, 21 Oct 2023 19:24:02 +1000 Subject: [PATCH 12/45] switched to dual boot ubuntu mate --- .../ImprovedUNet-ISIC2018-45293915/.gitignore | 163 +++++++ .../ImprovedUNet-ISIC2018-45293915/LICENSE | 402 +++++++++--------- .../ImprovedUNet-ISIC2018-45293915/README.md | 156 +++---- .../ImprovedUNet-ISIC2018-45293915/dataset.py | 108 ++--- .../ImprovedUNet-ISIC2018-45293915/modules.py | 56 +-- .../requirements.txt | 10 +- .../template_train.py | 78 ++++ .../ImprovedUNet-ISIC2018-45293915/train.py | 81 +--- recognition/README.md | 20 +- 9 files changed, 620 insertions(+), 454 deletions(-) create mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/.gitignore create mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/template_train.py diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/.gitignore b/recognition/ImprovedUNet-ISIC2018-45293915/.gitignore new file mode 100644 index 000000000..34d1686a2 --- /dev/null +++ b/recognition/ImprovedUNet-ISIC2018-45293915/.gitignore @@ -0,0 +1,163 @@ +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# C extensions +*.so + +# Distribution / packaging +.Python +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +wheels/ +share/python-wheels/ +*.egg-info/ +.installed.cfg +*.egg +MANIFEST + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.nox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*.cover +*.py,cover +.hypothesis/ +.pytest_cache/ +cover/ + +# Translations +*.mo +*.pot + +# Django stuff: +*.log +local_settings.py +db.sqlite3 +db.sqlite3-journal + +# Flask stuff: +instance/ +.webassets-cache + +# Scrapy stuff: +.scrapy + +# Sphinx documentation +docs/_build/ + +# PyBuilder +.pybuilder/ +target/ + +# Jupyter Notebook +.ipynb_checkpoints + +# IPython +profile_default/ +ipython_config.py + +# pyenv +# For a library or package, you might want to ignore these files since the code is +# intended to run in multiple environments; otherwise, check them in: +# .python-version + +# pipenv +# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. +# However, in case of collaboration, if having platform-specific dependencies or dependencies +# having no cross-platform support, pipenv may install dependencies that don't work, or not +# install all needed dependencies. +#Pipfile.lock + +# poetry +# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control. +# This is especially recommended for binary packages to ensure reproducibility, and is more +# commonly ignored for libraries. +# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control +#poetry.lock + +# pdm +# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control. +#pdm.lock +# pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it +# in version control. +# https://pdm.fming.dev/#use-with-ide +.pdm.toml + +# PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm +__pypackages__/ + +# Celery stuff +celerybeat-schedule +celerybeat.pid + +# SageMath parsed files +*.sage.py + +# Environments +.env +.venv +env/ +venv/ +ENV/ +env.bak/ +venv.bak/ + +# Spyder project settings +.spyderproject +.spyproject + +# Rope project settings +.ropeproject + +# mkdocs documentation +/site + +# mypy +.mypy_cache/ +.dmypy.json +dmypy.json + +# Pyre type checker +.pyre/ + +# pytype static type analyzer +.pytype/ + +# Cython debug symbols +cython_debug/ + +# PyCharm +# JetBrains specific template is maintained in a separate JetBrains.gitignore that can +# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore +# and can be added to the global gitignore or merged into this file. For a more nuclear +# option (not recommended) you can uncomment the following to ignore the entire idea folder. +#.idea/ + +# datasets folder +/datasets \ No newline at end of file diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/LICENSE b/recognition/ImprovedUNet-ISIC2018-45293915/LICENSE index 261eeb9e9..29f81d812 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/LICENSE +++ b/recognition/ImprovedUNet-ISIC2018-45293915/LICENSE @@ -1,201 +1,201 @@ - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [yyyy] [name of copyright owner] - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/README.md b/recognition/ImprovedUNet-ISIC2018-45293915/README.md index 6927121b1..392fe5d66 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/README.md +++ b/recognition/ImprovedUNet-ISIC2018-45293915/README.md @@ -1,78 +1,78 @@ -# Improved U-Net for ISIC 2018 Skin Lesion Segmentation - -## Description - -The Improved U-Net is a cutting-edge neural network architecture which can be tailored for biomedical image segmentation tasks. Originally inspired by the U-Net architecture, this version boasts enhancements that further optimize its accuracy and performance. The algorithm effectively addresses the problem of segmenting skin lesions from dermoscopic images, a crucial step in early skin cancer detection. - -## How It Works - -### Upsampling the Feature Maps: - -- The first step in the localization module is to upsample the feature maps coming from the deeper layers (lower spatial resolution) to a higher spatial resolution. -- Instead of directly using a transposed convolution, the Improved U-Net often employs a simpler upscale mechanism. This could involve just doubling each pixel value or using a simple bilinear or nearest-neighbor interpolation. -- After the upscale, a 2D convolution is applied. This helps in refining the upsampled feature maps and can reduce the number of feature channels (if required). - -### Concatenation with Skip Connection: - -- Feature maps from the corresponding level in the downsampling pathway (or the encoder) are concatenated with the upsampled feature maps. This is the hallmark of the U-Net architecture and is referred to as a skip connection. -- The concatenated feature maps combine the high-resolution spatial details from the encoder with the high-level contextual information from the decoder. - -![Improved UNet Model Architecture](architecture.png) - -Above is an image that showcases the localisation module in the context of processing 3 dimensional data. - -## Dependencies - -- **TensorFlow**: version x -- **NumPy**: version x -- **matplotlib**: version x - -## Reproducibility - -To ensure the reproducibility of results: -- We use fixed random seeds. -- Exact versions of all dependencies are listed. -- Training procedures, including data augmentation strategies and hyperparameters, are documented in detail. - -## Example Inputs and Outputs - -**Input**: - -**Output**: - -**Plot**: - - -## Data Pre-processing - -Images were resized to 128x128 pixels for consistency. Furthermore, we applied histogram equalization to enhance the contrast of the images, ensuring better visibility of the lesions. Any artifacts or annotations present in the images were masked out to prevent interference during segmentation. - -**References**: -- https://arxiv.org/pdf/1802.10508v1.pdf - -## Dataset Folder Structure - -``` -root_directory -│ -├── datasets -│ ├── isic-512 -│ │ ├── resized_train -│ │ ├── resized_train_gt -│ │ ├── resized_test -│ │ ├── resized_test_gt -│ │ ├── resized_valid -│ │ └── resized_valid_gt -│ -└── your_script.py -``` - -## Data Splits - -We divided the ISIC 2018 dataset into training, validation, and test sets following an 80-10-10 split: - -- **Training Data**: 80% - Used for training the network. -- **Validation Data**: 10% - Used for hyperparameter tuning and early stopping. -- **Test Data**: 10% - Held out for evaluating the final performance of the model. - -This division ensures a robust assessment of the model's performance, minimising overfitting and providing a reliable estimation of its real-world applicability. +# Improved U-Net for ISIC 2018 Skin Lesion Segmentation + +## Description + +The Improved U-Net is a cutting-edge neural network architecture which can be tailored for biomedical image segmentation tasks. Originally inspired by the U-Net architecture, this version boasts enhancements that further optimize its accuracy and performance. The algorithm effectively addresses the problem of segmenting skin lesions from dermoscopic images, a crucial step in early skin cancer detection. + +## How It Works + +### Upsampling the Feature Maps: + +- The first step in the localization module is to upsample the feature maps coming from the deeper layers (lower spatial resolution) to a higher spatial resolution. +- Instead of directly using a transposed convolution, the Improved U-Net often employs a simpler upscale mechanism. This could involve just doubling each pixel value or using a simple bilinear or nearest-neighbor interpolation. +- After the upscale, a 2D convolution is applied. This helps in refining the upsampled feature maps and can reduce the number of feature channels (if required). + +### Concatenation with Skip Connection: + +- Feature maps from the corresponding level in the downsampling pathway (or the encoder) are concatenated with the upsampled feature maps. This is the hallmark of the U-Net architecture and is referred to as a skip connection. +- The concatenated feature maps combine the high-resolution spatial details from the encoder with the high-level contextual information from the decoder. + +![Improved UNet Model Architecture](architecture.png) + +Above is an image that showcases the localisation module in the context of processing 3 dimensional data. + +## Dependencies + +- **TensorFlow**: version x +- **NumPy**: version x +- **matplotlib**: version x + +## Reproducibility + +To ensure the reproducibility of results: +- We use fixed random seeds. +- Exact versions of all dependencies are listed. +- Training procedures, including data augmentation strategies and hyperparameters, are documented in detail. + +## Example Inputs and Outputs + +**Input**: + +**Output**: + +**Plot**: + + +## Data Pre-processing + +Images were resized to 128x128 pixels for consistency. Furthermore, we applied histogram equalization to enhance the contrast of the images, ensuring better visibility of the lesions. Any artifacts or annotations present in the images were masked out to prevent interference during segmentation. + +**References**: +- https://arxiv.org/pdf/1802.10508v1.pdf + +## Dataset Folder Structure + +``` +root_directory +│ +├── datasets +│ ├── isic-512 +│ │ ├── resized_train +│ │ ├── resized_train_gt +│ │ ├── resized_test +│ │ ├── resized_test_gt +│ │ ├── resized_valid +│ │ └── resized_valid_gt +│ +└── your_script.py +``` + +## Data Splits + +We divided the ISIC 2018 dataset into training, validation, and test sets following an 80-10-10 split: + +- **Training Data**: 80% - Used for training the network. +- **Validation Data**: 10% - Used for hyperparameter tuning and early stopping. +- **Test Data**: 10% - Held out for evaluating the final performance of the model. + +This division ensures a robust assessment of the model's performance, minimising overfitting and providing a reliable estimation of its real-world applicability. diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/dataset.py b/recognition/ImprovedUNet-ISIC2018-45293915/dataset.py index 4ce944cf3..f9087bbbf 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/dataset.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/dataset.py @@ -1,54 +1,54 @@ -import tensorflow as tf -import glob -import cv2 -import numpy as np - -class SegmentationDataset(tf.data.Dataset): - def __init__(self, imageDir, maskDir, image_size, cache=False): - # store the image and mask filepaths, and augmentation transforms - self.cache = cache - self.imagePaths = sorted(glob.glob(imageDir + "/*")) - self.maskPaths = sorted(glob.glob(maskDir + "/*")) - self.image_size = image_size - - # Create a dataset from the list of file paths - self.dataset = tf.data.Dataset.from_tensor_slices((self.imagePaths, self.maskPaths)) - self.dataset = self.dataset.map(self._load_image_and_mask, num_parallel_calls=tf.data.experimental.AUTOTUNE) - - if self.cache: - self.dataset = self.dataset.cache() - - def _load_image_and_mask(self, image_path, mask_path): - image = tf.io.read_file(image_path) - image = tf.image.decode_jpeg(image, channels=3) - image = tf.image.resize(image, self.image_size) - image = image / 255.0 # Normalize - - mask = tf.io.read_file(mask_path) - mask = tf.image.decode_jpeg(mask, channels=1) - mask = tf.image.resize(mask, self.image_size) - mask = mask / 255.0 # Normalize - - return image, mask - - def __call__(self, batch_size=32, shuffle=False): - if shuffle: - self.dataset = self.dataset.shuffle(buffer_size=1000) - self.dataset = self.dataset.batch(batch_size) - self.dataset = self.dataset.prefetch(buffer_size=tf.data.experimental.AUTOTUNE) - return self.dataset - -def get_dataloaders(batch_size=32): - train_dataset = SegmentationDataset("/content/drive/MyDrive/isic/isic-512/resized_train", - "/content/drive/MyDrive/isic/isic-512/resized_train_gt", - (572, 572), cache=True) - - test_dataset = SegmentationDataset("/content/drive/MyDrive/isic/isic-512/resized_test", - "/content/drive/MyDrive/isic/isic-512/resized_test_gt", - (572, 572), cache=True) - - valid_dataset = SegmentationDataset("/content/drive/MyDrive/isic/isic-512/resized_valid", - "/content/drive/MyDrive/isic/isic-512/resized_valid_gt", - (572, 572), cache=True) - - return train_dataset(batch_size), test_dataset(batch_size), valid_dataset(batch_size) +import tensorflow as tf +import glob +import cv2 +import numpy as np + +class SegmentationDataset(tf.data.Dataset): + def __init__(self, imageDir, maskDir, image_size, cache=False): + # store the image and mask filepaths, and augmentation transforms + self.cache = cache + self.imagePaths = sorted(glob.glob(imageDir + "/*")) + self.maskPaths = sorted(glob.glob(maskDir + "/*")) + self.image_size = image_size + + # Create a dataset from the list of file paths + self.dataset = tf.data.Dataset.from_tensor_slices((self.imagePaths, self.maskPaths)) + self.dataset = self.dataset.map(self._load_image_and_mask, num_parallel_calls=tf.data.experimental.AUTOTUNE) + + if self.cache: + self.dataset = self.dataset.cache() + + def _load_image_and_mask(self, image_path, mask_path): + image = tf.io.read_file(image_path) + image = tf.image.decode_jpeg(image, channels=3) + image = tf.image.resize(image, self.image_size) + image = image / 255.0 # Normalize + + mask = tf.io.read_file(mask_path) + mask = tf.image.decode_jpeg(mask, channels=1) + mask = tf.image.resize(mask, self.image_size) + mask = mask / 255.0 # Normalize + + return image, mask + + def __call__(self, batch_size=32, shuffle=False): + if shuffle: + self.dataset = self.dataset.shuffle(buffer_size=1000) + self.dataset = self.dataset.batch(batch_size) + self.dataset = self.dataset.prefetch(buffer_size=tf.data.experimental.AUTOTUNE) + return self.dataset + +def get_dataloaders(batch_size=32): + train_dataset = SegmentationDataset("/datasets/ISIC2018_Task1-2_Training_Input", + "/datasets/ISIC2018_Task1-2_Training_Input_GroundTruth", + (572, 572), cache=True) + + test_dataset = SegmentationDataset("/datasets/ISIC2018_Task1-2_Test_Input", + "/datasets/ISIC2018_Task1-2_Test_Input_GroundTruth", + (572, 572), cache=True) + + valid_dataset = SegmentationDataset("/datasets/ISIC2018_Task1-2_Training_Input", + "/datasets/ISIC2018_Task1-2_Training_Input_GroundTruth", + (572, 572), cache=True) + + return train_dataset(batch_size), test_dataset(batch_size), valid_dataset(batch_size) diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/modules.py b/recognition/ImprovedUNet-ISIC2018-45293915/modules.py index 9d995345b..85e1553ed 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/modules.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/modules.py @@ -1,28 +1,28 @@ -import tensorflow as tf -from tensorflow.keras.layers import Input, Conv2D, MaxPooling2D, UpSampling2D, Concatenate - -def unet_model(input_shape=(256, 256, 1)): - inputs = Input(input_shape) - - # Downsampling (Context) Path - c1 = Conv2D(64, (3, 3), activation='relu', padding='same')(inputs) - p1 = MaxPooling2D((2, 2))(c1) - c2 = Conv2D(128, (3, 3), activation='relu', padding='same')(p1) - p2 = MaxPooling2D((2, 2))(c2) - - # Bottleneck - c3 = Conv2D(256, (3, 3), activation='relu', padding='same')(p2) - - # Upsampling (Localization) Path - u1 = UpSampling2D((2, 2))(c3) - concat1 = Concatenate()([u1, c2]) # Concatenate with feature maps from the downsampling path - c4 = Conv2D(128, (3, 3), activation='relu', padding='same')(concat1) - u2 = UpSampling2D((2, 2))(c4) - concat2 = Concatenate()([u2, c1]) - c5 = Conv2D(64, (3, 3), activation='relu', padding='same')(concat2) - - # Output Layer - outputs = Conv2D(1, (1, 1), activation='sigmoid')(c5) - - model = tf.keras.Model(inputs, outputs) - return model +import tensorflow as tf +from tensorflow.keras.layers import Input, Conv2D, MaxPooling2D, UpSampling2D, Concatenate + +def unet_model(input_shape=(256, 256, 1)): + inputs = Input(input_shape) + + # Downsampling (Context) Path + c1 = Conv2D(64, (3, 3), activation='relu', padding='same')(inputs) + p1 = MaxPooling2D((2, 2))(c1) + c2 = Conv2D(128, (3, 3), activation='relu', padding='same')(p1) + p2 = MaxPooling2D((2, 2))(c2) + + # Bottleneck + c3 = Conv2D(256, (3, 3), activation='relu', padding='same')(p2) + + # Upsampling (Localization) Path + u1 = UpSampling2D((2, 2))(c3) + concat1 = Concatenate()([u1, c2]) # Concatenate with feature maps from the downsampling path + c4 = Conv2D(128, (3, 3), activation='relu', padding='same')(concat1) + u2 = UpSampling2D((2, 2))(c4) + concat2 = Concatenate()([u2, c1]) + c5 = Conv2D(64, (3, 3), activation='relu', padding='same')(concat2) + + # Output Layer + outputs = Conv2D(1, (1, 1), activation='sigmoid')(c5) + + model = tf.keras.Model(inputs, outputs) + return model diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/requirements.txt b/recognition/ImprovedUNet-ISIC2018-45293915/requirements.txt index f3381910c..461ebc467 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/requirements.txt +++ b/recognition/ImprovedUNet-ISIC2018-45293915/requirements.txt @@ -1,5 +1,5 @@ -# requirements.txt -tensorflow -matplotlib -numpy - +# requirements.txt +tensorflow +matplotlib +numpy + diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/template_train.py b/recognition/ImprovedUNet-ISIC2018-45293915/template_train.py new file mode 100644 index 000000000..252e277a7 --- /dev/null +++ b/recognition/ImprovedUNet-ISIC2018-45293915/template_train.py @@ -0,0 +1,78 @@ +import tensorflow as tf +from modules import unet_model + +# Sample Configuration +EPOCHS = 10 +BATCH_SIZE = 32 +TRAINING_DATA_DIR = "path_to_training_images/" +TRAINING_MASK_DIR = "path_to_training_masks/" +VAL_DATA_DIR = "path_to_val_images/" +VAL_MASK_DIR = "path_to_val_masks/" +IMG_SIZE = (256, 256) + +# ImageDataGenerator for data augmentation +train_datagen = tf.keras.preprocessing.image.ImageDataGenerator( + rescale=1./255, + rotation_range=20, + width_shift_range=0.2, + height_shift_range=0.2, + zoom_range=0.2 +) + +val_datagen = tf.keras.preprocessing.image.ImageDataGenerator(rescale=1./255) + +# Create generators for training and validation datasets +train_image_generator = train_datagen.flow_from_directory( + TRAINING_DATA_DIR, + target_size=IMG_SIZE, + batch_size=BATCH_SIZE, + class_mode=None, # No labels + seed=42, + color_mode="grayscale" +) + +train_mask_generator = train_datagen.flow_from_directory( + TRAINING_MASK_DIR, + target_size=IMG_SIZE, + batch_size=BATCH_SIZE, + class_mode=None, + seed=42, + color_mode="grayscale" +) + +val_image_generator = val_datagen.flow_from_directory( + VAL_DATA_DIR, + target_size=IMG_SIZE, + batch_size=BATCH_SIZE, + class_mode=None, + seed=42, + color_mode="grayscale" +) + +val_mask_generator = val_datagen.flow_from_directory( + VAL_MASK_DIR, + target_size=IMG_SIZE, + batch_size=BATCH_SIZE, + class_mode=None, + seed=42, + color_mode="grayscale" +) + +# Combine image and mask generators +train_generator = zip(train_image_generator, train_mask_generator) +val_generator = zip(val_image_generator, val_mask_generator) + +# Compile and train the model +model = unet_model() +model.compile(optimizer='adam', loss='binary_crossentropy', metrics=['accuracy']) + +model.fit( + train_generator, + validation_data=val_generator, + steps_per_epoch=len(train_image_generator), + validation_steps=len(val_image_generator), + epochs=EPOCHS +) + +# Save the model (optional) +model.save("unet_model.h5") diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/train.py b/recognition/ImprovedUNet-ISIC2018-45293915/train.py index 5db4be716..0bb329dee 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/train.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/train.py @@ -1,78 +1,3 @@ -import tensorflow as tf -from modules import unet_model - -# Sample Configuration -EPOCHS = 10 -BATCH_SIZE = 32 -TRAINING_DATA_DIR = "path_to_training_images/" -TRAINING_MASK_DIR = "path_to_training_masks/" -VAL_DATA_DIR = "path_to_val_images/" -VAL_MASK_DIR = "path_to_val_masks/" -IMG_SIZE = (256, 256) - -# ImageDataGenerator for data augmentation -train_datagen = tf.keras.preprocessing.image.ImageDataGenerator( - rescale=1./255, - rotation_range=20, - width_shift_range=0.2, - height_shift_range=0.2, - zoom_range=0.2 -) - -val_datagen = tf.keras.preprocessing.image.ImageDataGenerator(rescale=1./255) - -# Create generators for training and validation datasets -train_image_generator = train_datagen.flow_from_directory( - TRAINING_DATA_DIR, - target_size=IMG_SIZE, - batch_size=BATCH_SIZE, - class_mode=None, # No labels - seed=42, - color_mode="grayscale" -) - -train_mask_generator = train_datagen.flow_from_directory( - TRAINING_MASK_DIR, - target_size=IMG_SIZE, - batch_size=BATCH_SIZE, - class_mode=None, - seed=42, - color_mode="grayscale" -) - -val_image_generator = val_datagen.flow_from_directory( - VAL_DATA_DIR, - target_size=IMG_SIZE, - batch_size=BATCH_SIZE, - class_mode=None, - seed=42, - color_mode="grayscale" -) - -val_mask_generator = val_datagen.flow_from_directory( - VAL_MASK_DIR, - target_size=IMG_SIZE, - batch_size=BATCH_SIZE, - class_mode=None, - seed=42, - color_mode="grayscale" -) - -# Combine image and mask generators -train_generator = zip(train_image_generator, train_mask_generator) -val_generator = zip(val_image_generator, val_mask_generator) - -# Compile and train the model -model = unet_model() -model.compile(optimizer='adam', loss='binary_crossentropy', metrics=['accuracy']) - -model.fit( - train_generator, - validation_data=val_generator, - steps_per_epoch=len(train_image_generator), - validation_steps=len(val_image_generator), - epochs=EPOCHS -) - -# Save the model (optional) -model.save("unet_model.h5") +from dataset import get_dataloaders + +train_dataloader, test_dataloader, valid_dataloader = get_dataloaders() \ No newline at end of file diff --git a/recognition/README.md b/recognition/README.md index 5c646231c..0f840e069 100644 --- a/recognition/README.md +++ b/recognition/README.md @@ -1,10 +1,10 @@ -# Recognition Tasks -Various recognition tasks solved in deep learning frameworks. - -Tasks may include: -* Image Segmentation -* Object detection -* Graph node classification -* Image super resolution -* Disease classification -* Generative modelling with StyleGAN and Stable Diffusion +# Recognition Tasks +Various recognition tasks solved in deep learning frameworks. + +Tasks may include: +* Image Segmentation +* Object detection +* Graph node classification +* Image super resolution +* Disease classification +* Generative modelling with StyleGAN and Stable Diffusion From 36a0de03ff317be87fef64aeed5e7d7d5d00c1f9 Mon Sep 17 00:00:00 2001 From: riley-ball Date: Sun, 22 Oct 2023 10:42:04 +1000 Subject: [PATCH 13/45] gpu working on ubuntu --- .../ImprovedUNet-ISIC2018-45293915/.gitignore | 5 +- .../ImprovedUNet-ISIC2018-45293915/dataset.py | 93 +++++++++---------- .../requirements.txt | 2 +- .../ImprovedUNet-ISIC2018-45293915/train.py | 16 +++- 4 files changed, 63 insertions(+), 53 deletions(-) diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/.gitignore b/recognition/ImprovedUNet-ISIC2018-45293915/.gitignore index 34d1686a2..73380c636 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/.gitignore +++ b/recognition/ImprovedUNet-ISIC2018-45293915/.gitignore @@ -160,4 +160,7 @@ cython_debug/ #.idea/ # datasets folder -/datasets \ No newline at end of file +/datasets + +# modelenv environment folder +/modelenv \ No newline at end of file diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/dataset.py b/recognition/ImprovedUNet-ISIC2018-45293915/dataset.py index f9087bbbf..db6cc5aed 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/dataset.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/dataset.py @@ -1,54 +1,47 @@ import tensorflow as tf import glob -import cv2 -import numpy as np class SegmentationDataset(tf.data.Dataset): - def __init__(self, imageDir, maskDir, image_size, cache=False): - # store the image and mask filepaths, and augmentation transforms - self.cache = cache - self.imagePaths = sorted(glob.glob(imageDir + "/*")) - self.maskPaths = sorted(glob.glob(maskDir + "/*")) - self.image_size = image_size - - # Create a dataset from the list of file paths - self.dataset = tf.data.Dataset.from_tensor_slices((self.imagePaths, self.maskPaths)) - self.dataset = self.dataset.map(self._load_image_and_mask, num_parallel_calls=tf.data.experimental.AUTOTUNE) - - if self.cache: - self.dataset = self.dataset.cache() - - def _load_image_and_mask(self, image_path, mask_path): - image = tf.io.read_file(image_path) - image = tf.image.decode_jpeg(image, channels=3) - image = tf.image.resize(image, self.image_size) - image = image / 255.0 # Normalize - - mask = tf.io.read_file(mask_path) - mask = tf.image.decode_jpeg(mask, channels=1) - mask = tf.image.resize(mask, self.image_size) - mask = mask / 255.0 # Normalize - - return image, mask - - def __call__(self, batch_size=32, shuffle=False): - if shuffle: - self.dataset = self.dataset.shuffle(buffer_size=1000) - self.dataset = self.dataset.batch(batch_size) - self.dataset = self.dataset.prefetch(buffer_size=tf.data.experimental.AUTOTUNE) - return self.dataset - -def get_dataloaders(batch_size=32): - train_dataset = SegmentationDataset("/datasets/ISIC2018_Task1-2_Training_Input", - "/datasets/ISIC2018_Task1-2_Training_Input_GroundTruth", - (572, 572), cache=True) - - test_dataset = SegmentationDataset("/datasets/ISIC2018_Task1-2_Test_Input", - "/datasets/ISIC2018_Task1-2_Test_Input_GroundTruth", - (572, 572), cache=True) - - valid_dataset = SegmentationDataset("/datasets/ISIC2018_Task1-2_Training_Input", - "/datasets/ISIC2018_Task1-2_Training_Input_GroundTruth", - (572, 572), cache=True) - - return train_dataset(batch_size), test_dataset(batch_size), valid_dataset(batch_size) + def _generator(image_paths, mask_paths, image_size): + for image_path, mask_path in zip(image_paths, mask_paths): + image = tf.io.read_file(image_path) + image = tf.image.decode_jpeg(image, channels=3) + image = tf.image.resize(image, image_size) + image = image / 255.0 # Normalize + + mask = tf.io.read_file(mask_path) + mask = tf.image.decode_png(mask, channels=1) # Assuming mask is in PNG format + mask = tf.image.resize(mask, image_size) + mask = mask / 255.0 # Normalize + + yield image, mask + + def __new__(cls, image_dir, mask_dir, image_size, cache=False): + image_paths = sorted(glob.glob(image_dir + "/*")) + mask_paths = sorted(glob.glob(mask_dir + "/*")) + + # Assume that the number of images and masks are the same + dataset = tf.data.Dataset.from_generator( + cls._generator, + output_signature=( + tf.TensorSpec(shape=(image_size[0], image_size[1], 3), dtype=tf.float32), + tf.TensorSpec(shape=(image_size[0], image_size[1], 1), dtype=tf.float32) + ), + args=(image_paths, mask_paths, image_size) + ) + + if cache: + dataset = dataset.cache() + + return dataset + +def get_dataloaders(batch_size=32, image_size=(572, 572)): + train_dataset = SegmentationDataset("/datasets/ISIC2018_Task1-2_Training_Input", "/datasets/ISIC2018_Task1-2_Training_Input_GroundTruth", image_size, cache=True) + test_dataset = SegmentationDataset("/datasets/ISIC2018_Task1-2_Test_Input", "/datasets/ISIC2018_Task1-2_Test_Input_GroundTruth", image_size, cache=True) + valid_dataset = SegmentationDataset("/datasets/ISIC2018_Task1-2_Validation_Input", "/datasets/ISIC2018_Task1-2_Validation_Input_GroundTruth", image_size, cache=True) + + train_dataloader = train_dataset.batch(batch_size).prefetch(tf.data.AUTOTUNE) + test_dataloader = test_dataset.batch(batch_size).prefetch(tf.data.AUTOTUNE) + valid_dataloader = valid_dataset.batch(batch_size).prefetch(tf.data.AUTOTUNE) + + return train_dataloader, test_dataloader, valid_dataloader diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/requirements.txt b/recognition/ImprovedUNet-ISIC2018-45293915/requirements.txt index 461ebc467..c531b1f3d 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/requirements.txt +++ b/recognition/ImprovedUNet-ISIC2018-45293915/requirements.txt @@ -1,5 +1,5 @@ # requirements.txt -tensorflow +tensorflow[and-cuda] matplotlib numpy diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/train.py b/recognition/ImprovedUNet-ISIC2018-45293915/train.py index 0bb329dee..8e70d668c 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/train.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/train.py @@ -1,3 +1,17 @@ from dataset import get_dataloaders +import tensorflow as tf +print("Num GPUs Available: ", len(tf.config.experimental.list_physical_devices('GPU'))) +print(tf.__version__) -train_dataloader, test_dataloader, valid_dataloader = get_dataloaders() \ No newline at end of file +try: + train_dataloader, test_dataloader, valid_dataloader = get_dataloaders() + + print("aaaaa", train_dataloader) + + if not train_dataloader: + print("Error: train_dataloader is empty") + + # + +except Exception as e: + print("An error occurred: ", str(e)) From c743481987af110c36646c0bf5b5ff2c1f039fda Mon Sep 17 00:00:00 2001 From: riley-ball Date: Sun, 22 Oct 2023 11:24:54 +1000 Subject: [PATCH 14/45] moving to only ubuntu and not accessing through mounting C drive --- .../ImprovedUNet-ISIC2018-45293915/dataset.py | 78 +++++++++---------- .../ImprovedUNet-ISIC2018-45293915/train.py | 33 +++++--- 2 files changed, 58 insertions(+), 53 deletions(-) diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/dataset.py b/recognition/ImprovedUNet-ISIC2018-45293915/dataset.py index db6cc5aed..6cb1485f9 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/dataset.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/dataset.py @@ -1,47 +1,41 @@ import tensorflow as tf -import glob - -class SegmentationDataset(tf.data.Dataset): - def _generator(image_paths, mask_paths, image_size): - for image_path, mask_path in zip(image_paths, mask_paths): - image = tf.io.read_file(image_path) - image = tf.image.decode_jpeg(image, channels=3) - image = tf.image.resize(image, image_size) - image = image / 255.0 # Normalize - - mask = tf.io.read_file(mask_path) - mask = tf.image.decode_png(mask, channels=1) # Assuming mask is in PNG format - mask = tf.image.resize(mask, image_size) - mask = mask / 255.0 # Normalize - - yield image, mask - - def __new__(cls, image_dir, mask_dir, image_size, cache=False): - image_paths = sorted(glob.glob(image_dir + "/*")) - mask_paths = sorted(glob.glob(mask_dir + "/*")) - - # Assume that the number of images and masks are the same - dataset = tf.data.Dataset.from_generator( - cls._generator, - output_signature=( - tf.TensorSpec(shape=(image_size[0], image_size[1], 3), dtype=tf.float32), - tf.TensorSpec(shape=(image_size[0], image_size[1], 1), dtype=tf.float32) - ), - args=(image_paths, mask_paths, image_size) - ) - - if cache: - dataset = dataset.cache() - return dataset +class SkinLesionDataset: + def __init__(self, data_dir, target_size=(512, 512)): + self.data_dir = data_dir + self.target_size = target_size + + self.train_dataset = self.load_dataset("ISIC2018_Task1-2_Training_Input", "ISIC2018_Task1_Training_GroundTruth") + self.test_dataset = self.load_dataset("ISIC2018_Task1-2_Test_Input", "ISIC2018_Task1_Test_GroundTruth") + self.validation_dataset = self.load_dataset("ISIC2018_Task1-2_Validation_Input", "ISIC2018_Task1_Validation_GroundTruth") + + def load_and_preprocess(self, image_path, mask_path): + # Load and decode image + image = tf.io.decode_image(tf.io.read_file(image_path), channels=3) # Adjust channels as needed + + # Resize image to the target size with padding + image = tf.image.resize_with_pad(image, target_height=self.target_size[0], target_width=self.target_size[1]) + image = tf.cast(image, tf.float32) / 255.0 + + # Load and decode mask + mask = tf.io.decode_image(tf.io.read_file(mask_path), channels=1) # Assuming grayscale masks -def get_dataloaders(batch_size=32, image_size=(572, 572)): - train_dataset = SegmentationDataset("/datasets/ISIC2018_Task1-2_Training_Input", "/datasets/ISIC2018_Task1-2_Training_Input_GroundTruth", image_size, cache=True) - test_dataset = SegmentationDataset("/datasets/ISIC2018_Task1-2_Test_Input", "/datasets/ISIC2018_Task1-2_Test_Input_GroundTruth", image_size, cache=True) - valid_dataset = SegmentationDataset("/datasets/ISIC2018_Task1-2_Validation_Input", "/datasets/ISIC2018_Task1-2_Validation_Input_GroundTruth", image_size, cache=True) + # Resize mask to the target size with padding + mask = tf.image.resize_with_pad(mask, target_height=self.target_size[0], target_width=self.target_size[1]) + mask = tf.cast(mask, tf.float32) / 255.0 - train_dataloader = train_dataset.batch(batch_size).prefetch(tf.data.AUTOTUNE) - test_dataloader = test_dataset.batch(batch_size).prefetch(tf.data.AUTOTUNE) - valid_dataloader = valid_dataset.batch(batch_size).prefetch(tf.data.AUTOTUNE) + return image, mask + + def load_dataset(self, input_folder, ground_truth_folder): + input_paths = sorted([str(path.numpy()) for path in tf.data.Dataset.list_files(f"{self.data_dir}/{input_folder}/*")]) + ground_truth_paths = sorted([str(path.numpy()) for path in tf.data.Dataset.list_files(f"{self.data_dir}/{ground_truth_folder}/*")]) + + dataset = tf.data.Dataset.zip((tf.data.Dataset.from_tensor_slices(input_paths), tf.data.Dataset.from_tensor_slices(ground_truth_paths))).map(self.load_and_preprocess) + + return dataset - return train_dataloader, test_dataloader, valid_dataloader +# Example usage: +# dataset = SkinLesionDataset("datasets") +# train_data = dataset.train_dataset +# test_data = dataset.test_dataset +# validation_data = dataset.validation_dataset diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/train.py b/recognition/ImprovedUNet-ISIC2018-45293915/train.py index 8e70d668c..843a2cf58 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/train.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/train.py @@ -1,17 +1,28 @@ -from dataset import get_dataloaders import tensorflow as tf -print("Num GPUs Available: ", len(tf.config.experimental.list_physical_devices('GPU'))) -print(tf.__version__) +from dataset import SkinLesionDataset +from matplotlib import pyplot as plt -try: - train_dataloader, test_dataloader, valid_dataloader = get_dataloaders() +# Example usage: +dataset = SkinLesionDataset(data_dir="datasets") +train_data = dataset.train_dataset - print("aaaaa", train_dataloader) +# Define the number of images to show +n_images = 5 + +# Get the first n_images pairs from the training dataset +image_mask_pairs = [item for item in train_data.take(n_images)] + +# Plot images and masks +fig, axes = plt.subplots(nrows=2, ncols=n_images, figsize=(15, 15)) +for i in range(n_images): + image, mask = image_mask_pairs[i] + axes[0, i].imshow(image) + axes[0, i].axis("off") + axes[0, i].set_title("Image") - if not train_dataloader: - print("Error: train_dataloader is empty") + axes[1, i].imshow(mask, cmap='gray') # Assuming grayscale masks + axes[1, i].axis("off") + axes[1, i].set_title("Mask") - # +plt.show() -except Exception as e: - print("An error occurred: ", str(e)) From 155f9e5b62dab51e8838c3462d58db0a0f53371d Mon Sep 17 00:00:00 2001 From: riley-ball Date: Sun, 22 Oct 2023 14:08:45 +1000 Subject: [PATCH 15/45] modified dataset.py to use flow_from_directory --- .../ImprovedUNet-ISIC2018-45293915/dataset.py | 94 ++++++++++++------- 1 file changed, 61 insertions(+), 33 deletions(-) diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/dataset.py b/recognition/ImprovedUNet-ISIC2018-45293915/dataset.py index 6cb1485f9..5962787bf 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/dataset.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/dataset.py @@ -1,41 +1,69 @@ +import os import tensorflow as tf +from tensorflow import keras +import numpy as np +from itertools import islice +import math -class SkinLesionDataset: - def __init__(self, data_dir, target_size=(512, 512)): - self.data_dir = data_dir - self.target_size = target_size +# Constants related to data preprocessing +IMAGE_HEIGHT = 512 +IMAGE_WIDTH = 512 +CHANNELS = 3 +SEED = 45 +BATCH_SIZE = 2 +# Directory containing the dataset +PATH_ORIGINAL_DATA = os.path.join("datasets", "training_input") # directory that contains folder containing input images +PATH_SEG_DATA = os.path.join("datasets", "training_groundtruth") # directory that contains folder containing ground truth images +IMAGE_MODE = "rgb" +MASK_MODE = "grayscale" +DATA_TRAIN_GEN_ARGS = dict( + rescale=1.0/255, + shear_range=0.1, + zoom_range=0.1, + horizontal_flip=True, + vertical_flip=True, + fill_mode='nearest', + validation_split=0.2) # 0.2 used to have training set take the first 80% of images +# Set the properties for the image generators for testing images. No image transformations. +DATA_TEST_GEN_ARGS = dict( + rescale=1.0/255, + validation_split=0.8) # 0.8 used to have test set take the final 20% of images (keep train/test data separated) +# Set the shared properties for generator flows - scale all images to given dimensions. +TEST_TRAIN_GEN_ARGS = dict( + seed=SEED, + class_mode=None, + batch_size=BATCH_SIZE, + interpolation="nearest", + subset='training', # all subsets are set to training - this corresponds to the first 80% and last 20% for each + target_size=(IMAGE_HEIGHT, IMAGE_WIDTH)) - self.train_dataset = self.load_dataset("ISIC2018_Task1-2_Training_Input", "ISIC2018_Task1_Training_GroundTruth") - self.test_dataset = self.load_dataset("ISIC2018_Task1-2_Test_Input", "ISIC2018_Task1_Test_GroundTruth") - self.validation_dataset = self.load_dataset("ISIC2018_Task1-2_Validation_Input", "ISIC2018_Task1_Validation_GroundTruth") +# Preprocess data forming the generators. +def pre_process_data(): + train_image_data_generator = keras.preprocessing.image.ImageDataGenerator(**DATA_TRAIN_GEN_ARGS) + train_mask_data_generator = keras.preprocessing.image.ImageDataGenerator(**DATA_TRAIN_GEN_ARGS) + test_image_data_generator = keras.preprocessing.image.ImageDataGenerator(**DATA_TEST_GEN_ARGS) + test_mask_data_generator = keras.preprocessing.image.ImageDataGenerator(**DATA_TEST_GEN_ARGS) - def load_and_preprocess(self, image_path, mask_path): - # Load and decode image - image = tf.io.decode_image(tf.io.read_file(image_path), channels=3) # Adjust channels as needed + image_train_gen = train_image_data_generator.flow_from_directory( + PATH_ORIGINAL_DATA, + color_mode=IMAGE_MODE, + **TEST_TRAIN_GEN_ARGS) - # Resize image to the target size with padding - image = tf.image.resize_with_pad(image, target_height=self.target_size[0], target_width=self.target_size[1]) - image = tf.cast(image, tf.float32) / 255.0 + image_test_gen = test_image_data_generator.flow_from_directory( + PATH_ORIGINAL_DATA, + color_mode=IMAGE_MODE, + **TEST_TRAIN_GEN_ARGS) - # Load and decode mask - mask = tf.io.decode_image(tf.io.read_file(mask_path), channels=1) # Assuming grayscale masks + mask_train_gen = train_mask_data_generator.flow_from_directory( + PATH_SEG_DATA, + color_mode=MASK_MODE, + **TEST_TRAIN_GEN_ARGS) - # Resize mask to the target size with padding - mask = tf.image.resize_with_pad(mask, target_height=self.target_size[0], target_width=self.target_size[1]) - mask = tf.cast(mask, tf.float32) / 255.0 + mask_test_gen = test_mask_data_generator.flow_from_directory( + PATH_SEG_DATA, + color_mode=MASK_MODE, + **TEST_TRAIN_GEN_ARGS) - return image, mask - - def load_dataset(self, input_folder, ground_truth_folder): - input_paths = sorted([str(path.numpy()) for path in tf.data.Dataset.list_files(f"{self.data_dir}/{input_folder}/*")]) - ground_truth_paths = sorted([str(path.numpy()) for path in tf.data.Dataset.list_files(f"{self.data_dir}/{ground_truth_folder}/*")]) - - dataset = tf.data.Dataset.zip((tf.data.Dataset.from_tensor_slices(input_paths), tf.data.Dataset.from_tensor_slices(ground_truth_paths))).map(self.load_and_preprocess) - - return dataset - -# Example usage: -# dataset = SkinLesionDataset("datasets") -# train_data = dataset.train_dataset -# test_data = dataset.test_dataset -# validation_data = dataset.validation_dataset + # Ideally this would be a Sequence joining the two generators instead of zipping them together to keep everything + # thread-safe, allowing for multiprocessing - but if it ain't broke. (It works). + return zip(image_train_gen, mask_train_gen), zip(image_test_gen, mask_test_gen) From 28c4d73f9e75b6072f6c4df010c8506266324761 Mon Sep 17 00:00:00 2001 From: riley-ball Date: Sun, 22 Oct 2023 14:11:46 +1000 Subject: [PATCH 16/45] modified and updated model architecture and successfully created dataloaders and trained for an epoch --- .../ImprovedUNet-ISIC2018-45293915/modules.py | 175 +++++++++++++++--- .../ImprovedUNet-ISIC2018-45293915/train.py | 134 +++++++++++--- 2 files changed, 261 insertions(+), 48 deletions(-) diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/modules.py b/recognition/ImprovedUNet-ISIC2018-45293915/modules.py index 85e1553ed..24f8179f0 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/modules.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/modules.py @@ -1,28 +1,149 @@ import tensorflow as tf -from tensorflow.keras.layers import Input, Conv2D, MaxPooling2D, UpSampling2D, Concatenate - -def unet_model(input_shape=(256, 256, 1)): - inputs = Input(input_shape) - - # Downsampling (Context) Path - c1 = Conv2D(64, (3, 3), activation='relu', padding='same')(inputs) - p1 = MaxPooling2D((2, 2))(c1) - c2 = Conv2D(128, (3, 3), activation='relu', padding='same')(p1) - p2 = MaxPooling2D((2, 2))(c2) - - # Bottleneck - c3 = Conv2D(256, (3, 3), activation='relu', padding='same')(p2) - - # Upsampling (Localization) Path - u1 = UpSampling2D((2, 2))(c3) - concat1 = Concatenate()([u1, c2]) # Concatenate with feature maps from the downsampling path - c4 = Conv2D(128, (3, 3), activation='relu', padding='same')(concat1) - u2 = UpSampling2D((2, 2))(c4) - concat2 = Concatenate()([u2, c1]) - c5 = Conv2D(64, (3, 3), activation='relu', padding='same')(concat2) - - # Output Layer - outputs = Conv2D(1, (1, 1), activation='sigmoid')(c5) - - model = tf.keras.Model(inputs, outputs) - return model +from tensorflow import keras +from tensorflow.keras.regularizers import l2 +import tensorflow_addons as tfa +# 'tensorflow-addons' is an officially supported repository implementing new functionality: +# More info at https://www.tensorflow.org/addons. Version 0.9.1 is required for TF 2.1. +# TFA allows for a InstanceNormalization layer (rather than a BatchNormalization layer), as was implemented in the +# referenced 'improved UNet'. This layer is necessary due to the usage of my small batch-size of 2, which can lead to +# "stochasticity induced ...[which]... may destabilize batch normalizaton" - +# F. Isensee, P. Kickingereder, W. Wick, M. Bendszus, and K. H. Maier-Hein, “Brain Tumor Segmentation and +# Radiomics Survival Prediction: Contribution to the BRATS 2017 Challenge,” Feb. 2018. [Online]. Available: +# https://arxiv.org/abs/1802.10508v1. +# While BatchNormalization normalises across the batch, InstanceNormalization normalises each batch separately. + +# -------------------------------------------- +# GLOBAL CONSTANTS +# -------------------------------------------- + +LEAKY_RELU_ALPHA = 0.01 +DROPOUT = 0.35 +L2_WEIGHT_DECAY = 0.0005 +CONV_PROPERTIES = dict( + kernel_regularizer=l2(L2_WEIGHT_DECAY), + bias_regularizer=l2(L2_WEIGHT_DECAY), + padding="same") +I_NORMALIZATION_PROPERTIES = dict( + axis=3, + center=True, + scale=True, + beta_initializer="random_uniform", + gamma_initializer="random_uniform") + + +# -------------------------------------------- +# IMPROVED UNET MODEL FOR ISICS BINARY SEGMENTATION +# -------------------------------------------- + +# Implementation based off the 'improved UNet': https://arxiv.org/abs/1802.10508v1. +# 2D implementation rather than 3D as 2D inputs/outputs are required. +def improved_unet(width, height, channels): + input = keras.Input(shape=(width, height, channels)) # Set input shape + + x1 = keras.layers.Conv2D(16, (3, 3), input_shape=(width, height, channels), **CONV_PROPERTIES)(input) + # x2 = keras.layers.BatchNormalization()(x1) + x2 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(x1) + x3 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(x2) + x4 = context_module(x3, 16) + x5 = keras.layers.Add()([x1, x4]) + + x6 = keras.layers.Conv2D(32, (3, 3), strides=2, **CONV_PROPERTIES)(x5) + # x7 = keras.layers.BatchNormalization()(x6) + x7 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(x6) + x8 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(x7) + x9 = context_module(x8, 32) + x10 = keras.layers.Add()([x8, x9]) + + x11 = keras.layers.Conv2D(64, (3, 3), strides=2, **CONV_PROPERTIES)(x10) + # x12 = keras.layers.BatchNormalization()(x11) + x12 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(x11) + x13 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(x12) + x14 = context_module(x13, 64) + x15 = keras.layers.Add()([x13, x14]) + + x16 = keras.layers.Conv2D(128, (3, 3), strides=2, **CONV_PROPERTIES)(x15) + # x17 = keras.layers.BatchNormalization()(x16) + x17 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(x16) + x18 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(x17) + x19 = context_module(x18, 128) + x20 = keras.layers.Add()([x18, x19]) + + x21 = keras.layers.Conv2D(256, (3, 3), strides=2, **CONV_PROPERTIES)(x20) + # x22 = keras.layers.BatchNormalization()(x21) + x22 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(x21) + x23 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(x22) + x24 = context_module(x23, 256) + x25 = keras.layers.Add()([x23, x24]) + x26 = upsampling_module(x25, 128) + + x27 = keras.layers.Concatenate()([x20, x26]) + x28 = localisation_module(x27, 128) + x29 = upsampling_module(x28, 64) + + x30 = keras.layers.Concatenate()([x15, x29]) + x31 = localisation_module(x30, 64) + x32 = upsampling_module(x31, 32) + + x33 = keras.layers.Concatenate()([x10, x32]) + x34 = localisation_module(x33, 32) + x35 = upsampling_module(x34, 16) + + x36 = keras.layers.Concatenate()([x5, x35]) + x37 = keras.layers.Conv2D(32, (3, 3), **CONV_PROPERTIES)(x36) + # x38 = keras.layers.BatchNormalization()(x37) + x38 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(x37) + x39 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(x38) + + seg_layer1 = keras.layers.Activation('sigmoid')(x31) + u1 = upsampling_module(seg_layer1, 32) + seg_layer2 = keras.layers.Activation('sigmoid')(x34) + s1 = keras.layers.Add()([u1, seg_layer2]) + u2 = upsampling_module(s1, 32) + seg_layer3 = keras.layers.Activation('sigmoid')(x39) + s2 = keras.layers.Add()([u2, seg_layer3]) + + # Sigmoid used as final activation layers as this is a binary segmentation, not three or more classes + output = keras.layers.Conv2D(1, (1, 1), activation="sigmoid", **CONV_PROPERTIES)(s2) + u_net = keras.Model(inputs=[input], outputs=[output]) + return u_net + + +# -------------------------------------------- +# MODULES +# -------------------------------------------- + +# A 'Context Module', based off the 'improved UNet'. +def context_module(input, out_filter): + x1 = keras.layers.Conv2D(out_filter, (3, 3), **CONV_PROPERTIES)(input) + # x2 = keras.layers.BatchNormalization()(x1) + x2 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(x1) + x3 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(x2) + x4 = keras.layers.Dropout(DROPOUT)(x3) + x5 = keras.layers.Conv2D(out_filter, (3, 3), **CONV_PROPERTIES)(x4) + #x6 = keras.layers.BatchNormalization()(x5) + x6 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(x5) + x7 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(x6) + return x7 + + +# An 'Upsampling Module', based off the 'improved UNet'. +def upsampling_module(input, out_filter): + x1 = keras.layers.UpSampling2D(size=(2, 2))(input) + x2 = keras.layers.Conv2D(out_filter, (3, 3), **CONV_PROPERTIES)(x1) + # x3 = keras.layers.BatchNormalization()(x2) + x3 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(x2) + x4 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(x3) + return x4 + + +# A 'Localisation Module', based off the 'improved UNet'. +def localisation_module(input, out_filter): + x1 = keras.layers.Conv2D(out_filter, (3, 3), **CONV_PROPERTIES)(input) + # x2 = keras.layers.BatchNormalization()(x1) + x2 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(x1) + x3 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(x2) + x4 = keras.layers.Conv2D(out_filter, (1, 1), **CONV_PROPERTIES)(x3) + # x5 = keras.layers.BatchNormalization()(x4) + x5 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(x4) + x6 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(x5) + return x6 \ No newline at end of file diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/train.py b/recognition/ImprovedUNet-ISIC2018-45293915/train.py index 843a2cf58..5f76f6566 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/train.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/train.py @@ -1,28 +1,120 @@ +import os import tensorflow as tf -from dataset import SkinLesionDataset -from matplotlib import pyplot as plt +from tensorflow import keras +import numpy as np +import matplotlib.pyplot as plt +from itertools import islice +import math -# Example usage: -dataset = SkinLesionDataset(data_dir="datasets") -train_data = dataset.train_dataset +import modules as layers +from dataset import pre_process_data -# Define the number of images to show -n_images = 5 +# Constants related to training +EPOCHS = 1 +LEARNING_RATE = 0.0005 +BATCH_SIZE = 2 # set the batch_size +IMAGE_HEIGHT = 512 # the height input images are scaled to +IMAGE_WIDTH = 512 # the width input images are scaled to +CHANNELS = 3 +STEPS_PER_EPOCH_TRAIN = math.floor(2076 / BATCH_SIZE) +STEPS_PER_EPOCH_TEST = math.floor(519 / BATCH_SIZE) +NUMBER_SHOW_TEST_PREDICTIONS = 3 -# Get the first n_images pairs from the training dataset -image_mask_pairs = [item for item in train_data.take(n_images)] +# Define your dice_coefficient, dice_loss, and other functions here -# Plot images and masks -fig, axes = plt.subplots(nrows=2, ncols=n_images, figsize=(15, 15)) -for i in range(n_images): - image, mask = image_mask_pairs[i] - axes[0, i].imshow(image) - axes[0, i].axis("off") - axes[0, i].set_title("Image") - - axes[1, i].imshow(mask, cmap='gray') # Assuming grayscale masks - axes[1, i].axis("off") - axes[1, i].set_title("Mask") +# Plot the accuracy and loss curves of model training. +def plot_accuracy_loss(track): + plt.figure(0) + plt.plot(track.history['accuracy']) + plt.plot(track.history['loss']) + plt.title('Loss & Accuracy Curves') + plt.xlabel('Epoch') + plt.legend(['Accuracy', 'Loss']) + plt.show() -plt.show() +# Metric for how similar two sets (prediction vs truth) are. +# Implementation based off https://en.wikipedia.org/wiki/S%C3%B8rensen%E2%80%93Dice_coefficient +# DSC = (2|X & Y|) / (|X| + |Y|) -> 'soft' dice coefficient. +def dice_coefficient(truth, pred, eps=1e-7, axis=(1, 2, 3)): + numerator = (2.0 * (tf.reduce_sum(pred * truth, axis=axis))) + eps + denominator = tf.reduce_sum(pred, axis=axis) + tf.reduce_sum(truth, axis=axis) + eps + dice = tf.reduce_mean(numerator / denominator) + return dice + + +# Loss function - DSC distance. +def dice_loss(truth, pred): + return 1.0 - dice_coefficient(truth, pred) + + +# Compile and train the model, evaluate test loss and accuracy. +def train_model_check_accuracy(train_gen, test_gen): + model = layers.improved_unet(IMAGE_WIDTH, IMAGE_HEIGHT, CHANNELS) + model.summary() + model.compile(optimizer=keras.optimizers.Adam(LEARNING_RATE), + loss=dice_loss, metrics=['accuracy', dice_coefficient]) + track = model.fit( + train_gen, + steps_per_epoch=STEPS_PER_EPOCH_TRAIN, + epochs=EPOCHS, + shuffle=True, + verbose=1, + use_multiprocessing=False) + plot_accuracy_loss(track) + + print("\nEvaluating test images...") + test_loss, test_accuracy, test_dice = \ + model.evaluate(test_gen, steps=STEPS_PER_EPOCH_TEST, verbose=2, use_multiprocessing=False) + print("Test Accuracy: " + str(test_accuracy)) + print("Test Loss: " + str(test_loss)) + print("Test DSC: " + str(test_dice) + "\n") + return model + +# Test and visualize model predictions with a set amount of test inputs. +def test_visualise_model_predictions(model, test_gen): + print(model) + print(test_gen) + test_range = np.arange(0, stop=NUMBER_SHOW_TEST_PREDICTIONS, step=1) + figure, axes = plt.subplots(NUMBER_SHOW_TEST_PREDICTIONS, 3) + for i in test_range: + current = next(islice(test_gen, i, None)) + image_input = current[0] # Image tensor + mask_truth = current[1] # Mask tensor + test_pred = model.predict(image_input, steps=1, use_multiprocessing=False)[0] + truth = mask_truth[0] + original = image_input[0] + probabilities = keras.preprocessing.image.img_to_array(test_pred) + test_dice = dice_coefficient(truth, test_pred, axis=None) + + axes[i][0].title.set_text('Input') + axes[i][0].imshow(original, vmin=0.0, vmax=1.0) + axes[i][0].set_axis_off() + axes[i][1].title.set_text('Output (DSC: ' + str(test_dice.numpy()) + ")") + axes[i][1].imshow(probabilities, cmap='gray', vmin=0.0, vmax=1.0) + axes[i][1].set_axis_off() + axes[i][2].title.set_text('Ground Truth') + axes[i][2].imshow(truth, cmap='gray', vmin=0.0, vmax=1.0) + axes[i][2].set_axis_off() + plt.axis('off') + plt.show() + + +# Run the test driver. +def main(): + print("\nPREPROCESSING IMAGES") + train_gen, test_gen = pre_process_data() + print("\nTRAINING MODEL") + model = train_model_check_accuracy(train_gen, test_gen) + # Save the trained model to a file + print("\nSAVING MODEL") + model.save("your_model_name.h5") + print("\nVISUALISING PREDICTIONS") + test_visualise_model_predictions(model, test_gen) + + print("COMPLETED") + return 0 + + +if __name__ == "__main__": + main() \ No newline at end of file From 4c9040f7826cc242c0aef0a51d19f0a30b76db24 Mon Sep 17 00:00:00 2001 From: riley-ball Date: Sun, 22 Oct 2023 16:52:41 +1000 Subject: [PATCH 17/45] modify model file type from h5 to keras --- recognition/ImprovedUNet-ISIC2018-45293915/train.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/train.py b/recognition/ImprovedUNet-ISIC2018-45293915/train.py index 5f76f6566..f1adec7b7 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/train.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/train.py @@ -10,7 +10,7 @@ from dataset import pre_process_data # Constants related to training -EPOCHS = 1 +EPOCHS = 10 LEARNING_RATE = 0.0005 BATCH_SIZE = 2 # set the batch_size IMAGE_HEIGHT = 512 # the height input images are scaled to @@ -108,7 +108,7 @@ def main(): model = train_model_check_accuracy(train_gen, test_gen) # Save the trained model to a file print("\nSAVING MODEL") - model.save("your_model_name.h5") + model.save("my_model.keras") print("\nVISUALISING PREDICTIONS") test_visualise_model_predictions(model, test_gen) From 170b7802dd198fa95c4789a2e997b96b50bcfee5 Mon Sep 17 00:00:00 2001 From: riley-ball Date: Sun, 22 Oct 2023 16:53:28 +1000 Subject: [PATCH 18/45] add output folder for plots and test visualisations --- .../output/10_epoch.png | Bin 0 -> 21761 bytes .../output/10_epoch_test.png | Bin 0 -> 120105 bytes 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/output/10_epoch.png create mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/output/10_epoch_test.png diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/output/10_epoch.png b/recognition/ImprovedUNet-ISIC2018-45293915/output/10_epoch.png new file mode 100644 index 0000000000000000000000000000000000000000..9412202ff0d8d84c6950655683f4a4735d338063 GIT binary patch literal 21761 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 ay;{@D40*<9d;pnX(h~AF({9{(^nU^C+Kie2 literal 0 HcmV?d00001 diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/output/10_epoch_test.png b/recognition/ImprovedUNet-ISIC2018-45293915/output/10_epoch_test.png new file mode 100644 index 0000000000000000000000000000000000000000..cbc09c30e268b5e7aad71979ac41d1935873ef2b GIT binary patch literal 120105 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

L1U#`hL>*_!M)-YF`2K8RP&kGB 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 MDyhTk6wJf^559Vd@c;k- literal 0 HcmV?d00001 diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/output/visualization_1_20231022-180008.png b/recognition/ImprovedUNet-ISIC2018-45293915/output/visualization_1_20231022-180008.png new file mode 100644 index 0000000000000000000000000000000000000000..d87d5444ab51929f29a25ec2d346ee8b0ce0a0ba GIT binary patch literal 78724 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 XWox&}y2y=rEa34%RY#>-$ui`B7h>t4 literal 0 HcmV?d00001 diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/output/visualization_2_20231022-180008.png b/recognition/ImprovedUNet-ISIC2018-45293915/output/visualization_2_20231022-180008.png new file mode 100644 index 0000000000000000000000000000000000000000..f741340e6be7c8e52f944d2737bc68ff14b4a152 GIT binary patch literal 60675 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 Gu>S!pJrPR) literal 0 HcmV?d00001 diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/output/visualization_2_20231022-190308.png b/recognition/ImprovedUNet-ISIC2018-45293915/output/visualization_2_20231022-190308.png new file mode 100644 index 0000000000000000000000000000000000000000..0eaa82777108225cde64bfea239444e08ccaae43 GIT binary patch literal 57326 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 Date: Sun, 22 Oct 2023 20:07:44 +1000 Subject: [PATCH 24/45] updates --- .../ImprovedUNet-ISIC2018-45293915/.gitignore | 5 +- .../ImprovedUNet-ISIC2018-45293915/README.md | 2 +- .../output/10_epoch.png | Bin 21761 -> 0 bytes .../output/10_epoch_test.png | Bin 120105 -> 0 bytes .../accuracy_loss_plot_20231022-180008.png | Bin 22448 -> 0 bytes .../accuracy_loss_plot_20231022-190308.png | Bin 23727 -> 0 bytes .../visualization_0_20231022-180008.png | Bin 46252 -> 0 bytes .../visualization_0_20231022-190308.png | Bin 58148 -> 0 bytes .../visualization_1_20231022-180008.png | Bin 78724 -> 0 bytes .../visualization_1_20231022-190308.png | Bin 59300 -> 0 bytes .../visualization_2_20231022-180008.png | Bin 60675 -> 0 bytes .../visualization_2_20231022-190308.png | Bin 57326 -> 0 bytes .../ImprovedUNet-ISIC2018-45293915/predict.py | 66 ++++++++++++++++++ .../ImprovedUNet-ISIC2018-45293915/train.py | 15 ++-- .../visualise.py | 27 +++++++ 15 files changed, 107 insertions(+), 8 deletions(-) delete mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/output/10_epoch.png delete mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/output/10_epoch_test.png delete mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/output/accuracy_loss_plot_20231022-180008.png delete mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/output/accuracy_loss_plot_20231022-190308.png delete mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/output/visualization_0_20231022-180008.png delete mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/output/visualization_0_20231022-190308.png delete mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/output/visualization_1_20231022-180008.png delete mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/output/visualization_1_20231022-190308.png delete mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/output/visualization_2_20231022-180008.png delete mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/output/visualization_2_20231022-190308.png create mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/visualise.py diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/.gitignore b/recognition/ImprovedUNet-ISIC2018-45293915/.gitignore index adc416571..73362a238 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/.gitignore +++ b/recognition/ImprovedUNet-ISIC2018-45293915/.gitignore @@ -166,4 +166,7 @@ cython_debug/ /modelenv # .keras files -*.keras \ No newline at end of file +*.keras + +# Ignore anything inside output folder +/output/* \ No newline at end of file diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/README.md b/recognition/ImprovedUNet-ISIC2018-45293915/README.md index 392fe5d66..0c32e695a 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/README.md +++ b/recognition/ImprovedUNet-ISIC2018-45293915/README.md @@ -45,7 +45,7 @@ To ensure the reproducibility of results: ## Data Pre-processing -Images were resized to 128x128 pixels for consistency. Furthermore, we applied histogram equalization to enhance the contrast of the images, ensuring better visibility of the lesions. Any artifacts or annotations present in the images were masked out to prevent interference during segmentation. +Images were resized to 512x512 pixels for consistency. Furthermore, the images were normalised to have zero mean and unit variance. The ground truth masks were also resized to 512x512 pixels and converted to binary masks. **References**: - https://arxiv.org/pdf/1802.10508v1.pdf diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/output/10_epoch.png b/recognition/ImprovedUNet-ISIC2018-45293915/output/10_epoch.png deleted file mode 100644 index 9412202ff0d8d84c6950655683f4a4735d338063..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21761 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 ay;{@D40*<9d;pnX(h~AF({9{(^nU^C+Kie2 diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/output/10_epoch_test.png b/recognition/ImprovedUNet-ISIC2018-45293915/output/10_epoch_test.png deleted file mode 100644 index cbc09c30e268b5e7aad71979ac41d1935873ef2b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 120105 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

*D@;w6x^dM1B3^&Xwt>gspw@QBo4BW+AR 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 HR-yj`2o2?M diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/output/accuracy_loss_plot_20231022-180008.png b/recognition/ImprovedUNet-ISIC2018-45293915/output/accuracy_loss_plot_20231022-180008.png deleted file mode 100644 index 14a8d91076cd42a15baf9c5c71c83a63fad9085f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22448 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 diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/output/accuracy_loss_plot_20231022-190308.png b/recognition/ImprovedUNet-ISIC2018-45293915/output/accuracy_loss_plot_20231022-190308.png deleted file mode 100644 index a84cb11ce80f7d24c6b97640f8854abf03716a78..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 23727 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 diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/output/visualization_0_20231022-180008.png b/recognition/ImprovedUNet-ISIC2018-45293915/output/visualization_0_20231022-180008.png deleted file mode 100644 index b063fcc34df3fb28aa1612d2485d95cdd0b2af62..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 46252 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 diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/output/visualization_0_20231022-190308.png b/recognition/ImprovedUNet-ISIC2018-45293915/output/visualization_0_20231022-190308.png deleted file mode 100644 index 3a2c5679f6711991d41b5aecc224afce863193eb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 58148 zcmZU)by!qy)CEdONQ+2FBaL)Qmvl3fAl=PKcQ;7a&>ez=ba#VG4Hvj>D1A)At zGtO{gAK>BdEioc+Ukki0VyB9?oVDa44kWNG7``SL=U&KNc=vJKq)JGZYo4WQ};)PPDKX)9wF4-fSuDM zl*l~I2zY6l={Y%oA7ksq;Do(+y{R)a{Gb0j-AQ|a`0uxzV~%u#%!L2m0K5qBn|F8p zcRlCIFgrT(f4558REpJM``GyP@=h*$CZHI`{k5W;4_XJ*L^Xl%A8b-*Mf}>fkw( z8P0xM4+TDGD(iHY`xylKG1GxU?tNx|?KJ_;uAA{q)psT8e7^6TbQ&Zb?CC+Ea?V

L1U#`hL>*_!M)-YF`2K8RP&kGB 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 MDyhTk6wJf^559Vd@c;k- diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/output/visualization_1_20231022-180008.png b/recognition/ImprovedUNet-ISIC2018-45293915/output/visualization_1_20231022-180008.png deleted file mode 100644 index d87d5444ab51929f29a25ec2d346ee8b0ce0a0ba..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 78724 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 XWox&}y2y=rEa34%RY#>-$ui`B7h>t4 diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/output/visualization_2_20231022-180008.png b/recognition/ImprovedUNet-ISIC2018-45293915/output/visualization_2_20231022-180008.png deleted file mode 100644 index f741340e6be7c8e52f944d2737bc68ff14b4a152..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 60675 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 Gu>S!pJrPR) diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/output/visualization_2_20231022-190308.png b/recognition/ImprovedUNet-ISIC2018-45293915/output/visualization_2_20231022-190308.png deleted file mode 100644 index 0eaa82777108225cde64bfea239444e08ccaae43..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 57326 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 'soft' dice coefficient. +def dice_coefficient(truth, pred, eps=1e-7, axis=(1, 2, 3)): + numerator = (2.0 * (tf.reduce_sum(pred * truth, axis=axis))) + eps + denominator = tf.reduce_sum(pred, axis=axis) + tf.reduce_sum(truth, axis=axis) + eps + dice = tf.reduce_mean(numerator / denominator) + return dice + + +# Loss function - DSC distance. +def dice_loss(truth, pred): + return 1.0 - dice_coefficient(truth, pred) + + +# Test and visualize model predictions with a set amount of test inputs. +def test_visualise_model_predictions(model, test_gen): + print(model) + print(test_gen) + test_range = np.arange(0, stop=NUMBER_SHOW_TEST_PREDICTIONS, step=1) + figure, axes = plt.subplots(NUMBER_SHOW_TEST_PREDICTIONS, 3) + for i in test_range: + current = next(islice(test_gen, i, None)) + image_input = current[0] # Image tensor + mask_truth = current[1] # Mask tensor + test_pred = model.predict(image_input, steps=1, use_multiprocessing=False)[0] + truth = mask_truth[0] + original = image_input[0] + probabilities = keras.preprocessing.image.img_to_array(test_pred) + test_dice = dice_coefficient(truth, test_pred, axis=None) + + axes[i][0].title.set_text('Input') + axes[i][0].imshow(original, vmin=0.0, vmax=1.0) + axes[i][0].set_axis_off() + axes[i][1].title.set_text('Output (DSC: ' + str(test_dice.numpy()) + ")") + axes[i][1].imshow(probabilities, cmap='gray', vmin=0.0, vmax=1.0) + axes[i][1].set_axis_off() + axes[i][2].title.set_text('Ground Truth') + axes[i][2].imshow(truth, cmap='gray', vmin=0.0, vmax=1.0) + axes[i][2].set_axis_off() + plt.axis('off') + plt.show() + +def main(): + print("\nPREPROCESSING IMAGES") + train_gen, test_gen = pre_process_data() + print("\nLOADING TRAINED MODEL") + model = keras.models.load_model("path_to_trained_model.h5") # Load your trained model here + print("\nVISUALISING PREDICTIONS") + test_visualise_model_predictions(model, test_gen) + +if __name__ == "__main__": + main() diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/train.py b/recognition/ImprovedUNet-ISIC2018-45293915/train.py index 5e72abd85..ab1353bf4 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/train.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/train.py @@ -16,7 +16,7 @@ output_dir = "output" # Constants related to training -EPOCHS = 2 +EPOCHS = 5 LEARNING_RATE = 0.0005 BATCH_SIZE = 2 # set the batch_size IMAGE_HEIGHT = 512 # the height input images are scaled to @@ -74,14 +74,17 @@ def dice_loss(truth, pred): return 1.0 - dice_coefficient(truth, pred) -# Plot the dice coefficient curve -def plot_dice_coefficient(dice_history): +# Plot the dice coefficient curve and save it as an image +def save_dice_coefficient_plot(dice_history): + filename = os.path.join(output_dir, f"dice_coefficient_plot_{timestr}.png") plt.figure(1) plt.plot(dice_history) plt.title('Dice Coefficient Curve') plt.xlabel('Epoch') plt.ylabel('Dice Coefficient') - plt.show() + plt.savefig(filename) # Save the plot as an image + plt.close() # Close the figure to release resources + print("Dice coefficeint saved as " + filename + ".") @@ -165,13 +168,13 @@ def main(): train_gen, test_gen = pre_process_data() print("\nTRAINING MODEL") model, dice_history = train_model_check_accuracy(train_gen, test_gen) + # Save Dice coefficient + save_dice_coefficient_plot(dice_history) # Save the trained model to a file print("\nSAVING MODEL") model.save("my_model.keras") print("\nVISUALISING PREDICTIONS") test_visualise_model_predictions(model, test_gen) - # Plot Dice coefficient - plot_dice_coefficient(dice_history) print("COMPLETED") return 0 diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/visualise.py b/recognition/ImprovedUNet-ISIC2018-45293915/visualise.py new file mode 100644 index 000000000..aaef05e50 --- /dev/null +++ b/recognition/ImprovedUNet-ISIC2018-45293915/visualise.py @@ -0,0 +1,27 @@ +import tensorflow as tf +from dataset import SkinLesionDataset +from matplotlib import pyplot as plt + +# Example usage: +dataset = SkinLesionDataset(data_dir="datasets") +train_data = dataset.train_dataset + +# Define the number of images to show +n_images = 5 + +# Get the first n_images pairs from the training dataset +image_mask_pairs = [item for item in train_data.take(n_images)] + +# Plot images and masks +fig, axes = plt.subplots(nrows=2, ncols=n_images, figsize=(15, 15)) +for i in range(n_images): + image, mask = image_mask_pairs[i] + axes[0, i].imshow(image) + axes[0, i].axis("off") + axes[0, i].set_title("Image") + + axes[1, i].imshow(mask, cmap='gray') # Assuming grayscale masks + axes[1, i].axis("off") + axes[1, i].set_title("Mask") + +plt.show() From 6f28bf9195bc31bcda6cf979a864d320d4ebf3e4 Mon Sep 17 00:00:00 2001 From: riley-ball Date: Sun, 22 Oct 2023 22:28:58 +1000 Subject: [PATCH 25/45] modified data pipelines --- .../ImprovedUNet-ISIC2018-45293915/dataset.py | 102 ++++++++---------- .../ImprovedUNet-ISIC2018-45293915/train.py | 49 +++++++-- 2 files changed, 81 insertions(+), 70 deletions(-) diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/dataset.py b/recognition/ImprovedUNet-ISIC2018-45293915/dataset.py index 5962787bf..b55a3781c 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/dataset.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/dataset.py @@ -1,69 +1,51 @@ import os import tensorflow as tf from tensorflow import keras -import numpy as np -from itertools import islice -import math -# Constants related to data preprocessing -IMAGE_HEIGHT = 512 -IMAGE_WIDTH = 512 -CHANNELS = 3 -SEED = 45 -BATCH_SIZE = 2 -# Directory containing the dataset -PATH_ORIGINAL_DATA = os.path.join("datasets", "training_input") # directory that contains folder containing input images -PATH_SEG_DATA = os.path.join("datasets", "training_groundtruth") # directory that contains folder containing ground truth images -IMAGE_MODE = "rgb" -MASK_MODE = "grayscale" -DATA_TRAIN_GEN_ARGS = dict( - rescale=1.0/255, - shear_range=0.1, - zoom_range=0.1, - horizontal_flip=True, - vertical_flip=True, - fill_mode='nearest', - validation_split=0.2) # 0.2 used to have training set take the first 80% of images -# Set the properties for the image generators for testing images. No image transformations. -DATA_TEST_GEN_ARGS = dict( - rescale=1.0/255, - validation_split=0.8) # 0.8 used to have test set take the final 20% of images (keep train/test data separated) -# Set the shared properties for generator flows - scale all images to given dimensions. -TEST_TRAIN_GEN_ARGS = dict( - seed=SEED, - class_mode=None, - batch_size=BATCH_SIZE, - interpolation="nearest", - subset='training', # all subsets are set to training - this corresponds to the first 80% and last 20% for each - target_size=(IMAGE_HEIGHT, IMAGE_WIDTH)) +class DataLoader: + def __init__(self, input_dir, groundtruth_dir, image_mode, mask_mode, image_height, image_width, batch_size, seed=45, shear_range=0.1, zoom_range=0.1, horizontal_flip=True, vertical_flip=True, fill_mode='nearest',): + self.input_dir = input_dir + self.groundtruth_dir = groundtruth_dir + self.image_mode = image_mode + self.mask_mode = mask_mode + self.image_height = image_height + self.image_width = image_width + self.batch_size = batch_size + self.seed = seed + self.shear_range = shear_range + self.zoom_range = zoom_range + self.horizontal_flip = horizontal_flip + self.vertical_flip = vertical_flip + self.fill_mode = fill_mode -# Preprocess data forming the generators. -def pre_process_data(): - train_image_data_generator = keras.preprocessing.image.ImageDataGenerator(**DATA_TRAIN_GEN_ARGS) - train_mask_data_generator = keras.preprocessing.image.ImageDataGenerator(**DATA_TRAIN_GEN_ARGS) - test_image_data_generator = keras.preprocessing.image.ImageDataGenerator(**DATA_TEST_GEN_ARGS) - test_mask_data_generator = keras.preprocessing.image.ImageDataGenerator(**DATA_TEST_GEN_ARGS) + def create_data_generators(self): + data_gen_args = dict( + rescale=1.0 / 255, + shear_range=self.shear_range, + zoom_range=self.zoom_range, + horizontal_flip=self.horizontal_flip, + vertical_flip=self.vertical_flip, + fill_mode=self.fill_mode,) - image_train_gen = train_image_data_generator.flow_from_directory( - PATH_ORIGINAL_DATA, - color_mode=IMAGE_MODE, - **TEST_TRAIN_GEN_ARGS) + input_image_generator = keras.preprocessing.image.ImageDataGenerator(**data_gen_args) + groundtruth_mask_generator = keras.preprocessing.image.ImageDataGenerator(**data_gen_args) - image_test_gen = test_image_data_generator.flow_from_directory( - PATH_ORIGINAL_DATA, - color_mode=IMAGE_MODE, - **TEST_TRAIN_GEN_ARGS) + input_gen = input_image_generator.flow_from_directory( + self.input_dir, + color_mode=self.image_mode, + seed=self.seed, + class_mode=None, + batch_size=self.batch_size, + interpolation="nearest", + target_size=(self.image_height, self.image_width)) - mask_train_gen = train_mask_data_generator.flow_from_directory( - PATH_SEG_DATA, - color_mode=MASK_MODE, - **TEST_TRAIN_GEN_ARGS) + groundtruth_gen = groundtruth_mask_generator.flow_from_directory( + self.groundtruth_dir, + color_mode=self.mask_mode, + seed=self.seed, + class_mode=None, + batch_size=self.batch_size, + interpolation="nearest", + target_size=(self.image_height, self.image_width)) - mask_test_gen = test_mask_data_generator.flow_from_directory( - PATH_SEG_DATA, - color_mode=MASK_MODE, - **TEST_TRAIN_GEN_ARGS) - - # Ideally this would be a Sequence joining the two generators instead of zipping them together to keep everything - # thread-safe, allowing for multiprocessing - but if it ain't broke. (It works). - return zip(image_train_gen, mask_train_gen), zip(image_test_gen, mask_test_gen) + return zip(input_gen, groundtruth_gen) diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/train.py b/recognition/ImprovedUNet-ISIC2018-45293915/train.py index ab1353bf4..bf8644f77 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/train.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/train.py @@ -9,7 +9,7 @@ import time import modules as layers -from dataset import pre_process_data +from dataset import DataLoader # string modifier for saving output files based on time timestr = time.strftime("%Y%m%d-%H%M%S") @@ -26,6 +26,8 @@ STEPS_PER_EPOCH_TEST = math.floor(519 / BATCH_SIZE) NUMBER_SHOW_TEST_PREDICTIONS = 3 + + # Define a callback to calculate Dice coefficient after each epoch class DiceCoefficientCallback(Callback): def __init__(self, test_gen, steps_per_epoch_test): @@ -91,13 +93,10 @@ def save_dice_coefficient_plot(dice_history): def train_model_check_accuracy(train_gen, test_gen): model = layers.improved_unet(IMAGE_WIDTH, IMAGE_HEIGHT, CHANNELS) model.summary() - # Define the DiceCoefficientCallback dice_coefficient_callback = DiceCoefficientCallback(test_gen, STEPS_PER_EPOCH_TEST) - model.compile(optimizer=keras.optimizers.Adam(LEARNING_RATE), loss=dice_loss, metrics=['accuracy', dice_coefficient]) - track = model.fit( train_gen, steps_per_epoch=STEPS_PER_EPOCH_TRAIN, @@ -105,8 +104,7 @@ def train_model_check_accuracy(train_gen, test_gen): shuffle=True, verbose=1, use_multiprocessing=False, - callbacks=[dice_coefficient_callback]) # Add the callback here - + callbacks=[dice_coefficient_callback]) # Add the callback her plot_accuracy_loss(track) # Plot accuracy and loss curves print("\nEvaluating test images...") @@ -123,16 +121,18 @@ def train_model_check_accuracy(train_gen, test_gen): def test_visualise_model_predictions(model, test_gen): test_range = np.arange(0, stop=NUMBER_SHOW_TEST_PREDICTIONS, step=1) - for i in test_range: + for i in test_range: current = next(islice(test_gen, i, None)) image_input = current[0] # Image tensor mask_truth = current[1] # Mask tensor + # debug statements to check the types of the tensors and find the division by zero test_pred = model.predict(image_input, steps=1, use_multiprocessing=False)[0] truth = mask_truth[0] original = image_input[0] probabilities = keras.preprocessing.image.img_to_array(test_pred) test_dice = dice_coefficient(truth, test_pred, axis=None) + # Create a unique filename for each visualization filename = os.path.join(output_dir, f"visualization_{i}_{timestr}.png") @@ -164,17 +164,46 @@ def test_visualise_model_predictions(model, test_gen): # Run the test driver. def main(): + # Constants related to preprocessing + train_dir = "datasets/training_input" + train_groundtruth_dir = "datasets/training_groundtruth" + validation_dir = "datasets/validation_input" + validation_groundtruth_dir = "datasets/validation_groundtruth" + image_mode = "rgb" + mask_mode = "grayscale" + image_height = 512 + image_width = 512 + batch_size = 2 + seed = 45 + shear_range = 0.1 + zoom_range = 0.1 + horizontal_flip = True + vertical_flip = True + fill_mode = 'nearest' + + # print number of images in each directory + print("Number of images in training_input:", len(os.listdir(train_dir))) + print("Number of images in validation_input:", len(os.listdir(validation_dir))) + print("Number of images in training_groundtruth:", len(os.listdir(train_groundtruth_dir))) + print("Number of images in validation_groundtruth:", len(os.listdir(validation_groundtruth_dir))) + test_data = DataLoader( + validation_dir, validation_groundtruth_dir, image_mode, mask_mode, image_height, image_width, batch_size, seed, + shear_range, zoom_range, horizontal_flip, vertical_flip, fill_mode) + test_data = test_data.create_data_generators() + train_data = DataLoader( + train_dir, train_groundtruth_dir, image_mode, mask_mode, image_height, image_width, batch_size, seed, + shear_range, zoom_range, horizontal_flip, vertical_flip, fill_mode) + train_data = train_data.create_data_generators() print("\nPREPROCESSING IMAGES") - train_gen, test_gen = pre_process_data() print("\nTRAINING MODEL") - model, dice_history = train_model_check_accuracy(train_gen, test_gen) + model, dice_history = train_model_check_accuracy(train_data, test_data) # Save Dice coefficient save_dice_coefficient_plot(dice_history) # Save the trained model to a file print("\nSAVING MODEL") model.save("my_model.keras") print("\nVISUALISING PREDICTIONS") - test_visualise_model_predictions(model, test_gen) + test_visualise_model_predictions(model, test_data) print("COMPLETED") return 0 From 10fd051e07e5c0a8a3978704ba9544fe7fa53910 Mon Sep 17 00:00:00 2001 From: riley-ball Date: Sun, 22 Oct 2023 23:39:46 +1000 Subject: [PATCH 26/45] created assets folder to store README images --- .../ImprovedUNet-ISIC2018-45293915/README.md | 7 ++++++- .../accuracy_loss_plot_20231022-222911.png | Bin 0 -> 21528 bytes .../{ => assets}/architecture.png | Bin .../dice_coefficient_plot_20231022-222911.png | Bin 0 -> 22651 bytes .../assets/visualization_0_20231022-222911.png | Bin 0 -> 55070 bytes .../assets/visualization_1_20231022-222911.png | Bin 0 -> 51802 bytes .../assets/visualization_2_20231022-222911.png | Bin 0 -> 49197 bytes 7 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/assets/accuracy_loss_plot_20231022-222911.png rename recognition/ImprovedUNet-ISIC2018-45293915/{ => assets}/architecture.png (100%) create mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/assets/dice_coefficient_plot_20231022-222911.png create mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/assets/visualization_0_20231022-222911.png create mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/assets/visualization_1_20231022-222911.png create mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/assets/visualization_2_20231022-222911.png diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/README.md b/recognition/ImprovedUNet-ISIC2018-45293915/README.md index 0c32e695a..efcd20d8f 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/README.md +++ b/recognition/ImprovedUNet-ISIC2018-45293915/README.md @@ -17,7 +17,7 @@ The Improved U-Net is a cutting-edge neural network architecture which can be ta - Feature maps from the corresponding level in the downsampling pathway (or the encoder) are concatenated with the upsampled feature maps. This is the hallmark of the U-Net architecture and is referred to as a skip connection. - The concatenated feature maps combine the high-resolution spatial details from the encoder with the high-level contextual information from the decoder. -![Improved UNet Model Architecture](architecture.png) +![Improved UNet Model Architecture](assets/architecture.png) Above is an image that showcases the localisation module in the context of processing 3 dimensional data. @@ -76,3 +76,8 @@ We divided the ISIC 2018 dataset into training, validation, and test sets follow - **Test Data**: 10% - Held out for evaluating the final performance of the model. This division ensures a robust assessment of the model's performance, minimising overfitting and providing a reliable estimation of its real-world applicability. + +## TODO: + +- Add a link to the dataset. +- Research the best way to use the dice coeffficient callback \ No newline at end of file diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/assets/accuracy_loss_plot_20231022-222911.png b/recognition/ImprovedUNet-ISIC2018-45293915/assets/accuracy_loss_plot_20231022-222911.png new file mode 100644 index 0000000000000000000000000000000000000000..99027193738a71f5f1e26bef4b08d91c727300c9 GIT binary patch literal 21528 zcmch}@$ao_ix^Sb7^Mx5t4Mx?sxbs_>90t7*bloaJO5d@PJ zK``3zap5oal()*^pUZCYx7@TG@40!Jx>z7LP2HUA9Np}!?=pE+86_8F}0xyr9Cok?@Ac2jW0%ewA=6&7L+ zK}bnSW95EoQcBCo$=#%F!iWE_^w2aUA|m2^i-0Wr@#$SEW)>C}CBY~X_-ZDV0(_*X zNyrKxo#zZAg^!++|NUn#-u30_U1N)zY>#EtOw{DH?SCiJ_L$z(!UBh%pC5iQ(Hc!F zGBl8A?0+grB`hs1?aup;){06>4Yma}VIIpv4WB;~^!NAUTlzJzfFp^a zVrwlt9Z}VAV#d}$46G-~$a$G*{pMv$obmd@V~e{dUp4`5#5>9;;*dwsEgs zMP+Am6kBy;DrcQ#U|{f?O|o>_{XN5F`=n!rgNy5dZ2C8SM^jVNjrDi>WoI5geoQ6i z#1ux%_}G1^pW4n7wzB&7XYRGFtuW0Txku-C;dKUWY`7V|tge>mOuj;CKU^BBob@0) z953t){ln9gdjxIRCP|;I`Q`oJGaXMpncu4ME^!!z<(Zn91;dw2>H{$fOG;Yi zyE8D5VDQ|aLh4>WT^5)&zn?$1z+RCyK{jKX#`M3AyhOif|lxN&1=Z*MBU zYzz}Q*cx_(>kd}B+g2?17Z?-64YBafXzz?W{P<{5?tdtLj^~y-Uj!2P@+Iw<|GxdG zD}1BEbuPhnZh1NSgIU{RN}_=f+=HJ@Ern1|PY>NAXJ_Zi%`ltTPv&Cxe`k(;AZC=J zQ&m+}&(WUm$vW-vYcRdc(A{4za*@_YA%e?!v6oZgXlJ^xsHln7u^PkG)s;uTl+bT) zqXBHq-HdPcYx1M# squQCJ$1+{l}HpjAFfAZu>AbW}zCL&-rDDX<$o#6YMo55ve zqMBM-AAGhQ&R@9DFg#qq6&gh0YX7T0ucUVmFng{`@8|Qg~NE8W{?vpPpV2 z^W71s^jOZdjRPxfV+^2stCreY?mWFVXcogPDM^3D<5zu&?ZCvZUxX!hqGf_{nWdx{ zSg${B-dOk^8y_D!TID(Y^Hbc~`nq6c>Fd`lAz@*!ExS^7HomK&XAc=HwkC6NbrrPk zIe*c%pD_FkeIuo@Z;B+0PIqB(ar4?_Q?yj+;&X}nLIwr~0zO-Ia4bwF z>Vv?(8$8GT!eJkmN}{8qTUcWx9)SI0emi=JV(O??+}u^{qJte=4d~x z@?2f)&wBHQKv-B<5DtXPs@98)jEuEEfAWfNS|fxjMeqbHLPDC`)jvHyz#Dv>ovm1~ zoUM@&l9!h^w)axhk)XnWZ_IDoaJ16@a4%9dSv(TX@2GgR0&At`Dj$RYj_GJ+E?9PE zeaA&P3iZ6co!z-q(sSp+`t$Xd`hC2-CMxDqn!qhR?(9@S0)vCG;2NO;N4sqkwLHAM zs8Pasp8yZ2(D%V_-$Nxy2nSA+*HV7j8tkW8U#^a~y|16&`oW(ry@~>GE)8G45c%zI z;iT0>kuWekj;0lr&DUKTvLCCa_V@Rn@g`O-<+Psu^()Hy`x~9XH*9P-UuZidXJuur zIIF6j>G}S>yT->8pV{fxpdccB=MK%*@^HBGbn7HIk=(+RhzR_jb91bGe5z%9moA-? zmzSp!zNeB^VsY;t>~E<;n+`o0n+k^~C!d4_T~1DpcVgw#)Kprx6+Fusq}*@+lK


?&~`XZ&N2`XTywYyeFq) zt}3{=xWv16J{QDNliVc7C87!0{WCWmN@-Lda*E82{rkv>fkCBP&gWsbJ{yrs4kHn@ ze*05BSvSzQ^)>ZsOj;UKW@aXnl$6oHR%7Vt%9Z1XVDuQZwY37mc{O=8_wL=Z>V7R> zv8kk_M0Lf3=hdrMCT3<>l$4aC7LTH$2$A}hN0b<8pDTw;Y{TChRxL)y--g2rQA>Bm zP#(fg`{&O>i_fFFb9M4umQvuf3=R*oUb>`vvd2e9M^?k7yvPKEU=rDhWY4jnM~@zj zX$py577?M4?yJj_(=?%C&c&(m-h`*4EOePscKbC*Y8-GV!r=2u&=+>6@)CdDfe=_x zIQY$MZLaD+U$0n=*Ve2UZ-tH2`q6@I%R|6+TT0+Fd(!AZh9xXt>x|9cOF`BMMGVriTNA?diF#9Ai0J z>F(t2-ZItlsH3LTqT`(1XeGssM843htP8%rz8fn&0?lo0czDDNa;B!top3Hoo!#89 z16|013@co+di)YSrkYQ^y5e~TP0ZxvLLB^lR9#i(%hJ&iMWW~~pY87M9xOD)g8jpT z7+4eMBachW5C!4b0ppiwaVN7-7q=^Zj|+ zT)z9uW#FwLf0Vg(>sD5q%j%e<-H(qr!MH??5Rp1~;i$^%>L#pQ`exb`Ho3Dtjq4ah zAv-^m`Sz_DoF9r(>mMI4kQ3m5%Xz!K2U+QD>zb_isC14WmY=4(r1n(`k{>-f?Y+4e z8qclA!pZr`MDoI`dMHN>e6=9r)R7)D6AR#8Y!#AmxwV<6gR!1+OgZD(g^q1_K5@Q~ABu>B>= z-_o)6HWq>d0};3fnubR_deqdLqlJOYeNDawnWn(qW_-8#Zy4Z0Am`%N)YKGk`Pr_# zv_JKTpXBV>2le&R)jLyz-bvJ??xm3_~Np91fVUVzLss>MgL4=$8G#uCB zhJh;gC0uYkXwo@3If;5kQcB8jh`8qu9F#b+FzR8y6RB?7xc>$F9~Y+$DkK zMn*>TK%$NtOsDYvpL@YrL2#~JH-7yfLoI|&^;Lv!{+&rkSRuz}eDeHx_P`|;7Fkd0 zrJC)rJY8PMjnSp!5>g=n0Rc7Cx5&<(Ei`SytXI0_7nM)!Y5fXw;N<+hCXJ;1@A0IzITvjkx7f?4=3-6a7 z6ALReI5-&cDsnI~GFW^q2L}g>f&3441Ayu;+m z3Llgg?>)KQz+kB^**!1(`0*_4?GzM9)9K76R*q>ya;}h%A5UBo+SucP`ApKS5=*cg>+ZncNMhy#sp^j)>f-;l`EFqT=v;Q-FX%p z%!dyjPAn`$HU#6DwLGNIOuW{c>D-A=Dxw6>a1E9{mUfHfDK69y*-Dqa)|ieUkFMSx z^KtU

XO{!5Sz82-q9(ej46#^?tE*{xxqGPz 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 Date: Sun, 22 Oct 2023 23:42:40 +1000 Subject: [PATCH 27/45] renamed and added output to README --- .../ImprovedUNet-ISIC2018-45293915/README.md | 20 +++++++++++++++--- ..._20231022-222911.png => accuracy_loss.png} | Bin ...231022-222911.png => dice_coefficient.png} | Bin ...20231022-222911.png => visualisation1.png} | Bin ...20231022-222911.png => visualisation2.png} | Bin ...20231022-222911.png => visualisation3.png} | Bin 6 files changed, 17 insertions(+), 3 deletions(-) rename recognition/ImprovedUNet-ISIC2018-45293915/assets/{accuracy_loss_plot_20231022-222911.png => accuracy_loss.png} (100%) rename recognition/ImprovedUNet-ISIC2018-45293915/assets/{dice_coefficient_plot_20231022-222911.png => dice_coefficient.png} (100%) rename recognition/ImprovedUNet-ISIC2018-45293915/assets/{visualization_0_20231022-222911.png => visualisation1.png} (100%) rename recognition/ImprovedUNet-ISIC2018-45293915/assets/{visualization_1_20231022-222911.png => visualisation2.png} (100%) rename recognition/ImprovedUNet-ISIC2018-45293915/assets/{visualization_2_20231022-222911.png => visualisation3.png} (100%) diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/README.md b/recognition/ImprovedUNet-ISIC2018-45293915/README.md index efcd20d8f..bbe86aa49 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/README.md +++ b/recognition/ImprovedUNet-ISIC2018-45293915/README.md @@ -36,11 +36,25 @@ To ensure the reproducibility of results: ## Example Inputs and Outputs -**Input**: +**1**: +![Visaulisation 1](assets/visualisation1.png) -**Output**: +**2**: -**Plot**: +![Visaulisation 2](assets/visualisation2.png) + +**3**: +![Visaulisation 3](assets/visualisation3.png) + +## Evaluation Metrics + +### Accuracy and Loss + +![Accuracy and Loss](assets/accuracy_loss.png) + +### Dice Coefficient + +![Dice Coefficient](assets/dice_coefficient.png) ## Data Pre-processing diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/assets/accuracy_loss_plot_20231022-222911.png b/recognition/ImprovedUNet-ISIC2018-45293915/assets/accuracy_loss.png similarity index 100% rename from recognition/ImprovedUNet-ISIC2018-45293915/assets/accuracy_loss_plot_20231022-222911.png rename to recognition/ImprovedUNet-ISIC2018-45293915/assets/accuracy_loss.png diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/assets/dice_coefficient_plot_20231022-222911.png b/recognition/ImprovedUNet-ISIC2018-45293915/assets/dice_coefficient.png similarity index 100% rename from recognition/ImprovedUNet-ISIC2018-45293915/assets/dice_coefficient_plot_20231022-222911.png rename to recognition/ImprovedUNet-ISIC2018-45293915/assets/dice_coefficient.png diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/assets/visualization_0_20231022-222911.png b/recognition/ImprovedUNet-ISIC2018-45293915/assets/visualisation1.png similarity index 100% rename from recognition/ImprovedUNet-ISIC2018-45293915/assets/visualization_0_20231022-222911.png rename to recognition/ImprovedUNet-ISIC2018-45293915/assets/visualisation1.png diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/assets/visualization_1_20231022-222911.png b/recognition/ImprovedUNet-ISIC2018-45293915/assets/visualisation2.png similarity index 100% rename from recognition/ImprovedUNet-ISIC2018-45293915/assets/visualization_1_20231022-222911.png rename to recognition/ImprovedUNet-ISIC2018-45293915/assets/visualisation2.png diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/assets/visualization_2_20231022-222911.png b/recognition/ImprovedUNet-ISIC2018-45293915/assets/visualisation3.png similarity index 100% rename from recognition/ImprovedUNet-ISIC2018-45293915/assets/visualization_2_20231022-222911.png rename to recognition/ImprovedUNet-ISIC2018-45293915/assets/visualisation3.png From b79e98356f2089a652fa5530a55a109513ed31a8 Mon Sep 17 00:00:00 2001 From: riley-ball Date: Sun, 22 Oct 2023 23:43:41 +1000 Subject: [PATCH 28/45] minor update --- recognition/ImprovedUNet-ISIC2018-45293915/README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/README.md b/recognition/ImprovedUNet-ISIC2018-45293915/README.md index bbe86aa49..9616e7355 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/README.md +++ b/recognition/ImprovedUNet-ISIC2018-45293915/README.md @@ -37,6 +37,7 @@ To ensure the reproducibility of results: ## Example Inputs and Outputs **1**: + ![Visaulisation 1](assets/visualisation1.png) **2**: @@ -44,6 +45,7 @@ To ensure the reproducibility of results: ![Visaulisation 2](assets/visualisation2.png) **3**: + ![Visaulisation 3](assets/visualisation3.png) ## Evaluation Metrics From 88050ed7d85c41a21d18794e43cd7a3736ce13b8 Mon Sep 17 00:00:00 2001 From: riley-ball Date: Sun, 22 Oct 2023 23:47:47 +1000 Subject: [PATCH 29/45] more minor updates to readme --- .../ImprovedUNet-ISIC2018-45293915/README.md | 24 ++++++++++++------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/README.md b/recognition/ImprovedUNet-ISIC2018-45293915/README.md index 9616e7355..3840156a0 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/README.md +++ b/recognition/ImprovedUNet-ISIC2018-45293915/README.md @@ -72,15 +72,21 @@ Images were resized to 512x512 pixels for consistency. Furthermore, the images w root_directory │ ├── datasets -│ ├── isic-512 -│ │ ├── resized_train -│ │ ├── resized_train_gt -│ │ ├── resized_test -│ │ ├── resized_test_gt -│ │ ├── resized_valid -│ │ └── resized_valid_gt -│ -└── your_script.py +│ ├ +│ ├── training_input +│ ├── training_groundtruth +│ ├── validation_input +│ ├── validation_groundtruth +│ ├── test_input +│ └── test_groundtruth +├── output +│ +├── train.py +├── modules.py +├── dataset.py +└── predict.py + + ``` ## Data Splits From 027b717ae86953da868eccbba26a077c30732792 Mon Sep 17 00:00:00 2001 From: riley-ball Date: Mon, 23 Oct 2023 00:45:10 +1000 Subject: [PATCH 30/45] restructured all files --- .../ImprovedUNet-ISIC2018-45293915/README.md | 2 - .../ImprovedUNet-ISIC2018-45293915/modules.py | 185 +++++++++--------- .../ImprovedUNet-ISIC2018-45293915/predict.py | 88 ++++----- .../ImprovedUNet-ISIC2018-45293915/train.py | 131 ++----------- .../ImprovedUNet-ISIC2018-45293915/utils.py | 64 ++++++ .../visualise.py | 75 ++++--- 6 files changed, 250 insertions(+), 295 deletions(-) create mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/utils.py diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/README.md b/recognition/ImprovedUNet-ISIC2018-45293915/README.md index 3840156a0..36fb8fdc5 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/README.md +++ b/recognition/ImprovedUNet-ISIC2018-45293915/README.md @@ -85,8 +85,6 @@ root_directory ├── modules.py ├── dataset.py └── predict.py - - ``` ## Data Splits diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/modules.py b/recognition/ImprovedUNet-ISIC2018-45293915/modules.py index 24f8179f0..f18565211 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/modules.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/modules.py @@ -38,73 +38,66 @@ # Implementation based off the 'improved UNet': https://arxiv.org/abs/1802.10508v1. # 2D implementation rather than 3D as 2D inputs/outputs are required. def improved_unet(width, height, channels): - input = keras.Input(shape=(width, height, channels)) # Set input shape - - x1 = keras.layers.Conv2D(16, (3, 3), input_shape=(width, height, channels), **CONV_PROPERTIES)(input) - # x2 = keras.layers.BatchNormalization()(x1) - x2 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(x1) - x3 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(x2) - x4 = context_module(x3, 16) - x5 = keras.layers.Add()([x1, x4]) - - x6 = keras.layers.Conv2D(32, (3, 3), strides=2, **CONV_PROPERTIES)(x5) - # x7 = keras.layers.BatchNormalization()(x6) - x7 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(x6) - x8 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(x7) - x9 = context_module(x8, 32) - x10 = keras.layers.Add()([x8, x9]) - - x11 = keras.layers.Conv2D(64, (3, 3), strides=2, **CONV_PROPERTIES)(x10) - # x12 = keras.layers.BatchNormalization()(x11) - x12 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(x11) - x13 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(x12) - x14 = context_module(x13, 64) - x15 = keras.layers.Add()([x13, x14]) - - x16 = keras.layers.Conv2D(128, (3, 3), strides=2, **CONV_PROPERTIES)(x15) - # x17 = keras.layers.BatchNormalization()(x16) - x17 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(x16) - x18 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(x17) - x19 = context_module(x18, 128) - x20 = keras.layers.Add()([x18, x19]) - - x21 = keras.layers.Conv2D(256, (3, 3), strides=2, **CONV_PROPERTIES)(x20) - # x22 = keras.layers.BatchNormalization()(x21) - x22 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(x21) - x23 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(x22) - x24 = context_module(x23, 256) - x25 = keras.layers.Add()([x23, x24]) - x26 = upsampling_module(x25, 128) - - x27 = keras.layers.Concatenate()([x20, x26]) - x28 = localisation_module(x27, 128) - x29 = upsampling_module(x28, 64) - - x30 = keras.layers.Concatenate()([x15, x29]) - x31 = localisation_module(x30, 64) - x32 = upsampling_module(x31, 32) - - x33 = keras.layers.Concatenate()([x10, x32]) - x34 = localisation_module(x33, 32) - x35 = upsampling_module(x34, 16) - - x36 = keras.layers.Concatenate()([x5, x35]) - x37 = keras.layers.Conv2D(32, (3, 3), **CONV_PROPERTIES)(x36) - # x38 = keras.layers.BatchNormalization()(x37) - x38 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(x37) - x39 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(x38) - - seg_layer1 = keras.layers.Activation('sigmoid')(x31) - u1 = upsampling_module(seg_layer1, 32) - seg_layer2 = keras.layers.Activation('sigmoid')(x34) - s1 = keras.layers.Add()([u1, seg_layer2]) - u2 = upsampling_module(s1, 32) - seg_layer3 = keras.layers.Activation('sigmoid')(x39) - s2 = keras.layers.Add()([u2, seg_layer3]) - - # Sigmoid used as final activation layers as this is a binary segmentation, not three or more classes - output = keras.layers.Conv2D(1, (1, 1), activation="sigmoid", **CONV_PROPERTIES)(s2) - u_net = keras.Model(inputs=[input], outputs=[output]) + input_layer = keras.Input(shape=(width, height, channels)) + + conv1 = keras.layers.Conv2D(16, (3, 3), input_shape=(width, height, channels), **CONV_PROPERTIES)(input_layer) + norm1 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(conv1) + relu1 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(norm1) + context1 = context_module(relu1, 16) + add1 = keras.layers.Add()([conv1, context1]) + + conv2 = keras.layers.Conv2D(32, (3, 3), strides=2, **CONV_PROPERTIES)(add1) + norm2 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(conv2) + relu2 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(norm2) + context2 = context_module(relu2, 32) + add2 = keras.layers.Add()([relu2, context2]) + + conv3 = keras.layers.Conv2D(64, (3, 3), strides=2, **CONV_PROPERTIES)(add2) + norm3 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(conv3) + relu3 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(norm3) + context3 = context_module(relu3, 64) + add3 = keras.layers.Add()([relu3, context3]) + + conv4 = keras.layers.Conv2D(128, (3, 3), strides=2, **CONV_PROPERTIES)(add3) + norm4 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(conv4) + relu4 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(norm4) + context4 = context_module(relu4, 128) + add4 = keras.layers.Add()([relu4, context4]) + + conv5 = keras.layers.Conv2D(256, (3, 3), strides=2, **CONV_PROPERTIES)(add4) + norm5 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(conv5) + relu5 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(norm5) + context5 = context_module(relu5, 256) + add5 = keras.layers.Add()([relu5, context5]) + upsample1 = upsampling_module(add5, 128) + + concat1 = keras.layers.Concatenate()([add4, upsample1]) + localization1 = localisation_module(concat1, 128) + upsample2 = upsampling_module(localization1, 64) + + concat2 = keras.layers.Concatenate()([add3, upsample2]) + localization2 = localisation_module(concat2, 64) + upsample3 = upsampling_module(localization2, 32) + + concat3 = keras.layers.Concatenate()([add2, upsample3]) + localization3 = localisation_module(concat3, 32) + upsample4 = upsampling_module(localization3, 16) + + concat4 = keras.layers.Concatenate()([add1, upsample4]) + conv6 = keras.layers.Conv2D(32, (3, 3), **CONV_PROPERTIES)(concat4) + norm6 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(conv6) + relu6 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(norm6) + + seg_layer1 = keras.layers.Activation('sigmoid')(localization2) + upsample5 = upsampling_module(seg_layer1, 32) + seg_layer2 = keras.layers.Activation('sigmoid')(localization3) + sum1 = keras.layers.Add()([upsample5, seg_layer2]) + upsample6 = upsampling_module(sum1, 32) + seg_layer3 = keras.layers.Activation('sigmoid')(relu6) + sum2 = keras.layers.Add()([upsample6, seg_layer3]) + + output_layer = keras.layers.Conv2D(1, (1, 1), activation="sigmoid", **CONV_PROPERTIES)(sum2) + u_net = keras.Model(inputs=[input_layer], outputs=[output_layer]) return u_net @@ -113,37 +106,35 @@ def improved_unet(width, height, channels): # -------------------------------------------- # A 'Context Module', based off the 'improved UNet'. -def context_module(input, out_filter): - x1 = keras.layers.Conv2D(out_filter, (3, 3), **CONV_PROPERTIES)(input) - # x2 = keras.layers.BatchNormalization()(x1) - x2 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(x1) - x3 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(x2) - x4 = keras.layers.Dropout(DROPOUT)(x3) - x5 = keras.layers.Conv2D(out_filter, (3, 3), **CONV_PROPERTIES)(x4) - #x6 = keras.layers.BatchNormalization()(x5) - x6 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(x5) - x7 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(x6) - return x7 - +def context_module(input_layer, out_filter): + conv1 = keras.layers.Conv2D(out_filter, (3, 3), **CONV_PROPERTIES)(input_layer) + # bn1 = keras.layers.BatchNormalization()(conv1) + norm1 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(conv1) + relu1 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(norm1) + dropout1 = keras.layers.Dropout(DROPOUT)(relu1) + conv2 = keras.layers.Conv2D(out_filter, (3, 3), **CONV_PROPERTIES)(dropout1) + # bn2 = keras.layers.BatchNormalization()(conv2) + norm2 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(conv2) + relu2 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(norm2) + return relu2 # An 'Upsampling Module', based off the 'improved UNet'. -def upsampling_module(input, out_filter): - x1 = keras.layers.UpSampling2D(size=(2, 2))(input) - x2 = keras.layers.Conv2D(out_filter, (3, 3), **CONV_PROPERTIES)(x1) - # x3 = keras.layers.BatchNormalization()(x2) - x3 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(x2) - x4 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(x3) - return x4 - +def upsampling_module(input_layer, out_filter): + upsampled = keras.layers.UpSampling2D(size=(2, 2))(input_layer) + conv = keras.layers.Conv2D(out_filter, (3, 3), **CONV_PROPERTIES)(upsampled) + # bn = keras.layers.BatchNormalization()(conv) + norm = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(conv) + relu = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(norm) + return relu # A 'Localisation Module', based off the 'improved UNet'. -def localisation_module(input, out_filter): - x1 = keras.layers.Conv2D(out_filter, (3, 3), **CONV_PROPERTIES)(input) - # x2 = keras.layers.BatchNormalization()(x1) - x2 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(x1) - x3 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(x2) - x4 = keras.layers.Conv2D(out_filter, (1, 1), **CONV_PROPERTIES)(x3) - # x5 = keras.layers.BatchNormalization()(x4) - x5 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(x4) - x6 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(x5) - return x6 \ No newline at end of file +def localisation_module(input_layer, out_filter): + conv1 = keras.layers.Conv2D(out_filter, (3, 3), **CONV_PROPERTIES)(input_layer) + # bn1 = keras.layers.BatchNormalization()(conv1) + norm1 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(conv1) + relu1 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(norm1) + conv2 = keras.layers.Conv2D(out_filter, (1, 1), **CONV_PROPERTIES)(relu1) + # bn2 = keras.layers.BatchNormalization()(conv2) + norm2 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(conv2) + relu2 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(norm2) + return relu2 \ No newline at end of file diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/predict.py b/recognition/ImprovedUNet-ISIC2018-45293915/predict.py index b1dc41199..d5e6d9ac9 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/predict.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/predict.py @@ -1,66 +1,50 @@ import os -import tensorflow as tf -from tensorflow import keras import numpy as np +import argparse +from tensorflow import keras import matplotlib.pyplot as plt -from itertools import islice - -from dataset import pre_process_data # Import your data preprocessing function here +from tensorflow.keras.preprocessing import image +def load_and_predict(model_path, input_image_dir, output_dir): + # Load the saved model + model = keras.models.load_model(model_path, compile=False) -NUMBER_SHOW_TEST_PREDICTIONS = 3 # Number of test predictions to show + # Define input image dimensions + input_height = 512 + input_width = 512 + # Create a list of input image file names + input_image_files = os.listdir(input_image_dir) -# Metric for how similar two sets (prediction vs truth) are. -# Implementation based off https://en.wikipedia.org/wiki/S%C3%B8rensen%E2%80%93Dice_coefficient -# DSC = (2|X & Y|) / (|X| + |Y|) -> 'soft' dice coefficient. -def dice_coefficient(truth, pred, eps=1e-7, axis=(1, 2, 3)): - numerator = (2.0 * (tf.reduce_sum(pred * truth, axis=axis))) + eps - denominator = tf.reduce_sum(pred, axis=axis) + tf.reduce_sum(truth, axis=axis) + eps - dice = tf.reduce_mean(numerator / denominator) - return dice + # Create the output directory if it doesn't exist + os.makedirs(output_dir, exist_ok=True) + # Loop through input images and make predictions + for input_image_file in input_image_files: + # Load and preprocess the input image + input_image_path = os.path.join(input_image_dir, input_image_file) + img = image.load_img(input_image_path, target_size=(input_height, input_width)) + img_array = image.img_to_array(img) + img_array = np.expand_dims(img_array, axis=0) / 255.0 # Normalize the image -# Loss function - DSC distance. -def dice_loss(truth, pred): - return 1.0 - dice_coefficient(truth, pred) + # Make predictions using the model + prediction = model.predict(img_array) + # Save the prediction as an image (you can customize this part) + prediction_image = np.squeeze(prediction, axis=0) # Remove the batch dimension + prediction_image = (prediction_image * 255).astype(np.uint8) # Convert to 8-bit image + prediction_image_path = os.path.join(output_dir, f"prediction_{input_image_file}") + plt.imsave(prediction_image_path, prediction_image, cmap='gray') -# Test and visualize model predictions with a set amount of test inputs. -def test_visualise_model_predictions(model, test_gen): - print(model) - print(test_gen) - test_range = np.arange(0, stop=NUMBER_SHOW_TEST_PREDICTIONS, step=1) - figure, axes = plt.subplots(NUMBER_SHOW_TEST_PREDICTIONS, 3) - for i in test_range: - current = next(islice(test_gen, i, None)) - image_input = current[0] # Image tensor - mask_truth = current[1] # Mask tensor - test_pred = model.predict(image_input, steps=1, use_multiprocessing=False)[0] - truth = mask_truth[0] - original = image_input[0] - probabilities = keras.preprocessing.image.img_to_array(test_pred) - test_dice = dice_coefficient(truth, test_pred, axis=None) + print(f"Saved prediction for {input_image_file} to {prediction_image_path}") - axes[i][0].title.set_text('Input') - axes[i][0].imshow(original, vmin=0.0, vmax=1.0) - axes[i][0].set_axis_off() - axes[i][1].title.set_text('Output (DSC: ' + str(test_dice.numpy()) + ")") - axes[i][1].imshow(probabilities, cmap='gray', vmin=0.0, vmax=1.0) - axes[i][1].set_axis_off() - axes[i][2].title.set_text('Ground Truth') - axes[i][2].imshow(truth, cmap='gray', vmin=0.0, vmax=1.0) - axes[i][2].set_axis_off() - plt.axis('off') - plt.show() - -def main(): - print("\nPREPROCESSING IMAGES") - train_gen, test_gen = pre_process_data() - print("\nLOADING TRAINED MODEL") - model = keras.models.load_model("path_to_trained_model.h5") # Load your trained model here - print("\nVISUALISING PREDICTIONS") - test_visualise_model_predictions(model, test_gen) + print("Prediction complete.") if __name__ == "__main__": - main() + parser = argparse.ArgumentParser(description="Run predictions using a saved model.") + parser.add_argument("model_path", type=str, help="Path to the saved model file") + parser.add_argument("input_image_dir", type=str, help="Directory containing input images for prediction") + parser.add_argument("output_dir", type=str, help="Directory to save prediction results") + args = parser.parse_args() + + load_and_predict(args.model_path, args.input_image_dir, args.output_dir) diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/train.py b/recognition/ImprovedUNet-ISIC2018-45293915/train.py index bf8644f77..c8c0fe9a8 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/train.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/train.py @@ -5,18 +5,19 @@ import matplotlib.pyplot as plt from itertools import islice import math -from keras.callbacks import Callback import time import modules as layers from dataset import DataLoader +from utils import dice_coefficient, dice_loss, DiceCoefficientCallback, plot_accuracy_loss, save_dice_coefficient_plot +from visualise import test_visualise_model_predictions # string modifier for saving output files based on time timestr = time.strftime("%Y%m%d-%H%M%S") output_dir = "output" # Constants related to training -EPOCHS = 5 +EPOCHS = 1 LEARNING_RATE = 0.0005 BATCH_SIZE = 2 # set the batch_size IMAGE_HEIGHT = 512 # the height input images are scaled to @@ -24,69 +25,6 @@ CHANNELS = 3 STEPS_PER_EPOCH_TRAIN = math.floor(2076 / BATCH_SIZE) STEPS_PER_EPOCH_TEST = math.floor(519 / BATCH_SIZE) -NUMBER_SHOW_TEST_PREDICTIONS = 3 - - - -# Define a callback to calculate Dice coefficient after each epoch -class DiceCoefficientCallback(Callback): - def __init__(self, test_gen, steps_per_epoch_test): - self.test_gen = test_gen - self.steps_per_epoch_test = steps_per_epoch_test - self.dice_coefficients = [] - - def on_epoch_end(self, epoch, logs=None): - test_loss, test_accuracy, test_dice = \ - self.model.evaluate(self.test_gen, steps=self.steps_per_epoch_test, verbose=0, use_multiprocessing=False) - self.dice_coefficients.append(test_dice) - print(f"Epoch {epoch + 1} - Test Dice Coefficient: {test_dice:.4f}") - - -# Plot the accuracy and loss curves of model training. -def plot_accuracy_loss(track): - plt.figure(0) - plt.plot(track.history['accuracy']) - plt.plot(track.history['loss']) - plt.title('Loss & Accuracy Curves') - plt.xlabel('Epoch') - plt.legend(['Accuracy', 'Loss']) - - # Generate a unique filename based on the current date and tim - filename = os.path.join(output_dir, f"accuracy_loss_plot_{timestr}.png") - - # Save the plot to the output folder - plt.savefig(filename, bbox_inches='tight', pad_inches=0.1) - plt.close() - - print(f"Accuracy and loss plot saved as '{filename}'.") - - -# Metric for how similar two sets (prediction vs truth) are. -# Implementation based off https://en.wikipedia.org/wiki/S%C3%B8rensen%E2%80%93Dice_coefficient -# DSC = (2|X & Y|) / (|X| + |Y|) -> 'soft' dice coefficient. -def dice_coefficient(truth, pred, eps=1e-7, axis=(1, 2, 3)): - numerator = (2.0 * (tf.reduce_sum(pred * truth, axis=axis))) + eps - denominator = tf.reduce_sum(pred, axis=axis) + tf.reduce_sum(truth, axis=axis) + eps - dice = tf.reduce_mean(numerator / denominator) - return dice - - -# Loss function - DSC distance. -def dice_loss(truth, pred): - return 1.0 - dice_coefficient(truth, pred) - - -# Plot the dice coefficient curve and save it as an image -def save_dice_coefficient_plot(dice_history): - filename = os.path.join(output_dir, f"dice_coefficient_plot_{timestr}.png") - plt.figure(1) - plt.plot(dice_history) - plt.title('Dice Coefficient Curve') - plt.xlabel('Epoch') - plt.ylabel('Dice Coefficient') - plt.savefig(filename) # Save the plot as an image - plt.close() # Close the figure to release resources - print("Dice coefficeint saved as " + filename + ".") @@ -105,7 +43,7 @@ def train_model_check_accuracy(train_gen, test_gen): verbose=1, use_multiprocessing=False, callbacks=[dice_coefficient_callback]) # Add the callback her - plot_accuracy_loss(track) # Plot accuracy and loss curves + plot_accuracy_loss(track, output_dir, timestr) # Plot accuracy and loss curves print("\nEvaluating test images...") test_loss, test_accuracy, test_dice = \ @@ -117,51 +55,6 @@ def train_model_check_accuracy(train_gen, test_gen): return model, track.history['dice_coefficient'] -# Test and visualize model predictions with a set amount of test inputs. -def test_visualise_model_predictions(model, test_gen): - test_range = np.arange(0, stop=NUMBER_SHOW_TEST_PREDICTIONS, step=1) - - for i in test_range: - current = next(islice(test_gen, i, None)) - image_input = current[0] # Image tensor - mask_truth = current[1] # Mask tensor - # debug statements to check the types of the tensors and find the division by zero - test_pred = model.predict(image_input, steps=1, use_multiprocessing=False)[0] - truth = mask_truth[0] - original = image_input[0] - probabilities = keras.preprocessing.image.img_to_array(test_pred) - test_dice = dice_coefficient(truth, test_pred, axis=None) - - - # Create a unique filename for each visualization - filename = os.path.join(output_dir, f"visualization_{i}_{timestr}.png") - - # Create a subplot for the visualization - figure, axes = plt.subplots(1, 3) - - # Plot and save the input image - axes[0].title.set_text('Input') - axes[0].imshow(original, vmin=0.0, vmax=1.0) - axes[0].set_axis_off() - - # Plot and save the model's output - axes[1].title.set_text('Output (DSC: ' + str(test_dice.numpy()) + ")") - axes[1].imshow(probabilities, cmap='gray', vmin=0.0, vmax=1.0) - axes[1].set_axis_off() - - # Plot and save the ground truth - axes[2].title.set_text('Ground Truth') - axes[2].imshow(truth, cmap='gray', vmin=0.0, vmax=1.0) - axes[2].set_axis_off() - - # Save the visualization to the output folder - plt.axis('off') - plt.savefig(filename, bbox_inches='tight', pad_inches=0.1) - plt.close() - - print("Visualizations saved in the 'output' folder.") - - # Run the test driver. def main(): # Constants related to preprocessing @@ -180,12 +73,10 @@ def main(): horizontal_flip = True vertical_flip = True fill_mode = 'nearest' + number_of_predictions = 3 + print("\nPREPROCESSING IMAGES") # print number of images in each directory - print("Number of images in training_input:", len(os.listdir(train_dir))) - print("Number of images in validation_input:", len(os.listdir(validation_dir))) - print("Number of images in training_groundtruth:", len(os.listdir(train_groundtruth_dir))) - print("Number of images in validation_groundtruth:", len(os.listdir(validation_groundtruth_dir))) test_data = DataLoader( validation_dir, validation_groundtruth_dir, image_mode, mask_mode, image_height, image_width, batch_size, seed, shear_range, zoom_range, horizontal_flip, vertical_flip, fill_mode) @@ -194,16 +85,18 @@ def main(): train_dir, train_groundtruth_dir, image_mode, mask_mode, image_height, image_width, batch_size, seed, shear_range, zoom_range, horizontal_flip, vertical_flip, fill_mode) train_data = train_data.create_data_generators() - print("\nPREPROCESSING IMAGES") + print("\nTRAINING MODEL") model, dice_history = train_model_check_accuracy(train_data, test_data) # Save Dice coefficient - save_dice_coefficient_plot(dice_history) + save_dice_coefficient_plot(dice_history, output_dir, timestr) # Save the trained model to a file + print("\nSAVING MODEL") - model.save("my_model.keras") + model.save(f"models/my_model_{timestr}.keras") + print("\nVISUALISING PREDICTIONS") - test_visualise_model_predictions(model, test_data) + test_visualise_model_predictions(model, test_data, output_dir, timestr, number_of_predictions) print("COMPLETED") return 0 diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/utils.py b/recognition/ImprovedUNet-ISIC2018-45293915/utils.py new file mode 100644 index 000000000..b1d9fc8d8 --- /dev/null +++ b/recognition/ImprovedUNet-ISIC2018-45293915/utils.py @@ -0,0 +1,64 @@ +from keras.callbacks import Callback +import tensorflow as tf +import matplotlib.pyplot as plt +import os + +# Metric for how similar two sets (prediction vs truth) are. +# Implementation based off https://en.wikipedia.org/wiki/S%C3%B8rensen%E2%80%93Dice_coefficient +# DSC = (2|X & Y|) / (|X| + |Y|) -> 'soft' dice coefficient. +def dice_coefficient(truth, pred, eps=1e-7, axis=(1, 2, 3)): + numerator = (2.0 * (tf.reduce_sum(pred * truth, axis=axis))) + eps + denominator = tf.reduce_sum(pred, axis=axis) + tf.reduce_sum(truth, axis=axis) + eps + dice = tf.reduce_mean(numerator / denominator) + return dice + + +# Loss function - DSC distance. +def dice_loss(truth, pred): + return 1.0 - dice_coefficient(truth, pred) + + +# Define a callback to calculate Dice coefficient after each epoch +class DiceCoefficientCallback(Callback): + def __init__(self, test_gen, steps_per_epoch_test): + self.test_gen = test_gen + self.steps_per_epoch_test = steps_per_epoch_test + self.dice_coefficients = [] + + def on_epoch_end(self, epoch, logs=None): + test_loss, test_accuracy, test_dice = \ + self.model.evaluate(self.test_gen, steps=self.steps_per_epoch_test, verbose=0, use_multiprocessing=False) + self.dice_coefficients.append(test_dice) + print(f"Epoch {epoch + 1} - Test Dice Coefficient: {test_dice:.4f}") + + +# Plot the accuracy and loss curves of model training. +def plot_accuracy_loss(track, output_dir, timestr): + plt.figure(0) + plt.plot(track.history['accuracy']) + plt.plot(track.history['loss']) + plt.title('Loss & Accuracy Curves') + plt.xlabel('Epoch') + plt.legend(['Accuracy', 'Loss']) + + # Generate a unique filename based on the current date and tim + filename = os.path.join(output_dir, f"accuracy_loss_plot_{timestr}.png") + + # Save the plot to the output folder + plt.savefig(filename, bbox_inches='tight', pad_inches=0.1) + plt.close() + + print(f"Accuracy and loss plot saved as '{filename}'.") + + +# Plot the dice coefficient curve and save it as an image +def save_dice_coefficient_plot(dice_history, output_dir, timestr): + filename = os.path.join(output_dir, f"dice_coefficient_plot_{timestr}.png") + plt.figure(1) + plt.plot(dice_history) + plt.title('Dice Coefficient Curve') + plt.xlabel('Epoch') + plt.ylabel('Dice Coefficient') + plt.savefig(filename) # Save the plot as an image + plt.close() # Close the figure to release resources + print("Dice coefficeint saved as " + filename + ".") \ No newline at end of file diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/visualise.py b/recognition/ImprovedUNet-ISIC2018-45293915/visualise.py index aaef05e50..94349a3e5 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/visualise.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/visualise.py @@ -1,27 +1,52 @@ -import tensorflow as tf -from dataset import SkinLesionDataset -from matplotlib import pyplot as plt - -# Example usage: -dataset = SkinLesionDataset(data_dir="datasets") -train_data = dataset.train_dataset - -# Define the number of images to show -n_images = 5 - -# Get the first n_images pairs from the training dataset -image_mask_pairs = [item for item in train_data.take(n_images)] - -# Plot images and masks -fig, axes = plt.subplots(nrows=2, ncols=n_images, figsize=(15, 15)) -for i in range(n_images): - image, mask = image_mask_pairs[i] - axes[0, i].imshow(image) - axes[0, i].axis("off") - axes[0, i].set_title("Image") +import numpy as np +import matplotlib.pyplot as plt +from itertools import islice +from tensorflow import keras +import os + +from utils import dice_coefficient + + +# Test and visualize model predictions with a set amount of test inputs. +def test_visualise_model_predictions(model, test_gen, output_dir, timestr, number_of_predictions): + test_range = np.arange(0, stop=number_of_predictions, step=1) - axes[1, i].imshow(mask, cmap='gray') # Assuming grayscale masks - axes[1, i].axis("off") - axes[1, i].set_title("Mask") + for i in test_range: + current = next(islice(test_gen, i, None)) + image_input = current[0] # Image tensor + mask_truth = current[1] # Mask tensor + # debug statements to check the types of the tensors and find the division by zero + test_pred = model.predict(image_input, steps=1, use_multiprocessing=False)[0] + truth = mask_truth[0] + original = image_input[0] + probabilities = keras.preprocessing.image.img_to_array(test_pred) + test_dice = dice_coefficient(truth, test_pred, axis=None) + + + # Create a unique filename for each visualization + filename = os.path.join(output_dir, f"visualization_{i}_{timestr}.png") + + # Create a subplot for the visualization + figure, axes = plt.subplots(1, 3) + + # Plot and save the input image + axes[0].title.set_text('Input') + axes[0].imshow(original, vmin=0.0, vmax=1.0) + axes[0].set_axis_off() + + # Plot and save the model's output + axes[1].title.set_text('Output (DSC: ' + str(test_dice.numpy()) + ")") + axes[1].imshow(probabilities, cmap='gray', vmin=0.0, vmax=1.0) + axes[1].set_axis_off() + + # Plot and save the ground truth + axes[2].title.set_text('Ground Truth') + axes[2].imshow(truth, cmap='gray', vmin=0.0, vmax=1.0) + axes[2].set_axis_off() + + # Save the visualization to the output folder + plt.axis('off') + plt.savefig(filename, bbox_inches='tight', pad_inches=0.1) + plt.close() -plt.show() + print("Visualizations saved in the 'output' folder.") From 0d662147a028aa7d8d961e24252968d5d4e9341c Mon Sep 17 00:00:00 2001 From: riley-ball Date: Mon, 23 Oct 2023 10:05:25 +1000 Subject: [PATCH 31/45] updates for more clarity and further improvements on validation testing, beginning preparations for test set testing --- .../ImprovedUNet-ISIC2018-45293915/predict.py | 85 +++++++++-------- .../ImprovedUNet-ISIC2018-45293915/train.py | 12 +-- .../ImprovedUNet-ISIC2018-45293915/utils.py | 2 +- .../visualise.py | 95 +++++++++++-------- 4 files changed, 109 insertions(+), 85 deletions(-) diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/predict.py b/recognition/ImprovedUNet-ISIC2018-45293915/predict.py index d5e6d9ac9..c93cd156d 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/predict.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/predict.py @@ -1,50 +1,61 @@ -import os import numpy as np -import argparse -from tensorflow import keras import matplotlib.pyplot as plt -from tensorflow.keras.preprocessing import image +from tensorflow import keras +import os -def load_and_predict(model_path, input_image_dir, output_dir): - # Load the saved model - model = keras.models.load_model(model_path, compile=False) +from utils import dice_coefficient +from visualise import save_prediction +from dataset import DataLoader - # Define input image dimensions - input_height = 512 - input_width = 512 +# Evaluate and visualise model predictions on the validation set. +def validate_and_visualise_predictions(model, test_data, output_dir, timestr, number_of_predictions): + # Initialise variables to calculate statistics + total_dice_coefficient = 0.0 + total_samples = 0 - # Create a list of input image file names - input_image_files = os.listdir(input_image_dir) + for i, (image_input, mask_truth) in enumerate(test_data): + # Predict using the model + predictions = model.predict(image_input, steps=1, use_multiprocessing=False) + prediction = predictions[0] + truth = mask_truth[0] + original = image_input[0] + probabilities = keras.preprocessing.image.img_to_array(prediction) + dice_coeff = dice_coefficient(truth, prediction, axis=None) - # Create the output directory if it doesn't exist - os.makedirs(output_dir, exist_ok=True) + # Create a unique filename for each visualisation + filename = os.path.join(output_dir, f"visualisation_{i}_{timestr}.png") - # Loop through input images and make predictions - for input_image_file in input_image_files: - # Load and preprocess the input image - input_image_path = os.path.join(input_image_dir, input_image_file) - img = image.load_img(input_image_path, target_size=(input_height, input_width)) - img_array = image.img_to_array(img) - img_array = np.expand_dims(img_array, axis=0) / 255.0 # Normalize the image + # Save the visualisation + if i < number_of_predictions: + save_prediction(original, probabilities, truth, dice_coeff, filename) - # Make predictions using the model - prediction = model.predict(img_array) + # Accumulate statistics + total_dice_coefficient += dice_coeff + total_samples += 1 - # Save the prediction as an image (you can customize this part) - prediction_image = np.squeeze(prediction, axis=0) # Remove the batch dimension - prediction_image = (prediction_image * 255).astype(np.uint8) # Convert to 8-bit image - prediction_image_path = os.path.join(output_dir, f"prediction_{input_image_file}") - plt.imsave(prediction_image_path, prediction_image, cmap='gray') - print(f"Saved prediction for {input_image_file} to {prediction_image_path}") + # Calculate and print average Dice coefficient for the entire validation set + average_dice_coefficient = total_dice_coefficient / total_samples + print("Average Dice Coefficient on Validation Set:", average_dice_coefficient) - print("Prediction complete.") + print("Visualisations saved in the 'output' folder.") if __name__ == "__main__": - parser = argparse.ArgumentParser(description="Run predictions using a saved model.") - parser.add_argument("model_path", type=str, help="Path to the saved model file") - parser.add_argument("input_image_dir", type=str, help="Directory containing input images for prediction") - parser.add_argument("output_dir", type=str, help="Directory to save prediction results") - args = parser.parse_args() - - load_and_predict(args.model_path, args.input_image_dir, args.output_dir) + test_dir = "datasets/test_input" + test_groundtruth_dir = "datasets/test_groundtruth" + image_mode = "rgb" + mask_mode = "grayscale" + image_height = 512 + image_width = 512 + batch_size = 2 + seed = 45 + shear_range = 0.1 + zoom_range = 0.1 + horizontal_flip = True + vertical_flip = True + fill_mode = 'nearest' + number_of_predictions = 3 + test_data = DataLoader( + test_dir, test_groundtruth_dir, image_mode, mask_mode, image_height, image_width, batch_size, seed, + shear_range, zoom_range, horizontal_flip, vertical_flip, fill_mode) + test_data = test_data.create_data_generators() \ No newline at end of file diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/train.py b/recognition/ImprovedUNet-ISIC2018-45293915/train.py index c8c0fe9a8..8c452988f 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/train.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/train.py @@ -10,14 +10,14 @@ import modules as layers from dataset import DataLoader from utils import dice_coefficient, dice_loss, DiceCoefficientCallback, plot_accuracy_loss, save_dice_coefficient_plot -from visualise import test_visualise_model_predictions +from visualise import validate_and_visualise_predictions # string modifier for saving output files based on time timestr = time.strftime("%Y%m%d-%H%M%S") output_dir = "output" # Constants related to training -EPOCHS = 1 +EPOCHS = 2 LEARNING_RATE = 0.0005 BATCH_SIZE = 2 # set the batch_size IMAGE_HEIGHT = 512 # the height input images are scaled to @@ -77,17 +77,17 @@ def main(): print("\nPREPROCESSING IMAGES") # print number of images in each directory - test_data = DataLoader( + validation_data = DataLoader( validation_dir, validation_groundtruth_dir, image_mode, mask_mode, image_height, image_width, batch_size, seed, shear_range, zoom_range, horizontal_flip, vertical_flip, fill_mode) - test_data = test_data.create_data_generators() + validation_data = validation_data.create_data_generators() train_data = DataLoader( train_dir, train_groundtruth_dir, image_mode, mask_mode, image_height, image_width, batch_size, seed, shear_range, zoom_range, horizontal_flip, vertical_flip, fill_mode) train_data = train_data.create_data_generators() print("\nTRAINING MODEL") - model, dice_history = train_model_check_accuracy(train_data, test_data) + model, dice_history = train_model_check_accuracy(train_data, validation_data) # Save Dice coefficient save_dice_coefficient_plot(dice_history, output_dir, timestr) # Save the trained model to a file @@ -96,7 +96,7 @@ def main(): model.save(f"models/my_model_{timestr}.keras") print("\nVISUALISING PREDICTIONS") - test_visualise_model_predictions(model, test_data, output_dir, timestr, number_of_predictions) + validate_and_visualise_predictions(model, validation_data, output_dir, timestr, number_of_predictions) print("COMPLETED") return 0 diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/utils.py b/recognition/ImprovedUNet-ISIC2018-45293915/utils.py index b1d9fc8d8..cf4c25a07 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/utils.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/utils.py @@ -61,4 +61,4 @@ def save_dice_coefficient_plot(dice_history, output_dir, timestr): plt.ylabel('Dice Coefficient') plt.savefig(filename) # Save the plot as an image plt.close() # Close the figure to release resources - print("Dice coefficeint saved as " + filename + ".") \ No newline at end of file + print("Dice Coefficient saved as " + filename + ".") \ No newline at end of file diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/visualise.py b/recognition/ImprovedUNet-ISIC2018-45293915/visualise.py index 94349a3e5..b8918b047 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/visualise.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/visualise.py @@ -1,52 +1,65 @@ import numpy as np import matplotlib.pyplot as plt -from itertools import islice from tensorflow import keras import os from utils import dice_coefficient -# Test and visualize model predictions with a set amount of test inputs. -def test_visualise_model_predictions(model, test_gen, output_dir, timestr, number_of_predictions): - test_range = np.arange(0, stop=number_of_predictions, step=1) +def save_prediction(original, probabilities, truth, dice_coeff, filename): + # Create a subplot for the visualization + figure, axes = plt.subplots(1, 3) - for i in test_range: - current = next(islice(test_gen, i, None)) - image_input = current[0] # Image tensor - mask_truth = current[1] # Mask tensor - # debug statements to check the types of the tensors and find the division by zero - test_pred = model.predict(image_input, steps=1, use_multiprocessing=False)[0] + # Plot and save the input image + axes[0].title.set_text('Input') + axes[0].imshow(original, vmin=0.0, vmax=1.0) + axes[0].set_axis_off() + + # Plot and save the model's output + axes[1].title.set_text('Dice Coeff: ' + str(dice_coeff.numpy())) + axes[1].imshow(probabilities, cmap='gray', vmin=0.0, vmax=1.0) + axes[1].set_axis_off() + + # Plot and save the ground truth + axes[2].title.set_text('Ground Truth') + axes[2].imshow(truth, cmap='gray', vmin=0.0, vmax=1.0) + axes[2].set_axis_off() + + # Save the visualisation to the output folder + plt.axis('off') + plt.savefig(filename, bbox_inches='tight', pad_inches=0.1) + plt.close() + + +# Evaluate and visualise model predictions on the validation set. +def validate_and_visualise_predictions(model, validation_data, output_dir, timestr, number_of_predictions): + # Initialise variables to calculate statistics + total_dice_coefficient = 0.0 + total_samples = 0 + + for i, (image_input, mask_truth) in enumerate(validation_data): + # Predict using the model + predictions = model.predict(image_input, steps=1, use_multiprocessing=False) + prediction = predictions[0] truth = mask_truth[0] original = image_input[0] - probabilities = keras.preprocessing.image.img_to_array(test_pred) - test_dice = dice_coefficient(truth, test_pred, axis=None) - - - # Create a unique filename for each visualization - filename = os.path.join(output_dir, f"visualization_{i}_{timestr}.png") - - # Create a subplot for the visualization - figure, axes = plt.subplots(1, 3) - - # Plot and save the input image - axes[0].title.set_text('Input') - axes[0].imshow(original, vmin=0.0, vmax=1.0) - axes[0].set_axis_off() - - # Plot and save the model's output - axes[1].title.set_text('Output (DSC: ' + str(test_dice.numpy()) + ")") - axes[1].imshow(probabilities, cmap='gray', vmin=0.0, vmax=1.0) - axes[1].set_axis_off() - - # Plot and save the ground truth - axes[2].title.set_text('Ground Truth') - axes[2].imshow(truth, cmap='gray', vmin=0.0, vmax=1.0) - axes[2].set_axis_off() - - # Save the visualization to the output folder - plt.axis('off') - plt.savefig(filename, bbox_inches='tight', pad_inches=0.1) - plt.close() - - print("Visualizations saved in the 'output' folder.") + probabilities = keras.preprocessing.image.img_to_array(prediction) + dice_coeff = dice_coefficient(truth, prediction, axis=None) + + # Create a unique filename for each visualisation + filename = os.path.join(output_dir, f"visualisation_{i}_{timestr}.png") + + # Save the visualisation + if i < number_of_predictions: + save_prediction(original, probabilities, truth, dice_coeff, filename) + + # Accumulate statistics + total_dice_coefficient += dice_coeff + total_samples += 1 + + + # Calculate and print average Dice coefficient for the entire validation set + average_dice_coefficient = total_dice_coefficient / total_samples + print("Average Dice Coefficient on Validation Set:", average_dice_coefficient) + + print("Visualisations saved in the 'output' folder.") From dd0dfb9847a836d6056970e18945cb6c6b4cd052 Mon Sep 17 00:00:00 2001 From: riley-ball Date: Mon, 23 Oct 2023 13:06:45 +1000 Subject: [PATCH 32/45] updated comments for modules.py --- .../ImprovedUNet-ISIC2018-45293915/modules.py | 128 ++++++++++-------- 1 file changed, 75 insertions(+), 53 deletions(-) diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/modules.py b/recognition/ImprovedUNet-ISIC2018-45293915/modules.py index f18565211..4db937a1d 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/modules.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/modules.py @@ -2,28 +2,23 @@ from tensorflow import keras from tensorflow.keras.regularizers import l2 import tensorflow_addons as tfa -# 'tensorflow-addons' is an officially supported repository implementing new functionality: -# More info at https://www.tensorflow.org/addons. Version 0.9.1 is required for TF 2.1. -# TFA allows for a InstanceNormalization layer (rather than a BatchNormalization layer), as was implemented in the -# referenced 'improved UNet'. This layer is necessary due to the usage of my small batch-size of 2, which can lead to -# "stochasticity induced ...[which]... may destabilize batch normalizaton" - -# F. Isensee, P. Kickingereder, W. Wick, M. Bendszus, and K. H. Maier-Hein, “Brain Tumor Segmentation and -# Radiomics Survival Prediction: Contribution to the BRATS 2017 Challenge,” Feb. 2018. [Online]. Available: -# https://arxiv.org/abs/1802.10508v1. -# While BatchNormalization normalises across the batch, InstanceNormalization normalises each batch separately. +# TensorFlow Addons (tfa) is used here because it provides support for Instance Normalization (IN) +# as opposed to Batch Normalization (BN). This choice aligns with the findings from the referenced paper +# (https://arxiv.org/abs/1802.10508v1), where IN is preferred over BN due to the potential destabilization +# of batch normalization caused by small batch sizes in the training process. # -------------------------------------------- # GLOBAL CONSTANTS # -------------------------------------------- -LEAKY_RELU_ALPHA = 0.01 -DROPOUT = 0.35 -L2_WEIGHT_DECAY = 0.0005 -CONV_PROPERTIES = dict( +LEAKY_RELU_ALPHA = 0.01 # Alpha value for LeakyReLU activation function +DROPOUT = 0.35 # Dropout rate +L2_WEIGHT_DECAY = 0.0005 # L2 weight decay +CONV_PROP = dict( kernel_regularizer=l2(L2_WEIGHT_DECAY), bias_regularizer=l2(L2_WEIGHT_DECAY), padding="same") -I_NORMALIZATION_PROPERTIES = dict( +IN_PROP = dict( axis=3, center=True, scale=True, @@ -31,41 +26,70 @@ gamma_initializer="random_uniform") -# -------------------------------------------- -# IMPROVED UNET MODEL FOR ISICS BINARY SEGMENTATION -# -------------------------------------------- - -# Implementation based off the 'improved UNet': https://arxiv.org/abs/1802.10508v1. -# 2D implementation rather than 3D as 2D inputs/outputs are required. def improved_unet(width, height, channels): + # Improved UNet Model for ISIC Segmentation + # ------------------------------------------------- + + # Implementation based on the 'improved UNet' architecture from https://arxiv.org/abs/1802.10508v1. + # This 2D implementation is designed for image segmentation tasks, with instance normalization (IN) + # for improved stability, especially with small batch sizes. + + # Architecture Overview: + # + # [Input] -> [Encoder] -> [Decoder] -> [Output] + # + # Key Components: + # - Encoder: Down-sampling path with convolutional layers and context modules. + # - Decoder: Up-sampling path with localization and upsampling modules. + # - Context Module: Enhances feature extraction and learning by adding context. + # - Upsampling Module: Upscales feature maps to recover spatial information. + # - Localisation Module: Fine-tunes feature maps for better segmentation. + # + # Output Layer: + # - Sigmoid activation for binary segmentation. + # + # Detailed Architecture: + # [Input] -> [Conv] -> [IN] -> [LeakyReLU] -> [Context] -> [Add] -> [Conv] -> [IN] -> [LeakyReLU] -> ... + # ... -> [Upsampling] -> [Conv] -> [IN] -> [LeakyReLU] -> [Add] -> [Concatenate] -> [Localization] -> ... + # ... -> [Upsampling] -> [Conv] -> [IN] -> [LeakyReLU] -> [Add] -> [Concatenate] -> [Localization] -> ... + # ... -> [Upsampling] -> [Conv] -> [IN] -> [LeakyReLU] -> [Add] -> [Concatenate] -> [Localization] -> ... + # ... -> [Upsampling] -> [Conv] -> [IN] -> [LeakyReLU] -> [Add] -> [Concatenate] -> [Conv] -> [IN] -> ... + # ... [LeakyReLU] -> [Sigmoid] -> [Upsampling] -> [Sigmoid] -> [Add] -> [Upsampling] -> [Sigmoid] -> [Add] -> [Output] + input_layer = keras.Input(shape=(width, height, channels)) - conv1 = keras.layers.Conv2D(16, (3, 3), input_shape=(width, height, channels), **CONV_PROPERTIES)(input_layer) - norm1 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(conv1) + # Encoder + # ------------------------------------------------- + + conv1 = keras.layers.Conv2D(16, (3, 3), input_shape=(width, height, channels), **CONV_PROP)(input_layer) + norm1 = tfa.layers.InstanceNormalization(**IN_PROP)(conv1) relu1 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(norm1) context1 = context_module(relu1, 16) add1 = keras.layers.Add()([conv1, context1]) - conv2 = keras.layers.Conv2D(32, (3, 3), strides=2, **CONV_PROPERTIES)(add1) - norm2 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(conv2) + conv2 = keras.layers.Conv2D(32, (3, 3), strides=2, **CONV_PROP)(add1) + norm2 = tfa.layers.InstanceNormalization(**IN_PROP)(conv2) relu2 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(norm2) context2 = context_module(relu2, 32) add2 = keras.layers.Add()([relu2, context2]) - conv3 = keras.layers.Conv2D(64, (3, 3), strides=2, **CONV_PROPERTIES)(add2) - norm3 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(conv3) + conv3 = keras.layers.Conv2D(64, (3, 3), strides=2, **CONV_PROP)(add2) + norm3 = tfa.layers.InstanceNormalization(**IN_PROP)(conv3) relu3 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(norm3) context3 = context_module(relu3, 64) add3 = keras.layers.Add()([relu3, context3]) - conv4 = keras.layers.Conv2D(128, (3, 3), strides=2, **CONV_PROPERTIES)(add3) - norm4 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(conv4) + conv4 = keras.layers.Conv2D(128, (3, 3), strides=2, **CONV_PROP)(add3) + norm4 = tfa.layers.InstanceNormalization(**IN_PROP)(conv4) relu4 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(norm4) context4 = context_module(relu4, 128) add4 = keras.layers.Add()([relu4, context4]) - conv5 = keras.layers.Conv2D(256, (3, 3), strides=2, **CONV_PROPERTIES)(add4) - norm5 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(conv5) + # Decoder + # ------------------------------------------------- + + conv5 = keras.layers.Conv2D(256, (3, 3), strides=2, **CONV_PROP)(add4) + norm5 = tfa.layers.InstanceNormalization(**IN_PROP)(conv5) relu5 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(norm5) context5 = context_module(relu5, 256) add5 = keras.layers.Add()([relu5, context5]) @@ -84,8 +108,8 @@ def improved_unet(width, height, channels): upsample4 = upsampling_module(localization3, 16) concat4 = keras.layers.Concatenate()([add1, upsample4]) - conv6 = keras.layers.Conv2D(32, (3, 3), **CONV_PROPERTIES)(concat4) - norm6 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(conv6) + conv6 = keras.layers.Conv2D(32, (3, 3), **CONV_PROP)(concat4) + norm6 = tfa.layers.InstanceNormalization(**IN_PROP)(conv6) relu6 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(norm6) seg_layer1 = keras.layers.Activation('sigmoid')(localization2) @@ -96,45 +120,43 @@ def improved_unet(width, height, channels): seg_layer3 = keras.layers.Activation('sigmoid')(relu6) sum2 = keras.layers.Add()([upsample6, seg_layer3]) - output_layer = keras.layers.Conv2D(1, (1, 1), activation="sigmoid", **CONV_PROPERTIES)(sum2) + # Output + # ------------------------------------------------- + + output_layer = keras.layers.Conv2D(1, (1, 1), activation="sigmoid", **CONV_PROP)(sum2) u_net = keras.Model(inputs=[input_layer], outputs=[output_layer]) return u_net -# -------------------------------------------- + # MODULES -# -------------------------------------------- +# ------------------------------------------------- -# A 'Context Module', based off the 'improved UNet'. +# Context Module based inspired by the Improved UNet paper. def context_module(input_layer, out_filter): - conv1 = keras.layers.Conv2D(out_filter, (3, 3), **CONV_PROPERTIES)(input_layer) - # bn1 = keras.layers.BatchNormalization()(conv1) - norm1 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(conv1) + conv1 = keras.layers.Conv2D(out_filter, (3, 3), **CONV_PROP)(input_layer) + norm1 = tfa.layers.InstanceNormalization(**IN_PROP)(conv1) relu1 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(norm1) dropout1 = keras.layers.Dropout(DROPOUT)(relu1) - conv2 = keras.layers.Conv2D(out_filter, (3, 3), **CONV_PROPERTIES)(dropout1) - # bn2 = keras.layers.BatchNormalization()(conv2) - norm2 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(conv2) + conv2 = keras.layers.Conv2D(out_filter, (3, 3), **CONV_PROP)(dropout1) + norm2 = tfa.layers.InstanceNormalization(**IN_PROP)(conv2) relu2 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(norm2) return relu2 -# An 'Upsampling Module', based off the 'improved UNet'. +# Upsampling Module based inspired by the Improved UNet paper. def upsampling_module(input_layer, out_filter): upsampled = keras.layers.UpSampling2D(size=(2, 2))(input_layer) - conv = keras.layers.Conv2D(out_filter, (3, 3), **CONV_PROPERTIES)(upsampled) - # bn = keras.layers.BatchNormalization()(conv) - norm = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(conv) + conv = keras.layers.Conv2D(out_filter, (3, 3), **CONV_PROP)(upsampled) + norm = tfa.layers.InstanceNormalization(**IN_PROP)(conv) relu = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(norm) return relu -# A 'Localisation Module', based off the 'improved UNet'. +# Localisation Module inspired by the Improved UNet paper. def localisation_module(input_layer, out_filter): - conv1 = keras.layers.Conv2D(out_filter, (3, 3), **CONV_PROPERTIES)(input_layer) - # bn1 = keras.layers.BatchNormalization()(conv1) - norm1 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(conv1) + conv1 = keras.layers.Conv2D(out_filter, (3, 3), **CONV_PROP)(input_layer) + norm1 = tfa.layers.InstanceNormalization(**IN_PROP)(conv1) relu1 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(norm1) - conv2 = keras.layers.Conv2D(out_filter, (1, 1), **CONV_PROPERTIES)(relu1) - # bn2 = keras.layers.BatchNormalization()(conv2) - norm2 = tfa.layers.InstanceNormalization(**I_NORMALIZATION_PROPERTIES)(conv2) + conv2 = keras.layers.Conv2D(out_filter, (1, 1), **CONV_PROP)(relu1) + norm2 = tfa.layers.InstanceNormalization(**IN_PROP)(conv2) relu2 = keras.layers.LeakyReLU(alpha=LEAKY_RELU_ALPHA)(norm2) return relu2 \ No newline at end of file From 7682a47e03aee1fbb78566e59323c7a60f2b8c47 Mon Sep 17 00:00:00 2001 From: riley-ball Date: Mon, 23 Oct 2023 13:07:30 +1000 Subject: [PATCH 33/45] updated comments for dataset.py --- .../ImprovedUNet-ISIC2018-45293915/dataset.py | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/dataset.py b/recognition/ImprovedUNet-ISIC2018-45293915/dataset.py index b55a3781c..f560938fe 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/dataset.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/dataset.py @@ -3,6 +3,29 @@ from tensorflow import keras class DataLoader: + """ + A utility class for creating data generators for image segmentation tasks. + It prepares and generates batches of input images and corresponding ground truth masks + for training or validation purposes. + + Parameters: + - input_dir: The directory containing input images. + - groundtruth_dir: The directory containing corresponding ground truth masks. + - image_mode: The color mode for input images (e.g., 'rgb'). + - mask_mode: The color mode for ground truth masks (e.g., 'grayscale'). + - image_height: The desired height of the input images. + - image_width: The desired width of the input images. + - batch_size: The batch size for data generation. + - seed: The random seed for data augmentation (default is 45). + - shear_range: The range for shear transformations during data augmentation. + - zoom_range: The range for zooming transformations during data augmentation. + - horizontal_flip: Whether to perform horizontal flips during data augmentation. + - vertical_flip: Whether to perform vertical flips during data augmentation. + - fill_mode: The fill mode for filling in newly created pixels during data augmentation. + + Methods: + - create_data_generators: Creates and returns data generators for input images and masks. + """ def __init__(self, input_dir, groundtruth_dir, image_mode, mask_mode, image_height, image_width, batch_size, seed=45, shear_range=0.1, zoom_range=0.1, horizontal_flip=True, vertical_flip=True, fill_mode='nearest',): self.input_dir = input_dir self.groundtruth_dir = groundtruth_dir From d703cb6f6a411dee2e674bcbed30b025f1463110 Mon Sep 17 00:00:00 2001 From: riley-ball Date: Mon, 23 Oct 2023 13:08:10 +1000 Subject: [PATCH 34/45] updates to predict.py to perform predictions on the ISIC 2018 test set --- .../ImprovedUNet-ISIC2018-45293915/predict.py | 112 ++++++++++++++---- 1 file changed, 86 insertions(+), 26 deletions(-) diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/predict.py b/recognition/ImprovedUNet-ISIC2018-45293915/predict.py index c93cd156d..ff18f4a06 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/predict.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/predict.py @@ -2,45 +2,95 @@ import matplotlib.pyplot as plt from tensorflow import keras import os +import math +import time +from itertools import islice from utils import dice_coefficient -from visualise import save_prediction from dataset import DataLoader +BATCH_SIZE = 2 # set the batch_size +STEPS_PER_EPOCH_TEST = math.floor(519 / BATCH_SIZE) + + +def save_prediction(original, probabilities, truth, dice_coeff, filename): + # Create a subplot for the visualization + figure, axes = plt.subplots(1, 3) + + # Plot and save the input image + axes[0].title.set_text('Input') + axes[0].imshow(original, vmin=0.0, vmax=1.0) + axes[0].set_axis_off() + + # Plot and save the model's output + axes[1].title.set_text('Dice Coeff: ' + str(dice_coeff.numpy())) + axes[1].imshow(probabilities, cmap='gray', vmin=0.0, vmax=1.0) + axes[1].set_axis_off() + + # Plot and save the ground truth + axes[2].title.set_text('Ground Truth') + axes[2].imshow(truth, cmap='gray', vmin=0.0, vmax=1.0) + axes[2].set_axis_off() + + # Save the visualisation to the output folder + plt.axis('off') + plt.savefig(filename, bbox_inches='tight', pad_inches=0.1) + plt.close() + + # Evaluate and visualise model predictions on the validation set. -def validate_and_visualise_predictions(model, test_data, output_dir, timestr, number_of_predictions): - # Initialise variables to calculate statistics - total_dice_coefficient = 0.0 - total_samples = 0 - - for i, (image_input, mask_truth) in enumerate(test_data): - # Predict using the model - predictions = model.predict(image_input, steps=1, use_multiprocessing=False) - prediction = predictions[0] +def test_and_visualise_predictions(model, test_data, output_dir, timestr, number_of_predictions): + + test_loss, test_accuracy, test_dice = \ + model.evaluate(test_data, steps=STEPS_PER_EPOCH_TEST, verbose=2, use_multiprocessing=False) + print("Test Accuracy: " + str(test_accuracy)) + print("Test Loss: " + str(test_loss)) + print("Test DSC: " + str(test_dice) + "\n") + + test_range = np.arange(0, stop=number_of_predictions, step=1) + + for i in test_range: + current = next(islice(test_data, i, None)) + image_input = current[0] # Image tensor + mask_truth = current[1] # Mask tensor + # debug statements to check the types of the tensors and find the division by zero + test_pred = model.predict(image_input, steps=1, use_multiprocessing=False)[0] truth = mask_truth[0] original = image_input[0] - probabilities = keras.preprocessing.image.img_to_array(prediction) - dice_coeff = dice_coefficient(truth, prediction, axis=None) - - # Create a unique filename for each visualisation - filename = os.path.join(output_dir, f"visualisation_{i}_{timestr}.png") + probabilities = keras.preprocessing.image.img_to_array(test_pred) + test_dice = dice_coefficient(truth, test_pred, axis=None) - # Save the visualisation - if i < number_of_predictions: - save_prediction(original, probabilities, truth, dice_coeff, filename) - # Accumulate statistics - total_dice_coefficient += dice_coeff - total_samples += 1 + # Create a unique filename for each visualization + filename = os.path.join(output_dir, f"test_visualisation_{i}_{timestr}.png") + # Create a subplot for the visualization + figure, axes = plt.subplots(1, 3) + + # Plot and save the input image + axes[0].title.set_text('Input') + axes[0].imshow(original, vmin=0.0, vmax=1.0) + axes[0].set_axis_off() + + # Plot and save the model's output + axes[1].title.set_text('Output (DSC: ' + str(test_dice.numpy()) + ")") + axes[1].imshow(probabilities, cmap='gray', vmin=0.0, vmax=1.0) + axes[1].set_axis_off() + + # Plot and save the ground truth + axes[2].title.set_text('Ground Truth') + axes[2].imshow(truth, cmap='gray', vmin=0.0, vmax=1.0) + axes[2].set_axis_off() - # Calculate and print average Dice coefficient for the entire validation set - average_dice_coefficient = total_dice_coefficient / total_samples - print("Average Dice Coefficient on Validation Set:", average_dice_coefficient) + # Save the visualization to the output folder + plt.axis('off') + plt.savefig(filename, bbox_inches='tight', pad_inches=0.1) + plt.close() - print("Visualisations saved in the 'output' folder.") + print("Visualisations of test output saved in the 'output' folder.") if __name__ == "__main__": + # Constants related to preprocessing test_dir = "datasets/test_input" test_groundtruth_dir = "datasets/test_groundtruth" image_mode = "rgb" @@ -55,7 +105,17 @@ def validate_and_visualise_predictions(model, test_data, output_dir, timestr, nu vertical_flip = True fill_mode = 'nearest' number_of_predictions = 3 + + print("\nPREPROCESSING IMAGES") + # print number of images in each directory test_data = DataLoader( test_dir, test_groundtruth_dir, image_mode, mask_mode, image_height, image_width, batch_size, seed, shear_range, zoom_range, horizontal_flip, vertical_flip, fill_mode) - test_data = test_data.create_data_generators() \ No newline at end of file + test_data = test_data.create_data_generators() + + + model_name = "WORK.keras" + output_dir = "output" + timestr = time.strftime("%Y%m%d-%H%M%S") + print("\nTESTING MODEL") + test_and_visualise_predictions(model_name, test_data, output_dir, timestr, number_of_predictions) \ No newline at end of file From 380a054a4a9b7185b7a737d1aecc284653f1d3f0 Mon Sep 17 00:00:00 2001 From: riley-ball Date: Mon, 23 Oct 2023 13:09:02 +1000 Subject: [PATCH 35/45] final push --- .../template_train.py | 78 ------------------- .../ImprovedUNet-ISIC2018-45293915/train.py | 35 +++++---- 2 files changed, 22 insertions(+), 91 deletions(-) delete mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/template_train.py diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/template_train.py b/recognition/ImprovedUNet-ISIC2018-45293915/template_train.py deleted file mode 100644 index 252e277a7..000000000 --- a/recognition/ImprovedUNet-ISIC2018-45293915/template_train.py +++ /dev/null @@ -1,78 +0,0 @@ -import tensorflow as tf -from modules import unet_model - -# Sample Configuration -EPOCHS = 10 -BATCH_SIZE = 32 -TRAINING_DATA_DIR = "path_to_training_images/" -TRAINING_MASK_DIR = "path_to_training_masks/" -VAL_DATA_DIR = "path_to_val_images/" -VAL_MASK_DIR = "path_to_val_masks/" -IMG_SIZE = (256, 256) - -# ImageDataGenerator for data augmentation -train_datagen = tf.keras.preprocessing.image.ImageDataGenerator( - rescale=1./255, - rotation_range=20, - width_shift_range=0.2, - height_shift_range=0.2, - zoom_range=0.2 -) - -val_datagen = tf.keras.preprocessing.image.ImageDataGenerator(rescale=1./255) - -# Create generators for training and validation datasets -train_image_generator = train_datagen.flow_from_directory( - TRAINING_DATA_DIR, - target_size=IMG_SIZE, - batch_size=BATCH_SIZE, - class_mode=None, # No labels - seed=42, - color_mode="grayscale" -) - -train_mask_generator = train_datagen.flow_from_directory( - TRAINING_MASK_DIR, - target_size=IMG_SIZE, - batch_size=BATCH_SIZE, - class_mode=None, - seed=42, - color_mode="grayscale" -) - -val_image_generator = val_datagen.flow_from_directory( - VAL_DATA_DIR, - target_size=IMG_SIZE, - batch_size=BATCH_SIZE, - class_mode=None, - seed=42, - color_mode="grayscale" -) - -val_mask_generator = val_datagen.flow_from_directory( - VAL_MASK_DIR, - target_size=IMG_SIZE, - batch_size=BATCH_SIZE, - class_mode=None, - seed=42, - color_mode="grayscale" -) - -# Combine image and mask generators -train_generator = zip(train_image_generator, train_mask_generator) -val_generator = zip(val_image_generator, val_mask_generator) - -# Compile and train the model -model = unet_model() -model.compile(optimizer='adam', loss='binary_crossentropy', metrics=['accuracy']) - -model.fit( - train_generator, - validation_data=val_generator, - steps_per_epoch=len(train_image_generator), - validation_steps=len(val_image_generator), - epochs=EPOCHS -) - -# Save the model (optional) -model.save("unet_model.h5") diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/train.py b/recognition/ImprovedUNet-ISIC2018-45293915/train.py index 8c452988f..e917d637f 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/train.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/train.py @@ -11,13 +11,14 @@ from dataset import DataLoader from utils import dice_coefficient, dice_loss, DiceCoefficientCallback, plot_accuracy_loss, save_dice_coefficient_plot from visualise import validate_and_visualise_predictions +from predict import test_and_visualise_predictions # string modifier for saving output files based on time timestr = time.strftime("%Y%m%d-%H%M%S") output_dir = "output" # Constants related to training -EPOCHS = 2 +EPOCHS = 1 LEARNING_RATE = 0.0005 BATCH_SIZE = 2 # set the batch_size IMAGE_HEIGHT = 512 # the height input images are scaled to @@ -28,15 +29,15 @@ -def train_model_check_accuracy(train_gen, test_gen): +def train_model_check_accuracy(training_data, validation_data): model = layers.improved_unet(IMAGE_WIDTH, IMAGE_HEIGHT, CHANNELS) model.summary() # Define the DiceCoefficientCallback - dice_coefficient_callback = DiceCoefficientCallback(test_gen, STEPS_PER_EPOCH_TEST) + dice_coefficient_callback = DiceCoefficientCallback(validation_data, STEPS_PER_EPOCH_TEST) model.compile(optimizer=keras.optimizers.Adam(LEARNING_RATE), loss=dice_loss, metrics=['accuracy', dice_coefficient]) track = model.fit( - train_gen, + training_data, steps_per_epoch=STEPS_PER_EPOCH_TRAIN, epochs=EPOCHS, shuffle=True, @@ -45,12 +46,12 @@ def train_model_check_accuracy(train_gen, test_gen): callbacks=[dice_coefficient_callback]) # Add the callback her plot_accuracy_loss(track, output_dir, timestr) # Plot accuracy and loss curves - print("\nEvaluating test images...") - test_loss, test_accuracy, test_dice = \ - model.evaluate(test_gen, steps=STEPS_PER_EPOCH_TEST, verbose=2, use_multiprocessing=False) - print("Test Accuracy: " + str(test_accuracy)) - print("Test Loss: " + str(test_loss)) - print("Test DSC: " + str(test_dice) + "\n") + print("\nEvaluating validation images...") + validation_loss, validation_accuracy, validation_dice = \ + model.evaluate(validation_data, steps=STEPS_PER_EPOCH_TEST, verbose=2, use_multiprocessing=False) + print("Validation Accuracy: " + str(validation_accuracy)) + print("Validation Loss: " + str(validation_loss)) + print("Validation DSC: " + str(validation_dice) + "\n") return model, track.history['dice_coefficient'] @@ -93,11 +94,19 @@ def main(): # Save the trained model to a file print("\nSAVING MODEL") - model.save(f"models/my_model_{timestr}.keras") + keras.saving.save_model(model, f"models/my_model_{timestr}.keras", overwrite=True) - print("\nVISUALISING PREDICTIONS") - validate_and_visualise_predictions(model, validation_data, output_dir, timestr, number_of_predictions) + test_dir = "datasets/test_input" + test_groundtruth_dir = "datasets/test_groundtruth" + test_data = DataLoader( + test_dir, test_groundtruth_dir, image_mode, mask_mode, image_height, image_width, batch_size, seed, + shear_range, zoom_range, horizontal_flip, vertical_flip, fill_mode) + test_data = test_data.create_data_generators() + # print("\nVISUALISING PREDICTIONS") + # validate_and_visualise_predictions(model, validation_data, output_dir, timestr, number_of_predictions) + + test_and_visualise_predictions(model, test_data, output_dir, timestr, number_of_predictions) print("COMPLETED") return 0 From 11724ea24e463479199f53f076ad39969086c874 Mon Sep 17 00:00:00 2001 From: riley-ball Date: Mon, 23 Oct 2023 13:59:52 +1000 Subject: [PATCH 36/45] final updates --- .../ImprovedUNet-ISIC2018-45293915/README.md | 57 +++++++++++++------ .../ImprovedUNet-ISIC2018-45293915/modules.py | 1 + .../ImprovedUNet-ISIC2018-45293915/predict.py | 2 +- .../ImprovedUNet-ISIC2018-45293915/train.py | 16 ++---- .../{visualise.py => validation.py} | 0 5 files changed, 46 insertions(+), 30 deletions(-) rename recognition/ImprovedUNet-ISIC2018-45293915/{visualise.py => validation.py} (100%) diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/README.md b/recognition/ImprovedUNet-ISIC2018-45293915/README.md index 36fb8fdc5..b048afbe8 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/README.md +++ b/recognition/ImprovedUNet-ISIC2018-45293915/README.md @@ -1,6 +1,8 @@ # Improved U-Net for ISIC 2018 Skin Lesion Segmentation -## Description +This repository contains the code for the Improved U-Net model for the ISIC 2018 Skin Lesion Segmentation challenge (https://challenge.isic-archive.com/data/#2018). The model was trained on the ISIC 2018 dataset, which contains 2594 dermoscopic images of skin lesions. The model was trained on a single NVIDIA Tesla T4 GPU with 16GB of VRAM. The model was trained for 100 epochs, with a batch size of 8. The model was trained using the Adam optimiser with a learning rate of 0.0001. The model achieved a dice coefficient of 0.85 on the test set. + +## Architecture Description The Improved U-Net is a cutting-edge neural network architecture which can be tailored for biomedical image segmentation tasks. Originally inspired by the U-Net architecture, this version boasts enhancements that further optimize its accuracy and performance. The algorithm effectively addresses the problem of segmenting skin lesions from dermoscopic images, a crucial step in early skin cancer detection. @@ -23,9 +25,14 @@ Above is an image that showcases the localisation module in the context of proce ## Dependencies -- **TensorFlow**: version x -- **NumPy**: version x -- **matplotlib**: version x +- **TensorFlow**: version 2.14.0 +- **Keras**: version 2.14.0 +- **NumPy**: version 1.26.1 +- **TensorFlow Addons**: version 0.22.0 +- **TensorFlow Estimator**: version 2.14.0 +- **Matplotlib**: version 3.8.0 +- **Python**: version 3.10.12 + ## Reproducibility @@ -61,7 +68,27 @@ To ensure the reproducibility of results: ## Data Pre-processing -Images were resized to 512x512 pixels for consistency. Furthermore, the images were normalised to have zero mean and unit variance. The ground truth masks were also resized to 512x512 pixels and converted to binary masks. +For the image segmentation task, a series of data pre-processing steps were performed to prepare the input images and corresponding ground truth masks for training and validation. + +### Input Images + +- **Color Mode:** The color mode for the input images was set to `image_mode`, which is typically 'rgb' for full-color images. + +- **Resizing:** To ensure consistency, all input images were resized to a common dimension of `image_height` pixels in height and `image_width` pixels in width (e.g., 512x512 pixels). + +- **Normalization:** Normalization was applied to the input images by rescaling their pixel values to have zero mean and unit variance. This was done using the formula `rescale=1.0 / 255`. + +- **Data Augmentation:** Data augmentation techniques were employed to increase the diversity of the training dataset. Augmentation options included shear transformations with a range of `shear_range`, zooming transformations within `zoom_range`, horizontal flips (`horizontal_flip`), and vertical flips (`vertical_flip`). These augmentations help the model generalize better to different variations of the input data. + +- **Fill Mode:** The `fill_mode` parameter determined how newly created pixels, if any, were filled during data augmentation. Common options include 'nearest,' 'constant,' and 'reflect.' + +### Ground Truth Masks + +- **Color Mode:** The color mode for the ground truth masks was set to `mask_mode`, which is typically 'grayscale' for binary masks. + +- **Resizing:** Similar to the input images, the ground truth masks were resized to the same dimensions of `image_height` pixels in height and `image_width` pixels in width (e.g., 512x512 pixels). + +Overall, these pre-processing steps ensured that both input images and ground truth masks were appropriately sized, normalized, and augmented for training and validation of the image segmentation model. **References**: - https://arxiv.org/pdf/1802.10508v1.pdf @@ -80,24 +107,18 @@ root_directory │ ├── test_input │ └── test_groundtruth ├── output +├── models +├── assets │ ├── train.py ├── modules.py ├── dataset.py -└── predict.py +├── predict.py +├── utils.py +├── validation.py +└── requirements.txt ``` ## Data Splits -We divided the ISIC 2018 dataset into training, validation, and test sets following an 80-10-10 split: - -- **Training Data**: 80% - Used for training the network. -- **Validation Data**: 10% - Used for hyperparameter tuning and early stopping. -- **Test Data**: 10% - Held out for evaluating the final performance of the model. - -This division ensures a robust assessment of the model's performance, minimising overfitting and providing a reliable estimation of its real-world applicability. - -## TODO: - -- Add a link to the dataset. -- Research the best way to use the dice coeffficient callback \ No newline at end of file +The ISIC 2018 data was provided through 6 zip files for 3 types of data: Training, Validation and Testing. The training data contained 2594 images, the validation data contained 100 images and the testing data contained 1000 images. \ No newline at end of file diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/modules.py b/recognition/ImprovedUNet-ISIC2018-45293915/modules.py index 4db937a1d..554d3674a 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/modules.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/modules.py @@ -2,6 +2,7 @@ from tensorflow import keras from tensorflow.keras.regularizers import l2 import tensorflow_addons as tfa + # TensorFlow Addons (tfa) is used here because it provides support for Instance Normalization (IN) # as opposed to Batch Normalization (BN). This choice aligns with the findings from the referenced paper # (https://arxiv.org/abs/1802.10508v1), where IN is preferred over BN due to the potential destabilization diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/predict.py b/recognition/ImprovedUNet-ISIC2018-45293915/predict.py index ff18f4a06..60ebe8337 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/predict.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/predict.py @@ -10,7 +10,7 @@ from dataset import DataLoader BATCH_SIZE = 2 # set the batch_size -STEPS_PER_EPOCH_TEST = math.floor(519 / BATCH_SIZE) +STEPS_PER_EPOCH_TEST = math.floor(1000 / BATCH_SIZE) def save_prediction(original, probabilities, truth, dice_coeff, filename): diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/train.py b/recognition/ImprovedUNet-ISIC2018-45293915/train.py index e917d637f..d51b3f89d 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/train.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/train.py @@ -1,16 +1,11 @@ -import os -import tensorflow as tf from tensorflow import keras -import numpy as np -import matplotlib.pyplot as plt -from itertools import islice import math import time import modules as layers from dataset import DataLoader from utils import dice_coefficient, dice_loss, DiceCoefficientCallback, plot_accuracy_loss, save_dice_coefficient_plot -from visualise import validate_and_visualise_predictions +from validation import validate_and_visualise_predictions from predict import test_and_visualise_predictions # string modifier for saving output files based on time @@ -18,15 +13,14 @@ output_dir = "output" # Constants related to training -EPOCHS = 1 +EPOCHS = 5 LEARNING_RATE = 0.0005 BATCH_SIZE = 2 # set the batch_size IMAGE_HEIGHT = 512 # the height input images are scaled to IMAGE_WIDTH = 512 # the width input images are scaled to CHANNELS = 3 -STEPS_PER_EPOCH_TRAIN = math.floor(2076 / BATCH_SIZE) -STEPS_PER_EPOCH_TEST = math.floor(519 / BATCH_SIZE) - +STEPS_PER_EPOCH_TRAIN = math.floor(2594 / BATCH_SIZE) +STEPS_PER_EPOCH_TEST = math.floor(100 / BATCH_SIZE) def train_model_check_accuracy(training_data, validation_data): @@ -105,7 +99,7 @@ def main(): # print("\nVISUALISING PREDICTIONS") # validate_and_visualise_predictions(model, validation_data, output_dir, timestr, number_of_predictions) - + test_and_visualise_predictions(model, test_data, output_dir, timestr, number_of_predictions) print("COMPLETED") return 0 diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/visualise.py b/recognition/ImprovedUNet-ISIC2018-45293915/validation.py similarity index 100% rename from recognition/ImprovedUNet-ISIC2018-45293915/visualise.py rename to recognition/ImprovedUNet-ISIC2018-45293915/validation.py From 19018ae2a6a6a050893c18f6d35d16259ebee6ad Mon Sep 17 00:00:00 2001 From: riley-ball Date: Mon, 23 Oct 2023 14:03:37 +1000 Subject: [PATCH 37/45] added final metrics for test set --- recognition/ImprovedUNet-ISIC2018-45293915/README.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/README.md b/recognition/ImprovedUNet-ISIC2018-45293915/README.md index b048afbe8..22b573b2e 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/README.md +++ b/recognition/ImprovedUNet-ISIC2018-45293915/README.md @@ -65,6 +65,14 @@ To ensure the reproducibility of results: ![Dice Coefficient](assets/dice_coefficient.png) +## Final Metrics For Test Set + +``` +Test Accuracy: 0.8966387510299683 +Test Loss: 0.20560072362422943 +Test DSC: 0.8109999895095825 +``` + ## Data Pre-processing From 8eeaa15343fd56355d44c15a9247c30a71ecd710 Mon Sep 17 00:00:00 2001 From: riley-ball Date: Mon, 23 Oct 2023 14:06:51 +1000 Subject: [PATCH 38/45] small adjustments --- recognition/ImprovedUNet-ISIC2018-45293915/README.md | 2 +- recognition/ImprovedUNet-ISIC2018-45293915/predict.py | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/README.md b/recognition/ImprovedUNet-ISIC2018-45293915/README.md index 22b573b2e..b16573ae1 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/README.md +++ b/recognition/ImprovedUNet-ISIC2018-45293915/README.md @@ -70,7 +70,7 @@ To ensure the reproducibility of results: ``` Test Accuracy: 0.8966387510299683 Test Loss: 0.20560072362422943 -Test DSC: 0.8109999895095825 +Test Dice Coefficient: 0.8109999895095825 ``` diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/predict.py b/recognition/ImprovedUNet-ISIC2018-45293915/predict.py index 60ebe8337..52c08f5c8 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/predict.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/predict.py @@ -45,7 +45,7 @@ def test_and_visualise_predictions(model, test_data, output_dir, timestr, number model.evaluate(test_data, steps=STEPS_PER_EPOCH_TEST, verbose=2, use_multiprocessing=False) print("Test Accuracy: " + str(test_accuracy)) print("Test Loss: " + str(test_loss)) - print("Test DSC: " + str(test_dice) + "\n") + print("Test Dice Coefficient: " + str(test_dice) + "\n") test_range = np.arange(0, stop=number_of_predictions, step=1) @@ -114,7 +114,7 @@ def test_and_visualise_predictions(model, test_data, output_dir, timestr, number test_data = test_data.create_data_generators() - model_name = "WORK.keras" + model_name = "models/my_model.keras" output_dir = "output" timestr = time.strftime("%Y%m%d-%H%M%S") print("\nTESTING MODEL") From 7af67679d675015b8032545f8319d14ba7105000 Mon Sep 17 00:00:00 2001 From: riley-ball Date: Mon, 23 Oct 2023 14:12:07 +1000 Subject: [PATCH 39/45] last update --- .../ImprovedUNet-ISIC2018-45293915/README.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/README.md b/recognition/ImprovedUNet-ISIC2018-45293915/README.md index b16573ae1..1883d904a 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/README.md +++ b/recognition/ImprovedUNet-ISIC2018-45293915/README.md @@ -1,16 +1,16 @@ # Improved U-Net for ISIC 2018 Skin Lesion Segmentation -This repository contains the code for the Improved U-Net model for the ISIC 2018 Skin Lesion Segmentation challenge (https://challenge.isic-archive.com/data/#2018). The model was trained on the ISIC 2018 dataset, which contains 2594 dermoscopic images of skin lesions. The model was trained on a single NVIDIA Tesla T4 GPU with 16GB of VRAM. The model was trained for 100 epochs, with a batch size of 8. The model was trained using the Adam optimiser with a learning rate of 0.0001. The model achieved a dice coefficient of 0.85 on the test set. +This repository contains the code for the Improved U-Net model for the ISIC 2018 Skin Lesion Segmentation challenge (https://challenge.isic-archive.com/data/#2018). The model was trained on the ISIC 2018 dataset, which contains 2594 dermoscopic images of skin lesions. The model was trained on a single NVIDIA RTX 3080. The model was trained for 5 epochs, with a batch size of 2. The model was trained using the Adam optimiser with a learning rate of 0.0005. The model achieved a dice coefficient of 0.81 on the test set. ## Architecture Description -The Improved U-Net is a cutting-edge neural network architecture which can be tailored for biomedical image segmentation tasks. Originally inspired by the U-Net architecture, this version boasts enhancements that further optimize its accuracy and performance. The algorithm effectively addresses the problem of segmenting skin lesions from dermoscopic images, a crucial step in early skin cancer detection. +The Improved U-Net is a cutting-edge neural network architecture which can be tailored for biomedical image segmentation tasks. Originally inspired by the U-Net architecture, this version boasts enhancements that further optimise its accuracy and performance. The algorithm effectively addresses the problem of segmenting skin lesions from dermoscopic images, a crucial step in early skin cancer detection. ## How It Works ### Upsampling the Feature Maps: -- The first step in the localization module is to upsample the feature maps coming from the deeper layers (lower spatial resolution) to a higher spatial resolution. +- The first step in the localisation module is to upsample the feature maps coming from the deeper layers (lower spatial resolution) to a higher spatial resolution. - Instead of directly using a transposed convolution, the Improved U-Net often employs a simpler upscale mechanism. This could involve just doubling each pixel value or using a simple bilinear or nearest-neighbor interpolation. - After the upscale, a 2D convolution is applied. This helps in refining the upsampled feature maps and can reduce the number of feature channels (if required). @@ -82,9 +82,9 @@ For the image segmentation task, a series of data pre-processing steps were perf - **Color Mode:** The color mode for the input images was set to `image_mode`, which is typically 'rgb' for full-color images. -- **Resizing:** To ensure consistency, all input images were resized to a common dimension of `image_height` pixels in height and `image_width` pixels in width (e.g., 512x512 pixels). +- **Resising:** To ensure consistency, all input images were resised to a common dimension of `image_height` pixels in height and `image_width` pixels in width (e.g., 512x512 pixels). -- **Normalization:** Normalization was applied to the input images by rescaling their pixel values to have zero mean and unit variance. This was done using the formula `rescale=1.0 / 255`. +- **Normalisation:** Normalisation was applied to the input images by rescaling their pixel values to have zero mean and unit variance. This was done using the formula `rescale=1.0 / 255`. - **Data Augmentation:** Data augmentation techniques were employed to increase the diversity of the training dataset. Augmentation options included shear transformations with a range of `shear_range`, zooming transformations within `zoom_range`, horizontal flips (`horizontal_flip`), and vertical flips (`vertical_flip`). These augmentations help the model generalize better to different variations of the input data. @@ -94,9 +94,9 @@ For the image segmentation task, a series of data pre-processing steps were perf - **Color Mode:** The color mode for the ground truth masks was set to `mask_mode`, which is typically 'grayscale' for binary masks. -- **Resizing:** Similar to the input images, the ground truth masks were resized to the same dimensions of `image_height` pixels in height and `image_width` pixels in width (e.g., 512x512 pixels). +- **Resising:** Similar to the input images, the ground truth masks were resised to the same dimensions of `image_height` pixels in height and `image_width` pixels in width (e.g., 512x512 pixels). -Overall, these pre-processing steps ensured that both input images and ground truth masks were appropriately sized, normalized, and augmented for training and validation of the image segmentation model. +Overall, these pre-processing steps ensured that both input images and ground truth masks were appropriately sized, normalised, and augmented for training and validation of the image segmentation model. **References**: - https://arxiv.org/pdf/1802.10508v1.pdf From 0b955f7ec298c5e5bff6e0b669e2416723c1e184 Mon Sep 17 00:00:00 2001 From: riley-ball Date: Mon, 23 Oct 2023 14:13:55 +1000 Subject: [PATCH 40/45] added dataset folders to .gitignore for templating --- recognition/ImprovedUNet-ISIC2018-45293915/.gitignore | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/.gitignore b/recognition/ImprovedUNet-ISIC2018-45293915/.gitignore index 73362a238..3314f92d4 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/.gitignore +++ b/recognition/ImprovedUNet-ISIC2018-45293915/.gitignore @@ -160,7 +160,12 @@ cython_debug/ #.idea/ # datasets folder -/datasets +datasets/training_groundtruth/* +datasets/validation_groundtruth/* +datasets/test_groundtruth/* +datasets/training_input/* +datasets/validation_input/* +datasets/test_input/* # modelenv environment folder /modelenv @@ -169,4 +174,4 @@ cython_debug/ *.keras # Ignore anything inside output folder -/output/* \ No newline at end of file +output/* \ No newline at end of file From 52714cd1a55655ae35281be3824311c131ba2ea5 Mon Sep 17 00:00:00 2001 From: riley-ball Date: Mon, 23 Oct 2023 14:14:30 +1000 Subject: [PATCH 41/45] removed models from being uploaded --- recognition/ImprovedUNet-ISIC2018-45293915/.gitignore | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/.gitignore b/recognition/ImprovedUNet-ISIC2018-45293915/.gitignore index 3314f92d4..af1af698e 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/.gitignore +++ b/recognition/ImprovedUNet-ISIC2018-45293915/.gitignore @@ -174,4 +174,7 @@ datasets/test_input/* *.keras # Ignore anything inside output folder -output/* \ No newline at end of file +output/* + +# Ignore anything inside models folder +models/* \ No newline at end of file From 78cae6971c5d70c062878924731000d3241d470e Mon Sep 17 00:00:00 2001 From: riley-ball Date: Mon, 23 Oct 2023 14:16:13 +1000 Subject: [PATCH 42/45] modified to use .gitkeep --- .../ImprovedUNet-ISIC2018-45293915/.gitignore | 25 +++++++++++-------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/.gitignore b/recognition/ImprovedUNet-ISIC2018-45293915/.gitignore index af1af698e..58aa9b3a8 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/.gitignore +++ b/recognition/ImprovedUNet-ISIC2018-45293915/.gitignore @@ -159,22 +159,27 @@ cython_debug/ # option (not recommended) you can uncomment the following to ignore the entire idea folder. #.idea/ -# datasets folder +# Ignore everything in the specified folders datasets/training_groundtruth/* datasets/validation_groundtruth/* datasets/test_groundtruth/* datasets/training_input/* datasets/validation_input/* datasets/test_input/* - -# modelenv environment folder -/modelenv +/modelenv/* +output/* +models/* + +# But do not ignore the .gitkeep files +!datasets/training_groundtruth/.gitkeep +!datasets/validation_groundtruth/.gitkeep +!datasets/test_groundtruth/.gitkeep +!datasets/training_input/.gitkeep +!datasets/validation_input/.gitkeep +!datasets/test_input/.gitkeep +!/modelenv/.gitkeep +!output/.gitkeep +!models/.gitkeep # .keras files *.keras - -# Ignore anything inside output folder -output/* - -# Ignore anything inside models folder -models/* \ No newline at end of file From 7c2e561d746318750d9ff65ced6cef6e7af1b2f1 Mon Sep 17 00:00:00 2001 From: riley-ball Date: Mon, 23 Oct 2023 14:17:09 +1000 Subject: [PATCH 43/45] testing .gitkeep files --- .../datasets/test_groundtruth/.gitkeep | 0 .../ImprovedUNet-ISIC2018-45293915/datasets/test_input/.gitkeep | 0 .../datasets/training_groundtruth/.gitkeep | 0 3 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/datasets/test_groundtruth/.gitkeep create mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/datasets/test_input/.gitkeep create mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/datasets/training_groundtruth/.gitkeep diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/datasets/test_groundtruth/.gitkeep b/recognition/ImprovedUNet-ISIC2018-45293915/datasets/test_groundtruth/.gitkeep new file mode 100644 index 000000000..e69de29bb diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/datasets/test_input/.gitkeep b/recognition/ImprovedUNet-ISIC2018-45293915/datasets/test_input/.gitkeep new file mode 100644 index 000000000..e69de29bb diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/datasets/training_groundtruth/.gitkeep b/recognition/ImprovedUNet-ISIC2018-45293915/datasets/training_groundtruth/.gitkeep new file mode 100644 index 000000000..e69de29bb From 5c1b72cf3fedbff8e809c0f0d3fe53af43b1f135 Mon Sep 17 00:00:00 2001 From: riley-ball Date: Mon, 23 Oct 2023 14:17:47 +1000 Subject: [PATCH 44/45] .gitkeep working, added to the rest of the folders --- .../datasets/training_input/.gitkeep | 0 .../datasets/validation_groundtruth/.gitkeep | 0 .../datasets/validation_input/.gitkeep | 0 recognition/ImprovedUNet-ISIC2018-45293915/models/.gitkeep | 0 recognition/ImprovedUNet-ISIC2018-45293915/output/.gitkeep | 0 5 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/datasets/training_input/.gitkeep create mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/datasets/validation_groundtruth/.gitkeep create mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/datasets/validation_input/.gitkeep create mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/models/.gitkeep create mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/output/.gitkeep diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/datasets/training_input/.gitkeep b/recognition/ImprovedUNet-ISIC2018-45293915/datasets/training_input/.gitkeep new file mode 100644 index 000000000..e69de29bb diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/datasets/validation_groundtruth/.gitkeep b/recognition/ImprovedUNet-ISIC2018-45293915/datasets/validation_groundtruth/.gitkeep new file mode 100644 index 000000000..e69de29bb diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/datasets/validation_input/.gitkeep b/recognition/ImprovedUNet-ISIC2018-45293915/datasets/validation_input/.gitkeep new file mode 100644 index 000000000..e69de29bb diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/models/.gitkeep b/recognition/ImprovedUNet-ISIC2018-45293915/models/.gitkeep new file mode 100644 index 000000000..e69de29bb diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/output/.gitkeep b/recognition/ImprovedUNet-ISIC2018-45293915/output/.gitkeep new file mode 100644 index 000000000..e69de29bb From 17d26af19550b079fb2abd0b5beb328f9a7d9a40 Mon Sep 17 00:00:00 2001 From: riley-ball Date: Mon, 23 Oct 2023 14:48:34 +1000 Subject: [PATCH 45/45] final final updates --- .../ImprovedUNet-ISIC2018-45293915/README.md | 2 +- .../ImprovedUNet-ISIC2018-45293915/train.py | 111 +++++++++--------- 2 files changed, 59 insertions(+), 54 deletions(-) diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/README.md b/recognition/ImprovedUNet-ISIC2018-45293915/README.md index 1883d904a..bacf1f51d 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/README.md +++ b/recognition/ImprovedUNet-ISIC2018-45293915/README.md @@ -1,6 +1,6 @@ # Improved U-Net for ISIC 2018 Skin Lesion Segmentation -This repository contains the code for the Improved U-Net model for the ISIC 2018 Skin Lesion Segmentation challenge (https://challenge.isic-archive.com/data/#2018). The model was trained on the ISIC 2018 dataset, which contains 2594 dermoscopic images of skin lesions. The model was trained on a single NVIDIA RTX 3080. The model was trained for 5 epochs, with a batch size of 2. The model was trained using the Adam optimiser with a learning rate of 0.0005. The model achieved a dice coefficient of 0.81 on the test set. +This repository contains the code for the Improved U-Net model for the ISIC 2018 Skin Lesion Segmentation dataset (https://challenge.isic-archive.com/data/#2018). The model contained 2594 dermoscopic images of skin lesions and was trained on a single NVIDIA RTX 3080. The model was trained for 5 epochs, with a batch size of 2. The model was trained using the Adam optimiser with a learning rate of 0.0005. The model achieved a dice coefficient of 0.81 on the test set. ## Architecture Description diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/train.py b/recognition/ImprovedUNet-ISIC2018-45293915/train.py index d51b3f89d..d891766c2 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/train.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/train.py @@ -1,35 +1,44 @@ -from tensorflow import keras import math import time +from tensorflow import keras + import modules as layers from dataset import DataLoader -from utils import dice_coefficient, dice_loss, DiceCoefficientCallback, plot_accuracy_loss, save_dice_coefficient_plot +from utils import ( + dice_coefficient, + dice_loss, + DiceCoefficientCallback, + plot_accuracy_loss, + save_dice_coefficient_plot +) from validation import validate_and_visualise_predictions from predict import test_and_visualise_predictions -# string modifier for saving output files based on time -timestr = time.strftime("%Y%m%d-%H%M%S") -output_dir = "output" - -# Constants related to training +# Constants EPOCHS = 5 LEARNING_RATE = 0.0005 -BATCH_SIZE = 2 # set the batch_size -IMAGE_HEIGHT = 512 # the height input images are scaled to -IMAGE_WIDTH = 512 # the width input images are scaled to +BATCH_SIZE = 2 +IMAGE_HEIGHT = 512 +IMAGE_WIDTH = 512 CHANNELS = 3 STEPS_PER_EPOCH_TRAIN = math.floor(2594 / BATCH_SIZE) STEPS_PER_EPOCH_TEST = math.floor(100 / BATCH_SIZE) +# String modifier for saving output files based on time +timestr = time.strftime("%Y%m%d-%H%M%S") +output_dir = "output" + def train_model_check_accuracy(training_data, validation_data): model = layers.improved_unet(IMAGE_WIDTH, IMAGE_HEIGHT, CHANNELS) model.summary() - # Define the DiceCoefficientCallback + dice_coefficient_callback = DiceCoefficientCallback(validation_data, STEPS_PER_EPOCH_TEST) model.compile(optimizer=keras.optimizers.Adam(LEARNING_RATE), - loss=dice_loss, metrics=['accuracy', dice_coefficient]) + loss=dice_loss, + metrics=['accuracy', dice_coefficient]) + track = model.fit( training_data, steps_per_epoch=STEPS_PER_EPOCH_TRAIN, @@ -37,73 +46,69 @@ def train_model_check_accuracy(training_data, validation_data): shuffle=True, verbose=1, use_multiprocessing=False, - callbacks=[dice_coefficient_callback]) # Add the callback her - plot_accuracy_loss(track, output_dir, timestr) # Plot accuracy and loss curves + callbacks=[dice_coefficient_callback] + ) + + plot_accuracy_loss(track, output_dir, timestr) print("\nEvaluating validation images...") validation_loss, validation_accuracy, validation_dice = \ model.evaluate(validation_data, steps=STEPS_PER_EPOCH_TEST, verbose=2, use_multiprocessing=False) - print("Validation Accuracy: " + str(validation_accuracy)) - print("Validation Loss: " + str(validation_loss)) - print("Validation DSC: " + str(validation_dice) + "\n") + + print(f"Validation Accuracy: {validation_accuracy}") + print(f"Validation Loss: {validation_loss}") + print(f"Validation DSC: {validation_dice}\n") return model, track.history['dice_coefficient'] -# Run the test driver. def main(): - # Constants related to preprocessing - train_dir = "datasets/training_input" - train_groundtruth_dir = "datasets/training_groundtruth" - validation_dir = "datasets/validation_input" - validation_groundtruth_dir = "datasets/validation_groundtruth" - image_mode = "rgb" - mask_mode = "grayscale" - image_height = 512 - image_width = 512 - batch_size = 2 - seed = 45 - shear_range = 0.1 - zoom_range = 0.1 - horizontal_flip = True - vertical_flip = True - fill_mode = 'nearest' - number_of_predictions = 3 + preprocessing_params = { + "image_mode": "rgb", + "mask_mode": "grayscale", + "image_height": IMAGE_HEIGHT, + "image_width": IMAGE_WIDTH, + "batch_size": BATCH_SIZE, + "seed": 45, + "shear_range": 0.1, + "zoom_range": 0.1, + "horizontal_flip": True, + "vertical_flip": True, + "fill_mode": 'nearest' + } print("\nPREPROCESSING IMAGES") - # print number of images in each directory validation_data = DataLoader( - validation_dir, validation_groundtruth_dir, image_mode, mask_mode, image_height, image_width, batch_size, seed, - shear_range, zoom_range, horizontal_flip, vertical_flip, fill_mode) - validation_data = validation_data.create_data_generators() + "datasets/validation_input", + "datasets/validation_groundtruth", + **preprocessing_params + ).create_data_generators() + train_data = DataLoader( - train_dir, train_groundtruth_dir, image_mode, mask_mode, image_height, image_width, batch_size, seed, - shear_range, zoom_range, horizontal_flip, vertical_flip, fill_mode) - train_data = train_data.create_data_generators() + "datasets/training_input", + "datasets/training_groundtruth", + **preprocessing_params + ).create_data_generators() print("\nTRAINING MODEL") model, dice_history = train_model_check_accuracy(train_data, validation_data) - # Save Dice coefficient save_dice_coefficient_plot(dice_history, output_dir, timestr) - # Save the trained model to a file print("\nSAVING MODEL") keras.saving.save_model(model, f"models/my_model_{timestr}.keras", overwrite=True) - test_dir = "datasets/test_input" - test_groundtruth_dir = "datasets/test_groundtruth" test_data = DataLoader( - test_dir, test_groundtruth_dir, image_mode, mask_mode, image_height, image_width, batch_size, seed, - shear_range, zoom_range, horizontal_flip, vertical_flip, fill_mode) - test_data = test_data.create_data_generators() - - # print("\nVISUALISING PREDICTIONS") - # validate_and_visualise_predictions(model, validation_data, output_dir, timestr, number_of_predictions) + "datasets/test_input", + "datasets/test_groundtruth", + **preprocessing_params + ).create_data_generators() + number_of_predictions = 3 test_and_visualise_predictions(model, test_data, output_dir, timestr, number_of_predictions) + print("COMPLETED") return 0 if __name__ == "__main__": - main() \ No newline at end of file + main()

_{<(0hSYpv9MY=R3( zkaR#2Wnyc)FFlT{3{~^yb^M@r?|8hty%YAwa(Yx)qDIP{udQB@hFZMc%>YWWM(WoX zWT#k5OG}YrJgwh`Oz^ATLNrI}=(yp@P!ORM68rRqFhu^7%AM^^F7r9Mdi2`=Pxbx( z4HjTqm%k6!bW0_{q|sPp#|}Y4kc+a?X*-tAv`tGl^1tJk4{@en)KYYjK%XP?tzv#d zjjYIT0+DuZZPq%)XdfJ!pA7e)x3xh7osJ z{u^_@r0v|al*&SP7f(0;_74soMmPXqyv9|{AZ_RG!40lv5m})i$HOrcD`%wpj2qgM z&QhQl?1MAp6sxx-GO8x>@S?k0X$GzgAC|dL(iXeBAtF`gcvK! zn`ni?N^NiZnk2BH+PR(*t`{_D6aQ(tU1P zvxOV*1rxTgi%~Nr#=rWxlDeU+`aq~=Zm5*w2kzc*f&{;{{ztzS`_(%3&()q4+p&pK z)QS08$A{ck*be<{0(1>5lMZ#dOJ5)RXARqok2}>1Y>ekH19bCRK_-KA+lPn?A8Y&b z214bV-!2^^o7A>V(Dx+wPrU(i@Mjf_czI_k0j>GQpq^@9_42xQ_n_As9=SsH9br*n z-oIbBhMI=7H)~&{%HL3{39`qhR;YABR_Uu@_+<`Q=`fLsk^6aby$tR!GeKGZ`Pb ztmq=i8RgaMuoFoSL}fImn*?OpIKd#AGpoeh7A|Ri{O!hmSz{49cbjgHz2zg;u=4Rm zHy3`N-vt{rTtf<4QY5`UYnE)*?wH**WvdH#P^M0vx-+Amu$x$Cq|UJ*A|U)NLtRO| zP`z+Fa9&0*>WLC+aqEkQbk$z80Y=rKA(>a68eJC^X-SNKR8Z6L*|?1FPtmVU%Td>g zqs{H#!-@35>bbmJ{%TpblhV?vUa5OTJ=k(zzHq8ZM#lP0pzK#CX>(;Ng>0G6+}hK( zdf>Wld1AgJ@-j(llXe+$W&NsF%XhKllQ0~9e^z~%rCJ=O`ZNo#WFfV>V^x3k@`l<} z7T!l4x8IkF9c#RQhHV>mcYVZ~rrApqVPOe04WWssmK8bsbYaig&qm+SN{Cs~U z^@BT?)Ag6`tvP>~RZ57+Ce7BMx?SxhD7E{O>^wVrQ&$(UvF|z#1QeoDULGDf6%|6L zM1vu{Z5kM$Wc1r0h4keU9@i@seWP@mQ+g{CT{ni-VxPN}jUaLZQ)}J%?!wq59~?~=ptHa8~6a!SH0P<|6Iu8p~EOdZ4+zjNPtFkmn5O4 zHg$B2f%0eY#}8^PKBb>VK{VG3M!KVS6|21|Lv0R?MLe%iRF-&ft?XLiuHMrnWR#PO zR&?(gSJ;dqCnui(5DSf%4#@_5*A*4<&(MjPIK4bL@P+!N#vS74&f)erw{I%^1rn~M z6iW!DT5L*8Woe4EQV-jF>FVx@`C{*1yaq2D-=>d{ms$#{SB0=xfZ4M9Y|1Mt7Vexog#Qy-fGZ#EkhTcnfkm zLR?Xh(q2nfXS#4f-qBB4nP6mel*nOvYU%-?gv|W>#E`E)c>9+9-q%-=P%`Q5NI^VS z&gyyIlbv8OM>*L(Gc0z?x2)q7)?`LSu*G_y)^d5wxyR^3n@eOgMudjqU}9pDFfzsz z778Fk81L5C*CFY!$r{ep=DO%OMi&|y3OJCkLKKz8^y{20^qOlk!Qhsd{8Idh0xF>Ye&Fv!O0o_?QD6w&I?@l&`wtxC01BDpE#KM9Jh2(Xx zeq>^zAs9^^4-OBV5BJ_j*<mV-Il%B$$W>2<#nay zh6JnTgam7AM<;jlsSU*&J| zRe22x`;w4qG&Kp_Wf5{Y?Y!2*J8F?w=a@jun4g?a+Pil|_;zKBtLX|WTuPcsfhN1E z0tfZRM?4Hp-r_%`cbq=-SM~LOc{~{$5urldq=@A#S|&ZPv_97|EM~^!yYnn0rvJ;g z{CF}0^eAMLnoz~IC%@{MoIdyUyk)%Y_triI$IkFP-X=U!QV}Ua*3F+Dsu*V|#uqd- zcDx4r6jmK5DfLw&)!>*iHYw6q#3vg|%wD6F{`v+MYd`w1>3ZHhe7l)u)M{^@ZBpb_ z8aT~Z=EQfQ%7E5bRDanbv405MZxi}?vw-Hcg&(_>Ieo{~UZ;;UVU^1x_U@il*rhJA z!svFrcA-+p<>ckA^YYMwpZ)e7dOW$&m~ zTw0d=wKBfk^ZC??ZObW`QE?``ND9AtBYL;|7MpLoxwMbxmC;eYpfS|;LHAMhf`@+rZa0$9?>T~Pf1+&c}03hYkw zqi)mlP!gz-Pm!@Pad8pQi@VhWqz0t`>J8!d0muFufHEWYbPSb%Nj=uHo9H8l zCJ9D=|NcE)H*a!w_D$Is)XISC3YLFy?UD=!zmHajviRf_6q8wrM!6e8Hv!!E{pXK+ z7euRQ&N$du6-Dsk03tE?t~KE80K^IaK_JRAg){os`>fXJOP*+E|xw)HLT9|owRLZ1;gw8^p(*kHlhy5RT&J6uBhn=5sYHmyY?+qVC zlCiT~xkBr5e^ojfzt^3d3LETEoEzs%s4NDO&4I@muMClPffs(=D@HAH4;y)%kwHpL9m!`{$s`~^ z0u+KAAiMyCAt=uX73Jl-ckd!dFdlL11Dw;}DqJnGad0L9W%Qa$_7w11Gcn`Ik? z9P^J+G{P+Li$<>SZeNFGsJ5a-7HQw5|4dl^PYnBiPLKZY-%Te&;3HrZK#KyQ$jrfk z57bX?p*FOLP$0y~qj&Af`)EU;(=Xg+D8_hf5jH5UYAOVe^_u z{HXB}efRF&344qm7;BoDmWEu9VUSl;Y(J!LpTR$Msv!sqFSjIyf?L<*XM1d6Y3chy z^sER83vZr759lj6pbHBNKxjC*x_;MR1+X0`Ca$upZu2CnDH4(E(`|Y~d~9sETU%R| zEgc;l&xKH@5YoFedXZcAo%CDPWD+W>Th>*;sxkvyP==PxDO~5lKKAb2Q!xY7fP z(3|;uH6^8>sw$tX;aT9Y0L1dz9`(%gWz5n%m8EH|VvR2Qb<`sDhr&W>fVZZmr`?wz zOND<)>F5j=N?%^GmxU*9jiS~nQif;9))30I{MXLLMydXXyEwpceS_3(DCZRz3=K|3 zlcJZGSWiz6N~@t+{rEWJ70;DkBAc7a$`1_Qk59Tl{(W$?zlu^lwr_3F?Yd|V9F{w& z&Zo}KkeV7vAt50XOG|e5%kc2pM17J0f2yqE;{TM$|KGRN|AE@z|LGyMqZ``+HwS8y zC|)@f2o^eVx9pxR)L%a1)S8%_!~i@D=$$E`U*Bmopl71|IdzqcogEK&wGVC!n&7KU zA*+N#(ek6na&mF;&U-(=!Bf1ZPC@a*!pC<8B{Lz`OiWCu({7T1Tp}{=6my6mE&MVa zxYk?6R-}k@Mt429UZ7o@fHUYQF|KsuM9Z~TmtApZXJ0|TH#WW=x%6)( z1-#~VIqE*)yFg6>t_=*wQor>@8u*u0Ol)xClBD-WJpg^_-BxZ(5G3#bgAbNL6)Z2# zW$=FooY@Ry61R%(5vit1MJvUzF|)G+gQS53LUGplLgdDPe@~_oN)*0POMUD*_Z2W> z|9U(|-#|{SH@#yTsO;sFkax;|pZEK>u0uKlRNLBT?t+Q#>x}Zim8k#sGTi*dyEn871TKN}$C&RA&e+kM&OV*>9$mGPO{HmbBMnsrgFq4X*Hv5(mFWw# z;I~d)92LMsj0}TFZIL8Qv098Bi^shbsOet5c_j*w9#)@N;4h9j-XRoQ%PQW4ofHui zAz*z($sY#F3vDin2M-=N0ZLCW47NuDWW1wBj86Evjm9M@0>&~Q53_=NS0@ZiK!-ujE zS_{EV+`4_+bmntBg##;a7b`38^+!fV7_#TZnd30h1?yR_Avc*xuHcr(a=7cjQ$(j| z{F7kFHNpqk8YF_Kj3(v&EHy|>a(lKvb#-08ckj)ZCjUX+FPP@<$fRh z$6mtLMnd%tQ2w=i-NdCI5G(&W;lS8`0Gifryp|q3QK&+O%=XHtGe9-qA^tr>tCZp-223XHO$WWb1 zwjdLC29ndu%Zo}chy2AZk|ByQ+h5-@9=IHb5v{P83r|5q@vk|CqfyWCmaePEQD9#z zkP?}-Mm2zc7w|vW8M^YYvR4AZKgNCX5`+B`M%8$1CAv)tEuDizjZICl2?=2kC0H+C zriR@btZ;qnpl++FdG_b;eQH?e6(B({pT@;a&d*1HPy01q#|ZUGc1=dMt-WlZWi588 zD)t#3OuLalhU2G|Tm*yNgyJ<9*e(pe#cd9luV;b`Z;zpMR;Mc}yNf(_)(HWRr% zN3)*asWRH?0w;2Y+J@gEa{;lX4CoaCO`C72RpYsNpZi9R@qx5{Gec7kcGJ9vN+Ie( zqHSAD@ycoPS*tmw3U`^4eNs8sq){w178jr)YGB3Z>a z3T+sV^8>5&0^OSetG)Nm(4#jBG5sksSdMf#V!Sg9{7EML%PNh-_^&GxG_?o2*yJxW ze<;M@TgED_ZNGg7a-^tw0Zm$o!=Sa2z!5sJ5{f~Q(^fm*%h2U^oG2S4kb5Qyr%kVPcmO*Zip%ltfsZ8*mEin1X%DvjVq z0nLGT$t6X_L**DbZv&&dFhcMD^(zzj72b76lg@k6)_4ZHSc5_s-?Fp*x*0q+|4MRT z>=F`+Aii^Htf0^dsYOC8xu zIk`ojxFn@0Q#k?|vYAXB!wuH@ z6uT)x+g!-xn`M1dy0ivEp+EK$@4t@7B7IZDGxB@&MR`Hz41=nx>W9*$TitW=;8(eN zgshrHg_tS(XPg{Pn;Y?`WNkj~)q%(AqYaA<{pKS~t^27Z9M*CGZ-*B0RgN7&FeDS}oN1M7%r=L~l5?vTE}ma5XpOU#Em%){!} zC<66FnXY2px=AZW9rNn?oz3Yd-Bm%KAvK@bMbjMlZ?rBqTa&XjlXIuxq z)+GSX2TWvkfwyyMbD# zMl>~r0_eK_JtzW2JZ{-8;O8iA!(&`qJ+w+jMut-Tqf;|87Ai?MuT^2xr-cr+9q*Hi z?Zju!z}fH9P9D1%2l__P$}n^!@`o1{xt5f@6tO)A^^99bUtV>5Us|AI+N%Cg+tnJ3 zS3_JUhh4V+C{b^Pnz9br(DaG`06Y7%-rF}nM`D_ zC)G4#fh&NwVs36;|Mjctq6xSp}j)9 z%#)v>3elwAGd8eN{bYGu%>q4C6~#EW%Zf;gI-~gvGYL|3j5FZnr$0EF47U{MV7jZBo?wCQO6xtFiC3bfZ3W zJTo7@olPDV`$n1#E9HR1%N#$A6Z>u(B6{}3!{Q@Nir<+Nv92XxjKyH#{HU*-tY3a~ z;+Nshna??c!1b1?N~^x`7~1)D5p{I0*&dr_=4kxDGMhre!;2+Zm%^}iZ=d|+CKcS@ zeCbTo4+1a{2R6(PU0Cuse|HB?FazB-m4@`km40!bck65;$+#`z7NG)~OBtbt3{PuBhd2_vmk_J$I*$=FL`>Tk_pW}d)t8ul@dP9~xothc3@RrfGt|GEte+(sm|w*E=hP#az%W&qE#Vme4< z41i1ZM&tX{Z&F7Vd{4@adR$n2p`i>FgwC+AQgrD`~Ti|@T0uqV#4vluatvHyL1 zH=m+XXcu$2yw=H*b`xLyd0ujs$RXoN6eDXDkZsj^j@9)ZLxK?$Z@9Je1m*1l9cnnVhb!u@^3&)}r&Demu-?bdgToLD_u`agoyO^2aINCOq1lao_m zNr?zBTkAkS^_QF2Ogu2c_ExZE3^*2Y+G1DgU+c*czz=w*PMtzESyomYpjtnH z>l)EA9&o{lg1V!>$ruZvV!-1|p~?0y!Z=1Vh?lLHN_Z!Q9F0H{No({)LIMI=kV$>8 z>SjR#6*7XLVtI4(Wf%~hy0(m{CJXlrT?FW23hpfb7nWAu5Zli8%#I~xnhVmpjA<}@ z5`z0O7E|h?7peboIN~a!lm&Gx1F9k|Fsk9QOZ>NZq!QIg=;a~u?KSrkPs&?Y$lJ^L zPV5}{hari=Au%=8&Y}K3sNJZToq^jm{_J=@s-}PtvA*_tM(Zy5v74 zMl>YCW;9p+3){*)qRN+;ar5OR1l6d$lJcVg5@7!O+n9!}f5SzxnO(i`sfws??UFxn zLk1;`_T_yDGW-wWl*9t!_)iL?Z2)ebq^3G{>c{1{`e0L)V5oBh36Eo4t^JH<;sDM{ zvLe75M}xZEZJ`GT`W;Y~A0%&p@8Td3D5L?|Acfd1edQie| zR{|gt2`&iE)qzZ|Gqq;=YtrCY8wGe!G%tdV%vc;V1V*a z(Jj;CBt1T(hJ_`C;~#;$<&QsDiDB4!VlPVV^Y;}p>+dVjq#KXpZTS(l|E!O2gs_{5 z;te*plRH6!YP(l^O5$7&H~|MbCyP2X@WjedDJaqiQ42U>Ok6?K=OAUpu6{|lSi*&f;`zJC|jSS1* zrgHc}pzxPXR|kaf#%k$Zo52v0_Ag%mgXcom{x~1UKbhaz9Ugx`MJnpqlXc@Rw!9I`0S822 z{_5ZIGo3?92wa^UDOA(;QJm%{9WRKhZfp(_ zi;fpxuvqnwYjwDHwvgY#PzR1x+&%DzL)l>ChQ8sE2P{hG%<7Qcs@2+SRUXR|OG}TS zG0g-pqe?%}xf4?fnd5^tHPEc>G1}$>2e8r}P#098>U*?1C+4?zF@aYf7ra)+*fEf2 zs89l+mm_w`F8FLxUUOqu2Nn%|L!r$rKAhbm+jD-rHP))-5~`ral%O^TGn< z!`RpuO1?lJz{Z#*^mafuf!&w6K*5tF@jZRuFLKE4E-#1-Q$j`{#&)$!@is`u<^_Bb z&#xYCSEUzz%svX}L0KCBI*~y3RNu3}Dh@(77AiyD9uHtd+mxWG&29Pc-~d5Y$W3TJ z5NMcL&!5LeP|0k@5-$`Tz~i1YFjRt6d!giZh06t?_154D8L$zz>ii{v0dWE!D|XrX zt)1idH_`78LD0S4bA#Ws;Qupr>PT z>yPv=i6B9J2}9QliCf82im9(FJ-I~yMkaizN~ zJ^)}mcZwB7g>xFVbAE~-&{{CVM@?}q;i|R1e&VVQm4uf7JX9nUGfm&WlfiogfpssD zQ~qKN$h@F(3W7EYQ@}ydeUkz$wQ`x@!yEb&6*uc&G}P~o);|uwFg12TD@U^a`Njwp zHsM9hNODlSt^uDuF@Ag`y0^Vruzly&EfDq&23}|MBL|5NR3=oymv|Qt(Ox1%-3i#>19*oG&b^v@mBNGn~Aw=f2wY7R^MMSm2z{4QY(B;sbuP=(;6bQt;kD^%$Lt&U| z0cY$|F%N2PR#Dwu$YxZvGw6`;sHo$JrbR&iP!en^hlx^^V8|6rm{v{gKt&OKnC*I zGWrhS$cIC>$)+OlP5Of$R$J^o83H@qT+%Pr8z{F0`u7vgRd+}A*?-=PAE2G_f z3v;<+sTJ{;GH+GUtXOo1QtH{aPm0Qsk@gWJ32gamp8^4TR(KKF;Tv)KUl!JR?TE&e z%sD!<>AWf;A{KF)@HMX8HO0AAj7_HxcQeEusWNO}8vQtVL1+I<8_w;anXg&7+x(*Z zXSn*g$wC?B5yl>yaA+LFGAX#K7XC2FfD5mAR*ZkWK1R3>@I?B@>8S<g zx3Akzee!nr&YQstXzrp()Ji? znPi?WrNHE<){9288kRyYBh81AOHa&w4`+4vB>CeFRk`*nD=zT!Yh*yxD;NDzMc22Z zn8IYv^k7RKXFK?zQDB9Zd_CtW{%?-ysiN^hV=Z5s-?G2*Fbu;?MG!2s(sIC>9F4;P(rJCy@n4n_B zmZn`K+S;SB|9sj!JLO`n087Z0F_Wf1nfF9Ms6m}SJ@|!sNFdM_h6yMiQ4#}^CbT;m z^47b(*%~`QAEOzVxrN0fbha^ukU(p?EJP7DmFIzQn$ke`0X*4*sAD0Pr(p)^k{|TN zY3l4hQHtqqyJ-G!m%l$GQ+J`vU_3|WP`T=JQm!&UYS0r?jRoz#RNS{oSd&e38=>Y*VN zI$?sKTd|?-`jtev{jI+8s-Os(lpf=WTgm$GI=DLXZab=s8QSAx7T1XHCP}yU;YmK% zl*!t8d*9iFlh&Y7pzXf04E{SZN^VN+f4zUszh>RE2p+rC0dWQF)R$yD*8lvaGs@Y_yR{E(b}xcXY#B z-S!ZY#^*#pzKj#pq38z|cXKhV~s-xv=P7KMp%4vSzkNfd{iQCc%%mb`78|EbTnfBC zR!!AwUMeRatr~y->(A@zhsNJ)Qu1ot^$BLYU3ogNnXWOnsTbyC=Ud~Ye*QY11v&&x zb@jlE>oI6gccnWt#{H$jkS^JZefjbcR8nwSssHr%vBxECY#S9jjx)g72qTdlxbhp~ zd3}HXIo>-~RW=qv)ZQEOK@5`KCZHsSBYFW{14!!;X~>bgK^q6!gwqWT4Uoe51)pJ+ z>s93JEP0eW6{nuhc}glPSXI8E#f0N?AF)(?%^S|@<68L^j0K}n#@BrFRIZovK6c!- zNY$^h!Lz$jpDpk-CFM-X9U@Ut(V9(Ah={q)s+4R&)joe18;my)O0n5Dw!)7desdPULLp7kQfWXLiU7qtyOhmS`=5vgPQw=TdHz|DyH)eb9bg4PF$F4o% zh^9ep;GZZjxkt9Xt6gn@x@^6JzYfLa;%j5lQ%FI7zZgx;9M{zK1TLMs@|?6n@Jh)) zkdPTT4}1kfiGpN^7-U}Wgkbaq%+g3sP98(&u|&spCt5>^_b=!y(f$sU2iRO1KshO( zU=ReV#=*hC-l=pb5@I=p#G^vO!&!NGiNNJR)4C9VhaX($R7cbLA<=E0*}h_sz;hdp zG$tXmoH$-ZwYM-~f$^O;3RB)!=n`hZ$(a2=tBMmud)nkm@&Okho1aK0SSw;>u^9pw zfrEUgpq!6`<4O71+?)}E<&8rSJDt^o6=`MkLuT&a@Rb32yx87rgpf+_FE>>4qB8Ccr$8Jas{YfY8=*)+)(dfWp=(ar;1qnU zqxb24RqiL=n=DZf&oB@`6VAU!MLSW@vWes4vrk|w8p;0|^s!J;;M&>SGsk_hv9ANK zhDw`ZZUFZoCZksWU`%YA1{LK(BWZl;IE)QJTW&!x2Qg<7RmQzlw*C6t478IX&;mF1S~F+y!=340!)3(a z3c{cx1YQq_=yYc;p`ptxMiLhu@RI$I31q?UMwU0JeSF~q&h6b#=0YH498haeco-Qe z1K6>tt?g+T-VzcTidK(04whU2;Ubr%wDxHYKAN9m@Y~QB4Y>vG5S_HZHQK5zb+vwH zTDYXE;2ku&k_aUcLNs^DT3*~2w(I@xROFxn2iZ3P>L1WCJkWoF-V%nVY#Q9(r1psl z^hl@yhrO5pZP&eKEv;~Bf>Ki%VRsDjw@|kR&Ar`aj>hNN*rsL@javbO_y93i{C)Ag zD9PHh;2-<;2@MSmm$Do2il9bDHF+>y1D)a%4Z#6z>j!+3!of`WWPSC;N4WaMRzc_@ zKoHvk14`Bcj<*9&#{0lnn&9P|3xBYpu1eJxOV#z9VU&u32_chEOy?ITpHEGCM5e z&fE_2{onwaryqdMIAPz8Fm_7VuGsWE4A-$Kp@ER-y)-&9!c|?H^6HhHwogvqPb$BE zCYjpfsQ9Y0K@A=BQvj-+)zR?*kAzCU>|o>x8tj4oK+!Mg@y@xC_Y~TBAreGEq)!7R zi=tGxq^{{~pQM!50j&h2CeRfP8086$1%rVAvk7h}eY3Mm?dl8vYd=y>3LFj4z&W}; zoKn}~cKVHSCE*x&N7nglufRkNNx%ZbAXca~e$EyLl^4|Xc|P!1p6I}kSTutDJ&TBf`TLPQ*H^Vsu0BUaNB0iw3=X5=Ldi8wc*`A{d3|Vx2(NH4x6|9gCe_p)+U4yEQ=y3&=0~&u zxUvp-#A`s*bl}vcn%;a|zyt3NG8MR^=*|mHKYxmxUpt>|=2MNKNyQ1&XRxJ2+0)WNR%+$qPOH2 z#yNyQBtb_wwLrTInskL!R8+vDhG>VYUoeYth8DrQ;5ersJDY;`l)E6CM|=9=nU&n} z<3E4?d=?-cGW0*B8QLwH0iS9H^;!stEQ(-B93T9t+@j<+B8NWusm%dnN+>1Hfza(7 zL8$DnkqWKcYuV2}v~8yzA6&N^F1?8k%K;3D3^fN?zQji`ut6Ta(hE>L2+V5+i!5Wx z@Bew@@afAJnAR~<*YtueHRq7%E8ObWXq6u1^-2eDm%C61$g;&n0+f0i-*gBzxs@?B z$In0PS_esY+&nNZ z4dzL)!0eZB@ArdVt#s3H(%#uF&Cap`g3bgTMCY?By_Fp-c&nb#X_=d6f^5;V!XC05 zXfO=58m%n3Rbr!4Ghk@g$}kQf=Xq$K3;})(MuojrOO=`ez%u^Lj*Wnu9kL-srge1X z-KX`Wq45cb_i`Nxyy!)ooSjLb*!rHF9V)QgrG`Hp1Lx-Iwa*}GTBH6PLh^cL&k$0E z2(AIEwv$eOYvAc24*zQd^&(WBs<1UdM9t(2j8rWe6VZ+> zGUT{?;dSLEbo$&y$1^QGQ_hm>BZ=iS>%u4Pi-6=2S}?|@=I8OHeNLg12)q_^-lBc8 zVA|+lCC7b8@+XduR*%s?f{@b`UUd7{ul=?~AQ_eT-OdW=I*M?@$=x)92HZB7*np0{ z0iiVT1;4U~gV|n-HvrV(J_W;q8i1*A0@MOL9t{fqgY{w{5c5DdADWTDipDVDH78-( zO80466vl+`CEz?I_e#te6Rsu={SzBwW?Mf&y8F=fmlTf=t7-U}CM>>*`sMlF*>)_1c{ud%yZ1LDb&(J`cj zAqISu5Y(YPLPAoq1=wyKQzE1pIy9kAHaVFWiAeR|%jtg{7qN&3FH9pEmGZz-cI(gm z{F&(k$>zK5J5Ejl!1!VyaAd+DIRNOzy`RSE(4%cgl~sB*+2Zs@MH_3eBQNQb?f8ay33v<4+UfN?+&Kn+g%eE?ko7)c(4Lnv>L%B>(IB7p!L zPeI?>11RoNycao9R0qZ)p@iMywsd6nSI8wbqQO~^LG9$d1kuNNwv!qex?+gVv;t(h zsi_Hz_L7}6Kt2cperB-5mJ(Ij1GU=-lOEA2E8v;j_8&$?$r%|j9Q{c>o+ueG3I>HR zj21Bpz*CglRDf1DO-dQ)4uow5i-lQcZ0?+L=9psl&|LiAWbsqaNm+8;tM_imwVHt0 j|Ci+cUmjz*c#ILhaJf&stC=6BbRtUfs&emTO&F$Pi zp4a{Cdq4Zx-~PVm$NTF$j=c|VVO{H5>x?3c@!c7jEi>g>**b!~?e}XuHSVIg`8W+2FN8Uborq97% zeq?8N!6~Em$&rKS51)T2sn|vOfpC_PAX&Wa-Me?KpP5Z#aQl-Z@0S}T8jO&%y^FJn z7`Ul+MU#_qJfAkMQ*0u2{pX$fy_61(7rseM_sM!oY z{3t8aO;^s+tD_cc{_*N?TdWk_tCuf-Jx-4c4;Reowe;-98FvioWEponME_EoB6eqe zh8_x=)^rzoOEVwy;Rgk+A;w=~I-z?t;%`H!ktVj~^$` zo=wThV&mIgAHII=+I*)4!}aUSJp;Rn4h{~Evw3676=%$@v9l|9kkdBfIy4g-8>J<~ z_%+N57hc2j@hN)n+)z#v^x@w$crmcHyESM0^Ubk$o}QoDj1;EYlWk^j9Yza7<+IGk z-5b(R>3HRMV$uSc`VH-!={hSNCA$hUJvmDE@4w2(%)~vZI?kw?CHk}{yKQ@8sVz~7 zdCciL1A~H!O8kcpA6QkV-cc}EPsI2qL`UD_=(mq*Zf?FL#-Nna$}?9Ob>{`~L}mm3 z(yw%mr`^$}efbk3{#xx%bNWVmi_L%E^*+UN*OQX5`NMgk;2wCzKjxfIGP|g)gEKO2 z?ccZW8YgGxQ(V~iY{6Xn@sYNI&V5Z>!TOtSZ{0($Av77jU#o$CE2(B=&*QA4D4GhjUA|K~*308EV7i;c7mGPNHxnqyPju` zcWELvEZ<8d?a?!?wO%VpW#zAL-@Li$ujv@CQsTNpKjl0bAM15#X*9^JeXIAIRG4YL z-JEHXVxpM1_^rJ)w>|yEr6pr8wQQ4ss$aiu%E-uEVPk6zcH7;6PZV1e^Xt`~x>z+b z_53i?O)7QsJKi%o62-2?LUe4WJGCzb=!ZH~Y)@(J-J<2TzNwhl zwhYs7L#uc@ddxCo&xDTOx$|d5MPQ0XL11-twcKt<$BJ3h=0MkbS|0WKm5drD*27dx zY=(x0=-bCao$8mzo66Mff4^d1)z0aWgr!{9rld8KF_SkI%Gy_8$8kHT?q_9X5YKFG z*`JY-kPJm^ww&}_qgStWi=^ZHcaoJZ{jiDE9k&A|qPgZ8PJ+g1=c9e>hkR=x3FtA;jM8dBYCEN;8buU@~N z3^Y!OSL%b!7I)TZnuYB2t$V{2-YuhbLF_seq{+(ZcL!XzlC55w!j7Y6dHfPK2%E#= z6IkEl@bGQrR9Z=?CA+Fb#H5WOcKz{x{ygE^`12`$t>38)mcr#rmqdN@ttTR3#;Y6- z7U@*Jw`sSYO3pD_o$f-nGcB08t)QqlIh9({o}pW#uBYW=w?40}Vg7x8cY$5%Y~j*F z+|wRKn5U2{l7Z1XTWiMMS%yr*1CCRS6jW4Gu*Uq#A2+o~2_z?`^k;2jD_UytoF3UNKkoG zvx}p#fY|Z*>(_DFnqrqN>pq(ft{ik#eb1@cqBYH#&U7K>;`K{PEdBlfb_WLEKGFve`YwMi1amg+BPI^iD6l=P;~GF<(v=ZYGu`1q=W1{%00!V!-qY>% zg{vVeJpD@z0%n&2)&|^4G>6Y{6J4vip`P2QI}Izu`_fW_+ir{Q*51y*Ucj3-2drS~ z;Qh4Rc5IR}f57TDnKxl^ZxNxo*;sq;-o4lqH6nH>D>gCN|-v9;yn-$b7tT@#2)i+*p`f%HpDBpWEIJ(@L-F z)(n7x=Br`O7sOOE^}Mr9x+2e*=H7vvV%aXQs+u6dly^_dW#uysxk%A_hwF32TPZgv zJ+DZGst@BnF~+08f(7gF?(JKP4W~1=p1hg1EhyfcWbj{z684sT@W5+nYpI?`$~Vhp zYgM>SLtg%p*vf8!S={PO4+G4AuG(0A2uh!I0j!mIb*4GS{e=$s5NAWy4%CP6C^a=T zQFB|z)eK0gss>)TaN*&G*&%l)i-V^O^u)!*Ptwt8jZO7rKa~>{bcc|qIrf!NEnC!= zsd#-zRme2wJh5iRh&^5O%+QCpa2>=z;<$UezE zBHq+7By`TwPHVFYmX;Y`Zm2{Ok&qj-#>v#Pz{-`;*47T$yDha{KrpDXPcZy6KmeaZ zhYz>K%f+^IORYTUhOPD6QcDRZXYhzl#$UJ2&?nIwkg8}i$gwpM4@AC+RTMnvoeTypxI=J>p6xSDkX zg3(=JXLSsIf1$!nY(SVxa@61oC9`G{z1+7rSaQ^Sj@BW=!tZI~-QBUBl~lK6iw5rI?tQc!^#@XJyH!7Okqjn4)1f@`J_sO(j#0o`a)fWHD8K#SU^UyKc1~ z^;~jN((?ExZLIYt>AArdyK5zThArPD6OxkTA3l7KMg_tpJs`%Vu?B$&IRS2)$!G*q zTQ85{CEtAV) z)m3U<`!r4Gg>r76V<%2TL2T1PkOWri@ZzNp3W5wgn&a|#M7mDpbuKOy*jH^-TFw!1 zao1dyn?y`Ewu;6hJt3EKOaOFlgwbGgUN`5WA$QqX>BvWaTI;jx*eoVFYcB{d+L7wE zW87z1!zeBxA!le9-=3@%>##IB0dY`KU0wZ!QT(n`0p!`wA3sKvmJ0gEC>SOFuB3Bo z1tfmNWucs^{_3+Q`ubB4aT{SqR$#%4`NDSimi@G6vR%!rjpzt(IDD`!kiBL@h2tke z;t0fV4%6+$b#``AXNCi$dWLeTWC%Cf-A!rQWhZH9k|0zW%=YFv?rw}t6`35xIOg>Z z-*SH)uNfM(S!09?{Q2`9tM$0_()LnA5G+#axp?DvADH+6NT$?5b$X8naV+5+1=9MR@=VfTF%=Y9oY{Pos2;s52eg6FUD>rV` zM#sbiTn)AVagvfU-wVB{WJijIB&2;YQPGlwSWzyB$X>$8hV4zV7 ztiw+M0TZ%04|PsM*$|(U#D-$j1Qadls>$DA+V!B&xWd3t!}TruRk)|8XC1_z2eA)B zP%gHxu+VD^zcUIUsDPfCnWG|?X`jmlF}=kIN(?TkGIdB_aOTL4D!W{3={ZZ+`H*uy5W>cF!cu zQnLhe02ELNNJH+EYzXD63)@}3nrSvr>=;6YtqrP_;;U6Bi~z&7NePZ(SZTx2|F3^Y z5pt1{dk8^Hl6&&x$&1jAgBVs=c`9mX=rKwl1O&TWRKgf98M;7R{9R5Be1~_M)0!#H zu%)6$*M2|2Jlj2CVey1bl9Ln^BO^u_Cg=kHMSuBn`G!+3-7!o`XhnAbmOJ4&3@U~& zvw_8i!vp9^z5XxN)z1qx;CAy;6{jft6(*&{@)pHw{M2Mqgf5S8%gcTfih&=hDOzjd zvcf+1%>28j(V)2Z(9q{FtSP(mu(XbR{=$&6>@Prfon9%g&!Tw;XLec`TgK26$H_Uw zL|xCNrJ5xF?8lJvCs%+D{?otbjI-BG<8W1B<+fYB-*OKmJ}yf(I;|~NW1iS7tHW!q zcn%}P21TaHqqfURYO6=Sd|{YV&gJ26rRApFeCMNhd;L^@ zH~uIToi!p`E)5uZf|!T(n>t>HeB|Z(SjUb}R@?kKJ?eVUX2YXK_d(hFW2YX)A2RuE zF zOs+7^o{V7PW>Y30*q1;05@x~OgEl#hhp1;Ef@!W(w_{RT$t6`oWu)rNMWYjjhq-OL zaC&i`eDK3@mFdb2l`vs~newWN@kHgi_0s-!y_Y+Chwp0GbQ+I8wI-mXzul{V<6{nMUK>t@_XqWM6ZJwoaqB^wQ2W>?d zrn`ORBE2h_`V>8ipO@j7!amj0 zP1RLpzF8XiKKX}FP*dU|m*fj3H$D;u-+`wPEb>$0&KeO+zpX%0q@$7R5Ho^%Z+46_ z$+VI~_tO1|q?ZRml?m7g(4}M~o;ATCIc=;?YDfIyGQOx3VVl$uR+Z==C2%X!0+?9@#` zD1$qm?>~&72D@Vz)_9WQY>K&xk?!#B;~hV_q>SpoOh@0=+qY{SCbEqmx5f0{W{Eg7 z7?AC*Ww=OilY>Lawm{?H!GlaaCypP_0wkt7U{yxOaSi?eG)9US3jniL4ZA*6J)|{l z`9%Za_4)J8;$FDtyLZ%1s#xPWTaTuCp%^BKWRq&9_WtJ=aqo|05+_JJ{*(SeiDEtf zlJNCgm)1#@$iwN4775Z=Q0)Pwob2A*-i|;_Y^*WBxO^zt*q~_T+nz7;?w@Ooms{!7 z@ySb<#p2@E4PM>WrK0QjDw7nJ;b{~7Lvw2V4`l>9rOZQbG9ASuf+2yzQzl8!=u8Ur#WK2j;qu0&CRlX7L~M);}IUzI4Q9}fO}USd>z~_ zhAE?`r}yS#$6V|2(WdkC;%!`@JdV&Q3c61XzaS(^{BrGP1)EWrFA#=LG8ah2 zF)}4p#fjjy9%~bV5y>r2c~#A=B+bY2Z)&_WA;RE%4lA9@bi{hYt4IXJ0&i+R2XGtZ zy0d9m>P~>xJYYn2+i7L7<~ojnBp_iBV)M1$81bJ1&PV~uy%2wQI@fh=4cCp4`g8UP zE`)+Qr*yKe?!C!8ALYn065`;Y&=YvLy%Y=ieDwFCa+c{^nRf?sLN|s8*2%&SxT8Ys z`wNnlUl)C@@$jg*Y%VteeHht*!I8Cwt9noyiKJ_@53$OLJ=L{ZVOW3%W!TpF7cvQgcw zB0XhgPDFGAZrvM0AEovVA8EO70VGoO|_=|G!@d{dQxy?6nfXs0%Huu`k}79O3~FPx-EsC6SWpd9*&7oteanv ze5>uvhq*#BF1^}GD;$*R`5DJ5#o$vnKU0;u@hfXxv?pC6FI`;1TV^f#8n-3E;68W` zNm((K7{$42JI#8HqC~;Vx+#ZmkSIqpy_K2tSGAebgs1NQ`O=b$3VR5;K_b+Rtzv^vc7SBGqLJBCMBE!8gp?njAxnb z`}XQ?a#9fqrcX$4wA7GGRU4-NRegQ00?(37TvlO4F1f|;dYd&gCmy*6_M5}I6+Xuf zgx?{j^yi{d(cG{KZJ%S5&FfpSOkuw!SmYb^xt&Sa@M)snx~gzzp*#yVcn@CC#*))3 zo8}sqEj@>n3eOU5sqr`U@X&>%N{xE&wyr7}z(#QA!0WIEW6MT9t7aAms++{4VS*yjs0 z+pnlrES&2+Mp!4`)O0AhUm-jxEHN~sK+oKr&O*-HB{E;!j+yf7|3!c#NYRY~QQ_XG5Wj9jq{8T_$ zRY(1Sa++0Nk?YLkR#q<6^WV{QbFvej8`K4yw5e_PEW>t$VXAYa_jwrwdxeb&MT%>@ zf;Y7xTz{S^7`Fz6&RuL@eHzhy5jT~0y86Yiqv8$~80WlZgb9~ZrBQnqV>DCr)jZMv zIx)t^0nhvb0DqX}yTs50i)jm^f~EJZr#h}Tk2)s^qm7;Q{tNpXbl*^b>AZslPxAuP zp9Hl}UzfH}sS}B}5ql$FVq0<}yZ6c!znVOdAwhY}4d~NeuH4%lbgmZ8WtVp8so)F? z>B)Ht+i3n8JLbLyJD)=>W5a!w;;e#a+M}JZc553+{J4C31t0HH8<_LGq+#{&Oh^dL z3@Xp!-Wnb(^v zg;pKL4Dt`SyPuh^=SfPclG1QTo##`g6NhENnd@v=6J<-~a&UbE%Guwa1W zoRSo_9=ipWK9?qlzqk@$>rjW82l5YmhZ?AP?%HOp1t1Ip=PO@-ndPG&C~7^9AqmjDm3~%wp4EvT7<96xU+%U}f zPzlamxbvf0!dy13Z@DZ5)E@Jffek&@&!4?q^D0CwUXrwq4#Ngu{ZNk^ywb2zI%~Wu zDz#$C4mA@E!BK;7DYsh1-QR~U3%?qVWJ)g7AO}?s#)NvjZa7fjxxp@!f9JwBXV_gf ztwDT!2rP%VlvD>$Hd8cCz}kU=+q#}Volz64W12Veg*x>J9sl-&;6u)>?L_6O#TTUr zC@1m>@DD5ZA?I*hDwox$!H<^*1G%ieHMg{|Kka4%706&|wC0!^3!m<_yO}MDiQY81Pdj^`!o|NFi=|EMbYK1+4%Lev5;g{|;c~irqFA zM^sB(ix2_oKU3y$q(ebTBL>KPV_;#BxW*1TE1+rlXV0FougWPZegjZDwgx<+H}A#u z$jPg2>Ky|2pAk^vSJd#vJ&acaJt9Jo1VqHSCMCeZ2D{C6WyU(LOvV6AIm?wAyWqiku4XGqC`iy=i$AeXW=3IEe-GofC+>)Q{{qDSQ*UP zsO9@laMSxdz)e{}cjM4L(C&&iM$bSEr_a7hb?Q_cY@JD9qr@dOy#~R#{!!gg|AnWv@ zi+OuTFlXA55|{DgHwVeu>gdWGFCB%QT1QN9G)~A+C8l4iNXgf_?5~@Wz%R>01g7Nx zJISiOHk7XX66;C?92mfe)`J1PS?+jJ8Ygtjq)qm9gUbp9*ivewFJ{)zB@nFrkGonDDtUtZ`= z81-qI;N2j?8n=&Ozt{S;a3UfMG?TtZn-LKlb$yDmJePFj zhe6DHI%s;v62mwzqN`wBl$K4C$EDHC?gAVw`K+ayBGo?Q{}Zj;T}X;0E3*lF5c=bs zWc?g--mc;^56eEm^~*Y5{i+Yq8wfbuz;pJCNLZ(ODwVW4Td9mcL4|%RYk$L_0?e>j8 zu*n!1C8*|%hBDZDun3zm4=~0jz%yZPe^xR3@B67leZk)l;pca9|Gq{8uWvdN*+Sir z;edNc8L!(r26^~u4oRsI=we{sLE3@MU?~CU6#gAZY?Gp;j%x|3aWmXKkmE2N1_Lb_ zSm{dS3K9p1R#`~h1a>&1KCt}pd2Gn5hLOHSUjTCA;36|t>fY**sV*g=iMExIKBG$ zZ8z+eF}*#Q=QH1GR zBRPvS!PZQDsr@7c{7-+sV@R2Ajd(_#5Vmd6##MDF6F;_QlsaAuKi^AbZ+n(M{@7=_ z_EWnd4yN&;Qib z!pt`2s{1l{ynrb_;D%wpUaVnf=f<0&^oMQ=lG#>TNbQEBnGrin>JFR>=vgwL#DZK5 zsdv^4a6oc0)&^-zQ}34bs^H?_jKe-g z3*U%*qnps~#IE`JmwQ(*vr!;+K65sV3lqbu6ooZ4I; z_CX)=&3dv#FvGx`@HOobnE+1{+HQ@}_9n#hkTqJt>=NA|u&4g}_ix8PA4Re(hJ}%+ zhBWqA^24H=F&o2^R^12%mLBBYe2|2+d$4~j{yFbXy-I-qaAKf9${4Icj6L|{tMF&6 z697p^ZZ@ZK|4abB6p#Ks4Y!{z1rW2d+#&^rGdXYp+@O>Q(OFtt>~$~@^p!WXqv_cG zIEf$8z+RvToMyT13k!4aIcH!8?0*bNlK9EVfBW)VQFmE%9>p3qF;g;k^~5qs+F2x4cc6+VKz1?fk|4ax*8_x>%|ht>yUvmFE}I&KqCrd(Rp3ZJ#{0e z<2~zeolYHH$FlK7wWDaKv{vY>VN4KTfaEmvo(XeV4M0jNySKWgC~%2Cs`FI zUgWf<2s$!34X5zY}`FPJM2gF6Rz`2P1;@uoh;R$&0vo=sqq zA{kN(Ws4kFnjy5NfEGRh5~hK<%Y3n&;A=nOGmr7yIYFVq%I*iQF5H0(ltlqEj@4k*npBxEL| z0Xzl3I(9gP8E{{pCf~6eIV*;CfxFy-GUoOEeLKR5CIk64iL5W%kVgf)BFB%bn@viI zib~tsuF?;b0P~6lFsIKp$VzQxi#nqL@FN8UMV@nn;kvWXd*Bl2nSOkW=re@WI{1Wl z^U??8xdZTNW!eKb#uLW)Sfp*d0t-G)zaiA-wpVKh@SYU3v@_e{Vqz9@uQ)aSSq710 z6kdjnI-EY>Cnd0x1=dOA_`{hEAY+hHj%i08?fPO(_ix+@RtH&G1y(UVy>GL{TeF{v z?LajK_hpMWNB?+65zMUkg9q~PR}kJWib0TR1|>e#Vz{C$pE;=RN>E+<;O1`?Gv?Go zLt`Or;`Hg-_=5CXLsSD{w(syIa0@CskI`@u7nUn+`Jxtpvr6C0*>V+;Q6aI&J za%6)}A*cmc5to9g2W*j|5Vfn0E6B^|TCKUusl;e3Wk4eRD?-jQnilQj1(8C-y6OI8 zdvegF31oyzQZ!E1p<>pYt`{n6xS<}FT-a=R`M$^BwK0ErGQqsS-iD8+(+oQpcO|u4 zH)4>jBJCzq-S?gT?c&MBIVjH$4WS~E?Ts4IBQX0S2aH&A^=F2aoRS?$Fu9tKoyVT? zNhgi)ES?lZ>C$_sJ^m9|?DS8(DSr%+m>?D^T-EiB|5o9ypY>sX<_xSk+q2S{_llhW z9{{KNs?(b(X}z#ylVVxB26D6j}Gb#9(U;0=tj5m1dk?JrdM{P}Yz_sQ*h zE7JoXOc%u899lpe!a9@B{?dyg@6j$*fJz&UghoMvtHS_z4jjQg3z?ZsPNW*}*dQ8^ z;InZ3+Y?tO!OPbOj)RlO7i&!Fz@yBjUr!@NOIg=iX}kskN{sAdAsfwDPCTTSvYO&^ zuiP4ZaRgnpGpST!sd6Gs#OG{x_S2wPa!6Do+0X(or-D&WR?9)gs+Lebr&jQiiZw&*{_N`;30~=YU@BW~jc9sM=wPzSJUo35 z=auG=M~z{DM-VavIE2i7-9=70ipi=m;3P2wPYc-eijdzF&DuREEk{%1p^(K>cm|sA z-s|9HgHl`fowv7*sWH^tq2OO8JImWC=W(BP;a|$c>G%OKPE6LpD?^bF22}QJe?Pxp zMmWdGGy`I&97lc55NGNBHpj5uS{;IUu+igYbBD>1srXjKuTxRFHD4xxj%fzt`S19$ z$kWONvC;yw48A~!D}@Q6{WUw9j;;SV%p3=nGHOoqaHx1r9zPxls!<~7y2vbqrk$uQ z)6G9LB<`!Zo+klj&H-=V8F~M(%ldB*NZpB6r@w;F9&qQwQ0_~C&myBJ0{6=J5gCa` zrBd^v*bS)M@7;R|0w@gcRsC@*P8w9q%gg&+g_#~KYjXlUFa>ER156cokZ>b!=lDEw z*n?m;0pOcmlgIMU8)V-?PS-vdtVdoJDLW$QEkcJ^F-~wkgGtd%R#{ouy94s-3b@)- zkmI-Dh^OA8m07~4)l6T!(YocWo*^)YC7wV3pVd;d` zHZ&-K|0g6>NnZY%fWSbX$15KOUfBqr4n=l1ufJF^d*2?SM?iCAS&me5YiZ?K#>mP| z%)U%qQ zSDY%sZ7VN{a3gqVAK2snEP&G@l7D+%2pNg<7b?ymMop~wn`F>380xQIzI^}0)rZz= z+P}+yiJyuMKK_cB#OTSu6FfT399zXsojx6JR561CDDS~*TR4NJyQp&_6#5JR z3g@HmZIdWb@8=PdIgfu%LsUz()_b#5*VTPy5e5WmWb3~Q?%k6BBYyn2OPOODz1?gX zBULBw5F zCu1dpt5=SO7vtjr4-f-^b9R3Wx4z51QX#T|iu|u@?qDxF3gvYZZRSb+BKUTVYqt6hh-QU43j<#v1qohU<$$KbQeG$lYkZ=3|?W%iGC2aW1qC~0zoF;e8P~To=SKg`Nw%gwwFq-v$9ee|=imMOHOV#25v;d19YB42aav zo6umiyfGGrssjXnZkzVT!Ilz*P`1*l-Sm=+M%avQ?GNmeLE5t#B=dz!^(~S2J*|OG zpyhW~9&ldr1_0L{=YraQX1Z~5qM~nrvc@@YEPi^=4BW%|!tiH5ze_=N-@sFC{Qdd< z`VKmmWf_$ll>VvU8@ZiuyR{*w#}dadmv%wuxwQi`{_!Y%Gzc}*AHM>J2HZ^}8=S*y z&=VsM9Ve4T|8MlTPby0>5Yq7Y3eL`j;Bb!xDSf6lPY&UU(;ZPFM_eF`)z7_nZXh}z zjX2>p4wZ=ZQaLYTh#W)dr%M-xA-m4@v1iZq6(|i?`T+C>pNUEz*wv|dY?Hw1of5#R z4-or7re0lw%{I9D{rvr7kMOSxz92cG2>ad|2%0!p1x&-wpFj759)xYEM2)32;z~fA zTIqUC^LH>bTU5q+AwPn@HJG{wz+ocUncJ;S0{>+b!M7#-i%q09Oh5}9-mPd!BKI9k0?RDyb2b_J0z$IB{9VGhf=H7Cf){9$Hez1OsIpyW_t`H9 z6B8T^U%oasFc2=0oR^oE(K911Dr(*p3STfiJ*_&B2}}m8C@G*f4pZJ}L>Sv`dzj8~ zd!aH!2k8?|t0sV#rI8f~>M`qnhq3tF+}wKAZx2Hfpe`Fz0!FE*p)9P6wvul{2g8T5 zAlPYOMrAW>z65S&?i|!U@STKi*`6w`?6)+`9coMhD$fwi?8w-`W;Oa??CY_M!sCDr zlMzAhy~`w{%VZ^mRw1~KZtN1nrLQQf6rwy`RaK>0V4EBY z#XJ&Pz*T~BC^$9qi8Z)!s>#R}47HP05WF$`Bqpa(o^m2SayAKINcC@X&K$&Iz}O|Q zZ;QzS(+0NRZ_$_Z;(F-|=Hn>MxX+1E*L6c6Vmo+NW9<^`V7p$6O2avQkdC0iz-x15 zDi(wdRFhu^Ap&~qE{lPgDbx4UCuFb|YtFS8UIru7B*3#4zO~*cSV7~!S+o|d^-uMV zL1UQ+GMm6)wSnyy-!nu^JPAD>0yB;ao?HwGfda%?o(i${c>H__3aqh)uvC~L=$li< z`@B0DQgS2vw`jpR4legNk+Tl>y1Ke1TVj2nTpBka?ZO%R6B4=x)IJasYXXCM0!+{v zG&lLfBieu)YXU6knO3!c#;n0$J=GW?1YHrI>-pBy;ZYx;G&HCZ#RN{JU!<30R;{>b(e={e$W9$`bH#dKj|JWb?{Abr+VAA1)skgklnJp&HIMT zIoV(jz_2-OLM(;$%+_KTCk?AQcH~oflCI2aq0DxEE~%5z<0G-HLHzsV3wRBY^L>v# zG#up*y<@NjGm|083rKx}`T!)JNuZmW%v_hw*wG!Ad=S%j2cC%D455K$xZsHQmB&B@R?}ZcCf8ezt;Nb55cSXIG+@Ob{UNo?_@#gt zVx8H6^eKX7Jm9kfKjeH-s@v6QN%c;;)2nv~6OX-d(QoY=N|T`4JZNnn+&^)z7xvyc1}hfONo`fY@tJGq8%0+R2UW}2sd!p>TG7F zvVE&$=_!p=K5X&@_C}Z?G0XUGUE96k92VI`nbM%BX_)65DP*nfuZV{~ttSYMdfPfL ziQt*Sby8R3D4FcD*P7O#ItF_&_=mveE%wy0pT^OHcc9A4@&xIuVsa^~OlLCpIecCV-iSD3#M zl}w0-eEP>Q8D?YzUP&R`zhBwdQ!hexMWv(MiYAO%=_3&&&g3Atu>?M z@w7+yRmKa#S}dsSoAys_mPn8?7@l_l`!TVj-~@_(M9SNb;AlIH(j>BE0gkuvbpM(Nj*G@@kaWnk2O9E)H`3m z>Y-Qa#FYn)f2uw~7u$8@8Aimj`JiC(a7|4OJ2aM{GAoe7EEIL(_-nbUK&JHW*SGS= zv1$p7_+4Y;l)kuiC2SJ}(^7pEFP4g)`@!Olj`^tIgMJ(tUue|!gR&f&w?v@aNn&vw ztqpJ-4bTUx>y`Z^9sR!=8~=x6SN>u{is9Fr`riF&MM@p3#!<1U6Ek><)z!%_o+qCa<#WT;CTjL+1NB>}&kE>^2y>tnTmj&%>CQyff)bgp%6j^-n1qtL@ zkF##u3&L}9zW)t1RU3wCw9L;Y6#WnVv$PD%u_mP830PmZM|uz-i5BQjS#A_MVhBSK ziyIL8bR|A5t#Jbf-5(qZ(|ih2yPfp-(7JseJSLoy zQnIqX&tJTN_S*4Ypiwz=_4N}A3kzko5P%0Z*OpqpW!bspqEye3FV}0S;~2KG@OtbZ zslg)aKaI22rclu%11*f1u}cFq$N^MR*E}Ng ztqyQChYqY?uK5-nJr1pcZGb495Fri=6SysC2kJDxUxt`paD{|Z&t z`QUrMW%9Ib&Od!ppxtyAM8_ki~-% z4u-pc-Inv@pp||o6QKH9?Q_!$G#~Sa2_Lbpw5N~lYT_Y~b1l3T)uk7D26p}0E*mX( z#F|%j^0p6SnEEj+D1wW@w&v7C??VeCDymr&N(4^`VJ3PYKh>$^sU1fT7;Xy>bHz&M zpW@L8Jn}Pme!#u1HmEXm+u~`-?L*{$hWCT2`SEDr#}E(km6b2*DmU<%t<@Xr^a4BF zWPizjv%?_^>LXSe&56dsqy&sJ5Iwv3arma8OtP+OMtY^YevH6c zV`T9|V!a^WQOuKuoWR}Sq4m=j&=$Pe`P0(><;{DPpw32zXyX~?*;iW zJ4Bvft#ky9A_$WI)5nE5!yY0*EfEx8QiZMC~koZZGh4JHU2S9@#AfLvUR3_hooUjZ6!%ugMjtdf@WKn$AbA?^5JZj z*bg6$qW%bQv)Q~4;d9D{MwS{S(Kl1R^w8EK;mrchwzXwLwrb=?vQUZX#*wzbI>yUL z^V)a%nZk=9!bcrEam4_BBA+27J+Na%K#9)4&tKfWb`LsdA-~kmF@6b@JOQ`sKnQrd zU(YzuUonw+Pg5YA5iQQato2&bLEsP)q5D|_I9~eVa5_9PXX;>ySA&~wqW z0bGN$j#r(Y)#(!_P7GJI82Et&3S8ZHRfveJB~{Php##|9_LYJV0`w^ASgwBx=O!Rm z;1?zh)v+xoWBmdH6Tq^ffoP|NN;+dNm4EXDCRn+_$DvZQ+~7Wu;O|<+$s@yfF>sXh zGVD%T{$rSxm6dKzk8$lFtk9i{3<@Y0 z4eYLRAPoY^6VtX%$y>qPHVL4kg=o>!hibixiB6KGQ{-?X#ft~Q{9$<{X%SG7$H74k z+$D5yM_`4&x$R781>VwqcWDCJk*$jR!GnUb1V{s|Ak-4(6pr8d`SYja%ta`jK~-&o z>^nu%5+OtaM1LC>96v&T{d)CCO-sLOv7Bt%wANEexD7@I{>w%q98~v`Pz%;S1wIje zGG#hng}!Xy8MvXNyp0P^hv9?P_(rkHU@_yhlLkBe7gSylTCZ@SeTuEkzy04P-CgKs zP6YcXD`HZi7rPlTC#X`*?lJu&-*#@Xl<0^7s2QjT{u~exk4yj|+%~e{R8Xp4xM#+c z2tj&z`X02|{Z%0_Igg$#m5CCb0EmD*At2=^^Sf*s{QmK(zTyKgSoG%x{dt4J!cx%+ z1?m7=^<_X1LV6NnRD6*l{{L(nlzhxs`nUElt`*~mq?*QHWjvT%htB)|G6FTutPvHb zFYEJd|MuZ#;J+KTv+F#&2L?<@-i@surS;m&kKCX$1s|$~@GN|3(E)eK#>u|@VAH>$ zCheXwDS={vIWys-6Y@K~1OFX)2c8KtBwV;!Lf5U5toG7K6nT^hA^V<(Yf)f3@!EFP z_B7;)fT80zAu@-7We}>i(}d^#ul(cSqAfu&oUenF`9(|EL*c~FVx4CvhuK>J+rAUA4mMo=bdGZz$NHow?40fSpXb{es zEubIVcGj{I5UFoiV_&oSvrXOb-#d{VIA~biW6y(i1N=z~<1Eld9yoHumi-@B|Mk&S zi*1|H)IhfiO<0No;Hidv&bqJkO0{05A@pTKt=qGB{2SQI##YT6g|P; zjn0fh$ZSRjO~6Kk-;aZTg>%FSHMv>UbBTZe2kW|dx+{}UQ(uRDc^m#9JG_*se51O) zo}YC;M=oZ(<8LNa52krNzcB18gl%4QqR zr-%i?Kr^S`F%b^7N&a|I#0ads;F;bzol>|WUfG~EgCox1Xsq2B%_7GT>)=$E*OH;%Pjfsf#aN;88e4@tkS3Fu1riJ?y5|--f3UPTfDYO0-7-(*xLl*L&N|>bSq2Vw4_VRQo zYtnyk#czg!H$LCXKibR7i@VZEO{ZSQ_wUr`C$}r0p*3tArmeFw(INtM5;DgDVW(#1 zFJ}f>**6+ab>OaCU({C)Tl(a@rr&6qGX-bh$iU$ec=q^|*6#MCm8-9rt1Czs9Wa}U z!>eIH`eq&L7sRX`{WFaV?kaf6Sv+SHxFy^ZAh% zmX^!%r-VWtsuT6&zooCQ! zHZ)MV5qH2D7@);$r+B@0Hrq9q@k)x22R09o)dfUz~rwH3`M;6ef)=gJBe)x4@0=c zeBq3)tjFbtkbeSg2nC%aW>;4-u96e%D-FyH3=**68$mM~?$yib0jXGP0#2Bc2Oa|4 z4I2H!o)9c5E)TNS{u?x~>F;3y9>#ycH_MBoeAxUqp$`jyf2Fc+eEV$6?OJ0k( zhDKVze=Sc01a!Q>_hniHy9gaj)}3SKR=u{~tl#-{iRUBpE-5z+Ie1>$HUpVmTy40z zHbUa!-CX_EE#E@ejAb`&=PW@Y1W2RCVD4c55!TAfUv{OuN8{S=I7~AO9G3>@YDENzS0`I^EE>8}?XL>(*uet_Zicz-=H)#69SuDd`Ve~R01MXc?reoOds;nEOZA}b91a}$3g`CKo*M263u7S@5YXD%HnMt5m6i&d7OF3aU1$prghfpa zN8AyUo_Yk)cGP(WotKAPsi*fqGwHCN?d?)dR%`)%a|slj;NS1gq?{kKhuy_fdF9fj zuOLvjCaL184=Z#?tz=xi>Z%ad0+cyA!$o?S4|;)F;BY*Eh~Eo0ClmDxXE)((cfdx< z3doiX9oho6bad{W9-JZ9PhWi2h=)UrDeNut9?k7h*e&|=b|qUOVv>^VaGNZnwrX|D zs>}7}PrS_BTr1e%n7)~%#JaZxjU57I-|9i4(KjtV2AR9Rg75!ya&93_#$g!$Ph?QI zo4POu$w-ry!xBFs3L}rDSuM#BWFyK{u$iLLW?2?Q#6-7G$36rVNjuoVAjy>=qveIE zHN|gHDXwgqN@F$W0n2*c-38G_w_{fy|M&bnzkd|)zn1n=TvHZtC)D?au|3KVMQ!0U z&Lrl6)Azn5qS-%hm9isQ*l#g*LB9WzOvA`Ofyz`$YN`kYCTRwDDwX9C2_-I7;LB(#>OW%T`I@&+ zqkS_nBGQ!x>3I$XVGNMUq>E$Bc>spe%N|@yT!_zyaBe5xI@sVs&btHFQWlSm9btc< zW+Osh#q4Vl+Dq>yU*WLOj*PWXzt8K$#KD2_heSB&+0u}-BoF`xhuxEeI-(mdc5?~U zt*k6Z%9?LNn=K$afe`2Y9(cL=7yvou0ut3(mpf1)AkEa>_8f6`;MJZQuzlf*p7t znhhR4yWKS)e$k$B96cjFB-r>|7|a(Y-Xcng;7O?`h;_o+mJW+W-cX5M1{Ch}*KN$5 z{WwoWr8E(i78)?L1Ahb-$Yixs?)q?c_eGfEe+P@zU&il`bTy=N$7kF4xb*(+pkLdZHoNaz^Zbc}Fc z=kvYq-{W`xarby|^yqlM&-=Pw<2hbeu?Bh?cZleTFfcIgXlbfG#=yYB20wQY;DPU( z->X-^i?p{I)cc8>gSVfpr#*(Qt+%_Yo44yT7^|CRf3BUx@($wVPKHiqQ5XdDtvf`fq{tAQdKhY&;66kN@ ziK}W)fun`hFH-bmt`n7uyk3`X34Bdgc<-;sto~KMx6fQ>i!v%;;^bch1w~ObbKn;G zn}1)Q9t!vLn+n-O^tYKfE7AY+v%dT3o0tFRZ4o7=B>($e{Zx#du)_a+f&8Ca)Y$+1 z>ci7R9F1DYe^&+H?nwm>D*n$!AIkMk@#Fo^{kGN!6aTvf1IA>?zSqTY*uUZJu6Sl< ze4eq?=gkYR^+R@^%!KeJJ%YgfCxceRmotw(`VaD3_4f4icv}w<`76_6TVGCRiVPhp z+@2_ax5g(Wo#dlBq6@D7ID)_K-U&PJXOY@WfAZbAvfAlBy=&`cM#pKH@Fp4f2XiLW z53k8hi`7d+TkDtMo~C)Lv7nU`<_rNdvCZLs$C=$5JC(J+tKC9eP|fHoLf~!I3F?vK z4_0%*8l`(pKFoYYOj~md?Y_M}kY0_Nu~hx~r`&2D!aD(J8m-}HRJ*wk_`&iWq=+ynpe^76ZVrltSPyOmF)sI98T z3D`j=$^lVjc6xSJzx1O02)!UvQ&SS5`J(Fb*W3Dy^HxEkA|gG%-?>c~YA_9g=Wd@4 zx&4P!@S4`TSAT}En3gIkA3XRa5#7ev)%OhNBvH=?=F|Hrj%<~2IAr^g=gkFjtbUl8euf9?w&!%U{156;g&GX`v=V14PuXAwXagmne45nCtwb)Dojj0v^J zh^p_m?bb*H-qDlU<~&*%d$;<};o_^KJjc~Rcenq+W{yiuz}Ml>lXt7>!eJL<{K1_d zT4)umt`_HOjz!sU7F=pOOTjZ?n0)jeI1FX~!y#YE}f zS=5QG{zouy&#uE)!g9Y|+S<LPEsu-{-6ax7(O0xcL#`l{yPt<=6vK9S5Gs+x=*jJcAE@a z&x4}T3A5>3M_9PM?dp?y z*&2je<-dzTT5Ewu$H|Pa%MW4Z_M(U2`Mt}ApL&jPVSPc$qgsdMZle|c*FM&SstQ<8k?Ox)6&<> zujMfuyr!W05XGeNI;cdH2c77GniQ}~9|lr;qc-e%7rt`vr*V=7nJZw~=KX4E@*(Oe zCbJiX88ry%2MeKBd!`qSYH>6pe-;`y(+d9Cq0YkmMeFzkEShyN0ziJ8XQ4WOz2V16 zMkm1X()&xf;o)K2WKh81udWgj6W=tMtXv{meBFXTfo>b!4FfNHh{d-w?~+3Pz+v$z z;NlN|du8!iUGJC@vv%K{)qePwb$Rfsx@Cn=gUKhIgoNY^vDG0K#T4>l=s}lZ^Gcu# z$SE2DC@Z>(3_#kG3U&@Mzib?Q2TST004kM`xWm`vq9V2c(B;_Ra5%qQ^YV)^hLuCS zY;ng#^aa7{2e+4JrIo*uFWR=b^Fg2U zy1ho#BBYTMd1D~#NqRul90M6^-vx@L*AI{3>NMp2WpqUt`*(37y;T?qf+CVkKI`HH zd2(=jb5I%b2VLpz)88SL*(%)M^###W?Os5oFPGxmK8~+&u9ScE1BtF)M?0q7flZS> z;G!PKBlob~L3;X5KJeTBp%MHQ-H*ZMEr6zKvitO2t~*w>NnB-ZS6k2$*y3Suqg&4z z-3JeM;9-Z6EC$BZVYjF-h0PO?HZM9ras_?80-dEB-W!2Sa_3I9`xQE8F>1PRE_n+Y zorhdH-;G8HmGa;am5`cp00WMf_9JPzEl3e^ZIPw z3sl{sv)Zt{IN`1=@kzO~o0}WziKa>UD^~W(4dyD|E>!11{fwS${c7k{HDbM@;#Uku zqD|wtheb=rCjdD_W~BDH_ZpxU^4ugxde~EjSj8gGe4~YMVf>Zb}M; z{CO{#=daj%$7RAHu_$m|{vSx=+CXZS>n#oGe~0}SnPC^S4Fc-{08p9dq1OCCq7Iy& zOCj@v_MIuhKO8>@@j>L=iFn4VBuQCSA&&6{fPgOQebnp+dE>v}e)}k&xq0WNjs5n6 z{S~Vgnn{`6s{Q9r%GuQGxfh*4w*Ix23Y4C9=Iu*fHc z?73L;EBbMNmXXbzW1?d8|M`+X*wY4# z0>&&hKyfX)t5)B)J|VL!fVttYjX|mjfL4Mc8vX%#=LUdFR@+CQCnSC{ucqF=`rFbS@^*4RPK(E;k4Fj=Lo9YOHw8JjX7f(w~bcPV4n`Tn-Kn3=&dO z`JL;X0%410*F5Wfko)z0D0Dr=l>Bn_$!Ut+VIsFxJ&6ed+3E_#h-UJIbYITZO8w4) ze_ngdaQ-b?et<%QvDd`n`5+ph>|gK9AJ$u)Y_hRGfj!jM(fQ_d-=wW`!PPfR-gp3V zu{hr~^rYa@2xM%_+tAS8*^ZvGh8iB{Yti}_Ss0+q(^;SQ(f)^CwO{ptpqfYuJ>}>+ zt9CoeXz6$b66NhIPUVRlK0f{eJn5m-dc64Oor=nH5RPib#vK5kJk`1o0r-Pd{@h0X zYGKlI^R4OesA*R!8lLM1|Dxj0tGxLk_YdOo=F+R4PiqN)($OESUhUQe00Ww~O}bc} zxxHul>lKwX#XLkWKCj_*U5vY-F^gv( z;XQW{4UJd(?S2+ZNoP5=gyz*Wd3ugzOD=>@E9Y{K>qBo&3cy37+!1Du)u)Zi6l2skctEi~RA*ClV0c!TgL~n$!e=qU*o?F=1ll)Meu*KDtdu`4c*Ib@k7;H&@btmzi9)qPl{{ zC2lU~yBjt$ENV{as)^gtz0@VR8jzPgqSg6VQ@;k|=;-NxfhXcenEQfeLA~Dspm)`g zwCO8={X_GZ-2$p6%p2Lh?UKlmOtkt0c4%Cxk+N0IoVZqHiNf&!ff$54XS#J9sW&e= zSMDn}%UicZvjm0YyMRyWayn+2!PWA^lUR1|(+po&K2lmgXmLgg(8JdAUva!+sbj+3 zjNt%^QXA+;_#_B6e~;+C-gDz$wpwilA6oAMYJD+kT8HorfQ+pJQ1V+%IFKSB-)or3 z&mDYuhhPJWAO!lz%3EeHfP&q>iVoL-it9N@ZTjO%0Ew-m8!)OFO^M~s%JnUu89oFl31MMDqDvuB%Y4B*<0EDS&e_4Q z3Zg2&&657xIrkpS%3#-$sh&j%3n9b?YB%MEwDy^8=Xsl`FF8=;0Vfq_DNc_>G*ENw-E&Z37g~HS|5CV8?Q}f3k%e87PJ3EiVAEoeL!Cp*DTmJ1~Hw!RRpn zU-4TFLE&=KR+J>l5Fr^etpc~53sCiSfSr1b3AR+-pJ)ZE)}~NEB$G#KY8AkRmKpen zW7_xI;=ty|gN^UHI;&3#AqfWy`wk7l`G4Gk-oO5ZBgqckJFix6Z=74(ePozm@o13P zRN$yfV>PF2kilha?9<&1Vvyx1w1)_V+XhxI!2od=G{uw8pc;d$3vEOUFMEBjOA>chnn9*}o{T@J{mJ8pra^UZ3_zN(O>SN-+;sWbyeC+PfN;|nC>VCLI5aQF1Rk={|LE6T4)%(B|D6s{y=*|0;y+|UbL1LNN25voU7Bq` zo%$7S))hR@=1gm+vqgr!XviN^>;o*c|NOyfus9%$NVwG!=vRsawzxxHA7<8o0KpCd zf@R6IQ5W?WG{DAok*b}XOaZgLM?jS^zWE23@NaEv;n1TvOyi@c{%fz6uh5&$7<#@2 zb-4hD^gL!Kk?T>0H|@&i(ZysKbCy7b2{J$kT89Cxuf#Z9TD{4*z3RSQFV_!oMm6IS z(;T+1UME_-XtjTJh3?mb=3@ZaZ&1IuUA?`wju-s{wzM)>-X)@?V^a{wA4i}Mc)qRp zFt-q(fNGuOimIbrUF#zj9)L8ecUwPE3;7c#)aLYR2`DZ}HAkW!-sqmW1ty8t(R>H& zM(VH!8%?ZLz_XUHT=RgA{9Dj1;1Nn5-KJXshmry)P3mm+Nx;vS_~)k|6vhDzsqd>P znRBiOW%>jS_`qit0Tk%(4=;W2HM#BYyn7ccm3Zb;PeL?$446*KA1MEjKMI)HBs!l! z`^H6s&Mwe&Yea5kw@cIh6Nu0lJlipU1VA-f>tIo08iAiJpau~QuR0cloCAFG6^#i& z_Ktunbw_ybfEQ#IJaG*q1DcakgZ$zZ4j6gVc4BLgJ>C6ptoyLSwDS$1ikaw&!+$+h zGl_c$Kuunno=mL3m_Mio-KhdqLqJfI>p=ZGA6Bp`%RK^WM$z&MDrK9gVzvJyGTGG& zQove%g3abW`8~e7f&$O|aD9E95iG_ZkN|hpdeKOJ9u)POarXo?0YPUETEKYfGiS^g zaykV-Um94IG*D)9-??>VgHKQ%bi3@klmIBphNxB)I?jXxr{esVmR5$a$>e(UWcLQR zGM`R|2xktDS^X75_r6-sm!JxFDVI$BJYP?;-VCq;$fCyELJ%pt^RdLlDUSuHIDo>0 zt$}SM24(EFNg3Z6Bqg%0pA>r*>+-AkOJ z{b?ja10wY1jb#X~ANG?W-NLRISZ>dUpEa5DlP^xlU%7??GUEPC3IC{VzB3U`y*dv< zlF%HpW5>AGyj9{A{YeZJhOya0PP4k+Sl>d=A@msb+Tf539*1|N?E z?>s4hZBLiUon%h}wd;bgWhHQzp2e%;yWQ=3{kYe*9K9Ubqz@U%G8+ZmWKL6(f>oOr z92lP6r}qROzk0gwc>0m>TPEM{O2=}Uoqrb}g#t0P=CO?5Ueo-j{M8?hfPA-9v3{WT z83JT#w*ZS1dvdoAA6fwAXg+TH8^;KA{;%7m(R|JwLXL))bad}9_CK$aHm`;T0nIFU<=^iI z`l!v*Ljtru-ygJkWknEsN*rK)?LYoB&2c?*GrG_`m+)|K&jNRuYo>FZON(L<+clbCx_D zNVo2et5k~ambnxx1Y9OKE+mG0oH!vB6EFd(C<0Xyi2D$R z`Xm$8D`j@W!YApFSm?n~c0YYwBWXE~Xa*03GCqHbfqMKTIZoy#1m0_2_cKq09pZ>t z#K(bv24}zpjEYM6_(`yg2cX152F4WpHUz4eyJCtx&;k02isCIJqmdK2*NVRdLqc?) zX0Q#Bm#nHE#6XUGnX4*gFE4s6#4yuVcj z7A!L(aNi#$n~%+1&L2cp}KflN~nuFJU%dWtswj|3Bo zs`Rs|%HP`Q4Sp37KqGru*)Kcmmxmc5ACur#8H$xy#r5`Zj<_GsDYeZDXT3Qkd~siaMc1{H{m-;jOWrD)5U!$ zzja+L;g2LlP^yGf6&|ptTT{VPE+bS$Ao17?r_zXn_Lwb;m|kck=VR_=7m*p|o*nR* z2*F%0Aez07j?R{Fp#d&YSRVxwt+3Tsph43rHgeJkTj>z2d0anuF*>OD``w28y)n<= z-)Rl3_r{nIfgLCQE*>ktI{M9O2P03mgQ6Spb_FFv+;uu3Ll{G_>S2e`vlev`NkJZU zTBXN^w&E%ur(cy#7S?P=Xbxx&(2*08v)hQ85R=2yFkJ6Lb|QMiJy@wJBWbWixnD&H z9V1d{e8|OHzsCAp%0+nZ62fud>mO zbss5v!$s@c52N|WcYh5M;Ppz!O)?JA2^zpO)yz0^j0`X)i10MR!dPH;_Uc97RH)E# zANuRyz?oozQ}mpwJvLSSbaiK_p`V>)RNBhMwp#O{#JKFuk?p^x~XGZ@K7)NU4j`}mq{vX$ z*7){2HRDbMBS+23RE|+d>2iZdn}IoIgwV?@oUUc6}e&ujsqn3Nwodu^Tt?na*7o*7kl?x!6UvX&30cG5vM8Y5*t`ywyb+d zI-5wnYwisnD;8qcg(lucbu(Gg>vBhR3N>p{Y!n6IS)__;U>zcYi<4|C=gz}l#XPgy z-B4Kq>*xxBz`wh7UrParOA2J|QCH@3{A8qbqr*6s4X_i@1Rt%}$sGhtt^=F#7eI6p z#>Nka3?+qhvc-Sq2_2jL9_bh~i$gIZ87Cmu^2@`}xF%Ahz(gPuQ!@cFH|d!xR-oJQ^|!1-lN&0sj7@?99upe#s!Pt z!s5epfzgW-a4)}(GAd0b!tBX;ky2P45|S%{$FbGQx96!i+o$QsY%W+@Pg-0OC3kW^ z=UP?tt}&;kYA&1kLzg{qR_>;r_+DtzSw6(pH8}TZ0>XxK#;u7I%bwBGr>>j$bv$Gq zY=kCkcVa=GKAQ0B`VYmT$#e-Db_XNn5=uM2~E!^NVk1E zlW>-+a{`b0eF>w_coeU8w$)>|LltM46byUjaAUQq{a#)M>k*UZMSp-ZJkMh|@EBr+ zRQU|dGEFHLeN!_bQJp63nym?s**{dXKn{dQVU=s=PJVI{QLp77Dx6$;FB<*gqDlK@!J}!s7T+sX`%0NW##yU2DDdJ`Vwijy(nDlZRNLL_Z>>;fWK_>yxjWDn^jP1B zJ$9@RPt%z0nZC}?DvkJ=z5#QceA`?OZ=yQpcM`Efx)+fP=$vH%Is5r^`cVL)F~6*% zjQM>$K+0Z#2z#N`!67|hqfmCKU*npYk27Kye1h#bz3D7M#j3{`@G9NY_Rvhh>D)Xh#u zpSiDW%Lq~sO8VSo7fpxqdQ&7td?zs3i+Ylo4=HY*Q~4&@L4e?lv*&<#2P+Cp(Xy4Z zR**_&41BaCtAmczZPhTXQw10lq@}<06wrZPJ>uhxPu{>I`P%}aDte;xQ|3ASIOg7a z2zT`>c(psZ7@S9?bdymfQalEe5A*0w1*;7csmK(&P&CXtFVsH>Dv>_BJ@5RW0jM-+ zdp!{?9tn(*Q&^oxB^bSCiEc6jFf@y_*%ArKuJ?(!mIAQ^%rD%|*+S0lWwN7tEw za+(|RcLD84b^xUk2}tgeQ`|OhX2^tWu097=X3A#5K2*^dhxFZ?CFUma_kpJ^Cej$q z84O~)3{}XJ<=Z(m<>RwjE&ulp-}NUTAI~Bt!ec3@W|vlHy-p#$6(rN%n~4!eq^qvK z+K$7`m$Md6QvGp7`IM#|M>P)VCIT#zxoj#ZE3o+M+X?v1L@DsgIA4=K_VK1=*4813 zZ83l;zZ`fR%_zz;bkyQ#aurJf0;Vn`g#e%&u;(E_h$S3mHR`>0fI3IjPYcJUB z6+3~b$6aTvvaO~#N`@2lNImMUPxnqcOvK5HMOEPxm2zaguwcEH@S$%a3qQ%C6I>)8`v4@9@U0us3`6ams zUWbPr;;|8C1tFdz3A}24nIX0|g`f~N>(=+cv%yTDK35wmfmTY+r;NSC0E|irkT)>g~M^h>8`tC(FSHy~8?eS~Q z6Y)0p?E6dm%?+6FheOhW0+bi}(^87V#3N}vrF0LyV10|o zTXKb#nD1x;D+&jrnx5?#P{30huC;GC1iyN3#ym^63AxPqaiO^gfS@X0-X85`XDqc| zF}DzLf|gpGLZD;1tO{UYW9$nsg- zN8kP+{ec;}=TvW+D+n}yt1RYBCF$;*4)`*#Jfd&yA5vsw(cqlkdH2dAa$w?dOx|f5 z>UYvE!w>|mIRJ3J0HomgEyzTx##|x;JPSZ|w8Yu^?|7^g%oCiqcVEdK%Z1Gjqrp<} zLD1?t(}6!ekjDDW$ACIM{z3kX7p*DX%k>x^ijkYV01D?-zNgK@-k?d~<*K7SX;*Ki z`f^%qt83h22fdO7jCk#%7%7)}$$t8`6gi7|BGNR7xa?lOnU&cNjP2$FpY+1&+ZwSR zXgun>fIfX_$%a%>C3zhJM%dO)o!9w}$2`|Rdc-r{O-FmDY6e&OqpD#NRo!D-0-0`| zn&=4Qv!c=?b&@QoPu@8}{jP_NTK4s_C_#icjZ3aJMc$**8-gO`3MuJP5g&Y|Bsb-8 z@tBcDQA>_+0z*C+k54YEk}R213Y!{c*~)y@M^6nGcllNhZQRF(X;?1xFW)d>Wk;%) z3=Tk*ob+wDe!^xAHRC_CN>KzqrV+6CL_ixEN~XI0<;o!yDIPNjtMZ=qXAe+0t+TSN zwy&&iE?#hL0G2@Ylqen^-glrez4u;qXdFQgu080!&_z!u)g5$Q)qF}mMWMWa;eMRp z790u6vm@7Iw0;j9xT8Dhp(bYA=Q;I2L_yCapi2uqHa7NC_g-8^pIJi&V@$ct<4H%| z26Yx7AA3LUG9h~6Hp*Ol?j!f*yI|jhq05;yVT1+^6hMcM&5f(6hG*Y0o75&Sx>tv zkkI<8VcPd0@LDzelleD{XYXs(C``2CMCl+(V#EzrBVI*T;YzMzR26xIToHz2wy~_n zIHu2L6t;E?XGjGxU{$jpc@RlH03*|JP&|74C|NUQ%#44yFjdVbT9 z<72N+UoSZ&BYi^V!Rdn=-yogsWE!842y>hqREu*X;hj_=F}?~Vpwg-^Q*c9Z}u9M1Sz4oil;bNS((rg0-Gq-E1GJ#SWePI;iN~2A}NkB(prGyvtoFJf$`# zl^Ju95ktc~^zl^Gm+rg?*Nsmoz87cP`K*jv#DrpM8%uOx|2!g)*)3k1h{}(R`*8_H zoH;A8(eseJr#UCG#Kv!Hus2OGxbH&C35ve$D;bEht>e6F6VlwtRW)|fybjdT88mr* zU5ZPO=8MP}jLC>x87-H6z02fy@5o9Fa?Q1?WhIy*bw>YLmSH-e>AeZ&`@jE4hX z8t}73MN}RViezby@@?6M6wf((TyB481QS14b-+~cIvS)s0bXg>ZpjVw%SrANJ!$)d z?2Z2Z{#^GyLPnqqYw5Xs=(qwxDmU0PX3!p}&;slH*1v~U(x7-r|EcSLeleUjkzCFcKND42ab4@chtHX^y8LQj%(P#m5K(W(nc%*%&F1XX;(Q%W zZZzn?zUTWc#rK__F?m|(3UuC>2!c$LsHfc1X(1OG75t{L)y?m1>%+Y6<%;MDe5;hh zDf~&#K0YehA0yBb5u{VI9GT^N0IjSEp-hG<@v!op6f}ev8{qc`awiW_IXf6Bn2L;8 zLDD#bOL3(WXr5-QHOTSOVNq7pc){XF>J8E@$SVn9qDnfWQ3gKASw=+mFO8T8m{@gw zD-}&7zkktbLTzHiX|q$K98tc^s^%o40(VbNsh2Dgm}X?_48>zlDc&)lhPyV;(cE|Z zTDPr4S~MmI$PP=-)2u?ji^#y6!6cTO$hqgPdQ1 zweQqqp7dD?b#{hkD~DjL&A+<#12=W;3kGj6xVLV35J;P#K3VOlvTimRNCOOvRWPzl zMKtL@B#vJ8HpI|OY5;9~j^yMuN|2BJ?2x+4lJ%9Bw_9)GQD;C2ZIr0-FP4wNq$NyPR8NYOmY4Oza*MZW z7Fzd1(g#>(YNS0jVVrnexI5}y#lDdHJY&?)z|ziYmvX{Mfc;K|j#{^nT?_P3%tgWN1xqM!JR9srQuiY| zf!FSd_Mw5_Htj0;VLN;4OdhR90DqA0zxlg8nS3X(F&%%wWP%Z;6SxOJ?hpS$_d8DX zR{l1(7~Y+s{oPDYF{GvJ^ki420;Txi^qyctGh%Tr^tv2X^_%^2W30IJV^o&|d^)Mn zmnnWESwlJVsMa-f+0vQPJ?CD|hT;|uJXgqHjd0~-Z{pmmmPgum1sMhMzrXd_`uDD| zS0R*72BRCE@fS+=9wYV!b=mX(@arKZx6O#i zM}wH6uNVkJ#&d1NDq;yCh!+}WK0GQ~bcGGNczCa$HREjw7?WYT2~ODa60#+z#3#O~ znlUsa+ohS1zByvKO#y?_{|pyK5ayr^_oM0Mka+%-AfHRttdB*($4L|vxqWbeMB7o_ zzzq+4t;#@v_P!>Ae~SZjn4j!Efi6s5zzaf8+~_U&=v>q`O1u_$g>6whmdZ%<+s^LHAP+ThspdM=5kIDlfRA|D*7daypG4Kd;bN?2 z*q5rASGqd$Zatjq%v5ubm_^yu`C+AkM`A1$x7B#+GOyiNDzx;Me`kir+SA|RY_K7* zEN1z($zb5Z@tC4yoof0ldSBwPhCmuoN=093FlNffy+Fc`97Q&{y0LGxgfvU}wBKS6 zJ&ubme2L|Q7d7tbnz0>rf`@qE9zeD3SvQLPEi}F?C4kdK45;8iu5=|OkFuRIRp<5L zL%&JB=Bmsvh^@yKA4GXEXKn(HTC`|4`X0HIMpFa)&S7S>ty$SwQkf97Q+sE`In_wfPo_L;e_bw14vYZ06{I%l zDf3&}9d>v_$L{@);yZ1VRzYO5G8dXt%o_1*E*p!Mnqe`V2}C=%R^xG}Nz~0UAv~O8D?B3y3h(QON<*!OX}7s3A`8_LkIWjxNLlN5Eed^f zXK^2zjHuQ1MG-yzRENjMYe-QdhmmSgB-(U1$C%HL%{TemK8?jC zzC^%{1$KbmCpu9)*q*(?7=Gul9UZ5JS|;-IYft&y%FP0rcweH9$f`96!-0tW6!-n; zXD?dA*T$Reo!n!N>>m|5-D@m=>cU%@Isr|)m;Hlq@qXX7?Q#(~NPr%)&S@ZVmpOEb zyD7PL1v5GwTWZ4QESa{`(a=%^^8NKvg{- z+$-${b4W^JPpdq%iL18SJ`%zGgayLF&~JCgeEezCp~TEX3eqamIi)>8gJC+00+k&_ zO;3EBI8~K+lRT{F=BKdEnW?-cMO3{x#=yv+7R>o7jfgC6d`3uSaxS8!8K;Jdy#1(; zUjK)#a=el(!N?QE(mn$&EH*8sc zD&(jB9gtdwuYbD4n{^)zGMY@zWlZB!nc;31zdOoawT=7~y(t3Dbbu+&k@l4{A#fI< zG(o%aDcrdI*4PqR;zO7yv%>@W|NQXgSuz?)oS^3y6ROLCpnl-|4DiiUKRn!fHsg6y z?uS>Ey7`IWKvCy-&2L${*+)+rSCrE*e9FWpCiZg;@!+}tJBLa&@e{3x4^b-1kGNY4 zUuOOCN|+iPlQQPFN!awCS%~CRz4W6 zCQUviA~`k24P}73NdNr~M;pjJV8B!y?RdJKRxda48s(ps-aBf@>~v+a(j^;%1Dkte zl)v^*0$h^)YmP)*OXuG6nd6{`n=qScB?GST(YuqBB`fdqDqie8Ppyf?tj{P#;B!P( z6k4iY;^T8Wo}aUfTJf z^s0>1$hCEn7qvC~kcjuvZNqeL|4}@K7+zLbT!}hgTI(RbXr(3>XPvE>$A454FBHFl z#28DoZhd$W5o<^csr=gwCLyOWJ1;AGqDV7{9(^kwG;{CT-LzrgyP6e<)V?5o++F;> zri*n@;Vj^3Y*6r6;S4lT7h=sD_QDnN>I|v7xD$NS&ffz&G3S7|t zVD>V5)~r6!AeKfEVcU5x#x~e)!94V7!FPW!Z!`hs$-e^0;R~4Sejp<|L!UH=pT*aK z$_?Bp@7(VR>_O|BV32Fl=OJ(4cYk*@T|#@lOfy(|>J)Q+PZx8MQgdKON*-WC^-%3<(GL~}HMmuiFRf)SgI7q6<<#Ou!XZPz9Xb}7X6X7z~(p+cHl--{P{drsyF|2I_ z&Z3B~gEq3Ac$c#YnR2&}qqO**50%|C4K#p|kF2yJ*`O@*>&p?=1i>gN-skZ)?%_%T z+9strBpPCvjuKD5AUG9WD78e{RTB(I%V?e&zx@?`XW$LFY-=>R^9`D?0Gq z^a<1j91hx7?=ai?eWdt>P-R|%kpRwE{oRa zMORn!z_e1Mj7gGWmO6$c&d1Sx0jnms&pS)FFPuOV*6|LK!pE8?`G{7i)Dn-8`aK`j zRoC>DdhhqyA^p-0o*WhONbN0{8Knwm1~6Cg{$^#tl6NgN9uq<=&l4VKvh$@1ge7>4 z*l8HiZ!-;<6`NwS?kKXae`27-mVABpdnQe&%O}XOd_7W08vC-(9Da(MSgfXce-V=+ zZ-HTbswzq`emk^&+QsM>R;p`iIZ>%|<-8Kfa$;0H1sqFVyNYlzo0adSFg53pIgIFK zpDc{TNG*DbD-L2QslFONPM0r@uffSpsz#EcC#uAOa%xs8r23iPe$)5c!Yy{}()%>> z=Qkl;5*gnklVN4!vNf$DzU_E?kZ*81Qwst1^9ED3r{yiCo z@tnb3E0heFJCXZ6kte&HInxjCF&_hScFjr`j8BARDTBJ&RWdh!@2AE`RPYJ9Mi}{A z$t_&IPW?u=-m6A7wdMAU0%lAO$80*Q-TJ8L{Z>!#MX!{G&U-b=h}3l*Z59EQU!pwq z$vn`^XKl8r5{Q3T&M0N%Oy-mALR5Kzo3R+L*t28!GnbThS{@lXMkQBj_u zlnDZE9oBly0d+%IX{ktwflcgpISwp)<9hFH*qc$2j={wHc&~Zi5VEsnQ>%>{Z13hs z5ZWusiJ&Oy3Ik69ru zvka_8s)SJ$ilfR0RF6jg@@x)3ikzrMNddEAwAOY?GSC&^iWg@4q*3U+8x%pKD=}ZV zbJu(T)7~+HD~=X+9P04Ap2MuNT$i)}9-m0A9B*W-m4VFq%}UA77yBc07mT70I@nd) zIv24Q9}VRgWwRLua3LJh%Nz{ig+jw$cF8vk^~hZPl&A0*mzZ}4hh@MizD##;(&KT) zCLS*dvrBJS>GE}(c~8rN!@K;`=Xd^7Ubf3JkHPR@Hkhq;D|6armJCIYE~01S88)7R z0RpI~U(ei-^4T7HT0_sQ1F5mtPeNQnq6{I+(a#$se;?F6Go|a_&{XtWXOq6d)iGvM zQ>wbJoK>pV_uHcCX$z!QOlAlAYmKR1mqp&|aiCWL^8Z6N|N=u?f^%Z4L)wyrkn(m8^UlMZN%`1JciHoCL zrCm|1OA?_PY4p;-*l163Z~(G7Ku`qH7?m`#7voU&`$G{w-XlpcHOB3jl@k{QvFKIsF+$o%Me*@gz!_`+Y*!%jpO5z3E(yEaMA35II;TQ{3%2P;IkI%L( zZtr$_k5E?pCAjVv7c~uh~QvexdM+dQ`|@j4R?nqM)!!>r~h0uv^{nfny-rq z4ud@~ed>XG5IEm187N-C{60~=q<8y6!9-8bB~znbK#biV&xH;4Qs%%Grh_WX%Fy#g z`FUKnHx0W>qW!0nrM2A!>iKH|JMGp%H^Rsr+DMyVQah+yFF(Jv^ObeafTk|Rz)qhV zSE*(7gtP>Krr!}X^G|}-Z$*qTA8ztHGGdEw<`sOkng9HzoRztSQmB-Fy%|W0Q98kf zk&qLsemZ2mJ3=Q?e|1j{e*j`61F0;X^_F>2Pny=^JwSd>WMVz#A56Cs--! z&eM`u-4ZHA!R!$1bvdRewMQ8#WaA}nL#$>mG%sQdl6+vZ5yK1VorS!S2|qY`s#})( zBu^Z~?+1;Ql52Hgjp!?-o)kY?PJ$S-EYh*C`Qhz)!FYI8YQ^h>fOQDq?fp+9%{#!H zd4Z-)jo<*oc2{}=bI^Y4J!^1g)~wE^*V|f~Y!?$8XvYAjj|tF6I=faT>dnhv&2qA* ze6m2W7y9DekFBn~)hD(gF%o@DH~DqV_Vr~Bl;pATw`@h3=gL#uG+dAIV1`^UTLUpz z$PZOk&Xi+Lb(mS{r=D5StyJ2Xrq_>$sX2dHi7}^=r#vo;^pBRx^v8+C*|PMTYFw$j zr}Vr%H$EC*i%6m0P3eZv7bXYv5QBs8!W9fk?8jwxeFL`12Jf?L_wcCg1F&U9h=($j z>D+~$covL{Z1}%Rdq8j3y8j~t(PMYVwS;VGYuHXOev%N;VCS71>@L*bk9{gZvNA9N z(}Xq1=s75<&swl$*m3{rw4G`&9HLzv|HtI_xJ#8iIfvX`R9aca*cR&OVfI=yqd{Oh zUbtUc!`L{g!RAOM4zZ@u60OTr0M5>yqh-_O%=#%f+Q%)96WXE1dM5(@YY8|1eg+65 z<5M>zGy$gACKFnvPZ~M$(-cS9NQ*5Zf!E~0M^som1yVpI@Z)S9si>IGtTSsl5!U1M5zhyuX2Fk%rN~S!Fw@o}vuJusJL1xaa6{O&qoM+X zQ*QW2*r7(o`j79~1kc}mZ(~GusQFNbdr?h|Wm$7kHd*Zng}bcY7X7_frz zPF!*due@%Y+x{c8!CN$M3V(hM*^K`aoF{ek_VzA0W`>$>dCP!<58cp8WHZ|xi}%D} ztOFbuEcglZdNAh!;*t)Z*`F00kUtERy-5$VV4wZkF|yokd|YVxf?3Eg!KE~p)t6{F zf#FMTNw#!ux!3I5=%2?KV&6hMiCmlOT7`a6N}SbY@V+V3#wz$Agjq3`B$|NxSh+w~ zeB%D%#~I4l9sBUJWg8|{4N{pS16<6A)H?|>q(l1wSO}u5C8_r27BgzuhsjJ7&gla6*o~RI=yKE9-{4MXYE7$6MgC675aIy4IY9#^ zp|tJVE2l)VGI+r-zbz&wTBFkYd6TVx8;enppsnjaZ`xX$mVaDSIkoR=aIQl0UI)}t z^AFZv0yk|MSBMuS6N3B0%-voZh%xh;EE#F6o6MOq=vn_{qXClEPphX*XNQx)ST9{g zhLTN<0+zs}fD^9Y3@P@B9BE+|IEz?)zjhJGQBBa=kq$1XX2*E;z8aHwr8urbvOxJB zuNC_9F0B#4*J#g48JQpxfQ^Sn-Xl{ zPoK-JeBvxii9%2^LAQY{{f*Y;$S>MWk#qHTfnik7sLrsk0~sKAASn@})7yJq<=eAQNK&E#Mrg!-gFX2A0i zKDM4-4@K^_5NFyAJN(Qq%ExS4=d)Amqx@X{V=i4|zCq2JD5kGoKy*6-o9$>Q!Rt_M zCN8lPS2!MpCYB_jLUT-~=s014w_z;hV)?Okw(NDV2pEBAqdiGTgBEu*_g3%yGsH}WwN7(dPT zv7@!hwe?mt!nx9JDMc-Za$nbt>eXu3~2*f<^bX~ zZqTow;th9x@WNDusMB7ZM^>`0ynSMN99$UA-(HoT$$i^k%(N^6o7b2gw|bN7-u39; z79b5K5K$_{-6B8quY)!_62dEF;>MPz;k`&A4(ZOnR4)2a_mZ5o_{(o^t?fWcH%)Xw zHUXz>CeqGI_u8PgEL-!Jv&95GDAv)zP13~n#krQEPwe>5^*io3R6-6A4~Z{*`aY?* zyf8&g+A)QnEwSn)!5|f(DPH0BXgY;$hRV?nTViUo*UZ{o=gy&EB8hh{cnaEkMMJUFYYh zRpT9^(|G|&zy|Q_H0PQ|n4gE4m=YvB8eL^>(PjSk-}0E%{oj*273L7LLX9ud7e&(P z18;u{;YA-YWGzGGk+8#=Is*Ui&}%-NR{gLKs5*i$Xwt8cOJkYW*q#dB@kF1eqiwB3 zuE+44tshxWNXE0&KF3YT*ZhUuOOMnId*wuWt(HB&`SnK5$liBRl%O3frL1PcVk7Y= z(MpFk<&!6A8tV~y2*rmui31#58)TA>a;Z zquGA@51em9oq_?#el6qPg_+yUfP12zX4-#PB3pXqlmJ8Mc1xh8Dm^~yGxP1dDpdAS zG+NGv*{uofS9pq$mRO!8+hZsJwUaki@7EljXLdYm+S#h_x=}|=1d=*XN(vB2M9Kl6 z98VyR2mJfBDNp;`8^BTE^1Y>3cL6v>%6DN7(S*JmPgkCdhA~h=LOMX)@!QMdM}3qb z_v?tskRO2j-)fnuxq;Tr(R?KLZWLpsM3OYKlk6@k43agHac^0bVqS^-3U&HjL3&W~ zWaAB+;~7I}{`t`7UzC}3Eizf8s8NMsbu%I1GfYl1oc2UoF*qUodQ8QjS|*p>zw?U) z;S=`dm{=0A#^{NqbvuX+z7rG^g1RH%Un#sR?^sorLmv+r5Iq~HGE5zcG))=d<&xN+ zR92oAF@cxU+fHRcx#%A%%d=HLlJzQ^p3j@}R~cw{*GlMCrZ!1Q||o~7rZ#x z#NHl2j)eeTWlEl`Nc-Dj{Fe5Yh)dvoyjSPwPp-h;pPNy8n2T@AOvAMUqkx$yK-dZf z=B15qI6eSZFlpD}$OVgYB=Nv*I_)W^9*b`;s)VXLQl>ADhA%)6CDUsnA3W$|cUP~E zDaej!2xkpmo#Itj%Qa$jkZ&#Vvn;|4v$tb8Z2E0HaAfH;#Wf^)ao6>|iOEU~kn@!P z*!-k?$dCz@gVNh}uTvP367c$0EZEPP%Jf(hxe0>gKd7#wb-AOE%Cs)_F)veO9`Yc5 zs^eN?8|zL>N`P8=GOzWPPjm=q-WHdssHQ|$Q7W*(i4FHho7k8Md138FQAC6p$i7U< z96FY|qQKz0F`Wu;sK=`w%SLw96G*UamG&Xy!-386*l>yqzfYqL^mlAuKJ$G z9r?fjmGn(r#Q`8#Q8)yL@3wUAPz2g^D$0S)>i$vgfBEgn4E57VstU3;T+II0kZPB0 zhf!A9S%A1-@Rvv$!qu48&(yh}<*q}j|L~nf>_~;KM>P!b&jwGy;4LcJc6pCX|I%%z z6V>2QK3c=+ib3xbR}%#;CbN&?VurJmhFE`v0yUZ>f?>ij_+hQ@^}Kmgo-R)#=}Y@k zCNSX=4e+voAjnIg`1He(cckU${%c4Or2h4agP)*>>|&v?4byRRhMV7Hk<{A;m?x zrUCW_FHh3MNc5f7q5R{%NHW>TcQLhJ{TO`N9UX{kRqUF-xG1T?rhS6?3*=q%0Q;@g zZkSdS{Ca8lpI`aE=T@+Q@BRvU_~T&$z}})z*FwgmYmwipPnxsc@7^uA3P8dBdqz_O)pzK+#OHWOd>vcOsHGahiklBOM^N{h=%vvhG@%VEYj z>(pY|;7g>5JW1=k+#_@AoSNI>TGnNI?Vkk-rZ+$!e#QnKJN^x9=o`iq1h?z~AQ_^G z2HQcK?OG`z@`YEYEc}pT^oT_JE531U?;gBIxX#tU<>SMx;Vpr1#b3WdJw0e6{!#58 z9ZJN$U2LXg`2i+}up1#?vfvy93p%T#Fqx-SL3s3qx+*K2aQzoYZCrE6qa zMsj}U%4`SwZu`6DWkW(rz{*X%9GHI=$LP1Gn|!`LFR|ZfkW$%osJLr(POkhP#pi1} z-dYs#Fgk|zKSWuCtH!V^*-wL$f4E+VGX0z;?PP7t%g~}D6w+ye$?-3jVb3MTDeS~u z_G9s&BM~|?Q>byqsWxf3!-cJ0Q%&= zTzb#l@Qe9jdseg->RFK`I~5(D^$#TzcQ`EoH2qS9_zooTiTTZ@4T=)s7L7fL;V?_B2#Omr;+q^ zjUS8&E<1j(-lr*pun%n?(Y4j%&c@fQtfVlZb`4|X|&0D$;l%oeiLrGgXh168E%71I(Q6YzRgImu%3MQorFcF z*z4V7^(K=#{`To`cr)|yn%mQB_t*3Ug-%82OE2rH*}*dA`?FiV zZu(7EcCsKzHkrcJ#obv>$^Dp0-wPwlqb-Iu(Ao71bxb82*5|AZ^=OzV>@erqVIJVEB90OdB6gx8d=+!UX6+X5`n5I2rBo3cb#vd8MOne zO~6Y1-b(vhi%&`cO3%o%-5y(bF%1>p}v9vm7Rx)}fr`gIZ|~ z^ej1KDt|=T0v`N}!TQKUsQ@PCg}Q`p8T4&WYFVakCca^BDKccAk>ktd4N1m|=F`tD za=!e*iKXv)d#9l1;#*a&TvqoeTVwIX_IRt;vP>;?AZwRzOw>Nj4bXPUGMf&%NiLkE zvvE5gVjoB7zP+xn9|ul*r6u>>fCCMheP_1Pzt9+$*lQ^Y$*Jwt=@7w}^)PaE)azIG zGTRAB!~h=|4S~)MWr)DWf?)^u+(m;uMS-Bd#Jm?S!*Ytx3E9?^DV2nd;?w!AjX5tvQomeL4wGxxOX&jA}l6?KI#CKt>AL)Ul-`8sEZ6nQpnG@~;gE9%9iB>N zs6KZ4N1qi)RxoVYpb4W80?uaCz9y~7&t}ghI^fxyYs!fffCZA|Cpj^x_n=}bhf+Iq z!|dSV0{3a!?{KYIASIw;pWtO~JmNa2`b&yzG!ku8Ii2}B>gvVSft^Yj^Z!Tz!0ZA* z!)nO^9HVp1z!HZ1-$yn~a%ywX9N*2B2kbS|A0_Cl({=n-FAjw=M$a-oVfqE1CtAoa zH=YYMJ`kF864cWVomxsxK`6kc44?0bcp1Mvf>(c@98iQm6%(ag6Nd=s6>FVhF?TE<%Rj zXM?(Gn3Bhaf$W%+?ZwCpFR*99!a%s9%Y2MrVmqq-eVeCR)#az`btCcSWIgwTO&9bL zwA4&WlDz$8w-Tm#H^`5T#ZN1wL9>B*NZ3Juf;t9(7dpDNZwe30m$q9dZdt%9_kXX9 z!iE8S%k!fxH9Anj{sB_^(Aec@RkBUU>(w1oYOLH#(+Z!GBSuo&-Jllkg2n#SF2)=( z(|inGD1S9XQ(PRQ@j`A#=*DeDq#!-lw6!je&9SDFh-O*~4-~)nOLBstaf#}SNPvhF z?Wm%}p_fHZNWnp*um~O6zMej`<%tvRRtS4$0;DtK6v)PLiDegjN?V@m0Ov{!#r|Rg zbyV5#(4RWe>GMZGE*RI!a&CBl(bN42D$r0RJ1O4J^#)_X1ac_+Tp+UCG;foAunu`N zVwRqq!(rzpSin6hsDDoStyvGmpO9_9LX8m<1?@8p-c@-YB|Pz$4+}OjB4^*G!LW9I zS8|E}^~^B_!sp%e>N%O6L$31^Cq-EcAGm`60eON1fS*$ejC@`LB)4a(X1e=n*MUS1 zWtj1DUx2y41<2|1w8~%r+wATqN81|7^MF5_uXgl4IqX7on26mAYPZom(T%WN6w(h-V zT1rHULMm02=KWRlNno%0OK%Ur;@JWyy@H~2z<~~cpS%OSBN{Zj<;fOQtM@1@V*p6? z7qg$Ke46WR`aS3kI?wx?n8urouxR!yM?atUzD9bu!~-)A8#i~<%5!DnS%b{|VlO<` zD=F99rRblY=5L|JXn#XJs(|K*n(*Gz!$yBSoJc8CDo6$J$nAf)S#t1AKrW0QdOfb- zk-;FbJxllbYbGy&&vqc5#-($gOmGQW1K|nWN2Jyvd<>y6F!)GX0RQ2lvM%G*-9KUd z4V@fNqD+NpD`Mt@cmh6?N~M}U)kx=R-oZ{iB7}`a`VI94uOrnojV!j;GS505QW>jX zo&zZiH5*s5yz?F1WoU(uQAXrThKQBDk(M^fSGaRGE4DC1@|fH6wgLBz$mjR&BEgui ztG4-23I$>wdb`Luo5#*xa2frVRRt zvj!dQwwWpI4wC#kdUpICDWg-y4~Q7${>6`mp3%p?5XM*)4wn3wloUsBs9u=#o{0@M zLs>*w8ZN~LCv)0*b$u16o#`p4O6XvbpXJoo_dOA3AmPv-pTPviQm6Qaf8>*elT*PW z1y#4?udzO4F?B9vf>yRg>||AWCd=5Ta44(HNM6g-)pEx_aD4GY6lxjADUnV`f+rX} zv*Ym=NkZKD-611iV5*Z8#y)$Wj{_1gJHS*W0}w!jo{CcOPrHDBI8Vt)U z_srcn4mYoyfBoxK9~K2It#N=uWCDt9l>vafYyf#x_1WKFy9)#M-=+pm+#g4OD_;s! z=*=fK+sZLi$h>EjU*5?Om93ds=@*cGbGK{|%Z^5-B&Qfa8LT5Ck7RUR-sRkl@hYx1 zH!5fu$S;_p-V$|`k45p}QXG5yzt=PQi}UW{$FG|2HDj-?3!vJ zVUG@SE|pceCJ~VL&3F70s zJ$srwPOb)3Yyg2t{B>BJHNAvGQjF@aqORGF0#J6g;dyzVGQ<4u()~*F$|%lqjpPm; z9v*Eiejp_lakhK?b?&1R$W4H~$SdpIZZr%?z4u=N95Wz)xBG*s_Ch_EmfZ!8)d2ht z0L!@qpusu;&}ihlRACi93K$Gfdjg-Kb=xJ%0&d_^g3oukNEn{v^RL`grDvQfs&iuRp++45HPv(=iB4^=^zFNqNPEo}q`D=curySO6;gx;Q=+da=# zPg=oBZ>qb=6VGd?pquw)=B~sx`enN#3=Q|M6+rIJuRF(&?OoWQH<48&hIuCpY+9h5 zLYX_dq9Ns_cd5Nw-C^~fx^$D0KQZjhGaKO9FPS`f7v@u04FHeF=!gvoe{z1J->Z;U z$FIb0i%+UwUn!y`+5V;a@S8{9lva=OpHi&vC~kTR5BT4&rhjJk_LGZ@j)C|BSMF24U%>Uz6285LmeYgrBth;6hP-YrNqMMLLK}GIJ zXy~1%Xn@j@CvH@Xh=_agF&Ag~dsm|LF!(=y^OIGf2zw5Y(J>t<7FBmX2I7Mdqe~tT@k(~gqgxOmn|SL1n!fA#bc>KX z5@0jrXokvyB{RpmEL1Jaj8&jv2rEHn&x8G9K1^tX#Nf4S0D$(XL19Y+=-J1%;VirjusV^6-^E0D`UCVYo07E|SCI z@1Gf6e`CKDC00sT`Y+iavQ-0lS&|&#`&mkHYh2>BLOQn!bfSZG+B?e$Ns=F;qxQJv zOSP4I&#GukoWs>@<5KQ`u=}8U)sE4L#+OhJrMQXE*i3ufuY(l{oE5ai>LlCue;j`w zB%9sowNwWI$m7g5wJ(f9+c?>c-tI2|B>D+zp!|>nu{14|d<<5A%x1rW1==)Vfa7);SypOglt!a zH4_&os&1CXggGyky%?nUIVenR^&e~TSLMAF$Q03LQhiI1fevBEvU0Qh z=U^QDV=s1?k>v8|kY#9~NWPTi1yN=wo_oC#X<&Yk`=;F2o65mPCAM|Jf+a<9N-s6| zMp`nJAyF|nG?+_l-e{Y9(DIzCL62d{xrf%_O!hrqos(^qrVt%K>aqJ5ry&V=ORX7< zB+U>qvpHo_Ap7bg<6X%J(4_5K{)KgXL55F>eXU+@?6fO&pyld<)%@PDW9A*dYZvkH z9IrT~q1f_SF_8e>wu{BzrLXsaRF2mKo_SxKS8bN#laVksT<=itmXpe=D-N6iEpm<^jKYzciAWo%wdML`E!EyBW{tD~WWy{PBI?g=pAOa6d+#pRVW7W!hq8T0} zX$>&N@`W_G))QcUEBYx9>aT55vgH7Drk7RavG6#l8XSF2~6!Y5ND|X-)gWQ*ayB*dl#Adjh zKCU`7wnE#o{>9^zL$*S0rDO*ALe7g8t?>B(Wwov5bSM-*s9X?zSy^#)t7a$Y$Fjk ztZ^8yZz<)yrs2Z)Ys+vPs!up@rNpwE^D%2%$w~#358IcMm)zY9z)myzpK^&@v+ejCo8ig&>VGZk# zKLs!Jb!sgM`V?rWTPHZ?tBx`@}O(lDnZpH3>KE5y|IUU;0f+q z5lO+1Dp&wXWblo!Ky@}>tIWb-Y*n1Gl74>|&R3>%g28hrUtYC9huFE4UtXmtY455+V1WU`xRh9tHB(9NS){%O&pj~$%J5~%$2avY=3bR4+FIH@m_r9ilf*5;Mx z4K}T~n)g|KYs`rEEW!z&rP@NPj|$I%p^FQ1q&UKyW!}PaaVdYcpNE^5EPO5JR)Ba_ zPrppB;gpl`Vk?CP?Vn4f*8cNfRbHKbU@cMy z=?Fb{iw;Soyuh^2G&Fv+9g{5L%I-lom5$s;PE1%|m29hdv}gsbxY( zN)k)1+NCy-(xkVaCbQ$uy9-9-$4_L7JnJz9#hD~>6uUCyMzzd1MBZWxs$k$0U4Hr0 z!Jci^it`Xswa}d4xC1(eKMRV!L*PVAWf%}{MU-}wy^(lq6*SDgdCIg~zY2JO)UrKBW@H4d+R( z5FY_=+!jD;p#Kl*e6w42!n^I>pH`XfPGEf4EDg{}02=gv7+>Xsc8gA=3Pj!g?D^cH zkQ>U7^>&+JRQ~4sjuQ)?Nx2|-%w5nIEwNZso}a2<0Ke`SH+$Y%atz(vTdv%Pv2WaJ zf_c}qb!2~Z1YFEBW5zh4B|^8h%4M?fIbh9ojeG(OZ7pIS8>+E9f1V?teFSU$wyef` z&wS81&C&ed6gxCPcS&^6WX{hvPpEE^4!-l!C0xVKo~W4vgIS5pXx9W^>%K_lgehN7 z1%!=JEKxBIRddHg|FLU6rp+5BgWh4n>U;rb)it~Waj+`nU{8e~ss^vta#%L_V@JEx zjX6`S(R)dJerl?Jw+Qd&sG;N#j0loMNW_J2szMIP_9g5S}DAYuUH$ zBQBI=KSjw^S^SxQQC;iz((C)7INa`4KHLPp@{^?}PprwG2*7pysICeTr&n9b(8Gk(F;u(QKUvIW|?l;eP zHi7A5!INeCLvL&zA>*3Og$mBEam2VME9s$bC&+n&jR&!?iJushcx4?-nmpV>@VR18 zXXf*1G7_ii{G)22pUDnXX)f$e9#?nV%6q^uX8`QN-Id?eYChOYtOEgmUS=b(4>YV0JFNHEqGEUxewVeaOUOHzz=wkwU3}zkbmda=aCEwRPwTwCH7eX}(C=LnIL*eyNojbxZYbA@a#txES#cjCR);Ek)Eo zd4TX=wm@v}{koLu!B%}9ng{|`I%m<_e+Of5tKq)udy$$YF}ql=S4IWhb1I$<)X$Ab zw`CFxvI5t8avr%pT2SQABJk0WFG=d6PW5NE_%YdJ!Ozh-1Vi1aD*cCE{%W5D9JjJi zbsjnA*7?UQZn0tLh;|5nBuXyP9$E`Rwwnjae4X&X*|v!aZGom89Je~MnloZNDr~dN zllc^Vnhwu}Ve}t7xB{rnXYHjA+}&eYh8LV@dVx?6M3fm9w z28tJ(M*$+z5y0~>kl>>=*3QWbL;91HYGG}2}*Qn&1}r@>{4Slyq`jVI#s+|dbTrdV(uj*NJ7 z9s_H}Sx?5b8U9=q?)Sz2rSKcqV^I~RLIKavT(RQg?@T|X=8tAvA_L*!m4wp67hP~Qiq z_5{hAiMXx7LazWf3w+uE&LVXGoK&;-DN*PYBezyY{zl{E;fQTqK$nF)~)_aX<)Fa+H;cdUOXqawra=9}wY?M-q3S$DyV+$Q&R&*#d2-Ds4yt#6oD ztx+%casmd*DP@oQM8?R)DoVu_TutqnQD$jZkx1%fdL`jB2nmZZu(KsTo}&@X-hh}L z)qf|xx{ z8k1!Svjngb_b{5hrHfFkF`HzkHaHmYhE5ODHY?=o(Wb?*bQ0WxGchSw^+I*TG`;z2 z^J>{gTD!>rp}8NWIarsAjL~pQ^UO`naWsU`A*}uVE2h=frufPoqps|q`%(>dLY9E_ zmd&$o3lcS)PedaBpgc&mbAjmWn?8e%@j>k)3`y*}#2oePFyUR7gfSE@-P!{8;Z?Br zH`Ngt6c4H+ujkyDz=#X%aj1nXmHcv{uBJk{EvjRf2qlBKDhDUk@LW|=dbqG1GhYSW z5a4jy+)He@_jos~lVx22*Wwt+Ka4kVf~6>C_0Y297(uL++-_H39mRU5cla$*I_TgD zHZwQaQsn1}j(1i=<)b&!jHDH2 z)la*WlXEbjrvx@1pH2;gQp!^HfSoVkWO2^@{M?Ja(6H}a-LpcK@UXNiOKW_U{QpqZ zZucWg!oXKLMGPN{I&rn|tuZzxemXOmt?1)V4pT2+!6>m0dkSwUlI%=;66AXe{G$^5 z(XJD>v8IjZc$+fr$t{Qts;!(p6iUq=vfK9>l-E=5#iKnL=YAB7{TgF~;=x?_VRrg0 zmWFr!C>yD{>M6&l`b<(&W|S}Z{rk+IQ?9rqrB0bjn0VSjcc%ZIXsa62+%s=EJ9@0y zUwPi#0HfH0XXUU<2potH?z~?FVKXEx1DS|1gwHoJ<_6co_OMs98HhVsnfKwwkDh93 zzB`SfgrK zth;~E8S;Wmv8bGFz>3kunz`D36`f)v3~3pm@(M3{dGu7C8((=|;qTNLUObHm%?G~0 zZ85$&JA7542DI}#+(+kfC^|GluIf%3GGKbwJBq!LXVYK3a&ezq=92jLKd0fF6XSj?K^d=f{3W>#_w;ud2IbUI zx!++~G+bltX>%*J$AyuL=GDhXnWTaNN~pYq6vn)rJgy>~qu<@ET!m_G z24(Rh3$KqZr*0w)9S+}Q`QsH28}xW(uf2Sk%-goYruk-1V9*`pr6*;UXUm^F!M|v9 z-RwueT5vl-AJr)3{6`u%VHMMNK^f}%X6oC2 z-X8KPAQ6R%NY(TSy|Jce9(lAMWIg!+$G&!wN#z5PMDUW*{4H#o0R|+N0CwyNWl{Ym z67qC~x42_g;x<=a3sBg01WW>oF95~Eu2F|Wy9otPYv}cW)I;cuscY~M52c7DGx9y9 z)#eJ|a2D8GR#7rYsF3;r06(t)F6GB3Bk|gSN6qs`_*yNm31Q7SO)?7hTZaL`W0NWx z!>}w;(e1#IpUH0oL(0g{(b;5(d1-dCOS`P9v$DTbZJFSO2Dl$XRbDG^k2tUVv=JSm zLn~`Z=5r;WS$q<_#fR^8muxiB3z9!c3t7)1&ryrFCnbLtcw`!Ii~Zroj=ekGmaN>d z*+IP-l7O|*Er@Y+FCFr-JmV$J#Tf%>M%T9U?|nZ+8Lc*b>XI;j*m^fG?#9!%g|UD2 z&^T^Gb`J;6&S~>RIg#&uWD!*oowqQWlHb3Sr&~`JHclFvR z<M7T3=Q#lb
j`Krek^wrNUHq-nuE8l|J}I$11R}AekP3uIO9q<2Pb&{rn=QRA5jM41_9E9Xp-x8X>G<6J^z3|F` z86zF5bz26A%CH->unC|pvcLQHX{c)Ea?nSu2A~Ij?0x+T&OGQ`2@3*(Ca;0U!z(uSu=&k^0#n6h+;nzW1lr+E?otrtYilBD z7n-i|j?cbIuG3EypZON7d$uL(SPcG04shX%Pp|l{pYyy?Kj(F{QgsHs%}CY_MBvk~ za?|i$J&fYJNjwZ?`sB~Oiw)Q5!z7UV@Oky&; zDkIk~pP?20w|G9c0x#o+W{zGi{B_cD1Cq^B8o08u4Fpr2T$IiB!AdK?o_uj*H9jDrEopAwFuiyPI z9p`680Nc&#UoyKy>ymE#UoA-o{xiW>Y-NI}w=4RVu_0`=*ZK@-gwvD}gxR~JTYNJM zc8?OOq-d-kCH+#Kt?Ez8VLxUlaD9C5ACV4n-OAA;%-&y$uvZ2H`L# zy#{n$x$Le7;?j02%jK@^(3JoE9{OK`mD2ggHFmo*Sy;C_);9aX6+zpJTzH|p0{S$& z9js5TO`m7jkF0Yv^J+NTb5UWHZxXMgt7UgS$(hV7m`m`#5`cMa4X2`TT!`CC%!yC_ z5N(+g9W!=lxamja2{k%r(le!P!LV5KQ|u`I1^X-52L0W@4Gu;CjvX-{jr$8%ly11Z zA(>z%k<5Ae!|PnuCn|7?P3-I7^2*NV+aZ7?H^xUm?dwp_Z0jKs}NSwvjLqEAA zj;vLAiRA93D)L^nZKw&$Bo_j$B-3$opjq`+gNF)nKNxf43v zFEvKr+*O?k9;*;JHo`n?u%(q`nP0F>$#SBu{llWa!@u;&V01ko+r>=_@Dus~Wi-xB zA6j_VH@ew&D>R!mwpO!#05UO|RrQ@b;L_JWFCYlW_p1>;_W@*Y)BJjkE6X4lFUc#* zDWlTn#wF%9^@H%UAsd{Z$_+|Y`F8nifK#~pHN1p zFJR#Fu6%~IUadnV!|25hEg7!^o|Am9QLkV`n^d;dr@Psl<57i1e+JdSbt^r>;I9=} z6`AS^*iV)XII|V@lk~eSaC#T6zJ(@bwbCh|d8Ek0+qkECBu)XhK__z(3}!UPA_Ymm zPesaL#TnRxAPdI8G+jInCR<{)lEoPy#HqL+7z%UyGfiW7d{MB*Tisy#AnCNL+X|MY zQM2s)kgUev3~{owcd8374)oUVJlBy)4GjZ{$@!x2Sq6+cKbf`#stsORa06~ZP02@h zKmH5)G7&G^UHAL%>*afoL%s-f&DjJXj;BDPbe#F7fix{Zs8jGfAEAo#Rfbz0zH~9g z)-v0!8eOcG_bX3-2u^e_RvRR$>56h*)oW&SuNVPC1WePbjKpu6HnbGy&+Z(2Uwyu{ z_k7_?X2)c-tRkU%ZXn?F%myEM_xox{a&N$XNAJLBFOHARXYLls_>Vw2Bb9hCr5Eo} z)45GGSy3_9kO^husBZBz`6pwTYyakMgksvWgov}tPH@|Yw5c4!cFdwuJ2KG?mV$QW zY)jPJf#Z*Vr|dUs-x|(2)wt~=9_%-6rE4;H$P286K^elN3sc*X$QR$;es#K-m}2>tbU4( zT<3`jb>$##*SGUM1A23RTK)TcC3wl}Vdt(+d?(`b(Rv#2ML+o4QP;LGctxIbDc9N( zjZIrH+q<_SCi*P0GX~7ki1E0m{3+?4v3dg<)DsSS>=z?`O9@@Pcdq=CaQke&Tfr@tO#XAVYMAS7&d6G~oA&E>P|KO3}=UlKKKdI`s=c;L+axUF1 zhw7*e1p{;`N~UZkOsH<`$&I%^F8up=y@%BQI^|{gz26_cH|t0*5)xiu=HOhsI$67P0z|dDDlFv7-5Cqt4I{#Z0UZ3Dj}bJcyska#nAc_R?Y@L4#{Iy z##HYIq-!HlO+qxH%*se&#h^+>9llr9N0%{K>w))#VZ;0yUaMm+wr*I+=hqz1?@syf z>;J}Pj%b2sml+?$8IZ8hacX%3D_$kP8q0fS&eOagQO>vYR~pWVUzlGFXtFrRP))O@ z#Wc@aW=F7RbQbk4W>U&ma!Qj_Of4ElfU;;5{HJOR+q7S}D)7@pTQ4^n=XRe@(zQ2N z&GGz%k`4P-$avF3_9ik6whmy=1paNj_;Uf^%-`-~vNHQjI3CEn(CgIl&wG`siCp9E z<&{V=c}o6P*eqDDLM!nLwH!`;sAp6f&;`Ar;;F_-MA5Ktzcii8<|<6l2bG9 z|BhMqraO1JUse_=c3UGM)jQ~Z(%oHKcEIkoNdcGt`}Y2?OJmQ`SZ=iXFkKVbhze== z6+m>A?!5vkWph&jTWrk2^Mf#;iCZW+x_Cg6J%6=xEzdddU7(@T(oWgAlqU)()5fRu zD$-Kg%6IOYrSrPsZ0eQ4JRL%6=*rLcSw)@U=ByJl|Bs`qjBE1k!o=tr-7z{uy1TnW zqy>c0B2v=b-Q7q?r*tEKkQ|)?QW7Fa$NTL4un&A-@Y|mIKIdHL3UcUKr2u#>Idyh& zRJe?1IQbWD77<3av9>KLjDqV!Rz6S z5`&N8>_4lsp*&tfjs%I9ZuVhB9~Nd-W{MDXw~pfxy?K}1)ESe(W)CCC#b>h1Vb-~X z)d`{VFj>vZcG*-%Y)a5p_p$uQn$zIaHRiTJZpM*iBFJ52%*1)_UM2UUS4JZ5N|%}ZjOj=A7Dm+9)Dvq3cEn2bvKhhO_zl@obLj#cRe$%nx=>$xtS z(Sd*Po)O{Ep^2(>&B-6Ch0%Hm0J)jnnV|5PePY_2+Sf6>--3}3p~ls22o5s7tTLyu zlKLi;OX{34*W~FLS=I3mYBKJ4Iczz_L5Iv@-!hQip7LjhOkl3Fj?pd|&P8)OBqPlw zoD$XS*nf`ZrXkEEIVH-?pXVl{2)AUh8_}%N#ZTkSpESB{G(*VNeZYt#iUP_QPl5$VMW>&6u#i zKtZyM38TZd!L|dK+|QCSv|?QAxm7LS@zalvE|BRphq%!5I!uN)=I0fu2RnF(eOa2h0Ls zmUB`h31832({jgSqc2rRH8*^l_<}J@i4p7&fK+T>72?J-x4aXFc1Pa<)7Exl3Id7! zJlN657eQMDN6V0NCOCfv)V#_KjtjcQ7NNazCEoK8LAGk63VAYJ4nZ3EuvzH;(|)}C z#=QQ>NnOeL0SXK$AR1b5jMw4D=J1bW?UzS)VFJ^DyI+0>UI7Oj38@9v3G+Bg+~nU~ zI7}fqUnJ~L1PA0oxmi(~$Tx3ao4~%I>^lIYTf)k09Q%SgHPYySl;K4@f<^DV8n63|rgR_@}Td-Vi#E5E-O%x;4eUQK0#S@kpdI?qGUTc>S_ zh>=!3u0J1fdsND^J2z1Q=Zi&{Ifk+2_d8J@LRtIxFZh$8mf8fc|02u?qtKn#KEhoD zdbS>V{I+iVX-(Q)Bq|g>dFK(@|McDNM|=iKN~Y=Oqw>eyz{f=Lc*U_N9xcH(rSG_u$&2xqz%YQPfz!;<{qQs3LW}Fxfq8kMeYsa>CLXN#Z*=2dbOE!!KI=?ZF-OI&0io?TU%AcW#nF75L8oB^Eg2Jh^Qs? z#4oh|0U7wTw{Bw2-Agq=s8Q%ZLNs~bAFRIqA3|G`3Djah`iA5{;8Xp}zo^}ugREWs z(d1_n2_&>Z8lBYCwsq=(w%a&p6<)nR6-Y^D`r${jWz4mswwOB|k%^*Fs3ltv zy)}PMUl0xnyQmooxrt_QE?#&Ru#F5!BG6~5 zl%~MXm8al@IIBTN7fqcuWxr>;Y|*rs@JR*doHEkTr%V!B{z0P?c9+TpxfxZF;mr6@ zu~HztefMhwng0n>&7_^c!E;Rc-J;fl>L+sRD+8>m@{AzOr6QB&F^+vghz2)7Rg)y7 zk~o_3<`Xl0H_%@@ZT04VDGbN~%FRoM3aXaAj09j<0?&x$KoxBF8!bCzfFwn~1}PMqht{0&!fzU;#5TYap>g8KH$AeWfgX zKrU|h(}ixc$liig05Y+BtR50f*_Edg$eOy?Aw;aQy|PwNv6~aXcUn62L@KlK0WIQm zkOmEIuaYXYDV_UDV-(BCp=|wlgU{F+W&24~M$y_!VUlDmkK*`K`l?r@twX&sRG9#y zQ6LtXm=B$Rg|K4rEvbV%%MGeBoA!KGlJVeo79^gODdAAjY+XacN#_PzMihC%UPrnz zRFztMq|hQr7EAEtcSKL)`gC0mrkkts153l}-aqtc1^#(h)5bOzaT-uVbO%Naj8R(F zg++6_K;@nn z6UFoK-@+SrAnKa>+8Os@O{8p5vH$pb;G5CUL=5|}Bx5m=8sfF!4kh$!Ujvq-_tqVx z?ql;Ir#G?rMviCx1ayW$y4HHgcr+9x(bi2_Mp(T6)fqL=tHmkLcNA$NUpoUujdGAR^2nGDHIyrP1q{P)*jidO}Vw^k(*N({y^X1R7!VU{(x z@y|D{x(1cyDGvot95v#1u=x|86Ufw-_|8de9k)m^QNJO1#nj;jAw2^VVXmcLjBate z0oI5lRxt%v3AoB~Dzd!uc<_`&h&87I!gQIPrOy22E6bqJP_zr^Q~l@dmDh-`C8hhUCEqh#qR_=;-+AwM$9P z!NIW(5C^-TPFM;68bA>IQNMnTnC^f+C7M z4P*B4x4n#Y;u|QeKYm$MRXDXN^sS!#5ieCVP?Dg>TeBWkg$A`{QI5u8$FK+GwyYg3 zX^!F-d;K=^2(grjZvGdNyvNRN#2n18OaU<-|0XGK$ zyU3Q)iR$jq{MlO9LMOlIJ*JgPn7va0q63?}XU_=4>&Xt8g!jxSV2|+> zmb3Kr1oW3`&Sq=v29!0}-|hl~MQ@mwh)zP~FzF(qd0|P#7o) zn6iktEZsW@Jt4X~`2j|7Uc;W1$g=3&m-**=fUh1loc0gTeR_J{PbWk>p#ge zRu!?UNXIDO-hh+zWnX{`*?!u_0pMev9xULv%z5(}7|v8NQLM5pdtE{Zz_MS%puYCC z13mY#V&salsY$w(Z=*wNQr`FMYwlY_e2zwN{^>)=6vBJFD zg(F^hfT!!2e&&nAH1h2w*<`Lc#`DzHomlt3TG#i#7i;06IQ56U74vLdy|+6Yorxm* z!VBEl>IsJjcn=m%RIU(3*7?v;;z~tLJ|Nh)`WFI}lLUkN`}dD_JIK)m#>=wM8T4Ri z7Zg(&0u|`X%d?wPn00FEv&Ek4^4!oW_Aagpj{y(+p=%42=8{QJf3RB0YtE+nWySDe zQmPmU!XGxH?Wn}5XFcj0s?)056$&%PIL#_DzjDYwonT^X^-K~gQ~a(vo8al@Bngsx z&nVk?pt$=}gN=?@l@kg+#8O|Z+z8YCoNENL0`)F?5BwuiVR5EkM4x0v2{6my+rw@J zyGO!g_n3{r{djOoAcOS?|pA!J;uIp?H{0v`T&sMsb-yV zr3Ssbr6q4eSmvr$@RmXt75I_JVN0L||D&4KXkNxasME;&zdyD@Wbx51VyOBhV;GbV z67qJVHQ$I;#3FXsqU9GW!pXvPtS9e-o9U2Ew%mze8~DF%My~I3suqBdyh}N4dbjl; zAr699>_)Lq;>J-tbjDx%6G$+s8t2`wLzD#15HUxtPXumYx<8`11tp*Qu~R<^=#4BJ z&FEs4A#9`>`=)Z}=Gpyhk~gwD^gSEg{I~Wl5}xJxv-Yo3Z@hAnoG}pe_fJ;(t@oY@^51OgSNr-`PMX$ zPdaAs#%!cQBR2tvNEKB_5)@r+`xS!qdi!T2?Pdec5tTcYnjZk69{`kgsggCSYa#Qu zCjT(Lbq*Dk|1Bn-MOyHjGJe&qL~i=xxAfX@vYdyZpo%>;3m~zu1siV^%%p>i-Smor zaX4W~S=WHK{(52?L(c5-GdmL&M@+9(rH5^?>HX$Tgn(Ruc9(#|+2I$x`?}JMgp^Yv znpLJbZwzjv;`qaO+IPCr0wGpWi)mrov*Y8Kf{GP{(P8{0i|R*jq<>`N>+E=|8yhjl zXJY(Vo(x~*dDk7Z?_eWCgyZ?F1({3(fwX^k=8$G;#Q2CCwX|?>pnhaYA3zr-V!B${ z`4Z~S#*TO|?rtxy(Q5gPV1-ghP4??N+nmN^4V@RLi4Yz6-MiTWr6@t&0W=8vYf3W< zQYZP7wf00Vzn@qL_1?o0W23>3ctZZgj^}a;@H`8*? z=3h*Zr73!Ey4>=fV?r%N)Oh@0dwmjCitF(a+m7cJar~Ajf4Qv^4 z>Q$47;97Zt#toa#0UlWI*R8zY?HxtPGOg|hg$?rzlNh8jvyV`e+Tz=jM(;8W?l4!& zQ%?JC1~bNz;x;z^j<#wXY&HnZ??!=my99Ue5*$d(JbW%9s!ZQzxnxz13<-CuFwR z8ukp%QXIAa;ELK}6xIx4)M~_-(OxlA;of6X=F9y|C5l!VN~L#+55M6YYS#fhveLT7 zbYr8A<9onN3GQg=cjFa!!&WFRGDfw9Tm2uJ)U6EMpN^sT6ki1^60P~g*MTkzR{|u~ zX!TQy$H+}zC@(o!g(R%5u*6NhdO>kdquf?3J0i`mXGR+8Z&wecAY4Nkt!hoJFSN2- zqStm*^wr|58S#5STkK+t-Pg#-E&2wgaQqef z>VO!woZyU$OF~6Nkc0g2=CirqPXto4CV4^vWkp>zDo&rqugza02I~9t^H2BX)YI7Z zKN-c(_d7lP{HgIo^v8Z+l4i9DRJlS##h%1jgkfNXz5OFRoQo;OssNon;B)(nDtZ#V z8-Ga)7Kor&IFcdD75NxZeHSI|P>=o`CFVl%)9rdu@7YSna=R<7*QO84x%Zfu`GtQz zZgp^c!oq^V^VrKRVD1-6ySHLj_-lJ0luG!+wvELia8!j(R$F5e{ZFiwT5-kv?BAUa zNRFI_j-ZDUwOW}qf+U6JcrpTwwsvE+9m{RX_tb5ydJ#iZZY$fEqZR~F-Wv($vgs%T zxbp1RK*y?HTs7Ul>SOo-%uqOiQX8YgH2?iw2#e!qbec))2y%PKHTujEbm z_-iE&ME}v#Cc(fxGEEC{ci3T`*fuSnwpBr}Mew_ml<#$u!bC%MavDzW-eT|&U_deS zy(o!bfSPfUv8-5OcNrz^eOsH(G(UQ5?BO8q+}i7+&icVg3q)E>APP8H#}V-Cyurw%_&MM`fn;Nq8xV4h{XR{rTi5ZdxR|_pdJWA_Zh>85 zorF0`A|`DhtysmPa792?{JXS*RtV5ssY2XP`zr{7Itgi6i!td{f7A?DE0c-5<;IuA z;_(q>@Jw-4glf-0XEE~(`ELXzqT+ zGl2NAjweRBvTn8lr5>(NeHF}~zpTk`*H}EU!zuN^yetm)@b3T|a*WK)CGD3=tN)Kn zz*CYQd>FXL>_ba`VPeBCKbU5`$A>;W>c!E0Zlm<|_Td>(tUf-$9*Ri1isW4Ul}VO42@A3TfAYUM-Y%FuGAeLIHJRtZth`W~4K#N( zln)_-ma}5Y%Ifz8Fn&g@2S<|08VjqY1CyRC1IqTu(gT1bB0B!Aj7t} zX41qPSaY$gqQIqhvigpwj7&3!?LsA`QOnZ;u`r5wMv9TmAt)7q+s=@doonl~t4a5CMKWuCCEs z{rC0j*FQiMO(B4RrF!DHPrC7P=W8b3w?)=7XVqy}aAas3eXh*V;U;=diH@eqIU3=0 zXBjmbwsaJha|u}H1z){+_5FK{htV6{;jot4C&?)LXEnvk;aGzPLJwe4ksZg0iWwow zeX1|#Ty(({<-TH=drhE-)$D|rE1zZ8|KDmF1p$GH3C6HZYAB4rYOsV9=8uj=R%H{J6{RwS)OnQ-g21y z>gZ;DuUzHmkhWen^fdof3|KWQ>nd1h5?<9x`{>nFf$}1mpt0`7)F)31I4$Wq>DT; z_A{uo%J^c}Kha>Nf-LWJF#^X5=GF*l zcSNn7tJzlOmxeO}G6LCb3b(8*0@&KFs>{h7nx0ATP{ zOsZNc2+S!cgY_A+450wvK5@Bqi zWdy)lUPIS1;3P}9du*jkAn1p5qkpF%r2!fTjjr>S>+8>F%B06miS_afS1O8Pv0@2T z5PfmC2BeW6(ZkA)L(dSV2qY1rujEn)Gjx(o2_POvYZO_hC$;X?u%gwcD#P!BvhA`C z?5ICRyfH9HNHVfMQHv<%%zzc6=j>Xd)E*lc`lug?xJ>bGWA?}&*HJ=Uu^|UUGM-Hv6W23vHwELc&jV{DOG;;I+C#Q;xC=f707~9qT&@*591G4 z?nUy)o6{(c=1TMCeP;=yNOHZ zz94@g+Ao%O&#Qww`Cve(4EX$RQxQFWNvjLuPDvPx%V-lP+th^c)3;3QlS<2%jv)TF zQDp+>j4DpKG?XrAu2#jT9T8#SQm8wxqqCx{$v6hD<{Eq;c9fORgOXNOUi>kguM40R zb}gRLKj+n>t+bjCk4nA{Vpd4Bv|aSda_Ij;5EK8Wi>=s3k%vxYk(xZ1ES1=YK1|-A z5nPg`9a0GUeR6VaT*A{GtFFZ6yQO%95+hp=8_g)63`3M0C#i|l9ychNw{(@*O{6qF_9`~_dR8wPa za2f%R;#tQoE!!k6bHq@=-jo!k1s)l=^1`@+s{05yT;#a7z!oaM4$j#%w<$PlfL zITA)+b&-eIMF;Wr`(VU{4OzwQqIfXPK`jB_$7oh4N-`q5k;IFs6V7b+q7bL6)`k}) zA3Fj`>wTZW$yJz6{E3C;t+v+Jc3L7-nt{gg`fuV%A;u@5+6CDhRLID-Wl=gS4L>92 zdxyF}2vgL!;*ph@J4WbFEyhaS$Q|7t@EH1SRjn#N2dA2_OMe-k8@9(bO*jkfzU|x#;g0S=sH#EvGRB71T zDdU$?&JKJXNdaG4j_zLQxY^=%kynnioWqcEs*tm1@Gc0P`dqtgl&^F)4Cu`_uIZq`XC%Q;Ypm8&&eiQA3l zK29jRK$wt5_2|4{#?qh5+HIuWsa|Di^yT}t;wBH>s!&u*;o-}STJiSe#3y~hzn8_4 zC^j6Ntau}F!R^bfCxEfLT?|G_N%_X-iR?C?eM|5tN}y|!hEe`I?<E>avN;G2t9aiMP8B5Y7R{vIlXFy{9B%;MCJg9{d$u@ zGQVo!8-~*3op`af0UQ`d0N4YnA2&O$$0^A})sDth1J+yY=TDYME&O=;9w++Zs{htM zFZ5a6oNciD$^o!lc}oECaN6kncPohODN9@CfGj4ZR}EHFqnR2y!RosvS22QQ2B}_r z>K^Es*`F=O_$_u~D{m^e_}FkRWM=;1ZGIM^3-#4HFQtVZ?@(oD_32&YT1=S7-yAJc z{gIZ3>pfPV5Lir@dgYXcw%2aWvh}#MB7aqpS!(_|hQkkCQ+Yr2w_O3uwPh4Zc!32y4moA6Js`@U;c2N|zQ6ws!t%>WLUloCH-78T|Lj!9Hw9aAv$LOSfiRMj%K( zmYVDlT@__m@xHo%n-vsnUc8U{7giQ8Gb5TM&h&6tImwK@&x6o<&p!Gqj@@BAYDcOo zxVT!KneemFV#wX+ZD>PNlk8OXk6fX`vAArxeN{Gqv-F$0w=EwubfjCi0NIk<~6c$d=*nfRM%TcW>Sf%KNE4l5%|yCFv8Jss5sNBP%!OJ`n;z zFva|GB(&=!Wr;E-hqJSTNOfuLU%3qj7^e7OwXY0mt9VMB)tp-Cd8n!7O**bdQV%&| z6uW0jn@Y#oS2lXsq{z+t;o4tYNIav(>uKO(#or;WjrLXr{f7N(5csF2erA=RLw zT$|P_cSug3i_-cqV(X~Zzzx;d&&aqZ3mYH8?nza<1BPgGxG`j z3K?F+D5sRd`5;cy+}*9NYVSFizx#crjYQUy*St#?6W%WTpG(zoF-jTDGuOr`b!{y* zO1b$bf-pb>=ub-;T3SBAA}k{Nn7`{;=Vq$@$Tp5)`KOS&Z?Hw~7@-M?kFx4AtQ|>1 z+wt{l^$4y#l7K3QuKcTzJtX$%62%ybo=d|%F8zcrkQgd6OXJrHW}q1Md?^mDXhcJD zI084?S}i9#>b$fHy;>kbhK1~74*g@gFbEf8zF#)U!&WgY!`;0Z_<-&ReuOz81s8uO z^)jD#Oij$Hlp`c?`dCt4C$?U7d-@|%MmChu*R_QtQ@wK_6?^fA#A;ARl&7Q7 zJi}CZT!uIq_rGvP6S>KgvSAAG#GKa);tY(;nIX6|C=S(lncO+AW^)EhntozA#wDw9 z^#BWp&ZrA-Ki%A5C0hS9c&7Va-W?FW6<~hTxs=ZfP~DtW*z(hUZ#3HhLc_>F^!}Y4 z`qEkGKCTaZRbJ=S6AQGgiA@9JUx5#jABDdiZk?OW`d7im2u^$ z&x(6i@#rpCr6AKWWjojRK_P;yC?Dw$HoyCn1kiR6y}s3?le_SU)|VfN4b0b&kCOq? z$LPQmh2neIqB2&+wi7Bd0S-U4%CqEky9d}@P)r9uM+A{NF>qtMM%8NShsEUb6+<)L2WyY5tR|LpcchTi6p3A zBJ1mk;R=R3wm8xmaOhw$8U_ zI32Jq@_t;b0i|U4TWE`ubARMOM6np_Vvt_jR{;Tc2 zh<6od6FUby@A3j~@m?Teo+nuvOfN9*&;_fM@rXDNqvF$WqDhS$29dg(*|StCT9_gaasT@^XtJ5#^^dEiv)gnYi#6lh?w9^h^hq%kl~w75_nB?Tf@2%jQPK zPAE6q*o?|t(i$_i)FF}O6hj@O*fm){?e~#oTA|D5T<{YW=|)ymT`3=-ix8%HjF*T= zi4-DC+Y0X&Zdu3F{WdZ)`vp(n?7p1JjnC48+50&=$6MT&TkHVP?|nockaje78*Xun zQUEM#2tRU;VItG+%kzVLZ_a)tzT76-_4NU6KFZ?}g+mV=-QAO0&uf9Xj=;H3%WeV& z*W_)e)Di$Y!2)FS>yjTrV&cQ2ISEYY=oWPETR!clz43K8l~{(Vj`t7?(^A)95|~V* z&t&F#E0lDB6=RQogjZV;MuBy3VB7eE6g(3<9h%~Ch`WE^E5^n$`{=#<{DIcurJQ!Y~L8Zs|~VAAS3MkbK{? zGJ6>$E7p`M6%1Y@Kex2C9PV@t-mp+BA}F(TnSN00|<+EY1 zs=W0_-U1B_Fm1AL>NbUN3u}41#Ah+%GTYSl_>7FVxz|?|c~}P-L%c?)O0o@EmgS+hWl$2|zsze{a)54v{&1byGzh%wI{dGQ$j_c`{vK zNPn9t7?U-`kiNV;uBxUr?kIRSP7S1q#Hetrq2pKQAj#F#VmbU9b+goKx==AOTk;>` z-!>v?boI2T{tuo;2k(ts9pm&If29^aGQxpAxZe~{SH*5L&<#jjfdMmdTC*kUrLlX! zr%gEa12O*Vj_r_tsE^>P!?`(vt$$`){|~8NZIh^5;vb`8p{V!y;b>%JB)qdm{cK|i z1~D=m9ciaIgoB;csmBEWQ(QV<^}64W*sTerYaVp&BXPz4P>7Iv_STt5H+6EYAFI*I z5h)rYWdyvYPd8bC_D%n0gNL-cI$f9j;riU}28)Aeq$E^fvJQ}F9HDz!*#300OJm)0k(cS9ED5 zc-`4;xohl#Op(FCfsMXmov^C_OxS3jybR98|FL}brl#l##Gk9iAZ<`0FHcdZEMLYW z&`-z7zZIkm9eW-6YM2OvXBD$jlkJJURSJDBSif+P>|H}=bczVY;=uOI5_z_^U~lyF z>?4Edx{mi$cD>&(4xn!+e796*wwE_9;tr_0FH@!NQpK;At+^hIS`Fa?Wx&2&Ktz4u z({CleS{4fUUD6)#yZyG+;z6Lzbt_<OE}6#BPs@9IJ#cij$?zP+%{ptHu+rfM+Dvjyg4c z&h8F`T_?gp0x2d@@n)`qj_=t}(j5rV1U97RWE^xb_KdSNnZsPto7E{WN8El;kD>A2Mhw_t2?!aZ@r?t3+9Wu>So~X5 z5|A6yHu7!KzFg2=QubX?KJIWm@2FUx^-($0`rS=f?9UfI^FQ32A0#W${8S3qQ|dUX z$n5}f8{Qfli`s_Y0;B!P@&bv>dw@c`5335zTYa&0*bO!YZ?t{sQBo8-EWAo#?VQ8OOxym2qDToi{Di zs;bEI$J5UT#bS~wbn;ew5kwHdI!R#En=t)28_u6QP0!CznVr+@`!~0A^91tA?9MVp z4iX*(Qzk@K+vRa{3#JPeeJfW^An)(}GkM}VWO>{IN&Y}U*#`Yupbx}wy7G0Sg2tAZ zHKS1a95+!=A^A9*0)H9=i z)$;FP8-zc%${2`#J3#OicO_xu-&}vsub>LnlK-mA>2!r`wAQBnMGsC7BYtB#u(PxC zb!JMOrWa$Fa?kb6vVQuSOIJJqMJDC(!7m-)HKSwUSeuULe<=5OoA@FOLZy`KCdEN0BIoR0>NrKSvA73;*oxA{jY`Q;BU9EeuRz)ioj|J9l`R5)wrJ^f`f9Dt z7stiNu8$YjTSp2+{8 z#s()yja`B6_foa~cJ)1Uu{eo-U?lm`YUtAUw5j-juC^UO&&)xPpuAP5%49xv56yWsAKexMyd=&A^ z0KEucyeg$%0q_td4qRMuTvIP;#r792c}k!|wQ>~Vk;@P1_{ZgPRr;=Bvvol>DJrHD zdpg#4+}6${mJnU03YOxmyTK@i=%|RUJPxJ0dL9_`?^isB$Tp4!Lx$~cg=$Aek01oP zYG1iiP%*%jZ48NS`H9;K$!X}T%Qi(>7fB_ONTh1k*t33ws*U-dySD3Pf@~3^G5sT> z?vTNA>Lkk5%~2LP!QbDQ1=?NzK$-l&1_~jy!Wihr(_b&1F~C~prw6u2+KSe!$web+ zm=!9`yQ7#Kl9IMbaubW^a^Ya3`rev3dV3 zYvm~M$Y*H^p1qNPmtZZ)J4X0$9(d{ctnq)|3m|lEZfN)uV-o>9$Z(xsmU(^kU$|<# z@4@TkHP8`>)peZ%m4a_td!cxr9f(`o_k=chsaL0DpI`jxJVx#K;?+`L&J!C^C&y|*e!<}~@ ziQlX0!CSf@;K1W0uhMo|PnTlqV_E7OL!c|ICoKRj#Uql# z#&TY89v>Pm)i$uBKiTZbg#!e%4~?|D01vxwiYe3dZ%pjzg=L-8drTbBRz}5k5m9ax5$LQDR3Hhb2Uv2-@Lg? zx40vo68-%Om|a9KDcnlz*4p5C6Yz5jpA><2boQ<}0UC!*;m7g*9ova-Z}7&+zX!Au z=vs?D+S(-edE1pND2?5+89H$$X?UV%F={#uJ7pjn-Wt%)=3mI=PTsdKyGVE!>n}B^ zk?naFEJspe*ef^~6`F2`fDEcBS!HBu?9k*HXcv(vQb#aZ7^G3B`DR?`6mmWz+FidP zW;A$%nkD;ATO50_S2sNi3DhMSoE;|XsG#`VJQQ2^-&a?ACsFWvK^7}(ycRFLJOln> zHEimn6lUr16k8$DKT692V* zMEPq6^38VjC~Nm%{oLDSU;1YkXD4hQ5O9)!+4v8z&<;Gf|6P9o*h7o#JcwL9f1KhQ zTyM-^4>)r#{6DhTcPZ941bFFYSZ{(W+5NXJfn?i1+0%XzTYz)dfk3?v4ym~}B-8ve zTdtt<&fP)bK`R?uh_Sb~PGcTNW
Sc?tHW7@@t5Q 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

*D@;w6x^dM1B3^&Xwt>gspw@QBo4BW+AR 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 HR-yj`2o2?M literal 0 HcmV?d00001 From beb188c9d51cd9501f076884cee2ab66500e6116 Mon Sep 17 00:00:00 2001 From: riley-ball Date: Sun, 22 Oct 2023 17:03:39 +1000 Subject: [PATCH 19/45] added timestr variable for saving images and modified to save to output folder instead of plotting --- .../ImprovedUNet-ISIC2018-45293915/train.py | 87 +++++++++++++++---- 1 file changed, 70 insertions(+), 17 deletions(-) diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/train.py b/recognition/ImprovedUNet-ISIC2018-45293915/train.py index f1adec7b7..f0bca2512 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/train.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/train.py @@ -5,12 +5,18 @@ import matplotlib.pyplot as plt from itertools import islice import math +from keras.callbacks import Callback +import time import modules as layers from dataset import pre_process_data +# string modifier for saving output files based on time +timestr = time.strftime("%Y%m%d-%H%M%S") +output_dir = "output" + # Constants related to training -EPOCHS = 10 +EPOCHS = 5 LEARNING_RATE = 0.0005 BATCH_SIZE = 2 # set the batch_size IMAGE_HEIGHT = 512 # the height input images are scaled to @@ -20,7 +26,19 @@ STEPS_PER_EPOCH_TEST = math.floor(519 / BATCH_SIZE) NUMBER_SHOW_TEST_PREDICTIONS = 3 -# Define your dice_coefficient, dice_loss, and other functions here +# Define a callback to calculate Dice coefficient after each epoch +class DiceCoefficientCallback(Callback): + def __init__(self, test_gen, steps_per_epoch_test): + self.test_gen = test_gen + self.steps_per_epoch_test = steps_per_epoch_test + self.dice_coefficients = [] + + def on_epoch_end(self, epoch, logs=None): + test_loss, test_accuracy, test_dice = \ + self.model.evaluate(self.test_gen, steps=self.steps_per_epoch_test, verbose=0, use_multiprocessing=False) + self.dice_coefficients.append(test_dice) + print(f"Epoch {epoch + 1} - Test Dice Coefficient: {test_dice:.4f}") + # Plot the accuracy and loss curves of model training. def plot_accuracy_loss(track): @@ -30,7 +48,17 @@ def plot_accuracy_loss(track): plt.title('Loss & Accuracy Curves') plt.xlabel('Epoch') plt.legend(['Accuracy', 'Loss']) - plt.show() + + # Generate a unique filename based on the current date and time + now = datetime.datetime.now() + timestr = now.strftime("%Y%m%d-%H%M%S") + filename = os.path.join(output_dir, f"accuracy_loss_plot_{timestr}.png") + + # Save the plot to the output folder + plt.savefig(filename, bbox_inches='tight', pad_inches=0.1) + plt.close() + + print(f"Accuracy and loss plot saved as '{filename}'.") # Metric for how similar two sets (prediction vs truth) are. @@ -73,10 +101,8 @@ def train_model_check_accuracy(train_gen, test_gen): # Test and visualize model predictions with a set amount of test inputs. def test_visualise_model_predictions(model, test_gen): - print(model) - print(test_gen) test_range = np.arange(0, stop=NUMBER_SHOW_TEST_PREDICTIONS, step=1) - figure, axes = plt.subplots(NUMBER_SHOW_TEST_PREDICTIONS, 3) + for i in test_range: current = next(islice(test_gen, i, None)) image_input = current[0] # Image tensor @@ -87,17 +113,33 @@ def test_visualise_model_predictions(model, test_gen): probabilities = keras.preprocessing.image.img_to_array(test_pred) test_dice = dice_coefficient(truth, test_pred, axis=None) - axes[i][0].title.set_text('Input') - axes[i][0].imshow(original, vmin=0.0, vmax=1.0) - axes[i][0].set_axis_off() - axes[i][1].title.set_text('Output (DSC: ' + str(test_dice.numpy()) + ")") - axes[i][1].imshow(probabilities, cmap='gray', vmin=0.0, vmax=1.0) - axes[i][1].set_axis_off() - axes[i][2].title.set_text('Ground Truth') - axes[i][2].imshow(truth, cmap='gray', vmin=0.0, vmax=1.0) - axes[i][2].set_axis_off() - plt.axis('off') - plt.show() + # Create a unique filename for each visualization + filename = os.path.join(output_dir, f"visualization_{i}_{timestr}.png") + + # Create a subplot for the visualization + figure, axes = plt.subplots(1, 3) + + # Plot and save the input image + axes[0].title.set_text('Input') + axes[0].imshow(original, vmin=0.0, vmax=1.0) + axes[0].set_axis_off() + + # Plot and save the model's output + axes[1].title.set_text('Output (DSC: ' + str(test_dice.numpy()) + ")") + axes[1].imshow(probabilities, cmap='gray', vmin=0.0, vmax=1.0) + axes[1].set_axis_off() + + # Plot and save the ground truth + axes[2].title.set_text('Ground Truth') + axes[2].imshow(truth, cmap='gray', vmin=0.0, vmax=1.0) + axes[2].set_axis_off() + + # Save the visualization to the output folder + plt.axis('off') + plt.savefig(filename, bbox_inches='tight', pad_inches=0.1) + plt.close() + + print("Visualizations saved in the 'output' folder.") # Run the test driver. @@ -112,6 +154,17 @@ def main(): print("\nVISUALISING PREDICTIONS") test_visualise_model_predictions(model, test_gen) + # Initialize the callback for Dice coefficient + dice_coefficient_callback = DiceCoefficientCallback(test_gen, STEPS_PER_EPOCH_TEST) + + print("\nPLOTTING DICE COEFFICIENT") + plt.figure() + plt.plot(dice_coefficient_callback.dice_coefficients) + plt.title('Dice Coefficient') + plt.xlabel('Epoch') + plt.ylabel('Dice Coefficient') + plt.show() + print("COMPLETED") return 0 From c50270fabf43d4a807f1152cd50f468b92afd579 Mon Sep 17 00:00:00 2001 From: riley-ball Date: Sun, 22 Oct 2023 19:19:27 +1000 Subject: [PATCH 20/45] added .keras files to .gitignore --- recognition/ImprovedUNet-ISIC2018-45293915/.gitignore | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/.gitignore b/recognition/ImprovedUNet-ISIC2018-45293915/.gitignore index 73380c636..c4683c3ed 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/.gitignore +++ b/recognition/ImprovedUNet-ISIC2018-45293915/.gitignore @@ -163,4 +163,7 @@ cython_debug/ /datasets # modelenv environment folder -/modelenv \ No newline at end of file +/modelenv + +# .keras files +.keras/ \ No newline at end of file From 936560b4db441289a521baa6bd36cccd0a0ec1e4 Mon Sep 17 00:00:00 2001 From: riley-ball Date: Sun, 22 Oct 2023 19:20:10 +1000 Subject: [PATCH 21/45] added .keras files to .gitignore for real this time --- recognition/ImprovedUNet-ISIC2018-45293915/.gitignore | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/.gitignore b/recognition/ImprovedUNet-ISIC2018-45293915/.gitignore index c4683c3ed..adc416571 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/.gitignore +++ b/recognition/ImprovedUNet-ISIC2018-45293915/.gitignore @@ -166,4 +166,4 @@ cython_debug/ /modelenv # .keras files -.keras/ \ No newline at end of file +*.keras \ No newline at end of file From c3fa48747d574f9a9ed709031f6ca1ee3b84f0bd Mon Sep 17 00:00:00 2001 From: riley-ball Date: Sun, 22 Oct 2023 19:22:04 +1000 Subject: [PATCH 22/45] added dice coefficient callback and plotting --- .../ImprovedUNet-ISIC2018-45293915/train.py | 48 +++++++++++-------- 1 file changed, 28 insertions(+), 20 deletions(-) diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/train.py b/recognition/ImprovedUNet-ISIC2018-45293915/train.py index f0bca2512..5e72abd85 100644 --- a/recognition/ImprovedUNet-ISIC2018-45293915/train.py +++ b/recognition/ImprovedUNet-ISIC2018-45293915/train.py @@ -16,7 +16,7 @@ output_dir = "output" # Constants related to training -EPOCHS = 5 +EPOCHS = 2 LEARNING_RATE = 0.0005 BATCH_SIZE = 2 # set the batch_size IMAGE_HEIGHT = 512 # the height input images are scaled to @@ -49,9 +49,7 @@ def plot_accuracy_loss(track): plt.xlabel('Epoch') plt.legend(['Accuracy', 'Loss']) - # Generate a unique filename based on the current date and time - now = datetime.datetime.now() - timestr = now.strftime("%Y%m%d-%H%M%S") + # Generate a unique filename based on the current date and tim filename = os.path.join(output_dir, f"accuracy_loss_plot_{timestr}.png") # Save the plot to the output folder @@ -76,20 +74,37 @@ def dice_loss(truth, pred): return 1.0 - dice_coefficient(truth, pred) -# Compile and train the model, evaluate test loss and accuracy. +# Plot the dice coefficient curve +def plot_dice_coefficient(dice_history): + plt.figure(1) + plt.plot(dice_history) + plt.title('Dice Coefficient Curve') + plt.xlabel('Epoch') + plt.ylabel('Dice Coefficient') + plt.show() + + + def train_model_check_accuracy(train_gen, test_gen): model = layers.improved_unet(IMAGE_WIDTH, IMAGE_HEIGHT, CHANNELS) model.summary() + + # Define the DiceCoefficientCallback + dice_coefficient_callback = DiceCoefficientCallback(test_gen, STEPS_PER_EPOCH_TEST) + model.compile(optimizer=keras.optimizers.Adam(LEARNING_RATE), loss=dice_loss, metrics=['accuracy', dice_coefficient]) + track = model.fit( train_gen, steps_per_epoch=STEPS_PER_EPOCH_TRAIN, epochs=EPOCHS, shuffle=True, verbose=1, - use_multiprocessing=False) - plot_accuracy_loss(track) + use_multiprocessing=False, + callbacks=[dice_coefficient_callback]) # Add the callback here + + plot_accuracy_loss(track) # Plot accuracy and loss curves print("\nEvaluating test images...") test_loss, test_accuracy, test_dice = \ @@ -97,7 +112,9 @@ def train_model_check_accuracy(train_gen, test_gen): print("Test Accuracy: " + str(test_accuracy)) print("Test Loss: " + str(test_loss)) print("Test DSC: " + str(test_dice) + "\n") - return model + + return model, track.history['dice_coefficient'] + # Test and visualize model predictions with a set amount of test inputs. def test_visualise_model_predictions(model, test_gen): @@ -147,23 +164,14 @@ def main(): print("\nPREPROCESSING IMAGES") train_gen, test_gen = pre_process_data() print("\nTRAINING MODEL") - model = train_model_check_accuracy(train_gen, test_gen) + model, dice_history = train_model_check_accuracy(train_gen, test_gen) # Save the trained model to a file print("\nSAVING MODEL") model.save("my_model.keras") print("\nVISUALISING PREDICTIONS") test_visualise_model_predictions(model, test_gen) - - # Initialize the callback for Dice coefficient - dice_coefficient_callback = DiceCoefficientCallback(test_gen, STEPS_PER_EPOCH_TEST) - - print("\nPLOTTING DICE COEFFICIENT") - plt.figure() - plt.plot(dice_coefficient_callback.dice_coefficients) - plt.title('Dice Coefficient') - plt.xlabel('Epoch') - plt.ylabel('Dice Coefficient') - plt.show() + # Plot Dice coefficient + plot_dice_coefficient(dice_history) print("COMPLETED") return 0 From 81ac1955b02ba21efd674033afc6e231a91b22ed Mon Sep 17 00:00:00 2001 From: riley-ball Date: Sun, 22 Oct 2023 19:29:52 +1000 Subject: [PATCH 23/45] added output folder --- .../accuracy_loss_plot_20231022-180008.png | Bin 0 -> 22448 bytes .../accuracy_loss_plot_20231022-190308.png | Bin 0 -> 23727 bytes .../output/visualization_0_20231022-180008.png | Bin 0 -> 46252 bytes .../output/visualization_0_20231022-190308.png | Bin 0 -> 58148 bytes .../output/visualization_1_20231022-180008.png | Bin 0 -> 78724 bytes .../output/visualization_1_20231022-190308.png | Bin 0 -> 59300 bytes .../output/visualization_2_20231022-180008.png | Bin 0 -> 60675 bytes .../output/visualization_2_20231022-190308.png | Bin 0 -> 57326 bytes 8 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/output/accuracy_loss_plot_20231022-180008.png create mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/output/accuracy_loss_plot_20231022-190308.png create mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/output/visualization_0_20231022-180008.png create mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/output/visualization_0_20231022-190308.png create mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/output/visualization_1_20231022-180008.png create mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/output/visualization_1_20231022-190308.png create mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/output/visualization_2_20231022-180008.png create mode 100644 recognition/ImprovedUNet-ISIC2018-45293915/output/visualization_2_20231022-190308.png diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/output/accuracy_loss_plot_20231022-180008.png b/recognition/ImprovedUNet-ISIC2018-45293915/output/accuracy_loss_plot_20231022-180008.png new file mode 100644 index 0000000000000000000000000000000000000000..14a8d91076cd42a15baf9c5c71c83a63fad9085f GIT binary patch literal 22448 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 literal 0 HcmV?d00001 diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/output/accuracy_loss_plot_20231022-190308.png b/recognition/ImprovedUNet-ISIC2018-45293915/output/accuracy_loss_plot_20231022-190308.png new file mode 100644 index 0000000000000000000000000000000000000000..a84cb11ce80f7d24c6b97640f8854abf03716a78 GIT binary patch literal 23727 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 literal 0 HcmV?d00001 diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/output/visualization_0_20231022-180008.png b/recognition/ImprovedUNet-ISIC2018-45293915/output/visualization_0_20231022-180008.png new file mode 100644 index 0000000000000000000000000000000000000000..b063fcc34df3fb28aa1612d2485d95cdd0b2af62 GIT binary patch literal 46252 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 literal 0 HcmV?d00001 diff --git a/recognition/ImprovedUNet-ISIC2018-45293915/output/visualization_0_20231022-190308.png b/recognition/ImprovedUNet-ISIC2018-45293915/output/visualization_0_20231022-190308.png new file mode 100644 index 0000000000000000000000000000000000000000..3a2c5679f6711991d41b5aecc224afce863193eb GIT binary patch literal 58148 zcmZU)by!qy)CEdONQ+2FBaL)Qmvl3fAl=PKcQ;7a&>ez=ba#VG4Hvj>D1A)At zGtO{gAK>BdEioc+Ukki0VyB9?oVDa44kWNG7``SL=U&KNc=vJKq)JGZYo4WQ};)PPDKX)9wF4-fSuDM zl*l~I2zY6l={Y%oA7ksq;Do(+y{R)a{Gb0j-AQ|a`0uxzV~%u#%!L2m0K5qBn|F8p zcRlCIFgrT(f4558REpJM``GyP@=h*$CZHI`{k5W;4_XJ*L^Xl%A8b-*Mf}>fkw( z8P0xM4+TDGD(iHY`xylKG1GxU?tNx|?KJ_;uAA{q)psT8e7^6TbQ&Zb?CC+Ea?V