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

Görsel olarak temiz bir SLAM haritası, poz hatasını veya gecikmeyi ortaya çıkarmaz. Sistemleri karşılaştırmadan önce referansı, hizalama serbestliklerini ve arızaların nasıl ele alınacağını tanımlayın. Buradaki sayılar, belirli bir SLAM algoritmasının kıyaslamasından değil, sentetik yörüngelerden gelmektedir.

ATE ve RPE neyi ölçer?

Q_i referans poz, P_i tahmin ve S sabit hizalama olsun. Mutlak hata E_i=Q_i^{-1}SP_i olarak yazılabilir. Çeviri normunun karekök ortalaması, yaygın bir ATE ölçüsüdür; evo, daha geniş mutlak poz metriğine APE der.

Bağıl hata, i\rightarrow j : F_{ij}=(Q_i^{-1}Q_j)^{-1}(P_i^{-1}P_j) aralığındaki hareketi karşılaştırır. Sonuçlar, aralığın bir saniye, bir metre veya bir kare olmasına bağlıdır. Resmi evo Metrikleri dokümantasyonuna bakın.

Küçük bir hesaplama ile farkı kontrol edin

slam_metric_lab.py dosyasını boş bir dizine kaydedin ve python3 slam_metric_lab.py dosyasını çalıştırın. Python 3.12.3 ile kontrol edildi ve yalnızca standart kütüphaneyi kullanıyor. Referans, 0,1 saniyelik aralıklarla 0 ila 10 saniye arasında 101 noktada örneklenen ve özdeşlik dönüşleri içeren x=t metredir.

Sentetik hata Hizalanmamış öteleme APE RMSE Bir saniyelik, tüm çiftler öteleme RPE RMSE
Sabit +0,1 m ofset 0,100000 m 0,000000 m

Her saniye 0,01 m artan sürüklenme | 0,057879 m | 0,010000 m |

Konum farklılıklarında sabit bir öteleme görünür, ancak hareket farklılıklarından dolayı ortadan kalkar. Her ikisinde de kayma devam eder. Bu örnekte ne hizalama ne de zaman enterpolasyonu uygulanmaz. Referans ve kayma tahmini dosyalarını indirin.

Değerlendirmeden önce gerçek verilerle eşleştirin

Diagram 1 · Use the button to switch views
Zamanları ve kareleri eşleştirin, hizalamayı düzeltin, APE ve RPE'yi hesaplayın, ardından hataları ve gecikmeyi bildirin

Metre ve saniye kullanın ve sensör ve vücut referans çerçevelerini karıştırmayın. Farklı kayıt başlangıç zamanlarını saat hatalarından ayırt edin. TUM formatı timestamp x y z q_x q_y q_z q_w'tür; resmi format dokümantasyonuna göre kuaternion sırasını doğrulayın.

SE(3) hizalaması dönüşü ve ötelemeyi düzeltir; Sim(3) ayrıca ölçeği de düzeltir. Tek gözlü yörünge şeklini karşılaştırmak için ölçek düzeltmesi uygun olabilir, ancak deneyin ölçmeyi amaçladığı şey buysa ölçek hatasını ortadan kaldırır. Bu değerlendirme ayarlarını bir sıralamada sessizce karıştırmayın.

Evo ortamını kaydedin

Özel bir evo ortamında, evo_ape --version ve evo_rpe tum --help komutlarını kaydedin. Bu komutlar resmi CLI yapısını izler; bunlar bir prosedürdür, bu makale için gerçek yörüngeler üzerinde yürütülen sonuçlar değildir.

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

Dosya adlarını aynı çalıştırmadan gelen yörüngelerle değiştirin. Yüklü sürümün yardımını kullanarak zaman damgası ilişkilendirme toleransını düzeltin ve eşleşen örnek sayımlarını bildirin. Yukarıdaki sentetik tablo hizalanmamıştır, bu nedenle --align eklemek yorumunu ve sonuçlarını değiştirir.

Doğruluktan daha fazlasını bildirin

Miktar Gerekli bağlam
APE / RPE Hizalama, aralık, metre veya derece, eşleşen pozisyonlar
Hatalar Toplam çalıştırmalar, izleme kayıpları ve kurtarma saniyeleri
Gecikme Edinme-mevcut tahmin p50/p95 ve saat senkronizasyonu
Kaynaklar CPU/GPU, iş parçacıkları, bellek, giriş hızı ve yazılım sürümleri

Kare başına işlem süresi, kuyruklama dahil gecikmeden farklıdır. Gerçek değer olmadan, ATE'yi raporlamayın. Bunun yerine tekrarlanabilirliği veya tutarlılığı ölçebilirsiniz, ancak bunların doğrudan konum doğruluğunu belirlemediğini belirtin.

Zor aralıkları koruyun

Yalnızca zor bölümleri kaldırmak, başarılı izleme için bir doğruluk puanı bırakır. Genel başarı oranını, değerlendirilebilir aralıklardaki hatadan ayrı olarak raporlayın. Entegrasyon hatalarını bir algoritma karşılaştırmasına karıştırmamak için önce sensör zamanlamasını ve kareleri kontrol edin.

Related reading

Check timing and frames before evaluationSensör füzyonunun başarısız olmasının nedenleri — zamanlama, kareler ve dışsal kalibrasyonExplore another aspect of this fieldICP'nin başarısız olmasının nedenleri: başlatma, aykırı değerler ve simetrik geometriExplore another aspect of this fieldROS 2'de haritalamadan navigasyona — minimal bir Jazzy ve Nav2 prosedürü