Pracownia EEG/EEG spoczynkowe: Różnice pomiędzy wersjami

Z Brain-wiki
(Nie pokazano 26 wersji utworzonych przez 3 użytkowników)
Linia 1: Linia 1:
__NOTOC__
+
[[Pracownia EEG|Pracownia EEG]] / EEG spoczynkowe, artefakty
 +
 
 
==Podstawowe grafoelementy zapisu EEG i ich główne cechy==
 
==Podstawowe grafoelementy zapisu EEG i ich główne cechy==
  
===Rytm <math>\delta </math>===
+
===Rytm &delta;===
  
Przebieg rytmu delta zaprezentowano na <xr id="uid3"> rysunku %i</xr>. Jest to wysokoamplitudowa aktywność o niskiej częstości (0-4 Hz) i czasie trwania co najmniej 1/4 s. Do celów praktycznych przyjęto, że dolną granicą częstości jest 0,5 Hz. Pojawiające się podczas głębokiego snu fale delta o amplitudzie przekraczającej 75 <math>\mu</math>V nazywa się falami wolnymi (ang. ''slow wave activity'', SWA). Występowanie SWA spowodowane jest wysoką synchronizacją neuronów kory (większą synchronizację spotyka się tylko podczas ataku epilepsji). Fale delta rejestruje się także podczas głębokiej medytacji, u małych dzieci i w przypadku pewnego rodzaju uszkodzeń mózgu.
+
Przebieg rytmu delta zaprezentowano na <xr id="uid3"> rysunku %i</xr>. Jest to wysokoamplitudowa aktywność o niskiej częstości (0-4 Hz) i czasie trwania co najmniej 1/4 s. Do celów praktycznych przyjęto, że dolną granicą częstości jest 0,5 Hz. Pojawiające się podczas głębokiego snu fale delta o amplitudzie przekraczającej 75 &mu;V nazywa się falami wolnymi (ang. ''slow wave activity'', SWA). Występowanie SWA spowodowane jest wysoką synchronizacją neuronów kory (większą synchronizację spotyka się tylko podczas ataku epilepsji). Fale delta rejestruje się także podczas głębokiej medytacji, u małych dzieci i w przypadku pewnego rodzaju uszkodzeń mózgu.
  
 
[[Plik:SWA.png|center|800px|thumb|<figure id="uid3" />Fale delta  w czasie snu w zapisie polisomnograficznym.]]
 
[[Plik:SWA.png|center|800px|thumb|<figure id="uid3" />Fale delta  w czasie snu w zapisie polisomnograficznym.]]
  
===Rytm <math>\theta </math>===
+
===Rytm &theta;===
  
Rytmem teta (and. ''theta'') (<xr id="uid9"> rys. %i</xr>) nazywamy aktywność w paśmie częstości od 3 do 7 Hz i rozpiętości (ang. ''peak-to-peak'') rzędu kilkudziesięciu &mu;V. Charakterystyczne fale teta występują np. w okresie snu płytkiego &mdash; przypuszcza się że w tym czasie następuje przyswajanie i utrwalanie uczonych treści. Fale teta są najczęściej występującymi falami mózgowymi podczas medytacji, transu, hipnozy, intensywnego marzenia, intensywnych emocji. Odmienny rodzaj fal teta jest związany z aktywnością poznawczą, kojarzeniem (w szczególności uwagą), a także procesami pamięciowymi (tzw. rytm FM&Theta; &mdash; ''frontal midline theta''). Jest on obserwowany głównie w przyśrodkowej części przedniej części mózgu.
+
Rytmem teta (ang. ''theta'') (<xr id="uid9"> rys. %i</xr>) nazywamy aktywność w paśmie częstości od 3 do 7 Hz i rozpiętości (ang. ''peak-to-peak'') rzędu kilkudziesięciu &mu;V. Charakterystyczne fale teta występują np. w okresie snu płytkiego &mdash; przypuszcza się że w tym czasie następuje przyswajanie i utrwalanie uczonych treści. Fale teta są najczęściej występującymi falami mózgowymi podczas medytacji, transu, hipnozy, intensywnego marzenia, intensywnych emocji. Odmienny rodzaj fal teta jest związany z aktywnością poznawczą, kojarzeniem (w szczególności uwagą), a także procesami pamięciowymi (tzw. rytm FM&Theta; &mdash; ''frontal midline theta''). Jest on obserwowany głównie w przyśrodkowej części przedniej części mózgu.
  
 
Cechy charakterystyczne:
 
Cechy charakterystyczne:
Linia 22: Linia 23:
 
[[Plik:Fala pila.png|800px|center|thumb|<figure id="uid9" />Przykład rytmu teta we śnie.]]
 
[[Plik:Fala pila.png|800px|center|thumb|<figure id="uid9" />Przykład rytmu teta we śnie.]]
  
===Rytm <math>\alpha </math>===
+
===Rytm &alpha;===
  
 
Fala alfa to jedna z najwcześniej zaobserwowanych struktur (grafoelementów) EEG.
 
Fala alfa to jedna z najwcześniej zaobserwowanych struktur (grafoelementów) EEG.
Linia 88: Linia 89:
 
</ul>
 
</ul>
  
===Rytm <math>\beta </math>===
+
===Rytm &beta;===
[[Plik:EEG_beta_1.png|768px|thumb|<figure id="uid28" />Rytm beta. Na osi pionowej - amplituda w &mu;V, na osi poziomej - czas.]]
+
[[Plik:EEG_beta_1.png|768px|thumb|<figure id="uid28" />Rytm beta. Na osi pionowej &mdash; amplituda w &mu;V, na osi poziomej &mdash; czas.]]
Fale beta (rys. <xr id="uid28"> %i</xr>) to niskoamplitudowe oscylacje o częstości w przedziale 13-30 Hz. W paśmie beta wyróżnia się następujące przedziały: wolne fale beta (12-15 Hz), właściwe, średnie pasmo beta (15-18 Hz) i szybkie fale beta, o częstości powyżej 19 Hz. Ta mało zsynchronizowana praca neuronów charakteryzuje zwykłą codzienną aktywność kory mózgowej u człowieka, percepcję zmysłową i pracę umysłową. Specyficzna aktywność beta towarzyszy również stanom po zażyciu niektórych leków. Fale beta zazwyczaj występują w okolicy czołowej. Obrazują one zaangażowanie kory mózgowej w aktywność poznawczą. Fale beta o małej amplitudzie występują podczas koncentracji uwagi, gdy mózg nastawiony jest na świadomy odbiór bodźców zewnętrznych za pomocą wszystkich zmysłów.
+
Fale beta (<xr id="uid28">rys.</xr>) to niskoamplitudowe oscylacje o częstości w przedziale 13-30 Hz. W paśmie beta wyróżnia się następujące przedziały: wolne fale beta (12-15 Hz), właściwe, średnie pasmo beta (15-18 Hz) i szybkie fale beta, o częstości powyżej 19 Hz. Ta mało zsynchronizowana praca neuronów charakteryzuje zwykłą codzienną aktywność kory mózgowej u człowieka, percepcję zmysłową i pracę umysłową. Specyficzna aktywność beta towarzyszy również stanom po zażyciu niektórych leków. Fale beta zazwyczaj występują w okolicy czołowej. Obrazują one zaangażowanie kory mózgowej w aktywność poznawczą. Fale beta o małej amplitudzie występują podczas koncentracji uwagi, gdy mózg nastawiony jest na świadomy odbiór bodźców zewnętrznych za pomocą wszystkich zmysłów.
 
Cechy charakterystyczne:
 
Cechy charakterystyczne:
  
Linia 114: Linia 115:
 
<!---->
 
<!---->
  
===Fale <math>\gamma </math>===
+
===Fale &gamma;===
[[Plik:EEG_gamma_1.png|768px|thumb|<figure id="uid30" />Rytm gamma. Na osi pionowej - amplituda w &mu;V, na osi poziomej - czas.]]
+
[[Plik:EEG_gamma_1.png|768px|thumb|<figure id="uid30" />Rytm gamma. Na osi pionowej &mdash; amplituda w &mu;V, na osi poziomej &mdash; czas.]]
Fale gamma (rys. <xr id="uid30"> %i</xr>) to fale mózgowe o częstości w okolicach 40 Hz (30-80 Hz). Aktywność w paśmie 80-200 Hz określa się natomiast jako wysokoczęstotliwościową (ang. ''high'') gammę. Rytm gamma towarzyszy aktywności ruchowej i funkcjom motorycznym. Fale gamma związane są też z wyższymi procesami poznawczymi, m. in. percepcją sensoryczną, pamięcią. Przypuszcza się, że rytm gamma o częstotliwości około 40 Hz ma związek ze świadomością percepcyjną (dotyczącą wrażeń zmysłowych i ich postrzegania) oraz związany jest z integracją poszczególnych modalności zmysłowych w jeden spostrzegany obiekt. Aktywność high-gamma występuje podczas aktywacji kory mózgowej, zarówno przez bodźce zewnętrzne (np. dotykowe, wzrokowe), jak i wewnętrzne (przygotowanie ruchu, mowa). Fale o częstościach 100-250 Hz nazywane są ''ripples''. Rejestruje się je w sygnale z implantowanych mikroelektrod, a wysoko częstościową aktywność ''fast ripples'' (250-600 Hz) w szczególności u pacjentów z epilepsją, w obszarze ogniska epileptycznego.
+
Fale gamma (<xr id="uid30"> rys.</xr>) to fale mózgowe o częstości w okolicach 40 Hz (30-80 Hz). Aktywność w paśmie 80-200 Hz określa się natomiast jako wysokoczęstotliwościową (ang. ''high'') gammę. Rytm gamma towarzyszy aktywności ruchowej i funkcjom motorycznym. Fale gamma związane są też z wyższymi procesami poznawczymi, m. in. percepcją sensoryczną, pamięcią. Przypuszcza się, że rytm gamma o częstotliwości około 40 Hz ma związek ze świadomością percepcyjną (dotyczącą wrażeń zmysłowych i ich postrzegania) oraz związany jest z integracją poszczególnych modalności zmysłowych w jeden spostrzegany obiekt. Aktywność high-gamma występuje podczas aktywacji kory mózgowej, zarówno przez bodźce zewnętrzne (np. dotykowe, wzrokowe), jak i wewnętrzne (przygotowanie ruchu, mowa). Fale o częstościach 100-250 Hz nazywane są ''ripples''. Rejestruje się je w sygnale z implantowanych mikroelektrod, a wysoko częstościową aktywność ''fast ripples'' (250-600 Hz) w szczególności u pacjentów z epilepsją, w obszarze ogniska epileptycznego.
  
 
===Wrzeciona snu===
 
===Wrzeciona snu===
  
Wrzeciona snu (ang. ''sleep spindles'') (rys. <xr id="uid32"> %i</xr>) to charakterystyczne struktury zaobserwowane już niemal od samych początków historii pomiarów EEG. Występują podczas umiarkowanie głębokiego snu. Wrzecionami snu nazywamy aktywność o częstości 11-15 Hz i czasie trwania 0,5-1,5 s. Obwiednia tych krótkich salw dość szybkiej aktywności o niewielkiej amplitudzie przypomina kształt wrzeciona. Wrzeciona pojawiają się we wszystkich odprowadzeniach, z tym, że ich amplituda i częstość może się nieznacznie zmieniać przy przejściu od przodu do tyłu głowy (od wrzecion „wolnych” po „szybkie”). Wrzeciona snu mogą występować w parach z kompleksami K.
+
Wrzeciona snu (ang. ''sleep spindles'') (<xr id="uid32"> rys.</xr>) to charakterystyczne struktury zaobserwowane już niemal od samych początków historii pomiarów EEG. Występują podczas umiarkowanie głębokiego snu. Wrzecionami snu nazywamy aktywność o częstości 11-15 Hz i czasie trwania 0,5-1,5 s. Obwiednia tych krótkich salw dość szybkiej aktywności o niewielkiej amplitudzie przypomina kształt wrzeciona. Wrzeciona pojawiają się we wszystkich odprowadzeniach, z tym, że ich amplituda i częstość może się nieznacznie zmieniać przy przejściu od przodu do tyłu głowy (od wrzecion „wolnych” po „szybkie”). Wrzeciona snu mogą występować w parach z kompleksami K.
  
 
[[Plik:Wrzeciona.png|800px|center|thumb|<figure id="uid32" />Trzy wrzeciona snu.]]
 
[[Plik:Wrzeciona.png|800px|center|thumb|<figure id="uid32" />Trzy wrzeciona snu.]]
Linia 244: Linia 245:
 
</ul>
 
</ul>
  
==Ćwiczenia==
+
==Ćwiczenia: rejestracja EEG z artefaktami oraz EEG spoczynkowego==
  
 
+
=== Przypomnij sobie:===
===Ćwiczenie I: rejestracja EEG z artefaktami oraz EEG spoczynkowego===
 
 
 
<ol>
 
<li> Przypomnij sobie:
 
 
* [[Pracownia_Sygnałów_Biologicznych/Zajecia_9#Procedura_zak.C5.82adania_czepka.|procedurę zakładania czepka]] na głowie  
 
* [[Pracownia_Sygnałów_Biologicznych/Zajecia_9#Procedura_zak.C5.82adania_czepka.|procedurę zakładania czepka]] na głowie  
 
* [[Pracownia_Sygnałów_Biologicznych/Zajecia_9#Oczyszczanie_sk.C3.B3ry_w_miejscu_przy.C5.82o.C5.BCenia_elektrody|przygotowanie skóry głowy]]
 
* [[Pracownia_Sygnałów_Biologicznych/Zajecia_9#Oczyszczanie_sk.C3.B3ry_w_miejscu_przy.C5.82o.C5.BCenia_elektrody|przygotowanie skóry głowy]]
 
* [[Elektroencefalografia/Fizyczne_i_techniczne_aspekty_rejestracji_sygnałów_bioelektrycznych#Praktyczne_uwagi_dotycz.C4.85ce_przeprowadzania_rejestracji_sygna.C5.82u_EEG|techniczne uwagi]] dotyczące pomiaru EEG.
 
* [[Elektroencefalografia/Fizyczne_i_techniczne_aspekty_rejestracji_sygnałów_bioelektrycznych#Praktyczne_uwagi_dotycz.C4.85ce_przeprowadzania_rejestracji_sygna.C5.82u_EEG|techniczne uwagi]] dotyczące pomiaru EEG.
<li>
+
 
Dokonaj przynajmniej 25-minutowego zapisu EEG w systemie 10-20, jako elektrody referencyjne wybierz elektrody uszne. Jednocześnie wraz z rejestracją EEG dokonaj pomiaru sygnału EKG z [[Pracownia_Sygnałów_Biologicznych/Zajecia_2_4|odprowadzenia I Einthovena]], EMG z szyi oraz elektrookulogamu. W trakcie pomiaru, w wybranych chwilach czasu wykonaj:
+
=== Rejestracja ===
 +
<ol>
 +
 +
<li> Dokonaj przynajmniej 25-minutowego zapisu EEG w systemie 10-20, jako elektrody referencyjne wybierz elektrody uszne. Jednocześnie wraz z rejestracją EEG dokonaj pomiaru sygnału EKG z [[Pracownia_Sygnałów_Biologicznych/Zajecia_2_4|odprowadzenia I Einthovena]], EMG z szyi oraz elektrookulogamu. W trakcie pomiaru, w wybranych chwilach czasu wykonaj:
  
 
<ul>
 
<ul>
 
+
<li> mrugnięcie,
<li>
+
<li> ruch językiem,
mrugnięcie,
+
<li> żucie,
 
+
<li> napięcie mięśni rąk bądź nóg na tyle silne, aby wywołało drżenie,
 
+
<li> ruch oczu w prawo,
<li>
+
<li> ruch oczu w lewo,
ruch językiem,
+
<li> zmarszczenie czoła,
 
+
<li> zaciśnięcie zębów,
 
+
<li> napięcie mięśni szyi,
<li>
+
<li> ruch głową
żucie,
 
 
 
 
 
<li>
 
napięcie mięśni rąk bądź nóg na tyle silne, aby wywołało drżenie,
 
 
 
 
 
<li>
 
ruch oczu w prawo,
 
 
 
 
 
<li>
 
ruch oczu w lewo,
 
 
 
 
 
<li>
 
zmarszczenie czoła,
 
 
 
 
 
<li>
 
zaciśnięcie zębów,
 
 
 
 
 
<li>
 
napięcie mięśni szyi,
 
 
 
 
 
<li>
 
ruch głową
 
 
 
 
</ul>
 
</ul>
  
Linia 303: Linia 273:
  
 
<ul>
 
<ul>
 
+
<li>przez 30 sekund chodził za Tobą,
<li>
+
<li> pogłaskał Cię po ramieniu
przez 30 sekund chodził za Tobą,
 
 
 
 
 
<li>
 
pogłaskał Cię po ramieniu
 
 
 
 
</ul>
 
</ul>
  
 
Kolega powinien odnotować czas wykonywania powyższych czynności.
 
Kolega powinien odnotować czas wykonywania powyższych czynności.
Po zakończeniu rejestracji otwórz z pliku zapisany sygnał. Obejrzyj dokładnie zarówno 2-minutowe odcinki sygnału pomiędzy wykonywanymi ruchami jak i w momencie wykonywania ruchów. Scharakteryzuj powstałe artefakty pod względem amplitudy, długości trwania, widma mocy i topografii.
 
Zmień referencje pomiaru z jednobiegunowego usznego na dwubiegunowy podłużny bananowy. Ponownie przyjrzyj się zapisowi i scharakteryzuj artefakty.
 
<li>
 
Ponownie dokonaj przynajmniej 25-minutowego zapisu EEG wraz z EMG, EKG i elektrogokulogramem.
 
Powtórz wszystkie czynności ruchowe wymienione w poprzednim punkcie. Zanotuj czas wystąpienia danego ruchu, ale nie ujawniaj go nikomu. Swój zapis sygnałów bioelektrycznych przekaż pozostałym grupom. Od nich otrzymasz również zapisy. Na podstawie dotychczas zebranych wiadomości, dokonaj przeglądu otrzymanych zapisów pod kątem występowania artefaktów. Pod dokonaniu analizy poproś grupy od których otrzymałeś dane o informacje jakie ruchy były wykonywane w określonej chwili czasu. Sprawdź poprawność dokonanych przez Ciebie oznaczeń artefaktów z informacjami dostarczonymi przez kolegów.
 
<li>
 
Zarejestruj 10 minut sygnału EEG, w trakcie których badana osoba będzie siedziała z otwartymi oczami oraz kolejne 10 minut w stanie czuwania z zamkniętymi oczami.
 
</ol>
 
  
===Ćwiczenie II &mdash; Estymacja funkcji autokowariancji, autokorelacji i koherencji sygnału.===
 
  
 +
<li> Zarejestruj 10 minut sygnału EEG, w trakcie których badana osoba będzie siedziała z otwartymi oczami oraz kolejne 10 minut w stanie czuwania z zamkniętymi oczami. Sygnał ten będzie potrzebny w czasie kolejnych zajęć, więc zapisz jego kopię zapasową.
  
====Zadanie 1:  Funkcje autokowariancji i autokorelacji====
+
</ol>
=====Wstęp=====
 
Z funkcjami tymi spotkaliśmy się już na zajęciach z [[Ćwiczenia_4|analizy sygnałów]].
 
 
 
Funkcja autokowariancji sygnału charakteryzuje liniową zależność wartości tego sygnału w danej określonej chwili czasu od wartości (tego samego sygnału) w innej chwili.
 
W przypadku [[Nieparametryczne_widmo_mocy#Sygna.C5.82y_stochastyczne  | stacjonarnych procesów stochastycznych]], przebieg tej funkcji nie zależy od czasu.
 
Oznacza to, że obliczając funkcję autokorelacji sygnału pomiędzy chwilą czasu <math>x(t)</math> i <math>x(t+\tau )</math> otrzymamy tę samą wartość, jak dla przypadku obliczania funkcji autokorelacji pomiędzy momentami <math>x(t + T)</math> i <math>x(t + T+\tau )</math>, gdzie <math>T</math> to dowolny przedział czasu. Innymi słowy, funkcja autokorelacji procesu stacjonarnego zależy tylko od odstępu czasu pomiędzy próbkami <math>\tau</math>, dla którego jest wyznaczana, a nie od konkretnej chwili czasu. Odrębną klasę sygnałów stanowią procesy niestacjonarne, w przypadku których funkcja autokorelacji będzie zależeć od czasu <math>t</math> w którym jest obliczana. Estymator funkcji autokowariancji uzyskuje się poprzez obliczanie iloczynów wartości sygnału <math>x</math> w chwilach czasu <math>t</math> czyli <math>x(t)</math> i wartości sygnału <math>x</math> w chwili czasu ''t''+&tau; czyli <math>x(t+\tau)</math> i uśredniając wartości iloczynów po czasie <math>T</math>:
 
 
 
<equation id="uid79">
 
<math>
 
\gamma (\tau) = \mathrm{cov}(x(t),x(t-\tau ))=\mathrm{E}[(x(t)-\mu )(x(t-\tau )-\mu )]
 
</math>
 
</equation>
 
 
 
gdzie:
 
 
 
<equation id="uid80">
 
<math>
 
\mu = \mathrm{E}[x(t)]
 
</math>
 
</equation>
 
 
 
W przypadku sygnałów ciągłych estymację tę można zapisać w poniższy sposób:
 
 
 
<equation id="uid81">
 
<math>
 
\gamma (\tau ) = \frac{1}{T}\int _0^{T}(x(t)-\mu )(x(t-\tau )-\mu )dt
 
</math>
 
</equation>
 
 
 
natomiast dla sygnałów dyskretnych jako:
 
 
 
<equation id="uid82">
 
<math>
 
\gamma (k) = \frac{1}{N-1}\sum _{i=0}^{N-k}(x(i+k)-x_s)(x(i)-x_s)
 
</math>
 
</equation>
 
 
 
gdzie:
 
 
 
<equation id="uid83">
 
<math>
 
x_s = \frac{\sum _{i=0}^{N}x(i)}{N}
 
</math>
 
</equation>
 
 
 
Funkcja autokowariancji może osiągać dowolne wartości, dlatego aby można było porównać przebieg tej funkcji np. pomiędzy dwoma sygnałami, wprowadzono wersję znormalizowaną tej funkcji - ''funkcję autokorelacji''. Normalizacja ta wygląda następująco:
 
 
 
<equation id="uid84">
 
<math>
 
\rho (k) = \frac{\gamma (\tau )}{\sigma^2}
 
</math>
 
</equation>
 
 
 
gdzie:
 
 
 
<equation id="uid85">
 
<math>
 
\sigma ^2 = \mathrm{E}[(x(t)-\mu )^2]
 
</math>
 
</equation>
 
 
 
Wariancję sygnału (<math>\gamma (0)=\sigma ^2</math>) można wyrazić przez funkcję autokowariancji dla przesunięcia <math>\tau =0</math>.  Wynika z tego, że funkcja korelacji przyjmuje wartości z zakresu <math>[-1, \, 1]</math>. Ostatecznie estymator funkcji autokorelacji można zapisać jak poniżej:
 
 
 
<equation id="uid86">
 
<math>
 
\rho(k) = \frac{\gamma (k)}{\gamma (0)}
 
</math>
 
</equation>
 
 
 
Funkcję autokorelacji estymuje się w celu określenia, w jakim stopniu wartości sygnału w danej chwili czasu wpływają na wartości sygnału w kolejnych chwilach czasu. Ma to kluczowe znaczenie przy rozpoznawaniu rodzaju procesów fizycznych odpowiedzialnego za generowanie sygnału. Funkcja ta zawsze mam maksimum dla przesunięcia <math>\tau =0</math>.
 
 
 
 
 
Cechą charakterystyczną funkcji autokorelacji jest to, iż w przypadku sygnałów harmonicznych, przebieg funkcji ma charakter okresowy, z okresem takim samym o okres badanego sygnału. W przypadku szumu, funkcja autokorelacji ma kształt funkcji delta Diraca.
 
 
 
=====Polecenie:=====
 
Zaimplementuj funkcję do oblicznia funkcji korelacji zgodnie ze wzorem (4). Funkcja powinna przyjmować dwa wektory i maksymalne przesunięcie wzajemne tych wektorów, natomiast zwracać powinna wektor zawierający funkcję autokorelacji. Wywołanie przykładowe:
 
<source lang = python>
 
a = np.array([1,2,3])
 
print koreluj(a,a,2)
 
</source>
 
powinno dać wynik:
 
[-0.5  0.  1.  0.  -0.5]
 
 
 
 
 
<!--{{hidden begin|title=Przykładowe rozwiązanie:}}-->
 
<!-- <tt>*</tt> -->
 
<!--
 
<source lang = python>
 
import numpy as np
 
 
 
def koreluj_pol(x,y,max_tau):
 
    x = x - np.mean(x)
 
    y = y - np.mean(y)
 
    N= len(x)
 
    cor = np.zeros(max_tau+1)
 
    cor[0] = np.sum(x[:]*y[:])
 
    for i in range(1,max_tau+1):
 
        cor[i] = np.sum(x[i:]*y[:-i])
 
       
 
    cor = cor /(N-1)
 
    return cor
 
 
 
def koreluj(x,y,max_tau):
 
    cor = np.zeros(2*max_tau+1)   
 
    cor[max_tau:] = koreluj_pol(x,y,max_tau)
 
    tmp = koreluj_pol(y,x,max_tau)
 
    cor[:max_tau+1] = tmp[-1::-1]
 
    return cor   
 
   
 
a = np.array([1,2,3])
 
for i in range(3):
 
    print koreluj(a,a,i)
 
   
 
   
 
a = np.array([1,2,3])
 
b = np.array([-1,-2,-3])
 
 
 
for i in range(3):
 
    print koreluj(a,b,i)
 
   
 
</source>
 
{{hidden end}}
 
-->
 
 
 
 
 
W tym zadaniu posłużymy się sygnałami zarejestrowanymi w punkcie 4. poprzedniego ćwiczenia. Zaobserwuj, na którym kanale rytm alfa osiąga najwyższą wartość. Następnie zaimplementuj w Pythonie następujące kroki:
 
 
 
# Wczytaj dane z wybranego kanału.
 
# Oblicz funkcję autokorelacji dla sygnału zarejestrowanego w warunkach, gdy osoba badana siedziała z otwartymi oczami. Narysuj autokorelogram, to jest wykres wartości funkcji autokorelacji względem przesunięcia <math>\tau </math>. Oś <math>\tau </math> wyskaluj w sekundach.
 
# Powtórz krok 2, tym razem za sygnału zebranego w warunkach czuwania z zamkniętymi oczami.
 
# Porównaj autokorelogramy.
 
 
 
====Zadanie 2: Związek autokorelacji z widmem sygnału====
 
=====Wstęp=====
 
Zgodnie z twierdzeniem Chinczyna, z którym zapoznaliśmy się na wykładzie z [[Twierdzenie_Wienera-Chinczyna|Analizy Sygnałów]], widmową gęstość mocy sygnału można policzyć jako transformatę Fouriera funkcji autokowariancji:
 
 
 
<equation id="uid93">
 
<math>
 
S(f) = \int _{-\infty }^{\infty }\gamma (\tau )e^{-2\pi i f \tau}d\tau </math>
 
</equation>
 
 
 
gdzie:
 
 
 
<ul>
 
 
 
<li>
 
<math>f</math> &mdash; częstość
 
 
 
 
 
<li>
 
<math>S(f)</math> &mdash;  gęstość widmowa mocy
 
 
 
</ul>
 
  
 +
===Praca z sygnałami===
 +
<ol>
 +
<li>Po zakończeniu rejestracji otwórz w SVAROGu z pliku zapisany sygnał. Obejrzyj dokładnie zarówno 2-minutowe odcinki sygnału pomiędzy wykonywanymi ruchami jak i w momencie wykonywania ruchów. Scharakteryzuj powstałe artefakty pod względem amplitudy, długości trwania, widma mocy i topografii.
 +
<li> Zmień referencje pomiaru z jednobiegunowego usznego na dwubiegunowy podłużny bananowy. Ponownie przyjrzyj się zapisowi i scharakteryzuj artefakty.
 
<!--
 
<!--
Poniższy kod ilustruje to twierdzenie:
+
<li> Zastosuj transformację ICA. Przyjrzyj się otrzymanym komponentom, ich przebiegom czasowym, widmom mocy i topografiom.
<source lang = py>
 
# -*- coding: utf-8 -*-
 
from __future__ import division
 
import pylab as py
 
import numpy as np
 
from numpy.fft import rfft,fft,fftfreq,fftshift
 
 
def widmo_mocy(s, Fs):
 
    '''Funkcja licąca widmo mocy metodą periodogramu,
 
pobiera sygnał i częstość próbkowania
 
zwraca widmo mocy i oś częstości
 
    '''
 
    S = fft(s)/np.sqrt(len(s))
 
    S_moc = S*S.conj()
 
    S_moc = S_moc.real
 
    F = fftfreq(len(s), 1/Fs)
 
    return (fftshift(S_moc),fftshift(F))
 
 
def sin(f = 1, T = 1, Fs = 128, phi =0 ):
 
    '''sin o zadanej częstości (w Hz), długości, fazie i częstości próbkowania
 
    Domyślnie wytwarzany jest sygnał reprezentujący
 
    1 sekundę sinusa o częstości 1Hz i zerowej fazie próbkowanego 128 Hz
 
    '''
 
    dt = 1.0/Fs
 
    t = np.arange(0,T,dt)
 
    s = np.sin(2*np.pi*f*t + phi)
 
    return (s,t)
 
 
# sygnał próbny będzie próbkowany z częstością FS
 
FS = 100.0
 
# sygnałem próbnym będzie sinusoida o częstości f
 
(s,t) = sin(f=10.5,Fs=FS)
 
# obliczamy moc i energię sygnału w dziedzinie czasu
 
moc_w_czasie = s**2
 
energia_w_czasie = np.sum(moc_w_czasie)
 
print 'energia w czasie: ', energia_w_czasie
 
 
# obliczamy widmo mocy sygnału i jego energię estymowaną w dziedzinie częstości
 
(moc_w_czestosci, F) = widmo_mocy(s, Fs=FS)
 
energia_w_czestosci = np.sum(moc_w_czestosci)
 
print 'energia w czestosci: ', energia_w_czestosci
 
 
# estymujemy funkcję autokorelacji sygnału
 
ak = 1./(2*len(s)-1)*np.correlate(s,s,'full')
 
 
 
# estymujemy widmo mocy i energię sygnału z twierdzenia Chinczyna korzystając z funkcji fft:
 
moc_chi = np.abs(fft(ak))
 
energia_chin = sum(moc_chi)
 
print 'energia z tw. Chinczyna przez fft: ', energia_chin
 
 
# estymujemy widmo mocy i energię sygnału z twierdzenia Chinczyna korzystając z jawnej postaci transformaty Fouriera:
 
FF = np.linspace(-FS/2,FS/2,1000)
 
M = np.zeros(len(FF),dtype='complex')
 
 
for i,f in enumerate( FF):
 
    for tau in range(len(ak)):
 
        M[i] += ak[tau]*np.exp(2*np.pi*1j*f*(len(ak)-tau)/FS)
 
M = np.abs(M)
 
energia_chin_sum = np.sum(M)* (len(ak)/len(FF))
 
print 'energia z tw. Chinczyna przez sumowanie: ', energia_chin_sum
 
 
 
# Rysunki
 
py.figure(1)
 
py.subplot(3,1,1)
 
py.plot(t,s)
 
py.title(u'Sygnal')
 
py.subplot(3,1,2)
 
py.plot(t,moc_w_czasie)
 
py.title(u'moc w czasie')
 
py.subplot(3,1,3)
 
py.plot(F,moc_w_czestosci)
 
py.title(u'moc w czestosci')
 
 
py.figure(2)
 
py.subplot(3,1,1)
 
py.title('f. autokowariancji')
 
py.plot(np.arange(-len(ak)/2,len(ak)/2,1)/FS ,ak)
 
py.subplot(3,1,2)
 
py.plot(fftshift(fftfreq(len(moc_chi),1./FS)),fftshift(moc_chi))
 
py.title('widmo mocy z Tw. Chinczyna przez fft')
 
py.subplot(3,1,3)
 
py.plot(FF,M)
 
py.title('widmo mocy z Tw. Chinczyna przez sumowanie')
 
py.show()
 
</source>
 
 
 
W wyniku powinniśmy zobaczyć w terminalu:
 
energia w czasie:  50.0
 
energia w czestosci:  50.0
 
energia z tw. Chinczyna przez fft:  50.0
 
energia z tw. Chinczyna przez sumowanie:  49.9501172217
 
 
 
oraz powinny pojawić się rysunki:
 
[[Plik:Fig_chinczyn1.png|thumb 200 px|center]]
 
[[Plik:Fig_chinczyn2.png|thumb 200 px|center]]
 
 
-->
 
-->
 
+
<li>  Swój zapis sygnałów bioelektrycznych przekaż pozostałym grupom. Od nich otrzymasz również zapisy. Na podstawie dotychczas zebranych wiadomości, dokonaj przeglądu otrzymanych zapisów pod kątem występowania artefaktów. Pod dokonaniu analizy poproś grupy od których otrzymałeś dane o informacje jakie ruchy były wykonywane w określonej chwili czasu. Sprawdź poprawność dokonanych przez Ciebie oznaczeń artefaktów z informacjami dostarczonymi przez kolegów
=====Polecenie: =====
 
 
 
Oblicz gęstość widmową mocy sygnału zarejestrowanego w trakcie czuwania z zamkniętymi oczami, korzystając z twierdzenia Chinczyna oraz [[Nieparametryczne_widmo_mocy#Metoda_Welcha | metodą Welcha]].
 
Znajdź częstość rytmu <math>\alpha</math> dla osoby, która była badana.
 
 
 
====Zadanie 3: Funkcja kowariancji i korelacji====
 
=====Wstęp=====
 
 
 
W celu scharakteryzowania zależności wzajemnej dwóch sygnałów losowych, stosuje się funkcję kowariancji, zdefiniowaną w następujący sposób:
 
 
 
<equation id="uid98">
 
<math>
 
\gamma _{xy} (\tau ) = \mathrm{cov}(x(t),y(t-\tau ))=\mathrm{E}[(x(t)-\mu _x)(y(t-\tau )-\mu _y)]
 
</math>
 
</equation>
 
 
 
gdzie:
 
 
 
<equation id="uid99">
 
<math>
 
\begin{array}{l}
 
\mu _x = \mathrm{E}[x(t)]\\
 
\mu _y = \mathrm{E}[y(t)]\\ \end{array}
 
</math>
 
</equation>
 
 
 
W przypadku sygnałów ciągłych estymację tę można zapisać w poniższy sposób:
 
 
 
<equation id="uid100">
 
<math>
 
\gamma _{xy} (\tau ) = \frac{1}{T}\int _0^{T}(x(t)-\mu_x)(y(t-\tau)-\mu_y)dt
 
</math>
 
</equation>
 
 
 
natomiast dla sygnałów dyskretnych jako:
 
 
 
<equation id="uid101">
 
<math>
 
\gamma _{xy}(k) = \frac{1}{N-1}\sum _{i=0}^{N-k}(x(i+k)-x_s)(y(i)-y_s)
 
</math>
 
</equation>
 
 
 
W odróżnieniu od funkcji autokowariancji, funkcja kowariancji nie musi mieć maksimum dla przesunięcia <math>\tau =0</math>. Ponadto posiada ona następującą cechę:
 
 
 
<equation id="uid102">
 
<math>
 
\gamma _{xy}(-\tau ) = \gamma _{yx}(\tau )
 
</math>
 
</equation>
 
 
 
Funkcję kowariancji można znormalizować:
 
 
 
<equation id="uid103">
 
<math>
 
\rho (k) = \frac{\mathrm{E}[(x(t)-\mu _x)(y(t-\tau )-\mu _y)]}{\sqrt{\mathrm{E}[(x(t)-\mu _x)^2]\mathrm{E}[(y(t)-\mu _y)^2]}} = \frac{\gamma _{xy}}{\sigma_x\sigma_y}
 
</math>
 
</equation>
 
Otrzymaną funkcję nazywamy funkcją korelacji.
 
Jednym z zastosowań funkcji korelacji jest wyznaczanie czasu przejścia sygnału przez dany układ liniowy. Funkcja korelacji pomiędzy sygnałem na wejściu układu i sygnałem na jego wyjściu osiągnie wartość maksymalną dla przesunięcia <math>\tau </math> równego czasowi, jaki potrzebował sygnał na pokonanie danego układu. Niestety, taka metoda wyznaczania opóźnienia obarczona jest pewną wadą &mdash; w przypadku gdy prędkość sygnału bądź jego droga zależą od częstości, wtedy na wykresie funkcji korelacji nie uzyskamy wyraźnego maksimum.
 
 
 
=====Polecenie =====
 
Zaimplementuj funkcję obliczającą funkcję kowariancji dla różnych sygnałów ''x'' i ''y'' (równanie 13) skorzystaj przy tym z własności opisanej równaniem (14).
 
Przykładowe wywołanie:
 
<source lang = python>
 
a = np.array([1,2,3])
 
b = np.array([-1,-2,-3])
 
 
 
print koreluj(a,b,2)
 
</source>
 
powinno dać w wyniku:
 
[ 0.5 0.  -1.  0.  0.5]
 
 
 
<!--
 
{{hidden begin|title=Przykładowe rozwiązanie:}}
 
<source lang = python>
 
import numpy as np
 
import pylab as py
 
 
 
def koreluj(x,y,max_tau):
 
    x = x - np.mean(x)
 
    y = y - np.mean(y)
 
    cor = np.zeros(2*max_tau+1)
 
    cor[max_tau] = np.sum(x[:]*y[:])
 
    for i in range(1,max_tau+1):
 
        cor[max_tau+i] = np.sum(x[i:]*y[:-i])
 
        cor[max_tau-i] = np.sum(y[i:]*x[:-i])
 
    N= len(x)
 
    cor = cor /(N-1)
 
    return cor
 
 
 
a = np.array([1,2,3])
 
b = np.array([-1,-2,-3])
 
for i in range(3):
 
    print koreluj(a,b,i)
 
</source>
 
{{hidden end}} -->
 
Z danych zarejestrowanych w trakcie czuwania z zamkniętymi oczami wybierz sygnały z następujących kanałów: Fp1, P3, Pz, P4, Fp2, O1, O2.
 
 
 
<ol>
 
 
 
<li>
 
Dla każdego kanału oblicz funkcję autokorelacji, zaś dla każdej pary kanałów oblicz funkcję korelacji wzajemnej. Wyniki zaprezentuj w formie kwadratowej macierzy wykresów (za pomocą funkcji subplot, tak jak na przykładowym rys. (rys. <xr id="uid9"> %i</xr>)). Na przekątnej macierzy narysuj funkcję autokorelacji odpowiednich kanałów, poza przekątną &mdash; funkcję korelacji wzajemnej. Wskaż kanały, które są najbardziej skorelowane ze sobą. Czy możliwe jest wyznaczenie opóźnienia sygnału pomiędzy tymi kanałami?
 
 
 
 
 
<li>
 
Powtórz punkt 1, tym razem jednak funkcję autokorelacji i korelacji wzajemnej oblicz na sygnałach przefiltrowanych filtrem wąskopasmowym w paśmie alfa charakterystycznym dla badanej osoby. ([[%C4%86wiczenia_7#Funkcje_do_projektowania_filtr.C3.B3w_IIR_dost.C4.99pne_w_module_scipy.signal|przypomnienie konstrukcji filtrów]])
 
 
 
 
 
<li>
 
Oszacuj istotność statystyczną zależności między parami kanałów. Twoją hipotezą zerową jest brak istotnej korelacji pomiędzy sygnałami zarejestrowanymi przez dwie różne elektrody EEG. Hipoteza alternatywna to występowanie zależności pomiędzy tymi sygnałami. Podanie estymatorów wariancji funkcji korelacji jest bardzo trudne, dlatego jednym ze sposobów oszacowania progu powyżej którego wartość funkcji korelacji można byłoby uznać za istotną statystycznie, jest zastosowanie metody ''bootstrap''. Teoretycznie, funkcja korelacji policzona dla dwóch rzeczywistych, nieskorelowanych sygnałów, powinna wynosić 0 dla każdego przesunięcia <math>\tau</math>. Tak jest jednak w przypadku sygnałów nieskończonych; w analizie sygnałów takowych nie spotkamy.
 
 
 
Dokonując losowej zamiany kolejności próbek, możemy doprowadzić do wytworzenia sygnałów zależnych losowo, które jednak ze względu na skończony czas trwania, dadzą niezerową funkcję korelacji. Poziom losowych fluktuacji tej funkcji oszacujemy wykonując następujące kroki:
 
<ol type="A">
 
<li> Losowa zamiana kolejności próbek w analizowanych sygnałach. Jeżeli pomiędzy dwoma sygnałami istnieją jakieś zależności, losowa zamiana próbek doprowadzi do zniszczenia tych związków. W ten sposób uzyskujemy sygnały, które teoretycznie są nieskorelowane.
 
<li> Obliczenie funkcji  korelacji wzajemnej dla sygnałów policzonych w punkcie A.
 
<li> Powtórzenie kroków A i B wiele (np. 1000) razy.
 
<li> Oszacowanie 95 % przedziału ufności dla wartości średniej funkcji korelacji wzajemnej dla danego przesunięcia <math>\tau</math> korzystając z otrzymanego w kroku C empirycznego rozkładu wartości tych funkcji dla sygnałów niezależnych. 
 
<li> Powtórzenie kroków A-D dla kolejnych przesunięć <math>\tau</math>.
 
<li> Sprawdzenie, dla których przesunięć <math>\tau </math> funkcje autokorelacji i korelacji obliczone dla oryginalnych sygnałów uzyskały wartości wyższe niż wartości progowe oszacowane dla sygnałów o losowych zależnościach.
 
</ol>
 
 
 
Procedura opisana powyżej ma jednak pewną wadę. Staramy się w niej oszacować poziom przypadkowych korelacji pomiędzy dwoma sygnałami dla kolejnych przesunięć <math>\tau </math>, co jest niczym innym jak wielokrotnym powtórzeniem pewnego testu. Obserwowanie korelacji dla wielu par kanałów równocześnie również prowadzi do zwiększenia szansy na zaobserwowanie ekstremalnie dużych fluktuacji.
 
Występuje tu zatem ''problem wielokrotnych porównań''.
 
Przypominamy, iż może to doprowadzić do przypadkowego uznania wyników jako &bdquo;istotnych&rdquo; statystycznie. Np. jeśli pojedynczy test wykonujemy na poziomie istotności 5% to dopuszczamy odrzucenie w 1 przypadku na 20 hipotezy zerowej pomimo, iż jest ona prawdziwa. Z drugiej jednak strony, jeśli powtórzymy wykonywany test 20 razy, to oczekujemy uzyskania 1 przypadku, w którym poziom <math>p</math> będzie mniejszy od 5% co jest przesłanką za odrzuceniem hipotezy zerowej.
 
 
 
W przypadku wykonywania serii testów należałoby więc zastosować odpowiednie poprawki, np. [http://www.bmj.com/content/310/6973/170.full korektę Bonferroniego] czy [http://en.wikipedia.org/wiki/False_discovery_rate false discovery rate (FDR)]. Innym rozwiązaniem w analizowanym przez nas problemie jest zastosowanie tzw. statystyk wartości ekstremalnych, które prowadzą do następujących zmian w procedurze (nie działa dla funkcji autokorelacji ze względu na jej normalizację do 1 dla zerowego przesunięcia):
 
 
 
<ol type="A">
 
<li> Losowa zmiana kolejności próbek w analizowanych sygnałach (we wszystkich analizowanych kanałach). Jeżeli pomiędzy dwoma sygnałami istnieją jakieś zależności, losowa zamiana próbek doprowadzi do zniszczenia tych związków. W ten sposób uzyskujemy sygnały, które teoretycznie są nieskorelowane.
 
<li> Obliczenie funkcji korelacji dla sygnałów otrzymanych w punkcie A.
 
<li>    Zapamiętanie maksymalnej wartości bezwzględnej funkcji korelacji z punktu B (maksimum bierzemy po wszystkich przesunięciach i po wszystkich parach kanałów).
 
<li> Powtórzenie kroków A-C 1000 razy. Uzyskamy w ten sposób rozkład maksymalnych wartości funkcji korelacji możliwych do zaobserwowania dla sygnałów niezależnych.
 
<li>    Wyznaczenie 95 centyla rozkładu wartości maksymalnych.
 
<li> Nałożenie na rysunki funkcji korelacji uzyskane w Zadaniu 2 poziomych linii symbolizujących poziom zależności dwóch sygnałów o losowych zależnościach i sprawdzenie, dla których przesunięć <math>\tau </math> wartości funkcji korelacji przekraczają estymowane progi istotności statystycznej.
 
 
</ol>
 
</ol>
  
</ol>
+
===ICA (ćwiczenie dodatkowe)===
 
+
Popularna w ostatnich latach metoda "czyszczenia" sygnału z artefaktów opiera się na analizie składowych niezależnych.
[[Plik:Korelacje_wzajemne.png|700px|center|thumb|<figure id="uid9" />Przykład wyniku analizy korelacji wzajemnych dla sygnału niefiltrowanego z naniesionymi granicami możliwych fluktuacji.]]
 
 
 
====Zadanie 4: Wzajemna gęstość widmowa sygnałów i koherencja====
 
=====Wstęp=====
 
Podobnie jak w przypadku twierdzenia Chinczyna dla pojedynczego sygnału, możliwe jest policzenie transformaty Fouriera funkcji kowariancji. Uzyskana w ten sposób wielkość nazywa się funkcją wzajemnej gęstości mocy widmowej sygnału:
 
 
 
<equation id="uid122">
 
<math>
 
S_{xy}(f) = \int _{-\infty }^{\infty }\gamma_{xy}(\tau )e^{-2\pi i f \tau}d\tau </math>
 
</equation>
 
 
 
W celu dalszego omówienia własności funkcji wzajemnej mocy widmowej sygnałów funkcję tę zapiszemy w postaci:
 
 
 
<equation id="uid123">
 
<math>
 
\begin{array}{l}
 
S_{xy}(f) = |S_{xy}(f)|e^{i\phi _{xy}(f)}\\
 
\\
 
\phi _{xy} = \arg(S_{xy})
 
\end{array} </math>
 
</equation>
 
<!-- \mathrm{arc\,tg}\left[\frac{\mathrm{Im}(S_{xy}(f))}{\mathrm{Re}(S_{xy}(f))}\right]-->
 
 
 
Wartość bezwzględna funkcji wzajemnej gęstości mocy widmowej osiąga największą wartość dla '''częstości''', w których sygnały <math>x(t)</math> i <math>y(t)</math> są ze sobą skorelowane. Funkcja wzajemnej mocy widmowej sygnałów pozbawiona jest zatem wady, która charakteryzowała funkcję korelacji, to jest problemu z wyznaczeniem czasu transmisji sygnału, w przypadku gdy czas ten zależał od częstości. Przy pomocy funkcji wzajemnej mocy widmowej, czas ten można oszacować przy pomocy fazy tej funkcji &mdash; <math>\phi _{xy}(f)</math>. Jeśli funkcja wzajemnej mocy widmowej została wyznaczona pomiędzy sygnałami na wejściu i wyjściu układu liniowego, to faza ta reprezentuje przesunięcie fazowe sygnału przy przejściu przez układ. Czas tego przejścia można oszacować za pomocą następującej wyrażenia:
 
 
 
<equation id="uid124">
 
<math>
 
\tau = \frac{\phi _{xy}(f)}{2\pi f}
 
</math>
 
</equation>
 
  
Podobnie jak w przypadku funkcji autokorelacji i korelacji wzajemnej, funkcję wzajemnej gęstości mocy widmowej można znormalizować:
+
Analiza składowych niezależnych (ang. ''Independent Components Analysis'',
 +
ICA) to jedno z określeń dla metod rozwiązywania problemu tzw. ślepej
 +
separacji źródeł (''blind source separation, BSS''). Przyjęty model
 +
zakłada, że mamy do czynienia z następującą sytuacją: dane którymi
 +
dysponujemy (<math>\vec{x}</math> &mdash; np. zapisy z kilku mikrofonów)
 +
są liniową mieszaniną kilku statystycznie niezależnych sygnałów
 +
(<math>\vec{s}</math> &mdash; np. głosy kilku mówiących jednocześnie osób,
 +
tzw. ''cocktail party problem''):  
  
<equation id="uid125">
+
<math>  
<math>
+
\vec{x} = A \vec{s}
C_{xy}(f) = \frac{S_{xy}(f)}{\sqrt{S_x(f)S_y(f)}}
+
</math>  
</math>
 
</equation>
 
  
Znormalizowaną postać funkcji wzajemnej gęstości mocy widmowej nazywamy funkcją ''koherencji''.
+
<math>A</math> zwiemy macierzą mieszającą, a
Koherencja jest wielkością zespoloną. Faza koherencji odzwierciedla różnicę faz pomiędzy dwoma sygnałami. Moduł koherencji reprezentuje stopień synchronizacji sygnałów i zawiera się w przedziale od 0.0 do 1.0. Moduł tej funkcji zawiera się w przedziale od 0 do 1. Wartości 0 odpowiada brak synchronizacji pomiędzy sygnałami, zaś wartości 1 pełna synchronizacja dwóch przebiegów czasowych. Należy również zwrócić uwagę na nazewnictwo - często sam moduł koherencji określany jest jako koherencja, w literaturze anglojęzycznej moduł koherencji posiada jednak odrębną nazwę: Magnitude Square Coherence (MSC). Istotny jest również sposób estymacji modułu koherencji, który wyprowadzono w następnym rozdziale, zaś sam estymator reprezentuje wzór (36).
+
rozwiązania szukamy w postaci macierzy separującej <math>B</math>, takiej, że wektor sygnałów
  
=====Kilka słów o koherencji=====
+
<math> \vec{y}=B\vec{x}
Wzór (<xr id="uid125"/>), definiujący ilościową miarę koherencji, nie uwzględnia stochastycznego charakteru sygnałów. Łatwo zauważyć, że bezpośrednie zastosowanie tego wzoru do obliczenia koherencji dwóch sygnałów o tej samej częstości i różniących się jedynie amplitudą oraz fazą, zawsze da wynik równy 1. Prześledźmy to na następującym przykładzie. <br>
+
</math>  
Dane są dwa sygnały harmoniczne <math>x(t) = A\cos(\Omega t + \phi_x)</math> oraz <math>y(t) = B\cos(\Omega t + \phi_y)</math>.
 
Widmo tych sygnałów, wyrażone za pomocą transformaty Fouriera, będzie miało następującą postać: <br>
 
<br>
 
<math>X(f)=Ae^{-j\phi_x}</math> <br>
 
<br>
 
<math>Y(f)=Be^{-j\phi_y}</math>, <br>
 
<br>
 
zaś ich widmo wzajemne: <br>
 
<br>
 
<math>X(f)\cdot Y^*(f) = A\cdot Be^{-j(\phi_x - \phi_y)}</math>, <br>
 
<br>
 
gdzie: <math>j=\sqrt{-1}</math>, a * oznacza sprzężenie liczby zespolonej. <br>
 
Podstawienie wyrażeń na widmo sygnałów <math>x(t)</math>, <math>y(t)</math> oraz ich widmo wzajemne do wzoru <xr id="id9"/> da koherencję <math>K_{xy}(f) = 1</math> niezależnie od amplitudy sygnałów <math>A</math> i <math>B</math> oraz ich faz <math>\phi_x</math> i <math>\phi_y</math>.
 
<br>
 
<br>
 
W praktyce rzadko jednak mamy do czynienia z sygnałami harmonicznymi. Zwykle mierzone przez nas wielkości mają stochastyczny charakter bądź też ich pomiar jest zaburzany przez różne czynniki.
 
Rozważmy teraz najprostszy model pomiaru sygnału, w którym uwzględniono wpływ zakłóceń w postaci białego szumu. Na wejście układu LTI o funkcji impulsowej opisanej wyrażeniem <math>h(t)</math> podamy sygnał <math>x(t)</math> i widmie danym funkcją <math>X(f)</math>. Układ LTI przetworzy sygnał wejściowy na przebieg <math>y(t)</math> o widmie <math>Y(f)</math>. Z uwagi na zaburzenia <math>n(t)</math> o widmie <math>N(f)</math> towarzyszące pomiarowi aparatura nie zarejestruje sygnał <math>y(t)</math> lecz <math>z(t) = y(t) + n(t)</math>. Opisane zależności możemy opisać za pomocą poniższych wzorów:<br>
 
<br>
 
<math>y(t) = h(t)*x(t)</math> <br>
 
<br>
 
<math>z(t) = y(t) + n(t)</math> <br>
 
<br>
 
gdzie: <math>*</math> - operacja splotu. <br>
 
Dokonując transformacji powyższych wzorów do dziedziny częstości dostajemy:
 
<br>
 
<math>Y(f) = H(f)X(f)</math> <br>
 
<br>
 
<math>Z(f) = Y(f) + N(f)</math> <br>
 
<br>
 
gdzie: <math>H(f) = \textrm{FFT}\left\{h(t)\right\}</math>. <br>
 
<br>
 
Wzory te można zapisać w postaci jednej zależności:<br>
 
<equation id="LTI_1">
 
<math>Z(f) = H(f)X(f) + N(f)</math>
 
</equation>
 
Załóżmy teraz, że w celu redukcji składowej losowej <math>n(t)</math> wielokrotnie powtarzamy w tych samych warunkach pomiar sygnału <math>z(t)</math>. Za każdym razem na wejściu układu LTI występuje ten sam sygnał <math>x(t)</math>. Układ LTI również przetwarza sygnał wejściowy w ten sam sposób, jednak z uwagi na stochastyczny charakter zakłóceń, otrzymujemy kolejne różniące się do siebie przebiegi <math>z_i(t)</math>. Niech liczbę powtórzeń pomiaru wynosi <math>K</math>. Możemy napisać <math>K</math> równań opisujących relację pomiędzy sygnałem wejściowym, wyjściowym i mierzonym:
 
<equation id="LTI_2">
 
<math>
 
\begin{array}{l}
 
Z_1(f) = H(f)X(f) + N_1(f) \\
 
\\
 
Z_2(f) = H(f)X(f) + N_2(f) \\
 
\\
 
\vdots \\
 
\\
 
Z_K(f) = H(f)X(f) + N_K(f) \\
 
\end{array}
 
</math>
 
</equation>
 
Przemnóżmy teraz równania (<xr id="LTI_2"/>) obustronnie przez sprzężone widmo sygnału rejestrowanego <math>Z(f)</math>. Dla uproszczenia zapisu operacji dokonamy na jednym, dowolnie wybranym <math>i</math>-tym równaniu:
 
<equation id="LTI_3">
 
<math>Z_i(f)Z_i^*(f) = \left\{H(f)X(f) + N_i(f)\right\}\cdot Z_i^*(f)</math>
 
</equation>
 
Na równaniu (<xr id="LTI_3"/>) dokonamy kolejno następujących przekształceń:
 
<equation id="equ_1">
 
<math>|Z_i(f)|^2 = \left\{H(f)X(f) + N_i(f)\right\}\cdot\left\{H^*(f)X^*(f) + N_i^*(f)\right\}</math>
 
</equation>
 
<br>
 
<equation id="LTI_4">
 
<math>|Z_i(f)|^2 = |H(f)|^2|X(f)|^2 + |N_i(f)|^2 + H(f)X(f)N_i^*(f) + N_i(f)H^*(f)X^*(f)</math>
 
</equation>
 
Dokonajmy teraz uśredniania (<xr id="LTI_4"/>) po kolejnych powtórzeniach pomiaru.
 
<equation id="LTI_5">
 
<math>\left\langle|Z_i(f)|^2\right\rangle= \left\langle|H(f)|^2|X(f)|^2\right\rangle + \left\langle|N_i(f)|^2\right\rangle + \left\langle H(f)X(f)N_i^*(f)\right\rangle + \left\langle N_i(f)H^*(f)X^*(f)\right\rangle</math>
 
</equation>
 
Zakładamy, że szum <math>N(f)</math> jest nieskorelowany z sygnałem wejściowym, w związku z czym w wyniku uśredniania dwa ostatnie składniki równania (<xr id="LTI_5"/>) zostaną zredukowane: <math>\left\langle H(f)X(f)N_i^*(f)\right\rangle \approx 0 </math>, <math>\left\langle N_i(f)H^*(f)X^*(f)\right\rangle \approx 0 </math>. Założyliśmy również za każdym razem na wejściu układu liniowego pojawia się ten sam sygnał <math>x(t)</math>, sam układ zaś nie zmienia swoich właściwości, w zwiazku z czym: <math>\left\langle|H(f)|^2|X(f)|^2\right\rangle = |H(f)|^2|X(f)|^2 </math>. Ostatecznie uzyskaliśmy następującą zależność:
 
<equation id="LTI_6">
 
<math>\left\langle|Z_i(f)|^2\right\rangle= |H(f)|^2|X(f)|^2 + \left\langle|N_i(f)|^2\right\rangle</math>
 
</equation>
 
Dokonajmy kolejnego przekształcenia równania (<xr id="LTI_2"/>). tym razem przemnożymy obustronnie każde równanie przez sprzężone widmo sygnału wejściowego. W celu uproszczenia zapisu, operację tę wykonamy tylko na jednym dowolnie wybranym <math>i</math>-tym równaniu:
 
<equation id="LTI_7">
 
<math>Z_i(f)X^*(f) = \left\{H(f)X(f) + N_i(f)\right\}\cdot X^*(f)</math>
 
</equation>,
 
gdzie: <math>Z_i(f)X^*(f)</math> - to widmo wzajemne sygnałów <math>x(t)</math> i <math>y(t)</math>.
 
Proste przekształcenie równania (<xr id="LTI_7"/>) prowadzi do następującego wyrażenia:
 
<equation id="LTI_8">
 
<math>Z_i(f)X^*(f) = H(f)|X(f)|^2 + N_i(f)X^*(f)</math>
 
</equation>
 
Uśrednimy teraz równanie (<xr id="LTI_8"/>) po kolejnych realizacjach pomiaru oraz obliczmy moduł uzyskanego wyniku:
 
<equation id="LTI_9">
 
<math>|\left\langle Z_i(f)X^*(f)\right\rangle| = |H(f)||X(f)|^2 + |\left\langle N_i(f)X^*(f)\right\rangle|</math>
 
</equation>
 
Brak korelacji pomiędzy szumem <math>n(t)</math> a sygnałem wejściowym <math>x(t)</math> powoduje, że w wyniku uśredniania zostaje zredukowany drugi składnik równania (<xr id="LTI_9"/>): <math>\left\langle N_i(f)X^*(f)\right\rangle \approx 0</math>. Ostatecznie uzyskujemy następującą zależność:
 
<equation id="LTI_10">
 
<math>|\left\langle Z_i(f)X^*(f)\right\rangle| = |H(f)||X(f)|^2</math>
 
</equation>
 
która wraz z równaniem  (<xr id="LTI_6"/>) tworzy układ równań opisujących relacje pomiędzy widmami i widmami mocy sygnałów występujących w naszym modelu:
 
<equation id="LTI_11">
 
<math>
 
\left\langle Z_i(f)X^*(f)\right\rangle = |H(f)| |X(f)|^2
 
</math>
 
</equation>
 
::<math>
 
\left\langle|Z_i(f)|^2\right\rangle= |H(f)|^2 |X(f)|^2 + \left\langle|N_i(f)|^2\right\rangle
 
</math>
 
Z pierwszej zależności równania (<xr id="LTI_11"/>) wyznaczmy funkcję przejścia <math>|H(f)|</math>:
 
<br>
 
<br>
 
<math>|H(f)| = \frac{|\left\langle Z_i(f)X^*(f)\right\rangle|}{|X(f)|^2}</math>
 
<br>
 
<br>
 
i podstawy do drugiego równania układu (<xr id="LTI_11"/>). Otrzymujemy:
 
<equation id="LTI_12">
 
<math>
 
\left\langle|Z_i(f)|^2\right\rangle = \left[\frac{|\left\langle Z_i(f)X^*(f)\right\rangle|}{|X(f)|^2}\right]^2 |X(f)|^2 + \left\langle|N_i(f)|^2\right\rangle
 
</math>
 
</equation>
 
Równanie (<xr id="LTI_12"/>) możemy przekształcić do postaci:
 
<equation id="LTI_13">
 
<math>
 
\left\langle|N_i(f)|^2\right\rangle = \left\langle|Z_i(f)|^2\right\rangle - \frac{|\left\langle Z_i(f)X^*(f)\right\rangle|^2}{|X(f)|^2}
 
</math>
 
</equation>
 
a następnie do zależności:
 
<equation id="LTI_14">
 
<math>
 
\left\langle|N_i(f)|^2\right\rangle = \left\langle|Z_i(f)|^2\right\rangle\left[1 - \frac{|\left\langle Z_i(f)X^*(f)\right\rangle|^2}{|X(f)|^2\left\langle|Z_i(f)|^2\right\rangle}\right]
 
</math>
 
</equation>
 
Wyrażenie: <br>
 
<equation id="LTI_15">
 
<math>
 
\mathrm{MSC}_{xz}(f) = \frac{|\left\langle Z_i(f)X^*(f)\right\rangle|^2}{|X(f)|^2\left\langle|Z_i(f)|^2\right\rangle}
 
</math>
 
</equation>
 
nazywana jest '''M'''agnitude '''S'''quare '''C'''oherence pomiędzy sygnałami <math>x(t)</math> i <math>z(t)</math>. W przypadku, gdy wielkość ta jest równa 1 sygnały <math>x(t)</math> i <math>z(t)</math> są w pełni  zsynchronizowane. Wielkość tę uzyskaliśmy dla sygnału na wejściu układu LTI oraz sygnału mierzonego na wyjściu. Funkcję MSC można jednak stosować do dowolnych dwóch sygnałów stochastycznych <math>x(t)</math> i <math>y(t)</math> przy założeniu, że istnieją pomiędzy nimi liniowe zależności:
 
<equation id="LTI_16">
 
<math>
 
\mathrm{MSC}_{xy}(f) = \frac{|\left\langle X_i(f)Y_i^*(f)\right\rangle|^2}{\left\langle|X_i(f)|^2\right\rangle\left\langle|Y_i(f)|^2\right\rangle}
 
</math>
 
</equation>
 
gdzie:
 
<math>< ></math> - oznacza wartość średnia,
 
<math>X_i(f), Y_i(f) </math> to zespolone widma (policzone np. za pomocą Transformaty Fouriera), wyznaczone odpowiednio dla sygnałów X oraz Y w "i-tej" realizacji eksperymentu lub w "i-tym" oknie czasowym, na który te sygnały zostały podzielone. Wzór (36) reprezentuje estymator wartości bezwzględnej koherencji. Opierając się na podobnym co wyżej rozumowaniu, można wyprowadzić estymator funkcji koherencji, o następującej postaci:
 
<equation id="LTI_17">
 
<math>
 
\mathrm{C}_{xy}(f) = \frac{\left\langle X_i(f)Y_i^*(f)\right\rangle}{(\left\langle|X_i(f)|^2\right\rangle\left\langle|Y_i(f)|^2\right\rangle)^\frac{1}{2}}
 
</math>
 
</equation>
 
Faza koherencji umożliwia nam estymację przesunięcia fazowego pomiędzy sygnałami X i Y, zaś moduł podniesiony do kwadratu funkcji C to MSC.
 
  
=====Polecenie 1=====
+
jest możliwie bliski (nieznanym) sygnałom
Zaimplementuj funkcję obliczającą transformatę Fouriera dyskretyzując wzór (9) dla zadanego wektora częstości <tt>f</tt> i zadanej częstości próbkowania sygnału (tutaj 10.0):
+
<math>\vec{s}</math>. Wymóg niezależności statystycznej elementów
 
+
<math>\vec{y}</math> wymaga uwzględnienia statystyk rzędów wyższych
Wywołanie przykładowe:
+
niż 2, czyli korelacji (używanych w PCA). Przetwarzanie wstępne
<source lang = python>
+
polega często na wyzerowaniu statystyk do rzędu 2, czy odjęciu
t= np.arange(0,1,0.1)
+
średniej i obrocie diagonalizującym macierz kowariancji (zwykle
x = np.sin(2*np.pi*2*t)
+
PCA). Uzyskanie w prosty sposób dekorelacji ułatwia działanie procedur
f = np.arange(-5,5,1)
+
realizujących dalsze wymagania niezależności. Realizowane są one
X,f = fourier(x,f,10.0)
+
zwykle z pomocą sztucznych sieci neuronowych o specjalnie dobieranych
print X
+
regułach uczenia.
</source>
 
 
 
Powinno dać:
 
[  3.15975012e-16 +5.19678720e-16j  1.05325004e-16 +3.51083347e-16j
 
  -4.56408351e-16 -2.10650008e-16j  4.91516686e-16 +1.58113883e+00j
 
  -1.40433339e-16 -7.02166694e-17j  0.00000000e+00 +0.00000000e+00j
 
  -1.40433339e-16 +7.02166694e-17j  4.91516686e-16 -1.58113883e+00j
 
  -4.56408351e-16 +2.10650008e-16j  1.05325004e-16 -3.51083347e-16j]
 
 
 
Natomiast wywołanie:
 
<source lang ='python'>
 
t= np.arange(0,1,0.1)
 
x = np.sin(2*np.pi*2*t)
 
f = np.arange(-5,5,0.01)
 
X = fourier(x,f,10.0)
 
py.plot(f,np.abs(X))
 
py.show()
 
</source>
 
 
 
Powinno wytworzyć rysunek:
 
 
 
[[Plik:Fourier_test.png]]
 
<!-- <tt>*</tt> -->
 
<!--
 
import numpy as np
 
import pylab as py
 
def fourier(ak, FF, FS):
 
    M = np.zeros(len(FF),dtype='complex')
 
    for i,f in enumerate( FF):
 
        for tau in range(len(ak)):
 
    M[i] += ak[tau]*np.exp(-2*np.pi*1j*f*( tau)/FS)
 
    M/=np.sqrt(len(ak))
 
    return M
 
t= np.arange(0,1,0.1)
 
x = np.sin(2*np.pi*2*t)
 
f = np.arange(-5,5,0.01)
 
X = fourier(x,f,10.0)
 
print X
 
py.plot(f,np.abs(X))
 
py.show()
 
 
 
-->
 
  
=====Polecenie 2=====
+
Procedura usuwania artefaktów polega na zerowaniu komponentów, które zidentyfikujemy -- na przykład na podstawie kształtu, widma i rozkładu przestrzennego -- i odtwarzaniu sygnału z pominięciem tych komponentów. Procedura jest zaimplementowania w programie Svarog, którego aktualną wersję można ściągnąć stąd: http://www.fuw.edu.pl/~durka/svarog-1.0.10.zip
Zaimplementuj funkcję obliczającą koherencję dla pary kanałów.
 
<!--Niech argumentami tej funkcji będą dwa wektory zawierające sygnały, zakres częstości, częstość próbkowania. -->
 
Oblicz i narysuj funkcję koherencji dla kolejnych par kanałów (tych samych co w zadaniu 3). Wyniki zaprezentuj w postaci kwadratowej macierzy rysunków. Ponieważ koherencja jest funkcją zespoloną, dobrze jest zaprezentować osobno jej wartość i fazę. Uzyskane wartości bezwzględne koherencje narysuj nad przekątną tej macierzy, a fazę pod przekątną. W celu obliczenia modułu koherencji i jej fazy wykorzystaj wzór 36 (wygenerowane sygnały należy podzielić na pewną liczbę odcinków)
 

Wersja z 14:17, 12 paź 2017

Pracownia EEG / EEG spoczynkowe, artefakty

Podstawowe grafoelementy zapisu EEG i ich główne cechy

Rytm δ

Przebieg rytmu delta zaprezentowano na rysunku 1. Jest to wysokoamplitudowa aktywność o niskiej częstości (0-4 Hz) i czasie trwania co najmniej 1/4 s. Do celów praktycznych przyjęto, że dolną granicą częstości jest 0,5 Hz. Pojawiające się podczas głębokiego snu fale delta o amplitudzie przekraczającej 75 μV nazywa się falami wolnymi (ang. slow wave activity, SWA). Występowanie SWA spowodowane jest wysoką synchronizacją neuronów kory (większą synchronizację spotyka się tylko podczas ataku epilepsji). Fale delta rejestruje się także podczas głębokiej medytacji, u małych dzieci i w przypadku pewnego rodzaju uszkodzeń mózgu.

Fale delta w czasie snu w zapisie polisomnograficznym.

Rytm θ

Rytmem teta (ang. theta) (rys. 2) nazywamy aktywność w paśmie częstości od 3 do 7 Hz i rozpiętości (ang. peak-to-peak) rzędu kilkudziesięciu μV. Charakterystyczne fale teta występują np. w okresie snu płytkiego — przypuszcza się że w tym czasie następuje przyswajanie i utrwalanie uczonych treści. Fale teta są najczęściej występującymi falami mózgowymi podczas medytacji, transu, hipnozy, intensywnego marzenia, intensywnych emocji. Odmienny rodzaj fal teta jest związany z aktywnością poznawczą, kojarzeniem (w szczególności uwagą), a także procesami pamięciowymi (tzw. rytm FMΘ — frontal midline theta). Jest on obserwowany głównie w przyśrodkowej części przedniej części mózgu.

Cechy charakterystyczne:

  • Rytmiczny przebieg o częstości 3-7 Hz.
  • Najwyższa amplituda w stanie czuwania w okolicach linii środkowej i obszarach skroniowych.
  • Rozkład amplitudy symetryczny na półkulach określonych przez płaszczyznę strzałkową

Cechy patologiczne:

  • Asymetryczny rozkład amplitudy (dominacja rytmu na jednej półkuli) bądź też jego występowanie w zapisie tylko na jednym odprowadzeniu może świadczyć o patologii.


Przykład rytmu teta we śnie.

Rytm α

Fala alfa to jedna z najwcześniej zaobserwowanych struktur (grafoelementów) EEG. Reprezentuje ona rytmiczną aktywność kory mózgowej w paśmie 8-12 Hz. Występowanie rytmu alfa przypisuje się stanowi relaksu z zamkniętymi oczami. Fale alfa najlepiej widoczne są w odprowadzeniach potylicznych, czyli z okolic kory odpowiadającej za przetwarzanie informacji wzrokowych. Rytm o częstości w paśmie alfa rejestrowany w okolicach kory motorycznej nazywany jest rytmem mi (ang. mu), ze względu na kształt fali przypominającej literę μ. Wykazuje on istotny zanik w momencie wykonywania ruchu przez człowieka lub tylko zamierzenia jego wykonania.

Rytm alfa fundamentalne znaczenie w analizie EEG snu. Mimo, że nie występuje podczas właściwego snu to świadczy o „przedsennym” czuwaniu pacjenta, a jej zanik oznacza przejście ze stanu czuwania do płytkiego snu. Fale alfa zanikają także podczas wysiłku umysłowego, np. wykonywaniu działań matematycznych albo przy otwarciu oczu i zadziałaniu na nie światła. Blokowanie rytmu alfa jest wyrazem desynchronizacji aktywności neuronów, zachodzącej pod wpływem koncentracji umysłowej lub stymulacji narządów zmysłów. Przebieg fali alfa zaprezentowano na rysunku 3 i rysunku 4


Rytm alfa w zapisie polisomnograficznym szczególnie wyraźnie widoczny w odprowadzeniu O2 (referencja do uśrednionego potencjału z uszu).
Rytm alfa w zapisie polisomnograficznym szczególnie wyraźnie widoczny w odprowadzeniu O2 (referencja do uśrednionego potencjału z uszu). We wstawce widoczna jest estymata widma gęstości mocy z zaznaczonego fragmentu sygnału.



Cechy charakterystyczne:

  • Podstawowy rytm prawidłowego zapisu EEG u dorosłej osoby.
  • Quasi harmoniczny przebieg o częstości 7-13 Hz.
  • Wzrost amplitudy po zamknięciu oczu, w stanie relaksu czy czuwania z zamkniętymi oczami.
  • Zanika po otwarciu oczu.
  • Fale alfa najlepiej widoczne są w odprowadzeniach tylnych, czyli z okolic części kory odpowiadającej za przetwarzanie informacji wzrokowych. Czasem jednak może propagować się w kierunku obszarów tylno skroniowych i ciemieniowych.
  • Występuje mniej lub bardziej symetrycznie względem płaszczyzny strzałkowej, zwykle jednak ma większą amplitudę nad półkulą dominującą. Zbyt duża asymetria amplitudy rytmu alfa lub też jego brak po jednej stronie zawsze świadczy o jakiejś patologii. Często jednak przyczyną takiej asymetrii jest niewłaściwe umieszczenie elektrod na głowie bądź budowa anatomiczna czaszki.

Cechy patologiczne:

  • Częstość rytmu ulega zmniejszeniu pod wpływem takich czynników jak: choroby metaboliczne, wczesne fazy otępienia, leki.

Rytm μ

Cechy charakterystyczne:

  • Rytmiczny przebieg o częstości od 7-11 Hz, z uwagi na co często mylony z rytmem alfa.
  • Wyraźny przebieg, kształtem przypominający grecką literę μ.
  • Zanika w trakcie wykonywania ruchu bądź nawet pod wpływem samego jego wyobrażenia.

Rytm β

Rytm beta. Na osi pionowej — amplituda w μV, na osi poziomej — czas.

Fale beta (rys. 5) to niskoamplitudowe oscylacje o częstości w przedziale 13-30 Hz. W paśmie beta wyróżnia się następujące przedziały: wolne fale beta (12-15 Hz), właściwe, średnie pasmo beta (15-18 Hz) i szybkie fale beta, o częstości powyżej 19 Hz. Ta mało zsynchronizowana praca neuronów charakteryzuje zwykłą codzienną aktywność kory mózgowej u człowieka, percepcję zmysłową i pracę umysłową. Specyficzna aktywność beta towarzyszy również stanom po zażyciu niektórych leków. Fale beta zazwyczaj występują w okolicy czołowej. Obrazują one zaangażowanie kory mózgowej w aktywność poznawczą. Fale beta o małej amplitudzie występują podczas koncentracji uwagi, gdy mózg nastawiony jest na świadomy odbiór bodźców zewnętrznych za pomocą wszystkich zmysłów. Cechy charakterystyczne:

  • Rytmiczny przebieg o częstości od 13 do 30 Hz.
  • Amplituda nie zmienia się pod wpływem otwarcia lub zamknięcia oczu.
  • Najwyższa amplituda w okolicach czołowo-centralnych.
  • Asymetryczny zanik rytmu w trakcie wykonywania ruchu lub nawet jego wyobrażenia. Zanik obserwowalny jest w zapisie EEG z elektrod umieszczonych nad obszarami mózgu odpowiedzialnymi za kończynę wykonującą ruch (kontralatralnie czyli po przeciwnej stronie niż kończyna).


Fale γ

Rytm gamma. Na osi pionowej — amplituda w μV, na osi poziomej — czas.

Fale gamma (rys. 6) to fale mózgowe o częstości w okolicach 40 Hz (30-80 Hz). Aktywność w paśmie 80-200 Hz określa się natomiast jako wysokoczęstotliwościową (ang. high) gammę. Rytm gamma towarzyszy aktywności ruchowej i funkcjom motorycznym. Fale gamma związane są też z wyższymi procesami poznawczymi, m. in. percepcją sensoryczną, pamięcią. Przypuszcza się, że rytm gamma o częstotliwości około 40 Hz ma związek ze świadomością percepcyjną (dotyczącą wrażeń zmysłowych i ich postrzegania) oraz związany jest z integracją poszczególnych modalności zmysłowych w jeden spostrzegany obiekt. Aktywność high-gamma występuje podczas aktywacji kory mózgowej, zarówno przez bodźce zewnętrzne (np. dotykowe, wzrokowe), jak i wewnętrzne (przygotowanie ruchu, mowa). Fale o częstościach 100-250 Hz nazywane są ripples. Rejestruje się je w sygnale z implantowanych mikroelektrod, a wysoko częstościową aktywność fast ripples (250-600 Hz) w szczególności u pacjentów z epilepsją, w obszarze ogniska epileptycznego.

Wrzeciona snu

Wrzeciona snu (ang. sleep spindles) (rys. 9) to charakterystyczne struktury zaobserwowane już niemal od samych początków historii pomiarów EEG. Występują podczas umiarkowanie głębokiego snu. Wrzecionami snu nazywamy aktywność o częstości 11-15 Hz i czasie trwania 0,5-1,5 s. Obwiednia tych krótkich salw dość szybkiej aktywności o niewielkiej amplitudzie przypomina kształt wrzeciona. Wrzeciona pojawiają się we wszystkich odprowadzeniach, z tym, że ich amplituda i częstość może się nieznacznie zmieniać przy przejściu od przodu do tyłu głowy (od wrzecion „wolnych” po „szybkie”). Wrzeciona snu mogą występować w parach z kompleksami K.

Trzy wrzeciona snu.

Kompleksy K

Kompleksy K (ang. K-complexes, w Polsce często nazywane zespołami K), (rys. %i 9) mogą pojawiać się pojedynczo lub też w serii po dwa podczas umiarkowanie głębokiego snu. Definiuje się je jako dwufazową (ostry spadek poprzedzony dodatnim maksimum), wysokonapięciową (to największe maksimum strefy), nisko częstotliwościową falę związaną z wrzecionami snu, przy czym jej czas trwania powinien przekraczać 0,5 s. Obecnie wymaga się aby struktury te miały częstość 1-4 cykli/s, amplitudę co najmniej dwa razy większą od średniej amplitudy tła i czas trwania 0,5-2 s. Amplituda kompleksu K jest zazwyczaj największa na czubku głowy. Kompleksy K mogą podczas snu występować spontanicznie lub też w odpowiedzi na bodźce.


Kompleksy K z następującymi po nich wrzecionami snu.

Fale piłokształtne

Fale piłokształtne (ang. sawtooth waves) pojawiają się w EEG w czasie snu w fazie REM, są to wierzchołkowe, ujemne fale o umiarkowanej częstości i amplitudzie. Z definicji falą piłokształtną nazywa się pojedyncze lub zgrupowane po kilka fale o częstości 6-10 Hz, amplitudzie rzędu kilkudziesięciu μV i wyraźnym kształcie zębów piły.

Wierzchołkowe fale ostre

Wierzchołkowe fale ostre (ang. vertex sharp waves) występują pod koniec okresu płytkiego snu. Aktywnością tą określa się ostry potencjał, maksymalny w okolicy wierzchołkowej, ujemny w stosunku do innych pól, o amplitudzie zmiennej, rozpiętości często dochodzącej do 250 μV.


Wierzcholkowa fala ostra.

Iglice

Iglice (ang. spikes), to termin ograniczony do padaczkopodobnych wyładowań, obserwowanych także w zapisie międzynapadowym EEG. Są to grafoelementy wyraźnie wyróżniające się z czynności podstawowej, z ostrym wierzchołkiem i często następującą po nim falą wolną. Czas trwania iglicy wynosi zazwyczaj od 20 do 70 milisekund, a amplituda co najmniej dwa razy większa o od amplitudy tła w obrębie około 5 sekund.

Artefakty

Niewłaściwie umocowanie elektrod

Jednym z bardzo ważnych etapów przed wykonaniem rejestracji czynności elektrycznej mózgu jest umieszczenie na powierzchni głowy elektrod pomiarowych. Elektrody te powinny być rozlokowane zgodnie z wybranym uprzednio standardem (np. 10-20, czy 10-10). Lokalizacja elektrod w badaniu EEG była tematem IX spotkania na Pracowni Sygnałów Bioelektrycznych i nie będzie omawiana już w bieżących materiałach. W tym miejscu zapoznamy się bliżej z konsekwencjami nieprawidłowego umocowania elektrod na głowie badanej osoby. Jak wiemy, poszczególnym obszarom kory mózgowej można przypisać aktywność związaną z określoną czynnością behawioralną, np. w trakcie czuwania z zamkniętymi oczami, w płatach potylicznych powstaje rytmiczna czynność o częstości 7-13 Hz. Z kolei w trakcie planowania bądź wykonywania ruchu zachodzą zmiany w czynności elektrycznej mózgu w obszarach bruzdy Rolanda, nad którą zlokalizowane są miejsca przyłożenia elektrod C3, Cz i C4. Czynność elektryczna mózgu jest bardzo słaba (zwykle wynosi od kliku do kilkudziesięciu μV) i szybko zanika wraz z odległością. Elektroda umieszczona w niewłaściwym miejscu (np. przesunięta o 1 cm względem prawidłowego położenia), nie będzie rejestrować interesującej nas czynności elektrycznej mózgu. Kolejna bardzo istotna kwestia, to przygotowanie skóry w miejscu przyłożenia elektrody. Najbardziej zewnętrzna cześć skóry — naskórek, jest martwy, zrogowaciały i pokryty tłuszczem. Powoduje to, iż opór elektryczny skóry jest bardzo duży (rzędu MΩ) i uniemożliwia rejestrację EEG. Pomiar tego sygnału nie może bowiem odbywać się na drodze „radiowej”, to jest np. za pomocą elektrody umieszczone w pewnej odległości od powierzchni głowy. Wynika to z warunków brzegowych dla pola elektrycznego na granicy ośrodka przewodzącego i próżni.

Podsumowując, rejestracja sygnału EEG wymaga dobrego kontaktu elektrod ze skórą pacjenta, umożliwiającego przewodzenie prądów elektrycznych, będących wynikiem elektrycznej aktywności mózgu. W szczególności dotyczy to tzw. elektrody GND oraz referencyjnej. Niewłaściwe umocowanie tych elektrod na powierzchni głowy będzie skutkować zakłóceniem pomiaru na wszystkich elektrodach. Odpowiednie schematy połączeń elektrod ze wzmacniaczem EEG znajdują się w skrypcie o EEG. Brak dobrego kontaktu powoduje następujące efekty uboczne:

  • Tłumienie sygnału (patrz wzór na zajęciach z Pracowni Sygnałów Bioelektrycznych).
  • Zakłócanie pomiaru EEG przez pole elektryczne od sieci zasilającej, widoczne w postaci harmonicznego sygnału o częstości 50 Hz i relatywnie wysokiej amplitudzie w porównaniu z amplitudą sygnału EEG.
  • „Trzaskanie elektrod”. Polega ono na krótkotrwałym braku kontaktu części elektrody ze skórą. Powoduje to nagłą zmianę potencjału, kształtem przypominającego wyładowania iglicowe, które pełnią ważną rolę w diagnostyce padaczki. Cechą odróżniającą skoki potencjału związane z patologią czynności elektrycznej mózgu, a nieszczelnym kontaktem elektrody ze skórą jest fakt, iż wyładowania związane z niewłaściwym umocowaniem elektrody są widoczne na:
    • jednym (uszkodzonym) odprowadzeniu w przypadku odprowadzeń referencyjnych jednobiegunowych;
    • dwóch elektrodach w przypadku odprowadzeń dwubiegunowych.


    Jeśli zmiana kontaktu ze skórą nie ma gwałtownego charakteru, niewłaściwie zamocowana elektroda może być źródłem powstawania zmian potencjału w zakresie pasm EEG, trudno odróżnialnych od prawdziwej czynności elektrycznej. Jedyną cechą różnicującą ten artefakt od sygnału EEG jest fakt jego występowania na pojedynczej elektrodzie, w przypadku odprowadzeń jednobiegunowych i dwóch sąsiednich kanałach, będących lustrzanymi odbiciami w przypadku odprowadzeń dwubiegunowych.

Pocenie się

Pocenie się badanej osoby prowadzi do:

  • Rozpuszczania klejów wodozmywalnych, za pomocą których elektrody przyczepiane są do powierzchni głowy. Pogarsza to kontakt elektrody ze skórą.
  • Tworzenie zwarć pomiędzy elektrodami. Pot składający głównie z wody, soli i innych związków chemicznych dobrze przewodzi prąd. W efekcie następuje redukcja impedancji pomiędzy elektrodami i zmiana wartości mierzonego potencjału.

Wymienione powyżej zjawiska prowadzą do powstania w zapisie EEG bardzo wolnych, trwających kilka sekund fal.

Mruganie

Bardzo silny artefakt, trudny do wyeliminowania z zapisu EEG, mogący się objawić na wszystkich elektrodach, w szczególności zaś widoczny na odprowadzeniach przedczołowych i czołowych. Źródłem tego artefaktu jest występująca pomiędzy rogówką a siatkówką różnica potencjałów (sięgająca wartości kilku miliwotlów) oraz czynność elektryczna siatkówki o amplitudzie kilku mikrowoltów. W trakcie mrugania gałki oczne skręcają nieznacznie ku górze (tzw. zjawisko Bella) powodując nagły wzrost potencjału elektrycznego. Rogówka posiada potencjał dodatni względem siatkówki, w związku z czym na odprowadzeniach przedczołowych i czołowych obserwuje się wychylenie potencjału w kierunku dodatnich wartości względem potencjału na innych elektrodach. Zwiększony potencjał na elektrodach czołowych utrzymuje się tak długo, jak skręcone ku górze pozostają gałki oczne. Powrót gałek do pozycji spoczynkowej powoduje redukcję potencjału na przednich elektrodach. Zmiana sygnału związana z artefaktem od gałki ocznej ma zatem charakter „schodka”, jednakże filtry w które wyposażony jest wzmacniacz EEG powodują rozmycie i wygładzenie tego zaburzenia, które przyjmuje łatwo rozpoznawalny kształt. Artefakt ten jest na tyle silny, iż pomimo losowego występowania, uśrednianie sygnałów EEG mierzonych w trakcie powtarzania tego samego paradygmatu doświadczalnego nie redukuje jego amplitudy w sposób zadowalający. Środkami mogącymi zmniejszyć jego występowanie jest przewidzenie w trakcie eksperymentu przerw na „wymruganie”, używanie środków nawilżających oczy (najlepiej w postaci żeli, które długo pozostają na gałce), lekkie zmrużenie oczu.

Mrugnięcia

Ruchy gałek ocznych na boki

Źródło powstawania tych artefaktów jest takie samo jak w przypadku mrugania. W wyniku różnic potencjałów pomiędzy siatkówką a rogówką, zmiana orientacji gałki ocznej w przestrzeni powoduje zmianę pola elektrycznego i jego potencjału, który mierzymy. W przypadku skręcenia oczami w prawą stronę, nastąpi wzrost mierzonego potencjału na elektrodzie skroniowej prawej — F8 (dodatnio naładowana część gałki przybliża się do tej elektrody) i jego spadek na elektrodzie leżącej po przeciwnej stronie głowy — F7 (dodatnio naładowana część gałki odsuwa się do tej elektrody). Dzięki temu artefakt ten jest łatwo rozpoznawalny. U osób z oczopląsem artefakt ten występuje rytmicznie z częstością oczopląsu. Należy również pamiętać, że ruchy gałek ocznych są sterowane mięśniami, w związku z czym nagłe i silne ruchu gałek na boki będą powodowały występowanie wyładowań iglicowych związanych z czynnością mięśni. Amplituda tych wyładowań osiągnie największą wartość na elektrodach F8 i F7.

Artefakt wywołany ruchem gałek ocznych w poziomie.

Elektryczna Czynność Mięśni — EMG

Na głowie człowieka znajdują się mięśnie, bądź przyczepy mięśni odpowiedzialnych głównie za mimikę twarzy, ruchy gałek ocznych czy ruchy szczęki. W związku z powyższym artefakty mięśniowe najsilniej będą rejestrowane przez elektrody czołowe oraz skroniowe (przednie i środkowe). Artefakty te są znaczne silniejsze niż zapis EEG (mogą dochodzić do kilku mV), zaś ich widmo w niskich częstościach pokrywa się z pasmem beta i gamma w EEG. Powstawaniu artefaktów EMG sprzyja: niewłaściwe oświetlenie laboratorium (co powoduje mrużenie oczu), niewygodna dla pacjenta pozycja — brak oparcia dla głowy, brak oparcia dla rąk i nóg, wykonywane testy wymagające uwagi i koncentracji. W tym ostatnim przypadku, w trakcie rozwiązywania takiego testu, cześć spośród badanych osób ma tendencję do marszczenia czoła, czy mrużenia oczu.

Marszczenie czoła.
Artefakt wywołany napięciem mięśni rąk.
Artefakt wywołany zaciskaniem zębów.

Czynność elektryczna serca

Artefakt ten pojawia się najczęściej rytmicznie wraz z czynnością elektryczną serca i przyjmuje charakterystyczny dla niego kształt. Zdarza się jednak, że nie każdy kolejny cykl pracy serca zostanie zmierzony przez elektrody EEG. Wtedy artefakt ten może być pomylony z wyładowaniami iglicowymi. Najlepszą metodą detekcji tego artefaktu jest jednoczesny pomiar EEG i EKG. Zakłócenie związane z EKG objawia się najsilniej na elektrodzie, które została umieszczona tuż nad jakąś tętniczką. Często to ma miejsce w przypadku gdy jako elektrodę referencyjną wybrano elektrodę umieszczoną na wyrostku sutkowatym (za uszami), gdzie u wielu osób przebiega właśnie mała tętniczka. Sygnały z kanałów referencyjnych odejmowane są od sygnałów zarejestrowanych od pozostałych kanałów co będzie w oczywisty sposób prowadzić do „rozpowszechniania się” artefaktu EKG po wszystkich elektrodach. O ile to możliwe, należy zmienić nieznacznie pozycję elektrody, tak aby nie znajdowała się ona nad tętniczką.

Żucie, ruchy języka

Artefakt związany z żuciem to głównie potencjały od czynności elektrycznej mięśni o częstości występowania skorelowanej z rytmicznie powtarzającym się ruchem szczęk. Z kolei ruch języka powoduje również czynność elektryczną ale nie mającą charakteru rytmicznego, przypominającą fale delta.

Artefakt wywołany ruchem języka.
Artefakt wywołany żuciem.

Drżenie kończyn

Drżenie kończyn może być spowodowane chorobą (np. Parkinsona) lub długotrwałym siedzeniem w mało komfortowej pozycji. Ruchy kończyn będą wywoływały także ledwo zauważalne ruchy głowy. W sytuacji, gdy badana osoba cierpi na chorobę Parkinsona, drżenia kończyn prowadzą do powstania rytmicznej fali o częstości 5-6 Hz przypominającej wyładowania padaczkowe. W celu lepszej detekcji tego artefaktu wskazane jest rejestrowanie czynności EMG.

Chodzenie osób w pobliżu badanego

Chodzenie w pobliżu badanej osoby powoduje powstawanie artefaktu przypominającego fale ostre.

Artefakty związane z ruchem badanej osoby.

Wywołane są dowolnymi ruchami głowy i ciała badanej osoby i związaną z nimi czynnością elektryczną mięśni. Powstałe potencjały są szerokopasmowe i mają znaczne amplitudy. Ruchy badanej osoby prowadzą do:

  • ruchu elektrod, a w związku tym pogorszenia ich kontaktu ze skór, a nawet oderwania elektrod od skóry;
  • zmiany strumienia pola elektromagnetycznego przechodzącego przez pętle utworzone przez elektrody i wzmacniacz. Zgodnie z prawem indukcji Faradaya, zmiana strumienia w czasie spowoduje powstaje siły elektromotorycznej.
Artefakt wywołany ruchem głowy.

Redukcja artefaktów

Kilka rad umożliwiających redukcję artefaktów, bądź ich lepsze rozpoznanie:

  • zadbać o położenie wzmacniacza EEG z dala od innych urządzeń i kabli. Umieścić go na podkładce z tworzywa;
  • zadbać o komfortową pozycję dla pacjenta;
  • mierzyć czynność EKG, EMG i elektrookulogram wraz z EEG;
  • sporządzać notatki na temat zachowania się pacjenta (jeśli mamy możliwość obserwowania go) — kiedy się poruszał, czy ktoś do niego podszedł np. celem poprawienia jakiegoś elementu układu eksperymentalnego.

Ćwiczenia: rejestracja EEG z artefaktami oraz EEG spoczynkowego

Przypomnij sobie:

Rejestracja

  1. Dokonaj przynajmniej 25-minutowego zapisu EEG w systemie 10-20, jako elektrody referencyjne wybierz elektrody uszne. Jednocześnie wraz z rejestracją EEG dokonaj pomiaru sygnału EKG z odprowadzenia I Einthovena, EMG z szyi oraz elektrookulogamu. W trakcie pomiaru, w wybranych chwilach czasu wykonaj:
    • mrugnięcie,
    • ruch językiem,
    • żucie,
    • napięcie mięśni rąk bądź nóg na tyle silne, aby wywołało drżenie,
    • ruch oczu w prawo,
    • ruch oczu w lewo,
    • zmarszczenie czoła,
    • zaciśnięcie zębów,
    • napięcie mięśni szyi,
    • ruch głową

    Wszystkie powyższe czynności powinny być odseparowane od siebie w czasie. Osoba biorąca razem z Tobą udział w eksperymencie powinna dokładnie zanotować moment wykonywania przez Ciebie kolejnych ruchów. Następnie, poproś kolegę aby:

    • przez 30 sekund chodził za Tobą,
    • pogłaskał Cię po ramieniu

    Kolega powinien odnotować czas wykonywania powyższych czynności.


  2. Zarejestruj 10 minut sygnału EEG, w trakcie których badana osoba będzie siedziała z otwartymi oczami oraz kolejne 10 minut w stanie czuwania z zamkniętymi oczami. Sygnał ten będzie potrzebny w czasie kolejnych zajęć, więc zapisz jego kopię zapasową.

Praca z sygnałami

  1. Po zakończeniu rejestracji otwórz w SVAROGu z pliku zapisany sygnał. Obejrzyj dokładnie zarówno 2-minutowe odcinki sygnału pomiędzy wykonywanymi ruchami jak i w momencie wykonywania ruchów. Scharakteryzuj powstałe artefakty pod względem amplitudy, długości trwania, widma mocy i topografii.
  2. Zmień referencje pomiaru z jednobiegunowego usznego na dwubiegunowy podłużny bananowy. Ponownie przyjrzyj się zapisowi i scharakteryzuj artefakty.
  3. Swój zapis sygnałów bioelektrycznych przekaż pozostałym grupom. Od nich otrzymasz również zapisy. Na podstawie dotychczas zebranych wiadomości, dokonaj przeglądu otrzymanych zapisów pod kątem występowania artefaktów. Pod dokonaniu analizy poproś grupy od których otrzymałeś dane o informacje jakie ruchy były wykonywane w określonej chwili czasu. Sprawdź poprawność dokonanych przez Ciebie oznaczeń artefaktów z informacjami dostarczonymi przez kolegów

ICA (ćwiczenie dodatkowe)

Popularna w ostatnich latach metoda "czyszczenia" sygnału z artefaktów opiera się na analizie składowych niezależnych.

Analiza składowych niezależnych (ang. Independent Components Analysis, ICA) to jedno z określeń dla metod rozwiązywania problemu tzw. ślepej separacji źródeł (blind source separation, BSS). Przyjęty model zakłada, że mamy do czynienia z następującą sytuacją: dane którymi dysponujemy ([math]\vec{x}[/math] — np. zapisy z kilku mikrofonów) są liniową mieszaniną kilku statystycznie niezależnych sygnałów ([math]\vec{s}[/math] — np. głosy kilku mówiących jednocześnie osób, tzw. cocktail party problem):

[math] \vec{x} = A \vec{s} [/math]

[math]A[/math] zwiemy macierzą mieszającą, a rozwiązania szukamy w postaci macierzy separującej [math]B[/math], takiej, że wektor sygnałów

[math] \vec{y}=B\vec{x} [/math]

jest możliwie bliski (nieznanym) sygnałom [math]\vec{s}[/math]. Wymóg niezależności statystycznej elementów [math]\vec{y}[/math] wymaga uwzględnienia statystyk rzędów wyższych niż 2, czyli korelacji (używanych w PCA). Przetwarzanie wstępne polega często na wyzerowaniu statystyk do rzędu 2, czy odjęciu średniej i obrocie diagonalizującym macierz kowariancji (zwykle PCA). Uzyskanie w prosty sposób dekorelacji ułatwia działanie procedur realizujących dalsze wymagania niezależności. Realizowane są one zwykle z pomocą sztucznych sieci neuronowych o specjalnie dobieranych regułach uczenia.

Procedura usuwania artefaktów polega na zerowaniu komponentów, które zidentyfikujemy -- na przykład na podstawie kształtu, widma i rozkładu przestrzennego -- i odtwarzaniu sygnału z pominięciem tych komponentów. Procedura jest zaimplementowania w programie Svarog, którego aktualną wersję można ściągnąć stąd: http://www.fuw.edu.pl/~durka/svarog-1.0.10.zip