MIDI-3D : Un outil open source pour générer rapidement des scènes 3D multi-objets à partir d'une seule image
Introduction générale
MIDI-3D est un projet open-source développé par l'équipe VAST-AI-Research qui génère rapidement des scènes 3D contenant plusieurs objets à partir d'une seule image pour les développeurs, les chercheurs et les créateurs. L'outil est basé sur des techniques de modélisation de diffusion multi-instances, combinant l'intelligence artificielle et la modélisation 3D pour générer simultanément plusieurs objets 3D de haute qualité et maintenir leurs relations spatiales.MIDI-3D a été présenté à CVPR 2025, et le code, les poids des modèles et une démo en ligne sont tous ouverts. Il prend en charge les images réalistes et les dessins animés, avec des temps de génération aussi courts que 40 secondes et des fichiers de sortie d'une taille de .glb
qui peut être édité dans d'autres logiciels. Le projet vise à simplifier la création de scènes 3D et à permettre à un plus grand nombre de personnes de créer des ressources numériques.

Liste des fonctions
- Générer des scènes 3D contenant plusieurs objets à partir d'une seule image, en prenant en charge les styles réalistes et les dessins animés.
- Fournir une fonction de segmentation d'image pour identifier et étiqueter automatiquement les objets dans les images.
- Générer simultanément plusieurs instances 3D séparables qui sont automatiquement combinées en scènes complètes.
- Il prend en charge à la fois les opérations en ligne de commande et les présentations web interactives.
- Télécharge automatiquement les poids des modèles pré-entraînés en local pour un démarrage rapide.
- exportations
.glb
Fichiers de modèles 3D dans un format qui peut être utilisé pour une édition ultérieure ou importé dans d'autres logiciels. - Le processus de génération est efficace et ne nécessite pas de modélisation objet par objet ni de longue optimisation.
Utiliser l'aide
L'utilisation de MIDI-3D se divise en deux parties : l'installation et le fonctionnement. Vous trouverez ci-dessous les étapes détaillées qui vous aideront à démarrer à partir de zéro.
Processus d'installation
- Préparation des environnements matériels et logiciels
Vous aurez besoin d'un ordinateur équipé de CUDA, car MIDI-3D repose sur l'accélération GPU. Un GPU NVIDIA avec au moins 6 Go de mémoire vidéo est recommandé. Assurez-vous que Python 3.10 ou supérieur est installé. - Création d'un environnement virtuel (facultatif)
Pour éviter les conflits, vous pouvez créer un nouvel environnement Conda :
conda create -n midi python=3.10
conda activate midi
- Installation de PyTorch
Installez PyTorch en fonction de la version CUDA de votre GPU. Par exemple, avec CUDA 11.8, la commande est la suivante :
pip install torch torchvision --index-url https://download.pytorch.org/whl/cu118
Si la version est différente, allez sur https://pytorch.org/get-started/locally/ pour sélectionner la commande correspondante.
- Télécharger le code du projet
Clonez le dépôt MIDI-3D en lançant la commande suivante dans un terminal :
git clone https://github.com/VAST-AI-Research/MIDI-3D.git
cd MIDI-3D
- Installation des dépendances
Offres de projetsrequirements.txt
exécutez la commande suivante pour installer toutes les dépendances :
pip install -r requirements.txt
- Obtenir les poids des modèles
Lors de l'exécution du script, MIDI-3D télécharge automatiquement le modèle pré-entraîné à partir de https://huggingface.co/VAST-AI/MIDI-3D, le sauvegarde dans le fichierpretrained_weights/MIDI-3D
. Si le réseau est instable, vous pouvez également télécharger et extraire manuellement vers ce chemin.
flux de travail
MIDI-3D propose deux modes d'utilisation : la ligne de commande et la démo interactive. Vous trouverez ci-dessous les étapes spécifiques.
opération en ligne de commande
- Générer un diagramme de partage
MIDI-3D nécessite une image et une carte de segmentation correspondante (étiquetage des zones de l'objet). La carte de segmentation peut être générée avec le script Grounded SAM inclus. Par exemple, vous avez une image04_rgb.png
La course à pied :
python -m scripts.grounding_sam --image assets/example_data/Cartoon-Style/04_rgb.png --labels "lamp sofa table dog" --output ./segmentation.png
--image
Spécifie le chemin de l'image d'entrée.--labels
Entrez les noms des objets de l'image, séparés par des espaces.--output
Spécifie le chemin d'accès où le diagramme de segmentation est enregistré.
Lorsqu'il est exécuté, il génère unsegmentation.png
Documentation.
- Générer des scènes 3D
Pour générer une scène 3D avec des images et des cartes fractionnées, exécutez la commande suivante :
python -m scripts.inference_midi --rgb assets/example_data/Cartoon-Style/00_rgb.png --seg assets/example_data/Cartoon-Style/00_seg.png --output-dir "./output"
--rgb
est le chemin de la carte originale.--seg
est le chemin du graphe divisé.--output-dir
est le chemin du dossier de sortie.
La scène 3D générée est enregistrée en tant queoutput.glb
qui prend généralement entre 40 secondes et 1 minute. Si l'objet est proche du bord de l'image, il est recommandé d'ajouter le paramètre--do-image-padding
Comme :
python -m scripts.inference_midi --rgb 00_rgb.png --seg 00_seg.png --output-dir "./output" --do-image-padding
Présentation interactive
- Démonstration de démarrage
Exécutez la commande suivante pour démarrer l'interface Gradio :
python gradio_demo.py
Le système ouvrira automatiquement le navigateur et affichera la page d'opération. Vous pouvez également consulter la démonstration en ligne à l'adresse https://huggingface.co/spaces/VAST-AI/MIDI-3D.
- Télécharger l'image et la diviser
Cliquez sur "Input Image" dans l'interface pour télécharger une image. Utilisez ensuite la souris pour sélectionner la zone de l'objet. Le système génère automatiquement une carte de segmentation, qui s'affiche dans le "Résultat de la segmentation". - Générer des scènes 3D
Cliquez sur "Run Segmentation" pour confirmer la carte de segmentation, ajustez les paramètres (tels que les graines aléatoires), puis cliquez sur le bouton "Generate". Après quelques secondes, l'interface affichera le modèle 3D, cliquez pour le télécharger..glb
Documentation.
Fonctions
- segmentation des images
Grounded SAM est un outil de prétraitement pour MIDI-3D qui reconnaît automatiquement les objets dans une image et génère une carte de segmentation. Vous pouvez saisir le nom de l'objet (par exemple "lampe sofa") ou le sélectionner manuellement dans l'interface interactive. Il prend en charge les scènes multi-objets avec une grande précision de segmentation. - Génération d'objets multiples en 3D
MIDI-3D utilise la modélisation de la diffusion multi-instances pour générer plusieurs objets 3D en même temps et maintenir leurs relations spatiales. Par exemple, une image d'un salon peut générer un modèle 3D d'un canapé, d'une table et d'une lampe, composant ainsi directement la scène complète. Cette méthode est plus rapide que la méthode traditionnelle de génération objet par objet. - sortie du modèle
généré.glb
Les fichiers sont compatibles avec Blender, Unity et d'autres logiciels. Vous pouvez importer des fichiers, ajuster les matériaux, les lumières ou ajouter des animations pour répondre à différents besoins.
Ressources complémentaires
- Vidéo d'enseignement
Une vidéo officielle (consultable à l'adresse https://github.com/VAST-AI-Research/MIDI-3D) explique en détail comment procéder, du téléchargement d'une image à la génération d'une scène en 3D. - bibliographie
Pour plus de détails techniques, vous pouvez consulter le document : https://arxiv.org/abs/2412.03558.
Problèmes courants résolus...
- Si la génération échoue, vérifiez si le GPU la prend en charge, ou assurez-vous que la carte de segmentation est correcte.
- Si les détails de l'objet sont absents, essayez d'utiliser une image de plus haute résolution.
scénario d'application
- développement de jeux
Les développeurs peuvent utiliser MIDI-3D pour générer des scènes 3D à partir de croquis. Par exemple, une image d'une forêt peut être rapidement transformée en un modèle 3D des arbres et du terrain à importer dans Unity. - recherche universitaire
Les chercheurs peuvent l'utiliser pour tester l'efficacité des modèles de diffusion multi-instances. Bien que le modèle ne soit entraîné qu'avec des données synthétiques, il est également bien adapté aux images réelles et aux dessins animés. - art numérique
Les artistes peuvent générer des scènes animées en 3D à partir d'images de dessins animés afin de produire rapidement des œuvres créatives et d'économiser du temps de modélisation.
QA
- Quels types d'images MIDI-3D prend-il en charge ?
adjuvant.png
répondre en chantant.jpg
Format. Il est recommandé d'utiliser des images claires pour obtenir de meilleurs résultats. - Quelle est la configuration matérielle requise ?
Nécessite un GPU NVIDIA avec au moins 6 Go de mémoire vidéo pour fonctionner dans un environnement CUDA ; le CPU n'est pas suffisant. - Le modèle généré est-il disponible dans le commerce ?
Oui, le projet utilise la licence MIT, ce qui génère le fichier.glb
Les documents peuvent être utilisés librement à des fins commerciales, sous réserve de l'obtention d'une licence.
© déclaration de droits d'auteur
Article copyright Cercle de partage de l'IA Tous, prière de ne pas reproduire sans autorisation.
Articles connexes
Pas de commentaires...