ROS读取激光雷达点云数据(RS-Lidar为例)

2023-05-16

一、准备工作:

1、安装ROS (含有rviz);

2、安装pcl-ros。

    pcl(Point Cloud Library)-ros  是ROS中点云和3D几何处理的接口和工具。

   如果安装的是ros-kinetic-desktop版本,默认不包含pcl-ros,在rviz中无法显示点云。

   安装方法:

sudo apt-get install libpcap-dev #安装依赖
sudo apt-get install ros-kinetic-pcl-ros

  显示:

sudo apt-get install ros-kinetic-pcl-ros
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
  libflann-dev libflann1.8 libopenni-dev libopenni-sensor-pointclouds0
  libopenni0 libpcl-apps1.7 libpcl-common1.7 libpcl-dev libpcl-features1.7
  libpcl-filters1.7 libpcl-io1.7 libpcl-kdtree1.7 libpcl-keypoints1.7
  libpcl-octree1.7 libpcl-outofcore1.7 libpcl-people1.7 libpcl-recognition1.7
  libpcl-registration1.7 libpcl-sample-consensus1.7 libpcl-search1.7
  libpcl-segmentation1.7 libpcl-surface1.7 libpcl-tracking1.7
  libpcl-visualization1.7 libpcl1.7 openni-utils ros-kinetic-pcl-conversions
  ros-kinetic-pcl-msgs ros-kinetic-tf2-eigen
Suggested packages:
  openni-doc libpcl-doc
The following NEW packages will be installed:
  libflann-dev libflann1.8 libopenni-dev libopenni-sensor-pointclouds0
  libopenni0 libpcl-apps1.7 libpcl-common1.7 libpcl-dev libpcl-features1.7
  libpcl-filters1.7 libpcl-io1.7 libpcl-kdtree1.7 libpcl-keypoints1.7
  libpcl-octree1.7 libpcl-outofcore1.7 libpcl-people1.7 libpcl-recognition1.7
  libpcl-registration1.7 libpcl-sample-consensus1.7 libpcl-search1.7
  libpcl-segmentation1.7 libpcl-surface1.7 libpcl-tracking1.7
  libpcl-visualization1.7 libpcl1.7 openni-utils ros-kinetic-pcl-conversions
  ros-kinetic-pcl-msgs ros-kinetic-pcl-ros ros-kinetic-tf2-eigen

  如果对pcl-ros感兴趣,可以参考博客学习更多相关资料 https://www.cnblogs.com/qixianyu/p/6607440.html 。

3、安装RSLidar ROS驱动

ROBOSENSE的激光雷达。

mkdir -p ~/rslidar_ws/src 
cd ~/rslidar_ws/src 
git clone https://github.com/RoboSense-LiDAR/ros_rslidar
cd ..
catkin_make #编译和安装

4、录制好的激光点云数据(rosbag格式)

例如:rslidar_test.bag。

 

二、方法:

1、启用主节点

roscore  # 执行所有ROS程序前必须执行的指令

2、发布激光点云

Publisher:

rosbag play rslidar_test.bag

倍速播放:

rosbag play -r 100 rslidar_test.bag #100倍速度播放

bag time存储到txt文件中:

rosbag play -r 100 rslidar_test.bag >> bagtime.txt

 

3、运行

source ~/rslidar_ws/devel/setup.bash  #启用配置,同一个terminal下运行如下命令:
roslaunch rslidar_pointcloud rs_lidar_16.launch  #16表示16线的激光雷达,如果是32线的则运行rs_lidar_32.launch

则rviz被启动,相应的Fixed Frame、PointCloud2已经配置好。

三、其他:

1、查看bag信息

rosbag info rslidar_test.bag

则弹出如下信息:

path:        rslidar_test.bag
version:     2.0
duration:    2hr 23:11s
start:       Jun 23 2019 09:25:22.21 (1560903922.21)
end:         Jun 23 2019 12:51:11.43 (1560916271.43)
size:        13.4 GB
messages:    121634
compression: none [30448/30448 chunks]
types:       rslidar_msgs/rslidarScan [ff6baa58985b528481871cbaf1bb342f]
topics:      rslidar_packets   121634 msgs    : rslidar_msgs/rslidarScan

2、查看话题:

rostopic list

显示出:

/clicked_point
/clock
/diagnostics
/initialpose
/move_base_simple/goal
/rosout  #实质为rosgraph_msgs/Log
/rosout_agg
/rslidar_node/parameter_descriptions
/rslidar_node/parameter_updates
/rslidar_packets
/rslidar_packets_difop
/rslidar_points
/tf
/tf_static

3、查看话题发布速率:

rostopic hz /rslidar_points

4、打印出通道信息:

rostopic echo /rslidar_points

5、查看运行的节点

rosnode list

/play_1563514485981639105
/rosout
/rslidar_node
/rviz_1563514559520415329

 

参考资料:

1. https://www.ncnynl.com/archives/201807/2552.html

2. https://github.com/RoboSense-LiDAR/ros_rslidar/blob/master/doc/readme_cn.md

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ROS读取激光雷达点云数据(RS-Lidar为例) 的相关文章

随机推荐

  • TeeChart控件_动态创建

    在安装目录下找到TeeChartxxxxx ocx 以管理员的身份打开cmd 注册TeeChartxxxxx ocx regsvr32 TeeChartxxxxx ocx VS2015 使用TeeChart绘图控件 CRect rect s
  • Nginx

    Nginx 介绍 Nginx是一款轻量级的Web 服务器 反向代理服务器 电子邮件 xff08 IMAP POP3 xff09 代理服务器 xff0c 并在一个BSD like 协议下发行 由俄罗斯的程序设计师Igor Sysoev所开发
  • 上电自动开机

    上电开机启动是指电脑主机在UPS恢复供电时可以自动开机 该功能必须要求电脑主板型号支持 xff0c 进入电脑的BIOS进行设置使用 不同型号的电脑的BIOS设置会有区别 xff0c 以下仅做参考 xff1a 第一步 xff1a 开机进入BI
  • Linux网络编程【TCP】

    文章目录 TCP特点TCP中CS架构TCP状态转换相关操作函数recv函数send函数 TCP特点 TCP是一种面向广域网的通信协议 xff0c 目的是在跨越多个网络通信时 xff0c 为两个通信端点之间提供一条具有下列特点的通信方式 xf
  • 博客资源整理

    文章目录 STLLinux基础命令linux系统编程Linux网络编程Docker容器技术数据库第三方库的使用Linux编程WebQt STL 基础概念 容器 duque stack map set vector 算法 查找算法 排序算法
  • Qt编译Mysql驱动

    1找到源码 2点击编译会看到报错 1解决方案 下载相关文件 也可以私信发给你 2打开配置文件添加下面的信息 相关文件下载 3点击编译 弹出的框直接关掉就行 4在安装qt的根目录下会生成如下目录 5 找到下面的库 6 将上面的库拷贝到如下目录
  • C++中的异常语法

    文章目录 概述异常的关键子自定义异常使用栈解旋异常的接口声明异常变量的生命周期C 43 43 标准异常库 概述 C语言的异常缺陷在于返回值只有一个 xff0c 可能出现二义性 xff0c 没有统一的标准 C 43 43 中的异常必须有处理
  • 处理鼠标连续点击的问题

    处理鼠标连续点击的问题 span class token comment 上次点击时间点 span DWORD m tmClick span class token punctuation span span class token com
  • FLOPS和FLOPs、GFLOPs区别与计算

    参考FLOPS和FLOPs GFLOPs区别与计算
  • VS远程调试

    文章目录 VS远程调试本地和虚拟机调试准备工作 xff1a 需要注意的几个地方 xff1a VS远程调试 在编程中由于环境 版本等各种原因 xff0c 我们需要模拟出来各种环境来跑不同的版本测试 本地和虚拟机调试 准备工作 xff1a 以V
  • AUTOSAR基础篇之CanNM

    前言 首先 xff0c 问大家几个问题 xff0c 你清楚 xff1a 为什么要引入网络管理呢 xff1f 上电同时启动 xff0c 下电同时关闭 xff0c 它不香吗 xff1f 你知道车上的ECU节点可以分为哪几种类型吗 xff1f 汽
  • CANoe应用案例之DoIP通信

    随着ECU功能和存储容量的不断提高 xff0c 主机厂对于ECU诊断和刷写有了更高的要求 由于带宽的限制 xff0c 传统的汽车总线 xff08 如CAN总线 xff09 存在刷写时间过长的缺点 xff0c 大大降低了生产和维修效率 DoI
  • TRACE32——常用操作

    TRACE 32常用操作 TRACE32软件打开后 xff0c 连上硬件环境 xff0c 我们就可以开始尝试和芯片建立连接 xff0c 并进行基本的调试操作 第一步 xff1a 确认目标板是否上电 第二步 xff1a 打开System Se
  • TRACE32——基于SNOOPer的变量记录

    TRACE32 基于SNOOPer的变量记录 在我们日常调试工作中 xff0c 经常会遇到一种场景 xff1a 对于某些变量或者内存的值 xff0c 希望对其进行监控 当这些变量发生写或者读的时候 xff0c 将这些操作记录下来 xff0c
  • TRACE32——内存填充测试Data.Pattern

    TRACE32 内存填充测试Data Pattern Data Pattern 命令可以用于对内存 xff08 SRAM DDR Flash等 xff09 写入随机值 xff0c 以快速地测试内存是否可以正确读写 命令格式 xff1a 示
  • STM32使用printf重定向

    最近用STM32CubeMX创建了一个demo工程 xff0c 在调试过程中 xff0c printf打印功能一直不能正常打印 xff0c 检查工程中也已将fputc函数进行了实现 奇怪的是用JTAG进行调试时打印恢复了正常 最后发现问题的
  • repo的安装和使用

    前言 Android 采用 Gerrit 提供代码评审服务 xff0c 并且开发了一个客户端工具 repo xff0c 实现多仓库管理 Git 的开发者对服务端的 Git 源码做了扩展 xff0c 使得基于 Git xff08 cgit x
  • repo sync之后不能自动 rebase 的定位

    背景 最近在使用repo sync同步代码时老是报告 xff1a branch xxx is published but not merged and is now 1 commits behind 我之前是由推送过一笔提交 xff0c 但
  • git取指定日期log问题

    库上版本有一个重要bug xff0c 使用了如下命令取一个版本 xff1a repo forall c 39 commitID 61 96 git log before 34 2022 12 09 00 00 00 34 1 pretty
  • ROS读取激光雷达点云数据(RS-Lidar为例)

    一 准备工作 xff1a 1 安装ROS xff08 含有rviz xff09 xff1b 2 安装pcl ros pcl xff08 Point Cloud Library xff09 ros 是ROS中点云和3D几何处理的接口和工具 如