圖片操作的手勢動態(tài)識別系統(tǒng)
摘要:為了實現(xiàn)圖片操作命令的手勢輸入,設(shè)計了圖片操作的手勞動態(tài)識別系統(tǒng)。系統(tǒng)以ARM(S3C6410)為硬件處理核心,利用數(shù)字圖像處理和嵌入式視覺技術(shù),由攝像頭捕捉幀圖像,經(jīng)OpenCV技術(shù)處理識別后,發(fā)出相應命令,操作顯示屏上的圖片,實現(xiàn)了對圖片非接觸式的縮放和切換操作等功能。進行實驗測試,取得了良好的效果,所提出的設(shè)計思想為手語輸入、機器人視覺輸入的方案設(shè)計提供了參考。
關(guān)鍵詞:手勢識別,圖片操作;ARM;OpenCV;QT/E
0 引言
數(shù)字圖像處理技術(shù)是將獲得的低質(zhì)量圖像利用計算機處理成更適合人眼觀察或儀器檢測的圖像的技術(shù)。嵌入式視覺技術(shù)是使用攝像機和計算機代替人眼對目標進行識別,跟蹤和測量的技術(shù)。因此。數(shù)字圖像處理技術(shù)和嵌入式視覺技術(shù)被廣泛地應用在基于圖像的識別控制系統(tǒng)中。
當前人機交互的主要信息輸入方式有鍵盤輸入、鼠標輸入、觸摸屏輸入,語音輸入、視覺輸入。對于鼠標、鍵盤和觸屏輸入方式,信息輸入者需要接觸輸入設(shè)備,而語音輸入和視覺輸入不需要接觸輸入設(shè)備。語音輸入對特定語音識別率較高,非特定語音輸入識別率低,因此語音輸入普適性差;基于視覺的輸入通過攝像頭捕捉手部運動,將手語轉(zhuǎn)換成對應的命令,實現(xiàn)手勢輸入,這就可以讓人擺脫人機交互時接觸的限制。本文介紹了一種基于ARM的操作圖片的手勢動態(tài)識別系統(tǒng),利用數(shù)字圖像處理技術(shù)和嵌入式視覺技術(shù),通過攝像頭捕捉手勢動態(tài)來操作顯示屏上的圖片,實現(xiàn)以非接觸的方式對圖片進行放大、縮小、切換等操作。
1 系統(tǒng)硬件架構(gòu)
如圖1所示,手勢動態(tài)識別的硬件系統(tǒng)主要由ARM S3C6410處理器、USB攝像頭、USB控制器、LCD控制器、存儲器控制器等組成。系統(tǒng)由攝像頭獲取手勢動態(tài)的圖片,經(jīng)過S3C6410處理判斷操作者意圖,對顯示屏的圖片進行操作。
S3C6410處理器的部分硬件特性如下:采用ARM1176JZF-S核,包含16 KB的指令數(shù)據(jù)CACHE和16KB的指令數(shù)據(jù)TCM,主頻最高可達667MHz;
支持TFT 24 b LCD屏,分辨率能支持到1 024×1 024;獨立的USB Host控制器,支持USB Host 1.1;支持(Mobile)SDRAM和(Mobile)DDR SDRAM;具有圖像處理模塊;支持JPEG編解碼功能,最大尺寸為4 096×4 096;支持對YUV420/422和RGB565/888的數(shù)據(jù)進行硬件翻轉(zhuǎn)。
2 系統(tǒng)軟件設(shè)計
系統(tǒng)軟件架構(gòu)主要由Linux操作系統(tǒng),OpenCV,QT/E構(gòu)成。Linux操作系統(tǒng)負責整個系統(tǒng)資源的分配和管理;OpenCV及QT/E完成圖像采集、圖像處理、動作識別、圖像顯示等功能。軟件架構(gòu)如圖2所示。
2.1 實現(xiàn)原理
本系統(tǒng)以幀差法為基礎(chǔ),通過記錄兩幀中人手的坐標信息或者面積信息,判斷人手的運動軌跡來操作顯示屏上的圖片。
以顯示屏的左上角為坐標原點建立平面直角坐標系如圖3所示。當人手進入攝像頭捕捉區(qū)域后,攝像頭對人手進行2次拍照,S3C6410對獲取圖像進行預處理,并獲取人手圖片的數(shù)據(jù)信息,將次時刻的圖片數(shù)據(jù)與前一時刻的圖片數(shù)據(jù)進行相應的運算處理,即可判斷人手的運動方向,確定操作者的意圖,從而操作顯示屏上的圖片。
[!--empirenews.page--]
本系統(tǒng)設(shè)置兩種圖片操作模式:切換和縮放。當處于切換模式時,根據(jù)圖片中人手在前后兩幀圖片的中位置坐標A0和A1,確定人手的左右運動方向,實現(xiàn)圖片的左或右切換,如圖4所示。當處于縮放模式時,根據(jù)圖片中人手在前后兩幀圖片的中的面積S0和S1,確定人手的前后運動方向,實現(xiàn)圖片的放大或縮小,如圖5,圖6所示。
2.2 軟件流程圖
操作圖片的手勢動態(tài)識別系統(tǒng)程序設(shè)計基于嵌入式C語言,采用模塊化結(jié)構(gòu),由主程序、圖像采集子程序、圖像預處理子程序、圖像識別子程序、圖片操作子程序等組成的。主程序流程圖如圖7所示。
3 測試結(jié)果
主要測試設(shè)備包括USB攝像頭、S3C6410平臺、320×240 TFT屏,測試結(jié)果如圖8,圖9所示。測試結(jié)果表明:在攝像頭視野內(nèi),若人手從左向右劃過,則TFT顯示屏上的圖片從左向右滑動切換至前一張圖片;若人手從右到左劃過,則TFT顯示屏上的圖片從右向從滑動切換至下一張圖片。若人手靠近攝像頭,則TFT顯示屏上的圖片放大一定倍數(shù);若人手遠離攝像頭,則TFT顯示屏上的圖片縮小一定倍數(shù)。
4 結(jié)語
本文介紹了基于ARM芯片S3C6410的手勢動態(tài)操作圖片的識別系統(tǒng),通過手勢對圖片進行切換與縮放操作,實現(xiàn)了非接觸式的人機交互。本系統(tǒng)利用QT/E開發(fā)的人機界面美觀,應用開源的OpenCV提供的各種視覺、圖像處理算法,提高圖片處理的效率。本文提出的手勢輸入系統(tǒng),可以讓用戶擺脫鼠標、鍵盤輸入的空間限制,利用“手語”“隔空”控制。本系統(tǒng)可以方便地移植到可用手勢控制的系統(tǒng),比如醫(yī)生進出醫(yī)院手術(shù)室的大門控制系統(tǒng),另外本文的設(shè)計思想在聾啞人手語輸入、機器人視覺輸入等方面具有良好的應用前景和很大的實用價值。