LLM 时代里的 Semantic Segmentation:从核心任务到通用视觉接口

前几年如果你做计算机视觉,semantic segmentation 往往是一个“终点任务”:输入一张图,输出每个像素的类别,最后用 mIoU 来衡量模型强不强。那个时期的问题很明确——类别表是固定的,数据集是封闭的,目标是把像素分类做得更准、更快。

但在 LLM 和 VLM(Vision-Language Model)快速普及之后,semantic segmentation 的角色正在明显变化。它没有消失,反而变得更重要了;只是它不再总是以“最终任务”的身份出现,而越来越像一种中间能力、交互接口,以及世界模型里的空间对齐层

以前的 segmentation:回答“这是什么”

传统语义分割的范式很清楚:

  • 预先定义类别,比如路面、车辆、行人、天空
  • 用大量像素级标注训练模型
  • 在推理时对整张图做密集分类

这个范式非常适合自动驾驶、遥感、医学影像这类场景,因为它们有两个共同点:类别空间相对稳定,以及对每个像素的类别都关心

所以在那个阶段,SegFormer、DeepLab、UPerNet 这类模型的优化目标也很直接:更好的 backbone、更轻的 decoder、更高的精度和速度。

LLM 普及之后,问题变了

LLM 把一个很重要的交互方式带进了视觉系统:自然语言不再只是描述结果,而是开始参与控制感知过程本身。

用户不再只问“图里每个像素是什么”,而开始问:

  • “把图里所有施工区域找出来”
  • “把站在路边、可能准备横穿马路的人单独分出来”
  • “只保留货架上红色包装的商品”
  • “把这段视频里一直出现的那只狗抠出来”

这里最大的变化是:需求不再天然适配一个固定类别表。很多任务不是闭集分类,而是开放词汇、上下文相关、甚至带意图的区域理解。这让 segmentation 的位置从“最终输出头”变成了更大系统中的一个组件。

变化一:从“像素分类任务”变成“空间 grounding 能力”

在 LLM/VLM 系统里,模型越来越擅长理解语言,但语言理解本身并不等于空间定位。它知道“施工区域”“危险物体”“左边第二个人”是什么意思,不代表它能精准指出这些概念对应到哪些像素。

这时候,segmentation 的价值就变成了:把语义理解落到空间上。

可以把它理解成一个视觉版的 grounding 层:

  1. LLM/VLM 负责理解用户意图
  2. detection / retrieval / prompt encoder 负责召回候选目标
  3. segmentation 负责把目标边界真正“扣出来”

也就是说,semantic segmentation 不再只是“分类更细”,而是在多模态系统里承担了一个新的职责:让语言、目标和像素对齐。

这也是为什么这两年 promptable segmentation、referring segmentation、grounded segmentation 会越来越受关注。大家需要的不是一个只会预测 19 个类别的模型,而是一个能响应“你刚才说的那个东西到底在哪”的视觉模块。

变化二:从“离线感知模型”变成“可交互工具”

以前 segmentation 模型更多是 pipeline 里的一个 batch operator:喂数据、出 mask、算指标。
而今天,在很多产品里,它更像一个可调用工具:

  • 图像编辑里,它负责抠图和局部重绘区域生成
  • 标注平台里,它负责 click-to-mask、box-to-mask
  • 机器人系统里,它负责把语言指令对应到操作区域
  • Agent 系统里,它负责把“去拿桌子上的蓝色杯子”翻译成可执行的视觉目标

这背后有个很关键的变化:用户容忍“交互式逐步逼近”,而不再要求一次性纯自动完成。

这会改变 segmentation 的评价标准。过去大家追求 benchmark 上的单次推理最优;现在很多系统更关心:

  • 一次点击后 mask 质量如何
  • 第二次纠错能提升多少
  • 与文本提示结合是否稳定
  • 在长视频或多轮交互里是否保持一致

换句话说,segmentation 从一个“静态模型能力”,变成了“动态人机协作接口”。

变化三:从“昂贵标注目标”变成“数据生产引擎”

像素级标注一直很贵,这也是 segmentation 长期难以像分类、检测那样规模化扩张的原因之一。
但 LLM 和 foundation model 起来之后,整个数据闭环也变了。

现在更常见的做法是:

  • 先用 VLM/LLM 做语义筛选和粗召回
  • 再用 segmentation 模型生成 candidate mask
  • 最后由人做快速修正

这使 segmentation 不只是训练目标,还是数据生产工具。它既服务于最终应用,也服务于下游数据构建。

尤其在长尾类别上,这种变化很明显。以前你要先定义一个类别,再花很多成本打点、描边、返工;现在很多团队会先通过语言描述找到样本,再用 promptable segmentation 生成初稿,最后把人工时间花在修正而不是从零标注上。

从这个角度看,segmentation 在 LLM 时代承担的是“把抽象概念低成本落成 mask”的角色。

变化四:从“封闭类别体系”走向“开放世界中的局部精确性”

LLM 的强项是开放世界知识,semantic segmentation 的强项是局部边界精确性。两者结合之后,一个非常自然的分工出现了:

  • LLM/VLM 管语义广度
  • segmentation 管空间精度

这意味着 segmentation 不再需要独自承担全部“理解世界”的压力。
它可以更专注于自己最擅长的那部分:边界、局部结构、区域一致性、时序连续性。

这也解释了为什么传统 semantic segmentation 并不会被 LLM 取代。因为无论语言模型多强,只要系统最终需要:

  • 精确剪裁对象
  • 计算占地面积
  • 做像素级编辑
  • 输出可执行的机器人操作区域
  • 保证视频中的 mask 连续稳定

那么 segmentation 就仍然是不可替代的。

那 semantic segmentation 现在还重要吗?

我觉得答案是:更重要了,但更“幕后”了。

以前它是论文标题里的主角;现在它更像基础设施。
它不一定总被用户直接看见,但越来越多上层能力都依赖它:

  • 多模态 Agent 需要它做空间落点
  • 图像编辑产品需要它做局部控制
  • 数据引擎需要它加速标注闭环
  • 机器人和自动驾驶需要它把语言和行动区域对齐

所以它的角色变化,不是从重要变得不重要,而是从一个独立任务,变成了一个平台型能力

未来更像什么

我越来越觉得,未来的视觉系统不会是“一个 segmentation 模型解决所有问题”,而更像这样一套组合:

  • 一个 LLM/VLM 负责理解用户意图与场景语义
  • 一个 detector / retriever 负责快速找到候选目标
  • 一个 segmentation 模块负责输出高质量 mask
  • 一个 memory / tracker 负责跨帧和多轮交互保持一致

在这个体系里,semantic segmentation 不再单独站在舞台中央,但它几乎出现在每一次“把语言变成视觉操作”的关键一步里。

总结

如果用一句话概括这几年 semantic segmentation 的角色变化,那就是:

它正在从“视觉任务本身”,转变为“多模态系统中的空间执行层”。

以前它主要回答“这是什么”;现在它更常回答“你说的那个东西,到底在哪一块”。
这听起来像是退居二线,但实际上是进入了更核心的位置——因为所有真正可交互、可操作、可落地的视觉系统,最终都要回到空间和区域本身。

而这,恰好就是 segmentation 最擅长的事。