Memotong gambar raster meningkatkan ukuran file

9

Bekerja dengan QGIS 2.4.0 Chugiak Saya punya pertanyaan tentang kliping gambar raster. Saya memiliki gambar udara yang ingin saya klip menggunakan luasan shapefile. Sejauh ini baik, saya menggunakan alat raster / ekstraksi / clipper untuk melakukan ini. Masalahnya adalah bahwa ukuran file raster output saya hampir tiga kali lebih besar dari file asli (masing-masing 725.283 dan 249.693 kb), sedangkan itu mencakup permukaan yang lebih kecil.

Mengapa file saya lebih besar? Dan apakah ada cara untuk 'mengatur' ukuran file output?

Fungsi bantuan clipper merujuk ke halaman berikut: http://www.gdal.org/gdal_translate.html Meskipun saya tidak dapat memperoleh banyak manfaat darinya.

Saya relatif baru di QGIS.

Mathijs
sumber
Biasanya itu berarti bahwa dokumen asli dikompresi tetapi tiff yang terpotong tidak dikompresi. Anda harus membaca tentang driver GDAL GeoTIFF dan opsi kompresi.
user30184
Jika Anda ingin menggunakan kompresi pada dataset keluaran Anda, Anda harus mengedit perintah, seperti yang ditunjukkan di bagian bawah antarmuka clipper, dan menggabungkan opsi pembuatan dengan -cobendera. Untuk GeoTiff Anda bisa misalnya memasukkan -co compress=lzwuntuk menggunakan kompresi LZW lossless. Kami perlu tahu lebih banyak tentang dataset Anda agar dapat membantu Anda (misalnya via gdlainfo).
Kersten
Gambar TIFF tanpa kompresi biasanya lebih cepat.
Zoltan
Terima kasih untuk semua balasannya. Ini mungkin memang masalah kompresi, saya belum memikirkan itu. Ya Kersten saya memang melihat konsol di antarmuka clipper, meskipun saya belum menemukan cara untuk menggunakan ini. Saya mencoba menjalankan gdalinfo dari konsol Python di QGIS tapi saya tidak punya pengalaman dengan ini. Adakah yang tahu tutorial yang tepat untuk membiasakan diri? Cheers
Mathijs
Anda dapat pergi ke Raster > Miscellaneous > Informationuntuk gdalinfomenjalankan file raster Anda. Anda tidak dapat menjalankannya langsung membentuk konsol Python karena itu bukan skrip Python.
bosth

Jawaban:

6

Ketika Anda menjalankan alat klip raster di QGIS, itu menunjukkan Anda perintah GDAL yang tepat yang akan dijalankan di bagian bawah kotak dialog.

Alat klip raster

Dengan mengklik tombol pena di sebelah kanan perintah, Anda dapat mengeditnya langsung dan menambahkan opsi konfigurasi kompresi. Dalam contoh saya, ini adalah perintah awal:

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

Anda dapat mengubah ini menjadi:

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

Ekstra -co "COMPRESS=LZW"hanyalah salah satu dari banyak opsi kompresi yang dapat Anda gunakan dengan file GeoTIFF. The dokumentasi GDAL memiliki informasi lebih lanjut tentang semua pilihan.

bosth
sumber
Terima kasih banyak, itulah yang saya butuhkan. File ini masih 409.019 kb, jadi hampir dua kali lipat lebih besar dari aslinya, tetapi renderingnya jauh lebih cepat. Situs web itu telah saya lihat tetapi saya tidak bisa memahaminya. Gdalinfo menunjukkan bahwa kompresi memang 'ditandai' untuk klip pertama, jadi ini memang masalahnya.
Mathijs
Ketika Anda menjalankan gdalinfo, apa yang dilaporkan untuk kompresi? Kita harus bisa menggandakannya di file kedua setelah kita tahu. Dugaan saya adalah bahwa itu mungkin JPEG lossy jika jauh lebih kecil dari LZW.
bosth
Inilah yang dikatakan untuk gambar asli: 'Ukuran Piksel = (0,000738433000001, -0,000738432999949) Metadata: AREA_OR_POINT = Struktur Gambar Area Metadata: KOMPRESI = LZW INTERLEAVE = PIXEL' dan inilah yang dikatakan untuk gambar yang dipotong: 'Ukuran Pixel' = (0,000738423955088, -0,000738437979722) Metadata: AREA_OR_POINT = Struktur Gambar Area Metadata: KOMPRESI = LZW INTERLEAVE = PIXEL '
Mathijs
Mungkinkah Anda secara tidak sengaja mendapatkan metadata untuk gambar yang sama dua kali karena keduanya sama?
bosth
Mereka tidak, lihat ukuran piksel;)
Mathijs
0

Perbarui untuk QGIS versi 3 dan lebih tinggi: opsi kompresi sekarang terintegrasi dalam plugin Raster-> Extraction-> Clip raster by mask layer, dan di sebagian besar plugin lain yang menghasilkan file raster.

Di bawah Advanced parameters-> Profile, memilih salah satu Low compressionatau High compressionakan menghasilkan file yang lebih kecil.

Opsi kompresi ini bersifat lossless, tetapi Anda juga bisa memilih opsi lossy:

  • Low compression -> -co PACKBITS(lossless)
  • High compression-> -co DEFLATE(lossless)
  • JPEG compression-> -co JPEG_QUALITY=75(lossy: awas!)

Klip raster dengan lapisan topeng

RafDouglas
sumber