Skip to content

Automatic Image Analysis

Every wallpaper is analysed when it is scanned or uploaded. The results power the filters: brightness, dominant hue, aspect ratio and orientation are all derived here, along with a numeric luminance value.

Rescanning re-analyses images, so re-running a scan will pick up changes.

The image is sampled on a grid (every 50 pixels) and averaged. From the average colour the server derives:

Luminance is a 0.01.0 value computed with the standard weighting:

luminance = (0.299 × R + 0.587 × G + 0.114 × B) / 255

It maps to a brightness category:

LuminanceBrightness
< 0.3dark
0.3 to 0.7medium
> 0.7light

The averaged colour is normalised and categorised:

  • If the channels are close together (low spread), the hue is neutral.
  • Otherwise the strongest channel decides: a red-dominant image is warm when green is also high, otherwise red; green-dominant is green; blue-dominant is cool.

Possible values: red, green, blue, warm, cool, neutral.

Aspect ratio is derived from width ÷ height, with tolerances around common ratios: 16:9, 4:3, ultrawide, square, portrait, or custom when it fits none. Orientation is coarser: wider than tall is landscape, taller than wide is portrait, near-square is square.