以下是将欧拉角转换为旋转矩阵的 Python 代码:

import numpy as np

def euler_to_rotmat(euler_angles):
    # 将欧拉角转换为弧度
    roll = euler_angles[0] * np.pi / 180.0
    pitch = euler_angles[1] * np.pi / 180.0
    yaw = euler_angles[2] * np.pi / 180.0

    # 计算旋转矩阵
    R_x = np.array([[1, 0, 0],
                    [0, np.cos(roll), -np.sin(roll)],
                    [0, np.sin(roll), np.cos(roll)]])
    R_y = np.array([[np.cos(pitch), 0, np.sin(pitch)],
                    [0, 1, 0],
                    [-np.sin(pitch), 0, np.cos(pitch)]])
    R_z = np.array([[np.cos(yaw), -np.sin(yaw), 0],
                    [np.sin(yaw), np.cos(yaw), 0],
                    [0, 0, 1]])
    R = np.dot(R_z, np.dot(R_y, R_x))

    return R

其中,欧拉角的输入格式为'[roll, pitch, yaw]',单位为度。输出为一个 3x3 的旋转矩阵。

Python 代码:将欧拉角转换为旋转矩阵

原文地址: https://www.cveoy.top/t/topic/lS74 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录