



摘 要: 針對傳統基于物聯網技術的智能家居系統用戶參與感不強、無法進行自定義手勢操控等問題,設計一套基于Kinect的智能家庭管理系統。通過深度傳感器得到彩色數據流、深度數據流以及骨骼數據流,從而獲取人體的動作軌跡,并自定義手勢操控方式來實現家居的智能控制。由于深度數據對光照和背景干擾等因素有較強的魯棒性,提高了手勢及軌跡識別的準確性和可靠性。在明暗兩種光照條件下,對該文定義的4種手臂姿勢、3種動作任務和5種微小手勢的識別實驗表明,該文設計的系統能夠滿足智能家居的基本需求。
關鍵詞: Kinect; 深度傳感器; 手勢識別; 智能家居系統
中圖分類號: TN915?34; TP391 文獻標識碼: A 文章編號: 1004?373X(2016)18?0149?04
Abstract: Since the traditional smart home system based on Internet of Things technology has the poor user participation, and can’t perform the user?defined gesture control, a smart home management system based on Kinect was designed. The color data flow, depth data flow and skeleton data flow are got by means of the depth transducer, so as to obtain the movement track of human behavior. The gesture control pattern is self?defined to realize the home smart control. The depth data has strong robustness for light and background disturbance, which can improve the accuracy and reliability of gesture and track recognition. The defined four arm gestures, three movement missions and five tiny hand gestures were recognized in the experiments at the bright and dark lighting conditions. The results show that the designed system can satisfy the basic demand of smart home.
Keywords: Kinect; depth sensor; gesture recognition; smart home system
0 引 言
自21世紀初,智能家居在歐美國家發展迅速,而在中國,智能家居尚處于萌芽期,目前仍處于基本模型的探索階段[1]。現有的智能家居系統主要有基于物聯網的智能家居[2?3]和基于移動互聯網的智能家居[4]系統。總的來說,智能家居系統的研究已經有了很多突破性成果,但是還尚未成熟,在基于視覺的人體姿態識別和聲音識別來控制家居系統的正確率方面尚不令人滿意。
Kinect具有感知外界的CMOS紅外傳感器以及可與用戶交流的音頻系統[5]。CMOS紅外傳感器通過黑白光譜的方式來感知世界,并實時再現環境,完成體感識別,使人類擺脫遙控器等常用的控制裝置。音頻系統可以識別人類發出的聲音指令,從而實現對系統的控制。以上兩種方式豐富了智能家居系統信息識別的方式,使得系統更加完善,更加人性化。
基于Kinect在人體姿態識別和聲音識別的出色表現,本文將Kinect應用于智能家居系統,通過Kinect提供的彩色數據流、深度數據流以及骨骼數據流,獲取人體的動作軌跡及手勢,通過程序解算獲得其含義并產生相應的指令,將該指令通過串口傳遞至RZ?51單片機,進而由單片機控制家居系統。本文所設計的系統彌補了傳統的基于可見光圖像處理的方式在手勢識別時易受光照、背景干擾等因素影響的缺陷,提高了手勢及軌跡識別的準確性和可靠性。實驗結果表明,該系統能識別預定的4種手臂姿勢、3種動作任務和5種微小手勢,并能準確遙控家居系統。
1 系統框架設計
本文設計的智能家居系統由人體跟蹤定位模塊、聲音采集處理模塊、計算機編程處理模塊和單片機控制模塊4部分組成,其整體系統設計框架如圖1所示。其中,前兩個模塊由Kinect自帶的CMOS紅外傳感器和音頻系統來完成,并將獲得的信息通過USB接口傳遞給計算機。CMOS紅外傳感器可以對人體的48個部位進行實時追蹤,還可以識別出完整的RGB色彩,用于對采集圖像進行視覺處理[6]。聲音采集處理模塊中的Kinect 陣列技術基于噪聲消除、回波抑制和波束成形技術來屏蔽環境噪聲。在實際開發時,通過處理Kinect 獲取的音頻數據流來記錄語音并監視語音波束角度的變化[5]。
在計算機編程處理模塊對Kinect提供的信息進行處理。對于視覺圖像,可以通過反投影直方圖比對等算法獲得其中蘊含的信息[6]。然后根據這些信息產生相應的指令,利用串口通信方式將信息傳遞至單片機[7]。單片機在接收到指令后,與硬件電路結合產生響應,控制家居設施(如電視機、電風扇、空調等)的工作狀態。比如,電風扇的轉與停,電燈、空調的開與關等。
2 基于Kinect的手勢識別
2.1 手臂姿勢識別
通過Kinect提供的骨骼數據流,可以實時獲取人的骨骼信息,如關節坐標等。設定頭的位置為坐標原點[X0,Y0],左手的坐標為[Xlh,Ylh],分別設定不同手勢下[X0]與[Xlh],[Y0]與[Ylh]之間的坐標差閾值,當實時監測到的手與頭的坐標差達到某一閾值時,即滿足預設手勢要求,給出手勢識別結果。由此可以設定Kinect所識別的人體的48個骨骼節點坐標,來完成對不同手勢以及不同姿勢的識別要求。
2.2 動作捕獲
在實際應用過程中,可以利用Kinect提供的彩色數據流、深度數據流以及骨骼數據流,獲取人體的動作軌跡,對軌跡進行定義,用于給單片機發送相應的指令,控制家居設施的工作狀態。
基于2.1節設定的四個手臂姿勢的判別依據,將動作軌跡規定如下:當識別到一個特定手勢后進入下一個預設的手勢識別,當依次達到所設定手勢后,即完成一次動作任務。
如圖3所示,當識別左手向下45°手勢后,進入左手平放0°手勢識別,之后進行左手向上20°手勢識別,最后到左手向上45°手勢識別,最終完成一個動作捕獲過程,并認定該動作為左手向上45°。類似的,一共定義了左手向上45°動作任務、左手向上24°動作任務和左手平放0°動作任務。
2.3 微小手勢識別
除了定義一個動作任務來完成對家居設施工作狀態的控制外,本文還進一步研究了微小手勢的識別,能夠實現對單手伸出1~5根手指的5種微小手勢進行識別。對彩色數據流進行處理,將圖像從RGB色彩空間轉換到HSV空間,減小環境亮度對識別的影響,然后設定閾值對手掌部分進行二值化篩選。效果如圖4所示。
3 實驗結果與分析
在本文設計的智能家居系統中,人體跟蹤定位模塊中的手勢識別、動作捕獲和微小手勢識別的正確率決定了對家居設施工作狀態的控制正確率。為了測試本文提出的手勢識別、動作捕獲和微小手勢識別方法對光照和復雜背景的魯棒性,實驗在明亮、昏暗兩種光照條件和單一背景(實驗室白墻背景)、復雜背景(真實家居環境下包含不同家具、電器等背景)兩種環境下進行測試,分別測試20個人的4種手臂姿勢、3種動作捕獲任務和5種微小手勢的識別正確率,實驗結果如表1~表4所示。
由表1~表3的實驗結果可知,本文提出的手臂姿勢識別、動作捕獲和微小手勢識別方法對包含不同家具、電器等的復雜背景魯棒性非常強,僅微小手勢中的4根手指和5根手指兩個手勢在復雜背景下識別正確率為90%和95%,其他手勢均為100%。由實驗結果可以看出,目前提出的算法對于復雜背景下的智能家居控制非常有效,能夠準確地控制家居電器的工作狀態。還給出了單一背景視頻下,明亮和昏暗兩種不同的光照下,3類不同姿勢的平均識別結果,如表4所示。由結果可知,由于本文采用深度數據,對光照有著較強的魯棒性,因此不論光照如何變化,都能夠準備識別動作。圖6給出了光照變化下,基于動作任務左手向上45°捕獲識別控制風扇工作狀態的結果。兩種光照下均能正確控制風扇的工作狀態。
4 結 語
本文設計了一種基于Kinect的智能家居系統,詳細介紹了系統的框架與識別方式。不同于其他智能家居系統,本系統將Kinect應用到家居系統中,通過采集人體的彩色數據流、深度數據流以及骨骼數據流,并設計不同的手臂姿勢、動作任務和微小手勢來遙控家電。本文方法由于使用深度數據,彌補了傳統的基于可見光圖像處理的方式在手勢識別時易受光照、背景干擾等因素影響的缺陷,提高了手勢及軌跡識別的準確性和可靠性。經過實驗驗證,在光照變化下均能夠準確操控家居系統。
參考文獻
[1] 申斌,張桂青,汪明,等.基于物聯網的智能家居設計與實現[J].自動化與儀表,2013,28(2):6?10.
[2] 童曉渝,房秉毅,張云勇.物聯網智能家居發展分析[J].移動通信,2010,34(9):16?20.
[3] 蘇本躍,王廣軍,章健.基于物聯網環境下體感交互技術的智能家居系統[J].中南大學學報(自然科學版),2013,44(z1):181?184.
[4] 邵鵬飛,王喆,張寶儒.面向移動互聯網的智能家居系統研究[J].計算機測量與控制,2012,20(2):474?476.
[5] 楊文超,吳亞東,趙思蕊,等.智慧家庭管家設計與實現[J].微型機與應用,2015,34(11):64?68.
[6] 吳文斌,李斌,閻驥洲. Kinect人機交互開發實踐[D].北京:人民郵電出版社,2013.
[7] 鄭方磊,夏春蕾,戴曙光.基于單片機的家庭多功能監控系統的設計[J].信息技術,2014(7):66?69.
[8] 許艷旭,張琦,武霞.基于OpenCV的實時手勢識別算法[J].信息技術,2013(4):99?102.