如何获取YOLO 3D的3D边界框标签及了解其存储格式
获取YOLO3D推理结果中的3D边界框坐标
你当前执行推理后仅生成PNG图片,要获取3D边界框坐标,可按以下操作:
- 打开项目中的
inference.py文件,找到绘制3D边界框的逻辑段(通常和draw_3d_box函数相关) - 在绘制完成后添加代码,将3D框的顶点坐标写入文件:
import os # 假设det_3d_boxes是存储所有3D框顶点的列表,每个框是(8,3)的数组(8个顶点,每个点含x,y,z) save_path = os.path.join(opt.output_path, '3d_box_coords.txt') with open(save_path, 'w') as f: for box in det_3d_boxes: # 按x,y,z,x,y,z...的格式拼接每个框的坐标 coord_str = ','.join([str(round(c, 4)) for point in box for c in point]) f.write(f"{coord_str}\n") - 重新执行你原来的推理命令,就能在
runs/目录下得到保存坐标的文本文件
该项目的3D边界框坐标存储格式为x,y,z,x,y,z...,每个3D框包含8个顶点,每个顶点由三维坐标(x,y,z)组成,按顺序依次排列。
内容的提问来源于stack exchange,提问作者Plutus
相关产品推荐
相关产品推荐

