1.说明
1.1安装
pip3 install transforms3d
2.四元数相关转换
四元数模块在transforms3d.quaternions里,直接导入即可使用
import transforms3d as tfs
import numpy as np
2.1 四元数与旋转矩阵互转
2.1.1四元数转旋转矩阵
tfs.quaternions.quat2mat([1,0,0,0])
2.1.2 旋转矩阵转四元数
tfs.quaternions.mat2quat(np.asarray([[1., 0., 0.],[0., 1., 0.],[0., 0., 1.]]))
2.2 四元数与轴角互转
2.2.1 四元数转轴角
tfs.quaternions.quat2axangle([1,0,0,0])
2.2.2 轴角转四元数
tfs.quaternions.axangle2quat([1,0,0],0.5)
3.欧拉角相关转换
四元数模块在transforms3d.euler里,直接导入即可使用文章来源:https://www.toymoban.com/news/detail-469341.html
import transforms3d as tfs
import numpy as np
3.1 欧拉角与四元数互转
3.1.1 固定轴欧拉角转四元数
tfs.euler.euler2quat(0,0,0,"sxyz")
3.1.2 四元数转固定轴欧拉角
tfs.euler.quat2euler([1,0,0,0],"sxyz")
3.2 欧拉角与旋转矩阵互转
3.2.1 固定轴欧拉角转旋转矩阵
tfs.euler.euler2mat(0,0,0,"sxyz")
3.2.2 旋转矩阵转固定轴欧拉角
tfs.euler.mat2euler(np.asarray([[1., 0., 0.],[0., 1., 0.],[0., 0., 1.]]),"sxyz")
3.3 欧拉角与轴角互转
3.3.1 固定轴欧拉角轴角
tfs.euler.euler2axangle(0,0,0,"sxyz")
3.3.2轴角转固定轴欧拉角
tfs.euler.axangle2euler([1,0,0],0.5,"sxyz")
4.轴角相关转换
四元数模块在transforms3d.axangle里,直接导入即可使用文章来源地址https://www.toymoban.com/news/detail-469341.html
4.1 轴角与旋转矩阵互转
4.1.1 轴角转旋转矩阵
tfs.axangles.axangle2mat([1,0,0],0.5)
4.1.2 旋转矩阵转轴角
tfs.axangles.mat2axangle(np.asarray([[1., 0., 0.],[0., 1., 0.],[0., 0., 1.]]))
到了这里,关于ROS系列——使用python的transforms3d、numpy库实现四元数、旋转矩阵、欧拉角、轴角等的相互转换的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!