Open data mit Open source - Prozessierung von Copernicus Daten mit freier (Kommandozeilen-) Software

mit den Daten arbeiten

GRASS GIS

Was ist GRASS GIS?

GRASS GIS, commonly referred to as GRASS (Geographic Resources Analysis Support System), is a free and open source Geographic Information System (GIS) software suite used for geospatial data management and analysis, image processing, graphics and maps production, spatial modeling, and visualization.

Im GRASS Wiki gibt es eine Seite speziell für Sentinel: https://grasswiki.osgeo.org/wiki/SENTINEL


      ##########################################################################
      # Prepare
      ##########################################################################

      # prepare working directory
      WORK_DIR=/home/user/Desktop/open_data_mit_open_source/
      mkdir -p ${WORK_DIR}
      cd ${WORK_DIR}

      # set GRASS GIS executable
      GRASS=grass74
      GRASS_WORK_DIR=~/grassdata/s2_bonn
      export GRASS=${GRASS}
      export GRASS_WORK_DIR=${GRASS_WORK_DIR}
      # incomment to always overwrite
      #export GRASS_OVERWRITE=1
      ${GRASS} --version

      # set band for import
      L2A=S2A_MSIL2A_20170619T103021_N0205_R108_T32ULB_20170619T103021.SAFE
      BAND_04=L2A_B04_subset.vrt
      export L2A=${L2A}
      export BAND_04=${BAND_04}

      ##########################################################################
      # Import with r.in.gdal or i.sentinel.import
      ##########################################################################

      # Create new GRASS GIS location and connect
      ${GRASS} -c ${BAND_04} ${GRASS_WORK_DIR} -e -text

      # Connect to new GRASS GIS location
      ${GRASS} ${GRASS_WORK_DIR}/PERMANENT -text

      # --- see below: Skript would start here ---

      # import with r.in.gdal
      r.in.gdal -o ${BAND_04} out=BAND_04

      # set region. -a flag: Align region to resolution (default: align to BBOX)
      g.region raster=BAND_04 res=10 -a
      g.region -g

      # list imported layers
      g.list type=raster
      # should look like this:
      #BAND_04

      # install sentinel extention and import
      g.extension extension=i.sentinel
      i.sentinel.import input=${L2A} pattern='B04'

      # list imported layers
      g.list type=raster
      # should look like this:
      #BAND_04
      #L2A_T32ULB_20170619T103021_B04_10m
      #L2A_T32ULB_20170619T103021_B04_20m
      #L2A_T32ULB_20170619T103021_B04_60m

    

Es ist auch möglich, alles in einem Skript zu speichern und an GRASS GIS weiter zu geben. Dazu den markierten Teil aus dem Codeblock oben in eine Datei speichern. Erste Zeile "#/bin/sh" hinzufügen und als grass.sh speichern. Aufrufbar mit:


      ${GRASS} ${GRASS_WORK_DIR}/PERMANENT -text --exec grass.sh
      

Impressum - Datenschutzerklärung