系统硬件环境
windows10
系统软件环境
Anaconda3
,python3.6
,pytorch1.4+cuda10.1
安装过程
创建虚拟环境
conda create --name CenterNet python=3.6
安装Pytorch+Cuda
conda install pytorch==1.5.0 torchvision==0.5.0 cudatoolkit=10.1
Github拉取CenterNet
git clone https://github.com/xingyizhou/CenterNet
安装所需要的Python库版本
进入到F:GitSpaceCenterNet
下
执行:
pip install -r requirements.txt
编译DCNv2
-
下载DCNv2
git clone https://github.com/CharlesShang/DCNv2
这里的DCN需要下载另一版本的DCNv2,源代码中的DCNv2不支持pytorch1.0以上。
下载后,将源文件中的DCNv2删除,将下载的文件放到源文件夹,不需要修改任何东西。
-
编译
返回DCNv2的文件夹下编译
python setup.py build develop
编译NMS
进入到
cd CenterNetsrclibexternal
执行以下代码,编译NMS
python setup.py build_ext --inplace
注意
:
cl: 命令行 error D8021 :无效的数值参数“/Wno-cpp”
如果出现以上情况:
进入到src/lib/external目录下,修改set.py中的代码,在#L10处修改
#extra_compile_args=["-Wno-cpp", "-Wno-unused-function"]
下载模型
在官网下载模型ctdet_coco_dla_2x.pth
下载好的模型放置在models目录下
运行demo
进入到
cd F:GitSpaceCenterNetsrc
执行
python demo.py ctdet --demo ../path/image/or/path/video --load_model ../models/ctdet_coco_dla_2x.pth --debug 2
发现:urllib.error.HTTPError: HTTP Error 404: Not Found
找到pose_dla_dcn.py
文件,在309行,将
def dla34(pretrained=False, **kwargs): # DLA-34
model = DLA([1, 1, 1, 2, 2, 1],
[16, 32, 64, 128, 256, 512],
block=BasicBlock, **kwargs)
# if pretrained:
# model.load_pretrained_model(data='imagenet', name='dla34', hash='ba72cf86')
return model
其中的两行注释掉,即可。
运行网络摄像头
python demo.py ctdet --demo webcam --load_model ../models/ctdet_coco_dla_2x.pth