This is a Python script to control a <ahref="https://www.ryzerobotics.com/tello-edu"target="_blank">DJI Tello EDU drone</a> based on the <ahref="https://github.com/damiafuentes/DJITelloPy"target="_blank">djitellopy</a>, and the <ahref="https://www.pygame.org/"target="_blank">pygame</a> libraries. The drone goes through a small track, where there are QR codes which are associated with images to project onto the drone's video as an AR setup. The QR codes are decoded with the <ahref="https://www.dynamsoft.com/Products/Dynamic-Barcode-Reader.aspx"target="_blank">Dynamsoft Barcode Reader SDK</a> and the AR images are projected onto the frames with <ahref="https://opencv.org/"target="_blank">OpenCV</a>.
You need a license for the Dynamsoft Barcode Reader SDK - there is a 30 days trial license.
The scripts was designed to run on a Windows computer, but it can be modified for Mac and Linux too.
## Installation
I have used Python 3.7.9 from the <ahref="https://www.microsoft.com/en-us/p/python-37/9nj46sx7x90p?activetab=pivot:overviewtab"target="_blank">MS Store</a>. At the time Python 3.6 and 3.8 was not working with the Tello - had problems to decode the h264 frames and Python 3.9 was not working with the dbr (QR reader).
Also, the latest numpy (1.19.4) at the time had problems on Windows.
The installastion steps, when the Python is installed from the MS Store:
- pip install djitellopy=="1.5" (this should intall pygame and opencv-python too, I have used version 1.5)
- pip install numpy=="1.19.3" (to fix the Windows-><-numpy issue)
- pip install dbr=="7.5" (I had license for this, and 8.0 came out later)