Instance Segmentation — SparseInst on NVIDIA RTX 3060, AGX Orin and Xavier NX

Jill Hsu
6 min readJul 27, 2022

--

NVIDIA Jetson AGX Orin [1]

SparseInst 是一個在 2022 年提出的新的實例分割演算法,受到 CAM 的啟發使用 IAM 的方法,將每一個不同實例區分並強調其區域,並透過 Bipartite Matching 策略取得一對一的預測結果,省去 NMS 的計算,進而加快預測。

接下來將針對 實例分割 與 SparseInst 介紹,

  • 實例分割方法
  • SparseInst 介紹
  • 實測推論速度
  • 推論結果
  • 參考文獻

實例分割相關方法

實例分割對於一張影像會產生不同實例的預測,即使預測為同一個類別的物體也會分別區分出各別的位置與大小。

實例分割的方法主要分成兩大類:Region-Based 與 Center-Based。

Region-Based 的方法依賴於物體偵測預測出的物體與標註框,接著使用 RoI-Pooling 或 Rol-Align 的方法找出 Segmentation。常見的演算法有 Mask R-CNN。

Center-Based 則是使用 Anchor-Free 的方法直接預測,常見的演算法有 YOLACT、MEInst、CondInst、FCOS 與 SOLO。

Instance Segmentation 相關方法: Center-based、Region-based 與 IAM 圖例

SparseInst 介紹

而 SparseInst 則是採用 Bipartite Matching 的方法,避免在後處理時使用 NMS 需要花費大量的時間。

SparseInst 主要的架構分為三個部分:Backbone、Encoder 與 Decoder。

SparseInst 架構圖 [2]

在輸入影像後,影像會分別經過 Backbone、Encoder 與 Decoder,最後輸出一對一的 Mask、Score 與 Class。

  1. 影像經過 Backbone 後抽取出三層特徵:C3、C4 與 C5。
  2. 將 C5 輸入 Encoder 的 PPM (Pyramid Pooling Module) 中,擴大感受野 (Receptive Field),並將 C3 與 C4 直接輸入 Encoder。
  3. 在 Encoder 中分別經過 Conv2D 與 Upsample 將特徵圖的 channel 與 大小分別減少與放大成原始特徵圖的 channel 與 大小。
  4. 將原始特徵圖與多尺度特徵圖 Concate 成兩倍的 channel ,並經過 Conv2D 將 channel 還原回原始特徵圖的 channel 數。
  5. 將 Encoder 的輸出作為 Decoder 的輸入,Decoder 將分成 Mask Branch 與 Instance Branch。
  6. Mask Branch 預測 Segmentation Mask,並與 Instance Branch 預測出的 kernel 經過矩陣相乘取得最後的 Mask 預測結果。
  7. Instance Branch 使用 IAM 預測出 Class、Score 與 Kernel。
  8. 透過 Bipartite Matching 匹配出 Mask、Class 與 Score 的組合。

其中,在 Encoder 中使用的 PPM 架構,會將特徵圖透過 Pooling 成多尺寸的特徵圖,在 PPM 的論文中為 1x1、2x2、4x4 與 6x6,經過卷積層將每一個尺寸特徵圖的 channel 減少到 1/n,也就是 1/4,再透過 Upsample 將多個尺寸的特徵圖放大回原始特徵圖的尺寸並與原始特徵圖串接 (Concate) 在一起,最後透過卷積層將輸出的特徵圖 channel 還原至與原特徵圖相同的 channel。

PPM (Pyramid Pooling Module) 架構 [3]

在 Decoder 中的 IAM 對於影像中的每一個實例會產生一個特徵,論文作者提出的 G-IAM 則是對於影像中的每一個實例產生出多組特徵,讓實體的區域能夠更明顯,在論文中對於每一個實例分別產生出 4 組特徵。

IAM 與 G-IAM 示意圖

實測推論速度

在 SparseInst 論文中的實驗結果可達到 44 FPS,相關實作 [4] 實驗的結果也可達到 44.3 FPS。

實際在不同的平台上測試,加上前處理與後處理的時間,實驗結果如下:

RTX 3060, AGX Orin 與 Xavier NX FPS 比較

從測試結果來看 AGX Orin 的 FPS 其實堪比桌機的效能!

推論結果

上述的實驗是以 SparseInst 的預訓練模型測試,模型是以 COCO 80 個類別訓練,我們實際使用道路上有車子行駛的影片測試推論效果:

Inference on NVIDIA Jetson AGX Orin

--

--