fixing multi platform flakiness

This commit is contained in:
matlabbe
2026-05-28 20:29:02 -07:00
parent 1ce10ef6e7
commit 10403d4a34
5 changed files with 75 additions and 27 deletions
+7 -5
View File
@@ -596,10 +596,11 @@ TEST_F(RtabmapIntegrationFixture, PR2_Scan2D_Stereo)
EXPECT_EQ(27, result.finalGlobalGraphSize);
EXPECT_GE(result.proximityDetections, 1)
<< "PR2 2D-scan dataset should produce proximity detections";
// Observed across 5 runs: empty 531-553, obstacle 5074-5102.
EXPECT_GE(result.gridEmptyCells, 450);
// Observed: empty 489-555, obstacle 4851-5202. Wide bounds because the
// graph optimizer and visual odom drift differ per platform/optimizer.
EXPECT_GE(result.gridEmptyCells, 400);
EXPECT_LE(result.gridEmptyCells, 650);
EXPECT_GE(result.gridObstacleCells, 4900);
EXPECT_GE(result.gridObstacleCells, 4800);
EXPECT_LE(result.gridObstacleCells, 5300);
#ifdef RTABMAP_OCTOMAP
// Observed: empty 1805-1902, obstacle 21502-22383. Bounds are wide
@@ -729,9 +730,10 @@ TEST_F(RtabmapIntegrationFixture, PR2_Scan2D_RGBD_IcpReg)
EXPECT_EQ(0, result.octomapObstacleCells);
#endif
// Scan-based ICP loop closure with the PR2's 2D laser should align the
// final trajectory to within ~2.5 cm of the stored ground truth.
// final trajectory to within ~3 cm of the stored ground truth (run-to-run
// variance from TORO/visual loop-closure can shift this ~5 mm).
ASSERT_GE(result.translationalRmseFinal, 0.0f)
<< "No Gt/translational_rmse in stats (ground truth missing?)";
EXPECT_LT(result.translationalRmseFinal, 0.025f)
EXPECT_LT(result.translationalRmseFinal, 0.03f)
<< "Final trajectory RMSE = " << result.translationalRmseFinal << " m";
}