分享一个GAN(生成对抗网络)的Tensorflow实现列表:Awesome-GANs with Tensorflow,含论文、代码、模型等。
更多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 DataSets
UrbanSound8K
3DShapeNet 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
Code3D GAN
3D Generative Adversarial Networks
ACGAN
Auxiliary Classifier Generative Adversarial Networks
AdaGAN
Boosting Generative Models
AnoGAN
Unsupervised Anomaly Detection with Generative Adversarial Networks
BeatGAN
Generating Drum Loops via GANs
BEGAN
Boundary Equilibrium Generative Adversarial Networks
BGAN
Boundary-Seeking Generative Adversarial Networks
BigGAN
Large Scale GAN Training for High Fidelity Natural Image Synthesis
CGAN
Conditional Generative Adversarial Networks
CipherGAN
Unsupervised Cipher Cracking Using Discrete GANs
CoGAN
Coupled Generative Adversarial Networks
CycleGAN
Unpaired img2img translation using Cycle-consistent Adversarial Networks
DAGAN
Instance-level Image Translation by Deep Attention Generative Adversarial Networks
DCGAN
Deep Convolutional Generative Adversarial Networks
DeblurGAN
Blind Motion Deblurring Using Conditional Adversarial Networks
DiscoGAN
Discover Cross-Domain Generative Adversarial Networks
DRAGAN
On Convergence and Stability of Generative Adversarial Networks
DualGAN
Unsupervised Dual Learning for Image-to-Image Translation
eCommerceGAN
A Generative Adversarial Network for E-commerce
EBGAN
Energy-based Generative Adversarial Networks
f-GAN
Training Generative Neural Samplers using Variational Divergence Minimization
GAN
Generative Adversarial Networks
GP-GAN
Towards Realistic High-Resolution Image Blending
Softmax GAN
Generative Adversarial Networks with Softmax
GAP
Generative Adversarial Parallelization
GEGAN
Generalization and Equilibrium in Generative Adversarial Networks
InfoGAN
Interpretable Representation Learning by Information Maximizing Generative Adversarial Networks
LAPGAN
Laplacian Pyramid Generative Adversarial Networks
LSGAN
Loss-Sensitive Generative Adversarial Networks
MAGAN
Margin Adaptation for Generative Adversarial Networks
MRGAN
Mode Regularized Generative Adversarial Networks
PassGAN
A Deep Learning Approach for Password Guessing
PGGAN
Progressive Growing of GANs for Improved Quality, Stability, and Variation
SeAtGAN
Self-Attention Generative Adversarial Networks
SpAtGAN
Generative Adversarial Network with Spatial Attention for Face Attribute Editing
SalGAN
Visual Saliency Prediction Generative Adversarial Networks
SEGAN
Speech Enhancement Generative Adversarial Network
SeqGAN
Sequence Generative Adversarial Networks with Policy Gradient
SGAN
Stacked Generative Adversarial Networks
SGAN++
Realistic Image Synthesis with Stacked Generative Adversarial Networks
SRGAN
Photo-Realistic Single Image Super-Resolution Using a Generative Adversarial Network
StableGAN
Stabilizing Adversarial Nets With Prediction Methods
StarGAN
Unified Generative Adversarial Networks for Multi-Domain Image-to-Image Translation
TAC-GAN
Text Conditioned Auxiliary Classifier Generative Adversarial Network
TempoGAN
A Temporally Coherent, Volumetric GAN for Super-resolution Fluid Flow
TextureGAN
Controlling Deep Image Synthesis with Texture Patches
TripleGAN
Triple Generative Adversarial Networks
TwinGAN
Cross-Domain Translation fo Human Portraits
UGAN
Unrolled Generative Adversarial Networks
WaveGAN
Synthesizing Audio with Generative Adversarial Networks
WGAN
Wasserstein Generative Adversarial Networks
ImprovedWGAN
Improved Training of Wasserstein Generative Adversarial Networks
XGAN
Unsupervised Image-to-Image Translation for Many-to-Many Mappings
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++
微信公众号: 极市平台(ID: extrememart )
每天推送最新CV干货