January 19, 2026
Squiggles vs the Mona Lisa
Iterative image reconstruction using random cubic bézier strokes
New tool redraws photos with squiggles; old devs cry "Mona Lisa deja vu"
TLDR: New tool “splined” redraws images with curved strokes using Apple’s graphics tech, dazzling fans with fast, artsy results. Comments split between excitement and déjà vu, citing the 2008 Mona Lisa project and debating simple hill-climbing versus genetic algorithms, while others share UIs and tips for sharper details.
A fresh art-tech toy just hit the timeline: a tool that rebuilds photos using swoopy, random curves and your computer’s graphics muscle (Apple’s Metal). Think: a portrait re-painted from thousands of silky strokes, with different seeds giving different looks—and yes, you can make an animation. The community lost it. One camp shouted “insanely cool” and pointed to classics like Geometrize. Another crowd immediately rolled up with receipts: “Haven’t we been doing this since 2008?”
That nostalgia brigade brought the drama. kvnhn flexed with “I made a simple web UI” and credited Michael Fogleman’s work, dropping a pro tip: narrowing the search helps keep tiny details—like the eyes in that Vermeer—sharp. Meanwhile, Sharlin reignited an old geek flame war: is this simple “hill-climbing” (taking each small win) or should we go full evolution mode with genetic algorithms (breed, mutate, repeat)? seg_lol name-dropped the legendary 2008 “[Mona Lisa]” experiment, and bArray confessed they once built a polygon-mesh version for tiny web images… then admitted, “I think I lost the code,” which became the thread’s running joke. The vibe: half art party, half history class, with practical takes too—speedy, pretty placeholders for the web, mesmerizing seed-to-seed animations, and a respectful bow to the OGs who paved the way. Bezier vs. Mona Lisa: round two is on.
Key Points
- •“splined” reconstructs images using iterative random cubic Bézier strokes with Metal-accelerated GPU processing.
- •The tool operates via a CLI with parameters for stroke count, batch size, seed, GPU usage, logging, output, resume canvas, background, alpha, and convergence controls.
- •Inputs can be a single file or directory; outputs can mirror the input tree, and frames can be saved every nth accepted stroke.
- •The algorithm works in OKLab color space, accepting strokes only if they strictly reduce squared OKLab error (Δε² < 0).
- •References include Geometrize, improved antialiasing for Bézier strokes, and potential support for other GPU backends such as WebAssembly (wasm).