Comment les voitures autonomes utilisent la vision par ordinateur pour voir ?
Publié: 2021-02-08Dans le monde d'aujourd'hui, la demande de robots ou de véhicules autonomes augmente à un rythme exponentiel et l'application de la localisation et de la cartographie simultanées (SLAM) attire de plus en plus l'attention. Premièrement, les véhicules autonomes disposent d'un ensemble de capteurs tels que des caméras, Lidar, Radar, etc.
Ces capteurs analysent l'environnement autour du véhicule avant que le véhicule ne prenne une décision cruciale concernant son prochain état de mouvement. À partir du Lidar et des données de la caméra, une carte de localisation est créée. Il peut s'agir d'une carte 2D ou 3D. Le but de la carte est d'identifier les objets statiques autour du véhicule autonome comme les bâtiments, les arbres, etc. Tous les objets dynamiques sont supprimés en supprimant tous les points Lidar qui se trouvent dans la zone de délimitation des objets dynamiques détectés. En savoir plus sur les applications de l'IA
les objets statiques qui n'interfèrent pas avec le véhicule sont également supprimés comme la surface carrossable ou les branches d'arbres. Une fois la grille établie, nous pouvons prédire une trajectoire sans collision pour le véhicule. L'un des éléments significatifs de SLAM est le 3DMapping de l'environnement qui permet aux robots autonomes de comprendre l'environnement comme un humain pour lequel de nombreuses caméras de profondeur ou caméras RGB-D s'avèrent précieuses.
Pour que les véhicules autonomes puissent naviguer efficacement, ils ont besoin d'un cadre de référence et observent l'environnement environnant à l'aide d'algorithmes de vision par ordinateur pour tracer une carte de son environnement et parcourir la piste. La reconstruction 3D comprend l'utilisation de la vision par ordinateur pour observer l'environnement extérieur à l'aide d'un nuage de points 3D basé sur la profondeur.
Par conséquent, le principe de base est un point de jonction entre la reconstruction 3D et la navigation autonome. L'intérêt croissant pour les solutions 3D demande une solution complète capable de percevoir l'environnement et de construire une projection 3D de l'environnement correspondant.
La pratique des algorithmes de vision par ordinateur pour automatiser la robotique ou produire des conceptions 3D est assez courante. L'énigme simultanée de la localisation et de la cartographie se poursuit depuis longtemps et de nombreuses recherches sont en cours pour trouver des méthodologies efficaces pour résoudre le problème de la cartographie.
La recherche actuelle dans ce domaine utilise des caméras coûteuses pour produire des cartes de disparité et de profondeur qui, bien que plus précises, mais toujours coûteuses. Différentes méthodes impliquent l'utilisation de caméras à vision stéréo pour déterminer la profondeur des objets environnants qui est ensuite utilisée pour produire des nuages de points 3D.
Table des matières
Types de cartes de représentation de l'environnement
- Cartes de localisation : elles sont créées à l'aide d'un ensemble de points LIDAR ou de fonctionnalités d'image de caméra lorsque la voiture se déplace. Cette carte, associée au GPU, à l'IMU et à l'odométrie, est utilisée par le module de localisation pour estimer la position précise du véhicule autonome. à mesure que de nouvelles données LIDAR et caméra sont reçues, elles sont comparées à la carte de localisation et la mesure de la position du véhicule autonome est créée en alignant les nouvelles données avec la carte existante.
- Occupancy Grid Map : cette carte utilise un ensemble continu de points LIDAR pour créer un environnement cartographique qui indique l'emplacement de tous les objets statiques utilisés pour planifier un trajet sûr et sans collision pour le véhicule autonome.
Il est important de noter que la présence d'objets dynamiques dans le nuage de points entrave la reconstruction précise du nuage de points. Ces objets dynamiques empêchent le véritable remodelage de l'environnement. Dans le même but, il est important de formuler une solution qui s'attaque à ce problème.
L'intention principale est d'identifier ces objets dynamiques en utilisant l'apprentissage en profondeur. Une fois ces objets identifiés, les points entourant cette boîte englobante peuvent être ignorés. De cette manière, le modèle reconstruit sera entièrement constitué d'objets statiques.
La caméra RGB-D peut mesurer la profondeur à l'aide d'un capteur IR. La sortie ainsi obtenue est constituée de données d'image (les valeurs RVB) et de données de profondeur (portée de l'objet par rapport à la caméra). Étant donné que la profondeur doit être précise, toute inadéquation peut provoquer un accident mortel. Pour cette raison, les caméras sont calibrées de manière à fournir une mesure précise de l'environnement. Les cartes de profondeur sont généralement utilisées pour valider la précision des valeurs de profondeur calculées.
La carte de profondeur est une sortie en niveaux de gris de l'environnement dans lequel les objets les plus proches de la caméra possèdent des pixels plus clairs et ceux plus éloignés contiennent des pixels plus sombres. Les données d'image obtenues à partir de la caméra sont transmises au module de détection d'objets qui identifie les objets dynamiques présents dans le cadre.
Alors, comment identifions-nous ces objets dynamiques que vous pouvez demander ?
Ici, un réseau neuronal d'apprentissage en profondeur est formé pour identifier les objets dynamiques. Le modèle ainsi entraîné parcourt chaque image reçue de la caméra. S'il existe un objet dynamique identifié, ces cadres sont ignorés. Mais, il y a un problème avec cette solution. Sauter l'image entière n'a pas de sens. Le problème est la rétention d'informations.
Pour résoudre ce problème, seuls les pixels de la boîte englobante sont éliminés tandis que les pixels environnants sont conservés. Cependant, dans les applications liées aux véhicules autonomes et aux drones de livraison autonomes, la solution est portée à un autre niveau. Rappelez-vous, j'avais mentionné que nous obtenions une carte 3D des environs à l'aide de capteurs LIDAR.
Après cela, le modèle d'apprentissage en profondeur (3D CNN) est utilisé pour éliminer les objets dans un cadre 3D (axes x, y, z). Ces modèles de réseaux neuronaux ont des sorties de 2 formes. L'un est la sortie de prédiction qui est une probabilité ou une vraisemblance de l'objet identifié. Et deuxièmement, les coordonnées de la boîte englobante. Rappelez-vous, tout cela se passe en temps réel. Il est donc extrêmement important qu'il existe une bonne infrastructure pour prendre en charge ce type de traitement.
En dehors de cela, la vision par ordinateur joue également un rôle important dans l'identification des panneaux de signalisation. Il existe des modèles qui fonctionnent conjointement pour détecter ces panneaux de signalisation de différents types - limite de vitesse, prudence, limiteur de vitesse, etc. Encore une fois, un modèle d'apprentissage en profondeur entraîné est utilisé pour identifier ces signes vitaux afin que le véhicule puisse agir en conséquence.
Pour la détection des lignes de voie, la vision par ordinateur est appliquée de manière similaire
La tâche consiste à produire les coefficients de l'équation d'une ligne de voie. L'équation des lignes de voies peut être représentée à l'aide de coefficients de premier, deuxième ou troisième ordre. Une équation simple du premier ordre est simplement une équation linéaire du type mx+n (une droite). Les équations de grande dimension doivent être d'une plus grande puissance ou d'un ordre qui représente des courbes.
Les ensembles de données ne sont pas toujours cohérents et suggèrent des coefficients de ligne de voie. De plus, on peut en outre vouloir identifier la nature de la ligne (pleine, pointillée, etc.). Il existe de nombreuses caractéristiques que nous pouvons vouloir détecter et il est presque impossible pour un seul réseau de neurones de généraliser les résultats. Une méthode courante pour résoudre ce dilemme consiste à utiliser une approche de segmentation.
En segmentation, le but est d'attribuer une classe à chaque pixel d'une image. Dans cette méthode, chaque voie ressemble à une classe et le modèle de réseau de neurones vise à produire une image avec des voies composées de différentes couleurs (chaque voie aura sa couleur unique).
Lisez aussi : Idées et sujets de projets d'IA
Conclusion
Ici, nous avons discuté des applications générales de la vision par ordinateur dans le domaine des véhicules autonomes. J'espère que vous avez apprécié cet article.
Si vous souhaitez en savoir plus sur l'apprentissage automatique et l'IA, consultez le diplôme PG d'IIIT-B & upGrad en apprentissage automatique et IA, conçu pour les professionnels en activité et offrant plus de 450 heures de formation rigoureuse, plus de 30 études de cas et missions, Statut d'ancien de l'IIIT-B, plus de 5 projets de synthèse pratiques et aide à l'emploi avec les meilleures entreprises.
Apprenez le cours ML des meilleures universités du monde. Gagnez des programmes de maîtrise, Executive PGP ou Advanced Certificate pour accélérer votre carrière.
A quoi sert la vision par ordinateur ?
La vision par ordinateur est une branche spécialisée de l'intelligence artificielle qui aide les ordinateurs à extraire des données significatives à partir d'entrées visuelles et à prendre des décisions basées sur les informations dérivées. La vision par ordinateur est en fait un sous-ensemble multidisciplinaire de l'intelligence artificielle et de l'apprentissage automatique qui utilise des techniques sophistiquées et des algorithmes d'apprentissage généraux. Avec l'aide de la vision par ordinateur, les ordinateurs peuvent voir et comprendre des entrées telles que des vidéos et des images numériques et prendre les mesures nécessaires telles que programmées. Tout comme l'intelligence artificielle aide les ordinateurs à penser, la vision par ordinateur leur permet d'observer et de comprendre. Avec l'aide de la vision par ordinateur, les ordinateurs peuvent extraire efficacement le maximum de données visuelles pour voir une image et comprendre le contenu.
Les voitures autonomes sont-elles sûres ?
En ce qui concerne la sécurité de ces voitures automatiques, on ne peut nier catégoriquement certains aspects apparemment risqués. D'abord et avant tout, les préoccupations en matière de cybersécurité viennent à l'esprit. Les véhicules autonomes peuvent être vulnérables aux cyberattaques où des malfaiteurs piratent le logiciel de la voiture pour voler la voiture ou les détails personnels de son propriétaire. Ensuite, des problèmes logiciels sans précédent ou les dangers que l'automobiliste dépende entièrement de la voiture pour réagir dans des situations inattendues, entraînant des accidents, sont également des risques probables. Cependant, les voitures autonomes présentent de nombreux avantages, qui peuvent contrebalancer les dangers apparents. Les voitures autonomes sont respectueuses de l'environnement et extrêmement sûres en cas de conduite en état d'ébriété, où les conducteurs peuvent compter sur le véhicule pour un trajet en toute sécurité.
Quelles entreprises ont lancé des voitures autonomes à ce jour ?
Les voitures autonomes ou autonomes font déjà partie de la réalité aujourd'hui et l'un des sujets de discussion les plus brûlants. À mesure que la technologie progresse, les voitures autonomes évoluent également et déploient des modèles haut de gamme qui deviennent de loin supérieurs à chaque fois. Les géants de l'automobile du monde entier ont déjà lancé des voitures entièrement autonomes à partir de leurs versions antérieures de véhicules semi-autonomes. Certaines des entreprises les plus remarquables à avoir lancé des voitures autonomes sont Tesla, Waymo, Pony.ai et d'autres.