TIFFがタイル化またはストライプ化されているかどうかを報告できる特定のコマンドラインユーティリティは見つかりませんでした。少なくとも直接、またはのような複製可能な形式ではありませんTILED=YES
。
gdalinfo
ただし、その決定を行うのに十分な情報が必要です。
私はそれぞれgdal_translateで作られたlandsatシーンを持っています:
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
したがって、タイル化されたtiffのYブロックサイズが1より大きいことは明らかです。ストライプ化されたtiffのXブロックサイズはXSizeに等しく、Yブロックサイズは1に等しくなります。
これは、それらがストライプ化されている(タイル化されていない)かどうかを判断するには十分です。
gdalinfo landsat_notiled.tif | grep -o 'Block=.*x1\s'
>>Block=7621x1
その呼び出しで何かが返された場合は、タイル化されていないことを確認できます。
これは非常に小さなtiffには対応していません。これは、ラスターアレイ全体を1つのブロックに格納することができます。だからYMMVで
gdal_translate -srcwin 0 0 50 1 -co tiled=YES input.tif test_tiled.tif
。gdalinfo
まだ報告しているBlock=256x256
ので、あなたの方法は小さなティフでも機能します。