AI Personal Learning
und praktische Anleitung
豆包Marscode1

MIDI-3D: Ein Open-Source-Tool zur schnellen Erzeugung von 3D-Szenen mit mehreren Objekten aus einem einzigen Bild

Allgemeine Einführung

MIDI-3D ist ein vom VAST-AI-Research-Team entwickeltes Open-Source-Projekt, mit dem Entwickler, Forscher und Kreative schnell 3D-Szenen mit mehreren Objekten aus einem einzigen Bild erzeugen können. Das Tool basiert auf Multiinstanz-Diffusionsmodellierungstechniken, die künstliche Intelligenz und 3D-Modellierung kombinieren, um mehrere hochwertige 3D-Objekte gleichzeitig zu erzeugen und ihre räumlichen Beziehungen beizubehalten.MIDI-3D wurde auf der CVPR 2025 veröffentlicht, und der Code, die Modellgewichte und eine Online-Demo sind alle offen. Es unterstützt sowohl realistische als auch cartoonartige Bildeingaben, mit Generierungszeiten von nur 40 Sekunden und Ausgabedateien von .glb Format, das in anderer Software bearbeitet werden kann. Das Projekt zielt darauf ab, die Erstellung von 3D-Szenen zu vereinfachen und es mehr Menschen leicht zu machen, digitale Inhalte zu erstellen.

MIDI-3D:从单张图片快速生成多物体3D场景的开源工具-1


 

Funktionsliste

  • Generieren Sie 3D-Szenen mit mehreren Objekten aus einem einzigen Bild, wobei sowohl realistische als auch Cartoon-Stilen unterstützt werden.
  • Bietet eine Bildsegmentierungsfunktion zur automatischen Identifizierung und Kennzeichnung von Objekten in Bildern.
  • Erzeugen Sie gleichzeitig mehrere trennbare 3D-Instanzen, die automatisch zu kompletten Szenen kombiniert werden.
  • Unterstützt sowohl Befehlszeilenbetrieb als auch interaktive Webpräsentation.
  • Lädt automatisch vortrainierte Modellgewichte lokal herunter, um einen schnellen Start zu ermöglichen.
  • Ausfuhren .glb 3D-Modelldateien in einem Format, das zur weiteren Bearbeitung oder zum Import in andere Software verwendet werden kann.
  • Der Generierungsprozess ist effizient und erfordert keine objektweise Modellierung oder langwierige Optimierung.

 

Hilfe verwenden

Die Verwendung von MIDI-3D gliedert sich in zwei Teile: Installation und Betrieb. Im Folgenden finden Sie detaillierte Schritte, die Ihnen den Einstieg erleichtern.

Einbauverfahren

  1. Vorbereitung von Hardware- und Software-Umgebungen
    Sie benötigen einen CUDA-fähigen Computer, da MIDI-3D auf GPU-Beschleunigung angewiesen ist. Ein NVIDIA-Grafikprozessor mit mindestens 6 GB Videospeicher wird empfohlen. Stellen Sie sicher, dass Python 3.10 oder höher installiert ist.
  2. Erstellen einer virtuellen Umgebung (optional)
    Um Konflikte zu vermeiden, können Sie eine neue Conda-Umgebung erstellen:
conda create -n midi python=3.10
conda activate midi
  1. Installation von PyTorch
    Installieren Sie PyTorch entsprechend der CUDA-Version Ihrer GPU. z.B. mit CUDA 11.8 lautet der Befehl:
pip install torch torchvision --index-url https://download.pytorch.org/whl/cu118

Wenn die Version unterschiedlich ist, wählen Sie unter https://pytorch.org/get-started/locally/ den entsprechenden Befehl.

  1. Projektcode herunterladen
    Klonen Sie das MIDI-3D-Repository, indem Sie den folgenden Befehl in einem Terminal ausführen:
git clone https://github.com/VAST-AI-Research/MIDI-3D.git
cd MIDI-3D
  1. Installation von Abhängigkeiten
    Projektangebote requirements.txt Datei, führen Sie den folgenden Befehl aus, um alle Abhängigkeiten zu installieren:
pip install -r requirements.txt
  1. Modellgewichte erhalten
    Wenn das Skript ausgeführt wird, lädt MIDI-3D automatisch das trainierte Modell von https://huggingface.co/VAST-AI/MIDI-3D herunter und speichert es in der pretrained_weights/MIDI-3D Ordner. Wenn das Netzwerk instabil ist, können Sie die Dateien auch manuell herunterladen und in diesen Pfad extrahieren.

Arbeitsablauf

MIDI-3D unterstützt zwei Arten der Nutzung: Kommandozeile und interaktive Demo. Im Folgenden werden die einzelnen Schritte beschrieben.

Befehlszeilenbetrieb

  1. Split-Chart generieren
    MIDI-3D benötigt ein Bild und eine entsprechende Segmentierungskarte (Beschriftung der Objektbereiche). Die Segmentierungskarte kann mit dem mitgelieferten Grounded SAM-Skript erzeugt werden. Ein Beispiel: Sie haben ein Bild 04_rgb.pngLaufen:
python -m scripts.grounding_sam --image assets/example_data/Cartoon-Style/04_rgb.png --labels "lamp sofa table dog" --output ./segmentation.png
  • --image Gibt den Pfad des Eingabebildes an.
  • --labels Geben Sie die Namen der Objekte auf dem Bild ein, getrennt durch Leerzeichen.
  • --output Gibt den Pfad an, in dem das Segmentierungsdiagramm gespeichert wird.
    Wenn es ausgeführt wird, erzeugt es eine segmentation.png Dokumentation.
  1. 3D-Szenen generieren
    Um eine 3D-Szene mit Bildern und Splitmaps zu erzeugen, führen Sie den folgenden Befehl aus:
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 ist der ursprüngliche Kartenpfad.
  • --seg ist der geteilte Graphpfad.
  • --output-dir ist der Pfad des Ausgabeordners.
    Die erzeugte 3D-Szene wird gespeichert als output.glb Datei, was normalerweise zwischen 40 Sekunden und 1 Minute dauert. Befindet sich das Objekt in der Nähe des Bildrandes, empfiehlt es sich, den Parameter --do-image-paddingAls:
python -m scripts.inference_midi --rgb 00_rgb.png --seg 00_seg.png --output-dir "./output" --do-image-padding

Interaktive Präsentation

  1. Startup-Demo
    Führen Sie den folgenden Befehl aus, um die Gradio-Schnittstelle zu starten:
python gradio_demo.py

Das System öffnet automatisch den Browser und zeigt die Bedienungsseite an. Sie können auch die Online-Demo unter https://huggingface.co/spaces/VAST-AI/MIDI-3D besuchen.

  1. Bild hochladen und teilen
    Klicken Sie in der Benutzeroberfläche auf "Input Image", um ein Bild hochzuladen. Verwenden Sie dann die Maus, um den Objektbereich auszuwählen. Das System generiert automatisch eine Segmentierungskarte, die im Bereich "Segmentierungsergebnis" angezeigt wird.
  2. 3D-Szenen generieren
    Klicken Sie auf "Segmentierung ausführen", um die Segmentierungskarte zu bestätigen, passen Sie die Parameter an (z. B. zufällige Seeds) und klicken Sie dann auf die Schaltfläche Generieren. Nach einigen Sekunden zeigt die Schnittstelle das 3D-Modell an, klicken Sie darauf, um es herunterzuladen. .glb Dokumentation.

Funktionen

  • Bildsegmentierung
    Grounded SAM ist ein Pre-Processing-Tool für MIDI-3D, das automatisch Objekte in einem Bild erkennt und eine Segmentierungskarte erstellt. Sie können den Objektnamen eingeben (z. B. "Lampensofa") oder ihn manuell in der interaktiven Schnittstelle auswählen. Es unterstützt Szenen mit mehreren Objekten mit hoher Segmentierungsgenauigkeit.
  • 3D-Generierung mit mehreren Objekten
    MIDI-3D verwendet Multiinstanz-Diffusionsmodellierung, um mehrere 3D-Objekte gleichzeitig zu erzeugen und ihre räumlichen Beziehungen zu erhalten. So kann zum Beispiel ein Bild eines Wohnzimmers ein 3D-Modell eines Sofas, eines Tisches und einer Lampe erzeugen, wodurch die komplette Szene direkt zusammengesetzt wird. Diese Methode ist schneller als die herkömmliche objektweise Generierung.
  • Modellleistung
    generiert .glb Die Dateien sind mit Blender, Unity und anderer Software kompatibel. Sie können Dateien importieren, Materialien, Lichter anpassen oder Animationen hinzufügen, um verschiedene Bedürfnisse zu erfüllen.

Ergänzende Ressourcen

  • Lehrreiche Videos
    Ein offizielles Anleitungsvideo (zu finden unter https://github.com/VAST-AI-Research/MIDI-3D) demonstriert detailliert den Prozess vom Hochladen eines Bildes bis zur Erstellung einer 3D-Szene.
  • bibliographie
    Die technischen Einzelheiten können Sie in der Veröffentlichung nachlesen: https://arxiv.org/abs/2412.03558.

Häufig gestellte Fragen

  • Wenn die Generierung fehlschlägt, prüfen Sie, ob die GPU dies unterstützt, oder stellen Sie sicher, dass die Segmentierungskarte korrekt ist.
  • Wenn Objektdetails fehlen, versuchen Sie, ein Bild mit höherer Auflösung zu verwenden.

 

Anwendungsszenario

  1. Spieleentwicklung
    Entwickler können MIDI-3D verwenden, um 3D-Szenen aus Skizzen zu erzeugen. Zum Beispiel kann ein Bild eines Waldes schnell in ein 3D-Modell der Bäume und des Geländes für den Import in Unity umgewandelt werden.
  2. akademische Forschung
    Forscher können es verwenden, um die Wirksamkeit von Mehrinstanzen-Diffusionsmodellen zu testen. Obwohl das Modell nur mit synthetischen Daten trainiert wurde, ist es auch für reale und Cartoon-Bilder gut geeignet.
  3. digitale Kunst
    Künstler können 3D-Animationsszenen aus Cartoon-Bildern generieren, um schnell kreative Arbeiten zu erstellen und Zeit bei der Modellierung zu sparen.

 

QA

  1. Welche Bildtypen werden von MIDI-3D unterstützt?
    etw. unterstützen .png im Gesang antworten .jpg Format. Für bessere Ergebnisse werden klare Bilder empfohlen.
  2. Welche Hardware-Konfiguration ist erforderlich?
    Erfordert einen NVIDIA-Grafikprozessor mit mindestens 6 GB Videospeicher zur Ausführung in einer CUDA-Umgebung; eine CPU ist nicht ausreichend.
  3. Ist das erstellte Modell im Handel erhältlich?
    Ja, das Projekt verwendet die MIT-Lizenz, die die .glb Die Dokumente dürfen für kommerzielle Zwecke frei verwendet werden, sofern die Lizenzbedingungen eingehalten werden.
Darf nicht ohne Genehmigung vervielfältigt werden:Leiter des AI-Austauschkreises " MIDI-3D: Ein Open-Source-Tool zur schnellen Erzeugung von 3D-Szenen mit mehreren Objekten aus einem einzigen Bild
de_DEDeutsch