commit : denoise object added

This commit is contained in:
Rafat Hussain
2017-09-24 18:24:45 +05:30
parent a26e271971
commit f906ae8d66
7 changed files with 290 additions and 44 deletions

View File

@@ -11,11 +11,38 @@ Copyright (c) 2017, Rafat Hussain
extern "C" {
#endif
//depends on J
typedef struct denoise_set* denoise_object;
denoise_object denoise_init(int length, int J,char* wname);
struct denoise_set{
int N; //signal length
int J; // Levels of Wavelet decomposition
char wname[10]; //Wavelet name
char wmethod[10]; //Wavelet decomposition method - dwt or swt
char ext[10]; // Signal Extension - sym or per
char thresh[10]; // thresholding - soft or hard
char level[10]; // Noise Estimation level - first or all
char dmethod[20]; //Denoising Method -sureshrink or visushrink
//double params[0];
};
void visushrink(double *signal,int N,int J,char *wname,char *method,char *ext,char *thresh,char *level,double *denoised);
void sureshrink(double *signal,int N,int J,char *wname,char *method,char *ext,char *thresh,char *level,double *denoised);
void denoise(denoise_object obj, double *signal,double *denoised);
void setDenoiseMethod(denoise_object obj, char *dmethod);
void setDenoiseWTMethod(denoise_object obj, char *wmethod);
void setDenoiseWTExtension(denoise_object obj, char *extension);
void setDenoiseParameters(denoise_object obj, char *thresh,char *level);
void denoise_free(denoise_object object);
#ifdef __cplusplus
}