🎨 String Art Generator
High-performance Go implementation with source-over compositing
⭐ BEST VERSION
v10.0
7/10 Quality
v10.0: Source-Over Compositing
Physically accurate SVG simulation with calibrated alpha. Confirmed best by both objective metrics and visual AI assessment.
SVG Output (zoomable, vector)
SVG Rendered at 800px (what you see in browser)
💡 Why V10 is the best: Source-over compositing (alpha=0.25) accurately models how SVG renders overlapping strokes. Canvas-SVG brightness gap is only 2.7 points. Greedy algorithm with importance-weighted scoring achieves near-optimal line placement in 6.6 seconds.
Version Comparison
V10 vs V9 (previous best). V10 has better contrast, sharper details, and more recognizable features.
V10 (SSIM 0.196) ⭐
V9 (SSIM 0.194)
Algorithm Details
- Source-Over Compositing: canvas[px] *= (1 - α), matching SVG stroke rendering
- Calibrated Alpha (0.25): Empirically matched to SVG stroke-width 0.18mm at 800px
- Bresenham Rasterization: 1px lines, no anti-aliasing spread (matches SVG at render resolution)
- Importance Map: 60% darkness + 40% edges, center-weighted Gaussian
- Greedy + Removal: Add best lines, then remove any that hurt quality
- Parallel Evaluation: 8 workers for fast candidate scoring
- Adaptive Stopping: Detects quality plateau, stops when no improvement possible