EDGE-DATA
An Android app that records driving data and labels it on the device
- Status
- Live
- Version
- 0.2.0
- Platform
- Android app
- License
- Not specified
Autonomous driving datasets are dominated by Western roads, and Indian traffic (auto-rickshaws, hand carts, cattle, unmarked intersections, flooding) is under-represented because collecting that data is expensive. The premise is that a phone on a windscreen is a usable capture rig that can turn an ordinary drive into an indexed, labelled dataset.
How it is put together.
EDGE-DATA records timestamp-synchronised video, GNSS and IMU on a phone, runs YOLOv11n locally to find road users in the footage, mines the motion sensors for driving events such as hard braking and swerves, and indexes everything into a searchable on-device dataset. Trips can be played back with seek-to-detection, mapped offline, and exported as GeoJSON, COCO or YOLO. The README is explicit that the bundled COCO-trained model can produce only 9 of the 38 taxonomy labels, that no fine-tuned Indian-roads model exists yet, and that the cloud tier in ARCHITECTURE.md is a design, not a built system.
- 1
Recording service
Foreground RecordingService for camera and sensors
app/src/main/java/com/edgedata/app/service/ - 2
Data layer
Room database, sensor collectors, metadata writer, scene classifier, exporter, power monitor, upload client, retention
app/src/main/java/com/edgedata/app/data/ - 3
Detection
EdgeCaseDetector interface, YoloV11Detector, ModelRegistry
app/src/main/java/com/edgedata/app/ml/ - 4
Domain
Models, taxonomy, repository contracts, event miner (pure Kotlin)
app/src/main/java/com/edgedata/app/domain/ - 5
UI
Compose screens: record, trips, player, map, dataset, insights, settings
app/src/main/java/com/edgedata/app/presentation/
Specification.
- Capture
- 1080p H.264 video + GNSS + IMU JSONL sidecar on one elapsedRealtimeNanos() clock, from a foreground service
- Detection
- YOLOv11n via raw TFLite interpreter (XNNPACK CPU) with from-scratch letterbox and NMS; 9 COCO classes mapped to the taxonomy
- Event mining
- Hard braking/acceleration from GNSS speed, swerves and impact spikes from IMU, sustained-crawl traffic jams — no model
- Taxonomy
- 7 categories, 38 labels; custom fine-tuned .tflite + labels.txt loadable from external storage
- Index and review
- Room index of detections with box, thumbnail, geotag, video offset, review state; playback seeks to the detection frame
- Export
- GeoJSON, COCO and YOLO on device via the system share sheet; offline map of route and detections
- Field data so far
- 8 drives, 2,132 indexed events (959 vision, 1,173 sensor-mined); sensor counts from an older, inflated miner
- Platform
- Android 12+, tested on one phone model; 44 JVM unit tests
- Runs on
- Android app distributed as a debug-signed APK in Releases or built with Gradle
Releases.
- v0.2.0Capture fixes from on-device testing, plus playback, map, upload and retention.
- v0.1.0