Вы можете передать TranslateOptions объект на ваш gdalTranslate
вызов, где вы можете добавить соответствующий creationOptions
для сжатия.
В качестве фиктивного кода:
from osgeo import gdal
topts = gdal.TranslateOptions(creationOptions=['COMPRESS=LZW', 'PREDICTOR=2'])
outds=gdal.Translate(outtif,outds, options=topts)
Конечно, опции также могут быть строкой или массивом строк - использовать TranslateOptions
.
также не обязательно. Кроме того, настройка сжатия, используемая в фиктивном коде, является лишь примером. Чтобы максимизировать прибыль, вы должны выбрать опции, которые работают с вашими данными.
Вот выдержка из документации о доступных опциях для GeoTiffs :
COMPRESS = JPEG / LZW / PACKBITS / DEFLATE / CCITTRLE / CCITTFAX3 / CCITTFAX4 / LZMA / ZSTD / LERC / LERC_DEFLATE / LERC_ZSTD / WEBP / NONE]: установите используемое сжатие. Обычно JPEG следует использовать только с байтовыми данными (8 бит на канал). Но начиная с GDAL 1.7.0 и при условии, что GDAL построен с внутренними libtiff и libjpeg, можно читать и записывать файлы TIFF с 12-битными сжатыми файлами JPEG TIFF (которые рассматриваются как полосы UInt16 с NBITS = 12). Смотрите вики-страницу «8 и 12 бит JPEG в TIFF» для более подробной информации. Сжатие CCITT должно использоваться только с данными 1 бит (NBITS = 1). Сжатия LZW, DEFLATE и ZSTD могут использоваться с опцией создания PREDICTOR. ZSTD доступен начиная с GDAL 2.3, когда используется внутренний libtiff и если GDAL собран против libzstd> = 1.0, или если он построен против внешнего libtiff с поддержкой zstd. LERC / LERC_DEFLATE / LERC_ZSTD доступны с GDAL 2.4 при использовании внутреннего libtiff (и для LERC_ZSTD, см. Вышеупомянутые условия). Ни один не используется по умолчанию.
NUM_THREADS = number_of_threads / ALL_CPUS: (из GDAL 2.1) Включить многопоточное сжатие, указав количество рабочих потоков. Стоит для медленных сжатий, таких как DEFLATE или LZMA. Будет проигнорировано для JPEG. По умолчанию используется сжатие в главном потоке.
PREDICTOR = [1/2/3]: установите предиктор для сжатия LZW, DEFLATE и ZSTD. По умолчанию 1 (без предиктора), 2 - горизонтальная разность, а 3 - прогноз с плавающей запятой.