Köszönetnyilványítás Digitális képelemzés alapvető algoritmusai Csetverikov Dmitrij Eötvös Lóránd Egyetem, Budapest csetverikov@sztaki.hu http://vision.sztaki.hu Informatikai Kar A kurzus megírásában az alábbi munkatársaim segítettek: Verestóy Judit Lerch Attila Szabó Zsolt A kurzus témái Képelemzés és képszűrés alapfogalmai Képelemzés feladatai és alkalmazásai Képszűrés Megfeleltetés és mintaillesztés Élek és sarkok detektálása Képküszöbölés Vázreprezentációk és távolság-transzformáció Morfológiai képfeldolgozás Alakelemzés 1 Bevezetés Alapfogalmak Képelemzés tipikus alkalmazásai Képek és feladatok példái Képelemzés és felismerés fázisai 2 Képszűrés Korreláció és konvolúció 3 Irodalom
Alapfogalmak Számítógépes grafika és képelemzés Image Processing terület bemenet kimenet képfeldolgozás képek feldolgozott képek képelemzés képek képleírások alakfelismerés képleírások objektum osztályok számítógépes látás képek 3D-s modellek Képek: kép, képhalmaz, vagy video Számítógépes látás: képfeldolgozás, képelemzés, alakfelismerés Image Image Analysis Graphics Description Számítógépes grafika: matematikai modellből kép direkt probléma, szintézis Képelemzés: képből matematikai modell inverz probléma, analízis bonyolultabb Képfeldolgozás: képből kép Digitális kép Számítógépes látás főbb céljai Két- vagy többdimenziós mátrix: Tárgy, színtér vagy egy másik kép sík- vagy térbeli reprezentációja Intenzitás kép (világosság- vagy színkód) a felület által visszavert, kamera által érzékelt elektromágneses energia látható vagy láthatatlan tartományban (pl. hőmérséklet) Távolság kép (range image) a felület és az érzékelő közötti 3D-s távolság Szimbolikus kép képponthoz hozzárendelt osztálycimke, index, vagy szimbolum pl. talajtípus, mezőgazdasági felhasználás típusa Ismert objektumok detektálása és felismerése Ismeretlen objektumok 3D-s modellezése Pozició- és orientáció-meghatározás Geometriai tulajdonságok mérése távolságok, méretek, stb. Mozgáselemzés Szín- és textúraelemzés
Képelemzési alkalmazások 1/3 Képelemzési alkalmazások 2/3 Alkalmazások Területek Dokumentum- feldolgozás Orvosi Ipari automatizálás Robotika Levél szortírozás, cimkeolvasás, banki papirok feldolgozása, szövegolvasás, műszaki rajzok értelmezése Tumordetektálás, belső szervek mérét- és alakmérése, kromoszóma-elemzés, vérsejtek számlálása Alkatrész-felismerés szereléshez, hibadetektálás, minőségellenőrzés Tárgy- és környezet-felismerés, vizuális alapú mozgásirányítás Alkalmazások Térképek készítése fényképekből, időjárás-térképek készítése, épületek és utcák 3D-s modellezése Ujjlenyomat illesztés, arcfelismerés, járáselemzés, más biometrikus mérések, például, fül, irisz Arckifejezés-elemzés, szemmozgás-követés, gesztus-felismerés Autók és emberek követése, események és tevékenységek elemzése Területek Térképészet, térinformatika Bűnüldözés, biztonság Ember-gép interakció Térmegfigyelés Képelemzési alkalmazások 3/3 Ellenőrzés és vizsgálat Alkalmazások Kép- és video alapú színtér-rekonstrukció, fotórealisztikus modellezés Kép és video alapú keresés, indexelés; alakzat, textúra és mozgás reprezentációja és kódolása Célkeresés és -azonosítás, légi jármüvek és rakéták irányítása Multispektrális képelemzés, időjárás előrejelzés, városi, mezőgazdasági és vízi területek megfigyelése és osztályozása Területek Film- és játékipar, kulturális örökség Multimédia adatbázisok Radarképek feldolgozása Távérzékelés szilánk üveg alján kőzetrepedés szövethiba ferritmag repedés ultrahang. talajkép kábel ker.metszet
Bel- és kültéri színterek, képi adatbázisok Orvosi képek bel. sztereó 1 bel. sztereó 2 kül. sztereó 1 kül. sztereó 2 MRI (térd) sejtek (radiológia) bikaspermium logó fénykép ikon/festmény ujjlenyomat röntgen (szív) mammogram (mell) vizelet Dokumentumok Képelemzés lépéseii 1/2 folyóirat oldal térkép kézírás Képalkotás (imaging): Kamerák és más érzékelők, világítás, fényvisszaverődési modellek Képjavítás (enhancement): Képminőség javítása, képkorrekció, zavaró vagy fölösleges információ eltüntetése zajszűrés, kontrasztemelés Sajátság (jellemző) kiemelés (feature extraction): Jellemzőpontok meghatározása, lokális képleírások hozzárendelése képelemekhez képküszöbölés, éldetektálás bankszámla műszaki rajz
Képelemzés lépései 2/2 Lokális operátorok Régió alapú szegmentálás (region-based segmentation, grouping): Hasonló tulajdonságokkal rendelkező, összefüggő képrészek kiemelése összefüggő komponensek (connected components), élláncok (edge linking) Régió leírás: Régiók geometriai, szín- és -textúra leírása, régiók közötti rélációk meghatározása terület, súlypont, orientáció, méretek, görbület, szín, textúra Megfeleltetés, illesztés (correspondence, matching): Modell és kapott képleírás megfeleltetése, képértelmezés betűfelismerés betűrészek megfeleltetése alapján Az (x, y) pontban az eredmeny a pont környezetétől (ablaktól) függ: g(x, y) = T[f(x, y)] f(x, y) a bemeneti (input) kép, g(x, y) a kimeneti (output) kép T egy, a környezeten definiált operátor Feltételezzük, hogy csak a közeli képelemek korrelálnak egymással korreláció csökken távolsággal nem igaz periodikus képek esetén y Image y (x,y) x Egy 3 3-as ablak az (x, y) pontban. x, y : lokális koord. x Rekurzív és nemrekurzív operátorok Általános nemrekurzív operátor Nemrekurzív lokális operátor az eredmény csak a bemenet aktuális környezetétől függ a kimenet el van választva a bemenettől: a működés során a bemenet nem módosul a művelet hatása korlátozódik a környezetre Rekurzív operátor az aktuális eredmény a bemenettől és az előző eredményektől is függhet a kimenet nincs elválasztva a bemenettől: a működés során a bemenet módosul a művelet hatása nem korlátozódik a környezetre hasznos, de sokkal bonyolultabb Csak a nemrekurzív operátorokkal foglalkozunk g(x, y) = φ[x, y, f(x, y ) : (x, y ) N(x, y)] f(x, y) a bemeneti kép, g(x, y) a kimeneti kép N(x, y): az (x, y) valamely környezete (pl. ablak) (x, y ): lokális koordináták a környezeten belül f(x, y ) : (x, y ) N(x, y) a környezbeli értékek listája φ függhet x, y-től (adaptív operátor) az N(x, y) környezet változhat az eredmény kiszámítási módja is változhat φ nemlineáris is lehet lineáris operátor A: A(αp + βq) = αap + βaq
Korreláció Konvolúció Lineáris eltolás-invariáns operátor a bemeneti értékek lineáris kombinációja: az f képnek a w maszkkal való kereszt-korrelációja g(x, y) = (f w)(x, y). = (x,y ) W (x+x,y+y ) F f(x + x, y + y ) w(x, y ) W az ablakon belüli, F a képen belüli poziciók halmaza a W ablak és a w(x, y ) súlyok nem függnek az x, y-től w: súlymátrix, maszk (angolul kernel, mask) Az f kép és a w maszk konvolúciója g(x, y) = (f w)(x, y) =. f(x x, y y ) w(x, y ) (x,y ) W (x x,y y ) F A W ablakot az ellenkezó sorrendben olvassuk be. Szimmetrikus maszkokkal fogunk dolgozni. nem lesz különbség korreláció és konvolúció között Konvolúció tulajdonságai 1/2 Konvolúció tulajdonságai 2/2 Asszociativitás: Tetszőleges f, g képekre és w, v maszkokra Korreláció a tükrözött maszkkal való konvolúció: f w = f w, ahol w (x, y) =. w( x, y) Kommutativitás (tetszőleges sorrend): w v = v w (f w) v = f (w v) w v: a w maszkot nullákkal körülvett képnek tekintjük és a v maszkkal konvolváljuk az eredmény egy nagyobb maszk asszociativitás gyors megvalósítás Disztributivitás: (f + g) w = f w + g w Homogénitás: tetszőleges α konstansra (αf) w = α(f w)
A kurzusban felhasznált irodalom Más hasznos irodalom és a kurzus diái 1 E.Trucco, A.Verri, "Introductory Techniques for 3-D Computer Vision", Prentice Hall. 2 R.Klette, P.Zamperoni, "Handbook of Image Processing Operators", J.Wiley and Sons. 3 I.Pitas, "Digital Image Processing Algorithms", Prentice-Hal. 4 R.C.Gonzales, R.E.Woods, "Digital Image Processing", Addison-Wesley. 5 R.M.Haralick, L.G.Shapiro, "Computer and Robot Vision", Addison-Wesley, volumes I-II. 6 A.K.Jain, "Fundamentals of Digital Image Processing", Prentice-Hall. 1 Álló G., "A Digitális Képfeldolgozás Alapproblemái", Akadémiai Kiadó, 1989. 2 M.Sonka, V.Hlavac, R.Boyle, "Image Processing, Analysis and Machine Vision", Thomson. 3 B.Jähne, "Digital Image Processing", Springer. 4 W.K.Pratt, "Digital Image Processing", J.Wiley. 5 A.Rosenfeld, A.C.Kak, "Digital Picture Processing", Academic Press, vol. I-II. A kurzus diái: Lásd Csetverikov Dmitrij honlapját Google Csetverikov vagy Chetverikov