Brevet FR3058247A1 — publié le 20180504

DETECTI ON D'OBSTACLES AUTOUR D'UN VEHI CULE AUTOMOBI LE La présente invention concerne de manière générale les véhicules automobiles, et plus précisément un procédé et un système de détection d'obstacles, notamment de véhicules motorisés, autour d'un véhicule automobile, à partir d'images capturées par une pluralité de caméras embarquées sur ledit véhicule automobile. La détection d'obstacles dans l'environnement immédiat d'un véhicule automobile à conduite autonome ou équipé de systèmes d'assistance à la conduite (ou ADAS, initiales anglo-saxonnes mises pour Advanced Driver Assistance System) est cruciale pour prévenir des situations dangereuses. On s'intéresse par la suite aux obstacles particuliers constitués par d'autres véhicules motorisés, statiques ou mobiles, pouvant présenter un danger particulier. On comprend aisément que la détection de ces obstacles, incluant la détermination de leurs positions et vitesses relatives, doit être non seulement précise mais menée en outre en temps réel pour que les systèmes d'assistance puissent réagir rapidement de façon adaptée. On connait déjà de nombreux systèmes réalisant des détections et classifications d'objets, tels que des véhicules motorisés, à partir d'images capturées par des caméras, en particulier soit une caméra frontale et une caméra arrière, soit des caméras latérales embarquées sur le véhicule autom obile. Aucun système ne permet à l'heure actuelle de réaliser une détection dans un environnement sur 360° autour du véhicule automobile. Par ailleurs, aujourd'hui, les algorithmes de vision connus permettant de détecter des objets dans des images peuvent être regroupés essentiellement en trois grandes familles : Une première famille regroupe les algorithmes de traitement d'images prenant en compte les propriétés de chaque pixel d'une image, telles que l'intensité, et effectuant des opérations de filtrages par comparaison avec des seuils prédéfinis. La détection d'ombres projetées par les véhicules, la détection des roues de véhicules présents dans une image par l'extraction de contours circulaires et/ou elliptiques ou la détection des symétries dans une 3058247 2 image, notamment des symétries horizontales (optiques des véhicules, rétroviseurs latéraux par exemple) sont des exemples d'algorithmes de traitement des pixels des images permettant d'inférer des candidats possibles représentatifs d'une présence potentielle de véhicules tiers. 5 Une deuxième famille repose sur la reconnaissance d'objets par apprentissage automatique, telles que les méthodes SVM (initales anglo-saxonnes mises pour Support Vector machine) ou Adaboost. L'approche utilisée dans la reconnaissance consiste à apprendre puis à retrouver dans l'image, l'allure générale d'un objet déterminé, ici d'un véhicule motorisé. Pour 10 réaliser un module de détection de véhicules, on utilise des algorithmes de reconnaissance de formes dont le but est de discriminer la forme des véhicules par rapport au reste. Concrètement, une première phase consiste à la construction d'une base d'entraînement pour capturer la diversité d'apparence des véhicules. La base d'entraînement doit être la plus grande et la plus variée 15 possible pour correspondre au mieux au grand nombre de situations pouvant être rencontrées par le module de détection. Puis, un algorithme d'apprentissage va étudier et dégager des propriétés de cette base pour créer un modèle représentant une frontière permettant la classification véhicule/reste. Un classifieur s'appuie ensuite sur ce modèle pour différencier 20 les éléments des deux groupes. Une fois le classifieur construit, la phase de détection consiste à balayer l'image en rectangles sur les zones de scan qui se recouvrent, puis à comparer leur contenu avec le modèle. Si en un point donné, l'image est suffisamment proche du modèle, alors le module de détection indique la présence d'un véhicule. Ici encore, le module de détection 25 délivre une liste de candidats possibles représentatifs d'une présence potentielle de véhicules tiers. Une troisième famille regroupe les méthodes dites de vision par ordinateur, tels que les algorithmes de flux ou flot optique, qui ont pour but de caractériser le mouvement dans une scène en associant à chaque pixel ou bloc 30 dans une image un vecteur de déplacement entre une image source et une image cible. Typiquement, les algorithmes de flux optique identifient certaines régions d'intérêts dans l'image (par exemple à partir de contours, ou de l'intensité des pixels), puis essayent de les suivre dans le temps sur des 3058247 3 images successives. Si certaines régions d'intérêts semblent se déplacer de manière cohérente dans le temps, on peut considérer qu'elles correspondent très certainement à des véhicules qui se déplacent. Un algorithme de flux optique délivre ainsi également une liste de candidats possibles représentatifs 5 d'une présence potentielle de véhicules tiers. Grâce à l'odométrie et le suivi des points d'intérêts, une séparation est faite entre les points au sol par rapport à ceux qui se placent sur le véhicule ou des objets mobiles. Les systèmes de détection connus aujourd'hui reposent uniquement sur l'utilisation d'algorithmes issus de l'une seulement des trois familles 10 précédentes. La difficulté principale reste liée au temps réel. Or, chacune des familles ci-dessus présente des avantages et des inconvénients. En particulier, les algorithmes de reconnaissance par apprentissage automatique sont très dépendants de la qualité de la base d'entraînement. 15 Cette dernière peut difficilement contenir tous les modèles de voitures existants. En outre, l'efficacité de ces algorithmes est directement lié à la qualité de la base d'entraînement. Un modèle est construit par caméra. Les algorithmes de flux optique restent quant à eux sensibles au bruit et aux variations de l'environnement. En outre, il n'y a aucun moyen fiable 20 pour savoir si un objet a été correctement segmenté ou pour déterminer la nature de celui-ci puisque tous les objets mobiles sont repérés sans distinction. Autrement dit, les régions d'intérêt utilisées dans ces algorithmes sont difficiles à séparer. La présente invention a pour but de pallier les limitations et 25 inconvénients des systèmes connus, en proposant un procédé et un système permettant de détecter de manière fiable et robuste et en temps réel les véhicules susceptibles d'être présents dans l'environnement sur 360° d'un véhicule automobile. Pour ce faire, l'invention a pour objet un procédé de détection 30 d'obstacles, notamment de véhicules motorisés, autour d'un véhicule automobile, à partir d'images capturées par une pluralité de caméras embarquées sur ledit véhicule automobile de manière à couvrir l'environnement sur 360° autour du véhicule automobile et capturer des 3058247 4 images sur une zone avant, une zone latérale droite, une zone arrière et une zone latérale gauche, comprenant les étapes suivantes : - On applique au moins un premier algorithme de traitement des pixels des images capturées sur la zone avant, la zone latérale droite, la zone arrière 5 et la zone latérale gauche en vue de déterminer au moins un premier ensemble de candidats possibles représentatifs d'une présence potentielle d'obstacles; - On applique un algorithme d'apprentissage automatique sur les images capturées sur la zone avant, la zone latérale droite, la zone latérale 10 gauche et la zone arrière en vue de déterminer un deuxième ensemble de candidats possibles représentatifs d'une présence potentielle d'obstacles; - On applique un algorithme de flux optique sur les images capturées sur la zone latérale droite et la zone latérale gauche en vue de déterminer un troisième ensemble de candidats possibles représentatifs d'une présence 15 potentielle d'obstacles ; - On fusionne les candidats possibles du premier ensemble, deuxième ensemble et troisième ensemble dans un filtre à particules pour délivrer un ensemble d'objets associés et suivis dans l'environnement sur 360°. 20 Outre les caractéristiques principales qui viennent d'être mentionnées dans le paragraphe précédent, le procédé selon l'invention peut présenter une ou plusieurs caractéristiques complémentaires parmi les suivantes : - ledit premier algorithme peut déterminer le premier ensemble de candidats à partir de détections d'ombres associées à des obstacles mobiles 25 potentiels; - sur détections d'ombres associées à des obstacles potentiels, on applique de préférence un deuxième algorithme de traitement desdits pixels permettant une détection de roues ; - sur détections d'ombres associées à des obstacles potentiels, on 30 applique de préférence un troisième algorithme de traitement desdits pixels permettant une détection de parties symétriques dans les images. L'invention a également pour objet un système de détection d'obstacles, notamment de véhicules motorisés, autour d'un véhicule 3058247 5 automobile, à partir d'images capturées par une pluralité de caméras embarquées sur ledit véhicule automobile de manière à couvrir l'environnement sur 360° autour du véhicule automobile et capturer des images sur une zone avant, une zone latérale droite, une zone arrière et une 5 zone latérale gauche, le système comprenant : - un module de traitement des pixels des images capturées sur la zone avant, la zone latérale droite, la zone arrière et la zone latérale gauche, ledit module de traitement délivrant au moins un premier ensemble de candidats possibles représentatifs d'une présence potentielle d'obstacles; 10 - un module de détection par apprentissage automatique sur les images capturées sur la zone avant, la zone latérale droite, la zone latérale gauche et la zone arrière, ledit module de détection par apprentissage automatique délivrant un deuxième ensemble de candidats possibles représentatifs d'une présence potentielle d'obstacles; 15 - un module d'analyse de flux optique sur les images capturées sur la zone latérale droite et la zone latérale gauche, ledit module d'analyse de flux optique délivrant un troisième ensemble de candidats possibles représentatifs d'une présence potentielle d'obstacles; - un filtre à particules recevant en entrées les candidats possibles du 20 premier ensemble, deuxième ensemble et troisième ensemble et délivrant un ensemble d'objets associés et suivis dans l'environnement sur 360°. Le module de traitement des pixels peut comporter un module de détection d'ombres associées à des obstacles potentiels. 25 Le module de traitement des pixels peut comporter un module de détection de roues. Le module de traitement des pixels peut comporter un module de détection de parties symétriques dans les images. Ladite pluralité de caméras est de préférence composée de quatre 30 caméras de type « fisheye », une caméra frontale, une caméra arrière et deux caméras latérales ? 3058247 6 L'invention sera mieux comprise à la lecture de la description qui suit, faite en référence aux figures annexées, dans lesquelles : - la figure 1 illustre un exemple d'architecture d'un système embarqué sur un véhicule implémentant un procédé de détection d'obstacles présents 5 dans l'environnement sur 360° autour du véhicule conforme à l'invention ; - la figure 2 illustre un exemple de résultats obtenus dans le cadre d'une détection d'un véhicule tiers à gauche d'un véhicule équipé d'un système détection selon l'invention; - la figure 3 illustre une autre architecture possible pour un système 10 embarqué sur un véhicule implémentant un procédé de détection d'obstacles présents dans l'environnement sur 360° autour du véhicule conforme à l'invention. En référence à la figure 1, un système 1 de détection conforme à 15 l'invention utilise les images capturées par une pluralité de caméras embarquées sur le véhicule automobile de manière à couvrir l'environnement sur 360° autour du véhicule automobile et capturer des images sur une zone avant, une zone latérale droite, une zone arrière et une zone latérale gauche. Dans un mode préférentiel de réalisation, on utilise quatre caméras de 20 type « fisheye », avec un angle d'observation supérieur à 180°, afin de limiter le nombre d'équipements embarqués sur le véhicule. Néanmoins, les principes de l'invention qui vont être exposés dans la suite sont valables quel que soit le nombre de caméras utilisées, à partir du moment où la zone d'observation totale par vision correspond bien à un environnement sur 360° autour du 25 véhicule automobile. Plus précisément, le système 1 de la figure 1 comprend une caméra frontale 2 FRONT, une caméra arrière 2 REAR, une caméra latérale 2 RIGHT à droite du véhicule et une caméra latérale 2LEFT à gauche du véhicule. Sur les différentes figures, les caméras ont été regroupées par couple avant/arrière et 30 latéral droite/latéral gauche pour des raisons qui apparaitront dans la suite. Par convention sur les figures, les flèches en traits noirs épais correspondent aux images capturées sur les zones avant/arrière du véhicule alors que les 3058247 7 flèches en traits noirs fins correspondent aux images capturées sur les zones latérale droite/latérale gauche du véhicule. Le principe proposé par la présente invention est d'utiliser en simultané des algorithmes de détection provenant des trois grandes familles 5 différentes décrites ci-avant pour délivrer à chaque fois des ensembles de candidats possibles représentatifs d'une présence potentielle de véhicules tiers, avec leur positions et vitesses relatives par rapport au véhicule automobile équipé du système, puis de fusionner ces différents ensembles afin d'utiliser opportunément les différentes caractéristiques complémentaires 10 et/ou redondantes, améliorer ainsi le taux de détection et diminuer le nombre de fausses alarmes. Plus précisément, dans un procédé de détection conforme à la présente invention on applique : - au moins un premier algorithme de traitement des pixels des images 15 capturées sur la zone avant, la zone latérale droite, la zone arrière et la zone latérale gauche en vue de déterminer au moins un premier ensemble de candidats possibles représentatifs d'une présence potentielle d'obstacles; - un algorithme d'apprentissage automatique au moins sur les images capturées sur la zone avant et la zone arrière en vue de déterminer un 20 deuxième ensemble de candidats possibles représentatifs d'une présence potentielle d'obstacles; et - un algorithme de flux optique sur les images capturées sur la zone latérale droite et la zone latérale gauche en vue de déterminer un troisième ensemble de candidats possibles représentatifs d'une présence potentielle 25 d'obstacles. Le système 1 de détection schématisé sur la figure 1 comporte ainsi un module 3 de traitement des pixels pour implémenter ledit au moins premier algorithme et délivrer le premier ensemble de candidats possibles, un module 4 de détection par apprentissage automatique pour délivrer le deuxième 30 ensemble de candidats possibles et un module 5 d'analyse de flux optique pour délivrer le troisième ensemble de candidats possibles. Le premier algorithme de traitement de pixel repose avantageusement sur les détections des ombres projetées par les véhicules potentiellement 3058247 8 présents, utilisant le principe selon lequel les ombres projetées par un véhicule sont plus intenses que les ombres classiques. Le module 3 de traitement des pixels comporte à cet effet un module 30 de détection d'ombres associées à des obstacles mobiles potentiels analysant les images provenant de toutes les 5 caméras. La détection d'ombres, quel que soit l'algorithme utilisé, permet de dresser une liste de candidats représentatifs de véhicules potentiellement présents. On peut avantageusement associer à la détection d'ombres d'autres algorithmes de traitement d'image, comme un algorithme de détection de 10 roues, basé sur l'extraction de contours circulaires ou elliptiques qui seraient présents dans les images capturées respectivement sur les côtés ou sur l'avant/arrière du véhicule, et/ou un algorithme 32 de traitement des pixels permettant une détection de parties symétriques dans les images. Sur la figure 1, le module 3 de traitement des pixels comporte ainsi un module 31 de 15 détection de roues, utilisant les images en provenance de l'ensemble des caméras, et un module 32 de détection de parties symétriques dans les images capturées par la caméra avant 2 FRONT et/ou par la caméra arrière 2 REAR. Ces algorithmes pourraient être utilisés concomitamment avec l'algorithme de détection d'ombres. Néanmoins, pour réduire les temps de 20 calculs, il est préférable de ne lancer des recherches sur les roues et/ou sur la présence de symétries dans l'image qu'à partir du moment où des ombres liées à de potentiels véhicules ont été détectées au préalable. Le module 4 de détection par apprentissage automatique utilise quant à lui tout algorithme connu de reconnaissance d'objets, telles que l'algorithme 25 SVM ou Adaboost. Cet algorithme est appliqué aux images provenant des quatre caméras. Un modèle est construit par caméra. Enfin, le module 5 effectue une analyse de flux optique à partir des images capturées sur les deux côtés du véhicule par caméras latérales 2 RIGHT et 2 LEFT extraire des régions d'intérêts en mouvement. Une séparation des 30 objets est avantageusement faite via un module 6 de séparation des objets qui combine les régions d'intérêts extraites avec les informations provenant de la détection des ombres. 3058247 9 Les différents candidats obtenus en sortie des différents modules précédemment décrits constituent les entrées d'un filtre à particules 7 dont la fonction est de fusionner ces entrées et délivrer un ensemble d'objets détectés, associés et suivis dans l'environnement sur 360°, sous forme d'une 5 distribution probabiliste des véhicules détectés. Le principe de ce filtre est de créer des nuages de particules pour chaque candidat délivré par les différents modules 3, 4 et 5, et d'analyser le déplacement de ces nuages de particules à partir d'une estimation, pour une image, de la prochaine position des nuages de particules dans la prochaine 10 image traitée. Une probabilité de présence d'un véhicule peut être extraite en analysant les zones de chevauchement entre des nuages provenant de candidats détectés par les différents modules. La figure 2 illustre un exemple de résultats obtenus dans le cadre de la détection d'un véhicule se trouvant sur la gauche du véhicule équipé du 15 système 1 de détection. Sur la partie gauche de la figure 2, les références 11, 12, 13 et 14 représentent les résultats de détection, avec leurs incertitudes associées obtenus en sortie respectivement du module 5 d'analyse de flux optique , du module 30 de détection des ombres, du module 31 de détection des roues, et du module 4 de détection par apprentissage automatique. La 20 référence 15 représente quant à elle le résultat de la fusion par le filtre 7 à particules. Chaque détecteur sera lié par une distribution de probabilité en conjonction avec une incertitude accordée sur la position X, Y de l'objet détecté. On constate que la présence d'un véhicule tiers à gauche du véhicule concerné (point origine des deux axes sur les différents résultats) est détectée 25 avec une probabilité plus forte après fusion qu'à l'issue de chacun des modules pris séparément, avec en outre un positionnement beaucoup plus précis. Les implémentations du procédé de détection selon l'invention ne sont aucunement limitées à l'architecture du système représentée sur la figure 1. En particulier, la figure 3 illustre un autre exemple d'architecture 30 possible reposant sur les mêmes principes de découpage des algorithmes selon la zone d'observation (couple avant/arrière et latéral droit/latéral gauche), d'utilisation d'algorithmes relavant du traitement d'image, de la 3058247 10 reconnaissance d'objets et de l'analyse du flux optique, et de fusion des résultats de ces algorithmes dans un filtre à particules. On retrouve ainsi sur la figure 3 : - le module 3 de traitement d'images avec son module 30 de détection 5 d'ombres, son module 31 de détection de roues et son module 32 de détection des parties symétriques ; - le module 4 de reconnaissance d'objet par apprentissage, recevant ici les images capturées par l'ensemble des caméras ; - le module 5 d'analyse du flux optique et le module 6 de séparation 10 des objets associés. La différence avec l'architecture de la figure 1 réside ici principalement dans le fait que la sortie de chacun des modules 30, 31, 32, 4 et 6 est ici utilisée comme entrée du filtre 7 à particules. REVENDICATIONS1. Procédé de détection d'obstacles, notamment de véhicules motorisés, autour d'un véhicule automobile, à partir d'images capturées par une pluralité de caméras (2 FRONT, 2 REAR, 2 RI GHT, 2LEFT) embarquées sur ledit véhicule automobile de manière à couvrir l'environnement sur 360° autour du véhicule automobile et capturer des images sur une zone avant, une zone latérale droite, une zone arrière et une zone latérale gauche, comprenant les étapes suivantes : - On applique au moins un premier algorithme (30) de traitement des pixels des images capturées sur la zone avant, la zone latérale droite, la zone arrière et la zone latérale gauche en vue de déterminer au moins un premier ensemble de candidats possibles représentatifs d'une présence potentielle d'obstacles; - On applique un algorithme (4) d'apprentissage automatique sur les images capturées sur la zone avant, la zone latérale droite, la zone latérale gauche et la zone arrière en vue de déterminer un deuxième ensemble de candidats possibles représentatifs d'une présence potentielle d'obstacles; - On applique un algorithme (5) de flux optique sur les images capturées sur la zone latérale droite et la zone latérale gauche en vue de déterminer un troisième ensemble de candidats possibles représentatifs d'une présence potentielle d'obstacles ; - On fusionne les candidats possibles du premier ensemble, deuxième ensemble et troisième ensemble dans un filtre (7) à particules pour délivrer un ensemble d'objets associés et suivis dans l'environnement sur 360°. 2. Procédé selon la revendication 1, caractérisé en ce que ledit premier algorithme (30) détermine le premier ensemble de candidats à partir de détections d'ombres associées à des obstacles mobiles potentiels. 3. Procédé selon la revendication 2, caractérisé en ce que, sur détections d'ombres associées à des obstacles potentiels, on applique un deuxième 3058247 12 algorithme (31) de traitement desdits pixels permettant une détection de roues. 4. Procédé selon l'une quelconque des revendications 2 ou 3, caractérisé en ce que, sur détections d'ombres associées à des obstacles potentiels, 5 on applique un troisième algorithme (32) de traitement desdits pixels permettant une détection de parties symétriques dans les images. 5. Système (1) de détection d'obstacles, notamment de véhicules motorisés, autour d'un véhicule automobile, à partir d'images capturées par une pluralité de caméras (2 FRONT, 2 REAR, 2 RIGHT, 2LEFT) embarquées 10 sur ledit véhicule automobile de manière à couvrir l'environnement sur 360° autour du véhicule automobile et capturer des images sur une zone avant, une zone latérale droite, une zone arrière et une zone latérale gauche, le système comprenant : - un module (3) de traitement des pixels des images capturées sur la 15 zone avant, la zone latérale droite, la zone arrière et la zone latérale gauche, ledit module de traitement (3) délivrant au moins un premier ensemble de candidats possibles représentatifs d'une présence potentielle d'obstacles; - un module (4) de détection par apprentissage automatique sur les 20 images capturées sur la zone avant, la zone latérale droite, la zone latérale gauche et la zone arrière, ledit module (4) de détection par apprentissage automatique délivrant un deuxième ensemble de candidats possibles représentatifs d'une présence potentielle d'obstacles; 25 - un module (5) d'analyse de flux optique sur les images capturées sur la zone latérale droite et la zone latérale gauche, ledit module (5) d'analyse de flux optique délivrant un troisième ensemble de candidats possibles représentatifs d'une présence potentielle d'obstacles; - un filtre (7) à particules recevant en entrées les candidats possibles du 30 premier ensemble, deuxième ensemble et troisième ensemble et 3058247 13 délivrant un ensemble d'objets associés et suivis dans l'environnement sur 360°. 6. Système selon la revendication 5, caractérisé en ce que le module (3) de traitement des pixels comporte un module (30) de détection 5 d'ombres associées à des obstacles potentiels. 7. Système selon l'une quelconque des revendications 5 et 6, caractérisé en ce que le module (3) de traitement des pixels comporte un module (31) de détection de roues. 8. Système selon l'une quelconque des revendications 5 à 7, 10 caractérisé en ce que le module (3) de traitement des pixels comporte un module (32) de détection de parties symétriques dans les images. 9. Système selon l'une quelconque des revendications 5 à 8, caractérisé en ce que ladite pluralité de caméras est composée de quatre caméras de type « fisheye », une caméra frontale (2FRONT), une 15 caméra arrière (2REAR) et deux caméras latérales (2RIGHT, 2 LEFT)-