Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Haritoraのような安価なIMUモーキャプの特性と考慮点について
Search
izm
June 11, 2021
Programming
13k
1
Share
Haritoraのような安価なIMUモーキャプの特性と考慮点について
トラッキング技術勉強会
https://connpass.com/event/214152/
izm
June 11, 2021
More Decks by izm
See All by izm
Face recognition for Luppet, for xR Tech Nagoya #4
izm
3
8.4k
Unity Networking Libraries Overview2018
izm
4
5.6k
Unity MovieTexture (VR panorama) tips
izm
6
8.8k
Other Decks in Programming
See All in Programming
気づいたらRubyで100作品 ー クリエイティブコーディングが生活の一部になるまで / 100 Ruby Sketches Later: How Creative Coding Became Part of My Life
chobishiba
2
390
Moments When Things Go Wrong
aurimas
3
120
Kubernetesを使わない環境にもCloud Nativeなデプロイを実現する / Enabling Cloud Native deployments without the complexity of Kubernetes
linyows
3
570
運用エージェントは "作る" から "育てる" へ - 記憶と自己進化の3層設計パターン / self-evolving-agents-three-layer-agent-design
gawa
12
3k
Spec-Driven Development with AI-Agents: From High-Level Requirements to Working Software
antonarhipov
2
360
AI駆動開発勉強会 広島支部 第一回勉強会 AI駆動開発概要とワークショップ
hayatoshimiu
0
390
Copilot CLI の継戦能力を高める コンテキスト管理
nozomutu
1
1k
Signal Forms: Beyond the Basics @ngBaguette 2026 in Paris
manfredsteyer
PRO
0
120
CLIであることを活かしたGitHub Copilot CLI活用術 / GitHub Copilot CLI Pro Tips & Tricks
nao_mk2
1
1.1k
SPMマルチモジュールで テストカバレッジを取得する技法
yosshi4486
0
120
These Five Tricks Can Make Your Apps Greener, Cheaper, & Nicer
hollycummins
0
210
AlarmKitで明後日起きれるアラームアプリを作る
trickart
0
150
Featured
See All Featured
Deep Space Network (abreviated)
tonyrice
0
150
Optimizing for Happiness
mojombo
378
71k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.2k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
290
KATA
mclloyd
PRO
35
15k
Accessibility Awareness
sabderemane
1
130
Scaling GitHub
holman
464
140k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
810
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2k
Color Theory Basics | Prateek | Gurzu
gurzu
0
320
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
199
73k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
350
Transcript
Haritoraのような安価なIMU式 モーションキャプチャの特性と考慮点について @izm スライドは後日公開予定
挨拶 • 趣味でHaritoraというプロジェクトをやってる@izmです。 • フルトラ民主化しようとしたら戦国時代になってしまった… ◦ →選択肢がいっぱいあるのはとても良い!切磋琢磨で健全な市場になるので • 注意:本発表はHaritoraのポジショントークが含まれます Haritoraはいいぞ!
↑ポジショントークの例
宣伝 • Haritoraの量産後継機であるHaritoraXを株式会社 Shiftallさんと業務提携して進めています。 • オーダー受付中 ( https://ja.shiftall.net/archives/product_page/haritorax/ ) 買って!
目次 • IMU式モーションキャプチャの概要と特性 • Haritoraの話 • 良いIMUモーキャプかどうかの見分け方 全部で3個!
IMUモーキャプの概要と特性
IMUとは • 姿勢(角度)が取得できるセンサを1個以上積んだ物 ◦ 例:加速度センサ、ジャイロセンサ、地磁気センサの組み合わ せ • 位置は取得できない • ViveTrackerやOculusTouchも中にIMUが入っています
• リングフィットアドベンチャーで使ってる仕組み!
Sensor Fusion • ジャイロセンサ(角速度)加速度センサ(加速度)地磁気センサ (地磁気)を組み合わせて、あるべき姿勢を導き出す ◦ ジャイロセンサ:角速度が取れるので積分したら角度が取れる ◦ 加速度センサ:静止していたら重力の9.8Gを元にお辞儀している量が分か る
◦ 地磁気センサ:地球の地磁気をベースに姿勢が分かる • ↑これらを組み合わせて正しそうな姿勢を求めるSensorFusion ◦ この説明だけで60分くらいかかるので省略
IMU式モーションキャプチャ • IMUを体のあちこちにつけて、SensorFusionにより、取 り付けた関節の姿勢がわかる • Forward Kinematics(順運動学)によって人体の姿勢を 求める
姿勢計算の具体例 腰:(30,0,0) 左もも (90,-10,0) 左すね(10,10,0) 単位は度
いくつか気にする事 • IMUが人の体に斜めに取り付けられたりするのを吸収 • IMUの姿勢が電源投入時にリセットされる物の場合はこ のオフセットも計算する • これらを吸収するためにユーザに幾つかのポーズを取っ てもらう
2ポーズキャリブレーション 全てのセンサー関節が1軸についてだけ曲がるポーズを使う
IMU式モーションキャプチャ • Rootから末端に行くにつれて、姿勢推定誤差の蓄積で誤 差が出てくる • 歩いて移動した距離、を求めるのは大変(よくあるのが 足の加速度を計測して歩行を推定しておく仕組み) • 市販のIMU式モーションキャプチャも絶対位置を補正す る仕組みをオプションで備えがち
IMU式モーションキャプチャの利点 • PC側の計算コストが軽い • 遮蔽に強い • 素朴に実装しても複雑骨折しにくい ◦ toBの生配信においてキャラクターが複雑骨折するとクビが飛ぶ ◦
とはいえ、磁気ノイズの影響で突如首がクルンと回ることもある ▪ トラスの上の収録とか ▪ あなたが手に持ったマイク、地磁気ノイズの塊ですよ!!
IMU式モーションキャプチャの欠点 • 絶対位置が取れない • ドリフトが起きる ◦ ドリフト=時間蓄積による姿勢推定誤差 ◦ ドリフトが起きないIMUはメチャンコ高いです ◦
民生品だと大体30分-1hくらいで最低1度以上ズレるはず
IMUモーションキャプチャの人体装着方法 • 誤差の蓄積によるドリフト以外に「体に取り付けたセンサが ズレた」という誤差もある • 各社工夫しています • リングフィットアドベンチャーでさえ、ジャージの上から取 り付けると太ももから滑り落ちます •
全身タイツが一番安定します • 人体各所に3脚のねじ穴が空いていてほしい!!!
取り付けソリューションの例 全裸!
取り付けソリューションの例 オシャレ!
Haritoraの話
Haritoraの仕組み • 上半身は3点トラッキングが普及している(最高) • 下半身の腰と足だけIMU式でキャプチャしたい • 3点、5点、6点、8点あたりが検討に入る
3点式 • KAT Locoが実用化 • 太ももと腰に取り付け • スネや足首は推定、実際違和感はある • 一方でDeep
Inertia Poser,など機械学習ベースで推定す る仕組みもある ◦ (計算コストが上がるのでトレードオフ)
5点式 • 腰に1個、足に2個づつ • WalkOVRおよびHaritora,HaritoraXが採用 ◦ 足首は諦める ◦ 腰と胸、みたいに2個付けた方が正確ではある(Unityの HumanoidのSpineBoneが2個以上という制約には意味がある)
6点式 • Uni-motion,SlimeVRが採用 • 5点式に加えて、腰またはみぞおちにもう1個追加 • お辞儀をしたとき、腰はほぼまっすぐだけど、みぞおち は傾いてる、みたいな再現度が上がる
8点式 • 6点に加えて両足首にもセンサーをつける • 足首の加速度センサにより歩行の足踏み検知がしやすい ので、IMUだけで全身モーキャプするなら足首センサは ほぼ必須 • 表現力と装着コストのトレードオフ 良いなあ
Haritoraの5点式 • 腰センサーはみぞおちにマウントする • 6点式なら腰にあるはずのIMUの姿勢を根性で計算によっ て求める ◦ 人間の背骨Spine1とSpine2は連動してる ◦ なので「大体みぞおちがこの姿勢だったら腰センサーはこんな
姿勢」みたいな推定が割と可能 ◦ ver0.2.2より実装済み
None
良いIMUモーキャプの見分け方
IMUモーキャプ買う時注意:これだけ覚えて帰って下さい • その場から歩いているリアルタイム動画が無いものは全 部ダメ • ドリフトに言及していないものは全部ダメ • 開発者にオタクがいないプロジェクトは全部ダメ(これ はポジショントークです)
IMU式モーションキャプチャの大事ポイント • IMU式モーションキャプチャ「も」ソフトウェアの出来 が大事 • 特にセンサーファームウェアや、PC側の骨格推定アルゴ リズムが大事
みんなも作ろうIMU式モーションキャプチャ • IMUをいっぱい繋げたハードウェアを作ってから先が めっちゃ面白い • ハンダ付けもめっちゃ面白い • みんなも作ってみよう
終わり