基于LabVIEW的弹载SAR回波仿真及成像方法
【专利摘要】本发明属于雷达信号处理【技术领域】,特别涉及基于LabVIEW的SAR面回波仿真及弹载SAR成像方法。其具体步骤为:在LabVIEW界面输入合成孔径雷达的工作参数,利用CUDA架构将弹载SAR回波仿真的过程封装为DLL函数;LabVIEW将合成孔径雷达的工作参数输出至库函数节点,库函数节点调用所述DLL函数,得到所有方位时间SAR观测场景的回波数据。
【专利说明】基于LabVIEW的弹载SAR回波仿真及成像方法
【技术领域】
[0001] 本发明属于雷达信号处理【技术领域】,特别涉及基于LabVIEW的SAR面回波仿真及 弹载SAR成像方法。
【背景技术】
[0002] 随着合成孔径雷达成像技术的发展,将合成孔径雷达(SAR)与精确制导技术相结 合的弹载SAR已成为近年的研究热点。由于弹载SAR需要高分辨率以获得更多的目标信息, 使目标的形状和精细结构更清晰地呈现出来,从而大大提高对目标的识别能力和精确打击 能力;而在军事上,弹载SAR通常在侦查完后还需完成攻击,为了保证导弹具备一定的转弯 机动时间,弹载SAR -般需在前斜视的情况下成像。因此对弹载SAR前斜视的成像研究具 有重要意义。
[0003] 弹载SAR仿真系统具有SAR回波模拟和SAR成像处理的功能,是SAR系统研发、功 能测试以及性能评估的重要手段。现有的弹载SAR仿真系统存在仿真耗时长,执行效率低 等缺点。
【发明内容】
[0004] 本发明的目的在于针对上述现有技术存在的问题和不足,提供一种基于LabVIEW 和GPU的弹载SAR回波仿真及成像方法,可以实现对输入参数和指定场景的回波仿真和弹 载SAR成像处理。
[0005] 为实现上述技术目的,本发明采用如下技术方案予以实现。
[0006] 技术方案一:
[0007] 基于LabVIEW的弹载SAR回波仿真方法,其特征在于,包括以下步骤:在LabVIEW 界面输入合成孔径雷达的工作参数,利用CUDA架构将弹载SAR回波仿真的过程封装为DLL 函数;LabVIEW将合成孔径雷达的工作参数输出至库函数节点,库函数节点调用所述DLL函 数,得到所有方位时间SAR观测场景的回波数据;
[0008] 利用CUDA架构进行弹载SAR回波仿真的过程包括以下子步骤:
[0009] 子步骤1,在CPU端,设置合成孔径雷达的工作参数;所述合成孔径雷达的工作参 数包括合成孔径雷达方位向采样点数N a;
[0010] 子步骤2,在CPU端,设置SAR观测场景,以SAR观测场景的中心为参考点建立坐标 系,设置SAR每个阵元在每个方位时间的位置,设置SAR观测场景中每个散射点的坐标和散 射系数;
[0011] 子步骤3,将CPU在子步骤1和子步骤2中设置的所有数据复制到GPU的全局内存 中;
[0012] 子步骤4,在GPU端,使用第1个Kernel函数、第2个Kernel函数和第3个Kernel 函数得出第1个方位时间SAR观测场景的回波数据,1 = 1,2, ...,Na;
[0013] 子步骤5,令1依次取1,2, ...,Na,并重复执行子步骤4,得出所有方位时间SAR观 测场景的回波数据。
[0014] 技术方案二:
[0015] 基于LabVIEW的弹载SAR成像方法,其特征在于,包括以下步骤:在LabVIEW界面 输入弹载合成孔径雷达的工作参数,利用CUDA架构将弹载SAR成像的过程封装为DLL函 数;LabVIEW将合成孔径雷达的工作参数输出至库函数节点,库函数节点调用所述DLL函 数,得到聚焦后的SAR图像数据;
[0016] 利用CUDA架构进行弹载SAR成像的过程包括以下子步骤:
[0017] 子步骤S1,在CPU端设置合成孔径雷达的工作参数,并获取SAR原始回波数据,所 述合成孔径雷达的工作参数包括合成孔径雷达方位向采样点数Na、合成孔径雷达距离向采 样点数队;CPU将合成孔径雷达的工作参数存储于GPU中,将SAR原始回波数据以矩阵的形 式存储于GPU中;
[0018] 子步骤S2,在GPU端,对SAR原始回波数据矩阵作距离向处理,得出距离方位二维 时域数据;所述对SAR原始回波数据矩阵作距离向处理的过程为:针对SAR原始回波数据 矩阵依次进行距离向傅里叶变换、距离向脉冲压缩、进行距离走动校正及多普勒中心补偿、 方位向傅里叶变换、距离弯曲校正、二次距离向脉冲压缩、距离向逆傅里叶变换和方位向逆 傅里叶变换;
[0019] 子步骤S3,在GPU端,将距离方位二维时域数据矩阵沿方位向进行补零扩展,得出 大小为N a' X队的方位向补零扩展后的距离方位二维时域数据矩阵,Na'为大于凡的自然 数;
[0020] 子步骤S4,在GPU端,对方位向补零扩展后的距离方位二维时域数据矩阵依次进 行方位向傅里叶变换、转置,得出转置后的方位向傅里叶变换后数据矩阵;在方位频域,针 对转置后的方位向傅里叶变换后数据矩阵每个元素,计算对应的高次相位补偿函数和高次 相位滤波函数,将转置后的方位向傅里叶变换后数据矩阵每个元素依次乘以对应相位补偿 函数和相位滤波函数,得出相位补偿及相位滤波后的方位频域数据;所述相位补偿函数用 于对转置后的方位向傅里叶变换后数据矩阵对应的元素进行四次相位补偿和五次相位补 偿,所述相位滤波函数用于对转置后的方位向傅里叶变换后数据矩阵对应的元素进行二次 相位校正和三次相位校正;在得出相位补偿及相位滤波后的方位频域数据之后,在GPU端, 对相位补偿及相位滤波后的方位频域数据进行方位向逆傅里叶变换,得出相位补偿及相位 滤波后的方位时域数据;在方位时域针对相位补偿及相位滤波后的方位时域数据,补偿由 相位滤波函数引入的高次相位,得出残余高次相位补偿后的方位时域数据;对残余高次相 位补偿后的方位时域数据进行方位deramp处理,对方位deramp处理后的方位时域数据进 行方位向傅里叶变换,得到聚焦后的SAR图像数据。
[0021] 本发明的有益效果为:可以实现对输入参数和指定场景的回波仿真和弹载SAR成 像处理。
【专利附图】
【附图说明】
[0022] 图1为发明的基于GPU的合成孔径雷达回波仿真方法的流程图;
[0023] 图2a为本发明中为第1个Kernel函数分配线程网格的示意图;
[0024] 图2b为本发明中为第2个Kernel函数分配线程网格的示意图;
[0025] 图3为本发明中第2个Kernel函数的每个线程块对对应数据进行树状结构累加 求和的不意图;
[0026] 图4为本发明中为第3个Kernel函数分配线程网格的示意图;
[0027] 图5a为仿真实验中利用本发明得出的散射点二维回波数据的幅度图;
[0028] 图5b为仿真实验中利用本发明得出的散射点二维回波数据的相位图;
[0029] 图6a为仿真实验中面目标仿真原始场景图;
[0030] 图6b为仿真实验中利用本发明得出的面目标回波二维幅度图;
[0031] 图6c为仿真实验中利用本发明得出的面目标成像结果示意图;
[0032] 图7为本发明的基于GPU的弹载SAR前斜视成像方法的流程图;
[0033] 图8为GPU端进行距离向处理时核函数的线程分配方式示意图;
[0034] 图9为本发明实施例中频域匹配滤波的参考函数与距离频域方位时域数据矩阵 的相乘运算的过程的示意图;
[0035] 图10为GPU端进行方位向处理时核函数的线程分配方式示意图;
[0036] 图Ila为仿真实验中利用本发明得出的五个点目标的成像结果示意图;
[0037] 图Ilb为仿真实验中利用本发明得出位于合成孔径雷达的边缘的第一个点目标 的等1?线图;
[0038] 图Ilc为仿真实验中利用本发明得出位于合成孔径雷达的边缘的第二个点目标 的等1?线图;
[0039] 图Ild为仿真实验中利用本发明得出位于合成孔径雷达的边缘的第三个点目标 的等1?线图;
[0040] 图lie为仿真实验中利用本发明得出位于合成孔径雷达的边缘的第四个点目标 的等1?线图。
[0041] 图12a为仿真实验中包含五个点目标的原始场景图;
[0042] 图12b为仿真实验中利用本发明得出的五个点目标回波的成像结果示意图。
【具体实施方式】
[0043] 下面结合附图对本发明作进一步说明:
[0044] 本发明实施例中,基于LabVIEW的弹载SAR回波仿真方法包括以下步骤: 在LabVIEW界面输入合成孔径雷达的工作参数,利用CUDA(Compute Unified Device Architecture)架构将弹载SAR回波仿真的过程封装为DLL函数;LabVIEW将合成孔径雷达 的工作参数输出至库函数节点,库函数节点调用所述DLL函数,得到所有方位时间SAR观测 场景的回波数据。
[0045] 具体地说,LabVIEW界面负责输入数据和显示结果,设置雷达的工作参数,如距离 向采样点数、方位向采样点数、采样率、斜视角等。设置导弹的运动参数,理想情况下输入X、 y、z方向的速度分量,实际情况下输入导弹在各方位时间的位置坐标。选择仿真类型是点 目标回波还是面目标回波,进行面目标回波仿真时还需要加载场景图像数据,点目标回波 仿真需要输入各点目标的坐标。输入的所有数据将保存在移位寄存器中。
[0046] 本发明的回波仿真在CUDA平台上开发完成后,封装成DLL中的一个函数。对于 LabVIEW,生成回波需要的参数和数据由移位寄存器输入到库函数节点,库函数节点将以调 用DLL的方式启动成像处理函数,实现基于GPU的SAR面目标快速回波仿真。库函数节点 的调用完成后回波数据从DLL函数中输出到LabVIEW,由LabVIEW将回波数据写入指定的文 件中。
[0047] 点目标回波仿真由于目标较少,在瞬间就可以完成。面目标回波仿真由场景散射 点的个数决定,全部在CPU上完成一般需要几个小时甚至几天的时间,所以很有必要设计 高性能的GPU代码对面目标回波仿真进行加速。回波仿真程序通过参数传递接收LabVIEW 传递的参数和数据。
[0048] 本发明实施例中,参照图1,为利用CUDA架构进行弹载SAR回波仿真的流程图。利 用CUDA架构进行弹载SAR回波仿真的过程包括以下子步骤:
[0049] 子步骤1,在CPU端,设置合成孔径雷达的工作参数,所述合成孔径雷达的工作参 数包括:合成孔径雷达波束角、合成孔径雷达距离向采样点数(距离单元数)队、合成孔径 雷达方位向采样点数N a、合成孔径雷达距离向采样频率Fs、合成孔径雷达距离向采样间隔 Λ r、合成孔径雷达距离向第一个采样单元(第一个距离单元)的斜距Rtl、光速c、合成孔径 雷达发射信号带宽B、合成孔径雷达发射信号的载波波长λ。
[0050] 子步骤2,在CPU端,设置SAR观测场景,以SAR观测场景的中心为参考点建立坐标 系,设置SAR每个阵元在每个方位时间的位置,设置场景中散射点间的间隔,设置SAR观测 场景中每个散射点的坐标和散射系数。
[0051] 子步骤3,将CPU在子步骤1和子步骤2中设置的所有数据复制到GPU的全局内存 中;此时,需要预先在GPU端为来自CPU的数据分配全局内存。
[0052] 子步骤4,在GPU端,使用第1个Kernel函数、第2个Kernel函数和第3个Kernel 函数得出第1个方位时间SAR观测场景的回波数据,1 = 1,2, ...,Na。
[0053] 得出第1个方位时间SAR观测场景的回波数据的过程为:
[0054] 在GPU端,为第1个Kernel函数分配Nl个线程块,
【权利要求】
1. 基于LabVIEW的弹载SAR回波仿真方法,其特征在于,包括以下步骤:在LabVIEW界 面输入合成孔径雷达的工作参数,利用CUDA架构将弹载SAR回波仿真的过程封装为DLL函 数;LabVIEW将合成孔径雷达的工作参数输出至库函数节点,库函数节点调用所述DLL函 数,得到所有方位时间SAR观测场景的回波数据; 利用CUDA架构进行弹载SAR回波仿真的过程包括以下子步骤: 子步骤1,在CPU端,设置合成孔径雷达的工作参数;所述合成孔径雷达的工作参数包 括合成孔径雷达方位向采样点数Na; 子步骤2,在CPU端,设置SAR观测场景,以SAR观测场景的中心为参考点建立坐标系, 设置SAR每个阵元在每个方位时间的位置,设置SAR观测场景中每个散射点的坐标和散射 系数; 子步骤3,将CPU在子步骤1和子步骤2中设置的所有数据复制到GPU的全局内存中; 子步骤4,在GPU端,使用第1个Kernel函数、第2个Kernel函数和第3个Kernel函 数得出第1个方位时间SAR观测场景的回波数据,1 = 1,2, ...,Na; 子步骤5,令1依次取1,2, ...,Na,并重复执行子步骤4,得出所有方位时间SAR观测场 景的回波数据。
2. 如权利要求1所述的基于LabVIEW的弹载SAR回波仿真方法,其特征在于,在子步骤 1中,所述合成孔径雷达的工作参数还包括合成孔径雷达距离向采样点数队; 在子步骤4中,得出第1个方位时间SAR观测场景的回波数据的过程为: 在GPU端,为第1个Kernel函数分配Nl个线程块, M= (Point_?wm/yV-1 + 256)/256」,L·」表示向上取整,P〇int__num表第1个方 位时间SAR观测场景种所有散射点的个数,N为设定的自然数,为第1个Kernel函数分配 的每个线程块包含256个线程; 利用第1个Kernel函数的每个线程得出第1个方位时间N个散射点的回波数据,在计 算第1个方位时间每个散射点的回波数据时,计算第1个方位时间对应散射点所在距离单 元的回波数据并进行sine插值,将对应散射点所在距离单元的回波数据进行第k次sine 插值后的数据记为对应散射点的第k次sine插值数据,k取1至队;将对应散射点的第1 次sine插值数据至对应散射点的第队次sine插值数据组合为对应散射点的回波数据; 当第1个Kernel函数的每个线程得出第1个方位时间N个散射点的回波数据之后,对 第1个方位时间N个散射点的回波数据进行累加,得出第1个方位时间N个散射点的回波 数据的第1个距离单元的累加结果至第1个方位时间N个散射点的回波数据的第队个距 离单元的累加结果,将第1个方位时间N个散射点的回波数据的第1个距离单元的累加结 果至第1个方位时间N个散射点的回波数据的第队个距离单元的累加结果组成第1个方 位时间N个散射点的回波数据的累加结果;在得出第1个方位时间N个散射点的回波数据 的累加结果的过程中,第1个Kernel函数的每个线程块得出256X队个复数元素; 在GPU端,为第2个Kernel函数分配N2个线程块 /V2= (Point_?w/?/7V-l+ 256)/256」xAr,.,为第 2 个Kernel函数分配的每个线程 块包括256个线程; 针对第1个Kernel函数的每个线程块得出的256X队个复数元素,在第2个Kernel函 数中调用队个线程块;针对第1个Kernel函数的每个线程块得出的第1个方位时间N个 散射点第k个距离单元的256个复数元素,在第2个Kernel函数对应的队个线程块中使 用第k个线程块对第1个Kernel函数的每个线程块得出的第1个方位时间N个散射点第 k个距离单元的256个复数元素进行并行归约求和,得出第1个方位时间第2个Kernel函 数对应的队个线程块中第k个线程块的累加求和结果; 在GPU端,为第3个Kernel函数分配队个线程块,为第3个Kernel函数分配的每个 线程块包括256个线程; 在调用第2个Kernel函数实现回波数据的部分累加后,采用第3个Kernel函数将第 2个Kernel函数的输出结果再次用共享内存进行累加;第3个Kernel函数的第k个线程 块从GPU的全局内存中读取第2个Kernel函数得出的第1个方位时间的第k个距离单元 的累加结果,然后对第2个Kernel函数得出的第1个方位时间的第k个距离单元的累加求 和结果进行并行归约求和,得出对应的累加求和结果;第3个Kernel函数得出的第1个方 位时间的队个累加求和结果为第1个方位时间SAR观测场景的回波数据。
3. 如权利要求1所述的基于LabVIEW的弹载SAR回波仿真方法,其特征在于,在子步 骤5之后,在GPU端,对所有方位时间SAR观测场景的回波数据做距离向傅里叶变换,得到 距离频域所有方位时间的回波数据;将距离频域所有方位时间的回波数据乘以距离频域匹 配项,得出距离频域匹配后所有方位时间的回波数据;对距离频域匹配后所有方位时间的 回波数据作距离向逆傅里叶变换,得出距离频域匹配后所有方位时间的时域回波数据。
4. 基于LabVIEW的弹载SAR成像方法,其特征在于,包括以下步骤:在LabVIEW界面输 入弹载合成孔径雷达的工作参数,利用CUDA架构将弹载SAR成像的过程封装为DLL函数; LabVIEW将合成孔径雷达的工作参数输出至库函数节点,库函数节点调用所述DLL函数,得 到聚焦后的SAR图像数据; 利用CUDA架构进行弹载SAR成像的过程包括以下子步骤: 子步骤S1,在CPU端设置合成孔径雷达的工作参数,并获取SAR原始回波数据,所述合 成孔径雷达的工作参数包括合成孔径雷达方位向采样点数Na、合成孔径雷达距离向采样点 数队;CPU将合成孔径雷达的工作参数存储于GPU中,将SAR原始回波数据以矩阵的形式存 储于GPU中; 子步骤S2,在GPU端,对SAR原始回波数据矩阵作距离向处理,得出距离方位二维时域 数据;所述对SAR原始回波数据矩阵作距离向处理的过程为:针对SAR原始回波数据矩阵 依次进行距离向傅里叶变换、距离向脉冲压缩、进行距离走动校正及多普勒中心补偿、方位 向傅里叶变换、距离弯曲校正、二次距离向脉冲压缩、距离向逆傅里叶变换和方位向逆傅里 叶变换; 子步骤S3,在GPU端,将距离方位二维时域数据矩阵沿方位向进行补零扩展,得出大小 为Na'X队的方位向补零扩展后的距离方位二维时域数据矩阵,Na'为大于Na的自然数; 子步骤S4,在GPU端,对方位向补零扩展后的距离方位二维时域数据矩阵依次进行方 位向傅里叶变换、转置,得出转置后的方位向傅里叶变换后数据矩阵;在方位频域,针对转 置后的方位向傅里叶变换后数据矩阵每个元素,计算对应的高次相位补偿函数和高次相位 滤波函数,将转置后的方位向傅里叶变换后数据矩阵每个元素依次乘以对应相位补偿函数 和相位滤波函数,得出相位补偿及相位滤波后的方位频域数据;所述相位补偿函数用于对 转置后的方位向傅里叶变换后数据矩阵对应的元素进行四次相位补偿和五次相位补偿,所 述相位滤波函数用于对转置后的方位向傅里叶变换后数据矩阵对应的元素进行二次相位 校正和三次相位校正;在得出相位补偿及相位滤波后的方位频域数据之后,在GPU端,对相 位补偿及相位滤波后的方位频域数据进行方位向逆傅里叶变换,得出相位补偿及相位滤波 后的方位时域数据;在方位时域针对相位补偿及相位滤波后的方位时域数据,补偿由相位 滤波函数引入的高次相位,得出残余高次相位补偿后的方位时域数据;对残余高次相位补 偿后的方位时域数据进行方位deramp处理,对方位deramp处理后的方位时域数据进行方 位向傅里叶变换,得到聚焦后的SAR图像数据。
5. 如权利要求1所述的基于LabVIEW的弹载SAR成像方法,其特征在于,在子步骤Sl 中,在CPU端设置雷达的工作参数;所述合成孔径雷达的工作参数包括合成孔径雷达的常 量参数和合成孔径雷达的工作向量,所述合成孔径雷达的常量参数包括:合成孔径雷达方 位向采样点数Na、合成孔径雷达距离向采样点数队、合成孔径雷达距离向采样率Fs、合成孔 径雷达发射信号的线性调频率Y、合成孔径雷达发射信号的脉冲宽度Tp、合成孔径雷达发 射信号的载频频率f。、合成孔径雷达斜视角Θ^、弹体飞行速度V、合成孔径雷达波束中心线 扫过目标时的斜距R〇、多普勒中心频率fd。、光速c,所述合成孔径雷达的工作向量包括距离 时间向量k、方位时间向量tm、距离向频率向量f;、方位向频率向量fa。
6. 如权利要求5所述的基于GPU的弹载SAR前斜视并行成像方法,其特征在于,在子步 骤Sl之后,设置凡个线程块,在Na个线程块中,第i个线程块用于对原始回波数据矩阵的 第i行进行距离向处理,i取1至Na,Na为方位向采样点数。
7. 如权利要求5所述的基于LabVIEW的弹载SAR成像方法,其特征在于,在子步骤S2 中,在GPU端,对全局内存中的SAR原始回波数据矩阵做距离向傅里叶变换,得到距离频域 方位时域数据矩阵,距离频域方位时域数据矩阵是大小为NaX队的矩阵; 在GPU端,对距离频域方位时域数据矩阵进行距离向匹配滤波处理,实现距离向脉冲 压缩,得出距离向脉冲压缩后数据,距离向匹配滤波处理的过程包括构造频域匹配滤波的 参考函数、以及频域匹配滤波的参考函数与距离频域方位时域数据的相乘运算; 在GPU端,在距离频域对距离向脉冲压缩后数据进行距离走动校正及多普勒中心补 偿,得出距离走动校正及多普勒中心补偿后数据; 在GPU端,对距离走动校正及多普勒中心补偿后数据进行方位向傅里叶变换,得出距 离方位二维频域数据; 在GPU端,对距离方位二维频域数据进行距离弯曲校正和二次距离向脉冲压缩,得到 二次距离向脉冲压缩数据; 对距离方位二维频域数据依次进行距离向逆傅里叶变换和方位向逆傅里叶变换,得出 距离方位二维时域数据,距离方位二维时域数据以矩阵的形式进行存储,距离方位二维时 域数据矩阵是大小为NaXNr的矩阵。
8. 如权利要求5所述的基于LabVIEW的弹载SAR成像方法,其特征在于,在子步骤S3 中,在GPU端,从距离方位二维时域数据矩阵的第1行向上扩展至少一行长度为队的全零向 量,并从距离方位二维时域数据矩阵的最后1行向下扩展至少一行长度为队的全零向量, 得出大小为Na'X队的方位向补零扩展后的距离方位二维时域数据矩阵。
9.如权利要求5所述的基于LabVIEW的弹载SAR成像方法,其特征在于,在子步骤S4 中,对方位向补零扩展后的距离方位二维时域数据矩阵进行方位向傅里叶变换,得出方位 向傅里叶变换后数据矩阵,对方位向傅里叶变换后数据矩阵进行转置,得出转置后的方位 向傅里叶变换后数据矩阵; 设置队个线程块,在个线程块中,第j个线程块用于对转置后的方位向傅里叶变换 后数据矩阵的第j行进行方位向处理,j取1至队; 在GPU端,在方位频域,针对转置后的方位向傅里叶变换后数据矩阵每个元素,计算对 应的高次相位补偿函数和高次相位滤波函数,将转置后的方位向傅里叶变换后数据矩阵每 个元素依次乘以对应相位补偿函数和相位滤波函数,得出相位补偿及相位滤波后的方位频 域数据;所述相位补偿函数用于对转置后的方位向傅里叶变换后数据矩阵对应的元素进行 四次相位补偿和五次相位补偿,所述相位滤波函数用于对转置后的方位向傅里叶变换后数 据矩阵对应的元素进行二次相位校正和三次相位校正; 在GPU端,对相位补偿及相位滤波后的方位频域数据进行方位向逆傅里叶变换,得出 相位补偿及相位滤波后的方位时域数据;在方位时域针对相位补偿及相位滤波后的方位时 域数据,补偿由相位滤波函数引入的高次相位,得出残余高次相位补偿后的方位时域数据; 对残余高次相位补偿后的方位时域数据进行方位deramp处理,对方位deramp处理后的方 位时域数据进行方位向傅里叶变换,得到聚焦后的SAR图像数据。
【文档编号】G01S7/41GK104459666SQ201410720663
【公开日】2015年3月25日 申请日期:2014年12月1日 优先权日:2014年12月1日
【发明者】梁毅, 邢孟道, 杜凡, 刘士杰 申请人:西安电子科技大学