Színes kép szegmentáció
A cikkem a színes kép szegmentálással foglalkozik. A színes kép szegmentálás nagyon hasznos lehet több alkalmazásban, segítségével kiemelhetjük, a tárgyakat vagy a kép érdekesebb részeit. A cikk egy konkrét algoritmust mutat be, mely egy teljesen új megközelítése a témának, a neve JSEG. A módszer sok már meglévő technikát felhasznál. A témában nagyon kevés algoritmus van mely eredményes az adatok nagy skáláján. A problémát nehezítik a texturák. Különösen a természeti képek esetén nehéz a helyzet. Ezért pár feltételt kell szabnunk a képekre:
A szegmentálás főbb részei
A szegmentálás előfeltételei
Először a kép színeit durván kvantáljuk anélkül, hogy a színek minősége nagyban romlana. A cél az, hogy a képből kivont néhány szín segítségével megtudjuk különböztetni a szomszédos területeket. Tipikusan 10-20 színre van szükség egy természeti kép esetében. A szegmentálási folyamatban nagyon fontos a jó szín kvantálás.(a konkrét megvalósításban a perceptual color quantization algoritmust használjuk ) Ezután szín osztályokat alkotunk. Egy osztályba a kép azon képpontjai tartoznak melyeket ugyan arra a színre kvantáltuk. Majd a szín osztályokhoz címkéket rendelünk és minden képpontot helyettesítünk az osztályának megfelelő címkével. Az így konstruált képet osztálytérképnek(class-map) hívjuk. PL:
Az osztálytérképhez az egész képre vonatkozóan kiszámíthatunk egy J értéket, amely ha nagy akkor az osztályok jól elkülönülnek és az osztályokon belül a tagok közel vannak egymáshoz(kicsi érték esetén fordítva). Ha a területekre vonatkozó J értékeket átlagoljuk akkor kapjuk az átlagos J. Abból az esetből, amikor a területek egy részére számoljuk ki a J értéket azt tudhatjuk meg, hogy az adott rész a terület közepében vagy a határához közel helyezkedik-e el. Ezen alapul a J-kép kiszámítása. A J-kép egy gray-scale(szürke árnyalatos) kép, ahol a képpontok értékei a J központosított ablakokon keresztül kiszámított értékei ezekre a pixelekre. A J-kép tulajdonképpen olyan mint egy 3-D földrajzi térkép amely tartalmaz völgyeket és hegyeket amelyek ebben az esetben a területek középpontjai és határai. Az ablakok mérete határozza meg, hogy mekkora területet tudunk vele felfedezni. Kis ablakkal az szín éleket tudjuk detektálni, míg nagyobbal a textura határokat. A táblázatban láthatunk ablakokat melyekre a scale értékekkel hivatkozhatunk. Gyakran, több scale is használunk egy kép szegmentálásánál, mint példánkban.
Térbeli szegmentáló algoritmus
Az eredeti képet mint kezdeti területet használjuk. Az algoritmus kezdetben a kezdeti nagy scale-nek megfelelően kiszámítja a J-képet, majd végrehajtja a terület növelést(region growing). A terület növelés először meghatározza a völgyeket egy küszöb érték segítségével, majd addig növeli őket amíg mind össze nem ér, tehát egyetlen képpont se lesz, amelyik nincs benne valamelyik területben. Ezután az újabb területekre ismét végre hajtjuk ezeket a műveleteket csak már a csökkentett scale értéknek megfelelő ablakkal. Addig folytatódik a ciklus amíg el nem érjük a megadott legkisebb scale értéket. Már csak egy lépés marad a terület összevonás(region merge). A kvantált színek jellemzőit ismerjük (histogram). Kiszámítjuk két szomszédos területre, a jellemzők közötti eltéréseket, majd eltároljuk egy táblában, és ha az összes meg van akkor a legkisebb értékhez tartozó területeket össze vonjuk. Addig csináljuk amíg el nem érünk egy maximum küszöböt.
A JSEG algoritmusnak mint most az utolsó esetben is láttuk szüksége van bizonyos paraméterekre. Először is egy küszöb szám a kvantálási folyamathoz (mi az a maximális eltérés amíg még az éppen aktuális kvantált színnel helyettesítjük az eredeti pixel színét). A második a minimális scale száma amit még el akarunk érni. A harmadik pedig a terület összevonásnál szükséges küszöb érték.
Hihetetlen eredmények
Az algoritmus nagyon jól dolgozik különböző képeken fix paraméterekkel is. Ezt láthatjuk a következő példákban, amely csak néhány a 2500 kép közül melyeket paraméter változtatás nélkül szegmentált a JSEG.
További kutatások iránya
Egyetlen eset van amit nem igazán tud kezelni a JSEG még pedig az, ha egy objektum a megvilágításnak köszönhetően egy tárgy árnyékolása változó.PL: a „virágos kert” című képben a nagy fatörzs. A jövőben a kutatások ennek a problémának a megoldására irányulnak.
A folyamat lépései képekben
(a) az eredeti kép, (b) a kvantált kép 13 színnel, (c) J-kép scale=3, (d) J-kép scale=2, (e) szegmentáció scale=3 esetén(9 terület), (f) szegmentáció scale=2 esetén(49 terület), (g) végső szegmentáció összeolvasztás után(27 terület)
Példák