@@ -149,6 +149,7 @@ void SpatioTemporalVoxelLayer::onInitialize(void)
149149 double hFOV, decay_acceleration;
150150 std::string topic, sensor_frame, data_type;
151151 bool inf_is_valid, clearing, marking, voxel_filter, clear_after_reading, enabled;
152+ int voxel_min_points;
152153
153154 source_node.param (" topic" , topic, source);
154155 source_node.param (" sensor_frame" , sensor_frame, std::string (" " ));
@@ -174,6 +175,8 @@ void SpatioTemporalVoxelLayer::onInitialize(void)
174175 source_node.param (" decay_acceleration" , decay_acceleration, 0 .);
175176 // performs an approximate voxel filter over the data to reduce
176177 source_node.param (" voxel_filter" , voxel_filter, false );
178+ // minimum points per voxel for voxel filter
179+ source_node.param (" voxel_min_points" , voxel_min_points, 0 );
177180 // clears measurement buffer after reading values from it
178181 source_node.param (" clear_after_reading" , clear_after_reading, false );
179182 // Whether the frustum is enabled on startup. Can be toggled with service
@@ -209,7 +212,8 @@ void SpatioTemporalVoxelLayer::onInitialize(void)
209212 obstacle_range, *tf_, _global_frame, sensor_frame, \
210213 transform_tolerance, min_z, max_z, vFOV, vFOVPadding, hFOV, \
211214 decay_acceleration, marking, clearing, _voxel_size, \
212- voxel_filter, enabled, clear_after_reading, model_type)));
215+ voxel_filter, voxel_min_points, enabled, clear_after_reading, \
216+ model_type)));
213217
214218 // Add buffer to marking observation buffers
215219 if (marking == true )
0 commit comments