解决InfiniTAM在windows下的驱动问题

前情回顾

前几天在windows上配置InfiniTAM工程,最后在工程运行的时候出现了无法找到drivers的情况,可是明明自己用的kinect v1测试项目已经运行成功(运行NiViewer程序),但是无法连接到项目中,那么极有可能工程所用的驱动并不匹配,所以今天就这个问题展开,我们进一步进行实验。

同时在方法上,我建议先集中找几篇文章看一下过程,再结合自己配置的过程找一下不同之处,这样一来,不进行盲目实验,导致无效的实验过程,另外这样还能在实验过程中多思考,总结出配置实验的有效方法,配环境是个体力活,当然多添加点脑力劳动,才会更有效,话不多说,我们开始。。。

搜集资料

上午10点,先去解决下周边问题,我得给自己冲杯咖啡。

网上关于这个的资料还真是少,只能凭着仅有一点的资源找点灵感了,我们可能需要一点点的推理和概括能力。

参考链接如下(按有效程度排序):

【链接】VS2013+Kinectv2.0+infiniTAM三维重建
Kinect2的安装以及关于OpenNI2遇到的问题(OpenNI2显示no devices found)
【链接】Kinect开发笔记之四检测并调试Kinect设备
【链接】InfiniTAM艰辛的配置过程
win10 环境下 配置InfiniTAM v3 + OpenNI 2 + Kinect v2 fusion 环境

问题再现

安装Kinect for windows 2.0

注意点,安装的时候kinect不能连接电脑,所以如果之前装过驱动的话还得先把驱动删除掉,下载SDK;

解决InfiniTAM在windows下的驱动问题_第1张图片

安装后的路径是:C:\Program Files\Microsoft SDKs\Kinect

安装完了之后需要重启下电脑;

连接Kinect

电脑会自动安装Kinect所需要的驱动,这里有一个注意,就是usb一定要用3.0的接口;

之后用小娜搜索kinect打开驱动测试查看;

解决InfiniTAM在windows下的驱动问题_第2张图片

貌似我的kinect v1应该装一个1版的驱动,这里程序里没有显示,转战1.8版本吧(记着把v2.0删除掉,小不删则乱大谋);

解决InfiniTAM在windows下的驱动问题_第3张图片

上面这个是驱动2.0的硬件要求,我们的设备是kinect v1所以转战是很必要的;Kinect for Windows SDK v1.8,1.8没有那么多的要求,usb也不非必须用3.0,下载安装(安装完了顺便把开发工具包也装上);

运行Developer Toolkit Browser v1.8.0,在Tools中找到运行的程序测试驱动的安装是否成功,运转正常你会发现在闪烁的绿灯左边,会有红灯亮起;

解决InfiniTAM在windows下的驱动问题_第4张图片

上午结束,用时2个小时左右,效率不太高哈!

解决InfiniTAM在windows下的驱动问题_第5张图片

OpenNI2

接下来安装OpenNI2,保险起见,我把x86和x64位的都安装了一遍;安装完OpenNI2打开测试程序,出现深度图那么这个就完事了,注意的点是先要关掉上面的驱动的测试程序,否则会显示设备Off的界面;

解决InfiniTAM在windows下的驱动问题_第6张图片

解决InfiniTAM在windows下的驱动问题_第7张图片

回到工程

这一步解决了之后回到之前我们的工程,关于cmake等的配置可参考之前文章,不再多说,出门左转;

在这里我们根据博客所说使用32位的程序进行编译,因为64位会发生某些未知的错误,我现在对未知很恐惧,时间全部用来解决恐惧不是一件好的事情;

我们用不是64位版本的VS来编译,首先编译freeglut-2.8.1(工程要求版本2.8.1或3.0.0),具体方法参照上面,打开freeglut-2.8.1\VisualStudio\2012下的VS工程,build成功在freeglut-2.8.1libinclude分别会有freeflut.libGL文件夹;

接下来我们用不是64位版本的VS来编译InfiniTAM,回到cmake,添加freeglut位置并勾选openni,

解决InfiniTAM在windows下的驱动问题_第8张图片

添加openni库位置,并添加DOPEN_NI_ROOT

解决InfiniTAM在windows下的驱动问题_第9张图片

生成并打开;

接下来在编译过程中说是没有找到cuda,只能从cuda路径下手了;
解决InfiniTAM在windows下的驱动问题_第10张图片

搞了一下午,看来这个编译问题还真的是cuda的问题,不清楚是版本还是链接,总之现在编译成功了的InfiniTAM例子目录下,需要把OpenNI2/Redist下的所有东西全部拷进去,否则缺少链接文件。

先这样吧,今天的记录到此结束,又是一天。总结就是再也不要配环境了,另外还有既然是cuda的问题就无所谓64位32位了,直接上64位的吧,glut的版本问题也没有意义了,2.8.1版本也是可以的,所以直接上64位任意版本。最后这张图是没有cuda加速的,所以出来不图像。

解决InfiniTAM在windows下的驱动问题_第11张图片

明天搞cuda。

你可能感兴趣的:(深度学习)