Erstellt von Wayne Wu, Yunxuan Zhang und Ren Li.
Wir präsentieren ein neuartiges lernbasiertes Framework für die Nachstellung von Gesichtern. Die vorgeschlagene Methode, bekannt als ReenactGAN, ist in der Lage, Gesichtsbewegungen und Ausdrücke vom monokularen Videoeingang einer beliebigen Person auf das Video einer Zielperson zu übertragen. Anstatt eine direkte Übertragung im Pixelraum durchzuführen, was zu strukturellen Artefakten führen könnte, bilden wir zunächst die Quellfläche auf einen latenten Grenzraum ab. Anschließend wird ein Transformator verwendet, um die Grenze der Quellfläche an die Grenze des Ziels anzupassen. Abschließend wird ein zielspezifischer Decoder verwendet, um das nachgestellte Zielgesicht zu generieren. Dank der effektiven und zuverlässigen grenzbasierten Übertragung kann unsere Methode eine fotorealistische Gesichtsnachstellung durchführen. Darüber hinaus ist ReenactGAN insofern attraktiv, als der gesamte Reenactment-Prozess ein reiner Feed-Forward ist und der Reenactment-Prozess somit in Echtzeit ablaufen kann.
Klonen Sie dieses Repo:
git clone ...
cd ReenactGAN
Der Grenzencoder wird auf dem WFLW- und Helen-Datensatz trainiert, und sowohl der Grenztransformator als auch der Grenzdecoder werden auf dem CelebV-Datensatz trainiert. Das Training des Encoders erfordert viel Zeit, daher können Sie den vortrainierten Encoder unter ./pretrained_models/v8_net_boundary_detection.pth erhalten.
Um den Grenztransformator zu trainieren, führen Sie Folgendes aus:
sh script/train_Transformer.sh
Sie müssen sich um die Argumente --root_dir und --which_target kümmern. --root_dir bezieht sich auf das Verzeichnis des Datensatzes und --which_target bezieht sich auf die Person, die das Ziel sein soll
0: Emmanuel_Macron
1: Kathleen
2: Jack_Ma
3: Theresa_May
4: Donald_Trump
Um den Decoder zu trainieren, führen Sie Folgendes aus:
sh script/train_Decoder.sh
Außerdem müssen Sie auf den Wert von --root_dir achten, der sich auf das Verzeichnis der Zielperson bezieht.
Um das Modell zu testen, führen Sie es aus
sh script/move_models.sh ./checkpoints/Transformer_2019-xx-xx_xx-xx-xx/G_BA_xx.pth ./checkpoints/Decoder_2019-xx-xx_xx-xx-xx/xx_net_G.pth trump
sh script/test.sh
Die zum Testen verwendeten Bilder befinden sich unter ./test_imgs/samples/image und die Textdatei ./test_imgs/samples/images_list.txt enthält die Liste dieser Bilder. Nach dem Test erhalten Sie ein Floder mit dem Namen results , das die Bilder der echten und nachgestellten Gesichter, die Grenzen und die transformierten Grenzen der echten Gesichter enthält. Hier sind einige Ergebnisse.
Unsere trainierten Modelle erhalten Sie bei Decoder und Transformer.
Wenn Sie ReenactGAN für Ihre Recherche hilfreich finden, geben Sie bitte Folgendes an:
inproceedings{wayne2018reenactgan,
author = {Wu, Wayne and Zhang, Yunxuan and Li, Cheng and Qian, Chen and Loy, Chen Change},
title = {ReenactGAN: Learning to Reenact Faces via Boundary Transfer},
booktitle = {ECCV},
month = September,
year = {2018}
}
Bitte kontaktieren Sie [email protected]