Построить TVI спектрофотометром

  • Автор темы Автор темы SaveFileAs
  • Дата начала Дата начала
Я все равно не помню, какая точно кривая по газетному стандарту. Предполагаю что для черного не меньше F.
В ISO 12647-3 2005 про названия кривых ничего нет, поэтому я ориентируюсь на данные IFRA26L.txt т.к. раздаем заказчикам для подготовки файлов сгенеренный на его основе профиль, ну и под него же и компенсацию логично строить.
 
У Вас по Black уже c 80% начинается скачок, пик которого около 90%. А в 100% характеристики уже провалившись.
Это явление при растрировании я наблюдаю очень давно. На печати это может быть вызвано эмульгированием краски на местах, где нет пробельных элементов для схода увлажняющего раствора.

Такой же эффект я наблюдал и в цифровой печати, но там причины другие.

Забавно то, что и при контактном измерении растров на отражение на плёнках даже при идеальном поджатии плёнки к основе всё равно возникает пик плотности в тенях и резкий спад на полностью залитой плашке. Не иначе работает оптическитй ростиск - рассеивание света в толще отражающей основы.
 
Производители рипов даже снабжают иногда стохастику уже предустановленными кривыми в минус.
Чтобы все же посчитать - можно попробовать подрихтовать светлоту 100% до умозрительного состояния невыщипывания
Думаю, в данной ситуации, лучше бы просто соорудить эти "кривые в минус" самостоятельно. И тогда все встанет на свои места и не понадобится рихтовать по умозрительным критериям. :)
Потеряется конечно около 1 по светлоте по черному, но нормальная градационная явно лучше.
Только вот до сих пор непонятно -- позволяет ли рип вносить поправки или нет.
 
Последнее редактирование:
@SaveFileAs,
И еще -- всегда есть вариант выкинуть "неудобные" данные. Недостающие добить интерполяцией и посчитать так. Впоследствии, тем более если нет возможности внести коррекцию и приходится каждый раз строить кривую заново, можно просто подкорректировать эти интерполированные значения в нужную сторону.
В данном случае это может быть вполне корректным решением. Не всегда это хорошо, но на краях диапазона может себя оправдать.
 
@SaveFileAs,
И еще -- всегда есть вариант выкинуть "неудобные" данные. Недостающие добить интерполяцией и посчитать так.
Ну можно и так. Тут просто видно, что самый темный патч светлее полутонов. Исправить ошибку как-то надо. Мне показалось самым простым просто светлоту самого темного патча так и сделать самым темным. Но при этом все же помнить, что контраст в тенях неправильный, инверсия, там жуткое падение контраста или точнее даже отрицательные значения контраста, так что ограничением поканальным можно это исправить. Коллеги делали - отлично получалось.
 
Исправить ошибку как-то надо.
Ну это и не ошибка, а физика процесса. Про выщипывание когда-то читал, но не думал что все так сурово.

То, что получится отлично можно сказать не глядя. Тем более стохастика, и главное -- не нужна 100% плашка. И подсечь можно. И тогда динамический диапазон используется на все 100%. Вот только если доп. коррекции на рипе нет, значит перед вычислением компенсации результаты измерений надо перекидывать на новую сетку. Ведь там где было 100% в данном случае становится 90%. И для вывода шкал для компенсации нужен доп. шаг. И для вычислений тоже...
 
@DimB, Ну так или иначе интересная задачка!
 
Cама функция, в данном конкретном случае, простая y = 0,9*x. Вместо 0,9 берем свой поканальный максимум.
Нужно просто корректно пересчитать полученные поправки.
 
Вот только если доп. коррекции на рипе нет, значит перед вычислением компенсации результаты измерений надо перекидывать на новую сетку. Ведь там где было 100% в данном случае становится 90%. И для вывода шкал для компенсации нужен доп. шаг. И для вычислений тоже...
Любая компенсация предполагает дополнительный вывод тестовых патчей. И вывод финишного. Вопрос в том, как деформировать координату стимулов так, чтобы она включала в себя предыдущие шаги коррекции. А ведь коррекция для конкретного шага в системе, где нет доп. шагов коррекции, выглядит именно как деформация оси стимулов. А там начинаются (или не начинаются - в зависимости от реализации РИПа) пляски вокруг дискретизации по оси стимулов.

ЗЫ. Кривая компенсации не обладает однозначной аналитической характеристикой. Это скорее табличные данные, причём такие, которые вредно интерполировать сплайн-методами.

ЗЗЫ. Я отказался от принципа отбрасывания явно ошибочных данных. Я использовал принцип "веса" данных. Чем они дальше от среднего, тем меньше их вес и влияние на среднее по указанному стимулу. Зависимость "веса" от расстояния от среднего я принимал по нормальному распределению. Конечно, пришлось подбирать множители по осям функции распределения, но это работа... Вспоминается, что я даже перешёл на степенные функции, чтобы изменять диаметр захвата, внутри которого значения имеют действительно осмысленный вес.
 
Последнее редактирование:
@SaveFileAs, есть вопросик по харлекиновскому рипу - если вы разобрались.
У меня тут возникло подозрение, что там просто странная таблица поправки к размеру точки, где колонки x и y переставлены местами.
Ну например:
кривая.gif

в таблице напротив поля 40 указано значение 50.4. Измеряем на пластине точку 50 - получаем 39 с хвостом. Если бы могли измерить точку 50.4 - получили бы ровно 40.
Если именно так обстоит дело, то для того, чтобы заполнить такую странную таблицу нам просто нужно прогнать через интерполяцию с шагом 1 таблицу поправки к точке, поменяв местами две колонки значений.
Хотелось бы от вас получить немного данных со скриншотом и реальными размерами точек, чтобы можно было надежно подтвердить мое предположение.
 
где колонки x и y переставлены местами.
Так режимы отображения (и расчета?) то разные: на скриншоте от @SaveFileAs был выбран режим "Measurement as: Dot Gain", а на Вашем "Positive % Dot".
Плохо, что график у них не подписан. Что это за "Positive % Dot" непонятно.
 
Последнее редактирование:
  • Спасибо
Реакции: mihas
Вероятней всего варианты "Measurement as: Positive % Dot" и "Measurement as: Dot Gain" соотносятся между собой также, как и варианты "Light" и "Pigment/Ink %" (см. PhotoShop-->Curves-->Curve Display Options-->Show Amount Of: )
Тогда зависимость между ними простая. Вот только это совсем не перестановка колонок значений.
Для этого рипа получится:
x_pos_dot = 100.0 - x_dot_gain
y_pos_dot = 100.0 - y_dot_gain

Чтобы точно выяснить так ли это, точка 50% совсем не подходит (50.0 --> 100.0-61.35 = 38.65 -- заметьте тоже почти "39 с хвостиком"). Лучше ориентироваться на 20% и/или 80%. А в идеале бы надо как-то подсмотреть -- в каком виде сам рип хранит эти данные. Соот-но так и вводить поправочные значения.
 
  • Спасибо
Реакции: mihas
@DimB, спасибо, попробую раздобыть больше информации по измеренным точкам.
 
Как красиво это выглядит в офсете, и как отвратительно на флексе*(
 
@DimB, помогите мне плиз аппроксимировать функцию работы этого рипа с точкой.
Вот имеем таблицу, где вторая колонка x - значения вбитые для точки и третья колонка z - измеренные в результате значения этих полей на пластине:
x y z
0 0 0
20 23.57 16.4
40 50.4 29.6
50 61.35 38.7
80 88.13 71.8
100 100 100

У меня вышла функция:
z = x*2 - y
и
y = x*2 - z
Верно?
 
Последнее редактирование:
Если мое предположение из #73 верно, то считаем так:
Код:
переходим от "Positive % Dot"       получено на пластине
к "Dot Gain"
100-  0 =100   100-0     =100.0       100.0
100- 20 = 80   100-23.57 =76.43       71.80
100- 40 = 60   100-50.40 =49.60       ?
100- 50 = 50   100-61.35 =38.65       38.70
100- 60 = 40   100-??.?? =?           29.60
100- 80 = 20   100-88.13 =11.87       16.40
100-100=   0   100-100   =0.0           0.0
Или наоборот. Только для расчетов и/или анализа смысла в этом не вижу.
Код:
переходим от "Dot Gain"
к "Positive % Dot"
  0     0      100-0
 20    23.57   100-71.8=28.2
 40    50.4    ?
 50    61.35   100-38.7=61.3
 60     ?      100-29.6=70.4
 80    88.13   100-16.4=83.6
100   100      100
Документацию бы, или хотя бы страницы из help. А то все равно это пока гадания.
Маловероятно, но вдруг это вообще какой-нить хитровыгнутый режим для негативных пленок со своими специфическими поправками?

Я бы попробовал сменить режим "Measurement as:" прямо на рипе, на уже вбитых готовых данных (готовой кривой). Нормально спроектированный софт, если режимы взаимосвязаны, сам конвертирует туда-сюда. Может проблемы то нет?
 
Последнее редактирование:
Доп.
Если брать данные с Вашего скриншота, то можно дополнить еще одну строку:
100- 60 = 40 100-71.02 =28,98 29.60

Ну и да, посмотрел сейчас снова старый скриншот от SaveFileAs. У меня показан переход не к самим значениям dot gain. Dot gain-значения надо доп. дальше досчитывать и тогда уже сравнивать, если рип пересчитает конечно. Но тут уже формула известная.
 
Последнее редактирование:
Хотя вообще-то понаписал ерунду. Термин Dot gain надо нафиг из рассуждений выкидывать. Фарш обратно не провернуть. Или сходу не сообразить (плотностей то нет).
 
Последнее редактирование:
Ну на самом деле фарш можно провернуть назад: если известен размер точек и известна кривая куда целились - довольно просто вычисляется реальный дотгейн. У меня с некоторых пор здесь это реализовано под чекбоксом "обратная функция - виртуальный dotgain" C I E L a b . X Y Z • Компенсация растискивания . Чтобы данные были в нужном виде задействуется интерполяция, поэтому в сотых будут расхождения если поэкспериментировать, но это именно только от интерполяции, ибо никому не нужны данные в виде что дотгейн 14.0 получен в точке 47.33, нужно знать наоборот, какой дотгейн в точке 45, 50, но не в 47.33.