Skip to content

fastyangmh/DeepLabv3Plus

Repository files navigation

DeepLabv3Plus

This repository uses the DeepLabv3Plus architecture for segmentation task and provides training, prediction, prediction GUI, prediction Web GUI, hyperparameters tuning.

Installation

pip install -r requirements.txt

Prepare dataset

Please prepare the dataset according to the following examples.

dataset/
├── classes.txt
├── train
│   ├── image
│   │   ├── image1.png
│   │   ├── image2.png
│   │   └── image3.png
│   └── mask
│       ├── mask1.png
│       ├── mask2.png
│       └── mask3.png
├── val
│   ├── image
│   │   ├── image1.png
│   │   ├── image2.png
│   │   └── image3.png
│   └── mask
│       ├── mask1.png
│       ├── mask2.png
│       └── mask3.png
└── test
    ├── image
    │   ├── image1.png
    │   ├── image2.png
    │   └── image3.png
    └── mask
        ├── mask1.png
        ├── mask2.png
        └── mask3.png

Configuration

This repository provides default configuration which are VOCSegmentation.

All parameters are in the YAML file.

Argparse

You can override parameters by argparse while running.

python main.py --config config.yaml --str_kwargs mode=train #override mode as 100
python main.py --config config.yaml --num_kwargs max_epochs=100 #override training iteration as 100
python main.py --config config.yaml --bool_kwargs early_stopping=False #override early_stopping as False
python main.py --config config.yaml --str_list_kwargs classes=1,2,3 #override classes as 1,2,3
python main.py --config config.yaml --dont_check #don't check configuration

Training

python main.py --config config.yml --str_kwargs mode=train # or you can set train as the value of mode in configuration

Predict

python main.py --config config.yml --str_kwargs mode=predict,root=FILE # predict a file
python main.py --config config.yml --str_kwargs mode=predict,root=DIRECTORY # predict files in the folder

Predict GUI

python main.py --config config.yml --str_kwargs mode=predict_gui    # will create a tkinter window
python main.py --config config.yml --str_kwargs mode=predict_gui --bool_kwargs web_interface=True   #will create a web interface by Gradio

Tuning

python main.py --config config.yaml --str_kwargs mode=tuning    #the hyperparameter space is in the configuration

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages