mmdetection簡介
目標檢測工具箱mmdetection是香港中文大學-商湯科技聯(lián)合實驗室基于pytorch開源的檢測庫,它包含個豐富的目標檢測和實例分割方法以及相關(guān)的組件和模塊?,F(xiàn)在mmdetection成了一個涵蓋許多主流檢測方法和模塊的統(tǒng)一平臺。
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)境
安裝cuda10
安裝時有關(guān)vs的相關(guān)選項需要選中
注意:如果是安裝cuda9的話不支持最新的1917版本的vs2017,只能支持到1911版本的vs2017,所以可以安裝vs2015
安裝cudnn7.5.0
將壓縮包中所有的文件夾直接復制粘貼到cuda安裝目錄下即可
安裝anaconda
官網(wǎng)下載最新版本默認安裝即可,需要提升anaconda文件夾權(quán)限為完全控制
安裝pycharm
安裝gitbash
從github上下載項目以及安裝pycocotools都需要用到
下載地址:https://gitforwindows.org/
python環(huán)境搭建:
以管理員身份運行Anaconda Prompt(windows安裝一定要以管理員身份安裝,不然有些東西會裝不上去,沒有權(quán)限)
創(chuàng)建python3.6環(huán)境:
conda create -n mmdetecion python=3.6
(python3.7兼容性不好)
激活環(huán)境:
conda activate mmdetection
安裝pytorch,window環(huán)境下穩(wěn)定1.2.0版本:
conda install pytorch torchvision cudatoolkit=10.0 -c pytorch
conda國內(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 .
會自動安裝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
補充安裝依賴包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.當前文件夾運行
python setup.py build_ext --inplace 進行編譯
python setup.py install develop 完成安裝
運行pip list 查看是否安裝成功,成功的話會有mmdet包以及對應版本
后續(xù)問題:
修改~\Lib\site-packages\mmcv\utils中的config.py文件中的123行的
with open(filename, 'r', encoding='utf-8') as f:
增加encoding='utf-8'
到此,在windows10中就可以正常運行mmdetecion框架代碼了,之前有遇到focal loss不能正常使用,但是后來安裝都是可以的,后續(xù)有什么問題歡迎大家提出,謝謝。
2020-01-10更新:
mmdetection在2019年12月13號進行了新版本的更新,其中對api/train.py增加torch.distributed,這塊在windows下不支持,所以要在windows中訓練的話需要把v1.0rc1的版本的train與新版本的train進行合并,主要是去除torch.distributed以及_non_dist_train的修改為主。
總結(jié)
以上所述是小編給大家介紹的mmdetection在windows10系統(tǒng)環(huán)境中搭建過程,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!
您可能感興趣的文章:- Anaconda的安裝及其環(huán)境變量的配置詳解
- Python入門Anaconda和Pycharm的安裝和配置詳解
- win10系統(tǒng)下Anaconda3安裝配置方法圖文教程
- windows下Anaconda的安裝與配置正解(Anaconda入門教程)
- 如何將anaconda安裝配置的mmdetection環(huán)境離線拷貝到另一臺電腦