ssvep_cca

Python code explaining why Canonical Correlation Analysis (CCA) works in detecting Steady State Visually Evoked Potentials (SSVEP).

https://github.com/vpkumaravel/ssvep_cca

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (6.5%) to scientific vocabulary
Last synced: 10 months ago · JSON representation ·

Repository

Python code explaining why Canonical Correlation Analysis (CCA) works in detecting Steady State Visually Evoked Potentials (SSVEP).

Basic Info
  • Host: GitHub
  • Owner: vpKumaravel
  • License: mit
  • Language: Python
  • Default Branch: main
  • Size: 1.4 MB
Statistics
  • Stars: 3
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Created almost 2 years ago · Last pushed almost 2 years ago
Metadata Files
Readme License Citation

README.md

ssvep_cca

Python code explaining why Canonical Correlation Analysis (CCA) works in detecting Steady State Visually Evoked Potentials (SSVEP).

Data

The data used in this repository is freely available here

Example

I used the dataset data_s19_64.mat and set the block ID to 2; frequency = 12 Hz; condition = low depth. The plot shows the comparison when using reference signals of 8 Hz, 12 Hz, and 16 Hz. As can be seen, despite the attempts to find linear combinations of a multi-channel EEG data for each of the reference signals, the target frequency (12 Hz) achieves the highest canonical correlation.

Fig03_3frequencies

In the script cca_tutorial_02.py, we investigate how much each channel contributed to reach the higher correlation for 12 Hz target frequency.

Fig04_CCA_Weights_Bar

Now, we can also plot the Topography of these channel activations.

Fig05_CCA_Weights_Topo

Disclaimer: I tried my best to find the EEG channel locations for the Neuroscan 64-channel setup. The results show activations in the Parietal-Occipital area (lateralized), which matches our expectations. However, I am not 100% sure about the channel locations used. If you find this to be wrong, feel free to submit a PR with the correct locations.

Owner

  • Name: Velu Prabhakar Kumaravel
  • Login: vpKumaravel
  • Kind: user

Ph.D. Student FBK/CIMeC, Trento, Italy.

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
- family-names: "Kumaravel"
  given-names: "Velu Prabhakar"
title: "Understanding how EEG-SSVEP data is analysed using CCA through informative plots"
version: 1.0.0
doi: https://doi.org/10.3390/s22249803
date-released: 2024-08-13
url: "https://github.com/vpKumaravel/ssvep_cca"

GitHub Events

Total
  • Watch event: 4
Last Year
  • Watch event: 4