This project aims to develop a real-time fall detection system using a deep learning model. It is based on a previously published study that achieved an mAP@0.5 of 98.1% using the YOLOv9 model. However, we have re-trained and fine-tuned the model by adjusting parameters and using an updated dataset, achieving an improved final training accuracy of 99.1%.
Following this, the system is developed on an embedded platform using the Raspberry Pi 5 combined with a USB Webcam to ensure flexibility, low cost, and ease of practical deployment.
This solution is designed for deployment in various environments such as homes with elderly or children, unsupervised areas, construction sites, and hazardous zones, aiming to enhance safety and minimize risks caused by falls.

- YOLOv9-based deep learning model for fall detection
- Fine-tuned and optimized model for higher training accuracy
- Post Training Quantization by ONNX/ONNX Runtime (convert float32 to int8)
- Raspberry Pi 5 embedded deployment with USB Webcam
- Low latency for fast response Suitable for elderly, children, construction, hazardous zones.
This project reuses three widely adopted open-source dataset for fall detection, comprising a total of 23,980 images:
| Source | Training | Validation | Testing |
|---|---|---|---|
| Roboflow | 6,493 | 2,150 | 2,150 |
| Kaggle | 291 | 97 | 97 |
| CAUCAFall | 3,812 | 1,285 | 1,286 |
| Addictional | 3,809 | 1,255 | 1,255 |
| Total | 14,405 | 4,787 | 4,788 |
While the original study simplified the task into a single-class binary classification (FallDown only), our approach restructures it into a two-class problem: FallDown and Not_Fallen.
To enhance the model's ability to distinguish between dangerous falls and normal daily activities, we added around 6,000 Not_Fallen images from the CAUCAFall dataset. Each frame is labeled accordingly (class 0 for FallDown, class 1 for Not_Fallen). This design reduces overfitting, improves overall accuracy, and minimizes false positives in real-world deployments such as homes, hospitals, and construction sites. Our new labeled datasets: click here

- Fall detection results:

Achieved high detection performance with a final mAP@0.5 of 99% after re-training and optimizing the YOLOv9 model (50 epochs).

Detection performance on the test set:Class Image Instance Precision Recall mAP50 mAP50-95 All 4788 4807 0.983 0.979 0.991 0.881 Falldown 3488 3490 0.97 0.968 0.988 0.847 Not Fallen 1303 1317 0.997 0.991 0.994 0.915 - Deployment on Raspberry Pi 5:
Comparison of inference performance before and after quantization.Test case Model FPS Latency CPU usage Memory Inference time 1 YOLOv9_FP32_640x640 0.5s 1.92s 147% 5.9% 508.52s YOLOv9_INT8_256x256 4.82s 0.194s 357% 2.7% 58.87s 2 YOLOv9_FP32_640x640 0.45s 1.99s 146.8% 5.5% 551.84s YOLOv9_INT8_256x256 4.63s 0.194s 351% 2.8% 63.96s 3 YOLOv9_FP32_640x640 0.49s 1.92s 144.7% 5.7% 388.75s YOLOv9_INT8_256x256 5.02s 0.186s 361.9% 2.7% 46.58s Authored and presented a scientific paper at the RIVF 2025 International Conference (Scopus indexed), contributing to the development of Computing and Communication Technologies.
Roboflow Fall Detection Computer Vision Project
Kaggle Fall Detection Dataset
Dataset for human fall recognition in an uncontrolled environment
FD-YOLO: A YOLO Network Optimized for Fall Detection
