工具/软件:Code Composer Studio
我正在从 PWT 传感器采样 H宁 脉冲。 我需要对采样波形进行波长变换。 我编写了一个非常基本的代码、用于循环、通过将缩放的时间移波长相乘来实现1-D 连续波长的传输。 但代码非常慢、大约需要20分钟才能找到小波变换。 我用于1-D CWT 的波长是莫莱特波长。 是否有更好的算法来实现波长变换。 如果是、则是可用的示例代码或一些引用、它们在其中解释了算法。 是否有能够执行 perfom1-D 波长变换的库?
我附加了我编写的函数。 数组 g_ui8RxBufA[]包含从 ADC 采样的波形。
void CWT (uint32_t scale) { uint32_t p、j、k、l; 对于(l = 0;l < 512;l++) { SIGNAL [l]=(float32_t) g_ui8RxBufA[l]*(3.3/4096.0); } for (p=1;p<=scale;p++) { for (j=0;<CWT_LENGTH;j++) { for (k=0;0.<CWT_LENGTH;k++) { cos_1 = cos (5*((k-j)/p)); sqrt_1 = sqrt (p); temp_p =(float32_t) p; temp =(-1*((k-j)/temp_p)*((k-j)/temp_p))/2; EXP_1 = exp (temp); temp_wavelet = exp_1_cos_1/sqrt_1; cefs[p-1][j]= cefs[p-1][j]+ SIGNAL [k]*temp_wavelet; } } }
感谢您的帮助!