This sample implements the 2018 Data Science Bowl challenge.
The goal is to segment individual nuclei in microscopy images.
The nucleus.py
file contains the main parts of the code, and the two Jupyter notebooks
Train a new model starting from ImageNet weights using train
dataset (which is stage1_train
minus validation set)
python3 nucleus.py train --dataset=/path/to/dataset --subset=train --weights=imagenet
Train a new model starting from specific weights file using the full stage1_train
dataset
python3 nucleus.py train --dataset=/path/to/dataset --subset=stage1_train --weights=/path/to/weights.h5
Resume training a model that you had trained earlier
python3 nucleus.py train --dataset=/path/to/dataset --subset=train --weights=last
Generate submission file from stage1_test
images
python3 nucleus.py detect --dataset=/path/to/dataset --subset=stage1_test --weights=<last or /path/to/weights.h5>
Two Jupyter notebooks are provided as well: inspect_nucleus_data.ipynb
and inspect_nucleus_model.ipynb
.
They explore the dataset, run stats on it, and go through the detection process step by step.