趙建軍,黃竣鵬,陳俊良
基于Leap Motion的電影前期預(yù)演人機(jī)交互方法
趙建軍,黃竣鵬,陳俊良
(北京電影學(xué)院影視技術(shù)系,北京 100088)
隨著虛擬現(xiàn)實(shí)(VR)技術(shù)的發(fā)展,虛擬預(yù)演逐漸成為電影制作流程中不可或缺的一環(huán),如何使用自然、多模態(tài)的交互方式,結(jié)合三維實(shí)時(shí)渲染引擎,提高電影制作人員在前期預(yù)演中的參與感,是該領(lǐng)域的重要研究?jī)?nèi)容。針對(duì)當(dāng)前虛擬預(yù)演中使用的交互方式大多為光學(xué)運(yùn)動(dòng)捕捉系統(tǒng)等,存在價(jià)格昂貴、操作難度高、便攜性差等問(wèn)題。提出一種基于Leap Motion的電影前期預(yù)演人機(jī)交互方式,在獲得精準(zhǔn)數(shù)據(jù)的同時(shí),大大降低了操作難度與設(shè)備成本,電影制作人員使用手勢(shì)交互控制虛擬角色的運(yùn)動(dòng)軌跡,完成不同運(yùn)動(dòng)狀態(tài)的切換,并結(jié)合運(yùn)動(dòng)捕獲數(shù)據(jù)庫(kù),直接參與到前期預(yù)演中。通過(guò)方案驗(yàn)證,該方法的用戶體驗(yàn)更加自然、友好、直觀和高效。
Leap Motion;電影前期預(yù)演;人機(jī)交互;虛擬現(xiàn)實(shí);虛擬角色
電影是科技與藝術(shù)相結(jié)合的產(chǎn)物,電影技術(shù)的重大變革,均伴隨著科學(xué)技術(shù)的重大突破。近年來(lái),隨著虛擬現(xiàn)實(shí)(virtual reality,VR)技術(shù)與計(jì)算機(jī)圖形學(xué)的飛速發(fā)展,電影制作方式也發(fā)生著新的變化,其中前期預(yù)演是影視制作中新興的應(yīng)用技術(shù)。在電影開拍之前,對(duì)一些鏡頭甚至整部影片進(jìn)行可視化預(yù)覽且無(wú)需承擔(dān)實(shí)際拍攝成本,在虛擬環(huán)境下可幫助電影制作團(tuán)隊(duì)進(jìn)行技術(shù)論證、探討影片敘事、規(guī)劃拍攝流程等。
前期預(yù)演的加入,使得電影制作呈現(xiàn)出后期流程“前置”化的特征。這種可視化呈現(xiàn)方式,能夠方便電影創(chuàng)作團(tuán)隊(duì)進(jìn)行構(gòu)思設(shè)計(jì)及電影拍攝的預(yù)覽。當(dāng)前大部分的鏡頭預(yù)演是借助于傳統(tǒng)的三維軟件如Maya,3DMax和Motion Builder等實(shí)現(xiàn),這些軟件借助于動(dòng)捕系統(tǒng)等技術(shù)手段,進(jìn)行大部的分預(yù)演鏡頭制作。此外,市面上也有多種專業(yè)軟件用于幫助電影創(chuàng)意設(shè)計(jì)探索和創(chuàng)作團(tuán)隊(duì)頭腦風(fēng)暴,如Amazon Storyteller,Sketchup,F(xiàn)rameForge 3D Studio,Cinebox和iClone等,雖然功能各有不同,但可在不同程度上完成對(duì)鏡頭畫面進(jìn)行可視化預(yù)覽。
然而,現(xiàn)有的前期預(yù)演軟件及呈現(xiàn)方式,一般由動(dòng)畫師參與設(shè)計(jì)三維動(dòng)畫,通過(guò)生成動(dòng)畫鏡頭,來(lái)指導(dǎo)電影現(xiàn)場(chǎng)拍攝。電影主創(chuàng)團(tuán)隊(duì)大多不能實(shí)時(shí)、便捷地參與鏡頭設(shè)計(jì),若要參與,需使用鼠標(biāo)鍵盤進(jìn)行虛擬角色的動(dòng)畫設(shè)計(jì)、虛擬鏡頭的設(shè)置等,大大降低了創(chuàng)作團(tuán)隊(duì)的創(chuàng)作設(shè)計(jì)體驗(yàn)感及創(chuàng)作效率。針對(duì)上述問(wèn)題,本文提出了一種基于Leap Motion的人機(jī)交互方式,創(chuàng)作團(tuán)隊(duì)簡(jiǎn)單使用手勢(shì)交互的方式,控制虛擬拍攝中的角色動(dòng)畫軌跡,以及控制角色在運(yùn)動(dòng)狀態(tài)間進(jìn)行切換,達(dá)到參與虛擬預(yù)演動(dòng)畫設(shè)計(jì)的效果,使得電影創(chuàng)作人員能夠便捷地參與到電影的前期預(yù)演中。
Leap Motion 是一種人機(jī)交互中的體感控制器,可利用手勢(shì)識(shí)別采集數(shù)據(jù),即借助手掌和手指的動(dòng)作感應(yīng)技術(shù)進(jìn)行信息輸入,完成人機(jī)互動(dòng)。因其設(shè)備使用方式簡(jiǎn)單、體積小、價(jià)格低廉、手勢(shì)精度高、可配合多種傳感設(shè)備進(jìn)行輔助操作,為人機(jī)交互的應(yīng)用提供了一種新的思路。Leap Motion由于直接捕獲真實(shí)的手勢(shì)運(yùn)動(dòng)數(shù)據(jù),其數(shù)據(jù)更自然、逼真、仿真度高。同時(shí),支持雙手交互控制,可在極端情況下進(jìn)行動(dòng)作采集、跟蹤,結(jié)果更精確、穩(wěn)定、識(shí)別度好。
在人機(jī)交互領(lǐng)域,KHALAF 等[1]對(duì)多種手勢(shì)識(shí)別采集設(shè)備進(jìn)行對(duì)比測(cè)試,在基于視覺(jué)的手勢(shì)識(shí)別設(shè)備中,測(cè)試了RealSense,Leap Motion和Kinect的用戶體驗(yàn)、認(rèn)知需求、舒適度和使用性能,測(cè)試結(jié)果表明Leap Motion的表現(xiàn)最佳。Leap Motion在多個(gè)行業(yè)內(nèi)被廣泛應(yīng)用:在航天領(lǐng)域中,胡弘等[2]提出了基于Leap Motion采集設(shè)備的關(guān)鍵點(diǎn)模型手姿態(tài)參數(shù)估計(jì),驅(qū)動(dòng)虛擬手運(yùn)動(dòng);在醫(yī)療領(lǐng)域中,孫國(guó)道等[3]提出基于雙Leap Motion的三維可視化體感交互系統(tǒng),以減少手指混疊現(xiàn)象、提高設(shè)備易用性;教學(xué)領(lǐng)域中,VASYLEVSKA 等[4]利用Leap Motion進(jìn)行VR和AR的教學(xué)構(gòu)建和發(fā)展,提升VR用戶使用體驗(yàn);在安全領(lǐng)域,基于Leap Motion傳感設(shè)備,利用手指的速度和傾斜角的特征進(jìn)行生物身份識(shí)別認(rèn)證,MARUYAMA 等[5]利用手指的關(guān)節(jié)間三維空間坐標(biāo)計(jì)算出的手指內(nèi)和手指間的特征值進(jìn)行用戶驗(yàn)證,結(jié)果顯示其僅使用關(guān)節(jié)間距離作為特征進(jìn)行識(shí)別,識(shí)別率高達(dá)84.65%。除此,KAMAISHI和UDA[6]借助Leap采集的數(shù)據(jù),基于動(dòng)作識(shí)別的用戶界面設(shè)計(jì),提升工作效率;HERNOUX等[7]利用Leap的高精度采集特性,實(shí)時(shí)將3D人體運(yùn)動(dòng)采集應(yīng)用于機(jī)器人動(dòng)態(tài)運(yùn)動(dòng),使機(jī)器人能夠應(yīng)對(duì)和執(zhí)行多種復(fù)雜的任務(wù);美國(guó)宇航局使用Leap Motion模擬控制太空機(jī)器人登陸火星,提升用戶使用操作體驗(yàn)。
在影視娛樂(lè)行業(yè),HANTRAKUL和KACZMAREK[8]將Leap傳感器與合成器、揚(yáng)聲器相連接,使用手指和手部運(yùn)動(dòng)對(duì)合成器進(jìn)行觸發(fā),實(shí)現(xiàn)了設(shè)備控制聲音合成和交互式現(xiàn)場(chǎng)表演的應(yīng)用;DESNOYERS- STEWART等[9]通過(guò)Leap Motion與HTC Vive,在虛擬環(huán)境中操作混合現(xiàn)實(shí)的樂(lè)器,使用戶在視覺(jué)、觸覺(jué)和本體感覺(jué)吻合中獲得良好的用戶體驗(yàn);XU[10]借助Leap Motion采集手的位置和手勢(shì)數(shù)據(jù),對(duì)機(jī)器人角色進(jìn)行動(dòng)畫交互。
綜上,Leap Motion體感控制器體積小、價(jià)格低廉,采集數(shù)據(jù)精度高、穩(wěn)定性強(qiáng)、識(shí)別度好、仿真度高,符合人體工程規(guī)律,可應(yīng)用于多種領(lǐng)域。然而在當(dāng)下影視領(lǐng)域的虛擬制作中,人機(jī)交互控制仍然采用傳統(tǒng)的鼠標(biāo)鍵盤操作,電影從業(yè)者體驗(yàn)感差,參與度低?;诖耍疚奶岢隽艘环N基于Leap Motion的虛擬預(yù)演人機(jī)交互系統(tǒng)設(shè)計(jì)方案,在渲染引擎中通過(guò)Leap Motion體感控制器對(duì)場(chǎng)景內(nèi)的數(shù)字角色進(jìn)行控制與操作,解決藝術(shù)家對(duì)角色快捷控制的需求,提升用戶體驗(yàn),同時(shí)實(shí)現(xiàn)虛擬預(yù)演的高效制作。
在電影前期預(yù)演中,非常重要的內(nèi)容是通過(guò)設(shè)計(jì)演員的走位,進(jìn)而設(shè)計(jì)鏡頭,演員的走位設(shè)計(jì)分為2類:設(shè)計(jì)演員的軌跡和安排演員在不同的運(yùn)動(dòng)類型之間進(jìn)行切換。如圖1所示,為了使得電影創(chuàng)作人員能夠在電影前期預(yù)演中充分發(fā)揮作用,尤其是設(shè)計(jì)虛擬角色運(yùn)動(dòng),本文設(shè)計(jì)了一種基于Leap Motion的人機(jī)交互方式。首先需分別設(shè)計(jì)虛擬角色的運(yùn)動(dòng)軌跡以及進(jìn)行不同運(yùn)動(dòng)狀態(tài)的切換,然后結(jié)合運(yùn)動(dòng)數(shù)據(jù)庫(kù),生成自然的虛擬角色運(yùn)動(dòng),用于鏡頭設(shè)計(jì)與前期預(yù)演流程。
圖1 基于Leap Motion的人機(jī)交互方式
在虛擬預(yù)演的制作過(guò)程中,如何讓制作人員快速生成角色運(yùn)動(dòng)軌跡是虛擬預(yù)演人機(jī)交互的重要研究部分。為此,本文提出基于手勢(shì)識(shí)別的軌跡規(guī)劃方法,快速生成角色運(yùn)動(dòng)軌跡。其使用Leap Motion獲得采樣點(diǎn),分2步驅(qū)動(dòng)角色運(yùn)動(dòng):對(duì)采樣點(diǎn)進(jìn)行再處理獲得控制路徑離散點(diǎn);利用路徑離散點(diǎn)驅(qū)動(dòng)角色運(yùn)動(dòng)。
2.1.1 采樣點(diǎn)再處理
Leap Motion采集到的手部位置抖動(dòng)非常明顯,為獲得一條相對(duì)平滑且準(zhǔn)確的控制路徑,在利用路徑離散點(diǎn)驅(qū)動(dòng)角色運(yùn)動(dòng)中,本文提出數(shù)據(jù)重采樣、數(shù)值濾波、根據(jù)縮放進(jìn)行插值等3步進(jìn)行處理。
步驟1.在獲取離散點(diǎn)后,對(duì)數(shù)據(jù)進(jìn)行重采樣,減少手部運(yùn)動(dòng)緩慢時(shí)路徑在一個(gè)區(qū)間內(nèi)不斷抖動(dòng)的現(xiàn)象。設(shè)置一個(gè)閾值(單位為像素),當(dāng)采樣點(diǎn)之間歐氏距離小于該閾值時(shí),可忽略。當(dāng)實(shí)驗(yàn)閾值設(shè)置為6時(shí),可大幅減少抖動(dòng),同時(shí)對(duì)路徑的連續(xù)性影響較小。重采樣算法1為:
設(shè)重采樣離散點(diǎn)序列為,采集離散點(diǎn)序列為,閾值為。
算法1.
輸入:, array
輸出: array
該方法可用在獲取離散采樣點(diǎn)上。若采樣到手部位置為1,路徑離散點(diǎn)序列中最后的離散點(diǎn)為,(1,)≥,則將1保存在中,否則丟棄該點(diǎn)。
步驟2. 進(jìn)行重采樣處理后,需要對(duì)數(shù)據(jù)進(jìn)行濾波,進(jìn)一步減少抖動(dòng)。傳統(tǒng)的卡爾曼濾波、中值濾波等方式,可使沖擊信號(hào)出現(xiàn)延遲,缺少尖峰等現(xiàn)象。在路徑規(guī)劃中,如果路徑中存在折角,經(jīng)濾波后會(huì)變?yōu)閳A弧,當(dāng)折角為銳角或直角時(shí),該現(xiàn)象尤為明顯。為解決此問(wèn)題,在濾波中首先判斷采樣點(diǎn)是否為路徑角點(diǎn),如果是則保留。獲取當(dāng)前采樣點(diǎn)前后各3個(gè)點(diǎn),在此范圍內(nèi),將路徑近似為2段直線。濾波算法如下:
(1) 設(shè)重采樣離散點(diǎn)序列為,=(x,y)為其第個(gè)點(diǎn),取當(dāng)前采樣點(diǎn)前后各3個(gè)點(diǎn),用最小二乘法分別擬合直線,即=1+2,其最小二乘法的矩陣形式為
可推出-3,-2,-1,,所擬合直線*1=1+2,即
同理,,+1,+2,+3所擬合直線*2=3+4,即
利用2,4計(jì)算出*1,*2方向向量之間的夾角,當(dāng)夾角大于90°時(shí),標(biāo)記采樣點(diǎn)A為角點(diǎn)。
(2) 利用角點(diǎn)進(jìn)行分段,2個(gè)角點(diǎn)之間的采樣點(diǎn)使用滑動(dòng)平均濾波(算法2)。
算法2實(shí)現(xiàn)如下:設(shè)上一步處理好的重采樣離散點(diǎn)序列為,濾波處理后離散點(diǎn)序列為,角點(diǎn)序列為。
算法2.
輸入:, array
輸出: array
步驟3. 根據(jù)縮放進(jìn)行插值。上述獲取的路徑采樣點(diǎn)是處于Leap Motion的分辨率范圍中,若將路徑映射在虛擬場(chǎng)景中,需進(jìn)行縮放。為使縮放后路徑的采樣點(diǎn)依然保持較好的分布,需對(duì)路徑進(jìn)行重采樣或插值,方法為:
(1) 縮放比例是通過(guò)場(chǎng)景中需要的路徑空間與離散點(diǎn)分布的空間相除得到的,其中像素與距離的換算比為1 px/0.05 m。
(2) 對(duì)離散點(diǎn)進(jìn)行歸一化,并縮放到虛擬場(chǎng)景中。
(3) 根據(jù)縮放比例,對(duì)縮放后的路徑離散點(diǎn)進(jìn)行插值或降采樣,確保場(chǎng)景中點(diǎn)的密集程度相對(duì)均勻。其中插值的方式為使用三次樣條對(duì)2個(gè)離散點(diǎn)之間的空隙進(jìn)行插值,空隙中需要插值-1個(gè)點(diǎn),若<1則丟棄相應(yīng)比例的點(diǎn)。
2.1.2 路徑離散點(diǎn)驅(qū)動(dòng)角色運(yùn)動(dòng)
將處理后的離散點(diǎn)按獲取時(shí)間排列,并作為角色的運(yùn)動(dòng)路徑。到達(dá)一個(gè)點(diǎn)后,可將下一個(gè)點(diǎn)作為逼近的目標(biāo),按照角色的運(yùn)動(dòng)速度進(jìn)行移動(dòng),逐漸逼近目標(biāo)點(diǎn)。由于角色處于移動(dòng)狀態(tài),很難精確到達(dá)每一個(gè)目標(biāo)點(diǎn),故本文將目標(biāo)點(diǎn)變?yōu)橐粋€(gè)目標(biāo)圓,其直徑大于角色每幀運(yùn)動(dòng)距離,以解決角色陷入不斷逼近某個(gè)目標(biāo)點(diǎn)或移動(dòng)超過(guò)了目標(biāo)點(diǎn)而折返發(fā)生運(yùn)動(dòng)抖動(dòng)的情況,如圖2所示。
虛擬預(yù)演中對(duì)虛擬角色控制,通常是一個(gè)多狀態(tài)的過(guò)程,需要用戶進(jìn)行不同狀態(tài)間切換。在一個(gè)簡(jiǎn)單的控制元里,通過(guò)加入不同的附加條件,影響和控制角色的不同狀態(tài)。同時(shí),狀態(tài)的設(shè)計(jì)還需要符合用戶的操作控制思維。基于此思路,如圖3所示,Leap Motion作為角色運(yùn)動(dòng)控制采集器之外,還作為不同狀態(tài)間切換控制器。
圖2 運(yùn)動(dòng)軌跡逼近方法
圖3 運(yùn)動(dòng)狀態(tài)轉(zhuǎn)移示意圖
如圖4所示,用戶使用Leap Motion時(shí)手勢(shì)基本高度保持一致,角色保持默認(rèn)走路姿態(tài)。
圖4 步行狀態(tài)及手勢(shì)對(duì)應(yīng)圖
如圖5所示,用戶進(jìn)行握拳或手的三維空間坐標(biāo)高度接近傳感器平面,角色運(yùn)動(dòng)狀態(tài)切換為停止?fàn)顟B(tài),虛擬角色不再運(yùn)動(dòng)。
圖5 停止?fàn)顟B(tài)及手勢(shì)對(duì)應(yīng)圖
如圖6所示,用戶抬手到達(dá)一定高度時(shí),角色表現(xiàn)為跑步。
圖6 跑步狀態(tài)及手勢(shì)對(duì)應(yīng)圖
如圖7所示,用戶手掌位置向前或向上運(yùn)動(dòng)超過(guò)一定速度時(shí),角色進(jìn)行跳躍。
通過(guò)不同的手勢(shì)對(duì)角色的4種狀態(tài)進(jìn)行控制操作,如圖8所示。基于手勢(shì)的控制方式,不僅符合用戶對(duì)虛擬角色的控制習(xí)慣,同時(shí)提升了用戶體驗(yàn)。
圖7 跳躍狀態(tài)及手勢(shì)對(duì)應(yīng)圖
圖8 Leap Motion控制方式示意圖
通過(guò)上述的路徑獲取與狀態(tài)切換控制方法,使用者能夠便捷地交互控制虛擬數(shù)字角色。在電影制作中,預(yù)演動(dòng)畫生成除了要求交互性強(qiáng)之外,還需要角色的運(yùn)動(dòng)能夠自然逼真,具有一定的表現(xiàn)力。為此,在上述控制的基礎(chǔ)上,采用運(yùn)動(dòng)數(shù)據(jù)庫(kù),驅(qū)動(dòng)角色在發(fā)生位移等運(yùn)動(dòng)時(shí),肢體運(yùn)動(dòng)表現(xiàn)的自然逼真。
另本文還采用了BVH格式的數(shù)據(jù)庫(kù)。其為骨骼構(gòu)成和動(dòng)作數(shù)據(jù)庫(kù),廣泛支持各種動(dòng)畫制作軟件,業(yè)界許多動(dòng)捕數(shù)據(jù)庫(kù),均以BVH文件為發(fā)行格式。角色動(dòng)捕數(shù)據(jù)大大提升了角色運(yùn)動(dòng)的真實(shí)感,增強(qiáng)了虛擬預(yù)演的效果,給導(dǎo)演提供更大的創(chuàng)作空間。
前期預(yù)演中,虛擬角色的位置信息更為關(guān)鍵,而一些穿幫現(xiàn)象并不重要,故可采用同一組運(yùn)動(dòng)數(shù)據(jù)庫(kù)進(jìn)行不同角色的交互控制。一般需要使用與所驅(qū)動(dòng)的模型采用同樣骨骼結(jié)構(gòu)的BVH文件。本文采用了卡耐基梅隆大學(xué)的運(yùn)動(dòng)捕獲數(shù)據(jù)庫(kù)轉(zhuǎn)換得到BVH文件進(jìn)行測(cè)試驗(yàn)證。值得注意的是,BVH文件中角色的關(guān)節(jié)坐標(biāo),,軸朝向均為初始姿態(tài),即以右手坐標(biāo)系為標(biāo)準(zhǔn)的世界坐標(biāo)系下,,軸朝向。所有關(guān)節(jié)初始姿態(tài)的,,軸朝向均相同。
圖9首先將角色運(yùn)動(dòng)數(shù)據(jù)庫(kù)加載到引擎中。不同的手勢(shì),對(duì)應(yīng)于不同的運(yùn)動(dòng),如張手為步行,握拳為跳躍。根據(jù)手勢(shì)類型,選擇調(diào)用的運(yùn)動(dòng)類型。確定運(yùn)動(dòng)類型后,進(jìn)行BVH解析,得到動(dòng)作信息。在基于引擎的實(shí)現(xiàn)中,需要調(diào)整所驅(qū)動(dòng)角色的初始姿態(tài),并獲得初始姿態(tài),使得在后續(xù)操作中,每次驅(qū)動(dòng)角色,均需每個(gè)關(guān)節(jié)恢復(fù)到初始姿態(tài)再驅(qū)動(dòng)。
圖9 基于數(shù)據(jù)庫(kù)的虛擬角色交互控制
需注意的是,在現(xiàn)有的預(yù)演方案中,一部分使用運(yùn)動(dòng)捕獲系統(tǒng)直接控制虛擬的角色,另一部分使用基于物理的虛擬角色生成方法進(jìn)行人體運(yùn)動(dòng)控制。而本文所采用的方法,成本低廉、便攜,在不同的場(chǎng)合均可便捷使用。
為了驗(yàn)證方法的實(shí)用性,本文使用Unreal Engine,設(shè)計(jì)了電影前期預(yù)演的解決方案,如圖10所示。
為了確保前期預(yù)演的內(nèi)容能夠在拍攝中得以執(zhí)行,需要根據(jù)真實(shí)的設(shè)備,建立虛擬模型,其物理屬性需與真實(shí)的設(shè)備完全一致,如圖11~12所示。本文使用了與當(dāng)前電影主流真實(shí)攝影機(jī)、三腳架、燈具、視頻輔助設(shè)備等完全相同尺寸、相同數(shù)字屬性的虛擬資產(chǎn)模型,以便在前期預(yù)演中根據(jù)不同劇組、不同導(dǎo)演在不同場(chǎng)景、不同劇目中進(jìn)行選擇。
圖10 前期預(yù)演交互設(shè)計(jì)方案框架圖
為了驗(yàn)證對(duì)不同角色的交互控制,使用了多種虛擬角色模型,如圖13所示。
同樣,還使用圖像建?;蚴止そ5确绞?,設(shè)計(jì)虛擬場(chǎng)景,用于前期預(yù)演,如圖14所示。
為了方便不同的場(chǎng)景預(yù)演,在前期預(yù)演中預(yù)加載不同場(chǎng)景模型,方便在前期預(yù)演中實(shí)時(shí)切換所預(yù)演的場(chǎng)景,如圖15所示。
通過(guò)與真實(shí)對(duì)象相一致的數(shù)字資產(chǎn)庫(kù)的建設(shè),以保證前期預(yù)演的內(nèi)容在現(xiàn)場(chǎng)拍攝中復(fù)現(xiàn)出來(lái)。
在電影的拍攝中,導(dǎo)演、攝影師通過(guò)攝影機(jī)與畫面進(jìn)行交流創(chuàng)作。為了使導(dǎo)演、攝影師能夠以自身熟悉的方式進(jìn)行創(chuàng)意設(shè)計(jì),本文采用3D打印的半實(shí)物仿真攝影機(jī)鏡頭模型加回看監(jiān)視器模擬真實(shí)的拍攝工作環(huán)境,如圖16所示。攝影機(jī)鏡頭模型及數(shù)字參數(shù)與真實(shí)攝影機(jī)相似且一致。在其他虛擬資產(chǎn)保證一致性的前提下,前期預(yù)演設(shè)計(jì)的鏡頭能夠完美地在真實(shí)拍攝中呈現(xiàn)。
圖11 虛擬攝影機(jī)及鏡頭
圖12 虛擬燈具
圖13 虛擬角色
圖14 虛擬場(chǎng)景
圖15 虛擬場(chǎng)景選擇界面
圖16 攝影機(jī)模型及監(jiān)看設(shè)備
與光學(xué)跟蹤點(diǎn)的半實(shí)物模型相比較,本文的半實(shí)物模型能夠直接控制攝影機(jī)的內(nèi)外參數(shù),同時(shí)進(jìn)行實(shí)時(shí)記錄,有助于后續(xù)現(xiàn)場(chǎng)拍攝與后期制作。而與Mosys機(jī)械傳感器的半實(shí)物模型相比較,其造價(jià)低廉,在滿足前期預(yù)演需求的前提下,可讓攝影師通過(guò)個(gè)人友好的方式進(jìn)行虛擬創(chuàng)作。
在現(xiàn)有的虛擬角色交互方式解決方案中,大多使用運(yùn)動(dòng)捕獲系統(tǒng),該方式能夠由演員表演驅(qū)動(dòng)虛擬角色得到想要的表演效果。然而需要在前期預(yù)演系統(tǒng)中搭建運(yùn)動(dòng)捕獲系統(tǒng),除了經(jīng)濟(jì)成本之外,對(duì)于前期預(yù)演的環(huán)境有比較嚴(yán)格的要求。
由于在前期預(yù)演中,需要驗(yàn)證的是在特定的場(chǎng)景中,虛擬角色走位與攝影機(jī)走位的關(guān)系,其虛擬角色的運(yùn)動(dòng)細(xì)節(jié)是否充分、細(xì)致,對(duì)于預(yù)演效果影響有限。導(dǎo)演是否能夠方便、友好、快捷地控制虛擬角色的走位,是前期實(shí)時(shí)預(yù)演中需要解決的問(wèn)題。本文使用Leap Motion,在Unreal Engine引擎中基于手勢(shì)識(shí)別的方式進(jìn)行虛擬角色交互控制。并實(shí)時(shí)獲取手掌的運(yùn)動(dòng)軌跡,歸一化到場(chǎng)景窗口的地面后,虛擬角色根據(jù)指定的運(yùn)動(dòng)軌跡進(jìn)行運(yùn)動(dòng),并使用手勢(shì)上下滑動(dòng)控制運(yùn)動(dòng)速度。通過(guò)這種便攜、低廉的體感控制器,導(dǎo)演能夠?qū)崟r(shí)控制虛擬角色的走位,如圖17所示。
圖17 虛擬角色軌跡規(guī)劃控制
前期預(yù)演的主要產(chǎn)出是鏡頭的預(yù)演視頻。與動(dòng)畫預(yù)演或游戲過(guò)場(chǎng)動(dòng)畫的制作方式不同,前期預(yù)演需求是能夠充分、快捷地反映創(chuàng)作者的想法。即導(dǎo)演、攝影師的創(chuàng)作能夠?qū)崟r(shí)進(jìn)行可視化預(yù)覽,通過(guò)視頻監(jiān)看,判斷預(yù)演效果是否達(dá)到預(yù)期。如果達(dá)到預(yù)期,則該視頻可作為真實(shí)拍攝與后期特效制作的參考視頻。
如圖18所示,通過(guò)在搖桿上添加2個(gè)按鈕,控制虛擬攝影的拍攝與回看,這樣既能夠?qū)崟r(shí)將引擎中的渲染畫面?zhèn)魉偷綌z影師操作端,以供攝影師參考,也能夠?qū)㈩A(yù)演拍攝的鏡頭錄制供導(dǎo)演等回看,從而保證導(dǎo)演、攝影師的創(chuàng)作能夠得到可視化呈現(xiàn)。
圖18 前期預(yù)演錄制按鈕
在Intel i7-8700k,16 G內(nèi)存,NVIDIA RTX 2080實(shí)驗(yàn)環(huán)境中,幀速率測(cè)試結(jié)果為120 fps,相較于傳統(tǒng)鍵盤鼠標(biāo)操作,幀速率相同,但交互性更強(qiáng)。
為驗(yàn)證該虛擬角色交互控制系統(tǒng)的人機(jī)交互友好性與操作易用性,本文對(duì)19名志愿者進(jìn)行應(yīng)用實(shí)驗(yàn),志愿者均為在讀影視制作類專業(yè)本科生及研究生。
其中,交互性為用戶在使用不同交互方式達(dá)到同一鏡頭所需時(shí)間;易用性為零基礎(chǔ)用戶學(xué)習(xí)不同交互方式后進(jìn)行制作所需的學(xué)習(xí)時(shí)間。魯棒性為在不同交互方式下,達(dá)到同一鏡頭實(shí)現(xiàn)結(jié)果與預(yù)計(jì)要求位置的精準(zhǔn)度,衡量標(biāo)準(zhǔn)見表1~3。
表1 交互性指標(biāo)衡量表
表2 易用性指標(biāo)衡量表
表3 魯棒性指標(biāo)衡量表
志愿者使用鍵盤鼠標(biāo)操作與基于Leap Motion交互控制進(jìn)行對(duì)比,結(jié)果見表4。
表4 不同交互方式用戶體驗(yàn)評(píng)價(jià)
通過(guò)表4可見,基于Leap Motion的虛擬角色交互控制系統(tǒng)更加方便用戶使用,交互體驗(yàn)感更強(qiáng)。
與傳統(tǒng)的動(dòng)畫前期預(yù)演方式不同,本文實(shí)現(xiàn)了面向電影制作人員的前期預(yù)演中人機(jī)交互。本文的人機(jī)交互系統(tǒng)基于Unreal Engine實(shí)現(xiàn),其主要功能基于藍(lán)圖編程實(shí)現(xiàn)。本系統(tǒng)的特點(diǎn)如下:
(1) 面向電影制作人員的人機(jī)交互方式。在游戲動(dòng)畫及動(dòng)畫預(yù)演領(lǐng)域,修改鏡頭畫面必須重新進(jìn)行繁復(fù)的三維動(dòng)畫流程。與游戲制作行業(yè)不同,電影從業(yè)者不習(xí)慣動(dòng)畫編輯的方式,本系統(tǒng)通過(guò)簡(jiǎn)便、友好的交互方式,電影從業(yè)人員能夠充分在前期預(yù)演系統(tǒng)中表達(dá)自己的訴求,進(jìn)行藝術(shù)創(chuàng)作。
(2) 由于本系統(tǒng)使用了與真實(shí)世界完全一致的虛擬資產(chǎn),其預(yù)演的鏡頭可參考性更強(qiáng),預(yù)演中能夠?qū)崿F(xiàn)的內(nèi)容,在真實(shí)的拍攝中也能夠?qū)崿F(xiàn)。
(3) Unreal Engine引擎不僅僅是一款開放的實(shí)時(shí)游戲引擎,也是各種大型3D項(xiàng)目的組裝器。開放的引擎具有兼容各種硬件接口的能力,本系統(tǒng)能夠滿足前期預(yù)演對(duì)交互控制的外設(shè)接口需求,如手柄、遙控器等。
(4) 基于高效、高質(zhì)量的實(shí)時(shí)渲染,前期預(yù)演的畫面質(zhì)量相較于傳統(tǒng)的如Maya,3Dmax等工具,畫面逼真,便于使用者接受。
(5) 本系統(tǒng)使用的外接設(shè)備為3D打印模型及Leap Motion,成本低廉,無(wú)需昂貴的運(yùn)動(dòng)捕獲設(shè)備等系統(tǒng),也為后續(xù)電影制作人員遠(yuǎn)程協(xié)作進(jìn)行前期預(yù)演提供了可能。
隨著電影特效制作流程的后期前置化,數(shù)字資產(chǎn)庫(kù)在前期預(yù)演中起著非常重要的作用。虛擬資產(chǎn)庫(kù)不僅僅包括攝影機(jī)、鏡頭、滑軌等攝影器材的虛擬資產(chǎn),還包括燈光、道具等,以及虛擬角色的動(dòng)畫資源。為了能夠應(yīng)對(duì)不同題材、不同場(chǎng)景的預(yù)演需求,數(shù)字資產(chǎn)的需求將會(huì)非常巨大。
數(shù)字資產(chǎn)是否與真實(shí)一致,即數(shù)字參數(shù)與真實(shí)的參數(shù)是否完全相同,將在很大成度上影響著前期預(yù)演效果,這也是前期預(yù)演鏡頭能否在現(xiàn)場(chǎng)拍攝以及后期制作中“再現(xiàn)”的主要制約因素。
本文設(shè)計(jì)了符合影視制作人員使用習(xí)慣的人機(jī)交互方式,能夠使電影制作人員參與到電影前期預(yù)演中。該交互方式也為未來(lái)交互式影像的數(shù)字娛樂(lè)方式帶來(lái)一定的參考價(jià)值。
[1] KHALAF A S, ALHARTHI S A, DOLGOV I, et al. A comparative study of hand gesture recognition devices in the context of game design[C]//2019 ACM International Conference on Interactive Surfaces and Spaces. New York: ACM Press, 2019: 397-402.
[2] 胡弘, 晁建剛, 楊進(jìn), 等. Leap Motion關(guān)鍵點(diǎn)模型手姿態(tài)估計(jì)方法[J]. 計(jì)算機(jī)輔助設(shè)計(jì)與圖形學(xué)學(xué)報(bào), 2015, 27(7): 1211-1216.HU H, CHAO J G, YANG J, et al. Key point model for hand pose estimation based on leap motion[J]. Journal of Computer-Aided Design & Computer Graphics, 2015, 27(7): 1211-1216 (in Chinese).
[3] 孫國(guó)道, 黃普永, 劉義鵬, 等. 基于雙Leap Motion的三維可視化交互方法研究[J]. 計(jì)算機(jī)輔助設(shè)計(jì)與圖形學(xué)學(xué)報(bào), 2018, 30(7): 1268-1275.SUN G D, HUANG P Y, LIU Y P, et al. Interactive 3D visualization with dual Leap Motions[J]. Journal of Computer-Aided Design & Computer Graphics, 2018, 30(7): 1268-1275 (in Chinese).
[4] VASYLEVSKA K, PODKOSOVA I, KAUFMANN H. Teaching virtual reality with HTC vive and leap motion[C]//SIGGRAPH Asia 2017 Symposium on Education on – SA’17. New York: ACM Press, 2017: 1-8.
[5] MARUYAMA K, SHIN J, KIM C M, et al. User authentication using leap motion[C]//2017 International Conference on Research in Adaptive and Convergent Systems. New York: ACM Press, 2017: 213-216.
[6] KAMAISHI S, UDA R. Biometric authentication by handwriting using leap motion[C]//The10th International Conference on Ubiquitous Information Management and Communication – IMCOM’16. New York: ACM Press, 2016: 1-5.
[7] HERNOUX F, BéARéE R, GIBARU O. Investigation of dynamic 3D hand motion reproduction by a robot using a Leap Motion[C]//2015 Virtual Reality International Conference on ZZZ – VRIC’15. New York: ACM Press, 2015: 1-10.
[8] HANTRAKUL L, KACZMAREK K. Implementations of the Leap Motion device in sound synthesis and interactive live performance[C]//2014 International Workshop on Movement and Computing – MOCO’14. New York: ACM Press, 2014: 142-145.
[9] DESNOYERS-STEWART J, SMITH M, GERHARD D. Mixed reality MIDI keyboard demonstration[C]//The 12th International Audio Mostly Conference on Augmented and Participatory Sound and Music Experiences. New York: ACM Press, 2017: 1-5.
[10] XU Y M. An animated lighting robot by gesture recognition[C]//SA’14: SIGGRAPH Asia 2014 Posters. New York: ACM Press, 2014: 1.
Human-computer interaction method in previz based on Leap Motion
ZHAO Jian-jun, HUANG Jun-peng, CHEN Jun-liang
(Department of Film and TV Technology, Beijing Film Academy, Beijing 100088, China)
With the development of virtual reality (VR) technology, previz has gradually become an indispensable part of the film production. To improve the experience of filmmakers in previz, the utilization of natural multi-modal interaction, combined with 3D real-time rendering engine, has become increasingly important. At present, most of the interactive methods employed in previz are optical motion capture methods, which are expensive, difficult to operate, and poor in portability. This paper presented a human-computer interaction method based on Leap Motion. In addition to obtaining accurate captured data, it greatly reduced cost and the difficulty of operation. Filmmakers can interactively control the trajectory and switch between different motion states of virtual characters through gestures. With the help of motion capture data, filmmakers can directly participate in previz. The verification through previz schemes shows that this method is more natural, friendly, direct and efficient.
Leap Motion; previz; human computer interaction; virtual reality; virtual character
TP 391
10.11996/JG.j.2095-302X.2021010071
A
2095-302X(2021)01-0071-08
2020-08-04;
4 August,2020;
2020-08-14
14 August,2020
北京市教委科研計(jì)劃一般項(xiàng)目(KM201810050001);北京市教委科技創(chuàng)新服務(wù)能力建設(shè)項(xiàng)目(PXM2019_014220_000096)
:Beijing Municipal Education Commission Science and Technology Planning Project (KM201810050001);Beijing Municipal Education Commission Scientific and Technological Innovation Service Capacity Building Project (PXM2019_014220_000096)
趙建軍(1983–),男,山西平遙人,講師,博士。主要研究方向?yàn)橛?jì)算機(jī)圖形學(xué)、虛擬現(xiàn)實(shí)。E-mail:zhaojianjun@bfa.edu.cn
ZHAO Jian-jun (1983-), male, lecture, Ph.D. His main research interests cover computer graph and virtual reality. E-mail:zhaojianjun@bfa.edu.cn