摘 要:為了實現圖片操作命令的手勢輸入,設計了圖片操作的手勢動態識別系統。系統以ARM(S3C6410)為硬件處理核心,利用數字圖像處理和嵌入式視覺技術,由攝像頭捕捉幀圖像,經OpenCV技術處理識別后,發出相應命令,操作顯示屏上的圖片,實現了對圖片非接觸式的縮放和切換操作等功能。進行實驗測試,取得了良好的效果,所提出的設計思想為手語輸入、機器人視覺輸入的方案設計提供了參考。
關鍵詞:手勢識別; 圖片操作; ARM; OpenCV; QT/E
中圖分類號:TN91934; TP391.4 文獻標識碼:A 文章編號:1004373X(2012)22000403
數字圖像處理技術是將獲得的低質量圖像利用計算機處理成更適合人眼觀察或儀器檢測的圖像的技術[1]。嵌入式視覺技術是使用攝像機和計算機代替人眼對目標進行識別、跟蹤和測量的技術[2]。因此。數字圖像處理技術和嵌入式視覺技術被廣泛地應用在基于圖像的識別控制系統中[38]。
當前人機交互的主要信息輸入方式有鍵盤輸入、鼠標輸入、觸摸屏輸入、語音輸入、視覺輸入。對于鼠標、鍵盤和觸屏輸入方式,信息輸入者需要接觸輸入設備,而語音輸入和視覺輸入不需要接觸輸入設備。語音輸入對特定語音識別率較高,非特定語音輸入識別率低,因此語音輸入普適性差;基于視覺的輸入通過攝像頭捕捉手部運動,將手語轉換成對應的命令,實現手勢輸入,這就可以讓人擺脫人機交互時接觸的限制。本文介紹了一種基于ARM的操作圖片的手勢動態識別系統,利用數字圖像處理技術和嵌入式視覺技術,通過攝像頭捕捉手勢動態來操作顯示屏上的圖片,實現以非接觸的方式對圖片進行放大、縮小、切換等操作。
1 系統硬件架構
如圖1 所示,手勢動態識別的硬件系統主要由ARM S3C6410處理器、USB攝像頭、USB 控制器、LCD控制器、存儲器控制器等組成。系統由攝像頭獲取手勢動態的圖片,經過S3C6410處理判斷操作者意圖,對顯示屏的圖片進行操作。
圖1 手勢動態識別系統結構框圖S3C6410處理器的部分硬件特性如下:采用ARM1176JZFS核,包含16 KB的指令數據CACHE和16 KB的指令數據TCM,主頻最高可達667 MHz;支持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的數據進行硬件翻轉。
2 系統軟件設計
系統軟件架構主要由Linux操作系統,OpenCV,QT/E構成。Linux操作系統負責整個系統資源的分配和管理;OpenCV及QT/E完成圖像采集、圖像處理、動作識別、圖像顯示等功能[911]。軟件架構如圖2所示。
2.1 實現原理
本系統以幀差法為基礎,通過記錄兩幀中人手的坐標信息或者面積信息,判斷人手的運動軌跡來操作顯示屏上的圖片。
以顯示屏的左上角為坐標原點建立平面直角坐標系如圖3所示。當人手進入攝像頭捕捉區域后,攝像頭對人手進行2次拍照,S3C6410對獲取圖像進行預處理,并獲取人手圖片的數據信息,將次時刻的圖片數據與前一時刻的圖片數據進行相應的運算處理,即可判斷人手的運動方向,確定操作者的意圖,從而操作顯示屏上的圖片[67]。
本系統設置兩種圖片操作模式:切換和縮放。當處于切換模式時,根據圖片中人手在前后兩幀圖片的中位置坐標A0和A1,確定人手的左右運動方向,實現圖片的左或右切換,如圖4所示。當處于縮放模式時,根據圖片中人手在前后兩幀圖片的中的面積S0和S1,確定人手的前后運動方向,實現圖片的放大或縮小,如圖5,圖6所示。
圖6 縮小圖片運動示意圖2.2 軟件流程圖
操作圖片的手勢動態識別系統程序設計基于嵌入式C語言,采用模塊化結構,由主程序、圖像采集子程序、圖像預處理子程序、圖像識別子程序、圖片操作子程序等組成的。主程序流程圖如圖7所示。
主要測試設備包括USB攝像頭、S3C6410平臺、320×240 TFT屏,測試結果如圖8,圖9所示。測試結果表明:在攝像頭視野內,若人手從左向右劃過,則TFT顯示屏上的圖片從左向右滑動切換至前一張圖片;若人手從右到左劃過,則TFT顯示屏上的圖片從右向從滑動切換至下一張圖片。若人手靠近攝像頭,則TFT顯示屏上的圖片放大一定倍數;若人手遠離攝像頭,則TFT顯示屏上的圖片縮小一定倍數。
4 結 語
本文介紹了基于ARM芯片S3C6410的手勢動態操作圖片的識別系統,通過手勢對圖片進行切換與縮放操作,實現了非接觸式的人機交互。本系統利用QT/E開發的人機界面美觀,應用開源的OpenCV提供的各種視覺、圖像處理算法,提高圖片處理的效率。本文提出的手勢輸入系統,可以讓用戶擺脫鼠標、鍵盤輸入的空間限制,利用“手語”“隔空”控制。本系統可以方便地移植到可用手勢控制的系統,比如醫生進出醫院手術室的大門控制系統,另外本文的設計思想在聾啞人手語輸入、機器人視覺輸入等方面具有良好的應用前景和很大的實用價值。
參 考 文 獻
[1] 王曉雪,蘇杏麗.數字圖像處理在車牌識別中的應用[J].自動化儀表,2010,31(7):2225.
[2] 王思華,劉崇春,陳立峰,等.計算機視覺新技術及其在IC標記質量檢驗中的應用[J].電子技術應用,2000,26(9):2527.
[3] 陳文廣,董士海,岳瑋寧,等.手持移動計算中的人機交互技術研究[J].計算機應用,2010,25(10):22192223.
[4] 王國建,陶霖密.支持隱式人機交互的分布式視覺系統[J].中國圖象圖形學報,2010,15(8):11331138.
[5] 李文昊.基于SPCA563B 芯片的圖像識別系統設計[J].單片機與嵌入式系統應用,2006(8):4043.
[6] 魏志蓮,汪劍鳴,竇汝振,等.一種新的室內機器人手勢指令識別系統[J].天津工業大學學報,2010,29(1):7276.
[7] 孔曉明,陳一民,陳養彬,等.基于視覺的手勢動態識別[J].計算機工程與設計,2005,26(11):29342936.
[8] 章磊,李耀,劉光徽.基于機器視覺的煙支檢測系統的設計[J].電子技術應用,2012,38(5):1518.
[9] 歐文盛.ARM嵌入式Linux應用實例開發[M].北京:中國電力出版社,2008.
[10] 賀翔,孟小華.嵌入式智能家居終端人機界面設計與實現[J].計算機工程與設計,2010,31(10):21662168.
[11] BRADSKI G,KAEHLER A.學習OpenCV(中文版)\[M\].北京:清華大學出版社,2009.
[12] 王燕,曹銀杰,郎豐法,等.基于Emgu CV的數字相機圖像采集\[J\].電子科技,2012(4):3132.
作者簡介: 陳守滿 男,1968年出生,陜西安康人,教授。主要研究方向為嵌入式系統及應用。
朱 偉 男,1991年出生,四川瀘州人。主要從事嵌入式應用開發方面的研究。