[转发] 用ros从realsense中录制并提取rgb图像

https://blog.csdn.net/listen_to_star/article/details/98972581?ops_request_misc=&request_id=&biz_id=102&utm_term=rosbag%20%E5%BD%95%E5%88%B6realsense&utm_medium=distribute.pc_search_result.none-task-blog-2%7Eall%7Esobaiduweb%7Edefault-0-98972581.first_rank_v2_pc_rank_v29&spm=1018.2226.3001.4187

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要使用ROS C++编写程序来订阅和获取Realsense D455相机的图像、深度图和点云图,首先需要安装ROSRealsense相机的驱动程序,并在ROS工作空间创建一个ROS包。 1. 安装ROSRealsense相机驱动: - 安装ROS:根据官方文档选择合适的ROS版本进行安装。 - 安装Realsense相机驱动:根据Realsense官方文档安装相应的驱动程序,并确保驱动程序与ROS版本兼容。 2. 创建ROS包: 在ROS工作空间的src目录下创建一个新的ROS包,命名为realsense_d455,并使用catkin_make进行编译。 3. 编写订阅图像、深度图和点云图的ROS节点: 在realsense_d455包的src目录下创建一个新的.cpp文件,例如realsense_subscriber.cpp,编写如下ROS节点的代码: ```cpp #include <ros/ros.h> #include <sensor_msgs/Image.h> #include <sensor_msgs/PointCloud2.h> #include <sensor_msgs/PointCloud.h> // 图像回调函数 void imageCallback(const sensor_msgs::ImageConstPtr& msg) { // 在这里处理获取到的图像数据 // ... } // 深度图回调函数 void depthCallback(const sensor_msgs::ImageConstPtr& msg) { // 在这里处理获取到的深度图数据 // ... } // 点云图回调函数 void cloudCallback(const sensor_msgs::PointCloud2ConstPtr& msg) { // 在这里处理获取到的点云图数据 // ... } int main(int argc, char** argv) { ros::init(argc, argv, "realsense_subscriber"); ros::NodeHandle nh; // 创建订阅器 ros::Subscriber image_sub = nh.subscribe("/camera/image", 10, imageCallback); ros::Subscriber depth_sub = nh.subscribe("/camera/depth", 10, depthCallback); ros::Subscriber cloud_sub = nh.subscribe("/camera/point_cloud", 10, cloudCallback); ros::spin(); // 循环监听话题 return 0; } ``` 4. 编译和运行: 在realsense_d455包的根目录下使用catkin_make命令进行编译。编译完成后,使用ROS launch文件启动程序。 综上所述,通过创建一个ROS节点并订阅相应的话题,可以在ROS C++实现订阅和获取Realsense D455相机的图像、深度图和点云图数据。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值