A = imread('tree.jpg'); size(A) imshow(A, 0) [U, S, V] = svd(A); imshow(U*S*V', [0, 256]) imshow(S, [0,256]) function T = truncar(M, k) T = M; s = size(T); n = min(s(1), s(2)); for i = k+1:n T(i,i) = 0; end end T = truncar(S, 1); imshow(U*T*V', [0, 256]); T = truncar(S, 5); imshow(U*T*V', [0, 256]); T = truncar(S, 20); imshow(U*T*V', [0, 256]); T = truncar(S, 50); imshow(U*T*V', [0, 256]);