评估KITTI数据集的对象检测结果

时间:2019-02-08 14:14:11

标签: object-detection yolo kitti

我正在通过YOLO训练KITTI数据集的对象类别中的图像来进行对象检测。首先,我将包围盒的地面实况从KITTI格式转换为YOLO格式。然后我获得了我训练的图像文件的权重。我想评估一下学习情况。

在KITTI网站上:

Easy     Min. bounding box height: 40 Px, Max. occlusion level: Fully visible,    Max. truncation: 15%  
Moderate Min. bounding box height: 25 Px, Max. occlusion level: Partly occluded,  Max. truncation: 30%  
Hard     Min. bounding box height: 25 Px, Max. occlusion level: Difficult to see, Max. truncation: 50%

但是,即使我看着它,我也不知道如何显示评估数字。如果您详细解释,我将不胜感激。

1 个答案:

答案 0 :(得分:0)

这里有几个粒度级别。

  1. 在训练模型时,可以定期输出损失函数,希望它会随着时间的推移而减少。这给您一些概念,表明您的模型性能正在提高。
  2. 此外,在训练过程中,我可以将其他功能称为accuracy()很好。此函数接收模型(YOLO)的输出和基本事实,并计算两者之间的一些精度指标。如果您使用YOLO进行2D边界框预测,则精度指标可能看起来像报告真正,假正和假负百分比,以及所有真正的并集精度交集。本质上,使用accuracy()可以为您提供一些定期报告,这些报告可以在完整的KITTI评估脚本中找到,但是您可以在训练期间看到这些结果。

  3. 使用官方的KITTI评估脚本进行评估。如果您使用Python或Matlab进行编码,则包含评估脚本。它需要一些技巧,才能直接将结果输出给您,而不是尝试将结果发送到KITTI的评估服务器。这样可以为您提供最可靠的算法(相对于其他算法)性能的估计,并报告许多指标,但是这很不直观,如果您想了解计算这些指标的实际工作,代码会有些密集。