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.

factorTwoPoseSIM3

Factor que relaciona dos poses SIM(3)

Desde R2025a

    Descripción

    El objeto factorTwoPoseSIM3 contiene factores que describen la relación entre un par de poses de transformación de similitud en el espacio de estados SIM(3). Una pose de transformación de similitud en el espacio de estados SIM(3) se representa utilizando una combinación de una pose SE(3) y una escala de pose escalar. Puede utilizar este objeto para agregar uno o más factores a un objeto factorGraph.

    Creación

    Descripción

    F = factorTwoPoseSIM3(nodeID) crea un objeto factorTwoPoseSIM3, F, con los números de identificación de nodo especificados nodeID.

    ejemplo

    F = factorTwoPoseSIM3(nodeID,Name=Value) establece propiedades utilizando uno o más argumentos de nombre-valor. Por ejemplo, Measurement=[1 2 3 4 5 6 7 8] establece la propiedad Measurement del objeto factorTwoPoseSIM3 en [1 2 3 4 5 6 7 8].

    ejemplo

    Argumentos de entrada

    expandir todo

    Números de identificación de nodo, especificados como una matriz N por 4 de números enteros no negativos, donde N es el número de factores. Cada fila representa un factor que se conecta a dos poses de transformación de similitud en el espacio de estados SIM(3). Una pose de transformación de similitud en el espacio de estados SIM(3) se representa utilizando una combinación de un nodo de pose SE(3) (POSE_SE3) y un nodo de escala de pose SE(3) (POSE_SE3_SCALE).

    Cada fila tiene la forma [PoseID1 PoseScaleID1 PoseID2 PoseScaleID2], donde PoseID1 y PoseScaleID1 son el nodo de pose SE(3) y el nodo de escala de pose, respectivamente, de la primera pose SIM(3) y PoseID2 y PoseScaleID2 son el nodo de pose SE(3) y el nodo de escala de pose, respectivamente, de la segunda pose SIM(3).

    Si un factor en el argumento nodeID especifica un ID de nodo que no existe en el gráfico de factores, entonces al agregar el factor al gráfico de factores se agrega un nodo del tipo correspondiente con ese ID al gráfico de factores.

    Para obtener más información sobre los tipos de nodos esperados de todos los factores admitidos, consulte Tipos de nodos esperados de objetos de factores.

    Este argumento establece NodeID.

    Argumentos de par nombre-valor

    expandir todo

    Poses relativas SE(3) o SIM(3) medidas, especificadas como una matriz N por 7 o una matriz N por 8. N es el número de factores especificados.

    • Matriz N por 7: cada fila especifica una pose relativa SE(3) con la forma [dx dy dz dqw dqx dqy dqz].

    • Matriz N por 8: cada fila especifica una pose relativa SIM(3) con la forma [dx dy dz dqw dqx dqy dqz ds].

    dx, dy y dz son los cambios de posición en los ejes x, y y z respectivamente. dqw, dqx, dqy y dqz son los cambios en la rotación del cuaternión para los componentes w, x, y y z, respectivamente. ds es el cambio de escala.

    Cuando optimiza el gráfico de factores al que pertenece este factor, la función optimize normaliza la medición del cuaternión del factor antes de la optimización.

    Este argumento establece Measurement.

    • Matriz N por 7: la matriz Measurement se extiende agregando una octava columna que representa la escala relativa, y cada fila contiene un valor escalar predeterminado de 1. Esta matriz actualizada establece Measurement.

    • Matriz N por 8: la matriz Measurement establece Measurement.

    Tipos de datos: single | double

    Matriz de información asociada a la incertidumbre de la medición, especificada como una matriz de 7 por 7 o una matriz de 7 por 7 por N. N es el número de factores. Cuando se especifica como una matriz de 7 por 7, la misma matriz de información se aplica a todos los factores.

    Este argumento establece Information.

    Tipos de datos: single | double

    Argumentos de salida

    expandir todo

    Factores que relacionan las poses de transformación de similitud en el espacio de estados SIM(3), devueltos como un objeto factorTwoPoseSIM3.

    Propiedades

    expandir todo

    Esta propiedad es de sólo lectura después de la creación del objeto. Para establecer esta propiedad, utilice el argumento nodeID al llamar a la función factorTwoPoseSIM3.

    Números de identificación de nodo, especificados como una matriz N por 4 de números enteros no negativos, donde N es el número de factores. Cada fila representa un factor que se conecta a dos poses de transformación de similitud en el espacio de estados SIM(3). Una pose de transformación de similitud en el espacio de estados SIM(3) se representa utilizando una combinación de un nodo de pose SE(3) (POSE_SE3) y un nodo de escala de pose SE(3) (POSE_SE3_SCALE).

    Cada fila tiene la forma [PoseID1 PoseScaleID1 PoseID2 PoseScaleID2], donde PoseID1 y PoseScaleID1 son el nodo de pose SE(3) y el nodo de escala de pose, respectivamente, de la primera pose SIM(3) y PoseID2 y PoseScaleID2 son el nodo de pose SE(3) y el nodo de escala de pose, respectivamente, de la segunda pose SIM(3).

    Si un factor en la propiedad NodeID tiene un ID de nodo que no existe en el gráfico de factores, entonces al agregar el factor al gráfico de factores se agrega un nodo del tipo correspondiente con ese ID al gráfico de factores.

    Para obtener más información sobre los tipos de nodos esperados de todos los factores admitidos, consulte Tipos de nodos esperados de objetos de factores.

    Poses relativas SE(3) o SIM(3) medidas, especificadas como una matriz N por 7 o una matriz N por 8. N es el número de factores especificados.

    • Matriz N por 7: cada fila especifica una pose relativa SE(3) con la forma [dx dy dz dqw dqx dqy dqz].

    • Matriz N por 8: cada fila especifica una pose relativa SIM(3) con la forma [dx dy dz dqw dqx dqy dqz ds].

    dx, dy y dz son los cambios de posición en los ejes x, y y z respectivamente. dqw, dqx, dqy y dqz son los cambios en la rotación del cuaternión para los componentes w, x, y y z, respectivamente. ds es el cambio de escala.

    Cuando optimiza el gráfico de factores al que pertenece este factor, la función optimize normaliza la medición del cuaternión del factor antes de la optimización.

    Tipos de datos: single | double

    Matriz de información asociada a la incertidumbre de la medición, especificada como una matriz de 7 por 7 o una matriz de 7 por 7 por N. N es el número de factores. Cuando se especifica como una matriz de 7 por 7, la misma matriz de información se aplica a todos los factores.

    Tipos de datos: single | double

    Funciones del objeto

    nodeTypeObtener el tipo de nodo en el gráfico de factores

    Ejemplos

    contraer todo

    Este ejemplo muestra cómo crear un factor de transformación de similitud utilizando el objeto factorTwoPoseSIM3 y agregarlo a un gráfico de factores.

    Especifique 4 ID que representen nodos de pose y nodos de escala de pose de dos poses SIM(3) consecutivas.

    % SE(3)pose node ID of first SIM(3) pose
    poseID1 = 0;
    
    % pose scale node ID of first SIM(3) pose
    scaleID1 = 1;
    
    % SE(3)pose node ID of second SIM(3) pose
    poseID2 = 2;
    
    % pose scale node ID of second SIM(3) pose
    scaleID2 = 3;

    Para crear un factor de transformación de similitud que conecte las dos poses SIM(3), cree un objeto factorTwoPoseSIM3 especificando los 4 ID de nodo.

    factor1 = factorTwoPoseSIM3([poseID1,scaleID1,poseID2,scaleID2],Measurement=[0,0.1,0,1,0,0,0,0.2], Information=2*eye(7));

    Crea un gráfico de factores predeterminado y agrégale el objeto factorTwoPoseSIM3. Esto agregará el factor de transformación de similitud al gráfico.

    G = factorGraph;
    addFactor(G,factor1);

    Observa los tipos de nodos.

    nodeType(G,poseID1)
    ans = 
    "POSE_SE3"
    
    nodeType(G,scaleID1)
    ans = 
    "POSE_SE3_SCALE"
    

    La función generateNodeId se puede utilizar para generar identificaciones de nodos automáticamente.

    nodeIDs = generateNodeID(G,1,"factorTwoPoseSIM3")
    nodeIDs = 1×4
    
         4     5     6     7
    
    

    Cree un objeto factorTwoPoseSIM3 utilizando los ID de nodo generados.

    factor2 = factorTwoPoseSIM3(nodeIDs);

    Añade el factor al gráfico de factores.

    addFactor(G,factor2);

    factorTwoPoseSIM3 también admite la medición SE(3) del tipo [dx dy dz dqw dqx dqy dqz].

    Si la medida especificada es una medida SE(3), a la última columna, que representa la escala relativa, se le asigna un valor predeterminado de 1 para todos los factores en el objeto factorTwoPoseSIM3.

    nodeIDs = generateNodeID(G,1,"factorTwoPoseSIM3");
    factor3 = factorTwoPoseSIM3(nodeIDs, "Measurement",[0,0.1,0,1,0,0,0])
    factor3 = 
      factorTwoPoseSIM3 with properties:
    
             NodeID: [8 9 10 11]
        Measurement: [0 0.1000 0 1 0 0 0 1]
        Information: [7×7 double]
    
    
    addFactor(G,factor3);

    Más acerca de

    expandir todo

    Historial de versiones

    Introducido en R2025a