Auteur : Jacob Marks (ingénieur en apprentissage automatique chez Voxel51)
Les humains voient le monde à travers deux yeux. L’un des principaux avantages de cette vision binoculaire est la capacité de percevoir la profondeur, c’est-à-dire la proximité ou la distance des objets. Le cerveau humain déduit la profondeur des objets en comparant les images capturées simultanément par les yeux gauche et droit et en interprétant les disparités. Ce processus est connu sous le nom de stéréopsie.
Tout comme la perception de la profondeur joue un rôle crucial dans la vision et la navigation humaines, la capacité à estimer la profondeur est essentielle pour un large éventail d'applications de vision par ordinateur, de la conduite autonome à la robotique, en passant par la réalité augmentée. Pourtant, de nombreuses considérations pratiques, allant des limitations spatiales aux contraintes budgétaires, limitent souvent ces applications à une seule caméra.
L'estimation de la profondeur monoculaire (MDE) consiste à prédire la profondeur d'une scène à partir d'une seule image. Le calcul de la profondeur à partir d'une seule image est intrinsèquement ambigu, car il existe plusieurs façons de projeter la même scène 3D sur le plan 2D d'une image. En conséquence, le MDE est une tâche difficile qui nécessite (explicitement ou implicitement) la prise en compte de nombreux indicateurs tels que la taille de l'objet, l'occlusion et la perspective.
Dans cet article, nous illustrerons comment charger et visualiser des données de carte de profondeur, exécuter des modèles d'estimation de profondeur monoculaire et évaluer les prédictions de profondeur. Nous le ferons en utilisant les données de l'ensemble de données SUN-RGBD.
Nous aborderons notamment les éléments suivants :
Nous utiliserons les bibliothèques de transformateurs et de diffuseurs Hugging Face pour l'inférence, FiftyOne pour la gestion et la visualisation des données, et scikit-image pour les métriques d'évaluation.
Avant de commencer, assurez-vous que toutes les bibliothèques nécessaires sont installées :
pip install -U torch cinquante et un diffuseurs transformateurs scikit-imageEnsuite, nous importerons les modules que nous utiliserons tout au long de l’article :
depuis glob importer glob importer numpy en tant que np depuis PIL importer Image importer torch importer cinquante et un comme fo importer cinquante et un.zoo comme foz importer cinquante et un.brain comme fob depuis cinquante et un importer ViewField en tant que FL'ensemble de données SUN RGB-D contient 10 335 images RVB-D, chacune d'elles ayant une image RVB, une image de profondeur et des caractéristiques intrinsèques de caméra correspondantes. Il contient des images des ensembles de données NYU Depth v2, Berkeley B3DO et SUN3D. SUN RGB-D est l'un des ensembles de données les plus populaires...
[Courte citation de 8% de l'article original]