diff --git a/DESIGN.md b/DESIGN.md new file mode 100644 index 0000000..8360292 --- /dev/null +++ b/DESIGN.md @@ -0,0 +1,25 @@ +# DESIGN — Fractal mosaic Python engine (Tower) + +## Goal + +Headless RST collage generator for the Tower mosaik inbox, adapted from Seth Benton’s Fractal-Mosaics (GPL). + +## Pipeline + +1. Load tile pool; cache mean RGB + HSV histogram (CBIR prefilter). +2. Resize master to profile `master_max`. +3. For each tile size (largest first), scan uncovered centers. +4. Rank tiles by histogram/mean distance (**selection only — no recolor**). +5. Estimate rotation/scale via log-polar phase correlation; snap to discrete rot/scale candidates. +6. Place with edge alpha blend if RMS and overlap pass thresholds. +7. Write PNG. + +## Profiles + +See `src/fractal_mosaic/profiles.py`: `wenig`, `mittel`, `dicht`. + +## Non-goals (v1) + +- Faithful bit-identical MATLAB port +- Color transfer / hue variants +- GPU acceleration