From d101fe92a45b4c2caf7f41adc144897d3838873d Mon Sep 17 00:00:00 2001 From: waiwaylee Date: Thu, 13 Aug 2026 17:14:17 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=EF=BC=9A1=E3=80=81=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E8=88=AA=E8=BF=B9=E6=B8=85=E7=A9=BA=E5=8A=9F=E8=83=BD?= =?UTF-8?q?=EF=BC=8C=E8=A7=A3=E5=86=B3=E9=87=8D=E8=BF=9E=E6=97=B6=E5=A4=A7?= =?UTF-8?q?=E9=87=8F=E8=88=AA=E8=BF=B9=E4=B9=B1=E7=AA=9C=E7=9A=84=E9=97=AE?= =?UTF-8?q?=E9=A2=98=EF=BC=9B=202=E3=80=81=E4=BF=AE=E6=94=B9TAS=E6=97=B6?= =?UTF-8?q?=E8=88=AA=E8=BF=B9=E5=A4=96=E6=8E=A8=E9=80=BB=E8=BE=91=EF=BC=8C?= =?UTF-8?q?=E6=97=B6=E9=97=B4=E9=97=B4=E9=9A=94=E6=8C=89=E6=B3=A2=E6=9D=9F?= =?UTF-8?q?=E6=97=B6=E9=97=B4=E8=AE=A1=E7=AE=97=EF=BC=9B=203=E3=80=81?= =?UTF-8?q?=E5=A2=9E=E5=8A=A01km=E4=BB=A5=E5=86=85=E8=88=AA=E8=BF=B9?= =?UTF-8?q?=E8=B5=B7=E5=A7=8B=E9=99=90=E5=88=B6=EF=BC=8CSNR=E4=BD=8E?= =?UTF-8?q?=E4=BA=8E20dB=E7=9A=84=E8=88=AA=E8=BF=B9=E4=B8=8D=E8=B5=B7?= =?UTF-8?q?=E6=89=B9=EF=BC=9B=E5=87=8F=E5=B0=91=E8=BF=91=E8=B7=9D=E7=A6=BB?= =?UTF-8?q?=E8=88=AA=E8=BF=B9=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: waiwaylee --- data_process_class_dll/data_process.cpp | 8 +- .../data_process_class_dll.pro.user | 114 +++++++++++++++++- data_process_class_dll/dot_coh.cpp | 14 ++- data_process_class_dll/parameters.h | 5 +- data_process_class_dll/tas_ctrl.cpp | 2 + data_process_class_dll/track_asso_tas.cpp | 2 +- data_process_class_dll/track_init.cpp | 14 ++- 7 files changed, 144 insertions(+), 15 deletions(-) diff --git a/data_process_class_dll/data_process.cpp b/data_process_class_dll/data_process.cpp index 7291b41..42b9b19 100644 --- a/data_process_class_dll/data_process.cpp +++ b/data_process_class_dll/data_process.cpp @@ -45,8 +45,6 @@ int Data_Process::data_preprocess(struct DataRev Data_Input[150]) std::memcpy(Data_buffer_temp.range_dim, Data_Input[i].range_dim, sizeof(Data_buffer_temp.range_dim)); Data_buffer.push_back(Data_buffer_temp); - - //qDebug() << "AZI: " < - + EnvironmentId @@ -64,7 +64,7 @@ Desktop Qt 5.7.0 MSVC2013 32bit Desktop Qt 5.7.0 MSVC2013 32bit qt.57.win32_msvc2013_kit - 1 + 4 0 0 @@ -229,7 +229,115 @@ 0 true - 3 + + E:/Demo/QT/simianzhen256-v1.5.5-ms/build/X256_PS + + + true + qmake + + QtProjectManager.QMakeBuildStep + false + "DEFINES += PHASE_SCANNING" + false + false + false + + + true + Make + + Qt4ProjectManager.MakeStep + + false + + + + 2 + 构建 + + ProjectExplorer.BuildSteps.Build + + + + true + Make + + Qt4ProjectManager.MakeStep + + true + clean + + + 1 + 清理 + + ProjectExplorer.BuildSteps.Clean + + 2 + false + + Release + X256_PS + Qt4ProjectManager.Qt4BuildConfiguration + 0 + true + + + E:/Demo/QT/simianzhen256-v1.5.5-ms/build/X256_MS + + + true + qmake + + QtProjectManager.QMakeBuildStep + false + "DEFINES += MECHANICAL_SCANNING" + false + false + false + + + true + Make + + Qt4ProjectManager.MakeStep + + false + + + + 2 + 构建 + + ProjectExplorer.BuildSteps.Build + + + + true + Make + + Qt4ProjectManager.MakeStep + + true + clean + + + 1 + 清理 + + ProjectExplorer.BuildSteps.Clean + + 2 + false + + Release + X256_MS + Qt4ProjectManager.Qt4BuildConfiguration + 0 + true + + 5 0 diff --git a/data_process_class_dll/dot_coh.cpp b/data_process_class_dll/dot_coh.cpp index 902151f..72be4c5 100644 --- a/data_process_class_dll/dot_coh.cpp +++ b/data_process_class_dll/dot_coh.cpp @@ -119,11 +119,21 @@ int Dot_Coh::dot_coh_process_buff( QVector *data_input, data_tmp[data_tmp.size()-1].point_section_asso = 1; } + + for (int i=0;isize();i++) { - data_tmp.push_back((*data_input)[i]); + data_tmp.push_back((*data_input)[i]); data_tmp[data_tmp.size()-1].point_section_asso = 2; } +// //去除点迹中,1km以内,SNR小于20dB的点 +// for (int i=0;isize();i++) +// { +// if((*data_input)[i].Range > 1000 || (*data_input)[i].snr >= 20){ +// data_tmp.push_back((*data_input)[i]); +// data_tmp[data_tmp.size()-1].point_section_asso = 2; +// } +// } //1.2 把data_input、data_input_buff清空 @@ -188,8 +198,6 @@ int Dot_Coh::dot_coh_process_buff( QVector *data_input, data_tmp[i].Use_Flag=1; } - - } } } diff --git a/data_process_class_dll/parameters.h b/data_process_class_dll/parameters.h index 861ed53..123360c 100644 --- a/data_process_class_dll/parameters.h +++ b/data_process_class_dll/parameters.h @@ -28,7 +28,7 @@ #define FREQ20 16.8 //#define MECHANICAL_SCANNING -#define PHASE_SCANNING +//#define PHASE_SCANNING #ifdef MECHANICAL_SCANNING /******************************数据处理参数**************************************/ @@ -68,8 +68,6 @@ #define TAS_QUEUE_LENGTH 1 //Tas调用的cpi数 #define MAX_TAS_NUM 1 -#define T_TAS_PRED DATA_RATE_TAS - #define UNCONF_TARGET 0 #define DIRECT_TRACKING_QUEUE_LENGTH 10 @@ -116,7 +114,6 @@ #define TAS_QUEUE_LENGTH 4 //Tas调用的cpi数 #define MAX_TAS_NUM 4 -#define T_TAS_PRED 0.7 #define UNCONF_TARGET 0 diff --git a/data_process_class_dll/tas_ctrl.cpp b/data_process_class_dll/tas_ctrl.cpp index 3adb586..3757be5 100644 --- a/data_process_class_dll/tas_ctrl.cpp +++ b/data_process_class_dll/tas_ctrl.cpp @@ -305,6 +305,8 @@ void TAS_Ctrl::tas_beam_output(QVector *trust_track, //跟踪波束开关开启 Tracking_beam->open_flag=1; + + qDebug() << "TAS: range: " <Range << "azi: " <Azi <<"pit: " <Elev; } else { diff --git a/data_process_class_dll/track_asso_tas.cpp b/data_process_class_dll/track_asso_tas.cpp index 49eaf98..f971cae 100644 --- a/data_process_class_dll/track_asso_tas.cpp +++ b/data_process_class_dll/track_asso_tas.cpp @@ -502,7 +502,7 @@ void Track_Asso_Tas::model_filter( QVector *trust for(int i=0;isize();i++) if((*trust_track)[i].Track_Index == tas_track_idx) { - double delta_T = DATA_RATE_TAS; + double delta_T = (point_process[0].CPI_Time - T_track)/1000.0; double F[6][6], Q1[6][6], Q2[6][6], Q3[6][6]; IMM_F_Q_gen( v_track, delta_T, F, Q1, Q2, Q3,Work_Parameter); diff --git a/data_process_class_dll/track_init.cpp b/data_process_class_dll/track_init.cpp index 6e5c43a..16ef4e9 100644 --- a/data_process_class_dll/track_init.cpp +++ b/data_process_class_dll/track_init.cpp @@ -542,14 +542,24 @@ void Track_Init::tmp_track_to_trust_track(QVector *trust_track, int L=(*Iter).size(); double range=(*Iter)[L-1].r; double azi=(*Iter)[L-1].azi/PI*180; - if( ( L==Work_Parameter.track_start_point_num)&& track_init_prohibit(range,azi,Work_Parameter)==0) //按长度查找TRUST_TRACK_POINT + + //1km以内,SNR小于20dB的临时航迹不转为可靠航迹 + bool snr_flag = true; + + for(int p_idx = 0; p_idx < L; p_idx++){ + if((*Iter)[p_idx].r < 1000 && (*Iter)[p_idx].snr < 20){ + snr_flag = false; + break; + } + } + + if( ( L==Work_Parameter.track_start_point_num)&& track_init_prohibit(range,azi,Work_Parameter)==0 && snr_flag) //按长度查找TRUST_TRACK_POINT { //加入Track_to_start中 Track_to_start.push_back(QVector ()); for (int i = 0; ierase(Iter); Iter=temp_track->begin();