I noticed that the pointcloud integrator introduced in v0.0.9 doesn't seem to work: 9413b5d#diff-d989e014492646bd8691e3d9a661bd64009a3714daa33541cc020ff62cfcd3f3R190
nvblox::Mapper mapper(voxel_size_m, nvblox::MemoryType::kDevice, nvblox::ProjectiveLayerType::kTsdf);
mapper.integrateDepth(pointCloud, T_L_C, Lidar, false, std::nullopt, std::nullopt);
returns for me
/usr/local/include/nvblox/mapper/internal/impl/mapper_impl.h:99:3: error: no matching member function for call to 'integrateDepth'
99 | integrateDepth(depth_frame_from_pointcloud_, T_L_S_scanStart, lidar_sensor,
| ^~~~~~~~~~~~~~
/foo/src/nvblox_node.cpp:63:10: note: in instantiation of function template specialization 'nvblox::Mapper::integrateDepth<nvblox::Lidar>' requested here
63 | mapper.integrateDepth(pointCloud, T_L_C, Lidar, false, std::nullopt, std::nullopt);
| ^
/usr/local/include/nvblox/mapper/internal/impl/mapper_impl.h:82:14: note: candidate function template not viable: no known conversion from 'DepthImage' (aka 'Image<float>') to 'const Pointcloud' for 1st argument
82 | void Mapper::integrateDepth(const Pointcloud& pointcloud,
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/nvblox/mapper/internal/impl/mapper_impl.h:20:14: note: candidate function template not viable: requires 3 arguments, but 5 were provided
20 | void Mapper::integrateDepth(const DepthImage& depth_frame,
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
21 | const Transform& T_L_C, const SensorType& sensor) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/nvblox/mapper/internal/impl/mapper_impl.h:27:14: note: candidate function template not viable: requires 3 arguments, but 5 were provided
27 | void Mapper::integrateDepth(const MaskedDepthImageConstView& depth_frame,
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
28 | const Transform& T_L_C, const SensorType& sensor) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
It appears that inside this function it does:
integrateDepth(depth_frame_from_pointcloud_, T_L_S_scanStart, lidar_sensor,
T_L_S_scanEnd, scan_duration_ms);
but there's no implementation for this signature. Note that the multi-mapper uses another integration call: 9413b5d#diff-dae87c7dd3ab84d4e87df48556322361e1bad7597c401e63744922356c1be411R176
// Integrate the depth image.
integrateDepth(depth_frame_from_pointcloud_, T_L_S_scanStart, lidar_sensor,
update_time_ms);
I'm new to nvblox, so perhaps I'm using the API for LiDARs wrong.
I noticed that the pointcloud integrator introduced in v0.0.9 doesn't seem to work: 9413b5d#diff-d989e014492646bd8691e3d9a661bd64009a3714daa33541cc020ff62cfcd3f3R190
returns for me
It appears that inside this function it does:
integrateDepth(depth_frame_from_pointcloud_, T_L_S_scanStart, lidar_sensor, T_L_S_scanEnd, scan_duration_ms);but there's no implementation for this signature. Note that the multi-mapper uses another integration call: 9413b5d#diff-dae87c7dd3ab84d4e87df48556322361e1bad7597c401e63744922356c1be411R176
I'm new to nvblox, so perhaps I'm using the API for LiDARs wrong.