如何在Darknet的Yolov4中基于test.txt批量预测多图像?
YOLOv4 基于test.txt批量预测的正确命令及问题排查
原命令的参数传递方式不符合Darknet的运行逻辑,导致无法正常执行,以下是修正后的命令及关键注意事项:
正确命令格式
darknet detector test data/obj.data cfg/yolo-obj.cfg backup/yolo-obj_best.weights -thresh 0.9 -dont_show < data/test.txt > result.txt
命令调整说明
- 用重定向符
< data/test.txt传入图像路径列表:Darknet的detector test命令默认仅读取单张图像路径,批量处理时需通过标准输入重定向读取test.txt内的所有路径,直接将test.txt作为参数会被识别为单张图像路径,引发错误。 - 用
> result.txt输出检测结果:原命令把result.txt放在末尾会被当成图像路径处理,正确做法是用输出重定向将结果写入目标文件。 - 可选参数
-ext_output:如果需要保存包含置信度、边界框坐标的详细检测结果,可在命令中添加该参数。
关键注意事项
- test.txt格式要求:每一行必须是图像的绝对路径,或者相对于Darknet根目录的相对路径,路径中不能包含空格或特殊字符。
- 数据集配置检查:确保
data/obj.data文件中的classes数值与数据集类别数一致,names路径指向正确的类别名称文件。 - 配置文件适配:检查
cfg/yolo-obj.cfg中的batch和subdivisions参数,若显存不足可适当调小subdivisions数值。 - 文件路径验证:确认
backup/yolo-obj_best.weights权重文件存在,路径书写无错误。
内容的提问来源于stack exchange,提问作者Syuuuu
相关产品推荐
相关产品推荐

