【问题标题】:How to find mAP and f1 score in yolov4-416 custom model converted from Yolov4 to TensorFlow Lite model如何在从 Yolov4 转换为 TensorFlow Lite 模型的 yolov4-416 自定义模型中查找 mAP 和 f1 分数
【发布时间】:2021-07-03 13:38:01
【问题描述】:

我的模型是 Yolov4 Darknet 模型。我使用 "-map" 函数来计算那里的指标,-map 函数属于 darknet

但是,在将我的模型转换为 tensorflow lite 时,我想在两者之间的 tensorflow 模型上重新计算这些指标。所以实际上我的问题是如何在我的 yolov4-416 tensorflow 模型上找到 f1 分数、平均精度等值?

【问题讨论】:

    标签: tensorflow2.0 object-detection tensorflow-lite darknet yolov4


    【解决方案1】:

    很难回答,因为我们不知道您使用的 repo。你可以用mAP的公式来计算它,但是使用哪个iou阈值取决于你。通常是0.5,所以mAP@0.5会被计算为:

    1. 将 IoU 阈值设置为 0.5
    2. 将 AP 计算为:TP/(TP+FP),其中 TP 代表 True Positives,FP 代表每个类别的 False Positives。
    3. 然后将 mAP 计算为 AP 的平均值。 如果您使用的是 hanglc007,请尝试以下操作:
    4. 转换为您将使用的框架(在您的项目中,它是 tflite):

    python save_model.py --weights ./path/to/your/weights --output ./checkpoints/yolov4-416 --input_size 416 --model yolov4 --framework tflite python convert_tflite.py --weights ./checkpoints/yolov4-416 --output ./checkpoints/yolov4-416.tflite --quantize_mode( you can use eiter float16 or int8)

    1. 评估您的 TFLite 模型: python evaluate.py --weights ./checkpoints/yolov4-416.tflite --framework tflite --input_size 416 --model yolov4 --annotations /path/to/your/annotations.txt
    2. 计算mAP: cd mAP/extra python remove_space.py cd .. python main.py --output results_yolov4_tflite
    3. 然后在mAP/results_yolov4_tflite/results.txt 中查看您的mAP

    【讨论】:

    • 感谢您的回答。我的模型是 Yolov4 Darknet 模型。我使用 "-map" 函数来计算那里的指标,-map 函数属于暗网。但是,在将我的模型转换为 tensorflow lite 时,我想在两者之间的 tensorflow 模型上重新计算这些指标。所以实际上我的问题是如何在我的 yolov4-416 tensorflow 模型上找到 f1 分数、平均精度等值?
    • 感谢您的回复。请您显示您当前使用的存储库吗? Hunglc007(theAiGuysCode 克隆了该 repo)或其他。如果是hunglc007或者aiguyscode,有mAP文件夹,main.py在这个文件夹下。据我了解,您应该使用 mAP/main.py,因为没有建模路径。尝试实施。)
    • 我的自定义对象检测模型是暗网模型。我从 hanglc007 repo 转换为 Tflite 模型。首先,我得到了yolov4-416模型。它包括 saved_model.pb 模型。正如你提到的,我尝试了 mAP/main.py 脚本。但我的模型是定制模型。因此,我无法将其转换为我的模型。您对此有什么想法吗?谢谢您的详细解释。
    • 我收到这些错误。另外我试图联系你。但是,我无法达到它。我很努力,但我做不到。
    • 当我'python main.py --output results_yolov4_tflite'时。正如您提到的,我收到错误:'Traceback(最近一次调用最后一次):文件“main.py”,第 643 行,在 mAP = sum_AP / n_classes ZeroDivisionError:浮点除以零'我无法解决它。我更改了所有相关文件的文件路径。请帮帮我好吗?
    猜你喜欢
    • 2021-09-16
    • 2022-06-14
    • 2021-12-24
    • 2020-12-26
    • 2019-04-14
    • 2020-10-14
    • 1970-01-01
    • 1970-01-01
    • 2021-05-08
    相关资源
    最近更新 更多