#!/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 1463.25 447.1661576901721 35.9972833 68.00014075 -gcp 13203.75 486.95946696279844 47.99760554 68.00032752 -gcp 14152.5 11007.137840088839 47.99795348 64.000257 -gcp 390.75 10956.919905607996 35.99767807 64.00007586 -gcp 7331.25 761.6916296501944 41.99743034 68.00023707 -gcp 7263.0 11311.246390893948 41.99780374 64.00016927 vlasenko/north/q-37_38.jpg q-37_38.vrt # Add cutline to VRT gdalwarp -r $GDAL_SAMPLING_WARP -tps -dstalpha -cutline_srs EPSG:4326 \ -cutline "POLYGON(($(echo -e "1463.25 447.1661576901721\n13203.75 486.95946696279844\n14152.5 11007.137840088839\n390.75 10956.919905607996" | \ gdaltransform -tps -output_xy q-37_38.vrt | \ awk 'NR==1{first=$0} {printf "%s %s,", $1,$2} END{print " " first}')))" \ q-37_38.vrt q-37_38.cut.vrt # Generate tiles gdal2tiles.py -r $GDAL_SAMPLING_TILE --xyz -z $GDAL_TILE_ZOOMS -x --processes=$GDAL_TILE_PROCESSES q-37_38.cut.vrt q-37_38.xyz