【视觉SLAM14讲】ch3课后题答案
1.驗證旋轉矩陣是正交矩陣
感覺下面這篇博客寫的不錯
http://www.cnblogs.com/caster99/p/4703033.html?
總結一下:旋轉矩陣是一個完美的矩陣——正交矩陣。①行列式為1,②每個列向量都是單位向量且相互正交,③它的逆等于它的轉置。
?
?
2.羅德里格斯公式的簡單推導
http://blog.sina.com.cn/s/blog_ea828d2a0102wlk6.html
羅德里格斯旋轉公式是通過反對稱矩陣求旋轉矩陣的方法,起初我在看別人寫的姿態解算分析文章里看到,他的推導如下:
請注意我做標記的地方,我剛開始一直不明白這種推導,這樣會有誤差的推導,難道羅德里格斯公式是對旋轉矩陣R的近似?這樣做并不好,反而會使解算的姿態更不準確,后來在群里討論這個問題,有大神給我解惑了。
首先我們明白這是一個SO(3)到SO(3)的李群的映射。不要擔心自己不知道李群是什么,因為我們下面的推導會非常簡單!
?
我們先來看什么是反對稱矩陣,在這之前,先展示它和向量叉乘(內積)的關系:
紅色三個格子應該是i? j? k
?
下面看看我們的反對稱矩陣運算:
加一個小三角,就是將這個向量變成一個反對稱矩陣
?
?所以我們得出:
我們知道我們的旋轉矩陣R和我們的三角函數的關系,這里就不多說了,所以現在我們來看一個反對稱矩陣的性質,首先定義一個反對稱矩陣:
同時我們有如下的約束:
現在我們可以看到我們的反對稱陣有如下性質:
?
現在可以進行我們的羅德里格斯公式推導了:
?
?
?3.?驗證四元數旋轉某個點后,結果是一個虛四元數(實部為零),所以仍然對應 到一個三維空間點(式 3.34)。
?=.=? 看我干啥?下一題
?
?
4.旋轉矩陣? 軸角? 歐拉角? 四元數
書上都有
P42 軸角[n,α]與旋轉矩陣的關系
P52 軸角[n,α]與四元數的關系
歐拉角存在gimbal lock,不研究他的關系【其實我不會】
?
5.假設有一個大的eigen矩陣,想把他的左上角的3*3取出來,然后賦值為I3x3
?
?
?
?
6.Ax = b的Eigen實現
?
?
7.
機器人一號和二號,分別在世界坐標系中。?
一號的位姿q1=[0.35,0.2,0.3,0.1],?t1=[0.3,0.1,0.1]T。?
二號的位姿q2=[?0.5,0.4,?0.1,0.2],?t2=[?0.1,0.5,0.3]T。?
q的第一項是實部,且還未歸一化。?
已知一號機器人看到某個點,在他的坐標系下是p=[0.5,0,0.2]T, 求在二號機器人坐標系下該點的位置。
?
#include <iostream> #include <cmath>// Eigen 部分 #include <Eigen/Core> // 稠密矩陣的代數運算(逆,特征值等) #include <Eigen/Dense> //Eigen 幾何模塊 #include <Eigen/Geometry>using namespace std;int main(int argc, char **argv) {Eigen::Quaterniond q1(0.35, 0.2, 0.3, 0.1);Eigen::Quaterniond q2(-0.5, 0.4, -0.1, 0.2);Eigen::Vector3d t1(0.3, 0.1, 0.1);Eigen::Vector3d t2(-0.1, 0.5, 0.3);Eigen::Vector3d p1(0.5, 0, 0.2);Eigen::Quaterniond q1_one = q1.normalized();Eigen::Quaterniond q2_one = q2.normalized();//way1 Eigen::Vector3d v = q1_one.inverse() * (p1 - t1);Eigen::Vector3d v2 = q2_one * v + t2;cout << "way1 v2 = " << endl << v2 << endl;//way2 Eigen::Matrix3d R1 = Eigen::Matrix3d(q1_one);Eigen::Matrix3d R2 = Eigen::Matrix3d(q2_one);Eigen::Vector3d v_2 = R1.inverse() * (p1 - t1);Eigen::Vector3d v_2_2 = R2 * v_2 + t2;cout << "way2 v2= " << endl << v_2_2 << endl;return 0; }
?
way1 v2 = -0.03097310.734990.296108
way2 v2= -0.03097310.734990.296108 *** Exited normally ***
?
轉載于:https://www.cnblogs.com/-Mr-y/p/7737990.html
總結
以上是生活随笔為你收集整理的【视觉SLAM14讲】ch3课后题答案的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 闪送多少钱啊?
- 下一篇: 发烧去医院打点滴多少钱?