VL13: Singulaerwertzerlegung
close all;
clear all;
A = imread('pic.jpg');
[d1,d2,d3] = size(A);
figure;
image(A)
A = double(A);
Ar = A(:,:,1);
Ag = A(:,:,2);
Ab = A(:,:,3);
B = [Ar,Ag,Ab];
[U,S,V] = svd(B,0);
k = 100;
Bk = U(:,1:k)*S(1:k,1:k)*V(:,1:k)';
Bk = uint8(Bk);
Anew = reshape(Bk,d1,d2,d3);
figure;
image(Anew)
close all;
clear all;
A = imread('pic.jpg');
[d1,d2,d3] = size(A);
A = double(A);
k=50;
for i=1:3
[U,S,V] = svd(A(:,:,i),0);
B(:,:,i) = U(:,1:k)*S(1:k,1:k)*V(:,1:k)';
end
B = uint8(B);
figure
image(B)