Filter löschen
Filter löschen

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

9 Ansichten (letzte 30 Tage)
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;
% ------------------------------------------------------------
%
% ------------------------------------------------------------

Antworten (0)

Kategorien

Mehr zu EEG/MEG/ECoG finden Sie in Help Center und File Exchange

Produkte


Version

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by