29 w[n]=*p++;
if(isfinite(w[n])) n++;
30 w[n]=*p++;
if(isfinite(w[n])) n++;
31 w[n]=*p;
if(isfinite(w[n])) n++;
34 w[n]=*p++;
if(isfinite(w[n])) n++;
35 w[n]=*p++;
if(isfinite(w[n])) n++;
36 w[n]=*p;
if(isfinite(w[n])) n++;
39 w[n]=*p++;
if(isfinite(w[n])) n++;
40 w[n]=*p++;
if(isfinite(w[n])) n++;
41 w[n]=*p;
if(isfinite(w[n])) n++;
63 p=inp-2*dim-1; w[0]=*p++; w[1]=*p++; w[2]=*p;
65 p=inp-dim-2; w[3]=*p++; w[4]=*p++; w[5]=*p++; w[6]=*p++; w[7]=*p;
67 p=inp-2; w[8]=*p++; w[9]=*p++; w[10]=*p++; w[11]=*p++; w[12]=*p;
69 p=inp+dim-2; w[13]=*p++; w[14]=*p++; w[15]=*p++; w[16]=*p++; w[17]=*p;
71 p=inp+2*dim-1; w[18]=*p++; w[19]=*p++; w[20]=*p;
94 float *iptr, *mptr, med, f, mmax=0.0;
95 float one_minus_beta=1.0-beta;
98 for(i=0; i<dim*dim; i++) med_coef[i]=0.0;
103 for(j=1; j<dim-1; j++) {
104 for(i=1; i<dim-1; i++) {
112 f=med/(beta*(*iptr) + one_minus_beta*med);
113 if(f>1.0E-08) *mptr=f;
else *mptr=0.0;
116 if(*mptr>mmax) mmax=*mptr;
121 if(maxm!=NULL) *maxm=mmax;
128 mptr=med_coef+2*dim+2;
129 for(j=2; j<dim-2; j++) {
130 for(i=2; i<dim-2; i++) {
134 med=
med21(iptr, dim);
138 f=med/(beta*(*iptr) + one_minus_beta*med);
139 if(f>1.0E-08) *mptr=f;
else *mptr=0.0;
142 if(*mptr>mmax) mmax=*mptr;
147 if(maxm!=NULL) *maxm=mmax;
float fmedian(float *data, long long int n)
Header file for libtpcrec.
float med21(float *inp, int dim)
float med9(float *inp, int dim)
void do_prior(float *img, float beta, float *med_coef, int dim, float small, int maskdim, float *maxm)