EasyNav Plugins
Loading...
Searching...
No Matches
AMCLLocalizer.cpp File Reference

AMCLLocalizer implementation (Bonxai + probabilistic inflation + ray casting). More...

#include <random>
#include <unordered_map>
#include <unordered_set>
#include <vector>
#include <string>
#include <cmath>
#include <iostream>
#include <pcl/point_cloud.h>
#include <pcl/point_types.h>
#include "bonxai/bonxai.hpp"
#include "bonxai/probabilistic_map.hpp"
#include "tf2_geometry_msgs/tf2_geometry_msgs.hpp"
#include "tf2/LinearMath/Vector3.hpp"
#include "easynav_common/RTTFBuffer.hpp"
#include "easynav_common/types/PointPerception.hpp"
#include "easynav_common/types/IMUPerception.hpp"
#include "navmap_core/NavMap.hpp"
#include "easynav_navmap_localizer/AMCLLocalizer.hpp"
#include "easynav_localizer/LocalizerNode.hpp"
#include <pluginlib/class_list_macros.hpp>
Include dependency graph for AMCLLocalizer.cpp:

Classes

struct  ScoreAgg
struct  SensorBundle

Namespaces

namespace  easynav
 Provides a mapping for often used cost values.
namespace  easynav::navmap

Typedefs

using ProgressCallback = std::function<void(float)>

Functions

tf2::Matrix3x3 computeCovariance (const std::vector< Particle > &particles, std::size_t start, std::size_t count, const tf2::Vector3 &mean)
tf2::Vector3 computeMean (const std::vector< Particle > &particles, std::size_t start, std::size_t count)
double computeYawVariance (const std::vector< Particle > &particles, std::size_t start, std::size_t count)
double extractYaw (const tf2::Transform &T)
std::optional< tf2::Quaternion > get_latest_imu_quat (const NavState &nav_state)
std::shared_ptr< Bonxai::ProbabilisticMapinflate_map (const std::shared_ptr< Bonxai::ProbabilisticMap > &src, double sigma, double p_min, ProgressCallback progress=nullptr)

Detailed Description

AMCLLocalizer implementation (Bonxai + probabilistic inflation + ray casting).