Как Python PIL определяет, является ли изображение TIFF RGBA или CMYK?Python

Программы на Python
Ответить
Anonymous
 Как Python PIL определяет, является ли изображение TIFF RGBA или CMYK?

Сообщение Anonymous »

В C/C++ мы используем libtiff 4.6.0 для анализа изображений TIFF. Мы определяем тип изображения TIFF с помощью:

Код: Выделить всё

unsigned int PhotoMetric = 0, SamplesPerPixel = 1, BitsPerSample = 1;
TIFFGetField(Tiff, TIFFTAG_PHOTOMETRIC, &PhotoMetric);
TIFFGetField(Tiff, TIFFTAG_SAMPLESPERPIXEL, &SamplesPerPixel);
TIFFGetField(Tiff, TIFFTAG_BITSPERSAMPLE, &BitsPerSample);

if ((PhotoMetric == PHOTOMETRIC_MINISWHITE) || (PhotoMetric == PHOTOMETRIC_MINISBLACK) || (SamplesPerPixel == 1)) {
if (BitsPerSample == 1)
Type = PRESCRENED_TIFF_IMAGE;
else
Type = MONOCHROME_TIFF_IMAGE;
} else if (SamplesPerPixel == 4)
Type = CMYK_TIFF_IMAGE;
else
Type = OTHER_TIFF_IMAGE;
где *_TIFF_IMAGE — значения перечисления.
В Python мы используем PIL для анализа изображений TIFF. Некоторые изображения TIFF классифицируются в коде C как CMYK_TIFF_IMAGE, тогда как в Python они классифицируются либо как RGBA, либо как CMYK в соответствии с атрибутом Image.mode. Нам нужно, чтобы это было последовательно. Какие дополнительные проверки следует добавить в код C, чтобы отличить изображения CMYK от изображений RGBA?

Подробнее здесь: https://stackoverflow.com/questions/798 ... ba-or-cmyk
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»