Allgemeine Einführung
PSHuman ist ein Einzelbild-3D-Porträt-Rekonstruktionstool, das auf der Multi-View-Diffusionstechnologie basiert. Das Tool ist in der Lage, detaillierte geometrische Strukturen und realistische 3D-Porträtmodelle aus einem einzigen Foto einer bekleideten Person zu generieren. Die Kerntechnologie von PSHuman umfasst die skalenübergreifende Multiview-Diffusion, die in der Lage ist, hochwertige 3D-Porträts in kurzer Zeit zu erzeugen. Das vom pengHTYX-Team entwickelte Projekt zielt darauf ab, den Nutzern eine effiziente und einfach zu bedienende Lösung für die 3D-Porträtmodellierung zu bieten.
Funktionsliste
- Einzelbild-3D-Porträt-Rekonstruktion: Generieren Sie detaillierte 3D-Modelle aus einzelnen Porträtfotos.
- Multi-View-Diffusion: Erzeugen Sie hochwertige 3D-Porträts mit skalenübergreifender Multi-View-Diffusion.
- SMPL-freie Version: Multiview-Generierung ohne SMPL-Bedingung, geeignet für allgemeine Posenporträts.
- Entfernen des Hintergrunds: Unterstützung für das Entfernen des Hintergrunds mit Clipdrop oder rembg tool.
- Strukturierte Ausgabe: Erstellte 3D-Modelle und gerenderte Videos werden als strukturierte Dateien gespeichert, um die Anzeige und Weitergabe zu erleichtern.
Hilfe verwenden
Ablauf der Installation
- Erstellen Sie eine virtuelle Umgebung und installieren Sie die Abhängigkeiten:
$ conda create -n pshuman python=3.10 $ conda activate pshuman $ pip install torch==2.1.0 torchvision==0.16.0 torchaudio==2.1.0 --index-url https://download.pytorch.org/whl/cu121 $ pip install kaolin==0.17.0 -f https://nvidia-kaolin.s3.us-east-2.amazonaws.com/torch-2.1.0_cu121.html $ pip install -r anforderungen.txt
- Konfigurieren Sie das zugehörige Modell:
- Laden Sie ECON- und SIFU-bezogene Modelle herunter und organisieren Sie sie in Projekten neu.
Verwendung Prozess
- Entfernung des Hintergrunds: Entfernen Sie den Hintergrund eines Porträtfotos mit dem Werkzeug Clipdrop oder rembg. Für das rembg-Werkzeug können Sie das folgende Skript ausführen:
$ python utils/remove_bg.py --path $DATA_PATH$
Legen Sie das erzeugte RGBA-Bild in die Datei Katalog.
- logische SchlussfolgerungenGenerieren Sie das Texturnetz und rendern Sie das Video, indem Sie das Skript inference.py ausführen:
$ CUDA_VISIBLE_DEVICES=$GPU python inference.py --config configs/inference-768-6view.yaml \ pretrained_model_name_or_path='pengHTYX/PSHuman_Unclip_768_6views' \ validation_dataset.crop_size=740 \ with_smpl=false \ validation_dataset.root_dir=$DATA_PATH$ \ seed=600 \ num_views=7 \ save_mode='rgb'
- Anpassungsparametercrop_size (720 oder 740) und seed (42 oder 600) nach Bedarf anpassen, um beste Ergebnisse zu erzielen.
Hauptfunktionen
- Einzelbild 3D-Portrait-RekonstruktionDer Benutzer stellt ein Porträtfoto zur Verfügung und das System erstellt automatisch ein detailliertes 3D-Modell.
- Mehransichtige DiffusionstechnikGenerierung hochwertiger 3D-Porträts mit skalenübergreifenden Multiview-Diffusionstechniken.
- Entfernung des HintergrundsUnterstützung für das Entfernen von Hintergründen mit den Werkzeugen Clipdrop oder rembg, um die Weiterverarbeitung zu vereinfachen.
- Strukturierte AusgabeDie generierten 3D-Modelle und gerenderten Videos werden als strukturierte Dateien gespeichert und können so leicht betrachtet und weitergegeben werden.
Detaillierte Vorgehensweise
- Porträtfotos zur Verfügung stellenDer Benutzer stellt ein Porträtfoto zur Verfügung und bearbeitet es mit einem Werkzeug zur Hintergrundentfernung.
- Ausführen von InferenzskriptenGenerieren von 3D-Modellen und Rendern von Videos durch Ausführen des Skripts inference.py.
- Anpassungsparameter: Passen Sie die Parameter im Inferenzskript nach Bedarf an, um die besten Ergebnisse zu erzielen.
- Ansehen und TeilenDie generierten 3D-Modelle und gerenderten Videos werden als strukturierte Dateien gespeichert, die von den Nutzern direkt betrachtet und weitergegeben werden können.