Bildbehandling i frekvensdomänen. Erik Vidholm

Relevanta dokument
Bildbehandling i frekvensdomänen

Bildbehandling En introduktion. Mediasignaler

Bildförbättring i spatial domänen (kap. 3) Bildförbättring (enhancement) Spatial domän. Operatorer. Tröskling (threshold) Gråskale-transformationer

Laplace, Fourier och resten varför alla dessa transformer?

Flerdimensionella signaler och system

Spektrala Transformer för Media

Bildbehandling i spatialdomänen och frekvensdomänen

Spektrala Transformer för Media

Laplace, Fourier och resten varför alla dessa transformer?

Laboration i Fourieroptik

Projekt 6. Fourieroptik Av Eva Danielsson och Carl-Martin Sikström

Projekt 2 (P2) Problembeskrivning och uppdragsspecifikation

FÖRELÄSNING 13: Analoga o p. 1 Digitala filter. Kausalitet. Stabilitet. Ex) på användning av analoga p. 2 filter = tidskontinuerliga filter

Bildbehandling, del 1

Signal- och bildbehandling TSBB03

Spektrala Transformer

Spektrala Transformer

DIGITALA FILTER. Tillämpad Fysik Och Elektronik 1. Frekvensfunktioner FREKVENSSVAR FÖR ETT TIDSDISKRET SYSTEM. x(n)= Asin(Ωn)

Spektrala Transformer

Signal- och bildbehandling TSEA70

Signal- och bildbehandling TSBB03 och TSEA70

Tentamen Bildanalys (TDBC30) 5p

i(t) C i(t) = dq(t) dt = C dy(t) dt y(t) + (4)

TEM Projekt Transformmetoder

Signal- och bildbehandling TSBB03, TSBB14

Elektronik 2018 EITA35

Resttentamen i Signaler och System Måndagen den 11.januari 2010, kl 14-19

Signal- och bildbehandling TSEA70

TNM030 Tentasammanfattning (frågor) Nathalie Ek, Sammanfattning. TNM030 - Bildbehandling och bildanalys

Innehåll. Innehåll. sida i

Signal- och Bildbehandling FÖRELÄSNING 4. Multiplikationsteoremet. Derivatateoremet

Signal- och Bildbehandling FÖRELÄSNING 7. En bild är en 2D signal. För en digital bild gäller. Fig. 2.1

Hambley avsnitt

Övningar med Digitala Filter med exempel på konstruktion och analys i MatLab

Projekt 3: Diskret fouriertransform

Signaler, information & bilder, föreläsning 14

Frekvensplanet och Bode-diagram. Frekvensanalys

Teori... SME118 - Mätteknik & Signalbehandling SME118. Johan Carlson 2. Teori... Dagens meny

DT1130 Spektrala transformer Tentamen

7 MÖNSTERDETEKTERING

DT1130 Spektrala transformer Tentamen

Vad gör vi när vi bara har en mätserie och ingen elegant matematisk funktion? Spektrum av en samplad signal. Trunkering i tiden

x(t) = sin(ω 0 t) (1) b) Tillåt X(ω) att innehålla diracimpulser (en generalliserad funktion). Vilken signal x(t) har spektrumet X(ω)?

Signal- och bildbehandling TSBB03

Grafiska system. Färgblandning. Samspel mellan ytor. Ögats. fysionomi. Ljusenergi. Signalbehandling och aliasing

Signal- och Bildbehandling, TSBB14 Laboration 1: Kontinuerliga signaler

Hambley avsnitt

Signaler, information & bilder, föreläsning 14

Laboration i Fourieroptik

BILDBEHANDLINGSMETOD INNEFATTANDE BRUSREDUCERING I BILD MED LOKALT ADAPTIV FILTERKÄRNA

Laboration 1. Grafisk teknik Rastrering. Sasan Gooran (HT 2004)

Tillämpning av komplext kommunikationssystem i MATLAB

Signal- och bildbehandling TSBB03

Signalanalys med snabb Fouriertransform

TIDSDISKRETA SYSTEM SYSTEMEGENSKAPER. Minne Kausalitet Tidsinvarians. Linjäritet Inverterbarhet Stabilitet. System. Tillämpad Fysik och Elektronik 1

Exempelsamling Grundläggande systemmodeller. Klas Nordberg Computer Vision Laboratory Department of Electrical Engineering Linköping University

FOURIERANALYS En kort introduktion

Medicinska bilder. Programkurs 6 hp Medical Images TSBB31 Gäller från: 2018 VT. Fastställd av. Fastställandedatum

Signaler, information & bilder, föreläsning 12

DT1130 Spektrala transformer Tentamen

Exempelsamling Grundläggande systemmodeller. Klas Nordberg Computer Vision Laboratory Department of Electrical Engineering Linköping University

Signaler några grundbegrepp

Passiva filter. Laboration i Elektronik E151. Tillämpad fysik och elektronik UMEÅ UNIVERSITET Ulf Holmgren. Ej godkänd. Godkänd

Lågpassfiltrering. Signal- och Bildbehandling FÖRELÄSNING 8. Lågpassfiltrering

Signal- och bildbehandling TSBB14

Laboration i Fourieranalys, TMA132 Signalanalys med snabb Fouriertransform

2 Ortogonala signaler. Fourierserier. Enkla filter.

TSBB31 Medicinska bilder Föreläsning 3

Lösning till tentamen i Medicinska Bilder, TSBB31, DEL 1: Grundläggande 2D signalbehandling

Signal- och bildbehandling TSEA70

7 Olika faltningkärnor. Omsampling. 2D Sampling.

RÄKNEEXEMPEL FÖRELÄSNINGAR Signaler&System del 2

Signaler och system, IT3

Digital signalbehandling Laboration 2 Digital filtrering

Ulrik Söderström 20 Jan Signaler & Signalanalys

Signal- och bildbehandling TSBB14

Ulrik Söderström 19 Jan Signalanalys

Spektrala Transformer

2F1120 Spektrala transformer för Media Tentamen

Signal- och bildbehandling TSEA70

Lösningsförslag, Tentamen, Differentialekvationer och transformer II, del 2, för CTFYS2 och CMEDT3, SF1629, den 9 juni 2011, kl.

Laboration 4: Digitala bilder

Lösning till tentamen i Medicinska Bilder, TSBB31, DEL 1: Grundläggande 2D signalbehandling

DIGITALA FILTER DIGITALA FILTER. Tillämpad Fysik Och Elektronik 1

Elektronik. Dataomvandlare

TSDT18/84 SigSys Kap 4 Laplacetransformanalys av tidskontinuerliga system. De flesta begränsade insignaler ger upphov till begränsade utsignaler

Spektralanalys - konsten att hitta frekvensinnehållet i en signal

Signal- och Bildbehandling, TSBB14. Laboration 2: Sampling och Tidsdiskreta signaler

Sammanfattning TSBB16

Spektrala Transformer

Signaler och System Höstterminen -02 IT3 Rasha Alshammari Andreas Nissemark Zakai kass-saliba Pavel Carballo

Fouriermetoder MVE295 - bonusuppgifter

Digital Signalbehandling i Audio/Video

Laboration 2: Filtreringsoperationer

TNMK054 - LJUDTEKNIK 1 FILTER OCH VCF

Signalbehandling och aliasing. Gustav Taxén

Flerdimensionell analys i bildbehandling

Laboration i Fourieranalys för F2, TM2, Kf2 2011/12 Signalanalys med snabb Fouriertransform (FFT)

Talets akustik repetition

Transkript:

Bildbehandling i frekvensdomänen Erik Vidholm erik@cb.uu.se 9 december 2002

Sammanfattning Detta arbete beskriver hur en bild kan tolkas som en tvådimensionell digital signal, hur denna signal Fouriertransformeras och hur transformen sedan kan visualiseras och tolkas. Filtrering av bilder i frekvensdomänen beskrivs, och resultat för olika typer av filter ges. Det ges även exempel på hur rörelseoskärpa eller dålig fokus kan korrigeras med invers filtrering.

Innehåll Introduktion 2 2 Digital representation av bilder 2 3 Diskret Fouriertransform i 2D 2 4 Visualisering 3 5 Filtrering av bilder 4 5. Invers filtrering................................... 5 5.2 Vanliga filtertyper................................. 6 5.3 Realisering av filter................................. 6 6 Implementation i Matlab 8 7 Sammanfattning 9 Referenser 0

3 DISKRET FOURIERTRANSFORM I 2D Introduktion Inom bildbehandling är filtrering ofta använt. De vanligaste filtren gör bilden mjukare eller hittar kanter i bilden. Sådana filter representeras ofta av en s.k. filterkärna av storlek 3x3, 5x5, 7x7 etc. Filtreringen av bilden utförs som en tvådimensionell faltning med denna kärna. En faltning i spatialdomänen representeras som bekant av en multiplikation i Fourierdomänen. För stora kärnor innebär detta att antalet beräkningar kan reduceras avsevärt genom användandet av den snabba Fouriertransformen. Detta är ett sätt att arbeta med bilder i frekvensdomänen, men man har också stora möjligheter att skapa filter direkt i frekvensdomänen för att reducera eller framhäva vissa frekvenser i bilden. Att använda invers filtrering (avfaltning) är ett sätt att skapa filter i frekvensdomänen för att t.ex. korrigera dålig fokusering eller rörelseoskärpa. 2 Digital representation av bilder En tvådimensionell digital bild kan beskrivas av en diskret funktion f(x, y), där x och y är pixelpositionerna och f(x, y) är intensiteten i punkten. Figur : En bild som diskret funktion. En grånivåbild representeras ofta av 8-bitars heltal. Det betyder att 2 8 = 256 grånivåer kan visas, där 0 betyder svart och 255 vitt. Färgbilder representeras på ett liknande sätt, men där används flera lager för att representera olika spektralband (t.ex. RGB modellen). 3 Diskret Fouriertransform i 2D Den diskreta Fouriertransformen (DFT) av en bild f(x, y) samplad i M N punkter är definierad som F[f(x, y)] = F (u, v) = M x=0 N y=0 ux f(x, y)e 2πi( M + vy N ), () där u = 0,..., M och v = 0,..., N är diskreta frekvensvariabler. Frekvensen här har enheten /avstånd till skillnad från t.ex. ljudsignaler där enheten är /tid. 2

4 VISUALISERING Originalbilden fås från den inverterade DFT n: F [F (u, v)] = f(x, y) = MN för x = 0,..., M och y = 0,..., N. M u=0 N v=0 ux F (u, v)e 2πi( M + vy N ), (2) Transformen F (u, v) kallas för funktionen f s spektrum, och är i det generella fallet komplex: I polära koordinater: F (u, v) = Re[F (u, v)] + i Im[F (u, v)]. där F (u, v) = F (u, v) e iφ(u,v), F (u, v) = Re[F (u, v)] 2 + Im[F (u, v)] 2 och φ(u, v) = arctan ( ) Im[F (u, v)]. Re[F (u, v)] F (u, v) kallas för amplitudspektrum och φ(u, v) kallas för fasspektrum. 4 Visualisering För att visualisera amplitudspektrum av en funktion som en bild används ofta funktionen D(u, v) = c log( + F (u, v) ). Där c är en skalfaktor för att passa in funktionsvärdena till grånivåskalan. Man brukar också göra ett skift för att få origo i centrum, d.v.s. se till att låga frekvenser hamnar i mitten av bilden. Man beräknar alltså F (u M/2, v N/2). I figur 2 visas hur amplitudspektrum kan visualiseras. 3

5 FILTRERING AV BILDER (a) Original image (b) Magnitude function of DFT (c) Magnitude function of shifted DFT (d) Log scaled magnitude function of shifted DFT Figur 2: Exempel på hur amplitudspektrum kan visualiseras. När det gäller fasspektrumet så är det inte intuitivt hur det ska visualiseras. Det finns modeller som utnyttjar en periodisk färgskala för att representera fasen, se [4]. 5 Filtrering av bilder Filtrering av bilder i spatialdomänen används ofta för att göra bilden mjukare eller för att hitta kanter i bilden. Ett utsmetande 3 3 medelvärdesfilter t.ex., beräknar medelvärdet av varje pixel och dess 8 grannar. En illustration finns i figur 3. 9 Figur 3: Ett 3 3 medelvärdesfilter. Filtrering med medelvärdesfiltret ovan kan ses som en faltning av bilden f(x, y) med en filterkärna h(x, y) för att erhålla den resulterande bilden g(x, y). Faltningen är: g(x, y) = f(x, y) h(x, y) = M N m=0 n=0 4 f(m, n)h(x m, y n) (3)

5. Invers filtrering 5 FILTRERING AV BILDER Som bekant representeras en faltning i spatialdomänen av en multiplikation i frekvensdomänen: G(u, v) = F (u, v) H(u, v). (4) Detta ger möjligheten att beräkna DFT n av f(x, y) och h(x, y), multiplicera transformerna och sedan inverstransformera för att erhålla resultatet g(x, y). För stora filterkärnor är detta en effektiv algoritm om man kan använda den snabba Fouriertransformen (FFT). En annan möjlighet är att skapa filtret H(u, v) direkt i frekvensdomänen för att framhäva eller reducera vissa frekvenser. 5. Invers filtrering En bild som är degraderad beroende på t.ex. rörelseoskärpa eller dålig fokus kan tecknas matematiskt med formeln g(x, y) = f(x, y) h(x, y) + n(x, y), där h är någon olinjär funktion och n är brus. I frekvendomänen fås: G(u, v) = F (u, v)h(u, v) + N(u, v). Genom att estimera H(u, v) med en matematisk modell kan ett filter skapas för att korrigera degraderingen. Om estimatet är H(u, v) H(u, v) kan filtret definieras som H (u, v) vilket resulterar i F (u, v) H (u, v) (G(u, v) N(u, v)). Många gånger kan man bortse från bruset N, men ibland måste man göra ett estimat även av det. För några specialfall kan degraderingsfunktionen H estimeras med ganska enkla matematiska modeller. Oskärpa beroende på en rörelse med konstant hastighet i x-riktningen kan beskrivas i frekvensdomänen med funktionen H(u, v) = sin(πvt u), πvu där T är exponeringstiden och v är hastigheten. En degradering som beror på dålig fokus beskrivs av funktionen H(u, v) = J (aρ) aρ, där J är första ordningens Besselfunktion, ρ 2 = u 2 + v 2 och a är linsens förskjutning. För dessa fall är det relativt lätt att hitta ett bra estimat till degraderingsfunktionen, men för en mer generell degradering är det ett svårt problem, se [2]. 5

5.2 Vanliga filtertyper 5 FILTRERING AV BILDER 5.2 Vanliga filtertyper Det finns olika typer av filter, men de vanligaste är lågpass- högpass-, bandpass- och bandstoppfilter. Även s.k. notchfilter används. Det vanligaste är att man använder filter som endast påverkar amplituden hos Fourierspektrumet, d.v.s. ingen fasvridning sker. Exempel på hur de olika typerna av filter ser ut i två dimensioner finns i figur 4. v u Figur 4: Till vänster ett idealt högpassfilter, i mitten ett idealt bandstoppfilter, och till höger ett idealt notchfilter. Ett lågpassfilter producerar utjämnade bilder, medan högpassfilter används för att ta fram snabba förändringar i bilden (kanter). Bandstoppfilter dämpar frekvenser i ett band på ett givet avstånd från origo. Denna typ av filter används ofta för brusreducering när bruset består av kända frekvenser. Ett bandpassfilter kan användas t.ex. för att extrahera bruset för separat analys. Notchfilter används för att dämpa frekvenser i en omgivning av centrumfrekvensen (u 0, v 0 ). 5.3 Realisering av filter I figur 4 är alla filter ideala. Ett idealt filter har värdet ett för frekvenser som ska släppas igenom, och noll för övrigt. I figur 5 ses ett endimensionellt idealt lågpassfilter och dess inversa Fouriertransform. Ideal filtrering ger ringningseffekter p.g.a. de skarpa övergångarna mellan frekvenserna. (a) (b) Figur 5: (a) visar ett endimensionellt idealt lågpassfilter och (b) dess inversa Fouriertransform. För att undvika ringningseffekter använder man approximationer av ideala filter istället. Vanligt är att använda förenklade versioner av Butterworthfilter som endast påverkar amplituden. 6

5.3 Realisering av filter 5 FILTRERING AV BILDER Ett Butterworth lågpassfilter av ordning n, och med gränsfrekvens på avståndet ρ 0 från origo definieras av funktionen H BWLP (ρ) = 2n, (5) + (ρ/ρ 0 ) där ρ = u 2 + v 2. Ju högre grad n, desto mer liknar filtret ett idealt filter. Ett Butterworth högpassfilter definieras av funktionen H BWHP (ρ) = H BWLP (ρ). Den definition av Butterworthfilter som ges här är hämtad från [] och skiljer sig från definitionen i [3]. Ekvation (5) beskriver egentligen den kvadrerade frekvensgången hos ett Butterworthfilter, men är det som används inom bildbehandlingen enligt []. I figur 6 syns ett endimensionellt Butterworth lågpassfilter och dess inversa Fouriertransform. Ringningarna är borta p.g.a. filtrets mjuka övergång mellan låga och höga frekvenser. (a) (b) Figur 6: (a) visar ett endimensionellt Butterworth lågpassfilter och (b) dess inversa Fouriertransform. Ett Butterworth bandpassfilter av ordning n och bandbredd W definieras av funktionen H BWBP (ρ) = + ( ρ 2 ρ 2 0 ρw ) 2n, (6) där ρ 0 är avståndet till bandets centrum. Motsvarande bandstoppfilter definieras av funktionen H BWBS (ρ) = H BWBP (ρ). Ett notchfilter av grad n centrerat i punkten (u 0, v 0 ) definieras av funktionen H BWNP (u, v) = + ( D (u,v)d 2 (u,v) D 2 0 ) n, (7) där D 0 är den lokala gränsfrekvensen och D (u, v) = (u u 0 ) 2 + (v v 0 ) 2, D 2 (u, v) = (u + u 0 ) 2 + (v + v 0 ) 2. I figur 7 visas ytplottar på några av filtren ovan. 7

6 IMPLEMENTATION I MATLAB (a) Lågpassfilter. (b) Bandstoppfilter. (c) Notchfilter. 6 Implementation i Matlab Figur 7: Ytplottar på Butterworthfilter. Några av filtren har skapats i Matlab och använts för att filtrera ett antal testbilder. Först jämfördes resultaten av ett idealt lågpassfilter och ett motsvarande Butterworthfilter. Originalbilden är av storlek 52 52 och gränsfrekvensen ligger på avståndet ρ 0 = 52/6 från origo. Se resultat i figur 8. (a) Originalbild. (b) DFT av (a). (c) Idealt lågpassfilter. (d) Resultat av filtrering med (c). (e) Butterworth lågpassfilter. (f) Resultat av filtrering med (e). Figur 8: Jämförelse av lågpassfiltrering med ett idealt lågpassfilter och ett motsvarande Butterworthfilter. Ringningseffekterna är påtagliga i (d). Ett Butterworth högpassfilter implementerades också för att testas på samma bild som i figur 8. Gränsfrekvensen ligger på avståndet ρ 0 = 52/8. Se resultat i figur 9. 8

7 SAMMANFATTNING (a) Butterworth högpassfilter. (b) Resultat av filtrering med (a). Figur 9: Högpassfiltrering med Butterworthfilter. Filtreringen framhäver kanterna i bilden. För att undersöka hur brus kan reduceras genom filtrering i frekvensdomänen genererades en testbild med kraftigt brus bestående till största del av två frekvenser. Figur 0 visar hur sådant brus kan reduceras genom att använda två notchfilter. SNR i testbilden är ca -9 db. (a) Brusbild. (b) DFT av (a). (c) Filter. (d) Filter 2. (e) Resultat av filtrering (och kontrastförstärkning). Figur 0: Resultat av filtrering med Butterworth notchfilter. 7 Sammanfattning Arbetet har visat hur bilder kan behandlas i frekvensdomänen genom att använda den diskreta Fouriertransformen. Det har givits exempel på hur Fourierspektrumet kan visualiseras och hur man med ganska enkla filter kan få goda resultat vid filtrering i frekvensdomänen. 9

REFERENSER REFERENSER Referenser [] R.C. Gonzalez, R.E. Woods. Digital image processing. Addison Wesley publishing company, 2nd edition, 992. [2] M. Sonka, V. Hlavac, R. Boyle. Image processing, analysis and machine vision. PWS Publishing, 999. [3] A. Svärdström. Signaler och system. Studentlitteratur, 999. [4] K. Cowtan. Kevin Cowtan s picture book of Fourier transforms. URL: http://www.yorvic.york.ac.uk/ cowtan/fourier/fourier.html (2002-2-08) 0