[Vtub] 動捕對VTuber舞蹈表現的影響
為什麼很多人在說:
動作捕捉對 VTuber 跳舞是一種 Nerf
動捕跟不上他的動作
----
我是 OpenLive3D 的製作者, 在歐美用 Mac 家用 3D 有一些使用者
在寫這個程式的過程中剛好對這個現象有些了解
所以想要寫一篇解釋動捕會弱化 (Nerf) 跳舞動作的原因
也順便討論一下如何改善這個問題
----
## 造成弱化的原因
1. 捕捉設備的定位平滑化 (Positioning Smooth)
不論是使用動補裝, 或者是用家用 3D 的單鏡頭機器學習定位
這些設備或多或少會有定位誤差的問題
當一個人完全不動的時候, 捕捉設備每一次定位出來的點其實是一個常態分佈
例圖: https://tinyurl.com/2un84pvs
當每次定位結果不停的在這個分佈裡跳動的時候
看起來就像是訊號不好一樣, 人會一閃一閃的
所以動捕定位完之後本身一定會有一層平滑化機制
平滑化 => 弱化銳利度 => 跳舞動作頓點力道減少
2. 動捕幀率與影片播放幀率不匹配的內差機制 (Frame Rate Mismatch)
動捕設備在每一次擷取定位點的時候所需要的時間不一定相同
在需要定位的點多的時候 (人多或是動作複雜)
每次動捕的時間就會更久, 造成每秒的幀率不一定相同
可是影片播放需要穩定的幀率 (通常是 60 FPS)
所以我們會使用內差來解決不匹配的問題
當使用內差的時候, 如果我們只參考最近的定位點
在動作變化的時候就會有不平滑的問題 (想像畫一個圓形可是變成八角形)
所以我們通常會參考多點來進行內差
例圖: https://tinyurl.com/2tc9zpfu
參考多點之後達成的效果就是平滑化, 而平滑化 == 動作頓點弱化
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 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/C_Chat/M.1727587225.A.693.html
推
09/29 13:23,
2小時前
, 1F
09/29 13:23, 1F
推
09/29 13:23,
2小時前
, 2F
09/29 13:23, 2F
推
09/29 13:24,
2小時前
, 3F
09/29 13:24, 3F
推
09/29 13:24,
2小時前
, 4F
09/29 13:24, 4F
推
09/29 13:24,
2小時前
, 5F
09/29 13:24, 5F
推
09/29 13:24,
2小時前
, 6F
09/29 13:24, 6F
推
09/29 13:26,
2小時前
, 7F
09/29 13:26, 7F
推
09/29 13:26,
2小時前
, 8F
09/29 13:26, 8F
推
09/29 13:26,
2小時前
, 9F
09/29 13:26, 9F
推
09/29 13:26,
2小時前
, 10F
09/29 13:26, 10F
推
09/29 13:29,
2小時前
, 11F
09/29 13:29, 11F
推
09/29 13:29,
2小時前
, 12F
09/29 13:29, 12F
推
09/29 13:30,
1小時前
, 13F
09/29 13:30, 13F
推
09/29 13:30,
1小時前
, 14F
09/29 13:30, 14F
推
09/29 13:30,
1小時前
, 15F
09/29 13:30, 15F
推
09/29 13:31,
1小時前
, 16F
09/29 13:31, 16F
→
09/29 13:31,
1小時前
, 17F
09/29 13:31, 17F
推
09/29 13:33,
1小時前
, 18F
09/29 13:33, 18F
推
09/29 13:33,
1小時前
, 19F
09/29 13:33, 19F
推
09/29 13:34,
1小時前
, 20F
09/29 13:34, 20F
推
09/29 13:34,
1小時前
, 21F
09/29 13:34, 21F
→
09/29 13:34,
1小時前
, 22F
09/29 13:34, 22F
→
09/29 13:34,
1小時前
, 23F
09/29 13:34, 23F
這個其實也是文章裡提到第三點 模型與定位點差異的問題
如果模型的骨架跟人的骨架在定位之後需要補正的差異過大
就會需要額外計算補正而且常常會有許多妥協的情形
推
09/29 13:35,
1小時前
, 24F
09/29 13:35, 24F
→
09/29 13:35,
1小時前
, 25F
09/29 13:35, 25F
其實現在先進的動捕就已經是多視點了, 這樣才有辦法做舞台上的 3D 呈現
如果是單視點頂多就是家用 3D 而且限制很多 (家用 3D 手其實無法放到頭後面)
推
09/29 13:36,
1小時前
, 26F
09/29 13:36, 26F
理論上加上了偵測與套用 3D 模型的過程, 我們永遠無法達到 100%
可是能夠在技術的推展下無限的接近
推
09/29 13:37,
1小時前
, 27F
09/29 13:37, 27F
推
09/29 13:38,
1小時前
, 28F
09/29 13:38, 28F
→
09/29 13:38,
1小時前
, 29F
09/29 13:38, 29F
→
09/29 13:39,
1小時前
, 30F
09/29 13:39, 30F
→
09/29 13:39,
1小時前
, 31F
09/29 13:39, 31F
推
09/29 13:40,
1小時前
, 32F
09/29 13:40, 32F
推
09/29 13:40,
1小時前
, 33F
09/29 13:40, 33F
推
09/29 13:41,
1小時前
, 34F
09/29 13:41, 34F
→
09/29 13:41,
1小時前
, 35F
09/29 13:41, 35F
推
09/29 13:42,
1小時前
, 36F
09/29 13:42, 36F
還有 36 則推文
還有 3 段內文
推
09/29 14:22,
1小時前
, 73F
09/29 14:22, 73F
沒有真的物理引擎 可是有用 Three.JS (或是說 Three-VRM) 本身支援的
模型碰撞跟重力, 可以一定程度的避免太嚴重的穿模, 還有讓衣服跟頭髮向下垂
不過跟真的物理引擎差距極大
推
09/29 14:29,
1小時前
, 74F
09/29 14:29, 74F
推
09/29 14:31,
58分鐘前
, 75F
09/29 14:31, 75F
推
09/29 14:32,
57分鐘前
, 76F
09/29 14:32, 76F
→
09/29 14:35,
54分鐘前
, 77F
09/29 14:35, 77F
推
09/29 14:35,
54分鐘前
, 78F
09/29 14:35, 78F
→
09/29 14:35,
54分鐘前
, 79F
09/29 14:35, 79F
→
09/29 14:35,
54分鐘前
, 80F
09/29 14:35, 80F
→
09/29 14:35,
54分鐘前
, 81F
09/29 14:35, 81F
→
09/29 14:36,
53分鐘前
, 82F
09/29 14:36, 82F
→
09/29 14:36,
53分鐘前
, 83F
09/29 14:36, 83F
→
09/29 14:38,
51分鐘前
, 84F
09/29 14:38, 84F
→
09/29 14:38,
51分鐘前
, 85F
09/29 14:38, 85F
我沒有 R團這幾位的會員, 他們各自的頻道會有會限 Fan Cam 嗎?
如果有 Fan Cam 說不定番長值得加一下
推
09/29 14:39,
50分鐘前
, 86F
09/29 14:39, 86F
推
09/29 14:40,
49分鐘前
, 87F
09/29 14:40, 87F
→
09/29 14:40,
49分鐘前
, 88F
09/29 14:40, 88F
→
09/29 14:42,
47分鐘前
, 89F
09/29 14:42, 89F
現在大家應該都差不多, 用的是在頭髮與衣服骨架的末端加上向下的加速度來模擬
所以可以看到髮型是基本不變的, 只有髮尾會向下垂
推
09/29 14:43,
46分鐘前
, 90F
09/29 14:43, 90F
推
09/29 14:44,
45分鐘前
, 91F
09/29 14:44, 91F
→
09/29 14:44,
45分鐘前
, 92F
09/29 14:44, 92F
重新銳化的問題是因為在平滑化之後訊號已經失真了
所以不知道原本的動作就是平滑的還是有停頓的
全部都銳化可能並不是本來的動作
這裡牽扯到一些更先進的技術, 像是用機器學習來進行銳化判斷之類的
甚至可以把原本跳得不夠好的修正的更好
不過因為成本問題以及技術問題, 應該還沒有 VTuber 團體實裝
→
09/29 14:45,
44分鐘前
, 93F
09/29 14:45, 93F
推
09/29 14:48,
41分鐘前
, 94F
09/29 14:48, 94F
→
09/29 14:49,
40分鐘前
, 95F
09/29 14:49, 95F
推
09/29 14:52,
37分鐘前
, 96F
09/29 14:52, 96F
→
09/29 14:52,
37分鐘前
, 97F
09/29 14:52, 97F
推
09/29 14:56,
33分鐘前
, 98F
09/29 14:56, 98F
推
09/29 15:02,
27分鐘前
, 99F
09/29 15:02, 99F
→
09/29 15:02,
27分鐘前
, 100F
09/29 15:02, 100F
→
09/29 15:03,
26分鐘前
, 101F
09/29 15:03, 101F
→
09/29 15:04,
25分鐘前
, 102F
09/29 15:04, 102F
山田真的需要一個短髮模型
我自己就是做家用的, 請不要抱任何期待
推
09/29 15:04,
25分鐘前
, 103F
09/29 15:04, 103F
推
09/29 15:07,
22分鐘前
, 104F
09/29 15:07, 104F
推
09/29 15:15,
14分鐘前
, 105F
09/29 15:15, 105F
推
09/29 15:17,
12分鐘前
, 106F
09/29 15:17, 106F
※ 編輯: longlyeagle (61.231.92.104 臺灣), 09/29/2024 15:19:58
C_Chat 近期熱門文章
PTT動漫區 即時熱門文章