质量检测
训练模型时,帧率偏低、传感器话题缺失、时间对不齐等问题往往要到训练中途才暴露,既费算力又难排查。质量检测的作用,就是在数据预处理完成之后、进入导出或训练之前,用一套可配置的标准自动扫一遍 ROS 录制数据(如 .mcap、.bag、.db3 等),告诉你这条数据通过还是不通过。
平台把这件事做成了产品能力,管理员或者项目经理角色的用户,可以在质检页面里配置规则,系统按规则排队扫描,结果会出现在数据集列表和详情里。无需自己写扫描脚本。
更细的模块说明(规则优先级、匹配数据名、与视频质检的区别等)见:数据质检。本文侧重「在整条数据流水线里怎么用」。
快速上手
质检何时运行
数据要先完成预处理,变成平台可质检的 ROS 录制格式,质量检测才会参与。预处理成功后,只要命中了你配置的规则,系统会自动排队去扫;你也可以在任意一条数据的详情里手动再跑一次。
质检覆盖范围
- 项目规则:只对你选定的项目里的数据生效,适合各项目自己的标准。
- 全局规则:对平台上所有 ROS 录制数据生效(包括还没归到某个项目里的数据),适合做全公司统一的底线。
同一条数据可以同时命中多条规则,每条规则各自出结论,互不影响。
质检结果如何人工审核
机器判定不通过时,有权限的管理员或者项目经理可以对该次结果做人工覆盖(例如确认是误杀)。列表、标签、导出是否放行,都以生效判定为准——人工覆盖优先于机器结果。管理员还可以在系统里打开「未通过禁止导出」等策略,把质检和导出联动起来。
在整条流水线里处于哪一步
从上传到训练,大致顺序如下。质量检测接在预处理之后,帮你拦住明显不合格的数据,再进入筛选、导出和训练。

规则里能配什么
在规则编辑器里,你会遇到三类常见配置(名称以界面为准):
数值类(指标阈值)
选一个检测项(例如帧率、录制时长、多路时间对齐误差),再选比较方式(大于等于、小于等于等)和阈值。适合给「全文件」或「某几路传感器」设底线。
话题在不在
例如「必须出现 /joint_states」「禁止出现某调试话题」。适合检查关键传感器有没有录上。
严重度:不通过 vs 警告
- 不通过:这一条没满足,这一次质检整体记为不通过。
- 警告:会在明细里提示你,但单靠警告不会让整次变成不通过,适合先观察数据 分布、再慢慢收紧。
同一规则里,通常要所有条件都满足才算本次通过。新建规则时,建议先用「警告」看几天数据,再把关键项改成「不通过」。
新建、启用或修改规则后,平台会对已经命中过这条规则的历史数据自动补扫一遍,让结论和最新规则对齐。这是后台任务,不必一直守在页面前。

常见检测项一览(便于对照界面)
下面两张表对应界面里的检测项名称,方便你对照「该设上限还是下限」。越大越好的指标一般用「≥」卡底线;越小越好的用「≤」卡上限。
整份 ROS 数据文件
| 检测项 | 说明 | 单位 | 方向 | 常见用途 |
|---|---|---|---|---|
| 录制时长 | 文件里第一条到最后一条消息的时间长度 | 秒 | 越大越好 | 过滤过短片段 |
| 时间戳回退次数 | 时间轴「往回跳」的次数 | 次 | 越小越好,建议为 0 | 发现时间异常 |
| 跨话题同步(P95 / P99 / 最差) | 多路传感器之间的时间对齐误差 | 毫秒 | 越小越好 | 多路同步要求 |
| 参考主频(帧率) | 主数据流平均每秒多少条消息 | 赫兹 | 越大越好 | 最低帧率 |
| 帧间隔(中位 / P95 / P99 / 最大) | 相邻两帧之间隔了多久,看抖动和卡顿 | 毫秒 | 越小越好 | 节奏与卡顿 |
| 丢帧次数 | 明显长于正常节奏的间隔有多少段 | 次 | 越小越好 | 断续、丢包 |
| 画面清晰度(高分位) | 从画面算出的清晰程度 | 分值 | 越大越好 | 模糊、对焦 |
| 曝光异常占比 | 亮度异常偏高的帧占比 | 比例 | 越小越好 | 曝光不稳 |
按话题或按类型(逐路检查)
这些会对每一个匹配到的话题单独算一遍。作用域要选「按话题名称」或「按消息类型」,支持通配。只要有一路不满足,对应那一条条件就算不通过。
| 检测项 | 说明 | 单位 | 方向 | 常见用途 |
|---|---|---|---|---|
| 单路消息频率 | 这一路大约多少 Hz | 赫兹 | 越大越好 | 某路相机最低帧率 |
| 单路最大帧间隔 | 这一路最「卡」的一次隔了多久 | 毫秒 | 越小越好 | 单路最差卡顿 |
| 单路消息条数 | 这一路有多少条消息 | 条 | 越大越好 | 避免几乎没录上 |
| 单路录制跨度 | 这一路从首条到末条跨了多久 | 秒 | 越大越好 | 某路是否半路断流 |
| 单路首条 / 末条时间 | 这一路在文件时间轴上的位置 | 秒 | 视任务 | 进阶用法 |
配置思路举例(数字请按现场调整)
- 全平台底线:全局规则里加「主频 ≥ 15 Hz」「时长 ≥ 5 s」,严重度选不通过。
- 时间轴正常:时间戳回退次数 ≤ 0。
- 多路对齐:跨话题同步 P99 ≤ 100 ms;若更在意极端尖峰,可改用「最差值」。
- 必备关节或传感器话题:在「必须有的话题」里填现场真实话题名(如
/joint_states)。 - 多相机:作用域匹配图像类话题;每路「频率 ≥ 10 Hz」且「最大帧 间隔 ≤ 500 ms」。
- 整体清晰度:作用域选「全部」,清晰度高分位 ≥ 40(具体分值需自己试标定)。
- 丢帧:丢帧次数 ≤ 10;若暂时只想看统计、不拦导出,可改成「警告」。
- 不应进训练包的话题:用「禁止出现的话题」填调试流等。
建议工作流
- 在 数据质检 页面维护规则(选项目或全局、按需填写数据名通配)。
- 在数据集列表或详情里看汇总;需要看每一次扫描的明细时,打开质检历史。
- 若是规则过严导致的个案,用人工覆盖并写清原因;若是真实质量问题,回到采集或预处理侧修复后再跑。
- 导出数据见 数据导出;发起训练见 模型训练。
管理员或项目经理可以对个案做覆盖,把有效判定改为通过。

