Почти два века существования фотоаппарата, не должны, казалось бы, оставить инженерам шанса добавить «что-то еще». Современные камеры снимают высококачественное видео, выгружают фотографии в облако и привязывают гео-метки. Мы можем снимать панорамы и 360°, следить за звездами и замедлять время. Но прогресс не стоит на месте, а мчится в будущее, подогреваемый пытливыми умами.

Технология, о которой пойдет речь сегодня, не является новой по своей сути. Но способ, которым она реализована, определенно заслуживает внимания. Речь пойдет об интересном light-field объективе, который можно будет использовать с любой DSLR камерой.
Сам термин light-field (Световое поле) был предложен советским ученым-физиком Гершуном еще в 1936 году в его работе по радиометрическим свойствам света.
Световое поле — это векторная функция описывающая свет, проходящий в любом направлении через точку пространства.
Луч света (а точнее его направление) для данной точки пространства может быть описан пятью параметрами (так называемая 5D-пленоптическая функция): координатами x, y, z и двумя углами θ и ϕ. Путем интегрирования векторов поля, полученных с различных точек зрения, мы получаем величину полной освещенности. А имея полное описание световых лучей в пространстве, мы можем точно определить, например, как выглядит объект с любой точки зрения.
Каково же практическое применение теории светового поля? Одно из наиболее интересных направлений — фотокамеры светового поля (light-field camera). В отличие от классических камер, фиксирующих интенсивность света в точках объекта, камера светового поля также учитывает направление лучей, исходящих и этих точек. Другими словами, мы захватываем «отдельные» лучи света, исходящие от объекта. А это, в свою очередь, позволяет получать физические координаты объектов в пространстве и карту глубин (depth map).
Мы уже знаем, что камера такого типа должна фиксировать не только интенсивность, но и направление световых лучей, исходящих от объекта. Один из способов реализации — использование массива линз перед оптическим сенсором. Эти линзы собирают лучи света от объекта, расположенного в определенной части сцены, и фокусируют их на сенсор.
Важно понимать, что в данном случае основная линза объектива больше не фокусирует изображение на сенсоре. Вместо этого лучи проецируются на плоскость массива линз (в классических камерах сенсор находится как раз в этой плоскости), проходят массив линз, и лишь потом падают на сенсор, формируя мозаичное изображение различных частей сцены.

На рисунке показана упрощенная схема работы такого объектива. Благодаря хитрой организации оптической системы, в конечном счете мы получаем не одно, а множество изображений объекта, причем каждое такое изображение создает уникальное представление объекта со своего уникального угла зрения.
Однако, данная схема имеет ряд недостатков, таких как дороговизна изготовления, сложность калибровки, управления апертурой и другими параметрами системы. Один из самых известных примеров таких камер — продукт компании Lytro — камера Lytro Illum (проект, кажется, заморожен)
Можно. Объектив, о котором я хочу рассказать в данной статье, не содержит массива микро-линз. Вместо этого используется система, представляющая собой зеркальный «канал» c прямоугольным сечением (mirror box), где, благодаря многократному отражению, происходит формирование так называемого калейдоскопического изображения, которое фиксируется сенсором камеры обычным способом.

Разработкой занимается небольшая немецкая компания. Объектив находится в стадии вполне себе работающего прототипа, а принцип его действия достаточно прост.
Примерно так выглядят изображения, полученные системой:

Элементы здесь зеркально отражены. Такая необычная калейдоскопическая картинка — следствие отражения лучей в «зеркальном канале».
А так выглядит абсолютная разность пары восстановленных элементов (яркие пиксели означают бóльшую разность значений):

Другими словами, мы имеем не что иное, как стерео-пару. А точнее, стерео-девятку (3х3 элементов). Изменяя геометрические параметры канала, мы можем получить 5х5 и даже большие размерности, что, однако, в реальной жизни смысла не имеет и даже вредит.
Итак, мы имеем набор картинок, формирующих калейдоскопическое изображение. Что же дальше?
Здесь заканчивается теплое аналоговое оптическое hardware, и начинается холодный цифровой soft.
Вне зависимости от приложения, изображения необходимо восстановить (нужно откалибровать всю оптическую систему, а полученные данные калибровки применить к картинкам). Процесс довольно нудный, но важный, так как различные элементы калейдоскопического изображения обязательно должны быть «согласованы» друг с другом (даже незначительные /несколько пикселей/ расхождения элементов, могут сильно испортить результат и впечатление). Существует множество работ на тему калибровки, так что раскрывать детали нет смысла. Нужно лишь запомнить, что калибровка очень важна для любых стерео-приложений.
Получив «ровные» картинки, мы можем строить карту глубин (depth map).
Это, пожалуй, самая важная и сложная часть в пайплайне. Качество конечного приложения зависит от качества карты глубин. А качество карты глубин, в свою очередь, зависит от качества калибровки, выбранного алгоритма и «сложности» сцены.
Но вне зависимости от алгоритма, задача всегда одна — найти соответствующие точки изображений Левого и Правого (а в нашем случае + еще 7 изображений) и посчитать расстояние (несоответствие, disparity) между ними. Величина расстояния и будет являться обратной значения глубины для данного пикселя.
Зачем использовать 9 изображений, если можно обойтись двумя? Очевидно, используя больше изображений, мы имеем больше информации о сцене и можем отчасти решить некоторые проблемы существующих алгоритмов оценки карты глубин.
Среди классических проблем таких алгоритмов:
Существует множество качественных и не очень алгоритмов для построения карты глубин. Наиболее перспективные разработки идут сейчас в области гибридных подходов с использованием классических методов и различных техник машинного обучения (CNN, DNN). Как всегда, выбор алгоритма — это компромисс между скоростью и качеством. К счастью, в фотографии мы можем позволить себе отступить от real-time и получить более качественную карту глубин.
Для нашего же примера карта глубин выглядит как-то так:

Карту глубин мы получили, что теперь с ней делать? Информация об удаленности предметов часто бывает полезной. Одно из популярных приложений – пост-фокусировка.
Попадание мимо фокуса — одна из проблем фотографов. Вы заметили, что на оригинальном изображении вся сцена была в фокусе? Так выглядит пост-фокусировка, основанная на карте глубин:

Следует отметить, что с данным подходом мы фактически отвязываемся от физических свойств оптической системы. Это позволяет, к примеру, алгоритмически создавать изображение с несколькими фокусами. Или программно менять глубину резко изображаемого пространства (Depth of Field).
Пост-фокусировка является хоть и основным, но вс�� же не единственным приложением. Вообще данный объектив можно рассматривать как массив виртуальных камер (9 шт). Соответственно, он применим ко всем тем приложениям, которые вы можете представить для массива камер, например:
Вопрос о конечной стоимости этого объектива пока остается открытым, но некоторые физические параметры уже определены. Известно, что длина не должна превышать 20 см, а масса – 800 гр. Заявлено, что данное устройство будет в первую очередь совместимо с камерами Sony, Canon и Nikon.
За рамками статьи остались такие важные темы как практическое использование с видоискателями стандартных камер, восстановление разрешения (super-resolution), алгоритмы обработки и интеграция с графическими редакторами. Об этом я расскажу в следующий раз.
Благодарю за внимание!

Технология, о которой пойдет речь сегодня, не является новой по своей сути. Но способ, которым она реализована, определенно заслуживает внимания. Речь пойдет об интересном light-field объективе, который можно будет использовать с любой DSLR камерой.
Что такое Ligh-field и с чем его едят?
Сам термин light-field (Световое поле) был предложен советским ученым-физиком Гершуном еще в 1936 году в его работе по радиометрическим свойствам света.
Световое поле — это векторная функция описывающая свет, проходящий в любом направлении через точку пространства.
Луч света (а точнее его направление) для данной точки пространства может быть описан пятью параметрами (так называемая 5D-пленоптическая функция): координатами x, y, z и двумя углами θ и ϕ. Путем интегрирования векторов поля, полученных с различных точек зрения, мы получаем величину полной освещенности. А имея полное описание световых лучей в пространстве, мы можем точно определить, например, как выглядит объект с любой точки зрения.Каково же практическое применение теории светового поля? Одно из наиболее интересных направлений — фотокамеры светового поля (light-field camera). В отличие от классических камер, фиксирующих интенсивность света в точках объекта, камера светового поля также учитывает направление лучей, исходящих и этих точек. Другими словами, мы захватываем «отдельные» лучи света, исходящие от объекта. А это, в свою очередь, позволяет получать физические координаты объектов в пространстве и карту глубин (depth map).
Как устроены камеры светового поля?
Мы уже знаем, что камера такого типа должна фиксировать не только интенсивность, но и направление световых лучей, исходящих от объекта. Один из способов реализации — использование массива линз перед оптическим сенсором. Эти линзы собирают лучи света от объекта, расположенного в определенной части сцены, и фокусируют их на сенсор.
Важно понимать, что в данном случае основная линза объектива больше не фокусирует изображение на сенсоре. Вместо этого лучи проецируются на плоскость массива линз (в классических камерах сенсор находится как раз в этой плоскости), проходят массив линз, и лишь потом падают на сенсор, формируя мозаичное изображение различных частей сцены.

На рисунке показана упрощенная схема работы такого объектива. Благодаря хитрой организации оптической системы, в конечном счете мы получаем не одно, а множество изображений объекта, причем каждое такое изображение создает уникальное представление объекта со своего уникального угла зрения.
Однако, данная схема имеет ряд недостатков, таких как дороговизна изготовления, сложность калибровки, управления апертурой и другими параметрами системы. Один из самых известных примеров таких камер — продукт компании Lytro — камера Lytro Illum (проект, кажется, заморожен)
А можно сделать проще?
Можно. Объектив, о котором я хочу рассказать в данной статье, не содержит массива микро-линз. Вместо этого используется система, представляющая собой зеркальный «канал» c прямоугольным сечением (mirror box), где, благодаря многократному отражению, происходит формирование так называемого калейдоскопического изображения, которое фиксируется сенсором камеры обычным способом.

Разработкой занимается небольшая немецкая компания. Объектив находится в стадии вполне себе работающего прототипа, а принцип его действия достаточно прост.
Примерно так выглядят изображения, полученные системой:

Элементы здесь зеркально отражены. Такая необычная калейдоскопическая картинка — следствие отражения лучей в «зеркальном канале».
А так выглядит абсолютная разность пары восстановленных элементов (яркие пиксели означают бóльшую разность значений):

Другими словами, мы имеем не что иное, как стерео-пару. А точнее, стерео-девятку (3х3 элементов). Изменяя геометрические параметры канала, мы можем получить 5х5 и даже большие размерности, что, однако, в реальной жизни смысла не имеет и даже вредит.
Итак, мы имеем набор картинок, формирующих калейдоскопическое изображение. Что же дальше?
Здесь заканчивается теплое аналоговое оптическое hardware, и начинается холодный цифровой soft.
Калибровка
Вне зависимости от приложения, изображения необходимо восстановить (нужно откалибровать всю оптическую систему, а полученные данные калибровки применить к картинкам). Процесс довольно нудный, но важный, так как различные элементы калейдоскопического изображения обязательно должны быть «согласованы» друг с другом (даже незначительные /несколько пикселей/ расхождения элементов, могут сильно испортить результат и впечатление). Существует множество работ на тему калибровки, так что раскрывать детали нет смысла. Нужно лишь запомнить, что калибровка очень важна для любых стерео-приложений.
Карта глубин
Получив «ровные» картинки, мы можем строить карту глубин (depth map).
Это, пожалуй, самая важная и сложная часть в пайплайне. Качество конечного приложения зависит от качества карты глубин. А качество карты глубин, в свою очередь, зависит от качества калибровки, выбранного алгоритма и «сложности» сцены.
Но вне зависимости от алгоритма, задача всегда одна — найти соответствующие точки изображений Левого и Правого (а в нашем случае + еще 7 изображений) и посчитать расстояние (несоответствие, disparity) между ними. Величина расстояния и будет являться обратной значения глубины для данного пикселя.
Зачем использовать 9 изображений, если можно обойтись двумя? Очевидно, используя больше изображений, мы имеем больше информации о сцене и можем отчасти решить некоторые проблемы существующих алгоритмов оценки карты глубин.
Среди классических проблем таких алгоритмов:
- Монотонные, одноцветные поверхности без текстуры — алгоритму просто не за что «зацепиться» в процессе поиска соответствий
- Перекрывающиеся объекты (видимые с одного угла и невидимые с другого)
- Тени и отражения на зеркальных или глянцевых поверхностях
- Регулярные структуры, такие как клетки и полоски создают проблемы, так как не всегда понятно, какая именно клетка изображения А соответствует клетке изоб��ажения B.
- Границы изображений — проблема схожая с проблемой перекрывающихся объектов. На границах изображений неизбежно теряется информация с какого-нибудь угла зрения.
Существует множество качественных и не очень алгоритмов для построения карты глубин. Наиболее перспективные разработки идут сейчас в области гибридных подходов с использованием классических методов и различных техник машинного обучения (CNN, DNN). Как всегда, выбор алгоритма — это компромисс между скоростью и качеством. К счастью, в фотографии мы можем позволить себе отступить от real-time и получить более качественную карту глубин.
Для нашего же примера карта глубин выглядит как-то так:

Пост-фокусировка
Карту глубин мы получили, что теперь с ней делать? Информация об удаленности предметов часто бывает полезной. Одно из популярных приложений – пост-фокусировка.
Попадание мимо фокуса — одна из проблем фотографов. Вы заметили, что на оригинальном изображении вся сцена была в фокусе? Так выглядит пост-фокусировка, основанная на карте глубин:

Следует отметить, что с данным подходом мы фактически отвязываемся от физических свойств оптической системы. Это позволяет, к примеру, алгоритмически создавать изображение с несколькими фокусами. Или программно менять глубину резко изображаемого пространства (Depth of Field).
Другие приложения
Пост-фокусировка является хоть и основным, но вс�� же не единственным приложением. Вообще данный объектив можно рассматривать как массив виртуальных камер (9 шт). Соответственно, он применим ко всем тем приложениям, которые вы можете представить для массива камер, например:
- Поляризационные фильтры – каждый из 9 элементов изображения имеет свой собственный фильтр поляризации с заданным направлением. Это позволяет одним снимком получить 9 изображений с различной поляризаций и даже создавать видео-ряд плавной смены направления поляризации
- HDR (High-Dynamic-Range) – тот же принцип: 9 различных светофильтров + алгоритм для оптимального «сочетания» яркостей
- Изменение угла зрения (perspective change)
- Depth-based editing – позволяет применять различные фильтры к различным глубинам. Например, сделать фон черно-белым, выделив передний план.
- Сегментация – выделение объектов находящихся на определенном расстоянии
- Измерение расстояния – линейка для картинок. Особенно хорошо работает для «неглубоких» сцен, для которых disparity вычисляется проще.
- Приложения для промышленности — различные способы оценки качества производства и мониторинга
Заключение
Вопрос о конечной стоимости этого объектива пока остается открытым, но некоторые физические параметры уже определены. Известно, что длина не должна превышать 20 см, а масса – 800 гр. Заявлено, что данное устройство будет в первую очередь совместимо с камерами Sony, Canon и Nikon.
За рамками статьи остались такие важные темы как практическое использование с видоискателями стандартных камер, восстановление разрешения (super-resolution), алгоритмы обработки и интеграция с графическими редакторами. Об этом я расскажу в следующий раз.
Благодарю за внимание!
