Signed-off-by: Yang Jianchao <yangjianchao999@126.com>
This commit is contained in:
@@ -0,0 +1,65 @@
|
||||
#ifndef TRACK_ASSO_H
|
||||
#define TRACK_ASSO_H
|
||||
|
||||
|
||||
#include "data_process_class_dll.h"
|
||||
#include "parameters.h"
|
||||
#include "struct.h"
|
||||
#include <QVector>
|
||||
|
||||
using namespace std;
|
||||
|
||||
|
||||
|
||||
/******************************* 航迹关联类 **************************************************/
|
||||
class Track_Asso
|
||||
{
|
||||
public:
|
||||
int track_asso_process(QVector<PointRecv> *point_recv_1, //点迹文件
|
||||
QVector<PointRecv> *point_recv_2,
|
||||
QVector <Trust_Track> *trust_track, //航迹文件
|
||||
struct Track Trust_Track_Output[MAX_TRACK_NUM][10], //更新航迹信息
|
||||
int *Trust_track_num_Output, //更新航迹数
|
||||
struct RadarPara Work_Parameter //工作参数
|
||||
);
|
||||
|
||||
|
||||
Track_Asso();
|
||||
private:
|
||||
|
||||
//要处理的点迹
|
||||
QVector<PointRecv> point_process;
|
||||
|
||||
|
||||
//IMM
|
||||
void model_interaction(QVector <Trust_Track> *trust_track); //模型交互
|
||||
|
||||
|
||||
void model_filter(QVector <Trust_Track> *trust_track, //滤波
|
||||
struct RadarPara Work_Parameter
|
||||
);
|
||||
|
||||
void model_output(QVector <Trust_Track> *trust_track ); //模型输出
|
||||
|
||||
void IMM_d_cal(float v_track,
|
||||
float X1[6], float P1[6][6],
|
||||
float X2[6], float P2[6][6],
|
||||
float X3[6], float P3[6][6],
|
||||
float Z[3], float prt,float freq_ind,
|
||||
float delta_T,
|
||||
float *d1,float *d2,float *d3,
|
||||
struct RadarPara Work_Parameter);
|
||||
|
||||
void IMM_F_Q_gen(float v_track, float delta_T,float F[6][6], float Q1[6][6], float Q2[6][6], float Q3[6][6],struct RadarPara Work_Parameter);
|
||||
|
||||
float Pt[3][3]; //模型转移概率
|
||||
|
||||
|
||||
|
||||
//高度维更新
|
||||
void track_hight_update(int updata_track_index, //更新的航迹号
|
||||
int asso_point_index, //点迹号
|
||||
QVector <Trust_Track> *trust_track //航迹
|
||||
);
|
||||
};
|
||||
#endif // TRACK_ASSO_H
|
||||
Reference in New Issue
Block a user