2015-02-09 116 views
1

我對理解從extractHOGFeatures(I,varargin)提取的函數中的特徵尺寸有困惑。我的圖片尺寸爲120x54,當我將此功能與此功能的默認值一起使用時,Cellsize [8 8],Block size [2 2],NumBin=9。使用此功能的輸出功能的大小爲1980x1。但是,我聽說有一個簡單的公式來計算功能Cellsize*Numbin這是8*8*9=576的大小。所以,我很困惑,可能是我得到錯誤的功能數量。任何人都可以告訴我提取公式是否有任何這樣我可以驗證我得到正確數量的功能?計算HOG的特徵尺寸

+0

也許應該加上[這個函數](http://www.mathworks.com/help/vision/ref/extracthogfeatures.html)是Com的一部分電腦視覺工具箱,可能不那麼常用。 – Trilarion 2015-02-09 13:57:57

回答

4

爲了補充@迪馬的回答,對extractHOGFeatures的文檔給出的公式來計算HOG特徵長度:

N = prod([BlocksPerImage, BlockSize, NumBins]) 

其中

BlocksPerImage = floor((size(I)./CellSize - BlockSize)./(BlockSize - BlockOverlap) + 1) 

BlockOverlap = ceil(BlockSize/2) 
+0

這是該文件的鏈接。你可以在圖2的描述中看到他解釋了計算特徵的方法。 [Paper](http://link.springer.com/chapter/10.1007%2F978-3-540-69162-4_62) – 2015-02-10 03:52:36

+0

此外,我想知道,如果我有圖像'I'的大小爲'120x50'我使用HOG來提取特徵。第二種方法是將圖像分成4個相等的部分,然後在每個部分上應用HOG,然後連接所有四個塊的特徵。那麼,這些連接的特徵將具有與從整個圖像中提取的特徵相同的信息? – 2015-02-10 06:49:42

+0

感謝您的論文!是的,我相信它應該是相同的小圖像組成一個大的形象。 – 2015-02-10 14:47:22

2

首先,讓我們來澄清一下術語。當您從圖像計算HOG特徵向量時,圖像被分成可能重疊的塊,每個塊被分成單元,然後爲每個單元計算一個方向直方圖。

在你的情況下,塊大小是2x2單元格。所以每個塊的特徵元素的數量是BlockSize * NumBin,這是2x2x9。圖像中的塊數取決於圖像大小和參數BlockOverlap

+0

你可以請檢查這個[鏈接](http://stackoverflow.com/questions/43773298/confusion-in-different-hog-codes) – Addee 2017-05-04 06:35:10