zoukankan      html  css  js  c++  java
  • YOLOv3常用命令集合

    1. Ubuntu中创建了虚拟环境后,环境切换命令

    workon yolov3_py2  #切换到python2的环境
    

    2. 准备工作

    (1)首先手动拷贝VOC2007数据

    (2)在darknet/scripts/VOCdevkit/VOC2007文件夹中,打开终端(yolov3_py2环境),运行python xml2txt.py文件,得到Main文件夹中的4个完整txt文件。

    (3)在darknet/scripts文件夹中,运行python voc_label.py 在VOC2007文件夹中产生labels文件夹。

    (4)修改darknet/cfg文件夹中两个文件:voc.data和yolov3-voc.cfg,修改data下的一各类别名称文件:xxx.names

    3. 单GPU训练

    ./darknet detector train cfg/voc.data cfg/yolov3-voc.cfg weights/darknet53.conv.74 | tee dingall.txt
    

    4.开始测试

    (1)准备工作:修改cfg中yolov3-voc.cfg中test中的batchsize = 1,下一行也是1,train中注释掉这两行

    (2)测试单张图片

    ./darknet detector test cfg/voc.data cfg/yolov3-voc.cfg backup/yolov3-voc_final.weights data/xxx.jpg 
    

    (3)训练过程可视化:将darknet文件夹下的dingall.txt拷贝到keshihua文件夹中的IOU_Loss文件夹中的30000文件夹中,与iouLoss.py放在一起,运行这个py文件python iouLoss.py,得到两幅图和两个文件,保存图片至本文件夹。(有时会出现没有pandas模块,解决办法:pip install wheel; pip install pandas)。

    5.测试test数据集

    (1)清空result文件夹下的文件(不删也行,会覆盖)

    (2)首先修改examples/detector.c:validate_detector函数中,约为424行,将comp4_det_val_改成comp4_det_test_,然后重新编译。

    (3)批量测试——输出文本检测结果(first) (输出在results文件夹中comp4_det_test_类名.txt)

    ./darknet detector valid cfg/voc.data cfg/yolov3-voc.cfg backup/yolov3-voc_final.weights
    

    (4)批量测试——输出图片检测结果(second)(输出在data/out-img文件夹中)

    ./darknet detector test cfg/voc.data cfg/yolov3-voc.cfg backup/yolov3-voc_final.weights
    Enter Image Path: scripts/2007_test.txt
    

    (5)计算recall(执行这个命令需要修改detector.c文件,修改信息请参考“detector.c修改”)

    ./darknet detector recall cfg/voc.data cfg/yolov3-voc.cfg backup/yolov3-voc_final.weights
    

    (6)计算各类别的AP和mAP:工作环境切换成tensorflow_py3,生成plk文件用于画PR曲线:执行下列命令前一定要注意把darknet/scripts/VOCdevkit/annotations_cache这个文件夹删掉,否则影响新的文件输出(参考

    python reval_voc.py --voc_dir /home/dj/dingjing/darknet/scripts/VOCdevkit --year 2007 --image_set test --classes /home/dj/dingjing/darknet/data/dingall.names x #(x是自己新建的文件夹名称,用来保存最后生成的.txt文件)
    

    6. 在此基础上测试其他模型:

    (1)终端1(yolov3_py2):批量测试——输出文本检测结果

     ./darknet detector valid cfg/voc.data cfg/yolov3-voc.cfg backup/yolov3-voc_final.weights
    

    (2)终端2(tensorflow_py3):计算recall

    ./darknet detector recall cfg/voc.data cfg/yolov3-voc.cfg backup/yolov3-voc_final.weights
    

    (3)终端2(tensorflow_py3):计算各类别的AP和mAP: 屏蔽掉VOCdevkit/annotations_cache这个文件夹

    python reval_voc.py --voc_dir /home/dj/dingjing/darknet/scripts/VOCdevkit --year 2007 --image_set test --classes /home/dj/dingjing/darknet/data/dingall.names x
    

    7. 测试val数据集 (与5.测试test数据集类似)

    (1)首先修改examples/detector.c:validate_detector函数中,约为424行,将comp4_det_test_改成comp4_det_val_,然后重新编译:

    (2)批量测试——输出文本检测结果(first)(输出在results文件夹中comp4_det_val_类名.txt)
    ./darknet detector valid cfg/voc.data cfg/yolov3-voc.cfg backup/yolov3-voc_final.weights

    (3)(与test数据集没有区别)批量测试——输出图片检测结果(second)(输出在data/out-img文件夹中)
    ./darknet detector test cfg/voc.data cfg/yolov3-voc.cfg backup/yolov3-voc_final.weights
    Enter Image Path: scripts/2007_val.txt

    (4)(与test数据集没有区别)计算recall(执行这个命令需要修改detector.c文件,修改信息请参考“detector.c修改”)
    ./darknet detector recall cfg/voc.data cfg/yolov3-voc.cfg backup/yolov3-voc_final.weights

    (5)(切换成python3)计算各类别的AP和mAP:生成plk文件用于画PR曲线:执行下列命令前一定要注意把darknet/scripts/VOCdevkit/annotations_cache这个文件夹屏蔽掉,否则影响新的文件输出(参考https://blog.csdn.net/weixin_41143397/article/details/83831839)
    python reval_voc.py --voc_dir /home/dj/dingjing/darknet/scripts/VOCdevkit --year 2007 --image_set val --classes /home/dj/dingjing/darknet/data/dingall.names x(x是自己新建的文件夹名称,用来保存最后生成的.txt文件)

    8. 测试视频

    ./darknet detector demo cfg/voc.data cfg/yolov3-voc.cfg backup/yolov3-voc_25000.weights data/1.mp4
    

    9. 断点继续训练

    ./darknet detector train cfg/voc.data cfg/yolov3-voc.cfg backup/yolov3-voc.backup | tee dingall.txt
    

  • 相关阅读:
    220. 存在重复元素 III
    785. 判断二分图
    欢天喜地七仙女——Beta冲刺汇总
    欢天喜地七仙女——Alpha冲刺汇总
    欢天喜地七仙女——测试随笔
    欢天喜地七仙女——beta总结
    欢天喜地七仙女——Beta冲刺十
    欢天喜地七仙女——用户调查报告
    欢天喜地七仙女——Beta冲刺九
    欢天喜地七仙女——Beta冲刺八
  • 原文地址:https://www.cnblogs.com/dindin1995/p/13059122.html
Copyright © 2011-2022 走看看