Многоцелевая калибровка с использованием ARToolKit

ARToolKitPlus::TrackerMultiMarker getModelViewMatrix()

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

введите описание изображения здесь

Прежде всего, я хочу знать, как ARToolKit работает. getModelViewMatrix() дает преобразование Kinect относительно некоторой точки на доске. А где именно?
Когда два Kinect размещены на одной стороне шаблона, то все работает нормально. Я получил преобразование по отношению к общая точка где-то.

Но для камер, обращенных друг к другу, я получаю облако точек с отклонением в основном вдоль линии, соединяющей их (ось z).

  • Это из-за ширины доски (почти 4 мм)?
  • Как это дает даже такой результат? Разве эта «общая» точка на плате не будет отличаться для обеих камер? Одно предположение состоит в том, что он вычисляет плоскость, на которой лежит характерная точка.
  • Действительно ли имеет значение, если у нас разные модели с обеих сторон?
  • Устранит ли проблему одну и ту же картину с обеих сторон? Будет ли иметь значение, если эти шаблоны не будут правильно выровнены (некоторое смещение вдоль оси Y)?

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

1

Решение

Задача ещё не решена.

Другие решения