// the find
junyanz/iGAN
Interactive Image Generation via Generative Adversarial Networks
iGAN is a 2016 ECCV research demo that lets you sketch rough color/shape strokes and have a DCGAN project them onto the image manifold in real time, producing photo-realistic outputs. It's a working proof-of-concept for constrained latent-space optimization, not a production tool. The target audience is researchers wanting to study or demo early interactive GAN ideas.
The core idea — projecting user constraints onto the GAN latent manifold via gradient descent — is well-implemented and clearly separated into constrained_opt.py vs the Theano-specific variant. The UI is surprisingly complete for an academic project: three brush types, multi-mode candidate display, interpolation slider, and a headless script mode for batch use without Qt. The image-to-latent projection pipeline (opt / cnn / cnn_opt hybrid) is a nice addition that most contemporaneous GAN repos skipped. Pre-trained models for four distinct domains ship with the repo, so you can actually run it without your own training data.
Requires Python 2, Theano (dead since 2017), PyQt4 (dropped from most distros), and a CUDA 7.5 / cuDNN 5 stack — getting this running on any modern machine is a multi-day archaeology project. Output resolution is locked at 64×64; that was acceptable for 2016 but makes the results look like artifacts today. No PyTorch port exists in this repo (the author's later CycleGAN/pix2pix repos do, but iGAN was never ported). The constrained optimization is slow enough that 'real-time' depends heavily on your GPU — on anything less than a Titan X equivalent, latency will break the interactive feel.