回転行列から回転ベク​トルへの変換がうまく​いきません。

【やりたいこと】
2つの加速度計(大腿骨と下腿骨)の座標からベクトル内積を求める。
120Hzの歩行データ(データ長1200)より、x軸、y軸、z軸のオイラー角が取得できます。そこからeul2rotmを使って回転行列(3×3)へ変換、さらに'rotmat2vec3d'を使って回転ベクトル(3×1列)へ変換しようとしています。しかし以下のようなエラーが出ます。
関数 'rotmat2vec3d' (タイプ'double' の入力引数) が未定義です。
エラー: untitled (行 9)
rotationVector_tibia = rotmat2vec3d(rotm_tibia)
'rotmat2vec3d'の代わりに'rotationMatrixToVector'を使用しましたが同じエラーが出てしまいました。
原因がわかる方いましたらアドバイスよろしくお願いします。

2 Comments

Yoshio
Yoshio on 7 Jun 2024
rotm_tibia が回転行列として正しい形式で、入力されているか確認してみてください。
エラーだけ見ると未定議となっています。
Kohei Yoshino
Kohei Yoshino on 10 Jun 2024
ご回答ありがとうございます。使用する変数の形式は正しいです。rotmat2vec3dを使用するにはComputer Vision Toolboxが必要とのことでした。

Sign in to comment.

Answers (0)

Products

Release

R2023b

Asked:

on 6 Jun 2024

Commented:

on 10 Jun 2024

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!