A távérzékelésben is fejlődési ugrást jelentett az utóbbi években jelentősen megnövekedett adatmennyiség, a modern raszteres és vektoros szenzorokkal (fénykép, űrfelvétel, hiperspektrális raszteres adatok, LiDAR, stb.) rövid idő alatt több TB adatmennyiség is rögzíthető. További fejlődés elem, hogy az egykor csak katonai célokra használt robotrepülőgépek (UAV), drónok ma már polgári célokra is egyre nagyobb mértékben használatosak. Jelentő ségük ott van, ahol nem nagy magasságból, és nem nagy, hanem kis területekről kell, nagy felbontással képet készíteni. Ilyen szakterület például a mezőgazdaság, pontosabban a precíziós mezőgazdaság, valamint a környezet- és természetvédelem, továbbá ilyenek a rendészeti, rendőri alkalmazások.
A Giwer (GeoImage Workflow Editing Resources) programcsomag alapvetően drónokkal készült felvételek feldolgozását, értelmezését hivatott támogatni, de képes más képek feldolgozását is elvégezni. A program 4 fő modulból áll:
- A dataStock egy interaktív raszteres képfeldolgozó rendszer, amely már számos kész funkcionalitást tartalmaz raszteres drónfelvételek megjelenítési, feldolgozási és döntéstámogatási vonatkozásában.
- A workflowEditor segítségével a dataStock függvénykönyvtárából a végfelhasználó is összeállíthat saját tudása, tapasztalatai alapján egy munkafolyamatot, így teljes mértékben testreszabható funkcionalitást lesz képes előállítani.
- A catalog a nagy mennyiségben keletkező képek rendszerezésére és attribútumainak (SQLite) adatbázisban tárolására szolgál.
- A lidarProcessor egy interaktív, 3 dimenziós pontfelhő megjelenítő és feldolgozó komponens.
Jelenleg a következő feladatokhoz keresünk résztvevőket a projektbe.
A projekt fejlesztése C# nyelven történik.
Felületi vezérlő (user control) fejlesztése
Fejlesztendő egy olyan user control, amelyben bitmap és nagyon egyszerű vektor grafika (pl. pont, vonal, egyszerűbb poligonok) is megjeleníthető a bitmap felett. Részfeladatok:
- A bemenet egy bitmapet tartalmazó byte tömb, valamint fontosabb metaadatai: width, height, bytesperpixel (8 bites képre 1, 16 bitesre 2, 24 bitesre 3, 48 bitesre 6).
- Alapvető képnézegető műveletek: zoom, scroll, pan (ott lesz a kép közepe, ahová klikkelünk), kijelölt területre zoom, stb.
- Kurzor aktuális X/Y koordinátáinak kijelzése a kép pixel egységeiben (nem a vezérlőében).
- Bemenő paraméterek között legyen egy vagy két dimenziós tömb fogadása, benne 2 dimenziós adatokkal, amelyeket a kurzor pozíciójában kell megjeleníteni.
- Részterület (téglalap) kijelölése és sarkkoordinátáinak lekérdezése. (Ezzel mintegy kijelöljük a képnek egy részét valamilyen további feladatra.)
Osztályozó/klaszterező eljárások fejlesztése
Készítendő egy kép klaszterező, osztályozó eljárás (ISODATA, K-Means, Maximum likelihood, Random forest, stb).
- Az eljárás bemenő adatai a kép frekvenciasávjai byte tömbökben (ahány frekvencia sáv, annyi byte tömb), valamint a kép méreteit leíró adatok: width, height, bytesperpixel (8 bites képre 1, 16 bitesre 2, 24 bitesre 3, 48 bitesre 6).
- Beállítható legyen, hogy hány osztályt akarunk, ezeknek mik a várható klaszter középpontjai (tanuló területekből).
- Az is legyen állítható, hogy nem adunk meg klaszter számot (esetleg maximális számot), hanem csak leállási kritériumot, így a klaszterek száma dinamikusan kerül megállapításra.
Szegmentáló eljárások fejlesztése
Készítendő egy kép szegmentáló eljárás, valamely ismert algoritmus szerint, mint pl.:
- intenzitás értékek alapján (valamilyen küszöbölési módszerrel, vagy hisztogram alapján);
- EM algoritmus alapján (expectation–maximization);
- régió növelés vagy darabolás módszerével.
Workflow editor fejlesztése
Egy olyan modul tervezésében és implementálásában való részvétel, amelynek segítségével a Giwer függvénykönyvtárából összeállítható egy munkafolyamat. Ennek olyankor van igazán nagy jelentősége, amikor sok képre kellene feldolgozást végezni, és a tapasztalatokat, az összeállított munkafolyamatba lehet beépíteni. Így az összes képre egységes feldolgozási folyamat lesz futtatható emberi beavatkozás nélkül.
Leképezési hibák korrekciója multispektrális kamera képeiben
Több lencsés multispektrális kamera használatakor jellemzően frekvenciasávonként keletkezik egy-egy kép fájl. A különböző lencsék eltérő optikai torzítással rendelkeznek, továbbá eltérő elhelyezkedésük miatt nem fedik át egymást tökéletesen: 5-25 pixel elcsúszás tapasztalható az egyes frekvenciasávok között.
A feladat a képek (metaadatainak elhasználásával) a szükséges korrekció elvégzése, az átfedő terület kivágása, illesztése és egy több sávos fájlba mentése
Segédanyagok:
- https://micasense.github.io/imageprocessing/Alignment.html
- https://learnopencv.com/image-alignment-ecc-in-opencv-c-python/
Publikációk
- Tarczali Tamás: Drónnal rögzített légifelvételek klaszterező algoritmusainak elemzése, MSc diplomamunka, 2022.