首页 CUDA架构下高光谱图像光谱匹配的快速实现

CUDA架构下高光谱图像光谱匹配的快速实现

举报
开通vip

CUDA架构下高光谱图像光谱匹配的快速实现 CUDA架构下高光谱图像光谱匹配的快速实现 何国经,刘德连,张建奇 (西安电子科技大学技术物理学院,西安 710071) 摘 要:针对高光谱图像数据量大,光谱匹配计算耗时长的缺点,提出一种 CUDA 架构下的 高光谱图像光谱匹配快速实现方法。首先,在分析高光谱图像特点的基础上,介绍高光谱图像光 谱匹配的一般方法;其次,介绍 CUDA架构及其特点,依据 CUDA 架构的特点,将通常的高光谱 图像存储格式进行重新组织,并将参考光谱存储在共享内存中,以达到快速访问的目的;最后, 将光谱匹配算法中的欧氏距离匹配法...

CUDA架构下高光谱图像光谱匹配的快速实现
CUDA架构下高光谱图像光谱匹配的快速实现 何国经,刘德连,张建奇 (西安电子科技大学技术物理学院,西安 710071) 摘 要:针对高光谱图像数据量大,光谱匹配计算耗时长的缺点,提出一种 CUDA 架构下的 高光谱图像光谱匹配快速实现方法。首先,在分析高光谱图像特点的基础上,介绍高光谱图像光 谱匹配的一般方法;其次,介绍 CUDA架构及其特点,依据 CUDA 架构的特点,将通常的高光谱 图像存储格式进行重新组织,并将参考光谱存储在共享内存中,以达到快速访问的目的;最后, 将光谱匹配算法中的欧氏距离匹配法、光谱夹角匹配法、光谱相关系数匹配法在 CUDA架构下进 行实现。将该方法应用于实际的高光谱图像光谱匹配中,可极大地提高传统 CPU计算的运算效率。 关键词:高光谱;匹配;CUDA;GPU 中图分类号:TP79 文献标识码:A 文章编号:1673 - 5048(2011)04 - 0003 - 04 High Speed Spectral Matching Approach for Hyperspectral Image Based on CUDA HE Guo-jing,LIU De-lian,ZHANG Jian-qi (School of Technical Physics,Xidian University,Xi’an 710071,China) Abstract:To overcome the drawback of time consuming of spectral matching caused by the large vol- ume of data in hyperspectral image,a new high speed approach based on CUDA is presented. Firstly,the traditional spectral matching approaches are introduced based on the analysis of the characteristic of hy- perspectral image. Secondly,the framework and the characteristics of CUDA are briefly discussed. Ac- cording to the characteristics of CUDA,the general storage format of hyperspectral image is reorganized, and the reference spectrum is stored in shared memory to accelerate the data accessing. Finally,the spec- tral matching approaches of Euclid distance,spectral angle map,and spectral correlation are implemented in CUDA. This proposed approach can highly improve the efficiency of CPU calculation. Key words:hyperspectral;matching;CUDA;GPU 0 引 言 高光谱遥感起源于 20 世纪 70 年代初的多光 谱遥感,它可以在许多很窄的毗边光谱波段获取 收稿日期:2011 - 04 - 25 基金项目:航空科学基金(20090181004) ;中央高校基本科 研业务费(K50510050002,K50510050003)资助 作者简介:何国经(1978 -) ,男,广西玉林人,博士,副教 授,主要研究方向为光电成像系统性能评估、高性能计算。 数据,能够采集 200 或更多波段的数据,这就为场 景中的每一个像素点提供了连续的光谱,相比于 传统的遥感手段所能获取的形状和亮度等信息, 光谱数据具有更高的目标探测与识别能力,同时 具有更强的抗干扰能力和伪装识别能力[1 - 2]。高光 谱图像的光谱匹配算法作为高光谱图像处理中的 经典方法[3 - 4],在军事目标的侦察与监视[5 - 6],病 虫害的监测[7 - 8],灾害的预控[9]等方面都有广泛 的应用。众所周知,高光谱图像的一个突出特点就 2011年第4期 2 0 1 1 年 8 月 航空兵器 AERO WEAPONRY 2011 No. 4 Aug. 2011 是该图像的数据量大,包含的信息多,由此导致算 法的运行速度慢、耗时长,严重制约了光谱匹配算 法的实时实现。近些年,特别是 2006 年之后,以 GPU为架构的并行计算得到迅猛发展,目前已经 在医学成像[10]与分割[11]、大气辐射传输计算[12]、 图像编码[13]以及光纤通信[14]等领域得到应用,显 著地提高了传统算法处理的效率,在国内外掀起 了一场以 GPU 为基础的并行算法设计热潮。鉴于 此,本文借助并行计算的最新研究成果,对光谱匹 配算法进行并行化设计,并将之在 GPU 上进行实 现,从而达到快速计算的目的。 1 高光谱图像的光谱匹配算法 高光谱图像既含有场景的空间分布信息又含 有场景的光谱信息,组成一个具有三维结构的数 据立方体。一般的高光谱图像都具有数百个波段 的光谱数据,每个波段的分辨率可达 10 nm 左右。 下图是 AVIRIS[15]高光谱图像的示意图。 图 1 高光谱成像 场景光线在进入成像光谱仪之后,可在 0. 4 ~ 2. 5 μm的波段上成像,波段间隔 10 nm,成像数据 迭加在一起,就构成了高光谱图像。当然,也有其 他类型的成像光谱仪,在其他的波段上响应场景 辐射,其数据形式与此类似。 众所周知,地物目标的光谱特性是地面目标 物理属性的反应。由于光照条件、大气效应以及成 像系统的影响,在实际的高光谱图像中也会出现 “同物异谱”和“异物同谱”的现象,但是地面目标 的光谱仍然是迄今为止地物目标之间相互区分的 最有利指标之一[16 - 17]。针对高光谱图像的光谱维 数据,出现了很多光谱匹配算法,通过比较实际光 谱和参考光谱的相似程度来检测目标。其中最常 用的光谱匹配算法有欧氏距离匹配法、光谱夹角 匹配法和光谱相关系数匹配法[18 - 19]。欧氏距离匹 配法是光谱匹配方法中最简单最常用的方法,通 过计算待测光谱与参考光谱的欧氏距离来实现光 谱匹配。 dE(x,y)= ∑ L i = 1 xi - y槡 i (1) 其中:x 为当前待测像素的光谱向量;y 为参考光 谱向量;L为光谱的波段数。欧氏距离越远,两者 相似性就越差。 然而,实际的高光谱图像中同一种物质在不 同强度的光照条件下,会发生光谱的上下平移,此 时,同一种物质的光谱之间也会有很大的欧氏距 离。 为了克服光谱上下平移的问题,便出现了光 谱夹角匹配算法(spectral angle map,SAM) : dSAM(x,y)= arccos xTy ‖x‖‖y‖ (2) 该方法通过度量参考光谱向量和待测光谱向 量之间的夹角,来实现光谱匹配。光谱夹角越小, 两者的相似性越高。该方法是光谱匹配算法中常 用的一种。 此外,还出现了光谱相关系数匹配法: dr(x,y)= ∑ L i = 1 (xi - 珋x) (yi - 珋y) ∑ L i = 1 (xi - 珋x)槡 2 ∑ L i = 1 (yi - 珋y)槡 2 (3) 该方法将参考光谱向量和待测光谱向量看做 两个随机向量,通过计算两者之间的相关系数来 实现光谱匹配,相关系数越大,光谱相似性越高。 2 基于 CUDA的高光谱图像光谱匹配算法 CUDA(Compute Unified Device Architecture,统 一计算架构)是由显卡制造商 NVIDIA 开发,用于 在 GPU上进行通用计算的开发平台。它是一个全 新的软硬件架构,可以将 GPU 视为一个并行数据 计算的设备,对所进行的计算进行分配和管理,以 达到快速计算的目的。 在 CUDA编程中,可以通过扩展的 C 语言在 GPU上进行程序设计。CUDA编程模型中将编程对 象分为主机端(CPU端)和设备端(GPU 端) ,分别 指在 CPU上运行的程序和在 GPU 上运行的程序。 在 CUDA 架构下,显示芯片执行时的最小单位是 ·4· 航空兵器 2011 年第 4 期 thread。数个 thread可以组成一个 block。一个 block 中的 thread能存取同一块共享的内存(shared mem- ory) ,而且可以快速进行同步的动作。每一个 block 所能包含的 thread 数目是有限的。不过,执行相同 程序的 block,可以组成 grid。不同 block 中的 thread 无法存取同一块共享内存[20]。 一般的图形显卡,如 GeForce 系列和 GTX 系 列都有 1 ~ 30 个 SM(Streaming Multiprocessors,流 式多元处理器)用来执行并行计算功能,每个 SM 可以看成包含 8 个 SP(Streaming Processor,流式处 理器)。CUDA利用多个 SM 间的粗粒度任务级或 数据级并行,以及 SM内的细粒度数据并行实现同 时运行几个多线程的程序[20]。 在执行 CUDA程序的时候,每个 SP 对应一个 thread。每个 SM则对应一个 block。在具体的编程 中,一个 block 经常有很多个 thread(如 256 个) , 远超过一个 SM 所拥有的 SP 数目。实际上,虽然 一个 SM只有 8 个 SP,但是由于 SM在进行各种运 算时都有等待时间,而内存存取的等待时间更长。 为了隐藏这些时间,CUDA在执行程序的时候,是 成组的 thread 一起运行的,这些 thread 以 warp 为 单位。目前的 CUDA装置,一个 warp 里面有 32 个 thread,分成两组各 16 个 thread 的 half - warp,也 就是说,一次至少执行 16 个 thread(即 half - warp) 才能有效隐藏各种运算的等待时间。 对于高光谱图像,既具有场景的空间分布信 息也具有光谱信息,是一个具有三维结构的数据 立方体,如图 2 所示。图中,X 和 Y 代 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 二维空间 维,λ 代表光谱维。由于计算机的内存是线性,这 种数据立方体必须转化为线性的,才能进行存储。 通常情况下,高光谱图像的数据存储采用的是向 量互相连接的方式,即 x0,0,0,x0,0,1,…,x0,0,L - 1,…, xM - 1,N - 1,0,xM - 1,N - 1,1,…,xM - 1,N - 1,L - 1,其中 M,N,L 分别表示高光谱图像的高度、宽度和光谱维数。由 前面的论述可知,CUDA程序在执行时是以 wrap 为 单位执行的,一次读取数据时是 16 个 thread 同时 读取数据。但是,在 CUDA架构下,这种读取需要 对应的数据是对齐的,所谓对齐是指第 1 个 thread 对应显存中的第一个数,第二个 thread 对应与之 相连的第二个数,以此类推。否则,这组 thread 的 数据读取就需要执行多次才能完成,而不是一次, 由此导致效率大幅度降低。本文设计的 CUDA 程 序在执行时每个像素的欧氏距离、光谱夹角、光谱 相关系数是由一个 thread计算完成。当该 thread读 取第一维数据时,与之在一个 wrap中的其他 15 个 thread应该是顺序地读取与之连接的 15 个数据, 此时的效率才能最高。很明显,向量相互连接的方 式,并不满足这一要求。为了满足要求,需要对原 始高光谱的数据进行重新组织。结合 CUDA 程序 的执行特点,本文采用如下的方式对数据进行重 新排列:首先存储高光谱图像的第一列,将这一列 数据再按照光谱维的顺序先存储第一维,然后是 第二维,…,紧接着是第二列,第三列,…,直到 结束,即 x0,0,0,x1,0,0,…,xM - 1,0,0,x0,0,1,x1,0,1,…, xM - 1,0,1,…,x0,N - 1,L - 1,x1,N - 1,L - 1,…,xM - 1,N - 1,L - 1。 图 2 高光谱数据立方体 在进行高光谱图像的光谱匹配算法时,还需 要已知参考光谱,由于参考光谱的数据量较小,可 存储到共享内存中进行计算,这样能够提高计算 的速度。 为了达到 GPU高效运行的目的,依据高光谱图 像的大小和 NVIDIA 的 建议 关于小区增设电动车充电建议给教师的建议PDF智慧城市建议书pdf给教师的36条建议下载税则修订调整建议表下载 ,设置一个 block 中的 thread数量为 256。具体算法执行流程如图 3所示。 图 3 算法执行流程 CUDA程序在执行时分为主机端和设备端,其 中设备端的代码在执行时是并行执行,多个 thread 一起运行。程序开始时,首先读取高光谱数据,重 新排列高光谱数据,然后分配设备端的内存并将 ·5·何国经等:CUDA架构下高光谱图像光谱匹配的快速实现 数据传递到设备端,接着设置 Kernel 函数调用时 所用到 grid 和 block 的大小,随后调用 Kernel 函 数,最后将计算结果由设备端传回主机端。Kernel 函数在执行的时候,首先将参考光谱数据从全局 内存读取到共享内存中,然后从全局内存中读取 数据计算欧氏距离、光谱夹角和光谱相似度,并将 计算结果存储到全局内存。 3 实验结果 为了验证本文算法的有效性,选取 AVIRIS 图 像的一帧图像,该图像大小为 614 × 512 × 224。 选取公路上的一个像素点作为参考光谱,如 图 4(a)所示,计算该场景中所有像素点与该参考 光谱的欧氏距离,光谱夹角和光谱相关系数。由于 block中 thread的个数为 256 个,所以 block的个数 为 1 228,每一个 thread 对应于一个像素点,每一 个 block对应于一列数据的二分之一。本文所使用 的计算机配置为 IntelCorei7 四核 CPU,内存 3 G, 显卡为 NVIDIA GeForce GTX 285,显存 1 G。计算 结果如图 4 所示,计算耗时如表 1 所示。 图 4 不同匹配算法的计算结果 表 1 计算耗时 CPU计算 时间 /ms 数据传输 时间 /ms GPU计算 时间 /ms 加速比 2 359. 0 33. 7 6. 6 58. 5 从表 1 可以看出,由于高光谱图像的数据量较 大,数据从主机端传输到设备端占用了 33. 7 ms, GPU计算的时间才用了仅 6. 6 ms,约为传输时间 的五分之一,大量的时间耗费在了数据传输上。加 速比为 58. 5倍。因此,对于高光谱图像这样的数据 量比较大应用,数据传输是 GPU计算的重要瓶颈。 4 结 论 本文给出的 CUDA 架构下的高光谱图像光谱 匹配快速算法,借助并行计算的最新研究成果,将 光谱匹配算法进行并行化设计,并将之在 GPU 上 进行实现。实验结果表明,本文给出的基于 CUDA 的高光谱图像光谱匹配算法可大幅度提高传统 CPU计算的效率。 参考文献: [1]Shaw G A,Burke Hsiao - hua K. Spectral Imaging for Re- mote Sensing[J]. Lincoln Laboratory Journal,2003,14 (1) :3 - 28. [2]童庆禧,张兵,郑兰芬. 高光谱遥感的多学科应用 [M].北京:电子工业出版社,2006. [3]Manolakis D,Shaw G. Detection Algorithms for Hyper- spectral Imaging Applications[J]. IEEE Signal Processing Magazine,2002,19(1) :29 - 43. [4] Dimitris Manolakis,David Marden,Shaw G A. Hyper- spectral Image Processing for Automatic Target Detection Applications[J]. Lincoln Laboratory Journal,2003,14 (1) :79 - 116. [5]Ahlberg J,Renhorn I. Multi-and Hyperspectral Target and Anomaly Detection[R]. Scientific Report, Sweden: Swedish Defense Research Agency Division of Sensor Technology (ISRN:FOI - R - - 1526 - - SE) ,2004. [6]Matteoli S,Diani M,Corsini G. A Tutorial Overview of A- nomaly Detection in Hyperspectral Images[J]. IEEE Aer- ospace and Electronic Systems Magazine,2010,25(7) :5 - 28. [7]蒋金豹,陈云浩,黄文江. 利用高光谱红边与黄边位 置距离识别小麦条锈病[J]. 光谱学与光谱分析, 2010,30(6) :1614 - 1618. [8]陈兵,李少昆,王克如,等. 病害胁迫下棉花叶片色素 含量高光谱遥感估测研究[J]. 光谱学与光谱分析, 2010,30(2) :421 - 425. [9]相里斌,王忠厚,刘学斌,等.“环境与灾害监测预报小 卫星”高光谱成像仪[J]. 遥感技术与应用,2009,24 (3) :257 - 262. [10]Ren Nu-nu,Liang Ji-min,Qu Xiao-chao,et al. GPU - Based Monte-Carlo Simulation for Light Propagation in Complex Heterogeneous Tissues[J]. Virtual Journal for Biomedical Optics,2010,18(7) :6811 - 6823. [11] Pan Lei,Gu Li-xu,Xu Jian-rong. Implementation of Medical Image Segmentation in CUDA[C]/ / Internation- al Conference on Information Technology and Applica- tions in Biomedicine,2008:82 - 85. (下转第 12 页) ·6· 航空兵器 2011 年第 4 期 从表 1 可以看出,与传统的互信息方法(MI) 相比,本文的方法可以有效减少配准时间,同时可 以提高配准精度;虽然本文方法的误差和基于梯度 互信息(GMI)的方法很接近,但是从配准时间上 看有了很大提高。因此,本文算法可以有效地提高 配准的精度和效率。 3 结 论 通过有效地减少灰度级可以提高算法性能, 同时有利于增强图像的相关性;另一方面,通过从 整幅图像中选出灰度分布有利于互信息有效性的 区域进行配准,可以达到提高算法的精确性和可 靠性的目的。本文中研究的算法能够为其他多模 图像处理提供理论和应用上的参考。 参考文献: [1]Maes F,Collignon A,Vandermeulen D,et al. Multimo- dality Image Registration by Maximization of Mutual Infor- mation [J]. IEEE Transactions on Medical imaging, 1997,16(2) :187 - 198. [2]Pluim J P W,Maintz J B A,Viergever M A,et al. Mutu- al-Information-Based Registration of Medical Images:A Survey [J]. IEEE Transactions on Medical Imaging, 2003,22(8) :986 - 1004. [3]江静,张雪松,兰西柱. 红外与可见光图像互信息法 自动配准算法研究[J]. 华北科技学院学报,2006,3 (4) :73 - 78. [4]Zheng Liu,Laganiere R. Registration of IR and EO Video Sequences Based on Frame Difference[C]∥ The Fourth Canadian Conference on Computer and Robot Vision, 2007,459 - 464. [5]Kim Kyoung Soo,Lee Jae Hak,Ra Jong Beom,et al. Ro- bust Multi-Sensor Image Registration by Enhancing Statis- tical Correlation[C]∥ The 8th International Conference on Information Fusion,2005:380 - 386. [6]凌志刚,潘泉,程咏梅,等.一种结合梯度方向互信息 和多分辨混合优化的多模图像配准方法[J]. 光子学 报,2010,39(8) :1359 - 1366. [7]Pluim J P W,Maintz J B A,Viergever M A,et al. Image Registration by Maximization of Combined Mutual Informa- tion and Gradient Information[C]∥ Medical Imaging. Computing and Computer-Assisted Intervention,2000:103 - 129. [8]Rueckert D,Clarkson M J,Hill D L G,et al. Non - Rigid Registration Using Higher-Order Mutual Information[C]∥ The Proceeding of SPIE,2000. [9]白相志,周付根. 基于改进形态学算子的多尺度边缘 检测[J]. 中国图象图形学报,2007,12(9) :1610 - 1613. [10]高智勇,林家瑞.灰度级别对基于互信息医学图像配 准方法的影响[J].北京生物医学工程,2003,22(1) :5  - 9. (上接第 6 页) [12] Rory K,Bowlder N. GPU Computing for Atmospheric Modeling[J]. Computing in Science & Engineering, 2010,12(4) :26 - 33. [13]Datla S,Gidijala N S. Parallelizing Motion JPEG 2000 with CUDA[C]∥ The Second International Conference on Computer and Electrical Engineering,2009:630 - 634. [14]Pachnicke S,Chachaj A,Heff M,et al. Fast Parallel Simulation of Fiber Optical Communication Systems Ac- celerated by a Graphics Processing Unit[C]∥The 12th International Conference on Transparent Optical Net- works,2010:1 - 4. [15]Green O,Eastwood M L,Sarture C M,et al. Imaging Spectroscopy and the Airborne Visible Infrared Imaging Spectrometer (AVIRIS) [J]. Remote Sensing of Environ- ment,1998,65(3) :227 - 248. [16] Brown A. Spectral Curve Fitting for Automatic Hyper- spectral Data Analysis[J]. IEEE Transactions on Geosci- ence and Remote Sensing,2006,44(6) :1601 - 1608. [17]Schaum A. Methods of Hyperspectral Detection Based on a Single Signature Sample[J]. Sensors Journal,IEEE, 2010,10(3) :518 - 523. [18]许卫东,尹球,匡定波. 地物光谱匹配模型比较研究 [J].红外与毫米波学报,2005,24(4) :296 - 300. [19]徐元进,胡光道,张振飞. 基于光谱整体形态和局部 吸收谷位置的高光谱遥感图像地物识别[J]. 武汉大 学学报,2010,35(7) :868 - 872. [20]Compute Unified Device Architecture Programming Guide. NVIDIA:Santa Clara,CA,2007. ·21· 航空兵器 2011 年第 4 期
本文档为【CUDA架构下高光谱图像光谱匹配的快速实现】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_056439
暂无简介~
格式:pdf
大小:780KB
软件:PDF阅读器
页数:5
分类:
上传时间:2012-02-09
浏览量:11