computer vision1_seite 1 was ist textur? lexikon: gewebe, anordnung bildauswertung: strukturelle...
TRANSCRIPT
Computer Vision1_Seite 1
● Was ist Textur?
● Lexikon: Gewebe, Anordnung
● Bildauswertung: Strukturelle Anordnung von Grauwerten
● Für die Bildauswertung wird eine quantitative Beschreibung von Textur benötigt: Maße für Glattheit, Rauigkeit, Regelmäßigkeit = Merkmal
Textur Informationsgewinnung
TextilienSteine Wald/Wiese
rauh
homogen
grob
fein periodisch
periodisch
Computer Vision1_Seite 2
Textur Informationsgewinnung
Textur wird oft lokal ermittelt
Beispiel:Bild Merkmalbild
Maß für Textur
Maß für Textur Keine Einträge := 0
KontrastBild
Computer Vision1_Seite 3
Textur
Warum interessiert man sich in der Bildauswertung für Textur?
● Texturbasierte Segmentierung (Schwellwert im Histogramm des Merkmalbildes)
● Merkmale für die Detektion oder Klassifikation
Informationsgewinnung
MerkmalOperator N
MerkmalOperator 1
Pro Bildausschnitt:N-dimensionaler Merkmalsvektor
Bild
Computer Vision1_Seite 4
Textur
Warum interessiert man sich in der Bildauswertung für Textur?
● Zur Weiterverarbeitung (z.B. Kantenbild)
Informationsgewinnung
Bild MerkmalBild
Kanten-bild
Merkmal-Operator
Kanten-Operator1 1
MerkmalBild
Kanten-bildN N
Kanten-Operator
Merkmal-Operator
1
N
... ...
Computer Vision1_Seite 5
Textur: Histogrammbasierte Ansätze Informationsgewinnung
rauh
homogen
Charakterisierung der Textur durch Auswertung des lokalen Histogramms!
0 255
h(q)
1
0 q
0 255
h(q)
1
0 q
Computer Vision1_Seite 6
Textur: Histogrammbasierte Ansätze Informationsgewinnung
0 255
h(q)
1
0 q
h ist eine Wahrscheinlichkeitsdichte (genauer Zähldichte), da:
● 0 h(q) 1 für alle q = 0,..,255
● q=0..255 h(q) = 1
Normiertes Histogramm:
h(q) = H(q) / H(q)
H(q) = Anzahl von Bildpunkten mit Grauwert q H(q) = Anzahl Pixelpositionen
Computer Vision1_Seite 7
● 1 : Null
● 2 : Die Varianz ² = 2 ist eine Kenngröße für den Grauwertkontrast
● 3 : Die Schiefe (skewness) gibt den Grad der Asymmetrie des Histogramms an
● 4 : Der Exzess (kurtosis) gibt den Grad der Abweichung von der Normalverteilung an.
2111
R 0 für konstanten Grauwert (² = 0)1 für ² Beispiel
Ist Q die Anzahl der Grauwerte (z.B. 256), so ist der Mittelwert durch
gegeben und das n-te zentrale Moment durch
Textur: Zentrale Momente Informationsgewinnung
)(1
0
qhqQ
q
nn
1
0
)(Q
q
qhq0 255
h(q)
1
0 q
Computer Vision1_Seite 8
Textur: Zentrale Momente Informationsgewinnung
Schiefe
Varianz (Kontrast)
Original
Beispiel: Varianz und Schiefe in 11x11 großen Bildausschnitten
Computer Vision1_Seite 9
Diese zentralen Momente sind „invariant“ bezüglich homogener Grauwertverschiebung:
Textur: Zentrale Momente Informationsgewinnung
)(1
0
qhqQ
q
nn
Bild g Bild g‘ = g + 50
Mittelwert: 173.65Varianz: 606.94Standardabweichung (): 24.63Schiefe: -14834.90
Mittelwert: 123.66Varianz: 606.94Standardabweichung (): 24.64Schiefe: -14834.70
0 255
h(q)
1
0 q
0 255
h(q)
1
0 q
Computer Vision1_Seite 10
Textur: Zentrale Momente
Mittelwert: 123.66Varianz: 606.94Schiefe: -14834.70 << 0
Mittelwert: 111.28Varianz: 1394.38Schiefe: 8561.81 >> 0
Mittelwert: 127.48Varianz: 100.37Schiefe: -12.08 0
Informationsgewinnung
0 255
h(q)
1
0 q
0 255
h(q)
1
0 q
0 255
h(q)
1
0 q
g(x,y) = 128 + 10 s(x,y)s(x,y) ~ N(1,0)
Computer Vision1_Seite 11
● Die Momente lassen sich auch direkt aus den Grauwerten des Bildausschnitts (B: Breite, H: Höhe) berechnen:
Textur: Zentrale Momente Informationsgewinnung
1
0
1
0
),(1 B
i
H
j
jigHB
1
0
1
0
),(1 B
i
nH
jn jig
HB
Nachteil der Texturanalyse durch eindimensionale Momente:Struktur (relative Position der Grauwerte zueinander) geht verloren – unterschiedliche
Bildausschnitte können identische Histogramme besitzen
Berechnung von Texturmaßen aus der Coocurrence-Matrix
Computer Vision1_Seite 12
Textur: Coocurrence-Matrix Informationsgewinnung
● Die Coocurrence-Matrix (Grauwertübergangsmatrix) liefert Informationen über die Position von Bildpunkten mit gleichem oder ähnlichem Grauwert über eine vorgegebene Distanz.
● Die Distanz wird durch einen Positionsoperator Pkl festgelegt, die Anwendung von Pkl auf eine Bildposition (u,v) erfolgt via:
Pkl (u,v) = (u+k, v+l)
● Ist Q die Anzahl der unterschiedlichen Grauwerte (z.B. Q = 256), so die Coocurrence-Matrix C = (c ij) eine QQ-Matrix mit
Beispiel: P2 1
Anzahl, wie oft g(u,v) = i und g(Pkl(u,v)) = j
Anzahl Punktepaare, für die Pkl anwendbar istc ij =
Computer Vision1_Seite 13
Textur: Coocurrence-Matrix Informationsgewinnung
1010002011001221101121000
Bild
Beispiel 1:
● Anzahl Grauwerte Q = 3, g e {0,1,2}
● Positionsoperator P11
000000000
normieren
021232024
161C
-
Coocurrence-Matrix
initialisierteMatrix
000000010
P11 (0,0) = (1,1)
000000011
P11 (1,0) = (2,1)
000000021
P11 (2,0) = (3,1)
021232024
P11 (4,4) = (5,5)
Zähler in Zeile i = 0 und Spalte j = 1 um eins erhöhen
Computer Vision1_Seite 14
Textur: Coocurrence-Matrix Informationsgewinnung
1010002011001221101121000
Bild
021232024
161C
Beispiel 1:
● Anzahl Grauwerte Q = 3, g e {0,1,2}
● Positionsoperator P11
021232024
A
Coocurrence-Matrix
Merkmal-Operator
normieren
Computer Vision1_Seite 15
Textur: Coocurrence-Matrix Informationsgewinnung
Bild
Beispiel 2:
● Anzahl Grauwerte Q = 2, g e {0,1}
● Positionsoperator P11
1100101101000101
Coocurrence-Matrix
Merkmal-Operator
normieren
2331
A
2331
91C
ci,j ist ein Schätzwert für die bedingte Wahrscheinlichkeit, dass ein Paar von Punkten, das P erfüllt die Werte i,j hat.
Hier: Die Wahrscheinlichkeit, dass die Kombination i = 0, j = 0 vorkommt beträgt 1/9.
Faustregel: Pfeilanfang = ZeilenindexPfeilspitze = Spaltenindex
Computer Vision1_Seite 16
Textur: Berechnung der Coocurrence-Matrix
voidCoocurrenceMatrix(Matrix& co, const CImageMemory< unsigned char >& subImage, int dx, int dy){ int x, y, i, j; int height = subImage.GetHeight(); int width = subImage.GetWidth(); int x0 = 0, y0 = 0, x1 = w, y1 = h;
if (dx < 0) x0 = dx; else x1 = width - dx; if (dy < 0) y0 = dy; else y1 = height - dy; co.resize(256, 256); co.zero(); for (y = y0; y < y1; y++) { for (x = x0; x < x1; x++) { i = subImage.GetPixelValue(x, y); j = subImage.GetPixelValue(x + dx, y + dy); co(i, j) += 1; } }}
Informationsgewinnung
Oft: Reduktion der Anzahl Grauwerte Q (z.B. von 256 auf 64 oder 8).
Computer Vision1_Seite 17
● Maximale Wahrscheinlichkeit
● Energie – Maß für die Gleichförmigkeit bzw. Homogenität. Ein Bild ist ideal homogen, wenn es aus ungestörten, in alle Richtungen sich gleichmäßig wiederholenden Strukturen besteht.
● Entropie - Maß für die Unstrukturiertheit (gegenteilig zur Energie). Maximal bei einer Gleichverteilung der bedingten Wahrscheinlichkeiten cij, d.h. wenn es keine bevorzugten Grauwertkombinationen gibt.
Textur: Maße aus der Coocurrence-Matrix
)(max, ijjic
i j
ijc2
)(log iji j
ij cc
Informationsgewinnung
Computer Vision1_Seite 18
● Kontrast – Erwartungswert der Grauwertdifferenzen. Sehr groß, wenn große Grauwertdifferenzen im Bild auftreten.
● Differenzmoment der Ordnung k
● Inverses Differenzmoment der Ordnung k (gegenteilig zum Differenzmoment)
Textur: Maße aus der Coocurrence-Matrix Informationsgewinnung
i jk
ij
jic)(
i j
ijcji
i j
ijk cji
Beispiel k = 2: Ähnlich zum Kontrast wird die mittlere quadratische Grauwertdifferenz gemessen. Dabei werden große Differenzen überproportional gewichtet.
Computer Vision1_Seite 19
Textur: Vgl. der Kontrast-Maße Informationsgewinnung
Vergleich Kontrast
Varianz
Original
Kontrast Cooc.-Matrix P11
)(1
0
22 qhq
Q
q
i j
ijcji
Computer Vision1_Seite 20
InformationsgewinnungTextur: Maße aus der Coocurrence-Matrix
● Beispiel Kontrast: Welche Coocurrence-Matrix weist auf einen hohen, welche auf einen niedrigen Kontrast hin?
● Beispiel Differenzenmomente: Welche Coocurrence-Matrix weist auf einen hohen, welche auf einen niedrigen Kontrast hin?
i j
ijcji
108100810810181081018108001810
1201
012810101282101282101108210
661
Kontrast und auch die Differenzenmomente haben einen relativ kleinen Wert, wenn es hohe Werte nahe der Hauptdiagonalen gibt.
i j
ijk cji
Computer Vision1_Seite 21
Textur: Maße aus der Coocurrence-Matrix Informationsgewinnung
● Die Texturmaße lassen sich auch für Bildausschnitte berechnen (siehe Momente aus Histogrammen), d.h. mit den Maßen können auch Merkmalsbilder berechnet werden.
● Die Texturmaße hängen von der Richtung des Abstandsvektors (k,l) des Positionsoperators Pkl ab.
● Drehung des Bildes z. B. um 90 Grad verändert die extrahierten Texturmaße.
● Abhilfe: Mittelung der Texturmaße aus vier Richtungen:horizontal (1, 0)vertikal (0, 1)diagonal (1,1) und (1, -1)
Die Berechnung ist selbst bei reduzierter Grauwertanzahl sehr rechenintensiv
Vereinfachtes Verfahren: Unser‘s Summen- und Differenzhistogramme
Computer Vision1_Seite 22
Textur: Unser‘s Histogramme Informationsgewinnung
Bildausschnitte gleicher Größe werden um den Vektor (du, dv) verschoben.
Bild g(u,v)
Bild g‘(u,v) = g(u + du, v + dv)
du
dv
Summenbild:s(u,v) = g(u, v) + g(u + du, v + dv) s = g + g‘
Differenzbild:d(u,v) = g(u, v) - g(u + du, v + dv) d = g – g‘
Normiertes Histogramm:
hs(q) = Hs(q) / Hs(q)
Hs(q) = Anzahl von Bildpunkten mit GW q
Normiertes Histogramm:
hd(q) = Hd(q) / Hd(q)
Hd(q) = Anzahl von Bildpunkten mit GW q
Computer Vision1_Seite 23
Textur: Unser‘s Histogramme Informationsgewinnung
gm,n
sm,n = gm,n + gm+du,n+dv dm,n = gm,n - gm+du,n+dv
gm+du,n+dv
0 511
hs(q)
1
0 q-255 255
hd(q)
1
q
Computer Vision1_Seite 24
● Mittelwert
● Kontrast
● Energie (Homogenität)
● Entropie (Unstrukturiertheit)
Textur: Maße aus Unser‘s Histogrammen Informationsgewinnung
Q
Qidd qhqh )(ln)()(ln)(
2
0
qhqh s
Q
qs
Q
Qid
Unserd qhq )()( 2
Q
Qqd
Unserd qhq )(
Q
qs
Unsers qhq
2
0
2 )()(
Q
Qis qh 2)(
Q
qd qh
2
0
2)(
Q
qs
Unsers qhq
2
0
)(
Summen Differenzen
Computer Vision1_Seite 25
Textur: Vgl. der KontrastMaße Informationsgewinnung
Vergleich der Summen-Maße
Entropie(Unstrukturiertheit)
Kontrast
Original
Energie(Homogenität)
Computer Vision1_Seite 26
Textur: Vgl. der KontrastMaße Informationsgewinnung
Vergleich Kontrast
Varianz Kontrast Unser‘s Summe
Kontrast Unser‘s Differenz
Original
)(1
0
22 qhq
Q
q
i j
ijcji
Q
qs
Unsers qhq
2
0
2 )()(
Q
Qid
Unserd qhq )()( 2
Kontrast Cooc.-Matrix P11
Computer Vision1_Seite 27
Textur: Trennungswirksamkeit Informationsgewinnung
Quelle: Computer Vision and Applications
Vergleich der Trennungswirksamkeit von Texturmerkmalen
Coocurrence-MatrixUnser
Computer Vision1_Seite 28
Textur: Trennungswirksamkeit
Brodatz Tumor Tilda Print Slabs Vistex Hon
natürlicheTexturen
Zellbilder Stoffe Drucke künstlicher Texturen
DiverseTexturen
natürlicheTexturen
Metall-oberflächen
Informationsgewinnung
Quelle: Computer Vision and Applications
Computer Vision1_Seite 29
Beispiel: Markierung von bewaldeten Flächen im Stadtgebiet
Textur: Anwendung Informationsgewinnung
Computer Vision1_Seite 30
Beispiel: Markierung von bewaldeten Flächen im Stadtgebiet
Textur: Anwendung Informationsgewinnung
Erinnerung:
MerkmalOperator N
MerkmalOperator 1
Bild
Für diese Anwendung wurden die Merkmale nicht nur aus dem Bild extrahiert, sondern auch aus dessen Gradientenbetrags- und Richtungsbild!
Computer Vision1_Seite 31
Textur: Anwendung
Beispiel: Prozentuale Belegung von Parkplätzen
Informationsgewinnung
Parkplatzszene Parkplatzszene bei Regen
Die Maskierung schränkt den relevanten Bereich ein und verbessert dadurch sowohl die Robustheit als auch die Rechenzeit.
prozentuale Belegung
Computer Vision1_Seite 32
Textur: Anwendung
Beispiel: Prozentuale Belegung von Parkplätzen
Informationsgewinnung
Parkplatzszene Parkplatzszene gestört durch Kompressionsartefakte
Computer Vision1_Seite 33
Textur: Charakterisierung von Maßen Informationsgewinnung
Objekt
gedreht
verschoben
skaliert
Ein Texturmaß , das für diese Bilder dieselben Werte liefert, heißt
● translationsinvariant
● rotationsinvariant
● skalierungs- bzw. skaleninvariant
)),(()),(( yx dydxgmyxgm
))cossin,sincos(()),(( yxyxgmyxgm
)),(()),(( yxgmyxgm
yx dd ,
2,0
0
m
Computer Vision1_Seite 34
Textur: Invariante Maße Informationsgewinnung
● Zentrale Momente aus Histogrammentranslationsinvariantrotationsinvariant
● Maße aus der Coocurrence-Matrixtranslationsinvariant
● Maße nach Unsertranslationsinvariant
Kein Maß ist translations-, rotations- und skalierungsinvariant!
Zweidimensionale zentrale normierte Momente
Computer Vision1_Seite 35
Textur/Form: Zweidimensionale MomenteInformationsgewinnung
● Für eine zweidimensionale, kontinuierliche Funktionen g(x,y) ist
das (reguläre) Moment der Ordnung (p+q) p,q = 0,1,2,..
● Ist g(x,y) nur auf einem Teil der xy-Ebene ungleich null (beschränkter Träger), so existieren die Momente jeder Ordnung und sind eindeutig durch g(x,y) bestimmt.
● Umgekehrt bestimmt die Menge aller Momente die Funktion g(x, y)
● Beispiele:
dydxyxgyxm qppq ),(
dydxyxgm ),(00 Gesamtmasse von g
dydxyxgxm ),(10
Computer Vision1_Seite 36
Textur/Form: Zweidimensionale MomenteInformationsgewinnung
● Die um den Massenschwerpunkt von g verschobenen Momente
heißen zentrale Momente.
● Die zentralen Momente sind um den Schwerpunkt der Funktion g verschoben und damit translationsinvariant, d.h. für die Funktionen g(x,y) und g‘(x, y) = g(x + dx, y + dx) sind die Momente dieselben!.
00
01
00
10),()()(mmund
mmmitdydxyxgyx yx
qy
pxpq
yx ,
Computer Vision1_Seite 37
● Für ein digitales Bild lauten die zentralen Momente (die Summation läuft über die Bildpunktpositionen)
● Die Momente sind für Binärbilder (dann wird i.A. g {0,1} gesetzt) aber auch allgemein auf Grauwertbilder anwendbar.
● Bei Binärbildern fällt der Masseschwerpunkt mit dem geometrischen Schwerpunkt zusammen.
● Erinnerung: Vergleich mit eindimensionalen zentralen Momenten:
Die Funktion g wird als nicht normierte Zähldichte aufgefasst!
)(1
0
qhqQ
q
nn
Textur/Form: Vgl. mit eindim. Momenten Informationsgewinnung
),()()(1
0
1
0
yxgyx qy
pH
y
B
xxpq
yx
yxy
yx
yxx yxg
yxgyund
yxg
yxgx
,
,
,
,
),(
),(
),(
),(
q
qhq )(
Computer Vision1_Seite 38
Textur/Form: Beispiele Informationsgewinnung
● Orientierung: Winkel zwischen x-Achse und Hauptachse y‘ (minimale Ausdehnung)
● Exzentrität: Verhältnis von Länge zu Breite (bezogen auf die Hauptachsen) und Maß für die Rundheit (rotationsinvariant)
x, y Achsen des Bildkoordinatensystemsx‘, y‘ Hauptachsen
Schwerpunkt
x
y
x‘
y‘
0220
1121 2arctan
20220
211
20220 4
Computer Vision1_Seite 39
Textur/Form: Zweidimensionale MomenteInformationsgewinnung
;23),()()(
;22),()()(
;22),()()(
;23),()()(
;),()()(
;2),()()(
;),()()(
;0;0),()()(
012
020330
03
012
20112112
21
102
02111221
12
102
203003
30
00
201
0220
02
00
210
2000
210
00
210
2002
20
00
011011
1111
010000
1010
0110
mymymyxgyx
mmmmyxgyx
mmmmyxgyx
mmmyxgyx
mmmyxgyx
mmm
mm
mmmyxgyx
mmmmyxgyx
mmmmyxfyx
x yyx
xyxx y
yx
yxyx y
yx
xxx y
yx
x yyx
x yyx
x yyx
x yyx
Zentrale Momente bis zur Ordnung 3 im Zusammenhang mit regulären Momenten:
Computer Vision1_Seite 40
Textur/Form: Zweidimensionale MomenteInformationsgewinnung
● Die zentralen Momente können außerdem normiert werden:
● Die Normierung bedeutet: Für Binärobjekte werden die Momente 0. Ordnung mit der Fläche und die Momente2. Ordnung mit dem Quadrat der Fläche normiert.
● Diese normierten zentralen Momente sind skalierungsinvariant, d.h. für die Funktionen g(x,y) und g‘(x, y) = g( x, y), sind die Momente dieselben!
,...3,21200
qpfürqpmitpqpq
pq
pq
Computer Vision1_Seite 41
Textur/Form: Hu-Momente
● Aus den normierten zentralen Momenten zweiter und dritter Ordnung lassen sich translations-, rotations- und skalierungsinvariante Momente ableiten (Hu-Momente):
])()(3)[)(3(
])(3))[()(3(
))((4])())[((
])()(3)[)(3(
)]3(3)[())(3(
)()3(
)3(
4)(
20321
2123003123012
20321
21230123003217
03211230112
03212
120302206
20321
2123003210321
12302
1230123012305
20321
212304
212303
211
202202
02201
C
Informationsgewinnung