一张场景图 +“打开抽屉”
01 · 拆解寻找顺序桌子 → 抽屉 → 把手完整图像与“打开抽屉”先交给视觉语言模型,得到桌子 → 抽屉 → 黑色把手这条短序列。它同时确定了寻找顺序和包含关系:抽屉在桌子里,把手在抽屉上。第一轮搜索接到的便是原始图像和“桌子”这个目标词。
02 · 生成候选框当前图像 → 候选框每到一级,Faster R-CNN 都会读取当前图像,提出一组候选框。到最后一级,当前图像已经是抽屉的裁剪图。每个框指定一块待检查的区域,下一步再判断它与“黑色把手”是否匹配。候选框提供位置,文字引导的评估负责选出符合操作意图的位置。
03 · 选择一个框框 + 目标词 → 通过的框程序裁出被评估框内的图像,让 Qwen2-VL 判断它与“黑色把手”有多匹配。评分调用次数预先设定。置信上界(UCB)根据候选的平均分和已被评估的次数,决定下一次看哪个框:平均分高的框值得继续看,评估较少的框也保留探索机会。次数用尽后,程序按平均分依次检查候选,轻微改变亮度、旋转和尺度,要求平均分足够高、分数波动足够小。一个框未通过,就试当前层的下一个。当前层没有候选,或允许的重试结束后仍无候选通过,检测链便在这里停止。
04 · 裁剪并继续通过的框 → 裁剪图 + 偏移桌子框通过后,就裁出桌子,用它寻找抽屉;抽屉框通过后,再裁出抽屉,用它寻找把手。每张新图都重复步骤 02 和 03。在图中的示意坐标里,桌子从原图的 (120, 140) 开始,抽屉从桌子内的 (90, 80) 开始,所以抽屉图在原图中的原点是 (210, 220)。记住这个偏移,才能在局部越找越细的同时保留原来的位置。
05 · 映射回原图最终部件的原图坐标假设选中的把手框,在抽屉图里从 (200, 90) 延伸到 (320, 120)。两个角点都加上抽屉图的原点 (210, 220),便得到原图中的 (410, 310)–(530, 340)。框的宽高仍是 120 × 30 像素。至此,定位结果带着部件名称和原图位置,可以交给后续模块使用。
最后一个目标 → 05
还有目标:新图回到 02
结束检测链
无候选通过
在多张图像上重复后的用途
汇集多次定位的结果,再把它们用于监督学习。
部件框数据集图像 · 部件名称 · 位置框
训练检测器学习从图像预测部件位置
重复应用于多张图像