Mukilan-Krishnakumar / Custom_YOLOv8_Object_Track

The Wildlife Tracker Project is an Object Tracker customized for tracking Wildlife in India. This project is part of a collaborative effort with Weights and Biases to create a beginner friendly introduction to YOLOv8.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Wildlife Tracker 🐘

Custom Wildlife Tracker with YOLOv8, BoTSORT and ByteTrack

Project Showcase

BoTSORT Tracking

Elephant-BoTSORT.mp4

ByteTrack Tracking

Elephant-ByteTrack.mp4

Getting Started

Download and Unzip this repository. Navigate to the repository in terminal and type the following:

conda create -n yolo_env python==3.8

conda activate yolo_env

conda install pytorch torchvision torchaudio -c pytorch

pip install -U ultralytics wandb

pip install supervision==0.3

pip install selenium

These are all the dependencies of the project, navigate to 1_Data_Collection and start running data_collection.py.

Project Description 🌌

The Wildlife Tracker Project is an Object Tracker customized for tracking Wildlife in India. This project is part of a collaborative effort with Weights and Biases to create a beginner friendly introduction to YOLOv8.

It detects and tracks six classes of animals:

Class Animal
0 Tiger 🐯
1 Elephant 🐘
2 Rhinoceros 🦏
3 Bison 🦬
4 Leopard πŸ†
5 Lion 🦁

This project guides you through every step of Object Tracking Pipeline. The pipeline is discuessed briefly:

  1. Data Collection: In the Data Collection step, we use Selenium library to Automate WebScraping and saving animal images.
  2. Data Annotation: We use ModifiedOpenLabeling (by Ivan Goncharov) to Annotate Images and save it using Custom Train Test Split.
  3. Experiment Tracking with W&B: We upload our dataset as wandb.Artifact and visualize our image along with the bounding boxes. Explained in-depth in the blog post (Linked below).
  4. Custom Training YOLOv8: We train YOLOv8 with our Scraped Data. We train and log metrics to wandb
  5. Custom Tracking with YOLOv8: We use the native tracking support provided by ultralytics and track with two SOTA tracking algorithms : BoTSORT and ByteTrack.

It also has interactive exercises to keep you engaged!

Link to the blog post: Blog post is almost done!

Link to the video: Video will be out soon!

Credits

The assets in the Assets folder are all from this amazing free stock photos website called Pexels.

Here are image credits (in no particular order):

  1. Elephant Grasslands - Video by P'MA'
  2. Lion - Photo by Gary Whyte
  3. Elephants Crossing - Video by Rihan Bezuidenhout from Pexels
  4. Bird - Photo by Philippe Donn
  5. DogVid - Video by Free Videos
  6. Apples - Photo by Josh Hild

Also, a huge thanks to the following people and resources:

  1. Ivan Goncharov - ModifiedOpenLabeling
  2. Piotr Skalski and RoboFlow - Supervision

If you have read this far, consider starring the project to show some love. Reach out if you have any questions.

My email: mukilan.git@gmail.com

About

The Wildlife Tracker Project is an Object Tracker customized for tracking Wildlife in India. This project is part of a collaborative effort with Weights and Biases to create a beginner friendly introduction to YOLOv8.

License:Apache License 2.0


Languages

Language:Python 100.0%