根據第三章所作的手部認知研究及個案分析結果我們可以得到一個簡單的結論,受 測者在實體空間操作滑鼠的時候,會儘量以最小的動作幅度來移動滑鼠,在實際操作虛 擬環境的過程中,受測者會試著用最簡單的方式來直覺的操控虛擬空間中的物件,而手 腕的關節運動則佔了大多數操作滑鼠時的 x 軸向移動,而手指則是佔了大多數操作滑鼠 時的 y 軸向移動。
再經由手部模擬時發現,利用簡單的手腕關節轉動,即可以模擬出滑鼠的二度空間 位移,受測者不需經由太多的思考過程,即可以極直覺的方式利用手部的關節運動輕易 的模仿出滑鼠的位移軌跡。
因此,本章建立一套以紅外線光學感應裝置為基礎,利用手部一些的基本運動方 式,來作為空間直覺輸入 x、y、z 三度空間座標的控制方式,以直覺式操作的輸入方式 為前提,本裝置不需要複雜且不易學習的手勢輸入系統,即可利用手腕關節的轉動以及 手掌的升降動作,達到在虛擬空間中操控 3D 設計物件的目的。
4.1 手部動態輸入系統操作原理
本研究利用手腕關節帶動手掌所產生不同的關節運動變化,以產生不同的空間位置 變化,來作為手部空間訊號輸入的依據,本研究先設計了三種簡單的手部動作,並將手 部的三種運動方式轉為 X、Y、Z 三向的座標系統,如此便可以利用三種不同的手部動 作,來代表三向的空間作標系統,本研究稱之為「手部動態輸入裝置系統」 (hand movement system, HMS)。
經由第三章的滑鼠操作分析研究,可以簡單的歸納幾點發現:
1. 滑鼠的 x 軸向運動,僅由操作滑鼠的橫向運動即可完成。
2. 滑鼠的 y 軸向運動,僅由操作滑鼠的縱向運動即可完成。
Using hand movement system to operate 3D design objects in virtual environment
30
3. 一般所使用之市售滑鼠,如無特殊設定或裝置,無法提供使用者直接作 z 軸之移 動。
歸納以上三點發現,得到幾個簡單的手部應用:
1. 滑鼠的 x 軸向運動,可由手腕關節為中心將手背以自身順逆時鐘方向傾斜 (旋 轉),以達到模擬移動 x 軸 3D 設計物件的目的,並可藉由紅外線來測量手掌轉動 的過程中 x1 與 x2 兩段距離的差異,以作為空間移動位置的參考數據。(圖 4-1.a) 2. 滑鼠的 y 軸向運動,可由手腕關節為中心將手背以自身上下方向傾斜 (旋轉),
以達到模擬移動 y 軸 3D 設計物件的目的,並可藉由紅外線來測量手掌轉動的過 程中 y1 與 y2 兩段距離的差異,以作為空間移動位置的參考數據。(圖 4-1.b) 3. 滑鼠的 z 軸向運動,可藉由將整個手掌作上下移動的動作,以達到模擬移動 z
軸 3D 設計物件的目的,並可藉由紅外線來測量手掌升降的過程中 z 1 與 z 2 兩段 距離的差異,以作為空間移動位置的參考數據。(圖 4-1.c)
圖 4-1 a. 利用手臂轉動手掌運動取得 x 軸座標;b. 利用手腕轉動手掌運動取得 y 軸座標;c. 利用 手掌升降運動取得 z 軸座標
Using hand movement system to operate 3D design objects in virtual environment
31
因此,本研究利用紅外線感應器 ( Sharp GP2D12 Distance Measuring Sensor) 準確的 測距特性,將紅外線測距光束對準在手掌的三個部位,分別為 A、B、C 三點 (圖 4-2),
如此即可將手部的動態軸向,對照成 A、B、C 三點的感應距離,並轉換成位移距離 A = x、B = y、C =z ,並用 Sharp GP2D12 Distance Measuring Sensor 取得距離數據參數,再 將此數據參數轉換成 x、y、z 的空間座標系統,以操控虛擬空間中的 3D 設計物件。
圖 4-2 手部的三種運動方式轉為 X、Y、Z 三向座標,並將紅外線測距光束分別照在手掌的三個部位
4.2 手部動態輸入系統運作流程
本系統以手部動態為主,將手部之三種動態轉經由紅外線測距裝置,轉換為類比之 電壓訊號,再經由 RS232 將類比電壓訊號傳輸至電腦中,經由程式編碼再轉換為 x、y、
z 三向座標軸系統,藉以操控虛擬環境中的 3D 設計物件,最後,經由使用者的視覺回 饋,再經由使用者的手部動作作直覺的空間操控。
HMS 系統操作流程可分為以下四個部分:
1) 手部實體操控
HMS 系統主要由三個紅外線距離感應器 (sensor A、B、C) 所組成,分別偵測 手部三個不同的位置,因此當手部在空間中產生動作時,三組紅外線感應裝置 會同時感應到因手部運動所產生細微的空間距離差異,然而三組紅外線感應裝 置會將空間中微妙的距離變化同時以類比式電壓訊號的方式傳回控制系統中。
Using hand movement system to operate 3D design objects in virtual environment
32
2) 類比訊號轉數位訊號
當控制系統接收到了三組來自因手部運動所產生的電壓訊號時,控制系統必須 將此三組類比式的電壓訊號轉換成一組單一的數位組合訊號,經由 RS232 回傳 至電腦系統中,因此,電腦系統中會持續的接收到一組包含了 sensor A、sensor B、sensor C 所發出的訊號。
3) 程式編碼與操控物件
然而,收訊端接收到了組合的數位訊號之後,必須將此一訊號解碼,並經由程 式編碼的方式將此一訊號轉換,意即再將此訊號分解為座標軸 x、y、z 三軸向 可用之數位訊號,並能使之對應 sensor A = 座標軸 x、sensor B = 座標軸 y 與 sensor C = 座標軸 z。因此即能藉由 3D 設計軟體,將此三組訊號分別控制虛擬 環境中 3D 設計物件的 x、y、z 三個自由度的空間操控。
4) 使用者直覺式回饋
最後,當使用者經由螢幕或是虛擬實境的設備觀看虛擬環境中 3D 設計物件 時,使用者即可直覺的以視覺經由手部動作,修正並操控虛擬環境中的 3D 設 計物件。此一動作為一循環的操控模式。
以上即為手部動態輸入系統運作之流程,其系統運作流程如圖 4-3。
Using hand movement system to operate 3D design objects in virtual environment
33
圖 4-3 手勢動態輸入系統運作流程圖
4.3 手部動態輸入系統組成
本研究的主要裝置分為以下四個重要部份,分別為測量手部空間位置的紅外線感測 裝置陣列組、處理類比電壓訊號轉換成數位訊號的 iRX 電路板、數位訊號編碼並轉換為 空間操控座標以及整合 3D 模型與操控,其主要系統架構如下(圖 4-4)。
Using hand movement system to operate 3D design objects in virtual environment
34
圖 4-4 手勢動態輸入系統架構圖
硬體組成部分:
SPECTEC CL50 筆記型電腦,CPU 型號及效能:Intel centrino 1600 MHz,實體記 憶體:512MB,顯示卡:ATI Mobility Radeon 9000 128MB,螢幕顯示:1152 X 864 全彩 32 位元,螢幕更新頻率:60 Hz,螢幕大小與比例:15.1 吋、4:3。
滑鼠:Acer MP0930 400 dpi
Sharp GP2D120 Distance Measuring Sensor 感應器三組 iRX 電路板 ( MIT Media Lab)
Microchip PIC16F84A 可程式化晶片 ( Microchip Technologies, Inc.) RS232 傳輸線:USB to Serial (DB9) Cable
AC 變壓器:9V 1A
Using hand movement system to operate 3D design objects in virtual environment
35
軟體組成部分:
作業系統:Windows XP SP1 編碼程式:MPLAB IDE v7.01 程式語言:C、C++、VB、Lingo 3D 軟體:3ds max 6.0
操作軟體:Director 8.5
4.3.1 紅外線感應陣列裝置
Sharp GP2D120 Distance Measuring Sensor 感應器為 Sharp 公司所生產之紅外線近距離 感應裝置,Sharp GP2D120 距離感應器常用作為設計機器人行走時測量距離或防止碰撞 的感應裝置,售價約為 10 美元,價格低廉,有效偵測距離約為 4 ~ 30 cm。Sharp GP2D120 距離感應器為本研究之主要感應裝置,最大可輸出 +7V 之電壓,但實際輸出電壓約為 +0.4V ~ +3.1V 之間,當感測物件距離約為 4 ~ 30 cm 時電壓約呈現+0.4V ~ +3.1V 的反比 曲線,但如果距離不足 4 cm 時電壓會急速下滑 (圖 4-5),最大功能限制如表 4-1。