Poster pipeline source - companion to the guide
"How Many Pixels Does a 10-Foot Poster Need?" on iamravi.com

What is here
  base.py, sq*.py, s10.py, deities.py   build each poster as an HTML page
  sqrender.py                           headless Chromium -> 120in x 120in PDF
  upscale.py, srvgg.py, rrdb.py         AI super-resolution (Real-ESRGAN models)
  up_face.py, up_face2.py               two-pass upscale of the portrait
  build4.sh, buildall.sh                run the steps in order

Read this before running
  - Paths such as /home/claude/work/p3 and /tmp/*.pth were the author's working
    folders. Change them to folders on your machine.
  - The scripts need the poster artwork/photos, which are not included.
  - The AI steps need the Real-ESRGAN weight files, which you download yourself
    from the official Real-ESRGAN project. Weights are not included.
  - Needs: Python 3, PyTorch, OpenCV, Pillow, Playwright (Chromium) and Poppler
    (pdftoppm). Start with the guide: the maths comes first, the code second.
