vintage-gan / DOCUMENTATION.md
msrishav's picture
Upload academic VintageGAN project
059f915 verified
|
Raw
History Blame Contribute Delete
2.06 kB

Technical Documentation

Product Shape

VintageGAN is a controllable vintage image synthesis prototype. It should feel like a filter tool at inference time, but the academic value comes from proving that a conditional model can learn the mapping from a clean image and six control values to a vintage target image.

Condition Vector

Canonical order:

grain, scratch, dust, vignette, color_shift, blur

Each value is normalized to [0, 1]. Presets are stored in configs/presets.yaml and are not hidden inside notebooks.

Architecture

  • Generator: custom conditioned U-Net style encoder/decoder.
  • Conditioning: spatial replication at input plus MLP projection at bottleneck.
  • Discriminator: conditional PatchGAN with dynamic patch-grid output.
  • Defects: procedural targets applied in a fixed order.

The current generator is not a torchvision ResNet34 model.

Training Profiles

  • local_256: RTX 3050 4GB class local experimentation.
  • cloud_384: medium cloud GPU experiments.
  • cloud_512: larger cloud GPU experiments.

All profiles live in configs/training_config.yaml.

Losses

  • Pixel reconstruction loss.
  • Optional VGG perceptual loss.
  • Adversarial loss for GAN phase.
  • Optional detector-backed consistency loss.

Consistency loss should only be treated as academically meaningful after detectors are trained and validated.

Evaluation

No metric in this project should be hand-entered. Valid metrics must come from evaluation code and saved artifacts.

Recommended reporting:

  • SSIM/PSNR against synthetic procedural targets, with limitations stated.
  • FID only against a real, licensed vintage reference set.
  • Condition MAE only with validated detectors.
  • Ablations for key losses and condition strengths.

Reproducibility

Each result should include:

  • git commit,
  • config profile,
  • dataset source and license,
  • split seed,
  • hardware,
  • training duration,
  • checkpoint path,
  • generated samples,
  • metrics artifact.