bdd100k检测+跟踪评测入门:用motmetrics计算MOTA与IDF1指标
bdd100k检测跟踪评测入门用motmetrics计算MOTA与IDF1指标【免费下载链接】bdd100kThis repo has been moved to https://github.com/bdd100k/bdd100k permanently.项目地址: https://gitcode.com/gh_mirrors/bd/bdd100kbdd100kBerkeley Deep Drive是目前规模最大的开放驾驶视频数据集之一收录了 10 万个城市道路行车片段。如果你训练了目标检测或多目标跟踪MOT模型却不知如何量化跟得准不准、ID 稳不稳这篇入门教程将带你用官方评测脚本 evaluate.py 和motmetrics库在 bdd100k 上跑通检测跟踪det-tracking评测算出MOTA与IDF1两大核心指标 一、为什么用 bdd100k 做检测跟踪评测在开始评测之前先了解一下这个数据集为什么被广泛用作跟踪算法的试金石特性说明 数据规模10 万个 20 秒行车视频片段数百万帧街景图像️ 场景覆盖白天/黑夜、晴天/雨雪、城市街道/高速/隧道 10 类道路目标car、truck、bus、person、rider、bike、motor、train、traffic light、traffic sign 实例级 ID每个目标跨帧携带唯一id天然支持多目标跟踪评测正是这些跨帧的实例 ID让我们可以严格检验跟踪算法跟没跟对、ID 跳没跳。二、快速上手3 步完成环境准备第 1 步获取评测工具代码git clone https://gitcode.com/gh_mirrors/bd/bdd100k第 2 步安装依赖项目依赖非常轻量核心的就是motmetricspip install -r requirements.txt第 3 步准备评测数据从 bdd100k 官网下载测试集图像与对应的 Ground Truth 标注 JSON。评测脚本需要两个文件gt.json官方标注含跨帧目标idresult.json你模型的检测结果格式见下文三、搞懂 MOTA 与 IDF1两张指标卡bdd100k 的 det-tracking 评测采用MOTChallenge 标准指标集其中最常用的两个是 MOTA多目标跟踪精度MOTA 1 - (FN FP IDSW) / GT总数FN漏检该找到的目标没找到FP误检框出了不存在的目标IDSWID 切换同一个目标前后帧被赋予了不同 IDMOTA 越高越好它综合惩罚漏检、误检和身份跳变是衡量跟踪整体质量的第一指标。 IDF1身份保持度 F1IDF1 专门回答一个问题这个框跟的是不是同一个目标它通过计算预测身份与真值身份在整段视频上的一致程度给出一个 0~100 的分数。两个算法 MOTA 相同但 IDF1 差距很大时通常说明其中一个的 ID 切换问题更严重。其他常见指标速查指标含义IDP / IDR身份保持的精确率 / 召回率IDF1 即二者调和平均MT / ML完整跟踪 / 丢失目标的占比GPD / TPD每个 GT 预测框数 / 每个轨迹预测框数匹配规则评测脚本通过mm.distances.iou_matrix计算 GT 框与预测框的 IoU以IoU ≥ 0.5作为同一目标的判定阈值见 evaluate.py 中evaluate_det_tracking函数。四、准备输入标注 JSON 与结果 JSON 的对应关系Ground Truth 格式gt.json是一个帧对象列表每帧包含name、videoName、index和labels数组每个 label 含id实例 ID、category、box2dx1, y1, x2, y2。完整字段定义可查阅 format.md。结果文件result.json的推荐做法先把你模型的输出整理成与 GT 相同的帧结构再借用官方转换脚本 label2det.py 把标注格式转成检测格式保证name / timestamp / category / bbox / score字段齐全python bdd100k/label2det.py your_result_label.json result.json检测结果的字段规范bbox 为 0-indexed 整数坐标、10 类 category 的合法取值等详见 evaluation.md。五、一条命令跑通检测跟踪评测核心命令如下python bdd100k/evaluate.py -t det-tracking -g gt.json -r result.json参数说明参数作用-t det-tracking选择检测跟踪评测任务还支持det/seg/drivable-gGround Truth JSON 路径-r模型结果 JSON 路径-c car可选只评测指定类别如-c car person运行后脚本会分两阶段执行Collecting IoU逐帧收集 IoU 距离矩阵并喂给MOTAccumulator→Generating matchings and summary汇总输出 MOTChallenge 指标表最终打印一张以类别为列、指标为行的汇总表MOTA 和 IDF1就位列其中 六、新手避坑清单✅帧数必须一致脚本开头有assert len(gt) len(pred)两文件帧数不等会直接报错✅帧name必须对得上脚本会按name排序后逐帧比对命名规则不一致会匹配错位✅预测帧也要带videoName/indexMOTA 按videoName index 目标id拼接真值身份缺失字段会导致 ID 对齐失败✅想快速验证先评单车类加-c car可大幅缩短运行时间适合调试阶段✅score 字段必填即使不是按置信度筛选格式上也建议保留七、关键文件速查文件用途bdd100k/evaluate.py评测主脚本det-tracking 任务基于 motmetrics 实现bdd100k/label2det.py标注 JSON → 检测结果 JSON 格式转换bdd100k/show_labels.py可视化标注画框、车道、可行驶区域doc/evaluation.md各任务的评测指标与提交格式说明doc/format.mdbdd100k 标注 JSON 完整字段定义requirements.txt依赖清单motmetrics、numpy、matplotlib 等跑通第一次评测只是起点——接下来你可以对比不同 IoU 阈值下的 MOTA 变化或用-c逐类分析 ID 切换集中的类别持续打磨你的检测跟踪模型。祝评测顺利 【免费下载链接】bdd100kThis repo has been moved to https://github.com/bdd100k/bdd100k permanently.项目地址: https://gitcode.com/gh_mirrors/bd/bdd100k创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

Kubernetes集群搭建详细过程

Kubernetes集群搭建详细过程

声明: 写这个的主要目的想做个记录以便日后再折腾时查阅。内容适用于本人的使用环境,不同环境仅作参考。文中出现的内容来自网络和本人浅薄的认知,如果有侵犯他人内容请私信。 环境说明: master:CentOS 7.9 hostname…

2026/8/23 17:30:21 阅读更多 →
FinalBurn Neo完整指南:3分钟跑通的免费街机模拟器

FinalBurn Neo完整指南:3分钟跑通的免费街机模拟器

FinalBurn Neo完整指南:3分钟跑通的免费街机模拟器 【免费下载链接】FBNeo FinalBurn Neo - We are Team FBNeo. 项目地址: https://gitcode.com/gh_mirrors/fb/FBNeo 想重温街机老游戏,却找不到趁手的工具? 拳皇、合金弹头、街霸——…

2026/8/23 16:08:52 阅读更多 →
深度解读attorch:纯Python+Triton打造的终极轻量级深度学习框架,一篇读懂全貌

深度解读attorch:纯Python+Triton打造的终极轻量级深度学习框架,一篇读懂全貌

深度解读attorch:纯PythonTriton打造的终极轻量级深度学习框架,一篇读懂全貌 【免费下载链接】attorch A subset of PyTorchs neural network modules, written in Python using OpenAIs Triton. 项目地址: https://gitcode.com/gh_mirrors/at/attorch…

2026/8/23 21:34:42 阅读更多 →

最新新闻

QML 点阵进度条:离散圆点的激活与脉冲

QML 点阵进度条:离散圆点的激活与脉冲

目录 Demo 点阵进度条 演示代码(水平圆点 + 渐变圆点 + 数字圆点) 关键逻辑解析(三种基础圆点) 演示代码(脉冲圆点 + 环形圆点) 关键逻辑解析(脉冲与环形) 运行验证 扩展复用方向 工程下载 点阵进度条用一组离散的圆点表示进度——圆点按顺序排列,进度走到哪个位置,那…

2026/8/23 23:52:52 阅读更多 →
新能源产线安规四关测试总架构耐压绝缘接地泄漏全链路编排

新能源产线安规四关测试总架构耐压绝缘接地泄漏全链路编排

KRASSATE 嘉仕新能(新能源测试设备厂商)在本轮"安规与电池安全测试周"收官日,给出一份可落地的安规四关总架构方案。本文从全链路视角,解析耐压、绝缘、接地、泄漏四关如何在一条产线上被连续编排,并以 8860…

2026/8/23 23:52:52 阅读更多 →
《从零入门Linux系统篇(二十七):进程篇·十一——手写Shell实战:从普通命令执行到内建命令实现》

《从零入门Linux系统篇(二十七):进程篇·十一——手写Shell实战:从普通命令执行到内建命令实现》

这是Linux进程篇的收官之战。为了真正看懂命令行背后那套运转逻辑,我们要把前面进程篇一到十一积攒的全部家伙什儿都翻出来,从零开始,手写一个简易Shell。按照深入程度,自定义Shell的编写可以拆成四个阶段。本文先带大家啃下前三个…

2026/8/23 23:52:52 阅读更多 →
MES给AGV发指令,中间经历了什么?精工首个AGV对接项目开发实录

MES给AGV发指令,中间经历了什么?精工首个AGV对接项目开发实录

精工智能第二战区开发组在云某彩项目中,完成了公司首例MES系统对接AGV(自动导引运输车)的完整开发。在无现成方案可参考、无历史代码可复用的前提下,团队独立设计并实现了基础调度、原材料调度、成品调度、半成品调度四个核心节点…

2026/8/23 23:52:52 阅读更多 →
政务内网开发躲不开的等保那些坑,看看你踩了几个了

政务内网开发躲不开的等保那些坑,看看你踩了几个了

说实话,干政务内网开发这行,最难缠的从来不是技术本身,是那些藏在红头文件里的“潜规则”。我们团队在乌鲁木齐,接了十多年政务项目,从最早给区县政府做PHP老门户,到现在全套信创环境下的国产化替换&#x…

2026/8/23 23:52:52 阅读更多 →
管家婆天通S系列总账与业务账户对账不一致如何解决

管家婆天通S系列总账与业务账户对账不一致如何解决

启用总账模块后,业务线人员专注于开单、收款、发货、费用等业务管理,而财务人员则负责做账、入账等财务处理。一旦双方沟通不畅,就容易出现业财账目不一致的情况。如果仍依靠线下人工对账,往往会面临效率低下、核对周期长等问题。…

2026/8/23 23:51:52 阅读更多 →

日新闻

[光学原理与应用-521]:对光的错误理解与纠偏

[光学原理与应用-521]:对光的错误理解与纠偏

首先光是一种能量的载体和形态,宏观上观察到的光是由无数个微观的光量子组成的,每个光子在产生的瞬间,其在真空的空间中以确定不变的速度沿着一个初始的方向一直向前,在微观层面,每个光量子的运动轨迹是以波函数所展现…

2026/8/23 0:00:50 阅读更多 →
SIP通话转接原理与REFER方法实战解析

SIP通话转接原理与REFER方法实战解析

1. 通话转接不是“挂断再拨号”,而是SIP会话的动态重定向你有没有遇到过这样的场景:客服坐席A正在和客户通电话,突然需要把这通对话无缝转给专家坐席B,客户完全感知不到中间的断连——既没听到忙音,也没被要求重新拨号…

2026/8/23 0:00:50 阅读更多 →
Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

1. 为什么选择Kolla-ansible来部署单节点OpenStack?如果你正在寻找一种能把OpenStack从“概念”快速变成“可用的实验环境”的方法,那么Kolla-ansible几乎是当前最主流、最省心的选择。我见过太多人卡在手动编译依赖、配置服务、处理版本冲突的泥潭里&am…

2026/8/23 0:00:50 阅读更多 →

周新闻

[光学原理与应用-521]:对光的错误理解与纠偏

[光学原理与应用-521]:对光的错误理解与纠偏

首先光是一种能量的载体和形态,宏观上观察到的光是由无数个微观的光量子组成的,每个光子在产生的瞬间,其在真空的空间中以确定不变的速度沿着一个初始的方向一直向前,在微观层面,每个光量子的运动轨迹是以波函数所展现…

2026/8/23 0:00:50 阅读更多 →
SIP通话转接原理与REFER方法实战解析

SIP通话转接原理与REFER方法实战解析

1. 通话转接不是“挂断再拨号”,而是SIP会话的动态重定向你有没有遇到过这样的场景:客服坐席A正在和客户通电话,突然需要把这通对话无缝转给专家坐席B,客户完全感知不到中间的断连——既没听到忙音,也没被要求重新拨号…

2026/8/23 0:00:50 阅读更多 →
Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

1. 为什么选择Kolla-ansible来部署单节点OpenStack?如果你正在寻找一种能把OpenStack从“概念”快速变成“可用的实验环境”的方法,那么Kolla-ansible几乎是当前最主流、最省心的选择。我见过太多人卡在手动编译依赖、配置服务、处理版本冲突的泥潭里&am…

2026/8/23 0:00:50 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/23 18:47:06 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/23 12:10:44 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/22 3:22:48 阅读更多 →