|
|
Linia 313: |
Linia 313: |
| 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]]. | | 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. | | Znajdź częstość rytmu <math>\alpha</math> dla osoby, która była badana. |
− |
| |
− | ==Wzajemna gęstość widmowa sygnałów i koherencja==
| |
− |
| |
− | ====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 — <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ć:
| |
− |
| |
− | <equation id="uid125">
| |
− | <math>
| |
− | C_{xy}(f) = \frac{S_{xy}(f)}{\sqrt{S_x(f)S_y(f)}}
| |
− | </math>
| |
− | </equation>
| |
− |
| |
− | Znormalizowaną postać funkcji wzajemnej gęstości mocy widmowej nazywamy funkcją ''koherencji''.
| |
− | 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).
| |
− |
| |
− | =====Kilka słów o koherencji=====
| |
− | 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>
| |
− | 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 2=====
| |
− | 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)
| |