CN102854507B - 一种基于gpu后向投影双站合成孔径雷达成像方法 - Google Patents

一种基于gpu后向投影双站合成孔径雷达成像方法 Download PDF

Info

Publication number
CN102854507B
CN102854507B CN201210334304.2A CN201210334304A CN102854507B CN 102854507 B CN102854507 B CN 102854507B CN 201210334304 A CN201210334304 A CN 201210334304A CN 102854507 B CN102854507 B CN 102854507B
Authority
CN
China
Prior art keywords
subimage
overbar
note
thread
radar
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201210334304.2A
Other languages
English (en)
Other versions
CN102854507A (zh
Inventor
张晓玲
于淼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of Electronic Science and Technology of China
Original Assignee
University of Electronic Science and Technology of China
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by University of Electronic Science and Technology of China filed Critical University of Electronic Science and Technology of China
Priority to CN201210334304.2A priority Critical patent/CN102854507B/zh
Publication of CN102854507A publication Critical patent/CN102854507A/zh
Application granted granted Critical
Publication of CN102854507B publication Critical patent/CN102854507B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Radar Systems Or Details Thereof (AREA)

Abstract

本发明公开了一种基于GPU后向投影双站合成孔径雷达成像方法,它通过优化了传统快速因式分解后向投影方法的分级参数的方法,与传统快速因式分解后向投影方法相比,提升了成像处理效率;另一方面,它通过将成像任务分离成若干个互不相关的子任务群,以便GPU对子任务群进行并行处理,并通过新颖的并行策略再次提升了处理效率。相较现有的双站SAR成像方法,本发明既保持了时域方法内存开销小、易进行运动补偿等优点,实现了大数据处理量的双站SAR快速成像,处理效率也大幅提升,同时还能够获得高质量的成像结果。

Description

一种基于GPU后向投影双站合成孔径雷达成像方法
技术领域
本技术发明属于雷达技术领域,它特别涉及了双站合成孔径雷达成像技术领域。
背景技术
双站合成孔径雷达(Bistatic synthetic aperture radar,简写为BSAR)是指收发天线分置于两个不同平台的SAR系统。与传统的单站SAR相比,双站SAR具有隐蔽性好,安全性高,抗干扰能力强的优点,并且能够实现一些单站SAR所无法实现的特殊应用模式,如前视成像,前视成像是一种非常具有应用价值的成像模式,可应用于导航、恶劣天气下的飞机导航及着陆等方面。鉴于双站SAR的多种优势,对双站SAR技术的研究具有重要意义。
快速因式分解后向投影方法(Fast Factorized Backprojection,简称为FFBP)是一种运算量低、适用于任意双站构型的SAR成像方法,它是后向投影方法(Backprojection,简称为BP)的一种快速实现。该方法首先对合成孔径进行子孔径分解,由于子孔径在方位向具有较低的分辨率,于是可以减少成像区域在方位向的采样点数,达到降低运算量的目的。详细请见文献Ulander,L.,Hellsten,H.,and Stenstrom,G.Synthetic aperture radar processing using fast factorizedback-projection.IEEE Transactions on Aerospace and Electronic Systems,39,3(July2003),760—776。然而在实时导航等一些实际应用中,快速因式分解后向投影方法还不能满足所要求的高实时性处理。
近年来,图形处理器(简称GPU)被引入SAR图像处理领域,由于GPU具有并行化处理数据的能力,而且硬件成本较低,所以可以用来提高SAR数据处理效率,如文献Ponce,O.,P.Prats,M.Rodriguez-Cassola,R.Scheiber,and A.Reigber,"Processing of circular SAR trajectories with fast factorizedback-projection,"Proc.IGARSS,3692-3695,Vancouver,Canada,2011.中便提到利用GPU进行数据处理,但是该文献并没有指出其具体实现过程。
发明内容
本发明的目的是针对现有双站SAR成像方法中存在的处理效率低的问题,提出改进快速因式分解后向投影方法与GPU相结合的一种基于GPU后向投影双站合成孔径雷达成像方法,它一方面优化了传统快速因式分解后向投影方法的分级参数,与传统快速因式分解后向投影方法相比,本发明提升了成像处理效率;另一方面,将成像任务分离成若干个互不相关的子任务群,以便GPU对子任务群进行并行处理,并通过新颖的并行策略再次提升了处理效率。相较现有的双站SAR成像方法,本发明成像处理效率大幅提升,能够满足双基地前视合成孔径雷达(Bistatic forward synthetic aperture radar,简写为BFSAR)的高实时性、高分辨要求。
为了方便描述本发明的内容,首先作以下术语定义:
定义1、距离史、距离门
距离史是指接收机和发射机的天线相位中心到场景中散射点的距离之和。
距离门是指对应距离史的回波数据在整个回波数据中的位置。
定义2、雷达成像空间
雷达成像空间是指将场景空间中的散射点投影到距离向-方位向的二维空间坐标系,该空间由合成孔径雷达成像空间中的两个具有一定角度的坐标基确定。本发明中用以下数学关系表示成像空间M:
M = { P ‾ ( v , u ) | P ‾ ( v , u ) = v · ζ ‾ v + u · ζ ‾ u } ; u , v ∈ R
其中
Figure GDA0000457795130000023
表示构成成像空间M的坐标基,分别表示距离向和方位向,
Figure GDA0000457795130000024
为成像空间中的待观测点向量,u,v分别表示该点的距离和方位坐标,R表示实数。
定义3、合成孔径雷达成像场景参考点
合成孔径雷达成像场景参考点是指合成孔径雷达成像空间中的某个散射点,作为分析和处理场景中其他散射点的参照。
定义4、合成孔径雷达标准距离压缩方法
合成孔径雷达标准距离压缩方法是指利用合成孔径雷达发射参数,采用以下公式生成参考信号,并采用匹配滤波技术对合成孔径雷达的距离向信号进行滤波的过程。
f ( t ) = exp ( j · π · B T r · t 2 ) t ∈ [ - T r 2 , T r 2 ]
其中,j为虚数单位(即-1开根),f(t)为距离压缩参考函数,B为雷达发射基带信号的信号带宽,Tr为雷达发射信号脉冲宽度,t为时间变量,取值范围从
Figure GDA0000457795130000032
Figure GDA0000457795130000033
详见文献“雷达成像技术”,保铮等编著,电子工业出版社出版。
定义5、天线相位中心
天线相位中心是指雷达天线向外辐射信号的中心,本发明中天线相位中心指雷达天线的轨迹位置。
定义6、合成孔径与PRF时刻
合成孔径是指对于成像场景中的一个散射点从进入雷达波束照射范围至离开雷达波束照射范围的这段时间内,雷达波束中心所走过的长度。
雷达平台飞过一个合成孔径所需要的时间称为慢时间,雷达系统以一定的重复周期Tr发射接收脉冲,因此慢时间可以表示为一个以重复周期Tr为步长的离散化时间变量,其中每一个离散时间变量值为一个PRF时刻。
详见文献“合成孔径雷达成像原理”,皮亦鸣等编著,电子科技大学出版社出版。
定义7、标准辛格插值
标准辛格插值方法是指对于一个带限信号,在满足采样定理的情况下,采用卷积核为sinc的函数h(x),h(x)的长度即窗长为W。
h ( x ) = sin c ( x ) = sin ( πx ) πx
进行对已离散的信号gd(i)插值,得到插值后所要的信号
g ( x ) = Σ i g d ( i ) sin c ( x - i )
详见文献“雷达成像技术”,保铮等编著,电子工业出版社出版。
定义8、子孔径与子图像
子孔径是指截取合成孔径部分长度得到的新合成孔径。
子图像是指对子孔径进行成像处理得到的雷达图像。
定义9、范数
设X是数域C上线性空间,称||·||为X上的范数(norm),若它满足:1.正定性:||X||≥0,且||X||=0<=>X=0;2.齐次性:||aX||=|a|||X||;3.次可加性(三角不等式):||X+Y||≤||X||+||Y||。若X=[x1,x2,…,xN]T为N×1维离散信号,向量XLP范数为 | | X | | P = ( &Sigma; i = 1 N | x P | ) 1 / P , L1范数为 | | X | | 1 = &Sigma; i = 1 N | x | , L2范数为 | | X | | 2 = ( &Sigma; i = 1 N | x | 2 ) 1 2 .
定义10、图形处理器(简称:GPU)与计算统一设备架构(简称:CUDA)
图形处理器GPU(Graphic Processing Unit)是指一种高度并行化的多核处理器,其特点是能够利用大量的处理单元进行并行计算,大大提高运算效率。
计算统一设备架构CUDA(Compute Unified Device Architecture)是指由NVIDIA公式提出的将GPU作为数据并行计算设备的软硬件体系,使得开发人员在不需要图形学相关知识的情况下,使用类C语言实现通用计算。
详见文献“GPU高性能运算之CUDA”,张舒等编著,中国水利水电出版社出版。
定义11、GPU内核函数(kernel)、线程块(block)和线程(thread)
由主机端(Host)调用在设备端(Device)运行的函数称为内核函数(kernel),一个内核函数是整个程序中的一个可以被并行执行的步骤。内核函数以线程网格(Grid)的形式组织,线程网格由若干个线程块(block)组成,而每个线程块又由若干个线程(thread)组成。
线程块(block)是内核函数执行并行计算的第一层并行单元,各线程块间无法通信,没有执行顺序。
线程(thread)是内核函数执行并行计算的第二层并行单元,同一线程块中的线程可以共享数据,没有执行顺序。
详见文献“GPU高性能运算之CUDA”,张舒等编著,中国水利水电出版社出版。
定义12、线程块索引与线程索引
线程块索引是指每个线程块在线程网格中的位置,是CUDA的内建变量,线程块的第一维索引为blockIdx.x,线程块的第二维索引为blockIdx.y,线程块的第三维索引恒为1。
线程索引是指每个线程在线程块中的位置,是CUDA的内建变量,线程的第一维索引为threadIdx.x,线程的第二维索引为threadIdx.y,线程的第三维索引为threadIdx.z。
详见文献“GPU高性能运算之CUDA”,张舒等编著,中国水利水电出版社出版。
定义13、GPU全局存储器
GPU全局存储器(global memory)是GPU片外的存储器,可读写,作用范围是整个程序,整个线程网格中的任意线程都能读写全局存储器的任意位置,存储空间大,生命周期为整个程序。
详见文献“GPU高性能运算之CUDA”,张舒等编著,中国水利水电出版社出版。
定义14、GPU内存分配方法和GPU数据拷贝方法
GPU内存分配方法:采用CUDA函数库中的函数cudaMalloc()实现在全局存储器中分配存储空间。
GPU数据拷贝方法:采用CUDA函数库中的函数cudaMemcpy()实现计算机内存与GPU全局存储器之间的数据复制。
详见文献NVIDIA CUDA C Programming Guide Version4.03/6/2011和“GPU高性能运算之CUDA”,张舒等编著,中国水利水电出版社出版。
定义15、取整函数
取整函数是指将任一实数映射到相近的整数的一类函数,本发明中用到三个取整函数,分别为ceil、floor和round。
ceil(x)为向上取整函数,表示取不超过x的最大一个整数。
floor(x)为向下取整函数,表示取不小于x的最小一个整数。
round(x)为近似取整函数,表示按四舍五入原则对x取整。
本发明提出一种基于GPU后向投影双站合成孔径雷达成像方法,它包括以下步骤:
步骤1:初始化参数
初始化成像系统参数包括:雷达系统工作的信号波长,记做λ,雷达系统发射信号带宽,记做B,雷达系统发射脉冲时宽,记做Tr,雷达系统采样频率,记做Fs,雷达系统脉冲重复频率,记做PRF,雷达发射平台速度矢量,记做雷达接收平台速度矢量,记做
Figure GDA0000457795130000062
雷达发射平台初始位置矢量,记做
Figure GDA0000457795130000063
雷达接收平台初始位置矢量,记做
Figure GDA0000457795130000064
场景参考点位置矢量,记做
Figure GDA0000457795130000065
雷达系统距离向采样点数,记做Nr,雷达系统方位向采样点数,记做Na,光的传播速度,记做C,插值长度,记做W0
初始化场景参数:子图像距离向像素点间隔,记做dr,第一级子图像方位向像素点间隔,记做
Figure GDA00004577951300000612
子图像距离向总的像素点数,记做sr,第一级子图像方位向总的像素点数,记做
Figure GDA00004577951300000613
子孔径长度,记做b,即子孔径内有b个方位向采样点数;
雷达原始回波数据,记做
Figure GDA0000457795130000066
是一个二维的数据矩阵,雷达原始回波数据
Figure GDA0000457795130000067
数据矩阵每列数据是方位向回波信号的采样,每行的数据是逐个单脉冲距离向回波信号的采样;
线程块的第一维维度,记做Nblockx,线程块中线程的第一维索引,记做threadIdx.x,threadIdx.x=0,...,Nblockx,线程块的第二维维度,记做Nblocky,线程块中线程的第二维索引,记做threadIdx.y,threadIdx.y=0,...,Nblocky;初始化成像系统参数均由雷达系统提供,均为已知。
步骤2:计算天线相位中心历史位置
采用公式(1)计算得到雷达发射平台第n个PRF时刻的天线相位中心矢量 P t &OverBar; ( n ) ,
P t &OverBar; ( n ) = P t 0 &OverBar; + V t &OverBar; &CenterDot; n / PRF - - - ( 1 )
公式(1)中,
Figure GDA00004577951300000610
是步骤1提供的雷达发射平台初始位置矢量,
Figure GDA00004577951300000611
是步骤1提供的雷达发射平台速度矢量,PRF是步骤1提供的雷达系统脉冲重复频率,n=1,...,Na,n表示第n个PRF时刻,Na是步骤1提供的雷达系统方位向采样点数;
采用公式(2)计算得到雷达接收平台第n个PRF时刻的天线相位中心矢量 P r &OverBar; ( n ) ,
P r &OverBar; ( n ) = P r 0 &OverBar; + V r &OverBar; &CenterDot; n / PRF - - - ( 2 )
公式(2)中,
Figure GDA0000457795130000073
是步骤1提供的雷达接收平台初始位置矢量,
Figure GDA0000457795130000074
是步骤1提供的雷达接收平台速度矢量,PRF是步骤1提供的雷达系统脉冲重复频率,n=1,...,Na,n表示第n个雷达系统脉冲重复频率PRF时刻,Na是步骤1提供的雷达系统方位向采样点数;发射平台所有Na个PRF时刻的天线相位中心矢量占用的存储空间大小,记做Pt_size,接收平台所有Na个PRF时刻的天线相位中心矢量占用的存储空间大小,记做Pr_size
步骤3:雷达原始回波数据距离压缩
对步骤1中的雷达原始回波数据采用传统的合成孔径雷达标准距离压缩方法进行压缩,得到距离压缩后的数据
Figure GDA0000457795130000076
占用的存储空间大小记做SRC_size
步骤4:为图形处理器GPU准备数据
步骤4.1:采用传统的GPU内存分配方法,在图形处理器GPU的全局存储器上分配大小为Pt_size的存储空间,记做
Figure GDA0000457795130000077
采用传统的GPU内存分配方法,在图形处理器GPU的全局存储器上分配大小为Pr_size的存储空间,记做
采用传统的GPU内存分配方法,在图形处理器GPU的全局存储器上分配大小为SRC_size的存储空间,记做
Figure GDA0000457795130000079
步骤4.2:采用传统的GPU数据拷贝方法,将步骤2中得到雷达发射平台天线相位中心矢量
Figure GDA00004577951300000710
复制到步骤4.1得到的图形处理器GPU的存储空间
Figure GDA00004577951300000711
中;
采用传统的GPU数据拷贝方法,将步骤2中得到雷达接收平台天线相位中心矢量
Figure GDA0000457795130000081
复制到步骤4.1得到的图形处理器GPU的存储空间
Figure GDA0000457795130000082
中,n=1,...,Na,Na为雷达系统方位向采样点数;
采用传统的GPU数据拷贝方法,将步骤3中得到的距离压缩后的数据
Figure GDA0000457795130000083
复制到步骤4.1得到的图形处理器GPU的存储空间
Figure GDA0000457795130000084
中;
步骤5:第一级子图像生成
步骤5.1:采用公式(3)计算得到第一级子图像中像素点P(1)(a(1),r(1))的位置矢量
P &OverBar; ( 1 ) ( a ( 1 ) , r ( 1 ) ) = P 0 &OverBar; + ( r ( 1 ) - 1 ) &CenterDot; d r &CenterDot; &zeta; &OverBar; u + ( a ( 1 ) - 1 ) &CenterDot; d a ( 1 ) &CenterDot; &zeta; &OverBar; v - - - ( 3 )
公式(3)中,
Figure GDA0000457795130000087
是步骤1提供的场景参考点位置矢量,
Figure GDA0000457795130000088
Figure GDA0000457795130000089
表示构成雷达成像空间M的坐标基,r(1)表示像素点位于子图像距离向的第r(1)个位置,r(1)=1,...,sr,sr为子图像距离向总的像素点数,a(1)表示像素点位于第一级子图像方位向的第a(1)个位置,
Figure GDA00004577951300000816
为第一级子图像方位向总的像素点数,dr是子图像距离向像素点间隔,
Figure GDA00004577951300000817
是第一级子图像方位向像素点间隔,第一级子图像所有像素点的位置矢量占用的存储空间大小记做P(1) size
步骤5.2:采用传统的GPU内存分配方法,在图形处理器GPU的全局存储器上分配大小为P(1) size的存储空间,记做
采用传统的GPU数据拷贝方法,将步骤5.1中提供的所有像素点的位置矢量
Figure GDA00004577951300000811
复制到图形处理器GPU的存储空间
Figure GDA00004577951300000812
中,a(1)表示像素点位于第一级子图像方位向的第a(1)个位置,为第一级子图像方位向总的像素点数,r(1)表示像素点位于子图像距离向的第r(1)个位置,r(1)=1,...,sr,sr为第一级子图像距离向总的像素点数;
步骤5.3:由步骤1提供的线程块第一维维度Nblockx和子图像距离向总的像素点数sr,采用公式(4)得到线程网格的第一维维度
Figure GDA00004577951300000814
N gridx ( 1 ) = floor ( ( s r + N blockx - 1 ) / N blockx ) - - - ( 4 )
由步骤1提供的线程块第二维维度Nblocky和第一级子图像方位向总的像素点数
Figure GDA0000457795130000092
采用公式(5)得到线程网格的第二维维度
Figure GDA0000457795130000093
N gridy ( 1 ) = floor ( ( s a ( 1 ) + N blocky - 1 ) / N blocky ) - - - ( 5 )
公式(5)中floor为向下取整函数,从而得到线程网格中线程块的第一维索引blockIdx.x(1)以及线程网格中线程块的第二维索引blockIdx.y(1) blockIdx . y ( 1 ) = 0 , . . . , N gridy ( 1 ) ;
步骤5.4:将子图像像素点P(1)(a(1),r(1))与线程网格中的线程一一对应,具体方法是:
对于像素点P(1)(a(1),r(1)),将其与索引标识为blockIdx.x(1),blockIdx.y(1),threadIdx.x,threadIdx.y的线程对应,它们的对应关系为公式(6)和公式(7):
a(1)=threadIdx.x+blockIdx.x(1)·Nblockx+1   (6)
r(1)=threadIdx.y+blockIdx.y(1)·Nblocky+1   (7)
公式(6)和公式(7)中,a(1)表示像素点位于子图像方位向的第a(1)个位置,
Figure GDA0000457795130000097
为第一级子图像方位向总的像素点数,r(1)表示像素点位于子图像距离向的第r(1)个位置,r(1)=1,...,sr,sr为第一级子图像距离向总的像素点数,threadIdx.x为每个线程块中线程的第一维索引,threadIdx.x=0,...,Nblockx,Nblockx为每个线程块的第一维维度,threadIdx.y为每个线程块中线程的第二维索引,threadIdx.y=0,...,Nblocky,Nblocky为每个线程块的第二维维度,blockIdx.x(1)是步骤5.3中得到的线程网格中线程块的第一维索引,blockIdx.y(1)是步骤5.3中得到的线程网格中线程块的第二维索引;
步骤5.5:利用步骤2中提供的公式(1)
Figure GDA0000457795130000098
n=1+b·(j(1)-1),+...,+b·j(1)   (8)
得到发射平台的位置矢量
Figure GDA0000457795130000101
利用步骤2中提供的公式(2)
Figure GDA0000457795130000102
和公式(8),得到接收平台的位置矢量
Figure GDA0000457795130000103
其中,
Figure GDA0000457795130000104
是雷达发射平台初始位置矢量,
Figure GDA0000457795130000105
是雷达发射平台速度矢量,PRF是雷达系统脉冲重复频率,
Figure GDA0000457795130000106
是雷达接收平台初始位置矢量,是雷达接收平台速度矢量,j(1)是子图像的索引,b为子孔径长度,n表示第n个PRF时刻;
再利用步骤5.1中得到的
Figure GDA0000457795130000108
采用公式(9)得到双基地雷达距离史R(1)(n),
R ( 1 ) ( n ) = | | P t &OverBar; ( n ) - P &OverBar; ( 1 ) ( a ( 1 ) , r ( 1 ) ) | | 2 + | | P r &OverBar; ( n ) - P &OverBar; ( 1 ) ( a ( 1 ) , r ( 1 ) ) | | 2 - - - ( 9 )
公式(9)中,||·||2为L2范数,a(1)表示像素点位于子图像方位向的第a(1)个位置,
Figure GDA00004577951300001011
Figure GDA00004577951300001012
为第一级子图像方位向总的像素点数,r(1)表示像素点位于子图像距离向的第r(1)个位置,r(1)=1,...,sr,sr为第一级子图像距离向总的像素点数;
步骤5.6:利用步骤5.5得到的双基地雷达距离史R(1)(n),采用公式(10)得到双基地雷达距离史R(1)(n)对应的距离门位置ID(n),
ID(n)=R(1)(n)·Fs/C   (10)
公式(10)中,Fs是雷达系统采样频率,C是光的传播速度,在步骤3得到的距离压缩后的回波数据矩阵
Figure GDA00004577951300001013
中取出位于ID(n)-mm列的数据B(n),其中,mm=-W0/2,...,W0/2,是一个整数序列,W0为插值长度,采用标准辛格插值方法对取出的数据B(n)进行插值,得到插值重采样后的数据C(n),n表示第n个PRF时刻,n=1+b·(j(1)-1),...,b·j(1),j(1)是子图像的索引,b是子孔径长度;
定义补偿相位因子为
Figure GDA00004577951300001010
将重采样后的数据C(n)与补偿相位因子K(n)相乘,得到相位补偿后的数据A(n),其中j为虚数单位(即-1开根),R(1)(n)为步骤5.5中得到的距离史,λ为雷达系统工作的信号波长,n表示第n个PRF时刻,n=1+b·(j(1)-1),+...,+b·j(1),j(1)是子图像的索引,b是子孔径长度;
n=1+b·(j(1)-1),+...,+b·j(1),由于第n个雷达系统脉冲重复频率PRF时刻n是一个整数序列,因此得到的A(n)也是一个数据序列,
将数据序列A(n)中的所有数据相加,得到像素点P(1)(a(1),r(1))的像素值矩阵
Figure GDA0000457795130000111
其中n表示第n个雷达系统脉冲重复频率PRF时刻,j(1)是子图像的索引,b是子孔径长度,a(1)表示像素点位于子图像方位向的第a(1)个位置,
Figure GDA0000457795130000118
Figure GDA0000457795130000119
为第一级子图像方位向总的像素点数,r(1)表示像素点位于子图像距离向的第r(1)个位置,r(1)=1,...,sr,sr为第一级子图像距离向总的像素点数;
步骤6:子图像融合
步骤6.1:采用公式(11)计算得到第二级子图像方位向像素点间隔
Figure GDA00004577951300001110
d a ( 2 ) = d a ( 1 ) / b - - - ( 11 )
采用公式(12)计算得到第二级子图像方位向总的像素点数
Figure GDA00004577951300001111
s a ( 2 ) = s a ( 1 ) &CenterDot; b - - - ( 12 )
公式(11)、公式(12)中,
Figure GDA0000457795130000114
为第一级子图像方位向像素点间隔,b为子孔径长度,
Figure GDA0000457795130000115
为第一级子图像方位向总的像素点数;
采用公式(13)计算得到第二级子图像中像素点P(2)(a(2),r(2))的位置矢量 P &OverBar; ( 2 ) ( a ( 2 ) , r ( 2 ) ) ,
P &OverBar; ( 2 ) ( a ( 2 ) , r ( 2 ) ) = P 0 &OverBar; + ( r ( 2 ) - 1 ) &CenterDot; d r &CenterDot; &zeta; &OverBar; u + ( a ( 2 ) - 1 ) &CenterDot; d a ( 2 ) &CenterDot; &zeta; &OverBar; v - - - ( 13 )
采用公式(13)中,
Figure GDA0000457795130000121
是场景参考点位置矢量,
Figure GDA0000457795130000122
Figure GDA0000457795130000123
是定义2中定义的成像空间的坐标基,dr是子图像距离向像素点间隔,r(2)表示像素点位于子图像距离向的第r(2)个位置,r(2)=1,...,sr,sr为子图像距离向总的像素点数,a(2)表示像素点位于第二级子图像方位向的第a(2)个位置,
Figure GDA0000457795130000124
为第二级子图像方位向总的像素点数,第二级子图像所有像素点的位置矢量占用的存储空间大小记做P(2) size
步骤6.2:采用传统的GPU内存分配方法,在图形处理器GPU的全局存储器上分配大小为P(2) size的存储空间,记做
Figure GDA0000457795130000126
采用传统的GPU数据拷贝方法,将步骤6.1中得到的所有像素点的位置矢量
Figure GDA0000457795130000127
复制到图形处理器GPU的存储空间
Figure GDA0000457795130000128
中,
Figure GDA0000457795130000129
为第二级子图像方位向总的像素点数,r(2)=1,...,sr,sr为子图像距离向总的像素点数;
步骤6.3:由步骤1提供的线程块第一维维度Nblockx和子图像距离向总的像素点数sr,采用公式(14)得到线程网格的第一维维度
Figure GDA00004577951300001210
N gridx ( 2 ) = floor ( ( s r + N blockx - 1 ) / N blockx ) - - - ( 14 )
由步骤1提供的线程块第二维维度Nblocky和步骤6.1中提供的第二级子图像方位向总的像素点数
Figure GDA00004577951300001212
采用公式(15)得到线程网格的第二维维度
Figure GDA00004577951300001213
N gridy ( 2 ) = floor ( ( s a ( 2 ) + N blocky - 1 ) / N blocky ) - - - ( 15 )
公式(14)、公式(15)中,floor为向下取整函数,从而得到线程网格中线程块的第一维索引blockIdx.x(2)
Figure GDA00004577951300001215
以及线程网格中线程块的第二维索引blockIdx.y(2) blockIdx . y ( 2 ) = 0 , . . . , N gridy ( 2 ) ;
步骤6.4:将子图像像素点P(2)(a(2),r(2))与线程网格中的线程一一对应,具体方法是:对于像素点P(2)(a(2),r(2)),将其与索引标识为blockIdx.x(2),blockIdx.y(2),threadIdx.x,threadIdx.y的线程对应,它们的对应关系为公式(16)和公式(17):
a(2)=threadIdx.x+blockIdx.x(2)·Nblockx+1   (16)
r(2)=threadIdx.y+blockIdx.y(2)·Nblocky+1   (17)
公式(16)和公式(17)中,a(2)表示像素点位于子图像方位向的第a(2)个位置,
Figure GDA0000457795130000131
为第二级子图像方位向总的像素点数,r(2)表示像素点位于子图像距离向的第r(2)个位置,r(2)=1,...,sr,sr为第二级子图像距离向总的像素点数,threadIdx.x为每个线程块中线程的第一维索引,threadIdx.x=0,...,Nblockx,Nblockx为每个线程块的第一维维度,threadIdx.y为每个线程块中线程的第二维索引,threadIdx.y=0,...,Nblocky,Nblocky为每个线程块的第二维维度,blockIdx.x(2)是步骤6.3中得到的线程网格中线程块的第一维索引,blockIdx.y(2)是步骤6.3中得到的线程网格中线程块的第二维索引;
步骤6.5:将n=round(b/2)+(j(1)-1)·b代入步骤2中提供的公式(1)中,
P t &OverBar; ( n ) = P t 0 &OverBar; + V t &OverBar; &CenterDot; n / PRF - - - ( 1 )
得到发射平台的位置矢量
Figure GDA0000457795130000133
将n=round(b/2)+(j(1)-1)·b代入步骤2中提供的公式(2)中,
P r &OverBar; ( n ) = P r 0 &OverBar; + V r &OverBar; &CenterDot; n / PRF - - - ( 2 )
得到接收平台的位置矢量
Figure GDA0000457795130000135
其中,
Figure GDA0000457795130000136
是雷达发射平台初始位置矢量,
Figure GDA0000457795130000137
是雷达发射平台速度矢量,PRF是雷达系统脉冲重复频率,
Figure GDA0000457795130000138
是雷达接收平台初始位置矢量,
Figure GDA0000457795130000139
是雷达接收平台速度矢量,round为近似取整函数,j(1)步骤5得到的
Figure GDA00004577951300001310
的索引,b为子孔径长度,n表示第n个PRF时刻,再利用步骤6.1中得到的
Figure GDA00004577951300001311
采用公式 R ( 2 ) ( n ) = | | P t &OverBar; ( n ) - P &OverBar; ( 2 ) ( a ( 2 ) , r ( 2 ) ) | | 2 + | | P r &OverBar; ( n ) - P &OverBar; ( 2 ) ( a ( 2 ) , r ( 2 ) ) | | 2 得到双基地雷达距离史R(2)(n),采用公式 RR = | | P t &OverBar; ( m ) - P &OverBar; ( 2 ) ( a ( 2 ) , r ( 2 ) ) | | 2 + | | P r &OverBar; ( m ) - P &OverBar; ( 2 ) ( a ( 2 ) , r ( 2 ) ) | | 2 得到参考距离RR,其中,m=round(Na/2),是合成孔径的中心位置,||·||2为L2范数,Na是雷达系统方位向采样点数,n表示第n个PRF时刻,a(2)表示像素点位于子图像方位向的第a(2)个位置,
Figure GDA0000457795130000142
为第二级子图像方位向总的像素点数,r(2)表示像素点位于子图像距离向的第r(2)个位置,r(2)=1,...,sr,sr为第二级子图像距离向总的像素点数;
步骤6.6:从步骤5得到的
Figure GDA0000457795130000143
中取出位于第aa行,第rr列的数据
Figure GDA0000457795130000144
其中,aa=round(a(2)/b),表示像素点位于
Figure GDA0000457795130000145
的第aa行,rr=round(r(2)/b),表示像素点位于
Figure GDA0000457795130000146
的第rr列,a(1)表示像素点位于子图像方位向的第a(1)个位置,为第一级子图像方位向总的像素点数,r(1)表示像素点位于子图像距离向的第r(1)个位置,r(1)=1,...,sr,sr为第一级子图像距离向总的像素点数,round为近似取整函数,j(1)
Figure GDA0000457795130000148
的索引;
定义补偿相位因子 K ( 2 ) ( n ) = exp { j 2 &pi; R ( 2 ) ( n ) - RR &lambda; } , 将取出的数据
Figure GDA00004577951300001410
与补偿相位因子K(2)(n)相乘,得到相位补偿后的数据序列A(2)(n),其中j为虚数单位(即-1开根),R(2)(n)为步骤6.5中得到的距离史,RR是步骤6.5中得到的参考距离,λ为雷达系统工作的信号波长,n表示第n个PRF时刻;
将得到的相位补偿后的数据序列A(2)(n)中的所有数据相加,得到像素点P(2)(a(2),r(2))的像素值矩阵
Figure GDA00004577951300001411
其中n表示第n个PRF时刻,a(2)表示像素点位于子图像方位向的第a(2)个位置,
Figure GDA00004577951300001412
为第二级子图像方位向总的像素点数,r(2)表示像素点位于子图像距离向的第r(2)个位置,r(2)=1,...,sr,sr为第二级子图像距离向总的像素点数;
步骤7:数据输出
采用传统的GPU数据拷贝方法,将步骤6.6中得到的成像后的数据从图形处理器GPU中导出,其中,
Figure GDA0000457795130000152
为第二级子图像方位向总的像素点数,r(2)=1,...,sr,sr为第二级子图像距离向总的像素点数。
本发明的创新点在于针对当前的双站SAR成像方法所具有的处理效率低下,实时性差的缺点,提出了一种新的双站SAR成像方案,此方法将快速因式分解后向投影方法与GPU并行实现相结合,实现了双站SAR快速成像。
本发明的优点在于利用了较易获得的硬件,实现了大数据处理量的双站SAR快速成像,与现有的方法相比,该方法既保持了时域方法内存开销小,易进行运动补偿等优点,而且处理效率也大幅提升,同时还能够获得高质量的成像结果。
附图说明
图1为本发明具体实施方式采用的双站合成孔径雷达飞行几何关系图
其中Pt为发射平台在坐标系中的飞行轨迹;Pr为接收平台在坐标系中的飞行轨迹;P表示场景中的待测点;X、Y、Z表示场景坐标轴;at表示发射平台雷达波束指向单位向量;ar表示接收平台雷达波束指向单位向量;Vt表示发射机的速度矢量;Vr表示接收机的速度矢量。
图2是步骤5的流程示意图
图3为步骤6的流程示意图
图4为本发明的流程示意图
图5是本发明所使用的仿真参数列表
具体实施方式
本发明主要采用仿真实验的方法进行验证该方案的可行性,所有步骤、结论都在MATLAB7.0,Visual Studio2010和GeForce GT240显卡上验证正确。具体实施步骤如下:
步骤1:初始化参数
参数详见附图5;
步骤2:计算天线相位中心历史位置
采用公式
Figure GDA0000457795130000161
计算得到雷达发射平台第n个PRF时刻的天线相位中心矢量采用公式计算得到雷达接收平台第n个PRF时刻的天线相位中心矢量
Figure GDA0000457795130000164
n表示第n个PRF时刻,发射平台所有1024个PRF时刻的天线相位中心矢量占用的存储空间大小,记做Pt_size=3·1024·8byte,接收平台所有1024个PRF时刻的天线相位中心矢量占用的存储空间大小,记做Pr_size=3·1024·8byte;
步骤3:雷达原始回波数据距离压缩
对步骤1中的雷达原始回波数据
Figure GDA0000457795130000165
采用传统的合成孔径雷达标准距离压缩方法进行压缩,得到距离压缩后的数据
Figure GDA0000457795130000166
占用的存储空间大小记做SRC_size=1024·2048·8·2byte;
步骤4:为图形处理器GPU准备数据
步骤4.1:采用传统的GPU内存分配方法,在图形处理器GPU的全局存储器上分配大小为Pt_size的存储空间,记做
Figure GDA0000457795130000167
采用传统的GPU内存分配方法,在图形处理器GPU的全局存储器上分配大小为Pr_size的存储空间,记做
Figure GDA0000457795130000168
采用传统的GPU内存分配方法,在图形处理器GPU的全局存储器上分配大小为SRC_size的存储空间,记做
步骤4.2:采用传统的GPU数据拷贝方法,将步骤2中得到雷达发射平台所有1024个PRF时刻的天线相位中心矢量
Figure GDA00004577951300001610
复制到图形处理器GPU的存储空间
Figure GDA00004577951300001611
中;采用传统的GPU数据拷贝方法,将步骤2中得到雷达接收平台所有1024个PRF时刻的天线相位中心矢量
Figure GDA00004577951300001612
复制到图形处理器GPU的存储空间
Figure GDA00004577951300001613
中,n=1,...,1024;采用传统的GPU数据拷贝方法,将步骤3中得到的距离压缩后的数据
Figure GDA00004577951300001614
复制到图形处理器GPU的存储空间
Figure GDA00004577951300001615
中;
步骤5:第一级子图像生成
步骤5.1:采用公式 P &OverBar; ( 1 ) ( a ( 1 ) , r ( 1 ) ) = P 0 &OverBar; + ( r ( 1 ) - 1 ) &CenterDot; 0.5 &CenterDot; &zeta; &OverBar; u + ( a ( 1 ) - 1 ) &CenterDot; 6.4 &CenterDot; &zeta; &OverBar; v 计算得到第一级子图像中像素点P(1)(a(1),r(1))的位置矢量
Figure GDA0000457795130000172
r(1)表示像素点位于子图像距离向的第r(1)个位置,r(1)=1,...,100,a(1)表示像素点位于第一级子图像方位向的第a(1)个位置,a(1)=1,...,10,第一级子图像所有像素点的位置矢量占用的存储空间大小记做P(1) size=10·100·8·2byte;
步骤5.2:采用传统的GPU内存分配方法,在图形处理器GPU的全局存储器上分配大小为P(1) size的存储空间,记做
Figure GDA0000457795130000173
采用传统的GPU数据拷贝方法,将步骤5.1中得到的所有像素点的位置矢量复制到图形处理器GPU的存储空间中,a(1)=1,...,10,r(1)=1,...,100;
步骤5.3:由步骤1提供的线程块第一维维度Nblockx=8和子图像距离向总的像素点数sr=100,采用公式 N gridx ( 1 ) = floor ( ( s r + N blockx - 1 ) / N blockx ) 得到线程网格的第一维维度
Figure GDA0000457795130000177
由步骤1提供的线程块第二维维度Nblocky=8和第一级子图像方位向总的像素点数
Figure GDA0000457795130000178
采用公式 N gridy ( 1 ) = floor ( ( s a ( 1 ) + N blocky - 1 ) / N blocky ) 得到线程网格的第二维维度 N gridy ( 1 ) = 2 , 其中floor为向下取整函数,从而得到线程网格中线程块的第一维索引blockIdx.x(1),blockIdx.x(1)=0,...,12,以及线程网格中线程块的第二维索引blockIdx.y(1),blockIdx.y(1)=0,...,1;
步骤5.4:将子图像像素点P(1)(a(1),r(1))与线程网格中的线程一一对应,方法是:对于像素点P(1)(a(1),r(1)),将其与索引标识为blockIdx.x(1),blockIdx.y(1),threadIdx.x,threadIdx.y的线程对应,他们的对应关系为a(1)=threadIdx.x+blockIdx.x(1)·8+1,r(1)=threadIdx.y+blockIdx.y(1)·8+1,a(1)表示像素点位于子图像方位向的第a(1)个位置,a(1)=1,...,10,r(1)表示像素点位于子图像距离向的第r(1)个位置,r(1)=1,...,100,threadIdx.x为每个线程块中线程的第一维索引,threadIdx.x=0,...,7,threadIdx.y为每个线程块中线程的第二维索引,threadIdx.y=0,...,7;
步骤5.5:利用步骤2中提供的公式代入n=1+32·(j(1)-1),...,32·j(1),得到发射平台的位置矢量
Figure GDA0000457795130000182
利用步骤2中提供的公式
Figure GDA0000457795130000183
代入n=1+32·(j(1)-1),...,32·j(1),得到接收平台的位置矢量
Figure GDA0000457795130000184
j(1)是子图像的索引j(1)=1,...,32,再利用步骤5.1中得到的
Figure GDA0000457795130000185
采用公式 R ( 1 ) ( n ) = | | P t &OverBar; ( n ) - P &OverBar; ( 1 ) ( a ( 1 ) , r ( 1 ) ) | | 2 + | | P r &OverBar; ( n ) - P &OverBar; ( 1 ) ( a ( 1 ) , r ( 1 ) ) | | 2 得到双基地雷达距离史R(1)(n),||·||2为L2范数,n表示第n个PRF时刻,a(1)表示像素点位于子图像方位向的第a(1)个位置,a(1)=1,...,10,r(1)表示像素点位于子图像距离向的第r(1)个位置,r(1)=1,...,100;
步骤5.6:利用步骤5.5得到的双基地雷达距离史R(1)(n),采用公式ID(n)=R(1)(n)·390/300得到双基地雷达距离史R(1)(n)对应的距离门位置ID(n),在步骤3得到的距离压缩后的回波数据矩阵中取出位于ID(n)-mm列的数据B(n),其中,mm=-8,...,8,是一个整数序列,采用标准辛格插值方法对取出的数据B(n)进行插值,得到插值重采样后的数据C(n),n表示第n个PRF时刻,n=1+32·(j(1)-1),...,32·j(1),j(1)是子图像的索引;
将重采样后的数据C(n)与补偿相位因子K(n)相乘,得到相位补偿后的数据序列A(n),其中j为虚数单位(即-1开根),R(1)(n)为步骤5.5中得到的距离史,n表示第n个PRF时刻,n=1+32·(j(1)-1),...,32·j(1),j(1)是子图像的索引;
将子孔径内的32个PRF时刻的相位补偿后的数据A(n)相加,n=1+32·(j(1)-1),...,32·j(1),得到像素点P(1)(a(1),r(1))的像素值矩阵
Figure GDA0000457795130000191
其中n表示第n个PRF时刻,j(1)是子图像的索引,a(1)表示像素点位于子图像方位向的第a(1)个位置,a(1)=1,...,10,r(1)表示像素点位于子图像距离向的第r(1)个位置,r(1)=1,...,100;
步骤六:子图像融合
步骤6.1:采用公式计算得到第二级子图像方位向像素点间隔
Figure GDA0000457795130000193
采用公式
Figure GDA0000457795130000194
计算得到第二级子图像方位向总的像素点数
Figure GDA0000457795130000195
Figure GDA0000457795130000196
为第一级子图像方位向像素点间隔,为第一级子图像方位向总的散射点数,采用公式 P &OverBar; ( 2 ) ( a ( 2 ) , r ( 2 ) ) = P 0 &OverBar; + ( r ( 2 ) - 1 ) &CenterDot; 0.5 &CenterDot; &zeta; &OverBar; u + ( a ( 2 ) - 1 ) &CenterDot; 0.2 &CenterDot; &zeta; &OverBar; v 计算得到第二级子图像中像素点P(2)(a(2),r(2))的位置矢量r(2)表示像素点位于子图像距离向的第r(2)个位置,r(2)=1,...,100,a(2)表示像素点位于第二级子图像方位向的第a(2)个位置,a(2)=1,...,320,第二级子图像所有像素点的位置矢量占用的存储空间大小记做P(2) size=320·100·8·2byte;
步骤6.2:采用传统的GPU内存分配方法,在图形处理器GPU的全局存储器上分配大小为P(2) size的存储空间,记做
Figure GDA00004577951300001910
采用传统的GPU数据拷贝方法,将步骤6.1中得到的所有像素点的位置矢量
Figure GDA00004577951300001911
复制到图形处理器GPU的存储空间
Figure GDA00004577951300001912
中,a(2)=1,...,320,r(2)=1,...,100;
步骤6.3:由步骤1中的Nblockx=8和sr=100,采用公式 N gridx ( 2 ) = floor ( ( s r + N blockx - 1 ) / N blockx ) 得到线程网格的第一维维度 N gridx ( 2 ) = 13 , 由步骤1中的Nblocky=8和 s a ( 2 ) = 320 , 采用公式 N gridy ( 2 ) = floor ( ( s a ( 2 ) + N blocky - 1 ) / N blocky ) 得到线程网格的第二维维度
Figure GDA00004577951300001917
其中floor为向下取整函数,从而得到线程网格中线程块的第一维索引blockIdx.x(2),blockIdx.x(2)=0,...,12,以及线程网格中线程块的第二维索引blockIdx.y(2),blockIdx.y(2)=0,...,39;
步骤6.4:将子图像像素点P(2)(a(2),r(2))与线程网格中的线程一一对应,方法是:对于像素点P(2)(a(2),r(2)),将其与索引标识为blockIdx.x(2),blockIdx.y(2),threadIdx.x,threadIdx.y的线程对应,他们的对应关系为a(2)=threadIdx.x+blockIdx.x(2)·8+1,r(2)=threadIdx.y+blockIdx.y(2)·8+1,a(2)表示像素点位于子图像方位向的第a(2)个位置,a(2)=1,...,320,r(2)表示像素点位于子图像距离向的第r(2)个位置,r(2)=1,...,100,threadIdx.x为每个线程块中线程的第一维索引,threadIdx.x=0,...,7,threadIdx.y为每个线程块中线程的第二维索引,threadIdx.y=0,...,7;
步骤6.5:利用步骤2中提供的公式
Figure GDA0000457795130000201
代入n=round(32/2)+(j(1)-1)·32,得到发射平台的位置矢量
Figure GDA0000457795130000202
利用步骤2中提供的公式
Figure GDA0000457795130000203
代入n=round(32/2)+(j(1)-1)·32,得到接收平台的位置矢量
Figure GDA0000457795130000204
j(1)是第一级子图像
Figure GDA0000457795130000205
的索引,j(1)=1,...,32,采用公式 R ( 2 ) ( n ) = | | P t &OverBar; ( n ) - P &OverBar; ( 2 ) ( a ( 2 ) , r ( 2 ) ) | | 2 + | | P r &OverBar; ( n ) - P &OverBar; ( 2 ) ( a ( 2 ) , r ( 2 ) ) | | 2 得到双站距离史R(2)(n),采用公式 RR = | | P t &OverBar; ( m ) - P &OverBar; ( 2 ) ( a ( 2 ) , r ( 2 ) ) | | 2 + | | P r &OverBar; ( m ) - P &OverBar; ( 2 ) ( a ( 2 ) , r ( 2 ) ) | | 2 得到参考距离RR,m是合成孔径中心位置,m=512,round为近似取整函数,||·||2为L2范数,n表示第n个PRF时刻,a(2)表示像素点位于子图像方位向的第a(2)个位置,a(2)=1,...,320,r(2)表示像素点位于子图像距离向的第r(2)个位置,r(2)=1,...,100;
步骤6.6:采用公式aa=round(a(2)/32),rr=round(r(2)/32)从第一级子图像
Figure GDA0000457795130000208
中取出第aa行,第rr列的数据
Figure GDA0000457795130000209
其中,a(1)=1,...,10,r(1)=1,...,100,round为近似取整函数,j(i)是第一级子图像
Figure GDA00004577951300002010
的索引,j(1)=1,...,32;
将取出的数据
Figure GDA0000457795130000211
与补偿相位因子K(2)(n)相乘, K ( 2 ) ( n ) = exp { j 2 &pi; R ( 2 ) ( n ) - RR 0.03 } , 得到相位补偿后的数据序列A(2)(n),其中j为虚数单位(即-1开根),R(2)(n)为步骤6.5中得到的距离史,n表示第n个PRF时刻,n=round(32/2)+(j(1)-1)·32,j(1)是第一级子图像的索引;
将得到的所有相位补偿后的数据A(2)(n)相加,得到像素点P(2)(a(2),r(2))的像素值矩阵
Figure GDA0000457795130000213
其中n表示第n个PRF时刻,a(2)表示像素点位于子图像方位向的第a(2)个位置,a(2)=1,...,320,r(2)表示像素点位于子图像距离向的第r(2)个位置,r(2)=1,...,100;
步骤七:数据输出
采用传统的GPU数据拷贝方法,将步骤6.6中得到的成像后的数据a(2)=1,...,320,r(2)=1,...,100,从图形处理器GPU中导出。

Claims (1)

1.一种基于GPU后向投影双站合成孔径雷达成像方法,其特征是它包括以下步骤:
步骤1:初始化参数
初始化成像系统参数包括:雷达系统工作的信号波长,记做λ,雷达系统发射信号带宽,记做B,雷达系统发射脉冲时宽,记做Tr,雷达系统采样频率,记做Fs,雷达系统脉冲重复频率,记做PRF,雷达发射平台速度矢量,记做
Figure FDA0000444292990000011
雷达接收平台速度矢量,记做
Figure FDA0000444292990000012
雷达发射平台初始位置矢量,记做
Figure FDA0000444292990000013
雷达接收平台初始位置矢量,记做
Figure FDA0000444292990000014
场景参考点位置矢量,记做雷达系统距离向采样点数,记做Nr,雷达系统方位向采样点数,记做Na,光的传播速度,记做C,插值长度,记做W0
初始化场景参数:子图像距离向像素点间隔,记做dr,第一级子图像方位向像素点间隔,记做
Figure FDA0000444292990000016
子图像距离向总的像素点数,记做sr,第一级子图像方位向总的像素点数,记做
Figure FDA0000444292990000017
子孔径长度,记做b,即子孔径内有b个方位向采样点数;
雷达原始回波数据,记做
Figure FDA0000444292990000018
是一个二维的数据矩阵,雷达原始回波数据
Figure FDA0000444292990000019
数据矩阵每列数据是方位向回波信号的采样,每行的数据是逐个单脉冲距离向回波信号的采样;
线程块的第一维维度,记做Nblockx,线程块中线程的第一维索引,记做threadIdx.x,threadIdx.x=0,...,Nblockx,线程块的第二维维度,记做Nblocky,线程块中线程的第二维索引,记做threadIdx.y,threadIdx.y=0,...,Nblocky;初始化成像系统参数均由雷达系统提供,均为已知;
步骤2:计算天线相位中心历史位置
采用公式(1)计算得到雷达发射平台第n个PRF时刻的天线相位中心矢量
Figure FDA00004442929900000110
P t &OverBar; ( n ) = P t 0 &OverBar; + V t &OverBar; &CenterDot; n / PRF - - - ( 1 )
公式(1)中,
Figure FDA0000444292990000021
是步骤1提供的雷达发射平台初始位置矢量,是步骤1提供的雷达发射平台速度矢量,PRF是步骤1提供的雷达系统脉冲重复频率,n=1,...,Na,n表示第n个PRF时刻,Na是步骤1提供的雷达系统方位向采样点数;
采用公式(2)计算得到雷达接收平台第n个PRF时刻的天线相位中心矢量
Figure FDA0000444292990000023
P r &OverBar; ( n ) = P r 0 &OverBar; + V r &OverBar; &CenterDot; n / PRF - - - ( 2 )
公式(2)中,
Figure FDA0000444292990000025
是步骤1提供的雷达接收平台初始位置矢量,是步骤1提供的雷达接收平台速度矢量;发射平台所有Na个PRF时刻的天线相位中心矢量占用的存储空间大小,记做Pt_size,接收平台所有Na个PRF时刻的天线相位中心矢量占用的存储空间大小,记做Pr_size
步骤3:雷达原始回波数据距离压缩
对步骤1中的雷达原始回波数据
Figure FDA0000444292990000027
采用传统的合成孔径雷达标准距离压缩方法进行压缩,得到距离压缩后的数据
Figure FDA0000444292990000028
占用的存储空间大小记做SRC_size
步骤4:为图形处理器GPU准备数据
步骤4.1:采用传统的GPU内存分配方法,在图形处理器GPU的全局存储器上分配大小为Pt_size的存储空间,记做
Figure FDA0000444292990000029
采用传统的GPU内存分配方法,在图形处理器GPU的全局存储器上分配大小为Pr_size的存储空间,记做
Figure FDA00004442929900000210
采用传统的GPU内存分配方法,在图形处理器GPU的全局存储器上分配大小为SRC_size的存储空间,记做
Figure FDA00004442929900000211
步骤4.2:采用传统的GPU数据拷贝方法,将步骤2中得到雷达发射平台天线相位中心矢量
Figure FDA00004442929900000212
复制到步骤4.1得到的图形处理器GPU的存储空间
Figure FDA00004442929900000213
中;
采用传统的GPU数据拷贝方法,将步骤2中得到雷达接收平台天线相位中心矢量
Figure FDA0000444292990000031
复制到步骤4.1得到的图形处理器GPU的存储空间
Figure FDA0000444292990000032
中;
采用传统的GPU数据拷贝方法,将步骤3中得到的距离压缩后的数据
Figure FDA0000444292990000033
复制到步骤4.1得到的图形处理器GPU的存储空间
Figure FDA0000444292990000034
中;
步骤5:第一级子图像生成
步骤5.1:采用公式(3)计算得到第一级子图像中像素点P(1)(a(1),r(1))的位置矢量
Figure FDA0000444292990000035
P &OverBar; ( 1 ) ( a ( 1 ) , r ( 1 ) ) = P 0 &OverBar; + ( r ( 1 ) - 1 ) &CenterDot; d r &CenterDot; &zeta; &OverBar; u + ( a ( 1 ) - 1 ) &CenterDot; d a ( 1 ) &CenterDot; &zeta; &OverBar; v - - - ( 3 )
公式(3)中,是步骤1提供的场景参考点位置矢量,
Figure FDA0000444292990000038
Figure FDA0000444292990000039
表示构成雷达成像空间M的坐标基,r(1)表示像素点位于子图像距离向的第r(1)个位置,r(1)=1,...,sr,sr为第一级子图像距离向总的像素点数,a(1)表示像素点位于第一级子图像方位向的第a(1)个位置,为第一级子图像方位向总的像素点数,dr是子图像距离向像素点间隔,
Figure FDA00004442929900000311
是第一级子图像方位向像素点间隔,第一级子图像所有像素点的位置矢量占用的存储空间大小记做P(1) size
步骤5.2:采用传统的GPU内存分配方法,在图形处理器GPU的全局存储器上分配大小为P(1) size的存储空间,记做
Figure FDA00004442929900000312
采用传统的GPU数据拷贝方法,将步骤5.1中提供的所有像素点的位置矢量复制到图形处理器GPU的存储空间
Figure FDA00004442929900000314
中;
步骤5.3:由步骤1提供的线程块第一维维度Nblockx和子图像距离向总的像素点数sr,采用公式(4)得到线程网格的第一维维度
N gridx ( 1 ) = floor ( ( s r + N blockx - 1 ) / N blockx ) - - - ( 4 )
由步骤1提供的线程块第二维维度Nblocky和第一级子图像方位向总的像素点数
Figure FDA00004442929900000317
采用公式(5)得到线程网格的第二维维度
N gridy ( 1 ) = floor ( ( s a ( 1 ) + N blocky - 1 ) / N blocky ) - - - ( 5 )
公式(5)中floor为向下取整函数,从而得到线程网格中线程块的第一维索引blockIdx.x(1)以及线程网格中线程块的第二维索引blockIdx.y(1) blockIdx . y ( 1 ) = 0 , . . . , N gridy ( 1 ) ;
步骤5.4:将子图像像素点P(1)(a(1),r(1))与线程网格中的线程一一对应,具体方法是:
对于像素点P(1)(a(1),r(1)),将其与索引标识为blockIdx.x(1),blockIdx.y(1),threadIdx.x,threadIdx.y的线程对应,它们的对应关系为公式(6)和公式(7):
a(1)=thredIdx.x+blockIdx.x(1)·Nblockx+1  (6)
r(1)=threadIdx.y+blockIdx.y(1)·Nblocky+1         (7)
公式(6)和公式(7)中,threadIdx.x为每个线程块中线程的第一维索引,threadIdx.x=0,...,Nblockx,Nblockx为每个线程块的第一维维度,threadIdx.y为每个线程块中线程的第二维索引,threadIdx.y=0,...,Nblocky,Nblocky为每个线程块的第二维维度,blockIdx.x(1)是步骤5.3中得到的线程网格中线程块的第一维索引,blockIdx.y(1)是步骤5.3中得到的线程网格中线程块的第二维索引;
步骤5.5:利用步骤2中提供的公式(1)
Figure FDA0000444292990000043
n=1+b·(j(1)-1),+...,+b·j(1)        (8)
得到雷达发射平台第n个PRF时刻的天线相位中心矢量
Figure FDA0000444292990000044
利用步骤2中提供的公式(2)
Figure FDA0000444292990000045
和公式(8),得到雷达接收平台第n个PRF时刻的天线相位中心矢量
Figure FDA0000444292990000046
其中,j(1)是子图像的索引,b为子孔径长度;
再利用步骤5.1中得到的
Figure FDA0000444292990000047
采用公式(9)得到双基地雷达距离史R(1)(n),
R ( 1 ) ( n ) = | | P t &OverBar; ( n ) - P &OverBar; ( 1 ) ( a ( 1 ) , r ( 1 ) ) | | 2 + | | P r &OverBar; ( n ) - P &OverBar; ( 1 ) ( a ( 1 ) , r ( 1 ) ) | | 2 - - - ( 9 )
公式(9)中,||·||2为L2范数;
步骤5.6:利用步骤5.5得到的双基地雷达距离史R(1)(n),采用公式(10)得到双基地雷达距离史R(1)(n)对应的距离门位置ID(n),
ID(n)=R(1)(n)·Fs/C         (10)
公式(10)中,Fs是雷达系统采样频率,C是光的传播速度,在步骤3得到的距离压缩后的回波数据矩阵
Figure FDA0000444292990000051
中取出位于ID(n)-mm列的数据B(n),其中,mm=-W0/2,...,W0/2,是一个整数序列,W0为插值长度,采用标准辛格插值方法对取出的数据B(n)进行插值,得到插值重采样后的数据C(n);
定义补偿相位因子为
Figure FDA0000444292990000052
,将重采样后的数据C(n)与补偿相位因子K(n)相乘,得到相位补偿后的数据A(n),其中j为虚数单位,即-1开根,R(1)(n)为步骤5.5中得到的距离史,λ为雷达系统工作的信号波长;
将数据序列A(n)中的所有数据相加,得到像素点P(1)(a(1),r(1))的像素值矩阵
Figure FDA0000444292990000053
步骤6:子图像融合
步骤6.1:采用公式(11)计算得到第二级子图像方位向像素点间隔
Figure FDA0000444292990000054
d a ( 2 ) = d a ( 1 ) / b - - - ( 11 )
采用公式(12)计算得到第二级子图像方位向总的像素点数
s a ( 2 ) = s a ( 1 ) &CenterDot; b - - - ( 12 )
采用公式(13)计算得到第二级子图像中像素点P(2)(a(2),r(2))的位置矢量
Figure FDA0000444292990000058
P &OverBar; ( 2 ) ( a ( 2 ) , r ( 2 ) ) = P 0 &OverBar; + ( r ( 2 ) - 1 ) &CenterDot; d r &CenterDot; &zeta; &OverBar; u + ( a ( 2 ) - 1 ) &CenterDot; d a ( 2 ) &CenterDot; &zeta; &OverBar; v - - - ( 13 )
公式(13)中,
Figure FDA0000444292990000061
Figure FDA0000444292990000062
是成像空间的坐标基,dr是子图像距离向像素点间隔,r(2)表示像素点位于子图像距离向的第r(2)个位置,r(2)=1,...,sr,sr为第二级子图像距离向总的像素点数,a(2)表示像素点位于第二级子图像方位向的第a(2)个位置,为第二级子图像方位向总的像素点数,第二级子图像所有像素点的位置矢量占用的存储空间大小记做P(2) size
步骤6.2:采用传统的GPU内存分配方法,在图形处理器GPU的全局存储器上分配大小为P(2) size的存储空间,记做
Figure FDA0000444292990000064
采用传统的GPU数据拷贝方法,将步骤6.1中得到的所有像素点的位置矢量
Figure FDA0000444292990000065
复制到图形处理器GPU的存储空间
Figure FDA0000444292990000066
中;
步骤6.3:由步骤1提供的线程块第一维维度Nblockx和子图像距离向总的像素点数sr,采用公式(14)得到线程网格的第一维维度
Figure FDA0000444292990000067
N gridx ( 2 ) = floor ( ( s r + N blockx - 1 ) / N blockx ) - - - ( 14 )
由步骤1提供的线程块第二维维度Nblocky和步骤6.1中提供的第二级子图像方位向总的像素点数
Figure FDA0000444292990000069
采用公式(15)得到线程网格的第二维维度
Figure FDA00004442929900000610
N gridy ( 2 ) = floor ( ( s a ( 2 ) + N blocky - 1 ) / N blocky ) - - - ( 15 )
从而得到线程网格中线程块的第一维索引blockIdx.x(2)
Figure FDA00004442929900000612
以及线程网格中线程块的第二维索引blockIdx.y(2) blockIdx . y ( 2 ) = 0 , . . . , N gridy ( 2 ) ;
步骤6.4:将子图像像素点P(2)(a(2),r(2))与线程网格中的线程一一对应,具体方法是:对于像素点P(2)(a(2),r(2)),将其与索引标识为blockIdx.x(2),blockIdx.y(2),threadIdx.x,threadIdx.y的线程对应,它们的对应关系为公式(16)和公式(17):
a(2)=thredIdx.x+blockIdx.x(2)·Nblockx+1   (16)
r(2)=threadIdx.y+blockIdx.y(2)·Nblocky+1       (17)
公式(16)和公式(17)中,blockIdx.x(2)是步骤6.3中得到的线程网格中线程块的第一维索引,blockIdx.y(2)是步骤6.3中得到的线程网格中线程块的第二维索引;
步骤6.5:将n=round(b/2)+(j(1)-1)·b代入步骤2中提供的公式(1)中,
P t &OverBar; ( n ) = P t 0 &OverBar; + V t &OverBar; &CenterDot; n / PRF - - - ( 1 )
得到雷达发射平台第n个PRF时刻的天线相位中心矢量
Figure FDA0000444292990000072
将n=round(b/2)+(j(1)-1)·b代入步骤2中提供的公式(2)中,
P r &OverBar; ( n ) = P r 0 &OverBar; + V r &OverBar; &CenterDot; n / PRF - - - ( 2 )
得到雷达接收平台第n个PRF时刻的天线相位中心矢量
其中,round为近似取整函数,j(1)为步骤5得到的
Figure FDA0000444292990000075
的索引,再利用步骤6.1中得到的
Figure FDA0000444292990000076
,采用公式 R ( 2 ) ( n ) = | | P &OverBar; t ( n ) - P &OverBar; ( 2 ) ( a ( 2 ) , r ( 2 ) ) | | 2 + | | P &OverBar; r ( n ) - P &OverBar; ( 2 ) ( a ( 2 ) , r ( 2 ) ) | | 2 得到双基地雷达距离史R(2)(n),采用公式 RR = | | P t &OverBar; ( m ) - P &OverBar; ( 2 ) ( a ( 2 ) , r ( 2 ) ) | | 2 + | | P r &OverBar; ( m ) - P &OverBar; ( 2 ) ( a ( 2 ) , r ( 2 ) ) | | 2 得到参考距离RR,其中,m=round(Na/2),是合成孔径的中心位置;
步骤6.6:从步骤5得到的
Figure FDA0000444292990000079
中取出位于第aa行,第rr列的数据
Figure FDA00004442929900000710
其中,aa=round(a(2)/b),表示像素点位于
Figure FDA00004442929900000711
的第aa行,rr=round(r(2)/b),表示像素点位于
Figure FDA00004442929900000712
的第rr列;
定义补偿相位因子 K ( 2 ) ( n ) = exp { j 2 &pi; R ( 2 ) ( n ) - RR &lambda; } ,将取出的数据
Figure FDA00004442929900000714
与补偿相位因子K(2)(n)相乘得到相位补偿后的数据序列A(2)(n),其中R(2)(n)为步骤6.5中得到的距离史,RR是步骤6.5中得到的参考距离;
将得到的相位补偿后的数据序列A(2)(n)中的所有数据相加,得到像素点P(2)(a(2),r(2))的像素值矩阵
Figure FDA0000444292990000081
步骤7:数据输出
采用传统的GPU数据拷贝方法,将步骤6.6中得到的成像后的数据
Figure FDA0000444292990000082
从图形处理器GPU中导出。
CN201210334304.2A 2012-09-12 2012-09-12 一种基于gpu后向投影双站合成孔径雷达成像方法 Expired - Fee Related CN102854507B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210334304.2A CN102854507B (zh) 2012-09-12 2012-09-12 一种基于gpu后向投影双站合成孔径雷达成像方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210334304.2A CN102854507B (zh) 2012-09-12 2012-09-12 一种基于gpu后向投影双站合成孔径雷达成像方法

Publications (2)

Publication Number Publication Date
CN102854507A CN102854507A (zh) 2013-01-02
CN102854507B true CN102854507B (zh) 2014-04-09

Family

ID=47401255

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210334304.2A Expired - Fee Related CN102854507B (zh) 2012-09-12 2012-09-12 一种基于gpu后向投影双站合成孔径雷达成像方法

Country Status (1)

Country Link
CN (1) CN102854507B (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103176170B (zh) * 2013-02-06 2014-12-24 中国科学院电子学研究所 一种基于gpu并行计算的sar回波模拟方法
CN103197300B (zh) * 2013-03-26 2015-07-01 中国科学院电子学研究所 一种基于gpu的外辐射源雷达直达波杂波对消实时处理方法
CN103207385B (zh) * 2013-04-12 2014-12-24 中国科学院电子学研究所 基于gpu的高分辨率宽测绘带机载sar实时成像处理系统
CN104991252A (zh) * 2015-08-10 2015-10-21 中国人民解放军国防科学技术大学 双站圆迹sar快速时域成像方法
CN106802416B (zh) * 2017-02-21 2020-04-07 电子科技大学 一种快速因式分解后向投影sar自聚焦方法
CN108008389B (zh) * 2017-12-01 2019-12-10 电子科技大学 一种基于gpu的快速频域后向投影三维成像方法
CN108802726B (zh) * 2017-12-29 2020-04-14 西安电子科技大学 基于图形处理器gpu的合成孔径雷达成像方法
CN109444901B (zh) * 2018-11-14 2021-02-26 杭州电子科技大学 一种异构环境下多子阵sas子孔径成像方法
CN109839619B (zh) * 2019-03-15 2020-10-16 北京应用物理与计算数学研究所 基于自适应分桶的雷达信号粗分选方法、系统及存储介质
CN112698327A (zh) * 2020-11-19 2021-04-23 中山大学 双基地低频超宽带前视合成孔径雷达高效高精度成像方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100066595A1 (en) * 2008-09-18 2010-03-18 Lee Chul J Electromagnetic (em) solver using a shooting bouncing ray (sbr) technique
CN101833095A (zh) * 2010-04-14 2010-09-15 电子科技大学 一种基于空域展开的星机联合sar二维频域成像方法
CN101937082A (zh) * 2009-07-02 2011-01-05 北京理工大学 基于gpu众核平台的合成孔径雷达并行成像方法
CN102004250A (zh) * 2010-10-28 2011-04-06 电子科技大学 基于频域展开的星机联合双基地合成孔径雷达成像方法
CN102313887A (zh) * 2010-06-29 2012-01-11 电子科技大学 一种星机联合双基地合成孔径雷达成像方法
JP4857376B2 (ja) * 2009-12-09 2012-01-18 東芝電波プロダクツ株式会社 レーダビデオ表示装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100066595A1 (en) * 2008-09-18 2010-03-18 Lee Chul J Electromagnetic (em) solver using a shooting bouncing ray (sbr) technique
CN101937082A (zh) * 2009-07-02 2011-01-05 北京理工大学 基于gpu众核平台的合成孔径雷达并行成像方法
JP4857376B2 (ja) * 2009-12-09 2012-01-18 東芝電波プロダクツ株式会社 レーダビデオ表示装置
CN101833095A (zh) * 2010-04-14 2010-09-15 电子科技大学 一种基于空域展开的星机联合sar二维频域成像方法
CN102313887A (zh) * 2010-06-29 2012-01-11 电子科技大学 一种星机联合双基地合成孔径雷达成像方法
CN102004250A (zh) * 2010-10-28 2011-04-06 电子科技大学 基于频域展开的星机联合双基地合成孔径雷达成像方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Processing of Circular SAR Trajectories with Fast Factorized Back-Projection;Octavio Ponce等;《Geoscience and Remote Sensing Symposium 2011》;20110729;3692-3695 *
SAR图像压缩采样恢复的GPU并行实现;陈帅等;《电子与信息学报》;20110331;第33卷(第3期);610-615 *
利用GPU实现SAR图像的并行处理;张晓东等;《电子科技》;20111015;第24卷(第10期);94-95 *

Also Published As

Publication number Publication date
CN102854507A (zh) 2013-01-02

Similar Documents

Publication Publication Date Title
CN102854507B (zh) 一种基于gpu后向投影双站合成孔径雷达成像方法
CN103713288B (zh) 基于迭代最小化稀疏贝叶斯重构线阵sar成像方法
CN104007440B (zh) 一种加速分解后向投影聚束合成孔径雷达成像方法
CN103197317B (zh) 基于fpga的sar成像方法
Capozzoli et al. Fast GPU-based interpolation for SAR backprojection
CN103983972B (zh) 一种快速压缩传感三维sar稀疏成像方法
CN105677942A (zh) 一种重复轨道星载自然场景sar复图像数据快速仿真方法
CN102914773B (zh) 一种多航过圆周sar三维成像方法
CN108008389B (zh) 一种基于gpu的快速频域后向投影三维成像方法
CN105911532B (zh) 基于深度协同的合成孔径雷达回波并行模拟方法
CN103941243A (zh) 一种基于sar三维成像的自旋式飞行器测高方法
CN106680812A (zh) 一种基于解析面元的微波关联成像仿真方法
CN103885040A (zh) 一种基于cpu-gpu异构计算的圆迹合成孔径雷达回波生成方法
CN102788979A (zh) 一种基于后向投影InSAR成像配准的GPU实现方法
Zhang et al. Accelerating InSAR raw data simulation on GPU using CUDA
CN102798861B (zh) 一种基于最优图像空间双基地合成孔径雷达成像方法
Tang et al. A spaceborne SAR on-board processing simulator using mobile GPU
CN103076608B (zh) 轮廓增强的聚束式合成孔径雷达成像方法
CN111896956B (zh) 基于fpga和dsp的实时微波关联成像装置及方法
Sun et al. Polar format algorithm for spotlight bistatic SAR with arbitrary geometry configuration
CN103558592B (zh) 一种基于mpi并行计算的星载sar回波数据模拟方法
CN103728617A (zh) 双基地合成孔径雷达时域快速成像方法
CN103675777A (zh) 基于拟合法的机载雷达杂波模拟方法及装置
Yu et al. Acceleration of fast factorized back projection algorithm for bistatic SAR
Radecki et al. A real-time unfocused SAR processor based on a portable CUDA GPU

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20140409

Termination date: 20180912

CF01 Termination of patent right due to non-payment of annual fee