免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
計算機視覺——YOLO算法原理

重磅干貨,第一時間送達

YOLO:You only look once.

YOLO算法基本原理

  1. 將一張圖片等分為S*S個區(qū)域
  2. 每一個區(qū)域負(fù)責(zé)檢測,目標(biāo)對象的中心落在本區(qū)域內(nèi)的物體
  3. 每個預(yù)測到的物體會產(chǎn)生多個可能的邊界框
  4. 每個單元格會產(chǎn)生一個[有無對象Pc,x,y,w,h,class1,class2,classN]向量

初次看到這個算法的過程,會很疑惑,因為這個過程缺少了一些細(xì)節(jié)。
例如:如何檢測物體的中心?如何產(chǎn)生可能的邊界框?如何判斷邊預(yù)測的界框是否正確?讓我們看后面的內(nèi)容。

交并比(IoU)

交并比是一個評估邊界預(yù)測好壞的評估算法。
通常,當(dāng)IoU>=0.5,視為預(yù)測正確。

0.5的取值完全認(rèn)為,可以設(shè)置其他的,根據(jù)具體精度要求來決定。
如果預(yù)測結(jié)果和真實結(jié)果完全重合,IoU=1.

訓(xùn)練方法

首先讓我們來看這個網(wǎng)絡(luò)結(jié)構(gòu),

該結(jié)構(gòu)是一個常規(guī)的卷積網(wǎng)絡(luò)結(jié)構(gòu)。從網(wǎng)絡(luò)中可以得到,適用卷積核,按照卷積核大小的步長進行卷積,這樣就實現(xiàn)了把一個圖片分成多一個區(qū)域。大大減少了圖片的卷積次數(shù),但是也降低了精準(zhǔn)度(相比滑動窗口檢測方法)。

然后再來看Loss函數(shù),

Loss函數(shù)由四部分組成:

  1. 對象存在誤差
  2. 位置誤差
  3. 邊框大小誤差
  4. 類別分類誤差

的意思指,當(dāng)沒有對象時(no object)為1,否則為0.

非最大值抑制

如何檢測到物體的中心?
當(dāng)很多方框中都有要檢測的目標(biāo)的時候,
這些方框會說,嘿!我的區(qū)域里面有你要的對象!
那么這個時候,到底哪個方框才是物體的中心呢?
也確實沒辦法知道,所以就讓這些方框都進行檢測這個物體。
那么就會得到一個物體,被多個方框所框住。

通過非最大值抑制算法可以實現(xiàn),確保圖片中的每一個物體,只被一個方框給框住,而不會出現(xiàn)同一個物體上出現(xiàn)多個方框。

具體的過程:
有無對象(Pc),在'算法原理'中提到

  1. 通過YOLO算法進行預(yù)測
  2. 有無對象(Pc)<0.6(或者其他值)的結(jié)果去除
  3. 對剩下的結(jié)果進行以下循環(huán):
    1. 找到Pc最大的一個數(shù)據(jù),這個就是最終要的結(jié)果
    2. 通過計算其他產(chǎn)生的邊界框Pc最大的數(shù)據(jù)的邊界框進行IoU計算,去除IoU>=0.5的其他邊界框。
    3. 直到?jīng)]有新的最終結(jié)果的產(chǎn)生

通過這個循環(huán),我們最終就會得到,確保每一個物體只有一個邊界框,且這個邊界框是可能性最大的。

在實際操作中,對于多個類型的物體,例如汽車,人,自行車等
應(yīng)該對這三種類型進行三次的獨立非最大值抑制
因為如果一起進行非最大值抑制的話,當(dāng)人遮擋汽車的時候,人和車的結(jié)果就會不準(zhǔn)確。兩者的IoU比較大。

錨點框(Anchor Boxes)

為什么會產(chǎn)生這個算法呢?
在以下條件下:

  1. YOLO的區(qū)域數(shù)量比較小,每個區(qū)域比較大
  2. 人遮擋車

導(dǎo)致,人和車的中心點不巧剛好落到同一個區(qū)域內(nèi),
而每個區(qū)域只能輸出一個[有無對象Pc,x,y,w,h,class1,class2,classN]向量,那么CNN就會隨機輸出人或者車。

那么如何解決這個問題呢?
人是豎著的,車是橫著的,那么我們可以讓每一個區(qū)域負(fù)責(zé)去識別兩次(由錨點框的數(shù)量決定)。
產(chǎn)生這樣的一個向量:
[有無對象Pc,x,y,w,h,class1,class2,classN,有無對象Pc,x,y,w,h,class1,class2,classN],即[2*n],你也可以把,這個拆成[2,n]。

將結(jié)果分成兩個區(qū)域,第一個是豎著的錨點框,第二個是橫著的錨點框。
存放的時候,計算w/h(寬高比),和錨點的寬高比進行比較,相近即屬于該錨點框。如此就可以解決這個問題了。

但是其實這個并不能解決3個物體重疊的情況, 也不能解決錨點框相似的情況的重疊,

不過值得慶幸的是,當(dāng)YOLO的區(qū)域足夠多的時候,發(fā)生重疊的概率比較小,如果不幸發(fā)生了,那就需要寫一個選擇算法,選擇其中一個。

YOLO算法實現(xiàn)

借助YOLO算法,實現(xiàn)對水表的表盤目標(biāo)檢測。去Github下載

本文僅做學(xué)術(shù)分享,如有侵權(quán),請聯(lián)系刪文。

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
刷臉支付、AI修圖靠的是什么?本文幫你解答
卷積神經(jīng)網(wǎng)絡(luò)(三)
目標(biāo)檢測學(xué)習(xí)筆記
深入了解目標(biāo)檢測深度學(xué)習(xí)算法的技術(shù)細(xì)節(jié)
【計算機視覺】檢測與分割詳解
YOLO算法的原理與實現(xiàn)
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服