欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

基于GPU的Wallis濾波器進行影像增強的方法

文檔序號:6539807閱讀:239來源:國知局
基于GPU的Wallis濾波器進行影像增強的方法
【專利摘要】本發(fā)明提供一種基于GPU的Wallis濾波器進行影像增強的方法,該方法需提供顯示適配器,該顯示適配器包括:圖形處理器GPU、紋理存儲器和Wallis濾波器,所述圖形處理器GPU包括多個的SM流處理器陣列,所述SM流處理器陣列包括共享存儲器和CUDA?CORE流處理器;本發(fā)明通過多種存儲器的并發(fā)線程訪問模式,并通過GPU調(diào)度多個處理機上的線程的規(guī)則;通用計算求解數(shù)據(jù)與圖像渲染之間的無縫連接方法,從而完成影像的增強。本發(fā)明合理發(fā)揮顯示適配器內(nèi)的各種硬件特殊功能,合理規(guī)劃GPU通用計算任務(wù)的負載平衡,從而最大限度地提高Wallis濾波器計算效率。
【專利說明】基于GPU的Wal I i s濾波器進行影像增強的方法
【技術(shù)領(lǐng)域】
[0001 ] 本發(fā)明涉及一種圖像處理【技術(shù)領(lǐng)域】,尤其涉及一種基于GPU的Wal I i s濾波器進行影像增強的方法。
【背景技術(shù)】
[0002]Wallis濾波器在影像匹配、影像融合、遙感等領(lǐng)域具有重要的應(yīng)用價值。它的特殊之處在于增強圖像反差的同時又壓制噪聲,從而使數(shù)字圖像的灰度發(fā)生一種局部影像變化,即在影像不同區(qū)域的灰度方差和灰度均值具有近似相等的數(shù)值。經(jīng)過Wallis濾波后,原影像方差小的區(qū)域經(jīng)過變換后發(fā)差增大,原影像反差大的區(qū)域經(jīng)過變換后的反差減小,這使得影像中灰度的微小處理信息得到增強。在一定意義上可以認為是“創(chuàng)造”影像紋理Wallis濾波器是一種具有較高計算復(fù)雜性的圖像增強技術(shù)。
[0003]英偉達NVIDIA推出的通用并行計算架構(gòu)CUDA創(chuàng)造性地將數(shù)字圖像處理技術(shù)與并行計算技術(shù)無縫連接起來。圖形處理器GPU所擁有的強大計算能力來自SM (流處理器陣列)中的大量計算核心。這在NVIDIA推出的GPU中被命名為CUDA CORE流處理器,它們獨特的并行計算方式被稱為SMT模式。對于圖像處理來說,SMT放寬了像素規(guī)模的限定,使得任何尺寸的圖像都可以套用相同的算法,這具有相當高的實用價值。因此,該特性非常適合Wal I is數(shù)學(xué)變換。
[0004]Baltsavias于1991年提出了在CPU上執(zhí)行Wallis濾波計算任務(wù)的解決方案。1999年,張力在《Wallis濾波在影像匹配中的應(yīng)用》一文中對Wallis濾波器做出了詳細分析,同時也指出了 Wallis濾波器存在瓶頸。陳樂于2009年開始研究Wallis濾波器的GPU解決方案,并于2010年投入遙感領(lǐng)域的實際應(yīng)用。肖漢于2011年發(fā)表《CUDA架構(gòu)下的快速Wallis影像增強算法》,其是基于CUDA構(gòu)架,但是肖漢的設(shè)計以本地存儲器為出發(fā)點,而本專利申請文件以紋理存儲器為出發(fā)點,因此各自采用的線程調(diào)度方式也不一樣。
[0005]然而傳統(tǒng)的Wallis濾波器將計算任務(wù)交給CPU來承載,將圖像數(shù)據(jù)存儲在主存當中。這樣Wallis濾波器的模板窗口比較小,這成為了應(yīng)用效率的瓶頸。一般認為需要對Wallis變換做出2個限制:
[0006]I)使用的鄰域參數(shù)值范圍如下:窗口邊長在[30,70]之內(nèi);
[0007]對于一般尺寸的數(shù)字圖像來說:如果Wallis濾波器濾波窗口邊長在[30,70]像素之間,那么CPU計算時間大概在1、2分鐘之內(nèi),這對于工程人員來說是可以接受的。如果濾波窗口邊長在[70,100]像素之間,那么CPU雖然也可以完成濾波計算,但工程人員的等待時間就太長了。
[0008]2)求解的時間復(fù)雜度決定了窗口邊長在100以上大模板是不可取的。
[0009]如果模板窗口的邊長超過100像素,那么這樣的任務(wù)單單憑借CPU的計算能力也許是無法求解的。

【發(fā)明內(nèi)容】
[0010]本發(fā)明要解決的技術(shù)問題,在于提供一種基于GPU的Wallis濾波器進行影像增強的方法,高效地利用了紋理存儲器的圖像數(shù)據(jù)存儲優(yōu)勢;提高Wallis濾波器計算效率。
[0011]本發(fā)明是這樣實現(xiàn)的:一種基于GPU的Wallis濾波器進行影像增強的方法,該方法需提供圖形處理器GPU、紋理存儲器和Wallis濾波器,所述圖形處理器GPU包括多個的SM流處理器陣列,所述SM流處理器陣列包括共享存儲器和CUDA CORE流處理器;
[0012]該方法具體為:先將紋理存儲器作為GPU用于紋理圖像數(shù)據(jù)的專用存儲單元,則GI^U中的圖形處理通用計算GPGPU所獲得的圖像數(shù)據(jù)能直接用于圖像渲染;輸入圖像數(shù)據(jù),將圖像數(shù)據(jù)綁定在紋理存儲器中,根據(jù)GPU的負載能力將圖像數(shù)據(jù)劃分成若干個線程塊,所述各線程塊在紋理存儲器中存在著對應(yīng)的像素點圖像數(shù)據(jù);GPU將各線程塊平均分配給各個SM流處理器陣列;SM流處理器陣列構(gòu)建線程Thead集合,該線程Thead集合包括多個線程Thead,并為各線程Thead確定一線程號TheadID ;各個線程Thead對應(yīng)一圖像數(shù)據(jù)塊,并將線程Thead的線程號和圖像數(shù)據(jù)塊在紋理存儲器中的像素點坐標建立一一映射關(guān)系;所述Wallis濾波器通過各個線程Thead對應(yīng)映射的圖像數(shù)據(jù)塊進行Wallis變換,獲得各個圖像數(shù)據(jù)塊的像素目標灰度值,并將各個圖像數(shù)據(jù)塊變換后的像素目標灰度值綁定到紋理存儲器中,從而完成影像的增強。
[0013]進一步地,該紋理存儲器中的圖像數(shù)據(jù)能被重復(fù)利用,當Wallis濾波器一次訪問需要的數(shù)據(jù)已經(jīng)存在于紋理存儲器中時,能避免對顯存進行讀取;紋理存儲器能緩存拾取Wallis濾波器的濾波窗口坐標附近的像素數(shù)據(jù),實現(xiàn)濾波模式。
[0014]進一步地,獲得各個數(shù)據(jù)塊的像素目標灰度值后,建立各個像素目標灰度值與圖像輸出設(shè)備的像素點的一一映射關(guān)系,這樣完成圖像數(shù)據(jù)的各數(shù)據(jù)塊影像增強后在圖像輸出設(shè)備上的顯示。
[0015]本發(fā)明具有如下優(yōu)點:本發(fā)明通過多種存儲器的并發(fā)線程訪問模式,特別是紋理存儲器;并通過GPU調(diào)度多個處理機上的線程的規(guī)則;通用計算求解數(shù)據(jù)與圖像渲染之間的無縫連接方法,從而完成影像的增強。本發(fā)明合理發(fā)揮顯示適配器內(nèi)的各種硬件特殊功能,合理規(guī)劃GPU通用計算任務(wù)的負`載平衡,從而最大限度地提高Wallis濾波器計算效率。
【專利附圖】

【附圖說明】
[0016]圖1為本發(fā)明方法流程示意圖。
[0017]圖2為本發(fā)明中硬件框架原理圖。
[0018]圖3為本發(fā)明映射關(guān)系的形式化模型圖。
【具體實施方式】
[0019]本發(fā)明所采用的技術(shù)路線是圍繞顯示適配器中的Texture Memory (紋理存儲器)的特殊功能而展開的。紋理存儲器中是一種特殊的存儲器,它是顯存的一部分。在通用計算中,紋理存儲器十分適合用于實現(xiàn)圖像處理或查找表,并且對數(shù)據(jù)量較大時的隨機數(shù)據(jù)訪問或者非對齊訪問也有良好的加速效果。
[0020]請參閱圖1至圖3所示,一種基于GPU的Wallis濾波器進行影像增強的方法,該方法需提供顯示適配器,該顯示適配器包括:圖形處理器GPU、一紋理存儲器和Wallis濾波器,所述圖形處理器GPU包括多個的SM流處理器陣列,所述SM流處理器陣列包括共享存儲器和CUDA CORE流處理器;
[0021]該方法具體為:先將紋理存儲器作為GPU用于紋理圖像數(shù)據(jù)的圖形專用單元(紋理存儲器是一種只讀存儲器),這樣GPU中的圖形處理通用計算GPGPU所獲得的圖像數(shù)據(jù)能直接用于圖像渲染;從而實現(xiàn)GPGPU計算與GPU (圖形處理器)圖像計算的無縫銜接。
[0022]GPU所執(zhí)行的并發(fā)計算,本質(zhì)上還是多個線程的串行計算。與傳統(tǒng)的單核CPU (中央處理器)不同,一顆GPU芯片上包含大量的圖形計算單元。這在NVIDIA (英偉達公司)設(shè)計GPU中被命名為CUDA Core (CUDA:統(tǒng)一計算構(gòu)架,Core:最小計算單元)與SM (流處理器陣列)。SM是由一組CUDA Core組合而成的處理機陣列,它作為GPU計算工作量的一個單位而存在。在GPU工作時,芯片中這些個SM同時執(zhí)行并行計算,同一個SM中的CUDA Core也同時執(zhí)行并行計算,同一個CUDA Core中的多個線程則作穿行的并發(fā)計算。
[0023]對于Wallis濾波器來說,傳統(tǒng)的CPU求解方式下,程序中只包含一個線程。這個線程將依次對每個像素的灰度值進行數(shù)學(xué)變換,這是一個長時間機械地重復(fù)的簡單計算。如果要把Wal I i s濾波器移植到GPU之上,那么首先要把這個規(guī)模龐大的任務(wù)劃分成若干個內(nèi)容相同的子任務(wù)。接著GPU將這些任務(wù)平均分配給所有的SM陣列,這個過程初步地解決了負載平衡問題。然后每個SM將所分得的計算任務(wù)平均分配給它所掌管的全部CUDACore,從而徹底解決了負載平衡問題。
[0024]因此,在輸入圖像數(shù)據(jù),將圖像數(shù)據(jù)綁定在紋理存儲器中,根據(jù)GPU的負載能力將圖像數(shù)據(jù)劃分成若干個線程塊,所述各線程塊在紋理存儲器中存在著對應(yīng)的像素點圖像數(shù)據(jù);GPU將各線程塊平均分配給各個SM流處理器陣列;SM流處理器陣列構(gòu)建線程Thead集合,該線程Thead集合包括多個線程Thead,并為各線程Thead確定一線程號TheadID ;各個線程Thead對應(yīng)一圖像數(shù)據(jù)塊(該圖像數(shù)據(jù)塊即為各線程塊在紋理存儲器中存在著對應(yīng)的像素點圖像數(shù)據(jù)),并將線程Thead的線程號和圖像數(shù)據(jù)塊在紋理存儲器中的像素點坐標建立一一映射關(guān)系;所述Wallis濾波器通過各個線程Thead對應(yīng)映射的圖像數(shù)據(jù)塊進行Wallis變換,獲得各個圖像數(shù)據(jù)塊的像素目標灰度值,并將各個圖像數(shù)據(jù)塊變換后的像素目標灰度值綁定到紋理存儲器中,從而完成影像的增強。確定圖像數(shù)據(jù)的規(guī)模,即線程號的定義域X,Y和線程的定義域上限N ;
[0025]在本發(fā)明中,該紋理存儲器中的圖像數(shù)據(jù)能被重復(fù)利用,當Wallis濾波器一次訪問需要的數(shù)據(jù)已經(jīng)存在于紋理存儲器中時,能避免對顯存進行讀?。贿@樣節(jié)約了帶寬,也不必按照顯存對齊的要求讀取。紋理存儲器能緩存拾取Wallis濾波器的濾波窗口坐標附近的像素數(shù)據(jù),實現(xiàn)濾波模式。也能提高具有一定局部性的訪問的效率。
[0026]另外,在本發(fā)明中,獲得各個數(shù)據(jù)塊的像素目標灰度值后,建立各個像素目標灰度值與圖像輸出設(shè)備的像素點的一一映射關(guān)系,這樣完成圖像數(shù)據(jù)的各數(shù)據(jù)塊影像增強后在圖像輸出設(shè)備上的顯示。
[0027]這里需要說明的是:在CUDA構(gòu)架之下,Core上的每個線程在生命周期內(nèi)所負載的像素數(shù)據(jù)量是任意的。經(jīng)過反復(fù)實驗得到的經(jīng)驗是:每個線程只負載一個像素的Wallis變換計算是一種效率較高的選擇。
[0028]這個方案的映射關(guān)系的形式化模型如圖3所示。
[0029]其中構(gòu)建“SM”集合的元素是計算核心硬件Core。將諸Core記作:
[0030]{CoreJ i=l, 2, — , 8XNUM(SM)};[0031]構(gòu)建線程“Thead”集合的元素是線程號Threadld。
[0032]各素點的Wallis變換各步均不涉及與其它像素點的線性相關(guān)問題,因此可以使用單指令多線程模式并行計算。
[0033]以上所述僅為本發(fā)明的較佳實施例,凡依本發(fā)明申請專利范圍所做的均等變化與修飾,皆應(yīng)屬本發(fā)明的涵蓋范圍。
【權(quán)利要求】
1.一種基于GPU的Wallis濾波器進行影像增強的方法,其特征在于:該方法需提供顯示適配器,該顯示適配器包括:圖形處理器GPU、紋理存儲器和Wallis濾波器,所述圖形處理器GPU包括多個的SM流處理器陣列,所述SM流處理器陣列包括共享存儲器和CUDA CORE流處理器; 該方法具體為:先將紋理存儲器作為GPU用于紋理圖像數(shù)據(jù)的專用存儲單元,這樣GPU中的圖形處理通用計算GPGPU所獲得的圖像數(shù)據(jù)能直接用于圖像渲染;輸入圖像數(shù)據(jù),將圖像數(shù)據(jù)綁定在紋理存儲器中,根據(jù)GPU的負載能力將圖像數(shù)據(jù)劃分成若干個線程塊,所述各線程塊在紋理存儲器中存在著對應(yīng)的像素點圖像數(shù)據(jù);GPU將各線程塊平均分配給各個SM流處理器陣列;SM流處理器陣列構(gòu)建線程Thead集合,該線程Thead集合包括多個線程Thead,并為各線程Thead確定一線程號TheadID ;各個線程Thead對應(yīng)一圖像數(shù)據(jù)塊,并將線程Thead的線程號和圖像數(shù)據(jù)塊在紋理存儲器中的像素點坐標建立一一映射關(guān)系;所述Wallis濾波器通過各個線程Thead對應(yīng)映射的圖像數(shù)據(jù)塊進行Wallis變換,獲得各個圖像數(shù)據(jù)塊的像素目標灰度值,并將各個圖像數(shù)據(jù)塊變換后的像素目標灰度值綁定到紋理存儲器中,從而完成影像的增強。
2.根據(jù)權(quán)利要求1所述的基于GPU的Wallis濾波器進行影像增強的方法,其特征在于:該紋理存儲器中的圖像數(shù)據(jù)能被重復(fù)利用,當Wallis濾波器一次訪問需要的數(shù)據(jù)已經(jīng)存在于紋理存儲器中時,能避免對主存進行讀??;紋理存儲器能緩存拾取Wallis濾波器的濾波窗口坐標附近的像素數(shù)據(jù),實現(xiàn)濾波模式。
3.根據(jù)權(quán)利要求1所述的基于GPU的Wallis濾波器進行影像增強的方法,其特征在于:獲得各個數(shù)據(jù)塊的像素目標灰度值后,建立各個像素目標灰度值與圖像輸出設(shè)備的像素點的一一映射關(guān)系,這樣完成圖像數(shù)據(jù)的各數(shù)據(jù)塊影像增強后在圖像輸出設(shè)備上的顯/Jn ο
【文檔編號】G06T5/00GK103871032SQ201410082771
【公開日】2014年6月18日 申請日期:2014年3月7日 優(yōu)先權(quán)日:2014年3月7日
【發(fā)明者】陳樂 , 梁泉, 鄭積仕, 薛醒思, 林金陽 申請人:福建工程學(xué)院
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
溧阳市| 高台县| 唐山市| 格尔木市| 永宁县| 乐昌市| 会昌县| 丰城市| 丹棱县| 英德市| 遂川县| 增城市| 武邑县| 南岸区| 拜泉县| 万载县| 佛山市| 昌乐县| 安福县| 开鲁县| 义乌市| 镇宁| 遂溪县| 遵义市| 巨野县| 兰溪市| 禄劝| 黄平县| 镇雄县| 砚山县| 吉木萨尔县| 莱芜市| 游戏| 兴和县| 桑植县| 拉萨市| 宜兰市| 东乡| 四川省| 吴桥县| 历史|