999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Leap Motion體感控制器及其在飛機結構展示系統中的應用

2016-05-09 07:07:40李秋雨
計算機應用與軟件 2016年4期
關鍵詞:飛機結構系統

劉 春 李秋雨

Leap Motion體感控制器及其在飛機結構展示系統中的應用

劉 春 李秋雨

(沈陽航空航天大學航空制造工藝數字化國防重點學科實驗室 遼寧 沈陽 110136)

由于現有的展示系統主要是依靠傳統的鼠標和鍵盤實現控制,在人機交互和效率上存在很大的問題。針對這種情況,提出采用Leap Motion體感控制器代替傳統鼠標鍵盤的程序控制方法。采用Leap公司的Leap Motion作為傳感器,建立不依賴于傳統手持設備的手勢交互飛機結構展示系統。通過手勢變換和手勢識別實現飛機結構的放大、縮小、平移和旋轉等基本功能。應用實例表明,Leap Motion體感控制器是一種非常直觀、自然、有效的人機交互設備,可以廣泛應用于人機交互領域。

Leap Motion體感控制器 手勢識別 飛機結構 手勢變換 展示系統

ShenyangAerospaceUniversity,Shenyang110136,Liaoning,China)

0 引 言

本文介紹了美國Leap公司的Leap Motion體感控制器及其應用。Leap Motion體感控制器是面向PC以及Mac計算機的體感控制器制造公司Leap旗下的體感控制產品,于2013年2月27日發布[1]。傳統的鼠標和鍵盤經常受到連接線和硬件設備的約束,在使用中不直觀,比較麻煩。通常情況下,鼠標和鍵盤對二維對象操作還可以,但對于三維對象的操作就比較復雜[2]。而Leap Motion體感控制器的特點是允許用自然手勢控制電腦程序,可以擺脫傳統鼠標和鍵盤的控制方式。它利用富有表現力的手勢,使人從硬件設備的束縛中解脫出來,通過采集用戶手勢在空間運動數據,利用我們熟悉的手勢動作,可以自然地操作三維對象。Leap Motion體感控制器在精度、效率和可移植性方面也有重大突破。如Leap Motion體感控制器可達到Kinect等其他體感產品精度的200倍,甚至能捕捉到每個手指在0.01 mm之內的運動,而延時僅為5~10 ms,使用體驗非常流暢[3];其可以同時追蹤多個目標,并且一般只需占用CPU的2%性能,不會影響智能設備性能;其通過USB接口能夠和傳統的電子設備完美交融,非常易于嵌入到臺式電腦、筆記本、超級本,以及智能電視等電子產品中[4]。其在教育、醫學以及游戲等很多需要人機交互的領域開始應用,取得非常直觀的人機交互效果。例如,谷歌地圖開始支持Leap Motion體感控制器,用戶不需要鼠標和觸屏,運用各種手勢來操作和控制3D地圖、實現導航功能[5]。Leap Motion體感控制器支持Windows 7、Windows 8以及Mac OS X 10.7及10.8。

本文介紹Leap Motion體感控制器的工作原理與功能,研究Leap Motion體感控制器的應用。通過飛機結構三維展示系統實例,將展示利用Leap Motion體感控制器采集簡單手勢并控制應用程序的方法及步驟,使用戶擺脫常規的鼠標和鍵盤程序控制方式而更加直觀、自然地控制應用程序。

1 Leap Motion體感控制器原理及功能

Leap Motion體感控制器外部由一個殼體和一個指示燈構成。內部是由兩片窄帶濾光片、兩個中低像素的攝像頭、3個紅外LED燈,以及USB高速芯片組成,如圖1所示[6]。

圖1 Leap Motion體感控制器組成圖

Leap Motion體感控制器的主要工作原理是通過兩個攝像頭模擬人眼捕捉經過紅外LED 燈照亮的手部影像,利用雙攝像頭畫面建立手的三維模型并分析手勢的變化。當手進入設備的視野識別區時,內置的兩個攝像頭就開始同時捕捉目標,實時地計算捕捉到的目標的視差,這樣就可以獲得目標的空間信息。這里所說的目標特指已經過濾后,如掌心、指尖這樣的目標信息。通過LED燈的照明,加強了目標與背景的亮度對比,可以更加方便地識別目標。但是,在室外或者是紅外光較強的地方,控制器則不能正常使用。機體內內置的通信芯片采用標準USB 傳輸技術,將采集的圖像信息數字化,轉化的數據傳輸到電腦內,電腦經過圖像識別和運算還原手勢變化并將手部動作反饋至桌面應用程序實現手勢的直接控制[7]。Leap Motion體感控制器的優點在于可以對目標實現更精確的跟蹤。圖2為計算機手勢識別處理圖。

圖2 計算機手勢識別處理

與Leap Motion體感控制器連接的計算機內部的后置處理軟件可以捕捉分析設備可視范圍內的手勢,可以識別手及手指個數、指尖的位置、指尖的方向、手和手指的運動趨勢[7]。手勢的識別還包括:如畫圈,揮動,屏幕點擊,鍵盤點擊,以及手掌平面及四指方向的識別等。圖3為Leap Motion體感控制器能夠識別的常用手勢。該設備具有高精度和高跟蹤幀率,可工作范圍大約在設備前方的從25到600毫米。Leap Motion體感控制器系統采用右手笛卡爾坐標系,返回的數值以毫米為單位。使用Leap Motion體感控制器時首先要進行Windows系統或Mac的環境變量的配置,然后將設備用數據線與電腦相連,將其擺放在電腦屏幕的正前方,指示燈朝外。當Leap Motion體感控制器SDK應用程序運行時,它會在Windows的任務欄或者Mac的搜索欄中顯示一個圖標提示。當設備插入并且成功運行后,圖標變成綠色。軟件初始化時會閃黃光,而在錯誤發生時會變成紅色[8]。

圖3 Leap Motion對手勢的識別

2 Leap Motion體感控制器開發包介紹

安裝完Leap Motion體感控制器的SDK后,將生成編程所必須的文件,包括兩個頭文件:leap.h 和leapMath.h,一個動態鏈接庫leap.dll和一個leap.lib庫文件[5]。對于不同的編程語言,提供了相應的幫助文檔和例子程序供用戶使用。在Leap Motion體感控制器應用程序開發時,需要把上述文件關聯到項目中。下面介紹Leap Motion體感控制器SDK開發包的使用[9]。

在Leap Motion體感控制器應用程序中需要創建監聽器和控制器對象,并采集手勢數據供應用程序使用。下面介紹控制器的Controller類和監聽器Listener類以及一些輔助類,包括Frame類、HandList類、Hand類和FingerList類[10]。

Controller類是控制器類,在Leap Motion體感控制器和應用程序之間提供了主要的接口。Controller類圖如圖4所示。

圖4 Controller類圖

addListener函數用于把監聽器對象與控制器對象相關聯,并把該監聽器對象加入到監聽器對象列表里。控制器對象為與其關聯的監聽器對象分配Leap Motion體感控制器事件。監聽器的回調函數是按任意順序調用的。

enableGesture函數用來開啟或禁止特定的手勢,默認情況下所有的手勢都是被禁止的,只有當控制器對象調用enableGesture函數將某個特定的手勢開啟時,這個手勢才能在應用中使用。

frame函數用于返回Leap Motion體感控制器軟件獲得的追蹤數據幀。使用可選的歷史參數指定要檢索的幀。如通過frame(0)或frame()獲取當前幀,frame(1)獲取前一幀等。

removeListener函數用于從監聽器列表里移除一個接收Leap Motion體感控制器事件的監聽器。當監聽器的生存周期結束時,必須調用此函數移除監聽器。

Listener類是監聽器類,定義了一系列回調函數,用來響應Controller對象分配的事件。為了處理Leap Motion體感控制器事件,創建一個Listener類對象,并與Controller類對象相關聯。當一個事件發生時,控制器通過傳遞自身的引用調用監聽器相關回調函數處理Leap Motion體感控制器事件。Listener類圖如圖5所示。

圖5 Listener類圖

onInit函數用于控制器對象與監聽器對象關聯完成后,初始化控制器對象。onConnect函數用于連接控制器與Leap Motion體感控制器軟件。onDisconnect函數用于使控制器與Leap Motion體感控制器軟件斷開連接。onExit函數用于使監聽器與控制器分離。onFrame函數用于獲取最新的運動跟蹤幀數據,在onFrame函數里可以通過調用函數Controller::frame()來獲得對應的數據,其中函數的返回值就是最新的Frame對象(Controller對象的引用被作為參數傳給了回調函數)。

Frame類代表了在一幀中檢測到的一組手和手指的追蹤數據。該類中有一個返回值為HandList的hands函數,該函數返回了手的對象列表,該列表包含了在當前幀中檢測到的所有手對象。

HandList類代表了手的對象列表。里面包含兩個重要函數:Hand leftmost()const和Hand rightmost()const。這兩個函數可以獲得左右手。Hand類反映了識別的手的物理特性。在Hand類里可以調用fingers函數返回一個手指列表,該列表包含了識別到的這只手的所有手指對象。利用count()函數獲得手指個數。

3 Leap Motion體感控制器在飛機結構展示系統中的應用

本文利用Leap Motion體感控制器實現了一個飛機結構展示系統程序的控制,通過手勢動作可以實現飛機結構模型的平移、旋轉、放大和縮小。

3.1 飛機結構展示系統的組成及工作流程

基于現有的飛機結構整體模型,結合Leap Motion體感控制器開發了一套投影展示系統。系統硬件主要包括Leap Motion體感控制器、PC機、投影儀、投影幕。Leap Motion體感控制器作為用戶的交互界面,獲取用戶的手勢信息,計算機識別用戶的輸入,并且對數據進行處理,最終飛機結構的視頻信號輸出到投影儀設備。

飛機結構展示系統運行后,首先對系統初始化,接著Leap Motion體感設備開始采集手勢,電腦程序處理采集到的手勢,并把結果交由顯示程序。工作流程如圖6所示。

圖6 飛機結構展示系統工作流程圖

3.2 飛機結構展示程序及控制方法

本文的飛機結構展示系統是在Visual Studio 2010的環境下開發的。飛機模型通過catia創建,然后通過3dmax存為fbx文件導入到OSG中。程序中創建了飛機類Aircraft,通過其方法界面Display(int)實現了飛機3D模型的渲染。Aircraft類圖如圖7所示。

圖7 Aircraft類

Init函數用于初始化變量,設置必要的參數,如屏幕大小等,實例化圖形設備對象。LoadModel函數用于加載程序需要的所有圖形或其他內容的地方,包括圖像、模型、聲音等。Display函數是顯示函數,用于顯示3D模型,包括對模型放大、縮小、平移、旋轉等操作。Close函數用于退出程序。

本文的飛機結構系統的控制部分以單手控制模式實現。通過對右手手勢的識別判定實現展示飛機結構的功能。具體手勢控制功能如下:

(1) 程序開始:Leap Motion體感控制器檢測到一只握拳的手,如圖3(a)。接著,展示系統開始激活。

(2) 平移:Leap Motion體感控制器檢測到一個手指時,如圖3(b)。手指上下左右平移,飛機模型隨著做相應的平移運動,如圖8(a)所示。

(3) 放大:Leap Motion體感控制器檢測到兩個手指,如圖3(c)。同時手指朝著屏幕的方向移動,模型放大,如圖8(b)所示。

(4) 縮小:Leap Motion體感控制器檢測到兩個手指,如圖3(c)。同時手指背離屏幕方向運動,模型縮小,如圖8(c)所示。

(5) 旋轉:Leap Motion體感控制器檢測到五個手指,如圖3(f)。手繞x、y、z三個軸轉動時,模型實現相應的旋轉,如圖8(d)、(e)、(f)所示。

(6) 程序結束:Leap Motion體感控制器檢測到三個手指時,如圖3(d)所示,程序結束。

圖8 手勢控制的飛機結構展示系統

4 結 語

本文實現了Leap Motion體感控制器在飛機結構展示系統中的應用。通過Leap Motion體感控制器對手勢的識別,實現了飛機3D模型的平移、旋轉、放大,以及縮小等演示操作,從而擺脫了傳統的鼠標和鍵盤控制方式,降低了人機交互操作的復雜程度,使人機交互更自然和高效,增強了沉浸感。應用實例表明,Leap Motion體感控制器是一種非常直觀、有效的人機交互技術,可以廣泛應用于人機交互領域。

[1] Frank Weichert,Daniel Bachmann,Bartholom?us Rudak,et al.Analysis of the accuracy and robustness of the Leap Motion Controller[J].Sensors,2013(13):6380-6393.

[2] 鮑峰,盧稼奇,黎楚秦.基于Kinect的人機交互演示系統[J].計算機與現代化,2013(10):46-50.

[3] 胡穎群.基于kinect體感識別技術的研究與實現[J].信息技術,2013,42(7):18-20.

[4] 廖宏建,曲哲.基于Kinect體感交互技術的虛擬裝配實驗系統開發[J].實驗技術與管理,2013,30(7):98-102.

[5] Khoshelham K,Elberink S O.Accuracy and resolution of kinect depth data for indoor mapping applications[J].Sensors,2012(12):1437-1454.

[6] 陳靜.基于kinect的手勢識別技術及其在教學中的應用[D].上海:上海交通大學,2013.

[7] Sturman M M,Vaillancourt D E,Corcos D.Effects of aging on the regularity of physiological tremor[J].Neurophysiol,2005,93(6):3064-3074.

[8] 羅元,謝彧,張毅.基于kinect傳感器的智能輪椅手勢控制系統的設計與實現[J].機器人,2012,34(1):110-119.

[9] 蕭鳴.Leap Motion開發系列—win32應用的環境配置[EB/OL].(2013-11-2).[2014-3-10].http://blog.csdn.net/guoming0000/article/details/10197267.

[10] leap motion. Hello World[EB/OL].[2014-3-25].https://developer.leapmotion.com/documentation/cpp/devguide/Sample_Tutorial.html.

LEAP MOTION SOMATOSENSORY CONTROLLER AND ITS APPLICATION IN AIRCRAFT STRUCTURE DISPLAY SYSTEM

Liu Chun Li Qiuyu

(KeyLaboratoryFundamentalScienceforNationalDefenceofAeronauticalDigitalManufacturingProcess,

Existing display system is mainly relying on conventional mouse and keyboard to achieve control, so there are quite big problems in human-computer interaction and efficiency. In view of this situation, we put forward a program control method which uses Leap Motion somatosensory controller to replace traditional method of program control with mouse and keyboard. By using Leap Motion innovated by Leap as the sensor, we established the gesture interactive aircraft structure display system without depending on traditional handheld device. Through gestures transform and gesture recognition the method achieves the basic functions including zooming, rotation and translation of aircraft structure. Application examples show that Leap Motion somatosensory controller is a very intuitive, natural and effective human-computer interaction device, it can be widely used in the field of human computer interaction.

Leap Motion somatosensory controller Gesture recognition Aircraft structure Gesture transform Display system

2014-08-24。遼寧省自然科學基金項目(2010276)。劉春,教授,主研領域:數字化制造,虛擬現實仿真,面向對象編程。李秋雨,碩士生。

TP3

A

10.3969/j.issn.1000-386x.2016.04.053

猜你喜歡
飛機結構系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
飛機失蹤
環球時報(2022-05-30)2022-05-30 15:16:57
《形而上學》△卷的結構和位置
哲學評論(2021年2期)2021-08-22 01:53:34
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
論結構
中華詩詞(2019年7期)2019-11-25 01:43:04
“拼座飛機”迎風飛揚
當代陜西(2019年11期)2019-06-24 03:40:28
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
乘坐飛機
論《日出》的結構
主站蜘蛛池模板: 国产国模一区二区三区四区| 中文字幕人妻av一区二区| 99这里只有精品6| 国内熟女少妇一线天| 99久久无色码中文字幕| 国产人成乱码视频免费观看| 最新精品国偷自产在线| 91精品国产自产在线观看| 99久久人妻精品免费二区| 丁香亚洲综合五月天婷婷| 毛片网站在线看| 999精品免费视频| 国产精品手机在线观看你懂的| 久久中文字幕2021精品| 国产一国产一有一级毛片视频| 国产成年无码AⅤ片在线| 欧美人人干| 久久午夜夜伦鲁鲁片无码免费| 亚洲第一视频网站| 毛片在线看网站| 国产另类乱子伦精品免费女| 97在线国产视频| 欧美精品H在线播放| 中文字幕中文字字幕码一二区| 91精品国产91欠久久久久| 免费在线不卡视频| 亚洲一区二区黄色| 日本欧美在线观看| 不卡视频国产| 99re这里只有国产中文精品国产精品 | 国产自在线播放| 亚洲成a∧人片在线观看无码| 中文字幕 91| 国产va在线观看| 久久青草免费91观看| 国产不卡国语在线| 97在线碰| 亚洲无码视频喷水| 欧美日韩国产在线播放| 国产成人禁片在线观看| 黄色一级视频欧美| 欧美.成人.综合在线| 国内熟女少妇一线天| 国产一区二区三区夜色| 狠狠色综合久久狠狠色综合| 欧美精品成人| 国产9191精品免费观看| 72种姿势欧美久久久大黄蕉| 99在线观看免费视频| 国产男人天堂| 91视频日本| 特级aaaaaaaaa毛片免费视频 | 亚洲伦理一区二区| 亚洲一区二区三区麻豆| 国产一级毛片yw| 久久精品中文无码资源站| 日韩成人午夜| 亚洲人成网站在线观看播放不卡| 扒开粉嫩的小缝隙喷白浆视频| 免费看a级毛片| 亚洲男人天堂久久| 国产在线观看精品| 日韩午夜伦| 日韩精品免费一线在线观看| 国产第四页| 免费不卡在线观看av| 99视频在线免费观看| 国产精品夜夜嗨视频免费视频 | 色婷婷在线播放| 国产在线高清一级毛片| 无码乱人伦一区二区亚洲一| 国产成人在线无码免费视频| 国产精品亚洲一区二区三区在线观看| 欧美成人影院亚洲综合图| 亚洲国产天堂久久综合| 色老二精品视频在线观看| 国内精品视频在线| 亚洲天堂网在线观看视频| 欧美有码在线观看| 欧美亚洲一二三区| 中文无码毛片又爽又刺激| 亚洲天堂啪啪|