Contents — find the section you need

Change parameters and verify

Open the panel, then press Run to load Python. You can stop execution and reset parameters. Results are computed on this device. No Python installation is required.

Local execution steps below are optional for reproducing the source results; they are not required for the browser experiment.

The experiment controls are in English.

Open experiment panel in a new tab

Download reproduction source

Um mapa SLAM visualmente limpo não revela erros de pose ou latência. Defina a referência, as liberdades de alinhamento e o tratamento de falhas antes de comparar os sistemas. Os números aqui apresentados provêm de trajetórias sintéticas, não de um benchmark de um algoritmo SLAM específico.

O que ATE e RPE medem

Seja Q_i a pose de referência, P_i a estimativa e S um alinhamento fixo. O erro absoluto pode ser escrito como E_i=Q_i^{-1}SP_i. A raiz quadrada média da sua norma de translação é uma medida comum de ATE; a evo chama a métrica de pose absoluta mais abrangente de APE.

O erro relativo compara o movimento no intervalo i\rightarrow j : F_{ij}=(Q_i^{-1}Q_j)^{-1}(P_i^{-1}P_j). Os resultados dependem se o intervalo é de um segundo, um metro ou um frame. Consulte a documentação oficial de métricas da evo (https://github.com/MichaelGrupp/evo/wiki/Metrics). ## Verifique a distinção com um pequeno cálculo

Salve slam_metric_lab.py em um diretório vazio e execute python3 slam_metric_lab.py . Foi verificado com Python 3.12.3 e utiliza apenas a biblioteca padrão. A referência é x=t metros, amostrados em 101 pontos de 0 a 10 segundos em intervalos de 0,1 segundo, com rotações de identidade.

Erro sintético RMSE de translação desalinhada APE RMSE de translação de um segundo, todos os pares
Deslocamento constante de +0,1 m 0,100000 m 0,000000 m
Deriva aumentando em 0,01 m a cada segundo 0,057879 m 0,010000 m

Uma translação constante aparece nas diferenças de posição, mas se cancela nas diferenças de movimento. A deriva permanece em ambas. Este exemplo não aplica alinhamento nem interpolação de tempo. Baixe a referência e a estimativa de deriva.

Ajustar dados reais antes da avaliação

Diagram 1 · Use the button to switch views
Ajustar tempos e quadros, corrigir alinhamento, calcular APE e RPE e, em seguida, relatar falhas e latência

Use metros e segundos e não misture sistemas de referência do sensor e do corpo. Distinga diferentes horários de início de gravação de erros de relógio. O formato TUM é timestamp x y z q_x q_y q_z q_w ; verifique a ordem dos quatérnios em relação à documentação oficial do formato.

O alinhamento SE(3) corrige rotação e translação; Sim(3) também corrige a escala. A correção de escala pode ser apropriada para comparar o formato da trajetória monocular, mas remove o erro de escala se esse for o objetivo do experimento. Não misture essas configurações de avaliação em uma classificação.

Registre o ambiente evo

Em um ambiente evo dedicado, salve evo_ape --version e evo_rpe tum --help. Esses comandos seguem a estrutura oficial da CLI; eles são um procedimento, não resultados executados em trajetórias reais para este artigo.

evo_ape tum reference.tum estimate.tum --align --save_results ape.zip
evo_rpe tum reference.tum estimate.tum --delta 1 --delta_unit s --all_pairs --save_results rpe.zip

Substitua os nomes dos arquivos pelas trajetórias da mesma execução. Ajuste a tolerância de associação de carimbo de data/hora usando a ajuda da versão instalada e relate as contagens de amostras correspondentes. A tabela sintética acima está desalinhada, portanto, adicionar --align altera sua interpretação e resultados.

Relate mais do que a precisão

Quantidade Contexto necessário
APE / RPE Alinhamento, intervalo, metros ou graus, poses correspondentes
Falhas Total de execuções, perdas de rastreamento e segundos de recuperação
Latência Aquisição para estimativa disponível p50/p95 e sincronização de relógio
Recursos CPU/GPU, threads, memória, taxa de entrada e versões de software

O tempo de processamento por quadro difere da latência, incluindo o enfileiramento. Sem dados de referência, não relate o ATE. Você pode medir a repetibilidade ou a consistência, ressaltando que esses parâmetros não estabelecem diretamente a precisão posicional.

Manter intervalos difíceis

Remover apenas as seções difíceis resulta em uma pontuação de precisão para rastreamento bem-sucedido. Relate a taxa de sucesso geral separadamente do erro em intervalos avaliáveis. Primeiro, verifique o tempo e os quadros do sensor para evitar misturar falhas de integração em uma comparação de algoritmos.

Related reading

Check timing and frames before evaluationPor que a fusão de sensores falha — sincronização, quadros e calibração extrínsecaExplore another aspect of this fieldPor que o ICP falha: inicialização, valores discrepantes e geometria simétrica.Explore another aspect of this fieldDo mapeamento à navegação no ROS 2 — um procedimento mínimo com Jazzy e Nav2