Неподдерживаемое сжатие TIFF
Я использую openslide-python
открыть svs
изображение, и я столкнулся со следующей проблемой:
>> import openslide as osi
>> a = osi.OpenSlide('image.svs')
выдает ошибку
TIFFReadDirectory: Warning, Unknown field with tag 347 (0x15b) encountered.
image.svs: JPEG compression support is not configured.
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/home/manan/anaconda/lib/python2.7/site-packages/openslide/__init__.py", line 154, in __init__
self._osr = lowlevel.open(filename)
File "/home/manan/anaconda/lib/python2.7/site-packages/openslide/lowlevel.py", line 178, in _check_open
raise OpenSlideError(err)
openslide.lowlevel.OpenSlideError: Unsupported TIFF compression: 7
Я не смог найти никаких решений в Интернете по этому вопросу; Я проверил libopenjpeg
и любые дополнительные соответствующие библиотеки, чтобы гарантировать, что они в их последних соответствующих версиях.
1 ответ
Если вы посмотрите на код: https://github.com/openslide/openslide/blob/7b99a8604f38280d14a34db6bda7a916563f96e1/src/openslide-vendor-generic-tiff.c#L222-L226
if (!TIFFIsCODECConfigured(compression)) {
g_set_error(err, OPENSLIDE_ERROR, OPENSLIDE_ERROR_FAILED,
"Unsupported TIFF compression: %u", compression);
goto FAIL;
}
Вы увидите, что он использует libtiff
: функция TIFFIsCODECConfigured
обеспечивается базовым libtiff
библиотека (см. справочную страницу).
Тег сжатия установлен в 7
; это необычно поддерживается JPEG ('new-style' JPEG)
схема сжатия - иногда также называется JPEG-in-TIFF
; для которого вам нужно установить кодек.
Если у вас все еще есть слайды и вы используете, например, Kodak Imaging, то вы сможете снова сканировать их с другим сжатием; но это будет путь назад и обратно. Вероятно, проще попробовать добавить кодек и включить его в libtiff
,
От libtiff
документация:
Поддержка сжатия JPEG контролируется JPEG_SUPPORT. Кодек JPEG, поставляемый с libtiff, предназначен для использования с выпуском 5 или более поздней версии свободно распространяемого программного обеспечения Independent JPEG Group. Это программное обеспечение можно получить из каталога ftp.uu.net:/graphics/jpeg/.
Так что поддержка не является обязательной, и вам может понадобиться восстановить libtiff
(см. инструкции).
По умолчанию поддержка JPEG не настроена.
Рекомендации:
- https://en.wikipedia.org/wiki/TIFF
- http://www.awaresystems.be/imaging/tiff/tifftags/compression.html
- http://www.awaresystems.be/imaging/tiff/faq.html
- http://www.awaresystems.be/imaging/tiff/tml.html
- https://web.archive.org/web/20160108212421/http://www.remotesensing.org/libtiff/TIFFTechNote2.html
- http://libtiff.maptools.org/
- http://www.asmail.be/msg0055223723.html
- http://www.alternatiff.com/resources/TIFFphotoshop.pdf
- https://support.microsoft.com/en-us/kb/885938
- https://support.microsoft.com/en-us/kb/238249
- http://www.libtiff.org/build.html