查找投影矩阵以创建零和向量

Posted

技术标签:

【中文标题】查找投影矩阵以创建零和向量【英文标题】:Find projection matrix to create zero-sum vector 【发布时间】:2014-11-29 21:20:42 【问题描述】:

我有向量子空间w,其元素总和为 0。

我想找到一个投影矩阵 Z,以便它将任何 x 向量投影到子空间 w(即向量总和为 0 的子空间)。

是否有 R 函数可以做到这一点?

【问题讨论】:

【参考方案1】:

问题没有具体说明如何提供w,但如果w 是一个满秩的矩阵跨越空间w,那么

Z <- w %*% solve(crossprod(w), t(w))

如果w 具有正交列,则上述行简化为:

Z <- tcrossprod(w)

另一种可能性是使用pracma 包,在这种情况下w 不需要是全等级:

library(pracma)
Z <- tcrossprod(orth(w))

如果w所有个总和为零的n-向量的空间,那么:

Z <- diag(n) - matrix(1, n, n) / n

注意重读问题后已修改。

【讨论】:

以上是关于查找投影矩阵以创建零和向量的主要内容,如果未能解决你的问题,请参考以下文章

计算机视觉|投影与三维视觉

线性代数如何寻找一个投影矩阵

鼠标坐标到 3D 世界/投影以进行点碰撞

如何设置投影矩阵以进行类似胫骨的投影?

如何组成一个矩阵来执行世界坐标的等距(二元)投影?

详解OpenGL的坐标系投影和几何变换