RealSense L515相机使用踩坑记录

Realsense Viewer以及ROS驱动安装

要想通过ROS驱动Realsense系列产品,需要首先安装Realsense Viewer以及对应版本的realsense-ros驱动。

Realsense Viewer安装

Realsense Viewer的安装参考文章Linex Ubuntu环境下 Intel Realsense D435I 驱动+ROS驱动安装配置

  1. 安装依赖项
bash 复制代码
sudo apt-get update
sudo apt-get install libudev-dev libgtk-3-dev libusb-1.0-0-dev pkg-config libglfw3-dev libssl-dev
  1. 前往https://github.com/IntelRealSense/librealsense/releases下载librealsense,需要注意下载的版本,仅2.50.0之前的版本支持L515,所以需要下载2.50.0之前的版本
  2. 编译及安装
bash 复制代码
cd librealsense
sudo cp config/99-realsense-libusb.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules && udevadm trigger
mkdir build
cd build
cmake ../ -DBUILD_EXAMPLES=true
make -j8
sudo make install
  1. 检测是否安装成功
    打开终端,通过realsense-viewer启动,观察是否能查看到相机图像

Realsense-ros驱动安装

推荐通过源码安装

  1. 创建工作空间
bash 复制代码
cd
mkdir ros-realsense_ws && cd ros-realsense_ws
mkdir src && cd src
  1. 克隆源代码
bash 复制代码
https://github.com/IntelRealSense/realsense-ros.git

根据自己的需求切换ROS1或者ROS2分支

bash 复制代码
git checkout ros1-legacy
  1. 编译
bash 复制代码
catkin_make

Resource not found: rgbd_launch

如果启动rs_rgbd.launch时报错Resource not found: rgbd_launch,这是因为rs_rgbd.launch中启动了一些ROS中自带的功能包,当你没有安装这些功能包时就会报这个错误,直接安装即可,记得将melodic切换为自己需要的ros版本

bash 复制代码
sudo apt-get install ros-melodic-rgbd-launch

压缩深度图的Rviz报错与无法读取问题

当使用Realsense-ros对L515进行驱动时,会遇到深度图的压缩图在Rviz无法可视化、无法从其中恢复出可用数据的问题,其原因是L515产生的深度图为16位,但是采用的压缩方式为8位有损JPEG压缩,压缩算法会将16位的图像按照8位图像进行处理,导致压缩算法根本无法"理解"图像中的内容,而JPEG压缩算法本身为有损压缩算法,在压缩算法无法"理解"图像内容的前提下,有损压缩会损坏原始数据,从而导致压缩深度图出错。

解决方法:更改压缩方式为16位无损PNG压缩

bash 复制代码
<param name="color/image_raw/compressed/format" value="png"/>
<param name="color/image_raw/compressed/png_level" value="1"/>

其中第一个参数为压缩格式,可选项为png和jpeg,第二个参数为压缩级别,0 表示无压缩,处理速度最快,文件最大;9 表示最高压缩级别,处理速度较慢,但文件最小。如果参数修改后无效,请参考下一小节"参数修改"。

参数修改

因为L515的驱动程序rs_rgbd.launch中不仅启动了当前功能包中的节点,还启动了一下ROS中自带的节点,因此在设置参数时记得将参数写在launch文件的最前面,否则ROS自带节点可能会无法读取到该参数。

软件对齐与硬件对齐

官方提供的rs_rgbd.launch中提供了将RGB图像与深度图像对齐到同一坐标系的选项,其中如果将align_depth置为true,则为在硬件中对齐;如果将其置为false,则为软件对齐

相关推荐
v_JULY_v3 小时前
ReKep——李飞飞团队提出的新一代机器人操作方法:基于视觉语言模型和关键点约束
机器人·具身智能·视觉语言大模型·rekep·关键点约束
Java追光着15 小时前
基于扣子(Coze)打造第一个智能体——个性化对话机器人
人工智能·机器人·扣子
shuxianshrng16 小时前
鹰眼降尘模型
大数据·服务器·人工智能·经验分享·机器人
范范08251 天前
基于NLP的对话系统开发:从零构建智能客服机器人
人工智能·自然语言处理·机器人
网易足已2 天前
机器人的静力分析与动力学
机器人
Karen_bluu2 天前
ROS2 Humble如何初步使用Livox-mid-360激光雷达 (viewer/rviz)以及解决一些问题
ubuntu·机器人
火山引擎边缘云2 天前
火山引擎携手地瓜机器人,加速大模型在机器人场景规模落地
人工智能·物联网·机器人·iot·火山引擎
云卓科技2 天前
无人机之遥控器工作频率篇
科技·安全·机器人·无人机·制造
林九生3 天前
【Django】Django AI 聊天机器人项目:基于 ChatGPT 的 Django REST API
人工智能·机器人·django
天行健王春城老师3 天前
基于TRIZ的救援机器人轻量化设计
机器人