罗德里格斯公式(旋转矩阵)推导

news2024/11/19 13:21:41

文章目录

      • 1. 推导
      • 2. 性质
      • 3. 参考

1. 推导

在这里插入图片描述

r r r为旋转轴, θ \theta θ为旋转角度。
先将旋转轴单位化
u = r ∣ ∣ r ∣ ∣ u=\frac{r}{||r||} u=∣∣r∣∣r
旋转可以被分为垂直和旋转两个方向,
我们求沿轴方向的分量其实就是在求 p p p向量在 u u u方向上的投影。

引用投影矩阵
P = A ( A ⊤ A ) − 1 A ⊤ P u = u ( u ⊤ u ) − 1 u ⊤ u ⊤ u = I P u = u u ⊤ P=A(A^{\top}A)^{-1}A^{\top}\\ P_u=u(u^{\top}u)^{-1}u^{\top}\\ u^{\top}u=I\\ P_u=uu^{\top} P=A(AA)1APu=u(uu)1uuu=IPu=uu
其实也可以直接以向量的方式思考
u ⊤ p = u ∗ p = ∣ ∣ u ∣ ∣   ∣ ∣ p ∣ ∣ cos ⁡ α u^{\top}p =u *p=||u|| \ ||p|| \cos \alpha up=up=∣∣u∣∣ ∣∣p∣∣cosα
还需要除 ∣ ∣ u ∣ ∣ ||u|| ∣∣u∣∣
∣ ∣ u ∣ ∣ = u ⊤ u u ⊤ p u ⊤ u ||u||=u^{\top}u \\ \frac{u^{\top}p}{u^{\top}u} ∣∣u∣∣=uuuuup
最后将值转换为向量
u u ⊤ p u ⊤ u = u u ⊤ p u\frac{u^{\top}p}{u^{\top}u}=uu^{\top}p uuuup=uup
a a a p p p在旋转轴 r r r上的分量
a = p ∥ = u u ⊤ p a=p_{\parallel}=uu^{\top}p a=p=uup
b b b p p p垂直旋转轴 r r r的分量
b = p ⊥ = p − a = p − u u ⊤ p b=p_{\perp}=p-a=p-uu^{\top}p b=p=pa=puup
c = u × p c=u \times p c=u×p,则 ∣ ∣ c ∣ ∣ = ∣ ∣ p ∣ ∣ ||c|| = ||p|| ∣∣c∣∣=∣∣p∣∣

b b b旋转 θ \theta θ后得到 b ′ b' b

b ′ = b cos ⁡ θ + c sin ⁡ θ b ′ = ( p − u u ⊤ p ) cos ⁡ θ + u × p sin ⁡ θ b'=b\cos \theta+c \sin \theta\\ b'=(p-uu^{\top}p) \cos \theta + u\times p \sin \theta b=bcosθ+csinθb=(puup)cosθ+u×psinθ

旋转后的 p ′ p' p
p ′ = a + b ′ = u u ⊤ p + ( p − u u ⊤ p ) cos ⁡ θ + u × p sin ⁡ θ p'=a+b'=uu^{\top}p+(p-uu^{\top}p) \cos \theta + u\times p \sin \theta p=a+b=uup+(puup)cosθ+u×psinθ
合并后得到
p ′ = ( I cos ⁡ θ + ( 1 − cos ⁡ θ ) u u ⊤ + u × sin ⁡ θ ) p p'=(I \cos \theta+(1-\cos \theta)uu^{\top}+u_{\times}\sin \theta)p p=(Icosθ+(1cosθ)uu+u×sinθ)p
其中 u × u_{\times} u×为叉乘矩阵
形式为
[ 0 z − y − z 0 x y − x 0 ] \begin{bmatrix} 0 & z & -y \\ -z & 0 & x \\ y & -x & 0 \end{bmatrix} 0zyz0xyx0
所以旋转矩阵为
R = I cos ⁡ θ + ( 1 − cos ⁡ θ ) u u ⊤ + u × sin ⁡ θ R=I\cos \theta+(1-\cos \theta)uu^{\top}+u_{\times} \sin \theta R=Icosθ+(1cosθ)uu+u×sinθ

2. 性质

t r a c e ( R ) = 2 cos ⁡ θ + 1 R − R ⊤ = 2 u × sin ⁡ θ \begin{align} trace(R)=2 \cos \theta+1\\ R-R^{\top}=2u_{\times} \sin \theta \end{align} trace(R)=2cosθ+1RR=2u×sinθ
性质一的证明,所有旋转矩阵都相似,构成一个正交群。
相似矩阵有性质
A = C − 1 B C A=C^{-1}BC A=C1BC
所以所有旋转矩阵有相同的迹。
取其中一个旋转矩阵
[ cos ⁡ θ − sin ⁡ θ 0 sin ⁡ θ cos ⁡ θ 0 0 0 1 ] \begin{bmatrix} \cos \theta & -\sin \theta & 0\\ \sin \theta & \cos \theta &0\\ 0 & 0 & 1 \end{bmatrix} cosθsinθ0sinθcosθ0001
所以
t r ( R ) = 2 cos ⁡ θ + 1 tr(R)=2 \cos \theta+1 tr(R)=2cosθ+1

3. 参考

michigan_state_university
duke
math_stackchange

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

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

相关文章

新时代AI浪潮下,程序员和产品经理如何入局AIGC领域?

当下,AI浪潮席卷全球,AIGC大模型技术已经成为当今技术领域的一个重要趋势,对于产品经理来说,掌握这项技术不仅能够增强他们的职业技能,还能在竞争激烈的职场中脱颖而出。 为什么呢? 把握AI时代的机遇 AI技…

arcgisPro精确移动要素某一点至指定点位

1、打开要素,如下: 2、选择移动工具,如下: 3、选择需要移动的要素,如下: 4、按住Ctrl键,移动锚点的位置至三角形顶点位置,如下: 5、拖动锚点至上面多边形的左上角点&…

java语言概述和代码的编译

文章目录 前言 一、机器语言 二、汇编语言 三、高级语言 四、编写代码 打印字符串 求前n项和 五、问题及解决 总结 前言 计算机经过了多年的发展,已经诞生了很多编程语言,如早期的汇编语言,basic语言,现在的高级语言C语言java语言…

提取COCO 数据集的部分类

1.python提取COCO数据集中特定的类 安装pycocotools github地址:https://github.com/philferriere/cocoapi pip install githttps://github.com/philferriere/cocoapi.git#subdirectoryPythonAPI若报错,pip install githttps://github.com/philferriere…

为什么股票市场里有认贼为父的现象?

文章大纲:(本文2648字,完整版本应该3500以上,耗时一个钟) 1、前言:逻辑与博弈 2、直觉引入博弈焦点 3、上周4-5的市场博弈视角 4、下周一视角能看到的东西 5、视角背后看到的情绪周期市场共识下的博弈…

大摩:AI到“临界点”了,资管公司到了广泛部署的时刻

大摩表示,尽管AI技术在资产管理行业中的应用仍处于早期阶段,但其潜力巨大,能够为行业带来根本性的变革。预计生成式AI能够在资产管理公司的运营模型中带来20%至40%的生产力提升。 正文介绍 在全球经济面临诸多不确定因素的当下,…

事务管理控制

文章目录 1. 事务的基本概念2. 数据库的并发控制2.1 事务调度2.2 并发操作带来的问题2.3 并发调度的可串行性2.4 并发控制技术2.5 两段锁协议2.6 多粒度封锁协议 3. 数据库的备份与恢复3.1 数据库系统故障3.2 数据库的备份3.3 数据库的恢复 4. 数据库的安全性与完整性4.1 数据库…

01-Linux【准备篇】

一、学Linux的作用? 1.Linux下开发(部署)软件项目 2.Linux运维 二、Linux的强与弱 1.薄弱 个人桌面领域的应用 此领域是传统Linux应用薄弱的环节,近些年随着Ubuntu、fedora等优秀桌面环境的兴起,Linux在个人桌面领域的占有率在慢慢提高…

如何用AI工具提升日常工作效率,帮我们提速增效减负

昨天,coze海外版支持了GPT4o, 立马体验了下,速度杠杠的。 https://www.coze.com 支持chatGP和gemini模型,需要科学上网。国内 https://www.coze.cn支持语雀、KIMI模型。 这里回到正题, 如何用AI工具提升日常工作效率…

【LeetCode】30.串联所有单词的子串

串联所有单词的子串 题目描述: 给定一个字符串 s 和一个字符串数组 words。 words 中所有字符串 长度相同。 s 中的 串联子串 是指一个包含 words 中所有字符串以任意顺序排列连接起来的子串。 例如,如果 words ["ab","cd",&qu…

【智能算法应用】北方苍鹰算法求解二维栅格路径规划问题

目录 1.算法原理2.二维路径规划数学模型3.结果展示4.参考文献5.代码获取 1.算法原理 【智能算法】北方苍鹰优化算法(NGO)原理及实现 2.二维路径规划数学模型 栅格法模型最早由 W.E. Howden 于 1968 年提出,障碍物的栅格用黑色表示,可通过的…

草图大师怎么去画好一个建筑别墅su模型呢?

其实,我们经常画别墅的时候,都会要画别墅,我们画一个欧式风格的别墅,要在草图大师中创建一个优秀的建筑别墅模型,可以按照以下步骤进行: skp模型库 1.收集参考资料: 在开始之前,收集…

当前时机是否适合进入 AIGC 行业:行业发展与市场需求分析

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

如何成为成功的AI产品经理

本文目录 1 AI产品经理的角色和职责 2 AI产品经理的必备知识技能 3 案例分析 4 总结一下 随着ChatGPT的大热,也带动今年的AI火了一把,很多公司都开始进行相关部署,自然产生了很多岗位需求。 来源:BOSS直聘 那么,要想当…

Training-Free Consistent Text-to-Image Generation # 论文阅读

URL https://arxiv.org/pdf/2402.03286 TL;DR 2024 年 2 月 nvidia 的文章。提出了一种不需要任何额外训练的主体保持方法,可以一次生成的 batch 中,通过多个 prompt 生成对应的多张图片,这些图片都可以拥有一个主体。 本文提出的方法通过…

【JavaEE 初阶(十)】JVM

❣博主主页: 33的博客❣ ▶️文章专栏分类:JavaEE◀️ 🚚我的代码仓库: 33的代码仓库🚚 🫵🫵🫵关注我带你了解更多进阶知识 目录 1.前言2.JVM内存区域划分3.类加载3.1双亲委派模型 4.垃圾回收(GC&#xff0…

游戏后台开发技术全面解析

在这个数字时代,游戏产业已经成为全球最受欢迎的娱乐方式之一。从简单的手机游戏到复杂的大型多人在线角色扮演游戏(MMORPG),游戏的世界正变得越来越丰富和多样化。而这一切的背后,都离不开强大的游戏后台技术支持。在…

心理咨询系统|心理咨询系统开发|心理咨询软件开发

在快节奏的现代生活中,心理健康问题越来越受到人们的关注。为了有效应对这些问题,心理咨询系统应运而生,它为人们提供了一个安全、便捷的平台,以寻求心理帮助和支持。本文将详细介绍心理咨询系统的功能、优势以及未来发展趋势。 …

【C语言】指针运算

前言 前面在“走进指针世界”中我已经讲解过指针相关的很多前置知识,其实还有一个很重要的部分就是指针的运算。这篇博客,就让我们一起了解一下指针的运算吧! 指针作为变量,是可以进行算术运算的,只不过情况会和整型…

2024年5月23日 (周四) 叶子游戏新闻

《Unclogged》Steam页面上线 马桶主题恐怖逃脱解谜Brody制作并发行,一款奇葩创意马桶主题恐怖逃脱解谜新游《Unclogged》Steam页面上线,本作暂不支持中文。 Meta人工智能主管杨立昆 大语言模型不会达到人类智能水平IT之家今日(5月23日&#x…