$ ' $ ' TEKSTUR, DEL I • Første ordens statistiske egenskaper fra histogram IN 384, H-2001 – Middelverdi, evt. median eller percentil – Standard-avvik, evt. interpercentil-avstand – “Power-to-Mean Ratio”, evt. interpercentil/percentil – Tredje ordens moment (skewness) – Fjerde ordens moment (kurtosis) EGENSKAPS-UTTREKKING – Første ordens entropi – Energi DEL II • Andre ordens statistiske egenskaper fra – Gray Level Coocurrence Matrices 14/11 2001 – Gray Level Difference – Gray Level Sum and Difference Matrices Fritz Albregtsen – Gray Level Sum and Difference Images • Høyere ordens statistiske egenskaper fra – Gray Level Run Length Matrices – LIT-SNN – ... & FA-in384-feat2-1 ' % & $ ' FA-in384-feat2-2 % $ TEKSTUR, DEL II Ekstremal-analyse • Ekstremal-analyse. • Gradient-analyse. • Scan-linje profiler. • Fourier-analyse. • Viktig tekstur-informasjon fra relativ frekvens av lokale intensitets-ekstrema av forskjellig geometrisk form og størrelse. • Laws’ konvolusjon. • Autokorrelasjon. • Matematisk morfologi • Fraktal dimensjon. • Det finnes flere varianter av tekstur-målet: E = antall ekstrema pr. areal. • Generelle merknader. • Glatting som preprosess mot støy. • Behandle bildet rad for rad (1-D). • Behandle bildet i 2-D. & FA-in384-feat2-3 % & FA-in384-feat2-4 % $ ' $ ' Ekstremal-analyse Gradient-analyse • Flere ekstrema-egenskaper: • Tekstur-egenskap : E = mengden kanter pr. areal • Det finnes mange typer kant-detektorer : – Radiometriske: ∗ middelverdi og standardavvik av avstanden mellom ekstrema ∗ relativ høyde – Geometriske: ∗ ∗ ∗ ∗ ∗ ∗ • Glatt ut støy før kant-deteksjon med adaptivt filter (det finnes mange av disse óg !). antall piksler pr ekstrema elongasjon sirkularitet momenter orientering symmetri-akser (ellipse) · fra alle piksler i hvert ekstremum · fra omrisset av hvert ekstremum · fra skjelettet til hvert ekstremum & • Midle kant-signalet over et lokalt vindu. • Glatting (3 × 3) - Laplace (3 × 3) - glatting (11 × 11) gir et frekvens-filtrert tekstur-signal. • Histogram over gradient og gradient retning for forskjellige vindusstørrelser gir flere tekstur-egenskaper. FA-in384-feat2-5 ' % & $ ' Fourier-analyse FA-in384-feat2-6 % $ Fourier-analyse • Fourier-spektret gir retning og periodisitet for periodiske eller nesten periodiske 2D mønstre. • Tekstur med dominerende orientering gir topper i power-spektret langs en linje ortogonal på tekstur-orienteringen (A). • Må gjøre lokal FFT i vinduer. • Høyfrekvent og lavfrekvent tekstur kan skilles (A og B). • Betrakt spektret i polare koordinater, S(r, θ). • Diverse mål karakteriserer S(r) og S(θ): – Max-verdi – Max-posisjon – Middelverdi – Varians – osv. • Frekvens-spredningen gir seg utslag i bredden av toppen i power-spektret. • (Optisk) partisjonering av (r, θ)-planet: – konsentriske ringer • Isotrope teksturer med gitt(e) frekvens(er) i alle retninger viser seg som ringer ved gitt radius i powerspektret. – sektorer – spalter & FA-in384-feat2-9 % & FA-in384-feat2-10 % $ ' Fourier-analyse $ ' Laws’ Tekstur Estimatorer • Tekstur-gradienter kan detekteres • Basert på konvolusjon. • Fallgruber: • Bruker 3 × 3 eller 5 × 5 separable masker som er symmetriske eller antisymmetriske. – summasjon i spalter • Fra resultat-bildene finnes standard-avviket (eller summen av absolutt-verdiene) over et større vindu (f.eks. 15 × 15). • Dette gir tekstur-energi innenfor båndpass i gitte retninger. • Har mye til felles med – Fourier-baserte metoder – kant-effekt ∗ høyre kant 6= venstre kant ∗ øvre kant 6= nedre kant ∗ dette gir uønskede frekvenser ∗ ⇒ bruk vindu-funksjoner eller kant-glatting & – og med: ∗ “spot density” ∗ “edge density” ∗ varians-relaterte tekstur-mål FA-in384-feat2-11 % & FA-in384-feat2-13 ' Laws’ Tekstur Estimatorer • Et sett med masker konvolveres med bildet, for å aksentuere mikrostrukturer. 1 2 1 L3L3 2 1 4 2 2 1 E3L3 -1 -2 -1 0 0 0 1 2 1 -1 2 -1 S3L3 -2 -1 4 2 -2 -1 -1 -2 -1 L3E3 0 1 0 2 0 1 E3E3 1 0 -1 0 0 0 -1 0 1 1 2 1 S3E3 0 -1 0 -2 0 -1 -1 -2 -1 L3S3 2 -1 4 -2 2 -1 S3S3 -2 1 4 -2 -2 1 • Tekstur-egenskaper finnes ved å beregne standardavvik over større vinduer for hver konvolusjons-maske. $ 5 × 5 Laws’ Tekstur Masker • E5L5 −1 −4 −2 −8 0 0 2 8 1 4 −6 −4 −1 −12 −8 −2 0 0 0 12 8 2 6 4 1 • R5R5 −1 −4 6 −4 1 E3S3 -1 -2 1 0 0 0 -1 2 -1 1 -2 1 % −4 6 −4 1 16 −24 16 −4 −24 36 −24 6 16 −24 16 −4 −4 6 −4 1 • E5S5 −1 −2 0 2 1 0 2 0 1 0 4 0 −2 0 0 0 0 0 −4 0 2 0 −2 0 1 0 2 0 −1 0 8 0 −4 0 12 0 −6 0 8 0 −4 0 2 0 −1 • L5S5 & −1 −4 −6 −4 −1 FA-in384-feat2-15 % $ ' $ ' Laws’ Tekstur Estimatorer Auto-korrelasjon • De fire maskene er separable, null-sum matriser. • Autokorrelasjons-funksjonen er definert ved • De fire 5 × 5 maskene finnes ved å konvolvere en vertikal 5-vector med en horisontal 5-vector : ρf (i, j) = XX x y f (x, y)f (x − i, y − j) og beregnes over et vindu W × W , med skift (i, j) – L5 = 1 4 6 4 1 – E5 = -1 -2 0 2 1 −T ≤ i ≤ T – S5 = -1 0 2 0 -1 −T ≤j ≤T • Vi kan anta at en grov tekstur gir høyere korrelasjon ρf (i, j) for en gitt verdi av (i, j) enn en fin-strukturert tekstur. – R5 = 1 -4 6 -4 1 • Hver 5-vektor finnes ved å konvolvere to 3-vektorer : • Er tekslene store, så avtar ρ(i, j) langsomt. – L3 = 1 2 1 • Hvis tekslene er små, avtar ρ(i, j) raskt. – E3 = -1 0 1 • Grovheten i teksturen kan måles ved spredningen i autokorrelasjons-funksjonen. – S3 = -1 2 -1 • En 5 × 5 Konvolusjon kan gjøres som : • Et generelt sprednings-mål er – to 3 × 3 konvolusjoner – en 5 × 1 fulgt av en 1 × 5 konvolusjon S(u, v) = T X T X (i − ηi)u (j − ηj )v ρf (i, j) i=0 j=−T – to 3 × 1 og to 1 × 3 konvolusjoner der ηi = T X T X iρf (i, j) ηj = i=0 j=−T T X T X jρf (i, j) i=0 j=−T • Summerer bare over halve planet pga. symmetri. & FA-in384-feat2-16 ' % & $ ' Auto-korrelasjon, et eksempel FA-in384-feat2-17 % $ Matematisk morfologi og tekstur • Opprinnelig definert for binære bilder (1967-73). • Senere utvidet til gråtone-bilder. • Flere tekstur-egenskaper finnes. • De intuitivt enkleste er relatert til kovarians. • Finner lett midlere størrelse på teksels, og midlere fri avstand mellom dem. • Egenskaper som profil-breddene S(2, 0) og S(0, 2), kryssrelasjonen S(1, 1) og annen-ordens spredning S(2, 2) beregnes fra ρf (i, j) nedenfor • Beslektet med – Run Length – Autokorrelasjon – Fraktal-analyse & FA-in384-feat2-18 % & FA-in384-feat2-19 % $ ' $ ' Noen definisjoner Noen definisjoner • Dilatering: A dilatert med B • La A og B være mengder (med gitte origo) i planet. • Translasjonen av A med x = (x1, x2) A ⊕ B = {x | (B̂)x ∩ A 6= ∅} (A)x = {c | c = a + x, a ∈ A} Finn refleksjonen til strukturerings- elementet B om sitt L origo, shift denne refleksjonen med x. A B er da mengden av alle x som er slik at B̂ og A overlapper med minst ett element som ikke er null. • Refleksjonen av B er B̂ = {x | x = −b, b ∈ B} • Erosjon: A erodert med B • Komplementet til A er A B = {x | (B)x ⊆ A} Ac = {x | x 6∈ A} altså mengden x som er slik at B translatert med x ligger helt innenfor A. • Åpning: A ◦ B A ◦ B = (A B) ⊕ B dvs at A eroderes med B, og resultatet dilateres med B. • Lukking: A • B A • B = (A ⊕ B) B dvs at A dilateres med B, og resultatet eroderes med B. & FA-in384-feat2-20 ' % & $ ' FA-in384-feat2-21 % $ Morfologi og tekstur Selv-likhet og fraktal dimensjon • Tekstur-egenskaper kan finnes v.h.a. erosjon – velg et passende strukturerings-element som lar seg parametrisere • Et D-dimensjonalt selv-likt objekt kan deles opp i N mindre kopier av seg selv. – finn integralet av erosjonen som funksjon av strukturparameteren. • Hver kopi er skalert ned med en faktor r gitt ved rD = 1 N • Oppdelings-faktoren er altså gitt ved N= 1 rD • Følgelig vil et selv-likt objekt som på alle skalaer består av N deler skalert ned med en faktor r ha en fraktal dimensjon gitt ved log(N ) D = lim r→0 log(1/r) • Vi anvender ofte Hurst-parameteren H, som er relatert til topologisk dimensjon E og fraktal dimensjon D ved D =E+1−H & FA-in384-feat2-24 % & FA-in384-feat2-25 % $ ' $ ' Teppeflater og fraktal dimensjon Selv-likhet og fraktal dimensjon (2) • Fraktal dimensjon beskriver forholdet mellom antall strukturer på ett nivå og antall strukturer på neste nivå. • Anta at vi dekker en bildeflate med tepper med økende tykkelse , og med en fleksibilitet som avhenger av tykkelsen. • For ekte fraktaler er dette forholdet konstant, og uavhengig av den skala vi har som utgangspunkt. • Arealet av teppeflaten avtar etter hvert som vi fjerner finstruktur. • For virkelige objekter kan vi bare anta at forholdet er konstant innenfor et skala-område. • “Teppet” er definert ved sin øvre flate u og nedre flate l . • Initielt har vi en gråtoneflate z(x, y) med størrelse Nx, Ny , • Fraktal dimensjon er i regelen ikke et heltall. u0(x, y) = l0(x, y) = z(x, y) • Eksempel: Hvert segment i Helge von Koch’s kurve består av 4 deler som er skalert ned med en faktor r = 1/3 fra sitt opphav. Fraktal-dimensjonen er derfor x ∈ {1, .., Nx}, y ∈ {1, .., Ny } • For alle > 0, er teppeflatene gitt ved u (x, y) = max{u−1(x, y) + 1, D = log 4/ log 3 ≈ 1.26 • Hvis 1 < D < 2 vil kurven fylle mer av rommet enn en rett linje (D = 1), men mindre enn det Euclidske areal til et plan (D = 2). l (x, y) = min{l−1(x, y) − 1, max u−1(m, n)} min l−1(m, n)} k(m,n)−(x,y)k≤1 k(m,n)−(x,y)k≤1 • Grensetilfellet D = 2 gir en Peano-type kurve. • Gråtoneflater har D mellom 2 og 3 • Estimert fraktal dimensjon gir et kvantitativt mål på gråtonevariasjonen i flaten, selv om flaten ikke skulle tilfredstille kravene til selv-likhet. & FA-in384-feat2-26 ' % & $ ' Teppeflater og fraktal dimensjon X x,y • La P (m, L) være sannsynligheten for å finne m bilde-flatepunkter innenfor en kube med størrelse L sentrert i et vilkårlig punkt (x, y, z(x, y)) i bilde-flaten . • Endringen i flate-arealet som funksjon av tykkelse er lik volum-økningen fra − 1, dividert med 2 • Fordelingsfunksjonen P finnes ved å plassere kuber i alle punkter i bildet, og akkumulere P (m, L). (v − v−1) 2 • Normerer vi P (m, L) ved • For fraktale flater gjelder L2 X δA() = F 2−D P (m, L) = 1 m=1 • Vi finner en fraktal signatur som funksjon av S() = $ • Voss (1986) foreslo en metode for estimering av fraktal dimensjon ved “boks-telling”. (u(x, y) − l (x, y)) δA() = % Bokstelling og fraktal dimensjon • Volumet av teppet er da v = FA-in384-feat2-27 for alle L, er antall bokser av størrelse L som trengs for å dekke gråtone-flaten gitt ved d log(δA()) d log() N (L) = L2 X m=1 1 P (m, L) m • For fraktale flater har vi N (L) ∝ 1/LD . • Fraktal signatur finnes ved lineær regresjon. & FA-in384-feat2-28 % & FA-in384-feat2-29 % $ ' Bokstelling og fraktal dimensjon $ ' Fraktal dimensjon og tekstur • Tekstur-parametre fra fraktal-beregninger kan relateres til 3D egenskaper ved en avbildet flate, forutsatt at • Vi må inspisere et log-log plot av N (L) versus L for å verifisere at flaten er fraktal, og for å finne riktig område for L. – refleksjonen følger Lamberts lov – belysning og albedo er konstante over flaten – deler av flaten ikke kaster skygge på andre deler av flaten • Fraktal dimensjon er viktig i – industri ∗ katalysatorer ∗ absorbatorer • Mandelbrot (1982) introduserte lacunarity, Λ, for å kvantifisere tekstur. – medisin • Her er lakunariteten relativ midlere kvadrat-bredde av sannsynlighets-fordelingsfunksjonen P (m, L) for gitte verdier av L: Λ(L) = – fjernanalyse – ... PL 2 PL2 2 2 m=1 m P (m, L) − ( m=1 mP (m, L)) PL2 ( m=1 mP (m, L))2 • Ulike metoder gir ulike estimater av D. & FA-in384-feat2-30 ' % & $ ' FA-in384-feat2-32 $ Feature Selection Misclassification rate • For any given problem there is an unlimited number of measurements that could be made on the objects to be classified. • We have a training set of a given size, to be classified into a fixed number of classes • Increasing the dimensionality of multidimensional feature spaces will exponentially increase the number of histogram cells, and without a corresponding increase in sample size it will exponentially decrease the frequencies in histogram bins and thus reduce the reliability of multidimensional histograms as a model for a probability distribution function. • Why select a small feature set ? – Reduce cost of extracting features. – Reduce data storage and transport. – Reduce complexity of algorithm. – Reduce redundancy. • So the number of samples needed to design a classifier should increase sharply with the number of features included in the classification rule. This is known as Bellman’s curse of dimensionality. • No point in measuring a variable which does not add to the accuracy of the classification. • Sometimes a lower misclassification rate is achieved by using fewer variables. • The consequence is that the desision surface may fit the training set, but that this desision surface may generalize less well to new samples, i.e. the true error rate increases. • For a given data set the misclassification rate first declines, but then begins to increase as the number of features is increased. • The related peaking phenomenon refers to the fact that for a finite training sample size, the correct classification rate may initially increase with the addition of new features, go through a maximum and then start to decrease. • Why - if we belive that an extra variable can only add information, and never subtract any ? & % FA/BLAB/IFI % & FA/BLAB/IFI % $ ' DISTANCE MEASURES Optimal Feature Sets • Assume that we have two classes, ω1 and ω2 characterized by • Given a set of features xj , j = 1, ...D, the problem of selecting the optimal subset of n ≤ d < D of these features is a combinatorial problem, that is, the number of sets that P need to be considered equals dn=1 (D −D!n)!n! . This number is excessive even for moderate values of d. class ω1 ∼ µ1 , Σ1, P (ω1 ) class ω2 ∼ µ2 , Σ2, P (ω2 ) where µi and Σi represent the feature mean vector and the feature covariance matrix of the classes, respectively. P (ωi ) represents the a priori class probabilities. • Suboptimal algorithms: – Selection on the Basis of Individual Merit – Sequential Forward and Backward Selection • The scalar distance between the two classes in the feature space may be measured by the Chernoff distance: – Plus p - Take Away r Algorithm Z • The main drawback of SFS and SBE is that whenever a feature is selected or removed, the decision can not be changed (the “nesting” problem). Stepwise forward-backward selection combines the two strategies, and thus overcomes the nesting problem. This is a special case of the “plus p - take away r” scheme. A more recently developed method is the Floating Search: the number of features added and removed changes in each step. JC (ω1, ω2) = −ln{ p(x | ω1 )1−sp(x | ω2 )s}dx where s ∈ [0, 1], and x denotes a vector containing individual image feature measurements with conditional density p(x | ωi). • This measure is particularly interesting because it provides an upper bound for the Bayes error 1,2 1,2 ≤ P (ω1 )1−sP (ω2 )se−JC (ω1 ,ω2 ) • Distance measures may be used to evaluate the optimality of the feature set for each step. & FA/BLAB/IFI for s ∈ [0, 1]. % $ ' DISTANCE MEASURES (2) Z & 1/2 JB (ω1, ω2) = −ln{ [p(x | ω1 )p(x | ω2)] • With Σ1 = Σ2 both the Chernoff and Bhattacharyya distances become proportional to the Mahalanobis distance ∆2, dx} ∆2 = (µ1 − µ2 )T Σ−1(µ1 − µ2 ) which is simply the Euclidian distance between µ1 and µ2 after the feature space has been normalized by the common Σ • This special case, as well as providing the upper bound common to all Chernoff distances, also provides a lower bound on 1,2 so that • The relationship of the Bhattacharyya distance and the lower and upper bounds on the Bayesian error probability is tabulated below for two equally likely and normally distributed classes. q 1 1 − (1 − 4P (ω1)P (ω2)e−2JB (ω1 ,ω2 ) ) < ε1,2 2 q ε1,2 < P (ω1 )P (ω2)e−JB (ω1 ,ω2 ) • We often use the mid-point of this error interval as a nominal value of ε1,2. JB (ω1, ω2) Lower bound Upper bound 1 3.51 × 10−2 1.84 × 10−1 2 4.60 × 10−3 6.77 × 10−2 4 8.39 × 10−5 9.16 × 10−3 6 1.54 × 10−6 1.24 × 10−3 8 2.81 × 10−8 1.68 × 10−4 10 5.20 × 10−10 2.27 × 10−5 • For normally distributed classes with Σ1 6= Σ2 the Bhattacharyya distance becomes " & #−1 % $ ' is known as the Bhattacharyya distance. 1 Σ 1 + Σ2 (µ1 − µ2 )T 8 2 1 |Σ1 + Σ2| 1 + ln 2 1/2 2 | Σ1 | | Σ2 |1/2 FA/BLAB/IFI DISTANCE MEASURES (3) • The special case of s = 1/2 JB (ω1, ω2) = $ ' (µ1 − µ2 ) FA/BLAB/IFI % & FA/BLAB/IFI %