YAML Metadata Warning:empty or missing yaml metadata in repo card
Check out the documentation for more information.
π₯ Smart Health Monitor
Edge-AI health monitoring system with offline-first architecture, multi-signal fusion, and adaptive personal baselines.
Quick Start (3 terminals)
# 1. Install dependencies
pip install -r requirements.txt
# 2. Train the model (run once)
python -m ml.train_model
# Terminal A β Start Flask API
python -m backend.app
# Terminal B β Run IoT simulator
python -m simulator.simulate --patient_id 1 --count 60 --anomaly_rate 0.2
# Terminal C β Launch Streamlit dashboard
streamlit run dashboard/app.py
Architecture
IoT Sensor β Kalman Filter β Edge ML β Multi-Signal Fusion β Tiered Alert
β
SQLite (offline buffer)
β
Sync to cloud on reconnect
Alert Levels
| Level | Trigger | Action |
|---|---|---|
| 0 | No anomaly | β |
| 1 | Mild (score>0.4) | Local buzzer |
| 2 | Moderate (β₯2 signals) | SMS via GSM / 2G |
| 3 | Critical (score>0.85 or 3+ signals) | Push notification |
API Endpoints
| Method | Path | Description |
|---|---|---|
| GET | /api/patients |
List all patients |
| POST | /api/patient |
Register new patient |
| POST | /api/vitals |
Ingest sensor reading |
| GET | /api/vitals/<id> |
Get vitals history |
| GET | /api/alerts/<id> |
Get anomaly alerts only |
| GET | /api/baseline/<id> |
Get adaptive baseline |
Key Innovations
- Adaptive Personal Baseline β Welford online algorithm, no raw history stored
- Multi-Signal Fusion β Alert requires β₯2 independent signals to fire
- Kalman Filter β Real-time noise reduction before ML inference
- Offline-First β SQLite buffer + auto-sync on reconnect
- ABDM-Ready β
health_idfield on every patient for Ayushman Bharat integration
Inference Providers NEW
This model isn't deployed by any Inference Provider. π Ask for provider support