專利名稱:多模α圖像處理的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及圖像和圖形處理,以及具體來說,涉及對α圖像進(jìn)行編碼或壓縮以及對編碼(壓縮)α圖像進(jìn)行解碼或解壓縮。
一般來說,根據(jù)本發(fā)明,在圖像編碼期間,圖像被分解或分為多個圖像塊。每個這樣的圖像塊則包括其中還具有圖像元素關(guān)聯(lián)屬性、某種色彩以及關(guān)聯(lián)α或透明度值的多個、即至少兩個圖像元素。然后,可對圖像塊編碼或壓縮以產(chǎn)生圖像的編碼表示。
當(dāng)編碼圖像要在屏幕上顯示或者與編碼圖像關(guān)聯(lián)的幾何圖元要被呈現(xiàn)時(shí),編碼圖像塊的相關(guān)圖像元素被識別和解碼。這些解碼圖像元素則可用來產(chǎn)生原始圖像的解碼表示供顯示,或者它們可用于呈現(xiàn)幾何圖元。
本發(fā)明極適合與三維(3D)圖形和圖像配合使用,例如照片、文本以及“合成”圖像,它們均可用于諸如游戲、3D地圖和畫面、3D消息、如動畫消息、屏幕保護(hù)程序、人機(jī)界面(MMI)等的應(yīng)用中,但是不限于此。因此,本發(fā)明還可用于對其它類型的圖像或圖形進(jìn)行編碼,例如一維(1D)、二維(2D)或3D圖像。
在本發(fā)明中,表達(dá)“圖像元素”表示圖像塊中的元素或者圖像塊的編碼(壓縮)表示。這種圖像塊又對應(yīng)于圖像或紋理的一部分。因此,根據(jù)本發(fā)明,圖像元素可能是(1D、2D或3D)紋理的紋素或者(1D、2D或3D)圖像的像素。相應(yīng)地,圖像元素可能是3D紋理或圖像中的體素。一般來說,圖像元素由某些圖像元素相關(guān)的屬性、如色值和α或透明度值來表征。此外,以下的術(shù)語“圖像”用來表示可通過本發(fā)明來編碼和解碼的任何1D、2D或3D圖像或紋理。
在圖像處理領(lǐng)域,α值用來表示圖像元素的透明度屬性。一般來說,若0≤α_value≤1且0≤透明度≤1,則α值通常被定義為α_value=1-透明度。因此,1的α值在這個定義中對應(yīng)于不透明或不透明性(透明度為1),而0的α值則表示全透明(透明度為1)。雖然α值的這個定義在本領(lǐng)域是最常見的,但本發(fā)明不限于此。因此,根據(jù)本發(fā)明,圖像元素的α值實(shí)際上可根據(jù)所使用的α值透明度關(guān)系來表示那個圖像元素的任何透明度屬性。
一般來說,圖像中的圖像元素的α值可采取從通常表示全透明的最小α值、如0或0.0直到通常表示不透明或不透明性的最大α值、如255或1.0的值。這些極限之間的α值則表示半透明。如果圖像包括具有與表示不透明的預(yù)定義值、如上述最大值不同的關(guān)聯(lián)α值的至少一個圖像元素,則它通常被定義為所謂的“α圖像”。在一些應(yīng)用中,如果圖像的至少最小數(shù)量的多個圖像元素具有與預(yù)定義不透明值不同的相應(yīng)α值,則圖像被分類為α圖像。在這兩種實(shí)現(xiàn)中,表示不透明的多個值的預(yù)定義區(qū)間、例如213-255或0.84-1.0可用來代替單個預(yù)定義的不透明值。在這種情況中,如果至少一個圖像元素或者最小數(shù)量的圖像元素的α值沒有處于不透明區(qū)間內(nèi),則圖像被分類為α圖像,否則它是所謂的非α圖像或無α圖像。
相應(yīng)地,如果它包含的圖像元素或者至少最小數(shù)量的圖像元素的至少一個具有與預(yù)定義不透明值不同或者不處于不透明區(qū)間內(nèi)的α值,則圖像塊通常被分類為“α圖像塊”。非α或無α塊則包括具有等于不透明值或者處于不透明區(qū)間內(nèi)的α值的圖像元素。
本發(fā)明預(yù)計(jì),“α圖像”的圖像元素除了其相應(yīng)的α值之外還具有關(guān)聯(lián)的色彩值。因此,本發(fā)明的α圖像可以是所謂的RGBA圖像。還要注意,根據(jù)本發(fā)明的α圖像可能僅包含α圖像塊或者α和非α圖像塊的組合。
圖像編碼
圖1是根據(jù)本發(fā)明、對α圖像編碼的(有損)方法的一個實(shí)施例的流程圖。在第一步驟S0,圖像被分解或分為多個圖像塊。每個這樣的圖像塊則包括多個圖像元素。在本發(fā)明的一個優(yōu)選實(shí)施例中,圖像塊包括八個圖像元素(像素或紋素),并且具有2m×2n圖像元素的大小,其中m=3-n且n=0,1,2,3。更優(yōu)選地,n為1或2。圖2A和圖2B示意說明根據(jù)本發(fā)明、具有八個圖像元素610的圖像塊600的兩個實(shí)例。在圖2A中,高度為兩個圖像元素610,以及寬度為四個圖像元素610,即m=1和n=2,而對于圖2B中的圖像塊600,m=2和n=1。相應(yīng)地,當(dāng)壓縮3D圖像時(shí),優(yōu)選圖像塊大小可能是2×2×2圖像元素(體素)。但是,本發(fā)明不限于具有8個圖像元素的塊,而是或者可能與具有少于或多于八個圖像元素、例如4×4圖像元素的圖像塊結(jié)合使用。
再看圖1,整個圖像塊優(yōu)選地在步驟S0中分解為(非交迭)圖像塊。但是,在一些應(yīng)用中,只有圖像的一部分被編碼,因而只有這個部分才被分解為圖像塊。
在步驟S1,對當(dāng)前圖像塊確定α碼字。這個α碼字包括表示塊中的圖像元素的至少一個α值的多個量化α值。在下一個步驟S2,要用于圖像塊的α塊壓縮或編碼模式根據(jù)已確定α碼字來選取,優(yōu)選地根據(jù)碼字的量化α值的至少一個來選取。在這個模式選擇的第一實(shí)現(xiàn)中,步驟S2根據(jù)量化α值的比較來執(zhí)行。因此,如果量化α值不同,則對于此塊選取本文中稱為PAA(Packman-Alpha-Alpha)模式的第一α塊壓縮模式,而如果量化α值相等,則應(yīng)當(dāng)采用本文中稱為PAT(Packman-Alpha-Twotimer)模式的第二α塊壓縮模式。在這個模式選擇的第二實(shí)現(xiàn)中,量化α值之一具有組合α編碼以及模式表示功能性。在這種情況中,這種模式關(guān)聯(lián)量化α值的實(shí)際位模式發(fā)信號通知要使用的壓縮模式。例如,如果這個模式關(guān)聯(lián)量化α值為00bin、01bin或10bin,則應(yīng)當(dāng)采用PAA壓縮模式,否則(11bin)采用PAT模式。
但是,兩種壓縮模式優(yōu)選地產(chǎn)生壓縮圖像塊表示,其中除了α碼字之外還包含色彩碼字、強(qiáng)度碼字和索引序列。另外,兩個不同編碼塊的所產(chǎn)生位大小在位的數(shù)量方面優(yōu)選地相等。
在PAA壓縮模式中,不同的α值可根據(jù)α碼字和索引序列分配給塊中的圖像元素。相比之下,在可看作是PAA壓縮模式的補(bǔ)充或輔助模式的PAT模式中,單個α值根據(jù)α碼字分配給塊中的所有圖像元素。但是,PAT壓縮模式采用圖像元素的更高亮度(強(qiáng)度)分辨率來補(bǔ)償這種較低的α分辨率。因此,PAA壓縮模式特別適合于壓縮具有不同α值的圖像元素的圖像塊。PAT壓縮模式優(yōu)選地用于具有相似α值的圖像塊,并且將比PAA模式更好地保留塊的亮度分量(但以更低的α分辨率為代價(jià))。
首先描述PAA模式或第一α塊壓縮模式。在步驟S3,為圖像塊確定色彩碼字。這個色彩碼字是圖像塊中的圖像元素的色彩的表示。在一個優(yōu)選實(shí)施例中,色彩碼字是塊的圖像元素的平均色的表示。色彩可能是RGB(紅、綠、藍(lán))色、YUV空間或者YCrCb空間中的色彩、或者用于圖像和圖形處理及管理的其它任何色彩空間中的色彩。色彩碼字優(yōu)選地采用與原始圖像相同的色彩格式(空間)。但是,在一些情況中,可能有用的是,將圖像轉(zhuǎn)換為不同的色彩格式,即,在第一色彩空間中具有色彩碼字以及在第二個不同的色彩空間中具有原始圖像。色彩碼字優(yōu)選地為9位色彩表示序列。例如,RGB色彩碼字可包括用于紅色分量的3位、用于綠色分量的3位以及用于藍(lán)色分量的3位。
此后,在步驟S4提供強(qiáng)度碼字。這個強(qiáng)度碼字是(在解碼期間)用于修改圖像塊中的圖像元素的強(qiáng)度的一組多個強(qiáng)度修改符的表示。
在本發(fā)明的一個優(yōu)選實(shí)施例中,強(qiáng)度碼字為允許標(biāo)識強(qiáng)度修改符集的索引或表示。這個索引則可標(biāo)識或指向包含若干不同的強(qiáng)度修改符集的強(qiáng)度表或碼本中的集合。每個集合包括兩個或兩個以上強(qiáng)度修改符值,優(yōu)選地至少四個修改符值。在一個優(yōu)選實(shí)施例中,集合的修改符值為數(shù)學(xué)上互補(bǔ)的值,即每個集合優(yōu)選地是對稱的。
強(qiáng)度表優(yōu)選地包括一些集合,其中包含適合允許平滑變化表面的表示的小強(qiáng)度修改符值。另外,該表優(yōu)選地還包括一些集合,其中包含適合允許陡沿的表示的大強(qiáng)度修改符值。
表中的集合的實(shí)際強(qiáng)度修改符值可通過以隨機(jī)值開始、然后采用本領(lǐng)域的技術(shù)人員已知的諸如LBG算法(Linde、Buzo和Gray)[2]的一些版本、模擬退火和坐標(biāo)搜索之類的多個不同優(yōu)化方案及算法對這些值進(jìn)行優(yōu)化來找出。不同類型的大量圖像可用作訓(xùn)練數(shù)據(jù),其中可能僅包含α圖像或者同時(shí)包含α以及非α圖像。
為了使強(qiáng)度表的硬件實(shí)現(xiàn)費(fèi)用更低,如上所述,集合的強(qiáng)度修改符可能必需是對稱的,和/或給定集合的強(qiáng)度修改符可能是按某個因子、例如二進(jìn)行修改的另一個集合的強(qiáng)度修改符的副本。
表1說明包含強(qiáng)度修改符的8個集合的強(qiáng)度表的一個實(shí)例,其中每個集合具有四個修改符值。
表1 在表1中,強(qiáng)度修改符集5-8是與因子二相乘的集合1-4的副本。
如果強(qiáng)度表包括最多8個不同的強(qiáng)度修改符集,則強(qiáng)度碼字優(yōu)選地為3位索引(000bin-1111bin),標(biāo)識表的(八個)集合之一,例如,[-32,-9,9,32]用于碼字001bin。由于集合中的修改符值的仔細(xì)選擇,整個表1可以僅采用八個修改符值來重構(gòu),以及其余24個值可從其中計(jì)算。
但是,本發(fā)明不限于表1的使用,而是可采用具有其它強(qiáng)度修改符集和值的其它表。此外,對于表中多于或少于八個集合,強(qiáng)度碼字的大小也可能必須改變。例如,如果表包括兩個(3-4個或者多于8個)強(qiáng)度修改符集,則強(qiáng)度碼字大小可限制為一位(兩位或四位(或者四位以上))。另外,每個集合的強(qiáng)度修改符值的數(shù)量可能不同于四,例如每個集合可能使用五個值,從而給出[-32,-9,0,9,32]的實(shí)例。
表中的集合的強(qiáng)度值可采用若干不同類型的圖像作為訓(xùn)練數(shù)據(jù)來確定,如以上所述。但是,如果只有一種特定圖像類型要被編碼,則修改符值可采用對應(yīng)于那個圖像類型的訓(xùn)練數(shù)據(jù)來確定,即給出專用于特定圖像類型的強(qiáng)度表。還可能能夠具有含適合于特定圖像的強(qiáng)度修改符值的強(qiáng)度表。在這些情況、即專用于圖像或圖像類型的表的情況中,可能必需在編碼圖像塊的壓縮文件中包含表的強(qiáng)度修改符值,或者將它們與其關(guān)聯(lián)。
注意,由于根據(jù)本發(fā)明采用兩種不同的α塊壓縮模式,因此單個強(qiáng)度表可用于兩種模式。但是,在某些實(shí)現(xiàn)中,構(gòu)造并使用適合于根據(jù)PAA模式進(jìn)行壓縮的α圖像和塊的第一強(qiáng)度表以及適合于根據(jù)PAT模式進(jìn)行壓縮的圖像和塊的第二個不同的強(qiáng)度表,可能更為有利。同樣,公共強(qiáng)度表可用于α以及非α圖像。但是,在大多數(shù)應(yīng)用中,更為有利的可能是,在壓縮非α圖像時(shí)使用“非α”強(qiáng)度表,而在壓縮α圖像時(shí)使用一個或數(shù)個不同的專用“α”強(qiáng)度表,下面會進(jìn)一步論述。
另外,強(qiáng)度碼字也不必是對表中的強(qiáng)度修改符集的指針,而在實(shí)際上可能是強(qiáng)度修改符集本身,例如包含兩個修改符值、如9和32,以及在其中其它修改符值、如-9和-32可由這兩個值來確定?;蛘?,所采用的強(qiáng)度修改符集可能按照[-ka,-a,a,ka]或者[-k2a,-k1a,k1a,k2a],其中a為0或正整數(shù),k、k1和k2為放大系數(shù)。在這樣一種情況中,如果k或k1和k2是預(yù)定義的放大系數(shù),則強(qiáng)度碼字僅需要包含值a,而其余的全部三個值可從其中計(jì)算。
一旦在步驟S4中提供了強(qiáng)度碼字,則下一個步驟S5選擇圖像塊中的圖像元素的強(qiáng)度索引或表示。每個這種強(qiáng)度索引與來自步驟S4所提供的強(qiáng)度修改符集的一個強(qiáng)度修改符值關(guān)聯(lián)。換言之,強(qiáng)度索引允許標(biāo)識集合的哪一個強(qiáng)度修改符用于塊的至少一個圖像元素的特定子集。
在強(qiáng)度修改符集包含四個修改符值、諸如-32、-9、9、32的情況中,強(qiáng)度索引可能是標(biāo)識這四個值之一的2位序列。
在這種PAA壓縮模式的一個實(shí)施例中,強(qiáng)度索引與塊中的多個圖像元素、優(yōu)選地為兩個圖像元素以及更優(yōu)選地為兩個相鄰圖像元素的子集關(guān)聯(lián)并被分配到其中。簡言之,再來看圖2A和圖2B,兩個相鄰圖像元素的這種子集可由圖2A或圖2B中的圖像元素610A、610B或者圖2A或圖2B中的圖像元素610A、610C來表示。這意味著,與每個圖像元素與自己的強(qiáng)度索引關(guān)聯(lián)的情況相比,亮度分辨率將減半。
在這種PAA壓縮模式的另一個實(shí)施例中,塊中的每個圖像元素與自己的強(qiáng)度索引、優(yōu)選地與1位強(qiáng)度索引關(guān)聯(lián)。因此,如果壓縮塊的大小要保持相同,則對于各圖像元素,可以僅對來自強(qiáng)度修改符集的強(qiáng)度修改符的子集、優(yōu)選地為其中的兩個進(jìn)行索引。如果修改符集包括四個不同的修改符值、例如-32、-9、9、32,則修改符的這個子集可包括最小和最大修改符、即-32和32?;蛘?,子集可包括值-9或9或者來自該集合的優(yōu)選為兩個修改符值的其它任何組合。因此,在PAA壓縮模式的這個實(shí)施例中,每個圖像元素與各自的強(qiáng)度索引關(guān)聯(lián)。但是,這通常以塊中的圖像元素的減少數(shù)量的可用修改符值為代價(jià)來得到。
在本發(fā)明的另一個實(shí)施例中,結(jié)合上述兩個實(shí)施例。在這樣一種情況中,在PAA模式中存在基于塊的選擇為每對圖像元素分配強(qiáng)度索引還是分別分配給圖像元素。強(qiáng)度模式索引則可被產(chǎn)生并添加到壓縮塊表示中。例如,如果這個強(qiáng)度模式索引為0bin(1bin),則為圖像元素對分配強(qiáng)度索引,并且集合的所有修改符值可用。但是,如果強(qiáng)度模式索引為1bin(0bin),則分別對圖像元素分配強(qiáng)度索引,并且僅有集合中的修改符值的子集可用。
在專用強(qiáng)度模式索引的使用的一個備選實(shí)現(xiàn)中,所使用的強(qiáng)度表可經(jīng)過修改。在這樣一種情況中,包含修改符集的一部分包括最大數(shù)量的修改符值、優(yōu)選地為四個這樣的值,而其它修改符集則包括少于這個最大數(shù)量的修改符值、優(yōu)選為兩個值。上表1則可由下表2取代 表2 因此,強(qiáng)度碼字011bin或1111bin在這個說明性而非限制性的實(shí)例中對應(yīng)于強(qiáng)度模式索引1bin,即,強(qiáng)度索引分別分配給圖像元素,以及可用強(qiáng)度修改符值對于強(qiáng)度碼字011bin(111bin)為-30和30(-127和127)。其余的強(qiáng)度碼字與各包括四個修改符值的修改符集關(guān)聯(lián),并且發(fā)信號通知強(qiáng)度索引應(yīng)當(dāng)分配給圖像元素對。
在表2的一種修改形式中,修改符集、因而強(qiáng)度碼字的一半可能與第一強(qiáng)度模式關(guān)聯(lián),而剩下的一半則與第二強(qiáng)度模式關(guān)聯(lián)。但是,由于預(yù)計(jì)第一強(qiáng)度模式(成對索引分配及最大數(shù)量的修改符值)將用于按照PAA模式壓縮的大部分α塊,因此,與第二強(qiáng)度模式相比,更多的強(qiáng)度碼字和修改符集優(yōu)選地與這個第一強(qiáng)度模式關(guān)聯(lián),如表2所示。
根據(jù)所使用的實(shí)現(xiàn),步驟S5優(yōu)選地對于圖像元素的所有子集、優(yōu)選地對于所有相鄰圖像元素對或者對于圖像塊中的所有圖像元素重復(fù)進(jìn)行,由線條L1示意所示。
下一個步驟S6選擇圖像塊中的圖像元素的α索引或表示。每個這樣的α索引與來自步驟S1所確定的α碼字的一個量化α值關(guān)聯(lián)。換言之,α索引允許標(biāo)識哪一個α值用于塊的特定圖像元素。在PAA壓縮模式的一個優(yōu)選實(shí)現(xiàn)中,α碼字包括兩個量化α值αA和αB,每個優(yōu)選地為2位量化α值。因此,每個量化α值可能潛在地表示四個不同α值的集合中的一個α值。例如,假定α值的這個集合為0、85、170、255或者相應(yīng)的0.0、0.3333、0.6667、1.0,則00bin的量化α值可能表示0(0.0),01bin表示85(0.3333),10bin表示170(0.6667),以及255(1.0)由11bin表示。
在第一實(shí)施例中,塊中的每個圖像元素與各自的α索引關(guān)聯(lián)。但是,在產(chǎn)生壓縮塊表示的更小總大小的本發(fā)明的一個優(yōu)選實(shí)施例中,塊中的圖像元素的子集與預(yù)定義量化α值(從第一αA或第二αB量化α值中選取)關(guān)聯(lián)。因此,不需要對這個(這些)圖像元素執(zhí)行α索引的選擇或分配。例如,第一(最后一個)圖像元素可能始終與第一(或第二)量化α值關(guān)聯(lián)。索引序列則不需要包含這個第一(最后一個)圖像元素的α索引。因此,在具有總共八個圖像元素的圖像塊的情況下,該序列僅包含七個圖像元素關(guān)聯(lián)的α索引。本發(fā)明預(yù)計(jì),一個以上圖像元素可與量化α值預(yù)先關(guān)聯(lián)。應(yīng)當(dāng)注意,由于量化α值表示優(yōu)選地基于一對一的α值,因此將α索引與量化α值關(guān)聯(lián)的步驟還包括將α索引與α值關(guān)聯(lián)。
步驟S6優(yōu)選地對于塊中的圖像元素、更優(yōu)選地對于除了具有預(yù)定義量化α值關(guān)聯(lián)的圖像元素之外的所有圖像元素重復(fù)進(jìn)行,由線條L2示意說明。
步驟S1至S6的壓縮的結(jié)果是壓縮圖像塊,或者更準(zhǔn)確地說是圖像塊的壓縮(編碼)表示。這樣一種壓縮塊表示700如圖3A所示。表示700包括色彩碼字720,包含三種色彩分量R 720A、G 720B和B 720C;強(qiáng)度碼字730;α碼字740,包含兩個量化α值αA 740A和αB 740B;以及圖像元素索引的序列或位圖750。這個索引序列750優(yōu)選地包括具有α索引750A的第一子序列以及具有強(qiáng)度索引750B的第二子序列。另外,壓縮塊表示700優(yōu)選地包括α塊索引710,把圖像塊標(biāo)識為α圖像塊。在圖像僅包括所謂的α塊的情況中,這個α塊索引710可被省略。
注意,壓縮圖像塊700的α塊索引710、色彩碼字720及其包含色彩分量720A至720C、強(qiáng)度碼字730、α碼字740及其包含量化α值740A和740B、以及索引序列750及其包含子序列750A和750B的相互順序可能與圖中所示不同。還要注意,碼字和索引序列不需要連續(xù)地排列。
如果圖像塊包括八個圖像元素(例如參見圖2A和圖2B),以及各強(qiáng)度索引為2位,并且為每個圖像元素對分配強(qiáng)度索引,則強(qiáng)度索引子序列750B的大小為8位。當(dāng)采用與塊中的各圖像元素關(guān)聯(lián)的1位強(qiáng)度索引時(shí),也得到這種相同的8位大小。此外,假定α碼字740的相應(yīng)大小為4位,以及α索引子序列750A包括用于八個圖像元素中的七個的1位α索引(圖像元素之一則預(yù)定義成與第一(或第二)量化α值關(guān)聯(lián)),因而得到用于子序列750A的7位。如果色彩720和強(qiáng)度730碼字的大小分別為9位和3位,并且α塊索引710為1位,則圖像塊的編碼表示700的總大小為32位,得到4bpp的壓縮率。表示700的這個小的大小極適合于通常具有16或32位的存儲總線的瘦客戶機(jī),如移動單元。因此,則僅需要一次或者最壞情況下為兩次存儲器存取來讀出編碼表示700。
再來看圖1,如果步驟S2的模式選擇表明而是應(yīng)當(dāng)選取PAT模式或第二α塊壓縮模式,則方法繼續(xù)進(jìn)行到步驟S7。在這個步驟S7,為塊中的圖像元素確定色彩碼字。這個步驟S7基本上對應(yīng)于步驟S3,并且不再進(jìn)一步論述。在下一個步驟S8,為圖像塊提供強(qiáng)度碼字,與步驟S4相似。但是,在不同強(qiáng)度表用于兩種α塊壓縮模式的情況中,步驟S8中提供的強(qiáng)度碼字采用專用于PAT壓縮模式的表來獲得,而步驟S4中提供的強(qiáng)度碼字則采用適合于這種PAA模式的表來獲得。
一旦在步驟S8中提供了強(qiáng)度碼字,則下一個步驟S9選擇圖像塊中的圖像元素的強(qiáng)度索引或表示。每個這種強(qiáng)度索引與來自步驟S8所提供的強(qiáng)度修改符集的一個強(qiáng)度修改符值關(guān)聯(lián)。在這種PAT壓縮模式中,每個圖像元素優(yōu)選地與強(qiáng)度索引關(guān)聯(lián),從而為具有八個圖像元素的圖像塊提供總共八個強(qiáng)度索引。
步驟S9優(yōu)選地對于塊中的所有圖像元素重復(fù)進(jìn)行,由線條L3示意表示。
注意,在這種PAT壓縮模式中,沒有為圖像元素提供α索引。這是因?yàn)樗袌D像元素都與同一個量化α值(因而α值)關(guān)聯(lián)。在PAA壓縮模式中,α碼字優(yōu)選地包括兩個量化α值αA和αB,每個優(yōu)選地包含分別為αA0、αA1和αB0、αB1的兩位。但是,在這種PAT壓縮模式的第一實(shí)現(xiàn)中,αA0=αB0以及αA1=αB1,并且本文中表示為“有用”或者數(shù)據(jù)攜帶量化α值的量化α值中只有一個才會在塊的解碼期間使用。在一個備選實(shí)現(xiàn)中,αA是模式關(guān)聯(lián)的量化α值,即等于例如11bin的PAT特定的位模式。剩下的量化α值αB則是有用的量化α值。
這個有用的量化α值的所有位可用于對α值表示進(jìn)行編碼。在一個備選實(shí)施例中,有用量化α值中只有一位將用于α值表示。在后一種情況中,量化α值、因而α碼字通??赡軆H表示兩個可能的α值中的一個,例如85(0.3333)或170(0.6667)。
在有用量化α值中只有一位用作α值表示的情況中,這個量化α值的其余位優(yōu)選地與(強(qiáng)度)索引序列共用。因此,步驟S9可看作包括通過根據(jù)與圖像元素之一、通常為塊中的第一圖像元素關(guān)聯(lián)的強(qiáng)度索引的一部分的比特值(重新)設(shè)置α碼字的有用量化α值的一位來修改α碼字的子步驟。
步驟S1、S2和S7至S9的壓縮的結(jié)果是壓縮圖像塊。這樣一種壓縮塊表示700如圖3B所示。表示700包括色彩碼字720,包含三種色彩分量R 720A、G 720B和B 720C;強(qiáng)度碼字730;α碼字740,包含兩個量化α值αA 740A和αB 740B。圖中,量化α值αA 740A是量化α值αB 750B的副本(或者等于11bin)。另外,由于有用量化α值740B中只有單一位α將用于α目的,因此,在這個實(shí)現(xiàn)中,其余的位將與強(qiáng)度索引序列750共用。與圖3A相似,壓縮塊表示700優(yōu)選地包括α塊索引710,把圖像塊標(biāo)識為α圖像塊。在圖像僅包括所謂的α塊的情況中,這個α塊索引710可被省略。
注意,壓縮圖像塊700的α塊索引710、色彩碼字720及其包含色彩分量720A至720C、強(qiáng)度碼字730、α碼字740以及索引序列750的相互順序可能與圖中所示不同。還要注意,碼字和索引序列不需要連續(xù)地排列。
如果圖像塊包括八個圖像元素(參見例如圖2A和圖2B),以及各強(qiáng)度索引為2位,并且為塊中的每個圖像元素分配強(qiáng)度索引,則強(qiáng)度索引序列750的大小為16位,其中的一個與α碼字740共用。此外,還假定色彩720、強(qiáng)度730和α740碼字740的相應(yīng)大小分別為9位、3位和4位,并且使用1位α塊索引。圖像塊的編碼表示700的總大小則為32位,并得到4bpp的壓縮率。
步驟S1至S9優(yōu)選地對于步驟S0的分解期間所提供的所有圖像塊重復(fù)進(jìn)行(由線條L4示意表示)。結(jié)果則是壓縮圖像塊的序列或文件。所得壓縮圖像塊可在文件中從左到右、從上到下、以它們在步驟S0的塊分解中被分解的相同順序來排序。然后,該方法結(jié)束。
由于兩種壓縮模式的結(jié)果,在一些示例中,編碼圖像將包括僅按照PAA或PAT壓縮模式進(jìn)行壓縮的圖像塊。但是,對于大多數(shù)實(shí)際的實(shí)現(xiàn),編碼圖像通常包括按照PAA模式進(jìn)行壓縮的一些塊表示以及按照PAT模式進(jìn)行壓縮的另外一些塊表示。
編碼圖像可提供給存儲器以便在其中存儲,直到圖像的后續(xù)呈現(xiàn)、例如顯示為止。此外,編碼圖像可作為編碼塊表示的信號被提供給發(fā)射器,以便(無線或有線)傳送給另一個單元。
如果相同的強(qiáng)度表用于兩種壓縮模式中(步驟S4和S8),則圖1的流程圖中所述的壓縮方法可能經(jīng)過修改,使得色彩碼字的確定(步驟S3或S7)以及強(qiáng)度碼字的提供(步驟S4或S8)在步驟S2的壓縮模式的選擇之前執(zhí)行。在這樣一種情況中,PAA模式的特有步驟是強(qiáng)度索引序列的提供(步驟S5)以及α索引序列的提供(步驟S6)。相應(yīng)的PAT特定步驟將是強(qiáng)度索引序列的提供(步驟S9)。
圖4是流程圖,說明圖1的圖像壓縮方法的附加步驟。該方法從圖1中的步驟S0繼續(xù)進(jìn)行。在下一個步驟S10,確定當(dāng)前圖像應(yīng)當(dāng)編碼為α圖像還是編碼為非α或無α圖像。這種選擇可基于與圖像關(guān)聯(lián)的全局α圖像索引。或者,選擇是基于圖像的圖像元素的α值或?qū)傩缘姆治?。因此,如果至少一個圖像元素或者至少最小數(shù)量的多個圖像元素的α值與預(yù)定義的不透明值不同或者沒有處于不透明區(qū)間內(nèi),則圖像被分類為α圖像,否則它是非α圖像。
如果在步驟S10斷定圖像應(yīng)當(dāng)編碼(壓縮)為α圖像,則方法繼續(xù)進(jìn)行到步驟S11。這個步驟S11分析分解圖像的圖像塊,并確定它們應(yīng)當(dāng)編碼為α塊還是編碼為非α塊。這種分類優(yōu)選地通過分析塊中的圖像元素的α值來執(zhí)行。與以上所述相似,如果圖像塊的至少一個圖像元素或者至少最小數(shù)量的多個圖像元素的α值與預(yù)定義的不透明值不同或者沒有處于不透明區(qū)間內(nèi),則該塊被分類為α塊,否則它是非α塊。
在本發(fā)明的一個備選實(shí)施例中,步驟S11所分析的塊中的圖像元素的相應(yīng)α值在進(jìn)行壓縮模式的判定(α塊模式或非α塊模式)之前首先被量化。如以上結(jié)合α碼字的論述簡要提及的,碼字的量化α值優(yōu)選地可表示從可用α表示值,例如0.0(0)、0.3333(85)、0.6667(170)、1.0(255)的集合中選取的值。在這樣一種情況中,圖像元素的α值首先可量化為從這個集合中選取的值。例如,假定要壓縮的圖像塊的α值如下所示 此外還假定單一預(yù)定義α值1.0(255)表示不透明。因此,如果這個塊的分類將在量化之前進(jìn)行,則它將被分類為α塊,因?yàn)樗袌D像元素都具有與不透明值1.0不同的α值。但是,如果塊的各α值首先被量化為可能的值0.0、0.3333、0.6667、1.0其中之一,則分類將會不同。在那種情況中,所有量化α值將為表示不透明的1.0,并且塊應(yīng)當(dāng)壓縮為非α塊。
如果塊具有以下α值, 則最后一個圖像元素的α值將被量化為0.6667(其它所有的值將被量化為1.0)。在這個實(shí)例中,這個塊被分類為α塊,因?yàn)閳D像元素的至少一個具有與預(yù)定義不透明值1.0不同的(量化)α值。但是,由于塊中的其余圖像元素具有(非常)接近不透明值的α值,因此,從壓縮質(zhì)量的觀點(diǎn)來看,將塊壓縮為非α塊可能是最佳的。在這樣一種情況中,可通過采用不透明值的區(qū)間來替代單一預(yù)定義不透明值,和/或通過要求至少兩個圖像元素具有與預(yù)定義不透明值不同的關(guān)聯(lián)量化α值,來執(zhí)行步驟S11的分類。
如果步驟S11把當(dāng)前圖像塊分類為α塊,則方法繼續(xù)進(jìn)行到圖1的步驟S1。但是,如果該塊在步驟S11中而是被分類為非α或無α塊,則方法繼續(xù)進(jìn)行到步驟S12。在這個步驟S12,圖像塊采用本文中稱為PAP(Packman-Alpha-Packman)模式的非α塊模式或第三壓縮模式來壓縮。這種PAP壓縮模式包括確定塊的色彩碼字、優(yōu)選地為12位色彩碼字(每個R、G、B色彩分量用4位)。另外,還與以上結(jié)合圖1所述的PAA和PAT模式類似地提供強(qiáng)度碼字。這個強(qiáng)度碼字優(yōu)選地是對于強(qiáng)度表中找到的一組多個強(qiáng)度修改符的3位索引。這個強(qiáng)度表可能是兩個α塊壓縮模式(PAA和PAT)以及這個非α塊壓縮模式(PAP)共用的表。但是,采用適合于非α塊的專用強(qiáng)度表可能是有利的。此后提供強(qiáng)度索引,優(yōu)選地為塊中的每個圖像元素2位強(qiáng)度索引。這些索引各與來自修改符集的強(qiáng)度修改符之一關(guān)聯(lián)。圖3C說明按照這種PAP模式進(jìn)行壓縮的圖像塊700。除了色彩碼字720、強(qiáng)度碼字730和強(qiáng)度索引序列750之外,壓縮塊表示700優(yōu)選地還包括1位非α塊索引710,表明該塊已經(jīng)采用PAP壓縮模式進(jìn)行壓縮。注意,采用PAA和PAT模式(圖3A和圖3B)以及采用PAP模式(圖3C)進(jìn)行壓縮的圖3A-3C的圖像塊700的大小優(yōu)選地為相等,以及更優(yōu)選地為32位。
來看圖4,步驟S11的塊分類以及圖1的步驟S1-S9或者步驟S12的塊壓縮優(yōu)選地對于應(yīng)當(dāng)被壓縮的α圖像的圖像塊重復(fù)進(jìn)行,由線條L5示意所示。
由于PAA、PAT和PAP模式的結(jié)果,在一些示例中,編碼α圖像將包括僅按照這些模式之一進(jìn)行壓縮的圖像塊。但是,對于大多數(shù)實(shí)際的實(shí)現(xiàn),這樣一種編碼α圖像通常包括按照PAA模式進(jìn)行壓縮的一些塊表示(圖3A)、按照PAT模式進(jìn)行壓縮的一些塊表示(圖3B)以及按照PAP模式進(jìn)行壓縮的一些塊表示(圖3C)。
如果圖4中的步驟S10的圖像分析確定圖像應(yīng)當(dāng)編碼為非α圖像(無α圖像),則方法繼續(xù)進(jìn)行到可選步驟S13。在這個步驟S13,要用于當(dāng)前塊的非α圖像壓縮模式被選取。在僅有單個這種非α圖像壓縮模式可用的情況中,在步驟S13中不需要模式選擇。在下一個步驟S14,圖像塊采用這種(可能所選的)非α圖像模式來壓縮。一個優(yōu)選的這種非α圖像模式在本文中表示為PA(PAckman)模式。簡言之,在那種PA壓縮模式中,為每個圖像塊產(chǎn)生12位色彩碼字、4位強(qiáng)度碼字和16位強(qiáng)度索引序列,從而產(chǎn)生32位的總大小。在PA壓縮方案的擴(kuò)展中,兩種非α圖像壓縮模式之間的選擇可對于每個塊進(jìn)行,分別稱為PP(Packman-Packman)和PC(Packman-CCC)模式。在這樣一種情況中,步驟S13按照塊來選擇PP或PC模式的哪一種要用于當(dāng)前塊。PP模式與PA方案相似。但是,壓縮圖像塊優(yōu)選地包括1位PP模式索引和3位強(qiáng)度索引而不是4位強(qiáng)度索引。PC壓縮模式采用兩個色彩碼字而不是一個色彩碼字和一個強(qiáng)度碼字。因此,按照這種PC模式壓縮的圖像塊優(yōu)選地包括1位PC模式索引、兩個12位色彩碼字以及優(yōu)選地包含對于塊中除一個圖像元素以外的所有圖像元素的兩個色彩碼字之一的1位色彩索引的7位色彩索引序列。剩余的圖像元素則具有與第一(或第二)色彩碼字的預(yù)定義關(guān)聯(lián),使得對于那個圖像元素不需要色彩索引。
步驟S13和S14優(yōu)選地對于應(yīng)當(dāng)被壓縮的非α圖像中的所有圖像塊重復(fù)執(zhí)行,由線條L6示意表示。
圖5是流程圖,更詳細(xì)地說明圖1的α碼字確定步驟。該方法從圖1中的步驟S0繼續(xù)進(jìn)行。在下一個可選步驟S20,圖像元素的α值被量化為預(yù)定義集合可用的量化α值的值。如前面所述,如果每個量化α值包括2位,則預(yù)定義集合優(yōu)選地包含四個這樣的值。例如,這些值可能是0.0、0.3333、0.6667、1.0,它們在具有多達(dá)256(512或1024)個不同α值的情況中表示值0(0或0)、85(170或341)、170(341或682)、255(511或1023)。在備選實(shí)施例中,該集合而是可按照以下備選之一0.0,0.50,0.75,1.0;0,0.25,0.50,1.0;0,0.25,0.75,1.0或者區(qū)間0至1中的其它一些適當(dāng)?shù)乃膫€值(它們對應(yīng)于0和255、511、1023之間、即0和2n-1之間,其中n為整數(shù))。但是,在PAT壓縮模式中,僅采用“有用”量化α值的單一位。因此,量化α值則僅可從優(yōu)選地組成上述四個值的子集的兩個可能的值、例如0.3333和0.6667或者0.0和1.0中選取。
在任一種情況中,一旦α值已經(jīng)量化,要用于α碼字的兩個量化α值則在步驟S21中選取。這些量化α值應(yīng)當(dāng)是來自最好地表示塊中的圖像元素的(量化)α值的集合的那兩個值。
假定當(dāng)前塊具有以下α值 在步驟S20,α值被量化為集合0.0、0.3333、0.6667、1.0的值。
在這樣一種情況中,上述塊將由以下量化值來表示 要使用的最佳量化α值可通過在可用值當(dāng)中執(zhí)行搜索以及計(jì)算誤差值來找出
其中
是圖像元素i的量化α值,pi∈兩個量化α值的子集,以及N為塊中的圖像元素的總數(shù)。這對于所有量化α值對重復(fù)進(jìn)行,以及使誤差最小的兩個這樣的量化α值將被選作α碼字。在以上的示例塊中,第一量化α值可能是0.0,而第二個則是1.0。這個塊則按照PAA壓縮模式來壓縮,因?yàn)榇a字的兩個量化α值不相等。
在另一個實(shí)例中,原始塊可能具有以下α值 當(dāng)量化這些值時(shí),都被分配值0.3333。在這種情況中,將以上等式(1)用于查找塊的兩個最佳量化α值的步驟將產(chǎn)生相等的量化α值。因此,這個塊優(yōu)選地按照PAT模式來壓縮。因此,第二量化α值(αB)(有用量化α值)的最高有效位(MSB)(αB0)將被分配表示量化α值0.3333的0bin。第一量化α值(αA)的MSB(αA0)則是這個αB0的副本、即為0bin。第二量化α值的最低有效位(LSB)(αB1)將由強(qiáng)度索引序列共用,因而由第一圖像元素的強(qiáng)度索引值來確定。第一量化α值的LSB(αA1)是這個αB1的副本。或者,第一量化α值(αA)將為11bin(即等于PAT模式索引),第二量化α值(αB)的MSB將被分配0bin,以及第二量化α值(αB)的LSB將由第一圖像元素的強(qiáng)度索引值來確定。因此,只有第二量化α值的MSB才會在解碼期間用于產(chǎn)生塊中的圖像元素的α值。
在另一個實(shí)例中,塊可能包括以下α值 在量化之后,所有的值將為0.0。初看起來,這似乎是按照PAT模式壓縮塊的好方法。但是,在只有可用量化α值為0.3333和0.6667的情況中,在這種模式中無法準(zhǔn)確地表示預(yù)期值0.0。在這樣一種情況中,最好是采用PAA壓縮模式。碼字的第一量化α值(αA)則通常為00bin。注意,第二量化α值(αB)的兩個位的至少一個必須為1bin即αB≠00bin仍然是重要的,因?yàn)閴K否則會按照PAT模式壓縮。
在本發(fā)明的一個備選實(shí)施例中,原始α值可組織為至少兩組或兩串。例如,α1、α3和α4均接近0.4,而圖像元素的其余值α2、α5、α6、α7和α8則接近值0.9。最佳地表示這兩串的兩個值則可被確定,即當(dāng)前實(shí)例中為0.4和0.9。最好地表示這兩個值的(多達(dá)四個可能的值中的)兩個量化α值則被選作α碼字,即0.3333(01bin)和1.0(11bin)。
一旦已經(jīng)為圖像塊確定α碼字,方法繼續(xù)進(jìn)行到圖1的步驟S2。
圖6是流程圖,說明圖1的確定色彩和強(qiáng)度碼字以及提供強(qiáng)度索引的步驟。該方法從圖1中的步驟S2繼續(xù)進(jìn)行。在下一個步驟S30,確定圖像塊中的圖像元素的平均色。下面假定圖像元素的色彩由RGB色的24位來表示,即紅色分量的8位、綠色分量的8位以及藍(lán)色分量的8位。但是,本發(fā)明不限于這個具體實(shí)例,而是可適用于圖像元素的任何色彩表示。平均色(R,G,B)則被確定為 ---(2) 其中Ri、Gi、Bi是圖像元素i的R、G、B分量,以及N是圖像塊中的圖像元素的總數(shù)。
一旦在步驟S30中確定了平均色(R,G,B),則下一個步驟S31對平均色進(jìn)行量化。(24位)平均色優(yōu)選地量化為9位序列(色彩碼字)。換言之,每個8位平均分量被量化為3位平均分量。例如,如果平均色R,G,B被計(jì)算為 則3位量化形式
可由下式產(chǎn)生 即,[101,010,001]bin可用作(9位)色彩碼字。
步驟S32分析表的不同強(qiáng)度修改符集以及集合的不同修改符值。下一個步驟S33計(jì)算每個這樣的修改符集和修改符值測試的誤差值。根據(jù)這些誤差值,在步驟S33中選取產(chǎn)生最小誤差值的修改符集和集合的強(qiáng)度修改符值。下面更詳細(xì)地描述這種情況。
圖像塊的色彩屬性可采用稱為簡單編碼、窮舉編碼和組合量化的三個不同實(shí)例之一來編碼,下面進(jìn)行簡要論述。
簡單編碼 為了對(α)圖像塊進(jìn)行編碼,基本上選擇色彩碼字和正確的強(qiáng)度修改符集。一旦進(jìn)行了這個步驟,圖像塊中的圖像元素的編碼通過嘗試集合的所有四個強(qiáng)度修改符并計(jì)算誤差來進(jìn)行。在PAA壓縮模式的第一實(shí)施例中,單一強(qiáng)度修改符與多個圖像元素、優(yōu)選地為一對相鄰圖像元素關(guān)聯(lián)。在PAA模式的第二實(shí)施例中,每個圖像元素與單一強(qiáng)度修改符關(guān)聯(lián),但是僅可選擇強(qiáng)度修改符的子集。在一些應(yīng)用中,通過采用加權(quán)誤差值來獲得更精確的修改符選擇和更高的編碼質(zhì)量,例如 其中,圖像元素的原始(24位)色彩為(R,G,B),
表示色彩碼字(量化平均色,9位),所選修改符集為[-a,-b,b,a]且q∈[-a,-b,b,a],q∈[-a,a]或者q∈[-b,b],wR、wG、wB是色彩分量的不同權(quán)。另外,wG還優(yōu)選地大于wR和wB。例如,和或者wR=0.299、wG=0.587以及wB=0.114。
對于修改符和集合的所有組合計(jì)算對應(yīng)的(加權(quán))誤差值,并選擇產(chǎn)生最小誤差的修改符和集合的組合。
在這種簡單編碼中,量化為每個色彩分量3位的塊中的八個圖像元素的平均色用作色彩碼字。然后,正確的強(qiáng)度修改符集通過窮舉搜索來選擇,即嘗試強(qiáng)度表、如表1中的全部八個集合,并選取使誤差值為最小的集合。這對于每個圖像元素需要8×4=32次估算。如果權(quán)為和則可采用整數(shù)算法,并且編碼變得更快。對于權(quán)的這種選擇,采用簡單編碼的64×64像素(圖像元素)的圖像的編碼在1.2GHz的膝上型個人計(jì)算機(jī)上應(yīng)當(dāng)花費(fèi)不到100ms,通常大約30ms。
窮舉編碼 在以上所述的簡單編碼實(shí)例中,量化平均色只是用作圖像塊中的圖像元素的色彩的表示(色彩碼字)。在這個窮舉編碼實(shí)例中,色彩以及強(qiáng)度修改符集(包括修改符值)被選擇,即嘗試每種可能的組合。對于給定的圖像元素,除了強(qiáng)度修改符集的全部3位和強(qiáng)度索引的2位的先前迭代之外,通過色彩的全部9位的進(jìn)一步迭代被添加,它總共提供214個步驟。對64×64像素的圖像進(jìn)行編碼的步驟采用與簡單壓縮相同的膝上型個人計(jì)算機(jī)應(yīng)當(dāng)花費(fèi)不到半分鐘、可能大約10秒。雖然這對于運(yùn)行時(shí)應(yīng)用、特別是對于較大圖像可能太長,但對于脫機(jī)編碼并不是不容許的。
組合量化 對于簡單編碼實(shí)例,這個實(shí)例以(24位)平均色(R,G,B)開始,但是,這個平均色的色彩分量與強(qiáng)度分量、即強(qiáng)度修改符集和值的選擇共同量化。
如果Rlow和Rhigh表示直接分別低于和高于R的3位量化等級或值,則使得Rlow≤R≤Rhigh。任務(wù)則是選擇R作為Rlow或Rhigh。對于綠色和藍(lán)色分量,情況也是這樣。
首先,誤差值采用來計(jì)算 ε2=(Rlow+q-R)2+(Glow+q-G)2+(Blow+q-B)2 (4) 這可簡化為 ε2=(δR+q)2+(δG+q)2+(δB+q)2 (5) 其中,δR=Rlow-R,δG=Glow-G以及δB=Blow-B。此外,假定q(強(qiáng)度修改符)可隨意選取,即等于最佳把這個最佳q插入等式(5),簡化后得 其中,ξ是括號中的表達(dá)式。
但是,如果對于紅色分量選擇較高的值,即以及采用Rhigh-R≈36+δx的事實(shí),則等式(5)可改寫為 ε2≈((δR+36)+q)2+(δG+q)2+(δB+q)2 (7) 對于這種情況,通過插入最佳這個表達(dá)式可進(jìn)一步簡化 ---(8) 為了確定這兩種量化色彩(Rlow,Glow,Blow)或(Rhigh,Glow,Blow)中的哪一種為最佳、即提供最小誤差值,研究等式(8)的中括號內(nèi)的額外表達(dá)式。換言之,如果36+2δR-δG-δB<0,則(Rhigh,Glow,Blow)應(yīng)當(dāng)被選取,否則選取(Rlow,Glow,Blow)(在36+2δR-δG-δB=0的情況下,可選取任一個碼字)。然后,對于三種色彩分量的低和高量化的所有可能的組合、即對于平均色的所有相鄰量化色重復(fù)進(jìn)行這個程序。結(jié)果如下表3所示。 表3
注意,不要求ξ被明確計(jì)算,只有表3的中括號內(nèi)的表達(dá)式(誤差表示)才必須被計(jì)算,以便選擇要使用的量化等級(色彩碼字)。還要注意,色彩碼字(Rlow,Glow,Blow)和(Rhigh,Ghigh,Bhigh)提供相同的誤差值。這是在可達(dá)到任何q(強(qiáng)度修改符值)的假定下。但在實(shí)際上,q被限制為所使用修改符集或修改符子集的強(qiáng)度修改符值、例如表1的修改符值。根據(jù)表1,可以比較大值更大的精度指定更小的修改符值(q),這意味著,如果比起(Rlow,Glow,Blow),(R,G,B)更接近(Rhigh,Ghigh,Bhigh),則選擇(Rhigh,Ghigh,Bhigh)比選擇(Rlow,Glow,Blow)更好,反之亦然。與簡單編碼相比,總編碼時(shí)間應(yīng)當(dāng)沒有太大改變,即64×64像素的圖像應(yīng)當(dāng)仍然在不到100ms內(nèi)被壓縮。
圖像解碼 圖7說明根據(jù)本發(fā)明、對原始圖像的編碼圖像或編碼形式進(jìn)行解碼的方法的流程圖。編碼圖像基本上包括圖像塊的若干壓縮或編碼表示,例如圖3A或圖3B的表示700。這些壓縮塊表示優(yōu)選地通過以上結(jié)合圖1所述的圖像編碼方法來產(chǎn)生。
該方法一般通過識別要解壓縮的壓縮圖像塊開始??赡艿氖?,編碼圖像的所有壓縮圖像塊應(yīng)當(dāng)經(jīng)過解壓縮,以便產(chǎn)生原始圖像的解碼表示。或者,只有原始圖像的一部分將被存取。因此,只有所選數(shù)量的圖像塊必須被解壓縮(或者更準(zhǔn)確地說,某些圖像塊的所選數(shù)量的圖像元素必須被解壓縮或解碼)。
該方法在步驟S40中開始,在其中,為圖像塊中的圖像元素的至少一個產(chǎn)生色彩表示。這個色彩生成根據(jù)壓縮塊表示中的色彩碼字來執(zhí)行。在下一個步驟S41,要用于當(dāng)前圖像塊的解壓縮模式被選取。這個模式選擇基于α碼字,優(yōu)選地基于α碼字的量化α值的比較,或者基于量化α值中至少一個的實(shí)際值或位模式。與圖1的壓縮模式選擇相似,如果量化α值不同,則選取第一解壓縮模式(PAA模式),而如果(所有)量化α值相等,則在步驟S41中選取第二解壓縮模式(PAT模式)。或者,如果模式關(guān)聯(lián)的量化α值等于PAA特定(PAT特定)值,則PAA(PAT)解壓縮模式應(yīng)當(dāng)在S41中被選取。
根據(jù)PAA解壓縮模式,強(qiáng)度修改符集在步驟S42中提供。這個修改符集根據(jù)壓縮塊表示中的強(qiáng)度碼字來提供。這種集合提供優(yōu)選地通過借助于強(qiáng)度碼字從包含多個修改符集的表、例如表1中識別強(qiáng)度修改符集來執(zhí)行。這個表可能是兩種α塊解壓縮模式共用的表或者模式適應(yīng)的表。但是,在一些應(yīng)用中,可能的是,強(qiáng)度碼字本身包括修改符集,并且不需要表查找。
在步驟S43,選擇要用于應(yīng)當(dāng)被解壓縮的圖像元素的強(qiáng)度修改符。根據(jù)與圖像元素關(guān)聯(lián)或者與圖像元素所屬的圖像元素子集關(guān)聯(lián)的強(qiáng)度索引從步驟S42所提供的修改符集中選擇修改符值。在這種PAA解壓縮模式中,如果各圖像元素與自己的強(qiáng)度索引關(guān)聯(lián),則這個索引優(yōu)選地指向修改符集的子集中找到的強(qiáng)度修改符。例如,如果步驟S42中所提供的強(qiáng)度修改符集是按照[-a,-b,b,a],則(1位)強(qiáng)度索引優(yōu)選地僅可表示修改符值-a或a(或者例如-b或b)。但是,在給定強(qiáng)度索引而是被分配給多個(相鄰)圖像元素的子集的情況中,強(qiáng)度索引優(yōu)選地可表示修改符值-a、-b、b或a的任一個。
一旦在步驟S43選擇了正確的強(qiáng)度修改符值,則在步驟S44采用這個值來修改或調(diào)制圖像元素的強(qiáng)度。根據(jù)本發(fā)明的強(qiáng)度修改表示根據(jù)(可能加權(quán)的)強(qiáng)度修改符值對色彩表示的所有色彩分量進(jìn)行修改、例如相加或相乘。
步驟S43和S44可對圖像塊中的若干圖像元素執(zhí)行(由線條L7示意表示)。本發(fā)明預(yù)計(jì),在一些應(yīng)用中,只有單一圖像元素從特定圖像塊中解壓縮,特定圖像塊的多個圖像元素被解壓縮,或者特定塊的所有圖像元素被解壓縮。
在隨后的步驟S45,根據(jù)α碼字為圖像塊確定多個、優(yōu)選地為兩個α值。在下一個步驟S46,為被解壓縮的圖像元素選擇α值并分配到其中。這個α值通常采用與相關(guān)圖像元素關(guān)聯(lián)并且在α索引序列中找到的α索引來選擇。但是,如果相關(guān)圖像元素屬于沒有關(guān)聯(lián)α索引而是具有預(yù)定義關(guān)聯(lián)α值的圖像元素的子集,則在步驟S46,那個預(yù)定義α值被識別并分配給該圖像元素。步驟S46可為圖像塊中的若干圖像元素執(zhí)行(由線條L8示意表示)。
或者,特別是在對壓縮塊表示中的單一或幾個圖像元素解壓縮時(shí),通過α索引或者通過預(yù)定義關(guān)聯(lián),與圖像元素關(guān)聯(lián)的碼字的量化α值在步驟S46中被選取。然后采用這個所選量化α值來產(chǎn)生(未量化的)α值。因此,只有單一α值被產(chǎn)生,并且步驟S45可被省略。這樣,基于α索引的選擇可在采用α碼字的量化α值所產(chǎn)生的α值當(dāng)中或者在量化α值當(dāng)中執(zhí)行。
如果在步驟S41中反而選擇了PAT解壓縮模式,則該方法繼續(xù)進(jìn)行到步驟S47,在其中,采用強(qiáng)度碼字為圖像塊提供強(qiáng)度修改符集,優(yōu)選地從強(qiáng)度表中提供。這個步驟S47基本上對應(yīng)于步驟S42。但是,在一些應(yīng)用中,不同的強(qiáng)度表可用于PAA(步驟S42)和PAT(步驟S47)解壓縮模式。在下一個步驟S48,要用于圖像元素的強(qiáng)度修改符從步驟S47所提供的修改符集中選取。與PAA解壓縮模式相反,各圖像元素優(yōu)選地與唯一強(qiáng)度索引關(guān)聯(lián),以及索引可表示修改符集中的修改符值的任一個。所選強(qiáng)度修改符則在步驟S49中用來修改圖像元素的強(qiáng)度。這個步驟S49對應(yīng)于步驟S44。兩個步驟S48和S49優(yōu)選地對于應(yīng)當(dāng)被解壓縮的塊中的所有圖像元素重復(fù)進(jìn)行,由線條L9示意表示。
在后續(xù)步驟S50,(單一)α值根據(jù)α碼字、更優(yōu)選地根據(jù)碼字的“有用”量化α值來產(chǎn)生。在步驟S51,這個α值被分配給圖像元素。注意,在這種模式中,優(yōu)選地僅產(chǎn)生一個α值,因而不需要α值的選擇。所產(chǎn)生的α值優(yōu)選地分配給應(yīng)當(dāng)被解壓縮的圖像元素,由線條L10示意表示。
步驟S40至S46或S51優(yōu)選地對于包含應(yīng)當(dāng)被解碼的圖像元素的所有圖像塊重復(fù)進(jìn)行(由線條L11示意表示)。這意味著,步驟S40至S46或S51的循環(huán)可執(zhí)行一次,但是對于不同的壓縮圖像塊往往執(zhí)行若干次,和/或?qū)τ谔囟▔嚎s圖像塊執(zhí)行若干次。
在可選步驟S52,原始圖像或者它的一部分的解碼表示根據(jù)解壓縮圖像元素和塊來產(chǎn)生。注意,在一些應(yīng)用中,若干圖像元素必須被解壓縮,以便呈現(xiàn)解碼表示的單一像素、紋素或體素。例如,在三線性內(nèi)插中,八個圖像元素被解壓縮,以及對于雙線性內(nèi)插,相應(yīng)數(shù)量為四個圖像元素,這是本領(lǐng)域的技術(shù)人員眾所周知的。然后,該方法結(jié)束。
在相同強(qiáng)度表用于兩種解壓縮模式的情況中,圖7的解碼方法可經(jīng)過修改,使得劃分成不同模式的步驟稍后在解壓縮程序中執(zhí)行。在這樣一種情況中,色彩表示生成和α值生成以及可能的修改符集提供都在解壓縮模式選擇之前。然后,模式特定操作在PAA模式中是選擇和分配α值以及在PAT模式中是分配α值。
圖8是流程圖,說明本發(fā)明的圖像解碼方法的附加步驟。該方法在步驟S60中開始,在其中,分析圖像應(yīng)當(dāng)被解碼為α圖像還是解碼為非α(無α)圖像。這種選擇優(yōu)選地基于與圖像關(guān)聯(lián)的(全局)α圖像索引。
如果圖像是α圖像,則方法繼續(xù)進(jìn)行到步驟S61。在這個步驟S61,應(yīng)當(dāng)被解壓縮的各個圖像塊被分類為α塊或非α塊。這種分類優(yōu)選地根據(jù)壓縮塊表示中包含的α塊索引來執(zhí)行。因此,如果這個α塊索引為1bin(或者為0bin),則圖像塊是α塊,并且應(yīng)當(dāng)采用α解壓縮模式、即以上結(jié)合圖7所述的模式之一進(jìn)行解壓縮。然后,該方法繼續(xù)進(jìn)行到圖7的步驟S40。
如果圖像塊被分類為非α塊,則它應(yīng)當(dāng)在步驟S62中按照非α塊解壓縮模式(PAP模式)進(jìn)行解壓縮。這種PAP模式基本上包括圖7的步驟S40、S42(或S47)、S43(或S48)以及S44(或S49)。因此,采用色彩碼字為塊中的圖像元素產(chǎn)生色彩表示。強(qiáng)度修改符集采用強(qiáng)度碼字來提供,優(yōu)選地從強(qiáng)度表中提供。這個表可能是這種模式與PAA和PAT模式共用的。但是,采用適合于這種PAP模式的強(qiáng)度表可能是有利的。強(qiáng)度修改符則采用強(qiáng)度索引序列從所提供集合中選取,以及圖像元素的強(qiáng)度被修改。
步驟S61的塊分類以及按照α塊解壓縮模式之一(圖7)的塊解壓縮或者非α塊解壓縮模式(步驟S62)優(yōu)選地對于包含應(yīng)當(dāng)被解碼的圖像元素的圖像的所有壓縮圖像塊重復(fù)進(jìn)行,由線條L12示意表示。
在步驟S60中分類為非α圖像的編碼圖像應(yīng)當(dāng)采用非α圖像解壓縮模式來解碼。在可選步驟S63,要用于當(dāng)前壓縮塊的非α解壓縮模式被選取。在僅有單個這種非α模式可用的情況中,在步驟S63中不需要模式選擇。在下一個步驟S64,壓縮圖像塊或者它的至少一部分采用這種(可能所選的)非α圖像模式進(jìn)行解壓縮。這樣一種優(yōu)選的非α圖像解壓縮模式、即PA模式基本上對應(yīng)于PAP解壓縮模式。主要差別在于,PA解壓縮模式可利用具有優(yōu)選地多達(dá)16個不同修改符集的強(qiáng)度表(由于4位強(qiáng)度碼字),而PAP解壓縮模式優(yōu)選地采用具有多達(dá)八個不同修改符集的強(qiáng)度表(由于3位強(qiáng)度碼字)。在PA解壓縮方案的擴(kuò)展中,兩種非α圖像解壓縮模式(PP模式或PC模式)之間的選擇可對于每個塊進(jìn)行。在這樣一種情況中,步驟S63按照塊來選擇這兩種模式的哪一種要用于當(dāng)前塊,優(yōu)選地根據(jù)壓縮塊中包含的(PP或PC)模式索引進(jìn)行。PP解壓縮模式與PA方案相似。但是,解壓縮圖像塊優(yōu)選地包括1位PP模式索引和3位強(qiáng)度索引而不是4位強(qiáng)度索引。PC解壓縮模式采用兩個色彩碼字而不是一個色彩碼字和一個強(qiáng)度碼字。因此,在解壓縮期間,采用這兩種碼字為塊產(chǎn)生兩個色彩表示。要被解碼的圖像元素則被分配從這兩個色彩表示中選取的色彩表示,優(yōu)選地根據(jù)色彩索引或預(yù)定義元素-碼字關(guān)聯(lián)進(jìn)行。
步驟S63和S64優(yōu)選地對于應(yīng)當(dāng)被壓縮的非α圖像中的所有圖像塊重復(fù)執(zhí)行,由線條L13示意表示。
圖9更詳細(xì)地說明圖7的色彩表示生成步驟S40的一個實(shí)施例。該方法在步驟S70中開始,在其中,優(yōu)選地為9位的色彩碼字的量化色彩擴(kuò)大或擴(kuò)展為優(yōu)選地24位。對于采用RGB色的情況,色彩碼字的每個量化的3位色彩分量擴(kuò)大為8位色彩分量。這種色彩擴(kuò)展可通過把3位模式復(fù)制到8位色彩字來實(shí)現(xiàn)。換言之,101bin的3位色彩分量擴(kuò)大為10110110bin。在步驟S71,擴(kuò)大的色彩被分配給要被解碼的圖像塊的圖像元素。然后,該方法繼續(xù)進(jìn)行到圖7的步驟S41。
圖10是流程圖,更詳細(xì)地說明步驟S42至S46或者步驟47至S51。該方法從圖7中的步驟S41繼續(xù)進(jìn)行。在下一個步驟S80,根據(jù)強(qiáng)度碼字從強(qiáng)度表中選取強(qiáng)度修改符集。這個強(qiáng)度表可能是共有或者模式特定的表。如果強(qiáng)度表中存儲的強(qiáng)度修改符集包括修改符值的第一子集、例如[a,b],則強(qiáng)度修改符值的第二子集可從第一子集的值來確定,例如[-a,-b]。在下一個步驟S81,圖像元素的強(qiáng)度通過把來自所選修改符集的強(qiáng)度修改符與擴(kuò)大的色彩相加來修改。因此,這個修改符值被加入圖像元素的色彩的所有分量(對于RGB色為全部三種色彩)。這可實(shí)現(xiàn)為修改符值與所有色彩分量的簡單加法。但是,在一些應(yīng)用中,可能優(yōu)選的是,在將修改符值加到分量之前對它進(jìn)行加權(quán)。在這種情況中,不同的權(quán)可用于不同的色彩分量。在一個備選實(shí)施例中,可采用不同于簡單加法的另一種類型的修改,例如乘法或者XOR。在這樣一種情況中,采用同一個強(qiáng)度修改符值來對擴(kuò)大的色彩的所有分量執(zhí)行同樣的調(diào)制,但是,這個值可能對于分量進(jìn)行不同的加權(quán)。
在下一個步驟S82,所得強(qiáng)度修改色彩分量值被鉗制在最小色彩門限與最大色彩門限之間。例如,如果在將(可能加權(quán)的)強(qiáng)度修改符值加至色彩分量之后,所得值小于最小門限,則該值被鉗制為這個門限的值。相應(yīng)地,如果所得值大于最大門限,則門限的值應(yīng)當(dāng)代替用于那個分量。對于具有色彩分量中的256種不同等級的情況,最小和最大門限的一個非限制實(shí)例分別為0和255。
在后續(xù)步驟S83,根據(jù)所使用的α塊解壓縮模式,一個或多個(8位)α值通過擴(kuò)展量化α值來產(chǎn)生。在PAA模式中,這種擴(kuò)展可通過重復(fù)相應(yīng)量化α值的兩個位模式來實(shí)現(xiàn)。例如,01bin的量化α值被擴(kuò)展為8位值01010101bin,它對應(yīng)于α值85(0.3333)。在PAT模式中,只有量化α值之一的單一位優(yōu)選地用于產(chǎn)生α值。例如,如果這單一位為1bin(0bin),則8位α值可能例如是1010 1010bin(0101 0101bin),它對應(yīng)于170或0.6667(85或0.3333)。
如果使用模式關(guān)聯(lián)的量化α值,則(α)查找表可用于確定將被擴(kuò)展為α值的量化α值。在下表4中,αA表示模式關(guān)聯(lián)的量化α值,以及αB是數(shù)據(jù)攜帶量化α值。 表4 注意,當(dāng)αA等于11bin,則應(yīng)當(dāng)使用PAT模式,否則采用PAA模式。把表4用于PAA圖像塊允許識別要(根據(jù)α索引或預(yù)定義關(guān)聯(lián))擴(kuò)展為α值的量化α值。實(shí)際擴(kuò)展類似于以上方式來執(zhí)行。從表4還可看到,數(shù)據(jù)攜帶量化α值αB與第一量化α值之間存在一一對應(yīng),但在模式關(guān)聯(lián)量化α值αA與第二量化α值之間則沒有。
該方法繼續(xù)進(jìn)行到圖7的步驟S46或S51。
下面將通過四個實(shí)例進(jìn)一步說明對編碼圖像塊的解碼。在前兩個實(shí)例中,采用如圖3A所示的壓縮塊表示、如圖2A所示的圖像塊以及根據(jù)表1的強(qiáng)度表,在第三實(shí)例中,壓縮塊表示是按照圖3B,以及在第四實(shí)例中,將采用表4。
解碼實(shí)例1 圖像塊的壓縮表示是按照1 101 0 010 1 001 1 011 1 1011000 0111 00 10bin,在其中,位0是模式索引,位1-3是色彩碼字的紅色分量,位4是α碼字的第一量化α值的MSB,位5-7是色彩碼字的綠色分量,位8是第一量化α值的LSB,位9-11是色彩碼字的藍(lán)色分量,位12是α碼字的第二量化α值的MSB,位13-15是強(qiáng)度碼字,位16是第二量化α值的LSB,位17-23是α索引子序列,以及位24-31是強(qiáng)度索引的子序列。
色彩碼字經(jīng)過解碼(擴(kuò)展),產(chǎn)生圖像塊的色彩表示。色彩碼字中的各色彩分量達(dá)到3位,但通過將3位模式復(fù)制到8位字來擴(kuò)展為8位 紅 10110110bin182 綠 01001001bin73 藍(lán) 00100100bin36 這個擴(kuò)展的色彩被分配給圖像塊的圖像元素,得到 比較塊的兩個量化α值。由于10bin(第一量化α值)不同于11bin(第二量化α值),因此,塊應(yīng)當(dāng)按照PAA解壓縮模式進(jìn)行解碼。
要使用的正確強(qiáng)度修改符集根據(jù)強(qiáng)度碼字從表1中選取。在表1中看到,強(qiáng)度碼字011bin對應(yīng)于強(qiáng)度修改符[-127,-41,41,127]。
強(qiáng)度索引序列實(shí)現(xiàn)根據(jù)下式來識別這四個修改符值中哪一個要用于不同的圖像元素 在PAA模式的這個實(shí)施例中,每個強(qiáng)度索引與塊中的兩個相鄰圖像元素關(guān)聯(lián)。
第一強(qiáng)度索引為01bin,它表示第一強(qiáng)度標(biāo)識符值127應(yīng)當(dāng)被加入第一圖像元素子集的所有三種分量 所得分量被鉗制在0與255之間,因而得出(255,200,163)。部分解碼的圖像塊這時(shí)按照 因此,在這個實(shí)例中,相同的強(qiáng)度修改符用于位于同一列中的兩個圖像元素。但是,這應(yīng)當(dāng)只看作一個說明性實(shí)例。或者,同一行中的兩個相鄰圖像元素可被分配相同的強(qiáng)度修改符。
對于下一個圖像元素子集,強(qiáng)度索引為11bin,即強(qiáng)度修改符-127應(yīng)當(dāng)加至所有三種色彩分量。鉗制之后的結(jié)果為(55,0,0)。對塊中的所有圖像元素重復(fù)這種程序的步驟將創(chuàng)建如下所示的部分解碼的圖像塊 兩個量化α值10bin和11bin擴(kuò)展為8位α值 第一α值 10101010bin1700.6667 第二α值 11111111bin2551.0 第一圖像元素在這個實(shí)例中始終與第一α值(或者同樣地與第一量化α值)關(guān)聯(lián),因而被分配α值170。對于塊中的其余圖像元素,α索引子序列用于選擇α值。第二圖像元素(在同一行中相鄰)具有表示第二α值、即255的α索引1bin。繼續(xù)進(jìn)行這種值分配產(chǎn)生下列最終解碼塊 解碼實(shí)例2 在這個實(shí)例中,PAA解壓縮模式的另一個實(shí)施例應(yīng)用于圖像塊的壓縮表示1 101 0 010 1 001 1 011 1 1011000 01110010bin。與以上所述對應(yīng),位0是模式索引,位1-3是色彩碼字的紅色分量,位4是第一量化α值的MSB,位5-7是色彩碼字的綠色分量,位8是第一量化α值的LSB,位9-11是色彩碼字的藍(lán)色分量,位12是第二量化α值的MSB,位13-15是強(qiáng)度碼字,位16是第二量化α值的LSB,位17-23是α索引子序列,以及位24-31是塊的圖像元素的強(qiáng)度索引的序列。
色彩表示以與解碼實(shí)例1中相同的方式來產(chǎn)生,從而產(chǎn)生下列部分解碼塊 相同的強(qiáng)度修改符集([-127,-41,41,127])從表1中選取,如解碼實(shí)例1中那樣。但是,在這個實(shí)施例中,只有包含修改符值[-127,127]的子集才可用于該塊。在這樣一種情況中,0bin的強(qiáng)度索引表示修改符127,而1bin則表示-127。
第一強(qiáng)度索引為0bin,這意味著第一強(qiáng)度修改符值127應(yīng)當(dāng)被加入第一圖像元素的所有三種分量 所得分量被鉗制在0與255之間,因而得出(255,200,163)。部分解碼的圖像塊這時(shí)按照 對于下一個圖像元素,強(qiáng)度索引為1bin,即強(qiáng)度修改符-127應(yīng)當(dāng)加至所有三種色彩分量。鉗制之后的結(jié)果為(55,0,0)。對塊中的所有圖像元素重復(fù)這種程序?qū)?chuàng)建如下所示的部分解碼圖像塊 α值的產(chǎn)生與解碼實(shí)例1相似,本文不再重復(fù)。因此,最終解碼的圖像塊將按照 解碼實(shí)例3 圖像塊的壓縮表示是按照1 101 0 010 1 001 0 011 11 01 10 00 0111 00 10bin,在其中,位0是模式索引,位1-3是色彩碼字的紅色分量,位4是位12的副本,位5-7是色彩碼字的綠色分量,位8是位16的副本,位9-11是色彩碼字的藍(lán)色分量,位12是α碼字的“有用”量化α值,位13-15是強(qiáng)度碼字,位16-31、位24-31是塊的圖像元素的強(qiáng)度索引的序列。
由于α碼字的兩個量化α值01bin(位4和位8)和01bin(位12和位16)相等,因此PAT解壓縮模式用于這個塊。
塊的色彩表示按照解碼實(shí)例1來產(chǎn)生,得出下列部分解碼塊 011bin的強(qiáng)度碼字表示如解碼實(shí)例1和2中相同的強(qiáng)度修改符集應(yīng)當(dāng)用于當(dāng)前塊。但是,這是由于公共強(qiáng)度表在兩種α塊解壓縮模式中用于解碼實(shí)例1至3。但是,可能能夠采用模式特定的強(qiáng)度表,使得這個解碼實(shí)例3的修改符集可包括與解碼實(shí)例1和2的修改符集不同的修改符值,即使強(qiáng)度碼字在所有實(shí)例中都相同。
第一強(qiáng)度索引為11bin,它表示第一強(qiáng)度標(biāo)識符值-127應(yīng)當(dāng)被加至第一圖像元素的所有三種分量 所得分量被鉗制在0與255之間,因而得出(55,0,0)。部分解碼的圖像塊這時(shí)按照 對于下一個圖像元素,強(qiáng)度索引為01bin,即強(qiáng)度修改符127應(yīng)當(dāng)加至所有三種色彩分量。鉗制之后的結(jié)果為(255,200,163)。對塊中的所有圖像元素重復(fù)這種程序?qū)?chuàng)建如下所示的部分解碼圖像塊 此后產(chǎn)生圖像元素的α值。注意,在這種PAT模式中,為所有圖像元素產(chǎn)生單一α值。第二量化α值的MSB(位12)將用于產(chǎn)生這個α值。在這個實(shí)例中,這個位是0bin,它被擴(kuò)展為01010101bin850.3333。因此,值85被分配給所有圖像元素,從而產(chǎn)生最終解碼圖像塊表示 解碼實(shí)例4 圖像塊的壓縮表示是按照1 101 0 010 1 001 1 011 1 1011000 0111 00 10bin,在其中,位0是模式索引,位1-3是色彩碼字的紅色分量,位4是α碼字的模式關(guān)聯(lián)量化α值的MSB,位5-7是色彩碼字的綠色分量,位8是模式關(guān)聯(lián)量化α值的LSB,位9-11是色彩碼字的藍(lán)色分量,位12是α碼字的數(shù)據(jù)攜帶量化α值的MSB,位13-15是強(qiáng)度碼字,位16是數(shù)據(jù)攜帶量化α值的LSB,位17-23是α索引子序列,以及位24-31是強(qiáng)度索引的子序列。
色彩表示的產(chǎn)生以及對色彩分量的強(qiáng)度修改以與以上解碼實(shí)例1相同的方式來執(zhí)行。這時(shí)部分解碼的塊表示按照 模式關(guān)聯(lián)量化α值(αA)為10bin,以及數(shù)據(jù)攜帶量化α值(αB)為11bin。參照表4,α碼字值的這個組合表示第一量化α值11bin和10bin。這些量化值擴(kuò)展為8位α值 第一α值11111111bin2551.0 第二α值10101010bin1700.6667 通過按照實(shí)例1中概述的原理,最終解碼塊為 實(shí)現(xiàn)論述 根據(jù)本發(fā)明的圖像編碼(圖像塊編碼)和圖像解碼(圖像塊解碼)方案可在一般數(shù)據(jù)處理系統(tǒng)中提供,例如在配置用于處理和/或呈現(xiàn)圖像的用戶終端或其它單元中提供。這種終端可能是計(jì)算機(jī)。但是,本發(fā)明極適合于瘦客戶機(jī),例如個人數(shù)字助理(PDA)、移動單元和電話。這類終端的特征通常在于有限存儲容量和存儲帶寬,并且由電池供電,即還具有有限電力。由于根據(jù)本發(fā)明的編碼以及解碼都可以極簡單地以硬件、軟件或者硬件和軟件的組合來實(shí)現(xiàn),以及編碼圖像塊優(yōu)選地僅具有32位的最大的大小,因此,本發(fā)明可有利地應(yīng)用于瘦客戶機(jī)。
圖像處理終端 圖11說明由移動單元表示的圖像處理終端100。但是,本發(fā)明不限于移動單元,而是可在其它終端和數(shù)據(jù)處理單元中實(shí)現(xiàn)。只有直接涉及本發(fā)明的移動單元100中的部件和元件才在圖中示出。
移動單元100包括移動單元100中用于處理包括圖像數(shù)據(jù)在內(nèi)的數(shù)據(jù)的(中央)處理器(CPU)200。在移動單元100中提供圖形系統(tǒng)130用于管理圖像和圖形數(shù)據(jù)。具體來說,圖形系統(tǒng)130適合在所連接屏幕120或其它顯示單元上呈現(xiàn)或顯示圖像。移動單元100還包括用于在其中存儲數(shù)據(jù)的存儲裝置或存儲器140。在這個存儲器140中,可存儲圖像數(shù)據(jù),具體來說是根據(jù)本發(fā)明的編碼圖像數(shù)據(jù)(壓縮圖像塊)。由于圖像塊的小的總大小(32位)以及高壓縮率(4bpp),在移動單元100具有有限存儲容量的情況中,圖像數(shù)據(jù)也可有效地存儲在存儲器140中。
根據(jù)本發(fā)明的圖像編碼器210在移動單元100中提供。這個編碼器210配置用于將圖像或紋理編碼為圖像(或紋理)的編碼表示。如上所述,這種編碼表示包括多個壓縮圖像塊的序列或文件。這個圖像編碼器210可作為在CPU 200上運(yùn)行的軟件來提供,如圖所示。作為補(bǔ)充或替代,編碼器210可設(shè)置在圖形系統(tǒng)130中或者設(shè)置在移動單元100中的其它位置。
來自塊編碼器210的圖像的編碼表示可通過(存儲)總線150提供給存儲器140,以便在其中存儲,直到圖像的后續(xù)呈現(xiàn)為止。作為補(bǔ)充或替代,編碼圖像數(shù)據(jù)可被轉(zhuǎn)發(fā)給輸入/輸出(I/O)單元110,用于(無線或有線)傳送給其它外部終端或單元。這個I/O單元110還可適合從外部單元接收圖像數(shù)據(jù)。這個圖像數(shù)據(jù)可能是應(yīng)當(dāng)由圖像編碼器210編碼的圖像,或者是應(yīng)當(dāng)被解碼的編碼圖像數(shù)據(jù)。還能夠?qū)⒕幋a圖像表示存儲在所提供的專用紋理存儲器中,例如存儲在圖形系統(tǒng)130中。此外,作為補(bǔ)充或替代,編碼圖像的部分可能(暫時(shí))存儲在(紋理)高速緩沖存儲器、例如在圖形系統(tǒng)130中。本發(fā)明的廉價(jià)(在復(fù)雜度方面)和快速解壓縮的一個極大優(yōu)點(diǎn)在于,壓縮圖像塊可至少暫時(shí)存儲在高速緩存中,供快速便捷存取。這還通過高壓縮率得到促進(jìn),它允許作為未壓縮(RGBA8888)塊數(shù)據(jù)的八倍的圖像塊數(shù)據(jù)同時(shí)存儲在高速緩存中。
如果(存儲)總線150具有32位的最大帶寬,則需要單一存儲器存取從存儲器140中取出或讀出本發(fā)明的編碼圖像表示。但是,如果總線150具有更大的帶寬容量、如64位或者甚至128位,則多個編碼圖像表示可在單一存儲器存取中取出。例如,假定64位總線150以及根據(jù)圖2A的圖像塊大小。如果圖像塊依照圖2A并且“上下緊接著”堆疊,或者如果它們依照圖2B并且“并排”堆疊,則圖像塊與存儲器140中的后續(xù)圖像塊共同組成圖像元素的4×4正方形。但是,如果圖2A(圖 2B)的塊被“并排”(“上下緊接著”)設(shè)置,則圖像塊與后續(xù)塊共同組成2×8的框。4×4的正方形更為優(yōu)選,因?yàn)槿绻捎媚撤N形式的紋理高速緩存系統(tǒng),則查找4×4的正方形中的預(yù)期圖像元素的概率大于2×8的框。
在移動單元100中提供根據(jù)本發(fā)明的圖像解碼器220,用于對編碼圖像進(jìn)行解碼,以便產(chǎn)生解碼圖像表示。這個解碼表示可能對應(yīng)于整個原始圖像或者它的一部分。圖像解碼器220將解碼圖像數(shù)據(jù)提供給圖形系統(tǒng)130,它通常又當(dāng)數(shù)據(jù)在屏幕120上呈現(xiàn)或提供之前對數(shù)據(jù)進(jìn)行處理。圖像解碼器220可設(shè)置在圖形系統(tǒng)130中,如圖中所示。作為補(bǔ)充或替代,解碼器200可作為在CPU 200上運(yùn)行的軟件來提供,或者在移動單元100中的其它位置上提供。
移動單元100可配備圖像編碼器210以及圖像解碼器220,如圖中所示。但是,對于一些終端100,可能僅包括圖像編碼器210。在這種情況中,編碼圖像數(shù)據(jù)可被傳遞給執(zhí)行圖像的解碼以及可能的呈現(xiàn)的另一個終端。相應(yīng)地,終端100可能僅包括圖像解碼器220,即沒有編碼器。這種終端100則從另一個終端接收包含編碼圖像數(shù)據(jù)的信號,并對它進(jìn)行解碼以便產(chǎn)生解碼圖像表示。因此,編碼圖像信號可在采用無線電發(fā)射器和接收器的終端之間以無線方式傳送?;蛘撸刹捎糜糜谠诮K端之間分布圖像和編碼圖像表示的其它技術(shù),例如采用IR端口的IR-技術(shù)、藍(lán)牙以及終端之間的圖像數(shù)據(jù)的有線傳遞??稍诮K端之間連接及交換的存儲卡或芯片還可用于這種圖像數(shù)據(jù)終端間分布。
移動單元100的單元110、130、200、210和220可作為軟件、硬件或者它們的組合來提供。
編碼器 圖12說明根據(jù)本發(fā)明的圖像編碼器210的一個實(shí)施例的框圖。編碼器210通常包括用于將輸入圖像分解或分為若干圖像塊的圖像分解器212。分解器212優(yōu)選地配置用于將圖像分解為包含八個圖像元素的圖像塊。這個分解器212可適合于將不同的輸入圖像分解為具有不同大小的圖像塊。在這種情況中,分解器212優(yōu)選地接收輸入信息,實(shí)現(xiàn)標(biāo)識哪一個圖像塊格式要用于給定圖像。
圖像編碼器210優(yōu)選地包括用于將圖像分類為α圖像或者非α圖像的圖像分析器214。這個分析器214可根據(jù)例如通過與圖像數(shù)據(jù)共同存儲而與圖像關(guān)聯(lián)的全局α圖像索引來執(zhí)行分類?;蛘?,分析器可根據(jù)圖像中的圖像元素的屬性(α或量化α值)的分析來執(zhí)行圖像分類。在圖像編碼器210僅對α圖像進(jìn)行操作的情況中,這個圖像分析器214可省略。另外,圖像分析器的功能性或者可包括在塊編碼器300中。
圖像編碼器210的這個實(shí)施例包括單個塊編碼器300。這個塊編碼器300對于從圖像分解器所接收的圖像塊進(jìn)行編碼,以便產(chǎn)生編碼塊表示。在以α塊壓縮模式(PAA或PAT)進(jìn)行操作時(shí),這種圖像塊表示包括色彩碼字、強(qiáng)度碼字、α碼字以及圖像元素關(guān)聯(lián)索引序列。塊表示的整體大小遠(yuǎn)遠(yuǎn)小于未編碼圖像塊的相應(yīng)大小。塊編碼器300優(yōu)選地配置用于依次對來自分解器212的各圖像塊進(jìn)行處理(編碼)。
塊編碼器300優(yōu)選地包括或者有權(quán)訪問包含多個強(qiáng)度修改符集的至少一個強(qiáng)度表500。表500的修改符集用于強(qiáng)度以及可能的色彩碼字的生成。強(qiáng)度表500可設(shè)置在塊編碼器300中,或者設(shè)置在圖像編碼器210中的其它位置。
圖像編碼器210可包括用于所有不同壓縮模式中的單個強(qiáng)度表500?;蛘?,若干不同的表可設(shè)置在編碼器210中,在其中,表的強(qiáng)度修改符適合于不同的壓縮模式和/或適合于不同的圖像類型,或者表可適合于特定圖像。
圖像編碼器210的單元212、214和300可作為軟件、硬件或者其組合來提供。單元212、214、300和500可在圖像編碼器210中共同實(shí)現(xiàn)?;蛘撸植际綄?shí)現(xiàn)也是可行的,其中在用戶終端中的其它位置上提供一部分單元。
圖13說明根據(jù)本發(fā)明的圖像編碼器210的另一個實(shí)施例的框圖。這個圖像編碼器210包括如圖12的實(shí)施例所述的圖像分解器212和圖像分析器214,不對它們進(jìn)一步論述。但是,編碼器210包括多個(M個,其中M為大于一的正整數(shù))塊編碼器300-1至300-M。每個這種塊編碼器300-1至300-M基本上對應(yīng)于圖12中的圖像編碼器的塊編碼器。通過在圖像編碼器210中提供多個塊編碼器300-1至300-M,來自分解器212的多個圖像塊可經(jīng)過并行處理(編碼),它減少總的圖像編碼時(shí)間?;蛘撸瑝K編碼器300-1至300-P的第一子集可用于按照PAA壓縮模式來壓縮圖像塊,而編碼器300-P+1至300-M的剩余子集則按照PAT壓縮模式進(jìn)行操作(1<P<M)。在另一個實(shí)施例中,塊編碼器300-1至300-P的第一子集用于壓縮α圖像,即按照PAA、PAT和PAP模式之一進(jìn)行。剩余的塊編碼器300-P+1至300-M則可用于非α圖像(PA模式或者PP和PC模式)。在這樣一種情況中,圖像分析器214優(yōu)選地產(chǎn)生激活可按照相關(guān)壓縮模式工作的一個(或多個)正確的塊編碼器的壓縮模式命令。
每個塊編碼器300-1至300-M可包括強(qiáng)度表500。不同編碼器300-1至300-M中的強(qiáng)度表500均可包括相同的強(qiáng)度修改符值?;蛘?,模式特定的強(qiáng)度表可由編碼器300-1至300-M使用。在一個備選實(shí)現(xiàn)中,單個強(qiáng)度表500設(shè)置在圖像編碼器210中,并且連接到所有塊編碼器300-1至300-M。
圖像編碼器210的單元212、214和300-1至300-M可作為軟件、硬件或者其組合來提供。單元212、214、300-1至300-M和500可在圖像編碼器210中共同實(shí)現(xiàn)。或者,分布式實(shí)現(xiàn)也是可行的,其中在用戶終端中的其它位置上提供一部分單元。
圖14說明根據(jù)本發(fā)明的塊編碼器300的一個實(shí)施例的框圖,例如圖12中的圖像編碼器的塊編碼器或者圖13的圖像編碼器中的塊編碼器之一。編碼器300包括α量化器340,它根據(jù)塊中的圖像元素的α值來產(chǎn)生包含多個量化α值的α碼字。這個α碼字或者碼字的量化α值優(yōu)選地被轉(zhuǎn)發(fā)給塊編碼器300中的模式選擇器310。如果當(dāng)前塊的圖像元素全部與不透明值關(guān)聯(lián),則α量化器340可產(chǎn)生非α塊標(biāo)識符。在這樣一種情況中,這個非α塊標(biāo)識符被轉(zhuǎn)發(fā)給模式選擇器310。
模式選擇器310選擇要用于當(dāng)前塊的壓縮模式。這種模式選擇至少部分根據(jù)來自α量化器340的所接收α碼字或值來執(zhí)行。例如,如果量化α值并非全部相等,則選擇PAA壓縮模式,而如果它們相等,則選擇PAT壓縮模式。模式關(guān)聯(lián)量化α值或者也可在選擇壓縮模式時(shí)由模式選擇器310使用。
色彩量化器320確定圖像塊中的圖像元素的色彩的色彩表示,并對這個色彩表示進(jìn)行量化。色彩表示優(yōu)選地為圖像元素的24位平均色。色彩表示依次由量化器310量化為9位色彩表示、即色彩碼字。
強(qiáng)度量化器330在塊編碼器300中提供,用于標(biāo)識要用于當(dāng)前圖像塊的強(qiáng)度修改符集。量化器330優(yōu)選地配置用于從關(guān)聯(lián)強(qiáng)度表500中選擇這個修改符集。然后,量化器330產(chǎn)生與所選修改符集關(guān)聯(lián)的強(qiáng)度碼字。在多個強(qiáng)度表500可用的情況中,要使用的正確(模式特定)的表優(yōu)選地根據(jù)來自模式選擇器310的所接收模式信號來識別。
編碼器300還包括索引選擇器350,它選擇塊中的圖像元素的圖像元素關(guān)聯(lián)索引(α和強(qiáng)度索引)。當(dāng)來自模式選擇器310的模式命令指明PAA模式時(shí),索引選擇器350首先產(chǎn)生具有α索引的第一子序列。這個α索引子序列優(yōu)選地包括塊的圖像元素的子集中的各圖像元素的α索引。這種α索引與α量化器340所產(chǎn)生的α碼字的量化α值之一關(guān)聯(lián)。優(yōu)選地包括一個圖像元素的剩余子集具有與量化α值之一的預(yù)定義關(guān)聯(lián),意味著對于這個圖像元素不需要α索引。另外,索引選擇器350還產(chǎn)生強(qiáng)度索引子序列。在這種PAA模式的第一實(shí)施例中,這個強(qiáng)度索引子序列包括塊中的多個圖像元素、優(yōu)選地為兩個圖像元素、更優(yōu)選地為兩個相鄰圖像元素的每個子集的相應(yīng)強(qiáng)度索引。在PAA模式的第二實(shí)施例中,每個圖像元素與各自的強(qiáng)度索引關(guān)聯(lián)。這些強(qiáng)度索引各與來自強(qiáng)度量化器330的強(qiáng)度碼字所表示的修改符集中的強(qiáng)度修改符之一關(guān)聯(lián)。在第一PAA實(shí)施例中,修改符集的所有修改符值都是可用的,并且可由強(qiáng)度索引來表示。但是,在第二PAA實(shí)施例中,修改符值的子集優(yōu)選地可由強(qiáng)度索引來表示。
在PAT模式中,索引選擇器350產(chǎn)生強(qiáng)度索引,它對于塊中的各圖像元素包括與強(qiáng)度量化器330所提供的強(qiáng)度碼字所表示的強(qiáng)度修改符集中的修改符值之一關(guān)聯(lián)的強(qiáng)度索引。
塊編碼器300可能可選地包括用于估算誤差值的誤差估算器360,以便選擇圖像塊的碼字和圖像元素關(guān)聯(lián)索引。然后對于相關(guān)壓縮圖像塊形式來選擇使關(guān)聯(lián)誤差值為最小的碼字和索引的選取。
這個塊編碼器結(jié)構(gòu)極為靈活,并且可以不僅用于α塊壓縮模式,而且用于非α塊壓縮模式(PAP),甚至用于壓縮非α圖像。
在這樣一種情況中,模式選擇器310產(chǎn)生相應(yīng)的模式信號。色彩量化器320、強(qiáng)度量化器330和索引選擇器350則對這個模式特定信號作出響應(yīng)。
例如,如果圖像為非α圖像,則模式選擇器310優(yōu)選地接收來自圖像編碼器的圖像分析器的非α圖像標(biāo)識符。然后,PA模式或者PP和PC模式信號之一由模式選擇器310產(chǎn)生。
模式選擇器310優(yōu)選地還產(chǎn)生包含在所得壓縮圖像塊中或者與其關(guān)聯(lián)的塊模式索引。對于α圖像,這個模式索引表明α塊(PAA或PAT模式)或者非α塊(PAP模式)。對于非α圖像,這個模式索引可用來區(qū)分PP和PC模式。但是,在非α圖像采用單一非α壓縮模式PA來編碼的情況中,不需要塊模式索引。
當(dāng)色彩量化器320接收PAP、PA或PP模式信號時(shí),與PAA和PAT模式中的9位色彩碼字相比,圖像塊的量化色彩表示優(yōu)選地為12位色彩碼字。另外,如果模式信號表示PC模式,則這個色彩量化器320優(yōu)選地根據(jù)塊中的圖像元素的色彩分量值來產(chǎn)生兩個12位色彩碼字。
來自模式選擇器310的模式特定信號由強(qiáng)度量化器330用來區(qū)分強(qiáng)度表和/或強(qiáng)度碼字大小,在PAA、PAT、PAP和PP模式中優(yōu)選地為3位強(qiáng)度碼字以及在PA模式中優(yōu)選地為4位。
如果模式信號表示PC模式,則索引選擇器350產(chǎn)生塊中的圖像元素的子集中的各圖像元素的色彩索引。每個色彩索引與已經(jīng)由色彩量化器320在這種PC模式中工作時(shí)所產(chǎn)生的兩個色彩碼字其中之一相關(guān)聯(lián)。剩余的圖像元素子集、優(yōu)選地為一個圖像元素具有與色彩碼字之一的預(yù)定義關(guān)聯(lián)。
塊編碼器300的單元310至360可作為軟件、硬件或者它們的組合來提供。單元310至360和500可共同在塊編碼器300中實(shí)現(xiàn)?;蛘撸植际綄?shí)現(xiàn)也是可行的,其中的一部分單元在圖像編碼器中的其它位置上提供。
根據(jù)本發(fā)明的色彩量化器320的一個優(yōu)選實(shí)現(xiàn)如圖15的框圖所示。量化器320包括配置用于確定圖像塊中的圖像元素的色彩的平均值的部件322。這個平均色優(yōu)選地為RGB色,但可能是用于圖像處理的其它任何色彩格式。這個已確定平均色被提供給量化部件324,它對平均色進(jìn)行量化。量化器314優(yōu)選地配置用于把來自色彩平均器322的24位平均RGB色量化為9位RGB色。
在根據(jù)PAP、PA和PP模式之一操作時(shí),相應(yīng)的量化平均RGB色優(yōu)選地為12位。在根據(jù)PC模式操作時(shí),量化部件324確定圖像塊的兩個色彩碼字。這可通過確定經(jīng)過(RGB)色彩空間中的平均色點(diǎn)的最佳線條來實(shí)現(xiàn)。這個線條上的兩個點(diǎn)則由量化部件324來選取并量化為兩個(12位RGB)色彩碼字。
色彩量化器320的單元322和324可作為軟件、硬件或者它們的組合來提供。單元322和324可在色彩量化器320中共同實(shí)現(xiàn)?;蛘?,分布式實(shí)現(xiàn)也是可行的,其中的一部分單元在塊編碼器中的其它位置上提供。
根據(jù)本發(fā)明的強(qiáng)度量化器330的一個優(yōu)選實(shí)現(xiàn)如圖16的框圖所示。量化器330優(yōu)選地包括用于從關(guān)聯(lián)強(qiáng)度表500中選擇修改符集的修改符集選擇器332。然后,量化器330產(chǎn)生與所選修改符集關(guān)聯(lián)的強(qiáng)度碼字。可能的強(qiáng)度表的選擇優(yōu)選地基于輸入模式信號。
強(qiáng)度量化器330的單元332可作為軟件、硬件或者它們的組合來提供。
根據(jù)本發(fā)明的α量化器340的一個優(yōu)選實(shí)現(xiàn)如圖17的框圖所示。α量化器340的量化部件344優(yōu)選地對圖像塊的原始α值進(jìn)行量化。相應(yīng)的α值優(yōu)選地被量化為從可用值的預(yù)定義集合中選取的某個值,例如
(0,85,170,255)、
(0,128,191,255)、
(0,64,128,255)或者
(0,64,191,255)的集合。這個集合優(yōu)選地存儲在α量化器342的存儲器或表346中或者與其關(guān)聯(lián)。量化器340中的選擇器342則從最好地表示塊的(八個)量化值的預(yù)定義集合中選取兩個量化α值。在一個備選實(shí)現(xiàn)中,選擇器342選取最好地表示塊的(八個)原始(未量化)α值的預(yù)定義集合的兩個量化α值。在任一情況中,這兩個選取值將為α碼字的量化α值。
值選擇可作為通過測試來自存儲器346中的集合中的兩個量化α值的組合的任一個進(jìn)行的窮舉搜索來執(zhí)行。然后選取產(chǎn)生最小誤差值的具體組合。
選擇器342比較這兩個量化α值(所選量化α值)。如果它們不同,則選擇器342產(chǎn)生PAA模式標(biāo)識符,并將它轉(zhuǎn)發(fā)給塊編碼器的模式選擇器。但是,如果它們相等,則PAT模式標(biāo)識符被產(chǎn)生和發(fā)送。
或者,兩個量化α值可被發(fā)送給模式選擇器來代替PAA/PAT模式標(biāo)識符。
如果兩個量化α值不相等,則所得α碼字優(yōu)選地包括兩個2位量化α值。但是,如果量化α值相等,則只有α碼字的單一位將用作α值的表示。另一個量化α值的位之一將是這個位的副本。另外,量化α值之一的剩余位將由強(qiáng)度索引序列共用,即,然后由塊編碼器的索引選擇器來定義。另一個量化α值的剩余位將是這個共用位的副本。
α量化器340的單元342和344可作為軟件、硬件或者它們的組合來提供。單元342、344和346可在α量化器340中共同實(shí)現(xiàn)?;蛘?,分布式實(shí)現(xiàn)也是可行的,其中的一部分單元在塊編碼器中的其它位置上提供。
根據(jù)本發(fā)明的索引選擇器350的一個優(yōu)選實(shí)現(xiàn)如圖18的框圖所示。這個索引選擇器350優(yōu)選地包括用于選擇至少一個圖像元素的各子集的強(qiáng)度索引的強(qiáng)度索引選擇器352。在根據(jù)PAA壓縮模式操作強(qiáng)度索引選擇器352時(shí),所得強(qiáng)度索引子序列優(yōu)選地包括四個2位或八個1位強(qiáng)度索引。相應(yīng)地,在根據(jù)PAT(以及PAP、PA或PP)模式操作時(shí),強(qiáng)度索引選擇器優(yōu)選地產(chǎn)生八個2位強(qiáng)度索引的子序列。
索引選擇器350優(yōu)選地還包括用于在以PAA模式操作時(shí)選擇α索引并產(chǎn)生α索引子序列的α索引選擇器354。這個序列優(yōu)選地包括七個1位α索引。
索引選擇器350還可包括在PC模式中可操作的色彩索引選擇器。在這樣一種情況中,它產(chǎn)生色彩索引的序列、優(yōu)選地為七個1位色彩索引。
索引選擇器350的單元352和354可作為軟件、硬件或者它們的組合來提供。單元352和354可在索引選擇器350中共同實(shí)現(xiàn)?;蛘撸植际綄?shí)現(xiàn)也是可行的,其中的一部分單元在塊編碼器中的其它位置上提供。
解碼器 圖19說明根據(jù)本發(fā)明的圖像解碼器220的一個實(shí)施例的框圖。圖像解碼器220優(yōu)選地包括圖像分析器224,它分析所接收的編碼圖像,以便確定編碼圖像是α圖像還是非α圖像。這種圖像分類優(yōu)選地基于與編碼圖像關(guān)聯(lián)、例如與編碼圖像數(shù)據(jù)共同存儲的全局α圖像索引。α圖像標(biāo)識符(α圖像或非α圖像)優(yōu)選地由分析器根據(jù)分類來產(chǎn)生,并被發(fā)送給執(zhí)行圖像塊的實(shí)際解碼的塊解碼器400。如果圖像解碼器220僅對α圖像進(jìn)行操作,則這個圖像分析器224可省略。圖像分析的功能性或者也可包括在塊解碼器400中。
塊選擇器222優(yōu)選地在圖像解碼器220中實(shí)現(xiàn),用于例如從存儲器中選擇哪一個(哪些)編碼圖像塊應(yīng)當(dāng)提供給塊解碼器400進(jìn)行解碼。塊選擇器222優(yōu)選地例如從首標(biāo)或呈現(xiàn)引擎中接收與編碼圖像數(shù)據(jù)關(guān)聯(lián)的輸入信息。具有預(yù)期圖像元素的壓縮圖像塊的地址根據(jù)輸入信息來計(jì)算。這個計(jì)算地址優(yōu)選地取決于圖像中的圖像元素(像素、紋素或體素)坐標(biāo)。利用該地址,塊選擇器222例如從存儲器或高速緩存中識別編碼圖像塊。這個已識別編碼圖像塊則從存儲裝置中取出,并提供給塊解碼器400。
對圖像塊的圖像元素的(隨機(jī))存取有利地實(shí)現(xiàn)僅對所需的圖像的那些部分的有選擇取出及解碼。此外,圖像還可按照需要數(shù)據(jù)的任何順序來解碼。例如,在紋理映射中,可能僅需要紋理的一部分,以及一般將以非連續(xù)順序需要這些部分。因此,本發(fā)明的圖像解碼可有利地適用于僅處理圖像的一部分。
所選的編碼圖像塊被轉(zhuǎn)發(fā)給塊解碼器400。除了圖像塊之外,解碼器400還優(yōu)選地接收指定塊的哪些圖像元素應(yīng)當(dāng)被解碼的信息。信息可指定整個圖像塊、即其中的所有圖像元素應(yīng)當(dāng)被解碼。但是,所接收信息可以僅標(biāo)識應(yīng)當(dāng)被解碼的單個或幾個圖像元素。另外,塊解碼器400還接收α圖像標(biāo)識符。塊解碼器400則產(chǎn)生塊中的圖像元素的解壓縮表示。這個解碼表示優(yōu)選地是其中S為原始圖像中的每個圖像元素的位數(shù)的S位色彩、如24位RGB色以及其中T為原始圖像中的每個圖像元素的位數(shù)的T位α值、例如8位α值。塊解碼器400優(yōu)選地包括在解碼程序中使用的強(qiáng)度表500?;蛘?,這個強(qiáng)度表500可在圖像解碼器220中的其它位置上提供。以上結(jié)合圖12和圖13所述的對于不同解壓縮模式和/或圖像類型的不同強(qiáng)度表的使用也適用于圖像解碼器220。
可選圖像合成器226可在解碼器220中提供。這個合成器接收來自塊解碼器400的解碼圖像元素,并將它們合成以便產(chǎn)生可在屏幕上呈現(xiàn)或顯示的像素、紋素或體素。合成器226可能需要若干輸入圖像元素來產(chǎn)生單個像素、紋素或體素。這個圖像合成器226或者也可在圖形系統(tǒng)中提供。
圖像解碼器220的單元222至226和400可作為軟件、硬件或者它們的組合來提供。單元222至226、400和500可在圖像解碼器220中共同實(shí)現(xiàn)。或者,分布式實(shí)現(xiàn)也是可行的,其中在用戶終端中的其它位置上提供一部分單元。
圖20說明根據(jù)本發(fā)明的圖像解碼器220的另一個實(shí)施例的框圖。塊選擇器222、圖像分析器224和圖像合成器226與圖19中的對應(yīng)單元相似,并且不作進(jìn)一步論述。
圖像解碼器220包括多個塊解碼器400-1至400-Q(Q為大于一的正整數(shù))。通過有權(quán)訪問多個塊解碼器400-1至400-Q,圖像解碼器220可并行對多個壓縮圖像塊進(jìn)行處理(解壓縮)。這多個塊解碼器400-1至400-Q允許提高圖像解碼器220的處理性能及效率的并行處理。例如,一個解碼圖像元素一般足以用于最近的相鄰內(nèi)插,而對于雙線性(三線性)內(nèi)插則需要四個(八個)圖像元素。每個塊解碼器400-1至400-Q可包括用于解碼的強(qiáng)度表500。或者,單個表500設(shè)置在圖像解碼器220中,并且連接到所有塊解碼器400-1至400-Q。參見以上結(jié)合圖13所述,采用不同類型的強(qiáng)度表的進(jìn)一步論述也適用于圖像解碼器220。與以上結(jié)合圖13所述相似,塊解碼器400-1至400-P的第一子集可用于按照PAA解壓縮模式對壓縮圖像塊進(jìn)行解壓縮,而解碼器400-P+1至400-Q的剩余子集則按照PAT解壓縮模式進(jìn)行操作(0<P<Q)。
或者,塊解碼器400-1至400-P的一部分適用于對α圖像的塊進(jìn)行解壓縮(PAA、PAT和PAP模式),而剩余解碼器400-P+1至400-Q則可用于對非α圖像的塊進(jìn)行解壓縮(PA、PP或PC模式)。
圖像解碼器220的單元222至226和400-1至400-Q可作為軟件、硬件或者它們的組合來提供。單元222至226、400-1至400-Q和500可在圖像解碼器220中共同實(shí)現(xiàn)。或者,分布式實(shí)現(xiàn)也是可行的,其中在用戶終端中的其它位置上提供一部分單元。
圖21是根據(jù)本發(fā)明的塊解碼器400的一個實(shí)施例的說明。塊解碼器400包括解壓縮模式選擇器410,它選擇應(yīng)當(dāng)用以對當(dāng)前編碼圖像塊進(jìn)行解壓縮的模式。這個模式選擇優(yōu)選地至少部分基于α碼字的分析或者α碼字的量化α值的至少一個,即允許區(qū)分PAA和PAT模式。模式特定信號或命令則由模式選擇器410來產(chǎn)生。塊解碼器400的包括單元優(yōu)選地對這個模式特定信號作出響應(yīng)。
色彩生成器430根據(jù)色彩碼字產(chǎn)生圖像塊中的圖像元素的色彩表示。這個生成器420優(yōu)選地將碼字的9位色彩擴(kuò)大為24位(RGB)色彩。
塊解碼器400還包括用于根據(jù)強(qiáng)度碼字從關(guān)聯(lián)強(qiáng)度表500中提供強(qiáng)度修改符集的部件420。這個提供器420可配置用于從強(qiáng)度表500中取出修改符值的第一子集,并根據(jù)第一子集來確定修改符的第二子集。在多個強(qiáng)度表500之間的選擇的情況中,要使用的正確的表優(yōu)選地由提供器420根據(jù)來自模式選擇器410的模式信號來識別。
修改符選擇器440設(shè)置用于從部件410所提供的修改符集中選擇強(qiáng)度修改符值之一。修改符選擇器440配置用于根據(jù)強(qiáng)度索引序列來選擇壓縮圖像塊中的圖像元素的正確修改符值。來自模式選擇器410的模式信號使修改符選擇器440能夠從序列中識別正確的強(qiáng)度索引,例如區(qū)分1位索引(PAA模式的一個實(shí)施例)和2位索引(PAA模式或PAT模式的第二實(shí)施例)。
來自色彩生成器430的擴(kuò)大色彩以及來自修改符選擇器440的修改符值被轉(zhuǎn)發(fā)給強(qiáng)度調(diào)制器或修改器450,它采用修改符值來修改擴(kuò)大色彩的色彩分量的強(qiáng)度。修改器450可采用加權(quán)強(qiáng)度修改符值,其中的不同權(quán)用于不同的色彩分量。此外,一旦色彩分量經(jīng)過強(qiáng)度修改,修改器450優(yōu)選地將分量鉗制在最大與最小門限之間、如0與255之間。
α值生成器460在塊解碼器中實(shí)現(xiàn),用于產(chǎn)生圖像塊的至少一個α值。這個值生成基于壓縮圖像塊表示的α碼字。如果來自模式選擇器410的模式命令表明PAA模式,則生成器460采用α碼字的第一量化α值來確定第一α值,以及采用第二量化α值來確定第二α值。生成器460可直接從α碼字的量化α值中確定α值。在一個備選實(shí)現(xiàn)中,生成器460采用表查找或轉(zhuǎn)換算法從α碼字中提供第一和第二量化α值。在任一種情況中,(2位)量化α值優(yōu)選地?cái)U(kuò)大為8位α值。但是,在以PAT模式操作時(shí),優(yōu)選地只有量化α值之一的單一位用于產(chǎn)生單一的α值。
α分配器470接收來自生成器460的α值,并將它們分配給圖像元素。這個值分配在PAA模式中采用α索引和預(yù)定義α關(guān)聯(lián)來執(zhí)行。因此,對于具有關(guān)聯(lián)α索引的圖像元素,那個索引用來選擇兩個可能的α值中的一個。如果圖像元素而是預(yù)定義成與量化α值之一關(guān)聯(lián)、即沒有α索引,則從這個量化α值中產(chǎn)生的α值由分配器470分配給圖像元素。在PAT模式中,在壓縮圖像塊中不存在α索引。因此,要解壓縮的塊中的所有圖像元素被分配來自生成器460的單一α值。
與圖14的塊解碼器相似,根據(jù)本發(fā)明的塊解碼器400為解壓縮模式的擴(kuò)展提供靈活的解決方案。因此,塊解碼器400可專用于僅對α塊進(jìn)行解壓縮。但是,它可能完全擴(kuò)展到還管理按照PAP、PA、PP或PC模式的非α塊的解壓縮。
模式選擇器410則從關(guān)聯(lián)當(dāng)前壓縮圖像塊的輸入信息中產(chǎn)生正確的模式特定信號。除了α碼字之外,這個輸入信息優(yōu)選地還包括壓縮圖像塊中包含的塊模式索引以及全局α圖像索引。在這樣一種情況中,PAA、PAT、PAP、PA、PP和PC模式之間的區(qū)分可由選擇器410來進(jìn)行。
色彩生成器430對來自模式選擇器410的模式特定信號作出響應(yīng)。如果信號表示PAA或PAT模式,則從9位色彩碼字中產(chǎn)生(24位)色彩表示。但是,PAA、PA或PP模式信號使色彩生成器430從12位色彩碼字中確定(24位)色彩表示。相應(yīng)地,在按照PC模式進(jìn)行操作時(shí),第一和第二色彩表示采用第一和第二色彩碼字、優(yōu)選地通過把(12位)碼字?jǐn)U大為相應(yīng)的24位色彩來確定。相關(guān)色彩表示采用色彩索引序列和預(yù)定義色彩碼字關(guān)聯(lián)來分配給相應(yīng)的圖像元素。
塊解碼器400的單元410至470可作為軟件、硬件或者它們的組合來提供。單元410至470和500可在塊解碼器400中共同實(shí)現(xiàn)?;蛘撸植际綄?shí)現(xiàn)也是可行的,其中在用戶終端中的其它位置上提供一部分單元。
圖22A和圖22B示意說明根據(jù)本發(fā)明的塊解碼器400的一個可能的硬件實(shí)現(xiàn)。這個塊解碼器400不僅按照PAA和PAT解壓縮模式進(jìn)行操作,并且還按照PAP、PP和PC模式進(jìn)行操作。對塊解碼器400的輸入是按照PAT模式(700A)、PAA模式(700B)、PAP模式(700C)、PC模式(700D)或PP模式(700E)進(jìn)行壓縮的圖像塊表示。通過這些不同的輸入塊表示700A至700E可以看到,每一個優(yōu)選地包括1位塊模式索引、碼字序列(包括色彩碼字、強(qiáng)度碼字和/或α碼字,取決于所采用的模式)以及索引序列(包括強(qiáng)度索引、α索引和/或色彩索引,取決于所采用的模式)。在PAT、PAP和PP模式中,強(qiáng)度索引經(jīng)過組織,使得八個強(qiáng)度索引的MSB在索引序列中處于八個LSB之前。因此,強(qiáng)度索引序列10110001 10000110bin表示后續(xù)強(qiáng)度索引11bin、00bin、10bin、10bin 00bin、01bin、01bin和10bin。在PAA模式中,每對圖像元素與2位強(qiáng)度索引關(guān)聯(lián)。圖像元素的強(qiáng)度索引的MSB和LSB在序列中依次提供。因此,強(qiáng)度索引序列10000110bin表示后續(xù)強(qiáng)度索引10bin、00bin、01bin和10bin。
主要參照PAA或PAT壓縮圖像塊來論述塊解碼器400,并且簡要描述專用于其它操作模式的包含單元。
模式選擇器410接收采取優(yōu)選地為1位的全局α圖像標(biāo)識符、優(yōu)選地為1位的塊模式索引以及優(yōu)選地為4×1位的量化α值的形式的輸入信息。模式特定信號在輸入數(shù)據(jù)的處理之后從模式選擇器410中輸出。PC特定信號在連接線C1上攜帶,而PAA和PAT信號則分別在連接線C2和C3上攜帶。
色彩碼字被提供給色彩生成器430,它通過三個復(fù)用器431至433、三個位擴(kuò)展器434至436以及一個“或”門437來實(shí)現(xiàn)。復(fù)用器431至433僅因采用兩個色彩碼字的PC模式才需要。在其它所有操作模式中,在線路C4、C6和C8上攜帶的色彩分量數(shù)據(jù)被轉(zhuǎn)發(fā),而在線路C5、C7和C9上攜帶的數(shù)據(jù)則被阻塞。模式選擇信號來自“與”門446,它在PC模式中并且當(dāng)色彩索引為1bin時(shí)輸出1bin,否則輸出0bin。第一位擴(kuò)展器434接收4位紅色分量和αA0,第二擴(kuò)展器435接收4位綠色分量和αA1,以及第三擴(kuò)展器436接收4位藍(lán)色分量和αB0(或α)。另外,來自“或”門437的輸出還輸入到各擴(kuò)展器434至436。要記住,在PAA和PAT模式中,碼字的相應(yīng)色彩分量優(yōu)選地僅為3位,而對于其它模式,相應(yīng)的色彩分量則為4位。因此,“或”門437在對PAA或PAT塊進(jìn)行解壓縮時(shí)輸出1bin,否則它輸出0bin。如果擴(kuò)展器434至436接收1bin的“或”門輸出,則它將僅處理來自它的前導(dǎo)復(fù)用器431至433的4位輸出的三個MSB并將其擴(kuò)展為8位色彩分量。但是,如果“或”門輸出為0bin,則整個4位復(fù)用器輸出被擴(kuò)展為8位色彩分量。
修改符選擇器440實(shí)現(xiàn)為五個復(fù)用器441至445、一個“與”門446和一個“或非”門447。3位地址索引被輸入到復(fù)用器441、442。根據(jù)地址索引,復(fù)用器441、442選擇八個圖像元素的哪一個要進(jìn)行解碼。在PAT、PAP和PP模式中,復(fù)用器441輸出2位強(qiáng)度索引的MSB,以及復(fù)用器442輸出LSB。但是,在PAA模式中,復(fù)用器441輸出1位α索引。注意,在這個模式實(shí)現(xiàn)中,PAA塊中的第一圖像元素始終與第一量化α值關(guān)聯(lián)。因此,復(fù)用器441從復(fù)用器443接收表示α索引序列加上一個附加位(0bin)的七個輸入位,表示第一圖像元素。相應(yīng)地,在以PC模式進(jìn)行操作時(shí),塊表示700D的七個色彩索引直接輸入到復(fù)用器441,而第一圖像元素的預(yù)定義色彩關(guān)聯(lián)則通過從復(fù)用器443輸出0bin來實(shí)現(xiàn)。因此,這個復(fù)用器443在PP、PAP和PAT模式中轉(zhuǎn)發(fā)索引序列(位15-31)的MSB(位15)。但是,在PC和PAA模式中,“或非”門447輸出0bin,它使復(fù)用器443輸出0bin取代索引序列的MSB。
在PAA模式中,復(fù)用器444接收2位地址索引,并采用那個地址來選擇正確強(qiáng)度索引的MSB。強(qiáng)度索引的相應(yīng)LSB由復(fù)用器442輸出。這兩個位則在線路C13上結(jié)合。注意,在這種解壓縮模式中,復(fù)用器480在這個具體實(shí)現(xiàn)中始終輸出1bin作為地址索引的LSB。
來自復(fù)用器441、442或者來自復(fù)用器442、444的組合2位輸出被輸入到復(fù)用器445。在以PAA模式進(jìn)行操作時(shí),這個復(fù)用器轉(zhuǎn)發(fā)來自復(fù)用器442、444的輸出,否則,來自復(fù)用器441、442的輸出被轉(zhuǎn)發(fā)。在任一種情況中,2位強(qiáng)度索引被提供給表查找422。這個表查找422對應(yīng)于圖21的修改符集提供器420和強(qiáng)度表500。
表查找422還接收連接線C10上的3位強(qiáng)度索引。在不同強(qiáng)度表用于α塊模式(PAA和PAT)以及非α塊模式(PAP和PP,要記住,在PC模式中沒有采用強(qiáng)度表)的情況中,“或”門437在按照這些模式之一對圖像塊進(jìn)行解壓縮時(shí)輸出PAA或PAT信號。查找表422采用輸入強(qiáng)度碼字、可選模式信號和強(qiáng)度索引,從表中的修改符集之一中取出正確的強(qiáng)度修改符值。這個9位有符號(正或負(fù))修改符值則被提供給復(fù)用器424。在PC模式中,這個復(fù)用器424輸出0bin,而在其它操作模式中,它輸出來自表查找422的修改符值。
9位復(fù)用器輸出被提供給強(qiáng)度修改器450。在這個硬件實(shí)現(xiàn)中,修改器450包括三個加法器451至453以及三個鉗位器454至456。修改符值被輸入到相應(yīng)的加法器451到453。第一加法器451把強(qiáng)度修改符值加入來自位擴(kuò)展器434的8位紅色分量。相應(yīng)地,加法器452和加法器453分別把修改符值加入來自位擴(kuò)展器435和436的8位綠色和藍(lán)色分量。在一個備選實(shí)現(xiàn)中,加法器451至453可采用其它修改元件、例如乘法器或者“異或”門來替代。來自加法器451至453的輸出被轉(zhuǎn)發(fā)給鉗位器454至456,它們把強(qiáng)度修改色彩分量鉗制在0與255之間。來自鉗位器454至456的輸出是圖像元素的解壓縮或解碼的24位色彩。
α生成器460在這個硬件實(shí)現(xiàn)中包括三個復(fù)用器461至463、求反部件464和位擴(kuò)展器465。第一復(fù)用器461接收兩個量化α值,并根據(jù)來自復(fù)用器441的α索引輸出它們其中之一。所選量化α值被轉(zhuǎn)發(fā)給第二復(fù)用器462?!坝杏谩绷炕林档腗SB被提供給求反部件464,然后再與它的求反值結(jié)合。例如,α=1bin將與0bin結(jié)合為10bin。復(fù)用器462在來自復(fù)用器461的量化α值與結(jié)合(部分?jǐn)U展)的量化α值之間進(jìn)行選擇。在PAT模式中,源自有效量化α值的MSB的結(jié)合量化α值被轉(zhuǎn)發(fā),否則轉(zhuǎn)發(fā)復(fù)用器輸出。在PAA和PAT模式中,第三復(fù)用器463把來自復(fù)用器462的量化α值轉(zhuǎn)發(fā)給位擴(kuò)展器465。但是,在其它解壓縮模式中,復(fù)用器463而是把預(yù)定非透明度值轉(zhuǎn)發(fā)給擴(kuò)展器465。位擴(kuò)展器465把所接收的2位輸入擴(kuò)展為8位α值。這個α值則與來自鉗位器454至456的24位色彩值結(jié)合,從而產(chǎn)生解壓縮圖像元素。
如果圖22A和圖22B的解碼器400配置用于僅對α圖像進(jìn)行解壓縮、即被限制為PAP、PAA和PAT模式,則以下單元可從硬件實(shí)現(xiàn)中省略復(fù)用器424、431至433,“與”門446,以及“或非”門447。
但是,通過圖22A和圖22B的硬件實(shí)現(xiàn)可以看到,整個解碼器400可以僅采用幾個標(biāo)準(zhǔn)組件來實(shí)現(xiàn),但是仍然能夠按照多達(dá)五種不同解壓縮模式對α以及非α圖像和塊進(jìn)行解壓縮。因此,因而在這五種模式之間選擇最適合于給定圖像塊的模式,它與限制為單一壓縮和解壓縮模式的圖像處理方案相比,將會顯著提高所處理圖像的圖像質(zhì)量。
圖22A中的連接線C1至C17在圖22B中繼續(xù)作為C1至C17。
圖23示意說明圖22B的位擴(kuò)展器434至436的可能硬件實(shí)現(xiàn)。這些擴(kuò)展器接收表示4位(紅、綠或藍(lán))色彩分量或者3位(紅、綠或藍(lán))色彩分量以及量化α值的一位的4位輸入。擴(kuò)展器434至436則把這個3位或4位色彩分量擴(kuò)展為相應(yīng)的8位色彩分量。產(chǎn)生兩個復(fù)用器輸入,一個表示4位分量,以及一個表示3位分量。以4位分量開始,第一復(fù)用器輸入的MSB是4位擴(kuò)展器輸入的LSB,第二MSB是擴(kuò)展器輸入的MSB,第三MSB是擴(kuò)展器輸入的第二MSB,以及其余兩個LSB對應(yīng)于擴(kuò)展器輸入的兩個LSB。在3位分量的情況中,第二復(fù)用器輸入的三個MSB是擴(kuò)展器輸入的三個MSB,以及兩個LSB對應(yīng)于擴(kuò)展器輸入的MSB和第二MSB。
復(fù)用器438根據(jù)來自圖22B的“或”門437的1位值來選擇這兩個5位值之一。因此,在PAA和PAT模式中,這個“或”門輸出為1bin,以及復(fù)用器438轉(zhuǎn)發(fā)對應(yīng)于3位色彩分量的第二個5位值,否則,它輸出對應(yīng)于4位色彩分量的第一個5位值。在任一種情況中,5位復(fù)用器輸出則與擴(kuò)展器輸入的三個MSB結(jié)合,從而組成擴(kuò)展的8位色彩分量。
圖24示意說明圖22B的α生成器460中使用的位擴(kuò)展器465的可能硬件實(shí)現(xiàn)。這個擴(kuò)展器465只是把2位輸入量化α值復(fù)制為8位α值。例如,10bin的2位輸入被擴(kuò)展為1010 1010bin。
圖25示意說明圖22B的鉗位器454至456的可能硬件實(shí)現(xiàn)。對鉗位器454至456的輸入為10位強(qiáng)度修改后的色彩分量值。這個輸入值的八個LSB被送到復(fù)用器457。對復(fù)用器的另一個輸入是最大門限值(255;8位)。復(fù)用器457根據(jù)強(qiáng)度修改色彩分量的第二MSB來選擇8位輸入值或者最大門限值。換言之,如果這個第二MSB等于一,則復(fù)用器457輸出門限值,否則(第二MSB等于零),8位輸入值被輸出到第二復(fù)用器458。這個第二復(fù)用器458根據(jù)色彩分量的MSB來選擇來自第一復(fù)用器457的輸出或者最小門限值(0;8位)。如果這個MSB或符號位等于一,則來自第一復(fù)用器457的輸出為負(fù),以及最小門限值應(yīng)當(dāng)由第二復(fù)用器458來選取。但是,如果符號位為零,則來自第一復(fù)用器457的輸出也應(yīng)當(dāng)是來自第二復(fù)用器458的輸出。
圖26示意說明表查找422的可能硬件實(shí)現(xiàn)。這個表查找422適合于采用所有解壓縮模式共有的單個強(qiáng)度表。3位輸入強(qiáng)度碼字的兩個LSB被輸入到兩個復(fù)用器421和423,用于從每個復(fù)用器421和423的四個可能的修改符值中選擇一個7位強(qiáng)度修改符值。如果采用根據(jù)表1的強(qiáng)度表,則從這8個強(qiáng)度修改符中,可計(jì)算其余24個值。來自復(fù)用器421和423的所選強(qiáng)度修改符值被輸入到另一個復(fù)用器425,它根據(jù)來自圖22B的復(fù)用器445的1位輸入數(shù)據(jù)(2位強(qiáng)度表示中的1位)來選擇這些值中的一個。所選修改符值則被轉(zhuǎn)發(fā)給復(fù)用器426以及轉(zhuǎn)發(fā)給對修改符值求反的求反部件427。這個求反值也被轉(zhuǎn)發(fā)給復(fù)用器426。這個復(fù)用器426根據(jù)來自圖22B的復(fù)用器445的強(qiáng)度表示的剩余位來選擇正的7位強(qiáng)度修改符值或者求反值。所選(8位)修改符值則被送到復(fù)用器428以及送到移位器429,它把修改符值向左移動一位,從而產(chǎn)生9位強(qiáng)度修改符(對應(yīng)于基數(shù)十的值與二的乘積)。復(fù)用器428根據(jù)來自強(qiáng)度碼字的MSB來選擇8位修改符值或者9位修改符值。
選擇的結(jié)果是用于特定圖像元素的來自48個可能的修改符值的9位強(qiáng)度修改符值。
圖27示意說明圖22B的表查找422的可能硬件實(shí)現(xiàn),其中包括兩個模式特定強(qiáng)度表。3位輸入強(qiáng)度碼字的兩個LSB被輸入到四個復(fù)用器421A、423A和421B、423B,用于從每個復(fù)用器421A、423A和421B、423B的四個可能的修改符值中選擇一個7位強(qiáng)度修改符值。來自復(fù)用器421A、423A和421B、423B的所選強(qiáng)度修改符值被輸入到一對復(fù)用器425A、425B。這些復(fù)用器425A、425B各根據(jù)來自圖22B的復(fù)用器445的1位輸入數(shù)據(jù)(2位強(qiáng)度表示中的1位)來選擇這些值中的一個。所選修改符值則都被轉(zhuǎn)發(fā)給復(fù)用器425C。這個復(fù)用器425C根據(jù)來自圖22B的“或”門437的1位數(shù)據(jù)來選擇這兩個修改符輸入值中的哪一個、因而選擇哪一個強(qiáng)度表應(yīng)當(dāng)用于當(dāng)前塊。所選修改符值則在復(fù)用器426和428、求反部件427以及移位器429中進(jìn)行處理,如以上結(jié)合圖26所述。
本領(lǐng)域的技術(shù)人員會理解,可以對本發(fā)明進(jìn)行各種修改和變更,而沒有背離所附權(quán)利要求定義的本發(fā)明的范圍。
參考文獻(xiàn)美國專利No.5956431Y.Linde、A.Buzo和R.Gray的“用于向量量化器設(shè)計(jì)的算法”,IEEE Transactions on Communications,Vol.28,第84-94頁,1980年1月
權(quán)利要求
1.一種壓縮包括多個圖像元素(610)的圖像塊(600)的方法,所述方法包括以下步驟
-確定色彩碼字(720),所述色彩碼字是所述多個圖像元素(600)的色彩的表示;
-提供包括多個量化α值(740A,740B)的α碼字(740),所述量化α值是所述多個圖像元素(610)的至少一個α值的表示;
-提供強(qiáng)度碼字(730),所述強(qiáng)度碼字是用于修改所述多個圖像元素(610)的強(qiáng)度的多個強(qiáng)度修改符的集合的表示;
-提供圖像元素關(guān)聯(lián)索引的索引序列(750);以及
-根據(jù)所述α碼字(740)來選擇壓縮模式,其中,如果所述所選壓縮模式為第一壓縮模式,
則所述索引序列(750)包括第一索引子序列(750B),它對于所述圖像塊(600)中的至少一個圖像元素(610)的每個子集包含與來自所述強(qiáng)度修改符集的強(qiáng)度修改符關(guān)聯(lián)的強(qiáng)度索引;以及第二索引子序列(750A),它對于所述多個圖像元素(610)的至少一部分中的各圖像元素(610)包含與來自所述多個量化α值(740A,740B)的量化α值關(guān)聯(lián)的α索引,以及如果所述所選壓縮模式為第二壓縮模式,
則所述索引序列(750)對于所述圖像塊(600)中的各圖像元素(610)包括與來自所述強(qiáng)度修改符集的強(qiáng)度修改符關(guān)聯(lián)的強(qiáng)度索引。
2.如權(quán)利要求1所述的方法,其特征在于,所述模式選擇步驟包括根據(jù)所述α碼字(740)的所述多個量化α值(740A,740B)中的至少一個來選擇所述壓縮模式的步驟。
3.如權(quán)利要求2所述的方法,其特征在于,所述模式選擇步驟包括以下步驟
-如果所述多個量化α值(740A,740B)不同,則選擇所述第一壓縮模式;以及
-如果所述多個量化α值(740A,740B)相等,則選擇所述第二壓縮模式。
4.如權(quán)利要求1至3中的任一項(xiàng)所述的方法,其特征在于,所述強(qiáng)度碼字提供步驟在選擇所述壓縮模式之后執(zhí)行。
5.如權(quán)利要求1至4中的任一項(xiàng)所述的方法,其特征在于,所述子集中的每個包括所述圖像塊(600)中的兩個相鄰圖像元素(610)。
6.如權(quán)利要求1至4中的任一項(xiàng)所述的方法,其特征在于,所述子集中的每個包括一個圖像元素(610),以及所述強(qiáng)度索引與來自所述強(qiáng)度修改符集的子集的強(qiáng)度修改符關(guān)聯(lián)。
7.如權(quán)利要求1至6中的任一項(xiàng)所述的方法,其特征在于,所述第二索引子序列(750A)對于所述多個圖像元素(610)的第一部分中的各圖像元素(610)包括與來自所述多個量化α值(740A,740B)的量化α值關(guān)聯(lián)的α索引,所述多個圖像元素(610)的第二剩余部分中的各圖像元素(610)與來自所述多個量化α值(740A,740B)的預(yù)定量化α值關(guān)聯(lián)。
8.一種對圖像進(jìn)行編碼的方法,所述方法包括以下步驟
-把所述圖像分解為多個圖像塊(600),各圖像塊(600)包括多個圖像元素(610);以及
-對于至少一個圖像塊(600),通過按照權(quán)利要求1至7中的任一項(xiàng)壓縮所述至少一個圖像塊(600)來確定壓縮圖像塊表示(700)。
9.一種處理包括多個圖像元素(610)的圖像塊(600)的壓縮表示(700)的方法,所述壓縮圖像塊表示(700)包括色彩碼字(720)、α碼字(740)、強(qiáng)度碼字(730)以及圖像元素關(guān)聯(lián)索引的索引序列(750),所述方法包括以下步驟
-根據(jù)所述α碼字(740)來選擇解壓縮模式;
-根據(jù)所述強(qiáng)度碼字(730)來提供多個強(qiáng)度修改符的集合;
對于所述圖像塊(600)中的至少一個圖像元素(610)
-根據(jù)所述色彩碼字(720)來產(chǎn)生色彩表示;
-根據(jù)所述索引序列(750)從所述強(qiáng)度修改符集中選擇強(qiáng)度修改符;
-根據(jù)所述所選強(qiáng)度修改符來修改所述至少一個圖像元素(610)的強(qiáng)度;以及
-根據(jù)所述α碼字(740)來產(chǎn)生至少一個α值,其中,如果所述所選解壓縮模式為第一解壓縮模式,則所述方法包括以下步驟
-對于所述至少一個圖像元素(610),從根據(jù)所述α碼字(740)產(chǎn)生的多個α值中選擇α值;以及
-把所述所選α值分配給所述至少一個圖像元素(610),以及如果所述所選解壓縮模式為第二解壓縮模式,則所述方法包括以下步驟
-把所述至少一個α值分配給所述至少一個圖像元素(610)。
10.如權(quán)利要求9所述的方法,其特征在于,所述模式選擇步驟包括根據(jù)所述α碼字(740)所表示的多個量化α值(740A,740B)的至少一個量化α值(740A)來選擇所述解壓縮模式的步驟。
11.如權(quán)利要求10所述的方法,其特征在于,所述模式選擇步驟包括以下步驟
-如果所述多個量化α值(740A,740B)不同,則選擇所述第一解壓縮模式;以及
-如果所述多個量化α值(740A,740B)相等,則選擇所述第二解壓縮模式。
12.如權(quán)利要求9至11中的任一項(xiàng)所述的方法,其特征在于,所述修改符集提供步驟在選擇所述解壓縮模式之后執(zhí)行。
13.如權(quán)利要求9至12中的任一項(xiàng)所述的方法,其特征在于,在所述第一解壓縮模式中,所述索引序列(750)包括第一索引子序列(750B),它對于所述圖像塊(600)中的至少一個圖像元素(610)的每個子集包含與來自所述強(qiáng)度修改符集的強(qiáng)度修改符關(guān)聯(lián)的強(qiáng)度索引;以及第二索引子序列(750A),它對于所述多個圖像元素(610)的至少一部分中的各像素元素(610)包含與來自所述多個α值的α值關(guān)聯(lián)的α索引,以及在所述第二解壓縮模式中,所述索引序列(750)對于所述圖像塊(600)中的各圖像元素(610)包含與來自所述強(qiáng)度修改符集的強(qiáng)度修改符關(guān)聯(lián)的強(qiáng)度索引。
14.如權(quán)利要求13所述的方法,其特征在于,所述第二索引子序列(750A)對于所述多個圖像元素(610)的第一部分中的各圖像元素(610)包括與來自所述多個α值的α值關(guān)聯(lián)的α索引,所述多個圖像元素(610)的第二剩余部分中的各圖像元素(610)與來自所述多個α值的預(yù)定α值關(guān)聯(lián)。
15.如權(quán)利要求14所述的方法,其特征在于,如果所述所選解壓縮模式為所述第一解壓縮模式,則所述選擇步驟包括以下步驟
-如果所述至少一個圖像元素(610)屬于所述多個圖像元素的所述第一部分,則根據(jù)所述索引序列(750)從所述多個α值中選擇所述α值;
-如果所述至少一個圖像元素(610)屬于所述多個圖像元素(610)的所述第二剩余部分,則選擇所述預(yù)定義α值。
16.一種對包括圖像塊(600)的壓縮表示(700)的編碼圖像進(jìn)行解碼的方法,每個圖像塊(600)包括多個圖像元素(610),壓縮圖像塊表示(700)包括色彩碼字(720)、α碼字(740)、強(qiáng)度碼字(730)以及圖像元素關(guān)聯(lián)索引的索引序列(750),所述方法包括以下步驟
-對于至少一個壓縮圖像塊表示(700),通過按照權(quán)利要求9至15中的任一項(xiàng)處理所述至少一個壓縮圖像塊表示(700)來確定至少一個解壓縮圖像元素表示(610);以及
-通過處理所述至少一個解壓縮圖像元素表示(610)來產(chǎn)生圖像。
17.一種用于壓縮包括多個圖像元素(610)的圖像塊(600)的系統(tǒng)(300),所述系統(tǒng)(300)包括
-色彩量化器(320),用于確定色彩碼字(720),所述色彩碼字是所述多個圖像元素(610)的色彩的表示;
-α量化器(340),用于提供包括多個量化α值(740A,740B)的α碼字(740),所述量化α值是所述多個圖像元素(610)的至少一個α值的表示;
-強(qiáng)度量化器(330),用于提供強(qiáng)度碼字(730),所述強(qiáng)度碼字是用于修改所述多個圖像元素(610)的強(qiáng)度的多個強(qiáng)度修改符的集合的表示;
-用于提供圖像元素關(guān)聯(lián)索引的索引序列(750)的部件(350);以及
-用于根據(jù)所述α碼字(740)來產(chǎn)生壓縮模式信號的部件(310),其中,如果所述壓縮模式信號表示第一壓縮模式,
-則所述提供部件(350)可用于提供第一索引子序列(750B),它對于所述圖像塊(600)中的至少一個圖像元素(610)的每個子集包含與來自所述強(qiáng)度修改符集的強(qiáng)度修改符關(guān)聯(lián)的強(qiáng)度索引;以及第二索引子序列(750A),它對于所述多個圖像元素(610)的至少一部分中的各像素元素(610)包含與來自所述多個量化α值(740A,740B)的量化α值關(guān)聯(lián)的α索引,以及如果所述壓縮模式信號表示第二壓縮模式,
-則所述提供部件(350)可用來對于所述圖像塊(600)中的各圖像元素(610)提供與來自所述強(qiáng)度修改符集的強(qiáng)度修改符關(guān)聯(lián)的強(qiáng)度索引,以及如果所述壓縮模式信號表示第二壓縮模式。
18.如權(quán)利要求17所述的系統(tǒng),其特征在于,所述產(chǎn)生部件(310)根據(jù)所述α碼字(740)的所述多個量化α值(740A,740B)中的至少一個來產(chǎn)生所述壓縮模式信號。
19.如權(quán)利要求18所述的系統(tǒng),其特征在于,所述產(chǎn)生部件(310)在所述多個量化α值不同時(shí)產(chǎn)生第一壓縮模式信號,以及在所述多個量化α值相等時(shí)產(chǎn)生第二壓縮模式信號。
20.如權(quán)利要求17至19中的任一項(xiàng)所述的系統(tǒng),其特征在于,所述強(qiáng)度量化器(330)配置成用于響應(yīng)所述壓縮模式信號而提供所述強(qiáng)度碼字。
21.如權(quán)利要求17至20中的任一項(xiàng)所述的系統(tǒng),其特征在于,所述子集中的每個包括所述圖像塊(600)中的兩個相鄰圖像(610)。
22.如權(quán)利要求17至20中的任一項(xiàng)所述的系統(tǒng),其特征在于,所述子集中的每個包括一個圖像元素(610),以及所述強(qiáng)度索引與來自所述強(qiáng)度修改符集的子集的強(qiáng)度修改符關(guān)聯(lián)。
23.如權(quán)利要求17至22中的任一項(xiàng)所述的系統(tǒng),其特征在于,所述第二索引子序列(750A)對于所述多個圖像元素(600)的第一部分中的各圖像元素(610)包括與所述多個量化α值(740A,740B)的量化α值關(guān)聯(lián)的α索引,所述多個圖像元素(610)的第二剩余部分中的各圖像元素(610)與所述多個量化α值(740A,740B)的預(yù)定量化α值關(guān)聯(lián)。
24.一種圖像編碼系統(tǒng)(210),包括
-圖像分解(212),用于把圖像分解為多個圖像塊(600),各圖像塊(600)包括多個圖像元素(610);以及
-按照權(quán)利要求17至23中的任一項(xiàng)的至少一個圖像塊壓縮系統(tǒng)(300)。
25.一種處理包括多個圖像元素(610)的圖像塊(600)的壓縮表示(700)的系統(tǒng)(400),所述壓縮圖像塊表示(700)包括色彩碼字(720)、α碼字(740)、強(qiáng)度碼字(730)以及圖像元素關(guān)聯(lián)索引的索引序列(750),所述系統(tǒng)(400)包括
-用于根據(jù)所述強(qiáng)度碼字(730)提供多個強(qiáng)度修改符的集合的部件(420);
-色彩生成器(420),用于根據(jù)所述色彩碼字(720)來產(chǎn)生所述圖像塊(600)中的至少一個圖像元素(610)的色彩表示;
-修改符選擇器(440),用于根據(jù)所述索引序列(750)對于所述至少一個圖像元素(610)從所述強(qiáng)度修改符集中選擇強(qiáng)度修改符;
-強(qiáng)度修改器(450),用于根據(jù)所述所選強(qiáng)度修改符來修改所述至少一個圖像元素(610)的強(qiáng)度;
-α生成器(460),用于根據(jù)所述α碼字(740)來產(chǎn)生至少一個α值;
-用于根據(jù)所述α碼字(740)來產(chǎn)生解壓縮模式信號的部件(410);以及
-α分配器(470),其中,如果所述解壓縮模式信號表示第一解壓縮模式,
-則所述分配器(470)可用于從根據(jù)所述α碼字(740)產(chǎn)生的多個α值中選擇α值,并且用于把所述所選α值分配給所述至少一個圖像元素(610),以及如果所述解壓縮模式信號表示第二解壓縮模式,
-則所述分配器(470)可用于把所述至少一個α值分配給所述至少一個圖像元素(610),以及如果所述解壓縮模式信號表示第二解壓縮模式。
26.如權(quán)利要求25所述的系統(tǒng),其特征在于,所述產(chǎn)生部件(410)根據(jù)所述α碼字(740)所表示的多個量化α值(740A,740B)中的至少一個量化α值(740A)的值來產(chǎn)生所述解壓縮模式信號。
27.如權(quán)利要求26所述的系統(tǒng),其特征在于,所述產(chǎn)生部件(410)在所述多個量化α值(740A,740B)不同時(shí)產(chǎn)生第一解壓縮模式信號,以及在所述多個量化α值(740A,740B)相等時(shí)產(chǎn)生第二解壓縮模式信號。
28.如權(quán)利要求25至27中的任一項(xiàng)所述的系統(tǒng),其特征在于,所述集合提供部件(420)配置成用于響應(yīng)所述解壓縮模式信號而提供所述集合。
29.如權(quán)利要求25至28中的任一項(xiàng)所述的系統(tǒng),其特征在于,在所述第一解壓縮模式中,所述索引序列(750)包括第一索引子序列(750B),它對于所述圖像塊(600)中的至少一個圖像元素(610)的每個子集包含與來自所述強(qiáng)度修改符集的強(qiáng)度修改符關(guān)聯(lián)的強(qiáng)度索引;以及第二索引子序列(750A),它對于所述多個圖像元素(600)的至少一部分中的各像素元素(610)包含與來自所述多個α值的α值關(guān)聯(lián)的α索引,以及在所述第二解壓縮模式中,所述索引序列(750)對于所述圖像塊(600)中的各圖像元素(610)包含與來自所述強(qiáng)度修改符集的強(qiáng)度修改符關(guān)聯(lián)的強(qiáng)度索引。
30.如權(quán)利要求29所述的系統(tǒng),其特征在于,所述第二索引子序列(750A)對于所述多個圖像元素(600)的第一部分中的各圖像元素(610)包括與來自所述多個α值的α值關(guān)聯(lián)的α索引,所述多個圖像元素(610)的第二剩余部分中的各圖像元素(610)與來自所述多個α值的預(yù)定α值關(guān)聯(lián)。
31.如權(quán)利要求30所述的系統(tǒng),其特征在于,如果所述解壓縮模式信號表示所述第一解壓縮模式,則所述分配器(470)配置成用于在所述至少一個圖像元素(610)屬于所述多個圖像元素的所述第一部分時(shí)根據(jù)所述索引序列(750)從所述多個α值中選擇所述α值,以及用于在所述至少一個圖像元素(610)屬于所述多個圖像元素(610)的所述第二剩余部分時(shí)選擇所述預(yù)定義α值。
32.一種對包括圖像塊(600)的壓縮表示(700)的編碼圖像進(jìn)行解碼的系統(tǒng)(220),每個圖像決(600)包括多個圖像元素(610),壓縮圖像塊表示(700)包括色彩碼字(720)、α碼字(740)、強(qiáng)度碼字(730)以及圖像元素關(guān)聯(lián)索引的索引序列(750),所述系統(tǒng)(220)包括
-按照權(quán)利要求25至31中的任一項(xiàng)的至少一個系統(tǒng)(400),用來對于至少一個壓縮圖像塊表示(700)來確定至少一個解壓縮圖像元素表示(610);以及
-用于處理所述至少一個解壓縮圖像元素表示(610)、以便產(chǎn)生圖像的部件(226)。
33.包括按照權(quán)利要求17至32中的任一項(xiàng)的系統(tǒng)(210;220;300;400)的圖像處理終端。
34.包括多個圖像元素(610)的圖像塊(600)的信號表示(700),所述信號表示(700)包括
-作為所述多個圖像元素(610)的色彩的表示的色彩碼字(720);
-作為用于修改所述圖像塊(600)中的所述圖像元素(610)的強(qiáng)度的多個強(qiáng)度修改符的集合的表示的強(qiáng)度碼字(730);
-包括多個量化α值(740A,740B)的α碼字(740),所述量化α值是所述多個圖像元素(610)的至少一個α值的表示;以及
-索引序列(750),對于所述圖像塊(600)中的至少一個圖像元素(610)的各子集,包括與來自所述強(qiáng)度修改符集的強(qiáng)度修改符關(guān)聯(lián)的強(qiáng)度索引。
全文摘要
公開了一種可按照兩種不同模式進(jìn)行操作的α圖像編碼及解碼方案。在編碼中,把α圖像分解為包括圖像元素(610)的α圖像塊(600)。塊(600)根據(jù)兩種壓縮模式之一被壓縮為塊表示(700)。塊表示(700)包括色彩碼字(720)、強(qiáng)度碼字(730)、α碼字(740)以及表示碼字(730,740)之一的圖像元素關(guān)聯(lián)索引的序列(750)。要用于塊(600)的壓縮和解壓縮模式根據(jù)α碼字(740)來確定。在高α分辨率模式中,索引序列(750)包括選擇α碼字(740)的量化α值(740A,740B)之一的α索引以及從強(qiáng)度碼字(730)所表示的修改符集中選擇強(qiáng)度修改符的強(qiáng)度索引。在高亮度分辨率模式中,索引序列(750)僅包括強(qiáng)度索引。
文檔編號H04N7/30GK1918602SQ20048004171
公開日2007年2月21日 申請日期2004年12月17日 優(yōu)先權(quán)日2003年12月19日
發(fā)明者J·斯特倫, T·阿克尼內(nèi)-默勒 申請人:艾利森電話股份有限公司