C02 · От света к пикселю
Матрица и обработка сигнала
Один канал измеряется, два оцениваются. Но прежде чем сравнивать цвета, нужно знать, что означают коды матрицы.
Если нужны основы
Теория
От электронов к кодам
Поглощённый фотон может создать электрон. Считывание добавляет шум и смещение; АЦП переводит сигнал в конечные коды. Фотонный шум зависит от среднего сигнала. Тёмный и белый уровни нужны до сравнения кодов разных режимов; тёмный уровень — не свет сцены.
Вычесть — не значит разделить
Тёмный кадр оценивает смещение, ровное поле — относительную чувствительность. Сначала вычитают смещение, затем учитывают отклик. Дефектный фотосайт требует отдельной оценки; плоское поле не исправляет пропавшее измерение. Здесь параметры известны точно и шума нет, поэтому полная коррекция обратима.
На выбранном канале сравните три режима. Без коррекции код содержит добавку; после вычитания остаётся умножение на отклик; деление возвращает исходную величину. Эта калибровка нужна до сравнения и смешивания каналов. Для прозрачности ниже показаны уже совмещённые три плоскости; реальная RAW-коррекция часто работает ещё по отдельным фотосайтам мозаики.
Смещение и затенение
Сравните отсутствие коррекции, вычитание тёмного уровня и полную коррекцию. Проверьте центр и угол.
Точные значения — в разборе точки
RGB линейный → sRGB; диапазон показа 0…1
- Выбранный канал: вычесть смещение
- Рабочий диапазон × отклик
- Разделить
Точные значения — в разборе точки
RGB линейный → sRGB; диапазон показа 0…1
Разобрать выбранную точку
Что показывает график
В бесшумной модели полная коррекция возвращает исходные числа. Деление на слабый отклик в реальности усиливает и шум.
Параметры и подробности
Искусственный тёмный уровень известен точно; отклик плавно уменьшается к углам. Вычитание смещения и деление на плоское поле решают разные задачи. Без шума полная коррекция обратима; при шуме деление на малый отклик усилило бы и шум.
Выбери точку на изображении. Стрелки перемещают её; Home и End — к краям строки. Просмотр не изменяет вычисление.
Для изменения примера нужен JavaScript и Canvas. Рассчитанные изображения доступны выше.
Измерено или оценено?
В обычном Bayer-блоке 2 × 2 есть красный, два зелёных и синий фильтры. Это пространственное распределение измерений, не три готовых RGB-значения в клетке. Реальные фильтры имеют широкие перекрывающиеся спектральные полосы.
Демозаикинг оценивает пропуски: ближайший сосед прост, билинейное усреднение сглаживает, направленное иногда лучше сохраняет край. Неизвестную сцену они не знают; мелкий узор может стать ложным цветом. В примере известен эталон, поэтому ошибка видна прямо.
Один измеренный канал, три выходных
В одной точке переключайте R, G, B. Определите измеренный канал, затем сравните оценки на прямой и диагональной границе.
Точные значения — в разборе точки
RGB линейный → sRGB; диапазон показа 0…1. Цвет показывает измеренный канал; остальные неизвестны. Узор — нет измерений.
Точные значения — в разборе точки
RGB линейный → sRGB; диапазон показа 0…1
Разобрать выбранную точку
Что показывает график
Измеренный канал сохраняется. Два других оцениваются из реальных соседних измерений, а не из неизвестных нулей.
Параметры и подробности
RGGB — один из вариантов CFA. Незаполненные компоненты мозаики отмечены как «не измерено», а не как измеренный ноль. Билинейный вариант усредняет ближайшие доступные отсчёты нужного цвета; у края использует только существующие. Направленный вариант меняет только оценку зелёного, выбирая меньший перепад; это учебная эвристика, не промышленный ISP.
Выбери точку на изображении. Стрелки перемещают её; Home и End — к краям строки. Просмотр не изменяет вычисление.
Для изменения примера нужен JavaScript и Canvas. Рассчитанные изображения доступны выше.
Белый баланс не завершает обработку
Множители каналов могут нейтрализовать один эталон, но чувствительности камеры не совпадают со стандартными координатами. Нужны цветовой переход, тоновая обработка и кодирование экрана. Учебная цепочка: измерение → коррекция → реконструкция → белый баланс и цвет → тон и кодирование.
Реальные ISP совмещают и переставляют некоторые стадии. RAW не всегда Bayer, а JPEG исходной мозаики уже не содержит. По готовому RGB нельзя честно объявить, что мы показали реальные измерения его фотосайтов.
Баланс белого и цветовая матрица
Сначала выберите «Нет» и измените освещение. Включите баланс белого: общий оттенок ослабнет, но каналы датчика ещё смешаны. Затем включите матрицу и сравните с эталоном. Нажмите на цвет и переключите канал, чтобы проследить три вклада.
Точные значения — в разборе точки
RGB линейный → sRGB; диапазон показа 0…1
Точные значения — в разборе точки
RGB линейный → sRGB; диапазон показа 0…1
Разобрать выбранную точку
Что показывает график
Одинаковое умножение внутри каждого канала и смешивание трёх каналов решают разные задачи. В этой точно известной модели обе коррекции вместе восстанавливают цвет; для настоящей камеры коэффициенты нужно измерять.
Параметры и подробности
Авторская линейная модель: освещение умножает каналы на разные коэффициенты, а датчик смешивает соседние компоненты. Баланс белого отменяет множители; отдельная матрица отменяет смешивание. Эти известные коэффициенты нельзя переносить на реальную камеру. Кодирование sRGB здесь ещё не применено.
Выбери точку на изображении. Стрелки перемещают её; Home и End — к краям строки. Просмотр не изменяет вычисление.
Для изменения примера нужен JavaScript и Canvas. Рассчитанные изображения доступны выше.
Практика
Проверь идею на другом условии. Следуй задаче над изображениями; разбор точки поможет объяснить результат. Эта практика не оценивается.
Не принимать оценку за измерение
Выбран недостающий зелёный у диагональной границы другой фазы CFA. Сначала предскажите: копирование одного соседа или среднее даст меньшую ошибку? Переключите метод и сверьтесь с известной сценой. Затем выберите измеренный канал: его менять нельзя.
Точные значения — в разборе точки
RGB линейный → sRGB; диапазон показа 0…1. Цвет показывает измеренный канал; остальные неизвестны. Узор — нет измерений.
Точные значения — в разборе точки
RGB линейный → sRGB; диапазон показа 0…1
Разобрать выбранную точку
Что показывает график
Измеренный канал сохраняется. Два других оцениваются из реальных соседних измерений, а не из неизвестных нулей.
Параметры и подробности
RGGB — один из вариантов CFA. Незаполненные компоненты мозаики отмечены как «не измерено», а не как измеренный ноль. Билинейный вариант усредняет ближайшие доступные отсчёты нужного цвета; у края использует только существующие. Направленный вариант меняет только оценку зелёного, выбирая меньший перепад; это учебная эвристика, не промышленный ISP.
Выбери точку на изображении. Стрелки перемещают её; Home и End — к краям строки. Просмотр не изменяет вычисление.
Для изменения примера нужен JavaScript и Canvas. Рассчитанные изображения доступны выше.
Игры
Не принимать оценку за измерение
Какое правило оценки даёт показанный результат на границе?
Точные значения — в разборе точки
RGB линейный → sRGB; диапазон показа 0…1. Цвет показывает измеренный канал; остальные неизвестны. Узор — нет измерений.
Точные значения — в разборе точки
RGB линейный → sRGB; диапазон показа 0…1
Точные значения — в разборе точки
RGB линейный → sRGB; диапазон показа 0…1
Сравни результат с образцом.
Разобрать выбранную точку
Что показывает график
Измеренный канал сохраняется. Два других оцениваются из реальных соседних измерений, а не из неизвестных нулей.
Параметры и подробности
RGGB — один из вариантов CFA. Незаполненные компоненты мозаики отмечены как «не измерено», а не как измеренный ноль. Билинейный вариант усредняет ближайшие доступные отсчёты нужного цвета; у края использует только существующие. Направленный вариант меняет только оценку зелёного, выбирая меньший перепад; это учебная эвристика, не промышленный ISP.
Выбери точку на изображении. Стрелки перемещают её; Home и End — к краям строки. Просмотр не изменяет вычисление.
Для изменения примера нужен JavaScript и Canvas. Рассчитанные изображения доступны выше.
Проверь объяснение
Вопрос 1 из 5
Измерено 0,30; тёмный уровень 0,10; рабочий диапазон × отклик = 0,50. Результат коррекции?
Точные значения — в разборе точки
RGB линейный → sRGB; диапазон показа 0…2
Точные значения — в разборе точки
RGB линейный → sRGB; диапазон показа 0…1
Точные значения — в разборе точки
RGB линейный → sRGB; диапазон показа 0…1. Цвет показывает измеренный канал; остальные неизвестны. Узор — нет измерений.
Точные значения — в разборе точки
RGB линейный → sRGB; диапазон показа 0…1
Точные значения — в разборе точки
RGB линейный → sRGB; диапазон показа 0…1
Выбери один ответ. Он проверится сразу.
Ограничения и материалы
Границы этого примера
Синтетическая мозаика. Направленная оценка — локальная эвристика G, не Malvar или промышленный ISP. Нет RAW-импорта и калибровки реальной камеры.