Библиотека python tifffile читает файлы TIFF, а один из атрибутов указывает формат TIFF.
filename = '/path/to/filename.tif'
import tifffile
def is_bigtiff(filename):
with tifffile.TiffFile(f) as img:
return img.is_bigtiff
tifffile
просто читает первые несколько байтов заголовка tiff, чтобы определить, является ли он BigTIFF, поэтому логический c легко воссоздать без всей библиотеки (что я только что понял глядя на источник для библиотеки, и из которого взято следующее).
import struct
def is_bigtiff(filename):
with open(filename, 'rb') as f:
header = f.read(4)
byteorder = {b'II': '<', b'MM': '>', b'EP': '<'}[header[:2]]
version = struct.unpack(byteorder + "H", header[2:4])[0]
return version == 43