技术深度解析
SAM的核心创新在于其架构设计和以数据为中心的方法。该模型采用了一个精心设计的流程,将计算密集型的图像理解与快速、交互式的掩码生成分离开来。
三支柱架构:
1. 图像编码器: 一个使用掩码自编码(MAE)预训练的Vision Transformer(ViT),通常是拥有6.32亿参数的ViT-H/16模型。这个主干网络一次性处理整张图像,生成一个密集的高维嵌入(64x64特征图)。这是计算瓶颈所在,但每张图像仅需执行一次,与提示数量无关。
2. 提示编码器: 一个轻量级网络,用于编码各种类型的用户输入(提示)。对于稀疏提示(点、框),它使用位置编码结合针对不同提示类型(例如,前景/背景点)学习到的嵌入。对于密集提示(掩码),它使用卷积嵌入。一个关键的设计选择是包含一个“模糊”提示状态,允许模型在单个点存在歧义时输出多个有效掩码(例如,衬衫上的一个点可能意味着衬衫、人或纽扣)。
3. 掩码解码器: 一个改进的Transformer解码器,能高效地将图像嵌入和提示嵌入映射到输出掩码。它首先根据提示计算一个动态的掩码预测头,然后对掩码进行上采样,并使用卷积网络进行细化。关键在于,其设计运行时间在数十毫秒内,可实现实时交互。
训练方法同样至关重要。模型在SA-1B数据集上使用模拟交互过程进行训练。在每个训练步骤中,从数据集中选择一个掩码,从该掩码中随机模拟一个提示(如点或框),然后训练模型根据提示和图像重建掩码。这教会了模型提示与分割结果之间的关联。
性能与基准测试:
虽然SAM的零样本性能令人印象深刻,但将其与专用模型进行比较具有启发性。下表显示了其在经典分割基准测试上,采用零样本协议(即SAM未在目标数据集上微调)的性能。
| 模型 / 方法 | 训练数据 | COCO mIoU (零样本) | LVIS mAP (零样本) | 推理速度 (ms) |
|---|---|---|---|---|
| SAM (ViT-H) | SA-1B (10亿掩码) | 46.6 | 41.1 | ~50 |
| RITM (交互式) | COCO+LVIS+更多 | 48.2* | 42.5* | ~100* |
| Mask R-CNN (专用) | COCO | 37.9 | 31.5 | ~60 |
| *专用模型平均* | *任务特定* | *~55-60* | *~45-50* | *各异* |
*注:RITM是最先进的交互式模型;* 表示用户交互修正*后*的性能。** 表示在未训练过的数据集(LVIS)上评估时的性能,模拟零样本场景。*
数据要点: SAM的零样本性能非常接近经过用户修正后的专用交互式模型,并且在应用于从未见过的数据集时,显著优于专用模型(Mask R-CNN)。然而,它仍然落后于在特定目标数据集上专门训练和微调的模型。权衡是清晰的:SAM以略微牺牲峰值精度为代价,提供了无与伦比的灵活性和零样本能力,使其成为原型设计、处理多样化对象的应用或作为强大标注工具的理想选择。
除了核心的 `facebookresearch/segment-anything` 代码库,其生态系统已迅速扩展。值得注意的衍生项目包括 `MobileSAM`,它将ViT-H图像编码器蒸馏到TinyViT模型中,体积减小了60倍,编码速度提升了40倍,同时保留了大部分性能。`segment-anything-2` 代码库探索了下一代改进。`GroundingDINO` + `SAM` 组合(通常称为 `Grounded-SAM`)通过使用检测模型为SAM生成框提示,实现了文本提示分割,有效地闭环了从文本到掩码的能力。
关键参与者与案例研究
Meta AI无疑是SAM背后的先驱和主要推动者。由Alexander Kirillov、Eric Mintun等人领导的研究团队,执行了之前在NLP领域见过的经典“基础模型”策略:大规模数据整理、可扩展的模型架构以及开源发布以催化生态系统。他们的战略目标似乎是建立视觉理解的决定性基础设施层,这与Meta在元宇宙、AR/VR和内容审核方面的更广泛雄心相符。
然而,SAM已引发行业内的竞争反应并激励了新创业项目:
* NVIDIA: 在其 `Picasso` 生成式AI云服务和 `CV-CUDA` 计算机视觉库中利用了SAM,并为其硬件进行了优化。他们还将类似SAM的提示功能集成到用于3D内容创作的 `Omniverse` 平台中。
* 初创公司与工具: 数十家初创公司基于SAM进行构建。`Roboflow` 将SAM集成到其