Skip to main content

Python package for SSVEP datasets and algorithms

Project description

SSVEP Analysis Toolbox

PyPI - Version PyPI - Downloads Read the Docs (version) Read the Docs (version) GitHub code size in bytes

GitHub forks GitHub Repo stars GitHub watchers

This repository provides a python package for SSVEP datasets and recognition algorithms. The goal of this toolbox is to make researchers be familier with SSVEP signals and related recognition algorithms quickly, and focus on improving algorithms with shortest preparation time.

Most conventional recognition algorithms are implemented using both eigen decomposition and least-square unified framework. The least-square unified framework demonstrates various design strategies applied in the correlatiion analysis (CA)-based SSVEP spatial filtering algorithms and their relationships.

More detailed information can be found in document.

The lease-square unified framework has been published in IEEE TNSRE: https://ieeexplore.ieee.org/document/10587150/. If you use this toolbox, the lease-square unified framework, or the new spatial filtering methods (ms-MsetCCA-R-1, ms-MsetCCA-R-2, ms-MsetCCA-R-3, ms-(e)TRCA-R-1, ms-(e)TRCA-R-2), please cite this paper.

  @article{LSFrameWork,
    author={Wang, Ze and Shen, Lu and Yang, Yi and Ma, Yueqi and Wong, Chi Man and Liu, Zige and Lin, Cuiyun and Hon, Chi Tin and Qian, Tao and Wan, Feng},
    journal={IEEE Transactions on Neural Systems and Rehabilitation Engineering}, 
    title={A Least-Square Unified Framework for Spatial Filtering in SSVEP-based BCIs}, 
    year={2024},
    note={early access},
    doi={10.1109/TNSRE.2024.3424410}
  }

Features

  • Mutiple implementations of various algorithms:
    • Eigen decomposition
    • Least-square unified framework
  • Unify formats of SSVEP datasets
  • Provide a standard processing procedure for faire performance comparisons
  • Python implementations of SSVEP recognition algorithms

Datasets and Algorithms

  • Datasets

    • Benchmark dataset: Y. Wang, X. Chen, X. Gao, and S. Gao, "A benchmark dataset for SSVEP-based braincomputer interfaces," IEEE Trans. Neural Syst. Rehabil. Eng., vol. 25, no. 10, pp. 1746–1752, 2017. DOI: 10.1109/TNSRE.2016.2627556.
    • BETA dataset: B. Liu, X. Huang, Y. Wang, X. Chen, and X. Gao, "BETA: A large benchmark database toward SSVEP-BCI application," Front. Neurosci., vol. 14, p. 627, 2020. DOI: 10.3389/fnins.2020.00627.
    • Nakanishi2015 dataset: M. Nakanishi, Y. Wang, Y.-T. Wang, T.-P. Jung, "A Comparison Study of Canonical Correlation Analysis Based Methods for Detecting Steady-State Visual Evoked Potentials," PLoS ONE, vol. 10, p. e0140703, 2015. DOI: 10.1371/journal.pone.0140703.
    • eldBETA dataset: B. Liu, Y. Wang, X. Gao, and X. Chen, "eldBETA: A Large eldercare-oriented benchmark database of SSVEP-BCI for the aging population," Scientific Data, vol. 9, no. 1, pp.1-12, 2022. DOI: 10.1038/s41597-022-01372-9.
    • openBMI dataset: M.-H. Lee, O.-Y. Kwon, Y.-J. Kim, H.-K. Kim, Y.-E. Lee, J. Williamson, S. Fazli, and S.-W. Lee, "EEG dataset and OpenBMI toolbox for three BCI paradigms: An investigation into BCI illiteracy," GigaScience, vol. 8, no. 5, p. giz002, 2019. DOI: 10.1093/gigascience/giz002.
    • Wearable dataset: F. Zhu, L. Jiang, G. Dong, X. Gao, and Y. Wang, “An Open Dataset for Wearable SSVEP-Based Brain-Computer Interfaces,” Sensors, vol. 21, no. 4, p. 1256, 2021. DOI: 10.3390/s21041256.
    • ...
  • Algorithms

    • Implementations based on eigen decomposition
      • Standard canonical correlation analysis (sCCA) and filterbank CCA (FBCCA): Chen, X., Wang, Y., Gao, S., Jung, T.P. and Gao, X., "Filter bank canonical correlation analysis for implementing a high-speed SSVEP-based brain–computer interface," J. Neural Eng., vol. 12, no. 4, p. 046008, 2015. DOI: 10.1088/1741-2560/12/4/046008.
      • Individual template CCA (itCCA) and Extended CCA (eCCA): X. Chen, Y. Wang, M. Nakanishi, X. Gao, T.-P. Jung, and S. Gao, "High-speed spelling with a noninvasive brain–computer interface," Proc. Natl. Acad. Sci., vol. 112, no. 44, pp. E6058–E6067, 2015. DOI: 10.1073/pnas.1508080112.
      • Multi-stimulus CCA (ms-CCA): C. M. Wong, F. Wan, B. Wang, Z. Wang, W. Nan, K. F. Lao, P. U. Mak, M. I. Vai, and A. Rosa, "Learning across multi-stimulus enhances target recognition methods in SSVEP-based BCIs," J. Neural Eng., vol. 17, no. 1, p. 016026, 2020. DOI: 10.1088/1741-2552/ab2373.
      • Multi-set CCA (MsetCCA): Y. Zhang, G. Zhou, J. Jin, X. Wang, A. Cichocki, "Frequency recognition in SSVEP-based BCI using multiset canonical correlation analysis," Int J Neural Syst., vol. 24, 2014, p. 1450013. DOI: 10.1142/ S0129065714500130.
      • Multi-set CCA with reference signals (MsetCCA-R): C. M. Wong, B. Wang, Z. Wang, K. F. Lao, A. Rosa, and F. Wan, "Spatial filtering in SSVEP-based BCIs: Unified framework and new improvements.," IEEE Transactions on Biomedical Engineering, vol. 67, no. 11, pp. 3057-3072, 2020. DOI: 10.1109/TBME.2020.2975552.
      • Task-related component analysis (TRCA) and Ensemble TRCA (eTRCA): M. Nakanishi, Y. Wang, X. Chen, Y.-T. Wang, X. Gao, and T.-P. Jung, "Enhancing detection of SSVEPs for a high-speed brain speller using task-related component Analysis," IEEE Trans. Biomed. Eng., vol. 65, no. 1, pp. 104–112, 2018. DOI: 10.1109/TBME.2017.2694818.
      • Task-related component analysis with reference signals (TRCA-R) and Ensemble TRCA with reference signals (eTRCA-R): C. M. Wong, B. Wang, Z. Wang, K. F. Lao, A. Rosa, and F. Wan, "Spatial filtering in SSVEP-based BCIs: Unified framework and new improvements.," IEEE Transactions on Biomedical Engineering, vol. 67, no. 11, pp. 3057-3072, 2020. DOI: 10.1109/TBME.2020.2975552.
      • Sum of squared correlations (SSCOR) and Ensemble sum of squared correlations (eSSCOR): G. K. Kumar, and M. R. Reddy, "Designing a sum of squared correlations framework for enhancing SSVEP-based BCIs," IEEE Transactions on Neural Systems and Rehabilitation Engineering, vol. 27, no. 10, pp. 2044-2050, 2019. DOI: 10.1109/TNSRE.2019.2941349.
      • Multi-stimulus TRCA (ms-TRCA): C. M. Wong, F. Wan, B. Wang, Z. Wang, W. Nan, K. F. Lao, P. U. Mak, M. I. Vai, and A. Rosa, "Learning across multi-stimulus enhances target recognition methods in SSVEP-based BCIs," J. Neural Eng., vol. 17, no. 1, p. 016026, 2020. DOI: 10.1088/1741-2552/ab2373.
      • Task-discriminant component analysis (TDCA): B. Liu, X. Chen, N. Shi, Y. Wang, S. Gao, X. Gao, "Improving the performance of individually calibrated SSVEP-BCI by task-discriminant component analysis." IEEE Trans. Neural Syst. Rehabil. Eng., vol. 29, pp. 1998-2007, 2021. DOI: 10.1109/TNSRE.2021.3114340.
      • Online adaptive CCA (OACCA) (OACCA): C. M. Wong et al., “Online adaptation boosts SSVEP-based BCI performance,” IEEE Trans. Biomed. Eng., vol. 69, no. 6, pp. 2018-2028, 2022. DOI: 10.1109/TBME.2021.3133594.
      • ...
    • Implementations based on least-square unified framework
      • sCCA, itCCA, eCCA, (e)TRCA, (e)TRCA-R, MsetCCA, MsetCCA-R, ms-CCA, ms-(e)TRCA, TDCA
      • ms-MsetCCA-R-1
      • ms-MsetCCA-R-2
      • ms-MsetCCA-R-3
      • ms-(e)TRCA-R-1
      • ms-(e)TRCA-R-2

License

Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

Acknowledgements

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ssvepanalysistoolbox-0.0.4.tar.gz (76.2 kB view details)

Uploaded Source

Built Distribution

SSVEPAnalysisToolbox-0.0.4-py3-none-any.whl (107.8 kB view details)

Uploaded Python 3

File details

Details for the file ssvepanalysistoolbox-0.0.4.tar.gz.

File metadata

  • Download URL: ssvepanalysistoolbox-0.0.4.tar.gz
  • Upload date:
  • Size: 76.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for ssvepanalysistoolbox-0.0.4.tar.gz
Algorithm Hash digest
SHA256 92edd77aac72dff407c4007eb21b4a71fee55311bfa55bb6df14abd49b6519e4
MD5 3d39665bf1736e3854f1077db0c40af1
BLAKE2b-256 683b8b7caf6a757a542c94d1adb697bbd537ab2fd9102c9aa99d6d7ffdc55bb8

See more details on using hashes here.

File details

Details for the file SSVEPAnalysisToolbox-0.0.4-py3-none-any.whl.

File metadata

File hashes

Hashes for SSVEPAnalysisToolbox-0.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 28f49a5dd8e665f685696e9c2b0391c84a4d62951d294e589be2a551bf0b9496
MD5 da63e033e7a548ff94d86b93877e860f
BLAKE2b-256 d7cde122632af22d9ebcdfe81927a903668f41caf6dacf83f4fa7fa4b851f7eb

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page