Відсікання растрових зображень збільшує розмір файлу


9

Робота з QGIS 2.4.0 Chugiak У мене є питання щодо відсікання растрових зображень. У мене є аерофотозйомка, яку я хочу вирізати за допомогою розширень файлу форм. Поки що добре, я використовував інструмент для растру / видобутку / відсікання для цього. Проблема полягає в тому, що розмір мого вихідного растру майже втричі перевищує вихідний файл (тобто 725.283 та 249.693 кб відповідно), тоді як він охоплює меншу поверхню.

Чому мій файл більший? І чи є спосіб встановити розмір вихідного файлу?

Довідкова функція clipper посилається на таку сторінку: http://www.gdal.org/gdal_translate.html Хоча я не можу багато з цього зробити.

Я відносно новий QGIS.


Зазвичай це означає, що оригінал стискається, але відрізаний тиф не стискається. Ви повинні прочитати про драйвер GDAL GeoTIFF та параметри стиснення.
користувач30184

Якщо ви хочете використовувати стиснення на своєму вихідному наборі даних, вам слід відредагувати команду, як показано внизу інтерфейсу машинки, і включити параметри створення з -coпрапором. Для GeoTiff можна, наприклад, включити -co compress=lzwвикористання стиснення LZW без втрат. Ми повинні знати більше про ваш набір даних, хоча ми зможемо допомогти вам (наприклад, через gdlainfo).
Керстен

Нестиснені зображення TIFF, як правило, швидше.
Золтан

Дякую всім за відповіді. Це справді може бути проблемою стиснення, я про це не думав. Так, Керстен, я помітив консоль в інтерфейсі машинки, хоча я не зрозумів, як це використовувати. Я намагаюся запустити gdalinfo з консолі Python в QGIS, але у мене немає досвіду цього. Хтось знає про належний підручник для ознайомлення? Ура
Матхійс

Ви можете піти Raster > Miscellaneous > Information, що gdalinfoпрацювати на вашому растровий файл. Ви не можете запустити його безпосередньо з консолі Python, оскільки це не сценарій Python.
bosth

Відповіді:


6

Коли ви запускаєте інструмент растрового кліпу в QGIS, він показує вам точну команду GDAL, яка буде виконуватися в нижній частині діалогового вікна.

Інструмент для растрового кліпу

Натиснувши кнопку пера вправо від команди, ви можете її редагувати безпосередньо та додавати параметр конфігурації стиснення. У моєму прикладі це команда запуску:

gdalwarp -q -cutline /tmp/mask.shp -crop_to_cutline -of GTiff /tmp/453A.tif /tmp/output.tif

Ви можете змінити це так:

gdalwarp -q -cutline /tmp/mask.shp -crop_to_cutline -of GTiff -co "COMPRESS=LZW" /tmp/453A.tif /tmp/output.tif

Додатковий -co "COMPRESS=LZW"- це лише один із багатьох можливих варіантів стиснення, які можна використовувати з файлами GeoTIFF. Документація GDAL містить більше інформації про всі варіанти.


Велике спасибі, саме це мені було потрібно. Файл все ще складає 409.019 кб, що майже вдвічі більше, ніж оригінал, але рендерінг набагато швидший. Цей веб-сайт я бачив, але я не міг багато чого зрозуміти. Gdalinfo показав, що стиснення дійсно було "відмічено" для першого кліпу, тому це справді була проблема.
Матхійс

Під час запуску gdalinfoщо він повідомляє про стиснення? Ми повинні мати можливість повторити його у другому файлі, як тільки ми знаємо. Я гадаю, що він може бути збитково-JPEG, якщо він значно менший, ніж LZW.
bosth

Це те, що йдеться про вихідне зображення: 'Розмір пікселя = (0.000738433000001, -0.000738432999949) Метадані: AREA_OR_POINT = Метадані структури структури зображення: COMPRESSION = LZW INTERLEAVE = PIXEL', і це те, що йдеться про відрізане зображення: 'Розмір пікселя = (0.000738423955088, -0.000738437979722) Метадані: AREA_OR_POINT = Метадані структури структури зображення: COMPRESSION = LZW INTERLEAVE = PIXEL '
Mathijs

Чи можливо, ви випадково отримали метадані для одного і того ж зображення двічі, оскільки обидва однакові?
bosth

Їх немає, подивіться на розмір пікселів;)
Mathijs

0

Оновлення для версій QGIS 3 та новіших версій: параметр стиснення тепер інтегрований у плагін Raster-> Extraction-> Clip raster by mask layerта в більшість інших плагінів, які створюють растрові файли.

У розділі Advanced parameters-> Profile, вибравши Low compressionабо High compressionотримаєте менший файл.

Ці параметри стиснення без втрат, але ви також можете вибрати варіанти втрат:

  • Low compression -> -co PACKBITS(без втрат)
  • High compression-> -co DEFLATE(без втрат)
  • JPEG compression-> -co JPEG_QUALITY=75(втрата: остерігайся!)

Зніміть растр за допомогою шару маски

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.