www.pudn.com > Kalman--C++.rar > Singer.h


// Singer.h: interface for the CSinger class. 
// 
////////////////////////////////////////////////////////////////////// 
 
#if !defined(AFX_SINGER_H__7E65D7FE_69F1_40BF_95C6_890EC2C337AE__INCLUDED_) 
#define AFX_SINGER_H__7E65D7FE_69F1_40BF_95C6_890EC2C337AE__INCLUDED_ 
 
#if _MSC_VER > 1000 
#pragma once 
#endif // _MSC_VER > 1000 
 
#define PIE 3.1415926536 
#define MAX_SPEED 3000 
 
 
 
class CSinger   
{ 
 
public: 
 
 
	double T;//采样间隔 
	double cov;//测量噪声方差 
	double cova;//加速度方差 
	double XY_Real[350][2];//真实的方位 
	double XY_Obsv[350][2];//方位的观测值 
	double XY_Filt[350][2];//滤波后的方位值 
	double V_Real[350][2];//真实的速度 
	double A_Real[350][2];//真实的加速度 
	double ex[350],ey[350];//滤波器误差的均值 
	double dx[350],dy[350];//滤波误差的标准差 
 
 
 
	double alfa;//机动频率 
 
 
public: 
	CSinger(); 
	virtual ~CSinger(); 
	void AddNoise();//产生正态白噪声 
	void GenerateRealTrack();//产生真实的轨迹 
	void Filter();//kalman_Singer算法滤波 
	void Filter_2();//kalman_Singer算法滤波(第二种方法) 
	void Filter_LMS();//最小二乘递推估计 
	void CalError(int M,BOOL kind=true);//计算kalman滤波器误差的均值、标准差 
	void CalErrorLms(int M);//计算lms滤波器误差的均值、标准差 
	 
 
 
 
}; 
 
#endif // !defined(AFX_SINGER_H__7E65D7FE_69F1_40BF_95C6_890EC2C337AE__INCLUDED_)