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
1
12k
Haritoraのような安価なIMUモーキャプの特性と考慮点について
トラッキング技術勉強会
https://connpass.com/event/214152/
izm
June 11, 2021
Tweet
Share
More Decks by izm
See All by izm
Face recognition for Luppet, for xR Tech Nagoya #4
izm
3
7.6k
Unity Networking Libraries Overview2018
izm
4
5.4k
Unity MovieTexture (VR panorama) tips
izm
6
8.6k
Other Decks in Programming
See All in Programming
dbt Pythonモデルで実現するSnowflake活用術
trsnium
0
270
.NET Frameworkでも汎用ホストが使いたい!
tomokusaba
0
210
コミュニティ駆動 AWS CDK ライブラリ「Open Constructs Library」 / community-cdk-library
gotok365
2
260
お前もAI鬼にならないか?👹Bolt & Cursor & Supabase & Vercelで人間をやめるぞ、ジョジョー!👺
taishiyade
7
4.2k
React 19アップデートのために必要なこと
uhyo
8
1.6k
複数のAWSアカウントから横断で 利用する Lambda Authorizer の作り方
tc3jp
0
120
Expoによるアプリ開発の現在地とReact Server Componentsが切り開く未来
yukukotani
1
200
生成AIで加速するテスト実装 - ロリポップ for Gamersの事例と 生成AIエディタの活用
kinosuke01
0
140
GoとPHPのインターフェイスの違い
shimabox
2
210
Djangoにおける複数ユーザー種別認証の設計アプローチ@DjangoCongress JP 2025
delhi09
PRO
4
500
もう少しテストを書きたいんじゃ〜 #phpstudy
o0h
PRO
20
4.3k
たのしいSocketのしくみ / Socket Under a Microscope
coe401_
8
1.4k
Featured
See All Featured
Speed Design
sergeychernyshev
27
820
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
40
2k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.5k
Agile that works and the tools we love
rasmusluckow
328
21k
How to Ace a Technical Interview
jacobian
276
23k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3k
Thoughts on Productivity
jonyablonski
69
4.5k
A better future with KSS
kneath
238
17k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
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をいっぱい繋げたハードウェアを作ってから先が めっちゃ面白い • ハンダ付けもめっちゃ面白い • みんなも作ってみよう
終わり