Microcrystal facet segmentation algorithm based on U-NET architecture.
The goal of this project is to train an appropriate CNN architecture that is able to perform semantic segmentation of cuprous oxide Cu2O nanocrystal facets.
keras implementation (https://github.com/divamgupta/image-segmentation-keras/)
- python - version 3.6.5
- keras - version 2.3.0
- keras_segmentation
- opencv_python - version 4.2.0.32
- Augmentor - version 0.2.8
Show examples of usage:
from keras_segmentation.models.unet import unet_mini
model = unet_mini(n_classes=4, input_height=96, input_width=96 )
model.train(
train_images = "Dataset/train/",
train_annotations = "Dataset/train_labels/",
checkpoints_path = "Dataset/checkpoints",
val_images = "Dataset/test/",
val_annotations = "Dataset/test_labels/",
epochs=50, validate=True, batch_size=8,
optimizer_name="adam",
gen_use_multiprocessing=True,
auto_resume_checkpoint=False,
val_batch_size=2,
)
List of features ready and TODOs for future development
- Train on 3 different U-NET architecture variants
Project is: finished
CS230 Winter 2020 (http://cs230.stanford.edu/projects_winter_2020/reports/32641590.pdf)