Skip to content

torchgan/torchgan

Repository files navigation

TorchGAN

Framework for easy and efficient training of GANs based on Pytorch

Project Status: Active – The project has reached a stable, usable state and is being actively developed. Downloads Downloads Downloads License DOI

Stable Documentation Latest Documentation Codecov Binder Open In Colab PyPI version

TorchGAN is a Pytorch based framework for designing and developing Generative Adversarial Networks. This framework has been designed to provide building blocks for popular GANs and also to allow customization for cutting edge research. Using TorchGAN's modular structure allows

  • Trying out popular GAN models on your dataset.
  • Plug in your new Loss Function, new Architecture, etc. with the traditional ones.
  • Seamlessly visualize the training with a variety of logging backends.
System / PyTorch Version 1.8 1.9 nightly
Linux py3.8 CI Testing CI Testing CI Testing
Linux py3.9 CI Testing CI Testing CI Testing
OSX py3.8 CI Testing CI Testing CI Testing
OSX py3.9 CI Testing CI Testing CI Testing
Windows py3.9 CI Testing CI Testing CI Testing
Windows py3.9 CI Testing CI Testing CI Testing

Installation

Using pip (for stable release):

  $ pip install torchgan

Using pip (for latest master):

  $ pip install git+https://github.com/torchgan/torchgan.git

From source:

  $ git clone https://github.com/torchgan/torchgan.git
  $ cd torchgan
  $ python setup.py install

Documentation

The documentation is available here

The documentation for this package can be generated locally.

  $ git clone https://github.com/torchgan/torchgan.git
  $ cd torchgan/docs
  $ pip install -r requirements.txt
  $ make html

Now open the corresponding file from build directory.

Tutorials

Binder Open In Colab

The tutorials directory contain a set of tutorials to get you started with torchgan. These tutorials can be run using Google Colab or Binder. It is highly recommended that you follow the tutorials in the following order.

  1. Introductory Tutorials:
  2. Intermediate Tutorials:
  3. Advanced Tutorials:

Supporting and Citing

This software was developed as part of academic research. If you would like to help support it, please star the repository. If you use this software as part of your research, teaching, or other activities, we would be grateful if you could cite the following:

@article{Pal2021,
  doi = {10.21105/joss.02606},
  url = {https://doi.org/10.21105/joss.02606},
  year = {2021},
  publisher = {The Open Journal},
  volume = {6},
  number = {66},
  pages = {2606},
  author = {Avik Pal and Aniket Das},
  title = {TorchGAN: A Flexible Framework for GAN Training and Evaluation},
  journal = {Journal of Open Source Software}
}

List of publications & submissions using TorchGAN (please open a pull request to add missing entries):

Contributing

We appreciate all contributions. If you are planning to contribute bug-fixes, please do so without any further discussion. If you plan to contribute new features, utility functions or extensions, please first open an issue and discuss the feature with us. For more detailed guidelines head over to the official documentation.

Contributors

This package has been developed by

  • Avik Pal (@avik-pal)
  • Aniket Das (@Aniket1998)

This project exists thanks to all the people who contribute.