SAM 图像分割实操手册:3 分钟拿到物体掩码 SAM 图像分割实操手册3 分钟拿到物体掩码【免费下载链接】segment-anythingThe repository provides code for running inference with the SegmentAnything Model (SAM), links for downloading the trained model checkpoints, and example notebooks that show how to use the model.项目地址: https://gitcode.com/GitHub_Trending/se/segment-anything传统工作流里每做一个新分割任务都要先收集数据、人工标注上千张掩码、再训练专用模型。Segment Anything ModelSAM把这条链路压缩了给几个点提示就能直接产出高质量物体掩码训练集覆盖 1100 万张图像、11 亿个掩码。本文讲清它的机制、跑通方式和模型选型。它是怎么工作的整条流水线是一次计算、多次复用的设计分三段图像编码器输入缩放到长边 1024 后经 ViT 主干产出 256 维图像嵌入这是全模型最耗时的部分且每张图只算一次提示编码器把点、框、粗掩码等提示转成同维向量再与图像嵌入拼接掩码解码器一次输出 3 个候选掩码并附带各自的质量分数图像嵌入被缓存后同一张图反复交互提示都不用重新编码——这就是交互式工具里 SAM 能保持实时感的基础。核心能力拆解点、框提示交互分割单个点提示会返回粒度不同的 3 个掩码从完整物体到局部部件配合背景点和框提示可以反复修正。下例用框点组合SAM 只切出了车轮而没有带上车身。多种提示的组合用法参考仓库自带的 notebooks/predictor_example.ipynb。整图自动掩码生成不想手动提示时SamAutomaticMaskGenerator会在全图铺设 32×32 点网格共 1024 个点跑一遍再用预测 IoU阈值 0.88和稳定性分数0.95自动剔除低质与重复掩码。输出是字典列表每条带 mask、bbox、area、stability_score 等字段可直接进标注工作流。掩码解码器跑在浏览器里掩码解码器只有 2 层 transformer是全部模块里最轻的一个可以导出 ONNX 后经 WebAssembly 在浏览器中运行。仓库自带一个 React 演示开启多线程后移动鼠标掩码实时刷新全程不依赖 GPU 和后端。浏览器端部署的完整步骤写在 demo/README.md。3 分钟跑通安装与点提示分割 环境要求 Python ≥ 3.8、PyTorch ≥ 1.7强烈建议带 CUDA。pip install githttps://gitcode.com/GitHub_Trending/se/segment-anything.git pip install opencv-python matplotlibimport numpy as np from segment_anything import SamPredictor, sam_model_registry sam sam_model_registryvit_b predictor SamPredictor(sam) predictor.set_image(image) # HWC uint8RGB masks, scores, logits predictor.predict( point_coordsnp.array([[100, 200]]), point_labelsnp.array([1]), # 1 前景0 背景 )需要整图生成时换自动版即可from segment_anything import SamAutomaticMaskGenerator generator SamAutomaticMaskGenerator(sam, points_per_side32) masks generator.generate(image) # list[dict]mask/bbox/area/stability_score权重 checkpoint 需单独下载一次之后按本地路径引用。模型版本与关键参数怎么选三个版本只有 ViT 主干规模不同定义见 segment_anything/build_sam.py提示编码器和掩码解码器完全一致版本编码器配置适合场景vit_h默认嵌入 1280 / 32 层批量标注质量优先vit_l嵌入 1024 / 24 层速度与质量取中vit_b嵌入 768 / 12 层显存紧张、实时交互调参先看这三个multimask_output单点提示保留默认 True拿 3 个候选按 scores 选优框等无歧义提示可关掉points_per_side自动模式点网格密度调高更细但耗时按平方增长pred_iou_thresh/stability_score_thresh调低多留候选掩码调高减少重复适合谁、不适合谁最适合两类场景完全没有训练数据的新领域工业质检、医学影像预标注做零样本掩码提取以及在交互式编辑工具里搭点选即所得的体验。若你需要每个掩码都带精确类别语义它就不合适——SAM 能分出物体但分不出这是什么类别的物体。已知局限输出不含类别信息语义分割需另接检测或分类模块vit_h在纯 CPU 上推理也明显偏慢。需要开箱即用的零样本图像分割底座SAM 是目前绕不开的默认选项想深入自动生成的参数行为从仓库里的两个示例 notebook 读起最快。【免费下载链接】segment-anythingThe repository provides code for running inference with the SegmentAnything Model (SAM), links for downloading the trained model checkpoints, and example notebooks that show how to use the model.项目地址: https://gitcode.com/GitHub_Trending/se/segment-anything创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考