專利名稱:圖像編碼設(shè)備和圖像編碼方法
技術(shù)領(lǐng)域:
本發(fā)明涉及例如圖像編碼設(shè)備等。更具體地,本發(fā)明涉及在不執(zhí)行幀 內(nèi)反饋控制的情況下使所生成代碼的量與為一個畫面設(shè)置的目標代碼量相 匹配的技術(shù)領(lǐng)域。
背景技術(shù):
到目前為止,在用于傳輸運動圖像的比特流或?qū)D像記錄到記錄介質(zhì) 上等的系統(tǒng)中,己經(jīng)執(zhí)行了高效編碼,以有效地利用傳輸路徑或記錄容 量。在達到以上效果的圖像編碼設(shè)備中,由編碼器生成的比特流的編碼比 特率被控制為恒量,以滿足傳輸介質(zhì)的傳輸速率的要求。在此限制下,所
生成數(shù)據(jù)的數(shù)量,也就是說,編碼器中的量子化(quantization)的量子化 步長被控制。也就是說,例如,如果具有復(fù)雜設(shè)計圖案的圖像連續(xù),則為 了減少所生成數(shù)據(jù)的數(shù)量,量子化步長被確定為大。相反,如果簡單設(shè)計 圖案連續(xù),則為了增多所生成數(shù)據(jù)的數(shù)量,量子化步長被確定為小。所 以,為了保持固定的速率,防止緩沖存儲器的溢出(overflow)或下溢 (underflow)的出現(xiàn)。
因此,在根據(jù)這種相關(guān)領(lǐng)域技術(shù)的圖像編碼設(shè)備中,當復(fù)雜圖像連續(xù) 時,量子化步長變大,從而使得圖像質(zhì)量惡化。另外,當簡單圖像連續(xù) 時,量子化步長變小。所以,難以在整個圖像內(nèi)獲得相同的圖像質(zhì)量。鑒 于這個問題,例如,日本專利No. 3358620公開了一種基于GOP (Group Of Picture,畫面組)中包括的圖像的復(fù)雜度來計算將分配給每個GOP的 代碼量的圖像編碼設(shè)備。通過以下方式來計算代碼量如果GOP包括具 有復(fù)雜設(shè)計圖案的圖像,則分配大量編碼;以及如果GOP包括具有簡單 設(shè)計圖案的圖像,則分配小量編碼。根據(jù)對每個GOP進行編碼的難度與 對多個GOP進行編碼的難度的總和之比來進行分配。
另一方面,對于使所生成代碼的量與為一個畫面設(shè)置的目標代碼量相
匹配的方法,將適當?shù)厥褂肨M5 (測試模型5)的步驟2。該方法是這樣 的一種方法分配給畫面的代碼量被在多個宏塊(macro block, MB)中 均勻劃分,劃分出的數(shù)量被作為MB的目標代碼量使用,并在畫面中執(zhí)行 反饋控制以滿足目標要求。
發(fā)明內(nèi)容
然而,在諸如TM5的步驟2的方法中,在場景改變后立即對畫面和 起始畫面序列進行編碼的過程中,量子化參數(shù)的初始值不匹配該畫面的設(shè) 計圖案,所以圖像質(zhì)量有時會惡化。
例如,如果在反饋符合某部分的設(shè)計圖案之前用于該部分的量子化參 數(shù)太大,則該部分的圖像質(zhì)量相對于其他部分惡化了。相反,如果量子化 參數(shù)太小,則用于該部分的代碼量被大大浪費了,從而對其他部分產(chǎn)生了 不良影響。另外,由于MB的目標代碼量一直保持恒定,所以如果畫面圖 像中存在難度的偏差等,則編碼的數(shù)量被不適當?shù)胤峙洹?br>
所以期望使所生成代碼的量與目標代碼量相匹配,以及考慮視覺特性 來分配代碼量,也就是說,來確定量子化參數(shù)。
根據(jù)本發(fā)明的實施例,提供了一種用于對圖像數(shù)據(jù)進行編碼的圖像編 碼設(shè)備,包括,第一編碼裝置,用于通過對圖像數(shù)據(jù)進行編碼來預(yù)測將用 于計算圖像數(shù)據(jù)的目標代碼量的量子化參數(shù)和量子化矩陣;第二編碼裝 置,用于根據(jù)通過使用第一編碼裝置預(yù)測出的量子化參數(shù)和量子化矩陣進 行編碼產(chǎn)生的所生成代碼的量和目標代碼量之間的誤差,來對第一編碼裝 置預(yù)測出的量子化參數(shù)進行校正;以及第三編碼裝置,用于使用經(jīng)過第二 編碼裝置校正的量子化參數(shù)來對圖像數(shù)據(jù)進行編碼。
因此,通過第一和第二編碼裝置,量子化參數(shù)被計算出來,從而使得 所生成代碼的量與目標代碼量相匹配,并使用量子化參數(shù)執(zhí)行編碼。
根據(jù)本發(fā)明的另一實施例,提供了一種對圖像進行編碼的方法,包括 以下步驟第一編碼,用于通過對圖像數(shù)據(jù)進行編碼來預(yù)測將用于計算圖 像數(shù)據(jù)的目標代碼量的量子化參數(shù)和量子化矩陣;第二編碼,用于根據(jù)通
過使用第一編碼步驟預(yù)測出的量子化參數(shù)和量子化矩陣進行編碼產(chǎn)生的所 生成代碼的量和目標代碼量之間的誤差來對第一編碼步驟預(yù)測出的量子化 參數(shù)進行校正;以及第三編碼,用于使用經(jīng)過第二編碼步驟校正的量子化 參數(shù)來對圖像數(shù)據(jù)進行編碼。
因此,計算量子化參數(shù),以使所生成代碼的量與目標代碼量相匹配, 并使用該量子化參數(shù)來執(zhí)行編碼。
通過本發(fā)明,可以提供一種圖像編碼設(shè)備和圖像編碼方法,他們能夠 使所生成代碼的量與目標代碼量相匹配,并能夠考慮視覺特性來分配代碼 量,也就是說,來確定量子化參數(shù)。
圖1是示出根據(jù)本發(fā)明的第一實施例的圖像編碼設(shè)備的配置圖; 圖2是進一步詳細示出有關(guān)根據(jù)本發(fā)明的第一實施例的圖像編碼設(shè)備 進行的編碼的一系列處理的流程圖3是示出代碼量預(yù)測處理的詳細流程圖4是示出支持活動性(activity)的代碼量預(yù)測處理的詳細流程圖5是示出支持量子化矩陣的代碼量預(yù)測處理的詳細流程圖6是示出當所生成代碼的量小于目標代碼量,并且量子化參數(shù)QP
不是最小值時的代碼量校正處理的流程圖7是根據(jù)本發(fā)明的第二實施例的圖像編碼設(shè)備的配置圖8是進一步詳細示出有關(guān)根據(jù)本發(fā)明的第二實施例的圖像編碼設(shè)備
進行的編碼的一系列處理的流程圖9是進一步示出圖8中的步驟S108的前一編碼時間的QP和Q
Matrix的搜索處理的流程圖10是示出圖9中的步驟S129的確定處理的流程圖; 圖ll是示出輸入圖像改變處理的詳細流程圖12是示出在輸入原始圖像的情況下,當each—activity—group=0且 each_position=5時的分布狀態(tài)測量值的示意圖;以及
圖13是示出在輸入在前一時間利用QP二20進行編碼后的圖像的情況
下,當each—activity—group=0且each_position=5時的分布狀態(tài)測量值的 示意圖。
具體實施例方式
下面,將給出本發(fā)明的優(yōu)選實施例的詳細描述。 下面是以下描述的本發(fā)明的第一和第二實施例的特性.-參對達到目標代碼量的量子化參數(shù)進行預(yù)測。通過使用量子化參數(shù)執(zhí) 行實際編碼,使目標代碼量和所生成代碼的量相匹配,從而使考慮視覺特 性來分配代碼量(也就是說,確定量子化參數(shù))成為可能。
對畫面中的平均量子化參數(shù)和前一編碼的量子化矩陣進行確定。如 果確定圖像為先前被編碼的圖像,則不使用經(jīng)過本地解碼的圖像而使用輸 入圖像作為輸入,從而改善返回搜索(backsearch)的檢測準確度。
前者在第一實施例中實現(xiàn),后者在第二實施例中實現(xiàn)。下面將給出詳 細描述。
第一實施例
在根據(jù)第一實施例的圖像編碼設(shè)備和方法中,采用了 MPEG4 Part 10: AVC (運動圖像專家組階段4,部分10: Advanced Video Coding)代 表的、使用算術(shù)編碼的圖像壓縮編碼方法,并執(zhí)行了以下特性處理,以在 控制代碼量時在畫面中實現(xiàn)令人滿意的代碼量分布。
也就是說,執(zhí)行兩次預(yù)編碼來預(yù)測用于達到目標代碼量的量子化參數(shù) QP,并使用量子化參數(shù)QP執(zhí)行實際編碼。具體地,在第一預(yù)編碼中,通 過離散余弦變換(DCT)和量子化后的等級(level)的熵(entropy)的計 算,來粗略估計所生成代碼的量。
首先,使用將用于量子化的量子化參數(shù)QP中的最小QP進行熵計 算,對那時的每個值的出現(xiàn)次數(shù)進行計數(shù),并根據(jù)最小量子化參數(shù)QP處 的出現(xiàn)次數(shù)獲取每個量子化參數(shù)QP處的出現(xiàn)次數(shù),并根據(jù)該值計算每個 量子化參數(shù)QP的熵。根據(jù)所獲取的熵,獲取每個量子化參數(shù)QP的所生 成編碼的預(yù)測數(shù)量,并獲取用于達到目標代碼量的量子化參數(shù)QP。另 外,為了將熵的計算應(yīng)用于使用量子化矩陣Q Matrix的情況,計算DCT
塊的每個位置的出現(xiàn)次數(shù)。
或者,為了使熵計算支持自適應(yīng)量子化,利用活動性對宏塊(MB) 進行分組,并計算利用活動性確定的每組的出現(xiàn)次數(shù)。
作為用于根據(jù)設(shè)計圖案而自適應(yīng)地改變量子化矩陣Q Matrix的手段, 在使用平坦量子化矩陣Q Matrix (與不使用Q Matrix—樣)時用于達到目 標代碼量的量子化參數(shù)QP被使用,并利用量子化參數(shù)QP改變量子化矩 陣QMatrix。如果確定的量子化矩陣Q Matrix不平坦,則再次獲取在使用 量子化矩陣Q Matrix時的量子化參數(shù)QP。
在第二編碼中,使用通過第一預(yù)編碼獲取的量子化參數(shù)QP和量子化 矩陣Q Matrix來執(zhí)行編碼,以獲取所生成代碼的量。利用所生成代碼的量 與所生成編碼的目標數(shù)量之間的誤差來修正量子化參數(shù)QP。在實際編碼 的過程中,使用通過第二編碼獲取的量子化參數(shù)QP。
下面,將給出基于這樣的特性的第一實施例的詳細描述。 圖1示出了根據(jù)本發(fā)明的第一實施例的圖像編碼設(shè)備的配置。 如圖1中所示,圖像編碼設(shè)備包括執(zhí)行第一預(yù)編碼的第一預(yù)編碼部 1、執(zhí)行第二預(yù)編碼的第二預(yù)編碼部2、執(zhí)行實際編碼的編碼部3、代碼量 控制部4、以及延遲緩沖器5和6。第一預(yù)編碼部1包括幀內(nèi)預(yù)測(intra-prediction)模式確定部11、幀內(nèi)預(yù)測處理部12、 DCT部13、量子化部 14、熵計算部15、以及活動性計算部16。第二預(yù)編碼部2包括幀內(nèi)預(yù)測 處理部21、 DCT部22、量子化部23、熵編碼長度計算部24、緩沖器 25、 IDCT (反DCT)部26、以及反量子化部27。編碼部3包括幀內(nèi)預(yù)測 處理部31、 DCT部32、量子化部33、熵編碼部34、緩沖器35、 IDCT部 36、以及反量子化部37。
在這點上,第一預(yù)編碼部1對應(yīng)于第一編碼裝置,第二預(yù)編碼部2對 應(yīng)于第二編碼裝置,以及編碼部3對應(yīng)于第三編碼裝置。另外,例如,活 動性計算部16對應(yīng)于活動性計算裝置。然而,本發(fā)明當然不限于這些關(guān) 系。
在這種配置中,輸入圖像數(shù)據(jù)41是第一預(yù)編碼部1的幀內(nèi)預(yù)測模式 確定部11的第一輸入。幀內(nèi)預(yù)測模式確定部11基于輸入圖像數(shù)據(jù)41確定 幀內(nèi)預(yù)測模式。這里確定的幀內(nèi)預(yù)測模式還被發(fā)送到第二預(yù)編碼部2和編
碼部3,并被用于由第二預(yù)編碼部2執(zhí)行的第二編碼和由編碼部3執(zhí)行的
實際編碼。
接下來,幀內(nèi)處理部12計算預(yù)測出的圖像數(shù)據(jù)和輸入圖像數(shù)據(jù)之間
的差分圖像。這里,為了簡化處理,根據(jù)輸入圖像數(shù)據(jù)生成預(yù)測圖像數(shù)
據(jù)。DCT部13執(zhí)行整數(shù)精確度的DCT,并將DCT系數(shù)發(fā)送到量子化部
14。 量子化部14使用DCT系數(shù)執(zhí)行量子化,并將輸出發(fā)送到熵計算部
15。 熵計算部15計算熵,以預(yù)測所生成代碼的量。作為代碼量預(yù)測的結(jié) 果,用于畫面的基礎(chǔ)量子化參數(shù)(Base QP)和將用于接下來的步驟的量 子化矩陣(Q matrix)被獲取,并被輸入到代碼量控制部4。為了在這里給 出補充性的解釋,量子化參數(shù)QP是用于指定AVC中的量子化步長的值。 量子化參數(shù)QP越大,量子化步長就變得越大。
與幀內(nèi)預(yù)測模式的確定同時,活動性計算部16計算第一預(yù)編碼部1 中的活動性,并根據(jù)該活動性對宏塊(MB)進行分組。為每個宏塊 (MB)確定的活動性組號被輸入到熵計算部15和代碼量控制部4。
代碼量控制部4將量子化信息(每個MB的量子化參數(shù)QP、量子化 矩陣Q Matrix)發(fā)送到第二預(yù)編碼部2,以根據(jù)己經(jīng)通過第一預(yù)編碼部1 的第一預(yù)編碼獲取的每個宏塊MB的活動性組、量子化矩陣Q Matrix、以 及用于畫面的基礎(chǔ)量子化參數(shù)Base QP進行第二預(yù)編碼。
也就是說,在延遲處理后,輸入圖像數(shù)據(jù)通過延遲緩沖器5被輸入。 幀內(nèi)預(yù)測處理部21計算預(yù)測出的圖像數(shù)據(jù)和輸入圖像數(shù)據(jù)之間的差。該 差通過DCT部22進行DCT變換,并且通過量子化部23進行量子化。然 后,熵編碼長度計算部24計算所生成代碼的量。在這點上,量子化部23 的輸出通過反量子化部27進行反量子化,以再現(xiàn)系數(shù)數(shù)據(jù),該系數(shù)數(shù)據(jù) 通過IDCT 26進行IDCT,并且與輸入圖像有關(guān)的圖像數(shù)據(jù)被再現(xiàn),以被 存儲在緩沖器25中。
在第二預(yù)編碼部2完成第二預(yù)編碼之后,所生成代碼的量被獲取。代 碼量控制部4根據(jù)所獲取的所生成代碼的量來校正基礎(chǔ)量子化參數(shù)Base QP。
第三編碼部3使用已經(jīng)通過第二預(yù)編碼部2進行的第二預(yù)編碼確定的
畫面的基礎(chǔ)量子化參數(shù)Base QP、以及已經(jīng)通過第一預(yù)編碼確定的量子化 矩陣Q Matrix和活動性組來執(zhí)行實際編碼。
也就是說,當幀內(nèi)預(yù)測處理部31接收到已經(jīng)經(jīng)過延遲緩沖器6的延 遲處理的輸入圖像信號時,幀內(nèi)預(yù)測處理部31計算預(yù)測出的圖像和第一 預(yù)編碼時確定的模式的輸入圖像之間的差分圖像。該差分圖像通過DCT 部32進行DCT變換,并通過量子化部33進行量子化。然后,熵編碼長度 計算部34執(zhí)行熵編碼,并輸出輸出流42。在這點上,量子化部33的輸出 通過反量子化部37進行反量子化,以再現(xiàn)系數(shù)數(shù)據(jù),該系數(shù)參數(shù)通過 IDCT部36進行IDCT變換,并且與輸入圖像有關(guān)的圖像數(shù)據(jù)被再現(xiàn)以被 存儲在緩沖器35中。
下面,將參考圖2中的流程圖進一步詳細給出與根據(jù)本發(fā)明的第一實 施例的圖像編碼設(shè)備進行的編碼有關(guān)的一系列處理。
首先,活動性計算部16基于輸入圖像數(shù)據(jù)計算每個MB的活動性, 并基于其值將MB劃分成多個活動性組(步驟S1)。
也就是說,例如,如果假設(shè)MB被劃分成了 NumOfActivityGroup個 組,貝!J活動性計算部16將活動性與ActivityTheshold[O]至 ActivityTheshold[NumOfActivityGroup-2]進行比較,以確定組。每個MB的 量子化參數(shù)QP可以通過將取決于活動性組的偏移AdaptQpDelta與畫面的 基礎(chǔ)量子化參數(shù)Base QP相加來獲取。
MB—QP=BaseQp+AdaptQpDelta[activity一group]
例如,如果假設(shè)活動性組NumOfActivityGroup為13,則取決于此的 每個偏移AdaptQpDelta的值可以如下確定
AdaptQpDelta[13] = {-6,-5,-4,-3,-2,-l,0,l,2,3,4,5,6}
接下來,幀內(nèi)預(yù)測模式確定部11確定幀內(nèi)預(yù)測模式(步驟S2),處 理進行到第一預(yù)編碼處理(步驟S3)。
第一預(yù)編碼處理的目的在于,通過計算DCT和量子化之后的數(shù)據(jù)的 熵來粗略估計所生成代碼的量。在使用算術(shù)編碼的圖像壓縮編碼方法中, 接近于作為理論壓縮極限的熵的壓縮效率被獲取。通過利用這個事實,使
用熵來預(yù)測代碼量。
也就是說,經(jīng)過幀內(nèi)預(yù)測處理部12的幀內(nèi)預(yù)測處理和DCT部13的 DCT變化后的值通過最小量子化參數(shù)QP被量子化,并且量子化系數(shù)的每 個值的絕對值的出現(xiàn)次數(shù)被計數(shù)。也就是說,如果將出現(xiàn)的量子化系數(shù)的 絕對值為 0 至 MaxLevel_In_MinQ , 貝lj Count[O] 至 Count[MaxLeve1—In—MinQ]被獲取。
此處,最小量子化參數(shù)QP是計劃使用的量子化參數(shù)QP的最小值。 例如,如果預(yù)先發(fā)現(xiàn)由于低比特率而沒有使用小量子化系數(shù)QP,則應(yīng)當 考慮不包括這個部分的部分。
如果這里使用的量子化參數(shù)QP變大,則MaxLevel-In-MinQ變小,從 而可以減少計數(shù)器的數(shù)目。然而,當量子化參數(shù)QP小于該量子化系數(shù)QP 時,代碼量難以獲取,因為這個信息被丟失了。在這點上,量子化后的出 現(xiàn)次數(shù)被獲取。這是為了減少計數(shù)器的數(shù)目。如果沒有計數(shù)器數(shù)目的限 制,則量子化前的值,也就是說,DCT系數(shù)的出現(xiàn)次數(shù)可以被獲取。對于 一個畫面的所有部分,都可以獲取出現(xiàn)次數(shù)。
接下來,代碼量控制部4執(zhí)行獲取每個量子化參數(shù)QP的所生成代碼 的量的預(yù)測值的代碼量預(yù)測處理(步驟S4)。這是對每個量子化參數(shù)的處 理。
圖3中的流程圖示出了熵計算部15進行的代碼量預(yù)測處理的細節(jié)。 也就是說,對量子化系數(shù)的每個值的絕對值的出現(xiàn)次數(shù)進行計數(shù)(對于每 個等級)(步驟S21)。對可變等級進行初始化(等級=0)(步驟 S22)。獲取使用用于獲取所生成代碼的量的QP執(zhí)行量子化時的等級(步 驟S23)。接下來,將等級出現(xiàn)的次數(shù)加到獲取所生成代碼的量的量子化 參數(shù)QP處的等級計數(shù)上(步驟S24)。增加可變等級(步驟S25)。確定 是否已經(jīng)處理了所有等級(步驟S26)。
如果確定還沒有對所有等級進行處理(在步驟S26分支到否),則處 理返回步驟S22,重復(fù)以上描述的處理。如果確定已經(jīng)處理了所有等級 (步驟S26分支到是),則處理繼續(xù)到步驟S27。
也就是說,從步驟S21到步驟S26,根據(jù)最小量子化系數(shù)QP處的量
子化系數(shù)的每個值的絕對值的出現(xiàn)次數(shù)來獲取量子化系數(shù)的每個值的絕對 值的出現(xiàn)次數(shù)。
接下來,獲取等級的出現(xiàn)概率(步驟S27),并根據(jù)前面獲取的出現(xiàn)
次數(shù)獲取熵(步驟S28)。
現(xiàn)在,通過以下等式獲取量子化系數(shù)的每個值的絕對值的出現(xiàn)概率
P[i]。
P[i]=count[i]/total—count
使用出現(xiàn)概率P[i],通過以下等式來獲取熵Entropy。 [等式l]
Entropy=-1 * E i(P[i]*log(P[i])/log(2))
確定對于所有等級是否都已經(jīng)執(zhí)行了步驟S27和S28的處理(步驟 S29)。如果不是,則對于所有等級重復(fù)該處理。如果對于所有等級都已 經(jīng)完成了該處理(分支到步驟S29的是),則通過以下等式來獲取代碼量 的估計值Estimated_Bits (步驟30)。
Estimated—Bits=Entropy *total—count+sin—bits
這里,假設(shè)非零系數(shù)的出現(xiàn)次數(shù)是non—zero—count,則代碼比特 sign—bits變?yōu)閟ing—bits=non—zero—count 。
這里,為了支持活動性,需要用圖4中的流程圖所示的處理代替圖3 中的基本處理。
首先,在對量子化系數(shù)的每個值的絕對值的出現(xiàn)次數(shù)進行計數(shù)時,除 了對每個等級外,還對每個活動性組進行計數(shù)(步驟S41)。
也京尤是說,對計數(shù)值Co皿t[each一activity—group] [each—level]進行計數(shù)。
接下來,執(zhí)行用于獲取用于畫面的每個基礎(chǔ)量子化參數(shù)Base QP的所 生成代碼的量的預(yù)測值的處理。對每個量子化參數(shù)QP都執(zhí)行這個處理。 首先,獲取用于每個活動性組的量子化參數(shù)QP (步驟S42)。接著,對可 變等級進行初始化(等級二0)(步驟S43),然后獲取在使用用于獲取所 生成代碼的量的QP執(zhí)行量子化時等級(步驟S44)。將等級出現(xiàn)的次數(shù) 加到要將獲取的量子化參數(shù)QP處的等級計數(shù)上(步驟S45)。增加可變
等級(步驟S46)。確定是否完成了對于所有等級的處理(步驟S47)。 如果確定還沒有對所有等級進行處理(分支到步驟S47的否),則處理返 回到步驟S43,并重復(fù)上述處理。如果確定已經(jīng)對所有等級進行了處理 (分支到步驟S47的是),則處理進行到步驟S48。
在上述步驟中,對于每個活動性組,根據(jù)最小量子化參數(shù)QP處的量 子化系數(shù)的每個值的絕對值的出現(xiàn)次數(shù)獲取在獲取所生成代碼的量時的量 子化參數(shù)QP處的量子化系數(shù)的每個值的絕對值的出現(xiàn)次數(shù)。
在步驟S48,確定是否對于所有活動性組都完成了處理。如果確定還 沒有對所有活動性組進行處理(分支到步驟S48的否),則處理返回到步 驟S42,并重復(fù)上述處理。如果確定對于所有活動性組的處理都已經(jīng)完成 (分支到步驟S48的是),則根據(jù)所獲取的出現(xiàn)次數(shù)獲取熵,并獲取所生 成代碼的量的預(yù)測值(步驟S49至S53)。
從步驟S49到S53的處理與圖3中的從步驟S27到S31的處理一樣, 所以省略重復(fù)的描述。
另外,為了進一步支持量子化矩陣Q Matrix,有必要用圖5中的流程 圖所示的處理代替圖3中的基本處理。
首先,在對量子化系數(shù)的每個值的絕對值的出現(xiàn)次數(shù)進行計數(shù)時,除 了對每個等級和每個活動性組外,還對DCT塊中的每個位置進行計數(shù) (步驟S61)。
也就是說,對計數(shù)值Count[each—activity—group] [each_position] [each—level]
進行計數(shù)。
接下來,執(zhí)行用于獲取用于畫面的每個基礎(chǔ)量子化參數(shù)Base QP的所 生成代碼量的預(yù)測值的處理。對于每個量子化參數(shù)QP都執(zhí)行這個處理。 這里將添加的處理是考慮在使用最小量子化參數(shù)QP進行量子化時獲取 用于獲取所生成代碼的量的量子化參數(shù)QP時的DCT塊中的每個位置,計 算量子化矩陣Q Matrix的每個元素(步驟S64)。也就是說,DCT后的系 數(shù)意味著利用量子化參數(shù)QP和量子化矩陣Q Matrix的乘積的量子化。接 著,對于DCT塊中的每個位置,根據(jù)最小量子化參數(shù)QP處的量子化系數(shù) 的每個值的絕對值的出現(xiàn)次數(shù),獲取在獲取所生成代碼的量時的量子化參
數(shù)QP處的量子化系數(shù)的每個值的絕對值的出現(xiàn)次數(shù)(步驟S65)。
對于所有等級重復(fù)這些處理步驟(步驟S63至S67)。進一步地,對
于DCT塊中的所有位置重復(fù)該處理(步驟S63至S68)。這些步驟后的處 理(步驟S69至S74)與圖4中從步驟S48到S53的處理一樣,所以將省 略重復(fù)的描述。
現(xiàn)在,返回參考圖2中的描述,處理接著進行到量子化參數(shù)確定處 理。也就是說,己經(jīng)通過上述處理獲取了用于量子化參數(shù)QP的預(yù)測出的 代碼量,于是從他們中選擇具有最接近目標代碼量的值的量子化參數(shù)QP (步驟S5)。
在這點上,如果執(zhí)行自適應(yīng)量子化矩陣Q Matrix的改變處理,則應(yīng)該 如下改變步驟S5的處理。也就是說,在這種情況下,用于使用平坦量子 化矩陣Q Matrix (與不使用Q Matrix—樣)的量子化參數(shù)QP的預(yù)測代碼 量被獲取。然后,選擇具有最接近目標代碼量的量子化參數(shù)QP。
從所獲取到的量子化參數(shù)QP的值中選擇將使用的量子化矩陣Q Matrix (步驟S6)。更具體地,假設(shè)使用的將改變的類型數(shù)目為 NumOfQMatixId , 通 過 將 QmatrixTheshold[O] 至 QmatrixTheshold[NumOfMatrixId—2]與量子化矩陣Q Matrix進行比較確定 量子化矩陣Q Matrix。然后,獲取在使用要被使用的量子化矩陣Q Matrix 時的用于量子化參數(shù)QP的預(yù)測代碼量。從他們中選擇具有最接近目標代 碼量的值的量子化參數(shù)QP (步驟S7)。這是已經(jīng)通過第一預(yù)編碼部1確 定的畫面的基礎(chǔ)量子化參數(shù)Base QP。
接下來,第二預(yù)編碼部使用己經(jīng)通過第一預(yù)編碼部1的第一預(yù)編碼確 定的用于畫面的基礎(chǔ)量子化參數(shù)Base QP、量子化矩陣Q Matrix、以及活 動性組來執(zhí)行第二預(yù)編碼(步驟S8)。第二預(yù)編碼的目的在于,使用通過 第一預(yù)編碼粗略估計出的量子化參數(shù)QP來實際地執(zhí)行編碼,以獲取預(yù)測 誤差并校正該誤差。在編碼完成后,所生成代碼的量被獲取。
接下來,利用通過第二預(yù)編碼部2的第二預(yù)編碼獲取的所生成代碼的 量和目標代碼量之間的差來校正量子化參數(shù)QP (步驟S9)。也就是說, 基于每當量子化參數(shù)QP改變1時所生成代碼的量就改變DiffRatio的假
設(shè),校正量子化參數(shù)QP。校正量小,從而誤差被假設(shè)處于即使量子化參 數(shù)QP相對于所生成代碼的量的改變被認為是不論設(shè)計圖案如何都是恒量 的,也基本沒有問題的水平。
這里,將參考圖6中的流程圖,給出當所生成代碼的量小于目標代碼 量,并且量子化參數(shù)QP不是最小值時的代碼量校正處理的描述。
在這點上,該處理基本與所生成代碼的量小于目標代碼量的情況相同。
現(xiàn)在,在這個處理中,所生成代碼的量被分配給PreGenbits,并且當 前的量子化參數(shù)QP被分配給PreQP (步驟S81)。接下來,PreQP減l后 的值被分配給NextQP (步驟S82),并且PreGenbits*(100+DiffRatio)/100 被分配給對應(yīng)于NextQP的所生成代碼的量NextGenbits (步驟S83)。這 里,假設(shè)每當量子化參數(shù)QP減1時,所生成代碼的量就減少DiffRatio。
接下來,確定所生成代碼的量NextGenbits是否大于目標代碼量 TargetGenbit (步驟S84)。這里,如果不是NextGenbits>TargetGenbit, 則NextQP被返回到PreQP,并且NextGenbits被返回到PreGenbits (步驟 S85),并確定NextQP是否為最小量子化參數(shù)QP (步驟S86)。
這里,如果NextQP不是最小量子化參數(shù)QP,則處理返回到步驟 S82,并重復(fù)上述處理。另一方面,如果NextQP是最小量子化參數(shù)QP, 則NextQP被分配給量子化參數(shù)QP,并終止處理。同時,如果NetGenBits > TargetGenbit ,貝U確定 (NextGenbits-TargetGenbit ) 是否大于 (TargetGenBit-PreGenBits)(步驟S88)。如果這個關(guān)系成立,貝U PreQP 被分配給QP。如果這個關(guān)系不成立,貝!j NextQP被分配給QP,并終止處 理。
再次返回參考圖2,第三編碼部3執(zhí)行實際編碼(S10)。使用已經(jīng)通 過第二預(yù)編碼部2的第二預(yù)編碼確定的畫面的基礎(chǔ)量子化參數(shù)Base QP、 已經(jīng)通過第一預(yù)編碼確定的量子化矩陣Q Matrix、以及活動性組來執(zhí)行實 際編碼。以這種方式,終止與圖像信息編碼相關(guān)的一系列處理。
如上所述,通過本發(fā)明的第一實施例,可以在不執(zhí)行幀內(nèi)反饋控制的 條件下使所生成代碼的量與為一個畫面設(shè)置的目標代碼量相匹配。所以,
可以消除諸如由反饋參數(shù)的不適當?shù)某跏贾岛湍繕舜a量的不適當?shù)姆峙?帶來的負面效果的反饋控制的問題。所以,可以使所生成代碼的量與目標 代碼量相匹配,并可以考慮視覺特性來分配代碼量,也就是說,可以確定 量子化參數(shù)。
第二實施例
接下來,給出本發(fā)明的第二實施例的描述。
根據(jù)第二實施例的圖像編碼設(shè)備采用了使用諸如由MPEG4 AVC代表 的DCT等的正交坐標變換的圖像壓縮編碼系統(tǒng),并具有以下示出的特 性,以從DCT后的系數(shù)分布中檢測出離散分布狀態(tài)。
也就是說,在第二實施例中,確定畫面中的平均量子化參數(shù)QP和先 前編碼時的量子化矩陣QMatrix。如果確定圖像為經(jīng)過預(yù)先編碼的圖像, 則使用輸入圖像作為輸入而不使用經(jīng)過本地解碼的圖像,從而可以改善返 回搜索的檢測精確度。沒有找出平均量子化參數(shù)QP和量子化矩陣Q Matrix的狀態(tài)被認為是沒有經(jīng)過先前編碼的原始圖像。對是原始圖像還是 經(jīng)過先前編碼的圖像進行判斷。另外,當圖像被認為是原始圖像時,如果 畫面中的平均量子化參數(shù)QP的預(yù)測值太大,則確定條件被用于使用輸入 段低通濾波器來改善主觀圖像質(zhì)量。如果確定圖像是先前編碼的圖像,則 在返回搜索部中設(shè)置量子化矩陣Q Matrix和量子化參數(shù)QP,并且對返回 搜索處理的搜索范圍進行限制以減小電路尺寸。除了上述的以外,當經(jīng)過 長GOP編碼的信號被輸入時,其還被用來確定幀內(nèi)畫面。
下面,將給出基于這些特性的第二實施例的詳細描述。
圖7示出了根據(jù)本發(fā)明的第二實施例的圖像編碼設(shè)備的配置。如圖7 中所示,圖像編碼設(shè)備包括執(zhí)行第一預(yù)編碼的第一預(yù)編碼部100、執(zhí)行第 二預(yù)編碼的第二預(yù)編碼部200、執(zhí)行實際編碼的編碼部300、代碼量控制 部109、低通濾波處理部201、延遲緩沖器202、以及宏塊確定部212。
更具體地,第一預(yù)編碼部IOO進一步包括活動性確定部101、幀內(nèi) 預(yù)測模式確定部102、幀內(nèi)預(yù)測處理部103、 DCT部104、量子化部105、 等級計數(shù)部106、熵計算部107、以及Q Matrix/Base QP檢測部108。第二 預(yù)編碼部200包括輸入圖像改變處理部203、幀內(nèi)預(yù)測處理部204、 DCT
部205、量子化部206、反量子化部207、 IDCT部208、緩沖器209、返回 搜索部210、以及編碼長度計算部211。編碼部300包括幀內(nèi)預(yù)測處理部 302、 DCT部303、量子化部304、反量子化部305、 IDCT部306、緩沖器 307、以及編碼部308。
通過這種配置,輸入圖像數(shù)據(jù)首先被輸入到幀內(nèi)預(yù)測模式確定部 102,并且?guī)瑑?nèi)預(yù)測模式被確定。這里確定的模式也被用在第二預(yù)編碼部 200和編碼部300中。
接下來,幀內(nèi)預(yù)測處理部103計算預(yù)測出的圖像數(shù)據(jù)和輸入圖像數(shù)據(jù) 之間的差。預(yù)測圖像數(shù)據(jù)是根據(jù)輸入圖像數(shù)據(jù)創(chuàng)建的。使用用于預(yù)測圖像 數(shù)據(jù)的輸入圖像數(shù)據(jù),可以改善Q-Matrix/Base-QP檢測部108對量子化矩 陣Q Matrix和基礎(chǔ)量子化參數(shù)Base QP的檢測速度,并可以縮減包括在第 二預(yù)編碼部200中的反量子化和IDCT部分。
接下來,DCT部104執(zhí)行離散余弦變換等,并且量子化部105執(zhí)行量 子化。其輸出通過等級計數(shù)部106被輸入到熵計算部107以計算熵,從而 預(yù)測所有量子化參數(shù)QP的代碼量。量子化參數(shù)QP附近的目標值和等級 計數(shù)部106的等級計數(shù)結(jié)果被輸入到Q-Matrix/Base-QP檢測部108。 Q-Matrix/Base-QP檢測部108檢測輸入是否與還沒有經(jīng)過之前的編碼的原始 圖像有關(guān)。同時,Q-Matrix/Base-QP檢測部108確定量子化矩陣Q Matrix 和基礎(chǔ)量子化參數(shù)Base QP。
同時,輸入圖像還被輸入到活動性確定部101,以計算活動性。利用 活動性對宏塊MB進行分組。為每個MB確定的活動性組號被輸入等級計 數(shù)部106和畫面參數(shù)和代碼量控制部109。
當Q-matrix/Base-QP檢測部108檢測出輸入為原始圖像時,畫面參數(shù) 和代碼量控制部109將量子化信息(量子化矩陣Q Matrix、每個MB的量 子化參數(shù)QB)傳給第二與編碼部200,以根據(jù)已經(jīng)通過第一預(yù)編碼部100 確定的每個MB的活動性組、量子化矩陣Q Matrix、以及用于畫面的Base QP來執(zhí)行編碼。在編碼后,畫面參數(shù)和代碼量控制部109獲取所生成代 碼的量。畫面參數(shù)和代碼量控制部109根據(jù)所獲取的所生成代碼的量來校 正畫面的基礎(chǔ)量子化參數(shù)Base QP。
另外,當畫面的基礎(chǔ)量子化參數(shù)Base QP變得太大而使得失真顯著 時,輸入圖像改變處理部203使用低通濾波處理部201來減少視覺失真, 并旁路掉返回搜索部210。
當Q Matrix/Base-QP檢測部108檢測量子化矩陣Q Matrix和基礎(chǔ)量子 化參數(shù)Base QP時,第二預(yù)編碼部200使用來自延遲緩沖器202的輸入圖 像而不使用來自緩沖器209的經(jīng)過本地解碼的圖像,來在輸入圖像改變處 理部203中改善返回搜索部210的返回搜索處理中的檢測效率。
當返回搜索工作時,第二預(yù)編碼部200確定產(chǎn)生每個宏塊的最小失真 的量子化參數(shù)QP,并確定是否在使能代碼量控制的宏塊確定部212的范 圍中使用返回搜索結(jié)果。
編碼部300使用通過第一預(yù)編碼部IOO獲取的幀內(nèi)預(yù)測模式、通過代 碼量控制部109確定的基礎(chǔ)量子化參數(shù)Base QP和量子化矩陣Q Matrix、 以及已經(jīng)通過宏塊確定部212獲取的宏塊MB的量子化參數(shù)QP的偏移, 來執(zhí)行參數(shù)編碼。
下面,將參考圖8中的流程圖,詳細給出與根據(jù)本發(fā)明的第二實施例 的圖像編碼設(shè)備進行的編碼相關(guān)的一系列處理的描述。
這里,將主要給出與第一實施例(圖2)的不同點的描述。
在步驟S101到S107,處理與圖2中的步驟Sl到S7的處理相同。但 是,在步驟S108,對先前編碼時的量子化參數(shù)QP和量子化矩陣Q Matrix 進行搜索,以執(zhí)行校正(步驟S108)。
這里,作為量子化系數(shù)的每個值的絕對值的出現(xiàn)次數(shù)的計數(shù)值 Count[each—activity—group] [each_position] [each—level]的分布數(shù)據(jù)被用作處 理的基本信息。
圖12示出了在each—activity—group=0,且each_position=5時輸入原始 圖像的情況下的分布狀態(tài)的實際測量值。圖13示出了在 each—activity—group=0,且each_position=5時輸入前一次通過QP=20進行 編碼的圖像的情況下的分布狀態(tài)的實際測量值。每個水平軸指示量子化參 數(shù)QP,每個垂直軸指示量子化系數(shù)的每個值的出現(xiàn)次數(shù)的計數(shù)值。
一般,在H.264 AVC的編碼方法中,通過量子化的離散狀態(tài)由于非線
性原因(諸如,IDCT的計算精度不足、沒有再現(xiàn)100%的幀內(nèi)預(yù)測模式
等)變得分布廣泛。但是,可以檢測離散狀態(tài)。用于一幀的數(shù)據(jù)是統(tǒng)計上
足夠的信息。所以,在這個實施例中,為了減少計算量,量子化參數(shù)QP 和量子化矩陣Q Matrix (通過他們,量子化參數(shù)QP附近的分布,即量子 化后的計數(shù)等級為1,并具有最小余量)被獲取。在這點上,需要排除示 出相鄰量子化等級的分布數(shù)據(jù),所以QP/2到QP/3范圍內(nèi)的數(shù)據(jù)被用作評 估目標。
下面,將參考圖9中的流程圖,進一步給出步驟S108的前一次編碼 時的量子化參數(shù)QP和量子化矩陣Q Matrix的搜索處理的描述。
首先,通過下式確定示出量子化參數(shù)QP的量子化等級的頂部等級 (t[O])、示出QP/2的等級的底部等級1 (t[l])、以及示出3QP/2的等級 的底部等級2 (t[2])。
qp=sch—qp+AdaptQpDelta[activity—group]
其中,sch—qp是在通過代碼量預(yù)測處理獲取的量子化參數(shù)QP附近改 變約土6的變量。
t
=(((Q—Matrix[mid][pos]*2(qp/6))/16
t
=t
/2
t[2]=t
+t[l]
其中,Q—Matrix[mid][posP指示4X4 DCT塊的mid類型的第pos個的 Q Matrix的值。
接下來,對于頂部等級的計數(shù)值的積分(p[mid][qp])執(zhí)行處理,并對 底部等級l的計數(shù)值的積分(b[mid][qp])執(zhí)行處理(步驟S122)。 p[mid] [qp]+=Count[activity—group] [pos] [t[O]] b[mid] [qp]+=Count[activity—group] [pos] [t[ 1 ]];
然后,QP的量子化等級的誤差(rest[mid][qp])被積分(步驟 S123)。
rest[mid][qp]+=abs(t
-lev)*Count[activity—group] [pos] [lev]]; 其中,lev是從t[l]到t[2]變化的變量。值p[mid][qp]、 b[mid][qp]、以 及rest[mid][qp]是通過積分所有activity—group和量子化AC系數(shù)pos指示
所有樣本的平均分布的參數(shù)。
以這種方式,確定在底部級別之間的處理是否已經(jīng)被完全完成(步驟
S124)。重復(fù)步驟S123的處理,直到處理已經(jīng)全部被完成。如果完成了 所有處理,則確定是否已經(jīng)處理了所有DCTAC系數(shù)(步驟S125)。
在步驟S125,重復(fù)從步驟S121到步驟S125的處理,直到處理已經(jīng)被 全部完成。如果所有的處理都已經(jīng)被完成,則DCT-AC系數(shù)指針被初始化 (步驟S126),并確定對于所有活動性組的處理是否已經(jīng)完成(步驟
5127) 。如果對于所有活動性組的處理還沒有完成,則處理返回步驟 S121,并重復(fù)上述處理。另一方面,如果對于所有活動性組的處理都已經(jīng) 完成,則確定對于所有量子化參數(shù)QP的處理是否己經(jīng)完成(步驟
5128) 。
在步驟S128,如果還沒有完成對于將搜索的所有量子化參數(shù)的處理, 則處理返回到上述步驟S121,并重復(fù)上述處理。另一方面,如果已經(jīng)完成 對于將搜索的所有量子化參數(shù)的處理,則執(zhí)行確定處理(步驟S129),并 以這種方式終止一系列處理。
接下來,將參考圖10中的流程圖詳細給出圖9中的步驟S129的確定 處理的描述。
這里,使用p[mid][qp]、 b[mid][qp]、以及rest[mid][qp]來獲取先前編 碼時的畫面的量子化參數(shù)QP和量子化矩陣Q Matrix。在這點上,步驟 S131和步驟S137可以省略。
首先,利用rest
對最小誤差值(min_rest—norm)進行初始化(步 驟S131)。接下來,確定頂部值的積分值是否大于底部值的積分值(步驟 S132)。這里,如果積分頂部值不大于積分底部值,則處理進行到步驟 S136。另一方面,如果積分頂部值大于積分底部值,則由頂部等級和底部 等級之間的差的標準化的值rest—norm被獲取(步驟S133)。
rest—norm=rest [mid] [qp]/(p [mid] [qp] -b [mid] [qp]
接下來,確定rest—norm是否小于最小誤差值(步驟S134)。如果小 于最小誤差值,則最小誤差值被更新(步驟S135),并且處理進行到步驟 S136。
步驟S135的處理是僅在檢測離散分布狀態(tài)的情況下執(zhí)行的處理,并
且執(zhí)行以下操作min—rest—norm=rest—norm。另外,在將要搜索的所有量 子化矩陣Q Matrix和量子化參數(shù)QP (sch—qp)中,具有最小rest—norm的 由sch—qp和mid指示的Q Matrix表示已經(jīng)在先前編碼中使用的畫面的量 子化參數(shù)QP和量子化矩陣Q Matrix。當處理根本沒有被調(diào)用時,是量子 化的離散狀態(tài)沒有被檢測到的情況,并且該情況被看作先前根本沒有被編 碼的原始圖像。
接下來,確定將搜索的所有量子化參數(shù)QP是否都已經(jīng)被處理過了 (步驟S136)。如果將搜索的所有量子化參數(shù)QP還沒有被處理過,則處 理返回到步驟S132,并重復(fù)上述處理。另一方面,如果將搜索的所有量子 化參數(shù)QP都已經(jīng)被處理過了,則量子化參數(shù)QP的搜索范圍被初始化 (步驟S137),并且確定量子化矩陣Q Matrix的所有候選是否已經(jīng)被處 理過了 (步驟S138)。這里,如果還沒有處理所有的候選,則處理返回到 步驟S132,并且重復(fù)上述處理。另一方面,如果所有的候選都已經(jīng)被處理 過,則終止一系列處理。
接下來,將參考圖11中的流程圖詳細給出輸入圖像處理的描述。通 過圖10的上述處理,可以檢測輸入信號是原始圖像的信號還是經(jīng)過先前 編碼的圖像的信號。從而,通過基于這個條件改變輸入信號,其失真趨于 顯著的原始圖像被執(zhí)行低通濾波處理,并且在經(jīng)過編碼的圖像的情況下, 輸入視頻信號被用于執(zhí)行返回搜索以改善效率。
也就是說,確定先前編碼時的畫面的量子化矩陣Q Matrix和量子化參 數(shù)QP是否己經(jīng)被找到(步驟S141)。如果找到了,則返回搜索部212被 使用(步驟S142),并且輸入圖像改變處理部203輸出輸入圖像(步驟
5143) 。另一方面,在步驟S141,如果先前編碼時的畫面的量子化矩陣Q Matrix和量子化參數(shù)QP沒有被找到,則返回搜索部212不被使用(步驟
5144) ,并確定通過代碼量預(yù)測處理獲取的預(yù)測出的QP是否大(步驟
5145) 。這里,如果通過代碼量預(yù)測處理獲取的預(yù)測出的量子化參數(shù)QP 大,則輸入圖像改變處理部203輸出來自低通濾波處理部201的信號。如 果不大,則輸入圖像改變處理部203輸出緩沖器209的本地解碼(步驟
如上所述,通過本發(fā)明的第二實施例,可以通過從DCT后的離散分 布狀態(tài)高精度地確定信號是否已經(jīng)經(jīng)歷了先前的編碼,來確定是否改變將 僅用于第一次的預(yù)濾波處理。從而可以在改善第一圖像的主觀圖像質(zhì)量的 同時,保持配音特性(dubbing characteristic)。另外,在信號之前被編碼 的情況下,使用用于預(yù)測圖像的輸入圖像來改善返回搜索的檢測效率???以通過確定從分布狀態(tài)和量子化矩陣Q Matrix確定的畫面(片段)的平均 量子化參數(shù)QP來減少返回搜索部的計算。
已經(jīng)給出了本發(fā)明的實施例的描述。然而,本發(fā)明不限于此。本領(lǐng)域 技術(shù)人員可以在不脫離本發(fā)明的精神的條件下,進行各種修改和改變。
例如,計算機可以通過程序執(zhí)行上述圖像編碼設(shè)備和方法的功能,或 者可以實現(xiàn)作為記錄這些程序的記錄介質(zhì)的功能。
本發(fā)明包含2007年9月12日在日本專利局遞交的日本專利申請JP 2007-236946有關(guān)的主題,其全部內(nèi)容結(jié)合于此作為參考。
權(quán)利要求
1. 一種用于對圖像數(shù)據(jù)進行編碼的圖像編碼設(shè)備,包括第一編碼裝置,用于通過對圖像數(shù)據(jù)進行編碼來預(yù)測將用于計算所述圖像數(shù)據(jù)的目標代碼量的量子化參數(shù)和量子化矩陣;第二編碼裝置,用于根據(jù)通過使用所述第一編碼裝置預(yù)測出的所述量子化參數(shù)和所述量子化矩陣進行編碼而產(chǎn)生的所生成代碼的量和所述目標代碼量之間的誤差,對所述第一編碼裝置預(yù)測出的所述量子化參數(shù)進行校正;以及第三編碼裝置,用于使用經(jīng)過所述第二編碼裝置校正的量子化參數(shù)對所述圖像數(shù)據(jù)進行編碼。
2. 根據(jù)權(quán)利要求1所述的圖像編碼設(shè)備,其中,所述第一編碼裝置包括計數(shù)裝置,用于根據(jù)所述量子化參數(shù)中的最小值處的出現(xiàn)次數(shù)來對每個量子化參數(shù)處的出現(xiàn)次數(shù)進行計數(shù);以及計算裝置,用于根據(jù)所述計數(shù)裝置計算出的出現(xiàn)次數(shù)來計算每個量子 化參數(shù)處的熵。
3. 根據(jù)權(quán)利要求2所述的圖像編碼設(shè)備,其中,所述第一編碼裝置基于根據(jù)所述計算裝置計算出的熵而對每個 量子化參數(shù)預(yù)測出的所生成代碼的預(yù)測量,獲取用于計算所述目標代碼量 的所述量子化參數(shù)。
4. 根據(jù)權(quán)利要求2所述的圖像編碼設(shè)備,其中,所述計數(shù)裝置對DCT變換塊的每個位置的每個量子化參數(shù)處 的出現(xiàn)次數(shù)進行計數(shù)。
5. 根據(jù)權(quán)利要求2所述的圖像編碼設(shè)備,還包括活動性計算裝置,用于根據(jù)所述圖像數(shù)據(jù)計算活動性;以及分組裝置,用于根據(jù)所述活動性計算裝置計算出的活動性,將宏塊分組,其中,對于所述分組裝置分出的每個組,每個量子化參數(shù)處的出現(xiàn)次數(shù)被計數(shù)。
6. 根據(jù)權(quán)利要求1所述的圖像編碼設(shè)備,其中,當所述第一編碼裝置預(yù)測出的所述量子化矩陣不平坦時,所述 第一編碼裝置計算用于所述量子化矩陣的使用時的量子化參數(shù)。
7. —種用于對圖像進行編碼的方法,包括以下步驟第一編碼,用于通過對圖像數(shù)據(jù)進行編碼,預(yù)測將用于計算所述圖像數(shù)據(jù)的目標代碼量的量子化參數(shù)和量子化矩陣;第二編碼,用于根據(jù)通過使用所述第一編碼步驟預(yù)測出的所述量子化 參數(shù)和所述量子化矩陣進行編碼而產(chǎn)生的所生成代碼的量和所述目標代碼 量之間的誤差,對所述第一編碼步驟預(yù)測出的所述量子化參數(shù)進行校正; 以及第三編碼,用于使用經(jīng)過所述第二編碼步驟校正的量子化參數(shù)來對所 述圖像數(shù)據(jù)進行編碼。
8. —種用于對圖像數(shù)據(jù)進行編碼的圖像編碼設(shè)備,包括 第一編碼機構(gòu),通過對圖像數(shù)據(jù)進行編碼來預(yù)測將用于計算所述圖像數(shù)據(jù)的目標代碼量的量子化參數(shù)和量子化矩陣;第二編碼機構(gòu),根據(jù)通過使用所述第一編碼機構(gòu)預(yù)測出的所述量子化 參數(shù)和所述量子化矩陣進行編碼而產(chǎn)生的所生成代碼的量與所述目標代碼 量之間的誤差,對所述第一編碼機構(gòu)預(yù)測出的所述量子化參數(shù)進行校正; 以及第三編碼機構(gòu),使用經(jīng)過所述第二編碼機構(gòu)校正的量子化參數(shù)來對所 述圖像數(shù)據(jù)進行編碼。
全文摘要
一種用于對圖像數(shù)據(jù)進行編碼的圖像編碼設(shè)備和圖像編碼方法。該圖像編碼設(shè)備包括第一編碼機構(gòu),用于通過對圖像數(shù)據(jù)進行編碼來預(yù)測將用于計算圖像數(shù)據(jù)的目標代碼量的量子化參數(shù)和量子化矩陣;第二編碼機構(gòu),用于根據(jù)通過使用第一編碼機構(gòu)預(yù)測出的量子化參數(shù)和量子化矩陣進行編碼產(chǎn)生的所生成代碼的量與目標代碼量之間的誤差,對第一編碼機構(gòu)預(yù)測出的量子化參數(shù)進行校正;以及第三編碼機構(gòu),用于使用經(jīng)過第二編碼機構(gòu)校正的量子化參數(shù)對圖像數(shù)據(jù)進行編碼。
文檔編號H04N5/926GK101389026SQ20081021208
公開日2009年3月18日 申請日期2008年9月12日 優(yōu)先權(quán)日2007年9月12日
發(fā)明者柴田正二郎, 渕江孝明 申請人:索尼株式會社