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

?

基于CUDA的圖像去霧算法并行化計(jì)算的研究和設(shè)計(jì)

2019-12-25 08:07:36侯天峰曾舒婷
微型電腦應(yīng)用 2019年12期
關(guān)鍵詞:原色透射率先驗(yàn)

侯天峰, 曾舒婷

(南京大學(xué)金陵學(xué)院 信息科學(xué)與工程學(xué)院, 南京 210089)

0 引言

霧天等不利因素對(duì)圖像和視頻質(zhì)量有較大影響, 去霧可以改善圖片質(zhì)量。當(dāng)前圖像去霧算法主要有兩類:一類是基于圖像增強(qiáng)的方法,如直方圖均衡化技術(shù)[1]。此類方法假設(shè)場(chǎng)景景深不變,但降質(zhì)與成像距離存在指數(shù)關(guān)系,因此圖像增強(qiáng)類方法去霧效果有限。另一類基于大氣散射原理,建立圖像退化模型,利用先驗(yàn)知識(shí)進(jìn)行去霧求解約束。如文獻(xiàn)[2]基于無霧圖像較有霧圖像有著更高的對(duì)比度這一先驗(yàn)約束,通過提高恢復(fù)圖像的局部對(duì)比度來實(shí)現(xiàn)去霧。Fattal基于統(tǒng)計(jì)學(xué)的提出一種新的去霧方法,對(duì)色彩差異豐富的圖像取得了不錯(cuò)的效果[3]。文獻(xiàn)[4]基于大量戶外無霧圖像的統(tǒng)計(jì)規(guī)律,提出一種簡(jiǎn)單有效的暗原色先驗(yàn)單幅圖像去霧算法,對(duì)一般戶外圖像取得了很好的去霧效果,但算法運(yùn)算復(fù)雜度較高,難以應(yīng)用于快速處理場(chǎng)景。

CUDA是NVIDIA公司提出的GPU并行計(jì)算架構(gòu)[5],利用GPU中的多顆計(jì)算核心進(jìn)行通用計(jì)算處理工作,計(jì)算性能可獲得顯著提升,給GPU編程和并行計(jì)算提供了一個(gè)簡(jiǎn)單方便的途徑[6],因此自提出以來得到迅速發(fā)展。目前,使用GPU進(jìn)行數(shù)據(jù)密集型計(jì)算已經(jīng)成為數(shù)據(jù)處理并行化的主要手段之一,廣泛應(yīng)用于科學(xué)技術(shù)、人工智能及大數(shù)據(jù)方向。如何根據(jù)GPU特點(diǎn)設(shè)計(jì)適合其處理的并行算法,以及合理利用CPU/GPU的協(xié)同處理提高性能是解決性能問題的主要工作[7]。

本文研究了暗原色先驗(yàn)的去霧算法及各個(gè)算法步驟的運(yùn)算復(fù)雜度,并基于CUDA框架,設(shè)計(jì)和提出算法并行化處理方案,實(shí)現(xiàn)CPU+GPU的異構(gòu)計(jì)處理,以顯著提高運(yùn)算速度,滿足高清實(shí)時(shí)圖像處理的需求。

1 暗原色去霧算法

去霧問題數(shù)學(xué)模型可以描述如式(1)。

I(x)=J(x)t(x)+A(1-t(x))

(1)

(1)式為大氣散射模型,描述霧化圖像的退化過程,其中I是退化后圖像,J是無霧圖像,A為大氣光,t稱為透射率。去霧的目標(biāo)就是從I中復(fù)原J。

暗原色先驗(yàn)指出在絕大多數(shù)戶外圖像局部區(qū)域里,局部區(qū)域內(nèi)圖像像素總會(huì)有至少一個(gè)顏色通道具有很低的值如式(2)。

(2)

Jc代表J的某個(gè)顏色通道,Ω(x)為鄰域。Jdark稱為J的暗原色,Jdark的強(qiáng)度總是很低且趨近于0。

假設(shè)大氣光A給定,局部區(qū)域的透射率恒定不變。方程(1)在三個(gè)顏色通道中使用最小運(yùn)算符,并同除以A,得到式(3)。

(3)

根據(jù)暗原色先驗(yàn)的規(guī)律,無霧自然圖像的暗原色項(xiàng)Jdark應(yīng)該接近于0如式(4)。

可見,《辭源》的既有處理方式很明顯將“安劉1”與“安劉2”雜糅了在一起,此種處理方式所造成的結(jié)果便是典故詞語(yǔ)詞目的失收。

(4)

由于Ac總為正數(shù),導(dǎo)出式(5)。

(5)

把上式代入(4),可估算出透射率t,為使圖像看起來更真實(shí)自然,通常會(huì)保留一部分霧,由ω控制如式(6)。

(6)

由上式估計(jì)出透射率是粗略的,為了提高精度,可應(yīng)用軟摳圖或?qū)驗(yàn)V波進(jìn)行透射率精化得到完善后的透射率t(x)[2-3]。

通過下式計(jì)算去霧圖像如式(7)。

(7)

2 去霧算法并行化方案

2.1 求解暗原色、初始透射率和大氣光

設(shè)定圖像分辨率為m×n,求解暗通道和初始透射率在計(jì)算上基本一致,因此實(shí)現(xiàn)并行化過程也基本相同,在進(jìn)行數(shù)據(jù)劃分和線程分配時(shí)候的操作也近似。兩個(gè)步驟并行度一樣皆為去霧圖像的像素個(gè)數(shù)。一個(gè)線程對(duì)應(yīng)一個(gè)像素點(diǎn),每個(gè)單一線程都可以取得所需的數(shù)據(jù)窗,然后進(jìn)行處理,如圖1所示。

圖1 像素和線程對(duì)應(yīng)關(guān)系

圖1中某個(gè)15×15的局部區(qū)域,其求暗通道計(jì)算與其他區(qū)域互不沖突,整個(gè)圖像可以劃分成可分m×n個(gè)圖像塊,相應(yīng)的暗通道求解可以分配給一個(gè)CUDA的Block來實(shí)現(xiàn)。每個(gè)像素點(diǎn)對(duì)應(yīng)一個(gè)線程id,可以通過歸約算法實(shí)現(xiàn)求最小值運(yùn)算。

大氣光的估計(jì)步驟:首先選取暗原色中亮度最大的0.1%的像素,這些像素大都是不透明的,在以上像素當(dāng)中,輸入圖像中強(qiáng)度最大的像素點(diǎn)被選定為大氣光。暗原色圖像求取0.1%亮度最大像素點(diǎn)的過程,也可以通過圖像分塊的方式,實(shí)現(xiàn)并行化處理。

2.2 透射率精化

本文精化透射率使用導(dǎo)向?yàn)V波算法[8],其主要計(jì)算過程為一系列Box filter處理,即均值濾波,二維圖像均值濾波可分解為x和y方向的兩次一維濾波(下圖3中表示為i和j)。單一Box filter計(jì)算,可以通過圖像分塊的方式進(jìn)行并行化,此外還可以使用縱向合并,將有并列關(guān)系的Kernel合并至同一個(gè)Kernel,以降低啟動(dòng)Kernel的開銷,與此同時(shí)將數(shù)據(jù)進(jìn)行共享,從而降低訪問開銷,如圖2所示。

上圖中的橢圓代表一個(gè)Kernel,矩形代表數(shù)據(jù),上圖所表示的即為將Kernel進(jìn)行合并的示例圖,由此我們可以減少Kernel的數(shù)目從而減少開銷,同時(shí)在部分Kernel中,數(shù)據(jù)是共享的,從而減少相應(yīng)的訪問次數(shù)。

2.3 圖像去霧

去霧部分在整個(gè)去霧算法中占用的系統(tǒng)資源其實(shí)是最少的,其計(jì)算量也最小,而且每個(gè)像素的處理都是獨(dú)立的,所以在處理圖像去霧的并行化時(shí),可以將去霧的運(yùn)算部分集合到上面計(jì)算透射率時(shí)整合的最后一個(gè)Kernel,從而減少了數(shù)據(jù)訪問和啟動(dòng)開銷。

3 實(shí)驗(yàn)

本文實(shí)驗(yàn)在搭載NVDIA GPU的筆記本電腦上實(shí)現(xiàn)的,主要配置為:GTX 860m顯卡,英特爾i5處理器4210h。代碼基于C++編程,利用Qt平臺(tái)搭配OpenCV,使用CUDA9.1。

實(shí)驗(yàn)中,通過對(duì)比同算法在有無CUDA加速的情況下對(duì)相同的一幅圖像進(jìn)行去霧處理,其運(yùn)算效果和消耗的時(shí)間來評(píng)價(jià)協(xié)同計(jì)算的優(yōu)勢(shì)。為實(shí)驗(yàn)的嚴(yán)謹(jǐn)性,本文選取了不同分辨率的含霧圖像進(jìn)行了多組實(shí)驗(yàn),結(jié)果如表1所示:

表1 不同分比率含霧圖像處理時(shí)間對(duì)比

圖2 精細(xì)化透射率模塊Kernel關(guān)系

一般來說圖片尺寸越大,提升的效果就越明顯,如圖3所示。

測(cè)試中所使用的4組樣本實(shí)例和去霧效果如下圖4所示。

需要說明的是,本文實(shí)現(xiàn)的是He的原暗原色去霧算法,主要工作是探究GPU并行化處理方案,進(jìn)行處理時(shí)間優(yōu)化,至于去霧效果自然與原算法一致,GPU加速并不會(huì)導(dǎo)致去霧效果有所損失。同時(shí),目前去霧領(lǐng)域并未提出較為有效的去霧效果客觀評(píng)價(jià)指標(biāo),主要評(píng)判依據(jù)還是從幾個(gè)方面進(jìn)行主觀比較,包括有霧覆蓋區(qū)域恢復(fù)細(xì)節(jié)程度、邊緣的暈化現(xiàn)象、對(duì)比度、色彩失真度、色彩噪聲等。這也是作者后續(xù)需要繼續(xù)努力研究的方向。

圖3 不同像素圖像處理時(shí)間提升倍率

(a) 原圖

(b) 暗原色

(c) 初始透射率

(d) 精化透射率

(e) 去霧圖像

圖4 圖像去霧效果

4 總結(jié)

本文基于CUDA平臺(tái),對(duì)暗原色去霧算法進(jìn)行研究,并探討和提出并行化處理方案,實(shí)驗(yàn)結(jié)果表明本文方法可以顯著提升算法執(zhí)行效率。受制于算法本身復(fù)雜度和硬件測(cè)試平臺(tái)的限制,離真正的實(shí)時(shí)化處理尚有舉例,因此繼續(xù)改善算法和減少運(yùn)算時(shí)間是后續(xù)工作繼續(xù)努力的方向。

猜你喜歡
原色透射率先驗(yàn)
基于無噪圖像塊先驗(yàn)的MRI低秩分解去噪算法研究
純色太陽(yáng)鏡鏡片耐日光輻照性能試驗(yàn)研究
基于自適應(yīng)塊組割先驗(yàn)的噪聲圖像超分辨率重建
風(fēng)
詩(shī)潮(2016年5期)2016-05-14 22:36:14
一種應(yīng)用于車牌檢測(cè)的改進(jìn)暗原色去霧算法
基于平滑先驗(yàn)法的被動(dòng)聲信號(hào)趨勢(shì)項(xiàng)消除
原色兒童村:讓孩子回歸自然
先驗(yàn)的廢話與功能的進(jìn)路
石墨烯光柵太赫茲透射特性的研究
玻璃長(zhǎng)波透射率對(duì)普通雙層中空玻璃熱特性的影響
伊川县| 西城区| 丹阳市| 灯塔市| 墨竹工卡县| 水富县| 静安区| 八宿县| 昌平区| 彭泽县| 广安市| 商洛市| 门源| 沽源县| 霍林郭勒市| 修武县| 宿迁市| 密山市| 鄂托克前旗| 凌海市| 灵丘县| 靖远县| 富宁县| 三原县| 汝阳县| 卓尼县| 南平市| 浮山县| 乐至县| 黑河市| 清丰县| 万州区| 托克逊县| 武陟县| 白朗县| 镶黄旗| 剑阁县| 金川县| 五河县| 黑龙江省| 镇江市|