Bildförbättring i spatial domänen (kap. 3) Punktoperationer Gråskaletransformationer Logiska & aritmetiska operationer Filtrering Faltning Lågpassfilter Högpassfilter Bildförbättring (enhancement) Förbättra en bild subjektiv bedömning För mänsklig beskådan För maskinell tolkning Förutsätter inte att bilden försämrats Spatial domän Vanliga domänen Pixlar Operatorer påverkar pixlarna direkt g ( x, y ) = T [ f ( x, y )] f bild, g behandlad bild, T -operator Operatorer Definiera area, grannskap Gå igenom hela bilden Enklaste s = T ( r ) s pixelvärdet i ny bild, r gammalt pixelvärde Gråskaletransformationer, punktoperationer Filtrering Gråskale-transformationer Linjär, t ex negativ Logaritmisk transformering s = c log( r + ) Exponentiell transformering s = cr γ Tröskling (threshold) Tröskling c s = c m - tröskelvärde om r m om r < m
Negativ Log transform Alla :or blir :or, vice versa Fouriertransform Logaritmerad Original Invers (negativ) Exponentiell transform Bitvis linjära transformationer Gammakorrigering Nytt pixelvärde, s Originalvärde, r Nytt pixelvärde, s Originalvärde, r Histogram Histogram Räkna alla pixlar för varje gråskalenivå i bilden. L gråskalenivåer i intervallet [, L-] h(r k )=n k r k grånivå nr. k n k antalet pixlar Normaliserat histogram Dividera med antalet pixlar i bilden, n Sannolikheten för r k p(r k )=n k /n Bild Histogram h(r k )=n k 5 5 5...3.4.5.6.7.8.9
Histogram Histogram Fördelningsfunktion (cumulative distribution function) k j= pr( rj) nk pr( rk) = n k =, K, L Histogram Fördelningsfunktion Histogramutjämning (equalization) Histogramutjämning Mål gråskalevärden jämt utspridda över tillgängligt intervall, ökad kontrast Jämnt histogram Gråskaletransform, monotont växande och i samma intervall som r ( T(r) ) Transform fördelningsfunktionen sk = T ( rk) = k j= pr( rj) Utjämnat histogram Utjämnad fördelnings-funktion Histogramutjämning Histogramutjämning Vidareutvecklingar Histogrammatchning Lokal utjämning Original Hist.utj. Lokal hist.utj.
Logiska & Aritmetiska operationer Logiska & Aritmetiska operationer Pixelvis, två eller flera bilder Samma storlek Logiska AND OR (NOT) för ett komplett logiskt set. Verkar bara på EN bild (motsvarar invertering) Aritmetiska Summering och subtrahering Multiplikation och division Medelvärdesbildning Brusiga bilder Tentaexempel Tentaexempel En bild med 56 gråskalevärden har blivit gråskaletransformerad. Originalbild och resulterande bild visar nedan. Vilken av nedanstående transformationsfunktioner har mest troligen använts? Motivera svaret! En bild med 56 gråskalevärden har blivit gråskaletransformerad. Originalbild och resulterande bild visar nedan. Vilken av nedanstående transformationsfunktioner har mest troligen använts? Motivera svaret! Transformerad bild Originalbild X Transformerad bild Originalbild X Spatiell filtrering, Faltning (convolution) Faltning Nya pixelvärden beräknas från ett grannområde runt gamla pixeln Originalbild + filter (kärna, mask) Linjär filtrering Filter impulssvar, h (x) Definierar fullständigt hur utsignalen ser ut Alla signaler påverkas likadant f (x) h (x) g (x) Faltning betecknas * Summa av produkter Endimensionellt: f ( x ) h ( x ) = Tvådimensionellt f ( x, y ) h ( x, y ) = N MN N n = f ( n ) h ( x n ) M N m = n = f (x) h (x) g (x) f ( m, n ) h ( x m, y n )
Faltning Edimensionella, kontinuerliga fallet (summa integral) Spegelvänd en funktion Glid över den andra f(x) Faltning Endimensionellt, diskret 4 6 4 h(α) f(x) g(x) h(-α) x x g(x) 6 5 5 6 h(-α) Exempel, D (ljud) Original Lågpass /5 /5 /5 /5 /5 Faltning g(x,=w(-,-)f(x-,y-) + +w(-,)f(x-,+ + +w(,)f(x,+ + +w(,)f(x+,y+) Högpass - Faltning Bildstorlek M N Filterstorlek m n g( x, a b = s= a t = b w( s, t) f ( x + s, y + t) a = ( m ) / b = ( n ) / x =,, K, M y =,, K, N Faltning Bild M N, filter m n Ny bild: (M +m ) (N +n ) Inte definierat för (n/m -)/ från kanten! Beräkningsbart y (m-)/ område: (M -m +) (N -n +) h(x, (n-)/ x
Lågpassfilter Lågpassfilter Medelvärdesfilter Jämnar ut variationer i bilden Brus Små detaljer Konturer Olika storlek på kärnan olika styrkor av filtrering /9 /9 /9 /9 /9 /9 /9 /9 /9 3x3 medelv. filter. 4 /6 Viktat medelv. filter. Viktigaste pixlarna har större koefficienter. = /5 5x5 medelv. filter, alla koefficienter /5. /4 * Kan ofta separeras i x- och y-led. /4 Lågpassfilter Olika stora kärnor. 3x3-35x35 Icke-linjära LP-filter Överföringsfunktionen är bildberoende! Sortera pixelvärdena Medianfilter Sortera pixlarna, ta medianvärdet Jämnar ut små, snabba förändringar. Stora förändringar bibehålls. Mycket effektivt för salt och peppar - brus Medianfiltret Medianfiltret Medianfiltrets påverkan på brus/kanter jämfört med medelvärdesfilter Originalbild, störd av salt och peppar -brus Medelvärdesfiltrerad. Utsmetat intryck. Median-filtrerad. Bruset undertryckt, skärpan bibehållen.
Medianfiltret Kan viktas duplicera värdena med störst vikt 5 % percentilen Andra rangordningsfilter: Maxfilter ( %) Hitta ljusaste punkten Minfilter ( %) Hitta mörkaste punkten Högpassfiltrering Förstärker kanter (konturer) i bilden (och brus!) Lågpassfiltrering integrering Högpassfilter derivering Första derivata Andra derivata för konstanta grånivåer för diskontinuiteter (kanter) Derivata (endimensionellt) Första/andra derivatan Första Andra = f ( x + ) f ( x) f = f ( x + ) + f ( x ) f ( x) Första resp. andra derivatans respons på en ramp, punkt, linje, steg. Första derivatan Önskar isotropiskt filter, rotationsinvariant Definiera gradienten: G x f = = f x Gy y Magnituden av gradienten f = + y Ej linjär, men rotationsinv. / Magnituden av gradienten Tung att beräkna för en hel bild Approximera med absolutvärde: f + y Kallas oftast för gradient Rotationsinvariant endast för 9
Gradientoperationer Enklaste (av definitionen) - - Robert s cross Gradientoperationer Sobelfilter, :an verkar lite utjämnande - - - - - - - - Prewittfilter - - - - Jämna kärnor krångliga att implementera - - Sobelfilter Sobelfilter y Original Sobelgradienten + y Andra derivatan Laplace-filtret, definieras: f f f = + y Definition utökad till -D f = f ( x +, + f ( x, f ( x, x f = f ( x, y + ) + f ( x, y ) f ( x, y Lägg ihop: f = [ f ( x +, + f ( x, + f ( x, y + ) + f ( x, y )] 4 f ( x, Laplace-kärnor Rotationsinvariant 9 - -4-4 - Rotationsinvariant 45 - - -8-8 - - - - - -
Öka bildens skärpa Exempel på laplace-filtrering Laplace ger konturerna Långsamma variationer blir svarta Lägg till originalet (positiv mittpunkt i laplacefiltret) g( x, = f ( x, + f ( x, Originalbild Laplace - - 4 - - + = - - 5 - - Skalad laplace Original+laplace Oskarp mask Skapa en skarpare bild genom att subtrahera en suddig bild från originalbilden. f s ( x, y ) = f ( x, y ) f ( x, y ) High boost filtrering Förstärka bilden Original (från Robin Jeffers at Ton House ) f hb A ( x, y ) = Af ( x, y ) f ( x, y ) Samplad, var 3:e pixel 5 gråskalor (84 i original)
Lågpass, 3 3 kärna Lågpass, 5 5 kärna Laplacefiltrerad Laplace + original Tentaexempel Tentaexempel, forts. En bild f(x, har blivit filtrerad med fyra olika filter. Filtren och resulterande bilder visas nedan. Bilderna + är skalade för visualisering, de lägsta värdena visas som svart och de högsta som vitt. Para ihop alla kärnor med rätt bild. Motivera ditt svar! f(x,* f(x,* - - 4 - /9 - f(x,* - - - + f(x,* - - - Originalbild Medianfilter, 5 5 pixel stor kärna