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

📄 imagerd(cpp).txt

📁 模块的目的/功能: 完成对回波数据的成像Rang-doppler算法
💻 TXT
📖 第 1 页 / 共 2 页
字号:
#include "stdafx.h"    
#include "ImageRD.h"    
#include <MATH.H>    
/************************************************************************  
* 版权说明:         buaa  
* 生成日期:         2005年12月    
* 作者:             yoyo            
* 内容:             RD成像算法     
* 模块的目的/功能:  完成对回波数据的成像Rang-doppler算法  
* 主要函数及其功能:   
  **  构造函数            : 从参数文件中获得雷达平台参数,给输入框参数赋初值  
  **  ParaSet             : 处理所用到参数,将回波数据读入内存中  
  **  RangeCompress       : 距离压缩   
  **  AzimuthCompress     : 方位向压缩  
  **  CreateMemoryMap     : 产生内存映射文件,用来保存点数据  
  **  ReadReflectWaveData : 读取保存在回波数据文件里的数据  
  **  MYFFT               : 傅立叶变化  
  **  IMYFFT              : 逆傅立叶变化  
  **  GetLogNum: 求大于或等于输入值取2的对数后的最近整数值  
* 与其他文件的关系:是CMainFram中DrawCutRecCube入口,给其提供房屋  
      参数和确定模型建立后存入的数据库。     
* 修改日期:2006年8月  
* 修改原因:版式整理,详细注释  
**************************************************************************/   
CImageRD::CImageRD()   
{   
    m_reflectData=NULL;                      //回波内存映像    
    m_iRow=m_iCol=0;                         //回波范围    
    k_a=0.0;                                 // azimuth factor    
    k_r=0.0;                                 // range factor    
    sita=0.0;                                // squint angle (正侧视)     
    i=j=k=0;                                 // variable of circle    
    res_a=0.0;                               // required azimuth resolution    
    res_r=0.0;                               // required range resolution    
    H=0.0;                                   // radar working high    
    Theta=0.0;                               // angle of radar's incidence    
    Ra=0.0;                                  // radar working distance    
    va=0.0;                                  // radar/platform forward velocity    
    Tp=0.0;                                  // transmitted pulse width          
    fc=0.0;                                  // carrier frequency     
    lamda=0.0;                               // wavelength    
    Br=0.0;                                  // required transmitted bandwidth(k_r*c/2./res_r)    
    Fs=0.0;                                  // A/D sampling rate(FsFactor=1.5)    
    bin_r=0.0;                               // range bin    
    La=0.0;                                  // required synthetic aperture length    
    Ta=0.0;                                  // required synthetic aperture time    
    fdc=0.0;                                 // doppler centriod(正侧视就为0)    
    fdr=0.0;                                 // doppler rate    
    Bd=Kr=0.0;                               // doppler bandwidth    
    prf=0.0;                                 // PRF(Bd*2)    
    rmin=0.0;                                // maximal rang    
    rmax=0.0;                                // minimal rang    
    Na=0;                                    //azimuth sampling number    
    Nr=0;                                    //rang sampling number    
    m_NumRFFT=0;                             //距离向FFT点数    
    m_NumAFFT=0;                             //方位向FFT点数    
    m_rR=0;                                  //比距离向点数大的并且最接近距离向点数的2的幂次    
    m_rA=0;                                  //比方位向点数大的并且最接近方位向点数的2的幂次    
    m_buffer=NULL;                           //临时存储区    
    m_signal=NULL;                           //信号存储区    
    //用于创建内存映射文件时产生的句柄    
    m_hFile=NULL;       
    m_hFileMap=NULL;    
}   
CImageRD::~CImageRD()   
{   
    if(m_buffer)   
        delete[] m_buffer;   
    if(m_reflectData)   
        UnmapViewOfFile(m_reflectData);   
    if(m_hFileMap)   
        CloseHandle(m_hFileMap);   
    if(m_hFile)   
        CloseHandle(m_hFile);   
}   
/*************************************************************************  
* 函数名   : ParaSet  
* 功  能  : 处理所用到参数,将回波数据读入内存中  
* 返回值   : 参数赋值成功返回true,失败返回false  
* 参  数  : strFileName  存放参数的文件名  
* 调用关系  : 调用function中round(四舍五入)  
              run中成像部分调用此函数  
* 作  者  : yoyo  
* 创建日期  : 2006年5月  
* 修改日期  : 2006年8月  
* 修改原因  : 版式整理,详细注释  
************************************************************************/   
bool CImageRD::ParaSet(CString strFileName)   
{   
    CStdioFile paraFile;   
    CFileException e;   
    CString m_sParaFile;   
    if(strFileName=="")   

⌨️ 快捷键说明

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