實現**:
#include #include #include using namespace std;
int main(int argc, char **ar**)
{ eigen::quaterniond q1(0.35,0.2,0.3,0.1); //定義兩個四元數
eigen::quaterniond q2(-0.5,0.4,-0.1,0.2);
q1.normalize(); //歸一化
q2.normalize();
eigen::vector3d t1(0.3,0.1,0.1); //定義兩個平移向量
eigen::vector3d t2(-0.1,0.5,0.3);
//eigen::matrix3d r1=q1.torotationmatrix();
//eigen::matrix3d r2=q2.torotationmatrix();
eigen::isometry3d t1=eigen::isometry3d::identity(); //定義兩個變換矩陣
t1.rotate(q1); //由四元數確定旋轉(也可由旋轉矩陣、旋轉向量確定旋轉)
t1.pretranslate(t1);
eigen::isometry3d t2=eigen::isometry3d::identity();
t2.rotate(q2);
t2.pretranslate(t2);
eigen::vector3d v1(0.5,0,0.2); //小蘿蔔一號在自身座標系下看到的某個點座標
eigen::vector3d p_world=t1.inverse()*v1; //根據變換關係求出該點座標的世界座標
eigen::vector3d p_c2=t2*p_world; //由世界座標反解出其在小蘿蔔二號自身座標系下看到的該點座標
cout<
SLAM十四講課後個人理解
1.閱讀文獻 1 和 14 你能看懂文獻的內容嗎?文獻1 基於圖優化的同時定位與地圖建立,這邊綜述主要是從幀間配準 環形回環檢測以及優化3個方面對圖優化的同時定位與地圖建立做了綜述 文獻14 基於單目視覺的同時定位與地圖構建方法綜述 這邊文獻主要是講了主流的三種v slam方法,基於濾波器 基於關鍵...
《視覺SLAM十四講》第2講
目錄本講主要內容 1 視覺slam中的感測器 2 經典視覺slam框架 3 slam問題的數學表述 想象乙個在室內的移動機械人在自由地探索室內的環境,那麼定位與建圖可以直觀地理解成 1 我在什麼地方?定位 2 周圍環境是怎樣的?建圖 而要完成定位和建圖則需要各種感測器的支援。感測器一般可以分為兩類,...
視覺SLAM十四講Debug
find package opencv required 失敗,找不到opencv3.1.0版本 find package opencv 3 required 成功eigen make unaligned array assert 31 解決辦法 vectorposes 修改為下面的語句 vecto...