由于T265停产,Intel® RealSense™ SDK 2.0 (v2.54.1) 在该版本中移除了对T265相机的支持,以后的版本也不会支持了。为了继续使用 T265 相机,最好千万不要升级 realsense 相关的 package,但是还有新装机的需求啊。经测试Intel® RealSense™ SDK 2.0 (v2.53.1) 能对 T265 正常支持,因此,本文主要是总结如何安装 v2.53.1 版本的 SDK,经过验证,整理了两种可行方法。
本文的系统环境:ubuntu 18.04,不同系统环境下文中提到包的版本号可能不同,需要结合本文 2.1.3 节中所提的方法自己查询一下。为了方便,文中给出了常见系统环境 ubuntu 18.04 和 ubuntu 20.04 下的安装流程。
测试时间:2023 年 06 月 08 日
注意:安装时,不要将相机连在设备上。
1 缘起
因为本人的强迫症,每天闲来无事就会打开系统的软件更新器
,看看有没有啥需要更新的,经常是鼠标点的比脑子快,结果就悲剧了。反应过来以后,发现 realsense-viewer 的版本号升级了,便去 realsense 的 github 查看了一下releases发行说明,发现 SDK 不再支持 T265
了。真是头大!!!
2 Using pre-build packages(优先推荐)
本文的系统环境:ubuntu 18.04,不同系统环境下文中提到包的版本号可能不同,需要结合本文 2.1.3 节中所提的方法自己查询一下。为了方便,文中给出了常见系统环境 ubuntu 18.04 和 ubuntu 20.04 下的安装步骤。
2.1 电脑、妙算、NUC等 x86架构 设备中的安装
2.1.1 ubuntu 18.04(x86 架构)
Using pre-build packages,该种安装方式是官方优先推荐的安装方式,本教程的方法和官方的方法基本一致,只是在其基础上调整了依赖包的安装顺序和指定了包的安装版本。本教程只对有修改的关键部分介绍,更为详细的环境配置还去要去看官网安装教程。
注意:安装时,不要将相机连在设备上。
如果之前安装不成功,或者安装了其他版本的 SDK ,最好先全部卸载,然后再依次执行下述命令。使用以下命令删除所有与 RealSense™ SDK 相关的包。
dpkg -l | grep "realsense" | cut -d " " -f 3 | xargs sudo dpkg --purge
(1)注册服务器的公钥
sudo mkdir -p /etc/apt/keyrings
curl -sSf https://librealsense.intel.com/Debian/librealsense.pgp | sudo tee /etc/apt/keyrings/librealsense.pgp > /dev/null
(2) 确保安装了 apt HTTPS 支持
sudo apt-get install apt-transport-https
(3)将服务器添加到存储库列表中
sudo add-apt-repository "deb https://librealsense.intel.com/Debian/apt-repo $(lsb_release -cs) main" -u
(4)安装相关库(关键部分)
%========对应原教程命令:sudo apt-get install librealsense2-dkms===========%
sudo apt-get install librealsense2-udev-rules:amd64=2.53.1-0~realsense0.8249
sudo apt-get install librealsense2-dkms=1.3.16-0ubuntu1
%========对应原教程命令:sudo apt-get install librealsense2-utils============%
sudo apt-get install librealsense2=2.53.1-0~realsense0.8249
sudo apt-get install librealsense2-gl=2.53.1-0~realsense0.8249
sudo apt-get install librealsense2-net=2.53.1-0~realsense0.8249
sudo apt-get install librealsense2-utils=2.53.1-0~realsense0.8249
(5)安装开发人员和调试包
与 realsense-ros 的编译过程有关,不装的话会在编译 realsense-ros 时报错:
Intel RealSense SDK 2.0 is missing, please install it from https://github.com/IntelRealSense/librealsense/releases
%==================只在原教程基础上指定了安装版本====================%
sudo apt-get install librealsense2-dev=2.53.1-0~realsense0.8249
sudo apt-get install librealsense2-dbg=2.53.1-0~realsense0.8249
下面的几个包,可以不装。
%============下面的几个好像不安装也没有影响,可以不装==================%
sudo apt-get install librealsense2-gl-dev=2.53.1-0~realsense0.8249
sudo apt-get install librealsense2-gl-dbg=2.53.1-0~realsense0.8249
sudo apt-get install librealsense2-net-dev=2.53.1-0~realsense0.8249
sudo apt-get install librealsense2-net-dbg=2.53.1-0~realsense0.8249
(6)重新连接英特尔实感深度摄像头并运行: realsense-viewer
以验证安装。
(7)如果之前安装不成功,或者安装了其他版本的 SDK ,最好先全部卸载,然后再依次执行上述命令。
使用以下命令删除所有与 RealSense™ SDK 相关的包。
dpkg -l | grep "realsense" | cut -d " " -f 3 | xargs sudo dpkg --purge
(8)最后,如果之前已经安装过realsense-ros 功能包,则需要重新对 realsense-ros 功能包 catkin_make 和 catkin_make install 一次。
(9)为了避免系统继续对 realsense 的驱动进行升级,需要关闭系统获取其更新源,可将 软件和更新
中的相关项取消勾选。
2.1.2 ubuntu 20.04(x86 架构)
不同系统环境下文中提到包的版本号可能不同,需要结合本文 2.1.3 节中所提的方法自己查询一下,本文同时给出系统 ubuntu 20.04环境下相关包的安装版本。该部分内容与 2.1.1 中内容基本一致,仅对 步骤
(3)安装相关库
中包的版本号进行了修改。
注意:安装时,不要将相机连在设备上。
如果之前安装不成功,或者安装了其他版本的 SDK ,最好先全部卸载,然后再依次执行下述命令。使用以下命令删除所有与 RealSense™ SDK 相关的包。
dpkg -l | grep "realsense" | cut -d " " -f 3 | xargs sudo dpkg --purge
(1)注册服务器的公钥
sudo mkdir -p /etc/apt/keyrings
curl -sSf https://librealsense.intel.com/Debian/librealsense.pgp | sudo tee /etc/apt/keyrings/librealsense.pgp > /dev/null
(2) 确保安装了 apt HTTPS 支持
sudo apt-get install apt-transport-https
(3)将服务器添加到存储库列表中
sudo add-apt-repository "deb https://librealsense.intel.com/Debian/apt-repo $(lsb_release -cs) main" -u
(4)安装相关库(关键部分)
%========对应原教程命令:sudo apt-get install librealsense2-dkms===========%
sudo apt-get install librealsense2-udev-rules:amd64=2.53.1-0~realsense0.8250
sudo apt-get install librealsense2-dkms=1.3.17-0ubuntu1
%========对应原教程命令:sudo apt-get install librealsense2-utils============%
sudo apt-get install librealsense2=2.53.1-0~realsense0.8250
sudo apt-get install librealsense2-gl=2.53.1-0~realsense0.8250
sudo apt-get install librealsense2-net=2.53.1-0~realsense0.8250
sudo apt-get install librealsense2-utils=2.53.1-0~realsense0.8250
(5)安装开发人员和调试包
与 realsense-ros 的编译过程有关,不装的话会在编译 realsense-ros 时报错:
Intel RealSense SDK 2.0 is missing, please install it from https://github.com/IntelRealSense/librealsense/releases
%==================只在原教程基础上指定了安装版本====================%
sudo apt-get install librealsense2-dev=2.53.1-0~realsense0.8250
sudo apt-get install librealsense2-dbg=2.53.1-0~realsense0.8250
下面的几个包,可以不装。
%============下面的几个好像不安装也没有影响,可以不装==================%
sudo apt-get install librealsense2-gl-dev=2.53.1-0~realsense0.8250
sudo apt-get install librealsense2-gl-dbg=2.53.1-0~realsense0.8250
sudo apt-get install librealsense2-net-dev=2.53.1-0~realsense0.8250
sudo apt-get install librealsense2-net-dbg=2.53.1-0~realsense0.8250
(6)重新连接英特尔实感深度摄像头并运行: realsense-viewer
以验证安装。
(7)如果之前安装不成功,或者安装了其他版本的 SDK ,最好先全部卸载,然后再依次执行上述命令。
使用以下命令删除所有与 RealSense™ SDK 相关的包。
dpkg -l | grep "realsense" | cut -d " " -f 3 | xargs sudo dpkg --purge
(8)最后,如果之前已经安装过realsense-ros 功能包,则需要重新对 realsense-ros 功能包 catkin_make 和 catkin_make install 一次。
(9)为了避免系统继续对 realsense 的驱动进行升级,需要关闭系统获取其更新源,可将 软件和更新
中的相关项取消勾选。
2.1.3 详细分析
(1)官网的原版教程
图片中是官网原版的教程,可以看出,前文我给出教程基本和官方是一样,主要是将红框中标出的两条核心指令进行了拆解,并指定了安装包的版本号。
(2)安装所需要的包及其依赖关系
官方给出了安装所需要的全部包及其相关依赖关系说明。直接用官网的命令安装的话,会默认安装软件包及其所依赖包的最新版本,这会和我们想要安装的版本有冲突,导致安装失败。所以我们要做的就仅仅只是,按照特定的顺序和特定的版本,手动将下列的包给安装一遍,其中有些包可能用不到,不安装也行。
Realsense SDK(2.0) v2.53.1 中所需要的安装包。
Realsense SDK(2.0) v2.54.1 中所需要的安装包也是官网中现在所展示的网页中的样子,和之前相比去掉了
librealsense2-net
包的安装。
我们安装 Realsense SDK(2.0) v2.53.1
所需的几个包之间的相互依赖关系大致如下图所示,所以才有了本教程中给出的特定安装顺序及版本。
终端中输入命令 dpkg -l | grep "librealsense2"
可以检索系统中安装的与 realsense SDK 有关的包。下图中显示了两次检索的情况:第一次,是使用官网默认教程之间安装 Realsense SDK(2.0) v2.54.1
版本后的情况;第二次,是使用本教程安装 Realsense SDK(2.0) v2.53.1
版本后的情况。
(3)知识补充
通过命令 apt list -a librealsense2-dkms
或者 apt-cache madison librealsense2-dkms
可以查询系统当前软件源下某个包的可用安装版本。要查询 realsense SDK 相关包的可用安装版本情况,需要先添加 realsense 服务器的地址,即上面步骤中的 注册服务器的公钥
。
- 查询
apt list -a librealsense2-udev-rules
的情况
- 查询
apt list -a librealsense2-dkms
的情况
- 查询
apt list -a librealsense2
的情况
- 查询
apt list -a librealsense2-gl
的情况
- 查询
apt list -a librealsense2-net
的情况,可以看到和之前的包不同,该包的版本号到2.53.1-0~realsense0.8249
就停止了,和前文中我们的结论是一致的,该包的安装在Realsense SDK(2.0) v2.54.1
版本以后已经去掉了
- 查询
apt list -a librealsense2-utils
的情况
2.2 Tx2等 arm架构 设备中的安装
经评论区小伙伴的提醒和自己的测试,发现不同平台架构(x86架构 和 arm架构)下安装包的版本号和所需的包有所不同,因此这里同时给出在 arm架构 系统中的安装步骤。已在 tx2 ubuntu 18.04 的环境下测试通过。
可以看到,和x86架构下安装相比,有个别包不需要装了
2.2.1 ubuntu 18.04(arm 架构)
注意:安装时,不要将相机连在设备上。
如果之前安装不成功,或者安装了其他版本的 SDK ,最好先全部卸载,然后再依次执行下述命令。使用以下命令删除所有与 RealSense™ SDK 相关的包。
dpkg -l | grep "realsense" | cut -d " " -f 3 | xargs sudo dpkg --purge
(1)注册服务器的公钥
sudo mkdir -p /etc/apt/keyrings
curl -sSf https://librealsense.intel.com/Debian/librealsense.pgp | sudo tee /etc/apt/keyrings/librealsense.pgp > /dev/null
(2) 确保安装了 apt HTTPS 支持
sudo apt-get install apt-transport-https
(3)将服务器添加到存储库列表中
sudo add-apt-repository "deb https://librealsense.intel.com/Debian/apt-repo $(lsb_release -cs) main" -u
(4)安装相关库(关键部分)
sudo apt-get install librealsense2-udev-rules:arm64=2.53.1-0~realsense0.703
sudo apt-get install librealsense2=2.53.1-0~realsense0.703
sudo apt-get install librealsense2-gl=2.53.1-0~realsense0.703
sudo apt-get install librealsense2-utils=2.53.1-0~realsense0.703
sudo apt-get install librealsense2-dev=2.53.1-0~realsense0.703
%============================下面这个可以不装============================%
sudo apt-get install librealsense2-dbg=2.53.1-0~realsense0.703
(5)重新连接英特尔实感深度摄像头并运行: realsense-viewer
以验证安装。
(6)最后,如果之前已经安装过realsense-ros 功能包,则需要重新对 realsense-ros 功能包 catkin_make 和 catkin_make install 一次。
(7)为了避免系统继续对 realsense 的驱动进行升级,需要关闭系统获取其更新源,可将 软件和更新
中的相关项取消勾选。
2.2.2 ubuntu 20.04(arm 架构)
不同系统环境下文中提到包的版本号可能不同,因为我手边目前只有 ubuntu 18.04 的 tx2,无法对 ubuntu 20.04 环境下的 配置过程进行测试,所以不知道包的版本号,等一个热心的小伙伴在评论区告诉我。。。
安装步骤 同上面的ubuntu 18.04,但是先用命令 apt list -a librealsense2
看一下 ubuntu 20.04环境下的版本号,然后把要安装的几个包后面的版本号都替换一下就行。
3 Configuring and building from the source code
官网中也提供了源码安装的教程,我们要做的只是下载对应版本的源码,并按教程安装即可。
注意:安装时,不要将相机连在设备上。
3.1 下载 v2.53.1 版本的 librealsense SDK
在官网的发行界面,找到 Intel® RealSense™ SDK 2.0 (v2.53.1) 的界面,下载源码 zip 格式或者 tar.gz 都行,然后解压。
![在这里插入图片描述](https://img-blog.csdnimg.cn/2bbeb09b1e6a400b91c9879187baf62b.png#pic_center =600x
3.2 环境构建
(1)更新 ubuntu
sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade
(2)安装依赖项
解压好后,进入 librealsense
文件目录,并在该目录下打开终端。
sudo apt-get install libssl-dev libusb-1.0-0-dev libudev-dev pkg-config libgtk-3-dev cmake
sudo apt-get install libglfw3-dev libgl1-mesa-dev libglu1-mesa-dev at
(3)安装 librealsense原文件目录下的许可脚本
./scripts/setup_udev_rules.sh
注意:该许可脚本可以通过如下命令移除
./scripts/setup_udev_rules.sh --uninstall
(4)为以下对象构建和应用修补的内核模块(可忽略)
我实际安装过程中,没有进行这一步,最后也能够正常使用。
对于Ubuntu 14/16/18/20 with LTS kernel (< 5.13)
./scripts/patch-realsense-ubuntu-lts.sh
(5)TM1-specific: TM1
跟踪模块需要内核模块hid_sensor_custom才能正常运行。由于 TM1 的上电顺序限制,需要在引导期间加载此驱动程序才能正确初始化硬件。
为此,请将驱动程序的名称hid_sensor_custom添加到 /etc/modules 文件中,例如:
echo 'hid_sensor_custom' | sudo tee -a /etc/modules
3.3 源码编译
(1) 导航到 librealsense 根目录并运行
mkdir build && cd build
(2)运行CMake
cmake ../ -DCMAKE_BUILD_TYPE=Release
(3)重新编译并安装 librealsense 二进制文件
sudo make uninstall && make clean && make && sudo make install
The shared object will be installed in /usr/local/lib
, header files in /usr/local/include
.
The binary demos, tutorials and test files will be copied into /usr/local/bin
.
(4)最后,如果之前已经安装过realsense-ros 功能包,则需要重新对 realsense-ros 功能包 catkin_make 和 catkin_make install 一次。
3.4 测试
重新连接英特尔实感深度摄像头并运行: realsense-viewer
以验证安装。
4 血泪教训
不要瞎折腾配置好的环境,更不要乱升级。