Ubuntu18.04、16.04中Kinect2驱动安装并且使用Python调用Kinect2以及常见问题解决方法

文章目录

  • 前言
    • Ubuntu+python调用Kinect2的环境配置与接口安装
  • 一、Kinect2
  • 二、使用步骤
    • 1.安装驱动程序
    • 2.下载libfreenect2源码
    • 3.安装依赖库
    • 4.编译安装源码
    • 5.设置udev规则
    • 6.测试
  • 三、安装Python接口
    • 1.安装必要的包
    • 2.安装Pylibfreenect2
  • 可能的报错


前言

Ubuntu+python调用Kinect2的环境配置与接口安装

一、Kinect2

Ubuntu18.04、16.04中Kinect2驱动安装并且使用Python调用Kinect2以及常见问题解决方法_第1张图片

二、使用步骤

1.安装驱动程序

先安装各种依赖:

$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get dist-upgrade
$ sudo apt-get install python-opencv
$ sudo apt-get install python-dev
$ sudo apt-get install python-pip
$ sudo pip install openni
$ sudo apt-get install git

2.下载libfreenect2源码

代码如下(示例):

1.下载libfreenect2的源码
从GitHub中下载:
git clone https://github.com/OpenKinect/libfreenect2.git
或者从gitee中下载:
git clone https://gitee.com/seaeastxu/libfreenect2.git
然后切换到libfreenect2路径下:
cd libfreenect2

3.安装依赖库

安装build tools:
sudo apt-get install build-essential cmake pkg-config

安装 libusb. The version must be >= 1.0.20. :
sudo apt-get install libusb-1.0-0-dev

安装 TurboJPEG:
sudo apt-get install libturbojpeg libjpeg-turbo8-dev

安装 OpenGL:
sudo apt-get install libglfw3-dev

4.编译安装源码

在libfreenect2路径下创建一个build文件夹并且转换过去:
mkdir build && cd build
进行编译:
cmake … -DCMAKE_INSTALL_PREFIX=$HOME/freenect2
make
sudo make install

注:如果有报错:
Could NOT find TegraJPEG (missing: TegraJPEG_LIBRARIES TegraJPEG_INCLUDE_DIRS TegraJPEG_WORKS)
package ‘libva’ not found
package ‘libva-drm’ not found
————————————————
就删除build文件,执行下面的操作:
sudo apt-get install libva-dev libjpeg-dev
后继续上面创建build编译安装的操作
(也有可能是需要更新ubuntu源软件源,更新软件源就好)

5.设置udev规则

sudo cp …/platform/linux/udev/90-kinect2.rules /etc/udev/rules.d/

6.测试

以前安装的面向ROS编译的Kinect V2驱动才行。
./bin/Protonect
如果全程到这里没问题的话,就可以启动成功看见图像了,那么Kinect2的驱动就安装完成了。

**可能出现的错误:subpackge too large。
那么libusb要下载大于1.0.20以上的版本。

三、安装Python接口

1.安装必要的包

pip install opencv
pip install cython
pip install numpy
pip install pylibfreenect2
pip install nose

2.安装Pylibfreenect2

从gitee上面下载源码
git clone https://gitee.com/TF-boy/pylibfreenect2.git
cd pylibfreenect2
安装:
python setup.py install

到这里,如果能跑通examples中的程序就说明一切都ok了!!


可能的报错

Traceback (most recent call last):
File “selective_streams.py”, line 8, in
from pylibfreenect2 import Freenect2, SyncMultiFrameListener
File “/home/jun/.local/lib/python3.5/site-packages/pylibfreenect2/init.py”, line 108, in
from .libfreenect2 import *
ImportError: libfreenect2.so.0.2: cannot open shared object file: No such file or directory

说明可能是前面没有设定好udev规则。
解决方案:
再执行一下:
sudo cp …/platform/linux/udev/90-kinect2.rules /etc/udev/rules.d/

在全程安装编译的过程注意各个参数安装的位置,可能每个人电脑环境不一样,cmake,设置udev规则等情况的时候需要输入的路径也不一样,得根据驱动安装位置去找是否存在该路径文件,避免安装无效。

你可能感兴趣的:(ubuntu,python,linux)