Intel想用6個深感相機做到全身追蹤

尋夢新聞LINE@每日推播熱門推薦文章,趣聞不漏接❤️

加入LINE好友

對VR來說,追蹤是很關鍵的技術。當前市面上的VR頭顯主要支持手柄和頭部追蹤,一些公司如CTRL-labs曾提出通過電脈沖追蹤手勢的方案、Clay AIR在研發無硬件手勢追蹤技術,而Leap Motion、Magic Leap已經有效果優秀的這方面技術了。

Holosuit

Valve曾研發針對手部的骨骼追蹤技術,不過這並不能滿足全身追蹤的需求。當前存在一些還在開發中的全身追蹤方案,比如OptiTrack通過六個身體部位捕捉動作的追蹤方案、Teslasuit動作捕捉全身服、Holosuit等。

上個月底,Intel實感技術CTO辦公室的軟件工程師Philip Krejov向大家展示了一種通過錄影頭追蹤全身的方案。據悉,這是一種基於深度學習的VR/AR人體動作識別技術,使用的硬件包括錄影機和HTC Vive追蹤器,在性價比方面比全身服更有優勢。

據青亭網了解,在此之前已經出現相似的技術,比如2017年,美國卡內基美隆大學認知計算研究室曾提出用於實時多人動作識別的通用機器學習架構OpenPose,它能夠識別單個圖像中135個關鍵點,缺點是僅支持6-12fps的幀率。

OpenPose

Stacked Hourglass Networks(堆疊沙漏網路結構)也是一款通用的動作識別架構,它和OpenPose一樣都是非常精準,缺點是受GPU限制。每一塊堆疊的沙漏本身是一個複雜的卷曲神經網路,它們通過外在圖像和熱量圖來可能人體動作。

DensePose

Facebook在2018年曾提出DensePose數據集和網路架構,它能夠識別人體表面,適用於追蹤人體輪廓以及身體活動原理,缺點是會受到光線限制以及訓練過程繁瑣(每年需要在5萬張人像上人工標記500萬個點)。

這麼大個的頭顯有沒有很眼熟

Krejov表示,他團隊研發的方案結合了深度網路與通用算法,但是對計算的要求很高,因此主要只能用於PC VR,如果應用在一體機中,那它的體積可能恐怕一般人無法承受。

基於深度的手勢和動作識別

這類型的識別技術分為機器學習法和模型擬合兩大類,前者通過數據訓練隨機決策森林來識別身體部位(可可能每幀的關節位置),優點是能夠達到很高的幀率,缺點是訓練需要數百萬張圖片;後者利用符號距離轉化功能將預先構建的人體或手部模型向點雲數據靠近,它的優點是模擬了運動學,缺點是需要多次模擬。

機器學習結合模型擬合的辦法

Krejov曾將機器學習和模型擬合相結合,編寫了一款能夠在40fps的CPU上運行的手勢識別算法。他利用隨機決策森林來收集手部數據,然後將數據與模型擬合。同樣適用這種方式的DoubleFusion技術,能夠估測人體的動作和輪廓/表面,不過局限依然是對計算要求高。

AI+點雲擬合

隨後他由結合機器學習與點雲擬合技術,研發了骨骼識別方案。為了提高追蹤效率,他還結合了頭顯與手柄的位置信息。

下圖解釋了該方案的動作識別流程,前兩步是基於多視圖系統的校準和圖像捕捉,接著是數據標記、數據矯正、實時動作估測(包括關節擬合+機器學習)。

在實時動作估測部分,機器將捕捉到的人像數據以及頭顯、手柄的位置數據輸入體積很小的卷曲神經網路,生成由人體關節的熱感圖以及頭顯、手柄的浮點值。

采集真實訓練數據

深度錄影數據包含紅黃藍和深度信息

點雲對應不同的紅黃藍和xyz值

合成數據缺少噪點

Krejov提出的動作識別方案需要收集RGB和深度圖像數據(每顆像素有各自對應的深度值),生成點雲,這樣每一個樣本各代表了人體表面的一點。與真實數據相比,合成的訓練數據缺少了噪點等特性,這些噪點是很難模仿合成的。但是真實數據需要人工標記,因此在時間、成本和準確性上都有局限。

為了采集動作數據,美國卡內基梅隆大學曾研發全景式三角測量法,即先可能手上關節的平面位置圖,接著製作成手的3D模型,然後再重新投射到2D平面上,反復優化。OpenPose就是基於這種方案,Krejov的科研團隊曾使用OpenPose來標記平面圖像。

在全景式三角測量法基礎上,Krejov提出了多視角捕捉的概念,這就需要使用更多錄影機,不過好處是能夠采集到更準確的數據。

錄影頭同步和校準

據悉,他的方案使用了6個RealSense深感相機,多個相機就需要考慮時間同步的問題,還需要將它們校準到同一坐標空間。使用三角測量法時,可以採用軟件同步的方式,但是對於容積重建這種更複雜的任務來說,為減少偽影的出現,就不得不考慮同步錄影頭觸發裝置的方法。

Krejov的多視角捕捉法,需要將六台錄影機等距擺放在追蹤目標周圍。他表示,你也可以使用更多相機,甚至為每台相機設定需要捕捉的專屬節點。

裝有HTC Vive追蹤器的校準圖表

校準過程

他還表示,這些相機需要通過校準,與統一的坐標系對齊,於是他們將HTC Vive追蹤器裝在校準圖表上,通過移動來校準相機錄影頭和HTC Vive頭顯。

這項多視角捕捉技術可做到更準確的自動標記,聳肩、抬腿等細微的動作都捕捉得不錯。

數據矯正過程

在捕捉到人體姿勢數據後,Krejov的方案還可以讓你從任何視角進行渲染和校準,方法是在目標周圍畫一個立方體,然後提取出從六個視角捕捉到的圖像。

排查異常值

Krejov發現,秉承自然規律,人的骨骼在短期內不會改變長度,因此如果想要識別錯誤的自動標註,可通過排查數據異常值。

動作數據不平均,主要集中在深紫色部分

另外,由於采集到的數據中動作比較單一,重新采集數據也不可避免,目的是為了確保不同動作的數據量平均。

Krejov稱,使用這種方法,就不再需要手動標記,只需要監督拍攝過程,而且在30分鐘內,就能夠采集到5萬張完成標記的訓練樣本。

單一相機方案

為了滿足終端消費者需求,Krejov稱他們也研發了只需要一台錄影頭的方案。

利用之前采集到的多視角訓練數據,他們研發了一款小型機器學習網路(採用關節推理原理),分成六部分,其中大部分是卷曲神經網路。首先他們將圖像中的動作數據進行縮小和精簡,加上頭顯和手柄的位置信息,然後再次放大,生成可能的熱量圖以及關節位置信息和最初可能的頭顯和手柄位置信息。

通過參考頭顯和手柄位置,目標超出相機視野的身體部位也可以追蹤,另外參考目標與地面的位置,還能夠分析他是否跳離地面。小型網路可在i7 CPU上運行,刷新率達200 fps。

模型優化

橘色為點雲

為了確保準確性,該方案還需要對模型進行優化,方式是將點雲數據與模型對齊,找到差別最小的節點,然後分析這些節點與模型之間的相互影響,以此來生成優化的骨骼追蹤數據。

未優化的模型通常不夠準確,人的動作局限在小範圍中,因此他們使用機器學習來優化模型。優化後,追蹤更加穩定,

Krejov及團隊在研究方案時,採用了HTC Vive頭顯,優勢是它內置頭部追蹤功能,更能優化單一相機的追蹤方案。

軀幹追蹤部分,該方案採用了模型擬合和機器學習技術,可追蹤腰部,讓你在VR中玩呼啦圈,還能夠追蹤腿和腳,讓你在VR中踢球、跨欄、跑步、跳舞等,這樣就省去了VR跑步機等VR控制器。

為了驗證這項技術,Krejov和團隊編寫了一款Unity插件,讓他們將可能模型放進遊戲里。接著他們使用Final IK的現成反向運動方案,將遊戲中的人物與可能模型疊加。

他發現,使用這種追蹤方法,他在VR中可以用腳與彩球直接互動,手肘也可以追蹤到,只是使用手柄拿起球還比較困難。

動作追蹤的一些應用場景

如果Krejov的這骨骼追蹤方案得以應用,將為VR社交和遠程辦公提供更好的交互,目前Magic Leap的Avatar Chat只支持上半身追蹤,而Spatial的遠程協作平台也並未支持對全身的追蹤。

About 尋夢園
尋夢園是台灣最大的聊天室及交友社群網站。 致力於發展能夠讓會員們彼此互動、盡情分享自我的平台。 擁有數百間不同的聊天室 ,讓您隨時隨地都能找到志同道合的好友!