Effacer les filtres
Effacer les filtres

how to extract non-linear features like Lyapunov exponent or Fractal or correlation dimensions from an EEG signal?

9 vues (au cours des 30 derniers jours)
Hi everyone,
i just started preprocessing process for applying on my EEG signal in matlab, i denoised it with 50Hz notch and [0.4 45] Hz bandpass filter, so actually, my signal has been denoised and now, its time to do feature extraction.
since its my graduation thesis, i need non-linear feature extraction such as Lyapunov exponent or Fractal or correlation dimensions and entropy but i've searched alot in youtube and learning websites but i couldn't find anything related.
is there someone who could help me?
I will be very thankful if someone could help me,
i will write my denoising code in here...
clc
clear all
close all
% -------------------------------------------------------------
% displaying the original Signal without preprocessing
% -------------------------------------------------------------
load('C:\Users\Alireza\Desktop\alireza\signal processing- payan name\data.mat')
signal1=c_memory(2,:);
clear c_baste_1; clear c_baz_1;
Fc=50;
Fs=256;
L=length(signal1);
T=1/Fs;
k=floor(L/256);
t=(0:L-1)/256;
NFFT = 2^nextpow2(L); % Next power of 2 from length of y
f = Fs/2*linspace(0,1,NFFT/2);
fft_signal= fft(signal1,NFFT)/L;
figure;plot(f,2*abs(fft_signal(1:NFFT/2)))
title ('Noisy Signal');
xlabel('Frequency(Hz)'); ylabel('Voltage(mV)');
% ------------------------------------------------------------
% Denoising 50 Hz of Artifact
% ------------------------------------------------------------
wo = 50/(Fs/2); bw = wo/10;
[cf5,cf6] = iirnotch(wo,bw);
signal1_2=filtfilt(cf5,cf6,signal1);
fft_signal2= fft(signal1_2,NFFT)/L;
figure(2);plot(f,2*abs(fft_signal2(1:NFFT/2)))
title ('Denoising 50 Hz');
xlabel('Frequency(Hz)'); ylabel('Voltage(mV)');
% ------------------------------------------------------------
% applying [0.4 45]Hz Bandpass Filter
% ------------------------------------------------------------
f_filter = fdesign.bandpass('n,fc1,fc2',6,0.5,45,256);
Hd = design(f_filter, 'butter');
signal_filter_1=filter(Hd,signal1_2);
fft_signal_3= fft(signal_filter_1,NFFT)/L;
figure(3);plot(f,2*abs(fft_signal_3(1:NFFT/2)));
title ('Denoised Signal');
xlabel('Frequency(Hz)'); ylabel('Voltage(mV)');
clc;
% ------------------------------------------------------------
%
% ------------------------------------------------------------

Réponses (0)

Catégories

En savoir plus sur EEG/MEG/ECoG dans Help Center et File Exchange

Produits


Version

R2018b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by