首先总结而言:仿射变换矩阵实际上就是:平移向量+旋转变换组合而成,可以同时实现旋转,缩放,平移等空间变换。
Eigen库中,仿射变换矩阵的大致用法为:
- 创建Eigen::Affine3f 对象a。
- 创建类型为Eigen::Translation3f 对象b,用来存储平移向量;
- 创建类型为Eigen::Quaternionf 四元数对象c,用来存储旋转变换;
- 最后通过以下方式生成最终Affine3f变换矩阵: a=b*c.toRotationMatrix();
- 一个向量通过仿射变换时的方法是result_vector=test_affine*test_vector;
个人学习仿射变换矩阵的资料为,基本上看懂下边的链接,仿射变换就明白了。
https://www.cc.gatech.edu/classes/AY2015/cs4496_spring/Eigen.html
https://www.cnblogs.com/shine-lee/p/10950963.html
https://www.cnblogs.com/goingupeveryday/p/5699053.html