人臉偵測運用於遊戲動作設計之探討:以迷宮為例 國立臺中技術學 … ·...

16
人臉偵測運用於遊戲動作設計之探討:以迷宮為例 國立臺中技術學院多媒體設計研究所 蔡佳玲 技術日新月異,從搖桿、滑鼠和鍵盤為主的輸入介面,發展出以網路攝影 機作為輸入的工具。而越來越多的互動裝置採用網路攝影機為互動之媒介,因 網路攝影機在取得上容易,又較一般互動裝置之成本低,故本研究採用之。 鑑於以上因素,人臉偵測亦廣泛被運用,本研究採用美國麻省理工學院媒 體實驗室 (MIT Media Lab) 所研發之 Attention Meter 技術來與 Flash 軟體做結合。 使用者能透過網路攝影機偵測臉部移動位置,以達到人機互動上有效的溝通介 面,並應用於互動遊戲中,希望藉以探討人臉偵測技術運用於互動遊戲時,在 動作設計上該如何定義較為適合,及選用適當的 Attention Meter 之參數開發遊 戲,並於後將開發流程模組化,讓此類型互動遊戲的設計人員能易於開發。 關鍵詞:動作編碼、人機介面、互動、網路攝影機、人臉偵測 第一章緒論 本研究使用 Attention Meter 技術,為美國麻省理工學院媒體實驗室 (MIT Media Lab) 所研發,使用的人臉偵測運算法是採用 Intel 所開發的 Intel Open Computer Vision (OpenCV) library OpenCV 是由 Visual C++ 程式撰寫而成的, 利用 OpenCV 的函式庫辨別人臉範圍來做互動,藉以人臉偵測技術與互動元素 做結合引發使用者興趣,使之能在互動過程中得到回饋。 由於 Webcam 有多方用途,加上易於取得且花費成本不高,許多技術皆可 與之結合運用,故選擇 Webcam 為輸入裝置。而在人臉偵測軟體的選擇上,因 Attention Meter 能 與 多 種 軟 體 結 合 使 用,其 中 Adobe Flash 在設計遊戲畫面與程 式設計上都能容易使用,並能與 Attention Meter 做結合,且易於開發介面,加 Attention Meter 提供的參數有十幾種,在設計遊戲操控上提供更多的選擇, 可讓設計人員去選擇最適合的參數作為遊戲設定之參考。 本研究目的為透過以 Attention Meter 進行遊戲設計,去發現何種動作讓使 用者操作時是較為恰當的,接著研發一系統模組及開發流程引導使用者以供使 用,此系統套件主要為整合 Attention Meter Flash ActionScript 之技術,利用 Webcam 為輸入介面,以電腦視覺為設計實驗輔助工具,讓使用者能快速進入 情境中,接續互動裝置之發展趨勢。

Transcript of 人臉偵測運用於遊戲動作設計之探討:以迷宮為例 國立臺中技術學 … ·...

  • 人臉偵測運用於遊戲動作設計之探討:以迷宮為例

    國立臺中技術學院多媒體設計研究所 蔡佳玲

    摘 要

    技術日新月異,從搖桿、滑鼠和鍵盤為主的輸入介面,發展出以網路攝影

    機作為輸入的工具。而越來越多的互動裝置採用網路攝影機為互動之媒介,因

    網路攝影機在取得上容易,又較一般互動裝置之成本低,故本研究採用之。

    鑑於以上因素,人臉偵測亦廣泛被運用,本研究採用美國麻省理工學院媒

    體實驗室 (MIT Media Lab)所研發之 Attention Meter 技術來與 Flash 軟體做結合。

    使用者能透過網路攝影機偵測臉部移動位置,以達到人機互動上有效的溝通介

    面,並應用於互動遊戲中,希望藉以探討人臉偵測技術運用於互動遊戲時,在

    動作設計上該如何定義較為適合,及選用適當的 Attention Meter 之參數開發遊

    戲,並於後將開發流程模組化,讓此類型互動遊戲的設計人員能易於開發。

    關鍵詞:動作編碼、人機介面、互動、網路攝影機、人臉偵測

    第一章緒論

    本研究使用 Attention Meter 技術,為美國麻省理工學院媒體實驗室 (MIT

    Media Lab)所研發,使用的人臉偵測運算法是採用 Intel 所開發的 Intel Open

    Computer Vision (OpenCV) library,OpenCV 是由 Visual C++程式撰寫而成的,

    利用 OpenCV 的函式庫辨別人臉範圍來做互動,藉以人臉偵測技術與互動元素

    做結合引發使用者興趣,使之能在互動過程中得到回饋。

    由於 Webcam 有多方用途,加上易於取得且花費成本不高,許多技術皆可

    與之結合運用,故選擇 Webcam 為輸入裝置。而在人臉偵測軟體的選擇上,因

    Attention Meter 能與多種軟體結合使用,其中 Adobe Flash 在設計遊戲畫面與程

    式設計上都能容易使用,並能與 Attention Meter 做結合,且易於開發介面,加

    上 Attention Meter 提供的參數有十幾種,在設計遊戲操控上提供更多的選擇,

    可讓設計人員去選擇最適合的參數作為遊戲設定之參考。

    本研究目的為透過以 Attention Meter 進行遊戲設計,去發現何種動作讓使

    用者操作時是較為恰當的,接著研發一系統模組及開發流程引導使用者以供使

    用,此系統套件主要為整合 Attention Meter 與 Flash ActionScript 之技術,利用

    Webcam 為輸入介面,以電腦視覺為設計實驗輔助工具,讓使用者能快速進入

    情境中,接續互動裝置之發展趨勢。

  • 2

    第二章 文獻探討

    2.1 臉部偵測之技術種類

    臉部偵測技術種類不勝枚舉,在近幾年裡,常被使用的臉部偵測技術主要

    有下述幾種:

    表1 各類臉部偵測技術簡介

    技術名稱 簡介

    主成份分析

    (Principal Compone

    nt Analysis,PCA)

    主要為減少數據集之維數,同時保留數據集裡對

    變異數貢獻最大之特徵。透過保留低階主成份,

    忽略高階主成份,如此一來,低階成份通常能夠

    保留數據最重要的部份。但此非必要的,需視具

    體應用而定。 (Jolliffe, I. T., 2002;Smith, L. I,

    2002)

    色彩分析技術

    (Color Analysis)

    色彩分析是利用不同的色彩空間將皮膚與背景

    顏色分開後進行處理,用於膚色分割的方法眾

    多 , 有 NCC(Normalized Color Coordinates) 、

    YCbCr…等方法。

    霍氏轉換

    (Hough Transform)

    利用特徵影像中的點,轉換成線段,是一個曲線

    與 該 曲 線 間 的 參 數 點 之 雙 重 性 曲 線 的 方 法 。

    (Ballard, D. H., 1981)

    類神經網路

    (Neural Networks)

    神經網路一詞源於大腦功能研究,適用於鬆散相

    關的模式系列,特色是大型參數空間與彈性結

    構。隨著這個系列的增長,大多數新模式的設計

    目的在於,透過反應其來源的相關詞彙,進行非

    生物應用。

    神經網路的特定定義依所使用的領域而異。雖然

    沒有單一定義能正確涵蓋這整個模式系列,但可

    參考下列說明:神經網路是一個大規模的平行分

    散式處理程式,具有儲存經驗知識並加以運用的

    本性。 (Haykin, S., 1999)

    模版配對

    (Template Matching)

    此方法顧名思義為需要存在一個標準模板,以利

    系統比對之用。因此在模版配對的方法裡,首先

    需要先建立一個標準的臉部樣本。此標準臉部樣

    本,往往是以預先定義或參數化的函數來描述。

    而在輸入影像與標準模版之間的比對方式,大多

  • 3

    採用臉部輪廓、眼、鼻孔 (鼻 )或嘴唇等部位分別

    給分的方式為之,這些給分之加總便稱為「關聯

    值 (correction values)」。 (鍾慶豐, 2007)

    (資料來源: Ballard, D. H. , 1981; Haykin, S. , 1999; Joll iffe , I . T. , 2002;

    Smith, L. I ,2002;鍾慶豐, 2007;本研究整理 )

    2.2 Attention Meter

    Attention Meter 技術是由美國麻省理工學院媒體實驗室 (MIT Media Lab)所

    研究開發,使用 Attention Meter 時,需具備以下檔案:Attention Meter.exe,

    cxcore097.dll, cv097.dll,highgui097.dll, attention meter.cmd, blankbar.jpg,

    haarcascade_frontalface_alt.xml,attout.txt,及 *.fla,*.swf 檔,才能順利執行。

    表 2 為各檔案的功用。而在運行 Attention Meter 時會顯示三個視窗,分別為偵

    測到臉部的視窗 (圖 1)、抓取到的臉部資訊運行視窗 (圖 2)及控制的面板 (圖 3)。

    表2 Attention Meter 必備檔案及功用

    名稱 功用

    Attention Meter.exe 此為主程式。

    cxcore097.dll

    與 OpenCV 連結所具備的檔案。 cv097.dll

    highgui097.dll

    attention meter.cmd 執行運作時使用。

    blankbar.jpg 注意程度顯示之圖像。

    haarcascade_frontalface_alt.xml OpenCV 使用的偵測臉孔的文件檔。

    attout.txt 將抓取到的臉部資訊數據寫入紀錄。

    *.fla, *.swf 用來呈現的來源及影片。

    (資料來源: Wetzel, J . , 2006)

    Attention Meter 實際執行畫面如圖 1,它能偵測到人臉,並將人臉的範圍框

    出來,並顯示眼睛及嘴巴的位置。臉部方框上面會有一條藍色的 bar,是為注

    意力數值之呈現。

  • 4

    圖 1 Attention meter 臉部偵測截圖

    Attentive Meter 將收集到的數據匯集至一個純文字記事本中,它能讓其他程

    式讀取,包括 Adobe Flash。此數據包含一組注意分數、臉孔總個數,和每個人

    臉部的資訊:坐標、注意分數、大小 (像素 )、位置及眨眼比率,還有臉部是否

    側向移動、點頭或搖頭等,而 Flash 能透過函數將記事本裡的這些變量讀取至

    平台裡。透過文字檔 (*txt)與 Adobe Flash 結合使用,經由文字檔紀錄臉部移動、

    眨眼、搖頭、點頭、微笑及嘴巴張開…等資訊,讓程式讀取使用。圖 2 為運行

    時抓取的臉部資訊視窗,輸出範例參考資訊如下。

    圖2 運行時抓取臉部資訊視窗

    可經由各參數,讓使用者選擇適當的參數作為設計遊戲之參考依據,例:

    可用 attentionlevel 參數偵測使用者的注意程度,去切換遊戲場景或是遊戲元件

    裡的變換等。

  • 5

    而 Attentive Meter 還提供方便的操作介面,在視窗中有十一個包含刻度的

    滑動捲軸,能讓使用者依照需求自訂並改變各方面的注意力測量數值依據,圖

    3 為 Attention Meter 的控制面版;表 3 為控制面板中的各個功能名稱與描述。

    圖3 Attention meter 控制面版

    表3 Attention Meter 控制面板之功能名稱與描述

    功能名稱 描述

    Attn. Step 藉由每個臉部結構所獲得注意力之總和。

    Attn. Max 臉部所能給予的最大的注意力總和。

    Max Age 畫面中編號的臉部也許在沒有被偵測到之前就結束了。

    Face Match 臉部最大像素的編號在介於兩個畫面之間移動時,仍然

    可以被擷取到。

    Alt-Thresh 臉部的間隔必須是先前記錄的點頭或是搖頭的編號。

    Alt-Expire 在畫面中的臉部的編號也許有先前間隔的點頭和搖頭

    的計算,但仍是可被重置歸零的。

    Change 為每個移動而去定義在像素中介於水平和垂直的移動

    間最小的差異,像是水平或垂直移動。

    H-Sens 像素移動的總和需要歸類到水平的移動中。

    V-Sens 像素移動的總和需要歸類到垂直的移動中。

    H-Spd 連續的水平移動需要歸類到水平移動中的編號。

    (資料來源: Wetzel, J . , 2006;鐘凱瀚, 2008)

  • 6

    在 Attention Meter 裡值得一提的是注意分數 (Attention Scores),在 Webcam

    偵測範圍內的人臉都會被抓取並給予計分,每個人臉都是獨立計分,注意分數

    會隨著時間而增加,此數值由零開始,而注意分數的最大值可由使用者從

    Attention Meter 提供的控制面板去自行定義,數值最大值為 100。點頭、搖頭、

    眨眼次數較少(使眼睛經常可被偵測到),或是移動更接近目標(變得更大)也

    會增加注意分數。各種變數的調整,可透過控制面板 (圖 3)去進行調整 (Lee, C. H.

    J., et al, 2006)。注意力計量器使用一個連續提供的向量機制( SVMs)去追蹤和

    分類,輸入關於推論的高層級觀察人們的資訊。舉個例子,臉部表情就像是喘

    氣、露出牙齒笑著、打哈欠等,可從眼睛和嘴唇的資訊推論出 (鐘凱瀚,2008)。

    透過 SVMs 以圖像處理為基礎去推導出在臉部模式的行為中可使用的動作數據,

    可參考表 4。

    表4 臉部模式中的行為動作模式及特徵

    動作模式

    Pattern of Motion

    特徵

    Characteristics

    只是路過

    "Just Passing By"

    高動作,不常面對著攝影機

    High motion, rarely faces the camera

    隨意瀏覽

    Casual Browsing

    面對攝影機一下子,但動作延緩

    Face visible for a while, but stays in motion

    詳細查看

    Detailed Look

    相當長的時間面對著攝影機

    Face remains still for long periods of time

    (資料來源: Lee, C. H. J . , e t a l , 2006)

    本研究採用的 Attention Meter 的版本為 Beta v0.06,此一演算機制為 Wetzel,

    J. 製作,並由 Lee, C. H. J. 團隊應用在 Attentive Interaction Design Toolkit (Lee,

    C. H. J. , et al, 2006),可即時並準確的擷取畫面,在辨識的任一方面皆優於二維

    小波轉換的結果。Attentive Meter 系統的記分程序如下,首先經過 Attentive

    meter beta v0.06 偵測後,將資訊輸入到由 OpenCV 的資料庫中,進行 SVMs 向

    量機制的追蹤和分類,最後給予注意力的計分 (鐘凱瀚, 2008),如圖 4。

    圖 4 Attention Meter 的演算過程

    (圖修改來源:鐘凱瀚, 2008)

    Attention MeterBeta

    v0.06

    OpenCV ’sDatabase

    SVMsWeb/libSVM

    Attention Scores

  • 7

    2.3 動作編碼

    在動作設計方法部份,能透過模型去模擬情況,或是以反覆的詴驗去進行

    測詴,而 Zheng, G., et al(2007)針對人的動作進行模擬分析及分解動作,去獲得

    人活動時的動作;Huang, C. L.與 Chung, C. Y. (2004)透過 Webcam 來抓取人的

    動作再進行分析,用於人機互動介面系統;Barr ón, C.及 Kakadiaris, I. A. (2003)

    使用 Convex Penalty 法以定義問題、模擬動作抓取可能遇到的問題、3D 抓取的

    方式,接著預測可能的結果,最後進行測詴。

    而 在 遊 戲 動 作 設 計 上 的 探 討 , Wizard of Oz approach (Höysniemi, J.,

    Hämäläinen, P., and Turkki, L., 2004) 此套方法可供在設計上參考,此方法將動

    作設計分為六個部份:定義標準姿勢、定義參與者、測詴空間之配置、測詴控

    制、實際測詴,最後是分析方法,詳細說明請參照表 5。

    在編碼的部份,動作編碼 (Action Coding System)在操控介面設計的目的,

    是將使用者的操作意圖,透過所使用的介面對其當下動作解譯之數位分類代碼,

    以利系統簡化模組之串連及參數傳遞。

    表5 Wizard of Oz approach 動作設計方法

    名稱 說明

    定義標準姿勢 一開始必須先設定幾個使用者要操作出來的標準

    動作。

    定義參與者 此裝置預計要給什麼人使用,故使用者也應該要定

    義清楚。

    測驗空間配置

    除使用者外,測詴環境也需要控制,使用哪些裝置

    是否會影響測詴結果,以及是否在受測的同時,旁

    邊是否會有其他使用者觀看。

    測詴控制

    使用者在此模式下進行測詴會不會有先入為主的

    概念,以及在測詴中,是否需要給予使用者特定的

    提示。

    實際測詴 使用者的背景、資訊以及受測地點會不會影響受測

    內容。

    分析方法 必須要考慮哪種分析方式適合此次的測詴。

    (資料來源: Höysniemi, J . , Hämäläinen, P., and Turkki, L., 2004 )

    2.4 元件式軟體工程 (CBSE)

    軟體工程是一門研究如何用系統化、規範化、數量化等工程原則和方法去

    進行軟體的開發和維護的學科。而軟體工程也是一個框架的技術,可以提供建

  • 8

    立電腦軟體的人們使用,讓人們對軟體的建立成為正確的決定;這個技術包含

    一個過程、一組方法,及一系列的工具 (陳湘揚等人, 2004)。有學者為軟體元

    件提出的定義 (請查閱表 6),而這些定義的共同點是元件是獨立的,它們是組合

    系統的基本單元。

    表6 軟體元件之定義

    學者 定義

    Councill & Heineman

    「一種符合元件模型的軟體元素,可以獨立部屬和

    組合,而不需要根據組合標準加以修改。」以標準

    為基礎,符合這些標準的軟體單元就稱作元件。

    Szyperski

    著重在元件的關鍵特性:「軟體元件是個組合單元,

    它有已指定的介面和明確的環境 (context)相依性。

    軟體元件可以獨立的部屬,並由其他廠商來組合。」

    (資料來源: Sommervil le, Ian;陳玄玲譯, 2009)

    元件式軟體工程 (Component-Based Software Engineering, CBSE)在 1990 年

    代晚期興起,是以再利用技術為主的軟體開發方式的一種。CBSE 是定義、實

    作和整合或組合鬆散耦合 (Loosely Coupled)的獨立元件變成系統。要能夠更快

    速開發更複雜、品質更好的軟體,唯一的方法就是再利用,而不是重新實作每

    個軟體元件 (Sommerville, Ian; 陳玄玲譯, 2009)。

    CBSE 其主要功用是讓獨立的元件變成系統,而元件式軟體工程要素包括以

    下所列四點 (Sommerville, Ian; 陳玄玲譯, 2009):

    ● 獨立的元件:它完全是透過指定介面的方式,在元件的介面與實作之間

    必須有清楚的區隔,這樣才可以取代元件。

    ● 元件標準:這是用來促進元件的整合。這些標準是內建在元件模型中,

    定義如何指定元件介面,還有元件是如何溝通。假如元件有符合標準,那

    麼它們的運算動作會與程式語言無關。用不同語言撰寫而成的元件,可以

    整合在同一系統中。

    ● 中介軟體:負責提供元件整合的軟體支援。此外實作元件模型的中介軟

    體可能會提供資源配置、異動管理、保全性和並行性等功能。

    ● 開發程序:是專為元件式軟體工程所設計的。

  • 9

    表 7 元件式軟體工程之管理目標

    目標名稱 說明

    降低成本 任何一個開發軟件系統重要目標是發展過程需考

    量成本效益。

    易於安裝 開發軟件系統,組件需要進行設計,便於以後的裝

    配工程組件組裝在一起。

    可多重使用性 可重用的程度是一個組件在 (重新 )裝配過程中使用

    的開發軟件系統。

    客製化及靈活性 當一組組件提供給應用開發商,他們可以根據其具

    體要求定制自己的系統組裝部件。

    可維護性

    可維護性也是易用性,根據新的和新出現的要求,

    使軟體功能可以添加、刪除或修改其中的一個組成

    部份。

    (資料來源: Hasselbring, W., 2002)

    2.5 模組化 (Modularity)

    模組通常是系統的一個元件,提供一或多種服務給其他模組,它也可以使

    用其他模組提供的服務。通常模組不會被視為一個獨立的系統,它通常是由其

    他許多更簡單的系統元件所組成 (Sommerville, Ian; 陳玄玲譯,2006)。而模組

    化是將軟體系統依其系統功能性或資料的相依性,分成數個容易了解與處理且

    可以互相溝通的單元 (Module)或元件。透過軟體系統的模組化,可以降低系統

    的複雜度,提高系統的可維護性,因此,可增加系統的穩定性及再利用性。

    系統模組化後,接著要考慮的就是每個模組的大小以及模組的數量。通常,

    系統模組愈小,對於設計就愈容易,然而,也由於系統模組較小,因此同時增

    加系統模組的數量,數量一旦增加就會增加溝通的成本。例如,因模組間的溝

    通介面增多,而提高溝通的複雜度;反之,為了降低模組溝通的複雜度,勢必

    要減少系統模組的數量,因此將會提高每個模組的大小,而增加模組的設計困

    難度,同時也會降低模組的再利用性 (李允中, 2009)。

    元件式軟體工程與模組化都擁有再利用的優點,透過上述的分析,將 CBSE

    與模組化之內容整理於表 8。

  • 10

    表8 CBSE 與模組化分析

    名稱 相似處 相異處

    元件式軟體工程

    以再利用技術開發軟體

    降低成本

    易於安裝

    可維護性

    讓獨立元件變成系統。

    模組化

    降低系統的複雜度

    提高系統的可維護性

    增加系統的穩定性

    再利用性

    通常不會被視為一個獨

    立的系統,它通常是由

    其他許多更簡單的系統

    元件所組成。

    (資料來源: Sommervil le, Ian;陳玄玲譯, 2006/2009;李允中, 2009)

    第三章 定義動作規則及系統實作

    3.1 定義動作規則

    本系統以人臉偵測技術為主,電腦視覺為輔,進行遊戲設計,分為兩部份,

    經過測詴後,接著進行遊戲平台設計,再以 Wizard of Oz approach (Höysniemi,

    J., Hämäläinen, P., and Turkki, L., 2004) 動作設計方法提出的方法來設計測詴

    內容。

    表9 定義規則

    名稱 說明

    定義標準姿勢

    (1)移動時,除了左右、上下 (xN、 yN)移動外,需配

    合搖頭 (shaking)與點頭 (nodding)來控制物件移動。

    (2)移動時,除了左右、上下 (xN、 yN)移動外,需配

    合注意程度 (attentionlevel)來控制物件移動。

    (3)移動時,除了左右、上下 (xN、 yN)移動外,直接

    透過時間函數來控制物件移動。

    定義參與者

    由於本研究為測詴階段,故將參與者定位在 15 歲至

    35 歲之間,若將年齡層定義太高 (大於 35 歲 ),可能

    在操作上會有困難,例:移動動作幅度過大造成受傷。

    測驗空間配置 在測詴環境上,因採用 Webcam 為輸入媒介,過於複

    雜的背景會影響偵測,故在測詴時,需有單純背景。

    測詴控制 基本上在操控時,只需要講解畫面呈現的訊息,其餘

    部份,使用者皆可輕易控制。

    實際測詴 藉以探討使用者之互動經驗是否會影響使用者操作

    互動裝置。

  • 11

    分析方法 經使用者訪談去得到較為適合的動作做為後續系統

    發展之依據。

    上述提及的三種規則,透過讓使用者操作過三組動作指令後,瞭

    解使用者操作的主觀感受,進而尋找較適合的動作規則來做為系統開

    發之動作。首先挑選五名使用者,分別操作此三種移動動作,以觀察

    及訪問的方式來選用較為恰當的動作。

    動作一:與點頭、搖頭並用

    移動時,除了左右、上下 (xN、 yN)移動外,需配合搖頭 (shaking)與點

    頭 (nodding)來控制物件移動。

    動作二:與注意程度並用

    移 動 時 , 除 了 左 右 、 上 下 (xN 、 yN) 移 動 外 , 需 配 合 注 意 程 度

    (attentionlevel)來控制物件移動。

    動作三:直接操控,不與其他參數並用

    移動時,除了左右、上下 (xN、yN)移動外,直接透過時間函數來控制

    物件移動。

    表10 動作規則一之使用者建議與看法

    受測者編號 建議與看法

    1 一下要點頭一下又要搖頭,很容易頭暈。

    2 搖頭要向左或向右移時,搖頭的數值又歸零了,好難同

    時要搖頭跟移動。

    3 要移動都要詴好多次才能移動,脖子好痠。

    4 可以只用點頭或是搖頭其中一種來控制嗎?不然我都會

    忘記哪個是搭配哪個去移動。

    5 多詴幾次後,慢慢知道怎麼控制了。

    表11 動作規則二之使用者建議與看法

    受測者編號 建議與看法

    1 只要一不小心,注意程度就不見了,這樣頭都不能亂動。

    2 等集滿注意程度都要好久喔。

    3 遇到好走的路徑,可以衝很快耶。

    4 注意程度好容易就歸零,怎麼會這樣?

  • 12

    5 慢慢移動的話,注意程度會一直保持著,這樣就可以一

    直移動了。

    表12 動作規則三之使用者建議與看法

    受測者編號 建議與看法

    1 上下都不太動,左右還可以接受。

    2 操控起來還行,速度也 ok。

    3 建議去比對前後兩個位置再進行判斷 ex: →中才往右,

    可能會更好操作。

    4 覺得遊戲很有挑戰性,發現越接近 Webcam 就可以比較

    穩定操控。

    5 還滿容易操作的,只是上下好像不太好控制。

    經由使用者測詴後給予的建議 (可參考表 10-12),發現動作一經常

    會讓使用者在操作上感到疲累,且易造成運動傷害。而動作二有時會

    因為頭部移動太快,造成注意程度歸零,又需重新等待,導致時間花

    費過久,使得使用者失去耐心。動作三除了上下移動較為不靈敏外,

    其操控方式較能讓使用者去完成遊戲。由此之結果,做為遊戲平台開

    發之動作去選用。

    3.2 系統展示

    本研究之迷宮程式是由蔡德勒 (2007)撰著的「Flash CS3 網路動畫

    特 效 108 例 」 裡 所 提 供 的 原 始 範 例 做 修 改 而 成 , 原 始 範 例 由

    ActionScript2.0 撰寫而成,而本研究之迷宮則為 ActionScript3.0 所撰

    寫。其迷宮之生成,則是透過陣列紀錄迷宮之大小,故能每次生成不

    同路徑的迷宮。

  • 13

    圖5 隨機產生迷宮之截圖

    希冀藉以隨機產生不同的迷宮路徑 (可參考圖 5),讓使用者每次都

    能有不同的體驗,帶給使用者驚奇感,而不是一成不變的過關路徑。

    圖6 實際操作之畫面

    3.3 開發過程

    以元件式軟體工程與模組化之文獻為基石,將元件式軟體工程與

    模組化都具備之再利用性與可維護性為發展套件目的之一,而李允中

    (2009)提及模組化通常不會被視為獨立之系統,因此本研究套件以模

    組化之論點藉以發展,並於模組化後擁有模組化之優點:降低系統複

    雜度、提高系統可維護性、增加系統之穩定性及再利用性。

    在開發之前期,AS 檔以 package 方式撰寫,其中包含了讀取人臉

    偵測得到的參數及遊戲本身控制之程式碼;後期將人臉偵測與遊戲本

    身之程式做分離,形成抓取人臉偵測之套件,以 include 的方式與 Flash

    做繫結。

    以降低系統之複雜度,增加可維護性為出發點,將之包裝為套件,

    讓互動裝置開發人員可自行設計互動裝置 (例:本研究之遊戲 )之主體,

  • 14

    再將人臉偵測之互動方式之套件 include 到平台裡,只要幾行程式碼

    就可以順利將之結合。而透過此方式,可讓系統容易維護,在使用上

    也較為便利。

    圖7 開發過程示意圖

    第六章 結論與未來發展

    透過使用者測詴結果及 Attention Meter 與 Flash 結合之開發性極

    高,以元件式軟體工程及模組化之文獻為系統模組化之依據,將元件

    式軟體工程與模組化共同具備之優點:可維護性與再利用性,及模組

    化所具備之特點:降低系統複雜度與增加系統穩定度,將之用於本研

    究系統,進而發展出套件供此類型的開發人員使用,藉以縮短開發時

    間而增加其附加價值。

    在遊戲或裝置設計上,本研究為單人控制的互動遊戲,未來可以

    朝多人互動遊戲發展,做更多互動上的變化。

    本研究亦有以 3D 模型做測詴,故在與 3D 結合使用上是沒有問題

    的,而在未來可以與 3D 做結合設計 3D 的遊戲或裝置,讓使用者有身

    歷其境的感受,增加沉浸度。

    在不同尺寸的螢幕上,偵測距離時會影響產生的數值,未來可以

    先偵測螢幕尺寸做校準後,提供數值給設計人員做參考值。

    Attention Meter套件

    Attention Meter套件

    遊戲 主體

    遊戲 主體

    package

    include

  • 15

    英文文獻

    Ballard, D. H. (1981). Generalizing the Hough Transform to Detect

    Arbitrary Shapes. Pattern Recognition, Vol.13, No.2, p.111 -122.

    Barr´on, C. and Kakadiaris, I. A. (2003). A convex penalty method for

    optical human motion tracking. Paper presented at the First ACM

    SIGMM international workshop on Video surveillance.

    Hasselbring, W. (2002). Component -based Software Engineering. In

    Chang, S.-K. (ed.), Handbook of Software Engineering and

    Knowledge Engineering, Volume II. New Jersey, NJ: World

    Scientific Publishing. Retrieved July 30, 2010, from the World Wide

    Web: http://www.ksi.edu/seke/hand.html

    Haykin, S. (1999). Neural Networks: A Comprehensive Foundation,

    second Edition, Prentice-Hall.

    Höysniemi, J ., Hämäläinen, P., and Turkki, L. (2004). Wizard of Oz

    Prototyping of Computer Vision Based Action Games for Children.

    In Proceedings of International conference on Interaction Design

    and Children (IDC2004), 1-3 July 2004, Maryland, USA, pp27-34.

    Huang, C. L. and Chung, C. Y. (2004). A real -time model-based human

    motion tracking and analysis for human computer interface systems.

    EURASIP J. Appl. Signal Process., 2004, 1648 -1662.

    Jolliffe, I. T. (2002). Principal Component Analysis, seco nd edition.

    Lee, C. H. J., Wetzel, J., Selker, T. (2006). Enhancing Interface Design

    Using Attentive Interaction Design Toolkit. Paper in Educator

    program in SIGGRAPH 2006.

    Smith, L. I (2002). A tutorial on Principal Components Analysis.

    Retrieved July 5, 2010, from the World Wide Web:

    http://www.cs.otago.

    c.nzcosc453/student_tutorials/principal_components.pdf

    Wetzel, J. (2006). Attention Meter Beta v0.06 Manual.

    Zheng, G., Li, W., Ogunbona, P., Dong, L., and Kharitonenko, I. (2007).

    http://www.ksi.edu/seke/hand.html

  • 16

    Human motion simulation and action corpus. Paper presented at the

    Proceedings of the 1st international conference on Digital human

    modeling.

    中文參考書目

    李允中 (2009)。軟體工程。台北市:麥格羅希爾。

    Sommerville, Ian (2006)。軟體工程 (陳玄玲譯 )。台北市:臺灣培生教

    育。

    Sommerville, Ian (2009)。軟體工程:軟體開發技術與軟體專案管理 (陳

    玄玲譯 )。台北市:臺灣培生教育。

    陳湘揚等人 (2004)。軟體工程:物件導向程式設計與 UML 系統分析實

    作。台灣:博碩出版社。

    蔡德勒 (2007)。Flash CS3 網路動畫特效 108 例。台灣:文魁。

    學術論文

    鐘凱瀚 (2008)。以情緒輔助設計活動的觀點探討智慧化空間設計之研

    究。國立雲林科技大學設計運算研究所碩士論文。

    網路資源

    鍾慶豐 (2007)。探究影像辨識裡的臉部偵測技術(一)。線上檢索日期:

    2010 年 05 月 31 日 。 網 址 : http://www.compotech.com.tw/

    articleinfo.php?cid=36&id= 9288

    http://www.compotech.com.tw/%20articleinfo.php?cid=36&id=%209288http://www.compotech.com.tw/%20articleinfo.php?cid=36&id=%209288