Contenido principal

Esta página se ha traducido mediante traducción automática. Haga clic aquí para ver la última versión en inglés.

nodeIDs

Obtener ID de nodo en el gráfico de factores

Desde R2022a

Descripción

La función nodeIDs obtiene todos los ID de nodo o un subconjunto de ID de nodo de un gráfico de factores para nodos del mismo tipo de nodo, ID de grupo o se conectan a factores del mismo tipo de factor.

ids = nodeIDs(fg) obtiene todos los ID de nodos que se encuentran actualmente en el gráfico de factores.

ids = nodeIDs(fg,Name=Value) especifica opciones utilizando uno o más argumentos de nombre-valor.

ejemplo

Ejemplos

contraer todo

Este ejemplo muestra cuatro formas de consultar un gráfico de factores para ID de nodo.

Cree un gráfico de factores que contenga cuatro nodos de pose SE(3).

fg = factorGraph;
poseIDs = generateNodeID(fg,3,"factorTwoPoseSE3")
poseIDs = 3×2

     0     1
     1     2
     2     3

poseFactors = factorTwoPoseSE3(poseIDs);

Cree ID de grupo que colocarán los ID de nodo 0 y 1 en el grupo 1, y los ID de nodo 2 y 3 en el grupo 2.

group = [1 1;
         1 2;
         2 2];
addFactor(fg,poseFactors,group);

Cree y agregue un factor de referencia que conecte el nodo 3 con un nuevo nodo 4. Agregue ambos nodos al grupo 3. Tenga en cuenta que los nodos pueden existir en más de un grupo al mismo tiempo.

lmFactor = factorPoseSE3AndPointXYZ([3 4]);
addFactor(fg,lmFactor,3);

Obtener todas las identificaciones en el gráfico de factores

Utilice nodeIDs para obtener todos los ID en el gráfico de factores sin especificar argumentos adicionales aparte del gráfico de factores.

idAll = nodeIDs(fg)
idAll = 1×5

     0     1     2     3     4

Obtener ID de nodo por tipo de nodo

Utilice nodeIDs y especifique el argumento de nombre-valor NodeType como "POSE_SE3" para obtener todos los nodos de pose SE(3).

idByNode = nodeIDs(fg,NodeType="POSE_SE3")
idByNode = 1×4

     0     1     2     3

Obtener ID de nodo por tipo de factor

Utilice nodeIDs y especifique el argumento de nombre-valor FactorType como "factorPoseSE3AndPointXYZ" para obtener todos los nodos relacionados por un factor factorPoseSE3AndPointXYZ.

idByFactor = nodeIDs(fg,FactorType="factorPoseSE3AndPointXYZ")
idByFactor = 1×2

     3     4

Obtener ID de nodo por ID de grupo

Utilice nodeIDs y especifique el argumento de nombre-valor FactorType como "factorTwoPoseSE3" para obtener todos los nodos relacionados por un factor factorTwoPoseSE3.

idGroup1 = nodeIDs(fg,GroupID=1)
idGroup1 = 1×2

     0     1

idGroup2 = nodeIDs(fg,GroupID=2)
idGroup2 = 1×2

     2     3

idGroup3 = nodeIDs(fg,GroupID=3)
idGroup3 = 1×2

     3     4

Argumentos de entrada

contraer todo

Gráfico factorial, especificado como un objeto factorGraph.

Argumentos de par nombre-valor

contraer todo

Especifique pares de argumentos opcionales como Name1=Value1,...,NameN=ValueN, donde Name es el nombre del argumento y Value es el valor correspondiente. Los argumentos nombre-valor deben aparecer después de los otros argumentos, pero el orden de los pares no importa.

Ejemplo: nodeIDs(fg,GroupID=1) recupera todos los ID de nodos del gráfico factorial fg que están asociados con el grupo 1.

Tipo de nodo de los nodos deseados en el gráfico de factores, especificado como una de estas opciones:

  • "POSE_SE2" — Pose en el espacio de estados SE(2)

  • "POSE_SE3" — Pose en el espacio de estados SE(3)

  • "POSE_SE3_SCALE" — Escala de pose en el espacio de estados SE(3)

  • "TRANSFORM_SE3"— Transformación del sensor en el espacio de estados SE(3)

  • "VEL3" — Velocidad 3D

  • "POINT_XY" — Punto 2-D

  • "POINT_XYZ" — Punto 3D

  • "IMU_BIAS" — Sesgo del giroscopio y del acelerómetro de la IMU

Ejemplo: nodeIDs(fg,NodeType="POSE_SE2") recupera todos los ID de nodo de los nodos que son del tipo de nodo POSE_SE2.

Tipos de datos: char | string

Tipo de factor con el que se relacionan los nodos en el gráfico de factores, especificado como una de estas opciones:

Ejemplo: nodeIDs(fg,FactorType="factorTwoPoseSE2") recupera todos los ID de nodo de los nodos que se relacionan con factores de tipo factorTwoPoseSE2.

Tipos de datos: char | string

ID de grupo de los nodos deseados, especificado como un entero no negativo o un vector fila de elementos N de enteros no negativos. N es el número de grupos.

Si GroupID es un vector fila de elementos N de números enteros no negativos, no debe haber identificadores de grupo duplicados en el vector.

Para agregar nodos a un grupo, especifique el grupo utilizando el argumento groupID de la función addFactor.

Ejemplo: nodeIDs(fg,GroupID=4) recupera todos los ID de los nodos que están en el grupo 4.

Argumentos de salida

contraer todo

ID de nodo de todos los nodos que se ajustan a los criterios especificados dentro del objeto factorGraph especificado, devueltos como un vector fila de elementos N. N es el número de nodos devueltos. Tenga en cuenta que los ID de los nodos pueden no ser continuos dentro del vector.

Capacidades ampliadas

expandir todo

Historial de versiones

Introducido en R2022a

expandir todo

Consulte también

| |