gdalmerge створює занадто великий файл


12

Я намагаюсь об'єднати 60 файлів геотифу в один величезний файл, щоб мати можливість продуктувати плитки з отриманого величезного файлу геотифу за допомогою gdal2tiles.

Процес злиття спрацював, але чомусь він створює файл розміром 78 ГБ замість очікуваних 19 ГБ. Не зовсім впевнений, що там пішло не так.

Причиною цього є те, що плитка 60 геотифів один за одним дає мені пробіли на кордоні карти.

Відповіді:


16

Зазвичай GeoTIFF стискаються для зберігання. Запуск файлу gdal_merge за замовчуванням не стисне файл. Додайте опцію

-co COMPRESS=DEFLATE

(або будь-який з інших параметрів, перелічених у документації ) для вашої команди, щоб отримати менші вихідні файли.


1
Для подальшої довідки - моя, якщо нікого іншого - gdal.org/frmt_gtiff.html має набір специфічних параметрів GeoTiff, які ви повинні мати можливість використовувати для будь-якої з команд gdal. Залежно від типу зображень у вас, можливо, вам потрібно COMPRESS = LZQ або навіть JPEG; варто було б витратити час, щоб перевірити тип стиснення, що використовується на вихідних зображеннях.
Трава

Дякую Гербе, я оновив відповідь, щоб містити ваше посилання.
андермаркет

5

Як зазначається в нижньому темпі, найкращим рішенням є стиснення зображень, щоб запобігти прямому збереженню великого об'єму порожнього простору (нативне зображення TIFF - як растрова карта: кожне значення займає однакову кількість місця). Ще один зручний варіант стиснення:

-co COMPRESS=LZW

Він рідко має такий же коефіцієнт стиснення, як DEFLATE, але має перевагу працювати з більшістю програмного забезпечення, де DEFLATEвін не підтримується в багатьох середовищах, таких як ArcGIS 9.x.

Ви можете спробувати ще більш агресивне стиснення без втрат, використовуючи одне з вейвлетських перетворень, наприклад ECW , MrSID або одну з різних реалізацій JPEG2000. Майте на увазі, що вам знадобляться інструменти, що використовують GDAL або іншим чином реалізують бібліотеки для доступу до даних у цих форматах.


3

Ви можете уникнути об'єднання файлів геотифу, написавши файл vrt, який об'єднує їх "практично".

Це XML-файл, який описує, як слід збирати файли. Усі утиліти gdal приймають цей файл vrt як мапу введення. gdal2tiles або MapTiler засновані на gdal, так що вони повинні мати можливість використовувати файл vrt (я ще не намагався з файлом vrt, але я вже намагався з файлом gdal_wms, і він працював досить добре).

Написати файл саду з нуля непросто. Просто перетворіть один із своїх геотифів у сад, щоб мати приклад:

gdal_tranlate -of vrt one_of_your_geotiff.tif one_of_your_geotiff.vrt

Є також інструмент під назвою gdalbuildvrt, але я його не пробував.


1
Метт Перрі приємно записав деякі переваги використання VRT тут: perrygeo.net/wordpress/?p=141
scw
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.