// CRT MODE ACTIVATED — ↑↑↓↓←→←→BA to toggle
← Projects
[04] generative

Scriptorium

The discrete Fourier transform, made visible: 4,096 epicycle arrows trace any image.

demo / screenshot →
// stack
RustPythontiny-skianumpyPyTorchOpenCVU2NetBiRefNetCLIPSegSAM2ControlNetCoreMLffmpeggifskiclap
// Problem

I wanted to *see* the discrete Fourier transform, not just compute it: to watch the math reconstruct an image rather than read about it.

// Approach

A renderer where 4,096 arrows, each one term of a Fourier series, spin at fixed frequencies tip-to-tail; the point at the end of the chain traces out the input image one frame at a time. Written in Rust with a Python pipeline. Drop in any image with a clean foreground and it produces an MP4 + GIF.

// Results

Renders ~3 minutes per subject on an M-series Mac, with a gallery of traced silhouettes. A small, finished tool that does one thing well.

// Learnings

Building the visualization taught me the DFT better than any lecture. Making a concept visible is the fastest way to actually understand it.