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.

poseHistory

Recuperar el historial de poses corregido y previsto

Desde R2021b

    Descripción

    [correctedPose,predictedPose] = poseHistory(slamObj) recupera el historial de poses corregidas y predichas hasta la pose actual.

    Nota

    Para utilizar esta función durante la generación de código, debe especificar la propiedad MaxNumPoseStored del objeto ekfSLAM. De lo contrario, esta función devuelve un error.

    ejemplo

    Ejemplos

    contraer todo

    Especifique el estado inicial del vehículo.

    initialState = [1; -2; 0.1];

    Especifique las posiciones iniciales de los puntos de referencia.

    landmarkPosition = [15.8495; -12.9496;
                        25.2455; -15.4705;
                        37.5880;   3.1023;
                        16.5690;   2.7466];

    Especifique la covarianza del estado inicial del vehículo.

    initialStateCovar = diag([0.1*ones(1,3) 1.1*ones(1,8)]);

    Crea un objeto ekfSLAM con estado inicial y covarianza de estado inicial.

    ekfSlamObj = ekfSLAM('State',[initialState; landmarkPosition], ...
                         'StateCovariance',initialStateCovar);

    Especifique la entrada de control y el tamaño del paso de tiempo para la función de transición de estado.

    velocity = [1 0];
    timeStep = 0.25;

    Llama a la función predict.

    predict(ekfSlamObj,velocity,timeStep);

    Especifique la medición y la covarianza de medición para la función de asociación de datos.

    measurement = [18.4500 -0.7354; 
                   27.7362 -0.6071;
                   36.9421  0.0386; 
                   16.2765  0.1959];
    measureCovar = [0.1^2 (1.0*pi/180)^2];

    Llama a la función correct.

    validationGate = 5.991;
    associations = correct(ekfSlamObj,measurement, ...
                           measureCovar,validationGate);

    Obtén el historial de poses.

    [corrPose,predPose] = poseHistory(ekfSlamObj)
    corrPose = 1×3
    
        1.1609   -1.9736    0.0981
    
    
    predPose = 1×3
    
        1.2488   -1.9750    0.1000
    
    

    Argumentos de entrada

    contraer todo

    Objeto SLAM EKF, especificado como un objeto ekfSLAM.

    Argumentos de salida

    contraer todo

    Poses corregidas, devueltas como una matriz M por 3 con filas con la forma [X Y Yaw]. X y Y especifican la posición en metros. Yaw especifica la orientación en radianes.

    Poses predichas, devueltas como una matriz M por 3 con filas con la forma [X Y Yaw]. X y Y especifican la posición en metros. Yaw especifica la orientación en radianes.

    Capacidades ampliadas

    expandir todo

    Generación de código C/C++
    Genere código C y C++ mediante MATLAB® Coder™.

    Historial de versiones

    Introducido en R2021b

    Consulte también

    Objetos

    Funciones