Hacker, bricoleur et ingénieur. Je suis passionné par l'apprentissage automatique, l'IA et tout ce qui touche à la technologie.
Aujourd’hui, Tesla, Google, Uber et GM tentent tous de créer leurs propres voitures autonomes capables de rouler sur les routes du monde réel. De nombreux analystes prédisent que d’ici 5 ans, nous commencerons à avoir des voitures entièrement autonomes en circulation dans nos villes, et que d’ici 30 ans, presque TOUTES les voitures seront entièrement autonomes. Ne serait-il pas cool de construire votre propre voiture autonome en utilisant certaines des mêmes techniques que celles utilisées par les grands ? Dans cet article et dans les prochains articles, je vais vous expliquer comment construire votre propre voiture robotique physique, à apprentissage profond et autonome, à partir de zéro. Vous pourrez faire en sorte que votre voiture détecte et suive les voies, reconnaisse et réponde aux panneaux de signalisation et aux personnes sur la route en moins d'une semaine. Voici un aperçu de votre produit final.
Suivi de voie
Détection des panneaux de signalisation et des personnes (à droite) depuis la DashCam de DeepPiCar
Partie 2 : Je vais lister le matériel à acheter et comment le configurer. En bref, vous aurez besoin d'une carte Raspberry Pi (50 $), d'un kit SunFounder PiCar (115 $), du Edge TPU de Google (75 $) plus quelques accessoires, et de l'importance de chaque pièce dans les articles ultérieurs. Le coût total des matériaux est d'environ 250 à 300 dollars. Nous installerons également tous les pilotes logiciels nécessaires à Raspberry Pi et PiCar.
Framboise Pi 3 B+
Kit de voiture robotique SunFounder PiCar-V
Accélérateur Google Edge TPU
Partie 3 : Nous mettrons en place tous les logiciels de Computer Vision et Deep Learning nécessaires. Les principaux outils logiciels que nous utilisons sont Python (le langage de programmation de facto pour les tâches d'apprentissage automatique/IA), OpenCV (un puissant package de vision par ordinateur) et Tensorflow (le framework d'apprentissage en profondeur populaire de Google). Notez que tous les logiciels que nous utilisons ici sont GRATUITS et open source !
Partie 4 : Une fois la configuration matérielle et logicielle ( fastidieuse ) réglée, nous allons plonger directement dans les parties amusantes ! Notre premier projet consiste à utiliser Python et OpenCV pour apprendre à DeepPiCar à naviguer de manière autonome sur une route sinueuse à voie unique en détectant les lignes de voie et à se diriger en conséquence.
Détection de voie étape par étape
Partie 5 : nous entraînerons DeepPiCar à naviguer sur la voie de manière autonome sans avoir à écrire explicitement une logique pour la contrôler, comme cela a été fait dans notre premier projet. Ceci est réalisé en utilisant le « clonage de comportement », où nous utilisons uniquement les vidéos de la route et les angles de braquage corrects pour chaque image vidéo pour entraîner DeepPiCar à se conduire lui-même. La mise en œuvre s'inspire de la voiture autonome pleine grandeur DAVE-2 de NVIDIA, qui utilise un réseau neuronal convolutif profond pour détecter les caractéristiques de la route et prendre les bonnes décisions de direction.
Suivi de voie en action
Enfin, dans la partie 6 : nous utiliserons des techniques d'apprentissage profond telles que la détection d'objets multi-boîtes en un seul coup et l'apprentissage par transfert pour apprendre à DeepPiCar à détecter divers panneaux de signalisation (miniatures) et piétons sur la route. Et puis nous lui apprendrons à s'arrêter aux feux rouges et aux stop, à passer aux feux verts, à s'arrêter pour attendre qu'un piéton traverse, à modifier sa limite de vitesse en fonction des panneaux de vitesse affichés, etc.
Formation sur les modèles de panneaux de signalisation et de détection de personnes dans TensorFlow
Voici les prérequis de ces articles :
C'est tout pour le premier article. Je vous verrai dans la deuxième partie où nous mettrons la main à la pâte et construirons ensemble une voiture robotique !
Voici les liens vers l’intégralité du guide :
Partie 1 : Aperçu (Cet article)
Partie 2 : Configuration du Raspberry Pi et assemblage du PiCar
Partie 3 : Faites voir et penser PiCar
Partie 4 : Navigation autonome sur voie via OpenCV
Partie 5 : Navigation autonome sur voie via le Deep Learning
Partie 6 : Panneaux de signalisation et détection et gestion des piétons