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

基于CUDA的相息圖快速生成算法研究

2018-04-26 01:47:15辛誠周權
現代計算機 2018年5期

辛誠,周權

(國防科技大學電子對抗學院,合肥 230037)

0 引言

近年來,隨著計算機計算能力的提升和波前變換器件的發展,計算全息技術在三維顯示、光學檢測和光信息處理等多個領域都具備了廣闊的發展前景[1-3]。

計算全息技術采用計算機編程方式生成全息圖,再通過諸如空間光調制器(SLM)或數字微鏡(DMD)等波前變換器件完成光波前的振幅或相位調制,從而實現全息再現或光場調制的目的。全息圖的計算生成速度決定了計算全息技術的性能效率和應用范圍。針對大量物點的全息圖生成是一項計算密集型任務。物點個數的增加和全息圖分辨率的提高都會導致傳統的基于CPU運算的全息圖生成方法耗時迅速增加,甚至無法滿足實際應用需求。

本文介紹了利用CUDA并行計算方法生成相息圖的快速算法,有效縮短了相息圖生成的計算時間,并通過空間光調制器完成了相息圖的全息再現實驗驗證。

1 CUDA并行計算技術

CUDA(Compute Unified Device Architecture)是NVIDIA推出的一個基于GPU通用計算的并行計算平臺和編程模型[4]。它利用圖形處理器(GPU)多處理單元的特性,通過大量的線程級并行實現計算性能的顯著提高。

典型的CUDA程序執行流程如圖1所示。運行于CPU上的主機端(Host)程序依次完成設備初始化和數據準備等串行任務;運行于GPU上的設備端(Device)程序并行執行一系列的Kernel函數;最后完成由設備端至主機端的數據拷貝。

圖1 典型的CUDA程序執行流程

CUDA程序執行過程中,每一個執行線程都隸屬于一個特定的區塊(Block)。隸屬同一區塊的多個線程可以以一維到三維的方式進行排列。所有的區塊也會以一維或二維的方式排列在網格(Grid)內。

每個線程和區塊根據排列方式不同而具有不同的編號(ThreadIdx/BlockIdx)。其組織形式如圖2所示。

圖2 CUDA架構中線程的組織形式

2 基于CUDA的相息圖生成算法

2.1 相息圖生成的理論模型

相息圖是計算全息技術中特有的一種全息圖。在生成相息圖的過程中,認為物光波的振幅是恒定的,僅記錄物光波在相息面位置的相位分布。從各個物點發出的光波在相息面上( )x,y位置的復振幅分布可以表示成:

其中,N是物點總數,rn是第n個物點到相息面的距離,an,φn分別是第n個物點光波的振幅和相位。可以用A(x,y)和φ(x,y)分別表示所有物點光波在相息面上的振幅和相位分布。相息圖只記錄其中的相位信息 φ(x,y)。

考慮到相位的周期性,相位編碼只需考慮0到2π之間的相位變化,則有:

其中 φk(x ,y) 是 φ(x ,y)取模數2π 后的余數,將其歸一化至某動態范圍(0-255),即可得到相息圖對應的灰度圖。其透過率可以表示為:

根據相位角的定義,可以得到:

則相息圖的透過率為:

考慮平行光正入射到相息圖,其出射光的復振幅分布可以表示為:

2.2 算法實現

假設物點個數為N,相息圖平面位置的像元個數為Px×Py。根據2.1小節中給出的相息圖生成模型,相息圖平面上的相位分布在每個像元位置均由所有物點的物光波在該處疊加形成。若通過標準的CPU程序對該問題進行求解,只能通過循環嵌套的方式遍歷所有物點和像元,時間開銷為N×Px×Py。在物點較多且像元分辨率較高的情況下,計算過程會變得非常緩慢。

由相息圖生成模型可以看出,各個像元處的相位分布相互之間無關聯,可以獨立進行計算。將CUDA并行方法應用于該計算過程時,對網格(Grid)和區塊(Block)進行合適的二維劃分,其維度為別為(Gx,Gy)和(Bx,By),且有:

這樣的劃分使得每一個線程(Thread)負責一個像元位置的相位分布計算,時間開銷為N,只與物點個數有關,相比傳統的CPU程序,可以有效的降低計算時間。

主機端串行程序執行流程如圖3所示。

圖3 主機端串行程序流程示意圖

設備端執行的Kernel函數流程如圖4所示。

圖4 設備端Kernel函數執行流程

3 計算結果和實驗驗證

實驗過程中采用個人計算機(i5-3320M 2.6G,NVIDIA NVS 5400M)進行相息圖的生成;并參照文獻[5]中給出的結構,利用He-Ne激光器和HOLOEYE空間光調制器(LC-R-720,1280×768,20μm)構建全息再現光路,如圖5所示。

圖5 全息再現光路示意圖

為了消除了空間光調制器本身二維結構引起的多級衍射光和相息圖對應的多級再現像,相息圖生成過程中疊加了閃耀光柵和發散球面波的相位信息,并通過位于平面2位置的濾波器進行空間濾波,在平面3

圖6 相息圖及其再現像

表1中比較了利用CUDA并行計算和傳統CPU運算生成相息圖所需的計算時間。可以看出,采用CUDA并行計算方法,計算效率提升約在200倍左右。在物點個數為100時,耗時約50ms,接近了實時幀率。

表1 兩種計算方式的耗時比較

4 結語

為提高計算全息應用過程中全息圖的生成速度,本文以相息圖計算為例,提出了采用CUDA并行計算方法的相息圖快速生成算法,并對生成的相息圖進行了全息再現實驗驗證。相比利用CPU進行運算的程序,并行加速方法可以有效縮短相息圖的生成時間,計算效率提升約在200倍左右,對100個物點生成分辨率為1280×768的相息圖用時約50ms,接近實時幀率。

參考文獻:

[1]賈甲,王涌天,劉娟,等.計算全息三維實時顯示的研究進展[J].激光與光電子學進展,2012,49(5):050002.

[2]高松濤,隋永新,楊懷江.用計算全息圖對非球面的高精度檢測與誤差評估[J].光學學報,2013,33(6):102-108.

[3]孔德照,沈學舉,趙燕,等.基于計算全息和隨機相位編碼的三維信息的加密與顯示[J].激光與光電子學進展,2015,52(10):116-120.

[4]Sanders J,Kandrot E.CUDA by Example:An Introduction to General-Purpose GPU Programming[M].Addison-Wesley Professional,2010.

[5]沈川,張成,劉凱峰,等.基于像素結構空間光調制器的全息再現像問題研究[J].光學學報,2012,32(3):0309001.

主站蜘蛛池模板: 99热这里都是国产精品| 欲色天天综合网| 国产成人综合日韩精品无码首页| 无码电影在线观看| 国产区精品高清在线观看| 亚洲日韩高清在线亚洲专区| 啪啪免费视频一区二区| 无码AV动漫| 亚洲国产成人麻豆精品| 免费看一级毛片波多结衣| 欧美一区国产| 欧美福利在线观看| 免费无码AV片在线观看国产| 欧美三级日韩三级| 国产婬乱a一级毛片多女| 免费观看男人免费桶女人视频| 在线播放91| 曰韩免费无码AV一区二区| 亚洲成人精品| 成人一级免费视频| 无码中文字幕乱码免费2| 欧美a在线看| 毛片一级在线| 久久国产拍爱| 亚洲中文字幕在线精品一区| 精品视频一区二区观看| 国产成人久久777777| 18禁黄无遮挡免费动漫网站 | 国产乱人伦AV在线A| 免费视频在线2021入口| 日韩中文精品亚洲第三区| 尤物国产在线| 蜜桃视频一区二区| 国产系列在线| 国产乱人伦偷精品视频AAA| 欧美激情福利| 亚洲无码免费黄色网址| 亚洲第一极品精品无码| 成人福利免费在线观看| 少妇极品熟妇人妻专区视频| 狠狠ⅴ日韩v欧美v天堂| 亚洲欧美日韩动漫| 一本一道波多野结衣av黑人在线| 日韩东京热无码人妻| 五月天久久综合| 国产欧美日韩综合一区在线播放| 国产人人射| 亚洲欧洲免费视频| 小说 亚洲 无码 精品| 国产精品久久久久久久久kt| 三上悠亚精品二区在线观看| 日韩精品一区二区三区免费在线观看| 日韩亚洲高清一区二区| 91破解版在线亚洲| 五月婷婷亚洲综合| 中文毛片无遮挡播放免费| 国产视频 第一页| 久久semm亚洲国产| 国产成人亚洲无吗淙合青草| 中文字幕人成人乱码亚洲电影| 日本一区中文字幕最新在线| 欧美成人手机在线观看网址| 91在线精品免费免费播放| 国产经典在线观看一区| 色噜噜狠狠狠综合曰曰曰| 午夜丁香婷婷| 久久a毛片| 欧美激情视频二区| 中日韩欧亚无码视频| 亚洲h视频在线| 好吊色国产欧美日韩免费观看| 久久久亚洲色| 色综合a怡红院怡红院首页| 亚洲三级电影在线播放| 91精品国产一区自在线拍| 无码国产偷倩在线播放老年人| av色爱 天堂网| 国产欧美日韩视频一区二区三区| 亚洲熟妇AV日韩熟妇在线| 亚洲精品欧美日本中文字幕| 国产精品专区第一页在线观看| 最新无码专区超级碰碰碰|