Bruksområder - ltrerng INF 30 Dgtal bldebeandlng Fltrerng blde-domenet - Naboskaps-operasjoner Konvolusjon og korrelasjon Kant-bevarende ltre Ikke-lneære ltre GW Kap 3.4-3.5 + Kap 5.3 Av de mest brukte operasjoner bldebeandlng. Brukes som et ledd pre-prosesserng or mange bldeanalse-problemer: Støjernng/støreduksjon Kant-deteksjon Deteksjon av lnjer eller andre speselle strukturer. Konvolusjon INF 30 INF 30 Lokale operasjoner V skal se på teknkker blde-domenet Teknkker ra rekvens-domenet kommer senere. Blde-domenet reererer tl mengden av pksler som utgjør det dgtale bldet. Bldeplan-metoder opererer på dsse pkslene og gr: g T [ ] Hver pkselverd g ut-bldet er en unksjon av pkselverdene et lokalt område rundt tlsvarende pkselpossjon nn-bldet. g er ut-bldet er nn-bldet T er en operator på en omegn rundt INF 30 3 INF 30 4
Omgvelser/naboskap/vndu Kvadratske/rektangulære vnduer mest vanlg. Av smmetr-ensn otest odde dmensjon. Enkelst transorm år v når vnduet er bare pksel. T er da gråtonemappng der n pkselverd bare avenger av pkselverden punktet. Hvs T er den samme over ele bldet ar v en global transorm. Hvs vnduet er større enn ar v en lokal transorm. INF 30 5 Naboskap+Transorm=Maske Naboskap/vndu/omgvelse: De pkslene rundt et punkt nn-bldet som T opererer på. Transorm/operator: Operator/algortme som opererer på pkslene naboskapet. Ser HVA v skal gjøre med bldet. Maske/lter: En matrse med vekter eller koesenter. Resultatene lagres et ntt blde. Eksempel: et gjennomsnttslter INF 30 6 Flter-egenskaper egenskaper - Addtvtet Flter-egenskaper egenskaper - Homogentet H[ ] H[ ] H[ ] H er lteret og og er vlkårlge blder. Hva betr dette: Hvs v skal addere to ltrerte blder? H[ a ] ah[ ]] Hvs H er en lneær operator er responsen på et konstant multppel av en vlkårlg nput lk konstanten multplsert med responsen på nput. INF 30 7 INF 30 8
Flter-egenskaper - Lneartet Flter egenskaper Lneartet H er lteret a og b er konstanter og og lkå l bld ] [ ] [ ] [ bh ah b a H er vlkårlge blder. Hva betr dette: Hvs v skalerer bldene ør ltrerngen? Hvs v skalerer bldene ør ltrerngen? INF 30 9 Flter-egenskaper Possjons-nvarans Flter egenskaper Possjons nvarans or alle og or vlkårlge lm. ] [ m l g m l H Responsen et vlkårlg punkt et blde avenger bare av bldets lokale verd kke av avenger bare av bldets lokale verd kke av possjonen. INF 30 0 Eksempel: mddelverd Eksempel: mddelverd For vert pksel beregn dd l d k l t 3 3 mddelverden av pkslene et 3 3 vndu rundt pksel [ 9 g 9 ] v v og 3 3 vndu v INF 30 -D Konvolusjon D Konvolusjon T g ] [ er lteret er et -D blde eller sgnal Merk at: g g INF 30 Og det er den sste ormen v bruker or utregnng.
Et -D eksempel =[ 3] Indeks or : - 0 =[ 4 4 4] Indeks or : = 3 g g = 0 + 0 + - = 3 0+ 4+ 4 = g = + 0 + -3 = 3 4 + 4 + 4 = 4 g3 = + 03 + -4 = 3 4 + 4 + 4=0 0 og 4 er kke denert la oss anta at de er 0. er multplkasjon Men va skjer rundt kantene? Merk at v må spelvende ør multplkasjon. INF 30 3 Utregnng av -D konvolusjon g For å regne ut resultatet av en konvolusjon or possjon : Spelvend masken legg den over bldet slk at mnst en possjon overlapper med bldet. Multplser vert element masken med underlggende pkselverd. Summen av produktene gr verden or g possjon. For å regne ut resultatet or alle possjoner: Fltt masken pksel or pksel og gjenta operasjonene over. Merk: or smmetrsk spller det ngen rolle om v spelvender masken eller kke. INF 30 4 Ut-bldet er gtt ved g -D konvolusjon j k j k j k j k j k j k er et m n lter med størrelse m= + n= + m og n er vanlgvs oddetall. Ote ar v kvadratsk vndu m=n. Ut-bldet t er et veet sum av nn-pkslene k som omgr. Vektene lteret er gtt ved jk. Ut-bldets pkselverd neste possjon nnes ved at lteret lttes ett pksel og beregner summen på ntt. Utregnng av -D konvolusjon g j k j k j k For å regne ut resultatet av en konvolusjon or possjon : Roter masken 80 grader legg den over bldet slk at mnst en possjon overlapper med bldet. Multplser vert element masken med underlggende pkselverd. Summen av produktene gr verden or g possjon. For å regne ut resultatet or alle possjoner: Fltt masken pksel or pksel og gjenta operasjonene over. INF 30 5 INF 30 6
g Ltt notasjon j k j k j k gr oss verden ut-bldet or pksel-possjon p For å konvolvere lteret med ele bldet bruker v notasjonen g = * * er konvolusjons-operatorenoperatoren Praktske problemer Kan v la ut-bldet a samme pksel-representasjon som nn- bldet? unsgned bte or eksempel? Trenger v et mellom-lager? Hva gjør v langs blde-kantene? Anta at bldet er M N pksler Anta at lteret et m n m=m + n=n + Uberørt av kant-eekt: M-m <N-n 33: M-N- 55: M-4N-4 INF 30 7 INF 30 8 Hva gjør v langs kanten? Alternatver:. Sett g=0. Sett g= 3. Trunker ut-bldet lager det mndre 4. Trunker konvolusjons-masken 5. Utvd bldet ved spelng om kant relected ndeng 6. Crcular ndeng Anta at bldet repeterer seg selv uendelg alle retnnger Merk: dette bruker v Fourer-transorm INF 30 9 Et lte tps om konvolusjon Når v konvolverer et lter med et blde: Er v nteressert å lage et ntt blde med samme størrelse som nput-bldet. V bruker en av teknkkene ra orrge ol. Når v konvolverer en lter-kjerne med en annen lter-kjerne: V vl lage en eektv mplementasjon av et stort lter ved en kombnasjon av enkle separable ltre. V beregner resultatet or alle possjoner der de to lter-kjernene gr overlapp. INF 30 0
g Korrelasjon n m k n jm j k j k Merk orskjell ra konvolusjon: pluss stedet or mnus. Mnus or konvolusjon gjør at v roterer lteret 80 grader. For korrelasjon trenger v kke dette v legger lterkjernen sentrert om pksel og multplserer vert enkelt element. Merk: v kan utøre korrelasjon ved en konvolusjons-unksjon vs v ørst roterer lteret 80 grader. g Korrelasjon n m k n jm j k j k Anvendelse: mønstergjenkjennng eller template matcng. Mønster/template kan være en del av et blde. j0 Normalser ved g ' n m g j jn k m or å unngå øere verder or lse pksler. k INF 30 INF 30 Korrelasjonskoesent Alternatvt beregn korrelasjons-koesenten j j j j j j j Denne er normalsert både orold tl mddelverden tl lteret og orold tl mddelverden tl den lokale omegnen bldet Eksempel template matcng Fnn et objekt et blde. Flteret er templaten. Templaten må a samme størrelse og orenterng som bldet og omtrent samme gråtoner. INF 30 3 INF 30 4
Egenskaper ved konvolusjon Kommutatv: * g = g * Assosatv: * g * = * g * Dstrbutv: *g+ = *g + * Assosatv ved skalar multplkasjon: a*g = a*g = *ag Kan utnttes sammensatte satte operasjoner! e INF 30 5 Normalserng av ltre Hvs v konvolverer [ ] med seg selv år v [ ]*[ ] = [3] ]. Fortsetter v år v [ ]*[ 3 ] = [ 3 6 7 6 3 ] Ved slke kke-normalserte lterkjerner øker gjennomsnttsverdet det ltrerte bldet. Vanlgvs normalserer v lterkjernen slk at gjennomsnttsverden bldet bevares. 3 3 9 3 6 7 6 3 7 INF 30 6 Lavpass-ltre Mddelverd-ltere lavpass Slpper gjennom lave rekvenser se orelesnnger om Fourer og demper øe rekvenser. Høe rekvenser = skarpe kanter stø detaljer. Eekt: blurrng eller utsmørng av bldet. Utordrng: bevare kanter samtdg som omogene områder glattes. F 7..06 INF 30 7 3 3: 5 5: 7 7: 9 5 49 Alle koesenter er lke. Skaler resultatet ved å normalsere med summen av lterkoesentene. Størrelsen på lteret avgjør graden av glattng. Lte lter: lte glattng kanter bevares bedre. Stort lter: me glattng og utsmørt blde. INF 30 8
Fltrerte blder mddelverdlter Fltrerte blder mddelverdlter Orgnal Fltrert 33-lter Fltrert 99-lter Fltrert 55-lter INF 30 9 INF 30 30 Separable ltre Et separabelt lter kan splttes mndre enklere ltere or eksempel to -dmensjonale ltre Geometrsk orm: kvadrat rektangel Rektangulære mddelverd-ltere er separable. j 5 5 Fordel: et raskt lter. Vanlg konvolusjon: n multplkasjoner og addsjoner. -D konvolusjoner: n multplkasjoner og addsjoner. INF 30 3 Tdsbesparelse Vanlg konvolusjon: n multplkasjoner og addsjoner. -D konvolusjoner: n multplkasjoner og addsjoner. Besparelse ved separasjon av n n lter: n n n n INF 30 n 3 0.33 5 0.60 7 07 0.7 9 0.77 0.8 3 085 0.85 5 0.87 3
Lavpass-ltrerng ved oppdaterng Det tar n multplkasjoner og n - addsjoner å beregne resultatet R or et nn unormt lter ser bort ra skalerngen. Hvs lteret lttes ett pksel blr n respons R n =R-C +C n der C er summen av produktene ørste kolonne lteret og C n er tlsvarende or sste kolonne lteret. Det tar n multplkasjoner og n- addsjoner å nne v. C og C n. Dvs. totalt n+n operasjoner or å nne R n. Oppdaterng er lke raskt som separabltet. For unorme ltere kan v også droppe alle multplkasjoner. INF 30 33 Ikke-unormt lavpass-lter Unorme lavpass-ltre kan mplementeres raskt. Et vanlg kke-unormt lter er Gauss-lteret: D Gauss-lter: ep Parameter σ er standard-avvket bredden Flterstørrelse tø l må tlpasses σ INF 30 34 Eekten av Approksmasjon av Gauss-ltere lten: lte glattng stor: me glattng Men mndre enn med latt mddelverdlter = = 4 * G3 3 INF 30 35 INF 30 36
Kant-bevarende støltrerng V ltrerer or å jerne stø bldene. Det nnes et utall av kantbevarende ltre. Men det er et sstem lter-jungelen: V kan jo to pksel-populasjoner vnduet. Da er det suboptmalt å bruke alle pkslene. V kan sortere pkslene: Radometrsk Geometrsk Både radometrsk og geometrsk Rang-ltrerng V lager en en-dmensjonal lste av alle pksel- verdene nnenor vnduet. V sorterer lsten stgende rekkeølge. V velgen en pksel-verd ra en bestemt possjon den sorterte lsten Denne pksel-verden er resultatet av ltrerngen og skrves ut tl tlsvarende pksel-possjon ut-bldet. INF 30 37 INF 30 38 Medan-lter g = medan av verdene et vndu rundt nn-pkslet. Medan = den mdterste t verden sortert t lste. Vndu: kvadrat rektanger pluss. Rask mplementasjon kan gjøres va. stogram med stogram-oppdaterng oppdaterng etter vert som vnduet lttes. Et av de mest brukte kant-bevarende stø-ltre. Speselt godt tl å jerne mpuls-stø salt og pepper Problemer: Tnne kanter kan orsvnne Hjørner kan rundes av Objekter kan bl ltt mndre Valg vndus-størrelse og orm vktg! Mddelverd eller medan? Mddelverd-lter: beregn mddelver vndu. God stø-reduksjon men blurrng av kanter. Medan-lter: nn medanen vnduet. Dårlgere støreduksjon bedre kant-bevarng. Fungerer speselt godt på salt-op-pepper stø. INF 30 39 INF 30 40
Medan og jørner Medan ved stogram-oppdaterngoppdaterng. Skal oppdatere medan-verden mens v ltter et vndu med m+ rader og n+ kolonner rundt bldet. Sett t=m+n+/.. Sett vduet ved venstre bldekant sorter og nn medamed MED og antall pksler med gråtone MED LE_MED Med kvadratsk vndu rundes jørnet av Med pluss -vndu bevares jørnet 3. or j=-m to m do begn --H[-n-j] -n-j<med ten --LE_MED end 4. Fltt vnduet et pksel tl øre: or j=-m to m do begn ++H[+n-j] +n-j<med ten ++LE_MED end INF 30 4 INF 30 4 Mn og Ma ltre Dsse ltrene nner v. laveste og øeste pkselverd nnenor et vndu. Begge gr en kke-lneær blurrng av bldet. De krever kke sorterng av pkslene bldet. Raskere enn ull sorterng n- sammenlgnnger mot nlog n Kombnasjoner av Mn og Ma ltre La mn t og ma bet den mnste og største verden ar nnenor et vndu sentrert om. La vnduet ltte seg gjennom alle mulge possjoner bldet. Da vl to-pass operasjonen g =mamn jerne topper som er mndre enn vnduet. Operasjonen g =mnma ller daler som er mndre enn vnduet. For å orsterke alle strukturer som er mndre enn vnduet: g=+a-mamn-mnma Mn og Ma-operasjonene på et m n vndu er separable den orstand at de kan utøres to pass med et n vndu og et m vndu. INF 30 43 F..06 INF 30 44
KNN-lteret Adaptv ltrerng KNN = K Nærmeste Nabo Ut-verd = gjennomsntt eller medan av de K pkslene vnduet som lgger nærmest senterpkslet gråtone-verd. Kan sees som en modkasjon av mddelverd-ltret eller medanltret der man kun tar med de K mest aktuelle av nabo-pkslene. Problem: K er konstant or ele bldet. Velger v or lten K jerner v lte stø For stor K jerner tnne lnjer og jørner K=: ngen eekt K<n: bevarer tnne lnjer n n-vndu K<n/- : bevarer jørner K<n/-n: bevarer rette kanter Adaptve ltere beregner gråtone-statstkk ra et vndu rundt vert pksel og lar lter-parametere avenge av dette. Et pksel kan betraktes som stø dersom det er sgnkant orskjellg ra sne naboer: Men vordan setter v t og nner va som er sgnkant orskjellg? INF 30 45 INF 30 46 Sgma-ltret Ut-verd=mddelverden av alle pksler nnen vnduet vs gråtonerverd lgger ntervallet t der t er en parameter og er estmert et omogent område bldet. Fjerner kke solerte stø-pksler. INF 30 47 Oppsummerng Konvolusjon brukes or å ltrere et blde med en lterkjerne. Å kunne utøre konvolusjon manuelt på et lte eksempel er sentralt pensum. Vær obs på kant-eekter. Ikke-lneære ltere Planer ramover: Ulke tper ltre Gradent-operatorer Kantdeteksjon INF 30 48