A new algorithm allows drones to fly completely by themselves through the streets of a city and in indoor environments. The algorithm had to learn traffic rules and adapt training examples from cyclists and car drivers. Researchers of the University of Zurich and the National Centre of Competence in Research NCCR Robotics developed DroNet, an algorithm that can safely drive a drone through the streets of a city. Designed as a fast 8-layers residual network, it produces two outputs for each single input image: a steering angle to keep the drone navigating while avoiding obstacles, and a collision probability to let the drone recognise dangerous situations and promptly react to them.
One of the most difficult challenges in Deep Learning is to collect several thousand ‘training examples’. To gain enough data to train their algorithms, Prof. Scaramuzza and his team collected data from cars and bicycles, that were driving in urban environments. By imitating them, the drone automatically learned to respect the safety rules, such as “How follow the street without crossing into the oncoming lane,” and “How to stop when obstacles like pedestrians, construction works, or other vehicles, block their ways.” Even more interestingly, the researchers showed that their drones learned to not only navigate through city streets, but also in completely different environments, where they were never taught to do so. Indeed, the drones learned to fly autonomously in indoor environments, such as parking lots and office’s corridors.