int M=pDoc->biHeader.biHeight;
int N=pDoc->biHeader.biWidth;
//double t1,t2;
int t0;
int tong1,tong2;
int m,n,n1,n2;
int L=255;
//BYTE X[1000][1000];
t0=L/2;
while(1)
{ tong1=tong2=0;
n1=n2=0;
for(m=0;m<M;m++)
for(n=0;n<N;n++)
if(pDoc->Data[m][n]<t0)
{ tong1+=pDoc->Data[m][n];n1++;}
else {tong2+=pDoc->Data[m][n];n2++;}
if(tong1/n1+tong2/n2==2*t0)
break;
t0=(tong1/n1+tong2/n2)/2;
}
for(m=0;m<M;m++)
for(n=0;n<N;n++)
if(pDoc->Data[m][n]<t0)
pDoc->Data[m][n]=tong1/n1;
else pDoc->Data[m][n]=tong2/n2;
Invalidate();
}
Bạn đang đọc truyện trên: Truyen2U.Pro