任何移动段 (MobileSAM)
MobileSAM 论文现已在arXiv 上发布。
在 CPU 上运行MobileSAM 的演示可通过此演示链接访问。Mac i5 CPU 上的运行时间约为 3 秒。在Hugging Face 演示中,界面和性能较低的 CPU 导致响应速度较慢,但仍能有效运行。
MobileSAM 在Grounding-SAM 、AnyLabeling 和Segment Anything in 3D 等多个项目中实施。
MobileSAM 在不到一天的时间内,就能在单个 GPU 上使用 100k 数据集(原始图像的 1%)进行训练。训练代码将在未来公布。
可用型号、支持的任务和运行模式
本表介绍了可用模型及其特定的预训练权重、支持的任务以及与推理、验证、训练和导出等不同操作模式的兼容性,支持的模式用 ✅ 符号表示,不支持的模式用 ❌ 符号表示。
型号 | 预训练重量 | 支持的任务 | 推论 | 验证 | 培训 | 出口 |
---|---|---|---|---|---|---|
MobileSAM | mobile_sam.pt | 实例分割 | ✅ | ❌ | ❌ | ❌ |
从SAM 到MobileSAM
由于MobileSAM 保留了与原版SAM 相同的管道,因此我们纳入了原版的预处理、后处理和所有其他接口。因此,目前使用原版SAM 的用户只需花费很少的精力即可过渡到MobileSAM 。
MobileSAM 与最初的SAM 性能相当,并保留了相同的管道,只是在图像编码器上做了改动。具体来说,我们用较小的 Tiny-ViT 编码器(5M)取代了原来重量级的 ViT-H 编码器(632M)。在单 GPU 上,MobileSAM 每幅图像的运行时间约为 12ms:图像编码器为 8ms,掩码解码器为 4ms。
下表对基于 ViT 的图像编码器进行了比较:
图像编码器 | 原创SAM | MobileSAM |
---|---|---|
参数 | 611M | 5M |
速度 | 452ms | 8ms |
最初的SAM 和MobileSAM 都使用相同的提示引导掩码解码器:
掩码解码器 | 原创SAM | MobileSAM |
---|---|---|
参数 | 3.876M | 3.876M |
速度 | 4ms | 4ms |
以下是整个管道的比较:
整个管道( Enc+Dec) | 原创SAM | MobileSAM |
---|---|---|
参数 | 615M | 9.66M |
速度 | 456ms | 12ms |
MobileSAM 和最初的SAM 的性能都是以点和方框作为提示进行演示的。
MobileSAM 性能优越,与目前的FastSAM 相比,体积小约 5 倍,速度快约 7 倍。更多详细信息,请访问MobileSAM 项目页面。
测试MobileSAM Ultralytics
与最初的SAM 一样,我们在Ultralytics 中提供了直接的测试方法,包括点提示和方框提示两种模式。
模型下载
您可以在这里下载模型。
要点提示
示例
盒子提示
示例
我们已经实施了 MobileSAM
和 SAM
使用相同的应用程序接口。有关更多使用信息,请参阅 SAM 页码.
引文和致谢
如果您发现MobileSAM 对您的研究或开发工作有用,请考虑引用我们的论文: