A blink-based calling system for ALS patients, detecting custom blink patterns to trigger hands-free calls.
English | 简体中文
Blink-Call is an assistive calling system designed for ALS patients. It recognizes user-defined blink patterns from camera input and triggers visible and audio call alerts without requiring speech, hand movement, or physical touch.
- Minimal interaction: Only eye blinks are required.
- Lightweight resource usage: Runs in a CPU-only environment with less than 500 MB of memory usage.
- User-friendly features:
- Customizable blink patterns, alert audio, volume, and duration.
- Support for both local and remote camera modes for flexible deployment.
- One-click model download and update support.
- Logging and debugging options for clinical use and algorithm improvement.
If you want to get started quickly, begin here:
- 📦 You can download the latest version of the software from:
- 📖 User Guide: Online User Manual
Note
Currently, the software is only available for direct download and use on Windows.
This project includes developer documentation and setup guidance to help you get started quickly.
-
Step 1: Clone the Repository
git clone https://github.com/JouleEmbodiedAILab/blink-call.git cd blink-call -
Step 2: Setup Conda Environment and Dependencies
For Linux and macOS
# default conda environment name -> blink_call bash ./scripts/linux/setup_conda.sh [--name <env_name>]
For Windows
# Default conda environment name: blink_call # Ensure that the `conda` command is available in your terminal, # or run this in Anaconda Prompt. powershell -ExecutionPolicy Bypass -File ./scripts/windows/setup_conda.ps1 [-Name <env_name>]
-
Step 3: Start the Application
conda activate blink_call python -m blink_call.setup_app
This repository does not handle model training and ONNX model file replacement. Offline training resources for the related models can be found in the following repositories:
After obtaining the corresponding ONNX model files, replace the files in the ModelScope model repository.
Warning
When updating ONNX models, ensure that both file paths and filenames remain exactly the same.
When releasing a software version, please add a tag with the same version name to the ModelScope repository.
After development is completed, the software can be built with Nuitka for standalone distribution. The Nuitka build command is shown below.
- For Windows
conda activate blink_call powershell -ExecutionPolicy Bypass -File ./scripts/windows/build_nuitka.ps1
To update the online user manual:
Please edit the contents of mkdocs.yml and the corresponding docs/*.md files in the user_manual/ directory.
To preview the documentation locally, run:
mkdocs serveThen open http://127.0.0.1:8000/ to view changes in real time.
When you're ready to publish updates, run:
mkdocs gh-deployThis command will automatically build the site and deploy it to GitHub Pages.
Note
Note: All mkdocs commands should be executed inside the user_manual directory.
MIT License. See LICENSE for details.