You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用numpy.linalg做SVD图像重构时出现异常值矩阵的问题

灰度图像SVD重构异常:结果值不符且每次运行输出不同

我用numpy.linalg对灰度图像(以大型矩阵形式表示)执行奇异值分解(SVD),但重构图像时得到的矩阵和源图像像素值完全不符,出现了大量异常数值。更奇怪的是,每次运行相同代码,输出的结果矩阵都不一样。尝试谷歌搜索但没找到原因,代码逻辑很简单,实在排查不出问题。

代码如下:

import numpy as np
import matplotlib.pyplot as plt
from numpy.linalg import svd
from skimage.io import imread

img = imread(r'chain_small.JPG')
img = img.mean(axis=2)

U, S, VT = svd(img, full_matrices = False)

print(U @ np.diag(S) @ VT)

连续三次运行的输出结果:

第一次输出:

[[ 159014.89394671   39487.99098681   -9874.57609635 ...  -71737.85515213
  -128874.27699761   -3386.92849387]
 [ 203461.80899605   75002.13673717  126260.20741683 ...  158491.47548145
   157982.81363556  137954.09746291]
 [ 293467.76004879  -90981.28699457  -28559.21588133 ...  -72627.56336045
   -57172.40331332  -25768.69870728]
 ...
 [  29835.15592901   20815.81893506   -5236.87874038 ...  -19871.19469429
    29210.33682942   15554.95475245]
 [-104265.48680219  -17915.06944458    5938.52625767 ...   15497.27973241
    -8433.1313703    -9386.58231012]
 [ -70906.08392422  -15034.78054189    5742.7956658  ...   -1110.09557333
   -13252.87395276  -19236.4320781 ]]

第二次输出:

[[-1.40339175e+05  1.84856533e+03 -1.70047632e+04 ...  4.07286857e+04
   8.27626972e+04  8.77105170e+02]
 [ 9.23440572e+05  1.61186883e+03  7.16404929e+04 ... -1.41672490e+05
   3.35168593e+05 -4.94743352e+03]
 [ 2.29648889e+05  9.32584084e+04 -3.03421382e+04 ...  3.09541683e+05
   2.39098724e+04 -7.89459012e+03]
 ...
 [ 5.31486822e+04  2.55513683e+04 -5.36843672e+03 ... -4.51257913e+03
   1.40963817e+04  1.04165914e+04]
 [-5.33436869e+04 -1.47708525e+04  1.70761244e+04 ... -1.82554352e+04
  -4.00233256e+04 -5.65965532e+04]
 [-3.01219658e+04 -1.66921447e+04  1.73071052e+04 ... -3.37167442e+04
  -4.62436316e+04 -6.80044548e+04]]

第三次输出:

[[ 170683.38688212   28358.22126302  -23356.74822456 ...   88247.14000447
   -25268.54838009  -59126.11297314]
 [ 548066.38756864  -65846.99861054   64624.47642912 ...   31491.42901022
   -24204.73172982   19110.93935304]
 [ 667140.05662532   39098.12090819   37824.13446388 ... -119091.87577846
   249393.0348422    54838.74200844]
 ...
 [  11244.29360774    5379.79454404   -8576.07360678 ...    4032.56408047
    28892.94580266    7560.6402372 ]
 [ -80855.17281102  -10303.81468742   14164.90681016 ...   17284.69756787
   -10799.40786149  -33744.18482325]
 [ -48865.0672561   -10991.37326434   13474.09716008 ...    1738.80247443
   -17218.39061216  -43756.29097246]]

内容的提问来源于stack exchange,提问作者Александр Асратян

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 06:57:01