Предсказание цвета оттиска под ламинацией.

  • Автор темы Автор темы serzin
  • Дата начала Дата начала

serzin

Топикстартер
20 лет на форуме
Сообщения
1 003
Реакции
291
Перепробовав кучу спектральных моделей и не получив адекватного результата даже для 100-х плашек под ламинацией, решил попробовать нейронку. На удивление получилось весьма неплохо.
Что было сделано. На лазерной цифровой печатной машине с выключенным профилем но с линеаризацией были напечатаны три тесткарты на разных бумагах - глянцевой, матовой и офсетной. Эти тесткврты были измерены. Далее они были заламинированы одной и той же глянцевой ламинацией. И измерены после ламинации. Данные измерений были сглажены. Эти измерения содержатся в файлах Gloss_sm.txt(измерения без ламинации) и Gloss_Lam_sm.txt(измерения с ламинацией). Для двух других бумаг названия аналогичны. Нейросеть была обучена на паре файлов Gloss_sm.txt и Gloss_Lam_sm.txt(т.е. на глянцевой бумаге). Дальше она предсказала результаты спектральных измерений с ламинацией по результатам измерений без ламинации для матовой и офсетной бумаги(файлы Mat_Lam_sm_NN.txt и Ofset_Lam_sm_NN.txt).
Неплохие результаты дала и попытка предсказывать наложения двух красок. Но для этих экспериментов у меня, к сожалению, мало материала. Если у кого есть измерения наложений вместе с измерениями красок по отдельности и измерениями бумаги - поделитесь. Буду весьма благодарен.
 
Последнее редактирование:
  • Спасибо
Реакции: sasa, ~RA~ и almastu
тогда дома поищу, вечером.
А синтетика от ColorAnt, с подменой каналов, наверное не очень интересна?
 
А синтетика от ColorAnt, с подменой каналов, наверное не очень интересна?
Если можно, об этом немного подробнее. Я пробовал колорантовскому рескейлу не давать бинаров. Он их как-то рассчитывает, но точность плохая. С такой точностью и я с применением спектральных моделей могу посчитать.:)
 
применением спектральных моделей могу посчитать
да я, собственно, про то же. Неинтересно. Там есть возможность подменить колорант на другой, но имхо учить на заранее известной модели с известной ограниченной точностью - занятие довольно бессмысленное
 
Я прошу прощения - а какая в данном случае нейронка используется?
 
какая в данном случае нейронка используется?
Структура нейронки была примитивная:
model = keras.models.Sequential([
keras.layers.Dense(64, activation="relu", input_shape=[5], ),
keras.layers.Dense(64, activation="relu"),
keras.layers.Dense(64, activation="relu"),
keras.layers.Dense(64, activation="relu"),
keras.layers.Dense(64, activation="relu"),
keras.layers.Dense(64, activation="relu"),
keras.layers.Dense(64, activation="relu"),
keras.layers.Dense(1, activation="linear"),
])

Как видно из кода использовался Тэнзорфлоу.
loss="mean_squared_error"
 
Зачем я, вообще, это спросил - теперь мне ещё непонятнее.
Спасибо.
 
  • Спасибо
Реакции: КоньЕстДетей
Зачем я, вообще, это спросил - теперь мне ещё непонятнее.
На Гитхабе найдено много тысяч файлов с такой структурой кода, поэтому конкретизировать до конкретного проекта в принципе было правильно, пока очень расплывчато.
 
Это последовательная модель в Keras, которая состоит из 8 плотных слоев с функцией активации ReLU и 1 плотного слоя с линейной функцией активации. На вход модели поступает вектор размера 5, а каждый плотный слой содержит 64 нейрона. Функция активации ReLU используется для введения нелинейности в модель, а линейная функция активации в последнем слое делает ее способной предсказывать непрерывные выходные значения.
 
Все так и есть.:) Вектор размера 5 на входе это значения СМУК и значения коэффициента отражения на определенной длине волны. В качестве функции потерь - обычный метод наименьших квадратов для коэффициентов отражения.
 
Спасибо всем! Надо будет повникать.
 
Пока до этого не дорос, но никаких модельных проблем тут не вижу. Проблемы появятся с покрытием Lustre (искрящимся, так сказать). Слабо? Кстати, если более тщательно подходить к оценке восприятия цифрового оттиска, каноны CIE могут оказаться несостоятельными. Ведь, блеск краски, и ксерографической, и индиговской, явно лезет на плотных заливках, позникают те самые lustre-поверхности. В офсете такой эффект на меловках тоже есть, но относительно малый. Одна из особенностей проблемы с таким блеском - даже линеаризация по плотностям затормозится на менее глубоких чёрных, чем мы видим своим стереоскопическим зрением, прибор 45/0 (иже с собратьями) просто не умеет отсеивать бегающие "зайчики". На самом деле проблему в первом приближении решает режим M3 - поляризационный фильтр, но во втором приближении он даёт много других отклонений. Более того, я пришёл к выводу, что вся колориметрическая настройка процесса дизайн-печать явно чувствительна к воспринимаемым контрастам, отдельной строкой надо отметить проработку глубоких теней и пастельных оттенков, они легко "съезжают" при в целом качественном профилировании. Вернусь к обсуждаемой теме: если оттиск до ламинации не грешил lustre-поверхностями, пересчёт на ламинированный вариант потребует просто грамотной аппроксимации в корректирующем луте (что было сделано Сергеем посредством обращения к нейросети). Если же вы решили ламинировать грубую "люстру", хорошо предсказать отблески без соотвественных данных вы не сможете. Если наоборот, решили нанести lustre-ламинат на обычный оттиск - ошибётесь заметно меньше. Конечно, я издеваюсь, "люстру" обычно не ламинируют, а если такое и встречается, до цвета не докапываются, только плашечные подгоняют. Пишу это для понимания модельной проблемы и чтобы обратить внимание на то, что не все современные проблемы профилирования упираются в одну математику.