1. 程式人生 > >計算機視覺:隨機森林演算法在人體識別中的應用

計算機視覺:隨機森林演算法在人體識別中的應用

人體識別

摘 要

人體識別是計算機視覺領域的一大類熱點問題,其研究內容涵蓋了人體的監測與跟蹤、手勢識別、動作識別、人臉識別、性別識別和行為與事件識別等,有著非常廣泛的應用價值。隨機森林以它自身固有的特點和優良的分類效果在眾多的機器學習演算法中脫穎而出。隨機森林演算法的實質是一種樹預測器的組合,其中每一棵樹都依賴於一個隨機向量,森林中的所有的向量都是獨立同分布的。本文簡單介紹了隨機森林的原理,並對近幾年來隨機森林在姿勢識別和人臉識別中的應用進行討論。

1.人體識別概述

人體識別是計算機視覺領域的一大類熱點問題,其研究內容涵蓋了人體的監測與跟蹤、手勢識別、動作識別、人臉識別、性別識別和行為與事件識別等。其研究方法幾乎囊括了所有的模式識別問題的理論與技術,例如統計理論,變換理論,上下文相關性,分類與聚類,機器學習,模板匹配,濾波等。人體識別有著非常廣泛的應用價值。

絕大多數人臉識別演算法和人臉表情分析演算法在提取人臉特徵之前,需要根據人臉關鍵點的位置(如眼角,嘴角)進行人臉的幾何歸一化處理。即使在已知人臉粗略位置的情況下,人臉關鍵點精確定位仍然是一個很困難的問題,這主要由外界干擾和人臉本身的形變造成。

當前比較流行的演算法有:基於啟發式規則的方法、主成分分析(PCA)、獨立元分析(ICA)、基於K-L 變換、彈性圖匹配等。

2.隨機森林綜述

隨機森林顧名思義,使用隨機的方式建立一個森林,森林裡面有很多的決策樹組成,隨機森林的每一棵決策樹之間是沒有關聯的。在得到森林之後,當有一個新的輸入樣本進入的死後,就讓森林的每一棵決策樹分別進行一下判斷,看看這個樣本應該屬於哪一類(對於分類演算法),然後看看哪一類能被選擇最多,就預測這個樣本為那一類。

隨機森林是一種統計學習理論,其隨機有兩個方面:首先是在訓練的每一輪中,都是對原始樣本集有放回的抽取固定數目的樣本點,形成k個互不相同的樣本集。第二點是:對於每一個決策樹的建立是從總的屬性中隨機抽取一定量的屬性作分裂屬性集,這樣對於k個樹分類器均是不相同的。由隨機生成的k個決策樹組成了隨機森林。

對於每一個決策樹來講,其分裂屬性是不斷的選取具有最大資訊增益的屬性進行排列。整個隨機森林建立後,最終的分類標準採用投票機制得到可能性最高的結果。

下圖是隨機森林構建的過程:

大資料圖1 隨機森林構建過程

3.隨機森林在人體識別中的應用

3.1 隨機森林應用於姿勢識別

以[1]一文來討論,論文中所涉及到的人體識別過程主要分為兩步,首先是,身體部位標記:對於從單張景深影象中對人體進行分段,並標記出關鍵節點。之後進行身體關節定位,將標記的各個人體部分重新對映到三維空間中,對關鍵節點形成高可靠的空間定位。

大資料
圖2 深度影象-身體部位標記-關節投影

文的最主要貢獻在於將姿勢識別的問題轉化成了物體識別的問題,通過對身體不同部位的空間位置的確定來實現,做到了低計算消耗和高精確度。在身體部位標記的過程中,將問題轉化成了對每個畫素的分類問題,對於每個畫素點,從景深的角度來確定該點的局域梯度特徵。該特徵是點特徵與梯度特徵的良好結合。
舉個例子,對於不同點的相同屬性值的判別,如下圖,圖a中的兩個測量點的畫素偏移間均具有較大的景深差,而圖b中的景深差則明顯很小。由此看出,不同位置畫素點的特徵值是有明顯差別的,這就是分類的基礎。

大資料圖3 景深影象特質示例

大資料

文中對於決策樹的分裂屬性的選擇來說。由於某兩個畫素點、某些影象特徵選取的隨意性,將形成大量的備選劃分形式,選擇對於所有抽樣畫素對於不同的分裂屬性劃分前後的資訊熵增益進行比較,選取最大的一組ψ=(θ, τ)作為當前分裂節點。(資訊增益與該影象塊最終是否正確地分類相關,即影象塊歸屬於正確的關鍵特徵點區域的概率。)

大資料圖4 決策時分類說明

大資料決策樹的建立後,某個葉子節點歸屬於特定關鍵特徵點區域的概率可以根據訓練影象最終分類的情況統計得到,這就是隨機森林在實際檢測特徵點時的最重要依據。

在人體關節分類中,我們由形成的決策森林,來對每一個畫素點的具體關節屬性進行判斷,並進行顏色分類。隨機森林這種基於大量樣本統計的方法能夠對由於光照、變性等造成的影響,實時地解決關鍵特徵點定位的問題。

如圖所示,是對於景深影象處理後的結果展示。

大資料
圖5 姿勢識別處理結果

應該這樣說,這篇文章在演算法的層面對隨機森林沒有太大的貢獻。在劃分函式的形式上很簡單。這個團隊值得稱道的地方是通過計算機圖形學造出了大量的不同體型不同姿勢的各種人體影象,用作訓練資料,這也是成為2011年CVPR Best Paper的重要原因。正是因為論文的成果運用於Kinect,在工業界有著巨大的作用,落實到了商用的硬體平臺上,推動了隨機森林在計算機視覺、多媒體處理上的熱潮。

3.2 隨機森林應用於人臉識別

基於迴歸森林的臉部特徵檢測通過分析臉部影象塊來定位人臉的關鍵特徵點,在此基礎上條件迴歸森林方法考慮了全域性的臉部性質。對於[2]進行分析,這篇論文是2012年CVPR上的論文,本文考慮的是臉部朝向作為全域性性質。其主要描述的問題是如何利用條件隨機森林,來確定面部10個關鍵特徵點的位置。與之前不同的是,在隨機森林的基礎上,加入了面部朝向的條件約束。

大資料

圖6 臉部10個特徵點

對於面部特徵標記的問題轉化成了對大量影象塊的分類問題。類似於人體識別中的局域梯度特徵識別。本文中,對於每一個影象塊來說,從灰度值、光照補償、相位變換等影象特徵,以及該影象塊中心與各個特徵點的距離來判斷影象塊的位置特徵。在決策樹的分裂屬性確定過程,依然使用“最大資訊熵增益”原則。

大資料
圖7 條件隨機森林演算法說明

文中提出了更進一步基於條件隨機森林的分類方法,即通過設定臉部朝向的約束對決策樹分類,在特徵檢測階段能夠根據臉部朝向選擇與之相關的決策樹進行迴歸,提高準確率和降低消耗。此論文還對條件隨機森林,即如何通過臉部朝向對決策進行分類進行了說明,但這與隨機森林演算法沒有太大關係,這裡就不再繼續討論了。隨機森林這種基於大量樣本統計的方法能夠對由於光照、變性等造成的影響,實時地解決關鍵特徵點定位的問題。

另一篇文章[3]對於臉部特徵標記,提出了精確度更高、成本更低的方法。即,基於結構化輸出的隨機森林的特徵標記方式。文中將面部劃分為20個特徵點,對於各個特徵點來說,不僅有獨立的影象塊分類標記,還加入了例如,點4,對於其他嘴脣特徵點3,18,19的依賴關係的判斷。這樣的方法使特徵點標記準確率大大增加。

該方法依然是使用隨機森林的方法,有所不同的是引入瞭如式中所示的與依賴節點之間的關係。對於決策樹的建立依然是依賴資訊熵增益原則來決定,葉子節點不僅能得到特徵的獨立劃分還會得到該特徵對依賴特徵的貢獻,最終特徵節點的判斷會綜合原始投票及空間約束。

大資料
圖8 臉部特徵標記大資料大資料

圖9 決策樹依賴關係

例如當對下圖中人臉特徵點進行分類時,使用簡單的隨機森林方法,經過判斷會將各個點進行標註,可以看到 紅色的點,標註出的鼻子特徵。如果利用依賴節點進行判斷,鼻子的點會被侷限在其他鼻子特徵點的周圍,進行疊加後,得到了這個結果。顯然,對於此節點的判斷,利用結構輸出的方式,準確度更高了。

大資料圖10 結構化輸出結果

4.隨機森林總結

大量的理論和實證研究都證明了RF具有很高的預測準確率,對異常值和噪聲具有很好的容忍度,且不容易出現過擬合。可以說,RF是一種自然的非線性建模工具,是目前資料探勘演算法最熱門的前沿研究領域之一。具體來說,它有以下優點:

1.通過對許多分類器進行組合,它可以產生高準確度的分類器;

2.它可以處理大量的輸入變數;

3.它可以在決定類別時,評估變數的重要性;

4.在建造森林時,它可以在內部對於一般化後的誤差產生不偏差的估計;

5.它包含一個好方法可以估計遺失的資料,並且,如果有很大一部分的資料遺失,仍可以維持準確度。

6.它提供一個實驗方法,可以去偵測變數之間的相互作用;

7.學習過程是很快速的;

8.對異常值和噪聲具有很好的容忍度,且不容易出現過擬合;

隨機森林的缺點:

1.對於有不同級別的屬性的資料,級別劃分較多的屬性會對隨機森林產生更大的影響,所以隨機森林在這種資料上產出的屬性權值是不可信的;
2.單棵決策樹的預測效果很差:由於隨機選擇屬性,使得單棵決策樹的預測效果很差。

參考文獻:
[1] Shotton, J.; Fitzgibbon, A.; Cook, M.; Sharp, T.; Finocchio, M.; Moore, R.; Kipman, A.; Blake, A., “Real-time human pose recognition in parts from single depth images,”Computer Vision and Pattern Recognition (CVPR), 2011 IEEE Conference on , vol., no., pp.1297,1304, 20-25 June 2011
[2] Dantone M, Gall J, Fanelli G, et al. Real-time facial feature detection using conditional regression forests[C]//Computer Vision and Pattern Recognition (CVPR), 2012 IEEE Conference on. IEEE, 2012: 2578-2585.
[3] Heng Yang, Ioannis Patras, “Face Parts Localization Using Structured-output Regression Forests”, ACCV2012, Dajeon, Korea.

作者:陳楠End.