国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于畸變矩陣的影像畸變差改正

2015-10-14 01:28:01朱桂海蔣紅兵蒙印
測(cè)繪技術(shù)裝備 2015年3期
關(guān)鍵詞:畸變內(nèi)存像素

朱桂海 蔣紅兵 蒙印

?

基于畸變矩陣的影像畸變差改正

朱桂海 蔣紅兵 蒙印

(四川省遙感信息測(cè)繪院 四川成都 610100)

針對(duì)已有的影像畸變差改正程序中存在每張影像分別進(jìn)行迭代計(jì)算的問(wèn)題,提出了基于畸變矩陣的影像畸變差改正方法。新方法首先利用影像行列數(shù)、相機(jī)內(nèi)方位元素與畸變參數(shù),計(jì)算影像畸變矩陣;然后,利用該畸變矩陣對(duì)多張航空影像進(jìn)行畸變差改正。新方法克服了間接法影像畸變差改正算法的逐像素迭代計(jì)算的缺點(diǎn),大大降低了影像畸變差改正的平均計(jì)算量?;贑PU/GPU的影像畸變差改正試驗(yàn),證明本文提出的方法降低了影像畸變差改正的計(jì)算復(fù)雜度,提高了影像畸變差改速度,在無(wú)人機(jī)影像快速處理中具有一定的實(shí)用價(jià)值。

畸變差改正 畸變矩陣 間接法 GPU

1 引言

目前,國(guó)內(nèi)一些主要的攝影測(cè)量處理軟件大都針對(duì)量測(cè)型相機(jī)設(shè)計(jì)的,在處理普通數(shù)碼相機(jī)影像時(shí),需要在空三平差前對(duì)影像進(jìn)行畸變差改正[1-4]。已有的影像畸變差改正方法,主要分為三種形式:(1)基于CPU的逐像素串行計(jì)算;(2)基于CPU的多像素并行計(jì)算;(3)基于GPU的多個(gè)像素并行計(jì)算[1]。相對(duì)于方式(1),方式(2)能夠充分利用CPU的多核計(jì)算,提高計(jì)算速度;相對(duì)方式(2),方式(1)能夠充分利用GPU的超線程加速計(jì)算,提高計(jì)算速度。但是,方式(1)、(2)、(3)在處理多張影像時(shí),需要對(duì)每張影像中的每個(gè)像素進(jìn)行迭代計(jì)算,沒(méi)有考慮多張影像畸變的一致性,造成了巨大的額外計(jì)算,影響了畸變差改正的速度。

近年,隨著計(jì)算機(jī)軟硬件的快速發(fā)展,64位處理器、64位系統(tǒng)、32G或更高內(nèi)存已成為工作站的標(biāo)準(zhǔn)配置。開(kāi)發(fā)64程序不僅可以提高運(yùn)算速度,而且能夠以“空間換時(shí)間”方式優(yōu)化已有算法,減少計(jì)算量??紤]到,航空攝影中,同一架次飛行所獲取的影像具有相同的內(nèi)方位元素與畸變參數(shù)[5-7],本文提出了一種基于影像畸變矩陣的影像畸變差改正方法。該方法將影像畸變差改正與雙線性差值分離,即首先根據(jù)影像的內(nèi)方位元素與畸變參數(shù)計(jì)算影像畸變矩陣,然后利用影像畸變矩陣對(duì)每張影像進(jìn)行雙線性差值。利用本文方法進(jìn)行多張影像畸變差改正處理時(shí),能夠降低每張影像平均迭代計(jì)算量,提高影像畸變差改正速度。

2 影像畸變差改正方法與處理流程

目前,已有攝影測(cè)量處理軟件大都采用如圖1所示的影像畸變差改正流程[2, 3]。該處理流程,針對(duì)每張航空影像中的每個(gè)像素計(jì)算其畸變改正量,并沒(méi)有對(duì)同一測(cè)區(qū)的多幅影像做任何優(yōu)化處理,存在冗余計(jì)算的問(wèn)題。

圖1:傳統(tǒng)的影像畸變差改正處理流程

2.1 基于畸變矩陣的影像畸變差改正處理流程

針對(duì)傳統(tǒng)的影像畸變差改正處理流程存在的問(wèn)題,本文提出了基于畸變矩陣的影像畸變差改正方法,其處理流程如圖2所示。

2.1.1 計(jì)算量分析

對(duì)于N幅影像,影像行列數(shù)為m * n,假設(shè)每個(gè)像素平均需要迭代t次,則傳統(tǒng)的影像畸變差改正方法總共需要N*m*n*t次運(yùn)算,平均每張影像所用的運(yùn)算次數(shù)為m*n*t;而本文提出的影像畸變差改正實(shí)現(xiàn)方法,總共需要m*n*t次運(yùn)算,平均每張影像所用的時(shí)間為m*n*t/N次運(yùn)算。即,本文提出的影像畸變差改正算法所需要的計(jì)算量為傳統(tǒng)算法的1/N。當(dāng)N為1時(shí),本文方法的計(jì)算量與傳統(tǒng)方法的計(jì)算量一致;當(dāng)N大于1時(shí),本文方法的計(jì)算量為傳統(tǒng)方法的計(jì)算量的1/N;當(dāng)N趨近于無(wú)窮大時(shí),本文提出的實(shí)現(xiàn)方法計(jì)算量趨近于0。即當(dāng)需要處理的影像數(shù)量很大時(shí),影像畸變差改正需要的計(jì)算量趨近于0,每張影像的進(jìn)行影像畸變差改正處理的總計(jì)算量趨近于雙線性差值所需要的計(jì)算量。

圖2:本文提出的影像畸變差改正處理流程

圖3:平均單張影像畸變差改正計(jì)算量

根據(jù)圖3,可知基于影像畸變矩陣的影像畸變差改正算法,單幅影像畸變差改正的計(jì)算量,隨著影像數(shù)目的增大而減少。

2.1.2 內(nèi)存分析

對(duì)于行列數(shù)為m×n的影像,本文處理流程需要大小為2×m×n×4字節(jié)的內(nèi)存空間,存儲(chǔ)畸變矩陣matrix_y(m×n)與matrix_x(m×n)。

3 試驗(yàn)與分析

3.1 試驗(yàn)數(shù)據(jù)與軟硬環(huán)境

本文選擇了32張分辨率為5616×3744的無(wú)人機(jī)影像作為實(shí)驗(yàn)數(shù)據(jù)。

本文所涉及的多種影像畸變差方式均在VC++2013中進(jìn)行編碼,并在配置為Intel? Xeon? 2.5GHz、32GB、NVIDIA Quadro K2000的工作站中運(yùn)行。

3.2 試驗(yàn)結(jié)果

式中:pti0為虛擬節(jié)點(diǎn),表示部件任務(wù)ti∈PartTask開(kāi)始時(shí)的初始狀態(tài);pti為處理步驟的集合,即按順序排列的已完工工序任務(wù)的集合;ptij∈ProcedureTask(1≤i≤n,1≤j≤k)表示部件任務(wù)ti下屬的某個(gè)已完工工序任務(wù),視為數(shù)據(jù)世系DLti的一個(gè)處理步驟,也稱為DLti的一條記錄。

圖4:平均單幅影像處理所需時(shí)間

圖5:平均單幅影像處理加速比

本文編制64位程序,分別實(shí)現(xiàn)第一小節(jié)中的影像畸變差改正方式(1)、(2)、(3),統(tǒng)計(jì)本文方法與傳統(tǒng)方法畸變差改正所用時(shí)間,并計(jì)算本文方法相對(duì)于傳統(tǒng)方法的加速比,如圖5所示。方式(2),本文使用微軟并行計(jì)算庫(kù)PPL[8];方式(3)本文使用微軟C++ AMP計(jì)算庫(kù)[8, 9]。

3.3 試驗(yàn)分析

從圖4與圖5可以得出以下結(jié)論:

3.3.1 利用CPU串行實(shí)現(xiàn)本文方法

本文提出的方法能夠隨著需要處理的影像數(shù)的增大而更突顯優(yōu)勢(shì);當(dāng)需要處理的影像數(shù)增大到一定程度后,本文提出的算法的加速比趨于穩(wěn)定,即2.2倍。

3.3.2 利用CPU并行實(shí)本文方法

本文提出的方法相對(duì)于傳統(tǒng)方法的加速比,隨著需要處理的影像數(shù)的增大而增大;當(dāng)待處理的影像數(shù)增大到一定程度后,本文提出的算法的加速比趨于穩(wěn)定,即2倍。

本文提出的方法相對(duì)于傳統(tǒng)方法的加速比,隨著影像數(shù)的增大而趨于增大;但是加速比小于1.0,即本文提出的方法在進(jìn)行使用GPU進(jìn)行實(shí)現(xiàn)時(shí),算法的計(jì)算量降低了,但用時(shí)卻增加了。

影像畸變差改正方式(1)與(2)與第二小節(jié)中的理論推理一致,但是(3)與理論推導(dǎo)不一致。利用GPU并行實(shí)現(xiàn)新方法時(shí),需要開(kāi)辟2×m×n×4字節(jié)大小的內(nèi)存,存儲(chǔ)畸變矩陣。但由于本文的畸變矩陣的計(jì)算是在GPU中實(shí)現(xiàn),需要2次內(nèi)存與顯存之間的數(shù)據(jù)交換,此外,在利用畸變矩陣,對(duì)每張影像進(jìn)行畸變差改正的過(guò)程中,需要每次將畸變矩陣載入顯存。相對(duì)于傳統(tǒng)的方法,本文方法在處理N幅影像時(shí),需要多進(jìn)行N+2次內(nèi)存與顯存之間的數(shù)據(jù)交換,共計(jì)需要(N+2)×(2×m×n×4)字節(jié)的數(shù)據(jù)交換。一般情況下,顯存與內(nèi)存之間的數(shù)據(jù)交換速度比內(nèi)存數(shù)據(jù)存取速度慢的多[9]。因此,在利用GPU并行實(shí)現(xiàn)本文方法時(shí),得到如圖5所示的結(jié)果。將畸變矩陣保存在顯存中,減少內(nèi)存與顯存之間的數(shù)據(jù)交換次數(shù),將能顯著地提高方式(3)的計(jì)算速度。

4 結(jié)束語(yǔ)

本文提出了一種基于畸變矩陣的影像畸變差改正實(shí)現(xiàn)方法,并通過(guò)編程對(duì)其進(jìn)行實(shí)現(xiàn)。試驗(yàn)證明,本文提出的影像畸變差改正實(shí)現(xiàn)方法,能夠降低影像畸變差改正的計(jì)算量,提高影像畸變差改正的處理速度,在對(duì)處理速度要求較高的應(yīng)急無(wú)人機(jī)影像快速處理中具有一定的實(shí)用價(jià)值。如何減少內(nèi)存與顯存的交換次數(shù),以提高基于GPU并行的影像畸變差改正加速比,需要進(jìn)一步研究。

[1] 詹總謙,盧亮.基于GPU并行處理技術(shù)的影像畸變差修正[J].測(cè)繪信息與工程,2011(02):1-3.

[2] 李德龍.基于CUDA的無(wú)人機(jī)影像快速并行處理算法研究[D].北京:北京建筑大學(xué),2013.

[3] 王愷.數(shù)字?jǐn)z影測(cè)量影像數(shù)據(jù)的GPU并行處理研究[D].蘭州:蘭州交通大學(xué),2013.

[4] 張劍清,柯濤,孫明偉,等.并行計(jì)算在航空攝影測(cè)量中的應(yīng)用與實(shí)現(xiàn)——數(shù)字?jǐn)z影測(cè)量網(wǎng)格(DPGrid)并行計(jì)算技術(shù)研究[J].測(cè)繪通報(bào),2008(12):11-14.

[5] 李天子,郭輝.非量測(cè)數(shù)碼相機(jī)的影像糾正[J].測(cè)繪通報(bào),2006(10):59-61.

[6] 王樹(shù)根,張劍清,潘勵(lì).攝影測(cè)量學(xué)[M].武漢:武漢大學(xué)出版社,2002:158-166.

[7] 陳新璽,李浩,張曼祺.普通數(shù)碼相機(jī)構(gòu)像畸變差兩種檢校模型的比較[J].北京測(cè)繪,2005(04).

[8]Microsoft. C++ Accelerated Massive Parallelism Overview[EB/OL]. http://msdn.microsoft.com/zh-cn/library/hh265136.aspx.

[9] 格雷戈里.C++AMP用Visual C++加速大規(guī)模并行計(jì)算[M].北京:人民郵電出版社,2014.

四川省測(cè)繪地理信息局科技支撐項(xiàng)目(J2014ZC04、J2015ZC04),國(guó)家測(cè)繪地理信息局科技發(fā)展計(jì)劃項(xiàng)目(國(guó)測(cè)科發(fā)[2014]4號(hào))

猜你喜歡
畸變內(nèi)存像素
趙運(yùn)哲作品
藝術(shù)家(2023年8期)2023-11-02 02:05:28
像素前線之“幻影”2000
“像素”仙人掌
“春夏秋冬”的內(nèi)存
在Lightroom中校正鏡頭與透視畸變
高像素不是全部
CHIP新電腦(2016年3期)2016-03-10 14:22:03
輻射誘導(dǎo)染色體畸變的快速FISH方法的建立
基于內(nèi)存的地理信息訪問(wèn)技術(shù)
《癌變·畸變·突變》2014年第26卷索引
《癌變·畸變·突變》第六屆編委會(huì)第2次會(huì)議紀(jì)要
龙井市| 虞城县| 高淳县| 黄骅市| 太原市| 科尔| 洛川县| 宁城县| 正宁县| 屏山县| 鄱阳县| 浪卡子县| 霍林郭勒市| 承德市| 杨浦区| 东至县| 资源县| 渝北区| 陕西省| 东兰县| 茌平县| 盖州市| 淮安市| 台北市| 得荣县| 东宁县| 乃东县| 珲春市| 策勒县| 桐梓县| 周宁县| 井陉县| 开封县| 略阳县| 东乡县| 宁陕县| 尤溪县| 南平市| 靖西县| 邵东县| 慈利县|