更新:1、修复kalman.cpp中部分参数命名冲突的问题;

2、TWS点迹关联时增加点航距离门限,限制部分突然关联到很远的点迹的问题。

Signed-off-by: waiwaylee <waiwaylee@foxmail.com>
This commit is contained in:
2026-06-18 09:16:04 +08:00
parent 167fa793e9
commit 958ff6b11b
38 changed files with 8774 additions and 1775 deletions
+53 -28
View File
@@ -25,6 +25,10 @@ struct PointRecv
int Freq_index; //频点
int track_mode; //TAS 1 TWS0
int point_section_asso; //点迹区
int pitch_num; // 俯仰波位号
float speed_dim[129]; // 目标的十字星数据,目标点速度维129个点
float range_dim[8]; // 目标的十字星数据,目标点距离维8个点
};
@@ -33,8 +37,8 @@ struct Trust_Track
{
int Track_Index; //航迹号
float Amplitude; //幅度
float Height; //高度
double Amplitude; //幅度
double Height; //高度
int T_track; //航迹时间
@@ -56,29 +60,33 @@ struct Trust_Track
int Track_section_idx; //航迹区号
QVector <float> Hight_smooth; //高度平滑
QVector <double> Hight_smooth; //高度平滑
float range_point; //关联上的点信息(距离、方位、俯仰)
float azi_point;
float elev_point;
float vr_point;
float prf_point;
double range_point; //关联上的点信息(距离、方位、俯仰)
double azi_point;
double elev_point;
double vr_point;
double prf_point;
int point_type; //TWS TAS
float snr_point; //信噪比
double snr_point; //信噪比
float RCS;
double RCS;
float X[6]; //IMM
float P[6][6];
int pitch_num; // 俯仰波位号
float speed_dim[129]; // 目标的十字星数据,目标点速度维129个点
float range_dim[8]; // 目标的十字星数据,目标点距离维8个点
float X1[6];
float X2[6];
float X3[6];
float P1[6][6];
float P2[6][6];
float P3[6][6];
float u[3];
double X[6]; //IMM
double P[6][6];
double X1[6];
double X2[6];
double X3[6];
double P1[6][6];
double P2[6][6];
double P3[6][6];
double u[3];
};
@@ -88,23 +96,29 @@ struct Trust_Track
struct Temp_track
{
float X[4]; //状态
float P[4][4]; //协方差
double X[4]; //状态
double P[4][4]; //协方差
float r; //距离
float azi; //方位
float vr; //径向速度
float height; //高度
float snr; //信噪比
float RCS; //RCS
float Amp; //幅度
double r; //距离
double azi; //方位
double vr; //径向速度
double height; //高度
double snr; //信噪比
double RCS; //RCS
double Amp; //幅度
int T; //时间戳
double d; //关联上的点的d
int buff_round; //已缓存圈数
int Temp_track_section_idx; //临时航迹区号 与点迹区的划分相同
int asso_flag; //关联标志 已关联:1 未关联:0
int pitch_num; // 俯仰波位号
float speed_dim[129]; // 目标的十字星数据,目标点速度维129个点
float range_dim[8]; // 目标的十字星数据,目标点距离维8个点
};
@@ -121,6 +135,17 @@ struct Tracking_Target
};
//引导跟踪目标结构体
struct Direct_Tracking_Target
{
int ID;
double Azi;
double Elev;
double Range;
int empty_flag; //是否为空标志位 1非空 0空
// int track_init_flag; //是否已经建航 1是 0否
};