【资源】(TensorFlow) GAN 文献 / 代码资源大列表
分享一个GAN(生成对抗网络)的Tensorflow实现列表:Awesome-GANs with Tensorflow,含论文、代码、模型等。
- 作者:HyeongChan Kim / @kozistr
- 项目地址:https://github.com/kozistr/Awesome-GANs
更多Awsome Github资源请关注:【Awsome】GitHub 资源汇总
Environment
Preferred Environment
- OS : Windows 10 / Linux Ubuntu x86-64 ~
- CPU : any (quad core ~)
- GPU : GTX 1060 6GB ~
- RAM : 16GB ~
- Library : TF 1.x with CUDA 9.0~ + cuDNN 7.0~
- Python 3.x
由于图像和模型的大小,(特别是 BEGAN , SRGAN , StarGAN ,...都是使用高分辨率图像作为输入),
如果你想要更好地训练,需要一个大于8GB的GPU。
不过大多数实现使用MNIST或CiFar-10,100 DataSet,这意味着我们可以使用比“Preferred”更低规格GPU来处理它:)。
Prerequisites
- python 3.x
- tensorflow 1.x
- numpy
- scipy (some features are about to deprecated, it'll be replaced to OpenCV SOON!)
- scikit-image
- opencv-python
- pillow
- h5py
- tqdm
- Internet :)
Usage
Dependency Install
$ sudo python3 -m pip install -r requirements.txt
Training GAN
(Before running train.py, MAKE SURE run after downloading DataSet & changing DataSet's directory in xxx_train.py)
just after it, RUN train.py
$ python3 xxx_train.py
DataSets
Now supporting(?) DataSets are... (code is in /datasets.py)
- MNIST /
Fashion MNIST - CiFar-10 / 100
- CelebA/CelebA-HQ
- pix2pix DataSets
- DIV2K DataSets
ImageNet DataSetsUrbanSound8K3DShapeNet DataSet- (more DataSets will be added soon!)
Repo Tree
│
├── xxGAN
│ ├──gan_img (generated images)
│ │ ├── train_xxx.png
│ │ └── train_xxx.png
│ ├── model (model)
│ │ └── model.txt (google-drive link for pre-trained model)
│ ├── gan_model.py (gan model)
│ ├── gan_train.py (gan trainer)
│ ├── gan_tb.png (Tensor-Board result)
│ └── readme.md (results & explains)
├── tfutil.py (useful TF util)
├── image_utils.py (image processing)
└── datasets.py (DataSet loader)
Pre-Trained Models
你可以在这里下载预训练模型。(需科学前往)
Papers & Codes
Name | Summary | Paper | Code |
---|---|---|---|
3D GAN | 3D Generative Adversarial Networks | [MIT] | |
ACGAN | Auxiliary Classifier Generative Adversarial Networks | [arXiv] | [code] |
AdaGAN | Boosting Generative Models | [arXiv] | |
AnoGAN | Unsupervised Anomaly Detection with Generative Adversarial Networks | [arXiv] | [ |
BeatGAN | Generating Drum Loops via GANs | [arXiv] | |
BEGAN | Boundary Equilibrium Generative Adversarial Networks | [arXiv] | [code] |
BGAN | Boundary-Seeking Generative Adversarial Networks | [arXiv] | [code] |
BigGAN | Large Scale GAN Training for High Fidelity Natural Image Synthesis | [arXiv] | |
CGAN | Conditional Generative Adversarial Networks | [arXiv] | [code] |
CipherGAN | Unsupervised Cipher Cracking Using Discrete GANs | [github] | |
CoGAN | Coupled Generative Adversarial Networks | [arXiv] | [code] |
CycleGAN | Unpaired img2img translation using Cycle-consistent Adversarial Networks | [arXiv] | [code] |
DAGAN | Instance-level Image Translation by Deep Attention Generative Adversarial Networks | [arXiv] | |
DCGAN | Deep Convolutional Generative Adversarial Networks | [arXiv] | [code] |
DeblurGAN | Blind Motion Deblurring Using Conditional Adversarial Networks | [arXiv] | |
DiscoGAN | Discover Cross-Domain Generative Adversarial Networks | [arXiv] | |
DRAGAN | On Convergence and Stability of Generative Adversarial Networks | [arXiv] | [code] |
DualGAN | Unsupervised Dual Learning for Image-to-Image Translation | [arXiv] | |
eCommerceGAN | A Generative Adversarial Network for E-commerce | [arXiv] | |
EBGAN | Energy-based Generative Adversarial Networks | [arXiv] | [code] |
f-GAN | Training Generative Neural Samplers using Variational Divergence Minimization | [arXiv] | [code] |
GAN | Generative Adversarial Networks | [arXiv] | [code] |
GP-GAN | Towards Realistic High-Resolution Image Blending | [arXiv] | |
Softmax GAN | Generative Adversarial Networks with Softmax | [arXiv] | [code] |
GAP | Generative Adversarial Parallelization | [arXiv] | |
GEGAN | Generalization and Equilibrium in Generative Adversarial Networks | [arXiv] | |
InfoGAN | Interpretable Representation Learning by Information Maximizing Generative Adversarial Networks | [arXiv] | [code] |
LAPGAN | Laplacian Pyramid Generative Adversarial Networks | [arXiv] | [code] |
LSGAN | Loss-Sensitive Generative Adversarial Networks | [arXiv] | [code] |
MAGAN | Margin Adaptation for Generative Adversarial Networks | [arXiv] | [code] |
MRGAN | Mode Regularized Generative Adversarial Networks | [arXiv] | [code] |
PassGAN | A Deep Learning Approach for Password Guessing | [arXiv] | |
PGGAN | Progressive Growing of GANs for Improved Quality, Stability, and Variation | [arXiv] | |
SeAtGAN | Self-Attention Generative Adversarial Networks | [arXiv] | [code] |
SpAtGAN | Generative Adversarial Network with Spatial Attention for Face Attribute Editing | [ECCV2018] | |
SalGAN | Visual Saliency Prediction Generative Adversarial Networks | [arXiv] | |
SEGAN | Speech Enhancement Generative Adversarial Network | [arXiv] | |
SeqGAN | Sequence Generative Adversarial Networks with Policy Gradient | [arXiv] | |
SGAN | Stacked Generative Adversarial Networks | [arXiv] | [ |
SGAN++ | Realistic Image Synthesis with Stacked Generative Adversarial Networks | [arXiv] | [ |
SRGAN | Photo-Realistic Single Image Super-Resolution Using a Generative Adversarial Network | [arXiv] | [code] |
StableGAN | Stabilizing Adversarial Nets With Prediction Methods | [arXiv] | |
StarGAN | Unified Generative Adversarial Networks for Multi-Domain Image-to-Image Translation | [arXiv] | [code] |
TAC-GAN | Text Conditioned Auxiliary Classifier Generative Adversarial Network | [arXiv] | |
TempoGAN | A Temporally Coherent, Volumetric GAN for Super-resolution Fluid Flow | [arXiv] | |
TextureGAN | Controlling Deep Image Synthesis with Texture Patches | [arXiv] | |
TripleGAN | Triple Generative Adversarial Networks | [arXiv] | |
TwinGAN | Cross-Domain Translation fo Human Portraits | [github] | |
UGAN | Unrolled Generative Adversarial Networks | [arXiv] | |
WaveGAN | Synthesizing Audio with Generative Adversarial Networks | [arXiv] | |
WGAN | Wasserstein Generative Adversarial Networks | [arXiv] | [code] |
ImprovedWGAN | Improved Training of Wasserstein Generative Adversarial Networks | [arXiv] | [code] |
XGAN | Unsupervised Image-to-Image Translation for Many-to-Many Mappings | [arXiv] |
To-Do
- Implement DeblurGAN
Implement 3DGAN- later when DataSet is ready.Implement BeatGAN- later when DataSet is ready.Implement TempoGAN- later when DataSet is ready.- Fix PGGAN, SGAN, SGAN++
推荐阅读
GAN 模式崩溃的理论解释
微信公众号: 极市平台(ID: extrememart )
每天推送最新CV干货
自由转载-非商用-非衍生-保持署名(创意共享3.0许可证)