solvepnp()
回転行列と並進行列の計算に使用しています。しかし、得られた回転行列から計算されたオイラー角は、非常に不安定な値を示しました。問題を見つけようとして、マーカーの 2D 投影ポイントのセットを用意し、他のパラメーターをsolvepnp()
一定に保ちました。
例:
2D ポイントsolvepnp() の出力回転行列から計算されたオイラー
[219.67473, 242.78395;
363.4151, 238.61298;
503.04855, 234.56117;
501.70917, 628.16742;
500.58069, 959.78564;
383.1756, 972.02679;
262.8746, 984.56982;
243.17044, 646.22925]
角theta(x)は-26.4877 でした
次に、最初のポイント (つまり 219.67473) の x 値のみを 0.1 増やして、theta(x) オイラー角の変化をチェックし (残りのポイントと他のパラメーターを一定に保ちます)、再び solvepnp() を実行しました。その非常に小さな変化、私は-19度、-18度(x座標= 223.074の場合)から減少し、しばらくの間突然27度にジャンプし(x座標= 223.174から226.974の場合)、1.3度に下がる値を持っていました(x 座標 = 227.074 の場合)。
この振る舞いがまったく理解できません。誰か説明してもらえますか? 回転行列からのオイラー角の計算では、この手順を使用します。