YOLOv3调试过程

YOLOv3调试过程:
下载地址: GitHub - ultralytics/yolov3: YOLOv3 in PyTorch > ONNX > CoreML > TFLite
1.环境配置
我配的环境是Pyhtron==3.6.0,PyTorch==1.10.1
2.检测测试
首先,看下官方Readme对于使用YOLOv3进行测试的说明
大致意思就是下载好YOLOv3的预训练模型,接着配置detect.py中的预设参数,运行detect.py就可以实现检测了。
YOLOv3调试过程_第1张图片
        2.1下载预训练权重
    下载地址: https://github.com/ultralytics/yolov3/releases/download/v9.6.0/yolov3.pt
        下载完成后,把yolov3.pt剪切到项目的根目录下
                   YOLOv3调试过程_第2张图片
2.2调试
有了预训练的模型后应该把路径告诉程序,这里的ROOT不知道是什么东西,直接在主函数加断点DEBUG试试。    
YOLOv3调试过程_第3张图片
错误一:缺少seaborn,install一下就好了
YOLOv3调试过程_第4张图片
看下Opt变量中的weights
YOLOv3调试过程_第5张图片
这里的WindowsPath是项目存在的根目录。
完了运行程序就打印输出结果在runs\detect\exp中,可我还没说测试图像还是视频啊。。。
YOLOv3调试过程_第6张图片
先把visualize打开,这样每次测试的时候就会把画框的结果给出。
改动这两处就可以了,如果测试的是图片就让opencv的刷新率改为0手动刷新,另外要打开view_img,就在配置中设置默认为True 
                    
这一项参数是修改网络的输入,就是将该目录文件下的所有.jpg/.mp4文件都作为输入,这里我修改里面的图像试一试
                                                             YOLOv3调试过程_第7张图片
修改成视频试一试,如果修改为视频上面的刷新频率要修改,我改成30就是25fps
                                                                             YOLOv3调试过程_第8张图片
视频也是OK的。

这里我发现Opencv画框写的字体也太大了没改小点。

把这个改成1试一试

如果只希望检测行人呢,就是在类别判断时判断只有是行人时才画框

YOLOv3调试过程_第9张图片

只要加if c==0,因为named里面写了person是第一类。

YOLOv3调试过程_第10张图片

你可能感兴趣的:(深度学习,pytorch,人工智能)