Vajon mit tudunk megállapítani egy-egy balatoni kikötőről ha megvizsgáljuk a területről készült Sentinel-2-es műholdképeket? Vajon meg tudjuk állapítani, hogy mennyire volt kihasználva a kikötő egy vizsgált időszakban? Vajon előállítható egy trendgörbe, amin látszódik a foglaltság változása? Ebben a bejegyzésben ennek járok utána…
Trendelemzés távérzékeléssel
A www.race.esa.int munkatársai ezen műholdadatok alapján vizsgálták meg, hogy hogyan hatott a termelés volumenére a COVID járvány okozta gazdasági visszaesés. Tényleg szívből ajánlom az oldalt a statisztika és az adatok szerelmeseinek!
A vizsgálat
A fenti oldal átböngészése után azon gondolkodtam, hogy vajon hasonló módon ki tudok-e nyerni adatokat egy-egy magyarországi területről, a Sentinel-2 műholdképek elemzésével.
A vizsgált terület kiválasztása során az egyik fő szempont az volt, hogy lehetőleg 10 méteres vagy annál nagyobb „testek” változása legyen megfigyelhető, hiszen a műhold legjobb térbeli felbontása 10 méter, azaz ennél kisebb elemek egyszerűen nem látszódnak.
A másik szempont az volt, hogy a vizsgált területet ne befolyásolja a környezet változása, mint például a növényzet évszakonkénti módosulása.
A fenti gondolatmenetet figyelembe véve kerültek a vizsgálatom célkeresztjébe a nagyobb balatoni kikötők, hiszen az ott kikötött hajók elég nagy testűek ahhoz, hogy látszódjanak a Sentinel-2-es műholdfelvételeken, valamint a körülüttök lévő víz igen ritkán változik, így nagyon jó kontrasztos képet tud adni a műhold NIR (közeli infravörös) spektrális tartományra érzékeny kamerája.
Balatonaliga esetében ez a következőképpen néz ki:
Megvizsgálva a 2020-as év elejétől készült felvételeket, észrevehetően változott a balatonaligai kikötő kihasználtsága, mivel van olyan időszak ahol alig látszdónak a mólók, azonban nyáron jól megfigyelhetően erősebben kirajzolódnak a vonalaik, az ott kikötött hajók miatt. Az alábbi összehasonlító box-ban is nagyon jól látszik a különbség a márciusi és augusztusi kihasználtsága közt.
Adatfeldolgozási modell
Aki eljutott ideáig a bejegyzésem olvasásával, szerintem már rájött, hogy a balatonaligai kikötő kihasználtságának trendgörbéjét próbálom majd előállítani a Sentinel-2-es műholdfelvételek alapján.
Na de hogyan is lesznek a képekből trendgörbék? Ezt hivatott bemutatni nagyvonalakban az alábbi infografika.
Az 1.Lépésben minden 2020-as felvételt letöltöttem, amelyen megtalálható a balatonaligai kikötő. Ehhez QGIS SCP pluginjét használtam, amely a Copernicus Open Access Hub-ra kapcsolódva tölti le az adatokat. 2.Lépésként előállítottam a vizsgálandó terület shapefile-ját QGIS-ben. Ez az ún ROI azaz Region Of Interest. A 3.Lépésben a shapefile alapján kivágtam az összes műholdfelvételből a ROI területet, hiszen csak ezt a részt szeretném megvizsgálni, a többi adatra nincs szükségem. Ehhez és a következő műveletekhez Python-t és OpenCV-t használtam. A 4.Lépésben átalakítottam a szürkeárnyalatos képeket kétszínű, fekete-fehér képekké (Thresholding). Ez pixel szinten azt jelenti, hogy egy pixel vagy 0 (fekete) vagy 255 (fehér) értéket veheti fel, köztes értéket pedig nem. Ezzel tulajdonképpen olyan képeket állítottam elő, ahol a mólót és a kikötött hajókat a fehér pixelek reprezentálják, míg a vizet a feketék. Az 5.Lépésben minden egyes képben összeszámoltattam a fehér pixeleket, beolvastattam a felvételekhez tartozó dátumot. A 6. és 7.Lépésben némi unalmas matematikai művelettel átalakítottam a fehér pixel értékeket százalékokká, ahol a 0% az év legkisebb kihasználtságát jelzi (legkevesebb fehér pixel), míg a 100% a legmagasabbat (legtöbb fehér pixel). A 8.Lépésben kirajzoltattam az adott időpontokhoz tartozó százalék értékeket, azaz a nyers adatsort. Ahogyan az a lenti diagramon jól látható, viszonylag „zajos” a kapott görbe, sok benne az ugrás. Ez szerencsére egész jól kisimítható ha mozgó átlagot alkalmazunk az adatpontokra, azonban ehhez először szükség van az adatok nélküli napok adattal való feltöltésére. Ezért a 9.Lépésben két felvétel közti hiányzó dátumok felvételéhez resampling-et kell végrehajtani az adatsoron, majd interpoláció segítségével megadni ezen napok százalékos adatát. Az utolsó, 10.Lépésben pedig nem marad más hátra, mint a 15 napos mozgóátlag kirajzoltatása.
A trendgörbe alapján elmondható, hogy a kikötő kihasználtsága egy meredek felfutás után májusban, a vitrolás szezon kezdetén csúcsosodott ki, majd kissé visszaesett a nyári hónapokban, vélhetően a folyamatosan változó forgalom miatt.
Fontos azonban szót ejteni arról is, hogy a fenti trendgörbét rengeteg faktor befolyásolhatja, így valóban csak trendek jelzésére alkalmas.
A paraméterek amelyek befolyásolhatják a fenti adatfeldolgozási modell végeredményét, a következők:
- vizsgálati terület jó meghatározása
- légköri viszonyok, felhözöttség, megvilágítás
- műholdképek térbeli felbontása
- adatok gyakorisága
- thresholding módja, határérték megválasztása
- mozgó átlag időablakának helyes megválasztása
Hasonlóságok más kikötőkkel
Természetesen kíváncsi voltam, hogyan néz ki a görbe más kikötők esetében is, hát így:
Mindegyik fenti kikötő esetében jól látszódik, hogy a kikötők kihasználtsága valamikor májusban, esetleg június elején éri el a maximumát.
Végszó
Ha szeretnél visszajelzést adni vagy kérdeznél, küldj mailt vagy írj a Satmapper Facebook oldalára.