Team Name: Photons
Team Members:
- Abhinav Singh Yadav
- Shubham Kumar
- Anish Udupa
HealthTech | AI | IoT | Elderly Care
Project Lifeline is a state-of-the-art intelligent IoT solution designed to provide safety and peace of mind for elderly individuals and patients living alone. By leveraging advanced computer vision and real-time monitoring, Project Lifeline instantly detects falls and triggers emergency alerts, ensuring that help is on the way when it matters most.
Unlike traditional wearables that can be forgotten or uncharged, Project Lifeline is a non-intrusive, camera-based system that works monitoring the environment. It combines a powerful AI engine with a modern, "Mission Control" style dashboard to keep caregivers informed in real-time.
- Real-Time Fall Detection: Utilizes
MediaPipeandOpenCVto track 33+ body landmarks and analyze posture (Aspect Ratio Logic) to detect falls with high accuracy. - Smart Audio Alarms: Immediately plays an audible siren upon detection to alert the user and anyone nearby.
- Human-in-the-Loop Safety: Features a visual and audio countdown logic. If the user stands up or recovers within the 3-second safety window, the alarm cancels, and no emergency call is made—preventing false alarms.
- Instant Alerts: If a fall persists beyond the safety buffer, the system automatically triggers an emergency call via Twilio.
- Live Dashboard: A stunning, "Cyber-Medical" aesthetic frontend built with React, Vite, and Tailwind CSS that visualizes system status, real-time feedback, and countdown timers.
- API-Driven: Robust FastAPI backend that orchestrates status updates, timer logic, and external communication.
- AI Engine: Python, OpenCV, MediaPipe (Computer Vision)
- Backend: Python, FastAPI, Uvicorn, Twilio SDK (Logic & Alerts)
- Frontend: React, Vite, Tailwind CSS, Lucide Icons, Framer Motion (UI/UX)
- Python 3.8+
- Node.js 16+
- Webcam (Integrated or USB)
Backend & AI Engine
pip install -r requirements.txtFrontend
cd frontend
npm installOpen backend/main.py and update the Twilio credentials to enable calling:
TWILIO_SID = "your_sid"
TWILIO_AUTH_TOKEN = "your_token"
FROM_NUMBER = "+1234567890" // Your Twilio Number
TO_NUMBER = "+0987654321" // Emergency ContactDouble-click start_system.bat on Windows. This will spawn three terminal windows:
- Backend: Starts the API server on port 8000.
- AI Vision: Opens the camera feed for detection.
- Frontend: Launches the dashboard in your default browser.
If you prefer running components individually:
Backend
python backend/run.pyAI Engine
python ai-engine/detector.pyFrontend
cd frontend
npm run dev- Live Frontend: https://project-lifeline-nine.vercel.app/
- Live Backend API: https://project-ifeline-api.onrender.com
- GitHub Repository: https://github.com/higgsboson1710/Project_lifeline
Project_lifeline/
├── ai-engine/ # Computer Vision Logic
│ └── detector.py # Main detection script (Webcam stream analysis)
├── backend/ # API & Alert System
│ ├── main.py # FastAPI App (State management, Twilio calls)
│ └── run.py # Server Launcher
├── frontend/ # React Dashboard
│ └── src/ # Components & UI (SonarRadar, Status Cards)
└── start_system.bat # One-Click Launch Script- Visual Monitoring: The
detector.pyscript continuously processes video frames. It calculates the bounding box of the person.- Aspect Ratio Analysis: If
Width > Height * 1.15, the system infers a "Horizontal Posture" (Fall). IfHeight > Width, it infers a "Vertical Posture" (Safe).
- Aspect Ratio Analysis: If
- Status Sync: The AI engine pushes these status updates to the FastAPI backend (
/update-status). - Safety Buffer (Human-in-the-Loop):
- When a fall is first detected, the backend starts a 10-second timer.
- Frontend: The dashboard immediately turns RED, plays an alarm sound, and shows a countdown ("Calling in 10s...").
- Cancellation: If the user stands up during this 10-second window, the status resets to "SAFE", the timer stops, and the alarm cuts off.
- Emergency Trigger: If the status remains "FALL DETECTED" for the full 10 continuous seconds, the backend executes the Twilio API call to notify the emergency contact.
This project is developed for educational and hackathon purposes.