Оценка положения

Материал из Викиконспекты
Перейти к: навигация, поиск
Эта статья находится в разработке!
Определение:
Оценка положения (англ. Pose Estimation) — задача определения положения и ориентации объекта или группы объектов в пространстве.


Области применения[править]

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

  1. Транспортные средства с встроенными системами помощи водителю (автопилот, круиз контроль и др.). Эти системы помогают водителю с парковкой, контролируют скорость и направление движения, а также предупреждают об объектах, находящихся на дороге, о типе дорожного покрытия и возможных авариях.
  2. Дополненная реальность: устройства, в которых в реальное изображение, получаемое с помощью видеокамер, встраивается некоторая информация, полезная человеку.
  3. Виртуальная реальность: оценка положения, как технология, является критически важной для достижения эффекта погружения в виртуальную реальность. В сочетании с отслеживанием ориентации становится возможным измерять и передавать в виртуальную реальность все 6 степеней свободы (6-DoF) реального мира.
  4. Робототехника: роботы (медицинские, научные, промышленные и др.), которые основывают свое движение на построении карты окружения и препятствий.
  5. Веб-технологии: исследование пользовательского опыта и удобства использования продукта. Можно отслеживать взгляд пользователя, чтобы понимать какие блоки сайта привлекают наибольшее внимание.

Методы решения задачи оценки положения[править]

Акустические методы[править]

Акустические приборы слежения используют ультразвуковые (высокочастотные) звуковые волны для измерения положения и ориентации целевого объекта в пространстве. Для определения положения объекта либо измеряется время пролёта (time-of-arrival) звуковой волны от передатчика к приёмникам, либо разность фаз синусоидальной звуковой волны при приёмо-передаче. Алгоритмы отслеживания положения при использовании акустических приборов основаны на трилатерации и расчете угла прибытия. При использовании данных методов разработчики сталкиваются с некоторыми проблемами: акустические трекеры, как правило, имеют низкую скорость обновления, связанную с низкой скоростью звука в воздухе, которая зависит от внешних факторов среды, таких как температура, давление и влажность.

Радиочастотные методы[править]

Методов, основанных на радиочастотах, достаточно много.

  1. Позиционированиe с использованием пассивных радиочастотных идентификаторов RFID
    Основное назначение систем с пассивными RFID метками — идентификация. Они применяются в системах, традиционно использовавших штрих-коды или магнитные карточки: в системах распознавания товаров и грузов, опознания людей, в системах контроля и управления доступом (СКУД) и т.п. Система включает RFID метки с уникальными кодами и считыватели и работает следующим образом. Считыватель непрерывно генерирует радиоизлучение заданной частоты. ЧИП метки, попадая в зону действия считывателя, использует это излучение в качестве источника электропитания и передает на считыватель идентификационный код. Радиус действия считывателя составляет около метра.
  2. Позиционирование с использованием активных RFID
    Активные радиочастотные метки используются при необходимости отслеживания предметов на относительно больших расстояниях (например, на территории сортировочной площадки). Рабочие частоты активных RFID меток — 455МГц, 2.4ГГц или 5.8ГГц, а радиус действия — до ста метров. Питаются активные метки от встроенного аккумулятора. Существуют активные метки двух типов: транспондеры и радиомаяки. Транспондеры включаются, получая сигнал считывателя. Они применяются в АС оплаты проезда, на КПП, въездных порталах и других подобных системах. Радиомаяки используются в системах позиционирования реального времени. Радиомаяк отправляет пакеты с уникальным идентификационным кодом по команде либо с заданной периодичностью. Пакеты принимаются как минимум тремя приемниками, расположенными по периметру контролируемой зоны. Расстояние от маячка до приемников с фиксированными координатами определяются по углу направления на маячок Angle of arrival (AoA), по времени прихода сигнала Time of arrival (ToA) или по времени распространения сигнала от маячка до приемника Time of flight (ToF). Инфраструктура системы строится на базе проводной сети и в двух последних случаях требует синхронизации.
  3. Ultra Wideband (UWB) позиционирование
    Технология UWB (сверхширокополосная) использует короткие импульсы с максимальной полосой пропускания при минимальной центральной частоте. У большинства производителей центральная частота составляет несколько гигагерц, а относительная ширина полосы — 25-100%. Технология используется в связи, радиолокации, измерении расстояний и позиционировании. Это обеспечивается передачей коротких импульсов, широкополосных по своей природе. Идеальный импульс (волна конечной амплитуды и бесконечно малой длительности), как показывает анализ Фурье, обеспечивает бесконечную полосу пропускания. UWB сигнал не походит на модулированные синусоидальные волны, а напоминает серию импульсов. Производители предлагают разные варианты UWB технологии. Различаются формы импульсов. В некоторых случаях используются относительно мощные одиночные импульсы, в других — сотни миллионов маломощных импульсов в секунду. Применяется как когерентная (последовательная) обработка сигнала, так и не когерентная. Все это приводит к значительному различию характеристик UWB систем разных производителей.

Магнитные методы[править]

Магнитные методы основаны на измерении интенсивности магнитного поля в различных направлениях. Как правило, в таких системах есть базовая станция, которая генерирует переменный или постоянный ток. Так как сила магнитного поля уменьшается с увеличением расстояния между точкой измерения и базовой станцией, можно определить местоположение контроллера, зная силу магнитного поля. Если точка измерения вращается, то распределение магнитного поля изменяется по различным осям, что позволяет определить ориентацию. Наиболее известными продуктами на основе магнитного трекинга являются VR контроллер Razer Hydra и система STEM от компании Sixense. Точность данного метода может быть достаточна высока в контролируемых условиях (в спецификациях Hydra говорится о 1 мм позиционной точности и 1 градусе точности ориентации), однако магнитное отслеживание подвержено помехам от токопроводящих материалов вблизи излучателя или датчика, от магнитных полей, создаваемых другими электронными устройствами и ферромагнитных материалов в пространстве отслеживания.

Оптические методы[править]

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

  • Безмаркерный трекинг: как правило строится на сложных алгоритмах с использованием двух и более камер, либо стерео-камер с сенсорами глубины. Используется наибольшим образом в автомобилях с автопилотом и иными системами помощи водителю.
  • Трекинг с использованием маркеров: предполагает заранее заданную модель объекта, которую можно отслеживать даже с одной камерой. Маркерами обычно служат источники инфракрасного излучения (как активные, так и пассивные), а также видимые маркеры наподобие QR-кодов. Такой вид трекинга возможен только в пределах прямой видимости маркера.

Задача Perspective-n-Point (PnP)[править]

При оптическом отслеживании для определения положения объекта в пространстве решается так называемая задача PnP (Perspective-n-Point), когда по перспективной проекции объекта на плоскость сенсора камеры необходимо определить положение объекта в 3D-пространстве.

Для заданной 3D-модели объекта и 2D-проекции объекта на плоскость камеры решается система уравнений. В результате чего получается множество возможных решений. Количество решений зависит от числа точек в 3D-модели объекта. Однозначное решение для определения 6-DoF положения объекта можно получить как минимум при 4 точках. Для треугольника получается от 2 до 4 возможных решений, то есть положение не может быть определено однозначно.

  • Рис. 1 Задача (PnP)
  • Рис. 2 Решение "треугольников"

Решение предлагается достаточно большим количеством алгоритмов, реализованных в виде библиотек:

  1. POS (Pose from Orthography and Scaling), аппроксимирующий перспективную проекцию с помощью масштабированной ортогональной проекции и находящий матрицу поворота и вектор сдвига объекта путём решения линейной системы уравнений.
  2. POSIT (POS with ITerations), который использует в цикле аппроксимацию нахождения положения POS для нахождения более хорошей масштабированной ортогональной проекции особых точек, а затем применяет POS к этим точкам, а не к исходным. POSIT сходится к точному решению за несколько итераций.
  3. OpenCV — библиотека компьютерного зрения широкого назначения с открытым исходным кодом. Основные части библиотеки — интерпретация изображений и алгоритмы машинного обучения. Список возможностей, предоставляемых OpenCV, весьма обширен: интерпретация изображений, калибровка камеры по эталону, устранение оптических искажений, анализ перемещения объекта, определение формы объекта и слежение за объектом, сегментация объекта и др. Нам же интереcен метод solvePnP.

SLAM[1] — Simultaneous Localization and Mapping[править]

Метод одновременной локализации и построения карты (SLAM) — наиболее популярный способ позиционирования, который применяется для отслеживания положения в пространстве.
Рис. 3 Метод SLAM

Алгоритм состоит из двух частей: первая — составление карты неизвестного окружающего пространства на основе измерений (данные с одометра или стерео-камеры), вторая — определение своего местоположения (локализация) в пространстве на основе сравнения текущих измерений с имеющейся картой пространства. Данный цикл непрерывно перевычисляется, при этом результаты одного процесса участвуют в вычислениях другого процесса. Наиболее популярные методы решения задачи включают в себя фильтр частиц и расширенный фильтр Калмана. SLAM удобен для мобильных решений виртуальной и дополненной реальности. Недостатком данного подхода является большая вычислительная сложность.

Инерциальный трекинг[править]

Современные инерциальные измерительные системы (IMU) на основе MEMS-технологии позволяют отслеживать ориентацию (roll, pitch, yaw) в пространстве с большой точностью и минимальными задержками.
Рис. 4 MEMS

Благодаря алгоритмам «sensor fusion» на основе комплементарного фильтра или фильтра Калмана данные с гироскопа и акселерометра успешно корректируют друг друга и обеспечивают точность как для кратковременных измерений, так и для длительного периода. Однако определение координат (перемещения) за счёт двойного интегрирования линейного ускорения (dead reckoning), вычисленного из сырых данных с акселерометра, не удовлетворяет требованиям по точности на длительных периодах времени. Акселерометр сам по себе даёт сильно зашумленные данные, и при интегрировании ошибка увеличивается со временем квадратично. Решить данную проблему помогает комбинирование инерциального подхода к трекингу с другими методами, которые периодически корректируют так называемый дрифт акселерометра.

Гибридные методы[править]

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

Оценка положения человека[править]

Рис. 5 Изобразительные структуры в классическом подходе решения задачи оценки положения человека.

Оценка положения человека (англ. Human Pose Estimation) — одна из важных задач последних нескольких десятилетий в области компьютерного зрения, которая является необходимым шагом к распознаванию людей на изображениях и видео. Задачу разбивают на 2 категории:

  • Оценка положения в плоскости (англ. 2D Human Pose Estimation) — определение расположения отдельных частей тела и суставов человека (англ. keypoints/body joints) на изображении.
  • Оценка положения в пространстве (англ. 3D Human Pose Estimation) — предсказание пространственного расположения тела человека.

Оценку положения человека использует множество областей. В частности, распознавание жестов, упрощение анимации персонажей, в разработке игр, и другое.

Существуют различные подходы к решению данной задачи. Классический подход — использование изобразительных структур (англ. pictoral structures). Основная идея заключается в том, чтобы представить объект в виде набора "частей", соединенных пружинами (Рис. 5). Каждая "часть" является деталью внешности(нога, рука, глаз и др.), соответствующим изображению. Когда части параметризованы расположением пикселей и ориентацией, полученная структура может моделировать "каркас" в положении человека. Однако этот подход ограничен количеством таких заранее построенных блочных структур, ведь они не зависят от входного изображения. Проводившиеся исследования были сосредоточены на обогащении репрезентативной силы этого метода, однако существуют более удачные подходы. Альтернативный подход — использование сверточных нейронных сетей (англ. Convolutional Neural Network, CNN) и глубокого обучения (англ. Deep learning). Большинство последних систем оценки положения человека используют именно этот подход, в значительной степени заменяя созданные вручную функции и графические модели. Использование машинного обучения значительно улучшило результаты.

См. также[править]

Примечания[править]

Источники информации[править]

Эта статья находится в разработке!