一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

邊框回歸(Bounding Box Regression)詳解

 LZS2851 2021-05-13

Bounding-Box regression

最近一直看檢測有關(guān)的Paper, 從rcnn, fast rcnn, faster rcnn, yolo, r-fcn, ssd,到今年cvpr最新的yolo9000。這些paper中損失函數(shù)都包含了邊框回歸,除了rcnn詳細(xì)介紹了,其他的paper都是一筆帶過,或者直接引用rcnn就把損失函數(shù)寫出來了。前三條網(wǎng)上解釋比較多,后面的兩條我看了很多paper,才得出這些結(jié)論。

  • 為什么要邊框回歸?
  • 什么是邊框回歸?
  • 邊框回歸怎么做的?
  • 邊框回歸為什么寬高,坐標(biāo)會(huì)設(shè)計(jì)這種形式?
  • 為什么邊框回歸只能微調(diào),在離Ground Truth近的時(shí)候才能生效?

為什么要邊框回歸?

這里引用王斌師兄的理解,如下圖所示:


這里寫圖片描述

對(duì)于上圖,綠色的框表示Ground Truth, 紅色的框?yàn)镾elective Search提取的Region Proposal。那么即便紅色的框被分類器識(shí)別為飛機(jī),但是由于紅色的框定位不準(zhǔn)(IoU<0.5), 那么這張圖相當(dāng)于沒有正確的檢測出飛機(jī)。 如果我們能對(duì)紅色的框進(jìn)行微調(diào), 使得經(jīng)過微調(diào)后的窗口跟Ground Truth 更接近, 這樣豈不是定位會(huì)更準(zhǔn)確。 確實(shí),Bounding-box regression 就是用來微調(diào)這個(gè)窗口的。

邊框回歸是什么?

繼續(xù)借用師兄的理解:對(duì)于窗口一般使用四維向量(x,y,w,h) 來表示, 分別表示窗口的中心點(diǎn)坐標(biāo)和寬高。 對(duì)于圖 2, 紅色的框 P 代表原始的Proposal, 綠色的框 G 代表目標(biāo)的 Ground Truth, 我們的目標(biāo)是尋找一種關(guān)系使得輸入原始的窗口 P 經(jīng)過映射得到一個(gè)跟真實(shí)窗口 G 更接近的回歸窗口G^。


這里寫圖片描述

邊框回歸的目的既是:給定(Px,Py,Pw,Ph)尋找一種映射f, 使得f(Px,Py,Pw,Ph)=(Gx^,Gy^,Gw^,Gh^) 并且(Gx^,Gy^,Gw^,Gh^)(Gx,Gy,Gw,Gh)

邊框回歸怎么做的?

那么經(jīng)過何種變換才能從圖 2 中的窗口 P 變?yōu)榇翱?span style="position: relative;" data-mathml="G&#x005E;" role="presentation">G^呢? 比較簡單的思路就是: 平移+尺度放縮

  1. 先做平移(Δx,Δy)Δx=Pwdx(P),Δy=Phdy(P) 這是R-CNN論文的:
    G^x=Pwdx(P)+Px,(1)
    G^y=Phdy(P)+Py,(2)
  2. 然后再做尺度縮放(Sw,Sh), Sw=exp(dw(P)),Sh=exp(dh(P)), 對(duì)應(yīng)論文中:
    G^w=Pwexp(dw(P)),(3)
    G^h=Phexp(dh(P)),(4)

觀察(1)-(4)我們發(fā)現(xiàn), 邊框回歸學(xué)習(xí)就是dx(P),dy(P),dw(P),dh(P)這四個(gè)變換。下一步就是設(shè)計(jì)算法那得到這四個(gè)映射。

線性回歸就是給定輸入的特征向量 X, 學(xué)習(xí)一組參數(shù) W, 使得經(jīng)過線性回歸后的值跟真實(shí)值 Y(Ground Truth)非常接近. 即YWX 。 那么 Bounding-box 中我們的輸入以及輸出分別是什么呢?

Input:

RegionProposalP=(Px,Py,Pw,Ph),這個(gè)是什么? 輸入就是這四個(gè)數(shù)值嗎?其實(shí)真正的輸入是這個(gè)窗口對(duì)應(yīng)的 CNN 特征,也就是 R-CNN 中的 Pool5 feature(特征向量)。 (注:訓(xùn)練階段輸入還包括 Ground Truth, 也就是下邊提到的t?=(tx,ty,tw,th))

Output:

需要進(jìn)行的平移變換和尺度縮放 dx(P),dy(P),dw(P),dh(P), 或者說是Δx,Δy,Sw,Sh 。 我們的最終輸出不應(yīng)該是 Ground Truth 嗎? 是的, 但是有了這四個(gè)變換我們就可以直接得到 Ground Truth, 這里還有個(gè)問題, 根據(jù)(1)~(4)我們可以知道, P 經(jīng)過 dx(P),dy(P),dw(P),dh(P) 得到的并不是真實(shí)值 G, 而是預(yù)測值G^。 的確, 這四個(gè)值應(yīng)該是經(jīng)過 Ground Truth 和 Proposal 計(jì)算得到的真正需要的平移量(tx,ty) 和尺度縮放(tw,th)
這也就是 R-CNN 中的(6)~(9):

tx=(Gx?Px)/Pw,(6)

ty=(Gy?Py)/Ph,(7)

tw=log?(Gw/Pw),(8)

th=log?(Gh/Ph),(9)

那么目標(biāo)函數(shù)可以表示為 d?(P)=w?TΦ5(P), Φ5(P)是輸入 Proposal 的特征向量,w?是要學(xué)習(xí)的參數(shù)(*表示 x,y,w,h, 也就是每一個(gè)變換對(duì)應(yīng)一個(gè)目標(biāo)函數(shù)) , d?(P) 是得到的預(yù)測值。 我們要讓預(yù)測值跟真實(shí)值t?=(tx,ty,tw,th)差距最小, 得到損失函數(shù)為:

Loss=iN(t?i?w^?T?5(Pi))2

函數(shù)優(yōu)化目標(biāo)為:

W?=argminw?iN(t?i?w^?T?5(Pi))2+λ||w^?||2

利用梯度下降法或者最小二乘法就可以得到 w?

為什么寬高尺度會(huì)設(shè)計(jì)這種形式?

這邊我重點(diǎn)解釋一下為什么設(shè)計(jì)的tx,ty為什么除以寬高,為什么tw,th會(huì)有l(wèi)og形式?。?!

首先CNN具有尺度不變性, 以圖3為例:


這里寫圖片描述

x,y 坐標(biāo)除以寬高

上圖的兩個(gè)人具有不同的尺度,因?yàn)樗际侨耍覀兊玫降奶卣飨嗤?。假設(shè)我們得到的特征為?1,?2,那么一個(gè)完好的特征應(yīng)該具備?1=?。ok,如果我們直接學(xué)習(xí)坐標(biāo)差值,以x坐標(biāo)為例,xi,pi 分別代表第i個(gè)框的x坐標(biāo),學(xué)習(xí)到的映射為f, f(?1)=x1?p1,同理f(?2)=x2?p2。從上圖顯而易見,x1?p1x2?p1。也就是說同一個(gè)x對(duì)應(yīng)多個(gè)y,這明顯不滿足函數(shù)的定義。邊框回歸學(xué)習(xí)的是回歸函數(shù),然而你的目標(biāo)卻不滿足函數(shù)定義,當(dāng)然學(xué)習(xí)不到什么。

寬高坐標(biāo)Log形式

我們想要得到一個(gè)放縮的尺度,也就是說這里限制尺度必須大于0。我們學(xué)習(xí)的tw,th怎么保證滿足大于0呢?直觀的想法就是EXP函數(shù),如公式(3), (4)所示,那么反過來推導(dǎo)就是Log函數(shù)的來源了。

為什么IoU較大,認(rèn)為是線性變換?

當(dāng)輸入的 Proposal 與 Ground Truth 相差較小時(shí)(RCNN 設(shè)置的是 IoU>0.6), 可以認(rèn)為這種變換是一種線性變換, 那么我們就可以用線性回歸來建模對(duì)窗口進(jìn)行微調(diào), 否則會(huì)導(dǎo)致訓(xùn)練的回歸模型不 work(當(dāng) Proposal跟 GT 離得較遠(yuǎn),就是復(fù)雜的非線性問題了,此時(shí)用線性回歸建模顯然不合理)。這里我來解釋:

Log函數(shù)明顯不滿足線性函數(shù),但是為什么當(dāng)Proposal 和Ground Truth相差較小的時(shí)候,就可以認(rèn)為是一種線性變換呢?大家還記得這個(gè)公式不?參看高數(shù)1。

limx=0log(1+x)=x

現(xiàn)在回過來看公式(8):

tw=log?(Gw/Pw)=log(Gw+Pw?PwPw)=log(1+Gw?PwPw)

當(dāng)且僅當(dāng)Gw?Pw=0的時(shí)候,才會(huì)是線性函數(shù),也就是寬度和高度必須近似相等。

對(duì)于IoU大于指定值這塊,我并不認(rèn)同作者的說法。我個(gè)人理解,只保證Region Proposal和Ground Truth的寬高相差不多就能滿足回歸條件。x,y位置到?jīng)]有太多限制,這點(diǎn)我們從YOLOv2可以看出,原始的邊框回歸其實(shí)x,y的位置相對(duì)來說對(duì)很大的。這也是YOLOv2的改進(jìn)地方。詳情請(qǐng)參考我的博客YOLOv2。

總結(jié)

里面很多都是參考師兄在caffe社區(qū)的回答,本來不想重復(fù)打字的,但是美觀的強(qiáng)迫癥,讓我手動(dòng)把latex公式巴拉巴拉敲完,當(dāng)然也為了讓大家看起來順眼。后面還有一些公式那塊資料很少,是我在閱讀paper+個(gè)人總結(jié),不對(duì)的地方還請(qǐng)大家留言多多指正。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多

    视频在线观看色一区二区| 国产福利一区二区三区四区| 国产精品一级香蕉一区| 一区二区三区日韩中文| 久久精品国产亚洲av麻豆尤物 | 国产一区日韩二区欧美| 蜜桃av人妻精品一区二区三区| 91在线国内在线中文字幕| 国产av精品一区二区| 超碰在线免费公开中国黄片| 国产丝袜极品黑色高跟鞋| 日韩在线精品视频观看| 欧美性欧美一区二区三区| 国产精品一区二区高潮| 加勒比日本欧美在线观看| 国产精品涩涩成人一区二区三区| 国产又猛又黄又粗又爽无遮挡| 中文字幕亚洲在线一区| 亚洲综合日韩精品欧美综合区| 久久精品亚洲精品国产欧美| 大尺度剧情国产在线视频| 欧美日韩国内一区二区| 亚洲一区二区三区在线中文字幕| 玩弄人妻少妇一区二区桃花| 欧美人妻少妇精品久久性色 | 91精品视频全国免费| 国产精品香蕉一级免费| 成人免费在线视频大香蕉| 成人精品国产亚洲av久久| 亚洲国产成人精品福利| 中文字日产幕码三区国产 | 久久精品色妇熟妇丰满人妻91| 亚洲成人免费天堂诱惑| 亚洲综合激情另类专区老铁性| 丁香六月婷婷基地伊人| 成人精品一区二区三区在线 | 亚洲精品中文字幕熟女| 国产精品熟女在线视频| 日本办公室三级在线观看| 国产又大又硬又粗又黄| 激情综合网俺也狠狠地|