function [vll,vlh,vhl,vhh]=get_2DWavelet(v0,wll,wlh,whl,whh)
vll=v0;
vlh=v0;
vhl=v0;
vhh=v0;

[s1,s2]=size(v0);
v2=zeros(3*s1,3*s2);
x1=1:s1;x2=s1+1:2*s1;x3=2*s1+1:3*s1;xd=s1:-1:1;
y1=1:s2;y2=s2+1:2*s2;y3=2*s2+1:3*s2;yd=s2:-1:1;

v2(x1,y1)=v0(xd,yd);%
v2(x1,y2)=v0(xd,:);%
v2(x1,y3)=v0(xd,yd);%
v2(x2,y1)=v0(:,yd);%
v2(x2,y2)=v0(:,:);%
v2(x2,y3)=v0(:,yd);%
v2(x3,y1)=v0(xd,yd);%
v2(x3,y2)=v0(xd,:);%
v2(x3,y3)=v0(xd,yd);%
v1=v2(s1-2:2*s1+3,s2-2:2*s2+3);

for i=4:1:s1+3
    for j=4:1:s2+3
            vt=v1(i-3:i+3,j-3:j+3);
            vll(i-3,j-3)=sum(sum(vt.*wll));
            vlh(i-3,j-3)=sum(sum(vt.*wlh));
            vhl(i-3,j-3)=sum(sum(vt.*whl));
            vhh(i-3,j-3)=sum(sum(vt.*whh));
    end
end