Brevet FR3062223A1 — publié le 20180727

DETECTION D'OBSTACLES DANS L'ENVIRONNEMENT D'UN VEHICULE AUTOMOBILE PAR TRAITEMENT D'IMAGES 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 dans l'environnement d'un véhicule automobile, à partir d'images capturées par une caméra embarquée 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. Les obstacles peuvent être notamment d'autres véhicules motorisés, statiques ou mobiles, pouvant présenter un danger particulier, ou bien des piétons. On comprend aisément que la détection de ces obstacles, incluant la détermination de leurs positions, voire de leurs vitesses relatives dans le cas de véhicules tiers, 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'obstacles, tels que des véhicules motorisés ou des piétons, à 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 automobile. Parmi les algorithmes de vision connus permettant de détecter des objets dans des images, on connait notamment ceux reposant sur la reconnaissance d'objets par apprentissage automatique, telles que les méthodes SVM (initiales 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é, par exemple un piéton. Pour réaliser par exemple un module de détection de piéton, on utilise des algorithmes de reconnaissance de formes dont le but est de discriminer la forme des piétons par rapport au reste. Concrètement, une 3062223 2 première phase consiste à la construction d'une base d'entraînement pour capturer la diversité d'apparence des piétons. La base d'entraînement doit être la plus grande et la plus variée possible pour correspondre au mieux au grand nombre de situations pouvant être rencontrées par le module de détection. 5 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 piéton/reste. Un classifieur s'appuie ensuite sur ce modèle pour différencier les éléments des deux groupes. Une fois le classifieur construit, la phase de détection consiste à balayer l'image sur des zones de scan qui se 10 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 piéton. Les algorithmes mis en oeuvre dans une détection de piétons par reconnaissance de formes sont généralement très complexes compte tenu 15 notamment de la très grande diversité entre les personnes (taille, poids, vêtements, postures...). Ces algorithmes de reconnaissance de formes sont souvent basés sur l'utilisation de descripteurs fournis en entrée du classifieur Une méthode classique, connue sous le nom de la méthode de Viola et Jones, consiste à tester la présence d'un piéton dans une fenêtre ou imagette de 20 taille fixe, par exemple de 24 sur 48 pixels, à toutes les positions possibles dans l'image et pour plusieurs échelles de l'image. Le test consiste à générer un vecteur de descripteurs pour chaque position de la fenêtre et à les comparer avec les descripteurs appris sur la base d'entraînement. Plus précisément, pour chaque image capturée par une caméra, on génère une 25 pyramide d'images, chaque étage ou image de la pyramide d'images correspondant à une échelle différente de l'image ou d'au moins une région d'intérêt dans l'image. La méthode consiste typiquement à balayer les images de la pyramide d'images, en déplaçant la fenêtre de taille fixe d'un certain nombre de pixels à la fois. Le classifieur, combiné à la base d'entraînement 30 comportant des échantillons de piétons et des échantillons de fond, va traiter les différents vecteurs de descripteurs obtenus à chaque position de la fenêtre glissante pour identifier les zones correspondant effectivement à un piéton par rapport à un modèle appris. Le résultat est délivré par le classifieur sous forme 3062223 3 d'une boîte englobante, généralement de forme rectangulaire, par piéton détecté. Les dimensions et/ou la position verticale de la boîte englobante relative à un piéton détecté sont alors utilisées pour estimer la distance à laquelle se situe le piéton par rapport au véhicule. Une telle méthode est par 5 exemple implémentée par des détecteurs rapides de type Adaboost. Les résultats de la détection rapide sont ensuite généralement affinés et validés par des classifieur plus performants. L'algorithme précédent, décrit dans le cadre de la détection de piétons, peut également être utilisé dans le cadre de la détection d'autres types 10 d'obstacles tels que des véhicules tiers. Pour résumer ce qui précède, un procédé classique de traitement d'images ImFR issues d'une caméra est représenté sur la figure 1. Le traitement comporte au préalable une étape 10 de correction d'image pour tenir compte d'une part, des distorsions optiques introduites par la caméra, et 15 d'autre part, des déformations (défauts d'apparence) de l'obstacle à détecter dues à la position et l'orientation de la caméra sur le véhicule. La correction consiste à appliquer une transformation globale à chaque pixel d'une image ImFR capturée par une caméra en fonction des paramètres de distorsions optiques à la fois intrinsèques à la caméra et liés à sa position et orientation 20 sur le véhicule. Une table de correction est ainsi définie et mémorisée pour une caméra donnée. La transformation globale consiste à déterminer un déplacement à deux dimensions de chaque pixel dans l'image, et résulte de la combinaison de deux transformations, une première transformation vouée à la seule correction des distorsions optiques introduites par la caméra, 25 indépendante du positionnement de la caméra sur le véhicule, et une deuxième transformation dite homographique, pour corriger les défauts d'apparence liés au positionnement de la caméra sur le véhicule. Le procédé se poursuit alors en appliquant à l'image corrigée ImFR cor un algorithme classique (étape 20) comprenant : 30 - la génération (étape 21) d'une pyramide P d'images à partir d'au moins une région d'intérêt dans l'image corrigée ImFR cor, chaque image de la pyramide P d'images correspond à une échelle différente de la zone d'intérêt; 3062223 4 - le balayage (étape 22) par une fenêtre glissante W de l'ensemble des images de la pyramide P d'images pour générer, pour chaque position de la fenêtre glissante, un descripteur relatif à la pyramide P d'images ; et - la classification (étape 23) de chaque descripteur obtenu à l'étape 22 5 pour déterminer des candidats possibles représentatifs d'une présence potentielle d'obstacles. Un inconvénient lié au procédé de la figure 1 réside essentiellement dans la manière de corriger l'image. En effet, comme indiqué précédemment, une unique transformation globale est appliquée à l'image, combinant la 10 première transformation et la deuxième transformation homographique. Or, la deuxième transformation homographique est déterminée de façon unique pour une distance moyenne entre un obstacle potentiel et la caméra. Il en résulte que la correction effectuée est insatisfaisante pour des obstacles qui se trouveraient à des distances en-deçà ou au-delà de cette distance moyenne, 15 ce qui peut fausser les résultats de détections d'obstacles. La présente invention a pour but de pallier l'inconvénient précédent. Pour ce faire, l'invention a pour objet un procédé de détection d'obstacles dans l'environnement d'un véhicule automobile, à partir d'images capturées par une caméra embarquée sur ledit véhicule automobile, le 20 procédé comportant l'application d'un algorithme de détection d'obstacles par reconnaissance de formes et apprentissage automatique dans lequel on génère une pluralité de descripteurs d'images par le balayage au moins partiel, par une fenêtre glissante, d'une pluralité d'images d'une pyramide d'images, chaque image de la pyramide d'images correspondant à une échelle 25 différente d'au moins une zone d'intérêt d'une image capturée, puis on effectue une classification des descripteurs d'images en vue de déterminer des candidats possibles représentatifs d'une présence potentielle d'obstacles, le procédé étant caractérisé en ce que chaque image de la pyramide d'images est en outre générée à partir de ladite au moins une zone d'intérêt 30 corrigée au moins selon une première transformation homographique fonction de l'échelle de l'image, pour corriger des déformations de perspectives liées au positionnement de la caméra sur ledit véhicule. 3062223 5 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 : - chaque image de la pyramide d'images peut être avantageusement 5 générée à partir de ladite au moins une zone d'intérêt corrigée en outre selon une deuxième transformation apte à supprimer des distorsions optiques intrinsèques à la caméra ; - la première transformation homographique et la deuxième transformation sont appliquées de préférence simultanément à ladite au moins 10 une zone d'intérêt au moment de la génération de ladite pyramide d'images. - en variante, la deuxième transformation est appliquée directement sur l'image capturée par la caméra, avant la génération de ladite pyramide d'images. 15 L'invention a également pour objet un système de détection d'obstacles dans l'environnement d'un véhicule automobile, à partir d'images capturées par une caméra embarquée sur ledit véhicule automobile, ledit système ledit système comportant un module configuré pour implémenter un algorithme de détection d'obstacles par reconnaissance de formes et 20 apprentissage automatique dans lequel on génère une pluralité de descripteurs d'images par le balayage au moins partiel, par une fenêtre glissante, d'une pluralité d'images d'une pyramide d'images, chaque image de la pyramide d'images correspondant à une échelle différente d'au moins une zone d'intérêt d'une image capturée, puis on effectue une classification des descripteurs 25 d'images en vue de déterminer des candidats possibles représentatifs d'une présence potentielle d'obstacles, caractérisé en ce que ledit module est en outre apte à générer chaque image de la pyramide d'images à partir de ladite au moins une zone d'intérêt corrigée au moins selon une première transformation homographique fonction de l'échelle de l'image, pour corriger 30 des déformations de perspectives liées au positionnement de la caméra sur ledit véhicule L'invention sera mieux comprise à la lecture de la description qui suit, faite en référence aux figures annexées, dans lesquelles : 3062223 6 - la figure 1 donne les étapes d'un procédé classique de traitement d'images pour une classification et une détection d'obstacles ; - la figure 2 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 l'avant d'un véhicule, conforme à l'invention ; - la figure 3 illustre un procédé de traitement mettant en oeuvre la détection d'obstacles à partir d'images selon l'invention. En référence à la figure 2, un exemple de système de détection 10 conforme à l'invention utilise les images capturées par une caméra 2FR embarquée sur un véhicule automobile 1. Dans cet exemple, la caméra 2FR est située à l'avant du véhicule 1, de manière à capturer des images sur une zone avant ZFR. L'invention est applicable bien entendu pour d'autres positions et zones d'observation de caméra. 15 Dans un mode préférentiel de réalisation, on utilise une caméra de type « fisheye », avec un angle d'observation supérieur à 1800. Néanmoins, les principes de l'invention qui vont être exposés dans la suite sont valables quel que soit le type de caméra utilisée. Les images ImFR capturées par la caméra 2FR sont fournies pour 20 traitement à un module 3 de détection d'obstacles embarqué dans le véhicule automobile 1 qui implémente notamment les étapes du procédé selon l'invention. Comme cela a été explicité ci-avant, il est connu de détecter des obstacles par un traitement des images capturées, et plus précisément par 25 l'application d'un algorithme de détection d'obstacles par reconnaissance de formes et apprentissage automatique dans lequel on génère, à partir d'une pyramide d'images, une pluralité de descripteurs d'images par le balayage au moins partiel de chaque image capturée par une fenêtre glissante, puis on effectue une classification des descripteurs d'images en vue de déterminer des 30 candidats possibles représentatifs d'une présence potentielle d'obstacles. Dans les systèmes connus, une correction de chaque image est en outre effectuée au préalable pour tenir compte des distorsions optiques 3062223 7 introduites par la caméra ainsi que de la déformation de perspective liée au positionnement, en particulier à l'orientation, de la caméra sur le véhicule, en appliquant une unique transformation globale combinant une première transformation et une deuxième transformation homographique, cette 5 dernière étant déterminée de façon unique pour une distance moyenne entre un obstacle potentiel et la caméra. Ici, l'invention propose de tirer profit du fait la pyramide P d'images générée aux fins de classification d'objets comprend n étages, chaque étage i (i étant un entier variant de 1 à n) correspondant à une échelle prédéterminée 10 E, de l'image capturée ImFR (ou d'au moins une région d'intérêt dans cette image), échelle qui peut à son tour être mise en correspondance avec une distance d, par rapport à la caméra 2FR. L'invention propose en conséquence de déterminer au préalable, pour chaque échelle possible El, et par suite pour chaque distance d, associée, une 15 transformation homographique spécifique qui permette ainsi de corriger très précisément les déformations de perspective dues au positionnement de la caméra 2 sur le véhicule 1. Comme représenté schématiquement sur la figure 2, pour une caméra avant 2FR ayant une portée maximum DmAx, on va identifier n distances notées dl à dn (dn pouvant être confondu avec DmAx), et 20 calculer à l'avance la transformation homographique Thom(di), Thom(d2), ...Thom(dn) qu'il faut appliquer pour corriger les défauts de perspective à chacune de ces distances. La figure 3 illustre, sous forme de synoptique simplifié, différentes 25 étapes susceptibles d'être mises en oeuvre dans un procédé de détection d'obstacle conforme à l'invention. Sur la figure 3, les parties représentées à gauche de la ligne L correspondent à des étapes de pré-calcul et mémorisation dans le système 3 embarqué de différents paramètres et tables caractérisant le système, ces 30 étapes pouvant être réalisées avant même que le système de détection n'équipe effectivement le véhicule automobile, alors que les parties à droite de 3062223 8 la ligne L illustrent un exemple de traitement in situ d'images ImFR capturées par la caméra avant 2FR. L'étape 10 de la figure 3 regroupe le calcul d'au moins une table de correction Topt et sa mémorisation pour utilisation ultérieure dans le traitement 5 des images. Cette table de correction Topt correspond à la première transformation, c'est-à-dire celle vouée à la seule correction des distorsions optiques propres aux paramètres optiques intrinsèques (focale, centre de projection, champ de vision...). Chaque valeur de cette table de correction Topt correspond au déplacement à deux dimensions qu'il convient d'appliquer à 10 chaque pixel défini par ses coordonnées {x,y} dans une image pour obtenir de nouvelles coordonnées {xcor_optScor_opt} représentatives de la correction effectuée. L'étape 15 de la figure 3 regroupe quant à elle l'établissement et la mémorisation de n tables de correction Tnom(di), Thom(d2), ...Thom(dn), 15 correspondant aux transformations homographiques qu'il convient d'appliquer pour chaque distance dl à dn pour corriger les défauts de perspective liés exclusivement à la position et à l'orientation de la caméra sur le véhicule. Comme on l'a vu précédemment, chaque distance d, correspond à une échelle E, de la pyramide d'images P. Ainsi : 20 - chaque valeur de la table de correction Thom(dl) correspond au déplacement à deux dimensions qu'il convient d'appliquer à chaque pixel défini par ses coordonnées {x,y} dans une image prise à l'échelle E1 pour obtenir de nouvelles coordonnées {Xcor homScor horn} représentatives de la correction effectuée ; 25 - chaque valeur de la table de correction Thom(d2) correspond au déplacement à deux dimensions qu'il convient d'appliquer à chaque pixel défini par ses coordonnées {x,y} dans une image prise à l'échelle E2 pour obtenir de nouvelles coordonnées {Xcor homScor horn} représentatives de la correction effectuée, 30 et ainsi de suite jusqu'à la table de correction Thom(dn). 3062223 9 Comme illustré par les étapes situées à droite de la ligne L sur la figure 3, correspondant au traitement in situ des images ImFR capturées par la caméra 2FR, on procède aux différentes étapes 21 à 23 déjà décrites en référence à la figure 1, dans le cadre de l'application d'un algorithme 20 de 5 détection d'obstacles par reconnaissance de formes et apprentissage automatique. Cependant, à la différence des solutions déjà connues, on utilise ici les tables de correction Thom(di), Thom(c12)...Thom(dn) pré établies à l'étape 15 pour générer, lors de l'étape 21, chaque image (étage) de la pyramide P d'image. En d'autres termes, chaque image de la pyramide P est directement 10 générée avec une correction au moins selon la première transformation homographique (Thom(di.), Thom(d2)---Thom(dn)) fonction de l'échelle de l'image, pour corriger des déformations de perspectives liées au positionnement de la caméra sur ledit véhicule. Dans l'exemple de la figure 3, on combine également, de façon simultanée, la correction liée aux distorsions optiques, en 15 utilisant la table Topt pré établie à l'étape 10. Il convient de noter que la correction des distorsions optiques pourrait éventuellement être omise, dans le cas notamment où la caméra utilisée introduit de faibles distorsions optiques. En variante, il n'est pas nécessaire d'effectuer la correction des 20 distorsions optiques de manière simultanée avec la correction de perspectives. On pourrait notamment appliquer dans un premier temps la table Topt directement sur l'image ImFR délivrée par la caméra 2FR. Le fait de combiner les deux corrections au moment de la génération de la pyramide P d'images est néanmoins avantageux en termes de coûts de 25 calcul. En effet, la pyramide d'images est souvent générée à partir de régions d'intérêt à l'intérieur d'une image de sorte que les calculs nécessaires peuvent se limiter à la taille de ces régions d'intérêt. En sortie de l'étape 23 de classification, on obtient des candidats possibles représentatifs d'une présence potentielle d'obstacles dans chacune 30 des zones indépendantes, sous forme d'une boite englobante par candidat possible, chaque boîte englobante subissant un traitement ultime (étape 30) 3062223 10 permettant d'estimer la distance à laquelle se situe l'obstacle détecté par rapport au véhicule. REVENDICATIONS1. Procédé de détection d'obstacles dans l'environnement d'un véhicule automobile (1), à partir d'images capturées par une caméra (2FR) embarquée sur ledit véhicule automobile (1), le procédé comportant l'application d'un algorithme (20) de détection d'obstacles par reconnaissance de formes et apprentissage automatique dans lequel on génère (22) une pluralité de descripteurs d'images par le balayage au moins partiel, par une fenêtre glissante (W), d'une pluralité d'images d'une pyramide (P) d'images, chaque image de la pyramide (P) d'images correspondant à une échelle différente d'au moins une zone d'intérêt d'une image (ImFR) capturée, puis on effectue une classification (23) des descripteurs d'images en vue de déterminer des candidats possibles représentatifs d'une présence potentielle d'obstacles, le procédé étant caractérisé en ce que chaque image de la pyramide (P) d'images est en outre générée (21) à partir de ladite au moins une zone d'intérêt corrigée au moins selon une première transformation homographique (Thom(di.), Thom(d2)...Thom(dn)) fonction de l'échelle de l'image, pour corriger des déformations de perspectives liées au positionnement de la caméra sur ledit véhicule. 2. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que chaque image de la pyramide (P) d'images est générée (21) à partir de ladite au moins une zone d'intérêt corrigée en outre selon une deuxième transformation (Topt) apte à supprimer des distorsions optiques intrinsèques à la caméra (2FR). 3. Procédé selon la revendication 2, caractérisé en ce que la première transformation homographique (Thom(di.), Thom(d2)...Thom(dn)) et la deuxième transformation (2FR) sont appliquées simultanément à ladite au moins une zone d'intérêt au moment de la génération de ladite pyramide (P) d'images. 3062223 12 4. Procédé selon la revendication 2, caractérisé en ce que la deuxième transformation (Topt) est appliquée directement sur l'image (IrnFR) capturée par la caméra (2FR), avant la génération de ladite pyramide d'images. 5 5. Système de détection d'obstacles dans l'environnement d'un véhicule automobile (1), à partir d'images capturées par une caméra (2FR) embarquée sur ledit véhicule automobile (1), ledit système ledit système comportant un module (3) configuré pour implémenter un algorithme (20) de détection d'obstacles par reconnaissance de formes 10 et apprentissage automatique dans lequel on génère (22) une pluralité de descripteurs d'images par le balayage au moins partiel, par une fenêtre glissante (W), d'une pluralité d'images d'une pyramide (P) d'images, chaque image de la pyramide (P) d'images correspondant à une échelle différente d'au moins une zone d'intérêt d'une image (IMFR) 15 capturée, puis on effectue une classification (23) des descripteurs d'images en vue de déterminer des candidats possibles représentatifs d'une présence potentielle d'obstacles, caractérisé en ce que ledit module (3) est en outre apte à générer chaque image de la pyramide (P) d'images à partir de ladite au moins une zone d'intérêt corrigée au 20 moins selon une première transformation homographique (Thom(di.), Thom(d2)...Thom(dn)) fonction de l'échelle de l'image, pour corriger des déformations de perspectives liées au positionnement de la caméra sur ledit véhicule. 6. Système selon la revendication 5, caractérisé en ce les images sont 25 capturées par une caméra de type « fisheye ».