手勢識別是近年來大熱的人機(jī)交互方式。由于功能炫酷、操作方便,智能家居、智能穿戴設(shè)備、智能汽車以及VR/AR等領(lǐng)域都增加了手勢識別控制功能。
手勢識別的發(fā)展歷程
最初的手勢識別主要是利用穿戴設(shè)備,直接檢測手、胳膊各關(guān)節(jié)的角度和空間位置。這些設(shè)備多是通過有線技術(shù)將計算機(jī)系統(tǒng)與用戶相互連接,使用戶的手勢信息完整無誤地傳送至識別系統(tǒng)中,其典型設(shè)備如數(shù)據(jù)手套等。這些設(shè)備雖可提供良好的檢測效果,但將其應(yīng)用在常用領(lǐng)域則價格昂貴。
其后,光學(xué)標(biāo)記方法取代了數(shù)據(jù)手套將光學(xué)標(biāo)記戴在人手上,通過紅外線可將人手位置和手指的變化傳送到系統(tǒng)屏幕上,該方法也可提供良好的效果,但仍需較為復(fù)雜的設(shè)備。
外部設(shè)備的介入雖使得手勢識別的準(zhǔn)確度和穩(wěn)定性得以提高,但卻掩蓋了手勢自然的表達(dá)方式為此,基于視覺的手勢識別方式應(yīng)運(yùn)而生。視覺手勢識別是指對視頻采集設(shè)備拍攝到的包含手勢的圖像序列,通過計算機(jī)視覺技術(shù)進(jìn)行處理,進(jìn)而對手勢加以識別。
基于視覺的手勢識別分類
基于視覺的手勢識別技術(shù)的發(fā)展是一個從二維到三維的過程。早期的手勢識別是基于二維彩色圖像的識別技術(shù),就是指通過普通攝像頭拍出嘲后,得到二維的靜態(tài)圖像,然后再通過計算機(jī)圖形算法進(jìn)行圖像中內(nèi)容的識別。隨著攝像頭和傳感器技術(shù)的發(fā)展,可以捕捉到手勢的深度信息,三維的手勢識別技術(shù)就可以識別各種手型、手勢和動作。
二維手型識別
二維手型識別,也稱靜態(tài)二維手勢識別,識別的是手勢中最簡單的一類。只能識別出幾個靜態(tài)的手勢動作,比如握拳或者五指張開。
這種技術(shù)只能識別手勢的“狀態(tài)”,而不能感知手勢的“持續(xù)變化”。說到底是一種模式匹配技術(shù),通過計算機(jī)視覺算法分析圖像,和預(yù)設(shè)的圖像模式進(jìn)行比對,從而理解這種手勢的含義。因此,二維手型識別技術(shù)只可以識別預(yù)設(shè)好的狀態(tài),拓展性差,控制感很弱,用戶只能實現(xiàn)最基礎(chǔ)的人機(jī)交互功能。
其代表公司是被Google收購的Flutter。使用他家的軟件之后,用戶可以用幾個手型來控制播放器。
Flutter軟件的工作機(jī)制
二維手勢識別
二維手勢識別,仍不含深度信息,停留在二維的層面上。這種技術(shù)比起二維手型識別來說稍復(fù)雜一些,不僅可以識別手型,還可以識別一些簡單的二維手勢動作,比如對著攝像頭揮揮手。
二維手勢識別擁有了動態(tài)的特征,可以追蹤手勢的運(yùn)動,進(jìn)而識別將手勢和手部運(yùn)動結(jié)合在一起的復(fù)雜動作。這種技術(shù)雖然在硬件要求上和二維手型識別并無區(qū)別,但是得益于更加先進(jìn)的計算機(jī)視覺算法,可以獲得更加豐富的人機(jī)交互內(nèi)容。在使用體驗上也提高了一個檔次,從純粹的狀態(tài)控制,變成了比較豐富的平面控制。
其代表公司是來自以色列的PointGrab,EyeSight和ExtremeReality。
PointGrab公司手勢識別軟件的智能家居
三維手勢識別
相比較二維手勢識別,三維手勢識別增加了一個Z軸的信息,它可以識別各種手型、手勢和動作。這種包含一定深度信息的手勢識別,需要特別的硬件來實現(xiàn)。常見的有通過傳感器和光學(xué)攝像頭來完成。
目前主要有3種硬件實現(xiàn)方式,加上先進(jìn)的計算機(jī)視覺軟件算法就可以實現(xiàn)三維手勢識別了。
結(jié)構(gòu)光(Structure Light)
這種技術(shù)的基本原理是,通過激光的折射以及算法計算出物體的位置和深度信息,進(jìn)而復(fù)原整個三維空間。不過由于依賴折射光的落點位移來計算位置,這種技術(shù)不能計算出 的深度信息,對識別的距離也有嚴(yán)格的要求。
結(jié)構(gòu)光測量原理
以PrimeSense的Kinect一代的結(jié)構(gòu)光技術(shù)為例,在太近的距離上,折射導(dǎo)致的位移尚不明顯,使用該技術(shù)就不能太 的計算出深度信息,所以1米到4米是其 應(yīng)用范圍。
光飛時間(Time of Flight)
光飛時間的原理在于:加載一個發(fā)光元件,通過CMOS傳感器來捕捉計算光子的飛行時間,根據(jù)光子飛行時間推算出光子飛行的距離,也就得到了物體的深度信息。就計算上而言,光飛時間是三維手勢識別中最簡單的,不需要任何計算機(jī)視覺方面的計算。
光飛時間測距方法
SoftKinetic公司為Intel提供帶手勢識別功能的三維攝像頭。同時,這一硬件技術(shù)也是微軟新一代Kinect所使用的。
Intel實感攝像頭可識別三維手勢
多角成像(Multi-camera)
該技術(shù)使用兩個或者兩個以上的攝像頭同時采集圖像,通過比對這些不同攝像頭在同一時刻獲得的圖像的差別,使用算法來計算深度信息,從而多角三維成像。
基于雙攝像頭的手勢識別
多角成像是三維手勢識別技術(shù)中硬件要求 ,但也是最難實現(xiàn)的。多角成像不需要任何額外的特殊設(shè)備,完全依賴于計算機(jī)視覺算法來匹配兩張圖片里的相同目標(biāo)。相比于結(jié)構(gòu)光或者光飛時間這兩種技術(shù)成本高、功耗大的缺點,多角成像能提供“價廉物美”的三維手勢識別效果。
該技術(shù)的代表產(chǎn)品是Leap Motion公司的同名產(chǎn)品和Usens公司的Fingo。
手勢識別作為人機(jī)交互的重要組成部分起著至關(guān)重要的作用。目前手勢識別仍有一系列問題,如受復(fù)雜環(huán)境因素制約等,亟待解決。相信隨著計算視覺技術(shù)的全面發(fā)展,手勢識別必然向更自然和靈活的方向發(fā)展,未來的人機(jī)交互也將更加自然、更加融合。
投稿郵箱:chuanbeiol@163.com 詳情請訪問川北在線:http://dstuf.com/