Does a low-resolution thermal camera find people in darkness and smoke, and what does misalignment cost?
research/sensing-thermalfuse
Does a low-resolution thermal camera find people in darkness and smoke, and what does misalignment cost? On synthetic scenes RGB finds 36% in bright light and none in the dark or dense smoke, thermal alone 65% everywhere (capped by warm decoys), fusion 94% in bright light and the thermal level otherwise; a 4 px (one thermal pixel) displacement costs the fused detector 19 points and 6 px erases the gain. Synthetic only.
What it found
Synthetic 64×64 scenes with people, cold clutter and warm non-person decoys, seen by a grey RGB camera (shot and read noise, smoke airlight) and a 16×16 thermal camera (0.3 K noise, 10% of the visible smoke extinction assumed). At 10% false alarms per image, RGB alone finds 36% of people in bright clear light, 13% at smoke transmittance 0.4 and none in the dark or dense smoke; thermal alone finds 65% in every condition, capped by the decoys; fusing them gives 94% in bright light and falls back to the thermal level otherwise. A thermal camera displaced by 2 px costs the fused detector 7 points, 4 px (one thermal pixel) 19, and 6 px leaves it below RGB alone (0.12 vs 0.37); training with displacement jitter keeps 0.54 at 6 px but loses 9 points when aligned. Stylised: synthetic scenes, logistic-regression detectors on local contrast, sideways shift only, no real data.
A figure from its own output
Paper, code and results
More in Sensing, imaging and 3D
- Which upgrade buys the most visual-inertial accuracy: a sharper camera or a better IMU?Which upgrade buys the most visual-inertial accuracy, a sharper camera or a better IMU? On a planar synthetic smoother only camera resolution moved drift (1280 px 1.2 % vs 1.7 % at 640 px); a 0.25–4× change in IMU noise did not, on 12 s paths. Stylised, not EuRoC.
- Does bundle adjustment repair wrong camera poses in a multi-view reconstruction?With 12 views, 0.5 px noise and every camera pose wrong, bundle adjustment cuts mean surface error from 0.0117 to 0.0014 object radii (the true-pose floor), 8× here and 73× at 0.2 radii of position error, but only 1.4× at 4 px of pixel noise and not at all with 4 views. Synthetic only
- Does bundle adjustment that solves for the focal length survive a wrong assumed focal length or lens distortion?With 12 views, wrong poses and a focal length told 5% wrong, a fixed-focal adjustment costs 1.2× the true-focal error (2.7× at 20%); solving for the focal returns the floor with the focal within 0.3%, and for k1 = −0.3 distortion 0.0034 falls to 0.0015, but not at 4 views or above 2 px noise. Synthetic only
- If the lens has a second radial term the solver does not model, does self-calibrating bundle adjustment still recover the surface?Rendering with k1 = −0.2 and k2 swept from −0.2 to +0.4, a bundle adjustment solving for the focal and k1 only returns 0.0015 object radii, the same as one that also solves k2, against 0.0022–0.0030 with no distortion model; the lens parameters are not separately identified (k1 stays near −0.16, k2 sits about 0.16 low) and the gain vanishes by 2 px noise. Synthetic only
- Does a wide field of view make the second radial lens term identifiable in self-calibrating bundle adjustment?Moving the camera in and shortening the focal length (800 to 400 px) raises the largest normalised radius from 0.34 to 0.85, and the spread of the fitted k2 over seeds falls from 0.33 to 0.02 with its mean within 0.01 of truth; the surface then needs k2 (0.0027 with k1 only against 0.0020 with both). Synthetic only
- How many mismatched feature observations can bundle adjustment survive, and does a robust loss help?With 12 views and wrong camera poses, 2% of observations replaced by random pixels already raise bundle-adjustment surface error from 0.0014 to 0.079 object radii, and Huber or Cauchy loss from the usual all-view start only halve that; a per-point RANSAC start fixes 5% (0.0319) but only 24 views get back to the clean floor at 10% (0.0012). Synthetic only
All 31 Sensing, imaging and 3D projects →
Other research topics
Proper scoring & elicitation28Effort & peer prediction9Verification games & slashing19Detection & tolerances14Markets as routers13Prediction-market design9Paying contributors8Decentralised training systems23Digital twins & sim-to-real164LLM chip design loops40Robot manufacturing loops53Ambient AI assistant46Self-replicating manufacturing34Simulation-first design64Engineered clothing45Task-specific AI accelerators40Algorithmic chip-design loops42Open-source purpose-built robots44The software-engineering loop43Adversarial human imitation41Open-source residential construction41Autonomous multi-angle capture34Sensing, imaging and 3D31Energy supply and dense energy storage39Robot societies among people31Agentic co-design of low-cost robots27Laundry-hanging robots25Machine learning on qualitative data23Robots on the building site27Civilizations & group psychology1History & human sciences1
Produced with AI assistance (Claude). Results are from the code in this repository and are simulated or stylised unless the abstract says otherwise; nothing here implies affiliation with or endorsement by any lab, researcher or company cited. MIT licensed.