1. 程式人生 > >BP演算法實現圓跡SAR點目標模擬(C++語言)

BP演算法實現圓跡SAR點目標模擬(C++語言)

在圓跡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點目標的成像效果