作者:尚艺李波_387 | 来源:互联网 | 2023-09-04 10:16
Windows10系统PPYOLOv2实操
因为之前一直是用pytorch框架,所以这次从paddle环境搭建,到用pp-yolov2训练自己的数据集记录下全过程。我的电脑是win10 64位系统。
一、paddle环境搭建
我用了anaconda.
1.创建名为paddle的虚拟环境
conda create -n paddle python=3.8
2.激活虚拟环境
activate paddle
3.安装paddlepaddle库
conda install paddlepaddle-gpu==2.0.2 cudatoolkit=10.0 -c paddle
我安装的是cuda10.0,飞桨2.0.2版本
可根据此链接选择不同版本
(可参考此文档安装并验证是否安装成功 )
补充:换实验室电脑1080TI按照上面用conda装失败了,于是改用pip安装10.2版本,成功:
python -m pip install paddlepaddle-gpu -i https://mirror.baidu.com/pypi/simple
二、安装PaddleDetection
cd E:\PaddleDetection-release-2.0
python setup.py install
报错一:pycocotools安装失败——解决方法:参照自己之前写的博客在paddle虚拟环境下安装好pycocotool,然后再次执行语句“python setup.py install”
报错二:安装shapely报错,找不到geos_c.dll——解决方法:按照此博客解决,要把那个文件放到自己虚拟环境里的路径下,我的是D:\Anaconda3\envs\paddle\Library\bin
(参考此文档安装并验证成功)
报错三:
此错误不影响安装不影响后面运行,是依赖check上报的错。可以把requirements.txt里的visualdl删掉重新安装就不会报错了。
三、自定义数据集准备
看完数据准备官方说明书
发现之前用yolo网络制作的数据集标注文件是.txt格式的,需要转为coco/voc格式数据集(标注文件分别为.json和.xml),我选择转换为coco格式,参考知乎博客完成转换:
python yolo2coco.py --root_dir E:\PaddleDetection-release-2.0\dataset\garbage\train
报错:
原因是有的标注文件txt中数据后面有回车键空白行,删掉空白行就好了。
四、训练
参考YOLO系列模型参数配置教程设置batchsize、epoches等参数。
之后执行:
python tools/train.py -c configs/ppyolo/ppyolov2_r50vd_dcn_365e_garbage.yml --eval
遇到问题:
快训练完第一轮就卡住,也不报错,光标一直闪。——解决方法为去掉–eval
五、检测
检测图片:python tools/infer.py -c configs/ppyolo/ppyolov2_r50vd_dcn_365e_garbage.yml --infer_dir=demo --output_dir=infer_output/ --draw_threshold=0.5 -o weights=output/540.pdparams --use_vdl=Ture
( --infer_dir指定待检测图片文件夹路径)
检测视频:python tools/infer.py -c configs/ppyolo/ppyolov2_r50vd_dcn_365e_garbage.yml --camera=demo/laji.mp4 --output_dir=infer_output/ --draw_threshold=0.5 -o weights=output/540.pdparams --use_vdl=Ture
六、评估
python -u tools/eval.py -c configs/ppyolo/ppyolov2_r50vd_dcn_365e_garbage.yml -o weights=output/540.pdparams