蘇麗,孫雨鑫,苑守正
(1.哈爾濱工程大學 智能科學與工程學院, 黑龍江 哈爾濱 150001; 2.哈爾濱工程大學 船舶裝備智能化技術與應用教育部重點實驗室, 黑龍江 哈爾濱 150001)
近年來,深度學習和統一計算設備構架(compute unified device architecture, CUDA)等并行計算技術迅速發展直接推動了計算機視覺和圖像處理領域進入了新的技術時代,實例分割作為計算機視覺基礎研究問題之一,其技術可廣泛應用于汽車自動駕駛,機器人控制,輔助醫療和遙感影像等領域。
在計算機視覺的基本任務中目標檢測是預測圖像中目標位置和類別。語義分割則是在像素級別上對目標分類。而實例分割可看作目標檢測和語義分割的結合體,旨在檢測圖像中所有目標實例,并針對每個實例標記屬于該類別的像素。即不僅需要對不同類別目標進行像素級別分割,還要對不同目標進行區分。與其他計算機視覺研究問題相比,實例分割的挑戰性在于:
1)需要預測并區分圖像中每個目標的位置和語義掩碼,并且由于實例的不可知形狀使得預測實例分割的掩碼比目標檢測任務預測矩形邊界框更靈活;
2)密集目標的相互遮擋與重疊使網絡很難有效區分不同實例,并且小目標的實例分割由于普遍缺少細節導致分割精度仍然很低;
3)繁瑣精細的數據標注耗費大量人力與時間,如何減少成本,有效利用現有未標注或粗糙標注的數據提升實例分割精度仍是一個亟待解決的問題。
1980年日本學者福島邦彥[1]提出的神經認知機模型可以稱為卷積神經網絡的前身,Lecun[2]提出反向傳播算法使網絡訓練成為可能,之后2012年AlexNet[3]在ImageNet圖像識別大賽上獲得冠軍。從此深度卷積神經網絡引起人們關注,研究者用它解決計算機視覺任務。近年來,實例分割的研究基本是建立在基于卷積神經網絡的目標檢測和語義分割基礎之上。因此,從研究發展來看實例分割任務是卷積神經網絡成功運用在計算機視覺領域的產物[4]。實例分割方法主要歸納為兩階段與單階段兩類,其中兩階段實例分割有兩種解決思路,分別是自上而下基于檢測的方法和自下而上基于分割的方法。而單階段實例分割可細化為感知實例分割,建模掩碼,Transformer嵌入及一些其他方法。
本文從實例分割的研究現狀,算法優缺點和主流方法性能對比,特殊條件下的應用,常用數據集與權威評價指標等角度出發對一些具有啟發性的研究成果進行整理,歸納和分析,為相關研究提供有價值的參考。
從研究時間線來看,實例分割技術根據處理過程目前主要歸納為兩類:兩階段和單階段,如圖1所示,本文將分別進行介紹。

圖1 本文涉及的實例分割方法Fig.1 Paper focuses on the instance segmentation methods
兩階段實例分割是以處理階段劃分,其中自上而下的基于檢測方法是先檢測出圖像中實例所在區域,再對候選區域進行像素級別分割。而自下而上的基于分割思想則將實例分割看作一個聚類任務,通過將像素分組為圖像中呈現的任意數量的目標實例,最后判斷每組的類別來生成實例掩碼,這種不需要束縛于目標框的影響。
1.1.1 自上而下的實例分割
自上而下的實例分割研究受益于目標檢測的豐碩成果。下面介紹一下代表性的方法。
2014年Hariharan等[5]在SDS中首次實現檢測和分割同時進行,也是最早的實例分割算法,奠定了后續研究基礎[6]。如圖2所示,具體分為4步:1)建議框生成,使用非極大值抑制(non-maximum suppession, NMS)[7]為每張圖片產生2000個候選區域;2)特征提取,聯合訓練兩個不同的卷積神經網絡(convolutional neural network, CNN)網絡同時提取候選區域和區域前景特征;3)區域分類,利用CNN中提取到的特征訓練SVM分類器對上述區域進行分類;4)區域細化,采用NMS來剔除多余區域,最后使用CNN中的特征來生成特定類別的粗略掩碼預測,以細化候選區域將該掩碼與原始候選區域結合起來可以進一步高分割效果。

圖2 SDS網絡Fig.2 SDS network
雖然SDS效果遜色后續方法,但SDS先用檢測生成候選區域再對其語義分割的思想為后續實例分割提供了重要的研究啟發。2015年該團隊又對SDS重新分析認為,只使用CNN最高層的特征來解決實例分割問題存在著掩碼細節粗糙的缺陷,即高層特征的語義信息豐富有利于目標分類,但缺少精確的位置信息。例如:在底層特征圖中可以定位目標部件,但是沒有豐富語義信息判別區分這個目標部件具體屬于哪個物體。所以,引入Hypercolumns[8](所有CNN層對應該像素位置的激活輸出值所組成的向量)作為特征描述符,將底層特征與高層特征融合從而提升分類的精確性并改善目標分割細節。
之后,CFM[9]算法首次將掩碼(mask)這一概念引入到實例分割中。CFM通過矩形框生成特征圖的掩碼,并將任意區域生成固定大小的特征以方便處理。這里是從卷積特征中提取掩碼而非原始圖像中提取。
DeepMask[10]是首個直接從原始圖像數據學習產生分割候選的工作。簡單講,給定一個圖片塊作為輸入,輸出一個與類別無關的mask和相應的分數。它最大的特點是不依賴于邊緣、超像素或者其他任何輔助形式的分割,是用分割的方法來生成高召回率的候選區域。但缺點是只能捕捉目標大致外形,不能準確描繪目標邊界。為了優化DeepMask的掩碼,SharpMask[11]先在前向反饋通道中生成粗略的掩碼,并在自上而下的通道中引入較低層次富有位置的特征逐步加以細化,最后產生具有更高保真度的能精確框定物體邊界的掩碼。
但是上面提到的方法都需要先在原圖生成掩膜候選區域,沒有充分利用深度學習特征及大規模訓練數據的優勢并且推斷時間緩慢,這些都是影響實例分割準確性的瓶頸。2016年,何凱明團隊在多任務網絡級聯(MNC)[12]中提出了一種級聯結構,如圖3中將實例分割任務分解為目標定位、掩碼生成以及目標分類3個子任務,共用一個主干網絡,將3個不同功能的網絡分支級聯起來。每個階段都以前一階段的結果作為輸入。整個網絡是端到端的。這樣主干網絡的訓練可以共享3個子任務的監督,有利于訓練出更好的特征。這種設計另一個優點是可以快速地進行推斷。

圖3 MNC網絡Fig.3 MNC network
隨著計算機并行處理數據能力的提升和目標檢測網絡性能的快速更新,實例分割研究趨勢打開了一個新的局面。前沿的設計思想和領域的認識革新碰撞出新的學術火花。
2017年何凱明團隊提出簡單通用且性能強大的兩階段Mask R-CNN[13],是Faster R-CNN[14]思想應用在實例分割的經典之作,用于許多衍生應用的基線算法,也是現今使用最多,效率最高的實例分割算法。它的成功又激起實例分割領域新的技術浪潮。Mask R-CNN[13]在目標分類和回歸分支上增加了用于預測每個感興趣區域(region of interest, ROI)的語義分割分支。網絡結構如圖4所示,基礎網絡中采用了當時較為優秀的ResNet-FPN[15-16]結構,多層特征圖有利于多尺度物體及小物體的檢測。首先,將輸入圖片送入到特征提取網絡得到特征圖,然后對特征圖的每一個像素位置設定固定個數的ROI(也可以稱為錨框),然后將ROI區域送入區域推薦網絡(region proposal network, RPN)進行二分類(前景和背景)以及坐標回歸,以獲得修正后的ROI區域。為了保證特征分辨率,對ROI執行提出的ROI Align[13]操作替換原始的ROI Pooling[14],取消了取整操作,而是通過雙線性插值的方法保留所有的浮點數。最后增加了一個mask掩碼分支來預測每一個像素的類別。采用了全卷積神經網絡(fully convolutional network, FCN)[17]的網絡結構,利用卷積與反卷積構建端到端的網絡,對每一個像素分類,實現了較好的分割效果。同時,2018年Masklab[18]也改進了Faster R-CNN[14],并產生兩個額外的輸出,即語義分割和實例中心方向。由于Mask R-CNN對實例分割研究具有重要的啟發意義,后續涌現了一系列相關的工作,具體方法如下。

圖4 Mask R-CNN網絡Fig.4 Mask R-CNN network
2018年PANet[19]在Mask R-CNN基礎上引入自下而上的路徑改進并擴展了金字塔特征提取網絡,使用自適應融合的ROI區域特征池化,很好地融合了不同層次的特征信息。DetNet[20]將空洞卷積加到骨干結構中既保證了特征分辨率同時又增大感受野,并提出重新對檢測、分割任務訓練骨干網絡以提高特征表達能力。
2019年MS R-CNN[21]提出現有的mask打分策略是使用分類的指標,缺乏針對性的評價機制。故在Mask R-CNN基礎上修改了mask評價標準,通過添加Mask IOU分支來預測mask并且給其打分來提升模型實例分割性能。同年,何凱明團隊提出PointRend[22]將實例分割看作圖像處理中渲染問題,細化Mask R-CNN產生的粗糙掩碼邊緣,先在邊緣上選幾個點再提取點的特征進行迭代計分計算達到細化掩碼的目的。
2020年BMask R-CNN[23]則將目標邊緣信息加入Mask R-CNN中用于監督網絡以增強掩碼預測。
2021年BPR[24]提出一個后處理細化模塊以提高Mask R-CNN的邊界質量。RefineMask[25]利用邊緣信息和語義分割信息細化Mask R-CNN生成的粗糙掩碼邊緣。姜世浩等[26]在Mask R-CNN基礎上引入兩條分支,基于整體嵌套邊緣檢測2021年BPR[24]提出一個后處理細化模塊以提高Mask R-CNN的邊界質量。BPR利用一種裁剪細化的策略,先通過實例分割網絡(如Mask R-CNN)得到粗糙的掩碼。隨后在掩碼的邊界上提取出一系列的方塊,這些方塊被送入一個細化網絡作二分類的前景與背景分割,進而實現對邊界處的方塊進行優化。該網絡可以解決Mask R-CNN預測的掩碼存在邊界粗糙的問題。RefineMask[25]則利用邊緣信息和語義分割信息細化Mask R-CNN生成的粗糙掩碼邊緣。通過多階段的方式在實例分割過程中逐級融合更多的細粒度信息,因此逐步精細化了實例掩模。最后,RefineMask成功地克服了以往分割中所遇到的困難案例(如物體的彎曲部分被過度平滑),并輸出了準確的邊界。模型生成邊緣特征圖,一條基于FCN生成偏重于空間位置信息的語義特征圖。融合以上得到的多個特征圖,生成信息更加豐富的新特征。
但是上述自上而下的實例分割方法缺點在于:
1)在一定程度上嚴重依賴精確的目標檢測且得到的實例掩碼分辨率相對較低;
2)對于多實例的復雜場景,由于兩階段方法在前期需要單獨設計網絡生成大量建議區域,其推理時間與建議框的數量成正比,因此在推斷速度上緩慢;
3)仍然無法很好地區分同一類別重疊的不同實例個體且掩碼分割細節不夠平滑。
1.1.2 自下而上的實例分割
為了擺脫目標檢測邊界框對后續分割的限制,研究者們從另一個角度思考實例分割問題,將實例分割看作是一個圖像聚類任務。也就是需要將圖像中屬于一個物體的所有像素聚成一個集合,并判斷這個物體的類別。這種基于分割的方法通常會學習經過特殊設計的轉換形式或實例邊界,并以類似嵌入的方式將點聚類到實例掩碼中。下面介紹幾種代表方法。
BAI M等[27]利用FCN網絡來學習分水嶺變換的能量,然后利用能量分割,將圖像分成若干個區域,每個區域就代表了一個實例。Associative embedding[28]利用學習到的關系嵌入成組來分配像素。Brabandere等[29]引入判別損失函數通過推開屬于不同實例的像素并拉近同一實例中的像素來有效地學習像素級別的實例嵌入。SGN[30]使用序列組合網絡將實例分割問題分解成一系列子類分組問題。每個網絡都解決了語義復雜度不斷提高的子分組問題,以便逐步從像素中組成對象。Gao等[31]學習像素對親和力金字塔,即兩個像素屬于同一實例的概率,并通過級聯圖分區順序生成實例。Fathi等[32]和Brabandere等[33]把問題分解成為逐像素語義分割,逐像素對應實例的坐標進行預測和區分類別的實例個數。同時,嘗試利用特征嵌入的方式,為每一個像素學習一個特征,并根據特征的距離對像素進行聚類。
這類方法通過將像素分組為圖像中呈現的任意數量的對象實例來生成實例掩碼,與自上而下的方法相比,自下而上方法的缺點是:
1)嚴重依賴于密集的預測質量,導致性能不夠標準或產生碎片掩碼;
2)由于聚類過程使得很難將其應用于復雜的情況,通常在準確性上落后。尤其是在具有不同復雜場景和語義類別較多的數據集上泛化能力有限。
3)預測之后的處理技術很復雜。
綜上分析兩類方法,自上而下嚴重依賴目標檢測效果,自下而上雖然天然克服了基于建議框的缺陷,轉為對每個像素的嵌入學習和分組進行處理,但一般無法端到端訓練,且受限于聚類算法,性能一般有限。那么,是否存在一種方法,可以繞過這些條條框框來直接作實例分割呢?
受單階段的目標檢測啟發,現有方法將實例分割統一到FCN[17]框架下,如以單階段全卷積一階段目標檢測(fully convolutional one-stage object detection, FCOS)[34]為目標檢測框架衍生出一系列單階段的實例分割算法。還有一些研究重新思考了掩碼的合理表征方式,從而提升實例分割精度。近兩年研究人員也將自然語言處理中的Transformer模型成功應用到圖像實例分割領域且有了較好的效果。此外,其他方法則結合了實例分割和目標檢測的優勢加以實現。單階段的實例分割任務難點在于不添用建議框的輔助下如何直接區分不同物體,特別是同類別的不同實例和如何完整的保存逐像素點含有的位置信息和語義信息。
1.2.1 感知實例分割
本質上,實例分割可看作實例位置感知的語義分割,需要在區域級別上進行操作,并且同一像素在不同區域中可能具有不同的語義,如圖5所示。
圖5(a)中的FCN網絡簡潔、高效已經廣泛應用在語義分割中。最早利用FCN網絡實現實例分割的是圖(b)中的Instance FCN[35],它以位置敏感圖的形式將實例信息引入語義分割中實現了平移可變性。將原有FCN單一輸出通道變為多個對實例位置敏感的通道,通過聚合位置敏感圖得到每個實例掩碼。
圖5(c)中的全卷積感知實例分割(FCN instance-aware)[36]改進 Instance FCN不能輸出對象類別信息的問題,提出內和外的位置敏感評分圖來同時進行檢測和分割實例。兩個子任務不僅共享卷積特征而且共享位置敏感評分圖。隨后,王子愉等[37]在全卷積感知實例分割的檢測分支中使用了具有大型可分離卷積來獲得更精確的邊界框。同時設計了一個包含邊界細化操作的分割模塊以獲得更精確的掩模。

圖5 FCN系列網絡Fig.5 FCN series network
2019年加利福尼亞大學提出一個新的實例分割算法[38]。這個簡單的全卷積實例分割模型是一個實時實例分割算法,這比以前的任何算法都要快得多,盡管它的精度不是很高。YOLACT將整個任務拆分為了兩個子部分,一個部分是得到類似于FCN的語義分割原型圖,另一個部分得到檢測框,通過融合原型圖和檢測框,得到掩碼。該團隊接下來對此YOLACT算法進行了加強,提出YOLACT的改進版YOLACT++[39],速度高達33.5 fps,將實時實例分割又推上了新的高潮。
2020年,CondInst[40]可以做到真正的高速,同時保證高精度,徹底去掉了檢測器的輔助。它用動態卷積的思想生成實例敏感的濾波器來編碼實例信息,不依賴目標框及ROI Pooling等特征對齊手段。用FCOS檢測實例類別,然后用動態網絡生成的掩碼頭參數結合提取到含相對坐標信息的掩碼特征圖執行卷積操作生成最終的實例mask。同年,SOLO[41]將圖像作為輸入,在全卷積特征圖上輸出相應類別概率直接輸出實例蒙版,無目標框監督,既不需要ROI Pooling也不需要進行檢測后處理過程[42]。SOLO先劃分正樣本的柵格,并且把每一個柵格對應一個物體的掩碼,相當于一個正樣本對應一張圖,這張圖中只有這個正樣本的掩碼。SOLOv2[43]在文獻[40]基礎上又提出動態學習分割目標掩碼的思想,將其分解為學習掩碼核和生成掩碼兩個支路。此外,引入專門針對掩碼的后處理方法Matrix NMS可以一次完成具有并行矩陣運算,比傳統用于目標檢測的NMS[44]能產生更好的結果。
Point INS[45]從基于點特征實例分割的兩個難點入手:如何用點特征進行更強健的掩碼表達和解決一階段潛在存在特征錯誤分配建議框而帶來后續分割錯亂的問題,提出實例感知卷積(實例無關的特征和感知權重相配合)。而CenterMask[46]從另一方面解決基于點特征的一階段實例分割即不同目標實例的區分和逐像素特征對齊。將其分解為兩個子任務:1)局部掩碼(使用目標中心點)來表示分離實例,特別在多目標重疊環境下效果顯著全局顯著;2)在整張圖片中生成全局的分割掩碼。最后,融合粗略但實例感知的局部掩碼和精確但實例未知的全局掩碼以形成最終實例的掩碼。BlendMask[47]是通過更合理的blender模塊融合高層和底層的語義信息輔助來提取更準確的實例分割特征。AdaptIS[48]的思想與其他主流方法不同,它輸入不僅是一張圖像,還需要人為指定一個點。即只需要一個目標身上的點,就可以分割出這個目標實例的分割掩碼。
1.2.2 建模掩碼
傳統的掩碼mask表征方式是二值化,也就是用一個矩陣表示,矩陣中元素只有0和1,1表示該位置是物體,0表示背景。目前,大多數掩碼局限于二維矩形框,而現實世界中的物體大多都是不規則的多邊形,所以一些研究人員從如何合理建模掩碼的角度出發研究實例分割問題。
2019年Tensormask[49]通過4D的結構化張量在空間域中構建掩碼,是一種基于局部掩碼的編碼方式,也是首個密集滑動窗口實例分割系統。雖然思想新穎但它的推理速度慢于兩階段Mask R-CNN且訓練時間是Mask R-CNN的6倍。2020年,Polarmask[50]則提出了一種新的掩碼編碼形式,使用極坐標建模來表示多邊形目標,將每個像素的掩碼預測轉變成在極坐標系下中心點分類和距離回歸問題。而分析Polarmask的分割結果發現存在邊緣信息模糊的問題,因此提出了輪廓點細化的方法,通過對輪廓點角度偏置和距離的預測,使網絡能夠提取出更準確的實例輪廓。同年,Deep Snake[51]用邊緣建模的方式表征物體。并結合傳統snake算法,先給定一個初始邊緣,在提取好的特征圖上給邊緣的每個節點提取一個特征,這樣得到一個定義在邊緣上的特征。然后用循環卷積(circular convolution)[51]構成的網絡進行邊緣上的特征學習,最后映射為指向物體輪廓的偏移,用于變形邊緣。
雖然上面基于輪廓建模的方法具有易于優化和快速推斷的優點。但是也有著天生的缺點,沒有有效的表征目標中出現的空洞。因此,MEInst[52]脫離目標檢測的影響,考慮對掩碼的寬度×高度進行壓縮,從信息論的角度來說傳統掩碼表示中一定存在著信息冗余,因此可以更低的比特數對其進行表征,通過使用主成分分析法將掩碼編碼成一個統一的矩陣。
2021年實例分割建模掩碼的核心則是在沒有實例像素標注時如何完成實例分割任務。LSNet[53]類比Polarmask提出一種通用建模方式可用于檢測,實例分割和姿態估計領域。Implicit PointRend[54]提出基于點的實例級別標注,是實例分割中的一種新的弱監督形式。它可以將標準的邊界框標注與標簽點結合起來。BoxInst[55]提出僅利用邊界框監督完成實例分割,核心思想是重新設計實例分割中掩碼損失,而無需修改分割網絡本身。新的損失函數可以監督掩碼訓練,而無需依賴掩碼注釋。
1.2.3 Transformer嵌入
最近,Transformer模型在自然語言處理中的突破引起了計算機視覺社區的極大興趣。Transformer的關鍵部件是多頭注意力,這可以顯著提高模型的能力。目前,已有研究人員將Transformer應用到圖像實例分割領域且有了較好的效果。ISTR[56]是首個基于Transformer的端到端實例分割框架。ISTR通過預測低維掩碼嵌入和循環細化策略同時檢測和分割實例,與自下而上和自上而下的框架相比,為實現實例分割提供了新的視角。SOTR[57]利用Transformer簡化了分割流程,使用兩個并行子任務:1)通過Transformer預測每個實例類別;2)利用多級上采樣模塊動態生成分割掩碼。此外提出的雙Transformer在一定程度上提高了分割精度和訓練收斂性??梢?,編碼器-解碼器Transformer模型可以通過一系列可學習的掩碼嵌入將實例分割任務統一。與CNN相比,視覺Transformer在實例分割領域具有很強的競爭力。
1.2.4 其他方法
經過上面介紹可知實例分割在一定程度上依附于目標檢測任務,近年來出現了非常多優秀的算法解決這兩個問題,且都取得了優異的效果。實際上,目標檢測屬于目標級別的任務,這類任務更關注物體級別的特征,對分辨率的需求不高,但需要更多的高級語義信息。而實例分割任務屬于像素級別的任務,這類任務需要給出逐像素的輸出,對分辨率的需求較高,需要更多的細節信息。但是,卻鮮有文章深入分析兩者之間的關聯。這里介紹目前的幾種工作。
HTC[58]一項具有代表性的工作,它采用級聯體系結構逐步完善了兩個任務,并取得了可喜的成就。但是,這種多階段設計帶來了成本相對高的計算量。Cascade R-CNN[59]為每個級聯階段添加了一個分割分支,將級聯架構擴展到實例分段任務。RDS Net[60]設計了雙流網絡在很大程度上克服了實例掩碼的低分辨率,對目標框的嚴重依賴性以及邊界框的定位錯誤。它引入3個模塊即目標框輔助實例掩碼關系模塊,掩碼修剪模塊和掩碼細化目標定位模塊。Embed Mask[61]通過引入建議框嵌入和像素嵌入的概念將基于建議框的方法和基于細分的方法結合在一起,以便根據實例建議框的嵌入相似性將像素分配給實例建議框。
綜上所述,單階段的實例分割算法種類繁雜,解決思路比較開闊,目前從精度和速度上看是最有效的算法,同時也擺脫了檢測框的限制,是未來研究的趨勢。
本小節對文中涉及到的部分實例分割算法進行優缺點比較和性能分析。表1是不同實例分割算法的優缺點對比。表2是不同實例分割算法在COCO (microsoft common objects in context)數據集上的性能對比。本文在最大程度上選擇相同的基礎網絡且沒有引入任何訓練技巧,以保證算法性能比較的公平性。比較的結果均在COCO公開測試數據集上測試,因為COCO數據集是實例分割最常用的數據集,圖片背景復雜,目標種類和數量多,目標尺寸相對較小,有很大難度。算法性能主要比較的參數是精度(COCO評價標準,詳細介紹見3.5)及模型參數量(#Params)和推斷速度(fps)。其中,fps指每秒幀數,值越大算法速度越快,“?”表示未知,學習率規則“1×”表示模型訓練 12 個 epoch(180K iterations),“3×”為 36 個epoch,以此類推。表1和表2主要從兩階段和單階段這兩類對通用場景下的實例分割算法進行分類總結。從精度上看,相同基礎網絡時兩階段普遍優于單階段,且模型所需訓練迭代次數少。從速度上看,單階段則快于兩階段,且精度也是處于平均水平,但以大量訓練迭代次數為代價。因此,應用時需要根據具體需求選擇合適的算法。綜上分析,沒有一種算法可以兼顧精度高和速度快,未來還可以從同時提升實例分割的速度與精度入手。

表1 不同實例分割算法的優缺點對比Table 1 Comparison of the advantages and disadvantages of different instance segmentation algorithms

表2 不同實例分割算法的性能對比Table 2 Performance comparison of different instance segmentation algorithms
實例分割作為像素級別的目標識別任務,目前已廣泛應用在遙感影像[62-67],文字檢測[68-70],人臉檢測[71-72],輔助駕駛系統[73-76],醫療圖像處理[77-78]等各個場景下。
遙感圖像中需要對標的物體進行識別,進而分析與測繪[79]。李瀾[80]將Mask R-CNN應用于高分辨率光學遙感影像的目標檢測和實例分割任務中,目的是在地圖上找到遺漏的地理實體并提高矢量地圖的質量。瑚敏君等[65]在Mask R-CNN原有的特征提取中每個層級的特征圖后再增加一層卷積操作。然后,在原有掩碼預測結構的基礎上增加一個分支實現了高效、準確的高分辨率遙感影像建筑物提取算法。王昌安[79]則用于光遙感影像中近岸艦船的檢測任務。
輔助駕駛系統不僅需要在行駛過程中識別不同的車道線,進行駕駛模式的決策,而且也需要對周圍的車輛、行人等進行分析,判斷周圍的駕駛環境等這些都用到了實例分割[81-82]。鄧琉元等[83]針對無人駕駛中用到的環視相機所呈環形圖像中存在目標幾何畸變難以建模問題,在Mask R-CNN中引入可變形卷積和可變形ROI Pooling來提升網絡對幾何形變的建模能力以實現環視魚眼圖像中準確的交通目標實例分割。蔡英鳳等[73]和田錦等[74]將實例分割模型用于車道線檢測解決了傳統的車道線檢測算法易受光照變化、陰影遮擋等環境干擾的缺陷。最后,所提算法可以完成復雜交通場景下的多車道線實時檢測。除此之外,陳健雄[84]提出實例分割模型也可以有效識別中低速磁浮列車上接觸軌固件的松動狀態,保證了城市軌道交通的安全運行。
醫療圖像處理需要對血管、骨骼、細胞等區域進行分割與檢測,幫助醫生進行診斷和研究[81]。同時降低誤診率和漏診率,所以實例分割也是重要的關鍵技術之一。趙旭[77]研究基于實例分割的乳腺超聲腫瘤識別,分割出乳腺超聲圖像的腫瘤區。鄭楊等[78]在Mask R-CNN中加入空洞卷積完成宮頸細胞圖像分割。吳宇[85]則提出一個級聯的3D椎骨分割網絡。
可見,實例分割應用已經非常廣泛,都是建立在兩階段Mask R-CNN[13]基礎之上并有很好的算法效果。未來,實例分割技術一定會有更大的發展應用前景。
深度學習領域關注的是通過使用計算機算法自動發現數據中的規律性,并通過使用這些規律性來采取一些行動??梢?,數據規模驅動深度學習領域的發展,收集一個大規模的數據集也是實例分割研究中重要的工作。目前,公開的大型數據集大多是由公司、科研團隊或特別舉辦的專業比賽等收集創建的,需要大量人工進行手動標注,時間成本高[86]。本節簡要歸納幾種常用的實例分割數據集及評價指標。
COCO[87]起源于2014年由微軟出資標注的Microsoft COCO數據集,與ImageNet競賽一樣,被視為是計算機視覺領域最受關注和最權威的比賽之一。COCO數據集是一個大型的、豐富的目標檢測,實例分割和字幕數據集。這個數據集以場景理解為目標,主要從復雜的日常場景中截取,圖像中的目標通過精確的分割進行位置的標定。圖像包括91類目標,328 000個影像和2 500 000個標簽。目前為止有實例分割的最大且使用最廣泛的數據集,提供的類別有80類,有超過33萬張圖片,其中20萬張有標注,整個數據集中個體的數目超過150萬個。使用時劃分為訓練集、驗證集和測試集3個部分,已成為比較實例分割算法性能最重要的公開數據集。
Cityscapes[88]是一個大規模城市場景數據集,主要用于語義分割任務,擁有5 000張在城市環境中駕駛場景的圖像(2 975張訓練集,500張驗證集,1 525張測試集)記錄了50個不同城市的街道場景。它具有19個類別的密集像素標注(97%coverage),其中8種類別具有實例級別分割標注。
Mapillary Vistas[89]數據集是一個新建立的,大場景的街景數據集,用于圖像語義分割以及圖像實例分割,旨在進一步開發用于視覺道路場景理解的先進算法。它包括25 000張高分辨率的彩色圖像,分成66個類,其中有37個類別是特定的附加于實例的標簽。對物體的標簽注釋可以使用多邊形進行稠密,精細的描繪。與Cityscapes相比,Mapillary Vistas的精細注釋總量大了5倍,并包含來自世界各地在各種條件下捕獲的圖像,包括不同天氣,季節和時間的圖像。
LVIS[90](large vocabulary instance segmentation)是由Facebook AI Research于2019年建立的大型詞匯實例分割數據集。目前公布的實例分割數據集的目標類別還是較少,與實際應用場景下存在大量(未知)類別相違背。故LVIS收集了164 000張圖像,對1 000多個對象類別標注,共有220萬個高質量的實例分割掩碼標簽。相比于COCO數據集,LVIS人工標注掩碼具有更大的重疊面積和更好的邊界連續性,更精確的掩碼。并且在數據成長尾分布(類別種類多而單類的實例個數少)時仍有很好的訓練效果。
這里以常用COCO數據集的評價指標為例。COCO數據集官方評價標準如表3所示。AP代表所有類別的平均精度,作為最終COCO評價整體標準。AP的定義使用并交比(intersection-overunion, IOU)的標準,即兩個實例掩碼的重疊度。表3中area是指分割掩碼mask中像素的數量。同時AP也計算不同尺度目標如大目標,中目標以及小目標的實例分割精度。

表3 COCO數據集的評價指標Table 3 Evaluation index of COCO dataset
綜合來看,實例分割技術正趨向兼并算法實時性和性能高精度的方向發展。單階段的實例分割在性能上不弱于兩階段的實例分割,但相較于兩階段法的網絡架構更為簡潔,高效且易于訓練。由現存算法的性能比較來看還有提升空間。所以,總體期望發展的方向應該是在追求精度提升的基礎上實現快速實時實例分割,更好地適用于實際應用。此外,
1)筆者認為實例分割與目標檢測,語義分割等其他高級計算機視覺任務可以互惠互利,可重點研究在不同圖像感知任務之間的相互關系。此外,自然語言處理和計算機視覺兩大任務可以彼此互鑒。最近,自然語言處理中常用的Transformer[91,92]在計算機視覺(computer vision, CV)領域已經做了一些初步探索,未來針對CV的特點設計更適配視覺特性的Transformer將會帶來更好的性能提升[93]。
2)目標間遮擋和交疊情況仍然是實例分割最具挑戰性的問題,可借鑒圖卷積神經網絡,膠囊網絡和目標檢測中的推理關系網絡來有效解決遮擋情況下的實例分割問題。
3)目前實例分割只針對單獨的目標,沒有考慮目標間的關系。從目標檢測的經驗來看,圖像中不同目標是具有空間和語義的上下文聯系,這種信息的流動和融合有助于目標檢測精度的提升。實例分割可以借鑒注意力機制,圖神經網絡的方法來建立目標在空間布局以及幾何形狀之間的聯系。
4)從現有算法的精度來看,小目標的實例分割問題仍然是一個挑戰。COCO數據集中定義像素總數小于322為小目標。可見其在圖像中像素面積占比很小,經過多次采樣和池化等定會缺少很多細節。而實例分割是一個需要精確和完整的像素信息才能完成的任務,兩者產生矛盾。未來的研究可以小目標檢測為切入點,結合超分辨率圖像任務、生成對抗網絡、尺度自適應和注意力機制等策略來提高小目標的實例分割精度。
5)實例分割大多是有監督學習,其數據采用人工手動進行像素標注的方式,繁瑣的數據標注耗費大量的人力和時間。為了減少成本,使用自監督學習、弱監督學習方式從已有未標注或少量標注數據中自動生成標簽實現實例分割。也可利用現有的已標注邊界框作為先驗信息輔助鎖定目標范圍。
6)從實際應用的角度,現有網絡設計的復雜度高,占用內存大,速度和準確度之間還不能達到平衡。輕量化的網絡架構,滿足速度快和精度高的需求將是實例分割未來探究的重要內容。