3. Digitális fotogrammetria 3.1. Új képalkotó és feldolgozó eszközök A bevezetőben már említettem, hogy a digitális fotogrammetria első szakaszában a fotogrammetriai technológia teljesen számítógépes megvalósítását szerették volna elérni. Ennek érdekében a fejlesztések elsősorban •8 •8 •8
a filmről digitális képet előállítani képes, nagyobb képformátumú szkennerekre, később a megfelelő geometriai felbontású, közvetlenül digitális képet létrehozni tudó kamerákra és a képek feldolgozását végző számítógépes műszeregyüttesre, a digitális fotogrammetriai munkaállomásra
koncentráltak. Ennek a munkának lett az az eredménye, hogy megjelentek azok a szkennerek, amelyek nagyobb felbontást (5-7 µm – 5080-3628 dpi) tettek lehetővé a szokásos légifényképezési film formátumában (legalább 23 × 23 cm) is. A fejlesztés nagy feladatai •8 •8 •8 •8
a megfelelően stabil képtartó pontosan vezérelhető letapogató fej kalibrálható megvilágító berendezés alkalmas adattovábbító eszköz és eljárás
voltak. A stabil képtartó és a pontosan vezérelt letapogató fej a mérés megbízhatósága és ismételhetősége miatt fontos. A megvilágító berendezés jelentősége az automatikus feldolgozásnál jelentkezik, ugyanis a képek tartalmát is elkezdték számítógéppel feldolgozni. Ehhez azonban kulcsfontosságú, hogy a negatívot megvilágító lámpa azt a fényviszonyt adja vissza, ami a felvételezés pillanatában volt (nagy stabilitással a Nap körülbelüli színhőmérséklete). Az adatok továbbítása szintén nem elhanyagolható szempont, hiszen a megjelölt geometriai felbontásnál csupán fekete-fehér film használatakor is néhány száz megabájt adat keletkezik, amit a fogadó (kiszolgáló) számítógépbe továbbítani és feldolgozni, vagyis tömöríteni kell. [Barsi 1999a, Jähne et al. 1999, Lillesand-Kiefer 1994]
7. ábra Fotogrammetriai célú szkenner (Z/I Imaging PS 2000)
A következő újabb adatnyerési eljárás a közvetlen digitális szenzorok kifejlesztése volt. Az egyik fő fejlesztési irány a digitális kameráké. Ezen a területen két nagyobb elvet követtek a gyártók: a nagy érzékelő mátrix használata (Z/I Imaging Digital Modular Camera), valamint a sok érzékelőt tartalmazó szenzorsor és kiegészítő navigációs berendezések alkalmazása (LH Systems ADS 40).
a) DMC
b) ADS 40
8. ábra Az új fotogrammetriai célú kamerák A digitális kamerák fejlesztésével természetesen nemcsak a hagyományos értelemben vett műszergyártó cégek foglalkoztak. Egyre több ipari kamera jelent meg, amelynek geometriai felbontása akár fotogrammetriai alkalmazást is lehetővé tett. Ezeknek az eszközöknek a beépítésével egyedi kísérleti eszközöket kezdtek összerakni, amelyeket helikoptereken, légifényképező repülőgépeken használtak. Ezeknek a berendezéseknek köszönhető, hogy gyors megoldásként mérési célra lehet képeket készíteni pl. árvizek, erdőtüzek és más természeti katasztrófák lefolyásáról. [AIMS] A már ismertetett ún. passzív képalkotó eszközök mellett azonban folytak a fejlesztések az aktív berendezések esetén is. A legnagyobb sikert elkönyvelni tudó fejlesztés a lézeres letapogató rendszer, ismert angol nevén lézerszkenner (laser scanner). A légi fotogrammetria területén használatos lézeres berendezés amerikai neve is köztudott: LIDAR. A LIDAR működésének elve igen egyszerű: a repülőgép fedélzetén megtalálható lézerszenzor a felszín felé impulzusokat bocsát ki, majd az impulzus menetidejét megmérve meghatározza a visszaverő pont és a szenzor távolságát. Kiegészítő berendezésként használjuk a GPS-t és INS-t (inerciális navigációs rendszert). A műszeregyüttes használatának, kalibrálásának kérdésével foglalkozik például [Barsi et al. 2003c, Toth 2002].
9. ábra Lézerszkenneléssel kapott városmodell [www.airbornelasermapping.com] A LIDAR technológiával nyert adatok feldolgozásában újabban előtérbe kerültek az automatikus eljárások, illetve azok fejlesztése. Ebbe a munkába tanszékünk is bekapcsolódik közlekedési alkalmazások kapcsán. Megjegyzem még, hogy érdekes földi lézeres alkalmazás a Cyra cég által kifejlesztett Cyrax földi letapogató rendszer. [www.cyra.com] A digitális fotogrammetria nagyobb fejlesztései a műszerek, konkrétan a munkaállomásoknál is érzékelhető. A BME Fotogrammetria Tanszéken elsőként egy Intergraph Image Station jelentette a korszerű technika betörését. A munkaállomás egyedi operációs rendszerrel rendelkezett (CLIX), a tájékozásra és kiértékelésre szolgáló modulokat azonban már egy bevált CAD-rendszerre, a MicroStation-re fejlesztették. Ennek a tulajdonságának köszönhette azt a máig előnyös tulajdonságát, hogy a fotogrammetriai kiértékelés eredményét térinformatikai rendszerbe lehetett közvetlenül átvinni, tehát a fotogrammetria a térinformatika egyik leghatékonyabb közvetlen adatnyerési stratégiájává válhatott. Ebből a rendszerből akkoriban (a 90-es évek végén) három darab volt az országban: egy a Földmérési és Távérzékelési Intézetben, egy a Magyar Honvédség Térképészeti Intézetében, egy pedig a BME-n. A műszer egyaránt használható volt légi és földi fotogrammetriai munkafolyamatokban. A rendszerről részletesebben a [Barsi 1999a] és [BarsiMélykúti 1999b] cikkekben lehet olvasni. A 2001-ben bemutatott új, immár a Zeiss és az Intergraph közös vállalata, a Z/I Imaging által fejlesztett és forgalmazott ImageStation 2001 munkaállomást pályázati pénzből meg tudtuk vásárolni, így Tanszékünk rendelkezik egy nemzetközi összehasonlításban is korszerűnek tekintett eszközzel. Ennek a munkaállomásnak már többségében „hétköznapi” hardvereleme van, csak igen csekély számú egyedi alkatrész található benne. Az operációs rendszere Windows alapú, ez a fotogrammetriai szoftverek használatát egyszerűsíti.
10. ábra A Z/I Imaging Image Station 2001 munkaállomás A digitális fotogrammetriai munkaállomások fejlődésével szinte egyidejűleg megjelentek a kisebb ún. soft-copy fotogrammetriai alkalmazások. Ezek közül az egyik, mára egészen komoly rendszerré nőtt az Erdas OrthoBASE nevű modulja, amely a közismert Imagine csomag fotogrammetriai kiegészítéseként született meg. Ennek a szoftvernek a tesztelésével is érdekes tapasztalatokat szerezhet a felhasználó: szerencsés a fotogrammetriát digitális képfeldolgozó szoftverre (az IMAGINE-re) építeni. A másik szerencsés körülmény az, hogy a programot író amerikai cég szoros együttműködésben dolgozik az egyik legnagyobb térinformatikai fejlesztőjével, az ESRI-vel. Ennek az együttműködésnek köszönhető, hogy az OrthoBASE-ben végzett képkiértékelés direkt módon használható az ArcView, Arc/Info illetve az ArcGIS rendszerekben.
11. ábra Az OrthoBASE felhasználói környezete
Az Erdas Imagine-ről, valamint az OrthoBASE modulról [Barsi 2000c] és [Erdas 2001] adnak részletesebb tájékoztatást. 3.2. Az új eszközök alkalmazása Az imént vázolt új fotogrammetriai eszközök bemutatása természetesen csak alkalmazásokon keresztül teljes. Az első alkalmazási példa épületek homlokzatrajzának elkészítése digitális fotogrammetriai munkaállomáson. A vizsgálati sorozatban nagyrészt műemlék jellegű épületek homlokzatrajzait készítettük el építészeti dokumentáció és tervezés céljából. A fényképfelvételeket földi mérőkamerával (UMK) készítettük, majd beszkenneltük s a digitális állománnyal elvégeztük a feldolgozást. Az épületek homlokzatairól különböző álláspontokról készült felvételek tájékozásának mérését követően a számítást sugárnyalábkiegyenlítő programmal (BINGO) végeztük, amely a mérések között előforduló hibásakat kimutatni és a számításból kihagyni volt képes, továbbá figyelembe lehetett venni terepi geodéziai méréseket, valamint geometriai kényszereket. A kiegyenlítési feladat megoldásakor fontos kérdés volt a rendszerek egymáshoz illesztése. A kiértékeléskor egyidejűleg kiválóan lehetett használni a fotogrammetriai mérő- illetve a számítógépes rajzszerkesztő (CAD) parancsokat. A sztereó megjelenítés pontos térbeli pontazonosítást tett lehetővé, amit az 12. ábrán mutatok be egy kis részleten.
12. ábra A sztereóban megjelenített képpár és a kiértékelt homlokzatrajz egy részlete A teljes homlokzat kiértékelését követően szerkesztéssel kapjuk meg a végleges homlokzatrajzot:
13. ábra A teljes homlokzat kiértékelését tartalmazó homlokzatrajz A kísérleteket még a korábbi Intergraph ImageStation változaton végeztük [BarsiMélykúti 1999b], jelenleg teszteljük a digitális kamera bevonásával lehetővé vált teljesen digitális feldolgozási folyamatot a 2001-es modellen. A második alkalmazási példában a viszonylag szűk utcákból, néhány emeletes házakból (ún. „kanyonokból”) álló budapesti Belvárost elemeztük GPS-es navigáció céljából [Lovas et al. 2003]. A projektben mért próbaúton GPS vevőkkel rögzítettük a jármű helyzetét, majd arra voltunk kíváncsiak, hogy milyen mértékben igazolható fotogrammetriai technikákkal a vevők által tapasztalt műhold-láthatóság. A vizsgálathoz a Belvárosról a 2000-ben a „Magyarország Légifelmérése” projekt során készült légifényképeket tájékoztuk, majd az épületeket jellemzők tetőpontjaik alapján digitalizáltuk. A tetővonalakat ezt követően levetítettük az utcák síkjára, így az épületek testmodelljeit határoztuk meg. Ez a modell különféle testmegjelenítő algoritmussal (rendering, ray-tracing stb.[Szirmay-Kalos 2000]) vizualizálható:
14. ábra A Belváros épületeinek testmodellje
A nyers megjelenítésen túl természetesen el lehetett végezni egyes kiválasztott rögzített GPS-pozíciók elemzését: a térbeli helyhez meghatároztuk az elvileg a horizont felett tartózkodó GPS-holdak iránysíkját, majd számítottuk e síkok és az épületek tetőpontjainak metszését, ebből levezetve pedig a tetőpont magassági szögét. A számított magassági szög és a vevőberendezés által rögzített műhold-magassági szög összevetésével győződhettünk meg arról, hogy mely helyeken voltak a „holdkiesések” az épületek kitakarása miatt. Vizsgálati módszerünkkel be tudtuk bizonyítani, hogy egy város (adott esetben annak belső részein) az épületek geometriája fotogrammetriai technikával leírható, annak elemzésével pedig a lehetséges navigáció és annak néhány paramétere (pl. a pontosságra vonatkozóak) előre becsülhető. [Lovas et al. 2003] Jelenleg dolgozunk a matching-alapú automatikus kiértékelés technológiáján. A korszerű fotogrammetriai munkaállomások egyik kitűnő lehetősége az automatikusan végrehajtott képillesztés, a matching. Kutatásomban kísérleteket végeztem, amelyek az eljárás paramétereinek beállítását vizsgálták, továbbá ennek az eszköznek a felhasználásával dolgoztam ki eljárást digitális felszínmodell (DFM) (digital surface modell – DSM) létrehozására. A technológia lényege, hogy a nyersen kapott szabálytalan (gyakori szakirodalmi szóhasználattal: random) matching-mérések után alkalmasan paraméterezett interpoláció szükséges, amellyel a további lépésekhez, alkalmazásokhoz megkívánt sűrűségben, rács formájában kapjuk meg a magassági adatokat. A lehetséges felhasználásnál jó példának tekintem a digitális ortofotó-készítést.
15. ábra Budapest, Móricz Zsigmond körtér környékének mérése matching-gel
16. ábra Summerolt és szintvonalakkal ellátott felszínmodell A Gellért-hegy és környezetéről nyert digitális felszínmodell látható a következő ábrán:
17. ábra A Gellért-hegy digitális felszínmodellje Azt mindenképpen hangsúlyozni szeretném, hogy az előállított modell nem a terepfelszín modellje, így nem DTM, hanem tartalmazza és ábrázolja az azon megtalálható természetes és mesterséges objektumokat! A [Barsi et al. 2003a] és [Detrekői et al. 2003] források részletesen ismertetik a módszert és annak eredményét. A digitális fotogrammetria és eszköze, a munkaállomás lehetővé teszi a képek tematikus kiértékelését is. Kutatásomban a közlekedési objektumokra, folyamatokra koncentrálok, ezért ezen a területen is folytattam vizsgálatokat. Az M3-as autópálya Budapesten belüli kezdő szakaszának, a Kacsóh Pongrác úti felüljárónak a
környezetében végeztünk vizsgálatokat, s értékeltük ki az utcahálózatot geometriai értelemben. Terepi adatgyűjtéssel és adatbázisok felhasználásával elkészítette diplomatervezőm a térség térinformatikai rendszerét, amelyben az egyes utcákhoz rendelt attribútumok alapján elemzések, megjelenítések végezhetők. [Barsi et al. 2003b, Bakos 2001]
18. ábra Fotogrammetriai úton térképezett utcahálózat sebességtérképe [Bakos 2001] 3.3. Digitális ortofotó-készítés A fotogrammetria egyik legnagyszerűbb termékei a képtérképek. Ezek nem mások, mint olyan képek, amelyeket térképi tartalommal láttak el: koordinátahálózat, jelkulcsi elemek stb. Igen fontos jellemzőjük, hogy a képtartalom alapján mérések is végezhetők, tehát a kép geometriai értelemben a terepfelszín torzítatlan mása. A képtérképek között a legáltalánosabban használható az ortofotó (orthophoto vagy orthoimage). Az ortofotó differenciális képátalakítással készül, mentes a perspektíva és a magasságkülönbség okozta torzításoktól. A digitális fotogrammetria világában az ortofotó előállítása, az ortoprojekció (orthoprojection) vagy ortorektifikáció (orthorectification) teljesen számítógépes szoftverrel történik. Kiindulási adatként a digitális formátumú képen túl szükség van azok külső és belső tájékozási elemeire, valamint a terep digitális domborzatmodelljére (digital elevation modell – DEM). Ez utóbbi szolgál a számítás alapjául, ennek pontjaihoz rendeljük hozzá a fényképről vett és számított pixelintenzitást. A fotogrammetria ismert alapösszefüggése [Kraus 1998]:
ξ = ξ0 − c
r11 ( X − X 0 ) + r21 (Y − Y0 ) + r31 ( Z − Z 0 ) r13 ( X − X 0 ) + r23 (Y − Y0 ) + r33 ( Z − Z 0 )
r ( X − X 0 ) + r22 (Y − Y0 ) + r32 ( Z − Z 0 ) η = η0 − c 12 r13 ( X − X 0 ) + r23 (Y − Y0 ) + r33 ( Z − Z 0 )
(1.1)
ahol c a kameraállandó, ξ ,η a mért képkoordináták, ξ 0 ,η0 a főpont koordinátái, X , Y , Z a terepi pont térbeli koordinátái, valamint X 0 , Y0 , Z 0 a vetítési centrum térbeli koordinátái. A képletben szereplő rij a forgatási mátrix elemeit jelenti, melynek felépítése ϕ , ω , κ forgatási sorrend szerint
Rϕωκ
cos ϕ cos κ + sin ϕ sin ω sin κ = cos ω sin κ − sin ϕ cos κ + cos ϕ sin ω sin κ
− cos ϕ sin κ + sin ϕ sin ω cos κ cos ω cos κ sin ϕ sin κ + cos ϕ sin ω cos κ
sin ϕ cos ω
cos ω cos ϕ − sin ω
(1.2)
A belső tájékozási paraméterek közé soroljuk: c,ξ 0 ,η0 , a külsők közé pedig: X 0 , Y0 , Z 0 , rij . A digitális fotogrammetriai csomagokban megtalálható az ortofotó-előállítás függvénye, menüje. Ezen alkalmazások azonban zárt programok, a felhasználó nem tekinthet bele a forráskódba, nem nézheti meg a használt algoritmust. Teljeskörű minőségvizsgálatnál merült fel annak igénye, hogy fejlesszünk egy olyan ortofotószoftvert, amelyben ellenőrizhetjük a kimenet, vagyis a kép előállítását. A megoldáshoz egy matematikai modellező környezetet (Mathworks Matlab) választottam, mert segítségével •8 •8 •8
a numerikus feladatok megoldása jóval egyszerűbbnek tűnt a felhasználni kívánt eljárásokat matematikusok tesztelték „rapid prototyping” eszköznek tekintve a fejlesztés jóval gyorsabban végrehajtható, mint egy szokásos programfejlesztői környezetben.
A fejlesztés eredményeként kapott szoftver előnye továbbá, hogy •8 •8
•8
az egyetemi oktatásban kiválóan használható az ortoprojekció gyakorlati illusztrációjaként is az egyes lépésben végrehajtott megoldások, pl. az újramintavételezés (resampling) más eljárásokkal egyszerűen helyettesíthetők, így a téma részeinek fejlesztése is, vagy a fokozatos továbbfejlesztés megoldott az algoritmus köré teljes alkalmazás fejleszthető, esetleg a feladat szerint optimalizált módon.
A kidolgozott eljárást Balatonfüred térségében teszteltük elektromos vezetékhálózat terepi térképezésénél háttérként. A tesztterület egy részletének ortofotója látható a következő ábrán [Detrekői-Barsi 2001]:
19. ábra Balatonfüred egy részletének digitális ortofotója A kutatás során felmerült annak igénye is, hogy a kiszámított ortofotót vajon hogyan lehet korszerű térinformatikai rendszerbe integrálni, ott a további lépésekben effektíven használni. Szintén nagyon érdekes kérdésnek tűnt annak összehasonlítása, hogy a meglehetősen számítás- és adatigényes eljárás mennyivel jelent többet egyszerűbb módon végrehajtott képátalakításnál. A kérdés megválaszolásához többféle transzformációs modellel vetettük össze az ortoprojekciót. Lényeges különbségnek adódott, hogy a termék szempontjából a terep domborzata a meghatározó; sík területen nem érdemes a nagyobb számítással járó, pontosságban nem jobb ortoprojekciót választani. Dombos illetve hegyes terep esetén viszont az egyetlen lehetséges mód elfogadható geometria előállításához.
20. ábra Átalakított digitális kép vektoros térképpel Az egyszerűbb megoldások mellett szól viszont az, hogy azok lényegesen egyszerűbben valósíthatók meg GIS környezetekben, sőt egyes rendszerek már beépítették azokat. [Detekői-Barsi 2001][Récsei-Barsi 2000]
Az ortofotók előállításával azonban új megjelenítési lehetőségek születtek. Ha az ortoprojekcióhoz nélkülözhetetlen domborzatmodellre „ráfeszítjük” az ortofotót, látványos 3D-s képeket, modelleket tudunk alkotni. Ennek a látványképnek a felhasználása elképzelhető: •8 •8 •8
•8
vizualizációként olyan felhasználók számára, akiknek a légifényképek és a térképek használata nehézkes vagy nehezen érthető mérnöki és építészeti tervezésben előállított épület és más objektumok valóságosabb terepi megjelenítése a cél további szimulációk alapja, mint például árvíz és hasonló természeti katasztrófahelyzetek elemzése, telekommunikációs feladatok megoldása, katonai stratégiai tervezés játékprogramok hátterének készítése.
Budapesttől északra, Budakalász térségéről készített perspektív látványkép látható a 21. ábrán [Barsi 2000d].
21. ábra Budakalász 3D-s megjelenítése digitális domborzatmodellel és ráfeszített ortofotóval A fejezetben már említett továbbfejlesztés egyik lehetőségének a hatékony kóddal megoldott szoftverváltozat tűnt. A „rapid prototyping” móddal kidolgozott eljárást ezért nagyobb teljesítményű (nagyobb képméretet gyorsabban kezelni tudó) alkalmazásba építettük be. Itt a fejlesztéshez már kimondottan effektív rendszert, a Microsoft Visual Studio-t választottam C++ nyelvvel. Ennek a munkának eredményeként az ortofotó nagyobb, valóságos digitális légifénykép méretekkel is megvalósítható volt. Előnyként említhető, hogy a „rapid prototyping” megoldáshoz képest •8 •8
az alkalmazás „kulturáltabb” külsőt, grafikus felhasználói felületet kapott a matematikai modellező környezettől függetlenül is futtatható;
ugyanakkor megőrizte a modularitás, bővíthetőség, betekinthetőség és oktathatóság előnyeit. A munka eredményeként kapott szoftvert BORS-nak, Budapesti Ortorektifikációs Szoftvernek neveztük el. [Barsi et al. 2003a] A digitális ortofotók országos előállításához alkalmas digitális domborzatmodellre van szükség. A Földmérési Intézet Térinformatikai Osztálya megbízásából ezért megvizsgáltuk, hogy a korábbi felmérésekkor készített térképi domborzati tartalom alkalmas-e jó minőségű ortofotó készítésére. A vizsgálat megállapította, hogy az ország nagyobb részén használhatók a korábbiakban készített felméréssel és esetleges apróbb felújításokkal készített régebbi topográfiai térképek. 3.4. Automatikus adatnyerés és objektumfelismerés 3.4.1. Objektumfelismerés általában A digitális fotogrammetria talán legnagyobb áttörését az jelenti, ha nem csupán a kapott képek geometriai feldolgozását, tájékozását, hanem annak tartalmi feldolgozását is nagyobbrészt automatizálni tudjuk. Az automatizálás rengeteg emberi munkát, ezen keresztül pedig időt és pénzt takarít meg. Az alaposan tesztelt algoritmusokkal elképzelhető a homogén, jó minőségű kiértékelés is. Az automatizált képkiértékelés műveletének egyik kulcsfontosságú lépése az adatnyerés automatizálása. Manapság a szenzorok fejlődésével jóformán teljesült a teljesen zárt technológiájú képalkotás; a légifényképező repülőgép fedélzetén működő berendezéseknek és számítógépeknek köszönhetőn gyakorlatilag a leszállás pillanatára rendelkezésre állnak a szükséges adatok. A további munkában a megfelelő jellemzők (features) megtalálása igen lényeges. Napjaink kutatásának egyik kiemelkedő jelentőségű területe az alkalmas jellemzők előállítása, levezetése (feature extraction). A megfelelő sajátosságok fontosságát aligha kell hangsúlyozni általában a műszaki területeken; a digitális képek elemzésében pedig a nagy adatmennyiség és a gyakran fellépő hasonlóságok miatt a pontos valóság-modellek és a hozzájuk tartozó jellemzők ismerete nélkülözhetetlen. Az alkalmas jellemzők birtokában történhet meg a képen látható objektumok felismerése (object recognition). Ebben a tevékenységben a számítógépes szoftver feladata immár nem egy újabb kép előállítása – mint amit a képfeldolgozásról tart a legtöbb szerző a szakirodalomban –, hanem a képek alapján a leképződött terepi objektumokat kell egyrészt lehatárolni, másrészt az így szegmentált részlet jellemzőit levezetni, ezt követően pedig a megfelelő kategóriába kell sorolni [Liedtke-Ender 1989]. Az objektumfelismerés során nem egyszerűen csak kategorizálni, hanem a kategóriák, csoportok közötti műveletek révén összekapcsolásokat, szerkesztéseket és esetenként egyszerűsítéseket kell megvalósítani [Bässmann-Kreyss 1998]. Mivel a felismerés során a képből információt tudunk levezetni, amely már a képtől független, így mondhatjuk azt is, hogy a képet megértettük. Innen van a tématerület másik ismert elnevezése: képértés (image understanding). Az objektumfelismerés területén két fő csoportot lehet megkülönböztetni, melyek a mesterséges tereptárgyak azonosításával foglalkoznak. Ebből a csoportból az első az épületek felismerése, a másik pedig az utak, az úthálózat azonosítása [Baltsavias et al. 2001, Gruen et al. 1997]. Az épületfelismerés kapcsán hadd mutassak be egy példát annak illusztrálására, hogy mennyiben tér el a felismerés az osztályozástól, illetve
mennyivel jelent több „intelligenciát” a képek ilyen jellegű elemzése az alacsonyabbnak tekintett képfeldolgozástól [Lang 1999]. A légifényképeken végrehajtott alkalmasan paraméterezett szűrésekkel meg lehet jelölni a digitális kép azon pontjait, amelyek az épületek éleit, például a tető határvonalait jelentik. A konvolúciós (élkiemelő eljárások, pl. Sobel) vagy egyéb algoritmusokon (pl. Canny) alapuló szűrés eredményeként a digitális kép éleket jelentő pixeljeit kapjuk meg [Canny 1986]. Ezen pixelek megfelelő technikával, pl. Ramer algoritmussal vektorizálhatók [Halcon]. Ennyiben a művelet még a képfeldolgozás területére tartozik. Azt követően azonban az egyes élek helyzete szerint az épület szegleteit képezhetjük. Ehhez a lépéshez már modellel kell rendelkezni, amelynek megfelelően a lehetséges építési módok szerint futhatnak be az élek, így az élek találkozásai csoportosíthatók, összevonhatók és kiértékelhetők [Lang 1999].
22. ábra Saroktípusok [Bässmann-Kreyss 1998] Amennyiben a megtalált élek lehetséges csomópontot képeznek, az azokból előállított csomópontok fognak a további fázisokban kiindulásként szerepelni. A felismerési módszertan következő szakaszában a csomópontok közötti lehetséges kapcsolatokat, a lehetséges topológiát kell megvizsgálni. Ennek a topológiai elemzésnek az eredményeként győződhetünk meg arról, hogy az azonosított épületcsomópontok milyen módon tartoznak össze, hogyan kell ezután belőlük az épületeket megkonstruálni [Förstner 1991, Lang 1999].
23. ábra Épületek szegletei alapján felépíthető topológia
Ennek a csoportosítási műveletnek az eredménye már testváz vagy testmodell lehet, amit alkalmas megjelenítéssel akár a képpel is össze lehet vetni, vagy további elemzéseknek képezheti az alapját. Az ismertetett alapalgoritmushoz nagyban hasonlít az útfelismerés esete. Az utaknál élkiemeléssel meg lehet jelölni az útburkolati jeleket, továbbá a burkolat széleit. Az elemzési fázisban a már vektorizált élekből kell megszerkeszteni az utat, figyelembe véve az élek párhuzamosságát, hosszabb szakaszon keresztül is fennálló konstans távolságát, illetve a két él közötti megközelítőleg homogén intenzitásértékeket. Ez utóbbi hivatott kifejezni azt, hogy az utak szélein belül a burkolat anyaga megközelítőleg hasonló és jól elkülöníthető a környezetétől [Li 1997, Steger 1998, Wiedemann 2002]. Mind az épület, mind az útfelismerés algoritmusainak egyik nagy nehézségét a rengeteg zavaró körülmény jelenti. Ilyen zavaró hatással találkozunk a kitakaráskor, ahol az előrébb-hátrább lévő térbeli elhelyezkedés következtében nem lehet a teljes objektumot, annak éleit látni, következésképp az élekre alapozott algoritmusoknak a bemenete hiányos lesz. Ilyen kitakarást jelentenek például a fák. Hasonlóképpen gondot okoz a felismerésben az, hogy a tárgyak anyagainak megváltozása, a változás határa •8 •8
vonalként jelentkezik, noha nincs erre az élre szükség az anyagok hasonlósága vagy a fényviszonyok alakulása miatt eltűnnek vonalak, élek, amelyek viszont nélkülözhetetlenek a pontos detektáláshoz.
A forgalmasabb utak esetében sajnos a homogén burkolat sem mindig teljesül, mert a kátyúzás hatására kevert intenzitású foltok is keletkeznek, illetve a járművek által okozott szabályos sötétebb-világosabb csíkok figyelhetők meg.
24. ábra A járművek okozta anomáliák az utak burkolatán
3.4.2. Objektumfelismerés LIDAR-adatokból A távérzékelés és a fotogrammetria egyaránt saját új eszközének tekinti a lézeres letapogatás elvén működő rendszert. Az ismert LIDAR (Light Detecting and Ranging) kifejezés a lézersugárral történő távolságmeghatározást emeli ki, amelynek segítségével megfelelő sűrűségben alkalmazva megkaphatjuk a kérdéses objektum felületmodelljét. Amennyiben a szenzort és annak kiegészítő berendezéseit repülőgépes hordozóra szerelik, légi lézerszkennerről (airborne laser mapping vagy airborne laser scanning) beszélhetünk. Földi alkalmazásokban ezzel szemben földi lézerszkennernek nevezik a berendezést. A LIDAR működési elve alapvetően egyszerű: lézerágyú rövid impulzust bocsát ki, méri a jel kibocsátástól a visszaérkezésig eltelt időt, majd a fénysebességet alapul véve meghatározza a szenzor és a tárgy távolságát. Ez a távolságmérés egészül még ki a szenzor helyének és irányának meghatározásával, amit a kiegészítő berendezések, a GPS és az INS valósít meg. A pontosan meghatározott szenzorhely és helyzet ismeretében a kérdéses irányban meghatározott távolsággal már térbeli derékszögű koordinátákat vezethetünk le. A légi szenzorok esetében többféle működési elvvel találkozik a felhasználó. A gyakrabban megvalósított mérési technikákat a [Barsi et al. 2003c] ismerteti. Magyarországon is megtalálható földi berendezésről részleteket a [www.cyra.com] ad meg. A lézerszkennerrel nyert adathalmaz tehát 3D-s pontfelhő, amelynek feldolgozásakor kell a nagy adatmennyiségből előállítani a szükséges információt. A légi lézeres felméréskor kapott pontfelhőből (25. ábra) kell tehát a pontfelhőt objektumokká konvertálni. Ezt a konverziót objektumfelismerésnek nevezzük, melynek folyamán például épületeket, közlekedési létesítményeket tudunk térképezni, illetve azok bizonyos jellemzőit lehet meghatározni.
25. ábra Légi lézeres felméréssel kapott pontfelhő megjelenítése Az ábrán látható részlet egy amerikai autópálya egy részletét ábrázolja. Célunk, hogy a pontok alapján meg tudjuk különböztetni az utat, illetve az azon haladó járműveket. A járműfelismerés megoldásával a pontfelhő azon pontjait tudjuk összefoglalni, amelyek egy járműről verődtek vissza. A pontfelhő további elemzésével •8 •8
megadhatjuk a vizsgált jármű kategóriáját (pl. személygépkocsi, kisteherautó stb.), később esetlegesen a pontosabb típusát a járműpontok eloszlása és különösen azok torzulása alapján becslést adhatunk a jármű sebességére
•8 •8
a járművek adott útszakaszra eső számából levezethetünk pillanatnyi forgalmi jellemzőket (pl. forgalomsűrűség) a járműszám és -kategória ismeretében az út terheltségéről kaphatunk pillanatképet [Lovas-Barsi 2002b].
Az objektumok felismerésének gyakran alkalmazott első lépése az adathalmaz szegmentálása, vagyis olyan felbontása, amelyek már egységként kezelhetők, s számos jellemző levezetésével elemezhetők. Ennek a szegmentálási munkának több módszere képzelhető el. Egy lehetséges megoldást közöltünk [Lovas-Barsi 2002b]ben. A szórás alapján végrehajtott szegmentálást követően kapott egységekre négy, illetve hat paramétert vezettünk le, melyek főkomponens-elemzése rámutatott arra, hogy a vizsgálatban szereplő járműosztályok szétválaszthatók, következésképp az automatikus osztályozásuk megvalósítható. A LIDAR adatok közlekedési felhasználását célzó kutatások a közelmúltban indultak, eddigi eredményeink igen biztatóak. 3.4.3. Útkereszteződések felismerésének fejlesztése Az objektumfelismerés témakörben jelentősebb időtartammal és eredménnyel az optikai képek feldolgozását nevezném meg. Ennek a területnek az eszközfejlesztéséhez sorolható a tematikus térképezés fejezetben leírt módszerek kidolgozása, illetve speciális operátorok fejlesztése. Az útkereszteződések igen sok szempont szerint csoportosíthatók. A képelemzés felől megközelített csoportosítás szerint vannak •8 •8
szintbeli és külön szintű csomópontok.
A felosztás egyben tükrözi azt is, hogy mekkora a csomópontok bonyolultsága, következésképp a felismerés nehézsége. A csomópontok felismerésében továbbá igen fontos tényező annak helye: belterületi vagy külterületi. Ez utóbbi csoportosítás szerint a csomópont környezetének összetettsége, a kitakarások mértéke állapítható meg. Az útkereszteződések vizsgálatában első szintű megközelítésként a Veszprémet elkerülő körgyűrű egy csomópontjának feldolgozását mutatom be. A kiindulási képanyag színes ortofotó, amelynek tematikus osztályozásával kiemelhetők az úttest pixelei. Az osztályozáshoz az útfelületből mintákat, tananyagokat kell lehatárolni, majd a kiválasztott maximum likelihood osztályozó paramétereit kell meghatározni. Az osztályozó a normális eloszlás valószínűségi sűrűségfüggvényét használja, ehhez tehát az egyes sávokban (RGB) számított intenzitásátlagokra és az intenzitásértékek kovariancia-mátrixára van szükség. A kiszámított függvényparaméterekkel így a feldolgozás elvégezhető. Eredményként kapjuk az útpixeleket.
26. ábra A Veszprémet körülvevő körgyűrű egy csomópontjáról készült színes ortofotó tematikus osztályozása Az objektumfelismerés folyamatában tehát elsőként lehatároltam azokat a pixeleket, amelyek a pixelek intenzitásértékei alapján az objektumot jellemzik. Az eredményképen is megjelenített piros pixelek kirajzolják a csomópont képét. A feldolgozás ebben az esetben pixel alapú, csupán képfeldolgozási eljárást használ, hiszen a bemenő tónusos képből eredményül tematikus képet ad. A műveletben természetesen nemcsak a használt statisztikai módszer alkalmazható, hanem más, mintaosztályozó eljárás is. Az objektumfelismerés következő lépésében az így kiemelt pixelek további elemzése következik. Ennek az elemzésnek a megoldására manuális módszerek adottak: a tapasztalt kiértékelő személy a megjelölt (kiemelt) pixelek alapján vektoros térképet szerkeszthet. A budapesti Kacsóh Pongrác úti felüljáróról készült, szintén digitális ortofotó segítségével kiemelhetjük az útpixeleket (27. ábra).
27. ábra A Kacsóh Pongrác úti felüljáró tematikus osztályozása A kiemelést követően a kiértékelésben manuális akár térinformatikai rendszer számára használható vonalas (vektoros) kiértékelés hajtható végre, amely további elemzések és megjelenítések alapjául szolgál. A kapott kiértékelt úthálózat elemeihez
további felszíni információk is rendelhetők, amelyeket térinformatikai rendszerben hasznosíthatunk [Bakos 2001, Barsi et al. 2003b]. Az egyik legkézenfekvőbb alkalmazás a járműnavigáció [Barsi 2002a, Barsi et al. 2003b].
28. ábra Minta a manuális úthálózati kiértékelésből
29. ábra További terepi adatok kapcsolása a nyers úthálózathoz
A fejlesztésben azonban nyilvánvalóan fő célként lehet megfogalmazni a minél magasabb szintű automatizáltságot, hogy az élő emberi munka mértékét lehetőség szerint csökkentsük. Ennek érdekében az egyik továbbfejlesztési lépésben megkereshetjük a tematikus osztályozásból kapott pixelek határait határvonalkereséssel (30. ábra), illetve generálhatjuk a kapott felületelemek gerincvonalát.
30. ábra Osztályozott pixelek határvonala A gerincvonalak alapján ismét további, főként emberi beavatkozással viszonylag egyszerűen keletkezik a kívánt úthálózati térkép. A szintbeli kereszteződések automatizált feldolgozásának irányába tett legjelentősebb fejlesztésünk a mesterséges neurális hálózatok (artificial neural network) alkalmazásával kidolgozott operátor. A projekt a Junction Extraction by Artificial Neural Network System elnevezést kapta, amit röviden JEANS-nek neveztem el. A kifejlesztett operátorunk lényege, hogy a fekete-fehér digitális ortofotókból csomópontminták kivágásával, majd a megfelelő paraméterek (features) levezetésével neurális hálózat tanítható, amely képes ismeretlen képrészletek automatikus elemzésére és csomópont felismerésére [Barsi et al. 2002b, Barsi-Heipke 2003d]. A JEANS-operátorának jellemzőit képfeldolgozási lépésekkel állítottam elő. A jellemzők alapvetően két modellből származnak (32. ábra): •8 •8
raszteres információból vektoros információból.
Az operátor működése során sikló ablakot alkalmaz, amely végigszalad a képen és az ablak megjelölt középponti pixeléhez rendeli hozzá a „csomópont-nemcsomópont” kódot. Az ablak területére eső pixelek kerülnek felhasználásra mind a raszteres, mind a vektoros jellemzők előállítása folyamán. A jellemzők kiválasztása alapos statisztikai elemzéssel történt: a számos levezett mennyiség grafikus és numerikus vizsgálatával a függetlennek bizonyult, legtöbb „információtartalmat” és főként a „csomópontnemcsomópont”-szétválaszthatóság biztosítását jelentő jellemzők maradtak meg. (Modern szóhasználattal nevezhetnénk ezt a fejlesztési lépést a jellemzők adatbányászatának (data mining) is, amennyiben a számos jellemző közül a kiválasztási célú elemzést elfogadjuk az adatbányászat egyik részének.)
A raszteres jellemzők levezetése az ablakon belül használt ún. kernelből történt: intenzitásátlagok, szórások stb. A vektoros jellemzők előállítása több lépésen keresztül valósult meg. Elsőként megfelelően paraméterezett, főként út- és vonalas képtartalomra érzékeny élkeresési eljárást hajt végre az operátor. Ennek eredményeképp kapott élpixeleket simításon és generalizáláson keresztül vektorokká konvertáljuk át, majd számítjuk a vektorok kulcsadatait: kezdő- és végpont koordinátáit, hosszát és irányát. A kinyert éleket ezután egy csomópont-modellbe visszük be, amely egy feltétel kiértékelésével szűri a „hasznos” éleket.
31. ábra A csomópont-modell kör-feltétele A feltétel lényege, hogy a csomóponthoz tartozó utak széleit találjuk meg élkereséssel. Ezeknek az élvektoroknak következésképpen át kell haladniuk a csomópontot egyszerűen leíró, modellként szolgáló körön. A kör mérete nyilvánvalóan méretarányfüggő (scale variant) és az út-rendűségnek is függvénye. Továbbá lényeges, hogy a vektorok irányultsága (a kezdő- és végpont sorrendje) indifferens. A körön áthaladó éleket megtartjuk, míg a feltételt nem teljesítő elemeket kihagyjuk a további számításból. A megoldással biztosítható, hogy az operátor gyakorlatilag teljesen forgás-invariáns (rotation invariant) legyen. A feltételt kielégítő vektorokból számított jellemzők kerülnek aztán be a raszteres jellemzőkkel együtt a statisztikai elemzésbe, majd a mesterséges neurális hálózat tanítási folyamatába [Barsi et al. 2002b]. A neurális hálózat a tanítási lépést követően válik arra képessé, hogy a levezett jellemzők alapján eldöntse, hogy a kérdéses pozícióban álló sikló ablak csomópontot tartalmaz-e, s utasítja vissza azokat, amelyek csak párhuzamos élekből álló útszakaszok, illetve teljesen más felszínborítottságot mutatnak. Az operátor tesztelésekor összehasonlító elemzést végeztem arra vonatkozóan, hogy a hagyományos osztályozó eljárások (beleértve a statisztikaiakat is) milyen mértékben tudják megkülönböztetni minták alapján a csomópont és nemcsomópont bemeneteket. Az eredmények a mesterséges neurális hálózatok jobb felismerő képességét bizonyították [Barsi et al. 2002b].
32. ábra A JEANS-operátor paramétermeghatározási és végrehajtási stratégiája
105 100 Linear Discriminant
95
Minimum Distance
90
Maximum Likelihood NN1 (3-3-1)
85
NN2 (3-7-1) 80
NN3 (9-9-1)
75 70 Total accuracy % Junction accuracy %
Non-junction accuracy %
33. ábra Hagyományos és neurális módszerek összehasonlítása a felismerésben Az operátorral végrehajtott teszteket Frankfurt am Main térségéről készült 0.4 m-es geometriai felbontású fekete-fehér ortofotókon hajtottam végre. A tesztek érdekesebb eredménye néhány példán keresztül a 34. ábrán látható [Barsi-Heipke 2003d].
34. ábra A JEANS eredményképe A JEANS fejlesztése rendszerintegrációs szempontból is érdekes, hiszen több piaci és saját fejlesztésű szoftver összehangolására is szükség volt. A kialakított környezet rendszertervét a következő ábra illusztrálja:
Training set
Human expert
tuning
Training Phase
Matlab Neural Network Toolbox
Halcon C++
Parameter files
Control file
link link
link
Output image
Input image Application Phase
35. ábra A JEANS rendszerének áttekintő terve A Hannoveri Egyetem Fotogrammetria és Geoinformatika Intézetével közösen végzett kutatás jelenleg is tart, a módszer pontosítása, robusztusságának növelése és méretarány-függetlenség elérése a főbb célkitűzések.
3.4.4. Új neurális hálózattípus objektumazonosításra Az útkereszteződések topológiájának elemzése és a JEANS projekt neurális hálózati alkalmazásának kutatása közben merült fel bennem az az igény, hogy az útkereszteződéseket alkotó utakat irányfüggetlenül, sőt topológiailag helyes struktúrában kellene ábrázolni, kezelni. Ennek a módszertani fejlesztésnek az eszköze pedig a mesterséges neurális hálózat legyen. Viszonylag hamar világossá vált az is, hogy a megoldás menetébe az önszerveződést (self-organization) kellene integrálni [Carpenter 1989, Carpenter-Grossberg 1991]. Az automatikus adatelemzés, az adatbányászat, sőt a távérzékelés is használja a T. Kohonen-féle önszerveződő neurális hálózatokat, eredeti nevén az önszerveződő leképezéseket (self-organizing map – SOM), vagy önszerveződő jellemzőleképezéseket (self-organizing feature map – SOFM) [Kohonen 1982, Kohonen 1989, Kohonen 1997]. A SOFM lényege, hogy szabályos rácsba rendezett neuronok tanítására versengő tanulást (competitive learning) alkalmazunk. E tanulási módszerben a győztes neuron nyer, az alkalmazott elv a „győztes minden visz” (winner-takes-all) [Carpenter 1989]. A rács lehet négyzet, háromszög vagy hatszögű. A tanulás során először ki kell választani a győztes neuront. A kiválasztás során az adatpontok és a neuronok közötti hasonlóságot kell mérni, legegyszerűbb esetben valamely távolságnormával. A gyakorlatban az euklideszi távolságnormát használják leggyakrabban.
c = arg min { x − m i i
}
(1.3)
ahol c a győztes neuron azonosítója, a neuronok koordinátavektora mi = [ µi1 , µi 2 ,..., µin ] ∈ \ n T
(1.4)
az adatpontok koordinátavektora pedig x = [ξ1 , ξ 2 ,..., ξ n ] ∈ \ n T
(1.5)
A nyertes meghatározása után annak szomszédjait is kikeressük, s a győztes, valamint a szomszédok súlyait módosítjuk:
mi (t + 1) = mi (t ) + hci (t ) [ x − mi (t )]
(1.6)
amely összefüggésben hci (t ) az időfüggő szomszédságfüggvény, gyakorlatilag α (t ) if i ∈ N c (t ) hci (t ) = ® ¯0 egyébként
(1.7)
A fenti összefüggésben szereplő α (t ) a tanulási függvény (learning rate), N c (t ) pedig a győztes neuron időfüggő szomszédsága. A szomszédság kezelésére szolgál a szabályos rács-struktúra.
A győztes neuron kiválasztása, a szomszédok kikeresése, továbbá a súlymódosítás iteráltan valósul meg. Az iterációban előre adott lépésszámban ismételjük a fenti lépéseket, közben a szomszédság és a súlymódosítás mértékét előre adott, monoton csökkenő függvény szerint változtatjuk. A teljes algoritmus kétszer fut le: •8 •8
egy durvábban módosító, ún. ordering-fázisban és egy finomhangoló ún. tuning-fázisban.
A két iterációs blokk algoritmusa ugyanaz, a paraméterezésben térnek el egymástól [Kohonen 1989, Kohonen 1997]. Az útkereszteződések, közlekedési csomópontokra végzett első kísérletek azt mutatták meg, hogy a szabályos rácsba szerveződő neuronokkal nehézkesen lehet a topológiailag kötött csomóponti struktúrát kezelni. Utak szakaszaira jól használható a SOFM megoldás is, [Doucette et al. 2001] cikke is a tapasztaltakat igazolja, noha eljárásuk előkészítése (preprocessing) kismértékben eltért az általam használt megoldástól. A SOFM kiváló tulajdonságainak megőrzésére törekedve lehet az eljárást általánosítani. Ennek az általánosításnak a lényege, hogy a neuronok nem rácsba szerveződnek, hanem egymáshoz viszonyított topológiai helyzetüket egy irányítatlan gráffal írjuk le. Az általános eljárás elnevezése: önszerveződő neurongráf (selforganizing neuron graph – SONG). Az algoritmus megtartja a győztes kiválasztásának lépését, sőt a súlymódosítás végrehajtását is. A szomszédok kiválasztására azonban más, új eljárást kell bevezetni. Ehhez szükséges, hogy a neuronok alkotta gráf leírására egy neuron-koordinátalista, valamint az illeszkedési mátrix (adjacency matrix) legyenek adottak. Megjegyzem, hogy a hatékony tároláshoz ez utóbbi megvalósítható más szoftvertechnikai megoldással is, pl. listával. A mátrix nullákból és egyesekből álló négyzetes mátrix, amely irányítatlan gráf esetén szimmetrikus. A mátrix annyi sorból és oszlopból áll, ahány neuron alkotja a gráfot. A mátrix Aij elemei kifejezik, hogy az i. neurontól él vezet a j. neuronhoz. A szimmetria miatt Aij = A ji . A mátrix tulajdonképpen csak a direkt összeköttetéseket mutatja meg, segítségével azonban levezethetjük a többi nem közvetlen összekötést is [Bollobás 1998, Dijkstra-Feijen 1988]. Ennek kiszámításához az illeszkedés fogalmát kell kiterjeszteni. A kiterjesztett illeszkedés azt a cél szolgálja, hogy bármely gráf szögpont bármely másik szögpont közötti minimális számú élen keresztülvezető kapcsolat jellemezhető legyen. Belátható, hogy az összes szögpontra a kiterjesztett adjacencia-mátrixnak maximális értéke legfeljebb a szögpontok száma lehet. Jelölhetjük így tehát az eredeti illeszkedés-mátrixot A1 -el, a kiterjesztettet A n -nel, s nevezhetjük n-ed fokú illeszkedés-mátrixnak is. Ezzel összhangban az eredeti mátrix az elsőfokú illeszkedésmátrix. Bármely n-nél kisebb k-ra képzett mátrix részlegesen kiterjesztett, vagy k-ad fokú illeszkedés-mátrix ( A k ) (36. ábra). A k-ad vagy n-ed fokú adjacencia-mátrix több módszerrel is számítható. A gráfelmélet legegyszerűbb, többször tesztelt algoritmusa a hatványozási módszer (power method). Ennek az eljárásnak a lényege, hogy iteratíven számítjuk az adjacencia-mátrix hatványait szorzással, közben a folyamatosan kapott mátrixok elemeit teszteljük. A végeredményt jelentő kiterjesztett illeszkedés-mátrixba csak az az érték kerülhet, amely helyen a szorzást megelőzően zérus állt [BalakrishnanRangenathan 2000, Bell-Iida 1997].
36. ábra n-ed fokú illeszkedés-mátrix értelmezése A SONG algoritmusában az iteráció előtt ki kell számítani a kiterjesztett illeszkedésmátrixot. Mivel a futás során a neuronok topológiája nem változik meg, így az illeszkedés-mátrixot csak egyszer kell létrehozni és a kiterjesztett illeszkedés-mátrix elemei sem fognak megváltozni. Ez azt jelenti, hogy a szomszédság mértéke az illeszkedést figyelembe véve állandó; ez pedig az algoritmust jelentősen egyszerűsíti. A SONG esetében is az iteráció első lépése a győztes kiválasztása. Ezt követi a szomszédok kiválogatása, amelyhez szükséges egy monoton csökkenő távolságfüggvény (a SOFM-hoz hasonlóan). A távolságfüggvény az adjacencia csökkenését fejezi ki, nem koordinátákból számított távolságként értelmezendő. A függvény által szolgáltatott távolsággal, továbbá a kiterjesztett illeszkedés-mátrix-szal kiválaszthatjuk a győztes neuron szomszédait. Ezt a lépést követően a SOFM súlymódosító szabályát kell alkalmazni: mi (t + 1) = mi (t ) + hci (t ) [ x − mi (t )]
(1.8)
α (t ) if A cik < d (t ) hci (t ) = ® ¯0 egyébként
(1.9)
és
ahol α (t ) a SOFM-hoz hasonlóan tanulási függvény, d (t ) viszont egy alkalmasan megválasztott távolságfüggvény. A cik a k-adfokú illeszkedés-mátrix győztes sorának ( c ) i. eleme. A leírt általánosítás az illeszkedés információn alapul, mely szerencsés módon nem változik meg a futás alatt. Ennek segítségével természetesen le tudjuk írni az eredeti SOFM-struktúrákat is, hiszen gráfként reprezentálhatunk akár szabályos rácsot is [Barsi 2003e, Barsi 2003f]. A struktúra további igen érdekes változata a neuronlánc (neuron chain), amikor is egyetlen sorba szerveződnek a neuronok. A használatukat a 38. és 39. ábrákon mutatom be. Az újonnan kidolgozott neurális hálózattípus, a SONG működését többféle tesztben vizsgáltam meg. A tesztekben alkalmazott főbb vezérlő adatokat az 1. táblázatban mutatom be.
Útkereszt. O T Epoch
α st αe dst de
sinc(x) O T
Velence O T
O betű O T
A betű O T
R betű O T
Keretjel O T
Pentagon O T
50
300
100
2000
30
2000
100
3000
100
5000
100
2000
100
1000
300
10000
0.9
0.01
0.5
0.08
0.5
0.01
0.5
0.1
0.01
0.005
0.01
0.005
0.9
0.1
0.01
0.003
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
2
1
50
1
50
1
6
1
3
1
3
1
4
2
6
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
méret db α st - kezdő tanulási arány, α e befejező tanulási arány, dst kezdő szomszédsági távolság, de befejező szomszédsági távolság, méret az adatpontok száma, db a neuronok száma a gráfban 355 4
400 50
1149 50
438 8
153 5
470 7
478 13
1 3302 20
1. táblázat A SONG-tesztek főbb vezérlő adatai Az első kísérlet egyszerű útkereszteződés detektálását mutatja, ahol 0.4 m-es geometriai felbontású fekete-fehér ortofotón kellett a kereszteződést megtalálnia. A SONG bemenetéül néhány előfeldolgozási művelet révén jutottam: a kép pixeljeit intenzitás-küszöbözéssel (intensity threshold) szegmentáltam [Barsi 2003f]. A neuronok kezdetben a kép kezdőpontjában helyezkedtek el.
37. ábra Egyszerű útkereszteződés detektálása A következő kísérletben matematikai függvényt közelítettem neuronlánccal. A függvény a sinc(x) volt. A 400 generált függvényponthoz 50 neuronból álló lánc „igazodott” [Barsi 2003e]. A kezdeti lánchelyzet y = 0.5 volt.
38. ábra A sinc(x) közelítése neuronlánccal
A lánc távérzékelt felvétel elemzésében is használható, amit egy Velencéről készült IKONOS-képen illusztrálok. A kép 1 m-es felbontású (felbontás egyesített – resolution merged) színes kép, mely 2000. november 27-én készült. A kép közepén húzódik keresztül a híres Canale Grande, amelyhez illeszkedett a neuronlánc. A kép előfeldolgozásában szabály alapú (osztályozásos) szegmentálást végeztem, ahol a szabályok a következők voltak: 0 < R < 40 60 < G < 100 40 < B < 100
(1.10)
Az osztályozás után mediánszűrővel és dilatációval javítottam az adatpontokon, majd minden 10. pixelt kiragadva mintavételeztem. Az ugyancsak 50 neuront tartalmazó lánc kezdeti helyzete a kép közepén vízszintes vonalban volt. A teszt kiindulási adatai és a futás eredménye a következő ábrán láthatók [Barsi 2003f]:
39. ábra A velencei Canale Grande szegmentálása és detektálása SONG-gal Az újabb SONG tesztben karakterek képét vettem alapul. Három érdekesebb karaktert választottam ki: O, A, R. A karakterek képét szövegszerkesztő kellően felnagyított képernyőjéről vettem le. A mintavételezés után a tanulás sorra azonosította a karakterek jellegzetes helyeit [Barsi 2003e].
40. ábra Karakterek detektált állapotai A fotogrammetriai belső tájékozás digitális megvalósítása a keretjelek megkeresése. Ennek a keresésnek a digitális képfeldolgozásban használt módszerei a különféle képillesztési eljárások (matching). Az önszerveződő neurális gráffal új megoldás kínálkozik a képillesztés végrehajtására.
A digitális kép keretjelét gráfként is megadhatjuk.
41. ábra A keretjel gráf-definíciója A SONG-eljárásba ezután már bevihető, majd a paraméterezést követően detektálható a keretjel helyzete. A inicializáláskor kiválasztott neuronkoordináták véletlenszerűen felvett képhelyen voltak [Barsi 2003f].
42. ábra A megtalált keretjel-helyzet a gráffal Végezetül az utolsó tesztben hadd mutassam meg, hogy hogyan közelít a neurongráf a célállapothoz! A teszt a washingtoni Pentagon épületének szeptember 11-e után, 2002. augusztus 2-án készült képén történt. A képet a Quickbird készítette színesen, 0.6 m-es geometriai felbontással. A teszteléshez az épület kettős ötszög formáját lokális rendszerben durván leegyszerűsítve, de topológiailag korrekten adtam meg [Barsi 2003e].
43. ábra A kezdeti neurongráf a Pentagon-teszthez
Az épület tetejét jelentő pixeleket maximum likelihood osztályozással nyertem ki úgy, hogy a világosabb és a sötétebb tetőrészletek alapján két tetőosztályt hoztam létre. Az osztályozás után összevont tetőpixelek mintavételezésével kaptam a bemeneti adathalmazt:
44. ábra A Pentagon osztályozott képe, mint a bemenő adatpontok Az iteráció folyamatát négy állapotban illusztrálom (45. ábra): a kezdeti státuszt (0. lépés), 3 ordering lépés után, 10 ordering lépés után, majd a teljes tuning lefutása után. Az eredményképen a közel pontosan megtalált ötszög alakzat látható [Barsi 2003e]. A SONG gyakorlati megvalósítása Visual C++-ban történt; ebben a környezetben a szükséges számítási teljesítmény megfelel az elvártaknak. A fejlesztett szoftver rendszertervét a 46. ábra mutatja be. A fejlesztői munka során követett főbb szempontok a következők voltak: •8
a paraméterek beállítása külön vezérlés-fájlon keresztül történjék o egyszerű a kezelhetősége o másolható, majd módosítható o batch-jellegű feldolgozásban is alkalmazható o külső szoftverrel is előállítható o könnyebben implementálható több platformon
•8
az adat-bemenet egyszerű ASCII legyen o platform és szoftverfüggetlenség az előfeldolgozásban o tetszőleges editorral szerkeszthető legyen o változatok készíthetők legyenek
•8
a gráf-bemenet egyszerű ASCII legyen o külső szoftverrel (pl. Matlab) előállítható legyen o fix struktúra révén visszacsatolható legyen futás eredményéből o editorral szerkeszthető és másolható legyen o platform-függetlenség
45. ábra A Pentagon teszt állapotai 0, 3, 10 lépés és a befejezés után •8
legyen ASCII kimenet a gráfra o visszacsatolhatóság o platform és szoftver-független további felhasználás
•8
napló o rögzíthető vezérlőparaméterek o változatok nyomonkövetése o számítási időszükségletek elemzése
•8
Matlab-kimenet o egyszerű és gyors vizualizáció o további feldolgozási lépések megvalósíthatósága.
Control Data File .cdf
Graph Data File .gdf
Training Data File .tdf
Self Organizing Neuron Graph SONG song.exe
Graph Output File .gof
Log File .log
Matlab File .m
46. ábra A SONG rendszerterve A SONG szoftver mellé a kényelmesebb használat érdekében fejlesztettem egy gráfkezelő alkalmazást Matlab környezetben graph creator (gc) néven, amely kihasználja a grafikai lehetőségeket és a felhasználó is grafikus felhasználói felületen keresztül vezérelheti, továbbá a szerkesztett gráf közvetlenül a SONG számára tárolható, felhasználható.
47. ábra A graph creator grafikus felhasználói felülete Természetesen az önszerveződő neurongráf elvének gyakorlati alkalmazhatósága folyamatosan a vizsgálataim tárgyát képezik.