working wavelet transform

Dependencies:   CMSIS_DSP_5 include mbed

Fork of Nucleo-Heart-Rate by BAP TUDelft

Revision:
6:ce7f5faea04a
Parent:
5:182ee08ee2b0
Child:
9:854f2d4eda4a
--- a/main.cpp	Wed Jun 20 09:49:33 2018 +0000
+++ b/main.cpp	Wed Jun 20 11:23:01 2018 +0000
@@ -21,7 +21,7 @@
     int N_samples = 3000;
     int wt_scale = 3;
     int fs = 160;
-    int i;
+    int i,j;
     
     double *inp = signal_in; //,*out,*diff;
 
@@ -31,11 +31,21 @@
     
     wavelet = wt_init(wave_init_obj, "modwt", N_samples, wt_scale);// Initialize the wavelet transform object
     
+    int wt_scale_start=((wavelet->outlength)/wt_scale)*1;
+    int wt_scale_end=((wavelet->outlength)/wt_scale)*2;
+    int i_wavelet[6000];
     modwt(wavelet, inp);// Perform MODW
+    
+    //Choose scales
+    for (i=0,j=wt_scale_start;j<wt_scale_end;i++,j++) {
+        i_wavelet[i]=wavelet[j];
+        
+    }
+    imodwt(i_wavelet, out);// Perform IMODWT
 
     while(1){
-        for (i = 0; i < wavelet->outlength; ++i) {
-            usb_serial.printf("%d %e \n",i, wavelet->output[i]);
+        for (i = 0; i < i_wavelet->outlength; ++i) {
+            usb_serial.printf("%d %e \n",i, i_wavelet->output[i]);
         }
         myled = !myled;
     }