8#ifndef SE_MULTIRES_OFUSION_UPDATER_HPP
9#define SE_MULTIRES_OFUSION_UPDATER_HPP
19template<Colour ColB, Semantics SemB,
int BlockSize,
typename SensorT>
25 typedef typename MapType::OctreeType::NodeType
NodeType;
26 typedef typename MapType::OctreeType::BlockType
BlockType;
29 struct UpdaterConfig {
31 sigma_min(map.getRes() * map.getDataConfig().field.sigma_min_factor),
32 sigma_max(map.getRes() * map.getDataConfig().field.sigma_max_factor),
33 tau_min(map.getRes() * map.getDataConfig().field.tau_min_factor),
34 tau_max(map.getRes() * map.getDataConfig().field.tau_max_factor)
56 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
62 void propagateToRoot(std::vector<OctantBase*>& block_list);
81 template<
bool UpdateBuffer>
99 const Eigen::Isometry3f T_CW_;
100 const SensorT*
const colour_sensor_;
102 Eigen::Isometry3f T_CcC_;
103 const bool has_colour_;
105 const float map_res_;
106 const UpdaterConfig config_;
107 std::vector<std::set<OctantBase*>> node_set_;
108 std::vector<OctantBase*> freed_block_list_;
109 std::set<const OctantBase*>* updated_octants_ =
nullptr;
116#include "impl/multires_ofusion_updater_impl.hpp"
The base class of all octants (se::Node and se::Block) in an se::Octree.
Definition octant.hpp:19
Updater(MapType &map, const timestamp_t timestamp, const Measurements< SensorT > &measurements)
Map< Data< Field::Occupancy, ColB, SemB >, Res::Multi, BlockSize > MapType
Definition multires_ofusion_updater.hpp:22
MapType::DataType DataType
Definition multires_ofusion_updater.hpp:23
MapType::OctreeType OctreeType
Definition multires_ofusion_updater.hpp:24
MapType::OctreeType::BlockType BlockType
Definition multires_ofusion_updater.hpp:26
void operator()(VolumeCarverAllocation &allocation_list, std::set< const OctantBase * > *const updated_octants=nullptr)
MapType::OctreeType::NodeType NodeType
Definition multires_ofusion_updater.hpp:25
Helper wrapper to allocate and de-allocate octants in the octree.
Definition bounded_vector.hpp:14
int timestamp_t
The type of the time stamp.
Definition type_util.hpp:55
Field
Definition setup_util.hpp:18
UpdaterConfig(const MapType &map)
Definition multires_ofusion_updater.hpp:30
const float sigma_max
Definition multires_ofusion_updater.hpp:39
const float tau_min
Definition multires_ofusion_updater.hpp:40
const float tau_max
Definition multires_ofusion_updater.hpp:41
const float sigma_min
Definition multires_ofusion_updater.hpp:38
Definition updater.hpp:16
Definition volume_carver.hpp:21