Canon 5D4 Dual Pixel Raw: "расширение ДД в светах"?

Разглядывая все тот же единственный доступный кадр с Dual Pixel Raw обратил внимание на следующий интересный эффект.

В этом кадре есть блики т.е. область пересвета. Вот на скриншоте вокруг такого блика обведен серый квадратик выборки на левой кисточке (красное - это индикация OverExposure):

В верхней панели RawDigger красным обведена статистика по прямоугольнику выборки, видно что все каналы упираются в максимум 15872 (=16383 минус уровень черного; в канале G2 уровень черного на единичку выше и максимум - на единичку ниже).

В гистограмме по выборке мы видим обычный для пересвета пик в светах во всех каналах:

Ну собственно обычная картина с пересветом во всех каналах, так как все уперлись в максимум, то никакое восстановление светов в этом блике уже невозможно (оно и не нужно в блике).

Тем не менее, посмотрим, что у нас творится во втором (полу)кадре:

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

То же самое и на гистограмме:

Острых пиков нет, следов упирания в максимум (ожидая его там же, 15872(1)) - нет. То есть света в данном блике - не пересвечены.

Получается: в "полукадре" сохранены света там, где в полном кадре их нет. То есть:

  1. Для оцифровки каждого полупикселя используется полноценный 14-битный АЦП (дырок в гистограмме не видать, диапазон 16к)
  2. Для получения полного пикселя - результат складывается и обрезается по 14-битному лимиту.

Получается что даже на минимальном ISO (а этот кадр - от ISO100) "дд в светах" ограничивается не емкостью пикселя, а результатом суммирования двух полу-пикселей, каждый из которых не переполняется (на данном конкретном кадре не переполняется, так то понятно, что пересветить должно быть можно).

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

Таким образом, у RAW-конверторов появляется возможность расширения динамического диапазона в светах примерно на стоп: в областях пересвета надо брать сигнал не из 1-го кадра в RAW, а из второго (и умножать его на два). Да, это сигнал "с половинки объектива" и он несколько отличается от полного (с двух половинок), но для восстановления светов это несущественно.

В случае, если конвертор не поддерживает такой фичи (понятно что текущие - ни один не поддерживает), можно извлекать второй кадр отдельно и использовать в HDR-клеилке.

P.S. Все вышенаписанное основывается на анализе маленького кусочка одного кадра. Реальную применимость данной фичи, реальную линейность полукадра и т.п. еще предстоит изучить на бОльшем числе примеров.

Comments

а если еще на два какждый сенсель поделить то и +два стопа, и еще, и еще... малина !

Z / V

Fuji S5 примерно получится.

Скорее какая-то из мыльниц EXR-серии, где можно было для двух полупикселей одинаковое усиление поставить.

Вообще, магичный фонарь бы сюда с их DualISO

Ну да. Но растут шумы чтения (читаем два раза, то есть в корень из двух, если они независимы)

> Ну да. Но растут шумы чтения (читаем два раза, то есть в корень из двух, если они независимы)

а чем меньше емкость тем говорят (аптина -> новые сенсоры сони где часть емкости специально отключают) и шумы меньше ?

Z / V

Да. Но пока не факт, что сложение после ADC. Мало примеров.

а какой смысл складывать до ADC ? выигрыш только за счет "аналогового усиления" за счет сложения на стоп перед ADC , но проигрыш в лишней схемотехнике в кремнии и для PDAF / DPRaw все равно надо вычитывать без сложения

Z / V

Там возможны разные решения, в том числе и без сложения напрямую. Надо больше кадров, и анализировать шумы.

По-моему, "где складывается" - не выяснить. Ну разве только по шумам в темновых кадрах?

Ну да, по шумам - на рамке и в темных кадрах.

О, рамка, точно!

В 3-м знаке разница по дисперсии на рамке (BL=0), на 2-м кадре устойчиво больше на несколько сотых.

А вот нет ли на 1-м кадре шумодава - вопрос.

Дык как складывать. Там еще и нормализация может быть, не ровно ж 1 стоп разница.

Вот я и говорю - не узнать

как там называется компания которая разбирает чипы под электронным микроскопом ? ChipWorks... разве они не разбирали подобные сенсоры уже ?

Z / V

> Возможно, верхний стоп (у полупикселя) - настолько нелинеен

но тогда и целуй сенсель (получаемы сложением настолько нелинейных полусенселей) в верхнем стопе настолько же нелинеен, да ?

Z / V

Нет. Если нелинейность у полупикселя "выше 8192", то сумма будет больше 16383 и ее обрежет.

точно, это я с утра не подумал сначала... мораль - пить кофей надо.

Z / V

Извините мне мою дремучесть.
1. Если сигналы в полупикселах разные, в каком месте и как их уравнивают (для работы АФ и пр.)?
2. Если есть полные пикселы и полупикселы, на каком этапе их сигналы оказываются ~ равными (в RAW)?
3. Когда из овер 40'000 электронов получаются 15872 отсчёта?

4. Adobe уже анонсировал работу с полупиксельными RAW:
http://www.canonrumors.com/adobe-to-support-dual-pixel-raw-in-future-ver...

Давайте вот с основ.
Полупиксели смотрят "направо" и "налево" т.е. там между ними какая-то стенка, которая не дает видеть левую и правую стороны объектива.
В результате объектив начинает работать "как дальномер" и с нерезких (несфокусированных) объектов прилетает разная картинка. Со сфокусированных - одинаковая.
Далее
1) Для работы АФ их и не надо уравнивать, наоборот разница в (пространственной) фазе и дает понять насколько и в какую сторону промахнулся фокус.
2) Я не понял вопроса
3) Ну как и всегда, есть какой-то "усилитель с КУ меньше единицы" который приводит полный сигнал в диапазон рабочих напряжений (токов?) АЦП

Или в файле _FINE.CR2 обе картинки полупиксельные?

Первая - полная (сумма с двух), вторая - с одной половинки

И когда в в разных картинках в FINE.CR2 отсчёты становятся "одинаковыми"?

Про принцип работы ФАФ я в курсе. Оно ведь не поменялось?

Я опять не понял вопроса.
Два кадра, полный и половинка - они разные. Были бы одинаковые - какой был бы в них смысл?

Уровень отсчётов в RAW же одинаковый (~16800) а площадь "пикселов" различается в 2 раза, на каком этапе это нормируется?

С учетом того, что в "основном" кадре уровень сигнала (примерно, с поправкой на то что картинки таки разные) на стоп (т.е. вдвое) выше - нигде не нормируется, в основном кадре просто сумма.

Понятно.
Значит, НЕ примитивные алгоритмы опять отодвинули в будущее...

Я вот приветствую то, что камера (примитивными алгоритмами) дает нам
- сырые данные одного набора пикселей
- и почти их (за вычетом выбитых областей) - для другого

Остальное можно сделать на быстром CPU при обработке.