1
私は、正確なクォータニオンといくつかの写真を運のない数週間にわたって歪ませようとしてきました。以下の式は、カメラの位置を回転させるようには見えないし、正確な位置から期待していると思われる。私はそれを正しくしていますか?私は行方不明のものがありますか?クォータニオンをカメラの回転行列に変換する - OpenCV
Quaternionを渡すだけでは写真をステッチするには不十分ですが、写真を整列させるには十分であると思いますか?
は、ここで式です:
double divmult = 2.0/lsq;
double xx = divmult * x * x;
double yy = divmult * y * y;
double zz = divmult * z * z;
double wx = divmult * w * x;
double wy = divmult * w * y;
double wz = divmult * w * z;
double xy = divmult * x * y;
double xz = divmult * x * z;
double yz = divmult * y * z;
cameras_global[imageCounter].R = (Mat_<float>(3, 3) << (1 - yy - zz), -(xy - wz), -(xz + wy),
(xy + wz), -(1 -xx -zz), -(yz - wx),
(xz - wy), -(yz + wx), -(1 -xx -yy) );
私が間違っている場合は私を修正してください。あなたが参照したリンクは、あなたが言っていることの反対をしているようです。角速度を四元数に変換しているようですね? –
ああ、申し訳ありません。ええ、私は答えを修正しました。 – SpamBot
パーフェクト、ありがとう!最後の質問が1つあります(あらかじめご迷惑をおかけして申し訳ありません)。しかし、四分円 - >ロッド角を変換した後、rodriguesからcamera_global [0] .Rへのリターンを使用しますか?または、角度とは何ですか? –