PHOG特征


PHOG特征

2016年7月13日 21:07:57

什么是PHOG

PHOG是Pyramid HOG(pyramid histogram of oriented gradient)的簡稱,是在圖像尺寸固定的情況下,計算不同尺度下的特征(這一點有點繞,是指要計算HOG特征的區塊的划分尺度在變化),將這些特征進行拼接得到PHOG特征,在論文[1,2]中被提出和使用,用來做圖像分類。

PHOG原理

具體來講,HOG特征描述的是一個區域,它可以是一個cell大小,也可以是一個windows大小,anyway,ROI內逐像素計算梯度方向,然后按預設將所有角度等分為若干份,每個像素點的梯度方向就划歸到特定角度范圍內,那么統計直方圖中就把它算到對應的“統計立柱(bin)”里面去,術語叫做“投票”,其投票權值是像素點的梯度幅值。逐像素操作后得到一個統計直方圖,它可以用一個一維向量表示。我們可以把這個向量叫做HOG特征。需要計算PHOG特征的圖像其尺寸是固定的,但要計算HOG特征則可以對這個圖片有不同尺度的划分:第一層,只有1個區域;第二層:分為2x2個區域;第三層:分為4x4個區域;...。在同一划分尺度圖里面,每個區域算出一個HOG特征,按順序進行拼接,得到當前尺度圖的HOG特征;所有尺度圖的HOG特征進行拼接,得到整個圖像空間尺度金字塔的PHOG特征。

怎么求PHOG

用偽代碼表示一下:

Input:
    win:某圖像區域
    bins: 梯度方向(角度值)要划分到幾個區域,即180°或360°要等分的數目。通常取360°和8等分
    L: 尺度金字塔要搞幾層?通常取3。表示除了原圖尺度外,另外再算3個“原有1/2尺度”圖像的HOG特征
Output:
    PHOG:尺度金字塔所有層的HOG特征的拼接
Algorighm:
    function HOG(area){
        %計算某區域area的HOG特征
        逐像素計算梯度方向(角度值)
        按等分方向數量,將梯度方向划歸到不同的區間,進行統計
        統計得到的直方圖,是一個向量    
    }

    function level_HOG(level){
        %計算某層金字塔的HOG特征
        將均等划分的若干個窗口,分別計算HOG特征
        將這些HOG特征進行拼接
    }

    function PHOG(win){
        %計算某區域win的尺度金字塔的PHOG特征
        逐層計算win的尺度金字塔的HOG特征
        將這些HOG特征進行拼接
    }

PHOG的維度

PHOG作為HOG的變種,也是一個描述符,在代碼實現中就是一個一維向量。那么PHOG描述符的長度是多少?即,PHOG這個向量有多少維?

L=3, n=8時:
第0層是整圖算HOG,1x8維的HOG特征
第1層是2x2划分,2x2x8維的HOG特征
第2層是4x4划分,4x4x8維的HOG特征
第3層是8x8划分,8x8x8維的HOG特征
因此,此時的phog_dimension=(1+4+16+64)x8=680維

source code

http://www.robots.ox.ac.uk/~vgg/research/caltech/phog.html

ref

[1] Bosch, A. , Zisserman, A. and Munoz, X.
Representing shape with a spatial pyramid kernel
Proceedings of the International Conference on Image and Video Retrieval (2007)
[2] Bosch, A. , Zisserman, A. and Munoz, X.
Image Classification using Random Forests and Ferns
Proceedings of the 11th International Conference on Computer Vision, Rio de Janeiro, Brazil (2007)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM