Skip to content

omarshaban02/Signal-Viewer

Repository files navigation

Multi-Port, Multi-Signal Channel Signal Viewer

Description

Monitoring vital signals is crucial in any ICU room. The Multi-Port, Multi-Signal Channel Signal Viewer is a desktop application built with PyQt and Qt Designer. It provides a user-friendly interface for browsing and visualizing multiple signals for medical signals such as ECG, EMG, EEG, etc, or nonmedical signals on your desktop. This README file provides an overview of the application's features, usage, and setup.

App review

Table of Contents

  1. Features
  2. Installation
  3. Usage
  4. Dependencies
  5. Contributors

Features

  • Signal Selection: Browse your desktop to select signals for viewing.
  • Plotting: Create and manage lists of selected signals for plotting.
  • Playback Control: Play, pause, stop, replay, zoom in, zoom out, and reset view options for each signal.
  • Single-Click Activation: Easily toggle individual signal activation with a single click.
  • Double-Click Activation: Double-click to toggle the activation status of all signals.
  • Port Management: Move signals between different port views for organization.
  • Synchronization: Synchronize two ports to view the same signals simultaneously.
  • Control Actions: Apply control actions to active signals across both ports.

Installation

To install the project, clone the repository and install the requirements:

# Clone the repository
git clone https://github.com/omarshaban02/Signal-Viewer.git
# Navigate to the project directory
cd Signal-Viewer
# Install the required packages:
pip install -r requirements.txt
# Run the application:
python index.py

Usage

  1. Selecting Signals:

    • Click the "Open" button to navigate your desktop and select the signals you want to view.
    • The selected signals will appear in a list.
  2. Ploting Selected Signals:

    • Choose the signals you want to plot from the list
    • Click the "Plot" button to plot it on the graph.
  3. Signal Activation:

    • Single-click on a signal at the graph to activate it to control it.
    • Single-click again to deactivate it.
    • Double-click in any place in the graph to deactivate all signals.
  4. Port Views:

    • Move active signals between port views.
    • Synchronize two ports to view signals simultaneously.
  5. Control Actions:

    • Use the control buttons (Play, Pause, Stop, Replay, Zoom In, Zoom Out, Reset View) to interact with the selected signals.
    • Control actions can be applied to active signals or all signals, depending on your selection.

Screenshots

Light mode:

Screenshot 1

Dark mode:

Screenshot 2

Synchronized mode:

Screenshot 3

Dependencies

This project requires the following Python packages listed in the requirements.txt file:

  • PyQt5
  • opencv
  • numpy
  • pandas

Contributors

Abdulrahman Shawky
Abdulrahman Shawky
omarnasser0
Omar Abdulnasser
Ahmed Kamal
Ahmed Kamal
Abdullah Omran
Abdullah Omran

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages