为贴合 "客户只需要大概区域" 的实际需求采用网格映射方案
一、核心逻辑:取图区域 → 网格划分 → 终端车身网格映射
第一步:定义 "相机取图区域" 与 "车身物理区域" 的对应关系,重点无需标定
明确:每台相机拍的是车身哪个具体部位、覆盖多大物理范围,但是从这里映射出一个问题:同一物理点被检测 12 次(极端情况三光带)" 环形拱门 + 多维度交错(左右 / 上下 + 多光带)场景下的核心问题 ------直接舍弃会漏检,全部展示会干扰工人
处理方式
本质:
- 不是 12 个不同缺陷,而是同一物理点 / 同一缺陷被不同相机(左右 / 上下)、不同时刻(车动触发)、不同光带(3 个)拍到的多视角结果;
- 这些多视角结果是 "互补" 的(比如某光带能拍到划痕,某光带能拍到尘点,某相机能拍到曲面盲区的缺陷),舍弃任何一次都可能丢失关键缺陷信息(比如低置信度但真实存在的缺陷)。
核心逻辑:检测结果对应 "同一物理点"→再融合这些结果的价值→终端只展示一次,但保留全量检测证据。
第一步:定义 "同一物理点" 的判定规则-核心根据传输信号将车辆固定网格化
| 判定维度 | 规则(适配的网格 + 时间位移场景) | 示例 |
|---|---|---|
| 位置聚类 | 同一X-Y 网格(比如 X20-Y3,10cm×10cm)内的检测结果,视为 "同一物理区域";若网格内子区域偏差≤5cm(比如 X20.1-Y3.2 和 X20.3-Y3.1),也归为一类 | 12 次检测结果都落在 X20-Y3 网格 → 聚为一类 |
| 缺陷类型 | 同一物理区域内,缺陷类型一致(比如都是 "划痕")→ 视为 "同一缺陷";类型不同(比如划痕 + 尘点)→ 分开聚类 | X20-Y3 内有 8 次划痕、4 次尘点 → 分成 "划痕类""尘点类" 两类 |
| 时间 / 光带 | 同一物理区域内,时间差≤触发间隔 ×2(比如≤0.4s)、光带不同 → 仍归为同一区域(光带是互补检测) | 3 个光带拍到的 X20-Y3 划痕 → 归为同一类 |
第二步:多检测结果融合(不丢信息,只优化)
对聚类后的同一类结果(比如 12 次→1 类),执行 "融合策略"(而非舍弃),最大化利用多视角价值:
| 融合规则 | 操作逻辑 | 目的(避免漏检) |
|---|---|---|
| 置信度加权 | 保留类内置信度最高的结果作为 "主结果",同时计算类内置信度均值(比如 12 次置信度 0.6~0.9 → 主结果取 0.9,均值 0.75) | 高置信度保证准确性,均值验证缺陷真实性(均值≥0.7 则判定为 "确认缺陷") |
| 多视角补充 | 若类内不同相机 / 光带的检测结果能补充缺陷细节(比如相机 A 拍到划痕长度,相机 B 拍到划痕深度,光带 1 拍到尘点),则合并到主结果的 "缺陷描述" 中 | 避免单一视角漏看缺陷特征 |
| 异常过滤 | 仅过滤 "置信度<0.5 且类内无高置信度支撑" 的结果(比如 12 次中 1 次置信度 0.3,其余 11 次≥0.8 → 过滤这 1 次;若 12 次都≤0.5 → 标记为 "疑似缺陷",不丢弃) | 过滤噪声,但不丢疑似缺陷 |
| 光带验证 | 若 3 个光带中≥2 个拍到同一缺陷 → 标记为 "多光带验证";仅 1 个光带拍到 → 标记为 "单光带提示" | 区分缺陷可信度,不遗漏低光带覆盖率的真实缺陷 |
第三步:终端展示(简洁 + 可追溯,不干扰工人)
终端只展示融合后的 "主结果",但保留 12 次检测的全量证据,既简洁又不漏检:
| 展示层级 | 操作 | 工人体验 |
|---|---|---|
| 核心展示(默认) | 同一物理区域的缺陷只显示 1 次:- 网格高亮:X20-Y3 红色闪烁;- 文字提示:"X20-Y3 划痕(多视角验证,置信度 0.9)" 或 "X20-Y3 疑似尘点(单光带提示,置信度 0.7)" | 无重复干扰,快速聚焦核心缺陷 |
| 详情展开(点击触发) | 点击高亮网格,弹出 "多视角检测详情":- 显示 12 次检测的相机 / 光带 / 时间 / 置信度列表;- 可切换查看 12 次拍摄的原始图像(缺陷框标注);- 标注 "哪些光带 / 相机拍到该缺陷" | 工人可复核全量证据,避免漏看低置信度但真实的缺陷 |
| 疑似缺陷处理 | 疑似缺陷(置信度 0.5~0.7)用 "黄色闪烁" 标注,区别于 "红色确认缺陷",提示工人重点复核 | 不丢弃疑似缺陷,靠人工兜底避免漏检 |