亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

減少位深的量子化方法

文檔序號:7921430閱讀:76來源:國知局

專利名稱::減少位深的量子化方法減少位深的量子化方法本申請是申請人于2002年8月8日提交的、申請?zhí)枮?02819594.9"(PCT/JP02/08146)的、發(fā)明名稱為"減少位深的量子化方法"的發(fā)明專利申請的分案申請。相關申請本申請要求標題為"減少位深的量子化"、由LouisKerofsky發(fā)明、于2001年8月9日提交、律師待辦事務表編號為SLA1110P的美國臨時專利申請06/311,436,及標題為"有聯(lián)合量子化及標準化處理的視頻編碼方法和系統(tǒng)"、由LouisKerofsky發(fā)明、于2001年11月30日提交、律師待辦事務表編號為SLA1110P的美國臨時專利申請06/319,018,及標題為"減少位深的量子化方法"、由LouisKerofsky發(fā)明、2002年5月2日提交、律師代表事務表編號為SLA1110的美國專利申請10/139,036的權利。發(fā)明背景1.發(fā)明領域本發(fā)明涉及視頻壓縮技術,更特別地,涉及減少在視頻編碼變換計算中所需的比特大小的方法。2.相關技術的描述視頻信息格式提供適合于激活電視屏幕或存儲在錄像帶上的可視信息。通常,視頻數據以層次順序組織。視頻序列被劃分為幀的組,并且每一組可以包括一系列的單個幀。每個幀約等價于一個靜止圖片,該靜止圖片被頻繁地更新從而模擬顯示連續(xù)的運動。幀進一步被劃分為有助于系統(tǒng)容錯設計的片段,或者水平部分。每個片段被獨立編碼以使得錯誤不會在片段之間傳播。片段由宏塊組成。在H.26P和移動圖像專家組(MPEG)-X標準中,取決于視頻格式,宏塊由16X16的亮度象素和對應的一組飽和度象素構成。宏塊總是包含整數個塊,8X8象素矩陣為最小的編碼單元。視頻壓縮是任何需要傳輸或存儲視頻數據的應用的關鍵組件。壓縮技術通過重用幀的不同區(qū)域中存儲的信息(時間冗余)對移動進行補償。壓縮也通過將數據從空間域變換到頻域中來進行。H.26P和MPEG-X國際標準中已采用通過移動補償使用時間冗余并通過變換使用空間冗余的混合數字視頻壓縮,如離散余弦變換(DCT)作為基礎。如美國專利6,317,767(王)所述,DCT及反向離散余弦變換(IDCT)是在圖像數據信號處理中廣泛使用的操作。例如,兩者都被用在由MPEG發(fā)布的移動圖像視頻壓縮國際標準中。DCT由特定的屬性以產生簡化且高效的編碼模型。當應用于象素數據矩陣時,DCT是這樣的方法,它將一塊數據分解為空間頻率的加權和,即DCT系數。相反,IDCT被用于變換DCT系數的矩陣為象素數據。數字視頻(DV)編碼解碼器是使用基于DCT的數據壓縮方法的設備的一個例子。在分塊階段,圖像幀被劃分為NXN的包括例如每個象素的亮度和顏色數據的象素信息塊。一般的塊大小為水平和垂直各8個象素。然后象素塊被"混洗"從而來自該圖像不同部分的幾個塊被分組在一起?;煜丛鰪娏藞D像質量的一致性。不同的區(qū)域在不同的時間事件被記錄。對每塊象素數據,移動檢測器尋找?guī)膬蓚€區(qū)域之間的不同之處。移動信息被發(fā)送到下一個處理階段。在下一個處理階段,使用DCT變換象素信息。例如,8-8DCT在垂直和水平兩個方向各取得8個輸入并返回8個輸出。然后通過用加權常數乘每塊DCT系數對結果DCT系數加權。在下一個階段量子化加權的DCT系數。量子化將在值的特定范圍之內的每個DCT系數進行舍入為相同的數。量子化傾向于設置頻率矩陣的高頻成分為0,導致存儲少得多數據。然而,由于人眼對低頻更加敏感,在此階段可感知的圖像質量下降很少。量子化階段包括通過以鋸齒形的模式讀取矩陣值來變換量子化的系數的兩維矩陣為一維線性數據流并劃分所述量子化的系數的一維線性流為片段,其中每個片段由0系數及隨后的非0的量子化的系數的字符串構成。然后執(zhí)行可變長編碼(VLC)通過變換每個片段,由片段中0系數的數量及非0系數的幅值組成,為可變長代碼字。最后,分頻處理將每30個可變長編碼的量子化的系數塊打包為5個定長的同步塊。解碼本質上是上述編碼處理的反向處理。首先對數字流進行分幀。然后可變長解碼(VLD)解包數據從而可以將其恢復為單獨的系數。在反向量子化系數之后,對結果應用反向加權和反向的離散余弦變換(IDCT)。反向權重是編碼處理中應用的權重的乘法反向。然后由IDCT處理反向加權函數的輸出。己對減少DCT和IDCT計算中的復雜度的方法的研究做出了許多工作。計算兩維IDCT的算法被稱為"I類"算法。I類算法在并行機(即,由同時并行工作的多個處理器構成的計算機)中易于實現(xiàn)。例如,當使用N個并行處理器來執(zhí)行NXN矩陣的矩陣乘法時,N列的相乘可以同時進行。另外,并行機可以設計為包含執(zhí)行快速矩陣轉置的特殊硬件或軟件指令。I類算法的一個缺點是需要更多的乘法。I類算法的計算序列包括由矩陣轉置分離的兩次矩陣乘法,其中,例如,如^4,對總共112個指令需要64次加法和48次乘法。熟悉技術的人都知道,處理器執(zhí)行乘法是非常耗時的并且通常通過減少執(zhí)行乘法的次數來進行優(yōu)化系統(tǒng)的性能。兩維的IDCT也可以通過使用L函數變換輸入矩陣的轉置為一維向量來獲得。接下來,獲得常數矩陣的張量積。然后用一維向量L乘張量集。使用M函數變換結果為NXN矩陣。再次假設N^4,由此計算序列使用的指令總數為92個指令(68次加法和24次乘法)。使用此計算序列執(zhí)行兩維IDCT的算法被稱為"II類"算法。在II類算法中,兩個常數矩陣被分組在一起并且作為一個操作執(zhí)行。n類算法的優(yōu)點是它們通常需要更少的指令(92對112)并且,更特別地,更少代價高的乘法(24對48)。然而,II類算法在并行機上很難高效地實現(xiàn)。II類算法傾向于頻繁地對數據重新排序,而在并行機上對數據重新排序是很耗時的。存在很多類型的實現(xiàn)IDCT的I類和II類算法,然而,反量子化(dequantization)被視為依賴于DCT和IDCT計算的獨立步驟。提供比特精確(bitexact)的DCT和IDCT定義的努力已導致高效的整數變換的發(fā)展。這些整數變換通常增加計算的動態(tài)范圍。結果,這些算法的實現(xiàn)需要處理和存儲16比特以上的數據。如果可以在變換處理中讓中間階段量子化的系數限制于最大的大小,那將是有利的。如果可以開發(fā)出用于16比特處理器的量子化處理,那將是有利的。如果可以可以用16比特處理器高效地實現(xiàn)解碼器實現(xiàn)、反量子化及反向變換,那將是有利的。類似地,如果可以用不超過16比特執(zhí)行乘法并且如果存儲器訪問需要不超過16比特,那將是有利的。發(fā)明概要本發(fā)明是視頻壓縮的改進處理。典型的視頻編碼算法通過原先編碼的幀預測一個幀。對誤差進行變換并且對結果值進行量子化。量化器控制壓縮的程度。量化器控制用于表示視頻的信息的量及重顯的質量。問題是變換和量子化在視頻編碼中的交互。在過去,變換和量化器是獨立設計的。變換,通常是離散余弦變換,被標準化。以標準方法使用標量或向量量子化對變換的結果進行量子化。在現(xiàn)有技術中,MPEG-1、MPEG-2、MPEG-4、H.261、H.263,反向變換的定義并不是比特精確的。這允許實現(xiàn)者有一些自由來選擇適合其平臺的變換算法。此方法的一個缺點是編碼器/解碼器可能不匹配而破壞預測循環(huán)。為了解決這樣的不匹配問題,定期地將圖像的部分編碼而不進行預測。現(xiàn)有技術,如H.26L,集中于使用允許比特精確定義的整數變換。整數變換可以不進行標準化。設計變換以使得最終可以轉換為使用標準化計算的結果而不是中間的除法。量子化也需要除法。H.26L提供這些整數變換如何與量子化一起使用的例子。在當前的H.26L長期測試模型(TML)中,標準化在正向變換和量子化之后及反量子化及反向變換之后與量子化結合并且通過整數乘法及移位來實現(xiàn)。H26.LTML使用由量子化參數(QP)索引的兩個整數數組A(QP)和B(QP),見表1。這些值由下面的公式1中所示的關系限定。本發(fā)明提供一種通過量化變換系數(K)而導出已量子化水平(L)的量子化方法,包括輸入所述變換系數的步驟;輸入量子化參數(QP)的步驟;以及導出所述已量子化水平的步驟,其中所述已量子化水平是利用為所述量子化參數函數的尾數部分(Am(QP))和為所述量子化參數函數的指數部分(Ae(QP))按照下式導出的L=[K*Am(QP)]Ae(QP),和(">>"表示右移操作),所述尾數部分的函數結構是Am(QP)=Am(QPmodP)。本發(fā)明還提供一種通過對已量子化水平(L)反量子化而導出變換系數(K)的反量子化方法,包括輸入所述已量子化水平的步驟;輸入量子化參數(QP)的步驟;以及導出所述變換系數的步驟,其中所述變換系數是利用為所述量子化參數函數的尾數部分(Bm(QP))和為所述量子化參數函數的指數部分(Be(QP))按照下式導出的K二[L*Bm(QP)K〈Be(QP),和("《"表示左移操作),所述尾數部分的函數結構是Bm(QPHBra(QPmodP)。表1TML量子化參數<table>tableseeoriginaldocumentpage9</column></row><table>公式1聯(lián)合標準化/量子化關系順P)'B(e尸).6762w使用這些整數和2的冪的除法,標準化和量子化同時被執(zhí)行。H.26L中的變換編碼使用4X4塊大小及整數變換矩陣T,公式2。對4X4的塊X,變換系數K的計算如公式3所示。通過變換系數,量子化水平L由整數乘法計算出。在解碼器中,所述水平被用于計算新的一組系數K'。附加的整數矩陣變換及隨后的移位被用于計算重顯值X'。編碼器允許正向變換的計算和舍入的自由。編碼器和解碼器必須計算出完全相同的反向計算的答案。公式2H.26L測試模型8變換矩陣<formula>formulaseeoriginaldocumentpage10</formula>其中中間結果Y為一維變換的結果且中間結果Y'為一維反向變換的結果。可以確定在這些計算中所需的動態(tài)范圍。主應用包括9比特的輸入,8比特加上符號,中間寄存器和存儲器訪問所需的動態(tài)范圍如表2所示。表2TML變換,印反向變換的動態(tài)范圍(比特)9比特輸入LUMA變換反向變換寄存器3027存儲器2126為了維護比特精確的定義并包括量子化,由于除法操作被推遲,中間結果的動態(tài)范圍會很大。本發(fā)明組合量子化和標準化,以消除中間結果動態(tài)范圍的增長。通過本發(fā)明,比特精確的反向變換及量子化定義的優(yōu)點得以保留,而控制這些計算所需的位深。減少所需的位深降低硬件實現(xiàn)所需的復雜度并且使得能夠高效使用單指令多數據(SIMD)操作,如IntelMMX指令集。相應地,提供系數量子化的方法。所述方法包括提供系數K、提供量子化參數(QP)、使用尾數部分(Am(QP))和指數部分(xA"QP))通過系數K構成量子化值(L)。通常,x的值為2。在所述方法的一些方面,通過系數K構成量子化值(L)包括L=K*A(QP)=K*Am(QP)*(2Ae(QP)).在其他方面,所述方法進一步包括用2W按如下標準化量子化值Ln=L/2N=K*Am(QP)/2(N-Ae(QP))在一些方面,構成量子化值包括構成一組遞歸的有周期P的量子化因子,其中A(QP+P)=A(QP)/x。因此,構成遞歸的量子化因子包括構成遞歸的尾數因子,其中Am(QP)=Am(QPmodP)。類似地,構成遞歸的量子化因子包括構成遞歸的指數因子,其中Ae(QP)=Ae(QPmodP)-QP/P。更特別地,提供系數K包括提供系數矩陣K[i][j']。然后,通過系數矩陣K[i][y]構成量子化值(L)包括使用尾數部分矩陣(Am(QP)[i]L/])和指數部分矩陣W畫)構成量子化值矩陣(L[i]。類似地,使用尾數部分矩陣(Am(QP)U][j'])和指數部分矩陣(,,[']u])構成量子化值矩陣(L[/][/])包括,對每個特殊的QP值,指數部分矩陣中的每個元素為同樣的值。指數部分矩陣中的每個元素對QP的周期(P)值為同樣的值,其中Ae(QP)二Ae(P*(QP/P))。下面提供上述方法的附加細節(jié),包括使用尾數部分(Bm(QP))和指數部分(x",'))通過量子化值構成反量子化值(Xl)的方法。圖1為流程圖,展示本發(fā)明的系數量子化方法。圖2至9展示本發(fā)明的實施例,包括視頻編碼的系統(tǒng)和方法。首選實施例的詳細說明通過分解量子化參數A(QP)和B(QP)為尾數和指數項減少組合的變換和量子化的動態(tài)范圍需求,如公式4所示。通過此結果,在計算中只需要保留尾數項帶來的精度。指數項可以包含在最后的標準化移位中。這在公式5的例子計算中展示。公式4量子化參數的結構<formula>formulaseeoriginaldocumentpage11</formula>公式5減少位深的LUMA變換Y=T'XK=Y.TT"(A怖"(QP)'I<)/22,'-'、一("(')K'=TT丄Y'=IC'TX'-(Bma,,"(QP).Y')/2a'-n—(Q")為了展示本發(fā)明,展示了一組減少H.26L解碼器的動態(tài)范圍需求為16比特存儲器訪問的量子化參數。反向變換的存儲器訪問被減少為16比特。對QP二0.5定義A尾數、A指數、B尾數、B指數、A建議、B建議的值,如表3所示。附加的值通過遞歸確定,如公式6所示。這些值的結構使得除那些指定值外還能產生新的量子化值。表3TML的量3<table>tableseeoriginaldocumentpage12</column></row><table>公式6遞歸關系A尾數(QP+6)二A尾數(QP)B(QP+6)=B尾數(QP)A指數(OP+G)二A指數(QP)—1B指數(QP+6hB指數(QP)+1使用定義的參數,可以修改變換計算以減少動態(tài)范圍,如公式5所示。注意如何只有尾數值對動態(tài)范圍的增長有影響。指數因子被包含在最后的標準化中且并不影響中間結果的動態(tài)范圍。用這些值及計算方法,解碼器的動態(tài)范圍被減少到只需要進行16比特的存儲器訪問,如表4所示。表4低位深量子化的動態(tài)范圍(QP>6)8比特LUMA變換LUMA反向變換寄存器2824存儲器2116對上述聯(lián)合量子化/標準化過程可以應用幾種改進。分解參數為尾數和指數的通用技術構成了這些改進的基礎。上述說明假設變換的所有基礎函數有相同的范數并且被相等地量子化。一些整數變換有這樣的屬性,不同的基礎函數有不同的范數。通過使用矩陣A(QP)U]L/]和B(QP)"]L/]替換上述標量A(QP)和B(QP),對本發(fā)明的技術進行一般化以支持有不同范數的變換。這些參數通過下面公式7所示形式的標準化關系連接,這比公式1中所示的單一關系更加一般化。公式7矩陣的聯(lián)合量子化/標準化A(QP)'B(QP)[i][,N[i][j]接著上述方法,每個矩陣的每個元素被分解為尾數和指數項,如在下面的公式8中所示。公式8矩陣參數的分解A(QP)=A尾數(QP)[i][』.盧數,剛B(QP)=B尾數(QP)2數需要大量的參數來說明這些量子化和反量子化參數。幾種結構關系可以被用來減少自由參數的數量。設計量化器增長以使得A的值在每個周期P之后減半,而同時B的值加倍以維持標準化關系。另外,A指數(QP)U][j']和B指數(QP)U][J']的值在范圍[O,P-l]內與i,j及(QP)無關。此結構由結構公式,公式9來概括。對此結構,只有兩個參數A靴[O]和B指數[O]。公式9指數項的結構A指數(QP)[/][J]=A指數[O]-QP/PB指數(QP)二B指數[O]-QP/P亦對尾數值定義結構。對每個下標對(i,j),尾數值是周期性的,且周期為P。這由結構公式,公式10來概括。對此結構,對A尾數有P個獨立的矩陣且對B題P個獨立的矩陣,這減少存儲器需求并增加結構到計算中。公式10尾數項的結構A尾數(QP)[J.][j']二A尾數(QPQ/^P)B尾數(QP)[J'][y]二B尾數(QPXP)反向變換可以包括需要舍入的整數除法。在關注的情況中,是用2的冪來除。通過設計反量子化因子使其為2的同一次冪的倍數來減少舍入誤差,這樣使除法不產生余數。使用尾數值B^(QP)進行反量子化給出這樣的反量子化的值,基于QP不同地對其進行標準化。這必須對后面的反向變換進行補償。此計算的一種形式在公式11中展示。公式11反向變換I的標準化K[i][』二B尾數(QPXP)LevelX=(T—1KT)/2(N—QP/P)在公式ll中,LevelU][J]為變換系數的量子化版本并被稱為"量子化值"。K[i]U]為變換系數的換算版本并被稱為"反量子化值"。為了消除反向變換的需要以補償此標準化差別,定義反量子化操作以使得所有反量子化的值有同樣的標準化。此計算的形式在公式12中展示。公式12反向變換II的標準化KU]U']二B尾數(QPXP)*2QP/P'LevelX=(T—1KT)/2(N—QP/P)可以通過使用左移位操作計算2的冪并且將按如下給出公式12中的反量子化值K"][j']。K[i]U.]=[B尾數Level<〈(QP/P)接下來的例子展示本發(fā)明對量子化矩陣的使用。在公式13中定義的正向和反向變換需要量子化矩陣而非單一的標量量子化值。給出了樣本量子化和反量子化參數。公式14和16,與相關計算一起,展示本發(fā)明的使用。此例使用P二6的周期。在公式14中,A尾數由Q表示且QP由ra表示。在公式16中,B尾數由R表示且QP由m表示。公式13變換<formula>formulaseeoriginaldocumentpage15</formula>公式14量子化參數<formula>formulaseeoriginaldocumentpage15</formula>公式16反量子化參數<formula>formulaseeoriginaldocumentpage15</formula>在下面給出正向變換及正向量子化的說明,見公式18,假設輸入在X、量子化參數QP中。公式17正向變換<formula>formulaseeoriginaldocumentpage15</formula>公式18正向量子化<formula>formulaseeoriginaldocumentpage16</formula>下面給出此例的反量子化、反向變換及標準化的說明,見公式19和20。公式19反量子化//mje=(2尸一6/e〃W公式20IDCT和標t化圖i為流程圖,展示本發(fā)明的系數量子化方法。雖然為清楚起見,此方法是以編號的步驟序列來說明的,除非明確指出,不應從編號中推斷任何順序。應理解,對這些步驟中的一些,可以跳過、并行執(zhí)行,或執(zhí)行而無需保持序列的嚴格順序。方法開始于步驟100。步驟102提供系數K。步驟104提供量子化參數(QP)。步驟106使用尾數部分(Ara(QP))和指數部分(xA""。)通過系數K構成量子化值(L)。通常,指數部分(x",)包括x的值為2。在所述方法的一些方面,步驟106中使用尾數部分(Am(QP))和指數部分(x—A"QP))通過系數K構成量子化值(L)包括L=K*A(QP)=K*Am(QP)*(2Ae(QP)).所述方法的一些方面還包括進一步的步驟。步驟108用2"按如下標準化量子化值Ln=L/2N=K*Am(QP)/2在其他方面,在步驟106構成量子化值包括構成一組遞歸的有周期P的量子化因子,其中A(QP+P)=A(QP)/x。類似地,構成一組遞歸的量子化因子包括構成遞歸的尾數因子,其中Am(QP)=Am(QPmodP)。然后,構成一組遞歸的量子化因子包括構成遞歸的指數因子,其中Ae(QP)=Ae(QPmodP)-QP/P。在一些方面,構成量子化值包括構成一組遞歸的有周期P的量子化因子,其中A(QP+P)=A(QP)/2。在其他方面,構成一組遞歸的量子化因子包括構成遞歸的尾數因子,其中P=6。類似地,構成一組遞歸的量子化因子包括構成遞歸的指數因子,其中P^6。在所述方法的一些方面,步驟102中提供系數K包括提供系數矩陣K[i][j']。然后,步驟106使用尾數部分(Am(QP))和指數部分(x",)通過系數矩陣KU]U']構成量子化值(L)包括使用尾數部分矩陣(Ara(QP)"]U'])和指數部分矩陣(x",""勺構成量子化值矩陣(L[i][y])。類似地,使用尾數部分矩陣(Am(QP)[i]U])和指數部分矩陣(xAe(QP)[']u])構成量子化值矩陣(L[i][j])包括,,對每個特殊的QP值,指數部分矩陣中的每個元素為同樣的值。通常,指數部分矩陣中的每個元素對QP的周期(P)值為同樣的值,其中Ae(QP)=Ae(P*(QP/P))0所述方法的一些方面包括進一步的步驟。步驟llO使用底數部分(Bm(QP))和指數部分(x",))通過量子化值構成反量子化值(Xl)。再次,指數部分(x8^)通常包括x的值為2。在所述方法的一些方面,使用底數部分(Bm(QP))和指數部分(2B6(QP))通過量子化值構成反量子化值(Xl)包括XI=IZB(QP)=L*Bm(QP)*(2Be(QP)).所述方法的其他方面包括進一步的步驟,步驟112,它用2~按如下對量子化值進行反標準化Xld=X1/2N=XI*Bra(QP)/2N在一些方面,步驟110中構成反量子化值包括構成一組遞歸的有周期P的反量子化因子,其中B(QP+P)=x*B(QP)。然后,構成一組遞歸的反量子化因子包括構成遞歸的尾數因子,其中Bm(QP)二Bm(QPmodP)。進一步來說,構成一組遞歸的反量子化因子包括構成遞歸的指數因子,其中Be(QP)=Be(QPmodP)+QP/P。在一些方面,構成一組遞歸的有周期P的反量子化因子包括x的值等于2,且構成遞歸的尾數因子包括P的值等于6。然后,構成一組遞歸的反量子化因子包括構成遞歸的指數因子,其中Be(QP)=Be(QPmodP)+QP/P。在所述方法的一些方面,步驟110中使用底數部分(Bm(QP))和指數部分(x-B。,))通過量子化值構成反量子化值(Xl)包括使用尾數部分矩陣(Bm(QP)和指數部分矩陣(xW,)構成反量子化值矩陣(Xl[i][j'])。類似地,使用尾數部分矩陣(Bm(QP)[i][y])和指數部分矩陣(xB"QP)[']M)構成量子化值矩陣(XlU]L/])包括,對每個特殊的QP值,指數部分矩陣中的每個元素為同樣的值。在一些方面,指數部分矩陣中的每個元素對QP的周期(P)值為同樣的值,其中Be(QP)=Be(P*(QP/P))。本發(fā)明的另一方面包括系數反量子化的方法。然而,此處理本質上與上述步驟110和112相同,為簡潔起見不再重復。已展示了系數量子化的方法?,F(xiàn)給出例子,展示對H.26L視頻編碼標準應用的組合的反量子化和標準化過程,其目標是減少解碼器所需的位深至16比特。本發(fā)明的概念可用于滿足H.26L內其他的設計目標??偟膩碚f,本發(fā)明應用于標準化和量子化計算的組合。本發(fā)明的實施例可以作為硬件、固件、軟件及其他實現(xiàn)方式來實現(xiàn)。一些實施例可以實現(xiàn)在通用計算設備或為這些實施例的實現(xiàn)特別設計的計算設備上。作為存儲實施例方法或為了在計算設備上執(zhí)行實施例,可以將一些實施例存儲在存儲器中。本發(fā)明的一些實施例包括視頻編碼的系統(tǒng)和方法,如圖2所示。在這些實施例中,在132減去圖像數據130中表示前面的視頻幀145的數據,得到差分圖像133,它被發(fā)送到變換模塊134。變換模塊134可以使用DCT或其他變換方法對圖像進行變換。通常,變換處理的結果為系數(K),然后此結果被發(fā)送到量子化模塊136進行量子化。量子化模塊136可以有其他輸入,如建立量子化參數(QP)和其他輸入的用戶輸入131。量子化模塊130可以使用變換系數和量子化參數來確定視頻圖像中的量子化水平(L)。量子化模塊136可以使用采用尾數部分及指數部分的方法,然而,在本發(fā)明實施例的量子化模塊136中也可以使用其他量子化方法。這些量子化水平135和量子化參數137被輸出到編碼模塊138及反量子化模塊(DQ)140。對編碼模塊138的輸出被編碼并發(fā)送到編碼器外部立即進行解碼或存儲。編碼模塊138可以在其編碼處理中使用可變長編碼(VLC)。編碼模塊138可以在其編碼處理中使用算術編碼。來自編碼模塊138的輸出被編碼為數據139,它可以被發(fā)送到解碼器或存儲在存儲設備中。來自量子化模塊136的輸出也在反量子化模塊140被接收以開始圖像的重顯。這是為了保持前面的幀的準確記錄。反量子化模塊140執(zhí)行有和量子化模塊136本質上相反的效果的處理。量子化水平或值(U被反量子化以產生變換系數。如上所述,反量子化模塊140可以使用采用尾數部分及指數部分的方法。來自反量子化模塊140的變換系數輸出被發(fā)送到反向變換(IT)模塊142,其中它們被反向變換為差分圖像141。然后此差分圖像141與來自前面的圖像幀145的數據合并以構成視頻幀149,視頻幀149可以被輸入到幀存儲器146由后面的幀引用。視頻幀149也可以作為移動預測模塊147的輸入,該模塊亦接收圖像數據130。這些輸入可以用于預測圖像相似性并有助于壓縮圖像數據。來自移動預測模塊147的輸出被發(fā)送到移動補償模塊148并和例子編碼模塊138的輸出數據組合,然后它被發(fā)送出,用于隨后的解碼和最終的圖像顯示。移動補償模塊148使用預測的圖像數據來減少幀數據需求;從輸入圖像數據130中減去其輸出。本發(fā)明的一些實施例包括視頻解碼的系統(tǒng)和方法,如圖3所示。本發(fā)明實施例的解碼器可以接收編碼的數據150到解碼器模塊152。編碼的數據150可以包括已被如上面引用圖2所述的編碼器IOO編碼的數據。解碼模塊152可以使用可變長解碼方法,如果在編碼處理中使用了這些方法的話。由編碼的數據150的類型決定,也可以使用其他解碼方法。解碼模塊152本質上執(zhí)行與編碼模塊138相反的處理。來自解碼模塊152的輸出可以包括量子化參數156和量子化值154。其他輸出可以包括移動預測數據及圖像預測數據,它們被直接發(fā)送到移動補償模塊166。通常,量子化參數156和量子化值154被輸出到反量子化模塊158,其中量子化值被轉換回變換系數。反量子化模塊158可以使用上述采用尾數部分和指數部分的方法。然后這些系數被發(fā)送到反向變換模塊160以轉換回空間域圖像數據161。移動補償單元166使用移動向量數據和幀存儲器165來構建參考圖像165。圖像數據161表示必須和前面的圖像數據165組合才能構成視頻幀163的差分圖像。此視頻幀163是輸出168,用于進一步的處理、顯示或其他目的且可以被存儲在幀存儲器165中并由后面的幀引用。在本方面的一些實施例中,如圖4所示,圖像數據102可以被發(fā)送到編碼器或編碼部分104進行各種變換、量子化、編碼及其他視頻編碼中的典型處理,如上面對本發(fā)明的一些實施例所述。然后來自編碼器的輸出可以被存儲在任何計算機可讀存儲媒體106。存儲媒體106可以作為短期緩沖或長期存儲設備。當需要時,可以從存儲媒體106中讀出編碼的視頻數據并由解碼器或解碼部分108對其解碼以輸出110到顯示器或其他設備。在本發(fā)明的一些實施例中,如圖5所示,圖像數據112可以被發(fā)送到編碼器或編碼部分114進行進行各種變換、量子化、編碼及其他視頻編碼中的典型處理,如上面對本發(fā)明的一些實施例所述。然后可以通過網絡,如LAN、WAN,或因特網U6發(fā)送來自編碼器的輸出。如存儲媒體106這樣的存儲設備可以為網絡的一部分。編碼的視頻數據可以由亦和網絡116通訊的解碼器或解碼部分118接收并解碼。然后解碼器118可以解碼數據用于本地使用120。在本發(fā)明的一些實施例中,如圖6所示,量子化方法或裝置包括尾數部分172和指數部分174。量子化參數176是部分172和174兩者的輸入。系數K170是尾數部分172的輸入,其中使用量子化參數和其他值對其進行修改,如上所述。此操作的結果與使用量子化參數在指數部分中產生的結果組合從而產生量子化水平或值L178。在本發(fā)明的一些實施例中,如圖7所示,量子化方法或裝置包括尾數部分182和移位部分184。量子化參數186為部分182和184兩者的輸入。系數K180是尾數部分182的輸入,其中使用量子化參數和其他值對其進行修改,如上所述。此操作的結果進一步在移位部分中使用量子化參數進行處理從而產生量子化水平或值L188。本發(fā)明的一些實施例,如圖8所示,包括有尾數部分192和指數部分194的反量子化方法或裝置。量子化參數196是部分192和194兩者的輸入。量子化值,L190是尾數部分192的輸入,其中使用量子化參數和其他值對其進行修改,如上所述。此操作的結果進一步在指數部分中使用量子化參數進行處理從而產生系數,XI198。本發(fā)明的一些實施例,如圖9所示,包括有尾數部分202和指數部分204的反量子化方法或裝置。量子化參數206是部分202和204兩者的輸入。量子化值,L200是尾數部分202的輸入,其中使用量子化參數和其他值對其進行修改,如上所述。此操作的結果進一步在指數部分中使用量子化參數進行處理從而產生系數,XI208。本發(fā)明的一些實施例可以存儲在計算機可讀媒體上,如磁媒體、光學媒體和其他媒體以及媒體的組合。一些實施例也可以作為信號通過網絡和通訊媒體發(fā)送。這些發(fā)送和存儲動作可以作為本發(fā)明實施例的操作的一部分或作為發(fā)送實施例到目的地的方式發(fā)生。熟悉技術的人應理解本發(fā)明可以有其他變化和實施例。權利要求1.一種對已編碼的數據進行解碼而導出解碼圖像的圖像解碼方法,其特征在于,所述圖像解碼方法包括對分割圖像而成的塊單位進行反變換的反變換步驟;以及對量子化值進行反量子化的反量子化值步驟;所述反變換步驟進行不同基礎函數具有不同范數的逆整數變換,所述反量子化步驟利用為量子化參數QP函數的尾數部分行列元素Bm(QP)[i][j]和指數部分Be(QP)按照下式從量子化值L[i][j]導出變換系數K[i][j]K[i][j]=[L[i][j]×Bm(QP)[i][j]]<<Be(QP),其中“<<”表示左移操作。2.如權利要求l所述的圖像解碼方法,其特征在于,在所述反量子化步驟中使用的尾數部分行列元素Bm(QP)[i][j]和指數部分Be(QP)用常數B和P分別表示為Bm(QP)[i][j]=Bm(QPmodP)[i][j],Be(QP)=B+QP/P。3.—種對已編碼的數據進行解碼而導出解碼圖像的圖像解碼裝置,其特征在于,所述圖像解碼裝置包括對分割圖像而成的塊單位進行反變換的反變換部;以及對量子化值進行反量子化的反量子化值部;所述反變換部進行不同基礎函數具有不同范數的逆整數變換,所述反量子化部利用為量子化參數QP函數的尾數部分行列元素Bm(QP)[i][j]和指數部分Be(QP)按照下式從量子化值L[i][j]導出變換系數K[i][j]:K[i][j]=[L[i][j]XBm(QP)[i][j]]《Be(QP),其中"《"表示左移操作。4.如權利要求3所述的圖像解碼裝置,其特征在于,在所述反量子化部中使用的尾數部分行列元素Bm(QP)[i][j]和指數部分Be(QP)用常數B和P分別表示為Bm(QP)[i][j]:Bra(QPmodP)[i][j],Be(QP)=B+QP/P。全文摘要提供系數量子化的方法。所述方法包括提供系數K、提供量子化參數(QP)、使用尾數部分(Am(QP))和指數部分(x<sup>Ae(QP)</sup>)通過系數K構成量子化值(L)。通常,x的值為2。在所述方法的一些方面,通過系數K構成量子化值(L)包括L=K*A(QP)=K*Am(QP)*(2<sup>Ae(QP)</sup>)。在其他方面,所述方法進一步包括按如下使用2<sup>N</sup>標準化量子化值Ln=L/2<sup>N</sup>=K*Am(QP)/2<sup>(N-Ae(QP))</sup>。在一些方面,構成量子化值包括構成一組遞歸的有周期P的量子化因子,其中A(QP+P)=A(QP)/x。構成遞歸的量子化因子包括構成遞歸的尾數因子,其中Am(QP)=Am(QPmodP),且構成遞歸的量子化因子包括構成遞歸的指數因子,其中Ae(QP)=Ae(QPmodP)-QP/P。文檔編號H04N7/30GK101399989SQ20081017615公開日2009年4月1日申請日期2002年8月8日優(yōu)先權日2001年8月9日發(fā)明者L·J·科洛夫斯基申請人:夏普株式會社
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1