Luffy0211 2024-08-19 18:38 采纳率: 33.3%
浏览 3

如何将onnx返回的边界框坐标与YOLO一样

YOLO的代码写完,运行太慢,准备运用onnx,onnx返回目标的坐标与YOLO不一样,这可如何是好啊,各位码神帮帮忙啊

img

  • 写回答

1条回答 默认 最新

  • 一直免费一直爽 2024-08-19 18:38
    关注

    以下回复参考:皆我百晓生券券喵儿等免费微信小程序作答:

    要将ONNX返回的边界框坐标与YOLO一样,首先需要了解两者的输出格式。

    YOLO的输出格式通常为:(中心点x, 中心点y, 宽度, 高度, 置信度, 类别) ONNX的输出格式可能因模型而异,但通常为:(左上角x, 左上角y, 右下角x, 右下角y, 置信度, 类别)

    为了将ONNX的输出格式转换为YOLO的输出格式,可以使用以下代码:

    def onnx_to_yolo_bbox(onnx_bbox):
        x1, y1, x2, y2, conf, class_id = onnx_bbox
        w = x2 - x1
        h = y2 - y1
        cx = x1 + (w / 2)
        cy = y1 + (h / 2)
        return [cx, cy, w, h, conf, class_id]
    
    # 假设 onnx_outputs[0] 是一个包含边界框的列表
    yolo_bboxes = [onnx_to_yolo_bbox(bbox) for bbox in onnx_outputs[0]]
    

    这段代码首先将ONNX的边界框坐标转换为YOLO的格式,然后将其添加到一个新的列表中。最后,yolo_bboxes将包含与YOLO相同的边界框坐标。

    评论

报告相同问题?

问题事件

  • 创建了问题 8月19日

悬赏问题

  • ¥15 MAUI,Zxing扫码,华为手机没反应。可提高悬赏
  • ¥15 python运行报错 ModuleNotFoundError: No module named 'torch'
  • ¥100 华为手机私有App后台保活
  • ¥15 sqlserver中加密的密码字段查询问题
  • ¥20 有谁能看看我coe文件到底哪儿有问题吗?
  • ¥20 我的这个coe文件到底哪儿出问题了
  • ¥15 matlab使用自定义函数时一直报错输入参数过多
  • ¥15 设计一个温度闭环控制系统
  • ¥100 rtmpose姿态评估
  • ¥15 通联支付网上收银统一下单接口