8 #ifndef SE_MULTIRES_OFUSION_UPDATER_HPP 9 #define SE_MULTIRES_OFUSION_UPDATER_HPP 22 template<se::Colour ColB, se::Semantics SemB,
int BlockSize,
typename SensorT>
28 typedef typename MapType::OctreeType::NodeType
NodeType;
29 typedef typename MapType::OctreeType::BlockType
BlockType;
32 struct UpdaterConfig {
34 sigma_min(map.getRes() * map.getDataConfig().sigma_min_factor),
35 sigma_max(map.getRes() * map.getDataConfig().sigma_max_factor),
36 tau_min(map.getRes() * map.getDataConfig().tau_min_factor),
37 tau_max(map.getRes() * map.getDataConfig().tau_max_factor)
55 const SensorT& sensor,
57 const Eigen::Matrix4f& T_WS,
66 void propagateToRoot(std::vector<se::OctantBase*>& block_list);
79 void updateBlock(
se::OctantBase* octant_ptr,
bool low_variance,
bool project_inside);
90 const SensorT& sensor_;
92 const Eigen::Matrix4f T_SW_;
95 const UpdaterConfig config_;
96 std::vector<std::set<se::OctantBase*>> node_set_;
97 std::vector<se::OctantBase*> freed_block_list_;
104 #include "impl/multires_ofusion_updater_impl.hpp" 106 #endif // SE_MULTIRES_OFUSION_UPDATER_HPP MapType::OctreeType OctreeType
Definition: multires_ofusion_updater.hpp:27
Updater(MapT &map, const SensorT &sensor, const se::Image< float > &depth_img, const Eigen::Matrix4f &T_WS, const int frame)
const float sigma_min
Definition: multires_ofusion_updater.hpp:41
Definition: updater.hpp:18
UpdaterConfig(const MapType &map)
Definition: multires_ofusion_updater.hpp:33
MapType::OctreeType::BlockType BlockType
Definition: multires_ofusion_updater.hpp:29
const float tau_max
Definition: multires_ofusion_updater.hpp:44
const float sigma_max
Definition: multires_ofusion_updater.hpp:42
const float tau_min
Definition: multires_ofusion_updater.hpp:43
Map< Data< se::Field::Occupancy, ColB, SemB >, se::Res::Multi, BlockSize > MapType
Definition: multires_ofusion_updater.hpp:25
MapType::DataType DataType
Definition: multires_ofusion_updater.hpp:26
This class only helps to dynamic cast the octant to the right type and builds the base of nodes and b...
Definition: octant.hpp:24
void operator()(UpdateListT &updating_list)
Helper wrapper to allocate and de-allocate octants in the octree.
Definition: colour_utils.hpp:17
Definition: volume_carver.hpp:29
MapType::OctreeType::NodeType NodeType
Definition: multires_ofusion_updater.hpp:28