环境检查

paddlepaddle官网:https://www.paddlepaddle/

这边有环境要求,以及paddlepaddle和paddledetection对应版本。
一定要对应好。。不然会出问题。(第一次cudnn是7.4.5的)装完报错。
所以先检查一下自己的cuda版本和cudnn版本
cuda版本,打开cmd,输入

nvcc -V


cudnn版本
进入路径:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include
打开 cudnn.h这个头文件。



cudnn的版本为7.6.4
检测完都满足后就可以进行安装了。

安装过程

1.paddledetection是paddlepaddle下的一个子模块。所以必须要先安装paddlepaddle才能运行paddledetection
2.打开cmd,先利用conda创建虚拟环境

conda create -n paddle_yolo python=3.6

3.根据自己的cuda版本去官网选择安装命令。我这边是cuda10.1

快速安装没有对应cuda版本选择旧版本安装
(建议装2.2,之前装的2.0有问题。。。)
4.激活虚拟环境进行安装

conda activate paddle_yolo
# CUDA 10.1
python -m pip install paddlepaddle-gpu==2.2.2.post101 -f https://www.paddlepaddle.org.cn/whl/windows/mkl/avx/stable.html


验证是否安装成功

python -c "import paddle; print(paddle.__version__)"

安装成功显示

2.2.2

5.安装pycocotools,yolo训练要要到coco的评价指标(根据情况选择安装)
window下输入

pip install pycocotools-windows

6.安装paddledetection
仓库:https://github/PaddlePaddle/PaddleDetection
将其下载到本地并解压
cd到有requirments.txt的目录下,安装其他依赖项
requirments中的pycocotools可以删掉,如果在上一个步骤装了的话。在这里装可能会出问题。windows下装pycocotools总是有点问题的。
输入

pip install -r requirments.txt
python setup.py install

pip install -r requirments.txt遇到的问题,安装lap报错

百度 通过conda安装可以成功

conda install -c conda-forge lap


成功。

7.测试paddledetection

python ppdet/modeling/tests/test_architectures.py

看见failed就要伤心,看见OK才能开心。
(这里失败就是第一次版本不对出现的原因,如果cuda、cudnn版本对的是不会出现这个failed的)

(没有failed,这个报错也可以略过。。。)
报错:RuntimeError: (PreconditionNotMet) The third-party dynamic library (cusolver64_101.dll;cusolver64_10.dll) that Paddle depends on is not configured correctly. (error code is 126)
思考:可能是我的cuda版本的问题,我是10.0的版本,安装要求是10.1,可能是这个问题
百度解决方法:
路径为C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\bin

在bin路径下将cublas64_100.dll重命名为cublas64_10.dll

在bin路径下将cusolver64_100重命名为cusolver64_10
改完后:

(这边虽然通过这个方法显示成功,但是加载模型推理的时候还是会报错。)

快速体验

所以(重新来,cuda切换成10.1,cudnn为7.6.4,就是我上面的步骤。)
一路顺畅没有报错。

推理一张图片:

python tools/infer.py -c configs/ppyolo/ppyolo_r50vd_dcn_1x_coco.yml -o use_gpu=true weights=https://paddledet.bj.bcebos.com/models/ppyolo_r50vd_dcn_1x_coco.pdparams --infer_img=demo/000000014439.jpg

在paddledetection的output文件夹下有最终的结果图片

总结:建议安装paddle2.2,然后cuda,cudnn版本要对应好。。

更多推荐

安装paddledetection