Package Summary
Tags | No category tags. |
Version | 1.1.0 |
License | Apache License 2.0 |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/autowarefoundation/autoware_utils.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-03-07 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
The autoware_utils_pcl package
Additional Links
No additional links.
Maintainers
- Jian Kang
- Ryohsuke Mitsudome
- Esteve Fernandez
- Yutaka Kondo
- Takagi, Isamu
Authors
No additional authors.
autoware_utils_pcl
Overview
The autoware_utils library is a comprehensive toolkit designed to facilitate the development of autonomous driving applications. This package provides essential utilities for point cloud. It is extensively used in the Autoware project to handle common tasks such as point cloud transformations.
Design
-
managed_transform_buffer.hpp
: A managed buffer for handling static and dynamic transforms. -
pcl_conversion.hpp
: Efficient conversion and transformation of PointCloud2 messages to PCL point clouds. -
transforms.hpp
: Efficient methods for transforming and manipulating point clouds.
Example Code Snippets
Transform Point Clouds with ManagedTransformBuffer
#include <autoware_utils_pcl/managed_transform_buffer.hpp>
#include <sensor_msgs/msg/point_cloud2.hpp>
#include <rclcpp/rclcpp.hpp>
int main(int argc, char * argv[])
{
rclcpp::init(argc, argv);
auto node = rclcpp::Node::make_shared("transform_node");
// Initialize ManagedTransformBuffer
autoware_utils::ManagedTransformBuffer transform_buffer(node, false);
// Load point cloud data
sensor_msgs::msg::PointCloud2 cloud_in; // Assume this is populated with data
sensor_msgs::msg::PointCloud2 cloud_out;
// Transform point cloud from "base_link" to "map" frame
if (transform_buffer.transform_pointcloud("map", cloud_in, cloud_out)) {
RCLCPP_INFO(node->get_logger(), "Point cloud transformed successfully.");
} else {
RCLCPP_ERROR(node->get_logger(), "Failed to transform point cloud.");
}
rclcpp::shutdown();
return 0;
}
Efficient Point Cloud Conversion with pcl_conversion.hpp
#include <autoware_utils_pcl/pcl_conversion.hpp>
#include <sensor_msgs/msg/point_cloud2.hpp>
#include <pcl/point_types.h>
#include <pcl/PCLPointCloud2.h>
#include <Eigen/Core>
#include <rclcpp/rclcpp.hpp>
int main(int argc, char * argv[])
{
rclcpp::init(argc, argv);
auto node = rclcpp::Node::make_shared("pcl_conversion_node");
// Load point cloud data
sensor_msgs::msg::PointCloud2 cloud_in; // Assume this is populated with data
pcl::PointCloud<pcl::PointXYZ> pcl_cloud;
// Define transformation matrix
Eigen::Matrix4f transform = Eigen::Matrix4f::Identity();
// Populate transform matrix with actual values
// Convert and transform point cloud
autoware_utils::transform_point_cloud_from_ros_msg(cloud_in, pcl_cloud, transform);
rclcpp::shutdown();
return 0;
}
CHANGELOG
No CHANGELOG found.
Wiki Tutorials
This package does not provide any links to tutorials in it's rosindex metadata.
You can check on the ROS Wiki Tutorials page for the package.
Package Dependencies
Deps | Name |
---|---|
ament_cmake_auto | |
autoware_cmake | |
ament_lint_auto | |
autoware_lint_common | |
autoware_utils_tf | |
pcl_conversions | |
pcl_ros |
System Dependencies
No direct system dependencies.
Dependant Packages
Name | Deps |
---|---|
autoware_utils |
Launch files
No launch files found
Messages
No message files found.
Services
No service files found
Plugins
No plugins found.
Recent questions tagged autoware_utils_pcl at Robotics Stack Exchange
No version for distro jazzy. Known supported distros are highlighted in the buttons above.
Package Summary
Tags | No category tags. |
Version | 1.1.0 |
License | Apache License 2.0 |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/autowarefoundation/autoware_utils.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-03-07 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
The autoware_utils_pcl package
Additional Links
No additional links.
Maintainers
- Jian Kang
- Ryohsuke Mitsudome
- Esteve Fernandez
- Yutaka Kondo
- Takagi, Isamu
Authors
No additional authors.
autoware_utils_pcl
Overview
The autoware_utils library is a comprehensive toolkit designed to facilitate the development of autonomous driving applications. This package provides essential utilities for point cloud. It is extensively used in the Autoware project to handle common tasks such as point cloud transformations.
Design
-
managed_transform_buffer.hpp
: A managed buffer for handling static and dynamic transforms. -
pcl_conversion.hpp
: Efficient conversion and transformation of PointCloud2 messages to PCL point clouds. -
transforms.hpp
: Efficient methods for transforming and manipulating point clouds.
Example Code Snippets
Transform Point Clouds with ManagedTransformBuffer
#include <autoware_utils_pcl/managed_transform_buffer.hpp>
#include <sensor_msgs/msg/point_cloud2.hpp>
#include <rclcpp/rclcpp.hpp>
int main(int argc, char * argv[])
{
rclcpp::init(argc, argv);
auto node = rclcpp::Node::make_shared("transform_node");
// Initialize ManagedTransformBuffer
autoware_utils::ManagedTransformBuffer transform_buffer(node, false);
// Load point cloud data
sensor_msgs::msg::PointCloud2 cloud_in; // Assume this is populated with data
sensor_msgs::msg::PointCloud2 cloud_out;
// Transform point cloud from "base_link" to "map" frame
if (transform_buffer.transform_pointcloud("map", cloud_in, cloud_out)) {
RCLCPP_INFO(node->get_logger(), "Point cloud transformed successfully.");
} else {
RCLCPP_ERROR(node->get_logger(), "Failed to transform point cloud.");
}
rclcpp::shutdown();
return 0;
}
Efficient Point Cloud Conversion with pcl_conversion.hpp
#include <autoware_utils_pcl/pcl_conversion.hpp>
#include <sensor_msgs/msg/point_cloud2.hpp>
#include <pcl/point_types.h>
#include <pcl/PCLPointCloud2.h>
#include <Eigen/Core>
#include <rclcpp/rclcpp.hpp>
int main(int argc, char * argv[])
{
rclcpp::init(argc, argv);
auto node = rclcpp::Node::make_shared("pcl_conversion_node");
// Load point cloud data
sensor_msgs::msg::PointCloud2 cloud_in; // Assume this is populated with data
pcl::PointCloud<pcl::PointXYZ> pcl_cloud;
// Define transformation matrix
Eigen::Matrix4f transform = Eigen::Matrix4f::Identity();
// Populate transform matrix with actual values
// Convert and transform point cloud
autoware_utils::transform_point_cloud_from_ros_msg(cloud_in, pcl_cloud, transform);
rclcpp::shutdown();
return 0;
}
CHANGELOG
No CHANGELOG found.
Wiki Tutorials
This package does not provide any links to tutorials in it's rosindex metadata.
You can check on the ROS Wiki Tutorials page for the package.
Package Dependencies
Deps | Name |
---|---|
ament_cmake_auto | |
autoware_cmake | |
ament_lint_auto | |
autoware_lint_common | |
autoware_utils_tf | |
pcl_conversions | |
pcl_ros |
System Dependencies
No direct system dependencies.
Dependant Packages
Name | Deps |
---|---|
autoware_utils |
Launch files
No launch files found
Messages
No message files found.
Services
No service files found
Plugins
No plugins found.
Recent questions tagged autoware_utils_pcl at Robotics Stack Exchange
No version for distro noetic. Known supported distros are highlighted in the buttons above.
No version for distro ardent. Known supported distros are highlighted in the buttons above.
No version for distro bouncy. Known supported distros are highlighted in the buttons above.
No version for distro crystal. Known supported distros are highlighted in the buttons above.
No version for distro eloquent. Known supported distros are highlighted in the buttons above.
No version for distro dashing. Known supported distros are highlighted in the buttons above.
No version for distro galactic. Known supported distros are highlighted in the buttons above.
No version for distro foxy. Known supported distros are highlighted in the buttons above.
No version for distro iron. Known supported distros are highlighted in the buttons above.
No version for distro lunar. Known supported distros are highlighted in the buttons above.
No version for distro jade. Known supported distros are highlighted in the buttons above.
No version for distro indigo. Known supported distros are highlighted in the buttons above.
No version for distro hydro. Known supported distros are highlighted in the buttons above.
No version for distro kinetic. Known supported distros are highlighted in the buttons above.
No version for distro melodic. Known supported distros are highlighted in the buttons above.