auto-sync: 2026-05-13 22:10:01
This commit is contained in:
85
tasks/enduro-trails/scripts/gen_tri_full.sh
Normal file
85
tasks/enduro-trails/scripts/gen_tri_full.sh
Normal file
@@ -0,0 +1,85 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
echo '=== FULL TRI REGENERATION (32E-50E) ==='
|
||||
echo "Start: $(date)"
|
||||
|
||||
SRTM_DIR='/home/slin/enduro-trails/data/srtm'
|
||||
TERRAIN_DIR='/home/slin/enduro-trails/data/terrain'
|
||||
TRI_DIR="${TERRAIN_DIR}/tri"
|
||||
TMP='/tmp/tri_gen'
|
||||
mkdir -p $TMP
|
||||
|
||||
echo ''
|
||||
echo '=== Step 1: Merge all 101 HGT files ==='
|
||||
ls $SRTM_DIR/*.hgt > $TMP/hgt_list.txt
|
||||
echo "Files: $(wc -l < $TMP/hgt_list.txt)"
|
||||
|
||||
gdalbuildvrt -input_file_list $TMP/hgt_list.txt $TMP/merged_full.vrt
|
||||
echo "VRT built"
|
||||
|
||||
echo ''
|
||||
echo '=== Step 2: Compute TRI ==='
|
||||
gdaldem TRI $TMP/merged_full.vrt $TMP/tri_raw_full.tif \
|
||||
-of GTiff -co COMPRESS=LZW -co BIGTIFF=YES
|
||||
echo "TRI computed"
|
||||
|
||||
echo ''
|
||||
echo '=== Step 3: Color relief (thresholds x1.3) ==='
|
||||
cat > $TMP/tri_color_v3.txt << 'RAMP'
|
||||
nv 0 0 0 0
|
||||
0 0 0 0 0
|
||||
3 0 0 0 0
|
||||
4 255 255 100 60
|
||||
5 255 230 50 100
|
||||
6.5 255 200 0 140
|
||||
9 255 150 0 180
|
||||
13 255 100 0 200
|
||||
20 230 50 0 220
|
||||
26 200 0 0 235
|
||||
39 180 0 50 245
|
||||
65 150 0 100 255
|
||||
RAMP
|
||||
|
||||
gdaldem color-relief \
|
||||
$TMP/tri_raw_full.tif \
|
||||
$TMP/tri_color_v3.txt \
|
||||
$TMP/tri_colored_full.tif \
|
||||
-alpha \
|
||||
-of GTiff \
|
||||
-co COMPRESS=LZW \
|
||||
-co BIGTIFF=YES
|
||||
echo "Color relief done"
|
||||
|
||||
echo ''
|
||||
echo '=== Step 4: Generate tiles ==='
|
||||
rm -rf ${TRI_DIR}
|
||||
mkdir -p ${TRI_DIR}
|
||||
|
||||
gdal2tiles.py \
|
||||
--zoom=5-12 \
|
||||
--processes=4 \
|
||||
--tilesize=256 \
|
||||
--webviewer=none \
|
||||
$TMP/tri_colored_full.tif \
|
||||
${TRI_DIR}/
|
||||
echo "Tiles generated"
|
||||
|
||||
echo ''
|
||||
echo '=== Step 5: Stats ==='
|
||||
for z in 5 6 7 8 9 10 11 12; do
|
||||
total=$(find ${TRI_DIR}/$z/ -name '*.png' 2>/dev/null | wc -l)
|
||||
nonempty=$(find ${TRI_DIR}/$z/ -name '*.png' -size +400c 2>/dev/null | wc -l)
|
||||
echo " zoom $z: $total total, $nonempty non-empty"
|
||||
done
|
||||
|
||||
echo ''
|
||||
du -sh ${TRI_DIR}
|
||||
|
||||
# Also update merged_srtm.tif for future use
|
||||
cp $TMP/tri_raw_full.tif $TMP/tri_raw.tif
|
||||
gdal_translate -of GTiff -co COMPRESS=LZW $TMP/merged_full.vrt ${TERRAIN_DIR}/merged_srtm.tif
|
||||
|
||||
echo ''
|
||||
echo '=== DONE ==='
|
||||
echo "End: $(date)"
|
||||
Reference in New Issue
Block a user