在 NVIDIA jetson tx2 上基于 realsense d435i 相机运行 vins 相关配置

2023-05-16

在 NVIDIA jetson tx2 上基于 realsense d435i 相机运行 vins 相关配置

  • 一、tx2刷机
  • 二、安装librealsense,realsense驱动
    • 1.安装依赖库
    • 2.从debian repository安装librealsense
  • 三、安装 Ros-melodic
  • 四、安装 librealsense-ros
  • 五、安装 vins


在x86上运行vins相对简单。

网上绝大部分关于在tx2上配置realsense的教程,都需要使用低版本的jetpack在tx2上安装版本较低的l4t,之后再给内核打补丁并编译:https://blog.csdn.net/lzw_hdu/article/details/85010619,但是过程比较繁琐,而且安装的低版本l4t不知道适用;

有人提出根据板子上已经安装的l4t版本对内核进行编译,不需要重装系统:https://blog.csdn.net/TengYun_zhang/article/details/90452856,尝试过后发现会产生大量的中间文件,而且容易损坏内核文件,导致系统奔溃,不太实用;

后来发现jetson在GitHub上前不久上传的资源:https://github.com/jetsonhacks/installRealSenseSDK,不需要编译内核就可以在tx2上安装librealsense和驱动,基于 jetpack 4.3 刷机安装的 l4t 32.3.1。


一、tx2刷机

基于jetpack进行安装,直接下载最新版本的jetpack:https://developer.nvidia.com/embedded/jetpack,在电脑的ubuntu系统中进行安装,完成之后进入,大概是这样的:

在这里插入图片描述
暂时不用连接tx2,host machine 不用勾选,否则耽误时间,target hardware选择tx2就行,Linux选择jetpack 4.3,deep stream是否勾选看需求,继续进入第二步。

在这里插入图片描述host不选的话不会有上面的host components选项,下面选择同意和 download now,install later,边下边装容易出问题,继续第三步开始安装,如果报错就重启,或者换电脑换网络,多试试,期间出现问题可以重启sdk,如果提示sdk内没有可用配置,可通过重启电脑、或者卸载sdk(sudo purge sdkmanager)再安装(sudo dpkg 安装包拖过来),多试几次。

都下载好了就会自动安装,建议先不连接tx2,直到开始flash,并弹出界面
在这里插入图片描述
选择如图的manual setting,连接tx2,同时使其进入恢复模式:
1.按一下power键开机(按下后松开,稍微有一定的按键时长)
2.按下REC(RECOVERY FORCE)不要松开
3.再按下RST(reset按下松开,稍微有一定的按键时长)
4.REC保持两秒后松开
可以用lsusb指令确认tx2是否已连接并进入恢复模式,之后开始flash;过段时间又跳出界面

在这里插入图片描述
其中ip已经设置好了,username和password先不设置,先用另一台显示器连接tx2,会有显示(但是卡住,因为是恢复模式),直接重启,开始在tx2上预安装系统,依次进行,期间会要求设置username和password,设置好了再在这个界面上填入相应内容,并一直安装到结束,结束时可能会提示错误,但是基本没关系,不管他。
这样jetpack 4.3就安装完成。

note:建议一开始就卸载opencv4并重新安装opencv3,省不少事。

二、安装librealsense,realsense驱动

1.安装依赖库

建议先安装librealsense的依赖库:

sudo apt-get install libudev-dev pkg-config libgtk-3-dev
sudo apt-get install libusb-1.0-0-dev pkg-config
sudo apt-get install libglfw3-dev
sudo apt-get install libssl-dev

其中安装libgtk-3-dev的时候可能会报错如下:“libgl1-mesa-dev : 依赖: mesa-common-dev (= 18.0.0~rc5-1ubuntu1) 但是他将不会被安装”等类似错误,网上有建议更换软件源和安装所有提示的依赖项,经测试,不知道是网络原因还是什么,不能在tx2上通过“软件和更新”对软件源进行更换,而且第二种方法一步步走来会直接弄崩系统,建议打开软件和更新----更新—选上推荐更新:

在这里插入图片描述

之后再sudo apt update,然后安装应该就不会出问题了。

2.从debian repository安装librealsense

先在home下直接:

git clone https://github.com/jetsonhacks/installRealSenseSDK.git

再进入文件夹内,sudo chmod u+x ./installLibrealsense.sh,再运行installLibrealsense.sh(建议从repository安装),另一个脚本的从源文件安装,效率比较低,但是应该会多一些相关程序。
之后终端输入realsense-viewer,连接相机,验证安装。

三、安装 Ros-melodic

由于不太方便通过“软件和更新”对软件源进行更换,在终端更新源(中科大的):

sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.ustc.edu.cn/ros/ubuntu/ $DISTRIB_CODENAME main" > /etc/apt/sources.list.d/ros-latest.list'

设置密钥:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F42ED6FBAB17C654

之后安装

    sudo apt-get update
    sudo apt-get install ros-melodic-desktop-full

可能会产生和之前同样的依赖库问题,相同解法。
之后

sudo apt-get install python-rosinstall    
sudo rosdep init
rosdep update

rosdep init 可能会报错找不到命令,直接 sudo apt install python-rosdep2
rosdep init也可能报错网络无法连接,方法需要另找,网上很多。
然后加载环境变量source /opt/ros/melodic/setup.bash(建议放在home下的bashrc的最后(control+h显示)),再roscore验证,如果报错找不到指令,直接sudo apt-get install ros-melodic-desktop,就可以了(不要再rosdep了),最后小乌龟验证安装即可。

四、安装 librealsense-ros

网上建议安装基于tx2的librealsense-ros:https://github.com/jetsonhacks/installRealSense2ROSTX,估计又不兼容,可以直接安装通用librealsense-ros(realsense tx2驱动已成功安装,ros应该可以通用):
先创建一个ros的工作空间,进入src,然后:

git clone https://github.com/IntelRealSense/realsense-ros.git
git clone https://github.com/pal-robotics/ddynamic_reconfigure.git
cd ~/catkin_ws && catkin_make

编译过程中会报错cv_bridge找不到opencv位置,这是因为jetpack安装的最新的opencv4,更换搜索目录即可,config文件位于:
在这里插入图片描述
之后报错librealsense-ros的依赖librealsense版本和之前安装的版本不匹配,估计是安装的librealsense-ros版本太高,进入当前工作空间中的realsense-ros,由git checkout+需要版本,进行更新,再编译即可。
最后roslaunch realsense2_camera rs_camera.launch 结合 rostopic list进行验证。

五、安装 vins

先安装依赖库ceres,之后再创建ros工作空间并安装vins,不推荐git clone下载vins,建议直接从GitHub上下载最新版本进行安装,安装过程中可能会报错:
1.关于未定义的cv变量,可以重新安装opencv 3.4.11,再在vins里的 findpackge{OpenCv required} 里加上版本号, findpackge{OpenCv 3.4.11 required}(注意大小写)。
findpackage都是找到config.cmake文件,可见有两个版本的OpenCV:
在这里插入图片描述

2.关于cv版本冲突,在上述 cv_bridge 里把 opencv 的定位改成当前新安装的opencv2的位置。
验证。
note:建议一开始就卸载opencv4并重新安装opencv3,省不少事。

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

在 NVIDIA jetson tx2 上基于 realsense d435i 相机运行 vins 相关配置 的相关文章

  • Linux环境安装RabbitMQ

    RabbitMQ Linux环境安装 检查当前linux服务器的版本 lsb release a 官网下载安装包 xff1a https www rabbitmq com download html 1 2 3 选择对应的安装环境 4 对照
  • MySQL的安装

    MySQL的安装 1 下载 网址 xff1a https dev mysql com downloads mysql 2 下载5 7版本 xff08 1 xff09 xff08 2 xff09 xff08 3 xff09 3 配置环境变量
  • Nginx windows server 2012部署过程

    部署静态网页到服务器 今天做了一个静态网页 xff0c 想部署带到自己的阿里云服务器 通过查询可以使用tomcat容器或者nginx xff0c 主流方式是nginx部署 xff0c 记录一下自己部署的过程 一 nginx简介 Nginx
  • 点击按钮实时刷新图片

    js给 lt img gt 标签的src赋值 最近做一个点击一个按钮刷新加载另一张图片的功能 主要就是改变图的路径 记录一下自己遇到的坑 支持原生的js和jq实现 用js原生方法 xff1a document getElementById
  • RestTemplate的学习与使用

    RestTemplate的学习与使用 最近在开发过程中遇到使用接口传输数据 了解到到RestTemplate 1 源码分析 span class token keyword public span span class token keyw
  • Linux环境下redis的安装

    Linux环境下redis的安装 1 下载redis安装包 服务器上执行以下命令下载redis安装包 cd export software wegt http download redis io releases redis 6 2 6 t
  • Docker的安装

    Docker的安装 1 linux下安装docker xff08 CentOS7 xff09 curl sSL https get daocloud io docker sh 2 查看docker的版本 docker v 3 启动 关闭do
  • Redis的应用场景

    1 String操作 xff08 1 xff09 计数器 incr artcle readconunt 文章id get artcle readconunt 文章id 2 Hash操作 1 对象缓存 hmset user 1 name li
  • nginx在linux环境安装

    1 安装依赖包 yum install pcre pcre devel y yum install openssl openssl devel y 2 官网下载安装包传到linux环境 安装包存放位置 export software 解压目
  • 开发杂谈(一)常见问题

    1 github 1 从GITHUB下载慢而且容易中断解决办法 1 从GITHUB下载慢而且容易中断解决办法 将github项目导入到码云网 xff08 https gitee com xff09 然后再下载会很快 xff0c 登录码云网后
  • Windows证书函数

    C语言操作WINDOWS系统存储区数字证书相关函数详解及实例 以下代码使用C 43 43 实现遍历存储区证书及使用UI选择一个证书 使用 CertOpenSystemStore打开证书存储区 在循环中 使用CertEnumCertifica
  • 使用Docker安装RabbitMQ

    1 yum 包更新到最新 yum update xff08 2 xff09 安装需要的软件包 xff0c yum util 提供yum config manager功能 xff0c 另外两个是devicemapper驱动依赖的 yum in
  • docker的安装及常用命令

    安装Docker 官网地址 https www docker com 文档地址 https docs docker com Dockerhub仓库地址 https hub docker com 名词解释 镜像 xff08 image xff
  • docker安装部署一些软件(nginx、tomcat、mysql、es)

    linux防火墙相关操作 systemctl restart firewalld service span class token comment 重启服务 span systemctl start firewalld span class
  • docker的commit和容器数据卷

    commit镜像 span class token function docker span commit 提交容器成为一个新的副本 span class token comment 命令和git原理相似 span span class t
  • DockerFile的使用

    DockerFile dockerfile是用来构建docker镜像的文件 xff01 命令参数脚本 构建步骤 xff1a 1 编写一个dockerfile文件 2 docker build 构建成为一个镜像 3 docker run 运行
  • Docker网络及SpringBoot应用打包

    1 查看当前阿里云的一网络信息 span class token comment 命令 ip addr span 2 查看容器内部网络地址 这里使用上一篇博客的自定义Dockerfile文件构建的tomcat xff0c 因为默认拉取的镜像
  • Docker学习目录

    自己整理的笔记 1 docker的安装及常用命令 2 docker的commit和容器数据卷 3 docker安装部署一些软件 xff08 nginx tomcat mysql es xff09 4 DockerFile的使用 5 Dock
  • Docker Compose

    1 Docker Compose官网说明 理解 Compose是Docker官方的开源项目 需要安装 xff01 Dockerfile 让程序在任何地方运行 web服务 redis mysql nginx 多个容器 run Compose的
  • Docker Swarm

    1 购买4台阿里云 按量付费买四台 2 都安装docker Xshell右键 可以将命令发送到所有会话 3 查看官网 地址 xff1a https docs docker com engine swarm 4 工作模式 5 搭建集群 私网不

随机推荐

  • 使用GPU跑代码,设置使用哪块GPU

    服务器多张GPU同时跑代码 1 查看电脑的显卡有几块 在控制台输入 nvidia smi 发现服务器有两个显卡 xff0c 0号和1号 2 在代码中指定GPU 使用0号显卡 xff1a device 61 torch span class
  • android StringBuiler常用方法

    String在java中是不可变长的 频繁拼接修改等效率会很低 StringBuiler 是个可变长的 xff0c 处理字符串效率比较高也可以减少内存开支 xff0c 比如append时并不是用String存储 而是放到一个value的ch
  • C++中的迭代器和泛型算法

    简单的迭代器和算法 1 迭代器令算法不依赖于容器 xff0c 但算法依赖于元素类型的操作 泛型算法本身不会执行容器的操作 xff0c 它们只会运行于迭代器之上 xff0c 执行迭代器的操作 算法永远不会改变底层容器的大小 算法可能改变容器中
  • 宝塔面板无法打开

    宝塔面板无法打开 在别的应用软件像putty 宝塔等打不开时 xff0c 弹出以下页面 在阿里云官网搜索服务器 rm f www server panel data admin path pl 到底部执行并保存 再次访问宝塔等就可以了
  • 【Ubuntu 安装指定版本RabbitMQ ※便捷版※】

    Ubuntu 16 04 安装 RabbitMQ 3 7 4 第一步 安装 erlang 需要注意 erlang和rabbitmq的版本比对关系 https www rabbitmq com which erlang html 我这里安装的
  • JavaScript 文件对象详解

    在浏览器中操作文件 xff0c 多数情况下用到的是 File 对象 xff0c 从 lt input type 61 39 file 39 gt 元素获取 xff0c 进而继续操作 例如将选择的图片展示在页面上 xff0c 用ajax将文件
  • 协议栈的定义

    所谓协议栈就是对信息进行多次封装和解封的过程 xff0c 以便能够在不同的实体间传送信息 是根据OSI体系模型划分的各层协议的总和 就是一套协议的规范 xff0c 比如HTTP gt TCP gt IP xff0c 一个HTTP请求 xff
  • 死锁,死锁的四个必要条件以及处理策略

    一 什么是死锁二 死锁与饥饿三 资源的类型 3 1 可重用资源和消耗性资源 3 1 1 可重用资源 xff08 永久性资源 xff09 3 1 2 消耗性资源 xff08 临时性资源 xff09 3 2 可抢占资源和不可抢占资源 3 2 1
  • 排查机器 负载过高, ssh进不去问题

    排查路径 xff1a 1 一开始怀疑可能是io阻塞导致 xff0c 于是使用iostat xdm 1 100 xff0c 查看 io状况 xff0c 发现io不高 2 于是使用top xff0c 查看系统负载情况 发现系统负载很高 xff0
  • 什么是奇偶校验

    什么是奇偶校验 对数据传输正确性的一种校验方法 在数据传输前附加一位奇校验位 xff0c 用来表示传输的数据中 34 1 34 的个数是奇数还是偶数 xff0c 为奇数时 xff0c 校验位置为 34 0 34 xff0c 否则置为 34
  • Linux CentOS 7 elasticsearch 设置开机自启

    在 etc systemd system目录下创建elasticsearch service文件 span class token namespace Unit span Description 61 elasticsearch span
  • Centos7 设置开机自启的几种方式

    一 系统服务的方式 1 前提 xff08 1 xff09 首先要将需要自启的软件或应用注册成系统服务 xff0c 下面提供常用的软件注册系统服务的案例 nginx service 创建服务文件 vi usr lib systemd syst
  • ubuntu18.04 server配置 ip地址

    ubuntu18 04 server xff0c 启用了新的网络工具netplan xff0c 下面对齐配置参数进行介绍 1 其网络配置文件是放在 etc netplan yaml 缺省dhcp打开方式 xff0c 如果要配置静态地址 xf
  • Ardupilot基于UWB的定位飞行测试

    拖了许久的测试视频 xff0c 终于要发布了 xff0c 上个版本的代码有点问题 xff0c 没有考虑清楚UWB和NED坐标系的关系 xff0c 导致后面飞行故障不断 xff0c 这款UWB的坐标系为ENU坐标系 xff0c 飞机飞行的坐标
  • AutoBoat自动导航无人船

    AutoBoat 自动导航支持航线规划无人船 AutoBoat是一款功能强大自动驾驶无人船 xff0c 同时还可以搭配多款地面控制站使用 地面站中可以在线升级固件 调参 xff0c 使用一套全双工的无线数据传输系统在地面站与小车之间建立起一
  • PIXHAWK上安装PX4Flow光流传感器及调试过程

    小编最近刚调试完光流传感器 xff0c 效果非常理想 xff0c 无GPS情况下很稳定 小编把调试过程的过程和遇到的问题分享给大家 xff0c 希望大家少走弯路 在安装和调试光流传感器之前 xff0c 先保证旋翼机已经安装和调试完毕 xff
  • 正点原子STM32学习笔记——MPU6050介绍

    一 MPU6050简介 1 什么是MPU6050 xff1f MPU6050是InvenSense公司推出的全球首款整合性6轴运动处理组件 xff0c 内带3轴陀螺仪和3轴加速度传感器 xff0c 并且含有一个第二IIC接口 xff0c 可
  • 【OFDM系列4】OFDM信号多径信道模型基础知识

    多径信道模型 Multipath Channel Scenario 信道脉冲响应 Channel Impulse Response CIR 信道的复基带脉冲响应如下所示 h t l 1 L a l
  • LACP负载分担配置

    网络拓扑图如下 交换机3的配置 Huawei int Eth Trunk 1 Huawei Eth Trunk1 mode lacp static xff08 负载分担模式设置为LACP模式 xff09 Huawei Eth Trunk1
  • 在 NVIDIA jetson tx2 上基于 realsense d435i 相机运行 vins 相关配置

    在 NVIDIA jetson tx2 上基于 realsense d435i 相机运行 vins 相关配置 一 tx2刷机二 安装librealsense xff0c realsense驱动1 安装依赖库2 从debian reposit