FR3161049A1 - 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. - Google Patents
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.Info
- Publication number
- FR3161049A1 FR3161049A1 FR2403628A FR2403628A FR3161049A1 FR 3161049 A1 FR3161049 A1 FR 3161049A1 FR 2403628 A FR2403628 A FR 2403628A FR 2403628 A FR2403628 A FR 2403628A FR 3161049 A1 FR3161049 A1 FR 3161049A1
- Authority
- FR
- France
- Prior art keywords
- images
- image
- vehicle
- prediction model
- pair
- 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
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
- G06T7/579—Depth or shape recovery from multiple images from motion
-
- 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)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (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 monoculaire. En effet, le procédé comprend un premier apprentissage (32) du modèle de prédiction de profondeur à partir de premiers couples d’images, chaque premier couple d’images étant formé à partir d’images d’une même séquence d’images acquises à par une caméra embarquée dans un véhicule et se déplaçant à une vitesse inférieure à une vitesse seuil dans une scène tridimensionnelle, et un deuxième apprentissage (33) du modèle de prédiction de profondeur à partir de deuxièmes couples d’images, chaque deuxième couple d’images étant formé à partir d’images d’une même séquence d’images acquises à par la caméra embarquée dans la véhicule et se déplaçant à une vitesse supérieure à la vitesse seuil dans la scène tridimensionnelle.
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 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 mis en œuvre par un réseau de neurones convolutif et 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. Surtout, les séquences d’images acquises par une même caméra en mouvement, une séquence d’images constituant notamment une vidéo, sont obtenues lorsque cette caméra effectue des mouvements de faible amplitude, notamment de l’ordre de quelques centimètres. En effet, les séquences d’images disponibles dans Kitti® sont par exemple représentatives d’images acquises par une caméra en mouvement, chaque image étant acquise depuis un point de vue distant d’environ 15cm (quinze centimètres) du point de vue de l’image précédemment acquise, ce qui correspond à un véhicule se déplaçant à une vitesse proche de 18km/h (dix-huit kilomètres par heure), le véhicule embarquant la caméra faisant l’acquisition des images de la séquence d’images à une fréquence 30Hz (trente hertz) De telles images sont utiles pour faire un apprentissage d’un modèle de prédiction pour un véhicule se déplaçant à une vitesse faible en milieu urbain, mais ne sont pas adaptées pour un véhicule se déplaçant dans un autre type d’environnement tel une voie rapide ou une autoroute, la vitesse de déplacement du véhicule étant nettement supérieure, par exemple de l’ordre de 110 (cent dix) ou 130 km/h (cent trente kilomètres par heure), et l’autre environnement du véhicule étant également différent. Les données d’apprentissage sont alors inadaptées pour entraîner le modèle de prédiction pour un véhicule circulant dans cet autre type d’environnement routier.
Or, la qualité de l’entraînement du modèle de prédiction de profondeur ou distance est très importante, les profondeurs ou distances prédites par le modèle de prédiction de profondeur représentant 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. En effet, de la qualité des données émises par le système de vision dépend le bon fonctionnement des périphériques d’aides à la conduite utilisant ces données.
Un système de vision comprenant une unique 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 acquises par la caméra à l’aide du modèle de prédiction de profondeur. Il est alors important d’entraîner ce modèle de prédiction de profondeur avec des images ou des séquences d’images acquises dans des conditions similaires à celles rencontrées lorsque le véhicule se déplace, notamment sur le réseau routier et à différentes vitesses de déplacement du véhicule embarquant le système de vision.
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 de séquences d’images acquises par une caméra depuis des points de vue situés à différentes distances les uns des autres.
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 de séquences d’images, chaque séquence d’images comprenant un ensemble d’images acquises par la caméra à différents instants temporels d’acquisition consécutifs séparés d’un même intervalle de temps, chaque séquence d’images étant classée en fonction d’une vitesse du véhicule lors de l’acquisition des images de la séquence dans une première classe lorsque la vitesse du véhicule est inférieure à une vitesse seuil et dans une deuxième classe lorsque la vitesse du véhicule est supérieure à la vitesse seuil ;
- pour chaque séquence d’images comprise dans la première classe, premier apprentissage du modèle de prédiction de profondeur à partir de premiers couples d’images, chaque premier couple d’images comprenant une première image et une deuxième image sélectionnées dans la chaque séquence d’images comprise dans la première classe ;
- pour chaque séquence d’images comprise dans la deuxième classe, deuxième apprentissage du modèle de prédiction de profondeur à partir de deuxièmes couples d’images, chaque deuxième couple d’images comprenant une troisième image et une quatrième image sélectionnées dans la chaque séquence d’images comprise dans la deuxième classe.
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 de séquences d’images, chaque séquence d’images comprenant un ensemble d’images acquises par la caméra à différents instants temporels d’acquisition consécutifs séparés d’un même intervalle de temps, chaque séquence d’images étant classée en fonction d’une vitesse du véhicule lors de l’acquisition des images de la séquence dans une première classe lorsque la vitesse du véhicule est inférieure à une vitesse seuil et dans une deuxième classe lorsque la vitesse du véhicule est supérieure à la vitesse seuil ;
- pour chaque séquence d’images comprise dans la première classe, premier apprentissage du modèle de prédiction de profondeur à partir de premiers couples d’images, chaque premier couple d’images comprenant une première image et une deuxième image sélectionnées dans la chaque séquence d’images comprise dans la première classe ;
- pour chaque séquence d’images comprise dans la deuxième classe, deuxième apprentissage du modèle de prédiction de profondeur à partir de deuxièmes couples d’images, chaque deuxième couple d’images comprenant une troisième image et une quatrième image sélectionnées dans la chaque séquence d’images comprise dans la deuxième classe.
Le procédé permet avantageusement d’apprendre le modèle de prédiction de profondeur en deux temps. Dans un premier temps le modèle de prédiction de profondeur est appris à partir de séquences d’images dont les images sont acquises depuis une caméra embarquée dans un véhicule se déplaçant à une vitesse inférieure à la vitesse seuil, c’est-à-dire à une vitesse réduite. Dans un second temps le modèle de prédiction de profondeur est appris à partir de séquences d’images dont les images sont acquises depuis une caméra embarquée dans un véhicule se déplaçant à une vitesse supérieure à la vitesse seuil, c’est-à-dire à une vitesse élevée. Ainsi, le modèle de prédiction est appris à partir de séquences d’images représentatives de différentes vitesses de déplacement du véhicule, il est alors en mesure de prédire précisément des profondeurs ou distances lorsque le véhicule se déplace à une vitesse qu’elle soit faible ou élevée. De plus, les séquences d’images utilisées lors de l’apprentissage sont, par exemple, acquises par le véhicule lui-même et sont donc parfaitement représentatives de conditions de roulage réelles du véhicule, et donc de scènes tridimensionnelles réellement observées par la caméra embarquée dans le véhicule.
Selon une variante du procédé, l’image la plus récente dans la chaque séquence d’images est assignée dans chaque premier couple d’images comme étant la première image et chaque image acquise antérieurement à la première image est assignée dans un premier couple d’images comme étant la deuxième image, chaque deuxième image étant différente dans chaque premier couple d’images.
Les premiers couples d’images ainsi obtenus comprennent des images acquises par une caméra positionnée à des points de vue positionnés à une distance différente pour chaque premier couple d’images obtenus depuis une même séquence d’images. Le modèle de prédiction est alors appris à partir de couples d’images acquises depuis des points de vue positionnés à une distance variable.
Selon une autre variante du procédé, le premier apprentissage comprend plusieurs itérations, chaque itération utilisant un premier couple d’images différent correspondant au premier couple d’images pour lequel un intervalle de temps séparant l’acquisition de la première image et de la deuxième image est le plus faible parmi les premiers couples non utilisés lors d’une itération antérieure, le modèle de prédiction de profondeur étant appris à partir du premier couple d’images utilisé.
A chaque itération, la distance séparant les points de vue d’acquisition des images d’un premier couple d’images est croissante, le modèle de prédiction est ainsi d’abord appris pour une distance faible séparant les points de vue d’acquisition d’images puis pour des distances de plus en plus grandes, jusqu’à être capable de prédire des profondeurs fiables pour une grande distance, cette grande distance étant de l’ordre, par exemple, d’un multiple de la distance faible, le multiple étant égal au nombre d’itérations.
Selon une variante supplémentaire du procédé, les premiers couples sont générés en sélectionnant la première image comme correspondant à l’image la plus récente dans la chaque séquence d’images et la deuxième image comme correspondant à une image antérieure à la première image dans la chaque séquence d’images, la deuxième image étant sélectionnée en fonction d’un nombre d’intervalles de temps séparant l’acquisition de la première image de l’acquisition de la deuxième image, le nombre d’intervalles étant déterminé selon une loi de probabilité déterminée.
La loi de probabilité permet ainsi de contrôler une occurrence d’utilisation des premiers couples d’images, notamment en fonction du nombre d’intervalles de temps entre les temps d’acquisition des images du premier couples d’images. Il est alors possible de favoriser ou non les premiers couples d’images comprenant des images acquises à peu d’intervalles de temps ou au contraire à de nombreuses intervalles de temps. La sensibilité du modèle de prédiction de profondeur au nombre d’intervalles de temps et donc à la distance séparant des points de vue d’acquisition des images de premiers couples d’images est ainsi ajustée.
Selon encore une variante du procédé, la loi de probabilité est obtenue par la fonction suivante :
avec :
• une probabilité associée à une intervalle notée ,
• un écart type.
avec :
•
•
Une telle loi de probabilité est représentative d’une loi normale dont la moyenne est nulle. Cette loi de probabilité favorise l’utilisation de premiers couples d’images comprenant des images acquises à peu d’intervalles de temps. La variation de l’écart type permet également un réglage. En effet, l’augmentation de l’écart type permet alors de diminuer l’occurrence des premiers couples d’images comprenant des images acquises à de faibles intervalles de temps et à l’inverse d’augmenter l’occurrence des premiers couples d’images comprenant des images acquises à de grands intervalles de temps.
Selon encore une autre variante du procédé, la vitesse seuil est déterminée en fonction d’une distance cible et d’une fréquence d’acquisition d’images par la caméra. Cette distance cible permet par exemple de distinguer des séquences d’images comprenant des images acquises lorsque le véhicule se déplace à faible vitesse, par exemple en milieu urbain, et des séquences d’images comprenant des images acquises lorsque le véhicule se déplace à plus grande vitesse, par exemple en milieu extra urbain, sur route à accès réglementé et sur autoroute.
Selon une variante supplémentaire du procédé, le modèle de prédiction de profondeur est appris par minimisation d’une erreur de perte déterminée à partir de chaque couple d’images d’une pluralité de couples d’images par comparaison des images du chaque couple d’images à des images reconstruites à partir des images du chaque couple d’images et de profondeurs prédites par le modèle de prédiction de profondeur et associées à des pixels des images dudit chaque couple d’image, la pluralité de couples d’images correspondant aux premiers couples d’images lors du premier apprentissage et aux deuxièmes couples d’images lors du deuxième apprentissage.
La détermination de cette erreur de perte permet un entrainement auto supervisé, c’est-à-dire uniquement à partir d’images acquises par la caméra embarquée et sans nécessiter l’utilisation de données annotées provenant, par exemple, d’un autre système embarqué tel un LiDAR®. La reconstruction des deux images est appelée reconstruction bilatérale. Elle permet à la fois d’entraîner le modèle de prédiction de profondeur, mais également le cas échéant un modèle de prédiction du déplacement de la caméra dans la scène tridimensionnelle entre les deux instants temporels d’acquisition des images du premier couple d’images.
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 à 7 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 à 7. 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’une séquence d’images la réception de données représentatives d’une image ou respectivement d’une séquence d’images. De même pour la détermination d’une profondeur ou d’une erreur, on entend la détermination de données représentatives d’une profondeur ou d’une erreur. 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 comprenant un premier et un deuxième apprentissages.
Le premier apprentissage du modèle de prédiction de profondeur est réalisé à partir de premiers couples d’images, chaque premier couple d’images étant formé à partir d’images d’une même séquence d’images acquises à par une caméra embarquée dans un véhicule et se déplaçant à une vitesse inférieure à une vitesse seuil dans une scène tridimensionnelle.
Le deuxième apprentissage du modèle de prédiction de profondeur est réalisé à partir de deuxièmes couples d’images, chaque deuxième couple d’images étant formé à partir d’images d’une même séquence d’images acquises à par la caméra embarquée dans la véhicule et se déplaçant à une vitesse supérieure à la vitesse seuil dans la scène tridimensionnelle.
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. Dans cet exemple, les caméras sont supposées parfaites, c’est-à-dire que les distorsions ne sont pas prises en compte, que leur correction est traitée au moment de l’acquisition d’une image ou au moment de la calibration.
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 . Le point de vue de la caméra 11 est alors fixe dans le référentiel du véhicule 10, et lorsque le véhicule 10 se déplace, le point de vue de la caméra 11 se déplace également dans le référentiel de la scène tridimensionnelle observée qui est située dans l’environnement du véhicule 10.
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.
La distance séparant les différents points de vue d’acquisition dépend notamment de la vitesse du véhicule 10 et de la fréquence d’acquisition d’images par la caméra 11. A noter que si le véhicule se déplace à une vitesse constante et que la caméra 11 fait l’acquisition régulière d’images, c’est-à-dire à une fréquence constante, alors la distance séparant des points de vue associés à des images acquises consécutivement est constante. Si la vitesse du véhicule varie, cette distance varie également de manière proportionnelle. Ainsi, lorsque le véhicule 10 se déplace à faible vitesse, alors la distance séparant les points de vue lors d’acquisition de deux images consécutives par la caméra 11 est faible, et à l’inverse, lorsque le véhicule 10 se déplace à grande vitesse ou vitesse élevée, alors la distance séparant les points de vue d’acquisition de deux images consécutives par la caméra 11 est élevée.
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 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, 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, deux images acquises par la caméra 11 sont reçues.
Dans une étape 22, des profondeurs associées à un ensemble de pixels d’une des deux images reçues sont déterminées par le modèle de prédiction de profondeur à partir des deux 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, des séquences d’images sont reçues. Chaque séquence d’images comprenant un ensemble d’images acquises par la caméra 11 à différents instants temporels d’acquisition consécutifs séparés d’un même intervalle de temps. Par exemple, chaque séquence d’images reçue comprend six images acquises par la caméra 11.
Selon un exemple de réalisation particulier, les images acquises sont filtrées au préalable de manière qu’aucune image ne comprenne de pixel correspondant à un objet dynamique, c’est-à-dire à un objet en mouvement dans la scène tridimensionnelle observée par la caméra à l’instant temporel d’acquisition d’une image. En effet, la présence de pixels correspondants à un objet dynamique dans la scène tridimensionnelle détériore l’apprentissage, un système de vision monoculaire présentant des difficultés à estimer une profondeur pour un tel pixel car une disparité ou un flux optique déterminé entre des pixels de deux images associés à ce même objet comprend alors deux composantes, une première composante résultant d’un déplacement de la caméra 11 dans la scène tridimensionnelle, c’est-à-dire du véhicule 10, et une deuxième composante résultant d’un déplacement propre de l’objet dynamique dans la scène tridimensionnelle observée.
Selon un autre exemple, la caméra est toujours en mouvement entre deux images acquises consécutives. En effet, pour prédire des profondeurs, le système de vision monoculaire nécessite d’être en mouvement de manière à observer la scène tridimensionnelle depuis des points de vue différents.
A noter que dans le cas où une séquence comprend des images comprenant des pixels liés à des objets dynamiques ou des images acquises depuis un même point de vue, il est possible de les filtrer avec un procédé de filtrage ou avec l’aide d’un technicien. En effet, le tri d’une telle séquence ne requiert pas une analyse de chaque image de la séquence d’images mais une analyse de la séquence d’images elle-même, une séquence d’images correspondant à une vidéo.
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.
Chaque séquence d’images est classée en fonction d’une vitesse du véhicule 10 lors de l’acquisition des images de la séquence :
• dans une première classe lorsque ladite vitesse du véhicule 10 est inférieure à une vitesse seuil, et
• dans une deuxième classe lorsque ladite vitesse du véhicule 10 est supérieure à la vitesse seuil.
• dans une première classe lorsque ladite vitesse du véhicule 10 est inférieure à une vitesse seuil, et
• dans une deuxième classe lorsque ladite vitesse du véhicule 10 est supérieure à la vitesse seuil.
La vitesse du véhicule 10 est par exemple associée à chaque image ou à chaque séquence d’images, la vitesse étant par exemple obtenue de systèmes embarqués dans le véhicule 10, par exemple d’un odomètre ou d’un système de géolocalisation.
Selon un exemple de réalisation particulier, la vitesse seuil est déterminée en fonction d’une distance cible et d’une fréquence d’acquisition d’images par la caméra 11. La vitesse seuil est alors déterminée, par exemple, par la fonction suivante :
vseuil= dcible/ facquisition, avec :
• vseuilla vitesse seuil,
• dciblela distance cible, et
• facquisitionla fréquence d’acquisition d’images par la caméra 11.
vseuil= dcible/ facquisition, avec :
• vseuilla vitesse seuil,
• dciblela distance cible, et
• facquisitionla fréquence d’acquisition d’images par la caméra 11.
Les séquences d’images classées dans la première classe correspondent ainsi à des séquences d’images acquises à vitesse faible, tandis que les séquences d’images classées dans la deuxième classe correspondent à des séquences d’images acquises à vitesse élevée.
Le but de ce procédé d’apprentissage 3 est alors d’apprendre le modèle de prédiction de profondeur à partir de séquences d’images acquises à faible vitesse, c’est-à-dire d’images acquises depuis des points de vue peu distants, puis progressivement d’apprendre le modèle de prédiction de profondeur à partir de séquences d’images acquises à plus grande vitesse, c’est-à-dire d’images acquises depuis des points de vue plus distants. Le procédé d’apprentissage 3 est ainsi divisé en un premier apprentissage, puis en un deuxième apprentissage.
Pour chaque séquence d’images comprise dans la première classe, dans une étape 32, le modèle de prédiction de profondeur est appris dans un premier apprentissage à partir de premiers couples d’images, chaque premier couple d’images comprenant une première image et une deuxième image sélectionnées dans chaque séquence d’images.
L’apprentissage d’un modèle de prédiction de profondeur à partir d’images est connu de l’homme du métier. Un exemple de procédé d’apprentissage 6 du modèle de prédiction de profondeur à partir d’un couple d’images est notamment décrit ci-après en regard de laFIG. 6 .
Selon une première variante du procédé d’apprentissage 3, l’image la plus récente dans chaque séquence d’images est assignée dans chaque premier couple d’images comme étant la première image et chaque image acquise antérieurement à la première image est assignée dans un premier couple d’images comme étant la deuxième image, chaque deuxième image étant différente dans chaque premier couple d’images.
Selon un exemple de réalisation particulier de la première variante, le premier apprentissage comprend plusieurs itérations, chaque itération utilisant un premier couple d’images différent correspondant au premier couple d’images pour lequel un intervalle de temps séparant l’acquisition de la première image et de la deuxième image est le plus faible parmi les premiers couples non utilisés lors d’une itération antérieure, le modèle de prédiction de profondeur étant appris à partir du premier couple d’images utilisé.
LaFIG. 5 illustre schématiquement la génération de premiers couples d’images à partir d’une séquence d’images acquises par la caméra 11 embarquée dans le véhicule 10, selon un exemple de réalisation particulier et non limitatif de la présente invention.
Une séquence d’images 500 comprend, selon cet exemple de réalisation particulier, sept images acquises temporellement dans un ordre précis, la caméra 11 ayant acquis chacune des images de la séquence d’images 500 dans l’ordre suivant : l’image 51, l’image 52, l’image 53, l’image 54, l’image 55, l’image 56 et en dernier l’image 57. L’image 57 est donc l’image la plus récente de la séquence d’images 500, c’est-à-dire la dernière image acquise temporellement dans la séquence d’images 500, tandis que l’image 51 est la plus ancienne image acquise de la séquence d’images 500, c’est-à-dire la première image acquise temporellement dans la séquence d’images 500.
Lors des différentes itérations, le modèle de prédiction est appris à partir de premiers couples d’images.
• Lors de la première itération, le premier couple d’image 510 comprend pour première image l’image la plus récente correspondant à l’image 57 et la deuxième image pour laquelle un seul intervalle de temps sépare son acquisition de l’acquisition de la première image, ici l’image 57, la deuxième image correspondant alors à l’image 56.
• Lors de la deuxième itération, le premier couple d’image 520 comprend pour première image l’image la plus récente correspondant toujours à l’image 57 et la deuxième image pour laquelle l’intervalle de temps le plus faible ou minimal sépare son acquisition de l’acquisition de la première image parmi les images de la séquence d’images 500 non utilisées précédemment, la deuxième image correspondant alors à l’image 55. En effet, deux intervalles de temps séparent l’instant d’acquisition de l’image 57 de l’instant d’acquisition de l’image 55 et l’image 56 a été utilisée lors de la précédente itération.
• Lors de la troisième itération, un premier couple d’images 530 est formé et comprend l’image 57 comme première image et l’image 54 comme deuxième image.
• Lors de la quatrième itération, un premier couple d’images 540 est formé et comprend l’image 57 comme première image et l’image 53 comme deuxième image.
• Lors de la cinquième itération, un premier couple d’images 550 est formé et comprend l’image 57 comme première image et l’image 52 comme deuxième image.
• Lors de la sixième et dernière itération, un premier couple d’images 560 est formé et comprend l’image 57 comme première image et l’image 51 comme deuxième image.
• Lors de la première itération, le premier couple d’image 510 comprend pour première image l’image la plus récente correspondant à l’image 57 et la deuxième image pour laquelle un seul intervalle de temps sépare son acquisition de l’acquisition de la première image, ici l’image 57, la deuxième image correspondant alors à l’image 56.
• Lors de la deuxième itération, le premier couple d’image 520 comprend pour première image l’image la plus récente correspondant toujours à l’image 57 et la deuxième image pour laquelle l’intervalle de temps le plus faible ou minimal sépare son acquisition de l’acquisition de la première image parmi les images de la séquence d’images 500 non utilisées précédemment, la deuxième image correspondant alors à l’image 55. En effet, deux intervalles de temps séparent l’instant d’acquisition de l’image 57 de l’instant d’acquisition de l’image 55 et l’image 56 a été utilisée lors de la précédente itération.
• Lors de la troisième itération, un premier couple d’images 530 est formé et comprend l’image 57 comme première image et l’image 54 comme deuxième image.
• Lors de la quatrième itération, un premier couple d’images 540 est formé et comprend l’image 57 comme première image et l’image 53 comme deuxième image.
• Lors de la cinquième itération, un premier couple d’images 550 est formé et comprend l’image 57 comme première image et l’image 52 comme deuxième image.
• Lors de la sixième et dernière itération, un premier couple d’images 560 est formé et comprend l’image 57 comme première image et l’image 51 comme deuxième image.
Le véhicule 10 circulant à une certaine vitesse au moment de l’acquisition des images d’une séquence d’images, celui-ci et donc la caméra 11 embarquée dans le véhicule 10, a parcouru une distance déterminée entre chaque point de vue d’acquisition d’une image d’une même séquence d’images.
LaFIG. 7 illustre un graphique représentant une distance parcourue ‘d’ par le véhicule 10 en fonction de sa vitesse V10et d’un nombre ‘i’ d’intervalles de temps entre l’acquisition de deux images.
Selon l’exemple illustré, la caméra 11 fait l’acquisition d’images à une fréquence de 30Hz (trente Hertz), soit trente images par seconde. Lorsque le véhicule 10 circule à une vitesse de 15km/h (quinze kilomètres par heure), soit à une vitesse de 4,2m/s (quatre virgule deux mètres par seconde), il parcourt alors 14cm (quatorze centimètres) entre le point de vue d’acquisition d’une image et le point de vue d’acquisition d’une image suivante consécutive. De même, il parcourt 14cm entre le point de vue d’acquisition de deux autre images. Le véhicule a donc parcouru 28cm (vingt huit centimètres) entre les point de vue d’acquisition de trois images consécutives, soit pendant deux intervalles de temps. L’apprentissage du modèle de prédiction de profondeur à partir d’images séparées de deux intervalles de temps revient à apprendre le modèle de prédiction de profondeur à partir d’images acquises consécutivement, c’est-à-dire à un intervalle de temps, alors que le véhicule 10 circule deux fois plus vite.
Avec un raisonnement similaire, le véhicule parcourt 42cm (quarante deux centimètres) entre les points de vue d’acquisition d’images acquises à trois intervalles de temps. Cette distance de 42cm est proche d’une distance parcourue égale à 46cm (quarante-six centimètres) entre deux points de vue d’acquisition de deux images consécutives à une vitesse de 50km/h (cinquante kilomètres par heure). Le fait d’apprendre le modèle de prédiction de profondeur avec ces images distantes temporellement de trois intervalles de temps revient à apprendre le modèle de prédiction de profondeur pour un véhicule 10 circulant trois fois plus vite, soit 50km/h simulés contre 15km/h dans les faits.
De manière similaire, le distance parcourue par le véhicule 10 entre l’acquisition d’images acquises à deux intervalles de temps à une vitesse de 50km/h est proche d’une distance parcourue par le véhicule 10 entre l’acquisition de deux images consécutives à une vitesse de 100km/h. Une vitesse de 100km/h est alors simulée à partir d’images acquises à une vitesse de 50km/h.
Ainsi, lors de chaque itération, le modèle de prédiction de profondeur est appris avec une distance séparant les points de vue d’acquisition des images du premier couple d’images qui augmente. Le modèle de prédiction de profondeur est ainsi appris pour une faible distance séparant les points de vue d’acquisition des images acquises, puis, quand le modèle de prédiction de profondeur est suffisamment précis, une nouvelle itération est implémentée et le modèle de prédiction de profondeur précédemment appris continue son apprentissage avec une distance séparant les points de vue d’acquisition des images plus grande. Le fait d’augmenter cette distance revient alors à simuler une plus grande vitesse du véhicule 10. En effet, la distance parcourue entre les points de vue d’acquisition des images est doublée entre la première itération et la deuxième itération, puis triplée entre la première itération et la troisième itération, et ainsi de suite. Il est alors possible d’apprendre le modèle de prédiction de profondeur par marches successives de distances et ainsi de réaliser un apprentissage progressif avec une vitesse simulée qui augmente. De cette manière l’apprentissage du modèle de prédiction de profondeur est maîtrisé et consistant pour des grandes plages de vitesses du véhicule 10.
Selon une deuxième variante du procédé d’apprentissage 3, les premiers couples sont générés en sélectionnant la première image comme correspondant à l’image la plus récente dans chaque séquence d’images et la deuxième image comme correspondant à une image antérieure à la première image dans chaque séquence d’images, la deuxième image étant sélectionnée en fonction d’un nombre d’intervalles de temps séparant l’acquisition de la première image de l’acquisition de la deuxième image, le nombre d’intervalles étant déterminé selon une loi de probabilité déterminée.
La loi de probabilité est, par exemple, obtenue par la fonction suivante :
Avec :
• une probabilité associée à une intervalle notée ,
• un écart type.
•
•
L’écart type varie par exemple à chaque itération du premier apprentissage, de manière à définir en fonction de l’itération i, par exemple avec . Si le nombre d’images d’une séquence d’images est de sept, à la première itération tandis qu’à la dernière itération, .
Une fonction générant un résultat aléatoire selon la loi de probabilité est par exemple définie en langage Python® par la fonction numpy.random.normal, le langage Python® étant particulièrement utilisé dans le domaine du traitement d’image.
En fonction d’un résultat de cette fonction, un premier couple d’images est sélectionné en fonction du nombre d’intervalles de temps séparant les temps d’acquisition des première et deuxième images du premier couple d’images, cette sélection étant déterminée par la fonction suivante :
Avec :
• le nombre d’intervalle de temps calculé, et
• le résultat d’une fonction générant un résultat aléatoire selon la loi de probabilité.
•
•
La fonction présentée ci-dessus est évidemment adaptée à une séquence comprenant sept images, et donc jusqu’à six intervalles de temps.
Une telle loi de probabilité correspond à une loi normale centrée sur une valeur nulle qui permet d’obtenir une plus grande probabilité d’utiliser un premier couple d’images lorsque les première et deuxième images du premier couple d’images sont acquises à un nombre d’intervalles de temps faible, et une plus faible probabilité d’utiliser un premier couple d’images lorsque les première et deuxième images du premier couple d’images sont acquises à un nombre d’intervalles de temps important. Ainsi, par rapport aux couples illustrés dans laFIG. 5 , le premier couple d’images 510 a davantage de chances d’être utilisé pour l’apprentissage du modèle de prédiction de profondeurs que le premier couple 520, qui lui-même a davantage de chances d’être utilisé que le premier couple 530. La premier couple 560 est ainsi celui qui a la plus faible chance d’être utilisé.
Contrairement à la première variante, dans cette deuxième variante tous les couples possibles d’images ne sont pas exploités et l’augmentation de la distance séparant les points de vue d’acquisition des images d’un deuxième couple d’images n’est pas progressive.
Le premier apprentissage prend fin lorsque le modèle de prédiction de profondeur est suffisamment fiable. Cette étape 32 se termine quand le modèle de prédiction de profondeur atteint, par exemple, la même performance que dans la publication « Digging Into Self-Supervised Monocular Depth Estimation » de Clément Godard, Oisin Mac Aodha, Michael Firman et Gabriel Brostow, publiée en auout 2019. La performance est à évaluer par un moyen qualitatif comme par une comparaison de cartes de profondeurs générées pour la même image, une erreur relative étant par exemple inférieure à 25%.
Pour chaque séquence d’images comprise dans la deuxième classe, dans une étape 33, le modèle de prédiction de profondeur est appris dans un deuxième apprentissage à partir de deuxièmes couples d’images, chaque deuxième couple d’images comprenant une troisième image et une quatrième image sélectionnées dans chaque séquence d’images.
Le deuxième apprentissage est ainsi similaire au premier apprentissage mais avec pour données d’entrée des deuxièmes couples d’images correspondant à des images acquises à plus grande vitesse. La grande vitesse n’est donc plus simulée comme précédemment, le modèle de prédiction de profondeur continue ainsi son apprentissage avec des données réelles et représentatives, par exemple d’environnements extra urbains où le véhicule 10 circule réellement rapidement. En effet, lors du premier apprentissage, les images sont par exemple représentatives d’un centre-ville mais la vitesse simulée est supérieure à 100km/h, ce qui ne correspond pas à une situation de conduite réellement observable.
Les premier et deuxième apprentissages correspondent à la détermination de paramètres d’entrée du réseau de neurones convolutif mettant en œuvre le modèle de prédiction de profondeur. LaFIG. 6 illustre un organigramme de différentes étapes d’un tel procédé d’apprentissage 6 du modèle de prédiction de profondeur à partir d’un couple d’images utilisé dans le procédé d’apprentissage 3 du modèle de prédiction de profondeur, selon un exemple de réalisation particulier et non limitatif de la présente invention.
Selon l’exemple de réalisation particulier illustré dans laFIG. 6 , le modèle de prédiction de profondeur est appris par minimisation d’une erreur de perte déterminée à partir de chaque couple d’images d’une pluralité de couples d’images par comparaison des images de chaque couple d’images à des images reconstruites à partir des images de chaque couple d’images et de profondeurs prédites par le modèle de prédiction de profondeur et associées à des pixels des images de chaque couple d’image, la pluralité de couples d’images correspondant aux premiers couples d’images lors dudit premier apprentissage et aux deuxièmes couples d’images lors dudit deuxième apprentissage.
Dans une étape 61, un couple d’images comprenant une cinquième et une sixième images est reçu. La cinquième image correspond alors à une première image lors d’un premier apprentissage ou à une troisième image lors d’un deuxième apprentissage, la sixième image correspond à une deuxième image lors d’un premier apprentissage ou à une quatrième image lors d’un deuxième apprentissage.
Dans une étape 62, des profondeurs sont prédites par le modèle de prédiction de profondeurs pour des pixels des cinquième et sixième images à partir des cinquième et sixiè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.
Dans une étape 63, des septième et huitième images sont générées. La septième image est générée à partir de la cinquième image, des profondeurs associées aux pixels de la cinquième image et de paramètres extrinsèques du système de vision monoculaire en mouvement tandis que la huitième image est générée à partir de la sixième image, des profondeurs associées aux pixels de la sixième image et des paramètres extrinsèques du système de vision monoculaire en mouvement. Cette étape 63 est couramment appelée reconstruction bilatérale des images.
La génération d’une septième image à partir d’une cinquième image acquise par la caméra 11 consiste en la reprojection d’un pixel de la cinquième image acquise depuis un premier point de vue à l’instant temporel d’acquisition de la cinquième image sous forme d’un point, puis à projeter ce point dans le plan image de la caméra 11 à sa position correspondant à un deuxième point de vue à l’instant temporel d’acquisition de la sixième image, de manière à obtenir une image correspondant à une vue de la scène tridimensionnelle depuis le deuxième point de vue de la caméra 11. 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 septième image générée à partir de la cinquième image est comparable à la sixième image. De manière similaire, la huitième image générée à partir de la sixième image est comparable à la cinquième image.
Les première et deuxième positions de la caméra 11 aux instants temporels d’acquisition des respectivement cinquième et sixième images n’étant pas confondues lorsque le véhicule 10 est en mouvement et des objets pouvant masquer d’autres objets de la scène, les images générées ne sont pas identiques aux images acquises par la caméra 11. De plus, la prédiction des profondeurs et/ou la prédiction d’un mouvement de la caméra 11 entre le premier et le deuxième points de vue ne sont pas exempts d’erreurs. Ainsi, la comparaison d’une image générée à une image acquise permet d’évaluer la précision des différents modèles employés : le modèle de prédiction de profondeur et/ou le modèle de prédiction de mouvement de la caméra 11.
Selon un exemple de réalisation particulier, les septième et huitième images sont respectivement générées par la fonction suivante :
Avec :
• les coordonnées d’un pixel de la septième image, respectivement de la huitiè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 les 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 cinquième image, respectivement sixième image, et de la profondeur qui lui est associée.
•
•
•
•
•
Selon une variante, le modèle de prédiction de direction correspond à une matrice intrinsèque de la caméra 11. Cette variante est notamment applicable aux caméras sténopé et calibrées.
Selon une autre 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 autre 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 autre variante, une étape de prédiction de direction associée aux pixels de la cinquième image et aux pixels de la sixiè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 instants temporels d’acquisition des cinquième et sixième images et 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 ».
Dans une étape 64, le modèle de prédiction de profondeur est appris par minimisation d’une erreur de perte.
L’erreur de perte comprend par exemple une première erreur photométrique déterminée par comparaison des cinquième et huitième images et une deuxième erreur photométrique déterminée par comparaison des sixième et septième images.
Si le modèle de prédiction de profondeurs est précis, alors une première ou une deuxième erreur photométrique est faible. 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, les première et deuxième erreurs photométriques sont respectivement déterminées par la fonction suivante :
Avec :
• la première erreur photométrique notée , respectivement la deuxième erreur photométrique notée , étant un pixel défini par ses coordonnées en deux dimensions,
• une valeur du pixel dans la cinquième image, respectivement dans la sixième image,
• une valeur du pixel dans la huitième image, respectivement dans la septiè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’une image générée déterminée par la fonction suivante :
Avec :
• l’erreur de reconstruction pour un pixel p de la septième image, respectivement l’erreur de construction pour un pixel p de la huitième image ;
• est une profondeur associée au pixel dans la septième image, respectivement dans la huitième image ;
• 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 septième et huitième ;
• 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 septième image, respectivement huitième image.
•
•
•
•
• 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 »).
L’erreur photométrique 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 associée à chaque premier couple de blocs est déterminée par la fonction suivante :
Avec :
• correspondant à l’erreur de perte,
• la première erreur photométrique déterminée pour un pixel dans la cinquième image, 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 sixième image.
•
•
•
Selon le deuxième mode de réalisation particulier, l’erreur photométrique associée à chaque premier couple de blocs est déterminée par la fonction suivante :
Avec :
• correspondant à l’erreur de perte,
• la première erreur photométrique déterminée pour un pixel dans la cinquième image, 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 huitième image,
• l’erreur de reconstruction pour un pixel p de la septième image, et
• l’erreur de reconstruction pour un pixel p de la huitième image.
•
•
•
•
•
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 afin de minimiser l’erreur de perte précédemment calculée.
Un objet visible dans le champ de vision de la caméra 11 à l’instant temporel d’acquisition de la cinquième image et masqué dans le champ de vision de la caméra 11 à l’instant temporel d’acquisition de la sixième image ou inversement n’impacte pas l’erreur de perte grâce à la fonction min, ce procédé est donc insensible aux occlusions.
Ainsi, le modèle de prédiction de profondeur utilisé pour la prédiction de profondeur d’un pixel d’une image acquise par la caméra 11 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 monoculaire, ces données d’apprentissage sont donc particulièrement pertinentes.
LaFIG. 4 illustre schématiquement un dispositif 4 configuré pour apprendre un modèle de prédiction de profondeur associé à 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 à partir du modèle de prédiction de profondeur qui lui est associé, 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) de séquences d’images, chaque séquence d’images comprenant un ensemble d’images acquises par la caméra (11) à différents instants temporels d’acquisition consécutifs séparés d’un même intervalle de temps, chaque séquence d’images étant classée en fonction d’une vitesse du véhicule (10) lors de l’acquisition des images de ladite séquence dans une première classe lorsque ladite vitesse du véhicule (10) est inférieure à une vitesse seuil et dans une deuxième classe lorsque ladite vitesse du véhicule (10) est supérieure à la vitesse seuil ;
- pour chaque séquence d’images comprise dans la première classe, premier apprentissage (32) du modèle de prédiction de profondeur à partir de premiers couples d’images, chaque premier couple d’images comprenant une première image et une deuxième image sélectionnées dans ladite chaque séquence d’images ;
- pour chaque séquence d’images comprise dans la deuxième classe, deuxième apprentissage (33) du modèle de prédiction de profondeur à partir de deuxièmes couples d’images, chaque deuxième couple d’images comprenant une troisième image et une quatrième image sélectionnées dans ladite chaque séquence d’images. - Procédé selon la revendication 1, pour lequel l’image la plus récente dans ladite chaque séquence d’images est assignée dans chaque premier couple d’images comme étant la première image et chaque image acquise antérieurement à la première image est assignée dans un premier couple d’images comme étant la deuxième image, chaque deuxième image étant différente dans chaque premier couple d’images.
- Procédé selon la revendication 2, pour lequel le premier apprentissage comprend plusieurs itérations, chaque itération utilisant un premier couple d’images différent correspondant au premier couple d’images pour lequel un intervalle de temps séparant l’acquisition de la première image et de la deuxième image est le plus faible parmi les premiers couples non utilisés lors d’une itération antérieure, le modèle de prédiction de profondeur étant appris à partir dudit premier couple d’images utilisé.
- Procédé selon la revendication 1, pour lequel lesdits premiers couples sont générés en sélectionnant ladite première image comme correspondant à l’image la plus récente dans ladite chaque séquence d’images et ladite deuxième image comme correspondant à une image antérieure à la première image dans ladite chaque séquence d’images, la deuxième image étant sélectionnée en fonction d’un nombre d’intervalles de temps séparant l’acquisition de la première image de l’acquisition de la deuxième image, ledit nombre d’intervalles étant déterminé selon une loi de probabilité déterminée.
- Procédé selon la revendication 4, pour lequel la loi de probabilité est obtenue par la fonction suivante :
avec :
• une probabilité associée à une intervalle notée ,
• un écart type. - Procédé selon l’une des revendications 1 à 5, pour lequel la vitesse seuil est déterminée en fonction d’une distance cible et d’une fréquence d’acquisition d’images par la caméra (11).
- Procédé selon l’une des revendications 1 à 5, pour lequel le modèle de prédiction de profondeur est appris par minimisation d’une erreur de perte déterminée à partir de chaque couple d’images d’une pluralité de couples d’images par comparaison des images dudit chaque couple d’images à des images reconstruites à partir des images dudit chaque couple d’images et de profondeurs prédites par le modèle de prédiction de profondeur et associées à des pixels des images dudit chaque couple d’image, ladite pluralité de couples d’images correspondant auxdits premiers couples d’images lors dudit premier apprentissage et auxdits deuxièmes couples d’images lors dudit deuxième apprentissage.
- Programme d’ordinateur comportant des instructions pour la mise en œuvre du procédé selon l’une quelconque des revendications précédentes, lorsque ces instructions sont exécutées par un processeur.
- 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 à 7.
- Véhicule (10) comprenant le dispositif (4) selon la revendication 9.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR2403628A FR3161049A1 (fr) | 2024-04-09 | 2024-04-09 | 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. |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR2403628 | 2024-04-09 | ||
| FR2403628A FR3161049A1 (fr) | 2024-04-09 | 2024-04-09 | 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. |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| FR3161049A1 true FR3161049A1 (fr) | 2025-10-10 |
Family
ID=91247641
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| FR2403628A Pending FR3161049A1 (fr) | 2024-04-09 | 2024-04-09 | 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. |
Country Status (1)
| Country | Link |
|---|---|
| FR (1) | FR3161049A1 (fr) |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2022123452A1 (fr) * | 2020-12-12 | 2022-06-16 | Niantic, Inc. | Modèle d'estimation de profondeur monoculaire multi-trame auto-supervisé |
-
2024
- 2024-04-09 FR FR2403628A patent/FR3161049A1/fr active Pending
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2022123452A1 (fr) * | 2020-12-12 | 2022-06-16 | Niantic, Inc. | Modèle d'estimation de profondeur monoculaire multi-trame auto-supervisé |
Non-Patent Citations (3)
| Title |
|---|
| CLÉMENT GODARDOISIN MAC AODHAMICHAEL FIRMANGABRIEL BROSTOW, DIGGING INTO SELF-SUPERVISED MONOCULAR DEPTH ESTIMATION, August 2019 (2019-08-01) |
| RARES VITOR GUIZILINI ET AL: "3D Packing for Self-Supervised Monocular Depth Estimation", 28 March 2020 (2020-03-28), pages 1 - 13, XP093198145, Retrieved from the Internet <URL:https://arxiv.org/pdf/1905.02693> * |
| ZHOU HANG HANG ZHOU@UEA AC UK ET AL: "Constant Velocity Constraints for Self-Supervised Monocular Depth Estimation", PROCEEDINGS OF THE ACM/SPEC INTERNATIONAL CONFERENCE ON PERFORMANCE ENGINEERING, ACMPUB27, NEW YORK, NY, USA, 7 December 2020 (2020-12-07), pages 1 - 8, XP058562941, ISBN: 978-1-4503-8198-7, DOI: 10.1145/3429341.3429355 * |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| 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. | |
| FR3148485A1 (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. | |
| 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. | |
| FR3161784A1 (fr) | Procédé et dispositif d’apprentissage d’un modèle de prédiction de profondeur à partir de bandes verticales d’images. | |
| 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. | |
| 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 | |
| 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 | |
| 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. | |
| 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 | |
| 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. | |
| 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é. | |
| 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. | |
| FR3163194A1 (fr) | Procédé et dispositif d’apprentissage d’un modèle de prédiction de profondeur à partir de cartes de caractéristiques de différentes résolutions | |
| 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 | |
| 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 | |
| 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. | |
| FR3163760A1 (fr) | Procédé et dispositif de génération d’images d’apprentissage d’un modèle de prédiction de profondeur pour un système de vision avec caméras hétérogènes. | |
| 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 | |
| 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 | |
| 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. | |
| 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 | |
| FR3163480A1 (fr) | Procédé et dispositif de détermination d’une distance séparant un objet d’un véhicule par utilisation de boîte englobante et de modèle local de prédiction de profondeur. | |
| 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 | |
| FR3163759A1 (fr) | Procédé et dispositif de détermination d’une distance séparant un objet d’un véhicule par un modèle de prédiction de profondeur appris localement. |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PLFP | Fee payment |
Year of fee payment: 2 |
|
| PLSC | Publication of the preliminary search report |
Effective date: 20251010 |