Should Not Be Here
Concept presentation

Should
Not Be
Here

A room that only lights
when something real
passes through it

IntSpace · Interactive Spaces

A cloud chamber makes invisible particles briefly visible as thin lines of condensation. Should Not Be Here enlarges that box onto the surfaces of a dark room — the trajectory the particle took, on the walls; the processed footage of the chamber itself, on hanging mesh — each running about a second behind the particle that caused it.

Cloud chamber Computer vision Live detection Projection Deep time Non-agency
01 What was built Chamber · Detection

Two things, and the second only exists because the first one worked: a cloud chamber that actually produces tracks, and a detection prototype that finds them in the footage and turns them into light.

1 · The cloud chamber

A diffusion cloud chamber, assembled from hardware-store parts. A sealed acrylic box; a felt strip at the top soaked in 99% isopropanol; underneath, a black anodised plate held at roughly −78 °C by dry ice.

It produces a shallow layer of supersaturated vapour just above the plate, in which any passing ionising particle leaves a visible line of condensation for a fraction of a second. How and why that works is 02.

ChamberSealed acrylic, ~150 mm cube
VapourIsopropanol 99%, felt reservoir
Cold sourceDry ice, −78.5 °C, insulated base
GroundBlack anodised plate (contrast)
LightSingle grazing LED, near-parallel to plate
Overhead view of the chamber components laid out: sealed acrylic box, torch, isopropanol bottle, black plate and container.
FIG 1.1Build components, before assembly.
2 · The detection prototype

A camera looks into the chamber, and its footage is processed live to separate the tracks from everything else in the frame. Confirmed tracks become the output the room is made of.

It runs in a browser — the detection is a web worker, each projector is an ordinary window. No install, no runtime to version-pin, and the same folder runs on a laptop or off a server.

Capture1920 × 1080 @ 30 fps → 640 × 360 working
ProcessingBrowser, web worker, ~36 ms / frame
Delay≈ 1 s behind the camera, measured
Outputs3 wall projectors + 1 onto mesh cloth
Camera sourceUSB webcam, or a phone over the network

Observation log
SessionConditionOutcomeRecording
Experiment setupBuild, seal, charge, seat on dry iceReference procedure for all three sessions.youtu.be/tVaN-9vt6ZE
Observation #1First seal, plate not cold enoughFog, no layer. No tracks.youtu.be/uzHVGbMzZWQ
Observation #2 — MuddyOver-saturated, plate floodedHeavy alcohol rain, carpet drowns the frame. Unusable.youtu.be/isww7x5uCWg
Observation #3Reduced charge, grazing side-light, black groundStable layer. Tracks resolved and recovered.youtu.be/CxkEAz9M7Ws

Chamber, running

Raw observations from camera.

Build walkthrough
02 How it works The chamber · The processing
The chamber

The alcohol evaporates warm at the top of the box, sinks, and meets the cold plate. In the few centimetres just above that plate it forms a layer of supersaturated vapour — vapour holding more alcohol than it should be able to, waiting for an excuse to condense.

Anything that ionises the air inside that layer provides the excuse. Droplets nucleate along the exact path the ionising particle took, and for something between a fifth of a second and a second there is a visible white line hanging in the box. Then it falls apart.

Nothing is being simulated. The lines are caused by muons from cosmic-ray showers, alpha particles from trace radon, and electrons from the potassium-40 in the room — all of which are passing through the chamber, the table, and everybody in the room continuously, and have been all along.

The black plate is there for contrast and the light is set almost parallel to it, so the droplets are lit from the side and read white against black rather than washing into the fog.


The processing

To the camera the chamber contains four things, and only one of them is signal. Each behaves differently in time, and that is what the processing keys on.

WhatLooks likeBehaviour in time
Condensation carpetStatic bubbly texture along the bottomNever moves
Glass & rim glareStatic horizontal bandsNever moves
Falling alcohol rainThin streaks, tens of px per frameFast
Ionisation trackThin bright lineStill for ~0.2–1 s
  1. Crop. Cut out the condensation carpet along the bottom and the glare at the top — no grading will ever make those behave.
  2. Average a few frames. A falling droplet moves during that window, so it smears and fades. A track holds still, so it stays sharp.
  3. Subtract the background. A per-pixel median over a longer window captures anything that is always there — carpet, glare, fog — and removes it.
  4. Keep only thin things. Anything wider than a track can be is deleted. Blobs go, lines stay.
  5. Re-level. Black and white points are taken as percentiles of the remaining pixels, so the image re-levels itself as the chamber fogs up over the session.
  6. Measure what is left. Long and thin is a track. Small and round is a speck, and is discarded.

Steps 2 and 3 together are the whole trick: a track is too slow to be smeared by the first and too brief to be caught by the second, so it is the only thing that survives both.

Windows13 frames short · 45 frames long
Thinness24 px — wider than this is removed
Levelsblack 92.65% · white 99.470% · γ 1.80
Track is≥ 45 px long · ≤ 10 px wide · aspect ≥ 5
On real footage2 tracks / 1.9 s · 32,667 specks rejected

The same code now runs live in a browser on a camera feed — same steps, same numbers — and is what drives the projections in 03.


Result
Raw chamber frame: grey fog, horizontal glare bands, streaks of falling alcohol and a bubbly condensation carpet along the bottom.
FIG 2.1Raw frame. Carpet along the bottom, glare bands across the top, alcohol rain throughout.
The same frame after processing: mostly black, with isolated white marks remaining.
FIG 2.2The same frame, processed. Background crushed to black; only what survives both windows is left.
FIG 2.3Processed clip, full length. Every surviving event, in time.
Maximum projection: all surviving pixels across the whole clip composited into one high-contrast black and white image.
FIG 2.4Every surviving pixel across the whole clip in a single frame. Nothing in it happened simultaneously.
03 Interaction flow Sky · Machine · Room

Three actors, and only one of them is in the room. Everything the visitor sees was caused about a second earlier by something they cannot influence, schedule, or hurry.

Interaction flow diagram Three swimlanes above a projection band. Sky: a cosmic ray shower produces a muon that crosses the chamber. Machine: a droplet track condenses, one camera captures it, processing runs about a second behind the present, and a geometry gate separates tracks from particles that are not useful; a track becomes an event. Room: the visitor enters, finds the surfaces dark, and later sees the walls and the cloth. The projection band shows three wall projectors carrying the trajectory, and one projector on hanging mesh cloth carrying the processed footage with its specks. LANE A — SKY · UNCONTROLLED LANE B — MACHINE · ONE BROWSER LANE C — ROOM · VISITOR COSMIC RAY SHOWER ~15 km altitude MUON CROSSES CHAMBER ionises the vapour layer DISCARDED particles that are not useful TRACK CONDENSES visible ≈ 0.2 – 1 s, then collapses ONE CAMERA looking into the chamber PROCESSING separates the track from everything else ≈ 1 SECOND BEHIND the room never shows the present IS IT A TRACK? long and thin, or not NO YES EVENT — LOGGED AND COUNTED position · angle · length · time VISITOR ENTERS eyes adapt, ~30 s EVERY SURFACE DARK no attract mode, no idle loop SEES WALLS AND CLOTH the claim, and the evidence for it PROJECTION — BROUGHT TO LIGHT WALL PROJECTORS × 3 the trajectory — where the particle came from, how long it had been travelling, how it survived PROJECTOR ON CLOTH MESH × 1 the processed footage, with its specks — the chamber itself, as the camera saw it THREE WALLS HANGING MESH CLOTH light hangs in the air, not on a wall Both come from the same processed frame, so they are time-aligned with each other and run the same distance behind the camera.
Lane A · Sky

Entirely outside the installation. Nobody schedules it, nobody in the room affects it, and it has been running for the whole history of the building.

Lane B · Machine

One camera, one browser. Everything the system does is translation: an event that is invisible, brief and physical at one end, and light in a room at the other. It is strict about what it will translate — on real footage it discards about 32,000 useless particles for every two tracks it brings to light.

Lane C · Room

The visitor has exactly two inputs: where they stand and how long they stay. Neither changes the rate. Waiting is the interaction.

04 System diagram Chamber → Browser → Three surfaces

The whole signal chain is one camera, one browser and four projectors. There is no server, no render farm and no custom application — the detector that was a Python notebook now runs as a worker inside the page.

System diagram A left-to-right chain: chamber, camera, control page in a browser, four screen windows, four projectors. Below the chamber, a dashed group lists the chamber assembly. Below the control page, a dashed group lists the processing stages, which put the output about a second behind. Below the screen windows, a group lists the outputs: the trajectory on three walls, and the processed footage on cloth. Below the projectors, a group lists the surfaces: three walls and a hanging mesh cloth. The pipeline also writes an event log which drives a counter. A latency budget runs along the bottom. SIGNAL CHAIN — PHYSICAL TO LUMINOUS CHAMBER supersaturated isopropanol layer CAMERA 1080p · 30 fps fixed, manual exposure CONTROL PAGE one browser tab detection in a web worker SCREEN × 4 browser windows, fullscreen per output PROJECTOR × 4 one per surface, aligned in-page light USB canvas HDMI CHAMBER ASSEMBLY ISOPROPANOL FELT 99% COLD PLATE −78 °C BLACK GROUND GRAZING LED WEB WORKER — PER FRAME 0 · BUFFER → ≈ 1 s BEHIND 1 · ROI CROP 2 · SHORT MEAN − LONG MEDIAN 3 · TOP-HAT 24 px 4 · PERCENTILE GRADE + γ 5 · COMPONENTS → TRACK GATE OUTPUTS 3 × TRAJECTORY (walls) 1 × PROCESSED (cloth) specks included per-screen alignment SURFACES 3 × WALL — 2.4 × 1.35 m matt black, ≤ 3% reflect. MESH CLOTH — 2.0 × 2.5 m AMBIENT ≤ 5 LUX EVENT LOG append-only, CSV export COUNTER total since opening MEASURED LATENCY — 640 × 360, NO GPU track forms ≈ 200 ms · ring buffer 22 frames ≈ 730 ms · pipeline 36 ms / frame on real footage · canvas to projector ≈ 30 ms — total ≈ 1.0 s from particle to light the console reports the real figure continuously; it is measured, not assumed
Note on latency

The band-pass needs frames on both sides of the one it is judging, so the system is structurally about a second behind the particle. That delay is not hidden or compensated for — it is a real property of the method, and section 06 treats it as the subject rather than a defect.

Note on honesty

No idle animation, no ambient shimmer, no attract mode. If there is light on a surface, a particle crossed the chamber. The moment the room lights on anything else, every mark in the piece becomes decorative and the work is over.

Note on it being a browser

Not a shortcut. A projector-driven installation that runs from a served folder has no install, no runtime to version-pin and no compiled binary to lose — and each output is an ordinary window, so alignment is a page, not a hardware problem.

05 Spatial setup Walls · Canopy · Plinth

The chamber sits at chest height in the middle of the room, and the thing it is looking at hangs over your head. A single sheet of mesh, tensioned corner to corner, carries the chamber's own view of itself.

Isometric view of the room: two tall pale walls meeting in a corner, a large tensioned mesh canopy suspended across the upper volume, and a waist-high plinth at the centre carrying a small dark box, with two figures standing either side of it.
FIG 5.1The room. Walls take the trajectory; the canopy overhead takes the processed footage; the chamber itself sits on the plinth between them.
Room≈ 4.0 × 4.0 m, blacked out, ≤ 5 lux
Walls≈ 4 m tall, matt, ≤ 3% reflectance
Wall surfaces3 × trajectory projection
CanopyTensioned mesh, corner to corner
Canopy height≈ 2.5 m at the low edge, ≈ 4 m at the peak
Canopy surface1 × processed footage, with specks
Plinth≈ 1.0–1.1 m tall, ≈ 450 mm square
ChamberOn the plinth, open to view from above
CameraIn the plinth, looking into the chamber
Scale factor≈ 1 : 16 (chamber FOV → projected image)

Dimensions are read off the model and are approximate. Exposure on the camera must be locked — any auto-gain re-levels the frame between shots and the processing reads the change as motion, which produces tracks that were never there.

Three heights, three states of the same event
  1. Chest height — the chamber. You look down into a box about the size of two hands, and if you are patient and lucky you see a white line appear and fall apart.
  2. Eye height — the walls. You look across at where that particle came from, how far it travelled and why it should not have arrived at all.
  3. Overhead — the canopy. You look up at the chamber again, a second old and enlarged to the size of the room, with every speck the processing rejected still in it.

The order is deliberate and it is vertical. The evidence is small and below you; the claim is at your own height; and the thing itself is above you, which is also where it came from.


Why the cloth is overhead and not on a wall
  1. It puts you underneath. A wall is something you stand in front of and can walk away from. A canopy is something you are already inside — which is the literal situation with cosmic rays, and the piece should not have to say so out loud.
  2. An open weave passes light. The image lands twice: sharp on the mesh, and soft on the ceiling behind it. The event gains depth without any 3D being simulated.
  3. It is not flat. Tensioned corner to corner, the surface curves, so the projected frame is stretched differently at every point. The chamber's rectangle stops reading as a screen and starts reading as weather.
  4. It moves. Air from the door, from the projector fans, from somebody walking past — the residue of a particle that crossed the room an hour ago drifts slightly because a person opened a door.
Straight-on elevation of the same room: the mesh canopy reads as a shallow peak spanning the full width, with the plinth centred beneath it and figures either side.
FIG 5.2Elevation. The canopy dips to roughly head height at its edges and lifts to about four metres at the peak.

Open — where the canopy projector goes

The walls are straightforward: three short-throw projectors, one per surface. The canopy is not. Two options, and the prototype should decide between them rather than an opinion:

  • Up from the plinth. A projector in the plinth, pointing straight up, so the chamber's image appears on the mesh directly above the chamber itself. The strongest version conceptually — the box projects its own view — but the throw is short, the keystone is severe, and anybody leaning over the chamber puts their head in the beam.
  • Across from a high corner. Mounted near a wall top, raking across the underside. Nothing blocks it and the geometry is easier, but the link between the chamber and the image above it becomes a claim rather than something you can see.
What has to be tested
  • Moiré. The projector's pixel grid against the weave. The softness control on each output exists for this; it needs a real weave and real optics to set.
  • Brightness. An open mesh throws away most of the light by design. The wall projections and the canopy have to be balanced by eye once the fabric is up.
  • Keystone. A curved, non-planar surface cannot be corrected flat. The question is how much distortion reads as the material rather than as a mistake — probably a lot, and probably in the work's favour.
  • Sightline. Whether the canopy's low edge blocks the far wall from the plinth.

Chamber detail — as seen from the plinth
FIG 5.3Detail into the active layer — the view the plinth affords when you look down, and the frame the camera sees.
FIG 5.4A resolved event, slowed. Roughly half a second of real time — and about a second before it appears overhead.
06 What and why it means Conceptual position
The delay is the subject

A cloud chamber is not a picture of a particle. By the time the droplets are large enough to see, the particle is long gone — it left the box, the table and the building at very nearly the speed of light. What you are looking at is an after-image of a decision the vapour made, a few hundred milliseconds late.

Should Not Be Here takes that lateness literally and adds its own to it. The detector needs frames from after the event before it can confirm the event, so it keeps a ring buffer and always judges the middle frame. The room is therefore about a second behind the sky — 22 frames, measured and displayed rather than estimated. Nobody in the room ever sees the present. They see the recent past being confirmed.

Every surface shares that lag exactly, because all of them are drawn from the same processed frame. The visitor cannot catch the room out by looking between them: the surfaces agree with each other, and all of them disagree with now.


Why "timekeeper"

Most of the tracks are muons. A muon is made about 15 km up when a cosmic ray — often a proton thrown out of a supernova or an active galaxy, possibly millions of years ago — strikes the top of the atmosphere. A muon lives about 2.2 microseconds. At that lifetime it should decay roughly 660 m into its journey and never reach the ground at all.

It reaches the ground anyway, because it is moving fast enough that its clock runs slower than ours. Every line in the box is therefore a visible consequence of time being relative: a particle that exists at sea level only because it disagrees with the building about how long the trip took.

The timekeeper of the title is not the installation, and not the visitor. It is the particle. The room is only the dial.


Removing agency, on purpose

Interactive work usually opens by handing the visitor a lever. This piece deliberately does not. There is no button, no proximity trigger, no gesture, and nothing anybody can do to raise the rate. Standing closer does not help. Waving does not help. Waiting does not cause anything either — it just increases the chance you are looking the right way when something happens.

What is left, once the levers are gone, is attention. The piece asks for the one thing a room full of screens has trained out of people: staying still in the dark long enough for something rare to be worth noticing. The reward for that patience is small, brief, and completely real — which is precisely the argument.


The room will mostly be dark

At sea level roughly one muon crosses each square centimetre per minute. Scaled to the chamber's active window and the strictness of the track gate, the honest expectation is a handful of flashes per minute, unevenly spaced, sometimes with a minute of nothing between them.

That emptiness is not a shortfall to be engineered away. A flash every two seconds would be more comfortable and would mean nothing. The rarity is the only thing that makes the event legible as an event.

Position, in one line

Build a detector honest enough that the light can only ever mean one thing, then make a room out of it and take the buttons away.

Reads asDeep time, made briefly local
MediumReal detection, not simulation
Visitor roleWitness, not operator
Failure modeAny fake flash voids the piece
PaceSet by the sky, not the curator
Lineage
  • C.T.R. Wilson's chamber, 1911 — weather apparatus that accidentally became a particle detector.
  • The tradition of instruments that are also images.
  • Duration pieces that ask for waiting rather than input.
07 Proposed final installation Built · Proposed · Open
Where this actually is
StageFormStatus
Prototype Three projections — raw, detect, trails — from one camera and one browser, onto two walls and a hanging mesh cloth Built and running. Detection validated against Observation #3.
Proposed final The room in 05 — three wall projections and a tensioned mesh canopy over a centred plinth Modelled, not built. Depends on the prototype proving the event rate is worth a room.

An earlier study hung an array of lit spheres over the plinth instead. It was dropped: a sphere can say an event happened there, but it cannot show the chamber, and without the chamber in the room there is nothing for the visitor to check the claim against. Projection keeps the evidence and the claim in the same space.


Elevation of the proposed installation: pale walls, a tensioned mesh canopy overhead, and a plinth at the centre.
FIG 7.1Proposed final installation — three wall projections and a mesh canopy over a centred plinth.
Walkthrough model
If the viewer does not load Should Not Be Here — walkthrough model Use "Open model full screen" below
Open model full screen Orbit to navigate. Falls back to the link if the viewer is blocked.
Exported views

Prototype — bill of materials
Projectors3 × short-throw, ≥ 2500 lm, 1080p
MachineMini PC, 3 video outputs, Chrome
CameraUSB, manual exposure, fixed mount
CanopyPolyester scrim, tensioned corner to corner
Plinth≈ 1.0 m column, matt black, removable top
Chamber bayInsulated, dry-ice drawer, anti-glare glass
WallsMatt black, ≤ 3% reflectance
SoftwareStatic folder, served locally. No install.
Output states
StateTriggerWhat the room does
DarkDefaultEvery surface near black. No attract mode.
EventConfirmed trackOne wall takes the arrival and runs it; the canopy shows the chamber it came from.
ResiduePost-eventThe canopy still carries the chamber after the walls have gone dark again.
FillingFirst ~45 framesNothing projected until the ring buffer is full. The room stays honest rather than guessing.
FaultChamber inactiveCounter shows the last event time. No light. The piece is honest about being down.

Open questions
  • Where the canopy projector goes — up from the plinth, or raking across from a high corner. See 05; the prototype should settle it rather than an opinion.
  • Dry-ice duration versus exhibition hours. A Peltier stack removes the daily reload but adds vibration, which the band-pass will read as signal.
  • Whether the three wall projections should show the same arrival or three different ones — one event surrounding you, or three competing for attention.
  • Whether the counter is shown to visitors at all, or kept for maintenance.
  • Canopy coverage — whether it should span the whole ceiling or leave the corners open, so there is somewhere in the room to stand outside it.
Next
  1. Run an eight-hour unattended session on a live camera and get a real event-rate distribution. Everything above depends on that number.
  2. Re-tune the geometry gate on live camera footage — the current values are measured on Observation #3 at 640 × 360 and are in pixels, so they do not transfer to a different lens or resolution unchanged.
  3. Build the cloth rig at full scale and test the double image and the moiré against real projector optics.
  4. Hang the canopy at full scale and test moiré, brightness balance and how much keystone the curved surface can carry before it reads as a mistake.