⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 wt.h

📁 小波变换程序
💻 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 + -