exponenta event banner

addRelativePose

Добавить относительную позу к графу позы

Описание

addRelativePose(poseGraph,measurement) создает узел на основе входных данных measurement который подключается к последнему узлу позы в графе позы. Сведения о добавлении узлов ориентиров см. в разделе addPointLandmark функция.

addRelativePose(poseGraph,measurement,infoMat) также указывает информационную матрицу как часть ограничения кромки, которая представляет неопределенность измерения позы.

addRelativePose(poseGraph,measurement,infoMat,fromNodeID) создает новый узел позы и соединяет его с определенным узлом, указанным fromNodeID.

addRelativePose(poseGraph,measurement,infoMat,fromNodeID,toNodeID) создает кромку путем задания относительного измерения позы между существующими узлами, указанными fromNodeID и toNodeID. Этот край называется замыканием петли. Если замыкание контура уже существует, функция добавляет новое измерение. Вызов optimizePoseGraph функция объединяет несколько добавленных измерений в один край. Этот синтаксис не поддерживает добавление ребер в узел ориентира.

[nodePair,edgeID] = addRelativePose(___) возвращает вновь добавленные идентификатор края и границы, используя любой из предыдущих синтаксисов.

Входные аргументы

свернуть все

График позы, указанный как poseGraph или poseGraph3D объект.

Относительная поза между узлами, заданная как одно из следующих:

Для poseGraph (2-D), поза является [x y theta] вектор, определяющий положение xy и угол ориентации, theta.

Для poseGraph3D, поза является [x y z qw qx qy qz] вектор, определяющий по положению xyz и ориентации кватерниона, [qw qx qy qz]

Примечание

Многие другие источники для 3-D представляют графы, в том числе .g2o , укажите ориентацию кватерниона в другом порядке, например, [qx qy qz qw]. Проверьте источник данных графика позы перед добавлением узлов в poseGraph3D объект.

Информационные матрицы, задаваемые в компактной форме как 6-элементный вектор или 21-элементный вектор.

Каждая строка является верхним треугольником квадратной информационной матрицы. Информационная матрица представляет неопределенность измерения. Матрица вычисляется как обратная ковариации. Если измерение является [x y theta] вектор, ковариационная матрица является 3 на 3 парных ковариационных вычислений. Обычно неопределенность определяется моделью датчика.

Для poseGraph (2-D), каждая информационная матрица является шестиэлементным вектором. Значение по умолчанию: [1 0 0 1 0 1]. Для узлов ориентиров последние три элемента возвращаются как NaN.

Для poseGraph3Dкаждая информационная матрица является 21-элементным вектором. Значение по умолчанию: [1 0 0 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0 1 0 1].

Узел для присоединения, указанный как положительное целое число. Это целое число соответствует идентификатору узла в poseGraph. Если указано без toNodeID, addRelativePose создает новый узел и добавляет ребро между новым узлом и fromNodeID узел.

Узел для присоединения, указанный как положительное целое число. Это целое число соответствует идентификатору узла в poseGraph. addRelativePose добавляет ребро между этим узлом и fromNodeID узел.

Выходные аргументы

свернуть все

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

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

Расширенные возможности

.
Представлен в R2019b