日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

关于Faster R-CNN的一切——笔记3:Faster R-CNN

發(fā)布時間:2024/9/21 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 关于Faster R-CNN的一切——笔记3:Faster R-CNN 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
博主課題需要研究Faster RCNN,先后看了RCNN、Fast RCNN和Faster RCNN三篇paper,然而有點懵逼= =所以準備再捋一遍總結一下~
關于Faster R-CNN的一切——筆記1:R-CNN
關于Faster R-CNN的一切——筆記2:Fast R-CNN
三、Faster?R-CNN【Faster R-CNN--Towards Real-Time Object Detection with Region Proposal Networks.2015NIPS
理解了R-CNN和Fast R-CNN之后,我們終于可以昂首闊步進入Faster R-CNN的解讀啦~\(≧▽≦)/~啦啦啦
SPPnet和Fast R-CNN都加速了R-CNN的檢測過程,然而瓶頸問題:region proposal computation卻沒有考慮。因此,Faster R-CNN的核心改進就是設計了一個Region Proposal Network(RPN),在每個圖像位置輸出一個預測的object bounding box和objectness score,這個網絡與原來的Fast R-CNN共享conv feature map,所以幾乎不增加計算量。
1.什么結構
網絡輸入是一張image? 經過RPN生成一系列rectangular object proposals image和它的object proposals一起送入Fast R-CNN網絡,輸出最終的檢測結果

顯然,最重要的就是這個Region Proposal Network(RPN)怎么設計,下面分析。
  • RPN的整體結構
(1)首先生成conv feature map? ? ? ? ?? ? ? ? ? ?明確一點,RPN與原來的Fast R-CNN網絡共享從image生成conv feature map的過程。
? ? ? ? ?例如對于VGG16,結構如下:
【image→conv3-64conv3-64→pool2conv3-128conv3-128→pool2conv3-256conv3-256conv3-256→pool2 conv3-512conv3-512conv3-512→pool2conv3-512conv3-512conv3-512→pool2→FC4096→FC4096→FC1000
? ? ? ? ?那么從image到最后一個conv3-512層這13個卷積層和4個pooling層是RPN和Fast R-CNN共享的,對于VGG16,最后一個conv3-512層輸出的是512通道的W*H大小的(W和H=原圖像寬高/16,因為有4個pooling層,每次大小減半)conv feature map,接下來的RPN操作就是基于這個conv feature map。
(2)在conv feature map的每個sliding window位置上生成特征向量
? ? ? ? ?用一個n*n(本文是3*3)大小的滑動窗口(可以理解為卷積核)以1為步長在conv feature map上滑動。在每個sliding位置上,卷積核與它覆蓋的conv featue map對應元素相乘并相加輸出對應值,也就是卷積了。注意:conv feature map是3維的,對于VGG16而言是第三維是512通道,則每個通道獨立的與卷積核作用,所以最后卷積核在每個滑動窗口位置都會生成一個1*512維的向量然后,這個1*512維的向量被送入兩個并列的FC層,一個分類的FC層輸出分類結果,一個回歸的FC層輸出box regressor也就是物體位置坐標。
? ? ? ? ?上面所說的sliding window模式,在所有的空間位置上的FC層的參數是共享的,所以這樣的結構很自然的可以被應用為一個n*n的卷積層和兩個并列的1*1的卷積層【1*1的卷積層其實就是每個卷積核通道數與輸入通道數相同,卷積核的個數就是你想要的輸出維數。例如對于VGG16,每個卷積核是512通道。】。但是注意這樣的n*n“卷積層”和我們平常理解的不太一樣,我來解釋一下:
? ? ? ? ?我們平時理解的卷積層操作如下圖所示。例如這是一個有2個filter的卷積層(因此輸出是2通道的),每個filter是3通道的(與輸入通道數相同)。輸出volume中第1個通道里第一個位置的結果10是由filter w0的三個通道分別與輸入volume的第一個receptive field的三個通道分別相乘然后相加的結果:10=1+4+4+1bias。

? ? ? ? ?但是本文里面想表達的其實是如下圖的意思:

? ? ? ? ? ? ? ? ? ?所以如果要是想和普通的卷積層一樣的話,應該如下圖這么設置,簡單地說第i個filter只有第i個通道是n*n個系數,其他通道都全為0,每個filter的n*n個系數文章中沒有說一樣不一樣誒,可能需要實際跑一邊代碼看看了~。這樣就可以應用普通的卷積層來完成RPN想要的sliding window模式。


(3)每個sliding window位置的特征向量送入兩個并列的FC層做預測
? ? ? ? ?有了特征向量,顯然可以分類了,那么分幾類?文章說我們要在這個sliding window位置根據它的特征向量同時預測出k個region proposals,那么回歸的FC層輸出就是4k維的了,因為每個proposal有4個坐標嘛~分類的FC層輸出2k個分數來估計每個proposal是物體的概率和不是物體的概率。但是這k個proposal不是憑空整出來的,而是要相對一個參照,叫做archors,這也是RPN網絡很核心的一個概念,下面詳細說明:
  • 平移不變的Anchors
? ? ? ? ?在每個sliding window·的中心,定義3種尺度和3種aspect ratio共9種anchors。對于一個大小是W*H的conv feature map,一共有W*H*9個anchors。注意,anchors是圈出原image中的某塊區(qū)域,所以按照Fast R-CNN RoI pooling層要完成的第一個任務【即把region proposal投影到conv feature map上,參考博主的Fast R-CNN筆記啦啦啦~】,我們需要把sliding window【這是在conv feature map上的啊注意了】的中心坐標投影到原image上,然后就能找到原image上這些anchors應該對應的區(qū)域。這一點文章中并沒有明確說出,但是可以推斷出來。因為首先文章中使用的anchors最小也是128*128像素的,而feature map大小在40*60,所以anchors不可能是在feature map上;然后,從archors的意義上我們來想,它是你的網絡將要預測的region proposal的參照物對吧,region proposal是在原image上的對吧,所以anchors必然是在原image上的。但是sliding window是在conv feature map上的,所以我們一定會需要conv feature map往原image位置的映射,這就和Fast R-CNN要把原image上的region proposal投影到conv feature map是一個道理,只不過過程反過來了,我說清楚了吧~#這是吐槽。。。我看paper的時候就這一點十分不解,還是看了SPPnet的文章才明白這個投影是什么鬼的,強烈譴責Faster R-CNN的作者╭(╯^╰)╮#
附上原paper的圖總結一下RPN網絡的結構:


(4)根據分類的score對region proposals進行非極大值抑制

先去掉所有IoU小于0.7的那些proposal,然后剩下的運行NMS(和以前一樣了啦不再詳細說)。然后用前N個region proposal送入Fast R-CNN進行物體檢測。

2.怎么訓練
顯然,我們需要訓練RPN和Fast R-CNN兩個網絡。首先以預訓練的VGG16為例比較兩個網絡的結構:


所以為了共享conv feature map,兩個網絡的交替訓練流程應該是:
用預訓練模型初始化網絡參數,然后fine-tune訓練RPN 用同一個預訓練模型初始化網絡參數,然后fine-tune訓練Fast R-CNN,使用RPN網絡輸出的region proposals 用Fast R-CNN初始化RPN(肯定是共有部分啦),固定共有的conv層(參數不再變化),只fine-tuned RPN獨有的層 固定共有的conv層,fine-tune Fast R-CNN的FC層

Fast R-CNN不說了,就是和原Fast R-CNN的訓練一毛一樣只不過產生region proposals的方法由selective search變成RPN網絡啦~
  • 預訓練
???????? ? ? ? ? ?用ImageNet網絡來初始化RPN和Fast R-CNN啦~比較了ZFnet和VGG16net兩個。 ?
  • RPN網絡的fine-tune
? ? ? ? ?#剛剛經歷了電梯驚魂的博主回來繼續(xù)寫了......生命苦短,要好好珍惜,好好學習T T#
? ? ? ? ?(1)首先是loss function怎么定義
? ? ? ? ?先明確一下有兩個任務:一是分類任務,即判斷這個anchor是不是物體;二是回歸任務,即給出bounding box的預測坐標。所以說這種multi task的東東,肯定有兩個loss項啦:
? ? ? ?? ? ? ? ? ?i是一個mini-batch(在本文就是一張image和它里面的所有anchor)里的anchor的index;pi是算法輸出的anchor i是物體的概率;pi*是anchor i的ground-thuth label;ti是一個四元素的向量,是算法預測的bounding box的參數化坐標;ti*是與一個正anchor相關的ground-truth box。 ?? ? ? ? ? ?分類loss是兩類上的log loss(是物體和不是物體),回歸loss和Fast R-CNN中的定義一樣。
? ? ? ? ?關于ti和ti*,都是參數化的坐標,也就是都相對于anchor而定義,如下圖,所以你可以理解為:在原image上有很多ground-truth box,現在人為的規(guī)定了很多anchor box,你的算法要做的事情其實就是把anchor box回歸到離它最近的ground-truth box那里去~ ? ? ? ? ? ? ? ?(2)anchor的標簽怎么定義
? ? ? ? ?有兩種情況anchor的標簽是正:一種是與某個ground-truth box有最大的IoU的那些;另一種是與任何ground-truth的IoU都大于0.7的那些。
? ? ? ? ?有一種情況anchor的標簽是負:與所有的gound-truth box的IoU都小于0.3。
? ? ? ? ?(3)其他訓練細節(jié)
? ? ? ? ?Mini-batch怎么采樣:先隨機采樣一張圖片,然后以1:1的比例從這張圖隨機采樣256個anchors,如果正樣本的數目少于128的話,只好用負樣本填充mini-batch啦。也就是說1個mini-batch就是1張image和它的256個正負anchors。
? ? ? ? ?新的卷積層用均值為0,標準差為0.01的高斯分布初始化,共享的那些層就用預訓練的模型初始化啦。
? ? ? ? ?前60k個mini-batch用學習率0.001,后20k個mini-batch用學習率0.0001。momentum是0.9,weight decay是0.0005.在PASCAL數據集喔~ ??? 3.怎么測試
測試就簡單啦~對于一張測試image,先運行RPN生成2000個region proposal,然后把這些region proposal投影到conv feature map上進行后續(xù)的Fast R-CNN網絡的操作就行啦。由于共享了conv feature map,一張圖只用計算一次,大的縮短時間。
來一個三個網絡的運行時間對比: ? ? ? ? R-CNN 47s/img ? ? ? ? Fast R-CNN3s/img ? ? ? ? Faster R-CNN0.2s/img


--The End?of Faster?R-CNN--

總結

以上是生活随笔為你收集整理的关于Faster R-CNN的一切——笔记3:Faster R-CNN的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产综合视频在线观看 | 国产探花精品一区二区 | 欧美一区视频在线 | 亚洲欧美国产日韩精品 | 国产一级影院 | 久久综合高清 | 青青青免费在线视频 | 国产深喉视频一区二区 | av资源库| 日韩精品一| 在线看一区 | 美女裸体跪姿扒开屁股无内裤 | 国产一级片播放 | 国产欧美一区二区三区白浆喷水 | 五月婷婷激情网 | 欧美乱妇日本无乱码特黄大片 | 欧美精品久久久久久久免费 | 青草视频免费在线观看 | 亚洲黄色一级大片 | 国产污视频在线观看 | aⅴ在线免费观看 | 成人免费片 | 人人看人人草 | 日韩一片 | 五月天欧美 | 中文不卡在线 | 免费看片色| 久久亚洲视频 | 肥臀熟女一区二区三区 | 国产精品免费视频一区二区 | 中文字幕在线观看第一页 | 中文精品无码中文字幕无码专区 | av无码精品一区二区三区 | 艹男人的日日夜夜 | 黄色大片免费观看视频 | 六月婷婷中文字幕 | 人妻中文字幕一区二区三区 | 91精品国产色综合久久不卡蜜臀 | 欧美午夜精品久久久久久孕妇 | 亚洲精品国产日韩 | 最新国产黄色网址 | 91精品国产综合久久福利软件 | 天天撸天天操 | 高清免费毛片 | 国产精品一区二区视频 | 国产精品高潮AV无码 | 麻豆一区二区三区精品视频 | 韩国精品一区二区三区 | 色视频网站在线观看 | 午夜精品一区二区三区在线播放 | 91免费看片网站 | 日本啪啪网 | 国产一区二区三区欧美 | 起碰在线 | 阿娇全套94张未删图久久 | 成人福利视频网 | 国产成年人视频 | 日韩中文字幕一区二区三区四区 | 国产免费资源 | 一本高清dvd在线播放 | 日本成人免费 | 日本偷拍一区 | 嫩草在线观看视频 | 中文字幕色哟哟 | 精品欧美乱码久久久久久1区2区 | av播放在线| 亚洲插插 | 青娱乐极品在线 | 欧美日本韩国在线 | 国产精品一区二区免费视频 | 男生坤坤放进女生坤坤里 | 欧美日韩一区二区三区国产精品成人 | 好姑娘在线观看高清完整版电影 | 成人av番号网 | www.成人av| 亚洲精品喷潮一区二区三区 | 瑟瑟视频免费观看 | 国产成人av片 | 手机看片99| 日韩欧美在线观看 | 亚洲欧美另类一区 | 91在线精品播放 | 日韩色图片 | 色窝网 | 日韩少妇内射免费播放 | 日韩aⅴ视频| 欧美一区二区免费视频 | 青青草自拍| 久久久久亚洲av无码网站 | 91在线视频国产 | 精品国产免费视频 | 国产欧美一区二区三区鸳鸯浴 | 免费一级淫片 | 免费观看成人av | 欧美成人一区二免费视频软件 | 日韩中文字幕一区二区三区四区 | 欧美最猛性xxxxx(亚洲精品) | 国产精品麻豆一区二区三区 | 欧美精品在线观看 |