这节课主要是说的是旋转与平移的表示方法~~
● 一般的情况下,坐标可以用xyz轴表示,xyz轴的表示方法用的是右手表示法(x到y轴是四个手指弯曲的方向,大拇指就是z轴方向)
● a与b的乘法分为a·b(点乘/内积)与a×b(叉乘/外积) |a×b|=|a||b|sin<a,b>
就是那个a尖尖啦~~
介绍完坐标系之间的关系后,遇到的问题如下
1、如何描述坐标系与坐标系之间的变化?
2、如何计算同一个向量在不同坐标系里的坐标?
一个点无论如何进行位移,都可以用两个元素来表示,一个是旋转量R一个是平移T
●R(旋转矩阵)
一个点如果不进行移动,那么在两个坐标系下的关系有如下关系
左边是原坐标系,右边是另一个坐标系,因为点没有移动,因此两边等式成立,化简后如右边
可以求得R是一个好复杂那个矩阵
这个矩阵有两个性质:1、行列式=1 2、是一个对称矩阵 也就是R的逆=R的转置。
因此我们把满足着两条性质的所有矩阵都称为旋转矩阵
把这一类矩阵定义成一个群:
但是无论怎么变换最后还是要加上一个平移呀,然后觉的真的是好麻烦啊好麻烦,不如我们加一个向量,然后把旋转和平移放在一起吧~~
然后原来是这样的形式:
我们加入一个分量,则变成这样的形式:
多了一个分量,平移和旋转都可以进入到一个矩阵中
并且在多次旋转平移后,都尽可能地用了一个式子表示
我们将这种
称为变换矩阵(与旋转矩阵分开哦),并且将这一类矩阵定义成另外一种群:
称为特殊欧氏群。
另外:诸如这种形式的称为齐次坐标,这样的齐次坐标的一大性质就是 乘以任意为零常数时仍然表达的是同一个坐标,因此我们经常会把这种坐标做归一化处理,防止会有不同的坐标表达错乱
● 利用Eigen库进行矩阵、向量的计算、分解
Eigen::Matrix