AI

Wingman: Hazard Detection and Warning System for Cyclists

Road cyclists need eyes in the back of their heads: traffic can approach quickly from behind while a rider's attention stays on the road ahead. Garmin's Varia Radar addresses the same problem, but at about $200 it does not distinguish vehicle type or indicate whether traffic is approaching from the rider's left, right, or directly behind.

Wingman is a computer vision-based second set of eyes for cyclists. At about $10 in materials, the prototype is roughly 20x cheaper than Garmin's radar-based alternative. Built from commercial off-the-shelf hardware, it uses a rearward-facing camera connected to an ESP32 microcontroller and the processing power already in a rider's phone to locate and classify traffic approaching from behind.

Garmin's newer $399.99 Varia RCT715 adds dashcam-style rear-facing recording, a capability Wingman's camera-based design can also provide, but at a substantially higher hardware cost.

The mobile interface uses Kivy. A Python edge-computing pipeline uses TensorFlow Lite and the MobileNet model for computer vision and classification, then estimates monocular distance with XGBoost using the KITTI Vision Dataset and an approach informed by the University of Bremen's 2018 DisNet paper.

Wingman product mockup and poster Wingman bike, Arduino, and phone render Wingman Arduino render

Real-Time Profanity Filtering in Audio

Low-latency profanity filter using the Google Cloud Speech-to-Text API with PyAudio and Python multiprocessing to manage parallel input and output audio streams.

Profanity filtering icon