📄 wt.h
字号:
// WT.h: interface for the CWT class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_WT_H__AA6185BB_6131_4F41_B79C_AAE1A43943B5__INCLUDED_)
#define AFX_WT_H__AA6185BB_6131_4F41_B79C_AAE1A43943B5__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
class CWT
{
public:
CWT();
virtual ~CWT();
public:
void WT1(CString& infile,CString& outfile,int lev,int pc,int rec);//一维小波变换
void WT2(CString& infile,CString &outfile,int lev,int pc,int rec);//二维小波变换
bool ReadGrd(CString& infile);//读取网格化数据
bool WriteGrd(CString &outfile);//写网格化数据
bool Read1D(CString& infile);//读取一维数据
bool Write1D(CString& outfile);//写一维数据
private:
void GetLimit(float **data);//获取数组的最大值和最小值
void ReleaseData();//释放内存
void DWT1(float *x,int len,int lev,float *a,float *d);//1维小波变换
void IDWT1(float *a,float *d,int len,int lev,float *x);//1维小波逆变换
void DWT2(int lev,int pc);//二维小波变换,lev:小波分解阶数;pc=0表示得到逼近,1,2,3分别表示得到水平、垂直、对角线分量细节
void IDWT2(int lev,int pc);
void DWT1(int lev,int pc);
void IDWT1(int lev,int pc);
private:
bool m_rec;//重构?
int m_pn;//点数
int m_ln;//线数
float **m_data;//原始数据信号
float m_minx;//x方向最小值
float m_maxx;//x方向最大值
float m_miny;//y方向最小值
float m_maxy;//y方向最大值
float m_minz;//信号值最小值
float m_maxz;//信号值最大值
float **m_result;//结果数据信号
static float c1[8];
static float h[4];
static float g[2];
static float k1[6];
};
#endif // !defined(AFX_WT_H__AA6185BB_6131_4F41_B79C_AAE1A43943B5__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -