Presentation is loading. Please wait.

Presentation is loading. Please wait.

Szegmentálás II. Vámossy Zoltán Mubarak Shah (University of Central Florida) és társai anyaga alapján.

Similar presentations


Presentation on theme: "Szegmentálás II. Vámossy Zoltán Mubarak Shah (University of Central Florida) és társai anyaga alapján."— Presentation transcript:

1 Szegmentálás II. Vámossy Zoltán Mubarak Shah (University of Central Florida) és társai anyaga alapján

2 Régió szegmentálás Mubarak Shah: Fundamentals of Computer Vision 1992 és Szegedi kollégák (Kuba Attila, Palágyi Kálmán, Kató Zoltán) anyagai alapján

3 3 Csoportosítás (clustering)

4 4 Szegmentálás - felosztás R3R3 R1R1 R2R2 R5R5 R4R4 R6R6

5 5 Régió szegmentálás

6 6

7 7 Réteg reprezentáció

8 8 Hierarchikus szegmentálás Kiinduló képfinomodó szegmentációs szegmentációk fa

9 9 Szegmentálás Az I(x, y) kép szegmentálása kapcsolódó részképekre (régiókra) bontást jelent Keressük R 1, R 2, ….,R n összefüggő régiókat úgy, hogy Az i-ik régióban minden pixelre teljesül valamilyen hasonlósági feltétel P(R i ) = 1

10 10 Hasonlósági feltételek A részkép minden pixele ugyanolyan intenzitású Bármely részképben a pixelek intenzitása nem különbözik jobban egymástól, mint egy adott küszöb Bármely részképben a pixelek intenzitása nem különbözik jobban a régió átlagos intenzitásától, mint egy adott küszöb Bármely régióban az intenzitásértékek szórása kicsi …

11 11 A szegmentálás sikeres ha … a régiók homogének és egyenletesek (uniformitás), a régiók belsejében nincsenek lyukak, a szomszédos régiók között jelentős különbség van, a szegmensek közötti határ egyszerű és pontos.

12 12 Szegmentálási módszerek küszöböléses (lásd korábban is) él-alapú régió-alapú illesztésen alapuló

13 13 A küszöbölés típusai Globális: T = T{I(x,y)} Lokális: T = T{A(x,y), I(x,y)} Dinamikus: T = T{x, y, A(x,y), I(x,y)}, ahol (x,y): pozíció, A(x,y): az (x,y) környezetéből számított valamilyen lokális tulajdonság, I(x,y): intenzitás (x,y)-ban

14 14 Egyszerű küszöbölés

15 15 Hisztogram alapú szegmentálás - példa

16 16 Hisztogram alapú szegmentálás - példa

17 17 Valós hisztogramok Nem valós Valós (zajos)

18 18 Valós hisztogram Zajos - simítás! –A hisztogramon hajtsunk végre átlagoló, vagy 1D Gauss szűrés(eke)t! Peak - csúcs csúcs völgy

19 19 Él-alapú szegmentálás A hisztogram csak a szürkeségi értékek előfordulási gyakoriságát mutatja meg, a pozíciók, a szomszédos elemek szürkesége és egyéb információk hiányoznak. Ahhoz, hogy zárt és összefüggő határvonalakat kaphassunk más módszerek szükségesek. Előforduló problémák (pl. zaj esetén): álpozitív (false positive) élek — élt detektálunk ott, ahol nincs él; álnegatív (false negative) élek — nem találunk élt, pedig van.

20 20 Él-alapú szegmentálás modellje Kép simítás => simított kép Lokális élkiemelés => gradiens irányok és nagyságok Él korrekció => éltérkép Élek kapcsolása, csoportosítása => vonal jellemzők

21 21 Él-korrekciós módszerek hiszterézis küszöbölés (lásd a Cannynél) nem-maximális élek elnyomása (lásd a Cannynél) él-relaxáció él-kapcsolás

22 22 Él-relaxáció Iteratívan újraértékeljük a képpontok osztályozását): Egy él (akár erős is), ha nincs folytatása a környezetében, valószínűleg nem tartozik semmilyen határhoz. Egy gyenge él, ha két erős él között van, valószínűleg a határvonalhoz tartozik.

23 Összekapcsolhatunk szomszédos él-pontokat, ha hasonló tulajdonságaik vannak: Hasonló a gradiensük nagysága valamely küszöbértékre: Hasonló gradiensük iránya valamely küszöbértékre: 23 Él-kapcsolás

24 24 Régió alapú szegmentálás … az objektum/szegmens által elfoglalt területet határozza meg. Megközelítések: régió növelés (region growing) egyesítés (merge), szétválasztás (split), egyesítés és szétválasztás fagocita algoritmus.

25 25 Régió növeléses szegmentálás lépései Seed segmentation Számítsuk ki a kép hisztogramját Simítsuk a hisztogramot átlagolással vagy Gauss szűréssel (kis csúcsok, zajok eltüntetése) Detektáljunk “jó” csúcsokat (peakiness) és völgyeket – lokális maximumok és minimumok keresése-, peakiness test Szegmentáljuk a képet bináris képpé a völgyben lévő küszöbökkel (rendeljünk 1-t a régiókhoz, 0 a háttér) Alkalmazzuk a kapcsolódó komponensek algoritmusát (connected component algorithm) minden bináris képrészre, hogy megtaláljuk az összefüggő régiókat

26 26 Jó csúcsok - Peakiness Test

27 27 Hisztogram alapú szegmentálás Használjuk a völgyeket küszöbölésre –Alkalmazzuk a küszöböket a hisztogramon –Címkézzük meg a pixeleket az adott küszöbnek megfelelő tartományban ugyanazzal az értékkel, pl., a, b, c … vagy 1, 2, 3 …

28 28 Connected Components A nem csatlakozó, ugyanolyan szegmensű részeket szét kell vágni C szegmenshez adható

29 29 Rekurzív kapcsolódó komponens módszer Connected Component Algorithm 1. Dolgozzuk fel a bináris képet balról jobbra, fentről lefelé 2. Ha még nem címkézett “1”-t tartalmazó pixelhez érkezünk, akkor rendeljünk egy új címkét hozzá 3. Rekurzívan vizsgáljuk meg a szomszédait a 2. lépésnek megfelelően, és rendeljük hozzá ugyanazt a címkét, ha még nem címkézettek és az értékük 1 4. Álljunk meg, ha minden 1 értékű pixelt megvizsgáltunk Megjegyzés: 4-es, 8-as szomszédság

30 30 Soros kapcsolódó komponens módszer 1. Dolgozzuk fel a bináris képet balról jobbra, fentről lefelé 2. Ha még nem címkézett “1”-t tartalmazó pixelhez érkezünk, akkor rendeljünk hozzá egy új címkét a következő szabályok szerint: 0000 01 0L L1 LL LLLL 01 0L M1 M L (L=M) 3. Határozzuk meg a címkék közül az ekvivalenseket (pl.: a=b=e=g és c=f=h, és i=j) 4. Az ekvivalens csoportok minden eleméhez rendeljük ugyanazt a címkét második körben

31 31 Soros kapcsolódó komponens módszer d=c Ekvivalens osztály Tehát két lépéses az algoritmus: 1. Címkézés 2. Ekvivalens elemek összekapcsolása

32 32 8 szomszédságra szabályok 0 0 00 0 0L 0 0L 0 0 0 1 0 L0 1 0 L 0 L 00 L 00 0 L0 0 L 0 1 0 L 0 10 L * * 0* * 0* * L* * L L 1 L LM 1M L(L=M)

33 33 Példa – fehérrel jelölt ujjhegyek

34 34 Példa szegmentálásra 93 csúcs

35 35 Példa szegmentálásra Simított histogram (átlagolás 5 méretű maszkkal) 54 csúcs Peakiness teszt után 18 Simított histogram kétszer 21 csúcs Peakiness teszt után 7 Simított histogram háromszor 11 csúcs Peakiness teszt után 4

36 36 Példa szegmentálásra (0, 40)(40, 116)(116, 243)(243, 255)

37 37 Seed Segmentation továbbfejlesztése A kis régiókat kapcsoljuk nagyobbakhoz –Régió növelés Nagy régiók szétvágása –Régió vágás Gyenge határok eltüntetése szomszédos régiók esetében

38 38 Régió növelés Régió vágás és egyesítés (split and merge) Fagocita (phagocyte) algoritmus Valószínűségi arány teszt

39 39 Split and Merge régiókra Vágás: vágjuk a nem homogén régiókat 4 szomszédos részre Egyesítés: hasonló tulajdonságú (uniform) szomszédos régiókat kapcsoljuk össze Álljunk meg, ha már nem lehet sem vágni, sem ragasztani Az uniformitás/hasonlóság függvénye: P

40 40 Példa – split and merge RR1R1 R2R2 R3R3 R4R4 R1R1 R2R2 R

41 41 Példa – split and merge R R R RRRR R R R R R R R R R RRRR R R RR R RR RR R R R R R R R R

42 42 Quad Tree Négyes fa adatstruktúra régióreprezentáláshoz Három fajta csomópont: szürke, fekete és fehér Elsőként generáljunk egy piramist: Ha a piramis fehér, vagy fekete, akkor visszatérés, egyébként: –Rekurzívan keressünk egy quad tree-t X1 negyedben –Rekurzívan keressünk egy quad tree-t X2 negyedben –Rekurzívan keressünk egy quad tree-t X3 negyedben –Rekurzívan keressünk egy quad tree-t X4 negyedben –Return

43 43

44 44 Fagocita algoritmus Határ összeolvasztás –A gyenge határokat megszünteti –Hasonló a régióegyesítéshez A határ gyengeség (weakness) hasonló intenzitáson alapul „crack edge” => super grid szerkezet R1R1 R2R2

45 45 Fagocita algoritmus R1R1 R2R2

46 46 Fagocita illesztés heurisztikája Olvasszunk össze két régiót, ha ahol P 1 az R 1 régió, P 2 az R 2 régió kerülete Ha T 2 ½, akkor csökkenhet Olvasszunk össze két régiót, ha Fagocita Gyengeség

47 47 Valószínűségi arány teszt Cél: annak eldöntése, hogy összeragasztható-e két régió Két hipotézisünk van: –H1: két külön régió van a képen –H2: csak egy régió található Feltételezzük, hogy az intenzitás minden régióban: –Gauss eloszlású –Függetlenek egymástól a régióban

48 48 Valószínűségi arány teszt

49 49 Valószínűségi arány teszt Annak valószínűsége, hogy egy véletlenül kiválasztott pixel intenzitása x – Gauss eloszlás x 1, x 2, …,x m1  R1 x m1+1, x m1+2, …,x m1+m2  R2 R1 régióban annak a valószínűsége, hogy x 1, x 2, … x m1 intenzitások vannak: R2 régióban annak a valószínűsége, hogy x m1+1, x m1+2, … x m1+m2 intenzitások vannak:

50 50 Valószínűségi arány teszt Egy régiós hipotézis: Két régiós hipotézis:

51 51 Egy régiós hipotézis: Két régiós hipotézis: Valószínűségi arány: Valószínűségi arány teszt Régiók illesztése, ha LH < T

52 52 Régió szomszédsági gráf – megj. Régiók reprezentálására jól használható adatstruktúra A régiók csomópontok a gráfban Az élek a régiók szomszédságát reprezentálják 1 2 3 4 5 6 1 2 3 4 5 6

53 53 Régió szomszédsági gráf – megj. Tegyük fel, hogy a régiókat rendre össze tudjuk ragasztani az ábra szerint A gráfban kell csak a csomópontokat „adminisztrálni”: azonosság jelzése; majd eltávolítás

54 54 Régiószegmentálás és éldetektálás Összehasonlítás Zárt határ –Éldetektálás esetében általában nem –Régiószegmentálás zárt határokat produkál Lokális globális –Éldetektálás lokális művelet –Régiószegmentálás globális Jellemző vektorok tulajdonságainak növekedése –Általában nem javítja az éldetektálás hatékonyságát nagy mértékben –Javítja a szegmentálás hatékonyságát (mozgás, textúra, stb.) Határpontok –Pontos helyzet meghatározás az éldetektálás során –Általában nincs ilyen

55 55 Javasolt irodalom Chapter 3, Mubarak Shah, “Fundamentals of Computer Vision”, 1992 (book.pdf)


Download ppt "Szegmentálás II. Vámossy Zoltán Mubarak Shah (University of Central Florida) és társai anyaga alapján."

Similar presentations


Ads by Google