向量和矩阵

什么是矩阵/向量?

Vectors and matrix are just collections of ordered numbers that represent something: movements in space, scaling factors, pixel brightness, etc. We'll define some common uses and standard operations on them.

向量:列向量/行向量

用处:

  • Vectos can represented an offset in 2D or 3D space; points are just vectors from the origion
  • data(pixels, gradient at an image key point)can be treated as a vector

矩阵:在python中图像被表示为像素亮度矩阵, grayscale(m*n), color(m*n*3)

算术运算:

  • addition
  • scaling
  • norm: vector/matrix

  • inner prodcut/dot product of vectors
  • product of matrix
  • transpose
  • determinant

通常任何满足以下四种性质的函数都可以作为范数:

  • 非负性
  • 正定性
  • 齐次性
  • 三角不等式

特殊矩阵

  • 单位阵
  • 对角阵
  • 对称阵
  • 反对阵矩阵

变换矩阵

矩阵可以用来对向量进行变换

  • scaling
  • rotation

齐次系统/齐次坐标:

变换矩阵最右列被加到原有向量中

这里有时候会用到前面看的仿射矩阵affine matrix 的知识(见参考资料):

平移(translation):

缩放(scaling)

旋转(rotation)

平移旋转缩放

矩阵的逆

如果A的逆存在,A是可逆的或者是非奇异的non-singular; 否则是不可逆或者是奇异的.

伪逆(pseudoinverse):在计算大型矩阵逆的时候,会伴随这浮点数问题,而且不是每个矩阵都有逆

np.linalg(A,B) to solve AX = B

如果没有具体解, 返回最近的一个解

如果有多个解,返回最小的那个解

阵的阶

the rank of a transforamtion matrix tells you hwo many dimensions it transforms a vector to.

满秩; m*m 矩阵,阶数为m

阶数 < 5, 奇异矩阵,逆不存在

非方阵没有逆

特征值和特征向量

what is eigenvector?

An eigenvector x of a linear transformation A is a non-zero vector that when A is applied to it, does not change direction. And only scales the eigenvector by the scalar value \lambda, called an eigenvalue.

$$Ax = \lambda x$$

$Ax = (\lambda I)x,  \rightarrow (\lambda I - A)x = 0$, $x$ is non-zero, thus,  $|(\lambda I - A)| = 0$

性质:

  • $tr(A) = \sum_{i=1}^n \lambda_i$
  • $|A| = \prod_{i=1}^n \lambda_i$
  • the rank of A is equal to the number of non-zero eigenvalues of A
  • the eigenvalues of a diagonal matrix $D = diag(d_1,...d_n)$ are just the diagonal entries $d_1, ..., d_n$

分形理论(spectral theroy)

对角化(diagonalization)

如果n*n矩阵有n个线性独立的特征向量,则它是可对角化的

如果n*n矩阵有n个不同的特征值,则它是可对角化的

对应着不同特征值的特征向量是线性独立的

所有的特征向量方程可以写为:

$$AV = VD$$

$V \in R^{n*n}$  V的列是A的特征向量,D为对角矩阵,对应着值为A的特征值. 如果A可以写为:$A = VDV^{-1}$则A可对角化

特征值特征向量和对称对阵

对称矩阵的性质:$A^{-1} = A^T$, A所有的特征值都是实数,A所有的特征向量都是正交的.

Some applications of eigenvlues:  PageRank, Schrodinger's equation, PCA

矩阵代数

矩阵梯度:

Hessian Matrix

参考资料:

https://docs.microsoft.com/en-us/dotnet/framework/winforms/advanced/how-to-rotate-reflect-and-skew-images

[学习笔记] CS131 Computer Vision: Foundations and Applications:Lecture 3 线性代数初步的更多相关文章

  1. [学习笔记] CS131 Computer Vision: Foundations and Applications:Lecture 1 课程介绍

    课程大纲:http://vision.stanford.edu/teaching/cs131_fall1718/syllabus.html 课程定位: 课程交叉: what is (computer) ...

  2. [学习笔记] CS131 Computer Vision: Foundations and Applications:Lecture 2 颜色和数学基础

    大纲 what is color? The result of interaction between physical light in the environment and our visual ...

  3. [学习笔记] CS131 Computer Vision: Foundations and Applications:Lecture 4 像素和滤波器

    Background reading: Forsyth and Ponce, Computer Vision Chapter 7 Image sampling and quantization Typ ...

  4. [学习笔记] CS131 Computer Vision: Foundations and Applications:Lecture 9 深度学习

    深度学习 So far this week Edge detection RANSAC SIFT K-Means Linear classifier Mean-shift PCA/Eigenfaces ...

  5. Computer Vision: Algorithms and ApplicationsのImage processing

    实在是太喜欢Richard Szeliski的这本书了.每一章节(after chapter3)都详述了该研究方向比較新的成果.还有很多很多的reference,假设你感兴趣.全然能够看那些參考论文 ...

  6. ASP.Net MVC开发基础学习笔记:五、区域、模板页与WebAPI初步

    一.区域—麻雀虽小,五脏俱全的迷你MVC项目 1.1 Area的兴起 为了方便大规模网站中的管理大量文件,在ASP.NET MVC 2.0版本中引入了一个新概念—区域(Area). 在项目上右击创建新 ...

  7. Cocos2dx 3.1.1 学习笔记整理(4):事件监听与Action的初步使用

    项目忙,趁着刚才有点空,看了下触摸事件在新版本中怎么实现,遇到问题都是去:cocos2d-x-3.1.1\tests\cpp-tests\Classes下面找的,里面都是一些小例子. 首先新的CCNo ...

  8. Computer Vision: OpenCV, Feature Tracking, and Beyond--From <<Make Things See>> by Greg

    In the 1960s, the legendary Stanford artificial intelligence pioneer, John McCarthy, famously gave a ...

  9. Computer Vision Algorithm Implementations

    Participate in Reproducible Research General Image Processing OpenCV (C/C++ code, BSD lic) Image man ...

随机推荐

  1. Unsupported platform for fsevents@1.2.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})

    系统:win10 使用 npm 安装依赖时报错: Unsupported platform for fsevents@1.2.3: wanted {"os":"darwi ...

  2. [USACO08NOV]奶牛混合起来Mixed Up Cows(状态压缩DP)

    题目描述 Each of Farmer John's N (4 <= N <= 16) cows has a unique serial number S_i (1 <= S_i & ...

  3. [luogu1600 noip2016] 天天爱跑步 (树上差分)

    题目描述 小c同学认为跑步非常有趣,于是决定制作一款叫做<天天爱跑步>的游戏.<天天爱跑步>是一个养成类游戏,需要玩家每天按时上线,完成打卡任务. 这个游戏的地图可以看作一一棵 ...

  4. java map实现二级联动查询(省市区下拉列表查询)

    1.Map集合可以保存键值映射关系,这非常适合本实例所需要的数据结构,所有省份信息可以保存为Map集合的键,而每个键可以保存对应的城市信息,本实例就是利用Map集合实现了省市级联选择框,当选择省份信息 ...

  5. spring4和hibernate4.0.0的整合

    1.在myeclipse以下创建一个javaproject或者webproject,我创建的时webproject,用的myeclipse2013 2.导入spring的依赖包 3.导入hiberna ...

  6. pl/sql输入括号后卡顿的解决方式

    pl/sql输入括号后卡顿的解决方式 学习了:https://zhidao.baidu.com/question/298275368.html 工具->首选项->用户界面->代码助手 ...

  7. Scapy介绍官方文档翻译

    关于Scapy Scapy为何如此特别 高速的报文设计 一次探測多次解释 Scapy解码而不解释 高速展示Quick demo 合理的默认值 学习Python 本人英文水平有限,翻译不当之处,请參考官 ...

  8. ACM-SG函数之Fibonacci again and again——hdu1848

    Fibonacci again and again Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Jav ...

  9. MAME 0.201 发布,重温童年的街机模拟器

    MAME 0.201 已发布,MAME 最初是街机模拟器,随着时间的推移,MAME 吸收了姊妹项目 MESS(多机种模拟器超级系统),所以 MAME 现在还记录了各种各样的(大多是老式的)电脑游戏.掌 ...

  10. caffe-ssd使用预训练模型做目标检测

    首先参考https://www.jianshu.com/p/4eaedaeafcb4 这是一个傻瓜似的目标检测样例,目前还不清楚图片怎么转换,怎么验证,后续继续跟进 模型测试(1)图片数据集上测试 p ...