Уровни соответствия сенсоров критерию Лютера-Айвса (Luther-Ives)

mihas

Топикстартер
12 лет на форуме
Сообщения
3 549
Оценка реакций
2 258
Я по порядку вопросы и ответы осмысливаю.
А как оценить степень соответствия цветоразличия без колориметрии? Расстояние в килограммах измерять? Ну ОК, продолжай.
А разве в критерии говорится об уровнях цветоразличения? Там нет ничего о цвете, там о спектральной чувствительности в трех каналах. Продолжать мне пока нечего - все расчеты готовы. Зачем мне додумывать колориметрическую сущность и усложнять простую историю с кривыми и линейным коэффициентом умножения? Речь-то об этом коэффициенте и все.
 

mihas

Топикстартер
12 лет на форуме
Сообщения
3 549
Оценка реакций
2 258
Точка белого ерунда, последний вопрос самый важный. Он не имеет решения, т.к. из трехмерных координат единственные (совпадающие) многомерные не получить.
Я примерно предполагал, что через колориметрию, дельты, фоткание мишенек колор чекер ответа на вопрос об уровнях соответствия найти нельзя. Поэтому и не лез в эти дебри.
Ты утверждаешь, что ни одна камера критерию не соответствует и не приводишь расчетов в пользу этого мнения. Переводчик Ханта, добавивший в оригинальный текст отсутствующих там Лютера и Айвса утверждает, что чего-то соответствует критерию, и тоже не приводит расчетов в пользу этого мнения. И кому после этого верить, если никто не знает, как посчитать, но все этим критерием голословно оперируют?
Мои расчеты хотя бы поддаются объективной проверке и я не думаю, что для доказательства линейности или нелинейности функции нужна колориметрия, чисто математики достаточно.
Допустим мы решили вопрос статистическими методами, облучили матрицы миллионом образцов или сфоткали миллион метамерных пар. Понятнее станет результат, если у одной камеры окажется средняя дельта 2 а у другой средняя дельта 3? Ну а у меня в процентах 60 и 40 разве не понятно? Можно и к дельте отнормировать, CIE применяет такую нормировку как раз в одной из функций "dE2K" - то есть в dE2000, это не сложно, будет 2 и 3 вместо 60% и 40%, только большого значения это не имеет.

Вывод который я мог бы уже сделать, следующий: когда заходит разговор о соответствии критерию Лютера-Айвса некоего сенсора - нужны CMF этого сенсора, чтобы хотя бы грубо прикинуть отклонения от линейного коэффициента умножения. Если заводивший разговор таких CMF предоставить не может - очень плохо - проверить и посчитать уровень соответствия критерию по картинке с сенсора колориметрия сегодня не позволяет.
 

mihas

Топикстартер
12 лет на форуме
Сообщения
3 549
Оценка реакций
2 258
Вы исходите из того, что матрица "преобразования из RAW в глаз" - диагональная, верно я понял?
Нет не исхожу, я вообще не знаю, что такое диагональная матрица.
По CMF стандартного наблюдателя CIE и CMF своей камеры Nikon D50 я строил профили, облучая виртуально манселловские образцы и очень чистые спектры на краю охвата и сопоставляя XYZ глаза и XYZ сенсора. В этих расчетах много волюнтаризма, тем не менее результат на удивление многократ превосходит (точнее, естественнее) цветовые профили, построенные по фоткам тестовых мишеней.
Вопрос который не решается ни тем ни другим путем - метамерные пары. Как для моего фотика техногенный спектр черного пальто дочки выглядит красным - так и выглядит с любым профилем. И этот метамеризм как мне кажется хорошо объясним посчитанными для этого сенсора невысокими уровнями соответствия критерию поканально как 31 11 62
 

atutubalin

12 лет на форуме
Сообщения
411
Оценка реакций
37
Нет не исхожу, я вообще не знаю, что такое диагональная матрица.
Ну без этого сложно в цветовой науке...

Задам конкретный вопрос, когда вы рассчитываете "линейность", вы попарно сравниваете одну (из трех кривых) чувствительности сенсора, или какую-то их линейную комбинацию (подбирая коэффициенты этой комбинации)?

У меня, честно, нет никакого желания копаться в вашем Excel (и проверять), я надеюсь что вы можете процедуру изложить словами (лучше - формулами), без этого трудно разговаривать.
 
Последнее редактирование:

mihas

Топикстартер
12 лет на форуме
Сообщения
3 549
Оценка реакций
2 258
@atutubalin, я пробовал записать формулы в текстовом виде - мне самому не понятно, в экселе и яваскрипте все до примитивизма просто и наглядно. Я привык программировать и мне трудно читать формулы на бумаге и просто читать функции программы. Но могу и словами ответить. Да попарно делю чувствительность CMF глаза на CMF сенсора, три пары. Нахожу, какой сенсор на какую нелинейную функцию отваливается от хумана, ранжирую степень этой нелинейности. В критерии сказано, что умножение на линейную функцию - это полное соответствие критерию, значит чем нелинейней функция умножения сенсора для приведения к кривой хумана - тем хуже соответствует критерию.
 

atutubalin

12 лет на форуме
Сообщения
411
Оценка реакций
37
Вообще, это конечно жесть с переводом:

В переводе слово "Лютер" есть, в оригинале - нет (Luther, естественно).

Оригинал:

The conditions that must be satisfied in order to obtain this result are:
(1) The spectral sensitivity curves of the filter-emulsion combinations, used to record the
three negatives, must be identical with the colour-matching functions of the three stimuli
used to form the final picture;

Перевод

Условия, которые должны быть при этом соблюдены, та
ковы:
1. Условие Лютера —Айвса: кривые спектральной чувствительности слоев фото
эмульсии, использованной для получения трех негативов, должны быть идентичны
трихроматическимкривымзрительнойсистемычеловека(илилинейнойкомбинации
этих кривых) по трем воспроизводящим (кардинальным) стимулам, используемым
при создании финального изображения, т.е. цветного отпечатка.

Впрочем, на эту тему я с Шадриным уже спорил (на другом примере) - считая его перевод некорректным.
 

atutubalin

12 лет на форуме
Сообщения
411
Оценка реакций
37
Да попарно делю чувствительность CMF глаза на CMF сенсора, три пары. Нахожу, какой сенсор на какую нелинейную функцию отваливается от хумана, ранжирую степень этой нелинейности. В критерии сказано, что умножение на линейную функцию - это полное соответствие критерию, значит чем нелинейней функция умножения сенсора для приведения к кривой хумана - тем хуже соответствует критерию.
Не, ну это же в корне неверно (точнее, сводит все к диагональным матрицам).

Линейная комбинация это L = R*w11 + G*w12 + B*w13 (и аналогично для M,S), все три веса w11...w13 (девять для полного набора) могут быть ненулевыми (и вполне имеют право быть отрицательными - и бывают).

Вот смотрите на Cone Fundamentals: https://blog.lexa.ru/sites/blog.lexa.ru/files/images/cone-fundamentals.png
"зеленая" и "красная" - очень близки, в реальных камерах так не делают (по известным причинам) и единственный способ получить более-менее чистый R - это из одной вычесть другую (с какими-то весами).
 

mihas

Топикстартер
12 лет на форуме
Сообщения
3 549
Оценка реакций
2 258
Копаться в моем экселе не обязательно, он просто короче слов все объясняет. Я предполагал, что в двойном переводе немецкий-английский-русский "линейная комбинация" вызовет массу вопросов и толкований. Мне даже интересно, кто как истолкует, и еще интересней было бы получить это толкование в виде нескольких строк формул в Эксель для того, чтобы окончательно снять все вопросы. Такую формулу простите я понять просто физически не могу L = R*w11 + G*w12 + B*w13 (и аналогично для M,S) - можно записать ее в ячейки Эксела?
Вы уверены, что камеру надо сравнивать с кривыми CF а не CMF?
 

atutubalin

12 лет на форуме
Сообщения
411
Оценка реакций
37
Линейная комбинация - вполне устоявшийся (как бы не веками) термин, тут сложно напутать.

Без 9-ти коэффициентов (а не трех) вы ничего хорошего не получите, нет смысла и пробовать.
 

mihas

Топикстартер
12 лет на форуме
Сообщения
3 549
Оценка реакций
2 258
Вообще, это конечно жесть с переводом:
В переводе слово "Лютер" есть, в оригинале - нет (Luther, естественно).
Да я тоже первым делом когда переводчик отправил изучать вопрос в эту книгу - открыл, и удивился, что ни Luther ни Ives там просто нет физически. Меня тоже напрягло в переводе использование странного полумедицинского термина "трихроматические кривые", которых так же нет в оригинале.
 

atutubalin

12 лет на форуме
Сообщения
411
Оценка реакций
37
А, да, умеет ли эксель матричное умножение (хотя бы 3x3) - я понятия не имею, никогда не пытался его в этом смысле использовать (матлаб же есть)

UPD: хотя мне лично милее C++ + glm
 
Последнее редактирование:

mihas

Топикстартер
12 лет на форуме
Сообщения
3 549
Оценка реакций
2 258
Линейная комбинация - вполне устоявшийся (как бы не веками) термин, тут сложно напутать.
Без 9-ти коэффициентов (а не трех) вы ничего хорошего не получите, нет смысла и пробовать.
Если это матричное уравнение - запишите его в ячейки эксель - посмотрим. Это очень простая задача записать в ячейки эксель свою мысль! Есть надежда дождаться файла или будут только общие разговоры?
 

atutubalin

12 лет на форуме
Сообщения
411
Оценка реакций
37
Я не буду ничего писать в эксель, извините, мне в общем и так есть чем заняться.

Вот есть некое M * [LMS] = [RGB]
(где RGB - сигнал с сенсора, LMS - сигнал с глаза).
M - соответственно 3x3.

А у вас: L = a* R, M = b * G, S = c * B. Три коэффициента. С тремя ничего не выйдет хорошего (почему - написано выше на примере получения R и L и M)
 

atutubalin

12 лет на форуме
Сообщения
411
Оценка реакций
37
Понимаете, при вычислении коэффициентов в 3x3 мы попадем опять в вычисление (и минимизацию) невязок.
С чего, собственно, все и начиналось 6 лет назад.

Для подбора одного коэффициента - это тривиально (годится любой вменяемый метод, результат будет один) , а для трех (на каждый выходной компонент) - уже нет.

Все, ушел программировать на AVX2 :)
 

mihas

Топикстартер
12 лет на форуме
Сообщения
3 549
Оценка реакций
2 258
Я не буду ничего писать в эксель, извините, мне в общем и так есть чем заняться.
Все равно спасибо что пообщались.
Итого, кроме моего алгоритма пока ничего работающего по теме нет. Жаль. Попробую понять про R и L и M, но это вообще из другой оперы чую.
 

atutubalin

12 лет на форуме
Сообщения
411
Оценка реакций
37
Попробую понять про R и L и M, но это вообще из другой оперы чую.
Это из той самой оперы. Вменяемый R нельзя получить иначе, чем вычитая M из L (т.е. R = a*M + b*L, причем a - отрицательное)
 

mihas

Топикстартер
12 лет на форуме
Сообщения
3 549
Оценка реакций
2 258
Интересно так же как математики толкуют линейную комбинацию Линейная комбинация — Википедия
Лине́йная комбина́циявыражение, построенное на множестве элементов путём умножения каждого элемента на коэффициенты с последующим сложением результатов (например, линейной комбинацией x и y будет выражение вида ax + by, где a и b — коэффициенты

Собственно это именно то, что я и вычисляю. Матричных уравнений в статье не встретил.