HTC VIVE 混合現(xiàn)實(shí)制作 (使用Tracker做為相機(jī)的追蹤標(biāo)識(shí))

========================================================

MR

畫面輸出說明(請(qǐng)參考圖一)

========================================================


一般而言痹仙,當(dāng)VR游戲執(zhí)行時(shí)掸屡,屏幕窗口會(huì)顯示頭顯的視角柒爵,而在啟動(dòng)MR畫面輸出時(shí)坷檩,屏幕窗口會(huì)顯示四個(gè)象限的畫面供使用者去合成抄腔,此四象限畫面分別為:.前景(左上)前景畫面顯示虛擬攝影機(jī)的視角,在游戲場(chǎng)景中伟众,凡是介于頭顯與虛擬攝影機(jī)之間的物體皆會(huì)顯示在此畫面中.前景alpha屏蔽(右上)此畫面是前景的alpha屏蔽析藕,主要是用于影片后制時(shí)可當(dāng)作前景去背的材料.背景(左下)背景畫面顯示虛擬攝影機(jī)的視角,在游戲場(chǎng)景中凳厢,凡是介于頭顯與遠(yuǎn)方背景的物體皆會(huì)顯示在此畫面中账胧。.游戲畫面(右下)

========================================================

如何錄制MR畫面

========================================================

為了啟動(dòng)混合現(xiàn)實(shí)畫面輸出,須達(dá)到以下三個(gè)條件:

A.)內(nèi)容程序必須是由Unity引擎SteamVR插件版本v1.0.8 (或是更新的版本)所開發(fā)

B.)在內(nèi)容程序執(zhí)行文件目錄下放置檔案externalcamera.cfg(純文本檔先紫,擴(kuò)展名為.cfg)

C.)連結(jié)第三把手柄(透過USB連接電腦)以下是檔案externalcamera.cfg的范例:

-------------------------------------------------------------------------------------

x=0

y=0

z=0

rx=0

ry=0

rz=0

fov=60

near=0.1

far=100

sceneResolutionScale=0.5

-------------------------------------------------------------------------------------

當(dāng)以上三個(gè)條件皆成立時(shí)治泥,內(nèi)容程序會(huì)在場(chǎng)景中建立一個(gè)虛擬相機(jī),而檔案externalcamera.cfg即是定義了此虛擬相機(jī)的相關(guān)參數(shù)(請(qǐng)參考圖三):


.x, y, z(單位:公尺):虛擬相機(jī)與第三把手柄之間的三維距離

.rx, ry, rz(單位:度):虛擬相機(jī)相對(duì)于第三把手柄的翻轉(zhuǎn)角度

.fov:虛擬相機(jī)的垂直FOV遮精。(此FOV需與實(shí)體相機(jī)的FOV相同)

除了定義虛擬相機(jī)的參數(shù)之外居夹,此檔案亦定義了一些畫面參數(shù):

.far(單位:公尺):背景畫面顯示的最遠(yuǎn)距離,若游戲場(chǎng)景很大,建議調(diào)高此參數(shù)

.sceneResolutionScale:游戲畫面的質(zhì)量吮播,降低畫質(zhì)可減少電腦資源使用

========================================================

如何校準(zhǔn)相機(jī)參數(shù)(計(jì)算垂直FOV)

========================================================

在拍攝混合現(xiàn)實(shí)影片時(shí)变屁,最重要的是取得FOV參數(shù)值以及取得第三只手柄與實(shí)體相機(jī)的距離,才能順利地將前景與實(shí)體對(duì)象合成意狠。此處我們采用AR的工具來計(jì)算相機(jī)與鏡頭的特性粟关,并取得正確的垂直FOV。(除非更換拍攝時(shí)的相機(jī)或鏡頭环戈,否則此步驟執(zhí)行一次即可)

1.)下載ARToolKit for Unity(http://artoolkit.org/dist/arunity5/5.3/ARUnity5-5.3.2-tools-win.zip)

2.)在ARToolKit for Unity中找到校準(zhǔn)樣板"Calibration chessboard (A4).pdf”并且依原尺寸打用瓢濉(路徑:[downloaded ARToolKit root

directory]/doc/patterns)

3.)從命令提示字符執(zhí)行程序calib_camera.exe(路徑:[downloaded ARToolKit root directory]/bin)指令如下:

-----------------------------------------------------------------------------------------------------

> calib_camera.exe --vconf "-devNum=1 -flipV -showDialog”

校準(zhǔn)工具必須取得實(shí)體相機(jī)的畫面,若抓取到頭顯的前置鏡頭院塞,請(qǐng)修改指令參數(shù)至1或2

-----------------------------------------------------------------------------------------------------

4.)依照在線教學(xué)步驟(http://artoolkit.org/documentation/doku.php?id=2_Configuration:config_camera_calibration

)產(chǎn)生相機(jī)的特性參數(shù)檔案camera_para.bytes(請(qǐng)參考圖四)

"

若校準(zhǔn)的結(jié)果是可采用的遮晚,則每個(gè)影像的誤差應(yīng)在一個(gè)像素以內(nèi),若誤差超過兩個(gè)像素拦止,表示此校準(zhǔn)結(jié)果未成功县遣,請(qǐng)重新校準(zhǔn)"

5.)

將校準(zhǔn)后產(chǎn)生的檔案camera_para.bytes復(fù)制到位移計(jì)算工具externalcamera_cfg_gen中

$PATH\externalcamera_cfg_gen\

externalcamera_cfg_gen_Data\

StreamingAssets\

ardata\

========================================================

將第三只手柄固定于相機(jī)上的方式

========================================================

接下來,我們嘗試計(jì)算出第三只手柄與實(shí)體相機(jī)的距離汹族。計(jì)算的難易度取決于將手柄固定于相機(jī)的方式萧求,而且相對(duì)位置一有改變,便需要修改檔案externalcamera.cfg顶瞒,因此建議找一個(gè)固定且穩(wěn)定的方式夸政,例如將手柄固定在熱靴上,拆卸安裝快速榴徐,且相對(duì)位置容易固定(請(qǐng)參考圖五)

為了讓手柄與實(shí)體相機(jī)呈現(xiàn)相同的水平守问,我們建立了一個(gè)手柄托架,透過此托架垂直立于相機(jī)上坑资,在檔案externalcamera.cfg中的三軸旋轉(zhuǎn)十分接近零度耗帕。目前可下載3D打印文件,并于打印后黏貼一至二個(gè)六角螺母(含1/4螺紋)(請(qǐng)參考圖六)


(3D打印文件下載連結(jié):https://drive.google.com/file/d/0B9XEEDfLPxmjTkc2RF85OVo4clk/view?pref=2&pli=1)

一旦順利地將第三只手柄固定于腳架盐茎、相機(jī)支架或熱靴上后兴垦,接下來便是計(jì)算出檔案externalcamera.cfg里需要的位移(x, y, z)以及旋轉(zhuǎn)(rz, ry, rz)。我們建議以下兩種方式:

方案A:

若你采用HTC Vive手柄托架并且將其固定于相機(jī)熱靴上字柠,此時(shí)手柄與相機(jī)鏡頭應(yīng)該在同一個(gè)水平上,所有的相對(duì)旋轉(zhuǎn)(rx, ry, rz)接近于零狡赐,因此我們只需要計(jì)算位移即可:

1.)找出手柄的中心(請(qǐng)參考圖七):手柄的中心點(diǎn)位于圓盤追蹤器的上緣窑业,下圖中,矩形的位置即代表著手柄的中心點(diǎn)枕屉。

2.)計(jì)算位移(x, y, z):透過卷尺等工具計(jì)算出手柄中心點(diǎn)與相機(jī)鏡頭成像位置的三度空間距離常柄,上圖右下方即為x, y, z軸與手柄的相對(duì)位置。

方案B:

若你的手柄與相機(jī)不在同一個(gè)水平上,這里提供一個(gè)計(jì)算位移的工具(下載連結(jié):https://drive.google.com/file/d/0B9XEEDfLPxmjZjhYaEZrNE9mLVE/view)

1.)下載ARToolKit for Unity(http://www.artoolkit.org/dist/arunity5/5.3/ARUnity5-5.3.2-tools-win.zip)

2.)在ARToolKit for Unity中找到校準(zhǔn)樣板“Multi pattern 4x3 (A4).pdf”并且依原尺寸打印西潘。(路徑:[downloaded ARToolKit root

directory]/doc/patterns)

3.)將校準(zhǔn)后產(chǎn)生的檔案camera_para.bytes復(fù)制到位移計(jì)算工具externalcamera_cfg_gen中

$PATH\externalcamera_cfg_gen\

externalcamera_cfg_gen_Data\

StreamingAssets\

ardata\

4.)將相機(jī)鏈接上電腦

5.)執(zhí)行$PATH\externalcamera_cfg_gen\externalcamera_cfg_gen.exe

----------------------------------------------------------------------------------------------------------------------

.請(qǐng)確認(rèn)計(jì)算工具抓取到正確的校準(zhǔn)參數(shù)文件名卷玉,你可以在檔案videopara.cfg中指定:

videoCParamName0 = camera_para

.校準(zhǔn)工具必須取得實(shí)體相機(jī)的畫面,若抓取到頭盔的前置鏡頭喷市,請(qǐng)修改檔案videopara.cfg中的參數(shù)至1或2:

videoConfigurationWindows0 = -devNum=1-showDialog -flipV

.請(qǐng)確認(rèn)實(shí)體相機(jī)的屏幕比例為16:9相种,例如:1920 x1080

----------------------------------------------------------------------------------------------------------------------

6.)戴上頭顯

7.)將兩只手柄置放于藍(lán)色虛擬手柄的位置上(請(qǐng)參考圖八)

8.)卸下頭顯

9.)將校準(zhǔn)樣板”Multi pattern 4x3 (A4).pdf”至于兩只手柄的中央,方向需與虛擬場(chǎng)景中的一致(請(qǐng)參考圖九)

10.)將相機(jī)對(duì)準(zhǔn)校準(zhǔn)樣板”Multi pattern 4x3 (A4).pdf”品姓。(最好透過腳架固定)(請(qǐng)參考圖十)

11.)戴上頭顯

12.)按下任一手柄側(cè)邊的Grip按鈕寝并,將虛擬的橘色手柄切換至第三把手柄所在位置。此時(shí)橘色手柄與虛擬相機(jī)的相對(duì)位置與實(shí)體狀況相同(請(qǐng)參考圖十一)


13.)按下任一手柄的Trigger按鈕腹备,產(chǎn)生檔案externalcamera00.cfg

14.)重新命名檔案至externalcamera.cfg衬潦,并且將其復(fù)制到游戲執(zhí)行檔文件夾

此工具亦提供”地板校正功能“,當(dāng)你發(fā)現(xiàn)地板有些微傾斜時(shí)(手柄無法與藍(lán)色手柄吻合)植酥,可能會(huì)影響計(jì)算結(jié)果镀岛,請(qǐng)透過此功能先行校準(zhǔn)地板高度。

========================================================

透過OBS Studio合成影像

========================================================

接下來友驮,我們將透過OBS Studio軟件來合成影像漂羊,在開始之前,需要先決定輸出影片的質(zhì)量喊儡,而質(zhì)量取決于你的對(duì)象與目的拨与,以下是此案例的設(shè)定,必要時(shí)可做調(diào)整:

.分辨率: 1080P, 30FPS

.影片大小: 100~200MB (三至五分鐘)

1.)在OBS Studio >設(shè)定>輸出>卷標(biāo)“錄像”(請(qǐng)參考圖十二):

.輸出模式:進(jìn)階

.類型:標(biāo)準(zhǔn)

.錄像格式:mp4

.流量:6000

2.)在OBS Studio >設(shè)定>影像(請(qǐng)參考圖十三):

.來源(全畫面)分辨率:1920x1080

.輸出(縮放)分辨率:1920x1080

.常用FPS:29.97

3.)為了取得分辨率為1080P的影片艾猜,必須在4K屏幕上以全屏幕的方式打開游戲(請(qǐng)參考圖十四):

.按著Shift鍵买喧,執(zhí)行游戲執(zhí)行檔(.exe)

.取消選取“Windowed”

.屏幕分辨率:3840 x 2160

4.)在OBS Studio中,必須依照以下順序新增三個(gè)來源匆赃,分別為”前景”淤毛、”影像采集”及”背景”(請(qǐng)參考圖十五):

a.)前景設(shè)定(請(qǐng)參考圖十五)

前景畫面顯示虛擬攝影機(jī)的視角,在游戲場(chǎng)景中算柳,凡是介于頭顯與虛擬攝影機(jī)之間的物體皆會(huì)顯示在此畫面中低淡。由于前景物體需要迭在玩家上方,因此前景層需至于最上方瞬项。

.新增一個(gè)來源“獲取窗口”

.窗口:指定游戲的執(zhí)行檔名稱

.取消“捕捉游標(biāo)”

在前景層新增兩個(gè)特效濾鏡:

.Crop(右:1920蔗蹋,下:1080)

.Color Key (Black)將前景層的黑色部分去背處理。

b.)影像采集設(shè)定[分辨率:1920x1080](請(qǐng)參考圖十七)

此來源主要是采集來自于相機(jī)的影像囱淋,因此新增一個(gè)影像捕獲設(shè)備:

.裝置:選取網(wǎng)絡(luò)攝影機(jī)或是視頻采集卡

.分辨率/FPS類型:自定義

.分辨率:1920 x 1080

新增一個(gè)特效濾鏡:

.Chroma Key (Green)將玩家背后的綠幕做去背處理猪杭,可以調(diào)整“Similarity”及“Smoothness”來取得較好的去背效果

c.)背景設(shè)定

背景畫面顯示虛擬攝影機(jī)的視角,在游戲場(chǎng)景中妥衣,凡是介于頭顯與遠(yuǎn)方背景的物體皆會(huì)顯示在此畫面中皂吮。

在背景層新增一個(gè)特效濾鏡:

?Crop(右:1920戒傻,上:1080)

----------------------------------------------------------------------------------------------------------------------

轉(zhuǎn)換文件

內(nèi)容轉(zhuǎn)載自HTC論壇,如有侵權(quán)蜂筹,請(qǐng)小窗需纳。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市艺挪,隨后出現(xiàn)的幾起案子不翩,更是在濱河造成了極大的恐慌,老刑警劉巖闺属,帶你破解...
    沈念sama閱讀 216,496評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件慌盯,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡掂器,警方通過查閱死者的電腦和手機(jī)亚皂,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,407評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來国瓮,“玉大人灭必,你說我怎么就攤上這事∧四。” “怎么了禁漓?”我有些...
    開封第一講書人閱讀 162,632評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)孵睬。 經(jīng)常有香客問我播歼,道長(zhǎng),這世上最難降的妖魔是什么掰读? 我笑而不...
    開封第一講書人閱讀 58,180評(píng)論 1 292
  • 正文 為了忘掉前任秘狞,我火速辦了婚禮,結(jié)果婚禮上蹈集,老公的妹妹穿的比我還像新娘烁试。我一直安慰自己,他們只是感情好拢肆,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,198評(píng)論 6 388
  • 文/花漫 我一把揭開白布减响。 她就那樣靜靜地躺著,像睡著了一般郭怪。 火紅的嫁衣襯著肌膚如雪支示。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,165評(píng)論 1 299
  • 那天鄙才,我揣著相機(jī)與錄音悼院,去河邊找鬼。 笑死咒循,一個(gè)胖子當(dāng)著我的面吹牛据途,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播叙甸,決...
    沈念sama閱讀 40,052評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼颖医,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了裆蒸?” 一聲冷哼從身側(cè)響起熔萧,我...
    開封第一講書人閱讀 38,910評(píng)論 0 274
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎僚祷,沒想到半個(gè)月后佛致,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,324評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡辙谜,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,542評(píng)論 2 332
  • 正文 我和宋清朗相戀三年俺榆,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片装哆。...
    茶點(diǎn)故事閱讀 39,711評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡罐脊,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出蜕琴,到底是詐尸還是另有隱情萍桌,我是刑警寧澤,帶...
    沈念sama閱讀 35,424評(píng)論 5 343
  • 正文 年R本政府宣布凌简,位于F島的核電站上炎,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏雏搂。R本人自食惡果不足惜藕施,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,017評(píng)論 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望畔派。 院中可真熱鬧铅碍,春花似錦、人聲如沸线椰。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,668評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽憨愉。三九已至烦绳,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間配紫,已是汗流浹背径密。 一陣腳步聲響...
    開封第一講書人閱讀 32,823評(píng)論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留躺孝,地道東北人享扔。 一個(gè)月前我還...
    沈念sama閱讀 47,722評(píng)論 2 368
  • 正文 我出身青樓底桂,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國和親惧眠。 傳聞我的和親對(duì)象是個(gè)殘疾皇子籽懦,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,611評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容