Householder变换与QR分解详细推导过程

1、向量的内积(点乘),外积(叉乘)

向量的内积(点乘),外积(叉乘)的代数定义与几何定义;
https://zhuanlan.zhihu.com/p/359975221

2、向量的投影与正交投影

参考资料:
https://blog.csdn.net/wxc971231/article/details/122789265

2.1、投影问题数学表达

二维平面投影,如下将b向量投影到向量a方向,得到b向量在a向量的分量p;数学表达为:已知向量a和b如下定义:
a = { x a y a z a } b = { x b y b z b } a=\left\{\begin{array}{l} x_a \\ y_a \\ z_a \end{array}\right\} b=\left\{\begin{array}{l} x_b \\ y_b \\ z_b \end{array}\right\} a= xayaza b= xbybzb
具体情况如下图:
在这里插入图片描述

求向量p 关于向量a和b的表达式?

2.2、求解投影矩阵

如图可见向量 b−p 与向量a 正交,內积为 0,即有
a ⊤ ( b − p ) = a ⊤ ( b − x a ) = 0 ⇒ x = a ⊤ b a ⊤ a / ∗ 注意 x 式一个系数 , 行乘列为向量内积 ∗ / ⇒ p = a x = a a ⊤ b a ⊤ a = ( a a ⊤ a ⊤ a ) b \begin{aligned} & \mathbf{a}^{\top}(\mathbf{b}-\mathbf{p})=\mathbf{a}^{\top}(\mathbf{b}-\mathrm{x} \mathbf{a})=\mathbf{0} \\ \Rightarrow & \mathbf{x}=\frac{\mathbf{a}^{\top} \mathbf{b}}{\mathbf{a}^{\top} \mathbf{a}} &/* 注意x式一个系数,行乘列为向量内积 */\\ \Rightarrow & \mathbb{p}=\mathbf{ax}=\mathbf{a} \frac{\mathbf{a}^{\top} \mathbf{b}}{\mathbf{a}^{\top} \mathbf{a}}=\left(\frac{\mathbf{a} \mathbf{a}^{\top}}{\mathbf{a}^{\top} \mathbf{a}}\right) \mathbf{b} \end{aligned} a(bp)=a(bxa)=0x=aaabp=ax=aaaab=(aaaa)b/注意x式一个系数,行乘列为向量内积/
其中
( a a ⊤ a ⊤ a ) \begin{aligned} \left(\frac{\mathbf{a} \mathbf{a}^{\top}}{\mathbf{a}^{\top} \mathbf{a}}\right) \end{aligned} (aaaa)
P = a a ⊤ a ⊤ a \mathbf{P}=\frac{\mathrm{aa}^{\top}}{\mathbf{a}^{\top} \mathrm{a}} P=aaaa 称为投影矩阵,记作 P P P

2.3、投影矩阵 P P P的性质

  1. 分母 a ⊤ a \mathbf{a}^{\top} \mathbf{a} aa 是向量内积,是个常数,不管它
  2. 分子 a a ⊤ \mathbf{a} \mathbf{a}^{\top} aa ,这是个矩阵,显然有 rank ⁡ ( A ) = 1 \operatorname{rank}(\mathbf{A})=1 rank(A)=1 ,其列空间就是 k a }  ,因此用投影矩阵左乘向量会把向量变换到其列空间  k a k \mathbf{a } \text { ,因此用投影矩阵左乘向量会把向量变换到其列空间 } k \mathbf { a }} ka ,因此用投影矩阵左乘向量会把向量变换到其列空间 ka中,实现投影
  3. a a ⊤ \mathbf{a} \mathbf{a}^{\top} aa 对称,所以 P \boldsymbol{P} P 是对称矩阵, P = P ⊤ \mathbf{P}=\mathbf{P}^{\top} P=P
  4. 重复投影两次,结果不变,即有 P 2 = P \mathbf{P}^2=\mathbf{P} P2=P
  • 另外提一句,假设向量 䙵两夹角为 θ \theta θ ,常见的向量内积
    a ⊤ b = ∥ b ∥ ⋅ ∥ a ∥ ⋅ cos ⁡ ( θ ) \mathbf{a}^{\top} \mathbf{b}=\|\mathbf{b}\| \cdot\|\mathbf{a}\| \cdot \cos (\theta) ab=bacos(θ)

计算的就是一个向量的模乘以另一个向量在此向量上投影的模长。如果把其中某一个向量的模长设为 1 (即变为单位向量),最后再乘以该向量,就得到投影向量,即

a \mathbf{a} a 投影到单位向量 b \mathbf{b} b 为: ( a ⊤ b ) b = ( b ⊤ a ) b = ∥ a ∥ cos ⁡ ( θ ) b \left(\mathbf{a}^{\top} \mathbf{b}\right) \mathbf{b}=\left(\mathbf{b}^{\top} \mathbf{a}\right) \mathbf{b}=\|\mathbf{a}\| \cos (\theta) \mathbf{b} (ab)b=(ba)b=acos(θ)b, 其中 ∥ b ∥ = 1 \|\mathbf{b}\|=1 b=1
b \mathbf{b} b 投影到单位向量 a \mathbf{a} a 为: ( a ⊤ b ) a = ( b ⊤ a ) a = ∥ b ∥ cos ⁡ ( θ ) a \left(\mathbf{a}^{\top} \mathbf{b}\right) \mathbf{a}=\left(\mathbf{b}^{\top} \mathbf{a}\right) \mathbf{a}=\|\mathbf{b}\| \cos (\theta) \mathbf{a} (ab)a=(ba)a=bcos(θ)a, 其中 ∥ a ∥ = 1 \|\mathbf{a}\|=1 a=1

当投影方向不是单位向量时,增加其模的倒数进行缩放,如上图中的 P = ∥ b ∥ cos ⁡ ( θ ) a ∥ a ∥ \mathbf{P}=\|\mathbf{b}\| \cos (\theta) \frac{\mathbf{a}}{\|\mathbf{a}\|} P=bcos(θ)aa

2.4、正交投影矩阵

已知向量b在向量a上的投影向量 p p p可以如下表示:
p = ( a a ⊤ a ⊤ a ) b \begin{aligned} & \mathbb{p}=\left(\frac{\mathbf{a} \mathbf{a}^{\top}}{\mathbf{a}^{\top} \mathbf{a}}\right) \mathbf{b} \end{aligned} p=(aaaa)b
则向量b在向量a正交方向投影为 b-p;表达式如下:
b − p = I b − ( a a ⊤ a ⊤ a ) b = ( I − a a ⊤ a ⊤ a ) b \begin{aligned} & b-p=\mathbf{Ib}-\left(\frac{\mathbf{a} \mathbf{a}^{\top}}{\mathbf{a}^{\top} \mathbf{a}}\right) \mathbf{b} = \left(\mathbf{I}-\frac{\mathbf{a} \mathbf{a}^{\top}}{\mathbf{a}^{\top} \mathbf{a}}\right) \mathbf{b} \end{aligned} bp=Ib(aaaa)b=(Iaaaa)b
因正交投影矩阵表达式为: ( I − a a ⊤ a ⊤ a ) \left(\mathbf{I}-\frac{\mathbf{a} \mathbf{a}^{\top}}{\mathbf{a}^{\top} \mathbf{a}}\right) (Iaaaa)

3、Householder 变换与QR分解

推荐视频资料:
https://m.bilibili.com/video/BV1FB4y1j7pA?buvid=XY1BC9D1023376660B90270930FC3357FA99A&from_spmid=united.player-video-detail.drama-float.0&is_story_h5=false&mid=EMknszTdXIk3B70T%2BkLvLQ%3D%3D&p=1&plat_id=114&share_from=ugc&share_medium=android&share_plat=android&share_session_id=c92f3465-b268-4b3e-b014-5c5cfa3621d4&share_source=WEIXIN&share_tag=s_i&spmid=united.player-video-detail.0.0&timestamp=1700552919&unique_k=YcPByru&up_id=1235616254&code=0417lc100dVc4R1xoS300o6xgY07lc1P&state=
推荐书本:矩阵分析与应用张贤达第一版,第4章内容。

3.1、Householder 变换与 Householder 矩阵

3.1.1、Householder 变换

考虑如下场景:已知向量 x x x和向量 w w w,求解向量 y y y,向量 y y y具有以下特点:
根据向量 w w w可以确认其垂直平面,如下图灰色面部分;向量 y y y为向量 x x x相对于灰色面部分的镜像向量 y y y;由于向量 x x x和向量 y y y满足镜像关系,所以向量 x x x与向量 y y y长度相同。
因此Householder 变换也称为镜像变换。

ω 0 = ω ∥ ω ∥ 2 , ω = x − y = ∥ ω ∥ 2 ω 0 , ∥ ω ∥ 2 = 2 ( x , ω 0 ) = 2 ω 0 T x x − y = 2 ( ω 0 T x ) ω 0 = 2 ω 0 ( ω 0 T x ) = 2 ω ( ω T x ) ∥ ω ∥ 2 2 = 2 ( ω ω T ) x ω T ω y = x − 2 ω ω T ω T ω x = ( I − 2 ω T ω ω ω T ) x = H ( ω ) x \begin{gathered} \omega_0=\frac{\omega}{\|\omega\|_2}, \quad \omega=x-y=\|\omega\|_2 \omega_0, \quad\|\omega\|_2=2\left(x, \omega_0\right)=2 \omega_0^T x \\ x-y=2\left(\omega_0^T x\right) \omega_0=2 \omega_0\left(\omega_0^T x\right)=2 \frac{\omega\left(\omega^T x\right)}{\|\omega\|_2^2}=2 \frac{\left(\omega \omega^T\right) x}{\omega^T \omega} \\ y=x-2 \frac{\omega \omega^T}{\omega^T \omega} x=\left(I-\frac{2}{\omega^T \omega} \omega \omega^T\right) x=H(\omega) x \end{gathered} ω0=ω2ω,ω=xy=ω2ω0,ω2=2(x,ω0)=2ω0Txxy=2(ω0Tx)ω0=2ω0(ω0Tx)=2ω22ω(ωTx)=2ωTω(ωωT)xy=x2ωTωωωTx=(IωTω2ωωT)x=H(ω)x

ω ∈ R n , ω ≠ 0 \omega \in \mathbf{R}^n, \omega \neq 0 ωRn,ω=0, 称初等矩阵为Householder矩阵:
H ( ω ) = I − 2 ω T ω ω ω T \boldsymbol{H}(\boldsymbol{\omega})=\boldsymbol{I}-\frac{2}{\boldsymbol{\omega}^T \omega} \boldsymbol{\omega} \boldsymbol{\omega}^T H(ω)=IωTω2ωωT
注意:向量 w w w为列向量,所以
分子: ω ω T \boldsymbol{\omega} \boldsymbol{\omega}^T ωωT 是一个3*3的对称矩阵
分母: ω T ω \boldsymbol{\omega}^T \omega ωTω是一个数值,向量的内积等于向量模长的平方。

3.1.2、Householder矩阵的性质

  1. 对称性: H ( ω ) T = H ( ω ) \boldsymbol{H}(\boldsymbol{\omega})^T=\boldsymbol{H}(\boldsymbol{\omega}) H(ω)T=H(ω)
    H ( ω ) T = ( I − 2 ω T ω ω ω ) T = I − 2 ω T ω ( ω ω ) T = I − 2 ω T ω ω ω T = H ( ω ) \boldsymbol{H}(\boldsymbol{\omega})^T=\left(\boldsymbol{I}-\frac{2}{\boldsymbol{\omega}^T \boldsymbol{\omega}} \boldsymbol{\omega} \boldsymbol{\omega}\right)^T=\boldsymbol{I}-\frac{2}{\boldsymbol{\omega}^T \boldsymbol{\omega}}(\boldsymbol{\omega} \boldsymbol{\omega})^T\\ =\boldsymbol{I}-\frac{2}{\boldsymbol{\omega}^T \boldsymbol{\omega}} \boldsymbol{\omega} \boldsymbol{\omega}^T=\boldsymbol{H}(\boldsymbol{\omega}) H(ω)T=(IωTω2ωω)T=IωTω2(ωω)T=IωTω2ωωT=H(ω)

  2. 正交性: H ( ω ) T H ( ω ) = I \boldsymbol{H}(\boldsymbol{\omega})^T \boldsymbol{H}(\boldsymbol{\omega})=\boldsymbol{I} H(ω)TH(ω)=I
    H ( ω ) T H ( ω ) = ( I − 2 ω T ω ω ω 2 = I − 2 ω T ω ω ω T − 2 ω T ω ω ω T + ( 2 ω T ω ) 2 ( ω ω J ) ( ω ω T ) = I − 4 ω T ω ω ω T + 4 ( ω T ω ) 2 ω ( ω T ω ) ω T = I \begin{aligned} H(\omega)^T H(\omega)=\left(I-\frac{2}{\omega^T \omega} \omega \omega^2=I-\frac{2}{\omega^T \omega} \omega \omega^T-\frac{2}{\omega^T \omega} \omega \omega^T\right. & +\left(\frac{2}{\omega^T \omega}\right)^2\left(\omega \omega^J\right)\left(\omega \omega^T\right) \\ =\boldsymbol{I}-\frac{4}{\omega^T \omega} \omega \omega^T+\frac{4}{\left(\omega^T \omega\right)^2} \omega\left(\omega^T \omega\right) \omega^T=\boldsymbol{I} \end{aligned} H(ω)TH(ω)=(IωTω2ωω2=IωTω2ωωTωTω2ωωT=IωTω4ωωT+(ωTω)24ω(ωTω)ωT=I+(ωTω2)2(ωωJ)(ωωT)

  3. 如果 H ( ω ) x = y \boldsymbol{H}(\boldsymbol{\omega}) \boldsymbol{x}=\boldsymbol{y} H(ω)x=y, 则 ∥ y ∥ 2 = ∥ x ∥ 2 \|\boldsymbol{y}\|_2=\|\boldsymbol{x}\|_2 y2=x2 (长度不变)
    ∥ y ∥ 2 2 = y T y = ( H ( ω ) x ) T ( H ( ω ) x ) = x T ( H ( ω ) T H ( ω ) ) x = x T x = ∥ x ∥ 2 2 \|\boldsymbol{y}\|_2^2=\boldsymbol{y}^T \boldsymbol{y}=(\boldsymbol{H}(\boldsymbol{\omega}) \boldsymbol{x})^T(\boldsymbol{H}(\boldsymbol{\omega}) \boldsymbol{x}) \\ = \boldsymbol{x}^T\left(\boldsymbol{H}(\boldsymbol{\omega})^T \boldsymbol{H}(\boldsymbol{\omega})\right) \boldsymbol{x}=\boldsymbol{x}^T \boldsymbol{x}=\|\boldsymbol{x}\|_2^2 y22=yTy=(H(ω)x)T(H(ω)x)=xT(H(ω)TH(ω))x=xTx=x22

  4. H ( ω ) \boldsymbol{H}(\boldsymbol{\omega}) H(ω) 的特征值为 n − 1 n-1 n1 个 1 和一个 -1 。
    所以行列式的值为 ∣ H ( ω ) ∣ = − 1 |\boldsymbol{H}(\boldsymbol{\omega})|=-1 H(ω)=1

  5. 由于 H ( ω ) H(\omega ) H(ω)是一个对称的正交矩阵,因此有以下等式成立。
    H ( ω ) = H ( ω ) T = H ( ω ) − 1 H(\omega ) = H{(\omega )^T} = H{(\omega )^{ - 1}} H(ω)=H(ω)T=H(ω)1

3.1.3、Householder 变换的意义

x , y ∈ R n , x ≠ y , ∥ x ∥ 2 = ∥ y ∥ 2 x, y \in \mathbf{R}^n, x \neq y,\|x\|_2=\|y\|_2 x,yRn,x=y,x2=y2, 取 ω = x − y \omega=x-y ω=xy
H ( ω ) x = y \boldsymbol{H}(\omega) x=y H(ω)x=y
   这个等式的意义其实包含了 x y w xyw xyw三个向量之间的关系,当满足向量 x x x的模长等于向量 y y y的模长,且向量 w w w满足 w = x − y w=x-y w=xy这两个条件,则上面等式恒成立。
   此等式有以下特殊应用,设 x = ( x 1 , x 2 , ⋯   , x n ) T ∈ R n \boldsymbol{x}=\left(x_1, x_2, \cdots, x_n\right)^T \in \mathbf{R}^n x=(x1,x2,,xn)TRn x ≠ 0 \boldsymbol{x} \neq \boldsymbol{0} x=0, 我们希望将n维变量 x x x转换为向量 y = ± ∥ x ∥ 2 e 1 y = \pm\|x\|_2 e_1 y=±x2e1 的形式,其中 e 1 = ( 1 , 0 , . . . , 0 ) T {{\rm{e}}_1} = {(1,0,...,0)^T} e1=(1,0,...,0)T;此时满足了向量 x , y x,y x,y模长相等的条件,取 ω = x ± ∥ x ∥ 2 e 1 \omega=\boldsymbol{x} \pm\|x\|_2 e_1 ω=x±x2e1 则满足了 w = x − y w=x-y w=xy的条件;因此下面恒等关系成立。
H ( ω ) x = ∓ ∥ x ∥ 2 e 1 . H(\omega) x=\mp\|x\|_2 e_1 . H(ω)x=x2e1.
   由于 H ( ω ) H(\omega ) H(ω)是一个对称的正交矩阵,因此有以下等式成立: H ( ω ) = H ( ω ) T = H ( ω ) − 1 H(\omega ) = H{(\omega )^T} = H{(\omega )^{ - 1}} H(ω)=H(ω)T=H(ω)1;根据上面两式子得到以下结论: H ( ω ) x = ∓ ∥ x ∥ 2 e 1 H ( ω ) − 1 H ( ω ) x = H ( ω ) − 1 ∥ x ∥ 2 e 1 ⇒ x = H ( ω ) − 1 ∥ x ∥ 2 e 1 ⇒ x = H ( ω ) ∥ x ∥ 2 e 1 \begin{array}{ccc} {H(\omega )x = \mp {{\left\| x \right\|}_2}{e_1}}\\ {H{{(\omega )}^{ - 1}}H(\omega )x = H{{(\omega )}^{ - 1}}{{\left\| x \right\|}_2}{e_1}}\\ { \Rightarrow x = H{{(\omega )}^{ - 1}}{{\left\| x \right\|}_2}{e_1}}\\ { \Rightarrow x = H(\omega ){{\left\| x \right\|}_2}{e_1}} \end{array} H(ω)x=x2e1H(ω)1H(ω)x=H(ω)1x2e1x=H(ω)1x2e1x=H(ω)x2e1
使用Householder 变换可以将一个普通向量 x x x分解为一个对阵正交矩阵 H ( ω ) H(\omega ) H(ω)乘以一个单位向量 ∓ ∥ x ∥ 2 e 1 \mp {\left\| x \right\|_2}{e_1} x2e1的形式。

3.1.4、应用举例

例: 求Householder矩阵 H \mathrm{H} H, 使得 H x = y \mathrm{Hx}=\mathrm{y} Hx=y
已知 x = ( − 3 , 0 , 4 ) T x=(-3,0,4)^T x=(3,0,4)T,那向量 y y y只需要满足模长与向量 x x x相同即可,所以向量 y y y的取值很多,可以为 y = ( 5 , 0 , 0 ) T y=(5,0,0)^T y=(5,0,0)T y = ( 0 , 5 , 0 ) T y=(0,5,0)^T y=(0,5,0)T y = ( 1 , 1 , 23 ) T y=(1,1,\sqrt {23} )^T y=(1,1,23 )T,这里我们取: y = ( 0 , 0 , 5 ) T y=(0,0,5)^T y=(0,0,5)T进行计算。

x = ( − 3 , 0 , 4 ) T , y = ( 0 , 0 , 5 ) T ω = x − y = ( − 3 , 0 , − 1 ) T ω T ω = 10 H ( ω ) = I − 2 ω ω T ω T ω = ( 1 1 1 ) − 2 10 ( − 3 0 1 ) ( − 3 , 0 , − 1 ) = ( − 4 5 0 − 3 5 0 1 0 − 3 5 0 4 5 ) \begin{aligned} & x=(-3,0,4)^T, y=(0,0,5)^T \\ & \omega=x-y=(-3,0,-1)^T \quad \omega^T \omega=10 \\ & H(\omega)=I-2 \frac{\omega \omega^T}{\omega^T \omega}=\left(\begin{array}{ccc} 1 & & \\ & 1 & \\ & & 1 \end{array}\right)-\frac{2}{10}\left(\begin{array}{c} -3 \\ 0 \\ 1 \end{array}\right)(-3,0,-1)=\left(\begin{array}{ccc} -\frac{4}{5} & 0 & -\frac{3}{5} \\ 0 & 1 & 0 \\ -\frac{3}{5} & 0 & \frac{4}{5} \end{array}\right) \end{aligned} x=(3,0,4)T,y=(0,0,5)Tω=xy=(3,0,1)TωTω=10H(ω)=I2ωTωωωT= 111 102 301 (3,0,1)= 5405301053054

3.2、QR分解

3.2.1 矩阵分解的目的

矩阵分解的目的就是简化线程方程组求解,降低计算难度和计算量。
如果 A ∈ R m × n ( m ≥ n ) , r ( A ) = n \boldsymbol{A} \in \mathrm{R}^{m \times n}(m \geq n), r(\boldsymbol{A})=n ARm×n(mn),r(A)=n,
A = Q ( R I O ) = Q R A=Q\left(\begin{array}{c} R_I \\ O \end{array}\right)=Q R A=Q(RIO)=QR

其中 Q Q Q 为正交阵, R 1 R_1 R1 为对角元非零的上三角矩阵;这样矩阵可以变成如下形式:
A = Q R A=Q R A=QR
Q Q Q 为对称正交阵, R R R 为上三角阵,因此线程方程组可以改写成以下形式:
A x = b ⟶ A = Q R { Q y = b R x = y ⟺ R x = Q T b = Q b \boldsymbol{A x}=\boldsymbol{b} \stackrel{A=Q R}{\longrightarrow}\left\{\begin{array}{l} Q y=b \\ R x=y \end{array} \Longleftrightarrow Rx=Q^T b=Q b\right. Ax=bA=QR{Qy=bRx=yRx=QTb=Qb
这样 x x x的系数阵 R 1 R_1 R1 为对角元非零的上三角矩阵;通过将数据回代进入方程就可以求解 x x x

3.2.2、QR分解举例

使用Householder变换将矩阵A分解为对称矩阵乘以对角非零的上三角矩阵,其中
A = ( 1 1 1 2 3 1 2 1 − 5 ) A=\left(\begin{array}{ccc} 1 & 1 & 1 \\ 2 & 3 & 1 \\ 2 & 1 & -5 \end{array}\right) A= 122131115

  1. 第一取出第一列 a 1 a_1 a1进行Householder变换
    a 1 = ( 1 2 2 ) , ∥ a 1 ∥ 2 = 3 a_1=\left(\begin{array}{l} 1 \\ 2 \\ 2 \end{array}\right), \quad\left\|a_1\right\|_2=3 a1= 122 ,a12=3
    w 1 w_1 w1取值为:
    ω 1 = a 1 − ∥ a 1 ∥ 2 e 1 = ( 1 2 2 ) − ( 3 0 0 ) = ( − 2 2 2 ) \omega_1=a_1-\left\|a_1\right\|_2 e_1=\left(\begin{array}{l} 1 \\ 2 \\ 2 \end{array}\right)-\left(\begin{array}{l} 3 \\ 0 \\ 0 \end{array}\right)=\left(\begin{array}{c} -2 \\ 2 \\ 2 \end{array}\right) ω1=a1a12e1= 122 300 = 222
    Q 1 = H ( ω 1 ) = I − 2 ω 1 T ω 1 ω 1 ω 1 T = ( 1 3 2 3 2 3 2 3 1 3 − 2 3 2 3 − 2 3 1 3 ) ,  Q_1=H\left(\omega_1\right)=\boldsymbol{I}-\frac{2}{\omega_1^{\mathrm{T}} \omega_1} \omega_1 \omega_1^{\mathrm{T}}=\left(\begin{array}{ccc} \frac{1}{3} & \frac{2}{3} & \frac{2}{3} \\ \frac{2}{3} & \frac{1}{3} & \frac{-2}{3} \\ \frac{2}{3} & \frac{-2}{3} & \frac{1}{3} \end{array}\right) \text {, } Q1=H(ω1)=Iω1Tω12ω1ω1T= 313232323132323231
    Q 1 A = ( 3 3 − 7 3 0 1 13 3 0 − 1 − 5 3 ) = ( 3 b T 0 A 2 ) {Q_1}{\bf{A}} = \left( {\begin{array}{ccc} 3&3&{ - \frac{7}{3}}\\ 0&1&{\frac{{13}}{3}}\\ 0&{ - 1}&{ - \frac{5}{3}} \end{array}} \right) = \left( {\begin{array}{ccc} 3&{{{\bf{b}}^{\rm{T}}}}\\ {\bf{0}}&{{{\bf{A}}_2}} \end{array}} \right) Q1A= 3003113731335 =(30bTA2)

  2. 根据上面等式, A 2 = ( 1 13 3 − 1 − 5 3 ) {A_2} = \left( {\begin{array}{ccc} 1&{\frac{{13}}{3}}\\ { - 1}&{ - \frac{5}{3}} \end{array}} \right) A2=(1131335),继续对 A 2 A_2 A2进行Householder变换;
    a ~ 1 = ( 1 − 1 ) , ∥ a ~ 1 ∥ 2 = 2 , \widetilde{\boldsymbol{a}}_1=\left(\begin{array}{c} 1 \\ -1 \end{array}\right),\left\|\widetilde{\boldsymbol{a}}_1\right\|_2=\sqrt{2}, a 1=(11),a 12=2 ,
    ω ~ 2 = a ~ 1 − ∥ a ~ 1 ∥ 2 e 1 = ( 1 − 1 ) − ( 2 0 ) = ( 1 − 2 − 1 ) \widetilde{\boldsymbol{\omega}}_2=\widetilde{\boldsymbol{a}}_1-\left\|\widetilde{\boldsymbol{a}}_1\right\|_2 \boldsymbol{e}_1=\left(\begin{array}{c} 1 \\ -1 \end{array}\right)-\left(\begin{array}{c} \sqrt{2} \\ 0 \end{array}\right)=\left(\begin{array}{c} 1-\sqrt{2} \\ -1 \end{array}\right) ω 2=a 1a 12e1=(11)(2 0)=(12 1)
    Q ~ 2 = H ( ω ~ 2 ) = I − 2 ω ~ 2 T ω ~ 2 ω ~ 2 ω ~ 2 T = 1 2 ( 2 − 2 − 2 − 2 ) \widetilde{\boldsymbol{Q}}_2=\boldsymbol{H}\left(\widetilde{\boldsymbol{\omega}}_2\right)=\boldsymbol{I}-\frac{2}{\widetilde{\boldsymbol{\omega}}_2^{\mathrm{T}} \widetilde{\boldsymbol{\omega}}_2} \widetilde{\boldsymbol{\omega}}_2 \widetilde{\boldsymbol{\omega}}_2^{\mathrm{T}}=\frac{1}{2}\left(\begin{array}{cc} \sqrt{2} & -\sqrt{2} \\ -\sqrt{2} & -\sqrt{2} \end{array}\right) Q 2=H(ω 2)=Iω 2Tω 22ω 2ω 2T=21(2 2 2 2 )
    Q ~ 2 A 2 = ( H ( ω ~ 2 ) a ~ 1 , H ( ω ~ 2 ) a ~ 2 ) = ( 2 3 2 0 − 4 3 2 ) \widetilde{\boldsymbol{Q}}_2 \boldsymbol{A}_2=\left(\boldsymbol{H}\left(\widetilde{\boldsymbol{\omega}}_2\right) \widetilde{\boldsymbol{a}}_1, \boldsymbol{H}\left(\widetilde{\boldsymbol{\omega}}_2\right) \widetilde{\boldsymbol{a}}_2\right)=\left(\begin{array}{cc} \sqrt{2} & 3 \sqrt{2} \\ 0 & -\frac{4}{3} \sqrt{2} \end{array}\right) Q 2A2=(H(ω 2)a 1,H(ω 2)a 2)=(2 032 342 )

  3. 构造 Q 2 = ( 1 0 T 0 Q ~ 2 ) = ( 1 0 0 0 2 − 2 0 − 2 − 2 ) {Q_2} = \left( {\begin{array}{ccc} 1&{{0^{\rm{T}}}}\\ 0&{\mathop {{ \widetilde{Q}_2}}\limits } \end{array}} \right) = \left( {\begin{array}{ccc} 1&0&0\\ 0&{\sqrt 2 }&{ - \sqrt 2 }\\ 0&{ - \sqrt 2 }&{ - \sqrt 2 } \end{array}} \right) Q2=(100TQ 2)= 10002 2 02 2
    由于 Q ~ 2 { \widetilde{Q}_2} Q 2是Householder矩阵,具有对称正交的性质;所以构造的 Q 2 {Q_2} Q2同样是对称正交矩阵,也是House矩阵。

  4. Q 2 Q 1 A = Q 2 ( 3 b T 0 A 2 ) = ( 3 b T 0 Q ~ 2 A 2 ) = ( 3 3 − 7 3 0 2 3 2 0 0 − 4 3 2 ) = R \boldsymbol{Q}_2 \boldsymbol{Q}_1 \boldsymbol{A}=Q_2\left(\begin{array}{cc} 3 & \boldsymbol{b}^{\mathrm{T}} \\ 0 & \boldsymbol{A}_2 \end{array}\right)=\left(\begin{array}{cc} 3 & \boldsymbol{b}^{\mathrm{T}} \\ 0 & \widetilde{\boldsymbol{Q}}_2 \boldsymbol{A}_2 \end{array}\right)=\left(\begin{array}{ccc} 3 & 3 & -\frac{7}{3} \\ 0 & \sqrt{2} & 3 \sqrt{2} \\ 0 & 0 & -\frac{4}{3} \sqrt{2} \end{array}\right)=\boldsymbol{R} Q2Q1A=Q2(30bTA2)=(30bTQ 2A2)= 30032 03732 342 =R

Q 2 Q 1 A = R A = ( Q 2 Q 1 ) − 1 R A = ( Q 2 Q 1 ) T R A = ( Q 1 T Q 2 T ) R A = ( Q 1 Q 2 ) R ⇒ A = Q R \begin{array}{l} {Q_2}{Q_1}A = R\\ A = {\left( {{Q_2}{Q_1}} \right)^{ - 1}}R\\ A = {\left( {{Q_2}{Q_1}} \right)^T}R\\ A = \left( {{Q_1}^T{Q_2}^T} \right)R\\ A = \left( {{Q_1}{Q_2}} \right)R\\ \Rightarrow A = QR \end{array} Q2Q1A=RA=(Q2Q1)1RA=(Q2Q1)TRA=(Q1TQ2T)RA=(Q1Q2)RA=QR

Q = Q 1 Q 2 = ( 1 3 2 3 2 3 2 3 1 3 − 2 3 2 3 − 2 3 1 3 ) ( 1 0 0 0 2 2 − 2 2 0 − 2 2 2 2 ) = ( 1 3 0 − 2 2 3 2 3 2 2 2 6 2 3 − 2 2 2 6 ) Q = {Q_1}{Q_2} = \left( {\begin{array}{ccc} {\frac{1}{3}}&{\frac{2}{3}}&{\frac{2}{3}}\\ {\frac{2}{3}}&{\frac{1}{3}}&{\frac{{ - 2}}{3}}\\ {\frac{2}{3}}&{\frac{{ - 2}}{3}}&{\frac{1}{3}} \end{array}} \right)\left( {\begin{array}{ccc} 1&0&0\\ 0&{\frac{{\sqrt 2 }}{2}}&{ - \frac{{\sqrt 2 }}{2}}\\ 0&{ - \frac{{\sqrt 2 }}{2}}&{\frac{{\sqrt 2 }}{2}} \end{array}} \right) = \left( {\begin{array}{ccc} {\frac{1}{3}}&0&{ - \frac{{2\sqrt 2 }}{3}}\\ {\frac{2}{3}}&{\frac{{\sqrt 2 }}{2}}&{\frac{{\sqrt 2 }}{6}}\\ {\frac{2}{3}}&{ - \frac{{\sqrt 2 }}{2}}&{\frac{{\sqrt 2 }}{6}} \end{array}} \right) Q=Q1Q2= 313232323132323231 100022 22 022 22 = 313232022 22 322 62 62

最终通过Householder变换可以将矩阵分解为: A = Q R A = QR A=QR,其中 Q Q Q为对称的正交矩阵; R R R为对角非零的上三角矩阵。



 

相机模型的投影矩阵:
https://zhuanlan.zhihu.com/p/586364840

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值