坐标变换矩阵

news2024/11/14 16:09:32

在高级驾驶辅助系统(ADAS)领域,存在多种常用的坐标系:雷达Lidar坐标系、车辆坐标系、相机坐标系、图像坐标系。

旋转变换矩阵(Rotation Matrix

在二维平面xoy上,由绿色坐标系逆时针旋转θ°到蓝色坐标系。可以看到,点A是没有移动的,变化的是点A分别在前后两个坐标系中的坐标,即从(x_{g}, y_{g})变换到了(x_{b}, y_{b})

如图1中黑色虚线的分解方式所示,通过矢量分解(类似于物理中力、速度等矢量的分解),将绿色坐标系中的(x_{g}, y_{g})分别分解到蓝色坐标系的x轴和y轴上,可以得到:

\\x_{b} = cos\theta * x_{g} + sin\theta * y_{g} \\ y_{b} = -sin\theta * x_{g} + cos\theta* y_{g}

用矩阵表示为:

\begin{bmatrix} x_{b}\\ y_{b} \end{bmatrix} = \begin{bmatrix} cos\theta & sin\theta\\ -sin\theta & cos\theta \end{bmatrix} \begin{bmatrix} x_{g}\\ y_{g} \end{bmatrix}

其中R则为二维情形下的旋转变换矩阵,它表示了A点在前后坐标系中的值的映射关系

R = \begin{bmatrix} cos\theta & sin\theta\\ -sin\theta & cos\theta \end{bmatrix}

三维情形

有了上述在二维平面旋转的基础,三维空间的旋转矩阵也就不难得出了。

即绕x轴,y轴,z轴分别进行旋转。最后将这三个旋转变换矩阵相乘,就能得到在三维空间任意角度的旋转变换矩阵了。(xyz轴满足右手系关系

绕x轴旋转的时候,可以看作在yoz二维平面上的旋转,此时x的值不变

R_{x} =\begin{bmatrix} 1 &0& 0\\ 0 &cos\theta &sin\theta \\ 0 &-sin\theta & cos\theta \end{bmatrix}

绕y轴旋转的时候,可以看作在zox二维平面上的旋转,此时y的值不变

R_{y} =\begin{bmatrix} cos\theta &0& -sin\theta\\ 0 &1&0 \\ sin\theta &0& cos\theta \end{bmatrix}

绕z轴旋转的时候,可以看作在xoy二维平面上的旋转,此时z的值不变

R_{z} =\begin{bmatrix} cos\theta &sin\theta& 0 \\ -sin\theta &cos\theta&0 \\0&0&1 \end{bmatrix}

最终的三维旋转变换矩阵就是上面三个矩阵相乘,意为三维坐标系分别绕x轴、y轴和z轴旋转相应的角度。

R = R_{x}R_{y}R_{z} =\begin{bmatrix} 1 &0& 0\\ 0 &cos\theta_{x} &sin\theta_{x}\\ 0 &-sin\theta_{x} & cos\theta_{x} \end{bmatrix}\begin{bmatrix} cos\theta_{y}&0& -sin\theta_{y}\\ 0 &1&0 \\ sin\theta_{y} &0& cos\theta_{y} \end{bmatrix}\begin{bmatrix} cos\theta_{z} &sin\theta_{z}& 0 \\ -sin\theta_{z} &cos\theta_{z}&0 \\0&0&1 \end{bmatrix}

正交矩阵

向量正交

首先先明白什么是在解析几何中的概念,向量正交是指:若两个同维向量的点乘(也叫:数量积)为0,则两个向量正交(也叫垂直),即:在平面直角坐标系中  相互垂直(夹角为90度)。

例:假设存在三个向量,分别为:

正交矩阵

如果把正交的向量,按列向量的形式放进一个花括号内,即组成了一个正交向量组。那么该正交向量组中的向量,均两两相互垂直(也就是任意拿出两个向量来做点乘都=0)。

例:假设存在4个向量,分别为: 

正交基

基向量是构成向量空间的一个向量组(坐标系),该向量组内的向量是线性无关的(若两两正交,则必定线性无关),并且通过它们的线性组合可以表示整个向量空间中的任意向量。

在此基础上,若基向量组内的向量两两正交,则称作:正交基,如下图所示:

特别的:若基向量组内的向量两两正交,且向量长度均为1,则称作:标准正交基。

向量组转矩阵

矩阵是一种数据结构,简单来说就是一张数表,往格子里填入相应的数字就能视作一个矩阵,所以向量组可以视作矩阵。那么,我们把上面的正交向量组视作矩阵:

正交矩阵

当正交向量组转为矩阵后,我们就可以用矩阵的视角来重新看待“正交向量组”

例1:是几行几列的矩阵?是不是方阵?
例2:矩阵的秩是多少?矩阵是否可逆?

至此,最核心的问题是:什么样的矩阵才能称作正交矩阵?

第一点:必须是一个方阵,即n行n列;

第二点:矩阵中的每一列若视作向量,则这些向量均两两相互垂直;

第三点:矩阵中的每一列若视作向量,则这些向量的长度均为1;

同时满足这3点,即为一个正交矩阵。让我们来看一些例子:

数学定义及性质

1、数字定义:

若一个方阵 是正交矩阵,当且仅当它的转置矩阵与自身的乘积等于单位矩阵

另一种等价的定义是:若方阵是正交矩阵,当且仅当的列向量是两两正交的单位向量。

2、数学特性

1、正交矩阵的逆:,正交矩阵的转置 = 正交矩阵的逆

2、正交矩阵的行列式: 行列式的取值只有两种可能(1)或(-1)

3、向量正交:将视作由若干行向量组成,则这些行向量两两相互正交,若将视作由若干列向量组成,则这些列向量也两两相互正交

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2033187.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

U盘出现文件目录损坏的修复之道

在数字化时代,U盘作为便携式存储设备,承载着无数重要的文件与数据,成为我们工作、学习和生活中不可或缺的一部分。然而,当U盘遭遇“文件或目录损坏且无法读取”的困境时,这份便捷瞬间转化为焦虑与困扰。本文将深入探讨…

【安卓】连接真机和使用通知

文章目录 连接到真机使用通知通知的简单使用通知的详细信息 连接到真机 先用USB线将手机与电脑连接。 打开手机的设置,找到关于手机,点开之后,找到开发者选项界面。或者找到软件版本号,连续点击,系统会提示你点击几次能…

go在linux上安装

1.首先要确定Linux架构 uname -m如果你的系统是 armv7l(32-bit ARM),你需要下载 armv6l 版的Go语言。 如果你的系统是 aarch64(64-bit ARM),你需要下载 arm64 版的Go语言。 如果你的系统是 x86_64&#xf…

母婴生活馆小程序开发制作方案

母婴生活馆小程序系统主要是想满足年轻父母群体对于高品质母婴产品和服务的需求。开发一款集商品展示、在线购买、育儿知识分享、社区互动等功能于一体的母婴生活馆小程序。一、主要用户群体 年龄在25-35岁之间,初为人父母或即将成为父母的年轻夫妇。他们通常具备一…

自动驾驶大模型算法助力端到端顺利落地

 FSD 效果惊艳,Robotaxi 迈向现实 2024 年 3 月 FSD V12.3 推出,解决复杂场景能力大幅提升,驾驶体验平顺丝滑拟人化程度高。FSD 开始从“测试版”晋级为“监督版”,并面向所有北美车主免费试用 30 天。随后马斯克在社交媒体上表…

LogicFlow工作流在React和Vue3中的使用

LogicFlow 是一款流程图编辑框架,提供了一系列流程图交互、编辑所必需的功能和简单灵活的节点自定义、插件等拓展机制,方便我们快速在业务系统内满足类流程图的需求。 核心能力 可视化模型:通过 LogicFlow 提供的直观可视化界面&#xff0c…

gRPC golang开发实践

gRPC golang开发实践 Protobuf定义消息类型标量类型复合类型引用其它消息类型 Protoc使用安装使用语言插件 Buf使用配置和构建buf模块代码生成 实现gRPC API初始化go.mod文件实现服务端代码实现客户端代码 测试gRPC API使用bloomRPC客户端工具使用grpcurl命令行工具使用buf cur…

RCE之突破长度限制

我们在写webshell时通常会遇到过滤&#xff0c;但除了过滤之外还可能会有长度限制&#xff0c;这里就简单说一下关于RCE突破长度限制的技巧 突破16位 例如&#xff1a;PHP Eval函数参数限制在16个字符的情况下 &#xff0c;如何拿到Webshell&#xff1f; <?php $param …

jenkins 安装以及自动构建maven项目并且运行

在这里找到你对应jdk的版本的jenkins包 War Jenkins Packages 我这里用的使java8,所以下载 https://mirrors.jenkins.io/war-stable/2.60.1/jenkins.war 然后jenkins可以安装到centos系统 在本地windows系统运行命令行 scp C:\Users\98090\Downloads\jenkins.war root@192…

在Oxygen中插入图形的三种方法

在Oxygen中有以下几种在内容中插入图形的方法&#xff1a; 方法一 1. 将光标放在想要插入图形的地方&#xff0c;并点击插入图形工具栏 2. 在弹出窗口选择需要插入的图形路径&#xff0c;并做相关的设置 注&#xff1a;图形最好是使用相对路径&#xff0c;这样不依赖于本地路…

NVIDIA H100 GPU,它将如何改变AI和计算领域的游戏规则?

大语言模型 (LLM) 的兴起标志着人工智能 (AI) 时代的重大进步。在这一背景下&#xff0c;Paperspace DigitalOcean 提供的云图形处理单元 (GPU) 已成为高质量 NVIDIA GPU 云服务的领先者&#xff0c;推动了计算技术的前沿发展。 NVIDIA 成立于 1993 年&#xff0c;由三位有远见…

软件测试需要具备的基础知识【功能测试】---后端知识(三)

​ ​ 您好&#xff0c;我是程序员小羊&#xff01; 前言 为了更好的学习软件测试的相关技能&#xff0c;需要具备一定的基础知识。需要学习的基础知识包括&#xff1a; 1、计算机基础 2、前端知识 3、后端知识 4、软件测试理论 后期分四篇文章进行编写&#xff0c;这是第三篇 …

Cycript安装报错 Library not loaded终极解决方案

一、下载安装 Cycript 官方完整 资源下载完成后&#xff0c;解压。目录如下&#xff1a; 二、执行 打开命令终端,cd到对应目录&#xff0c;然后执行./cycript #第一步&#xff1a;cd到解压的目录 cd /xx/cycrpt_0#执行&#xff1a; ./cycript 2.1、报错Library not Loaded …

oled使用 f4软件iic 数字 汉字 小图片 HAL库

基于江科大的oled标准库进行移植 到Hal库上 本人参考了许多大佬的源码 进行更改 由于F4和F1主频不一样 由于F4主频太高 在进行软件iic时需要延时一下 才可驱动oled 本人在网上找了一个开源的us延时函数 已经添加进入 文件分享 通过百度网盘分享的文件&#xff1a;delay&#…

如何自动抓取岗位数据?五种采集技巧

摘要&#xff1a; 本文将深入探讨如何从前程无忧网站自动抓取岗位信息&#xff0c;通过分享五大实用的采集技巧&#xff0c;助您轻松掌握大数据时代的招聘情报。无需编程基础&#xff0c;也能高效获取目标职位详情&#xff0c;优化人力资源管理与市场分析。 正文&#xff1a;…

电脑图片损坏打不开怎么办?能修复吗?

照片和视频是记录和保存现实生活中的事件的最好方式。由于手机储存空间有限&#xff0c;一般我们会把有纪念意义的照片放到电脑上进行保存&#xff0c;但有时难免会遇到照片被损坏打不开的情况&#xff0c;一旦遇到这种情况&#xff0c;先不要急&#xff0c;也不要因为照片打不…

【RISC-V设计-12】- RISC-V处理器设计K0A之验证环境

【RISC-V设计-12】- RISC-V处理器设计K0A之验证环境 文章目录 【RISC-V设计-12】- RISC-V处理器设计K0A之验证环境1.简介2.验证顶层3.顶层代码4.模型结构4.1 地址映射4.2 特殊功能寄存器 5.模型代码6.运行脚本7.总结 1.简介 在前几篇文章中&#xff0c;分别介绍了各个模块的设…

订单增长40%,磁性元件下半年还有哪些挑战?

导语 2024即将过半&#xff0c;哪些终端市场发展势头更好?海运价格上涨又会对磁性元件企业造成哪些影响? 2024年开春以来&#xff0c;比亚迪发起了新一轮价格战&#xff0c;让持续一年的新能源汽车价格战再度升级&#xff0c;也让2024年的市场走势更加扑朔迷离。 第二十二届(…

PMTiles介绍与MapboxGL中使用

概述 本文介绍PMTiles以及PMTiles在MapboxGL中的使用。 PMTiles简介 PMTiles 是一种对瓦片数据的单文件压缩格式。PMTiles 压缩包可以托管在如 S3 这样的商品级存储平台上&#xff0c;并允许创建低成本、零维护的“无服务器”地图应用程序——这些应用程序无需自定义瓦片后端…

手机误操作导致永久删除照片的恢复方法有哪些?

随着手机功能的不断增强和应用程序的不断丰富&#xff0c;人们越来越依赖手机&#xff0c;离不开手机。但有时因为我们自己的失误操作&#xff0c;导致我们手机上重要的照片素材被永久删除&#xff0c;这时我们需要怎么做&#xff0c;才能找回我们被永久删除的照片素材呢&#…