Preprocessing Integration Guide
Complete workflows for preprocessing EEG data with external tools and using the features in NimbusSDK.jl.New to preprocessing? Start with Preprocessing Requirements for an overview before diving into specific tools.
Integration Options
| Tool | Language | Difficulty | Best For |
|---|---|---|---|
| MNE-Python | Python | Easy | Complete workflows, research |
| EEGLAB | MATLAB/GUI | Medium | Visual inspection, ICA |
| OpenVibe | GUI | Easy | Real-time preprocessing |
MNE-Python Integration
Complete pipeline for Motor Imagery preprocessing with MNE-Python.Installation
Complete Motor Imagery Pipeline
Loading in Julia
P300 Detection Pipeline
EEGLAB Integration
EEGLAB provides powerful ICA and visualization tools.MATLAB Pipeline
Alternative: Direct CSP in MATLAB
OpenVibe Integration
OpenVibe provides GUI-based real-time preprocessing.OpenVibe Scenario for Motor Imagery
- Signal Acquisition → Connect to your EEG device
- Temporal Filter → 8-30 Hz bandpass for motor imagery
- Spatial Filter → Common Average Reference (CAR)
- Spatial Filter → CSP (requires training with labeled data first)
- Feature Extraction → Log-variance of CSP
- Generic Stream Writer → Save to CSV or stream directly
Exporting from OpenVibe
Data Shape Transformation
Critical: Different tools output different shapes. Always verify:MNE-Python → Julia
EEGLAB/MATLAB → Julia
OpenVibe CSV → Julia
Quality Checks
Python Preprocessing Check
Julia Loading Check
Common Issues and Solutions
Issue 1: Wrong Data Shape
Error:Dimension mismatch: expected (n_features, n_samples, n_trials), got (trials, features, samples)
Solution: