文章目錄
關注我的公衆號,獲取最新動態
何凱明團隊的新作:PointRend: Image Segmentation as Rendering
PointRend,是何凱明及其團隊對圖像分割領域的又一次最新探索,將圖像分割當做一個渲染問題,思路清奇,源於經典而高於經典,又是一次突破傳統的成功。
作者簡介
何愷明,本科就讀於清華大學,博士畢業於香港中文大學多媒體實驗室。 2011年加入微軟亞洲研究院(MSRA)工作,主要研究計算機視覺和深度學習。2016年,加入Facebook AI Research(FAIR)擔任研究科學家
論文摘要
我們提出了一種有效的高質量圖像的新方法 :對象和場景的分割。通過類比經典計算機圖形方法以實現高效渲染 在像素標記任務中面臨的過採樣和欠採樣挑戰,我們開發了圖像分割作爲渲染問題的獨特視角。從這個優勢,我們 提出了PointRend(基於點的渲染)神經網絡模塊:該模塊根據以下信息在自適應選擇的位置執行基於點的分段預測: 迭代細分算法。 PointRend可以靈活地應用於實例和語義分割 通過在現有最新模型的基礎上完成任務。 雖然總體思路有許多具體實現 有可能,我們表明簡單的設計已經實現 出色的結果。定性地,PointRend在先前方法過度平滑的區域中輸出清晰的對象邊界。從數量上看,PointRend的收益顯着 在實例分割和語義分割方面,COCO和Cityscapes都有所增長。 PointRend的效率可實現輸出 與現有方法相比,在內存或計算方面不切實際的分辨率。
傳統實例分割是什麼樣子的
-
輸入圖像,
-
對圖像的每個像素點進行預測,推斷像素點所屬的實例標籤,
-
區分屬於不同實例的像素點。
算法有哪些提高
降低資源消耗
算力僅需Mask R-CNN的2.6%。這一思路也進一步降低了消耗的資源,在當前人工智能算法模型在端側部署的大趨勢下,意義更大。
輸出224×224分辨率圖像,PointRend只需0.9B FLOPs
精確度提高和高輸出分辨率
實現準確的分割,下左圖是Mask R-CNN效果,右圖是PointRend,很震撼,五指的輪廓都可以摳出來:
Mask R-CNN+PointRend實驗結果
顯然,PointRend新方法完敗Mask R-CNN。
PointRend抗鋸齒
模塊可拓展
PointRend理解爲神經網絡模塊集成,是一種新型神經網絡模塊
可以在現有模型的基礎之上,用於實例分割、語義分割任務。
基於PointRend的DeeplabV3的語義分割
基於PointRend的SemanticFPN
圖像分割新思路:將圖像分割視作渲染問題
計算機圖形學的思路
渲染:渲染器將模型(如 3D 網格)映射到點陣圖像,即像素的規則網格。
計算機圖形學的思路:對圖像平面中被自適應選擇點的不規則子集計算出像素值。從而高效渲染出抗鋸齒的高分辨率圖像。
清奇的思路:類比計算機圖形學的思路
圖像分割,同樣可以視作底層連續實體的佔用圖,然後從中輸出預測標籤的矩形網格。
類比計算機圖形學的思路,使用細分策略來自適應地選擇一組非均勻點,進而計算標籤。
PointRend網絡架構
圖像分割步驟
-
使用輕量級的分割頭,對每個檢測到的對象(紅框)進行粗略的mask預測。
-
選擇一組點(紅色點),用小規模的多層感知器(MLP)爲每個點進行獨立預測。
-
對這樣的細分算法進行迭代,以從粗到細的方式計算mask。
具體可以分爲三個部分:
- Point Selection(點選擇)
- 逐點 (point-wise) 表示
- point head(點頭):小型神經網絡,用於基於逐點特徵表示預測標籤
1.Point Selection(點選擇)
PointRend的核心思想是,在圖像平面中自適應地選擇預測分割標籤的點。
那麼這些點主要分佈在哪裏呢?理論上講,這些點應該在高頻區域分佈較廣(比如說圖像的邊緣)。
推斷:用於推斷的點選擇策略受到計算機圖形學中自適應細分(adaptive subdivision)這一經典技術的啓發。該技術通過計算與其近鄰的值顯著不同的位置,來高效渲染高分辨率圖像(如通過光線追蹤);其他位置的值則通過內插已經計算好的輸出值來獲得(從粗糙網格開始)。
訓練:在訓練過程中,PointRend 還需要選擇點來構建訓練 point head 所需的逐點特徵。原則上,點選擇策略類似於推斷過程中使用的細分策略。但是,細分策略使用的順序步驟對於利用反向傳播訓練神經網絡不那麼友好。因此,訓練過程使用基於隨機採樣的非迭代策略。
2.逐點表示
PointRend通過組合低層特徵 (fine-grained features) 和高層特徵 (coarse prediction),在選定的點上構造逐點特徵。
在細粒度特徵(fine-grained features)方面,爲了讓PointRend呈現出精細的分割細節,研究人員爲CNN特徵圖中的每個採樣點提取了特徵向量。
細粒度特徵雖然可以解析細節,但也存在兩方面的不足:
- 不包含特定區域信息,對於實例分割任務,就可能在同一點上預測出不同的標籤。
- 用於細粒度特徵的特徵映射,可能僅包含相對較低級別的信息。
這就需要粗略分割預測 (coarse prediction) 來進行補充,提供更多全局背景。
這樣的粗略預測類似於現有架構的輸出。以實例分割爲例,coarse prediction可以是Mask R-CNN中 7×7 輕量級mask head的輸出。
3.Point Head
對於每個選定點的逐點特徵表示,PointRend使用簡單的多層感知器進行逐點分割預測。
多層感知器在所有點(所有區域)上共享權重。
並且,由於多層感知器會針對每個點預測分割標籤,可以通過特定任務的分割損失進行訓練。
3.Point Head
對於每個選定點的逐點特徵表示,PointRend使用簡單的多層感知器進行逐點分割預測。
多層感知器在所有點(所有區域)上共享權重。
並且,由於多層感知器會針對每個點預測分割標籤,可以通過特定任務的分割損失進行訓練。
掃碼關注公衆號,獲取最新動態