1. 程式人生 > >特徵分解的推導與意義與opencv程式碼

特徵分解的推導與意義與opencv程式碼

特徵值與特徵向量

定義: A x = λ x

A\vec{x}=\lambda\vec{x} 則稱 λ \lambda 為矩陣A的特徵值, x
\vec{x}
稱為 λ \lambda 對應的特徵向量。

假設A是一個可對角化的矩陣,並且具有n個線性獨立的特徵向量 P
= [ P 1   P 2   P 3 P n ] P=[\vec{P_1} \ \vec{P_2}\ \vec{P_3} … \vec{P_n}]
,對應的特徵值為 Λ = [ λ 1 λ n ] \Lambda=\left[ \begin{matrix} \lambda_1 & & \\ & \ddots & \\ && \lambda_n \end{matrix} \right] , 可以將 y = A x \vec{y}=A\vec{x} 進行這樣的理解

由於P由n個線性獨立的向量組成,所以 x \vec{x} 肯定可以表示再P的基底下,即 x = I x = a 1 P 1 + a 2 P 2 + + a n P n = P [ a 1 a 2 a n ] \vec{x}=I\vec{x}=a1\vec{P_1}+a2\vec{P_2}+…+an\vec{P_n}=P \left[\begin{matrix} a_1\\a_2\\ \vdots \\a_n \end{matrix} \right]

y = A x = A P [ a 1 a 2 a n ]                = [ A P 1   A P 2   A P 3 A P n ] [ a 1 a 2 a n ]                = a 1 λ 1 P 1 + a 2 λ 2 P 2 + + a n λ n P n \vec{y}=A\vec{x}=AP \left[\begin{matrix} a_1\\a_2\\ \vdots \\ a_n \end{matrix} \right] \\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ = [A\vec{P_1} \ A\vec{P_2}\ A\vec{P_3} … A\vec{P_n}]\left[\begin{matrix} a_1\\a_2\\ \vdots \\ a_n \end{matrix} \right] \\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ =a_1\lambda_1\vec{P_1}+a_2\lambda_2\vec{P_2}+…+a_n\lambda_n\vec{P_n}