Metoda překrývání - uložení - Overlap–save method
Při zpracování signálu je překrytí – uložení tradiční název pro účinný způsob vyhodnocení diskrétní konvoluce mezi velmi dlouhým signálem a filtrem FIR ( konečná impulsní odezva ) :
-
( Rovnice 1 )
kde h [ m ] = 0 pro m mimo oblast [1, M ] .
Cílem je vypočítat krátké segmenty y [ n ] libovolné délky L a spojit segmenty dohromady. Zvažte segment, který začíná n = kL + M , pro jakékoli celé číslo k , a definujte :
Potom pro kL + M ≤ n ≤ kL + L + M - 1 a ekvivalentně M ≤ n - kL ≤ L + M - 1 můžeme napsat :
Substitucí j ≜ n-kL je úkol redukován na výpočet y k (j) , pro M ≤ j ≤ L + M -1 . Tyto kroky jsou znázorněny na prvních 3 stopy obrázku 1, kromě toho, že požadovaná část výstup (třetí stopa) odpovídá 1 ≤ j ≤ L .
Pokud periodicky prodlužujeme x k [ n ] s periodou N ≥ L + M - 1, podle :
se závity a jsou ekvivalentní v regionu M ≤ n ≤ L + M - 1. Je proto postačující spočítat N -bodu kruhový (nebo cyklický) konvoluce ze se v oblasti [1, N ]. Subregion [ M , L + M - 1] je připojen k výstupnímu proudu a ostatní hodnoty jsou zahozeny . Výhodou je, že kruhovou konvoluci lze vypočítat efektivněji než lineární konvoluci, podle věty o kruhové konvoluci :
-
( Rovnice 2 )
kde :
- DFT N a IDFT N odkazují na diskrétní Fourierovu transformaci a její inverzní, vyhodnocené přes N diskrétních bodů, a
- L je obvykle zvoleno tak, že N = L+M-1 je celočíselná mocnina 2 a transformace jsou pro účinnost implementovány pomocí algoritmu FFT .
- Přední a zadní okrajové efekty kruhové konvoluce se překrývají a přidávají a následně zahodí.
Pseudo kód
(Overlap-save algorithm for linear convolution) h = FIR_impulse_response M = length(h) overlap = M − 1 N = 8 × overlap (see next section for a better choice) step_size = N − overlap H = DFT(h, N) position = 0 while position + N ≤ length(x) yt = IDFT(DFT(x(position+(1:N))) × H) y(position+(1:step_size)) = yt(M : N) (discard M−1 y-values) position = position + step_size end
Úvahy o účinnosti
Když jsou DFT a IDFT implementovány algoritmem FFT, výše uvedený pseudokód vyžaduje asi N (log 2 (N) + 1) komplexní multiplikace pro FFT, součin polí a IFFT. Každá iterace produkuje výstupní vzorky N-M+1 , takže počet komplexních násobení na výstupní vzorek je přibližně :
-
( Rovnice 3 )
Například když M = 201 a N = 1024, rovnice 3 se rovná 13,67, zatímco přímé vyhodnocení rovnice 1 by vyžadovalo až 201 komplexních násobení na výstupní vzorek, nejhorší případ je, když jsou x i h komplexně oceněny. Všimněte si také, že pro danou M , Eq.3 má minimální vzhledem k N . Obrázek 2 je graf hodnot N, které minimalizují Eq.3 pro rozsah délek filtrů (M).
Místo Eq.1 můžeme také zvážit použití Eq.2 na dlouhou sekvenci vzorků délky . Celkový počet komplexních násobení by byl:
Srovnatelně počet komplexních násobení vyžadovaných algoritmem pseudokódu je:
Proto je cena této metody překryv-Save váhy téměř přičemž náklady na jeden velký kruhový konvoluce je téměř .
Překrývat - zahodit
Overlap – discard a Overlap – scrap jsou méně běžně používané štítky pro stejnou metodu zde popsanou. Tyto štítky je však ve skutečnosti lépe (než překrytí – uložení ) odlišit od překrývání – přidání , protože obě metody „ukládají“, ale pouze jeden zahodí. „Uložit“ pouze odkazuje na skutečnost, že ke zpracování segmentu k + 1 jsou potřeba vstupní (nebo výstupní) vzorky M - 1 ze segmentu k .
Rozšíření překrývání - uložení
Algoritmus překrytí – uložení lze rozšířit o další běžné operace systému:
- další kanály IFFT lze zpracovat levněji než první opětovným použitím dopředného FFT
- vzorkovací frekvence lze měnit pomocí dopředných a obrácených FFT různých velikostí
- frekvenčního překladu (míchání) lze dosáhnout přeskupením frekvenčních přihrádek
Viz také
Poznámky
Reference
- Rabiner, Lawrence R .; Zlato, Bernard (1975). „2,25“. Teorie a aplikace zpracování digitálního signálu . Englewood Cliffs, New Jersey: Prentice-Hall. s. 63–67 . ISBN 0-13-914101-4.
- US patent 6898235 , Carlin, Joe; Collins, Terry & Hays, Peter a kol., „Zařízení pro širokopásmové zachycování a zjišťování směru pomocí hyperchannelizace“, publikováno 10. prosince 1999 , vydáno 2005-05-24 , url2 = https://worldwide.espacenet.com/patent /hledání/rodina/034590049/publikace/US6898235B1? q = pn%3DUS6898235
Externí odkazy
- Dr. Deepa Kundur, Add Overlap and Overlap Save , University of Toronto