Skip to content

YOLOcean: an adaptation of Ultralytics' YOLO to the SUIM dataset.

Notifications You must be signed in to change notification settings

elijahrenner/yolocean

Repository files navigation

yolocean

Project Banner [Elijah Renner, Isabel Beckman | Advisor: Dr. Alberto Quattrini Li]

Table of Contents

  1. Overview
  2. Dataset Preparation
  3. Installation
  4. Training the Model
  5. Running Inference
  6. File Structure
  7. Credits

Overview

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.

Dataset Preparation

  1. Access the SUIM dataset from here.
  2. Download and place the dataset into the /data folder.
  3. Unzip TEST.zip and train_val.zip archives.
  4. Prepare the data using the script:
    sh scripts/prepare_data.sh

Installation

  1. Install all dependencies:
    pip install -r requirements.txt
  2. Edit the settings file:
    nano /root/.config/Ultralytics/settings.json
    Set the datasets directory to the current directory:
    {
      "datasets_dir": "."
    }

Training the Model

Run the training script:

sh scripts/train_model.sh

Running Inference

Run inference using the test script:

python tests/test.py

File Structure

├── 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

Credits


For any issues or contributions, feel free to open an issue or submit a pull request.

About

YOLOcean: an adaptation of Ultralytics' YOLO to the SUIM dataset.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published