MRPT  2.0.4
Typedefs | Functions | Variables
RBPF_SLAM_App_unittest.cpp File Reference
#include <gtest/gtest.h>
#include <mrpt/apps/RBPF_SLAM_App.h>
#include <mrpt/poses/Lie/SE.h>
#include <mrpt/system/filesystem.h>
#include <test_mrpt_common.h>
#include <iostream>
Include dependency graph for RBPF_SLAM_App_unittest.cpp:

Go to the source code of this file.

Typedefs

using config_changer_t = std::function< void(mrpt::config::CConfigFileBase &)>
 
using post_tester_t = std::function< void(mrpt::apps::RBPF_SLAM_App_Base &)>
 

Functions

void generic_rbpf_slam_test (const std::string &ini_filename, const std::string &rawlog_filename, config_changer_t cfg_changer, post_tester_t post_tester)
 
 TEST (RBPF_SLAM_App, MapFromRawlog_Lidar2D_optimal_sampling)
 
 TEST (RBPF_SLAM_App, MapFromRawlog_Lidar2D_gridICP)
 
 TEST (RBPF_SLAM_App, MapFromRawlog_Lidar2D_pointsICP)
 
 TEST (RBPF_SLAM_App, MapFromRawlog_ROSLAM_MC)
 
 TEST (RBPF_SLAM_App, MapFromRawlog_ROSLAM_SOG)
 

Variables

static auto tester_for_2006_01_21
 
static auto tester_for_ROSLAM_demo
 

Typedef Documentation

◆ config_changer_t

using config_changer_t = std::function<void(mrpt::config::CConfigFileBase&)>

Definition at line 17 of file RBPF_SLAM_App_unittest.cpp.

◆ post_tester_t

using post_tester_t = std::function<void(mrpt::apps::RBPF_SLAM_App_Base&)>

Definition at line 18 of file RBPF_SLAM_App_unittest.cpp.

Function Documentation

◆ generic_rbpf_slam_test()

void generic_rbpf_slam_test ( const std::string &  ini_filename,
const std::string &  rawlog_filename,
config_changer_t  cfg_changer,
post_tester_t  post_tester 
)

Definition at line 20 of file RBPF_SLAM_App_unittest.cpp.

References argc, argv, mrpt::exception_to_str(), EXPECT_TRUE(), mrpt::system::fileExists(), mrpt::system::getTempFileName(), ini_fil, mrpt::apps::RBPF_SLAM_App_Base::initialize(), mrpt::system::LVL_WARN, mrpt::apps::RBPF_SLAM_App_Base::params, mrpt::apps::RBPF_SLAM_App_Base::run(), mrpt::system::COutputLogger::setMinLoggingLevel(), and mrpt::config::CConfigFileBase::write().

Referenced by TEST().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ TEST() [1/5]

TEST ( RBPF_SLAM_App  ,
MapFromRawlog_Lidar2D_optimal_sampling   
)

Definition at line 92 of file RBPF_SLAM_App_unittest.cpp.

References generic_rbpf_slam_test(), and tester_for_2006_01_21.

Here is the call graph for this function:

◆ TEST() [2/5]

TEST ( RBPF_SLAM_App  ,
MapFromRawlog_Lidar2D_gridICP   
)

Definition at line 102 of file RBPF_SLAM_App_unittest.cpp.

References generic_rbpf_slam_test(), and tester_for_2006_01_21.

Here is the call graph for this function:

◆ TEST() [3/5]

TEST ( RBPF_SLAM_App  ,
MapFromRawlog_Lidar2D_pointsICP   
)

Definition at line 112 of file RBPF_SLAM_App_unittest.cpp.

References generic_rbpf_slam_test(), and tester_for_2006_01_21.

Here is the call graph for this function:

◆ TEST() [4/5]

TEST ( RBPF_SLAM_App  ,
MapFromRawlog_ROSLAM_MC   
)

Definition at line 122 of file RBPF_SLAM_App_unittest.cpp.

References generic_rbpf_slam_test(), and tester_for_ROSLAM_demo.

Here is the call graph for this function:

◆ TEST() [5/5]

TEST ( RBPF_SLAM_App  ,
MapFromRawlog_ROSLAM_SOG   
)

Definition at line 131 of file RBPF_SLAM_App_unittest.cpp.

References generic_rbpf_slam_test(), and tester_for_ROSLAM_demo.

Here is the call graph for this function:

Variable Documentation

◆ tester_for_2006_01_21

auto tester_for_2006_01_21
static
Initial value:
EXPECT_EQ(o.out_estimated_path.size(), 224U);
const auto p = mrpt::poses::CPose3D(o.out_estimated_path.rbegin()->second);
"[3.4548 -18.0399 0.000000 -86.48 0.000000 0.000000]");
<< "actual pose =" << p.asString()
<< "\nexpected pose=" << p_gt.asString();
}
EXPECT_LT(out.final_rmse, 3.0)
static CPose3D FromString(const std::string &s)
Definition: CPose3D.h:644
RBPF-SLAM virtual base class for application wrappers.
Definition: RBPF_SLAM_App.h:31
Traits for SE(n), rigid-body transformations in R^n space.
Definition: SE.h:30
void asString(std::string &s) const
Returns a human-readable textual representation of the object (eg: "[x y z yaw pitch roll]"...
Definition: CPose3D.h:618
A class used to store a 3D pose (a 3D translation + a rotation in 3D).
Definition: CPose3D.h:85
EXPECT_EQ(out.image_pair_was_used.size(), NUM_IMGS)
CONTAINER::Scalar norm(const CONTAINER &v)

Definition at line 68 of file RBPF_SLAM_App_unittest.cpp.

Referenced by TEST().

◆ tester_for_ROSLAM_demo

auto tester_for_ROSLAM_demo
static
Initial value:
EXPECT_EQ(o.out_estimated_path.size(), 99U);
const auto p = mrpt::poses::CPose3D(o.out_estimated_path.rbegin()->second);
"[1.938686 3.352273 0.000000 114.993417 0.000000 0.000000]");
<< "actual pose =" << p.asString()
<< "\nexpected pose=" << p_gt.asString();
MRPT_TODO("Stricter unit tests: check for estimated landmark positions");
}
EXPECT_LT(out.final_rmse, 3.0)
static CPose3D FromString(const std::string &s)
Definition: CPose3D.h:644
RBPF-SLAM virtual base class for application wrappers.
Definition: RBPF_SLAM_App.h:31
Traits for SE(n), rigid-body transformations in R^n space.
Definition: SE.h:30
void asString(std::string &s) const
Returns a human-readable textual representation of the object (eg: "[x y z yaw pitch roll]"...
Definition: CPose3D.h:618
A class used to store a 3D pose (a 3D translation + a rotation in 3D).
Definition: CPose3D.h:85
EXPECT_EQ(out.image_pair_was_used.size(), NUM_IMGS)
MRPT_TODO("toPointCloud / calibration")
CONTAINER::Scalar norm(const CONTAINER &v)

Definition at line 79 of file RBPF_SLAM_App_unittest.cpp.

Referenced by TEST().




Page generated by Doxygen 1.8.14 for MRPT 2.0.4 Git: 7ea9b7e81 Mon May 25 11:43:10 2020 +0200 at lun may 25 11:45:15 CEST 2020