observmodel.h

来自「InnovLabSimu在vc++下实现」· C头文件 代码 · 共 47 行

H
47
字号
#pragma once


//#include "BayesFilter/unsFlt.hpp"
//#include "BayesFilter/bayesFlt.hpp"
//using namespace std;
//using namespace Bayesian_filter;
//using namespace Bayesian_filter_matrix;
/********************************************************************
	created:	2008/01/03
	created:	3:1:2008   14:59
	filename: 	c:\boosttest\MyTargetTrack\MyTargetTrack\UncentedKalmanFilt\ObservModel.h
	file path:	c:\boosttest\MyTargetTrack\MyTargetTrack\UncentedKalmanFilt
	file base:	ObservModel
	file ext:	h
	author:		GaoYang
	
	purpose:	线性观测模型,简单的用转移矩阵乘状态得到预测观测量,存于自身的
	            成员变量中。输入为状态变量。
				Y=H*X,H默认为单位阵(注意行数列数可能不同)
				若需要指定转移矩阵则调用init函数
*********************************************************************/
//#include <boost/numeric/ublas/matrix.hpp>
////#include <boost/numeric/ublas/vector.hpp>
//#include <boost/numeric/ublas/storage.hpp>
//#include <boost/numeric/ublas/matrix_proxy.hpp>
#include "UKF_COMMAN_HEAD.h"
typedef boost::numeric::ublas::vector<double> OBSERVE_STYLE;

class CObservModel :virtual public BOOST_DEBUG_TOOL//: public Linear_uncorrelated_observe_model
{
public:
	CObservModel(TRANSTATE_MAT_TYPE& m_mTranslateMatrix);
	CObservModel(size_t StateSize,size_t ObservSize,TRANSTATE_MAT_TYPE& m_mTranslateMatrix);
public:
	virtual ~CObservModel(void);
	/**
	*初始化,并设置转移矩阵,输入为转移矩阵
	*/
	void InitObserve(TRANSTATE_MAT_TYPE& TranslateMatrix);
	TRANSTATE_MAT_TYPE& m_mTranslateMatrix;///<状态转移矩阵,默认为2X4的单位阵
	OBSERVE_STYLE& Update(STATE_STYLE& StateMean);
	const size_t m_nStateSize;
	OBSERVE_STYLE m_mPredictObserve;
	VARIANCE COVIARANCE_S;
};

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?