26namespace localization {
28namespace pyramid_map {
38 bool create_map_cells =
true);
54 unsigned char intensity,
unsigned int level = 0);
60 const std::vector<unsigned char>& intensity,
61 unsigned int level = 0);
65 bool GetCoordinate(
const Eigen::Vector2d& coordinate,
unsigned int level,
66 unsigned int* x,
unsigned int* y)
const;
68 Eigen::Vector2d
GetCoordinate(
unsigned int level,
unsigned int x,
69 unsigned int y)
const;
71 virtual bool GetCoordinate(
const Eigen::Vector2d& coordinate,
unsigned int* x,
72 unsigned int* y)
const;
73 virtual bool GetCoordinate(
const Eigen::Vector3d& coordinate,
unsigned int* x,
74 unsigned int* y)
const;
76 virtual Eigen::Vector2d
GetCoordinate(
unsigned int x,
unsigned int y)
const;
81 unsigned int level = 0)
const;
85 unsigned int level = 0)
const;
89 unsigned int level = 0)
const;
93 unsigned int level = 0)
const;
97 unsigned int level = 0)
const;
100 unsigned int GetCountSafe(
const Eigen::Vector3d& coordinate,
101 unsigned int level = 0)
const;
105 unsigned int level = 0)
const;
110 unsigned int level = 0)
const;
114 unsigned int level = 0)
const;
117 float GetAltitude(
const Eigen::Vector3d& coordinate,
118 unsigned int level = 0)
const;
122 unsigned int level = 0)
const;
126 unsigned int level = 0)
const;
129 unsigned int GetCount(
const Eigen::Vector3d& coordinate,
130 unsigned int level = 0)
const;
134 unsigned int level = 0)
const;
140 std::vector<float> resolutions_mr_;
The options of the reflectance map.
The data structure of a Node in the map.
void BottomUpSafe()
Propagate the data to the coarse resolution by check.
float GetAltitudeVar(const Eigen::Vector3d &coordinate, unsigned int level=0) const
Given the 3D global coordinate, get the map cell's variance of the altitude without check.
float GetIntensityVar(const Eigen::Vector3d &coordinate, unsigned int level=0) const
Given the 3D global coordinate, get the map cell variance of the intensity without check.
bool GetCoordinate(const Eigen::Vector2d &coordinate, unsigned int level, unsigned int *x, unsigned int *y) const
Given the global coordinate, get the local 2D coordinate of the map cell matrix.
float GetAltitudeVarSafe(const Eigen::Vector3d &coordinate, unsigned int level=0) const
Given the 3D global coordinate, get the map cell's variance of the altitude with check.
float GetIntensity(const Eigen::Vector3d &coordinate, unsigned int level=0) const
Given the 3D global coordinate, get the map cell intensity without check.
void BottomUpBase()
Propagate the data to the coarse resolution.
unsigned int GetGroundCount(const Eigen::Vector3d &coordinate, unsigned int level=0) const
Given the 3D global coordinate, get the map cell's count of the ground samples without check.
unsigned int GetCount(const Eigen::Vector3d &coordinate, unsigned int level=0) const
Given the 3D global coordinate, get the map cell's count of the samples without check.
double ComputeMeanIntensity(unsigned int level=0)
Compute mean intensity.
float GetAltitudeSafe(const Eigen::Vector3d &coordinate, unsigned int level=0) const
Given the 3D global coordinate, get the map cell's average altitude with check.
unsigned int GetGroundCountSafe(const Eigen::Vector3d &coordinate, unsigned int level=0) const
Given the 3D global coordinate, get the map cell's count of the ground samples with check.
unsigned int GetCountSafe(const Eigen::Vector3d &coordinate, unsigned int level=0) const
Given the 3D global coordinate, get the map cell's count of the samples with check.
float GetGroundAltitude(const Eigen::Vector3d &coordinate, unsigned int level=0) const
Given the 3D global coordinate, get the map cell's average ground altitude without check.
float GetIntensitySafe(const Eigen::Vector3d &coordinate, unsigned int level=0) const
Given the 3D global coordinate, get the map cell intensity with check.
float GetIntensityVarSafe(const Eigen::Vector3d &coordinate, unsigned int level=0) const
Given the 3D global coordinate, get the map cell variance of the intensity with check.
bool AddValueIfInBound(const Eigen::Vector3d &coordinate, unsigned char intensity, unsigned int level=0)
Add the value of a pixel in the map node if the pixel in the node.
virtual void Init(const BaseMapConfig *map_config)
Initialize the map node.
float GetAltitude(const Eigen::Vector3d &coordinate, unsigned int level=0) const
Given the 3D global coordinate, get the map cell's average altitude without check.
float GetGroundAltitudeSafe(const Eigen::Vector3d &coordinate, unsigned int level=0) const
Given the 3D global coordinate, get the map cell's average ground altitude with check.