Section 01
Problem Statement
Construction sites kill workers through falls, "struck-by" events, scaffold collapses, and silent scaffold tilt. A single safety officer cannot watch 80 people 8 hours a day. Wearables fail because they are extra devices. A team with a phone needs to turn the phone into the only safety node: detect PPE violations with CameraX + TFLite, warn when the phone's own accelerometer registers a fall, use the phone speaker to announce when camera + compass + GPS detect a worker inside an exclusion zone, and score daily risk from the phone's mic (hearing equipment noise) and barometer (air-pressure change = approaching storm) — with no extra sensor.
Section 02
Solution Requirements
On-device PPE detection
CameraX feed + TensorFlow-Lite / ML Kit object-detection model (YOLOv8 or MediaPipe ObjectDetector fine-tuned) running on-device at ≥ 10 FPS at 640×480. Detects 5 PPE items (helmet, hi-vis, boots, goggles, harness). Each violation draws a bounding box + red text label on screen, demoed live through the phone's back camera on a partner.
Fall / impact detection via accelerometer
Phone worn in an armband or lanyard. A TYPE_LINEAR_ACCELERATION / TYPE_ACCELEROMETER filter computes RMS > 2.5g spike + orientation change > 45° from vertical + no re-upright in ~25s → triggers on-screen + vibration + TTS/audio alert, logs to an in-app dashboard showing the last 3 events. Calibrated so normal walking/running does not trigger it.
Exclusion-zone proximity (two phones, no BLE hardware)
Phone A = the worker, Phone B = the equipment. Both share Fused Location or ARCore world-tracking pose on a known site coordinate map. When distance ≤ 2m, both phones buzz + TTS: "Move away from excavator." GPS is replaced by ARCore AugmentedFrame pose when indoors.
Scaffold / platform tilt check (no external sensor)
Phone (on a lanyard) is laid on the scaffold deck or a real plank/rebar stack. Gravity + gyroscope are filtered (Kalman / complementary). Tilt > 3° sustained 5s triggers a "Scaffold instability – zone 3" push alert. Demoed on a tilted phone against a stack of books.
Voice-activated safety log + offline sync
Worker speaks "missing helmet, bay 2" over headset mic → SpeechRecognizer (offline model where available) → writes a row → syncs to the supervisor phone over WebSocket / Firebase Firestore once connectivity returns. Must still log while in airplane mode.
Privacy-by-design
Faces are never stored — only a bounding box + hashed on-device ID. A "blur-mode" toggle uses CameraX + ML Kit FaceMesh to mosaic any saved frame. PRIVACY.md shipped with the repo.
Non-functional requirements
≥ 15 FPS, < 250MB RAM, alert latency < 1.5s, works on Android 10 mid-range hardware, offline-first.
Section 03
Expected Solution / Outcomes
- Field video shows a partner wearing no helmet → on-screen detection → helmet worn → box disappears → green "OK" (live on phone, not emulator).
- Same or a different video shows a partner falling from a step; the armband accelerometer triggers a red alert + beep.
- A third video shows two phones walked around a lot/stairwell until within 2m: both buzz.
- Phone placed on the edge of an upturned box (simulating a wobbling plank) triggers the tilt alarm.
- A supervisor phone shows a map with red violation pins after airplane-mode logging resumes.
Section 04
Technology & Hardware Constraints
Data: OSHA incident CSV (public), PPE-COCO construction image set.
Section 05
Scoring
Requirements Completeness
50
Each requirement (R-id) is worth 3–12 marks. A hard-coded or mocked claim earns 0 — only working code counts.
Presentation & Demo
50
3-slide pitch + video ≤ 7 min + live demo. Judges must understand the problem in ≤ 90 seconds.
Real-world Implementation & Feasibility
50
Would a PM, engineer, or worker install this with only a phone on Day 1 of the next project? Must work offline and cheaply. Field-trial videos prove real-environment execution (20+ pts of this score is the field video).
Innovation & Disruption
50
A novel fusion of phone sensors (e.g. IMU + camera + barometer = scaffold-instability detector) is rewarded over simple API-calling. Re-skinning an existing SaaS scores low.
Section 06
Bonus (+10)
Fuse the phone microphone with on-device YamNet audio classification: if the phone hears a jackhammer and the worker's PPE 'earplug' class is missing, trigger "Ear protection required." No extra microphone hardware needed.
Section 07
Deliverables
| Item | Format |
|---|---|
| Video Demo | ≤ 7 min, YouTube/Vimeo unlisted link. Must open with the phone alone on a table (no external hardware). |
| Field Trial Videos | Three ≥ 60s outdoor clips covering the fall, exclusion-zone, and tilt scenarios above. |
| Demo Link | Android APK download link (installed on the reviewer's own phone) or a mobile-optimised web app URL. |
| GitHub | Clean repo, working build instructions, README with permissions and model licenses, .gitignore hides Firebase keys. |
| Pitch Deck | 3-slide PDF (Problem → Solution → Field-Proof & Impact). |
| Technical Brief | 2-page PDF: architecture diagram, phone-sensor map, tech stack, limitations, PRIVACY.md. |
Section 08
Field-Trial Requirements
- PPE detection demoed live on a real partner, not a recording.
- Fall detection demoed with a real armband-worn phone.
- Two-phone exclusion-zone test walked in a real outdoor space.
- Tilt sensor demoed on a real tilted surface.
Section 09
Privacy Requirements
Any human face captured in a field video must be consented or blurred. A PRIVACY.md file is required in every repository.
