Преобразование в четыре оттенка при сохранении значений / яркости в Photoshop

9

Я хотел бы уменьшить количество оттенков в моем плоском изображении с полного диапазона до четырех, но я бы хотел сохранить значение / яркость (и, если возможно, также насыщенность). Я хочу четыре оттенка, потому что я думаю, что это будет выглядеть круто.

Я попытался использовать слой регулировки оттенка, но когда я использовал его, он только смещал диапазон во время преобразования, так что один диапазон был преобразован в другой диапазон с множеством цветов. Я хочу сместить указанный диапазон для преобразования в тот же оттенок, сохраняя при этом значение / яркость (и, возможно, даже насыщенность, если это возможно).

Я использую Photoshop CS5

Вот четыре значения оттенка HSB / HSV, которые я хочу использовать:

  1. 333
  2. 58
  3. 193
  4. 242

Вот как я хотел бы преобразовать оттенки:

Целевые значения HSV

Примечание. Я изменил этот вопрос с момента его публикации. Сначала я по ошибке попросил респондентов уменьшить изображение до четырех значений RGB , одновременно сохраняя оттенки / значения в исходном изображении. Это, однако, невыполнимая задача, поскольку значения RGB содержат оттенки / яркость и оттенки; в RGB оттенок и оттенок неразрывно связаны.

К счастью, @Wolff смог понять, что я имел в виду, несмотря на мою плохую формулировку, и вместе с @Danielillo, @Ryan и @Emilie он помог мне понять, что я действительно просил нацелиться на четыре оттенка, а не на четыре RGB ценности. Затем он определил четыре оттенка, присутствующих в моих значениях RGB (в HSB / HSV). Именно эти значения HSB / HSV - это те, которые я прошу респондентов нацеливать при преобразовании изображения (не RGB).

Кроме того, как заметил @Wolff, в первой версии моего поста я не указывал, как конвертировать полный спектр HSB (у меня не было пурпурно-подобных диапазонов). Обновленный вопрос также включает этот ранее пропущенный диапазон.

Для тех, кто хочет понять причину путаницы (справедливо выраженной некоторыми пользователями, предоставившими альтернативные ответы), это были оригинальные 4 значения RGB, которые я разместил:

введите описание изображения здесь

Уточнение: Пожалуйста, знайте, что мое намерение только для экрана, а не для печати. Я создал сайт на основе этих четырех оттенков, и я подумал, что будет хорошо, если все изображения будут иметь искаженные цвета, соответствующие им. В то же время в каждом из четырех диапазонов свернутых цветов я хотел сохранить как можно больше динамики, кодируемой исходным значением / яркостью. Надеюсь, это поможет. Баллы не будут присуждаться мной, оригинальным постером, за ответы на вопросы, но сообщество, вероятно, оценит любое объяснение решения для печати. @ Эмили, которая поставила награду за этот вопрос, может вознаградить того, кого она пожелает.

Спасибо @Emilie за предоставленную награду за это! Я действительно был огорчен, что никто, казалось, не мог ответить на это раньше.

CoderScissorhands
источник
просто предположение, но сочетание черно-белого корректирующего слоя и карты градиента?
Винсент
@ Винсент не сработает, я не верю. На самом деле я не думаю, что какой-либо ответ будет работать. Это ошибочная концепция.
Райан
Хорошо ... тогда вам не нужны специальные каналы. Вы можете просто замаскировать слои и накладывать слишком большой цвет .... Он будет учитывать оттенки, если вы отправите режим наложения "Hue" или "color".
Скотт
Окрашивание легко (я бы использовал карты градиента). Автоматический выбор диапазонов оттенков и создание масок - это самая сложная часть. Я еще не думал о решении для этого.
Марк Эдвардс
1
@ Emilie, это заставило мой день видеть всю помолвку твоей награды! Кроме того, я вижу результаты (которые я мог только представить раньше)! Даже «неправильные» ответы интересны. Еще раз спасибо!!
CoderScissorhands

Ответы:

6

Как уже отмечали другие, логика этого вопроса несколько ошибочна, но, тем не менее, очень интересна.

Мой ответ в основном основан на математике RGB / HSB, и я признаю, что есть много сомнительных аспектов, когда речь идет о воспринимаемых цветах, цветовых профилях и т. Д., Но я все равно попробую.


Я позволю себе немного переопределить вопрос, чтобы иметь возможность на него ответить.

Во-первых, спектр, который вы нам показываете, меняется с красного на синий. Пурпурного отсутствует - что делать с цветами в той части спектра?

Поэтому я расширяю ваш спектр, чтобы включить пурпурный в обоих концах.

Еще одна проблема, которую мы имеем, это ваш список четырех оттенков, как вы его называете. Это не просто оттенки , это цвета с индивидуальными значениями насыщенности и яркости . Это не имеет особого смысла, если мы хотим сравнить их со спектром, поэтому нам нужно «уменьшить их до оттенков», изменив насыщенность и яркость на 100.


Мы будем использовать фильтр HSB / HSL (необходимо загрузить с сайта Adobe) в Photoshop, чтобы получить оттенок изображения в виде альфа-маски. Затем мы будем использовать Gradient Map для сопоставления значений оттенков с требуемыми значениями, а затем снова конвертируем изображение в RGB с использованием HSB / HSL Filter.

Математика немного прикольная, потому что диапазон оттенков 0-360 ( и он оборачивается), диапазон альфа 0-255, а диапазон градиентных остановок 0-100.

Сначала я составлю стол, чтобы понять, что происходит. Нам могут не понадобиться все цифры.

(Значения округлены, а оттенки не совсем так, как вы их определили, потому что я расширил спектр. Они, конечно, могли быть размещены по-другому.)

Давайте возьмем красочное изображение и добавим спектр в качестве эталона. (Фото Майка Гуда из Pixabay).

Использование HSB / HSL Filter дает нам следующий канал оттенка:

Я копирую канал оттенка в новый документ в оттенках серого (цветовой профиль должен быть Gray Gamma 2.2 ), чтобы иметь возможность использовать Gradient Map на нем. Я установил Градиентную Карту следующим образом:

Настройка градиентных остановок требует немного возни (работать с ним довольно раздражает). Я получаю значения из таблицы, которую я сделал раньше. Всего 8 остановок, некоторые из которых должны перекрываться, чтобы получить сложные переходы:

Результирующий канал оттенка выглядит так:

Наконец, я копирую этот канал оттенка обратно в исходное изображение HSB, заменяя старый канал оттенка, и преобразую изображение обратно в RGB, используя HSB / HSL Filter.

Я верю, что это так, как просили, но я не уверен, выглядит ли это так круто, как вы надеялись. Переходы очень резкие, но, конечно, их можно смягчить, изменив карту градиента.


Изменить: Javascript подход

Вот JSFiddle с версией Javascript той же концепции. Перетащите изображение на получившуюся страницу, и оно преобразуется в четыре оттенка. Измените «hueRanges», чтобы настроить результат. Основная часть кода аннотирована.

Результат немного отличается от метода Photoshop, но он очень близок:

Так как я не знаю математику за фильтрами в Фотошопе, я не могу сказать, почему есть такая разница.

Wolff
источник
Прекратите писать в комментариях. Чат был создан, все комментарии после его создания теперь потеряны. Используйте чат.
Райан
2

Это ошибочная концепция для воспроизведения, потому что она совершенно аббревиатура, когда один цвет заканчивается, а другой начинается. Вы также говорите о сохранении оттенка, который делает его еще более запутанным.

Тем не менее, для вашего результата вы можете попробовать:

  1. Конвертировать в LAB
  2. Дублируйте слой и постеризуйте его 4
  3. Создайте 4 корректирующих слоя сплошного цвета с каждым из ваших 4 цветов. Измените каждый на режим смешивания цветов.
  4. Используйте Blend-If Options, чтобы уменьшить эти 4 цвета до нужных вам контрастов.

Вот результаты:

введите описание изображения здесь

Райан
источник
Я не думаю, что вы «сохраняете оттенки», как мой ответ (в некотором смысле), но это выглядит довольно круто!
Вольф
Оттенки @Wolff в LAB полностью разделены на L-канал. Мой ответ не редактирует этот канал вообще, поэтому он должен сохранять оттенки / оттенки (освещение)
Райан
Ах я вижу. Ницца.
Вольф
Я задал этот вопрос после вашего ответа, потому что я не мог найти ничего, что могло бы сделать резервную копию того, что LAB разделил белый / черный более правильно, чем HSB. Так что я приписал награду за ответ Вольфа, но просто для справки, мой разум на самом деле не определился между ними!
любопытно
2

Вопрос в последнее время редактируется из двусмысленного состояния в лучшую форму. Теперь он требует явно предопределенного квантования и переназначения оттенка. Принятый ответ дает его для фотошопа.

Следующий для бесплатных пользователей.

Paint.NET имеет плагин-фильтр, который напрямую отображает оттенки и диапазоны насыщенности. Эта задача требует применения фильтра четыре раза, чтобы отобразить все 360 градусов на четыре дискретных оттенка. Результат такой же, как в принятом ответе. Фильтр «Условный оттенок / Насыщенность». Это часть пакета эффектов Эвана.

Фильтр не полностью отполирован. Я не мог ввести точно предопределенные значения оттенка. Настройки диапазона должны выполняться с помощью слишком маленьких ползунков, точных числовых полей ввода не существует. Вот тест с тем же изображением, которое использовалось в ответе Вольфа:

введите описание изображения здесь

user287001
источник
О, приятно видеть, что вы получаете тот же результат. Я имею в виду, что кажется, что это выглядит так, если вы делаете то, что просит OP. Нужен ли нам этот результат? Я не совсем уверен. Но это загадка решена.
Вольф
@Wolff, если сопоставление выполняется путем визуальной установки значений, метод наверняка будет иметь какое-то значение как творческий инструмент. Фильтр для Paint.NET выполняет эту задачу.
user287001
Спасибо! Хотя я и хотел получить решение на основе Photoshop, приятно иметь опцию с открытым исходным кодом. Круто, что ты нашел это!
CoderScissorhands
1

1. Конвертируйте изображение RGB в HSB

Используйте Filter> Other> HSB / HSL и выберите режим ввода: RGB и порядок строк: HSB. Это сделает изображение очень странным, но позволяет нам манипулировать оттенком отдельно от насыщенности и яркости, используя каналы изображения.

2. Уменьшить количество оттенков

Красный канал теперь будет содержать оттенки для всех пикселей изображения. Вы хотите квантовать их в четыре выбранных оттенка. Это самая сложная часть. Один из способов сделать это - скопировать содержимое красного канала в новое изображение и установить для режима изображения значение «Индексированный цвет» и создать собственную палитру, в которой ваши оттенки сопоставлены с соответствующими значениями черного и белого. Затем вставьте это изображение обратно в красный канал.

3. Конвертировать обратно в RGB

Когда вы уменьшите количество оттенков, вы снова применяете фильтр HSB / HSL, но с обратной настройкой ввода / порядка строк, чтобы завершить процедуру.

Filip
источник
У меня нет опции hsb / hsl в моем «другом» меню. Это часть CS5?
CoderScissorhands
Я нашел его здесь: supportdownloads.adobe.com/detail.jsp?ftpID=4688 , это «дополнительный плагин» (вам нужно поместить файл с именем «Optional MultiPlugin.8BF» в папку плагинов установки вашей Photoshop.
CoderScissorhands
Я добрался до середины второго шага, и у меня появился красный канал в новом изображении с режимом изображения, установленным на индексированный цвет. Теперь, не могли бы вы рассказать мне, как создать собственный поддон с моими оттенками, сопоставленными с соответствующими значениями черного и белого? Если вы можете пройтись, проведите меня через это, и это сработает, я могу поблагодарить вас за ответ на вопрос. :)
CoderScissorhands
0

Вопрос не уточняет назначение изображения, этот ответ предназначен для изображения, предназначенного для печати ( EPS DCS )

В этом случае преобразование изображения только в четыре чернила без использования черного цвета предполагает, что тени этого изображения будут самого темного цвета, голубого.

  • Начиная с изображения CMYK, где доступно 4 цветовых канала, перейдите в меню « Изображение» > « Режим» и выберите « Многоканальный».
  • Отредактируйте цвет каждого канала, щелкнув по миниатюре цвета, и вставьте числа RGB.
  • Заменить черный канал на синий цвет

введите описание изображения здесь

введите описание изображения здесь

Добавьте после комментариев и чата

Для меня вопрос имеет концептуальную проблему, которая затрудняет поиск оптимального результата. Я полагаю, что OP спрашивает об изображении RGB, но думает о процессе микширования CMYK. Вот почему я использую изображение CMYK, а @Wolff отвечает, используя изображение RGB.

  • Красный легко изменить на новый цвет RGB
  • Проблема связана с желтым, поскольку в изображении RGB желтый представляет собой смесь зеленого и красного, поэтому невозможно разделить красный и желтый как два разных цвета. В спектральной полосе зеленый и желтый должны быть желтым RGB, это означает избавление от изображения RGB. Чтобы получить его, оно должно быть преобразовано в печатное изображение (или другой режим изображения).
  • Та же проблема с цианом, смесью зеленого и синего

введите описание изображения здесь


источник
2
Охотник за головами :) Ваш ответ на самом деле не затрагивает все технические вопросы вопроса. И полученное изображение не может быть предназначено для печати, поскольку вы не можете использовать четыре цвета RGB в качестве печатных красок. Я посмотрю, смогу ли я придумать более (псевдо) технически правильный ответ.
Вольф
Я знаю, на самом деле вопрос имеет несколько неясных вопросов для меня, поэтому я поставил свою версию для печати . Вы не можете использовать четыре цвета RGB в качестве печатных красок , это правильно, но вы можете использовать цвет RGB в многоканальном документе.
Да, но что делать с файлом потом? Это все еще только «для экрана». Вам нужно будет конвертировать в RGB и затем обратно в CMYK, чтобы иметь возможность распечатать его. Вопрос некорректен. Смотрите мой последний пост на месте чернил. (Я сейчас работаю над другим решением)
Вольф
Вам придется конвертировать в RGB, а затем обратно в CMYK, чтобы иметь возможность распечатать его , это неправильно, файл .dcs готов к печати на шелкографии плоских чернил. Я возвращаюсь к началу моего ответа: вопрос не проясняет назначение изображения.
2
Насколько я могу судить, то, как @Wolff манипулировал фотографией фруктовой лавки, больше похоже на ожидаемый результат, на который я надеялся (по сравнению с вашей версией). Я хочу что-то похожее на постеризацию, но с сохранением оттенков в максимально возможной степени. В вашей версии фруктовой лавки есть апельсины и красные, которые я определенно хочу исключить. Я подожду немного, прежде чем награждать награду, но пока он, похоже, понял мой вопрос, как я и предполагал, лучше.
CoderScissorhands
-1

Это не преобразование многих цветов в 4, но достижение 4 цветов с одинаковым оттенком? Откройте первый цвет в палитре цветов. Левый и правый изменяет оттенок. Up делает оттенки, вниз делает оттенки. Идите прямо от вашего цвета на указанное расстояние. Я не знаю, как указать расстояние, на глаз и руки, как я это делаю. Если ваш исходный цвет находится на полпути вверх по графику, выберите точку прямо над ним, которая находится на 25% к вершине (или сколько хотите оттенка). Обратите внимание на шестнадцатеричное значение этого нового цвета. Сделайте то же самое для следующих трех цветов, пытаясь получить ту же сумму, что и исходный цвет.

Поочередно соберите вместе 4 насыщенных цвета и нарисуйте над ними белый прямоугольник, примените к прямоугольнику прозрачность / разность и непрозрачность 80%. Возможно, вам придется попробовать другие прозрачности и непрозрачности, особенно, чтобы получить правильные оттенки, или применить только прозрачность к прямоугольнику, добавляя белый цвет к вашим цветам равномерно, чтобы достичь той же тонировки.

Webster
источник
Ой, ага, это для иллюстратора. Если фон белый, то непрозрачность применит оттенок к вашим цветам в PS.
Вебстер
Я хочу в основном свернуть все оттенки до четырех и сохранить оттенки. Имеет ли это смысл? Я хочу, чтобы конечный результат имел полный спектр оттенков, доступных на исходном изображении. Однако я хочу заменить оттенки ... уменьшив их с полного спектра до четырех, и эти значения зависят от того, где в диапазоне оттенков он падает.
CoderScissorhands
-2

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

  • Первый вариант - использовать инструмент «Выборка / Выбор цвета». Выберите его, а затем установите «размер образца» вверху на большое значение, которое будет занимать около 1/4 части изображения. Делая это, сэмплер примет средний оттенок по большей области, в отличие от одного пикселя. Если ваше изображение слишком большое, сначала уменьшите его.
  • Второй вариант - уменьшить изображение до нескольких пикселей. Например, если вы используете предоставленное вами изображение и хотите использовать 4 цвета, уменьшите изображение до 4 пикселей в высоту. Таким образом, Photoshop находит для вас средние цвета при масштабировании. Примечание: со вторым параметром, это может помочь установить интерполяцию изображения (можно найти в настройках Photoshop) на «ближайший сосед».

Кроме того, вы можете использовать Adobe Illustrator, если он у вас есть.

Импортируйте изображение, которое вы используете, и ищите «отслеживание изображения». Настройте трассировку изображения в соответствии с вашими потребностями. По крайней мере, в CS6 есть предустановки для 3 или 6 цветов, но если вы откроете панель трассировки изображений, вы можете установить другое желаемое количество цветов.

paddotk
источник
Поскольку он хочет преобразовать все свое изображение (как в каждом пикселе), его масштабирование, вероятно, не то, что он хотел.
СитиЩу