TelloPilot is a collection of experiments using DJI's Tello SDK to communicate with the Tello drone. For ease of use, the TelloPy package is used for the communication protocol.
Currently, the supported features include:
- Controlling the drone with a keyboard
- Face detection using computer vision
- Face tracking to keep the main subject in frame
This project was implemented and run on a Windows machine. To setup the project:
- Create a Python virtual environment:
python -m venv venv
- Activate the virtual environment:
source venv/Scrips/activate (Windows)
or
source venv/bin/activate (Mac/Linux)
- Install the requirements:
pip install -r requirements.txt
For Windows, use instead
pip install -r requirements-windows.txt
This is due to issues with installing PyAV on Windows. To resolve this, the package must be installed manually.
PyAV depends on ffmpeg to work, and so they must be downloaded first.
- Download
ffmpeg(both the shared and dev packages). - Unpack both packages somewhere on your local machine (e.g.
C:\ffmpeg). - Clone or download the zip of PyAV in this project's directory. If the zip is downloaded, make sure to unpack it.
cdinto thePyAVdirectory and runpython setup.py build --ffmpeg=\\path\\to\\ffmpeg. Make sure your Python virtual environment is activated first.- Install
PyAVwithpython setup.py install. Once this is done, you can safely remove the clonedPyAVrepo.
To get the project started, run python main.py in the src directory.
If the video stream connection is timing out, try turning of your firewall.