YOLOV1学习
YOLOV1學(xué)習(xí)(輸入的圖像固定大小為448X448X3)
參考文獻(xiàn)
模型結(jié)構(gòu)
將輸入的圖像歸一化為大小為448x448x3的圖像,然后將經(jīng)過(guò)中間24層的卷積后得到了7x7x1024的特征圖,然后后面連接的是兩個(gè)全連接層,分別是4096和1470,最后將1470reshape成7x7x30的張量。
問(wèn)題0:①為什么是30,又為什么是7?②怎么解析?
答:①為什么是7是因?yàn)閷⑤斎雸D像劃分成了7x7的grid cell,30是因?yàn)槊總€(gè)grid cell都會(huì)生成兩個(gè)預(yù)測(cè)框,每個(gè)預(yù)測(cè)框又有5個(gè)參數(shù)(x,y,h,w,c),又因?yàn)檫@里是針對(duì)Pascal 數(shù)據(jù)集進(jìn)行設(shè)計(jì)的,這個(gè)數(shù)據(jù)集中含有20個(gè)類,因此會(huì)有20個(gè)類別條件概率,因此對(duì)于每一個(gè)grid cell都有**(2x5+20=30)30個(gè)參數(shù)需要記錄,因此最終的矩陣為7x7x30**
②根據(jù)①知道了每一個(gè)深度方向的信息代表什么,因此我們可以根據(jù)這個(gè)進(jìn)行解析。深度方向有30維通道,1-5通道是第一個(gè)bounding box的x,y,h,w,c, 6-10是第二個(gè)bounding box的x,y,h,w,c,后面11-30則是每一類的條件概率值【p(第i類)/p(含物體)】。
注:真正的類別概率是:每一類的條件概率乘以置信度
置信度=p[object]是否包含物體的概率,條件概率=p【屬于第i類的概率】/p[object]
p【屬于第i類的概率】=置信度 * 條件概率
[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來(lái)直接上傳(img-wVF2VAoW-1629564873766)(en-resource://database/533:1)]
[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來(lái)直接上傳(img-ZonZ4xEu-1629564873769)(en-resource://database/527:1)]
預(yù)測(cè)階段
一、模型訓(xùn)練好的前提下目標(biāo)檢測(cè)的大體步驟
[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來(lái)直接上傳(img-qT5dGEKL-1629564873772)(en-resource://database/529:1)]
步驟一:劃分網(wǎng)格
先將輸入的圖像劃分為sxs個(gè)大小相等的網(wǎng)格;(s=7),每一個(gè)網(wǎng)格稱之為grid cell
[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來(lái)直接上傳(img-2VR96r7v-1629564873775)(en-resource://database/519:1)]
問(wèn)題1:這樣劃分的目的是什么?
答:用于生成預(yù)測(cè)框,將預(yù)測(cè)框的中心限制在網(wǎng)格中
步驟二:生成預(yù)測(cè)框bounding box
每個(gè)grid cell都會(huì)生成兩個(gè)預(yù)測(cè)框,且預(yù)測(cè)框的中心在grid cell內(nèi),預(yù)測(cè)框的參數(shù)有:中心坐標(biāo)(x,y),框?qū)捀?#xff08;h.w),以及是否為一個(gè)物體的置信度c(反應(yīng)在框的粗細(xì)中,粗框表示置信度高),這里共生成7x7x2 = 98個(gè)bounding box
[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來(lái)直接上傳(img-FmjqlIXq-1629564873780)(en-resource://database/521:1)]
問(wèn)題2:每一個(gè)grid cell的2個(gè)預(yù)測(cè)框是怎么生成的?
答:根據(jù)參數(shù)x,y,h,w,c生成的
問(wèn)題3:怎么得到這幾個(gè)參數(shù)?
根據(jù)7x7x30的矩陣所得
步驟三:生成條件概率
每一個(gè)grid cell還會(huì)預(yù)測(cè)一組條件類別概率,即在包含物體的前提下,是某一類物體的概率,稱之為條件概率。根據(jù)條件概率可以繪制下圖的class probability map圖,每一個(gè)顏色表示不同的類別,這里是將20個(gè)概率中取最大的概率作為最終的概率繪制出來(lái)的
[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來(lái)直接上傳(img-wWlVAkbE-1629564873783)(en-resource://database/523:1)][外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來(lái)直接上傳(img-A9rAIVBZ-1629564873785)(en-resource://database/535:1)]
問(wèn)題4:條件概率有什么作用?
答:將每一個(gè)bounding box的置信度乘以條件概率,就可以得到bounding box的各類別的概率。
問(wèn)題5:條件概率是怎么計(jì)算得到的?
根據(jù)7x7x30的矩陣所得
步驟四:根據(jù)步驟二和步驟三生成預(yù)測(cè)結(jié)果
根據(jù)bounding box和類別概率就可以得到預(yù)測(cè)結(jié)果。即根據(jù)問(wèn)題4中得到的概率,就可以判別出每一個(gè)bounding box最終的預(yù)測(cè)結(jié)果,將屬于背景的box剔除,然后利用NMS進(jìn)行非極大值抑制,就得到了目標(biāo)檢測(cè)的結(jié)果
[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來(lái)直接上傳(img-gnMCt2zA-1629564873787)(en-resource://database/537:1)]
[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來(lái)直接上傳(img-F8NY3Ge5-1629564873790)(en-resource://database/531:1)]
問(wèn)題6:
①怎么訓(xùn)練網(wǎng)絡(luò),得到網(wǎng)絡(luò)的參數(shù),進(jìn)而能夠進(jìn)行目標(biāo)檢測(cè)?
②怎么判斷grid cell是否含有物體
二、預(yù)測(cè)階段,后處理
1、預(yù)測(cè)階段
對(duì)于一個(gè)grid cell來(lái)說(shuō),有兩個(gè)預(yù)測(cè)框,每個(gè)預(yù)測(cè)框都有一個(gè)20維的類別概率,因此有每一個(gè)grid cell都會(huì)得到兩個(gè)全概率即2x20,對(duì)于7x7的grid cell來(lái)說(shuō),就會(huì)得到7x7x2=98個(gè)20維的全概率向量
[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來(lái)直接上傳(img-NBcALAj8-1629564873794)(en-resource://database/539:1)]
2、后處理
后處理其實(shí)就是將98個(gè)預(yù)測(cè)框中低置信度的框和重復(fù)的框剔除,這個(gè)過(guò)程稱之為NMS
① 先設(shè)置一個(gè)閾值,對(duì)于同一個(gè)類別概率小于p_thre的grid cell全部設(shè)置為0
②將不為0的grid cell按照高低順序進(jìn)行排列,取出概率最大的預(yù)測(cè)框;
③將所有的框跟概率大的框計(jì)算交并比,IOU,若交并比大于某一個(gè)閾值,則表明預(yù)測(cè)了同一個(gè)物體,將低概率的概率設(shè)置為0,;若交并比小于某一個(gè)閾值,則說(shuō)明不是預(yù)測(cè)的同一個(gè)物體,保留這個(gè)預(yù)測(cè)框;
④對(duì)于每一個(gè)類別都是重復(fù)①-③步驟(即NMS),進(jìn)行20次NMS后就會(huì)得到最終的結(jié)果。
[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來(lái)直接上傳(img-Z2Nyaww8-1629564873797)(en-resource://database/541:1)]
訓(xùn)練階段
總結(jié)
- 上一篇: 汇编软件的安装与实验一
- 下一篇: Jenkins配置:添加用户和管理权限