⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 imagerd(h).txt

📁 模块的目的/功能: 完成对回波数据的成像Rang-doppler算法
💻 TXT
字号:
#ifndef _CIMAGERD_H 
#define _CIMAGERD_H 
 
#include "stdafx.h" 
#include "sarsoft.h" 
 
	 
#define c 3e+8 
#define pi 3.1415926 
#define PROCESSER m_paraList.processList 
#define SIGNAL1(c1,c2) m_signal[(c1)*m_NumRFFT+(c2)] 
 
class CImageRD 
{ 
public: 
	CImageRD(); 
	virtual ~CImageRD(); 
public:	  // parameters   
	ParaList m_paraList;		     		 //参数表 
	CString m_sParaFile;		 		 //参数文件名称 
	LPVOID  m_reflectData;		     		 //回波内存映像 
	int m_iRow, m_iCol;			     	  	 //回波范围 
	float k_a;				                 // azimuth factor 
	float k_r;				                 // range factor 
	float sita;			                     // squint angle (正侧视)  
	int i,j,k;                               // variable of circle 
	float res_a;		                     // required azimuth resolution 
	float res_r;							 // required range resolution 
	float H;						         // radar working high 
	float Theta;					         // angle of radar's incidence 
	float Ra;								 // radar working distance 
	float va; 						         // radar/platform forward velocity 
	float Tp; 							     // transmitted pulse width       
	float fc;				 				 // carrier frequency  
	float lamda;						     // wavelength 
	float Br;				                 // required transmitted bandwidth(k_r*c/2./res_r) 
	float Fs;			                     // A/D sampling rate(FsFactor=1.5) 
	double bin_r;		                     // range bin 
	double La;                               // required synthetic aperture length 
	double Ta;					             // required synthetic aperture time 
	double fdc;                              // doppler centriod(正侧视就为0) 
	double fdr;							     // doppler rate 
	double Bd,Kr;				                 // doppler bandwidth 
	float prf;					             // PRF(Bd*2) 
 
	float rmin;                             // maximal rang 
	 
	double rmax;                             // minimal rang 
	int Na;                                  //azimuth sampling number 
	int Nr;                                  //rang sampling number  
private: 
	int m_NumRFFT;						 	 //距离向FFT点数 
	int m_NumAFFT;					 		 //方位向FFT点数 
	int m_rR;                                //比距离向点数大的并且最接近距离向点数的2的幂次 
	int m_rA;                                //比方位向点数大的并且最接近方位向点数的2的幂次 
 
	DComplex *m_buffer;						//临时存储区 
	DComplex *m_signal;			            //信号存储区 
	//用于创建内存映射文件时产生的句柄 
	HANDLE m_hFile;     
	HANDLE m_hFileMap;  
public: 
	bool ParaSet(CString strfileName=""); 
    bool RangeCompress(); 
    bool AzimuthCompress(); 
	void MYFFT(DComplex* TD,int r);   
	void MYFFTShift(DComplex* FD,int r); 
	void MYIFFT(DComplex* FD,int r); 
	int  GetLogNum(int num); 
	// void LineInterpolation; 
	//void SaveSignal(char *fileName, bool saveRange=true); 
	bool CreateMemoryMap(CString strFileName, DWORD dwSize); 
	//读取回波数据文件到内存中 
	bool ReadReflectWaveData(char *fileName); 
}; 
 
 
 
#endif

⌨️ 快捷键说明

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