视觉定位(Visual Grounding)是什么?Agent 要「点对位置」为什么难?
先这样答
视觉定位指把一句语言描述对应到图像中的具体区域,输出通常是边界框坐标。用户说「点右边那个蓝色按钮」,模型要在画面里找出符合「右边」「蓝色」「按钮」三个条件的那个元素,并给出可点击的坐标。对多模态 Agent 来说,这是从「看懂」到「能操作」的分界线:理解错了顶多答非所问,定位错了任务直接执行失败。
难在四个方面。粒度差:语言是离散符号,像素是连续信号,「那个按钮」四个字要落到几十乘几十的像素区域上,模型必须同时做语义匹配和空间回归。指代歧义:「第二个」从哪边数、「左边的」以谁为参照物,这些日常语言里的模糊性都要靠上下文消解。小目标和密集排布:表单里十几个输入框挤在一起,框与框只差几个像素,定位精度要求被抬高。误差放大:坐标预测偏移十几个像素,人眼毫无感知,点击就已经落在错误元素上,而且这种错误没有任何报错,静默失败。
评估上用 IoU 衡量框的准确度,用点击命中率衡量可用性。工程上常用两级定位缓解精度问题:先粗定位目标区域,再在局部放大精修坐标。
面试官会怎么追问
- 「两级定位为什么有效?」 粗定位把候选范围从全屏缩小到局部,局部区域内目标相对更大更突出,第二次预测的相对坐标误差换算到全屏后大幅缩小。本质是把一个高精度回归问题拆成两次低精度回归。
- 「指代歧义怎么处理?」 保留对话澄清机制:模型检测到描述匹配多个候选时,主动反问用户或给出可视化高亮让用户确认。宁可多一轮交互,不要猜错执行。
- 「IoU 高就等于点得对吗?」 不等于。IoU 衡量框的重合度,但点击点如果落在两个相邻元素的重叠区域边缘,命中可能是错的。GUI 场景还要看点击点是否落在目标元素的安全内核区域内。
回答的坑
- 把视觉定位说成图像分类或目标检测。分类回答「是什么」,检测回答「有哪些」,定位回答「语言指的那个在哪」,任务定义要分清。
- 不提静默失败问题。定位错误不抛异常,全靠状态验证兜底,这个工程意识是加分项。
同系列的题
—— 本题完 ——