摘要

游戏开局有一个“选秀”阶段:玩家依次挑选英雄、技能、宝物等。其中“子技能”是主技能下面的小技能,在英雄面板里以小图标显示。程序要从英雄面板截图认出每个子技能图标是什么,做法是把当前图标与一个“参考库”(已审核过的真实截图图案)比较。

问题:参考库里很多子技能只有一个来源的样本,有些根本没有。本实验(B084)想到另一个数据来源——选秀时的子技能选择页会同时展示很多子技能图案。从训练录像里抽取这些页面并精审,补充参考库。

结果:真实图案覆盖从 32 类增加到 69 类;只把 70 个说明条小图加入参考库后,英雄面板子技能的留出测试从 111 提高到 115 正确,三张已曝光评估图从 25/27 提高到 27/27,没有新增误认。

要回答的问题

选择页上的子技能图标和英雄面板上的大小、边框可能不同。用选择页样本扩充参考库,能否在不降低门槛的情况下提高英雄面板子技能的识别,而不引入误认?

数据与来源

  • 只用已经准入为“训练”的 7 个来源组录像,从它们以前的场景扫描记录中找出子技能选择页的访问时段,抽取 97 张候选帧。
  • 精审其中 12 页、5 个来源组。每页有 6 格说明条小图和 3 个选项大图,共 108 个可见位置:104 个能对应到游戏目录里的技能,4 个显示为“属性加成”的暂时无法对应。
  • 选择页上显示某个技能不代表玩家学会了它;标签只标“可见图案身份”,学会状态一律不标。
  • 评估用的三张完整截图来自三个独立于训练的来源(但以前已曝光过),标签不进入参考库;更早冻结的来源不打开。

方法

  1. 抽帧:从原录像只读抽取原生帧。
  2. 冻结裁图几何:先在一张训练页上检查固定布局,写好裁图框。
  3. 初标与精审:批量生成初标,优先精审缺失身份、同类竞争、只有一个来源的类别和跨来源重复。
  4. 固定方案后再评估:在三来源回归之前,预先写下两种候选方案——加入全部 104 个大小图,或只加入 70 个已映射的小图(与英雄面板图标尺寸接近),并选定后者。

识别门槛不变:参考分数 ≥ 0.75、前两名差距 ≥ 0.10、规范图首选 ≥ 0.60 且身份一致,还必须通过“父技能核对”(这个子技能所属的主技能,在当前截图里与所认的父图一致,0.75/0.08)。

设置

训练评估的每个查询都把整个查询来源组从参考库中排除,避免用同一来源自己的样本认自己。固定检查集包括:135 个英雄面板子技能查询,以及 2,160 个“错误父级”压力查询、1,547 个空白查询、1,020 个其他 UI 查询(检查会不会乱认)。

结果

固定检查 原结果 新结果 说明
135 个英雄面板查询(整个来源组留出) 111 正确 / 24 未知 115 正确 / 20 未知 恢复 4,0 误认、0 退步
2,160 个错误父级查询 父级核对后 0 接受 0 接受 若去掉父级核对会多接受 6 个,门禁不能去
1,547 空白、1,020 其他 UI 新增补读 0 0 不等于整图误报率
三张曝光评估图的 27 个子技能 25 正确 / 2 未知 27 正确 / 0 未知 恢复两个技能各 1,无误认或漏定位
同三张图的 21 个空白子位置 0 误报 0 误报 —

两种预声明方案(加入 104 个或只加 70 个)成绩相同,选了规模更小的 70 个。新参考库共 205 条、820 个模板。

图案覆盖从 32 类扩到 69 类;原 32 类中只有一个来源的从 8 类降到 4 类。但扩大后的 69 类里仍有 32 类只有一个来源,不能说“只剩 4 类缺跨来源样本”。

失败与负结果

  • 初批小图框按等间距切,但第 3、4 个图之间其实多了 10 像素间隔,导致后三个图被截断。原生放大复核后修正;“身份猜对”并不代表框完整,这类错误必须靠看像素拦下。
  • “属性加成/防御力提升2”和“属性加成/法术强度提升2”各出现在小图和大图两处,共 4 处,保留原文,不强行对应到某个技能,也不当空位。
  • 初审把一个技能的小图误判为和规范图冲突,放大后确认一致,属于人工标签纠正,不是模型提升。
  • 抽帧时,原来的 OpenCV 按毫秒定位在一段录像上请求 74.6 秒,实际第一帧却到了 146.725 秒,窗口里没有输出,作业明确失败。改用已有的基于 FFmpeg 原始时间戳的读取函数,取到 74.597033 秒。旧采样器的问题当时尚未修复,也不能据此认定旧样本全错。

局限

  • 只精审了 97 页候选中的 12 页,其余 85 页未审。
  • 三张评估图以前已曝光,只能称“来源分离回归”,不是盲测;27/27 只针对子技能。
  • 英雄面板训练查询仍有 20 个未知,主技能里的一个仍拒判。
  • 没有改阈值、训练网络或生产代码;默认和 App 不加载这个新参考库。

结论与下一步

选秀选择页是子技能图案的有效补充来源:只加入尺寸相近的小图,就能恢复英雄面板上的若干子技能,并保持零误认,父级核对门禁仍然必要。

下一步:先复现并保护旧采样器的时间定位问题(保留它“取不早于请求时刻的帧”的原语义,不直接替换);然后回到更广的整图身份和目标关系精标,不围绕已经全对的 27 个子技能反复调参。