s = svd(A); tol = max(size(A))*eps(max(s)); r = sum(s > tol)
K-SVD 源代码
K-SVD是一种经典的字典训练算法,依据误差最小原则,对误差项进行SVD分解,选择使误差最小的分解项作为更新的字典原子和对应的原子系数,经过不断的迭代从而得到优化的解。
function [vbar]=ComputeV(Cstar) % eig(Cstar{1}); % rank(Cstar{1}) % eig(Cstar{2}); % rank(Cstar{2}); % eig(Cstar{1},Cstar{2})…
function [vbar]=ComputeV(Cstar) % eig(Cstar{1}); % rank(Cstar{1}) % eig(Cstar{2}); % rank(Cstar{2}); % eig(Cstar{1},Cstar{2})…
s = svd(A); tol = max(size(A))*eps(max(s)); r = sum(s > tol)
function P = fittingfn_line2d(X) N = size(X, 2); A = [X; ones(1, N)]'; [U S V] = svd(A); P = V(:, 3); end
s = svd(A); tol = max(size(A))*eps(max(s)); r = sum(s > tol)
A = [1,2,3; 4 5 6; 7 8 0]; [L, A1, M]=svd(A) B = A'*A; C=sqrt(eig(B)); [cond(A), A1(1)/A1(end) C(end)/C(1)]
s = svd(A); tol = max(size(A))*eps(max(s)); r = sum(s > tol)
s = svd(A); tol = max(size(A))*eps(max(s)); r = sum(s > tol)
l纍&膕纊.]@妧k.[]