Abstract
Steady State Visually Evoked Potential (SSVEP) is a successful strategy in electroencephalographic (EEG) processing applied to spellers, games, rehabilitation, prosthesis, etc. There are many algorithms proposed in literature to detect the SSVEP frequency, however, most of them must to be implemented in high processing computers because SSVEP methods require many EEG input channels and the algorithms are computationally complex. Then, this paper proposes a low computational cost method for SSVEP embedded processing (EP-SSVEP) whose input is one EEG channel and is based on Canonical Correlation and a Feedforward Neural Network. Additionally, this paper also proposes an embedded system to implement EP-SSVEP and a dataset composed with the EEG signals from eight subjects. According to the results, EP-SSVEP is one of the best methods in literature to SSVEP embedded processing because it reports an accuracy of 96.09% with the proposed dataset and the EEG input is acquired with one channel.
You have full access to this open access chapter, Download conference paper PDF
Similar content being viewed by others
Keywords
1 Introduction
Steady state visually evoked potential is a strategy that increase the energy in brain activity after the presentation of a visual stimulus modulated at a fixed frequency that can be measure in EEG signal as a magnitude rise at the stimulation frequency. The stimulus is presented as message that a subject must select from a group of stimuli with other messages. This stimuli selection has made SSVEP a successful processing strategy in spellers [1,2,3], games [4], rehabilitation with robot [5], prosthesis control [6] or any application for communication and control purposes.
The research to develop new processing methods for SSVEP has been generated a wide variety of algorithms reported in literature for feature extraction and classification. The most common models for feature extraction are Discrete Fourier Transform (DFT) [7, 8], Canonic Correlation Analysis (CCA) [9,10,11,12,13], Spectral Power Density (SPD) [14], Discrete Wavelet transform (DWT) [15] and Principal Component Analysis (PCA) [16, 17]. For classification, the most used methods are based on Artificial Neural Networks (ANN) [18,19,20] and Support Vector Machine [4, 15, 21].
However, most of the SSVEP methods reported in literature needs many EEG input channels and are computationally complex. Consequently, the Brain Computer Interfaces (BCI) that acquire and process SSVEP signal, require computer systems with high processing capabilities and these BCI may cause discomfort to the users due to electrodes positioned in the scalp. Hence, in order to develop a ubiquitous BCI embedded systems, this paper proposes a low computational cost method for SSVEP processing (EP-SSVEP) that use a single EEG channel and is based on Canonical Correlation Analysis and a Feedforward Neural Network (FFNN). To the experiments, we also propose a ubiquitous and comfortable-to-use BCI embedded system with one EEG channel, a portable acquisition device and a small size embedded processor.
The rest of the paper is organized as follows: Sect. 2 presents the BCI embedded system and the dataset acquired for experiments. Section 3 reports the graphical interface that generates the stimuli to evoke the SSVEP. Section 4 describes the proposed method EP-SSVEP. Section 5 presents the results and finally, Sect. 6 reports the conclusions.
2 BCI Embedded System and Dataset
The design of BCI embedded system for experiments was based on three aspects: acquisition device, number of electrodes and method for SSVEP processing.
The acquisition device for the system is the Cyton board of OpenBCI® and it was selected because of its low cost, portability and its SDK is compatible with commercial embedded boards.
The criterion for the number of electrodes is based on the fact that as the number of channels to acquire EEG signal decreases, the comfort of the system increases, and the complexity of the algorithms falls significantly. Then, we develop an experiment to find the best EEG channels to acquire the SSVEP frequency. In this experiment, we read the EEG signals from eight subjects using electrodes connected to the EEG channels O1, O2, Oz, the ground A1 and the reference Fpz, which are standard positions of 10–20 international system. These channels were selected because according to Lee et al. [22], the occipital lobule is the best part of the brain to detect the SSVEP frequencies when a subject stares a stimulus. Results of our experiments show that the EEG channel Oz generates an SSVEP with the necessary properties to design a system that detects the stimulus that the subject stares.
Thus, the proposed method was designed considering a single EEG channel as input and the method must allow online applications in commercial embedded boards.
These aspects were considered in the design of the BCI embedded system whose components are showed in Fig. 1. The system is composed of a visual interface to evoke the SSVEP, gold cup electrodes placed on the channel Oz, A1 and Fpz, the Cyton acquisition device and the embedded bard. The electrodes were connected to the Cyton board to transform the EEG signals to digital data at a sample frequency (Fs) of 250 Hz. Also, Cyton board sends the EEG data by Bluetooth to an embedded board. The board is a Raspberry Pi that analyzes the EEG data with EP-SSVEP to find the stimulus that subject stares. Finally, the board sends by WiFi the message of the selected stimulus to an Internet of Things network (IoT) for any control or communication purposes.
For the experiments, a dataset was designed considering the regular organization of SSVEP datasets reported in literature [23,24,25]. Our dataset consists of eight healthy subjects that were selected from a group of male and female persons with an age from 21 to 25 years. All of them have normal or corrected-to-normal vision. None of them were taking medication. The total of EEG dataset signals is 384 (48 signals per subject).
3 Graphical Interface for Visual Stimuli Presentation
The common technology for the stimuli presentation to evoke the SSVEP is a digital monitor because the stimulation methodology can be designed with software, while other technologies would require hardware design.
To design the stimuli, there are two aspects to consider: figure and stimulation frequency.
The common figures are graphics (box, arrow, star, circle) and checkerboard inversion patterns [26]. However, according to the literature, a checkerboard inversion generates better amplitude response in SSVEP than figures because inversion causes the optical illusion that the checkerboard moves [23].
The stimulation frequency is calculated with the monitor refresh rate [3] and commercial monitors have 60 Hz of refresh rate, so the stimulus frequency fe is given as:
where Z is an entire number. Another aspect to be considered in frequency stimulation is that fe greater than 10 Hz can generate secondary effects in photosensitive subjects [26]. Hence, fe selection includes frequencies less than 10 Hz in Eq. (1).
Then, the interface for visual stimuli presentation is a graphical user interface with four black/white checkerboard patterns distributed as Fig. 2 shows. The fe of checkerboard are 6, 6.6, 7.5 and 8.5 Hz and they are distributed as Table 1 shows. The red points in the checkboard are used by the subject to stare the center of the selected checkerboard.
4 EP-SSVEP Method
This section presents the proposed method EP-SSVEP whose input is an EEG data recorded during 12 s from Oz EEG channel at 250 Hz. This signal is given by s(n), n = 0,…,2999, where n is the time index.
EP-SSVEP was developed with a machine learning approach because the SSVEP signals have noise and the amplitude frequencies may change in each session and subject. The modules of EP-SSVEP are preprocessing, feature extraction with DFT and CCA and classification with a FFNN as Fig. 3 shows. The output is the SSVEP frequency related with the fe that a subject stares.
4.1 Preprocessing Module
The preprocessing module removes the unnecessary frequencies from the EEG signal using a fifth order bandpass Butterworth filter with cut frequencies of 5.5 Hz and 9 Hz. The filter is expressed as H(ω): s → sf2, where H(ω) is the filter transfer function and sf2 is the output of the filter.
4.2 Feature Extraction
This module generates a feature vector to develop an efficient SSVEP detection by reducing the dimension of the frequency components of EEG signal. The first step of this module is the Discrete Fourier Transform given by:
where S(k) contains the frequency components of sf2(n), N = 1500. DFT is computed with the radix 2 fast Fourier transform algorithm. There are other methods to find the frequency components like SPD and DWT, but the DFT was selected because it finds a correct definition of SSVEP frequencies, the input is defined in one dimension and DFT reports the least processing time in feature extraction. The next step is a normalization defined by:
where µs is the mean of S(k) and σs the standard deviation. This normalization reduces the uncertainty generated by the amplitude levels of SSVEP signals. The final step is the Canonical Correlation Analysis, which was used because is one of the most popular methods to reduce the data dimension in SSVEP. CCA finds four Pearson correlation coefficients that represent similarity between x(k) and four SSVEP signals λj(k), j = 1,…4 at frequencies of 6, 6.5, 7.5 and 8.5 Hz. Signals of λj(k) are showed in Fig. 4, and they are the average of signals per subject obtained from training signals of dataset. Table 2 shows the distribution of SSVEP frequencies in each λj(k) signal. The CCA is defined as follows:
where σxλj is the covariance between x(k) and each λj(k) signal, σx is the standard deviation of x(k) and σλj is the standard deviation of λj(k). Thus, the result is a correlation vector ρj = {ρ1, ρ2, ρ3, ρ4}, where each coefficient is the Pearson correlation between x(k) and each λj(k) signal. According to the definition of (4), if SSVEP is not presented in x(k), then, the values of ρj are close to zero, but if SSVEP is presented, the values of ρj have results in the interval from 0 to 1, and they vary according to the SSVEP frequency in x(k) and its quality. The frequency of SSVEP generates a value close to one in the component of ρj related to the λj(k) signal with the most similar frequency to the SSVEP frequency of x(k). However, the quality of the signal causes uncertainty in the results of ρj and that quality depends of the conditions of the subject during the BCI sessions. Therefore, the best option in classification module is a supervised algorithm.
4.3 Classification
According to experiments and the literature, classifiers with the best results in SSVEP analysis are artificial neural networks. Then, the classification module in this method is a Feedforward Neural Network (FFNN) trained with scaled conjugate gradient backpropagation algorithm. Figure 5 shows the architecture of the network, which includes three layers: input, hidden and output.
The input is the vector ρj. The second layer has five neurons defined as follows:
where m is the neuron index in the hidden layer, wjm are the weights of the neurons, b1m is the neuron bias and f1(u) is the softsign activation function f1 (u) = u/(1 + |u|), where u is the input of the function. The number of neurons and f1(u) were defined by experimentation. The output layer has four neurons fully connected to om. This layer finds the stimulus frequency selected by the subject and the neurons are given by:
where r is the neuron index in the output layer, wmr are the weights of the neurons, b2r is the neuron bias and f2(.) is a softmax activation function that generates the best results in the experiments. The output layer has four neurons because each neuron represents each frequency fe.
4.4 Frequency Stimulation
After propagation of ρj in the network, EP-SSVEP determines the selected fe with:
where e is the index value of r, which is the stimulus that the subject stares during the SSVEP session.
5 Results
This section presents the performance of EP-SSVEP and a comparison of this method with others reported in the state of the art.
EP-SSVEP and its training were implemented in a Raspberry Pi 3B model using Python 3.4 and the machine learning library TensorFlow™. The processing velocity average of EP-SSVEP is one frame per second. The Raspberry stores in the EEPROM the coefficients of H(ω), the trained weights per subject of the FFNN, the signals λj(k) and σλj. The total data stored in EEPROM is 171 Mb, which corresponds to 1.06% of total capability. During the processing of SSVEP, RAM memory stores s(n), sf2(n), x(k), sf2(n) signals, σx, ρj and the propagation of the network. The total data stored in RAM is 41 Mb, which corresponds to 4.7% of total capability.
Dataset described on Sect. 2 was divided in a training set that has 28 signals from 8 subjects, and a test set that has 20 signals from 8 subjects. The signals for training and test was randomly separated by cross-validation with five k-fold iterations. Figure 6 shows the confusion matrix of both sets and the reported performance in these matrices are 98.23% for training set and 96.09% for test set. Additionally, stimulus of 7.5 and 8.5 Hz (up and down) reports the best performance than stimulus 6 and 6.6 Hz (right and left) due vertical checkerboards were placed closer of central area of subject vision than horizontal stimulus.
5.1 Comparison with Other SSVEP BCI Systems
To evaluate the performance of EP-SSVEP BCI system, this section presents a comparison with other popular SSVEP BCI focused to embedded applications reported in literature. We do not found a database or methodology for comparisons of BCI embedded systems, thus we design a criterion considering the mainly aspects of BCI operation, which are:
Number of Subjects in the dataset (NS). EEG signals are noisy and they have a response that can be different in each subject. Then, in order to find a better statistical description of the method, it is important to increase as much as possible the number of subjects used for dataset and experiments.
Number of EEG channels (NE). The number of EEG channels is related to the computational cost of the processing methods, i.e., as the number of electrodes reduces, the complexity of the proposed method decreases. Additionally, a large number of electrodes can cause discomfort in the subjects, which affects the performance of the SSVEP sessions. Then, is important to reduce as much as possible the number of EEG channels without compromising the signal quality.
Accuracy (Acc). There are many metrics to compare SSVEP processing methods like Information Transfer Rate (ITR) [24], Accuracy (Acc) [2], etc. Among them, Acc is the most used and it refers to the number of SSVEP samples correctly detected divided by the total number of samples.
Table 3 shows the comparison of EP-SSVEP with two state of the art methods for specific purposes [22, 27] and other popular methods implemented in embedded systems [4, 28]. According to the results showed in Table 3, EP-SSVEP has better Acc than the other methods in spite of EP-SSVEP uses a single EEG channel and that method was tested with eight subjects. This Acc is because of the next reasons:
-
Subjects reports better concentration during the SSVEP sessions in our BCI system than other systems because our system is comfortable for subjects due to two reasons: the use of just one EEG channel and the card processor allows an ubiquitous embedded system.
-
The gold cup electrodes acquire the EEG signal with less noise than other commercial BCI.
-
EP-SSVEP needs data from one EEG channel and uses a classifier that is trained considering the natural uncertainty in SSVEP signals.
6 Conclusions
This paper proposes EP-SSVEP, a novel method designed for ubiquitous BCI embedded systems that process SSVEP signals from a single EEG channel. The proposed method is implemented in an embedded board that sends the information of stimulus that the subject stares to an IoT network. A dataset was designed for experimentations and it consists of the EEG signals obtained from eight subjects. EP-SSVEP is composed of three modules: preprocessing to eliminate noise of EEG signal, feature extraction that uses DFT and CCA and a classification with a FFNN. EP-SSVEP reports the best performance in vertical stimulus than horizontal because of the colocation of the checkerboards respect to the user vision. In the comparisons, EP-SSVEP is a method that generates a BCI embedded system that uses the least number of EEG channels and reports the best Acc. Then, based on these results, we conclude that EP-SSVEP is one of the best methods proposed in the literature. Additionally, EP-SSVEP allows the design of ubiquitous BCI embedded systems because this method can be processed in one second in embedded processors, includes the best accuracy in comparisons of Table 3 and uses as input one EEG data channel.
References
Stawicki, P., Gembler, F., Rezeika, A., Volosyak, I.: A novel hybrid mental spelling application based on eye tracking and SSVEP-based BCI. Brain Sci. 4(35), 1–17 (2017)
Rezeika, A., Benda, M., Stawicki, P., Gembler, F., Saboor, A., Volosyak, I.: Brain – computer interface spellers : a review. Brain Sci. 8(57), 1–38 (2018)
Nezamfar, H., Mohseni Salehi, S.S., Moghadamfalahi, M., Erdogmus, D.: FlashTypeTM: a context-aware c-VEP-based BCI typing interface using EEG signals. IEEE J. Sel. Top. Signal Process. 10(5), 932–941 (2016)
Martišius, I., Damaševičius, R.: A prototype SSVEP based real time BCI gaming system. Comput. Intell. Neurosci. 2016(1), 1–15 (2016)
Zeng, X., Zhu, G., Yue, L., Zhang, M., Xie, S.: A feasibility study of SSVEP-based passive training on an ankle rehabilitation robot. J. Healthc. Eng. 2017(1), 1–9 (2017)
Chen, X., Wang, Y., Gao, X.: Control of a 7-DOF robotic arm system with an SSVEP-based BCI. Int. J. Neural Syst. 28(8), 1–15 (2018)
Tan, F., Zhao, D., Sun, Q., Fang, C., Zhao, X., Liu, H.: Analysis of feature extraction algorithms used in brain-computer interfaces. In: 2016 International Conference on Applied Mechanics, Electronics and Mechatronics Engineering. pp. 1–7. University of Posts and Telecomunications, Chomgqing (2016)
Capati, F.A., Bechelli, R.P., Castro, M.C.F.: Hybrid SSVEP/P300 BCI keyboard - controlled by visual evoked potential. In: Proceedings of the 9th International Joint Conference on Biomedical Engineering Systems and Technologies, pp. 214–218 (2016)
Vu, H., Koo, B., Choi, S.: Frequency detection for SSVEP-based BCI using deep canonical correlation analysis. In: 2016 IEEE International Conference on Systems, Man, and Cybernetics, pp. 1983–1987. School of interdisciplinary Bioscience and Bioengineering, Pohang (2016)
Chen, Y.-J., Chen, S.-C., Wu, C.-M.: Using modular neural network to SSVEP-based BCI. In: International Conference on Applied System Innovation, pp. 1–3. University of Science and Technology, Okinawa (2016)
Trigui, O., Zouch, W., Ben Messaoud, M.: A comparison study of SSVEP detection methods using the Emotiv Epoc headset. In: Conference on STA, pp. 48–53. Sfax University, Monastir (2016)
Duan, F., Lin, D., Li, W., Zhang, Z.: Design of a multimodal EEG-based hybrid BCI system with visual servo module. In: IEEE Transactions on Autonomous Mental Development, pp. 332–341. IEEE (2015)
Aznan, N., Bonner, S., Connolly, J., Al Moubayed, N., Breckon, T.: On the classification of SSVEP-based dry-EEG signals via convolutional neural networks. In: IEEE International Conference on Systems, Man, and Cybernetics (SMC) (2018)
Irshad, A., Singh, R.: SSVEP and ANN based optimal speller design for brain computer interface. Comput. Sci. Tech. 2(2), 338–349 (2014)
Heidari, H., Einalou, Z.: SSVEP extraction applying wavelet transform and decision tree with bays classification. Int. Clin. Neurosci. J. 4(3), 91–97 (2017)
Liu, Q., Chen, K., Ai, Q., Xie, S.Q.: Review: recent development of signal processing algorithms for SSVEP-based brain computer interfaces. J. Med. Biol. Eng. 34(4), 299–309 (2014)
Ghassemzadeh, N., Haghipour, S.: A review on EEG based brain computer interface systems feature extraction methods. Int. J. Adv. Biol. Biomed. Res. 4(2), 117–123 (2016)
Turnip, A., Rizgyawan, M.I., Esti, K.D., Yanyoan, S., Mulyana, E.: Real time classification of SSVEP brain activity with adaptive feedforward neural networks. In: 3rd International Conference on Information Technology, Computer, and Electrical Engineering, pp. 1–5. IEEE, Semarang (2017)
Turnip, A., Simbolon, A.I., Faizal Amri, M., Sihombing, P., Setiadi, R.H., Mulyana, E.: Backpropagation neural networks training for EEG-SSVEP classification of emotion recognition. Internetworking Indones. J. 9(1), 53–57 (2017)
Kwak, N.S., Müller, K.R., Lee, S.W.: A convolutional neural network for steady state visual evoked potential classification under ambulatory environment. PLoS ONE 12(2), 1–20 (2017)
Chatzilari, E., Liarios, G., Georgiadis, K., Nikolopoulos, S., Kompatsiaris, Y.: Combining the benefits of CCA and SVMs for SSVEP-based BCIs in real-world conditions. In: Proceedings of the 2nd International Workshop on Multimedia for Personal Health and Health Care, pp. 3–10. MMHealth17, Mountain View (2017)
Lee, Y., Lin, W., Cherng, F., Ko, L.: A visual attention monitor based on steady-state visual evoked potential. IEEE Trans. Neural Syst. Rehabil. Eng. 24(3), 399–408 (2016)
Zhang, N., Yu, Y., Yin, E., Zhou, Z.: Performance of virtual stimulus motion based on the SSVEP-BCI. In: IEEE International Symposium on Computer, Consumer and Control, pp. 656–659. IEEE, Xi’an (2016)
Samima, S., Sarma, M., Samanta, D.: Correlation of P300 ERPs with visual stimuli and its application to vigilance detection. In: Proceedings of the Annual International Conference of the IEEE Engineering in Medicine and Biology Society, pp. 2590–2593. IEEE, Jeju Island (2017)
Kuziek, J.W.P., Shienh, A., Mathewson, K.E.: Transitioning EEG experiments away from the laboratory using a Raspberry Pi 2. J. Neurosci. Methods 277(1), 75–82 (2017)
Zhu, D., Bieger, J., Garcia Molina, G., Aarts, R.M.: A survey of stimulation methods used in SSVEP-based BCIs. Comput. Intell. Neurosci. 2010(1), 1–12 (2010)
Wang, M., Li, R., Zhang, R., Li, G., Zhang, D., Member, S.: A wearable SSVEP-based BCI system for quadcopter control using head-mounted device. IEEE Access. 6(1), 26789–26798 (2018)
Guneysu, A., Akın, H.L.: An SSVEP based BCI to control a humanoid robot by using portable EEG device. In: Annual International Conference of the IEEE Engineering in Medicine and Biology Society, pp. 6905–6908. IEEE, Osaka (2013)
Acknowledgements
This research was funded by TecNM under grant 6418.18-P. The authors thank the volunteer that participate in the dataset elaboration.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this paper
Cite this paper
Ramírez-Quintana, J., Macias-Macias, J., Corral-Saenz, A., Chacon-Murguia, M. (2019). Novel SSVEP Processing Method Based on Correlation and Feedforward Neural Network for Embedded Brain Computer Interface. In: Carrasco-Ochoa, J., Martínez-Trinidad, J., Olvera-López, J., Salas, J. (eds) Pattern Recognition. MCPR 2019. Lecture Notes in Computer Science(), vol 11524. Springer, Cham. https://doi.org/10.1007/978-3-030-21077-9_23
Download citation
DOI: https://doi.org/10.1007/978-3-030-21077-9_23
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-21076-2
Online ISBN: 978-3-030-21077-9
eBook Packages: Computer ScienceComputer Science (R0)