/******************************************************************
* 一维小波变换函数
* 说明:一维小波变换,只变换一次
* 输入参数:input[],输入信号;output[],小波变换结果,包括尺度系数和
* 小波系数两部分;temp[],存放中间结果;h[],Daubechies小波基低通滤波器系数;
* g[],Daubechies小波基高通滤波器系数;n,输入信号长度;m,Daubechies小波基紧支集长度。
******************************************************************/
voidDWT1D_1(doubleinput[],doubleoutput0[],doubleoutput1[],doubletemp[],doubleh[],
doubleg[],intn,intm)
{
//doubletemp[LENGTH]={0};//?????????????
inti=0;
/*
//尺度系数和小波系数放在一起
Covlution(input,h,temp,n,m);
for(i=0;i《n;i+=2)
{
output[i]=temp[i];
}
Covlution(input,g,temp,n,m);
for(i=1;i《n;i+=2)
{
output[i]=temp[i];
}
*/
//尺度系数和小波系数分开
Covlution(input,h,temp,n,m);
for(i=0;i《n+m-1;i+=2)
{

本文提供了一段使用C语言实现的一维小波变换函数,该函数适用于进行一次小波变换,主要涉及到Daubechies小波基的低通滤波器h[]和高通滤波器g[]。通过级联调用实现多次变换,以分离信号的尺度系数和小波系数,从而达到信号去噪的目的。
最低0.47元/天 解锁文章

2万+

被折叠的 条评论
为什么被折叠?



