mirror of
https://github.com/simon987/wavelib.git
synced 2025-04-20 02:26:45 +00:00
commit : SWT and MODWT added. More tests.
This commit is contained in:
parent
22145f26fd
commit
87c0e462dc
@ -120,9 +120,16 @@ void visushrink(double *signal,int N,int J,char *wname,char *method,char *ext,ch
|
|||||||
}
|
}
|
||||||
|
|
||||||
wt = wt_init(wave,method,N,J);
|
wt = wt_init(wave,method,N,J);
|
||||||
setDWTExtension(wt,ext);
|
if(!strcmp(method,"dwt")) {
|
||||||
|
setDWTExtension(wt,ext);
|
||||||
dwt(wt,signal);
|
dwt(wt,signal);
|
||||||
|
} else if(!strcmp(method,"swt")) {
|
||||||
|
swt(wt,signal);
|
||||||
|
} else if(!strcmp(method,"modwt")) {
|
||||||
|
modwt(wt,signal);
|
||||||
|
} else {
|
||||||
|
printf("Acceptable WT methods are - dwt,swt and modwt\n");
|
||||||
|
}
|
||||||
|
|
||||||
//Set sigma
|
//Set sigma
|
||||||
|
|
||||||
@ -162,7 +169,13 @@ void visushrink(double *signal,int N,int J,char *wname,char *method,char *ext,ch
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
idwt(wt,denoised);
|
if(!strcmp(method,"dwt")) {
|
||||||
|
idwt(wt,denoised);
|
||||||
|
} else if(!strcmp(method,"swt")) {
|
||||||
|
iswt(wt,denoised);
|
||||||
|
} else if(!strcmp(method,"modwt")) {
|
||||||
|
imodwt(wt,denoised);
|
||||||
|
}
|
||||||
|
|
||||||
free(dout);
|
free(dout);
|
||||||
wave_free(wave);
|
wave_free(wave);
|
||||||
@ -188,9 +201,17 @@ void sureshrink(double *signal,int N,int J,char *wname,char *method,char *ext,ch
|
|||||||
}
|
}
|
||||||
|
|
||||||
wt = wt_init(wave,method,N,J);
|
wt = wt_init(wave,method,N,J);
|
||||||
setDWTExtension(wt,ext);
|
|
||||||
|
|
||||||
dwt(wt,signal);
|
if(!strcmp(method,"dwt")) {
|
||||||
|
setDWTExtension(wt,ext);
|
||||||
|
dwt(wt,signal);
|
||||||
|
} else if(!strcmp(method,"swt")) {
|
||||||
|
swt(wt,signal);
|
||||||
|
} else if(!strcmp(method,"modwt")) {
|
||||||
|
modwt(wt,signal);
|
||||||
|
} else {
|
||||||
|
printf("Acceptable WT methods are - dwt,swt and modwt\n");
|
||||||
|
}
|
||||||
|
|
||||||
len = wt->length[0];
|
len = wt->length[0];
|
||||||
dlen = wt->length[J];
|
dlen = wt->length[J];
|
||||||
@ -268,7 +289,13 @@ void sureshrink(double *signal,int N,int J,char *wname,char *method,char *ext,ch
|
|||||||
len += wt->length[it+1];
|
len += wt->length[it+1];
|
||||||
}
|
}
|
||||||
|
|
||||||
idwt(wt,denoised);
|
if(!strcmp(method,"dwt")) {
|
||||||
|
idwt(wt,denoised);
|
||||||
|
} else if(!strcmp(method,"swt")) {
|
||||||
|
iswt(wt,denoised);
|
||||||
|
} else if(!strcmp(method,"modwt")) {
|
||||||
|
imodwt(wt,denoised);
|
||||||
|
}
|
||||||
|
|
||||||
free(dout);
|
free(dout);
|
||||||
free(risk);
|
free(risk);
|
||||||
|
@ -12,7 +12,7 @@ int main() {
|
|||||||
double temp[2400];
|
double temp[2400];
|
||||||
|
|
||||||
char *wname = "sym8";
|
char *wname = "sym8";
|
||||||
char *method = "dwt";
|
char *method = "swt";
|
||||||
char *ext = "sym";
|
char *ext = "sym";
|
||||||
char *thresh = "soft";
|
char *thresh = "soft";
|
||||||
|
|
||||||
@ -31,7 +31,7 @@ int main() {
|
|||||||
fclose(ifp);
|
fclose(ifp);
|
||||||
|
|
||||||
N = i;
|
N = i;
|
||||||
J = 7;
|
J = 6;
|
||||||
|
|
||||||
inp = (double*)malloc(sizeof(double)* N);
|
inp = (double*)malloc(sizeof(double)* N);
|
||||||
oup = (double*)malloc(sizeof(double)* N);
|
oup = (double*)malloc(sizeof(double)* N);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user