Камера датчик глубины для чего

Датчик глубины резкости в смартфоне — что это и зачем нужно?

Особенности и использование сенсора глубины резкости в телефоне.

Датчик глубины резкости — это сенсор, который во время съемки на камеру определяет глубину и дальность расположения объектов относительно смартфона и друг друга. Обычно датчик является отдельным модулем в блоке камер телефона, но в более современных моделях его встраивают в другие типы объективов, например, в широкоугольные или телеобъективы.

Зачем нужен датчик глубины резкости в телефоне?

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

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

Камера датчик глубины для чего. Смотреть фото Камера датчик глубины для чего. Смотреть картинку Камера датчик глубины для чего. Картинка про Камера датчик глубины для чего. Фото Камера датчик глубины для чего

На практике, датчик глубины резкости часто некачественно выполняет свою работу. У трехмерного объекта в фокусе зачастую размыты границы, потому что его глубина на границе будет отличаться от той, что в самом центре фокусировки. Также размытие может казаться неестественным, так как на смартфонах обычно применяется равномерное размытие, а не усиливающееся в зависимости от расстояния до точки фокуса.

Кроме того, что датчик глубины резкости определяет положение объектов и обеспечивает эффектное размытие на фотографиях, он необходим для следующих функций:

Датчик используется не только для определения глубины резкости во время съемки — его возможности намного шире. Определяя расположение предметов, он поддерживает технологию виртуальной реальности для мобильных пользователей. И если сейчас сенсор работает неидеально, в будущем датчик глубины на телефоне может стать таким же эффективным, как и VR-очки.

Рекомендуем прочитать материал с советами, которые помогут делать красивые снимки на камеру смартфона.

Источник

Камеры глубины. Обзор устройств.

Камера датчик глубины для чего. Смотреть фото Камера датчик глубины для чего. Смотреть картинку Камера датчик глубины для чего. Картинка про Камера датчик глубины для чего. Фото Камера датчик глубины для чего

В этой заметке мы разберемся, какие устройства для 3D сканирования доступны рядовому пользователю, и на что способны мобильные камеры глубины. Обзор инструментов, подходящих для сканирования помещений.

Камера датчик глубины для чего. Смотреть фото Камера датчик глубины для чего. Смотреть картинку Камера датчик глубины для чего. Картинка про Камера датчик глубины для чего. Фото Камера датчик глубины для чего

Есть отрасли, где геометрия объекта и понимание того, насколько далеко объекты расположены от зрителя и относительно друг друга, играет ключевую роль: протезирование, инженерия, связанные с проектированием деталей задачи, беспилотные автомобили и даже криминалистика — сканирование места преступлений. Для маркетинга и мультимедиа представление объектов в 3D расширяет границы возможностей — пример тому набравшие популярность 3D туры по музеям, оцифровка экспонатов и достопримечательностей.

При сканировании, модель и сцены создаются не художником или конструктором, а берутся из реального окружения. С помощью устройства, снабженного различными камерами и датчиками, физические свойства объекта или пространства (форма, цвет) переносятся в цифровую среду. Отсканированные модели можно использовать как основу для дальнейшей доработки или другого анализа, в том числе семантического. Такой подход будет экономить время и деньги, а силы специалистов в результате можно будет направить на решение более творческих задач — все это ведет к автоматизации, к которой мы все так стремимся.

Описание задачи

Перед нами стояла задача — быстрое и качественное сканирование помещений. Необходимо:

— иметь возможность зайти в помещение и быстро, не более чем за пару минут, получить 3D модель комнаты;

— осуществить доступ к полученной 3D модели для редактирования и отображения каких-либо данных, связанных с объектами внутри комнаты.

Задача не новая, но для нас был особенно важен следующий ее аспект — как добиться цели, не приобретая дорогой производственный 3D cканер, с наилучшим соотношением цены и качества?

Для того, чтобы построить 3D модель, нам необходимо как-то получить карту глубины. То есть помимо цветной картинки с обычной камеры, нам понадобится камера глубины, благодаря которой каждому пикселю изображения будет ставиться в соответствие число — расстояние до этого пикселя.

Чтобы получить 3D модель, необходимо провести множество сканирований с разных сторон, а затем привести результаты к общей системе координат (сделать выравнивание).

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

А сейчас разберемся с тем, откуда брать глубину, какие технологии и устройства доступны сейчас на рынке.

Направления развития depth камер

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

Очевидно, что RGB-D камеры становятся важной частью современного рынка устройств. Есть даже приложение в Google Play для 3D сканирования.

Structured Light камеры

Structured Light камеры основаны на сканировании структурированным светом — с помощью проектора (обычно инфракрасного) формируется проекция световой сетки на объекте, и с помощью камеры фиксируются искажения сетки.

Камера датчик глубины для чего. Смотреть фото Камера датчик глубины для чего. Смотреть картинку Камера датчик глубины для чего. Картинка про Камера датчик глубины для чего. Фото Камера датчик глубины для чего

Time of Flight камеры (ToF)

ToF основаны на измерении времени отклика лучей от поверхности объекта.

Камера датчик глубины для чего. Смотреть фото Камера датчик глубины для чего. Смотреть картинку Камера датчик глубины для чего. Картинка про Камера датчик глубины для чего. Фото Камера датчик глубины для чего

Depth from Stereo камеры

Depth from Stereo камеры схожи с принципом работы стереоскопического зрения человека — на основании различия в снимках двух камер, направленных в одном направлении, определяется расстояние до каждой точки изображения.
Примеры устройств:

Камера датчик глубины для чего. Смотреть фото Камера датчик глубины для чего. Смотреть картинку Камера датчик глубины для чего. Картинка про Камера датчик глубины для чего. Фото Камера датчик глубины для чего

С помощью стереоскопии на смартфоне не удастся сканировать помещения, но можно заметно увеличивать качество фотографий и менять глубину резкости, благодаря возможности выделения объектов на переднем плане.

Камера датчик глубины для чего. Смотреть фото Камера датчик глубины для чего. Смотреть картинку Камера датчик глубины для чего. Картинка про Камера датчик глубины для чего. Фото Камера датчик глубины для чего

Камера датчик глубины для чего. Смотреть фото Камера датчик глубины для чего. Смотреть картинку Камера датчик глубины для чего. Картинка про Камера датчик глубины для чего. Фото Камера датчик глубины для чего

Light Field камеры

С помощью массива микролинз, расположенных перед сенсором камеры, в каждой точке фиксируется двумерный массив световых лучей, в результате чего получается четырехмерный кадр. Подробнее можно прочитать здесь. Мы не будем останавливаться на этой технологии, так как на данный момент из мобильных устройств она применяется только в Google Pixel 2, для выделения объектов на переднем плане и получения стереофото.

Обзорная таблица рассмотренных устройств

Мы сделали таблицу по рассмотренным камерам глубины, которая заполнялась в ходе экспериментов и изучения технических спецификаций устройств.

В таблицу входят некоторые устройства, которые не удалось протестировать или узнать достаточно характеристик, чтобы включить в обзор: Matterport Pro2 3D Cammera, Leica Geosystems BLK360, THE DPI-8S HANDHELD 3D SCANNER. “Нет информации” в ячейках означает, что в открытых источниках информация по этому пункту недостаточно полная.

Далее мы рассмотрим каждое устройство более подробно.

Обзор камер глубины

В наш обзор войдут устройства, оснащенные камерой для получения цвета, и камерой глубины, которые будут давать возможность в риал-тайм получать облако точек (point cloud) или полигональную модель с расстояния 1–4 метра в движении.

Для дальнейшей работы нам так же необходимо выбрать SDK или приложение для выгрузки полученной модели. На основании этих требований для ряда устройств, рассмотрим следующие характеристики:

Мы отдельно обращаем внимание на наличие инфракрасного передатчика-приемника —качество построения облака точек на устройствах без этого датчика сильно зависит от качества освещения сканируемого помещения.

Хотелось бы обратить внимание на то, что выбор 3D редактора, алгоритмов постобработки и анализа сцены (например, для автоматической расстановки меток с дополнительной информацией или для выделения плоскостей стен и пола) — это тоже отдельная и важная задача, которую мы не затрагиваем в этой статье.

Внимание! Указанные цены и сравнение результатов сканирования актуальны на момент написания статьи.

Structure Sensor by Occipital

От 399$. Цена зависит от комплектации.

Сам сенсор не имеет встроенной RGB камеры. Он использует камеру устройства.

Canvas by occipital — продуктовое решение от Оccipital, позволяет сканировать помещения и получать меш без текстур (получение облака точек не предусмотрено).

Occipital SDK доступно при покупке structure sensor. Дает доступ к высокоуровневому SLAM алгоритму, который строит 3D сцену.

Intel RealSense D435

Согласно характеристикам сенсора:

В RealSense SDK 2.0 есть возможности для работы с RGB и depth кадрами. SDK открыто.

ZED mini

ZED SDK от Stereolabs дает доступ к широким возможностям по работе как с самими камерами, так и с различными алгоритмами обработки. В частности, реализован алгоритм построения 3D сцены, предусмотрены методы для получения облака точек и текстурированного меша.

Мы тестировали SDK, используя имеющуюся камеру ZED mini и тестовое приложение для 3D сканирования, написанное разработчиками SDK для С++. Результаты сканирования получились неудовлетворительными:

Такие результаты, по всей видимости, связаны с отсутствием ИК модуля на самом устройстве — информация о глубине со стереокамер выходит весьма условной. Такое решение подойдет скорее для сканирования относительно простых сред, например, фасадов домов.

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

Нет доступа к исходным кодам SDK.

Lenovo Phab2 Pro (project Tango)

RTAB-Map — SDK и автономное приложение, которое можно использовать в построении 3D скана помещения. Полностью открытый код. Можно выбирать SLAM алгоритмы, множество настроек.

Приложение возможно использовать на устройствах project Tango. Тестировали RTAB-Map Tango на Lenovo Phab 2 Pro.

На Lenovo Phab 2 Pro удалось просканировать довольно большое помещение (

150 м²). Так же существует возможность склеить отсканированные на мобильном устройстве части помещения через RTAB-Map на компьютере, но требуется соблюдать предложенные рекомендации по сканированию.

К сожалению, в нашем распоряжении не было всех устройств, заслуживающих внимания. Выше мы описали результаты сканирования на основе наших собственных тестов, с имеющихся в распоряжении камер. Ниже перечислим ещё несколько устройств, потенциально пригодных для решения нашей задачи, исходя из примеров с сайтов производителей, технической спецификации и документации.

Structure Sensor Mark II

От 419$ (для iPad Pro)

Улучшенная версия Structure Sensor.

Используются те же SDK, что и для Structure Sensor.

Azure Kinect

Microsoft прекратил производство Kinect for Windows v2, на смену которому пришел Azure Kinect DK.

Неизвестно, будет ли в Azure Kinect Sensor SDK решение для сканирования помещений. Согласно описанию, есть возможность использовать инструменты Azure. Примеры отсутствуют, но в SDK есть функционал получения облака точек каждого кадра. Исходный код открыт.

Заключение

Из обзора можно сделать вывод, что при использовании дешевых открытых решений, качество сканирования в основном оставляет желать лучшего — для его проведения требуется соблюдение особых условий (объем сканирования, условия освещения) или доработка алгоритмов. Например, доработав алгоритм позиционирования с помощью RTAB-Map в Occipital SDK, теоретически можно добиться такого же качества, что и в закрытом решении Сanvas для того же устройства. Нам показалось, что этот вариант даст наилучший результат.

Если вы не хотите тратить время и силы на переписывание исходных кодов под свои задачи, и в приоритете использование готового решения, то Lenovo Phab 2 Pro + RTAB-Map — приемлемый вариант. Хоть Project Tango это уже давно закрытый проект, качество скана в процессе тестирования у нас получилось лучше, чем во многих других современных решениях из нашего обзора. А если сделать связку с какой-либо современной моделью телефона и RTAB-Map, качество может получиться еще лучше, но будет необходим разбор вопроса с интеграцией RTAB-Map.

В заключении хотелось бы еще раз отметить, что помимо сканирования объектов и помещений, камеры глубины активно используются в AR, распознавании жестов, распознавании лица, построении скелетной анимации. Если вам интересно почитать про другие кейсы использования устройств—ознакомьтесь с нашей статьей о создании 2.5D видео (ссылка будет добавлена немного позже).

Надеемся, что наш материал помог вам справиться с поставленной задачей! Будем рады получить фидбек или вопросы по проведенным вами экспериментами 🙂

Источник

Что такое сенсор глубины на смартфоне? Или почему портретный режим превратился в инструмент для обмана

Каждый раз, делая обзор на очередной смартфон и упоминая «сенсор глубины», я чувствую, что ввожу читателя в заблуждение.

Сегодня этот загадочный датчик глубины встречается на подавляющем большинстве устройств, ведь он так важен для портретного режима с красивым размытием фона (эффект боке, живой фокус, режим диафрагмы и пр.).

А может и не важен вовсе? Возможно, вы встречали на просторах интернета разоблачения, в которых люди полностью заклеивали сенсор глубины, а смартфон продолжал размывать фон на портретных снимках, как ни в чем не бывало. Получается, телефоны умеют определять глубину сцены и без сенсора глубины? Зачем же он тогда нужен?

Ну и главный вопрос — как вообще устроен этот «сенсор»? На чем основан принцип его работы?

Бегло просмотрев несколько популярных статей и роликов в интернете, я с удивлением обнаружил, что многие люди думают, будто этот сенсор посылает световые импульсы и определяет время задержки отраженного луча. То есть, как-то активно участвует в построении карты глубины.

А вот, к примеру, на сайте Popular Science (Популярная наука) приводится следующее объяснение (в моем вольном переводе):

Датчик глубины (depth sensor) предназначен именно для определения глубины сцены. В топовых современных смартфонах датчик глубины постепенно исчезает, так как его заменяют другие камеры, умеющие ощущать глубину и объем сцены, например широкоугольная или телеобъектив.

Камеры, ощущающие глубину — это, конечно, очень интересно, но давайте разберемся, что же происходит на самом деле.

Зачем вообще нужен какой-то сенсор глубины?

Современный смартфон должен не просто «видеть» через камеру плоскую картинку, но и «понимать», на каком расстоянии находится каждый объект в сцене. То есть, он должен уметь «ощущать» глубину сцены. И на это есть целый ряд причин.

Например, благодаря умению построить карту глубины, телефоны научились делать красивые фотографии с размытием фона. Да, часто на таких снимках заметна искусственная обработка, но иногда результат практически не отличим от работы зеркального фотоаппарата:

Сделать что-то подобное при помощи оптики нереально, так как единственный параметр, отвечающий за степень размытия фона — это диаметр входного зрачка объектива (проще говоря, размер дырки, через которую свет попадает в объектив смартфона).

На самых дорогих камерофонах он не превышает и 4 миллиметров, в то время, как даже у бюджетного объектива зеркального фотоаппарата он будет минимум в 2 раза больше (а у дорогих объективов — в 10-15 раз).

Помимо этого, на смартфоны постепенно приходит дополненная реальность (AR), позволяющая определять размеры объектов, расстояние между предметами и делать много всего удивительного (примерять вещи и различные аксессуары, смотреть, как будет выглядеть мебель в интерьере своего дома и многое другое).

Также умение определять глубину позволяет создавать более надежные и удобные способы блокировки смартфона (например, технология FaceID, которая делает «трехмерный» снимок лица).

Многие производители пытаются придумать новые способы управления смартфоном при помощи бесконтактных жестов, а для этого также нужно хорошо понимать положение рук в пространстве.

Но как смартфоны определяют глубину и какие датчики для этого используются?

Три кита

На сегодняшний день существует всего 3 основных метода, позволяющие смартфонам «ощущать» объем:

Открою небольшую тайну. В некоторых смартфонах в качестве всем нам знакомого датчика приближения (тот, который блокирует экран во время входящего звонка) используется самая настоящая ToF-камера с лазерным излучателем и специальным высокочувствительным сенсором, измеряющим время полета света и определяющим точное расстояние до объекта. Работает он, естественно, гораздо точнее и качественнее обычных инфракрасных датчиков, встречающихся на подавляющем большинстве устройств.

Так вот, возвращаясь к нашей теме, горькая правда заключается в том, что для первого метода определения глубины сцены (стереозрение) не нужны дополнительные датчики.

Если на смартфоне уже есть две камеры (например, основная и ультраширокоугольная, или основная и телеобъектив), использовать еще третий «сенсор глубины» (то есть, еще одну камеру) нет никакого смысла.

Дополнительный «сенсор глубины» на 99.9% смартфонов — это банальная попытка ввести покупателя в заблуждение.

Возьмем, к примеру, смартфон Redmi Note 9 Pro, у которого сзади размещено 4 камеры:

Камера датчик глубины для чего. Смотреть фото Камера датчик глубины для чего. Смотреть картинку Камера датчик глубины для чего. Картинка про Камера датчик глубины для чего. Фото Камера датчик глубины для чего

Здесь уже есть основная и ультраширокоугольная камеры (две верхние). И этого более, чем достаточно для определения глубины сцены по принципу стерео-зрения. Но компания пытается обмануть покупателя, показав больше камер, чем у конкурентов. И таких примеров масса: Samsung Galaxy A51, Xiaomi Poco X3, OnePlus Nord, Huawei Y8p и мн. др.

Так как «сенсор глубины» — это самая обыкновенная камера с очень низким разрешением, то стоимость такой матрицы составляет от 30 центов за 2 Мп сенсор до 50-60 центов за 5 Мп сенсор (правда, за последний год цены немного выросли из-за колоссального спроса на столь дешевые компоненты).

Производитель за пару баксов может легко набросать пару лишних камер на корпус и затем использовать это количество в качестве конкурентного преимущества, внушая покупателям, что смартфон с пятью камерами снимает ну почти как зеркалка.

Еще раз повторю ключевую мысль прежде, чем мы продолжим: все современные смартфоны, за исключением буквально 10-15 флагманских моделей, определяют глубину сцены при помощи двух обыкновенных камер и метода под названием стереозрение. Да и те 10-15 флагманов также используют в основном стереозрение, а ToF-сенсор служит лишь как дополнительный инструмент.

Многие аппараты (Samsung Galaxy S20/Note20, Huawei P40, iPhone 11 Pro и прочие), легко обходятся основными камерами (широкоугольной, ультраширокоугольной или телеобъективом). Другие же устанавливают дополнительную камеру за три копейки исключительно в маркетинговых целях без малейшей технической необходимости.

А некоторые и вовсе идут на серьезный обман — устанавливают 2-Мп низкокачественную камеру а-ля «сенсор глубины», а сами используют широкоугольную камеру, так как ее качество гораздо выше.

Как смартфон определяет глубину, используя стереозрение и 2 камеры?

Итак, мы определились, что никакого «сенсора глубины» нет. Это обычная (и зачастую — лишняя) камера. Но что же такое стереозрение и как оно работает? Зачем нам нужны две камеры, ведь есть смартфоны, которые умеют размывать фон даже с одной камерой?

Наш мозг использует множество техник для определения глубины и объема сцены, например:

Можно продолжать этот список, но главная причина, по которой мы ощущаем объем, заключается в другом.

У каждого из нас есть два глаза, размещенных на небольшом расстоянии друг от друга. Причем один из них — не запасной и не для красоты или симметрии. Если мы будем смотреть на что-то поочередно то одним, то другим глазом, тогда те объекты, что расположены ближе к нам, будут смещаться в стороны гораздо сильнее тех объектов, что расположены дальше.

Очевидно, что так происходит потому, что правый глаз видит всю сцену как бы с правой стороны, а левый — с левой:

Камера датчик глубины для чего. Смотреть фото Камера датчик глубины для чего. Смотреть картинку Камера датчик глубины для чего. Картинка про Камера датчик глубины для чего. Фото Камера датчик глубины для чего

На картинке выше в левом глазу дерево немного сместилось влево, а цветок — вправо. А в правом глазу получилось наоборот — цветок оказался немного левее дерева.

Теперь мозг берет «картинки» из двух глаз и анализирует смещение каждой «точки». Возьмем левый глаз. Чем сильнее точка сместилась вправо (относительно такой же точки в правом глазу), тем ближе она находится к нам и наоборот, чем сильнее сместилась влево — тем она дальше от нас.

Это хорошо видно на следующей анимации, где поочередно меняются картинки, которые увидел левый и правый глаз:

Камера датчик глубины для чего. Смотреть фото Камера датчик глубины для чего. Смотреть картинку Камера датчик глубины для чего. Картинка про Камера датчик глубины для чего. Фото Камера датчик глубины для чего

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

Вот еще одна наглядная анимация:

Камера датчик глубины для чего. Смотреть фото Камера датчик глубины для чего. Смотреть картинку Камера датчик глубины для чего. Картинка про Камера датчик глубины для чего. Фото Камера датчик глубины для чего

Вроде бы всё просто и понятно. Но как же это делает смартфон? Как конкретно он строит карту глубины всей сцены, используя две камеры?

Чтобы разобраться с этим, давайте рассмотрим простой пример.

Итак, у нас есть какая-то точка в пространстве и смартфон с двумя камерами. Свет от точки проходит через объектив каждой камеры и попадает на матрицу. Мы получили два плоских снимка этой точки и не можем определить расстояние до нее:

Камера датчик глубины для чего. Смотреть фото Камера датчик глубины для чего. Смотреть картинку Камера датчик глубины для чего. Картинка про Камера датчик глубины для чего. Фото Камера датчик глубины для чего

Думаю, вы обратили внимание на одну странность — почему матрица камеры находится перед самой камерой, хотя должна находиться за объективом? На самом деле, мы просто разместили ее так схематически для простоты понимания. Это ни на что не влияет и принцип работы сохраняется.

Нам нужно узнать расстояние до красной точки. Мы знаем только расстояние между двумя камерами (производитель разместил их на определенном расстоянии друг от друга). Также нам известно фокусное расстояние камер, то есть, расстояние от центра линзы до матрицы, на которую она проецирует изображение:

Камера датчик глубины для чего. Смотреть фото Камера датчик глубины для чего. Смотреть картинку Камера датчик глубины для чего. Картинка про Камера датчик глубины для чего. Фото Камера датчик глубины для чего

На первый взгляд кажется, что сделать это невозможно и нам ничего не дает знание расстояния между камерами.

К слову, если мы используем камеры с разными фокусными расстояниями (например широкоугольную и телеобъектив), тогда нужно просто сделать кроп на снимке с более широким углом (вырезать часть кадра) и дальше уже работать, как с идентичным фокусным расстоянием:

Камера датчик глубины для чего. Смотреть фото Камера датчик глубины для чего. Смотреть картинку Камера датчик глубины для чего. Картинка про Камера датчик глубины для чего. Фото Камера датчик глубины для чего

Итак, давайте посмотрим, как свет от красной точки P упадет на наши матрицы и превратится в точки на снимках:

Камера датчик глубины для чего. Смотреть фото Камера датчик глубины для чего. Смотреть картинку Камера датчик глубины для чего. Картинка про Камера датчик глубины для чего. Фото Камера датчик глубины для чего

Обратите внимание на то, что точка на левом снимке оказалась справа от центра матрицы, а на правом снимке эта же точка оказалась левее центра. Если бы мы приняли центр за начало отсчета, тогда точка слева ушла бы по горизонтальной оси в плюс (вправо), а справа — в минус (так как центр — это 0):

Камера датчик глубины для чего. Смотреть фото Камера датчик глубины для чего. Смотреть картинку Камера датчик глубины для чего. Картинка про Камера датчик глубины для чего. Фото Камера датчик глубины для чего

И как все эти рисунки помогут нам найти расстояние Z (от камеры до точки в пространстве)?

Думаю, вы уже давно заметили, что все эти точки образовывают треугольники. В частности, здесь можно увидеть два подобных треугольника. Один проходит через наши красные точки на двух снимках и точку в пространстве (зеленый треугольник слева), а другой проходит через центры объективов и точку в пространстве (синий треугольник справа):

Камера датчик глубины для чего. Смотреть фото Камера датчик глубины для чего. Смотреть картинку Камера датчик глубины для чего. Картинка про Камера датчик глубины для чего. Фото Камера датчик глубины для чего

Эти треугольники подобны, а значит, их стороны соответственно пропорциональны и все углы соответственно равны. И вот уже из этого подобия мы можем легко определить расстояние от камеры до любой точки в пространстве, то есть, найти величину Z.

Я упущу несложные математические расчеты и просто запишу конечный результат:

Z = F * D/(d1-d2)

Здесь F — это фокусное расстояние объектива (известная заранее характеристика нашей камеры), D — расстояние между камерами (также известно), а d1 и d2 — смещение конкретной точки (пикселя) на снимках с левой и правой камер.

Другими словами, смартфон делает ровно то же, что и наш мозг — определяет глубину сцены только по смещению (несоответствию) пикселей на левой и правой фотографии (или на «картинке» в левом и правом глазу).

Получается, всё, что нам нужно — это две (любые) камеры и больше ничего. Соответственно, третья камера («сенсор глубины») совершенно бесполезна.

Но мой смартфон делает превосходные портреты даже с одной камерой!

Некоторые смартфоны действительно могут определять глубину сцены даже с одной камерой. И делается это при помощи искусственного интеллекта.

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

Смартфоны также учатся сегментировать фотографии и выделять на снимках людей. Для этого нужно обучить нейронную сеть отличать человека от других объектов.

Но даже в случае с одной камерой, нейросеть берет дополнительную информацию с двух снимков. Двух снимков?! Но откуда же берется второй снимок, если камера всего одна?

Дело в том, что очень многие современные матрицы имеют фазовый автофокус Dual Pixel. То есть, фактически каждый пиксель на матрице состоит из двух отдельных «пикселей» (фотодиодов), каждый из которых собирает информацию только с половины линзы. Скажем, левый пиксель берет информацию с правой половины линзы, а правый — с левой половины:

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

Вот два примера таких снимков, полученных с двух половин линзы (Dual-Pixel 1 и Dual-Pixel 2) одной камеры:

Как видите, смещение на примере слева более ярко выражено, так как лампочка находится гораздо ближе к камере, нежели человек на втором снимке.

Использование двух камер (то, о чем мы говорили выше) будет давать гораздо большее смещение, чем использование одной камеры с фазовым автофокусом Dual Pixel. Это можно наглядно увидеть на следующем примере (слева — одна камера, но разные части линзы, а справа — две камеры на небольшом расстоянии друг от друга):

Но некоторые смартфоны умудряются делать портретные режимы даже без двух камер или двух изображений с разных половин одной линзы. Правда, качество такого размытия заметно уступает традиционному стереозрению.

Всё, о чем я говорил выше, касается только пассивной технологии определения глубины сцены, когда смартфон просто «смотрит» на мир через камеру/камеры и никак не пытается с ним взаимодействовать.

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

Алексей, глав. редактор Deep-Review

P.S. Не забудьте подписаться в Telegram на первый научно-популярный сайт о мобильных технологиях — Deep-Review, чтобы не пропустить очень интересные материалы, которые мы сейчас готовим!

Как бы вы оценили эту статью?

Нажмите на звездочку для оценки

Внизу страницы есть комментарии.

Напишите свое мнение там, чтобы его увидели все читатели!

Если Вы хотите только поставить оценку, укажите, что именно не так?

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *