User:Grin/FÖMI 2025

From OpenStreetMap Wiki
Jump to navigation Jump to search

A 2025-ben megkapott adatok feldolgozásának dokumentációja.

A feldolgozást gyakorlatilag Báthory Péter és ITineris dolgozta ki és resztelte[1].

Anyagok

  • 2015_o_mepar_RGB, 1.7 TB - 40 cm pixelméretű nyers, országos
  • 2015_o_nkp_RGB, 339 GB - 20 cm pixelméretű nyers, Győr-Pannonhalmi járás; Kecskemét-Tiszakécske-Kunszentmárton-Szarvas járás

Összesen 2.1 TB

Feldolgozás

A feldolgozást végző VM 20 CPU szálat kapott (ebből jellemzően maximum 18-at használhat), 16 GB RAM-ot, meg egy csomó disket.

Scriptek, 20 cm

VRT

#!/bin/bash
#cd ${HOME}
SRC="${HOME}/fomi"
DST="${HOME}/result/2025"
PROC="${HOME}/process/2025"
DNAME="gyor"

SRS="+init=EPSG:23700 +nadgrids=${PROC}/etrs2eov_notowgs.gsb"

date
time \
gdalbuildvrt                                                                            \
  -allow_projection_difference                                          \
  -a_srs "${SRS}"                                                                       \
  -vrtnodata 255 \
  -overwrite                                                                            \
  ${DST}/index_${DNAME}.vrt                                                                 \
  ${SRC}/2015_o_nkp_RGB/{72-*,73-*,62-*,63-*,53-*}.tif
date
#kecs:
#  ${SRC}/2015_o_nkp_RGB/{36-*,37-*,38-*,45-*,46-*,47-*,48-*,56-*}.tif

Warp

#!/bin/bash

SRC="${HOME}/fomi"
DST="${HOME}/result/2025"
PROC="${HOME}/process/2025"
DNAME="gyor"

EMPTY_COLOR="255"
THREADS=18
# THREADS="ALL_CPUS"
#MEM=1000
MEM=500
MEM_CACHE=1000

date
time \
gdalwarp \
  -t_srs "EPSG:3857"                                                    \
  -tr 0.2985821417389697 0.2985821417389697 \
  -tap \
  -r cubic                                                              \
  -srcnodata "${EMPTY_COLOR}"                           \
  -dstnodata "${EMPTY_COLOR}" \
  -of GTiff                                                                     \
  -co TILED=YES                                                         \
  -co COMPRESS=ZSTD     \
  -co ZSTD_LEVEL=1  \
  -co PREDICTOR=2       \
  -co BIGTIFF=YES                                                       \
  -multi                                                                        \
  -wo NUM_THREADS=$THREADS                                      \
  -wm $MEM                                                                      \
  --config GDAL_CACHEMAX $MEM_CACHE                     \
  -overwrite                                                            \
  ${DST}/index_${DNAME}.vrt                                         \
  ${DST}/${DNAME}_3857.tif
date

Tiles

#!/bin/bash

SRC="${HOME}/fomi"
DST="${HOME}/result/2025"
PROC="${HOME}/process/2025"
DNAME="gyor"

SRS="+proj=somerc +lat_0=47.14439372222222 +lon_0=19.04857177777778 +k_0=0.99993 +x_0=650000 +y_0=200000 +ellps=GRS67 +nadgrids=${PROC}/etrs2eov_notowgs.gsb +units=m"
THREADS=18
#ZOOM="5-7"
#ZOOM="8-18"
ZOOM="8-19"
TILE_DRV="WEBP"
TILE_MISC="--webp-quality 85"

date
time \
gdal2tiles.py                           \
  --zoom="${ZOOM}"                      \
  --resampling=cubic \
  --tiledriver ${TILE_DRV}      \
  ${TILE_MISC}                          \
  --processes $THREADS          \
  -w leaflet                            \
  --xyz                                         \
  --exclude \
  ${DST}/${DNAME}_3857.tif          \
  ${DST}/tiles_${DNAME}2015
date

Scriptek 40 cm

#!/bin/bash
# VRT
SRC="${HOME}/fomi"
DST="${HOME}/result/2025"
PROC="${HOME}/process/2025"
DNAME="mepar"

SRS="+init=EPSG:23700 +nadgrids=${PROC}/etrs2eov_notowgs.gsb"

date
time \
gdalbuildvrt                                                                            \
  -allow_projection_difference                                          \
  -a_srs "${SRS}"                                                                       \
  -vrtnodata 255 \
  -overwrite                                                                            \
  ${DST}/index_${DNAME}.vrt                                                                     \
  ${SRC}/2015_o_mepar_RGB/*.tif
date
#!/bin/bash
# Warp
SRC="${HOME}/fomi"
DST="${HOME}/result/2025"
PROC="${HOME}/process/2025"
DNAME="mepar"

EMPTY_COLOR="255"
THREADS=18
# THREADS="ALL_CPUS"
#MEM=1000
MEM=500
MEM_CACHE=1000

date
time \
gdalwarp \
  -t_srs "EPSG:3857"                                                    \
  -tr 0.5971642834779396 0.5971642834779396 \
  -tap \
  -r cubic                                                              \
  -of GTiff                                                                     \
  -co TILED=YES                                                         \
  -co COMPRESS=ZSTD     \
  -co ZSTD_LEVEL=1  \
  -co PREDICTOR=2       \
  -co BIGTIFF=YES                                                       \
  -multi                                                                        \
  -wo NUM_THREADS=$THREADS                                      \
  -wm $MEM                                                                      \
  --config GDAL_CACHEMAX $MEM_CACHE                     \
  -overwrite                                                            \
  ${DST}/index_${DNAME}.vrt                                             \
  ${DST}/${DNAME}_3857.tif
date
#!/bin/bash
# Tiles
SRC="${HOME}/fomi"
DST="${HOME}/result/2025"
DSTFINAL="${HOME}/result"
PROC="${HOME}/process/2025"
DNAME="mepar"

SRS="+proj=somerc +lat_0=47.14439372222222 +lon_0=19.04857177777778 +k_0=0.99993 +x_0=650000 +y_0=200000 +ellps=GRS67 +nadgrids=${PROC}/etrs2eov_notowgs.gsb +units=m"
THREADS=18
#ZOOM="5-7"
ZOOM="8-18"
#ZOOM="8-19"
TILE_DRV="WEBP"
TILE_MISC="--webp-quality 85"

mkdir -p "${DST}/tiles_${DNAME}2015"

date
time \
gdal2tiles.py                           \
  --zoom="${ZOOM}"                      \
  --resampling=cubic \
  --tiledriver ${TILE_DRV}      \
  ${TILE_MISC}                          \
  --processes $THREADS          \
  -w leaflet                            \
  --xyz                                         \
  --exclude \
   --resume \
  ${DST}/${DNAME}_3857.tif              \
  ${DSTFINAL}/tiles_2015_${DNAME}
date

Győr

  1. VRT: 12 sec
  2. Warp: 88 perc; [19:53 - 22:45], cache méretek csökkentése (wiki javaslat alapján) minimális javulást okozott csak (1 perc)
  3. Tiles: 95 perc

KTKSZ

  1. VRT: 7 sec
  2. Warp: 308 perc
  3. Tiles: 201 perc

MEPAR

  1. VRT: 6 perc
  2. Warp: 2126 perc (=35.4 óra); 955 GB
  3. Tiles: 1612 perc (=26.9 óra); 132 GB

Végeredmény

zoom mepar 40 cm nkp 20 cm
8 252 KB
9 916 KB
10 3.4 MB 156 KB
11 12 MB 532 KB
12 39 MB 1.9 MB
13 137 MB 6.4 MB
14 511 MB 24 MB
15 2.0 GB 88 MB
16 7.5 GB 347 MB
17 29 GB 1.5 GB
18 93 GB
  • Győr 20 cm, z9-19: 8.8 GB, 3 óra
  • KTKSZ: 20 cm, z9-19: 20 GB, 8.5 óra
    • Ez a kettő összesen 1 938 590 db file
  • MEPAR: 40 cm, z9-18: 132 GB, 62 óra (2.5 nap)
    • Összesen 11 669 620 db file

Összesen: 161 GB, 73 óra (3 nap)

Készítés közben felhasznált tárhely: ~ 3 TB

Kapcsolódó lapok

Ref

  1. Reszelte és Tesztelte!