|
lidar_processor_cpp package from go2_ros2_sdk repococo_detector go2_interfaces go2_robot_sdk lidar_processor lidar_processor_cpp speech_processor |
ROS Distro
|
Package Summary
| Tags | No category tags. |
| Version | 1.0.0 |
| License | BSD-3-Clause |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | Unofficial ROS2 SDK support for Unitree GO2 AIR/PRO/EDU |
| Checkout URI | https://github.com/abizovnuralem/go2_ros2_sdk.git |
| VCS Type | git |
| VCS Version | master |
| Last Updated | 2025-10-31 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Tags | ros ros2 go2 unitree unitree-go2 |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- brimo
Authors
- brimo
LiDAR Processor C++
High-performance C++ implementation of LiDAR data processing nodes for the Go2 robot. This package provides optimized C++ versions of the Python LiDAR processing nodes with identical functionality, topics, and parameters.
Features
- High Performance: Optimized C++ implementation using PCL (Point Cloud Library)
- Memory Efficient: Advanced point cloud aggregation with memory management
- Thread Safe: Thread-safe operations for concurrent data processing
- Statistical Filtering: Built-in outlier removal using statistical analysis
- Compatible: Drop-in replacement for Python lidar_processor nodes
Nodes
1. lidar_to_pointcloud_node
Processes raw LiDAR data and aggregates point clouds with optional map saving.
Topics:
-
Subscribed:
-
/robot0/point_cloud2(single robot mode) -
/robot{i}/point_cloud2(multi-robot mode)
-
-
Published:
-
/pointcloud/aggregated- Aggregated point cloud data
-
Parameters:
-
robot_ip_lst(string_array): List of robot IP addresses -
map_name(string): Name of the map file to save (default: “3d_map”) -
map_save(string): Whether to save map periodically (default: “true”) -
save_interval(double): Map saving interval in seconds (default: 10.0) -
max_points(int): Maximum points to keep in memory (default: 1000000) -
voxel_size(double): Voxel size for downsampling when saving (default: 0.01)
2. pointcloud_aggregator_node
Advanced point cloud processing with filtering, downsampling, and statistical outlier removal.
Topics:
-
Subscribed:
-
/pointcloud/aggregated- Raw aggregated point clouds
-
-
Published:
-
/pointcloud/filtered- Filtered point clouds -
/pointcloud/downsampled- Downsampled point clouds
-
Parameters:
-
max_range(double): Maximum range from robot center in meters (default: 20.0) -
min_range(double): Minimum range from robot center in meters (default: 0.1) -
height_filter_min(double): Minimum height filter (z-coordinate) (default: -2.0) -
height_filter_max(double): Maximum height filter (z-coordinate) (default: 3.0) -
downsample_rate(int): Keep every Nth point for downsampling (default: 10) -
publish_rate(double): Publishing rate in Hz (default: 5.0)
Building
# From your ROS2 workspace
colcon build --packages-select lidar_processor_cpp
Usage
Single Node Launch
Launch individual nodes:
# Launch LiDAR to PointCloud processor
ros2 launch lidar_processor_cpp lidar_to_pointcloud.launch.py
# Launch PointCloud Aggregator
ros2 launch lidar_processor_cpp pointcloud_aggregator.launch.py
Complete Pipeline Launch
Launch the complete processing pipeline:
ros2 launch lidar_processor_cpp lidar_processing_pipeline.launch.py
Custom Parameters
Launch with custom parameters:
ros2 launch lidar_processor_cpp lidar_processing_pipeline.launch.py \
robot_ip_lst:="['192.168.1.100']" \
map_name:="my_custom_map" \
max_range:=15.0 \
publish_rate:=10.0
Dependencies
-
ROS2 Dependencies:
rclcppsensor_msgsgeometry_msgsstd_msgs
File truncated at 100 lines see the full file
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| ament_lint_auto | |
| ament_lint_common | |
| rclcpp | |
| sensor_msgs | |
| geometry_msgs | |
| std_msgs | |
| pcl_ros | |
| pcl_conversions | |
| tf2 | |
| tf2_ros |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged lidar_processor_cpp at Robotics Stack Exchange
|
lidar_processor_cpp package from go2_ros2_sdk repococo_detector go2_interfaces go2_robot_sdk lidar_processor lidar_processor_cpp speech_processor |
ROS Distro
|
Package Summary
| Tags | No category tags. |
| Version | 1.0.0 |
| License | BSD-3-Clause |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | Unofficial ROS2 SDK support for Unitree GO2 AIR/PRO/EDU |
| Checkout URI | https://github.com/abizovnuralem/go2_ros2_sdk.git |
| VCS Type | git |
| VCS Version | master |
| Last Updated | 2025-10-31 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Tags | ros ros2 go2 unitree unitree-go2 |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- brimo
Authors
- brimo
LiDAR Processor C++
High-performance C++ implementation of LiDAR data processing nodes for the Go2 robot. This package provides optimized C++ versions of the Python LiDAR processing nodes with identical functionality, topics, and parameters.
Features
- High Performance: Optimized C++ implementation using PCL (Point Cloud Library)
- Memory Efficient: Advanced point cloud aggregation with memory management
- Thread Safe: Thread-safe operations for concurrent data processing
- Statistical Filtering: Built-in outlier removal using statistical analysis
- Compatible: Drop-in replacement for Python lidar_processor nodes
Nodes
1. lidar_to_pointcloud_node
Processes raw LiDAR data and aggregates point clouds with optional map saving.
Topics:
-
Subscribed:
-
/robot0/point_cloud2(single robot mode) -
/robot{i}/point_cloud2(multi-robot mode)
-
-
Published:
-
/pointcloud/aggregated- Aggregated point cloud data
-
Parameters:
-
robot_ip_lst(string_array): List of robot IP addresses -
map_name(string): Name of the map file to save (default: “3d_map”) -
map_save(string): Whether to save map periodically (default: “true”) -
save_interval(double): Map saving interval in seconds (default: 10.0) -
max_points(int): Maximum points to keep in memory (default: 1000000) -
voxel_size(double): Voxel size for downsampling when saving (default: 0.01)
2. pointcloud_aggregator_node
Advanced point cloud processing with filtering, downsampling, and statistical outlier removal.
Topics:
-
Subscribed:
-
/pointcloud/aggregated- Raw aggregated point clouds
-
-
Published:
-
/pointcloud/filtered- Filtered point clouds -
/pointcloud/downsampled- Downsampled point clouds
-
Parameters:
-
max_range(double): Maximum range from robot center in meters (default: 20.0) -
min_range(double): Minimum range from robot center in meters (default: 0.1) -
height_filter_min(double): Minimum height filter (z-coordinate) (default: -2.0) -
height_filter_max(double): Maximum height filter (z-coordinate) (default: 3.0) -
downsample_rate(int): Keep every Nth point for downsampling (default: 10) -
publish_rate(double): Publishing rate in Hz (default: 5.0)
Building
# From your ROS2 workspace
colcon build --packages-select lidar_processor_cpp
Usage
Single Node Launch
Launch individual nodes:
# Launch LiDAR to PointCloud processor
ros2 launch lidar_processor_cpp lidar_to_pointcloud.launch.py
# Launch PointCloud Aggregator
ros2 launch lidar_processor_cpp pointcloud_aggregator.launch.py
Complete Pipeline Launch
Launch the complete processing pipeline:
ros2 launch lidar_processor_cpp lidar_processing_pipeline.launch.py
Custom Parameters
Launch with custom parameters:
ros2 launch lidar_processor_cpp lidar_processing_pipeline.launch.py \
robot_ip_lst:="['192.168.1.100']" \
map_name:="my_custom_map" \
max_range:=15.0 \
publish_rate:=10.0
Dependencies
-
ROS2 Dependencies:
rclcppsensor_msgsgeometry_msgsstd_msgs
File truncated at 100 lines see the full file
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| ament_lint_auto | |
| ament_lint_common | |
| rclcpp | |
| sensor_msgs | |
| geometry_msgs | |
| std_msgs | |
| pcl_ros | |
| pcl_conversions | |
| tf2 | |
| tf2_ros |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged lidar_processor_cpp at Robotics Stack Exchange
|
lidar_processor_cpp package from go2_ros2_sdk repococo_detector go2_interfaces go2_robot_sdk lidar_processor lidar_processor_cpp speech_processor |
ROS Distro
|
Package Summary
| Tags | No category tags. |
| Version | 1.0.0 |
| License | BSD-3-Clause |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | Unofficial ROS2 SDK support for Unitree GO2 AIR/PRO/EDU |
| Checkout URI | https://github.com/abizovnuralem/go2_ros2_sdk.git |
| VCS Type | git |
| VCS Version | master |
| Last Updated | 2025-10-31 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Tags | ros ros2 go2 unitree unitree-go2 |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- brimo
Authors
- brimo
LiDAR Processor C++
High-performance C++ implementation of LiDAR data processing nodes for the Go2 robot. This package provides optimized C++ versions of the Python LiDAR processing nodes with identical functionality, topics, and parameters.
Features
- High Performance: Optimized C++ implementation using PCL (Point Cloud Library)
- Memory Efficient: Advanced point cloud aggregation with memory management
- Thread Safe: Thread-safe operations for concurrent data processing
- Statistical Filtering: Built-in outlier removal using statistical analysis
- Compatible: Drop-in replacement for Python lidar_processor nodes
Nodes
1. lidar_to_pointcloud_node
Processes raw LiDAR data and aggregates point clouds with optional map saving.
Topics:
-
Subscribed:
-
/robot0/point_cloud2(single robot mode) -
/robot{i}/point_cloud2(multi-robot mode)
-
-
Published:
-
/pointcloud/aggregated- Aggregated point cloud data
-
Parameters:
-
robot_ip_lst(string_array): List of robot IP addresses -
map_name(string): Name of the map file to save (default: “3d_map”) -
map_save(string): Whether to save map periodically (default: “true”) -
save_interval(double): Map saving interval in seconds (default: 10.0) -
max_points(int): Maximum points to keep in memory (default: 1000000) -
voxel_size(double): Voxel size for downsampling when saving (default: 0.01)
2. pointcloud_aggregator_node
Advanced point cloud processing with filtering, downsampling, and statistical outlier removal.
Topics:
-
Subscribed:
-
/pointcloud/aggregated- Raw aggregated point clouds
-
-
Published:
-
/pointcloud/filtered- Filtered point clouds -
/pointcloud/downsampled- Downsampled point clouds
-
Parameters:
-
max_range(double): Maximum range from robot center in meters (default: 20.0) -
min_range(double): Minimum range from robot center in meters (default: 0.1) -
height_filter_min(double): Minimum height filter (z-coordinate) (default: -2.0) -
height_filter_max(double): Maximum height filter (z-coordinate) (default: 3.0) -
downsample_rate(int): Keep every Nth point for downsampling (default: 10) -
publish_rate(double): Publishing rate in Hz (default: 5.0)
Building
# From your ROS2 workspace
colcon build --packages-select lidar_processor_cpp
Usage
Single Node Launch
Launch individual nodes:
# Launch LiDAR to PointCloud processor
ros2 launch lidar_processor_cpp lidar_to_pointcloud.launch.py
# Launch PointCloud Aggregator
ros2 launch lidar_processor_cpp pointcloud_aggregator.launch.py
Complete Pipeline Launch
Launch the complete processing pipeline:
ros2 launch lidar_processor_cpp lidar_processing_pipeline.launch.py
Custom Parameters
Launch with custom parameters:
ros2 launch lidar_processor_cpp lidar_processing_pipeline.launch.py \
robot_ip_lst:="['192.168.1.100']" \
map_name:="my_custom_map" \
max_range:=15.0 \
publish_rate:=10.0
Dependencies
-
ROS2 Dependencies:
rclcppsensor_msgsgeometry_msgsstd_msgs
File truncated at 100 lines see the full file
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| ament_lint_auto | |
| ament_lint_common | |
| rclcpp | |
| sensor_msgs | |
| geometry_msgs | |
| std_msgs | |
| pcl_ros | |
| pcl_conversions | |
| tf2 | |
| tf2_ros |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged lidar_processor_cpp at Robotics Stack Exchange
|
lidar_processor_cpp package from go2_ros2_sdk repococo_detector go2_interfaces go2_robot_sdk lidar_processor lidar_processor_cpp speech_processor |
ROS Distro
|
Package Summary
| Tags | No category tags. |
| Version | 1.0.0 |
| License | BSD-3-Clause |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | Unofficial ROS2 SDK support for Unitree GO2 AIR/PRO/EDU |
| Checkout URI | https://github.com/abizovnuralem/go2_ros2_sdk.git |
| VCS Type | git |
| VCS Version | master |
| Last Updated | 2025-10-31 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Tags | ros ros2 go2 unitree unitree-go2 |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- brimo
Authors
- brimo
LiDAR Processor C++
High-performance C++ implementation of LiDAR data processing nodes for the Go2 robot. This package provides optimized C++ versions of the Python LiDAR processing nodes with identical functionality, topics, and parameters.
Features
- High Performance: Optimized C++ implementation using PCL (Point Cloud Library)
- Memory Efficient: Advanced point cloud aggregation with memory management
- Thread Safe: Thread-safe operations for concurrent data processing
- Statistical Filtering: Built-in outlier removal using statistical analysis
- Compatible: Drop-in replacement for Python lidar_processor nodes
Nodes
1. lidar_to_pointcloud_node
Processes raw LiDAR data and aggregates point clouds with optional map saving.
Topics:
-
Subscribed:
-
/robot0/point_cloud2(single robot mode) -
/robot{i}/point_cloud2(multi-robot mode)
-
-
Published:
-
/pointcloud/aggregated- Aggregated point cloud data
-
Parameters:
-
robot_ip_lst(string_array): List of robot IP addresses -
map_name(string): Name of the map file to save (default: “3d_map”) -
map_save(string): Whether to save map periodically (default: “true”) -
save_interval(double): Map saving interval in seconds (default: 10.0) -
max_points(int): Maximum points to keep in memory (default: 1000000) -
voxel_size(double): Voxel size for downsampling when saving (default: 0.01)
2. pointcloud_aggregator_node
Advanced point cloud processing with filtering, downsampling, and statistical outlier removal.
Topics:
-
Subscribed:
-
/pointcloud/aggregated- Raw aggregated point clouds
-
-
Published:
-
/pointcloud/filtered- Filtered point clouds -
/pointcloud/downsampled- Downsampled point clouds
-
Parameters:
-
max_range(double): Maximum range from robot center in meters (default: 20.0) -
min_range(double): Minimum range from robot center in meters (default: 0.1) -
height_filter_min(double): Minimum height filter (z-coordinate) (default: -2.0) -
height_filter_max(double): Maximum height filter (z-coordinate) (default: 3.0) -
downsample_rate(int): Keep every Nth point for downsampling (default: 10) -
publish_rate(double): Publishing rate in Hz (default: 5.0)
Building
# From your ROS2 workspace
colcon build --packages-select lidar_processor_cpp
Usage
Single Node Launch
Launch individual nodes:
# Launch LiDAR to PointCloud processor
ros2 launch lidar_processor_cpp lidar_to_pointcloud.launch.py
# Launch PointCloud Aggregator
ros2 launch lidar_processor_cpp pointcloud_aggregator.launch.py
Complete Pipeline Launch
Launch the complete processing pipeline:
ros2 launch lidar_processor_cpp lidar_processing_pipeline.launch.py
Custom Parameters
Launch with custom parameters:
ros2 launch lidar_processor_cpp lidar_processing_pipeline.launch.py \
robot_ip_lst:="['192.168.1.100']" \
map_name:="my_custom_map" \
max_range:=15.0 \
publish_rate:=10.0
Dependencies
-
ROS2 Dependencies:
rclcppsensor_msgsgeometry_msgsstd_msgs
File truncated at 100 lines see the full file
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| ament_lint_auto | |
| ament_lint_common | |
| rclcpp | |
| sensor_msgs | |
| geometry_msgs | |
| std_msgs | |
| pcl_ros | |
| pcl_conversions | |
| tf2 | |
| tf2_ros |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged lidar_processor_cpp at Robotics Stack Exchange
|
lidar_processor_cpp package from go2_ros2_sdk repococo_detector go2_interfaces go2_robot_sdk lidar_processor lidar_processor_cpp speech_processor |
ROS Distro
|
Package Summary
| Tags | No category tags. |
| Version | 1.0.0 |
| License | BSD-3-Clause |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | Unofficial ROS2 SDK support for Unitree GO2 AIR/PRO/EDU |
| Checkout URI | https://github.com/abizovnuralem/go2_ros2_sdk.git |
| VCS Type | git |
| VCS Version | master |
| Last Updated | 2025-10-31 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Tags | ros ros2 go2 unitree unitree-go2 |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- brimo
Authors
- brimo
LiDAR Processor C++
High-performance C++ implementation of LiDAR data processing nodes for the Go2 robot. This package provides optimized C++ versions of the Python LiDAR processing nodes with identical functionality, topics, and parameters.
Features
- High Performance: Optimized C++ implementation using PCL (Point Cloud Library)
- Memory Efficient: Advanced point cloud aggregation with memory management
- Thread Safe: Thread-safe operations for concurrent data processing
- Statistical Filtering: Built-in outlier removal using statistical analysis
- Compatible: Drop-in replacement for Python lidar_processor nodes
Nodes
1. lidar_to_pointcloud_node
Processes raw LiDAR data and aggregates point clouds with optional map saving.
Topics:
-
Subscribed:
-
/robot0/point_cloud2(single robot mode) -
/robot{i}/point_cloud2(multi-robot mode)
-
-
Published:
-
/pointcloud/aggregated- Aggregated point cloud data
-
Parameters:
-
robot_ip_lst(string_array): List of robot IP addresses -
map_name(string): Name of the map file to save (default: “3d_map”) -
map_save(string): Whether to save map periodically (default: “true”) -
save_interval(double): Map saving interval in seconds (default: 10.0) -
max_points(int): Maximum points to keep in memory (default: 1000000) -
voxel_size(double): Voxel size for downsampling when saving (default: 0.01)
2. pointcloud_aggregator_node
Advanced point cloud processing with filtering, downsampling, and statistical outlier removal.
Topics:
-
Subscribed:
-
/pointcloud/aggregated- Raw aggregated point clouds
-
-
Published:
-
/pointcloud/filtered- Filtered point clouds -
/pointcloud/downsampled- Downsampled point clouds
-
Parameters:
-
max_range(double): Maximum range from robot center in meters (default: 20.0) -
min_range(double): Minimum range from robot center in meters (default: 0.1) -
height_filter_min(double): Minimum height filter (z-coordinate) (default: -2.0) -
height_filter_max(double): Maximum height filter (z-coordinate) (default: 3.0) -
downsample_rate(int): Keep every Nth point for downsampling (default: 10) -
publish_rate(double): Publishing rate in Hz (default: 5.0)
Building
# From your ROS2 workspace
colcon build --packages-select lidar_processor_cpp
Usage
Single Node Launch
Launch individual nodes:
# Launch LiDAR to PointCloud processor
ros2 launch lidar_processor_cpp lidar_to_pointcloud.launch.py
# Launch PointCloud Aggregator
ros2 launch lidar_processor_cpp pointcloud_aggregator.launch.py
Complete Pipeline Launch
Launch the complete processing pipeline:
ros2 launch lidar_processor_cpp lidar_processing_pipeline.launch.py
Custom Parameters
Launch with custom parameters:
ros2 launch lidar_processor_cpp lidar_processing_pipeline.launch.py \
robot_ip_lst:="['192.168.1.100']" \
map_name:="my_custom_map" \
max_range:=15.0 \
publish_rate:=10.0
Dependencies
-
ROS2 Dependencies:
rclcppsensor_msgsgeometry_msgsstd_msgs
File truncated at 100 lines see the full file
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| ament_lint_auto | |
| ament_lint_common | |
| rclcpp | |
| sensor_msgs | |
| geometry_msgs | |
| std_msgs | |
| pcl_ros | |
| pcl_conversions | |
| tf2 | |
| tf2_ros |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged lidar_processor_cpp at Robotics Stack Exchange
|
lidar_processor_cpp package from go2_ros2_sdk repococo_detector go2_interfaces go2_robot_sdk lidar_processor lidar_processor_cpp speech_processor |
ROS Distro
|
Package Summary
| Tags | No category tags. |
| Version | 1.0.0 |
| License | BSD-3-Clause |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | Unofficial ROS2 SDK support for Unitree GO2 AIR/PRO/EDU |
| Checkout URI | https://github.com/abizovnuralem/go2_ros2_sdk.git |
| VCS Type | git |
| VCS Version | master |
| Last Updated | 2025-10-31 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Tags | ros ros2 go2 unitree unitree-go2 |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- brimo
Authors
- brimo
LiDAR Processor C++
High-performance C++ implementation of LiDAR data processing nodes for the Go2 robot. This package provides optimized C++ versions of the Python LiDAR processing nodes with identical functionality, topics, and parameters.
Features
- High Performance: Optimized C++ implementation using PCL (Point Cloud Library)
- Memory Efficient: Advanced point cloud aggregation with memory management
- Thread Safe: Thread-safe operations for concurrent data processing
- Statistical Filtering: Built-in outlier removal using statistical analysis
- Compatible: Drop-in replacement for Python lidar_processor nodes
Nodes
1. lidar_to_pointcloud_node
Processes raw LiDAR data and aggregates point clouds with optional map saving.
Topics:
-
Subscribed:
-
/robot0/point_cloud2(single robot mode) -
/robot{i}/point_cloud2(multi-robot mode)
-
-
Published:
-
/pointcloud/aggregated- Aggregated point cloud data
-
Parameters:
-
robot_ip_lst(string_array): List of robot IP addresses -
map_name(string): Name of the map file to save (default: “3d_map”) -
map_save(string): Whether to save map periodically (default: “true”) -
save_interval(double): Map saving interval in seconds (default: 10.0) -
max_points(int): Maximum points to keep in memory (default: 1000000) -
voxel_size(double): Voxel size for downsampling when saving (default: 0.01)
2. pointcloud_aggregator_node
Advanced point cloud processing with filtering, downsampling, and statistical outlier removal.
Topics:
-
Subscribed:
-
/pointcloud/aggregated- Raw aggregated point clouds
-
-
Published:
-
/pointcloud/filtered- Filtered point clouds -
/pointcloud/downsampled- Downsampled point clouds
-
Parameters:
-
max_range(double): Maximum range from robot center in meters (default: 20.0) -
min_range(double): Minimum range from robot center in meters (default: 0.1) -
height_filter_min(double): Minimum height filter (z-coordinate) (default: -2.0) -
height_filter_max(double): Maximum height filter (z-coordinate) (default: 3.0) -
downsample_rate(int): Keep every Nth point for downsampling (default: 10) -
publish_rate(double): Publishing rate in Hz (default: 5.0)
Building
# From your ROS2 workspace
colcon build --packages-select lidar_processor_cpp
Usage
Single Node Launch
Launch individual nodes:
# Launch LiDAR to PointCloud processor
ros2 launch lidar_processor_cpp lidar_to_pointcloud.launch.py
# Launch PointCloud Aggregator
ros2 launch lidar_processor_cpp pointcloud_aggregator.launch.py
Complete Pipeline Launch
Launch the complete processing pipeline:
ros2 launch lidar_processor_cpp lidar_processing_pipeline.launch.py
Custom Parameters
Launch with custom parameters:
ros2 launch lidar_processor_cpp lidar_processing_pipeline.launch.py \
robot_ip_lst:="['192.168.1.100']" \
map_name:="my_custom_map" \
max_range:=15.0 \
publish_rate:=10.0
Dependencies
-
ROS2 Dependencies:
rclcppsensor_msgsgeometry_msgsstd_msgs
File truncated at 100 lines see the full file
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| ament_lint_auto | |
| ament_lint_common | |
| rclcpp | |
| sensor_msgs | |
| geometry_msgs | |
| std_msgs | |
| pcl_ros | |
| pcl_conversions | |
| tf2 | |
| tf2_ros |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged lidar_processor_cpp at Robotics Stack Exchange
|
lidar_processor_cpp package from go2_ros2_sdk repococo_detector go2_interfaces go2_robot_sdk lidar_processor lidar_processor_cpp speech_processor |
ROS Distro
|
Package Summary
| Tags | No category tags. |
| Version | 1.0.0 |
| License | BSD-3-Clause |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | Unofficial ROS2 SDK support for Unitree GO2 AIR/PRO/EDU |
| Checkout URI | https://github.com/abizovnuralem/go2_ros2_sdk.git |
| VCS Type | git |
| VCS Version | master |
| Last Updated | 2025-10-31 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Tags | ros ros2 go2 unitree unitree-go2 |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- brimo
Authors
- brimo
LiDAR Processor C++
High-performance C++ implementation of LiDAR data processing nodes for the Go2 robot. This package provides optimized C++ versions of the Python LiDAR processing nodes with identical functionality, topics, and parameters.
Features
- High Performance: Optimized C++ implementation using PCL (Point Cloud Library)
- Memory Efficient: Advanced point cloud aggregation with memory management
- Thread Safe: Thread-safe operations for concurrent data processing
- Statistical Filtering: Built-in outlier removal using statistical analysis
- Compatible: Drop-in replacement for Python lidar_processor nodes
Nodes
1. lidar_to_pointcloud_node
Processes raw LiDAR data and aggregates point clouds with optional map saving.
Topics:
-
Subscribed:
-
/robot0/point_cloud2(single robot mode) -
/robot{i}/point_cloud2(multi-robot mode)
-
-
Published:
-
/pointcloud/aggregated- Aggregated point cloud data
-
Parameters:
-
robot_ip_lst(string_array): List of robot IP addresses -
map_name(string): Name of the map file to save (default: “3d_map”) -
map_save(string): Whether to save map periodically (default: “true”) -
save_interval(double): Map saving interval in seconds (default: 10.0) -
max_points(int): Maximum points to keep in memory (default: 1000000) -
voxel_size(double): Voxel size for downsampling when saving (default: 0.01)
2. pointcloud_aggregator_node
Advanced point cloud processing with filtering, downsampling, and statistical outlier removal.
Topics:
-
Subscribed:
-
/pointcloud/aggregated- Raw aggregated point clouds
-
-
Published:
-
/pointcloud/filtered- Filtered point clouds -
/pointcloud/downsampled- Downsampled point clouds
-
Parameters:
-
max_range(double): Maximum range from robot center in meters (default: 20.0) -
min_range(double): Minimum range from robot center in meters (default: 0.1) -
height_filter_min(double): Minimum height filter (z-coordinate) (default: -2.0) -
height_filter_max(double): Maximum height filter (z-coordinate) (default: 3.0) -
downsample_rate(int): Keep every Nth point for downsampling (default: 10) -
publish_rate(double): Publishing rate in Hz (default: 5.0)
Building
# From your ROS2 workspace
colcon build --packages-select lidar_processor_cpp
Usage
Single Node Launch
Launch individual nodes:
# Launch LiDAR to PointCloud processor
ros2 launch lidar_processor_cpp lidar_to_pointcloud.launch.py
# Launch PointCloud Aggregator
ros2 launch lidar_processor_cpp pointcloud_aggregator.launch.py
Complete Pipeline Launch
Launch the complete processing pipeline:
ros2 launch lidar_processor_cpp lidar_processing_pipeline.launch.py
Custom Parameters
Launch with custom parameters:
ros2 launch lidar_processor_cpp lidar_processing_pipeline.launch.py \
robot_ip_lst:="['192.168.1.100']" \
map_name:="my_custom_map" \
max_range:=15.0 \
publish_rate:=10.0
Dependencies
-
ROS2 Dependencies:
rclcppsensor_msgsgeometry_msgsstd_msgs
File truncated at 100 lines see the full file
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| ament_lint_auto | |
| ament_lint_common | |
| rclcpp | |
| sensor_msgs | |
| geometry_msgs | |
| std_msgs | |
| pcl_ros | |
| pcl_conversions | |
| tf2 | |
| tf2_ros |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged lidar_processor_cpp at Robotics Stack Exchange
|
lidar_processor_cpp package from go2_ros2_sdk repococo_detector go2_interfaces go2_robot_sdk lidar_processor lidar_processor_cpp speech_processor |
ROS Distro
|
Package Summary
| Tags | No category tags. |
| Version | 1.0.0 |
| License | BSD-3-Clause |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | Unofficial ROS2 SDK support for Unitree GO2 AIR/PRO/EDU |
| Checkout URI | https://github.com/abizovnuralem/go2_ros2_sdk.git |
| VCS Type | git |
| VCS Version | master |
| Last Updated | 2025-10-31 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Tags | ros ros2 go2 unitree unitree-go2 |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- brimo
Authors
- brimo
LiDAR Processor C++
High-performance C++ implementation of LiDAR data processing nodes for the Go2 robot. This package provides optimized C++ versions of the Python LiDAR processing nodes with identical functionality, topics, and parameters.
Features
- High Performance: Optimized C++ implementation using PCL (Point Cloud Library)
- Memory Efficient: Advanced point cloud aggregation with memory management
- Thread Safe: Thread-safe operations for concurrent data processing
- Statistical Filtering: Built-in outlier removal using statistical analysis
- Compatible: Drop-in replacement for Python lidar_processor nodes
Nodes
1. lidar_to_pointcloud_node
Processes raw LiDAR data and aggregates point clouds with optional map saving.
Topics:
-
Subscribed:
-
/robot0/point_cloud2(single robot mode) -
/robot{i}/point_cloud2(multi-robot mode)
-
-
Published:
-
/pointcloud/aggregated- Aggregated point cloud data
-
Parameters:
-
robot_ip_lst(string_array): List of robot IP addresses -
map_name(string): Name of the map file to save (default: “3d_map”) -
map_save(string): Whether to save map periodically (default: “true”) -
save_interval(double): Map saving interval in seconds (default: 10.0) -
max_points(int): Maximum points to keep in memory (default: 1000000) -
voxel_size(double): Voxel size for downsampling when saving (default: 0.01)
2. pointcloud_aggregator_node
Advanced point cloud processing with filtering, downsampling, and statistical outlier removal.
Topics:
-
Subscribed:
-
/pointcloud/aggregated- Raw aggregated point clouds
-
-
Published:
-
/pointcloud/filtered- Filtered point clouds -
/pointcloud/downsampled- Downsampled point clouds
-
Parameters:
-
max_range(double): Maximum range from robot center in meters (default: 20.0) -
min_range(double): Minimum range from robot center in meters (default: 0.1) -
height_filter_min(double): Minimum height filter (z-coordinate) (default: -2.0) -
height_filter_max(double): Maximum height filter (z-coordinate) (default: 3.0) -
downsample_rate(int): Keep every Nth point for downsampling (default: 10) -
publish_rate(double): Publishing rate in Hz (default: 5.0)
Building
# From your ROS2 workspace
colcon build --packages-select lidar_processor_cpp
Usage
Single Node Launch
Launch individual nodes:
# Launch LiDAR to PointCloud processor
ros2 launch lidar_processor_cpp lidar_to_pointcloud.launch.py
# Launch PointCloud Aggregator
ros2 launch lidar_processor_cpp pointcloud_aggregator.launch.py
Complete Pipeline Launch
Launch the complete processing pipeline:
ros2 launch lidar_processor_cpp lidar_processing_pipeline.launch.py
Custom Parameters
Launch with custom parameters:
ros2 launch lidar_processor_cpp lidar_processing_pipeline.launch.py \
robot_ip_lst:="['192.168.1.100']" \
map_name:="my_custom_map" \
max_range:=15.0 \
publish_rate:=10.0
Dependencies
-
ROS2 Dependencies:
rclcppsensor_msgsgeometry_msgsstd_msgs
File truncated at 100 lines see the full file
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| ament_lint_auto | |
| ament_lint_common | |
| rclcpp | |
| sensor_msgs | |
| geometry_msgs | |
| std_msgs | |
| pcl_ros | |
| pcl_conversions | |
| tf2 | |
| tf2_ros |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged lidar_processor_cpp at Robotics Stack Exchange
|
lidar_processor_cpp package from go2_ros2_sdk repococo_detector go2_interfaces go2_robot_sdk lidar_processor lidar_processor_cpp speech_processor |
ROS Distro
|
Package Summary
| Tags | No category tags. |
| Version | 1.0.0 |
| License | BSD-3-Clause |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | Unofficial ROS2 SDK support for Unitree GO2 AIR/PRO/EDU |
| Checkout URI | https://github.com/abizovnuralem/go2_ros2_sdk.git |
| VCS Type | git |
| VCS Version | master |
| Last Updated | 2025-10-31 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Tags | ros ros2 go2 unitree unitree-go2 |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- brimo
Authors
- brimo
LiDAR Processor C++
High-performance C++ implementation of LiDAR data processing nodes for the Go2 robot. This package provides optimized C++ versions of the Python LiDAR processing nodes with identical functionality, topics, and parameters.
Features
- High Performance: Optimized C++ implementation using PCL (Point Cloud Library)
- Memory Efficient: Advanced point cloud aggregation with memory management
- Thread Safe: Thread-safe operations for concurrent data processing
- Statistical Filtering: Built-in outlier removal using statistical analysis
- Compatible: Drop-in replacement for Python lidar_processor nodes
Nodes
1. lidar_to_pointcloud_node
Processes raw LiDAR data and aggregates point clouds with optional map saving.
Topics:
-
Subscribed:
-
/robot0/point_cloud2(single robot mode) -
/robot{i}/point_cloud2(multi-robot mode)
-
-
Published:
-
/pointcloud/aggregated- Aggregated point cloud data
-
Parameters:
-
robot_ip_lst(string_array): List of robot IP addresses -
map_name(string): Name of the map file to save (default: “3d_map”) -
map_save(string): Whether to save map periodically (default: “true”) -
save_interval(double): Map saving interval in seconds (default: 10.0) -
max_points(int): Maximum points to keep in memory (default: 1000000) -
voxel_size(double): Voxel size for downsampling when saving (default: 0.01)
2. pointcloud_aggregator_node
Advanced point cloud processing with filtering, downsampling, and statistical outlier removal.
Topics:
-
Subscribed:
-
/pointcloud/aggregated- Raw aggregated point clouds
-
-
Published:
-
/pointcloud/filtered- Filtered point clouds -
/pointcloud/downsampled- Downsampled point clouds
-
Parameters:
-
max_range(double): Maximum range from robot center in meters (default: 20.0) -
min_range(double): Minimum range from robot center in meters (default: 0.1) -
height_filter_min(double): Minimum height filter (z-coordinate) (default: -2.0) -
height_filter_max(double): Maximum height filter (z-coordinate) (default: 3.0) -
downsample_rate(int): Keep every Nth point for downsampling (default: 10) -
publish_rate(double): Publishing rate in Hz (default: 5.0)
Building
# From your ROS2 workspace
colcon build --packages-select lidar_processor_cpp
Usage
Single Node Launch
Launch individual nodes:
# Launch LiDAR to PointCloud processor
ros2 launch lidar_processor_cpp lidar_to_pointcloud.launch.py
# Launch PointCloud Aggregator
ros2 launch lidar_processor_cpp pointcloud_aggregator.launch.py
Complete Pipeline Launch
Launch the complete processing pipeline:
ros2 launch lidar_processor_cpp lidar_processing_pipeline.launch.py
Custom Parameters
Launch with custom parameters:
ros2 launch lidar_processor_cpp lidar_processing_pipeline.launch.py \
robot_ip_lst:="['192.168.1.100']" \
map_name:="my_custom_map" \
max_range:=15.0 \
publish_rate:=10.0
Dependencies
-
ROS2 Dependencies:
rclcppsensor_msgsgeometry_msgsstd_msgs
File truncated at 100 lines see the full file
Package Dependencies
| Deps | Name |
|---|---|
| ament_cmake | |
| ament_lint_auto | |
| ament_lint_common | |
| rclcpp | |
| sensor_msgs | |
| geometry_msgs | |
| std_msgs | |
| pcl_ros | |
| pcl_conversions | |
| tf2 | |
| tf2_ros |