Skip to content

A person tracking implementation for Tello drone based on DJITelloPy and YOLO11n, tested with RoboMaster Tello Talent (RMTT).

Notifications You must be signed in to change notification settings

FallThrive/tello_track

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

tello_track

English | 简体中文

A person tracking implementation for Tello drone based on DJITelloPy and YOLO11n, tested with RoboMaster Tello Talent (RMTT).

Project Structure

tello_track
├── apps/                   # Main application directory
│   ├── key_control.py          # Keyboard control main program
│   ├── joy_control.py          # Joystick control main program
│   ├── seg_track.py            # YOLOv11n-seg tracking
│   └── pose_track.py           # YOLOv11n-pose tracking
├── examples/               # DJITelloPy example code
├── modules/                # Functional modules directory
│   ├── __init__.py
│   ├── drone_manager.py        # Drone logic control
│   ├── input_handler.py        # Input handling
│   ├── tracking_controller.py  # Automatic tracking control
│   ├── ui_renderer.py          # Video display and UI rendering
│   └── vision_processor.py     # YOLO vision detection
├── utils/                      # Testing tools directory
│   └── joy_test.py             # Joystick input test
└── weights/                # YOLO weight models

Installation

The project is primarily built with Python. It is recommended to use miniconda or miniforge for Python environment management.

First, clone the source repository:

git clone https://github.com/FallThrive/tello_track

Enter the project directory and install dependencies directly from environment.yml:

conda env create -f environment.yml

Alternatively, you can manually install dependencies:

  • Create and activate a conda environment with Python>=3.8, for example:

    conda create -n tello_track python=3.12
    conda activate tello_track
  • Install djitellopy and pygame (can also use uv after conda install uv):

    pip install djitellopy pygame
  • Check driver installation and supported CUDA version (for NVIDIA drivers):

    nvidia-smi
  • Install from PyTorch repository a version compatible with your driver (PyTorch>=1.8 required), for example:

    pip install torch==2.7.0 torchvision==0.22.0 torchaudio==2.7.0 --index-url https://download.pytorch.org/whl/cu128
    
  • Install ultralytics:

    pip install ultralytics

ToDo

  • Test DJITelloPy example code and refactor into object-oriented design
  • Add joystick control module
  • Deploy YOLO for object detection with PID for tracking
    • Implement tracking using seg model
    • Implement tracking using pose model
    • Manual-automatic function integration
  • Replace PID control with reinforcement learning

About

A person tracking implementation for Tello drone based on DJITelloPy and YOLO11n, tested with RoboMaster Tello Talent (RMTT).

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages