Finish lecture 12 DFT analysis
parent
ade4786e14
commit
c85cf1c68d
Binary file not shown.
After Width: | Height: | Size: 57 KiB |
|
@ -725,7 +725,7 @@ ylabel('Phase')
|
|||
|
||||
Litt som DTFT, men her sampler vi frekvensdomenet. Som videre kan rekonstrueres tilbake til en fullverdig kontinuerlig frekvensrespons.
|
||||
|
||||
Denne kan effektiviseres med en algoritme kalt FFT (Rask fouriertransformasjon eller "FastFourierTransform").
|
||||
Denne kan effektiviseres med en algoritme kalt FFT (Rask fouriertransformasjon eller "Fast Fourier Transform").
|
||||
|
||||
### Frekvenssampling
|
||||
|
||||
|
@ -747,6 +747,11 @@ Der den periodiske utvidelsen av $x[n]$, $x_p[n]$ er definert:
|
|||
|
||||
$$ x_p[n] = \sum_{l=-\infty}^{\infty} x[n - lN] $$
|
||||
|
||||
For at vi skal kunne rekonstruere det orginale spektrumet, må vi vite følgende:
|
||||
|
||||
> Vi trenger DFT med størrelse $N \geq M + L - 1$, for å unikt rekonstuere $y[n]$ i frekvensdomenet.
|
||||
> Der $M$ og $L$ er lengden av to sekvenser vi ønsker å konvulere.
|
||||
|
||||
### Diskret-tid-fourierrekke
|
||||
|
||||
$$
|
||||
|
@ -762,7 +767,7 @@ $$X(k) = \sum_{n=0}^{N-1}x[n]e^{-\frac{j2\pi k}{N}n}, k=0,\ldots,N-1 $$
|
|||
|
||||
### Invers Diskret Fouriertransformasjon (IDFT)
|
||||
|
||||
$$x(n) = \frac{1}{N}\sum_{k=0}^{N-1}X(k)e^{\frac{j2\pi k}{N}n}, n=0,\ldots,N-1 $$
|
||||
$$x[n] = \frac{1}{N}\sum_{k=0}^{N-1}X(k)e^{\frac{j2\pi k}{N}n}, n=0,\ldots,N-1 $$
|
||||
|
||||
### Egenskaper til DFT
|
||||
|
||||
|
@ -776,4 +781,55 @@ Ganske like som i DTFT
|
|||
* Konjugerte
|
||||
* Sirkulær konvolusjon
|
||||
* Multiplikasjon av to sekvenser
|
||||
* Pasevals teorem
|
||||
* Parsevals teorem
|
||||
|
||||
### Filtrering med LFT
|
||||
|
||||
Dersom vi har to sekvenser, $x[n]$ og $h[n]$ med lengder $L$ og $M$, må de "paddes" med $0$ på slutten, slik at lengden av sekvensene er begge $N$.
|
||||
|
||||
$$
|
||||
\begin{aligned}
|
||||
x[n] &= \{x[0], \ldots, x[L-1], \underbrace{0,\ldots,0}_{N-L}\} \\
|
||||
h[n] &= \{h[0], \ldots, h[L-1], \underbrace{0,\ldots,0}_{N-M}\}
|
||||
\end{aligned}
|
||||
$$
|
||||
|
||||
Da kan utgangssekvensen beregnes med DFT.
|
||||
|
||||
$$
|
||||
\begin{aligned}
|
||||
y[n] &= \text{IDFT}_N\{Y(k)\} \\
|
||||
&= \text{IDFT}_N\{\text{DFT}_N\{h[n]\}\cdot\text{DFT}_N\{x[n]\}\}
|
||||
\end{aligned}
|
||||
$$
|
||||
|
||||
Dersom vi velger $N < M + L - 1$ vil vi kunne få aliasing i tidsdomenet.
|
||||
|
||||
### Filtrering av lange sekvenser
|
||||
|
||||
Dersom vi har veldig lange sekvenser kan det bli veldig utregningsmessig komlekst.
|
||||
Dette er spesielt merkbart i sanntidsprossesering (ikke noe start eller slutt).
|
||||
|
||||
Det er mulig å dele opp sekvensene i mindre biter.
|
||||
Da brukes den additive egenskapen til konolusjon.
|
||||
|
||||
$$
|
||||
\begin{aligned}
|
||||
y[n] &= h[n] * (x_1[n] + x_2[n]) \\
|
||||
&= h[n] * x_1[n] + h[n] * x_2[n] \\
|
||||
&= y_1[x] + y_2[n]
|
||||
\end{aligned}
|
||||
$$
|
||||
|
||||
Dette brukes videre for å filtrere lange sekvenser:
|
||||
|
||||
1. Del opp sekvensen $x[n]$ opp i *ikke-overlappende blokker* $x_m[n]$, hver med lengde $L$.
|
||||
2. Filtrer hver blokk $x_m [n]$ med $h[n]$ for å produsere *utgangsblokken* $y_m[n]$.
|
||||
3. Kombiner blokkene sammen til den totale sekvensen.
|
||||
|
||||
$$y[n] = \sum_m y_m[n]$$
|
||||
|
||||
Dersom lengden av $h[n]$ er $M$, vil lengden av $y[n]$ være $L+M-1$.
|
||||
Dermed vil de siste $M-1$ verdiene i sekvensen $y_{m-1}[n]$ bli lagt til i starten av neste blokk $y_m[n]$.
|
||||
|
||||
![Lange sekvenser](figures/longSeq.png)
|
Loading…
Reference in New Issue