国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Kinect的虛擬鼠標(biāo)系統(tǒng)研究

2016-11-03 08:34陳璽銘
中國新通信 2016年19期
關(guān)鍵詞:人機交互

陳璽銘

【摘要】 隨著科技的進步,傳統(tǒng)GUI人機交互技術(shù)已經(jīng)無法滿足日所有用戶的需求,隨之而來的NUI人機交互將引領(lǐng)一場新的人機交互革命。本文主要介紹了新一代Kinect的特點和優(yōu)勢,以及在此基礎(chǔ)上如何實現(xiàn)虛擬鼠標(biāo)應(yīng)用并完成與計算機的交互。

【關(guān)鍵詞】 人機交互 kinect 模擬鼠標(biāo)

一、引言

計算機交互界面的發(fā)展從起初不得不遷就效率而是使用的命令行式的機器語言,到微軟公司創(chuàng)建的圖形化用戶界面GUI(Graphical User Interface),科技的進步把我們從枯燥繁瑣的機器語言中解放了出來,鼠標(biāo)和鍵盤成了后來幾十年間人們再也熟悉不過的交互設(shè)備,不難看出在人類與計算機溝通方式的變革中,技術(shù)正逐步幫助人類取得“優(yōu)勢”地位。隨著2010年微軟發(fā)布的Kinect,標(biāo)志著電腦適應(yīng)人類、用戶主導(dǎo)交互的NUI(Natural user interface)交互時代的開始。

二、Kinect v2.0簡介

2014年,微軟發(fā)布了KinectV2,第二代Kinect從硬件上對做了很大改進。感應(yīng)器具備了更高的分辨率和色彩識別度,使識別更加精準(zhǔn),為開發(fā)者制作更精良的畫面提供了良好支持。KinectV2擁有“三只眼睛”和“四只耳朵”?!叭谎劬Α狈謩e是彩色攝像頭(RGB Camera);位于彩色攝像頭右側(cè)的深度傳感器(Depth Sensor)以及位于面板中央的紅外發(fā)射器(IR Emitters); “四只耳朵”則是四元線性麥克風(fēng)陣列,聲音從4個麥克風(fēng)采集,內(nèi)置數(shù)字信號處理器DSP等組件,同時過濾背景噪聲,可定位聲源方向。

三、基于Kinect的虛擬鼠標(biāo)控制系統(tǒng)的設(shè)計

3.1系統(tǒng)運行設(shè)計

本應(yīng)用程序使用 Kinect for Windows SDK 2.0配合C#語言進行開發(fā),這個新的開發(fā)包提供了多種接口,簡化了開發(fā)過程。整個程序的運行過程主要分為以下幾個部分:

(1)初始化并接收數(shù)據(jù)

初始化Kinect到接收數(shù)據(jù)幀其實是Kinect完成數(shù)據(jù)引用的過程大致是source -> reader->frame -> data,其中一種數(shù)據(jù)源(source)可以有多種閱讀器(reader) ,而這里我們用到的就是BodyFrameSource這個源。關(guān)鍵代碼如下:

(2)注冊幀到達事件

Kinect以每秒接收30幀的速度進行來進行人體和規(guī)定動作的識別,因此對于是否識別到人體以及后續(xù)的動作捕捉來說注冊幀到達事件是前提,具體實現(xiàn)如下:

新的SDK提供了新的三種手勢狀態(tài)接口分別是Open , Closed , Lasso三種手勢狀態(tài),利用這三種狀態(tài),可以設(shè)置對應(yīng)的鼠標(biāo)事件:HandState.Open- MouseLeftUp(鼠標(biāo)移動),HandState.Closed- MouseLefDown(左鍵按下),HandState. Lasso- MouseRightDown(右鍵按下)

其中對應(yīng)的鼠標(biāo)響應(yīng)事件我們需要用到位于user32.dll這個庫文件里面的mouse_event函數(shù),所以只需在程序之前先聲明引用即可。

3.2 Kinect與計算機之間坐標(biāo)系的轉(zhuǎn)換

在程序?qū)嶋H運行的過程中,直接利用kinect得到的用戶手部坐標(biāo)往往無法很好的模擬鼠標(biāo)的移動, 而模擬鼠標(biāo)移動的原理是使用Kinect 捕捉用戶左手或者右手的空間坐標(biāo),之后再將獲得坐標(biāo)的XY 平面坐標(biāo)部分映射為屏幕坐標(biāo)。但是由于鼠標(biāo)移動的絕對坐標(biāo)系和屏幕坐標(biāo)系又不完全移植,鼠標(biāo)絕對坐標(biāo)系的X 軸、Y 軸的點坐標(biāo)為Int 型,值范圍是(0~65535),因此中間還需要做一次轉(zhuǎn)換,如圖1所示。

關(guān)于坐標(biāo)轉(zhuǎn)換的核心代碼如下:

四、結(jié)束語

本文利用Kinect的特性追蹤人體的特定部位,運用空間坐標(biāo)到平面坐標(biāo)之前的轉(zhuǎn)換完成了模擬計算機鼠標(biāo)移動的功能,又利用了新一代SDK提供的手勢狀態(tài)接口模擬了鼠標(biāo)的點擊,完成了虛擬“空氣鼠標(biāo)”的程序開發(fā)?;贙inect的虛擬鼠標(biāo)的交互可以運用到教育、娛樂等多個領(lǐng)域中去,它的應(yīng)用前景將會越來越廣。就像微軟公司著名的發(fā)明家Alex kipman所說的那樣,Kinect的誕生或?qū)⒊蔀橄乱淮藱C交互的革命的原點。

參 考 文 獻

[1] 邵浩,侯文利. Kinect用于其他應(yīng)用時坐標(biāo)系轉(zhuǎn)換問題研究 [J].現(xiàn)代計算機(專業(yè)版).2014(2):40-42.

[2] 張詩潮,錢冬明. 體感技術(shù)現(xiàn)狀和發(fā)展研究[J].華東師范大學(xué)學(xué)報(自然科學(xué) 版).2014.2:40-42.

[3] 余濤.kinect開發(fā)實戰(zhàn):用最自然的方式與及其對話[M].北京:機械工業(yè)出版社,2012:21-23.

[4] 王森.kinect體感程序設(shè)計入門:使用C#和C++[M].北京:科學(xué)出版社,2014:164-167.

猜你喜歡
人機交互
某型柴油機虛擬維修系統(tǒng)研究
基于虛擬現(xiàn)實技術(shù)的九江城市交通事故模擬系統(tǒng)設(shè)計
人機交互課程創(chuàng)新實驗
基于任務(wù)規(guī)劃的家庭仿真服務(wù)機器人的研究
多點噪聲遠(yuǎn)程自動采集系統(tǒng)設(shè)計
基于智能手機的盲人語言應(yīng)用軟件的設(shè)計與開發(fā)
基于Intel Realsense技術(shù)的感知展示系統(tǒng)的設(shè)計與開發(fā)
圖像處理耦合模板定位的答題卡識別研究與應(yīng)用
數(shù)字化控制系統(tǒng)人機交互的特征及預(yù)防人因失誤策略
基于物聯(lián)網(wǎng)家居安防系統(tǒng)的設(shè)計