【視覺基礎模型-SAM系列-2】SAM2: Segment Anything in Images and Videos

論文鏈接:SAM 2: Segment Anything in Images and Videos

代碼鏈接:https://github.com/facebookresearch/sam2?tab=readme-ov-file

作者:Nikhila Ravi, Valentin Gabeur, Yuan-Ting Hu, Ronghang Hu, Chaitanya Ryali, Tengyu Ma, Haitham Khedr, Roman R?dle, Chloe Rolland, Laura Gustafson, Eric Mintun, Junting Pan, Kalyan Vasudev Alwala, Nicolas Carion, Chao-Yuan Wu, Ross Girshick, Piotr Dollár, Christoph Feichtenhofer

發表單位:Meta AI Research, FAIR

會議/期刊:Arxiv 2024年10月

相關系列:

【視覺基礎模型-SAM系列-1】Segment Anything-CSDN博客文章瀏覽閱讀335次,點贊6次,收藏13次。自然語言處理(NLP)領域的基礎模型(如GPT、BERT)通過海量文本訓練和prompt方式,展現出強大的零樣本、少樣本泛化能力。相比之下,計算機視覺領域中的基礎模型發展相對滯后,尤其在圖像分割任務中,尚缺乏類似“預訓練+提示”的通用方法。 https://blog.csdn.net/cjy_colorful0806/article/details/147764385?fromshare=blogdetail&sharetype=blogdetail&sharerId=147764385&sharerefer=PC&sharesource=cjy_colorful0806&sharefrom=from_link

【視覺基礎模型-SAM系列-3】Grounded SAM: Assembling Open-World Models for Diverse Visual Tasks-CSDN博客文章瀏覽閱讀4次。ICCV 2023【視覺基礎模型-SAM系列-1】Segment Anything-CSDN博客自然語言處理(NLP)領域的基礎模型(如GPT、BERT)通過海量文本訓練和prompt方式,展現出強大的零樣本、少樣本泛化能力。相比之下,計算機視覺領域中的基礎模型發展相對滯后,尤其在圖像分割任務中,尚缺乏類似“預訓練+提示”的通用方法。【視覺基礎模型-SAM系列-2】SAM2: Segment Anything in Images and Videos-CSDN博客。 https://blog.csdn.net/cjy_colorful0806/article/details/147774458?fromshare=blogdetail&sharetype=blogdetail&sharerId=147774458&sharerefer=PC&sharesource=cjy_colorful0806&sharefrom=from_link

一、研究背景

盡管前作SAM在圖像分割任務上有了很好的效果,但是仍然無法處理現實世界中大量存在的視頻數據。視頻分割面臨比圖像更復雜的問題,比如目標可能因運動、遮擋、形變、光照等不斷變化;視頻分辨率低、幀數多,處理成本高;需要跨時間建模,單幀分割能力不足。

任務定義:Promptable Visual Segmentation,即在任意幀通過點、框、mask等提示進行目標分割,并可跨幀傳播(形成“masklet”);

模型設計:引入流式記憶機制的 transformer 架構,支持跨幀記憶與交互;

數據引擎:構建全球最大的開放視頻分割數據集 SA-V,包括 50.9K 視頻與 35.5M mask。

因此,作者提出新的目標:構建一個支持圖像與視頻統一提示分割任務的視覺基礎模型,即 SAM2。

和SAM一樣的定義風格

二、整體框架

SAM2 的核心由三部分構成:

  1. 任務定義:Promptable Visual Segmentation(PVS),即在任意幀通過點、框、mask等提示進行目標分割,并可跨幀傳播(形成“masklet”);

  2. 模型設計:引入流式記憶機制的 transformer 架構,支持跨幀記憶與交互;

  3. 數據支撐:構建全球最大的開放視頻分割數據集 SA-V,包括 50.9K 視頻與 35.5M mask。

三、核心方法

3.1 模型結構

Promptable Visual Segmentation:擴展 SAM 在圖像上的點擊/框提示分割到視頻中,模型可以在任意幀接收提示(點/框/mask);接著自動生成該目標在全視頻中的掩碼序列(稱為 masklet);用戶可隨時補充提示以修正掩碼,實現“多輪交互式視頻分割”。

SAM2模型框架

圖像編碼器:采用MAE預訓練的Hiera模型(Meta同期工作,SAM用的是普通的ViT),采用FPN多尺度提取高分辨率特征(stride 4、8、16、32);流式處理視頻幀,每幀僅需前向一次。

Mask Decoder:雙向 Transformer 解碼器堆疊組成,對于每一幀,解碼器輸入當前幀特征 + 歷史記憶 + 當前提示;輸出多個掩碼與其 IoU 分數(支持提示歧義);引入可見性預測頭,支持“當前幀是否包含目標”的輸出。

記憶機制:記憶編碼器融合當前幀圖像特征與掩碼預測,構造記憶;Memory Bank,保存 N 幀最近記憶 + M 幀提示記憶(FIFO 隊列);存儲空間特征與目標語義向量(object pointer);采用位置嵌入,建模短期時間運動信息。Memory Attention,當前幀自注意力 + 與記憶幀做交叉注意力,采用FlashAttention 2。

提示編碼器:完全繼承SAM的工作。支持點、框、掩碼;稀疏提示通過位置編碼+類型嵌入;掩碼提示通過卷積編碼后加到圖像特征上。

3.2 數據集構造

SAM2 使用 “Model-in-the-loop” 數據引擎創建了新的 SA-V 數據集,流程分三階段:

階段1:SAM逐幀輔助

使用原始 SAM 對每幀單獨分割;幀率 6FPS,使用畫筆/橡皮(PS)精修;每幀需 37.8s,收集 16K masklets。

階段2:SAM + SAM2 Mask

SAM2(僅接受 mask)進行掩碼傳播;可反復修改并重新傳播;速度提升至 7.4s/frame,5.1×提速。

階段3:SAM2 完整交互

使用具有記憶與點交互能力的 SAM2;僅需偶爾點擊修正;提速至 4.5s/frame,8.4×提速;共采集 197K masklets。

最終構建 SA-V 數據集:共計 50.9K 視頻,642.6K masklets(含自動掩碼)比已有最大 VOS 數據集多 53× mask 數量;覆蓋完整目標與細粒度部件;覆蓋不同場景、目標大小、遮擋變化等挑戰。

四、總結

SAM2不輸出全圖所有 instance(如 Mask R-CNN 那樣),但可以通過點擊/框選擇“某個目標”,只分割這個實例,并跨幀追蹤。

給出舌頭的掩碼,其中綠點是正面,紅點是負面提示;自動傳播到后續幀(即只跟蹤這一實例);支持點擊糾正(如錯過了某一幀的舌頭)。

SAM2 用的是一種transformer + memory bank 的記憶機制:

每幀提取 image feature;用戶點擊提示指明要追蹤哪個目標;模型構建一個“object token”(即目標語義表示);后續幀通過注意力在記憶幀與當前幀之間交互 → 輸出掩碼;若目標不在,模型能預測其“可見性為0”;

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/79802.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/79802.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/79802.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

OpenShift AI - 模型注冊管理

《OpenShift / RHEL / DevSecOps 匯總目錄》 說明:本文已經在 OpenShift 4.18 OpenShift AI 2.19 的環境中驗證 文章目錄 啟用模型注冊管理功能安裝管理數據庫啟用模型注冊功能 注冊模型部署模型歸檔模型歸檔模型和模型版本恢復歸檔模型 模型注冊表訪問權限管理參考…

【背包dp----01背包】例題三------(標準的01背包+變種01背包1【恰好裝滿背包體積 產生的 最大價值】)

【模板】01背包 題目鏈接 題目描述 : 輸入描述: 輸出描述: 示例1 輸入 3 5 2 10 4 5 1 4輸出 14 9說明 裝第一個和第三個物品時總價值最大,但是裝第二個和第三個物品可以使得背包恰好裝滿且總價值最大。 示例2 輸入 3 8 12 6 11 8 6 8輸出 8 0說明 裝第三個物…

Node.js 的 child_process 模塊詳解

Node.js 的 child_process 模塊提供了創建子進程的能力,使 Node.js 應用能夠執行系統命令、運行其他程序或腳本。這個模塊非常強大,可以幫助我們實現很多復雜的功能。 1. exec - 執行 shell 命令 exec 方法用于執行 shell 命令,并緩沖任何產生的輸出。 特點 創建 shell 來…

進程與線程詳細介紹

目錄 一 進程概念 二 進程的組成 2.1 PCB 2.2 數據段 2.3 程序段 三 進程的五大特點 四 進程的創建與銷毀 五 線程概念 六 線程特征 七 進程與線程的區別與聯系 區別 聯系 一 進程概念 進程是程序的一次執行過程,是操作系統進行資源分配和調度的基本單位…

如何在服務器后臺運行Python腳本,并配置虛擬環境與GPU支持

使用Conda虛擬環境在服務器后臺運行Python腳本,并檢查GPU分配 在服務器開發環境中,我們需要確保Python腳本運行在指定的Conda虛擬環境中,并且確認是否正確分配了GPU資源。本文將通過一個完整的start.sh腳本,完成以下功能&#xff…

前端取經路——工程化渡劫:八戒的構建之道

大家好,我是老十三,一名前端開發工程師。前端工程化就像八戒的釘耙,看似簡單卻能降妖除魔。在本文中,我將帶你探索前端工程化的九大難題,從模塊化組織到CI/CD流程,從代碼規范到自動化測試,揭示這些工具背后的核心原理。無論你是初學者還是資深工程師,這些構建之道都能幫…

Ubuntu 安裝 Keepalived

Keepalived 是什么 Keepalived 是一個用于實現高可用性(High Availability, HA)的服務,是一款基于 VRRP 協議的高可用軟件,常用于主備切換和虛擬IP漂移,在服務故障時自動實現故障轉移。 Keepalived 的核心功能 功能說…

DHCP理解

文章目錄 DHCP理解DHCP的核心作用DHCP默認端口DHCP的工作原理(4個步驟)圖示說明(含中繼代理)DHCP Discover(客戶端發現階段)DHCP Offer(服務器提供階段)DHCP Request(客戶…

云計算-容器云-部署CICD-jenkins連接gitlab

安裝 Jenkins 將Jenkins部署到default命名空間下。要求完成離線插件的安裝,設置Jenkins的登錄信息和授權策略。 上傳BlueOcean.tar.gz包 [root@k8s-master-node1 ~]#tar -zxvf BlueOcean.tar.gz [root@k8s-master-node1 ~]#cd BlueOcean/images/ vim /etc/docker/daemon.json…

AI 大模型新浪潮:從 DeepSeek-Prover 到 Qwen3,再到 DeepSeek-R2,邁向自動推理的新時代20250507

🧠 AI 大模型新浪潮:從 DeepSeek-Prover 到 Qwen3,再到 DeepSeek-R2,邁向自動推理的新時代 🚀 引言:大模型,不止是語言處理器,而是思維建構者 在 2025 年春天,我們見證了…

觀察者模式(Observer Pattern)詳解

文章目錄 1. 什么是觀察者模式?2. 為什么需要觀察者模式?3. 觀察者模式的核心概念4. 觀察者模式的結構5. 觀察者模式的基本實現簡單的氣象站示例6. 觀察者模式的進階實現推模型 vs 拉模型6.1 推模型(Push Model)6.2 拉模型(Pull Model)7. 觀察者模式的復雜實現7.1 在線商…

前端代碼規范詳細配置

以下是現代前端項目的完整代碼規范配置方案,涵蓋主流技術棧和自動化工具鏈配置: 一、基礎工程配置 1. 項目結構規范 project/ ├── src/ │ ├── assets/ # 靜態資源 │ ├── components/ # 通用組件 │ ├── layouts/ …

Missashe考研日記-day34

Missashe考研日記-day34 1 專業課408 學習時間:3h學習內容: 今天是學習I/O管理第二小節的內容,聽了課也做了題,這是操作系統倒數第二節知識了,還差最后一節就完結了。知識點回顧: 1.I/O核心子系統&#x…

Milvus 向量數據庫詳解與實踐指南

一、Milvus 核心介紹 1. 什么是 Milvus? Milvus 是一款開源、高性能、可擴展的向量數據庫,專門為海量向量數據的存儲、索引和檢索而設計。它支持近似最近鄰搜索(ANN),適用于圖像檢索、自然語言處理(NLP&am…

算力經濟模型研究:從云計算定價到去中心化算力市場設計

引言:算力商品化的雙重革命 在H800 GPU集群的算力供給能力突破2.3 EFLOPS的今天,算力定價機制正經歷從"資源租賃"到"動態市場"的范式轉變。傳統云計算定價模型(如AWS按需實例)的靜態價格機制已難以適應大模型…

[D1,2] 貪心刷題

文章目錄 擺動序列最大子數組合買賣股票跳躍游戲跳躍2 擺動序列 不像是貪心,只要抓住擺動這個點,前一個上升,那下一個就要下降,記錄上一次的狀態為1的話,那下一次就要更新為-1,如果上一次為1,這…

Spring Boot操作MongoDB的完整示例大全

以下是基于Spring Boot操作MongoDB的完整示例大全&#xff0c;涵蓋增刪改查、聚合查詢、索引、事務等核心功能&#xff1a; 一、基礎CRUD操作 1. 環境配置 依賴配置&#xff08;pom.xml&#xff09; <dependency><groupId>org.springframework.boot</groupId…

【實戰教程】零基礎搭建DeepSeek大模型聊天系統 - Spring Boot+React完整開發指南

&#x1f525; 本文詳細講解如何從零搭建一個完整的DeepSeek AI對話系統&#xff0c;包括Spring Boot后端和React前端&#xff0c;適合AI開發入門者快速上手。即使你是編程萌新&#xff0c;也能輕松搭建自己的AI助手&#xff01; &#x1f4da;博主匠心之作&#xff0c;強推專欄…

Linux系統基本指令和知識指南

一、Linux系統簡介 Linux是一種自由和開放源代碼的類UNIX操作系統&#xff0c;由林納斯托瓦茲在1991年首次發布。它以穩定性、安全性和靈活性著稱&#xff0c;廣泛應用于服務器、嵌入式系統和個人計算機。 Linux主要特點&#xff1a; 開源免費 多用戶、多任務 良好的安全性…

【計算機視覺】OpenCV實戰項目:Long-Exposure:基于深度學習的長時間曝光合成技術

Long-Exposure&#xff1a;基于深度學習的長時間曝光合成技術 項目概述與技術背景項目核心功能技術原理 環境配置與安裝硬件要求建議詳細安裝步驟可選組件安裝 實戰應用指南1. 基礎使用&#xff1a;視頻轉長曝光2. 高級模式&#xff1a;自定義光軌合成3. 批量處理模式 技術實現…