文档章节

3D数学 ---- 矩阵的更多知识(2)

rise-worlds
 rise-worlds
发布于 2016/06/20 13:37
字数 656
阅读 0
收藏 0

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

矩阵的逆

另外一种重要的矩阵运算是矩阵的求逆,这个运算只能用于方阵。

 

运算法则

方阵M的逆,记作M-1,也是一个矩阵。当MM-1相乘时,结果是单位矩阵。表示为公式9.6的形式:

并非所有的矩阵都有逆。一个明显的例子是若矩阵的某一行或列上的元素都为0,用任何矩阵乘以该矩阵,结果都是一个零矩阵。如果一个矩阵有逆矩阵,那么称它为可逆的或非奇异的。如果一个矩阵没有逆矩阵,则称它为不可逆的或奇异矩阵。奇异矩阵的行列式为0,非奇异矩阵的行列式不为0,所以检测行列式的值是判断矩阵是否可逆的有效方法。此外,对于任意可逆矩阵M,当且仅当v=0时,vM=0

M的”标准伴随矩阵“记作”adjM“,定义为M的代数余子式矩阵的转置矩阵。下面是一个例子,考虑前面给出的3x3阶矩阵M

计算M的代数余子式矩阵:

M的标准伴随矩阵是代数余子式矩阵的转置:

一旦有了标准伴随矩阵,通过除以M的行列式,就能计算矩阵的逆。

其表示如公式9.7所示:

例如为了求得上面矩阵的逆,有:

当然还有其他方法可以用来计算矩阵的逆,比如高斯消元法。很多线性代数书都断定该方法更适合在计算机上实现,因为它所使用的代数运算较少,这种说法其实是不正确的。对于大矩阵或某些特殊矩阵来说,这也许是对的。然而,对于低阶矩阵,比如几何应用中常见的那些低阶矩阵,标准伴随矩阵可能更快一些。因为可以为标准伴随矩阵提供无分支(branchless)实现,这种实现方法在当今的超标量体系结构和专用向量处理器上会更快一些。

矩阵的逆的重要性质:

 

几何解释

矩阵的逆在几何上非常有用,因为它使得我们可以计算变换的”反向“或”相反“变换 ---- 能”撤销“原变换的变换。所以,如果向量v用矩阵M来进行变换,接着用M的逆M-1进行变换,将会得到原向量。这很容易通过代数方法验证:

本文转载自:http://www.cnblogs.com/flying_bat/archive/2008/01/17/1042688.html

rise-worlds

rise-worlds

粉丝 3
博文 1760
码字总数 1380
作品 0
深圳
程序员
私信 提问
Lesson6 矩阵变换,模型,视图,投影和viewport

前言 本来打算直接写教程 04 的,但是想到3D 变换涉及的数学知识较多,往往是很多初学者的拦路虎(比如我自己)。再加上OpenGL ES 2.0 不再提供OpenGL ES 1.0中 3D 变换相关的一些重量级函数...

gdxz110
2016/11/03
70
0
unity3d 数学基础与数学辅助类

------------------------------------------------------------- 转载注明smartdot:http://my.oschina.net/u/243648/blog/67193 1. 数学(点乘/叉乘)/unity3d的数学辅助类 2. 坐标系统(本......

Matrix4X4
2012/07/15
12K
1
文章-编程需要知道多少数学知识?

本文转自:编程需要知道多少数学知识?-唐小娟的翻译 下面是我在Reddit的子论坛 r/learnprogramming 看到的几个帖子: “要成为一个优秀的程序员需要学习多少数学?” “我应该重新学习数学吗...

BjarneCpp
2017/08/12
0
0
OpenGL入门6:矩阵与变换

本文是个人学习记录,学习建议看教程 https://learnopengl-cn.github.io/ 非常感谢原作者JoeyDeVries和多为中文翻译者提供的优质教程 近况 心酸 前言 在阅读本篇博客之前,你必须对向量和矩阵...

zhxmdefj
07/30
0
0
3D应用开发中的欧拉角和旋转矩阵

前言 在二维平面内,我们用来表示点的位置,通过向坐标原始值累加偏移值即可将点移动。但在三维空间内除了位置偏移外,还存在着旋转变化,因此空间内的每个物体都具有至少两个基础特性:位置...

酷家乐平台前端团队
04/26
0
0

没有更多内容

加载失败,请刷新页面

加载更多

如何更改iOS应用程序的名称?

我前几天用一个愚蠢的开发代码名称开始了一个iPhone项目,现在我想改变项目的名称,因为它已经接近完成了。 但是我不知道如何使用Xcode来做这件事,尝试在info.plist文件中更改应用程序的名称...

技术盛宴
21分钟前
2
0
关于win10tensorflow的配置(CPU+GPU)

主要内容 CPU篇 GPU篇 【前期准备与注意事项】 环境:window1064位+python36(37)+CUDA9.0+cuDNN7.6+tensorflow_gpu-1.12.0 软件:anaconda+pycharm 硬件:有nvidia显卡的笔记本或台式(非A...

放只虎归个山
29分钟前
1
0
C#中的多行字符串文字

有没有一种简单的方法可以在C#中创建多行字符串文字? 这是我现在所拥有的: string query = "SELECT foo, bar"+ " FROM table"+ " WHERE id = 42"; 我知道PHP有 <<<BLOCKBLOCK; C#是......

javail
37分钟前
3
0
微信支付之小微商户扫盲!支持信用卡,免营业执照!

微信支付商户申请面向线下小微商户开放,符合条件的微信支付服务商可为小微商户发起接入申请。无需营业执照。 小微商户日收款额度为5万元~30万元 。 信用卡支付日限额为1千;月限额1万。 结算...

吴伟祥
今天
4
0
大话SDWebImage(三)-- 图片下载层

四、图片下载层 SDWebImageDownloader是处理图片下载的类 4.1 图片下载步骤 首先介绍下dispatch_barrier,GCD中的dispatch_barrier目的是在并发队列实现串行的效果,创建下载任务SDWebImageD...

aron1992
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部