Real-time feature extraction of P300 component using adaptive nonlinear principal component analysis

Background The electroencephalography (EEG) signals are known to involve the firings of neurons in the brain. The P300 wave is a high potential caused by an event-related stimulus. The detection of P300s included in the measured EEG signals is widely investigated. The difficulties in detecting them are that they are mixed with other signals generated over a large brain area and their amplitudes are very small due to the distance and resistivity differences in their transmittance. Methods A novel real-time feature extraction method for detecting P300 waves by combining an adaptive nonlinear principal component analysis (ANPCA) and a multilayer neural network is proposed. The measured EEG signals are first filtered using a sixth-order band-pass filter with cut-off frequencies of 1 Hz and 12 Hz. The proposed ANPCA scheme consists of four steps: pre-separation, whitening, separation, and estimation. In the experiment, four different inter-stimulus intervals (ISIs) are utilized: 325 ms, 350 ms, 375 ms, and 400 ms. Results The developed multi-stage principal component analysis method applied at the pre-separation step has reduced the external noises and artifacts significantly. The introduced adaptive law in the whitening step has made the subsequent algorithm in the separation step to converge fast. The separation performance index has varied from -20 dB to -33 dB due to randomness of source signals. The robustness of the ANPCA against background noises has been evaluated by comparing the separation performance indices of the ANPCA with four algorithms (NPCA, NSS-JD, JADE, and SOBI), in which the ANPCA algorithm demonstrated the shortest iteration time with performance index about 0.03. Upon this, it is asserted that the ANPCA algorithm successfully separates mixed source signals. Conclusions The independent components produced from the observed data using the proposed method illustrated that the extracted signals were clearly the P300 components elicited by task-related stimuli. The experiment using 350 ms ISI showed the best performance. Since the proposed method does not use down-sampling and averaging, it can be used as a viable tool for real-time clinical applications.


Background
The first recording of the electric field of a human brain was made by the German psychiatrist Hans Berger in Jena, Germany, in 1924. He named the recorded signals electroencephalograms (EEGs) [1]. Over the past few decades, this signal has attracted very considerable interest and attention in the study of cognitive processes in both clinical [2][3][4][5][6][7][8][9] and research areas [10][11][12][13][14][15][16]. Its main advantages are non-invasive measurement, superior temporal resolution, easy implementation, and low cost [17,18]. An event-related potential (ERP), as a derivative of the EEG, is a measured brain response directly resulted from a thought or perception. In 1964 and 1965, respectively, two groups (Chapman and Bragdon [19] and Sutton et al. [20]) independently discovered a P300 component (a wave peak approximately 300 milliseconds (ms) after a task-relevant stimulus). Recently, a great variety of potential applications of the ERP-based P300 component have been widely studied [21][22][23][24][25][26].
Ideally, the EEG machine records, along the scalp, the electrical activities generated by the firing of neurons within the brain. The present problem is that EEG signals contain the neurons' activities located in some significant distances away from the sensors (electrodes). Therefore, given the distance between the electrode and the neuronal activities, the EEG signal collected at any point on a person's scalp is a nonlinear mixture of the activities generated over a large brain area. In this paper, the recorded EEG data are assumed to be a linear mixture of neuronal activities for brevity. Certainly, dealing with the typical low-amplitude and low signal-to-noise ratio (SNR) potentials, the removal of other biological signals becomes one of the major challenges in the study of ERPs. To resolve this problem, down-sampling and averaging methods of EEG data over multiple trials are usually required. However, the down-sampling method can cause some signals to become indistinguishable and distorted, which implies an alteration of the original characteristics of the waveform of information. Also, the averaging method assumes that the signals are long-time stationary and deterministic relative to the stimulus onset. This assumption might cause the loss of time resolution specifically for dissimilar trials. Also, the stationarity and determinacy assumption on EEG signals might not work, because one must consider other factors such as maturation, age, sex, state-of-consciousness, psychiatric and neurological disorders, etc [27].
In this paper, a more efficient means of feature extraction is developed to cope with the drawbacks of the down-sampling and averaging method. Previous research has shown that several aspects of the ERP (especially the latency, magnitude, and topography) are highly variable across trials [27,28]. Many techniques [29][30][31][32][33] appeared in research area to resolve the problem of EEG (specifically for obtaining P300 components) are not sufficiently standardized for clinical usage. Moreover, those techniques usually have been performed off-line. In this paper, a real-time feature extraction method for P300 components using an adaptive nonlinear principal component analysis (ANPCA) incorporating the multilayer neural network (MNN) is proposed. The MNN technique has been widely adopted in the fields of information and neural sciences (i.e., feature extraction, classification, modeling, etc.) [34][35][36][37][38][39]. The experimental results in this paper show that the implementation of the proposed method achieves a very significant statistical improvement in extracting P300 components.
The main contributions of this paper are the following. (i) The developed multi-stage principal component analysis (PCA) applied at the pre-separation step reduces external noises and artifacts significantly, and separates the colored source in the measured EEG signals. (ii) The designed adaptive rule in the whitening step makes the subsequent separation algorithm to converge fast. (iii) The combination of the proposed ANPCA method and the MNN for feature extraction can identify the P300 components in real-time (i.e., without down-sampling and averaging). (iv) Furthermore, the proposed method can become a viable tool in both research and clinical applications.

Data acquisition
Figures 1(a) and 1(b) show the overall schematic and block diagram, respectively, of the proposed real-time feature extraction method. In the experiment, two masters students and five Ph.D. students (all males, age 32 ± 5 years, none of whom had any known neurological deficits) have participated. A seven-choice signal paradigm (i.e., forward, turn right, turn left, backward, backward right, backward left, and stop) is used to stimulate the seven subjects. They sit in a comfortable chair in front of a computer monitor located at 60 cm away from their eyes. The subjects are asked to count silently the number of times of the flashes of a preselected image on the screen while imagining a car moving in the direction of the flashed signal. Four seconds after a starting tone, seven different images flash in random order, one image at a time. A software program (E-Prime 2.0, developer: Schneider, Sharpsburg-USA) is employed for presenting stimuli.
The left-hand side box in Figure 1(a) shows a g-MOBIlab+ biosignal acquisition device (Christoph Guger, Austria), with which the EEG signals are recorded continuously and digitized at a 256 Hz sampling rate. Figure 2 depicts the positioning of the eight electrodes (channels) at Fz, Cz, Pz, Oz, P7, P3, P4, P8 by following the 10-20 International System [40] and the linked-ears reference. The ground electrode is placed at the center of the forehead. The impedance at each location is kept below 5 kΩ. The participants are supposed not to have any eye and head movements during the EEG recording. Each subject records four sessions; four different image-flash durations (i.e., 25 ms, 50 ms, 75 ms, and 100 ms, respectively) followed by a 300 ms blank screen. Hence, the inter-stimulus intervals (ISIs) in this work range from 325 ms to 400 ms.

Real-time feature extraction
Let M be the number of measured EEG signals and N be the number of unknown input sources. Then, the measured signal at channel i, x i (k), can be represented as a linear combination of N unknown mutually statistically independent source signals s j (k), j = 1,2, ..., N, as follows (typically M ≥ N) [41,42].
or in matrix form, where x(k) = [x 1 (k), x 2 (k), ..., x M (k)] T R M is the vector of EEG signals, A R M × N with entries a ij is the unknown M × N mixing matrix, s(k) = [s 1 (k), s 2 (k), ..., s N (k)] T R N is the unknown vector of colored source signals, and n(k) R M is the vector of additive noises. The objective of this work is to estimate both A and s(k). The following assumptions are made: Individual components of the source vector s(k) are statistically independent of one another; the matrix A is invertible and has full rank; each component in s(k) is a stationary; and the noise vector n(k) is white with Gaussian distribution. The P300 extraction is made in the following steps: pre-separation, whitening, separation, and estimation without ignoring the additive noise signal n(k).

Pre-separation step
The pre-separation step uses a multi-stage PCA to separate the sources and also to reduce external noises and artefacts from the measured signal vector. The eigenvalue decomposition of the correlation matrix R xx of the measured signal x(k) is given by [42] where Λ R M × N is a pseudo-diagonal matrix. On the basis of the largest eigenvalues, the spatial whitening procedures can be written as where Λ j = diag{l 1 , l 2 , ..., l N } with l 1 ≥ l 2 ≥ ... ≥ l N and V j = {v 1 , v 2 ,...v N } R N×M . Therefore, the PCA is performed for a new vector of signals, which is defined [41,42] x where τ is an arbitrary time delay. The covariance matrix of the vectorx(k) is expressed as where Rxx = Rx(0) = E{x(k)x T (k)} = HR ss H T = I, under the assumption that H = BA is orthogonal and R SS = I and Hence, the matrix decomposition can be written where D(τ)is a diagonal matrix expressed as with diagonal elements d ii (τ) = 2(1+E{s i (k)s i (k-τ)}) If the diagonal elements are distinct, the eigenvalue decomposition is unique. Thus, the mixing matrix and the input vector x(k), respectively, can be estimated as A = B + Vx and Assume that the process x(k) ∈ C M comprises a zero-mean sequence whose covariance matrix is defined as in (3), and that we are going to extract its complex-values eigenvectors v i and corresponding principal components (PCs) in real-time. Employing a self-supervising principle and hierarchical neural network architecture, the PCs( x i ) are extracted sequentially as The vector v i should be determined in such a way that the reconstructed vector according to a suitable optimization. For this purpose, let us define a complex-valued instantaneous error vector as where I is the identity matrix, e R i (t) and e I i (t) are the real part and imaginary parts of the error vector e i (t), respectively, and j = √ −1. In order to find the optimal value of the vector v i , we can define the following standard 2-norm cost function.
where e R ip is the pth element of e R i . The minimization of the cost function (13), according to the standard gradient descent approach for the real and imaginary parts of the vector v i = v R i + jv I i , leads to a set of differential equations as Combining (14) and (15) and taking into account that v ip = v R ip + jv I ip , the adaptation law for updating the parameters is obtained as which can be written in matrix form as for Since the second term in (17), which can be written  (17) can be further simplified to where (.)* denotes a complex conjugate. In discrete time, the adaptation law in (18) can be written where

Whitening step
The whitening step uses the PCA to transform the data into an appropriate space and to reduce the redundancy of the observed data. The separated input vectorx(k) is whitened in the second step by applying the following transformation.
where u(k) is the whitened k vector, and P is the whitening matrix, which is determined using the neural learning approach. The objective is to find a simple adaptive algorithm for estimating the whitening matrix P, such that the covariance matrix of the whitened signals u(k) will be a diagonal matrix, that is, R uu = E{uu T } = diag{l 1 , l 2 , ..., l N } = I N , and will be mutually uncorrelated if all of the cross-correlations are zero, that is, r ij = E{u i u j } = 0, for all i ≠ j, with non-zero autocorrelations r ij = E{u 2 i } = λ i > 0. Therefore, the minimization function can be formulated in the following 2-norm.
To derive an adaptive learning algorithm, the following transformation is used, where B = PA is the global transformation matrix from s to u. Without loss of generality, R ss = E{ss T } = I N is assumed. By substituting (22) into (21), the optimization criterion can be written as Applying the standard gradient descent approach and the chain rule, the derivative of (23) is obtained as Taking into account that B = PA and assuming that A varies very slowly in time (i.e., dA/dt≈0), we have Using the simple Euler formula, the corresponding discrete-time adaptive learning algorithm can be written as where h(k) is the learning parameter to be adjusted according to , and ξ is the forgetting factor (i.e., 0 <ξ < 1). The covariance matrix R uu can be estimated aŝ where u(k) = P(k) x(k).

Separation step
The separation of the whitened signals u(k) is the third step of the proposed algorithm, which is accomplished by applying the nonlinear principal component analysis (NPCA) learning rule. The multichannel linear separation transformation is given in the following form.
where W(k) is the separation matrix, whose values are updated through the NPCA learning rule. If the independent signals are zero-mean, the generalized covariance matrix of f(y i ) and g(y j ) (f(y i ) and g(y j ) are different and odd nonlinear activation functions such that f(y) = y 3 and g(y) = tanh(y)) is a non-singular diagonal matrix R fg = E{f (y)g T (y)}-E{f(y)}E{g T (y)}. On the basis of the independence criterion, the nonlinear covariance matrix is given as [41,43] R fg = f (y)g T (y) + I, where f(y) = [f(y 1 ), f(y 2 ), ..., f(y N )] T and g(y) = [g(y 1 ), g(y 2 ), ..., g(y N )] T , provided that E{f (y i )} = 0 or E{g(y i )} = 0. To satisfy these conditions for arbitrary distributed sources, the nonlinearities are selected as f i (y i ) = i (y i ), g i (y i ) = y i or f i (y i ) = y i , g i (y i ) = i (y i ), where i (y i ) are suitably designed nonlinear functions, defining g(y) as an odd function and f (y) = g(y)-y. Therefore, similarly to (21)-(26), a real-time implementation algorithm can be derived as where g T y = (f T y(k)-y T (k)). Since the separation matrix W(k) is assumed to be orthogonal (i.e., W T (k)W(k) = I), the real-time adaptation rule can be rewritten as where y(k) is the separated signal and the output of the second step, W b = (u T (k)-f T y (k)), μ(k) is the learning parameter (it is adjusted according to with the forgetting factor 0 <g < 1), and f(.)is a suitably chosen nonlinear function that is usually selected to be odd in order to ensure both stability and signal separations. These nonlinear functions require the use of high-order statistics (HOS). In the present study, f(.)was chosen as f(t) = tanh(t).

Estimation step
The final step is the estimation of the independent component basis vector of the mixing matrix A(k). The estimate of the observed data is given bŷ Comparing (32) with (2), and sinceŝ(k) ∼ = y(k) (i.e.,ŝ(k) is the estimated source signal s(k)), it can be concluded thatÂ (k) = Q(k) . Therefore, the columns of the matrix Q (k) are the estimates of the columns of the matrixÂ (k) . Since Q(k) is the estimation matrix, its values (similarly to (26)) are updated through the adaptation law as where Q e = [x(k) − Q(k)y(k)]. The quality of the source estimate in y(k) can be measured using the zero-forcing solution. Such a solution attempts to adapt the demixing matrix such that where C(k) = W(k)P(k)V(k), F is a (M × M) permutation matrix with one unity entry in any row or column, and D is a diagonal nonsingular scaling matrix. In this case, it becomes for some non-replicative assignment j i for 1 ≤ i ≤ N and 1 ≤ j ≤ M Thus, each element of y(k) is the sum of a single unique source in s(k) and a noise term. In each simulation run, the performance index (PI) is evaluated using the following equation [44].
where C a = , c ij denotes the (i, j)th element of the matrix in C(k), corresponding to the jth independent component (IC) in the desired subset of sources. This dimensionless performance metric measures the deviation of the combined system from a diagonally scaled permutation matrix (i.e., 0 ≤ PI(k) ≤ 1 for all matrices C(k), PI(k) is one when the sources maximally mixed in the outputs, and PI(k) is zero when the desired subset of the ICs is perfectly separated). The first term in (36) gives the error of the separation of the output component y i (k) in (35) with respect to the sources and the second term measures the degree of the desired IC, c j , appearing multiple times at the output. The integration of the four steps is called the adaptive nonlinear principal component analysis (ANPCA) method. In order to improve the flexibility, efficiency, and performance of blind signals separation or extraction, the proposed ANPCA scheme is run upon a multilayer neural network. The multiple layers of neurons with nonlinear transfer functions allow the network to learn both linear and nonlinear relationships between input and output vectors. Furthermore, this allows us to combine second-order statistics (SOS) and the HOS algorithm to extract features having different statistical properties, existing at various layers, and originating from various sources. The synaptic weights in each layer are updated by employing the algorithm described above.

Results
Preparatory to an analysis of the features of P300 components from EEG signals in real-time, actual signals were recorded in an eight-channel (Fz, Cz, Pz, Oz, P7, P3, P4, and P8) configuration. Figure 3 shows the observed EEG signals with background signal amplitudes of around 300 micro volts. Figure 4 shows the pre-processed signals with amplitudes of around 25 micro volts, which were filtered using a sixth-order BPF with cut-off frequencies of 1 Hz and 12 Hz. One way of gaining further insights into EEG signals is by introducing ANPCA techniques. The present model of EEG analysis consists of four main steps: pre-separation (learning rate b of 0.6), whitening (forgetting factor h of 0.01), separation (forgetting factor g of 0.002), and estimation (learning rate a of 0.3). In this algorithm, the pre-separation and the whitening steps enable faster adaptation at the separation step. The performance of the component separation of Figure 3 The measured raw EEG signals. The EEG signals recorded continuously and digitized at a 256 Hz sampling rate using a g-MOBIlab + biosignal acquisition device.
the ANPCA algorithm in the output was evaluated using (36). The evolutions of PI(Ni) for six different run of the proposed method generated from the data with 350 ms ISI is given in Figure 5. It can be seen that the algorithm takes between four and ten epochs to converge. Depending on the simulation run, the performance factor varies from -22 dB to -33 dB, due to random differences in the source signals. The robustness of the ANPCA was evaluated by comparing its separation performance with suggested algorithms (i.e., NPCA [45], Nonstationary Source Separation-Joint Diagonalization (NSS-JD) [42], Joint Approximate Diagonalization of Eigen-matrices (JADE) [46], and Second-Order Blind Identification (SOBI) [47]) as shown in Figure 6. Figures 7, 8, 9, and 10 show the real-time-extracted signals from eight-electrode of the P300 component using the ANPCA algorithm using ISI of 325 ms, 350 ms, 375 ms, and 400 ms, respectively. The P300 amplitudes of individual subject, taken from Fz Figure 4 The pre-processed EEG signals that were band-passed. The EEG signals were pre-processed using a sixth-order BPF with cut-off frequencies of 1 Hz (i.e., to remove the trend from low frequency bands) and 12 Hz (i.e., to remove unimportant information from high frequency bands). electrode, for ISI of 325 ms, 350 ms, 375 ms, and 400 ms, respectively, is shown in Figure 11 (a) P300 amplitude upon a single stimulus and (b) P300 upon multiple stimuli. By averaging the eight extracted signals from the eight-electrode, the P300 components were not detected in some periods as indicated in Figure 12. This signal was averaged using the 350 ms ISI data. Comparative plots of the classification accuracies along seven stimuli for all subjects (subjects 1-7) are provided in Figure 13. The best classification accuracy was achieved using ISI 350 ms. The average value of the classification accuracies upon seven block stimuli for all of the subjects is given in Table 1.
The classification using ISI 350 ms gave the the higher average value with smallest standard deviation.  For the ISI of about 325 ms, it was found that the amplitude of the P300 component was higher than for the other ISI but noisier than for the higher ISI.

Discussion
The ability to measure and classify single-trial responses in real-time from specific brain regions has important theoretical and practical implications for both clinical and research applications. In this study, the amplitude of the background signal was around 300 micro volts as shown in Figure 3. Since the amplitude of the P300 component is very small (around 1.5 micro volts) compared with that of the background, the preprocessing filtering is required. These EEG signals were filtered using a sixth-order BPF with cut-off frequencies of 1 Hz (i.e., to remove the trend from low frequency bands) and 12 Hz (i.e., to remove unimportant information from high frequency bands), respectively. However, as shown in Figure 4, the signals nonetheless were corrupted by noises with background signal amplitudes of around 25 micro volts. Although there were some noticeable improvements, classification of the signals with respect to the given stimulus remained difficult. Therefore, an ANPCA-algorithmbased multilayer neural network model that can be used to analyzed complex P300    Figure 5 shows the evolution of PI(Ni) for six different simulation runs in one implementation of the proposed method. The performance of the ANPCA algorithm in (30) was evaluated using (36) with W(0) = I. A single block of N = 7000 samples has been used to compute all coefficient updates for six run, wherex(k + Ni) =x(k) for all integer values i ≥ 0 and i ≤ k ≤ N-1. As it can be seen, the algorithm took between four and ten epochs to converge. Depending on the simulation run, the performance factor varies from -22 dB to -33 dB, due to random differences in the source signals. The accuracy of the method generally improves for increasing values of block length N. It can be confirmed that the ANPCA algorithm successfully separates the mixture of source signals. To evaluate the robustness of the ANPCA against background noise, the separation performance indices of the ANPCA were compared with the suggested algorithms (i.e., NPCA, JADE, NSS-JD, and SOBI). The accuracy of the recovered independent components compared to the sources was measured according to the specified performance function in (36). Figure 6 shows the overall performance of all algorithms. For data iterations longer than 5000 iterations, the performance index was not much better, but was more and more time consuming. The quality of separation increases Figure 12 The averages of eight-electrode data in Figure 8 (350 ms ISI): P300s are not detected in some periods. By averaging, the amplitude of a target gets bigger compared to that of a non-target, if the signal is long time stationary. But, this will fail for dissimilar trials as indicated with the ellipse mark (i.e., solid circle for the target and dash circle for the non-target).  table level for separation). Upon this, it is asserted that the ANPCA algorithm successfully separates mixed source signals. The same accuracy level of separation was achieved after 4000 iterations by using other algorithms. Figure 13 Comparison of classification accuracies along seven stimuli (four ISIs, seven subjects): ISI 350 ms was the best out of four. All subjects achieved an average classification accuracy of 100% after three blocks of stimulus presentations were averaged (i.e., 8 s). In this regard, the subject intention will be recognized after eight seconds of the first given stimulus.
The ICs that were produced from the observed data using the ANPCA algorithm (for ISI of about 325 ms, 350 ms, 375 ms, and 400 ms) are shown in Figures 7, 8, 9, and 10. Although the signals were still corrupted by noises (manifested as the high amplitudes of non-targets in some sessions), the behaviours of the extracted signals clearly represented the P300 components. The observed signal was of the P300 event-related potential signal form. For the ISI of about 325 ms (Figure 7), it was found that the amplitude of the P300 component was higher than for the other ISI, as shown in Figure 11 (a), but noisier than for the higher ISI. As noted in Figure 7, the non-target amplitudes were roughly similar to the target amplitudes. For the ISI of about 350 ms (Figure 8), the target and non-target amplitudes were clearer and easier to distinguish than for the other ISI. For the ISI of about 375 ms (Figure 9), it was found that in some sessions the non-target amplitudes were higher than the target ones. For the ISI of about 400 ms, it was found that none of the channels showed similar behavior, as indicated in Figure 10. In this case the assumption of long stationary segment for averaging method will cause loss of the time resolution. Figures 7, 8, 9, and 10 show that the extracted signal amplitudes decreased (i.e., from the Fz to the P8 channel) as the distance of the electrodes increased. Figure 11(a) plots the amplitudes of the P300 component for four different ISIs (Fz channel) upon a single stimulus (scale of 700 ms) and indicate that the short ISI could increase both a target and a non-target amplitudes. Figure 11(b) plots the amplitudes of the P300 component for four different ISIs upon multiple stimuli (scale of 60 s) and indicate the peak shifting of the P300 component with respect to the various ISIs. The experiment using 350 ms ISI showed the best performance. Figure 12 displays the averages of the signals extracted from the eight-channel with ISI 350 ms. By averaging, the amplitude of a target gets bigger compared to that of a non-target, if the signal is long time stationary. But, this will fail for dissimilar trials, as indicated in Figure 12 (i.e., solid circle for the target and dashed circle for the non-target). This is one of the main reasons why the proposed method does not use the averaging scheme.
Comparative plots of the classification accuracies for the seven subjects were provided in Figure 13. All subjects achieved an average classification accuracy of 100% after three blocks of stimulus presentations were averaged (i.e., 8 s). In this regard, the subject intention was be recognized after eight seconds of the first given stimulus. Shown alongside the average value of the classification accuracies upon seven block stimuli for all of the subjects, in Table I, are the corresponding 85% confidence intervals. According to Table 1, the experiment with ISI 350 ms provides the highest average classification accuracies (88.921%) and smallest standard deviation (1.807) over all subjects. By contrast, ISI 400 ms showed the worst classification accuracies (84.839%). However, the worst standard deviation (4.959) was given by the experiment with ISI 325 ms. These results reflect the fact that the best performance was obtained through the experiment with ISI 350 ms. Routine P300 component of EEG signals has been widely used in the clinical circumstances [21][22][23][24][25][26]. In this context, the use of physiological signals rather than behavioral responses of patient are often advisable, albeit challenging. Overall, the P300 component has sparked considerable interest as a clinical-application diagnostic tool. The most efficient method of implementing the diagnostic tool is through real-time detection. The amplitude of different waveforms at a single point can also be displayed in a similar format. This type of display provides a more objective analysis of the EEG activity compared to a subjective visual analysis by a physician. Simultaneous video monitoring of the patient during the EEG recording is becoming more popular. It allows the physician to closely correlate EEG waveforms with the patient's activity and may help produce a more accurate diagnosis.

Conclusions
The applicability of the proposed ANPCA method for extracting the P300 waves included in the EEG signals for real-time without down-sampling and averaging of the original signals was demonstrated. The separation performance factor of the ANPCA varied from -22 dB to -33 dB due to the randomness of source signals. In comparison with other algorithms (i.e., NPCA, NSS-JD, JADE, and SOBI), the ANPCA presented the shortest iteration time with performance index about 0.03. Since all the computations are done in real time, the ANPCA can be used as a viable tool for clinical applications.