Облако точек и Time-of-Flight

3d-tof-camera

Понятие Time-of-Flight камера на русский язык можно перевести как «времяпролетная камера» или «камера, измеряющая время пролета». Звучит достаточно коряво, поэтому в своем дальнейшем изложении я предпочту использовать англоязычный термин. Метод Time-of-Flight часто применяется в робототехнических системах, в частности, в системах машинного зрения, поэтому я решил уделить ему свое внимание.

3D Time-of-Flight (ToF) камера освещает сцену модулированным источником света, и наблюдает отраженный свет. Затем фазовый сдвиг между излучением и отражением измеряется и переводится в расстояние. Рисунок иллюстрирует основную концепцию ToF.

Работа 3D ToF камеры

Работа 3D Time-of-Flight камеры

Как правило, источником света является твердотельный или полупроводниковый лазер, работающий в ближнем инфракрасном диапазоне (~ 850 нм), невидимый для человеческого глаза. Датчик изображения работает в том же спектральном диапазоне, что и передатчик. Он принимает отраженный свет и преобразует энергию фотонов в электрический ток. Следует отметить, что свет, попадающий на датчик, состоит из компонента заполняющего света и компонента отраженного света. Информация о расстоянии (глубине) заключена только в отраженном компоненте. Таким образом, окружающий свет уменьшает отношение сигнал-шум.

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

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

Импульсный метод прост. Источник света освещает в течение короткого периода \Delta t и выборка отраженной энергии производится параллельно в каждом пикселе используя два сдвинутых по фазе окна C_1 и C_2 с тем же \Delta t. Измеряются электрические заряды Q_1 и Q_2, накопленные в  этих выборках , а затем вычисляется расстояние, используя формулу:

    \[d = \frac{1}{2} c \Delta t \left( \frac{Q_2}{Q_1 + Q_2} \right) \]

 

Импульсный метод Time-of-Flight

Импульсный метод Time-of-Flight

 

В противоположность ему, метод непрерывной волны производит множество выборок в измерении. Для каждого образца фаза сдвигается на 90 градусов, то есть, в общей сложности, получаем еще четыре образца. Используя этот метод, можно вычислить фазовый угол \phi между излучением и отражением и расстояние D:

    \[\phi =  \arctan \left( \frac{Q_3-Q_4}{Q_1-Q_2} \right)\]

    \[d = \frac{c}{4\pi f} \phi \]

Отсюда следует, что измеренная интенсивность пиксела A и смещение B могут быть вычислены следующим образом:

    \[A = \frac{\sqrt{(Q_1-Q_2)^2+(Q_3-Q_4)^2}}{2}\]

    \[B = \frac{Q_1 + Q_2 + Q_3 + Q_4}{4}\]

Во всех уравнениях c — скорость света.

 

Метод непрерывной волны Time-of-Flight

Метод непрерывной волны Time-of-Flight

 

На первый взгляд, сложность метода непрерывной волны, по сравнению с импульсным методом, может, показаться неоправданной, но пристальный взгляд на уравнения метода непрерывной волны показывает, что члены (Q_3 - Q_4) и (Q_1 - Q_2) уменьшают эффект постоянного смещения  измерений. Кроме того, частное в уравнении фазы уменьшает эффекты постоянного роста в измерениях расстояний, например, в системах усиления и ослабления, или отраженной интенсивности. И это очень хорошо.

Амплитуда отраженной волны A и смещение B оказывают воздействие на точность измерения глубины. Дисперсия измерения глубины может быть аппроксимирована:

    \[\sigma = \frac{c}{4 \sqrt{2} \pi f} \cdot \frac{\sqrt{A+B}}{c_d A}\]

Контрастность модуляции c_d, показывает, насколько хорошо датчик ToF разделяет и собирает фотоэлектроны. Амплитуда отраженной волны A, является функцией оптической силы. Смещение B, является функцией окружающего света и остаточного смещения системы. Из последнего уравнения можно сделать вывод, что большая амплитуда, высокая частота модуляции и высокая контрастность модуляции увеличивают точность. Большое смещение же может привести к насыщению и снижению точности.

На высоких частотах, контрастность модуляции может начать ослабевать за счет физических свойств кремния. Это дает нам практический верхний предел частоты модуляции. Time-of-Flight датчики с большой частотой среза имеют более высокую точность.

Тот факт, что измерение непрерывной волной основано на фазе, которая делает полный оборот каждые 2\pi, означает, что расстояние также будет иметь ступенчатость. Расстояние, где возникает ступенчатость, называется расстояние неоднозначности d_{amb} и определяется как

    \[d_{amb} = \frac{c}{2f}\]

Так как расстояние циклически переносится, d_{amb} также является максимальным измеряемым расстоянием. Для увеличения диапазона измеряемого расстояния, можно уменьшить частоту модуляции, но за счет снижения точности, как следует из уравнения для дисперсии \sigma.

Вместо того, чтобы идти на этот компромисс, наиболее продвинутые системы ToF используют многочастотные методы для увеличения расстояния, не снижая частоту модуляции. Многочастотные методы добавляют одну или несколько частот модуляции в смесь. Каждая частота модуляции будет иметь свое расстояние неоднозначности, но истинное расположение будет тем, где различные частоты согласованы. Частота, при которой две модуляции согласованы, называется частотой биений. Эта, как правило, более низкая частота, соответствует гораздо большему расстоянию неоднозначности. Двухчастотная концепция показана ниже.

Увеличение диапазона измеряемого расстояния, используя многочастотный метод

Увеличение диапазона измеряемого расстояния, используя многочастотный метод


 

Облако точек

В Time-of-Flight сенсорах расстояние измеряется для каждого пикселя в 2D адресуемом массиве, результатом чего является карта глубины. Карта глубины представляет из себя набор 3D точек (каждая точка также называется воксель). Например, QVGA сенсор даст карту глубины 320×240 вокселей. 2D представление карты глубины является монохромным изображением, как представлено ниже на картинке с банками газировки. Чем выше интенсивность, тем ближе воксель.

Карта глубины сцены

Карта глубины сцены

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

Аватар, сформированный из облака точек

Аватар, сформированный из облака точек

Источник: Texas Instruments

 

Как вы оцениваете эту публикацию? 1 звезда2 звезды3 звезды4 звезды5 звезд (2 голосов, средняя оценка: 5.00 из 5)
Loading ... Loading ...

Вы можете пропустить чтение записи и оставить комментарий. Размещение ссылок запрещено.

Оставить комментарий