CMYK - это метод печати изображений с использованием субтрактивного смешивания света, а не добавки.Как вы, вероятно, знаете, цвета RGB состоят из красного, зеленого и синего, и пиксели на мониторе компьютера или телевизоре излучают эти цвета.В печати обычно используется белая бумага.Он отражает (близко к) 100% красного, зеленого и синего света.Когда вы кладете чернила на бумагу, они поглощают один или несколько из этих цветов.Таким образом, красные чернила фактически поглощают зеленый и синий свет, который обычно отражается от бумаги.В печати они используют дополнения красного, зеленого и синего цветов.Это голубой, пурпурный и желтый.CMY = голубой, пурпурный, желтый.К обозначает черный.(Они не использовали B, потому что синий цвет в RGB уже B.) Оказывается, трудно получить хороший глубокий черный, используя голубые, пурпурные и желтые чернила (плюс дорого - вы должны использовать все 3!),поэтому они добавляют немного чистого черного (который почти не отражает), чтобы он выглядел лучше.
Так что для вас это означает, что вам нужно конвертировать из CMYK в RGB.К сожалению, нет единого способа сделать это.Если вы посмотрите на что-то похожее на Photoshop, вам потребуется сначала установить типы чернил и бумаги, которые вы хотите эмулировать, прежде чем конвертировать.
Если у вас был чистый CMY без черного компонента, вы можете использовать r = 1,0 - c, g = 1,0 - m, b = 1,0 - y и получим достаточно хорошее приближение изображения.Первый ответ в на этот вопрос - это разумный ответ.
Вы также можете определить конкретное преобразование, которое хотите использовать в Photoshop или каком-либо другом приложении, и составить таблицу из этого.Я делал это раньше, создавая изображение, скажем, 1024x1024.Каждый квадрат 32x32 имеет градиент с голубым в направлении x, идущим от 0 до 1, и пурпурным в направлении y, идущим от 0 до 1. Затем слева направо каждый квадрат имеет увеличивающееся количество желтого и идет сверху вниз,в них растет количество черного.Я загружаю изображение в Photoshop, преобразую его в RGB и сохраняю снова в формате без потерь (например, TIFF) без листов, полос или слоев (для простоты использования).Затем я загружаю его в свое приложение и использую его в качестве справочной таблицы для того же преобразования в RGB.В первый раз это немного громоздко, но как только вы создали таблицу преобразования, ее довольно легко использовать.Я просто использую билинейную интерполяцию для генерации значения RGB.