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

可逆子波變換和嵌入代碼流處理的制作方法

文檔序號(hào):7964669閱讀:310來(lái)源:國(guó)知局
專利名稱:可逆子波變換和嵌入代碼流處理的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及數(shù)據(jù)壓縮和解壓系統(tǒng)領(lǐng)域,更詳細(xì)地說(shuō),本發(fā)明涉及用來(lái)在壓縮/解壓系統(tǒng)中數(shù)據(jù)的無(wú)損耗和有損耗編碼和解碼的方法和裝置。

背景技術(shù)
數(shù)據(jù)壓縮是用于大量數(shù)據(jù)的存貯和傳送的一種極為有效的方法。例如,當(dāng)壓縮被用來(lái)降低還原諸如一文件傳真?zhèn)魉椭惖膱D象所需的比特?cái)?shù)時(shí),傳送一圖象所需的時(shí)間急劇的減少。
在現(xiàn)有技術(shù)中存在有許多不同的數(shù)據(jù)壓縮技術(shù)。壓縮技術(shù)可分成二類主要的類型,有損耗編碼和無(wú)損耗編碼。有損耗編碼包含導(dǎo)致信息損耗的編碼,這就不能保證原始數(shù)據(jù)的理想的再現(xiàn)。有損耗壓縮的目的是以這樣一種方式來(lái)改變?cè)紨?shù)據(jù)以使得它們不會(huì)不適宜或不會(huì)易被察覺(jué)。在無(wú)損耗壓縮中,所有信息均被保留并且數(shù)據(jù)以一種能夠理想再現(xiàn)的方式被壓縮。
在無(wú)損耗壓縮中,輸入符號(hào)或亮度數(shù)據(jù)被變換成輸出代碼字。該輸入可以包括圖象、聲頻、一維(即,數(shù)據(jù)空間地或時(shí)間地變化的數(shù)據(jù))、二維(即,在二個(gè)空間方向由(或一空間和一時(shí)間量綱)上數(shù)據(jù)變化)、或多維/多頻譜數(shù)據(jù)。如果壓縮成功,則該代碼字由比未編碼的輸入符號(hào)(或亮度數(shù)據(jù))所需的比特?cái)?shù)要少的比特來(lái)表示。無(wú)損耗編碼方法包括編碼(即,Lempel-Ziv)、行程編碼、枚舉編碼和熵編碼的字典方法。在無(wú)損耗圖象壓縮中,壓縮是基于預(yù)測(cè)或上下文、插值編碼。用于傳真通信的JBIG標(biāo)準(zhǔn)和用于連續(xù)色調(diào)圖象的DPCM(差動(dòng)脈沖編碼調(diào)制—在JPEG標(biāo)準(zhǔn)中的一種選擇)是用于圖象的無(wú)損耗壓縮的例子。在有損耗壓縮中,輸入符號(hào)或亮度數(shù)據(jù)在變換成輸出代碼字之前被量化。量化的意思是指保存數(shù)據(jù)的相關(guān)特征同時(shí)消除不重要的特征。在量化之前,有損耗壓縮系統(tǒng)通常使用一變換以提供能量壓縮。JPEG是用于圖象數(shù)據(jù)的有損耗編碼的例子。
近來(lái)圖象信號(hào)處理的發(fā)展集中趨向于發(fā)展高效率和精確的數(shù)據(jù)壓縮編碼形式。提出了各種變換或角錐信號(hào)處理的方式,包括多分辨(multiresolution)角錐處理和子波角錐處理。這些方式還稱之為副頻帶處理和分層處理。圖象數(shù)據(jù)的子波角錐處理是多分辨角錐處理的一特定形式,它可使用正交鏡象濾波器(QMFS)以產(chǎn)生一原始圖象的副頻帶分解。應(yīng)注意的是存在有非QMF的其它類型。對(duì)于子波處理的信息,請(qǐng)見(jiàn)Antonint,M.,等“Image Coding UsingWavelet Transform”,IEEE Transaction on Image Processing,Vol.1,No.2,1992.4.4;Shapiro,J.,“An Embedded Hierarchical ImageCoder Using Zerotrees of Wavelet Coefficients”,Proc.IEEE DateCompression Conference,pgs 214-223,1993。
與現(xiàn)有技術(shù)子波處理極為相關(guān)的一個(gè)問(wèn)題是在進(jìn)行處理時(shí)需要一個(gè)存貯所有數(shù)據(jù)的大存貯器。換句話說(shuō),在執(zhí)行子波處理中,在該數(shù)據(jù)執(zhí)行編碼之前所有的數(shù)據(jù)必須被檢驗(yàn)。在這種情況中,直至最少一個(gè)充分的通過(guò)全部數(shù)據(jù)為止沒(méi)有數(shù)據(jù)輸出。事實(shí)上,子波處理典型地包含多重?cái)?shù)據(jù)傳送。由于這個(gè)原因,通常需要一大存貯器。最好是利用子波處理,同時(shí)避免大存儲(chǔ)器的要求。另外,還期望執(zhí)行子波處理時(shí)僅一次通過(guò)該數(shù)據(jù)。
許多子波或副頻帶變換處理過(guò)程需要特殊范圍形式的濾波器。例如,低通和高通濾波器必須具有相同的長(zhǎng)度、該系數(shù)的平方和必須為1、高通濾波器的時(shí)間和頻率必須與低通濾波相反等(見(jiàn)1991年5月公布的Lawton等人的美國(guó)專利No 5,014,134)。最好是允許濾波器的種類要寬一些。也就是,期望能提供使用的低通和高通濾波器不要求有相同的長(zhǎng)度、其系數(shù)的平方和不需要為1、高通濾波器不要求是低通濾波器相反的時(shí)間和頻率的子波或副頻帶變換處理過(guò)程。


發(fā)明內(nèi)容
本發(fā)明是提供使用一種提供了良好能量壓縮變換的有損耗和無(wú)損耗壓縮。
描述了一種壓縮和減壓系統(tǒng)。該壓縮系統(tǒng)包括一將輸入數(shù)據(jù)編碼成一被壓縮的數(shù)據(jù)流的編碼器。該熵編碼器、即所說(shuō)編碼器包括一可逆子波濾波器、一排序和造型機(jī)構(gòu)和一二進(jìn)制熵編碼器、可逆子波濾波器將輸入數(shù)據(jù)變換為使用角錐介壓的系數(shù)。該排序和造型機(jī)構(gòu)從通過(guò)在該系數(shù)內(nèi)對(duì)該系數(shù)和二進(jìn)制值排序的系數(shù)中產(chǎn)生一嵌入式代碼流。該二進(jìn)制熵編碼器可使該嵌入式代碼流二進(jìn)制熵編碼以產(chǎn)生被壓縮的數(shù)據(jù)流。
通過(guò)下面結(jié)合附圖對(duì)本發(fā)明的各種不同實(shí)施例的詳細(xì)說(shuō)明將對(duì)本發(fā)明有更為全面的了解,但本發(fā)明并不局限于這些特定的實(shí)施例,這些實(shí)施例僅供解釋和理解而已。



圖1是本發(fā)明的編碼系統(tǒng)的編碼部分的一實(shí)施例的方框圖。
圖2是本發(fā)明系數(shù)數(shù)據(jù)排序和造型的一實(shí)施例的方框圖。
圖3A是一子波分解合成系統(tǒng)的方框圖。
圖3B是對(duì)于具有非重疊最小限度長(zhǎng)度可逆濾波器濾波的情況下變換系統(tǒng)的前向和反向表達(dá)。
圖4是一2D可逆濾波器的另一可供選擇的實(shí)施例的方框圖。
圖5示出了一四級(jí)分解的結(jié)果。
圖6示出了在二個(gè)連續(xù)級(jí)之間的母體關(guān)系。
圖7是一三級(jí)角錐變換的方框圖。
圖8是一二維、二級(jí)變換的方框圖。
圖9是表示執(zhí)行一多分辨解壓的一維濾波器的方框圖。
圖10是一使用本發(fā)明的可逆子波的一系統(tǒng)的方框圖。
圖11是使用本發(fā)明的可逆子波的放大和分析系統(tǒng)的方框圖。
圖12A示出了在本發(fā)明中的系數(shù)尺寸。
圖12B是用于使用本發(fā)明的系數(shù)對(duì)準(zhǔn)的頻段的乘法器的一實(shí)施例。
圖13是本發(fā)明的編碼過(guò)程的一實(shí)施例的流程圖。
圖14是本發(fā)明的詳碼過(guò)程的一實(shí)施例的流程圖。
圖15是本發(fā)明的造型過(guò)程的一流程圖。
圖16是本發(fā)明的前向子波濾波器的一實(shí)施例。
圖17是本發(fā)明的一反向子波濾波器的一實(shí)施例的方框圖。
圖18示出了不同變換的系數(shù)范圍。
圖19A和19B示出了使用查詢表的上下文模式的兩個(gè)實(shí)施例。
圖20示出子波分解級(jí)的一個(gè)實(shí)施例。
圖21示出了一編碼單元。
圖22示出了在TS-變換時(shí)的垂直通路。
圖23示出了緩沖和系數(shù)計(jì)算。
圖24A示出了一代碼流結(jié)構(gòu)的一個(gè)實(shí)施例。
圖24B示出了用于低分辨目標(biāo)的一代碼流結(jié)構(gòu)的一個(gè)實(shí)施例。
圖25示出了在各系數(shù)(或象素)之間的相鄰關(guān)系。
圖26A-D示出了上下文模式的實(shí)施例。
圖27是本發(fā)明的上下文模式的一實(shí)施例的方框圖。
圖28是本發(fā)明的符號(hào)/數(shù)量單元的一實(shí)施例的方框圖。
圖29示出了用于一通過(guò)操作的被編碼數(shù)據(jù)存貯器的動(dòng)態(tài)分配。
圖30示出一通道管理器的一個(gè)實(shí)施例。
圖31示出了在本發(fā)明中存貯器的利用。
圖32示出了在本發(fā)明中的一比特流。
圖33示出了一程序段的結(jié)構(gòu)。
圖34示出了目標(biāo)器件相對(duì)一參量空間的關(guān)系曲線。
圖35A和35B示出了本發(fā)明的分析程序的不同的實(shí)施例。

具體實(shí)施例方式 現(xiàn)在介紹一種用來(lái)壓縮和解壓的方法和裝置。為了提供對(duì)本發(fā)明的徹底的了解,而陳述了諸如編碼器的類型、比特?cái)?shù)、信號(hào)名稱等大量特殊的細(xì)節(jié)。但是,本技術(shù)領(lǐng)域的普通技術(shù)人員很清楚的是沒(méi)有這些特殊的細(xì)節(jié)也可以實(shí)施本發(fā)明。在另外的例子中,為了避免使本發(fā)明模糊不清,已知的結(jié)構(gòu)和裝置足以方框圖形式表示而不詳細(xì)說(shuō)明。
被詳細(xì)說(shuō)明的某些部分在下面是以在一計(jì)算機(jī)存貯器中的數(shù)據(jù)比特的操作的算法和符號(hào)表達(dá)式的形式來(lái)表示。數(shù)據(jù)處理技術(shù)領(lǐng)域中的某些技術(shù)人員利用這些算法說(shuō)明和表達(dá)式作為手段來(lái)將他們的工作內(nèi)容最有效地傳送給該技術(shù)領(lǐng)域中的另外的技術(shù)人員。這里的一算法一般來(lái)說(shuō)是想象為導(dǎo)致一所希望結(jié)果的步驟的一自相容順序。這些步驟是實(shí)際參量所需的實(shí)際的操作。通常,雖然并非是必然的,這些電或磁信號(hào)形式的參量可以被存貯、轉(zhuǎn)移、組合、比較以及其它的方式操作。主要為了共同使用的原因,有時(shí)將這些信號(hào)作為比特、數(shù)值、要素、符號(hào)、字符、術(shù)語(yǔ)、數(shù)等被證明是方便的。
但是,應(yīng)記住,所有這些以及類似的項(xiàng)是與適當(dāng)?shù)膶?shí)際量相關(guān)的并且僅僅是向這些量提供方便的標(biāo)記而已、除非從下面的討論中另有明顯的特別地說(shuō)明,在整個(gè)本發(fā)明中可了解到相對(duì)于計(jì)算機(jī)系統(tǒng)或類似的電子計(jì)算裝置的動(dòng)作和處理的討論所利用的諸如“處理”或“估算”或“計(jì)算”或“測(cè)定”或“顯示”等等,是將在計(jì)算機(jī)系統(tǒng)的寄存器或存貯器內(nèi)表示為物理(電)量的數(shù)據(jù)操作和轉(zhuǎn)換成在計(jì)算機(jī)的存貯器或寄存器內(nèi)或其它的這種信息存貯、傳輸或顯示裝置內(nèi)的其它類似地表示為物理量的數(shù)據(jù)。
本發(fā)明還涉及用來(lái)在其內(nèi)執(zhí)行該操作的裝置。這種裝置可針對(duì)特定目的而構(gòu)成,或者它可以包括由在該計(jì)算機(jī)內(nèi)存貯的計(jì)算機(jī)程序來(lái)選擇地激活或重新組合的一通用的計(jì)算機(jī)。在其內(nèi)所呈現(xiàn)的算法和顯示并不固有地涉及任何特定的計(jì)算機(jī)或其它的裝置。可以使用具有根據(jù)其內(nèi)所教導(dǎo)的程序的各種一般用途的機(jī)器,還可以證實(shí)為執(zhí)行所需的方法步驟構(gòu)成更為專業(yè)化的裝置則更為方便。在下面的說(shuō)明中將會(huì)出現(xiàn)用于這些機(jī)器的各種所需的構(gòu)型。另外,本發(fā)明對(duì)涉及的任何特定程序語(yǔ)言不作描述。將會(huì)了解到各種程序語(yǔ)言可用作在其中描述本發(fā)明的教導(dǎo)的工具。
如下的術(shù)語(yǔ)被用于下面的說(shuō)明中。對(duì)于這些不同的術(shù)語(yǔ)包括有一個(gè)定義。但是所提供的定義并不認(rèn)為限于在該技術(shù)領(lǐng)域中已知術(shù)語(yǔ)的范圍。這些所提供的定久有助于對(duì)本發(fā)明的理解。
比特有效位一種數(shù)表示,類似于符號(hào)數(shù)值,如果有的話具有標(biāo)題比特、跟著有符號(hào)比特,跟著有尾部比特。相應(yīng)于這種表示以比特平面順序嵌入編碼。
編碼單元可按任意順序被共同編碼的系數(shù)單元。在一實(shí)施例中,一編碼單元包括有一個(gè)或多個(gè)以一矩形安排的樹(shù)。一編碼單元可包含有一完整圖象、一組圖象或另外的數(shù)據(jù)集。該編碼單元具有在緩沖器尺寸上為了計(jì)算一變換所必須的有效壓縮。另外,在一實(shí)施例中,在與前編碼單元的系數(shù)外側(cè)可以沒(méi)有任何內(nèi)容。但是,在一編碼單元之中或許多編碼單元之后熵代碼可被復(fù)位。該編碼單元不必隨機(jī)地可尋址。
上下文模式相對(duì)于被編碼的與前比特的可利用信息給出有關(guān)與前比特的歷史地學(xué)習(xí)信息。這使得可以對(duì)熵編碼條件概率進(jìn)行估算。
樹(shù)該系數(shù)和象素是涉及在最高級(jí)子波分解的LL中的一單一系數(shù)。該系數(shù)量是若干級(jí)數(shù)的量。
帶對(duì)于二維數(shù)據(jù)該系數(shù)和象素是涉及在最高級(jí)子波解壓的LL中系數(shù)的單一行或線。帶的規(guī)定類似于其它量綱數(shù)據(jù)的規(guī)定。
分解級(jí)在該子波分解角錐中的一位置。
嵌入量化該量化被代碼流所蘊(yùn)層。例如,如果重要級(jí)是按序安置,從最重要到最不重要,則通過(guò)該代碼流的簡(jiǎn)單舍位來(lái)執(zhí)行量化。同樣的函數(shù)性可利用標(biāo)記、標(biāo)志、指針或其它的信號(hào)來(lái)荻得。
熵編碼器基于它的上下文來(lái)對(duì)當(dāng)前比特編碼的一種裝置。對(duì)于當(dāng)前比特(或多個(gè)比特)的最佳表達(dá)式該上下文允許概率估算。
固定速率保持一定的象素速率并具有有限的帶寬通路的一應(yīng)用或系統(tǒng)。這需要獲得局部的平均壓縮而不是全局的平均壓縮。例如MPEC。
固定尺寸具有一有限尺寸緩沖器的一應(yīng)用或系統(tǒng)。在這種情況中,獲得一全局的平均壓縮,即,一打印緩沖器。(一應(yīng)用可為固定速率和固定尺寸或二者之一)。
固定長(zhǎng)度將數(shù)據(jù)的特定信息塊轉(zhuǎn)換為被壓縮數(shù)據(jù)的特定信息塊的一系統(tǒng),即,BTC。固定長(zhǎng)度代碼適用于固定速率和固定尺寸應(yīng)用,但是,與可變速率系統(tǒng)比較其速率失真性能通常是低劣的。
水平線上下 文模式一種用于嵌入編碼器(在一實(shí)施中)的上下文模式,將其規(guī)定為本發(fā)明的一部分。
標(biāo)題在比特有效位表達(dá)式中,該標(biāo)題比特是自該最高有效位向上的數(shù)量比特并且包括第一非零比特。
重疊變換一種將單源取樣點(diǎn)分配給相同頻率的多個(gè)系數(shù)的變換。例如包括許多子波和重疊正交變換。
累進(jìn)一種被排序的代碼流,使得來(lái)自可由多個(gè)數(shù)據(jù)提煉的被編碼數(shù)據(jù)的部分的相關(guān)被壓縮結(jié)果是可利用的。在某些實(shí)施例中,一代碼流由數(shù)據(jù)加深比特平面來(lái)排序,在這種情況中,它通常稱之為子波系數(shù)數(shù)據(jù)。
角錐分辨的順序性,每個(gè)較低的分辨是二個(gè)較大的一線性因素(在一面積中四個(gè)較大的因素)。
可逆變換用整數(shù)運(yùn)算所實(shí)施的有效變換,能實(shí)現(xiàn)精確的重建。
S變換帶有2抽頭的低通和2抽頭高通濾波器的一特殊可逆子波濾波器部分。
尾部在比特有效位表達(dá)式中,尾部比特是帶有比最高有效非零比特低的有效位的幅值比特。
尾部信息在一實(shí)施例中,對(duì)于在比特有效位表達(dá)式中所表示的一系數(shù)有四種可能狀態(tài)。它是系數(shù)和當(dāng)前比特平面的函數(shù),并被用于水平線上下文模式。
尾部連接在一實(shí)施例中,取決于該尾部信息是否為零或非零的兩種狀態(tài)。它被用于水平線上下文模式。
TS-變換二-六變換,帶有2抽頭低通和6抽頭高通濾波器的一特殊子波濾波器部分。
接合無(wú)損 耗/有損耗相同壓縮系統(tǒng)提供一可無(wú)損耗或有損耗重建的一編碼數(shù)據(jù)流。如在以下所述的本發(fā)明的情況中,這種代碼流可以無(wú)須對(duì)該編碼器置位或指示。
視覺(jué)重要級(jí)通過(guò)規(guī)定一個(gè)特定系統(tǒng),輸入數(shù)據(jù)(象素?cái)?shù)據(jù)、系數(shù)、誤差信號(hào)等)被邏輯地分成具有相同視覺(jué)壓縮的組。例如,最高有效比特平面或若干比特平面可比較低平面更為視覺(jué)重要。低頻信息通常比高頻更為重要。本發(fā)明如下所述包括的“視覺(jué)有效位”的多數(shù)操作定義是相同于某些誤差量度而言的。但是,在視覺(jué)重要的系統(tǒng)定義中可插入較好的視覺(jué)量度。另外的數(shù)據(jù)類型具有另外的重要級(jí),例如,音頻數(shù)據(jù)具有音頻重要級(jí)。
子波濾波器在子波變換中使用的高通和低通合成和分析濾波器。
子波變換利用“頻率”和“時(shí)間(或空間)”約束的變換。在所介紹的實(shí)施例中,是一包含一高通濾波器和一低通濾波器的變換。其結(jié)果系數(shù)是+中取=(臨界地濾除)并且該濾波器被利用于低通系數(shù)。
本發(fā)明提供了一種具有一編碼部分和一譯碼部分的壓縮/解壓系統(tǒng)。該編碼部分負(fù)責(zé)時(shí)輸入數(shù)據(jù)編碼以產(chǎn)生壓縮數(shù)據(jù),同時(shí)譯碼部分負(fù)責(zé)對(duì)被編碼的數(shù)據(jù)譯碼以產(chǎn)生原始輸入數(shù)據(jù)的重建的文本。該輸入數(shù)據(jù)可包括各種數(shù)據(jù)類型,諸如圖象(靜止的或視頻的)、音頻等。在一實(shí)施例中,該數(shù)據(jù)是數(shù)字信號(hào)數(shù)據(jù);但數(shù)字化的模擬數(shù)據(jù)文本數(shù)據(jù)格式和其它格式也是可以的。對(duì)于編碼部分和/或譯碼部分來(lái)說(shuō),該數(shù)據(jù)源可以是一存儲(chǔ)器或通道。
在本發(fā)明中,編碼部分和/或譯碼部分的部件可由諸如在一計(jì)算機(jī)系統(tǒng)中被使用硬件或軟件來(lái)實(shí)施,本發(fā)明提供了一種無(wú)損耗壓縮/解壓系統(tǒng)。本發(fā)明還可被構(gòu)成能執(zhí)行有損耗壓縮/解壓的構(gòu)型。
圖1是該系統(tǒng)的編碼部分的一實(shí)施例的方框圖。應(yīng)注意的是該系統(tǒng)的譯碼部分以和該數(shù)據(jù)流動(dòng)的相反順序工作。參見(jiàn)圖1,由子波變換部分102接收輸入圖象數(shù)據(jù)101。子波變換部分102的輸出被送到系數(shù)數(shù)據(jù)排序和造型部分103。響應(yīng)于自子波變換部分102的輸出,該排序/造型部分103產(chǎn)生至少一個(gè)由一熵編碼器104所接收的比特流。響應(yīng)于自排序/造型部分103的輸出,熵編碼器104產(chǎn)生代碼流107。
在一實(shí)施例中,該排序/造型部分103包括一符號(hào)/量值格式化學(xué)單元201和一接合空間/頻率上下文模式202,如圖2所示。在一實(shí)施例中,該接合空間/頻率上下文模式202包括一水平線上下文模式,如下所述。符號(hào)/量值單元201的輸入被送到子波變換代碼部分102的輸出。符號(hào)/量值單元201的輸出被送到接合空間/頻率上下文模式202。JSF上下文模式202的輸出被送到熵編碼器104的輸入以產(chǎn)生輸出代碼流107。
再參見(jiàn)圖1,在本發(fā)明中,如像下面所解釋的,接收?qǐng)D象數(shù)據(jù)101和在子波變換部分102中利用可逆子波的變換編碼以產(chǎn)生表示該圖象的多分辨壓縮的一系列系數(shù)。本發(fā)明的可逆子波變換并不是復(fù)雜的計(jì)算。該變換可以用不帶有系統(tǒng)的誤差的軟件或硬件來(lái)完成。另外,對(duì)于能量壓縮和壓縮特性來(lái)說(shuō)本發(fā)明的子波是極好的。這些系數(shù)由排序/造型部分103所接收。
該排序/造型部分103提供對(duì)系數(shù)的排序和造型。該系數(shù)排序提供一嵌入數(shù)據(jù)流。在編碼時(shí)間、傳送時(shí)間或譯碼時(shí)間該被嵌入的數(shù)據(jù)流允許一結(jié)果代碼流被量化。在一實(shí)施例中,排序/造型部分103將該系數(shù)排序并變換成符號(hào)一量值格式,并基于它的有效位(如下面將要說(shuō)明的)使該格式化的系數(shù)服從于一嵌入造型方法。在一實(shí)施例中,該格式化系數(shù)服從于接合空間/頻率造型。
排序和造型的結(jié)果包括由熵編碼器所編碼的決定(或符號(hào))。在一實(shí)施例中,所有決定均被送至一單一編碼器。在另一實(shí)施例中,通過(guò)有效位來(lái)標(biāo)明這些決定,并且對(duì)于每個(gè)有效位電平的決定通過(guò)不同的(實(shí)際的或虛擬的)多個(gè)編碼器來(lái)處理。
參見(jiàn)圖2,來(lái)自JSF上下文模式202結(jié)果的比特流以利用熵編碼104的有效位的順序被編碼。在一實(shí)施例中,熵編碼器104包括一個(gè)或多個(gè)二進(jìn)制熵編碼器。
子波分解 本發(fā)明利用可逆子波來(lái)開(kāi)始執(zhí)行一圖象(以圖象數(shù)據(jù)方式)或另外的數(shù)據(jù)信的分解。在本發(fā)明中,一可逆子波變換包括一精確重建系統(tǒng)以整數(shù)算法進(jìn)行的實(shí)施過(guò)程,這樣一具有整數(shù)系數(shù)的信號(hào)可被無(wú)損耗地復(fù)原。通過(guò)使用可逆子波,本發(fā)明能夠提供具有有限精度算法的無(wú)損耗壓縮。通過(guò)對(duì)圖象數(shù)據(jù)利用可逆子波變換的結(jié)果是一系列的系數(shù)。
本發(fā)明的可逆子波變換可使用一組濾波器來(lái)實(shí)施。在一實(shí)施例中,這些濾波器是二抽共低通濾波器和六抽頭高通濾波器。在一實(shí)施例中,這些濾波器是僅使用加和減操作(加以硬件的比特位移)來(lái)實(shí)施的。另外,在本發(fā)明的一實(shí)施例中,利用該低通濾波器的結(jié)果高通濾波器產(chǎn)生它的輸出。所得結(jié)果的高通系數(shù)僅是大于象素深度的少數(shù)比特并且該低通系數(shù)與該象素深度相同。由于在一角錐分解中僅低通系數(shù)反復(fù)地被濾除,可以在多級(jí)分解中系數(shù)分辨力沒(méi)有增加。
在另外的實(shí)施例中,低通濾波器輸出系數(shù)的尺寸可增加,而不是高通濾波器輸出系數(shù)的尺寸增加。
一子波變換系統(tǒng)是由一對(duì)FIR分析濾波器h0(n),h1(n)和一對(duì)FIR綜合濾波器g0(n),g1(n)所規(guī)定。在本發(fā)明中,h0和g0是低通濾波器而g1和h1是高通濾波器。在圖3A中示出了該子波系統(tǒng)的方框圖。參見(jiàn)圖3A,一輸入信號(hào)X(n)被提供給分析濾波器h0和h1并且其輸出被+中?。?臨界地二次抽樣)以產(chǎn)生被變換的信號(hào)y0(n)和y1(n),分別作為低通(平滑)和高通(細(xì)節(jié))系數(shù)。該分析濾波器和它的相應(yīng)的抽選、或二次抽樣、字組構(gòu)成該子波變換系統(tǒng)的分析部分。該編碼器/譯碼器包括所有處理邏輯和在被變換范圍中的常規(guī)變換(即,斷定、量化、編碼等)。如圖3A所示的子波系統(tǒng)還包括一綜合部分,在該綜合部分中該被變換信號(hào)被由2向上取樣(即每一項(xiàng)之后插入一個(gè)零)并且隨后通過(guò)綜合濾波器g0(n)和g1(n)。該紙通(平滑)系數(shù)y0(n)通過(guò)低通綜合濾波器g0和該高通(細(xì)節(jié))系數(shù)y1(n)通過(guò)高通濾波器g1。濾波器g0(n)和g1(n)的輸出被組合以產(chǎn)生x(n)。
在某些實(shí)施例中執(zhí)行向下取樣和向上取樣,在另外的實(shí)施例中,由于不執(zhí)行向下取樣和向上取樣所以無(wú)需計(jì)算所使用的濾波器。
該子波系統(tǒng)可由Z變換項(xiàng)來(lái)描述,其中的X(Z)、X(Z)分別表示輸入和輸出信號(hào),Y0(Z)、Y1(Z)是被低通和高通變換的信號(hào),H0(Z)、H1(Z)是低通和高通分析濾波器和G0(Z)、G1(Z)是低通和高通綜合濾波器。如果在該變換范圍內(nèi)不存變更和量化,則在圖3中的輸出X(Z)由下式給出 在本發(fā)明中,稱之為“混疊”項(xiàng)的

的第二項(xiàng)被取消,這是因?yàn)樵摼C合濾波器是被分析濾波器的正交鏡所規(guī)定,也就是, 在該濾波器系數(shù)的項(xiàng)中, 因此,對(duì)于一正交鏡濾波器對(duì),在變換之后,該輸出為 因此,在本發(fā)明的正交鏡系統(tǒng)中,該輸出僅由分析濾波器的項(xiàng)來(lái)決定。該子波變換是將在由用作輸入的濾波器所產(chǎn)生的輸出中遞舊地變換的信號(hào)被直接或非直接地被提供給該濾波器中。在所述的實(shí)施例中,僅僅低通變換分量y0(n)被遞舊地變換使得該系統(tǒng)是角錐形的。在圖6中示出了這樣一種角錐系統(tǒng)的例子。
Z變換是用來(lái)表示數(shù)據(jù)的硬件和/或軟件操作的一種簡(jiǎn)便表示法。乘以Z-m模式則在硬件中延遲m時(shí)鐘周期,而在軟件中對(duì)第m5前面元件進(jìn)行陣列存取。這種硬件的實(shí)施包括存貯器、管道級(jí)、移相器、寄存器等。
在本發(fā)明中,在乘以一常數(shù)一延遲項(xiàng)之后信號(hào)X(n)和X(n)是相同的,即Z變換的項(xiàng)中, 這稱之為一精確重建系統(tǒng)。因此,在本發(fā)明的一實(shí)施例中,最初應(yīng)用于輸入數(shù)據(jù)的子波變換是可精確地重建的。
使用哈達(dá)瑪(Hadamard)變換的本發(fā)明的一實(shí)施例是一精確重建系統(tǒng),它的標(biāo)準(zhǔn)形式如下面以Z范圍的表達(dá)式 在置換后,該輸出為 X(Z)=Z-1X(Z), 這是很清楚地一精確重建。對(duì)于哈達(dá)瑪變換的更詳細(xì)的情況請(qǐng)見(jiàn)Anil K.Jain,F(xiàn)undamentals of Image Processing,pg.155。
哈達(dá)瑪變換的可逆變型這里稱之為S變換。對(duì)于S變換的更詳細(xì)的情況,請(qǐng)參見(jiàn)A.and Pearlman,W.“Reversible Image Compressionvia Multiresolution Representation and Predictive Coding,”Dept.of Electrical,Computer and Systems Engineering,RenssealaerPolytechnic Institute,Troy,NY 1993。因?yàn)楣_(dá)瑪變換是一精確重建變換,下面的非標(biāo)準(zhǔn)變型(不同于利用固定系數(shù)的哈達(dá)瑪變換)也是一精確重建變換 給定的輸入信號(hào)的取樣為X0,X1,則這個(gè)系統(tǒng)S變換是實(shí)施一可逆變換,如像, 該S變換可由具有一普通標(biāo)志n的輸出來(lái)定義,如下所示
應(yīng)注意的是在該變換系數(shù)尋址中的兩個(gè)系數(shù)是通過(guò)二次子取樣的結(jié)果??赡孀儞Q和變型為
符號(hào)

表示下舍入或截尾并且有時(shí)稱之為底面函數(shù)。類似地,天棚函數(shù)

對(duì)最接近整數(shù)上舍入。
可以證實(shí)以下面方式實(shí)施可逆實(shí)際上僅是在近似于X(0)+X(1)的最低有效位中丟失信息。但由于X(0)+X(1)和X(0)-X(-1)的最低有效位是相同的,所以可從該高通輸出y1(0)復(fù)原。換句話說(shuō),

該S變換是使用最小長(zhǎng)度可逆濾波器的非重疊變換。最小長(zhǎng)度濾波器包括有一對(duì)濾波器,這兩個(gè)濾波器具有二個(gè)抽頭。最小長(zhǎng)度變換不提供良好的能量壓縮。由于該濾波器的長(zhǎng)度等于濾波器數(shù)所以最小長(zhǎng)度濾波器實(shí)施一非重疊變換。重疊變換使用至少一個(gè)其長(zhǎng)度大于濾波器數(shù)的濾波器。使用較長(zhǎng)(不是最小長(zhǎng)度)濾波器的重疊變換可提供較好的能量壓縮。本發(fā)明提供允許一重疊變換的非最小長(zhǎng)度可逆濾波器。
精確重建系統(tǒng)的另一例子包括具有Z范圍定義的二/六(TS)變換, 在置換之后,該輸出為 這是一精確重建變換。
該TS變換的合理的非標(biāo)準(zhǔn)變型包括 如果該信號(hào)的六個(gè)取樣為x(0)、x(1)、···、x(5),則由下式給出前三個(gè)低通系數(shù)y0(0)、y0(1)、y0(2)和第一個(gè)高通系數(shù)y1(0)

但是,該TS變換的有理非標(biāo)準(zhǔn)變型的直接的實(shí)施是不可逆的。下面的例子表示該實(shí)施是局部地非可逆的。作為用于全向情況的一個(gè)例子可建立一較長(zhǎng)的數(shù)列。由于完成對(duì)y0(0)和y0(2)的計(jì)算因?yàn)?(X(0)+X(1))+(X(4)+X(5)≠-yo(0)+yo(2),這種使用局部信息的變換是不可逆的。
例如,如果x(0)=1,x(1)=1,x(2)=3,x(3)=1,x(4)=1,x(5)=1,則



和,如果x(0)=1,x(1)=2,x(2)=4,x(3)=1,x(4)=1,x(5)=1,則

因?yàn)閷?duì)于輸入x(0)···x(5)的兩種不同設(shè)置y0(0)、y0(1)、y0(2)和y1(0)是相同的,因?yàn)閺妮斎氲膬煞N設(shè)置的局部信息中不可能確定給出的y0(0),···y1(0),所以該變換是不可逆的(應(yīng)注意的是使用來(lái)自所有系數(shù)的全局信息所提供的變換是不可逆的。) 現(xiàn)在來(lái)考慮稱之為RTS變換的一可逆TS變換,它提供了一種不同的高通濾波操作。
如果x(0)、x(1)、x(2)、x(3)、x(4)、x(5)是該信號(hào)的六個(gè)取樣,則由下式給出前三個(gè)低通系數(shù)y0(0)、y0(1)、y0(2)和第一個(gè)高通系數(shù)y1(0),




因?yàn)?
所以x(2)-x(3)是完全已知的。隨著

和x(2)-x(3)如上所規(guī)定,由于x(0)+x(1)和x(0)-x(1)的最低有效位是相同的所以x(2)和x(3)可被復(fù)原。明確地說(shuō),讓


在該RTS變換的一實(shí)施例,以及該S變換的一實(shí)施例中,為了提供準(zhǔn)確的加法,一被實(shí)施的除以8的操作變?yōu)橄瘸?然后除以4。應(yīng)注意數(shù)學(xué)式 和數(shù)學(xué)式 當(dāng)執(zhí)行無(wú)限精確運(yùn)算時(shí)是相同的。理由是當(dāng)用整數(shù)運(yùn)算實(shí)際實(shí)施時(shí)第二等式明顯表示一可逆濾波器。結(jié)合圖16和17描述了低通濾波器和高通濾波器的硬件實(shí)施的例子。
應(yīng)注意的是S變換和RTS變換中該低通濾波器被實(shí)施以使輸入信號(hào)x(n)的范圍與輸出信號(hào)yo(n)是相同的。例如,如果該信號(hào)是-8比特圖象,則低通濾波器的輸出也是8比特的。由于在現(xiàn)有技術(shù)系統(tǒng)中輸出信號(hào)的范圍是大于輸入信號(hào)范圍的,所以對(duì)于低通濾波器被相繼應(yīng)用的一角錐系統(tǒng)來(lái)說(shuō)是一重要的特性,從而使該濾波器難以連續(xù)應(yīng)用。另外,該低通濾波器僅具有兩個(gè)抽頭,使得它為一非重疊濾波器。如像后面所述,這個(gè)特性對(duì)于硬件實(shí)施是重要的。
在一更普通的格式中,該可逆TS變換是由一低通和一高通的兩個(gè)輸出的表達(dá)式來(lái)確定的
對(duì)于d(n)的表達(dá)式可以簡(jiǎn)化并利用S(n)來(lái)寫(xiě)出(由4的整除可通過(guò)向分子增加一個(gè)2來(lái)完成)其結(jié)果為
該可逆TS變換和反量為
其中P(n)必須首先被計(jì)算為
來(lái)自該低通濾波器的結(jié)果在高通濾波器中可被使用二次(在第一和第三項(xiàng)中)。因此,僅僅必須執(zhí)行二次其它的加法以得到該高通濾波器的結(jié)果。
除了可逆變換之外,該TS變換還是有效的變換。該TS變換(類似S變換)具有不增長(zhǎng)的平滑輸出,即,如果該輸入信號(hào)是b比特深度,則為平滑輸出。這對(duì)于在下面部分中所定義的角維系統(tǒng)是有用的,在那里該平滑輸出被進(jìn)一步分解。由于該變換的實(shí)施足以整數(shù)完成的因而不存在系統(tǒng)誤差,所以在一有損耗系統(tǒng)中所有誤差均可通過(guò)量化來(lái)控制。
在參與一子波變換的四個(gè)濾波器中,由于該低通綜合濾波器兼有被量化的系數(shù)并且還平滑人為因素所以該低通綜合濾波器是最重要的。實(shí)際上在本發(fā)明中引導(dǎo)去選擇用于低通綜合濾波器的相對(duì)長(zhǎng)(六抽頭)和特別好特性的濾波器。應(yīng)注意的是在-QMF系統(tǒng)中,僅存在有兩個(gè)獨(dú)立的濾波器。
在本發(fā)明本可使用許多被重疊的、非最小長(zhǎng)度可逆濾波器。圖3B示出了用于具有非重疊的最小長(zhǎng)度可逆濾波器的變換系統(tǒng)的前向和反向的表示。例如,在本發(fā)明中可以使用下面的濾波器的類型。對(duì)于整數(shù)L≥Z,




該高通濾波器的長(zhǎng)度為2L。如果L為奇數(shù),則該濾波器可接近于一對(duì)稱濾波器。如果ai、b、ci和k為整數(shù)并且LK≤b時(shí),則該濾波器是可逆的。如果ai、b、ci和K是2的冪(或2的冪的負(fù)數(shù)或計(jì)數(shù))時(shí),則該濾波器的實(shí)施可被簡(jiǎn)化。如果K=b(不管ai和ci的值),則該高通濾波器y1的輸出范圍最小。對(duì)于每個(gè)ai,如果精確地存在一個(gè)cj,這里ai=-cj,則該高通濾波器將不響應(yīng)于一固定輸入。如果ai=-cj,當(dāng)j-(L-1)=i時(shí),則該濾波器可接近于一對(duì)稱濾波器。
另外的有用的特性為

當(dāng)m=1時(shí)該高通濾波器不響于一線性地變化的輸入而當(dāng)m=2時(shí)不響應(yīng)于二次方變化的輸入,其中m為力矩條件。這個(gè)特性是RTS變換具有比S變換更好的能量壓縮的基本原因。
當(dāng)濾波器必須滿足用于可逆性的最小約束時(shí),對(duì)于不同的應(yīng)用,濾波器可被用于不滿足,滿足某些或全部滿足其它的特性。在某些實(shí)施例中,使用以下例子高通濾波器中的一個(gè),這些濾波器以符號(hào)列于表中,表中列出了該濾波器合理變型的整數(shù)系數(shù),以避免使本發(fā)明難以理解。
1 1 -4 -4 16 -16 4 4 -1 -1 1 1 -3 -3 8 -8 3 3 -1 -1 -1 -1 0 0 16 -16 0 0 1 1 -1 -1 4 4 -16 -16 256 -256 16 16 -4 -4 1 1 3 3 -22 -22 128 -128 22 22 -3 -3 最后的濾波器稱之為T(mén)T濾波器,它具有不響應(yīng)于三次方增長(zhǎng)函數(shù)的特性。應(yīng)注意的是因?yàn)?2=16+2×3和3=2+1,所以這個(gè)濾波器可以用總共7次相加和相減來(lái)實(shí)施。
在一實(shí)施例中,這些濾波器可被組合并應(yīng)用于一組,這樣以一種操作執(zhí)行水平和垂直通過(guò)。圖4示出了執(zhí)行該組合操作的濾波器。配置(a)示出了兩個(gè)分離的1-D可逆慮波器的使用,對(duì)于每個(gè)通過(guò)的1-D可逆濾波器包括有一個(gè)1-D濾波器和1-D舍入(rounding)。配置(b)示出了一個(gè)1-D濾波器401,后面跟著另一個(gè)1-D濾波器402,末尾帶有一舍入操作403。這種配置產(chǎn)生允許更好的舍入的更為精確的結(jié)果。
對(duì)于濾波器的所需要的精確的可逆要求可通過(guò)下面的表明加以緩解。高通系數(shù)以某種順序被編碼和譯碼。相應(yīng)于前面的被譯碼的高通系數(shù)的象素值是精確地已知,這樣它們可利用在當(dāng)前的高通濾波器中。例如,當(dāng)一光柵順序被使用時(shí)可利用下面的濾波器。

不需使用一單一固定高通濾波器??墒褂米赃m應(yīng)濾波器或可使用多級(jí)濾波器。在多級(jí)濾波器之中采用或選擇的所使用數(shù)據(jù)必須是限于在特殊的反向?yàn)V波器操作之前在該譯碼器中是可用的數(shù)據(jù)。
使用多級(jí)濾波器的一種方式是漸進(jìn)地處理該高通系數(shù)。另外的高通濾波操作(Y1(0),Y1(2),Y1(4),···)可用一諸如RTS高通濾波器之類的一可逆濾波器首先被處理。因?yàn)檩斎氲皆摓V波器的重疊部分的精確值是已知的,所以剩余處理(Y1(1),Y1(3),Y1(5),···)可以使用高達(dá)六抽頭的非可逆濾波器。例如,任何如下的濾波器都可被使用。
-1 3 -3 1 -1 4 -4 1 -3 8 -8 3 1 -5 10 -10 5 -1 1 -4 8 -8 4 -1 應(yīng)注意的是在某些實(shí)施例中不使用QMF濾波器。
在某些實(shí)施例中,高通濾波器可由一預(yù)測(cè)/插入操作來(lái)替代。一預(yù)測(cè)器/插入器可預(yù)言在一特定的預(yù)測(cè)/插入操作之前使用在譯碼器中的任何有用數(shù)據(jù)的一對(duì)輸入之間的差異。將該被預(yù)言的差異從輸入的實(shí)際差異中減去并輸出其結(jié)果。在一實(shí)施例中,現(xiàn)有技術(shù)預(yù)言方法被使用在DPCM中,漸進(jìn)編碼或空間范圍編碼被使用。
在一實(shí)施例中可使用諸如形態(tài)學(xué)的濾波器(即,中點(diǎn)濾波器)之類的非線性濾波器。在一實(shí)施例中,該1,1濾用來(lái)連接一用于高通的不同的濾波器。這樣一種濾波器系統(tǒng)必須能夠傳送兩個(gè)象素之間的差異?;谌魏螖?shù)據(jù)該譯碼器具有可預(yù)測(cè)出其差異是什么的預(yù)言。一非線性形態(tài)學(xué)濾波器可用作估測(cè)。本發(fā)明計(jì)算在該窗口的因果例(Causal Side)所使用的實(shí)際象素的一象素的周?chē)闹悬c(diǎn),并將其入該濾波器中。在該濾波器的非因果側(cè),低通系數(shù)被用來(lái)代替象素值。
二維的子波分解 利用本發(fā)明的低通和高通濾波器,執(zhí)行多分辨分解。分解的級(jí)數(shù)是變量并且可為任何數(shù),但當(dāng)前的分解級(jí)數(shù)為從2至5級(jí)。
在諸如圖象的二維數(shù)據(jù)上執(zhí)行變換的最普通方式是分別地應(yīng)用一維濾波器來(lái)實(shí)現(xiàn)的,即,沿行然后沿列來(lái)變換。該分解的第一級(jí)導(dǎo)致系數(shù)的四個(gè)不同區(qū)域,稱之為L(zhǎng)L、HL、LH和HH。代表相應(yīng)于應(yīng)用平滑和細(xì)節(jié)濾波器的底(L)和高(H)的字母分別由以上規(guī)定。因此,LL區(qū)包括在行和列兩個(gè)方向上來(lái)自該平滑濾波器的系數(shù)。以如圖5A-5D的格式來(lái)安置子波系數(shù)是普通常事。
在子波分解中的每個(gè)子組可被進(jìn)一步被分解。最普通的方式是僅僅進(jìn)一步分解該LL子組,但這可進(jìn)行若干次。這樣一種多次分解被稱之為角錐分解(圖5A-5D)。名稱LL、LH、HL、HH和分解電平數(shù)表示每一分解。應(yīng)注意的是本發(fā)明的任一濾波器(S或TS)進(jìn)行的角錐分解不增加該系數(shù)尺寸。
例如,如果可逆子波變換被遞歸地應(yīng)用于一圖象,則分解操作的第一級(jí)將使圖象有最良好的細(xì)節(jié),或分辨度。在第一分解級(jí),該圖象被分解成四個(gè)子圖象(或子區(qū))。每個(gè)子區(qū)表示一空間頻率的區(qū)域。第一級(jí)子區(qū)標(biāo)為L(zhǎng)L0、LH0、HL0和HH0。分解該原始圖象的處理包括在水平和垂直方向上的二次子取樣,這就如象該輸入具有該圖象的象素(或系數(shù))的許多系數(shù)一樣,如圖5A所示那樣第一組子區(qū)LL0、LH0、HL0和HH0的每一個(gè)具有四分之一。
子區(qū)LL0包括同時(shí)發(fā)生的低頻水平和低頻垂直信息。在這個(gè)子區(qū)中典型地集中有該圖象能量的一大的部分。子區(qū)LH0包括低頻水平和高頻垂直信息(即,水平邊緣信息)。子區(qū)HL0包括高頻水平信息和低頻垂直信息(即,垂直邊緣信息)。子區(qū)HH0包括高頻水平信息和高頻垂直信息(即,結(jié)構(gòu)或?qū)蔷€邊緣信息)。
由分解前述級(jí)的低頻LL子區(qū)而產(chǎn)生隨后的第二、第三和第四較低分解級(jí)的每一個(gè)。如圖5B所示,第一級(jí)的子區(qū)LL0被分解以產(chǎn)生適中細(xì)節(jié)第二級(jí)的子區(qū)LL1、LH1、HL1和HH1。類似地,如圖5C所示,子區(qū)LL1被分解以產(chǎn)生第三級(jí)的粗的細(xì)節(jié)的子區(qū)LL2、LH2、HL2和HH2。另外,如圖5D所示,子區(qū)LL2被分解以產(chǎn)生第四級(jí)的較粗的細(xì)節(jié)的子區(qū)LL3、LH3、HL3和HH3。由于是二次子取樣,所示每個(gè)第二子區(qū)是原始圖象尺寸的十六分之一。在這個(gè)級(jí)上的每一子樣(即,象素)表示在相同位置上的原始圖象中的適中細(xì)節(jié)。類似地,每個(gè)第三電平子區(qū)是原始圖象尺寸的1/64。在這個(gè)電平上的每一象素相應(yīng)于在相同位置上在該原始圖象中相對(duì)地粗的細(xì)節(jié)。另外,每個(gè)第四電平子區(qū)是該原始圖象的尺寸的1/256。
由于子取樣而使被分解的圖象實(shí)際上小于原始圖象,因而用來(lái)存貯原始圖象的相同存貯器可被用來(lái)存貯所有被分解的子區(qū)。換句話說(shuō),原始圖象和被分解子區(qū)LL0和LL1被拋棄并且在一第三電平分解中不被存貯。
雖然只示出了四個(gè)子區(qū)域分解級(jí),但可根據(jù)一實(shí)際系統(tǒng)的需要而發(fā)展出更多的級(jí)。另外,也可以定義諸如DCT之類的其它變換或線性被隔開(kāi)的子區(qū)、不同的母體關(guān)系。
在一角錐分解中存在有一固有的和有用的用于子波系數(shù)的樹(shù)結(jié)構(gòu)。應(yīng)注意的是相應(yīng)于最后的分解級(jí)存在有一單一的LL子信息組。另一方面,隨著級(jí)數(shù)存在有一許多LH、HL和HH區(qū)。樹(shù)結(jié)構(gòu)規(guī)定了在較低分辨力上在一頻段上的一系數(shù)對(duì)在相同頻段上一系數(shù)的母體,涉及相同空間位置。圖6示出了兩個(gè)連續(xù)級(jí)之間的母體關(guān)系。
參見(jiàn)圖6,在A上的系數(shù)直接與B、C和D有母體關(guān)系,而且還與B、C和D有母體關(guān)系的系數(shù)也有母體關(guān)系。詳細(xì)地說(shuō),B與圍繞E的四個(gè)系數(shù)有母體關(guān)系和圍繞H的16個(gè)系數(shù)有母體關(guān)系等等。
多分辨力分解的過(guò)程可利用如圖7中所示的一濾波系統(tǒng)來(lái)執(zhí)行。一表示具有長(zhǎng)度L的一維信號(hào)的輸入信號(hào)在通過(guò)單元703和705進(jìn)行二次取樣之前由濾波器單元701和702進(jìn)行低通和高通濾除。來(lái)自單元703的被子取樣的輸出信號(hào)在分別通過(guò)單元707和708被二次子取樣之前由單元705和706低通和高通濾除。在單元707和708的各自輸出端上呈現(xiàn)子區(qū)分量L和H。類似地,來(lái)自單元705的輸出信號(hào)在分別由單元711和712子取樣之前由單元709和710低通和高通濾除。在單元711和712各自的輸出端上呈現(xiàn)子區(qū)分量L和H。如上所述,使用于子區(qū)分解的本發(fā)明的一實(shí)施例的該濾器是用來(lái)將水平和垂直頻段分離成低頻和高頻段的數(shù)字正交鏡濾波器。
圖8示出二維、二級(jí)變換。圖9還示出了使用諸如在圖16和17中所示的一維濾波器來(lái)實(shí)施的二維、二級(jí)變換。該一維濾波器用于各種其它的場(chǎng)合以避免由于子取樣所必須進(jìn)行的計(jì)算。在一實(shí)施例中,一維濾波器共享低通和高通之間計(jì)算的計(jì)算結(jié)果。
因此,本發(fā)明提供了一種用于壓縮和解壓的系統(tǒng),在該系統(tǒng)中使用了非最小長(zhǎng)度、重疊的可逆濾波器。圖10是這樣一種系統(tǒng)的一實(shí)施例的方框圖。參見(jiàn)圖10,開(kāi)始就執(zhí)行分層分解。該分層分解的結(jié)果被送到用于壓縮的壓縮器。所執(zhí)行的壓縮包括向量量化、標(biāo)量量化、零運(yùn)行長(zhǎng)度編碼、哈夫曼(Huffman)編碼、Tunstall等。該壓縮器壓縮數(shù)據(jù)的輸出表示該原始輸入數(shù)據(jù)的一被壓縮的文本。一解壓器可在未來(lái)的某時(shí)接收該數(shù)據(jù)并解壓該數(shù)據(jù)。本發(fā)明利用非最小類型、重疊可逆濾波器執(zhí)行一僅向分解以產(chǎn)生該原始數(shù)據(jù)的重建文本。應(yīng)注意的是該非最小長(zhǎng)度、重疊可逆濾波器包括有非S變換濾波器。
本發(fā)明的可逆子波濾波器還可用于如圖11所示例子的分析和增強(qiáng)系統(tǒng)。參見(jiàn)圖11,在使用非最小長(zhǎng)度、重疊可逆子波濾波器的輸出數(shù)據(jù)上執(zhí)行分層分解。該分析單元接收由該濾波器產(chǎn)生的系數(shù)并將它們分類到?jīng)Q定之中,即,僅提取相關(guān)的信息而不是編碼所有的系數(shù)。例如,在一文件歸檔系統(tǒng)中,可能僅利用最粗的低通子區(qū)來(lái)識(shí)別空白頁(yè)。另一個(gè)例子是僅使用來(lái)自一特定子區(qū)的高通信息在文本圖象和自然景色圖象之間進(jìn)行識(shí)別。該分層分解可用于寄存多個(gè)圖象,這樣首先由粗的子區(qū)來(lái)進(jìn)行粗的寄存。在另一實(shí)施例中,隨著反向分解該系數(shù)經(jīng)受放大或?yàn)V除。利用分層分解可執(zhí)行削尖、邊緣增溫、噪聲控制等。因此,本發(fā)明提供一種用于連接時(shí)間/空間和頻頻范圍和濾除/增強(qiáng)系統(tǒng)的子波變換。
系數(shù)和比特平面的排序和造型 在本發(fā)明中,作為子波分解的結(jié)果所產(chǎn)生的系數(shù)是熵編碼。在本發(fā)明中,該系數(shù)最初地經(jīng)受嵌入編碼,在嵌入編碼中該系數(shù)按視覺(jué)地有效順序排序,更為一般地,相應(yīng)于某誤差度量(即,失真度量)來(lái)排序。誤差或失真度量包括峰值誤差、和均方誤差(MSE)。另外,相對(duì)于數(shù)據(jù)庫(kù)查詢和定向(垂直、水平、對(duì)角線等),可被執(zhí)行的排序優(yōu)先給出比特有效位的空間位置。
執(zhí)行該數(shù)據(jù)的排序的產(chǎn)生代碼流的嵌入量化。在本發(fā)明中,所使用的二個(gè)排序系統(tǒng)是第一個(gè)用于對(duì)系數(shù)排序,第二個(gè)用于對(duì)在一系數(shù)之中的二進(jìn)制值排序。本發(fā)明的排序產(chǎn)生一在由一二進(jìn)制熵編碼器編碼之后的比特流。
在一實(shí)施例中,該系數(shù)排序和造型包括M-ary編碼。在另一實(shí)施例中,它可僅由區(qū)域嵌入而替代由比特嵌入。另外,對(duì)于無(wú)損耗編碼或單一品質(zhì)有損耗編碼(即,在該編碼器中被特定的量化),在該系數(shù)排序和造型中可使用非嵌入編碼。
編碼單元 在本發(fā)明中,以樹(shù)型設(shè)置為矩型的編碼單元對(duì)圖象等進(jìn)行獨(dú)自地編碼。該編碼單元表示被編碼數(shù)據(jù)的最小單元(雖然存在有允許被譯碼的局部編碼單元的量化選擇)。在一編碼單元中的曾經(jīng)在存儲(chǔ)器中被緩沖的所有數(shù)據(jù)對(duì)該編碼器是可用的。
編碼單元的選擇是依從的實(shí)施的。該編碼單元可作為整個(gè)圖象(或其它數(shù)據(jù)組)或發(fā)明的單一樹(shù)或在它們之間的任何矩形而被規(guī)定。在一實(shí)施例中,一編碼單元的選擇可需在壓縮效能和存貯器使用之間取折衷的方案。
在一實(shí)施例中,在一編碼單元內(nèi)的所有系數(shù)在隨機(jī)存取存貯器中是可用的。因?yàn)樵谝痪幋a單元內(nèi)的所有系數(shù)在隨機(jī)存取存貯器中是可用的,所以在一編碼單元中在該系數(shù)之間的嵌入順序可以是任何任意的順序。這個(gè)順序?qū)幋a器和譯碼器來(lái)說(shuō)是已知的。但由于熵編碼器是相對(duì)于這個(gè)順序,在壓縮中該順序有一有效的碰撞,因而應(yīng)慎重選擇。下面描述了一特定排序的實(shí)施例。
造型 在本發(fā)明中,接合空間/頻率造型壓縮和嵌入編碼系統(tǒng)用來(lái)對(duì)由本發(fā)明的子波變換所產(chǎn)生的系數(shù)編碼。該接合空間/頻率造型具有已知頻率頻段和鄰接象素(或數(shù)據(jù))二者的優(yōu)點(diǎn)。該接合空間/頻率造型的一實(shí)施例這里稱之為水平線造型。
該數(shù)據(jù)開(kāi)始以符號(hào)數(shù)值格式被格式化,然后該數(shù)據(jù)基于有效位而被存貯。在另一實(shí)施例中,為了進(jìn)一步減小存貯器工作空間,該系數(shù)可以數(shù)量/假數(shù)方式而不足以符號(hào)/數(shù)量方式被存貯。
在以相對(duì)于給出的有效度量存貯該數(shù)據(jù)之后,對(duì)該數(shù)據(jù)編碼。
假設(shè)一數(shù)字信號(hào)X(n),對(duì)于每個(gè)X(n)用精度R比特表示,然后本發(fā)明的嵌入編碼對(duì)該信號(hào)的每個(gè)X(n)的最高有效位比特(或比特)編碼,然后再對(duì)下一個(gè)有效位比特(或比特)編碼等等。例如,在可視的規(guī)定順序的情況中,一需要更好品質(zhì)的象素比在沿拐角或接近該邊緣(諸如某些醫(yī)學(xué)圖象)的中心處可受到編碼,這樣在該邊界象素的高階比特之前該中心象素的低階比特可被編碼。
比特有效位表示 在一實(shí)施例中,用于在一系數(shù)內(nèi)的二進(jìn)制值的嵌入順序是利用比特平面。該系數(shù)以比特有效位表示來(lái)表達(dá)。比特有效位是一記號(hào)數(shù)量表示,其中該記號(hào)比特而不是最高有效位比特(MSB)是由第一非零數(shù)量比特編碼。
在以比特有效位形式表示的一數(shù)中存在有三種比特類型標(biāo)題、尾部和記號(hào)。標(biāo)題比特是從MSB到第一非零數(shù)量比特加第一非零比特的所有零比特。在比特平面出現(xiàn)的第一非零數(shù)量比特規(guī)定該系數(shù)的有效位。在第一非零數(shù)量比特到LSB之后是尾部比特。該記號(hào)比特簡(jiǎn)單表示該記號(hào)。帶有作為MSB的非零比特的數(shù)僅有一個(gè)標(biāo)題比特。零系數(shù)沒(méi)有尾部或記號(hào)比特。
在該值為非負(fù)整數(shù)的情況中,例如相對(duì)于象素的亮度所呈現(xiàn)的值的情況中,該順序可被用作為比特平面順序(即,從最高有效位到最低有效位比特平面)。在允許兩個(gè)解碼負(fù)整數(shù)的實(shí)施例中該記號(hào)比特的嵌入順序是與該整數(shù)的絕對(duì)值的第一非零比特相同的。因此,直至一非零比特被編碼為止不考慮該記號(hào)比較。例如,利用記號(hào)數(shù)量標(biāo)記法,數(shù)-7的16比特為 1000000000000111 在一比特平面基底上,前十二個(gè)決策為“無(wú)意義”或零。第1個(gè)1比特出現(xiàn)在該第十三個(gè)決策上。接著,記號(hào)比特(“頁(yè)”)將被編碼。在該記號(hào)被編碼之后,尾部比特被處理。第十五和第十六個(gè)決策均為“1”。
字?jǐn)?shù)校直 類似于FFT或DCT在不同子組中的系數(shù)表示不同的頻率。在該比特平面編碼之前相對(duì)于相互之間通過(guò)校直系數(shù)來(lái)執(zhí)行該量化。少量密集量化系數(shù)將朝向較近的比特平面(即向左位移)校直。因此,如果該流被舍住,則這些系數(shù)將具有比更多密集量化系數(shù)更多的比特來(lái)規(guī)定它們。
在一實(shí)施例中,為了在SNR或MSE項(xiàng)中的最佳比率失真特性而校直該系數(shù)。另外,該校直可允許該系數(shù)數(shù)據(jù)的-physchovisual量化。在該圖象品質(zhì)的演變上(或換句話是在速率-失真曲線上)該校直具有有效的碰撞,而在無(wú)損耗系統(tǒng)的最后壓縮比上具有可忽略不計(jì)的碰撞。
在二級(jí)TS變換分解中來(lái)自每個(gè)象素具有b比特的輸入圖象的各種系數(shù)的比特澤度由圖12示出。為了校直該系數(shù),將1HH系數(shù)尺寸用作參考,并且移位是相對(duì)這個(gè)尺寸給出的。表1示出了這種校直過(guò)程的一個(gè)例子。
表1系數(shù)校正的例子,b=81-HH 參考x-HL或x-LH左3x-HL或x-LH左2x-HL或x-LH左1x-HL或x-LH無(wú)x-HL或x-LH右1 應(yīng)注意的是符號(hào)比不是MSB并且由第1尾部比特編碼。重要的是校直簡(jiǎn)單地控制該順序,該比特被送至熵編碼器。不執(zhí)行實(shí)際的填充、移位、存貯或額外的零比特的編碼。
上下文模式 下面介紹本發(fā)明所使用的水平線上下文模式的一實(shí)施例。該模式基于該系數(shù)的空間和頻譜的相關(guān)性而使用在一編碼單元內(nèi)的比特。該相鄰系數(shù)的可用的二進(jìn)制數(shù)值和母體系數(shù)可用于建立上下文。但是該上下文是用來(lái)可譯碼的原因并且為了適應(yīng)系數(shù)是很小的數(shù)量。
熵編碼 在一實(shí)施例中,由本發(fā)明執(zhí)行的熵編碼是由二進(jìn)制熵編碼器執(zhí)行的。在一實(shí)施例中,熵編碼器104包括一Q編碼器、一有限狀態(tài)機(jī)器編碼器、一高速并行編碼器等。一單一編碼器可用來(lái)產(chǎn)生一單一輸出代碼流。另外,多個(gè)(實(shí)際的或虛擬的)代碼器可用于產(chǎn)生多個(gè)(實(shí)際的或虛擬的)數(shù)據(jù)流。
在一實(shí)際例中,本發(fā)明的該二進(jìn)制熵編碼器包括-Q編碼器。對(duì)于該Q編碼器的更多的情況請(qǐng)見(jiàn)Pennebaker,W.B.,et al“An Overview of the BasicPrinciples of the Q-Coder Adaptive Binary Arithmetie”,IBMJournal of Research and Dvelopment,Vol.32,pg.717-26,1988。在另一個(gè)實(shí)施例中,一二進(jìn)制熵編碼器使用一QM編碼器(這種編碼器是公知的)和高效二進(jìn)制熵編碼器。在具有很高概率變形的比特中它是特別有效的。該QM編碼器是用于JPEG和JBIG標(biāo)準(zhǔn)中。
該二進(jìn)制熵編碼器包括一有限狀態(tài)機(jī)器(FSM)編碼器。這樣一種編碼器提供來(lái)自一概率的轉(zhuǎn)換和提供一輸出到被壓縮的比特流。在一實(shí)施例中,一有限狀態(tài)機(jī)器編碼器利用表實(shí)施對(duì)譯碼器和編碼器的查找。各種概率估算方法都可用于這種有限狀態(tài)機(jī)器編碼器。對(duì)于概率接近于0.5來(lái)說(shuō)壓縮是極好的。對(duì)于高地變形的概率的壓縮取決于所使用的查找表的尺寸。如像該QM編碼器,因?yàn)樵摏Q策是以出現(xiàn)的順序編碼的,所以與被嵌入的比特流一起它是有用的。因?yàn)樵撦敵鍪怯梢徊檎冶硪?guī)定的,所以不會(huì)存在用于“轉(zhuǎn)移”問(wèn)題的可能性。實(shí)際上,與Q和QM編碼器不同,在被壓縮的輸出比特的編碼和形成之間存在有一最大的延遲。在一實(shí)施例中,本發(fā)明的有限狀態(tài)機(jī)器編碼器包括有一在美國(guó)專利NO.5,272,478(名稱為“用于熵編碼的方法和裝置”
公開(kāi)日為1993年12月21日)中所指出的B編碼器。
在一實(shí)施例中,本發(fā)明的該二進(jìn)制熵編碼器包括一高速并行編碼器。QM編碼器和FSM編碼器一次需要被編碼或被譯碼的1比特。該高速并行編碼器并行處理幾個(gè)比特。在一實(shí)施例中,該高速并行編碼器以VLSI硬件或多處理器計(jì)算機(jī)實(shí)施而不會(huì)犧牲壓縮特性。在本發(fā)明中可被使用的高速并行編碼器的一個(gè)實(shí)施例在美國(guó)專利NO 5,381,145(名稱為“用于數(shù)據(jù)的并行譯碼和編碼的方法和裝置”,
公開(kāi)日為1995年1月10日)中被披露。
大多數(shù)的高效二進(jìn)制熵編碼器通過(guò)基本的反饋環(huán)路來(lái)限制速率。該編碼器的輸出是多重可變長(zhǎng)度編碼數(shù)據(jù)流。具有這種處理類型的一個(gè)問(wèn)題是如何在一單一通道上傳送該數(shù)據(jù)。在美國(guó)專利NO.5,381,145中所披露的該高速并行編碼器與交叉存取這些編碼數(shù)據(jù)的方法一起解決這個(gè)問(wèn)題。
在本發(fā)明中使用的上下文的大多數(shù)是固定概率的,構(gòu)成一有限狀態(tài)機(jī)器編碼器,例如B編碼器特別地有用。當(dāng)一系統(tǒng)使用的概率接近0.5時(shí),上述的高速并行編碼器和有限狀態(tài)機(jī)器編碼器具有比Q編碼的更高的效率。因此,它們?cè)谟帽景l(fā)明的上下文模式時(shí)具有潛在壓縮優(yōu)點(diǎn)。
本發(fā)明的編碼和譯碼處理 下面結(jié)合圖13-15的流程圖說(shuō)明本發(fā)明的編碼和譯碼的一實(shí)施例。這些過(guò)程可由硬件或所帶軟件來(lái)完成。在任一種情況中,參照所制作的處理邏輯可表示另一種情況。
圖13示出了本發(fā)明的編碼過(guò)程的一實(shí)施例。參見(jiàn)圖13,通過(guò)所具有的處理邏輯對(duì)于一編碼單元獲取一摻入數(shù)據(jù)開(kāi)始編碼處理(處理框1301)。接著,處理邏輯將可逆濾波器加到該編碼單元的輸入數(shù)據(jù)單元(處理框1302)。
判斷是否另一分解級(jí)是所希望的(處理框1303)。如果是,則處理邏輯將該可逆濾波器加到LL系數(shù)上(處理框1304),并且該處理環(huán)返回并在處理框1303中繼續(xù)進(jìn)行處理。如果另一個(gè)分解級(jí)不是所希望的,則處理在處理框1305中繼續(xù)進(jìn)行處理,在那里處理邏輯變換該系數(shù)為符號(hào)/數(shù)量形式。
在變換該系數(shù)為符號(hào)/數(shù)量形式之后,一比特平面變量S被設(shè)置為最高有效位比特平面(處理框1306)。然后,該處理邏輯隨意地初始化該熵編碼器(處理框1307)。
一旦該熵編碼器被初始化,處理邏輯用該上下文模式和熵編碼的該比特模擬每一系數(shù)的每一比特(處理框1308)。在熵編碼該比特之后,該數(shù)據(jù)被傳送或存貯(處理框1309)。
之后,判斷在該圖象中是否還存在有編碼單元(處理框1310)。如果還有編碼單元,則處理繼續(xù)到處理框1301。另一方面,如果沒(méi)有更多的處理單元,則處理結(jié)束。
圖14示出了本發(fā)有譯碼處理的一實(shí)施例。參見(jiàn)圖14,通過(guò)處理邏輯對(duì)于一編碼單元復(fù)原編碼數(shù)據(jù)而開(kāi)始處理(處理框1401)。接著可逆S被置為最高有效位比特平面(處理框1402)。在設(shè)置該比特平面可逆S為最高有效位比特平面之后,處理邏輯隨著地初始化該熵編碼器(處理框1403)。
在該熵編碼器被初始化后,處理邏輯將每一系數(shù)的初始值設(shè)置為零(處理框1404)。然后處理邏輯用上下文模式和熵譯碼器模擬每一系數(shù)的每一比特(處理框1405)并且將系數(shù)轉(zhuǎn)換成用于濾除的適當(dāng)形式(處理框1406)。該轉(zhuǎn)換可以從比特有效位轉(zhuǎn)換為2的補(bǔ)碼形式。之后,處理邏輯從分解的最高級(jí)將一反向?yàn)V波器加到該系數(shù)啟始(處理框1407)。
判斷是否所有的級(jí)被反向?yàn)V除(處理框1408)。如果所有的級(jí)未被反向?yàn)V波,則處理邏輯從下一個(gè)分解的最高級(jí)將反向?yàn)V波器加到該系數(shù)(處理框1409),并且在處理框1408繼續(xù)處理。如果所有的級(jí)均被反向?yàn)V除,則在處理框1410上繼續(xù)處理,在那里重建數(shù)據(jù)被存貯或被傳送。在存貯該被傳送的重建數(shù)據(jù)之后,判斷是否存在有更多的編碼單元(處理框1411)。如果存在有更多的編碼單元,處理環(huán)路返回并在處理框1401上繼續(xù)處理,在那里處理被反復(fù)進(jìn)行。如果不存在更多的編碼單元,則處理結(jié)束。
圖15示出了根據(jù)本發(fā)明用于造型的處理的一實(shí)施例。參見(jiàn)圖15,通過(guò)向第一系數(shù)設(shè)置一系數(shù)變量而開(kāi)始對(duì)于造型比特的處理(處理框1501)。然后判斷是否1C1>2s。如果是,處理繼續(xù)在處理框1503上進(jìn)行,在那里利用對(duì)于尾部比特的該模式,處理邏輯編碼系數(shù)C的比特S并且繼續(xù)在處理框1508處理。用于尾部比特的模式可以是一固定的(非自適應(yīng)的)模式。如果C不大于2s,則處理繼續(xù)在處理框1504進(jìn)行處理,在那里處理邏輯提供一用于標(biāo)題比特的樣板(即,初始為0和第1為“1”比特)。在提供該樣板之后,處理邏輯編碼系數(shù)C的比特S(處理框1505)??赡艿臉影迦鐖D26A-C所示。如圖19A和19B中所示,樣板可用LUTs來(lái)實(shí)施。
接著,判斷是否系數(shù)C的比特S是通(on)(處理框1506)。如果系數(shù)C的比特S沒(méi)有on,則處理繼續(xù)在處理框1508進(jìn)行處理。另一方面,如果系數(shù)C的比特X是on,則處理繼續(xù)在處理框1507進(jìn)行處理,在那里處理邏輯編碼該符號(hào)比特。此后,處理繼續(xù)在處理框1508進(jìn)行。
在處理框1508,判斷是否系數(shù)C是最后的系數(shù)。如果系數(shù)C不是最后的系數(shù),則處理繼續(xù)在處理框1509進(jìn)行,在那里系數(shù)變量C被置為下一個(gè)系數(shù)并且處理繼續(xù)在處理框1502進(jìn)行。另一方面,如果系數(shù)是最后系數(shù),則處理在處理框1510進(jìn)行處理,在那里判斷是否S是最后比特平面如果S不是最后比特平面,則比特平面變量S被遞減1(處理框1511),并且處理繼續(xù)在處理框1501進(jìn)行。如果S是最后比特平面,則處理結(jié)束。
本發(fā)明另外的實(shí)施例 本發(fā)明可以由硬件和/或軟件來(lái)實(shí)施。本發(fā)明的一硬件實(shí)施需要子波濾波器,存貯器/數(shù)據(jù)流管理以提供用于該濾波器的數(shù)據(jù),一上下文模式以控制本發(fā)明的嵌入編碼,存貯器/數(shù)據(jù)流管理以提供用于該上下文模式的數(shù)據(jù),和一二進(jìn)制熵編碼器。
子波濾波器 圖16示出了本發(fā)明的前向子波濾波器的一實(shí)施例。圖16中所示的子波濾波器容納有4個(gè)16比特2的補(bǔ)碼輸入象素,以x(2)-x(5)表示。
參看圖16,兩抽頭“11”低通濾波器使用一個(gè)16比特加法器1601。其輸出被分別稱之為S和D。使同移位一個(gè)比特方框1603使加法器的輸出(S)被舍位成16比特。通過(guò)將其17比特輸入向右移位一個(gè)比特,移位一個(gè)比特方框1603執(zhí)行除2功能。
6抽頭高通濾波器需要對(duì)-S0+4D1+S2進(jìn)行計(jì)算。利用接收移位一個(gè)比特方框1603的輸出和Y0(0)的減法器1605計(jì)算函數(shù)S2-S0。利用減法器1602、移位2個(gè)比特方框1604和加法器1608計(jì)算4D1項(xiàng)。利用稱位兩個(gè)比特方框1604使由16比特減法器1602產(chǎn)生的輸出向左移位兩個(gè)位置,借此以使它的輸出被乘以4。方框1604的輸出由加法器1608加到2。注意,由于移位了兩個(gè)比特,所以,加法器1608可以通過(guò)布線加以替換。把加法器的4D1輸出加到減法器1605輸出端上的工作是由20比特加法器1606執(zhí)行的。使用移位2個(gè)比特方框1607將加法器1606的輸出舍位為18比特,通過(guò)將其20比特輸入向右移位兩個(gè)比特,移位兩個(gè)比特方框1607執(zhí)行除4的功能。
因此,(用于存貯暫時(shí)結(jié)果的非計(jì)數(shù)寄存器)所需的總的計(jì)算硬件是 ·1@16比特加法器, ·2@16比特減法器, ·3@19比特加法器。
注意,移位(和加法器1608)是利用諸如不需要任何邏輯關(guān)系的布線執(zhí)行的。
在另一個(gè)實(shí)施例中,對(duì)于輸入尺寸N來(lái)講,可以使用一個(gè)N比特加法器,兩個(gè)N比特減法器和一個(gè)(N+3)比特加法器。
由于這些加法器和減法器的硬件成本極低,因此如果需要的話,還可以同時(shí)使用一個(gè)濾波器。
注意,取代減去x(3)和x(2),可以計(jì)算x(4)-x(5)并保留其結(jié)果直到以后作為用于下一次移位或?yàn)V波器應(yīng)用的x(2)-x(3)需要時(shí)為止。兩個(gè)正向?yàn)V波器(或下面將要描述的反相濾波器)可以形成流水線配置,以實(shí)現(xiàn)較高的吞吐量。
反相子波濾波器示于圖17。利用減法器1701減去Y0(0)和Y0(2)的輸入。利用加法器1709將2加到減法器1701的輸出上。并利用移位兩個(gè)比特方框1702將相加的結(jié)果向右移位兩個(gè)比特。這就使減法器的輸出被除以4。減法是在移位2個(gè)比特方框1704的輸出和Y1(6)輸入之間進(jìn)行的。輸入Y0(1)被移位一個(gè)比特方框1703向左移位一個(gè)比特,借此使該輸入乘以2。在Y0(1)被移位了一個(gè)比特(被乘以2)以后,移位值的LSB是取自減法器1704輸出的LSB并與來(lái)自移位一個(gè)比特方框1703的16比特輸出相組合以形成加法器1705和減法器1706的輸入。加法器1705和減法器1706的其它輸入是減法器1704的輸出。加法器1705和減法器1706的輸出。加法器1705和減法器1706的輸出接著被進(jìn)行箝位。
可以選擇兩種箝位操作。在這兩種情況下,20比特值被移位一個(gè)比特(9除以2)成為一個(gè)19比特值。對(duì)于僅執(zhí)行無(wú)損耗壓縮的系統(tǒng)來(lái)講,可以輸出最低有效16比特(其余3比特被忽略掉)。在有損耗(或有損耗/無(wú)損耗)系統(tǒng)中,如果19比特值是負(fù)的,那么它被置為零,如果它大于216-1,則將被設(shè)置成216-1,否則可以輸出最低有效16比特。
對(duì)于尺寸為N個(gè)比特的輸入而言,可以使用一個(gè)N比特減法器,一個(gè)(N+1)比特加法器、一個(gè)(N+2)比特加法器、一個(gè)(N+3)比特加法器和一個(gè)(N+3)比特減法器,且箝位單元輸出N個(gè)比特。
在子波變換的一個(gè)實(shí)施例中,在變換中使用了Monte Carlo除法,其中使用了偽隨機(jī)發(fā)生器,并根據(jù)它的輸出結(jié)果,變換操作的結(jié)果或上或下來(lái)回滾動(dòng)。只要譯碼器意識(shí)到這種滾動(dòng)一直在執(zhí)行(即使用相同的隨機(jī)發(fā)生器,在相同的點(diǎn)開(kāi)始),就可以使用這種工具。
用于與子波濾波器相關(guān)的數(shù)據(jù)流管理的存儲(chǔ)器 就用于本發(fā)明子波濾波器的存貯器和數(shù)據(jù)流管理而言,對(duì)于滿幀可以裝入存貯器的圖象存貯器/數(shù)據(jù)流管理不是一件困難的事情。即使是1024×1024的16比特醫(yī)學(xué)圖象(例如24兆字節(jié)規(guī)模),對(duì)于許多應(yīng)用來(lái)講,要求滿幀緩沖器也是合理的。對(duì)于較大的圖象(例如A4,400DPI4-彩色圖象的規(guī)模大約是50兆字節(jié)),也希望使用有限量行緩沖存貯器的子波變換。
注意,對(duì)于本發(fā)明的執(zhí)行一通過(guò)系統(tǒng)來(lái)講,滿幀緩沖器是不需要的。由于這一點(diǎn),所需存貯器可以被減少100倍(和使用與大圖象相關(guān)的滿幀緩沖器相比)。下面將描述本發(fā)明的一通過(guò)系統(tǒng)。
存儲(chǔ)在濾波緩沖器中的數(shù)據(jù)是一系列將被進(jìn)行嵌入編碼和二進(jìn)制熵編碼的系數(shù)。嵌入編碼使用上下文模型去配合水平(norizon)編碼的使用并提供適當(dāng)序列的數(shù)據(jù)。所述上下文模型和存貯的管理模式一起工作。對(duì)于使用滿幀緩沖器的系統(tǒng)來(lái)講,以適當(dāng)?shù)男蛄刑峁?shù)據(jù)是不困難的。
對(duì)于使用有限量工作區(qū)存貯器的系統(tǒng)來(lái)講,使用不同高度的變換以減少用于存貯所需的存貯器工作區(qū)行的數(shù)量。因此,如果遇到較寬的圖象,它就會(huì)被有效地壓縮在所分配的工作區(qū)存貯器內(nèi)。例如,可以垂直地使用S變換以減少行數(shù)。
存貯器需要對(duì)光柵(vaster)數(shù)據(jù)進(jìn)行緩沖,從而能夠執(zhí)行子波變換。在某些應(yīng)用中,使這個(gè)存貯器最小化對(duì)于減少成本來(lái)講是非常重要的。下面來(lái)描述實(shí)現(xiàn)這一點(diǎn)的技術(shù)。
這里所描述的子波2-D變換的一個(gè)實(shí)施例是為一通執(zhí)行和受限存貯器應(yīng)用而設(shè)計(jì)的。在一個(gè)實(shí)施例中,為實(shí)現(xiàn)熵解壓而使用的子波變換僅僅是TS和S變換。在這個(gè)實(shí)施例中,具有4級(jí)相互獨(dú)立的熵解壓。在一個(gè)實(shí)施例中,使用S和TS變換執(zhí)行4級(jí)解壓。在一個(gè)實(shí)施例中,在水平(行方向)解壓過(guò)程中,完全使用TS變換,即形成TS-TS-TS-TS的水平解壓。在垂直(列方向)解壓過(guò)程中,以TS-TS-S-S形式執(zhí)行S變換和TS變換。除對(duì)存貯器應(yīng)用方面有重要影響以外,都使用低成本的S變換來(lái)取代兩個(gè)TS變換。為通常情況一樣,水平和垂直變換被交替使用(圖20)。
注意,S和TS變換的任意組合都可被用于執(zhí)行水平和垂直變換。注意,雖然變換的順序可以是混合的,但解碼器必須意識(shí)到這個(gè)順序并必須以全可逆的反相順序執(zhí)行相反的操作。
系數(shù)樹(shù) —— 在熵系統(tǒng)中,可以使用樹(shù)結(jié)構(gòu)將系數(shù)分成多個(gè)組。每個(gè)樹(shù)的根是一個(gè)純的低通系數(shù)。圖6示出了變換后圖象一個(gè)純低通系數(shù)的樹(shù)結(jié)構(gòu)。對(duì)于諸如一個(gè)圖象的兩維信號(hào)來(lái)講,樹(shù)根具有3個(gè)“孩子”,其余節(jié)點(diǎn)中的每一個(gè)具有4個(gè)“孩子”。該樹(shù)不被分層地限定為兩維信號(hào)。例如,對(duì)于一維信號(hào)來(lái)講,樹(shù)根具有一個(gè)“孩子”,而非樹(shù)根的節(jié)點(diǎn)中的每一個(gè)具有兩個(gè)“孩子”。較高的維是由一維和二維情況得出的。
從示于圖7-9的濾波器的工作情況來(lái)看,其樹(shù)結(jié)構(gòu)是很明顯的。利用子取樣的一對(duì)濾波器的工作使得在前所描述的系數(shù)被涉及。
在一個(gè)實(shí)施例中,系數(shù)是在一個(gè)比特有效或比特平面嵌入系統(tǒng)中被編碼。由于該系數(shù)是從最高比特平面向最低比特平面進(jìn)行編碼的,所以必須確定在數(shù)據(jù)中比特平面的數(shù)量。在本發(fā)明中,這是通過(guò)荻得根據(jù)數(shù)據(jù)計(jì)算的系數(shù)值的幅值上限或得自圖象深度或?yàn)V波器系數(shù)的幅值上限而實(shí)現(xiàn)的。例如,如果上限是149,那么就有8個(gè)有效比特和8個(gè)比特平面。由于軟件中的速度問(wèn)題,可以不使用比特平面編碼。在另外一個(gè)實(shí)施例中,只有當(dāng)系數(shù)變得和二進(jìn)制數(shù)一樣有效時(shí),才使用比特平面編碼。
在一個(gè)實(shí)施例中,本發(fā)明的水平上下文模型包括被饋入給二進(jìn)制熵編碼器的子波系數(shù)比特有效嵌入編碼。
上下文模型的替換 一旦解壓被完成且數(shù)據(jù)系數(shù)被排序,本發(fā)明的上下文模型被用于對(duì)這些系數(shù)進(jìn)行編碼。有各種各樣可以被使用的上下文模型,其決定以空間位置、級(jí)和/或比特位置為條件。該決定還可以在空間位置、級(jí)和/或比特位置方向與當(dāng)前數(shù)據(jù)接近的先前譯碼的數(shù)據(jù)為條件。
下面是某些例子。最高有效尾部比特(和因此是最容易予側(cè)的)不同于尾部比特其余位的上下文。標(biāo)題比特可以由與在同一變換級(jí)中空間接近在前系數(shù)有拳同一比特決定。類似地,用于有效系數(shù)的符號(hào)可以由在同一級(jí)中空間接近在前系數(shù)的符號(hào)或本源系數(shù)的符號(hào)來(lái)決定。
當(dāng)對(duì)具有空間或多個(gè)分解結(jié)構(gòu)的圖象進(jìn)行壓縮時(shí),上下文模型的改進(jìn)可能是非常重要的行繪圖或文本的灰度圖象是具有這兩種結(jié)構(gòu)的圖象的例子。對(duì)于使用規(guī)定峰值誤差去壓縮那些已經(jīng)被壓縮和解壓的文件來(lái)講,這種改進(jìn)也是非常重要的。
當(dāng)利用軟件執(zhí)行本發(fā)明時(shí),由于所述比特需要決定狀態(tài)(例如每個(gè)首位),所以需要大量的時(shí)間去獲得與上下文相關(guān)的比特。在本發(fā)明的一個(gè)實(shí)施例中,通過(guò)使用查詢表(LUT)可以加速軟件的執(zhí)行。這避免了與用作上下文的北(N)西北(NW)、西(W)和西南(SW)等象素相關(guān)的單獨(dú)比特的提取操作。
圖19A和19B示出了本發(fā)明的與標(biāo)題比特狀態(tài)相關(guān)的狀態(tài)機(jī)構(gòu)。參看圖19A,用于新母體的LUT1901被耦合到編碼/解碼方框1902。LUT1901被耦合以接收表示母體的比特、表示以上(NE)系數(shù),當(dāng)前系數(shù)(E)和表示以下(S)系數(shù)的比特,在一個(gè)實(shí)施例中,本源輸入的當(dāng)前輸入各自包括兩個(gè)比特。到LUT1901的其它輸入包括作為反饋的來(lái)自LUT1901所有或部份的上下文輸出和編碼/解碼方框1902的輸出。在一個(gè)實(shí)施例中,作為L(zhǎng)UT1901上下文的10個(gè)比特輸出中的8個(gè)被反饋到LUT1901的輸入端上。
由于NE、E和S代表包括有與各種比特平面相關(guān)的信息的樣板信息的前沿,所以它們要被使用。注意,除了南(S)系數(shù)以外,西南(SE)系數(shù)也可以使用。
在一個(gè)實(shí)施例中,如果樣板位于編碼單元以外,那么可以利用來(lái)自當(dāng)前象素的比特代替外部狀態(tài)比特。
圖19B示出了使用與同一母體相關(guān)的LUT的狀態(tài)機(jī)構(gòu)的狀態(tài)。在這種情況下,全部上下文被作為輸入反饋給LUT1903。
在利用光柵順序?qū)?shù)據(jù)進(jìn)行處理的地方由于被用于產(chǎn)生最后上下文的同一個(gè)存貯器不再被重新裝載,所以,使用LUT減少了存貯器存取的數(shù)量。
為了減少LUT存貯器的規(guī)模,還可以利用僅處理其它條件的LUT的輸出通過(guò)ORing分別處理母體狀態(tài)。
可以用一個(gè)稍大的LUT表來(lái)最大程度地提供與下一個(gè)比特平面相關(guān)的狀態(tài)。另外一個(gè)較小的表用來(lái)提供來(lái)自當(dāng)前上下文LUT的狀態(tài)信息并使之與來(lái)自下一個(gè)比特平面的新得到的數(shù)據(jù)相結(jié)合。如果在此時(shí)對(duì)一個(gè)樹(shù)進(jìn)行編碼的話,這將是非常有用的。
如上面就本發(fā)現(xiàn)所述,“系數(shù)”可以被規(guī)定成表示決定因素為1的變換。在這種情況下,通過(guò)當(dāng)?shù)透怕适橇銜r(shí)保留用于對(duì)低概率事件進(jìn)行編碼所使用的空間使得代碼空間不會(huì)被浪費(fèi)。但是,8比特系數(shù)仍被輸入并且產(chǎn)生一個(gè)8比特系數(shù)一個(gè)9比特系數(shù)。因此仍可以改善效率。所增加的低效率是由于可通過(guò)系數(shù)空間的旋轉(zhuǎn)而致。
應(yīng)當(dāng)注意,變換操作的某些結(jié)果唯一的識(shí)別在計(jì)算中以使用的量,這發(fā)生在這些結(jié)果接近這些可能結(jié)果的范圍的邊界時(shí)。這樣的一個(gè)例子示于圖18,其中,μ代表低通而v代表高通。由于u和v的值不是獨(dú)立的,所以,在考慮到連接信息的情況下很容易對(duì)這些易進(jìn)行熵編碼。為圖18所示,對(duì)于大多數(shù)低通值來(lái)講,這是由于用于高通的某些代碼空間未被使用的緣故。在很多應(yīng)用中,由于指定給這些不可能對(duì)的概率極低,所以,這也有一點(diǎn)優(yōu)異。但是,在某些應(yīng)用中,這可能有相當(dāng)大的好處。為了加速操作,在LH,HL和HH系數(shù)之前應(yīng)當(dāng)傳送更多的LL系數(shù)。這可以使得劃界更容易。
在某些實(shí)施例中,在每個(gè)編碼單元被編碼以后,一切都復(fù)位,當(dāng)時(shí)第二個(gè)單元進(jìn)行編碼時(shí),統(tǒng)計(jì)量和概率被復(fù)位。在一個(gè)實(shí)施例中,某些或所有的統(tǒng)計(jì)量都被保留。然后這些統(tǒng)計(jì)量被作為一個(gè)后邊編碼單元開(kāi)始編碼時(shí)的最初統(tǒng)計(jì)量在一個(gè)實(shí)施例中,該統(tǒng)計(jì)量可以被保留在第一或先前編碼單元編碼過(guò)程中的某一預(yù)定點(diǎn)處。例如,在第三比特平面編碼之后,對(duì)當(dāng)前編碼單元進(jìn)行編碼的所使用的統(tǒng)計(jì)量被保留并且用作對(duì)下一個(gè)編碼單元或以后的編碼單元開(kāi)始編碼時(shí)的統(tǒng)計(jì)量。在另一個(gè)實(shí)施例中,評(píng)價(jià)所有圖象的分類并確定統(tǒng)計(jì)量的硬編碼組。然后,使用這些硬編碼統(tǒng)計(jì)量作為缺席規(guī)劃執(zhí)行編碼。在另外一個(gè)實(shí)施例中統(tǒng)計(jì)量被保留以用于每一個(gè)比特平面,從而當(dāng)對(duì)處于另一個(gè)之中的類似比特平面進(jìn)行編碼時(shí)使用這些統(tǒng)計(jì)量。
在一個(gè)實(shí)施例中,在第一個(gè)一比特之前沒(méi)有編碼。在系數(shù)中發(fā)生第一個(gè)一比特時(shí),對(duì)符號(hào)進(jìn)行編碼。雖然首位是一個(gè)從屬的圖象/區(qū)域,但對(duì)于不同的圖象和區(qū)域來(lái)講,尾部比特是更加唯一的。根據(jù)尾部比特距離最初一個(gè)比特(右標(biāo)題比特內(nèi))有多遠(yuǎn),可以使用某些概率分類對(duì)尾部?jī)?nèi)的比特進(jìn)行編碼。在一個(gè)實(shí)施例中,利用包括0.7在內(nèi)的概率分類對(duì)系數(shù)內(nèi)的第一個(gè)尾部比特進(jìn)行編碼,利用包括0.6在內(nèi)的概率分類對(duì)第二和第三尾部比特編碼,最后,利用包括0.5在內(nèi)的概率分類對(duì)第四和以后的尾部比特進(jìn)行編碼。
A執(zhí)行子波變換 在一通過(guò)系統(tǒng)中,以執(zhí)行的子波變換是壓縮參數(shù)和所使用存貯器數(shù)量之間的拆衷方案。選擇編碼單元尺寸以用于具有最少解緩沖器的最少存貯器(假定以光柵順序傳送圖象)。子波變換的中間系數(shù)被存貯在同一個(gè)存貯器之內(nèi),以在適當(dāng)時(shí)取代輸入。
子波變換濾波器的選擇 這里所描述的子波2-D變換被設(shè)計(jì)來(lái)用于一通完成和有限存貯器。共有四級(jí)單獨(dú)解壓。在水平解壓過(guò)程中,僅使用TS變換,即使形成TS-TS-TS-TS水平解壓。在垂直解壓中,使用S和TS兩種變換。且垂直解壓形成為T(mén)S-TS-S-S解壓。水平和垂直解壓交替使用。圖20示出了水平和垂直解壓。
除了在存貯器應(yīng)用方面的有效壓縮以外,在無(wú)損耗壓縮過(guò)程中使用低成本的S變換代替兩個(gè)TS變換。在最后兩次垂直通過(guò)中選擇使用S變換僅用于少量的存貯器。S變換的使用大約保留了系數(shù)緩沖器的32行(例如來(lái)自48行的16行以下)。注意,對(duì)所有的解壓使用TS變換并不是提供更好的壓縮性能。
編碼單元的規(guī)定 在一個(gè)實(shí)施例中,編碼單元是由樹(shù)的一行(LL系數(shù)或所有它們的下節(jié)點(diǎn)的一行)規(guī)定的。利用四級(jí)介壓,這意味著在空間域中,編碼單元是16行乘以圖象寬度。圖21示出了一個(gè)編碼單元。注意,圖21并沒(méi)有按比例去畫(huà)。級(jí)1方框是一個(gè)2-D介壓之后的圖象。為了重復(fù),名稱LL(低-低)、LH(低-高)、HL(高-低)和HH(高-高)被用于對(duì)子方框?qū)ぶ凡⒈惶峁┙o所有的級(jí)1-4方框。級(jí)2方框是在級(jí)1方框中子方框LL 2-D介壓的結(jié)果。類似的,方框3和4分別是在級(jí)2方框和級(jí)3方框中子方框LL 2-D介壓的結(jié)果。
編碼單元在級(jí)1中對(duì)于HH、HL和LH系數(shù)是8行高、在第二級(jí)中是4行高,在第三級(jí)中是2行高,而在第4級(jí)和LL子方框中則是一行,注意,當(dāng)分解在每個(gè)步驟減少時(shí),行的數(shù)量以及長(zhǎng)度減半。在級(jí)4方框LL中的每個(gè)系數(shù)是一個(gè)樹(shù)的最高母體。
緩沖和系數(shù)計(jì)算 為了產(chǎn)生一個(gè)在圖21中所述的編碼單元,可以使用其尺寸為2.w.m的工作區(qū)緩沖器,其中,w是圖象的寬度,m是一個(gè)比特內(nèi)的最大系數(shù)尺寸。由于為垂直變換(即行方向上)通過(guò)所選擇的子波濾波器的特性,工作區(qū)存貯器的要求大約是18-20行。每次一行的計(jì)算所有的都是TS變換的每一個(gè)水平變換(即行方向上)的通過(guò)并用新的系數(shù)取代老的系數(shù)或象素。
頭兩遍垂直變換使用TS變換濾波器。由于是6抽頭高通濾波器,所以,在垂直通過(guò)中的每個(gè)高通系數(shù)取決于任一象素系數(shù)數(shù)據(jù)的6行。所產(chǎn)生的高通TS系數(shù)涉及到其下面4行用于重疊的頂部?jī)尚?。這示于圖22。參看圖22,該圖示出了一個(gè)編碼單元的垂直圖象段。該編碼單元的垂直圖象段是正在利用TS變換的水平通過(guò)進(jìn)行變換的原始圖象的結(jié)果。這里示出了一個(gè)編碼單元垂直級(jí)1段并且是該圖象的第一個(gè)級(jí)2-D變換。通過(guò)利用TS變換執(zhí)行水平通過(guò)獲得垂直級(jí)1段。還示出了一個(gè)編碼單元的垂直級(jí)2段,該段是通過(guò)在兩維上對(duì)級(jí)1方框的LL子方框執(zhí)行TS變換而產(chǎn)生的。
應(yīng)當(dāng)注意,由于TS變換是被4個(gè)象素(或系數(shù)覆蓋的,所以4行數(shù)據(jù)在編碼單元的末端處被保留下來(lái),以備對(duì)下一個(gè)編碼單元的系數(shù)進(jìn)行計(jì)算時(shí)加以使用。換言之,為了建立級(jí)1系數(shù),在頂部和底部需要兩個(gè)額外的象素行或左底部需要4個(gè)額外行。為了建立級(jí)2系數(shù),在頂部或底部需要2個(gè)額外的級(jí)1系數(shù)行或在底部需要4個(gè)。為了建立這些額外的級(jí)1系數(shù),在頂部和底部需要另外的兩個(gè)象素行或在底部需要4個(gè)。因此,每個(gè)編碼單元要跨躍28個(gè)垂直行。
但是重要的是,由于這些“額外”的級(jí)1系數(shù)將被用于當(dāng)前編碼單元之下或之下的編碼單元,所以不需要額外的計(jì)算去產(chǎn)生它們。另外還應(yīng)當(dāng)注意,由于只存貯級(jí)2系數(shù),所以只需要存貯器的20行。
最后兩個(gè)垂直通過(guò)是S變換,它在低通情況下沒(méi)有重疊,因此不需要額外的行。
用于變換計(jì)算的存貯器 有關(guān)尺寸方向給出的象素值或系數(shù)值是b比特(在-2b-1,···,0,···2b-1-1的范圍之內(nèi)),s變換和TS變換的平滑輸出S(.)也是b比特。換言之,它們與輸入具有相同范圍。但是,S變換和TS變換的一組細(xì)節(jié)輸出d(.)將利用b+1,b+2分別加以表示。
圖23示出了除編碼單元以外所需的某個(gè)行緩沖?;疑珔^(qū)域和箭頭是部份當(dāng)前編碼單元的系數(shù),它們需要被保存在存貯器中以用于當(dāng)前編輯。虛線箭頭是在編碼單元中計(jì)算系數(shù)所需的暫時(shí)系數(shù)。這此系數(shù)將被新的系數(shù)所改寫(xiě)、實(shí)線箭頭表示這樣的系數(shù),即它們是當(dāng)前編碼單元系數(shù)計(jì)算的付產(chǎn)品并被保留以作為下一個(gè)編碼單元的一部份。
這些系數(shù)的最后一級(jí)(級(jí)4)是所有4個(gè)子方框(LL.LH.HL.HH)中的單一一行。僅參看垂直變換,從級(jí)3到計(jì)算級(jí)4僅使用了S變換,所以,所有子方框在級(jí)3中僅需要系數(shù)的兩行。類似地,從級(jí)2到計(jì)算級(jí)3在計(jì)算級(jí)2中需要4行。所有的這些系數(shù)都是當(dāng)前編碼單元的一部份。
為了計(jì)算級(jí)2和級(jí)1的垂直通過(guò),使用TS變換。由于6抽頭高通重疊濾波器的重疊特性,這些級(jí)需要來(lái)自下一個(gè)編碼單元的數(shù)據(jù)。這些數(shù)據(jù)被用于計(jì)算當(dāng)前編碼單元中的系數(shù)并被存貯起來(lái)以用于下一個(gè)編碼單元。
為了計(jì)算級(jí)2(LH.HH)中來(lái)自級(jí)1的高通子方框,需要12行(8行到4行來(lái)自下取樣,和4個(gè)額外行用于重疊)。這些行在圖23的級(jí)1(LL.HL)低通子方框中示出,其中8行是當(dāng)前編碼單元的一部份,4行是下一個(gè)的一部分。
為了計(jì)算在級(jí)1(LL.LH)的低通子方框中的12行,需要從級(jí)0開(kāi)始的24行,0在級(jí)0處的這24行能夠建立在級(jí)1的高通子方框中的10行(16行到8行來(lái)自下取樣,4個(gè)額外行用于重疊)。即使僅有8行需要用于當(dāng)前編碼單元,但計(jì)算這所有10行并在級(jí)1處存貯它們是非常重要的。因此,只有4個(gè)用于重疊的額外行在級(jí)0處被保留下來(lái)。
對(duì)于可分離2-D變換來(lái)講,從象素深度b的圖象開(kāi)始,在行和列二者的情況下,變換是TS,對(duì)于LL,HL,LH和HH子方框來(lái)講,系數(shù)范圍分別是b,b+2和b+4。在可分離2-D變換包括水平TS和垂直S變換的情況下,對(duì)于LL,HL,LH和HH來(lái)講,系數(shù)范圍分別是b,b+1,b+2和b+3。表2,3,4,5和6示出了與每個(gè)方框所需存貯器的計(jì)算。注意,該計(jì)算是根據(jù)與寬度為W的圖象相關(guān)的比特的尺寸而進(jìn)行的,每個(gè)方框中的一個(gè)是 表2一用于級(jí)0的存儲(chǔ)器成本 表3一用于級(jí)1的存貯器成本 表4一用于級(jí)2的存貯器成本 表5一用于級(jí)3的存貯器成本 表6一用于級(jí)4的存貯器成本 把上述所有的量相加等于

約等于(26b+56)·W比特。大尺寸的兩行計(jì)算緩沖器,即b+4比特加上2·(b+4)·W比特導(dǎo)致了(28b+64)·W比特。例如,對(duì)于一個(gè)8比特512象素寬的圖象來(lái)講,需要147.456比特或約18K字節(jié)。
在一個(gè)實(shí)施例中,變換的規(guī)模是根據(jù)圖象的寬度和可以得到的存貯器的固定尺寸進(jìn)行選擇的。換言之,一個(gè)特殊圖象可以被輸入到本發(fā)明的系統(tǒng)中,并且由于可荻得的變換存貯器的數(shù)量有限,所以解壓級(jí)的數(shù)量減少。如果可以獲得更多的存貯器,那么,解壓縮級(jí)的數(shù)量可以增加。注意,當(dāng)系統(tǒng)正在接收?qǐng)D象時(shí),這種情況可能不斷發(fā)生。如果可以得到足夠的存貯器,則可以通過(guò)子波濾波器饋入LL系數(shù),以執(zhí)行附加級(jí)的解壓。注意,減少或增加級(jí)的數(shù)量這樣一個(gè)事實(shí)意味著分別減少或增加可以實(shí)現(xiàn)的壓縮的數(shù)量。
B.本發(fā)明的嵌入順序 代碼流的排序 圖24A示出了代碼流的排序以及在編碼單元內(nèi)的排序。參看圖24A,在標(biāo)題2401之后跟隨有從頂部到底部的編碼單元2402。在編碼單元內(nèi),LL系數(shù)2403不以光柵(行)順序進(jìn)行編碼。在LL系數(shù)之后是從最高有效比特平面到最低有效比特平面的一次一個(gè)比特平面進(jìn)行熵編碼的數(shù)據(jù)。然后在第二比特平面之前,來(lái)自每個(gè)系數(shù)的第一比特平面被進(jìn)行編碼,等。
系數(shù)的排列 在本發(fā)明的一個(gè)實(shí)施例中,上下文模型使用一個(gè)非規(guī)格化的1+z-1低通濾波器。但是,該上下文模型可以使用諸如

的規(guī)格化濾波器。
為了使用規(guī)格化濾波器,可以在正向子波濾波器1600和上下文模型105之間使用一個(gè)排列單元以對(duì)來(lái)自非規(guī)格化濾波器的增加(或損失)的能量進(jìn)行補(bǔ)償,這改善了壓縮。由于這種排列對(duì)于有損耗操作來(lái)講允許不均勻量化,所以,這種排列可以增強(qiáng)有損耗圖象重建的可視質(zhì)量。在一維情況下,來(lái)自該樹(shù)每一級(jí)的系數(shù)都將具有不同的排列(除數(shù)=、2、2、4,乘數(shù)=2、2、、1)。在兩維情況下,除數(shù)將是2、4、8、16,乘數(shù)將是8、4、2、1。
由于該排列僅用于類似于與編碼相關(guān)的二進(jìn)制判定的分組,所以使用精確格式化的值不是很關(guān)鍵的。在解碼期間,排列必須被反相,所以需要乘法和除法,使用被平方的乘數(shù)/除數(shù)允許硬件更有效地執(zhí)行操作。當(dāng)系數(shù)被平方時(shí),所增加的減少有效零比特不必進(jìn)行編碼。
系數(shù)排列可被用于調(diào)節(jié)和用于更好的非均勻量化。在(兩維信號(hào))圖象的情況下,RTS變換的一個(gè)實(shí)施例通過(guò)把頻帶乘以圖28所示的數(shù)來(lái)排列系數(shù)。乘以這些數(shù)導(dǎo)致RTS變換非常接近TS變換的精確重建的子波。
該一通過(guò)實(shí)施例僅使用了就與濾波器配對(duì)有關(guān)的MSE而言是最佳的一個(gè)排列。表7示出了排列號(hào)。利用有效位對(duì)系數(shù)進(jìn)行編碼,其中,第一比特平面是所有系數(shù)左邊最高量級(jí)的比特。在所述系數(shù)具有非零量級(jí)比特以前,用于每個(gè)系數(shù)的符號(hào)比特不被編碼。換言之,在第一個(gè)非零比特被編碼之后,立即對(duì)符號(hào)比特進(jìn)行編碼。它的優(yōu)點(diǎn)在于對(duì)于任一具有零量級(jí)的系數(shù)而言,可以不必對(duì)符號(hào)比特編碼,并且在嵌入代碼流內(nèi)的符號(hào)比特的相關(guān)點(diǎn)前不必對(duì)符號(hào)比特進(jìn)行編碼。對(duì)于一個(gè)象素深度為b的圖象而言,最大可能的系數(shù)幅值為2b+3-1,即數(shù)量為b+3比特。因此,每個(gè)系數(shù)都以b+3二進(jìn)制判定進(jìn)行編碼,并在需要時(shí)加上一個(gè)用于符號(hào)比特的附加的一個(gè)。
表7一系數(shù)排列 不同尺寸系數(shù)的排列被通知給編碼器和解碼器,并不在熵編碼器上進(jìn)行有效壓縮。
還應(yīng)當(dāng)注意,編碼單元每個(gè)方框的每個(gè)子方框都可能具有它自己可能的最大幅值范圍,這個(gè)范圍都要被通知給編碼器和解碼器。對(duì)于大多數(shù)子方框來(lái)講,具有一系列完整的決定性的二進(jìn)制零值,為提高效率起見(jiàn),這些零值都被熵編碼器忽略。
在每個(gè)比特平面期間的系數(shù)的處理順序是從低分辨率到高分辨率,從低頻到高頻。每個(gè)比特平面內(nèi)的系數(shù)編碼器是從高級(jí)(低分辨率,低頻)到低級(jí))(高分辨率,高頻率),如下 4-LL、4-HL、4-LH、4-HH、3-HL、3-LH、3-HH、2-HL、2-LH、2-HH、1-HL、1-LH、1-HH。
在每個(gè)子方框內(nèi),編碼按照光柵掃描順序。
注意,同一數(shù)據(jù)組的編碼單元可以具有不同的排列。在一個(gè)實(shí)施例中,排列可以被規(guī)定在諸如圖24A所示的標(biāo)題2401中的標(biāo)題內(nèi)。
水平上下文模型 圖25示出了與編碼單元每一系數(shù)相關(guān)的相系數(shù)。參看圖25,該圖利用非常明顯的圖表說(shuō)明諸如N=北,NE=東北等注釋了相鄰系數(shù)。
由于給定了諸如圖25中的P這樣一個(gè)系數(shù)和一個(gè)當(dāng)前比特平面,所以,在給定位平面之前,上下文模型可以使用來(lái)自所有編碼單元的任一信息。該信息的母體系數(shù)也被用于這個(gè)上下文模型。
不使用相鄰的或母體的系數(shù)值去確定與該系數(shù)的該比特相關(guān)的上下文,信一息被減少到這里被稱之為尾部信息的兩個(gè)比特。這個(gè)信息可以被存貯在存貯器中或根據(jù)鄰近的或母體系數(shù)不斷地進(jìn)行計(jì)算。尾部信息涉及到第一個(gè)非零幅值比特是否被觀測(cè)到(即第一個(gè)“on-bit”是否被觀察到)以及在此之后大約有多少比特平面。表8描述了尾部信息比特 表8-尾部信息的規(guī)定 根據(jù)2-比特尾部信息,尾部接通比特指出尾部信息是否為零。在一個(gè)實(shí)施例中,在2系數(shù)編碼之后,立即更新尾部信息和尾部接通比特。在另一個(gè)實(shí)施例中,較晚發(fā)生更新,以允許并行上下文產(chǎn)生。
作為一個(gè)例子,表9示出了尾部接通比特。作為比特平面的函數(shù),用于具有用二進(jìn)制為下表示的幅值的系數(shù)(“*”的意思是無(wú)論它是0還是1” 表9-是否是與所舉例上下文系數(shù)相關(guān)的尾部信息的表 第三種上下文信息是符號(hào)比特。由于符號(hào)比特是在第一個(gè)on-bit(非零比特)之后立即編碼的。所以,該尾部信息表示所述符號(hào)信息是否是已知的。因此,除非該尾部信息不是零(符號(hào)重新調(diào)用有三種可能即正、負(fù)或未知),否則該符號(hào)比特不是信息上下文。
系統(tǒng)的上下文模型使用高達(dá)11個(gè)比特去描述上下文。這個(gè)數(shù)量并沒(méi)有完全被規(guī)定,實(shí)際上只使用了包括符號(hào)比特上下文在內(nèi)的1030或1031個(gè)上下文。每一個(gè)比特位置的意義取決于在前的二進(jìn)制值。一個(gè)實(shí)施例遵循下述規(guī)則 如果該系數(shù)的尾部接通比特是零(用于首比特),那么來(lái)自母體和W系數(shù)的尾部信息比特的1024個(gè)上下文分別是NW、N、NE、E、SW和S系數(shù)的尾部非零比特。在一個(gè)實(shí)施例中,適當(dāng)?shù)木幋a被用于首比特。在某些實(shí)施例中,一個(gè)單一的上下文被用于提供首經(jīng)特的“運(yùn)行編碼”。如果緊接著將被編碼的16個(gè)比特全都是首比特并且它們的N、S、E和W相鄰和所有的母體的尾部信息為零,那么將對(duì)一個(gè)單一的判定進(jìn)行編碼。這個(gè)判定表明將被編碼的16個(gè)比特中的任一個(gè)是否有一個(gè)比特位于當(dāng)前比特平面處。如果沒(méi)有這樣一個(gè)比特,那么可以忽略被一般編碼的16個(gè)判定。如果下一個(gè)16個(gè)系數(shù)中的任一個(gè)包含有它們的第一個(gè)有效比特,則對(duì)于每個(gè)比特使用一次16個(gè)判定。這種“向前看”導(dǎo)致了較少調(diào)用二進(jìn)制熵編碼器,從而導(dǎo)致了較高的速度和較高的壓縮。
如果該系數(shù)的尾部接通比特是1(用于尾部比特),那么,三個(gè)上下文來(lái)自該系數(shù)的尾部信息比特)。如在前面的討論的,可以使用固定概率編碼。
如果該系數(shù)的該位是第一個(gè)非零幅值比特,那么該系數(shù)的符號(hào)比特在此后被立即編碼。與符號(hào)比特相關(guān)的上下文是來(lái)自N尾部比特和N符號(hào)比特的3個(gè)上下文,其中,如果N尾部比特是零,則N符號(hào)比特是未知的。如果N符號(hào)比特是未知的,利用概率0.5對(duì)符號(hào)進(jìn)行編碼,否則該符號(hào)被自適應(yīng)編碼。
總之,建立了11個(gè)比特量以表示來(lái)自從同一編碼單元中的當(dāng)前,相鄰和本源系數(shù)中可以獲得的信息的上下文。
圖26A-D示出了可以用于決定系數(shù)P狀態(tài)的因果和非因果系數(shù)。所以標(biāo)準(zhǔn)框中的每一個(gè)包括尾部比特和尾部信息的使用。當(dāng)每個(gè)系數(shù)的尾部比特提供一個(gè)比特時(shí),每個(gè)系數(shù)的尾部信息包括2個(gè)比特。在圖26A中,由標(biāo)準(zhǔn)框提供的比特總數(shù)是8。在圖26B和26C中,由標(biāo)準(zhǔn)框提供的比特總數(shù)是10。
附加比特可被用于決定系數(shù)P首比特的狀態(tài)。在一個(gè)實(shí)施例中,兩個(gè)附加的比特可以規(guī)定比特位置如下 00第一比特(MSB)和第二比特 01第三比特和第四比特 10第五比特和第六比特 11其它比特 應(yīng)當(dāng)注意,可以根據(jù)相鄰和母體系數(shù)來(lái)設(shè)計(jì)其它的標(biāo)準(zhǔn)框。另外,在一個(gè)實(shí)施例中,如果不是由比特平面定位的,那么用于決定系數(shù)P的系數(shù)是因果系數(shù)。
在一個(gè)實(shí)施例中,使用S變換母體而不是使用TS變換母體去決定狀態(tài)。這減少了通過(guò)在繼續(xù)為下一個(gè)編碼之前保留低通行去決定狀態(tài)所需的緩沖,它的缺點(diǎn)在于熵編碼的編碼器是重要的,而編碼器存貯器是不重要的。
注意,作為在上下文內(nèi)減少數(shù)據(jù)的結(jié)果,在具有更多的上下文去建立更多錯(cuò)位數(shù)據(jù)和自適應(yīng)效率之間存在著拆衷。
在一個(gè)實(shí)施例中,那些不需要決定狀態(tài)的尾部比特不被進(jìn)行(用于決定狀態(tài)的)緩沖。它們可以在被得到之后立即進(jìn)行編碼。在這種情況下,通道管理器可以直接將所述比特傳送給通道。
在一個(gè)實(shí)施例中,不以和其它系數(shù)相同的方式對(duì)處于最低解壓級(jí)的系數(shù)進(jìn)行編碼或根本不對(duì)它們進(jìn)行編碼,這些系數(shù)可以使用諸如DPCM的預(yù)測(cè)編碼進(jìn)行編碼。
對(duì)于尾部編碼比特來(lái)講,可以使用一次固定概率或自適應(yīng)。
就狀態(tài)決定而言,最后一個(gè)比特可以部份地根據(jù)第二到最后比特來(lái)決定狀態(tài)。另外,在第一個(gè)非零比特之后的比特可以根據(jù)它們距離第一個(gè)非零比特有多遠(yuǎn)來(lái)決定狀態(tài)。
在一個(gè)實(shí)施例中,某些尾部比特被自適應(yīng)編碼。例如,當(dāng)在系數(shù)9例如T=2、T=3)中的尾部比特少于T尾部比特時(shí),就使用自適應(yīng)編碼。與這些比特相關(guān)的上下文包括在當(dāng)前系數(shù)中的比特位置和任一先前編碼的尾部比特。這類似于Langdon就DPCM數(shù)據(jù)以教導(dǎo)的M進(jìn)制的中心編碼(the M-ary coding ofcenter)。
在另一個(gè)實(shí)施例中,某些或全部數(shù)據(jù)都利用M進(jìn)制的熵編碼器而不使用二進(jìn)制熵編碼器進(jìn)行編碼。M進(jìn)制的編碼器包括Tunstall編碼器、固定霍夫曼編碼器和自適應(yīng)霍夫曼編碼器等。例如,一個(gè)霍夫曼編碼可被用于首比特。在另外一個(gè)不是同時(shí)對(duì)首比特和一個(gè)比特進(jìn)行編碼的實(shí)施例中,使用優(yōu)先級(jí)編碼器來(lái)確定第一個(gè)非零比特的位置,然后利用二進(jìn)制熵編碼器對(duì)用二進(jìn)制表示位置的比特進(jìn)行編碼。
水平上下文模型。
本發(fā)明的上下文模型以方框圖的形式示于圖27。上下文模型2700包含有一個(gè)符號(hào)/幅值單元109(圖2)和三個(gè)用于對(duì)系數(shù)中的不同比特進(jìn)行處理的單元。根據(jù)正在被編碼的比特,選擇上述三個(gè)單元之一??梢园ㄒ粋€(gè)開(kāi)關(guān)以便于在硬件結(jié)構(gòu)單元中的轉(zhuǎn)換。這些單元包括首比特方框2701,符號(hào)比特方框2702和尾部比特方框2703。如上所述,首比特方框2701,符號(hào)比特方框2702和尾部比特方框2703分別構(gòu)型首比特、符號(hào)和尾部比特。這三個(gè)單元的輸出被傳送給熵編碼器104(圖4)。
編碼器包括可選擇控制,用于保留狀態(tài)(可選擇的)、提供最初狀態(tài)和復(fù)位編碼器(例如,在編碼單元結(jié)束處)。
除少數(shù)例外,上面以規(guī)定的上下文使用自適應(yīng)二進(jìn)制角熵碼器。當(dāng)N-tail-on=1時(shí)的首比特(該系數(shù)的尾部比特=0)和符號(hào)比特允許修改。
但是,taril-on=1之后的比特和N-tail-on=0時(shí)的符號(hào)比特是由一個(gè)固定源來(lái)構(gòu)型的。在這種情況下,不需要熵編碼器的自適應(yīng)特性。事實(shí)上,該自適應(yīng)特性可能是一個(gè)效率很差的壓縮源。對(duì)于下面的上下文,使用根據(jù)Q-編碼器狀態(tài)所描述的固定(無(wú)自適應(yīng))狀態(tài)。
統(tǒng)計(jì)模型 當(dāng)N-taril-on=0(N系數(shù)的符號(hào)是未知的)時(shí),上下文被用于對(duì)符號(hào)比特進(jìn)行編碼,并且在固定Q-編碼器狀態(tài)0-概率近似為0.5處對(duì)上下文進(jìn)行編碼。
在固定Q-編碼器狀態(tài)4-概率近似0.7處對(duì)第一非零(位P信息=1)比特編碼之后,上下文被用于對(duì)第一個(gè)二進(jìn)制值進(jìn)行編碼。
在固定Q-編碼器狀態(tài)3-概率近似為0.6處對(duì)第一個(gè)非零比特(尾部信息=2)進(jìn)行編碼之后,上下文被有于對(duì)第二和第三個(gè)二進(jìn)值進(jìn)行編碼。
在固定Q-編碼器狀態(tài)0-概率近似為0.5處對(duì)第一個(gè)非零比特(尾部信息=3)進(jìn)行編碼之后,上下文被用于對(duì)第四和以后的二進(jìn)值進(jìn)行編碼。
在某些實(shí)施例中,在每個(gè)編碼單元之后,熵編碼被復(fù)位,所以與允許去修改(例如用于對(duì)第一個(gè)on-bit之前的二進(jìn)值進(jìn)行編碼的)上下文有關(guān)的修改容量是非常重要的。為了保持這個(gè)最低容量,可以計(jì)算一組初始狀態(tài),以用于來(lái)自例如某個(gè)數(shù)據(jù)串的這些上下文。
下面的敘述假設(shè)該系數(shù)是18個(gè)比特,且數(shù)入數(shù)據(jù)必需經(jīng)過(guò)4級(jí)解壓。
符號(hào)/幅值單元109的一個(gè)實(shí)施例示于圖28,它被用于將輸入系數(shù)轉(zhuǎn)換成一個(gè)符號(hào)/幅值格式。符號(hào)/幅值單元109被耦合以接收該系數(shù)的18個(gè)比特,它包括反相器2801和多路轉(zhuǎn)換器(MUX)2802。符號(hào)/幅值單元109輸出(例如是5比特值的)有效指示、(例如是17個(gè)比特的)輸入系數(shù)的假設(shè)、輸入系數(shù)1的符號(hào)和例如是7個(gè)比特的來(lái)自計(jì)數(shù)器2804的索引。
MUX2802被耦合,以接收直接輸入給符號(hào)/幅值單元109的系數(shù)的17個(gè)比特和來(lái)自兩個(gè)反相器2801的17個(gè)比特的反相比特。根據(jù)在MUX2802選擇輸入端接收到的符號(hào)比特(系數(shù)比特17),兩個(gè)輸入端的正值被輸出以作為一個(gè)假數(shù))。
編碼取舍 二進(jìn)制角錐編碼器被用于上下文和將要被編碼的比特。
對(duì)于利用比特平面編碼的比特平面,本發(fā)明使用了(以通用計(jì)算機(jī)為基礎(chǔ)的)保留進(jìn)位形式計(jì)算,從而使得計(jì)算能夠以適于由比特平面快速編碼的數(shù)據(jù)格式進(jìn)行。例如,在這樣一個(gè)執(zhí)行過(guò)程中,32個(gè)比特處理器可以同時(shí)計(jì)算在同一個(gè)比特平面內(nèi)的32個(gè)系數(shù)中每一個(gè)的一個(gè)比特,而不是全部系數(shù)中的一個(gè)。當(dāng)利用比特平面進(jìn)行編碼時(shí),使用這樣一個(gè)實(shí)施例導(dǎo)致速度增加。
由于一個(gè)編碼單元同時(shí)被編碼且所有編碼單元內(nèi)的系數(shù)都駐留在存貯器內(nèi),所以,除了需要修改二進(jìn)制熵編碼器以外,就不再需要利用存貯器去存貯上下文信息。例如,Q-編碼器需要保持與以有上下文有關(guān)的LPS(最低有效符號(hào))二進(jìn)制值以及用于被允許進(jìn)行修改的每個(gè)上下文的當(dāng)前狀態(tài)。由于Q-編碼器需要30種狀態(tài),所以,對(duì)于每個(gè)上下文來(lái)講需要6個(gè)比特(一個(gè)比特用于LSB,5個(gè)比特用于狀態(tài))。因此存貯器的存貯容量是1024×5=6150個(gè)比特。
注意,對(duì)于上述一通嵌入實(shí)施例來(lái)講不需要特殊的信號(hào)信息。如果壓縮級(jí)數(shù)是可變的,那么就需要至少標(biāo)題信息的3個(gè)比特。沒(méi)有被計(jì)算在壓縮比特之內(nèi)的用于該實(shí)施例的標(biāo)題如下 ·寬度,2字節(jié) ·高度,2字節(jié) ·輸入圖象每個(gè)象素的比特,1字節(jié)存貯器管理 對(duì)于在存貯器中存貯所有數(shù)據(jù)的系統(tǒng)或左通道中發(fā)送數(shù)據(jù)的系統(tǒng)來(lái)講,存在有關(guān)于在一通系統(tǒng)中編碼數(shù)據(jù)的存貯器管理問(wèn)題。在一通系統(tǒng)中,編碼數(shù)據(jù)必需被存貯以使其能夠以嵌入因果方式被訪問(wèn),從而使得可以在不損失較高有效數(shù)據(jù)的情況下丟掉一些較低有效數(shù)據(jù)。由于編碼數(shù)據(jù)的長(zhǎng)度是可變的,所以可以使用動(dòng)態(tài)存貯器分配。
在本發(fā)明的一個(gè)實(shí)施例中,嵌入編碼方式使用18個(gè)比特平面,由此給數(shù)據(jù)指定18個(gè)有效級(jí)。一通系統(tǒng)中的順序是“嵌入因果關(guān)系”,即,對(duì)與一個(gè)比特平面相對(duì)應(yīng)的事件進(jìn)行介碼不需要來(lái)自低順序比特平面的信息。在一個(gè)實(shí)施例中,在下一個(gè)樹(shù)的任一比特被編碼之前,來(lái)自該樹(shù)的所有比特被進(jìn)行編碼,所以,不同有效級(jí)的比特不會(huì)被分開(kāi)。對(duì)于那些不使用內(nèi)部狀態(tài)的編碼器而言,與霍夫曼編碼器類似,這不是問(wèn)題。但是許多具有更好壓縮的復(fù)雜壓縮使用內(nèi)部狀態(tài)。
解決與這些編碼器相關(guān)的這個(gè)問(wèn)題的途徑之一是使用18種不同的編碼器、設(shè)想是18個(gè)Q-編碼器芯片。在1992年3月17日授權(quán)的、發(fā)明名稱為“用于在記錄煤體上進(jìn)行記錄的數(shù)據(jù)壓縮”的美國(guó)專利5,097,261(langdon)中描述了一種允許使用9個(gè)Q-編輯器芯片的技術(shù)。一種校好的方式是使用流水線編碼器利用諸如在1995年1月10日援權(quán)的、發(fā)明名稱為“用于數(shù)據(jù)并行介碼和編碼的方法和裝置”的美國(guó)專利5,381,145中描述的那種單一的實(shí)際編碼器執(zhí)行不同的虛擬編碼。在這種編碼器中,與每一個(gè)概率相關(guān)的多個(gè)比特產(chǎn)生器狀態(tài)中的每一個(gè)被指定給一部份數(shù)據(jù)。例如,18個(gè)狀態(tài)中的每一個(gè)被指定給與18個(gè)比特?cái)?shù)據(jù)相關(guān)的特殊比特平面。在該編碼器中移位器內(nèi)的寄存器也被指定給每一部份數(shù)據(jù)。在該編碼器中,不執(zhí)行重疊,每一部份數(shù)據(jù)被簡(jiǎn)單地構(gòu)成一個(gè)比特信息包。
在多個(gè)實(shí)際或虛擬編碼器中任一種的實(shí)施例中,存貯器被分配給每一部份數(shù)據(jù)。當(dāng)壓縮完成時(shí),得到一個(gè)表示所分配的存貯器以及所分配存貯內(nèi)容的一個(gè)鍵接表。
如果存貯器過(guò)溢,則存貯器分配程序安排使得比較重要的數(shù)據(jù)去重寫(xiě)不太重要的數(shù)據(jù)。例如,一個(gè)數(shù)字?jǐn)?shù)據(jù)的最低有效位可能被首先重寫(xiě)。除了編碼數(shù)據(jù)以外,描述有多少存貯器波分配的信息也必須被存貯起來(lái)。
圖29示出了與三種有效級(jí)相關(guān)的動(dòng)態(tài)存貯器分配單元的例子。為了避免使本發(fā)明難于理解,僅描述了三級(jí),通過(guò)使用較大數(shù)量的級(jí),諸如8,16或18級(jí)。寄存器文件(或其它存貯器)保持一個(gè)與第一有效級(jí)相關(guān)的指針,并保持一個(gè)用于指示下一自由存貯區(qū)分配的指針。該存貯器被分成固定尺寸的頁(yè)。
最初,指定給有效級(jí)的每一指針指示存貯器一頁(yè)的開(kāi)始,而自由指針指示可以荻得的下一個(gè)存貯器頁(yè)。利用有效級(jí)識(shí)別的編碼數(shù)據(jù)被存貯在由相應(yīng)指針尋址的存貯器單元內(nèi)。然后指針增加到下一個(gè)存貯單元。
當(dāng)指針到達(dá)與當(dāng)前頁(yè)相關(guān)的最大值時(shí),作為一個(gè)鍵接利用當(dāng)前頁(yè)存貯在自由指針內(nèi)的下一個(gè)自由頁(yè)的起始地址。在一個(gè)實(shí)施例中,為此目的使用了一部份編碼數(shù)據(jù)存貯器或隔離存貯器或寄存器文件。當(dāng)前指針被置于下一個(gè)自由頁(yè)。增加自由指針。這些步驟使得一個(gè)新的存貯器頁(yè)被分配給一個(gè)特定的有效級(jí)并提供對(duì)含有與公共有效級(jí)相關(guān)的數(shù)據(jù)的存貯器頁(yè)的鍵接,從而使得可以在解碼期間確定分配順序。
當(dāng)存貯器內(nèi)的所有頁(yè)都處于使用之中,且存在有比存貯器內(nèi)最低有效數(shù)據(jù)更加有效的數(shù)據(jù)時(shí),執(zhí)行存貯器的重新賦值。描述了三種這樣的賦值技術(shù)。在所有這三種情況下,指定給最低有效數(shù)據(jù)的存貯器被重新指定給較多有效數(shù)據(jù),并不再存貯更低的有效數(shù)據(jù)。
首先,最低有效數(shù)據(jù)當(dāng)前正在使用的頁(yè)被簡(jiǎn)單地指定給較高有效位的數(shù)據(jù)。由于最典型的熵編碼器使用初始狀態(tài)信息,所以在那一頁(yè)事先存貯的所有最低有效數(shù)據(jù)都被丟失了。
其次,最低有效數(shù)據(jù)當(dāng)前正在使用的頁(yè)被指定給較高有效數(shù)據(jù),和先前情況不同,指針被置于該頁(yè)的末端,并且當(dāng)較高有效數(shù)據(jù)被寫(xiě)入該頁(yè)時(shí),相應(yīng)的指針被減少。這有一個(gè)優(yōu)點(diǎn),就是如果較高有效數(shù)據(jù)并不需要整個(gè)頁(yè)的話,那么就在該頁(yè)的開(kāi)始處預(yù)先保留了最低有效數(shù)據(jù)。
第三,代替正在被重新指定最低有效數(shù)據(jù)的當(dāng)前頁(yè),可以重新指定最低有效數(shù)據(jù)的任一頁(yè)。這需要對(duì)與所有頁(yè)相關(guān)的編碼數(shù)據(jù)獨(dú)立編碼,這可以減少所實(shí)現(xiàn)的壓縮。它還需要識(shí)別與所有頁(yè)的起點(diǎn)相對(duì)應(yīng)的未編碼數(shù)據(jù)。由于最低有效數(shù)據(jù)的任一頁(yè)都可以被丟掉,所以可以在量化過(guò)程中獲得較大的靈活性。
在整個(gè)圖象區(qū)域內(nèi)實(shí)現(xiàn)固定壓縮速率的系統(tǒng)中,第三種方法可能是最具吸引力的。規(guī)定數(shù)量的存貯器頁(yè)可以被分配給圖象的一個(gè)區(qū)域。較低有效數(shù)據(jù)是否保留取決于在一個(gè)特定區(qū)域內(nèi)實(shí)現(xiàn)的壓縮。注意,如果無(wú)損耗壓縮需要的存貯數(shù)量少于指定的存貯數(shù)量,那么指定給一個(gè)區(qū)域的存貯器不可能全部被利用。在圖象區(qū)域上實(shí)現(xiàn)固定速率的壓縮能夠支持對(duì)圖象區(qū)的隨機(jī)存取。
當(dāng)壓縮完成時(shí),如果需要的話,可以按照有效的順序?qū)?shù)據(jù)傳送給一個(gè)通道或存貯器設(shè)備。各種鍵接和指針都得將不再需要,并且執(zhí)行多通譯碼。另外,對(duì)于一通譯碼來(lái)講,可以保持到與每個(gè)有效級(jí)相關(guān)的數(shù)據(jù)的指針。
在某些應(yīng)用中,不可能使用某些有效級(jí)。例如,一個(gè)16比特的壓縮器可以被用于一個(gè)12比特的醫(yī)學(xué)圖象,這樣,與比特平面15···12相對(duì)應(yīng)的有效級(jí)將不被使用。在具有大頁(yè)和很多未使用有效級(jí)的情況下,由于不必將存貯器分配給它們,所以(當(dāng)該系統(tǒng)事先不知道某些級(jí)未被使用時(shí))將造成存貯器的浪費(fèi)。另外一種解決這個(gè)存貯器浪費(fèi)的方法是使用一個(gè)小的存貯器(或寄存器)去保持與每個(gè)有效級(jí)相關(guān)的計(jì)數(shù)。該計(jì)數(shù)將對(duì)在任何其它判定發(fā)生以前發(fā)生的“無(wú)效”判定的數(shù)量進(jìn)行跟蹤。相對(duì)于由未被使用有效級(jí)所使用的存貯器,存貯這些計(jì)數(shù)所需的存貯器必須被折衷選擇。
把數(shù)據(jù)從兩端寫(xiě)入到每一頁(yè)的能力可被用于更好地利用在系統(tǒng)中可以荻得的存貯器總量。當(dāng)所有的頁(yè)都被進(jìn)行了分配時(shí),在末端處具有足夠自由空間的任一頁(yè)被可以被分配以從其末端開(kāi)始加以應(yīng)用。對(duì)于保持跟蹤能夠滿足兩頁(yè)數(shù)據(jù)的存貯單元的容量來(lái)講,使用一頁(yè)兩末端的能力必須平衡。注意,這不同于數(shù)據(jù)類型之一是無(wú)效的并應(yīng)簡(jiǎn)單地加以重寫(xiě)的情況。
改進(jìn) 在一個(gè)實(shí)施例中,本發(fā)明提供了一種使用較小存貯緩沖器的無(wú)損耗壓縮。本發(fā)明能夠保留很多不同的應(yīng)用和設(shè)備環(huán)境。下面描述的技術(shù)所完成的各種特性可以使本發(fā)明的系統(tǒng)對(duì)于不同的應(yīng)用和目標(biāo)設(shè)備變得更加靈活。注意,對(duì)于本發(fā)明來(lái)講,不必在編碼時(shí)對(duì)分解率、象素深度、隨機(jī)存取和量化等作出選擇。
數(shù)據(jù)排列 關(guān)于數(shù)據(jù)排列,就利用本發(fā)明的系統(tǒng)對(duì)圖象和系數(shù)數(shù)據(jù)進(jìn)行排列方面可有一定數(shù)量的選擇。如在下面將要詳細(xì)描述的,這種選擇包括(不作為對(duì)本發(fā)明的限制)編碼單元的拼接、解壓級(jí)的數(shù)量、子波變換濾波器的選擇以及系數(shù)的校準(zhǔn)。照此,這些中的每一個(gè)都應(yīng)當(dāng)是用戶或系統(tǒng)設(shè)計(jì)者控制的參數(shù)。
如上所述,一個(gè)參數(shù)可以是編碼單元的拼裝。根據(jù)本發(fā)明的樹(shù)來(lái)規(guī)定所述編碼單元的高度和寬度。對(duì)于隨機(jī)存取而言,與每個(gè)編碼單元有關(guān)的編碼數(shù)據(jù)的起點(diǎn)可由代碼流中的指針或標(biāo)記符或標(biāo)題中的指針來(lái)指定。這將允許對(duì)不是圖象寬度的方框進(jìn)行存取。
另外一個(gè)可以被控制的參數(shù)是解壓級(jí)的數(shù)量。根據(jù)較多的解壓級(jí)數(shù)可以導(dǎo)致較好壓縮這樣一個(gè)事實(shí),改變解壓級(jí)的數(shù)量就是改變了壓縮性能。注意,當(dāng)較多的級(jí)需要較多的行緩沖器時(shí),解壓級(jí)數(shù)的變化也會(huì)影響存貯器的要求。對(duì)于企圖達(dá)到低于全分辨率的分辨率來(lái)講,可能需要較多的級(jí)。例如,如果原始圖象是2000dpi,那么就需要5級(jí)解壓去實(shí)現(xiàn)的62dpi。這允許在沒(méi)有解壓和子取樣的情況下在一個(gè)監(jiān)視器上進(jìn)行接近實(shí)際尺寸的將被顯示的高分辨率掃描。
用于在每一級(jí)中水平和垂直通過(guò)的子波變換濾波器的類型也是不同的。這允許不同的存貯器要求和壓縮性能。注意,系數(shù)的尺寸不隨級(jí)數(shù)的增加而增加。另外,由于子波變換是一個(gè)順序N變換,并且當(dāng)級(jí)數(shù)增加時(shí)只有少量的數(shù)據(jù)被變換,所以,多于較多級(jí)來(lái)講只有少量的計(jì)算量。
用于嵌入代碼流的目標(biāo)設(shè)備 對(duì)于一個(gè)特定的壓縮代碼流來(lái)講,可能有很多應(yīng)用目標(biāo)。可以指望有這樣一個(gè)代碼流,它可以利用較低的分辨率和全象素深度被傳送給監(jiān)視器,還可以指望有這樣一個(gè)指針,它具有全分辨率和較低的象素深度,另外,可以指望一個(gè)具有有限通道的固定速率實(shí)時(shí)設(shè)備或固定尺寸的有限存貯器設(shè)備。可能需要相同的代碼流以保留以有這些需要。圖34概括地示出了一個(gè)單一應(yīng)用可以服務(wù)的相關(guān)設(shè)備特性。
變換成譯碼代碼流分析程序 編碼和解碼器具有足夠速度并具有足夠帶寬的本發(fā)明的系統(tǒng)能夠從解壓后的圖象中提取所需的數(shù)據(jù)。另外,編碼器可以建立一個(gè)供上述設(shè)備中一個(gè)設(shè)備使用的代碼流。在編碼器處,一個(gè)圖象可被以傳統(tǒng)方式進(jìn)行量化或下取樣。
但是,本發(fā)明的優(yōu)點(diǎn)在于對(duì)于上述在一設(shè)備來(lái)講,不必解壓就可以在變換和解碼之前建立起一個(gè)可被分析的代碼流。這種分析程序示于圖35A和B。參看圖35A,分析程度方框3501接收無(wú)損耗比特流量并產(chǎn)生有損耗比特流。參看圖35B,分析程序方框3502接收有損耗比特流,并產(chǎn)生另一個(gè)有損耗比特流。但是,圖35B所示輸出和輸入之間的關(guān)系表明本發(fā)明具有等冪關(guān)系,這在后面祥要祥述。注意,在分析程序方框3501和3502的情況下,作為輸入所接收的數(shù)據(jù)比特速率大于正在被輸出的數(shù)據(jù)比特速率。
低分辨率、高象素深度的嵌入目標(biāo) 如果一個(gè)目標(biāo)是一個(gè)低分辨率、高象素深度的嵌入目標(biāo),那么這種應(yīng)用假設(shè)該目標(biāo)設(shè)備所具有的空間分辨率低于可以獲得但需要全象素深度的目標(biāo)設(shè)備。監(jiān)視器是低分辨率、高象素深度嵌入目標(biāo)的例子。使用圖24A所示的代碼流,在需要時(shí)一比特平面被譯碼以用作較高級(jí)系數(shù)。這要求分析程序樣每一個(gè)比特平面截短。為協(xié)助該分析程序,每個(gè)編碼單元的每個(gè)比特平面都具有表明可以發(fā)生截短的位置的標(biāo)記符或指針。在這種實(shí)施例中,如果需要一個(gè)以上的目標(biāo)分辨率,那么就需要多個(gè)標(biāo)記符或指針。比特平面被進(jìn)行單獨(dú)編碼,所以,熵編碼器可以被復(fù)位以用于下一個(gè)比特平面。
另一種途徑是嵌入諸如圖24B所示的不同數(shù)據(jù)。參看圖24B,每個(gè)編碼單元內(nèi)的目標(biāo)分辨率系數(shù)在剩余高分辨率系數(shù)之前被首先編碼。在這種情況下,每個(gè)編碼單元僅需要一個(gè)截?cái)嗲异鼐幋a器不再需復(fù)位。標(biāo)記符或指針可以表示所希望的截?cái)帱c(diǎn)。
高分辨率、低象素深度嵌入目標(biāo) 如果一個(gè)目標(biāo)是一個(gè)高分辨率、低象素深度的嵌入目標(biāo),那么這個(gè)應(yīng)用假定該目標(biāo)設(shè)備需要可以獲得的全部分辨率,特別是它不能使用全象素深度。高分辨率、低象素深度嵌入目標(biāo)的例子包括低檔打印機(jī)和標(biāo)準(zhǔn)的監(jiān)視器(當(dāng)圖象是高于每個(gè)平面8比特時(shí))。圖24A所示的代碼流是按著這個(gè)順序嵌入的、每個(gè)編碼單元在正確數(shù)量比特平面的一個(gè)點(diǎn)處被截?cái)啵⒏鶕?jù)量化系數(shù)執(zhí)行變換。在系數(shù)深度和象素深度之間具有直接的關(guān)系。標(biāo)記符或指針可以表示所希望的截?cái)帱c(diǎn)。
另外,如果代碼流被如圖24B所示的嵌入,那么就要使用兩個(gè)標(biāo)記符或指針去表示截?cái)?,一個(gè)用于表示低分辨率比特平面,一個(gè)用于表示高分辨率比特平面。兩組比特平面被獨(dú)立編碼的允許熵編碼器被復(fù)位。
另一種辦法就是為根據(jù)低分辨率、高象素深度嵌入目標(biāo)所述的對(duì)部份或所有低分辨率系數(shù)進(jìn)行解碼和對(duì)來(lái)自高分辨率系數(shù)的某些可能的數(shù)據(jù)進(jìn)行介碼。然后如下所述地執(zhí)行插值子波變換。
固定速率嵌入目標(biāo) 如果該目標(biāo)是一個(gè)固定速率嵌入目標(biāo),這個(gè)應(yīng)用假設(shè)在使用約束通道的同時(shí),必需保持實(shí)時(shí)恒定象素輸出。在這種情況下,在適當(dāng)?shù)臅r(shí)刻(最小壓縮速率)就會(huì)局部地具有某個(gè)最大代碼流數(shù)據(jù)速率。為了實(shí)現(xiàn)這個(gè)目的,首先根據(jù)在目標(biāo)設(shè)備中可以得到的緩沖器的數(shù)量選擇編碼單元。這規(guī)定了一個(gè)局部區(qū)域,在此區(qū)域上可以實(shí)現(xiàn)平均壓縮速率。然后具有多于允許數(shù)據(jù)的每一編碼單元被截?cái)唷?br> 注意,如果代碼流數(shù)據(jù)速率不超過(guò)最大通道代寬,那么圖象被無(wú)損耗的復(fù)原。這并不適用于任一其它固定速率系統(tǒng)。
固定尺寸嵌入目標(biāo) 如果該目標(biāo)是一個(gè)固定尺寸嵌入目標(biāo),那么這個(gè)應(yīng)用假設(shè)壓縮圖象數(shù)據(jù)可以獲得固定尺寸的幀緩沖器。與固定速率應(yīng)用不同,這需要在整個(gè)圖象上、而不是局部上平均的最小壓縮速率。當(dāng)然,這是可以使用固定速率方法,但所使用的平均這個(gè)概念是整體而不是局部的,由此可以得到更好的比特分配和圖象質(zhì)量。
在含有整個(gè)圖象的編碼單元中,截?cái)嗑彌_器的過(guò)溢數(shù)據(jù)是不重要的。如果編碼單元少于整個(gè)圖象并且所有的編碼單元都被截短成相同數(shù)量的比特,那么就不能保證這個(gè)截?cái)辔ㄒ坏貏h除了最不重要的級(jí)。一個(gè)簡(jiǎn)單的方法就是在記錄時(shí)間(或后邊的分析時(shí)間)處記錄下編碼比特的數(shù)量,每一個(gè)重要的級(jí)都將這些數(shù)量分配給與每一編碼單元、全局編址首部或二者有關(guān)的代碼流。該記錄可使用一簡(jiǎn)單的計(jì)數(shù)器進(jìn)行。這些數(shù)量被記錄在標(biāo)題段并能被用于決定在變換或存貯時(shí)如何去截?cái)嗝恳粋€(gè)編碼單元。標(biāo)題含有一個(gè)重要級(jí)和它的相應(yīng)比特?cái)?shù)量。標(biāo)題還可以包含與每個(gè)包含在所述代碼流中的編碼單元相關(guān)的這個(gè)信息。當(dāng)決定在什么地方截?cái)鄷r(shí),在每個(gè)編碼單元上執(zhí)行的效果是相同的。例如,如果由于存貯器限制,它決定丟棄一個(gè)或1/2個(gè)重要級(jí),那么來(lái)自每個(gè)編碼單元的一個(gè)或1/2重要級(jí)將被丟棄。這就允許以唯一的方式在編碼單元的兩端執(zhí)行截?cái)唷?br> 在編碼時(shí)間實(shí)現(xiàn)固定尺寸壓縮的圖象。存貯器被合成用于多個(gè)重要級(jí)的多個(gè)段。如果存貯器將要過(guò)溢,那么利用較重要的數(shù)據(jù)重寫(xiě)不必太重要的數(shù)據(jù)。
注意,如果壓縮數(shù)據(jù)沒(méi)有溢出存貯緩沖器,那么將無(wú)損耗地復(fù)原所述圖象。這不同于其它任何固定尺寸系統(tǒng)。
利用子波變換插入 子波可被用于將圖象插入到較高的分辨率中。和雙三次樣條技術(shù)(bi-Cubic Speie)相比較其結(jié)果是相當(dāng)明顯的。如果壓縮數(shù)據(jù)已處于子波系數(shù)的形式,那么,與插入相關(guān)的有效附加計(jì)算少于雙三次樣條。
可以獲得N級(jí)所有系數(shù)都被解壓的圖象。通過(guò)填入零或某些其它的方法建立一個(gè)新的最低有效級(jí),然后執(zhí)行N+1級(jí)子波重新,可以獲得原始圖象2∶1插入方案的一個(gè)新圖象。
這種方法也可被該系統(tǒng)所使用,在該系統(tǒng)中,有多個(gè)目標(biāo)設(shè)備,用于嵌入代碼流,特別是用于高分辨率,低象素深度的目標(biāo)設(shè)備。編碼單元被截短,因此僅具有低分辨率系數(shù)(或僅具有低分辨率系數(shù)或少數(shù)幾個(gè)比特的某些或全部高分辨率系數(shù))。該系數(shù)被裝入較高分辨率并執(zhí)行重建。
使用通道 在一個(gè)數(shù)據(jù)在通道內(nèi)傳送而不是存貯在存貯器中并且使用存貯器固定尺寸頁(yè)(但每個(gè)有效級(jí)僅需要一頁(yè))的系統(tǒng)中,當(dāng)存貯器的頁(yè)是滿的時(shí),數(shù)據(jù)在通道內(nèi)被傳送,并且數(shù)據(jù)一旦被傳送,存貯器單元就可被重新使用。在某些應(yīng)用中,存貯器的頁(yè)尺寸可以是通道中使用的數(shù)據(jù)信息包的尺寸,也可以是信息包的尺寸的倍數(shù)。
在某些通信系統(tǒng)中,例如在ATM(異步傳輸模式)的通信系統(tǒng)中,可以將優(yōu)先權(quán)指定給信息包。ATM具有兩個(gè)優(yōu)先級(jí)主要和次要。如果可以獲得足夠的帶寬,僅傳送次要信息包。一個(gè)閥值可被用于確定哪一個(gè)有效級(jí)是主要的,哪個(gè)是次要的。另外一種方法是使用一個(gè)位于解碼器內(nèi)的閾值不去傳送其有效級(jí)低于該閾值的有效級(jí)。
由此,本發(fā)明存貯管理器的一個(gè)實(shí)施例控制在固定尺寸存貯器內(nèi)壓縮數(shù)據(jù)的存貯。即存貯管理器將壓縮數(shù)據(jù)分成不重要程度的級(jí)。當(dāng)存貯器被充滿時(shí),利用比較重要的數(shù)據(jù)去覆蓋不太重要的數(shù)據(jù)。
為了管理使用有限量緩沖存貯器(例如,固定速率)的通道,在本發(fā)明的一個(gè)實(shí)施例中,如果可以獲得足夠的帶寬,所有的數(shù)據(jù)都將被傳送,否則丟掉不太重要的數(shù)據(jù)并僅傳送比較重要的數(shù)據(jù)。
圖30示出了一個(gè)使用通道管理器的系統(tǒng)。參看圖30,子波變換3001產(chǎn)生多個(gè)系數(shù)。這些系數(shù)承受上下文模型3002的處理。上下文模型3002被耦合到包括緩沖存儲(chǔ)器的通道管理器3003。通道管理器3003被耦合到有限帶寬通道3004。
通道管理器3003控制數(shù)據(jù)向通道3004輸出的速度。當(dāng)其緩沖存貯器接收到數(shù)據(jù)時(shí),通道管理器3003確定數(shù)據(jù)量是否大于通道3004的帶寬。如果該數(shù)據(jù)量不大于所述帶寬,則通道管理器3003輸出所有的數(shù)據(jù)。另一方面,若緩沖存貯器接收的數(shù)據(jù)量大于所述通道帶寬,那么通道管理器3003丟掉其緩沖存貯器內(nèi)的信息,從而與通道3004的帶寬相匹配。
通道3004將它的帶寬表示給通道管理器3003。在另一個(gè)實(shí)施例中,通道管理器3003可以根據(jù)通過(guò)通道3004傳送預(yù)定數(shù)據(jù)單元(例如信息包)時(shí)占據(jù)通道3004的時(shí)間量來(lái)動(dòng)態(tài)地確定通道3004的帶寬。即,如果需要,該帶寬可作動(dòng)態(tài)處理。
在一個(gè)實(shí)施例中,通道管理器3003基于被分成多個(gè)塊(taile)(或頻帶)的一個(gè)圖進(jìn)行工作。即和其中分塊(tiling)和重要性稍微相互有些獨(dú)立的固定尺寸存貯管理器相比較,這是一個(gè)“在重要程度上塊優(yōu)先”的方案。每個(gè)塊被單獨(dú)編碼,并被分成重要級(jí)和固定尺寸頁(yè)。因此,與每個(gè)塊相關(guān)的所有編碼數(shù)據(jù)都被一起分組。每個(gè)塊中的編碼數(shù)據(jù)都被加有重要級(jí)的標(biāo)記。
在一個(gè)實(shí)施例中,通道管理器3403中的緩沖存貯器是通道信息包尺寸的至少兩倍(或約三倍)并且對(duì)于一個(gè)塊來(lái)講,該倍數(shù)(可能是4倍)大于所期望壓縮數(shù)據(jù)的尺寸。
緩沖存儲(chǔ)器的固定的最大量被指定給一個(gè)塊。該最大量與該通道的帶寬相匹配。緩沖存貯器被分成固定尺寸段,并在需要時(shí)加以分配。若存貯器占用達(dá)到了能夠允許的最大值,這些段如在固定尺寸存貯器系統(tǒng)中的管理一樣被重新指定。
圖31示出了緩沖存儲(chǔ)器占用的一個(gè)例子。參看圖31,環(huán)形緩沖存儲(chǔ)器具有多個(gè)被分成用于通道輸入/輸出的多個(gè)固定尺寸信息包3102的固定尺寸段3101。如所示,不同的數(shù)據(jù)塊可以占用存貯器的相同數(shù)據(jù)色。在一個(gè)實(shí)施例中,不同的塊表示不同的重要級(jí)。當(dāng)使用緩沖器空間的信息包尺寸量時(shí),通道管理器3103將輸出數(shù)據(jù)的上下文模型指示給通道3104(圖30)。如所示,塊N-2和決N-1的一部份將作為當(dāng)前信息包而被輸出。由此,存貯器的信息包尺寸量被分配和保存,以和通道的帶寬相匹配。
若緩沖器沒(méi)有被充滿,多余的存貯器可被用于未來(lái)的塊、在一個(gè)實(shí)施例中,為了在對(duì)于一個(gè)與下一信息組相對(duì)的壓縮區(qū)域來(lái)講是很困難的起點(diǎn)處避免明顯的決邊界,下一個(gè)塊僅使用了剩余存貯器的某些部份(1/2,1/3等)。
在數(shù)據(jù)只能在某個(gè)時(shí)間周期內(nèi)進(jìn)行傳送的場(chǎng)合可以使用本發(fā)明的通道管理器。使用這種通道管理器,由于數(shù)據(jù)是在其重要性的基礎(chǔ)上被嵌入的,數(shù)據(jù)傳送是在考慮到復(fù)雜性的時(shí)間周期內(nèi)發(fā)生的。
通道管理器的另一實(shí)施例 本發(fā)明通道管理器的一個(gè)目的就是要使用最小存貯器。在一個(gè)實(shí)施例中,通道管理器不包含緩沖存儲(chǔ)器,下述內(nèi)容可被使用 與每個(gè)編碼單元相關(guān)的, 與每個(gè)比特平面相關(guān)的, 與每個(gè)頻率相關(guān)的, 與每個(gè)空間單元相關(guān)的。
在一個(gè)實(shí)施例中,在每個(gè)頻帶的起點(diǎn),編碼器被復(fù)位(或被置成公知狀態(tài))。在一個(gè)實(shí)施例中,如果需要減少頻帶存貯器,那么該頻帶包括與四級(jí)介壓相關(guān)的16行。
圖32示出了使用上述方法的比特流。參看圖32,比特流被分成作為通道信息包的固定尺寸段,盤(pán)扇區(qū)等是用于該通道的緩沖器的適當(dāng)量。注意,該判定可以不多于編碼期間的邏輯判定。如果需要,編碼器可以不使用緩沖而輸出。每個(gè)固定尺寸段包括該段中最重要數(shù)據(jù)的一個(gè)指示。
圖33示出了一個(gè)段的結(jié)構(gòu)。參看圖33,與每個(gè)段相關(guān)的比特位包括,編碼數(shù)據(jù)3301,運(yùn)行指針或ID3302以及該段中最重要數(shù)據(jù)3303。在一個(gè)實(shí)施例中,比特段3303包括2到5個(gè)比特。如果最重要級(jí)為0(最重要的一個(gè)),那么,緊跟在該段最后M比特的一個(gè)指針,它告訴級(jí)0的數(shù)據(jù)在該段的哪個(gè)位置開(kāi)始。注意,數(shù)據(jù)的第一段可能都是編碼數(shù)據(jù),因而就不再需要額外的開(kāi)銷。
類似于在JPEG標(biāo)準(zhǔn)中所使用的,可以利用再開(kāi)始標(biāo)記來(lái)識(shí)別與每個(gè)頻帶相關(guān)的起點(diǎn)。但是,所使用的標(biāo)記是那些在編碼期間最不經(jīng)常發(fā)生的符號(hào)。
現(xiàn)在再來(lái)考慮圖31。假設(shè)僅對(duì)那些重要級(jí)(恐怕僅是最重要級(jí))進(jìn)行介壓。介壓從第一段開(kāi)始。對(duì)于第二段,檢查“在段中最重要數(shù)據(jù)的級(jí)”并且恐怕在該段中包括的最重要級(jí)低于正在被介壓的級(jí)的整個(gè)段都可以被跳過(guò)。對(duì)于第三段,指針被用于獲得頻帶2的起點(diǎn),并可以開(kāi)始對(duì)頻帶2進(jìn)行介壓。
注意,為了保證能夠獲得該段中所有的最有效數(shù)據(jù),可以要求對(duì)整個(gè)段進(jìn)行介壓。特別是當(dāng)一個(gè)以上的頻帶落入在該段之中的時(shí)候。
通過(guò)有選擇地僅對(duì)預(yù)定數(shù)量的有效頻帶進(jìn)行介壓,可以獲得一個(gè)予展圖象。當(dāng)數(shù)據(jù)處于嵌入形式并需要無(wú)損耗數(shù)據(jù)的有損耗版本時(shí),這可能是個(gè)優(yōu)點(diǎn)。
根據(jù)所要求的存取和量化可能性以及對(duì)整個(gè)頻帶解壓所需時(shí)間是否是重要的,在該段末端處可選指針或ID包含 ·用于固定尺寸存貯器管理的下一段指針。
·與該段有關(guān)的一個(gè)ID或被包含頻帶的ID(支持通道量化,例如用于表示段2是否被忽略)。
·與該段包含數(shù)據(jù)相關(guān)的不同頻帶的數(shù)量(或者用于表示含有多于兩個(gè)段的頻帶的至少一個(gè)比特1。
與512×16象素的頻帶相關(guān)的附加開(kāi)銷的例子是具有2∶1無(wú)損耗壓縮的8比特圖象以及512個(gè)字節(jié)的段尺寸。注意,一個(gè)頻帶通常被壓縮成8個(gè)段。對(duì)于重要級(jí)來(lái)講,使用5個(gè)比特特征。假設(shè)指針處于字節(jié)邊界上,則使用9比特指針。因此,共有占總數(shù)0.15%的49個(gè)加比特時(shí)(32K壓縮位+49)。
近似無(wú)損耗 近似無(wú)損耗的一個(gè)概念就是在重建象素值的過(guò)程中以絕對(duì)誤差為基礎(chǔ)。因此,在具有絕對(duì)誤差為1的近似無(wú)損耗壓縮圖象中,可以保證在該介壓圖象中的象素值與原始值的差異不會(huì)多于象素值的一個(gè)單元。這是一個(gè)與圖象的象素深度和動(dòng)態(tài)范圍無(wú)關(guān)的絕對(duì)限定。在某些適當(dāng)?shù)募僭O(shè)之下,對(duì)這樣一個(gè)系統(tǒng)明顯的和最佳的是保持壓縮/介壓部份的無(wú)損耗并使用一個(gè)預(yù)處理和后處理方案去實(shí)現(xiàn)近似無(wú)損耗在這個(gè)執(zhí)行方案中采取了這種方法。
通過(guò)把每個(gè)2e+1連續(xù)整數(shù)變換成它們的中值整數(shù)這樣一種量化方法來(lái)實(shí)現(xiàn)具有絕對(duì)誤差為e的近似無(wú)損耗圖象。假如,誤差等于3,象素值被量化,0到6被變換成3,7到13被變換到10等等。量化圖象本身不適宜以變換為基礎(chǔ)的系統(tǒng)。因此,它被逐一地(無(wú)損耗)變換成被稱之為淺圖象的較低動(dòng)態(tài)范圍或深度的圖象、這是通過(guò)把所述中值(代表值)變換成保持所述順序的連續(xù)整數(shù)進(jìn)行的。數(shù)學(xué)上給出的象素值X被量化成
把代表值逐一變換成淺圖象值是
把線圖象值變換成代表值的相反逐一變換是 P-1(x)=e·(x+1) 在所淺圖象值(p(x))進(jìn)行變換之前的量化(q(x))是預(yù)處理操作,這個(gè)操作進(jìn)行無(wú)損耗壓縮。從淺圖象值到代表值的變換形成了后處理操作,該操作遵循無(wú)損耗解壓。
可以使用變換域量化。通過(guò)多級(jí)變換,很多系數(shù)會(huì)受到峰值誤差擴(kuò)散的影響,很容易確定峰值誤差對(duì)于那些沒(méi)有“孩子”的高通濾波系數(shù)的影響。
下面來(lái)考慮一個(gè)將要利用最大峰值誤差±2E進(jìn)行編碼的一維信號(hào)。它可以通過(guò)把最細(xì)微的高通系數(shù)量化成±2E來(lái)實(shí)現(xiàn)。對(duì)于兩維信號(hào)來(lái)講,由于應(yīng)用于兩個(gè)高通濾波器,所以,最細(xì)微的HH系數(shù)可以被量化成±4E。
使用輸入圖象量化的另一方面是控制對(duì)熵編碼器的判定。一個(gè)例子如下對(duì)于每個(gè)系數(shù)來(lái)講,如果把該系數(shù)設(shè)置為零不會(huì)使在受那個(gè)系數(shù)影響的任一象素中的誤差超過(guò)最大誤差,則該系數(shù)被設(shè)置為零。在某些執(zhí)行過(guò)程中,只有一些特定的系數(shù),恐怕只有那些沒(méi)有“子”的AC系數(shù)才會(huì)被進(jìn)行測(cè)試。系數(shù)可以被認(rèn)為具有其中每次只考慮一個(gè)的渴望(greedy)策略。另外一些策略考慮把系數(shù)分成多個(gè)小組且將該組最大可能的子集選擇為零。
如上所述,通過(guò)嵌入功能實(shí)現(xiàn)量化并使其最佳化,從而使其能根據(jù)諸如RMSE的量化量度標(biāo)準(zhǔn)使其性能最佳。在一個(gè)實(shí)施例中,執(zhí)行各種系數(shù)的量化,以根據(jù)人類可視系統(tǒng)改進(jìn)其結(jié)果。在這種情況下,需要對(duì)嵌入方案作少量改動(dòng)。例如,通過(guò)乘以因數(shù)2使系數(shù)移位從而改變他們之間的關(guān)系的(或表示在諸如灰度碼的不同類型計(jì)數(shù)系統(tǒng)中的數(shù)量。
本發(fā)明的壓縮子波系統(tǒng)在圖象編輯期間是非常有用的。在現(xiàn)有技術(shù)中,針對(duì)全分辨率打印圖象的應(yīng)用圖象處理功能是非常耗時(shí)的并使交互處理非常困難。
在一個(gè)實(shí)施例中,如果一個(gè)圖象編輯系統(tǒng)保存了一些被壓縮的塊,那么它將非常迅速地對(duì)標(biāo)度表示執(zhí)行一個(gè)操作(非常低通)以使用戶進(jìn)行評(píng)價(jià)。由于只需要根據(jù)所顯示的象素進(jìn)行操作,所以這可以很迅速地加以執(zhí)行。由于實(shí)際上的全分辨率象素影響輸出,所以這只是一個(gè)近似的最后結(jié)果。因此,用戶應(yīng)迅速將攝像機(jī)移到該圖象的各個(gè)部份(恐怕是某些電文)。如果用戶這樣作了,那么圖象編輯系統(tǒng)將施加一個(gè)操作給圖象的那一部份。為便于此,要存貯一個(gè)樹(shù),該樹(shù)包含有壓縮系數(shù)和信息,將對(duì)該信息進(jìn)行處理操作且該信息還將被使用。
在一個(gè)實(shí)施例中,重新規(guī)定重要級(jí)以允許在規(guī)定的窗口內(nèi)執(zhí)行無(wú)損耗壓縮,而有損耗壓縮用于其余的圖象。所述窗口是由用戶固定或選擇的。應(yīng)當(dāng)有不同重要程度的多個(gè)窗口。在一個(gè)實(shí)施例中,盡管即使是對(duì)于兩象素級(jí)也可能具有更好的具體值,但所述窗口只有48×48個(gè)字區(qū)那么大。
有關(guān)該點(diǎn)的可能用途是衛(wèi)星成象。其中,衛(wèi)星使用數(shù)據(jù)方面的無(wú)損耗窗口,所以利用JPEG人工制品不會(huì)使統(tǒng)計(jì)研究陷入困難,但有損耗壓縮允許比利用無(wú)損耗壓縮所能達(dá)到的更寬的領(lǐng)域。
在一個(gè)實(shí)施例中,用戶在一個(gè)圖象上給出一個(gè)任意的邏輯框,并規(guī)定在該邏輯框內(nèi)數(shù)據(jù)的相對(duì)重要程度,一旦這個(gè)邏輯框被繪出,軟件就增加該邏輯框的尺寸,使其增大到滿足所需約束的最小尺寸,且該最小尺寸包含用戶邏輯框。文件標(biāo)題將包含有關(guān)所使用邏輯框的信息和重復(fù)程度的信息。當(dāng)開(kāi)始進(jìn)行編碼和譯碼時(shí),編碼器和譯碼器將對(duì)重要邏輯框中的系數(shù)提供更多的分辨率。對(duì)于衛(wèi)星成像的情況,重要窗口可能要被預(yù)先規(guī)定。
冪等運(yùn)算 對(duì)于無(wú)損耗壓縮器來(lái)講,通常一個(gè)重要的運(yùn)算是DCDCI=DCI,其中I是圖象,C是壓縮運(yùn)算指令,D是介壓運(yùn)算指令。在本發(fā)明中,當(dāng)數(shù)據(jù)被壓縮成X比特而后被介壓時(shí),它們將能夠被重新壓縮成X比特并且有原來(lái)的X比特。對(duì)于嵌入系統(tǒng)存在有一個(gè)非常好的冪等方案。在一個(gè)實(shí)施例中,一個(gè)被壓縮成X比特而后被介壓再被重新壓縮成Y比特(Y<X)的圖象和該原始圖象被壓縮成Y比特相同。
由于壓縮和處理使圖象從原始圖象漂移,可以這一點(diǎn)是非常重要的。如果壓縮器是冪等的,那么,多個(gè)有損耗壓縮的介壓周期就不會(huì)影響數(shù)據(jù)。在本發(fā)明中,有多少次數(shù)據(jù)以相同的速率被壓縮和介壓是無(wú)關(guān)緊要的。另外,對(duì)需要進(jìn)一步量化的分析程序的有損耗輸入所產(chǎn)生的結(jié)果與使用無(wú)損耗輸入的結(jié)果相同。因此本發(fā)明包括以變換為基礎(chǔ)的等冪系統(tǒng),該系統(tǒng)包括一個(gè)子波變換,一個(gè)上下文模型、一個(gè)熵編碼器,所以,系數(shù)被按順序描述和存貯,因此,刪除信息不能改變與當(dāng)前系數(shù)有關(guān)的描述。
應(yīng)用 本發(fā)明具有一定數(shù)量的用途,其中的一些作為例子在下面描述。特別是一些具有高分辨率和深象素的尖端應(yīng)用和某些人工所不能及的應(yīng)用使用本發(fā)明。本發(fā)明可以在具有更加有限的帶寬、數(shù)據(jù)存貯和顯示能力的應(yīng)用也可以使用相同壓縮數(shù)據(jù)的同時(shí),使尖端應(yīng)用保持高質(zhì)量環(huán)境中的最高質(zhì)量。這是一種獨(dú)立存在、通常為諸如粗略瀏覽(web browser)等現(xiàn)代成像應(yīng)用所需的設(shè)備。
對(duì)于醫(yī)學(xué)成象來(lái)講,本發(fā)明在深象素圖象(每象素10個(gè)比特到16個(gè)比特)方面的優(yōu)良的無(wú)損耗壓縮性能是很理想的。除無(wú)損耗壓縮以外,本發(fā)明是一個(gè)純的有損耗壓縮器,沒(méi)有如以信息組為基礎(chǔ)的壓縮器那樣很多的人工仿真。使用本發(fā)明得到的有損耗人工仿真往往沿著形狀的緣,在這里,它們經(jīng)常被人關(guān)于視系統(tǒng)的可視掩膜現(xiàn)象掩蔽起來(lái)。
本發(fā)明可以被用于予壓(pre-press)生產(chǎn)中,在這種生產(chǎn)中,圖象往往具有非常高的分辨率和很高的象素深度。利用本發(fā)明的角錐解壓,一個(gè)予壓操作員很容易根據(jù)圖象的較低分辨率有損耗方案(在監(jiān)視器上)執(zhí)行圖象的處理操作。當(dāng)滿足某些條件時(shí)一可以根據(jù)無(wú)損耗方案執(zhí)行某些操作。
本發(fā)明還應(yīng)用于電報(bào)傳真中,其中沒(méi)有壓縮情況下需要的變換時(shí)間太長(zhǎng)。本發(fā)明允許利用不同的空間和象素分辨率從傳真機(jī)中輸出非常好的圖象。由于在這種情況下傳送時(shí)間是非常重要的,所以,本發(fā)明的插入特性是很有用的。
本發(fā)明可以用于需要壓縮的圖象檔案系統(tǒng)中,以特別用于增加存貯容量。由于該系統(tǒng)可以被在帶寬、存貯及顯示方面具有不同資源的系統(tǒng)所訪問(wèn),所以本發(fā)明的設(shè)備單獨(dú)輸出是很有用的。另外,本發(fā)明的順序傳送能力對(duì)于瀏覽是很有用的。最后,利用本發(fā)明可以提供圖象擋案系統(tǒng)中輸出設(shè)備所需的無(wú)損耗壓縮。
本發(fā)明無(wú)損耗或高質(zhì)量有損耗數(shù)據(jù)流中分級(jí)順序特性使其能夠很理想地用于worl wide web/特別是用于設(shè)備獨(dú)立性、順序傳送、高質(zhì)量和公開(kāi)標(biāo)準(zhǔn)必不可少的場(chǎng)合。
本發(fā)明可用于衛(wèi)星圖象,特別是那些深象素高分辨率的圖象。另外,衛(wèi)星成像具有有限帶寬的通道。本發(fā)明允許靈活性,并且當(dāng)利用它的順序傳送質(zhì)量時(shí),它可以允許人去瀏覽和預(yù)先觀看。
如果該有用頻帶溢出則諸如ATM網(wǎng)絡(luò)的“固定速率”的被限的帶寬應(yīng)用需要減少數(shù)據(jù)的方式。但是,如果存在有足夠的帶寬(或壓縮是足夠地高)時(shí)則不存在質(zhì)量惡化。反之,如果該存貯器已裝滿則在計(jì)算機(jī)和其它成象裝置中所存貯的如象有限存貯器幀所應(yīng)用的“固定尺寸”需要減少數(shù)據(jù)的方式。再一次,對(duì)于可無(wú)損耗地被壓縮進(jìn)入正確存貯器數(shù)的圖象將沒(méi)有惡化。
本發(fā)明的被嵌入的代碼流適用于這種應(yīng)用。對(duì)于一有損耗圖象的傳送或存貯來(lái)說(shuō),該嵌入含蓄的允許該代碼流被調(diào)整或被舍位。如果無(wú)需調(diào)整或舍位,則該圖象達(dá)到無(wú)損耗。
總之,本發(fā)明提供了一種單一的連續(xù)色調(diào)圖象壓縮系統(tǒng)。本發(fā)明的系統(tǒng)是具有相同代碼流的無(wú)損耗和有損耗的系統(tǒng)并且使用的量化被嵌入(不言而諭是通過(guò)代碼流)。該系統(tǒng)還被角錐化、被累加、提供一用于內(nèi)插的裝置、和被簡(jiǎn)化的實(shí)施。因而,本發(fā)明提供了一種多方面均適應(yīng)的“獨(dú)立裝置”壓縮系統(tǒng)。
被統(tǒng)一的有損耗和無(wú)損耗的系統(tǒng)是非常有用的系統(tǒng)。不僅是相同系統(tǒng)能夠具有目前技術(shù)水平的有損耗和無(wú)損耗的壓縮性能,而且相同的代碼也同樣如此。在編碼、代碼流的存貯或傳送期間、或譯碼時(shí),該應(yīng)用可判定保持一圖象無(wú)損耗代碼或?qū)⑺嵛怀蔀橐挥袚p耗文本。
通過(guò)本發(fā)明所提供的有損耗壓縮是通過(guò)嵌入量化來(lái)實(shí)現(xiàn)的。也就是該代碼流包括了該量化。該實(shí)際的量化(或視覺(jué)的重要)水平可以是該譯碼器或該傳送通道的函數(shù)而未必是該編碼器的函數(shù)。如果該帶寬、存貯、和顯示手段允許時(shí),該圖象被無(wú)損耗地復(fù)原。反之,該圖象僅需要和由更多限制手段一樣的量化。
在本發(fā)明中所使用的子波被角錐化,其中通過(guò)該圖象的兩個(gè)系數(shù)來(lái)執(zhí)行分解而不需不同的圖象來(lái)執(zhí)行。這比分層分解更為特殊。對(duì)于用于在低分辨裝置瀏覽或顯示圖象的必須略圖的應(yīng)用來(lái)說(shuō),本發(fā)明的角錐本質(zhì)是理想的。
在本發(fā)明中使用的嵌入是累進(jìn)的,特別是通過(guò)比特平面,即跟隨出徂人比特的MSB累進(jìn)。該空間和子波范圍二者均可被累加地壓縮,雖然本發(fā)明的累加上具體為在子波范圍內(nèi)。對(duì)于諸如打印之類的具有空間分辨但較低象素分辨的應(yīng)用來(lái)說(shuō),在本發(fā)明中該比特的累加排序是理想的。具有相同代碼流的這些特征是有用的。
本發(fā)明的該結(jié)構(gòu)的一個(gè)優(yōu)點(diǎn)是它提供了一用于插入的計(jì)算地有效模式。如果要求較高的分辨,則來(lái)自該有用子波系數(shù)的高通過(guò)系數(shù)可被插入并可執(zhí)行本發(fā)明的反向子波。這種方法與雙重立方仿樣(bi-cubic spline)可直觀的競(jìng)爭(zhēng)但這小于在本發(fā)明的變換情況下的計(jì)算的強(qiáng)度。
本發(fā)明等冪的意思是一圖象可以一有損耗形式被解壓并重新壓縮為相同的代碼流。這個(gè)優(yōu)點(diǎn)允許在具有瀏覽、濾除、或編輯的應(yīng)用中多次壓縮和解壓循環(huán)。
本發(fā)明涉及在軟件和硬件二方面的簡(jiǎn)單實(shí)施。該子波變換可用四種加/減操作計(jì)算機(jī)和用于每個(gè)高通、低通系數(shù)對(duì)的某些位移。用一簡(jiǎn)單的“上下文模式”和一二進(jìn)制“熵編碼器”執(zhí)行該嵌入和編碼。該熵編碼器可用有限狀態(tài)機(jī)構(gòu)或并行編碼器來(lái)實(shí)施。
雖然在閱讀了前面的說(shuō)明之后對(duì)于本領(lǐng)域的技術(shù)人員來(lái)說(shuō)對(duì)本發(fā)明的許多變化和變型毫不懷疑地是顯而易見(jiàn)的,但也很清楚的是由實(shí)例所表示和描述的特定實(shí)施例并不意味著僅區(qū)限于這種方式。因此,最佳實(shí)施例的詳細(xì)說(shuō)明并不意味著對(duì)該權(quán)利要求范圍的限定,權(quán)利要求中所述的僅是有關(guān)本發(fā)明所必需的特征。
權(quán)利要求
1.一種以用于在一通道上傳送的壓縮數(shù)據(jù)流對(duì)輸入數(shù)據(jù)進(jìn)行編碼的編碼器,其特征在于,所述熵編碼器包括
一用來(lái)將輸入數(shù)據(jù)變換為多個(gè)系數(shù)的可逆子波濾波器;
連接到該可逆子波濾波器用來(lái)在諸如所產(chǎn)生的一比特流之類的多個(gè)系數(shù)上執(zhí)行嵌入編碼的一嵌入編碼器;
連接到該嵌入編碼器用來(lái)在該比特流上執(zhí)行熵編碼以產(chǎn)生編碼數(shù)據(jù)的一熵編碼器;
一用來(lái)控制在一固定尺寸存貯器中存貯的被壓縮數(shù)據(jù)的通道管理器,該存貯器管理器將被壓縮數(shù)據(jù)分成多個(gè)重要級(jí),并且進(jìn)一步其中該通道管理器傳送的所有充分的帶寬里的數(shù)據(jù)是有用數(shù)據(jù),否則較少或重要數(shù)據(jù)被丟棄并且僅傳送較重要的數(shù)據(jù)。
2.如權(quán)利要求1的編碼器,其特征在于,該通道管理器動(dòng)態(tài)地確定該通道的帶寬。
3.如權(quán)利要求1的編碼器,其特征在于,該數(shù)據(jù)被分割成多個(gè)尾部,并且每個(gè)尾部被分別地編碼和由重要級(jí)分成固定尺寸頁(yè)。
4.如權(quán)利要求1的編碼器,其特征在于,該通道管理器進(jìn)一步包括一緩沖存貯器。
5.如權(quán)利要求4的編碼器,其特征在于,該編碼器是具有多個(gè)固定尺寸段的環(huán)形緩沖存貯器,這樣作為每個(gè)固定尺寸段輸出的數(shù)據(jù)被完全地被分配。
6.如權(quán)利要求5的編碼器,其特征在于,該信息包尺寸與該通道帶寬相匹配。
7.一種以在一通道上被傳送的壓縮數(shù)據(jù)流對(duì)輸入數(shù)據(jù)進(jìn)行編碼的編碼器,其特征在于,所述的熵編碼器包括
一用來(lái)將輸入數(shù)據(jù)變換成多個(gè)系數(shù)的可逆子波濾波器;
一連接到該可逆子波濾波器用來(lái)在諸如一所產(chǎn)生的比特流的多個(gè)系數(shù)上執(zhí)行嵌入編碼的嵌入編碼器;
一連接到該嵌入編碼器用來(lái)在該比特流上執(zhí)行熵編碼以產(chǎn)生編碼數(shù)據(jù)的熵編碼器;和
連接到該熵編碼器以將該數(shù)據(jù)分割成固定尺寸段的一通道管理器,其中每個(gè)固定尺寸段包括有在該段中的該最重要數(shù)據(jù)的一指示。
8.如權(quán)利要求7的編碼器,其特征在于,每一段包括被編碼數(shù)據(jù)、一隨意的指針和在這一段中的最重要數(shù)據(jù)的級(jí)。
9.如權(quán)利要求7的編碼器,其特征在于。每一區(qū)域的開(kāi)始點(diǎn)是利用重新啟動(dòng)標(biāo)記識(shí)別的。
10.如權(quán)利要求8的編碼器,其特征在于,該隨意指針可包括用于固定尺寸存貯器管理的下一段指針。
11.如權(quán)利要求8的編碼器,其特征在于,該隨意的指針包括一用于該段的ID。
12.如權(quán)利要求8的編碼器,其特征在于,該隨意指針指明該段包括的若干不同區(qū)域。
13.如權(quán)利要求8的編碼器,其特征在于,該隨意指針包括一個(gè)指明多于二段所含有的區(qū)域的比特。
14.一種用來(lái)將輸入數(shù)據(jù)編碼為壓縮數(shù)據(jù)流的編碼器,其特征在于,所述編碼器包括
一用來(lái)利用具有一可變級(jí)數(shù)的角錐分解將該輸入數(shù)據(jù)變?yōu)槎鄠€(gè)系數(shù)的可逆子波濾波器;
一連接到該可逆子波濾波器的具有一固定尺寸的存貯器,其中在多個(gè)系數(shù)的分解期間該可逆子波濾波器使用該存貯器存貯信息;
一連接到該可逆子波濾波器和該固定尺寸存貯器、基于該存貯器的固定尺寸去選擇該級(jí)數(shù)的控制機(jī)構(gòu);
一連接到該可逆子波濾波器和固定尺寸存貯器的排序和造型機(jī)構(gòu),所述排序和造型機(jī)構(gòu)響應(yīng)于多個(gè)系數(shù)產(chǎn)生一嵌入數(shù)據(jù)流,其中該排序和造型對(duì)多個(gè)系數(shù)排序并對(duì)多個(gè)系數(shù)的每一個(gè)進(jìn)行二進(jìn)制值排序;和一連接到該排序和造型機(jī)構(gòu)可對(duì)嵌入代碼流進(jìn)行二進(jìn)制熵編碼以產(chǎn)生壓縮數(shù)據(jù)的二進(jìn)制熵編碼器。
15.一種使用一嵌入代碼流的方法,其特征在于,包括
識(shí)別一目標(biāo)裝置去接收在一嵌入代碼流中的數(shù)據(jù);
對(duì)每個(gè)比特平面譯碼以提供該目標(biāo)裝置數(shù)據(jù),所述譯碼步驟包括為了維持該目標(biāo)裝置數(shù)據(jù)而在該嵌入代碼流中舍位每一比特平面的步驟。
16.如權(quán)利要求15的方法,其特征在于,每個(gè)比特平面基于在每個(gè)編碼單元中表示舍位可能出現(xiàn)的位置的一指示而被舍位。
17.如權(quán)利要求16的方法,其特征在于,該指示包括一標(biāo)識(shí)符。
18.如權(quán)利要求16的方法,其特征在于,該指示包括一指針。
19.如權(quán)利要求15的方法,其特征在于,基于指明的每個(gè)編碼單元中指明舍位可能出現(xiàn)的位置的多個(gè)指示中的一個(gè)來(lái)對(duì)每個(gè)比特平面舍位,所述舍位步驟進(jìn)一步包括基于該目標(biāo)裝置選擇多個(gè)指示中的一個(gè)的步驟。
20.如權(quán)利要求15的方法,其特征在于,舍位步驟包括對(duì)來(lái)自嵌入代碼流的在每個(gè)編碼單元中被單獨(dú)地編碼的目標(biāo)分辨力系數(shù)舍位。
21.如權(quán)利要求15的方法,其特征在于,該目標(biāo)裝置包括一低分辨、高象素深度嵌入目標(biāo)以便在需要實(shí)現(xiàn)該目標(biāo)裝置的全象素深度和低空間分辨時(shí)作為若干較高級(jí)系數(shù)的譯碼的評(píng)碼步驟。
22.如權(quán)利要求15的方法,其特征在于,該目標(biāo)裝置包括一高分辨力、低象素深度嵌入目標(biāo)和在一比特平面數(shù)時(shí)舍位每個(gè)編碼單元并且逆子波變換每個(gè)編碼單元的未舍位數(shù)據(jù)以完成該目標(biāo)裝置的低象素深度和高空間分辨。
23.如權(quán)利要求15的方法,其特征在于,進(jìn)一步包括步驟
基于在該目標(biāo)裝置中的有用緩沖的數(shù)而選擇編碼單元;和
用多于有用緩沖的數(shù)據(jù)舍位每個(gè)編碼單元。
24.如權(quán)利要求15的方法,其特征在于,舍位步驟進(jìn)一步包括有步驟
檢測(cè)舍位每個(gè)編碼單元的均勻總數(shù);
舍位每個(gè)編碼單元中的至少一最重要級(jí)的一部分。
25.如權(quán)利要求24的方法,其特征在于,舍位步驟是使用在顯示重要級(jí)信息的該代碼的一標(biāo)題的信息來(lái)執(zhí)行的。
26.如權(quán)利要求24的方法,其特征在于,舍位步驟是使用為了在該代碼流中的每個(gè)編碼單元而顯示的重要級(jí)信息的該代碼的一標(biāo)題中的信息來(lái)執(zhí)行的。
27.如權(quán)利要求24的方法,其特征在于,各步驟是在編碼時(shí)間之后執(zhí)行的。
全文摘要
一種以用于在一通道上傳送的壓縮數(shù)據(jù)流對(duì)輸入數(shù)據(jù)進(jìn)行編碼的編碼器,其特征在于,所述熵編碼器包括一用來(lái)將輸入數(shù)據(jù)變換為多個(gè)系數(shù)的可逆子波濾波器;連接到該可逆子波濾波器用來(lái)在諸如所產(chǎn)生的一比特流之類的多個(gè)系數(shù)上執(zhí)行嵌入編碼的一嵌入編碼器;連接到該嵌入編碼器用來(lái)在該比特流上執(zhí)行熵編碼以產(chǎn)生編碼數(shù)據(jù)的一熵編碼器;一用來(lái)控制在一固定尺寸存貯器中存貯的被壓縮數(shù)據(jù)的通道管理器,該存貯器管理器將被壓縮數(shù)據(jù)分成多個(gè)重要級(jí),并且進(jìn)一步其中該通道管理器傳送的所有充分的帶寬里的數(shù)據(jù)是有用數(shù)據(jù),否則較少或重要數(shù)據(jù)被丟棄并且僅傳送較重要的數(shù)據(jù)。
文檔編號(hào)H04N7/24GK1917561SQ20061010030
公開(kāi)日2007年2月21日 申請(qǐng)日期1996年7月2日 優(yōu)先權(quán)日1995年6月30日
發(fā)明者A·贊迪, E·L·許瓦茲, M·J·戈米什, M·波利克 申請(qǐng)人:株式會(huì)社理光
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
深圳市| 淳安县| 镇雄县| 宁明县| 沙湾县| 兴仁县| 辽阳市| 抚州市| 德令哈市| 武隆县| 额尔古纳市| 大姚县| 宁陵县| 石城县| 绥滨县| 邢台县| 台东县| 巩留县| 贺州市| 盐亭县| 宝丰县| 甘谷县| 乌兰浩特市| 余庆县| 金乡县| 商城县| 陆良县| 安福县| 栾城县| 山东省| 大新县| 五大连池市| 南昌县| 桑植县| 江津市| 石嘴山市| 尚义县| 博客| 固原市| 嵊泗县| 凤城市|