Jump to content

Перспектива и точка

Перспектива -точка [1] — это задача оценки позы калиброванной камеры по набору из n трехмерных точек мира и соответствующих им двумерных проекций на изображении. Поза камеры состоит из 6 степеней свободы (ГРИП), которые состоят из вращения (крен, наклон и рыскание) и трехмерного перемещения камеры относительно окружающего мира. Эта проблема возникает из-за калибровки камеры и имеет множество применений в компьютерном зрении и других областях, включая оценку 3D-позы , робототехнику и дополненную реальность. [2] Обычно используемое решение проблемы существует для n = 3, называемое P3P, и доступно множество решений для общего случая n ≥ 3 . Решение для n = 2 существует, если в двух точках доступны ориентации объектов. [3] Реализации этих решений также доступны в программном обеспечении с открытым исходным кодом.

Спецификация проблемы

[ редактировать ]

Определение

[ редактировать ]

Учитывая набор из n трехмерных точек в мировой системе отсчета и соответствующие им проекции двумерных изображений, а также калиброванные внутренние параметры камеры, определите положение камеры с 6 степенями свободы в форме ее вращения и перемещения относительно мира. Это соответствует модели перспективной проекции для камер:

.

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

.

Предположения и характеристики данных

[ редактировать ]

Есть несколько предварительных аспектов проблемы, которые являются общими для всех решений PnP . В большинстве решений делается предположение, что камера уже откалибрована. Таким образом, его внутренние свойства уже известны, такие как фокусное расстояние, главная точка изображения, параметр перекоса и другие параметры. Некоторые методы, такие как UP n P. [4] или прямое линейное преобразование (DLT), примененное к модели проекции, являются исключениями из этого предположения, поскольку они оценивают эти внутренние параметры, а также внешние параметры, которые составляют позу камеры, которую P n пытается найти исходная задача P. .

Для каждого решения PnP выбранные точечные соответствия не могут быть коллинеарными. Кроме того, PnP может иметь несколько решений, и выбор конкретного решения потребует последующей обработки набора решений. RANSAC также часто используется с методом PnP , чтобы сделать решение устойчивым к выбросам в наборе соответствий точек. Методы P3P предполагают, что данные свободны от шума, большинство методов PnP предполагают гауссов шум во внутреннем наборе.

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

Когда n = 3 , проблема PnP находится в минимальной форме P3P и может быть решена с помощью трехточечных соответствий. Однако, имея всего лишь три соответствия, P3P дает до четырех реальных, геометрически осуществимых решений. Для низких уровней шума можно использовать четвертое соответствие для устранения неоднозначности. Постановка задачи следующая.

Пусть P — центр проекции камеры, A , B и C — точки трехмерного мира с соответствующими точками изображений u , v и w . Пусть X = |PA| , Y = |PB| , Z = |ПК| , , , , , , , , , . Это образует треугольники PBC , PAC и PAB , из которых мы получаем достаточную систему уравнений для P3P:

.


приводит к получению до четырех геометрически возможных реальных решений для R и T. Решение системы P3P Самое старое опубликованное решение датируется 1841 годом. [5] Недавний алгоритм решения проблемы, а также классификация решений для нее приведены в «Транзакции IEEE по анализу шаблонов и машинному интеллекту» 2003 года. статье Гао и др. [6] Реализацию решателя P3P Гао с открытым исходным кодом можно найти в OpenCV модуле Calib3d в функцииsolvePnP . [7] С тех пор было опубликовано несколько более быстрых и точных версий, включая Lambda Twist P3P. [8] который достиг высочайшего уровня производительности в 2018 году с 50-кратным увеличением скорости и 400-кратным уменьшением числа сбоев. Lambdatwist доступен с открытым исходным кодом в OpenMVG и по адресу https://github.com/midjji/pnp .

Эффективный PnP ( EPnP ) — это метод, разработанный Лепетитом и др. в своей статье в Международном журнале компьютерного зрения 2008 г. [9] это решает общую проблему P n P для n ≥ 4 . Этот метод основан на том, что каждая из n точек (которые называются контрольными точками) может быть выражена как взвешенная сумма четырех виртуальных контрольных точек. Таким образом, координаты этих контрольных точек становятся неизвестными задачи. Именно из этих контрольных точек определяется финальная поза камеры.

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

Отсюда вывод опорных точек изображения становится

.

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

.

Используя эти два уравнения для каждой из n опорных точек, система может образоваться там, где . Решение для контрольных точек существует в нулевом пространстве M как и выражается

где количество нулевых сингулярных значений в и каждый — соответствующий правый сингулярный вектор . может принимать значения от 0 до 4. После расчета начальных коэффициентов Гаусса -Ньютона для их уточнения используется алгоритм . Матрицы R и T , минимизирующие ошибку перепроецирования мировых опорных точек, и соответствующие им фактические точки изображения , затем рассчитываются.

Это решение имеет сложности и работает в общем случае P n P как для плоских, так и для неплоских контрольных точек. Программные реализации этого метода с открытым исходным кодом можно найти в модуле калибровки камеры и 3D-реконструкции OpenCV в функцииsolvePnP . [7] а также из кода, опубликованного Лепетитом и др. на их веб-сайте CVLAB в EPFL . [10]

Этот метод не устойчив к выбросам и обычно плохо сравнивается с RANSAC P3P с последующим нелинейным уточнением. [ нужна ссылка ] .

SQPnP был описан Терзакисом и Луракисом в статье ECCV 2020. [11] Это неминимальный, неполиномиальный решатель, который преобразует P n P в нелинейную квадратичную программу. SQPnP идентифицирует области в пространстве параметров трехмерных вращений (т. е. 8-сферу ), которые содержат уникальные минимумы, с гарантиями, что хотя бы один из них является глобальным. Каждый региональный минимум вычисляется с помощью последовательного квадратичного программирования , которое начинается с ближайших ортогональных матриц аппроксимации .

SQPnP имеет аналогичную или даже более высокую точность по сравнению с современными полиномиальными решателями, является глобально оптимальным и очень эффективным в вычислительном отношении, будучи практически линейным по количеству предоставленных точек n . Реализация C++ доступна на GitHub , она также была портирована на OpenCV и включена в модуль калибровки и 3D-реконструкции камеры ( функция SolvePnP ). [12]

Использование РАНСАК

[ редактировать ]

P n P подвержен ошибкам, если в наборе соответствий точек есть выбросы. Таким образом, RANSAC можно использовать в сочетании с существующими решениями, чтобы сделать окончательное решение для камеры более устойчивым к выбросам. Реализацию методов PnP с открытым исходным кодом с RANSAC можно найти в модуле калибровки камеры и 3D-реконструкции OpenCV в функцииsolvePnPRansac . [12]

См. также

[ редактировать ]
  1. ^ Фишлер, Массачусетс; Боллес, Р.К. (1981). «Консенсус случайной выборки: парадигма подбора модели с применением к анализу изображений и автоматизированной картографии» . Коммуникации АКМ . 24 (6): 381–395. дои : 10.1145/358669.358692 . S2CID   972888 .
  2. ^ Apple, команда АРКИТ (2018). «Понимание отслеживания и обнаружения ARKit» . WWDC .
  3. ^ Фаббри, Рикардо; Гиблин, Питер; Кимия, Бенджамин (2012). «Оценка положения камеры с использованием дифференциальной геометрии кривой первого порядка». Компьютерное зрение – ECCV 2012 (PDF) . Конспекты лекций по информатике. Том. 7575. стр. 231–244. дои : 10.1007/978-3-642-33765-9_17 . ISBN  978-3-642-33764-2 . S2CID   15402824 .
  4. ^ Пенат-Санчес, А.; Андраде-Четто, Дж.; Морено-Ногер, Ф. (2013). «Исчерпывающая линеаризация для надежной оценки положения камеры и фокусного расстояния». Транзакции IEEE по анализу шаблонов и машинному интеллекту . 35 (10): 2387–2400. дои : 10.1109/TPAMI.2013.36 . hdl : 2117/22931 . ПМИД   23969384 . S2CID   9614348 .
  5. ^ Цюань, Лонг; Лан, Чжун-Дан (1999). «Определение позы камеры по линейным N-точкам» (PDF) . Транзакции IEEE по анализу шаблонов и машинному интеллекту .
  6. ^ Гао, Сяо-Шань; Хоу, Сяо-Ронг; Тан, Цзяньлян; Ченг, Ханг-Фей (2003). «Полная классификация решений трехточечной задачи с перспективой». Транзакции IEEE по анализу шаблонов и машинному интеллекту . 25 (8): 930–943. дои : 10.1109/tpami.2003.1217599 . S2CID   15869446 .
  7. ^ Jump up to: а б «Калибровка камеры и 3D-реконструкция» . OpenCV .
  8. ^ Перссон, Микаэль; Нордберг, Клас (2018). «Lambda Twist: точный, быстрый и надежный решатель трехточечных перспектив (P3P)» (PDF) . Европейская конференция по компьютерному зрению (ECCV) .
  9. ^ Лепетит, В.; Морено-Ногер, М.; Фуа, П. (2009). «EPnP: точное O (n) решение проблемы PnP». Международный журнал компьютерного зрения . 81 (2): 155–166. дои : 10.1007/s11263-008-0152-6 . hdl : 2117/10327 . S2CID   207252029 .
  10. ^ «EPnP: эффективная оценка позы камеры по точкам и перспективе» . EPFL-CVLAB .
  11. ^ Терзакис, Джордж; Луракис, Манолис (2020). «Неизменно быстрое и глобально оптимальное решение проблемы перспективы и точек». Компьютерное зрение – ECCV 2020 . Конспекты лекций по информатике. Том. 12346. стр. 478–494. дои : 10.1007/978-3-030-58452-8_28 . ISBN  978-3-030-58451-1 . S2CID   226239551 .
  12. ^ Jump up to: а б «Калибровка камеры и 3D-реконструкция» . OpenCV .
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: da59f7e0be6366a8b7f182d1d6cad7df__1715752140
URL1:https://arc.ask3.ru/arc/aa/da/df/da59f7e0be6366a8b7f182d1d6cad7df.html
Заголовок, (Title) документа по адресу, URL1:
Perspective-n-Point - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)