Overview
An end-to-end IoT dashcam system that detects car crashes in real time using on-device machine learning and multi-sensor fusion. When a crash is detected, the system automatically captures a video clip, extracts GPS and accelerometer windows around the event, and uploads everything to a cloud backend accessible through a web dashboard.
Edge ML: SOTA Diluted for the Real World
The ML pipeline is inspired by the Dynamic-Spatial-Attention RNN (DSA-RNN) from Chan et al. (2016), a state-of-the-art crash anticipation model using Faster R-CNN, VGG16, and spatial attention. Running that on a Google Coral Dev Board is a non-starter, so the architecture was rethought from the ground up for Edge TPU constraints.
Two-stage inference:
-
Fine tuned MobileNetV2 replaces VGG16 as the feature extractor. Fine-tuned on the Car Crash Dataset (CCD)
-
LSTM 10-frame sliding windows of fine tuned MobileNetV2 embeddings.
Training was done in a Google Colab environment on a L4 GPU.
Firmware
| Device | Role |
|---|---|
| Coral Dev Board | ML crash detection |
| Pycom Pysense | Acceleration trigger from crashing (> 2.5G) |
| Pycom Pytrack | Location context |
Cloud
- Backend: async FastAPI + PostgreSQL + Traefik, Auth0 JWT, API key auth for devices
- Webapp: React + TypeScript + Auth0
