image

Pinniped Detection Model

By Christopher Moon

Scientific Context

Pinnipeds are abundant along the entire west coast, their populations and distributions can tell us about the health of our oceans and coastlines. Studying Pinnipeds is important because they are sentinals of the ocean, they are indicators of a healthy ocean and can help us better understand ecoosystems and fisheries that are critical to many communities.

Model Description

This model detects California Sea Lions, Northern Fur Seals, and Elephant Seals over a veriety of age classes. It is designed to help streamline population counts and help scientists study Pinniped populations. This model uses images from an aerial survey of the California coast by NOAA's Marine Mammal Lab. It uses YOLOv11 as a base model for inferences. Model weights are updated to the most recent model run.

Dataset description

NOAA Marine Mammal Lab Aerial surveys conducted Summer 2024. The images are large aerial images with varying substrates and pinniped species. All images annotated by hand and resized to 640x640 by me. Albumentations are default ones set by Yolov11.

Classes:

  • ZC_non_pup - 1328
  • ZC_male - 86
  • ZC_pup - 540
  • CU_nonpup - 590
  • CU_male - 115
  • CU_pup - 671
  • ESEAL - 5
  • Gull - 182

Before augmentations:

  • 10 images
  • 3325 annotations
  • 8 classes
  • median image ration:8750x5833
  • average image size: 51.04 mp

Model Selection

I used Ultralytics Yolov11 because it was the most up to date Yolo at the time. I used object detectiono because it would allow me to both collect data on population numbers for multiple classes, but it also allows me to see destribtions on specific beaches and landforms. #

Model implementation


model = YOLO('yolon.pt')

#path to Yaml
dataset_config = '/content/Dataset/data.yaml'

#Train the model
results = model.train(
    data=dataset_config,
    epochs=50,
    batch=-1,
    imgsz=640,
    plots=True,
    patience=50,

)


print(results)

Model Assesment

image/png

F1-confidence curves shows us the ideal balance between precision and recall and how that changes with confidence. My model shows decent F1 scores for CU_non_pup and ZC_non_pup around 0.3 confidence but struggles with all of the other classes.

Normalized confusion matrrix

Normalized Confusion Matrix shows the percentage of true predictions against all of the other classes in the dataset. Here we can see that my model has difficulties correctly predicting some of my smaller classes as well as the pups.

Model Use Case

This model is to be used by scientist studying Pinniped populations and destributions on the California Coastline. It could be used to show changing population dynamics between eg. California Sea Lions and Northern Fur Seals. Future use could also be assessing birth rates. This model is still in progress so use is not recomended.

Disclaimer

This repository is a scientific product and is not official communication of the National Oceanic and Atmospheric Administration, or the United States Department of Commerce. All NOAA project content is provided on an ‘as is’ basis and the user assumes responsibility for its use. Any claims against the Department of Commerce or Department of Commerce bureaus stemming from the use of this project will be governed by all applicable Federal law. Any reference to specific commercial products, processes, or services by service mark, trademark, manufacturer, or otherwise, does not constitute or imply their endorsement, recommendation or favoring by the Department of Commerce. The Department of Commerce seal and logo, or the seal and logo of a DOC bureau, shall not be used in any manner to imply endorsement of any commercial product or activity by DOC or the United States Government.

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model is not currently available via any of the supported Inference Providers.
The model cannot be deployed to the HF Inference API: The model has no library tag.

Model tree for OceanCV/Pinniped_Model

Base model

Ultralytics/YOLO11
Finetuned
(31)
this model

Dataset used to train OceanCV/Pinniped_Model