Saya belum menemukan utilitas commandline khusus yang dapat melaporkan jika tiff di-tile atau bergaris-garis. Setidaknya tidak secara langsung atau dalam bentuk seperti grepable TILED=YES
.
Namun, harus ada informasi yang cukup gdalinfo
untuk membuat keputusan itu.
Saya memiliki adegan landsat, masing-masing dibuat dengan 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
Jadi jelas bahwa tiffs ubin memiliki ukuran blok Y lebih besar dari 1. Tiff bergaris memiliki ukuran blok X sama dengan XSize dan ukuran blok Y sama dengan 1.
Ini harus cukup untuk menentukan apakah mereka bergaris (bukan ubin).
gdalinfo landsat_notiled.tif | grep -o 'Block=.*x1\s'
>>Block=7621x1
Jika panggilan itu mengembalikan apa pun, Anda dapat yakin itu TIDAK ubin.
Ini tidak membahas tiff yang sangat kecil, yang dapat membuat seluruh array raster disimpan dalam satu blok. Jadi YMMV pada mereka ..
gdal_translate -srcwin 0 0 50 1 -co tiled=YES input.tif test_tiled.tif
.gdalinfo
masih melaporkanBlock=256x256
sehingga metode Anda akan bekerja untuk tiff kecil juga.