#!/bin/bash GDAL_TILE_PROCESSES=16 GDAL_TILE_ZOOMS=8-14 GDAL_SAMPLING_WARP=cubic GDAL_SAMPLING_TILE=antialias # Create virtual dataset with coordinates gdal_translate -of VRT -a_srs EPSG:4326 -outsize 300% 300% -gcp 0.0 0.0 25.056896209717 57.448551791887 -gcp 9444.0 0.0 25.191307067871 57.458341018382 -gcp 9444.0 12882.0 25.21842956543 57.362645348151 -gcp 0.0 12882.0 25.082302093506 57.352598999848 LVVA_F7404_US1_GV223_0002.jpg LVVA_F7404_US1_GV223_0002.vrt # Add cutline to VRT gdalwarp -r $GDAL_SAMPLING_WARP -tps -dstalpha -cutline_srs EPSG:4326 \ -cutline "POLYGON(($(echo -e "360.0 6723.0\n1431.0 6708.0\n1683.0 6606.0\n2136.0 6468.0\n2484.0 6372.0\n2553.0 6303.0\n2544.0 2424.0\n6513.0 2373.0\n6525.75 377.25\n7719.0 381.0\n7782.0 2375.25\n8850.0 2400.0\n8880.0 12879.0\n2615.625 12862.5\n2599.5 11827.5\n2394.0 11394.0\n393.0 11436.0" | \ gdaltransform -tps -output_xy LVVA_F7404_US1_GV223_0002.vrt | \ awk 'NR==1{first=$0} {printf "%s %s,", $1,$2} END{print " " first}')))" \ LVVA_F7404_US1_GV223_0002.vrt LVVA_F7404_US1_GV223_0002.cut.vrt # Generate tiles gdal2tiles.py -r $GDAL_SAMPLING_TILE --xyz -z $GDAL_TILE_ZOOMS -x --processes=$GDAL_TILE_PROCESSES LVVA_F7404_US1_GV223_0002.cut.vrt LVVA_F7404_US1_GV223_0002.xyz