|
Apollo
6.0
Open source self driving car software
|
#include <pyramid_map_node.h>


Public Member Functions | |
| PyramidMapNode () | |
| ~PyramidMapNode () | |
| virtual void | Init (const BaseMapConfig *map_config) |
| Initialize the map node. Call this function first before use it! More... | |
| virtual void | Init (const BaseMapConfig *map_config, const MapNodeIndex &index, bool create_map_cells=true) |
| void | BottomUpSafe () |
| Propagate the data to the coarse resolution by check. More... | |
| void | BottomUpBase () |
| Propagate the data to the coarse resolution. only update count, intensity, intensity var and altitude. More... | |
| 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. More... | |
| void | AddValueIfInBound (const std::vector< Eigen::Vector3d > &coordinates, const std::vector< unsigned char > &intensity, unsigned int level=0) |
| Add the value of a pixel in the map node if the pixel in the node. More... | |
| 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. <return> If global coordinate (x, y) belongs to this map node. More... | |
| Eigen::Vector2d | GetCoordinate (unsigned int level, unsigned int x, unsigned int y) const |
| Given the local 2D coordinate, return the global coordinate. More... | |
| virtual bool | GetCoordinate (const Eigen::Vector2d &coordinate, unsigned int *x, unsigned int *y) const |
| Given the global coordinate, get the local 2D coordinate of the map cell matrix. <return> If global coordinate (x, y) belongs to this map node. More... | |
| virtual bool | GetCoordinate (const Eigen::Vector3d &coordinate, unsigned int *x, unsigned int *y) const |
| virtual Eigen::Vector2d | GetCoordinate (unsigned int x, unsigned int y) const |
| Given the local 2D coordinate, return the global coordinate. More... | |
| float | GetIntensitySafe (const Eigen::Vector3d &coordinate, unsigned int level=0) const |
| Given the 3D global coordinate, get the map cell intensity with check. More... | |
| 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. More... | |
| 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. More... | |
| 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. More... | |
| 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. More... | |
| 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. More... | |
| 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. More... | |
| float | GetIntensity (const Eigen::Vector3d &coordinate, unsigned int level=0) const |
| Given the 3D global coordinate, get the map cell intensity without check. More... | |
| 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. More... | |
| 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. More... | |
| 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. More... | |
| 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. More... | |
| 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. More... | |
| 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. More... | |
| double | ComputeMeanIntensity (unsigned int level=0) |
| Compute mean intensity. More... | |
Public Member Functions inherited from apollo::localization::msf::pyramid_map::BaseMapNode | |
| BaseMapNode () | |
| Construct a map node. More... | |
| BaseMapNode (BaseMapMatrix *matrix, CompressionStrategy *strategy) | |
| Construct a map node. More... | |
| virtual | ~BaseMapNode () |
| Destruct a map node. More... | |
| virtual void | InitMapMatrix (const BaseMapConfig *map_config) |
| Initialize the map matrix. More... | |
| virtual void | Finalize () |
| call before deconstruction or reset. More... | |
| virtual void | ResetMapNode () |
| Reset map cells data. More... | |
| bool | Save () |
| Save the map node to the disk. More... | |
| bool | SaveIntensityImage () const |
| Save intensity image of node. More... | |
| bool | SaveAltitudeImage () const |
| Save altitude image of node. More... | |
| bool | Load () |
| Load the map node from the disk. More... | |
| bool | Load (const char *filename) |
| void | SetMapNodeIndex (const MapNodeIndex &index) |
| Set the map node index. More... | |
| bool | SaveIntensityImage (const std::string &path) const |
| Save intensity image of node. More... | |
| bool | SaveAltitudeImage (const std::string &path) const |
| Save altitude image of node. More... | |
| const BaseMapMatrix & | GetMapCellMatrix () const |
| Get map cell matrix. More... | |
| BaseMapMatrix & | GetMapCellMatrix () |
| const BaseMapConfig & | GetMapConfig () const |
| Get the map settings. More... | |
| const BaseMapNodeConfig & | GetMapNodeConfig () const |
| Get the map node config. More... | |
| const MapNodeIndex & | GetMapNodeIndex () const |
| Get the map node index. More... | |
| void | SetIsReserved (bool is_reserved) |
| Set if the map node is reserved. More... | |
| bool | GetIsReserved () const |
| Get if the map node is reserved. More... | |
| bool | GetIsChanged () const |
| Get if the map data has changed. More... | |
| void | SetIsChanged (bool is) |
| Set if the map node data has changed. More... | |
| bool | GetIsReady () const |
| Get if the map node data is ready. More... | |
| const Eigen::Vector2d & | GetLeftTopCorner () const |
| void | SetLeftTopCorner (double x, double y) |
| Set the left top corner of the map node. More... | |
| float | GetMapResolution () const |
| Get the resolution of this map nodex. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from apollo::localization::msf::pyramid_map::BaseMapNode | |
| static Eigen::Vector2d | ComputeLeftTopCorner (const BaseMapConfig &config, const MapNodeIndex &index) |
| static Eigen::Vector2d | GetLeftTopCorner (const BaseMapConfig &option, const MapNodeIndex &index) |
Protected Member Functions inherited from apollo::localization::msf::pyramid_map::BaseMapNode | |
| bool | CreateMapDirectory (const std::string &path) const |
| Try to create the map directory. More... | |
| bool | CreateMapDirectoryRecursively (const std::vector< std::string > &paths) const |
| Try to create the map directory recursively. More... | |
| bool | CheckMapDirectoryRecursively (const std::vector< std::string > &paths) const |
| Try to check the map directory recursively. More... | |
| virtual bool | LoadBinary (FILE *file) |
| Load the map cell from a binary chunk. More... | |
| virtual bool | CreateBinary (FILE *file) const |
| Create the binary. Serialization of the object. More... | |
| virtual size_t | GetBinarySize () const |
| Get the binary size of the object. More... | |
| virtual size_t | LoadHeaderBinary (const unsigned char *buf) |
| Load the map node header from a binary chunk. More... | |
| virtual size_t | CreateHeaderBinary (unsigned char *buf, size_t buf_size) const |
| Create the binary header. More... | |
| virtual size_t | GetHeaderBinarySize () const |
| Get the size of the header in bytes. More... | |
| virtual size_t | LoadBodyBinary (std::vector< unsigned char > *buf) |
| Load the map node body from a binary chunk. More... | |
| virtual size_t | CreateBodyBinary (std::vector< unsigned char > *buf) const |
| Create the binary body. More... | |
| virtual size_t | GetBodyBinarySize () const |
| Get the size of the body in bytes. More... | |
Protected Attributes inherited from apollo::localization::msf::pyramid_map::BaseMapNode | |
| const BaseMapConfig * | map_config_ = nullptr |
| The map settings. More... | |
| MapNodeIndex | index_ |
| The index of this node. More... | |
| Eigen::Vector2d | left_top_corner_ |
| The left top corner of the map node in the global coordinate system. More... | |
| std::shared_ptr< BaseMapNodeConfig > | map_node_config_ = nullptr |
| The map node config. More... | |
| std::shared_ptr< BaseMapMatrix > | map_matrix_ = nullptr |
| The data structure of the map datas, which is a matrix. More... | |
| std::shared_ptr< BaseMapMatrixHandler > | map_matrix_handler_ = nullptr |
| The class to load and create map matrix binary. More... | |
| bool | is_reserved_ = false |
| If the node is reserved in map. More... | |
| bool | is_changed_ = false |
| Has the map node been changed. More... | |
| bool | data_is_ready_ = false |
| size_t | file_body_binary_size_ = 0 |
| The body binary size in file. More... | |
| size_t | uncompressed_file_body_size_ = 0 |
| std::shared_ptr< CompressionStrategy > | compression_strategy_ = nullptr |
| apollo::localization::msf::pyramid_map::PyramidMapNode::PyramidMapNode | ( | ) |
| apollo::localization::msf::pyramid_map::PyramidMapNode::~PyramidMapNode | ( | ) |
| bool apollo::localization::msf::pyramid_map::PyramidMapNode::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.
| <coordinate> | The 3D global coordinate. |
| <intensity> | The reflectance intensity. |
| <return> | True, if pixel in the bound of the node, else False. |
| void apollo::localization::msf::pyramid_map::PyramidMapNode::AddValueIfInBound | ( | const std::vector< Eigen::Vector3d > & | coordinates, |
| const std::vector< unsigned char > & | intensity, | ||
| unsigned int | level = 0 |
||
| ) |
Add the value of a pixel in the map node if the pixel in the node.
| <coordinates> | The 3D global coordinates. |
| <intensities> | The reflectance intensities. |
| void apollo::localization::msf::pyramid_map::PyramidMapNode::BottomUpBase | ( | ) |
Propagate the data to the coarse resolution. only update count, intensity, intensity var and altitude.
| void apollo::localization::msf::pyramid_map::PyramidMapNode::BottomUpSafe | ( | ) |
Propagate the data to the coarse resolution by check.
| double apollo::localization::msf::pyramid_map::PyramidMapNode::ComputeMeanIntensity | ( | unsigned int | level = 0 | ) |
Compute mean intensity.
| float apollo::localization::msf::pyramid_map::PyramidMapNode::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 apollo::localization::msf::pyramid_map::PyramidMapNode::GetAltitudeSafe | ( | const Eigen::Vector3d & | coordinate, |
| unsigned int | level = 0 |
||
| ) | const |
Given the 3D global coordinate, get the map cell's average altitude with check.
| float apollo::localization::msf::pyramid_map::PyramidMapNode::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 apollo::localization::msf::pyramid_map::PyramidMapNode::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.
| bool apollo::localization::msf::pyramid_map::PyramidMapNode::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. <return> If global coordinate (x, y) belongs to this map node.
| Eigen::Vector2d apollo::localization::msf::pyramid_map::PyramidMapNode::GetCoordinate | ( | unsigned int | level, |
| unsigned int | x, | ||
| unsigned int | y | ||
| ) | const |
Given the local 2D coordinate, return the global coordinate.
|
virtual |
Given the global coordinate, get the local 2D coordinate of the map cell matrix. <return> If global coordinate (x, y) belongs to this map node.
Reimplemented from apollo::localization::msf::pyramid_map::BaseMapNode.
|
virtual |
Reimplemented from apollo::localization::msf::pyramid_map::BaseMapNode.
|
virtual |
Given the local 2D coordinate, return the global coordinate.
Reimplemented from apollo::localization::msf::pyramid_map::BaseMapNode.
| unsigned int apollo::localization::msf::pyramid_map::PyramidMapNode::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.
| unsigned int apollo::localization::msf::pyramid_map::PyramidMapNode::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 apollo::localization::msf::pyramid_map::PyramidMapNode::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 apollo::localization::msf::pyramid_map::PyramidMapNode::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.
| unsigned int apollo::localization::msf::pyramid_map::PyramidMapNode::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 apollo::localization::msf::pyramid_map::PyramidMapNode::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.
| float apollo::localization::msf::pyramid_map::PyramidMapNode::GetIntensity | ( | const Eigen::Vector3d & | coordinate, |
| unsigned int | level = 0 |
||
| ) | const |
Given the 3D global coordinate, get the map cell intensity without check.
| float apollo::localization::msf::pyramid_map::PyramidMapNode::GetIntensitySafe | ( | const Eigen::Vector3d & | coordinate, |
| unsigned int | level = 0 |
||
| ) | const |
Given the 3D global coordinate, get the map cell intensity with check.
| float apollo::localization::msf::pyramid_map::PyramidMapNode::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.
| float apollo::localization::msf::pyramid_map::PyramidMapNode::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.
|
virtual |
Initialize the map node. Call this function first before use it!
Implements apollo::localization::msf::pyramid_map::BaseMapNode.
|
virtual |
1.8.13