0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于SAM實現(xiàn)自動分割遙感圖像實例

3D視覺工坊 ? 來源:AI Around ? 2023-07-06 09:08 ? 次閱讀

1. 背景

借助大量的訓(xùn)練數(shù)據(jù)(SA-1B),Meta AI Research 提出的基礎(chǔ) "Segment Anything Model"(SAM)表現(xiàn)出了顯著的泛化和零樣本能力。盡管如此,SAM 表現(xiàn)為一種類別無關(guān)的實例分割方法,嚴重依賴于先驗的手動指導(dǎo),包括點、框和粗略掩模。此外,SAM 在遙感圖像分割任務(wù)上的性能尚未得到充分探索和證明。

本文考慮基于 SAM 基礎(chǔ)模型設(shè)計一種自動化實例分割方法,該方法將語義類別信息納入其中,用于遙感圖像。受prompt learning啟發(fā),本文通過學(xué)習(xí)生成合適的Prompt來作為 SAM 的輸入。這使得 SAM 能夠為遙感圖像生成語義可辨別的分割結(jié)果,該方法稱之為 RSPrompter。

本文還根據(jù) SAM 社區(qū)的最新發(fā)展提出了幾個基于SAM的實例分割衍生方法,并將它們的性能與 RSPrompter 進行了比較。在 WHU Building、NWPU VHR-10 和 SSDD 數(shù)據(jù)集上進行的廣泛實驗結(jié)果驗證了所提出的方法的有效性。

由于在超過十億個掩模上進行訓(xùn)練,SAM 可以在不需要額外訓(xùn)練的情況下分割任何圖像中的任何對象,展示了其在處理各種圖像和對象時顯著的泛化能力。這為智能圖像分析和理解創(chuàng)建了新的可能性和途徑。然而,由于其交互式框架,SAM 需要提供先驗的Prompt,例如點、框或掩模來表現(xiàn)為一種類別無關(guān)分割方法, 如下圖(a)所示。顯然,這些限制使 SAM 不適用于遙感圖像的全自動解譯。

8378b8d6-1b91-11ee-962d-dac502259ad0.jpg

(a)顯示了基于點、基于框、SAM 的“全圖”模式(對圖像中的所有對象進行分割)以及 RSPrompter 的實例分割結(jié)果。SAM 執(zhí)行類別無關(guān)的實例分割,依賴于手動提供的先驗prompt。(b)展示了來自不同位置的點prompt、基于兩個點的prompt和基于框的prompt的分割結(jié)果。prompt的類型、位置和數(shù)量嚴重影響 SAM 的結(jié)果。

此外,我們觀察到遙感圖像場景中的復(fù)雜背景干擾和缺乏明確定義的物體邊緣對 SAM 的分割能力構(gòu)成重大挑戰(zhàn)。SAM 很難實現(xiàn)對遙感圖像目標(biāo)的完整分割,其結(jié)果嚴重依賴于prompt類型、位置和數(shù)量。在大多數(shù)情況下,精細的手動prompt對于實現(xiàn)所需效果至關(guān)重要,如上圖(b)所示。這表明 SAM 在應(yīng)用于遙感圖像的實例分割時存在相當(dāng)大的限制。

為了增強基礎(chǔ)模型的遙感圖像實例分割能力,本文提出了RSPrompter,用于學(xué)習(xí)如何生成可以增強 SAM 框架能力的prompt。本文的動機在于 SAM 框架,其中每個prompt組可以通過掩碼解碼器獲取實例化掩碼。想象一下,如果我們能夠自動生成多個與類別相關(guān)的prompt,SAM 的解碼器就能夠產(chǎn)生帶有類別標(biāo)簽的多個實例級掩碼。

然而,這個過程存在兩個主要挑戰(zhàn):(i)類別相關(guān)的prompt從哪里來?(ii)應(yīng)選擇哪種類型的prompt作為掩膜解碼器的輸入? 由于 SAM 是一種類別無關(guān)的分割模型,其編碼器的深度特征圖無法包含豐富的語義類別信息。為了克服這一障礙,我們提取編碼器的中間層特征以形成Prompter的輸入,該輸入生成包含語義類別信息的prompt。其次,SAM 的prompt包括點(前景/背景點)、框或掩膜??紤]到生成點坐標(biāo)需要在原始 SAM prompt的流形中搜索,這嚴重限制了prompt器的優(yōu)化空間,我們進一步放寬了prompt的表示,并直接生成prompt嵌入,可以理解為點或框的嵌入,而不是原始坐標(biāo)。

這種設(shè)計還避免了從高維到低維再返回到高維特征的梯度流的障礙,即從高維圖像特征到點坐標(biāo),然后再到位置編碼。 本文還對 SAM 模型社區(qū)中當(dāng)前進展和衍生方法進行了全面的調(diào)查和總結(jié)。這些主要包括基于 SAM 骨干網(wǎng)絡(luò)的方法、將 SAM 與分類器集成的方法和將 SAM 與檢測器結(jié)合的技術(shù)。

2. 方法

2.1 SAM模型

SAM 是一個交互式分割框架,它根據(jù)給定的prompt(如前景/背景點、邊界框或掩碼)生成分割結(jié)果。它包含三個主要組件:圖像編碼器、prompt編碼器和掩膜解碼器。SAM 使用基于 Vision Transformer (ViT)的預(yù)訓(xùn)練掩碼自編碼器將圖像處理成中間特征,并將先前的prompt編碼為嵌入Tokens。隨后,掩膜解碼器中的交叉注意力機制促進了圖像特征和prompt嵌入之間的交互,最終產(chǎn)生掩膜輸出。該過程可以表達為:

83934160-1b91-11ee-962d-dac502259ad0.png

2.2 SAM 的實例分割擴展

除了本文中提出的 RSPrompter 之外,還介紹了其他三種基于 SAM 的實例分割方法進行比較,如下圖(a)、(b) 和 (c) 所示。本文評估了它們在遙感圖像實例分割任務(wù)中的有效性并啟發(fā)未來的研究。

這些方法包括:外部實例分割頭、分類掩碼類別和使用外部檢測器,分別稱為SAM-seg、SAM-cls 和 SAM-det。

83a353a2-1b91-11ee-962d-dac502259ad0.jpg

2.2.1 SAM-seg

SAM-seg利用了 SAM 圖像編碼器存在的知識,同時保持編碼器不變。它從編碼器中提取中間層特征,使用卷積塊進行特征融合,然后使用現(xiàn)有的實例分割(Mask R-CNN和 Mask2Former)執(zhí)行實例分割任務(wù)。這個過程可以表示為:

83b7a6f4-1b91-11ee-962d-dac502259ad0.png

2.2.2 SAM-cls

在 SAM-cls 中,首先利用 SAM 的“全圖像”模式來分割圖像中的所有潛在實例目標(biāo)。其實現(xiàn)方法是在整個圖像中均勻分布點并將每個點視為實例的prompt輸入。在獲得圖像中所有實例掩碼后,可以使用分類器為每個掩碼分配標(biāo)簽。這個過程可以描述如下:

83cea1d8-1b91-11ee-962d-dac502259ad0.png

為了便捷,本文直接使用輕量級的 ResNet18 來標(biāo)記掩碼。其次,可以利用預(yù)訓(xùn)練的 CLIP 模型,使 SAM-cls 能夠在不進行額外訓(xùn)練的情況下運行以達到零樣本的效果

2.2.3 SAM-det

SAM-det 方法更加簡單直接,已經(jīng)被社區(qū)廣泛采用。首先訓(xùn)練一個目標(biāo)檢測器來識別圖像中所需的目標(biāo),然后將檢測到的邊界框作為prompt輸入到 SAM 中。整個過程可以描述為:

83e46ab8-1b91-11ee-962d-dac502259ad0.png

2.3 RSPrompter

2.3.1 概述

上圖(d)展示了所提出的RSPrompter的結(jié)構(gòu),我們的目標(biāo)是訓(xùn)練一個面向SAM的prompter,可以處理測試集中的任何圖像,同時定位對象,推斷它們的語義類別和實例掩碼,可以表示為以下公式:

83fddfc0-1b91-11ee-962d-dac502259ad0.png

圖像通過凍結(jié)的SAM圖像編碼器處理,生成Fimg和多個中間特征圖Fi。Fimg用于SAM解碼器獲得prompt-guided掩碼,而Fi則被一個高效的特征聚合和prompt生成器逐步處理,以獲取多組prompt和相應(yīng)的語義類別。為設(shè)計prompt生成器,本文采用兩種不同的結(jié)構(gòu),即錨點式和查詢式。

2.3.2特征聚合器

SAM是基于prompt的類別無關(guān)的分割模型,為了在不增加prompter計算復(fù)雜度的情況下獲得語義相關(guān)且具有區(qū)分性的特征,本文引入了一個輕量級的特征聚合模塊。如下圖所示,該模塊學(xué)習(xí)從SAM ViT骨干網(wǎng)絡(luò)的各種中間特征層中表示語義特征,可以遞歸地描述為:

840fa160-1b91-11ee-962d-dac502259ad0.png842bb9a4-1b91-11ee-962d-dac502259ad0.png

2.3.3 錨點式Prompter 架構(gòu):

首先使用基于錨點的區(qū)域提議網(wǎng)絡(luò)(RPN)生成候選目標(biāo)框。接下來,通過RoI池化獲取來自位置編碼過的特征圖的單個對象的視覺特征表示。從視覺特征中派生出三個感知頭:語義頭、定位頭和prompt頭。語義頭確定特定目標(biāo)類別,而定位頭在生成的prompt表示和目標(biāo)實例掩碼之間建立匹配準(zhǔn)則,即基于定位的貪心匹配。prompt頭生成SAM掩碼解碼器所需的prompt嵌入。整個過程如下圖所示,可以用以下公式表示:

8452b4c8-1b91-11ee-962d-dac502259ad0.png846cd510-1b91-11ee-962d-dac502259ad0.png

損失:該模型的損失包括RPN網(wǎng)絡(luò)的二元分類損失和定位損失,語義頭的分類損失,定位頭的回歸損失以及凍結(jié)的SAM掩碼解碼器的分割損失??倱p失可以表示為:

84a59eea-1b91-11ee-962d-dac502259ad0.png

2.3.4查詢式Prompter 架構(gòu):

錨點式Prompter相對復(fù)雜,涉及到利用邊界框信息進行掩碼匹配和監(jiān)督訓(xùn)練。為了簡化這個過程,提出了一個基于查詢的Prompter,它以最優(yōu)傳輸為基礎(chǔ)。查詢式Prompter主要由輕型Transformer編碼器和解碼器組成。編碼器用于從圖像中提取高級語義特征,而解碼器則通過與圖像特征進行attention交互,將預(yù)設(shè)的可學(xué)習(xí)查詢轉(zhuǎn)換為SAM所需的prompt嵌入。整個過程如下圖所示,可以表示為:

84b9c0be-1b91-11ee-962d-dac502259ad0.png84cc5698-1b91-11ee-962d-dac502259ad0.png

損失:查詢式Prompter的訓(xùn)練過程主要涉及兩個關(guān)鍵步驟:(i)將由SAM掩碼解碼器解碼的掩碼與真實實例掩碼進行匹配;(ii)隨后使用匹配標(biāo)簽進行監(jiān)督訓(xùn)練。在執(zhí)行最優(yōu)傳輸匹配時,我們定義考慮預(yù)測的類別和掩碼的匹配成本,如下所示:

84ff9210-1b91-11ee-962d-dac502259ad0.png

一旦每個預(yù)測實例與其相應(yīng)的真實值配對,就可以應(yīng)用監(jiān)督項。這主要包括多類分類和二進制掩碼分類,如下所述:

8511b486-1b91-11ee-962d-dac502259ad0.png

3. 實驗

在本文中使用了三個公共的遙感實例分割數(shù)據(jù)集:WHU建筑提取數(shù)據(jù)集,NWPU VHR-10數(shù)據(jù)集和SSDD數(shù)據(jù)集。WHU數(shù)據(jù)集是單類建筑物目標(biāo)提取分割,NWPU VHR-10是多類目標(biāo)檢測分割,SSDD是SAR船只目標(biāo)檢測分割。使用 mAP 進行模型性能評價。

3.1 在WHU上的結(jié)果

85219ffe-1b91-11ee-962d-dac502259ad0.png85429c54-1b91-11ee-962d-dac502259ad0.jpg

3.2 在NWPU上的結(jié)果

8562e338-1b91-11ee-962d-dac502259ad0.png8597c422-1b91-11ee-962d-dac502259ad0.jpg

3.3 在SSDD上的結(jié)果

85d50e0e-1b91-11ee-962d-dac502259ad0.png8607c45c-1b91-11ee-962d-dac502259ad0.jpg

4. 總結(jié)

在本文中,我們介紹了RSPrompter,這是一種用于遙感圖像實例分割的prompt learning方法,利用了SAM基礎(chǔ)模型。RSPrompter的目標(biāo)是學(xué)習(xí)如何為SAM生成prompt輸入,使其能夠自動獲取語義實例級掩碼。相比之下,原始的SAM需要額外手動制作prompt,并且是一種類別無關(guān)的分割方法。RSPrompter的設(shè)計理念不局限于SAM模型,也可以應(yīng)用于其他基礎(chǔ)模型。

基于這一理念,我們設(shè)計了兩種具體的實現(xiàn)方案:基于預(yù)設(shè)錨點的RSPrompter-anchor和基于查詢和最優(yōu)傳輸匹配的RSPrompter-query。此外,我們還調(diào)查并提出了SAM社區(qū)中針對此任務(wù)的各種方法和變體,并將它們與我們的prompt learning方法進行了比較。通過消融實驗驗證了RSPrompter中每個組件的有效性。同時,三個公共遙感數(shù)據(jù)集的實驗結(jié)果表明,我們的方法優(yōu)于其他最先進的實例分割技術(shù),以及一些基于SAM的方法。




審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 解碼器
    +關(guān)注

    關(guān)注

    9

    文章

    1144

    瀏覽量

    40829
  • 編碼器
    +關(guān)注

    關(guān)注

    45

    文章

    3655

    瀏覽量

    134883
  • SAM
    SAM
    +關(guān)注

    關(guān)注

    0

    文章

    112

    瀏覽量

    33547
  • 圖像編碼
    +關(guān)注

    關(guān)注

    0

    文章

    26

    瀏覽量

    8344

原文標(biāo)題:RSPrompter:遙感圖像實例分割利器,基于SAM實現(xiàn)自動分割

文章出處:【微信號:3D視覺工坊,微信公眾號:3D視覺工坊】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    手把手教你使用LabVIEW實現(xiàn)Mask R-CNN圖像實例分割(含源碼)

    使用LabVIEW實現(xiàn)Mask R-CNN圖像實例分割
    的頭像 發(fā)表于 03-21 13:39 ?2388次閱讀
    手把手教你使用LabVIEW<b class='flag-5'>實現(xiàn)</b>Mask R-CNN<b class='flag-5'>圖像</b><b class='flag-5'>實例</b><b class='flag-5'>分割</b>(含源碼)

    如何利用VBE標(biāo)準(zhǔn)實現(xiàn)遙感圖像實時滾動顯示?

    本文先簡單介紹VBE標(biāo)準(zhǔn),然后結(jié)合一個具體設(shè)計,給出如何利用VBE標(biāo)準(zhǔn)實現(xiàn)遙感圖像實時滾動顯示。
    發(fā)表于 06-04 06:36

    圖像分割—基于圖的圖像分割

    圖像分割—基于圖的圖像分割圖像分割—基于圖的圖像
    發(fā)表于 11-19 16:17 ?0次下載

    基于圖像塊匹配策略的圖像自動分割方法

    為了實現(xiàn)腎小球基底膜的自動分割,提出了一種基于圖像塊匹配策略的圖像自動
    發(fā)表于 12-09 10:10 ?3次下載
    基于<b class='flag-5'>圖像</b>塊匹配策略的<b class='flag-5'>圖像</b><b class='flag-5'>自動</b><b class='flag-5'>分割</b>方法

    圖像分割基礎(chǔ)算法及實現(xiàn)實例

    圖像分割就是把圖像分成若干個特定的、具有獨特性質(zhì)的區(qū)域并提出感興趣目標(biāo)的技術(shù)和過程。它是由圖像處理到圖像分析的關(guān)鍵步驟?,F(xiàn)有的
    發(fā)表于 12-18 18:19 ?9418次閱讀
    <b class='flag-5'>圖像</b><b class='flag-5'>分割</b>基礎(chǔ)算法及<b class='flag-5'>實現(xiàn)實例</b>

    基于U-net分割遙感圖像配準(zhǔn)方法

    在利用航拍遙感圖像進行土地測量與變化檢測時,需要對圖像進行配準(zhǔn)處理。為實現(xiàn)目標(biāo)區(qū)域的高精度匹配,提出一種遙感
    發(fā)表于 05-28 14:41 ?2次下載

    什么是圖像實例分割?常見的圖像實例分割有哪幾種?

    圖像實例分割是在對象檢測的基礎(chǔ)上進一步細化,分離對象的前景與背景,實現(xiàn)像素級別的對象分離。
    的頭像 發(fā)表于 06-17 11:15 ?2.6w次閱讀
    什么是<b class='flag-5'>圖像</b><b class='flag-5'>實例</b><b class='flag-5'>分割</b>?常見的<b class='flag-5'>圖像</b><b class='flag-5'>實例</b><b class='flag-5'>分割</b>有哪幾種?

    基于圖像分割的無人機遙感影像目標(biāo)提取技術(shù)

    基于圖像分割的無人機遙感影像目標(biāo)提取技術(shù)
    發(fā)表于 06-29 16:06 ?11次下載

    AI算法說-圖像分割

    語義分割是區(qū)分同類物體的分割任務(wù),實例分割是區(qū)分不同實例分割任務(wù),而全景
    的頭像 發(fā)表于 05-17 14:44 ?1370次閱讀
    AI算法說-<b class='flag-5'>圖像</b><b class='flag-5'>分割</b>

    SAM分割模型是什么?

    SAM是一類處理圖像分割任務(wù)的通用模型。與以往只能處理某種特定類型圖片的圖像分割模型不同,SAM
    的頭像 發(fā)表于 05-20 09:30 ?2302次閱讀

    近期分割大模型發(fā)展情況

    SAM(Segment Anything Model)Meta 的 FAIR 實驗室發(fā)布的一種最先進的圖像分割模型,該模型將自然語言處理領(lǐng)域的prompt范式引入計算機視覺領(lǐng)域,可以通過點擊、框選和
    的頭像 發(fā)表于 05-22 16:26 ?892次閱讀
    近期<b class='flag-5'>分割</b>大模型發(fā)展情況

    自動駕駛場景圖像分割(Unet)

    本文使用matlab環(huán)境,測試了自動駕駛場景的圖像分割任務(wù)。分割網(wǎng)絡(luò)使用Unet。 一千張標(biāo)注圖像,最終訓(xùn)練精度達到 90%。 ? ?數(shù)據(jù)準(zhǔn)
    發(fā)表于 06-07 11:58 ?0次下載
    <b class='flag-5'>自動</b>駕駛場景<b class='flag-5'>圖像</b><b class='flag-5'>分割</b>(Unet)

    SAM 到底是什么

    的有這么強大嗎?讓我們一起通過本文了解詳情! SAM 是一個由 Meta AI 實驗室推出的強大人工智能圖像分割應(yīng)用,可以自動識別哪些圖像
    的頭像 發(fā)表于 06-12 10:46 ?5093次閱讀
    <b class='flag-5'>SAM</b> 到底是什么

    YOLOv8最新版本支持SAM分割一切

    分割任何模型 (Segment Anything Model - SAM) 是一種突破性的圖像分割模型,可實現(xiàn)具有實時性能的快速
    的頭像 發(fā)表于 06-18 11:42 ?1643次閱讀
    YOLOv8最新版本支持<b class='flag-5'>SAM</b><b class='flag-5'>分割</b>一切

    基于SAM設(shè)計的自動遙感圖像實例分割方法

    RSPrompter的目標(biāo)是學(xué)習(xí)如何為SAM生成prompt輸入,使其能夠自動獲取語義實例級掩碼。相比之下,原始的SAM需要額外手動制作prompt,并且是一種類別無關(guān)的
    發(fā)表于 07-04 10:45 ?978次閱讀
    基于<b class='flag-5'>SAM</b>設(shè)計的<b class='flag-5'>自動</b>化<b class='flag-5'>遙感</b><b class='flag-5'>圖像</b><b class='flag-5'>實例</b><b class='flag-5'>分割</b>方法