?? sar.h
字號:
// SAR.h: interface for the CSAR class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_SAR_H__E363A952_40EB_469B_8275_3A94EEC2B24E__INCLUDED_)
#define AFX_SAR_H__E363A952_40EB_469B_8275_3A94EEC2B24E__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include <math.h>
#include <direct.h>
#include <complex>
#include "Fourier.h"
using namespace std;
#define C 300000000 // 光速 =300000000
#define PI 3.141592653592
#define AREA_TARGET 0
#define POINT_TARGET 1
class CSAR
{
public:
int TargetSimuType; //通過該二值變量判斷目標類型,是面目標還是點目標
CString lpAreaTargetImageFileName;
void GetAreaInformation(CString *FileName,int *w,int *h,BYTE **lpAreaImage);
/* 回波信號有關的參數 */
complex<double> *LpRangeMatchFilter; //存儲距離向匹配濾波器,用于距離向向壓縮
double * LpRecSignalRe; //存儲回波接收數據的實部[Na*Nr]
double * LpRecSignalIm; //存儲回波接收數據的虛部[Na*Nr]
/*與SAR點目標及發射信號有關的參數*/
int NaEffective;//方位向采樣有效點數
int NrEffective;//距離向采樣有效點數
int Na; //方位向采樣點數(NaEffective最接近的2的整數次冪)
int Nr; //距離向采樣點數 (NrEffective最接近的2的整數次冪)
int NTao; //脈沖持續時間內采樣點數
int Nrcm; //脈沖中斷時間內采樣點數 Nr>= NTao + Nrcm
double Tsyn; //綜合孔徑時間
double Rt; //SAR與目標的距離
double R0; //脈沖發射時的起始距離
double Rbin; //距離向每像素代表的實際距離
double FR; //多普勒信號調頻率
double KR; //發射線性調頻信號調頻率
double FS; //接收信號采樣率
double PRF; //脈沖重復率(多普勒信號采樣率)
double B_d; //多普勒帶寬
double B_r; //發射信號帶寬
double Pulsewidth; //脈沖寬度 Tao
double Wavelenth; //載波長度 c=Wavelength*f
double V_ami ; //載機飛行速度
double A_Res; //方位向分辨率
double R_Res; //距離向分辨率
double* LpAizm_Time; //用來存儲方位向時間
double* LpRange_Time; //用來存儲距離向時間
double* LpTranSignalRe; //存儲SAR點目標仿真信號數據的實部
double* LpTranSignalIm; //存儲SAR點目標仿真信號數據的虛部
void SARParaInit(); //合成孔徑雷達參數初始化
BOOL LMFSignalProduce(); //產生線性調頻信號
BOOL RecEchoSignal(); //接收點目標回波
/*距離多普勒R-D算法參數*/
int A_in; //方位向插值點數
int R_in; //距離向插值點數
int RCM_in; // 距離徙動校正插值點數
/*距離多普勒R-D算法函數*/
void EchoAzimuthCompress(); //用方位向匹配濾波器在距離多普勒域進行方位向壓縮
void RCMC(); //在距離多普勒域進行距離徙動校正
void EchoRangeCompress(); //用匹配濾波器對回波信號進行距離向壓縮
/*CS算法參數*/
double * LpVTaoRef; //CS參考函數的峰值中心
double * LpVTao; //存儲距離向壓縮后的峰值中心
double* LpRange_Frequency; //用來存儲距離向頻率
double* LpAizm_Frequency; //用來存儲方位向頻率
double* LpBeta;
double* LpKm;
double* LpKsrcInv;
double Ref; //CS算法的參考距離,一般取回波成像中心
/*CS算法函數*/
void CSARangeFFT();
void CSAAzimuthCompress(); //CS算法方位向壓縮,最終成像
void CSARangeCompress(); //CS算法距離向壓縮
void CSAAzimuthFFT(); //CS算法方位向傅氏變換,在多普勒域進行CS處理
void CSAChirpSacle(); //CS算法 CS處理
void CSAParaInit(); //CS算法參數初始化
CSAR();
virtual ~CSAR();
};
#endif // !defined(AFX_SAR_H__E363A952_40EB_469B_8275_3A94EEC2B24E__INCLUDED_)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -