3 Output
Each cell uses the nearest palette color (perceptual).
Each cell quantizes to one of N dot sizes (smallest = empty).
Designs a kinetic wall of hinged tiles. Image value becomes a discrete physical tilt, changing reflected light and shadow as the viewer moves.
The hinge map labels A1–A6. The actuator schedule gives each tile's angle, center point, hinge axis, and suggested linkage offset.
Distributes small found discs across several hanging planes. A single point light enlarges and aligns their shadows into the image on a wall.
The plane-map SVG separates every hanging layer. The schedule compensates object size and position for the light's magnification.
Reconstructs the photograph with one continuous thread tensioned between numbered perimeter pegs. The instructions give the complete peg-to-peg winding order.
Start with dark sewing thread or fine cord. The SVG is a numbered full-size peg template; the TXT-style CSV lists every move and total thread length.
Turns the image into irregular colored panes separated by a continuous lead-came network. The cut map numbers panes and estimates glass area and came length.
Print the SVG at 100%, cut each G-numbered paper pattern, and leave the listed came allowance between neighboring panes.
Builds a marquetry image from rectangular veneer pieces. Local image direction controls grain angle, so the picture changes subtly as light moves across the wood.
The fabrication map labels species code and grain arrow. The schedule totals veneer area by wood and angle.
Wraps the image into a catoptric anamorph that resolves in a mirrored cylinder placed on the center mark. Use a polished can, mirror-film tube, or acrylic mirror cylinder.
The setup map includes the cylinder footprint and calibration rings. Test at reduced scale before making a large permanent piece.
Encodes the image into a striped base layer. Sliding a matching transparency grating over it reveals moving image-shaped bands.
Print the base on paper and the revealer on clear film without scaling. Move the film perpendicular to the stripes.
Makes a bridged stencil for casting the image as light and shadow from a lamp or projector. A structural bridge lattice prevents dark islands from falling out.
Use cardstock only with a cool LED source. Do not place paper or plastic near a hot lamp.
Converts the image into a masonry or foam-brick relief. Value controls how far each brick projects while the chosen bond keeps the courses buildable.
Creates a counted cross-stitch or needlepoint chart with color symbols, fabric dimensions, stitch totals, and estimated floss length.
The material estimate includes 15% for starts, stops, and carrying thread behind the cloth.
Rebuilds the image from curled paper strips—round coils, marquises, and teardrops. Darkness controls coil size; local edge direction controls the pinched shape.
The placement map labels each coil; the schedule totals strip length by color and shape.
A field of small mirror tiles forms the image from controlled glints. Each tile receives a tilt and azimuth for aiming light toward one marked viewing position.
Aim the mid-angle tile first, mark the viewer position, then set each tile with the printed tilt wedge and azimuth arrow.
Creates a sculpted tufted rug: color carries the picture while pile height adds tactile depth. The map gives mirrored backing coordinates and a yarn estimate by color.
For purchasing, replace the default yarn rate with a weighed test swatch from your own gun, yarn, strand count, and line spacing.
Builds a wall hanging from open spaces, half knots, square knots, and dense berry knots. Darkness selects knot density while the schedule estimates working cord.
Make a short knot swatch before cutting all cords; cord construction and knot tightness change consumption substantially.
Turns people into the pixels. Each seat receives a numbered color card and a simple hold-up instruction; together the audience recreates the uploaded image.
The CSV is the distribution manifest: section row, seat, card code, color, and printed instruction number.
Makes a tabula-scalata-style corrugated picture. The original appears from one side; a transformed companion view appears from the other.
Print at 100%, accordion-fold the dashed lines, and view from roughly 35–55° off axis.
Creates a modular living portrait from foliage tones and textures. The schedule groups plant quantities and irrigation rows while preserving a replaceable pocket grid.
Plant codes describe visual roles, not universal species. Match each role to locally suitable plants and verify irrigation, drainage, wall load, pets, and lighting.
Translates the image into a fixed colored-sand painting. Work one labeled region at a time over adhesive, then remove excess grains before the next color.
The color-order schedule runs from the largest/lightest field to the smallest/darkest, reducing contamination between pours.
Encodes the photograph into a flexible kerf-cut wood panel. Dark values receive deeper, closer slots; the panel bends and transmits light differently across the image.
Always cut a test coupon first. Wood species, grain, veneer quality, tool width, and remaining face thickness control the safe bend radius.
Builds a directional inlay from ordinary matchsticks, coffee stirrers, or clipped twigs. Tone selects stain/char level; local image edges turn the sticks.
Use unused craft matches with heads removed, or stain/paint wooden sticks. Do not char assembled work or use open flame near adhesive.
Generates a height map for fabricating a physical relief panel. Carve / mill / 3D-print the depth, light it from one edge at a grazing angle, and the image emerges in cast shadows.
Longest edge of the depth map. CNC mills typically work well at 200–500; 3D printers can handle higher.
Which edge of the panel the LED strip will sit on. Preview simulates the shadows you'll actually see.
Direct: bas-relief — bright pixels stay high, dark pixels are recessed. Edges cast the shadows.
2
1.25
Raking light simulates the LED-from-edge installation — what shadows you'll actually see. Height map shows the raw depth data.
Used by the STL export only. 200×200 mm panel with 8 mm max recess is a sensible "wall art" starting point.
PNG 16-bit → CNC software (Carveco, Vectric, Estlcam). STL → 3D printer / Bambu / Prusa. OpenSCAD → parametric model you can tweak.
A camera that renders only what changes. Inspired by Anna Zhang's Change Capture — film what happens instead of what exists.
Locked reference: press Set reference to capture the background, then anything new shows up against it. Best for "what changed while I was gone."
Uses your laptop / phone webcam via getUserMedia. Browser will prompt for permission the first time.
Upload two images of the same scene. The output is the per-pixel difference.
14
Per-channel pixel-value change required to count. Lower = noisier (registers tiny shifts). Higher = only big changes.
Mono: white marks on black. Heat: cool→hot palette, hot = most recent / largest change. Real color: actual pixel color where it changed. Mono on white: black marks on white — paper-ready.
Processing width. 480 = smooth on most laptops. Drop to 320 if it stutters.
In trails mode, "Save" gives you a long-exposure of the change you've recorded.
Longest edge of the sprite in real pixels. Common: 16, 32, 48, 64. The other edge follows the crop's aspect.
1.12
1.25
Photos are tonally flat — a contrast/saturation lift before quantizing gives the sprite punch. Set both to 1.00 for neutral.
k-means clusters the image into this many colors.
Uses your palette from Palette mode (edit it there).
How source pixels map onto the palette. By color = nearest hue+tone (full-color palettes like PICO-8). By brightness = tonal ramp (Game Boy, 1-bit). Auto picks based on the palette.
Dithering fakes extra shades from a small palette — classic for low-color sprites.
.gpl → Aseprite / GIMP / Krita / Pixelorama. .pal → JASC / Pro Motion / Grafx2. .hex → Lospec. .png → a swatch strip any tool can import a palette from.
The path the ink follows. Thickness along that path carries the value.
Drag on the pad. Your photo shows through as a guide.
Process resolution.
Spacing = gap between passes. Step = how often value is re-read along the path.
Spins the whole pattern about the center.
Response bends the value curve (<1 opens shadows, >1 opens highlights). Drop below erases strokes thinner than this, leaving true white.
Wobble rides a wave across every path — it is the whole shape for Sine and Zigzag, and a hand-drawn tremble on the rest.
Ribbon gives closed outlines — what you want for cutting or plotting.
Final-output mode. The PNG is the artwork — there's no per-cell instruction layer. Print, frame, post.
Process resolution. Higher = finer streaks.
120
Pixels above (bright) / below (dark) this lightness join into "sortable" runs. The longer the runs, the more dramatic the streaks.
Process resolution. Larger = finer rosette pattern but slower.
One halftone cell at process resolution. Smaller = denser rosette.
For burning silkscreens. Black where ink prints. Production-ready format.
For digital review. Each channel rendered in its ink color on white — shows what each layer "looks like" before stacking.
Image is processed at this width (pixels), then scaled up. Lower = chunkier, more visible dither pattern.
Uses your palette from Palette mode. Edit palette there, dithering quantizes to those colors.
Vectorises the dithered image into cuttable polygons. 1-bit = single mask. Palette = one mask per color (zip-style multiple files).
Continuous lines travel across the whole image instead of restarting inside a visible grid. Export the SVG to trace, plot, carve, stitch, or transfer the marks.
Local tone is simplified into this many line-density bands.
Even: all angle families build together as tone darkens. Stacked: the first angle fills before the next is introduced, like layered pencil work.