0
TensorMask 密集實(shí)例分割效果示例。左圖:示例圖;右圖:局部放大。圖中可以看到,不僅較大和較小的物體都得到了較為完善的勾畫,物體之間相互遮擋的邊緣也能夠正確地處理。
雷鋒網(wǎng) AI 科技評論按:大家都知道物體檢測算法中有單階段方法和雙階段方法之爭,前者一般運(yùn)算量較低、運(yùn)行速度更快,但后者的準(zhǔn)確率一般更高,適合需要精度的場合。
雙階段物體檢測的標(biāo)桿方法 Faster R-CNN 和 Mask R-CNN 都來自 FAIR 研究員何愷明,而他也在單階段方法的研究上做出了突破,提出了 RetinaNet。不過何愷明組意識到,目前的單階段方法都僅僅針對了預(yù)測邊界框的任務(wù),而在像素級實(shí)例分割方面沒有什么建樹。他們欣然接受了這一挑戰(zhàn),并帶來了這篇論文《TensorMask: A Foundation for Dense Object Segmentation》(TensorMask,密集物體分割的基礎(chǔ)),arxiv.org/abs/1903.12174。雷鋒網(wǎng) AI 科技評論把論文主要內(nèi)容概要介紹如下。
「滑動(dòng)窗口」,在圖像中不同的位置密集放置許多不同的窗口,并分別在這些窗口里嘗試尋找物體的做法,是計(jì)算機(jī)視覺領(lǐng)域最早、也最成功的概念之一,我們也自然地在卷積神經(jīng)網(wǎng)絡(luò)中見到了這種范式。然而,雖然如今的表現(xiàn)最好的目標(biāo)檢測系統(tǒng)仍然依靠預(yù)測滑動(dòng)窗口來生成最初的候選區(qū)域,緊接著我們會(huì)在這些候選區(qū)域上進(jìn)行第二階段的優(yōu)化過程(重新判別)來達(dá)到更高的準(zhǔn)確率,比如 Faster R-CNN 和 Mask R-CNN 就都采用了這樣的設(shè)計(jì),然后分別在邊界框的物體檢測以及像素級實(shí)例分割任務(wù)中取得了優(yōu)秀的表現(xiàn)。在 COCO 數(shù)據(jù)集的物體檢測競賽中霸榜的正是這類方法。
有一些近期的邊界框物體檢測器拋棄了第二階段的優(yōu)化過程,完全關(guān)注直接預(yù)測滑動(dòng)窗口,比如 SSD、Y YOLO 和 RetinaNet(同樣來自何愷明組,解讀文章見這里),這些方法不僅重新引發(fā)了關(guān)注,也帶來了令人期待的結(jié)果。相比之下,我們并沒能見到什么單階段方法在像素級實(shí)例分割任務(wù)中做出大的改進(jìn),達(dá)到 SSD、RetinaNet 那樣級別的性能。為什么邊界框預(yù)測中單階段密集檢測方法那么火熱,但卻沒有怎么在實(shí)例分割中見到呢?這個(gè)問題從基礎(chǔ)科研角度非常地令人好奇。這項(xiàng)研究的目標(biāo)就是解答這個(gè)問題,并為單階段密集實(shí)例分割的探索做一些基礎(chǔ)工作。
作者們的主要發(fā)現(xiàn)是,定義密集遮罩表征的核心概念,以及這些概念在神經(jīng)網(wǎng)絡(luò)中的高效實(shí)現(xiàn)方法都是缺乏的。邊界框有固定的、尺度無關(guān)的低維表征,相比之下,分割遮罩可以從更豐富、更結(jié)構(gòu)化的表征中受益。舉例說明,每個(gè)遮罩自己就是一個(gè)二維空間映射圖,使用更大的二維空間映射圖也可以讓更大目標(biāo)的遮罩受益。如果想要讓密集實(shí)例分割變得可能,為密集遮罩開發(fā)高效的表征是關(guān)鍵的一步。
為了解決這個(gè)問題,作者們在這篇論文中定義了一系列用高維張量表征遮罩的核心概念,接下來也就可以借助這些概念探索用于密集遮罩預(yù)測的新網(wǎng)絡(luò)架構(gòu)。為了展示這種新的表征的優(yōu)勢,作者們展示了數(shù)種可能的網(wǎng)絡(luò)架構(gòu)并進(jìn)行了實(shí)驗(yàn)。作者們把提出的框架稱為「TensorMask」,基于它,作者們建立了第一個(gè)表現(xiàn)可以比擬 Mask R-CNN 的基于滑動(dòng)窗口的單階段密集實(shí)例分割系統(tǒng)。
TensorMask 表征的關(guān)鍵思想是使用結(jié)構(gòu)化的四維向量,在中間域中表征遮罩。DeepMask 和 InstanceFCN 等之前的研究針對的是一個(gè)類似的問題,對未知類別的對象位置候選區(qū)域進(jìn)行分割,它們都使用的是非結(jié)構(gòu)化的三維張量,其中把遮罩打包進(jìn)了第三層的「通道」坐標(biāo)。與表征對象位置的坐標(biāo)不同,通道坐標(biāo)中沒有明確的圖形含義,也就很難操作。由于這些方法中使用了很基本的通道表征,他們也就失去了使用結(jié)構(gòu)化的數(shù)組把遮罩表示為二維實(shí)體、從而獲得改善的機(jī)會(huì);這一區(qū)別就像是多層感知機(jī)和卷積網(wǎng)絡(luò)中表征二維圖像的區(qū)別一樣。
與之前這些面向通道的方案不同,這篇論文的作者們提出的方法運(yùn)用了形狀(V,U,H,W)的四維矩陣,其中(H,W)表示對象的位置,(V,U)表示遮罩的相對位置,這四者都是幾何子張量,也就是說,它們都具有定義完善的坐標(biāo)軸,也都帶有關(guān)于圖像的幾何信息。這種做法把用非結(jié)構(gòu)化的坐標(biāo)編碼遮罩替換為使用結(jié)構(gòu)化的幾何子張量,也就讓定義新的運(yùn)算和網(wǎng)絡(luò)結(jié)構(gòu)變得可能。新定義的網(wǎng)絡(luò)可以直接在(V,U)子張量上運(yùn)算,利用其中的幾何信息,包括協(xié)調(diào)變換、上下采樣以及使用尺寸金字塔。
通過引入 TensorMask 框架,作者們基于一組按大小排列的四維張量開發(fā)了一個(gè)金字塔結(jié)構(gòu),并把它稱作張量雙金字塔。傳統(tǒng)的特征金字塔是一組不同尺寸的特征圖列表,相比之下,張量雙金字塔包含了一系列四維張量,尺寸從(V,U,H,W)到(2kV,2kU,1/2k H,1/2k W),其中 k 表示尺寸索引。這種結(jié)構(gòu)可以讓(H,W)和(V,U)兩組幾何子張量分別形成金字塔形,不過兩者的縮放方向相反。這是一種很自然的設(shè)計(jì),對應(yīng)了理想中較大的對象需要高分辨率的遮罩,但空間位置變化較少(較大的 k 值),以及較小的對象只需要低分辨率的遮罩,但空間位置就較為細(xì)分(較小的 k 值)。
作者們把這些組件融合進(jìn)參考 RetinaNet 設(shè)計(jì)的網(wǎng)絡(luò)主干和訓(xùn)練過程中,新提出的密集遮罩預(yù)測器也就可以拓展網(wǎng)絡(luò)中原先的邊界框預(yù)測器的功能。作者們仔細(xì)設(shè)計(jì)了多組對照實(shí)驗(yàn),在其中評估了 TensorMask 框架的有效性,并展示了顯式地捕捉幾何結(jié)構(gòu)這一設(shè)定的重要性。最后,作者們也把 TensorMask 和 Mask R-CNN 的結(jié)果進(jìn)行了對比。這些令人欣喜的結(jié)果都表明,論文中提出的框架已經(jīng)為單階段密集滑動(dòng)窗口實(shí)例分割的未來研究鋪平了道路。
TensorMask 和 Mask R-CNN 的分割結(jié)果對比,網(wǎng)絡(luò)主干是 ResNet-101-FPN —— 作者們自信地表示,兩者結(jié)果定性和定量的相似度都很高,他們邀請大家猜猜哪些結(jié)果是 TensorMask 的,哪些是 Mask R-CNN 的。
在 COCO 上的定量實(shí)驗(yàn)表明,Mask R-CNN 仍然取得了更高的 mAP 成績,這并不令人意外。不過,TensorMask 目前也并沒有運(yùn)行速度優(yōu)勢,ResNet-101-FPN 主干的 TensorMask 在英偉達(dá) V100 GPU 上的運(yùn)行速度為 0.38 秒每圖像(Mask R-CNN 只有 0.09 秒每圖像)。作者們的解釋是,TensorMask (作為單階段方法)在密集的滑動(dòng)窗口中(數(shù)量大于 100k)預(yù)測遮罩造成了很高的計(jì)算開銷,相比之下 Mask R-CNN (作為雙階段方法)只需要在第二階段選擇出的窗口中預(yù)測遮罩,需要預(yù)測的窗口數(shù)量很可能不大于 100 個(gè)。作者們表示,加速的辦法自然是有的,不過這篇論文的目的是完善基礎(chǔ)、探路,加速優(yōu)化的辦法另外再談。
論文原文(更多細(xì)致的對照實(shí)驗(yàn),大量對比圖)見:https://arxiv.org/abs/1903.12174
雷鋒網(wǎng) AI 科技評論編譯。
雷峰網(wǎng)版權(quán)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。