Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> 手勢識別(二)--單目手勢識別算法總結

手勢識別(二)--單目手勢識別算法總結

編輯:關於Android編程

手勢有三個主要特征:手型,方向,運動軌跡

一個基於視覺手勢識別系統的構成應包括:圖像的采集,預處理,特征提取和選擇,分類器的設計,以及手勢識別。其流程大致如下:

\

上面識別過程,再分解為:

\

其中有三個步驟是識別系統的關鍵,分別是預處理時手勢的分割,特征提取和選擇,手勢跟蹤,以及手勢識別采用的算法。

不管是手勢檢測,或者手勢跟蹤,識別,特征提取和選擇是關鍵:

手勢本身具有豐富的形變,運動以及紋理特征,選取合理的特征對於手勢的識別至關重要。目前 常用的手勢特征有:輪廓、邊緣、圖像矩、圖像特征向量以及區域直方圖特征等等。

《基於計算機視覺的手勢識別研究》中提到了多尺度模型,它就是采用此模型提取手勢的指尖的數量和位置,將指尖和掌心連線,采用距離公式計算各指尖到掌心的距離,再采用反余弦公式計算各指尖與掌心連線間的夾角,將距離和夾角作為選擇的特征。對於靜態手勢識別而言,邊緣信息是比較常用的特征。

《基於幾何特征的手勢識別算法研究》中采用的HDC提取關鍵點的識別算法,基於用八方向鄰域搜索法提取出手勢圖像的邊緣,把圖像的邊緣看成一條曲線,然後對曲線進行處理。

《基於視覺的手勢識別及其在人機交互中的應用》利用方向直方圖作為手勢識別的特征向量。雖然方向直方圖具有平移不變性,但它不具有旋轉不變性。同一手勢圖像,經過旋轉後,直方圖會不同。而且方向直方圖不具有唯一性,即不同的手勢圖像可能會有相似的方向直方圖。

在進行特征選取時我們可以考慮結合多種特征,在《基於計算機視覺的手勢識別研究中》提出了多尺度模型與矩描繪子相結合的算法,將指尖和重心連線,采用距離公式計算各指尖到重心的距離,再采用反余弦公式計算各指尖與重心連線間的夾角,將距離和夾角作為選擇的特征,從而提高了識別正確率,並減少了識別時間。《基於幾何特征的手勢識別算法研究》采用幾何矩和邊緣檢測的識別算法,手勢圖像經過二值化處理後,提取手勢圖像的幾何矩特征,取出幾何矩特征七個特征分量中的四個分量,形成手勢的幾何矩特征向量。在灰度圖基礎上直接檢測圖像的邊緣,利用直方圖表示圖像的邊界方向特征。最後,通過設定兩個特征的權重來計算圖像間的距離,再對手勢進行識別。

可以看出適當的采用多種特征結合的算法,可以在計算的復雜度以及精確度上有所提高。總體來說:

手勢檢測(手勢分割):

主要受復雜背景,遮擋,直接光源的亮度變化,外部反射,

常見手部檢測特征選取:

基於膚色,基於表觀,基於模型三種手部檢測。建議,先背景去除,在結合多特征,如膚色+紋理(類Harr)+ADABoost做手部檢測,HOG+PCA(設計分類器,左手,右手,雙手交叉)做左右手區分。

一般來講,分割方法大致分為以下三類:

一是基於直方圖的分割,即阈值法,通常取灰度直方圖的波谷作為阈值。(《hausdorff在距離在手勢識別中的運用》采用了阈值法。)

二是基於局部區域信息的分割,如基於邊緣和基於區域的方法;(《基於幾何特征的手勢識別算法研究》采用了邊緣檢測方法。)

三是基於顏色等一些物理特征的分割方法。(《復雜背景下基於單目視覺的靜態手勢識別》采用了基於顏色空間的膚色聚類法,《基於視覺的手勢識別及其在人機交互中的應用》采用了膚色濾波法。)。

每種方法都有自己的優點,但也存在一定的問題,對於簡單背景的圖像,采用阈值法能達到不錯的效果,對於復雜的圖像,單一的阈值不能得到良好的分割效果。采用邊緣提取方法時,若目標物和背景灰度差別不大時,則得不到較明顯的邊緣。可以采用多種方法相結合的圖像處理方法,例如對采集的圖像先進行差影處理,然後進行灰度阈值分割,或者對圖像按區域分成小塊,對每一塊進行設置阈值。

手勢分割是手勢識別系統中的關鍵技術之一,它直接影響系統的識別率,目前的分割技術大都需要對背景,用戶以及視頻采集加以約束。其受背景復雜度和光照變化的影響最大,可以在這些方面進行改進。

手勢跟蹤:

受快速運動,雙手遮擋,非剛體,非線性,非高斯,多模態。通俗的講,就是手勢非剛體運動,受到縮放,形變,缺少,模糊,旋轉,亮度,視角等因素影響,建議,基於膚色的SIFT+膚色(ROI)+HOG,采用MeanShift

常見跟蹤算法選取:

粒子濾波,MeanShift,基於Sift特征,基於EKF,基於SVM,基於模板匹配,

手勢識別:

受尺度,角度,光照,同一手勢每次演示的差異,分靜態,動態手勢:

目前基於單目視覺的靜態手勢識別技術主要有三大類:

第一類為模板匹配技術,這是一種最簡單的識別技術。它將待識別手勢的特征參數與預先存儲的模板特征參數進行匹配,通過測量兩者之間的相似度來完成識別任務。《Hausdorff距離在手勢識別中的運用》中利用Hausdorff距離模板匹配思想來實現手勢的識別。將待識別手勢和模板手勢的邊緣圖像變換到歐式距離空間,求出它們的Hausdorff距離或修正Hausdorff距離。用該距離值代表待識別手勢和模板手勢的相似度。識別結果取與最小距離值對應的模板手勢。

第二類為統計分析技術,這是一種通過統計樣本特征向量來確定分類器的基於概率統計理論的分類方法。這種技術要求人們從原始數據中提取特定的特征向量,對這些特征向量進行分類,而不是直接對原始數據進行識別。在《基於計算機視覺的手勢識別研究》中雖然也采用了Hausdorff距離算法,但並未提出模板手勢,而是對於每幅圖像提取出指尖和重心特征,然後計算出距離和夾角,對於不同手勢分別進行距離和夾角的統計,得到其分布的數字特征,根據基於

最小錯誤率的貝葉斯決策得到用於分割不同手勢的距離和夾角的值。得到分類器以後,對於采集的手勢圖像進行分類識別。文中的多尺度模型和矩描繪子相結合的算法也是運用了統計分析技術。

第三類為神經網絡技術,這種技術具有自組織和自學習能力,具有分布性特點,能有效的抗噪聲和處理不完整模式以及具有模式推廣能力。采用這種技術,在識別前都需要一對神經網絡的訓練(學習)階段。

其中比較常用的是BP神經網絡。BP ( Error Back Propagation Neural Network 誤差反向傳播神經網絡)由它是一種能向著滿足給定的輸入輸出關系方向進行自組織的神經網絡,當輸出層上的實際輸出與給定的輸入不一致時,用下降法修正各層之間舊的結合強度,直到最終滿足給定的輸入輸出關系為止,出於誤差傳播的方向與信號傳播的方向正好相反稱為誤差反向傳播神經網絡。BP神經網絡的理論認為:只要不斷給出輸入和輸出之間的關系,則在神經網絡的學習過程中,其內部就一定會形成表示這種關系的內部構造,並且只要使關系形成的速度達到實用值,那麼BP的應用就不存在任何的困難. 《基於視覺的手勢識別及其在人機交互中的應用》采用了基於方向直方圖的BP(誤差反向傳播)神經網絡方法。

可以看出若是基於幾何分類法算法簡單,與神經網絡的方法相比,顯示出了可靠性,其允許定義一個不同手勢類別特點的特征集,估計一個局部最優的線性分辨器,根據手勢圖像中提取的大量特征識別相應的手勢類別,但其學習的效率不高,隨著樣本量的不斷增大,算法識別率的提高不明顯。但BP神經網絡需要一定的學習階段,處理過程中可能存在著中間層神經元的個數龐大,學習時間太長,結合系數范圍太寬等嚴重缺點。在BP神經網絡的實際應用中應該合理考慮網絡結構。

如基於Sift 靜態手勢 識別,即采用基於膚色的Sift特征,用PCA降維,再用HOG特征表述手勢,也做PCA降維,兩種特征作為特征向量,訓練分類器,生成靜態特征識別庫。

基於單目視覺的動態手勢識別技術:

基於神經網絡,基於HMMs,基於CRFs.

傳統的動態手勢識別,是基於HMMs,但HMMs是與觀察無關的,也就是說,所有的情況在對模型訓練時就必須要知道,否則就無法對這些未經訓練的樣本識別。實際中,我們不可能把所有的情況都考慮清楚,也不可能把所有的訓練樣本都訓練。其次,觀察無關還導致了標注偏移。雖然MEMMS在一定程度上解決了觀察無關問題,但還是存在標注偏移問題。

基於模糊的條件隨機場FCRF可以避免觀察無關與標注偏移問題。

由於手勢序列包括內部子結構和用於區分不同手勢的外部動態結構,因此,LDCRFs不但可以辨識內部結構,同時可以辨識外部結構,針對連續手勢,修改隱函數為模糊函數,即FLDCRFs.

本文對針對基於視覺的手勢識別算法,做一個簡單總結。後續有改進再補充。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved