基于GPU的相位梯度变化质量图并行计算*

2015-03-15 01:37:28刘殿刚钟何平
舰船电子工程 2015年10期
关键词:信号处理线程内存

李 伟 刘殿刚 钟何平

(1.91458部队 三亚 572021)(2.海军工程大学电子工程学院 武汉 430033)



基于GPU的相位梯度变化质量图并行计算*

李 伟1刘殿刚1钟何平2

(1.91458部队 三亚 572021)(2.海军工程大学电子工程学院 武汉 430033)

相位梯度变化质量图是一种可靠的相位质量图,但当计算窗口较大时,计算效率非常低下,严重影响信号处理的速度。论文提出了一种快速的相位梯度变化质量图的计算方法,采用GPU的多个计算核心同时计算分块缠绕相位的相位质量图,然后将结果下载到主机内存。最后通过试验验证了所提方法的高效性。

质量图; 相位梯度; 并行计算; GPU

Class Number P237

1 引言

干涉合成孔径雷达(InSAR)和干涉合成孔径声纳(InSAS)都是通过两个信号接收器接收来自同一区域的回波,得到单视复数影像数据,后经成像处理和干涉运算得到干涉图像,进一步反演出目标区域高程信息[1~2]。两幅精确配准后的复数影像经共轭相乘后形成干涉相位图,干涉相位图是一个二维矩阵,其中每一点的数值表示的是空间上一点与两个传感器之间因距离差引起的缠绕相位差。理想上,所有相邻的干涉相位点之间满足Nyquist采样定理,但是实际中由于透视压缩、阴影和层叠,从而引起两幅图像相干性下降,以及由其他原因引起的去相关现象和在信号处理中引入的相干噪声等,使得部分区域不满足采样定理,干涉信号处理过程变得复杂化[3~4]。质量图[5]就是表示每一点干涉相位质量好坏的数组,可以用于指导枝切法中枝切线的设置,质量引导相位解缠算法[6~8]中路径的选择,全局优化解缠算法[9~11]中权重的设置,在相位解缠过程中扮演着重要的作用。但是随着计算窗口的增加,计算效率变得越来越低严重影响着相位解缠的速度。GPU的出现为高速进行相位梯度质量图的计算提供了新的手段,它的优点恰好是在处理高密度的数值运算,并且已在天文计算、流体力学模拟、图像处理、音视频编码解码领域广泛应用,取得了显著的效率提升。

本文借助GPU的强大计算能力,提出了一种GPU环境下的快速相位梯度变化质量图的计算方法。首先将干涉图整块上传到GPU的显存空间,然后将整个干涉图分为小块,每个线程块分别计算对应的小块干涉相位的相位梯度变化质量图,每个线程块完成计算后,将计算结果进行拼接,然后下载到主机端的内存。最后通过计算不同局部窗口大小下的相位梯度变化质量图,验证了所提方法的高效性。

2 相位梯度变化质量图

InSAR和InSAS干涉测量系统是以信号的相干性为基础的,相干性可以用相干系数来衡量。得到干涉图后,需要对相位数据的一致性进行分析,以确定哪些区域相位是一致的,哪些区域相位是不一致的。最常用的质量图就是相干图,相干图中相干值的高低表明了干涉图不同区域的相干性大小,是最直观的干涉质量评价图。相干系数定义如下:

(1)

式中u1和u2分别代表两幅单视复图像,*表示取共轭,E[·]表示期望值,γ的绝对值范围是[0,1]。γ=0表示两幅影像完全不相关,γ=1表示两幅影像完全一样。

实际计算时,假设在k×k窗口内的估值区域内随机过程是平稳和各态历经的,即相干系数可以用样本的空间平均值按照式(2)计算。

(2)

逐点计算以(m,n)为中心的k×k窗口内的γ值,其结果是相关系数文件,每一点相关系数的绝对值表示该点配准结果的好坏或干涉相位可信度的大小。

在无法获得相关图时,常采用相位梯度变化质量图作为相位质量的评价指标。相位梯度变化质量图定义如下:

(3)

3 质量图的并行计算

将干涉相位数组表示为φ(m,n),1≤m≤M,1≤n≤N,其中M、N分别表示干涉相位数组的行数和列数。对于数组中的任一点(i,j),其相位质量值q(i,j)是根据以点(i,j)为中心,2Wx+1和2Wy+1为窗宽的局部干涉相位计算所得。图1为干涉相位质量图计算示意图,待计算的干涉相位点坐标为(6,6),局部窗口大小设置为5×5,取得当前局部窗口内的相位质量值后,立刻调用相位梯度变化质量函数计算对应的相位质量值。完成质量值得计算后,将其写入到对应的结果数组中。相位质量值的计算过程非常简单,但是其计算密度非常高,特别是局部窗口加大时,效率显著降低,严重影响着干涉信号的后续处理。

图1 质量值计算示意图

图2 计算流程

GPU为实现快速计算相位梯度变化质量图提供了可能,采用GPU计算相位梯度变化质量图的流程如图2所示。具体流程如下:

1) 从原始数据中读入干涉相位图;

2) 根据干涉相位图的行、列数,调用cudaMalloc函数,在GPU上分配显存;

3) 在主机端调用cudaMemcpy函数,将主机内存中存放的干涉相位图上传至新开普的显存空间;

4) 通过在主机端调用核函数,启动相位梯度变化质量图的并行计算函数,计算后的结果存储在临时显存中;

5) 调用cudaMemcpy函数,将保存在显存中的计算结果拷贝到主机内存;

6) 释放GPU上分配的显存空间。

4 实验结果分析

为了验证基于GPU的干涉相位质量图计算效率,在如下环境进行了相位梯度变化质量图的计算试验:处理器Intel(R) Xeon(R) CPU X5650;显卡Tesla C2050;操作系统Windows 7专业版;软件环境VS2008+CUDA5.0。

试验数据选用了一幅TerraSAR干涉数据,如图3(a)所示,其大小为1024×1024像素。从干涉图中可以看出成像区域存在大量的噪声区域,严重影响着后续的相位解缠。为了比较不同大小干涉图质量图的计算效率,将图3(a)从左上角开始,依次截取大小为512×512、256×256的两幅子图,分别如图3(b)和3(c)所示。

表1给出了CPU和GPU计算方式下相位梯度变化质量图的计算时间,其中质量图的计算时间取10次计算时间的平均值,数据上传和数据下载时间取的是不同计算窗口大小下的三次数据传输时间平均值。从表1中可以看出采用CPU计算不需要进行数据传输,采用GPU计算需要进行数据的上传和下载操作,但由于传输带宽大,可以在非常短的时间完成。在CPU计算环境下,干涉图大小为1024×1024,计算窗口为7×7时,最大相位梯度质量图的计算时间为1291ms。但是在GPU计算环境下,相位梯度变化质量图的计算时间与CPU中计算时间相比显著降低。维数为1024×1024的干涉图,当计算窗口为7×7时,计算时间为20.8ms。

图4 加速比

相位梯度变化质量图的计算加速比如图4所示,在计算加速比时,GPU计算时间中加入了数据上传和下载时间。对于256×256数据量小的干涉图,在计算窗口为3×3时,块之间的重叠比例较高,此外由于数据传输时间的影响,加速比不是非常理想。相位梯度变化质量图的加速比随着计算窗口和干涉图维数的增加而增加,当干涉图维数为1024×1024,计算窗口为7×7,其加速比高达50。

表1 相位梯度变化质量图计算效率比较

5 结语

本文提出了一种基于GPU的快速相位梯度变化质量图计算方法。首先将干涉图上传至显存,然后采用多个线程块同时计算每个分块干涉相位的质量值,并将每个线程块计算的质量值进行合并。最后将计算的相位质量图下载到主机内存。试验结果表明,对于大小为1024×1024的干涉图,采用GPU计算相位梯度变化质量图,可以获得高达50倍的加速比。

[1] 李平湘,杨杰.雷达干涉测量原理与应用 [M].北京:测绘出版社,2006.

[2] Ghiglia D C, Pritt M D. Two-dimensional phase unwrapping: theory, algorithm, and software[M]. New York: John Wiley & Sons. Inc,1998.

[3] 彭石宝,袁俊泉,向家彬.一种基于加权迭代贪婪算法的InSAR相位解缠的新方法[J].电子与信息学报,2008,30(6):1326-1330.

[4] Costantini M. A novel phase unwrapping method based on network programming[J]. IEEE Transactions on Geoscience and Remote Sensing,1998,36(3):813-821.

[5] 杨夏,于起峰,伏思华.由新质量图引导的InSAR快速解缠方法[J].电子与信息学报,2007,29(10):2367-2370.

[6] 钟何平,唐劲松,陈鸣.一种新的InSAR相位质量图生成方法[J].遥感学报,2011,15(4):766-777.

[7] 陈家凤,李春芳.基于自适应加权窗口的相位质量图提取[J].光学技术,2012,38(6):734-739.

[8] Cho B. L., Kong Y. K., Kim Y. S. Quality map extraction for radar interferometry using weighted window[J]. Electronics Letters,2004,40(8):472-473.

[9] Costantini M. A novel phase unwrapping method based on network programming[J]. IEEE Transactions on Geoscience and Remote Sensing,1998,36(3):813-821.

[10] Yang Fengtao, Lu Xiaoxu, Wang Dianyuan, et al. Weighted minimum cost flow phase unwrapping algorithm based on second difference[J]. Laser Technology,2006,30(6):667-672.

[11] Ghiglia, D. C., Romero, L. A. Robust two-dimensional weighted and unweighted phase unwrapping that uses fast transforms and iterative methods[J]. Journal of the Optical Society of America A: Optics and Image Science, and Vision,1994,11(1):107-117.

Parallel Computing of Phase Derivative Variance Quality Map Based on GPU

LI Wei1LIU Diangang1ZHONG Heping2

(1. No. 91458 Troops of PLA, Sanya 572021) (2. Electronics Engineering College, Naval University of Engineering, Wuhan 430033)

The phase quality map of phase derivative variance is reliable. When the size of computing window is larger, the computing efficiency is too low, which affects the speed of signal processing. A fast computing method for phase derivative variance is proposed in this paper, which uses multi-computing cores to compute the phase quality map for every blocked wrapped phase. Then the result is downloaded to the memory of host. At last, the high efficiency of the proposed method is verified through experiment.

quality map, phase derivative, parallel computing, GPU

2015年4月5日,

2015年5月17日

李伟,男,工程师,研究方向:信号处理,预警探测。刘殿刚,男,工程师,研究方向:信号处理,预警探测。钟何平,男,博士,讲师,研究方向:信号处理,并行计算。

P237

10.3969/j.issn.1672-9730.2015.10.024

猜你喜欢
信号处理线程内存
“春夏秋冬”的内存
当代陕西(2019年13期)2019-08-20 03:54:22
《信号处理》征稿简则
信号处理(2018年5期)2018-08-20 06:16:02
《信号处理》第九届编委会
信号处理(2018年5期)2018-08-20 06:16:00
《信号处理》征稿简则
信号处理(2018年8期)2018-07-25 12:25:42
《信号处理》第九届编委会
信号处理(2018年8期)2018-07-25 12:24:56
浅谈linux多线程协作
环球市场(2017年36期)2017-03-09 15:48:21
基于内存的地理信息访问技术
Linux线程实现技术研究
么移动中间件线程池并发机制优化改进
上网本为什么只有1GB?