времяпролетный датчик что это
Что за TOF камера в смартфонах? Это именно объектив или датчик? Для че.
Что за TOF камера в смартфонах? Это именно объектив или датчик? Для чего нужен?
И датчик, и объектив :-). Если обратиться к терминологии, то объектив это оптическая система, являющаяся частью оптического прибора, обращённая к объекту наблюдения или съёмки.
ToF-датчик (расшифровывается как Time of Flight, он же датчик глубины или времяпролетная камера) — это специальный сенсор, который излучает свет и регистрирует скорость его отражения от объекта. Зная время отражения, на основе скорости света (она постоянна в воздухе) можно вычислить точное расстояние до объекта, как это делает лазерный дальномер.
Таким образом, ToF-сенсор фиксирует не свет (как это делают обычные камеры для фотосъемки), а расстояние. Если измерить расстояние до разных точек, можно получить трехмерную картинку наблюдаемого объекта. И все это в реальном времени.
Сейчас датчики глубины популярны в смартфонах хуавей, хонор, оппо, самсунг и так далее. А первым смартфоном с такой камерой стал iPhone X в 2017 году. Именно для этого у него такая объемная «челка» — дополнительная ToF-камера стала ключевым элементом системы распознавания лица FaceID.
Для чего нужны датчики глубины? Пока что их применение ограничено, но перспективы большие. Реальное применение на данный момент — разблокировка по лицу, создание анимированный эмодзи на основе лица владельца телефона. В теории с такими камерами можно создавать вымышленных персонажей, которые будут похожи на своих «человеческих» прототипов и иметь живую мимику.
Также это позволит кому угодно делать комбинированные видеосъемки с «левыми» объектами, которые будут вести себя и располагаться в пространстве как реальные. Это полезно и для технологий дополненной реальности. Используется уже сейчас — например, можно онлайн примерить мебель к своей квартире. Или пририсовать виртуальные стикеры к каким-то вещам. Или играть в сетевую игру с виртуальными объектами, глядя на них через камеры ваших смартфонов. Вот ролик по теме от Sony с милым саундтреком:
Также ToF-камеры позволят создавать трехмерные модели объектов (например, для 3D-печати). Человек, сооружение, прибор — неважно. А комбинация обычной камеры и ToF позволяет получать такие модели в реальных цветах.
Что такое «времяпролетная камера» (ToF) и зачем она в телефоне
TOF-камера – это как сонар для телефонов, но вместо звука он использует свет
В смартфонах последних лет в дополнение к куче обычных камер начинает появляться еще одна с непривычным названием «времяпролетная камера» (time-of-flight, ToF). Она уже есть у iPhone X, Huawei Honor View 20, Oppo RX17 Pro, Huawei P30 Pro, скоро появится у Samsung Galaxy S10 5G. Попробуем разобраться, что такое «времяпролетная камера» и какие преимущества она дает.
TOF-камера – это как сонар для телефонов, но вместо звука он использует свет. Она излучает свет и регистрирует время задержки, когда свет поступает обратно в камеру после отражения от объекта. Благодаря этому можно точно рассчитать расстояние до предмета, на который наведена камера. Чаще всего для работы используется инфракрасный свет. Разрешение такой камеры крошечное по сравнению с обычными фотосенсорами – оно составляет 0,03-0,3 мегапикселя.
Зная точное расстояние до объектов, можно построить виртуальную 3D-карту пространства перед объективом смартфона. Также ToF можно использовать как сенсор глубины пространства.
Идея времяпролетных камер не нова, и ее уже много лет используют в электронике. Одним из наиболее известных примеров является Microsoft Kinect 2 для приставки Xbox One. Именно благодаря этой технологии у iPhone X появились анимоджи – эмоджи, воспроизводящие выражения лица пользователя.
Прорывом является то, что эту технологию начали использовать в смартфонах. На мобильниках ToF-камера может выполнять две функции. Во-первых, она позволит выделить предмет съемки от фона. Это в дальнейшем облегчит обработку кадра, например, можно точнее добавить эффект боке – размытие фона.
Второй опцией ToF-камеры на смартфоне является дополненная реальность. С ней мобильник будет знать, как размещаются предметы вокруг него. Точное знание размеров объектов и расстояния до них позволяет получить качественную работу дополненной реальности.
Что такое ToF-камера в смартфоне
Между производителями смартфонов идет постоянное соперничество. Чтобы как-то выделиться среди конкурентов и переманить покупателей на свою сторону, компании наделяют мобильники все новыми и новыми фишками. Кто-то развивается в плане дизайна, предлагая то вырезы, то изогнутые дисплеи, а кто-то разрабатывает новые форм-факторы вроде слайдеров, выдвижных элементов и гибких дисплеев.
Один из распространенных рецептов по созданию уникального и интересного смартфона касается камеры. Поле для экспериментов в этой области широкое: в современных мобильниках используются несколько объективов. Производителю остается только выбрать, какую комбинацию установить.
Последним нововведением в мобильных камерах стал датчик ToF, или времяпролетная камера. Давайте разберемся, что это и какую пользу от нее может получить простой обыватель.
Что такое ToF-камера
Времяпролетная камера, как подсказывает ее название, измеряет время, затраченное на движение импульса света от датчика до объекта съемки и обратно. Полученные данные используются камерой для построения карты глубины, то есть объемной картинки.
Этот метод построения изображения существует давно. У него есть свои особенности, которые до недавних пор не позволяли использовать его в коммерческих целях в таких малогабаритных устройствах, как смартфон. Свет перемещается с невероятной скоростью – 299 792 458 метров в секунду, поэтому ToF-камера должна обладать технологией, способной улавливать мельчайшую разницу в показателях времени, и иметь компактный размер, чтобы уместиться в корпусе смартфона.
ToF-камера состоит из 4 основных компонентов:
Сенсор и линза – обязательные компоненты любой камеры. У времяпролетного датчика есть еще излучатель и процессор. Первый испускает поток света, второй отвечает за измерение времени. На работу ToF-камеры уходят доли секунды.
Как работает ToF-камера
Луч света, испускаемый датчиком, возвращается быстро, если объект съемки находится близко к объективу. Чем дальше расположен объект или его часть, тем больше времени уйдет на то, чтобы луч достиг его, отразился и вернулся. Показатель расстояния измеряется для каждого пикселя. Это дает подробное представление о том, как выглядит объект, какие особенности формы имеет и как далеко находится. В качестве импульса используется инфракрасный свет, невидимый для человеческого глаза.
Аналогичный подход использует Apple в камере TrueDepth для разблокировки по лицу: там тоже создается трехмерное изображение лица пользователя по точкам, только за основу взята лазерная технология LIDAR.
У мобильной ToF-камеры есть свои недостатки. Первый связан с тем, что яркое освещение может мешать работе датчика: отраженные лучи теряются в окружающем пространстве, а камере не хватает чувствительности, чтобы распознать их и не перепутать с посторонними бликами. Второй недостаток – относительно низкое разрешение по сравнению с основными камерами.
Для чего нужна ToF-камера в смартфоне
В смартфонах времяпролетные камеры используются для сбора информации о глубине кадра, которая в свою очередь нужна для построения трехмерных изображений, отделения фона от объекта съемки в портретном режиме и распознавания жестов.
До недавнего времени смартфоны могли создавать 3D-изображения с помощью программных алгоритмов или специально выделенной камеры, исполняющей роль датчика глубины (стереовидение). ToF-камера – это новая ступень в развитии мобильной фотографии, так как она способна работать в темноте, обладает более высокой точностью и сниженным энергопотреблением.
В каких смартфонах есть ToF-камера
Времпролетная камера – инновационный элемент в мобильной индустрии. Пока она доступна лишь во флагманском сегменте, но в будущем наверняка станет встречаться и в аппаратах среднеценового класса. Пока что обладателями ToF-датчика являются:
По слухам, времяпролетная камера будет включена в фотомодуль iPhone 2019.
Что делают 3D-сенсоры в смартфонах? РАЗБОР
Все чаще мы видим в смартфонах так называемые 3D-сенсоры, или сенсоры глубины. Большинство из них также называют ToF-сенсорами аналогично одноименной технологии. По слухам, такой сенсор будет установлен и в новом iPhone (там он называется LiDAR, подробнее мы об этом рассказывали в другом материале). Эти сенсоры довольно дорого стоят, но зачем они нужны понятно не всем. Производители уверяют, что сенсоры позволяют делать лучше фото и портреты или добавляют фишки в дополненную реальность. Но так ли это на самом деле?
Сегодня обсудим, зачем нужны 3D-сенсоры в смартфонах, как это работает, ну и конечно, проведем несколько тестов и проверим заявления производителей.
Что такое 3D сенсор (сенсор глубины)
Для начала, давайте разберемся, а что такое 3D-сенсор? Фотокамеры захватывают проекцию окружающего мира на плоскость. По одной лишь фотографии не понять реальный размер объекта — размером ли он с бутылку или с Пизанскую башню. И расстояние до него тоже не понять.
Для того, чтобы понимать реальные размеры объектов на фото, масштабы съемки, отличать, что ближе к камере, а что дальше, и нужны 3D-сенсоры. Они уже давно и активно применяются в робототехнике, автономном транспорте, играх, медицине и много где еще. Более того, наши глаза — это тоже 3D сенсор. При этом, в отличие от LiDAR’а и ToF-сенсоров в смартфонах, глаза — пассивный 3D-сенсор. То есть не излучающий никакого света, а работающий только на основе поступающего света. Только благодаря этому мы можем хоть как-то перемещаться в пространстве и взаимодействовать с окружающими объектами. Теперь 3D-сенсоры появились и в смартфонах.
Как работает ToF?
LiDAR в iPad’е, а также все 3D-сенсоры в Android-смартфонах — это time-of-flight или сокращенно ToF-сенсоры. Они определяют расстояния до объектов вокруг, напрямую измеряя сколько времени понадобится свету, чтобы долететь от камеры до объекта и вернуться обратно. Это очень похоже на эхо в пещере, оно тоже после отражения от стенок возвращается к нам с запаздыванием. Чтобы пролететь 1 метр свету нужно 3 наносекунды, для 1 см — 30 пикосекунд. Вроде бы все понятно. Но есть проблема.
Это очень маленькие промежутки времени. Как камера может такое замерить? Не будет же она делать миллиард кадров в секунду, а потом их сравнивать? Есть 2 основных подхода для решения этой проблемы: dToF (direct ToF) и iToF (indirect ToF). И чтобы вас заинтриговать еще сильнее: абсолютное большинство Android-смартфонов используют как раз iToF сенсоры, тогда как LiDAR в Apple iPad и скорее всего в грядущих iPhone — это редкий представитель семейства dToF сенсоров. Так чем же они отличаются?
iToF — indirect ToF
Начнем с iToF. В таких сенсорах излучатель отправляет высокочастотный модулированный свет, то есть этот свет постоянно включается и выключается с частотой десятки миллионов раз в секунду. За счет того, что свету нужно время для полета до объекта и обратно, фаза, то есть вот это состояние где-то между включенностью и выключенностью, света, вернувшегося в камеру, немного отличается от фазы света в момент отправки. На сенсоре исходный и отраженный обратно от объекта сигналы накладываются друг на друга, и за счет этого определяется сдвиг фаз, который и позволяет понять расстояние до каждой точки объекта.
dToF — direct ToF
dToF работает немного иначе. В таких сенсорах напрямую измеряется разница во времени между отправкой света и детектированием его отражения на сенсоре. Для этого используются так называемые SPAD: single photon avalanche diodes. Они могут детектировать крайне маленькие импульсы света, фактически даже ловить единичные фотоны. Такие SPAD расположены в каждом пикселе сенсора. А в качестве излучателя в таких сенсорах используются как правило так называемые VCSEL — Vertical Cavity, Surface Emitting Laser. Это лазерный излучатель, подобный тем, что используются в лазерных мышках и много где еще. dToF сенсор в LiDAR разработан совместно с Sony и является первым массовым коммерческим dToF сенсором.
Можно лишь гадать, почему в iPad используется dToF сенсор, но давайте отметим преимущества такого сенсора. Во-первых, в отличие от iToF сенсора излучатель испускает не сплошную стену света, а лишь светит в отдельных направлениях, что позволяет экономить батарейку. Во-вторых, dToF сенсор меньше подвержен ошибкам в измерении глубины из-за так называемой multipath interference. Это типичная проблема iToF сенсоров. Она возникает из-за переотражения света между объектами перед попаданием обратно в сенсор и искажает измерения сенсора.
Как это работает, разобрались, давайте теперь посмотрим, а зачем вообще 3D-сенсоры используются в смартфонах.
Зачем это нужно в смартфонах
1. Безопасность
Первым массовым внедрением 3D-сенсоров в смартфонах мы обязаны Apple и технологии Face ID. Распознавание лиц при использовании трёхмерных данных намного точнее и надежнее классического распознавания лиц по фото. Для Face ID Apple использует технологию структурированной подсветки, на ней мы остановимся подробнее как-нибудь в следующий раз.
Большинство производителей заявляют, что именно более качественный и точный режим дополненной реальности является главной задачей 3D-сенсоров. Более того, это также поддерживается непосредственно компанией Google. Буквально недавно они представили грядущее обновление своей библиотеки дополненной реальности ARCore, позволяющее более реалистично размещать виртуальные объекты в реальности и взаимодействовать с реальными объектами.
Для этой же задачи Apple встроили LiDAR в iPad Pro. Такое можно делать и без 3D-сенсора, но с ним все работает точнее и надежнее, плюс задача становится вычислительно сильно проще и разгружает процессор. 3D-сенсор выводит AR на другой уровень.
3. Улучшение фотографий
Ряд производителей, например, Samsung и HUAWEI заявляют, что 3D-сенсор используется в первую очередь для более качественного размытия фона и более точного автофокуса при съемке видео. Другими словами, он позволяет увеличить качество обычных фото и видео.
4. Прочее
Доступ к данным сенсоров у некоторых смартфонов открыт, поэтому появляется все больше приложений, предлагающих новые применения. Так, например, с помощью внешних приложений 3D-сенсор можно использовать для измерения объектов, трехмерного сканирования и motion tracking’а. Есть даже приложение, позволяющее сделать из своего смартфона прибор ночного видения.
Тесты
С тем как это работает в теории разобрались, давайте теперь посмотрим, как это работает на практике, и есть ли какой-то толк от этих дорогущих 3D-сенсоров в флагманах. Для тестов мы взяли Redmi Note 9S, у него есть ToF-сенсор и мы сделали несколько снимков в портретном режиме, но во втором случае просто закрыли 3D-камеру пальцем. И вот что получилось.
Всё просто — размытие действительно больше и лучше, если ToF работает.
И для частоты эксперимента мы взяли Samsung Galaxy S20 Ultra, который также получил ToF-камеру.
И найдите хотя бы одно отличие?
Что получается? Дело в том, что в зависимости от производителя ToF-камера используется по-разному и в разной степени.
Можно сказать, что часть производителей смартфонов располагает ToF-датчики в своих смартфонов не для маркетинга, чтобы добавить ещё одну камеру, а скорее на всякий случай. А дальше уже алгоритмы решают — использовать эту камеру или нет?
При этом на сегодняшний момент необходимости в LiDAR или ToF-камерах прямо нет. Так что это видимо чуть больше маркетинг.
Time of flight
Знаете, меня порой удивляет причудливая структура общественного мнения. Взять к примеру технологию 3D-визуализации. Огромный общественный резонанс вызывают в последнее время технологии очков виртуальной реальности: Oculus Rift, Google Glass. Но ведь ничего нового тут нет, первые шлемы виртуальной реальности появились ещё в конце 90-х. Да, они были сложны, они опередили своё время, но почему тогда это не вызывало такого WOW-эффекта? Или 3D-принтеры. Статьи о том, как они круты или как быстро они захватят мир появляются в информационном поле два раза в неделю последние года три. Я не спорю, это круто и мир они таки захватят. Но ведь эта технология была создана ещё в 80х и с тех пор вяло прогрессирует. 3D-телевидение? 1915 год…
Технологии все эти хороши и любопытны, но откуда столько шумихи из-за каждого чиха?
Что, если я скажу, что в последние 10 лет была изобретена, разработана и внедрена в массовое производство технология 3D съёмки, очень сильно отличающаяся от любой другой? При этом технология уже повсеместно используемая. Отлаженная и доступная простым людям в магазинах. Вы слышали про неё? (наверное только специалисты по робототехнике и сопутствующим областям науки уже догадались, что я говорю про ToF-камеры).
Что такое ToF камера? В русской Википедии (англ) вы не найдёте даже коротенького упоминания о том, что это такое. «Time of flight camera» переводится как «Времяпролётная камера». Камера определяет дальность через скорость света, измеряя время пролёта светового сигнала, испускаемого камерой, и отражённого каждой точкой получаемого изображения. Сегодняшним стандартом является матрица 320*240 пикселей (следующее поколение будет 640*480). Камера обеспечивает точность измерения глубины порядка 1 сантиметра. Да-да. Матрица из 76800 сенсоров, обеспечивающих точность измерения времени порядка 1/10,000,000,000 (10^-10) секунды. В продаже. За 150 баксов. А может вы ею даже пользуетесь.
А теперь чуть подробнее про физику, принцип работы, и где вы встречали эту прелесть.
Существуют три основных типа ToF-камер. Для каждого из типов используется своя технология измерения дальности положения точки. Самая простая и понятная — «Pulsed Modulation» она же «Direct Time-of-Flight imagers ». Даётся импульс и в каждой точке матрицы измеряется точное время его возвращения:
По сути матрица состоит из триггеров, срабатывающих по фронту волны. Такой же способ используется в оптических синхронах для вспышек. Только тут на порядки точнее. В этом-то и основная сложность этого метода. Требуется очень точное детектирование времени срабатывания, что требует специфических технических решений (каких — я не смог найти). Сейчас такие сенсоры тестирует NASA для посадочных модулей своих кораблей.
А вот картинки которые она выдаёт:
Подсветки на них хватает, чтобы триггеры срабатывали на оптический поток отражённый с расстояния порядка 1 километра. На графике приведено число сработавших в матрице пикселя в зависимости от расстояния 90% работают на расстоянии в 1км:
Второй способ — постоянная модуляция сигнала. Излучатель посылает некоторую модулированную волну. Приёмник находит максимум корреляции того, что он видит с этой волной. Это определяет время, которое сигнал потратил на то, чтобы отразиться и прийти на приёмник.
Пусть излучается сигнал:
где w — модулирующая частота. Тогда принятый сигнал будет выглядеть как:
где b-некий сдвиг, a-амплитуда. Корреляция входящего и исходящего сигнала:
Но полную корреляцию со всеми возможными сдвигами по времени произвести достаточно сложно за реальное время в каждом пикселе. Поэтому используется хитрый финт ушами. Полученный сигнал принимается в 4 соседних пикселя со сдвигом в 90⁰ по фазе и коррелируется сам с собой:
Тогда сдвиг по фазе определяется как:
Зная полученный сдвиг по фазе и скорость света получаем дальность до объекта:
Эти камеры чуть попроще, чем те, что построены по первой технологии, но всё равно сложны и дороги. Делает их вот эта компания. И стоят они порядка 4килобаксов. Зато симпатишные и футуристичные:
Третья технология — » Range gated imagers «. По сути затворная камера. Идея тут до ужаса проста и не требует ни высокоточных приёмников, ни сложной корреляции. Перед матрицей стоит затвор. Предположим, что он у нас идеальный и работает моментально. В момент времени 0 включается освещение сцены. Затвор закрывается в момент времени t. Тогда объекты, расположенные дальше, чем t/(2∙c), где с — скорость света видны не будут. Свет просто не успеет долететь до них и вернуться назад. Точка, расположенная вплотную к камере будет освещаться всё время экспозиции t и иметь яркость I. Значит любая точка экспозиции будет иметь яркость от 0 до I, и эта яркость будет репрезентацией расстояния до точки. Чем ярче — тем ближе.
Осталось сделать всего пару мелочей: ввести в модель время закрытия затвора и поведение матрицы при этом событии, неидеальность источника освещения (для точечного источника света зависимость дальности и яркости не будет линейной), разную отражающую способность материалов. Это очень большие и сложные задачи, которые авторы устройств решили.
Такие камеры самые неточные, но зато самые простые и дешёвые: всю сложность в них составляет алгоритм. Хотите пример того как выглядит такая камера? Вот он:
Да-да, во втором Kinect стоит именно такая камера. Только не стоит путать второй Kinect с первым (на хабре когда-то давно была хорошая и подробная статья где всё же перепутали). В первом Kinect используется структурированная подсветка. Это куда более старая, менее надёжная и более медленная технология:
Там используется обычная инфракрасная камера, которая смотрит на проектируемый паттерн. Его искажения определяют дальность (сравнение методов можно посмотреть вот тут).
Но Kinect далеко не единственный представитель на рынке. Например Intel выпускает камеру за 150 долларов, которая выдаёт 3д карту изображения. Она ориентирована на более ближнюю зону, но у них есть SDK для анализа жестов в кадре. Вот ещё один вариант от SoftKinetic (у них тоже есть SDK, плюс они как-то завязаны на texas instruments).
Сам я, правда до сих пор не сталкивался ни с одной из этих камер, что жалко и досадно. Но, думаю и надеюсь, что через пяток лет они войдут в обиход и моя очередь настанет. Насколько я знаю, их активно используют при ориентации роботов, внедряют в системы распознавания по лицам. Круг задач и применений очень широк.