久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

「目標(biāo)檢測算法」連連看:從Faster R-CNN 、 R-FCN 到 FPN

 牛k8nb72h1x6w1 2018-05-15

雷鋒網(wǎng)按:本文為雷鋒字幕組編譯的技術(shù)博客,,原標(biāo)題 What do we learn from region based object detectors (Faster R-CNN,R-FCN, FPN)?,,作者為 Jonathan Hui 。

翻譯 | 唐青 李振 整理 | 凡江

「目標(biāo)檢測算法」連連看:從Faster R-CNN ,、 R-FCN 到 FPN

在這個系列中,,我們將對目標(biāo)檢測算法進(jìn)行全面探討。 第 1 部分,,我們介紹常見的基于區(qū)域的目標(biāo)檢測器,,包括 Fast R-CNN , Faster R-CNN ,, R-FCN 和 FPN ,。 第 2 部分,我們介紹單步檢測器(single shoot dectors,, SSD ),。第 3 部分,我們探討算法性能和一些具體的例子。通過在相同的環(huán)境研究這些算法,,我們研究哪些部分在其作用,,哪些部分是重要的,可以在哪些部分進(jìn)一步改進(jìn),。希望通過對算法如何發(fā)展到今天的研究,,會給我們未來的研究提供方向。

第1部分:我們從基于區(qū)域的目標(biāo)檢測器中學(xué)到了什么(Faster R-CNN,,R-FCN,F(xiàn)PN),?

第2部分:我們從單步檢測器中學(xué)到了什么(SSD,,YOLO),F(xiàn)PN 和 Focal loss,?

第3部分:目標(biāo)檢測的設(shè)計(jì)選型,,經(jīng)驗(yàn)教訓(xùn)和發(fā)展趨勢?

滑動窗口檢測器(Sliding-window detectors)

自從 AlexNet 贏得了 2012 年 ILSVRC 挑戰(zhàn)的冠軍,,使用 CNN 進(jìn)行分類成為領(lǐng)域的主導(dǎo),。一種用于目標(biāo)檢測的簡單粗暴的方法是將滑動窗口從左到右,從上到下滑動使用分類來識別目標(biāo),。為了區(qū)分在不同視覺距離下的目標(biāo)類型,,我們使用了不同尺寸和高寬比的窗口。

「目標(biāo)檢測算法」連連看:從Faster R-CNN ,、 R-FCN 到 FPN

我們按照滑動窗口從圖片中剪切出部分圖像塊,。由于通常分類器都采用固定的圖像大小,所以圖像塊需要進(jìn)行形變,。然而,,這對分類精度并沒有什么影響,應(yīng)為分類器訓(xùn)練時也使用了形變的圖像,。

「目標(biāo)檢測算法」連連看:從Faster R-CNN ,、 R-FCN 到 FPN

形變的圖像塊被送進(jìn) CNN 分類器中提取 4096 個特征。然后,,我們用一個 SVM 分類器進(jìn)行分類,,用一個線性回歸器得到邊界框。

「目標(biāo)檢測算法」連連看:從Faster R-CNN ,、 R-FCN 到 FPN

以下是偽代碼,。 我們生成了很多窗口來檢測不同位置、不同形狀的目標(biāo),。 為了提高性能,,減少窗口數(shù)量是一個顯而易見的解決方案。

選擇性搜索(Selective Search)

不再用簡單粗暴的方法,我們用區(qū)域提議方法(region proposal method)生成感興趣區(qū)域 ( regins of interest, ROIs ) 來進(jìn)行目標(biāo)檢測,。在選擇性搜索算法(Selective Search, SS)中,,我們讓每個獨(dú)立像素作為一個起始的組。然后,,計(jì)算每個組的紋理,,合并最接近的兩個組。為了避免一個區(qū)域吞所有,,我們優(yōu)先合并較小的組,。持續(xù)進(jìn)行合并,直到所有可能合并的區(qū)域均完成合并,。下圖中,,第一行展示了如何進(jìn)行區(qū)域生長。第二行展示了在合并過程中所有可能的 ROIs ,。

「目標(biāo)檢測算法」連連看:從Faster R-CNN ,、 R-FCN 到 FPN

R-CNN

R-CNN 利用區(qū)域提議方法(region proposal method)生成了約 2000 個感興趣區(qū)域(regins of interest, ROIs)。這些圖像塊進(jìn)行形變到固定的大小,,分別送入到一個 CNN 網(wǎng)絡(luò)中,。然后,經(jīng)過全連接層,,進(jìn)行目標(biāo)分類和邊界框提取,。

「目標(biāo)檢測算法」連連看:從Faster R-CNN 、 R-FCN 到 FPN

以下是系統(tǒng)的工作流,。

「目標(biāo)檢測算法」連連看:從Faster R-CNN ,、 R-FCN 到 FPN

利用數(shù)量更少,但質(zhì)量更高的 ROIs ,,R-CNN 比滑動窗口的方法運(yùn)行的更快,、更準(zhǔn)確。

「目標(biāo)檢測算法」連連看:從Faster R-CNN ,、 R-FCN 到 FPN

邊界框回歸器(Boundary box regressor)

區(qū)域提議方法的計(jì)算量很大,。為了加速這個過程,我們常采用一個簡易版的區(qū)域提議網(wǎng)絡(luò)來生成 ROIs ,,然后,,接線性回歸器(使用全連接層)來提取邊界框。

「目標(biāo)檢測算法」連連看:從Faster R-CNN ,、 R-FCN 到 FPN

Fast R-CNN

R-CNN 需要足夠多的提議區(qū)域才能保證準(zhǔn)確度,, 而很多區(qū)域是相互重疊的。R-CNN 的訓(xùn)練和推理過程都很緩慢,。例如,,我們生成了 2000 個的區(qū)域提議,,每個區(qū)域提議分別進(jìn)入 CNN。換句話說,,我們對不同的 ROIs 重復(fù)了進(jìn)行了 2000 次的提取特征,。

CNN 中的特征映射表達(dá)了一個更緊密的空間中的空間特征。我們能否利用這些特征映射來進(jìn)行目標(biāo)檢測,,而不是原始圖像,?

「目標(biāo)檢測算法」連連看:從Faster R-CNN 、 R-FCN 到 FPN

「目標(biāo)檢測算法」連連看:從Faster R-CNN ,、 R-FCN 到 FPN

我們不再為每個圖像塊重新提取特征,,而是在開始時采用一個特征提取器(一個 CNN 網(wǎng)絡(luò))為整個圖像提取特征。然后,,直接在特征映射上應(yīng)用區(qū)域提議方法,。例如,F(xiàn)ast R-CNN 選擇 VGG16 的卷積層 conv5 來生成待合并 ROIs 來進(jìn)行目標(biāo)檢測,,其中,包括了與相應(yīng)特征的映射,。我們利用 ROI Pooling 對圖像塊進(jìn)行形變轉(zhuǎn)換成固定大小,,然后將其輸入到全連接層進(jìn)行分類和定位(檢測出目標(biāo)的位置)。由于不重復(fù)特征提取,,F(xiàn)ast R-CNN 顯著的縮短了處理時間,。

「目標(biāo)檢測算法」連連看:從Faster R-CNN 、 R-FCN 到 FPN

以下是網(wǎng)絡(luò)工作流:

「目標(biāo)檢測算法」連連看:從Faster R-CNN ,、 R-FCN 到 FPN

在下面的偽代碼中,,計(jì)算量很大的特征提取操作被移出了 for 循環(huán)。由于同時為 2000 個 ROIs 提取特征,,速度有顯著的提升,。Fast R-CNN 比 R-CNN 的訓(xùn)練速度快 10 倍,推理速度快 150 倍,。

「目標(biāo)檢測算法」連連看:從Faster R-CNN ,、 R-FCN 到 FPN

Fast R-CNN 的一個主要特點(diǎn)是整個網(wǎng)絡(luò)(特征提取器,分類器和邊界框回歸器)可以通過多任務(wù)損失 multi-task losses(分類損失和定位損失)進(jìn)行端到端的訓(xùn)練,。這樣的設(shè)計(jì)提高了準(zhǔn)確性,。

ROI Pooling

由于 Fast R-CNN 使用了全連接層,因此我們應(yīng)用 ROI Pooling 將不同大小的 ROIs 轉(zhuǎn)換為預(yù)定義大小形狀,。

舉個例子,,我們將 8×8 特征映射轉(zhuǎn)換為預(yù)定義的 2×2 大小。

  • 左上:特征映射圖,。

  • 右上:ROI(藍(lán)色)與特征映射圖重疊,。

  • 左下:我們將 ROI 分成目標(biāo)維度,。 例如,我們的目標(biāo)大小是 2×2,,我們將 ROI 分為 4 個大小相似或相等的部分,。

  • 右下:取每個部分的最大值,結(jié)果是特征映射轉(zhuǎn)換后的結(jié)果,。

「目標(biāo)檢測算法」連連看:從Faster R-CNN ,、 R-FCN 到 FPN

結(jié)果,得到了一個 2×2 的特征塊,,我們可以將它輸入到分類器和邊界框回歸器中,。

Faster R-CNN

Fast R-CNN 采用類似選擇性搜索(Selective Search)這樣額外的區(qū)域提議方法。 但是,,這些算法在 CPU 上運(yùn)行,,且速度很慢。測試時,, Fast R-CNN 需要 2.3 秒進(jìn)行預(yù)測,,而其中 2 秒花費(fèi)在生成 2000 個ROIs 上。

「目標(biāo)檢測算法」連連看:從Faster R-CNN ,、 R-FCN 到 FPN

Faster R-CNN 采用與 Fast R-CNN 相似的設(shè)計(jì),,不同之處在于它通過內(nèi)部深度網(wǎng)絡(luò)取代區(qū)域提議方法。 新的區(qū)域提議網(wǎng)絡(luò)(Region Proposal Network, RPN)效率更高,。單副圖像生成 ROIs 只需要 10ms ,。

「目標(biāo)檢測算法」連連看:從Faster R-CNN 、 R-FCN 到 FPN

網(wǎng)絡(luò)工作流,。區(qū)域提議方法被新的卷積網(wǎng)絡(luò)(RPN)取代,。

「目標(biāo)檢測算法」連連看:從Faster R-CNN 、 R-FCN 到 FPN

區(qū)域提議網(wǎng)絡(luò)(Region proposal network)

區(qū)域提議網(wǎng)絡(luò)( RPN )用第一個卷積網(wǎng)絡(luò)輸出的特征圖作為輸入,。在特征圖上用 3×3 的濾波器進(jìn)行滑動(濾波),,采用諸如 ZF 網(wǎng)絡(luò)(如下圖)的卷積網(wǎng)絡(luò)來得到未知類的建議區(qū)域。其他如 VGG 或者 ResNet 可以被用來提取更全面的特征,,但需以速度為代價,。 ZF 網(wǎng)絡(luò)輸出的 256 個值分別被送入兩個不一樣的全連接層來預(yù)測邊界框和對象性分?jǐn)?shù)(2 objectness score)。對象性描述了框內(nèi)是否包含有一個物體,。我們可以用回歸器來計(jì)算單個物體的分?jǐn)?shù),,但是為了簡單起見,F(xiàn)aster R-CNN使用了一個分類器分類出兩種可能的類別:「 存在物體 」類和「 不存在物體/背景 」類,。

「目標(biāo)檢測算法」連連看:從Faster R-CNN ,、 R-FCN 到 FPN

RPN 對特征圖里的每個位置(像素點(diǎn))做了 K 次猜測。因此 RPN 在每個位置都輸出 4×k 個坐標(biāo)和 2×k 個分?jǐn)?shù),。以下圖例演示了一個使用 3×3 過濾器的 8×8 特征圖,,它一共輸出 8×8×3 個興趣區(qū)( ROI )( 當(dāng)k=3時),。右側(cè)圖例展示了在單個位置得到的 3 個提議區(qū)域。

「目標(biāo)檢測算法」連連看:從Faster R-CNN ,、 R-FCN 到 FPN

我們現(xiàn)在有 3 個猜測,,隨后我們也會逐漸改善我們的猜想。因?yàn)槲覀冏罱K只需要一個正確的猜測,,所以我們使用不同形狀和大小的的初始猜測會更好,。因此, Faster R-CNN 不是隨機(jī)的選擇提議邊界框,。而是預(yù)測了相對于一些被稱為錨的參考框的左上角的偏移量,,比如 x, y 。因?yàn)槲覀兗s束了偏移量,,所以我們的猜測仍然類似與錨,。

「目標(biāo)檢測算法」連連看:從Faster R-CNN 、 R-FCN 到 FPN

為了對每個位置都進(jìn)行 k 次預(yù)測,,我們需要在每個位置中心放置 k 個錨,。每次預(yù)測都和不同位置但是相同形狀的特定錨相關(guān)。

「目標(biāo)檢測算法」連連看:從Faster R-CNN ,、 R-FCN 到 FPN

這些錨都是精心預(yù)選好的,,所以它們多種多樣,同時非常合理的覆蓋了不同尺度和不同長寬比的現(xiàn)實(shí)生活中的物體,。這使了初始訓(xùn)練將具有更好的猜測,同時允許每次預(yù)測都有特定,、不同的形狀,。這種方式使早期的訓(xùn)練更加穩(wěn)定和容易。

Faster R-CNN 使用了更多的錨,。Faster R-CNN 在一個位置上使用了 9 個錨:3 種不同尺度并使用三種長寬比,。在每個位置使用 9 種錨,所以對于每個位置,,它一共產(chǎn)生了 2×9 個對象性分?jǐn)?shù)和 4×9 個坐標(biāo),。

「目標(biāo)檢測算法」連連看:從Faster R-CNN 、 R-FCN 到 FPN

錨在不同的論文中也被稱為先驗(yàn)或者默認(rèn)邊界框,。

R-CNN的性能

如下圖,,F(xiàn)aster R-CNN 要快得多。

「目標(biāo)檢測算法」連連看:從Faster R-CNN ,、 R-FCN 到 FPN

基于區(qū)域的全卷積網(wǎng)絡(luò)

假設(shè)我們只有一張?zhí)卣鲌D用來檢測臉上的右眼,。我們是否可以用此來決定臉的位置呢?是可以的,。因?yàn)橛已蹜?yīng)該位于一張面部圖像的左上角,,我們也可以用此信息來確定臉的位置,。

「目標(biāo)檢測算法」連連看:從Faster R-CNN 、 R-FCN 到 FPN

如果我們有另外的特征圖專門用來分別檢測左眼,、鼻子,、嘴,我們可以將這些結(jié)果結(jié)合在一起使對臉部的定位更準(zhǔn)確,。

那為什么我們要如此麻煩呢,?在 Faster R-CNN 里,檢測器使用多個全連接層來做預(yù)測,,有 2000 多個 ROI ,,這消耗很高。

「目標(biāo)檢測算法」連連看:從Faster R-CNN ,、 R-FCN 到 FPN

R-FCN 通過減少每個 ROI 需要的工作總量來提高速度,,以上基于區(qū)域的特征圖獨(dú)立于 ROIs ,同時可以在每一個ROI的外部進(jìn)行計(jì)算,。接下來的工作就更簡單了,,因此 R-FCN 比 Faster R-CNN 要快。

「目標(biāo)檢測算法」連連看:從Faster R-CNN ,、 R-FCN 到 FPN

我們可以想想一下這種情況,,M 是一個 5*5 大小,有一個藍(lán)色的正方形物體在其中的特征圖,,我們將方形物體平均分割成 3*3 的區(qū)域?,F(xiàn)在我們從 M 中創(chuàng)建一個新的特征圖并只用其來檢測方形區(qū)域的左上角。這個新的特征圖如下右圖,,只有黃色網(wǎng)格單元被激活,。

「目標(biāo)檢測算法」連連看:從Faster R-CNN 、 R-FCN 到 FPN

因?yàn)槲覀儗⒎叫畏譃榱?9 個部分,,我們可以創(chuàng)建 9 張?zhí)卣鲌D分別來檢測對應(yīng)的物體區(qū)域,。因?yàn)槊繌垐D檢測的是目標(biāo)物體的子區(qū)域,所以這些特征圖被稱為位置敏感分?jǐn)?shù)圖(position-sensitive score maps),。

「目標(biāo)檢測算法」連連看:從Faster R-CNN ,、 R-FCN 到 FPN

比如,我們可以說,,下圖由虛線所畫的紅色矩形是被提議的 ROIs ,。我們將其分為 3*3 區(qū)域并得出每個區(qū)域可能包含其對應(yīng)的物體部分的可能性。例如,, ROIs 的左上區(qū)域中存在左眼的可能性,。我們將此結(jié)果儲存在 3*3 的投票陣列(如下右圖)中。比如,,投票陣列 [0][0] 中數(shù)值的意義是在此找到方形目標(biāo)左上區(qū)域的可能性,。

「目標(biāo)檢測算法」連連看:從Faster R-CNN ,、 R-FCN 到 FPN

將分?jǐn)?shù)圖和 ROIs 映射到投票陣列的過程叫做位置敏感 ROI 池化(position-sensitive ROI-pool)。這個過程和我們之前提到的 ROI pool 非常相似,。這里不會更深入的去講解它,,但是你可以參考以后的章節(jié)來獲取更多信息。

「目標(biāo)檢測算法」連連看:從Faster R-CNN ,、 R-FCN 到 FPN

在計(jì)算完位置敏感 ROI 池化所有的值之后,,分類的得分就是所有它元素的平均值。

「目標(biāo)檢測算法」連連看:從Faster R-CNN ,、 R-FCN 到 FPN

如果說我們有 C 類物體需要檢測,。我們將使用 C+1個類,因?yàn)槠渲卸喟艘粋€背景(無目標(biāo)物體)類,。每類都分別有一個 3×3 分?jǐn)?shù)圖,,因此一共有 (C+1)×3×3 張分?jǐn)?shù)圖。通過使用自己類別的那組分?jǐn)?shù)圖,,我們可以預(yù)測出每一類的分?jǐn)?shù),。然后我們使用 softmax 來操作這些分?jǐn)?shù)從而計(jì)算出每一類的概率。

接下來是數(shù)據(jù)流(圖),,比如我們的例子中,,k=3。

「目標(biāo)檢測算法」連連看:從Faster R-CNN ,、 R-FCN 到 FPN

至今為止我們的歷程

我們從最基礎(chǔ)的滑動窗口算法開始,。

然后我們嘗試減少窗口數(shù),并盡可能的將可以移出 for-loop 的操作移出,。

在第 2 部分里,,我們更加完全的移除了 for-loop 。單次檢測器(single shot detectors)使物體檢測能一次性完成,,而不需要額外的區(qū)域提議步驟。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購買等信息,,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請點(diǎn)擊一鍵舉報,。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多