999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于GPU的線頻調變標算法并行實現?

2019-06-06 08:11:56唐扶光鐘何平
艦船電子工程 2019年5期

唐扶光 劉 婭 鐘何平

(1.武漢輕工大學電氣與電子工程學院 武漢 430023)(2.海軍工程大學海軍水聲技術研究所 武漢 430033)

1 引言

隨著合成孔徑聲納(SAS)技術的不斷發展,成像分辨率不斷提高,測繪帶寬度不斷加大,它們共同作用導致了用于成像的原始數據量顯著增加[1~3],嚴重影響著合成孔徑聲納系統的實時成像。傳統的距離多普勒成像算法[4]需要進行大量的插值運算,效率低下,而線性調頻變標(CS)算法[5~7]中只用了FFT運算和復數乘/加運算,極大提高了成像效率,并且許多學者已經對其并行化方法進行了研究[8]。目前解決SAS的實時成像問題在硬件選擇上通常有兩種方案:1)專用硬件方案,其特點是計算速度快,價格昂貴,開發周期長,軟件拓展性差;2)通用計算方案,其特點是編程靈活,開發周期短,軟件拓展性好。目前的合成孔徑成像通用計算方案主要采用的是計算機集群[9~11],并且在合成孔徑成像算法的并行化方面取得了較好效果。但集群運算的缺點是計算設備體積龐大,價格昂貴,功耗大。近年來出現的圖形處理器(GPU)具有強大的浮點計算能力,并且NVIDIA公司提供多種CUDA環境下的常用函數庫,大大降低了編程難度,使得GPU成為了一種通用的高密度計算設備。目前GPU已廣泛應用于各種科學計算中,并且都取得了很好的加速比,這為合成孔徑聲納CS算法的實時成像提供了新的途徑[12~14]。

本文提出了一種GPU環境下的多子陣合成孔徑聲納實時CS成像算法。首先分析了多子陣合成孔徑聲納的CS算法成像基本流程,然后對算法中的多子陣回波向單子陣回波轉化,方位向和距離向FFT變換和點乘運算的實現過程進行了GPU環境下的并行化設計,實現了GPU環境下的并行CS成像算法。最后通過實際SAS回波的成像試驗,驗證了所提并行CS成像算法的性能。

2 多子陣合成孔徑聲納CS成像算法

多子陣合成孔徑聲納CS成像算法的基礎是CS算法,該算法思想是基于線性調頻信號尺度變換的特點,然后采用CS操作消除距離徙動隨距離的空變特性,使得不同距離上的點目標距離徙動軌跡相同,再通過在二維頻域上乘一個線性相位因子完成所有的距離徙動校正,從而避免插值操作[15~16]。CS算法優點是不需要耗時的插值運算,只需要快速傅立葉變換和復數相乘就能完成距離遷徙的校正,使得成像效率大大提高,而且便于并行運算,相位保真度高。存在不足的是,CS算法是基于線性調頻信號發展起來的,因此它僅限于此種信號形式。基于CS算法的多子陣SAS成像算法的基本流程如圖1所示,主要分為以下幾個步驟:

1)根據等效相位中心近似條件PRI*V=D*M/2,確定有效子陣個數M,并進行陣元信號的重排。式中V表示聲基陣載體速度,PRI表示脈沖重復間隔,D表示陣元尺寸。

2)對多子陣SAS由單發多收和非停走停模式引入的固定相位誤差采用等效相位中心近似進行補償。

3)在距離時域、方位頻域采用CS算法原理將不同距離上的目標徙動軌跡校正到與參考距離上的目標徙動相同。

4)將距離向變為頻域,在二維頻域中同時完成距離壓縮和距離徙動校正。

5)在距離時域、方位頻域進行方位脈沖壓縮和剩余相位補償。

多子陣合成孔徑聲納CS成像算法從計算角度看主要包含復數點乘、FFT和IFFT運算。但隨著合成孔徑聲納技術的發展,用于成像的原始數據維數越來越大,這三類基本運算的速度嚴重影響著CS算法的實時性。GPU中的大量并行計算單元為復數點乘、FFT和IFFT快速計算提供了基礎。此外,NVIDIA公司提供的CUDA編程環境中包含高效的FFT和IFFT函數庫,在加速FFT和IFFT計算的同時,極大簡化了GPU應用程序開發。

圖1 CS算法流程圖

3 CS成像算法的并行化

3.1 多子陣SAS回波向單子陣SAS回波并行轉化

多子陣SAS成像的最簡單方式就是將多子陣回波數據先等效為單子陣回波數據,然后采用單子陣合成孔徑成像算法進行處理。多子陣SAS回波向單子陣回波轉化需要經過兩個步驟:1)有效數據截取;2)固定相位補償。由于實際SAS系統中子陣個數M與陣元長度D、平臺速度V、脈沖重復間隔PRI不能恰好滿足臨界條件:PRI*V=D*M/2,一般作業過程中要求實際平臺運動速度V0<D*M/2/PRI,此時成像需要的有效陣元數M0=2V0*PRI/D。由于采集原始信號是先按陣元后按脈沖順序排列的,因此對連續脈沖數據進行有效截取可以直接采用高效內存拷貝函數memcpy完成。固定相位補償分塊示意如圖2所示,M0表示有效子陣數,Nr表示距離向點數,K表示當前處理數據塊的脈沖個數。完成有效數據截取后,原始數據是以二維形式存儲的,二維數據的行數為M0*K,列數為Nr。如果把原始信號抽象為三維Nr*M0*K形式,每一個脈沖內數據一層,然后按照脈沖順序將回波層疊放置,因此固定相位補償線程分塊適合采用三維形式。假設單個三維線程塊的維數為BI*BJ*BK,則總的三維線程分塊數為TBI*TBJ*TBK,其中TBI=(Nr+BI-1)/BI,TBJ=(M0+BJ-1)/BJ,TBK=(K+BK-1)/BK。現假設當前線程塊的索引為(Si,Sj,Sk),線程塊內線程索引為(Ti,Tj,Tk),則當前線程處理的數據行坐標TNr=BI*Si+Ti,列坐標TNa=(BJ*Sj+Tj)+M0*(BK*Sk+Tk)。建立線程索引與原始回波數據的對應關系后,只需在時域中與相位補償因子相乘即可,其中 f0為中心頻率,c為聲速,r為距離,v載體速度,Δhi為第i個接收陣中心與發射陣中心的距離。

圖2 固定相位補償分塊示意圖

3.2 距離向和方位向FFT變換

高效FFT變換是合成孔徑聲納CS算法快速成像的基礎,CUDA中提供高效的FFT函數庫極大簡化了CS算法的實現過程。在CS算法實現過程中,距離向和方位向FFT變換都是一維變換,這一過程的實現是通過調用CUDA中cufftExecC2C(cufftHandle plan, cufftComplex*idata, cufftComplex*odata,int direction)函數實現的,其中plan用于指定FFT變換基本參數,包括數據類型、一次FFT變換點數和FFT連續變換次數,idata表示輸出數據地址,odata表示輸出結果地址,direction表示FFT正變換/反變換。對于距離向的FFT正/逆變換可以直接通過調用cufftExecC2C函數來完成,在構造FFT變換句柄plan時,指定一次FFT變換的點數為距離向點數Nr,連續變換次數為方位向點數Na。

方位向FFT變換不能直接調用cufftExecC2C函數,因為在內存中方位向數據不是連續存儲的。為了滿足cufftExecC2C函數FFT變換要求,必須先進行矩陣轉置操作,將方位向數據變為內存中的連續存儲形式。在采用CUDA進行矩陣轉置時,線程塊先采用合并方式讀入對應的原始數據,在線程塊內部完成局部數據塊的轉置操作,然后再采用合并方式將轉置后的結果寫入顯存。采用合并訪問方式可以有效避免數據訪問沖突,提高數據訪問速度。完成矩陣轉置后,調用cufftExecC2C函數來進行方位向FFT正/逆變換,這時一次FFT變換的點數為方位向點數Na,連續變換次數為距離向點數Nr。最后再進行一次矩陣轉置,完成方位向FFT變換。

3.3 CS算法中的點乘運算并行

將多子陣回波數據等效為單子陣回波以后,單陣CS算法在成像過程中共需三次進行點成運算:1)在距離時域-方位頻域(tr-fa)將不同距離的徙動曲線校正成一樣;2)在距離頻域-方位頻域(fr-fa)對不同距離的回波進行統一的距離徙動校正;3)在距離時域-方位頻域(tr-fa)進行剩余相位補償。在這三部分點乘運算中,1)和3)是在距離向上依次對每列數據進行點乘運算,2)是在方位向上依次對每行進行點乘運算,它們的共同點是對每行或每列進行點乘運算時不存在先后順序。對于CS算法中點乘運算采用一維線程組完成,假設線程組的維數為L×1,原始回波數據距離向和方位向維數分別為Nr×Na,在進行計算任務分配時,行坐標為Tnr的列采用線程Tnr mod L計算點乘,列坐標為Tna的行采用線程Tna mod L計算點乘,這樣可以最大限度地均衡使用計算資源。在進行點乘運算前,計算過程經常使用的常量,包括距離向距離和頻率坐標、方位向距離和頻率坐標、CS因子等先在主機中完成計算,再上傳至顯存,這樣進行點乘計算時可以直接使用,避免重復計算,節省計算時間。

4 試驗結果與分析

為了驗證本文所提CS并行成像算法性能,在如下計算環境中進行了成像試驗:處理器Intel(R)Xeon(R)CPU X5650 2.67G(2處理器12核);內存48G;顯卡Tesla C2050;操作系統Windows 7專業版;軟件環境VS2008。為了充分驗證所提算法性能,在上述環境下分別進行了單核CS算法成像、多核CS算法成像和GPU環境下的CS算法成像。

成像試驗中選用的原始數據是在千島湖進行干涉合成孔徑聲納海試樣機試驗中獲取的,對應的幅度信息如圖3(a)所示,最近采樣距離為51m,最遠采樣距離231m,其距離向和方位向點數分別為9600和2880。從圖3(a)中可以看出遠距離處信號回波較弱。試驗系統基本參數如表1所示。

表1 試驗系統基本參數

三種計算方式下的CS算法成像結果分別如圖3(b)~(d)所示,可以看出三種成像結果是一致的,成像結果非常清晰,滿足水下高分辨率成像需求,為水下小目標探測提供了保證。

圖3 CS算法成像結果

表2 CS算法成像效率比較(ms)

三種計算方式下的CS算法效率比較如表2所示。從表2中可以看出,采用單核和多核計算時,不需要進行數據傳輸。對于原始測試回波,采用CS單核成像算法,總的計算時間為27827ms。在共享內存環境下,采用OpenMP并行后,總的計算時間降為7111ms,加速比為3.91。采用GPU計算,雖然需要進行數據的上傳和下載操作,但因數據傳輸帶寬大,對于測試數據僅為202ms。由于采用了CUDA中高效的FFT變換函數庫,成像部分的FFT運算時間大幅度減小,此外算法中的點乘運算效率也大幅度提高。最后基于GPU的并行算法成像時間降為494.7ms,與單核計算相比,加速比達到56.25,滿足SAS實時成像需要。

5 結語

本文提出了一種基于GPU的實時合成孔徑聲納CS成像算法。給出了多子陣合成孔徑聲納CS成像算法的基本流程,單子陣SAS回波向單子陣回波轉換、方位向和距離向FFT變換和點乘運算的GPU并行實現方法。最后在GPU并行平臺上進行了CS算法成像試驗,驗證了所提并行算法性能,滿足SAS成像的實時性需求。

主站蜘蛛池模板: 国产视频一二三区| 玖玖精品在线| 亚洲综合色婷婷| 亚洲欧美激情小说另类| 国产精品三级专区| 国产精品密蕾丝视频| 色综合成人| 毛片最新网址| 国产农村妇女精品一二区| 高潮毛片无遮挡高清视频播放| 91在线精品麻豆欧美在线| 国产偷倩视频| 激情无码视频在线看| 97av视频在线观看| 日韩毛片基地| 99久久国产综合精品女同| 国产喷水视频| 少妇精品网站| 免费高清a毛片| 欧美在线综合视频| 色综合手机在线| 又大又硬又爽免费视频| 狠狠色噜噜狠狠狠狠奇米777| 国产精品自拍合集| 亚洲性视频网站| 天天躁狠狠躁| 青草精品视频| 亚洲日本一本dvd高清| 国产一区三区二区中文在线| 久久婷婷六月| 色婷婷在线影院| 免费久久一级欧美特大黄| 香蕉视频在线观看www| 日韩高清在线观看不卡一区二区| 欧美无遮挡国产欧美另类| 蜜桃视频一区二区| 中字无码精油按摩中出视频| 亚洲国模精品一区| 国产青榴视频在线观看网站| 99免费视频观看| 91精品免费高清在线| 日本在线欧美在线| 日韩av电影一区二区三区四区 | 在线色综合| 天堂网亚洲系列亚洲系列| 成AV人片一区二区三区久久| 亚洲午夜久久久精品电影院| 黄色成年视频| 午夜欧美在线| 无码高潮喷水专区久久| 国产美女一级毛片| 99视频只有精品| swag国产精品| 在线观看国产精美视频| 国产成人三级在线观看视频| 在线观看国产精美视频| 超清无码一区二区三区| 亚洲成人网在线播放| 99免费在线观看视频| 亚洲成人在线免费| 91色综合综合热五月激情| 国产尤物jk自慰制服喷水| 久久女人网| 波多野结衣无码AV在线| 91精选国产大片| 国产精品自拍露脸视频| 全免费a级毛片免费看不卡| 欧美五月婷婷| 国产乱子精品一区二区在线观看| 亚洲视频a| 99er这里只有精品| 不卡的在线视频免费观看| 欧美高清三区| 欧美激情综合| 丁香婷婷激情综合激情| 日本一区高清| 国产裸舞福利在线视频合集| 国产欧美视频综合二区 | 亚洲美女一区二区三区| 亚洲国产成人精品青青草原| 色135综合网| 国产精品 欧美激情 在线播放|