Fentrol.hu
légifotók
feldolgozása

Fentrol.hu?

Afentrol.hu egy olyan projekt ami során internetre teszik az 1959-2007 közötti légifotókat. Mivel ezek többségében gyengén georeferált állományok, ezért a közösség segítségével pontosítják azokat. Bárki javíthat a légifotók georeferálásán, nekem is van 199 pontom :)

google docs image 0254442b 237d 5c44 a22f a2010e4d6ead

Ráadásul a légifotók rugalmas feltételekkel felhasználhatóak:

A díjmentesen elérhető légifelvételek szabadon másolhatók, terjeszthetők, bemutathatók azzal a megkötéssel, hogy a megjelenítésükkor minden esetben az alábbi formában fel kell tüntetni a forrásukat: Forrás: fentrol.hu; Budapest Főváros Kormányhivatala. A felhasználás csak az adatfelhasználási engedély számának birtokában lehetséges, melyet minden megrendelés esetén a Szolgáltató automatikusan megküld a Felhasználó számára.

Hídvégi-tó

Ehhez a leíráshoz szükségesQGIS térinformatikai program.Docker, valamint az egyikdocker gdal kép.

A leíráshoz tartozó fájlokinnen letölthetőek.

Gdal docker kép telepítéshez, majd használatához az alábbi parancsok lefuttatása szükséges a parancssorban. A ${PWD} helyére windows alatt annak a könyvtárnak az elérési útvonalát kell megadni, amiben dolgozunk (például: "C:\data"). A második parancs lefuttatása után egy úgynevezett prompt jön elő, amibe a leírásban található kódokat másolva lehet az adott lépést végrehajtani.

docker pull osgeo/gdal:alpine-ultrasmall-latest
docker run --rm -v ${PWD}:/fentrol-hu -it osgeo/gdal:alpine-ultrasmall-latest

Ebben a posztban a mai Hídvégi-tó területén készült légifotókat fogom feldolgozni az alábbi lépésekben:

  1. A területre vonatkozó, 1985 előtt készült légifotókat betöltése afentrol.hu oldalról
  2. Maszk réteggel vágom azokat, hogy a peremen lévő fekete sávokat eltüntessem
  3. Az OSM adatbázisból a Hídvégi-tó poligonjával megmetszem a maszkolt légifotókat

1.) A légifotók betöltése

Készítek egy munka könyvtárat "kis-balaton" néven, ebben létrehozok négy almappát (geoshop, vektoros-allomanyok, hasznos-teruletre-vagott, hidvegi-to-teruletere-vagott) A geoshop oldalról letöltöm az összes fájlt bemásolom a geoshop almappába (kis-balaton/geoshop).

Minden letöltött légifotóhoz tartozik egy tiff és tfw fájl. A tiff maga a légifotó, a tfw a world fájl, aminek segítségével a térinformatikai program képes helyesen pozícionálni a képet.

Beolvasom az összes letöltött légifotót a QGIS-be:

Réteg -> Adatforrás kezelő -> Raszter -> Raszter adathalmazok kiválasztása -> Hozzáadás

Minden egyes légifotónál a réteget jelző panel jobb felső sarkában található "?" ikonra kattintva beállítom az EPSG:23700 vetületi rendszert. Így Google Térképhez képest helyesen jelennek meg a betöltött légifotók.

google docs image a5dd58cb 34a2 5319 8ca1 6827ed12b7bf google docs image 1fed0858 72f0 54a3 be26 f6d7c23afe82

2.) A hasznos terület körberajzolása

Létrehozok egy új "poligon" típusú Esri Shape vektoros állományt, aminek lesz egy "name" string típusú mezője. Elmentem "hasznos-terulet.shp" néven (kis-balaton/vektoros-allomanyok/hasznos-terulet.shp). Minden egyes légifotót körberajzolom úgy, hogy a képnevet beleírom a "name" mezőbe (1965_0354_2735.tif).

google docs image f8b3b2ec 3e81 5fa1 8410 57505b497dff

Ezután terminálra váltok - qgis-ben ez a művelet eléggé körülményes - majd belépek a projektem gyökér könyvtárába, végül a geoshop könyvtárba. (GDAL parancssoros tool-nak telepítve kell lennie, QGIS valószínűleg telepíti)

cd fentrol-hu/geoshop
for kep in *.tif;do
        gdalwarp -s_srs 'EPSG:23700' -t_srs 'EPSG:3857' -dstalpha -dstnodata 0 -multi -overwrite -cutline ../vektoros-allomanyok/hasznos-terulet.shp -cwhere "name='$kep'" -crop_to_cutline -of GTiff  $kep  ../hasznos-teruletre-vagott/$kep;
done
google docs image af5cbbc1 c3bf 5f2a ab91 b06d629bbbdd

3.) Hídvégi-tó poligonjával az érdeklődési területemre vágom a légifotókat

Overpass Turbo oldaláról letöltöm a Hídvégi-to poligonját az alábbi paranccsal (Exportálás -> GeoJSON). A letöltött GeoJSON-t betöltöm a QGIS-be. (Vagy azelőző poszt alapján OSM lokális adatbázisából töltöm be az osm_waterareas réteget). A Hídvégi-tó poligonját át kell konvertálni EPSG:3857 vetületbe, majd lementeni "/vektoros-allomanyok/hidvegi-to-3857.shp" néven.

[out:json][timeout:55];
        area['name'='Magyarország'];
        relation(area)["name"="Hídvégi-tó"];
out geom;
google docs image b9f6bd00 b25c 59b6 bf03 00d43b6bd412
cd ../hasznos-teruletre-vagott
for kep in *.tif;do
        gdalwarp -s_srs 'EPSG:3857' -t_srs 'EPSG:3857' -dstalpha -dstnodata 0 -multi -overwrite -cutline ../vektoros-allomanyok/hidvegi-to-3857.shp -crop_to_cutline -of GTiff  $kep  ../hidvegi-to-teruletere-vagott/$kep;
done

A Hídvégi-tó területével megvágom a hasznos területet, majd virtuális rasztert építek ezekből és megkapom a végeredményt.

google docs image 7e5abf91 4dfd 5592 9fde 5e29743cf90a
cd ../hidvegi-to-teruletere-vagott
gdalbuildvrt -hidenodata index.vrt *.tif

A posztban a szebb vizuális hatás kedvéért két lépésben készítettem el a raszter vágását, azonban jóval erőforrás takarékosabb, ha a hasznos terület és a Hídvégi-tó vektorjának metszetével történik a maszkolás!

A következő posztban MBTiles-ről lesz szó, hogy kell hosting környezetben web térképet készíteni.

dc76a04ac91090244418763e1e1d2a