Não encontrei nenhum utilitário específico de linha de comando que possa relatar se um tiff é lado a lado ou listrado. Pelo menos não diretamente ou em uma forma grepable como TILED=YES
.
gdalinfo
Entretanto, deve haver informações suficientes para tomar essa decisão.
Eu tenho uma cena de landsat, cada uma feita com 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
Portanto, é óbvio que os blocos de azulejos têm um tamanho de bloco Y maior que 1. Os blocos de tiras têm tamanho de bloco X igual ao tamanho XSize e tamanho de bloco Y igual a 1.
Isso deve ser suficiente para determinar se eles são listrados (não lado a lado).
gdalinfo landsat_notiled.tif | grep -o 'Block=.*x1\s'
>>Block=7621x1
Se essa chamada retornar algo, você pode ter certeza de que NÃO está lado a lado.
Isso não trata de tiffs muito pequenos, que podem ter toda a matriz raster armazenada em um único bloco. Então YMMV naqueles ..
gdal_translate -srcwin 0 0 50 1 -co tiled=YES input.tif test_tiled.tif
.gdalinfo
ainda relata,Block=256x256
para que seu método funcione também para pequenos detalhes.