<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>
"); //-->

博客專(zhuān)欄

EEPW首頁(yè) > 博客 > 角網(wǎng)絡(luò )——目標檢測(文后有paper地址及源碼)

角網(wǎng)絡(luò )——目標檢測(文后有paper地址及源碼)

發(fā)布人:CV研究院 時(shí)間:2021-11-10 來(lái)源:工程師 發(fā)布文章

1.jpg

今天分享的技術(shù)提出了一種新目標檢測方法,用單個(gè)卷積網(wǎng)絡(luò )將目標邊界框檢測為一對關(guān)鍵點(diǎn)(即邊界框的左上角和右下角)。通過(guò)將目標檢測為成對關(guān)鍵點(diǎn),消除現有的one stage檢測器設計中對一組anchors的需要。除此之外,還引入了corner pooling,一種新型的池化層,可以幫助網(wǎng)絡(luò )更好的定位邊界框的角點(diǎn)。最終CornerNet在MS COCO上實(shí)現了42.1%的AP,優(yōu)于所有現有的one stage檢測器。

背景

基于卷積神經(jīng)網(wǎng)絡(luò )的目標檢測器已經(jīng)在各種具有挑戰性的基準測試數據集中有了最新成果?,F有技術(shù)方法的一個(gè)共同組成部分是anchor boxes,包含各種尺寸和寬高比的邊界檢測框,目標檢測的候選框。Anchor boxes廣泛用于one stage檢測器中,它可以獲得與two stage檢測器相當的檢測結果,同時(shí)效率更高。 

One stage檢測器將anchor boxes密集分布在圖像上,通過(guò)對anchor boxes進(jìn)行評分,并通過(guò)回歸來(lái)改進(jìn)其坐標來(lái)生成最終的邊界框預測。但anchor boxes的使用有兩個(gè)缺點(diǎn)。 

通常需要一組非常多的anchor boxes,比如在DSSD中超過(guò)4萬(wàn)個(gè),在RetinaNet中超過(guò)10多萬(wàn)個(gè), 這是因為訓練器被訓練以分類(lèi)每個(gè)anchor boxes是否與ground truth充分重疊,并且需要大量anchor boxes以確保與大多數ground truth充分重疊。結果,只有一小部分anchor boxes與ground truth重疊; 這在正負樣本之間造成了巨大的不平衡,減慢了訓練速度;

Anchor boxes的使用引入了許多超參數和設計選擇。這些選擇主要是通過(guò)ad-hoc啟發(fā)式方法進(jìn)行的,并且當與多尺度架構相結合時(shí)可能會(huì )變得更加復雜,其中單個(gè)網(wǎng)絡(luò )在多個(gè)分辨率下進(jìn)行單獨預測,每個(gè)尺度使用不同的特征和它自己的一組anchor boxes。

新技術(shù)亮點(diǎn)

今天要分享的CornerNet,這是一種新的one stage目標檢測方法,可以消除anchor boxes。,將一個(gè)目標物體檢測為一對關(guān)鍵點(diǎn)(即:邊界框的左上角和右下角),使用單個(gè)卷積網(wǎng)絡(luò )來(lái)預測同一物體類(lèi)別的所有實(shí)例的左上角的熱圖,所有右下角的熱圖,以及每個(gè)檢測到的角點(diǎn)的嵌入向量。 

嵌入用于對屬于同一目標的一對角點(diǎn)進(jìn)行分組——訓練網(wǎng)絡(luò )以預測它們的類(lèi)似嵌入。我們的方法極大地簡(jiǎn)化了網(wǎng)絡(luò )的輸出,并且無(wú)需設計anchor boxes。新方法受到Newell等人在多人姿態(tài)估計上下文中關(guān)聯(lián)嵌入的啟發(fā),下圖說(shuō)明了新方法的整體流程:

2.jpg

CornerNet的另一個(gè)新穎組件是corner pooling,一種新的池化層方式,可幫助卷積網(wǎng)絡(luò )更好的定位邊界框的角點(diǎn)。邊界框的一角通常在目標之外,參考圓形的情況以及下圖的例子。

3.jpg

如上圖這種情況,角點(diǎn)不能根據當前的信息進(jìn)行定位。相反,為了確定像素位置是否有左上角,需要水平地向右看目標的最上面邊界,垂直地向底部看物體的最左邊邊界。 

這就激發(fā)了新方法的corner pooling layer:它包含兩個(gè)特征圖;在每個(gè)像素位置,它最大池化從第一個(gè)特征映射到右側的所有特征向量,最大池化從第二個(gè)特征映射下面的所有特征向量,然后將兩個(gè)池化結果一起添加,如下圖所示:

4.jpg

動(dòng)機

假設了兩個(gè)原因,為什么檢測角點(diǎn)會(huì )比檢測邊界框中心或proposals好?

邊界框的中心可能更難以定位,因為它取決于目標的所有4個(gè)邊,而定位角取決于2邊,因此更容易,甚至更多的corner pooling,它編碼一些明確的關(guān)于角點(diǎn)定義的先驗信息;

角點(diǎn)提供了一種更有效的方式來(lái)密集地離散邊界框的空間,只需要用O(wh)角點(diǎn)來(lái)表示O(w^2*h^2)可能的anchor boxes。

新方法證明了CornerNet對MS COCO數據集的有效性。CornerNet實(shí)現了42.1%的AP,優(yōu)于所有現有的one-stage檢測器。此外,通過(guò)ablation studies,發(fā)現Corner pooling對于CornerNet的卓越性能起到至關(guān)重要的作用。

相關(guān)技術(shù)

Two-stage目標檢測器

Two-stage目標檢測由R-CNN首次引入并推廣。Two-stage檢測器生成一組稀疏的感興趣區域(RoIs),并通過(guò)網(wǎng)絡(luò )對每個(gè)區域進(jìn)行分類(lèi)。R-CNN使用低層次視覺(jué)算法生成(RoIs),然后從圖像中提取每個(gè)區域,由ConvNet獨立處理,這將導致大量計算冗余。

后來(lái)SPP-Net和Fast R-CNN改進(jìn)了R-CNN,設計了一個(gè)特殊的池化層(金字塔池化),將每個(gè)區域從feature map中池化。然而,兩者仍然依賴(lài)于單獨的proposals算法,不能進(jìn)行端到端訓練。

Faster-RCNN通過(guò)引入區域生成網(wǎng)絡(luò )(RPN)來(lái)去除低層次的proposals算法,RPN從一組預先確定的候選框中生成proposals。這不僅使檢測器更加高效,通過(guò)RPN與檢測網(wǎng)絡(luò )的聯(lián)合訓練,可實(shí)現端到端訓練。

R-FCN將全連接子檢測網(wǎng)絡(luò )替換為完全卷積子檢測網(wǎng)絡(luò ),進(jìn)一步提高了Faster R-CNN的檢測效率。其他的工作主要集中在結合子類(lèi)別信息,用更多的上下文信息在多個(gè)尺度上生成目標的proposals,選擇更好的特征,提高速度,并行處理和更好的訓練過(guò)程。

One-stage目標檢測器

YOLO和SSD推廣了one-stage方法,該方法消除了RoI池化步驟,并在單個(gè)網(wǎng)絡(luò )中檢測目標。

One-stage檢測器通常比two-stage檢測器計算效率更高,同時(shí)在不同的具有挑戰性的基準上保持著(zhù)具有競爭性的性能。SSD算法將anchor boxes密集地放置在多個(gè)尺度的feature maps之上,直接對每個(gè)anchor boxes進(jìn)行分類(lèi)和細化。YOLO直接從圖像中預測邊界框坐標,后來(lái)在YOLO V2中,通過(guò)使用anchor boxes進(jìn)行了改進(jìn)。

DSSD和RON采用了類(lèi)似沙漏的網(wǎng)絡(luò ),使它們能夠通過(guò)跳躍連接將低級和高級特性結合起來(lái),從而更準確地預測邊界框。

在RetinaNet出現之前,這些one-stage檢測器的檢測精度仍然落后于two-stage檢測器。在RetinaNet中,作者認為密集的anchor boxes在訓練中造成了正樣本和負樣本之間的巨大不平衡。這種不平衡導致訓練效率低下,從而導致結果不佳,他們提出了一種新的loss——Focal Loss,來(lái)動(dòng)態(tài)調整每個(gè)anchor boxes的權重,并說(shuō)明了他們的one-stage檢測器檢測性能優(yōu)于two-stage檢測器。

RefineDet建議對anchor boxes進(jìn)行過(guò)濾,以減少負樣本的數量,并對anchor boxes進(jìn)行粗略的調整。

DeNet是一種two-stage檢測器,不使用anchor boxes就能生成RoIs。它首先確定每個(gè)位置屬于邊界框的左上角、右上角、左下角或右下角的可能性。然后,它通過(guò)列舉所有可能的角點(diǎn)組合來(lái)生成RoI,并遵循標準的two-stage方法對每個(gè)RoI進(jìn)行分類(lèi)。

新提出的方法和DeNet很不一樣。首先,DeNet不識別兩個(gè)角是否來(lái)自同一目標,并依賴(lài)子檢測網(wǎng)絡(luò )來(lái)拒絕糟糕的RoI。相比之下,新方法是一種one-stage方法,使用單個(gè)卷積網(wǎng)絡(luò )來(lái)檢測和分組角點(diǎn)。其次,DeNet在人工確定的位置上的區域提取特征進(jìn)行分類(lèi),而新方法不需要任何特征選擇步驟。然后,引入corner pooling,一種新型的用于增強角點(diǎn)檢測的layer。

新方法受到Newell等人在多人姿態(tài)估計上下文中關(guān)聯(lián)嵌入的啟發(fā)。Newell等人提出了一種在單個(gè)網(wǎng)絡(luò )中檢測和分組人類(lèi)關(guān)節的方法。在他們的方法中,每個(gè)檢測到的人類(lèi)關(guān)節都有一個(gè)嵌入向量。這些關(guān)節是根據它們嵌入的距離來(lái)分組的。

本次新技術(shù)是第一個(gè)將目標檢測任務(wù)定義為同時(shí)檢測和分組角點(diǎn)的任務(wù),另一個(gè)新穎之處在于corner pooling layer,它有助于更好定位角點(diǎn),還對沙漏結構進(jìn)行了顯著(zhù)地修改,并添加了新的focal loss的變體,以幫助更好地訓練網(wǎng)絡(luò )。

新算法框架愛(ài)

下圖提供了CornerNet的概述。使用沙漏網(wǎng)絡(luò )作為CornerNet的骨干網(wǎng)絡(luò )。沙漏網(wǎng)絡(luò )之后是兩個(gè)預測模塊:一個(gè)模塊用于左上角,另一個(gè)模塊用于右下角。每個(gè)模塊都有自己的corner pooling模塊,在預測熱圖、嵌入和偏移之前,池化來(lái)自沙漏網(wǎng)絡(luò )的特征。與許多其他物體探測器不同,不使用不同尺度的特征來(lái)檢測不同大小的物體,只將兩個(gè)模塊應用于沙漏網(wǎng)絡(luò )的輸出。

5.jpg

檢測角點(diǎn)

預測兩組熱圖,一組用于左上角,另一組用于右下角。每組熱圖具有C個(gè)通道,其中C是分類(lèi)的數量,并且大小為H×W。沒(méi)有背景通道。每個(gè)通道都是一個(gè)二進(jìn)制掩碼,用于表示該類(lèi)的角點(diǎn)位置。

6.jpg

上圖,用于訓練的“Ground-truth”熱圖。在正位置半徑范圍內(橙色圓圈)的方框(綠色虛線(xiàn)矩形)仍然與地ground-truth(紅色實(shí)心矩形)有很大的重疊。

分組角點(diǎn)

圖像中可能出現多個(gè)目標,因此可能檢測到多個(gè)左上角和右下角。需要確定左上角和右下角的一對角點(diǎn)是否來(lái)自同一個(gè)目標邊界框,新方法受到Newell等人提出的用于多人姿態(tài)估計任務(wù)的關(guān)聯(lián)嵌入方法的啟發(fā)。Newell等人檢測所有人類(lèi)關(guān)節,并為每個(gè)檢測到的關(guān)節生成嵌入,他們根據嵌入之間的距離將節點(diǎn)進(jìn)行分組。

關(guān)聯(lián)嵌入的思想也適用于今天說(shuō)的的任務(wù),網(wǎng)絡(luò )預測每個(gè)檢測到的角點(diǎn)的嵌入向量,使得如果左上角和右下角屬于同一個(gè)邊界框,則它們的嵌入之間的距離應該小。然后,可以根據左上角和右下角嵌入之間的距離對角點(diǎn)進(jìn)行分組,嵌入的實(shí)際值并不重要,僅使用嵌入之間的距離來(lái)對角點(diǎn)進(jìn)行分組。

Corner Pooling

如第個(gè)圖,通常沒(méi)有局部視覺(jué)證據表明存在角點(diǎn)。要確定像素是否為左上角,需要水平地向右看目標的最上面邊界,垂直地向底部看物體的最左邊邊界。因此,提出corner Pooling通過(guò)編碼顯式先驗知識來(lái)更好地定位角點(diǎn)。

7.jpg8.jpg9.jpg

預測模塊從一個(gè)修改后的殘塊開(kāi)始,其中將第一個(gè)卷積模塊替換為corner pooling模塊,修改后的殘差塊后面跟著(zhù)一個(gè)卷積模塊,新方法有多個(gè)分支用于預測熱圖、嵌入和偏移量。

預測模塊的結構如上圖所示。模塊的第一部分是殘差模塊的修改版本。在這個(gè)修改后的殘差模塊中,將第一個(gè)3×3的卷積模塊替換為一個(gè)corner pooling模塊。這個(gè)殘差模塊,首先通過(guò)具有128個(gè)通道的2個(gè)3×3卷積模塊的主干網(wǎng)絡(luò )處理特征,然后應用一個(gè)corner pooling層。殘差模塊之后,將池化特征輸入具有256個(gè)通道的3×3的Conv-BN層,然后加上反向projection shortcut。修改后的殘塊,后跟一個(gè)具有256個(gè)通道的3×3的卷積模塊,和256個(gè)通道的3個(gè)Conv-ReLU-Conv層來(lái)產(chǎn)生熱圖,嵌入和偏移量。

沙漏網(wǎng)絡(luò )

CornerNet使用沙漏網(wǎng)絡(luò )作為其骨干網(wǎng)絡(luò )。它是一個(gè)全卷積神經(jīng)網(wǎng)絡(luò ),由一個(gè)或多個(gè)沙漏模塊組成。沙漏模塊首先通過(guò)一系列卷積層和最大池化層對輸入特性進(jìn)行下采樣。然后通過(guò)一系列的上采樣和卷積層將特征上采樣回原來(lái)的分辨率。由于細節在最大池化層中丟失,因此添加了跳過(guò)層用來(lái)將細節帶回到上采樣的特征。沙漏模塊在一個(gè)統一的結構中捕獲全局和局部特征。當多個(gè)沙漏模塊堆積在網(wǎng)絡(luò )中時(shí),沙漏模塊可以重新處理特征以獲取更高級別的信息。這些特性使沙漏網(wǎng)絡(luò )成為目標檢測的理想選擇。事實(shí)上,許多現有的檢測器已經(jīng)采用了類(lèi)似沙漏網(wǎng)絡(luò )的網(wǎng)絡(luò )。

新方法的沙漏網(wǎng)絡(luò )由兩個(gè)沙漏組成,對沙漏模塊的結構做了一些修改。不使用最大池,而是使用步長(cháng)2來(lái)降低特征分辨率,減少了5倍的特征分辨率,并增加了特征通道的數量。當對特征進(jìn)行上采樣時(shí)用了兩個(gè)殘差模塊,然后是一個(gè)最近的相鄰上采樣,每個(gè)跳躍連接還包含兩個(gè)殘差模塊。沙漏模塊中間有4個(gè)512通道的殘差模塊,在沙漏模塊之前,使用128個(gè)通道7×7的卷積模塊,步長(cháng)為2,4倍減少的圖像分辨率,后跟一個(gè)256個(gè)通道,步長(cháng)為2的殘差塊。

新方法還在訓練時(shí)增加了中間監督。但沒(méi)有向網(wǎng)絡(luò )中添加反向中間預測,因為發(fā)現這會(huì )損害網(wǎng)絡(luò )的性能,在第一個(gè)沙漏模塊的輸入和輸出,應用了一個(gè)3×3的Conv-BN模塊。然后通過(guò)元素級的加法合并它們,后跟一個(gè)ReLU和一個(gè)具有256個(gè)通道的殘差塊,然后將其用作第二個(gè)沙漏模塊的輸入,沙漏網(wǎng)絡(luò )的深度為104,與許多其他最先進(jìn)的檢測器不同,只使用整個(gè)網(wǎng)絡(luò )最后一層的特征來(lái)進(jìn)行預測。

實(shí)驗結果

10.jpg

示例邊界框預測覆蓋在角點(diǎn)的預測熱圖上

在MS COCO test-dev上,CornerNet優(yōu)于其他所有one-stage檢測器

11.jpg

論文鏈接:https://arxiv.org/abs/1808.01244

代碼鏈接:https://github.com/umich-vl/CornerNet

*博客內容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀(guān)點(diǎn),如有侵權請聯(lián)系工作人員刪除。

矢量控制相關(guān)文章:矢量控制原理


關(guān)鍵詞: 深度學(xué)習

相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>