[PYTHON] Konvertierung von GSI_DEM in Geotiff → UTM-Konvertierung → ASCII-Konvertierung nur in der Ubuntu-Befehlszeile

Ich möchte das DEM des National Land Research Institute in ein Format konvertieren, das mit GIS nur über die Befehlszeile von Linux (Ubuntu) einfach zu verwenden ist.

Wenn so etwas wie eine Höhenkarte oder eine Geländeschattierungskarte aus einem numerischen Höhenmodell (DEM) als Basis für die Platzierung von GIS-Informationen gelesen wird, sehen die GIS-Informationen gut aus. Im Falle Japans veröffentlicht das National Land Research Institute (GSI) DEMs mit einer Maschenweite von 5 m und 10 m als nationale Informationen zur Landinfrastruktur. GSI DEM wird in Form des bereitgestellten JPGIS (GML) -Formats bereitgestellt. Wenn Sie es mit einem Texteditor wie Metadaten öffnen, finden Sie oben in der Datei Informationen zu den Daten wie DEM-Pixelgröße und Breite / Länge.

Persönlich ist es sehr praktisch, das Geotiff-Format zu verwenden. Wenn Sie sich jedoch die Formatkonvertierung in das Geotiff-Format genauer ansehen, finden Sie Software, die in der Windows-Umgebung konvertiert wird. Als Linux-Benutzer ist es jedoch schwierig, externe Software zu starten und das Dateiformat nacheinander zu konvertieren.

Hier habe ich gezeigt, wie die Konvertierung in Geotiff-Format + Alpha-Format-Konvertierung nur auf dem Terminal von dem Ort aus durchgeführt wird, an dem GSI DEM heruntergeladen wurde.

Diese Zeit ist ein Beispiel für eine Bash-Umgebung. Eine ausführliche Erklärung finden Sie unter dem Skript.

gsidem2geotiff.sh


#!/bin/bash

#Hinzugefügt, was in meiner Umgebung fehlte.
#Wenn etwas fehlt, fügen Sie es selbst hinzu.
#sudo apt-get install git osmium-tool gdal-bin python python-pip python-numpy python-gdal python-matplotlib python-beautifulsoup python-lxml
#pip install gdal 
#git clone https://github.com/minorua/fgddemImporter.git

#unzip GSIDEM zip file
unzip PackDLMap.zip

#GSI DEM->geotiff #GSI DEM war DL FG*Als Reißverschluss.
python fgddemImporter/fgddem.py FG-GML-*zip

#Mosaik-Geotiff-Datei(merge.tif).. Der Wert des Meeresgebiets-Von 9999 bis 0.
#-9999 (-srcnodata Spezifikation)Wert von 0(-dtsnodata-Spezifikation)Zu.
gdalwarp -of "ENVI" -srcnodata -9999 -dstnodata 0 FG*tif merge.tif

#transform EQA2UTM
#EPSG code| EQA:4326, UTMzone52:32652, UTMzone53:32653, UTMzone54:32654 
gdalwarp -s_srs EPSG:"4326" -t_srs EPSG:"32652" merge.tif merge_utm.tif

#Zeigen Sie den Inhalt von geotiff an
gdalinfo merge.tif

#Ich denke nicht, dass es notwendig ist, aber Geotiff->In das ESRI ASCII-Format konvertiert.-Sei 9999 NaN.
#-Es ist mit projwin ausgeschnitten. Kantenkoordinaten im Uhrzeigersinn von Westen(Meter)Angegeben.
gdal_translate -projwin ${west} ${north} ${east} ${south} -a_nodata -9999 -of AAIGrid merge.tif dem.asc

#EOF

Das Wichtigste ist ** Konvertieren Sie die vom National Land Research Institute heruntergeladene DEM-Datei von einer Zip-Datei in Geotiff, konvertieren Sie Geotiff in Mosaik, ESRI-ASCII-Format (ausgeschnitten) auf dem Terminal (diesmal Ubuntu 18.04 LTS, Bash-Umgebung). Es kann mit ** abgeschlossen werden.

Praktisches Beispiel: Ich möchte GSI DEM zusammenführen und nur einen Teil des Bereichs ausschneiden.

Nehmen wir diesmal Sakurajima als Beispiel. Es ist eine Überprüfung des Verfahrens.

    1. Laden Sie die DEM-Datei von GSI HP herunter
  1. Konvertieren Sie vom JPGIS (GML) -Format in das Geotiff-Format
    1. In UTM-Koordinaten konvertieren Vier. Durch Angabe von UTM-Koordinaten ausschneiden und in das ESRI-ASCII-Format konvertieren

Dieses Mal werden wir die Daten im folgenden Bereich verwenden. Screenshot from 2020-09-02 08-58-28.png

Ich habe nur einen konkreten Wert angegeben, um den Ausschnittbereich im obigen Skript anzugeben. Der Ausschnittbereich ist diesmal UTM-Koordinaten (West, Nord, Ost, Süd) = (650500 3515000 665300 3490000).

Ergebnis (gezeichnet mit QGIS)

Screenshot from 2020-09-02 09-57-12.png Wie gewünscht konnte ich vorerst nur den Bereich ausschneiden, in dem ich GSI DEM in einem weiten Bereich einbringen und in UTM-Koordinaten konvertieren wollte. Hier wird der Befehl gdalwarp zum Konvertieren von Mosaik und UTM verwendet. Wenn Sie jedoch die Mosaik-Geotiff-Datei mit EQA-Koordinaten nicht benötigen, können Sie die Mosaik-UTM-Koordinaten auf einmal konvertieren, indem Sie die Optionen verbinden.

gdalwarp -s_srs EPSG:"4326" -t_srs EPSG:"32652" -of "ENVI" -srcnodata -9999 -dstnodata 0 FG*tif merge_utm.tif

Schneiden Sie aus, indem Sie zuerst die EQA-Koordinaten angeben → versuchen Sie die UTM-Koordinatenkonvertierung

Früher wurde EQA-> UTM-Koordinatenkonvertierung-> UTM-Koordinatenspezifikationsbereich ausgeschnitten. Wenn Sie sich jedoch trauen, im EQA-Bereich-> UTM-Koordinatenkonvertierung auszuschneiden, ändert sich das Erscheinungsbild geringfügig.

gsidem4sakurajima.sh


#!/bin/bash

#GSIDEM2geotiff
python fgddemImporter/fgddem.py FG-GML-*zip

#mosaic geotiff files -> merge.tif
gdalwarp -of "ENVI" -srcnodata -9999 -dstnodata 0 FG*tif merge.tif

#show geotiff information
gdalinfo merge.tif

#Extract Sakurajima region
gdal_translate -projwin 130.5870 31.6389 130.7414 31.5371 -a_nodata -9999 merge.tif merge_ex.tif

#transform EQA2UTM
#EPSG code| EQA:4326, UTMzone52:32652, UTMzone53:32653, UTMzone54:32654 
gdalwarp -s_srs EPSG:"4326" -t_srs EPSG:"32652" merge_ex.tif merge_utm.tif

#show merge_utm.tif information
gdalinfo merge_utm.tif

#Convert geotiff2ascii
gdal_translate -of AAIGrid merge_utm.tif dem.asc



Ergebnis (gezeichnet mit QGIS)

Screenshot from 2020-09-02 09-37-10.png Breiten- / Längengrad angegeben Zuschneiden → Konvertierung von EQA in UTM-Koordinaten, sodass die Koordinaten korrekt konvertiert wurden, der Bereich jedoch so gedreht wurde, wie er aussah. Wenn Sie dies weiter verwenden möchten, kann es etwas schwierig sein, es zu verwenden.

Schließlich

Es ist unangenehm, ein Python-Skript mit einem Shell-Skript zu laden. Sie sollten es gut mit Python alleine machen können ...

Recommended Posts

Konvertierung von GSI_DEM in Geotiff → UTM-Konvertierung → ASCII-Konvertierung nur in der Ubuntu-Befehlszeile
Konvertieren Sie XLSX in CSV in der Befehlszeile
Multiplizieren Sie PDF mit OCR in der Befehlszeile unter Linux (Ubuntu).
Erstellen Sie Befehlsverknüpfungen unter Ubuntu 16.04
Vorgehensweise zum Abrufen des KeePassX-Schlüssels mit einer Befehlszeile unter OSX