Image Quality Lab
Explore measured differences within an image instead of relying on a single quality score. This lab reports brightness distribution, a detail-sensitive Laplacian statistic and a high-frequency residual that responds to both noise and texture. Inspect the whole image, one chosen rectangle and sixteen fixed regions using the same decoded-pixel rules.
Key features
- View a 256-bin encoded-brightness histogram and an accessible grouped table.
- Compare whole-image, selected-region and 4 × 4 region measurements.
- Measure mean, population standard deviation and near-dark/near-bright pixel ratios.
- Inspect Laplacian variance and a 2 × 2 high-frequency residual, including valid sample counts.
- Export exposure/detail/residual maps as PNG and all numeric measurements as JSON.
- Load six generated PNG examples through the same decoder used for selected files.
How to use
- Select a local image or load a sharp, blurred, dark, bright, noisy or flat PNG example.
- Choose a white or black background for transparent pixels and set the rectangular region.
- Run Measure image. Compare the whole-image and region statistics, histogram and maps.
- Read the measurement limits and valid sample counts before saving a map or JSON report.
Use cases
- Compare detail measurements in subject and background regions of a photograph.
- Check whether a synthetic blur reduces detail-sensitive variance.
- Inspect near-dark and near-bright pixels in different image regions.
- Compare a flat field with a noise-added example while seeing how textures also create residuals.
Frequently asked questions
Does this tool give an overall photo quality score?
No. It provides defined measurements without classifying an image as good or bad. Brightness distribution does not prove correct exposure, Laplacian variance is affected by texture as well as blur, and high-frequency residuals do not isolate sensor noise.
How is brightness calculated?
After alpha compositing over the chosen background, Y′ = 0.2126R + 0.7152G + 0.0722B uses encoded sRGB byte values from 0 to 255. The histogram rounds Y′ to 256 bins. Dark means Y′ ≤ 8 and bright means Y′ ≥ 247. These are code-value thresholds, not scene exposure or EV.
What are the detail and residual measurements?
Detail is the population variance of 4C−N−S−E−W over valid one-pixel interior centers. The residual averages |Y00−Y10−Y01+Y11|/2 over valid 2 × 2 centers. Both respond to content, resolution and processing. A region uses centers inside it and may read neighboring pixels just outside its boundary.
Why are some map borders transparent or metrics unmeasured?
The detail kernel excludes the outer image border; the residual excludes the final row and column. Their valid sample counts are reported. An image or region with no valid centers has an unmeasured metric, rather than an invented zero. Transparent map areas indicate absent kernels.
How should I compare the built-in examples?
Compare sharp with blurred for detail, dark with bright for brightness, and flat with noise-added for residuals. These controlled examples test metric direction; they do not set universal thresholds for real photos. Each example is encoded as PNG and decoded like a selected file.
Are photos uploaded, resized or preserved in the exports?
The tool works in page memory and does not upload or retain the photo. It accepts PNG, JPEG and still WebP up to 8 MiB, 2 million pixels and 4,096 pixels per side, with no automatic resize. Exported maps retain decoded dimensions but are new PNGs, not original photos with preserved metadata.
Privacy
Selected images and settings are processed in this page’s memory, without uploading them to an analysis server or retaining them in browser storage. A file is downloaded only when you request it. Input changes, clearing and leaving the tool release temporary results and download URLs.
Comments & questions