房漢雄,穆偉斌,齊 跡,何 鵬
(1.齊齊哈爾大學 通信與電子工程學院,黑龍江 齊齊哈爾 161006;2.齊齊哈爾醫學院 醫學技術學院,黑龍江 齊齊哈爾 161006)
隨著技術的發展,IT產業迎來蓬勃生機,智能手機、平板電腦、上網本、智能電視、車載娛樂系統等各種移動終端[1]層出不窮;Adriod、Qt、Opencv等軟件開發商更是紛紛將源碼開放,這其中最為突出的就是諾基亞和因特爾聯合推出的基于Linux的操作系統Meego。Meego是源碼開放的易于使用的開發環境,適用于簡易臺式機、手持計算和通信設備、車載信息娛樂設備、上網電視、多媒體電話[2]。Meego的架構決定了它比Adriod具有更廣闊的發展空間。
目前學生就業壓力非常大,為學生提供更加切合市場需要的實驗環境,使他們掌握急需的技能是高校的發展趨勢。結合市場需要,我們設計了一款移動終端實驗教學平臺,該平臺以先進的Meego為操作系統,通過與上位機進行通信,學生可以編寫、實驗各種可以在移動終端中開發的軟件,為就業打下良好的基礎。
該實驗平臺包括:EMB-5872主板、仿真器、視頻設備、液晶顯示屏、觸摸屏、無線通信設備、藍牙模塊、PC機和系統軟件,如圖1所示。

圖1 實驗平臺結構圖
在本裝置中,主要的電路板選擇華北工控生產的支持+12 V單電源供電、可以工作在0 ℃~60 ℃、5%~95%濕度范圍的嵌入式工業主板EMB-5872 ,該主板以主頻是1.66 GHz的Atom D510為核心、以ICH8M芯片組為輔的高性能工業主板,板上具有豐富的接口,最大可以擴展2 GB的DDR2內存作為數據存儲器;具有一個RJ-45接口,采用RTL8111D芯片,支持千兆以太網通信和網絡喚醒功能;集成的GMA3150控制器支持CRT和LVDS獨立雙顯,顯存為256 MB;1個可編程的輸入輸出接口,可以連接仿真器和PC機進行相應的通信;具有一個標準的3層音頻接口,采用ALC888;8個USB2.0接口,后面板提供一組雙層的標準接口,另外還有3組2×5Pin接口;輸入/輸出接口包括2個COM口(其中一個為支持RS232的標準DB9接口,另一個支持RS232/422/485)、一個LPT接口和一組2層的PS/2鼠標/鍵盤接口;還有2個PCI-E、1個PCIE×4接口、1個PC104接口和 1個MINI-PCIE擴展接口。該主板使用2010年推出的基于Linux平臺的MeeGo操作系統。
本系統采用PAL制式模擬攝像頭,通過視頻解碼芯片TVP5150將采集到的模擬信號轉換成8位BT.656格式的彩色電視數字信號輸出,便于二次開發。
液晶顯示屏選擇17.8 cm(7英寸)的將VDS轉換為TTL的低功耗SVB-LT0701,它還是具有4線電阻的觸摸屏,支持符合RGB888標準的24bitRGB視頻信號輸入。如果在此顯示屏之前添加一個視頻編碼芯片SAA7121[3],則可以將來自于攝像頭的視頻信號直接送到顯示屏中顯示。
無線通信模塊使用濟南有人科技公司的USR-WIFI232-X,該芯支持802.11b/g/n標準、TCP/IP/UDP協議、UART/GPIO/以太網數據通信接口,可以無線工作在STA/AP/AP+STA模式,使用方便,適合模擬手機通信。
藍牙通信模塊使用主從一體貼片式FBT-06,該模塊支持藍牙2.1標準,支持無線遠程AT、IO和ADC,可以主動上報9條指令。
隨著技術的發展,智能手機等移動終端的功能越來越完善,人們對他們的期待和依賴也越來越高。下面以開發以Meego為操作系統的手勢識別[4-5]為例闡述系統的工作流程。首先,在PC機上安裝Meego操作系統,下載并安裝Qt和Opencv環境,編寫程序并調試成功;然后,在實驗平臺上安裝Meego操作系統,移植Opencv和Qt;最后,通過JTAG接口將PC機中調試成功的程序燒寫到實驗平臺上,通過驅動攝像頭獲取手勢圖像,利用燒寫過來的程序進行手勢識別并給出結果。系統架構見圖2。

圖2 系統架構
系統軟件包括操作系統和開發環境,其中操作系統分為兩部分:移動終端即嵌入式板端和PC機端。目前移動終端可使用的系統主要有Meego[6]和Adriod。本平臺選用包含Qt[7]框架的Meego作為操作系統。原因如下:Meego開發平臺運行效率比采用Apache2協議以Java作為基礎的Android平臺高;而且Meego不僅僅可以用于智能手機,還可在比如汽車內置娛樂系統、智能聯網電視、IPTV機頂盒、平板電腦、上網本等領域得到應用,是未來發展的重點[8]。PC機端可以使用Windows或Meego,因為Meego是以Qt為架構的,只要開發環境包含Qt即可。
以奇趣公司的Qt為開發應用平臺,Qt可實現在Windows、Mac和Linux操作系統以及移動設備之間一致的跨平臺用戶體驗[9]。雖然Qt平臺可以很好地與Meego進行對接,但是手勢識別所需要的大量計算機視覺方面的函數在Qt中很難找到,自主研發的工作進度太慢,因而Intel公司的計算機視覺庫Opencv[10]是首選。
由于實驗平臺的存儲空間有限,完全將Opencv移植到其上是不可能的,胡靜波[11]提出的最小裁剪思想比較適用于本系統,其思想是針對于體應用定制的一種最小共享庫的裁剪。Opencv共享庫和可執行文件中都有若干個導出(export)符號和導入符號。首先查找應用程序的導出符號;然后查找提供這些符號的目標模塊并重新連接成最小集的共享庫找到所有的被依賴的目標模塊后,可以用事先保存的連接參數或事先指定的參數將他們重新連接起來,生成尺寸最小的Opencv共享庫,最后移植到目標板上。
下面以1.2節中所舉事例為例說明本實驗裝置的部分功能。
該例中使用Qt的來驅動PC終端的攝像頭,以獲取手勢圖像并轉化成Opencv的數據格式,使用制作Qt圖形用戶界面,再調用Opencv的庫函數實現手勢識別。這里采用Hu矩和SVM分類器的方法實現靜態手勢的識別[12]。首先進行手勢樣本的創建;然后使用Qt驅動攝像頭并生成圖形用戶界面;再進行Hu值的計算,然后對SVM訓練參數進行配置,以便進行樣本識別準確率交叉驗證。利用該系統最終實現的手勢識別如圖3所示。圖中“基于SVM和Hu矩的靜態手勢識別”下方的阿拉伯數字為手勢識別的結果,當前識別的手勢代表數字1。
本實驗平臺[13-15]功能較多,圖像處理功能強大,學生除了可以自主編程實現各種移動共終端的復雜的圖像處理外,還可實現其他各種簡單的實驗。另外,學生還可以自行設計實驗,開展課程設計及創新創業項目等研究,根據需要自行設計外圍電路以完成其他功能。為學生提供了進行工程鍛煉的平臺和發揮主動性的空間,有助于提高學生的學習熱情和積極性。

圖3 手勢識別實驗結果
[1] 黃揚帆,邰國欽,馮俊.基于視頻感知的導盲儀實驗設計與研究[J].實驗技術與管理,2013,30(6):136-139.
[2] 百度百科[EB/OL].[2013-12-25].http://baike.baidu.com/view/3263982.htm.
[3] 將陳銘,史小軍.基于TVP5150的低功耗食品解碼模塊[J].電子工程師,2008,34(4):46-49.
[4] 王守磊,朱民耀,陸小峰,等.一種基于方向直方圖的嵌入式手勢識別系統[J].電視技術,2012,36(15):133-137.
[5] 董立巖,高洋;李永麗,任時鳴.一種基于網格采樣的手勢識別算法[J].吉林大學學報:工學版,2013,43(6):1621-1625.
[6] 韓德強,馮云賀,劉增輝.MeeGo嵌入式操作系統的研究及應用開發[J].電子技術應用,2012,38(10):30-33.
[7] 陳曦,劉增強.基于Qt/Embedded嵌入式控制界面的設計[J].化工自動化及儀表,2011,38(9):1131-1139.
[8] 王牌.基于嵌入式Meego+Tablet下的Email客戶端系統地開發與實現[D].呼和浩特:內蒙古大學,2012:5.
[9] 陳勇,王宏偉.基于Qt/E的智能倉儲管理便攜式終端設計[J].重慶郵電大學學報:自然科學版,2012,24(3):369-374.
[10] 張羽,徐端全.OpenCV分水嶺算法的改進及其在細胞分割中的應用[J].計算機應用,2012,32(增刊1):134-136.
[11] 胡靜波.基于OpenCV的嵌入式視頻監控關鍵技術的研究[D].昆明:云南大學,2010:22.
[12] 章豐明,任彧.基于MEB-SVM的靜態手勢識別研究[J].機電工程,2010,27(6):120-123.
[13] 蔣偉,楊庭庭,劉亞威,等.數字圖像處理研究性實驗教學的改革與實踐[J].實驗技術與管理,2013,30(6):124-128.
[14] 杜剛,鄧明,魏文博.如何更好地利用電類綜合實驗裝置[J].實驗技術與管理,2005,22(3):46-48.
[15] 胡開明,傅志堅,葛遠香.基于OPC與組態技術的自動控制實驗教學仿真平臺開發[J].實驗技術與管理,2013,30(6):50-53.