本文参考
Using Orbbec Astra 3D cameras
C++20学习:基于Ubuntu系统编译gcc10.2.0
linux下编译安装opencv生成opencv.pc

摄像头方案 / 型号介绍

最近项目需要开发立体视觉,逛了一圈决定采用结构光摄像头方案,该技术比较成熟,开发难度相对TOF方案较小

具体摄像头型号为 乐视三合一体感摄像头LeTMC-520 基本就是奥比中光 Orbbec Astra Pro 的换皮版 就连插在电脑上显示的设备名称都是 Astra Pro

2020年底 奥比中光宣布了与Opencv的合作 OpenCV增加对Astra系列3D深度相机的支持后 就可以使用cv::VideoCapture直接获取深度传感器信息 与使用其获取彩色相机视频流的过程一致 极大的方便了开发

随着乐视的倒闭 商家手里囤积的乐视摄像头在淘宝和闲鱼低价抛售 无疑成为当下性价比最高的开发用结构光摄像头

以下列出两者的对比

型号 Astra Pro 乐视三合一
外观 黑色外壳 银色铝合金 手感很好
工作范围 0.6m~8m 0.6m~4m
可视角度 H66.1’ V40.2’ H60’ V46.7’
彩色图分辨率 1280x720
640x480
320x240
1280x720
640x480
深度图分辨率 1280x1024
640x480
320x240
160x120
640x480
320x240
160x120
接口 自带usb线 需要外接usb公对母线
我的方案是使用usb拓展坞

安装OpenNi

在奥比中光官网下载openni安装包

解压后进入目录~/OpenNI_2.3.0.66/Linux/OpenNI-Linux-x64-2.3.0.66
需要注意的是所进入的目录要根据电脑cpu架构(x86
x64 arm)决定 我的电脑是64位处理器 所以进入的目录是 /OpenNI-Linux-x64-2.3.0.66
在终端中执行

$ chmod +x install.sh
$ sudo ./install.sh

完成后重新插拔摄像头以使udev规则生效
然后运行如下命令更改环境变量

$ source OpenNIDevEnvironment

验证环境变量是否生效 终端与下列情况一致则代表安装成功

$ echo $OPENNI2_INCLUDE
/home/user/OpenNI_2.3.0.63/Linux/OpenNI-Linux-x64-2.3.0.63/Include
$ echo $OPENNI2_REDIST
/home/user/OpenNI_2.3.0.63/Linux/OpenNI-Linux-x64-2.3.0.63/Redist

下载并安装g++ (GCC) 10.2.0(非必须)

opencv官方推荐使用cmake编译

在安装cmake之前要确保linux系统上已经下载了gcc和g++ 否则会报错
嫌麻烦不想安装最新版的话可以直接输入以下命令

sudo apt-get gcc g++

若要下载最新版10.2.0 则要先下载软件安装包
下载gcc
解压后打开终端运行命令 会在线下载依赖包

cd gcc-10.2.0
./contrib/download_prerequisites


然后安装build-essential软件包

sudo apt-get install build-essential

再然后返回上级目录->建立build文件夹->进入文件夹->生成makefile->开始编译
我只编译c和c++两种语言 另外j后面的数字是cpu同时运行的线程数 具体视cpu参数为准 线程越多速度越快
具体命令为

cd ..
mkdir gcc-build-10.2.0 && cd gcc-build-10.2.0
../gcc-10.2.0/configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
make -j8

经过漫长的等待 make完成后安装

sudo make install

结束后查看版本 如图显示则表明安装成功

g++ --version

下载并安装Cmake

在此之前要先下载OpenSSL development package和qtbase5-dev

sudo apt-get install libssl-dev qtbase5-dev

在官网下载cmake-x.xx.x.tar.gz后解压

在解压后的文件夹中打开终端输入

$ ./bootstrap --qt-gui
$ make -j8
$ sudo make install

至此cmake安装完成 可以通过如下命令查看版本

cmake -version

配置OpenCv

安装opencv之前需要根据以下命令预装依赖库

[compiler] sudo apt-get install build-essential
[required] sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
[optional] sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev

然后在opencv官网下载4.5.1以上版本的opencv
点击【sources】即开始下载

下载完后解压 cd到opencv目录内 可选BUILD_EXAMPLES项以得到astra摄像头的例程

$ mkdir build
$ cd build
$ cmake -DWITH_OPENNI2=ON -DBUILD_EXAMPLES=ON -DOPENCV_GENERATE_PKGCONFIG=ON ..

终端如图所示则表示openni库被顺利找到(openni一栏显示yes,末尾显示configuring done和Generating done)


值得一提的是 在配置openni的最后一步:

$ source OpenNIDevEnvironment

之后 如果退出当前终端的话 source的作用就会消失 所以我的做法是source后在当前终端cd到opencv的文件夹中 再进行mkdir build等一系列操作

最后是编译并安装

make -j8
sudo make install

如图所示 至此openni与opencv环境搭建成功

配置PKG-CONFIG

sudo vim /etc/ld.so.conf.d/opencv.conf

按i即可以开始编辑文本 在文件末尾添加:/usr/local/lib

如果这是我们第一次安装opencv,这个文件可能是个空文件,这里的/usr/local/lib就是我们安装opencv时安装的那些库的目录

然后保存编辑并退出回终端 方法为输入冒号:,再输入wq

退回终端后 输入

sudo ldconfig
sudo vim /etc/bash.bashrc

然后在文本末尾处添加:

PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfigexport PKG_CONFIG_PATH

然后同样:wq,再在终端输入以下命令以更新系统的环境变量

source /etc/bash.bashrc

至此pkg-config配置完成

在Qt Creator打开Astra与opencv的例程

以管理员身份打开Qt Creator
步骤是打开qt的安装目录 在此路径下打开终端
/QT/Tools/QtCreator/bin

终端中输入

sudo ./qtcreator

新建工程在此不赘述
pro文件中要加入以下

INCLUDEPATH +=  /usr/local/include \/usr/local/include/opencv4 \/usr/local/include/opencv4/opencv2LIBS += /usr/local/lib/lib*
LIBS +=-lpthread

源文件的话opencv官方有例程 在opecv的安装目录内
~/opencv-4.5.1/samples/cpp/tutorial_code/videoio/
orbbec_astr
值得注意的是,在打开彩色摄像头的命令这里 需要做一下小更改,加入体感摄像头的彩色摄像头对应的索引号 我的电脑上是2 具体是哪个网上有挺多查找的办法的 像我的话比较懒 就直接从0开始一个一个试

VideoCapture colorStream(2,CAP_V4L2);

运行就可以见证奇迹
记得深度图的有效范围在0.4米以外

全网最详细 Opencv + OpenNi + 奥比中光(Orbbec) Astra Pro /乐视三合一体感摄像头LeTMC-520 + linux 环境搭建相关推荐

  1. 奥比中光 astra 乐视三合一体感摄像头采集深度图彩色图并保存

    本文参考的文章: 目录 ROS下开发 运行ROS节点 查看相机的话题及画面 订阅画面并保存 Python环境下开发 调用摄像头并保存采集画面 C++环境下开发 C++环境配置 代码编译 ROS下开发 ...

  2. 乐视三合一体感摄像头(Orbbec Astra Pro)在ROS下安装使用

    1.安装相关依赖软件 sudo apt install ros-$ROS_DISTRO-rgbd-launch ros-$ROS_DISTRO-libuvc ros-$ROS_DISTRO-libuv ...

  3. 奥比中光Orbbec Astra Pro体感摄像头“标定全过程”

    1.前期准备工作 在ROS中配置奥比中光Orbbec Astra Pro,保证可以正常显示RGB.深度.IR.彩色图像. 2.安装标定功能包 终端中输入命令 sudo apt install ros- ...

  4. 在ROS使用奥比中光Orbbec Astra Pro

    一.相机驱动的安装 1.安装依赖 $ sudo apt-get install build-essential freeglut3 freeglut3-dev 2.检查udev版本,需要libudev ...

  5. 最全“乐视三合一奥比中光Orbbec Astra Pro体感摄像头”标定全过程(1)

    1.前期准备工作 在ROS中配置乐视三合一奥比中光Orbbec Astra Pro,保证可以正常显示RGB.深度.IR.彩色图像. 2.安装标定功能包 终端中输入命令 sudo apt install ...

  6. 奥比中光深度摄像头_ros与深度相机入门教程-在ROS使用奥比中光Orbbec Astra Pro

    ros与深度相机入门教程-在ROS使用奥比中光Orbbec Astra Pro 说明: 介绍如何在ros安装和使用奥比中光Orbbec Astra Pro OrbbecAstra介绍 astra_ca ...

  7. 使用奥比中光Orbbec Astra Pro在ROS下跑orb_slam2

    使用奥比中光Orbbec Astra Pro在ROS下跑orb_slam2 一.奥比中光摄像头驱动 1. Install ROS 1) Create a ROS Workspace(if you do ...

  8. 在ROS中使用奥比中光Orbbec Astra Pro深度相机(二)

    在之前外面已经介绍过Orbbec Astra Pro深度相机,同学们可以点击☞☞☞了解详情,接着再来介绍介绍. 有兴趣的可以看一下ROS Wiki上的介绍: Orbbec Astra Pro介绍 as ...

  9. 奥比中光Orbbec Astra Pro RGBD 3D视觉传感器在ROS(indigo和kinetic)使用说明 rgb depth同时显示

    Orbbec Astra Pro传感器在ROS(indigo和kinetic)使用说明 rgb depth同时显示 这款摄像头使用uvc输入彩色信息,需要libuvc和libuvc_ros这样才能在R ...

最新文章

  1. 2021级山西高考成绩查询时间,2021山西高考成绩什么时候出
  2. 面试官:说说你知道的几种负载均衡分类
  3. Hadoop集群的NameNode的备份
  4. 面向 CPython GIL 的多线程编程要点
  5. linux安装篇之mongodb安装及服务自启动配置
  6. Geek爱旅行 - 穿越时间的旅行
  7. leetCode 53. maximum subarray
  8. 获得百度智能云access token
  9. c语言如何调用外部文件的函数调用,keil 中如何调用其他文件的函数
  10. linux不允许将硬链接指向目录,为什么 UNIX/Linux 不允许目录硬链 【翻译】
  11. GB2312转换为Unicode编码表
  12. laravel框架操作数据库
  13. 使用win10开启wifi移动热点解决软媒wifi助手开启失败问题
  14. Windows电脑电源选项开启“卓越性能”模式
  15. 从U盘还原完ghost系统,重启就提示bootmgr is missing
  16. Prolog语言介绍(一)
  17. 学计算机应该具备什么能力,学习计算机专业该具备那些能力?
  18. php word转化为html,php如何把word转换为html(这里使用COM)
  19. 数据仓库工程师、大数据开发工程师、BI工程师、ETL工程师之间有什么区别?
  20. @MapKey用法说明

热门文章

  1. 马斯克说用激光雷达都是傻子?中国自动驾驶业者被惹怒了!
  2. B站哔哩哔哩21届秋招算法岗笔试 假设货币系统包含面值1元、4元、16元、64元共计4种硬币,以及面值1024元的纸币。现在小明使用1024元的纸币购买了一件价值为N(0<N<=1024)的商品
  3. IOS-模糊搜索(支持中文,拼音,字母)
  4. 想拥有一个自由时间的职业_如何以自由职业者的身份管理时间
  5. 彩票走势图xcode源码
  6. Moo Volume
  7. Python开发_励志小公式分享
  8. 批量创建带密码的7z和rar压缩包工具
  9. 木子-前端-方法标签属性小记(普通jsp/html篇)2018
  10. 研究好vif 和vshow