YOLOv8 跟踪与前 5 个检测

问题描述 投票:0回答:1

我正在使用 YOLOv8 通过追踪摄像机镜头来追踪动物。跟踪可以很好地从一帧到另一帧识别出同一只动物。然而,它是什么类型的动物是在每帧的基础上工作的,并且可以在帧与帧之间给出不同的结果,特别是如果有几种相似的动物可以被检测为(由于某种原因,鹿和猪似乎是一个常见的混淆!)和置信水平差异很大。我想将每个帧中检测到的所有前 5 个跟踪类别组合起来,以获得所跟踪动物的总体分类。

但是,Boxes 结果对象仅包含每帧最高的检测值,与整个图像分类中具有 top5()

Probs
相比。

有没有办法访问检测预测结果中的前 5 个类别?

我可以从原始图像中提取检测到的框的内容,然后重新运行分类过程以获得 top5。然而,这效率很低,因为它需要两次传递,这对于“You Only Look Once”来说并不理想!

deep-learning computer-vision yolo yolov8 object-tracking
1个回答
0
投票
Is there a way to access the top 5 classes in the results of doing detection prediction?

没有简单的方法可以做到这一点。这就是为什么:

  1. 您从模型提供的一组检测开始

  2. NMS 然后:

    a.按置信度对检测结果进行排序

    b.选择得分最高的框,并删除所有其他具有显着重叠的框(基于预定义的阈值,例如交并集或 IoU)

  3. 重复上一步,直到没有重叠,这些就是模型输出的bbox。

因此不存在用于检测的 TOP5 之类的东西。您可以修改 Yolov8 的内部工作方式并尝试从原始 bbox 中提取信息。但这说起来容易做起来难。

© www.soinside.com 2019 - 2024. All rights reserved.