1.安装openni2

参考:https://blog.csdn.net/D206_hero/article/details/78985859?utm_source=blogxgwz3

 sudo apt-add-repository ppa:deb-rob/ros-trusty && sudo apt-get update
 sudo apt-get install libopenni2-dev

2.安装libfreenect2

参考:http://www.cnblogs.com/hitcm/p/5118196.html

注意:按照上面链接中的方法编译成功,测试./bin/Protonect,如果没问题,则按照下面方法重新编译一遍:

cmake .. -DBUILD_OPENNI2_DRIVER=ON
make
sudo make install
sudo cp ../platform/linux/udev/-kinect2.rules /etc/udev/rules.d/
测试: ./bin/Protonect

如果按照上面语句直接编译,可能会出现以下错误:

[Debug] [DepthPacketStreamParser] not all subsequences received
[Debug] [DepthPacketStreamParser] not all subsequences received
[Debug] [RgbPacketStreamParser] skipping rgb packet!
[Debug] [RgbPacketStreamParser] skipping rgb packet!
[Debug] [RgbPacketStreamParser] skipping rgb packet!
The viewer is turned off. Received frames. Ctrl-C to stop.
The viewer is turned off. Received frames. Ctrl-C to stop.
The viewer is turned off. Received frames. Ctrl-C to stop.
[Debug] [RgbPacketStreamParser] skipping rgb packet!
The viewer is turned off. Received frames. Ctrl-C to stop.
The viewer is turned off. Received frames. Ctrl-C to stop.
The viewer is turned off. Received frames. Ctrl-C to stop.
The viewer is turned off. Received frames. Ctrl-C to stop.
The viewer is turned off. Received frames. Ctrl-C to stop.
The viewer is turned off. Received frames. Ctrl-C to stop.
The viewer is turned off. Received frames. Ctrl-C to stop.

如果没有问题,则在此路径下执行如下操作:

sudo apt-get install openni2-utils
sudo make install-openni2
NiViewer2

如果能显示图像,则可以编译Elasticfusion.

3.编译Elasticfusion

编译Core:

git clone https://github.com/mp3guy/ElasticFusion.git
cd ElasticFusion
cd Core
mkdir build && cd build
cmake ../src/
make
sudo make install
sudo ldconfig

编译GPUTest:

cd ../../GPUTest
mkdir build && cd build
cmake ../src/
make
sudo ldconfig

编译GUI

cd ../../GUI
mkdir build && cd build
cmake ../src/
make
sudo make install
sudo ldconfig

注:跑kinect2时,将MainController.cpp第37行的Resolution::getInstance(640, 480)改为Resolution::getInstance(512, 424)

否则可能会出现以下错误:

ElasticFusion: /home/slam/ElasticFusion/GUI/src/Tools/OpenNI2Interface.cpp:: 
OpenNI2Interface::OpenNI2Interface(int, int, int): Assertion `findMode(width, height, fps) && "Sorry, mode not supported!"' failed.

总之,非常的玄学。。。。。。

ubuntu16.04 使用kinectv2跑Elasticfusion的更多相关文章

  1. ubuntu16.04 运行elasticfusion

    环境:Ubuntu16.04 64bit    Kinect V1 XBOX 360 1.安装OpenNI2并试运行 https://fredfire1.wordpress.com/2016/09/2 ...

  2. caffe学习一:ubuntu16.04下跑Faster R-CNN demo (基于caffe). (亲测有效,记录经历两天的吐血经历)

    兜兜转转,兜兜转转; 一次有一次,这次终于把Faster R-CNN 跑通了. 重要提示1:在开始跑Faster R-CNN之前一定要搞清楚用的是Python2 还是Python3. 不然你会无限次陷 ...

  3. Ubuntu16.04跑loam_velodyne

    Ubuntu16.04,ros kinetic 其实按照github上的README.md来编译就好 cd ~/catkin_ws/src git clone https://github.com/l ...

  4. acm的ubuntu (ubuntu16.04 安装指南,chrome安装,vim配置,git设置和github,装QQ)

    日常手贱把ubuntu14.04更新到了16.04,然后就game over了.mdzz,不然泥萌也看不到这篇博客了=.= 然后花了些时间重装了一个16.04版的,原来那个14.04的用可以用,就是动 ...

  5. caffe安装:ubuntu16.04 + opencv2.4 + python 2.7+ CUDA 8.0 RC + CuDNN 5.0

    官方教程:http://caffe.berkeleyvision.org/install_apt.html 主要参考教程: https://github.com/BVLC/caffe/wiki/Ubu ...

  6. Ubuntu16.04 安装配置Caffe

    Caffe已经是第三次安装配置了,为什么是第三次呢?因为我实在是低估了深度学习对于硬件的要求.第一次我在自己笔记本上配置的单核,CPU only ...  结果是,样例数据跑了4小时,这还怎么玩?第二 ...

  7. 深度学习主机环境配置: Ubuntu16.04 + GeForce GTX 1070 + CUDA8.0 + cuDNN5.1 + TensorFlow

    深度学习主机环境配置: Ubuntu16.04 + GeForce GTX 1070 + CUDA8.0 + cuDNN5.1 + TensorFlow 最近在公司做深度学习相关的学习和实验,原来一直 ...

  8. Ubuntu16.04+hadoop2.7.3环境搭建

    转载请注明源出处:http://www.cnblogs.com/lighten/p/6106891.html 最近开始学习大数据相关的知识,最著名的就是开源的hadoop平台了.这里记录一下目前最新版 ...

  9. 配有Tesla K40c的服务器新装Ubuntu16.04并安装CUDA8.0、Anaconda3、Matlab2016a、OPENCV3.1、CuDNN5.1、MXNet

    注:本文原创,作者:Noah Zhang  (http://www.cnblogs.com/noahzn/) 决定加入深度学习的大军,感谢导师给配了台新设备!第一次接触服务器并配置开发环境,整个过程中 ...

随机推荐

  1. ubuntu14/16 安装python3-opencv3_百度经验

    http://jingyan.baidu.com/article/e4511cf348dac52b845eafc8.html

  2. python笔记21-内置函数

    # print(all([1,2,3,4]))#判断可迭代的对象里面的值是否都为真# print(any([0,0,0,0,0]))#判断可迭代的对象里面的值是否有一个为真# print(bin(10 ...

  3. Redis 分布式锁及缓存注释的使用方法

    使用工具:Apache an 测压命令: ab -n 100 -c 100 http://www.baidu.com -n代表模拟100个请求,-c代表模拟100个并发,相当于100个人同时访问 ab ...

  4. effective java——32用EnumSet代替位域

    什么是位域?为什么用到它?先来看一个例子: public class Test { public static final byte STYLE_BOLD = 1<<0; // 1 pub ...

  5. electron-vue初始桌面应用

    1.安装vue-cli脚手架 npm install -g vue-cli 2.创建项目:vue init simulatedgreg/electron-vue my-project 3.安装依赖 : ...

  6. 最近学习的 Node.js 数组_函数

    数组的排序,用到了箭头函数 let arr=[, , , , , , ]; /* arr.sort(function (n1, n2){ return n1-n2; }); */ // 等价于上面的写 ...

  7. ThreadPoolExecutor使用

    构造方法参数讲解  参数名 作用 corePoolSize 核心线程池大小 maximumPoolSize 最大线程池大小 keepAliveTime 线程池中超过corePoolSize数目的空闲线 ...

  8. 【转】Android-Input 触控笔

    https://source.android.com/devices/accessories/stylus 触控笔 Android 6.0 及更高版本支持蓝牙 (BT).蓝牙低功耗 (BTLE) 或 ...

  9. Redux的工作流程

    1.Redux 是一个专门用来管理数据业务或逻辑状态的框架,它也可以实现代码结构的规范化并提供组件之间通信的便利,而这两点,对于大型应用来说非常关键. 2.工作流程: Redux 三大原则 单一数据源 ...

  10. js图片库

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...