加入極市專業(yè)CV交流群,與6000 來自騰訊,華為,百度,北大,清華,中科院等名企名校視覺開發(fā)者互動交流!更有機會與李開復老師等大牛群內互動! 同時提供每月大咖直播分享、真實項目需求對接、干貨資訊匯總,行業(yè)技術交流。關注 極市平臺 公眾號 ,回復 加群,立刻申請入群~ 目前,研究團隊已將代碼及訓練好的模型全部開源,包括 Res50, Res101 base 的 Mask R-CNN, Cascade Mask R-CNN, SSD 等,未來還將有更多模型開源,如 yolact 等。該方法的操作非常簡單,目前已發(fā)布為 pip 包,只需 python 中加一行代碼,import instaboost,換一個 dataloader 函數(shù)就可以在 COCO 實例分割數(shù)據(jù)集上實現(xiàn)顯著的性能提升。近年來,基于 CNN 的深度學習算法,如 Mask R-CNN 等,在實例分割任務中有了非常廣泛的應用。但是出于像素級別的標注成本高,周期長,難度大等原因,這些深度學習框架的潛力因為缺少大量的訓練數(shù)據(jù)而難以被充分挖掘出來。此前,Google 研究團隊曾研究利用 bounding box 標簽,運用強化學習進行數(shù)據(jù)增強,并獲得了一定提升。不過,在實例分割領域,如何利用 mask 標簽在 COCO 數(shù)據(jù)集上獲得提升,仍是一個需要探索的問題。然而實例分割這種像素級的分類要比目標檢測難很多,對應的數(shù)據(jù)增強也要困難很多,這主要體現(xiàn)在它并不能隨意把目標切割并移到另外的背景上,因為它們對分割結果也有很大的影響。來自上海交通大學 MVIG 實驗室的研究人員在實例分割應用中對其進行改進優(yōu)化,成功的將模型的實例分割精度大幅提升,同時也能實現(xiàn)目標檢測的提升。論文地址:https:///abs/1908.07801 代碼地址:https://github.com/GothicAi/InstaBoost 演示地址:https:///iFsmmHUGy0g
實例分割任務中的數(shù)據(jù)增強早期一些方法使用 domain adaptation 等思路,將其他領域的數(shù)據(jù)作為信息來源輔助數(shù)據(jù)增強,但是這些方法沒有充分利用訓練集的 mask 標注信息。近期一些研究使用基于 crop-paste 的方法在目標檢測任務中取得了不錯的效果。簡單來說,這些方法將物體按照 mask 標注的信息從原圖片中剪下來,然后粘貼到一個隨機的背景圖片上。但是研究者發(fā)現(xiàn)這種方法在分割任務中,由于實例和背景契合程度較差,在實驗中表現(xiàn)比 baseline 要差。為了解決這一問題,一些論文提出了使用 context model 去為二者一致性打分,但是這種該方法計算成本過高,難以在實際場景中應用。研究者在這篇論文中提出了兩種遞進的實例層面的數(shù)據(jù)增強算法:Random InstaBoost 和 Map-guided InstaBoost。這類算法極大地提高了檢測和分割精度。Matting 和 Inpainting在將圖片前景和背景按照標注進行分離的過程中,如果完全按照標注去切割前景,前景的邊界處會呈不自然的多邊形鋸齒狀,這與 COCO 數(shù)據(jù)標注方式有關。為了解決這一問題,研究者使用《A global sampling method for alpha matting》一文中提出的方法對前景輪廓做 matting 處理,以得到與物體輪廓契合的邊界。在前景背景分離后,背景上會存在若干個空白區(qū)域,這些區(qū)域可以使用 inpainting 算法進行填補。論文中使用了《Navier-stokes, fluid dynamics, and image and videoinpainting》文章中提出的 inpainting 算法。從左至右:原圖,inpainting 處理后的背景,matting 處理后的前景。
Random InstaBoost為了盡可能保證粘貼后前景和背景融合的契合程度,直覺上來說將前景粘貼到原位置的附近是最可靠的。Random InstaBoost 方法即是在上述先驗的判斷下提出的。研究者通過定義一個四元數(shù) (tx, ty, s, r) 來映射前景在數(shù)據(jù)增強前后的變換。四個參數(shù)從左至右分別表示了水平位移,垂直位移,放縮程度和旋轉角度。將這四個參數(shù)在 (0, 0, 1, 0) 附近進行獨立的隨機擾動,即可生成一系列符合外觀一致性的增強圖片。Map-guided InstaBoost在 Random InstaBoost 方法中,前景的中心位置 (x,y) 被嚴格限制在了原位置 (x0,y0) 附近。為了解決這一問題,作者提出了使用外觀一致性熱度圖(appearance consistency heatmap)來引導前景中心粘貼的位置。公式中,(cx, cy) 表示實例的中心坐標,Ci 表示第 i 個輪廓線,wi 表示其對應的權重,i=1 表示最內部的輪廓線。輪廓線通過將實例輪廓膨脹后取差集獲得。如下圖所示,內外黑色區(qū)域之前的三個不同深度區(qū)域即為果盤的三個輪廓線。在 w 的取值上,我們按照先驗,規(guī)定越靠近實例影響越大,權重越大,即 w1>w2>w3。外觀距離定義為,外觀描述符之間局部外觀一致性的度量。由于我們已經(jīng)定義了具有三個輪廓區(qū)域和相應權重關聯(lián)描述符,D1=D(c1x, c1y) 和 D2=D(c2x, c2y) 之間的外觀距離被定義為:其中 Ik(x, y) 表示圖片 k 在 (x, y) 坐標像素點的 RGB 值,Δ可以表示任何距離公式,在實驗中作者使用了歐氏距離。對于部分坐標點移出圖片的情況,我們將其距離定義為無窮大。通過固定 D0 為實例的原始位置,遍歷圖片中其余像素點,計算背景上所有可能的 d(D, D0),并通過下列公式將其歸一化:其中 M=max(d(D, D0)),m=min(d(D, D0))。通過將 h(·) 映射到背景圖片上的每一個像素,即可獲得一個熱度圖。通過熱度與概率之間的映射,可以使用蒙特卡洛方法進行采樣,得到高外觀一致性的粘貼位置。下圖為幾則熱度圖與增強后的實例。實驗結果在實驗過程中,作者使用 Mask R-CNN 和 Cascade R-CNN 兩個框架在 COCO 數(shù)據(jù)集上分別進行了測試,測試結果如下圖所示。結果顯示,在目標檢測和實例分割任務上,InstaBoost 在 mAP 標準下最高帶來 4mAP 和 2.2mAP 的提升。研究人員還使用 Mask R-CNN 在 VOCSDS 數(shù)據(jù)集上進行實驗,目標檢測和實例分割提升分別是 4.2mAP 和 3.9mAP,仍舊十分可觀。隨后,研究人員從速度和魯棒性方面將 InstaBoost 與現(xiàn)有方法進行對比。從速度上來看,InstaBoost 可以作為在線算法嵌入到 dataloader 內部,在 Mask R-CNN 上對比,使用前后每輪迭代僅增加了 0.03s 的時間成本。而使用 context model 的算法,需要對特定數(shù)據(jù)集預先進行訓練等操作,花費大量額外時間,并且難以作為在線算法內嵌到代碼框架內。從魯棒性的角度來看,傳統(tǒng)的 Mask R-CNN 的框架,在訓練到 24 個 Epoch 的時候,出現(xiàn)比較嚴重的過擬合現(xiàn)象,精度開始下降。使用 InstaBoost 之后,模型在 48 個 Epoch 之后精度仍然呈上升趨勢。說明 InstaBoost 很大程度上提升了分割框架的魯棒性。為了更直觀的反應 InstaBoost 對實例分割效果的提升,這里列出部分可視化對比結果:-完-
|