Vámossy Zoltán (Gonzales – Woods könyve alapján) Jellemzők és leírók
2 Leírók - cél Szegmentálás eredményeként a képet régiókra bontottuk, ezeket szeretnénk tömör formában leírni Forgatásra, eltolásra, skálázásra invariáns jellemzőket keresünk Leírási módok: –A régió határaihoz kapcsolódó jellemzőkkel (külső reprezentánsok) –A régió belső jellemzőivel Példa: a régió leírható a határának hosszával –Külsőt leíró jellemzőket használunk, ha a régió alakján van a hangsúly –Belső jellemzőket használunk, ha pl. a textúra, vagy a szín a fontos
3 Egyszerű leírók Átlagos intenzitás Minimális intenzitás Maximális intenzitás Korlátozott körülmények között alkalmazhatóak
Külső leírók Javarészt Gonzales-Woods könyv alapján
5 Lánckód (chain code) Lánckód: Határ leírására szolgál, egyenes szakaszok sorozatával –4-es, vagy 8-as szomszédságot használunk –A szegmensek iránya kódolt Módszer: –Kövessük a határt szisztematikusan - óramutató járásának irányában: (d+5)mod 8: köv. pixel iránya (0..7) –Iránykódot (Freeman) rendelünk minden pixelpárhoz
6 Lánckód (chain code) Példa: Problémák: –A lánckód függ a startponttól –Az objektum orientációjával változik –Mintavételezéssel változik
7 Differenciált lánckód Tekintsük körkörös sorozatnak a lánckódot és számoljuk ki a differenciákat két egymás utáni elemre vonatkozóan Példa (nem az ábráé): Differenciált lánckód: Számoljuk ki az ábrára!
8 Alakszám (shape number) Alakszám: a differenciák körkörös sorozatában a legkisebb n-ed rendű alakok: n elemű lánckóddal leírható zárt alakok lehetséges formái Példa (6-od rendű alak): Lánckód Differencia: Alakszám:
9 Alakszám - feladat Határozzuk meg a alak rendjét, lánckódját, alakszámát
10 További problémák a lánckóddal Nagyon hosszú lehet (Megj.: a kerület közelítése a+b*√2, ahol a párosok száma, b páratlanok száma a lánckódban) Zajokra nem toleráns Megoldás: –Válasszunk nagyobb rácsot (gridet) –A határpontokat a legközelebbi rácselemhez rendeljük Gyakorlatban nem túl hatékony megoldások az eddigiek: jobb a poligonokkal való közelítés (pl. legkisebb négyzetek + Split and merge)
11 Módosított alakszám Rögzítsük le az alakszám rendjét (pl. n=18) Határozzuk meg a fő és melléktengelyt (lásd később) és azok arányát = excentricitást Határozzuk meg azt minimális befoglaló téglalapot, melynek alakszám rendje = n, és oldalainak aránya = excentricitás Számoljuk ki az alakszámot ebben a rácsban
12 Lánc simítás Cél: lánc rövidítése, határ vékonyítása Legyen S 1 és S 2 két egymás utáni irány a lánckódban és legyen m=min(S 1, S 2 ), valamint M=max(S 1, S 2 ). Iterálással hajtsuk végre a következőt (Zamperoni: Methoden der digitalen Bildverarbeitung, Vieweg-Verlag 1991): M-mmúj irány 0-nincs változás 1-nincs változás 2páratlanm+1, m+1 2párosm+1 3páratlanm+1 3párosm+1 4-törlendő m és M 5pártalanm-1 5párosm-2 6páratlanm-1, m-1 6párosm-1 7-nincs változás
13 Szignatúra (Signature) Signature: a határ 1-D függvényszerű leírása Különböző módszerek léteznek Pl. a súlyponttól mért távolság a szög függvényében
14 Signature Invariáns eltolásra, függ a forgatástól és a skálázástól Forgásra invariáns, ha mindig ugyanazt a startpontot választjuk –A középponttól a legtávolabbi pont ilyen lehet Skálázásra invariáns, ha normalizáljuk egy tartományra x’=(x-x min )/(x max -x min )
15 Signature Más signature-k: A határon haladva az út függvényében az érintő iránya egy referenciairányhoz képest Meredekség sűrűség függvény: érintőfüggvény hisztogramja Az egyenes szegmensek csúcsok lesznek a hisztogramban
16 Átmérő, befoglaló téglalap, … Átmérő: a határpontokat tekintve, annak a két pontnak a távolsága, amelyek legtávolabb helyezkednek el A főtengelyekkel (lásd később) egyező állású befoglaló téglalap oldalainak aránya invariáns Háromszög hasonlóság – Legyen P1, P2, P3 három pont a határon, és d(Pi; Pj) jelölje az Euklideszi távolságát a két pontnak és S = d(P1; P2) + d(P2; P3) + d(P3; P1) a háromszög kerülete A következő két vektor – hosszak aránya a kerületre – invariáns (d(P1; P2)/S; d(P2; P3)/S)
17 Fourier leírók Adott N pontból álló rendezett határ: (x 0, y 0 ), (x 1, y 1 ) … (x N-1, y N-1 ) Minden koordinátát kezeljünk komplexként s(k) = x k + j y k A DFT: a(u) Fourier leírók Fourier leíró komplex Az inverz Fourier eredménye:
18 Fourier leírók Ha csak P < N tagot veszünk figyelembe (azaz a magas frekvenciás részleteket: sarokpontokat elhagyjuk), akkor közelítjük az eredeti alakot kevesebb adattal: A Fourier leírók nem invariánsak, de: A Fourier leírók nagysága invariáns a forgatásra
19 Fourier leírók Eltolásra invariáns, ha a(0) = 0-t állítunk be Skálázásra invariáns: a’(n) = a(n)/abs(a(1))-t használunk
20 Fourier leírók - példa Bináris kép 1090 pontos határral
21 Fourier leírók - példa 546, 110, 56, 28, 14 darab Fourier leíróval a kép
22 Fourier leírók Invariáns
Régiók geometriai jellemzői Mubarak Shah könyve alapján
24 Cél Cél: olyan jellemzők keresése, amelyek invariánsak eltolásra, forgatásra, skálázásra, még általánosabb esetben affin transzformációkra, a jellemzők a régiók belső tulajdonságain alapuljanak
25 Régió tulajdonságok Terület Középpont (súlypont) Momentumok, nyomatékok Kerület Kompaktság Orientáció Nyomatéki főtengelyek aránya Topológiai leírók Textúra
26 Terület Pixelek száma a régióban
27 Súlypont Tömegközéppont, vagy súlypont
28 Nyomatékok (momentumok, inerciák) Folytonos eset Diszkrét eset i = p+q nyomaték
29 Egyértelműség tétele Az {m pq } nyomatékokat egyértelműen meghatározza a B(x,y) kép, és fordítva, B(x,y) képet egyértelműen meghatározzák {m pq } nyomatékok Megjegyzés: m pq -t gyakran M pq -val is jelölöm, illetve fordítva is igaz
30 Centrális nyomatékok Eltolás invariánsak –Ha ugyanaz a régió a kép különböző részein jelenik meg, ugyanazokat a centrális nyomatékokat kapjuk eredményül Régió súlypont
31 Centrális nyomatékok (eltolás invariáns)
32 Hu-féle nyomatéki invariánsok Eltolásra, forgatásra, skálázásra invariáns
33 Hu-féle nyomatéki invariánsok
34 Példa
35 Példa
36 Kerület és kompaktság Kerület: A régió határán lévő pixelek száma. (Definíció: Határpixel, amelynek legalább egy szomszédja háttérpixel.) Megj.: néha másképpen értelmezik (1 és √ 2-es távolságok összege) Kompaktság –A kör a legkompaktabb terület kerület
37 Régió orientáció – főtengely transzformáció r r r r r B Nyomatéki főtengely, vagy inercia tengely
38 Régió orientáció – Principal Axis Transformation (PAT) Másodrendű nyomatéki főtengely
39 Régió orientáció Egyenes egyenlete Minimalizálandó
40 Régió orientáció (70. o.) (x,y) (x 0,y 0 ) r s Behelyettesítve (x 0, y 0 )-t r 2 -be Differenciálva s szerint és ez 0 Behelyettesítve s (x 0,y 0 )-ba
41 Régió orientáció (71. o.) szerinti derivált 0 ahola súlypont Áttérvekapjuk vagy ahol
42 Régió orientáció (hosszúkás objektum esetén jó!) Szélsőérték, ha a szög szerinti derivált 0
43 Példa Határozzuk meg a területet, súlypontot, nyomatékokat, kompaktságot, kerületet, orientációt!
44 Topológiai jellemzők A lyukak száma a régióban: H –Balról, jobbról, lentről, fentről … Csatlakozó elemek száma: C –Lásd a régió szegmentálásnál (Connected component algorithm) Rekurzív algoritmus Kétszeres soros, végigjárásos módszer (ekvivalencia osztályokkal) Euler szám: E = C – H –Invariáns: eltolásra, elforgatásra, skálázásra
45 Poligon hálók (egyenes szakaszokból)
46 Javasolt irodalom Chapter 3-4, Mubarak Shah, “Fundamentals of Computer Vision”, 1992 (book.pdf) Gonzales, Woods: “Digital Image Processing”, Prentice Hall, 2002