Paper7:R-CNN
一、前言
Code:https://github.com/rbgirshick/rcnn#readme
2014年CVPR上的經(jīng)典paper:《Rich feature hierarchies?for?Accurate Object Detection and Segmentation》,這篇文章的算法思想又被稱(chēng)之為:R-CNN(Regions with Convolutional Neural Network Features),是物體檢測(cè)領(lǐng)域曾經(jīng)獲得state-of-art精度的經(jīng)典文獻(xiàn)
物體檢測(cè)和圖片分類(lèi)的區(qū)別:圖片分類(lèi)不需要定位,而物體檢測(cè)需要定位出物體的位置,也就是相當(dāng)于把物體的bbox檢測(cè)出來(lái),還有一點(diǎn)物體檢測(cè)是要把所有圖片中的物體都識(shí)別定位出來(lái)。
二、基礎(chǔ)知識(shí)
1、有監(jiān)督預(yù)訓(xùn)練與無(wú)監(jiān)督預(yù)訓(xùn)練
(1)無(wú)監(jiān)督預(yù)訓(xùn)練(Unsupervised pre-training)
無(wú)監(jiān)督預(yù)訓(xùn)練這個(gè)名詞我們比較熟悉,棧式自編碼、DBM采用的都是采用無(wú)監(jiān)督預(yù)訓(xùn)練。因?yàn)轭A(yù)訓(xùn)練階段的樣本不需要人工標(biāo)注數(shù)據(jù),所以就叫做無(wú)監(jiān)督預(yù)訓(xùn)練。
(2)有監(jiān)督預(yù)訓(xùn)練(Supervised pre-training)
所謂的有監(jiān)督預(yù)訓(xùn)練,我們也可以把它稱(chēng)之為遷移學(xué)習(xí)。比如你已經(jīng)有一大堆標(biāo)注好的人臉年齡分類(lèi)的圖片數(shù)據(jù),訓(xùn)練了一個(gè)CNN,用于人臉的年齡識(shí)別。然后當(dāng)你遇到新的項(xiàng)目任務(wù)是:人臉性別識(shí)別,那么這個(gè)時(shí)候你可以利用已經(jīng)訓(xùn)練好的年齡識(shí)別CNN模型,去掉最后一層,然后其它的網(wǎng)絡(luò)層參數(shù)就直接復(fù)制過(guò)來(lái),繼續(xù)進(jìn)行訓(xùn)練。這就是所謂的遷移學(xué)習(xí),說(shuō)的簡(jiǎn)單一點(diǎn)就是把一個(gè)任務(wù)訓(xùn)練好的參數(shù),拿到另外一個(gè)任務(wù),作為神經(jīng)網(wǎng)絡(luò)的初始參數(shù)值,這樣相比于你直接采用隨機(jī)初始化的方法,精度可以有很大的提高。
圖片分類(lèi)標(biāo)注好的訓(xùn)練數(shù)據(jù)非常多,但是物體檢測(cè)的標(biāo)注數(shù)據(jù)卻很少,如何用少量的標(biāo)注數(shù)據(jù),訓(xùn)練高質(zhì)量的模型,這就是文獻(xiàn)最大的特點(diǎn),這篇paper采用了遷移學(xué)習(xí)的思想。文獻(xiàn)就先用了ILSVRC2012這個(gè)訓(xùn)練數(shù)據(jù)庫(kù)(這是一個(gè)圖片分類(lèi)訓(xùn)練數(shù)據(jù)庫(kù)),先進(jìn)行網(wǎng)絡(luò)的圖片分類(lèi)訓(xùn)練。這個(gè)數(shù)據(jù)庫(kù)有大量的標(biāo)注數(shù)據(jù),共包含了1000種類(lèi)別物體,因此預(yù)訓(xùn)練階段cnn模型的輸出是1000個(gè)神經(jīng)元,或者我們也直接可以采用Alexnet訓(xùn)練好的模型參數(shù)。
2、IOU的定義
物體檢測(cè)需要定位出物體的bounding box,就像下面的圖片一樣,我們不僅要定位出車(chē)輛的bounding box 我們還要識(shí)別出bounding box 里面的物體就是車(chē)輛。對(duì)于bounding box的定位精度,有一個(gè)很重要的概念,因?yàn)槲覀兯惴ú豢赡馨俜职俑斯?biāo)注的數(shù)據(jù)完全匹配,因此就存在一個(gè)定位精度評(píng)價(jià)公式:IOU。
IOU定義了兩個(gè)bounding box的重疊度,如下圖所示:
矩形框A、B的一個(gè)重合度IOU計(jì)算公式為:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?IOU=(A∩B)/(A∪B)
就是矩形框A、B的重疊面積占A、B并集的面積比例:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?IOU=SI/(SA+SB-SI)
3、非極大值抑制
RCNN算法,會(huì)從一張圖片中找出n多個(gè)可能是物體的矩形框,然后為每個(gè)矩形框做類(lèi)別分類(lèi)概率:
就像上面的圖片一樣,定位一個(gè)車(chē)輛,最后算法就找出了一堆的方框,我們需要判別哪些矩形框是沒(méi)用的。非極大值抑制:先假設(shè)有6個(gè)矩形框,根據(jù)分類(lèi)器類(lèi)別分類(lèi)概率做排序,從小到大分別屬于車(chē)輛的概率分別為A、B、C、D、E、F。
(1)從最大概率矩形框F開(kāi)始,分別判斷A~E與F的重疊度IOU是否大于某個(gè)設(shè)定的閾值;
(2)假設(shè)B、D與F的重疊度超過(guò)閾值,那么就扔掉B、D;并標(biāo)記第一個(gè)矩形框F,是我們保留下來(lái)的。
(3)從剩下的矩形框A、C、E中,選擇概率最大的E,然后判斷E與A、C的重疊度,重疊度大于一定的閾值,那么就扔掉;并標(biāo)記E是我們保留下來(lái)的第二個(gè)矩形框。
就這樣一直重復(fù),找到所有被保留下來(lái)的矩形框。
4、VOC物體檢測(cè)任務(wù)
這個(gè)就相當(dāng)于一個(gè)競(jìng)賽,里面包含了20個(gè)物體類(lèi)別:http://host.robots.ox.ac.uk/pascal/VOC/voc2012/examples/index.html
還有一個(gè)背景,總共就相當(dāng)于21個(gè)類(lèi)別,因此一會(huì)設(shè)計(jì)fine-tuning CNN的時(shí)候,我們softmax分類(lèi)輸出層為21個(gè)神經(jīng)元。
三、正文
1、圖片分類(lèi)與物體檢測(cè)不同,物體檢測(cè)需要定位出物體的位置,這種就相當(dāng)于回歸問(wèn)題,求解一個(gè)包含物體的方框。而圖片分類(lèi)其實(shí)是邏輯回歸。這種方法對(duì)于單物體檢測(cè)還不錯(cuò),但是對(duì)于多物體檢測(cè)就……
?因此paper采用的方法是:首先輸入一張圖片,我們先定位出2000個(gè)物體候選框,然后采用CNN提取每個(gè)候選框中圖片的特征向量,特征向量的維度為4096維,接著采用svm算法對(duì)各個(gè)候選框中的物體進(jìn)行分類(lèi)識(shí)別。也就是總個(gè)過(guò)程分為三個(gè)程序:a、找出候選框;b、利用CNN提取特征向量;c、利用SVM進(jìn)行特征向量分類(lèi)。具體的流程如下圖片所示:
2、詳細(xì)思路:首先輸入一些圖片,之后就是在這個(gè)圖片上生成一些候選的區(qū)域(就是那些黃色的框),從圖片上把生成的候選區(qū)域一個(gè)個(gè)的摳出來(lái),摳出來(lái)之后把他們所有的變成大小一模一樣的,縮放到227x227大小的正方形的圖。把圖片送入到深度學(xué)習(xí)的網(wǎng)絡(luò)里面去提取他的一個(gè)特征,這個(gè)特征的提取就是每個(gè)圖片經(jīng)過(guò)這個(gè)網(wǎng)絡(luò)之后就輸出來(lái)一個(gè)4096維的一個(gè)特征,有了這個(gè)特征之后呢,我們?cè)儆眠@個(gè)特征呢送入svm這個(gè)人工設(shè)計(jì)的分類(lèi)器里面去訓(xùn)這個(gè)分類(lèi)器,像5中的aeroplane\person\tvmonitor一樣每一個(gè)類(lèi)別訓(xùn)一個(gè)分類(lèi)器,每一個(gè)類(lèi)別訓(xùn)一個(gè)分類(lèi)器,這些分類(lèi)器都是SVM,然后訓(xùn)練完這些分類(lèi)器后就判斷這個(gè)框就這個(gè)候選區(qū)域這個(gè)圖片是否屬于這個(gè)類(lèi)別,(比如說(shuō)有一個(gè)飛機(jī)這個(gè)類(lèi)別,我們有一個(gè)SVM的這個(gè)分類(lèi)器專(zhuān)門(mén)來(lái)判斷這個(gè)圖片是否屬于這個(gè)類(lèi)別,每一個(gè)類(lèi)別都有一個(gè)分類(lèi)器,我們就可以得到這個(gè)檢測(cè)結(jié)果,得到檢測(cè)結(jié)果之后呢,因?yàn)楹蜻x區(qū)域的這些框呢可能不是非常的準(zhǔn),后邊就會(huì)用一個(gè)回歸器把這些位置校準(zhǔn)一下,其實(shí)這個(gè)里面校準(zhǔn)的思路就是其實(shí)就是把這個(gè)候選區(qū)域放大比如說(shuō)放大1.2倍,放大之后就提取里邊的邊緣,把這個(gè)邊緣能夠圍起來(lái)的最緊湊的這個(gè)框就作為我們最終的檢測(cè)結(jié)果框,通過(guò)這種方式把這個(gè)框的位置變得更準(zhǔn)一些,這就是R-CNN的流程)
這個(gè)RCNN里邊會(huì)使用selective search這個(gè)方法生成2千多個(gè)候選區(qū)域,我們就可以簡(jiǎn)單的講一下selective search這個(gè)算法的一個(gè)原理:
首先給一副圖片,給一副圖片就會(huì)利用分割的算法生成一個(gè)這個(gè)圖片的分割區(qū)域,會(huì)用一個(gè)算法對(duì)這個(gè)分割的區(qū)域進(jìn)行有一個(gè)逐漸的合并(比如說(shuō)他這個(gè)區(qū)域挨得比較近啊,他的相似度比較高啊,就根據(jù)這個(gè)紋理啊,顏色啊和大小等算出這些不同區(qū)域的相似度,把這個(gè)相似度比較高的我們就合并達(dá)到一塊),這個(gè)操作再進(jìn)行另外一層再把這些區(qū)域再合并,比如上圖有3個(gè)圖片了,3個(gè)圖片有很多區(qū)域,每個(gè)區(qū)域我們就可以算出包含這個(gè)區(qū)域的一個(gè)矩形框,這3個(gè)區(qū)域里邊都算包含他的這些包含不同區(qū)域的矩形框,然后把這個(gè)矩形框放到圖片上,這個(gè)圖片就形成了這些候選區(qū)域。
3、候選框搜索階段
1、實(shí)現(xiàn)方式
當(dāng)我們輸入一張圖片時(shí),我們要搜索出所有可能是物體的區(qū)域,這個(gè)采用的方法是傳統(tǒng)文獻(xiàn)的算法:《search for object recognition》,通過(guò)這個(gè)算法我們搜索出2000個(gè)候選框。然后從上面的總流程圖中可以看到,搜出的候選框是矩形的,而且是大小各不相同。然而CNN對(duì)輸入圖片的大小是有固定的,如果把搜索到的矩形選框不做處理,就扔進(jìn)CNN中,肯定不行。因此對(duì)于每個(gè)輸入的候選框都需要縮放到固定的大小。下面我們講解要怎么進(jìn)行縮放處理,為了簡(jiǎn)單起見(jiàn)我們假設(shè)下一階段CNN所需要的輸入圖片大小是個(gè)正方形圖片227*227。因?yàn)槲覀兘?jīng)過(guò)selective search 得到的是矩形框,paper試驗(yàn)了兩種不同的處理方法:
(1)各向異性縮放
這種方法很簡(jiǎn)單,就是不管圖片的長(zhǎng)寬比例,管它是否扭曲,進(jìn)行縮放就是了,全部縮放到CNN輸入的大小227*227,如下圖(D)所示;
(2)各向同性縮放
因?yàn)閳D片扭曲后,估計(jì)會(huì)對(duì)后續(xù)CNN的訓(xùn)練精度有影響,于是作者也測(cè)試了“各向同性縮放”方案。這個(gè)有兩種辦法
A、直接在原始圖片中,把bounding box的邊界進(jìn)行擴(kuò)展延伸成正方形,然后再進(jìn)行裁剪;如果已經(jīng)延伸到了原始圖片的外邊界,那么就用bounding box中的顏色均值填充;如下圖(B)所示;
B、先把bounding box圖片裁剪出來(lái),然后用固定的背景顏色填充成正方形圖片(背景顏色也是采用bounding box的像素顏色均值),如下圖(C)所示;
對(duì)于上面的異性、同性縮放,文獻(xiàn)還有個(gè)padding處理,上面的示意圖中第1、3行就是結(jié)合了padding=0,第2、4行結(jié)果圖采用padding=16的結(jié)果。經(jīng)過(guò)最后的試驗(yàn),作者發(fā)現(xiàn)采用各向異性縮放、padding=16的精度最高,具體不再啰嗦。
OK,上面處理完后,可以得到指定大小的圖片,因?yàn)槲覀兒竺孢€要繼續(xù)用這2000個(gè)候選框圖片,繼續(xù)訓(xùn)練CNN、SVM。然而人工標(biāo)注的數(shù)據(jù)一張圖片中就只標(biāo)注了正確的bounding box,我們搜索出來(lái)的2000個(gè)矩形框也不可能會(huì)出現(xiàn)一個(gè)與人工標(biāo)注完全匹配的候選框。因此我們需要用IOU為2000個(gè)bounding box打標(biāo)簽,以便下一步CNN訓(xùn)練使用。在CNN階段,如果用selective?search挑選出來(lái)的候選框與物體的人工標(biāo)注矩形框的重疊區(qū)域IoU大于0.5,那么我們就把這個(gè)候選框標(biāo)注成物體類(lèi)別,否則我們就把它當(dāng)做背景類(lèi)別。SVM階段的正負(fù)樣本標(biāo)簽問(wèn)題,等到了svm講解階段我再具體講解。
4、CNN特征提取階段
1、算法實(shí)現(xiàn)
a、網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì)階段
網(wǎng)絡(luò)架構(gòu)我們有兩個(gè)可選方案:第一選擇經(jīng)典的Alexnet;第二選擇VGG16。經(jīng)過(guò)測(cè)試Alexnet精度為58.5%,VGG16精度為66%。VGG這個(gè)模型的特點(diǎn)是選擇比較小的卷積核、選擇較小的跨步,這個(gè)網(wǎng)絡(luò)的精度高,不過(guò)計(jì)算量是Alexnet的7倍。后面為了簡(jiǎn)單起見(jiàn),我們就直接選用Alexnet,并進(jìn)行講解;Alexnet特征提取部分包含了5個(gè)卷積層、2個(gè)全連接層,在Alexnet中p5層神經(jīng)元個(gè)數(shù)為9216、 f6、f7的神經(jīng)元個(gè)數(shù)都是4096,通過(guò)這個(gè)網(wǎng)絡(luò)訓(xùn)練完畢后,最后提取特征每個(gè)輸入候選框圖片都能得到一個(gè)4096維的特征向量。
b、網(wǎng)絡(luò)有監(jiān)督預(yù)訓(xùn)練階段
參數(shù)初始化部分:物體檢測(cè)的一個(gè)難點(diǎn)在于,物體標(biāo)簽訓(xùn)練數(shù)據(jù)少,如果要直接采用隨機(jī)初始化CNN參數(shù)的方法,那么目前的訓(xùn)練數(shù)據(jù)量是遠(yuǎn)遠(yuǎn)不夠的。這種情況下,最好的是采用某些方法,把參數(shù)初始化了,然后在進(jìn)行有監(jiān)督的參數(shù)微調(diào),這邊文獻(xiàn)采用的是有監(jiān)督的預(yù)訓(xùn)練。所以paper在設(shè)計(jì)網(wǎng)絡(luò)結(jié)構(gòu)的時(shí)候,是直接用Alexnet的網(wǎng)絡(luò),然后連參數(shù)也是直接采用它的參數(shù),作為初始的參數(shù)值,然后再fine-tuning訓(xùn)練。
網(wǎng)絡(luò)優(yōu)化求解:采用隨機(jī)梯度下降法,學(xué)習(xí)速率大小為0.001;
C、fine-tuning階段
我們接著采用selective?search?搜索出來(lái)的候選框,然后處理到指定大小圖片,繼續(xù)對(duì)上面預(yù)訓(xùn)練的cnn模型進(jìn)行fine-tuning訓(xùn)練。假設(shè)要檢測(cè)的物體類(lèi)別有N類(lèi),那么我們就需要把上面預(yù)訓(xùn)練階段的CNN模型的最后一層給替換掉,替換成N+1個(gè)輸出的神經(jīng)元(加1,表示還有一個(gè)背景),然后這一層直接采用參數(shù)隨機(jī)初始化的方法,其它網(wǎng)絡(luò)層的參數(shù)不變;接著就可以開(kāi)始繼續(xù)SGD訓(xùn)練了。開(kāi)始的時(shí)候,SGD學(xué)習(xí)率選擇0.001,在每次訓(xùn)練的時(shí)候,我們batch?size大小選擇128,其中32個(gè)事正樣本、96個(gè)事負(fù)樣本(正負(fù)樣本的定義前面已經(jīng)提過(guò),不再解釋)。
2、問(wèn)題解答
OK,看完上面的CNN過(guò)程后,我們會(huì)有一些細(xì)節(jié)方面的疑問(wèn)。首先,反正CNN都是用于提取特征,那么我直接用Alexnet做特征提取,省去fine-tuning階段可以嗎?這個(gè)是可以的,你可以不需重新訓(xùn)練CNN,直接采用Alexnet模型,提取出p5、或者f6、f7的特征,作為特征向量,然后進(jìn)行訓(xùn)練svm,只不過(guò)這樣精度會(huì)比較低。那么問(wèn)題又來(lái)了,沒(méi)有fine-tuning的時(shí)候,要選擇哪一層的特征作為cnn提取到的特征呢?我們有可以選擇p5、f6、f7,這三層的神經(jīng)元個(gè)數(shù)分別是9216、4096、4096。從p5到p6這層的參數(shù)個(gè)數(shù)是:4096*9216?,從f6到f7的參數(shù)是4096*4096。那么具體是選擇p5、還是f6,又或者是f7呢?
文獻(xiàn)paper給我們證明了一個(gè)理論,如果你不進(jìn)行fine-tuning,也就是你直接把Alexnet模型當(dāng)做萬(wàn)金油使用,類(lèi)似于HOG、SIFT一樣做特征提取,不針對(duì)特定的任務(wù)。然后把提取的特征用于分類(lèi),結(jié)果發(fā)現(xiàn)p5的精度竟然跟f6、f7差不多,而且f6提取到的特征還比f(wàn)7的精度略高;如果你進(jìn)行fine-tuning了,那么f7、f6的提取到的特征最會(huì)訓(xùn)練的svm分類(lèi)器的精度就會(huì)飆漲。
據(jù)此我們明白了一個(gè)道理,如果不針對(duì)特定任務(wù)進(jìn)行fine-tuning,而是把CNN當(dāng)做特征提取器,卷積層所學(xué)到的特征其實(shí)就是基礎(chǔ)的共享特征提取層,就類(lèi)似于SIFT算法一樣,可以用于提取各種圖片的特征,而f6、f7所學(xué)習(xí)到的特征是用于針對(duì)特定任務(wù)的特征。打個(gè)比方:對(duì)于人臉性別識(shí)別來(lái)說(shuō),一個(gè)CNN模型前面的卷積層所學(xué)習(xí)到的特征就類(lèi)似于學(xué)習(xí)人臉共性特征,然后全連接層所學(xué)習(xí)的特征就是針對(duì)性別分類(lèi)的特征了。
QQQQQ:
還有另外一個(gè)疑問(wèn):CNN訓(xùn)練的時(shí)候,本來(lái)就是對(duì)bounding?box的物體進(jìn)行識(shí)別分類(lèi)訓(xùn)練,是一個(gè)端到端的任務(wù),在訓(xùn)練的時(shí)候最后一層softmax就是分類(lèi)層,那么為什么作者閑著沒(méi)事干要先用CNN做特征提取(提取fc7層數(shù)據(jù)),然后再把提取的特征用于訓(xùn)練svm分類(lèi)器?這個(gè)是因?yàn)閟vm訓(xùn)練和cnn訓(xùn)練過(guò)程的正負(fù)樣本定義方式各有不同,導(dǎo)致最后采用CNN softmax輸出比采用svm精度還低。
事情是這樣的,cnn在訓(xùn)練的時(shí)候,對(duì)訓(xùn)練數(shù)據(jù)做了比較寬松的標(biāo)注,比如一個(gè)bounding?box可能只包含物體的一部分,那么我也把它標(biāo)注為正樣本,用于訓(xùn)練cnn;采用這個(gè)方法的主要原因在于因?yàn)镃NN容易過(guò)擬合,所以需要大量的訓(xùn)練數(shù)據(jù),所以在CNN訓(xùn)練階段我們是對(duì)Bounding box的位置限制條件限制的比較松(IOU只要大于0.5都被標(biāo)注為正樣本了);
然而svm訓(xùn)練的時(shí)候,因?yàn)閟vm適用于少樣本訓(xùn)練,所以對(duì)于訓(xùn)練樣本數(shù)據(jù)的IOU要求比較嚴(yán)格,我們只有當(dāng)bounding?box把整個(gè)物體都包含進(jìn)去了,我們才把它標(biāo)注為物體類(lèi)別,然后訓(xùn)練svm,具體請(qǐng)看下文。
5、SVM訓(xùn)練、測(cè)試階段
這是一個(gè)二分類(lèi)問(wèn)題,我么假設(shè)我們要檢測(cè)車(chē)輛。我們知道只有當(dāng)bounding?box把整量車(chē)都包含在內(nèi),那才叫正樣本;如果bounding box 沒(méi)有包含到車(chē)輛,那么我們就可以把它當(dāng)做負(fù)樣本。但問(wèn)題是當(dāng)我們的檢測(cè)窗口只有部分包好物體,那該怎么定義正負(fù)樣本呢?作者測(cè)試了IOU閾值各種方案數(shù)值0,0.1,0.2,0.3,0.4,0.5。最后我們通過(guò)訓(xùn)練發(fā)現(xiàn),如果選擇IOU閾值為0.3效果最好(選擇為0精度下降了4個(gè)百分點(diǎn),選擇0.5精度下降了5個(gè)百分點(diǎn)),即當(dāng)重疊度小于0.3的時(shí)候,我們就把它標(biāo)注為負(fù)樣本。一旦CNN f7層特征被提取出來(lái),那么我們將為每個(gè)物體累訓(xùn)練一個(gè)svm分類(lèi)器。當(dāng)我們用CNN提取2000個(gè)候選框,可以得到2000*4096這樣的特征向量矩陣,然后我們只需要把這樣的一個(gè)矩陣與svm權(quán)值矩陣4096*N點(diǎn)乘(N為分類(lèi)類(lèi)別數(shù)目,因?yàn)槲覀冇?xùn)練的N個(gè)svm,每個(gè)svm包好了4096個(gè)W),就可以得到結(jié)果了。
OK,就講到這邊吧,懶得打字了,打到手酸。
個(gè)人總結(jié):學(xué)習(xí)這篇文獻(xiàn)最大的意義在于作者把自己的試驗(yàn)過(guò)程都講的很清楚,可以讓我們學(xué)到不少的調(diào)參經(jīng)驗(yàn),真的是很佩服作者背后的思考。因?yàn)槲墨I(xiàn)很長(zhǎng)、細(xì)節(jié)非常之多,本人也對(duì)物體檢測(cè)不感興趣,只是隨便看看文獻(xiàn)、學(xué)學(xué)算法罷了,所以很多細(xì)節(jié)沒(méi)有細(xì)看,比如7.3 bounding box的回歸過(guò)程;最后看這篇文獻(xiàn)好累、十幾頁(yè),細(xì)節(jié)一大堆,包含作者各種實(shí)驗(yàn)、思考……
鏈接:https://blog.csdn.net/hjimce/article/details/50187029
參考:https://blog.csdn.net/u011534057/article/details/51240387
?
總結(jié)
以上是生活随笔為你收集整理的Paper7:R-CNN的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Python:python中的可变类型和
- 下一篇: Paper8:Spatial Pyram