一、gps

1.SBAS(Satellite-Based Augmentation System)

即星基增强系统,通过地球静止轨道(GEO)卫星搭载卫星导航增强信号转发器,可以向用户播发星历误差、卫星钟差、电离层延迟等多种修正信息,实现对原有卫星导航系统定位精度的改进。

SBAShttps://baike.baidu.com/item/SBAS/712771?fr=aladdin

2.RTK(Real - time kinetic )

实时动态载波相位差分技术,是实时处理两个测量站载波相位观测量的差分方法,将基准站采集的载波相位发给用户接收机,进行求差解算坐标

RTKhttps://baike.baidu.com/item/%E5%AE%9E%E6%97%B6%E5%8A%A8%E6%80%81%E8%BD%BD%E6%B3%A2%E7%9B%B8%E4%BD%8D%E5%B7%AE%E5%88%86%E6%8A%80%E6%9C%AF/57206910?fr=aladdin&fromtitle=RTK&fromid=397408

3.差分GPS(differential GPS-DGPS,DGPS)

首先利用已知精确的三维坐标的差分GPS基准台,求得伪距修正量或位置修正量,再讲这个修正量实时或时候发送给用户(GPS导航仪),对用户的测量数据进行修正,以提高GPS定位精度

差分GPShttps://baike.baidu.com/item/%E5%B7%AE%E5%88%86GPS/10862498?fr=aladdin

二、四元数与欧拉角转换

超好的一个链接:https://en.wikipedia.org/wiki/Conversion_between_quaternions_and_Euler_angles#Euler_angles_to_quaternion_conversionhttps://en.wikipedia.org/wiki/Conversion_between_quaternions_and_Euler_angles#Euler_angles_to_quaternion_conversion

1、四元数到欧拉角的转换

转换关系

Note, however, that the arctan and arcsin functions implemented in computer languages only produce results between −π/2 and π/2, and for three rotations between −π/2 and π/2 one does not obtain all possible orientations. To generate all the orientations one needs to replace the arctan functions in computer code by atan2: (考虑到分母不为0)

c++代码:

#define _USE_MATH_DEFINES
#include <cmath>struct Quaternion {double w, x, y, z;
};struct EulerAngles {double roll, pitch, yaw;
};EulerAngles ToEulerAngles(Quaternion q) {EulerAngles angles;// roll (x-axis rotation)double sinr_cosp = 2 * (q.w * q.x + q.y * q.z);double cosr_cosp = 1 - 2 * (q.x * q.x + q.y * q.y);angles.roll = std::atan2(sinr_cosp, cosr_cosp);// pitch (y-axis rotation)double sinp = 2 * (q.w * q.y - q.z * q.x);if (std::abs(sinp) >= 1)angles.pitch = std::copysign(M_PI / 2, sinp); // use 90 degrees if out of rangeelseangles.pitch = std::asin(sinp);// yaw (z-axis rotation)double siny_cosp = 2 * (q.w * q.z + q.x * q.y);double cosy_cosp = 1 - 2 * (q.y * q.y + q.z * q.z);angles.yaw = std::atan2(siny_cosp, cosy_cosp);return angles;
}

2、欧拉角到四元数的转换

struct Quaternion
{double w, x, y, z;
};Quaternion ToQuaternion(double yaw, double pitch, double roll) // yaw (Z), pitch (Y), roll (X)
//pitch是围绕y轴旋转
//yaw是围绕z轴旋转
//roll是围绕x轴旋转
{// Abbreviations for the various angular functionsdouble cy = cos(yaw * 0.5);double sy = sin(yaw * 0.5);double cp = cos(pitch * 0.5);double sp = sin(pitch * 0.5);double cr = cos(roll * 0.5);double sr = sin(roll * 0.5);Quaternion q;q.w = cr * cp * cy + sr * sp * sy;q.x = sr * cp * cy - cr * sp * sy;q.y = cr * sp * cy + sr * cp * sy;q.z = cr * cp * sy - sr * sp * cy;return q;
}

3、四元数到欧拉角在线转换工具

https://quaternions.online/https://quaternions.online/

@meng

无人驾驶学习(二):定位与导航相关推荐

  1. 游戏思考17:寻路引擎recast和detour学习二:recast导航网格生成流程\源码剖析流程\局限性,附录计算点线面举例代码

    一.recastnavigation使用介绍 1)模式选择 Solo Mesh:单块生成 Tile Mesh:分块生成 Temp Obstacles:分块并支持动态阻挡 这里测试的话选单块生成 2)模 ...

  2. 基于ROS+镭神激光雷达+amcl定位、导航的智能车学习记录

    目录 一.背景 二. 难点之避障学习 三.比赛实参 一.背景 背景 目前大火的智能车.机器人.无人驾驶技术,现基于嵌入式系统.人工智能.机器人定位与导航基础 开展了第十四届全国大学生智能汽车竞赛-室外 ...

  3. 在Jetson Nano上学习ROS的记录(版本Ubuntu18.04,课程来源赵虚左老师的《ROS理论与实践》)第十二章 机器人导航(仿真)

    系列文章目录 第一章 ROS空间创建.helloworld的实现.开启多个节点 第二章 话题通信 第三章 服务通信 第四章 参数服务器 第五章 常用指令 第六章 通信机制实操 第七章 ROS通信机制进 ...

  4. Windows phone 8 学习笔记(8) 定位地图导航

    Windows phone 8 学习笔记(8) 定位地图导航 原文:Windows phone 8 学习笔记(8) 定位地图导航 Windows phone 8 已经不使用自家的bing地图,新地图控 ...

  5. Windows phone 8 学习笔记(8) 定位地图导航(转)

    Windows phone 8 学习笔记(8) 定位地图导航(转) Windows phone 8 已经不使用自家的bing地图,新地图控件可以指定制图模式.视图等.bing地图的定位误差比较大,在模 ...

  6. ROS机器人SLAM学习:Gazebo定位与导航仿真

    ROS机器人SLAM学习:Gazebo定位与导航仿真 一. 在 gazebo 中构建一个用于建图和导航的虚拟环境,可以使用 Building Editor工具创建,也可以使用其他功能包中已有的虚拟环境 ...

  7. 【SLAM建图和导航仿真实例】(二)- 根据已知地图进行定位和导航

    引言 在这个-SLAM建图和导航仿真实例-项目中,主要分为三个部分,分别是 (一)模型构建 (二)根据已知地图进行定位和导航 (三)使用RTAB-MAP进行建图和导航 该项目的slam_bot已经上传 ...

  8. ROS机器人SLAM学习:自建虚拟世界与Gazebo定位与导航仿真

    gazebo 中能仿真真实世界,包括很多物理属性,比如惯性,碰撞等.对于没有真实机器人和场地条件的情况下,作用十分强大. 在本篇文章中,我会介绍如何在Gazebo中实现小车的定位与导航仿真,我会将所用 ...

  9. 解析 | 自动驾驶视觉定位与导航技术的研究与应用

    视觉定位与导航技术是智能体具备的基础能力之一,随着无人驾驶的发展,基于低成本摄像头及人工智能算法的视觉定位与导航技术成为了无人驾驶的主流技术路线之一.在传统工作方式中,视觉定位与导航技术通常采用SLA ...

  10. 【基础导航软件架构】无人驾驶车/机器人的基本导航软件系统框架(自己总结)

    系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 TODO:写完再整理 文章目录 系列文章目录 前言 一.感知模块的理解 1.环境感知 传感器sensor 目标检测det ...

最新文章

  1. mysql子查询日期比较_数据分析系列 16/32 | MySQL中子查询与联合查询
  2. 敏捷之道Scrum篇
  3. 一张图看懂微软Power BI系列组件
  4. jQuery选择器案例之——index.js
  5. ubuntu 开启 rewrite 模块
  6. TabTopUnderLineLayout【自定义顶部选项卡(带下划线)】
  7. Spring Boot:Exception parsing document: template=index, line 7 - column 3
  8. 京东发布双11首份战报:手机品类18秒销量突破万台
  9. 为什么叫C++而不叫++C ?
  10. 【JZOJ A组】时空幻境
  11. windows内核和Linux内核区别
  12. 2013程序员考证下午题练习
  13. 小明左右手分别拿两张纸牌:黑桃10和红心8,现在交换手中的牌。编写并输出互换后的结果,输出结果如图所示
  14. oracle 定时 analyze,ORACLE-ANALYZE命令分析
  15. jeecms v9图标不显示问题
  16. NPOI导出EXCEL 打印设置分页及打印标题
  17. element的el-table-column循环渲染和自定义列
  18. 队列 (Queue)
  19. C++语言判断一个数是否为素数1/2
  20. outlook gmail setting

热门文章

  1. 电商网站前台模板_湖州搜索引擎优化网站网络推广营销公司
  2. 关于coutends你不知道的那些事
  3. 斯坦福大学区块链期末考试题
  4. 学渣笔记——Java常用基本数据类型
  5. ICPC North Central NA Contest 2017 H.Zebras and Ocelots
  6. Grid++Report报表开发工具介绍
  7. 三级等保 mysql8.0.24密码策略设置
  8. 入坑Java_入坑Java的自学之路
  9. Katalon Recorder使用教程—安装
  10. 【阿里云】短视频SDK产品