亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

使用選擇性色彩變換的色彩壓縮的制作方法

文檔序號:9200930閱讀:396來源:國知局
使用選擇性色彩變換的色彩壓縮的制作方法
【專利說明】使用選擇性色彩變換的色彩壓縮
【背景技術(shù)】
[0001] 本發(fā)明涉及圖形處理。
[0002] 當(dāng)選擇圖形架構(gòu)時(shí),能量效率是權(quán)重最重的性能因子,因此減小存儲器帶寬是極 其重要的。與計(jì)算相比,存儲器總線上的事務(wù)在能量和延遲方面可能更多地消耗幾個(gè)數(shù)量 級。
[0003] 因而,一種常見的方法是試圖利用一點(diǎn)計(jì)算來減小帶寬使用,這導(dǎo)致與原始的量 相比更少的帶寬使用。對于所有種類的色彩緩沖壓縮都是這種情況。
[0004] 對于緩沖壓縮,如果每一個(gè)圖塊(例如,像素的矩形區(qū)域)要是有用的,則該圖塊 必須成功地將原始數(shù)據(jù)向下壓縮至某一閾值水平。例如,如果要從壓縮獲得任何事物,則在 未壓縮形式中使用1024比特的圖塊可能需要向下壓縮至512比特。因而,成功壓縮至那些 閾值(例如,在該示例中為512比特)的圖塊越多,就使用越少的到存儲器的帶寬,即,這里 壓縮率是重要的。可能存在幾個(gè)不同的閾值,例如,從2048比特向下壓縮至512比特的倍 數(shù):1536比特、或1024比特、或512比特。顯然,它們應(yīng)該被優(yōu)先以最低的閾值(即,在該 情況下為512)開始。
[0005] 典型的色彩緩沖壓縮算法可以在圖塊中發(fā)現(xiàn)最小色彩分量,并且接著使用盡可能 少的比特來對每信道相對于最小色彩分量的剩余進(jìn)行編碼。這些方案有時(shí)被稱為抵消壓縮 方法。圖形應(yīng)用程序接口(API) (OpenGL和DriectX)要求色彩緩沖是無損的,即,不會丟失 信息。在完成抵消壓縮之前,可以使用將信息解關(guān)聯(lián)為亮度分量和兩個(gè)色度分量的色彩變 換來變換圖塊中所有像素的色彩。這樣的變換是無損YCoCg-變換。在典型的圖形應(yīng)用中, 針對色彩緩沖的事務(wù)(包括使用紋理采樣器從已經(jīng)渲染的渲染目標(biāo)(RT)進(jìn)行讀?。┩ǔ?占用了大部分的帶寬。因而,嘗試增加該壓縮方法的成功率是非常重要的。
【附圖說明】
[0006] 關(guān)于下列附圖來描述一些實(shí)施例:
[0007] 圖1是一個(gè)實(shí)施例的示意性闡釋;
[0008] 圖2是針對一個(gè)實(shí)施例的流程圖;
[0009] 圖3是一個(gè)實(shí)施例的系統(tǒng)闡釋;以及
[0010] 圖4是一個(gè)實(shí)施例的正視圖。
【具體實(shí)施方式】
[0011] 當(dāng)將圖塊從高速緩存中逐出時(shí),嘗試使用任何壓縮算法來對該圖塊進(jìn)行壓縮。區(qū) 別在于,圖塊的色彩被如其所是地壓縮,但是上述色彩也可以利用色彩變換(例如,無損 YCoCg)來進(jìn)行變換,并且在這之后,可以利用相同的壓縮算法來對這些色彩進(jìn)行壓縮。可以 嘗試幾種不同的色彩變換,而且可以按照幾種方式來選擇要使用哪一種,這將在后面更詳 細(xì)地解釋。作為示例,一個(gè)人可以選擇使用利用最少比特來給出壓縮表示的色彩變換(包 括沒有變換)。幾種方法考慮到經(jīng)濟(jì)地選擇要使用哪種變換。
[0012] 假定存在N種不同的無損色彩變換(其中,它們中的一種是身份變換,即根本沒有 變換任何事務(wù))。這些變換T i,其中0〈 = i〈N,并且Ttl是身份變換。假定用〇來表示圖塊 的原始色彩的集合。用TiO來表示利用某種變換來變換圖塊的色彩。接下來,假定我們具 有對色彩的集合(已變換或未變換)工作的壓縮算法。針對壓縮色彩的符號是C(O),并且 這一函數(shù)返回利用該壓縮算法C對〇進(jìn)行壓縮所需的比特的最小數(shù)量。為了壓縮色彩的經(jīng) 變換的圖塊,進(jìn)行C(T iO)。下面總結(jié)了所使用的符號,包括一些示例:
[0013] · 〇 -來自該圖塊的色彩的原始集合。.
[0014] · Ti -無損色彩變換-假定存在N種,并且0〈 = i〈N。
[0015] · CO -利用色彩的集合作為自變量的壓縮器函數(shù)。返回對自變量的色彩進(jìn)行壓 縮所需的比特的數(shù)量。
[0016] ?利用h= C(T i〇)來完成利用應(yīng)用的變換來對圖塊進(jìn)行壓縮,其中h是使用手頭 的壓縮算法來表示TiO所要求的比特的數(shù)量。
[0017] 在概念上,每一個(gè)變換,將Ti應(yīng)用于色彩的原始集合,〇,其中對變換的色彩進(jìn)行試 圖的壓縮。因此,計(jì)算以下內(nèi)容:
[0018] h= C(TiO),對于所有 i,使得 0〈 = i〈N。
[0019] 因此,如果N = 2,則我們計(jì)算:bQ= C(Tq0)并且Id1= C (T1O)。
[0020] 現(xiàn)在,找到與minOv Id1,…,Iv1)相對應(yīng)的索引i,即,找到在壓縮之后導(dǎo)致最少 比特的變換。接著簡單地使用具有最少比特的一個(gè)(并且接著檢查其是否成功地滿足現(xiàn)有 比特閾值中的任何一個(gè))。另一選項(xiàng)是選擇h小于某一預(yù)定義閾值,例如512比特,的第一 壓縮器。要注意的是,在針對圖塊的壓縮表示中,對針對該圖塊使用的變換進(jìn)行編碼。這利 用Iog 2(N)個(gè)比特來完成,并且被簡單地預(yù)先考慮到壓縮表示。
[0021] 將變換Ti應(yīng)用到輸入色彩〇并且還壓縮所有這些經(jīng)變換的色彩的集合會是昂貴 的。盡管能夠按照這一方式來執(zhí)行壓縮,但是利用更簡單且更經(jīng)濟(jì)的方法將是方便的。
[0022] 為了達(dá)成解決方案,以便壓縮特定的信道(例如,紅、綠、藍(lán)、阿爾發(fā)、或Y、或Co、 或Cg),一個(gè)人經(jīng)常找到該信道的最小值和最大值。將針對特定信道的這些C min和C max 稱為C。一些方法僅對信道的關(guān)于Cmin的殘差進(jìn)行編碼,并且要進(jìn)行其的比特?cái)?shù)量是 ceil (Iog2 (Cmax-Cmin))。所有信道的ceil (Iog2 (Cmax-Cmin))的總和與最終壓縮表示的比特?cái)?shù) 量成比例。通常,可以將這一度量稱為壓縮尺寸度量(CSM)。當(dāng)使用其它色彩壓縮方法時(shí), 需要修改這一部分的技術(shù)。例如,當(dāng)針對最小值或最大值計(jì)算殘差時(shí),CSM方法顯然需要有 一點(diǎn)不同。
[0023] 由于這一 CSM涉及計(jì)算所有信道(針對所有色彩變換)的最小值和最大值,所以 這仍然被認(rèn)為是昂貴的操作,盡管與對圖塊執(zhí)行完整壓縮并且計(jì)算所產(chǎn)生的比特?cái)?shù)量相比 當(dāng)然要更經(jīng)濟(jì)。然而,其保證給出最佳的壓縮成功率,因此在一些情況下這一方案可以是優(yōu) 選的。
[0024] 為了使其更加經(jīng)濟(jì),接下來描述幾種方法。
[0025] 首先,示出了 RGB到Y(jié)CoCg變換,其是無損可逆的(如果利用比原始數(shù)據(jù)多一個(gè)比 特來存儲Cg和Co):
[0026]
[0027] 簡單地從圖塊取出M個(gè)代表色彩(例如,該圖塊的四個(gè)角,這將意味著M = 4),并 且執(zhí)行色彩變換,且接著僅對這M個(gè)色彩執(zhí)行CSM方法。使用上文的CSM技術(shù),其中僅針對 Cmin計(jì)算殘差,接著找到僅這M個(gè)色彩的最小值和最大值,并且通過針對這M個(gè)色彩對所有 信道的ceil (Iog2(Cmax-Cmin))求和來估計(jì)比特的成本。例如,由于圖塊可以包含16或32種 顏色,因此這當(dāng)然更便宜。接著使用給出比特成本的最低估計(jì)的色彩變換來變換剩余的色 彩,并且接著該算法像往常一樣繼續(xù)。
[0028] 然而,這是預(yù)測,并且因此它可能不會提供像(使用所有色彩變換,并壓縮所有經(jīng) 變換的色彩的)強(qiáng)力法那樣好的壓縮成功率。
[0029] 這也容易地?cái)U(kuò)展到使用色彩變換的集合。
[0030] 這些技術(shù)減少了大多數(shù)色彩壓縮方案的大量帶寬,并且這直接變換成功率節(jié)省 (或性能提高)。由于存儲器帶寬使用占圖形處理器的總體能量消耗的較大百分比,因此這 顯然是非常重要的。
[0031] 在圖1中,圖形處理器1
當(dāng)前第1頁1 2 3 4 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1