
在人工智能领域大语言模型如GPT通过阅读海量文本学会了“对话”。而在计算机视觉领域Meta公司推出的“分割一切模型”Segment Anything Model简称 SAM则实现了视觉界的“GPT时刻”——它学会了“分割万物”。SAM 究竟是如何做到这一点的它的底层原理可以拆解为三个核心部分一、 给机器一个“提示”可提示的分割任务传统的图像分割模型通常只认识特定的物体比如专门识别猫、狗或汽车的模型。如果你想让它分割医学影像或水下照片就必须重新收集大量数据进行训练。SAM 打破了这一限制它学习的不是“认出某类物体”而是“理解提示并生成掩码”这个通用能力。用户可以通过不同的“提示Prompt”告诉 SAM 想要分割什么•点提示在图片上点一下物体内部SAM 就会分割出该物体。•框提示画一个边界框SAM 会分割框内的物体。•掩码提示给出一个粗略的轮廓SAM 会帮你精细化。•文字提示输入一段文字如“一只狗”SAM 也能尝试分割。这种设计让 SAM 具备了强大的“零样本迁移”能力。即使面对从未见过的图像类型只要给出合适的提示它就能直接输出合理的分割结果。二、 SAM 的大脑三大核心模块SAM 的模型架构并不神秘它主要由三个协同工作的组件构成1.图像编码器Image Encoder相当于 SAM 的“眼睛”。它通常采用强大的视觉 TransformerViT架构负责将输入的高分辨率图像转换为机器能理解的图像特征嵌入向量。2.提示编码器Prompt Encoder相当于 SAM 的“翻译官”。无论是用户点击的坐标、画的框还是输入的文字提示编码器都会将其转化为与图像特征空间对齐的向量表示。3.掩码解码器Mask Decoder相当于 SAM 的“画笔”。它将图像特征和提示特征融合在一起通过类似 Transformer 的双向注意力机制快速预测并输出最终的分割掩码。得益于这种设计SAM 在处理提示时极其高效。在预计算图像特征后它能在几十毫秒内对用户的点击或画框做出实时响应。三、 解决“歧义”输出多个有效掩码在实际交互中提示往往是模糊的。例如你在一张照片上点了一下某人的“衬衫”模型可能会困惑你究竟是想分割“衬衫”还是“穿着衬衫的人”为了解决这种歧义SAM 在训练时就被要求具备处理模糊提示的能力。当面对不确定的提示时SAM 不会只给出一个平均化的结果而是会同时输出多个不同且都合理的掩码例如整件衬衫、衬衫的某个局部、整个人体并给出每个掩码的置信度分数。用户或下游系统可以根据置信度选择最合适的结果。四、 终极武器数据引擎与 SA-1B 数据集SAM 之所以能“分割一切”离不开其背后庞大的数据支撑。Meta 构建了迄今为止规模最大的分割数据集 SA-1B包含 1100 万张图像和超过 10 亿个掩码。这个海量数据集并非纯靠人工标注而是通过一个高效的“数据收集循环数据引擎”实现的1.用少量数据训练出一个初始模型。2.用这个模型去辅助人工标注或者自动批量生成掩码。3.人工修正模型生成的掩码得到更高质量的数据。4.用更多、更好的数据重新训练模型。如此循环往复模型越来越强数据集也呈螺旋式增长。正是这种“数据为中心”的理念赋予了 SAM 惊人的泛化能力。总结SAM 的出现标志着计算机视觉从“为特定任务定制模型”迈向了“使用通用基础模型”的新范式。它通过“提示工程”实现了人机交互的灵活性通过“三大核心模块”保证了推理的高效性并通过“数据引擎”构建了强大的泛化底座。未来无论是医学影像诊断、自动驾驶还是日常的图像编辑SAM 都有望成为不可或缺的基础工具。