Spektrala Transformer för Media Filtrering och transformer i 2D DT2/3 Spektrala Transformer Jonas Beskow
Linjär bildbehandling Principerna från -dimensionell signalbehandling kan appliceras även på 2D-signaler Tillämpningar: Bildförbättring (brusreducering) Kant-detektion Omsampling (anti-aliasing) Bildkomprimering (JPEG) mm... DT2/3 Spektrala Transformer Jonas Beskow
Filtrering i D Exempel Signal med högfrekvent störning Skapa ny signal genom att medelvärdesbilda över 5 punkter i taget Kallas moving-average / rullande medlevärde DT2/3 Spektrala Transformer Jonas Beskow
Filtrering i 2D DT2/3 Spektrala Transformer Jonas Beskow
Filtrering i 2D Inbild [N x M] f(x,y) Kärna [n x m] w(x,y) g( x, a = y) ( m Faltning * a b = s= at= b ) / 2, b = w( s, t) ( n Utbild [N x M] g(x,y) ) / f ( x + 2 s, y + t) DT2/3 Spektrala Transformer Jonas Beskow
Filtrering i 2D kärna, PSF Filtrering innebär faltning (convolution) med en kärna (kernel, mask) Kärnan är filtrets 2-dimensionella impulssvar Kallas även PSF (point spread function) dvs. hur en punkt sprids av filtret DT2/3 Spektrala Transformer Jonas Beskow
Filtrering i 2D: lågpass Lågpassfiltrering ger utjämning/ oskärpa (smoothing/ blur) Användning: brusreducering, nedsampling (anti-alias) mm. Motsvarar integrering 9 Exempel: moving average (7x7) 6 2 2 4 2 2 Matlab: I2=conv2(I,ones(7)); DT2/3 Spektrala Transformer Jonas Beskow
Filtrering i 2D: högpass Högpassfiltrering förstärker kanter i bilden (edge detection) - Undertrycker jämna partier Motsvarar 2:a ordningens derivering - - 4 - - - - - 8 - - - - DT2/3 Spektrala Transformer Jonas Beskow
Exempel: sharpening (sharpening, edge enhancement) Kombination av originalbild och högpass förstärker bildens kanter k - - + - 8 - - - - = - + k = -k -k -k +8k -k -k -k -k -k DT2/3 Spektrala Transformer Jonas Beskow
Cirkulärt symmetrisk kärna En cirkulärt symmetrisk filterkärna är ofta önskvärd Modifierar bilden likformigt i alla riktningar DT2/3 Spektrala Transformer Jonas Beskow
Faltning i 2D - beräkningar N x M bild n x m kärna Kräver N x M x n x m multiplikationer Exempel: x bild * x kärna mult. Sökes: metod för snabbare faltning! DT2/3 Spektrala Transformer Jonas Beskow
Separerbar filterkärna Om filterkärnan w(x,y) = g(x)h(y) så är den separerbar i x och y. Faltningen kan då göras med N x M x (n + m) multiplikationer Gauss-funktionen är både separerbar och cirkulärt symmetrisk DT2/3 Spektrala Transformer Jonas Beskow
DFT i 2D 2D DFT beräknas med D FFT längs rader och kolumner (eller omvänt) D DFT D DFT D DFT D DFT D DFT D DFT D DFT D DFT D DFT D DFT D DFT D DFT 2D DFT DT2/3 Spektrala Transformer Jonas Beskow
2D DFT exempel 2D DFT DT2/3 Spektrala Transformer Jonas Beskow
Filtrering i frekvensdomänen Inbild [N x M] f(x,y) Utbild [N x M] g(x,y) F(u,v) DFT Filterfunktion H(u,v) H(u,v)F(u,v) IDFT DT2/3 Spektrala Transformer Jonas Beskow
Filtrering i frekvensdomänen Inbild [N x M] f(x,y) Kärna [n x m] h(x,y) Utbild [N x M] g(x,y) DFT F(u,v) DFT Filterfunktion H(u,v) H(u,v)F(u,v) IDFT DT2/3 Spektrala Transformer Jonas Beskow
Filtrering i frekvensdomänen Bygger på faltningsteoremet (2D-upplagan): Faltning i spatialdomänen Multiplikation i frekvensdomänen f ( x, y) h( x, y) F( u, v) H ( u, v) DT2/3 Spektrala Transformer Jonas Beskow
Gauss - lågpassfilter Gauss spektralt gauss spatialt Motsvarar spridningen i en lins H ( u, v) = e ( u 2 + v 2 )/ 2D Cirkulär symmetri Separerbar i x och y-led DT2/3 Spektrala Transformer Jonas Beskow
Discrete Cosine Transform (DCT) Nära släkting till DFT n Endast cosinus basfunktioner Helt reell Beskriver ickeperiodiska signaler bättre än DFT n Kan beräknas effektivt ur FFT n N / ) X k = x n cos " # % N n + &, + ( k. * $ 2' - n = Används ofta för data-kompression MP3 (kodar koefficientrörelser ) JPEG DT2/3 Spektrala Transformer Jonas Beskow
DCT basfunktioner (N=8).5 2 3 4 5 6 7 2 3 4 5 6 7 ) cos " # N n + &, + % ( k. * $ 2' - 2 3 4 5 6 7 2 3 4 5 6 7 2 3 4 5 6 7 2 3 4 5 6 7 2 3 4 5 6 7 2 3 4 5 6 7 DT2/3 Spektrala Transformer Jonas Beskow
DCT basfunktioner i 2D (8x8) DT2/3 Spektrala Transformer Jonas Beskow
Slutsatser 2D-filtrering är resurskrävande för icketriviala filterkärnor Faltningen kan snabbas upp genom att använda separerbara filterkärnor Faltningen kan göras som en multiplikation i frekvensdomänen DCT-transformen är en DFT-släkting som används för att beskriva/komprimera ickeperiodiska signaler DT2/3 Spektrala Transformer Jonas Beskow