Как заставить imagemagick сохранить исходное цветовое пространство изображения - PullRequest
0 голосов
/ 16 февраля 2020

У меня проблема с преобразованием imagemagicks и сохранением цветового пространства.

У меня есть JPEG, который просто черный (это крайний случай). Когда я запускаю идентификацию на нем, это вывод:

black.jpg JPEG 1920x1080 1920x1080+0+0 8-bit sRGB 12787B 0.000u 0:00.000

Затем я добавляю некоторый текст к изображению:

convert black.jpg -pointsize 50 -fill WHITE -draw "text 100,100 'foobar'" test.jpg

Теперь выполняется идентификация на полученном тестовом изображении:

test.jpg JPEG 1920x1080 1920x1080+0+0 8-bit Gray 256c 11316B 0.000u 0:00.000

Я попытался добавить параметр -colorspace sRGB, но это не помогло вообще. Независимо от того, что я делаю, цветовое пространство всегда преобразуется из sRGB в серый.

Как мне сказать, чтобы imagemagick оставил цветовое пространство таким, как оно есть на исходном изображении?

ImageMagick 6.9 .10-23 Рукоять Q16 20190101

1 Ответ

1 голос
/ 16 февраля 2020

В Imagemagick для большинства форматов вы можете просто добавить -type truecolor. Например:

convert black.jpg -pointsize 50 -fill WHITE -draw "text 100,100 'foobar'" -type truecolor test.jpg


должен делать то, что вы хотите.

Примечание для PNG, вам нужно добавить PNG24: чтобы предварять вывод как PNG24: test.png

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...