<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 用FPGA來加速采用OpenCL的多功能打印機(jī)圖像處理

          用FPGA來加速采用OpenCL的多功能打印機(jī)圖像處理

          作者: 時(shí)間:2015-04-08 來源:網(wǎng)絡(luò) 收藏

            圖字:

          本文引用地址:http://www.ex-cimer.com/article/272203.htm

            M每頁掃描線

            N每掃描線像素

            像素;減少的濾波矩陣;有相同顏色的條目分享共同系數(shù)

            工作矩陣對(duì)稱濾波器計(jì)算的高度概括,針對(duì)左到右滑動(dòng)進(jìn)行了優(yōu)化,包括:

            1.針對(duì)每一個(gè)加載的新的像素欄3種加法A

            2.針對(duì)屬于圖4所示4×7矩陣中相同濾波器系數(shù)像素的18種加法

            3.針對(duì)每個(gè)系數(shù)一個(gè)C0至C9的10種乘法M

            4.計(jì)算系數(shù)乘法最終結(jié)果的9種加法

            那么,計(jì)算的總數(shù)是10M + 3A + 18A + 9A = 10M + 30A.圖5示出了計(jì)算樹。

            

           

            圖5:濾波算法的圖形表示

            隨著濾波器在圖像上從左至右的滑動(dòng),僅需要加載最右側(cè)像素列,即7個(gè)像素。邏輯上,這涉及將內(nèi)部像素列移到左邊,并在右側(cè)加上新的像素列。

            B.縮放

            縮放模塊使用雙線性插值來減小和/或放大一幅圖像。雙線性插值是一個(gè)眾所周知的算法,在所需的新輸出像素周圍使用了4個(gè)輸入像素。圖6示出了要測試像素的雙線性插值輸入和輸出網(wǎng)格。

            

           

            圖6:雙線性插值

            圖字:輸入網(wǎng)格;輸出網(wǎng)格;輸入像素;輸出像素

            輸出像素OP1,1可以用下面的公式來計(jì)算:

            

           

            C.色彩空間轉(zhuǎn)換

            CCP采用設(shè)備無關(guān)的色彩空間數(shù)據(jù),通常是LAB格式,并將其轉(zhuǎn)換為設(shè)備相關(guān)的CMYK色彩空間。不幸的是,沒有公式化的方法來直接轉(zhuǎn)換L*a*b*至CMYK.每臺(tái)打印機(jī)的著色劑以非線性方式進(jìn)行交互。打印行業(yè)的公認(rèn)方法是打印測試斑點(diǎn),測量所得色,并創(chuàng)建一組C、M、Y和K查找表,即LUT.關(guān)鍵是要盡量減少LUT的大小,同時(shí)提供最高的色彩保真度。為了計(jì)算這些存儲(chǔ)在LUT之間的值,我們必須使用一個(gè)插值方案。有許多方法來執(zhí)行插值,但四面體插值法被廣泛認(rèn)為是最準(zhǔn)確的。

            顧名思義,四面體插值法使用4個(gè)已知點(diǎn)來計(jì)算一個(gè)中間點(diǎn)。在我們的L*a*b*情況下,這些已知點(diǎn)的每一個(gè)都具有對(duì)應(yīng)于輸入色彩空間的三個(gè)維度。三個(gè)輸入維度L、a、b形成一個(gè)我們可以用來確定輸出像素的立方體。圖7示出了色彩空間和LUT概念。注意每個(gè)輸出彩色平面都有獨(dú)立的LUT.

            

           

            圖7:CMYK LUT和單位正方體

            圖字:

            第一張圖:

            L*a*b*色彩空間

            下方注解:

            對(duì)于每24位輸入L*a*b*像素,可能有224個(gè)32位CMYK輸出像素。這相當(dāng)于64MB LUT!

            第二張圖:

            青色點(diǎn)陣

            單位立方體

            格點(diǎn)——憑經(jīng)驗(yàn)測量

            感興趣的像

            要使LUT大小降低到一個(gè)合理水平,我們可執(zhí)行以下操作:

            每彩色平面有各自的LUT

            每個(gè)LUT有代表點(diǎn)陣點(diǎn)的4096個(gè)條目

            算法首先發(fā)現(xiàn)期望像素點(diǎn)駐留的單位立方體

            一旦算法確定了哪一個(gè)單位立方體包含要測試的輸出像素,我們必須從一組8個(gè)已知像素中計(jì)算出輸出像素。這是三線性插值的實(shí)際情形。四面體插值法利用一個(gè)單位立方體可以被劃分成一組6個(gè)非重疊四面體的方法,其每個(gè)終點(diǎn)都位于單位立方體的頂點(diǎn)。使用一個(gè)四面體(有4個(gè)點(diǎn))內(nèi)插來削減一半像素?cái)?shù)時(shí),我們必須使用插值結(jié)果。圖8以圖形示出了六個(gè)四面體。

            

           

            圖8:CST四面體

            CST算法首先確定了輸出像素(P)駐留在哪個(gè)四面體中,并使用了4個(gè)已知輸出像素插入最終結(jié)果——見圖7.圖9示出了四面體5中的像素P.該算法計(jì)算了每個(gè)單位立方體軸端點(diǎn)和像素dx、dy、dz之間的距離,并使用了已知點(diǎn)之間的線性插值距離。

            

           

            圖9:CST四面體5分解圖

          濾波器相關(guān)文章:濾波器原理


          fpga相關(guān)文章:fpga是什么


          c語言相關(guān)文章:c語言教程


          濾波器相關(guān)文章:濾波器原理


          三維掃描儀相關(guān)文章:三維掃描儀原理


          關(guān)鍵詞: FPGA OpenCL

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();