用于增強層視頻編碼的適應性量化的制作方法
【專利摘要】呈現了用于使用在空間上和/或在色通道之間變化的量化來編碼增強層視頻的技術和工具以及相應的解碼技術和工具。例如,編碼工具確定量化是否在圖片上在空間上變化,并且該工具也確定量化是否在該圖片中在色通道之間變化。該工具以經編碼的比特流的形式發信號表示用于該圖片中的宏塊的量化參數。在某些實現中,為了發信號表示該量化參數,工具預測該量化參數,并且參考預測的量化參數來發信號表示該量化參數。解碼工具接收經編碼的比特流,預測該量化參數,并且使用用信號表示的信息來確定用于該增強層視頻的宏塊的量化參數。該解碼工具執行可以在空間上和/或在色通道之間變化的反量化。
【專利說明】用于增強層視頻編碼的適應性量化
[0001]本發明專利申請是國際申請號為PCT/US2009/045659,國際申請日為2009年05月29日,進入中國國家階段的申請號為200980121348.3,名稱為“用于增強層視頻編碼的適應性量化”的發明專利申請的分案申請。
[0002]概述
[0003]工程師使用壓縮(也稱為譯碼或編碼)來減少數字視頻的比特率。壓縮通過將視頻轉變為較低的比特率形式來減少存儲和發送視頻的成本。解壓縮(也稱為解碼)從壓縮形式重構原始視頻的版本。“編解碼器(codec)”是編碼器/解碼器系統。
[0004]一般而言,通過量化來實現從壓縮得到大量比特率的減少。根據可能的定義,量化是通常用于有損壓縮的逼近不可逆映射函數的術語,其中有一組指定的可能輸出值,并且該組可能的輸出值中的每一成員具有導致對該特定輸出值的選擇的一組相關聯的輸入值。已經開發了各種量化技術,包括標量或矢量、均勻或非均勻、有或沒有死區以及自適應或非自適應量化。
[0005]在許多實現中,編碼器執行本質上是按照量化因子對原始數據值的加偏除法的量化。一個或多個量化參數(QP)指示用于數據值的反量化的量化因子。對于通常被實現為乘法操作的反量化,編碼器和解碼器使用QP指示的量化因子來重構數據值的版本。量化通常將保真度的損失引入到原始數據值,這在解碼結果中可以示為壓縮錯誤或失真。
[0006]大多數可縮放視頻編解碼器將視頻分成基層和增強層。基層以較低的質量水平和/或較低的分辨率單獨提供視頻的重構,而可以添加增強層以提供將提高視頻質量的額外信息。當今的許多單層數字視頻編碼標準允許QP在基層中在空間上改變。該特征使得編碼能夠適用于宏塊特性,并由此就給定的速率實現更好的知覺質量。
[0007]雖然上述技術在某些視頻編碼的實例中提供了可接受的性能,但是它們中沒有一個提供以下所述的技術和工具的優點和益處。
[0008]概述
[0009]在概述中,詳細描述提出用于使用空間可變量化對增強層視頻進行可縮放編碼和解碼的技術和工具。量化可以是對于增強層視頻的整個圖片是可變的,或者可以單獨地對于圖片的增強層視頻中的每個色通道是可變的。當通用視頻編碼器對視頻圖片的增強層編碼時,該技術和工具改進其性能。
[0010]在一些實施例中,諸如編碼器的工具為按照多色通道(例如一亮度(“Y”)通道和兩個色度(“U”和“V”)通道)組織的圖片編碼增強層視頻。工具在幀上選擇性地在空間上改變量化,并且在某些情況下,工具選擇性地在空間上改變量化并且也在圖片的增強層視頻的多個色通道之間改變量化。工具以比特流的形式輸出圖片的經編碼的增強層視頻,發信號表示QP信息。QP信息指示QP至少部分參數化圖片的增強層視頻的經改變的量化。
[0011]對于相應的解碼,諸如解碼器的工具為按照多色通道組織的圖片解碼增強層視頻。工具以比特流的形式接收圖片的經編碼的增強層視頻,接收指示QP至少部分地參數化圖片的增強層視頻的經改變的量化的QP信息。在反量化期間,工具解決了在幀上空間上改變的量化以及圖片的增強層視頻的多個色通道之間的量化。[0012]在其他實施例中,諸如視頻解碼器的工具從比特流接收圖片視頻的經編碼的信息。經編碼的信息包括圖片視頻的當前單元的QP選擇信息。當工具解碼當前單元時,工具使用圖片視頻在空間上相鄰的單元的一個或多個QP預測當前單元的QP。工具接著使用QP選擇信息在預測的QP和另一 QP之間選擇,并在當前單元的重構中使用所選的QP。在某些實現中,工具為每個色通道的預測的QP解碼不同的信息。
[0013]對于相應的編碼,諸如編碼器的工具從比特流發信號表示圖片視頻的經編碼的信息。經編碼的信息包括圖片視頻的當前單元的QP選擇信息。當工具編碼當前單元時,在確定了當前單元的QP之后,工具編碼QP選擇信息。工具使用圖片視頻的空間上相鄰的單元的一個或多個QP來預測當前單元的QP。如果所預測的QP是當前單元的實際QP,那么QP選擇信息就如此指示。否則,QP選擇信息為當前單元指示另一 QP。
[0014]上述和其他目的、特征以及優點在參考附圖繼續閱讀以下詳細描述后將變得顯而易見。提供本概述是為了以簡化的形式介紹將在以下詳細描述中進一步描述的一些概念。本概述并不旨在標識出所要求保護的主題的關鍵特征或必要特征;也不旨在用于確定或限制所要求保護的主題的范圍。
[0015]附圖簡述
[0016]圖1是其中可以實現所描述的若干實施例的合適的計算環境的框圖。
[0017]圖2是用于編碼用空間上和/或跨圖片的色通道改變的一個或多個QP量化的增強層視頻圖片的示例性編碼系統的框圖。
[0018]圖3是用于解碼用空間上和/或跨圖片的色通道改變的一個或多個QP量化的增強層視頻圖片的示例性解碼系統的框圖。
[0019]圖4是用于編碼用空間上和/或跨圖片的色通道改變的一個或多個QP量化的增強層視頻的通用技術的流程圖。
[0020]圖5是示出確定和發信號表示用于編碼用空間上和/或跨圖片的色通道改變的一個或多個QP量化的增強層視頻的示例性技術的流程圖。
[0021]圖6A和6B是示出發信號表示用于圖片的增強層視頻的宏塊的QP的示例性技術的流程圖,其中QP在空間上和/或跨色通道改變。
[0022]圖7是用于解碼用空間上和/或跨圖片的色通道改變的一個或多個QP量化的增強層視頻的通用技術的流程圖。
[0023]圖8是使用空間預測來編碼和發送信號表示用于視頻單元的QP的通用技術的流程圖。
[0024]圖9是使用空間預測來編碼和發送信號表示用于宏塊的QP的通用技術的流程圖。
[0025]圖10是使用空間預測來解碼用于視頻單元的QP的通用技術的流程圖。
[0026]圖11是示出用于發送信號表示/接收指示第一和第二示例性組合實現中的幀QP和通道QP的信息的比特流句法的偽代碼列表。
[0027]圖12是示出第一和第二示例性組合實現中的示例性QP預測的偽代碼列表。
[0028]圖13是示出用于發送信號表示/接收指示用于第一和第二示例性組合實現中的宏塊級差異QP信息的比特數的信息的比特流句法的偽代碼列表。
[0029]圖14是示出用于發送信號表示/接收第一示例性組合實現中的QP選擇信息的比特流句法的偽代碼列表。[0030]圖15是示出用于發送信號表示/接收指示在第二示例性組合實現中如何填充QP值的表格的信息的比特流句法的偽代碼列表。
[0031]圖16是示出用于發送信號表示/接收第二示例性組合實現中的QP選擇信息的比特流句法的偽代碼列表。
[0032]圖17A-F是在第二示例性組合實現中用于QP選擇信息的VLC表格。
[0033]詳細描述
[0034]本文中描述了用于在空間上和逐個色通道的適應性量化的技術和工具。取決于實現,增強層視頻的空間上和跨色通道的適應性量化可以有助于在若干個方面改進可縮放視頻編碼性能,尤其是對于高比特深度視頻的高保真編碼。
[0035]許多基層視頻編碼器在空間上適應性量化。當增強層視頻表示經重構的基層視頻和原始視頻之間的質量差異時,增強層中信號的能量可以大致地與基層中適應性量化的強度成比例地變化。增強層視頻在空間上的適應性量化有助于改進增強層視頻的編碼性能。
[0036]增強層視頻在空間上的適應性量化可具有其他的優點。在某些可縮放視頻編碼/解碼系統中,從基層視頻預測增強層視頻的某些區域,而例如使用運動補償從先前重構的增強層視頻預測增強層視頻的其他區域。在增強層視頻的不同區域中使用不同水平的量化可以通過允許編碼器適應于不同區域的特性來改進性能。
[0037]在增強層視頻的色通道之間的適應性量化也可以改進性能。不同的視頻格可以使用不同色空間中的采樣,諸如RGB、YUV和YCbCr。對于YUV和YCbCr,Y表示視頻的視覺亮度(光亮度)通道,而U和V或Cb和Cr表示視頻的彩色(色度)通道。一般而言,人眼通常對于亮度的變化比色彩的變化更加敏感,因此,開發了編碼器以通過降低色度通道相對于亮度通道的分辨率來利用該事實。在YUV色彩空間中,一個色度采樣率是4:4:4,這表示對于每個亮度樣本,存在對應的一 U樣本和一 V樣本。另一色度米樣率是4:2:2,這表不單個U樣本和單個V樣本對應于兩個水平的亮度樣本。與諸如4:4:4的較高分辨率的色度采樣率相比,諸如4:2:2或4:2:0的較低分辨率的色度采樣率導致更少的色度樣本并且通常需要編碼較少的比特。除了由于色度采樣在不同的通道中不同的分辨率之外,視頻中的每個色通道可以被量化為基層視頻中不同水平的保真度。
[0038]某些可縮放視頻編碼器以較低的色度采樣率(例如4:2:0)和/或保真度來編碼基層視頻,而以較高的色度采樣率(例如4:2:2或4:4:4)編碼增強層視頻。增強層視頻的色通道由此可以具有與亮度通道不同的信號能量。在增強層視頻的不同通道中使用不同水平的量化可通過允許編碼器適應于通道的特性來改進性能。
[0039]在一些實現中,部分或全部增強層視頻可以被重新映射到較低的色度分辨率,以便使用基層視頻編碼器/解碼器進行編碼/解碼。通道之間的適應性量化也可以對這種情況有所幫助。例如,如果基層視頻是增強層視頻的聲調映射版本,那么與色度通道相比,為亮度通道使用不同的QP可以改進性能。
[0040]本文也描述了用于高效地編碼和發信號表示QP值的技術和工具。例如,編碼和發信號表示用于增強層視頻的QP值的一種方法包括使用QP預測來充分利用QP值中單元間的空間冗余。在許多情況下,這有助于降低發信號表示用于圖片的單元或圖片的色通道的QP的成本,其中單元是塊、宏塊、段或某些其他類型的單元。空間QP預測可以結合發信號表示量化是否在圖片上在空間上或跨圖片中的色通道變化的簡單機制來使用。[0041]本文中描述的某些技術和工具解決了背景中提到的一個或多個問題。通常,給定的技術/工具不能解決所有這樣的問題。相反,就編碼時間、編碼資源、解碼時間、解碼資源和/或質量的限制和折衷而言,給定的技術/工具改進了用于特定實現或情況的編碼和/或性能。
[0042]1.計算環塏
[0043]圖1示出了其中可實現所描述的若干實施例的合適計算環境(100)的一個通用示例。計算環境(100)并非旨在對使用范圍或功能提出任何限制,因為這些技術和工具可以在完全不同的通用或專用計算環境中實現。
[0044]參考圖1,計算環境(100)包括至少一個處理單元(110)和存儲器(120)。在圖1中,這一最基本配置(130 )包括在虛線內。處理單元(110)執行計算機可執行指令,且可以是真實或虛擬處理器。在多處理系統中,多個處理單元執行計算機可執行指令以提高處理能力。存儲器(120)可以是易失性存儲器(例如,寄存器、高速緩存、RAM)、非易失性存儲器(例如,R0M、EEPR0M、閃存等)或兩者的某一組合。存儲器(120)儲存用所描述的用于使用在空間上和/或跨圖片的色通道改變的QP的增強層視頻編碼和/或解碼的一個或多個技術或工具實現編碼器的軟件(180)。
[0045]計算環境可具有額外的特征。例如,計算環境(100)包括存儲(140)、一個或多個輸入設備(150)、一個或多個輸出設備(160)以及一個或多個通信連接(170)。諸如總線、控制器或網絡等互連機制(未示出)將計算環境(100)的組件互連。通常,操作系統軟件(未示出)為在計算環境(100)中執行的其它軟件提供了操作環境,并協調計算環境(100)的組件的活動。
[0046]存儲(140)可以是可移動或不可移動的,且包括磁盤、磁帶或磁帶盒、⑶-ROM、DVD或可用于儲存信息并可在計算環境(100)內訪問的任何其它介質。存儲(140)儲存用于實現視頻編碼器的軟件(180)的指令。
[0047]輸入設備(150)可以是諸如鍵盤、鼠標、筆或跟蹤球等觸摸輸入設備、語音輸入設備、掃描設備或可向計算環境(100)提供輸入的另一設備。對于音頻或視頻編碼,輸入設備
(150)可以是聲卡、顯卡、TV調諧卡、或接受模擬或數字形式的音頻或視頻輸入的類似的設備、或將音頻或視頻樣值讀入計算環境(100)的CD-ROM或CD-RW。輸出設備(160)可以是顯示器、打印機、揚聲器、CD刻錄機、或從計算環境(100)提供輸出的另一設備。
[0048]通信連接(170)允許通過通信介質到另一計算實體的通信。通信介質傳達諸如已調制數據信號形式的計算機可執行指令、音頻或視頻輸入或輸出、或其它數據等信息。已調制數據信號是其一個或多個特征以在信號中編碼信息的方式設置或改變的信號。作為示例而非局限,通信介質包括以電、光、RF、紅外、聲學或其它載波實現的有線或無線技術。
[0049]各種技術和工具可以在計算機可讀介質的一般上下文中描述。計算機可讀介質可以是可在計算環境內訪問的任何可用介質。作為示例而非局限,對于計算環境(100),計算機可讀介質包括存儲器(120)、存儲(140)、通信介質以及上述任一個的組合。
[0050]該技術和工具可在諸如程序模塊中所包括的在目標真實或虛擬處理器上的計算環境中執行的計算機可執行指令的一般上下文中描述。一般而言,程序模塊包括執行特定任務或實現特定抽象數據類型的例程、程序、庫、對象、類、組件、數據結構等。程序模塊的功能可以如各實施例中所需的組合或在程序模塊之間分離。用于程序模塊的計算機可執行指令可以在本地或分布式計算環境中執行。
[0051]為了呈現,詳細描述使用了如“生產”和“編碼”等術語來描述計算環境中的計算機操作。這些術語是由計算機執行的操作的高級抽象,且不應與人類所執行的動作混淆。對應于這些術語的實際的計算機操作取決于實現而不同。
[0052]I1.示例件編碼工具
[0053]圖2是用于將輸入視頻編碼為基層和增強層的編碼工具(200)的框圖,結合所述編碼工具可實現某些所述實施例。對于基層,基層比特流(248 )的格式可以是Windows媒體視頻或 VC-1 格式、]\0^6-1格式(例如,]\0^6-1、]\0^6-2或10^6-4)、!1.26x 格式(例如,H.261、H.262、H.263或H.264)或其它格式。
[0054]工具(200)處理視頻圖片。術語“圖片” 一般指的是源、經編碼的或經重構的圖像數據。對于逐行視頻,圖片是逐行視頻幀。對于隔行視頻,圖片可以指的是隔行視頻幀、幀的上半幀、或幀的下半幀,取決于上下文。通用術語“圖片”會用于表示這些各個選項。
[0055]編碼工具包括接受輸入視頻圖片(202)和輸出基層視頻到基層編碼器(220)的第一縮放器(204)。第一縮放器(204)可以下采樣或用其他方式縮放輸入視頻圖片(202)以例如降低采樣深度、空間分辨率或色度采樣分辨率。或者,在某些實例中,第一縮放器上采樣輸入視頻圖片(202 )或者根本不改變輸入視頻圖片(202 )。
[0056]基層編碼器(220)編碼基層視頻并輸出基層比特流(248),并且另外使得輸入到反縮放器(252)的經重構基層視頻可用。如果由于縮放經重構基層視頻與輸入視頻圖片(202)具有不同的比特深度、空間分辨率、色度采樣率等,那么反縮放器(252)可以上采樣(或用其他方式反縮放)經重構的基層視 頻,使得它與輸入視頻圖片(202)具有相同的分辨率。
[0057]將輸入視頻圖片(202)與經重構基層視頻比較以產生輸入到第二縮放器(254)的增強層視頻。第二縮放器(254)可以是或可以不是與第一縮放器(204)相同的物理組件或軟件程序。第二縮放器(254)輸出增強層視頻(256)到增強層編碼器(240)。
[0058]增強層編碼器(240)壓縮增強層視頻的幀間編碼預測的“圖片”(256)和增強層視頻的幀內編碼的“圖片”(256)。增強層視頻中給定時間處的“圖片”表示輸入視頻圖片和經重構的基層視頻圖片之間的差異,但是仍被示例性編碼器(240)編碼為圖片。為了呈現起見,圖3示出了用于通過增強層編碼器(240)的幀內編碼內容的路徑以及用于幀間編碼的預測內容的路徑。增強層編碼器(240)的許多組件被用于壓縮幀內編碼內容和幀間編碼預測內容兩者。由這些組件執行的實際操作可以根據所壓縮的信息的類型而不同。雖然圖2示出了單個增強層編碼器(240),但是增強層視頻(256)本身可以分成多個層的殘差視頻以便用分開的殘差編碼器編碼。一般而言,所編碼的增強層視頻(256)表示經重構的基層視頻和輸入視頻之間的差異(但不必是所有差異)。
[0059]一般而言,在編碼器(240)內,幀間編碼的預測內容(為圖片)是按照從先前經重構的內容(為一個或多個其他圖片,它們通常被稱為基準圖片或錨)的預測來表示的。例如,在給定時間的內容被編碼為逐行P幀或B幀、隔行P半幀或B半幀或隔行P幀或B幀。在編碼器(240)內,預測殘差是預測信息和相應的原始增強層視頻之間的差異。
[0060]如果增強層視頻(256)的內容被編碼為預測圖片,那么運動估計器(258)關于表示先前重構的增強層視頻內容的一個或多個基準圖片估計增強層視頻圖片的宏塊或其他樣本集的運動。圖片存儲(264)將經重構的增強層視頻(266)緩沖為基準圖片。當使用多個基準圖片時,多個基準圖片可以來自不同的時間方向或來自相同的時間方向。運動估計器(258 )輸出諸如運動矢量信息的運動信息(260 )。
[0061]在運動補償器(262)形成經運動補償的當前圖片(268)時,它將運動矢量應用到經重構的增強層視頻內容(266)(被存儲為基準圖片)。在經運動補償的增強層視頻(268)的塊和原始增強層視頻(268)的相應的塊之間的差異(如果有任何的差異話)是該塊的預測殘差(270)。在稍后的增強層視頻的重構期間,將經重構的預測殘差加到經運動補償的增強層視頻(268)中,以獲得更接近原始的增強層視頻(256)的經重構內容。然而,在有損壓縮中,某些信息仍從原始增強層視頻(256)中丟失。或者,運動估計器和運動補償器應用另一類型的運動估計/補償。
[0062]頻率變換器(280)將空間域視頻信息轉換成頻域(S卩,頻譜、變換)數據。對于基于塊的視頻圖片,頻率變換器(280)向樣本數據或預測殘差數據的塊應用DCT、DCT的變體或其它前向塊變換,從而產生頻率變換系數塊。或者,頻率變換器(280 )應用諸如傅立葉變換等另一常規頻率變換或使用小波或子帶分析。頻率變換器(280)可應用8X8、8X4、4X8、4X4或其它大小的頻率變換。
[0063]量化器(282)然后量化變換系數塊。量化器(282)向頻譜數據數據應用非均勻的標量量化,其步長在逐圖片的基礎、逐宏塊的基礎或其它基礎上在空間上變化。此外,在某些情況下,量化器跨增強層視頻圖片的色通道改變量化。量化器(282)也可以為至少某些空間數據系數應用另一類型的量化,例如均勻或適應性量化,或者在不使用頻率變換的編碼器系統中直接量化空間域數據。
[0064]當需要重構的增強層視頻圖片用于后續的運動估計/補償時,反量化器(290)在量化的頻譜數據系數上執行反量化。反頻率變換器(292)執行逆頻率變換,從而產生重構的預測殘差塊(對于預測的增強層視頻內容)或樣本(對于幀內編碼的殘差視頻內容)。如果增強層視頻(256)是運動補償預測的,則重構的預測殘差被加到經運動補償的預測器(268),以形成重構的增強層視頻。圖片存儲(264)緩沖重構的增強層視頻,以在后續的運動補償預測中使用。
[0065]熵編碼器(284)壓縮量化器(282)的輸出以及某些輔助信息(例如,量化參數值)。典型的熵編碼技術包括算術編碼、差分編碼、哈夫曼編碼、行程長度編碼、LZ編碼、字典式編碼以及上述的組合。熵編碼器(284)通常對不同種類的信息使用不同的編碼技術,并可從特定編碼技術內的多個代碼表中進行選擇。
[0066]控制器(未示出)接收來自諸如運動估計器(258)、頻率變換器(280)、量化器(282)、反量化器(290)和熵編碼器(284)等各個模塊的輸入。控制器評估編碼期間的中間結果,例如設置量化步長和執行速率-失真分析。控制器與諸如運動估計器(258)、頻率變換器(280)、量化器(282)和熵編碼器(284)—起工作以設置并改變編碼期間的編碼參數。當編碼器評估編碼期間的不同編碼參數選擇時,編碼器可迭代地執行某些級(例如,量化和反量化)以評估不同的參數設置。編碼器可以在前進到下一級之前設置一個級處的參數。或者,編碼器可以對不同的編碼參數進行聯合評估。要評估的編碼參數決策樹以及相應編碼的定時取決于實現。在某些實施例中,控制器也可以從編碼會話向導接口、從另一編碼器應用程序接口或從另一源接收輸入,以指示視頻具有要實用特定的規則編碼的特定內容。[0067]以上描述明確地解決增強層視頻的運動補償。編碼器(240)另外地執行增強層視頻的幀內壓縮。在該實例中,縮放器(254)將增強層視頻(256)提供給編碼器(240),而編碼器將它幀內壓縮為經幀內編碼圖片,而沒有運動補償。相反,將增強層視頻(256)直接提供給頻率變換器(280)、量化器(282)、和熵編碼器(284),并且輸出為經編碼的視頻。可以緩沖幀內編碼的增強層視頻的經重構版本,以用于其他增強層視頻的后續運動補償。
[0068]編碼器(240)內的模塊之間所示的關系指示了編碼器中的一般信息流;為簡明起見,未示出其它關系。具體地,圖2 —般不示出指示用于視頻序列、圖片、宏塊、塊等的模式、表等輔助信息。這樣的輔助信息一旦被最終化,通常在該輔助信息的熵編碼之后在輸出比特流中發送。
[0069]視頻編碼器的具體實施例通常使用增強層編碼器(240)的變體或補充版本。取決于所需的實現和壓縮類型,編碼器的模塊可被添加、省略、分成多個模塊、與其它模塊組合、和/或用相似的模塊來替代。例如,控制器可被拆分成與編碼器的不同模塊相關聯的多個控制器模塊。在替換實施例中,具有不同模塊和/或其它模塊配置的編碼器執行一個或多個所描述的技術。
[0070]II1.示例件解碼工具
[0071]圖3是解碼系統(300)的框圖,所述解碼系統(300)包括示例性增強層解碼器(340),結合該系統可實現所述的某些實施例。系統(300)包括接收基層比特流(302)和輸出經重構的基層視頻到第一反縮放器(352)的基層解碼器(320)。基層比特流(302)可以是 Windows 媒體視頻或 VC-1 格式、MPEG-χ 格式(例如,MPEG-U MPEG-2 或 MPEG-4)、H.26x格式(例如,H.261、H.262、H.263或H.264)或其它格式的比特流。在某些實施例中,使用運動補償編碼基層比特流(302 ),并由此基層解碼器(320 )包括運動補償循環。第一反縮放器(352)可用于上采樣或用其它方式反縮放經重構的基層視頻到所需的比特深度、空間分辨率、色度采樣率和/或所輸出的經重構視頻圖片(398)的其他分辨率。
[0072]系統還包括用于接收增強層比特流(304)的增強層解碼器(340)。增強層比特流(340)可以與基層比特流(302)是相同格式的,或者它可以是不同格式的。熵解碼器(384)可用于解碼用包括算術編碼、差分編碼、哈夫曼編碼、行程長度編碼、LZ編碼、字典式編碼以及上述的組合的熵編碼方法編碼的比特流的元素。熵解碼器(384)通常對不同種類的信息使用不同的解碼技術,并可從特定解碼技術內的多個代碼表中進行選擇。熵解碼器(384)將諸如運動矢量信息(360)的輔助信息輸出到運動補償器(362)。
[0073]反量化器(390 )將反量化到熵解碼器(384 )的某些輸出上。在某些實施例中,反量化器(390)可用于反轉非均勻的標量量化,其步長在逐圖片的基礎、逐宏塊的基礎、逐色通道的基礎或其它基礎上變化。更一般地,反量化器(390)可用于在反轉編碼期間所應用的量化。
[0074]反頻率變換器(392)接受反量化器(390)的輸出。反頻率變換器(392)可用通過對反量化器(390)的輸出應用反DCT、反DCT的變體或其它反塊變換,從而產生空間域值的塊。反頻率變換器(392)可用于反轉8X8、8X4、4X8、4X4或其它大小的頻率變換。反頻率變換器(392)為預測殘差(在幀間編碼的增強層視頻內容的情況下)或樣本(在幀內增強層視頻內容的情況下)輸出經重構的數據(370 )。
[0075]從熵解碼器(384)輸出的運動矢量信息(360)被輸入到運動補償器(362)。運動補償器(362)將運動矢量信息應用到緩沖在圖片存儲(364)中的先前重構的增強層視頻上并且輸出運動補償預測的增強層視頻(368)。
[0076]在幀間編碼的增強層視頻的解碼中,將運動補償預測的增強層視頻(368)與預測殘差(370)組合以形成經重構的增強層視頻(366)。經重構的增強層視頻(366)由圖片存儲(364)緩沖(以用于后續的運動補償)并且從增強層解碼器(340)輸出到第二反縮放器(354)。
[0077]增強層解碼器(340)可用于解碼8比特視頻、10比特視頻或具有某個其他比特深度的視頻。如果增強層解碼器(340)解碼8比特視頻并且要重構具有較高比特深度(例如10比特)的輸出視頻,那么第二反縮放器(354)上采樣經重構的增強層視頻(366)到較高的比特深度。或者,如果增強層解碼器(340)解碼16比特視頻并且要構建具有較低比特深度(例如8比特)的輸出視頻,那么第二反縮放器(354)下采樣經重構的增強層視頻(366)到較低的比特深度。解碼工具將來自第二反縮放器(354)的反縮放的、已重構的增強層視頻輸出與第一反縮放器(352)的反縮放的、已重構基層視頻輸出組合,以產生輸出視頻的經重構的視頻圖片(398)。
[0078]以上描述明確地針對幀間編碼的增強層視頻的解碼。使用幀內解碼的解碼器(340)也解碼經幀內編碼的增強層視頻。在該實例中,熵解碼器(384)、反量化器(390)和反頻率變換器(392)如先前所述地起作用,以生成增強層視頻的樣本,而繞過運動補償。經重構的增強層視頻(366)被緩充在圖片存儲(364)中,以用于將來的運動補償。
[0079]解碼器(340)內的模塊之間所示的關系指示了解碼器中的一般信息流;為簡明起見,未示出其它關系。具體地,圖3 —般不示出指示用于視頻序列、圖片、宏塊、塊等的模式、表等輔助信息。
[0080]視頻解碼器的具體實施例通常使用通用解碼器(340)的變體或補充版本。取決于所需的實現和壓縮類型,解碼器的模塊可被添加、省略、分成多個模塊、與其它模塊組合、和/或用相似的模塊來替代。在替換實施例中,具有不同模塊和/或其它模塊配置的解碼器執行一個或多個所描述的技術。
[0081]雖然圖3示出了單個增強層解碼器(340),但是增強層視頻本身可以被分成多個殘差視頻層以便用分開的殘差編碼器編碼并且發信號表示為多個增強層比特流。給定解碼系統包括用于解碼多個增強層比特流中的一個或多個的一個或多個獨立的殘差解碼器。一般而言,所解碼的增強層視頻表示經重構的基層視頻和原始輸入視頻之間的差異(但不必是所有差異)。
[0082]IV.在宇間h和跨通道改奪量化
[0083]依照第一組技術和工具,編碼器在空間上和/或跨圖片的色通道改變增強層視頻的量化。例如,編碼器為增強層視頻的多個單元(諸如宏塊)逐單元地改變量化,可能在單元的不同的色通道中使用不同的量化。編碼器發信號表示參數化可變量化的量化參數。相應的解碼器在空間上和/或跨圖片的色通道改變增強層視頻的反量化。
[0084]A.通用編碼摶術
[0085]圖4示出了用于使用在空間上在圖片上改變和/或跨圖片的色通道改變的量化來編碼增強層視頻的通用技術(400)流程圖。諸如參考圖2所述的編碼工具(200)執行技術(400),或者可以使用某些其他的工具。[0086]編碼工具確定(405)是否在空間上對增強層視頻圖片改變量化。這可以由用戶輸入或通過對圖片或圖片部分的分析來指示。例如,如果用戶期望壓縮中的高度的速率失真效率,那么用戶可以指示工具使用空間上不同的QP。或者,如果正在編碼的圖片具有閥值以上的高度復雜性或空間變化性,則在編碼圖片時,軟件中預設的閥值指示工具使用空間上變化的QP。
[0087]工具也確定(410)是否要改變增強層視頻圖片的多個色通道之間的量化。圖片可以是各種色彩格式(例如具有4:4:4、4:2:2或4:2:0的色度采樣率的YUV或YCbCr色彩空間)的圖片。如果它是YUV或YCbCr圖片,那么圖片具有一個亮度通道和兩個色通道。圖片的獨立的通道(也稱為色平面或組分)可以具有不同的空間分辨率。依照用戶指示、編碼器向導設置或通過分析圖片、圖片一部分和/或一個或多個色通道,工具可以跨不同的圖片色通道改變QP。
[0088]接著,工具使用確定的一個或多個QP編碼(420)增強層視頻圖片。工具確定圖片的一個或多個QP。如果圖片的QP在圖片上在空間上無變化,那么僅對圖片使用單個QP。如果圖片的QP確實在空間上變化,那么為圖片中的每個單元(例如宏塊、塊)確定不同的QP。此外,如果QP跨圖片的色通道變化,那么工具為多個通道確定多個QP,并且可能為圖片中的每個單元確定不同的QP。例如,為圖片中的單元的亮度通道和每個色通道確定不同的QP。一般而言,編碼工具將QP應用到圖片中的每個單元上并且生成增強層比特流。
[0089]工具輸出(430)經編碼的增強層比特流,包括指示所使用的一個QP或多個QP的信息。通常,指示一個QP或多個QP的信息和圖片或單元的其他經參數化的信息一起散布在比特流中。例如,工具發信號表示增強層比特流中用于圖片中每個單元的一個或多個QP。發信號可以在比特流中按圖片級或單元級完成。在某些實現中,工具在圖片級發信號表示單個比特以指示QP是否在空間上變化,并且如果QP在空間上變化,那么工具發信號表示另一比特以指示QP是否跨圖片的色通道變化。如果QP在圖片上在空間上變化或跨圖片的色通道變化,那么工具在比特流的單元級發信號表示圖片中的每個單元的QP的值。在這種情況下,工具可以另外地在圖片級上發信號表示使用多少比特來在比特流的單元級上發信號表示每個單元的QP信息。或者,工具發信號表示包括不同可能的QP值的表格,并接著發信號表示比特流的單元級上的圖片中的每個單元從表中得到的選擇值。
[0090]工具為增強層視頻圖片執行技術(400)并且在逐圖片的基礎上重復技術(400)。或者,工具為一組圖片、片段或其他視頻部分執行技術,并且在該基礎上重復技術。
[0091]B.示例件編碼摶術
[0092]圖5示出了使用在空間上或跨個別幀的色通道變化的QP編碼增強層視頻的示例性技術(500)的流程圖。使用諸如參考圖2描述的編碼工具(200)來執行技術(500),或者可以使用某些其他工具。工具在逐幀的基礎上重復技術(500 )。
[0093]工具首先確定(505)QP對于幀是否在空間上變化。工具依照諸如所需的速率失真效率、壓縮速度、幀的復雜程度或其他標準的多個標準中的一個或多個分析幀以確定變化的幀是否是可接受的或合乎需要的。例如,用戶通過諸如編碼向導的用戶界面指示需要高度的速率失真效率。工具接著確定空間上可變的QP是實現所需程度的速率失真效率所必需的。或者,工具確定幀的復雜度在預定或用戶定義的閥值之上,并由此確定需要空間上可變的QP。[0094]如果工具確定空間上可變的QP是不需要的,那么工具依照諸如經壓縮文件的速率限制、感知質量和/或輸入視頻的復雜度的標準來確定(510)幀QP。工具發信號表示(515)增強層比特流中的幀QP。
[0095]如果工具確定QP確實在空間上變化,那么工具確定(520)QP是否跨幀的色通道變化。工具獨立地分析每個色通道或者與其他色通道一起分析每個色通道,以便依照諸如所需的速率失真效率、壓縮速度、幀的復雜程度、幀中每個通道的復雜度、通道內和不同通道之間的變化量或其他標準的多個標準中的一個或多個來確定變化的QP對于每個色通道是否是可接受的或是合乎需要的。
[0096]如果工具確定QP不跨色通道變化,那么工具確定(525)要在幀內使用的QP。例如,工具依照諸如關于相應的宏塊的速率限制、感知質量和/或視頻的復雜度的標準確定用于幀中的宏塊的QP。
[0097]在工具確定了(525)幀內的QP之后,工具發信號表示(530)幀QP。一般而言,幀QP是編碼幀中的每個宏塊時使用的“默認”QP。在一個示例中,幀QP是幀中宏塊的QP的平均。或者,工具將幀QP確定為幀中最常見的QP以降低用于發信號表示用于宏塊的QP的比特成本。例如,工具發信號表示QP在空間上變化,QP不跨通道變化以及使用X比特來發信號表7]^巾貞QP7并接著發信號表不巾貞QP本身的值。或者,工具可以發信號表7]^巾貞QP是給定表(例如,用于序列的QP表)中的多個條目之一,或者工具可以以某些其他的方式發信號表示幀QPo
[0098]工具接著發信號表示(535)用于幀中的宏塊的QP。在一個實施例中,這包括相對于預測的QP發信號表示用于每個宏塊的QP,所述預測的QP可以是幀QP或基于在幀中空間上相鄰的一個或多個其他宏塊的QP預測的QP。在另一實施例中,這包括將用于每個宏塊的QP發信號表不為表中多個值之一。
[0099]如果工具確定Q P在空間和色通道兩者上都變化,那么工具確定(540)要在幀的第一色通道中使用的QP。例如,工具繼續到依照諸如關于相應的宏塊的速率限制、感知質量和/或視頻的復雜度的標準確定用于Y色通道中的宏塊的QP。
[0100]在工具確定了(540)用于通道中的宏塊的QP之后,工具發信號表不(545)用于通道的幀QP。一般而言,用于通道的幀QP是在編碼通道中的每個宏塊時使用的“默認”QP。在一個示例中,工具通過對通道中的每個宏塊的QP求平均來確定用于通道的幀QP。在另一示例中,工具選擇用于通道的幀QP作為通道中最常用的QP。在一個實施例中,發信號表示用于通道的幀QP包括發信號表示QP在空間和幀中的不同色通道兩者上變化,并接著發信號表示用于通道本身的幀QP。或者,用于通道的幀QP可以用信號表示為QP表(例如用于序列的QP表)中的若干個值之一。
[0101]在工具用信號表示了用于通道的幀QP之后,工具檢查(550)在幀中是否存在還未經分析的其他色通道,例如色度(u,v)通道。如果存在,那么工具為用于每一個其他通道的幀QP執行確定(540)步驟和發信號(545)步驟。或者,工具可以在為任一通道發信號步驟(545)之前為用于每個通道的幀QP執行確定步驟(540),或者可以以某個其他的順序執行步驟。
[0102]工具接著發信號表示(555 )用于每個通道的宏塊的QP。在一個實施例中,這包括相對于預測的QP發信號表示用于每個通道中的每個宏塊的QP。預測的QP可以是通道QP,或者預測的QP可以是基于色通道中一個或多個相鄰宏塊的QP的QP。在另一實施例中,工具將每個通道中每個宏塊的QP發信號表示為表中多個QP值之一。
[0103]在某些情況下,每個色通道可能不在空間上變化,且因此在諸如發信號步驟(545)或發信號步驟(555)處工具用跳過比特指示在編碼過程中的某個點上用于色通道中的宏塊的QP全部等于用于通道的幀QP。
[0104]C.用于每個色通道中的宏塊的QP發信號表示
[0105]圖6A是示出用于發信號表示(555)用于多個色通道的每一個中的宏塊的QP的一種方法的細節(600)的流程圖。
[0106]工具發信號表不(605)用于一個或多個通道內的QP變化的巾貞級信息。例如,工具在幀級發信號表示用于相對于每個通道的幀QP定義宏塊QP的比特數目。或者,工具發信號表示指示QP索引表的信息,并且使用用于不同QP的多個值來填充該表,所述QP可以包括通道QP。為每個色通道指示不同的表,或者兩個或多個色通道可以共享表。此外,一個或多個色通道在幀上可能不在空間上變化,因此可為該通道僅指示單個QP。
[0107]工具在逐宏塊的基礎上發信號表不(615)關于下一宏塊的QP的信息。在一個實施例中,工具發信號表示宏塊的實際QP是否與宏塊的預測的QP相同,后者可以是用于色通道的幀的QP或用于宏塊的QP的空間上的預測值。宏塊QP預測規則可以取決于實現而不同。如果實際的QP與預測的QP不同,那么工具接著發信號表示宏塊的QP和預測的QP之間的差異。或者,工具發信號表示宏塊的實際QP是否等于宏塊的預測的QP,后者再次可以是用于色通道的幀的QP或用于宏塊的空間上預測的QP值。如果宏塊QP不等于預測的QP,那么工具發信號表不宏塊的QP是QP索引表中的多個QP值之一。
[0108]在工具發信號表示給定色通道中的宏塊的QP的信息之后,工具檢查(620)是否存在具有空間上變化的QP的另一個色通道。如果存在一個或多個其QP還未用信號表示的其他色通道,那么工具為下一色通道中的宏塊執行發信號(615)步驟。如果不存在具有空間上變化的QP的另一色通道,那么工具檢查(625)在幀中是否存在另一宏塊。可以依照光柵掃描順序或某些其他的順序來檢查宏塊。如果在通道中存在其QP還未用信號表示的另一宏塊,那么工具為下一宏塊執行發信號(615)和檢查(620)步驟。如果在幀中不存在其他的宏塊,那么工具就完成了用信號表示用于幀的每個色通道中的宏塊的QP。
[0109]P.用于幀中的宏塊的QP信令
[0110]圖6b是不出用信號表不(535)巾貞中的宏塊的在空間上變化的QP的一種方法的細節(630)的流程圖。
[0111]作為第一步驟,工具發信號表示(635)用于在幀上的QP空間變化的幀級信息。例如,工具在幀級發信號表示用于相對于幀QP定義宏塊QP的比特數。或者,工具發信號表示指示QP索引表的信息,并且使用用于不同QP的多個值來填充該表。
[0112]工具在逐宏塊的基礎上發信號表不(645)關于下一宏塊的QP的信息。工具發信號表示宏塊的QP是否與宏塊的預測的QP相同,后者可以是幀的QP或用于宏塊的QP的空間上的預測值。宏塊QP預測規則可以取決于實現而不同。如果實際的QP與預測的QP不同,那么工具發信號表示宏塊的QP和預測的QP之間的差異。或者,如果宏塊QP不等于預測的QP,那么工具發信號表示宏塊的QP是QP索引表中的多個QP值之一。
[0113]在工具發信號表不關于用于巾貞的宏塊的QP的信息之后,工具檢查(650)在巾貞中是否存在另一宏塊。可以依照光柵掃描順序或某些其他的順序來檢查宏塊。如果在幀中存在另一宏塊,那么工具為下一宏塊執行發信號(645)步驟。如果在幀中不存在另一宏塊,那么工具就完成了。
[0114]E.通用解碼技術
[0115]圖7示出了用于使用在圖片上在空間上或跨圖片的色通道變化的反量化來解碼增強層視頻的一般方法(700)。將諸如參考圖3所述的解碼工具(300)用于執行技術(700)或可以使用某些其他工具。
[0116]解碼工具接收(710)比特流形式的經編碼的信息用于增強層視頻。經編碼的信息包括指示用于圖片的單元(例如宏塊、塊)或其通道的QP的信息。在某些實施例中,工具依照圖5、6A和6B中示出的技術用信號表示的信息,接收用信號表示的句法元素、評估句法元素并遵循有適當條件的比特流路徑,以確定在空間上和/或在圖片的通道之間變化的QP。或者,工具接收依照另一方法用信號表示的QP信息。
[0117]工具接著解碼(720)增強層視頻。這樣做,工具在空間上和/或在用于增強層視頻的單元的通道之間改變反量化(依照用信號表示的QP信息)。
[0118]工具為增強層視頻圖片執行技術(700)并且在逐圖片的基礎上重復技術。或者,工具為一組圖片、片段或其他視頻部分執行技術,并且在該基礎上重復技術。
[0119]V.暈化參數的預測編碼和解碼
[0120]依照第二組技術和工具,編碼器使用空間預測來預測性地編碼量化參數。相應的解碼器在解碼期間使用空間預測來預測量化參數。例如,編碼器和解碼器使用QP預測規則來預測宏塊的QP,而非考慮圖片或圖片的通道內空間上相鄰的宏塊的QP15QP的空間預測可用于編碼在空間上和通道之間都變化的QP,或者它可以用于編碼和解碼其他類型的QP。
[0121]A.通用編碼
[0122]圖8是用于使用空間預測來編碼和發信號表示QP的通用技術(800)的流程圖。諸如參考圖2所述的編碼工具(200)可用于執行方法(800),或者可以使用某些其他的工具。雖然參考整個圖片描述技術(800),但是可以單獨地將技術應用于圖片中的每個色通道。
[0123]工具獲得(805)用于圖片中下一單元的QP。單元可以是宏塊、塊或圖片的其他區域。由于技術(800)針對QP值的編碼和發信號表示,因此編碼器已確定了單元的QP和圖片的QP。
[0124]工具為單元確定(810)預測的QP。預測的QP的值取決于運作中的QP預測規則。雖然QP預測規則取決于實現,但是編碼器和解碼器使用相同的QP預測規則,不管它是什么。第一示例性預測規則將當前單元左側和當前單元之上的單元的QP作比較。如果兩個相鄰單元的QP相同,那么編碼器將該QP用作預測的QP。否則,編碼器將圖片QP用作當前單元的預測的QP。依照第二示例性預測規則,編碼器將用于左側、上側和右上側的鄰居的QP的中值QP用作預測的QP。或者,編碼器使用另一預測規則,例如,認為單個鄰居的QP是預測的QP。對于這些示例性規則中的任何一個,QP預測規則通過使將圖片QP或其他默認的QP用作當前單元的預測的QP,或通過用偽QP值來替代缺少的相鄰單元來解決其中一個或多個相鄰單元在圖片之外或沒有QP的情況。
[0125]工具參考預測的QP發信號表示(825)用于單元的QP。例如,工具發信號表示指示單元是否使用預測的QP的單個比特。如果否,那么工具也發信號表示指示用于單元的實際QP的信息。發信號表示實際的QP的一種方法是發信號表示用于單元的QP和預測的QP之間的差異。另一方法是發信號表示指示編碼器和解碼器兩者可用的QP表中備選QP的QP索引。或者,工具聯合發信號表示選擇信息,使用單個代碼以指示不使用預測的QP并且還指示要使用的實際QP,代替獨立于選擇細化信息發信號表示使用/不使用選擇決定。
[0126]工具接著檢查(830)以查看圖片(或通道)中是否存在其他帶有要編碼的QP的單元。如果存在其他單元,那么工具重復獲取(810)下一單元的QP的步驟,為該單元確定(810)預測的QP并且發信號表示(825)該單元的QP。
[0127]B.通用解碼
[0128]圖10是示出使用空間預測為視頻單元解碼QP的一般技術(1000)的流程圖。諸如參考圖3所述的解碼工具(300)或其他解碼工具的解碼工具執行技術(1000)。雖然參考整個圖片描述技術(1000),但是可以單獨地將技術應用于圖片中的每個色通道。
[0129]工具接收用于圖片中的下一單元(例如宏塊、塊)的QP選擇信息。一般地,選擇信息指示用于單元的QP是否是預測的QP或另一 QP,在后一情況下QP選擇信息也指示另一 QP是什么。例如,工具接收(作為QP選擇信息的一部分)指示單元是否使用預測的QP的單個比特。如果否,那么工具也接收(作為QP選擇信息的一部分)指示用于單元的實際QP的信息。在差分代碼方法中,工具接收指示用于單元的QP和預測的QP之間的差異的信息。在替換性QP選擇方法中,工具接收指示對編碼器和解碼器兩者可用的QP表中備選QP的QP索引。QP選擇信息可以包括獨立的判定標志和選擇代碼,或者它可以包括聯合表示信息的單個代碼。
[0130]工具預測(1010)單元的QP,并且預測的QP的值取決于運作中的QP預測規則。當在編碼期間使用參考圖8所述的任一示例性QP預測規則時,該規則也在解碼期間使用。即使未將預測的QP用作當前單元的實際QP,也將預測的QP用于確定實際的QP。或者,當QP選擇信息指示不使用預測的QP時,編碼器跳過預測的QP的確定,并且為當前單元解碼獨立地發信號表示的QP。
[0131]工具使用QP選擇信息在預測的QP和另一 QP之間作出選擇(1015)。例如,工具解釋指示單元是否使用預測的QP的QP選擇信息的一部分。如果否,那么工具也解釋指示用于單元的另一 QP的其它QP選擇信息。在差分編碼方法中,工具將差異值與預測的QP組合以確定另一 QP。在替換性QP選擇方法中,工具查找可用QP表中的QP索引以確定另一 QP。
[0132]工具接著檢查(1025)圖片(或通道)中是否存在帶有要重構的QP的其他單元。如果存在,那么工具重復接收用于下一單元的QP選擇信息的步驟,為該單元確定預測的QP并且為該單元選擇QP。
[0133]C.示例件預測規則
[0134]圖9是示出使用用于在編碼期間預測宏塊的QP的示例性預測規則的技術(900)的流程圖。諸如參考圖2所述的編碼工具在為幀或幀的通道中的宏塊(QP_MB)編碼和發信號表示QP時執行技術(900)。
[0135]工具首先檢查(905)與當前宏塊的左側直接相鄰的宏塊的QP (QP_LEFT)是否與當前宏塊的上方直接相鄰的宏塊的QP (QP_T0P)相同。QP_LEFT等于QP_T0P指示用于幀或色通道的該特定部分的QP的趨勢,這樣使得假設當前宏塊的QP即QP_MB最可能接近(如果不相等的話)QP.LEFT是合理的。由此,QP_PRED (預測)被設置為(910)等于QP_LEFT。如果QP_LEFT不等于QP_TOP,或者如果QP_LEFT或QP_TOP中任一個不可用,那么QP_PRED被設置為(915)等于QP_FRAME,后者是幀或色通道的默認QP。一般地,QP_FRAME等于用于該幀或色通道的QP的平均、幀或色通道中最常見的QP或期望降低與發信號表示用于宏塊的QP相關聯的比特率的某個其他的值。
[0136]在替換性QP預測規則中,取決于在編碼用于宏塊的QP時遵循的掃描順序,依照諸如QP_T0P和QP_B0TT0M (當前宏塊的下方直接相鄰的宏塊的QP)、QP_LEFT和QP_RIGHT (當前宏塊的右側直接相鄰的宏塊的QP)或幀或通道內的QP的某些其他的組合等不同宏塊的QP來預測的QP_PRED。或者,關于僅單個先前解碼的QP (諸如QP_LEFT)、三個先前解碼的QP或QP的某些其他的組合來預測的QP_PRED。在某些示例中,該工具執行多次檢查以確定QP_PRED。例如,如果QP_LEFT不等于QP_T0P_LEFT(左上方),那么工具檢查以確定QP_T0P_LEFT是否等于QP_T0P,并且如果是,那么設置QP_PRED等于QP_LEFT(假定QP值水平連續)。在還有一示例中,QP.PRED是基于其他色通道或其他幀中的先前重構的宏塊的QP的。
[0137]返回到圖9,工具接著檢查(920)QP_MB是否等于QP_PRED。在具有高度冗余的QP值的幀或色通道的區域中,QP_MB將最可能等于QP_PRED。在該實例中,工具發信號表示(930) QP_SKIP (跳過)是I。QP_SKIP是一比特指示符,當將其設置為I時指示當前宏塊使用QP_PRED且比特流不包括用于當前宏塊的其他QP選擇信息。
[0138]如果QP_MB不等于QP_PRED,那么工具發信號表示(925)QP_SKIP是O。將QP_SKIP設置為O指示在編碼和解碼期間QP_MB不等于QP_PRED,并且因此發信號表示(935)用于QP.MB的另一 QP。在差分編碼方法中,發信號將該另一 QP表示為相對于QP_PRED的差異值。在替換性QP選擇方法中,發信號將QP_MB表示為QP值的表中多個可用QP之一。或者,以某種其他方式發信號表示另一 QP。
[0139]P.跳討宏塊的處理
[0140]QP預測規則通過例如將圖片QP或其他默認QP分配給用于當前單元的預測的QP來解決相鄰QP的不可用性。在某些實現中,編碼器和解碼器通過將偽QP值緩沖到否則將缺少QP的單元中來降低不可用QP的頻率。例如,即使QP在幀或通道中在空間上變化,但是仍可以編碼和解碼某些宏塊而無需使用QP。對于跳過的宏塊或其所有塊都未被解碼的宏塊(依照用于宏塊的經編碼塊模式),比特流不包括變換系數數據并且不使用QP。相似地,當QP在空間上或在通道之間變化時,如果宏塊在第一通道有變換系數而在第二通道中沒有變換系數(例如由于第二通道中的塊的經編碼的塊狀態在經編碼的塊模式中為O),那么比特流在第二通道中不包括用于宏塊的QP信息。
[0141]因此,在某些實現中,如果對于特定的單元QP不可用,那么編碼器和解碼器推斷用于該單元的QP等于用于該單元的預測的QP,并且經推斷的值被用于后續的QP預測。例如,如果宏塊被跳過,那么宏塊的QP被設置為等于用于宏塊的預測的QP,并且將推斷的QP值與用于幀的其他實際的QP (以及可能推斷的QP值)一起緩沖。
[0142]V1.組合的實現
[0143]在第一和第二組合的實現中,編碼器和解碼器使用在空間上和/或在增強層視頻的通道之間變化的QP,并且編碼器和解碼器在編碼和解碼用于宏塊的QP值時使用空間預測。編碼器和解碼器在第一和第二組合的實現中使用相同的QP預測規則,盡管可以替代地使用其他QP預測規則。在第一組合的實現中,當沒有為宏塊使用預測的QP時,發信號表示相對于預測的QP不同的的用于宏塊的實際的QP。相反,在第二組合的實現中,當沒有為宏塊使用預測的QP時,將用于宏塊的實際QP發信號表示為對用于幀的可用QP表的替換性QP索引。
[0144]A.在第一和第二組合的實現中的一般發信號表示
[0145]在第一和第二組合的實現中,QP_FRAME_UNIFORM (幀_制服)是I比特幀級句法元素。它指示QP是否在幀上在空間上變化。如果QP_FRAME_UNIFORM等于0,那么QP在幀上在空間上變化。如果QP_FRAME_UNIFORM不等于0,那么QP在幀上在空間上無變化,并且編碼器和解碼器使用幀QP的簡單幀級信號表示。
[0146]相似地,QP_CHANNEL_UNIFORM (通道_制服)是指示QP是否跨幀的色通道變化的I比特幀級句法元素。如果QP_CHANNEL_UNIFORM等于0,那么QP (除了可能在每個通道內在空間上變化之外)在色通道上變化。如果QP_CHANNEL_UNIFORM不等于0,那么QP跨色通
道無變化。
[0147]圖11示出了在第一和第二示例性組合實現中用于接收指示幀QP和通道專用QP的信息的比特流句法和偽代碼。圖11到16示出了用于YUV色彩空間的色通道,但是偽代碼可以適用于RGB空間、YCbCr或某些其他的色彩空間。
[0148]如果QP_CHANNEL_UNIFORM不等于0,那么QP跨色通道無變化,且比特流包括信號表示QP_FRAME的N個比特。如果QP_CHANNEL_UNIFORM等于0,那么比特流包括用于QP_FRAME_Y的N個比特、用于QP_FRAME_U的N個比特以及用于QP_FRAME_V的N個比特。N的值可以被預定義、為序列設置或者甚至為幀設置。此外,盡管圖11示出了用于所有類型的QP的相同的N比特值,但是可以使用不同數目的比特來發信號表示QP_FRAME、QP_FRAME_Y、QP_FRAME_U 和 / 或 QP_FRAME_V。
[0149]圖11和13到16示出了用于接收比特流句法元素和確定宏塊的QP的編碼器端操作。相應的編碼器端的編碼和發信號操作反映出圖11和13到16中的操作。例如,編碼器確定差異QP值(或替換性QP索引)并發信號表示它,而非接收用于差異QP值(或替換性QP索引)的信息并對它解碼。
[0150]B.第一和第二組合實現中的空間預測規則
[0151]圖12示出了在第一和第二組合實現中編碼器和解碼器使用的示例性QP預測規貝U。QP預測規則一般對應于參考圖9的步驟(905、910和915)解釋的規則。對于當前的宏塊,如果左側相鄰的宏塊和上方相鄰的宏塊都可用并且這兩個相鄰的宏塊具有相等的QP,那么該QP被用作用于當前宏塊的預測的QP。然而,如果QP_T0P與QP_LEFT不同,或者如果任一鄰居不可用,那么工具將QP_FRAME(或用于Y、U或V通道的合適的通道專用QP_FRAME_值)用作用于當前宏塊的預測的QP。
[0152]或者,編碼器和解碼器使用不同的QP預測規則。例如,編碼器和解碼器將用于當前宏塊的預測的QP設置為來自左側、上方和右上方的鄰居的QP值的中值。或者,如果來自左上方和上方的鄰居的QP值相同(示出水平一致的趨勢),那么編碼器和解碼器將用于當前宏塊的預測的QP設置為QP_LEFT,如果來自左上方和左側的鄰居的QP值相同(示出垂直一致的趨勢),那么將用于當前宏塊的預測的QP設置為QP_T0P,而否則將用于當前宏塊的預測的QP設置為QP_FRAME。
[0153]C.在第一組合的實現中發信號表示QP差異[0154]在第一方案中,QP_MB與QP_PRED不同,比特流包括QP_MB相對于QP_PRED的差異值。一般地,依照編碼器和解碼器確定的慣例,發信號將差異表示為帶符號整數或不帶符號整數。
[0155]圖13示出了用于接收指示用于區別地用信號表示用于幀或通道的QP_MB的比特數的信息的比特流句法和偽代碼。圖13中示出的句法元素是在比特流的幀級用信號表示的。如果QP_FRAME_UNIF0RM==0,那么QP在增強層視頻的幀上在空間上變化,并由此QP_MB信息在宏塊級發信號表示。如果QP_FRAME_UNIFORM不等于0,那么在比特流的幀級發信號表示巾貞(或通道)的QP。
[0156]如果QP_CHANNEL_UNIFORM 不等于 0,那么工具解碼 NUM_BITS_QP_MB (3 比特)。NUM_BITS_QP_MB (3比特)是指示用于發信號表示用于幀中的宏塊的QP_MB差異的比特數的3比特值。這產生用于差異QP_MB信息的O比特到7比特的數目。當比特數為O時,總是將預測的QP用于宏塊,因為不允許差異比特。在另一極端,當比特數為7時,可以發信號表示相對于QP_PRED在27=128步驟的范圍內的差異。取決于慣例,差異值可以在從整數QP步驟-64到63中、整數QP步驟-32到95中、半QP步驟-32到31.5中等變化。在某些實現中,范圍一般是以QP_PRED為中心(或O差分)。設置用于發信號表示差異QP_MB信息的比特數在較高分辨率發信號表示差異QP_MB信號的成本相對于使用較大的QP范圍或較大的QP分辨率的質量好處之間折衷。
[0157]如果QP_CHANNEL_UNIFORM 是=0,那么工具解碼 NUM_BITS_QP_MB_Y(3 比特)、NUM_BITS_QP_MB_U (3比特)和NUM_BITS_QP_MB_V (3比特),它們分別是指示用于發信號表示用于Y通道、U通道和V通道中的宏塊的QP_MB差異的比特數的3比特值。這在各自的通道中產生用于差異QP_MB信息的O比特到7比特的數目。不同的通道無需彼此使用相同數據的差異QP_MB。例如,Y通道可能比U通道或V通道復雜得多,并且因此Y通道可以為差異QP_MB值使用4比特而U通道和V通道各自使用2比特。通過將用于通道的差異QP_MB比特數設置為0,可有效地禁止用于該通道的空間上適應性量化。
[0158]圖14示出了用于接收指示用于每個宏塊的QP的信息的比特流句法和偽代碼。圖14示出了宏塊級句法元素。如果QP_FRAME_UNIFORM等于0,那么QP在幀上在空間上變化。對于當前的宏塊,比特流包括用于指示QP_MB是否等于QP_PRED的比特QP_SKIP。如果QP_SKIP等于1,那么QP_MB被設置為等于QP_PRED。QP_SKIP = O指示明確地發信號表示QP_MB。如果這樣,那么接下來的比特流句法元素取決于QP_CHANNEL_UNIFORM是否等于O。
[0159]如果QP_CHANNEL_UNIFORM 不等于 0,那么比特流包括 DIFF_QP_MB (NUM_BITS_QP_MB比特)。在圖13的示例中,NUM_BITS_QP_MB可以是從O到7的整數。對于當前的宏塊,DIFF_QP_MB 表示 QP_MB 和 QP_PRED 之間的差異。QP_MB 被確定為:QP_MB=DIFF_QP_MB+QP_PRED,其中QP_PRED是用于當前宏塊的已預測的QP。
[0160]如果QP_CHANNEL_UNIFORM等于0,那么用于當前宏塊的QP跨幀的不同色通道變化,且因此比特流包括 DIFF_QP_MB_Y (NUM_BITS_QP_MB_Y 比特)、DIFF_QP_MB_U (NUM_BITS_QP_MB_U 比特)和 DIFF_QP_MB_V (NUM_BITS_QP_MB_V 比特)。在圖 13 的示例中,用于每一通道的差異QP_MB的比特數可以是從O到7的整數。DIFF_QP_MB_Y表示QP_MB_Y和QP_PRED_Y 之間的差異。QP_MB_Y=DIFF_QP_MB_Y+QP_PRED_Y。DIFF_QP_MB_U 和 DIFF_QP_MB_V分別表示用于U通道和V通道的相似的值。[0161]該設計允許用非常簡單且高效的方式來充分利用QP中的宏塊間冗余。即使在不同的色通道為給定的宏塊使用不同的量化器時,用于宏塊的I比特QP_SKIP元素足以指示色通道的QP與相鄰的宏塊(諸如左側或上方的鄰居)的相應的色通道的QP相同。此外,使用簡單的比較并選擇單個相鄰宏塊的QP的預測比混合兩個或多個相鄰的宏塊更為簡單一前者消除了取中值或取平均數的運算,并且在壓縮方面提供相似的效率。較為復雜的QP預測規則可以以較高的計算復雜度為代價提供更加精確的預測。
[0162]在圖13和14中所示的方法中,使用簡單的固定長度編碼(FLC)表(具有在幀之間或在通道之間變化的代碼長度)。對于差異QP_MB值的許多分布,這種FCL的性能可以與可變長度編碼一樣好。或者,編碼器和解碼器為差異QP_MB值使用可變長度代碼。
[0163]另外,發送用于發信號表示差異QP的比特數的能力在改進壓縮效率方面提供了額外的靈活度。如果宏塊QP與幀QP非常接近,那么可以通過僅使用I或2比特來發信號表示用于不使用預測的QP的宏塊的差異QP_MB來充分利用該接近性。如果宏塊QP是非常不同的(就具有較大的范圍而言),那么可使用更多的比特來發信號表示用于宏塊的差異QP_MB。
[0164]用于發信號表示用于每個色通道的差異QP_MB的比特數也可以根據用于每個通道的相應的宏塊QP的特征而不同。例如,如果用于所有宏塊的U和V通道的QP保持相同,而亮度QP對于宏塊在空間上變化,那么工具使用O比特來發信號表示用于U和V通道中的每一個的差異QP_MB,而用I或更多比特來發信號表示Y通道的差異QP_MB。
_5] P.在第二組合的實現中發信號表示替換性QP
[0166]在第二組合的實現中,如果QP_SKIP不等于I,那么可以在宏塊級使用QP索引明確地發信號表示QP_MB。QP索引參考可用QP表中的QP,后者是在幀級用信號表示的。圖15示出了用于接收指定用于幀的表(或用于通道的表)中的QP值的信息,接著填充QP表的比特流句法和偽代碼。圖15示出了幀級句法元素。
[0167]如果QP_FRAME_UNIFORM 等于 O(QP 在幀上在空間上變化)而 QP_CHANNEL_UNIFORM不等于O (QP在幀中色通道上無變化),那么比特流包括指定用于幀的QP表的值的句法元素。NUM_QP_INDEX (3比特)是調節用于幀的表中的不同QP的數目的3比特值。NUM_QP_INDEX具有23=8個可能的值,從O到7。在其他示例中,可以使用更多或更少的比特來發信號表示 NUM_QP_INDEX。
[0168]也調節表中不同的QP的數目的內變量NUM_QP等于NUM_QP_INDEX+2,范圍為2到
9。QP索引表中的第一個QP即QP_MB_TABLE[0]是QP_FRAME,即用于幀的默認QP值。可用QP 一般是從最常用到最不常用的來排序,以便于在宏塊級別對QP索引進行有效的可變長度編碼。例如,在圖17A到17F中所示的表中,使用單個比特來發信號表示QP_MB是否等于QP_MB_TABLE[O]。
[0169]通過接收和解碼用于每個位置的QP值,從位置I到位置NUM_QP_1填充QP表的剩余的行。在圖15中,比特流包括用于發信號表示表中每個位置的QP值的8比特,盡管在其他示例中可以使用更多或更少的比特。在圖15中,使用表中位置O處的QP_FRAME和表中從I到NUM_QP_INDEX+1的每個其他位置的用信號表示的QP值產生QP索引表。
[0170]如果QP_CHANNEL_UNIFORM等于O (QP跨幀中的色通道變化),那么比特流包括用于為幀中Y、U和V色通道的每一個填充QP表的句法元素。對于每個通道,使用通道專用的QP和供替換的QP來填充表的位置。
[0171]圖16示出了在第二組合實現中用于接收指示用于宏塊的QP的信息,接著確定QP的比特流句法和偽代碼。圖16示出了宏塊級句法元素。QP_SKIP如同在第一種組合的實現中使用。同樣,如果用于當前的宏塊QP_SKIP等于1,那么對該宏塊QP_MB=QP_PRED。如果QP_SKIP不等于1,那么附加的信息指示明確地發信號表示用于宏塊的QP_MB。然而,在第二種組合的實現中,工具參考在幀級建立的QP表發信號表示非預測的QP。
[0172]當QP_CHANNEL_UNIFORM指示QP在通道之間無變化時,內部計數器即NUM_QP_EFFECTIVE (有效QP數)等于NUM_QP -1 (其中NUM_QP是根據比特流中的幀級信息設置的,如圖15中)。這建立了對存儲在用于幀的QP表中的備選的QP值的計數。例如,如果NUM_QP等于9,那么QP表具有8個備選的QP值,在位置O處的幀QP值和在表中的位置I 一 8處的8個備選的QP值。由此,NUM_QP_EFFECTIVE等于8。QP_ID是用于在QP表中定位QP的值。起初,QP_ID為O。
[0173]如果NUM_QP_EFFECTIVE大于I,那么QP表包括默認值與在位置I和2處的至少兩個備選的值以及比特流中指示用于宏塊的QP的QP_ID (QP表中位置的索引)的可變長度代碼(“VLC”)。圖17A —F示出了可用于可變長度編碼和解碼的VLC表的若干個示例。例如,圖17A示出了對應于NUM_QP_EFFECTIVE=2的VLC表(1700),其中VLC表(1700)包括對應于VLC為O的QP_ID為O。VLC表(1700)還包括對應于VLC為I的QP_ID為I。相似地,圖17B 示出了對應于 NUM_QP_EFFECTIVE=3 的 VLC 表(1705)以及用于 QP_ID 為 0,1,2 的 VLC。圖 17C — F 示出 了分別對應于 NUM_QP_EFFECTIVE=4、5、6 和 7 的 VLC 表(1710、1715、1720、1730)。通常,在幀或色通道中最常用的QP_ID值被放置在VLC表的頂部附近,這樣使得使用較少的比特來發信號表示最常用的QP_ID。或者,編碼器和解碼器使用其他VLC來表示QP_ID。編碼器和解碼器可使用單個表格,來代替對NUM_QP_EFFECTIVE的不同值使用不同的VLC表,但是改變多個表通常導致略微更為高效的信號發送(例如,比較圖17A和17B中不同的VLC表中QP_ID==1的VLC長度)。
[0174]不存在用于NUM_QP_EFFECTIVE=1的VLC表,因為如果QP表僅具有QP_FRAME(或通道QP)以及一個備選的QP,那么可以推測非推測的QP是未經推測的QP的QP。換而言之,用于當前宏塊的QP_PRED是表中兩個QP值之一。如果宏塊不使用QP_PRED(即QP_SKIP==0),那么唯一的用于宏塊的另一選項是QP表中的另一 QP,并且用于QP_ID的比特流中不包括VLC。
[0175]如果NUM_QP_EFFECTIVE大于1,那么比特流包括在VLC表之一中與QP_ID相關聯的VLC,其中NUM_QP_EFFECTIVE指示要使用的表。例如,如果NUM_QP_EFFECTIVE等于4且工具解碼霍夫曼代碼110,那么工具從圖17C中所示的表(1710)確定對應的QP_ID為2。當NUM_QP_EFFECTIVE等于4,那么QP表中備選的QP值的數目為4,且QP表也包括QP_FRAME。由此,QP表中的QP_ID為0、1、2、3和4。然而,相應的VLC表僅包括4個位置,因為預測的QP無需位置,其在QP表中的ID可以是0、1、2、3和4。這有助于降低與發信號表示QP_ID相關聯的總比特率。
[0176]由此,無論NUM_QP_EFFECTIVE是否大于I,解碼工具都確定QP_PRED的ID,被示為QP_PRED_ID。工具接著檢查用信號表示的QP_ID (或初始化的QP_ID)是否大于QP_PRED_ID。如果是,那么工具遞增QP_ID。如果否,那么工具不遞增QP_ID。一旦工具確定了適當的QP_ID,工具就使用由QP_ID指示的QP表中的值來確定QP_MB。
[0177]例如,如果用于當前宏塊的預測的QP的QP_PRED_ID為I且NUM_QP_EFFECTIVE為1,那么QP_ID保留其初始值O并且參考具有兩個可用QP的QP表中的另一(非預測的)QP。如果預測的QP的QP_PRED_ID為0,那么就遞增QP_IP并且參考具有兩個可用QP的QP表中的另一(非預測的)QP。
[0178]作為另一示例,對于當前宏塊令QP_PRED_ID等于2。如果工具接收到指示圖17D中所示的表(175)中的QP_ID為O的VLC,因為QP_ID〈QP_PRED_ID,那么工具查找QP表中值為O的QP_ID。相反,如果工具接受指示圖17D中所示的表(1715)中的QP_ID為4的VLC,則工具遞增QP_ID,并且在QP表中查找值為4的QP_ID。通過充分利用用信號表示的QP_ID值無需包括QP_PRED_ID作為可能的選擇的事實來降低與用信號表示的QP_ID值相關聯的總比特率。
[0179]如果QP_CHANNEL_UNIFORM等于O (QP在通道之間變化),那么為幀的每個色通道中的QP_SKIP不等于I的宏塊執行該過程。
[0180]如果期望幀或色通道中的宏塊的QP是較大范圍內的較小的QP選擇集合,那么第二組合的實現的方法尤其有用。例如,如果幀或色通道的某些選擇在空間上或時間上是非常復雜的,而幀或色通道的其他選擇相對統一,那么該方案可有助于改進增強層視頻的幀的總體壓縮。該技術也充分利用段內的宏塊間冗余,允許使用最短的VLC代碼發信號表示最常見的宏塊QP,并且在某些情況下通過使用較低的QP_ID的VLC代碼以用信號表示實際較高的QP_ID來改進性能。
[0181]VI1.替換
[0182]盡管本文中提出了關于增強層視頻的編碼和解碼的許多示例,但是本文中所描述的用于QP的空間預測的技術和工具可以被更一般地應用到其他類型的視頻上。類似地,本文中所描述的用于在空間上和/或跨通道改變QP的技術和工具可以被更一般地應用到其他類型的視頻上。
[0183]QP預測的許多示例涉及用于當前單元的單個預測的QP的空間預測。或者,編碼器和解碼器可以為當前單元計算多個預測器,并且比特流包括指示從多個預測器中對當前單元選擇預測的QP的信息。作為另一替換,編碼器和解碼器使用來自其他圖片中位于同處的宏塊的時間預測,或者使用來自另一色通道中位于同處的宏塊的QP的一個通道中的宏塊的QP的預測,來代替執行對QP的空間預測。
[0184]鑒于可應用本發明的原理的許多可能的實施例,應該認識到所示的實施例僅是本發明的優選示例,并且不應該被認為限制本發明的范圍。在某些情況下,上述技術中某些步驟可以被省略或沖突。本發明的范圍而是由所附權利要求定義的。我們由此要求保護落入這些附權利要求的范圍和精神之內的所有作為本發明。
【權利要求】
1.一種方法,包括: 為在多個色通道中組織的圖片編碼視頻,包括: 在空間上及所述圖片的視頻的多個色通道之間改變量化;以及對于所述圖片的視頻的當前單元,使用在空間上相鄰的單元的多個單元級量化參數(QP)來預測所述當前單元的單元級QP ;以及 以比特流的形式輸出用于所述圖片的經編碼的視頻,包括: 發信號表示所述比特流中指示至少 部分參數化所述圖片的視頻的經改變量化的多個QP的QP信息,所述QP信息包括所述當前單元的單元級QP,該單元級QP被發信號表示為相對于所述當前單元的預測單元級QP的差異QP。
2.如權利要求1所述的方法,其特征在于,所述單元是塊,并且其中所述編碼進一步包括至少部分基于控制所述編碼的速度和復雜度的用戶設置來確定是否在所述圖片的視頻的塊之間使用空間量化變化。
3.如權利要求1所述的方法,其特征在于,所述單元是塊,并且其中所述編碼進一步包括至少部分基于對所述圖片的視頻的復雜度和空間變化性的分析來確定是否在所述圖片的視頻的塊之間使用空間量化變化。
4.如權利要求1所述的方法,其特征在于,所述編碼包括對所述圖片的視頻的單元的變換系數執行所述量化。
5.如權利要求1所述的方法,其特征在于,所述QP信息還包括指示所述圖片的視頻的一個或多個圖片級QP或所述圖片的視頻的相應色通道的圖片級信息。
6.如權利要求1所述的方法,其特征在于,所述空間上相鄰的單元包括在所述當前單元左側的左側單元以及在所述當前單元上方的上方單元,并且其中所述預測所述當前單元的單元級QP使用基于所述左側單元的QP以及所述上方單元的QP的一個或多個預測規則。
7.如權利要求6所述的方法,其特征在于,根據所述一個或多個預測規則,如果所述左側單元的QP等于所述上方單元的QP,則所述當前單元的預測單元級QP是所述左側單元的QP0
8.如權利要求6所述的方法,其特征在于,根據所述一個或多個預測規則: 如果所述左側單元的QP不可用,則用另一 QP來代替所述左側單元的QP ;以及 如果所述上方單元的QP不可用,則用另一 QP來代替所述上方單元的QP。
9.如權利要求1所述的方法,其特征在于,所述單元是塊,所述方法還包括: 在所述編碼期間: 確定是否在所述圖片的視頻的塊之間使用空間量化變化;以及 確定是否在所述色通道之間使用量化變化;以及 作為所述輸出經編碼的視頻的一部分: 發信號表示所述比特流中指示是否在所述圖片的視頻的塊之間使用所述空間量化變化的信息;以及 發信號表示所述比特流中指示是否在所述色通道之間使用所述量化變化的信息。
10.一種方法,包括: 以比特流的方式接收在多個色通道中組織的圖片的視頻的經編碼的數據,所述經編碼的數據包括:指示至少部分地參數化所述圖片的視頻的反量化的多個量化參數(QP)的QP信息,所述QP信息包括所述圖片的視頻的當前單元的單元級QP的差異QP ;以及 解碼所述圖片的視頻,包括在空間上及所述圖片的視頻的多個色通道之間改變反量化,并且還包括對于所述當前單元: 使用空間上相鄰的單元的多個單元級QP來預測所述當前單元的單元級QP ;以及 將所述當前單元的預測單元級QP和與所述當前單元的比特流間的差異QP相組合。
11.如權利要求10所述的方法,其特征在于,所述解碼包括對所述圖片的視頻的單元的變換系數執行所述反量化。
12.如權利要求10所述的方法,其特征在于,所述QP信息還包括指示所述圖片的視頻的一個或多個圖片級QP或者所述圖片的視頻的相應色通道的圖片級信息。
13.如權利要求10所述的方法,其特征在于,所述空間上相鄰的單元包括在所述當前單元左側的左側單元和在所述當前單元上方的上方單元,并且其中所述預測所述當前單元的單元級QP使用基于所述左側單元的QP和所述上方單元的QP的一個或多個預測規則。
14.如權利要求13所述的方法,其特征在于,根據所述一個或多個預測規則,如果所述左側單元的QP等于所述上方單元的QP,則所述當前單元的預測單元級QP是所述左側單元的QP。
15.如權利要求13所述的方法,其特征在于,根據所述一個或多個預測規則: 如果所述左側單元的QP不可用,則用另一 QP來代替所述左側單元的QP ;以及 如果所述上方單元的QP不可用,則用另一 QP來代替所述上方單元的QP。
16.如權利要求10所述的方法,其特征在于,所述單元是塊,其中所述經編碼的數據還包括所述比特流中指示是否在所述圖片的視頻的塊之間使用空間量化變化的信息,并且所述解碼進一步包括確定是否在所述圖片的視頻的塊之間使用所述空間量化變化。
17.一種存儲有指令的計算機可讀存儲介質,其中所述指令在被執行時,使得計算設備執行如權利要求1-16中的任一項所述的方法。
18.一種計算設備,所述計算設備適于執行如權利要求1-16中的任一項所述的方法。
【文檔編號】H04N7/50GK103428497SQ201310362221
【公開日】2013年12月4日 申請日期:2009年5月29日 優先權日:2008年6月3日
【發明者】S·瑞古納薩恩, S·孫, C·圖, C-L·林 申請人:微軟公司