mirror of
https://github.com/introlab/rtabmap.git
synced 2026-10-04 09:07:47 +08:00
flakiness
This commit is contained in:
@@ -10,7 +10,12 @@
|
|||||||
#include <rtabmap/utilite/UTimer.h>
|
#include <rtabmap/utilite/UTimer.h>
|
||||||
#include <fstream>
|
#include <fstream>
|
||||||
#include <cmath>
|
#include <cmath>
|
||||||
|
#ifdef _WIN32
|
||||||
|
#include <process.h>
|
||||||
|
#define getpid _getpid
|
||||||
|
#else
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
|
#endif
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
||||||
using namespace rtabmap;
|
using namespace rtabmap;
|
||||||
|
|||||||
@@ -3,7 +3,12 @@
|
|||||||
#include <rtabmap/utilite/UFile.h>
|
#include <rtabmap/utilite/UFile.h>
|
||||||
#include <rtabmap/utilite/UConversion.h>
|
#include <rtabmap/utilite/UConversion.h>
|
||||||
#include <fstream>
|
#include <fstream>
|
||||||
|
#ifdef _WIN32
|
||||||
|
#include <process.h>
|
||||||
|
#define getpid _getpid
|
||||||
|
#else
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifdef RTABMAP_LIBLAS
|
#ifdef RTABMAP_LIBLAS
|
||||||
#include <rtabmap/core/LASWriter.h>
|
#include <rtabmap/core/LASWriter.h>
|
||||||
|
|||||||
@@ -25,7 +25,12 @@
|
|||||||
#include <fstream>
|
#include <fstream>
|
||||||
#include <memory>
|
#include <memory>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
#ifdef _WIN32
|
||||||
|
#include <process.h>
|
||||||
|
#define getpid _getpid
|
||||||
|
#else
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
using namespace rtabmap;
|
using namespace rtabmap;
|
||||||
|
|
||||||
|
|||||||
@@ -23,7 +23,12 @@
|
|||||||
#include <fstream>
|
#include <fstream>
|
||||||
#include <memory>
|
#include <memory>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
#ifdef _WIN32
|
||||||
|
#include <process.h>
|
||||||
|
#define getpid _getpid
|
||||||
|
#else
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
using namespace rtabmap;
|
using namespace rtabmap;
|
||||||
|
|
||||||
|
|||||||
@@ -23,7 +23,12 @@
|
|||||||
#include <fstream>
|
#include <fstream>
|
||||||
#include <memory>
|
#include <memory>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
#ifdef _WIN32
|
||||||
|
#include <process.h>
|
||||||
|
#define getpid _getpid
|
||||||
|
#else
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
using namespace rtabmap;
|
using namespace rtabmap;
|
||||||
|
|
||||||
|
|||||||
@@ -22,7 +22,12 @@
|
|||||||
#include <set>
|
#include <set>
|
||||||
#include <sstream>
|
#include <sstream>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
#ifdef _WIN32
|
||||||
|
#include <process.h>
|
||||||
|
#define getpid _getpid
|
||||||
|
#else
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
|
#endif
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
||||||
using namespace rtabmap;
|
using namespace rtabmap;
|
||||||
|
|||||||
@@ -36,7 +36,6 @@
|
|||||||
#include <iostream>
|
#include <iostream>
|
||||||
#include <memory>
|
#include <memory>
|
||||||
#include <string>
|
#include <string>
|
||||||
#include <unistd.h>
|
|
||||||
|
|
||||||
using namespace rtabmap;
|
using namespace rtabmap;
|
||||||
|
|
||||||
@@ -643,11 +642,11 @@ TEST_F(RtabmapIntegrationFixture, PR2_Scan2D_RGBD)
|
|||||||
EXPECT_EQ(21, result.finalGlobalGraphSize);
|
EXPECT_EQ(21, result.finalGlobalGraphSize);
|
||||||
EXPECT_GE(result.proximityDetections, 1)
|
EXPECT_GE(result.proximityDetections, 1)
|
||||||
<< "PR2 2D-scan dataset should produce proximity detections";
|
<< "PR2 2D-scan dataset should produce proximity detections";
|
||||||
// Observed: empty 2863-3001, obstacle 4574-4937. Wide bounds absorb
|
// Observed: empty 2863-3048, obstacle 4339-4937. Wide bounds absorb
|
||||||
// platform-level FP differences in the visual loop-closure path.
|
// platform-level FP differences in the visual loop-closure path.
|
||||||
EXPECT_GE(result.gridEmptyCells, 2700);
|
EXPECT_GE(result.gridEmptyCells, 2700);
|
||||||
EXPECT_LE(result.gridEmptyCells, 3200);
|
EXPECT_LE(result.gridEmptyCells, 3200);
|
||||||
EXPECT_GE(result.gridObstacleCells, 4400);
|
EXPECT_GE(result.gridObstacleCells, 4200);
|
||||||
EXPECT_LE(result.gridObstacleCells, 5100);
|
EXPECT_LE(result.gridObstacleCells, 5100);
|
||||||
#ifdef RTABMAP_OCTOMAP
|
#ifdef RTABMAP_OCTOMAP
|
||||||
// Observed: empty 6072-8037, obstacle 39924-42883. Bounds are wide
|
// Observed: empty 6072-8037, obstacle 39924-42883. Bounds are wide
|
||||||
@@ -718,11 +717,11 @@ TEST_F(RtabmapIntegrationFixture, PR2_Scan2D_RGBD_IcpReg)
|
|||||||
EXPECT_EQ(21, result.finalGlobalGraphSize);
|
EXPECT_EQ(21, result.finalGlobalGraphSize);
|
||||||
EXPECT_GE(result.proximityDetections, 1)
|
EXPECT_GE(result.proximityDetections, 1)
|
||||||
<< "PR2 2D-scan dataset should produce proximity detections";
|
<< "PR2 2D-scan dataset should produce proximity detections";
|
||||||
// Observed: empty 22785-23455, obstacle 1302-1580. Range widened to
|
// Observed: empty 22785-23845, obstacle 1302-1624. Range widened to
|
||||||
// absorb run-to-run variance from the RANSAC correspondence rejector
|
// absorb run-to-run variance from the RANSAC correspondence rejector
|
||||||
// installed in the PCL ICP path (util3d_registration.cpp).
|
// installed in the PCL ICP path (util3d_registration.cpp).
|
||||||
EXPECT_GE(result.gridEmptyCells, 22500);
|
EXPECT_GE(result.gridEmptyCells, 22500);
|
||||||
EXPECT_LE(result.gridEmptyCells, 23800);
|
EXPECT_LE(result.gridEmptyCells, 24100);
|
||||||
EXPECT_GE(result.gridObstacleCells, 1250);
|
EXPECT_GE(result.gridObstacleCells, 1250);
|
||||||
EXPECT_LE(result.gridObstacleCells, 1700);
|
EXPECT_LE(result.gridObstacleCells, 1700);
|
||||||
#ifdef RTABMAP_OCTOMAP
|
#ifdef RTABMAP_OCTOMAP
|
||||||
@@ -731,10 +730,10 @@ TEST_F(RtabmapIntegrationFixture, PR2_Scan2D_RGBD_IcpReg)
|
|||||||
EXPECT_EQ(0, result.octomapObstacleCells);
|
EXPECT_EQ(0, result.octomapObstacleCells);
|
||||||
#endif
|
#endif
|
||||||
// Scan-based ICP loop closure with the PR2's 2D laser should align the
|
// Scan-based ICP loop closure with the PR2's 2D laser should align the
|
||||||
// final trajectory to within ~3 cm of the stored ground truth (run-to-run
|
// final trajectory to within ~5 cm of the stored ground truth (RMSE
|
||||||
// variance from TORO/visual loop-closure can shift this ~5 mm).
|
// observed up to ~0.045 m on macOS CI; Linux typically ~0.015-0.02 m).
|
||||||
ASSERT_GE(result.translationalRmseFinal, 0.0f)
|
ASSERT_GE(result.translationalRmseFinal, 0.0f)
|
||||||
<< "No Gt/translational_rmse in stats (ground truth missing?)";
|
<< "No Gt/translational_rmse in stats (ground truth missing?)";
|
||||||
EXPECT_LT(result.translationalRmseFinal, 0.03f)
|
EXPECT_LT(result.translationalRmseFinal, 0.05f)
|
||||||
<< "Final trajectory RMSE = " << result.translationalRmseFinal << " m";
|
<< "Final trajectory RMSE = " << result.translationalRmseFinal << " m";
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user