function [DWT] = DWT_decomposition (slika, n_razl)
% DWT_decomposition
% Ulazi: slika - originalna slika umanjena za 128
%        n_razl - broj razina razlaganja
% Izlazi: DWT - matrica dekompozicije
% Lifting shema, Haarov wavelet, radi s mnozenjem s 2,
% L=nep+parni, H=nep-parni


[sizey_slika sizex_slika]= size(slika);
DWT=zeros(sizey_slika,sizex_slika);

for i=1:n_razl
    [sizey sizex]=size(slika);
    slika_par=slika(1:2:sizey-1,1:1:sizex);
    slika_nep=slika(2:2:sizey, 1:1:sizex);

    slika_H=slika_nep-slika_par;
    slika_L=2*slika_par+slika_H; %

    %po recima decimiramo svaku od gornjih
    [sizey sizex]=size(slika_L);
    slika_L_par=slika_L(1:1:sizey,1:2:sizex-1);
    slika_L_nep=slika_L(1:1:sizey, 2:2:sizex);

    slika_LH=slika_L_nep-slika_L_par;
    slika_LL=slika_LH+2*slika_L_par;

    slika_H_par=slika_H(1:1:sizey,1:2:sizex-1);
    slika_H_nep=slika_H(1:1:sizey, 2:2:sizex);

    slika_HH=slika_H_nep-slika_H_par;
    slika_HL=slika_HH+2*slika_H_par;

    DWT_pom=[slika_LL slika_LH; slika_HL slika_HH];

    if i==1
        DWT=DWT_pom;
    else
        DWT(1:sizey_slika/(2^(i-1)), 1:sizex_slika/(2^(i-1)))=DWT_pom;
    end

    slika=slika_LL;
    i=i+1;
    %figure,imshow(DWT(:,:), []) to u glavnoj fji
end

