一般角度的旋转矩阵的推导

一般角度的旋转矩阵

1. 复数与旋转的关系

在复平面上,复数 ejθe^{j\theta}ejθ 表示逆时针旋转角度 θ\thetaθ。对于任意复数 z=x+jyz = x + jyz=x+jy:

ejθ⋅z=(cos⁡θ+jsin⁡θ)(x+jy) e^{j\theta} \cdot z = (\cos\theta + j\sin\theta)(x + jy) ejθ⋅z=(cosθ+jsinθ)(x+jy)

展开计算:
=xcos⁡θ+jxsin⁡θ+jycos⁡θ+j2ysin⁡θ = x\cos\theta + jx\sin\theta + jy\cos\theta + j^2 y\sin\theta =xcosθ+jxsinθ+jycosθ+j2ysinθ
=(xcos⁡θ−ysin⁡θ)+j(xsin⁡θ+ycos⁡θ) = (x\cos\theta - y\sin\theta) + j(x\sin\theta + y\cos\theta) =(xcosθ−ysinθ)+j(xsinθ+ycosθ)

2. 旋转矩阵的一般形式

上述变换对应的矩阵形式为:

x′y′\]=\[cos⁡θ−sin⁡θsin⁡θcos⁡θ\]\[xy\] \\begin{bmatrix} x' \\\\ y' \\end{bmatrix} = \\begin{bmatrix} \\cos\\theta \& -\\sin\\theta \\\\ \\sin\\theta \& \\cos\\theta \\end{bmatrix} \\begin{bmatrix} x \\\\ y \\end{bmatrix} \[x′y′\]=\[cosθsinθ−sinθcosθ\]\[xy

因此,一般旋转矩阵 (逆时针旋转角度 θ\thetaθ)为:
R(θ)=cos⁡θ−sin⁡θsin⁡θcos⁡θ R(\theta) = \begin{bmatrix} \cos\theta & -\sin\theta \\ \sin\theta & \cos\theta \end{bmatrix} R(θ)=cosθsinθ−sinθcosθ

3. 特殊情况验证

  • θ=90∘=π2\theta = 90^\circ = \frac{\pi}{2}θ=90∘=2π
    R(π2)=0−110 R\left(\frac{\pi}{2}\right) = \begin{bmatrix} 0 & -1 \\ 1 & 0 \end{bmatrix} R(2π)=01−10

    对应 jjj 的旋转矩阵

  • θ=−90∘=−π2\theta = -90^\circ = -\frac{\pi}{2}θ=−90∘=−2π
    R(−π2)=01−10 R\left(-\frac{\pi}{2}\right) = \begin{bmatrix} 0 & 1 \\ -1 & 0 \end{bmatrix} R(−2π)=0−110

    对应 −j-j−j 的旋转矩阵

  • θ=180∘=π\theta = 180^\circ = \piθ=180∘=π
    R(π)=−100−1 R(\pi) = \begin{bmatrix} -1 & 0 \\ 0 & -1 \end{bmatrix} R(π)=−100−1

    对应 −1-1−1 的旋转(点反射)

  • θ=0∘=0\theta = 0^\circ = 0θ=0∘=0
    R(0)=1001 R(0) = \begin{bmatrix} 1 & 0 \\ 0 & 1 \end{bmatrix} R(0)=1001

    单位矩阵,不旋转

4. 矩阵性质

旋转矩阵具有以下重要性质:

  1. 正交性 :R(θ)TR(θ)=IR(\theta)^T R(\theta) = IR(θ)TR(θ)=I
  2. 行列式为1 :det⁡(R(θ))=cos⁡2θ+sin⁡2θ=1\det(R(\theta)) = \cos^2\theta + \sin^2\theta = 1det(R(θ))=cos2θ+sin2θ=1
  3. 逆矩阵 :R(θ)−1=R(−θ)=R(θ)TR(\theta)^{-1} = R(-\theta) = R(\theta)^TR(θ)−1=R(−θ)=R(θ)T
  4. 组合性 :R(θ1)R(θ2)=R(θ1+θ2)R(\theta_1) R(\theta_2) = R(\theta_1 + \theta_2)R(θ1)R(θ2)=R(θ1+θ2)

5. 最终结论

一般的二维旋转矩阵 (逆时针旋转角度 θ\thetaθ)为:

R(θ)=cos⁡θ−sin⁡θsin⁡θcos⁡θ \boxed{ R(\theta) = \begin{bmatrix} \cos\theta & -\sin\theta \\ \sin\theta & \cos\theta \end{bmatrix} } R(θ)=cosθsinθ−sinθcosθ

这个矩阵将任何向量 xy\begin{bmatrix} x \\ y \end{bmatrix}xy 绕原点逆时针旋转角度 θ\thetaθ。

相关推荐
phltxy21 小时前
C语言操作符详解
java·c语言·算法
aqiu11111121 小时前
【LeetCode 902】最大为 N 的数字组合 - 详细题解与数位组合思路
数据结构·算法·leetcode·蓝桥杯·数位dp
辰烨chenye1 天前
LeetCode Hot 100 题解 · 哈希篇
算法·leetcode·哈希算法
罗西的思考1 天前
DreamZero 与 DreamDojo:世界模型与策略的分层协同综合分析与对比
人工智能·算法·机器学习
玖玥拾1 天前
LeetCode 219 存在重复元素 II
算法·leetcode·哈希算法·散列表
知无不研1 天前
c语言中循环的介绍与简单应用
c语言·开发语言·算法·循环·for·while
a187927218311 天前
【算法】动态规划第四篇:背包收官——min 哨兵、计数世界与组合排列分水岭
算法·leetcode·动态规划·dp·01背包·算法讲解·决策合并
2601_962297481 天前
在python3中、下列输出变量a的正确写法是_2020超星大数据Python免费答案
数据结构·python·算法·编程·字符串操作
辰烨chenye1 天前
LeetCode Hot 100 题解 · 子串篇
算法·leetcode·职场和发展