分析完手勢就等于把手勢分好了類,接下來只需要將讀取到的手勢信息,與這些分析結果相匹配,匹配過程就叫手勢識別。
手勢識別分為靜態(tài)手勢識別和動態(tài)手勢識別。靜態(tài)手勢相當于我們檢測視力時,對醫(yī)生做的表明方向手勢;動態(tài)手勢相當于籃球場上裁判員做的一些列手勢。

靜態(tài)手勢識別一般采用模板匹配方法來實現。通過一些相似準則,實時地比較手勢與模板庫中預定義手勢的相似度,從而根據最大相似度來提取出手勢模板。
與靜態(tài)手勢不同,動態(tài)手勢涉及時間及空間上下文。絕大多數動態(tài)手勢被建模為手勢模型空間里的一條軌跡。不同用戶做手勢時存在的速率差異、熟練程度等問題,會使運動軌跡與模型軌跡產生較大偏差。
為了消除這一問題。現有的動態(tài)手勢識別技術可以分為三類:基于隱馬爾科夫模型(Hidden Markow Models,HMM)的識別,基于動態(tài)時間規(guī)整(Dynamic Time Warping,DTW)的識別,基于壓縮時間軸的識別。
HMM 算法因具有自動分割和分類能力,被廣泛應用,以下例子能很好地說明這一算法的原理。

假設你有一個住得很遠的朋友,他每天跟你打電話告訴你他那天做了什么。朋友僅僅對三種活動感興趣:公園散步、購物以及清理房間。他選擇做什么事情只憑天氣。
盡管你對于他所住地方的天氣情況并不了解,但是你可以根據他今天所做的事情,來猜測天氣情況。這整個系統(tǒng)就是一個隱馬爾可夫模型 HMM。
在這個系統(tǒng)里,你知道的這個地區(qū)的天氣趨勢以及朋友在做的事情,這些就是隱馬爾可夫模型里的參數,它們是已知的。而手勢可以描述為一系列由方向向量構成的系列,相近向量可以用一個符號來描述。如下圖所示:

我們可以識別手指的位置,然后根據 HMM 模型去猜測軌跡,通過軌跡即可分析手勢的意思。
本文配圖來自 Google