Skip to content
← All experience

UBC Aerial Robotics and Rocketry Club

ARRC builds autonomous aerial vehicles for the Aerial Evolution Association of Canada competition. I worked on the vision stack for the JellyfishV2 airframe, plus the ZeroMQ transport that carried messages between its onboard systems.

ROLE
Computer Vision and Telemetry
WHEN
Sep 2024 - Aug 2025
WHERE
University of British Columbia

Cleaning the frame before detecting anything

A detector is only ever as good as the frames handed to it, and ours came off a camera bolted to a vibrating airframe in whatever light the day provided. So before touching the detector I put a denoiser in front of it: an autoencoder on an RRDBNet backbone, trained adversarially rather than on reconstruction loss alone. That distinction is the whole point. Optimising for pixel distance gets you a frame that scores well and looks smeared, because the cheapest way to be close to the truth everywhere is to blur; the adversarial term pushes the output toward frames that look real, which is what preserves the edges the detector downstream is actually keying on.

Finding heat instead of shapes

The target emits in infrared, so the useful signal is not an outline that a model pretrained on everyday photographs has ever been rewarded for noticing. Training from scratch was not an option with the amount of labelled flight footage we had, so I took YOLOv8 and applied transfer learning to move it onto the emission rather than the silhouette. That put detection roughly 27% higher. It is worth being precise about what that number is: it is measured against our own competition footage, not a public benchmark, and the test set is small enough that I would call it an estimate rather than a result.

Contributions at a glance

  • Placed 2nd of more than 40 teams at the Aerial Evolution Association of Canada, 2025
  • Built an autoencoding denoiser on an RRDBNet backbone trained adversarially, feeding cleaner frames into the detection model downstream
  • Applied transfer learning to YOLOv8 to isolate infrared emission in live flight, improving detection accuracy by an estimated 27%
  • Worked on the ZeroMQ messaging pipeline connecting the airframe's onboard systems
PythonPyTorchYOLOv8GANsOpenCVZeroMQ
Orange-topped hexacopter hovering, lowering a sampling tube toward a barrel
Orange-topped hexacopter hovering, lowering a sampling tube toward a barrel
Four students in UBC Engineering gear assembling the hexacopter in snow
Four students in UBC Engineering gear assembling the hexacopter in snow
Flight plan over the competition site with boundary polygon and landing marker
Flight plan over the competition site with boundary polygon and landing marker