#!/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 2263.087573364345 4822.861852580005 26.73487008 56.78446115 -gcp 20616.574439686927 4303.837328467151 26.7394352 56.85535814 -gcp 19460.948496626817 19648.946193724347 26.84857965 56.84653379 -gcp 3019.963139626207 19245.211397122417 26.83671892 56.7829685 GX10673/GX_10673_SK_frame_958_copy.jpg GX_10673_SK_frame_958_copy.vrt # Add cutline to VRT gdalwarp -r $GDAL_SAMPLING_WARP -tps -dstalpha -cutline_srs EPSG:4326 \ -cutline "POLYGON(($(echo -e "816.0 3983.901285347044\n20448.0 3743.901285347044\n20352.0 20832.02467866324\n864.0 20928.29614395887" | \ gdaltransform -tps -output_xy GX_10673_SK_frame_958_copy.vrt | \ awk 'NR==1{first=$0} {printf "%s %s,", $1,$2} END{print " " first}')))" \ GX_10673_SK_frame_958_copy.vrt GX_10673_SK_frame_958_copy.cut.vrt # Generate tiles gdal2tiles.py -r $GDAL_SAMPLING_TILE --xyz -z $GDAL_TILE_ZOOMS -x --processes=$GDAL_TILE_PROCESSES GX_10673_SK_frame_958_copy.cut.vrt GX_10673_SK_frame_958_copy.xyz