配置低版本CUDA和pytorch、mmdetection


pytorch 0.4.1 docker地址:

https://hub.docker.com/r/linkoffate/torchen

https://hub.docker.com/r/airaria/pytorch0.4.1

 

直接上干貨,CUDA9.0版本對應的pytorch是0.4.1,使用其他版本pytorch不支持,一定要安裝0.4.1版本,github上的mmdetection安裝對應CUDA9.0的在branch0.4.1里,但是注意!!!!!!!!!!github上不知道為什么,pytorch0.4.1分支里的少一些文件我安裝了好幾次進到提示少deform_conv_cuda等文件,又對比主分支才發現少了很多文件.

解決辦法:

1.git項目(不在github上)

git clone https://gitee.com/mirrors/mmdetection.git

2.切換到pytorch-0.4.1分支(針對CUDA9.0用戶)

cd mmdetection

git checkout pytorch-0.4.1

3.安裝

3.1創建虛擬環境(需要python3.5+)

conda create -n python3.5 python=3.5.4

conda activate python3.5

3.2安裝依賴庫(兩種安裝方式二選一)

 conda install pytorch=0.4.1 -c pytorch #pip install pytorch=0.4.1 -c pytorch

conda install cython #pip install cython

cd mmdetection#如果已經在此目錄不需要此條命令

./compile.sh

3.3安裝mmcv

git clone https://github.com/open-mmlab/mmcv.git
cd mmcv
pip install .

4.安裝mmdet

cd mmdetection#如果已經在此目錄不需要此條命令

python setup.py install #pip install .

 

測試代碼

預訓練模型需要自己下載

  1.  
    import mmcv
  2.  
    from mmcv.runner import load_checkpoint
  3.  
    from mmdet.models import build_detector
  4.  
    from mmdet.apis import inference_detector, show_result
  5.  
     
  6.  
    cfg = mmcv.Config.fromfile( '/home/stardust/mmdetection/configs/faster_rcnn_r50_fpn_1x.py')
  7.  
    cfg.model.pretrained = None
  8.  
     
  9.  
    # 構建網絡,載入模型
  10.  
    model = build_detector(cfg.model, test_cfg=cfg.test_cfg)
  11.  
     
  12.  
    # _ = load_checkpoint(model, 'https://s3.ap-northeast-2.amazonaws.com/open-mmlab/mmdetection/models/faster_rcnn_r50_fpn_1x_20181010-3d1b3351.pth')
  13.  
    # 如果通過網盤下載,取消下一行代碼的注釋,並且注釋掉上一行
  14.  
    _ = load_checkpoint(model, 'model/faster_rcnn_r50_fpn_1x_20181010-3d1b3351.pth')
  15.  
     
  16.  
    # 測試一張圖片
  17.  
    img = mmcv.imread( 'test.jpg')
  18.  
    result = inference_detector(model, img, cfg)
  19.  
    show_result(img, result)
  20.  
     
  21.  
    # 測試多張圖片
  22.  
    # imgs = ['test1.jpg', 'test2.jpg']
  23.  
    # for i, result in enumerate(inference_detector(model, imgs, cfg, device='cuda:0')):
  24.  
    # print(i, imgs[i])
  25.  
    # show_result(imgs[i], result)

 

 
 原文鏈接:http://kmanong.top/kmn/qxw/form/article?id=17694&cate=56


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM