Теоретически, правильным способом преобразования цветного изображения в черно-белое должно быть использование
канала яркости . Яркость - это показатель того, насколько наши глаза чувствительны к определенному цвету, и, следовательно, насколько «яркими» мы его видим. Увы, Gimp предоставляет много способов конвертировать в B & W, но не самый подходящий. :-(
Вот тестовое изображение, которое я использовал для сравнения различных методов. Вы можете скачать его и убедиться в этом:
Треугольник слева - это сечение цветового куба в плоскости, содержащей основные цвета R, G и B. Я сделал сечение в
линейном пространстве -RGB, затем гамма-кодировал его в
sRGB . Треугольник справа - это «правильный» черно-белый рендеринг, то есть гамма-кодированная яркость. Преобразуя это изображение в черно-белое, я делаю следующие наблюдения:
- Зеленый цвет светлее синего, но многие методы преобразования не признают этого и делают все праймериз равными по яркости.
- Обесцвечивание / легкость имеет эту проблему (одинаковый вес для всех основных цветов) и, кроме того, создает некоторые искусственные линии в треугольнике
- обесцвечивание / усреднение также одинаково взвешивает все основные цвета, но дает более плавное изображение; только он имеет тенденцию делать насыщенные цвета темнее, чем менее насыщенные
- обесцвечивание / яркость становится довольно близким, но насыщенные синие и красные цвета становятся слишком темными; технически это
канал яркости , то есть «правильная» вещь, за исключением забытия гамма-декодирования / кодирования
- преобразовать в оттенки серого аналогично обесцвечиванию / светимости
- сохранение одного канала R, G или B выглядит очень странно, если у вас насыщенные цвета
- канал V от HSV отображает все основные цвета как белые, что очень неестественно
- L-канал от LAB ужасен, так как он не сохраняет серые цвета (они становятся слишком светлыми)
- Y-канал из ITU R709 имеет ту же яркость, что и обесцвечивание / яркость
- Y-канал из ITU R470 также является своего рода яркостью, но он использует веса для R, G и B, которые отличаются от весов sRGB; на самом деле я думаю, что это самый естественный рендеринг.
Хорошо, теперь это теория о получении наиболее «естественного» рендеринга. На практике вы можете вместо этого использовать любой рендеринг, который лучше подходит для изображения под рукой. Например, вы можете перевесить красные в микшере канала, чтобы осветлить и сгладить тона кожи или увеличить контраст между голубым небом и белыми облаками. Мои личные выводы:
- Если изображение не имеет сильно насыщенных цветов, то любой метод должен обеспечить разумную визуализацию, за исключением L из LAB; Я бы тогда не заботился слишком сильно и использовал бы любой из них, вероятно, преобразовал бы в оттенки серого или обесцвечивал бы / яркость (которые одинаковы)
- Если есть насыщенные цвета и я хочу наиболее естественный рендеринг, я бы выбрал канал Y из ITU R470
- Если я хочу больше контроля, я бы использовал микшер канала, начав примерно с (1/3 R, 1/2 G, 1/6 B), затем настроившись по вкусу
- В любом случае, я бы отредактировал изображение с помощью инструмента кривых прямо после преобразования, просто чтобы получить приятный контраст и яркость.