【導讀】智能手勢識別輸入系統分為兩種形式,一種是手持端即手勢數據采集模塊,一種是主機端即數據接收處理模塊。這兩種形式都是通過(guò)無(wú)線(xiàn)方式連接,區別在于手持端佩戴在手指上對手勢數據進(jìn)行采集,主機端則與PC機接口,能夠接受手勢數據并智能處理。
Smartmouse智能手勢輸入裝置,可準確識別人的各種手勢并依據手勢流暢的進(jìn)行如移動(dòng)鼠標、左鍵、右鍵、刪除、確定、取消、移動(dòng)文件等等相應操作。信號采集端可實(shí)時(shí)完整的采集人手部動(dòng)作的信息,經(jīng)整理后以相應的數據格式通過(guò)2.4G無(wú)線(xiàn)頻段傳輸給PC或接收機上的主機端;主機端可在無(wú)需任何驅動(dòng)程序的前提下將自身例化為USB接口形式的鼠標鍵盤(pán)復合設備;接收數據后,對數據進(jìn)行智能化處理,識別出手勢所表達的意義,同時(shí)將相應操作反饋給PC或接收機。對手勢的識別率應達到消費類(lèi)電子的水平。

圖1 系統原理框圖
1 系統功能實(shí)現原理
Smartmouse智能輸入系統采用加速度傳感器對使用者的手部動(dòng)作數據進(jìn)行采集和初步識別,結合無(wú)線(xiàn)通信和USB接口技術(shù),通過(guò)自創(chuàng )的簡(jiǎn)單且智能的手勢識別處理算法,將得到的手部動(dòng)作信息通過(guò)USB接口傳輸給PC或接收機,使用戶(hù)能夠以更符合肢體動(dòng)作習慣的方式對PC進(jìn)行控制,給用戶(hù)帶來(lái)全新的操作體驗。
Smartmouse智能輸入系統硬件結構框圖如下圖2所示。

圖2 系統硬件結構框圖
(1)手勢數據采集
Smartmouse智能手勢輸入系統的手持端需對使用者手部動(dòng)作數據進(jìn)行連續且準確的采樣,并將采集到的手部動(dòng)作數據通過(guò)無(wú)線(xiàn)形式傳輸給連接在PC機USB接口上的主機端。本系統采用美新公司生產(chǎn)的雙軸MEMS加速度傳感器芯片MXC6202xMP作為主要的手勢動(dòng)作感知器件,在正確感知手部動(dòng)作數據的同時(shí),達到低功耗、高精度的要求。
(2)數據接收與處理
連接在PC機USB口上的主機端,即數據接收與處理模塊,將自身例化為PC機的鼠標和鍵盤(pán)復合設備,同時(shí)將通過(guò)無(wú)線(xiàn)方式接收到的手勢數據通過(guò)識別算法進(jìn)行智能處理,將處理后的結果以鼠標鍵盤(pán)操作數據的形式傳輸給PC機。數據接收與處理模塊與PC機的連接過(guò)程無(wú)需安裝任何驅動(dòng),可實(shí)現即插即用。對手勢數據的識別率能夠滿(mǎn)足消費類(lèi)電子要求。本系統中以AVR單片機為核心處理單元,負責將設備按照USB協(xié)議枚舉為USB復合設備,管理無(wú)線(xiàn)收發(fā)模塊,并通過(guò)無(wú)線(xiàn)模塊對手持端進(jìn)行管理,同時(shí)將接收到的手勢數據通過(guò)自創(chuàng )的手勢識別算法進(jìn)行分析,將結果發(fā)送給主機端。
(3)數據的傳輸
采集的手勢數據的傳輸采用當前在消費類(lèi)電子產(chǎn)品領(lǐng)域應用比較廣泛的2.4G頻段,在保證帶寬的前提下準確傳輸數據和控制信息,同時(shí)可實(shí)現設備休眠等降低功耗的操作。
(4)主機端與PC接口
主機端即手勢數據處理模塊通過(guò)USB接口與PC機進(jìn)行連接,將自身例化為PC機的鍵盤(pán)鼠標復合設備,在不需要任何驅動(dòng)的前提下實(shí)現即插即用。
(5)電源供給
手持端采用微型鋰電池作為電源,體積較小并可進(jìn)行重復充電與使用。同時(shí)通過(guò)休眠、停機等操作降低系統功耗。
主機端通過(guò)主機USB接口供電,在長(cháng)時(shí)間不使用情況下可進(jìn)行休眠操作。
(6)智能識別率
Smartmouse智能手勢輸入系統需要流暢的對PC機進(jìn)行操作,對手勢的識別率有較高要求,同時(shí)能對現今比較流行的演示軟件進(jìn)行復雜操作。本設計中通過(guò)32位AVR單片機對接收到的手勢數據進(jìn)行處理,結合本團隊自創(chuàng )的手勢識別算法,識別出手勢具有的意義。
[page]
2 硬件平臺選用及資源配置
由于本系統所包含的模塊眾多、算法復雜,同時(shí)對功耗、穩定性又有很高要求,所以在平臺的選擇時(shí)分兩個(gè)步驟進(jìn)行:
功能實(shí)現階段,主要為完善手勢識別算法、USB接口協(xié)議、無(wú)線(xiàn)通訊協(xié)議等。各個(gè)部分均使用現成模塊。無(wú)線(xiàn)收發(fā)部分采用TI公司生產(chǎn)的eZ430無(wú)線(xiàn)收發(fā)模塊;算法硬件實(shí)現和USB接口等的管理采用Atmel公司提供的EVK1100開(kāi)發(fā)板。
作品完善階段,在實(shí)現手勢識別算法、USB接口協(xié)議、無(wú)線(xiàn)通訊協(xié)議等的基礎上,使用Atmel公司的生產(chǎn)的ATXMEGA32D4單片機和無(wú)線(xiàn)收發(fā)芯片AT86RF212自制手持端;采用AT32UC3L064單片機和無(wú)線(xiàn)收發(fā)芯片AT86RF212實(shí)現主機端的數據接收、手勢識別算法和USB接口管理。
3 系統程序架構
本系統中,軟件設計主要分為手勢數據采集、無(wú)線(xiàn)通訊協(xié)議、手勢數據識別算法和USB接口協(xié)議幾部分。
手勢數據采集:在主機端的控制下對手勢數據進(jìn)行采集并按一定的格式打包準備進(jìn)行傳輸;
無(wú)線(xiàn)通訊協(xié)議:管理手持端與主機端之間的連接和數據傳輸;
手勢識別算法:為本系統中的算法核心,采用一種自創(chuàng )的基于加速度傳感器數據的智能識別算法,對手勢數據進(jìn)行處理,得出手勢所具有的意義;
USB接口協(xié)議:管理主機端與PC或接收機之間的連接,將主機端枚舉為電腦的鼠標鍵盤(pán)復合設備,實(shí)現在無(wú)驅動(dòng)條件下的即插即用。
4 系統程序流程
本系統中程序主要分為手持端程序和主機端程序,程序流程圖如下圖3所示。

圖3 程序運行流程圖
5 系統預計實(shí)現結果
借助Atmel提供的EVK1100系列開(kāi)發(fā)板和TieZ430無(wú)線(xiàn)模塊實(shí)現樣機一套,實(shí)現鼠標所有功能,并能對簡(jiǎn)單的瀏覽軟件進(jìn)行控制,同時(shí)達到識別準確率90%以上。自制產(chǎn)品初級模型一套,實(shí)現鼠標所有功能,同時(shí)具有“空中畫(huà)筆”功能,能對簡(jiǎn)單的瀏覽軟件進(jìn)行流暢的控制,達到準確識別90%以上。
相關(guān)閱讀:
在阻性觸摸屏上實(shí)現手勢識別
用加速度傳感器來(lái)進(jìn)行手勢識別器的設計
還不知道正確的數據采集模式?你OUT了!