A beginner-friendly framework for training, inference, and exporting deep learning models for various computer vision tasks.
- OS: Ubuntu 22.04 LTS
- GPU Driver: Version 550.54.14
- CUDA: Version 12.4
Your dataset should be organized in CSV files with two columns: input_paths and label_paths.
Note: The exact meaning of
input_pathsandlabel_pathsdepends on your task type.
input_paths | label_paths
/path/to/input01.jpg | /path/to/label01.jpg
/path/to/input03.jpg | /path/to/label03.jpg
/path/to/input04.jpg | /path/to/label04.jpg
... | ...
/path/to/input99.jpg | /path/to/label99.jpginput_paths | label_paths
/path/to/input02.jpg | /path/to/label02.jpg
/path/to/input05.jpg | /path/to/label05.jpg
... | ...
/path/to/input98.jpg | /path/to/label98.jpgAll training, inference, and export settings are configured in Python files located in the configs/ directory. Simply edit the relevant configuration file for your task:
python3 main.py --config_path "configs/train_segmentation.py"Run training for your specific task:
python3 main.py --config_path "configs/train_classification.py"python3 main.py --config_path "configs/train_regression.py"python3 main.py --config_path "configs/train_segmentation.py"python3 main.py --config_path "configs/train_landmark.py"python3 main.py --config_path "configs/train_segmentation_regression.py"Alternatively, edit bash_train.sh and run it directly.
Run inference on your trained model:
bash bash_inference.shExport your trained model:
bash bash_export.sh├── configs/ # Task-specific configurations
├── models/ # Model implementations and utilities
│ ├── backbones/ # Pre-trained backbone networks
│ ├── heads/ # Task-specific model heads
│ ├── losses.py # Loss functions
│ ├── metrics.py # Evaluation metrics
│ └── dataloader.py # Data loading utilities
├── tools/ # Training, inference, and export scripts
├── main.py # Entry point
├── bash_train.sh # Training script template
├── bash_inference.sh # Inference script template
└── bash_export.sh # Export script template
- Prepare your dataset in CSV format (see Dataset Setup section)
- Edit configuration file for your task in
configs/ - Run training using the appropriate command
- Run inference with
bash bash_inference.sh - Export model with
bash bash_export.sh