mmdetection簡(jiǎn)介
目標(biāo)檢測(cè)工具箱mmdetection是香港中文大學(xué)-商湯科技聯(lián)合實(shí)驗(yàn)室基于pytorch開(kāi)源的檢測(cè)庫(kù),它包含個(gè)豐富的目標(biāo)檢測(cè)和實(shí)例分割方法以及相關(guān)的組件和模塊?,F(xiàn)在mmdetection成了一個(gè)涵蓋許多主流檢測(cè)方法和模塊的統(tǒng)一平臺(tái)。
mmdetection官方并不提供windows版本的穩(wěn)定安裝教程,網(wǎng)上有相關(guān)的教程但是并不支持最新的mmdetection版本,這邊根據(jù)各位大佬的博客總結(jié)了以下這篇文章,幫助大家可以在windows10中使用。
環(huán)境版本要求:
python=3.6
cuda=10.0
cudnn=7.5.0
pytorch=1.2.0
torchversion=0.4.0
安裝軟件:
安裝vs2017
需要勾選c++環(huán)境,給mmdetection編譯提供環(huán)境
![](/d/20211017/1f9023225f4a1420ec92b73c893c9d2e.gif)
安裝cuda10
安裝時(shí)有關(guān)vs的相關(guān)選項(xiàng)需要選中
![](/d/20211017/d3d4c46f6a4979cab9ca4d0aab3335a1.gif)
注意:如果是安裝cuda9的話不支持最新的1917版本的vs2017,只能支持到1911版本的vs2017,所以可以安裝vs2015
安裝cudnn7.5.0
將壓縮包中所有的文件夾直接復(fù)制粘貼到cuda安裝目錄下即可
安裝anaconda
官網(wǎng)下載最新版本默認(rèn)安裝即可,需要提升anaconda文件夾權(quán)限為完全控制
安裝pycharm
安裝gitbash
從github上下載項(xiàng)目以及安裝pycocotools都需要用到
下載地址:https://gitforwindows.org/
python環(huán)境搭建:
以管理員身份運(yùn)行Anaconda Prompt(windows安裝一定要以管理員身份安裝,不然有些東西會(huì)裝不上去,沒(méi)有權(quán)限)
創(chuàng)建python3.6環(huán)境:
conda create -n mmdetecion python=3.6
(python3.7兼容性不好)
![](/d/20211017/be60d0c9de393b8cb92f700977e42fac.gif)
激活環(huán)境:
conda activate mmdetection
![](/d/20211017/2940da6fc090f8cc72e31d82d5d38d6e.gif)
安裝pytorch,window環(huán)境下穩(wěn)定1.2.0版本:
conda install pytorch torchvision cudatoolkit=10.0 -c pytorch
conda國(guó)內(nèi)加速教程:https://segmentfault.com/a/1190000019680625
安裝mmcv:
官方下載地址:https://github.com/open-mmlab/mmcv
git clone https://github.com/open-mmlab/mmcv.git
cd mmcv
pip install .
![](/d/20211017/e73f0330cde288bc1e50ad35ec2ec256.gif)
![](/d/20211017/0f764f5ed283840e54e26237c455e580.gif)
會(huì)自動(dòng)安裝Cython
安裝pycocotools:
是mmdection讀取coco數(shù)據(jù)集必備包
在命令行輸入
pip install git+https://github.com/philferriere/cocoapi.git#subdirectory=PythonAPI
安裝mmdetection:
官方網(wǎng)站:https://github.com/open-mmlab/mmdetection
補(bǔ)充安裝依賴包requirements:
pip install -r requirements.txt
修改編譯文件:
1.將~Lib\site-packages\torch\utils\cpp_extension.py 中 info = info.decode().lower()修為 info=info.decode("utf8","ignore").lower()
最好將所有decode() 都改成decode("utf8","ignore")
修改setup.py文件中extra_compile_args 相關(guān)代碼:
def make_cuda_ext(name, module, sources):
return CUDAExtension(
name='{}.{}'.format(module, name),
sources=[os.path.join(*module.split('.'), p) for p in sources],
extra_compile_args={
'cxx': ["-DMS_WIN64","-MD"],
'nvcc': [
'-D__CUDA_NO_HALF_OPERATORS__',
'-D__CUDA_NO_HALF_CONVERSIONS__',
'-D__CUDA_NO_HALF2_OPERATORS__',
]
})
2.當(dāng)前文件夾運(yùn)行
python setup.py build_ext --inplace 進(jìn)行編譯
python setup.py install develop 完成安裝
運(yùn)行pip list 查看是否安裝成功,成功的話會(huì)有mmdet包以及對(duì)應(yīng)版本
![](/d/20211017/3f4d43ea64c5aaa0f9351684a07413f9.gif)
后續(xù)問(wèn)題:
修改~\Lib\site-packages\mmcv\utils中的config.py文件中的123行的
with open(filename, 'r', encoding='utf-8') as f:
增加encoding='utf-8'
到此,在windows10中就可以正常運(yùn)行mmdetecion框架代碼了,之前有遇到focal loss不能正常使用,但是后來(lái)安裝都是可以的,后續(xù)有什么問(wèn)題歡迎大家提出,謝謝。
2020-01-10更新:
mmdetection在2019年12月13號(hào)進(jìn)行了新版本的更新,其中對(duì)api/train.py增加torch.distributed,這塊在windows下不支持,所以要在windows中訓(xùn)練的話需要把v1.0rc1的版本的train與新版本的train進(jìn)行合并,主要是去除torch.distributed以及_non_dist_train的修改為主。
總結(jié)
以上所述是小編給大家介紹的mmdetection在windows10系統(tǒng)環(huán)境中搭建過(guò)程,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
如果你覺(jué)得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!
您可能感興趣的文章:- Anaconda的安裝及其環(huán)境變量的配置詳解
- Python入門Anaconda和Pycharm的安裝和配置詳解
- win10系統(tǒng)下Anaconda3安裝配置方法圖文教程
- windows下Anaconda的安裝與配置正解(Anaconda入門教程)
- 如何將anaconda安裝配置的mmdetection環(huán)境離線拷貝到另一臺(tái)電腦