SatooRu's Profile

全ての記事梶研の進捗日常の記録制作物一覧

梶研 [Unity で複数人の動作を可視化]

2024年1月9日

thumbnail

Unity で複数人の動作を可視化

出席率

  • 3年セミナー:??%

スケジュール

短期的な予定

  • mocopi でセンシング(~12月)
    • mocopi x Unity
    • 色んな動作をとる
    • 誤差を計測(簡易)
    • 動作をグラフ化
    • bvhをパースするパッケージを作る
    • csv に書き出せるアプリを作る
    • 複数人の絡みを取ってみる
    • ブラウザで動作を確認できるようにする(gLTF形式の理解)
    • Unity で複数人の動作を可視化する
    • 一連のやり方を esa にまとめる
  • mocopi と action slam2
    • ?

長期的な予定

  • 1月 研究の方針を決める & 進め方を決める

進捗報告

Unity で複数人の動作を可視化する

前回: Unityちゃんでやってみたら、ピンク(テクスチャが無し)になってしまった
対応: トゥーンシェーダーデータをインストールする 参考

懸念点

再生した時、Unity上の世界座標が原点なのか、モデルの初期位置が原点なのか

(0, 0) スタート

(-4, -4) スタート

モデルの初期位置が原点となることがわかった
→ モデルの位置を調整することで位置関係を再現できる

問題点

bvhの最初のデータが (0, 腰の位置, 0)、
数フレーム後から正しい位置になっている
→ モデルの初期位置 と データの正しい位置は異なり、テレポートするため調整が面倒

最初の一瞬で近づいている
このテレポートを考慮して初期位置を調整している

対応

bvh から Unity で再生できる fbx形式に変換する時に処理を行う

  1. 開始時の (x, z) = (0, 0) となっているデータを削除
  2. 0フレーム目の位置が (x, z) = (0, 0) となるように調整
  3. bvh から fbx に変換する
データを処理するプログラム
1from mcp_persor import BVHparser 2import sys 3import argparse 4 5parser = argparse.ArgumentParser() 6parser.add_argument('file', type=str, help='input mocopi record file *.bvh') 7 8args = parser.parse_args(sys.argv[sys.argv.index('--') + 1:]) 9 10bvhp = BVHparser(args.file) 11 12# データのない箇所を削除 13motion_df = bvhp.get_motion_df() 14motion_df = motion_df[ 15 (motion_df['root_Xposition'] != 0) | (motion_df['root_Zposition'] != 0) 16] 17 18# 位置と回転をリセット 19reset_channels = ['root_Xposition', 'root_Zposition', 'root_Yrotation'] 20for c in reset_channels: 21 motion_df[c] = motion_df[c] - motion_df.iloc[0][c] 22 23# dataframeを更新 24bvhp.set_motion_df(motion_df) 25 26new_file = f"{args.file[:-4]}-reset.{args.file[-3:]}" 27bvhp.to_bvh(new_file) 28 29# new_file を標準出力する 30print(new_file)

再現できなかった

一連のやり方を esa にまとめようとプロジェクトを作るところからやったところ、
再現ができなくなってしまいました...

  • スケールが 100倍 になる
  • 動作が反映されない スクリーンショット 2024-01-12 12.38.03.png (611.0 kB)

mocopi と action slam2

研究を始めたい

「mocopi は長時間動くと狂う」
他のセンサと組み合わせて途中でキャリブレーションできないか

例)
歩いているとき、足が一定間隔で伸びると仮定すると
歩いているのに膝が最小でも30度曲がっている→ ー30度して調整(適当)

進め方が分からない

  • 論文の流れを考えた方が良い?
  • とりあえずどの場面にするか決める?

進路関係

余談

高大連携LT会をした [12/26]

IMG_0436.JPG (710.0 kB) IMG_0444.JPG (457.0 kB) IMG_0543.jpg (1.6 MB)

高校生のやる気が引き出せた

体調崩した [12/28 ~ 1/4]

なにも出来なかった

家族で熱海に行った [1/4 ~ 1/5]

IMG_5892.JPG (6.2 MB) IMG_5902.JPG (8.0 MB) IMG_5907.JPG (5.7 MB)

興国城の写真しか無かった

ペンギン水族館に行った [1/9 ~ 1/10]

始発

IMG_5918.JPG (2.8 MB) IMG_5924.JPG (2.8 MB) IMG_5928.JPG (4.0 MB) IMG_5931.JPG (4.3 MB) IMG_5935.JPG (3.3 MB) IMG_5955.JPG (3.6 MB) IMG_5956.JPG (2.7 MB) IMG_5958.JPG (3.7 MB) IMG_5964.JPG (4.2 MB) IMG_5970.JPG (3.2 MB)

終電の西九州新幹線

ペンギン水族館

IMG_5978.JPG (4.7 MB) IMG_5997.JPG (4.5 MB) お土産屋で2万円溶けました...

島原城

IMG_5980.JPG (4.0 MB)

帰った

IMG_5984.JPG (2.2 MB) IMG_5993.JPG (4.4 MB)