7
Most read
8
Most read
9
Most read
OpenViBE Tutorial
Using OpenViBE for EEG Signal Processing and BCI
Development
Contents
1. Introduction to OpenViBE
2. Key Features and Capabilities
3. OpenViBE Software Components
4. Installation and Setup
5. Creating a Simple Demo
6. Comparison with Other EEG Tools
7. Additional Tools in EEG and BCI
8. Q&A Session
Introduction
● Open-source software for
real-time EEG data
acquisition, processing, and
visualization.
● Developed by Inria, France.
● Widely used in Brain-
Computer Interface (BCI)
research and development.
Installation and Steps
Requirements:
● Supported OS: Windows, Linux
● EEG Hardware: Compatible device (e.g.,
Emotiv, OpenBCI)
Steps:
1. Download the installer from the OpenViBE
website.
2. Follow installation instructions.
3. Configure the acquisition server for your
hardware
Key Features of OpenViBE
1. Real-Time Signal Processing:
● Acquire and process EEG signals in real-time, enabling
immediate analysis and feedback.
2. BCI Algorithm Support:
● Implement and test various BCI paradigms such as motor
imagery, P300, SSVEP, etc.
3. Customization:
● Create custom signal processing pipelines and visualizations
using a drag-and-drop interface.
4. Extensive Device Support:
● Compatible with multiple EEG hardware systems, making it
versatile for different setups.
OpenViBE Software Components
1. Designer
2. Acquisition Server
3. Player
4. Visualizer
OpenViBE Acquisition Server
Purpose:
● Interface between OpenViBE and EEG hardware
for data acquisition.
Features:
● Supports a wide range of EEG devices (e.g.,
Emotiv, OpenBCI, g.tec).
● Configuration options for sampling rate, channels,
and other device-specific settings.
● Real-time data streaming to the Designer and
Player.
Usage:
● Essential for capturing real-time EEG data from
supported hardware.
OpenViBE Designer
Purpose:
● Create and edit scenarios for EEG signal processing
and BCI applications.
Features:
● Intuitive drag-and-drop interface for designing signal
processing pipelines.
● A wide range of pre-built boxes (modules) for various
processing tasks (e.g., filtering, classification,
visualization).
● Ability to save and load scenarios for reuse and
modification.
Usage:
● Ideal for researchers and developers to prototype
and test new BCI paradigms without extensive
coding.
OpenViBE Typical Use Case/Setup
OpenViBE Visualizer
Purpose:
● Visualize EEG data in real-time.
Features:
● Various visualization options, including time-
series plots, 3D topography, and more.
● Customizable display settings for better clarity
and analysis.
Usage:
● Helps researchers and developers to interpret
and analyze EEG signals during experiments.
OpenViBE Player
Purpose:
● Execute and visualize scenarios created in the
Designer.
Features:
● Real-time processing of EEG data as defined in the
scenario.
● Ability to start, stop, and monitor scenario execution.
● Visualization tools for observing the processed
signals.
Usage:
● Used to run scenarios and observe the output in real-
time, making it crucial for BCI experiments and
demonstrations.
Hands-On Demo Overview
Steps:
1. Set up the Acquisition Server.
2. Design a simple processing
scenario.
3. Run the scenario in real-time.
4. Visualize the EEG data.
Hands-On Demo Steps
1. Generic Stream Reader ->
load sample file from
scenarios
2. Signal Display
3. Temporal Signal Filter
4. Signal Display
Comparison OpenVibe vs EEGLAB vs MNE
Criteria OpenVibe EEGLAB MNE-Python
Type Open-source software MATLAB toolbox Python library
Primary Use
Real-time EEG data acquisition,
processing, and visualization EEG signal processing and analysis
Processing, analysis, and
visualization of EEG/MEG data
Installation Requirements
Standalone application( Windows and
Linux)
MATLAB (commercial) No OS
Dependent
Python environment -No OS
Dependent
Ease of Setup
Moderate (requires hardware
configuration) Moderate (requires MATLAB setup)
Moderate (Python package
management)
Supported Hardware Multiple EEG devices Various EEG systems Various EEG/MEG systems
Data Analysis
Real-time signal processing, BCI
algorithms
Time-frequency analysis, ICA, ERP
analysis
Advanced signal processing, source
localization
Visualization Real-time visualizations Various plots Rich visualization options
Real-Time Processing
Strong support for real-time BCI
applications Limited (primarily offline analysis) Limited (focus on offline analysis)
Extensibility Custom scenarios, Python scripting Plugins available Extensible with Python
User Interface GUI
GUI and command-line (MATLAB
environment) Command-line and scripting (Python)
User Friendliness High (intuitive interface) Moderate (requires MATLAB)
Moderate (requires Python
knowledge)
Additional Tools in EEG and BCI
BCIlab BCI2000 NeuroPy
Brainstorm
IVE 2024 Short Course - Lecture12 - OpenVibe Tutorial

IVE 2024 Short Course - Lecture12 - OpenVibe Tutorial

  • 1.
    OpenViBE Tutorial Using OpenViBEfor EEG Signal Processing and BCI Development
  • 2.
    Contents 1. Introduction toOpenViBE 2. Key Features and Capabilities 3. OpenViBE Software Components 4. Installation and Setup 5. Creating a Simple Demo 6. Comparison with Other EEG Tools 7. Additional Tools in EEG and BCI 8. Q&A Session
  • 3.
    Introduction ● Open-source softwarefor real-time EEG data acquisition, processing, and visualization. ● Developed by Inria, France. ● Widely used in Brain- Computer Interface (BCI) research and development.
  • 4.
    Installation and Steps Requirements: ●Supported OS: Windows, Linux ● EEG Hardware: Compatible device (e.g., Emotiv, OpenBCI) Steps: 1. Download the installer from the OpenViBE website. 2. Follow installation instructions. 3. Configure the acquisition server for your hardware
  • 5.
    Key Features ofOpenViBE 1. Real-Time Signal Processing: ● Acquire and process EEG signals in real-time, enabling immediate analysis and feedback. 2. BCI Algorithm Support: ● Implement and test various BCI paradigms such as motor imagery, P300, SSVEP, etc. 3. Customization: ● Create custom signal processing pipelines and visualizations using a drag-and-drop interface. 4. Extensive Device Support: ● Compatible with multiple EEG hardware systems, making it versatile for different setups.
  • 6.
    OpenViBE Software Components 1.Designer 2. Acquisition Server 3. Player 4. Visualizer
  • 7.
    OpenViBE Acquisition Server Purpose: ●Interface between OpenViBE and EEG hardware for data acquisition. Features: ● Supports a wide range of EEG devices (e.g., Emotiv, OpenBCI, g.tec). ● Configuration options for sampling rate, channels, and other device-specific settings. ● Real-time data streaming to the Designer and Player. Usage: ● Essential for capturing real-time EEG data from supported hardware.
  • 8.
    OpenViBE Designer Purpose: ● Createand edit scenarios for EEG signal processing and BCI applications. Features: ● Intuitive drag-and-drop interface for designing signal processing pipelines. ● A wide range of pre-built boxes (modules) for various processing tasks (e.g., filtering, classification, visualization). ● Ability to save and load scenarios for reuse and modification. Usage: ● Ideal for researchers and developers to prototype and test new BCI paradigms without extensive coding.
  • 9.
  • 10.
    OpenViBE Visualizer Purpose: ● VisualizeEEG data in real-time. Features: ● Various visualization options, including time- series plots, 3D topography, and more. ● Customizable display settings for better clarity and analysis. Usage: ● Helps researchers and developers to interpret and analyze EEG signals during experiments.
  • 11.
    OpenViBE Player Purpose: ● Executeand visualize scenarios created in the Designer. Features: ● Real-time processing of EEG data as defined in the scenario. ● Ability to start, stop, and monitor scenario execution. ● Visualization tools for observing the processed signals. Usage: ● Used to run scenarios and observe the output in real- time, making it crucial for BCI experiments and demonstrations.
  • 12.
    Hands-On Demo Overview Steps: 1.Set up the Acquisition Server. 2. Design a simple processing scenario. 3. Run the scenario in real-time. 4. Visualize the EEG data.
  • 13.
    Hands-On Demo Steps 1.Generic Stream Reader -> load sample file from scenarios 2. Signal Display 3. Temporal Signal Filter 4. Signal Display
  • 14.
    Comparison OpenVibe vsEEGLAB vs MNE Criteria OpenVibe EEGLAB MNE-Python Type Open-source software MATLAB toolbox Python library Primary Use Real-time EEG data acquisition, processing, and visualization EEG signal processing and analysis Processing, analysis, and visualization of EEG/MEG data Installation Requirements Standalone application( Windows and Linux) MATLAB (commercial) No OS Dependent Python environment -No OS Dependent Ease of Setup Moderate (requires hardware configuration) Moderate (requires MATLAB setup) Moderate (Python package management) Supported Hardware Multiple EEG devices Various EEG systems Various EEG/MEG systems Data Analysis Real-time signal processing, BCI algorithms Time-frequency analysis, ICA, ERP analysis Advanced signal processing, source localization Visualization Real-time visualizations Various plots Rich visualization options Real-Time Processing Strong support for real-time BCI applications Limited (primarily offline analysis) Limited (focus on offline analysis) Extensibility Custom scenarios, Python scripting Plugins available Extensible with Python User Interface GUI GUI and command-line (MATLAB environment) Command-line and scripting (Python) User Friendliness High (intuitive interface) Moderate (requires MATLAB) Moderate (requires Python knowledge)
  • 15.
    Additional Tools inEEG and BCI BCIlab BCI2000 NeuroPy Brainstorm