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. mbstowcs 和ifstream 前为何要setlocale

    最近看公司的一些代码,发现一些地方调用了std::locale::global(locale("")); (c++) 和 setlocale(LC_ALL, "" ...

  2. java知识点总结--java开发环境搭建

    安装 JDK(Java Development Kit) 和开发工具 如:eclipse,myeclipse,idea等 配置系统环境变量 查看系统环境变量 1.通过 我的电脑--->“属性”- ...

  3. python 语法的一些特性记录

    装饰器@符号 装饰器本质上是一个 Python 函数或类,它可以让其他函数或类在不需要做任何代码修改的前提下增加额外功能,装饰器的返回值也是一个函数/类对象.它经常用于有切面需求的场景,比如:插入日志 ...

  4. Oracle误删除数据和表的恢复办法包括truncate

    在工作中我们操作数据库的时候经常会发生一个不该发生的问题:用户意外的删除一个非常重要的表或者是表中的数据而且没有备份,需要尽快的恢复,以下就是解决的办法: 主要是利用Oracle回收站的闪回特性ora ...

  5. C++进程间通信的十一种方法

    转载: https://www.cnblogs.com/swunield/articles/3893250.html 进程通常被定义为一个正在运行的程序的实例,它由两个部分组成: 一个是操作系统用来管 ...

  6. 面试知识点准备-C++常见问题

    博客园写写格式简单的文章还行,格式一复杂就不行了,可能是我不会用吧,我有强迫症,有道云格式很好用,以后去有道写这种东西了 有道云笔记链接:http://note.youdao.com/noteshar ...

  7. Linux 驱动——Button驱动6(mutex、NBLOCK、O_NONBLOCK)互斥信号量、阻塞、非阻塞

    button_drv.c驱动文件: #include <linux/module.h>#include <linux/kernel.h>#include <linux/f ...

  8. 1.django项目的创建(在CMD中)

    django项目的创建(在CMD中) 1.切换到你想要存储项目的位置,我这里保存在桌面上 cd Desktop 2.创建一个django项目,项目名叫guest django-admin startp ...

  9. Image & Raw Image的区别

    一.面板参数 1.Image类型: Source Image:图片资源(sprite) Color:颜色 Material:材质 Raycast Target :是否作为射线目标 Sprite 2D: ...

  10. Android连接服务器端的Socket

    package com.example.esp8266; import java.io.IOException;import java.io.InputStream;import java.io.Ou ...