高速手勢識別系統(tǒng)解決方案
4.2.3手勢識別模塊
手勢研究分為手勢合成和手勢識別。手勢識別技術(shù)分為基于數(shù)據(jù)手套和基于計算機(jī)視覺兩大類。本文針對基于視覺的手勢識別技術(shù),手勢是人手或者手和臂結(jié)合所產(chǎn)生的各種姿勢和動作,它包括靜態(tài)手勢(指姿態(tài),單個手形)和動態(tài)手勢(指動作,由一系列姿態(tài)組成)。靜態(tài)手勢對應(yīng)空間里的一個點(diǎn),而動態(tài)手勢對應(yīng)著模型參數(shù)空間里的一條軌跡,需要使用隨時間變化的空間特征來表述。
本文提出了單目視覺技術(shù)中一種復(fù)雜背景下的手勢分割和識別方法。首先把運(yùn)動著的手從復(fù)雜的背景中分割出來,然后提取運(yùn)動和形狀特征參數(shù),建立手勢的時空表觀模型,采用獨(dú)立分布的多狀態(tài)高斯概率模型進(jìn)行時間規(guī)整,最后得到識別結(jié)果,如圖2。
手勢分割
手勢分割(Gesture Segmentation)是基于計算機(jī)視覺的,是指如何把手勢從手圖像中分離出來。在復(fù)雜背景情況下,手勢分割困難重重,還沒有成熟的理論作為指導(dǎo),現(xiàn)有的算法計算度高,效果也不理想。主要有以下幾種:(a)增加限制的方法,如使用黑色和白色的墻壁,深色的服裝等簡化背景,或者要求人手戴特殊的手套等強(qiáng)調(diào)前景,來簡化手勢區(qū)域與背景區(qū)域的劃分。(b)大容量手勢形狀數(shù)據(jù)庫方法,如密西根州立大學(xué)計算機(jī)系的CuiYuntao建立了一個數(shù)據(jù)庫,其中有各種手勢類在各個時刻不同位置不同比例的手型圖像,作為基于模板匹配識別方法的模板。(c)立體視覺的方法,如紐約哥倫比亞大學(xué)計算機(jī)系的Gluckman利用兩個不在同一平面鏡子的反射圖像,計算物體與攝像機(jī)之間的距離,根據(jù)距離信息分割出人手。
手部區(qū)域中,膚色概率高于一定閾值的像素用一種符號標(biāo)記,其他像素用另一種符號標(biāo)記。這樣,就可以得到一張關(guān)于手部區(qū)域的二值圖。在二值圖中,手連通區(qū)域里經(jīng)常會包含一些由于圖像噪音引起的空洞。需要對二值圖逐步求精。在此系統(tǒng)中,采用了形學(xué)分析中的小結(jié)構(gòu)閉運(yùn)算算子對分割圖進(jìn)行處理。通過區(qū)域合并與標(biāo)號的算法,可以計算出手部區(qū)域二值圖中的連通區(qū)域,選取面積最大的區(qū)域作為人手區(qū)域,就得到了平滑后的手部區(qū)域二值圖,進(jìn)而提取手勢輪廓。如圖3。
②手勢模型
手勢模型對于手勢識別系統(tǒng)至關(guān)重要,特別是對確定識別范圍起關(guān)鍵性作用。模型的選取根本上取決于具體應(yīng)用,如果要實現(xiàn)自然的人機(jī)交互,那么必須建立一個精細(xì)有效的手勢模型,使得識別系統(tǒng)能夠?qū)τ脩羲龅慕^大多數(shù)手勢做出正確的反應(yīng)。目前,幾乎所有的手勢建模方法都可以歸結(jié)為兩大類:基于表觀的手勢建模和基于3D模型的手勢建模?;?D模型的手勢建模方法考慮了手勢產(chǎn)生的中間媒體(手和臂),遵循的建模過程:首先給手(和臂)的運(yùn)動以及姿態(tài)建模,然后從運(yùn)動和姿態(tài)模型參數(shù)估計手勢模型參數(shù)。
③手勢分析
手勢分析階段的任務(wù)就是估計選定的手勢模型的參數(shù)。一般由特征檢測和參數(shù)估計組成。在特征檢測過程中,首先必須定位做手勢的主體(人手)。定位技術(shù)有:?、挥陬伾ㄎ?利用限制性背景或者顏色手套。、基于運(yùn)動的定位:這種定位技術(shù)通常跟某些假設(shè)一起使用。例如假設(shè)通常情況下只有一個人在做手勢,并且手勢者相對于背景的運(yùn)動量很小。?、挥诙嗄J蕉ㄎ?例如利用運(yùn)動和顏色信息的融合定位人手,優(yōu)點(diǎn)是能克服單個線索定位的局限。
④手勢識別
現(xiàn)有的動態(tài)手勢識別技術(shù)可以分歸三類:基于隱馬爾可夫模型(Hidden Markov Models, HMM)的識別,基于動態(tài)時間規(guī)整(Dynamic Time Warping, DTW)的識別,基于壓縮時間軸的識別。我們采取隱馬爾可夫模型來識別手勢,通過幾率的形式來對手勢特征建立相應(yīng)的模型,從而達(dá)到手勢識別的目的。
5可行性分析
5.1手勢識別算法
就目前情況來說,目前手勢識別算法已經(jīng)相當(dāng)成熟。通常手勢識別算法分為兩大模塊,即預(yù)處理模塊和識別模塊。
在預(yù)處理階段,主要是對圖像進(jìn)行銳化處理、與背景分離以及消除噪聲等操作。其中,銳化處理的目的是突出手勢圖像的邊緣輪廓,為此,我們采用拉普拉斯銳化算法:
這里的fxy和f*xy分別為處理前后對應(yīng)的像素分布。
此外,我們分別采用二值化處理和閾值面積消影法來圖像進(jìn)行分離和消除噪聲。
在識別階段,主要包括邊界特征值的提取和手勢的最終識別。對手部進(jìn)行特征提取時,我們選用六個自由度,即(x1,x2,x3,x4,x5,x6)。其中,x1:手指個數(shù);x2:指定手指;x3:指間距離集合
x4:指定手指關(guān)節(jié);x5:指定手指指根;x6:特定手勢的檢測。
對于最終的手勢識別,我們采用結(jié)構(gòu)分類的算法,對不同的手勢特征建立相應(yīng)的數(shù)據(jù)庫,其流程如下圖:
Spartan-6提供了大量的邏輯資源,有高達(dá)14.7萬個邏輯單元,可通過對FPGA的編程實現(xiàn)更多的功能, 多重高效率集成模塊,可以在FPGA中通過編程實現(xiàn)微處理器、存儲管理、RAM管理、總線管理等模塊的構(gòu)建。
優(yōu)化 I/O 標(biāo)準(zhǔn)選擇,具有多電壓、多標(biāo)準(zhǔn) SelectIO? 接口 bank,每對差分 I/O 的數(shù)據(jù)傳輸速率均高達(dá) 1,080Mb/s,可選輸出驅(qū)動器,每個引腳的電流最高達(dá) 24mA,兼容 3.3V ~ 1.2V I/O 標(biāo)準(zhǔn)和協(xié)議, 符合熱插拔規(guī)范可調(diào) I/O 轉(zhuǎn)換速率,提高信號完整性;內(nèi)置高速 GTP 串行收發(fā)器,最高速度達(dá) 3.2Gb/s,支持高速接口,包括:串行 ATA、Aurora、1G 以太網(wǎng)、PCI,能夠充分滿足我們所要求的高速數(shù)據(jù)交換的要求。
Spartan-6 FPGA擁有定制低功耗專用的 DSP48A1 Slice,可進(jìn)行高性能算術(shù)與信號處理,每個 DSP48A1 Slice 都由專用的 18 x 18 位二進(jìn)制補(bǔ)碼乘法器和 48 位累加器組成,二者均可在最高 390MHz 的速率下運(yùn)行。DSP48A1 Slice 可提供廣泛而豐富的流水線和擴(kuò)展功能,能夠為眾多應(yīng)用提升速度與效率,甚至超越數(shù)字信號處理的范疇,比如寬動態(tài)總線移位器、存儲器地址生成器、寬總線多路 復(fù)用器以及存儲器映射的 I/O 寄存器文件等。此外,累加器還可用作同步向上/向下計數(shù)器。乘法器能夠執(zhí)行桶形移位。這樣的優(yōu)點(diǎn)可以加以利用,能完成大量數(shù)據(jù)的處理,實現(xiàn)圖像處理與分 析,目標(biāo)抓取,進(jìn)而對手勢進(jìn)行識別。
基于算法和硬件兩方面的考慮,我們?nèi)蝿?wù)的核心內(nèi)容就是使這些算法在 FPGA平臺上得以實現(xiàn)。從上述分析可以看出,現(xiàn)在手勢識別算法已日趨完善,加之有Spartan-6這種高性能的FPGA芯片,我們不僅有理由相信,而 且有能力達(dá)到預(yù)期的設(shè)計目標(biāo)。除此之外,我們在日后的設(shè)計中會力求更優(yōu)算法,同時使設(shè)計電路更加合理化,以便使我們設(shè)計的手勢識別系統(tǒng)不斷提高精度和速 度。
評論