无码人妻h动漫中文字幕,伦埋琪琪电影院久久,国产剧情av麻豆香蕉精品 ,最近中文字幕mv免费看,无遮挡18禁啪啪免费观看,红尘影院手机在线观看 ,japan丰满人妻hd肉感,中国老太老妇xx对白

R-FCN、Mask RCNN、YoLo、SSD、FPN、RetinaNet …你都掌握了嗎?一文總結(jié)目標(biāo)識(shí)別必備經(jīng)典模型(二) 看熱訊

時(shí)間:2023-03-05 17:14:15 來源: 機(jī)器之心


The following article is from 機(jī)器之心SOTA模型 Author 機(jī)器之心SOTA模型


(相關(guān)資料圖)

機(jī)器之心專欄

本專欄將逐一盤點(diǎn)自然語言處理、計(jì)算機(jī)視覺等領(lǐng)域下的常見任務(wù),并對(duì)在這些任務(wù)上取得過 SOTA 的經(jīng)典模型逐一詳解。前往 SOTA!模型資源站(sota.jiqizhixin.com)即可獲取本文中包含的模型實(shí)現(xiàn)代碼、預(yù)訓(xùn)練模型及 API 等資源。

本文將分 3 期進(jìn)行連載,共介紹 17個(gè)在目標(biāo)檢測任務(wù)上曾取得 SOTA 的經(jīng)典模型。

第 1 期:R-CNN、SPP-Net、Fast R-CNN、Faster R-CNN、OHEM

第 2 期:R-FCN、Mask RCNN、YoLo、SSD、FPN、RetinaNet

第 3 期:RRC detection、CornerNet、M2Det、FOCS、ObjectBox

您正在閱讀的是其中的第 2 期。前往 SOTA!模型資源站(sota.jiqizhixin.com)即可獲取本文中包含的模型實(shí)現(xiàn)代碼、預(yù)訓(xùn)練模型及 API 等資源。

第 1 期回顧:

本期收錄模型速覽

模型SOTA!模型資源站收錄情況模型來源論文
R-FCN

https://sota.jiqizhixin.com/project/rfcn

收錄實(shí)現(xiàn)數(shù)量:47

支持框架:PyTorch,TensorFlow等

R-FCN: Object Detection via Region-based Fully Convolutional Networks
Mask RCNN

https://sota.jiqizhixin.com/project/mask-r-cnn

收錄實(shí)現(xiàn)數(shù)量:13

Mask R-CNN
YoLo

https://sota.jiqizhixin.com/project/yolo-2017

收錄實(shí)現(xiàn)數(shù)量:3

支持框架:PaddlePaddle、TensorFlow等

You Only Look Once: Unified, Real-Time Object Detection
SSD

https://sota.jiqizhixin.com/project/ssd-4

收錄實(shí)現(xiàn)數(shù)量:27

SSD: Single Shot Multibox Detector
FPN

https://sota.jiqizhixin.com/project/fpn-4

收錄實(shí)現(xiàn)數(shù)量:4

支持框架:PaddlePaddle,TensorFlow等

Feature Pyramid Networks for Object Detection
RetinaNet

https://sota.jiqizhixin.com/project/retinanet-2021

收錄實(shí)現(xiàn)數(shù)量:210

Focal Loss for Dense Object Detection

目標(biāo)檢測作為計(jì)算機(jī)視覺的基本問題之一,是許多其他計(jì)算機(jī)視覺任務(wù)的基礎(chǔ),如實(shí)例分割、圖像字幕、對(duì)象跟蹤等。簡單來說,目標(biāo)檢測就是對(duì)圖片中物體正確分類,同時(shí)找到物體的具體位置,具體是指識(shí)別圖片中有哪些物體以及物體的位置(坐標(biāo)位置)的技術(shù)。在互聯(lián)網(wǎng)、大數(shù)據(jù)、人工智能等技術(shù)的發(fā)展浪潮下,目標(biāo)檢測展現(xiàn)出巨大的應(yīng)用價(jià)值,受到工業(yè)界、學(xué)術(shù)界越來越多的關(guān)注。

目標(biāo)檢測的發(fā)展大致經(jīng)歷了兩個(gè)歷史時(shí)期:" 傳統(tǒng)的目標(biāo)檢測時(shí)期 " ( 2014年以前 ) 和 " 深度學(xué)習(xí)的目標(biāo)檢測時(shí)期 " ( 2014年以后 )。本文重點(diǎn)回顧深度學(xué)習(xí)時(shí)代的經(jīng)典模型。在深度學(xué)習(xí)時(shí)代,目標(biāo)檢測可以分為兩類:" two-stage detection " 和 " one-stage detection ",前者將檢測框定為一個(gè) " 從粗到細(xì) " 的過程,而后者將其定義為 " 一步完成 "。我們?cè)诮榻B過程中,將分兩類進(jìn)行分析。兩階段模型(two-stage detection)因其對(duì)圖片的兩階段處理得名,也稱為基于區(qū)域(Region-based)的方法,R-CNN系列工作就是這一類型的代表。單階段模型(one-stage detection)沒有中間的區(qū)域檢出過程,直接從圖片獲得預(yù)測結(jié)果,也被稱為Region-free方法。

本文回顧目標(biāo)檢測中必備的TOP模型,包括one-stage模型和two-stage模型。

一、two-stage模型

1、 R-FCN

前文描述的 R-CNN,SPPNET,F(xiàn)ast R-CNN,F(xiàn)aster R-CNN 的目標(biāo)檢測都是基于全卷積網(wǎng)絡(luò)彼此共同分享以及 ROI 相關(guān)的彼此不共同分享的計(jì)算的子網(wǎng)絡(luò),R-FCN算法使用的這兩個(gè)子網(wǎng)絡(luò)是位置比較敏感的卷積網(wǎng)絡(luò),而舍棄了之前算法所使用的最后的全連接層,目的是讓所有的計(jì)算都可以共享。因此,R-FCN的出發(fā)點(diǎn)就是為了減少重復(fù)計(jì)算,盡可能地共享網(wǎng)絡(luò)。為了將 translation variance 引入到全卷積網(wǎng)絡(luò)中,本文設(shè)計(jì)了一種特殊的卷積層作為全卷積網(wǎng)絡(luò)的輸出,該卷積層輸出 position-sensitive 的 score map,每個(gè) score map 引入了位置信息。在網(wǎng)絡(luò)的最后一層,再接一個(gè) position-sensitive RoI pooling 層,完成對(duì)物體的檢測。在整個(gè)網(wǎng)絡(luò)框架中,所有可學(xué)習(xí)的層都是卷積層,同時(shí)把空間位置信息引入特征學(xué)習(xí)中,使得整個(gè)網(wǎng)絡(luò)可以進(jìn)行端到端的學(xué)習(xí)。

R-FCN 算法進(jìn)行目標(biāo)檢測的步驟如下:(1)候選區(qū)域:使用的是 RPN(Region Proposal Network)候選區(qū)域網(wǎng)絡(luò),同時(shí) RPN 網(wǎng)絡(luò)結(jié)構(gòu)是全卷積的網(wǎng)絡(luò);(2)分類和回歸:采用的是 RPN 特征共享的性質(zhì)來進(jìn)行目標(biāo)的分類。在進(jìn)行 bbox 回歸的時(shí)候,通常將 C 選取為 4。

R-FCN采用 ResNet 101 的卷積層作為基礎(chǔ)的卷積網(wǎng)絡(luò)結(jié)構(gòu),再接一個(gè)卷積層用于降維,最后接一個(gè)產(chǎn)生 k^2(C+1)個(gè) score map 的 position-sensitive 的卷積層,然后接一個(gè) position-sensitive RoI pooling 層,最后使用 Softmax 判斷 RoI 的類別。此外,還可以接一個(gè)產(chǎn)生 4k^2個(gè) map 用于回歸 Bounding box 的位置,同樣應(yīng)用 position-sensitive RoI pooling 層,最后得到一個(gè)回歸的位置。具體結(jié)構(gòu)如圖1所示。

圖1. R-FCN的整體架構(gòu)。使用區(qū)域建議網(wǎng)絡(luò)(RPN)提出候選RoI,然后將其應(yīng)用于score map。所有可學(xué)習(xí)的權(quán)重層都是卷積的,并且是在整個(gè)圖像上計(jì)算的;每個(gè)RoI的計(jì)算成本可以忽略不計(jì)

對(duì)于position-sensitive 卷積層,為了將位置信息引入到 position-sensitive 的 feature map 中,對(duì)于每個(gè) RoI,將其分割成 k*k 個(gè) bins,每個(gè) bin 的大小約等于 w/kh/k。最后一個(gè)卷積層為每個(gè)類別生成 k^2 個(gè) score map。在第 (i,j)個(gè) bin (0≤i,j≤k1)上的 position RoI pooling 操作定義為:

每個(gè)類別上都可以得到 k 個(gè) position-sensitive 的 score,文章直接對(duì)這些值求平均值,得到最終的 score,因?yàn)榉帜付枷嗤?,均?k,因此這個(gè) score 就可以寫成 r_c(Θ)=∑_i.j r_c(i,j∣Θ),在對(duì)這個(gè) RoI 分類時(shí),采用 Softmax 的方式在每個(gè)類別上的響應(yīng)可以寫成 :

在訓(xùn)練過程中采用交叉熵的方式進(jìn)行訓(xùn)練。圖8給出了position-sensitive 卷積層的詳細(xì)

展示

圖2. R-FCN的關(guān)鍵思想。圖中有一個(gè)全卷積網(wǎng)絡(luò)產(chǎn)生的k×k=3×3的位置敏感分?jǐn)?shù)圖。對(duì)于一個(gè)RoI中的每一個(gè)k×k bins,只對(duì)k^2個(gè)map中的一個(gè)進(jìn)行匯集(用不同的顏色標(biāo)記)

R-FCN是 Faster R-CNN 的改進(jìn)版本,其 loss function 定義基本上是一致的:

在該網(wǎng)絡(luò)框架下,所有可學(xué)習(xí)的層都是卷積層,使用 Online Hard Example Mining (OHEM) ,幾乎不會(huì)增加訓(xùn)練時(shí)間。

當(dāng)前 SOTA!平臺(tái)收錄 R-FCN 共 47 個(gè)模型實(shí)現(xiàn)資源。

項(xiàng)目SOTA!平臺(tái)項(xiàng)目詳情頁R-FCN前往 SOTA!模型平臺(tái)獲取實(shí)現(xiàn)資源:https://sota.jiqizhixin.com/project/rfcn

2、 Mask-RCNN

Mask R-CNN是一個(gè)兩階段的框架,第一個(gè)階段掃描圖像并生成建議區(qū)域(proposals,即有可能包含一個(gè)目標(biāo)的區(qū)域),第二階段分類提議并生成邊界框和掩碼。Mask R-CNN是在Faster R-CNN的基礎(chǔ)上添加了一個(gè)預(yù)測分割mask的分支,即在目標(biāo)檢測的基礎(chǔ)上再進(jìn)行分割。Mask R-CNN算法主要是Faster R-CNN+FCN,更具體一點(diǎn)就是ResNeXt+RPN+RoI Align+Fast R-CNN+FCN,如下圖所示:

圖3. Mask R-CNN 結(jié)構(gòu)圖

Mask R-CNN算法步驟如下:(1)輸入一張圖片,進(jìn)行數(shù)據(jù)預(yù)處理(尺寸,歸一化等等);(2)將處理好的圖片傳入預(yù)訓(xùn)練的神經(jīng)網(wǎng)絡(luò)中(例如,ResNet)以獲得相應(yīng)的feature map;(3)通過feature map中的每一點(diǎn)設(shè)定ROI,獲得多個(gè)ROI候選框;(4)對(duì)這些多個(gè)ROI候選框送到RPN中進(jìn)行二值分類(前景或后景)和BB回歸(Bounding-box regression),過濾掉一部分候選的ROI;(5)對(duì)剩下的ROI進(jìn)行ROI Align操作(即先將原圖和feature map的pixel對(duì)應(yīng)起來,然后將feature map和固定的feature對(duì)應(yīng)起來);(6)對(duì)這些ROI進(jìn)行分類(N類別分類),BB回歸和Mask生成(在每一個(gè)ROI里面進(jìn)行FCN操作)。

首先,Mask R-CNN采用ResNet-50或者ResNet-101作為特征提取器提取特征,然后采用FPN(特征金字塔網(wǎng)絡(luò))的結(jié)構(gòu)來進(jìn)行特征融合。FPN可以同時(shí)利用低層特征圖的空間信息和高層特征圖的語義信息,其原理就是把分辨率較小的高層特征首先通過1×1卷積降維(減少計(jì)算量),然后上采樣至前一個(gè)特征圖的相同尺寸,再進(jìn)行逐元素相加,就能得到融合后的特征。在得到增強(qiáng)后的特征后,利用RPN(Region Proposal Network)幫助網(wǎng)絡(luò)推薦感興趣的區(qū)域(ROI區(qū)域)。

接下來,需要把所有的ROI都pooling成相同大小的feature map后,才能將它reshape 成一個(gè)一維的向量,從而完成后面的分類與回歸任務(wù)。與Faster RCNN中的ROI pooling不同,使用ROI pooling會(huì)造成較大的量化誤差,這對(duì)于分割任務(wù)來說會(huì)造成較大的誤差,因此Mask R-CNN中對(duì)ROI pooling進(jìn)行了改進(jìn),提出了ROI Align。RoI Align的思路很簡單:取消量化操作,使用雙線性內(nèi)插的方法獲得坐標(biāo)為浮點(diǎn)數(shù)的像素點(diǎn)上的圖像數(shù)值,從而將整個(gè)特征聚集過程轉(zhuǎn)化為一個(gè)連續(xù)的操作。值得注意的是,在具體的算法操作上,RoI Align并不是簡單地補(bǔ)充候選區(qū)域邊界上的坐標(biāo)點(diǎn),然后將這些坐標(biāo)點(diǎn)進(jìn)行池化,而是重新設(shè)計(jì)了一套流程:(1)遍歷每一個(gè)候選區(qū)域,保持浮點(diǎn)數(shù)邊界不做量化。(2)將候選區(qū)域分割成 × 個(gè)單元,每個(gè)單元的邊界也不做量化。(3)在每個(gè)單元中計(jì)算固定四個(gè)坐標(biāo)位置,用雙線性內(nèi)插的方法計(jì)算出這四個(gè)位置的值,然后進(jìn)行最大池化操作。

圖4. RoIAlign: 虛線代表一個(gè)特征圖,實(shí)線代表一個(gè)RoI (在本例中為2×2 bins)。RoIAlign通過對(duì)特征圖上附近的網(wǎng)格點(diǎn)進(jìn)行雙線性插值來計(jì)算每個(gè)采樣點(diǎn)的值。在RoI、bins或采樣點(diǎn)中涉及的任何坐標(biāo)都不進(jìn)行量化處理

根據(jù)論文所述,我們通過ROI Align可以把RPN生成并篩選后的框所對(duì)應(yīng)的區(qū)域全部變成我們需要大的特征圖。而最后的任務(wù)就是對(duì)這些特征圖來做進(jìn)一步的分類、定位、分割。分類和定位和RPN里面的分類定位原理相同,對(duì)于分割,如圖11右側(cè)所示,在得到ROI Align處理過的特征后,由于前面進(jìn)行了多次卷積和池化,減小了對(duì)應(yīng)的分辨率,mask分支開始利用反卷積進(jìn)行分辨率的提升,同時(shí)減少通道的個(gè)數(shù),maskrcnn使用到了FPN網(wǎng)絡(luò),通過輸入單一尺度的圖片,最后可以對(duì)應(yīng)的特征金字塔,首先將ROI變化為14x14x256的feature,然后進(jìn)行了5次相同的卷積操作,然后進(jìn)行反卷積操作,最后輸出28x28x80的mask,即輸出了更大的mask。

圖5. 網(wǎng)絡(luò)頭結(jié)構(gòu)

最后,整個(gè)Mask RCNN網(wǎng)絡(luò)結(jié)構(gòu)包含兩部分,一部分是backbone用來提取特征(上文提到的采用ResNet-50或者ResNet-101作為特征提取器提取特征),另一部分是head用來對(duì)每一個(gè)ROI進(jìn)行分類、框回歸和mask預(yù)測。為了產(chǎn)生對(duì)應(yīng)的Mask,文中提出了兩種架構(gòu),即左邊的Faster R-CNN/ResNet和右邊的Faster R-CNN/FPN,如圖11所示。

當(dāng)前 SOTA!平臺(tái)收錄 Mask RCNN 共 13 個(gè)模型實(shí)現(xiàn)資源。

項(xiàng)目SOTA!平臺(tái)項(xiàng)目詳情頁Mask RCNN前往 SOTA!模型平臺(tái)獲取實(shí)現(xiàn)資源:https://sota.jiqizhixin.com/project/mask-r-cnn

二、one-stage模型

1、 YOLO

YOLO是one-stage方法的開山之作。它將檢測任務(wù)表述成一個(gè)統(tǒng)一的、端到端的回歸問題,并且以只處理一次圖片同時(shí)得到位置和分類而得名。YOLO 是基于回歸方法的,不需要區(qū)域選擇操作,替換成了回歸操作來完成目標(biāo)檢測和目標(biāo)分類。YOLO架構(gòu)如圖12所示。相比Faster RCNN,YOLO結(jié)構(gòu)簡單,網(wǎng)絡(luò)中只包含conv,relu,pooling和全連接層,以及最后用來綜合信息的detect層。其中使用了1x1卷積用于多通道信息融合。

圖6. 檢測網(wǎng)絡(luò)有24個(gè)卷積層,然后是2個(gè)全連接層。交替出現(xiàn)的1×1卷積層減少了前幾層的特征空間。在ImageNet分類任務(wù)中以一半的分辨率(224×224輸入圖像)對(duì)卷積層進(jìn)行預(yù)訓(xùn)練,然后以兩倍的分辨率進(jìn)行檢測

YOLO的工作步驟如下:第一步:輸入一張需要檢測的圖片,將這張圖片分割為 7×7 的網(wǎng)絡(luò)結(jié)構(gòu)(即圖13中的S=7);第二步:對(duì)于 7×7 網(wǎng)格中的每一個(gè)網(wǎng)絡(luò),都提供 2 個(gè)預(yù)測的邊框,這兩個(gè)邊框包含了每個(gè)邊框的目標(biāo)的置信信息和每一個(gè)邊框區(qū)域在不同類別上的可能性;第三步:將第二步中預(yù)測出的 7×7×2 個(gè)目標(biāo)網(wǎng)絡(luò)的性能進(jìn)行排列,設(shè)定合適的閾值進(jìn)行篩選,依據(jù)設(shè)定的閾值將目標(biāo)所在可能性比較低的網(wǎng)絡(luò)窗口剔除,留下可能性比較高的網(wǎng)絡(luò)窗口,同時(shí)用 NMS 將冗余窗口去除即可。

圖7. 模型。YOLO將檢測建模為一個(gè)回歸問題。它將圖像劃分為一個(gè)S×S的網(wǎng)格,并為每個(gè)網(wǎng)格單元預(yù)測B的邊界框、這些框的置信度和C類概率。這些預(yù)測被編碼為一個(gè)S×S×(B5+C)張量

YOLO 前半部分的網(wǎng)絡(luò)結(jié)構(gòu)和GoogleNet 的結(jié)構(gòu)模型比較相似,YOLO 網(wǎng)絡(luò)結(jié)構(gòu)的特點(diǎn)主要在后面兩層結(jié)構(gòu)上,是在卷積層操作之后連接了一個(gè)全連接層,同時(shí)這個(gè)全連接層是 4096維度的,然后在這個(gè)全連接層之后又連接了一個(gè) 7×7×30 維度的向量。這個(gè) 7×7 就是上文中的將圖片分割成的 7×7 的網(wǎng)絡(luò)結(jié)構(gòu),之后就需要在每一個(gè)網(wǎng)絡(luò)上預(yù)測目標(biāo)可能會(huì)出現(xiàn)的兩個(gè)可能的位置,同時(shí)預(yù)測這個(gè)目標(biāo)出現(xiàn)的位置在圖片目標(biāo)上的置信信息和類別,也就是說需要預(yù)測兩個(gè)目標(biāo)在每一個(gè)網(wǎng)格中,每一個(gè)目標(biāo)都是有中心點(diǎn)坐標(biāo)和長寬這 4 個(gè)維度的信息,1 個(gè)目標(biāo)的置信信息,還有 20 個(gè)目標(biāo)的類別數(shù),使用 VOC上面的 20 個(gè)類別,就會(huì)有(4+1)×2+20=30維度,因此后面連接了一個(gè) 7×7×30 維度的向量。所以,就可以使用前文的 4096 維度的全連接層在每一個(gè)網(wǎng)格上直接回歸出目標(biāo)所需要的置信信息和類別數(shù)。

YOLO訓(xùn)練過程中最終優(yōu)化的目標(biāo)函數(shù)為Loss = λ_coord權(quán)重* 坐標(biāo)預(yù)測誤差 + (含object的box confidence預(yù)測誤差 + λ——noobj* 不含object的box confidence預(yù)測誤差) + 類別預(yù)測誤差:

當(dāng)前 SOTA!平臺(tái)收錄 YOLO 共 3 個(gè)模型實(shí)現(xiàn)資源。

項(xiàng)目SOTA!平臺(tái)項(xiàng)目詳情頁

YOLO

前往 SOTA!模型平臺(tái)獲取實(shí)現(xiàn)資源:https://sota.jiqizhixin.com/project/yolo-2017

2、 SSD

YOLO 算法中的 7x7 網(wǎng)絡(luò)結(jié)構(gòu)讓目標(biāo)的定位不是很準(zhǔn)確,讓檢測的精確度不是很高,SSD (Single Shot MultiBox Detector)算法結(jié)構(gòu)模型就是將 YOLO 的回歸方法和 Faster R-CNN 的 anchor box思想結(jié)合起來,并對(duì)整個(gè)圖片的不同位置的不同尺度的區(qū)域特征進(jìn)行回歸操作,這樣既可以保持 YOLO回歸方法的快速檢測的優(yōu)勢,又使用 Faster R-CNN 中的 anchor 機(jī)制保證窗口預(yù)測的準(zhǔn)確度。

SSD網(wǎng)絡(luò)主體設(shè)計(jì)的思想是特征分層提取,并依次進(jìn)行BB邊框回歸和分類。因?yàn)椴煌瑢哟蔚奶卣鲌D能代表不同層次的語義信息,低層次的特征圖能代表低層語義信息(含有更多的細(xì)節(jié)),能提高語義分割質(zhì)量,適合小尺度目標(biāo)的學(xué)習(xí)。高層次的特征圖能代表高層語義信息,能光滑分割結(jié)果,適合對(duì)大尺度的目標(biāo)進(jìn)行深入學(xué)習(xí)。所以作者提出的SSD的網(wǎng)絡(luò)理論上能適合不同尺度的目標(biāo)檢測。SSD網(wǎng)絡(luò)中分為了6個(gè)stage,每個(gè)stage能學(xué)習(xí)到一個(gè)特征圖,然后進(jìn)行邊框回歸和分類。SSD網(wǎng)絡(luò)以VGG16的前5層卷積網(wǎng)絡(luò)作為第1個(gè)stage,然后將VGG16中的fc6和fc7兩個(gè)全連接層轉(zhuǎn)化為兩個(gè)卷積層Conv6和Conv7作為網(wǎng)絡(luò)的第2、第3個(gè)stage。接著在此基礎(chǔ)上,繼續(xù)增加了Conv8、Conv9、Conv10和Conv11四層網(wǎng)絡(luò),用來提取更高層次的語義信息。如圖8為SSD的網(wǎng)絡(luò)結(jié)構(gòu)。在每個(gè)stage操作中,網(wǎng)絡(luò)包含了多個(gè)卷積層操作,每個(gè)卷積層操作基本上都是小卷積。

圖8. 兩個(gè)檢測模型的比較,SSD和YOLO。SSD模型在基礎(chǔ)網(wǎng)絡(luò)的末端增加了幾個(gè)特征層,預(yù)測不同比例和長寬比的默認(rèn)框的偏移量以及它們的相關(guān)置信度。在VOC2007測試中,輸入尺寸為300×300的SSD在準(zhǔn)確性上明顯優(yōu)于其448×448的YOLO對(duì)應(yīng)模型,同時(shí)也提高了速度

在SSD中,作者充分的吸取了Faster R-CNN中的Anchor機(jī)制,在每個(gè)Stage中根據(jù)Feature Map的大小,按照固定的Scale和Radio生成Default Boxes。在每張?zhí)卣鲌D上得到許多Default Box后還需要生成相應(yīng)的特征向量,用來進(jìn)行邊框回歸和分類。對(duì)于分類,SSD網(wǎng)絡(luò)采取為每個(gè)類別進(jìn)行打分的策略,也就是說對(duì)于每個(gè)Default Box,SSD網(wǎng)絡(luò)會(huì)計(jì)算出相應(yīng)的每個(gè)類別的分?jǐn)?shù)。假設(shè)數(shù)據(jù)集類別數(shù)為c,加上背景,那么總的類別數(shù)就是c+1類。SSD網(wǎng)絡(luò)采用了c+1維向量來分別代表該Default Box對(duì)于每個(gè)類別所得到的分?jǐn)?shù)。

SSD網(wǎng)絡(luò)對(duì)于每個(gè)stage輸出的特征圖都進(jìn)行邊框回歸和分類處理,SSD的損失包括類別損失和定位損失,其中,類別損失L_conf又分為正樣本和負(fù)樣本類別損失,聯(lián)合損失函數(shù)如下:

為了提高檢測準(zhǔn)確度,作者還引入了四種輔助方法:

匹配策略:即ground truth和Default box的匹配。首先,根據(jù)最大的overlap將ground truth和default box進(jìn)行匹配(根據(jù)ground truth找到default box中IOU最大的作為正樣本);然后,將default boxes與overlap大于某個(gè)閾值(目標(biāo)檢測中通常選取0.5)的ground truth進(jìn)行匹配。

Default boxes生成器:來自網(wǎng)絡(luò)內(nèi)不同層次的特征圖具有不同的(經(jīng)驗(yàn))感受野大小。在SSD框架內(nèi),Default box不一定要對(duì)應(yīng)于每一層的實(shí)際感受區(qū),可以令特定的特征圖學(xué)會(huì)對(duì)物體的特定比例作出反應(yīng)。假設(shè)我們想使用m個(gè)特征圖進(jìn)行預(yù)測。每個(gè)特征圖的default box的比例計(jì)算為:

Hard Negative Mining:經(jīng)過匹配策略會(huì)得到大量的負(fù)樣本,只有少量的正樣本。這樣導(dǎo)致了正負(fù)樣本不平衡,作者經(jīng)過試驗(yàn)表明,正負(fù)樣本的不均衡是導(dǎo)致檢測正確率低下的一個(gè)重要原因。所以,作者在訓(xùn)練過程中采用了Hard Negative Mining的策略,根據(jù)Confidence Loss對(duì)所有的box進(jìn)行排序,使得正負(fù)樣本的比例控制在1:3之內(nèi)。

數(shù)據(jù)增強(qiáng):這一步驟的目的是使得模型更加魯棒。作者在文中具體采用的增強(qiáng)手段包括使用整張圖像作為輸入;使用IOU和目標(biāo)物體為0.1、0.3、0.5、0.7和0.9的patch,這些patch在原圖大小的[0.1, 1]之間,相應(yīng)的寬高比在[1/2, 2]之間;隨機(jī)采取一個(gè)patch;使用光學(xué)增強(qiáng)。

當(dāng)前 SOTA!平臺(tái)收錄 SSD 共 27 個(gè)模型實(shí)現(xiàn)資源。

項(xiàng)目SOTA!平臺(tái)項(xiàng)目詳情頁SSD前往 SOTA!模型平臺(tái)獲取實(shí)現(xiàn)資源:https://sota.jiqizhixin.com/project/ssd-4

3、 FPN

特征金字塔(Feature pyramids)是多尺度目標(biāo)檢測系統(tǒng)中一個(gè)重要組成部分,近年來,由于特征金字塔存在影響模型計(jì)算速度、占用內(nèi)存等問題,大多數(shù)深度網(wǎng)絡(luò)避免使用這個(gè)結(jié)構(gòu)。在此之前,SSD模型提出了一個(gè)"內(nèi)置的"特征金字塔解決了上面問題。但是SSD網(wǎng)絡(luò)只采用自底向上的路徑不夠完美,此外,SSD舍棄了高分辨率的底層網(wǎng)絡(luò)層,對(duì)小目標(biāo)的檢測效果不夠理想。本文作者提出了基于Bottom-up pathway、Top-down pathway and lateral connections策略的Feature Pyramid Network (FPN)結(jié)構(gòu),在目標(biāo)檢測任務(wù)中取得了不錯(cuò)的效果。

Bottom-up pathway:自底向上的路徑就是網(wǎng)絡(luò)的前向計(jì)算過程,特征圖經(jīng)過卷積層化層一般會(huì)越來越小,也有一些特征層的輸出和輸入大小一樣。作者將大小不變的feature map層稱為stage,每次抽取的特征都是每個(gè)stage最后一個(gè)層的輸出。最后一層具有最強(qiáng)的語義特征,眾多層一起構(gòu)成了特征金字塔。對(duì)于ResNet網(wǎng)絡(luò),作者使用每個(gè)stage的最后一個(gè)殘差結(jié)構(gòu)的特征激活輸出。將這些輸出表示為{C2, C3, C4, C5},對(duì)應(yīng)于conv2,conv3,conv4和conv5的輸出,相對(duì)于輸入圖像則具有{4, 8, 16, 32}像素的步長。考慮到內(nèi)存占用問題,作者沒有將conv1包含在金字塔中。

Top-down pathway and lateral connections:自頂向下的路徑是通過對(duì)網(wǎng)絡(luò)上采樣(upsampling)進(jìn)行的,橫向連接則是將上采樣的結(jié)果和自底向上生成的相同大小的feature map進(jìn)行融合。在融合之后為了消除上采樣的混疊效應(yīng)(aliasing effect),采用3*3的卷積核對(duì)每個(gè)融合結(jié)果進(jìn)行卷積,并假設(shè)生成的融合特征層為{P2, P3, P4, P5}和原來自底向上的卷積結(jié)果{C2, C3, C4, C5}對(duì)應(yīng)。

圖9. 頂部:一個(gè)自上而下的結(jié)構(gòu),包含skip connections,預(yù)測是在最細(xì)的層次上進(jìn)行的。底部:本文模型有一個(gè)類似的結(jié)構(gòu),但利用它作為一個(gè)特征金字塔,在所有層次上獨(dú)立進(jìn)行預(yù)測

圖10. 一個(gè)說明側(cè)向連接和自上而下途徑的構(gòu)件,通過添加而合并

圖10給出了構(gòu)建自上而下特征圖的構(gòu)件。對(duì)于一個(gè)較粗分辨率的特征圖,將空間分辨率提高2倍(為簡單起見,使用最近的鄰居提高取樣)。然后,通過元素相加的方式將上層map與相應(yīng)的下層map(經(jīng)過1×1卷積層以減少通道尺寸)合并。這個(gè)過程反復(fù)進(jìn)行,直到生成最精細(xì)的分辨率map。為了開始迭代,只需在C5上附加一個(gè)1×1卷積層以產(chǎn)生最粗分辨率的map。采用3*3的卷積核對(duì)每個(gè)融合結(jié)果進(jìn)行卷積,并假設(shè)生成的融合特征層為{P2, P3, P4, P5}和原來自底向上的卷積結(jié)果{C2, C3, C4, C5}對(duì)應(yīng)。

當(dāng)前 SOTA!平臺(tái)收錄 FPN 共 4 個(gè)模型實(shí)現(xiàn)資源。

項(xiàng)目SOTA!平臺(tái)項(xiàng)目詳情頁FPN前往 SOTA!模型平臺(tái)獲取實(shí)現(xiàn)資源:https://sota.jiqizhixin.com/project/fpn-4

4、 RetinaNet

在one-stage檢測器中,檢測器須處理約100K的樣本,其中大多數(shù)都是容易分類的負(fù)樣本,正樣本很少,即使采用困難樣本挖掘等啟發(fā)式抽樣,其訓(xùn)練過程還是主要由容易分類背景負(fù)樣本主導(dǎo)。本文提出了Focal Loss,能夠根據(jù)檢測結(jié)果的置信度動(dòng)態(tài)調(diào)整其對(duì)損失函數(shù)的貢獻(xiàn)。樣本對(duì)損失函數(shù)的貢獻(xiàn)會(huì)隨著置信度的提高而降低,因此,盡管one-stage檢測存在海量容易分類的背景樣本,但是由于其置信度高,所以其對(duì)損失函數(shù)的占比小,因此不會(huì)主導(dǎo)訓(xùn)練過程,從而解決了one-stage檢測器正負(fù)樣本不均衡的問題。

首先從二分類的交叉熵?fù)p失函數(shù)出發(fā)分析:

p表示模型預(yù)測當(dāng)前樣本標(biāo)簽為1的概率。為了描述方便,定義p_t 為:

進(jìn)一步,解決正負(fù)樣本不均衡的方法是在交叉熵?fù)p失函數(shù)中加入加權(quán)因子α,交叉熵?fù)p失函數(shù)改寫為:

通過調(diào)節(jié)加權(quán)因子可以平衡類別間的不均衡。在實(shí)際應(yīng)用中,可以將α 設(shè)為類別頻率的相反數(shù),即頻率高的就將α 調(diào)低;或者將α 作為超參數(shù)調(diào)參。但是盡管α 可以調(diào)整正負(fù)樣本的均衡,卻不能調(diào)整難易樣本的均衡,而one-stage檢測器的主要問題在于大量容易負(fù)樣本構(gòu)成了大部分的損失,并主導(dǎo)了梯度,主導(dǎo)了訓(xùn)練過程,因此作者在交叉熵中引入了與預(yù)測置信度相關(guān)的調(diào)節(jié)因子,如下式所示:

對(duì)于容易樣本,其預(yù)測的置信度必然相對(duì)較高,即預(yù)測的p_t 值較大,那么(1pt) 就可以降低損失的權(quán)重。另外還有一個(gè)調(diào)節(jié)懲罰力度的超參數(shù)γ ,γ∈[1,5] 。為了能夠?qū)φ?fù)樣本和難易樣本都取得一個(gè)較好的均衡,作者采用以下形式的損失函數(shù):

在二分類的任務(wù)中,默認(rèn)的初始化往往會(huì)選擇使得預(yù)測正類和負(fù)類的概率都為0.5。在這樣的初始化下,在類別不平衡的情況下,頻繁出現(xiàn)的類別所造成的損失會(huì)支配總的損失,導(dǎo)致早期訓(xùn)練的不穩(wěn)定。為了解決這個(gè)問題,作者引入了 "先驗(yàn) "的概念,即在訓(xùn)練開始時(shí)由模型對(duì)稀有類(前景)估計(jì)的p值。用π表示先驗(yàn),并將其設(shè)置為:模型對(duì)稀有類別樣本的估計(jì)P很低,例如0.01。作者分析這是對(duì)模型初始化的改變,而不是損失函數(shù)的改變。作者發(fā)現(xiàn),在類別嚴(yán)重失衡的情況下,這可以提高交叉熵和焦點(diǎn)損失的訓(xùn)練穩(wěn)定性。

為了驗(yàn)證Focal Loss的有效性,作者設(shè)計(jì)了一個(gè)簡單的one-stage目標(biāo)檢測器——RetinaNet,如下圖所示:

圖11. RetinaNet網(wǎng)絡(luò)架構(gòu)在前饋ResNet架構(gòu)之上使用了一個(gè)特征金字塔網(wǎng)絡(luò)(FPN)backbone(a),以產(chǎn)生一個(gè)豐富的、多尺度的卷積特征金字塔(b)。在這個(gè)backbone網(wǎng)絡(luò)上,RetinaNet附加了兩個(gè)子網(wǎng)絡(luò),一個(gè)用于分類anchor box(c),一個(gè)用于從anchor box回歸到ground-truth object box(d)

RetinaNet的網(wǎng)絡(luò)結(jié)構(gòu)是在FPN的每個(gè)特征層后面接兩個(gè)子網(wǎng)絡(luò),分別是classification subnet(圖11c) 和 bbox regression subnet(圖11d)。由圖11,F(xiàn)PN通過自上而下的路徑和橫向連接增強(qiáng)了標(biāo)準(zhǔn)卷積網(wǎng)絡(luò),因此該網(wǎng)絡(luò)從單個(gè)分辨率輸入圖像有效地構(gòu)建了豐富的多尺度特征金字塔,參見圖11(a)-(b)。Retinanet在resnet 架構(gòu)頭部構(gòu)建FPN結(jié)構(gòu),構(gòu)建了P3~P7的特征金字塔,具有C=256t channels。

當(dāng)前 SOTA!平臺(tái)收錄 RetinaNet 共 210個(gè)模型實(shí)現(xiàn)資源。

項(xiàng)目SOTA!平臺(tái)項(xiàng)目詳情頁RetinaNet前往 SOTA!模型平臺(tái)獲取實(shí)現(xiàn)資源:https://sota.jiqizhixin.com/project/retinanet-2021

前往 SOTA!模型資源站(sota.jiqizhixin.com)即可獲取本文中包含的模型實(shí)現(xiàn)代碼、預(yù)訓(xùn)練模型及API等資源。

網(wǎng)頁端訪問:在瀏覽器地址欄輸入新版站點(diǎn)地址sota.jiqizhixin.com,即可前往「SOTA!模型」平臺(tái),查看關(guān)注的模型是否有新資源收錄。

移動(dòng)端訪問:在微信移動(dòng)端中搜索服務(wù)號(hào)名稱「機(jī)器之心SOTA模型」或 ID「sotaai」,關(guān)注 SOTA!模型服務(wù)號(hào),即可通過服務(wù)號(hào)底部菜單欄使用平臺(tái)功能,更有最新AI技術(shù)、開發(fā)資源及社區(qū)動(dòng)態(tài)定期推送。


網(wǎng)站簡介 網(wǎng)站團(tuán)隊(duì) 本網(wǎng)動(dòng)態(tài) 友情鏈接 版權(quán)聲明 我要投稿

Copyright? 2014-2020 中原網(wǎng)視臺(tái)(www.yiera.cn) All rights reserved.

主站蜘蛛池模板: 久久无码专区国产精品s| 18分钟处破好疼哭视频在线观看| 中国熟妇色xxxxx| 国产熟女一区二区三区四区五区| 黑人巨大白妞出浆| 国产av旡码专区亚洲av苍井空| 小龙女玉足娇喘蕾丝湿润| 三级全黄的视频在线观看| 麻豆剧果冻传媒在线播放下载| 天堂在线.www天堂在线资源| 欧洲vodafonewi喷浆| 少妇高潮流白浆在线观看| 一区二区三区内射美女毛片| 国产精品白丝喷水在线观看| 大又大粗又爽又黄少妇毛片| 北条麻妃国产九九九精品视频 | 上面膜下边吃的视频| 丰满人妻熟妇乱又伦精品| 大胆人gogo888体艺术摄影| 国产最新进精品视频| 中文字幕精品亚洲人成在线| 久热在线播放中文字幕| 性裸交a片一区二区三区| 女公务员人妻呻吟求饶| 男受被做哭激烈娇喘gv视频| 最新可播放男同志69gay| 26uuu另类亚洲欧美日本| 亚洲综合色区另类av| 好姑娘视频观看免费完整版| 1313久久国产午夜精品理论片| 日本动漫瀑乳h动漫啪啪免费| 最新高清无码专区| 国产一在线精品一区在线观看| 别揉我奶头~嗯~啊~动漫网站| 国产成人精品久久久久欧美 | 国产自偷亚洲精品页65页| 国产精品久久久久久久久久妞妞| 免费ā片在线观看| 婷婷久久香蕉五月综合| 欧美xxxx做受欧美1314| 寂寞的少妇2乱理片|