RevGAN
RevGAN implementation in PyTorch. We extend the Pix2pix and CycleGAN framework by exploring approximately invertible architectures in 2D and 3D. These architectures are approximately invertible by design and thus partially satisfy cycle-consistency before training even begins. Furthermore, since invertible architectures have constant memory complexity in depth, these models can be built arbitrarily deep without requiring additional memory. In the paper we demonstrate superior quantitative output on the Cityscapes and Maps datasets at near constant memory budget.
Install / Use
/learn @tychovdo/RevGANREADME
RevGAN: Memory-efficient Image-to-Image Translation in 2D and 3D
RevGAN implementation in PyTorch. We extend the Pix2pix and CycleGAN framework by exploring approximately invertible architectures in 2D and 3D. These architectures are approximately invertible by design and thus partially satisfy cycle-consistency before training even begins. Furthermore, since invertible architectures have constant memory complexity in depth, these models can be built arbitrarily deep without requiring additional memory. In the paper we demonstrate superior quantitative output on the Cityscapes and Maps datasets at near constant memory budget.
Project | Paper <br>
<br> Reversible GANs for Memory-efficient Image-to-Image Translation <br> Tycho F.A. van der Ouderaa, Daniel E. Worral <br> University of Amsterdam, CVPR 2019 <br> <br>@inproceedings{vanderOuderaa2019revgan,
title={Reversible GANs for Memory-efficient Image-to-Image Translation},
author={van der Ouderaa, Worrall, Daniel E},
booktitle={CVPR 2019},
}
Getting Started
Installation
- Install [PyTorch](http://pytorch.org and) 0.4+ and other dependencies (e.g., torchvision, visdom and dominate).
- For pip users, please type the command
pip install -r requirements.txt.
- For pip users, please type the command
- Clone this repo:
git clone https://github.com/tychovdo/RevGAN
cd RevGAN
Training
- Download a CycleGAN dataset (e.g. cityscapes):
bash ./datasets/download_cyclegan_dataset.sh cityscapes
- Train a model:
python train.py --dataroot ./datasets/cityscapes --name example_run --model unpaired_revgan
During training, results will be saved to ./checkpoints/example_run/web/index.html
Testing
- Test a model:
python test.py --dataroot ./datasets/cityscapes --name example_run --model unpaired_revgan
The test results will be saved to ./results/example_run/test_latest/index.html
Prerequisites
- Linux or macOS
- Python 2 or 3
- NVIDIA GPU + CUDA cuDNN
Acknowledgements
We grateful to the Diagnostic Image Analysis Group (DIAG) of the Radboud University Medical Center, and in particular Prof. Dr. Bram van Ginneken for his collaboration on this project. We also thank the Netherlands Organisation for Scientific Research (NWO) for supporting this research and providing computational resources.
This code relies heavily on the image-to-image translation framework from pytorch-CycleGAN-and-pix2pix and extends the framework with paired and unpaired reversible models in 2D and 3D. The reversible blocks are implemented using a modified version of MemCNN.
Related Skills
diffs
343.3kUse the diffs tool to produce real, shareable diffs (viewer URL, file artifact, or both) instead of manual edit summaries.
clearshot
Structured screenshot analysis for UI implementation and critique. Analyzes every UI screenshot with a 5×5 spatial grid, full element inventory, and design system extraction — facts and taste together, every time. Escalates to full implementation blueprint when building. Trigger on any digital interface image file (png, jpg, gif, webp — websites, apps, dashboards, mockups, wireframes) or commands like 'analyse this screenshot,' 'rebuild this,' 'match this design,' 'clone this.' Skip for non-UI images (photos, memes, charts) unless the user explicitly wants to build a UI from them. Does NOT trigger on HTML source code, CSS, SVGs, or any code pasted as text.
openpencil
1.9kThe world's first open-source AI-native vector design tool and the first to feature concurrent Agent Teams. Design-as-Code. Turn prompts into UI directly on the live canvas. A modern alternative to Pencil.
HappyColorBlend
HappyColorBlendVibe Project Guidelines Project Overview HappyColorBlendVibe is a Figma plugin for color palette generation with advanced tint/shade blending capabilities. It allows designers to
