This project focuses on capturing videos along with head positions for analyzing Benign Paroxysmal Positional Vertigo (BPPV). The application is a desktop-based solution built to process and analyze data from vertigo glasses in real time or offline, with annotation and editing functionalities.
- Frontend: Built using Electron JS and React JS for a interactive user interface.
- Video Processing: Utilizes the Pupil-UVC library and FFmpeg in Python for efficient handling and processing of video streams.
This project requires Node.js version v20.7.0. Please ensure you have this version installed. If you're using NVM (Node Version Manager), you can switch to the correct version by running:
nvm useIf you haven't installed this Node version yet, you can do so with:
nvm install v20.7.0This project requires Python version Python 3.10.12. Please ensure you have this version installed.
The application is specifically designed to interface with Pupil Labs’ Vertigo Glasses, a sophisticated device that captures high-quality eye-tracking and head-movement data. These glasses provide the foundation for analyzing eye movement patterns and diagnosing vertigo triggers, making them integral to the project.
The Python module in this project acts as the interface between the desktop application and the Vertigo Glasses. Its primary functions include:
1- Capturing Data: Establishing a connection with the glasses to retrieve real-time video streams of eye movements and head positions. 2- Data Conversion: Utilizing tools like FFmpeg to convert video codecs from the format generated by the glasses to formats compatible with the application. 3- Integration: Enabling seamless communication between the glasses and the application, allowing live data analysis, video annotation, and storage for offline usage. 4- The module was developed using libraries provided by Pupil Labs, ensuring accurate and reliable data acquisition.
yarnto install all the dependenciesyarn devto run nodemon development serveryarn buildto compile typescript codeyarn startto run compiled codeyarn lint: to run eslintyarn prettier-format: to format the whole codepython3 app.py: to run python module
