function X=POCS_func(Y,dft_mat,W)
beta=0.5;
lambda_bar=0.025;
lambda=5;
im_cs=abs(dft_mat'*Y*dft_mat);
mask=(Y~=0);
for iter=1:15
    im_cs = W'*(SoftThresh(W*im_cs,lambda));
    im_cs_fft=dft_mat*im_cs*dft_mat';
    im_cs_fft(mask~=0)=Y(mask~=0);
    im_cs=abs(dft_mat'*im_cs_fft*dft_mat);
    lambda=max(lambda*beta,lambda_bar);
end
X=W*im_cs;
