• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于GPU的遙感圖像融合并行算法研究

    2013-05-14 11:33:36劉昌明張麗萍
    關(guān)鍵詞:線程異構(gòu)像素點(diǎn)

    趙 進(jìn),劉昌明,宋 峰,張麗萍

    (1.海軍計(jì)算技術(shù)研究所,北京100086;2.68310部隊(duì),陜西 西安710600;3.91731部隊(duì),北京102200)

    隨著遙感傳感器技術(shù)的發(fā)展,獲取遙感數(shù)據(jù)的方式已經(jīng)由單一可見(jiàn)光模式發(fā)展成多種傳感器模式。每一種傳感方式獲取的數(shù)據(jù)信息相對(duì)單一,融合不同傳感方式獲取的數(shù)據(jù)信息可以有效提高數(shù)據(jù)信息量,提供更為精確的遙感圖像信息。

    POHL C和GENDEREN J L[1]對(duì)圖像融合給出了如下定義:通過(guò)特定算法將兩幅或多幅圖像合成一幅新的圖像。圖像融合可以分為像素級(jí)、特征級(jí)和決策級(jí)3個(gè)層次,其中像素級(jí)融合需要處理的數(shù)據(jù)量最大,計(jì)算過(guò)程也最復(fù)雜。隨著遙感圖像的時(shí)間、空間和光譜分辨率逐步提高,融合算法處理結(jié)果的精度要求同時(shí)在逐步提高,導(dǎo)致圖像融合的處理速度需求逐步增大,計(jì)算量大、計(jì)算過(guò)程復(fù)雜的遙感圖像融合在處理速度上面臨著新的問(wèn)題與挑戰(zhàn)。近幾年來(lái),基于GPU的異構(gòu)平臺(tái)在通用計(jì)算領(lǐng)域得到快速發(fā)展,已經(jīng)在許多方面得到了有效應(yīng)用[2-4],為遙感圖像融合快速處理技術(shù)研究提供了新的思路。

    結(jié)合CPU-GPU異構(gòu)平臺(tái)面向通用計(jì)算領(lǐng)域的性能優(yōu)勢(shì),針對(duì)遙感圖像融合面臨的處理速度問(wèn)題,通過(guò)分析圖像融合處理過(guò)程的特點(diǎn),將像素級(jí)融合的BROVEY變換和YIQ變換融合算法在基于GPU平臺(tái)上進(jìn)行了并行研究與實(shí)驗(yàn),獲得了突出的性能。

    1 研究背景

    1.1 CUDA編程模型

    NVIDIA公司的CUDA[5]語(yǔ)言是基于C語(yǔ)言的擴(kuò)展,主要使用API調(diào)用底層功能進(jìn)行處理與計(jì)算,使熟悉C語(yǔ)言的編程人員能夠快速運(yùn)用CUDA開(kāi)發(fā)通用計(jì)算程序。在CUDA結(jié)構(gòu)中,CPU端被稱為Host,GPU端被稱為 Device,采用 SIMT(Single Instruction Multiple Thread)模式執(zhí)行程序[5]。用戶把可以放在GPU上并行執(zhí)行的程序組織稱為Kernel內(nèi)核程序。在CPU端執(zhí)行的程序稱為Host宿主程序,控制Kernel的啟動(dòng)、加載或保存與 GPU的通信數(shù)據(jù),以及執(zhí)行部分的串行計(jì)算。Device端在執(zhí)行時(shí)創(chuàng)建很多的并行線程Thread,線程組織成線程塊Block,而 Block再組成網(wǎng)格 Grid。每個(gè) Thread執(zhí)行自己的程序Kernel,Block內(nèi)的線程通過(guò)共享存儲(chǔ)器(Shared Memory)分享數(shù)據(jù)。并行線程通過(guò)GPU上的眾多計(jì)算內(nèi)核實(shí)現(xiàn)并行處理,實(shí)現(xiàn)整個(gè)程序的性能加速[5]。

    1.2 兩種典型的像素級(jí)融合算法

    遙感圖像融合在遙感圖像配準(zhǔn)基礎(chǔ)上進(jìn)行,待融合的兩幅遙感圖像具有相同大小,每個(gè)像素點(diǎn)的融合或是獨(dú)立執(zhí)行,或者只需要少量周圍像素點(diǎn)數(shù)據(jù)協(xié)助執(zhí)行。

    1.2.1 BROVEY變換融合算法

    BROVEY變換融合算法[6]是一種基于色度的變換,屬于彩色空間的方法。它是將多光譜的色彩空間進(jìn)行分解得到色彩與亮度,再用其全色圖像進(jìn)行計(jì)算。這種算法像素點(diǎn)彼此單獨(dú)執(zhí)行,具有良好的并行性,算法執(zhí)行簡(jiǎn)單,在保留了較多光譜信息的同時(shí),也具有較快的處理速度。

    1.2.2 YIQ變換融合算法

    YIQ顏色系統(tǒng)是一種用于電視信號(hào)傳輸NTSC制式的彩色編碼系統(tǒng)。其中,Y對(duì)應(yīng)亮度信息,I、Q分量反映圖像與硬件相關(guān)的彩色信息。YIQ變換融合算法[7]屬于彩色空間的方法,計(jì)算較為復(fù)雜,像素點(diǎn)在變換到Y(jié)IQ分量后,需要使用直方圖匹配,具有一定的并行性。

    2 并行設(shè)計(jì)及優(yōu)化實(shí)現(xiàn)

    2.1 優(yōu)化策略

    2.1.1 數(shù)據(jù)異步傳輸

    遙感圖像融合CUDA并行計(jì)算程序在CPU-GPU異構(gòu)平臺(tái)上執(zhí)行,該平臺(tái)上CPU與GPU工作任務(wù)不同。CPU為GPU準(zhǔn)備執(zhí)行數(shù)據(jù),同時(shí)執(zhí)行邏輯控制等復(fù)雜事務(wù)。CPU加載數(shù)據(jù)時(shí),采用同步方式啟動(dòng)傳輸指令;傳遞數(shù)據(jù)時(shí),CPU處于空閑狀態(tài),計(jì)算資源不能得到充分利用。優(yōu)化時(shí)CPU采用異步方式傳輸數(shù)據(jù),啟動(dòng)傳輸指令后直接進(jìn)行后續(xù)事務(wù)處理,使CPU執(zhí)行與加載數(shù)據(jù)重疊,提高資源利用率。

    坐標(biāo)轉(zhuǎn)換矩陣在運(yùn)動(dòng)學(xué)中是用4×4矩陣來(lái)描述兩個(gè)剛體的空間幾何關(guān)系?;趲缀巫儎?dòng)在裝配體中的傳遞方式,本文用坐標(biāo)轉(zhuǎn)換矩陣來(lái)表達(dá)零件間特征或要素間的幾何關(guān)系。兩個(gè)不同坐標(biāo)系之間的平移和旋轉(zhuǎn)關(guān)系可用轉(zhuǎn)換矩陣T表示[5]:

    2.1.2 訪存優(yōu)化

    GPU線程對(duì)全局存儲(chǔ)器(Global Memory)進(jìn)行一次訪存需要400~600個(gè)時(shí)鐘周期,對(duì)共享存儲(chǔ)器(Shared Memory)、寄存器(Register)等快速存儲(chǔ)部件訪存一次只需要 4個(gè)左右的時(shí)鐘周期。優(yōu)化時(shí)充分利用GPU顯存中的多層次存儲(chǔ)部件,發(fā)揮快速存儲(chǔ)部件讀取數(shù)據(jù)優(yōu)勢(shì),最大化提高執(zhí)行性能。

    2.2 融合算法的CUDA并行實(shí)現(xiàn)

    綜合融合算法CUDA優(yōu)化策略,進(jìn)行融合算法CUDA程序并行設(shè)計(jì)與實(shí)現(xiàn)時(shí),重點(diǎn)研究以下問(wèn)題。

    2.2.1 線程塊參數(shù)與網(wǎng)格參數(shù)的設(shè)置

    CPU-GPU異構(gòu)計(jì)算模式中,每個(gè)線程塊只能擁有有限線程數(shù),每個(gè)流處理單元SP最多可同時(shí)執(zhí)行256整數(shù)倍線程,根據(jù)遙感圖像數(shù)據(jù)以二維方式組織的特點(diǎn),將塊Block設(shè)置為16×16二維形式,每個(gè)塊有256個(gè)線程,使每個(gè)SP單元能夠滿負(fù)載執(zhí)行,最大限度地提高資源利用率。設(shè)計(jì)實(shí)現(xiàn)時(shí),線程網(wǎng)格大小的設(shè)置與圖像大小有關(guān),網(wǎng)格的寬度設(shè)置成(imagewidth+dimBlock.x-1)/dimBlock.x,高度設(shè)置成(imageheight+dimBlock.y-1)/dim-Block.y,保證線程塊是一個(gè)整數(shù)。線程塊規(guī)模與遙感圖像規(guī)模有關(guān),與GPU處理核心數(shù)量無(wú)關(guān)。這樣同一問(wèn)題能夠在不同型號(hào)的GPU上執(zhí)行,形成CUDA并行程序良好的可移植性。

    2.2.2 線程網(wǎng)格規(guī)模大于圖像規(guī)模

    令i為線程網(wǎng)格寬度索引號(hào),j為線程網(wǎng)格高度索引號(hào),imagewidth為圖像寬度,imageheight為圖像高度。通過(guò) 加 入 if(i<imagewidth&&j< imageheight) 語(yǔ) 句 控 制 線 程執(zhí)行對(duì)應(yīng)像素點(diǎn)???qǐng)?zhí)行線程最多可以為255×I+255×J-255×255個(gè),其中,I是線程網(wǎng)格的寬度,J是線程網(wǎng)格的高度。與具有的大量執(zhí)行線程相比,空?qǐng)?zhí)行線程占很小比例,幾乎不需要執(zhí)行時(shí)間。與并行加速獲取的提升時(shí)間相比,空?qǐng)?zhí)行少量線程浪費(fèi)的時(shí)間可以忽略。

    3 實(shí)驗(yàn)與結(jié)果分析

    實(shí)驗(yàn)硬件為:Inter(CR)Core(TM)i5四核2.67GHz CPU,2 GB內(nèi)存,NVIDIA GeForce GTX 460 GPU,1GB顯存,336個(gè)SP計(jì)算單元。操作系統(tǒng)為L(zhǎng)inux Ubuntu 10.10,串行程序?yàn)镃語(yǔ)言實(shí)現(xiàn)的標(biāo)準(zhǔn)程序。融合的圖像是IKONOS掃描北京故宮的遙感衛(wèi)星圖像。

    (1)CPU-GPU異構(gòu)計(jì)算平臺(tái)擁有更多的計(jì)算資源,使Texecute<TCPU。

    (2)圖像規(guī)模與算法計(jì)算復(fù)雜度都較小時(shí),Tallocate>(TCPU-Texecute),出現(xiàn)CPU-GPU異構(gòu)平臺(tái)并行執(zhí)行時(shí)間大于CPU串行執(zhí)行,性能下降。隨著圖像規(guī)模與算法計(jì)算復(fù)雜度某一項(xiàng)或同時(shí)增加出現(xiàn) Tallocate<(TCPU-Texecute), 總執(zhí)行時(shí)間在CPU-GPU異構(gòu)平臺(tái)上得到加速。

    (3)在相同的計(jì)算復(fù)雜度下,圖像規(guī)模使GPU計(jì)算核心執(zhí)行達(dá)到飽和時(shí),speedupexecute趨于穩(wěn)定甚至下降。但因?yàn)橛?jì)算資源的優(yōu)勢(shì),總加速性能仍有提升。

    對(duì)于融合算法CUDA的并行執(zhí)行,定義為:

    兩種融合CUDA程序中Tallocate與Texecute的關(guān)系如圖2所示。

    從圖中可以看出,圖像規(guī)模(如 256×256和 512×512)小時(shí),Pexecute小,算法計(jì)算復(fù)雜度的不同導(dǎo)致加速比出現(xiàn)不同情況。因此,為進(jìn)一步提升加速性能,融合算法CUDA并行執(zhí)行需要最大化地提高Pexecute。

    從實(shí)驗(yàn)結(jié)果可以得到,隨著算法計(jì)算復(fù)雜度與問(wèn)題規(guī)模的增大,加速性能逐漸增加。實(shí)驗(yàn)表明,GPU并行處理能夠很好地應(yīng)用于遙感圖像融合的算法,將GPU應(yīng)用到遙感加速處理領(lǐng)域具有很好的應(yīng)用前景。

    本文從遙感圖像融合處理背景出發(fā),闡述了研究融合處理加速的意義,然后針對(duì)近些年興起的CPU-GPU異構(gòu)加速平臺(tái),對(duì)BROVEY變換和YIQ變換遙感圖像融合算法進(jìn)行了CUDA并行優(yōu)化實(shí)現(xiàn)。研究表明,GPU通用計(jì)算技術(shù)在遙感圖像融合領(lǐng)域具有廣闊的應(yīng)用前景。

    [1]POHL C,Van Genderen J L.Multisensor image fusion in remote sensing:concepts,methods and applications[J].International Journal of Remote Sensing,1998,19(5):823-854.

    [2]OWENS J,LUEBKE D,GOVINDARAJU N,et al.A survey of general-purpose computation on graphics hardware[J].Computer Graphics Forum,2007,26(1):80-113.

    [3]GARLAND M,GRAND S,NICKOLLS J,et al.Parallel computing experiences with CUDA[J].IEEE Micro,2008,28(4):13-27.

    [4]LAHABAR S,AGRAWAL P,NARAYANAN P J.High performance pattern recognition on GPU[J].National Conference on Computer Vision Pattern Recognition Image Processing and Graphics,2008:154-159.

    [5]NVIDIA.NVIDIA CUDA compute unified device architecture,Programming Guide,Version 2.0.NVIDIA,2008.[EB/OL].http//www.nvidia.com/object/cude_home_new.htm l.

    [6]GILLESPIE A R,KAHLE A B,WALKER R E.Color enhancement of highly correlated images-II.channel ratio and chromaticity transformation techniques[J].Remote Sensing of Environment,1987,22:343-365.

    [7]Dong Guangjun,Huang Xiaobo,Dai Chenguang.Comparison and analysis of fusion algorithms of high resolution Im-agery[C].International Symposium on Photoelectronic Detection and Imaging:Related Technologies and Applications,Proceedings of SPIE,2008,6625(66250H).

    猜你喜歡
    線程異構(gòu)像素點(diǎn)
    試論同課異構(gòu)之“同”與“異”
    基于canvas的前端數(shù)據(jù)加密
    基于逐像素點(diǎn)深度卷積網(wǎng)絡(luò)分割模型的上皮和間質(zhì)組織分割
    淺談linux多線程協(xié)作
    overlay SDN實(shí)現(xiàn)異構(gòu)兼容的關(guān)鍵技術(shù)
    LTE異構(gòu)網(wǎng)技術(shù)與組網(wǎng)研究
    基于Node-Cell結(jié)構(gòu)的HEVC幀內(nèi)編碼
    在新興異構(gòu)SoCs上集成多種系統(tǒng)
    Linux線程實(shí)現(xiàn)技術(shù)研究
    么移動(dòng)中間件線程池并發(fā)機(jī)制優(yōu)化改進(jìn)
    太保市| 交城县| 六安市| 景泰县| 宣城市| 西平县| 乌兰县| 贵德县| 云安县| 瑞安市| 承德县| 寻甸| 哈尔滨市| 安国市| 涿州市| 巧家县| 营山县| 呼玛县| 阳朔县| 嘉善县| 绍兴县| 双流县| 襄垣县| 宜都市| 崇左市| 涞源县| 佛教| 临湘市| 承德市| 志丹县| 赤壁市| 海原县| 偏关县| 吉木萨尔县| 长白| 克什克腾旗| 临邑县| 比如县| 玛多县| 松溪县| 吉隆县|