www.gusucode.com > Diabetic retinopathy > enhance_composite_dc_sigma.m

    

function Y =enhance_composite_dc_sigma(C,beta,maxDC,k)


[h w d]=size(C);

 Y=C;
 X=C(:,:,1);
 U=C(:,:,2);
 V=C(:,:,3);

% compute s.d by  summing of normailised AC coefficinets.

 xdc=X(1,1)/8;
 
variance=0;
for i=1:8
    for j=1:8
        variance=variance+(X(i,j)*X(i,j))/64;
    end
end

variance=variance-xdc*xdc;
sigma=sqrt(variance);



 nxdc=xdc/maxDC;
 enxdc=nxdc*(2-beta*nxdc);

 exdc=enxdc*maxDC;
 factor=exdc/xdc;
 
 if(factor>255/(xdc+k*sigma))
   
     factor=255/(xdc+k*sigma);
 end
 
 if(factor<1)
     factor=1;
 end
 

 
 
 udc=U(1,1)/8-128;
 vdc=V(1,1)/8-128;
 eudc=factor*udc+128;
 evdc=factor*vdc+128;
 U=factor*U;
 V=factor*V;
   U(1,1)=eudc*8;
   V(1,1)=evdc*8;


 Y(:,:,1)=factor*X;
 Y(:,:,2)=U;
 Y(:,:,3)=V;

  return