码迷,mamicode.com
首页 > 编程语言 > 详细

Win10 + Python + MXNet + VS2015配置

时间:2017-05-16 23:34:27      阅读:899      评论:0      收藏:0      [点我收藏+]

标签:技术   版本   com   sign   没有   网上   发布   releases   接下来   

项目需要使用MTCNN来检测、对齐、剪切出人脸,它是使用MXNet作为框架的,但是我自己的Ubuntu里各种框架乱成一团,不想再添乱就铁了心要在windows里配一个。无奈网上的资料不多,挣扎了几天之后决定留下这么一份文档。

 

首先我们使用的不是DMLC在github上发布的那一套MXNet,它那个的windows版2016年就不更新了,现在负责维护的地址是这个:

https://github.com/yajiedesign/mxnet/releases

这是一个日更的版本,非常新。巧的是MTCNN也是用新版的MXNet,所以16年版的就不好使了,得靠这个日更的,以下关于这一套产品统称为【日更版】。

新版的MXNet里有一些参数在vc12编译出的库里没有,所以推荐使用vc14版本,也就是VS2015。

 

在正式讲安装配置步骤之前,先推荐一个软件叫Dependency Walker,它的作用是理清楚库文件的依赖关系,有助于后面讲依赖库的版本情况:

技术分享

这是软件的使用截图,注意红框部分,这里需要我们对文件名有一点敏感:

1、LIBopenBLAS 没什么特别的,日更版里面自带了。

2、CUDART64_80、CURAND64_80、CUBLAS64_80、CUFFT64_80、NVRTC64_80 这四个留意后面的数字,这一组文件可以在3rdparty\cudart里找到,如果版本号不一样,请自行更正,日更版应该自带。

3、cuDNN64_5 这是需要自己去下载的文件,从文件名可以知道我们需要一个64位的cudnn,版本号大概是5开头,根据上面的说法我们还需要一个和CUDA8.0配合的cudnn。

4、NVCUDA 这很明显是NVIDIA的CUDA,不过没带版本号先不管它。

5、VCOMP140 这个可以翻3rdparty\vc 里找到,版本号不对请自行修改

6、KERNEL32、USER32 这种大众脸应该不是什么特别的需求,不管它们

 import过程中出现的 [WinError 126]基本都是因为这个原因。

————————————————————————接下来开始正式讲步骤————————————————————————————

1、下载并解压日更版地址里的vc14 base package

2、下载并解压日更版地址里的2017xxxx_mxnet_x64_vc14_gpu.7z 到上面base package的目录里,形成一个完成的结构

技术分享

2、其中最重要的一个东西便是其他各种教程里说的需要make呀,compile呀的那个 build\libmxnet.dll,也就是上边dependency walker关注的这个文件,所以预编译版便是大佬帮我们事先编译好了这个dll。

3、[WinError 126]出现的原因在于import一个模块的时候,它的依赖库需要的依赖库也必须可以找到,不然就报错。

4、照上面所说装好cuda8.0,这个教程很多 也很好装。

5、准备好cudnn5系列 for cuda8.0

6、关注一下日更版里的文件,先运行根目录下的setupenv.cmd,这个文件是设置所有的相关环境变量的

建议点开之前先留意一下【用户变量】里的path,我在使用过程中出现字符过长被截断的问题,换句话说我之前的用户变量被破坏掉了一部分,所以请提前做好准备

7、命令行到python目录,执行

D:\MXNet\python> python setup.py install

8、最后进到 MXNet\3rdparty 里把cudnn的相关文件复制进去就好了,其他的依赖文件应该都在

9、可以进python尝试import mxnet了。

祝你成功

 

Win10 + Python + MXNet + VS2015配置

标签:技术   版本   com   sign   没有   网上   发布   releases   接下来   

原文地址:http://www.cnblogs.com/yying/p/6843129.html

(1)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!