看板 C_Chat
作者 longlyeagle (長鷹)
標題 [Vtub] 動捕對VTuber舞蹈表現的影響
時間 Sun Sep 29 13:20:19 2024


為什麼很多人在說:

  動作捕捉對 VTuber 跳舞是一種 Nerf

  動捕跟不上他的動作

----

我是 OpenLive3D 的製作者, 在歐美用 Mac 家用 3D 有一些使用者

在寫這個程式的過程中剛好對這個現象有些了解

所以想要寫一篇解釋動捕會弱化 (Nerf) 跳舞動作的原因

也順便討論一下如何改善這個問題

----


## 造成弱化的原因


1. 捕捉設備的定位平滑化 (Positioning Smooth)

   不論是使用動補裝, 或者是用家用 3D 的單鏡頭機器學習定位

   這些設備或多或少會有定位誤差的問題

   當一個人完全不動的時候, 捕捉設備每一次定位出來的點其實是一個常態分佈

   例圖: https://tinyurl.com/2un84pvs

   當每次定位結果不停的在這個分佈裡跳動的時候

   看起來就像是訊號不好一樣, 人會一閃一閃的

   所以動捕定位完之後本身一定會有一層平滑化機制

   平滑化 => 弱化銳利度 => 跳舞動作頓點力道減少


2. 動捕幀率與影片播放幀率不匹配的內差機制 (Frame Rate Mismatch)

   動捕設備在每一次擷取定位點的時候所需要的時間不一定相同

   在需要定位的點多的時候 (人多或是動作複雜)

   每次動捕的時間就會更久, 造成每秒的幀率不一定相同

   可是影片播放需要穩定的幀率 (通常是 60 FPS)

   所以我們會使用內差來解決不匹配的問題

   當使用內差的時候, 如果我們只參考最近的定位點

   在動作變化的時候就會有不平滑的問題 (想像畫一個圓形可是變成八角形)

   所以我們通常會參考多點來進行內差

   例圖: https://tinyurl.com/2tc9zpfu
Linear interpolation in Python
[圖]
I decided to write this article to help others like me that have to interpolate data and faced some troubles in the process. It is always tricky when  ...

 

   參考多點之後達成的效果就是平滑化, 而平滑化 == 動作頓點弱化


3. 定位點到 3D 模型動作轉換 (Motion Smooth)

   動捕定位完之後其實得到的只是在 3D 空間裡面的一個座標

   這個座標需要經過一定的數學轉換才能夠變成 3D 模型的動作

   模型動作可以分為兩種: 位置 與 角度

   以人型的 3D 模型而言通常會用尾椎為支點 (HIPS) 計算位置

   例圖: https://tinyurl.com/2y3w6j55

 

   其他的相對骨架都是計算旋轉角度之後轉換為 3D 模型的動作

   在這樣的計算裡, 如果 3D 模型與被偵測人的肢體有長度差異

   我們在做模型旋轉的時候就會需要額外補正


   而這樣的額外補正通常會需要在旋轉的參數上再帶一層平滑化

   來補救模型補正之後卡頓的問題


4. 算圖渲染平滑化 (Render Smooth)

   像我在開發的 OpenLive3D 因為使用者是以 Mac 為主

   大家的電腦 GPU 都滿爛的, 所以在算圖的時候也會有卡頓問題

   這個時候其實有可以減少 3D 算圖的渲染平滑化方法

   造成的影響就不用我多贅述

----


## 如何改善動捕平滑問題

在討論了這麼多影響之後, 列出了幾點能夠改善動捕呈現的效果的方法


1. 更好的設備

   是的, 上面的很多問題在使用更貴的動捕設備時都能有一定程度的改善

   再加上更貴的 GPU 讓我們算圖與渲染的時候不需要妥協

   雖然還是會有弱化的問題, 可是當幀數夠高的時候, 影響就會減少


2. 減少計算的複雜度

   簡單來說就是人少一點, 然後不要一堆特效, 跟上面更好的設備一樣的道理


3. 舞風的選擇與調整

   在知道了設備上的限制之後, 我們可以了解到有一些舞風受到的影響更大

   以 Hololive 來說

   像是 Aki 這種會需要用電臀這種用震動作為表現形式的肚皮舞風格

   一定是被超絕弱化 (Nerf)

   在不得已的情況下只能加大動作的幅度與降低振動頻率

   就算如此在一些動作上還是會有頓點不足的感覺, 明顯是受到動捕的影響

   影片: https://www.youtube.com/live/mknggf96fuI

   以 Aki 3rd Live 來舉例, 雖然已經在舞蹈編排的時候使用更柔美優雅的動作

   但是在 29:40 左右的印度舞擺頭動作很明顯的還是被平滑化掉了


   相對來說像是 Hakos Baelz 用力道更強的表現形式時

   雖然還是會有影響, 可是相對的動作的呈現還是更加漂亮

   影片: https://www.youtube.com/live/j-N96U_OANI

   在 EN 2nd Concert 的時候 Bae 在 46:00 出場的舞蹈就有特別設計過


4. 腦內補完

   雖然 VTuber 在演唱呈現更加豐富了可能的表現形式

   可是我們必須認知到在舞蹈的呈現上還是有能夠改進的空間的

   帶著這樣的理解, 我們在看跳舞的時候更能夠注意到一些細節

   影片: https://www.youtube.com/live/wIYvks57cQA

   以 轟はじめ 在 ReGLOSS3Dライブ 53:28 多個腳步切換的動作為例

   這樣的多腳步切換顯現的他紮實的基本功

   有一些踏腳的動作似乎是踩完之後腳就向前滑了, 沒有明顯的頓點

   我們要理解: 腳在接觸到地面之後受到阻力所以一定會有頓點

   在這裡頓點不明顯很明確就是因為快速的舞步因為動捕的機制被平滑化之後的結果

   所以看到這樣的舞步立刻就能腦內補完

   啊, 完美!

----


大概是這樣, 隨著技術的進步, 我們期待有能看到 Aki 肚皮舞電臀的一天

--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.231.92.104 (臺灣)
※ 作者: longlyeagle 2024-09-29 13:20:19
※ 文章代碼(AID): #1c-EEPQJ (C_Chat)
※ 文章網址: https://www.ptt.cc/bbs/C_Chat/M.1727587225.A.693.html
ian90911: 推專業文1F 09/29 13:23
a5WaGyu: 總之先推2F 09/29 13:23
ts1993: 腦補3F 09/29 13:24
limbra: 好 懂了 等肚皮舞4F 09/29 13:24
longtimenoc: 感謝說明5F 09/29 13:24
windowsill: 推專業人士6F 09/29 13:24
vmpz7bj68: 專業文推7F 09/29 13:26
fjuke: 專業文推推8F 09/29 13:26
aegius1r: 推專業9F 09/29 13:26
s22shadowl: 嗯嗯跟我想得差不多對啊10F 09/29 13:26
mushrimp5466: 專業11F 09/29 13:29
uohZemllac: 推專業12F 09/29 13:29
zseineo: 推13F 09/29 13:30
steven96414: 雖然我看不懂但還是推14F 09/29 13:30
Pegasus99: 結論:Aki超讚 婆爛15F 09/29 13:30

--
作者 longlyeagle 的最新發文: