[Elijah Renner, Isabel Beckman | Advisor: Dr. Alberto Quattrini Li]
- Overview
- Dataset Preparation
- Installation
- Training the Model
- Running Inference
- File Structure
- Credits
YOLOcean is a deep learning project for underwater image segmentation using the YOLO framework. It utilizes the SUIM dataset to train and test a YOLO-based segmentation model.
- Access the SUIM dataset from here.
- Download and place the dataset into the
/data
folder. - Unzip
TEST.zip
andtrain_val.zip
archives. - Prepare the data using the script:
sh scripts/prepare_data.sh
- Install all dependencies:
pip install -r requirements.txt
- Edit the settings file:
Set the datasets directory to the current directory:
nano /root/.config/Ultralytics/settings.json
{ "datasets_dir": "." }
Run the training script:
sh scripts/train_model.sh
Run inference using the test script:
python tests/test.py
├── configs/
│ └── config.yaml
├── data/
│ └── SUIM/
│ ├── TEST/
│ │ ├── images/
│ │ └── masks/
│ ├── train_val/
│ │ ├── images/
│ │ └── masks/
│ └── INFO.txt
├── images/
│ └── example.gif
├── notebooks/
│ └── analysis.ipynb
├── outputs/
│ ├── images/
│ ├── labels/
│ ├── logs/
│ ├── models/
│ └── config.yaml
├── runs/
│ └── segment/
│ └── trainXX/
│ ├── weights/
│ ├── metrics and visualizations
├── scripts/
│ ├── evaluate_model.sh
│ ├── prepare_data.sh
│ └── train_model.sh
├── src/
│ ├── __init__.py
│ ├── data_preparation.py
│ ├── evaluation.py
│ ├── inference.py
│ ├── training.py
│ ├── utils.py
│ └── visualization.py
├── tests/
│ ├── test.py
│ └── test_utils.py
├── README.md
├── YOLO.ipynb
├── requirements.txt
├── settings.json
└── model files
- SUIM Dataset: SUIM Dataset
- YOLO Framework: Ultralytics
For any issues or contributions, feel free to open an issue or submit a pull request.