C01 · От света к пикселю
Свет, оптика и камера
До пикселей свет проходит через сцену, объектив и время экспозиции. Что именно измеряется?
Теория
От предмета через объектив к матрице
Сначала перед камерой есть предмет и свет, который он отражает. Объектив собирает часть лучей и строит перевёрнутое изображение на матрице. Матрица — сетка светочувствительных ячеек: каждая собирает свет со своей небольшой площади. Числа появятся только после измерения этого света.
Сначала свет. Потом числа.
Свет от каждой точки предмета проходит через разные части линзы. Линза направляет эти лучи к одной точке с другой стороны. Матрицу нужно поставить именно туда — иначе вместо точки она поймает пятно.
Перед камерой — три маленьких источника света. Нажми на точку 1, 2 или 3 и проследи её лучи. Передвинь матрицу в резкую плоскость. Затем прикрой диафрагму: пятно станет меньше, но света тоже придёт меньше.
Матрица не в резкой плоскости: одна точка растянулась в пятно диаметром 1,6 ячейки.
Каждая ячейка накапливает попавший в неё свет за время выдержки.
Сумма света → числоСвет от точек 1, 2 и 3 в выбранной ячейке: 0,325 + 0 + 0 ≈ 0,325. Умножаем на 255 и округляем → 83 из 255.
Рамка цвета лучей показывает, в какие ячейки пришёл свет выбранной точки. Нажми на любую ячейку: ниже видна сумма света от всех трёх источников и её округление в число. Ячейка не знает, что перед камерой — точка, дерево или лицо: она измеряет только попавший на неё свет. Сетка таких измерений и становится растровым изображением.
Что здесь упрощено
Это геометрическая модель тонкой собирающей линзы: фокусное расстояние 1, предмет на расстоянии 3, резкое изображение на расстоянии 1,5. Изображение перевёрнуто. Двигаем плоскость матрицы, а не меняем сам предмет. Все размеры условные; в камере обычно перемещают линзы. Показаны только три луча в сечении, хотя через круглую диафрагму проходит целый пучок. Пунктир за матрицей показывает, где лучи встретились бы без неё. Сумму света по ячейкам оцениваем фиксированным набором лучей через отверстие. Маленькие скачки на границах ячеек — точность этой численной оценки.
Здесь нет дифракции, аберраций, шума и цветных фильтров. Свет, выдержка и чувствительность заданы в относительных единицах; числа не обозначают реальные фотоны или электроны. Линейный сигнал округляем до 0–255, чтобы отдельно показать оцифровку; это не точная модель RAW или JPEG. Для читаемого вывода яркости переводим линейный свет в sRGB, но подписанные числа остаются линейными. На резкой плоскости идеальную точку рисуем маленьким кружком, чтобы её было видно.
Свет точки становится пятном
Идеализированная проекция связывает точку сцены с положением на матрице. Фокус, диафрагма, движение и дифракция распределяют её свет по пятну — функции рассеяния точки, PSF. Ниже размытие действительно считается по её весам.
Гауссово пятно — учебная модель, не точная форма кружка нерезкости или дифракционной картины. Нормированная сумма 1 сохраняет свет, пока пятно помещается в кадр. При нулевом продолжении выход за границу кадра теряет часть света.
В схеме выше лучи объясняли происхождение пятна. Теперь изолируем его действие: каждая клетка слева — свет, пришедший из одной точки; веса посередине показывают, какая его доля попала в выбранную клетку справа. Выберите центр пятна и его край: меняются вклады, но не правило сложения. Этот же расчёт позже назовём свёрткой.
Куда попадает свет точки?
Начните с точки. Меняйте ширину PSF, затем сравните круглое пятно со смазом. Выберите результат, чтобы увидеть слагаемые.
Точные значения — в разборе точки
Серая шкала 0…1: от чёрного к белому.
Точные значения — в разборе точки
Серая шкала 0…1: от чёрного к белому.
Разобрать выбранную точку
Что показывает график
Каждая точка кривой — значение пикселя на отмеченной горизонтали. Выберите другую строку на изображении: график последует за ней. Сравните ширину границы и сохранность деталей.
- Вход
- Выход
Широкое пятно снижает пик, но сумма нормированных весов остаётся 1. Свет распределяется, а не создаётся.
- Сумма света на входе
- 1
- Сумма света в кадре
- 1
Параметры и подробности
PSF распределяет свет одной точки между соседями. Сумма весов равна 1; за пределами сцены — ноль. Линия моделирует равномерный смаз, а не траекторию, восстановленную по фото.
Выбери точку на изображении. Стрелки перемещают её; Home и End — к краям строки. Просмотр не изменяет вычисление.
Для изменения примера нужен JavaScript и Canvas. Рассчитанные изображения доступны выше.
Сбор света и усиление
Фотосайт имеет площадь и собирает заряд за экспозицию. Дольше — обычно больше фотонов, но больше смаза при движении. Большая диафрагма пропускает больше света и меняет глубину резкости; фокусное расстояние меняет масштаб проекции. Усиление масштабирует уже собранный сигнал.
Ёмкость конечна: после насыщения разные яркие сигналы становятся одинаковыми. Стационарная PSF предполагает одинаковое размытие по полю; реальные углы объектива, движущийся объект и скользящий затвор могут этому не соответствовать. Проверяйте одну причину за раз.
Выберите тёмную клетку: расчёт покажет ожидаемый заряд и конкретное случайное измерение. Экспозиция меняет ожидание до прихода фотонов; усиление действует после сбора. Теперь выберите яркую клетку и поднимите экспозицию до насыщения: потерянные различия усилением не вернуть.
Собрать свет или усилить?
Увеличьте экспозицию, верните её и увеличьте усиление. Сравните ожидаемые и собранные электроны одной точки.
Точные значения — в разборе точки
Серая шкала 0…1: от чёрного к белому.
- Ожидаем электроны
- Случайный приход, предел 64
- Усиление и шум считывания
- Ограничить и округлить до кода
- Код в шкале 0–1
Точные значения — в разборе точки
Серая шкала 0…1: от чёрного к белому.
Разобрать выбранную точку
Что показывает график
Экспозиция меняет число фотонов до насыщения. Усиление масштабирует уже собранный сигнал и быстрее доводит код до предела.
Параметры и подробности
Учебная модель: ёмкость 64 фотоэлектрона, пуассоновский приход света, затем ограничение ёмкостью, усиление, шум считывания и 8-битное квантование. Порядок выбран явно, реальные камеры сложнее. Seed фиксирует реализацию шума.
Выбери точку на изображении. Стрелки перемещают её; Home и End — к краям строки. Просмотр не изменяет вычисление.
Для изменения примера нужен JavaScript и Canvas. Рассчитанные изображения доступны выше.
Практика
Проверь идею на другом условии. Следуй задаче над изображениями; разбор точки поможет объяснить результат. Эта практика не оценивается.
Диагностика смаза на границе
Здесь уже включён горизонтальный смаз на сцене. Найдите край, перпендикулярный смазу, затем переключитесь на круглое пятно. Какой край пострадал сильнее? Сравните ширину перехода, а не только общую мягкость.
Точные значения — в разборе точки
Серая шкала 0…1: от чёрного к белому.
Точные значения — в разборе точки
Серая шкала 0…1: от чёрного к белому.
Разобрать выбранную точку
Что показывает график
Каждая точка кривой — значение пикселя на отмеченной горизонтали. Выберите другую строку на изображении: график последует за ней. Сравните ширину границы и сохранность деталей.
- Вход
- Выход
Широкое пятно снижает пик, но сумма нормированных весов остаётся 1. Свет распределяется, а не создаётся.
- Сумма света на входе
- 160.1703
- Сумма света в кадре
- 144.1581
Параметры и подробности
PSF распределяет свет одной точки между соседями. Сумма весов равна 1; за пределами сцены — ноль. Линия моделирует равномерный смаз, а не траекторию, восстановленную по фото.
Выбери точку на изображении. Стрелки перемещают её; Home и End — к краям строки. Просмотр не изменяет вычисление.
Для изменения примера нужен JavaScript и Canvas. Рассчитанные изображения доступны выше.
Игры
Проверь объяснение
Вопрос 1 из 5
Два ярких участка заполнили ёмкость ячейки. Поможет ли уменьшение усиления различить их?
Точные значения — в разборе точки
Серая шкала 0…1: от чёрного к белому.
Точные значения — в разборе точки
Серая шкала 0…1: от чёрного к белому.
Точные значения — в разборе точки
Серая шкала 0…1: от чёрного к белому.
Точные значения — в разборе точки
Серая шкала 0…1: от чёрного к белому.
Выбери один ответ. Он проверится сразу.
Ограничения и материалы
Границы этого примера
Синтетическая 2D-сцена, стационарная PSF и условная ёмкость датчика. Нет трассировки лучей, RAW-импорта и восстановления реального движения.