Skip to content

TeleICU reduces the burden on intensivists by enabling remote ICU monitoring. Using YOLOv10 and Deep SORT, it allows one professional to monitor multiple patients, enhancing efficiency and care.

License

Notifications You must be signed in to change notification settings

Wydoinn/TeleICU-Monitoring-System

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

TeleICU Monitoring System

Intel Logo TeleICU Logo

πŸ“‹ Table of Contents

πŸ”¬ Problem Statement

Innovative Monitoring System for TeleICU Patients Using Video Processing and Deep Learning

TeleICU is concept for monitoring ICU patients from remote locations to reduce the burden of on-site intensivist. Currently there are multiple products available in this domain where one profession seating at remote location physically monitors one or two remote patients in TeleICU. The proposed solution should work to reduce the burden of remote health care professional so, one remote health care professional can monitor 5 or more patients at single time.

Project Presentation: click here

πŸ” Overview

TeleICU is an innovative remote monitoring system that empowers intensivists to manage more patients efficiently. By leveraging cutting-edge AI technologies, it revolutionizes critical care:

  • YOLOv10: A powerful deep learning model that identifies patients and tracks vitals in real-time video feeds.
  • Deep SORT: Builds on YOLOv10's capabilities, tracking patient movements to create a comprehensive health picture.

🌟 Key Benefits

  • Enables a single intensivist to monitor multiple patients simultaneously
  • Facilitates faster interventions through real-time monitoring
  • Potentially improves patient outcomes
  • Boosts overall efficiency and effectiveness in critical care

πŸŽ₯ Demo

Demo.mp4

πŸ”— Key Resources

πŸ’» Installation

1. Clone the Repository

git clone https://github.com/Wydoinn/TeleICU-Monitoring-System.git
cd TeleICU-Monitoring-System

2. Create a New Environment

Using Conda

conda env create -f conda.yml
conda activate teleicu-monitoring-system
pip install -r requirements.txt

Using Pip

python -m virtualenv -p python3.11.7 teleicu-monitoring-system
source teleicu-monitoring-system/bin/activate
pip install -r requirements.txt

3. Clone YOLOv10 Repository

git clone https://github.com/THU-MIG/yolov10.git
cd yolov10
pip install .

4. Launch the Application

Windows Application

cd ..
python monitor.py

Web Application

python app.py
# Visit http://127.0.0.1:5000 in your browser

πŸ§ͺ Testing

The test.py script provides a GUI application for testing the TeleICU Monitoring System. It's built with PyQt5 and utilizes YOLOv10 models for object and motion detection.

Features

  • Predict and display detections on images, videos, and webcam feeds
  • Annotate detections with bounding boxes and labels
  • Save annotated images and videos
  • User-friendly interface with buttons for different prediction modes

To run the test application:

python test.py

πŸ”„ Model Conversion

The convert.py script offers a simple Tkinter GUI for exporting YOLOv10 models to various formats:

  • TorchScript
  • ONNX
  • OpenVINO
  • TensorRT (GPU availability required)

To launch the conversion tool:

python convert.py

🏷️ Model Classes

Images are annotated using Roboflow

Object Detection

  • Intensivist
  • Nurse
  • Patient
  • Family Member

Motion Detection

  • Falling
  • Standing
  • Sitting
  • Sleeping
  • Walking

πŸ“Š Best Model Performance

Object Detection

YOLOv10 small model with data augmentation:

Class P R mAP50 mAP50-95
All 0.771 0.754 0.794 0.468
Family-Member 0.821 0.753 0.796 0.466
Intensivist 0.802 0.711 0.820 0.519
Nurse 0.674 0.792 0.763 0.469
Patient 0.788 0.762 0.795 0.419

Motion Detection

YOLOv10 small model without data augmentation:

Class P R mAP50 mAP50-95
All 0.798 0.659 0.782 0.459
Falling 0.554 0.778 0.755 0.564
Sitting 0.903 0.599 0.798 0.457
Sleeping 0.944 0.611 0.883 0.524
Standing 0.946 0.658 0.827 0.449
Walking 0.642 0.650 0.644 0.300

πŸ™ Acknowledgements

  • This project is built upon the YOLOv10 model and the DeepSort algorithm.
  • I extend my gratitude to the authors and contributors of the respective repositories used in this project.

πŸ“š References

About

TeleICU reduces the burden on intensivists by enabling remote ICU monitoring. Using YOLOv10 and Deep SORT, it allows one professional to monitor multiple patients, enhancing efficiency and care.

Topics

Resources

License

Stars

Watchers

Forks

Languages