現有產品和技術
騰訊雲手勢識別
功能
靜態手勢識別、關鍵點識別、指尖識別、手勢動作識別等多種功能
靜態手勢識別(手型識別)
- 返回手的位置及類別
- 17種單手,8種雙手
手勢關鍵點識別
- 定位手的22個關鍵點的位置
指尖識別
- 只識別中指指尖
手勢識別
- 基於視頻識別近距離動作包括左滑、 右滑,遠距離動作包括揮手、舉手、敬禮等
性能
- 靜態手勢識別算法的正確率爲95+%
- 手勢關鍵點算法的識別正確率爲94+%
- 手勢動作識別的正確率爲90+%
在 iPhone8 上 - 靜態手勢識別速度爲22ms/fps,
- 手部關鍵點識別速度爲28ms/fps
- 手勢動作識別速度爲30ms/fps
曠視手勢識別
二維手型識別
- 19種常見手勢
reference
二維手型、二維手勢、三維手勢的差異
只需揮一揮手:3D手勢識別系統含相關引用文獻
Google Open Sources Real-Time Hand Gesture Recognition Algorithm For Developers
谷歌開源的手勢識別
功能
MediaPipe
- 交叉平臺框架
- 可處理不同模態的感知數據
- 移動端實現了實時性,且可實現多個手的追蹤
- 單幀推理21個3D關鍵點
- 可識別手勢追蹤和識別
模型組成
BlazePalm 實時手掌/手勢檢測模型
內容
- 返回帶方向的邊界框
- 採用手掌檢測模型可以很大程度地減少數據增強,使得關鍵點識別模型可以專注於關鍵點的識別上(而不是區分前景和背景上)
- 對SSD單階段檢測器進行優化,用於手掌檢測
難點
- 手掌檢測的難點體現在:不同尺度、遮擋和遮擋、缺乏高對比度的模式(VS 人臉有眼睛、鼻子)
解決方案
訓練手掌檢測器,而不是手檢測器
–估計手掌的邊界框和拳頭比估計高自由度的手要容易一些,
- 手掌是小目標,NMS(非極大值抑制)在兩隻手遮擋時也可得到較好的結果
- 手掌檢測可以採用方形邊界框,而不需要考慮不同縱橫比的邊界框,這樣可以減少3-5倍的邊界框
編解碼結構
編碼器-解碼器結構可以感知更大的感受野,小目標也可以獲得很大的感受野
focal loss
準確率
手掌識別準確率:95.7%
採用普通交叉熵損失函數、無解碼結構準確率:86.22%
手勢關鍵點識別模型
- 基於手掌及其附近的裁剪區域,通過迴歸的方式返回高保證的21個3D關鍵點
- 原始數據集(約30K)和合成數據集,都採用3D標註,z座標在深度圖獲得
手勢識別器
- 將之前的關鍵點外形分類爲一組離散的手勢
備註:該方法類似於人臉網格的方法,有研究者將其應用於位姿識別
手勢識別技術
難點
- 手勢遮擋