CenterNet在win10系统下的编译

CenterNet在Windows系统下编译:
准备环境:
python3.6.7 cuda10.0 cudnn7.5 VS2017
1.安装vs2017
VS 2017社区版(Community)下载地址:
迅雷下载:
ed2k://|file|en_visual_studio_community_2015_x86_dvd_6847364.iso|3965825024|6A7D8489BB2877E6BB8ACB2DD187B637|/
按照提示进行下载
注:
1.选择使用C++桌面开发;
2.安装完成后添加环境变量(用户环境变量)PATH,LIB,INCLUDE(否则会报找不到cl.exe的错误)。下面给出本系统中添加的环境变量。
在这里插入图片描述INCLUDE:
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include;C:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\shared
PATH:
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\bin\Hostx64\x64;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\bin;C:\Program Files (x86)\Windows Kits\10\bin\x64
LIB:
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\lib\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\um\x64
2.安装cuda与cudnn
本环节忽略
3.安装anaconda并创建虚拟环境
安装anaconda忽略
在安装anaconda之后,进入anaconda,创建虚拟环境

conda create -n pt python==3.6.7

注:这里的pt为创建的虚拟环境的名字,可以自己随意写
进入到自己的虚拟环境中

conda activate pt

安装pytorch1.1
由于pytorch使用官网命令安装较慢,因此自己提前下载好
下载地址:https://download.pytorch.org/whl/torch_stable.html
安装命令:

pip install torch-1.1.0-cp36-cp36m-win_amd64.whl

安装torchvision

pip install torchvision-0.3.0-cp36-cp36m-win_amd64.whl

验证安装是否成功:

python
>> import torch
>>

4.下载CenterNet程序与DCNv2
CenterNet地址:CenterNet
DCNv2地址:DCNv2
将DCNv2放置与CenterNet/src/lib/models/networks
5.编译DCNv2
修改src/cuda中的dcn_v2_cuda.cu#L11为:

//extern THCState *state;
THCState *state = at::globalContext().lazyInitCUDA();

退回到src中,执行:

python setup.py build develop

注意:此时出现nvcc的错误(之前使用cuda10.1出现此错误,将cuda的版本降至10.0,编译成功)
6.编译nms库
进入到src/lib/external目录下,修改set.py中的代码,在#L10处修改:

#extra_compile_args=["-Wno-cpp", "-Wno-unused-function"]

使用下面命令进行编译:

python setup.py build_ext --inplace

注:此处会出现缺少一般的库,直接使用pip install package即可。
至此编译完成
7.下载模型
在官网下载模型:
ctdet_coco_dla_2x.pth与multi_pose_dla_3x.pth,将两个模型放置在models目录下
8.运行demo

cd CenterNet/src
python demo.py ctdet --demo ../path/image/or/path/video --load_model ../models/ctdet_coco_dla_2x.pth --debug 2

如果要检测骨架,使用模型:multi_pose_dla_3x.pth

python demo.py multi_pose --demo ../path/image/or/path/video --load_model ../models/multi_pose_dla_3x.pth --debug 2

注:原使用cuda10.1,pytorch1.4的时候,编译DCNv2和nms时都已成功,但此时会报找不到模块的错误。(警记:版本要严格对应)
附:效果图(只粘贴一张检测的效果图)
在这里插入图片描述

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值