Win10 + Python + MXNet + VS2015配置
項(xiàng)目需要使用MTCNN來檢測、對(duì)齊、剪切出人臉,它是使用MXNet作為框架的,但是我自己的Ubuntu里各種框架亂成一團(tuán),不想再添亂就鐵了心要在windows里配一個(gè)。無奈網(wǎng)上的資料不多,掙扎了幾天之后決定留下這么一份文檔。
?
首先我們使用的不是DMLC在github上發(fā)布的那一套MXNet,它那個(gè)的windows版2016年就不更新了,現(xiàn)在負(fù)責(zé)維護(hù)的地址是這個(gè):
https://github.com/yajiedesign/mxnet/releases
這是一個(gè)日更的版本,非常新。巧的是MTCNN也是用新版的MXNet,所以16年版的就不好使了,得靠這個(gè)日更的,以下關(guān)于這一套產(chǎn)品統(tǒng)稱為【日更版】。
新版的MXNet里有一些參數(shù)在vc12編譯出的庫里沒有,所以推薦使用vc14版本,也就是VS2015。
?
在正式講安裝配置步驟之前,先推薦一個(gè)軟件叫Dependency Walker,它的作用是理清楚庫文件的依賴關(guān)系,有助于后面講依賴庫的版本情況:
這是軟件的使用截圖,注意紅框部分,這里需要我們對(duì)文件名有一點(diǎn)敏感:
1、LIBopenBLAS 沒什么特別的,日更版里面自帶了。
2、CUDART64_80、CURAND64_80、CUBLAS64_80、CUFFT64_80、NVRTC64_80 這四個(gè)留意后面的數(shù)字,這一組文件可以在3rdparty\cudart里找到,如果版本號(hào)不一樣,請自行更正,日更版應(yīng)該自帶。
3、cuDNN64_5 這是需要自己去下載的文件,從文件名可以知道我們需要一個(gè)64位的cudnn,版本號(hào)大概是5開頭,根據(jù)上面的說法我們還需要一個(gè)和CUDA8.0配合的cudnn。
4、NVCUDA 這很明顯是NVIDIA的CUDA,不過沒帶版本號(hào)先不管它。
5、VCOMP140 這個(gè)可以翻3rdparty\vc 里找到,版本號(hào)不對(duì)請自行修改
6、KERNEL32、USER32 這種大眾臉應(yīng)該不是什么特別的需求,不管它們
?import過程中出現(xiàn)的 [WinError 126]基本都是因?yàn)檫@個(gè)原因。
————————————————————————接下來開始正式講步驟————————————————————————————
1、下載并解壓日更版地址里的vc14 base package
2、下載并解壓日更版地址里的2017xxxx_mxnet_x64_vc14_gpu.7z 到上面base package的目錄里,形成一個(gè)完成的結(jié)構(gòu)
2、其中最重要的一個(gè)東西便是其他各種教程里說的需要make呀,compile呀的那個(gè) build\libmxnet.dll,也就是上邊dependency walker關(guān)注的這個(gè)文件,所以預(yù)編譯版便是大佬幫我們事先編譯好了這個(gè)dll。
3、[WinError 126]出現(xiàn)的原因在于import一個(gè)模塊的時(shí)候,它的依賴庫需要的依賴庫也必須可以找到,不然就報(bào)錯(cuò)。
4、照上面所說裝好cuda8.0,這個(gè)教程很多 也很好裝。
5、準(zhǔn)備好cudnn5系列 for cuda8.0
6、關(guān)注一下日更版里的文件,先運(yùn)行根目錄下的setupenv.cmd,這個(gè)文件是設(shè)置所有的相關(guān)環(huán)境變量的
建議點(diǎn)開之前先留意一下【用戶變量】里的path,我在使用過程中出現(xiàn)字符過長被截?cái)嗟膯栴},換句話說我之前的用戶變量被破壞掉了一部分,所以請?zhí)崆白龊脺?zhǔn)備
7、命令行到python目錄,執(zhí)行
D:\MXNet\python> python setup.py install8、最后進(jìn)到 MXNet\3rdparty 里把cudnn的相關(guān)文件復(fù)制進(jìn)去就好了,其他的依賴文件應(yīng)該都在
9、可以進(jìn)python嘗試import mxnet了。
祝你成功
?
轉(zhuǎn)載于:https://www.cnblogs.com/yying/p/6843129.html
總結(jié)
以上是生活随笔為你收集整理的Win10 + Python + MXNet + VS2015配置的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: iscroll5制作上下拉刷新 tab出
- 下一篇: python学习笔记1-基础语法