Perception Nueron検証その① モーションキャプチャーをとってみよう。

erception Nueron検証その① モーションキャプチャーをとってみよう。
  • このエントリーをはてなブックマークに追加
第一回となる今回はPerception Neuronについてです。
安価で気軽に指先まで撮れるフルボディーモーションキャプチャーシステム、それがPerception Neuron。今回は基本であるモーションキャプチャーを撮ってみようと思います。

前提

筆者はモーションキャプチャーを撮るのは初めてです。色々検証してみてますがこうすれば出来るよ、というレベルですのであしからず。

こちらの記事は全3回となっています。興味のある方は下記の記事も併せてもご覧下さい。

Perception Nueron検証その① モーションキャプチャーをとってみよう。 | DVERSE Inc.

Perception Neuronとは

公式サイト

Perception Neuronは、中国Noitom社によって開発された低価格モーションキャプチャシステムです。Neuronという加速度、ジャイロ、磁気計を持つIMU(Inertial Measurement Unit、慣性計測装置)32個と、それをコントロールする1つのハブで構成されます。Axis Neuronという専用ソフトからTCP/UDPによるBVHフォーマットのモーションデータを送信することが出来ます。システム一式(Neuron32個付属)で$1,499(2016/07現在)。モーションキャプチャについてはKinectやLeap Motion等色々ありますが、Perception Neuronは体の関節それぞれにNEURONと呼ばれるIMUを付けて関節の角度をジャイロと加速度で傾きを取って磁気で補正してモーションをキャプチャーする事が出来るのが特徴です。Wi-Fi接続も可能で、電波が届く範囲内であればワイヤレスでも自由に移動が可能。またWi-Fi環境がなくても、ハブに刺せるmicroSDへモーションデータを保存することも可能です。

Axis Neuronについて


Axis Neuron

Axis NeuronとはPerception Neuron専用のモーションキャプチャ用ソフト。キャリブレーションしたりモーキャプ撮ったり出来ます。

Axis NeuronはこちらからStandard版をfreeでダウンロード可能。

Perception Neuronを購入すればPro版を無償で入手出来ます。(2016/07現在)
因みにPro版の入手方法は少し分かりづらかったです。
下記を読めば恐らく分かるかと。

使用バージョン

Axis Neuron Version 3.7.42.5837
Unity Integration 0.25

参考にしたリンク

公式のUnityと連携する際のハンドブック。英語ですが一番纏まっています。
PERCEPTION NEURON UNITY HANDBOOK

基本的な情報に関してはこちらのブログが役立ちました。ありがとうございます。
まずはこちらの通りやってみるとPerception Neuronについて大体把握出来ます。

キャリブレーションに関しては公式のチャートリアルの動画が分かりやすいです。

Perception使用例

今回の目標:Unityで使えるMecanim準拠のアニメーションクリップを作成する

例えば「電話をしている人」や「工事現場で働く人」等、地味だけど町中のシーンには必要でなかなか良いモーションが見つからないものがサクッと作れるようになれば・・・と考えております。

1.Axis Neuronを使ってモーションをとる

Axis Neuron

これはPerception Neuronのセットアップやキャリブレーションが出来れば非常に簡単。ボタン一つ。
このボタンをクリックして次にまたクリックするまでモーションを撮り続けます。

作業の際の注意点

☆モーションレックが終わったら一度unity用FBXで書き出して動きを確認してみる。
モーションレックのスタートのボジションの問題かと思うのですが最初の姿勢によって最終的にUnityに読み込んだ時に動作がおかしくなる事がありました。
ボーンの設定か?・・・ジンバルロック??・・・とかだいぶ悩んだのですがが単に姿勢を正して撮る事で解決したので、編集して最適化する前に一度Unityに取り込んでみて動作を確認する事をオススメします。

2.Axis Neuronを使ってモーションを編集した・・・かった。

結論を言うと大した編集は出来ませんでした。そもそもAxis Neuronのドキュメントないしモーションキャプチャー自体やる事が初めての僕にとっては何が必要な機能なのかすら分からん。

2の2.BVHで書きだしてBlenderで編集

Blender

使用ソフト
BlenderBlender2.75a

Axis Neuronのなかで編集する事は諦めて書き出したモーションを外部のソフトで編集する事にしました。
ソフトはLive MoationやMMD等色々試してみたのですが結局比較的使い慣れていて、Unityとの連携の部分で情報が多いBlenderで行う事にしました。

作業の際の注意点

・Axis NeuronでBlender用にBiovision BVHで書き出す。FBXで書き出すと僕の環境ではBlenderに読み込んだ際にボーンが崩れた。他の人で同じFBXのモーションを同じバージョンのBlenderで読み込んでみた貰った場合問題は起こらなかった・・・何故だ。僕の時間を返せ。
・今現在全ての動作を確認したのはBlender2.75aのみです。(それ以降のバージョンだと何故かUnityにインポートした時に崩れる現象を確認しています。)

Blender内での作業

・「Simplifiy F-Curves」を使ってスムージング。もしくはFKにベイクしてしまう。どちらかを行ってモーションを間引て軽量化する。そのままUnityにもっていくと重すぎて色々併用する時に使い物にならない。
どういった時にどちらの処理を行った方が良いかまでは今回は検証していません。用途によって変わってくるかと思います。

→「Simplifiy F-Curves」を使ってスムージング。

→FKにベイクする

・開始、終了位置等微調整

・FBXアスキーで「選択したオブジェクト」のみ選んでエクスポート

作業の際の注意点
・出来るだけ軽量にと考えたらバイナリーを使いたい所だが何故か僕の環境ではFBXアスキーにしないと動作がおかしくなる。他のメンバーの環境では同じBlenderのverなのにおこらない・・・意味不明。
とりあえずアスキーならどちらの環境でも正しく動作したので一応アスキーを推奨。

3.Unityにインポートして他のモデルに適応する

Unity

使用ソフト
Unity5.3.5f1

上記のファイルをインポートしRigの設定をHumanoidに変更。つま先等紐付かない所もあるが問題なく動作する。
IKの設定の問題かモーションがまるでダンスしているみたいになってしまう事がある。その際はAnimatorのそれぞれのactionの設定で「Foot IK」を入れると動作が改善する事がある。

これで今回目標であった「Unityで使えるMecanim準拠のアニメーションクリップを作成する」は一応完了する事は出来ました。これ以上モーションの質を上げるにはレックの際やBlenderの中での編集等行う必要があります。
その辺りのノウハウはこれからモーションキャプチャーの依頼があった時に色々試してみて蓄積していければ良いと思っています。
今回はソフトのバージョンや書き出しの形式に随分悩まされました。新しいバージョンが出たらその都度確認が必要かも知れませんね。
  • このエントリーをはてなブックマークに追加

SNSでもご購読できます。

コメントを残す

*