reid.wiki

Projects / Autonomy & Drones

Thermal Image Classification

On-aircraft animal detection from FLIR thermal video: from a naive threshold detector that failed in Texas summer to quantized YOLO on an Edge TPU.

Status
Paused
Timeline
2024 to 2025
Last updated
July 2025
YOLOv5nTensorFlow LiteCoral Edge TPUTensorRTONNXOpenCVFLIR Boson

Why edge inference

Detection has to run on the aircraft. The mission code needs answers immediately (track this, re-pass that, notify now), and a video round-trip to the ground station adds latency and a single point of failure. So the classifier lives next to the camera.

V1: threshold detection

The first pass was classic computer vision: threshold the thermal image, extract contours, call anything hot an animal. It worked well indoors. Outdoors in a Texas summer it fell apart: by afternoon, the ground is hotter than the animals, and anything cooler than the background is invisible to a hot-spot detector.

V2: YOLO on an accelerator

The replacement is a YOLOv5-nano model quantized to TFLite running on a Coral Edge TPU, with export paths also built for TensorRT and ONNX. Detection results were significantly better than thresholding from the first tests.

The interesting decision was architectural: Edge TPU + Raspberry Pi 4 versus consolidating everything on the Jetson Orin Nano. I wrote the tradeoff up properly (accuracy at altitude, power budget, and the maintenance cost of two computers versus one), and it remains the fork in the road when this resumes.

Status

Paused since the July 2025 flight tests. Next steps are unchanged: dataset collection flights, training on real captures instead of transfer-learning approximations, and wiring detections into the mission logic.