專利名稱::用于數(shù)據(jù)壓縮優(yōu)化的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明總地涉及數(shù)據(jù)壓縮,更具體地涉及JPEG編碼器的霍夫曼表、量化步長(quantizationst印size)、和量化系數(shù)的聯(lián)合優(yōu)化。如W.Pennebaker禾口J.Mitchell在"JPEGstillimagedatacompressionstandard(JPEG靜態(tài)圖像數(shù)據(jù)壓縮標(biāo)準(zhǔn))"中所描述的(KluwerAcademic出版商,1993年)(以下稱之為"參考文獻[l]"),和G..Wallace在"TheJPEGstill-imagecompressionstandard(JPEG靜態(tài)圖像壓縮標(biāo)準(zhǔn))"(Commun.ACM,1991年4月,第34巻第30-44頁)(以下稱之為"參考文獻[2]")中所描述的,JPEG是一種常見的基于DCT的靜態(tài)圖像壓縮標(biāo)準(zhǔn)。JPEG格式在諸如萬維網(wǎng)和數(shù)字相機等中有著廣泛的使用。JPEG編碼系統(tǒng)的普及已經(jīng)激發(fā)了對JPEG優(yōu)化方案的研究一例如,參見J.Huang和T.Meng于1991年4月在Proc.IEEEInt.Conf.Acoustics,SpeechandSignalProcessing,第2621-2624頁中的"Optimalquantizerst印sizesfortransformcoders(用于變換編碼器的優(yōu)化量化器步長)"(以下稱之為"參考文獻[3]");S.Wu和A.Gersho于1993年在Proc.IEEEInt.Conf.Acoustics,SpeechandSignalProcessing,第5巻,第389_392頁中的"Rate_constrainedpicture-adaptivequantizationforJPEGbaselinecoders(用于JPEG基線編碼器的強制速率圖片適應(yīng)性量化)"(以下稱之為"參考文獻[4],,);V.Ratnakar禾口M.Livny于1995年在Proc.DataCompressionConf..,第332-341中的"RD-OPT:AnefficientalgorithmforoptimizingDCTquantizationtables(RD-OPT:用于優(yōu)化DCT量化表的有效法則)"(以下稱之為"參考文獻[5]");V.Ratnakar禾口M.Livny于2000年2月在IEEETranslmageProcessing,第9巻,第267-370中的"AnefficientalgorithmforoptimizingDCTquantizationtables(用于優(yōu)化DCT量化表的有效法則)"(以下稱之為"參考文獻[6]");K.Ramchandran和M.Vetterli于1994年9月在IEEETransImageProcessing,第3巻,第700-704頁的"Rate-distotionoptimalfastthresholdingwithcompleteJPEG/MPEGdecodercompatibility(具有完全JPEG/MPEG解碼器兼容性的速率失真優(yōu)化快速閥值)"(以下稱之為"參考文獻[7]");M.Crouse禾口K.Ramchandran于1995年在Proc.IEEEInt.Conf.Acoustics,SpeechandSignalProcessing,第23311-2334頁中的"Jointthresholdingandquantizerselectionfordecoder-compatiblebaselineJPEG(用于兼容解碼器的基線JPEG的聯(lián)合閥值和量化
背景技術(shù):
:10選擇)"(以下稱之為"參考文獻[8]");和M.Crouse和K.Ramchandran于1997年2月在IEEETransImageProcessing,第6巻,第285-297中的"Jointthresholdingandqimntizerselectionfortransformimagecoding:Entropyconstrainedanalysisanda卯licationstobaselineJPEG(用于變換圖像編碼的閥值和量化選擇對基線JPEG的熵強制分析和應(yīng)用)"(以下稱之為"參考文獻[9]")。所有這些參考文獻所描述的規(guī)則都忠于JPEG語法。由于這些規(guī)則僅優(yōu)化了JPEG編碼器而沒有改變標(biāo)準(zhǔn)的JPEG解碼器,因此它們不僅能進一步降低JPEG壓縮圖像的長度,而且還具有易于展開的優(yōu)點。這個獨有的特性使得它們在接收終端并不善于支持新的解碼器的應(yīng)用中十分有吸引力,諸如在無線通信中。量化表優(yōu)化JPEG量化步長很大程度上決定了在JPEG壓縮圖像中的速率失真折中。但由于量化表是獨立于圖像的,因此使用默認(rèn)的量化表并不是最佳的。因此,所有量化表優(yōu)化規(guī)則的目的都是為每個圖像分量得到有效、圖像自適應(yīng)的量化表。量化表優(yōu)化的問題能從以下輕易地闡明。(為了不失一般性,我們在以下討論中僅考慮一個圖像分量。)給定具有目標(biāo)比特率Rbu一t的輸入圖像,想找到一組量化步長{Qk:k=0,"*,63},以Wwm—肌63最小化整個失真^=£藝Aa(込)(l)對比特率約束=1)t=0Wwff7艦/=2凡必,…必3)S/Wge,(2)其中Num_Blk是塊數(shù)量,Dn,k(Qk)是在其由步長Qk量化時在第nth塊中第kth個DCT系數(shù)的失真,而Rn(Q。,,Q63)是在用量化表{Q。,…,Qj對第nth塊編碼所產(chǎn)生的比特數(shù)。由于JPEG使用零游程(游程長度)編碼,其將從不同頻帶來的零系數(shù)指數(shù)(coefficientindex)合并成一個符號,因此比特率并不是簡單地通過對每個單獨的系數(shù)指數(shù)編碼所得的比特之和。因此,很難用傳統(tǒng)的比特分配技術(shù)來對(1)和(2)得到最優(yōu)解。Huang和Meng(參見參考文獻[3])提出了一種梯度下降技術(shù)(gradientdescenttechnique),其基于DCT系數(shù)的概率分布為拉普拉斯算子的假定而對量化表設(shè)計問題解決局部最優(yōu)解。其后又提出了最速下降方案,該方案并未假定DCT系數(shù)的概率分布(參見參考文獻[4])。開始于大步長的初始量化表,響應(yīng)低比特率和高失真,這些算法每次均減少在量化表的一個入口處的補償步長直至達(dá)到目標(biāo)比特率。在每次迭代中,該算法試圖以下述方式更新量化表對用于量化表的一個入口的所有可能降低的步長值上,最大化在失真中降低的比率以在比特率中增加。數(shù)學(xué)上,這些算法都在找尋解決如下最大化問題的k和q的值max謹(jǐn):g『(3)其中Anl和^la^分別為在失真中的改變以及當(dāng)量化表的第kth個入口中Qk由q取代時整個的比特率。這些增量由以下計算^|&,=A^必)](4)W認(rèn)—緣和M|a,=2[A(2。,..4..,263)-A必,…必,…仏3)](5)重復(fù)迭代直到/Rbudget',Q63)/《e,其中e為由用戶指定的收斂性標(biāo)準(zhǔn)(convergencecriterion)。上述的兩個算法在運算上都很昂貴。Ratnakar和Livny(參見參考文獻[5]和[6])提出了一種比較有效的算法來基于DCT系數(shù)分布統(tǒng)計構(gòu)建量化表而無需重復(fù)整個壓縮-解壓縮的循環(huán)。他們提供了一種動態(tài)編程途徑來在比率和失真的大范圍中優(yōu)化量化表并得到了與在參考文獻[4]中方案類似的性能。優(yōu)化閥值在JPEG中,相同的量化表必須應(yīng)用到每個圖像塊。即便當(dāng)使用圖像自適應(yīng)量化表時也是如此。這樣,JPEG量化缺乏局部自適應(yīng)性,這意味著在特定塊的特性和平均塊統(tǒng)計之間的使用差異仍存在潛在的增益。這就是最優(yōu)快速閥值算法的動因(參見參考文獻[7]),它降低了在R-D方向上較不重要的系數(shù)指數(shù)。在數(shù)學(xué)上,對于固定的量化器,在原始圖像x和施加比特預(yù)算限制的量化圖像i給定的閥值圖像》之間的失真最小化,即,<formula>formulaseeoriginaldocumentpage12</formula>等效的未受限問題將被最小化<formula>formulaseeoriginaldocumentpage12</formula>采用動態(tài)編程算法來解決上述遞歸優(yōu)化問題(7)。它為每個0《k《63計算Jk*,接著找到使該Jk*最小化的k*,S卩,找到最佳非零系數(shù)以結(jié)束在每個獨立塊中的掃描。讀者可以詳細(xì)參閱參考文獻[7]。由于只有不顯著的系數(shù)指數(shù)改變了,因此最優(yōu)快速閥值算法(參見參考文獻[7])并未選定具有JPEG解碼器兼容性的系數(shù)指數(shù)的全部優(yōu)化。聯(lián)合閥值和量化器選擇由于在閥值算法采用塊水平統(tǒng)計的同時,自適應(yīng)量化器選擇方案利用了廣泛圖像的統(tǒng)計,因此它們的運算近似于"正交"。這意味著將它們綁定在一起是很有益處的?;舴蚵硎橇硪环N留給JPEG編碼器的自由參數(shù)。因此,Crous和Ramchandran(參見參考文獻[8]和[9]),提出了一種對這三個參數(shù)的聯(lián)合優(yōu)化的方案,即,<formula>formulaseeoriginaldocumentpage12</formula>其中Q為量化表,H為合成的霍夫曼表,T為一組二進制閥值標(biāo)志,其為是否對系數(shù)指數(shù)取閥值的信號。(8)的受限最小化問題被轉(zhuǎn)換成拉格朗日乘子的非受限問題,<formula>formulaseeoriginaldocumentpage12</formula>接著,他們提出了一種算法,其反復(fù)選擇每個Q、T、H以在假定其他參數(shù)都固定的情況下最小化拉格朗日成本(9)。
發(fā)明內(nèi)容根據(jù)本發(fā)明的第一方面,一種在給定量化表和游程長度分布下通過確定由成本確定的三元組所表示的成本確定的n個系數(shù)指數(shù)的序列而為圖像編碼壓縮n個系數(shù)的序列的方法,其中,每個三元組限定了相應(yīng)的系數(shù)指數(shù)的序列,以便(i)在相應(yīng)的系數(shù)指數(shù)的序列中的每個指數(shù)為數(shù)字值,(ii)相應(yīng)的系數(shù)指數(shù)的序列包括了有特定值的多個值,和(iii)根據(jù)游程編碼方案的每個三元組限定了表示特定值的多個連續(xù)指數(shù)的游程值、在特定值的連續(xù)指數(shù)的數(shù)字后面指定指數(shù)幅度的整數(shù)ID值、以及限定將指數(shù)存儲在由整數(shù)ID值指定的分類中所需的多個比特的長度值,其中,系數(shù)指數(shù)的序列表示由量化表歸一化的量化的系數(shù)的序列,該方法包括步驟(a)使用給定的量化表和游程長度分布來為多個可能的三元組制訂成本函數(shù);(b)將該成本函數(shù)應(yīng)用到多個可能的三元組中的每個可能的序列以確定關(guān)聯(lián)成本;和(c)基于關(guān)聯(lián)成本從多個可能的三元組中選擇成本確定的三元組;(d)使用霍夫曼編碼對選定的、成本確定的三元組編碼。根據(jù)本發(fā)明的第二方面,提供了一種用于在給定的量化表和游程長度分布下通過使用表示多個可能的三元組(r皿、size、ID)的曲線圖(graph)來壓縮n個系數(shù)序列的方法,該曲線圖與同類(in-category)的指數(shù)ID以及給定的量化表一起確定n個量化的系數(shù)序列,其中每個三元組(rim、size、ID)限定了相應(yīng)的系數(shù)指數(shù)序列,以便,(i)在相應(yīng)的系數(shù)指數(shù)序列中的每個指數(shù)為數(shù)字?jǐn)?shù),(ii)相應(yīng)的系數(shù)指數(shù)序列包括了有特定值的多個值,和(iii)每個三元組(rim、size、ID)限定了表示特定值的多個連續(xù)指數(shù)的游程值(runvalue)、指定遵循特定值的連續(xù)指數(shù)的數(shù)量的指數(shù)幅度的整數(shù)值ID、以及限定將指數(shù)存儲在由ID值指定的分類中所需的多個比特的長度值。該方法包括步驟(a)使用給定量化表和游程長度分布以制訂用于多個可能的序列對(rim、size)的成本函數(shù);(b)構(gòu)建表示多個可能的序列對(rim、size)的曲線圖;(c)基于由成本函數(shù)所確定的關(guān)聯(lián)成本而從曲線圖的第一節(jié)點到末端節(jié)點延伸曲線圖的路徑;(d)從所選定的路徑確定相應(yīng)的三元組(r皿、size、ID);和(e)使用霍夫曼編碼對相應(yīng)的序列對(run、size)編碼。根據(jù)本發(fā)明的第三方面,一種通過聯(lián)合確定輸出量化表、由三元組所表示的成本確定的系數(shù)指數(shù)的序列、和游程長度分布來為圖像編碼壓縮n個系數(shù)的序列的方法,其中每個三元組限定相應(yīng)的系數(shù)指數(shù)的序列,以便(i)在相應(yīng)的系數(shù)指數(shù)的序列中的每個指數(shù)為數(shù)字值,(ii)相應(yīng)的系數(shù)指數(shù)的序列包括了有特定值的多個值,和(iii)根據(jù)游程編碼編碼方案的每個三元組限定了表示特定值的多個連續(xù)指數(shù)的游程值、在特定值的連續(xù)指數(shù)的數(shù)字后面指定指數(shù)幅度的整數(shù)ID值、以及限定將指數(shù)存儲在由整數(shù)ID值指定的分類中所需的多個比特的長度值,其中系數(shù)指數(shù)的序列表示由量化表歸一化的量化的系數(shù)的序列,該方法包括步驟(a)選擇第0th個量化表;(b)選擇第0th個游程長度分布;(C)設(shè)定計數(shù)器t為0;(d)使用第tth個量化表和游程長度分布來制定用于第tth多個可能的三元組的第tth個成本函數(shù);(e)將第tth個成本函數(shù)應(yīng)用到第tth多個可能的三元組中的每個可能的序列以確定關(guān)聯(lián)成本;(f)基于該關(guān)聯(lián)成本從第tth多個可能的三元組中選擇三元組的第tth個成本確定序列;(g)如果三元組第tth個成本確定的序列與第tth個量化表和游程長度分布都滿足選擇標(biāo)準(zhǔn);則選擇三元組的第tth個成本確定的序列作為三元組的最終成本確定的序列,選定該tth個量化表作為輸出量化表;否則將t加一而從三元組的第tth個成本確定的序列中確定第(t+l)th個量化表和游程長度分布,并返回到步驟(d);和(h)使用霍夫曼編碼對三元組的最終成本確定的序列編碼。根據(jù)本發(fā)明的第四方面,提供了一種為在n個系數(shù)序列的序列中的n個系數(shù)的每個序列,和由三元組(r皿、size、ID)最終成本確定的序列所表示的系數(shù)指數(shù)的最終成本確定的序列而通過聯(lián)合確定輸出量化表、輸出游程長度分布來壓縮n個系數(shù)序列的序列的方法,其中每個三元組(r皿、size、ID)限定相應(yīng)的系數(shù)指數(shù)序列,以便(i)在相應(yīng)的系數(shù)指數(shù)序列中的每個指數(shù)為數(shù)字?jǐn)?shù),(ii)相應(yīng)的系數(shù)指數(shù)序列包括了有特定值的多個值,和(iii)每個三元組(r皿、size、ID)限定了表示特定值的多個連續(xù)指數(shù)的游程值(runvalue)、指定遵循特定值的連續(xù)指數(shù)的數(shù)量的指數(shù)幅度的整數(shù)值ID、以及限定將指數(shù)存儲在由ID值指定的分類中所需的多個比特的長度值,其中系數(shù)指數(shù)序列與量化表一起確定n個軟決策量化系數(shù)的序列。該方法包括步驟(a)選擇第(^個量化表;(b)選擇第0th個游程長度分布;(c)設(shè)定計數(shù)器t為0;(d)對于在n個系數(shù)序列的序列中的n個系數(shù)的每個13序列,(i)使用第tth個量化表和游程長度分布來制定用于關(guān)聯(lián)的第tth多個可能的三元組(rim、size、ID)的第tth個成本函數(shù);(ii)將該成本函數(shù)應(yīng)用到關(guān)聯(lián)的第tth個多個可能的三元組(r皿、size、ID)中的每個可能的序列,以確定關(guān)聯(lián)成本;(iii)基于該關(guān)聯(lián)成本從關(guān)聯(lián)的第tth多個可能的三元組(run、size、ID)中選擇三元組(r皿、size、ID)的關(guān)聯(lián)的第tth個成本確定序列;(e)在步驟(d)后,將總的成本函數(shù)提供給用于在n個系數(shù)序列的序列中的n個系數(shù)的每個序列的第tth個關(guān)聯(lián)的成本確定的三元組(r皿、size、ID),以確定第t個總成本;(f)如果該第tth個總成本滿足選擇標(biāo)準(zhǔn),則選定該第tth個量化表和游程長度分布作為輸出量化表和游程長度分布,對于在n個系數(shù)序列的序列中的n個系數(shù)的每個序列,將由最終成本確定的三元組(r皿、size、ID)所表示的最終確定的系數(shù)指數(shù)序列作為關(guān)聯(lián)的第tth個三元組(run、size、ID);否則將t加一而從三元組(run、size、ID)的第tth個成本確定的序列中確定第(t+l)th個量化表和游程長度分布,并返回到步驟(d);和(g)使用霍夫曼編碼對相應(yīng)選定的序列(run、size、ID)進行編碼。根據(jù)本發(fā)明的第五方面,提供了一種在給定量化表和給定長度分布(sizedistribution)下通過確定由相應(yīng)的成本確定的差數(shù)序列所表示的N個系數(shù)的成本確定的序列來壓縮N個系數(shù)的方法,其中每個差數(shù)序列限定相應(yīng)的N個系數(shù)的序列,以便在差數(shù)序列中的每個差數(shù)都為第ith個指數(shù)值減去第(i-l)th個指數(shù)值的數(shù)字?jǐn)?shù),其中i比O大且小于N-1。該方法包括步驟(a)使用給定的量化步長和給定的游程長度分布來制定用于多個可能的差數(shù)序列的成本函數(shù);(b)將該成本函數(shù)應(yīng)用到在多個可能的差數(shù)序列中的每個可能的序列以確定關(guān)聯(lián)成本;和(c)基于該關(guān)聯(lián)成本從該多個可能的差數(shù)序列中選擇相應(yīng)的成本確定的差數(shù)序列,并從相應(yīng)的成本確定的差數(shù)序列確定成本確定的N個指數(shù)序列。根據(jù)本發(fā)明的第六方面,提供了一種在輸出量化步長和輸出長度分布下通過聯(lián)合確定輸出量化步長,和由相應(yīng)的成本確定的差數(shù)序列所表示的輸出成本確定的N個指數(shù)序列而壓縮N個系數(shù)序列的方法,其中每個差數(shù)序列都限定相應(yīng)的N個指數(shù)序列,以便在差數(shù)序列中的每個差數(shù)都為等于第ith個指數(shù)值減去第(i-l)th個指數(shù)值的數(shù)字?jǐn)?shù),i比O大且比N-l小。該方法包括步驟(a)選擇第(V個量化表和第Oth個游程長度分布;(b)設(shè)定計數(shù)器t為0;(c)使用第tth個量化步長和第tth個游程長度分布來制定用于第t個th多個可能的差數(shù)序列的第tth個成本函數(shù);(d)將該第tth個成本函數(shù)應(yīng)用到在第tth個多個可能的差數(shù)序列中的每個可能的序列以確定關(guān)聯(lián)成本;(e)基于該關(guān)聯(lián)成本從第tth多個可能的差數(shù)序列中選擇第tth個成本確定的差數(shù)序列;(f)如果該第tth個相應(yīng)的成本確定的差數(shù)序列以及第tth個量化表和第tth個長度分布都滿足選擇標(biāo)準(zhǔn);則選擇第tth個成本確定的差數(shù)序列作為輸出的成本確定的差數(shù)序列,選定該tth個量化步長作為輸出量化步長,選定該第tth個長度分布作為輸出的量化步長,并選定該第t個成本確定的N個指數(shù)序列作為輸出的成本確定的N個指數(shù)序列;否則將tth加一而從第tth個成本確定的差數(shù)序列中確定第(t+l)th個量化步長和和第(t+l)th個游程長度分布,并返回到步驟(c)。根據(jù)本發(fā)明的第七方面,提供了一種數(shù)據(jù)處理系統(tǒng),其用于在給定的量化表和游程長度分布下通過確定由成本確定的三元組(r皿、size、ID)所表示的成本確定的n個系數(shù)指數(shù)序列而壓縮n個系數(shù)序列,其中每個三元組(rim、size、ID)限定了相應(yīng)的系數(shù)指數(shù)序列,以便(i)在相應(yīng)的系數(shù)指數(shù)序列中的每個指數(shù)為數(shù)字?jǐn)?shù),(ii)相應(yīng)的系數(shù)指數(shù)序列包括了有特定值的多個值,和(iii)每個三元組(rim、size、ID)限定了表示特定值的多個連續(xù)指數(shù)的游程值(rimvalue)、指定遵循特定值的連續(xù)指數(shù)的數(shù)量的指數(shù)幅度的整數(shù)值ID、以及限定將指數(shù)存儲在由ID值指定的分類中所需的多個比特的長度值(sizevalue)。該數(shù)據(jù)處理系統(tǒng)包括(a)初始化裝置,其用于使用給定的量化表和游程長度分布來為多個可能的三元組(r皿、size、ID)制訂成本函數(shù);(b)計算裝置,其用于將該成本函數(shù)應(yīng)用到在多個可能的三元組(r皿、size、ID)中的每個序列以確定關(guān)聯(lián)成本;基于可能的三元組(r皿、size、ID)的關(guān)聯(lián)成本函數(shù)從多個可能的三元組(run、size、ID)中選擇成本確定的三元組(run、size、ID);和使用霍夫曼編碼對相應(yīng)所選定的序列對(run、size)編碼。根據(jù)本發(fā)明的第八方面,提供了一種數(shù)據(jù)處理系統(tǒng),其用于在給定的量化表和游程長度分布下通過使用表示多個可能的三元組(r皿、size、ID)的曲線圖(graph)來壓縮n個系數(shù)序列,該曲線圖與同類(in-category)的指數(shù)ID以及給定的量化表一起確定n個量化系數(shù)序列,其中每個三元組(r皿、size、ID)限定了相應(yīng)的系數(shù)指數(shù)序列,以便(i)在相應(yīng)的系數(shù)指數(shù)序列中的每個指數(shù)為數(shù)字?jǐn)?shù),(ii)相應(yīng)的系數(shù)指數(shù)序列包括了有特定值的多個值,和(iii)每個三元組(rim、size、ID)限定了表示特定值的多個連續(xù)指數(shù)的游程值(rimvalue)、指定遵循特定值的連續(xù)指數(shù)的數(shù)量的指數(shù)幅度的整數(shù)值ID、以及限定將指數(shù)存儲在由ID值指定的分類中所需的多個比特的長度值。該數(shù)據(jù)處理系統(tǒng)包括(a)初始化裝置,其用于使用給定量化表和游程長度分布以制訂用于多個可能的序列對(rim、size)的成本函數(shù);(b)計算裝置,其用于(i)構(gòu)建表示多個可能的序列對(rim、size)的曲線圖;(ii)基于由成本函數(shù)所確定的關(guān)聯(lián)成本而從曲線圖的第一節(jié)點到末端節(jié)點延伸曲線圖的路徑;(iii)從所選定的路徑確定相應(yīng)的三元組(r皿、size、ID);和(iv)使用霍夫曼編碼對相應(yīng)的序列對(run、size)編碼。根據(jù)本發(fā)明的第九方面,提供了一種數(shù)據(jù)處理系統(tǒng),其用于通過聯(lián)合確定輸出量化表、由三元組(rim、size、ID)所表示的成本確定的系數(shù)指數(shù)序列、和游程長度分布來壓縮n個系數(shù)序列,其中每個三元組(rim、size、ID)限定相應(yīng)的系數(shù)指數(shù)序列,以便(i)在相應(yīng)的系數(shù)指數(shù)序列中的每個指數(shù)為數(shù)字?jǐn)?shù),(ii)相應(yīng)的系數(shù)指數(shù)序列包括了有特定值的多個值,和(iii)每個三元組(rim、size、ID)限定了表示特定值的多個連續(xù)指數(shù)的游程值(runvalue)、指定遵循特定值的連續(xù)指數(shù)的數(shù)量的指數(shù)幅度的整數(shù)值ID、以及限定將指數(shù)存儲在由ID值指定的分類中所需的多個比特的長度值,其中系數(shù)指數(shù)序列與量化表一起確定n個軟決策量化系數(shù)的序列。該數(shù)據(jù)處理系統(tǒng)包括(a)初始化裝置,其用于選擇第(^個量化表、選擇第Oth個游程長度分布,并設(shè)定計數(shù)器t為0;(b)計算裝置,其用于(i)使用第tth個量化表和游程長度分布來制定用于多個可能的三元組(r皿、size、ID)的第tth個成本函數(shù);(ii)將該成本函數(shù)應(yīng)用到在第tth個多個可能的三元組(run、size、ID)中的每個可能的序列以確定關(guān)聯(lián)成本;(iii)基于該關(guān)聯(lián)成本從第tth多個可能的三元組(rim、size、ID)中選擇三元組(run、size、ID)的第tth個成本確定序列;(iv)如果三元組(run、size、ID)第tth個成本確定的序列以及第tth個量化表和游程長度分布都滿足選擇標(biāo)準(zhǔn);則選擇三元組(r皿、size、ID)的第tth個成本確定的序列作為三元組(r皿、size、ID)的成本確定的序列,選定該tth個量化表作為輸出量化表;否則將t加一而從三元組(r皿、size、ID)的第tth個成本確定的序列中確定第(t+l)th個量化表和游程長度分布,并返回到步驟(i);和(v)使用霍夫曼編碼對相應(yīng)選定的序列(rim、size、ID)編碼。根據(jù)本發(fā)明的第十方面,提供了一種數(shù)據(jù)處理系統(tǒng),其用于為在n個系數(shù)序列的序列中的n個系數(shù)的每個序列,和由三元組(r皿、size、ID)最終成本確定的序列所表示的系數(shù)指數(shù)的最終成本確定的序列而通過聯(lián)合確定輸出量化表、輸出游程長度分布來壓縮n個系數(shù)序列的序列的方法,其中每個三元組(r皿、size、ID)限定相應(yīng)的系數(shù)指數(shù)序列,以便(i)在相應(yīng)的系數(shù)指數(shù)序列中的每個指數(shù)為數(shù)字?jǐn)?shù),(ii)相應(yīng)的系數(shù)指數(shù)序列包括了有特定值的多個值,和(iii)每個三元組(rim、size、ID)限定了表示特定值的多個連續(xù)指數(shù)的游程值(rimvalue)、指定遵循特定值的連續(xù)指數(shù)的數(shù)量的指數(shù)幅度的整數(shù)值ID、以及限定將指數(shù)存儲在由ID值指定的分類中所需的多個比特的長度值,其中系數(shù)指數(shù)序列與量化表一起確定n個軟決策量化系數(shù)的序列。該數(shù)據(jù)處理系統(tǒng)包括(a)初始化裝置,其用于選擇第(^個量化表;選擇第(^個游程長度分布;并設(shè)定計數(shù)器t為0;(b)計算裝置,其用于對于在n個系數(shù)序列的序列中的n個系數(shù)的每個序列,(i)使用第tht個量化表和游程長度分布來制定用于關(guān)聯(lián)的第tth多個可能的三元組(r皿、size、ID)的第tth個成本函數(shù);(ii)將該成本函數(shù)應(yīng)用到在第tth個多個可能的三元組(rim、size、ID)中的每個可能的序列以確定關(guān)聯(lián)成本;(iii)基于該關(guān)聯(lián)成本從第tth多個可能的三元組(rim、size、ID)中選擇三元組(rim、size、ID)的第tth個成本確定序列;(iv)在步驟(iii)后,將總的成本函數(shù)應(yīng)用到用于在n個系數(shù)序列的序列中的n個系數(shù)的每個序列的第tth個關(guān)聯(lián)的成本確定的三元組(r皿、size、ID),以確定第tth個總成本;(v)如果該第tth個總成本滿足選擇標(biāo)準(zhǔn),則選定該第tth個量化表和游程長度分布作為輸出量化表和游程長度分布,對于在h個系數(shù)序列的序列中的n個系數(shù)的每個序列,將由最終成本確定的三元組(r皿、size、ID)所表示的最終確定的系數(shù)指數(shù)序列作為關(guān)聯(lián)的第tth個三元組(rim、size、ID);否則將t加一而從三元組(rim、size、ID)的第tth個成本確定的序列中確定第(t+l)th個量化表和游程長度分布,并返回到步驟(i);和(vi)使用霍夫曼編碼對相應(yīng)選定的序列(r皿、size、ID)編碼。根據(jù)本發(fā)明的第十一方面,提供了一種數(shù)據(jù)處理系統(tǒng),其用于在給定量化表和給定長度分布(sizedistribution)下通過確定由相應(yīng)的成本確定的差數(shù)序列所表示的N個系數(shù)的成本確定的序列來壓縮N個系數(shù),其中每個差數(shù)序列限定相應(yīng)的N個系數(shù)的序列以便在差數(shù)序列中的每個差數(shù)都為第I個指數(shù)值減去第(i-l)個指數(shù)值的數(shù)字?jǐn)?shù),其中i比0大且小于N-l。該數(shù)據(jù)處理系統(tǒng)包括(a)初始化裝置,其用于使用給定的量化步長和給定的游程長度分布來制定用于多個可能的差數(shù)序列的成本函數(shù);(b)計算裝置,其用于將該成本函數(shù)應(yīng)用到在多個可能的差數(shù)序列中的每個可能的序列以確定關(guān)聯(lián)成本;和基于該關(guān)聯(lián)成本從該多個可能的差數(shù)序列中選擇相應(yīng)的成本確定的差數(shù)序列,并從相應(yīng)的成本確定的差數(shù)序列確定成本確定的N個指數(shù)序列。根據(jù)本發(fā)明的第十二方面,提供了一種數(shù)據(jù)處理系統(tǒng),其用來在輸出量化步長和輸出長度分布下通過聯(lián)合確定輸出量化步長,和由相應(yīng)的成本確定的差數(shù)序列所表示的輸出成本確定的N個指數(shù)序列而壓縮N個系數(shù)序列,其中每個差數(shù)序列都限定相應(yīng)的N個指數(shù)序列以便在差數(shù)序列中的每個差數(shù)都為等于第i個指數(shù)值減去第(i-l)個指數(shù)值的數(shù)字?jǐn)?shù),i比0大比N-l小。該數(shù)據(jù)處理系統(tǒng)包括(a)初始化裝置,其用來選擇第0th個量化表和第Oth個游程長度分布,并設(shè)定計數(shù)器t為0;(b)計算裝置,其用來(i)使用第tth個量化步長和游程長度分布來制定用于多個可能的差數(shù)序列的第tht個成本函數(shù);(ii)將該第tth個成本函數(shù)應(yīng)用到在多個可能的差數(shù)序列中的每個可能的序列以確定關(guān)聯(lián)成本;(iii)基于該關(guān)聯(lián)成本從第tth多個可能的差數(shù)序列中選擇第tth個成本確定的差數(shù)序列;(iv)如果該第tth個相應(yīng)的成本確定的差數(shù)序列以及第tth個量化表和第tth個長度分布都滿足選擇標(biāo)準(zhǔn);則選擇第tth個成本確定的差數(shù)序列作為輸出的成本確定的差數(shù)序列,選定該tth個量化步長作為輸出量化步長,選定該第tth個長度分布作為輸出的量化步長,并選定該第tth個成本確定的N個指數(shù)序列作為輸出的成本確定的N個指數(shù)序列;否則將t加一而從第tth個成本確定的差數(shù)序列中確定第(t+l)th個量化步長和和第(t+l)th個游程長度分布,并返回到步驟(i)。根據(jù)本發(fā)明的第十三方面,提供了一種在計算機上使用的計算機程序產(chǎn)品,其在給定量化表和游程長度分布下通過確定由成本確定的三元組(r皿、size、ID)所表示的成本確定的n個系數(shù)指數(shù)序列而壓縮n個系數(shù)序列,其中每個三元組(r皿、size、ID)都限定了相應(yīng)的系數(shù)指數(shù)序列以便(i)在相應(yīng)的系數(shù)指數(shù)序列中的每個指數(shù)為數(shù)字?jǐn)?shù),(ii)相應(yīng)的系數(shù)指數(shù)序列包括了包括有特定值的多個值,和(iii)每個三元組(r皿、size、ID)都限定了表示特定值的多個連續(xù)指數(shù)的游程值(rimvalue)、指定遵循特定值的連續(xù)指數(shù)的數(shù)量的指數(shù)幅度的整數(shù)值ID、以及限定將指數(shù)存儲在由ID值指定的分類中所需的多個比特的長度值,該計算機程序產(chǎn)品包括記錄介質(zhì),和在記錄介質(zhì)上記錄以指示計算機執(zhí)行如下步驟的裝置,(a)使用給定的量化表和游程長度分布來為多個可能的三元組(rim、size、ID)制訂成本函數(shù);(b)將該成本函數(shù)提供給在多個可能的三元組(rim、size、ID)中的每個序列以確定關(guān)聯(lián)成本;和(c)基于可能的三元組(rim、size、ID)的關(guān)聯(lián)成本函數(shù)從多個可能的三元組(run、size、ID)中選擇成本確定的三元組(run、size、ID);并使用霍夫曼編碼對相應(yīng)選定的序列對(run、size)編碼。根據(jù)本發(fā)明的第十四方面,提供了一種在計算機上使用的計算機程序產(chǎn)品,其用于在給定的量化表和游程長度分布下通過使用曲線圖(graph)來壓縮n個系數(shù)序列,該曲線圖表示了與同類(in-category)的指數(shù)ID以及給定的量化表一起確定n個量化系數(shù)序列的多個可能的三元組(run、size、ID),其中每個三重(run、size、ID序列都限定了相應(yīng)的系數(shù)指數(shù)序列以便(i)在相應(yīng)的系數(shù)指數(shù)序列中的每個指數(shù)為數(shù)字?jǐn)?shù),(ii)相應(yīng)的系數(shù)指數(shù)序列包括了包括有特定值的多個值,和(iii)每個三元組(r皿、size、ID)都限定了表示特定值的多個連續(xù)指數(shù)的游程值(rimvalue)、指定遵循特定值的連續(xù)指數(shù)的數(shù)量的指數(shù)幅度的整數(shù)值ID、以及限定將指數(shù)存儲在由ID值指定的分類中所需的多個比特的長度值。該計算機程序產(chǎn)品包括記錄介質(zhì)和在介質(zhì)上記錄有用于指示計算機執(zhí)行以下步驟的裝置,(a)使用給定量化表和游程長度分布以制訂用于多個可能的序列對(rim、size)的成本函數(shù);(b)構(gòu)建表示多個可能的序列對(rim、size)的曲線圖;(c)基于由成本函數(shù)所確定的關(guān)聯(lián)成本而從曲線圖的第一節(jié)點到末端節(jié)點延伸曲線圖的路徑;(d)從所選定的路徑確定相應(yīng)的三元組(run、size、ID);和(e)使用霍夫曼編碼對相應(yīng)的序列對(run、size)編碼。根據(jù)本發(fā)明的第十五方面,提供了一種在計算機上使用的計算機程序產(chǎn)品,其通過聯(lián)合確定輸出量化表、由三元組(r皿、size、ID)所表示的成本確定的系數(shù)指數(shù)序列、和游程長度分布來壓縮n個系數(shù)序列,其中每個三元組(r皿、size、ID)限定相應(yīng)的系數(shù)指數(shù)序列以便(i)在相應(yīng)的系數(shù)指數(shù)序列中的每個指數(shù)為數(shù)字?jǐn)?shù),(ii)相應(yīng)的系數(shù)指數(shù)序列包括了包括有特定值的多個值,和(iii)每個三元組(r皿、size、ID)都限定了表示特定值的多個連續(xù)指數(shù)的游程值(rimvalue)、指定遵循特定值的連續(xù)指數(shù)的數(shù)量的指數(shù)幅度的整數(shù)值ID、以及限定將指數(shù)存儲在由ID值指定的分類中所需的多個比特的長度值,其中系數(shù)17指數(shù)序列與量化表一起確定n個軟決策量化系數(shù)的序列。該計算機程序產(chǎn)品包括記錄介質(zhì)和在介質(zhì)上記錄有用來指示計算機執(zhí)行以下步驟的裝置,(a)選擇第0th個量化表;(b)選擇第0th個游程長度分布;(C)設(shè)定計數(shù)器t為0;(d)使用第tth個量化表和游程長度分布來制定用于多個可能的三元組(r皿、size、ID)的第tth個成本函數(shù);(e)將該成本函數(shù)提供給在多個可能的三元組(r皿、size、ID)中的每個可能的序列以確定關(guān)聯(lián)成本;(f)基于該關(guān)聯(lián)成本從第tth多個可能的三元組(run、size、ID)中選擇三元組(run、size、ID)的第tth個成本確定序列;(g)如果三元組(r皿、size、ID)成本確定的序列以及第tth個量化表和游程長度分布都滿足選擇標(biāo)準(zhǔn);則選擇三元組(r皿、size、ID)的第tth個成本確定的序列作為三元組(run、size、ID)的成本確定的序列,選定該t個量化表作為輸出量化表;否則將t加一而從三元組(r皿、size、ID)的第tth個成本確定的序列中確定第(t+l)th個量化表和游程長度分布,并返回到步驟(d);和(h)使用霍夫曼編碼對相應(yīng)選定的(rim、size、ID)序列編碼。根據(jù)本發(fā)明的第十六方面,提供了一種在計算機上使用的計算機程序產(chǎn)品,其為在n個系數(shù)序列的序列中的n個系數(shù)的每個序列,和由三元組(r皿、size、ID)最終成本確定的序列所表示的系數(shù)指數(shù)的最終成本確定的序列而通過聯(lián)合確定輸出量化表、輸出游程長度分布來壓縮n個系數(shù)序列的序列,其中每個三元組(r皿、size、ID)限定相應(yīng)的系數(shù)指數(shù)序列以便(i)在相應(yīng)的系數(shù)指數(shù)序列中的每個指數(shù)為數(shù)字?jǐn)?shù),(ii)相應(yīng)的系數(shù)指數(shù)序列包括了包括有特定值的多個值,和(iii)每個三元組(r皿、size、ID)都限定了表示特定值的多個連續(xù)指數(shù)的游程值(runvalue)、指定遵循特定值的連續(xù)指數(shù)的數(shù)量的指數(shù)幅度的整數(shù)值ID、以及限定將指數(shù)存儲在由ID值指定的分類中所需的多個比特的長度值,其中系數(shù)指數(shù)序列與量化表一起確定n個軟決策量化系數(shù)的序列。該計算機程序產(chǎn)品包括記錄介質(zhì)和記錄在記錄介質(zhì)上用來指示計算機執(zhí)行如下步驟的裝置,(a)選擇第Oth個量化表;(b)選擇第0th個游程長度分布;(c)設(shè)定計數(shù)器t為0;(d)對于在n個系數(shù)序列的序列中的n個系數(shù)的每個序列,(i)使用第tth個量化表和游程長度分布來制定用于關(guān)聯(lián)的第tth多個可能的三元組(rim、size、ID)的第tth個成本函數(shù);(ii)將該成本函數(shù)提供給在多個可能的三元組(rim、size、ID)中的每個可能的序列以確定關(guān)聯(lián)成本;(iii)基于該關(guān)聯(lián)成本從第tth多個可能的三元組(r皿、size、ID)中選擇三元組(r皿、size、ID)的第t個成本確定序列;(e)在步驟(d)后,將總的成本函數(shù)提供給用于在n個系數(shù)序列的序列中的n個系數(shù)的每個序列的第tth個關(guān)聯(lián)的成本確定的三元組(rim、size、ID),以確定第、h個總成本;(f)如果該第tth個總成本滿足選擇標(biāo)準(zhǔn),則選定該第tth個量化表和游程長度分布作為輸出量化表和游程長度分布,對于在n個系數(shù)序列的序列中的n個系數(shù)的每個序列,將由最終成本確定的三元組(r皿、size、ID)所表示的最終確定的系數(shù)指數(shù)序列作為關(guān)聯(lián)的第tth個三元組(run、size、ID);否則將t加一而從三元組(run、size、ID)的第、個成本確定的序列中確定第(t+l)th個量化表和游程長度分布,并返回到步驟(d);和(g)使用霍夫曼編碼對相應(yīng)選定的序列(run、size、ID)編碼。根據(jù)本發(fā)明的第十七方面,提供了一種在計算機上使用的計算機程序產(chǎn)品,其在給定量化表和給定長度分布下通過確定由相應(yīng)的成本確定的差數(shù)序列所表示的N個系數(shù)的成本確定的序列來壓縮N個系數(shù),其中每個差數(shù)序列限定相應(yīng)的N個系數(shù)的序列以便在差數(shù)序列中的每個差數(shù)都為第ith個指數(shù)值減去第(i-l)th個指數(shù)值的數(shù)字?jǐn)?shù),其中i比0大且小于N-1,該計算機程序產(chǎn)品包括記錄介質(zhì),和記錄在記錄介質(zhì)上用來指示計算機系統(tǒng)執(zhí)行如下步驟的裝置,(a)使用給定的量化步長和給定的游程長度分布來制定用于多個可能的差數(shù)序列的成本功能;(b)將該成本函數(shù)提供給在多個可能的差數(shù)序列中的每個可能的序列以確定關(guān)聯(lián)成本;和(c)基于該關(guān)聯(lián)成本從該多個可能的差數(shù)序列中選擇相應(yīng)的成本確定的差數(shù)序列,并從相應(yīng)的成本確定的差數(shù)序列確定成本確定的N個指數(shù)序列。根據(jù)本發(fā)明的第十八方面,提供了一種在計算機上使用的計算機程序產(chǎn)品,其在輸出量化步長和輸出長度分布下通過聯(lián)合確定輸出量化步長,和由相應(yīng)的成本確定的差數(shù)序列所表示的輸出成本確定的N個指數(shù)序列而壓縮N個系數(shù)序列,其中每個差數(shù)序列都限定相應(yīng)的N個指數(shù)序列以便在差數(shù)序列中的每個差數(shù)都為等于第ith個指數(shù)值減去第(i-1)th個指數(shù)值的數(shù)字?jǐn)?shù),i比0大比N-1小,該計算機程序產(chǎn)品包括記錄介質(zhì),和記錄在記錄介質(zhì)上用以指示計算機系統(tǒng)執(zhí)行如下步驟的裝置,(a)選擇第Oth個量化表和第Oth個游程長度分布;(b)設(shè)定計數(shù)器t為0;(c)使用第tth個量化步長和游程長度分布來制定用于多個可能的差數(shù)序列的第tth個成本函數(shù);(d)將該第tth個成本函數(shù)提供給在多個可能的差數(shù)序列中的每個可能的序列以確定關(guān)聯(lián)成本;(e)基于該關(guān)聯(lián)成本從第tth多個可能的差數(shù)序列中選擇第tth個成本確定的差數(shù)序列;(f)如果該第tth個相應(yīng)的成本確定的差數(shù)序列以及第tth個量化表和第t個長度分布都滿足選擇標(biāo)準(zhǔn);則選擇第tth個成本確定的差數(shù)序列作為輸出的成本確定的差數(shù)序列,選定該tth個量化步長作為輸出量化步長,選定該第tth個長度分布作為輸出的量化步長,并選定該第tth個成本確定的N個指數(shù)序列作為輸出的成本確定的N個指數(shù)序列;否則將t加一而從第tth個成本確定的差數(shù)序列中確定第(t+l)th個量化步長和和第(t+l)th個游程長度分布,并返回到步驟(c)?,F(xiàn)將參考以下附圖對優(yōu)選實施例進行詳細(xì)描述,其中圖1顯示了JPEG編碼器的方框圖;圖2顯示了根據(jù)本發(fā)明的一個方面對量化、游程編碼和霍夫曼編碼的聯(lián)合優(yōu)化方框圖;圖3顯示了根據(jù)本發(fā)明的一個方面的用來表示不同的可能系數(shù)指數(shù)(或,等同地,游程長度對)的定向圖;圖4顯示了從圖3的圖而來的連接和節(jié)點的序列;圖5顯示了根據(jù)本發(fā)明的進一步方面的用于表示DC指數(shù)可以認(rèn)為是n個系數(shù)序列的明確值的框架結(jié)構(gòu);圖6a、6b和6c表示了根據(jù)本發(fā)明的一個方面的用于聯(lián)合優(yōu)化游程編碼、霍夫曼編碼和優(yōu)化表的處理。圖7顯示了根據(jù)本發(fā)明的一個方面的用于聯(lián)合優(yōu)化游程編碼、霍夫曼編碼和優(yōu)化表的處理的流程圖。圖8顯示了圖7中處理的迭代處理的初始化的流程圖;圖9顯示了用于確定在圖7中的特定塊的最優(yōu)路徑的處理的流程圖;圖10顯示了由在圖9中的最優(yōu)路徑確定處理所調(diào)用的塊初始化處理的流程圖;圖11圖示了由圖9中的處理所調(diào)用的增量成本計算處理的流程圖12顯示了用于更新由圖7的處理所調(diào)用的量化表的處理的流程圖;圖13顯示了根據(jù)本發(fā)明的一個方面的數(shù)據(jù)處理系統(tǒng)的方框圖;圖14顯示了用于不同量化表的比率一失真曲線的曲線圖;圖15的曲線圖顯示了根據(jù)本發(fā)明的一個方面的反映迭代的聯(lián)合優(yōu)化算法的不同迭代數(shù)的比率-失真曲線;圖16將根據(jù)本發(fā)明的不同方面所提供的優(yōu)化方法的不同配置的比率-失真曲線劃分成512X512的Lena圖像;圖17將根據(jù)本發(fā)明的不同方面所提供的優(yōu)化方法的不同配置的比率-失真曲線劃分成512X512的Barbara圖像;圖18將根據(jù)本發(fā)明的一個方面的用于512X512的Lena圖像從基于柵格的DC優(yōu)化所得結(jié)果劃分為DC熵vs.DC失真。具體實施例方式圖1中顯示了執(zhí)行三個基本步驟的JPEG編碼器20。編碼器20首先將輸入的圖像22分割成8X8塊,接著按照光柵掃描的順序一個接一個處理這8X8個圖像塊(基線JPEG)。每個塊首先通過8X8DCT24而從像素域轉(zhuǎn)換成DCT域。然后,合成的DCT系數(shù)使用8X8的量化表26來統(tǒng)一地量化。從量化表28來的系數(shù)指數(shù)為在步驟30中使用零游程編碼和霍夫曼編碼進行編碼的熵。如果必須使用步長量化所有圖象的塊,JPEG語法將讓編碼器選擇量化步長和霍夫曼碼字。這種構(gòu)架提供了巨大的機會來考慮在編碼器20應(yīng)用比率_失真(R-D),其中量化表26和霍夫曼表32是編碼器能優(yōu)化的兩個自由參數(shù)。編碼器還能優(yōu)化的第三個但有些隱藏的自由參數(shù)是圖象數(shù)據(jù)本身。取決于圖象數(shù)據(jù)在整個JPEG編碼處理期間的階段,圖象數(shù)據(jù)表現(xiàn)為不同的形式,如在圖2中所示。在硬決策量化前,它們表現(xiàn)為DCT系數(shù)34的形式;而在硬決策量化后,它們表現(xiàn)為DCT指數(shù)36的形式,即量化的DCT系數(shù)由所使用的量化步長歸一化;在鋸齒形排序和游程編碼后,通過指定在各個分類一(r皿、size)代碼和同類的指數(shù)38中的DCT指數(shù)的精確幅度的整數(shù),它們表現(xiàn)為游程長度對的形式。(為了簡明起見,我們將這樣的整數(shù)稱之為同類指數(shù))。要注意的是,DCT指數(shù)與量化步長一起確定量化的DCT系數(shù)。雖然JPEG語法允許量化表在編碼器定制,但通常使用按標(biāo)準(zhǔn)給定的示例性的量化表的縮放版本(參見參考文獻[l])(稱之為默認(rèn)表)。由于默認(rèn)表是獨立于圖像的并且縮放不是圖像自適應(yīng)的,因此默認(rèn)表的縮放比例不是最理想的。即便使用自適應(yīng)圖像的量化表,JPEG也必須為每個圖像塊應(yīng)用相同的表,以表示從優(yōu)化系數(shù)指數(shù),即DCT指數(shù)中仍然保留了潛在增益。要注意的是,硬決策量化加系數(shù)指數(shù)優(yōu)化等于軟決策量化。因為系數(shù)指數(shù)可以等同地表示為游程長度對,其后面是經(jīng)過游程編碼的同類指數(shù),因此我們可以簡單地將系數(shù)指數(shù)優(yōu)化稱之為與步長和霍夫曼優(yōu)化并行的游程編碼優(yōu)化。如以下所描述的,我們不僅提出了非常靈巧、基于曲線圖的游程編碼優(yōu)化方案,還提供了一種用于聯(lián)合優(yōu)化如分別在圖2的步驟40、42和44中的游程編碼、霍夫曼編碼和量化步長的迭代優(yōu)化方案。形式問題定義現(xiàn)在,我們來闡述我們的聯(lián)合優(yōu)化問題,其中對在基線JPEG中的所有三個自由參數(shù)進行最小化處理。在這部分中我們僅考慮AC系數(shù)的優(yōu)化。DC系數(shù)的優(yōu)化將在以后討論。在JPEG編碼中給定輸入圖像1。和固定量化表Q,通過游程編碼找到每個8X8塊的同類指數(shù)后,系數(shù)指數(shù)完全確定了游程長度對的序列,反之亦然。我們提出的問題是在同類的指數(shù)ID、所有可能的霍夫曼編碼表H、和所有可能的量化表Q之后,在所有可能的游程長度對(R,S)序列上進行有約束的最優(yōu)化<formula>formulaseeoriginaldocumentpage21</formula>(10)或等效于<formula>formulaseeoriginaldocumentpage21</formula>其中d[lo,(R,S,ID)Q]表示在原始圖像I。和在所有AC系數(shù)上由(R,S,ID)和Q所確定的重構(gòu)圖像之間的失真,r[(R,S),H]表示所有從選定的序列(R,S,ID)和霍夫曼表H所得的所有AC系數(shù)的壓縮率。在(10)和(11)中,rbudgrt和dbudgrt分別是比率約束Crateconstraint)禾口失真約束(distortionconstraint)。根據(jù)拉格朗日乘子,我們可以將比率約束問題或失真約束問題轉(zhuǎn)化成以下的非約束問題。<formula>formulaseeoriginaldocumentpage21</formula>用}(12)其中拉格朗日乘子入是固定參數(shù),其表示用于失真比率的折中(tradeoff),而J(A)是拉格朗日成本。這種類型的優(yōu)化落入到所謂的固定斜率編碼(fixedslopecoding)的類型中,該固定斜率編碼由E._h.Yang,Z.Zhang,禾口T.Berger于1997年9月在IEEETrans.Inform.Theory,第43巻,第1465-1476頁的"Fixedslopeuniversallossydatacompression(固定斜率的通用有損數(shù)據(jù)壓縮)"(以下稱之為"參考文獻[10]")以及E.-h.Yang和Z.Zhang于1999年3月在IEEETrans.Inform.Theory,第45巻,第586-608頁的"Variable-ratetrellissourcecoding(可變比率的柵格信源編碼)"(以下稱之為"參考文獻[ll]")中所倡導(dǎo)。介紹性地,將我們的聯(lián)合優(yōu)化問題與聯(lián)合閥值和量化器選擇進行比較(參見參考文獻[8]和[9])。另一方面,這兩者都是旨在聯(lián)合優(yōu)化三個參數(shù)的迭代處理。另一方面,我們的方案在兩個方面顯著不同(參見參考文獻[8]和[9])。首先,我們考慮了系數(shù)指數(shù)或(R,S,ID)序列的全部優(yōu)化而不是考慮只忽略無關(guān)緊要的系數(shù)指數(shù)表示的部分優(yōu)化(參見參考文獻[8]和[9])。正如我們在以下部分中所要看見的,這使得全部的優(yōu)化都是非常靈巧、可有效計算的解決方案。這與所提出的相對耗時和繁瑣解決方案的部分優(yōu)化(參見參考文獻[7],[8]和[9]))截然不同。其次,我們不需要提供任何耗時的量化器選擇方案來在每次迭代中找出R-D的優(yōu)化步長。相反,我們使用默認(rèn)的量化表作為起始點,隨后為步長的局部優(yōu)化而在每次迭代中有效地更新步長。問題的解決方案比率失真優(yōu)化問題(12)就是失真、比率、霍夫曼表、量化表和序列(R,S,ID)的聯(lián)合優(yōu)化。為了使優(yōu)化問題易于處理,我們提出了一種迭代算法,其假定其他兩個參數(shù)固定,反復(fù)選擇序列(R,S,ID)、霍夫曼表、和量化表來使公式(12)的拉格朗日成本最小。由于游程長度概率分布P完全決定了霍夫曼表,因此我們使用P來替代在優(yōu)化處理中的霍夫曼表H。這種迭代算法可以描述如下l)從給定圖像1。和量化表Q。而初始化游程長度分布P。。由于量化是獨立于圖像的,因此這種將預(yù)定的量化表Q。應(yīng)用到I。就稱之為硬量化(hard-quantization)。(例如,初始的游程長度分布P。可以是通過使用由初始Q。所給定的硬決策量化器所得的序列對(rim、size)的經(jīng)驗分布,并用于量化I。的DCT系數(shù)。)設(shè)定t=0,并指定公差e作為收斂性標(biāo)準(zhǔn)(convergencecriterion)。2)對任意t>0固定Pt和Qt。找到能滿足以下最小式的優(yōu)化序列(Rt,St,ID》巧i^J(A)-4厶,(及,S,^)e']+義.爪A,S),尸'])其中,由J'(入)表示d[Io,(Rt,St,IDt)。J+入*r[(Rt,St),Pt]3)固定(Rt,St,IDt)。將Qt和Pt分別更新成Qt+1和Pt+1以便Q^和Pw一起滿足以下最小式忍1^{"/(義)="[;(及,,&,/£),^]+義7[(;,,&),/>]}其中以上的最小化對所有的量化表Q和所有的游程長度概率分布P進行。要注意的是可以選擇Pw作為(Rt,St)的經(jīng)驗游程長度分布。4)對t=0,1,2,…重復(fù)進行步驟2)和3)直到J1(A)-Jt+1(A)《e。然后,輸出(Rt+1,St+1,IDt+1),Qt+1和Pt+1。由于拉格朗日成本函數(shù)在每一步中并不增加,因此保證了收斂性。迭代算法的核心是步驟2)和步驟3),S卩,找到序列以用給定的Q和P最小化拉格朗日成本J(A),并用圖像的新指數(shù)更新量化步長。這兩步將在以下分別敘述。基于曲線圖的游程編碼優(yōu)化如上所述,即便使用圖像自適應(yīng)量化表,JPEG量化也缺乏局部自適應(yīng)性,這顯示出從系數(shù)指數(shù)本身的優(yōu)化依然存在潛在的增益。這種增益可在步驟2)中使用。優(yōu)化閥值(參見參考文獻[7])僅考慮了系數(shù)指數(shù)的部分優(yōu)化,即忽略在R-D方向(R-Dsense)中不顯著的系數(shù)。我們提出了一種高效的基于曲線圖的優(yōu)化搜索算法以優(yōu)化在R-D方向中的全部系數(shù)指數(shù)。它不僅能忽略(drop)非顯著的系數(shù),而且還能將它們從一種分類變?yōu)榱硪环N,如果在R-D方向中需要,甚至將零系數(shù)變?yōu)楹苄〉姆橇阆禂?shù)也是可能的。換句話說,我們的基于曲線圖的優(yōu)化路徑搜索算法在所有的可能系數(shù)指數(shù)(或等效地,優(yōu)化游程長度對)中發(fā)現(xiàn)優(yōu)化系數(shù)指數(shù)以最小化拉格朗日成本。由于給定了Q和P,因此拉格朗日成本J(入)是以塊方式(blockiise)增加的,在步驟2)中的最小化能通過一塊接一塊的方式解決。也就是說,優(yōu)化序列(R,S,ID)可以為每個8X8圖像塊獨立確定。這樣,在以下中,我們僅限于討論一個8X8的圖像塊。讓我們限定一個具有65個節(jié)點(或狀態(tài))的定向圖。如在圖3中所示,首先的64個狀態(tài),其用數(shù)字i=0,1,…,63表示,相應(yīng)于鋸齒形順序中8X8圖像塊的64個系數(shù)指數(shù)。最后一個狀態(tài)是稱之為末狀態(tài)(endstate)的特定狀態(tài),其被用來處理EOB(end-of-block(塊末端))。每個狀態(tài)i(i《63)可以具有在(R,S)對中相應(yīng)run、R的先前的16個狀態(tài)j(j<i)引入的連接。(在JPEG語法中,R從0到15取值)。末狀態(tài)可以具有從具有表示EOB編碼(S卩,在第i個系數(shù)后的編碼(O,O))的狀態(tài)i(i《62)來的每個連接的所有其他狀態(tài)來的引入連接。對于給定的狀態(tài)i(i《63)以及它的前趨i-r-l(O《r《15),在它們之間存在IO個并行的過渡,其相應(yīng)于在(R,S)對中的長度組,S。為了簡明起見,我們僅僅畫出在圖3中所示的曲線圖中的一個過渡;整個曲線圖都需要S的延伸。對于每個i,其中i>15,從相應(yīng)于對(15,0)的狀態(tài)i-16到狀態(tài)i還存在一個過渡,即,ZRL(零游程)代碼。我們從狀態(tài)i-r-l到狀態(tài)i分配給每個過渡(r,s)—個成本,其中該成本被限定為當(dāng)?shù)趇個DCT系數(shù)被量化為長度組s(S卩,該系數(shù)指數(shù)需要s比特來表示它的幅度)并且在該第i個DCT系數(shù)被量化為零之前所有的r個DCT系數(shù)立即出現(xiàn)時從從狀態(tài)i-r-l到狀態(tài)i進行的拉格朗日成本。具體地,這個增加的成本等于SC)+IC,-g,/£>,|2.(—log2尸(r,"+"(13)其中,Cj,j=1,2,…,63,為第jth個DCT系數(shù),IDi為相應(yīng)于長度組s的同類指數(shù),其中該長度組在由該長度組s所指定的分類中的所有同類指數(shù)之間使Cj產(chǎn)生最小化失真,而Qi22為第ith個量化步長。類似地,對于從狀態(tài)i(i《62)到末狀態(tài)的過渡,它的成本限定為f;C)log2JP(0,0))(14)從狀態(tài)63到末狀態(tài)的過渡未分配成本。很容易看出,根據(jù)以上的定義,8X8塊的游程長度對的每個序列相應(yīng)于具有拉格朗日成本的從狀態(tài)O到末狀態(tài)的一條路徑。例如,塊的游程長度對(0,5),(4,3),(15,0),(9,1),(O,O)的序列相應(yīng)圖4所示的路徑。另一方面,在定向圖中并不是所有從狀態(tài)O到末狀態(tài)都代表8X8塊的游程長度對的合法序列。我們稱這樣的路徑是非法路徑。例如,由從狀態(tài)1到狀態(tài)17的過渡(15,0)和從狀態(tài)17到末狀態(tài)的過渡(O,O)后的從狀態(tài)0到狀態(tài)l的過渡(0,5)構(gòu)成的路徑就是非法路徑,該路徑不表示8X8塊的游程長度對的合法序列。然而,不難看出,對于任意非法路徑,總是存在合法路徑,該合法路徑的拉格朗日成本確實要比非法路徑的要小。因此,在包括了合法路徑和非法路徑的所有可能路徑中從狀態(tài)0到末狀態(tài)具有最小總的拉格朗日成本的優(yōu)化路徑一定是合法路徑。此外,優(yōu)化路徑,以及其相應(yīng)的如在(13)中所確定的同類指數(shù),為任意給定的Q,P和8X8塊得到了步驟2)中的最小化。例如,我們可以將快速動態(tài)編程算法應(yīng)用到定向的曲線圖,以便為給定的8X8塊找到優(yōu)化序列(R、S、ID)。應(yīng)當(dāng)指出的是,基線JJPEG語法并不會為8X8塊產(chǎn)生由(15,0)結(jié)束的序列(R,S)。理論上,通過我們的動態(tài)編程所找到的優(yōu)化(R,S)序列可以由(15,0)至狀態(tài)63而結(jié)束,即使其不太可能在實際應(yīng)用中發(fā)生(當(dāng)(15,0)的熵率(entropyrate)比(O,O)的熵率要小時才可能發(fā)生)。但是,由(15,0)至狀態(tài)63所結(jié)束的(R,S)序列為合法路徑,并且可以由基線JPEG語法來正確地編碼/解碼。以下將更詳細(xì)的一步步描述該算法。開始時,該算法基于給定游程長度分布P而為每個游程長度對(r,s)預(yù)先計算A(-log2P(r,s)+s)。為每個狀態(tài)i,遞歸預(yù)計算由忽略在狀態(tài)前的前述1至15個系數(shù)獲得的失真以及在該狀態(tài)結(jié)束該塊的剩余成本。該算法從狀態(tài)0(DC系數(shù))開始。忽略所有AC系數(shù)的成本被存儲在J。中。接著,進行狀態(tài)l(第一AC系數(shù))。存在十條路徑從狀態(tài)0開始到狀態(tài)1。這十條路徑相應(yīng)于該第一AC指數(shù)可以落入的長度分布。與每條路徑關(guān)聯(lián)的成本使用公式(13)來計算,其中,預(yù)先計算在公式(13)中的第一項,之后確定IDi。為了簡明起見,這里我們只考慮正指數(shù);對稱性地可以類似地處理負(fù)指數(shù)。假定IDi'為響應(yīng)輸入&的具有步長Qi的硬決策量化器的輸出,其落入到由s'所指定的分類中。如果s二s',則由于在這樣的長度組中IDi導(dǎo)致了C的最小失真,因此選定IDi作為IDi'。如果s〈s',則由于這個最大的數(shù)導(dǎo)致了在這個組中的最小失真,因此選定IDi作為該長度組s中的最大數(shù)。類似地,如果s〉s',則選定IDi作為該長度組s中的最小數(shù)。在計算出十個增加成本后,我們可以找到從狀態(tài)0到狀態(tài)1的最小成本并能夠記錄該最小成本以及導(dǎo)致到狀態(tài)1的最小成本的游程長度對(r,s)。接著,將忽略(dropping)從2到63的所有系數(shù)的成本加入到狀態(tài)1的最小成本。這個總和存儲在Ji中,其即為當(dāng)?shù)谝籄C系數(shù)為要被發(fā)送的最后的非零系數(shù)時這個塊的總的最小成本。進行到狀態(tài)2,從狀態(tài)0到狀態(tài)2存在110條路徑。在這些路徑中,十條路徑是直接從狀態(tài)0到狀態(tài)2,而100條路徑是從狀態(tài)0通過狀態(tài)1到狀態(tài)2(10乘10)。確定在狀態(tài)2終止的最佳路徑的最有效的方法是使用動態(tài)編程算法。由于與在狀態(tài)0和狀態(tài)1終止關(guān)聯(lián)的最小成本是已知的,因此找到終止在狀態(tài)2中的最小成本路徑的工作就是簡單地找到從狀態(tài)0到23狀態(tài)2和從狀態(tài)1到狀態(tài)2的最小增加成本。分別將這兩個最小增加成本加入狀態(tài)0和狀態(tài)1的最小成本;在這兩個總和之中較小的一個就是狀態(tài)2的最小成本。這個最小成本和導(dǎo)致該最小成本的游程長度對(r,s)都存儲在狀態(tài)2中。接著,將忽略所有從3到63的系數(shù)的成本加入到狀態(tài)2的最小成本。該總和存儲在Ji中,其即為當(dāng)?shù)诙嗀C系數(shù)為要被發(fā)送的最后的非零系數(shù)時這個塊的總的最小成本。要注意的是,如果到狀態(tài)2的最小路徑是直接從狀態(tài)0來的,則在所存儲的狀態(tài)2的游程長度對(r,s)中所存儲的r為l,這意味著該第一AC被量化或強制為0。如果該到狀態(tài)2的最小路徑是從狀態(tài)1來的,則所存儲的r為O,這意味著該第一AC指數(shù)是非零的。該遞歸接著對第三系數(shù)等進行處理直到在位置63的最后的系數(shù)也進行完了。此時,我們比較Jk(k二O,l,…,63)的值,并找到最小值,也就是說,對某個l^的Jk。在每個狀態(tài)中所存儲的對(r,s)的幫助下通過從1^返回,可以在所有可能的路徑中找到從狀態(tài)0到末狀態(tài)具有最小成本的優(yōu)化路徑,從而得到給定8X8塊的優(yōu)化序列(R,S,ID)。這個算法的偽碼如圖6a、6b和6c所示。以上的處理是全動態(tài)編程方法。為了進一步降低計算的復(fù)雜性,我們可以對其進行細(xì)微地修改。具體地,在實際中我們并不一定要比較在從一個狀態(tài)到另一個狀態(tài)的10或ll個并行過渡中增加的成本。反而,對我們來說,只要比較在與長度組s-l,s,和s+l關(guān)聯(lián)的過渡中的增加成本就已經(jīng)足夠了,其中s為相應(yīng)于給定硬決策量化器的輸出的長度組。與其他組關(guān)聯(lián)的過渡最有可能導(dǎo)致大的增加成本。我們應(yīng)當(dāng)比較在以下所述的實驗結(jié)果中這兩個方案的復(fù)雜性和性能差異。優(yōu)化量化表更新為了更新在步驟3)中的量化步長,我們需要解決以下的最小化問題<formula>formulaseeoriginaldocumentpage24</formula>于一旦給定了(R,S,ID),則壓縮率就與Q無關(guān),其中I。表示要被壓縮的原始輸入圖像,Q=(q。,A,…,q63)代表了量化表。讓Ci,j表示以第jth塊的鋸齒形順序中在第ith個位置處的I。的DCT系數(shù)。序列(R,S,ID)確定DCT指數(shù),S卩,由量化步長所歸一化的量化的DCT系數(shù)。讓Ki,j表示以從(R,S,ID)獲得的第jth塊的鋸齒形順序在第ith個位置的DCT指數(shù)。接著,通過Ki,jA給定以第jth塊的鋸齒形順序中在第ith個位置處的量化DCT系數(shù)。根據(jù)Ci,j和Ki,jqi,我們可以將d[I。,(R,S,ID)Q]重寫為63腸—礎(chǔ)2<formula>formulaseeoriginaldocumentpage24</formula>(15)其中Num_Blk為在給定圖像中的8X8塊的數(shù)量。在公式(15)中,其遵循d[I。,(R,S,ID)Q]的最小化可以通過獨立地為每個i=1,2,…,63最小化公式(15)的內(nèi)部總和來獲得。我們的目的是找到一組新的量化步長S,(1<i<63)來最小化丐<formula>formulaseeoriginaldocumentpage24</formula>公式(16)可以寫作<formula>formulaseeoriginaldocumentpage24</formula>,何,…,63(17)這些二次函數(shù)的最小化可以根據(jù)《,對公式(17)取導(dǎo)數(shù)而估算。公式(16)的最小化可根據(jù)下式獲得9=:m——,J'=l,…,63(18)從而更新在步2《驟3)中的步長。基于柵格的DC優(yōu)化在這部分,我們根據(jù)量化步長和霍夫曼表考慮量化DC系數(shù)的聯(lián)合優(yōu)化。在JPEG語法中,量化的DC系數(shù)使用一維預(yù)測器差異性編碼,其為先前的量化DC值。由于對量化的DC系數(shù)編碼的成本僅僅取決于先前量化的DC系數(shù),因此在聯(lián)合優(yōu)化中使用柵格。讓我們限定柵格具有N階段,其相應(yīng)于DC系數(shù)的數(shù)量,即,在重新開始的時間間隔中8X8塊的數(shù)量(DC系數(shù)的預(yù)測初始于在每個重新開始的時間間隔和每個掃描開始的0處(參見參考文獻[l])。每個階段都具有M個狀態(tài),其相應(yīng)于DC指數(shù)能取的不同值,在相鄰階段中的狀態(tài)能完全連接,如同在圖5中所示的。在每階段中的每個狀態(tài)都與作為從初始狀態(tài)到該狀態(tài)的最小成本的成本關(guān)聯(lián)。找到優(yōu)化DC指數(shù)序列的處理從0階段開始直至N-l階段。在N-l階段,具有最小成本的狀態(tài)被挑選出來并且從0階段到N-l階段的具有最小成本的優(yōu)化路徑被向后描繪出,從而產(chǎn)生優(yōu)化DC指數(shù)序列。以下將更具體地一步步描述該處理。讓x(i,j)表示在階段ith中的第jth個狀態(tài)(0《i《N-1,0《j《M-l),讓v(i,j)表示相應(yīng)于狀態(tài)x(i,j)的DC指數(shù)值。讓cos^mini(i,j)表示從初始狀態(tài)到x(i,j)的最小成本。讓cost」nc(i-l,j',i,j)表示從x(i-l,j')到x(i,j)的增加成本,其限定如下costjnc(i-l,j',i,j)=iDC「q。'v(i,j)12+A(_log2P(S)+S)(19)其中q。為用于DC系數(shù)的量化步長,為第ith個DC系數(shù),S為/v(i,j)-v(i-l,j')/之差的組類,而P(S)為在12個長度類(0《S《11)中的概率。與初始狀態(tài)關(guān)聯(lián)的成本被設(shè)定為O。我們從階段0開始。由于每個狀態(tài)只有一個引入路徑,因此在階段0中對每個狀態(tài)的成本為從初始狀態(tài)增加的成本。接著,我們進到階段1并從狀態(tài)0開始。從x(O,j')到x(l,O)存在M條引入路徑(0《j'《M-l)。使用公式(19)來計算M個增加成本(即,cost」nc(i-l,j',l,O))同時將這些M個增加成本分別加入到與在階段O處的M個狀態(tài)關(guān)聯(lián)的M個最小成本。選定最小的并將其記錄為x(l,O)的cost—mini(l,O)。為了回撤的目的還記錄優(yōu)化前趨。以相同的方式,我們需要為在階段l中的其他M-l個狀態(tài)找到costjnini(1,j)(0《j《M-l)和優(yōu)化前趨。該過程繼續(xù)進行到階段2直到階段N-1。此時,我們?yōu)?《j《M-l找到了具有最小costjiiini(N-i,j)的j*。這個cost—mini(N-l,j*)為從初始狀態(tài)到階段N-1的優(yōu)化路徑的最小成本。在每個狀態(tài)中所存儲的優(yōu)化前趨的幫助下通過從f回撤,可以找到從初始狀態(tài)到階段N-l的最優(yōu)路徑。從而,得到優(yōu)化DC指數(shù)序列。在獲得優(yōu)化DC指數(shù)序列后,如以上所討論的,我們可以以相同的方式更新P(S)和量化步長q。。然后,如同我們用量化步長和霍夫曼表聯(lián)合優(yōu)化量化AC系數(shù)所作的一樣,重復(fù)該優(yōu)化處理。在基線JPEG中,DC指數(shù)能上達(dá)2047個不同的值(-1023至1023),其在每個階段中需要2047個狀態(tài)。大量的狀態(tài)不僅增加了以上算法的復(fù)雜性,而且還需要大量的存儲位置。實際上,如果DC系數(shù)為軟量化為與硬決策量化器的輸出相差很遠(yuǎn)的值,則最有可能導(dǎo)致更高的成本路徑。因此,在實際的基于柵格的DC量化的實現(xiàn)中,我們可以只設(shè)置相應(yīng)于25在硬決策量化器的輸出附近的DC指數(shù)的少量狀態(tài)。例如,我們可以只使用33格狀態(tài),其中每個具有中間狀態(tài)的階段相應(yīng)于硬決策量化器的輸出,而以上和以下的16個狀態(tài)分別相應(yīng)于比硬決策量化器的輸出要大或要小的16個鄰近指數(shù)。這就在稍微降低性能的同時顯著地降低了計算的復(fù)雜性和存儲器的需求。在圖7的流程圖中顯示了根據(jù)本發(fā)明一方面的用于聯(lián)合優(yōu)化游程編碼、霍夫曼編碼和量化表的處理。在步驟52,開始迭代處理,如在圖8的流程圖中詳細(xì)概括的。在步驟54,j,表示N個總塊的第jth塊的指數(shù),被設(shè)定為1。在步驟56,處理為塊j確定優(yōu)化路徑,在這種情況下,為第一塊。這將在圖9中的流程圖中詳細(xì)概括。在查詢58,其確定了j是否為最后的塊。這通過將j與N(總的塊數(shù)量)進行比較而得。如果j比N要小,則在步驟60中增加j。處理為每個塊j找到優(yōu)化路徑直到j(luò)=N。當(dāng)j二N時,就為N個塊的每一個確定了優(yōu)化路徑。在步驟62中計算J(A)的第(t+l)th個值作為與N個塊的每個關(guān)聯(lián)的總的最小失真。該值接著與在查詢64中的第tth個值進行比較。若在J(A)的第tth個值與J(入)的第(t+l)th個值間的差小于e(選擇標(biāo)準(zhǔn),或更具體地,收斂性判別標(biāo)準(zhǔn)),則認(rèn)為已完成了優(yōu)化。若不是這種情況,則聯(lián)合優(yōu)化處理轉(zhuǎn)到步驟66并且更新量化表Qw,如在圖12的流程圖中所詳細(xì)概括的。在步驟68,使用第(t+l)th個概率分布函數(shù)來計算與游程長度對(r,s)關(guān)聯(lián)的熵率。在步驟70,增加指數(shù)t,隨后執(zhí)行額外的迭代。若確定了滿足在查詢64中的選擇標(biāo)準(zhǔn),則使用與游程長度對(r,s)關(guān)聯(lián)的第(t+l)th個概率分布函數(shù)在步驟72中產(chǎn)生定制的霍夫曼表。步驟74使用這些定制的霍夫曼表來對游程長度對和指數(shù)編碼。用于聯(lián)合優(yōu)化游程編碼、霍夫曼編碼和量化表的處理完成。現(xiàn)參考圖8的流程圖,更詳細(xì)地描述在圖7的流程圖的步驟52中的迭代處理的初始化。在步驟82,選擇拉格朗日乘子A。它是表示用于失真的比率交替的固定參數(shù)。在步驟84,選擇收斂性判別標(biāo)準(zhǔn)e。這就是通過連續(xù)迭代的拉格朗日成本,jt(入),的差必須低于的量,因此認(rèn)為迭代是成功和完成了。在步驟86,產(chǎn)生初始量化表Q。。步驟88使用給定的圖像I。和在先前步驟中產(chǎn)生的量化表Q。來確定游程長度分布P。(r,s)。在步驟90,該游程長度分布接著用于計算與游程長度對(r,s)關(guān)聯(lián)的熵率。在步驟92,基于原始DCT系數(shù)和拉格朗日乘子A、量化表Q。和與游程長度對(r,s)關(guān)聯(lián)的熵率而計算初始的拉格朗日成本J0(^)。在步驟94,將N設(shè)定為等于圖像塊的數(shù)量,而在步驟96,當(dāng)指數(shù)被強制到長度組0時,為給第ith個DCT系數(shù)發(fā)送的指數(shù)(15<i<63),并則ID(i,0)被設(shè)定為0。最后,在步驟98,迭代指數(shù)t設(shè)定等于0并且完成初始化迭代處理的處理?,F(xiàn)參考圖9的流程圖,在圖7中的流程圖更詳細(xì)地描述了用于為步驟56的塊j確定優(yōu)化路徑的處理。在步驟112,初始化塊j,如在圖10的流程圖中詳細(xì)概括的。在步驟114,為塊j的狀態(tài)i存儲當(dāng)前最低拉哥朗日成本的變量,currentjiiinicost被設(shè)定為大數(shù)。在步驟116,變量k被賦值表示從先前狀態(tài)增加的連接數(shù)。若i〉15,則k賦值為15。若i《15,則k=i-l。在步驟118,與游程關(guān)聯(lián)的變量被設(shè)定為等于0,而在步驟120,與長度組關(guān)聯(lián)的變量s被設(shè)定為O。在查詢122,處理確定關(guān)系式s=0和r<15是否為真。若不是這種情況,則在步26驟124計算對狀態(tài)i的成本,正如在圖11的流程圖中所詳細(xì)概括的。在查詢126,對狀態(tài)i的成本與當(dāng)前最小的成本current_cost進行比較。若狀態(tài)i的成本J比current_cost要少,則用J替換current_C0St,并且在步驟128將變量r、s、id(i,s)和J存儲到狀態(tài)i。在當(dāng)前成本不少于current_minicost時從步驟128,以及從查詢126;當(dāng)找到s=0和r<15持續(xù)為真時從查詢122,處理轉(zhuǎn)到查詢130,其詢問s是否少于10。若s<10,則在步驟132增加s并且與計算對狀態(tài)i的成本關(guān)聯(lián)的迭代與更新的變量一起重復(fù)。若在查詢130中s>10,則查詢134詢問r是否小于k。若r<k,則在步驟136中r增加,在步驟120中將s重置為0,并且重復(fù)用于計算對狀態(tài)i的成本的迭代。但是,若r不少于k,則查詢138詢問i是否少于63。若存在這種情況,則在步驟140增加i并且重復(fù)整個迭代。若i不少于63,則認(rèn)為所有的成本都已被計算并且在步驟142中通過回撤而確定塊j的優(yōu)化路徑。在步驟144,從優(yōu)化路徑來的游程長度對(r,s)用來更新游程長度概率分布函數(shù)Pt+1(r,s),同時完成對塊j找尋優(yōu)化路徑的處理?,F(xiàn)參考圖10的流程圖,更詳細(xì)地描述圖9的流程圖中步驟112的用于塊j的初始化。在步驟152中,塊成本的末端,eob—cost(i)對0《i《62進行遞歸計算。這相應(yīng)于在狀態(tài)i后忽略所有系數(shù)的成本。在步驟154,失真dist(r,i)對i《r《15和2《i《63進行遞歸計算。這涉及到忽略在狀態(tài)i-r-l和狀態(tài)i之間的均方失真(MSE)。在步驟156,第二失真度量(distortionmetric),d(i,s)對于1《i《63和1《s《10進行計算。當(dāng)相應(yīng)的指數(shù)強制到長度組s中時從第ith個DCT系數(shù)導(dǎo)出均方失真(MSE)。在步驟158,當(dāng)指數(shù)在長度組s中時用于第ith個DCT系數(shù)的要被發(fā)送的指數(shù),id(i,s)對于1《i《63和1《s《10進行計算。最后,在步驟160,狀態(tài)值數(shù)i被設(shè)定為等于1,同時完成對塊j的初始化?,F(xiàn)參考圖11的流程圖,用于計算對狀態(tài)i的成本的過程,在圖9的流程圖的步驟124進行了詳細(xì)描述。查詢172詢問s是否等于0。若發(fā)現(xiàn)這種情況為真,則步驟174確定從狀態(tài)i-r-l(其中r=15)到狀態(tài)i增加的失真作為在忽略狀態(tài)i_16和i之間所有系數(shù)的均方失真和忽略在當(dāng)前塊中的第ith個DCT系數(shù)的均方失真的總和。接著,在步驟176中計算對狀態(tài)i的的成本,來作為對狀態(tài)i-r-l的成本、從狀態(tài)i-r-l到狀態(tài)i增加的失真、以及與由A測量的與游程長度對(15,0)關(guān)聯(lián)的熵率的總和。若s在查詢172不等于0,則在步驟178中計算增加的失真作為忽略在狀態(tài)i_r_l和狀態(tài)i之間所有系數(shù)的均方失真和當(dāng)若強制到長度組s中則相應(yīng)的指數(shù)時從第i個DCT系數(shù)所得的均方失真的總和。接著在步驟180中計算對狀態(tài)i的成本作為對狀態(tài)i-r-l的成本,加上從狀態(tài)i-r-l到狀態(tài)i的增加成本,加上與由A測量的游程長度對(15,0)關(guān)聯(lián)的熵率的總和。當(dāng)該迭代的成本已經(jīng)在步驟176或步驟180中計算時,完成對狀態(tài)i的成本計算?,F(xiàn)參考圖12的流程圖,詳細(xì)說明圖7的流程圖的步驟66用于更新量化表Q^的處理。在步驟194中,分子隊列,皿m(i)對1《i《63初始為0。類似地,在步驟194,分母隊列,den(i)也對1《i《63初始為0。在步驟196,塊指數(shù)j初始為1。在步驟198,塊j從它的游程長度和指數(shù)格式恢復(fù)以產(chǎn)生系數(shù)指數(shù)隊列Ki,j。在步驟200,指數(shù)i,其表示在第jth塊的鋸齒形順序中的位置被設(shè)定為1。在步驟202,計算在分子隊列中的第ith個值以作為它的當(dāng)前值和第,個塊的原27始的第ith個DCT系數(shù)和在以第jth個塊的鋸齒形順序中第ith個位置恢復(fù)的DCT系數(shù)的乘積的總和,正如在步驟198中從游程長度和指數(shù)格式確定的一樣。在步驟204,計算在分母隊列中的第ith個值以作為它的當(dāng)前值和在以第jth個塊的鋸齒形順序中第ith個位置的DCT指數(shù)的平方。查詢206詢問i是否小于63。若i<63,則在步驟208中增加i并且計算與新的i關(guān)聯(lián)的分子和分母。若在查詢206中i不小于63,則查詢210詢問j是否比N(塊的總數(shù)量)小。如果j<N,則在步驟212增加j并且基于下一個塊執(zhí)行分子和分母的計算。否則在步驟214將i設(shè)定等于l。在步驟216,計算與在量化表Qw的鋸齒形順序中的第ith個位置關(guān)聯(lián)的值,計算qi作為在位置i的分母上的分子值。查詢218詢問i是否小于63。若這種情況為真,則在步驟220增加i并且計算在量化表中的剩余位置。否則,完成Qt+1的更新。參考圖13,其顯示根據(jù)本發(fā)明的優(yōu)選方面的用于執(zhí)行諸如與圖7-12相關(guān)聯(lián)的如上所述的壓縮方法的數(shù)據(jù)處理系統(tǒng)230的結(jié)構(gòu)圖。如圖13所示,系統(tǒng)230包括顯示器232,其用于顯示例如要被傳輸?shù)膱D像等。類似地,存儲器234可以包括要被傳輸?shù)腏PEG或MPEG文件。在通過用戶界面236從用戶接收指令時,在將壓縮的數(shù)據(jù)提供給子系統(tǒng)240之前,微處理器238使用計算模塊和初始模塊(未示出)以上述描述的方式壓縮輸入的圖像數(shù)據(jù)。然后,通信子系統(tǒng)240可以向網(wǎng)絡(luò)242傳輸該壓縮的數(shù)據(jù)。如上所述,雖然從通信子系統(tǒng)240到網(wǎng)絡(luò)242傳輸?shù)姆绞娇梢允菬o線的或通過電話線,或通過更高帶寬的連接,但系統(tǒng)240可以集成到數(shù)碼相機或移動電話中。實驗結(jié)果AC系數(shù)的優(yōu)化上述的基于曲線圖的游程編碼優(yōu)化算法和迭代的聯(lián)合優(yōu)化法可以應(yīng)用到用于解碼器的兼容優(yōu)化的JPEG和MPEG編碼環(huán)境。它們兩者都以給定的量化表開始。由于以上討論的量化步長更新算法僅取得了局部優(yōu)化性,因此,如果必須使用默認(rèn)的量化表,則默認(rèn)的量化表的初始縮放比例對R-D性能有直接的影響。例如,圖14顯示了使用我們的基于曲線圖的游程編碼優(yōu)化方法對512X512的Barbara圖像的影響。曲線"a"相應(yīng)于默認(rèn)的量化表而曲線"b"相應(yīng)于0.5精密標(biāo)度(即,所有步長長度的一半)的曲線。這些曲線通過所有感興趣的正值清除拉格朗日乘子A而得到。對于壓縮目的,通過縮放量化表而取得的R-D曲線也給定為"c"可以看出,我們可以從曲線"a"或曲線"b"的點X取得相同的失真。從曲線"c"我們可以使用小A來得到點Y。(由于可以預(yù)乘熵率因此在執(zhí)行比率以降低復(fù)雜性之前替換A;-l/A在R-D曲線上具有坡度的物理意義)。從曲線"b"我們可以使用比較大地A來得到點Z。即便對半檢索(binarysearch)方法能夠用來找到在R_D方向上優(yōu)化的初始比例縮放因子,根據(jù)經(jīng)驗所確定的比例能很好地起作用并可以取得通過優(yōu)化方案所取得的大多數(shù)增益。在我們的實驗中使用了經(jīng)驗方法。給定初始量化表,在迭代的聯(lián)合優(yōu)化算法中的疊代數(shù)還在計算復(fù)雜性和得到的壓縮性能上有直接的影響。圖15包括為512X512Lena圖像而從一次迭代(僅優(yōu)化游程長度對)、兩次迭代和全部迭代(收斂性公差e設(shè)定為O.1,同時迭代的結(jié)果的平均數(shù)為大約6)取得的R-D曲線。可以看出,從全部聯(lián)合優(yōu)化所得到的大多數(shù)增益可以在兩次迭代中取得。如上所述,量化步長更新算法僅能得到局部優(yōu)化性。除了比例縮放默認(rèn)的量化表外,所提出的聯(lián)合量化算法還可以很輕易地被配置來從諸如從在參考文獻[3]_[5]中的任何方案所得的任意其他的量化表開始。(應(yīng)當(dāng)指出的是,在參考文獻[3]_[5]中提出的方案僅僅指出了如何設(shè)計用于硬決策量化的優(yōu)化量化表;同樣地,從這些方案中所得到的量化表對我們在本發(fā)明中所考慮的軟決策量化不是最優(yōu)的。但是,作為用于我們迭代聯(lián)合優(yōu)化算法的初始量化表,這些量化表優(yōu)于比例縮放的默認(rèn)量化表。)在我們的試驗中,我們選擇在參考文獻[5]中的快速算法來產(chǎn)生以此開始的初始量化表。圖16和表I比較了我們的優(yōu)化方法和用于512X512Lena圖像的參考方法的不同配置的峰值信噪比(PeakSignal-NoiseRatio,PSNR)性能。圖17和表II比較了512X512Barbara圖像的相同性能。定制的霍夫曼表用在最后的熵編碼階段。幾條備注是按序的。首先,在參考文獻[7]和[9]中的優(yōu)化自適應(yīng)閥值方案是所提出的游程編碼優(yōu)化的子集。因此,在我們期望的任意比特率下,本發(fā)明的游程編碼優(yōu)化方案勝過了用于兩個圖像的優(yōu)化自適應(yīng)閾值方案。其次,由于在低比特率時更多的系數(shù)被量化為零,因此量化表優(yōu)化在低比特率起著較少的作用。所提出具有初始縮放比例默認(rèn)量化表的聯(lián)合優(yōu)化方案在低比特率可以比在參考文獻[9]中的聯(lián)合優(yōu)化方案取得更好的結(jié)果。第三,對于例如Barbara等的復(fù)雜圖像,由于存在更多要被優(yōu)化的非零系數(shù),因此所提出的具有從參考文獻[5]所產(chǎn)生的初始量化表的聯(lián)合優(yōu)化方案在所有比特率相比于在參考文獻[9]中的聯(lián)合優(yōu)化方案要作得更好。對于像Lena的簡單圖像,由于量化表優(yōu)化在低比特率其著較小的作用,因此所提出的聯(lián)合優(yōu)化方案在低比特率相比于在參考文獻[9]中的方案仍然能取得更好的結(jié)果。但是,由于我們的方法并不在每次迭代中盡其可能地找出優(yōu)化量化步長,因此在參考文獻[9]的方案對于Lena圖像在高比特率仍然能取得較好的結(jié)果。第四,相比于定制的基線JPEG,所提出的聯(lián)合優(yōu)化方案顯著地改進了目標(biāo)PSNR,對于低比特率的例如Barbara等復(fù)雜圖像,對比可知其性能超出了一些例如在1993年12月J.Sh即iro的"Embededimagecodingusingzerotressofwaveletcoefficients(使用微波系數(shù)的零樹的內(nèi)嵌圖像編碼)"(IEEETrans.SignalProcessing,第41巻,第3445-3462頁)(以下稱之為參考文獻[13])中所提出的Shapiro's內(nèi)嵌零樹微波算法等現(xiàn)有技術(shù)的基于微波圖像編碼器的所報結(jié)果。表III和IV列出了所提出的優(yōu)化方案對于另外兩種圖像(512X512的Mandri11和Goldhi11)的PSNR結(jié)果。表I具有不同優(yōu)化方法的PSNR比較(512X512的Lena)<table>tableseeoriginaldocumentpage30</column></row><table><table>tableseeoriginaldocumentpage31</column></row><table>謝III512X512忍Mandrill忍PSNR離湘<table>tableseeoriginaldocumentpage32</column></row><table>現(xiàn)在我們介紹一些游程編碼優(yōu)化算法和迭代聯(lián)合優(yōu)化算法的計算復(fù)雜性的結(jié)果。如上所述,給定狀態(tài)和前趨,我們可以通過比較所有的10個寸組或3個長度組(即,從硬決策量化器來的長度組和從軟決策量化器來的長度組)來找出最小的增加成本。我們的實驗顯示了這兩個方案在所感興趣的區(qū)域中取得了相同的性能。僅在A非常大時,我們可以看出比較10個長度組的結(jié)果略微好于比較3個長度組的結(jié)果。但是,實際上,由于會導(dǎo)致大的失真或不能接收的低劣圖像質(zhì)量,因此并不使用很大的A值。因此,在本發(fā)明中所有的實驗結(jié)果都可以通過比較3個長度組而得到。表V列出了在奔騰PC(PentiumPC)上對512X512的Lena圖像進行一次迭代時用于所提出的聯(lián)合優(yōu)化算法的C代碼執(zhí)行的CPU時間??梢钥闯?,我們的算法相比于參考文獻[7]和[9]中的方案是非常高效的(對512X512的圖像在SPARC-II工作站上,參考文獻[7]中的快速閥值算法一次迭代花費大約6.1秒;而在參考文獻[9]中的方案一次迭代花費大約幾十秒)。當(dāng)將所提出的聯(lián)合優(yōu)化算法應(yīng)用于網(wǎng)路圖像加速時,其僅用約O.2秒來用于2次迭代優(yōu)化通常長度(300X200)JPEG彩色圖像。表V.在所提出的聯(lián)合優(yōu)化算法在奔騰PC上一次迭代的CPU時間(512X512Lena)<table>tableseeoriginaldocumentpage33</column></row><table>DC系數(shù)的優(yōu)化在先前的實驗中并沒有優(yōu)化量化的DC系數(shù)。與AC系數(shù)不同,DC系數(shù)通常非常大并且對于在JPEG語法中的霍夫曼編碼差別只有12個長度組(與AC系數(shù)的162個不同的游程長度對相反)。因此,從基于柵格的DC系數(shù)來的增益是有限的。當(dāng)從DC優(yōu)化來的增益平均為比特率時,在PSNR上的所有改進都是可以忽略的。為了顯示從在部分V中所概括從基于柵格的DC優(yōu)化所得到的性能的改進,圖18圖示了對于512X512Lena圖像的DC熵vs.DC失真。從這些繪圖,我們也可以清楚地看出,即便增益非常有限,在縮放比例的步長上基于柵格的DC優(yōu)化算法的改進。本發(fā)明還可以有其他的變化和改進。可以認(rèn)為,所有這樣的改進或變化都在由所附權(quán)利要求限定的本發(fā)明的范圍中。權(quán)利要求一種通過使用曲線圖來用于圖像和視頻編碼的壓縮n個系數(shù)序列的方法,該曲線圖表示了在給定量化表和游程長度分布下的多個可能的三元組(run、size、ID)序列,其中,每個三元組(run、size、ID)序列限定了相應(yīng)的系數(shù)指數(shù)的序列,以便(i)在相應(yīng)的系數(shù)指數(shù)的序列中的每個指數(shù)為數(shù)字?jǐn)?shù),(ii)相應(yīng)的系數(shù)指數(shù)的序列包括了有特定值的多個值,和(iii)根據(jù)游程長度編碼方案,每個三元組(run、size、ID)限定了表示特定值的多個連續(xù)指數(shù)的游程值、在特定值的連續(xù)指數(shù)的數(shù)字的后面指定指數(shù)幅度的整數(shù)ID值、以及限定將指數(shù)存儲在由整數(shù)ID值指定的分類中所需的多個比特的長度值,其中,系數(shù)指數(shù)的序列表示由量化表歸一化的量化的系數(shù)的序列,該方法包括步驟(a)使用給定量化表和游程長度分布以制訂用于多個可能的三元組(run、size、ID)序列的成本函數(shù);(b)構(gòu)建表示多個可能的三元組(run、size、ID)序列的曲線圖;(c)基于由成本函數(shù)所確定的關(guān)聯(lián)成本從曲線圖的第一節(jié)點到曲線圖的末端節(jié)點延伸曲線圖的路徑;(d)從所選定的路徑確定相應(yīng)的三元組(run、size、ID)序列;和(e)使用霍夫曼編碼對相應(yīng)的三元組(run、size、ID)序列進行編碼。2.根據(jù)權(quán)利要求1的方法,其中步驟(b)還包括步驟(i)提供與n個系數(shù)的序列一對一的關(guān)系的n個節(jié)點的序列;(ii)在n個節(jié)點的序列后提供末端節(jié)點;(iii)對于n個節(jié)點的序列中的每個節(jié)點,和對于n個節(jié)點的序列中的該節(jié)點之前的前趨節(jié)點,其中,該節(jié)點和前驅(qū)節(jié)點由不超過多個可能的三元組的最大游程值的多個中間節(jié)點分離,建立將該節(jié)點連接到前趨節(jié)點的連接數(shù)等于在多個可能的三元組中的最大長度值,其中,在一對連接的節(jié)點之間的每個連接對應(yīng)多個可能的三元組中的不同長度值;(iv)對于不是n個節(jié)點的序列中的最后節(jié)點的每個節(jié)點,和對于在n個節(jié)點的序列中的該節(jié)點之前的每個前趨節(jié)點,其中,將該節(jié)點與前趨節(jié)點分離的中間節(jié)點的數(shù)量等于多個可能的三元組中的最大游程值,建立對應(yīng)零游程長度代碼;(v)為n個節(jié)點的序列中的每個節(jié)點,建立到末端節(jié)點的單一連接,其中,單一連接對應(yīng)塊代碼的末端;禾口(vi)給在曲線圖中的每個連接分配關(guān)聯(lián)的增加成本,以便從曲線圖的第一節(jié)點到曲線圖的末端節(jié)點延伸的任意路徑的任意路徑的總成本等于為該節(jié)點的相應(yīng)的三元組(r皿、size、ID)序列的關(guān)聯(lián)成本,其中ID是由長度所指定的分類中的指數(shù),所述長度將最小失真升到相應(yīng)的原始系數(shù)。3.根據(jù)權(quán)利要求l的方法,其中步驟(c)包括使用動態(tài)編程來找出具有由成本函數(shù)所確定的最小成本的路徑。4.根據(jù)權(quán)利要求1的方法,其中(i)該方法還包括對于n個節(jié)點的序列中的每個節(jié)點,確定通過使用由給定量化表所限定的硬決策量化器所得的輸出以量化在n個系數(shù)序列中相應(yīng)的系數(shù)和輸出的長度值;(ii)步驟(b)還包括在節(jié)點對間提供多個連接以代表多個可能的三元組(rim、size、ID),以便曲線圖是縮減的曲線圖,及任意節(jié)點處的任意連接末端代表了為節(jié)點所確定的輸出的長度值的所選擇差別中具有關(guān)聯(lián)長度值的關(guān)聯(lián)(rim、size)對;禾口(iii)步驟(C)還包括將動態(tài)編程應(yīng)用到縮減的曲線圖,以在通過該縮減曲線圖的所有路徑中找出具有由成本函數(shù)所確定的最小成本。5.根據(jù)權(quán)利要求4的方法,其中所選擇的差別為一。6.根據(jù)權(quán)利要求l的方法,其中,n個系數(shù)指數(shù)的序列從8X8塊的JPEGDCT系數(shù)、8X8塊的MPEGDCT系數(shù)、8X8塊的JPEG硬決策量化DCT系數(shù)、或8X8塊的MPEG硬決策量化DCT系數(shù)中的任一個得到,并且特定值為零。7.—種在給定量化步長和給定游程長度分布下通過確定由相應(yīng)的確定成本的差數(shù)序列所表示的N個系數(shù)的確定成本的序列來壓縮N個系數(shù)的方法,其中每個差數(shù)序列限定相應(yīng)的N個系數(shù)的序列,以便在差數(shù)序列中的每個差數(shù)都為第ith個指數(shù)值減去第(i-l)th個指數(shù)值的數(shù)字?jǐn)?shù),其中i比O大且小于N-l,該方法包括步驟(a)使用給定的量化步長和給定的游程長度分布來制定用于多個可能的差數(shù)序列的成本函數(shù);(b)將該成本函數(shù)應(yīng)用到多個可能的差數(shù)序列中的每個可能的序列以確定關(guān)聯(lián)成本;和(c)基于該關(guān)聯(lián)成本從該多個可能的差數(shù)序列中選擇相應(yīng)的確定成本的差數(shù)序列,并從相應(yīng)的確定成本的差數(shù)序列確定確定成本的N個指數(shù)的序列。8.根據(jù)權(quán)利要求7的方法,其中步驟(b)包括,為在多個可能差數(shù)中的每個可能序列確定相應(yīng)的N個指數(shù)的序列;使用給定量化步長和相應(yīng)的N個指數(shù)的序列確定N個量化的系數(shù)的序列;確定在N個系數(shù)和相應(yīng)的N個量化的系數(shù)的序列間的失真;確定從使用給定長度失真所得的總的壓縮率,以對可能的差數(shù)的序列編碼;禾口確定關(guān)聯(lián)成本作為失真和總的壓縮率的函數(shù)。9.根據(jù)權(quán)利要求7的方法,其中在N個指數(shù)中的每個指數(shù)都從M個可能的指數(shù)的組中選擇;步驟(b)包括:提供與N個系數(shù)的序列一對一關(guān)聯(lián)的N階段的序列,其中N為比2大的整數(shù)并且N階段的序列按從零階段到第(N-l)階段的順序排列,以便(i)零階段相鄰于第一階段;(ii)第(N-l)th階段相鄰于(N-2)th階段,(iii)每個第ith階段相鄰于第(i-l)th階段和第(i+l)th階段,其中i為在1和N-2之間的整數(shù);在N階段序列中的每階段提供多個節(jié)點,其中在每階段中的每個節(jié)點表示用于對在N個系數(shù)的序列中的編碼關(guān)聯(lián)的系數(shù)的M個可能指數(shù)組中的可能的指數(shù);提供先于零節(jié)點的初始階段,其中初始階段包括單一節(jié)點;為連接在相鄰階段中的每個節(jié)點對而提供多個連接;確定關(guān)聯(lián)成本作為用于在多個連接中的每個連接的關(guān)聯(lián)增加成本;禾口步驟(c)還包括確定關(guān)聯(lián)成本作為在多個連接中的連接的最底成本序列,其中連接的最低成本序列從初始階段延伸到在N階段序列中的每一階段;禾口從連接的最低成本序列確定N個指數(shù)的確定成本序列。10.根據(jù)權(quán)利要求9的方法,其中步驟(c)進一步包括使用動態(tài)編程來找出在多個連接中的連接的最低成本序列。11.根據(jù)權(quán)利要求7的方法,其中N個系數(shù)的序列是從在JPEG和MPEG圖像中所得的DC系數(shù)和量化的DC系數(shù)中的一個。12.根據(jù)權(quán)利要求9的方法,其中該方法還包括,為在N階段的序列中的每階段,使用由所給定的量化表所限定的硬決策器確定硬決策指數(shù),以量化在N個系數(shù)的序列中相應(yīng)的系數(shù);禾口選擇每個節(jié)點,以表示在硬決策指數(shù)的選擇的差數(shù)中選定的可能的指數(shù),以便該階段是具有少于M個節(jié)點的縮減的階段。13.根據(jù)權(quán)利要求12的方法,其中步驟(c)進一步包括使用動態(tài)編程來找出在多個連接中連接的最低成本序列。14.一種在輸出量化步長和輸出游程長度分布下通過聯(lián)合確定輸出量化步長,和由相應(yīng)的確定成本的差數(shù)的序列所表示的輸出確定成本的N個指數(shù)的序列而壓縮N個系數(shù)的序列的方法,其中,每個差數(shù)的序列限定相應(yīng)的N個指數(shù)的序列,以便在差數(shù)的序列中的每個差數(shù)都為等于第ith個指數(shù)值減去第(i-l)th個指數(shù)值的數(shù)字?jǐn)?shù),i比0大比N-l小,該方法包括步驟(a)選擇第Oth個量化步長和第Oth個游程長度分布;(b)設(shè)定計數(shù)器t為0;(c)使用第tth個量化步長和第tth個游程長度分布來制定用于第tth多個可能的差數(shù)的序列的第tth個成本函數(shù);(d)將第tth個成本函數(shù)應(yīng)用到多個可能的差數(shù)的序列中的每個可能的序列以確定關(guān)聯(lián)成本;(e)基于關(guān)聯(lián)成本從第tth多個可能的差數(shù)的序列中選擇第tth個確定成本的差數(shù)的序列;(f)如果第tth個相應(yīng)的確定成本的差數(shù)序列以及第tth個量化表和第tth個游程長度分布都滿足選擇標(biāo)準(zhǔn);則選擇第tth個確定成本的差數(shù)的序列作為輸出的確定成本的差數(shù)的序列,選定tth個量化步長作為輸出量化步長,選定第tth個游程長度分布作為輸出的量化步長,并選定第tth個確定成本的N個指數(shù)的序列作為輸出的確定成本的N個指數(shù)的序列;否則將t加一而從第tth個確定成本的差數(shù)序列中確定第(t+l)th個量化步長和第(t+l)th個游程長度分布,并返回到步驟(c)。15.根據(jù)權(quán)利要求14的方法,其中步驟(a)包括使用第Oth個量化步長以硬決策方式量化N個系數(shù)的序列以確定N個指數(shù)的開始序列,并選擇第0th個游程長度分布作為N個系數(shù)開始序列的游程長度分布。16.根據(jù)權(quán)利要求14的方法,其中步驟(b)包括為在第tth多個可能差數(shù)中的每個可能序列確定N個系數(shù)的相應(yīng)序列;使用第tth個量化步長和相應(yīng)的N個系數(shù)的序列確定N個量化的系數(shù)的相應(yīng)序列;確定在N個系數(shù)的序列和相應(yīng)的N個量化的系數(shù)的序列之間的失真;確定從使用給定長度失真所得的總的壓縮率以對可能差數(shù)的序列編碼;禾口確定關(guān)聯(lián)成本作為失真和總的壓縮率的函數(shù)。17.根據(jù)權(quán)利要求14的方法,其中從M個可能指數(shù)組中選擇N個指數(shù)中的每個指數(shù);步驟(d)包括:提供與N個系數(shù)的序列一對一關(guān)系的N階段的序列,其中N為比2大的整數(shù)并且N階段的序列按從零階段到第(N-l)階段的順序排列,以便(i)零階段相鄰于第一階段;(ii)第(N-l)階段相鄰于(N-2)階段,(iii)每個第i階段相鄰于第(i-1)階段和第(i+1)階段,其中i為在1和N-2(包括)之間的整數(shù);在N階段的序列中的每個階段提供多個節(jié)點,其中在每個階段中的每個節(jié)點表示用于編碼N個系數(shù)的序列中的關(guān)聯(lián)系數(shù)的M個可能指數(shù)組中的可能的指數(shù);提供先于零節(jié)點的初始階段,其中初始階段包括單一節(jié)點;為連接在相鄰階段中的每個節(jié)點對而提供多個連接;確定關(guān)聯(lián)成本作為用于在多個連接中的每個連接的關(guān)聯(lián)增加成本;禾口步驟(d)還包括針對第tth多個可能的差數(shù)的序列中的每個可能的序列,確定關(guān)聯(lián)成本作為用于在多個連接中的連接的最低成本序列,其中連接的最低成本序列從初始階段延伸到在N階段的序列中的每一階段;禾口從最低連接的成本序列確定N個指數(shù)的第tth個確定成本的序列。18.根據(jù)權(quán)利要求17的方法,其中步驟(d)進一步包括使用動態(tài)編程來找出在多個連接中的連接的最低成本序列。19.根據(jù)權(quán)利要求14的方法,其中N個系數(shù)的序列是從在JPEG和MPEG圖像中所得的DC系數(shù)和量化的DC系數(shù)中的一個。20.根據(jù)權(quán)利要求17的方法,其中該方法還包括為N個階段的序列中的每個階段,使用由所給定的量化表所限定的硬決策器確定硬決策指數(shù)以量化在N個系數(shù)的序列中相應(yīng)的系數(shù);禾口選擇每個節(jié)點來表示在所選擇的硬決策的差數(shù)中所選定的可能的指數(shù),以便該階段是具有少于M個節(jié)點的縮減的階段。21.根據(jù)權(quán)利要求20的方法,其中步驟(d)進一步包括使用動態(tài)編程來找出在多個連接中的連接的最低成本序列。22.—種數(shù)據(jù)處理系統(tǒng),用于圖像和視頻編碼,通過使用曲線圖表示多個可能的三元組(run、size、ID)的序列,其中每個三元組(run、size、ID)的序列限定了相應(yīng)的系數(shù)指數(shù)的序列,以便(i)在相應(yīng)的系數(shù)指數(shù)的序列中的每個指數(shù)為數(shù)字?jǐn)?shù),(ii)相應(yīng)的系數(shù)指數(shù)的序列包括了有特定值的多個值,和(iii)根據(jù)游程長度編碼方案,每個三元組(r皿、size、ID)限定了表示特定值的多個連續(xù)指數(shù)的游程值、在特定值的連續(xù)指數(shù)的數(shù)量后指定指數(shù)的幅度的整數(shù)ID值、以及限定將指數(shù)存儲在由整數(shù)ID值指定的分類中所需的多個比特的長度值,其中,系數(shù)指數(shù)的序列表示由量化表歸一化的量化的系數(shù)的序列,數(shù)據(jù)處理系統(tǒng)包括(a)初始化裝置,使用給定量化表和游程長度分布制訂用于多個可能的三元組(r皿、size、ID)的序列的的成本函數(shù);(b)計算裝置,其用于(i)構(gòu)建表示多個可能的三元組(r皿、size、ID)的序列的的曲線圖;(ii)基于由成本函數(shù)確定的關(guān)聯(lián)成本確定從曲線圖的第一節(jié)點到曲線圖的末端節(jié)點延伸的曲線圖的路徑;(iii)從所選定的路徑確定相應(yīng)的三元組(rim、size、ID)的序列;和(iv)使用霍夫曼編碼對相應(yīng)的三元組(r皿、size、ID)的序列進行編碼。23.根據(jù)權(quán)利要求22的數(shù)據(jù)處理系統(tǒng),其中計算裝置還執(zhí)行(i)提供與n個系數(shù)的序列一對一的關(guān)系的n個節(jié)點的序列;(ii)在n個節(jié)點的序列后提供末端節(jié)點;(iii)對于n個節(jié)點的序列中的每個節(jié)點,和對于n個節(jié)點的序列中的該節(jié)點之前的前趨節(jié)點,其中,該節(jié)點和前驅(qū)節(jié)點由不超過多個可能的三元組的最大游程值的多個中間節(jié)點分離,建立將該節(jié)點連接到前趨節(jié)點的連接數(shù)等于在多個可能的三元組中的最大長度值,其中,在一對連接的節(jié)點之間的每個連接對應(yīng)多個可能的三元組中的不同長度值;(iv)對于不是n個節(jié)點的序列中的最后節(jié)點的每個節(jié)點,和對于在n個節(jié)點的序列中的該節(jié)點之前的每個前趨節(jié)點,其中,將該節(jié)點與前趨節(jié)點分離的中間節(jié)點的數(shù)量等于多個可能的三元組中的最大游程值,建立將該節(jié)點連接到前趨節(jié)點的進一步單一連接,其中,單一連接對應(yīng)零游程長度代碼;(v)為n個節(jié)點的序列中的每個節(jié)點,建立到末端節(jié)點的單一連接,其中,單一連接對應(yīng)塊代碼的末端;(vi)給在曲線圖中的每個連接分配關(guān)聯(lián)的增加成本;以便從曲線圖的第一節(jié)點到曲線圖的末端節(jié)點延伸的任意路徑都等于該路徑的相應(yīng)的三元組(r皿、size、ID)的序列的關(guān)聯(lián)成本,其中ID是由長度所指定的類別中的指數(shù),所述長度將最小失真升到對應(yīng)的原始系數(shù)。24.根據(jù)權(quán)利要求22的數(shù)據(jù)處理系統(tǒng),其中計算裝置使用動態(tài)編程來找到由成本函數(shù)所確定的具有最小成本的路徑。25.根據(jù)權(quán)利要求22的數(shù)據(jù)處理系統(tǒng),其中計算裝置還執(zhí)行(i)為n個節(jié)點的序列中的每個節(jié)點,確定由給定量化表所限定的硬決策量化器所得的輸出,以量化在n個系數(shù)的序列中相應(yīng)的系數(shù)和輸出的長度值;(ii)在節(jié)點對間提供多個連接以代表多個可能的三元組(r皿、size、ID),以便曲線圖為縮減的曲線圖,任意節(jié)點處的任意連接末端表示為該節(jié)點所確定的輸出的長度值的所選擇差數(shù)中具有關(guān)聯(lián)長度值的關(guān)聯(lián)(rim、size)對;禾口(iii)給縮減的曲線圖提供動態(tài)編程以在通過該縮減曲線圖的所有路徑中找出具有由成本函數(shù)所確定的最小成本。26.根據(jù)權(quán)利要求25的數(shù)據(jù)處理系統(tǒng),其中所選定的差別為一。27.根據(jù)權(quán)利要求22的數(shù)據(jù)處理系統(tǒng),其中n個系數(shù)指數(shù)的序列從8X8塊的JPEGDCT系數(shù)、8X8塊的MPEGDCT系數(shù)、8X8塊的JPEG硬決策量化DCT系數(shù)、或8X8塊的MPEG硬決策量化DCT系數(shù)中的任一個得到,并且指定值為零。28.—種數(shù)據(jù)處理系統(tǒng),其用于在給定量化表和給定游程長度分布下通過確定由相應(yīng)的確定成本的差數(shù)的序列所表示的N個系數(shù)的確定成本的序列來壓縮N個系數(shù)的序列,其中每個差數(shù)的序列限定相應(yīng)的N個系數(shù)的序列,以便在差數(shù)的序列中的每個差數(shù)都為第ith個指數(shù)值減去第(i-l)th個指數(shù)值的數(shù)字?jǐn)?shù),其中i比0大且小于N-1,該數(shù)據(jù)處理系統(tǒng)包括(a)初始化裝置,使用給定的量化步長和給定的游程長度分布來制定用于多個可能的差數(shù)的序列的成本函數(shù);(b)計算裝置,將成本函數(shù)提供給在多個可能的差數(shù)的序列中的每個可能的序列以確定關(guān)聯(lián)成本;基于關(guān)聯(lián)成本從多個可能的差數(shù)的序列中選擇相應(yīng)的確定成本的差數(shù)的序列,并從相應(yīng)的確定成本的差數(shù)的序列中確定確定成本的N個指數(shù)的序列。29.根據(jù)權(quán)利要求28的數(shù)據(jù)處理系統(tǒng),其中,計算裝置為在多個可能差數(shù)中的每個可能序列確定相應(yīng)的N個指數(shù)的序列;使用給定量化步長和相應(yīng)的N個指數(shù)的序列確定相應(yīng)的N個量化的系數(shù)的序列;確定在N個系數(shù)的序列和相應(yīng)的N個量化的系數(shù)的序列之間的失真;確定從使用給定長度失真所得的總的壓縮率以對可能的差數(shù)的序列編碼;確定關(guān)聯(lián)成本作為失真和總的壓縮率的函數(shù)。30.根據(jù)權(quán)利要求28的數(shù)據(jù)處理系統(tǒng),其中,從M個可能的指數(shù)的組中選擇N個指數(shù)中的每個指數(shù);計算裝置執(zhí)行提供與N個系數(shù)的序列一對一關(guān)系的N階段的序列,其中N為比2大的整數(shù)并且N階段的序列按從零階段到第(N-l)階段的順序排列,以便(i)零階段相鄰于第一階段;(ii)第(N-l)階段相鄰于(N-2)階段,(iii)每個第ith階段相鄰于第(i-l)th階段和第(i+l)th階段,其中i為在1和N-2(包括)之間的整數(shù);在N階段的序列中的每階段提供多個節(jié)點,其中在每階段中的每個節(jié)點表示用于對在N個系數(shù)的序列中的關(guān)聯(lián)系數(shù)編碼的M個可能指數(shù)組中的可能的指數(shù);提供先于零節(jié)點的初始階段,其中初始階段包括單一節(jié)點;為連接在相鄰階段中的每個節(jié)點對提供多個連接;確定關(guān)聯(lián)成本作為用于在多個連接中的每個連接的關(guān)聯(lián)增加成本;禾口確定關(guān)聯(lián)成本作為用于在多個連接中的連接的最低成本序列,其中連接的最低成本序列從初始階段延伸到在N階段的序列中的每一階段;禾口從連接的最低成本序列確定N個指數(shù)的成本確定的序列。31.根據(jù)權(quán)利要求30的數(shù)據(jù)處理系統(tǒng),其中計算裝置使用動態(tài)編程來找出在多個連接中的連接的最低成本序列。32.根據(jù)權(quán)利要求28的數(shù)據(jù)處理系統(tǒng),其中N個的系數(shù)序列是從在JPEG和MPEG圖像中所得的DC系數(shù)和量化的DC系數(shù)中的一個。33.根據(jù)權(quán)利要求30的數(shù)據(jù)處理系統(tǒng),其中計算裝置還用來為在N階段的序列中的每個階段,使用由所給定的量化表所限定的硬決策器確定硬決策指數(shù),以量化在N個系數(shù)的序列中相應(yīng)的系數(shù);禾口選擇每個節(jié)點表示在所選擇的硬決策的指數(shù)的差數(shù)中選擇的可能的指數(shù),以便該階段是具有少于M個節(jié)點的縮減的階段。34.根據(jù)權(quán)利要求33的數(shù)據(jù)處理系統(tǒng),其中計算裝置使用動態(tài)編程來找出在多個連接中的連接的最低成本序列。35.—種數(shù)據(jù)處理系統(tǒng),其用來在輸出量化步長和輸出游程長度分布下通過聯(lián)合確定輸出量化步長,和由相應(yīng)的確定成本的差數(shù)的序列所表示的輸出確定成本的N個指數(shù)的序列而壓縮N個系數(shù)的序列,其中每個差數(shù)的序列限定相應(yīng)的N個指數(shù)的序列,以便在差數(shù)的序列中的每個差數(shù)都為等于第ith個指數(shù)值減去第(i-l)th個指數(shù)值的數(shù)字?jǐn)?shù),i比O大比N-l小,該數(shù)據(jù)處理系統(tǒng)包括(a)初始化裝置,其用來選擇第0th個量化表和第0th個游程長度分布,并設(shè)定計數(shù)器t為O;(b)計算裝置執(zhí)行(i)使用第tth個量化步長和第tth個游程長度分布來制定用于第tth多個可能的差數(shù)的序列的第tth個成本函數(shù);(ii)將第tth個成本函數(shù)提供給在第tth多個可能的差數(shù)的序列中的每個可能的序列以確定關(guān)聯(lián)成本;(iii)基于關(guān)聯(lián)成本從第tth多個可能的差數(shù)的序列中選擇第tth個確定成本的差數(shù)的序列;(iv)如果該第tth個相應(yīng)的確定成本的差數(shù)的序列以及第tth個量化表和第tth個游程長度分布都滿足選擇標(biāo)準(zhǔn);則選擇第tth個確定成本的差數(shù)的序列作為輸出的確定成本的差數(shù)的序列,選定tth個量化步長作為輸出量化步長,選定第tth個游程長度分布作為輸出的量化步長,并選定第tth個確定成本的N個指數(shù)的序列作為輸出的確定成本的N個指數(shù)的序列;否則將t加一而從第tth個確定成本的差數(shù)的序列中確定第(t+l)th個量化步長和和第(t+l)th個游程長度分布,并返回到步驟(i)。36.根據(jù)權(quán)利要求35的數(shù)據(jù)處理系統(tǒng),其中初始化裝置,使用第0th個量化步長以硬決策方式量化N個系數(shù)的序列,以確定N個指數(shù)的開始序列,并選擇第0th個游程長度分布作為N個系數(shù)的開始序列的游程長度分布。37.根據(jù)權(quán)利要求35的數(shù)據(jù)處理系統(tǒng),其中計算裝置為在第tth多個可能差數(shù)中的每個可能序列確定N個指數(shù)的相應(yīng)序列;使用第tth個量化步長和相應(yīng)的N個指數(shù)的序列確定N個量化的系數(shù)的相應(yīng)序列;確定在N個系數(shù)的序列和相應(yīng)的N個量化的系數(shù)的序列之間的失真;確定從使用第tth個游程長度分布所得的總的壓縮率以對可能差數(shù)的序列進行編碼;和確定關(guān)聯(lián)成本作為失真和總的壓縮率的函數(shù)。38.根據(jù)權(quán)利要求33的數(shù)據(jù)處理系統(tǒng),其中,從M個可能指數(shù)組中選擇N個指數(shù)中的每個指數(shù);步驟(ii)包括:提供與N個系數(shù)的序列一對一關(guān)系的N階段的序列,其中N為比2大的整數(shù)并且N階段序列按從零階段到第(N-l)th階段的順序排列,以便(i)零階段相鄰于第一階段;(ii)第(N-l)th階段相鄰于(N-2)階段,(iii)每個第ith階段相鄰于第(i-l)th階段和第(i+l)th階段,其中i為在1和N-2(包括)之間的整數(shù);在N階段的序列中的每個階段提供多個節(jié)點,其中在每階段中的每個節(jié)點表示用于對在N個系數(shù)的序列中的關(guān)聯(lián)系數(shù)編碼的M個可能指數(shù)組中的可能的指數(shù);提供先于零節(jié)點的初始階段,其中初始階段包括單一節(jié)點;為連接在相鄰階段中的節(jié)點對提供多個連接;確定關(guān)聯(lián)成本作為用于在多個連接中的每個連接的關(guān)聯(lián)增加成本;確定關(guān)聯(lián)成本作為用于在多個連接中的連接的最低成本序列,其中連接的最低成本序列從初始階段延伸到在N階段的序列中的每一階段;禾口從連接的最低成本序列確定N個指數(shù)的第tth個確定成本序列。39.根據(jù)權(quán)利要求36的數(shù)據(jù)處理系統(tǒng),其中步驟(iii)進一步包括使用動態(tài)編程來找出在多個連接中的連接的最低成本序列。40.根據(jù)權(quán)利要求33的數(shù)據(jù)處理系統(tǒng),其中N個系數(shù)的序列是從在JPEG和MPEG圖像中所得的DC系數(shù)和量化的DC系數(shù)中的一個。41.根據(jù)權(quán)利要求36的數(shù)據(jù)處理系統(tǒng),其中計算裝置為N階段序列中的每階段,使用由所給定的量化表所限定的硬決策器確定硬決策指數(shù),以量化在N個系數(shù)的序列中相應(yīng)的系數(shù);禾口選擇每個節(jié)點表示在所選擇的硬決策的差數(shù)中選擇的可能的指數(shù),以便該階段是具有少于M個節(jié)點的縮減的階段。42.根據(jù)權(quán)利要求41的數(shù)據(jù)處理系統(tǒng),其中(iii)進一步包括使用動態(tài)編程來找出在多個連接中的連接的最低成本序列。全文摘要本發(fā)明涉及一種在保持忠于JPEG/MPEG語法的同時能改善比率失真性能的方法、系統(tǒng)和計算機軟件產(chǎn)品,其包括霍夫曼表、量化步長和JPEG/MPEG編碼器的量化系數(shù)的聯(lián)合優(yōu)化。其包括以(run、size)對的形式找出優(yōu)化系數(shù)指數(shù)。通過提供包括有用于優(yōu)化系數(shù)指數(shù)的這種搜索的迭代處理,能取得行程尺寸長度編碼、霍夫曼編碼和量化表選擇的同時改進。此外,量化DC系數(shù)的壓縮也可以使用柵格結(jié)構(gòu)來改進。文檔編號H04N7/30GK101795412SQ201010131870公開日2010年8月4日申請日期2004年8月25日優(yōu)先權(quán)日2004年7月14日發(fā)明者楊恩輝,王隆吉申請人:噴流數(shù)據(jù)有限公司