import sys
import math

w = -0.99114048481
x = -0.00530699081719
y = 0.00178255140781
z = -0.133612662554

r = math.atan2(2*(w*x+y*z),1-2*(x*x+y*y))
p = math.asin(2*(w*y-z*z))
y = math.atan2(2*(w*z+x*y),1-2*(z*z+y*y))

angleR = r*180/math.pi
angleP = p*180/math.pi
angleY = y*180/math.pi

print (angleR)#翻滚
print (angleP)#俯仰
print (angleY)#偏航

输出:
0.575472843396
-2.24876083545
15.3574378019

https://blog.csdn.net/pengcan985632236/article/details/85230675
https://blog.csdn.net/u012700322/article/details/52252305
https://blog.csdn.net/zhouxinlin2009/article/details/81050028
https://blog.csdn.net/dinnerhowe/article/details/79569281
https://blog.csdn.net/super_mice/article/details/45619945
https://blog.csdn.net/wwlcsdn000/article/details/79421612#comments

ros python 四元数 转 欧拉角的更多相关文章

  1. 3D数学基础:四元数与欧拉角之间的转换

    在3D图形学中,最常用的旋转表示方法便是四元数和欧拉角,比起矩阵来具有节省存储空间和方便插值的优点.本文主要归纳了两种表达方式的转换,计算公式采用3D笛卡尔坐标系: 单位四元数可视化为三维矢量加上第四 ...

  2. 四元数与欧拉角(RPY角)的相互转换

    RPY角与Z-Y-X欧拉角 描述坐标系{B}相对于参考坐标系{A}的姿态有两种方式.第一种是绕固定(参考)坐标轴旋转:假设开始两个坐标系重合,先将{B}绕{A}的X轴旋转$\gamma$,然后绕{A} ...

  3. eigen 中四元数、欧拉角、旋转矩阵、旋转向量

    一.旋转向量 1.0 初始化旋转向量:旋转角为alpha,旋转轴为(x,y,z) Eigen::AngleAxisd rotation_vector(alpha,Vector3d(x,y,z)) 1. ...

  4. python ros 四元数转欧拉角

    #! /usr/bin/python import PyKDL import rospy from sensor_msgs.msg import Imu from nav_msgs.msg impor ...

  5. python 使用PyKDL 四元数转欧拉角

    安装: sudo apt-get install ros-indigo-kdl-parser-py 使用: import PyKDLimport math def quat_to_angle(quat ...

  6. How to fix the conflict between ROS Python and Conda

    Problem: Ever since I have installed Conda, ROS does not seem to work. And predictably it is because ...

  7. 3D数学基础(四)四元数和欧拉角

    一.四元数 四元数本质上是个高阶复数,可视为复数的扩展,表达式为y=a+bi+cj+dk.在说矩阵旋转的时候提到了它,当然四元数在Unity里面主要作用也在于此.在Unity编辑器中的Transfor ...

  8. ros python 订阅robot_pose

    #!/usr/bin/env python import rospy import tf import time from tf.transformations import * from std_m ...

  9. ros python 重置位置

    #!/usr/bin/env python import rospy import math import sys import commands import yaml from tf import ...

随机推荐

  1. 使用MD5加密字符串

    一.概念: MD5码以512位分组来处理输入的信息,且每一分组又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将生成一个128位散列值. 二 ...

  2. ExcelReport.cs Excel操作类、实例源码下载

    标题一.告别ASP.NET操作EXCEL的烦恼标题二.ASP.NET操作EXCEL 合并单元格 大全... cnblogs/hanzhaoxin/韩兆新的博客园ExcelReport第一篇:使用Exc ...

  3. Git pull记住密码

    在使用https git拉取代码时,每次git pull的时候都会让输入用户名和密码 进入项目目录 命令:git config --global credential.helper store 然后会 ...

  4. restTemplate源码解析(目录)

    restTemplate是spring实现的,基于restful风格的http请求模板.使用restTemplate可以简化请求操作的复杂性,同时规范了代码风格.本系列文章,将根据以下目录顺序,从源码 ...

  5. 关于Vue中,父组件获取子组件的数据(子组件调用父组件函数)的方法

    1. 父组件调用子组件时,在调用处传给子组件一个方法 :on-update="updateData"   2. 子组件在props中,接收这个方法并声明 props: { onUp ...

  6. JavaScript内置一些方法的实现原理--Object.freeze()、instanceof

    const定义的常量,一般是不能修改的. 比如: const TIME_OUT = 10000; 但是当值为引用类型值时,还是可以操作对象,扩展或修改对象属性.方法等等. 以下演示代码的操作是不会报错 ...

  7. PLSQL Developer新建表空间

    转自:https://www.cnblogs.com/juddhu/archive/2012/03/20/2408499.html 通过pl/sql登录到Oracle数据库上,然后执行菜单:文件/新建 ...

  8. 制作win10系统及安装win10系统

    制作win10系统 1.登陆msdn,下载win10系统,打开迅雷下载器,复制完该段代码,直接开始下载,网址:https://msdn.itellyou.cn/ 2.下载软碟通,下载网址:https: ...

  9. java一些基本算法

    本文主要介绍一些常用的算法: 冒泡排序:两两相互之间进行比较,如果符合条件就相互兑换. //冒泡排序升序 public static int[] bubblingSortAsc(int[] array ...

  10. 《ABCD组》实验十一 团队作业7:团队项目设计完善&编码

    <ABCD组>实验十一 团队作业7:团队项目设计完善&编码 项目 内容 这个作业属于哪个课程 http://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在 ...