• 沒有找到結果。

以語意虛擬環境之概念建置即時動畫的實驗平台

N/A
N/A
Protected

Academic year: 2021

Share "以語意虛擬環境之概念建置即時動畫的實驗平台"

Copied!
11
0
0

加載中.... (立即查看全文)

全文

(1)

行政院國家科學委員會補助專題研究計畫成果報告

以語意虛擬環境之概念建置即時動畫的實驗平台

計畫類別:個別型計畫

計畫編號:NSC 96-2221-E-004-008-

執行期間:96 年 8 月 1 日至 97 年 7 月 31 日

計畫主持人:李蔡彥

計畫參與人員:

碩士班兼任助理:朱鈺琳、雷嘉駿、趙偉銘、梁長宏、任偉成

學士班兼任助理:陳印似、張允泰、林欣芸、蕭名宏

成果報告類型:精簡報告

本成果報告包括以下應繳交之附件:

■出席國際學術會議心得報告及發表之論文各一份

處理方式:除產學合作研究計畫、提升產業技術及人才培育研究計畫、列

管計畫及下列情形者外,得立即公開查詢

□涉及專利或其他智慧財產權,□一年□二年後可公開查詢

執行單位:國立政治大學資訊科學系

華 民 國 97 年 10 月 25 日

(2)

行政院國家科學委員會

專題研究計畫成果報告

以語意虛擬環境之概念建置即時動畫的實驗平台

Building an Experimental Platform for Real-Time Animation

with Semantic Virtual Environment

計畫編號:96-2221-E-004-008

報告期限:96年8月1日至97年7月31日

主持人:李蔡彥 Email: li@nccu.edu.tw

執行機構及單位名稱:國立政治大學資訊科學系

中英文摘要

(一)、中文摘要

由於全球資訊網分散與鬆散的結構,而有語意網 概念的提出;多人虛擬環境中的3D動畫也面臨 類似的問題。因此,近年文獻上曾提出「語意虛 擬環境」的觀念,以期為虛擬環境中的動畫角色 及物件,定義語意描述方式,以提高3D動畫產 生的自動化程度,實現自主式數位演員的觀念。 本研究以實現語意虛擬環境的概念為核心,發展 所需的三項核心關鍵技術:程序式即時動畫的實 驗平台、智慧型即時攝影機模組、及可即時下載 安裝動畫程序元件的多人虛擬環境系統。第一、 我們根據過去設計程序式動畫的經驗,嘗試開發 一個能可實驗即時動畫程序的平台,進行通用程 式序動畫的設計。第二、我們也嘗試在即時動畫 環境中,設計一個能以第三人稱方式有效觀察動 畫角色及避免遮蔽的攝影機模組。第三、我們遵 循OSGi標準將我們的多人虛擬環境系統,設計 成一個能即時下載安裝使用者所自行開發的軟 體元件,以達到分享客製化動畫程序的目的。我 們希望在語意網及服務導向概念的引導下,網際 網路3D內容的應用將會由於成本與相容性的改 進而有更寬廣的發展空間。

(二)、英文摘要

Due to the distributed and loose nature of the information on the web, the concept of Semantic Web was proposed. In fact, similar situation also exists for 3D animations on multi-user virtual en-vironment. Therefore, the concept of semantic vir-tual environment was also proposed in the litera-ture with the aim of enhancing virtual objects with semantic descriptions to facilitate the automatic

generation of 3D animations and realization of autonomous digital actors. In this research, as part of realizing semantic virtual environment, we have developed three core technologies: an experimental platform for real-time procedural animation, a real-time intelligent camera planning module, and a multi-user virtual environment system allowing dynamic installation of user-designed animation plug-ins. First, according to our past experiences in designing procedural animations, we have devel-oped a general experimental platform for real-time procedural animation. Second, we have attempted to design a real-time camera planning module that can be used in providing unobstructed third-person tracking view to the user-controlled animated character. Third, we have adopted the OSGi stan-dard in our multi-user virtual user environment to enable the users to design sharable customized animation procedures that can be downloaded and installed on the fly as plug-ins. Under the umbrella concepts of semantic web and service orientation, we hope that 3D content on the web will have more room for development due to the improvement of development cost and compatibility.

一、 緣由與目的

近年來多人虛擬環境的應用有逐漸增加的 趨勢,不論在學術上或商業上都有可供多人上線 的虛擬環境服務,在功能上也不斷地推陳出新。 多人虛擬環境(Multi-user Virtual Environment,簡 稱MUVE)是一個可供多人同時上線,透過文字 或3D虛擬人物達到互動效果的虛擬世界。例如 Second Life便是近年來風行的線上3D虛擬環境 [18]。

(3)

一般 用途的3D虛擬環境系統(如Second Life)有別於線上連線遊戲,其系統設計的邏輯 並非固定在某一特定的應用情境上,而是取決於 該環境設計者的設計目標,因此這類系統所提供 的設計彈性及動畫表達的真實性便十分重要。目 前大部分的虛擬環境系統,都提供了相當彈性的 機制及有效率的繪圖程序,供場景開發者設計擬 真的虛擬場景。但除了幾何模型的擬真性外,虛 擬環境中虛擬替身(Avatar)的動畫及行為是否夠 擬真,更是使用者是否容易寄情投入的重要關 鍵。但對目前大多數的虛擬環境系統而言,這方 面的技術仍有極大改善空間。本計畫的目的是希 望能研發一個具有語意描述能力的3D虛擬環境 系統,並透過即時動畫計算程序的設計,產生彈 性且擬真的動畫角色行為,由使用者自行設計 後,透過Web2.0的觀念,分享給其他的使用者即 時下載後嵌入系統中使用。 在原提研究計畫書中,我們希望以三年的時 間,深入研究如何建立一個在語意虛擬環境中即 時動畫的實驗平台,但由於最後核定的研究期程 為一年,因此在過去一年的研究中,我們選擇原 計畫中已經進行或重要的關鍵技術進行開發。其 中,主要包含三個部分:程序式動畫的通用實驗 平台設計、即時虛擬攝影機追蹤模組、及具語意 描述及動態嵌入能力的多人語意虛擬環境。以下 謹就這幾個部分的問題定義、系統設計、及實驗 成果做進一步說明。

二、 程序式動畫的通用實驗平台設計

(一)

問題描述

目前動畫最常用的製作方式有兩種,一種是 關鍵格法(Keyframing),也就是由動畫師以滑 鼠或其他輸入設備調整出一張張的關鍵格,再由 電腦計算關鍵格之間的內插格以產生動畫。製作 成果的好壞完全仰賴動畫師的專業程度,缺乏經 驗的使用者不太可能使用這種方式製作出自然 流暢的動畫,而且短短幾秒鐘的動畫就可能讓動 畫師花上許多的時間。為了節省時間與成本,於 是有所謂的動作捕捉(Motion Capture)的技術 發展出來。這種技術直接捕捉人體或物體的動 作,輸入到電腦產生動畫格。這種做法不但擬真 度較高,而且一旦校正設定完成,多個動作可以 一次擷取,省時許多。 雖然以上兩種做法(手動和動作捕捉)都可 以讓動畫做到很細膩,但是基本原理都是把輸入 的關鍵格資料直接呈現在螢幕上,而這些關鍵格 資料是死的,無法被彈性地調整。例如,在平地 上走路和在崎嶇地形上走路是不太一樣的,雖然 是同類動作,但還是得重新調整或擷取才能得到 正確的動畫,非常費時費力。近年來許多動畫技 術的研究都是在如何將擷取下來的動作,做進一 步的變化以加值運用在其他應用環境下,但畢竟 能變化的程度有限[20]。所以在需要高互動性的 環境,我們偏好使用程序式動畫的技術即時產生 所需的動畫。程序式動畫的概念是建立動畫角色 的關節式的骨架,同時以運動的基本原則和對環 境的適應方法建構一個演算法的模型,在某種程 度上,電腦就可以幫我們自動產生該運動的動畫 [3][4][19]。 (二) 系統設計 我 們 開 發 了 一 個 名 為IMHAP ( Intelligent Media Lab’s Humanoid Animation Platform)的動 畫平台來測試我們的程序式動畫。IMHAP的系 統架構如圖1所示[13]。此架構主要是根據MVC 模式設計的,在MVC中,系統被區分成三大模 組:Model、View以及Controller,Model用來封 裝資料,View與使用者互動,而Controller則負 責前兩者之間的溝通。在圖1中,每個方塊表示 一個模組,而模組間的箭頭表示資料流向,其中 Animation Dispatcher和Animation Generator是整 個 系 統 的 核 心 , 它 們 扮 演Model 的 角 色 。 Animation Controller負責控制動畫的播放,所以 它是MVC裡的Controller。剩下的3D Browser、 2D Canvas以及User Interface都是與使用者互動 的元件,所以它們是MVC裡的View。以下我們 詳細描述各個模組的功能。 3D Browser負責繪圖工作,它可以讀取人體 模型和境資料。3D Browser Adapter用來封裝3D Browser,對其他模組提供一個統一的介面,這 圖1 IMHAP 的系統架構

(4)

麼做的優點是可以讓系統動態地抽換不同的3D Browser,而不用更動到系統本身。Animation Dispatcher和Animation Generator是整個系統的 核心。Animation Dispatcher可以作為全域規劃器 (Global Planner),它從使用者介面接收高階命 令,間接指示它所掌管的多個Animation Gen-erator。而Animation Generator則是區域規劃器 (Local Planner),負責產生個別運動。舉例來 說,使用者透過介面輸入了一條行進路徑給 Animation Dispatcher,Animation Dispatcher接收 這道命令之後,根據環境中的障礙物,計算出何 時該用何種運動,如此便可將一個高階的命令拆 成數個低階的指令,之後再將工作分派給適當的 Animation Generator,讓Animation Generator產生 運動細節後,才把結果交由給Animation Dis-patcher整理成一連串的畫格。Animation Con-troller從Animation Dispatcher讀取畫格,並控制 動畫的播放,使用者可以透過使用者介面去控制 Animation Controller,進而控制3D Browser或2D Canvas應該顯示第幾格畫格。系統中允許多個 Animation Controller存在,多個Animation Con-troller可以讓應用程式同時擁有多個視圖。例 如,2D Animation Controller可連接到2D Can-vas,提供像是上視圖、側視圖、或是曲線圖等 2D視圖。而3D Animation Controller則可連接到 3D Browser Adapter,提供3D透視圖的瀏覽。 (三)

實驗成果

我們使用Java作為實作系統的程式語言,以 IMHAP 為 基 礎 , 搭 配 我 們 之 前 開 發 的 IMBrowser[8] 作為3D瀏覽器,實作了一個應用 程式,如圖2。介面中央為3D視圖,可顯示輸出 的動畫結果。右側面板分成上下兩部分,上方面 板用來讓使用者設定個別運動的參數,而下方面 板則是用來指定運動序列。下方則是控制動畫面 板,可控制動畫的播放、暫停或指定跳到某一格。 我們設計了四種運動(坐下、蹲下、行走、 及蹲走),每種運動有共同的參數,也有自己特 有的參數。共同的參數是骨架中各段骨頭的重量 和長度,其數值來自3D模型檔,使用者無法自 己調整。參數可以分為重量參數、長度參數和角 度參數。這四個運動的組合展示如圖3所示。我 們可以輕易將前述幾種運動連接起來,設計出一 連串的動作。我們也嘗試將這些程序式動畫輸出 到商業3D動畫軟體Maya中,經過Maya的算圖, 將動畫輸出成品質較高的動畫影片。如在圖4 中,我們將相同的動作序列套用在不同的角色, 我們所設計的程序式動畫會依照骨架的不同,自 動產生出適當的動畫。

三、 即時虛擬攝影機追蹤:

(一)

問題描述

我們可將目前常見攝影機系統分成以下兩 大類。第一類是第一人稱攝影機。使用者控制虛 擬環境中之化身,攝影機直接依附於化身身上, 因此能夠看到化身眼中的世界,彷彿使用者本人 處於該虛擬環境之中,但是有限的視野範圍也間 圖5 攝影機組態的表示方式(l, ψ,φ) 3 多種運動的組合展示 圖4 相同的動作序列套用在不同的角色上 圖2 實驗平台的使用者介面

(5)

接限制了攝影機的表達能力,僅能得知化身前方 的資訊,對於整個場景的資訊無法立即有效的掌 握。第二類則是第三人稱攝影機。攝影機以第三 者的角度,隔著適當的距離拍攝虛擬環境中之化 身,並且依據使用者與環境的互動來改變攝影機 的角度與位置。攝影機位置的變化可能是連續的 跟蹤拍攝(Tracking),或者是在兩個不同的位置 進行畫面的轉切。雖然有些研究已著力在為電腦 遊戲設計攝影機的控制模組[14],但較少能在即 時環境下對預測的運動進行攝影機移動或轉切 的規劃。 我們將攝影機控制的問題轉換成攝影機即 時運動規劃的問題。在3D環境中的攝影機可擁 有6個自由度的組態:攝影機位置(x, y, z)與攝影

機的拍攝方位(roll, yaw, pitch)。但六個自由度的 組態空間維度太高,勢必會花費相當多的時間搜 尋路徑。但我們認為在此應用中,並非每個維度 都是必要的;如攝影機滾動(Roll)的行為其實鮮 少出現在傳統電影拍攝的過程中。因此如[15]的 研究中,便捨棄攝影機拍攝方位的三個自由度, 僅由攝影機座標位置構成組態空間,且假設攝影 機在任何情況下皆朝著目標物方向拍攝,也就是 目標物永遠會出現在畫面的中央,而這樣的假設 符合一般虛擬環境的情境。我們使用[10]所使用 的攝影機相對於化身的表示方法,以化身為原 點,組態由攝影機與目標物的距離l、水平夾角 ψ、垂直夾角φ所構成(如圖5)。 (二) 系統設計 我 們 在 上 述 組 態 空 間 中 建 立 隨 機 街 圖 (Probabilistic Roadmap)[7]。典型機率街圖的建立 方式(Probabilistic Roadmap Method, PRM)是先 在整個組態空間中散布節點(Node),合法的節點 不可落於障礙物之內,倘若節點與鄰居之間的直 線內插不受障礙物遮蔽,便可在節點與節點之間 建立一個連結(edge)。在大部分使用隨機街圖的 應用中,一旦街圖建立之後,便可將路徑的起始 點以及終點加入街圖中,然後使用搜尋最短路徑 的方式求得路徑;如果沒有搜尋到路徑,便代表 起始點與終點之間未連通,此時便可適當地再增 加節點(Node Enhancement)更新街圖,然後再重 新搜尋路徑。 在我們的研究中,有別於上述的隨機街圖, 我們採用[1][2]所提出的的變形:惰性街圖(Lazy PRM)。此方法的最大特點是在組態空間建置街 圖時,並不立即檢查所有節點的合法性,而是在 路徑規劃的階段才檢查節點是否落於障礙物之 內,以及節點與節點之間是否連通。如此一來便 不會對搜尋期間未觸及的節點作碰撞檢查,可有 效地減少路徑規劃的時間。另一點不同的地方, 隨機街圖一般是建立在整個環境,而我們所使用 的街圖是建立於以化身為原點的座標系統中,僅 散布於化身周遭。如圖6所示,隨著化身的移動, 街圖也會改變其在工作空間中的位置,這樣的好 處是較容易維持攝影機與化身之間的相對關 係,但卻使得我們無法預先知道街圖上結點的合 法與否,因此我們採用惰性街圖的精神,在路徑 搜尋的階段才檢查節點的合法性。 一般的路徑規劃問題通常包含了兩個輸入 資料:起始組態及目標組態,然後輸出從起始組 態至目標組態的一連串轉換,也就是移動路徑。 由於我們所面臨的狀況是在即時環境下進行路 徑規劃,不一定有充分的時間可以保證找到目標 組態,因此我們的輸入為一理想目標組態。路徑 規劃的目標是在街圖上找尋一個最接近理想目 標組態的組態,然後產生出一條路徑,讓起始組 態能夠移動至此組態。 我們希望對於不同使用者的偏好能夠產生 不同的攝影機擺設,例如使用者可能喜歡長鏡頭 圖5 攝影機組態的表示方式(l, ψ,φ) 圖6 以目標為原點所建立的隨機街圖範例

(6)

的畫面、相對於化身的特定拍攝角度、或者是偏 好使用攝影機的轉切大過於攝影機的跟蹤拍 攝。在實作上我們會將以上有可能做為偏好的條 件,依據使用者的喜好做適當的加權,以做為路 徑規劃時評分的依據,進而產生不同風格的攝影 機擺設。 在即時環境下的攝影機規劃,因為無法事先 得知完整的化身移動路徑,加上對於未來路徑的 預測準確度有限,因此很容易使攝影機進入虛擬 環境中較險惡的位置,例如牆角。當化身越靠近 攝影機時,會導致拍攝距離過於靠近,而解決此 類問題的方法乃是透過攝影機之間的轉切。當我 們評估目前的攝影機已經進入險惡的環境時,便 可以根據攝影學的準則,轉切至其他較為靈活的 攝影機位置。 在建立虛擬攝影機之前,我們先由化身所面 對的方向建立Line of Interest,如圖7所示,接著 在此線的兩端區分出內部(藍)、平行(紅)以及外 部(綠)方位。根據攝影學的原則,當我們進行轉 切時,不可轉切至同一個架設方位的攝影機上。 因為攝影機轉切後移動的距離不大,給觀眾的視 覺觀感像是同一部攝影機在附近進行跳躍的動 作,所以轉切的時候必須從攝影機方位轉切到另 外一個不同方位的攝影機。 (三)

實驗成果

我們設計了一個場景用來測試是否能夠在 充滿障礙物的虛擬中,成功避開障礙物拍攝到化 身。圖9則為攝影機在圖8俯視圖中的一些取樣點 上的畫面截圖,代表攝影機在路徑上相對應編號 的攝影機依序所拍攝的畫面。這個實驗的結果顯 示能夠規劃出不受障礙物遮蔽的路徑。整體而 言,除了少部分在轉彎的片刻會些微被擋到外, 整條路徑上都能夠成功進行跟蹤拍攝。 另外,我們也設計一個特殊場景,讓攝影機 率先進入死巷的環境中,然後再將攝影機漸漸逼 入巷底,減少其可規劃的空間,最後觀察攝影機 是否能夠利用轉切轉移至其他位置。圖12為此實 驗之截圖,共分成四部分。一開始攝影機以外部 方位的方式進行拍攝,並且率先進入死巷的環境 中。隨著人物慢慢向死巷末端靠近後,在第二與 第三部分的截圖可發現攝影機與化身的距離逐 漸拉近。最後第四部分,當攝影機沒有足夠的搜 尋空間,又預測到未來可能會陷入障礙物之中, 便觸發了轉切機制,將攝影機成功轉移至合法的 拍攝位置。

四、 多人語意虛擬環境:

(一)

問題描述

隨著Web 2.0時代的來臨,如何讓參與虛擬 環境的使用者自行設計屬於自己替身(Avatar)的 動畫行為,並與其他使用者分享,將是3D數位 內容能否在虛擬環境中普及的重要關鍵之一。然 而,現有傳統虛擬環境系統的設計尚難達到上述 目標,主要原因是一般虛擬環境中每個角色的行 為是固定的(例如固定的行走或擺動方式);即使 這些動作是可以由使用者選擇切換的,所有動作 圖7 依據相對 LOI 的角度區分街圖上節點種類的示 意圖 8 實驗解果範例 - 行走路徑之取樣點 圖9 攝影機拍攝效果 – 圖 8 取樣點之截圖

(7)

的新增也必須由系統設計者加入後再安裝到各 個客戶端程式。由於缺乏延展性,因此目前的系 統尚難達到個人客製化動作並即時線上安裝執 行的目標。因此,如何設計一個有延展性的虛擬 環境系統,讓使用者也能撰寫客製化的動畫程 式,動態取得環境及其他使用者的資訊,以做進 一步的互動設計,是一個極具挑戰性的問題。 語意虛擬環境的研究提出以豐富的語意來 描述虛擬環境。語意虛擬環境使用一個抽象的觀 點來看待存在的虛擬環境,並且利用語意網 (Semantic Web)的技術來描述世界模型和網路通 訊模型的語意[17]。使用語意網的目的在於讓機 器也能夠了解在虛擬環境中,場景所代表的涵 義。面對可能多變且複雜的虛擬環境,語意虛擬 環境提供一個在虛擬環境上開發新元件的方 式,使得這些新元件可以在具有語意的虛擬環境 下重複使用,突破不同虛擬環境間的侷限。 IMNET[9]是一個由我們自行開發,以XML 為 基 礎 的 主 從 式 虛 擬 環 境 系 統 , 透 過XAML (eXtensible Animation Modeling Language)語言 的設計讓使用者可以整合不同層次的動畫指令 於同一腳本中,以操作虛擬環境中的人物模型。 XAML另一個設計目標便是讓腳本的設計更具 延展性。如圖11中,<AnimItem>是XAML中動畫 元 件 的 基 本 單 位 , 而 <AnimHigh> 及 <AnimImport> 是XAML中所提供以高階指令及 檔 案 匯 入 的 方 式 產 生 動 畫 的 標 籤 。 其 中 , <AnimPlugin>的標籤讓使用者可以嵌入系統未 內建的動畫元件或應用模組,包含在此標籤中的 XML碼將交由相對應的外部處理程式進一步處 理,因此可以達到擴充的目的。但是,這些對應 必須在程式開始執行前寫入組態檔中,方能使系 統順利找到處理特定標籤的程式。如果系統要更 新動畫程序或加入新的標籤,都必須重新啟動系 統方式完成。因此,我們亟需一個讓使用者所設 計的動畫程序能動態載入的機制,以實現語意虛 擬環境中動畫程序共享的目的。 更具體而言,本研究項目的目的有兩個:第 一、提供一個動態載入動畫程序的機制,以達到 讓使用者自行客製化虛擬角色之行為及動畫程 序共享的目的。第二、以Ontology的形式設計環 境中虛擬物體的語意描述,讓動畫程序能透過詢 問語意的方式與環境產生客製化的互動。 (二) 系統設計 我們在IMNET的系統中加入OSGi的機制, 讓虛擬環境的使用者可以動態安裝開發者提供 的動作到虛擬人物上,在執行時間(run time)完成 元件的整合,而不需要重新啟動系統。OSGi Framework是由OSGi Alliance所制定的一套軟體 元件或服務的佈署與執行平台[16]。OSGi主要是 希望能增加軟體的重複使用性、平台的獨立性、 解決軟體複雜度日漸龐大問題、由物件導向到服 務導向等等。 IMNET虛擬環境系統中核心的軟體元件為 IMBrowser 3D瀏覽器,而此瀏覽器的特色在於能 剖析並處理以XAML指定的動畫腳本。圖12為 XAML動畫系統(如IMBrowser)的架構。此系統 主要由XAML語法解析器(Parser)、動畫管理器 (Animation Manager) 、 資 源 控 制 器 (Resource Controller)和新增的OSGi Framework所組成。在 語法解析器轉換XAML成為動畫結構樹的過程 中,每一個XAML文件的標籤都會對照一套特定 的轉換模式,轉換成相對應的動畫結構樹節點。 本系統與先前版本不同的是當某個標籤並非基 本的XAML標籤,也還沒有註冊到語法解析器的 圖10 轉切實驗結果的截圖

<AnimItem model=”avatar” playMode=”seq”> <AnimHigh>Walk to Door</AnimHigh> <AnimImport src=”PushDoor” /> <AnimIetm>

<AnimPlugin><Audio src=”scream.wav” /> </AnimPlugin>

<AnimItem model=”door” DEF=”DoorOpening> … </AnimItem>

</AnimItem>

<AnimImport src=”Shock” /> </AnimItem>

(8)

時 候 , 本 系 統 的 語 法 解 析 器 會 試 著 在OSGi Framework中尋找可以處理這個標籤的轉換模 式,或是經由標籤中的codebase屬性直接下載標 籤的轉換模式,並且自動安裝到OSGi Framework 中。有關在OSGi中實現軟體元件Bundle的作法細 節,請參見我們已發表的論文[5]。 在具備了動畫程序軟體元件自動下載安裝 的 能 力 後 , 本 研 究 第 二 個 重 要 的 工 作 是 以 Ontology來做為在動畫軟體元件在設計上所能 依循的虛擬世界描述方式,讓程式可透過語意的 描述取得物件的資訊,如物體的名稱、幾何、高 度和2D近似值等資訊(圖13)。在化身的語意 上,我們也設計了一套Ontology來描述化身所包 含的資訊,如圖14。和一般物體不同的地方在於 化身的變化性較大,如位置和狀態等資訊。另 外,我們也在IMNET的通訊協定中新增了詢問訊 息的機制,讓元件在互動時可以藉由詢問的方 式,取得對方客戶端的化身資訊。 (三)

實驗成果

我們以一個使用者設計的「鞠躬動作」為例 說明本系統的運作方式,圖15所示便是在此範例 中產生的鞠躬動作的截圖。我們假設開發者負責 實際做出符合規定的動畫產生bundle,然後上傳 到網路空間,並制定讓其他使用者執行的XML 片段,如圖16。使用者當接收到開發者所制定的 XML 片 段 時 , 將 自 動 下 載 開 發 者 的 程 式 到 IMNET系統中,並且即時執行結果

,產生動畫

。 為了展示虛擬物件語意所能帶來的效益,我 們以兩個應用情境的範例說明。第一、我們希望 透過虛擬世界中的語意讓路徑規劃器能夠遵守 虛擬世界的規則。以過馬路為例,在虛擬世界中 有人行道和斑馬線的模型,而在虛擬世界中的規 則是化身會沿著人行道和斑馬線行走。我們在人 XAML Parser Schedule Manager 3D Scene Motion Library Model Library Motion Template Resource Controller fetch Bundle Bundle :Services search add root invoke update Animation Tree Animation Manager OSGi Framework 圖12 XAML 動畫系統的架構 圖15 鞠躬動作範例 :類別 :一般屬性 :繼承屬性 WorldObject IMWorld hasObject* isFocusedOn isa hasWorldInfo file WorldInfo HotPosition x y z description Transform Scale Translation Rotation Polygon hasGeometry hasApproximation hasTransform file hasPolygon value hasTranslation hasRotation hasScale x x x y y y z z z rot tag baseLevel name height Approximation2D GeometryInfo Ground 圖13 虛擬世界 Ontology 設計藍圖 Avatar hasFriend* Position hasPosition x geometryInfo status name updateTimestamp y z updateTimestamp Behavior name updateTimestamp hasBehavior* package codeBase UI :類別 :一般屬性 圖14 化身 Ontology 設計

(9)

行道和斑馬線的物件上加註sidewalk和crosswalk 的語意標籤,讓路徑規劃器在處理到包含這些標 籤的物件時,能夠降低這些物件的位能場(此範 例是以人工位能場技術進行路徑搜尋),讓最後 搜尋到的路徑能夠趨近於這些標註sidewalk和 crosswalk標籤的物件(如圖17(a)範例所示)。圖 17(b)則是展示這個路徑計畫器能從虛擬物件的 語意中找出障礙物的區域,以產生避碰的路徑。 第二、我們希望能讓不同客戶端的動畫元件 進行互動,而在溝通上是透過客製化的標籤,來 取得雙方化身所擁有的Ontology資訊,並利用取 得的語意來完成動畫元件間的互動。圖18為化身 互動之步驟的示意圖。第一步,互動請求者會將 互動要求以XML的格式傳送給互動回應者;第 二步,互動雙方會將此互動所需的元件安裝到系 統中;第三步,在互動過程中,互動請求者端的 程式會依據使用者或虛擬使用者的需求,將詢問 傳送給互動回應者;互動回應者也會提供適當的 回答給互動請求者。 在圖19中我們展示真實使用者和虛擬使用 者間的互動。真實使用者向扮演看門者的虛擬使 用者詢問好友的位置;看門者會透過Ontology方 式取得詢問者的好友資訊,然後決定是否要告知 其所要求的資訊。User1安排看門者為來訪的客 人提供資訊(圖19 (1~2))。當User2接近到問答的 範圍時,看門者便轉身面向User2,並詢問“May I help you?”。一開始User2可能是不小心路過, 所以選擇的回答是“Just look around.”,因此看 門者就回了一句“Have a good day!” (圖19 (3~5))。此時看門者的狀態會被設為FINISHED,

並等待使用者離開問答的範圍並回復到IDLE的

狀態(圖19 (6))。然後User2第二次接近看門者,

並選擇“I’m looking for my friend.”。看門者 詢 問 “Who ’ s your friend? ” , User2 回 答 “Jerry”。看門者這時就會在化身的Ontology中 詢問Jerry是否有一位朋友叫做User2。如果是的 話,看門者就將位置訊息告知User2;如果不是 的話,看門者就會回答“Jerry does not seem to know you.”;如果沒有Jerry這位使用者,看門 者就會回答“Jerry is not in.” (圖19(7~9))。

五、 成果自評:

本研究計畫已經依照預定的研究項目,完成 了以下工作: 1. 我們設計了一個程序式動畫的實驗平台,並 以多個下半身運動為例,說明此平台的通用 型及彈性。 2. 我們設計一個第三人稱的智慧型攝影機即時 規劃器,能根據攝影學的原則即時產生動畫 角色的追蹤及轉切運動。

<Bow package='imlab.osgi.bundle.interfaces' codebase='http://imlab.cs.nccu.edu.tw/bow.jar' /> 圖16 含有 bundle 資訊的 XML 片段 (a) (b) 圖17 由路徑規劃器產生之路徑的範例。(a) 將斑 馬線及人行道納入考量後產生的路徑、(b) 避開環 境中障礙物的路徑 Client B IMNET Communication Module Components Ontology Client A IMNET Communication Module Components 1) request 3) interaction messages 2) components install Ontology 圖18 化身互動之步驟 (1) (2) (3) (4) (6) (7) (8) (9) (5) 圖19 User2 與宴會看門者之互動

(10)

3. 我們以過去所設計的多人虛擬環境為基礎, 加入OSGi元件軟體的機制以執行其他使用者 所設計的動畫元件,並透過Ontology的方式取 得環境中物體的語意資訊。 本計畫所獲致的成果,已整理發表於知名國 際 期 刊 及 學 術 研 討 會 中[5][6][11][12][13]; 另 外,計有兩位同學根據本研究的成果,完成碩士 論文,並已順利畢業投入職場或出國深造。我們 相信在此計畫中,我們已經建立了一個具有延展 性的虛擬環境實驗平台,並具備攝影機即時自動 規劃的能力。未來我們將就數位演員的自主推理 能力作進一步的研究,以達在多人虛擬環境中即 時運動計畫的目標。

六、 參考文獻

[1] R. Bohlin and L. E. Kavraki, “Path

plan-ning using lazy PRM,” in IEEE Int. Conf.

on Robotics & Automation, pp .521-528,

2000.

[2]

R. Bohlin and L. E. Kavraki, “A Lazy

Probabilistic Roadmap Planner for Single

Query Path Planning,” in Proc. of IEEE

Intl. Conf. on Robotics and Automation,

2000.

[3] A. Bruderlin and T. W. Calvert. Knowl-edge-Driven, “Interactive Animation of Hu-man Running,” Graphics Interface 1996, pp. 213-221, 1996.

[4] P. F. Chen and T. Y. Li, “Generating Humanoid Lower-Body Motions with Real-time Plan-ning,” Proc. of 2002 Computer Graphics

Workshop, 2002.

[5] Y.-L. Chu, T.-Y. Li, and C.-C. Chen, “User Pluggable Animation Components in Multi-user Virtual Environment,” Intl. J. of

Virtual Reality, 7(3):31-36, 2008.

[6] Y.L. Chu, and T.Y. Li, “Using Pluggable Pro-cedures and Ontology to Realize Semantic Virtual Environments 2.0,” in Proc. of the 7th

ACM SIGGRAPH Intl. Conf. on Virtual Reality Continuum and Its Applications in Industry (VRCAI), Singapore, 2008.

[7] L. Kavraki, P. Svestka, J.C. Latombe and M. H. Overmars, “Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Space,” IEEE Trans. On Robotics and

Anima-tion, 12 (4): 566-580, 1996.

[8] T.Y. Li, M.Y. Liao, J.F. Liao, “An Extensible

Scripting Language for Interactive Animation in a Speech-Enabled Virtual Environment,”

Proc. of the IEEE Intl. Conf. on Multimedia and Expo (ICME2004), Taipei, Taiwan, 2004.

[9] T.Y. Li, M.Y. Liao, and P.C. Tao. IMNET: An Experimental Testbed for Extensible Multi-user Virtual Environment Systems.

IC-CSA 2005, LNCS 3480, O. Gervasi et al.

(Eds.), pp. 957–966, 2005.

[10]T. Y. Li and T. H. Yu. “Planning Tracking Mo-tions for an Intelligent Virtual Camera,” in

Proc. of IEEE Int. Conf. on Robotics and Automation, 1999.

[11]T.-Y. Li and C.C. Cheng, “Real-Time Camera Planning for Navigation in Virtual Environ-ment,” in Proc. of the 8th Intl. Symp. on Smart

Graphics, Rennes, France, Lecture Notes in Computer Science 5166, . pp. 118-129, 2008.

[12] C.H. Liang and T.Y. Li. “Simulating Human Low-Posture Motions with Procedural Anima-tion,” Proc. of 2007 Computer Graphics

Workshop, Taiwan, 2007.

[13] C.H. Liang, P.C. Tao, and T.Y. Li, “IMHAP – An Experimental Platform for Humanoid Pro-cedural Animation,” Proc. of Third

Interna-tional Conference on Intelligent Information Hiding and Multimedia Signal Processing,

2007.

[14]T. C. Lin, Z. C. Shih, Y. T. Tsai, “Cinematic Camera Control in 3D Computer Games,”

in-The 12th Int. Conf. Central Europe on

Com-puter Graphics, Visualization and ComCom-puter Vision, 2004.

[15]D. Nieuwenhuisen and M. H. Overmars, “Mo-tion Planning for Camera Movements in Vir-tual Environment,” in Proc. IEEE Int. Conf. on

Robotics and Automation, 2004.

[16]OSGi Alliance, http://www.osgi.org/

[17]K. Otto, “The Semantics of Multi-user

Virtual Environments,” in Proc. of

Work-shop towards Semantic Virtual

Environ-ments' (SVE 2005) workshop, Switzerland,

March 2005.

[18] Second Life, http://secondlife.com.

[19] M. van de Panne, “From Footprints to Anima-tion,” Computer Graphics Forum, 16(4): 211-223, October 1997.

[20] A. Witkin and Z. Popovic, “Motion Warping,”

Proceedings of ACM SIGGRAPH, Addison Wesley, pp.105-108, August 1995.

(11)

可供推廣之研發成果資料表

□ 可申請專利 ■ 可技術移轉

日期:97 年 10 月 30 日

國科會補助計畫

計畫名稱:以語意虛擬環境之概念建置即時動畫的實驗平台

計畫主持人:李蔡彥

計畫編號: NSC 96-2221-E-004-008-學門領域:資訊工程

技術

/創作名稱

以語意虛擬環境概念所建置的即時動畫實驗平台

發明人

/創作人

李蔡彥

本計畫所產生的技術包含三個部分:

第一、

一個通用型的程序式動畫實驗平台,可以用來設計並測試動畫角 色的程序式動畫。 第二、一個智慧型第三人稱攝影機的即時規劃器,能根據攝影學的原則 在虛擬環境中即時產生動畫角色的追蹤及轉切運動。

第三、在多人虛擬環境中,加入OSGi元件軟體的機制,讓使用者

可以

Web 2.0方式執行其他使用者所設計的動畫元件,並透過

Ontology的方式取得環境中物體的語意資訊。

技術說明

The technologies developed in this project include three parts:

1. A general purpose experimental platform for procedural animation

that can be used to design and test user-designed animation procedures.

2. An intelligent third-person camera planner that adopt principles from

cinematography to generate tracking and intercut motions in real time

in virtual environment.

3. We have incorporated the OSGi mechanism into our multi-user

vir-tual environment to enable the run-time installation and execution of

animation procedures designed by other users. These procedures can

access the semantics of virtual object via ontology that we have

de-signed.

可利用之產業

可開發之產品

可用來設計新一代的即時動畫、線上遊戲等虛擬環境系統,讓使用

者可以分享自行設計的動畫或互動程序。

技術特點

克服一般虛擬環境缺乏彈性及延展性的缺點,本技術可提高動畫角

色動作的彈性及降低製作成本,並透過

Web2.0 及語意虛擬環境的

精神,讓動畫程序設計的工作,可由一般使用者來共同貢獻。

推廣及運用的價值

在虛擬環境或線上遊戲的應用中,以智慧型動畫角色的技術及元件

軟體技術,提高即時動畫的豐富性及延展性。

※ 1.每項研發成果請填寫一式二份,一份隨成果報告送繳本會,一份送 貴單位研

發成果推廣單位(如技術移轉中心)

※ 2.本項研發成果若尚未申請專利,請勿揭露可申請專利之主要內容。

3.本表若不敷使用,請自行影印使用。

數據

圖 11  以 XAML 語言指定及擴充動畫腳本的範例

參考文獻

相關文件

In this project, we developed an irregular array redistribution scheduling algorithm, two-phase degree-reduction (TPDR) and a method to provide better cost when computing cost

In this thesis, we have proposed a new and simple feedforward sampling time offset (STO) estimation scheme for an OFDM-based IEEE 802.11a WLAN that uses an interpolator to recover

This research proposes a Model Used for the Generation of Innovative Construction Alternatives (MUGICA) for innovation of construction technologies, which contains two models:

In terms of external cognitive factors, this research confirmed that assurance, apathy and price reasonability as part of the service quality dimension have influence on

In the development of data acquisition interface, matlab, a scientific computing software, was applied to acquire ECG data with real-time signal processing.. The developed

In the proposed method we assign weightings to each piece of context information to calculate the patrolling route using an evaluation function we devise.. In the

The purpose of this research lies in building the virtual reality learning system for surveying practice of digital terrain model (DTM) based on triangular

[16] Goto, M., Muraoka, Y., “A real-time beat tracking system for audio signals,” In Proceedings of the International Computer Music Conference, Computer Music.. and Muraoka, Y.,