【導讀】智能手勢識別輸入系統分為兩種形式,一種是手持端即手勢數據采集模塊,一種是主機端即數據接收處理模塊。這兩種形式都是通過無線方式連接,區別在于手持端佩戴在手指上對手勢數據進行采集,主機端則與PC機接口,能夠接受手勢數據并智能處理。
Smartmouse智能手勢輸入裝置,可準確識別人的各種手勢并依據手勢流暢的進行如移動鼠標、左鍵、右鍵、刪除、確定、取消、移動文件等等相應操作。信號采集端可實時完整的采集人手部動作的信息,經整理后以相應的數據格式通過2.4G無線頻段傳輸給PC或接收機上的主機端;主機端可在無需任何驅動程序的前提下將自身例化為USB接口形式的鼠標鍵盤復合設備;接收數據后,對數據進行智能化處理,識別出手勢所表達的意義,同時將相應操作反饋給PC或接收機。對手勢的識別率應達到消費類電子的水平。
圖1 系統原理框圖
1 系統功能實現原理
Smartmouse智能輸入系統采用加速度傳感器對使用者的手部動作數據進行采集和初步識別,結合無線通信和USB接口技術,通過自創的簡單且智能的手勢識別處理算法,將得到的手部動作信息通過USB接口傳輸給PC或接收機,使用戶能夠以更符合肢體動作習慣的方式對PC進行控制,給用戶帶來全新的操作體驗。
Smartmouse智能輸入系統硬件結構框圖如下圖2所示。
圖2 系統硬件結構框圖
(1)手勢數據采集
Smartmouse智能手勢輸入系統的手持端需對使用者手部動作數據進行連續且準確的采樣,并將采集到的手部動作數據通過無線形式傳輸給連接在PC機USB接口上的主機端。本系統采用美新公司生產的雙軸MEMS加速度傳感器芯片MXC6202xMP作為主要的手勢動作感知器件,在正確感知手部動作數據的同時,達到低功耗、高精度的要求。
(2)數據接收與處理
連接在PC機USB口上的主機端,即數據接收與處理模塊,將自身例化為PC機的鼠標和鍵盤復合設備,同時將通過無線方式接收到的手勢數據通過識別算法進行智能處理,將處理后的結果以鼠標鍵盤操作數據的形式傳輸給PC機。數據接收與處理模塊與PC機的連接過程無需安裝任何驅動,可實現即插即用。對手勢數據的識別率能夠滿足消費類電子要求。本系統中以AVR單片機為核心處理單元,負責將設備按照USB協議枚舉為USB復合設備,管理無線收發模塊,并通過無線模塊對手持端進行管理,同時將接收到的手勢數據通過自創的手勢識別算法進行分析,將結果發送給主機端。
(3)數據的傳輸
采集的手勢數據的傳輸采用當前在消費類電子產品領域應用比較廣泛的2.4G頻段,在保證帶寬的前提下準確傳輸數據和控制信息,同時可實現設備休眠等降低功耗的操作。
(4)主機端與PC接口
主機端即手勢數據處理模塊通過USB接口與PC機進行連接,將自身例化為PC機的鍵盤鼠標復合設備,在不需要任何驅動的前提下實現即插即用。
(5)電源供給
手持端采用微型鋰電池作為電源,體積較小并可進行重復充電與使用。同時通過休眠、停機等操作降低系統功耗。
主機端通過主機USB接口供電,在長時間不使用情況下可進行休眠操作。
(6)智能識別率
Smartmouse智能手勢輸入系統需要流暢的對PC機進行操作,對手勢的識別率有較高要求,同時能對現今比較流行的演示軟件進行復雜操作。本設計中通過32位AVR單片機對接收到的手勢數據進行處理,結合本團隊自創的手勢識別算法,識別出手勢具有的意義。
[page]
2 硬件平臺選用及資源配置
由于本系統所包含的模塊眾多、算法復雜,同時對功耗、穩定性又有很高要求,所以在平臺的選擇時分兩個步驟進行:
功能實現階段,主要為完善手勢識別算法、USB接口協議、無線通訊協議等。各個部分均使用現成模塊。無線收發部分采用TI公司生產的eZ430無線收發模塊;算法硬件實現和USB接口等的管理采用Atmel公司提供的EVK1100開發板。
作品完善階段,在實現手勢識別算法、USB接口協議、無線通訊協議等的基礎上,使用Atmel公司的生產的ATXMEGA32D4單片機和無線收發芯片AT86RF212自制手持端;采用AT32UC3L064單片機和無線收發芯片AT86RF212實現主機端的數據接收、手勢識別算法和USB接口管理。
3 系統程序架構
本系統中,軟件設計主要分為手勢數據采集、無線通訊協議、手勢數據識別算法和USB接口協議幾部分。
手勢數據采集:在主機端的控制下對手勢數據進行采集并按一定的格式打包準備進行傳輸;
無線通訊協議:管理手持端與主機端之間的連接和數據傳輸;
手勢識別算法:為本系統中的算法核心,采用一種自創的基于加速度傳感器數據的智能識別算法,對手勢數據進行處理,得出手勢所具有的意義;
USB接口協議:管理主機端與PC或接收機之間的連接,將主機端枚舉為電腦的鼠標鍵盤復合設備,實現在無驅動條件下的即插即用。
4 系統程序流程
本系統中程序主要分為手持端程序和主機端程序,程序流程圖如下圖3所示。
圖3 程序運行流程圖
5 系統預計實現結果
借助Atmel提供的EVK1100系列開發板和TieZ430無線模塊實現樣機一套,實現鼠標所有功能,并能對簡單的瀏覽軟件進行控制,同時達到識別準確率90%以上。自制產品初級模型一套,實現鼠標所有功能,同時具有“空中畫筆”功能,能對簡單的瀏覽軟件進行流暢的控制,達到準確識別90%以上。
相關閱讀:
在阻性觸摸屏上實現手勢識別
用加速度傳感器來進行手勢識別器的設計
還不知道正確的數據采集模式?你OUT了!