GDAL có thể báo cáo nếu một .tiff được lát gạch hay không?


9

Một phần mềm nhất định mà tôi sử dụng không hỗ trợ .tiff DEM được lát gạch. Có cách nào với tiện ích GDAL để xác định xem DEM .tiff có được lát gạch hay không?

gdalinfo dem.tif 

sẽ báo cáo loại nén và loại xen kẽ (dải / pixel), nhưng theo như tôi có thể nói, loại xen kẽ không liên quan gì đến ốp lát.

bạn có thể dịch DEM tiff bằng cờ tùy chọn tạo để tạo DEM cho đến khi đó, nhưng điều đó đòi hỏi phải có bản dịch chứ không chỉ là báo cáo.

gdal_translate -co TILED=NO dem.tif dem_notile.tif

Câu trả lời:


11

Tôi không tìm thấy bất kỳ tiện ích dòng lệnh cụ thể nào có thể báo cáo nếu một tiff bị lát gạch hoặc sọc. Ít nhất là không trực tiếp hoặc ở dạng grepable như TILED=YES.

Tuy nhiên, cần có đủ thông tin gdalinfođể đưa ra quyết định.

Tôi có một cảnh đất liền, mỗi cảnh được thực hiện bằng gdal_translate:

landsat_tiled.tif : -co TILED=YES

landsat_notiled.tif: -co TILED=NO

gdalinfo landsat_tiled.tif | grep -E 'Block=|Size is'
>>Size is 7621, 7791
>>Band 1 Block=256x256 Type=UInt16, ColorInterp=Gray

gdalinfo landsat_notiled.tif | grep -E 'Block=|Size is'
>>Size is 7621, 7791
>>Band 1 Block=7621x1 Type=UInt16, ColorInterp=Gray

Vì vậy, rõ ràng là các tiff lát gạch có kích thước khối Y lớn hơn 1. Các tiff sọc có kích thước khối X bằng với kích thước khối XSize và khối Y bằng 1.

Điều này là đủ để xác định nếu chúng là sọc (không lát gạch).

gdalinfo landsat_notiled.tif | grep -o 'Block=.*x1\s'
>>Block=7621x1

Nếu cuộc gọi đó trả về bất cứ điều gì, bạn có thể chắc chắn rằng nó KHÔNG được lát gạch.

Điều này không giải quyết các tiff rất nhỏ, có thể có toàn bộ mảng raster được lưu trữ trong một khối duy nhất. Vì vậy, YMMV trên những ..


2
Tôi vừa tạo ra một tiff 50x1 lát gạch với gdal_translate -srcwin 0 0 50 1 -co tiled=YES input.tif test_tiled.tif. gdalinfovẫn báo cáo Block=256x256để phương pháp của bạn cũng sẽ làm việc cho các tiff nhỏ.
dùng2856
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.