Le Deep Learning et l’infrarouge au service de la voiture autonome
Le Deep Learning et l’infrarouge au service de la voiture autonome
22 mars 2018, un véhicule autonome de la société Uber provoque le premier accident mortel imputable à une voiture sans conducteur. La victime, une cycliste, se fait renverser par l’automobile, de nuit. Il faut dire qu’en visionnant la vidéo de l’accident, on n’aperçoit le piéton qu’au dernier moment (1).
Une question se pose alors, pourquoi cette cycliste n’a-t-elle pas été détectée ? La réponse est saisissante, puisqu’il apparaît après enquête que le véhicule a bien détecté la piétonne poussant son vélo, mais que le véhicule a « choisi » de l’ignorer. La cause ? Un mauvais réglage du seuil de détection, pour éviter d’avoir trop de fausses détections.
Toutefois, en améliorant la fiabilité et la rapidité de la détection, cet accident aurait pu être évité. Si le piéton avait été détecté plus tôt et de manière plus précise, la voiture aurait eu le temps d’analyser correctement la situation et n’aurait pas considéré le piéton comme un faux positif.
Mais alors, comment améliorer la fiabilité et la rapidité de la détection de piétons ? Nous allons voir, au travers de cet article, comment Neovision et Ulis ont répondu à cette question en alliant leurs expertises respectives (l’intelligence artificielle et l’infrarouge), faisant ainsi avancer le domaine ADAS (Advanced driver-assistance systems). Ces travaux de recherche ont été publiés à SIA VISION 2018, salon international de l’automobile (2).
Fusion de capteurs visible et infrarouge
Si l’on se penche sur les technologies de perception embarquées dans les véhicules autonomes, nous retrouvons principalement des capteurs optiques, des radars et autres lidars. À priori, il semblerait que cette association permette de détecter tout type d’obstacles et ce, de manière tout à fait fiable. Toutefois, qu’en est-il lorsque la visibilité chute drastiquement (nuit, brouillard, etc.) ? Les caméras visibles ne sont plus capables de distinguer les obstacles éloignés du véhicule. Dans de telles conditions, une technologie tire son épingle du jeu : l’infrarouge.
L’infrarouge permet de voir les humains dans le noir
Les capteurs infrarouge est le domaine d’expertise de la société Ulis. Pour mener à bien ce projet, un capteur infrarouge dernière génération embarquant des micro-bolomètres a été utilisé (3). Mais pourquoi l’infrarouge permet de voir les humains dans le noir ? Il faut savoir que tout objet chaud émet des radiations et que les micro-bolomètres sont capables de transformer ces ondes en signal électrique, lui-même traduisible en images. Pour vulgariser ce fonctionnement, les capteurs infrarouges captent la chaleur émise par un corps chaud et la traduit en une image.
En utilisant de l’infrarouge, les différences de températures permettent de détecter et d’identifier les objets chauds, il est donc aisé de repérer un corps humain à 37°C. Par ailleurs, l’infrarouge est insensible aux variations de luminosité, contrairement aux caméras classiques qui peuvent devenir inefficaces en cas d’éblouissement ou de chute de la luminosité.
Alliance entre le visible et l’infrarouge
L’infrarouge apparaît donc comme la solution optimale pour voir des humains lorsque la luminosité est mauvaise. Toutefois, cette technologie s’avère beaucoup moins utile face à une forte luminosité ou lorsque les températures augmentent. En effet, il devient vite compliqué de distinguer un humain d’une surface proche de 37°C (une voiture par exemple, un poteau en métal, etc.).
Face à ce constat, une solution se dessine : faire de la fusion de données entre les images des domaines visible et infrarouge. En effet, l’infrarouge permet de faire ressortir les piétons dans la pénombre tandis que le visible permet de les détecter dans des bonnes conditions de visibilité, même en cas de fortes chaleurs. En couplant les deux technologies, la détection des piétons devient plus fiable et rapide.
Création du jeu de données
Ce n’est plus à démontrer, base de données et intelligence artificielle vont de paire. Ce projet ne déroge pas à la règle : la deuxième étape a consisté en la création d’un jeu de données représentatif de piétons en condition réelle.
Acquisition des images
S’il existe de nombreux jeux de données pour la détection de piétons dans le domaine du visible, ce n’est pas le cas pour l’infrarouge.
Il était donc nécessaire de créer un tout nouveau jeu de données. Pour cela, les deux capteurs (visible et infrarouge) ont été placées côte à côte dans un boîtier les isolant du monde extérieur. Par ailleurs, un déclencheur électronique liant le capteur infrarouge à la caméra visible, a permis de capturer les deux flux d’images de manière synchrone. Les images ont été directement enregistrées sur le disque dur d’un ordinateur portable embarqué dans la voiture.
Afin d’avoir des données réelles, le système a été installé sur un véhicule qui a circulé dans la région de Grenoble, de jour et de nuit.
Description du jeu de données
Deux sessions d’acquisition ont ainsi abouti à la création de deux jeux de données. Ceux-ci contiennent environ six heures de capture d’images infrarouges et visibles alignées, à raison de 30 images par seconde. Ces jeux de données prennent donc la forme de vidéos du centre ville de Grenoble et de routes rurales, de jour et de nuit. De ces vidéos, 5508 images ont été sélectionnées (avec un maximum de trois images par seconde de vidéo) et annotées manuellement, une tâche cruciale bien que fastidieuse.
Effectivement, la qualité de l’annotation influe directement sur la qualité d’apprentissage de l’intelligence artificielle et donc des performances du système de détection de piéton. L’annotation a donc été minutieusement réalisée sur des images multispectrales, obtenues en superposant les images infrarouge et visible.
Deep Learning pour la détection de piétons
La détection de piétons, et plus largement la détection de personnes, dans le domaine du visible sont des sujets très largement étudiés. En effet, cette problématique est complexe puisqu’il existe une très grande variété de postures et d’apparences que peut prendre un humain.
Or, ces dernières années, le Deep Learning (réseaux de neurones profonds) et en particulier les CNN (Convolutional Neural Network ou réseau de neurones convolutifs) ont largement contribués à la progression de l’état de l’art et à l’amélioration de la détection d’objets et donc de piétons.
L’objectif de ce projet était de tester l’amélioration des performances et de la robustesse d’un système de détection de piétons par Deep Learning en y intégrant de l’infrarouge.
En résumé :
Ces travaux présentent une preuve de concept pour la détection de piéton à l’aide de Deep Learning sur des images infrarouge et visibles.
Jeu de données : Pour faciliter l’intégration des capteurs, une méthode digitale d’alignement des scènes a été appliquée.
Apprentissage : Un réseau de neurones profonds RetinaNEt pré-entraîné sur le jeu de données COCO a été entraîné sur deux jeux de données : un jeu de données visible, l’autre infrarouge.
Résultats : Avec seulement six heures de vidéos, l’ajout d’un seul capteur infrarouge à une caméra visible a permis d’améliorer la précision moyenne de détection de 11%, de jour comme de nuit.
Choix de l’architecture du réseau de neurones
Au regard de ses résultats à l’état de l’art et de sa simplicité, l’architecture RetinaNet (4) a été retenue pour servir de base pour ce projet. Il s’agit là d’une architecture faisant partie de la famille des SSD (« Single Shot Detectors » ou « Détecteur à coup unique » pour une traduction mot à mot).
Ces architectures sont capables de prédire si un objet (ici un humain) est présent dans de nombreuses zones de l’images. Ces zones (boîtes englobantes), de différentes échelles et ratios, sont distribuées sur une grille appliquée sur l’image. Le réseau de neurone est également entraîné à prédire la correction de ces boîtes pour qu’elles s’adaptent plus finement à l’objet détecté.
Pour être plus précis, l’architecture choisie est celle de RetinaNet basée sur ResNet-50 pré-entraîné sur le jeu de données COCO (5). Ce dernier, spécialement conçu pour la détection d’objets, contient notamment une classe « personne ».
Méthodologie d’entraînement
Le but étant d’évaluer l’apport de l’infrarouge par rapport au domaine du visible dans les mêmes conditions, la même architecture a été retenue pour les deux domaines.
Ainsi, et puisque l’architecture prend des images visibles en entrée, les images infrarouges ont été converties en images RVB (Rouge Vert Bleu) en utilisant la correspondance colorimétrique inferno colormap (6). Dans un second temps, les images infrarouges (320×240 pixels) ont été redimensionnées pour correspondre à la taille des images visibles (1280×1024 pixels). Par ailleurs, les mêmes hyper-paramètres et schémas d’augmentation de données ont servi à entraîner tous les réseaux.
Enfin, pour évaluer l’intérêt de coupler les deux capteurs, une méthode naïve a été retenue. Cette dernière consiste à entraîner et évaluer les réseaux sur les images multispectrales (images composites mixant visible et infrarouge) également utilisées pour l’annotation manuelle.
Résultats
Pour évaluer les résultats obtenus, la méthodologie de Pascal VOC a été utilisée (7). La précision moyenne correspondant à l’air sous la courbe Precision-Recall (8) est utilisée comme métrique. Une précision moyenne de 1 correspond à une détection parfaite sur l’ensemble du jeu de données. Cette courbe se calcule en comparant les résultats obtenus à l’annotation faite manuellement, aussi appelée vérité terrain.
Une détection est jugée comme correcte dès lors que la boîte englobante prédite et similaire à celle annotée. L’intersection sur l’union entre la boîte englobante prédite et la boîte véritée terrain est utilisé comme métrique de similarité. Ainsi la précision moyenne correspond à une intersection sur l’union dont le quotient est de 0,5.
Infrarouge et visible excellent dans des conditions différentes : en journée pour le visible et de nuit pour l’infrarouge. En effet, on remarque que le contraste entre les piétons et leur environnement
proche est un élément clé pour les détecter. Pour le visible, les meilleures conditions correspondent aux situations de jour à bonne visibilité. À contrario, pour l’infrarouge, les période nocturnes sont idéales puisque l’environnement proche est froid, faisant bien ressortir les piétons. Les deux domaines sont donc bien complémentaires.
Cette complémentarité est renforcée et prouvée par les bons résultats obtenus par les algorithmes sur les données multispectrales. Effectivement, il s’agit là de la méthode apportant les meilleures performances, améliorant la précision moyenne de 11%, de jour comme de nuit.
Conclusion
Ce projet est une preuve de concept quant à l’amélioration des performances de la détection de piétons dans le domaine ADAS. Il a pu voir le jour grâce à l’union des expertises de Ulis en capteurs infrarouges, et de Neovision en intelligence artificielle. Sur un jeu de données réduit de six heures seulement, l’ajout d’un capteur infrarouge à une caméra visible a permis de nettement améliorer les performances relatives à la détection de piétons.
Ces travaux apportent la preuve qu’en utilisant intelligemment les technologies disponibles et de l’expertise, il est possible d’innover. La combinaison de plusieurs technologies existantes permettant l’émergence de nouvelles solutions. Les capteurs visible et infrarouges sont complémentaires en terme de points fort et points faibles. Avec cette combinaison, l’accident Uber n’aurait certainement pas eu lieu puisque la cycliste aurait été détectée plus tôt dans la pénombre grâce à son rayonnement infrarouge.
Aux vues des résultats obtenus par Ulis et Neovision dans ce projet et aux regards des ressources allouées au niveau international sur la voiture autonome, il est pertinent de penser que d’importantes avancées attendent très prochainement le secteur ADAS. Les nouvelles technologies telles que le Deep Learning et les nouvelles générations de capteurs vont rapidement enterrer les dernières questions de fiabilité, levant l’un des principaux freins au déploiement du véhicule autonome.
Sources
1. Vidéo de l’accident Uber : https://www.youtube.com/watch?v=Vqi9mLumWnA
2. SIA VISION 2018 : http://www.sia.fr/evenements/99-sia-vision-2018
3. Capteur Infrarouge Ulis : https://www.ulis-ir.com/products/atto320.html
4. RetinaNet : Tsung-Yi et al. « Focal loss for dense object detection. » IEEE transactions on pattern analysis and machine intelligence, 2018.
5. Jeu de données COCO : http://cocodataset.org/#home
6. Inferno colormap : https://bids.github.io/colormap/
7. Papier de présentation de Pascal VOC : http://www.robots.ox.ac.uk/~vgg/publications/2010/Everingham10/everingham10.pdf
8. Article Wikipédia sur la Précision et le Rappel : https://fr.wikipedia.org/wiki/Pr%C3%A9cision_et_rappel
Pingback: GMFNet : fusion multimodale pour la segmentation sémantique grâce au Deep Learning - Papier de recherche présenté à ECCV
Pingback: Cryptomonnaies: Passé, Présent, Futur. Blockchain, Big Data, Intelligence Artificielle – Payday
Pingback: Cryptomonnaies: Passé, Présent, Futur. Blockchain, Big Data, Intelligence Artificielle - CBD Padrino