Focus Stacking Lab
Combine two to five photos of the same fixed scene, shot at different focus distances. The local engine estimates small x/y translations relative to a chosen reference, scores each frame's local Laplacian detail, selects the sharpest area and exports both a composite PNG and a color-coded selection map. Possible movement or exposure changes are flagged for review. Your original files stay untouched.
Key features
- Estimate small translations before stacking
- Use neighborhood sharpness to select focused regions
- Download full-resolution composite and per-frame selection map
- Warn when aligned low-frequency content suggests scene motion or exposure changes
- Keep original uploaded files unchanged
How to use
- Take two to five photos of a motionless scene at different focus distances, keeping framing and exposure consistent.
- Upload PNG, JPEG or WebP files with the same pixel dimensions, up to 2 megapixels and 8 MiB each.
- Choose the reference frame that should define the output crop, then build the stack locally.
- Review the alignment offsets, color map and possible ghost warning.
- Download the composite and selection PNGs; inspect edges at full size before use.
Use cases
- Combine macro photos with different narrow focus planes
- Show which source frame contributed to each region
- Check whether a focus sweep moved before sharing a stack
- Prepare an in-browser reference composite without uploading photos
Frequently asked questions
Does this replace dedicated desktop focus stacking software?
No. It provides bounded local translation alignment and sharpness selection. It does not correct rotation, perspective, scale changes, focus breathing or complex motion. Inspect the saved image at full size.
What does the color map mean?
Each color identifies which uploaded frame supplied the corresponding output pixel after alignment and a small majority filter. The list below the image maps colors to file names and contribution percentages.
How is a ghost warning detected?
After alignment, the tool compares low-frequency brightness between frames in small tiles. It flags a possible movement or exposure mismatch when enough tiles differ. This is a heuristic: small or same-colored moving objects may escape it, and focus changes can produce false alerts.
Why must the photos have equal dimensions?
The version aligns only integer x/y translations while preserving the reference frame's pixel grid. Resizing or warping the sources could disguise mismatch and lower sharpness, so differing dimensions are rejected.
Are my originals modified or uploaded?
No. The browser decodes copies in memory and keeps the selected File objects unchanged. Only two new PNG files are offered for download; image pixels are not posted to this site's API.
Which image formats and limits apply?
Use two to five nonanimated PNG, JPEG or WebP files. Each file is limited to 8 MiB, each decoded image to 2 megapixels, and dimensions must be at least 64 by 64 pixels.
Privacy
Photos remain in this browser. Decoding and PNG export use local canvases; alignment and focus scoring run in a local Web Worker. No photo pixels are sent to the site's API.
Comments & questions