hough forest----Class-Specific Hough Forests for Object Detection

看了很多網上寫的霍夫森林的講解,感覺他們講的都不是很全面,所以想寫這個東西,方便以後自己查閱。這裏所寫的是關於對行人檢測的那篇論文。

很多人一看hough forest 是不是和hough transform有關。那天我講ppt的時候給大家講了一下hough transform,想從hough transform過度到hough forest要好一點。老實說很多人聽了霍夫變換去聽霍夫森林更是雲裏霧裏的。如果想看hough transform 建議去看維基百科。如果知道hough transform對直線檢測的話。你把在直線上的點想象成這裏的一個個的patch,把直線在最後在數組上的投票想象成我們後面所說的投票。但是在對直線檢測的時候我們檢測的是一條確定的直線,在這裏我們檢測的是一個物體中心。你把直線想象成物體中心就ok了。

通過訓練特定類的hough forest,各個局部圖像塊(patch)產生對物體中心位置的概率性投票(注意:這裏說的是概率性投票,其實想表達的不是概率,因爲相加之後不等於1),最後累加這些投票,選取最大值作爲物體的中心。

特點:
1.葉子節點存的是具有判別性的碼本。即一個patch來自背景還是物體,物體中心距離當前patch的位置。
2.hough forest可以優化投票性能,即葉子節點投票的不確定度再一直降低。(因爲決策樹在每個分支節點都想做到把不純度降到最低)
3.用監督方法建立樹。

特徵提取可以有很多種,具體提取什麼特徵就看你做什麼事情了。像論文上寫的是對行人進行檢測,提取hog特徵一樣。

ok,不知道別人怎麼樣,我第一次看到這個圖像的時候一臉懵逼。其實這幅圖我理解的意思是:先取局部圖像塊(圖a中紅綠藍色的框框(patch),然後提取特徵,得到訓練集。(你可以這麼聯想,想象成通過提取hog特徵,就得到了像西瓜書上面西瓜的紋路,響聲那些特徵,畢竟我們有特徵纔有辦法計算不是)。 然後就要訓練一顆決策樹了。訓練完所有的樹後我們會得到很多葉子節點。葉子節點裏面存放了兩個值。
1. cl—即在一個葉子節點中,正樣本的數量佔所有樣本數量的比例。
2. dl—在葉子節點中,屬於目標的樣本,到物體中心的位移向量
圖b顯示是通過cl,dl對目標中心的概率性投票。(你可以想象成橫軸表達的patch的位置,數軸表達的是這個patch是目標中心的概率值,這個不對但是你可以這麼理解)
———- 訓練階段結束 ————
圖c顯示的是我們用固定大小的框在測試圖像上滑動的時候。框中所有patch塊通過hough投票得到的總概率大小。越黑的地方概率值更大。

圖d得到目標中心。

樹的結構

這裏寫圖片描述
訓練數據
s0={(v,c,y)}
v是圖片塊的特徵,
c是分類標籤(1表目標,0表背景),
y是該塊的中心到目標中心的向量 2維:有大小和方向
c=1時候纔會有y
C=0時,y—-undefined

這裏寫圖片描述

這就是分類器, a代表的是選擇的channel,也就是剛剛用hog提取的特徵,一般得到的是9個channel(你可以想象成這裏我們需要選擇西瓜的紋理那些進行熵的計算)。
(p,q) (r,s)是隨機選擇的兩個像素點。閾值也是隨機選取。

葉子節點存放信息

是這是葉子節點存放的情況。

樹停止生長的條件:
1.達到最大深度
2.訓練集中只包含一類數據
3當前節點中包含的數據集數量小於最小限制。

目標函數
1.分類
2.迴歸

這裏寫圖片描述
這裏寫圖片描述

至於分類和迴歸的選擇,是隨機選取的。
有一種特殊情況就是,當在此分裂節點中,負樣本數量小於5%時候,我們只做迴歸。

——-至此訓練結束——–

這裏寫圖片描述

現有一圖像塊(v(p),c(p),y(p))
p是這個塊的中心點,現在不確定c(p)的取值
E(q)表示物體中心位於x時的隨機事件

我們用一個固定大小的框(藍色的框)在測試圖像上去滑動)。我們只計算屬於藍色框框中的圖像塊的投票。

怎麼計算——-

這裏寫圖片描述
這就是cl和dl的作用(直接粘自己的ppt了)。第一項是用parzen window來估計(不會百度一下有很好的講解)。第二項就是cl。

到這裏得到了一顆樹,關於一個圖像塊的投票結果了。

這裏寫圖片描述

這個是hough森林關於這一個patch的結果。

這裏寫圖片描述

這個是整個森林對屬於藍色框中所有的塊做出的最終結果。

到這裏我們就得到了目標中心。其實就是我們用的固定大小框的中心,只是因爲這個框得到的最終結果最大,所以就將他作爲中心而已。

然後說下是否剪枝的問題,其實可以剪枝。在隨機森林中我們一般是不剪枝的,在這裏剪枝可以加速檢測速度。實驗中發現將葉子節點中cl<0.5的葉子節點減掉,不影響森林的準確性。你可以想,在bounding box中,本來就有很多屬於背景的圖片塊,所以剪枝大多都是包含很多背景塊的葉子節點,這並不會影響最終結果。

小時候語文學的不好,看不懂的話輕噴。。。。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章