Во-первых, для решения поставленной задачи libtiff не требуется - достаточно scikit-image.Чтобы сделать вещи менее очевидными, метод skimage.io.imsave () по умолчанию предпочитает работать через PIL (обратите внимание, что для TIFF сделано исключение).Здесь это немного сложно, так как поддержка сжатых файлов TIFF в PIL либо нестабильна, либо требует libtiff.
По умолчанию пробуются разные плагины (начиная с библиотеки изображений Python), пока не будет найден подходящий кандидат.Если он не указан и fname является файлом формата tiff, будет использован плагин tifffile.
и
"Начиная с версии 5.0.0, Pillow требует, чтобы libtiff прочитал илизаписывать сжатые файлы. До этого выпуска у Подушки была глючная поддержка чтения сжатых TIFF-файлов Packbits, LZW и JPEG без использования libtiff. "
Во-вторых, если вам нужно использовать libtiff, не пытайтесь смешиватьпакеты conda и pip .Кажется, в моем случае они загрузили разные и несовместимые версии пакета.[Пакет conda устанавливает двоичные файлы libtiff, но не упаковщик для Python.Следовательно, импорт libtiff (как предполагает некоторая онлайн-документация) не работает, даже если библиотеки присутствуют]
Но вернемся к решению:
Scikit-изображение, однако, поставляется с внешниминструмент для сохранения файлов TIFF (с использованием сжатия ZIP или LZMA): skimage.external.tifffile.imsave () - см. http://scikit -image.org / docs / dev / api / skimage.external.tifffile.html
В заключение: вооружившись scikit-изображением, вы можете без потерь сохранять 16-битные файлы TIFF со сжатием Zip, используя следующую команду (показанную здесь со средним сжатием по алгоритму Zip):
skimage.external.tifffile.imsave("Compressed.tif", image, compress=5)