FR3161785A1 - Procédé et dispositif d’apprentissage d’un modèle de prédiction de profondeur à partir d’images filtrées par bandes verticales. - Google Patents
Procédé et dispositif d’apprentissage d’un modèle de prédiction de profondeur à partir d’images filtrées par bandes verticales.Info
- Publication number
- FR3161785A1 FR3161785A1 FR2404260A FR2404260A FR3161785A1 FR 3161785 A1 FR3161785 A1 FR 3161785A1 FR 2404260 A FR2404260 A FR 2404260A FR 2404260 A FR2404260 A FR 2404260A FR 3161785 A1 FR3161785 A1 FR 3161785A1
- Authority
- FR
- France
- Prior art keywords
- image
- pixels
- band
- images
- pixel
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Image Analysis (AREA)
Abstract
Procédé ou dispositif d’apprentissage d’un modèle de prédiction de profondeur associé à un système de vision embarqué dans un véhicule. En effet, le procédé comprend la réception (31) d’un lot d’images acquises par une caméra du système de vision, les images étant acquises à des instants temporels distincts, la division (32) en bandes verticales de ces images, une comparaison de bandes verticales d’une première image à celles d’une deuxième image précédant la première image et la suppression (34) de la première image lorsqu’une différence colorimétrique (33) associée à l’une de ses bandes verticales est inférieure à un seuil. Une erreur photométrique locale est alors déterminée (36) pour comparer chaque bande verticale de la première image aux bandes verticales de la deuxième image. Le modèle de prédiction de profondeur est alors appris (38) par minimisation des erreurs photométriques les plus importantes associées aux bandes verticales de chaque première image.
Figure pour l’abrégé : Figure 3
Description
La présente invention concerne les procédés et dispositifs d’apprentissage d’un modèle de prédiction de profondeur associé à un système de vision stéréoscopique embarqué dans un véhicule, par exemple dans un véhicule automobile. La présente invention concerne également un procédé et un dispositif de détermination d’une profondeur et/ou de mesurage d’une distance séparant un objet d’un véhicule embarquant un système de vision.
De nombreux véhicules modernes sont équipés de systèmes d’aide à la conduite dits ADAS (de l’anglais « Advanced Driver-Assistance System » ou en français « Système d’aide à la conduite avancé »). De tels systèmes ADAS sont des systèmes de sécurité passifs et actifs conçus pour éliminer la part d'erreur humaine dans la conduite de véhicules de tous types. Les ADAS utilisent des technologies avancées pour assister le conducteur pendant la conduite et améliorer ainsi ses performances. Les ADAS utilisent une combinaison de technologies de capteurs pour percevoir l’environnement autour d’un véhicule, puis fournissent des informations au conducteur ou agissent sur certains systèmes du véhicule.
Il existe plusieurs niveaux d’ADAS, tels que les caméras de recul et les capteurs d'angle mort, les systèmes d'alerte de franchissement de ligne, les régulateurs de vitesse adaptatifs ou encore les systèmes de stationnement automatique.
Les ADAS embarqués dans un véhicule sont alimentés par des données obtenues d’un ou plusieurs capteurs embarqués tels que, par exemple, des caméras. Ces caméras permettent notamment de détecter et de situer d’autres usagers de la route ou d’éventuels obstacles présents autour d’un véhicule afin, par exemple :
- d’adapter l’éclairage du véhicule en fonction de la présence d’autres usagers ;
- de réguler de façon automatique la vitesse du véhicule ;
- d’agir sur le système de freinage en cas de risque d’impact avec un objet.
- d’adapter l’éclairage du véhicule en fonction de la présence d’autres usagers ;
- de réguler de façon automatique la vitesse du véhicule ;
- d’agir sur le système de freinage en cas de risque d’impact avec un objet.
Une position d’un autre usager ou d’un obstacle est, par exemple, déterminée par un système de vision comprenant un modèle de prédiction d’une profondeur associée à un pixel ou d’une distance séparant le système de vision d’un objet d’une scène tridimensionnelle. Un tel modèle est par exemple appris à l’aide d’images, ces images étant obtenues d’une base de données universelle, par exemple Kitti® ou Sceneflow®. Kitti® par exemple fournit des images d’un environnement routier en centre-ville, mais une telle base de données ne comprend cependant pas l’intégralité des environnements routiers dans lequel peut évoluer un véhicule. Les données d’apprentissage sont alors inadaptées pour entraîner le modèle de prédiction pour un véhicule circulant dans d’autres environnements routiers.
La qualité de l’entraînement du modèle de prédiction de profondeur ou distance est cependant très importante, en effet, les profondeurs ou distances prédites par le modèle de prédiction représentent par exemple des distances auxquelles se situent les autres usagers ou obstacles présents dans l’environnement routier du véhicule embarquant le système de vision et des ADAS. De la qualité des données émises par le système de vision dépend donc le bon fonctionnement des périphériques d’aides à la conduite utilisant ces données.
Un système de vision comprenant une caméra, par la suite appelé système de vision monoculaire, utilise plusieurs images consécutives pour prédire des profondeurs associées à des pixels d’une des images. Ce système de vision monoculaire a pour défaut de ne pas être en mesure de prédire précisément des profondeurs associées à des pixels d’une image correspondant à des objets en mouvement dans la scène tridimensionnelle observée lors d’une phase d’entrainement ou d’apprentissage, ces objets en mouvement étant par la suite appelés objets dynamiques. En effet, la précision des profondeurs prédites par ce système de vision monoculaire pour des pixels correspondants à un objet dynamique n’est pas satisfaisante durant cet apprentissage, le modèle de prédiction de profondeur n’étant pas en mesure de déterminer une part de disparité ou de flux optique, par exemple, provenant du mouvement propre de l’objet dynamique. Plus le nombre de pixels correspondant à un objet dynamique compris dans une image est important, moins l’apprentissage du modèle de prédiction de profondeur sera pertinent. Il convient donc d’apprendre le modèle de prédiction de profondeur associé à ce système de vision monoculaire à partir d’images ne comprenant pas de pixels correspondant à un objet dynamique, néanmoins ce type de filtration n’est pas évident.
Un objet de la présente invention est de résoudre au moins l’un des problèmes de l’arrière-plan technologique décrit précédemment.
Un autre objet de la présente invention est d’améliorer la phase d’apprentissage d’un modèle de prédiction de profondeur à partir d’images acquises par un système de vision, le modèle de prédiction de profondeur étant notamment mis en œuvre par un réseau de neurones et associé à un système de vision embarqué dans un véhicule.
Un autre objet de la présente invention est d’améliorer la sécurité routière, notamment par l’amélioration de la sûreté de fonctionnement des système ADAS alimentés par des données obtenues d’une caméra d’un système de vision.
Selon un premier aspect, la présente invention concerne un procédé d’apprentissage d’un modèle de prédiction de profondeur mis en œuvre par un réseau de neurones convolutif associé à un système de vision embarqué dans un véhicule, le système de vision comprenant une caméra disposée de manière à acquérir une image d’une scène tridimensionnelle d’un environnement extérieur du véhicule,
le procédé étant mis en œuvre par au moins un processeur, et étant caractérisé en ce qu’il comprend les étapes suivantes :
- réception d’un lot d’images acquises par la caméra comprenant au moins une séquence d’images, les images du lot étant ordonnées en fonction d'un instant temporel d'acquisition de chaque image du lot, le lot d’images comprenant un premier ensemble de premières images et un deuxième ensemble de deuxièmes images, une première image du premier ensemble précédant immédiatement une deuxième image du deuxième ensemble, la première image étant acquise à un premier instant temporel d’acquisition antérieur à un deuxième instant temporel d'acquisition de la deuxième image ;
- pour chaque image du lot d’images, division de chaque image en une pluralité de bandes verticales de même largeur, à chaque bande verticale dans chaque première image, dite première bande, correspondant une bande verticale dans la deuxième image précédant immédiatement la première image, dite deuxième bande ;
- détermination, pour chaque première bande, d’une différence colorimétrique associée à chaque première bande par comparaison de pixels de chaque première bande à des pixels de la deuxième bande correspondant à la première bande ;
- suppression de toute première image dans le lot d’images pour laquelle la différence colorimétrique associée à au moins une première bande de la première image est inférieure à une valeur seuil,
- détermination, pour chaque pixel d’un ensemble de pixels de chaque première image non supprimée dans le lot d’images, d’une erreur photométrique associée au pixel à partir :
• d’une première erreur photométrique déterminée par comparaison de pixels de la deuxième image suivant immédiatement la première image non supprimée à des pixels d’une troisième image, les pixels de la troisième image étant générés à partir des pixels de la première image non supprimée et de premières profondeurs associées aux pixels de la première image non supprimée, et
• d’une deuxième erreur photométrique déterminée par comparaison des pixels de la première image non supprimée à des pixels d’une quatrième image, les pixels de la quatrième image étant générés à partir des pixels de la deuxième image et de deuxièmes profondeurs associées aux pixels de la deuxième image,
les premières et deuxièmes profondeurs étant prédites par le modèle de prédiction de profondeur à partir des première et deuxième images ;
- premier apprentissage du modèle de prédiction de profondeur par minimisation d’une première erreur de perte déterminée à partir des erreurs photométriques associées aux pixels de chaque ensemble de pixels de chaque première image non supprimée dans le lot d’images,
- détermination, pour chaque bande verticale de chaque première image non supprimée, d’une erreur photométrique locale à partir des erreurs photométriques associées aux pixels de la bande verticale ;
• sélection, pour chaque première image non supprimée, d’un nombre déterminé de bandes verticales en fonction de l’erreur photométrique locale associée à chaque bande verticale de la première image non supprimée, les bandes verticales sélectionnées étant celles de plus faibles erreurs photométriques locales ;
- deuxième apprentissage du modèle de prédiction de profondeur par minimisation d’une deuxième erreur de perte déterminée à partir des erreurs photométriques locales associées aux bandes verticales sélectionnées.
le procédé étant mis en œuvre par au moins un processeur, et étant caractérisé en ce qu’il comprend les étapes suivantes :
- réception d’un lot d’images acquises par la caméra comprenant au moins une séquence d’images, les images du lot étant ordonnées en fonction d'un instant temporel d'acquisition de chaque image du lot, le lot d’images comprenant un premier ensemble de premières images et un deuxième ensemble de deuxièmes images, une première image du premier ensemble précédant immédiatement une deuxième image du deuxième ensemble, la première image étant acquise à un premier instant temporel d’acquisition antérieur à un deuxième instant temporel d'acquisition de la deuxième image ;
- pour chaque image du lot d’images, division de chaque image en une pluralité de bandes verticales de même largeur, à chaque bande verticale dans chaque première image, dite première bande, correspondant une bande verticale dans la deuxième image précédant immédiatement la première image, dite deuxième bande ;
- détermination, pour chaque première bande, d’une différence colorimétrique associée à chaque première bande par comparaison de pixels de chaque première bande à des pixels de la deuxième bande correspondant à la première bande ;
- suppression de toute première image dans le lot d’images pour laquelle la différence colorimétrique associée à au moins une première bande de la première image est inférieure à une valeur seuil,
- détermination, pour chaque pixel d’un ensemble de pixels de chaque première image non supprimée dans le lot d’images, d’une erreur photométrique associée au pixel à partir :
• d’une première erreur photométrique déterminée par comparaison de pixels de la deuxième image suivant immédiatement la première image non supprimée à des pixels d’une troisième image, les pixels de la troisième image étant générés à partir des pixels de la première image non supprimée et de premières profondeurs associées aux pixels de la première image non supprimée, et
• d’une deuxième erreur photométrique déterminée par comparaison des pixels de la première image non supprimée à des pixels d’une quatrième image, les pixels de la quatrième image étant générés à partir des pixels de la deuxième image et de deuxièmes profondeurs associées aux pixels de la deuxième image,
les premières et deuxièmes profondeurs étant prédites par le modèle de prédiction de profondeur à partir des première et deuxième images ;
- premier apprentissage du modèle de prédiction de profondeur par minimisation d’une première erreur de perte déterminée à partir des erreurs photométriques associées aux pixels de chaque ensemble de pixels de chaque première image non supprimée dans le lot d’images,
- détermination, pour chaque bande verticale de chaque première image non supprimée, d’une erreur photométrique locale à partir des erreurs photométriques associées aux pixels de la bande verticale ;
• sélection, pour chaque première image non supprimée, d’un nombre déterminé de bandes verticales en fonction de l’erreur photométrique locale associée à chaque bande verticale de la première image non supprimée, les bandes verticales sélectionnées étant celles de plus faibles erreurs photométriques locales ;
- deuxième apprentissage du modèle de prédiction de profondeur par minimisation d’une deuxième erreur de perte déterminée à partir des erreurs photométriques locales associées aux bandes verticales sélectionnées.
Ce procédé d’apprentissage permet ainsi de limiter :
• la prise en compte d’images acquises par un système de vision statique, la différence colorimétrique déterminée lors de l’étape de détermination d’une différence colorimétrique permettant de détecter l’absence de mouvement de la caméra entre deux instants temporels d’acquisition d’images consécutifs afin de ne pas prendre en compte les bandes associées à ces images lors des étapes suivantes, et
• l’influence de la présence de pixels d’une image correspondants à un objet en mouvement dans la scène tridimensionnelle observée, appelé objet dynamique, via la sélection des bandes présentant la plus petite erreur photométrique et donc les moins susceptibles de présenter ce type de pixels.
• la prise en compte d’images acquises par un système de vision statique, la différence colorimétrique déterminée lors de l’étape de détermination d’une différence colorimétrique permettant de détecter l’absence de mouvement de la caméra entre deux instants temporels d’acquisition d’images consécutifs afin de ne pas prendre en compte les bandes associées à ces images lors des étapes suivantes, et
• l’influence de la présence de pixels d’une image correspondants à un objet en mouvement dans la scène tridimensionnelle observée, appelé objet dynamique, via la sélection des bandes présentant la plus petite erreur photométrique et donc les moins susceptibles de présenter ce type de pixels.
En effet, l’apprentissage du modèle de prédiction de profondeur n’est pas valide à partir d’images acquises par une caméra immobile ou statique dans la scène tridimensionnelle ni à partir d’images comprenant des pixels correspondant à un objet dynamique. Ces différentes étapes permettent ainsi de filtrer les bandes utilisées pour apprendre le modèle de prédiction de profondeur.
Selon une variante du procédé d’apprentissage, la différence colorimétrique associée à la première bande est définie par la fonction suivante :
Avec :
• correspondant à la différence colorimétrique associée à la première bande, notée ,
• une valeur colorimétrique déterminée pour un pixel dans la première bande, le pixel étant défini par ses coordonnées en deux dimensions,
, et
• une valeur colorimétrique déterminée pour le pixel dans la deuxième bande.
Avec :
•
•
, et
•
Si deux images ont été acquises depuis un même point de vue, c’est-à-dire à deux instants temporels distincts lorsque la caméra n’est pas en mouvement, alors les pixels des deux images sont similaires. Leurs valeurs colorimétriques sont alors quasiment identiques, la différence colorimétrique est alors quasiment nulle.
Selon une autre variante du procédé d’apprentissage, l’erreur photométrique associée à la première bande est déterminée par la fonction suivante :
Avec :
• correspondant à l’erreur photométrique locale associée à la première bande, notée ,
• la première erreur photométrique déterminée pour un pixel dans la deuxième bande, le pixel étant défini par ses coordonnées en deux dimensions, et
• la deuxième erreur photométrique déterminée pour le pixel dans la première bande.
Avec :
•
•
•
Le fait de ne retenir que la valeur minimale parmi la première et la deuxième erreurs photométriques permet notamment de ne pas impacter l’apprentissage lorsqu’un objet de la scène tridimensionnelle est occlus dans l’une des images, c’est-à-dire lorsqu’une image comprend des pixels correspondant à cet objet et que l’autre image ne comprend pas de pixels correspondant à ce même objet.
Selon encore une variante du procédé d’apprentissage, la deuxième erreur de perte est égale à une somme des erreurs photométriques associées aux bandes verticales sélectionnées. L’ensemble des bandes verticales sélectionnées est ainsi prise en compte lors de l’apprentissage du modèle de prédiction de profondeur.
Selon une variante supplémentaire du procédé d’apprentissage, la première, respectivement la deuxième, erreur photométrique est déterminée par la fonction suivante :
Avec :
• la première erreur photométrique, notée , respectivement la deuxième erreur photométrique notée, ,
• une valeur colorimétrique d’un pixel dans la deuxième image, respectivement dans la première image, étant un pixel défini par ses coordonnées en deux dimensions,
• une valeur du pixel dans la troisième image, respectivement dans la quatrième image,
• SSIM une fonction qui prend en compte une structure locale, et
• un facteur de pondération dépendant notamment du type d’environnement dans lequel évolue le véhicule.
Avec :
•
•
•
• SSIM une fonction qui prend en compte une structure locale, et
•
Selon une variante additionnelle du procédé d’apprentissage, le premier ensemble de pixels, respectivement le deuxième ensemble de pixels, est généré par la fonction suivante :
Avec :
• les coordonnées d’un pixel dans la troisième image, respectivement dans la quatrième image,
• une fonction pour passer de coordonnées homogènes à des coordonnées pixels en supprimant une dimension d’un vecteur,
• un modèle de prédiction de direction associé à la caméra (11),
• une matrice comprenant des paramètres extrinsèques, et
• une fonction de projection dans la scène tridimensionnelle d’un pixel en fonction de ses coordonnées dans la première image, respectivement dans la deuxième image, et de la profondeur qui lui est associée.
Avec :
•
•
•
•
•
Selon encore une variante du procédé d’apprentissage, le seuil est déterminé par la fonction suivante :
Avec :
• le seuil,
• une différence seuil pour un pixel,
• un nombre de pixels compris dans une hauteur de bande verticale, et
• un nombre de pixels compris dans une largeur de bande verticale.
Avec :
•
•
•
•
Le seuil est ainsi proportionnel au nombre de pixels compris dans une bande verticale, le facteur ‘k’ permettant d’ajuster le seuil représentatif d’une sensibilité de détection des images acquises depuis un même point de vue.
Selon encore une autre variante du procédé d’apprentissage, le nombre déterminé de bandes verticales est compris entre 2 et 3 lorsque la pluralité de bandes verticales est égale à 16. En effet, en cas de présence d’un objet dynamique dans la scène tridimensionnelle observée, les pixels lui correspondant se situent dans deux voire trois bandes au maximum. En ne prenant pas en compte systématiquement les deux ou trois bandes présentant l’erreur photométrique la plus élevée, les pixels correspondant à cet objet n’influencent pas l’apprentissage du modèle de prédiction de profondeur.
Selon un deuxième aspect, la présente invention concerne un dispositif configuré pour apprendre un modèle de prédiction de profondeur par un système de vision embarqué dans un véhicule, le dispositif comprenant une mémoire associée à au moins un processeur configuré pour la mise en œuvre des étapes du procédé selon le premier aspect de la présente invention.
Selon un troisième aspect, la présente invention concerne un véhicule, par exemple de type automobile, comprenant un dispositif tel que décrit ci-dessus selon le deuxième aspect de la présente invention.
Selon un quatrième aspect, la présente invention concerne un programme d’ordinateur qui comporte des instructions adaptées pour l’exécution des étapes du procédé selon le premier aspect de la présente invention, ceci notamment lorsque le programme d’ordinateur est exécuté par au moins un processeur.
Un tel programme d’ordinateur peut utiliser n’importe quel langage de programmation et être sous la forme d’un code source, d’un code objet, ou d’un code intermédiaire entre un code source et un code objet, tel que dans une forme partiellement compilée, ou dans n’importe quelle autre forme souhaitable.
Selon un cinquième aspect, la présente invention concerne un support d’enregistrement lisible par un ordinateur sur lequel est enregistré un programme d’ordinateur comprenant des instructions pour l’exécution des étapes du procédé selon le premier aspect de la présente invention.
D’une part, le support d’enregistrement peut être n'importe quel entité ou dispositif capable de stocker le programme. Par exemple, le support peut comporter un moyen de stockage, tel qu'une mémoire ROM, un CD-ROM ou une mémoire ROM de type circuit microélectronique, ou encore un moyen d'enregistrement magnétique ou un disque dur.
D'autre part, ce support d’enregistrement peut également être un support transmissible tel qu'un signal électrique ou optique, un tel signal pouvant être acheminé via un câble électrique ou optique, par radio classique ou hertzienne ou par faisceau laser autodirigé ou par d'autres moyens. Le programme d’ordinateur selon la présente invention peut être en particulier téléchargé sur un réseau de type Internet.
Alternativement, le support d'enregistrement peut être un circuit intégré dans lequel le programme d’ordinateur est incorporé, le circuit intégré étant adapté pour exécuter ou pour être utilisé dans l'exécution du procédé en question.
D’autres caractéristiques et avantages de la présente invention ressortiront de la description des exemples de réalisation particuliers et non limitatifs de la présente invention ci-après, en référence aux figures 1 à 4 annexées, sur lesquelles :
Un procédé et un dispositif d’apprentissage d’un modèle de prédiction de profondeur mis en œuvre par un réseau de neurones convolutif associé à un système de vision embarqué dans un véhicule vont maintenant être décrits dans ce qui va suivre en référence conjointement aux figures 1 à 4. Des mêmes éléments sont identifiés avec des mêmes signes de référence tout au long de la description qui va suivre.
Les termes « premier(s) », « deuxième(s) » (ou « première(s) », « deuxième(s) »), etc. sont utilisés dans ce document par convention arbitraire pour permettre d’identifier et de distinguer différents éléments (tels que des opérations, des moyens, etc.) mis en œuvre dans les modes de réalisation décrits ci-après. De tels éléments peuvent être distincts ou correspondre à un seul et unique élément, selon le mode de réalisation.
Pour l’ensemble de la description, on entend par réception d’une image ou d’un lot d’images la réception de données représentatives d’une image ou d’un lot d’images. De manière générale, toute réception, détermination ou génération d’un objet ou d’une valeur reviennent à la réception, détermination ou génération de données représentatives de cet objet ou valeur. Ces raccourcis ont uniquement pour but de simplifier la description, néanmoins, les procédés décrits ci-dessous étant mis en œuvre par un ou plusieurs processeurs, il est évident que les données d’entrée et de sortie des différentes étapes d’un procédé sont des données informatiques.
Selon un exemple particulier et non limitatif de réalisation de la présente invention, le modèle de prédiction de profondeur est appris dans une phase d’apprentissage à partir d’un lot d’images acquises par une caméra du système de vision associé au modèle de prédiction de profondeur. Le lot d’images comprend au moins une séquence d’images et les images du lot sont ordonnées en fonction d'un instant temporel d'acquisition de chaque image, une première image précédant immédiatement une deuxième image dans le lot étant acquise à un premier instant temporel d’acquisition antérieur à un deuxième instant temporel d'acquisition de la deuxième image.
Chaque image du lot est alors divisée en une pluralité de bandes verticales de même largeur, à chaque bande verticale dans la première image, dite première bande, correspondant une bande verticale dans la deuxième image, dite deuxième bande.
Une différence colorimétrique associée à chaque première bande est déterminée par comparaison de pixels de la première bande à des pixels de la deuxième bande et une erreur photométrique associée à la première bande est déterminée lorsque la différence colorimétrique associée est supérieure à une valeur seuil.
Pour chaque première image, un nombre déterminé de bandes verticales est sélectionné en fonction de l’erreur photométrique associée à chaque bande verticale de la première image, les bandes sélectionnées étant celles de plus faibles erreurs photométriques et le modèle de prédiction de profondeur est appris par minimisation d’une erreur de perte déterminée à partir des erreurs photométriques associées aux bandes verticales sélectionnées.
LaFIG. 1 illustre schématiquement un système de vision équipant un véhicule, selon un exemple de réalisation particulier et non limitatif de la présente invention.
Le véhicule 10 se situe dans un environnement 1 correspondant, par exemple, à un environnement routier formé d’un réseau de routes accessibles pour le véhicule 10.
Dans cet exemple, le véhicule 10 correspond à un véhicule à moteur thermique, à moteur(s) électrique(s) ou encore un véhicule hybride avec un moteur thermique et un ou plusieurs moteurs électriques. Le véhicule 10 correspond ainsi, par exemple, à un véhicule terrestre tel une automobile, un camion, un car, une moto. Enfin, le véhicule 10 correspond à un véhicule autonome ou non, c’est-à-dire un véhicule circulant selon un niveau d’autonomie déterminé ou sous la supervision totale du conducteur.
Le véhicule 10 comprend avantageusement au moins une caméra 11 embarquée, configurée pour acquérir des images d’une scène tridimensionnelle se déroulant dans l’environnement du véhicule 10 depuis une position d’observation courante. La caméra 11 forme un système de vision monoculaire si elle est utilisée seule comme illustré dans laFIG. 1 . La présente invention ne se limite cependant pas à un système de vision monoculaire comprenant une unique caméra mais s’étend à tout système de vision comprenant au moins une caméra, par exemple 1, 2, 3 ou 5 caméras.
La caméra 11 dispose de paramètres intrinsèques, notamment :
- une distance focale,
- des distorsions qui sont dues aux imperfections du système optique de la caméra 11,
- une direction de l’axe optique de la caméra 11, et
- une résolution.
- une distance focale,
- des distorsions qui sont dues aux imperfections du système optique de la caméra 11,
- une direction de l’axe optique de la caméra 11, et
- une résolution.
Les paramètres intrinsèques caractérisent la transformation qui associe, pour un point image, par la suite appelé « point », ses coordonnées tridimensionnelles dans le référentiel de la caméra 11 aux coordonnées pixel dans une image acquise par la caméra 11. Ces paramètres ne changent pas si l'on déplace la caméra.
Les distorsions, qui sont dues aux imperfections du système optique telles que des défauts de forme et de positionnement des lentilles des caméras, vont dévier les faisceaux lumineux et donc induire un écart de positionnement pour le point projeté par rapport à un modèle idéal. Il est possible alors de compléter le modèle de caméra en y introduisant les trois distorsions qui génèrent le plus d’effets, à savoir les distorsions radiales, de décentrage et prismatiques, induites par des défauts de courbure, de parallélisme des lentilles et de coaxialité des axes optiques.
La caméra 11 est disposée de manière à acquérir une image d’une scène tridimensionnelle selon un point de vue défini, le point de vue est par exemple localisé sur ou dans le rétroviseur gauche du véhicule 10 ou en haut du pare-brise du véhicule 10 comme illustré dans laFIG. 1 .
La caméra 11 fait par exemple l’acquisition d’images d’une scène tridimensionnelle se situant devant le véhicule 10, la première caméra 11 couvrant un champ d’acquisition 12. Un objet 13 est placé dans le champ d’acquisition 12 de la caméra 11, définissant un champ d’occlusion 14 pour le système de vision, un objet présent dans le champ d’occlusion 14 n’étant pas observable par la caméra 11 depuis sa position d’observation courante.
Il est évident qu’il est possible d’utiliser un tel système de vision pour prendre des images de scènes situées sur les côtés ou derrière le véhicule 10 en l’équipant de caméras placées et orientées différemment, l’invention ne se limitant pas à l’observation d’une scène tridimensionnelle se déroulant devant le véhicule 10 embarquant la caméra 11.
Selon un exemple de réalisation particulier, la caméra 11 est de type « grand angle », une caméra grand angle étant par exemple équipée d’un objectif conçu pour faire l’acquisition d’une image représentative d’une scène tridimensionnelle perçue selon un champ de vision plus large que celui d'une caméra standard, aussi appelé parfois objectif panoramique. En d'autres termes, un objectif grand angle permet de saisir une plus grande portion de la scène tridimensionnelle se déroulant devant ou autour de la caméra, ce qui est particulièrement utile dans des situations où il est nécessaire d'inclure davantage d'éléments dans le cadre de l’image acquise par cette caméra. L’angle α du champ de vision de la caméra 11 est par exemple égal à 120°, 145°, 180° ou 360°, alors qu’une caméra standard propose, par exemple, un champ de vision ouvert suivant un angle de 45° ou moins. Une telle caméra 11 correspond par exemple à une caméra équipée de miroirs ou encore à une caméra « fisheye » (en français « œil de poisson »). Les objectifs grand angle ont une distance focale plus courte par rapport aux objectifs standard, ce qui les rend adaptés pour faire l’acquisition d’images de paysages, d'architectures, de croisements de routes ou de tout autre sujet nécessitant une perspective étendue. Les caméras grand angle sont, par exemple, utilisées pour capturer des images immersives et dynamiques avec une profondeur de champ étendue.
Une image acquise par la caméra 11 à un instant temporel d’acquisition se présente sous la forme de données représentant des pixels caractérisés par :
- des coordonnées dans l’image ; et
- des données relatives aux couleurs et luminosité des objets de la scène observée sous forme par exemple de valeurs colorimétriques RGB (de l’anglais « Red Green Blue », en français « Rouge Vert Bleu ») ou TSL (Ton, Saturation, Luminosité).
- des coordonnées dans l’image ; et
- des données relatives aux couleurs et luminosité des objets de la scène observée sous forme par exemple de valeurs colorimétriques RGB (de l’anglais « Red Green Blue », en français « Rouge Vert Bleu ») ou TSL (Ton, Saturation, Luminosité).
Chaque pixel de l’image acquise est représentatif d’un objet de la scène tridimensionnelle présent dans le champ de vision de la caméra 11. En effet, un pixel de l’image acquise est la plus petite unité visible et correspond à un point lumineux résultant de l'émission ou de la réflexion de la lumière par un objet physique présent dans la scène tridimensionnelle. Lorsque la lumière frappe cet objet, des photons sont émis ou réfléchis, captés par un capteur photosensible de la caméra 11 après passage à travers son objectif. Ce capteur divise la scène tridimensionnelle en une grille de pixels. Chaque pixel enregistre l'intensité lumineuse à un emplacement spécifique, capturant ainsi des détails visuels. La combinaison de millions de pixels crée une image représentant fidèlement l'objet physique observé par la caméra 11. Un point image précédemment présenté est ainsi un point d’une surface d’un objet de la scène tridimensionnelle.
Lorsque le véhicule 10 est en mouvement, alors deux images acquises par la caméra 11 à deux instant temporels distincts représentent des vues d’une même scène tridimensionnelle prises à des points de vue ou positions d’observation différents, les positions d’observations de la caméra 11 étant distinctes. Sur cette scène tridimensionnelle se trouvent par exemple :
- des bâtiments ;
- des infrastructures routières ;
- d’autres usagers ou objets immobiles, par exemple un véhicule stationné ; et/ou
- d’autres usagers ou objets mobiles, par exemple un autre véhicule, un cycliste ou un piéton en mouvement.
- des bâtiments ;
- des infrastructures routières ;
- d’autres usagers ou objets immobiles, par exemple un véhicule stationné ; et/ou
- d’autres usagers ou objets mobiles, par exemple un autre véhicule, un cycliste ou un piéton en mouvement.
Selon un exemple de réalisation particulier, une image acquise par la caméra 11 comprend une distorsion égale à 0,5%, 0,8% ou supérieure à 1%. La mesure d’une telle distorsion correspond à la détermination d’un rapport entre :
- l'écartement maximal d’un pixel de l'image d’une ligne droite de la première scène tridimensionnelle dont l’image est une ligne touchant le bord le plus long de la première image, soit au centre du bord de l’image, soit au niveau des angles du bord de l’image, et
- la longueur de ce bord.
- l'écartement maximal d’un pixel de l'image d’une ligne droite de la première scène tridimensionnelle dont l’image est une ligne touchant le bord le plus long de la première image, soit au centre du bord de l’image, soit au niveau des angles du bord de l’image, et
- la longueur de ce bord.
Couramment, une distorsion est considérée, dans le monde de la photographie, comme :
• négligeable si elle est inférieure à 0,3%,
• peu sensible si elle est comprise entre 0,3% ou 0,4%,
• sensible si elle est comprise entre 0,5% et 0,6%,
• très sensible si elle est comprise entre 0,7% et 0,9%, et
• gênante si elle est supérieure ou égale à 1% ou plus.
• négligeable si elle est inférieure à 0,3%,
• peu sensible si elle est comprise entre 0,3% ou 0,4%,
• sensible si elle est comprise entre 0,5% et 0,6%,
• très sensible si elle est comprise entre 0,7% et 0,9%, et
• gênante si elle est supérieure ou égale à 1% ou plus.
Une distorsion en barillet est caractérisée par un pourcentage positif, tandis qu’une distorsion en croissant est caractérisée par un pourcentage négatif.
Chaque image acquise par la caméra 11 est par exemple envoyée à un processeur, par exemple un calculateur d’un dispositif équipant le véhicule 10, ou stockée dans une mémoire d’un dispositif accessible à un calculateur d’un dispositif équipant le véhicule 10. Elle est alors utilisée lors de la mise en œuvre d’un procédé de détermination d’une profondeur d’un de ses pixels et/ou lors de la mise en œuvre d’un procédé d’apprentissage d’un modèle de prédiction de profondeur associé à cette caméra du système de vision.
LaFIG. 2 illustre un organigramme des différentes étapes d’un procédé 2 de détermination d’une profondeur d’un pixel d’une image par modèle de prédiction de profondeur mis en œuvre par un réseau de neurones convolutif associé à un système de vision embarqué dans un véhicule, par exemple dans le véhicule 10 de laFIG. 1 , selon un exemple de réalisation particulier et non limitatif de la présente invention. Le procédé 2 est par exemple mis en œuvre par un dispositif du système de vision embarqué dans le véhicule 10 ou par le dispositif 4 de laFIG. 4 .
Dans une étape 21, au moins une image acquise par la caméra 11 est reçue.
Dans une étape 22, des profondeurs associées à un ensemble de pixels d’une images reçue sont déterminées par le modèle de prédiction de profondeur à partir des au moins une images reçues.
Chaque profondeur déterminée correspond alors à une distance séparant le véhicule 10 ou une partie du véhicule 10 d’un objet de la scène tridimensionnelle auquel est associé un pixel, la détermination d’une profondeur d’un pixel correspondant alors à un mesurage d’une distance séparant un objet du véhicule embarquant le système de vision.
Si l’ADAS utilise ces profondeurs ou distances comme données d’entrée pour déterminer la distance entre une partie du véhicule 10, par exemple le pare-chocs avant, et un autre usager présent sur la route, l’ADAS est alors en mesure de déterminer précisément cette distance. Par exemple, si l’ADAS a pour fonction d’agir sur un système de freinage du véhicule 10 en cas de risque de collision avec un autre usager de la route et que la distance séparant le véhicule 10 de ce même usager de la route diminue fortement, alors l’ADAS est en mesure de détecter ce rapprochement soudain et d’agir sur le système de freinage du véhicule 10 pour éviter un éventuel accident.
LaFIG. 3 illustre un organigramme des différentes étapes d’un procédé d’apprentissage du modèle de prédiction de profondeurs utilisé dans un procédé de détermination d’une profondeur d’un pixel d’une image, par exemple dans le procédé 2 de laFIG. 2 , selon un exemple de réalisation particulier et non limitatif de la présente invention.
Le procédé d’apprentissage 3 est par exemple mis en œuvre par le dispositif embarqué dans le véhicule 10 mettant en œuvre le procédé de détermination d’une profondeur pour le système de vision embarqué dans un véhicule 10 ou par le dispositif 4 de laFIG. 4 .
Dans une étape 31, un lot d’images acquises par la caméra 11 est reçu. Le lot d’images comprend au moins une séquence d’images, les images du lot étant ordonnées en fonction d'un instant temporel d'acquisition de chaque image du lot. Le lot d’images comprend un premier ensemble de premières images et un deuxième ensemble de deuxièmes images, une première image du premier ensemble précédant immédiatement une deuxième image du deuxième ensemble, la première image étant acquise à un premier instant temporel d’acquisition antérieur à un deuxième instant temporel d'acquisition de la deuxième image. A noter que les premier et deuxième ensembles contiennent le même nombres d’images, seules les images extrêmes du lot d’images n’étant comprises que dans un des deux ensembles d’images, les autres images du lot d’images étant comprises à la fois dans le premier et dans le deuxième ensemble d’images.
Une séquence d’images comprend notamment une pluralité d’images acquises par la caméra 11 du véhicule 10 à des intervalles de temps définies, par exemple à partir d’une fréquence d’acquisition d’images. La caméra 11 a par exemple une fréquence d’acquisition d‘images égale à trente Hertz (30Hz), c’est-à-dire que la caméra 11 acquiert 30 images par seconde lorsque le véhicule 10 est actif par exemple lorsqu’il se déplace ou lorsque son moteur est allumé ou sous tension s’il s’agit d’un véhicule électrique ou hybride. Une séquence d’images est alors constituées d’images acquises consécutivement et représentant une même scène tridimensionnelle à différents instants temporels et observée depuis plusieurs points de vue différents si le véhicule 10 se déplace. Une séquence d’images constitue, par exemple, une vidéo.
Il est à noter que si le lot d’images comprend plusieurs séquences, alors une première image peut appartenir à une première séquence tandis que la deuxième image appartient à une deuxième séquence. Les images acquises sont alors très différentes et ne représentent pas nécessairement une même scène. Si l’apprentissage du modèle de prédiction de profondeur utilise un tel couple d’images, celui-ci ne permettra pas d’améliorer l’apprentissage sans pour autant lui nuire. En effet, les images sont tellement différentes que l’étape d’apprentissage décrite ci-après n’est pas en mesure de les exploiter.
Il est également à noter que chaque séquence n’est pas nécessairement homogène et comprend des images acquises, par exemple, dans différents environnements, par exemple une première séquence comprend des images acquises sur autoroute tandis que la séquence suivante comprend des images acquises en milieu rural.
Pour la suite de la description, les images acquises sont considérées de même définition. En effet, étant acquises par la même caméra 11, leur définition n’a pas lieu d’être différente. Cependant, dans le cas où la définition d’images d’une même séquence serait différente, il est possible d’ajouter une étape additionnelle consistant alors à redimensionner ou à rogner certaines images pour obtenir un séquence d’images comprenant uniquement des images de même définition, c’est-à-dire comprenant un même nombre de pixels selon leur hauteur et selon leur largeur.
Dans une étape 32, chaque image du lot d’images est divisée en une pluralité de bandes verticales de même largeur, à chaque bande verticale dans chaque première image, dite première bande, correspondant une bande verticale dans une deuxième image, dite deuxième bande. Chaque bande verticale a une hauteur égale à la hauteur de l’image. La largeur est quant à elle définie en fonction de la taille de zones comprenant des pixels associés à des objets dynamiques dans une image, ainsi la largeur d’une bande verticale doit englober au moins la moitié de la largeur d’une telle zone, par exemple si des pixels correspondant à un objet dynamique occupent la moitié (50%) de l’image en largeur, alors la largeur d’une bande doit être au plus 25% de la largeur de l’image originale. L’effet attendu est que deux ou trois bandes verticales peuvent comprendre des pixels correspondant à un ou plusieurs objets dynamiques tout en garantissant l’existence d’au moins une zone sans pixel correspondant à un objet dynamique.
Selon un exemple de réalisation particulier, le nombre de bandes verticales est de 16.
Dans une étape 33, une différence colorimétrique associée à chaque première bande est déterminée par comparaison de pixels de la première bande à des pixels de la deuxième bande correspondant à la bande.
Selon un exemple de réalisation particulier, la différence colorimétrique associée à la première bande est définie par la fonction suivante :
Avec :
• correspondant à la différence colorimétrique associée à la première bande, notée ,
• une valeur colorimétrique déterminée pour un pixel dans la première bande, le pixel étant défini par ses coordonnées en deux dimensions,
, et
• une valeur colorimétrique déterminée pour le pixel dans la deuxième bande.
•
•
, et
•
La détermination de la différence colorimétrique revient à déterminer un niveau de similitude entre deux pixels, les pixels étant définis par leur position ou coordonnées en deux dimensions et qui sont identiques dans la première image et dans la deuxième image.
Le but est de déterminer si la première image est acquise depuis un même point de vue que la deuxième image. Une image acquise depuis un même point de vue qu’une autre image et dans laquelle des pixels correspondent à des objets fixes de la scène tridimensionnelle observée comprend alors des pixels ayant la même valeur colorimétrique que les pixels de l’autre image. Si de très nombreux pixels de l’image sont similaires à des pixels de l’autre image, alors il est hautement probable que l’image ait été acquise depuis un même point de vue que l’autre image. Or il est nécessaire, pour garantir le bon apprentissage du modèle de prédiction de profondeur, de ne considérer que des images acquises depuis des points de vue différents.
Selon un exemple de réalisation particulier, une différence seuil représentative d’un pixel identique est comprise entre 1 et 2 lorsqu’une valeur colorimétrique d’un pixel est codée sur huit bits. Un codage sur huit bits permet d’obtenir une valeur colorimétrique comprise entre 0 et 255, un premier seuil proche de 1,5 est alors particulièrement adapté pour comparer deux pixels d’images acquises depuis un même point de vue avec une durée séparant les instants temporels d’acquisition des deux images très faible, par exemple avec la durée de 1/30èmede seconde correspondant à deux images acquises consécutivement par une caméra faisant l’acquisition d’images à une fréquence de 30Hz. En effet, avec une telle fréquence d’acquisition d’images, une variation d’éclairage de la scène tridimensionnelle n’est pas perceptible.
Afin de ne pas considérer les images d’une séquence d’images acquises depuis un même point de vue, dans une étape 34, la première image est supprimée dans le lot d’images si la différence colorimétrique associée à une première bande de cette image est inférieure à un seuil, en d’autres termes s’il est fort probable que cette image ait été acquise depuis le même point de vue que l’image de référence. L’intérêt d’analyser la différence colorimétrique par bande verticale dans la première image permet de détecter une première image potentiellement acquise par une première caméra 11 statique alors même qu’un objet dynamique est présent sur la scène tridimensionnelle. En effet, seules les bandes verticales de la première image comprenant des pixels correspondant à cet objet dynamique ont une différence colorimétrique importante et non la totalité des bandes verticales de la première image.
Le seuil est, par exemple, déterminé par la fonction suivante :
Avec :
• le seuil,
• une différence seuil pour un pixel,
• un nombre de pixels compris dans une hauteur de bande verticale, et
• un nombre de pixels compris dans une largeur de bande verticale.
•
•
•
•
Selon l’exemple de réalisation particulier décrit précédemment, dès qu’une bande verticale d’une image est considérée invariante, c’est-à-dire que la différence colorimétrique qui lui est associée est inférieure au seuil défini ci-dessus, l’image comprenant cette bande verticale est supprimée du lot d’images. La suite du procédé d’apprentissage 3 ne considère donc que les images qui n’ont pas été supprimées lors de cette étape additionnelle.
Dans une étape 35, une erreur photométrique associée à chaque pixel d’un ensemble de pixels de chaque première image non supprimée est déterminée.
L’erreur photométrique est déterminée à partir :
• d’une première erreur photométrique déterminée par comparaison de pixels de la deuxième image suivant immédiatement la première image dans le lot d’images à des pixels d’une troisième image, les pixels de la troisième image étant générés à partir des pixels de la première image et de premières profondeurs associées aux pixels de la première image, et
• d’une deuxième erreur photométrique déterminée par comparaison des pixels de la première image à des pixels d’une quatrième image, les pixels de la quatrième image étant générés à partir des pixels de la deuxième image et de deuxièmes profondeurs associées aux pixels de la deuxième image,
les premières et deuxièmes profondeurs étant prédites par le modèle de prédiction de profondeur à partir des première et deuxième images.
• d’une première erreur photométrique déterminée par comparaison de pixels de la deuxième image suivant immédiatement la première image dans le lot d’images à des pixels d’une troisième image, les pixels de la troisième image étant générés à partir des pixels de la première image et de premières profondeurs associées aux pixels de la première image, et
• d’une deuxième erreur photométrique déterminée par comparaison des pixels de la première image à des pixels d’une quatrième image, les pixels de la quatrième image étant générés à partir des pixels de la deuxième image et de deuxièmes profondeurs associées aux pixels de la deuxième image,
les premières et deuxièmes profondeurs étant prédites par le modèle de prédiction de profondeur à partir des première et deuxième images.
La détermination d’une profondeur d’un pixel d’une image acquise par une caméra en mouvement à partir d’un modèle de prédiction de profondeur mis en œuvre par un réseau de neurones convolutifs est connue de l’homme du métier, par exemple avec monodepth2® décrit dans le document « Digging Into Self-Supervised Monocular Depth Estimation » écrit par Clément Godard, Oisin Mac Aodha, Michael Firman et Gabriel Brostow et publié en aout 2019 ou avec un algorithme appelé NRS décrit dans le document « Neural Ray Surfaces for Self-Supervised Learning of Depth and Ego-motion » rédigé par Igor Vasiljevic, Vitor Guizilini, Rares Ambrus, Sudeep Pillai, Wolfram Burgard, Greg Shakhnarovich et Adrien Gaidon, publié en aout 2020.
Il est à noter que la prédiction de profondeur par le modèle de prédiction de profondeur associé au système de vision monoculaire, c’est-à-dire ne comprenant que la caméra 11, est précise pour un pixel correspondant à un objet statique, mais est beaucoup moins précise pour un pixel correspondant à un objet dynamique.
La génération d’une troisième image à partir de la première image acquise par la caméra 11 consiste en la reprojection d’un pixel de la première image acquise à un premier instant temporel dans la scène tridimensionnelle sous forme d’un point, puis à projeter ce point dans le plan image de la caméra 11 à sa position à un deuxième instant temporel d’acquisition correspondant à l’instant temporel d’acquisition de la deuxième image, de manière à obtenir une troisième image correspondant à une vue de la scène tridimensionnelle depuis le point de vue de la caméra 11 au deuxième instant temporel d’acquisition. Le plan image de la caméra 11 correspond à un plan défini dans le référentiel de la caméra 11, normal à l’axe optique de la caméra 11 et situé à la distance focale de la caméra 11. Ainsi, la troisième image générée à partir de la première image est comparable à la deuxième image. De manière similaire, la quatrième image générée à partir de la deuxième image est comparable à la première image.
Les positions de la caméra 11 aux premier et deuxième instants temporels d’acquisition n’étant pas confondues lorsque le véhicule 10 est en mouvement et des objets pouvant masquer d’autres objets de la scène voire se déplacer entre les deux instants temporels d’acquisition, les troisième et quatrième images générées ne sont pas identiques aux première et deuxième images acquises par la caméra 11. De plus, la prédiction des profondeurs incluant la prédiction d’un mouvement de la caméra 11 entre le premier et le deuxième instants temporels, tout comme les modèles utilisés pour générer les troisième et quatrième images, ne sont pas exempts d’erreurs. Ainsi, la comparaison d’une image générée à une image acquise permet d’évaluer la pertinence des différents modèles employés et des valeurs de profondeurs prédites.
Selon un exemple de réalisation particulier, la troisième image, respectivement la quatrième image, est générée par la fonction suivante :
Avec :
• les coordonnées d’un pixel dans la troisième image, respectivement dans la quatrième image,
• une fonction pour passer de coordonnées homogènes à des coordonnées pixels en supprimant une dimension d’un vecteur,
• un modèle de prédiction de direction associé à la caméra 11,
• une matrice comprenant des paramètres extrinsèques, et
• une fonction de projection dans la scène tridimensionnelle d’un pixel en fonction de ses coordonnées dans la première image, respectivement dans la deuxième image, et de la profondeur qui lui est associée.
•
•
•
•
•
Selon une première variante, le modèle de prédiction de direction correspond à une matrice intrinsèque de la caméra 11.
Cette première variante est notamment applicable aux caméras sténopé et calibrées.
Selon une deuxième variante, le modèle de prédiction de direction correspond à un modèle appris mettant en œuvre un second réseau de neurones. Un tel modèle de prédiction de direction est connu de l’homme du métier, il est notamment présenté dans le document « Neural Ray Surfaces for Self-Supervised Learning of Depth and Ego-motion ».
Cette deuxième variante est adaptée aux caméras grand angle ou de type « œil de poisson » ou encore aux caméras non calibrées.
Selon cette deuxième variante, une étape de prédiction de direction associée aux pixels de la première image et aux pixels de la deuxième image est nécessaire.
La matrice comprenant les paramètres extrinsèques de la caméra 11 en mouvement peut être obtenue de plusieurs manières. Par exemple à partir de données émises par un système d’aide à la conduite du véhicule 10, appelé système ADAS, ou à partir de capteurs embarqués dans le véhicule 10. Selon un autre exemple, les paramètres extrinsèques correspondant au mouvement de la caméra 11 entre les premier et deuxième instants temporels sont déterminés dans une étape additionnelle par un modèle de prédiction de mouvement, par exemple par celui présenté dans le document « Neural Ray Surfaces for Self-Supervised Learning of Depth and Ego-motion ».
Une première et/ou une deuxième erreur photométrique est d’autant plus faible que le modèle de prédiction de profondeur est précis, c’est-à-dire que son apprentissage est efficace. A l’inverse, si le modèle de prédiction de profondeur manque de précision, par exemple parce que son entraînement n’est pas abouti, alors une première et/ou une deuxième erreur photométrique est non négligeable.
Selon un premier mode de réalisation particulier, la première, respectivement la deuxième, erreur photométrique est déterminée par la fonction suivante :
Avec :
• la première erreur photométrique, notée , respectivement la deuxième erreur photométrique notée, ,
• une valeur colorimétrique d’un pixel dans la deuxième image, respectivement dans la première image, étant un pixel défini par ses coordonnées en deux dimensions,
• une valeur du pixel dans la troisième image, respectivement dans la quatrième image,
• SSIM une fonction qui prend en compte une structure locale, et
• un facteur de pondération dépendant notamment du type d’environnement dans lequel évolue le véhicule (10).
•
•
•
• SSIM une fonction qui prend en compte une structure locale, et
•
Selon un deuxième mode de réalisation particulier, les premières et deuxièmes erreurs photométriques comprennent une détermination d’une erreur de reconstruction d’un ensemble de pixels généré, l’erreur de reconstruction étant déterminée par la fonction suivante :
Avec :
• l’erreur de reconstruction, notée pour un pixel du premier ensemble de pixels, respectivement l’erreur de construction pour un pixel du deuxième ensemble de pixels ,
• est une profondeur associée au pixel dans la première bande, respectivement dans la deuxième bande ;
• est une matrice de paramètres ;
• est l’ordre d’un gradient de lissage ;
• une norme L1 des gradients de profondeur du second ordre est calculée avec =1 , et =2 ;
• et sont les dimensions des première et deuxième images ;
• est un hyperparamètre dépendant de l’environnement dans lequel évolue le véhicule 10 ; et
• est une valeur colorimétrique du pixel dans la première bande, respectivement deuxième bande.
•
•
•
•
• une norme L1 des gradients de profondeur du second ordre est calculée avec
•
•
•
Cette deuxième fonction est généralement utilisée pour traiter la discontinuité à la bordure des objets (en anglais « edge aware smoothness »).
Dans une étape 36, le modèle de prédiction de profondeur est appris par minimisation d’une première erreur de perte déterminée à partir des erreurs photométriques associées aux pixels de chaque ensemble de pixels de chaque première image non supprimée dans le lot d’images.
La première erreur de perte est par exemple la somme ou la moyenne des erreurs photométriques associées aux pixels de chaque ensemble de pixels de chaque première image non supprimée dans le lot d’images.
L’apprentissage du modèle de prédiction de profondeur consiste en l’ajustement de paramètres d’entrée du réseau de neurones convolutif mettant en œuvre le modèle de prédiction de profondeur afin de minimiser la première erreur de perte précédemment calculée.
Selon un exemple de réalisation particulier, si la première erreur de perte déterminée pour le lot d’images n’est pas nulle, un algorithme de gradient descendant est utilisé. Un tel algorithme est connu de l’homme du métier et est, par exemple, mis en œuvre à l’aide de la fonction loss.backward() dans Pytorch®.
Dans une étape 37, pour chaque bande verticale d’une première image non supprimée, une erreur photométrique locale est déterminée à partir des erreurs photométriques associées aux pixels de la bande verticale.
L’erreur photométrique locale est ainsi définie, par exemple, à partir des erreurs photométriques et erreurs de reconstruction précédemment définies.
Selon le premier mode de réalisation particulier, l’erreur photométrique locale associée à chaque première bande est déterminée par la fonction suivante :
Avec :
• correspondant à l’erreur photométrique locale associée à la première bande, notée ,
• la première erreur photométrique déterminée pour un pixel dans la deuxième bande, le pixel étant défini par ses coordonnées en deux dimensions, et
• la deuxième erreur photométrique déterminée pour le pixel dans la première bande.
•
•
•
Selon le deuxième mode de réalisation particulier, l’erreur photométrique locale associée à chaque première bande est déterminée par la fonction suivante :
Avec :
• correspondant à l’erreur photométrique locale associée à la première bande, notée ,
• la première erreur photométrique déterminée pour un pixel dans la première bande, le pixel étant défini par ses coordonnées en deux dimensions,
• la deuxième erreur photométrique déterminée pour le pixel dans la deuxième bande,
• l’erreur de reconstruction associée à un pixel de la troisième image, et
• l’erreur de reconstruction associée à un pixel de la quatrième image.
•
•
•
•
•
Dans une étape 38, un nombre déterminé de bandes verticales est sélectionné pour chaque première image en fonction de l’erreur photométrique locale associée à chaque bande verticale de la première image, les bandes sélectionnées étant celles de plus faibles erreurs photométriques.
Le fait de ne sélectionner que les bandes verticales de plus faible erreur photométrique locale permet d’éliminer des bandes verticales qui auraient une erreur photométrique locale élevée à cause de la présence de pixels dans cette bande verticale correspondant à un objet dynamique dans la scène tridimensionnelle observée. Ainsi, en éliminant ces bandes potentiellement néfastes pour l’apprentissage du modèle de prédiction de profondeur, le procédé d’apprentissage 3 gagne en fiabilité. Des pixels correspondant à des objets dynamiques ne sont pas pris en compte lors de l’étape suivante.
Le nombre déterminé de bandes verticales est, par exemple, compris entre 2 et 3 lorsque la pluralité de bandes verticales est égale à 16. Ainsi, que des pixels d’une image correspondent ou non à des objets dynamiques, les bandes les plus suspectes sont systématiquement éliminées de l’étape suivante. Selon cet exemple, chaque image acquise par la caméra 11 en mouvement est divisée en 16 bandes verticales de largeur égale et les trois bandes présentant l’erreur photométrique les plus élevées sont éliminées, chaque image a alors 13 bandes sélectionnées pour l’étape 39 d’apprentissage.
Dans l’étape 39, le modèle de prédiction de profondeur est appris par minimisation d’une deuxième erreur de perte déterminée à partir des erreurs photométriques associées aux bandes verticales sélectionnées. Le nombre de bandes verticales sélectionnées par image est ainsi toujours le même, chaque image apporte alors une même contribution à cette étape 39.
Ce deuxième apprentissage est similaire au premier apprentissage mais est effectué sur les bandes verticales présentant le moins de risques de comprendre des pixels correspondant à un objet dynamique.
Selon un exemple de réalisation particulier, la deuxième erreur de perte est égale à une somme des erreurs photométriques locales associées aux bandes verticales sélectionnées. Elle est par exemple déterminée par la fonction suivante :
Avec :
• correspondant à la deuxième erreur de perte,
• correspondant à l’erreur photométrique locale associée à la bande verticale , représentant sa position dans la liste des erreurs photométriques associées aux bandes d’une première image et classées de manière croissante,
• correspondant au nombre de bandes verticales par première image, et
• correspondant au nombre déterminé de bandes verticales de la première image sélectionnées, représentant le nombre de bandes verticales abandonnées.
•
•
•
•
Selon un autre exemple de réalisation particulier, la deuxième erreur de perte est égale à une moyenne des erreurs photométriques locales associées aux bandes verticales sélectionnées.
Un objet visible dans le champ de vision de la caméra 11 au premier instant temporel d’acquisition et masqué dans le champ de vision de la caméra 11 au deuxième instant temporel d’acquisition ou inversement n’impacte pas la deuxième erreur de perte grâce à la fonction min, ce procédé est donc insensible aux occlusions.
L’apprentissage n’est effectué qu’à partir de comparaison d’images acquises depuis des points de vue différents et pour lesquelles la première ou deuxième erreur photométrique associée à des pixels correspondants à un objet dynamique est négligeable. Un tel procédé d’apprentissage permet ainsi d’apprendre un modèle de prédiction de profondeur à partir de séquences d’images acquises par une caméra du système de vision, la caméra étant en mouvement.
Ainsi, le modèle de prédiction de profondeur utilisé pour la prédiction de profondeur d’un pixel d’une image acquise par une caméra du système de vision est fiabilisé grâce à ce procédé d’apprentissage.
Cet apprentissage est réalisé à partir de données acquises par le système de vision embarqué et ne nécessite donc pas de données annotées par un autre système embarqué ou de stockage d’une bibliothèque d’images d’apprentissage. De plus, les données d’apprentissage sont représentatives des données reçues lorsque le système est en fonctionnement ou en production, en effet les données d’apprentissage sont représentatives d’environnements réels dans lesquels évolue, ou se déplace, le véhicule embarquant le système de vision, ces données d’apprentissage sont donc particulièrement pertinentes car représentatives de conditions de mise en œuvre d’un procédé de prédiction de profondeur réelles.
LaFIG. 4 illustre schématiquement un dispositif 4 configuré pour apprendre un modèle de prédiction de profondeur par un système de vision embarqué dans un véhicule et/ou pour prédire une profondeur associée à un pixel d’une image acquise par une caméra, selon un exemple de réalisation particulier et non limitatif de la présente invention. Le dispositif 4 correspond par exemple à un dispositif embarqué dans le premier véhicule 10, par exemple un calculateur associé au système de vision stéréoscopique.
Le dispositif 4 est par exemple configuré pour la mise en œuvre des opérations décrites en regard des figures 1 et 4 et/ou étapes décrites en regard des figures 2 et 3. Des exemples d’un tel dispositif 4 comprennent, sans y être limités, un équipement électronique embarqué tel qu’un ordinateur de bord d’un véhicule, un calculateur électronique tel qu’une UCE (« Unité de Commande Electronique »), un téléphone intelligent, une tablette, un ordinateur portable. Les éléments du dispositif 4, individuellement ou en combinaison, peuvent être intégrés dans un unique circuit intégré, dans plusieurs circuits intégrés, et/ou dans des composants discrets. Le dispositif 4 peut être réalisé sous la forme de circuits électroniques ou de modules logiciels (ou informatiques) ou encore d’une combinaison de circuits électroniques et de modules logiciels.
Le dispositif 4 comprend un (ou plusieurs) processeur(s) 40 configurés pour exécuter des instructions pour la réalisation des étapes du procédé et/ou pour l’exécution des instructions du ou des logiciels embarqués dans le dispositif 4. Le processeur 40 peut inclure de la mémoire intégrée, une interface d’entrée/sortie, et différents circuits connus de l’homme du métier. Le dispositif 4 comprend en outre au moins une mémoire 41 correspondant par exemple à une mémoire volatile et/ou non volatile et/ou comprend un dispositif de stockage mémoire qui peut comprendre de la mémoire volatile et/ou non volatile, telle que EEPROM, ROM, PROM, RAM, DRAM, SRAM, flash, disque magnétique ou optique.
Le code informatique du ou des logiciels embarqués comprenant les instructions à charger et exécuter par le processeur est par exemple stocké sur la mémoire 41.
Selon différents exemples de réalisation particuliers et non limitatifs, le dispositif 4 est couplé en communication avec d’autres dispositifs ou systèmes similaires (par exemple d’autres calculateurs) et/ou avec des dispositifs de communication, par exemple une TCU (de l’anglais « Telematic Control Unit » ou en français « Unité de Contrôle Télématique »), par exemple par l’intermédiaire d’un bus de communication ou au travers de ports d’entrée / sortie dédiés.
Selon un exemple de réalisation particulier et non limitatif, le dispositif 4 comprend un bloc 42 d’éléments d’interface pour communiquer avec des dispositifs externes. Les éléments d’interface du bloc 42 comprennent une ou plusieurs des interfaces suivantes :
- interface radiofréquence RF, par exemple de type Wi-Fi® (selon IEEE 802.11), par exemple dans les bandes de fréquence à 2,4 ou 5 GHz, ou de type Bluetooth® (selon IEEE 802.15.1), dans la bande de fréquence à 2,4 GHz, ou de type Sigfox utilisant une technologie radio UBN (de l’anglais Ultra Narrow Band, en français bande ultra étroite), ou LoRa dans la bande de fréquence 868 MHz, LTE (de l’anglais « Long-Term Evolution » ou en français « Evolution à long terme »), LTE-Advanced (ou en français LTE-avancé) ;
- interface USB (de l’anglais « Universal Serial Bus » ou « Bus Universel en Série » en français) ;
interface HDMI (de l’anglais « High Definition Multimedia Interface », ou « Interface Multimedia Haute Definition » en français) ;
- interface LIN (de l’anglais « Local Interconnect Network », ou en français « Réseau interconnecté local »).
- interface radiofréquence RF, par exemple de type Wi-Fi® (selon IEEE 802.11), par exemple dans les bandes de fréquence à 2,4 ou 5 GHz, ou de type Bluetooth® (selon IEEE 802.15.1), dans la bande de fréquence à 2,4 GHz, ou de type Sigfox utilisant une technologie radio UBN (de l’anglais Ultra Narrow Band, en français bande ultra étroite), ou LoRa dans la bande de fréquence 868 MHz, LTE (de l’anglais « Long-Term Evolution » ou en français « Evolution à long terme »), LTE-Advanced (ou en français LTE-avancé) ;
- interface USB (de l’anglais « Universal Serial Bus » ou « Bus Universel en Série » en français) ;
interface HDMI (de l’anglais « High Definition Multimedia Interface », ou « Interface Multimedia Haute Definition » en français) ;
- interface LIN (de l’anglais « Local Interconnect Network », ou en français « Réseau interconnecté local »).
Selon un autre exemple de réalisation particulier et non limitatif, le dispositif 4 comprend une interface de communication 43 qui permet d’établir une communication avec d’autres dispositifs (tels que d’autres calculateurs du système embarqué) via un canal de communication 430. L’interface de communication 43 correspond par exemple à un transmetteur configuré pour transmettre et recevoir des informations et/ou des données via le canal de communication 430. L’interface de communication 43 correspond par exemple à un réseau filaire de type CAN (de l’anglais « Controller Area Network » ou en français « Réseau de contrôleurs »), CAN FD (de l’anglais « Controller Area Network Flexible Data-Rate » ou en français « Réseau de contrôleurs à débit de données flexible »), FlexRay (standardisé par la norme ISO 17458) ou Ethernet (standardisé par la norme ISO/IEC 802-3).
Selon un exemple de réalisation particulier et non limitatif, le dispositif 4 peut fournir des signaux de sortie à un ou plusieurs dispositifs externes, tels qu’un écran d’affichage 440, tactile ou non, un ou des haut-parleurs 450 et/ou d’autres périphériques 460 via respectivement les interfaces de sortie 44, 45, 46. Selon une variante, l’un ou l’autre des dispositifs externes est intégré au dispositif 4.
Bien entendu, la présente invention ne se limite pas aux exemples de réalisation décrits ci-avant mais s’étend à un procédé de détermination de profondeur d’un pixel d’une image acquise par un système de vision, et/ou de mesurage d’une distance séparant un objet d’un véhicule embarquant un système de vision, la profondeur et/ou la distance étant prédite et/ou mesurée via un modèle de prédiction de profondeur appris selon le procédé d’apprentissage décrit ci-dessus, qui inclurait des étapes secondaires sans pour autant sortir de la portée de la présente invention. Il en serait de même d’un dispositif configuré pour la mise en œuvre d’un tel procédé.
La présente invention concerne également un véhicule, par exemple automobile ou plus généralement un véhicule autonome à moteur terrestre, comprenant le dispositif 4 de laFIG. 4 .
Claims (10)
- Procédé d’apprentissage d’un modèle de prédiction de profondeur mis en œuvre par un réseau de neurones convolutif associé à un système de vision embarqué dans un véhicule (10), le système de vision comprenant une caméra (11) disposée de manière à acquérir une image d’une scène tridimensionnelle d’un environnement extérieur du véhicule (10),
ledit procédé étant mis en œuvre par au moins un processeur, et étant caractérisé en ce qu’il comprend les étapes suivantes :
- réception (31) d’un lot d’images acquises par la caméra (11) comprenant au moins une séquence d’images, les images dudit lot d’images étant ordonnées en fonction d'un instant temporel d'acquisition de chaque image dudit lot d’images, ledit lot d’images comprenant un premier ensemble de premières images et un deuxième ensemble de deuxièmes images, une première image dudit premier ensemble précédant immédiatement une deuxième image dudit deuxième ensemble, la première image étant acquise à un premier instant temporel d’acquisition antérieur à un deuxième instant temporel d'acquisition de la deuxième image ;
- pour chaque image dudit lot d’images, division (32) de ladite chaque image en une pluralité de bandes verticales de même largeur, à chaque bande verticale dans chaque première image, dite première bande, correspondant une bande verticale dans la deuxième image précédant immédiatement ladite chaque première image, dite deuxième bande ;
- détermination (33), pour chaque première bande, d’une différence colorimétrique associée à ladite chaque première bande par comparaison de pixels de ladite chaque première bande à des pixels de la deuxième bande correspondant à ladite chaque première bande ;
- suppression (34) de toute première image dans ledit lot d’images pour laquelle la différence colorimétrique associée à au moins une première bande de ladite première image est inférieure à une valeur seuil,
- détermination (35), pour chaque pixel d’un ensemble de pixels de chaque première image non supprimée dans ledit lot d’images, d’une erreur photométrique associée audit pixel à partir :
• d’une première erreur photométrique déterminée par comparaison de pixels de la deuxième image suivant immédiatement ladite chaque première image non supprimée à des pixels d’une troisième image, les pixels de la troisième image étant générés à partir des pixels de ladite chaque première image non supprimée et de premières profondeurs associées aux pixels de ladite chaque première image non supprimée, et
• d’une deuxième erreur photométrique déterminée par comparaison des pixels de ladite chaque première image non supprimée à des pixels d’une quatrième image, les pixels de la quatrième image étant générés à partir des pixels de ladite deuxième image et de deuxièmes profondeurs associées aux pixels de ladite deuxième image,
lesdites premières et deuxièmes profondeurs étant prédites par le modèle de prédiction de profondeur à partir desdites première et deuxième images ;
- premier apprentissage (36) du modèle de prédiction de profondeur par minimisation d’une première erreur de perte déterminée à partir desdites erreurs photométriques associées aux pixels de chaque ensemble de pixels de chaque première image non supprimée dans le lot d’images,
- détermination (37), pour chaque bande verticale de ladite chaque première image non supprimée, d’une erreur photométrique locale à partir des erreurs photométriques associées aux pixels de ladite bande verticale ;
• sélection (38), pour ladite chaque première image non supprimée, d’un nombre déterminé de bandes verticales en fonction de l’erreur photométrique locale associée à chaque bande verticale de ladite chaque première image non supprimée, les bandes verticales sélectionnées étant celles de plus faibles erreurs photométriques locales ;
- deuxième apprentissage (39) du modèle de prédiction de profondeur par minimisation d’une deuxième erreur de perte déterminée à partir desdites erreurs photométriques locales associées aux bandes verticales sélectionnées. - Procédé selon la revendication 1, pour lequel la différence colorimétrique associée à ladite première bande est définie par la fonction suivante :
Avec :
• correspondant à la différence colorimétrique associée à la première bande, notée ,
• une valeur colorimétrique déterminée pour un pixel dans la première bande, le pixel étant défini par ses coordonnées en deux dimensions,
, et
• une valeur colorimétrique déterminée pour le pixel dans la deuxième bande. - Procédé selon la revendication 1 ou 2, pour lequel l’erreur photométrique associée à ladite première bande est déterminée par la fonction suivante :
Avec :
• correspondant à l’erreur photométrique locale associée à la première bande, notée ,
• la première erreur photométrique déterminée pour un pixel dans la deuxième bande, le pixel étant défini par ses coordonnées en deux dimensions, et
• la deuxième erreur photométrique déterminée pour le pixel dans la première bande. - Procédé selon l’une des revendications 1 à 3, pour lequel la deuxième erreur de perte est égale à une somme des erreurs photométriques associées aux bandes verticales sélectionnées.
- Procédé selon l’une des revendications 1 à 4, pour lequel la première, respectivement la deuxième, erreur photométrique est déterminée par la fonction suivante :
Avec :
• la première erreur photométrique, notée , respectivement la deuxième erreur photométrique notée, ,
• une valeur colorimétrique d’un pixel dans la deuxième image, respectivement dans la première image, étant un pixel défini par ses coordonnées en deux dimensions,
• une valeur du pixel dans la troisième image, respectivement dans la quatrième image,
• SSIM une fonction qui prend en compte une structure locale, et
• un facteur de pondération dépendant notamment du type d’environnement dans lequel évolue le véhicule (10). - Procédé selon l’une des revendications 1 à 5, pour lequel le premier ensemble de pixels, respectivement le deuxième ensemble de pixels, est généré par la fonction suivante :
Avec :
• les coordonnées d’un pixel dans la troisième image, respectivement dans la quatrième image,
• une fonction pour passer de coordonnées homogènes à des coordonnées pixels en supprimant une dimension d’un vecteur,
• un modèle de prédiction de direction associé à la caméra (11),
• une matrice comprenant des paramètres extrinsèques, et
• une fonction de projection dans la scène tridimensionnelle d’un pixel en fonction de ses coordonnées dans la première image, respectivement dans la deuxième image, et de la profondeur qui lui est associée. - Procédé selon l’une des revendications 1 à 6, pour lequel ledit seuil est déterminé par la fonction suivante :
Avec :
• le seuil,
• une différence seuil pour un pixel,
• un nombre de pixels compris dans une hauteur de bande verticale, et
• un nombre de pixels compris dans une largeur de bande verticale. - Procédé selon l’une des revendications 1 à 7, pour lequel ledit nombre déterminé de bandes verticales est compris entre 2 et 3 lorsque ladite pluralité de bandes verticales est égale à 16.
- Dispositif (4) configuré pour apprendre un modèle de prédiction de profondeur par un système de vision embarqué dans un véhicule (10), ledit dispositif (4) comprenant une mémoire (41) associée à au moins un processeur (40) configuré pour la mise en œuvre des étapes du procédé selon l’une quelconque des revendications 1 à 8.
- Véhicule (10) comprenant le dispositif (4) selon la revendication 9.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR2404260A FR3161785A1 (fr) | 2024-04-25 | 2024-04-25 | Procédé et dispositif d’apprentissage d’un modèle de prédiction de profondeur à partir d’images filtrées par bandes verticales. |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR2404260 | 2024-04-25 | ||
| FR2404260A FR3161785A1 (fr) | 2024-04-25 | 2024-04-25 | Procédé et dispositif d’apprentissage d’un modèle de prédiction de profondeur à partir d’images filtrées par bandes verticales. |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| FR3161785A1 true FR3161785A1 (fr) | 2025-10-31 |
Family
ID=91924026
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| FR2404260A Pending FR3161785A1 (fr) | 2024-04-25 | 2024-04-25 | Procédé et dispositif d’apprentissage d’un modèle de prédiction de profondeur à partir d’images filtrées par bandes verticales. |
Country Status (1)
| Country | Link |
|---|---|
| FR (1) | FR3161785A1 (fr) |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2022187753A1 (fr) * | 2021-03-18 | 2022-09-09 | Innopeak Technology, Inc. | Système d'affinement de profondeur monoculaire guidé par slam à l'aide d'un apprentissage en ligne auto-supervisé |
| GB2605621A (en) * | 2021-04-07 | 2022-10-12 | Robok Ltd | Monocular depth estimation |
-
2024
- 2024-04-25 FR FR2404260A patent/FR3161785A1/fr active Pending
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2022187753A1 (fr) * | 2021-03-18 | 2022-09-09 | Innopeak Technology, Inc. | Système d'affinement de profondeur monoculaire guidé par slam à l'aide d'un apprentissage en ligne auto-supervisé |
| GB2605621A (en) * | 2021-04-07 | 2022-10-12 | Robok Ltd | Monocular depth estimation |
Non-Patent Citations (3)
| Title |
|---|
| ARAMPATZAKIS VASILEIOS ET AL: "Monocular Depth Estimation: A Thorough Review", IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, vol. 46, no. 4, 1 April 2024 (2024-04-01), USA, pages 2396 - 2414, XP093223610, ISSN: 0162-8828, Retrieved from the Internet <URL:https://ieeexplore.ieee.org/stampPDF/getPDF.jsp?tp=&arnumber=10313067&ref=aHR0cHM6Ly9pZWVleHBsb3JlLmllZWUub3JnL2Fic3RyYWN0L2RvY3VtZW50LzEwMzEzMDY3P2Nhc2FfdG9rZW49ZE10Sktsc3NtYzBBQUFBQTotX0stMUExQzdYcC1QZy1pM2JUT2FLSUhPVGE3bVVzd1RmZHlxbUFnem1lbl9hNkIwbXJBaGU1R3hjcGFOZmtxQWFYd0YtNThFUQ==> DOI: 10.1109/TPAMI.2023.3330944 * |
| CLÉMENT GODARDOISIN MAC AODHAMICHAEL FIRMANGABRIEL BROSTOW, DIGGING INTO SELF-SUPERVISED MONOCULAR DEPTH ESTIMATION, August 2019 (2019-08-01) |
| IGOR VASILJEVICVITOR GUIZILINIRARES AMBRUSSUDEEP PILLAIWOLFRAM BURGARDGREG SHAKHNAROVICHADRIEN GAIDON, NEURAL RAY SURFACES FOR SELF-SUPERVISED LEARNING OF DEPTH AND EGO-MOTION, August 2020 (2020-08-01) |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2024231616A1 (fr) | Procédé et dispositif de détermination d'un masque de visibilité pour un système de vision embarqué dans un véhicule | |
| FR3161785A1 (fr) | Procédé et dispositif d’apprentissage d’un modèle de prédiction de profondeur à partir d’images filtrées par bandes verticales. | |
| FR3161784A1 (fr) | Procédé et dispositif d’apprentissage d’un modèle de prédiction de profondeur à partir de bandes verticales d’images. | |
| FR3161302A1 (fr) | Procédé et dispositif d’apprentissage d’un modèle de prédiction de profondeur à partir de séquences d’images triées. | |
| FR3160798A1 (fr) | Procédé et dispositif d’apprentissage d’un modèle de prédiction de profondeur insensible à la présence d’objets dynamiques dans des images d’apprentissage. | |
| FR3161049A1 (fr) | Procédé et dispositif d’apprentissage d’un modèle de prédiction de profondeur pour prédire une profondeur pour toute distance parcourue entre l’acquisition de deux images. | |
| FR3162893A1 (fr) | Procédé et dispositif d’apprentissage d’un modèle de prédiction de profondeur associé à un système de vision multi résolution | |
| FR3162896A1 (fr) | Procédé et dispositif d’apprentissage d’un modèle de prédiction de profondeur associé à un système de vision générant des images pouvant être distordues | |
| FR3160789A1 (fr) | Procédé et dispositif d’apprentissage d’un modèle de prédiction de profondeur associé à un système de vision stéréoscopique par comparaison de positions de points dans une scène tridimensionnelle. | |
| FR3158381A1 (fr) | Procédé et dispositif de détermination d’une profondeur d’un pixel d’une image par un réseau de neurones associé à un système de vision embarqué dans un véhicule | |
| FR3160797A1 (fr) | Procédé et dispositif d’apprentissage d’un modèle de prédiction de profondeur d’un ensemble de pixels d’une image associé à un système de vision stéréoscopique embarqué dans un véhicule. | |
| FR3160031A1 (fr) | Procédé et dispositif de détermination d’une profondeur d’un pixel d’une image par un modèle de prédiction de profondeur appris à partir d’images hétérogènes | |
| FR3159463A1 (fr) | Procédé et dispositif de détermination d’une profondeur d’un pixel d’une image par un modèle de prédiction de profondeur associé à un système de vision embarqué dans un véhicule | |
| FR3158575A1 (fr) | Procédé et dispositif de détermination d’une profondeur d’un pixel d’une image par un réseau de neurones associé à un système de vision embarqué dans un véhicule | |
| FR3160796A1 (fr) | Procédé et dispositif de traitement d’images d’une base de données d’apprentissage d’un modèle de prédiction de profondeur associé à un système de vision. | |
| FR3162894A1 (fr) | Procédé et dispositif de détermination d’une profondeur par un système de vision monoscopique appris par supervision d’un système de vision stéréoscopique | |
| FR3159032A1 (fr) | Procédé et dispositif de détermination d’une profondeur par un réseau de neurones convolutif associé à système de vision auto-supervisé. | |
| FR3160032A1 (fr) | Procédé et dispositif de détermination d’une profondeur d’un pixel d’une image par un modèle de prédiction de profondeur associé à un système de vision embarqué dans un véhicule | |
| FR3162895A1 (fr) | Procédé et dispositif d’apprentissage d’un modèle de prédiction de profondeur associé à un système de vision sténopé embarqué dans un véhicule | |
| FR3160493A1 (fr) | Procédé et dispositif d’apprentissage d’un modèle de prédiction de profondeur associé à un système de vision stéréoscopique et insensible à l’occlusion. | |
| FR3158576A1 (fr) | Procédé et dispositif de détermination d’un défaut de calibration d’un système de vision embarqué dans un véhicule | |
| FR3160494A1 (fr) | Procédé et dispositif d’apprentissage d’un modèle de prédiction de profondeur pour réduire la perte de consistance d’un système de vision stéréoscopique. | |
| FR3147650A1 (fr) | Procédé et dispositif de détermination d’une profondeur par un système de vision auto-supervisé. | |
| FR3153676A1 (fr) | Procédé et dispositif de détermination d’une profondeur par un système de vision auto-supervisé. | |
| FR3158382A1 (fr) | Procédé et dispositif de détermination d’une profondeur par un système de vision stéréoscopique embarqué dans un véhicule |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PLFP | Fee payment |
Year of fee payment: 2 |
|
| PLSC | Publication of the preliminary search report |
Effective date: 20251031 |