論文標題:Rich feature hierarchies for accurate object detection and semantic segmentation
標題翻譯:豐富的特徵層次結構,可實現準確的目標檢測和語義分割
論文作者:Ross Girshick Jeff Donahue Trevor Darrell Jitendra Mali
論文地址:http://fcv2011.ulsan.ac.kr/files/announcement/513/r-cnn-cvpr.pdf
RCNN的GitHub地址 : https://github.com/rbgirshick/rcnn
參考的RCNN翻譯部落格:https://blog.csdn.net/v1_vivian/article/details/78599229
宣告:小編翻譯論文僅為學習,如有侵權請聯絡小編刪除博文,謝謝!
小編是一個機器學習初學者,打算認真研究論文,但是英文水平有限,所以論文翻譯中用到了Google,並自己逐句檢查過,但還是會有顯得晦澀的地方,如有語法/專業名詞翻譯錯誤,還請見諒,並歡迎及時指出。
摘要
過去幾年,在權威資料集PASCAL上,物體檢測的效果已經達到了一個穩定水平。效果最好的方法是融合了多種低維影像特徵和高維上下文環境的複雜融合系統。在這篇論文裡,我們提出了一種簡單並且可擴充套件的檢測演算法,可以將 mAP在VOC2012最好結果的基礎上提高30%以上——達到了53.3%。我們的方法結合了兩個關鍵的因素:
- 1,在候選區域上自下而上使用大型卷積神經網路(CNNs),用以定位和分割物體。
- 2,當帶標籤的訓練資料不足時,先針對輔助任務進行有監督預訓練,再進行特定任務的調優,就可以產生明顯的效能提升。
因為我們將區域提案與CNN結合,因此我們將我們的方法稱為 R-CNN(Region proposals with CNN features):具有CNN功能的區域。完整系統的原始碼可以從:http://www.cs.berkeley.edu/~rbg/rcnn 獲得。
(作者也將R-CNN效果跟OverFeat 比較了一下(Overfeat是最近提出的在與我們相似的CNN特徵下采樣滑動視窗進行目標檢測的一種方法),結果發現RCNN在200類ILSVRC2013檢測資料集上的效能明顯優於Overfeat。
Overfeat:是改進了AlexNet網路,並用影像縮放和滑窗方法在test資料集上測試網路;提出一種影像定位的方法;最後通過一個卷積神經網路來同時進行分類,定位和檢測三個計算機視覺任務,並在 ILSVRC 2013中獲得了很好的結果。
1,引言
特徵問題,在過去十年,各類視覺識別任務的進展都很大程度取決於SIFT[27]和HOG[7] 的使用。但是,如果我們檢視經典的視覺識別任務PASCAL VOC 物件檢測的效能[13],則通常公認的是,2010~2012年進度緩慢,取得的微小進步都是通過構建一些整合系統和採用一些成功方法的變種才達到的。
SIFT和HOG是塊狀方向直方圖(blockwise orientation historgrams),可以大致與V1(靈長類動物視覺通路的第一個皮質區域)中的複雜細胞相關聯。但是我們知道識別發生在多個下游階段(我們是先看到了一些特徵,然後才意識到這是什麼東西),也就是說對於視覺識別來說,更有價值的資訊是層次化的,多階段的。
Fukushima 的 “neocognitron”,一種受生物學啟發用於模式識別的層次化,移動不變性模型,算是這方面最早的嘗試。然而neocognitron 缺乏監督學習演算法。Lecun等人的工作表明基於反向傳播的隨機梯度下降(SGD)對訓練卷積神經網路(CNNs)非常有效,CNNs被認為是繼承自 neocognitron的一類模型。
CNNs在1990年代被廣泛使用,但是隨著SVM的崛起而淡出研究主流。2012年,Krizhevsky等人在 ImageNet 大規模視覺識別挑戰賽(ILSVRC)上的出色表現重新燃起了世界對CNNs的興趣(AlexNet)。他們的成功在於120萬的標籤影像上使用了一個大型的CNN,並且對LeCun 的CNN進行了一些改造(比如ReLU和Dropout Regularization)。
這個ImageNet 的結果的重要性在ILSVRC2012 workshop上得到了熱烈的討論。提煉出來的核心問題是:ImageNet的CNN分類結果在何種程度上能夠應用到 PASCAL VOC挑戰的物體檢測任務上?
我們通過連線影像分類和目標檢測,回答了這個問題。本論文是第一個說明在PASCAL VOC的物體檢測任務上CNN比基於簡單類HOG特徵的系統有大幅的效能提升。我們主要關注了兩個問題:使用深度網路定位物體和在小規模的標註資料集上進行大型網路模型的訓練。
與影像分類不同的是檢測需要定位一個影像內的許多物體。一個方法是將框定位看做是迴歸問題。但Szegedy等人的工作說明這種策略不work(在VOC2007上他們的mAP是30.5%,而我們達到了58.5%)。另一個可替代的方法是使用滑動視窗探測器,通過這種方法使用CNNs至少已經有20年的時間了。通常用於一些特定的種類如人臉,行人等。為了獲得較高的空間解析度,這些CNNs都採用了兩個卷積層和兩個池化層。我們本來也考慮過使用滑動視窗的方法,但是由於網路層次更深,輸入圖形有非常大的感受野(195*195)和步長(32*32 ),這使得采用滑動視窗的方法充滿挑戰。
我們是通過操作“recognition using regions”正規化,解決了CNN的定位問題。測試時,對這張圖片,產生了接近2000個與類別無關的 region prorosal,對每個CNN抽取了一個固定長度的特徵向量,然後藉助專門針對特定類別資料的線性SVM對每個區域進行分類。我們不考慮region的大小,使用放射影像變形的方法來對每個不同形狀的region proposal,對每個CNN抽取了一個固定長度的特徵向量,然後藉助專門針對特定類別資料的線性SVM對每個區域進行分類。我們不考慮region的大小,使用仿射影像變形的方法來對每個不同形狀的region proposal產生一個固定長度的作為 CNN 輸入的特徵向量(也就是把不同大小的 proposal 放到同一個大小)。圖1展示了我們方法的全貌並突出展示了一些實驗結果。由於我們結合了 region proposals和CNNs,所以起名RCNN:regions with CNN features。
檢測中面對的第二個挑戰是標籤資料太少,現在可獲得的資料遠遠不夠用於訓練一個大型卷積網路。傳統方法多是採用無監督與訓練,再進行監督調優。本文的第二個核心共享是在輔助資料集(ILSVRC)上進行有監督預訓練,再在小資料集上針對特定問題進行調優。這是在訓練資料稀少的情況下的一個非常有效的訓練大型卷積神經網路的方法。我們的實驗中,針對檢測的調優將mAP調高了8個百分點。調優後,我們的系統在VOC2010上達到了 54%的 mAP,遠遠超過高度優化的基於 HOG的可變性部件模型(deformable part model,DPM)。我們還向讀者指出 Donahue等人的同期工作,[11]的研究表明,Krizhevsky 的CNN可以用作黑箱特徵提取器(無需進行微調),從而在某些識別任務(包括場景分類,細粒度子分類和域自適應)上表現出出色的效能。
DPM:多尺度形變部件模型,連續獲得07~09的檢測冠軍,2010年起作者 Felzenszwalb Pedro 被VOC授予“終身成就獎”。DPM把物體看成多個組成的部件(比如人臉的鼻子,嘴巴等),用部件間的關係來描述物體,這個特性非常符合自然界很多物體的非剛體特徵。DPM可以看做是HOG+SVM的擴充套件,很好地繼承了兩者的優點,在人臉檢測,行人檢測等任務上取得了不錯的效果,但是 DPM相對複雜,檢測速度也較慢,從而也出現了很多改進的方法。
我們的系統也很高效,都是小型矩陣向量相乘和貪婪NMS這些特定類別的計算。這個計算特性源自於特徵在不同類別之間的共享(對於不同類別,CNNs提取到的特徵是一樣的),這比之前使用的區域特徵少了兩個數量級的維度。
HOG-like 特徵的一個優點是簡單性:能夠很容易明白提取到的特徵是什麼,那我們能視覺化出CNNs提起到的特徵嗎?全連線層有超過5千4百萬的引數值,這是關鍵嗎?這都不是,我們將CNN切斷,會發現,移除掉其中 94%的引數,精度只會下降一點點。相反,通過網路中的探測單元我們可以看到卷積層學習了一組豐富的特性。(圖3)
分析我們方法的失敗案例,對進一步提高很有幫助,所以我們藉助 Hoiem等人的定位分析工具做實驗結果的報告和分析。分析結果,我們發現主要的錯誤是因為 mislocalization,而是由了bounding box regression 之後,可以有效的降低這個錯誤。
介紹技術細節之前,我們提醒大家由於 R-CNN 是在推薦區域上進行操作,所以可以很自然地擴充套件到語義分割任務上。只要很小的改動,我們就在 PASCAL VOC 語義分割任務上達到了很有競爭力的結果,在 VOC2011測試集上平均語義分割精度達到了 47.9%。
2,用R-CNN進行物體檢測
我們的物體檢測系統包含三個模組,第一個,產生類別無關的region proposals,這些推薦定義了一個候選檢測區域的集合;第二個是一個大型卷積神經網路,用於從每個區域抽取特定大小的特徵向量;第三個是一個指定類別的線性SVM。本部分,將展示每個模組的設計,並介紹他們的測試階段的用法,以及引數是如何學習的細節,最後給出在PASCAL VOC 2010~2012和 ILSVRC2013上的檢測結果。
2.1 模組設計
區域推薦(region proposals)
近年來有很多研究都提出了產生類別無關區域推薦的方法。比如:objectness(物體性),selective search(選擇性搜尋),category-independent object proposals(類別無關物體推薦),constrained parametric min-cuts(受限參最小剪下,CPMC),multi-scal combinatorial grouping(多尺度聯合分組),以及Ciresan等人的方法,將CNN用在規律空間塊裁剪上以檢測有絲分裂細胞,也算是一種特殊的區域推薦型別。由於RCNN對特定區域演算法是不關心的,所以我們採用了選擇性搜尋以方便和前面的工作進行可控的比較。
特徵提取(Feature extraction)
我們使用Krizhevsky等人所描述的CNN的一個Caffe實現版本對每個推薦區域抽取了一個 4096維度的特徵向量把一個輸入為227*227大小的圖片,通過五個卷積層和兩個全連線層進行前向傳播,最終得到了一個 4096-D的特徵向量。讀者可以參考AlexNet獲得更多的網路架構細節。
為了計算region proposal的特徵,我們首先要對影像進行轉換,使得它符合CNNs的輸入(架構中的 CNNs只能接受固定大小:227*227)。這個變換有很多辦法,我們使用了最簡單的一種。無論候選區域是什麼尺寸和寬高比,我們都把候選框變形成想要的尺寸。具體的,變形之前,我們現在候選框周圍加上16的padding,再進行各向異性縮放。這種形變使得mAP提高了3到5個百分點,在補充資料中,作者對比了各向異性和各向同性縮放方法。
2.2 測試時間檢測
在測試階段,我們在測試影像上使用 selective search 抽取了2000個推薦區域(實驗中,我們使用了選擇性搜尋的快速模式),然後編寫每一個推薦區域,再通過CNN前向傳播計算出特徵。然後我們使用對每個類別訓練出的SVM給整個特徵向量中的每個類別打分。然後給出一張影像中所有的打分割槽域,然後使用NMS(每個類別都是獨立進行的),拒絕掉一些和高分割槽域的IOU大於閾值的候選框。
執行時間分析
兩個特性讓檢測變得很高效。首先,所有的CNN引數都是跨類別共享的。其次,通過CNN計算的特徵向量相比其他通用方法(比如spatial pyramids with bag-of-visual-word encodings 帶有視覺詞袋編碼的空間金字塔)相比,維度是很低的。UVA檢測系統的特徵比我們的要多兩個數量級(360K vs 4K)。
這種共享的結果就是計算推薦區域特徵的耗時可以分攤到所有類別的頭上(GPU:每張圖13s,CPU:每張圖53s)。唯一的和具體類別有關的計算是特徵向量和SVM權重和點積,以及NMS。實踐中,所有的點積都可以批量化成一個單獨矩陣間運算。特徵矩陣的典型大小是 2000*4096,SVM權重的矩陣是 4096*N,其中N是類別的數量。
分析表明R-CNN可以擴充套件到上千個類別,而不需要借用近似技術(如hashing)。即使有10萬個類別,矩陣乘法在現代多核CPU上只需要 10s 而已。但是這種高效不僅僅是因為使用了區域推薦和共享特徵。由於較高維度的特徵,UVX系統儲存 100k linear predictors 需要 134G的記憶體,而我們只要 1.5GB,比我們高了兩個數量級。
有趣的是R-CNN和最近 Dean等人使用 DPMs 和 hashing做檢測的工作相比,他們用了1萬個干擾類,每五分鐘可以處理一張圖片,在VOC 2007上的 mAP能達到 16%,我們的方法1萬個檢測器由於沒有做近似,可以在CPU上一分鐘跑完,達到了 59%的mAP。(3.2節)
2.3 訓練
有監督的預訓練
我們在大型輔助訓練集 ILSVRC2012分類資料集(沒有約束框資料)上預訓練了CNN。預訓練採用了Caffe的CNN庫。總體來說,我們的CNN十分接近Krizhevsky等人的網路的效能,在ILSVRC2012分類驗證集在top-1錯誤率上比他們高2.2%。差異主要來自於訓練過程的簡化。
特定領域的引數調優
為了讓我們的CNN適應新的任務(即檢測任務)和新的領域(變形後的推薦視窗)。我們只使用變形後的推薦區域對CNN引數進行SGD訓練。我們替換掉了ImageNet專用的1000-way分類層,換成了一個隨機初始化的21-way分類層(其中20是VOC的類別數,1代表背景)。而卷積部分都沒有改變。我們對待所有的推薦區域,如果其和真實標註的框的 IoU >= 0.5 就認為是正例,否則就是負例。SGD開始的learning rate 是 0.001(是初始化預訓練時的十分之一)。這使得調優得以有效進行而不會破壞初始化的成果。每輪SGD迭代,我們通一使用32個正例視窗(跨所有類別)和96個背景視窗,即每個mini-batch 的大小為 128。另外我們傾向於取樣正例視窗,因為和背景相比,他們很稀少。
目標種類分類器
考慮訓練一個檢測汽車的二分類器。很顯然,一個影像區域緊緊包裹著一輛汽車應該就是正例。同樣的,沒有汽車的就是背景區域,也就是負例。較為不明確的是怎麼樣標註那些之和汽車部分重疊的區域,我們使用IOU重疊閾值來解決這個問題,低於這個閾值的就是負例。這個閾值我們選擇了 0.3,是在驗證集上基於{0, 0.1,...0.5}通過網格搜尋得到的。我們發現認真選擇這個閾值很重要。如果設定Wie0.5,可以降低mAP 5個點,設定為0,就會降低4個點。正例就嚴格的是標註的框。
Tips:IOU < 0.3 被作為負例,ground-truth是正例,其餘的全部丟棄。
一旦特徵提取出來,並應用標籤資料,我們優化了每個類的線性SVM。由於訓練資料太大,難以裝進記憶體,我們選擇了標註的 hard negative mining method,高難負例挖掘演算法收斂很快,實踐中只需要在所有影像上經過一輪訓練,mAP就可以基本停止增加了。
hard negative mining method:難負例挖掘演算法,用途就是正負例樣本數量不均衡,而負例分散代表性又不夠的問題,hard negative 就是每次把哪些頑固的棘手的錯誤,再送回去繼續練,練到你成績不再提升為止,這一個過程就叫‘hard negative mining’
在補充材料中,我們討論了為什麼微調與SVM訓練中正例和負例的定義不同。我們還將討論為什麼必須訓練檢測分類器,而不是簡單地使用經過微調的CNN的最後一層(fc8)的輸出。
fine-tuning階段是由於CNN對小樣本容易過擬合,需要大量訓練資料,故對IOU限制寬鬆:IoU > 0.5 的建議框為正樣本,否則為負樣本;SVM這種機制是由於其適用於小樣本訓練,故對樣本IoU限制嚴格:Ground Truth 為正樣本,與Ground Truth 相交 IoU < 0.3 的建議框為負樣本。
為什麼單獨訓練了一個SVM而不是直接用softmax,作者提到,剛開始時只是用了ImageNet預訓練了CNN,並用提取的特徵訓練了SVM,此時用正負樣本標記方法就是前面所述的0.3,後來剛開始使用 fine-tuning時,也使用了這個方法,但是發現結果很差,於是通過除錯選擇0.5 這個方法,作者認為這樣可以加大樣本的數量,從而避免過擬合。然而,IoU大於0.5就作為正樣本會導致網路定位準確度的下降,故使用了SVM做檢測,全部使用ground-truth嚴格不作為正副本,且使用非正樣本的,且IoU大於 0.3的“hard negatives”,提高了定位的準確度。
2.4 在PASCAL VOC 2010~2012上的結果
按照PASCAL VOC的最佳實踐步驟,我們在VOC2007的資料集上驗證了我們所有的設計思路和引數處理,我們在VOC2012上訓練和優化了SVM,最終結果再VOC 2010~12的資料庫,我們在評估伺服器上提交了兩個結果(一個是有 bunding box regression,一個沒有)。
表1展示了在VOC2010的結果,我們將自己的方法同四種先進基準方法做對比,其中包括SegDPM,這種方法將DPM檢測子與語義分割系統相結合並且附加的inter-detector的環境和圖片檢測器。更加恰當的是比較同Uijling的UVA系統比較,因為我們的方法同樣基於候選框演算法。對於候選框區域的分類,他們通過構建一個四層的金字塔,並且將之與SIFT模板結合,SIFT為擴充套件的OpponsentSIFT和RGB-SIFT描述子,每一個向量被量化為 4000-word的codebook。分類任務由一個交叉核的SVM承擔,對比這種方法的多特徵方法,非線性核心的SVM方法,我們在mAP達到了一個更大的提升,從 35.1%提升到53.7%,而且速度更快。我們的方法在 VOC 2011/2012測試集上達到了相似的檢測效果mAP 53.3%。
3,視覺化,消融和模型的錯誤
3.1 視覺化學習的特徵
直接視覺化第一層 filters非常容易理解,他們主要捕獲方向性邊緣和對比色。難以理解的是後面的層,Zeiler and Fgrgus 提出了一種視覺化的很棒的反摺積辦法。我們則使用了一種簡單的非引數化方法,直接展示網路學習到的東西。
這個想法是單一輸出網路中一個特定單元(特徵),然後把它當做一個正確類別的物體檢測器來使用。方法是這樣的,先計算所有抽取出來的推薦區域(大約1000萬),計算每個區域所導致的對應單元的啟用值,然後按啟用值對這些區域進行排序,然後進行最大值抑制,最後展示分值最高的若干個區域。這個方法讓被選中的單元在遇到它想啟用的輸入時“自己說話”。我們避免平均化是為了看到不同的視覺模式和深入觀察單元計算出來的不變性。
我們視覺化了第五層的池化層 pool5,是卷積網路的最後一層,feature map(卷積核和特徵數的總稱)的大小是 6*6*256 = 9216維。忽略邊界效應,每個pool5單元擁有195*195的感受野,輸入是 227*227.pool5中間的單元,幾乎是一個全域性視角,而邊緣的單元有較小的帶裁切的支援。
圖3的每一行顯示了對於一個 pool5 單元的最高 16個啟用區域情況,這個例項來自於 VOC 2007上我們調優的CNN,這裡只展示了 256個單元中的6個(附錄D包含更多),我們看看這些單元都學到了什麼。第二行,有一個單元看到狗和斑點的時候就會啟用,第三行對應紅斑點,還有人臉,當然還有一些抽象的模式,比如文字和帶視窗的三角結構。這個網路似乎學到了一些類別調優相關的特徵,這些特徵都是形狀,紋理,顏色和材質特性的分散式表示。而後續的 fc6層則對這些豐富的特徵建立大量的組合來表達各種不同的事物。
3.2 消融研究(Ablation studies)
tips:Albation study 就是為了研究模型中所提出的一些結構是否有效而設計的實驗。如你提出了某某結構,但是要想確定這個結構是否有利於最終的效果,那就要將去掉該結構的網路與加上該結構的網路所得到的結果進行對比,這就是 ablation study,也就是控制變數法。
沒有調優的各層效能
為了理解那一層對於檢測的效能十分重要,我們分析了CNN最後三層的每一層在 VOC 2007上面的結果。Pool5在3.1 中做過簡短的表述。最後兩層下面來總結一下。
fc6 是一個與pool5連線的全連線層。為了計算特徵,它和 pool5的 feature map(reshape成一個 9216維度的向量)做了一個 4096*9216的矩陣乘法,並新增了一個 bias 向量。中間的向量是逐個元件的半波整流(component wise half wave rectified)(RELU (x -> max(0, x)))
fc7是網路的最後一層,跟 fc6 之間通過一個 4096*4096 的矩陣相乘。也是新增了 bias 向量和應用了RELU。
我們先來看看沒有調優的CNN在PASCAL 上的表現,沒有調優是指所在的CNN引數就是在ILSVRC 2012上訓練後的狀態。分析每一層的效能顯示來自於fc7的特徵泛化能力不如fc6的特徵。這意味著29%的CNN引數,也就是 1680萬的引數可以移除掉,而且不影響mAP。更多的驚喜是即使同時移除fc6和fc7,僅僅使用pool5的特徵,只使用CNN引數的6%也能有非常好的結果。可見CNN的主要表達力來自於卷積層,而不是全連線層。這個發現提醒我們也許可以在計算一個任意尺寸的圖片的稠密特徵圖(dense feature map)時僅僅使用CNN的卷積層。這種表示可以直接在 pool5 的特徵上進行滑動視窗檢測的實驗。
調優後的各層效能
我們現在看看調優後在VOC 2007上的結果表現。提升非常明顯,mAP提升了8個百分點,達到了54.2%。fc6和fc7的提升明顯優於pool5,這說明 pool5從ImageNet學習的特徵通用性很強,在它之上層的大部分提升主要是在學習領域相關的非線性分類器。
對比最近的特徵學習方法
相當少的特徵學習方法應用於VOC資料集。我們找到的兩個最近的方法都是基於固定探測模型。為了參照的需要,我們也將基於基本HOG的DFM方法的結果加入比較。
第一個DPM的特徵學習方法,DPM ST將HOG中加入略圖表徵的概率直方圖。直觀的,一個略圖表徵概率通過一個被訓練出來的分類 35*35 畫素路徑為一個 150 略圖表徵的隨機森林方法計算。
第二個方法,DPM HSC,將 HOG特徵替換成一個稀疏編碼的直方圖。為了計算HSC,在每個畫素上使用一個學習到的 1007*7畫素(灰度空間)原子求解稀疏編碼啟用,由此產生的啟用以三種方式(全波和半波)整流,空間池化,L2標準化,然後進行冪運算。
所有的RCNN變種演算法都要強於這三個 DPM 方法(表2,8~10行),包括兩種特徵學習的方法與最新版本的 DPM方法比較,我們的mAP要多大約20個百分點,61%的相對提升。略圖表徵與HOG相結合的方法比單純HOG的效能高出2.5%,而HSC的方法相對於HOG提升4個百分點(當內在的與他們自己的DPM基準比較,全都是用的非公共 DPM執行,這低於開源版本)。這些方法分別達到了 29.1%和34.3%。
3.3 檢測錯誤分析
為了揭露出我們方法的錯誤之處,我們使用Hoiem提出的優秀的檢測分析工具,來理解調參是怎麼改變他們,並且觀察相對於 DPM方法,我們的錯誤形式。這個分析方法全部的介紹超出了本文的介紹範圍,我們建議讀者查閱文獻21來了解更加詳細的介紹(例如“normalized AP”的介紹),由於這些分析是不太有關聯性,所以我們放在圖4和圖5的題注裡討論。
3.4 Bounding box迴歸
基於錯誤分析,我們使用了一種簡單的方法減少定位誤差,受到 DPM[17]中使用的約束框迴歸訓練啟發,我們訓練了一個線性迴歸模型在給定一個選擇區域的 pool5特徵時去預測了一個新的檢測視窗。詳細的細節參考附錄C。表1,表2 和圖4的結果說明這個簡單的方法,修復了大量的錯位檢測,提升了3~4個百分點。
4,語義分割
區域分類是語義分割的標準技術,這使得我們很容易將R-CNN 應用到PASCAL VOC 分割任務的挑戰。為了和當前主流的語義分割系統(稱為O2P,second-order piiling[4])做對比,我們使用了一個開源的框架。O2P使用CPMC針對每張圖片產生了150個區域推薦,並預測每個區域的品質,對於每個類別,進行支撐向量迴歸(support vector regression,SVR)。他們的方法很高效,主要得益於CPMC區域的品質和多特徵型別的強大二階池化(second -sencond pooling,SIFT和LBP的增強變種)。我們也注意到Farabet等人[16]將CNN用作多尺度逐畫素分類器,在幾個高密度場景標註資料集(不包括PASCAL)上取得了不錯的成績。
我們學習[2, 4],將Haeiharan等人提供的額外標註資訊補充到PASCAL分割訓練集中。設計選擇和超引數都在 VOC2011驗證集上進行交叉驗證。最後的測試結果只執行了一次。
用於分割的CNN特徵
為了計算CPMC區域上的特徵,我們執行了三個策略,每個策略都先將矩形視窗變形到 227*227大小。第一個策略完全忽略區域的形狀(full ignore),直接在變形後的視窗上計算 CNN特徵,就和我們檢測時做的一樣。但是,這些特徵忽略了區域的非矩形形狀。兩個區域也許包含相似的約束框卻幾乎沒有重疊。因此,第二個策略(fg,foreground)只計算前景遮罩(foreground mask)的CNN特徵,我們將所有的背景畫素替換成平均輸入,這樣減去平均值後他們就會變成0。第三個策略(full+fg),簡單的並聯全部(full)特徵和前景(fg)特徵;我們的實驗驗證了他們的互補性。
在VOC 2011 上的結果
表3顯示了與O2P相比較的VOC 2011驗證集的結果(每個類別的計算結果見補充材料)。在每個特徵計算策略中,FC6總是優於FC7,下面就針對FC6進行討論,fg策略略優於full,表明掩蔽區域形狀提供了更強的訊號,匹配我們的直覺。然而,full+fg 的平均精度為 47.9%,比 fg優4.2%(也稍優於O2P),這表明即使提供了FG特徵,由full特徵提供的上下文也是有很多資訊。值得注意的是,訓練20個SVR,在我們的full+fg 特徵在單核上需要1個小時,而在O2P特徵則需要10個小時。
在表4中,我們給出了 VOC 2011測試集上的結果。比較我們的最佳執行方法(full + fg),對抗兩個強大的 baselines。我們的方法在 21 個類別中的 11 個達到最高的分割精度,最高的總體分割精度為 47.9%,平均跨類別(但可能與O2P結果在任何合理的誤差範圍內)。通過微調可能會取得更好的成績。
5,總結
最近幾年,物體檢測陷入停滯,表現最好的檢測系統是複雜的將多低層次的影像特徵與高層次的物體檢測器環境與建立識別相結合。本文提出了一種簡單並且可擴充套件的物體檢測方法,達到了VOC 2012資料集相對之前最好效能的 30%的提升。
我們取得這個效能主要通過兩個方面:第一是應用了自底向上的候選框訓練的高容量的卷積神經網路進行定位和分割物體。另外一個是使用在標籤資料匱乏的情況下訓練一個大規模神經網路的方法。我們展示了在有監督的情況下使用豐富的資料集(圖片分類)預訓練一個網路作為輔助性的工作是很有效的,然後採用稀少資料(檢測)去調優定位任務的網路。我們猜測“有監督的預訓練 + 特定領域的調優” 這一正規化對資料稀少的視覺問題是很有效的。
最後,我們注意到能得到這些結果,將計算機視覺中經典的工具和深度學習(自底向上的區域候選框和卷積神經網路)組合是非常重要的。而不是違背科學探索的主線,。這兩個部分是自然而且必然的結合。
致謝
這項研究得到了DARPA Mind的Eye和MSEE計劃的部分支援,由NSF授予IIS-0905647,IIS-1134072和IIS-1212798,MURI N000014-10-1-0933的支援,以及豐田的支援。 本研究中使用的GPU由NVIDIA Corporation慷慨捐贈。