版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Destiny0321/article/details/65938240
在圆迹SAR成像模型中,一般采用后向投影算法(Back Projection Algorithm,BPA)实现。本文采用C++语言建立了圆迹SAR的回波模型,然后采用BP算法仿真出了点目标,回波幅度图如图1所示,点目标成像效果如图2所示。几经修改,在Release模式下生成的可执行文件的执行效率比Matlab在同等参数条件下的执行效率高。仿真参数如下:
// 雷达参数设置
const double C = 3.0e8; // 光速
const double Fc = 10.0e9; // 载频
const double BW = 600.0e6; // 带宽
const double R0 = 10.0e3; // 飞行半径
const int K = 512; // 频率采样数
const int Np = 256; // 脉冲数
double elev = 30.0; // 高度角
double minAz = 58.5; // 成像起始角
double maxAz = 61.5; // 成像终止角
// 点目标设置
const int Ntargets = 5;
CPoint3D Ptargets[Ntargets]; // CPoint3D是三维空间中的点类
Ptargets[0] = CPoint3D(0, 0, 0); // (x,y,z)
Ptargets[1] = CPoint3D(6, 6, 0);
Ptargets[2] = CPoint3D(-6, 6, 0);
Ptargets[3] = CPoint3D(-6, -6, 0);
Ptargets[4] = CPoint3D(6, -6, 0);
// 成像区域设置
const double Wx = 20.0; // 成像区域X方向长度
const double Wy = 20.0; // 成像区域Y方向长度
const int Nx = 501; // 成像区域X方向采样点数
const int Ny = 501; // 成像区域Y方向采样点数
图1 5点目标的回波幅度图
图2 5点目标的成像效果
源代码下载地址:http://download.csdn.net/detail/destiny0321/9793577
(注:本程序运行环境为Visual Studio 2013,64bit,运行该程序需要在VS中配置opencv,对opencv的配置可参考http://blog.csdn.net/destiny0321/article/details/54138434中的部分内容)