我训练了 YOLO-V8 实例分割模型来分割类标签为 0 的对象。我使用 CLI 实例化训练后的模型并根据测试数据进行预测。
!yolo task=segment mode=predict model='/weights/best.pt' conf=0.25 source='/test/images' imgsz=1024 save=True save_txt=True save_conf=True
预测后,标签文件以.txt格式存储。这些标签文件包含类索引,后跟多边形坐标,最后是边界框预测的置信度得分。但是,边界框坐标,即 x 中心、y 中心、宽度、高度不包含在标签文件中。我还想将这些边界框坐标包含到每个标签文件中,因为我想稍后使用这些边界框坐标进行后处理。示例标签文件内容如下所示:
0 0.21582 0.0898438 0.214844 0.0908203 0.213867 0.0908203 0.210938 0.09375 0.210938 0.0947266 0.203125 0.102539 0.203125 0.103516 0.201172 0.105469 0.200195 0.105469 0.199219 0.106445 0.199219 0.113281 0.200195 0.114258 0.200195 0.115234 0.203125 0.115234 0.204102 0.116211 0.223633 0.116211 0.224609 0.117188 0.227539 0.117188 0.228516 0.118164 0.230469 0.118164 0.231445 0.119141 0.234375 0.119141 0.235352 0.120117 0.248047 0.120117 0.249023 0.121094 0.251953 0.121094 0.25293 0.12207 0.254883 0.0927734 0.260742 0.0917969 0.256836 0.0917969 0.255859 0.0908203 0.233398 0.0908203 0.232422 0.0898438 0.910849
我不会将预测保存到此处的任何“结果”变量,并且我仅在 CLI 中运行预测。
您不能使用 cli 中的预测来保存边界框,因为 yolo 分段 save_txt 参数仅保存每个段的点的 x 和 y。你应该为此工作单独编写一个Python脚本。