二维空间中的点绕原点的旋转矩阵是怎么来的?(内含视频讲解)

2024-06-07 08:36

本文主要是介绍二维空间中的点绕原点的旋转矩阵是怎么来的?(内含视频讲解),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

如是我闻: 如果直接看书的话,他会告诉你二维空间中点的旋转变换的定义是这样的。

R ( β ) = [ cos ⁡ ( β ) − sin ⁡ ( β ) sin ⁡ ( β ) cos ⁡ ( β ) ] \mathbf{R}(\beta) = \begin{bmatrix} \cos(\beta) & -\sin(\beta) \\ \sin(\beta) & \cos(\beta) \end{bmatrix} R(β)=[cos(β)sin(β)sin(β)cos(β)]

其中 β \beta β是按逆时针方向测量的旋转角度。

可是为什么是这样的呢?这矩阵是怎么来的呢?

二维空间中围绕原点的旋转矩阵是怎么来的

几何基础

在纸上可以画一下,在平面上有一点 P ( x , y ) P(x, y) P(x,y),你想将这个点围绕原点 O ( 0 , 0 ) O(0, 0) O(0,0)旋转某个角度 β \beta β。旋转是逆时针方向的。旋转后,点 P P P 的新位置称为 P ′ ( x ′ , y ′ ) P'(x', y') P(x,y)

从三角函数出发

考虑点 P P P 初始时与x轴的夹角为 α \alpha α,且 P P P 到原点的距离(即向量 O P OP OP的长度)是 r r r。根据三角函数,原始坐标 x x x y y y 可以表示为:

  • x = r cos ⁡ ( α ) x = r \cos(\alpha) x=rcos(α)
  • y = r sin ⁡ ( α ) y = r \sin(\alpha) y=rsin(α)

当我们逆时针旋转这个点 β \beta β 度后,新的夹角是 α + β \alpha + \beta α+β。因此,旋转后的坐标 x ′ x' x y ′ y' y 可以用新的角度来表示 (这里不明白可以去看直角坐标系与极坐标系的转换):

  • x ′ = r cos ⁡ ( α + β ) x' = r \cos(\alpha + \beta) x=rcos(α+β)
  • y ′ = r sin ⁡ ( α + β ) y' = r \sin(\alpha + \beta) y=rsin(α+β)

利用余弦和正弦的加法公式

我们可以应用余弦和正弦的加法公式来展开这两个表达式:

  • cos ⁡ ( α + β ) = cos ⁡ ( α ) cos ⁡ ( β ) − sin ⁡ ( α ) sin ⁡ ( β ) \cos(\alpha + \beta) = \cos(\alpha)\cos(\beta) - \sin(\alpha)\sin(\beta) cos(α+β)=cos(α)cos(β)sin(α)sin(β)
  • sin ⁡ ( α + β ) = sin ⁡ ( α ) cos ⁡ ( β ) + cos ⁡ ( α ) sin ⁡ ( β ) \sin(\alpha + \beta) = \sin(\alpha)\cos(\beta) + \cos(\alpha)\sin(\beta) sin(α+β)=sin(α)cos(β)+cos(α)sin(β)

将这些代入 x ′ x' x y ′ y' y 的表达式,我们得到:

  • x ′ = r cos ⁡ ( α ) cos ⁡ ( β ) − r sin ⁡ ( α ) sin ⁡ ( β ) x' = r \cos(\alpha)\cos(\beta) - r \sin(\alpha)\sin(\beta) x=rcos(α)cos(β)rsin(α)sin(β)
  • y ′ = r sin ⁡ ( α ) cos ⁡ ( β ) + r cos ⁡ ( α ) sin ⁡ ( β ) y' = r \sin(\alpha)\cos(\beta) + r \cos(\alpha)\sin(\beta) y=rsin(α)cos(β)+rcos(α)sin(β)

既然 x = r cos ⁡ ( α ) x = r \cos(\alpha) x=rcos(α) y = r sin ⁡ ( α ) y = r \sin(\alpha) y=rsin(α),我们可以简化上面的表达式为:

  • x ′ = x cos ⁡ ( β ) − y sin ⁡ ( β ) x' = x \cos(\beta) - y \sin(\beta) x=xcos(β)ysin(β)
  • y ′ = x sin ⁡ ( β ) + y cos ⁡ ( β ) y' = x \sin(\beta) + y \cos(\beta) y=xsin(β)+ycos(β)

这个变换意味着每个点在平面上的新位置是通过将其旧位置从原点旋转 β \beta β度获得的。这种旋转保持了点与原点之间的距离不变(即 r r r是不变的),但是改变了点相对于原始x轴的角度。

向量和矩阵表示

当然有了以上的方程式,我们可以用向量和矩阵表示这个方程组,

给定一个点 P P P 的坐标为 ( x , y ) (x, y) (x,y),我们可以将其表示为列向量:

P = [ x y ] \mathbf{P} = \begin{bmatrix} x \\ y \end{bmatrix} P=[xy]

当这个点逆时针旋转角度 β \beta β 后,新的坐标 P ′ P' P 可以通过以下矩阵运算得到:

P ′ = R ( β ) P \mathbf{P'} = \mathbf{R}(\beta) \mathbf{P} P=R(β)P

其中,旋转矩阵 R ( β ) \mathbf{R}(\beta) R(β)定义为:

R ( β ) = [ cos ⁡ ( β ) − sin ⁡ ( β ) sin ⁡ ( β ) cos ⁡ ( β ) ] \mathbf{R}(\beta) = \begin{bmatrix} \cos(\beta) & -\sin(\beta) \\ \sin(\beta) & \cos(\beta) \end{bmatrix} R(β)=[cos(β)sin(β)sin(β)cos(β)]

计算示例

将旋转矩阵乘以点 P P P 的坐标向量,我们得到:

P ′ = [ cos ⁡ ( β ) − sin ⁡ ( β ) sin ⁡ ( β ) cos ⁡ ( β ) ] [ x y ] = [ x cos ⁡ ( β ) − y sin ⁡ ( β ) x sin ⁡ ( β ) + y cos ⁡ ( β ) ] \mathbf{P'} = \begin{bmatrix} \cos(\beta) & -\sin(\beta) \\ \sin(\beta) & \cos(\beta) \end{bmatrix} \begin{bmatrix} x \\ y \end{bmatrix} = \begin{bmatrix} x \cos(\beta) - y \sin(\beta) \\ x \sin(\beta) + y \cos(\beta) \end{bmatrix} P=[cos(β)sin(β)sin(β)cos(β)][xy]=[xcos(β)ysin(β)xsin(β)+ycos(β)]

这就是旋转后的坐标 P ′ P' P,其中:

  • 第一行给出了新的 x 坐标 x ′ = x cos ⁡ ( β ) − y sin ⁡ ( β ) x' = x \cos(\beta) - y \sin(\beta) x=xcos(β)ysin(β)
  • 第二行给出了新的 y 坐标 y ′ = x sin ⁡ ( β ) + y cos ⁡ ( β ) y' = x \sin(\beta) + y \cos(\beta) y=xsin(β)+ycos(β)

所以其实旋转矩阵就是从方程组的矩阵表示里得来的

非常的有品

以上

这篇关于二维空间中的点绕原点的旋转矩阵是怎么来的?(内含视频讲解)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1038677

相关文章

流媒体平台/视频监控/安防视频汇聚EasyCVR播放暂停后视频画面黑屏是什么原因?

视频智能分析/视频监控/安防监控综合管理系统EasyCVR视频汇聚融合平台,是TSINGSEE青犀视频垂直深耕音视频流媒体技术、AI智能技术领域的杰出成果。该平台以其强大的视频处理、汇聚与融合能力,在构建全栈视频监控系统中展现出了独特的优势。视频监控管理系统EasyCVR平台内置了强大的视频解码、转码、压缩等技术,能够处理多种视频流格式,并以多种格式(RTMP、RTSP、HTTP-FLV、WebS

AI绘图怎么变现?想做点副业的小白必看!

在科技飞速发展的今天,AI绘图作为一种新兴技术,不仅改变了艺术创作的方式,也为创作者提供了多种变现途径。本文将详细探讨几种常见的AI绘图变现方式,帮助创作者更好地利用这一技术实现经济收益。 更多实操教程和AI绘画工具,可以扫描下方,免费获取 定制服务:个性化的创意商机 个性化定制 AI绘图技术能够根据用户需求生成个性化的头像、壁纸、插画等作品。例如,姓氏头像在电商平台上非常受欢迎,

W外链微信推广短连接怎么做?

制作微信推广链接的难点分析 一、内容创作难度 制作微信推广链接时,首先需要创作有吸引力的内容。这不仅要求内容本身有趣、有价值,还要能够激起人们的分享欲望。对于许多企业和个人来说,尤其是那些缺乏创意和写作能力的人来说,这是制作微信推广链接的一大难点。 二、精准定位难度 微信用户群体庞大,不同用户的需求和兴趣各异。因此,制作推广链接时需要精准定位目标受众,以便更有效地吸引他们点击并分享链接

poj2576(二维背包)

题意:n个人分成两组,两组人数只差小于1 , 并且体重只差最小 对于人数要求恰好装满,对于体重要求尽量多,一开始没做出来,看了下解题,按照自己的感觉写,然后a了 状态转移方程:dp[i][j] = max(dp[i][j],dp[i-1][j-c[k]]+c[k]);其中i表示人数,j表示背包容量,k表示输入的体重的 代码如下: #include<iostream>#include<

hdu2159(二维背包)

这是我的第一道二维背包题,没想到自己一下子就A了,但是代码写的比较乱,下面的代码是我有重新修改的 状态转移:dp[i][j] = max(dp[i][j], dp[i-1][j-c[z]]+v[z]); 其中dp[i][j]表示,打了i个怪物,消耗j的耐力值,所得到的最大经验值 代码如下: #include<iostream>#include<algorithm>#include<

综合安防管理平台LntonAIServer视频监控汇聚抖动检测算法优势

LntonAIServer视频质量诊断功能中的抖动检测是一个专门针对视频稳定性进行分析的功能。抖动通常是指视频帧之间的不必要运动,这种运动可能是由于摄像机的移动、传输中的错误或编解码问题导致的。抖动检测对于确保视频内容的平滑性和观看体验至关重要。 优势 1. 提高图像质量 - 清晰度提升:减少抖动,提高图像的清晰度和细节表现力,使得监控画面更加真实可信。 - 细节增强:在低光条件下,抖

电脑桌面文件删除了怎么找回来?别急,快速恢复攻略在此

在日常使用电脑的过程中,我们经常会遇到这样的情况:一不小心,桌面上的某个重要文件被删除了。这时,大多数人可能会感到惊慌失措,不知所措。 其实,不必过于担心,因为有很多方法可以帮助我们找回被删除的桌面文件。下面,就让我们一起来了解一下这些恢复桌面文件的方法吧。 一、使用撤销操作 如果我们刚刚删除了桌面上的文件,并且还没有进行其他操作,那么可以尝试使用撤销操作来恢复文件。在键盘上同时按下“C

webm怎么转换成mp4?这几种方法超多人在用!

webm怎么转换成mp4?WebM作为一种新兴的视频编码格式,近年来逐渐进入大众视野,其背后承载着诸多优势,但同时也伴随着不容忽视的局限性,首要挑战在于其兼容性边界,尽管WebM已广泛适应于众多网站与软件平台,但在特定应用环境或老旧设备上,其兼容难题依旧凸显,为用户体验带来不便,再者,WebM格式的非普适性也体现在编辑流程上,由于它并非行业内的通用标准,编辑过程中可能会遭遇格式不兼容的障碍,导致操

怎么让1台电脑共享给7人同时流畅设计

在当今的创意设计与数字内容生产领域,图形工作站以其强大的计算能力、专业的图形处理能力和稳定的系统性能,成为了众多设计师、动画师、视频编辑师等创意工作者的必备工具。 设计团队面临资源有限,比如只有一台高性能电脑时,如何高效地让七人同时流畅地进行设计工作,便成为了一个亟待解决的问题。 一、硬件升级与配置 1.高性能处理器(CPU):选择多核、高线程的处理器,例如Intel的至强系列或AMD的Ry

poj 2187 凸包or旋转qia壳法

题意: 给n(50000)个点,求这些点与点之间距离最大的距离。 解析: 先求凸包然后暴力。 或者旋转卡壳大法。 代码: #include <iostream>#include <cstdio>#include <cstdlib>#include <algorithm>#include <cstring>#include <cmath>#include <s