
الشكل 1: تسلسل تعديل الصور الذي يتم تنفيذه باستخدام عنصر تحكم تم اكتشافه بطريقتنا ، المطبقة على ثلاثة غانس مختلفة. تحدد الإقرارات البيضاء التعديلات الخاصة باستخدام التدوين الموضحة في القسم 3.4 ("تعديلات طبقة").
Ganspace: اكتشاف ضوابط GAN القابلة للتفسير
Erik Härkönen 1،2 ، Aaron Hertzmann 2 ، Jaakko Lehtinen 1،3 ، Sylvain Paris 2
1 جامعة Aalto ، 2 Adobe Research ، 3 Nvidia
https://arxiv.org/abs/2004.02546الخلاصة: تصف هذه الورقة تقنية بسيطة لتحليل الشبكات العدائية (GANS) وإنشاء عناصر تحكم قابلة للتفسير لتوليف الصور ، مثل تغيير وجهة النظر والشيخوخة والإضاءة ووقت اليوم. نحدد الاتجاهات الكامنة المهمة بناءً على تحليل المكونات الرئيسية (PCA) المطبقة في مساحة التنشيط. بعد ذلك ، نظهر أنه يمكن تعريف التعديلات القابلة للتفسير بناءً على تطبيق طبقة من هذه الاتجاهات. علاوة على ذلك ، نظهر أنه يمكن التحكم في Biggan مع مدخلات حكيمة طبقة بطريقة تشبه الأناقة. قد يحدد المستخدم عددًا كبيرًا من عناصر التحكم القابلة للتفسير مع هذه الآليات. نظهر نتائج على Gans من مجموعات البيانات المختلفة.
الفيديو: https://youtu.be/jdticda_eai
انظر تعليمات الإعداد.
يشتمل هذا المستودع على إصدارات من Biggan و Stylegan و Stylegan2 المعدلة لدعم المتجهات الكامنة لكل طبقة.
استكشاف النموذج التفاعلي
# Explore BigGAN-deep husky
python interactive.py --model=BigGAN-512 --class=husky --layer=generator.gen_z -n=1_000_000
# Explore StyleGAN2 ffhq in W space
python interactive.py --model=StyleGAN2 --class=ffhq --layer=style --use_w -n=1_000_000 -b=10_000
# Explore StyleGAN2 cars in Z space
python interactive.py --model=StyleGAN2 --class=car --layer=style -n=1_000_000 -b=10_000
# Apply previously saved edits interactively
python interactive.py --model=StyleGAN2 --class=ffhq --layer=style --use_w --inputs=out/directions
تصور المكونات الرئيسية
# Visualize StyleGAN2 ffhq W principal components
python visualize.py --model=StyleGAN2 --class=ffhq --use_w --layer=style -b=10_000
# Create videos of StyleGAN wikiart components (saved to ./out)
python visualize.py --model=StyleGAN --class=wikiart --use_w --layer=g_mapping -b=10_000 --batch --video
خيارات
Command line paramaters:
--model one of [ProGAN, BigGAN-512, BigGAN-256, BigGAN-128, StyleGAN, StyleGAN2]
--class class name; leave empty to list options
--layer layer at which to perform PCA; leave empty to list options
--use_w treat W as the main latent space (StyleGAN / StyleGAN2)
--inputs load previously exported edits from directory
--sigma number of stdevs to use in visualize.py
-n number of PCA samples
-b override automatic minibatch size detection
-c number of components to keep
يمكن إعادة إنشاء جميع الأرقام المعروضة في الورقة الرئيسية باستخدام دفاتر الملاحظات Jupyter:
figure_teaser.ipynbfigure_pca_illustration.ipynbfigure_pca_cleanup.ipynbfigure_style_content_sep.ipynbfigure_supervised_comp.ipynbfigure_biggan_style_resampling.ipynbfigure_edit_zoo.ipynb models/wrappers.py باستخدام واجهة BaseModel .get_model() في models/wrappers.py . من الممكن استيراد أوزان Stylegan و Stylegan2 من TensorFlow إلى Ganspace.
conda install tensorflow-gpu=1.* .__init__() ، load_model() في models/wrappers.py .checkpoints/stylegan2/<dataset>_<resolution>.pt .__init__() ، download_checkpoint() في models/wrappers.py . نود أن نشكر:
@inproceedings{härkönen2020ganspace,
title = {GANSpace: Discovering Interpretable GAN Controls},
author = {Erik Härkönen and Aaron Hertzmann and Jaakko Lehtinen and Sylvain Paris},
booktitle = {Proc. NeurIPS},
year = {2020}
}
يتم إصدار رمز هذا المستودع بموجب ترخيص Apache 2.0.
الدليل netdissect هو مشتق من مشروع تشريح GAN ، ويتم توفيره بموجب ترخيص معهد ماساتشوستس للتكنولوجيا.
يتم توفير models/biggan و models/stylegan2 ضمن ترخيص معهد ماساتشوستس للتكنولوجيا.