Skip to content

African Wildlife Dataset

This dataset showcases four common animal classes typically found in South African nature reserves. It includes images of African wildlife such as buffalo, elephant, rhino, and zebra, providing valuable insights into their characteristics. Essential for training computer vision algorithms, this dataset aids in identifying animals in various habitats, from zoos to forests, and supports wildlife research.

Dataset Structure

The African wildlife objects detection dataset is split into three subsets:

  • Training set: Contains 1052 images, each with corresponding annotations.
  • Validation set: Includes 225 images, each with paired annotations.
  • Testing set: Comprises 227 images, each with paired annotations.


This dataset can be applied in various computer vision tasks such as object detection, object tracking, and research. Specifically, it can be used to train and evaluate models for identifying African wildlife objects in images, which can have applications in wildlife conservation, ecological research, and monitoring efforts in natural reserves and protected areas. Additionally, it can serve as a valuable resource for educational purposes, enabling students and researchers to study and understand the characteristics and behaviors of different animal species.

Dataset YAML

A YAML (Yet Another Markup Language) file defines the dataset configuration, including paths, classes, and other pertinent details. For the African wildlife dataset, the african-wildlife.yaml file is located at


# Ultralytics YOLO 🚀, AGPL-3.0 license
# African-wildlife dataset by Ultralytics
# Documentation:
# Example usage: yolo train data=african-wildlife.yaml
# parent
# ├── ultralytics
# └── datasets
#     └── african-wildlife  ← downloads here (100 MB)

# Train/val/test sets as 1) dir: path/to/imgs, 2) file: path/to/imgs.txt, or 3) list: [path/to/imgs1, path/to/imgs2, ..]
path: ../datasets/african-wildlife # dataset root dir
train: train/images # train images (relative to 'path') 1052 images
val: valid/images # val images (relative to 'path') 225 images
test: test/images # test images (relative to 'path') 227 images

# Classes
  0: buffalo
  1: elephant
  2: rhino
  3: zebra

# Download script/URL (optional)


To train a YOLOv8n model on the African wildlife dataset for 100 epochs with an image size of 640, use the provided code samples. For a comprehensive list of available parameters, refer to the model's Training page.

Train Example

from ultralytics import YOLO

# Load a model
model = YOLO("")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="african-wildlife.yaml", epochs=100, imgsz=640)
# Start training from a pretrained *.pt model
yolo detect train data=african-wildlife.yaml epochs=100 imgsz=640

Inference Example

from ultralytics import YOLO

# Load a model
model = YOLO("path/to/")  # load a brain-tumor fine-tuned model

# Inference using the model
results = model.predict("")
# Start prediction with a finetuned *.pt model
yolo detect predict model='path/to/' imgsz=640 source=""

Sample Images and Annotations

The African wildlife dataset comprises a wide variety of images showcasing diverse animal species and their natural habitats. Below are examples of images from the dataset, each accompanied by its corresponding annotations.

African wildlife dataset sample image

  • Mosaiced Image: Here, we present a training batch consisting of mosaiced dataset images. Mosaicing, a training technique, combines multiple images into one, enriching batch diversity. This method helps enhance the model's ability to generalize across different object sizes, aspect ratios, and contexts.

This example illustrates the variety and complexity of images in the African wildlife dataset, emphasizing the benefits of including mosaicing during the training process.

Citations and Acknowledgments

The dataset has been released available under the AGPL-3.0 License.

Created 2024-03-23, Updated 2024-05-18
Authors: glenn-jocher (1), Burhan-Q (1), RizwanMunawar (1)