Ubuntu18.04+ros-melodic (包括Ubuntu16.04+ros-kinetic)乐视奥比中光相机在nano、tx2、PC等设备上的安装与使用,并解决无法显示rgb信息的问题

2023-05-16

2020/12/25修改:本文底部所说的无法显示rgb的情况,如果你买的是乐视就按照这个来绝对ok;如果你买的是奥比中光的原装正版,直接启动launch文件就行了,无须再修改端口号。

本来用Kinect开发的好好的,突然领导让用乐视的深度相机,其实就是套了个乐视外壳的奥比中光,前几年乐视出事之后这款设备就特别便宜,,,,,,,这个安装使用过程有点坑,尤其是安装之后找不到rgb信息,再加上网上大都是老版本的安装过程(有些还特别麻烦),我在nano上进行了成功的安装与使用,把步骤和一些坑给填一下。

0 设备和环境

我用设备的是:
jetson-nano、一个不知道什么名字的工控机
设备的环境:
nano:Ubuntu18.04+ros-melodic
工控机:Ubuntu16.04+ros-kinetic
其实和版本关系不大,有些地方安装的时候注意版本号就行。

1 安装过程

(1)安装依赖

sudo apt-get install build-essential freeglut3 freeglut3-dev

(2)检查udev版本,需要libudev.so.1,没有的话需要添加
这一步基本上设备都有,创客智造、张瑞雷、还有其他博客上都是这一段话:

#check udev version, Orbbec Driver need libudev.so.1, if can't find it, can make symbolic link from libudev.so.x.x,
#which usually locate in /lib/x86_64-linux-gnu or /lib/i386-linux-gnu
$ ldconfig -p | grep libudev.so.1
$ cd /lib/x86_64-linux-gnu
$ sudo ln -s libudev.so.x.x.x libudev.so.1

(3)下载并安装OpenNI驱动
官网或者GitHub上下载有时候可能网络不方便,我下载好之后传到网盘上了,方便大家用:
链接:https://pan.baidu.com/s/1PCHBm65Y4_pFP0uKHhZ9tw
提取码:7389
如果链接失效了评论里联系我就行

这里需要注意一下,确定自己的设备是什么架构、是什么位数,选择对应的去使用。(有博客上说,jetson系列CPU架构低于cortex A7,需要用without filter那个包,不过我之前也没在意这个事,没见什么影响。官网的readme文档中的描述是这样的:For user with ARM based development board:
With CPU Structure older than Cortex A17, use OpenNI-Linux-Arm-2.3 Nofilter.tar for better performance)
在你对应架构的OpenNI压缩包路径下打开终端,输入:

unzip OpenNI-Linux-x64-2.3.zip
cd OpenNI-Linux-x64-2.2
sudo chmod a+x install.sh
sudo ./install.sh
source OpenNIDevEnvironment

到这里,驱动安装就ok了,如果你想试一下官方的例子来检验一下是否安装成功,去包里面编译运行就行,这个过程我就不写了,readme或者其他博客都有,按部就班操作就行。
(4)ros包安装
新建一个ros工作空间,在src文件夹下打开终端,这里要分两种情况:
如果你是ros-kinetic或者之前的版本,很简单:

sudo apt-get install ros-kinetic-astra-camera ros-kinetic-astra-launch

注意ros版本号就行。不过我建议最好是在src上git clone这两个launch包,因为后面我们要改launch文件内容。源码安装的我试过,launch文件中少了很多东西,我没法修改。
如果你是ros-melodic版本,(截至2020/4/20,之后可能会直接源码安装就行),只能去GitHub下载:

git clone https://github.com/orbbec/ros_astra_launch.git
git clone https://github.com/orbbec/ros_astra_camera.git

下载完成之后,

cd ..
catkin_make

到这一步如果你完全按照我的步骤安装,编译的时候会报一些错误,因为我自己刚开始爬坑的时候,按照其他大佬们的,先安装libuvc之类的,会有一些莫名其妙的错误,还要去写什么rules,搞得我心态爆炸。最终经过我多次实践之后,就索性不按照那些大佬们的步骤,把ros包安装好编译完成,看终端错误提示,缺什么我install什么,最终就ok了。
比如错误如下图:
在这里插入图片描述
提示很清楚,缺少rgbd_launch,那么就在终端中输入:

sudo apt-get install ros-kinetic-rgbd-launch

记着对应自己的ros版本号,把kinetic换成你自己的ros版本号就行。
还会提示,缺少libuvc,uvc等,同理补全安装就行。

(5)启动奥比中光的launch文件,看相机效果。
这里就不多赘述了,启动文件就是在launch文件夹里面,选择astra.launch或者astrapro.launch启动就行。
有可能部分设备(我的nano就是)启动报错:

ERROR] [1587364749.976103622]: Permission denied opening /dev/bus/usb/001/009
[camera/camera_rgb-2] process has died [pid 7183, exit code 255, cmd /home/sr/leshi_ws/devel/lib/astra_camera/camera_node /camera/image_raw:=/camera/rgb/image_raw __name:=camera_rgb __log:=/home/sr/.ros/log/a0c9b86a-82d1-11ea-be99-96edff6a96fd/camera-camera_rgb-2.log].
log file: /home/sr/.ros/log/a0c9b86a-82d1-11ea-be99-96edff6a96fd/camera-camera_rgb-2*.log

这个原因很常见,说白了就是端口号没权限,打不开对应的端口,按照终端提示错误的端口号那里,给权限就行,
解决方法,在终端中输入:

sudo chmod 777 /dev/bus/usb/001/009

由于我暂时还在做开发,不想直接锁死端口号,等开发结束整理的时候把设备的端口号写死就行,这里也欢迎大佬们在评论区里给出自己的方法。
启动launch文件之后,在另一个终端中输入:

rqt_image_view

即可看到显示出相机的图像,如下图所示:
在这里插入图片描述
camera/depth/image就是相机发布的深度信息topic,同理也可以在rviz中订阅这个topic进行查看。

02 解决无法显示rgb彩色信息的问题

基本上所有用这个设备的伙伴们都会有这个问题,我刚开始按照张瑞雷大佬的博客进行安装的时候,他的方法我反复在多台设备上试了好几次也没成功,而且还要再定位什么文件之类的操作实在是有点麻烦。
偶然间,我在终端中输入

lsusb

查看设备端口号的时候猜想,会不会是端口号的映射地址在launch文件中错了导致打不开rgb信息。因为我在第n次安装的时候看launch文件过程中不小心键盘碰到几下,后来保存的时候也点了saving。这才发现尼玛是官方给的launch文件都不对,,,,,,,,,,,,,,,,,于是我又重新下载ros包,发现并不是我手贱,是真的有问题。如下图:
在这里插入图片描述
看到了吧,0502是rgb的端口号,所以你打开astpro.launch,发现在大概68行43列的最后,它写的竟然是0501,,,,,所以我们修改成0502,保存退出,重新编译工作空间,再运行就可以了。如下:

在这里插入图片描述

rgb图像出来了,rgb的topic是/camera/rgb/image_raw
至此,坑填好了,关于这个rgb无法显示的解决方法,还有一个大佬的博客可以参考,方法也很简单:博客链接

至此,Ubuntu16和18中使用奥比中光进行开发的过程我总结完了,16和18其实没有太大区别,除了ros包的安装需要注意ros版本号,其他没啥了。
接下啦就是用奥比中光进行vslam等视觉的开发。

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

Ubuntu18.04+ros-melodic (包括Ubuntu16.04+ros-kinetic)乐视奥比中光相机在nano、tx2、PC等设备上的安装与使用,并解决无法显示rgb信息的问题 的相关文章

  • 以前做的一种特殊的平衡车----三轮球上平衡车

    这个项目做了很长的时间 xff0c 核心算法就是PID xff0c 目标就是让一个三轮车 xff08 轮子为全向轮 xff09 站到足球上并可以进行平移旋转等平面运动 机械部分 使用三个橡胶全向轮 xff0c 通过联轴器连接减速电机 xff
  • VAE与GAN做异常检测的原理

    近几年 xff0c 有大量的人用VAE和GAN来做异常检测 xff0c 用这两个模型做异常检测的假设都是一样的 xff0c 即假定正常数据是服从某一种分布的 xff0c 而异常数据是不能够拟合进这个分布的 xff0c 因此我们可以用VAE和
  • windows10上Eclipse和PyDev搭建python开发环境

    1 安装java环境 xff0c jdk下载地址如下 http www oracle com technetwork java javase downloads index html 完成安装后 xff08 记住安装位置 xff0c 之后有
  • 双系统引导启动切换

    双系统引导启动切换 微软双系统引导启动切换适用环境选择启动盘 微软双系统引导启动切换 适用环境 1 有双系统操作需求 2 强迫症 上期讲了如何重装新的操作系统 xff0c 我有两个盘 xff0c 一个盘固态 xff0c 一个机械 两个里面都
  • gazebo模型不显示

    提示 xff1a File 34 usr lib python2 7 xml etree ElementTree py 34 line 1657 in feed self parser Parse data 0 UnicodeEncodeE
  • 根文件系统(rootfs)的制作

    由于板子不知道什么缘故 xff0c u boot的tftp功能无法应用 xff0c 每次都用串口下载数据 xff0c 但是到后面要下载文件系统的时候实在是太大了 xff0c 完全无法下载 xff0c 因此 xff0c 尝试着做一个简单的文件
  • MPU6050 +STM32F411RCT6

    今天玩了一个MPU6050模块 xff0c 在这里跟大家分享一下 xff0c 希望对大家有所帮助 我用的控制板是我自己画图打板的 xff0c 使用的MCU是STM32F411RCT6 使用的MPU6050如下图 xff0c 在某宝上买的 M
  • Android 注解解析及使用

    目录 一 注解解析 1 什么是注解 xff1f 2 为什么要使用注解 xff1f 3 android中常见的注解有哪些 xff1f 4 元注解 二 注解使用 1 如何实现一个注解 xff1f 2 android中注解示例 一 注解解析 1
  • 2-ROS文件系统简单介绍

    本教程介绍了ROS文件系统的概念 xff0c 并介绍了roscd rosls rospack命令行工具的使用 至于为什么选择deepin而不是ROS通用的ubuntu 也仅仅是为了支持国产系统 鉴于本人水平有限 xff0c 如哪位攻城狮网友
  • Pixhawk 固定翼滑跑起飞逻辑

    起飞逻辑控制代码 xff08 runway cpp xff09 外环控制逻辑 xff08 fw pos control l1文件夹 xff09 xff0c L1导航代码 xff08 ecl l1 pos controller cpp xff
  • 控制分配问题概述

    线性过驱动系统分配方法研究现状 书中将可用于现行过驱动系统分配求解的方法归纳为三类 xff1a 1 广义逆类分配方法 主要包括伪逆法 xff0c 加权伪逆法 xff0c 再分配伪逆法 xff0c 多级伪逆法和串接链法等 xff1b 2 几何
  • Realsense D435i 相机与VINS-Mono连接时右侧不显示轨迹问题的解决

    Realsense D435i 相机与VINS Mono连接时右侧不显示轨迹问题的解决 文章目录 Realsense D435i 相机与VINS Mono连接时右侧不显示轨迹问题的解决1 问题描述2 问题原因查找3 解决办法 修改launc
  • 关于EKF和ErKF的理解

    EKF和ErKF的区别 大概6 20写完 快捷键 加粗 Ctrl 43 B 斜体 Ctrl 43 I 引用 Ctrl 43 Q插入链接 Ctrl 43 L插入代码 Ctrl 43 K插入图片 Ctrl 43 G提升标题 Ctrl 43 H有
  • ETH-Cubli阅读

    7月底补完
  • 端口扫描器设计实现(Python)

    一 个人感悟 通过本次实验 学习了扫描器设计的基本原理 并动手设计了一个开放端口扫描器 具体原理 1 编写前端GUI 2 学习Socket编程 使用Socket编程的connect方法返回0 为连接成功 实现端口扫描器 改进的地方 如果se
  • 学习心得

    敏捷开发宣言读后感 敏捷开发的原则 1 迭代式开发 即整个开发过程被分为几个迭代周期 每个迭代周期持续的时间一般较短 通常为1到6周 2 增量交付 产品是在每个迭代周期结束时被逐步交付使用 每次交付的都是可以被部署 能给用户带来即时效益和价
  • EKF SLAM Matlab仿真实践详解(附源码)

    EKF SLAM Matlab仿真实践详解 xff08 附源码 xff09 为提供更好的阅读体验 xff0c 详细内容及源码请移步https github com Nrusher EKF SLAM 或 https gitee com nru
  • FreeRTOS解析:List

    FreeRTOS解析 xff1a List 受博客限制 xff0c 如果您想获得更好的阅读体验 xff0c 请前往https github com Nrusher FreeRTOS Book或者https gitee com nrush F
  • FreeRTOS解析:任务的创建(TASK-2)

    任务的创建 受博客限制 xff0c 如果您想获得更好的阅读体验 xff0c 请前往https github com Nrusher FreeRTOS Book或者https gitee com nrush FreeRTOS Book下载PD
  • FreeRTOS解析:任务切换(TASK-3)

    任务切换 受博客限制 xff0c 如果您想获得更好的阅读体验 xff0c 请前往https github com Nrusher FreeRTOS Book或者https gitee com nrush FreeRTOS Book下载PDF

随机推荐

  • man命令使用指南

    man命令是linux下查找shell命令 函数等使用方法的利器 最简单的使用方式是man lt the thing you want gt 掌握上面那条命令应该也可以满足80 的使用场景了 这里记录一些更加深入的man命令使用的方法 xf
  • Vscode 搭建舒适的 Markdown 编辑环境

    文章目录 1 显示风格2 图片插入3 表格处理4 其他 1 显示风格 使用 Markdown notebook Microsoft xff0c 这个插件可以实现markdown的预览和编辑在同一页面下 xff0c 显示效果如下 外链图片转存
  • 如何启动英伟达TX2的两个CAN口

    英伟达的TX2有两路CAN xff0c 默认情况下是没有启动的 xff0c 通过ifconfig命令可以查看CAN是否启动 xff0c 如果启动了 xff0c 可以看到下面的设备 如果没有相应的设备 xff0c 则说明CAN没有启动起来 通
  • DDR基础

    欢迎关注我的博客网站nr linux com xff0c 图片清晰度和 xff0c 排版会更好些 xff0c 文章优先更新至博客站 DDR全称Double Data Rate Synchronous Dynamic Random Acces
  • OpenCV实验系列之Mask操作

    OpenCV实验系列之Mask操作 注意 xff1a 以下内容根据opencv官网提供的教程结合个人理解所得 xff0c 仅是个人学习笔记 xff0c 可能存在错误或偏差 xff0c 欢迎指正 OpenCV实验系列之Mask操作 Mask矩
  • UART通信可否只接VCC、RXD、TXD而不接GND?

    使用串口登录树莓派时出现的问题 xff1a 将TF卡插入到树莓派 xff0c 然后开启电源 xff0c 采用串口查看登录界面时出现误码 xff0c 最后排查得出是没有共地 那么假设有两款5V单片机 xff0c 独立供电 按理 xff0c 连
  • Linux 网络编程项目 —— FTP 网盘

    文章目录 项目简介知识点描述项目功能指令远程功能指令本地功能指令 使用的关键函数access 函数popen 函数chdir 函数strtok 函数strncmp 函数linux system函数是否执行成功判断方法 基本流程服务端客户端
  • VMware虚拟机

    文章目录 VMware虚拟机联网三种网络连接方式桥接模式联网原理NAT模式联网原理NAT模式配置手动配置网络关于apt命令关于ifconfig命令简介命令格式命令参数使用实例显示网络设备信息 激活状态的 开启 禁用网络 虚拟机内核与逻辑处理
  • 智能无障碍轮椅——ESP8266总体介绍及ESP-01S入门调试

    文章目录 一 ESP8266 介绍二 ESP8266的多种型号1 DT 062 ESP 01和ESP 01S 左边ESP 01S xff0c 右边ESP 01 3 ESP 12F 三 两种开发方式1 AT指令开发方式2 SDK开发方式 四
  • ROS操作系统快速入门

    文章目录 一 简介模块化 分布式的系统设计 二 安装虚拟机与ROS系统安装虚拟机的缺点安装ubuntu20 04 三 ROS系统安装切换镜像源视频教程 四 ROS应用商城APT源简介与指令介绍案例ros应用商城介绍 五 GIthub建立如下
  • Proteus 仿真8086+8255,运行时错误的解决

    要实现的功能 xff1a 通过开关控制流水灯的显示方式 电路原理图 xff1a 汇编源程序 xff1a CODE SEGMENT ASSUME CS CODE START MOV AL 90H OUT 36H AL AGAIN IN AL
  • 7年程序员项目经历归纳总结

    工作五年 xff0c 敲代码7年 xff0c 科研院所 国企 私企都有过经历 xff0c 发现项目的开发过程总是那么的相似 xff0c 过程举例如下 xff08 事实上画个流程图可能更好 xff0c 但是懒得画了 xff09 xff1a 1
  • Ubuntu20.04+ros(noetic)+RealsenseT265+ORB_SLAM3(一)

    noetic安装的很顺利 xff0c 照着官方文档来就行 xff1b Kalibr的编译 xff1a 一开始参考了 Ubuntu16 04 43 RealsenseT265跑通VINS Fusion IATBOMSW的博客 CSDN博客 x
  • 如何开启英伟达TX2的所有USB3.0口

    TX2新烧完系统之后 xff0c 默认只有一个USB3 0口使能了 xff0c 实际上TX2最多可以使能3个USB3 0口 xff0c 在TX2的design guide中 xff0c 可以找到相应的配置说明 xff0c 见下图 TX2默认
  • Ubuntu20.04+ros(noetic)+RealsenseT265+ORB_SLAM3(二)

    终于编译kalibr成功了 xff0c 可以标定t265了 标定分为三个步骤 xff0c 分别是IMU xff0c 双目和联合标定 xff0c 标定过程仍然参考了Ubuntu16 04 43 RealsenseT265跑通VINS Fusi
  • ADRC控制系统离散形式的稳定性证明

    1 引言 这个问题是最近课题组一个师兄的SCI控制论文的一部分 xff0c 应师兄之邀 xff0c 博主贡献了控制系统稳定性的数学证明 博主目前的研究方向跟控制领域毫无关联 xff0c 只负责其中的系统收敛性证明 师兄的控制系统是一个较为一
  • 固定翼无人机的自主降落-Simulink纵向控制仿真

    本项目来源于一项课程设计 xff0c 用于简单固定翼模型的降落 需要模型的请点击下载链接 xff0c 通过积分获取 https download csdn net download nudt zrs 12454986 练习过固定翼飞行的 x
  • 找工作笔试中的常见考点

    1 Java程序初始化执行顺序 xff1a 父类静态变量 父类静态代码块 子类静态变量 子类静态代码块 父类非静态变量 父类非静态代码块 父类构造函数 子类非静态变量 子类非静态代码块 子类构造函数 2 程序运行结果是多少 xff1f pu
  • eclipse修改后无法正常保存文件解决办法

    ctrl 43 s保存修改的代码时报错 window gt Preferences gt General gt Content Types gt Text gt 选中出现保存问题的文件类型 xff08 如JSP xff09 在底部出现 39
  • Ubuntu18.04+ros-melodic (包括Ubuntu16.04+ros-kinetic)乐视奥比中光相机在nano、tx2、PC等设备上的安装与使用,并解决无法显示rgb信息的问题

    2020 12 25修改 xff1a 本文底部所说的无法显示rgb的情况 xff0c 如果你买的是乐视就按照这个来绝对ok 如果你买的是奥比中光的原装正版 xff0c 直接启动launch文件就行了 xff0c 无须再修改端口号 本来用Ki