1) zmiana geometrii, połączenie plików w kompozycji ... · 2) konwersja pliku csv ze...

5
Wykorzystanie biblioteki GDAL w przetwarzaniu danych przestrzennych Kraków, 18.02.2020 r., 19.02.2020 r. Prowadzący: Jacek Ślopek (UWr, OSGeo Poland) 1) Zmiana geometrii, połączenie plików w kompozycji barwnej – dane mulspektralne z eksperymentu „Interkosmos” (1978) Kamera wykorzystywana w eksperymencie „Interkosmos” rejestrowała obrazy w sześciu przedziałach spektrum fal elektromagnetycznych (Ryc. 1). Ryc. 1. Kanały spektralne rejestrowane przez kamerę MKF-6M. Pod zdjęciami podano granice przedziałów długości fal rejestrowanych w poszczególnych kanałach. Numer kanału można odczytać jako drugą cyfrę w oznaczeniu: Sx/k/z (x – szereg, k – kanał, z – numer zdjęcia) Skany zdjęć zostały przygotowane na podstawie pozytywowych odbitek zdjęć, przez co charakteryzują się deformacjami wynikającymi z wieku papieru fotograficznego (odbitki wykonano pod koniec lat 70-tych XX w.), jak i wpływu czynników atmosferycznych. W związku z deformacjami konieczna będzie korekcja geometrii zdjęć. Pomocne w tym będą informacje zapisane na samych zdjęciach (9 symboli krzyży reseau). Ryc. 2. Charakterystyka zdjęć wykonywanych przez kamerę MKF-6M. Informacja o docelowej lokalizacji symboli krzyży reseau poniżej.

Upload: others

Post on 24-Aug-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1) Zmiana geometrii, połączenie plików w kompozycji ... · 2) Konwersja pliku csv ze współrzędnymi punktów do formatu ESRI Shapefile – archiwalne dane punktowe z siedliskami

Wykorzystanie biblioteki GDAL w przetwarzaniu danych przestrzennychKraków, 18.02.2020 r., 19.02.2020 r.

Prowadzący: Jacek Ślopek (UWr, OSGeo Poland)

1) Zmiana geometrii, połączenie plików w kompozycji barwnej – dane multispektralne z eksperymentu „Interkosmos” (1978)

Kamera wykorzystywana w eksperymencie „Interkosmos” rejestrowała obrazy w sześciu przedziałach spektrum falelektromagnetycznych (Ryc. 1).

Ryc. 1. Kanały spektralne rejestrowane przez kamerę MKF-6M. Pod zdjęciami podano granice przedziałów długości fal rejestrowanych w poszczególnych kanałach. Numerkanału można odczytać jako drugą cyfrę w oznaczeniu:

Sx/k/z (x – szereg, k – kanał, z – numer zdjęcia)

Skany zdjęć zostały przygotowane na podstawie pozytywowych odbitek zdjęć, przez co charakteryzują siędeformacjami wynikającymi z wieku papieru fotograficznego (odbitki wykonano pod koniec lat 70-tych XX w.), jaki wpływu czynników atmosferycznych. W związku z deformacjami konieczna będzie korekcja geometrii zdjęć. Pomocnew tym będą informacje zapisane na samych zdjęciach (9 symboli krzyży reseau).

Ryc. 2. Charakterystyka zdjęć wykonywanych przez kamerę MKF-6M.

Informacja o docelowej lokalizacji symboli krzyży reseau poniżej.

Page 2: 1) Zmiana geometrii, połączenie plików w kompozycji ... · 2) Konwersja pliku csv ze współrzędnymi punktów do formatu ESRI Shapefile – archiwalne dane punktowe z siedliskami

Polecenia pomocne w zmianie (poprawie) geometrii skanów:

gdal_translate -of GTiff -r bilinear -gcp X1 Y1 1515 387 -gcp X2 Y2 3780 387 -gcp X3 Y3 6045 387 -gcp X4 Y4 1515 2599-gcp X5 Y5 3780 2599 -gcp X6 Y6 6045 2599 -gcp X7 Y7 1515 4811 -gcp X8 Y8 3780 4811 -gcp X9 Y9 6045 4811 -co"COMPRESS=LZW" -co "BIGTIFF=IF_NEEDED" plik_skanu.tiff rob.tiff

gdalwarp -order 2 -te 0 0 7559 5197 -ts 7559 5197 -of GTiff -r bilinear rob.tiff plik_skanu_transf.tiff

[del rob.tiff]

Uwagi:

*) Układ numeracji GCP:7 8 94 5 61 2 3

**) Współrzędne położenia kolejnych krzyżyków reseau (X Y) należy podawać zgodnie z układem odniesienia obrazu(początek układu współrzędnych znajduje się w górnym lewym narożniku).

***) Skany wykonano w rozdzielczości 1200 dpi, co oznacza, że obraz zarejestrowany przez kamerę powinien miećwymiary 7559x5197 px.

Polecenia pomocne w połączeniu uzyskanych w pierwszej części ćwiczenia pasm w kompozycję barwną RGB:

gdalbuildvrt -resolution average -separate -r nearest plik_kompozycji.vrt plik_R.tiff plik_G.tiff plik_B.tiffgdal_translate plik_kompozycji.vrt plik_kompozycji.tiff

2) Konwersja pliku csv ze współrzędnymi punktów do formatu ESRI Shapefile – archiwalne danepunktowe z siedliskami gniewoszy plamistych w okolicach Górażdży.

Fragment pliku gniewosze.csv:

Y,X,data,pomiar295891.884336482,431919.182493287,2016-04-23,A295891.027258789,431985.177475649,2016-04-23,A295654.991377672,432487.51250963,2016-05-07,B...

Utworzenie pliku dbf na potrzeby formatu ESRI Shapefileogr2ogr -f "ESRI Shapefile" gniewosze.dbf gniewosze.csv

Do konwersji potrzebny będzie plik gniewosze.vrt opisujący geometrię, układ odniesienia, atrybuty:<OGRVRTDataSource> <OGRVRTLayer name="gniewosze"> <SrcDataSource>gniewosze.csv</SrcDataSource> <SrcLayer>gniewosze</SrcLayer> <GeometryType>wkbPoint</GeometryType> <LayerSRS>EPSG:2180</LayerSRS> <GeometryField encoding="PointFromColumns" x="X" y="Y"/> </OGRVRTLayer></OGRVRTDataSource>

Właściwa konwersja – powstanie katalog o nazwie „gniewosze” zawierający pliki składowe właściwe dla formatu ESRIShapefile. Wynikowy plik shp zawierać będzie dodatkowe kolumny zapisane w tablicy atrybutowej.

ogr2ogr -f "ESRI Shapefile" gniewosze gniewosze.vrt

Page 3: 1) Zmiana geometrii, połączenie plików w kompozycji ... · 2) Konwersja pliku csv ze współrzędnymi punktów do formatu ESRI Shapefile – archiwalne dane punktowe z siedliskami

3) Pobieranie danych z serwerów usług mapowych (WMS,WFS) z użyciem driverów GDAL

a) Serwery WMS (zobrazowanie rastrowe)

Pobieranie danych z serwerów usług mapowych może przebiegać na kilka sposobów. Jednym z nich jest użycieprzeglądarki internetowej. Wykorzystując metodę GET protokołu HTTP można wysłać zapytanie do serwera usługmapowych wpisując je w pasku adresowym.

Uzyskanie informacji o serwisie mapowym (GetCapabilities):http://gis1.um.wroc.pl/arcgis/services/ogc/OGC_ortofoto_2018/MapServer/WMSServer/wms?service=WMS&request=GetCapabilities

Pobranie fragmentu ortofotomapy z podaniem parametrów (GetMap):http://gis1.um.wroc.pl/arcgis/services/ogc/OGC_ortofoto_2018/MapServer/WMSServer/wms?service=WMS&request=GetMap&version=1.3.0&layers=0&width=2000&height=2000&format=image/tiff &crs=EPSG:2180&bbox=362575.0,362330.0,362655.0,362410.0&styles =

Plik wynikowy jest obrazem (o nazwie wybranej przez pobierającego np. rob.tiff) bez georeferencji – choć pobranymzgodnie z określonym dla układu współrzędnych PUWG 1992 (EPSG 2180) regionem (bbox).

Nadanie georeferencji:

gdal_translate -of GTiff -r bilinear -a_ullr 362330.0 362655.0 362410.0 362575.0 -a_srs EPSG:2180 rob.tiff uwr.tiff

Zastosowanie narzędzi biblioteki GDAL do pobrania z serwisu WMS fragmentu zobrazowania. OrtofotomapaWrocławia – geoportal UM:

Uzyskanie informacji o serwisie:

gdalinfo http://gis1.um.wroc.pl/arcgis/services/ogc/OGC_ortofoto_2018/MapServer/WMSServer/wms?service=wms

Adres wykorzystywany w kolejnym kroku znajduje się w polu SUBDATASET_1_NAMESUBDATASET_1_NAME=WMS:http://gis1.um.wroc.pl/arcgis/services/ogc/OGC_ortofoto_2018/MapServer/WmsServer?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&LAYERS=0&SRS=EPSG:4326&BBOX=16.797763,51.037458,17.190078,51.216064

Na podstawie tej nazwy tworzony jest plik XML z opisem serwisu

gdal_translate "WMS:http://gis1.um.wroc.pl/arcgis/services/ogc/OGC_ortofoto_2018/MapServer/WmsServer?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&LAYERS=0&SRS=EPSG:4326&BBOX=16.797763,51.037458,17.190078,51.216064" -of WMS uwr.xml

W wyniku działania powyższego polecenia powstanie plik (uwr.xml) z opisem serwisu – zawierający definicję warstwyrastrowej dla całego Wrocławia:

<GDAL_WMS> <Service name="WMS"> <Version>1.1.1</Version> <ServerUrl>http://gis1.um.wroc.pl/arcgis/services/ogc/OGC_ortofoto_2018/MapServer/WmsServer?SERVICE=WMS</ServerUrl> <Layers>0</Layers> <SRS>EPSG:4326</SRS> <ImageFormat>image/jpeg</ImageFormat> <Transparent>FALSE</Transparent> <BBoxOrder>xyXY</BBoxOrder> </Service> <DataWindow> <UpperLeftX>16.797763</UpperLeftX> <UpperLeftY>51.216064</UpperLeftY> <LowerRightX>17.190078</LowerRightX> <LowerRightY>51.037458</LowerRightY> <SizeX>1073741824</SizeX> <SizeY>488833545</SizeY> </DataWindow> <BandsCount>3</BandsCount>

Page 4: 1) Zmiana geometrii, połączenie plików w kompozycji ... · 2) Konwersja pliku csv ze współrzędnymi punktów do formatu ESRI Shapefile – archiwalne dane punktowe z siedliskami

<BlockSizeX>1024</BlockSizeX> <BlockSizeY>1024</BlockSizeY> <OverviewCount>20</OverviewCount></GDAL_WMS>

Pobranie wybranego fragmentu ortofotomapy i jednoczesna transformacja obrazu z nadaniem georeferencji dowybranego układu współrzędnych opiera się na wykorzystaniu pliku z opisem serwisu. Pobierany fragment jest zgodnyz wcześniejszym przykładem zapytania wysyłanego z użyciem przeglądarki internetowej (fragment UWr z pełnąrozdzielczością 4cm/px).

gdalwarp -t_srs epsg:2180 -te_srs epsg:2180 -te 362330.0 362575.0 362410.0 362655.0 -ts 2000 0 -r bilinear uwr.xml uwr.tiff

Inny przykład pobierania danych z serwisu WMS – dane BDL

gdalinfo "WMS:https://mapserver.bdl.lasy.gov.pl/ArcGIS/services/WMS_BDL/mapserver/WMSServer"

gdal_translate "WMS:http://mapserver.bdl.lasy.gov.pl/arcgis/services/WMS_BDL/MapServer/WmsServer?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&LAYERS=1&SRS=EPSG:4326&BBOX=13.898111,49.022390,24.621126,54.838016" -of WMS bdl.xml

gdalwarp -t_srs epsg:2180 -te_srs epsg:2180 -te 520000 445000 525000 450000 -ts 2000 0 -r bilinear bdl.xml bdl_xml_2180.tif

Pobieranie zobrazowań z serwerów kafelków XYZ, na przykładzie OSM

Plik XML (osm.xml) opisujący serwis OSM (TMS Tiles):

<GDAL_WMS> <Service name="TMS"> <ServerUrl>http://tile.openstreetmap.org/${z}/${x}/${y}.png</ServerUrl> </Service> <DataWindow> <UpperLeftX>-20037508.34</UpperLeftX> <UpperLeftY>20037508.34</UpperLeftY> <LowerRightX>20037508.34</LowerRightX> <LowerRightY>-20037508.34</LowerRightY> <TileLevel>18</TileLevel> <TileCountX>1</TileCountX> <TileCountY>1</TileCountY> <YOrigin>top</YOrigin> </DataWindow> <Projection>EPSG:3857</Projection> <BlockSizeX>256</BlockSizeX> <BlockSizeY>256</BlockSizeY> <BandsCount>3</BandsCount> <!--Cache /--></GDAL_WMS>

Plik do pobrania ze strony:https://github.com/OSGeo/gdal/blob/master/gdal/frmts/wms/frmt_wms_openstreetmap_tms.xml

Pobranie zobrazowania całego globu (w projekcji Web Mercator, EPSG:3857), jako pliku o boku 1000px

gdal_translate -of GTIFF -outsize 1000 0 osm.xml osm_xml.tif

Pobranie zobrazowania obejmującego Polskę

gdal_translate -of GTIFF -projwin 13 55 25 48 -projwin_srs epsg:4326 -outsize 1000 0 osm.xml polska_osm_xml.tif

Page 5: 1) Zmiana geometrii, połączenie plików w kompozycji ... · 2) Konwersja pliku csv ze współrzędnymi punktów do formatu ESRI Shapefile – archiwalne dane punktowe z siedliskami

b) Serwery WFS (dane wektorowe)

Podobnie jak w przypadku serwisów WMS pierwszym krokiem jest uzyskanie informacji na temat serwisu:

ogrinfo -ro "WFS:https://wfs.bdl.lasy.gov.pl/geoserver/BDL/ows"

Pobranie obiektów wektorowych

ogr2ogr -f "ESRI Shapefile" bdl_wydzielenia.shp "WFS:https://wfs.bdl.lasy.gov.pl/geoserver/BDL/ows" BDL:RDLP_Łódź_wydzielenia

Dołączanie do poprzednio pobranych obiektów:

ogr2ogr -f "ESRI Shapefile" -append -update bdl_wydzielenia.shp "WFS:https://wfs.bdl.lasy.gov.pl/geoserver/BDL/ows" BDL:RDLP_Wrocław_wydzielenia