There is a newer version of the record available.

Published February 22, 2025 | Version v1
Model Open

OBSEA fish detector AI model (YOLO)

  • 1. ROR icon Universitat Politècnica de Catalunya
  • 2. Universitat Politecnica de Catalunya

Description

This repository contains an a YOLOv8 xlarge AI model trained to detect fish in underwater pictures.

How to use this model:

  1. Install ultralytics: "pip3 install ultralytics"
  2. Download this model
  3. Run yolo detect from the command-line: yolo detect predict model=yolov8x_21sp_5364img.pt source=<your file>

Training dataset

This model is a A YOLOv8 xlarge network trained with labeled fish images acquired at OBSEA Underwater Observatory (NW Mediterranean sea). The dataset used to train the model is available here. The raw annotations without splits and with several underrepresented classes can be found here.  Some pictures that have been used to train the model (around 10%) could not be shared due to licence conflicts.

Technical details

YOLOv8 xlarge network trained with underwater pictures.

Data preprocessing

Several data augmentation techniques have been used to improve the training using YOLO's built-in data augmentation options. The configuration can be found in args.yaml file.

Data splitting

Data has been randomly splitted in 70% training, 20% validation and 10% test. The splits are already included in the training dataset.

Classes, labels and annotations

The following classes have been used in training: 

  • Chromis chromis:  aphia id 127000
  • Coris julis:  aphia id 126963
  • Dentex dentex:  aphia id 273962
  • Diplodus cervinus:  aphia id 127051
  • Diplodus puntazzo:  aphia id 127052
  • Diplodus sargus:  aphia id 127053
  • Diplodus vulgaris:  aphia id 127054
  • Epinephelus costae:  aphia id 127034
  • Epinephelus marginatus:  aphia id 127036
  • Mullus surmuletus:  aphia id 126986
  • Muraena helena:  aphia id 126303
  • Myliobatidae:  aphia id None None
  • Oblada melanura:  aphia id 1577363
  • Parablennius gattorugine:  aphia id 126770
  • Sarpa salpa:  aphia id 127064
  • Seriola dumerili:  aphia id 126816
  • Serranus cabrilla:  aphia id 127041
  • Sparus aurata:  aphia id 151523
  • Symphodus mediterraneus:  aphia id 273569
  • Chromis chromis (back):  Same as chromis chromis (splitted for training reasons, should be merged after inference)
  • Diver:  scuba diver, used mainly to prevent divers to be detected as fish

Parameters

The training configuration can be found at the args.yaml file

Data sources

Pictures where acquired by several underwater cameras deployed at OBSEA underwater observatory.

Data quality

Images have been manually selected to include as much variety as possible in terms of light conditions and water turbidity.

Image resolution

The resolution of the images in this dataset depends on the camera, it varies from 480x360 px to 2688x1520 px.

Spatial coverage

All pictures where taken at OBSEA underwater observatory, off-the-coast of Vilanova i la Geltrú, Spain. GPS coordinates

 Longitude   Latitude depth
1.75257 41.18212 20 m

Contact information

For further technical inquiries or additional information about the annotated dataset, please contact enoc.martinez@upc.edu

Files

confusion_matrix_normalized.png

Files (125.9 MB)

Name Size Download all
md5:1027db5c27309422e1ec137a6f951fdc
1.9 kB Download
md5:a70a96d34785db4090ca343e4f1c7131
514.9 kB Preview Download
md5:a91f97b9abd79eb4695e2560906f6eb9
347.0 kB Preview Download
md5:22ebc33169fed0e7438ac1e7843804a2
283.9 kB Preview Download
md5:654acef67fa2ab98df85f24349d66329
252.8 kB Preview Download
md5:0875ec0b2582856a791096e00e3e330b
324.3 kB Preview Download
md5:6ce46bb9322c38b850e6e314f96f8468
124.2 MB Download

Additional details

Funding

European Commission
iMagine - Imaging data and services for aquatic science 101058625