Przetwarzanie
sygnałów (wstęp do
sygnałów cyfrowych)
dr inż. Michał Bujacz
bujaczm@p.lodz.pl
Godziny przyjęć:
poniedziałek 10:00-11:00
środa 12:00-13:00
„Lodex” 207
Sygnał
Matematyczny opis dowolnej
zmieniającej się w czasie wartości.
Funkcja czasu x(t) przenosząca
informację.
x(t
)
t
t
0
x(t
0
)
0
3
sygnał ciągły + próbkowanie -> sygnał
dyskretny
sygnał dyskretny + kwantyzajca -> sygnał
cyfrowy
x
c
(nT)
n
0
T
1 2 3
0
1
2
3
próbkowanie
(sampling)
k
w
a
n
ty
z
a
c
ja
Twierdzenie o
próbkowaniu
Whittakera-Nyquista-Kotielnikova-Shannona
:
Jeśli sygnał ciągły nie posiada składowych widma o
częstotliwości równej i większej niż B, to może on zostać
wiernie odtworzony z ciągu jego próbek tworzących
sygnał dyskretny, o ile próbki te zostały pobrane w
odstępach czasowych nie większych niż 1/(2B).
Częstotliwość Nyquista:
Maksymalna częstotliwość składowa sygnału która
może zostać odtworzona bez zniekształceń po
próbkowaniu
f
N
=f
s
/2
Przykład: próbkowanie
dźwięku
Zakres słyszalny przez człowieka:
20Hz – 20kHz
Typowe częstotliwości próbkowania
44.1 kHz (Audio CD) – daje f
N
= 22.05 kHz
Dlaczego stosuje się też 88.2 kHz lub
192kHz?
(zniekształcenia harmoniczne po użyciu filtrów)
5
Aliasing
Zbyt niska częstotliwość próbkowania
http://www.svi.nl/AliasingArtifacts
Kwantyzacja
0
100
200
300
400
500
600
700
Q/2
-Q/2
Q
Q
2Q
-Q
-2Q
0
Kwantyzacja - głębia bitowa
Ilość liczb do zapisania na n bitach = 2
n
:
1 bit = 2 liczby (maks 1)
2 bity = 4 liczby (maks 11=3)
3 bity = 8 liczb (maks 111 = 7)
4 bity = 16 liczb (maks 111 = 15)
....
Każdy dodatkowy bit to 6dB zakresu sygnału.
8
Głębia bitowa
Zakres słyszalnych dźwięków
0dB do 120dB
120/6 20 bitów
Główne standardy kwantyzacji to:
16 bitów (96dB) i 24 bity (144dB)
16 bitów wystarcza bo? wykorzystujemy Dithering
9
Dithering
Randomizacja błędu
kwantyzacyjnego. Eliminuje
harmoniczne zakłócenia w zamian
wprowadzając równomierny szum.
Np. 2.7 – możemy przyciąć
(zawsze 2), zaokrąglić (zawsze 3)
lub ditherować (losowo w 30%
przypadków zaokrąglić w dół - 2, w
70% do góry - 3)
10
Definicje/porady na
laboratoria PS1
pulsacja:
= 2f = 2/T
pulsacja znormalizowana:
= 2f/F
s
sinusoida (postać ciągła zależna od czasu):
y(t) = A *
sin(2f * t+)
sinusoida (postać dyskretna zależna od numeru
próbki):
y(n) = A
.
sin(2*f/Fs * n +)
Przykładowy kod
Fs = 1000;
n = 0:128;
f=100;
x=10*sin(2*pi*f*n/Fs);
plot(x);