This repository contains an implementation of ENet to do semantic segmentation on ResortIt dataset containing waste images with different classes of objects. The goal is to train a network with a small size being able to return high pixel accuracy and Miou (mean intersection over unit).
- Download the ResortIT dataset..
- Unzip the
dataset.zip
into the project folder. - Modify the root path of the dataset by changing
__C.DATA.DATA_PATH
inconfig.py
. - Set the
BATCH_SIZES
,TRAIN_MAXEPOCH
andNUM_CLASSES
(binary_segmentation -> 1 ; instance_segmentation -> 5) in config.py - Comment the line 49 on resortit.py to do instance segmentation, otherwise no
- Insert segmentation_type in the main ("binary" or "instance")
- Use
python train.py
command to train the model. train.py
also provides the flexibility of either training the entire model (encoder + decoder) or just the encoder which can be performed by changing__C.TRAIN.STAGE
inconfig.py
.