在 OpenVINO™ 精度检查器工具中添加 DIoU-NMS 指标,以获取 YOLO v4 的正确 mAP
openlab_4276841a
更新于 3年前
1.0 简介
Yolov4 模型于 2020 年中期推出,它的问世对深度学习目标检测领域产生了深远影响。为取得成功,Yolov4 集成了许多一流的技术,其中包括改进的非极大值抑制 (NMS) 算法,该算法使用距离交并比 (DIoU) 而非交并比 (IoU)。DIoU 总结了边界框回归中的两个几何因素(即重叠区域和中心点距离),从而加快了收敛速度并提升了性能。在本白皮书中,DIoU-NMS 函数将被添加到 OpenVINO™ 精度检查器工具中,以用于计算 yolov4 的正确预期精度。尽管 DIoU-NMS 可帮助大幅提升精度,但它也可以与训练后优化工具包 (pot) 一起使用,以生成优化的 INT8 模型。
2.0 设置环境
• 系统环境– 设置 OpenVINO™ 2021.2
• Ubuntu 18.04 或 Ubuntu 20.04。
3.0 添加 Diou-nms 的步骤
3.1. 安装精度检查器工具
按照 openvinotookit_open_model_zoo指南进行安装。3.2. 编辑 “/opt/intel/openvino_2021/deployment_tools/open_model_zoo/tools/accuracy_checker/accuracy_checker/postproces sor/nms.py”
将以下代码添加到文件中:4.0 用 DIoU-NMS 检查 yolo-v4-tf 模型的精度
4.1. 下载和转换 yolo-v4-tf 模型
4.2. 准备数据集和 yml 文件
4.2.1. 下载数据集
4.2.2. 复制和编辑“accuracy-check.yml”
复制“accuracy-check.yml”
编辑“accuracy-check.yml”
1. 标注出第 2-60 行
2. 在第 65 行添加以下内容
3. 从以下位置开始编辑第 94 行
- type: nms
一直到
- type: diou-nms
4.3. 运行精度检查器工具,计算 yolo-v4-tf 的统计精度
如果上述设置和修改正确,请使用以下命令获取精度结果。mAP 结果:
结果证实 DIoU 的 mAP 比 IoU 更准确。尽管使用训练后优化工具包 (pot) 将模型转换为 INT8 时只有微小的差异,但是这些差异可能会影响转换后的 INT8 模型的性能。因此,实现面向 OpenVINO 工具™(精度检查器和 pot)的 DIoU-NMS 函数非常重要。
0个评论