Kinect V2 深度图与彩色图融合(Ubuntu 14.04)

参考Kinect V2在Ubuntu 14.04系统上的驱动配置与安装在一个全新安装的 Ubuntu 14.04系统中配置完成相关的驱动及其依赖。

Kinect V2深度图与彩色图融合的方式,简单粗暴,由于深度图像是 512*424大小,因此,直接把彩色图像缩放成对应的 512*424,然后像素点一一对应。至于原始大小的彩色图像,那么就是一片像素对应同一个深度即可。

注意,这个方式只适合 Kinect V2,可以理解成 Kinect V2的设计就是这样的,两个设备出厂的时候就校准为这样的输出。

具体的转换代码参考registration.cpp,Registration.cpp,建议直接调用驱动层提供的功能来实现,这样的话,一系列的参数设置可以同步,否则上层每次修改了分辨率等参数的时候,要自己手工修改这些数据。

Python深度图与彩色图融合的例子如下:

 

参考连接


Kinect V2在Ubuntu 14.04系统上的驱动配置与安装

以下的操作是在一个全新安装的 Ubuntu 14.04系统上进行的,目前已知在安装了 ROS的系统上并且已经安装过 ROS版本的 Kinect V2驱动的,可能需要先移除以前安装的面向 ROS编译的 Kinect V2驱动才行。

首先是安装配置驱动程序以及运行依赖库

参照libfreenect2 install linux的说明安装驱动

安装 Python扩展

Python例子如下:

注意,如果编译的时候出现如下错误:

则该现象出现的原因是首先参照

进行了编译,并且编译的时候是没有开启 CUDA支持的。

然后执行了

因此在 ~/libfreenect2/include/libfreenect2/下面已经生成了 config.hexport.h这两个文件。
然后又按照我们这里的

重新编译,并且这次开启了 CUDA支持,导致 GCC在编译的时候使用了我们在 ~/libfreenect2/build/libfreenect2/下面生成的 config.hexport.h这两个文件,而 NVCC却使用了 ~/libfreenect2/include/libfreenect2/下面的 config.hexport.h进行编译,导致上面的错误发生。

因此删除全部的临时文件,然后再次重新编译即可。

参考连接