国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種基于cuda的低照度圖像增強并行優(yōu)化方法

      文檔序號:8905657閱讀:874來源:國知局
      一種基于cuda的低照度圖像增強并行優(yōu)化方法
      【技術(shù)領(lǐng)域】
      [0001] 本發(fā)明設(shè)及并行計算領(lǐng)域,W及圖像處理算法技術(shù)領(lǐng)域,具體是一種基于CUDA的 低照度圖像增強并行優(yōu)化方法。
      【背景技術(shù)】
      [0002] 為了提高社會的公共安全,很多公共場所都安裝了視頻監(jiān)控系統(tǒng),來通過監(jiān)控圖 像了解情況。但在夜間光線太弱,能見度很低的情況下,人眼不易觀察到周圍環(huán)境,使用圖 像采集設(shè)備在夜晚采集到的圖像往往偏黑,使得周圍景物的可辨識度下降,不能滿足一些 實際用途。因此,使用低照度圖像增強算法處理圖像,把夜晚的圖像轉(zhuǎn)換為白天可W看到場 景細節(jié)的圖像,在生活中的方方面面都是很有意義的。然而由于圖像增強算法計算量大,運 行時間很長,不能滿足實際應(yīng)用中的實時處理要求,很難將算法應(yīng)用到實際需求中。對算法 層面進行優(yōu)化和將算法進行并行處理來有效降低處理時間是非常有必要的。
      [0003] 由于圖像數(shù)據(jù)的特點,并行計算也逐漸應(yīng)用到圖像處理領(lǐng)域中。為了加快計算速 度,并行技術(shù)從多核處理器逐漸發(fā)展到GPU,GPU不再局限于對3D圖形圖形處理,在浮點運 算和并行計算等方面都有優(yōu)于CPU的性能。在CPU/GPU異構(gòu)系統(tǒng)中,多核CPU可W提供通 用的計算能力,GPU在數(shù)字圖像處理并行化計算方面有明顯的優(yōu)勢,并被廣泛應(yīng)用于圖像處 理領(lǐng)域中。
      [0004] 申請?zhí)枮镃N201410713588的中國發(fā)明專利公開了一種圖像增強方法及裝置,在 獲取圖像后,根據(jù)預(yù)設(shè)的灰塵標記位置確定圖像需要增強的位置;統(tǒng)計圖像的直方圖,W確 定圖像需要增強的位置上的像素值在整個圖像的像素值分布比例;根據(jù)圖像需要增強的位 置上的像素值在整個圖像的像素值的分布比例,對圖像需要增強的位置上的像素值進行處 理;輸出處理后的圖像,來提高拍攝圖像的清晰度。
      [0005] 申請?zhí)枮镃N201420766172的中國發(fā)明專利公開了一種具有圖像增強功能的計算 機圖像處理系統(tǒng),主要由圖像增強電路W及同圖像增強電路連接的光電禪合器組成;還包 括攝像頭、視頻編碼器、FPGA處理器、禪合電路、圖像顯示電路、時鐘電路,視頻編碼器連接 圖像增強電路,圖像增強電路連接光電禪合器,F(xiàn)PGA處理器連接光電禪合器,F(xiàn)PGA處理器 連接禪合電路,視頻編碼器連接FPGA處理器;TV監(jiān)視器連接視頻解碼電路,時鐘電路分別 連接視頻編碼器、圖像增強電路、FPGA處理器、視頻解碼電路;加載視頻編碼電路,用于進 行視頻再次編碼,并采用成熟的圖像增強技術(shù)對圖像需要增強的部位進行增強,W保障后 臺顯示圖像的真實質(zhì)感效果更佳。

      【發(fā)明內(nèi)容】

      [0006] 本發(fā)明的目的在于提供一種基于CUDA的低照度圖像增強并行優(yōu)化方法,是指在 GPU上使用CUDA編程模型對基于暗原色去霧技術(shù)的低照度增強算法進行并行優(yōu)化,在提高 夜間圖像可視化效果的同時達到實時處理效果。
      [0007] 為實現(xiàn)上述目的,本發(fā)明提供如下技術(shù)方案: 一種基于CUDA的低照度圖像增強并行優(yōu)化方法,所述低照度圖像增強算法為基于暗 原色去霧技術(shù)的增強算法,采用CPU/GPU異構(gòu)模式,在GPU上使用CUDA編程模型對低照度 增強算法進行并行優(yōu)化,W達到實時處理效果;包括W下步驟: 步驟1、在CPU上將圖像數(shù)據(jù)讀取到內(nèi)存中,然后分別將圖像數(shù)據(jù)的=個顏色通道值拷 貝到GPU上的顯存中; 步驟2、使用一個kernel用于計算圖像反轉(zhuǎn)和暗原色圖; 步驟3、使用一個kernel用于計算共享寄存器中的最大值,使用偏移循環(huán)調(diào)用該個kernel,最終計算出全局大氣光值; 步驟4、使用一個kernel用于計算透射率和使用去霧模型進行恢復(fù)并再次進行反轉(zhuǎn); 步驟5、將復(fù)原得到的圖像從GPU的顯存中拷貝到CPU的內(nèi)存中,CPU將復(fù)原后的圖像 進行保存。
      [0008] 作為本發(fā)明進一步的方案;所述低照度圖像增強算法全部在GPU上運行,輸入數(shù) 據(jù)和輸出數(shù)據(jù)在CPU和GPU之間進行拷貝。
      [0009] 作為本發(fā)明進一步的方案;在GPU上,每個kernel都開辟與圖像像素點數(shù)目相同 的線程,每個線程對一個像素點進行處理。
      [0010] 作為本發(fā)明進一步的方案;所述步驟2中,為每個顏色通道開辟像素點總數(shù)/512 個block,每個block中的線程對單個像素點進行反轉(zhuǎn)操作,具體的反轉(zhuǎn)算法如下: 廠(4=255 -£'屯-) 式中;C表示RGB顏色通道,L表示輸入的原始圖像,I表示反轉(zhuǎn)后的輸出圖像。
      [0011] 作為本發(fā)明進一步的方案;所述步驟2中,計算暗原色圖方法,包括W下步驟: 將所述反轉(zhuǎn)圖像的RGBS通道值拷貝到GPU共享存儲器中,在Block中每個線程W單 個像素點為單位,對7*7窗口內(nèi)像素點的各個通道做最小值濾波,再對其每個顏色通道求 最小值作為該像素點的暗原色值。
      [0012] 作為本發(fā)明進一步的方案;所述步驟3中,使用圖像的亮度和暗原色圖共同作用 來估算大氣光值A(chǔ),包括W下步驟: 在GPU上開辟圖像像素點數(shù)目的線程,每個線程分別計算單個像素點的大氣光綜合 評估值F,并保存于全局存儲器中;然后對每個block中所有線程求得的像素點F值進行 log(n)次歸約,得到此block中F的最大值,并將其存于共享存儲器中;再對共享存儲器中 的像素點進行歸約,進行循環(huán)規(guī)約后,最終得共享存儲器中的最大值,即為估算所得全局大 氣光A,具體求得大氣光綜合評估值F的算法如下:
      式中:巧J亮度圖像Y與暗原色圖像/)fg'ws的比值,亮度圖像Y的計算公式為;
      式中;R、G、B分別代表圖像RGBS通道分量值。
      [0013] 作為本發(fā)明進一步的方案;所述步驟4中,采用有霧圖像的亮度圖Y估算透射率 t,將亮度值進行歸一化,并使用一個常量C削弱歸一化的亮度值,得到圖像透射率圖t,并 用一個局部變量保存每個像素點的透射率值,計算透射率t的公式為: 式中;C為用于削弱亮度圖像Y的參數(shù),C取值范圍為[1. 06,1. 0引。
      [0014] 作為本發(fā)明進一步的方案;所述步驟4中,在一個kernel中,每個線程先后完成計 算當前像素點的透射率,計算該點的復(fù)原圖,并將復(fù)原后的圖像再次反轉(zhuǎn),其中,計算復(fù)原 圖的具體算法如下:
      式中;I(x)為反轉(zhuǎn)后的圖像,A為全局大氣光,t(x)為透射率圖像。
      [0015] 與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果是: (1)本發(fā)明提出了一種基于CUDA的低照度圖像增強并行優(yōu)化方法,將低照度圖像增強 算法全部在GPU上運行,并在GPU上為每個kernel都開辟與圖像數(shù)目相同的線程,每個線 程對一個像素點進行處理,提高了算法的并行性,W滿足高分辨率圖像的實時處理效果。
      [0016] (2)本發(fā)明針對基于暗原色去霧技術(shù)的低照度圖像增強算法中,不適合在GPU上 運行的計算全局大氣光的部分進行改進,使用暗原色和圖像的亮度值來評估大氣光值,減 少了數(shù)據(jù)間的相關(guān)性。使用該種新的改進方法使得整個算法更容易W及更快地在GPU上運 行,避免了不斷進行CPU和GPU進行數(shù)據(jù)拷貝的過程。
      [0017] (3)本發(fā)明在進行CUDA編程時,充分使用全局存儲器和共享存儲器,從而減少CPU 和GPU之間的數(shù)據(jù)傳遞,減少算法耗時。
      【附圖說明】
      [0018] 圖1是本發(fā)明算法在GPU上的執(zhí)行流程圖; 圖2是圖1中kernel1的執(zhí)行流程圖; 圖3是規(guī)約思想示意圖; 圖4是圖1中kernels的執(zhí)行流程圖; 圖5是本發(fā)明數(shù)據(jù)在CPU和GPU上的傳遞圖; 圖6是本發(fā)明在GPU上算法各中間過程的加速比圖。
      【具體實施方式】
      [0019] 下面將結(jié)合本發(fā)明實施例及附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整 地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒?發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實 施例,都屬于本發(fā)明保護的范圍。
      [0020] 請參閱圖1-圖5, 一種基于CUDA的低照度圖像增強并行優(yōu)化方法,在GPU上使用3 個kernel,kernell主要負責計算圖像反轉(zhuǎn)W及暗原色的估算,kernels主要負責對全局大 氣光的估算,kernels主要負責透射率、去霧模型的計算W及圖像的反轉(zhuǎn)操作。每個kernel都開辟與圖像像素點數(shù)目相同的線程,每個線程對一個像素點進行處理。具體按照W下步 驟實施: 步驟1、在CPU上將圖像數(shù)據(jù)讀取到內(nèi)存中,然后分別將圖像數(shù)據(jù)的=個顏色通道值拷 貝到GPU上的顯存中,為了運算提高速度,此處將數(shù)據(jù)拷貝到GPU的全局存儲器中。
      [0021] 步驟2、如圖2所示,使用一個kernel用于計算圖像反轉(zhuǎn)和暗原色圖。
      [002引步驟2. 1、對于一張m*n大小的圖像,每個顏色通道開辟m*n/512個block,每個block中的線程從全局存儲器中讀取數(shù)據(jù)對單個像素點進行反轉(zhuǎn)操作。<
      當前第1頁1 2 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1