HOG特徵提取算法原理

1.算法基本流程

  在一幅圖像中,方向梯度直方圖(Histogram of Oriented Gradient, HOG)能夠很好地描述局部目標區域的特徵,是一種常用的特徵提取方法,HOG+SVM在行人檢測中有着優異的效果。在HOG中,對一幅圖像進行了如下劃分:
圖像(image)->檢測窗口(win)->圖像塊(block)->細胞單元(cells)
流程圖如下:
這裏寫圖片描述

2.計算圖像梯度

  對數字圖像而言,每個像素水平和垂直方向的梯度,可以通過下圖的kernels計算:
  這裏寫圖片描述
  即可寫爲:
  這裏寫圖片描述
  每個像素梯度大小和方向可表示爲:
  這裏寫圖片描述
  其中,I(x,y)是圖像在點(x,y)處的像素值。
  梯度圖像移除了不必要的信息,但是高亮了輪廓線。在每一個像素上,梯度都有大小和方向。對於彩色圖像,3個通道的梯度都將被計算出來,然而圖像素的梯度值爲3個通道中最大的梯度值,角度也是最大角度。

3.HOG的win ,block ,cell

這裏寫圖片描述
這裏寫圖片描述
這裏寫圖片描述
  對於圖像中檢測窗口的尺寸爲64×64,假設給出塊的尺寸爲16×16,塊步長爲(8,8),經過計算:檢測窗口中共滑動7×7=49個block。在一個塊中選擇細胞單元不再滑動,給出細胞單元的尺寸爲(8,8),所以一個塊中一共有2×2=4個cell。

4.HOG構建方向梯度直方圖與特徵向量維數

  HOG構建方向梯度直方圖在cell中完成,bins的個數決定了方向的範圍。假設採用9個bin的直方圖來統計這8×8個像素cell的梯度信息,即將cell的梯度方向0~180度(或0~360度,考慮了正負,signed)分成9個方向塊。如下圖所示:如果這個像素的梯度方向是20-40度,直方圖第2個bin即的計數就加1,這樣,對cell內每個像素用梯度方向在直方圖中進行加權投影,將其映射到對應的角度範圍塊內,就可以得到這個cell的梯度方向直方圖了,就是該cell對應的9維特徵向量(因爲有9個bin)。這邊的加權投影所用的權值爲當前點的梯度幅值。例如說:某個像素的梯度方向是20-40度,其梯度幅值是4,那麼直方圖第2個bin的計數就不是加1了,而是加4。這樣就得到關於梯度方向的一個加權直方圖。之前提到過,cell的中方向範圍的個數由bins來決定,還是以9爲例:所以,一個cell中的向量爲9個。以上面的例子,在一個尺寸爲64×64的檢測窗中,描述子的維數就應該爲:9×4×49=1764 。其中4爲一個block中cell的個數,49爲一個win中block的個數。
  這裏寫圖片描述

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