矩阵与坐标系

下图展示了矩阵和二维坐标系的关系,二维坐标系可以看成图像,把这种关系应用到图像变换,就得到图像处理的方式变换,应用到三维空间坐标中,就得到三维空间坐标系变换关系。

仿射变换

仿射变换主要包括平移变换、旋转变换、缩放变换(也叫尺度变换)、倾斜变换(也叫错切变换、剪切变换、偏移变换)、翻转变换。有六个自由度。

仿射变换保持二维图形的“平直性”和“平行性”,但是角度会改变。

“平直性”:变换后直线还是直线、圆弧还是圆弧。

“平行性”:平行线还是平行线,直线上点的位置顺序不变。
常说的刚性变换:指的是由平移变换和旋转变换组成。
相似变换:平移加旋转加缩放。
数学本质:在几何学里,矩阵表示了坐标系的映射关系,坐标系映射关系的本质又是矩阵乘法。
貌似图像变换只用到六个参数,为什么后面一行多了0,0,1?因为图像变换的本质是矩阵相乘,有矩阵乘法规则决定要3*3矩阵,这在数学上叫做增广矩阵或齐次变换矩阵。
图像平移矩阵变换关系:

图像旋转矩阵变换关系:图像缩放矩阵变换关系:图像错切矩阵变换关系:

三维空间变换关系

三维空间坐标变换的本质是三个旋转矩阵相乘加上一个平移向量。
旋转矩阵按如下方式定义:

沿X方向的旋转矩阵:

沿Y方向的旋转矩阵:

沿Z方向的旋转矩阵:

对于相机坐标系到世界坐标系下的坐标变换方程如下:


当然还有四元数的方法表示空间坐标的位姿关系,那是另一回事。

矩阵与坐标系的映射关系相关推荐

  1. 双目立体视觉中的坐标系与转换关系 [留意~摄影测量学与计算机视觉学科中的差异]

    文章目录 前言 影像坐标系 相机坐标系 世界坐标系 影像坐标系与相机坐标系之间的相互转换 相机坐标系与世界坐标系之间的相互转换 前言   通过模拟人眼立体视觉,两个摄像机拍摄同一场景可构成双目成像模型 ...

  2. 相机标定的原理及四个坐标系之间的关系

    参考:https://www.jianshu.com/p/7d97fccd79bb 1. 相机标定 在图像测量过程以及机器视觉应用中,为确定空间物体表面某点的三维几何位置与其在图像中对应点之间的相互关 ...

  3. 总结|机器视觉中三大坐标系及其相互关系

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 作者:林青春 链接:https://zhuanlan.zhihu.com/p/59289459 本文转 ...

  4. 双目视觉(一)-相机标定及各坐标系间转换关系

    本篇文章用来记录近期学习双目视觉定位的收获,后续我将随着不断深入学习对文章进行补充 视觉是人类感知外界环境信息的重要途径,其中人类约有80%的环境信息是通过双眼获取的.双目视觉系统是典型的类人视觉模型 ...

  5. LCD不带显存,是如何内存映射屏幕。S5PV210SoC在内存中选一段内存存放颜色数据,通过配置将LCD控制器和这一段内存连接起来,构成映射关系,LCD控制器就自动从显存中读取像素数据传给LCD驱动器

    一.LCD控制原理 S5PV210处理器中自带LCD控制器,控制LCD的显示,把 LCD 图像数据从一个位于系统内存的 video buffer 传送到一个外部的 LCD 驱动器接口. 类型: STN ...

  6. 相机标定(一): 世界坐标系、相机坐标系、图像坐标系和像素坐标系间的关系

    最近在做双目测距,需要用到相机标定.矫正等,但首先需要熟悉相机模型:相机模型为以后算法的关键,只有将相机模型理解透彻,才能对以后的标定算法有更好的理解.参考了好多相关的博客,终于有点思路,顺手写下来作 ...

  7. 摄像机标定中四大坐标系之间的关系

    一.四个坐标系简介和转换 相机模型为以后一切标定算法的关键,只有这边有相当透彻的理解,对以后的标定算法才能有更好的理解.本人研究了好长时间,几乎每天都重复看几遍,最终才会明白其推导过程.      我 ...

  8. 遗传算法染色体与信道分配映射关系MATLAB代码实现求助

    这是利用遗传算法来进行信道分配代码的一部分,就剩一个问题解决不了,导致整个程序都不能运行.哪位大神指点一下,一般来说染色体与信道分配策略之间的映射关系是怎样的实现的吗?也就是说,在这一段代码中要怎样定 ...

  9. laravel 是怎么做到运行 composer dump-autoload 不清空 classmap 映射关系的呢?

    我看 laravel 的 composer.json 文件 autoload 也没配置 vendor/autoload_classmap.php 里的映射关系,正常来说,如果没有配置,执行 compo ...

最新文章

  1. git分支合并(包含学习git命令的方法)
  2. python使用笔记:pyperclip模块安装和使用
  3. Oracle 11g服务端的安装和配置
  4. 大公司青睐的50款开源工具
  5. rxjs里的Observable对象subscribe方法的执行原理
  6. 测试功能范围_软件测试难学吗?
  7. 新手引导动画的4种实现方式 1
  8. qq linux五笔输入法,qq五笔输入法
  9. FTP、FTPS 与 SFTP 简介
  10. 10种受欢迎的前后端相关开发工具
  11. 计算机网络带宽是什么意思,带宽是什么有什么意义
  12. VBS 脚本控制键盘
  13. Taro 小程序开发大型实战(六):尝鲜微信小程序云(上篇)
  14. 特洛伊的女人 | 经济学人早报精选20210830
  15. Matlab模拟蒲丰投针实验计算Π值
  16. 阿里云物联网平台添加网关设备和子设备
  17. 【JavaSE】面向对象之多态、向上转型与向下转型
  18. oninput 、onpropertychange 、addEvent思考
  19. 前端图片渲染性能优化与实践 — 图片懒加载
  20. 中国移动手机邮箱测试将扩展至北京用户

热门文章

  1. OCR实时扫描识别中英文--tess_two在Android的使用
  2. 喜讯|宏时数据获得CMMI3级认证!欢迎了解自研统一运维监控平台!
  3. 斯蒂夫乔布斯传札记:第六波
  4. 河南新华计算机学校学费多少,河南新华电脑学院提前三年收费 育人还是圈钱?...
  5. c# 禁用鼠标与键盘
  6. java:获取后缀为doc、docx、xls、xlsx、ppt、pptx、pdf、xml的文件中的文本
  7. 算法训练一(贪心、二分)(含解题思路)(下)
  8. win10硬盘锁怎么解除_大师教你解决win10系统取消移动硬盘写保护的图文办法
  9. 洛谷P1638 逛画展
  10. 微信小程序之子页面动态修改导航栏标题文字内容