欧拉旋转最为直观,但(1)需要按照特定顺序进行旋转,(2)会产生万向节锁,(3)会产生多个逆解,难以反推。
矩阵旋转在欧拉旋转基础上解决了难以反推的问题,但没有欧拉旋转那么易懂。并且欧拉旋转在运算中,其实也要转成矩阵的形式。可以理解为欧拉旋转是矩阵旋转中的特例,其指定了三个旋转轴(x,y,z);而矩阵旋转则是可以围绕任一轴进行旋转。
四元数则是在前两者的基础上大大优化了旋转计算时需要的时间和储存空间,极易于机器人上的运动旋转计算,因此往往将欧拉角(roll,pitch,yaw)作为输入,将其转为四元数进行计算,最后再将结果转换回欧拉角输出给使用者。其缺点就在于是四维空间中的向量,难以理解。
好文记录:
https://www.cnblogs.com/jins-note/p/9512719.html