ONNX 模型库
返回模型

说明文档


license: apache-2.0 tags:

  • image-segmentation
  • segment-anything
  • segment-anything-2
  • onnx
  • onnxruntime library_name: onnxruntime

Segment Anything 2 (SAM 2) — ONNX 模型

Meta Segment Anything Model 2 (SAM 2) 的 ONNX 导出版本,可使用 ONNX Runtime 在 CPU/GPU 上进行推理 — 运行时无需 PyTorch。

这些模型被 AnyLabeling 用于 AI 辅助图像标注,并由 samexporter 导出。

寻找 SAM 2.1? 请查看 vietanhdev/segment-anything-2.1-onnx-models — 这是一个精度更高的改进版本。

可用模型

文件 变体 说明
sam2_hiera_tiny.zip SAM 2 Hiera-Tiny 最小、最快
sam2_hiera_small.zip SAM 2 Hiera-Small 平衡性好
sam2_hiera_base_plus.zip SAM 2 Hiera-Base+ 更高精度
sam2_hiera_large.zip SAM 2 Hiera-Large 精度最高

每个 zip 文件包含两个 ONNX 文件:一个编码器(每张图像运行一次)和一个解码器(针对每个提示交互式运行)。

提示类型

  • (+point / -point):点击以包含/排除区域
  • 矩形:在目标对象周围绘制边界框

配合 AnyLabeling 使用(推荐)

AnyLabeling 是一款桌面标注工具,内置模型管理器可自动下载、缓存和运行这些模型 — 无需编写代码。

  1. 安装:pip install anylabeling
  2. 启动:anylabeling
  3. 点击 Brain 按钮 → 从下拉菜单中选择一个 Segment Anything 2 模型
  4. 使用点或矩形提示来分割对象

AnyLabeling 演示

使用 ONNX Runtime 编程调用

import urllib.request, zipfile
url = "https://huggingface.co/vietanhdev/segment-anything-2-onnx-models/resolve/main/sam2_hiera_tiny.zip"
urllib.request.urlretrieve(url, "sam2_hiera_tiny.zip")
with zipfile.ZipFile("sam2_hiera_tiny.zip") as z:
    z.extractall("sam2_hiera_tiny")

然后使用 samexporter 的推理模块:

pip install samexporter
python -m samexporter.inference \
    --encoder_model sam2_hiera_tiny/sam2_hiera_tiny.encoder.onnx \
    --decoder_model sam2_hiera_tiny/sam2_hiera_tiny.decoder.onnx \
    --image photo.jpg \
    --prompt prompt.json \
    --output result.png \
    --sam_variant sam2

从源码重新导出

使用 samexporter 重新导出或自定义模型:

pip install samexporter
pip install git+https://github.com/facebookresearch/segment-anything-2.git

# 下载 SAM 2 检查点
cd original_models && bash download_sam2.sh && cd ..

# 导出 Tiny 变体
python -m samexporter.export_sam2 \
    --checkpoint original_models/sam2_hiera_tiny.pt \
    --output_encoder output_models/sam2_hiera_tiny.encoder.onnx \
    --output_decoder output_models/sam2_hiera_tiny.decoder.onnx \
    --model_type sam2_hiera_tiny

# 或者一次性转换所有 SAM 2 变体:
bash convert_all_meta_sam2.sh

相关仓库

仓库 描述
vietanhdev/samexporter 导出脚本、推理代码、转换工具
vietanhdev/anylabeling 基于这些模型的桌面标注应用
vietanhdev/segment-anything-2.1-onnx-models 改进的 SAM 2.1 ONNX 模型
facebookresearch/segment-anything-2 Meta 原版 SAM 2

许可证

ONNX 模型源自 Meta 的 SAM 2,基于 Apache 2.0 许可证发布。 导出代码属于 samexporter 的一部分,基于 MIT 许可证发布。

vietanhdev/segment-anything-2-onnx-models

作者 vietanhdev

image-segmentation onnxruntime
↓ 0 ♥ 14

创建时间: 2024-08-01 17:23:48+00:00

更新时间: 2026-02-21 15:07:52+00:00

在 Hugging Face 上查看

文件 (15)

.gitattributes
README.md
sam2_hiera_base_plus.decoder.onnx ONNX
sam2_hiera_base_plus.encoder.onnx ONNX
sam2_hiera_base_plus.zip
sam2_hiera_large.decoder.onnx ONNX
sam2_hiera_large.encoder.onnx ONNX
sam2_hiera_large.zip
sam2_hiera_small.decoder.onnx ONNX
sam2_hiera_small.encoder.onnx ONNX
sam2_hiera_small.zip
sam2_hiera_tiny.decoder.onnx ONNX
sam2_hiera_tiny.encoder.onnx ONNX
sam2_hiera_tiny.zip
zip_models.py