1. 程式人生 > >Faster R-CNN:利用區域提案網路實現實時目標檢測 論文翻譯

Faster R-CNN:利用區域提案網路實現實時目標檢測 論文翻譯

Faster R-CNN論文地址:Faster R-CNN

Faster R-CNN專案地址:https://github.com/ShaoqingRen/faster_rcnn


摘要

目前最先進的目標檢測網路需要先用區域提案演算法推測目標位置,像SPPnet1和Fast R-CNN2這些網路已經減少了檢測網路的執行時間,這時計算區域提案就成了瓶頸問題。本文中,我們介紹一種區域提案網路(Region Proposal Network, RPN),它和檢測網路共享全圖的卷積特徵,使得區域提案几乎不花時間。RPN是一個全卷積網路,在每個位置同時預測目標邊界和objectness得分。RPN是端到端訓練的,生成高質量區域提案框,用於Fast R-CNN來檢測。我們通過共享其卷積特徵進一步將RPN和Fast R-CNN合併到一個網路中。使用最近流行的神經網路術語“注意力”機制,RPN模組告訴統一網路需要看哪裡。對於非常深的VGG-16模型

3,我們的檢測系統在GPU上的幀率為5fps(包含所有步驟),在PASCAL VOC 2007、PASCAL VOC 2012和MS COCO資料集上實現了最先進的目標檢測準確率,每個影象用了300個提案框。在ILSVRC和COCO 2015比賽中,Faster R-CNN和RPN是幾個比賽的第一名方法的基礎。程式碼已公開。

1.引言

最近在目標檢測中取得的進步都是由區域提案方法(例如4)和基於區域的卷積神經網路(R-CNN)5取得的成功來推動的。基於區域的CNN在5中剛提出時在計算上消耗很大,幸好後來這個消耗通過提案框之間共享卷積1 2大大降低了。最近的Fast R-CNN2用非常深的網路

3實現了近實時檢測的速率,注意它忽略了生成區域提案框的時間。現在,提案框是最先進的檢測系統中的計算瓶頸

區域提案方法典型地依賴於消耗小的特徵和經濟的獲取方案。選擇性搜尋(Selective Search, SS)4是最流行的方法之一,它基於設計好的低階特徵貪心地融合超級畫素。與高效檢測網路2相比,SS要慢一個數量級,CPU應用中大約每個影象2s。EdgeBoxes6在提案框質量和速度之間做出了目前最好的權衡,大約每個影象0.2s。但無論如何,區域提案步驟花費了和檢測網路差不多的時間。 Fast R-CNN利用了GPU,而區域提案方法是在CPU上實現的,這個執行時間的比較是不公平的。一種明顯提速生成提案框的方法是在GPU上實現它,這是一種工程上很有效的解決方案,但這個方法忽略了其後的檢測網路,因而也錯失了共享計算的重要機會。

本文中,我們改變了演算法——用深度網路計算提案框——這是一種簡潔有效的解決方案,提案框計算幾乎不會給檢測網路的計算帶來消耗。為了這個目的,我們介紹新穎的區域提案網路(Region Proposal Networks, RPN),它與最先進的目標檢測網路1 2共享卷積層。在測試時,通過共享卷積,計算提案框的邊際成本是很小的(例如每個影象10ms)。

我們觀察發現,基於區域的檢測器例如Fast R-CNN使用的卷積(conv)特徵對映,同樣可以用於生成區域提案。我們緊接著這些卷積特徵增加一些額外的卷積層來構造RPN:這些層在每個卷積對映網格上同時預測objectness得分和迴歸邊界。 我們的RPN是一種全卷積網路(fully-convolutional network, FCN)7,可以針對生成檢測提案框的任務端到端地訓練。

Figure 1

圖1. 用於解決多種尺度和尺寸的不同方案。(a)構建了金字塔的影象和特徵圖,分類器在所有尺度上執行。 (b)在特徵圖上執行具有多個刻度/尺寸的卷積的金字塔。 (c)我們在迴歸函式中使用參考框的金字塔。

RPN旨在有效地預測具有廣泛尺度和縱橫比的區域分佈。與使用影象的金字塔(圖1,a)或卷積的金字塔(圖1,b)的流行方法8 9 1 2相比,我們引入了新的“錨點”作為多尺度和縱橫比的參考。我們的方案可以被認為是一個迴歸參考金字塔(圖1,c),它避免了列舉多個尺度或縱橫比的影象或卷積。當使用單尺度影象進行訓練和測試時,該模型表現良好,從而有利於執行速度。

為了統一RPN和Fast R-CNN2目標檢測網路,我們提出一種簡單的訓練方案,即保持提案框固定,微調區域提案和微調目標檢測之間交替進行。這個方案收斂很快,最後形成可讓兩個任務共享卷積特徵的標準網路。

我們在PASCAL VOC檢測標準集10上評估我們的方法, Fast R-CNN結合RPN的檢測準確率超過了作為強大基準的Fast R-CNN結合SS的方法。同時,我們的方法沒有了SS測試時的計算負擔,對於生成提案框的有效執行時間只有10毫秒。利用3中網路非常深的深度模型,我們的檢測方法在GPU上依然有5fps的幀率(包括所有步驟),因此就速度和準確率而言,這是一個實用的目標檢測系統。我們還評估了MS COCO資料集11的結果,並使用COCO資料對PASCAL VOC的改進進行了評估。MATLAB版本Python版本的程式碼已經公開提供。

以前,這份手稿的初步版本已經公佈12。從那時起,RPN和Faster R-CNN的框架已被採用並通用於其他方法,如3D目標檢測13,基於部分的檢測14,目標分割15和影象字幕16。我們的快速有效的物體檢測系統也已經在諸如Pinterest17等商業系統中使用,有了使用者的參與與改進。

在ILSVRC和COCO 2015比賽中,Faster R-CNN和RPN是ImageNet檢測,ImageNet定位,COCO檢測和COCO分割的第一名所採用的方法的基礎。 RPN完全從資料中學習提出區域,從而可以從更深層次和更具表現力的特徵(如18中採用的101層殘差網路)中輕鬆獲益。Faster R-CNN和RPN也被這些比賽的其他幾個主要參賽作品使用(http://image-net.org/challenges/LSVRC/2015/results)。這些結果表明,我們的方法不僅實用,而且是提高目標檢測精度的有效方法。

2.相關工作

目標提案。有關於目標提案方法的大量文獻。目標提案方法的綜合調查和比較可以在192021中找到。廣泛使用的目標提案方法包括基於分組超畫素(例如,選擇性搜尋4,CPMC22,MCG23)和基於滑動視窗的目標提案方法(例如,視窗中的目標24,EdgeBoxes6)。目標提案方法被採用為獨立於檢測器的外部模組(例如,選擇性搜尋[4]目標檢測器,R-CNN5和Fast R-CNN2)。

深度網路目標檢測。R-CNN方法5使用CNN端到端地將提案區域分類為目標類別或背景。 R-CNN主要作為分類器,它不預測目標邊界(除了通過邊界框迴歸進行細化)。其準確性取決於區域提案模組的效能(參見20中的比較)。幾篇論文提出了使用深層網路預測檢測框的方法25 9 26 27。在OverFeat方法9中,訓練全連線層以預測假定單目標定位任務的框座標。全連線層然後被變成用於檢測多種類別目標的卷積層。MultiBox方法26 27的網路從最後一個全連線層同時預測多個類別無關框,是對OverFeat的但目標模式的推廣。這些類別無關框被用作R-CNN的提案5。與我們的全卷積方案相比,MultiBox提案網路應用於單個影象塊或多個大影象塊(例如,224×224224×224)。 MultiBox不共享提案和檢測網路之間的特徵。我們在後文中講我們的方法時會更深層次地討論OverFeat和MultiBox。與我們的工作同時進行的DeepMask方法28被用於學習分割提案。

卷積的共享計算9 1 29 7 2高效、精確,已經在視覺識別方面吸引了越來越多的注意。OverFeat論文9從影象金字塔計算卷積特徵,用於分類、定位、檢測。在共享的卷積特徵對映上自適應大小的pooling(SPP)1能有效用於基於區域的目標檢測1 30和語義分割29。Fast R-CNN2實現了在共享卷積特徵上訓練的端到端檢測器,顯示出令人驚歎的準確率和速度。

3.Faster R-CNN

我們的目標檢測系統稱為Faster R-CNN,由兩個模組組成。第一個模組是提出區域提案的深度全卷積網路,第二個模組是使用區域提案的Fast R-CNN檢測器2。整個系統是一個統一的目標檢測網路(圖2)。使用最近流行的神經網路術語“注意力”31機制,RPN模組告訴Fast R-CNN模組要看哪裡。在3.1節中,我們介紹了區域提案網路的設計和屬性。在3.2節中,我們介紹用於訓練具有共享特徵的兩個模組的演算法。

Figure 2

圖2. Faster R-CNN是用於目標檢測的單個統一網路。 RPN模組作為統一網路的“注意力”。

3.1區域提案網路

區域提案網路(RPN)將一個影象(任意大小)作為輸入,輸出矩形目標提案框的集合,每個框有一個objectness得分(“區域”是一個通用術語,在本文中,我們只考慮矩形區域,這與許多方法是一致的(例如27 4 6)。 “objectness”衡量一組目標類與背景的成員關係。)。我們用全卷積網路7對這個過程構建模型,本章會詳細描述。因為我們的最終目標是和Fast R-CNN目標檢測網路2共享計算,所以假設這兩個網路共享一系列卷積層。在實驗中,我們詳細研究Zeiler和Fergus的模型32(ZF),它有5個可共享的卷積層,以及Simonyan和Zisserman的模型3(VGG),它有13個可共享的卷積層。

為了生成區域提案框,我們在最後一個共享的卷積層輸出的卷積特徵對映上滑動小網路,這個網路連線到輸入卷積特徵對映的n×nn×n的空間視窗上。每個滑動視窗對映到一個低維向量上(對於ZF是256-d,對於VGG是512-d,後面接一個ReLU33)。這個向量輸出給兩個同級的全連線的層:檢測框迴歸層(reg)和檢測框分類層(cls)。本文中n=3n=3,注意影象的有效感受野很大(ZF是171畫素,VGG是228畫素)。圖3(左)以這個小網路在某個位置的情況舉了個例子。注意,由於小網路是滑動視窗的形式,所以全連線層(n×nn×n的)被所有空間位置共享(指所有位置用來計算內積的n×nn×n的層引數相同)。這種結構實現為n×nn×n的卷積層,後接兩個同級的1×11×1的卷積層(分別對應reg和cls),ReLU33應用於n×nn×n卷積層的輸出。

Figure 3

圖3:左:區域提案網路(RPN)。右:用RPN提案框在PASCAL VOC 2007測試集上的檢測例項。我們的方法可以在很大範圍的尺度和長寬比中檢測目標。

3.1.1錨點(Anchor)

在每一個滑動視窗的位置,我們同時預測k個區域提案,所以reg層有4k4k個輸出,即kk個box的座標編碼。cls層輸出2k2k個得分,即對每個提案框是目標/非目標的估計概率(為簡單起見,是用二分類的Softmax層實現的cls層,也可以用Logistic迴歸來生成kk個得分)。kk個提案框被相應的kk個稱為anchor的box引數化。每個anchor以當前滑動視窗中心為中心,並對應一種尺度和長寬比(圖3,左),預設情況下,我們使用3種尺度和3種長寬比,這樣在每一個滑動位置就有k=9k=9個anchor。對於大小為W×HW×H(典型值約2,400)的卷積特徵對映,總共有WHkWHk個anchor。

平移不變錨點

我們的方法有一個重要特性,就是平移不變性,對anchor和對計算anchor相應的提案框的函式而言都是這樣。如果平移了影象中的目標,提案框也應該平移,也應該能用同樣的函式預測提案框。我們的方法確保了這種平移不變的屬性(如FCN7的情況,在網路的總體步幅以內,我們的網路是平移不變的。)。作為比較,MultiBox方法[27]用k-means生成800個anchor,但不具有平移不變性。因此,MultiBox不具有平移不變性。

平移不變性也減少了模型大小。 MultiBox有(4+1)×800(4+1)×800維全連線輸出層,而在k = 9個錨點的情況下,我們的方法有(4+2)×9(4+2)×9維的卷積輸出層。因此,我們的輸出層具有2.8×1042.8×104個引數(VGG-16為512×(4+2)×9512×(4+2)×9),比具有6.1

相關推薦

Faster R-CNN利用區域提案網路實現實時目標檢測 論文翻譯

Faster R-CNN論文地址:Faster R-CNN Faster R-CNN專案地址:https://github.com/ShaoqingRen/faster_rcnn 摘要 目前最先進的目標檢測網路需要先用區域提案演算法推測目標位置,像SPPnet1和Fast R-CNN2

Faster R-CNN區域提案網路實現實時目標檢測

摘要 最先進的目標檢測網路依賴於區域建議演算法來假設物體的位置.像sppnet[1]和快速r-cnn[2]這樣的進步減少了這些檢測網路的執行時間,將區域提案計算暴露為瓶頸。在本文中,我們引入了一個區域提案網路(RPN),它與檢測網路共享全影象卷積特徵,從而實現了幾乎免費的區域提案。RPN是一個完

Faster R-CNN詳解目標檢測實現過程

最大的 中心 width 小數據 等等 eat tar 優先 博文 本文詳細解釋了 Faster R-CNN 的網絡架構和工作流,一步步帶領讀者理解目標檢測的工作原理,作者本人也提供了 Luminoth 實現,供大家參考。 Luminoth 實現:h

Domain Adaptive Faster R-CNN經典域自適應目標檢測演算法,解決現實中痛點,程式碼開源 | CVPR2018

> 論文從理論的角度出發,對目標檢測的域自適應問題進行了深入的研究,基於H-divergence的對抗訓練提出了DA Faster R-CNN,從圖片級和例項級兩種角度進行域對齊,並且加入一致性正則化來學習域不變的RPN。從實驗來看,論文的方法十分有效,這是一個很符合實際需求的研究,能解決現實中場景多樣

區域卷積神經網路R-CNN,SPP-Net,Fast R-CNN,Faster R-CNN)

1 模型進化史 檢測框架可分為兩類: 兩級式檢測框架,包含一個用於區域提議的預處理步驟,使得整體流程是兩級式的,如R-CNN系列 單級式檢測框架,即無區域提議的框架,這是一種單獨提出的方法,不會將檢測提議分開,使得整個流程是單級式的,如YOLO系列

Faster R-CNN網路的另一種優化思路cascade R-CNN網路詳解

論文:Cascade R-CNN: Delving into High Quality Object Detection 論文地址:https://arxiv.org/pdf/1712.00726.pdf Github專案地址:https://github.com/zhaoweicai/

Faster R-cnn中的RPN網路詳細解釋

作者RPN網路前面的g層借用的是ZF網路,網路相對較淺,不過並不影響後期介紹。 1、首先,輸入圖片大小是 224*224*3(這個3是三個通道,也就是RGB三種) 2、然後第一層的卷積核維度是 7*7*3*96 (所以大家要認識到卷積核都是4維的,在caffe的矩陣計算中都是這麼實現的); 3、

Faster R-CNN改進篇(二) RFCN ● RON

版權宣告:本文為博主原創文章,未經博主允許不得轉載。 https://blog.csdn.net/linolzhang/article/details/75137050 @改進1:RFCN        論文:R-FCN: Object Detecti

Faster R-CNN改進篇(一) ION ● HyperNet ● MS CNN

版權宣告:本文為博主原創文章,未經博主允許不得轉載。 https://blog.csdn.net/linolzhang/article/details/74159463 一. 源起於Faster        深度學習於目標檢測的里程碑成果,來自於這篇

譯文Faster R-CNN

【翻譯】Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks Shaoqing Ren, Kaiming He, Ross Girshick, and Jian Sun 摘要:

基於DL的目標檢測技術R-CNN、Fast R-CNNFaster R-CNN

目標檢測:在給定的圖片中精確找到物體所在位置,並標註出物體的類別。 目標檢測=影象識別(CNN)+定位(迴歸問題/取影象視窗) 遇到多物體識別+定位多個物體? 用選擇性搜尋找出可能含有物體的框(候選框)判定得分。這些框之間是可以互相重疊互相包含的,從而避免暴力列舉的所有框了。 1.R

王權富貴論文Faster R-CNN論文翻譯——中英文對照

文章作者:Tyan  感謝Tyan作者大大,相見恨晚,大家可以看原汁原味的Tyan部落格哦。 部落格:noahsnail.com  |  CSDN  |  簡書 宣告:作者翻譯論文僅為學習,如有侵權請聯

深度學習論文翻譯解析(四)Faster R-CNN: Down the rabbit hole of modern object detection

論文標題:Faster R-CNN: Down the rabbit hole of modern object detection 論文作者:Zhi Tian , Weilin Huang, Tong He , Pan He , and Yu Qiao 論文地址:https://tryolab

目標檢測技術演進Fast R-CNNFaster R-CNN

在上一篇目標檢測技術演進:R-CNN、Fast R-CNN、Faster R-CNN 之 RCNN中,我講了 RCNN 演算法,似乎它的表現不太好,所以這次我們講講它的進化版 —— Fast RCNN 和 Faster RCNN。 如果你還沒看上一篇,可以在我的部落格或者知乎檢視。

目標檢測技術演進R-CNN、Fast R-CNNFaster R-CNN 之 RCNN

這篇文章的內容總結翻譯自 A Step-by-Step Introduction to the Basic Object Detection Algorithms (Part 1) ,文中有加入自己的理解。 當你想要在雜亂的桌子上面尋找鑰匙的時候,是不是有想過要是有種東西可以直接告訴我鑰

論文閱讀筆記二十六Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks(CVPR 2016)

論文源址:https://arxiv.org/abs/1506.01497 tensorflow程式碼:https://github.com/endernewton/tf-faster-rcnn 摘要       目標檢測依賴於區域proposals演算法對目標的位置進

目標檢測演算法的演進(two-stage檢測演算法)R-CNN、SPP-Net、Fast R-CNNFaster R-CNN、Mask R-CNN

什麼是目標檢測(object detection): 目標檢測(object detection),就是在給定的一張圖片中精確找到物體所在的位置,並標註出物體的類別。所以,目標檢測要解決的問題就是物體在哪裡以及是什麼的整個流程問題。 但是,在實際照片中,物體的尺寸變化範圍很大,擺放物體的

論文筆記目標檢測演算法(R-CNN,Fast R-CNNFaster R-CNN,YOLOv1-v3)

R-CNN(Region-based CNN) motivation:之前的視覺任務大多數考慮使用SIFT和HOG特徵,而近年來CNN和ImageNet的出現使得影象分類問題取得重大突破,那麼這方面的成功能否遷移到PASCAL VOC的目標檢測任務上呢?基於這個問題,論文提出了R-CNN。 基本步驟:如下圖

基於深度學習的目標檢測技術演進R-CNN、Fast R-CNNFaster R-CNN

object detection我的理解,就是在給定的圖片中精確找到物體所在位置,並標註出物體的類別。object detection要解決的問題就是物體在哪裡,是什麼這整個流程的問題。然而,這個問題可不是那麼容易解決的,物體的尺寸變化範圍很大,擺放物體的角度,姿態不定,而且可以出現在圖片的任何地方,更何況物

目標檢測網路篇(3)【Faster R-CNN

前言 1.有關VGG16結構,參見:VGG16圖形化描述 2.本週目標是看三篇網路類,讀到第三篇Faster R-CNN的時候我發現需要先弄懂R-CNN以及Fast R-CNN。引用@v_JULY_v的文章的總結: R-CNN 1.在影象中確定約1000-200