A Novel Execution Scheme for Ultra-tiny CNNs Aboard Nano-UAVs
Autonomous unmanned aerial vehicles (UAVs) are increasingly getting smaller and smarter, up to the so-called nano-sized UAVs -- a few tens of grams in weight. Their tiny form factor can be a game-changer in many practical applications such as aerial inspection or assistance in natural disaster areas, to name a few. This project follows the trail of the PULP-Dronet research project [1,2,3], deep learning-based autonomous navigation engines for nano-drones. This shallow convolutional neural network (CNN) runs aboard a 27-grams drone being fed with images and outputting a steering angle (regression problem) and a probability of collision (classification problem). This project aims to enhance the autonomous navigation capabilities aboard a Crazyflie 2.1 nano-drone  by optimizing the onboard execution of minimal variants of the PULP-Dronet baseline model: Tiny-PULP-Dronet -- up to 50x smaller and 30x faster. The candidate will work on the State-of-the-Art open-source framework DORY , which is in charge of translating high-level PyTorch models into the final C implementation deployed on the nano-drone. A key aspect of this project is the final in-filed testing, which offers the possibility of deploying the overall pipeline in a real-life demonstrator and assessing its actual performance on the ground.