1. 程式人生 > >人臉識別---Gabor特徵(mean pooling和max pooling)

人臉識別---Gabor特徵(mean pooling和max pooling)

Abstract—本文主要講解Gabor特徵在人臉識別中的使用。
      在此不講Gabor濾波器的原理,網上有很多部落格已經介紹了大量關於Gabor濾波器。此文講下提取出來後的Gabor濾波器的處理。
      通常我們使用的Gabor濾波器有8個方向,5個尺度,這些引數都可以調節。Gabor濾波器分為實數部分和虛數部分,如圖1所。圖1a為實數部分,圖1b為虛數部分。

這裡寫圖片描述
圖1a Gabor濾波器實數部分
這裡寫圖片描述
圖1b Gabor濾波器虛數部分

      從圖1a和圖2a可以清楚看出,每一列為尺度變化,一共有5個尺度。每一行為方向變化,一共有五個方向。
      把人臉影象分別用對應的實部虛部濾波器進行濾波,再進行平方相加開根號。就可以得到人臉的Gabor特徵了,如圖2待提取的人臉影象。圖2為Gabor的特徵圖。


這裡寫圖片描述
圖2 待提取的人臉影象這裡寫圖片描述
圖3 Gabor的特徵圖

圖2為Gabor特徵的特徵圖,影象大小為100*70,假設不損失邊緣進行濾波,那麼將得到100*70*40=28w特徵,這個特徵太大!(1)不適合儲存。(2)有很多不需要的特徵,導致維數災難。
      下面我介紹一種特徵降維的方法,稱為pooling,在Deep learning有用到過。對特徵圖可以進行max pooling或者mean pooling。如圖4所示

這裡寫圖片描述
圖4 人臉特徵影象分塊方式

      每一個小塊,我們可以取平均或者這個小塊的最大值,取平均叫mean pooling,取最大值為max pooling。假設每一個小塊為10*10,那麼一張feature map大小為7*10。對於40張feature map,總特徵維度為7*10*40=2800。這樣的特徵便於儲存。
當然還有其他特徵處理的方式

  • 關鍵點取樣(SIFT,SURF關鍵點都可以)
  • 定點取樣,壞處在於不知道採的特徵是否具體代表性。
  • Adaboost等方法特徵選擇方法選擇特徵。
這裡寫圖片描述