Every two hours, a program on a server in Helsinki draws ten photographs at random from the thousands of nature observations that people around the world have posted that day. Each is by a different photographer, and each carries a free licence. The ten are laid on top of each other and combined by sharpness: at every point of the image, the photograph that is sharpest there counts the most. Birds, insects, leaves and bark from different continents surface through each other in a single portrait-format image.
The work belongs to a long line of composite and layered photography, in which many images are condensed into one. Historically, the method has often been used to produce an average or a “type”. Averaging erases what is particular and leaves what is common. Group Photos does the opposite: by keeping what is sharp, it keeps what each photographer chose to look at, the bird, the insect or the leaf in focus, and lets the rest give way.
The series also draws on work with photographs made by others and shared online, and on the tradition of chance and instruction in art, where a rule is set in advance and chance decides the rest. Here the rule is fixed: ten photographs, ten photographers, uploaded the same day, combined by sharpness. What the rule is applied to is left to chance. Nothing is selected by hand. The image is a group photo of people who never met, uploaded on the same day, each looking at something else.
The series runs unattended and adds twelve works a day. Each work is numbered (Group Photo 0001, 0002 …) and has its own page.
Created with Python 3.13 on a Hetzner cloud server (Helsinki) that runs every two hours by a systemd timer. Source photographs originate from the public API of a citizen-science nature platform (iNaturalist), filtered to photographs posted the same day with a CC0 or CC BY licence, ten different photographers per work. The images are produced from a combination of NumPy and SciPy. Local sharpness is measured per photograph (Laplacian of a Gaussian, normalised against each photograph’s own median sharpness), turned into weights, and the photographs are blended in a Laplacian pyramid (as in exposure fusion) so that sharp subjects keep clean edges without halos. Output 1200 × 1600 px JPEG, static HTML pages with schema.org metadata, no JavaScript. Each work records its sources, licences and the share of the image each photograph makes up. Every work and its sources are backed up off the server after it is made.
Project Page | Olof Broström | Instagram
Group Photos is by Olof Broström (oolf.net), presented by JAEV, Lund (jaev.gallery).






