## SVD 首先给出一些定义, - 正交矩阵 (orthogonal matrix) 满足: $O^{T} = O^{-1}$ - 正定矩阵:$\forall \vec{z} \neq \vec{0}, s.t. \vec{z}^{T}A\vec{z} > 0$ - 性质:$\det{A} > 0 $ eigenvalue > 0 - 半正定矩阵:$\det \geq 0$ - 共轭转置 (conjugate transpose) $M^{H}$ - 实数矩阵的共轭转置 = 转置 - 复数矩阵的共轭转置 = 转置 + 元素(复数)的共轭 - 酉矩阵 (unitary matrix) 特殊方阵满足 $UU^{H} = U^{H}U = I_{n}$ 设 $M \in \R^{m \times n}$ 的 SVD 为 $M = U \Sigma V^{H}$ 则: - $MM^{H} = U\Sigma V^{H}V\Sigma^{H} U^H = U (\Sigma \Sigma^{H}) U^{H}$ - $M^{H}M = V \Sigma U^{H}U\Sigma^{H} V^H = V(\Sigma^{H} \Sigma)V$ ## Triagulation ### Camera Projection Matrix 你的思考很敏锐!不过这里的 $ P $ **不是内参矩阵**,而是包含了相机内参和外参的 **“相机投影矩阵”**(Camera Projection Matrix)。我们来详细区分一下这几个概念,避免混淆~ #### **1. 内参矩阵 $ K $(Intrinsic Matrix)** 内参只和相机自身特性有关,描述相机如何将3D点(在相机坐标系下)投影到2D图像平面。它的形式是3×3矩阵: $$ K = \begin{bmatrix} f_x & s & c_x \\ 0 & f_y & c_y \\ 0 & 0 & 1 \end{bmatrix} $$ - $ f_x, f_y $:x/y轴方向的焦距(像素单位); - $ c_x, c_y $:图像主点(光轴与图像平面交点,通常是图像中心); - $ s $:像素偏斜系数(通常为0,理想相机忽略)。 #### **2. 外参矩阵(Extrinsic Matrix)** 外参描述相机在 **世界坐标系** 中的姿态(位置和朝向),由旋转矩阵 $ R $(3×3)和平移向量 $ t $(3×1)组成,合并为3×4矩阵: $$ [R | t] $$ 作用:将世界坐标系下的3D点 $ X_{\text{world}} $ 转换到相机坐标系下的3D点 $ X_{\text{camera}} $: $$ X_{\text{camera}} = R X_{\text{world}} + t $$ #### **3. 相机投影矩阵 $ P $** 三角化中提到的 $ P $,是内参和外参的“组合”,即: $$ P = K [R | t] $$ 它直接实现“世界坐标系3D点 $ X $”到“图像2D点 $ x $”的投影: $$ x = P X $$ (这里 $ X $ 是世界坐标系下的齐次坐标 $ [X, Y, Z, 1]^T $,$ x $ 是图像齐次坐标 $ [u, v, 1]^T $)。 #### **举个例子帮助理解** 假设相机放在世界坐标系原点(外参 $ R=I, t=0 $),内参 $ K = \begin{bmatrix} f & 0 & c_x \\ 0 & f & c_y \\ 0 & 0 & 1 \end{bmatrix} $,则相机矩阵 $ P = K [I | 0] = K $(此时 $ P $ 才等于内参矩阵)。但通常相机不在原点(比如双目相机的左右相机,外参不同),此时 $ P $ 必须包含外参 $ [R|t] $。 #### **总结** - 内参 $ K $:相机“自身参数”,与拍摄场景无关; - 外参 $ [R|t] $:相机“位置姿态”,与场景有关; - 相机矩阵 $ P $:$ K \times [R|t] $,直接完成3D→2D投影,是三角化中“已知”的输入(因为三角化需要知道两个相机的投影关系)。 ### Triagulation #### **一、齐次方程组 $ A X = 0 $ 有什么特殊之处?** 在三角化中,我们通过两个2D对应点得到了一个线性方程组: $$ A X = 0 $$ 其中 $ A $ 是一个矩阵(比如两个图像对应点会得到4×4的 $ A $),$ X $ 是待求的3D点齐次坐标($ X = [X, Y, Z, 1]^T $,注意齐次坐标的最后一维是1,解出来后需要归一化)。 **为什么不能用普通方法(比如高斯消元)求解?** - **齐次方程组的“零解陷阱”**:如果直接解 $ A X = 0 $,$ X = [0, 0, 0, 0]^T $ 一定是解(零解),但这显然不是我们要的3D点(3D点的坐标不可能全是0)。我们需要的是 **非零解**。 - **噪声导致“无解”**:实际中,由于图像匹配有噪声,两条射线不会严格相交,所以 $ A X = 0 $ 其实 **没有精确解**(即不存在非零 $ X $ 让 $ A X $ 严格等于0)。我们需要找一个 $ X $,让 $ A X $ “尽可能接近0”(最小二乘意义下的最佳拟合)。 #### **二、核心目标:最小化 $ \| A X \|^2 $(让 $ A X $ 尽可能接近0)** 为了排除零解,我们给 $ X $ 加一个约束:$ \| X \|^2 = 1 $(即 $ X $ 是单位向量,因为齐次坐标可以缩放,解的方向比大小重要)。所以问题转化为: $$ \text{找 } X \text{ 使得 } \| A X \|^2 \text{ 最小,且 } \| X \|^2 = 1 $$ #### **三、SVD分解:解决这个问题的“万能工具”** 要理解如何求解,我们需要先认识 **奇异值分解(SVD)**。你可以把SVD想象成一种“矩阵的显微镜”:任何矩阵都能被分解成3个简单矩阵的乘积,从而看清它的“结构”。 ##### **1. SVD分解的定义** 对任意 $ m \times n $ 矩阵 $ A $,SVD分解为: $$ A = U \Sigma V^T $$ 其中: - $ U $:$ m \times m $ **正交矩阵**(列向量相互垂直,且都是单位向量,$ U^T U = I $); - $ V $:$ n \times n $ **正交矩阵**(同上,$ V^T V = I $); - $ \Sigma $:$ m \times n $ **对角矩阵**(只有对角线有非零值,其余全为0),对角线元素称为 **奇异值**,记为 $ \sigma_1 \geq \sigma_2 \geq \dots \geq \sigma_k \geq 0 $($ k = \min(m, n) $)。 ##### **2. 用“图像处理”比喻理解SVD** 假设 $ A $ 是一张彩色图像(矩阵): - $ U $ 和 $ V^T $ 相当于“基向量”(比如图像的“特征方向”); - $ \Sigma $ 中的奇异值 $ \sigma_i $ 相当于“权重”:奇异值越大,对应方向的“信息量”越多(比如图像的主要轮廓);奇异值越小,信息量越少(比如噪声)。 ##### **3. SVD的关键性质(我们需要用到的)** - **正交矩阵不改变向量的模长**:对任意向量 $ x $,$ \| U x \| = \| x \| $,$ \| V x \| = \| x \| $(因为正交矩阵就像“旋转”或“镜像”,不拉伸向量)。 - $ A X = U \Sigma V^T X $:用SVD表示 $ A X $,后续会用这个展开式计算 $ \| A X \|^2 $。 #### **四、推导:为什么最小奇异值对应的右奇异向量是解?** 我们的目标是最小化 $ \| A X \|^2 $,且 $ \| X \| = 1 $。利用SVD分解 $ A = U \Sigma V^T $,代入得: $$ \| A X \|^2 = \| U \Sigma V^T X \|^2 $$ ##### **第一步:简化模长计算** 因为 $ U $ 是正交矩阵,根据性质,$ \| U \Sigma V^T X \| = \| \Sigma V^T X \| $,所以: $$ \| A X \|^2 = \| \Sigma V^T X \|^2 $$ ##### **第二步:设 $ Y = V^T X $,转换变量** 因为 $ V $ 是正交矩阵,$ X = V Y $(两边左乘 $ V $,$ V V^T X = V Y \Rightarrow X = V Y $)。又因为 $ \| X \| = 1 $,且 $ V $ 正交,所以 $ \| X \| = \| V Y \| = \| Y \| = 1 $($ Y $ 也是单位向量)。 ##### **第三步:展开 $ \| \Sigma Y \|^2 $** $ \Sigma $ 是对角矩阵,假设 $ \Sigma = \begin{bmatrix} \sigma_1 & 0 & \dots & 0 \\ 0 & \sigma_2 & \dots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \dots & \sigma_k \end{bmatrix} $($ k = \min(m, n) $),$ Y = [y_1, y_2, \dots, y_n]^T $(单位向量)。则: $$ \Sigma Y = \begin{bmatrix} \sigma_1 y_1 \\ \sigma_2 y_2 \\ \vdots \\ \sigma_k y_k \\ 0 \\ \vdots \\ 0 \end{bmatrix} $$ 所以 $ \| \Sigma Y \|^2 = (\sigma_1 y_1)^2 + (\sigma_2 y_2)^2 + \dots + (\sigma_k y_k)^2 $。 ##### **第四步:最小化 $ \| \Sigma Y \|^2 $** 我们要最小化上式,且 $ Y $ 是单位向量($ y_1^2 + y_2^2 + \dots + y_n^2 = 1 $)。 因为奇异值 $ \sigma_1 \geq \sigma_2 \geq \dots \geq \sigma_k \geq 0 $,所以: - 要让平方和最小,应该让 **大奇异值对应的 $ y_i $ 尽可能小,小奇异值对应的 $ y_i $ 尽可能大**。 最小的情况是:让 $ y_1 = y_2 = \dots = y_{k-1} = 0 $,$ y_k = 1 $(如果 $ n = k $),此时: $$ \| \Sigma Y \|^2 = \sigma_k^2 $$ (如果 $ n > k $,则后面的 $ y_{k+1}, \dots, y_n $ 可以取0,因为 $ \Sigma $ 对应位置是0,不影响结果)。 ##### **第五步:还原 $ X $** 因为 $ Y = [0, 0, \dots, 1]^T $(最后一个元素为1,其余为0),而 $ X = V Y $,所以 $ X $ 就是 $ V $ 的 **最后一列**(因为 $ V $ 的列向量是 $ V^T $ 的行向量,$ V Y $ 就是取 $ V $ 的第 $ k $ 列)。 而 $ V $ 的最后一列,恰好是 **最小奇异值 $ \sigma_k $ 对应的右奇异向量**(因为 $ V $ 的列向量称为“右奇异向量”,按奇异值从大到小排列)。 #### **五、结合三角化:具体例子** 在三角化中,我们有两个2D对应点 $ (x, x_0) $,每个点提供2个方程,所以 $ A $ 是4×4矩阵($ m=4, n=4 $),$ X $ 是4维向量($ [X, Y, Z, 1]^T $)。 - 对 $ A $ 做SVD分解:$ A = U \Sigma V^T $,奇异值 $ \sigma_1 \geq \sigma_2 \geq \sigma_3 \geq \sigma_4 \geq 0 $; - 最小奇异值是 $ \sigma_4 $,对应的右奇异向量是 $ V $ 的第4列,即 $ X = V_{:,4} $($ V $ 的第4列); - 最后,将 $ X $ 归一化(因为是齐次坐标,除以最后一维),得到非齐次3D坐标 $ [X/Y_4, Y/Y_4, Z/Y_4]^T $(假设 $ X = [X, Y, Z, Y_4]^T $)。 #### **六、总结:为什么SVD能解决三角化的方程组?** 1. 三角化的核心是解 $ A X = 0 $,但噪声导致无精确解,需找“最佳拟合”; 2. “最佳拟合”即最小化 $ \| A X \|^2 $($ X $ 为单位向量); 3. SVD分解将 $ A $ 拆为 $ U \Sigma V^T $,通过变量替换发现最小化 $ \| A X \|^2 $ 等价于取最小奇异值对应的右奇异向量; 4. 这个向量就是3D点 $ X $ 的齐次坐标,归一化后得到最终结果。 **小测试:用一个简单例子验证** 假设 $ A = \begin{bmatrix} 1 & 2 \\ 3 & 6 \end{bmatrix} $(明显列向量线性相关,$ A X = 0 $ 有非零解)。 - SVD分解 $ A $:计算得 $ \sigma_1 = \sqrt{50} \approx 7.07 $,$ \sigma_2 = 0 $(最小奇异值为0); - $ V $ 的第2列(对应 $ \sigma_2 $)是 $ [2, -1]^T $(单位化后); - 验证:$ A X = \begin{bmatrix} 1 & 2 \\ 3 & 6 \end{bmatrix} \begin{bmatrix} 2 \\ -1 \end{bmatrix} = \begin{bmatrix} 0 \\ 0 \end{bmatrix} $,确实满足 $ A X = 0 $! 现在是不是清晰多了?SVD本质是通过分解矩阵,找到“最接近零解”的方向,而三角化正好需要这个方向作为3D点的坐标~ 你还有哪里觉得困惑吗? 😊 Loading... ## SVD 首先给出一些定义, - 正交矩阵 (orthogonal matrix) 满足: $O^{T} = O^{-1}$ - 正定矩阵:$\forall \vec{z} \neq \vec{0}, s.t. \vec{z}^{T}A\vec{z} > 0$ - 性质:$\det{A} > 0 $ eigenvalue > 0 - 半正定矩阵:$\det \geq 0$ - 共轭转置 (conjugate transpose) $M^{H}$ - 实数矩阵的共轭转置 = 转置 - 复数矩阵的共轭转置 = 转置 + 元素(复数)的共轭 - 酉矩阵 (unitary matrix) 特殊方阵满足 $UU^{H} = U^{H}U = I_{n}$ 设 $M \in \R^{m \times n}$ 的 SVD 为 $M = U \Sigma V^{H}$ 则: - $MM^{H} = U\Sigma V^{H}V\Sigma^{H} U^H = U (\Sigma \Sigma^{H}) U^{H}$ - $M^{H}M = V \Sigma U^{H}U\Sigma^{H} V^H = V(\Sigma^{H} \Sigma)V$ ## Triagulation ### Camera Projection Matrix 你的思考很敏锐!不过这里的 $ P $ **不是内参矩阵**,而是包含了相机内参和外参的 **“相机投影矩阵”**(Camera Projection Matrix)。我们来详细区分一下这几个概念,避免混淆~ #### **1. 内参矩阵 $ K $(Intrinsic Matrix)** 内参只和相机自身特性有关,描述相机如何将3D点(在相机坐标系下)投影到2D图像平面。它的形式是3×3矩阵: $$ K = \begin{bmatrix} f_x & s & c_x \\ 0 & f_y & c_y \\ 0 & 0 & 1 \end{bmatrix} $$ - $ f_x, f_y $:x/y轴方向的焦距(像素单位); - $ c_x, c_y $:图像主点(光轴与图像平面交点,通常是图像中心); - $ s $:像素偏斜系数(通常为0,理想相机忽略)。 #### **2. 外参矩阵(Extrinsic Matrix)** 外参描述相机在 **世界坐标系** 中的姿态(位置和朝向),由旋转矩阵 $ R $(3×3)和平移向量 $ t $(3×1)组成,合并为3×4矩阵: $$ [R | t] $$ 作用:将世界坐标系下的3D点 $ X_{\text{world}} $ 转换到相机坐标系下的3D点 $ X_{\text{camera}} $: $$ X_{\text{camera}} = R X_{\text{world}} + t $$ #### **3. 相机投影矩阵 $ P $** 三角化中提到的 $ P $,是内参和外参的“组合”,即: $$ P = K [R | t] $$ 它直接实现“世界坐标系3D点 $ X $”到“图像2D点 $ x $”的投影: $$ x = P X $$ (这里 $ X $ 是世界坐标系下的齐次坐标 $ [X, Y, Z, 1]^T $,$ x $ 是图像齐次坐标 $ [u, v, 1]^T $)。 #### **举个例子帮助理解** 假设相机放在世界坐标系原点(外参 $ R=I, t=0 $),内参 $ K = \begin{bmatrix} f & 0 & c_x \\ 0 & f & c_y \\ 0 & 0 & 1 \end{bmatrix} $,则相机矩阵 $ P = K [I | 0] = K $(此时 $ P $ 才等于内参矩阵)。但通常相机不在原点(比如双目相机的左右相机,外参不同),此时 $ P $ 必须包含外参 $ [R|t] $。 #### **总结** - 内参 $ K $:相机“自身参数”,与拍摄场景无关; - 外参 $ [R|t] $:相机“位置姿态”,与场景有关; - 相机矩阵 $ P $:$ K \times [R|t] $,直接完成3D→2D投影,是三角化中“已知”的输入(因为三角化需要知道两个相机的投影关系)。 ### Triagulation #### **一、齐次方程组 $ A X = 0 $ 有什么特殊之处?** 在三角化中,我们通过两个2D对应点得到了一个线性方程组: $$ A X = 0 $$ 其中 $ A $ 是一个矩阵(比如两个图像对应点会得到4×4的 $ A $),$ X $ 是待求的3D点齐次坐标($ X = [X, Y, Z, 1]^T $,注意齐次坐标的最后一维是1,解出来后需要归一化)。 **为什么不能用普通方法(比如高斯消元)求解?** - **齐次方程组的“零解陷阱”**:如果直接解 $ A X = 0 $,$ X = [0, 0, 0, 0]^T $ 一定是解(零解),但这显然不是我们要的3D点(3D点的坐标不可能全是0)。我们需要的是 **非零解**。 - **噪声导致“无解”**:实际中,由于图像匹配有噪声,两条射线不会严格相交,所以 $ A X = 0 $ 其实 **没有精确解**(即不存在非零 $ X $ 让 $ A X $ 严格等于0)。我们需要找一个 $ X $,让 $ A X $ “尽可能接近0”(最小二乘意义下的最佳拟合)。 #### **二、核心目标:最小化 $ \| A X \|^2 $(让 $ A X $ 尽可能接近0)** 为了排除零解,我们给 $ X $ 加一个约束:$ \| X \|^2 = 1 $(即 $ X $ 是单位向量,因为齐次坐标可以缩放,解的方向比大小重要)。所以问题转化为: $$ \text{找 } X \text{ 使得 } \| A X \|^2 \text{ 最小,且 } \| X \|^2 = 1 $$ #### **三、SVD分解:解决这个问题的“万能工具”** 要理解如何求解,我们需要先认识 **奇异值分解(SVD)**。你可以把SVD想象成一种“矩阵的显微镜”:任何矩阵都能被分解成3个简单矩阵的乘积,从而看清它的“结构”。 ##### **1. SVD分解的定义** 对任意 $ m \times n $ 矩阵 $ A $,SVD分解为: $$ A = U \Sigma V^T $$ 其中: - $ U $:$ m \times m $ **正交矩阵**(列向量相互垂直,且都是单位向量,$ U^T U = I $); - $ V $:$ n \times n $ **正交矩阵**(同上,$ V^T V = I $); - $ \Sigma $:$ m \times n $ **对角矩阵**(只有对角线有非零值,其余全为0),对角线元素称为 **奇异值**,记为 $ \sigma_1 \geq \sigma_2 \geq \dots \geq \sigma_k \geq 0 $($ k = \min(m, n) $)。 ##### **2. 用“图像处理”比喻理解SVD** 假设 $ A $ 是一张彩色图像(矩阵): - $ U $ 和 $ V^T $ 相当于“基向量”(比如图像的“特征方向”); - $ \Sigma $ 中的奇异值 $ \sigma_i $ 相当于“权重”:奇异值越大,对应方向的“信息量”越多(比如图像的主要轮廓);奇异值越小,信息量越少(比如噪声)。 ##### **3. SVD的关键性质(我们需要用到的)** - **正交矩阵不改变向量的模长**:对任意向量 $ x $,$ \| U x \| = \| x \| $,$ \| V x \| = \| x \| $(因为正交矩阵就像“旋转”或“镜像”,不拉伸向量)。 - $ A X = U \Sigma V^T X $:用SVD表示 $ A X $,后续会用这个展开式计算 $ \| A X \|^2 $。 #### **四、推导:为什么最小奇异值对应的右奇异向量是解?** 我们的目标是最小化 $ \| A X \|^2 $,且 $ \| X \| = 1 $。利用SVD分解 $ A = U \Sigma V^T $,代入得: $$ \| A X \|^2 = \| U \Sigma V^T X \|^2 $$ ##### **第一步:简化模长计算** 因为 $ U $ 是正交矩阵,根据性质,$ \| U \Sigma V^T X \| = \| \Sigma V^T X \| $,所以: $$ \| A X \|^2 = \| \Sigma V^T X \|^2 $$ ##### **第二步:设 $ Y = V^T X $,转换变量** 因为 $ V $ 是正交矩阵,$ X = V Y $(两边左乘 $ V $,$ V V^T X = V Y \Rightarrow X = V Y $)。又因为 $ \| X \| = 1 $,且 $ V $ 正交,所以 $ \| X \| = \| V Y \| = \| Y \| = 1 $($ Y $ 也是单位向量)。 ##### **第三步:展开 $ \| \Sigma Y \|^2 $** $ \Sigma $ 是对角矩阵,假设 $ \Sigma = \begin{bmatrix} \sigma_1 & 0 & \dots & 0 \\ 0 & \sigma_2 & \dots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \dots & \sigma_k \end{bmatrix} $($ k = \min(m, n) $),$ Y = [y_1, y_2, \dots, y_n]^T $(单位向量)。则: $$ \Sigma Y = \begin{bmatrix} \sigma_1 y_1 \\ \sigma_2 y_2 \\ \vdots \\ \sigma_k y_k \\ 0 \\ \vdots \\ 0 \end{bmatrix} $$ 所以 $ \| \Sigma Y \|^2 = (\sigma_1 y_1)^2 + (\sigma_2 y_2)^2 + \dots + (\sigma_k y_k)^2 $。 ##### **第四步:最小化 $ \| \Sigma Y \|^2 $** 我们要最小化上式,且 $ Y $ 是单位向量($ y_1^2 + y_2^2 + \dots + y_n^2 = 1 $)。 因为奇异值 $ \sigma_1 \geq \sigma_2 \geq \dots \geq \sigma_k \geq 0 $,所以: - 要让平方和最小,应该让 **大奇异值对应的 $ y_i $ 尽可能小,小奇异值对应的 $ y_i $ 尽可能大**。 最小的情况是:让 $ y_1 = y_2 = \dots = y_{k-1} = 0 $,$ y_k = 1 $(如果 $ n = k $),此时: $$ \| \Sigma Y \|^2 = \sigma_k^2 $$ (如果 $ n > k $,则后面的 $ y_{k+1}, \dots, y_n $ 可以取0,因为 $ \Sigma $ 对应位置是0,不影响结果)。 ##### **第五步:还原 $ X $** 因为 $ Y = [0, 0, \dots, 1]^T $(最后一个元素为1,其余为0),而 $ X = V Y $,所以 $ X $ 就是 $ V $ 的 **最后一列**(因为 $ V $ 的列向量是 $ V^T $ 的行向量,$ V Y $ 就是取 $ V $ 的第 $ k $ 列)。 而 $ V $ 的最后一列,恰好是 **最小奇异值 $ \sigma_k $ 对应的右奇异向量**(因为 $ V $ 的列向量称为“右奇异向量”,按奇异值从大到小排列)。 #### **五、结合三角化:具体例子** 在三角化中,我们有两个2D对应点 $ (x, x_0) $,每个点提供2个方程,所以 $ A $ 是4×4矩阵($ m=4, n=4 $),$ X $ 是4维向量($ [X, Y, Z, 1]^T $)。 - 对 $ A $ 做SVD分解:$ A = U \Sigma V^T $,奇异值 $ \sigma_1 \geq \sigma_2 \geq \sigma_3 \geq \sigma_4 \geq 0 $; - 最小奇异值是 $ \sigma_4 $,对应的右奇异向量是 $ V $ 的第4列,即 $ X = V_{:,4} $($ V $ 的第4列); - 最后,将 $ X $ 归一化(因为是齐次坐标,除以最后一维),得到非齐次3D坐标 $ [X/Y_4, Y/Y_4, Z/Y_4]^T $(假设 $ X = [X, Y, Z, Y_4]^T $)。 #### **六、总结:为什么SVD能解决三角化的方程组?** 1. 三角化的核心是解 $ A X = 0 $,但噪声导致无精确解,需找“最佳拟合”; 2. “最佳拟合”即最小化 $ \| A X \|^2 $($ X $ 为单位向量); 3. SVD分解将 $ A $ 拆为 $ U \Sigma V^T $,通过变量替换发现最小化 $ \| A X \|^2 $ 等价于取最小奇异值对应的右奇异向量; 4. 这个向量就是3D点 $ X $ 的齐次坐标,归一化后得到最终结果。 **小测试:用一个简单例子验证** 假设 $ A = \begin{bmatrix} 1 & 2 \\ 3 & 6 \end{bmatrix} $(明显列向量线性相关,$ A X = 0 $ 有非零解)。 - SVD分解 $ A $:计算得 $ \sigma_1 = \sqrt{50} \approx 7.07 $,$ \sigma_2 = 0 $(最小奇异值为0); - $ V $ 的第2列(对应 $ \sigma_2 $)是 $ [2, -1]^T $(单位化后); - 验证:$ A X = \begin{bmatrix} 1 & 2 \\ 3 & 6 \end{bmatrix} \begin{bmatrix} 2 \\ -1 \end{bmatrix} = \begin{bmatrix} 0 \\ 0 \end{bmatrix} $,确实满足 $ A X = 0 $! 现在是不是清晰多了?SVD本质是通过分解矩阵,找到“最接近零解”的方向,而三角化正好需要这个方向作为3D点的坐标~ 你还有哪里觉得困惑吗? 😊 最后修改:2025 年 06 月 20 日 © 允许规范转载 打赏 赞赏作者 支付宝微信 赞 如果觉得我的文章对你有用,请随意赞赏