Skip to content
Natnael Masresha Zerihun

Shutterless Calibration of a Thermal Camera and Its Real-Time Streaming Platform

IDEAS (Integrated Detector Electronics AS) with USN · Oslo, Norway · Jan to June 2026 · Academic project · Individual thesis

M.Sc. thesis at IDEAS (Integrated Detector Electronics AS): radiometric characterization of an uncooled LWIR microbolometer camera and development of shutterless drift-compensation methods, together with the FastAPI and React platform used to stream, record, and calibrate it in real time.

  • Thermal imaging
  • Calibration
  • Python
  • FastAPI
  • React
  • Signal processing

Overview

Uncooled thermal cameras drift as their own electronics warm up, and most compensate with a mechanical shutter that briefly blinds the camera. This thesis characterized an uncooled LWIR microbolometer camera (640x480, 12 um pitch, 8 to 14 um band) and developed shutterless calibration alternatives, so the camera stays uninterrupted while staying radiometrically usable. The second half of the work was the platform around the camera: a real-time acquisition and streaming backend plus a web client, used for every measurement and demonstration in the thesis.

Technical approach

  • Characterized the camera against a calibrated blackbody source over a 0 to 110 C sweep in 5 C steps, deriving per-pixel signal transfer function, responsivity, and NETD
  • Recorded cold-start warm-up sequences after thermal-chamber conditioning to quantify fixed-pattern noise and thermal drift
  • Implemented and compared shutterless non-uniformity correction methods: one-point and two-point correction, a lookup-table library of 95 calibration matrices, temperature-indexed calibration with linear interpolation, and scene-based correction
  • Defined image-quality metrics (high-pass roughness, column fixed-pattern noise, spatial sigma) so the platform can select the best correction matrix automatically during live operation
  • Built the streaming pipeline (RTP over UDP ingestion of 16-bit frames at about 10 fps, TCP and WebSocket forwarders for remote camera nodes) and a FastAPI backend with per-client sessions, recording, and calibration control
  • Built a React and TypeScript web client with live visualization, camera control, statistics and histograms, and PDF reporting

Results

  • Minimum median NETD of 99.3 mK near a 40 C blackbody setpoint (interquartile range 93.5 to 105.8 mK)
  • Showed that warm-up drift is offset-dominated: pixel gain stays nearly stable after the initial transient, which is what makes offset-only shutterless correction viable
  • In a 10-minute stability comparison the lookup-table correction kept spatial noise roughly constant while one-point and two-point corrections degraded several-fold
  • Scene-based correction showed to be a better approach when the scene has enough motion.

Constraints and lessons

Temperature-indexed correction using a single board-temperature proxy performed worst: the same proxy temperature can correspond to different detector states, so drift compensation needs image-derived quality metrics rather than temperature alone. Scene-based correction works well with motion but introduces ghosting on static scenes.

Media

Thermal camera on a small tripod next to raw and processed thermal image frames
The camera under test, alongside a raw frame and processed thermal views.
Web dashboard showing a live thermal image next to an RGB camera view with control panels
Live data acquisition in the web platform: thermal and RGB streams side by side with histogram, statistics, and calibration controls.
Line plot of median NETD versus blackbody temperature with shaded interquartile band
Median NETD against blackbody temperature with interquartile range; the minimum sits near the 40 C setpoint.
Diagram of UDP frame building with TRAW block and appended temperature value
Frame assembly for recording: UDP packets are built into TRAW frames (614,400 bytes) with a 2-byte temperature register value appended.

Resources

Also listed under: Software & Machine Learning