Brevet FR3052581A1 — publié le 20171215

Il est connu d'équiper les véhicules automobiles d'une ou plusieurs caméras pointées vers l'avant du véhicule aux fins d'offrir diverses fonctions d'aide à la conduite. Les images captées par ces caméras peuvent être ainsi analysées pour détecter, par exemple, le franchissement d'une ligne blanche par le véhicule ou détecter divers 5 obstacles (piéton, véhicule arrêté sur le bas-côté, etc.) ou encore pour évaluer la distance avec le véhicule précédent et, le cas échéant, émettre des alarmes à destination du conducteur, ralentir (en cas de conduite avec un régulateur de vitesse), voire déclencher un freinage d'urgence, piloter la direction ou encore piloter les suspensions du véhicule en fonction du profil de la route. Une donnée importante tirée des images captées par les 10 caméras embarquées est la distance (ou profondeur) entre le véhicule et un objet observé. Pour cela, il est connu d'utiliser deux caméras (système stéréoscopique) écartées l'une de l'autre et dont les axes optiques sont orthogonaux à la droite reliant les centres optiques des deux caméras (cette droite peut être un axe transversal du véhicule) 15 et de mettre en application les règles de la géométrie épipolaire après rectification planaire (épipôles à l'infini). La géométrie épipolaire est un modèle mathématique de géométrie, qui décrit les relations géométriques de différentes images du même objet, prises simultanément de différents points d'observation. La géométrie épipolaire permet de décrire les relations 20 entre les pixels en correspondance - c'est-à-dire ceux formés sur chacune des images par un seul et même point de l'objet observé. Le plan qui contient les deux centres de projection et le point objet s'appelle plan épipolaire. Celui-ci coupe chacune des deux images selon une droite, la droite épipolaire. Ainsi, pour un point donné sur une image, le point en correspondance se 25 trouve sur la droite épipolaire de l'autre image. Cette relation, appelée contrainte épipolaire permet, lorsque l'on recherche dans une deuxième image le « deuxième » point correspondant à un « premier » point d'une première image, de limiter la recherche à une droite (la droite épipolaire). Il est connu d'utiliser la contrainte épipolaire pour établir les relations entre 30 deux images captées au même instant par deux caméras indépendantes (stéréo) observant la même scène, afin de restituer l'information tridimensionnelle à partir d'images (2D). En d'autres termes, il est connu d'utiliser la parallaxe entre deux caméras pour la génération d'images en trois dimensions ou pour le calcul de profondeur entre un objet et un observateur. 3052581 2 Dans le secteur automobile, l'analyse épipolaire de deux images stéréo d'une scène à l'avant d'un véhicule permet, par exemple, de déterminer la distance entre le véhicule et un obstacle présent dans ladite scène. Les deux caméras font alors partie d'un système global appelé système d'aide à la conduite. Un inconvénient majeur de cette technique connue est qu'elle nécessite l'utilisation de deux caméras, qui grèvent à la fois le prix de revient et la masse du véhicule, et dont l'encombrement pose des problèmes d'intégration. Elle présente en revanche l'avantage de permettre une évaluation de la profondeur sans que le véhicule soit en mouvement et de fournir des résultats très précis : la profondeur est alors calculée au cm près. Dans toute la description, on entend par « points images en correspondance » ou par « points images correspondants », un premier point d'une première image d'une scène observée et un deuxième point d'une deuxième image de cette même scène, les premier et deuxième points étant les images d'un même point objet de la scène observée. Il est aussi connu, tant en stéréo (c'est-à-dire dans un système utilisant deux caméras qui prennent et comparent des images simultanées d'une même scène) qu'en mono (c'est-à-dire dans un système n'utilisant qu'une seule caméra qui prend et compare des images successives d'une même scène), d'établir des correspondances éparses entre des points images distinctifs de deux images. On parle alors de flux optiques spatiaux pour un système stéréo, et de flux optiques temporels dans le cas d'un système mono. L'inconvénient des techniques de flux connues est que ces flux optiques ne peuvent être obtenus que pour certains points, qui sont distinctifs (points à fort contraste). La mise en correspondance de certains points images non distinctifs peut être très difficile, notamment lorsque les points objets correspondants sont situés sur une droite ou un plan uniforme et uniformément éclairé. Ainsi par exemple, il est malaisé voire impossible de repérer deux points en correspondance qui correspondent à un point objet quelconque situé sur la tranche uniforme du tablier d'un pont enjambant la route et sous lequel le véhicule s'apprête à passer (non unicité du point et de son voisinage). Pour certains objets, il est ainsi très difficile d'obtenir un flux optique temporel et la carte de flux générée pour une scène contenant de tels objets est très clairsemée. Les techniques connues de flux optiques ne permettent pas d'obtenir une carte de flux complète. Généralement, rarement plus de 2 % de la scène observée est couverte par une carte de flux dans un système mono. Ces techniques ne peuvent donc pas être utilisées dans une approche globale, c'est-à-dire pour établir une carte de flux ou une carte de profondeur complète. Elles servent essentiellement à faire du traçage d'objet, c'est-à-dire à suivre un objet dont les points images sont distinctifs. D'autres solutions pour obtenir la distance entre le véhicule et un obstacle ont été proposées, comme 3052581 3 l'intégration d'un radar dans le pare-choc du véhicule. Un équipement supplémentaire est alors nécessaire, qui entraîne un surcoût, une augmentation de masse et la nécessité d'ajouter au moins deux briques de programmation au calculateur principal du véhicule. L'invention vise à pallier ces inconvénients en proposant un procédé de 5 réalisation d'une carte de profondeurs aussi fiable et précis que les procédé connus, pouvant être mis en oeuvre dans un système d'aide à la conduite moins onéreux, moins encombrant et plus léger. Le procédé selon l'invention répond en outre à une approche globale en ce qu'il permet d'obtenir une carte de profondeurs complète, y compris lorsque la scène observée comprend des objets à faible contraste pour lesquels l'obtention de flux 10 optiques est impossible. Un autre objectif de l'invention est de fournir un procédé nécessitant peu de temps de calcul et peu de ressources informatiques pour son exécution. A cette fin, l'invention propose un procédé de réalisation d'une carte de profondeurs à partir d'une première image et d'une deuxième image captées par une 15 caméra embarquée dans un véhicule automobile, comprenant les étapes suivantes : - obtention d'une matrice rotation et d'un vecteur translation entre les deux images, et alignement relatif des deux images de façon à obtenir une première image alignée et une deuxième image alignée ; - recherche de correspondance de points images entre la première image alignée 20 et la deuxième image alignée ; - pour chaque paire de points images en correspondance, calcul d'une profondeur du point objet observé correspondant (c'est-à-dire du point objet observé dont les points en correspondance considérés sont les images) à partir d'au moins une donnée relative à la position sur la première image alignée du premier point 25 image et d'au moins une donnée relative à la position du deuxième point image correspondant sur la deuxième image alignée. Le procédé selon l'invention est remarquable en ce que : - la première et la deuxième image sont captées par une caméra unique à des instants différents, la deuxième image étant une image actuelle captée à un 30 instant t, la première image étant une image précédente captée à un instant t-1, la première image alignée étant par conséquent une image précédente alignée et la deuxième image alignée étant une image actuelle alignée ; - le vecteur translation est le vecteur reliant le centre optique de la caméra unique à l'instant t-1 et le centre optique de la caméra unique à l'instant t ; en 35 conséquence, la norme du vecteur translation correspond à la distance parcourue à vol d'oiseau par le véhicule entre les deux images c'est-à-dire entre les instants t et t-1 ; 3052581 4 - l'alignement relatif des deux images se fait parallèlement à une ligne de référence A correspondant à une direction globale de déplacement du véhicule passant par le centre optique de la caméra unique à l'instant t-1 et par le centre optique de la caméra unique à l'instant t (autrement dit, la ligne de référence A 5 est la direction du vecteur translation) ; on entend par « aligner une image parallèlement à la ligne de référence » le fait de modifier de façon informatique cette image de façon à ce que l'axe optique de l'image modifiée soit parallèle à la ligne de référence ; l'alignement relatif des deux images comprend également un alignement en roulis des deux images c'est-à-dire une modification des images 10 en rotation autour de la ligne de référence (ou de leurs axes optiques préalablement alignés sur cette ligne de référence) de façon à supprimer un éventuel décalage angulaire entre les deux images autour de cette ligne de référence ; - le procédé comprend une étape de transformation de l'image précédente 15 alignée, établie en coordonnées cartésiennes, en une image précédente rectifiée, établie en coordonnées polaires avec pour centre le point épipôle de l'image précédente alignée (c'est-à-dire l'intersection entre l'image alignée à l'instant t-1 et la ligne de référence A) ; il comprend de même une étape de transformation de l'image actuelle alignée, établie en coordonnées cartésiennes, 20 en une image actuelle rectifiée, établie en coordonnées polaires avec pour centre le point épipôle de l'image actuelle alignée (c'est-à-dire l'intersection entre l'image alignée à l'instant t et la ligne de référence A) ; - la recherche de correspondance de points images et le calcul de profondeur s'effectuent sur les images actuelle et précédente rectifiées, c'est-à-dire en 25 coordonnées polaires. L'invention s'étend à un système d'aide à la conduite comprenant d'une part une caméra adaptée pour être embarquée dans un véhicule automobile pour la capture d'images d'une scène extérieure, par exemple à l'avant du véhicule, et d'autre part une unité informatique de traitement pour le traitement des images captées par la caméra aux 30 fins d'évaluation d'une distance entre le véhicule et un point objet observé. Le système selon l'invention est remarquable en ce qu'il comprend une unique caméra et en ce que l'unité de traitement est configurée pour exécuter un procédé selon l'invention, tel que défini ci-avant et tel que précisé ci-après. L'idée de base ayant présidé à la conception de l'invention est donc 35 d'appliquer selon un procédé défini la contrainte épipolaire à deux images captées par une même caméra embarquée (mono) à des instants différents, alors que les systèmes stéréoscopiques appliquent cette contrainte sur des images prises simultanément depuis 3052581 5 des points de vue latéralement translatés à l'aide d'une rectification planaire avec des épipôles à l'infini et que les systèmes mono connus ne fonctionnent qu'avec des techniques de flux (et ne sont donc pas capables de fournir des cartes de profondeurs complètes). L'utilisation d'une seule caméra permet de réduire le prix de revient du 5 système d'aide à la conduite et du véhicule qui en est équipé et de faciliter l'intégration dudit système dans le véhicule. A noter que dans les procédés antérieurs utilisant des techniques de flux (en mono), seuls les points distinctifs sont mis en correspondance et l'étape de recherche de correspondance entre points images est limitée à la recherche de flux, alors que dans 10 l'invention, cette étape utilise la rotation et la translation préalablement obtenues pour rechercher des correspondances entre points images non distinctifs. Une autre différence entre l'invention et l'état de la technique intervient dans l'étape d'alignement relatif des première et deuxième images. Dans les procédés connus utilisant un système stéréoscopique, l'alignement relatif des deux images consiste à 15 corriger, d'une part la direction de l'axe optique de chacune des caméras de façon à ce que celui-ci soit orthogonal à la direction de translation qui est la droite reliant les deux caméras et d'autre part les trois angles de chaque caméra (roulis, tangage et lacet). Dans l'invention, l'axe optique de chacune des deux caméras subit une correction de façon à être parallèle (et non orthogonal) à la direction de translation (ligne de référence reliant le 20 centre optique de la caméra entre les instants t-1 et t, et qui correspond à la direction globale de déplacement du véhicule entre les deux prises de vue) et seul le roulis doit également être corrigé, le tangage et le lacet étant corrigés par l'alignement des deux axes optiques sur la ligne de référence. Cette correction a pour effet de faciliter la mise en correspondance : les points 25 à l'infini sont en effet au même endroit sur les deux images. Une autre différence entre l'invention et l'état de la technique consiste à rectifier les images en coordonnées polaires. Cette rectification est rendue possible par le fait que les épipôles sont situés à proximité immédiate de l'axe optique de la caméra à t comme à t-1 (en effet, une voiture se déplace principalement selon son axe longitudinal 30 donc les épipôles restent à proximité du plan image). A l'inverse, dans les systèmes stéréoscopiques connus, les épipôles sont situés à l'infini, très loin des axes optiques des caméras, et seule une rectification planaire est effectuée. Ce passage en coordonnées polaires, selon l'invention, permet de faciliter la mise en correspondance des points images en réduisant les recherches à une seule 35 coordonnée. Le passage de la disparité à la profondeur est aussi simplifié : il s'agit alors d'un simple produit en croix. On dispose ainsi d'un système et d'un procédé plus rapide et moins gourmand en ressources informatiques. 3052581 6 La matrice rotation et le vecteur translation entre les deux images peuvent, dans le procédé selon l'invention, être obtenus de diverses façons, par exemple : - par analyse de données fournies par un autre capteur, tel qu'un capteur GPS (« Geo Positionning System » en anglais, ou système de localisation 5 géographique) ou un capteur inertiel, présent dans le véhicule ; ou - par application des principes de la géométrie épipolaire à une pluralité de couples (en pratique, huit couples) de points distinctifs correspondants pour lequel un flux temporel peut être préalablement obtenu. Dans les techniques de flux classiques, la recherche d'un deuxième point 10 correspondant à un premier point distinctif est limitée à un voisinage de points autour d'un point de départ de recherche situé au même endroit, sur la deuxième image, que le premier point sur la première image, ce voisinage étant par exemple limité à un rayon de 100 pixels. La recherche de points en correspondance selon l'invention, pour des points non distinctifs, après obtention de la matrice rotation et du vecteur translation, est 15 limitée à un segment de droite, notamment grâce à la rectification des images en coordonnées polaires. Plus particulièrement concernant la recherche de correspondance sur les images rectifiées (hors points distinctifs pour chacun desquels un flux temporel peut être obtenu), le procédé selon l'invention comprend de préférence : 20 - pour chaque premier point image Pb de l'image précédente rectifiée, détermination d'une zone de recherche linéaire du deuxième point image Pa correspondant sur l'image actuelle rectifiée, par application d'un filtre de disparité prédéterminé, lequel filtre de disparité est délimité par une disparité limite DISP choisie entre une disparité minimale DISP,',n (qui peut être exprimée en nombre 25 de pixels) donnée par une profondeur d'intérêt maximale Dmax, et une disparité maximale DISPmax donnée par une profondeur d'intérêt minimale Dmin, les profondeurs d'intérêts minimale Dmin et maximale Dmax étant choisies selon la fonction d'aide à la conduite à mettre en oeuvre et/ou étant choisies en fonction de l'emplacement du premier point image sur l'image précédente rectifiée et/ou 30 étant déduites d'une paire d'images antérieures et d'un calcul de profondeur antérieur relatif au même point objet ; à noter que le terme « profondeur », désigne la distance entre le centre optique de la caméra unique à l'instant t (image actuelle) et la projection sur la ligne de référence A du point objet observé (point objet dont le premier point Pb considéré est le point image 35 sur l'image précédente) ; les profondeurs d'intérêt minimale et maximale définissent donc des plans d'intérêt orthogonaux à la ligne de référence 0 et 3052581 7 situés à la distance Dmin OU Dmax, respectivement, du centre optique de la caméra à l'instant t ; - pour chaque premier point image Pb et un voisinage dudit premier point Pb, recherche sur la zone de recherche linéaire précédemment déterminée, d'un 5 minimum d'au moins une fonction représentative d'une différence entre des intensités de pixel la et lb, où la désigne une intensité de pixel d'un point quelconque de la zone de recherche et de son voisinage sur l'image actuelle rectifiée et lb désigne l'intensité de pixel du premier point image Pb et de son voisinage sur l'image précédente rectifiée. L'expression « voisinage d'un point » 10 désigne une portion -de préférence carrée de 10 pixels de côté par exemple (soit une portion de 100 pixels au total)- de l'image, et dont le point en question est le centre ou un sommet. La « fonction représentative d'une différence entre des intensités de pixel la et lb » est par exemple la somme sur le voisinage du premier point Pb des carrés des différences d'intensités entre un point de ce voisinage et 15 le point associé dans le voisinage du deuxième point Pa considéré. Le deuxième point image Pa recherché correspondant au premier point image Pb considéré est justement le point de la zone de recherche pour lequel la fonction représentative d'une différence d'intensités de pixel est minimale. La recherche, pour chaque premier point image Pb, du minimum de différence d'intensités de pixels entre ce 20 premier point image et son voisinage (sur l'image précédente rectifiée) d'une part et tout point de la zone de recherche correspondante et son voisinage (sur l'image actuelle rectifiée) d'autre part est effectuée par toute méthode connue appropriée de recherche de minimum. La correspondance entre les points images des deux images rectifiées étant 25 alors établie, on peut en déduire la profondeur D entre le véhicule et le point objet observé, D étant plus précisément la distance entre le centre optique de la caméra unique à l'instant t (au moment de l'image actuelle) et une projection sur la ligne de référence A du point objet observé (point objet dont les points images en correspondance considérés sont les images à t et t-1). Cette profondeur D est par exemple donnée par l'équation : 30 D=bxT± (a - b) Où a désigne la distance (qui peut être exprimée en nombre de pixels) sur l'image actuelle alignée, entre le deuxième point image Pa et la ligne de référence A ; autrement dit a correspond à l'abscisse du deuxième point image sur l'image actuelle rectifiée (polaire). 35 Et b désigne la distance (qui peut être exprimée en nombre de pixels) sur l'image précédente alignée, entre le premier point Pb et la ligne de référence A ; il s'agit donc de l'abscisse du premier point image Pb sur l'image précédente rectifiée (polaire) ; 3052581 8 Et T désigne la norme du vecteur translation entre l'image précédente et l'image actuelle, qui, selon l'invention, correspond à la distance parcourue par le véhicule à vol d'oiseau entre les deux images, c'est-à-dire entre t et t-1. En d'autres termes, comme suite à l'étape de recherche des minima de la 5 différence d'intensités de pixel pour tout premier point Pb, qui permet d'établir des correspondances entre les deux images (et donne donc a et b pour chaque point objet observé), on peut établir une carte des profondeurs. Cette étape peut être réalisée en trois temps, à savoir l'établissement d'une carte des disparités polaires représentant la variable (a - b) en coordonnées polaires, puis l'établissement d'une carte virtuelle des 10 profondeurs représentant la profondeur D en coordonnées polaires puis la transformation en coordonnées cartésiennes de cette carte virtuelle des profondeurs établie en coordonnées polaires. L'intérêt de l'étape intermédiaire d'établissement d'une carte des disparités est de pouvoir disposer d'une carte qui, une fois transposée en coordonnées cartésiennes, permet de faire du suivi d'objet dans l'image. 15 Concernant la détermination préalable du filtre de disparité, selon la fonction d'aide à la conduite concernée, il peut être intéressant de détecter des objets à grande distance (par exemple lorsque la fonction d'aide à implémenter est le freinage d'urgence sur autoroute). Dans ce cas, Dmin peut par exemple être choisi égal à 100 m et Dmax égal à 500 m (voire 1000 m). Si l'on souhaite détecter des objets à courte distance (par 20 exemple lorsque la fonction d'aide à implémenter est le freinage d'urgence en ville), Dmin peut par exemple être choisi égal à 5 m et Dmax égal à 100m. Ces exemples sont donnés à titre purement indicatif et non limitatif. Une autre façon de choisir Dmin et Dmax est de considérer les résultats d'un calcul de profondeur antérieur pour le point objet considéré, par exemple le calcul de 25 profondeur effectué à partir des deux images immédiatement précédentes captées, respectivement, à t-2 et t-3. Une autre façon de choisir Dmin et Dmax est de tenir compte de l'emplacement des points considérés sur l'image. Dmax peut être de 100 mètres ou plus (voire l'infini) pour des points situés au milieu ou en haut de l'image. Pour des points situés en bas de 30 l'image (au niveau de la route) Dmax peut être limité entre 10 et 30 mètres ; tel peut aussi être le cas selon la scène observée par exemple si le véhicule est dans un tunnel (information qui peut être donnée par le GPS). Par ailleurs Dmin est avantageusement égal ou supérieur à 5 mètres car en-dessous de 5 m l'image est de toutes façons floue ou le capot de la voiture gène l'observation de l'objet (à tout le moins 35 dans une direction longitudinale du véhicule et dans le cas d'une caméra installée sur le pare-brise du véhicule). 3052581 9 Dmin et Dmax choisis, une disparité minimale et maximale sont déduites, par exemple des équations suivantes : DISPmin = b x T /Dmax DISPmax = b x T /Dmin 5 Où b désigne, comme précédemment expliqué, la distance sur l'image précédente alignée, du premier point image Pb par rapport à la ligne de référence A, soit l'abscisse du premier point image sur l'image précédente rectifiée ; Et T désigne, comme précédemment expliqué, la norme du vecteur translation entre les images précédente et actuelle. 10 Avantageusement et selon l'invention, le calcul de la rotation utilise au moins un flux temporel déduit des images précédente et actuelle ainsi que des données de calibration intrinsèque de la caméra unique. Avantageusement et selon l'invention, la norme du vecteur translation T est déduite de la vitesse du véhicule, fournie par un odomètre du véhicule. 15 De préférence, le procédé selon l'invention comprend de plus une étape initiale de réduction de la distorsion des images précédente et actuelle. D'autres détails et avantages de la présente invention apparaîtront à la lecture de la description suivante, qui se réfère aux dessins schématiques annexés et porte sur des modes de réalisation préférentiels, fournis à titre d'exemples non limitatifs. Sur ces 20 dessins : La figure 1 est un logigramme représentant un procédé selon invention dans son intégralité. La figure 2 est un logigramme représentant un calcul de la rotation et de la translation entre une première image et une deuxième image dans un 25 procédé selon invention. La figure 3 est un schéma illustrant la contrainte épipolaire avec rotation et translation entre deux images. La figure 4 illustre la contrainte épipolaire sans rotation entre deux images et avec une translation parallèle à la ligne de référence A. 30 La figure 5 est une vue de dessus d'un véhicule automobile équipé d'un système d'aide à la conduite selon l'invention, respectivement à un instant t (partie gauche de la figure) et à un instant t-1 (partie droite de la figure). La figure 6 représente la caméra, avec son centre optique O et son plan 35 image à l'instant t-1 et à l'instant t, avant et après alignement des plans images. 3052581 10 - La figure 7 est une image actuelle captée à un instant t par une caméra unique d'un système d'aide à la conduite selon invention. - La figure 8 est une vue image précédente captée à un instant t-1 par la caméra unique du système d'aide à la conduite de la figure 6. 5 - La figure 9 est une image actuelle rectifiée résultant de la transformation en coordonnées polaires de l'image actuelle de la figure 7. - La figure 10 est une image précédente rectifiée résultant de la transformation en coordonnées polaires de l'image précédente de la figure 8. 10 - La figure 11 est un schéma illustrant la correspondance entre deux points images d'une image actuelle rectifiée et d'une image précédente rectifiée et le point objet observé. - La figure 12 est une carte de disparité en coordonnées polaires issue des images rectifiées actuelle et précédente des figures 8 et 9. 15 - La figure 13 est une carte virtuelle de profondeurs en coordonnées polaires issue de la carte de disparité de la figure 11. - La figure 14 est une carte de profondeurs issue de la transformation en coordonnées cartésiennes de la carte de profondeur virtuelle de la figure 13. 20 Le procédé selon invention utilise une caméra unique 1 embarquée dans un véhicule automobile. Il s'agit avantageusement d'une caméra à une cadence fixe, captant par exemple 16 images par seconde. Comme on peut le constater à la figure 5, cette caméra unique 1 peut, par exemple, être fixée à un support disposé sur la partie supérieure du pare-brise 2 du véhicule et la caméra unique 1 est reliée à une unité de 25 traitement informatique 100. Est également représenté à la figure 5, le repère OXYZ intrinsèque de la caméra 1, respectivement à un instant t (figure 5, dessin de gauche) et à un instant t-1 (figure 5, dessin de droite). Dans ce repère, O désigne le centre optique de la caméra 1 et Z désigne l'axe optique de celle-ci. Ce repère n'est lié qu'à la caméra 1. Le repère de la caméra peut se confondre avec un repère du véhicule dans lequel l'axe Z 30 correspond à l'axe de roulis (axe longitudinal) du véhicule, l'axe X correspond à l'axe de tangage (ou axe transversal) du véhicule, l'axe Y correspond à l'axe de lacet du véhicule. En variante et de préférence, la caméra est légèrement orientée vers la route, c'est-à-dire que l'axe X de la caméra et l'axe de tangage du véhicule sont confondus mais que ce n'est pas le cas de l'axe Z de la caméra et de l'axe de lacet du véhicule, le repère de la 35 caméra ayant subi une petite rotation autour de l'axe de tangage (ou axe X), de 1° par exemple pour un véhicule léger jusqu'à 13° pour un poids lourds, selon la hauteur de la caméra par rapport à la route et donc par rapport à la bande de roulement des pneus. 3052581 11 Le procédé selon l'invention illustré à la figure 1 comprend une première étape 10 de réduction de la distorsion des images précédentes 7 et actuelles 8 captées par la caméra unique 1. La réduction de la distorsion peut utiliser des paramètres radiaux, tangentiels et prismatiques. Une telle étape est connue en soi et ne sera donc pas 5 détaillée ici. En pratique, les images non distordues ne sont pas générées ; seuls les calculs sont effectués. Le procédé de la figure 1 comprend ensuite une deuxième étape 12 de calcul de la contrainte épipolaire entre une image actuelle 8 captée à l'instant t par la caméra unique 1 et une image précédente 7 captée à l'instant t-1 par la caméra unique. Cette 10 étape 12 permet d'obtenir la translation et la rotation entre l'image précédente 7 et l'image actuelle 8. Le détail de cette étape 12 est illustré à la figure 2. Un flux temporel 120 est tout d'abord déduit des images précédente 7 et actuelle 8, lequel flux permet d'établir une matrice fondamentale F, étape122. Des données de calibration intrinsèque, étape 124, de la caméra unique 1 sont alors utilisées pour calculer une matrice essentielle E, étape 126, 15 dont sont ensuite déduits, lors de l'étape 128, la rotation R et un multiple aT de la translation. L'utilisation de la vitesse, étape 130 du véhicule fournie par un odomètre embarqué dans le véhicule permet de déduire, lors de l'étape 132, la translation T. En d'autres termes, un changement de repère et d'unité lie la matrice fondamentale F, laquelle « travaille » en pixels, et la matrice essentielle E, qui « travaille » en mètre. Ce 20 changement de repère fournit la rotation R et le vecteur vitesse T[tx, t,, tz]. La figure 3 illustre la contrainte épipolaire dans le cas où une rotation se produit entre les deux images à comparer. Considérant un point image A de l'image actuelle, on peut limiter les recherches du point image B correspondant de l'image précédente à la ligne épipolaire 30. Cette ligne épipolaire est référencée 32 à la figure 4 25 qui représente le cas où aucune rotation ne se produit entre les deux images ou lorsque la rotation est corrigée par alignement des deux images. La prise en compte de la translation permet de surcroît de limiter la zone de recherche à un segment 34 de cette ligne épipolaire 32. Dans toute la suite et comme illustré à la figure 5, l'indice 2 fait référence à 30 l'axe optique de la caméra et à l'image (précédente) 7 captée à l'instant t-1, l'indice 4 fait référence à l'axe optique aligné de la caméra à l'instant t-1 et à l'image précédente alignée 7' (ou première image alignée) ; l'indice 1 fait référence à l'axe optique de la caméra et à l'image (actuelle) 8 captée à l'instant t, l'indice 3 fait référence à l'axe optique aligné de la caméra à l'instant t et à l'image actuelle alignée 8' (ou deuxième image 35 alignée). La lettre R fait référence à la rotation. Ainsi R_21 désigne la rotation du vecteur 1 dans le repère 2, R_42 la rotation du vecteur 2 dans le repère 4, etc. La lettre T fait référence à la translation, de sorte que T_21 désigne la translation de 1 dans le 3052581 12 repère 2, T_42 la translation de 2 dans le repère 4, etc. La lettre P désigne un point quelconque de l'espace, P1 désignant ce point dans le repère 1, P2 ce point dans le repère 2, etc. P2 = (R_21 * P1) + T_21 5 P4 = (R_42 * P2) + T_42, avec T_42 = 0 P3 = (R_31 * P1) + T 31 avec T_31 = 0 P4 = (R_43 * P3) + T_43 avec R_43 = 1 car les images sont alors alignées et T_43 = [ 0; 0 ; norm(T_21)] Ce qui donne : 10 P2 = (R_21 * P1) + T_21 P4 = R_42 * P2 P3 = R_31 *P1 P4 = P3 + [ 0; 0 ; norm(T_21)] Puis 15 R_24 * P4 = (R_21 * R_13 * P3) + T_21 P4 = P3 + [ 0; 0 ; norm(T_21)] Puis P4 = (R_42 * R_21 * R_13 * P3) + R_42*T_21 P4 = P3 + [ 0; 0 ; norm(T_21)] 20 Et pour finir : R_42*T_21 = [ 0; 0 ; norm(T_21)] La matrice de passage R_42 (du repère 2 vers le repère 4) s'écrit : R_42 = RX_42 RY_42 RZ_42 où RX_42 traduit la rotation du repère 2 dans le repère 4 autour de l'axe X, 25 RY_42 autour de l'axe Y, etc. Considérons rz_42 = 0 (pas de rotation autour de l'axe Z entre 2 et 4) RX_42 = [ 1, 0 0 0 cos(rx_42), -sin(rx_42) 0 sin(rx_42), cos(rx_42) I ; 30 RY_42 = [ cos(ry_42) 0 sin(ry_42) 0 1 0 -sin(ry_42) 0 cos(ry_42) ] ; R_42 = RY_42*RX_42 (R_42*T_21) = [0;0;norm(T_21)] ; 35 EQ1 : tx_21*cos(ry_31) + tz_21*cos(rx_42)*sin(ry_42) + ty_21*sin(rx_42)*sin(ry_42) EQ2 : ty_21*cos(rx_42) - tz_21*sin(rx_42) 3052581 13 EQ3 : tz_21*cos(rx_42)*cos(ry_42) - tx_21*sin(ry_42) - (abs(tx_21)^2 + abs(ty_21)^2 + abs(tz_21)^2)^(1/2) + ty_21*cos(ry_42)*sin(rx_42) EQ2 : ty_21*cos(rx_42) - tz_21*sin(rx_42) = 0 sin(rx_42)/cos(rx_42) = ty_21/tz_21= tan(rx_42) 5 rx_42 = atan(ty_21/tz_21) EQ1 : tx_21*cos(ry_42) + tz_21*cos(rx_42)*sin(ry_42) + ty_21*sin(rx_42)*sin(ry_42)= 0 sin(ry_42)/cos(ry_42) = - tx_21 / (tz_21*cos(rx_42)+ ty_21*sin(rx_42)) = tan(ry_42) tan(ry_42) = - tx_21 / (tz_21*cos(rx_42)+ ty_21*sin(rx_42)) 10 ry_42 = atan(- tx_21 / (tz_21*cos(rx_42)+ ty_21*sin(rx_42))) On peut faire de même pour R_31 rx_31 = atan(ty_12/tz_12) ry_31 = atan(- tx_12 / (tz_12*cos(rx_31)+ ty_12*sin(rx_31))) Pour le roulis, on applique la moitié du roulis restant à chaque image 15 rectifiée 3 et 4. R_34 = R_31*R_12*R_24 ; On peut trouver rz_43 à partir de la matrice de rotation R_43 rz_31 = rz_43/2; rz_42 = -rz_43/2; 20 Les images précédente et actuelle non distordues issues de l'étape 10 peuvent alors être transformées, à l'étape 14 (voir figure 1), en images précédente alignée 7' et actuelle alignées 8'. Le procédé comprend ensuite une étape 16 de génération d'une image précédente rectifiée 7" (visible à la figure 9) par transformation, en coordonnées polaires, 25 de l'image précédente (figure 7) alignée 7' établie en coordonnées cartésiennes. De même, l'étape 14 comprend la génération d'une image actuelle rectifiée 8" (figure 8) par transformation en coordonnées polaires de l'image actuelle (figure 6) alignée 8' fournies en coordonnées cartésiennes. Le procédé comporte ensuite la recherche 18 de correspondance entre points 30 images de l'image actuelle rectifiée 8" et de l'image précédente rectifiée 7", cette recherche consistant à rechercher le minimum d'au moins une fonction représentative d'une différence (par exemple la somme, sur le voisinage du point considéré, des différences au carré) entre les intensités de pixels la et lb, a désignant un pixel (autrement appelé point image Pa) de l'image actuelle situé sur la ligne épipolaire du point Pb de 35 l'image précédente et sur un segment de cette ligne limité par un filtre de disparité défini par : filtre = [DISPmin ; DISPmax] 3052581 14 DISP étant choisi entre : DISPmin = b x T /Dmax DISPmax = b x T /Dmin avec, par exemple, Dmax = 100m et D,,,n= 5m. A chaque point Pb de l'image précédente ayant un rayon b (abscisse du 5 point Pb sur l'image précédente rectifiée en coordonnées polaires) et pour lequel aucun flux temporel n'est disponible, est alors associé un point image Pa correspondant de l'image actuelle, ayant une abscisse a sur l'image actuelle rectifiée. Le procédé comprend alors une étape 20 de réalisation d'une carte de disparité polaire (figure 12) qui correspond à la soustraction (a-b) des abscisses en 10 coordonnées polaires des points en correspondance. De cette carte de disparité polaire peut être déduit, à l'étape 22 une carte virtuelle de profondeurs D en coordonnées polaires (figure 13), grâce à l'équation : D=bxT± disparité avec disparité = a - b 15 La transformation, à l'étape 23, de cette carte virtuelle de profondeurs en coordonnées cartésiennes fournit la carte de profondeurs recherchée que l'on peut observer à la figure 14. Le procédé de réalisation de la carte de profondeurs D est réalisé par une unité de traitement informatique 100 reliée à la caméra unique 1. REVENDICATIONS1. Procédé de réalisation d'une carte de profondeurs (D) à partir d'une première image (7) et d'une deuxième image (8) captées par une caméra (1) embarquée dans un véhicule automobile, comprenant les étapes suivantes : - obtention d'une matrice rotation (R) et d'un vecteur translation (T) entre les première (7) et deuxième images (8), et alignement relatif des deux images de façon à obtenir une première image alignée (7') et une deuxième image alignée (8') ; - recherche de correspondance de points image entre la première image alignée (7') et la deuxième image alignée (8') ; - pour chaque paire de points images en correspondance, calcul d'une profondeur d'un point objet observé correspondant, à partir d'au moins une donnée relative à la position sur la première image alignée (7') du premier point image et d'au moins une donnée relative à la position du deuxième point image correspondant sur la deuxième image alignée (8'), les profondeurs calculées permettant d'établir une carte des profondeurs d'une scène observée ; le procédé étant caractérisé en ce que : - la première (7) et la deuxième image (8) sont captées par une caméra unique (1) à des instants différents, la deuxième image étant une image actuelle (8) captée à un instant t, la première image étant une image précédente (7) captée à un instant t-1, - le vecteur translation (T) est le vecteur reliant le centre optique de la caméra unique (1) à l'instant t-1 et le centre optique de la caméra unique (1) à l'instant t ; - l'alignement relatif (14) des première (7) et deuxième images (8) se fait, d'une part parallèlement à une ligne de référence (A) correspondant à une direction globale de déplacement du véhicule passant par un centre optique (Ot_i) de la caméra unique (1) à l'instant t-1 et par le centre optique (Ot) de la caméra unique (1) à l'instant t, et d'autre part en roulis autour de cette ligne de référence (A) ; - le procédé comprend une étape de transformation (16) de l'image précédente alignée (7') -respectivement l'image actuelle alignée (8')-, établie en coordonnées cartésiennes, en une image précédente rectifiée (7") respectivement une image actuelle rectifiée (8"), établie en coordonnées polaires 3052581 16 avec pour centre le point épipôle de l'image précédente alignée (7') respectivement de l'image actuelle alignée (8')-, - la recherche de correspondance de points images (18) et le calcul de profondeurs (D) s'effectuent sur les images précédente (7") et actuelle 5 rectifiées (8"), c'est-à-dire en coordonnées polaires. 2. Procédé selon la revendication 1, caractérisé en ce que la matrice rotation (R) et le vecteur translation (T) entre l'image précédente (7) et l'image actuelle (8) sont obtenus (12) par application des principes de la géométrie épipolaire à une pluralité de couples de points distinctifs correspondants pour lequel un flux temporel a pu être 10 préalablement obtenu. 3. Procédé selon l'une des revendications précédentes, caractérisé en ce qu'il comprend, pour un premier point image Pb de l'image précédente rectifiée (7"), une étape de détermination d'une zone de recherche linéaire sur l'image actuelle rectifiée (8") par application d'un filtre de disparité prédéterminé, lequel filtre de disparité est compris entre 15 une disparité minimale DISPmin donnée par une distance maximale Dmax, et une disparité maximale DISPmax donnée par une distance minimale Dmin, lesquelles distances minimale Dmin et maximale D. sont choisies en fonction de l'emplacement du premier point image sur l'image précédente rectifiée (7") et/ou selon une fonction d'aide à la conduite à mettre en oeuvre et/ou sont déduites d'une profondeur calculée à partir d'une paire d'images 20 antérieures. 4. Procédé selon la revendication 3, caractérisé en ce que, pour la détermination du filtre de disparité, on utilise les équations : DISPmin = b x T Dmax DISPmax = b Dmin 25 où b désigne la distance sur l'image précédente alignée (7'), entre le premier point image et la ligne de référence (s), c'est-à-dire l'abscisse du premier point image Pb sur l'image précédente rectifiée (7"), et T désigne la norme du vecteur translation entre l'image précédente (7) et l'image actuelle (8), qui correspond à la distance parcourue par le véhicule à vol d'oiseau entre 30 les instants t-1 et t. 5. Procédé selon la revendication 3 ou 4, caractérisé en ce qu'il comprend, pour chaque premier point image Pb de l'image précédente rectifiée (7"), une recherche sur la zone de recherche linéaire précédemment déterminée, d'un minimum d'au moins une fonction représentative d'une différence entre des intensités de pixel la et lb, où I, 3052581 17 désigne l'intensité de pixel d'un point quelconque Pa de la zone de recherche linéaire et de son voisinage sur l'image actuelle rectifiée (8") et lb désigne l'intensité de pixel du premier point image Pb et de son voisinage sur l'image précédente (7) ou sur l'image précédente rectifiée (7"). 5 6. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que l'établissement de la carte des profondeurs (D) comprend : - l'établissement d'une carte des disparités polaires représentant la variable (a b) en coordonnées polaires, où a désigne la distance sur l'image actuelle alignée (8'), entre le deuxième point image et 10 la ligne de référence (A), c'est-à-dire l'abscisse du deuxième point image Pa sur l'image actuelle rectifiée (8"), et b désigne la distance sur l'image précédente alignée (7"), entre le premier point image et la ligne de référence (A), c'est-à-dire l'abscisse du premier point image Pb sur l'image actuelle rectifiée (8"), les points Pa et Pb étant des points en correspondance. 15 7. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce qu'il comprend l'établissement d'une carte virtuelle des profondeurs (22) représentant la profondeur (D) en coordonnées polaires, et la transformation (23) en coordonnées cartésiennes de cette carte virtuelle des profondeurs établie en coordonnées polaires. 20 8. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que, dans l'étape d'établissement de la carte des profondeurs, la profondeur (D) est donnée par l'équation D= bxT÷(a-b), où a désigne une distance sur l'image actuelle alignée (8'), entre un deuxième point image et la ligne de référence A, b désigne une distance sur l'image précédente 25 alignée (7'), entre un premier point image et la ligne de référence A, les premier et deuxième points images étant des points en correspondance, et T désigne la norme du vecteur translation entre les première et deuxième images. 9. Système d'aide à la conduite permettant d'établir une carte des profondeurs (d) d'une scène observée, le système comprenant d'une part une caméra 30 adaptée pour être embarquée dans un véhicule automobile pour la capture d'images d'une scène extérieure et d'autre part une unité de traitement informatique (100) pour le traitement des images captées par la caméra aux fins d'évaluation d'une profondeur entre le véhicule et un point objet observé, caractérisé en ce qu'il comprend une unique caméra (1) et en ce que l'unité de traitement informatique (100) est configurée pour exécuter un procédé selon l'une quelconque des revendications précédentes.