For the time being, this project is defunct. Working implementations of these algorithms on a UAV (Ryze Tello using Matlab) can be found in my tello_detection_SLAM repository.
Demonstration of SLAM and object detection with a Parrot ANAFI. The code depends on pyparrot. Pyparrot is a Python API for Parrot quadcopters and I'm extremely thankful for the owner's work, after running into every issue that one could possibly have with the Parrot GroundSDK.
- Initialize your Parrot and update firmware by downloading the app and connecting the phone to the controller --> firmware updates should begin automatically.
- Consult the pyparrot documentation to install the dependences and clone the GitHub repo --> PyPi's version for pyparrot is behind and doesn't include ANAFI.
- From the pyparrot repo, copy the pyparrot directory into your project and make an
images
directory. - Replace the original wifiConnection.py with the updated version --> I made small changes to the argument passed to the IPv4Address function on line 318, which is compatible with zeroconf's current API.
- Switch the Parrot on and connect your ground machine (e.g. laptop) to the Parrot's wifi.
- Run anafi_prelim.py to check that the Parrot will respond.
- Add a requirements.txt
- Actually program SLAM and object detection
References from my first exposure to quad programming:
More to come soon!