1d_demo.c
来自「TMS320VC55XX 图像 处理程序」· C语言 代码 · 共 69 行
C
69 行
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <imagelib.h>
#include<wavelet.h>
#define LENGTH 128
short signal[LENGTH], temp_wksp[LENGTH], backup[LENGTH];
short noise[LENGTH];
void main( )
{
int i, freq1, freq2, rate;
// Initialization
//==================================================
freq1 = 2;
freq2 = 31;
rate = 64;
for( i = 0; i < (LENGTH>>1); i++ )
signal[i] = 255 * sin(2.0*3.1415*freq1*i/rate);
for( i = (LENGTH>>1); i < LENGTH; i++ )
signal[i] = 255 *sin(2.0*3.1415*freq1*(i+1)/rate);
for( i = 0; i < LENGTH; i++ )
backup[i] = signal[i];
for( i = 0; i < LENGTH; i++ )
noise[i] = 31 * sin(2.0*3.1415*freq2*i/rate);
//--------------------------------------------------
// Using Wavelet to find a discontinuity
//==================================================
IMG_wave_decom_one_dim( signal, temp_wksp, db4, LENGTH, 1 );
//--------------------------------------------------
// Using Wavelet for Denosing
//==================================================
for( i = 0; i < LENGTH; i++ )
signal[i] = backup[i] + noise[i];
IMG_wave_decom_one_dim( signal, temp_wksp, db4, LENGTH, 1);
for( i = (LENGTH>>1); i < LENGTH; i++ )
{
if(signal[i] > 3 ) signal[i] = 3;
if(signal[i] < -3 ) signal[i] = -3;
}
IMG_wave_recon_one_dim( signal, temp_wksp, db4, LENGTH, 1 );
//--------------------------------------------------
// Perfect Reconstruction of Pyramid, Level 3
//==================================================
for( i = 0; i < LENGTH; i++ )
signal[i] = backup[i];
IMG_wave_decom_one_dim( signal, temp_wksp, db4, LENGTH, 1 );
IMG_wave_recon_one_dim( signal, temp_wksp, db4, LENGTH, 1 );
for( i = 0; i < LENGTH; i++ )
noise[i] = signal[i] - backup[i];
//--------------------------------------------------
// Perfect Reconstruction of Wavelet-Packet, Level 3
//==================================================
for( i = 0; i < LENGTH; i++ )
signal[i] = backup[i];
IMG_wavep_decom_one_dim( signal, temp_wksp, db4, LENGTH, 3 );
IMG_wavep_recon_one_dim( signal, temp_wksp, db4, LENGTH, 3 );
for( i = 0; i < LENGTH; i++ )
noise[i] = signal[i] - backup[i];
//--------------------------------------------------
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?