?

基于Anchor-free的圖像全景分割算法研究

2023-11-02 12:36秦怡芳張艷碩
計算機應用與軟件 2023年10期
關鍵詞:全景輪廓實例

陳 穎 秦怡芳 張艷碩

1(北京電子科技學院 北京 100070)

2(西安電子科技大學計算機科學與技術學院 陜西 西安 710000)

0 引 言

近十年很多基于圖像認知的應用得到了學術界和資本界的青睞,最典型的落地場景有智慧安防、自動駕駛等。在這些圖像認知應用中,圖像語義分割、實例分割、全景分割是智能體感知外部環境的重要手段。其中,全景分割是最全面和最具有落地意義的,它要求對圖像中的每一個像素點賦予一個唯一的語義類別和實例識別號?,F有的圖像全景分割網絡基本都沿用了語義分割和實例分割子分支融合形成全景輸出的結構。其中實例分割子分支大多數都采用了基于anchor的策略,如著名的Mask R-CNN。這種方式依賴于人為預先設置的不同尺度和不同寬高比的anchor,且由于anchor和RPN的存在,會生成大量冗余的檢測框,計算量往往很大。本文基于卷積神經網絡架構,對圖像進行了全景分割理論研究和實踐。設計一種立足于極坐標系對實例輪廓進行數學建模的anchor-free的實例分割網絡,擺脫人為預設的anchor限制,將其集成到全景分割架構中去。

1 相關研究

1.1 語義分割

經過語義分割模型訓練后,圖像每一個像素點都被賦予一個唯一的類別標簽。語義分割一直是學術界研究的熱點。2014年全卷積神經網絡FCN[1]實現了端到端,引入了跳躍連接。劍橋大學提出的分割模型SegNet[2]是編碼器-解碼器結構,其中池化時標記位置一定程度彌補了FCN的定位缺陷。2015年Ronneberger等[3]提出的U-net網絡結構,編碼解碼中間存在不同抽象層次的特征拼接。2017年Jégou等[4]提出的FC-DenseNet包含一個降采樣和一個升采樣模塊,降采樣用來提取圖像特征,升采樣被用來在輸出結果中逐漸提升分辨率。各種語義分割網絡層出不窮,學者們在特征提取和多尺度融合方面做足了研究,取得的成果也十分矚目。

1.2 實例分割

語義分割只區分類型,而實例分割對同一類的不同個體也進行細分。實例分割只對前景的物體類別進行預測,背景區域的道路、天空和樹木等不予考慮。實例分割的目標是檢測出每一個可數物體的所有像素點,并對其賦予一個所屬的實例ID?,F在的實例分割研究有基于anchor的和基于anchor-free的。

1.2.1基于anchor的實例分割

基于anchor的實例分割是首先進行基于anchor的物體檢測框回歸,在得到了檢測框之后,再分別對這些檢測框里像素進行前背景分類,這有點類似于語義分割,最后得到實例分割的輸出。這種算法的典型代表有Mask R-CNN[5]、Mask Scoring R-CNN[6]、Cascade Mask R-CNN[7]、PANet[8],基于anchor的實例分割后期需要對每一個候選檢測框單獨進行前景背景分類,計算量較大。

1.2.2基于anchor-free的實例分割

2019年10月基于anchor-free的實例分割模型PolarMask[9]被首次提出,該模型將目標檢測、實例分割進行了統一化。它與anchor-free的目標檢測架構FCOS[10]相似,是用一個n維度的向量來表示實例的掩膜邊界(即極坐標系下的實例邊界距離原點的距離)。它將實例分割問題轉化為實例中心分類問題和稠密距離回歸問題,并采用全卷積網絡進行實現。

1.3 基于anchor的全景分割

實例分割不區分背景類,語義分割則是不對同一類的事物做個體細分。把這兩者相結合,便是全景分割。全景分割的概念最早在2018年1月由Facebook人工智能實驗室Kirillov等[11]提出。

全景分割是最細致最全面的場景理解,目前全景分割的主流架構有TASCNet[12]、JSIS-Net[13],它們都是沿用了圖1的架構,即通過語義分割和實例分割子任務預測結果融合輸出全景分割結果。這些模型實例分割分支都采用了基于anchor的方式,如著名的Mask R-CNN。

圖1 主流的全景分割框架

這幾年來有不少全景分割的網絡架構相繼被提出,有些是著重解決語義分割和實例分割邊緣的重合問題[14-16],還有將注意力機制引入其中的[17]??v觀這些全景分割架構,都是通過設計更有效的共享卷積特征提取,然后研究更有效的子分支結果合并方法。但它們都需要人為預設不同尺度和寬高比的anchor。

2 基于anchor-free的圖像全景分割

根據圖1可以發現,將anchor-free的實例分割網絡集成到全景分割架構中去便可以使全景分割任務不再依賴于任何人為設定的anchor。因此,本文接下來對anchor-free的全景分割模型進行研究。

圖2給出了本文的全景分割網絡架構,該網絡中包含語義分割和實例分割兩個分支,采用了經典的全卷積網絡架構U-Net[3]搭建其backbone。

U-Net分為降采樣和升采樣兩個模塊,其中降采樣是對輸入圖像特征提取,而升采樣類似于解碼結構。本文無論是語義分割還是實例分割均采用了U-Net做特征提取,它利用同等寬高的數據塊進行拼接使得不同尺度的特征圖(Feature Map)組合,然后再逐層往后進行卷積計算。從圖2中可見,搭建的U-Net骨干網絡有4個池化,也對應4次反卷積操作。這4個池化本質上是對不同尺度下的特征進一步提取,而拼接操作是多尺度特征糅合,這樣的操作貫穿了整個U-Net骨干網。

2.1 語義分割子分支

如圖2左側分支所示,語義分割的網絡結構僅是在U-Net后多加了一層卷積,因為語義分割任務相對比較簡單,不需要過多的卷積核來學習圖像特征,該U-Net骨干網是簡化過的U-Net,輸入圖像進入網絡之前首先需要進行尺度收縮,將其調整為512×512×3,語義分割的輸出維度為512×512×Cstuff(這里包含實例的種類),用Sseg表示其輸出。所有卷積后都默認連接的ReLU非線性激活函數,只有語義分割最后一層是級聯的Softmax計算單元。語義分割輸出Sseg[i][j][c]表示的是輸入圖像[i,j]位置像素的屬于第c類stuff的概率,滿足:

(1)

2.2 實例分割子分支

圖2右側的實例分割網絡中,包含像素級實例分類、實例中心點回歸以及實例掩膜邊緣回歸三個子網絡,三者共享同一個U-Net骨干網。相比左半支的語義分割,實例分割骨干網的卷積核數量明顯增加,原因是實例分割網絡中決策多,需要學習的特征也多。

2.2.1實例分類和實例中心點回歸

實例分割子網絡中,U-Net后級聯了卷積層conv18~conv23,如圖3所示。這些卷積層是對像素進行分類和進行中心點回歸的,其架構細節如表1。其中conv22卷積層后連接的是Softmax,目的是將各像素實例類別的概率預測進行歸一化,即對于conv22的輸出數據塊Icls,Icls[i][j][c]表示的是對應輸入圖像[i,j]位置上的像素屬于第c類實例的概率。其滿足:

表1 conv18~conv23(卷積3×3,步長1)

圖3 實例分支head

(2)

實例中心點回歸網絡輸出通道數是1,它是對每個像素能否作為一個實例的中心點的得分score的回歸,conv23卷積層的輸出直接作為score的預測值。

2.2.2實例掩膜輪廓回歸

圖3實例分割掩膜輪廓回歸網絡其架構細節如表2所示,其最后一層的輸出維度為512×512×M。其中512×512中每個像素均有一個描述輪廓向量的輸出,該向量的維度為1×M,它是極坐標系中掩膜輪廓的數學表征(各個角度射線與輪廓交點距離原點的距離)。根據這些等旋轉角度下的距離,可以將其轉化為輪廓的坐標點,再進行首尾相接便可重構出實例的邊界。M取值越大,則重構的實例邊界越精細。

表2 實例掩膜輪廓回歸子網絡(卷積3×3,步長1)

2.2.3Soft-NMS后處理

根據實例分類、實例中心點回歸、實例掩膜輪廓回歸,便可以得到輸入圖像中的每一個像素作為中心點的實例輪廓,置信度以及實例類別信息。模型訓練之后可以設定一閾值St,選取出所有的score>St的像素點,并將這些像素點對應的實例輪廓、實例類別從實例分割網絡的輸出數據塊中提取出來,便可以定位實例、確定其類別,以及描述其輪廓形態。

對于某一個實例物體而言,其輪廓內部可能存在若干個高質量的中心點(作為極坐標系下的原點)被選出,故會重構出若干個實例輪廓,采用Soft非極大值抑制[18]對其進行處理,這也是目標檢測、實例分割領域最為常用的去除冗余性檢測框或實例掩膜的方法。

2.3 語義分割與實例分割融合處理

語義分割子分支和實例分割子分支結果有以下幾種可能:

情況1:某像素實例分割和語義分割結果都類屬類別cls。

情況2:某像素實例分支中被劃為類別cls,語義分支中不屬于cls。

情況3:某像素被實例分割網絡劃為背景類,語義分割劃為實例類別cls。

本文采取了一個簡單有效的方法對語義分割和實例分割的結果進行融合,如圖4所示。

圖4 子分支結果融合流程

3 實 驗

3.1 數據準備

百度ApolloScape數據集[19]具有標注詳細、包含不同困難級別等優點,同時圖像豐富,包含多個城市、多樣的天氣條件,故選其作為本文全景分割算法的訓練和測試集合。該數據集共包含143 906幅像素級別標注的圖片,數據量十分巨大。從中隨機取出9 600幅圖像作為使用的數據集,并按照8∶2的劃分比例將其劃分為訓練集和驗證集合,訓練集共計7 680幅圖片,驗證集共計1 920幅圖片,所有圖片均被調整為512×512×3的尺寸輸入網絡。ApolloScape數據集中的像素標簽種類共計35種,其中不可數的填充物類型7種。

3.2 損失函數

全景分割損失包含語義實例兩個子分支損失:

Ltotal=Lsemantic+βLinstance

(3)

式中:β為權衡參數。

(1) 語義分割損失函數。

(4)

式中:Lsemantic[i][j]表示的是單個像素語義分割的損失值,語義分割損失取所有像素的損失值平均。

(5)

式中:Yseg[i][j]是像素[i,j]對應的真值;Sseg[i][j][c]是像素[i,j]屬于第c類填充物的概率。

(2) 實例分割損失函數。

Linstance=Lins-cls+Lins-score+Lins-polar-iou

(6)

其中實例分類損失Lins-cls與語義分割中損失定義一樣,替換一下變量即可,不贅述。

實例中心回歸損失Lins-score定義如下:

(7)

其中s[i][j]和s′[i][j]分別是對應像素作為實例中心點的得分真值和預測值。

極坐標系中實例輪廓回歸損失Lins-polar-iou定義與PolarMask中保持一致,即:

(8)

3.3 實驗結果與分析

(1) 不同Backbone的全景分割性能比較與分析。對于圖2的全景分割架構,本文是以自定義U-Net作為backbone的,因此對不同backbone網絡對該全景分割架構性能的影響進行了實驗驗證。從表3中可以發現,自定義的U-Net性能與原生U-Net相當,優于SegNet和FC-DenseNets,但是相比FCN性能稍弱。

表3 基于不同Backbone的全景分割性能對比(Δθ=5°)

基于自定義U-Net的全景分割網絡具有一定的性能競爭優勢,但其最大的優勢在于它是輕量級的。圖5對主流的Backbone的參數進行了統計,可以發現自定義的U-Net骨架網雖然性能稍遜色于FCN,但是其網絡參數相比于FCN則降低了約35%,適合低開銷約束的面向于實時計算的應用場景。

圖5 不同骨干網絡參數對比圖

為了更直觀地對比不同骨干網絡的全景分割性能,圖6用一幀街景圖像來作示例。

圖6 同一幅圖不同骨干網下的語義(左)、實例(中)和全景(右)輸出效果對比

(2) 不同旋轉角度全景分割性能對比。極坐標系中旋轉角度間隔Δθ越小,采樣點M越多,實例輪廓擬合程度越高,但同時模型參數會增加。對不同的旋轉角度Δθ對全景分割網絡的性能影響做了實驗驗證。如表4所示。

表4 不同旋轉角度間隔采樣的全景分割性能對比

可以看出,Δθ越小,性能越好,但當Δθ小到5°或更小的時候,性能趨于穩定。開始精度提高是因為當Δθ變小時,描述實例輪廓的采樣點變多,輪廓擬合程度更高;但采樣點過多時,性能會受到實例輪廓凹凸性的影響,如果原點發出的一條射線與實例輪廓有多個交點,則無論取哪一個交點重建輪廓都會有誤差。

4 結 語

本文將基于極坐標系的實例邊緣的數學表征模型,集成到全景分割神經網絡架構中去,用anchor-free的回歸替代了基于檢測框的回歸,端到端地實現了全景分割網絡的訓練和性能驗證。

針對極坐標系中的輪廓表征方法,本文搭建了一個基于自定義U-Net版本的backbone,U-Net中的降采樣和升采樣過程將同等尺度的Feature Map進行拼接,有效地挖掘不同尺度的特征。對于本文的anchor-free的全景分割架構,設計了有效的損失函數,并基于百度ApolloScape開源數據集對模型進行訓練,驗證了不同backbone下以及不同采樣粒度下的全景分割性能。實驗證明,這種方式在相差不多的精度下,參數量大大減少,更適合低開銷的面向實時的應用場景。后續可以通過特征金字塔等手段做進一步性能提升的研究。

猜你喜歡
全景輪廓實例
戴上耳機,享受全景聲 JVC EXOFIELD XP-EXT1
OPENCV輪廓識別研究與實踐
基于實時輪廓誤差估算的數控系統輪廓控制
全景敞視主義與偵探小說中的“看”
從5.1到全景聲就這么簡單 FOCAL SIB EVO DOLBY ATMOS
全景搜索
在線學習機制下的Snake輪廓跟蹤
完形填空Ⅱ
完形填空Ⅰ
創造早秋新輪廓
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合