18.外部相机校准——旋转(Rotation),R是什么样子的,绕Z轴旋转的例子,齐次坐标旋转_2

80 篇文章 87 订阅
订阅专栏

目录

旋转(rotation)

R是什么样子的

绕Z轴旋转的例子

齐次坐标旋转


旋转(rotation)

现在生活变得更加丑陋,旋转(rotation)。我这里有一个图,或者我想这也是来自四边复合幻灯片,我给你们看的是两个坐标系,a和b,你们会注意到A有一个 I 向量(如图1),一个J向量和一个K向量(如图2)。B有一个 I 向量,一个J向量和一个K向量(如图3)。

1 2 3

需要注意的一点是,这个P值(如图1),从原点(如图2)出发的向量,可以用两种方式表示。

1 2

它可以表示为a坐标系中的某些分量乘以x y z坐标系中的某些分量(如图),

也可以表示为B坐标系中的某些分量乘以x y z坐标系中的这些分量,right? 它们是相同的向量,right? 关键是要理解这些基向量(如图2)我们需要知道每个基向量的倍数。

1

2

我们想要做的是假设我们要把坐标系从A旋转到B,这就是这个公式的意思(如图1)。这就是说,给定A中描述的点(如图2),我将有一个旋转算子(如图3)它会给出现在在B坐标系中表示的P(如图4)。意味着在B的坐标系中描述框架A,它表示,所以,如果你根据A的分量给我一个点的位置,这就是应用R后它只是一个旋转,我得到了框架中的分量B。

 2 3

R是什么样子的

那么R是什么样子的呢?有两种方法来考虑这个问题,首先我们要用困难的方法来考虑。表示A中的每个基向量如何用B表示(如图)。

 

所以的第一列(如图1)是A的 I 向量的分量用它在B的 I 方向,B的 j 方向和B的 k 方向上的分量表示(如图2)。

 1 2

你可以把它想象成i_{A} 和 B的每一个分量的点积,i_{B}j_{B}k_{B}(如图1)。

 

同样的,下面每一列都是这样做的。

 

所以,一种思考方法是的列向量是在B坐标系中表示的A的i向量。然后是B坐标系下A的j向量,和B坐标系下A的k向量(如图)。为什么是这样是真确的呢?

 

我们这样想。假设我有一个点,向量,在A坐标系中。它的值是1,0,0(如图1) ,okay? 这意味着它在A坐标系的 i 方向上的距离是1在A坐标系的 j 和 k 方向上的距离是0。它的值应该是多少? all right? 我把它写下来。这个乘以这个(如图2)。

1 2

如此这般。那么它就会得到 iA 点乘 iB(如图1),所以变换后的坐标系的第一个分量就是 i 向量,在 B 的 i 方向上的量。一,二,三。还是得到iA.jB好的,再来一次iA.kB(如图2)。

1  2

换句话说,这就是它说的如果我们有一个1,0,0,需要得到的,就是这个向量是如何点乘每个分量的。这就是为什么这个矩阵可以被认为是它的列向量就像A坐标系的每一个基底向量用B坐标系表示(如图)。明白了吗? 所以两边是这个。只要按下暂停键就行了(教授show)。看看发生了什么。

提醒一下,我标记了这个旋转矩阵的列向量是坐标系B中坐标系A的坐标轴(如图),为什么? 因为我们刚刚给你们看了那些废话。

顺便说一下,它也可以被认为是行就是列(如图1),就是B向量在A坐标系中的基底,right? 这里是 iB 在A的 i 分量中,这是 iB 在 j 中,这是 iB 在 k 中(如图2),

1 2

你可以这样想,如果我转置这个向量。所以我把列变成了行,行变成了列,我现在得到的不是RAB,而是RBA,all right? 这是一个正交矩阵(如图1),right? 正交矩阵,所有的行,所有的列都是互相垂直的单位向量。所以行列式。行列式的磁体是1。这是传统的旋转矩阵顺便说一下,真正重要的是逆等于转置。所以,如果你有一个旋转矩阵你想在这两个矩阵之间来回变换,逆矩阵和转置矩阵,它们是必须的。因为RAB的逆必须是RBA我们刚刚展示了,这些行是如何被变换到列上的。

绕Z轴旋转的例子

举个简单的例子。这里有两个坐标系A到B的旋转大约是z轴。所以右边的图像,我向下看z轴。当我问你们旋转矩阵是什么时,你们应该很熟悉这个? 为什么? 因为你在代数中做过这个,right? 你说过旋转一个角度\theta,当你做x y的时候,关于原点,希望你们还记得像这样的东西(如图)。看,cos\theta - sin\theta sin\theta cos\theta,right? 乔治·托马斯写了我们很多人都用的微积分课本,他教我微积分的时候叫我查理的妹妹,索克·查理。这样你就能记住负号在哪里了。

不管怎样,重点是这个矩阵(如图1)只是为了旋转 x 和 y,保持 z 不变。所以如果我想要得到任意的方向,基本上我可以做一系列的旋转来得到我想要的东西。

关于如何做到这一点有很多标准。我们很多人在数学和计算机视觉中都知道欧拉角。欧拉角表示,绕Z旋转,如果这是Z(教授比手势),就会旋转,假设Z是向上的,绕Z旋转,绕新的X旋转,然后再绕新的Z旋转,all right? 对于你们当中驾驶飞机的人,我认为它是头部,俯仰和滚动? 也许是船,我不知道。航向,你确定了自己的方向。你知道西北航空公司。你俯仰(教授比手势),这是向上和向下的方式,然后你滚动。这就是这个方向的旋转。all right。这是关于Z的世界,新的X,新的y,有滚动,俯仰和偏航。有方位角,仰角,我想对于你们中那些习惯发射迫击炮的人来说,方位角,el,无论如何。

基本上,有这三个基本矩阵,关于X Y z的旋转,顺序很重要,okay? 我们不用太担心,实际上根本不用担心得到那个顺序。但它是什么呢,这里有三个旋转矩阵(如图1),它们是,它们的角度的函数。这是关于x的旋转,关于z的旋转,关于y的旋转,我把它们排列成这个顺序。为什么? 我不知道它们以前是不同的顺序,但是没关系。你可以绕着这些不同的轴旋转。现在,不管你是预乘还是后乘,这都是一个问题。那么我们做x1,然后是y1和z1? 或者z1 y1 x1? 这取决于你是在新坐标系中旋转还是在旧坐标系中旋转。那么,\theta是正的还是负的? 所以当你这样做的时候,你必须很好地考虑这些事情。这就是为什么我们在建造飞船之前先进行模拟? 因为当它在模拟中不起作用时,工程师会说,我不知道,试试 - 20。因为知道角度的方向是非常困难的。

齐次坐标旋转

怎么样,只是一种更简单的方法。再一次,拯救我们的,是齐次坐标。我们假设我们有一个旋转矩阵,okay。这里,我取了上面的方程,即pb是pa的旋转版本,现在,不是左上角的单位矩阵,也不是右边的偏移量,我们在这里有一个旋转矩阵(如图1),这是一个3×3矩阵。所以这是0向量(如图2)是一个3×1的0,所以转置就是0 0 0(如图3),这边是0 0 0(如图4)。okay。这样,旋转就是矩阵乘法。再一次,我们使用齐次坐标(如图5)。提醒一下,不像变换,旋转不是可交换的。

1 2

3 4

5


有编过程的人的代码,比那些无知的人使用的软件更有价值。

OPENCL ROTATION x y z axis
chao
05-09 359
float3 rotation(float3 mp, float3 pos) { float s = 0.0f; float c = 0.0f; struct mat3 rotX; s = sin(mp.x); c = cos(mp.x); rotX.x = (float3)(1.0f, 0.0f, 0.0f); rotX.y = (float3)(0.0f, c, -s);
LightningChart图表控件 新版本功能之五 相机orientation与rotation系统
ArctionLtd的博客
03-20 452
新添了相机orientation模式,并在方向定义上做了改进。 新模式叫做ZXY_Extrinsic (名称定义了维度的计算顺序),设置为默认orientation mode 。旧的orientation mode XYZ_Mixed 仍然可以找到,但是在将来有可能被弃用。orientation可以通过View3D.Camera.OrientationMode 访问。 Rotation也进行了...
相机旋转移动
xiehaiyang1234的博客
06-12 1258
using UnityEngine; using UnityEngine.UI; using System.Collections; // 将脚本挂载到摄像机上 public class CameraController : MonoBehaviour { //控制视野缩放的速率 public float view_value=100; public float mov...
相机参数转换总结
Less is More
09-08 656
旋转向量转换为旋转矩阵 处理矩阵三维转换时,通常采用旋转矩阵,但是旋转变换其实只有三个自由度,用旋转向量表达时更为简洁 旋转向量和旋转矩阵之间可以通过罗德里格斯公式进行转换 R = cv2.Rodrigues(a):a为旋转向量,R为旋转矩阵 旋转矩阵转换为姿态角 ...
相机外参中获取translation、rotation并完成旋转矩阵转四元数——carla-ubuntu18.4
ZHUO__zhuo的博客
05-07 3807
在使用carla过程中有获取其相机内外参和从相机外参中获取translation、rotation并完成旋转矩阵转四元数的需求,记录一下过程。 先上代码说明如何从相机外参中获取translation、rotation并完成旋转矩阵转四元数: import numpy as np from scipy.spatial.transform import Rotation as R ############ 4*4的相机外参矩阵 #####...
旋转人脸检测-采用渐进式校准网络实现实时旋转不变人脸检测算法-附项目源码-优质项目实战.zip
05-14
旋转人脸检测_采用渐进式校准网络实现实时旋转不变人脸检测算法_附项目源码_优质项目实战
4platformheadingplot.rar_旋转图像
07-15
图像旋转是改变图像在二维空间中的方向,通常通过指定一个旋转角度来完成;而图像平移则是改变图像的位置,使其在坐标系中向特定方向移动。 1. **图像旋转**:在MATLAB中,可以使用`imrotate`函数来实现图像的旋转...
labview编写的旋转中心标定、定位、机械手、机器视觉相机定位
09-11
1. **旋转中心标定**:在机器视觉应用中,旋转中心标定是一项关键技术,主要用于确定物体在图像中的旋转。这通常涉及到特征检测、匹配和几何变换。通过标定,可以计算出物体相对于相机旋转角度和位置,从而实现...
Odom和2d激光器的外部校准___下载.zip
04-19
3. 校准参数估计:基于匹配的特征,使用数学方法(如最小二乘法)估计出校准参数,这些参数可以是旋转和平移的偏差,或者更复杂的模型。 4. 评估和优化:计算校准后的数据与理想情况的差异,通过调整参数并重复上述...
FANUC机器人iRVision-2D相机校准的相关设定(二).docx
04-14
FANUC 机器人iRVision-2D相机校准是一个至关重要的步骤,它确保了机器人在视觉引导下能够准确地定位和操作。本篇将继续深入探讨相关设定的第二部分,特别是关于点阵板坐标系的自动设定,适用于6的FANUC机器人。 ...
齐次坐标
生活不侥幸,缜密务实待人处事
04-23 4191
一直对齐次坐标这个概念的理解不够彻底,只见大部分的书中说道“齐次坐标在仿射变换中非常的方便”,然后就没有了后文,今天在一个叫做“三百年 重生”的博客上看到一篇关于透视投影变换的探讨的文章,其中有对齐次坐标有非常精辟的说明,特别是针对这样一句话进行了有力的证明:“齐次坐标表示是计算机图形学的重要手段之一,它既能够用来明确区分向量和点,同时也更易用于进行仿射(线性)几何变换。”—— F.S. H
python实现图像旋转
Boogyman的博客
04-15 4939
本次介绍如何实现图像的左旋和右旋。 import numpy as np img = np.random.randint(0,255, size = (5,5)) def rotate(data, ori = 'left'): if ori == 'left': data = list(map(list,zip(*data)))[::-1] else: ...
DERS5.1/VSRS3.5--相机参数说明
Ant for life.
12-03 2047
Specification of Camera Parameters Camera parameters shall be specified as  rotation matrix R,      // 旋转矩阵/外部矩阵(外部参数) R translation vector t,  // 平移向量 t intrinsic matrix A for each camera i.
【ISP】相机标定及坐标系转换详解
All_In_gzx_cc的博客
06-13 2606
相机标定,坐标系转换
相机参数标定与畸变校正
lxl133的专栏
07-27 2953
(把之前做的笔记搬运到这里来) 一、 原理与公式推导 二、代码实现 1.棋盘格生成: void chessboard() {     int perBoardPixel = 30;     int nx = 10;     int ny = 7;     Size boardSize(nx, ny);     Size imgSize(nx * perBoardPixel, ...
【Unity技巧】四元数(Quaternion)和旋转
weixin_34367257的博客
11-23 1万+
四元数介绍旋转,应该是三种坐标变换——缩放、旋转和平移,中最复杂的一种了。大家应该都听过,有一种旋转的表示方法叫四元数。按照我们的习惯,我们更加熟悉的是另外两种旋转的表示方法——矩阵旋转和欧拉旋转。矩阵旋转使用了一个4*4大小的矩阵来表示任意旋转的变换矩阵,而欧拉选择则是按照一定的坐标顺序(例如先x、再y、最后z)、每个旋转一定角度来变换坐标或向量,它实际上是一系列坐标旋转的组合。那...
【数学】齐次坐标、三维点/向量的平移、缩放、旋转
一切皆可视
01-13 7151
【坐标系约定】 约定坐标系是为了在计算过程中需要脑中进行想象的部分有所依据。我们约定遵守右手系,如下: 可以认为向屏幕右侧,向屏幕上,向屏幕外。 【齐次坐标】 向量与点的齐次坐标是有不同的,若代表一个向量,则其其次坐标为,若其代表一个点,则其齐次坐标为,为什么其有不同呢?其原因如下: 拿平移来说,从数学上来讲,向量代表的是方向,一个向量平移之后,其结果仍然是这个向量,而一个点平移之后,其值就会发生变化但仍然是一个点。我们首先来看通用的情况为齐次坐标的情况,来看的取值。 若取0,则
Rotation - 旋转
qq_43232556的博客
06-11 2938
Rotation - 旋转1. 二维空间中的旋转1.1 旋转矩阵1.2 复数坐标2. 三维空间中的旋转2.1 旋转矩阵2.2 四元数(quaternion) 几种旋转方式的实现。 1. 二维空间中的旋转 假设平面内任意一点的坐标是 (x,y),坐标原点逆时针旋转的角度是 θ,旋转后的坐标(x^\hat xx^,y^\hat yy^​),有以下几种方法来计算旋转后的坐标: 1.1 旋转矩阵 1.2 复数坐标 2. 三维空间中的旋转 2.1 旋转矩阵 按照右手螺旋法则,拇指指向的方向,其它指头的方向
属性动画中旋转动画中rotation,rotationX和rotationY的区别
热门推荐
u011000635的博客
06-30 1万+
属性动画中旋转动画中rotation,rotationX和rotationY的区别
我需要一个mpu6050通过Z加速度获取z旋转角度的C语言代码
最新发布
09-12
MPU6050是一个六运动传感器模块,通常用于姿态跟踪和游戏手柄等应用中。它包含一个三加速度计(X、Y、Z)和一个三陀螺仪。为了计算Z旋转角度,你需要读取Z的加速度值,并结合一些数学计算。 以下是一个简单的示例,展示如何在C语言中使用I2C通信(假设已经初始化了I2C并配置好地址)从MPU6050获取Z加速度,然后基于简单的物理模型(如欧拉角或积分法)估算Z的角度。请注意,这只是一个基本的示例,实际应用中可能需要处理滤波、校准等因素: ```c #include <stdio.h> #include <stdlib.h> #include <math.h> #define GYRO_SCALE 131.0 // MPU6050 Gyroscope raw data to degrees/s scaling factor #define ACCEL_SCALE 9.81 // gravity acceleration in m/s^2 // I2C functions (assuming you have a working I2C library) void read_gyro(int *x, int *y, int *z) { // Read gyro values from MPU6050 } void read_accel(int *x, int *y, int *z) { // Read accel values from MPU6050 } // Calculate rotation angle around Z axis based on accumulated change float get_z_rotation_angle(float prev_angle, float z_acc, float dt) { float acc_rad_per_s = z_acc * ACCEL_SCALE; return atan(acc_rad_per_s / GYRO_SCALE) + prev_angle * dt; // Simple integration approximation } int main() { int x, y, z; // Variables for storing sensor readings float prev_angle = 0.0f; float current_angle; float dt = 0.01f; // Sample time in seconds while (true) { read_gyro(&x, &y, &z); // Read gyro and accel current_angle = get_z_rotation_angle(prev_angle, z, dt); printf("Current Z-axis rotation angle: %.2f degrees\n", current_angle * 180.0f / M_PI); // Save previous angle for next iteration prev_angle = current_angle; } return 0; }
写文章

热门文章

  • There is 和 There are的使用_28 65429
  • 1.极限——ε-δ定义_6 43222
  • 三角学——Sin函数图像_3 41680
  • 11.频域里的卷积——介绍,傅里叶变换和卷积,快速傅里叶变换(FFT)_1 37836
  • 1.极限——夹逼定理_5 32386

分类专栏

  • 英语语法 61篇
  • C++基础 22篇
  • 深度学习(基础数学) 8篇
  • Linux实战 3篇
  • 机器视觉技术 80篇
  • 机器视觉(基础数学) 11篇
  • 数据结构_C++ 9篇
  • 线性代数 7篇
  • AI论文 3篇

最新评论

  • 6.边缘检测:梯度——边缘检测、导数与边缘、什么是梯度_2

    2301_79686064: 解释的很好 感觉不是原创

  • 9.霍夫变换:圆——介绍、用Hough检测圆、圆的Hough变换_1

    B733: 多个锥体的交点看哪里

  • 20.校准相机——纯粹的方式,简单的方式,多平面校准_4

    不朽的图灵: 你好,本篇文章第一部分"纯粹的方式“中说:无论lambda是什么值,x = MX = lambdaMP + (1-lambda)MC 始终成立。由此可得MC=0. 请问怎么就能推出MC=0呢?

  • 10.傅里叶变换——2D中的傅里叶变换,傅里叶变换的应用_5

    索money海盗123: okay?

  • 1.极限——介绍_1

    我的手机账号_第二个账号: 极限x->改成 三角x->0表情包,好菜

大家在看

  • 基于指纹和六角键盘的门锁系统 355
  • 网上商品订单转手系统设计与实现 1276
  • 关于bldc的学习笔记(三)无刷测速原理 357
  • 什么是Node.js? 879
  • 【C语言】手把手带你拿捏指针(4)(含qsort函数详解)

最新文章

  • C ++ 类 | 类与函数(Function)_5
  • 程序员的设计模式-面向对象是什么?UML该学习么?2
  • 1.金融点滴 - 什么是做多、做空?国内股市为什么不能做空?
2022年4篇
2019年64篇
2018年140篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

天下网标王网站优化方法详细讲解网站全网优化工作室西城专业网站优化公司化妆品行业网站优化案例如何做好网站优化标题陕西网站优化咨询电话芜湖县网站关键词优化费用昆明网站优化排名软件电影网站如何优化分类吸引流量做网站优化推广多少钱网站的安全优化好处保定百度快照网站优化要多少钱平度网站首页优化如何做好网站搜索引擎优化网站靠优化怎么样英德市网站seo优化排名青浦区企业官网网站优化案例大港网站优化哪家便宜泰州企业网站排名优化廊坊专业网站优化公司松岗大型网站优化繁昌网站优化推广公司电商网站优化开发江南都市花园搜狗网站优化网站推广优化公司利润电影网站优化运营方案洛阳网站优化服务都江堰网站优化推广网站设计与优化有哪些渠道南充迅达网站优化香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声卫健委通报少年有偿捐血浆16次猝死汪小菲曝离婚始末何赛飞追着代拍打雅江山火三名扑火人员牺牲系谣言男子被猫抓伤后确诊“猫抓病”周杰伦一审败诉网易中国拥有亿元资产的家庭达13.3万户315晚会后胖东来又人满为患了高校汽车撞人致3死16伤 司机系学生张家界的山上“长”满了韩国人?张立群任西安交通大学校长手机成瘾是影响睡眠质量重要因素网友洛杉矶偶遇贾玲“重生之我在北大当嫡校长”单亲妈妈陷入热恋 14岁儿子报警倪萍分享减重40斤方法杨倩无缘巴黎奥运考生莫言也上北大硕士复试名单了许家印被限制高消费奥巴马现身唐宁街 黑色着装引猜测专访95后高颜值猪保姆男孩8年未见母亲被告知被遗忘七年后宇文玥被薅头发捞上岸郑州一火锅店爆改成麻辣烫店西双版纳热带植物园回应蜉蝣大爆发沉迷短剧的人就像掉进了杀猪盘当地回应沈阳致3死车祸车主疑毒驾开除党籍5年后 原水城县长再被查凯特王妃现身!外出购物视频曝光初中生遭15人围殴自卫刺伤3人判无罪事业单位女子向同事水杯投不明物质男子被流浪猫绊倒 投喂者赔24万外国人感慨凌晨的中国很安全路边卖淀粉肠阿姨主动出示声明书胖东来员工每周单休无小长假王树国卸任西安交大校长 师生送别小米汽车超级工厂正式揭幕黑马情侣提车了妈妈回应孩子在校撞护栏坠楼校方回应护栏损坏小学生课间坠楼房客欠租失踪 房东直发愁专家建议不必谈骨泥色变老人退休金被冒领16年 金额超20万西藏招商引资投资者子女可当地高考特朗普无法缴纳4.54亿美元罚金浙江一高校内汽车冲撞行人 多人受伤

天下网标王 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化