ubuntu16.04 使用kinectv2跑Elasticfusion
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的更多相关文章
- ubuntu16.04 运行elasticfusion
环境:Ubuntu16.04 64bit Kinect V1 XBOX 360 1.安装OpenNI2并试运行 https://fredfire1.wordpress.com/2016/09/2 ...
- caffe学习一:ubuntu16.04下跑Faster R-CNN demo (基于caffe). (亲测有效,记录经历两天的吐血经历)
兜兜转转,兜兜转转; 一次有一次,这次终于把Faster R-CNN 跑通了. 重要提示1:在开始跑Faster R-CNN之前一定要搞清楚用的是Python2 还是Python3. 不然你会无限次陷 ...
- Ubuntu16.04跑loam_velodyne
Ubuntu16.04,ros kinetic 其实按照github上的README.md来编译就好 cd ~/catkin_ws/src git clone https://github.com/l ...
- acm的ubuntu (ubuntu16.04 安装指南,chrome安装,vim配置,git设置和github,装QQ)
日常手贱把ubuntu14.04更新到了16.04,然后就game over了.mdzz,不然泥萌也看不到这篇博客了=.= 然后花了些时间重装了一个16.04版的,原来那个14.04的用可以用,就是动 ...
- 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 ...
- Ubuntu16.04 安装配置Caffe
Caffe已经是第三次安装配置了,为什么是第三次呢?因为我实在是低估了深度学习对于硬件的要求.第一次我在自己笔记本上配置的单核,CPU only ... 结果是,样例数据跑了4小时,这还怎么玩?第二 ...
- 深度学习主机环境配置: Ubuntu16.04 + GeForce GTX 1070 + CUDA8.0 + cuDNN5.1 + TensorFlow
深度学习主机环境配置: Ubuntu16.04 + GeForce GTX 1070 + CUDA8.0 + cuDNN5.1 + TensorFlow 最近在公司做深度学习相关的学习和实验,原来一直 ...
- Ubuntu16.04+hadoop2.7.3环境搭建
转载请注明源出处:http://www.cnblogs.com/lighten/p/6106891.html 最近开始学习大数据相关的知识,最著名的就是开源的hadoop平台了.这里记录一下目前最新版 ...
- 配有Tesla K40c的服务器新装Ubuntu16.04并安装CUDA8.0、Anaconda3、Matlab2016a、OPENCV3.1、CuDNN5.1、MXNet
注:本文原创,作者:Noah Zhang (http://www.cnblogs.com/noahzn/) 决定加入深度学习的大军,感谢导师给配了台新设备!第一次接触服务器并配置开发环境,整个过程中 ...
随机推荐
- ubuntu14/16 安装python3-opencv3_百度经验
http://jingyan.baidu.com/article/e4511cf348dac52b845eafc8.html
- python笔记21-内置函数
# print(all([1,2,3,4]))#判断可迭代的对象里面的值是否都为真# print(any([0,0,0,0,0]))#判断可迭代的对象里面的值是否有一个为真# print(bin(10 ...
- Redis 分布式锁及缓存注释的使用方法
使用工具:Apache an 测压命令: ab -n 100 -c 100 http://www.baidu.com -n代表模拟100个请求,-c代表模拟100个并发,相当于100个人同时访问 ab ...
- effective java——32用EnumSet代替位域
什么是位域?为什么用到它?先来看一个例子: public class Test { public static final byte STYLE_BOLD = 1<<0; // 1 pub ...
- electron-vue初始桌面应用
1.安装vue-cli脚手架 npm install -g vue-cli 2.创建项目:vue init simulatedgreg/electron-vue my-project 3.安装依赖 : ...
- 最近学习的 Node.js 数组_函数
数组的排序,用到了箭头函数 let arr=[, , , , , , ]; /* arr.sort(function (n1, n2){ return n1-n2; }); */ // 等价于上面的写 ...
- ThreadPoolExecutor使用
构造方法参数讲解 参数名 作用 corePoolSize 核心线程池大小 maximumPoolSize 最大线程池大小 keepAliveTime 线程池中超过corePoolSize数目的空闲线 ...
- 【转】Android-Input 触控笔
https://source.android.com/devices/accessories/stylus 触控笔 Android 6.0 及更高版本支持蓝牙 (BT).蓝牙低功耗 (BTLE) 或 ...
- Redux的工作流程
1.Redux 是一个专门用来管理数据业务或逻辑状态的框架,它也可以实现代码结构的规范化并提供组件之间通信的便利,而这两点,对于大型应用来说非常关键. 2.工作流程: Redux 三大原则 单一数据源 ...
- js图片库
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...