AI Personal Learning
und praktische Anleitung
讯飞绘镜

ER NeRF: Aufbau eines Videosynthesesystems für originalgetreue sprechende Köpfe

Allgemeine Einführung

ER-NeRF (Efficient Region-Aware Neural Radiance Fields) ist ein Open-Source-System zur Synthese sprechender Charaktere, das auf der ICCV 2023 vorgestellt wird. Das Projekt nutzt die "Region-Aware Neural Radiance Fields"-Technik zur effizienten Erzeugung von Videos sprechender Charaktere mit hoher Wiedergabetreue. Die Hauptmerkmale des Systems sind ein regionalisiertes Verarbeitungsschema, das den Kopf und den Rumpf des Charakters separat modelliert, und eine innovative Audio-Raum-Zerlegungstechnik, die eine genauere Lippensynchronisation ermöglicht. Das Projekt stellt einen vollständigen Trainings- und Inferenzcode zur Verfügung, unterstützt benutzerdefinierte Trainingsvideos und kann verschiedene Audio-Feature-Extraktoren (z.B. DeepSpeech, Wav2Vec, HuBERT, etc.) zur Verarbeitung des Audio-Inputs verwenden. Das System erzielt signifikante Verbesserungen sowohl bei der visuellen Qualität als auch bei der Berechnungseffizienz und stellt eine wichtige technische Lösung im Bereich der Synthese sprechender Zeichen dar.

Neues Projekt: https://github.com/Fictionarry/TalkingGaussian


ER NeRF:构建高保真都的说话人物视频合成系统-1

 

Funktionsliste

  • High Fidelity Video Compositing von sprechenden Köpfen
  • Neuronale Strahlungsfeldwiedergabe für die Flächenwahrnehmung
  • Unterstützt die separate Modellierung von Kopf und Rumpf
  • Präzise Lippensynchronisation
  • Unterstützung für die Extraktion mehrerer Audiomerkmale (DeepSpeech/Wav2Vec/HuBERT)
  • Unterstützung für benutzerdefinierte Videoschulungen
  • Audiogesteuerte Erzeugung von Charakteranimationen
  • Reibungslose Steuerung der Kopfbewegung
  • Unterstützung von Blinkbewegungen (AU45-Funktion)
  • LPIPS-Optimierungsfunktion zur Feinabstimmung

 

Hilfe verwenden

1. ökologische Konfiguration

Anforderungen an die Betriebsumgebung des Systems:

  • Betriebssystem Ubuntu 18.04
  • PyTorch Version 1.12
  • CUDA 11.3
    Installationsschritte:
  1. Erstellen Sie eine conda-Umgebung:
conda create -n ernerf python=3.10
conda install pytorch==1.12.1 torchvision==0.13.1 cudatoolkit=11.3 -c pytorch
pip install -r requirements.txt
  1. Installieren Sie zusätzliche Abhängigkeiten:
pip install "git+https://github.com/facebookresearch/pytorch3d.git"
pip install tensorflow-gpu==2.8.0

2. die Vorbereitung von Vorverarbeitungsmodellen

Die folgenden Modelldateien müssen heruntergeladen und vorbereitet werden:

  • Modell zur Analyse von Gesichtern
  • 3DMM-Modell zur Schätzung der Kopfneigung
  • Basler Gesichtsmodell 2009

3. die Anpassung des Videoschulungsprozesses

  1. Anforderungen an die Videovorbereitung:
    • Format: MP4
    • Bildrate: 25FPS
    • Auflösung: 512x512 empfohlen
    • Dauer: 1-5 Minuten
    • Erfordert, dass jeder Frame sprechende Zeichen enthält
  2. Vorverarbeitung der Daten:
python data_utils/process.py data/<ID>/<ID>.mp4
  1. Extraktion von Audiomerkmalen (eines von drei):
  • DeepSpeech Merkmalsextraktion:
python data_utils/deepspeech_features/extract_ds_features.py --input data/<n>.wav
  • Wav2Vec-Merkmalextraktion:
python data_utils/wav2vec.py --wav data/<n>.wav --save_feats
  • HuBERT-Merkmalextraktion (empfohlen):
python data_utils/hubert.py --wav data/<n>.wav

4. modellhafte Ausbildung

Das Training gliedert sich in zwei Phasen: Kopftraining und Rumpftraining:

  1. Kopftraining:
python main.py data/obama/ --workspace trial_obama/ -O --iters 100000
python main.py data/obama/ --workspace trial_obama/ -O --iters 125000 --finetune_lips --patch_size 32
  1. Torso-Training:
python main.py data/obama/ --workspace trial_obama_torso/ -O --torso --head_ckpt <head>.pth --iters 200000

5. modelltests und schlussfolgerungen

  1. Auswirkungen des Testmodells:
# 仅渲染头部
python main.py data/obama/ --workspace trial_obama/ -O --test
# 渲染头部和躯干
python main.py data/obama/ --workspace trial_obama_torso/ -O --torso --test
  1. Reasoning mit Ziel-Audio:
python main.py data/obama/ --workspace trial_obama_torso/ -O --torso --test --test_train --aud <audio>.npy

Tipp: Das Hinzufügen des Parameters --smooth_path reduziert das Kopfzittern, kann aber die Lagegenauigkeit verringern.

Darf nicht ohne Genehmigung vervielfältigt werden:Leiter des AI-Austauschkreises " ER NeRF: Aufbau eines Videosynthesesystems für originalgetreue sprechende Köpfe
de_DEDeutsch