專利名稱:用于3d子帶編碼的嵌入式基層編解碼器的制作方法
技術(shù)領(lǐng)域:
描述了用于可縮放的視頻編碼和解碼的相關(guān)技術(shù)和工具。例如3D子帶視頻編碼器包括嵌入式基層編解碼器,3D子帶視頻解碼器包括嵌入式基層解碼器。
背景技術(shù):
數(shù)字視頻消耗大量的存儲(chǔ)容量和傳輸容量。典型的原始數(shù)字視頻序列每秒包括15或30幀。每幀可以包括幾萬(wàn)或幾十萬(wàn)像素(也稱象素),其中每一個(gè)像素代表圖像的一個(gè)微小的元素。以原始形式,計(jì)算機(jī)通常用三個(gè)樣值共24比特的一組代表一個(gè)像素。例如一個(gè)像素可以包括一個(gè)定義像素灰度成分的八比特的亮度樣值(也稱發(fā)光率樣值,在此處術(shù)語(yǔ)“亮度”與“發(fā)光率”是通用的)和兩個(gè)定義像素色彩成分的八比特的色度樣值(也稱為色品樣值,在此處術(shù)語(yǔ)“色度”與“色品”是通用的)。這樣,典型的原始數(shù)字視頻序列每秒的比特?cái)?shù)目或比特率,可達(dá)到每秒5百萬(wàn)比特或更多。
許多計(jì)算機(jī)和計(jì)算機(jī)網(wǎng)絡(luò)缺乏資源來(lái)處理原始數(shù)字視頻。由于這一原因,工程師使用壓縮(也稱編碼或譯碼)來(lái)減少數(shù)字視頻的比特率。壓縮通過(guò)將視頻轉(zhuǎn)換成較低比特率的形式降低了存儲(chǔ)和傳輸視頻的成本。解壓縮(也稱解碼)從視頻的壓縮形式重建視頻的最初版本。一個(gè)“編解碼器”是一個(gè)編碼/解碼系統(tǒng)。壓縮可以是無(wú)損的,在這種情況下視頻質(zhì)量不會(huì)受到損失,但是由于受視頻數(shù)據(jù)可變性(有時(shí)稱為熵)的固有數(shù)量的制約比特率縮減受到限制?;蛘?,壓縮也可以是有損的,在這種情況下視頻質(zhì)量會(huì)受到損失,但獲得的比特率的縮減更為可觀。有損壓縮和無(wú)損壓縮通常是同時(shí)發(fā)生的—有損壓縮確定一個(gè)信息近似值,而無(wú)損壓縮用于表示這一近似值。
作為視頻壓縮的一般規(guī)則,質(zhì)量變化直接與比特率有關(guān)。對(duì)于給定視頻序列,如果這一序列以較高質(zhì)量進(jìn)行編碼,那么序列的比特率也就比較高,而如果這一序列以較低質(zhì)量進(jìn)行編碼,那么這一序列的比特率也就比較低。各種因素都能影響比特率和原始數(shù)字視頻序列的質(zhì)量,包括時(shí)間分辨率(例如每秒7.5、15、30或60視頻幀)、空間分辨率(例如每視頻幀176×144(QCIF),352×288(CIF),或704×576(4CIF)像素),和樣值分辨率(如每像素8,16或24比特)。質(zhì)量和比特率可能會(huì)由于活動(dòng)時(shí)間、空間或者樣值分辨率的高低而變化。
質(zhì)量和比特率也取決于在有損壓縮過(guò)程中由信息內(nèi)容的簡(jiǎn)化或消除產(chǎn)生的失真量。這影響著,例如,重建時(shí)視頻中的模糊度、塊度、顆粒度等的數(shù)量。明顯不同地,有損壓縮降低序列的質(zhì)量以使編碼器得到較低的比特率。
作為另外一個(gè)一般規(guī)則,質(zhì)量和比特率取決于視頻序列在細(xì)節(jié)和運(yùn)動(dòng)方面的復(fù)雜度。對(duì)于某些固定的質(zhì)量水平,復(fù)雜序列典型地比簡(jiǎn)單序列需要更多比特進(jìn)行編碼。反過(guò)來(lái)的一面是,當(dāng)以某些固定比特率編碼時(shí),復(fù)雜序列典型地得到比簡(jiǎn)單序列更低的質(zhì)量。
在某些情況下,全部要求是以單一比特率/質(zhì)量水平對(duì)視頻編碼。例如,如果視頻是為了用單一類型的設(shè)備再現(xiàn)被編碼,或者如果視頻是為了經(jīng)由電話線的點(diǎn)對(duì)點(diǎn)視頻會(huì)議中再現(xiàn)被編碼,那么以單一比特率/質(zhì)量水平對(duì)視頻進(jìn)行簡(jiǎn)單編碼是合理的。然而,在許多其他情況下,以多種比特率/質(zhì)量水平對(duì)視頻進(jìn)行編碼是合理的。例如在互聯(lián)網(wǎng)上流動(dòng)視頻時(shí),視頻服務(wù)器常常不得不向其不同容量的設(shè)備提供視頻和/或在各種具有不同速度和可靠特性的網(wǎng)絡(luò)環(huán)境中分發(fā)視頻。
一種尋址不同網(wǎng)絡(luò)和重現(xiàn)需求的方法是以多種比特率和質(zhì)量水平對(duì)同一視頻序列進(jìn)行編碼,這會(huì)因?yàn)槎喾N獨(dú)立的壓縮視頻比特流導(dǎo)致存儲(chǔ)和傳輸?shù)牡托省W鳛榭蛇x擇的,子帶或子波視頻編碼提供一種在單一、可縮放的壓縮視頻比特流中以多分辨率方式對(duì)視頻序列進(jìn)行編碼的方法。利用子帶或子波編碼,視頻序列將被分解成不同時(shí)間和空間的子帶。
作為一個(gè)簡(jiǎn)單例子,視頻序列被拆分成低分辨率時(shí)間子帶(大約相當(dāng)該序列的低幀率版本)和一個(gè)高分辨率時(shí)間子帶(這種子帶能與低分辨率時(shí)間子帶合并來(lái)修復(fù)原始幀率序列)。單個(gè)的視頻幀的信息可以同樣的被拆分成低分辨率空間子帶和多個(gè)較高分辨率空間子帶。時(shí)間和空間的分解可同時(shí)使用。每一種類型的分解可以被重復(fù),例如,就像一個(gè)低分辨率的子帶可以被進(jìn)一步分解。通過(guò)以不同分辨率為傳輸或解碼選擇特定子帶,可以實(shí)現(xiàn)時(shí)間和空間的可縮放性。
除此以外,單個(gè)子帶信息可以用具有多個(gè)比特率層的比特平面來(lái)表示。對(duì)于原始編碼信息的保真度可以通過(guò)傳輸一些而不是全部子帶的比特選擇性地減少(和比特率一起)?;蛘撸U娑瓤梢酝ㄟ^(guò)對(duì)少于全部的子帶比特進(jìn)行解碼選擇性地減少(連同處理要求一起)。
雖然可縮放視頻編碼和解碼技術(shù)使壓縮比特流的不同時(shí)間、空間和比特保真度的可縮放性更容易,但是在現(xiàn)有可縮放視頻編碼和解碼技術(shù)中存在幾個(gè)缺點(diǎn)。
現(xiàn)有可縮放視頻編碼和解碼技術(shù)典型地不能提供在低比特率方面與不可縮放技術(shù)相比的性能。在可縮放視頻編碼和解碼技術(shù)的性能在較高的比特率和質(zhì)量方面很好的同時(shí),相比不可縮放視頻編碼和解碼技術(shù),它們?cè)诘捅忍芈史矫媸褂锰啾忍亍?br>
此外,許多現(xiàn)有硬件和軟件工具是根據(jù)特定不可縮放視頻編碼和解碼技術(shù)設(shè)計(jì)的。這些工具的使用者不愿購(gòu)買新的和現(xiàn)存工具不可兼容的可縮放視頻編碼和解碼技術(shù)、工具。而且,內(nèi)容提供者可能不愿生產(chǎn)和安裝與多數(shù)視頻解碼工具不兼容的編碼內(nèi)容。
有時(shí),解碼器以比原始空間分辨率低的空間分辨率播放視頻。這可能發(fā)生在以下情況,例如,如果解碼設(shè)備只有一個(gè)小屏幕或是通過(guò)網(wǎng)絡(luò)獲得較高空間分辨率信息。然而,當(dāng)在解碼過(guò)程中以原始空間分辨率發(fā)生時(shí)間分解時(shí),以較低空間分辨率解碼是很成問(wèn)題的?,F(xiàn)有的可縮放視頻解碼技術(shù)不能充分訪問(wèn)這一編碼腳本。
最后,現(xiàn)有的可縮放視頻編碼和解碼技術(shù)在編碼和解碼期間不能說(shuō)明在某些判斷中的失真的可察覺(jué)性。典型地,現(xiàn)有可縮放視頻編碼技術(shù)在某些種類時(shí)間分解的低分辨率時(shí)間子帶中引入了過(guò)量可察覺(jué)的失真。
舉出了數(shù)字視頻壓縮與解壓縮的最重要性,對(duì)于可縮放視頻編碼器具有廣闊發(fā)展領(lǐng)域就不令人驚訝了。無(wú)論先前的可縮放視頻編碼和解碼技術(shù)如何有益,然而它們并不具有以下技術(shù)和工具的長(zhǎng)處。
發(fā)明概述這里描述的技術(shù)和工具改進(jìn)了可縮放視頻編碼和解碼的性能。例如,3D子帶視頻編碼器包括嵌入式基層編解碼器。該基層編解碼器具有幾個(gè)優(yōu)點(diǎn),包括在低比特率下有效壓縮以及與現(xiàn)有解碼器的基層兼容性。同時(shí),3D子帶視頻編碼器提供在較高比特率下的時(shí)間、空間可縮放性的選項(xiàng)。相應(yīng)的3D子帶視頻解碼器包括嵌入式基層解碼器。
根據(jù)第一組工具和技術(shù),其中嵌有基層編解碼器的3D子帶視頻編碼器,對(duì)視頻編碼并輸出編碼結(jié)果。例如基層編解碼器在3D子帶視頻編碼器中跟蹤一個(gè)或更多時(shí)間變換并且優(yōu)先于在編碼器中的一個(gè)或更多其他的時(shí)間變換??梢詫⒒诨鶎泳幗獯a器的輸入和基層編解碼器的輸出的差的余量信息提供給在基層編解碼器之后的時(shí)間變換?;蛘?,時(shí)間轉(zhuǎn)換可以包括相對(duì)于基層編解碼器輸出中的參考圖像的動(dòng)作補(bǔ)償時(shí)間濾波。在一些實(shí)施中,3D子帶編碼器再次利用動(dòng)作信息和/或來(lái)自基層編解碼器的模式信息。
根據(jù)第二組技術(shù)和工具,其中嵌有基層解碼器的3D子帶視頻解碼器,對(duì)視頻解碼并輸出解碼結(jié)果。例如,基層解碼器在3D子帶視頻解碼器中跟蹤一個(gè)或更多反向時(shí)間變換并且優(yōu)先于在解碼器中的一個(gè)或更多其他的反向時(shí)間變換??梢詫⒂嗔啃畔⑻峁┙o在基層解碼器之后的反向時(shí)間變換,然后將其和基層解碼器的輸出合并。或者,反向時(shí)間轉(zhuǎn)換可以包括相對(duì)于基層編解碼器輸出中的參考圖像的動(dòng)作補(bǔ)償時(shí)間濾波。在一些實(shí)施中,3D子帶解碼器再次利用動(dòng)作信息和/或來(lái)自基層解碼器的模式信息。
本發(fā)明的前述和其它的目的、特征和優(yōu)點(diǎn)將從下面繼續(xù)進(jìn)行的參考附圖的詳細(xì)描述中變得更加明顯。
圖1是可縮放視頻編碼和解碼的一般的操作環(huán)境的框圖。
圖2、3、4和5是結(jié)合各種描述的可以實(shí)現(xiàn)的實(shí)施例的一般視頻編碼器和/或解碼器的框圖。
圖6是說(shuō)明在動(dòng)作補(bǔ)償時(shí)間濾波(“MCTF”)中輸出視頻幀、時(shí)間低通幀和時(shí)間高通幀之間關(guān)系的圖表。
圖7、8是分別說(shuō)明了編碼器中的MCTF和解碼器中反向MCTF(“IMCTF”)的框圖。
圖9、10是分別說(shuō)明在編碼器中具有自適應(yīng)更新級(jí)的MCTF和在解碼器中具有自適應(yīng)更新級(jí)的IMCTF的框圖。
圖11、12、13是說(shuō)明自適應(yīng)更新操作技術(shù)的流程圖。
圖14、15、16、17、18和19是說(shuō)明在3D子帶編碼器中嵌入基層編解碼器或者在3D子帶解碼器中嵌入基層解碼器的不同方案的框圖。
圖20是說(shuō)明當(dāng)基層編解碼器或解碼器提供參考候選時(shí)的不同參考幀的合并的圖。
圖21、22和23是說(shuō)明用3D子帶編解碼器和嵌入式基層編解碼器編碼的幀模型的圖。
圖24是說(shuō)明用具有嵌入式基層編碼器的3D子帶編碼器進(jìn)行可縮放編碼的技術(shù)的流程圖。
圖25是說(shuō)明用具有嵌入式基層解碼器的3D子帶解碼器進(jìn)行可縮放解碼的技術(shù)的流程圖。
圖26是說(shuō)明以較低空間分辨率輸出的對(duì)SDMCTF編碼視頻進(jìn)行解碼的兩種方案的框圖。
圖27是說(shuō)明SDIMCTF和IBIMCTF中動(dòng)作補(bǔ)償預(yù)測(cè)的框圖。
圖28是說(shuō)明由于動(dòng)作移動(dòng)導(dǎo)致的功率譜泄漏的圖解。
圖29是說(shuō)明以較低空間分辨率輸出的對(duì)SDMCTF編碼視頻進(jìn)行解碼的基準(zhǔn)方案的圖表。
圖30是說(shuō)明以較低空間分辨率輸出對(duì)SDMCTF編碼視頻進(jìn)行解碼的一般方案框圖。
圖31、32、33和34是說(shuō)明以較低空間分辨率輸出的對(duì)SDMCTF編碼視頻進(jìn)行解碼的方案的框圖。
具體實(shí)施例方式
在三維(“3D”)子波或子帶視頻編碼中,通過(guò)幾次空間轉(zhuǎn)換和時(shí)間轉(zhuǎn)換將視頻分解為許多時(shí)間-空間子帶。這些子帶某種程度上是獨(dú)立的,其中它們中的一些放棄可縮放性。例如為了解碼低空間分辨率視頻,空間高通子帶被放棄或者解碼器只對(duì)空間低通子帶中的接收數(shù)據(jù)實(shí)施解碼。
在這里描述的各種技術(shù)和工具可以被獨(dú)立使用。一些技術(shù)和工具可以組合使用(例如,在組合的編碼和/或解碼過(guò)程的不同階段)。
I.操作環(huán)境范例圖1說(shuō)明了適當(dāng)?shù)挠?jì)算平臺(tái)(100)的一般例子,其中幾個(gè)描述的實(shí)施例可以在這里實(shí)現(xiàn)。計(jì)算平臺(tái)(100)不試圖建議對(duì)使用范圍或功能提供任何限制,所描述的技術(shù)和工具可在各種通常用途或特定用途的計(jì)算平臺(tái)中實(shí)現(xiàn)。
參考圖1,計(jì)算平臺(tái)(100)包括了至少一個(gè)處理單元(110)和存儲(chǔ)器(120)。在圖1中,虛線內(nèi)包括了最基本的配置(130)。處理單元(110)執(zhí)行計(jì)算機(jī)可執(zhí)行的指令并且可以是真實(shí)或虛擬的處理器,在多處理系統(tǒng)中,多個(gè)處理單元通過(guò)執(zhí)行計(jì)算機(jī)可執(zhí)行的指令來(lái)提高處理能力。存儲(chǔ)器(120)可能是易失存儲(chǔ)器(例如寄存器,高速緩存,RAM),非易失存儲(chǔ)器(例如ROM,EEPROM,閃存等),或者是兩者之間的一些組合。存儲(chǔ)器(120)存儲(chǔ)利用這里描述的一種或多種技術(shù)實(shí)現(xiàn)的視頻編碼器和/或解碼器的軟件(180)。
計(jì)算平臺(tái)可以具有附加特征。例如計(jì)算平臺(tái)(100)包括內(nèi)存(140),一個(gè)或多個(gè)輸入設(shè)備(150),一個(gè)或多個(gè)輸出設(shè)備(160),以及一個(gè)或多個(gè)通信連接(170)。交互連接結(jié)構(gòu)(未示出)諸如總線、控制器或網(wǎng)絡(luò),將計(jì)算平臺(tái)(100)中的部件相互連接起來(lái)。典型地,操作系統(tǒng)軟件(未示出)為其他在計(jì)算平臺(tái)(100)中的軟件提供操作平臺(tái),并且協(xié)調(diào)計(jì)算平臺(tái)(100)中各部分的運(yùn)行。
內(nèi)存(140)可以是可刪除的或不可刪除的,并且包括磁盤,磁帶或盒式磁帶,CD-ROM、DVD或別的任何能夠用于存儲(chǔ)信息以及能訪問(wèn)計(jì)算平臺(tái)(100)的其他介質(zhì)。內(nèi)存(140)為軟件(180)存儲(chǔ)指令。
輸入設(shè)備(150)可以是可觸摸式輸入設(shè)備,像鍵盤、鼠標(biāo)、電子筆或跟蹤球,一種聲音輸出設(shè)備、掃描儀或者其他可以向計(jì)算平臺(tái)(100)提供輸入的設(shè)備。因?yàn)閷?duì)音頻和視頻編碼,輸入設(shè)備(150)可以是聲卡、視頻卡、TV調(diào)諧卡或能以模擬或數(shù)字形式接收音頻和視頻輸入的類似設(shè)備,或者是能將音頻和視頻抽樣讀取到計(jì)算平臺(tái)(100)中的CD-ROM或CD-RW。輸出設(shè)備(160)可以是顯示器、打印機(jī)、揚(yáng)聲器、CD刻錄機(jī)或其他能從計(jì)算平臺(tái)(100)提供輸出的設(shè)備。
通信連接(170)能夠通過(guò)通信介質(zhì)和別的計(jì)算實(shí)體通信。通信介質(zhì)傳送的信息諸如計(jì)算可執(zhí)行指令、音頻或視頻的輸入或輸出,或者其他已調(diào)制數(shù)據(jù)信號(hào)形式的數(shù)據(jù)。已調(diào)制數(shù)據(jù)信號(hào)是一種具有一個(gè)或多個(gè)自身特征組的信號(hào),或者是一種以類似信號(hào)中編碼信息的方式變化的信號(hào)。通過(guò)舉例的方式,而不是限制,通信介質(zhì)包括利用電、光、射頻(RF)、紅外線、聲音或其他載波實(shí)現(xiàn)的有線或無(wú)線技術(shù)。
這些技術(shù)和工具可以在計(jì)算機(jī)可讀介質(zhì)的常規(guī)上下文中進(jìn)行描述。計(jì)算機(jī)可讀介質(zhì)是任何能訪問(wèn)計(jì)算機(jī)平臺(tái)的可獲得介質(zhì)。通過(guò)舉例的方式,而不是限制在計(jì)算平臺(tái)(100)中,計(jì)算機(jī)可讀介質(zhì)包括存儲(chǔ)器(120)、內(nèi)存(140)、通信介質(zhì)以及以上任何的組合。
這些技術(shù)和工具可以在計(jì)算機(jī)可執(zhí)行指令的常規(guī)上下文中進(jìn)行描述,諸如那些包括在程序模塊中、以在計(jì)算平臺(tái)中在目標(biāo)真實(shí)或虛擬處理器上來(lái)執(zhí)行的指令。一般來(lái)說(shuō),程序模塊包括能執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽取數(shù)據(jù)類型的例程、程序、程序庫(kù)、目標(biāo)、類、組件、數(shù)據(jù)結(jié)構(gòu)等。程序模塊的功能在不同實(shí)施例中可以按需要在程序模塊之間組合或拆分。用于程序模塊的計(jì)算可執(zhí)行指令可以在本地或分布式計(jì)算平臺(tái)執(zhí)行。
出于說(shuō)明的目的,詳細(xì)描述用像“信號(hào)”、“決定”和“應(yīng)用”這樣的術(shù)語(yǔ)來(lái)描述計(jì)算平臺(tái)中的計(jì)算機(jī)操作。這些術(shù)語(yǔ)是對(duì)計(jì)算機(jī)執(zhí)行的操作的高度提煉,并且不應(yīng)和人類執(zhí)行的動(dòng)作混淆。實(shí)際的相應(yīng)于這些術(shù)語(yǔ)的計(jì)算機(jī)操作依賴實(shí)施而變化。
II.視頻編碼器和解碼器的范例圖2是結(jié)合各種描述的可以實(shí)現(xiàn)的實(shí)施例的一般視頻編碼器系統(tǒng)(200)的框圖。圖4顯示了由一層空間分解跟蹤四層時(shí)間分解的常規(guī)編碼器(400)。圖3是結(jié)合各種描述的可以實(shí)現(xiàn)的實(shí)施例的一般視頻解碼器系統(tǒng)(300)的框圖。圖5顯示了具有四層(反向)時(shí)間分解和兩層(反向)空間分解的組合編碼器/解碼器系統(tǒng)(500)。
在編碼器和解碼器內(nèi)的模塊之間顯示的關(guān)系指出了編碼器和解碼器中主要的信息流程;為了簡(jiǎn)明起見(jiàn)沒(méi)有示出其他關(guān)系。特別的是,除了動(dòng)作信息之外,圖2和圖3沒(méi)有表示出指示用于視頻序列、幀、宏模塊、塊等的編碼器設(shè)置、模式、表格等的側(cè)面信息。這種側(cè)面信息大概在進(jìn)行側(cè)面信息的熵編碼后,在輸出比特流中進(jìn)行發(fā)送。
依靠實(shí)施和想要的壓縮類型,圖中顯示的編碼器或解碼器的模塊可以被增加、省略、拆分成多個(gè)模塊、與其他模塊組合,和/或被類似的模塊替換。在可選實(shí)施例中,具有不同模塊和/或模塊的其它配置的編碼器和解碼器實(shí)現(xiàn)一個(gè)或更多所描述的技術(shù)。例如,雖然圖2中顯示了在編碼器系統(tǒng)(200)中空間分解(230)在時(shí)間分解(210)下游,但編碼器系統(tǒng)(200)可以替換地或額外在時(shí)間分解(210)開(kāi)始前包括一層或多層空間分解。在這種情況下,相應(yīng)的解碼器系統(tǒng)(300)可以在反向時(shí)間分解(310)之后包括一層或多層反向空間分解。
3D子帶視頻編碼對(duì)比不可縮放視頻編碼(例如,每H.264或VC-1標(biāo)準(zhǔn))的技術(shù)等級(jí)獲得了中等或高比特率的性能。與常規(guī)不可縮放方法相比,無(wú)論怎樣,花費(fèi)在3D子帶視頻編碼中的運(yùn)動(dòng)矢量編碼的比特量相對(duì)較大。因此,3D子帶視頻編碼在低比特率通常比不可縮放方法執(zhí)行差,這里編碼運(yùn)動(dòng)矢量所花費(fèi)的比特量在總比特率中占較大比重。
A視頻編碼器范例3D子帶視頻編碼是一種使用多級(jí)時(shí)間/空間子帶視頻分解來(lái)提供多級(jí)空間和/或時(shí)間縮放能力的一流方法。圖2說(shuō)明一般的3D子帶視頻編碼方案(200)。編碼器(200)接收視頻圖像(205)的序列(例如改進(jìn)的視頻幀、隔行掃描視頻幀或隔行掃描視頻幀的半幀),并且產(chǎn)生壓縮視頻信息(295)作為輸出。視頻編碼器的特定實(shí)施例典型地采用一般編碼器(200)的變形或增補(bǔ)版本。
編碼器(200)通過(guò)時(shí)間子帶轉(zhuǎn)換(210)來(lái)分解視頻信號(hào)。圖2顯示單一級(jí)別時(shí)間分解被輸出為低分辨率子帶和高分辨率子帶,但是時(shí)間分解可能以包括4、5個(gè)或一些其它數(shù)目級(jí)別的分解。
在圖2中,時(shí)間分解(210)是動(dòng)作補(bǔ)償時(shí)間濾波(“MCTF”),所以編碼器(200)執(zhí)行動(dòng)作估計(jì)(220)以計(jì)算視頻信號(hào)動(dòng)作信息。動(dòng)作估計(jì)(220)的確切策略取決于具體實(shí)施,并且可以包括,例如,按照子像素提純進(jìn)行的整數(shù)像素檢索、螺旋檢索模式、被認(rèn)為真實(shí)的失真率函數(shù)最小化或者模仿殘余編碼消耗、動(dòng)作信息編碼消耗、動(dòng)作預(yù)測(cè)模式等。
在一些實(shí)施例中,編碼器(200)為在動(dòng)作估計(jì)(220)中的可變尺寸區(qū)域的動(dòng)作矢量(從4×4到16×16)計(jì)算動(dòng)作矢量,并在MCTF中應(yīng)用這樣的動(dòng)作矢量。例如對(duì)于16×16的大區(qū)域,編碼器(200)會(huì)為一個(gè)16×16分區(qū)、兩個(gè)16×8分區(qū)、兩個(gè)8×16分區(qū)或四個(gè)8×8分區(qū)計(jì)算動(dòng)作矢量,這里每個(gè)8×8分區(qū)可以進(jìn)一步拆分為兩個(gè)8×4分區(qū)、兩個(gè)4×8分區(qū)或四個(gè)4×4分區(qū)?;蛘撸幋a器(200)為更大區(qū)域(例如32×32)的較高空間分辨率視頻(如CIF)計(jì)算動(dòng)作矢量以便在只對(duì)較低空間分辨率視頻(如QCIF)解碼時(shí)更方便地利用動(dòng)作矢量。可替換地,編碼器(200)為其他尺度區(qū)域的動(dòng)作矢量計(jì)算動(dòng)作信息。
動(dòng)作估計(jì)(220)和MCTF的動(dòng)作精度取決于具體實(shí)現(xiàn)。例如動(dòng)作估計(jì)(220)和MCTF使用四分之一像素動(dòng)作矢量??蛇x擇地,動(dòng)作估計(jì)(220)和MCTF使用一些其他精度的動(dòng)作信息。例如,為了在只對(duì)QCIF視頻解碼時(shí)更方便地利用四分之一像素動(dòng)作矢量,編碼器(200)為CIF視頻計(jì)算二分之一像素動(dòng)作矢量和為4CIF視頻計(jì)算整數(shù)像素動(dòng)作矢量。
動(dòng)作估計(jì)(220)和MCTF的動(dòng)作矢量方向可能是前向、后向、雙向或內(nèi)部的。在一些實(shí)施例中,編碼器(200)設(shè)置動(dòng)作估計(jì)(220)和一個(gè)大區(qū)域每分區(qū)的補(bǔ)償方向?yàn)榍跋颉⒑笙?、雙向或內(nèi)部中的任何一個(gè)??蛇x擇地,編碼器(200)在一些其他級(jí)別設(shè)置方向和/或不允許一些方向(例如內(nèi)部)。
在一些實(shí)施例中,參考幀可以被填充(例如,通過(guò)簡(jiǎn)單的重復(fù)填充)以便允許參考幀之外的動(dòng)作估計(jì)/補(bǔ)償。利用雙線性濾波器、雙三次濾波器、正弦濾波器或一些其他濾波器,參考幀的內(nèi)插子像素產(chǎn)生抽樣值中的分?jǐn)?shù)動(dòng)作估計(jì)或補(bǔ)償?shù)某闃又?。在一些?shí)施例中,編碼器使用重疊區(qū)域動(dòng)作補(bǔ)償(“OBMC”)??蛇x擇地,動(dòng)作矢量范圍被限制在參考幀邊界內(nèi)和/或不使用OBMC。
下面將用5/3雙正多邊形子波結(jié)構(gòu)描述幾個(gè)MCTF的例子。可選擇地,編碼器(200)進(jìn)行其它數(shù)字和/或類型的時(shí)間子帶轉(zhuǎn)換(210)(例如Haar)和/或動(dòng)作估計(jì)(220)。圖2表示在全部空間分辨率視頻被時(shí)間轉(zhuǎn)換的的空間域MCTF??蛇x擇地,編碼器(200)在時(shí)間分解(210)之前包括一個(gè)或多個(gè)空間子帶轉(zhuǎn)換,并且MCTF是來(lái)自原始空間分解的空間子帶的帶內(nèi)MCTF。
在時(shí)間轉(zhuǎn)換(210)之后,編碼器(200)提供一個(gè)或多個(gè)二維(“2D”)空間子帶轉(zhuǎn)換(230)來(lái)進(jìn)一步分解信號(hào)。圖2顯示了兩級(jí)2D空間分解的輸出,其中具有垂直和水平的低空間分辨率的子帶被進(jìn)一步垂直地和水平地分解。例如2D空間子帶轉(zhuǎn)換是雙值離散子波轉(zhuǎn)換(“DWT”)。這種子波濾波器可以是,例如,9/7DWT濾波器或5/3DWT濾波器??蛇x擇地,編碼器(200)執(zhí)行其它數(shù)目(例如3或4)的空間子帶轉(zhuǎn)換和/或執(zhí)行其它類型的空間子帶轉(zhuǎn)換(230)。
在時(shí)間轉(zhuǎn)換(210)和空間轉(zhuǎn)換(230)之后,信號(hào)被組織成不同的時(shí)空子帶,其相應(yīng)于輸入視頻(205)的不同時(shí)空分辨率。編碼器(200)對(duì)子帶進(jìn)行熵編碼(240),例如,在一些實(shí)施例中,編碼器(200)使用具有最佳截?cái)嗟?D嵌入式分組編碼(EBCOT)。JPEG2000利用EBCOT的2D模式,在該實(shí)施例中的編碼器(200)基本上將2D EBCOT擴(kuò)展為3D編碼。由時(shí)間和空間轉(zhuǎn)換產(chǎn)生的每一個(gè)子帶,被分成獨(dú)立編碼的3D編碼塊。對(duì)于每個(gè)編碼塊,編碼器(200)應(yīng)用比特平面編碼和基于上下文的運(yùn)算編碼??商鎿Q地,編碼器(200)對(duì)子帶信息使用某種其它形式的熵編碼。
編碼器(200)也對(duì)動(dòng)作信息(例如,動(dòng)作矢量、動(dòng)作模式選擇信息)進(jìn)行編碼(250)。例如,編碼器(200)使用像簡(jiǎn)單可變長(zhǎng)度碼這樣的某種形式的熵編碼來(lái)對(duì)動(dòng)作矢量信息、大塊分區(qū)和動(dòng)作估計(jì)/補(bǔ)償?shù)姆较蜻M(jìn)行熵編碼。對(duì)于動(dòng)作矢量,編碼器(200)對(duì)動(dòng)作矢量與它的預(yù)測(cè)器之間的差進(jìn)行編碼。動(dòng)作矢量預(yù)測(cè)器可以從先前的編碼/解碼動(dòng)作矢量中利用中值預(yù)測(cè)或者某些其它的動(dòng)作矢量預(yù)測(cè)技術(shù)進(jìn)行計(jì)算。可替換地,編碼器(200)利用其它和/或額外的為動(dòng)作信息的編碼(250)技術(shù)。
擁有子帶轉(zhuǎn)換(210、230),編碼器(200)自然能支持空間可縮放性和時(shí)間/幀率可縮放性。此外,具有子帶系數(shù)比特平臺(tái)編碼,編碼器(200)通常也能夠支持質(zhì)量/信噪比(“SNR”)的可縮放性。
這些可縮放性對(duì)于在有可能出現(xiàn)錯(cuò)誤的網(wǎng)絡(luò)像國(guó)際互聯(lián)網(wǎng)或無(wú)線網(wǎng)絡(luò)上的視頻傳輸是非常有用的。不同的子帶可以進(jìn)行不同糾錯(cuò)或傳輸錯(cuò)誤恢復(fù)水平的編碼以便傳輸?;蛘撸煌訋Э梢砸圆煌瑑?yōu)先級(jí)進(jìn)行傳輸,其中網(wǎng)絡(luò)要支持優(yōu)先傳輸。
這些不同的可縮放性也能幫助不同設(shè)備分享同一壓縮視頻流,甚至不同設(shè)備具有不同存儲(chǔ)資源、計(jì)算能力、顯示尺寸、訪問(wèn)帶寬等。通過(guò)這種方式,以不同比特率進(jìn)行編碼視頻(205)的任務(wù)得到簡(jiǎn)化。
多級(jí)別時(shí)間分解的一個(gè)優(yōu)點(diǎn)是視頻信號(hào)的時(shí)間冗余能在很大程度上被利用。首先的幾個(gè)級(jí)別的時(shí)間子帶轉(zhuǎn)換可以利用幀附近中的時(shí)間冗余,最后幾個(gè)級(jí)別的時(shí)間子帶轉(zhuǎn)換可以利用較長(zhǎng)距離交叉的幀間的相關(guān)性。
圖4顯示了具有四層時(shí)間分解和一層空間分解的3D子帶視頻編碼器(400)的例子。實(shí)際上,圖4顯示了圖2中時(shí)間子帶轉(zhuǎn)換(210)的一種可能的擴(kuò)展,并且也顯示了不同級(jí)別時(shí)間分解的數(shù)據(jù)流。圖4也介紹了時(shí)間和空間分解的新的標(biāo)記法。
在圖4中,編碼器(400)對(duì)具有每秒f幀的幀率的視頻提供四級(jí)時(shí)間子帶轉(zhuǎn)換。每級(jí)時(shí)間子帶轉(zhuǎn)換Ti把輸入到本級(jí)的信號(hào)分成兩個(gè)時(shí)間子帶—時(shí)間低通子帶和時(shí)間高通子帶。從而每個(gè)子帶具有輸入到本級(jí)視頻信號(hào)的一半的幀率。在圖4中,字母t-Li和t-Hi分別代表在第i級(jí)時(shí)間轉(zhuǎn)換Ti之后輸出的低通子帶和高通子帶。t-Li和t-Hi的幀率均為f/2i。圖4中,信號(hào)t-Li被用時(shí)間子帶轉(zhuǎn)換Ti+1分解成幾個(gè)迭代以便利用長(zhǎng)距離相關(guān)和使得較低幀率的視頻能被解碼器解碼。
用簡(jiǎn)單的幾個(gè)例子來(lái)說(shuō)明,假定輸入視頻是每秒30幀(“fps”)的CTF視頻。從最先的時(shí)間分解中輸出的低通子帶t-L1是15fps的視頻,從最先的時(shí)間分解中輸出的高通子帶t-H1與此一樣。從第二次時(shí)間分解中輸出的子帶t-L2和t-H2是7.5fps的視頻,從第三次時(shí)間分解中輸出的子帶t-L3和t-H3是3.75fps的視頻。最后,從第四次時(shí)間分解中輸出的子帶t-L4和t-H4是1.875fps的視頻。在本例中空間分辨率對(duì)于所有輸出的低通和高通子帶均是CIF。
幀中的動(dòng)作信息以不同級(jí)別進(jìn)行估計(jì),而每一級(jí)別的時(shí)間轉(zhuǎn)換是根據(jù)當(dāng)前級(jí)別的運(yùn)動(dòng)軌跡來(lái)執(zhí)行的。這樣每個(gè)級(jí)別的時(shí)間分解產(chǎn)生了隨后被編碼的動(dòng)作矢量。圖4中,相應(yīng)于四級(jí)時(shí)間轉(zhuǎn)換,有四套動(dòng)作矢量。
輸出時(shí)間低通子帶T-L4和輸出時(shí)間高通子帶t-H1、t-H2、t-H3和t-H4用單一級(jí)別的2D空間子帶轉(zhuǎn)換S1來(lái)分解,這將各自的輸入子帶分解成低通水平、低通垂直(“LL”),低通水平、高通垂直(“LH”),高通水平、低通垂直(“HL”)和高通水平、高通垂直(“HH”)子帶??商鎿Q地,編碼器(400)在時(shí)間分解級(jí)別之前和/或之后包括其它和/或附加級(jí)別的時(shí)間分解,或者編碼器(400)使用不同的空間分解模式。
繼續(xù)以上以圖4開(kāi)始的幾個(gè)例子,低通子帶t-L4具有CIF空間分辨率。隨著單一級(jí)別的2D空間子帶轉(zhuǎn)換S1,時(shí)間子帶t-L4被分解成LL子帶、LH子帶、HL子帶和HH子帶。LL、LH、HL和HH子帶中的每一個(gè)具有QCIF分辨率。相似的是,每個(gè)時(shí)間高通子帶t-H1、t-H2、t-H3和t-H4以CIF分辨率開(kāi)始并被分解成為具有QCIF分辨率的LL、LH、HL和HH子帶。
被空間分解的子帶接著被熵編碼并輸出。
B視頻解碼器的范例圖3說(shuō)明了一般的3D子帶視頻解碼方案(300)。解碼器(300)接收壓縮視頻信息(395)并產(chǎn)生視頻圖像(305)序列(例如,改進(jìn)視頻幀、隔行掃描視頻幀或者隔行掃描視頻半幀)作為輸出。視頻解碼的特定實(shí)施例典型地使用一般解碼器(300)的變形或增補(bǔ)版本。
解碼器(300)對(duì)一些或全部空間-時(shí)間子帶的信息(395)進(jìn)行熵解碼(340)。視頻信息(395)仍被組成不同的空間-時(shí)間子帶,其相應(yīng)于輸入視頻(205)的不同的時(shí)間分辨率。以這種方法,解碼器(300)可以在不同的空間-時(shí)間分辨率之間進(jìn)行選擇,忽略壓縮比特流(395)的部分,或解碼器(300)可以只對(duì)解碼器(300)實(shí)際收到的壓縮比特流(395)的某些子集進(jìn)行解碼(340)。解碼器(300)實(shí)際上只對(duì)解碼器(300)解碼的信息執(zhí)行在編碼器(200)中進(jìn)行的熵編碼的(240)的反向處理。例如解碼器(300)接收并對(duì)以3D DBCOT編碼的信息進(jìn)行解碼(340)??商鎿Q地,解碼器(300)對(duì)一些或全部子帶信息采用某些其它形式的熵解碼。
當(dāng)解碼器(300)執(zhí)行反向MCTF(“IMCTF”)時(shí),解碼器(300)對(duì)動(dòng)作信息(例如,動(dòng)作矢量、動(dòng)作模式選擇信息)進(jìn)行解碼(350),在許多情況下執(zhí)行在編碼器(200)中執(zhí)行的編碼(250)的反向處理。例如,解碼器(300)使用像單一可變長(zhǎng)度編碼的解碼這樣的某種形式的熵解碼。對(duì)動(dòng)作矢量,解碼器(300)利用中值預(yù)測(cè)或某些其它動(dòng)作矢量預(yù)測(cè)技術(shù)來(lái)計(jì)算動(dòng)作矢量預(yù)測(cè),并且之后解碼器(300)用動(dòng)作矢量微分合并動(dòng)作矢量預(yù)測(cè)。可替換地,解碼器(300)使用其它和/或額外的解碼(350)技術(shù)。
解碼器(300)提供一個(gè)或多個(gè)2D反向空間子帶轉(zhuǎn)換(330)以空間地重建視頻。圖3顯示兩級(jí)2D反向空間分解的輸入和輸出。例如2D反向空間子帶轉(zhuǎn)換是雙值反向DWT(“IDWT”)??商鎿Q地,解碼器(300)執(zhí)行其它數(shù)目和/或類型的反向空間子帶轉(zhuǎn)換(330)。
解碼器(300)通過(guò)一個(gè)反向時(shí)間子帶轉(zhuǎn)換(310)來(lái)進(jìn)一步重建視頻信號(hào)。圖3顯示了來(lái)自低分辨率子帶和高分辨率子帶的單一級(jí)別的時(shí)間重建,但是該時(shí)間組合可能包括4、5個(gè)或一些其它數(shù)目級(jí)別的合成。
在圖3中,反向時(shí)間轉(zhuǎn)換(310)使用IMCTF,而解碼器(300)利用已解碼(350)動(dòng)作信息對(duì)視頻信號(hào)進(jìn)行動(dòng)作補(bǔ)償。通常,動(dòng)作信息和IMCTF的屬性(例如,動(dòng)作補(bǔ)償分區(qū)、動(dòng)作矢量的精確度、動(dòng)作補(bǔ)償方向、參考幀填充的使用、子像素插值、OBMC的使用)是在相應(yīng)的編碼器(200)中并且在壓縮視頻比特流(395)中發(fā)送信號(hào)。下面描述了IMCTF的幾個(gè)例子??商鎿Q地,解碼器(300)執(zhí)行其它數(shù)目和/或類型的反向時(shí)間子帶轉(zhuǎn)換(310)和/或動(dòng)作補(bǔ)償。圖3顯示了空間域的IMCTF,其中利用反向時(shí)間變換重建了全部空間分辨率視頻??蛇x擇地,解碼器(300)執(zhí)行帶內(nèi)MCTF。
回到圖4的編碼器(400),相應(yīng)的解碼器只能通過(guò)t-Li重建f/2i幀率的視頻?;蛘?,解碼器能通過(guò)t-Li和t-Hi(包括隨后的時(shí)間高通子帶的信息t-Hi+1等)重建f/2i-l幀率的視頻。
圖5顯示編碼器中具有四層時(shí)間分解和兩層空間分解以及在解碼器中具有相應(yīng)數(shù)目反向轉(zhuǎn)換的3D子帶視頻編碼解碼器(“編解碼器”)系統(tǒng)(500)的例子。實(shí)際上,圖5顯示了圖2和3中的編碼器(200)和解碼器(300)的其它可能版本。圖5還介紹了其它更簡(jiǎn)明的時(shí)間和空間分解以及他們反向操作的表示法。
在圖5中,編碼器向視頻提供四個(gè)級(jí)別的時(shí)間子帶轉(zhuǎn)換Ti(例如,T1、T2、T3和T4)以及向時(shí)間分解的結(jié)果提供兩個(gè)級(jí)別的空間子帶轉(zhuǎn)換Si(例如S1和S2)。編碼器接著執(zhí)行熵編碼E。解碼器執(zhí)行熵解碼E-1并對(duì)熵解碼執(zhí)行兩級(jí)反向空間子帶轉(zhuǎn)換Si-1(例如S2-1和S1-1)。解碼器接著向空間重建的結(jié)果提供四級(jí)反向時(shí)間子帶轉(zhuǎn)換Ti-1的四個(gè)級(jí)別(如T4-1、T3-1、T2-1和T1-1)。
III.動(dòng)作補(bǔ)償?shù)臅r(shí)間濾波為了提高編碼效率,在時(shí)間分解中提供動(dòng)作調(diào)整時(shí)間轉(zhuǎn)換(這里可選擇地稱作動(dòng)作補(bǔ)償時(shí)間濾波(“MCTF”))以便有效刪除時(shí)間冗余。MCTF的主要思想是當(dāng)應(yīng)用時(shí)間分解時(shí),在不同幀中調(diào)整像素。動(dòng)作調(diào)整3D編碼方案能提供像無(wú)補(bǔ)償一樣的可縮放性,或者甚至比其它編碼方案更好的編碼效率。
在各種MCTF方案中,基于提升的MCTF提供了靈活而有效的實(shí)施。圖6說(shuō)明了在給定的5/3正多邊子波的基于提升MCTF方案中輸入視頻幀、時(shí)間低通幀和時(shí)間高通幀之間的關(guān)系。
圖6顯示了輸入到MCTF的四個(gè)原始、索引視頻幀的像素欄。(輸入幀本身可以是,例如,從MCTF的前一級(jí)別中輸出的時(shí)間低通子帶。)圖6中的基于提升的子波變換包括兩個(gè)基本階段動(dòng)作補(bǔ)償預(yù)測(cè)(“MCP”)階段和動(dòng)作補(bǔ)償更新(“MCU”)階段。
在預(yù)測(cè)階段,對(duì)于奇數(shù)幀(例如,幀I2i+1),來(lái)自一個(gè)或多個(gè)相鄰偶數(shù)幀(例如,幀I2i和I2i+2)的動(dòng)作補(bǔ)償指示該奇數(shù)幀像素的動(dòng)作補(bǔ)償預(yù)測(cè)。高通幀(例如Hi)實(shí)質(zhì)上是奇數(shù)幀和對(duì)奇數(shù)幀的動(dòng)作補(bǔ)償預(yù)測(cè)的差。
在更新階段,一個(gè)或多個(gè)可利用的高通幀(例如幀Hi和Hi-1)的動(dòng)作補(bǔ)償指示了動(dòng)作補(bǔ)償?shù)母隆5屯◣?例如幀Li)實(shí)質(zhì)上是更新和偶數(shù)幀(例如幀I2i)之間的差。
圖7說(shuō)明編碼器中具有提升的常規(guī)MCTF,圖8說(shuō)明了解碼器中相應(yīng)的IMCTF。為保持一致,在本申請(qǐng)的圖7和圖8中以及其它地方,偶數(shù)視頻幀作為動(dòng)作補(bǔ)償預(yù)測(cè)的參考,并被用作低通幀的信息,以及奇數(shù)視頻幀是MCP的主體并用作高通視頻幀的信息??商鎿Q地,奇數(shù)幀和偶數(shù)幀的角色可交換。
在圖7的MCTF(700)中,偶數(shù)視頻幀被用作MCP(710)的參考。對(duì)于特定奇數(shù)幀I2i+1,編碼器根據(jù)一個(gè)或多個(gè)相鄰的偶數(shù)幀I2i和I2i+2計(jì)算動(dòng)作補(bǔ)償預(yù)測(cè)。在預(yù)測(cè)與原始奇數(shù)幀I2i+1,之間的差就是時(shí)間高通幀Hi。
高通幀Hi在MCU(720)中被用作參考。對(duì)于特定偶數(shù)視頻幀I2i,編碼器根據(jù)一個(gè)或兩個(gè)高通幀Hi-1和Hi為相鄰的奇數(shù)視頻幀計(jì)算動(dòng)作補(bǔ)償更新。更新與原始偶數(shù)幀I2i的合并就是時(shí)間低通幀Li。
例如,假設(shè)視頻幀序列I0、Ii、……I2n-1要用圖7中的MCTF(700)處理。預(yù)測(cè)模塊(710)按如下所示根據(jù)連續(xù)的偶數(shù)幀I2i和I2i+2來(lái)計(jì)算奇數(shù)幀I2i+1的預(yù)測(cè)P(I2i+1)。
P(I2i+1)=12(MC(I2i,MV2i+1->2i)+MC(I2i+2,MV2i+1->2i+2)---(1),]]>在這里MV2i+1->2i表示從幀I2i+1到幀I2i的動(dòng)作矢量,MV2i+1->2i+2具有相似意思,而MC()表示來(lái)自相鄰偶數(shù)幀的當(dāng)前奇數(shù)幀的預(yù)測(cè)的至少一部分的動(dòng)作補(bǔ)償。(等式(1)意思是說(shuō)明用于提供動(dòng)作矢量的大塊、大塊分區(qū)或者是其它部分的奇數(shù)幀的MCP,并且這樣的MCP被用于重復(fù)奇數(shù)幀其它的大塊、大塊分區(qū)等。)在一些情況下,編碼器在計(jì)算動(dòng)作補(bǔ)償預(yù)測(cè)時(shí)(像在Haar轉(zhuǎn)換中)只考慮相鄰偶數(shù)幀中的一個(gè)(而不是兩個(gè)),相應(yīng)地改變等式(1)中的MC屬性和權(quán)重;或者編碼器利用內(nèi)部壓縮對(duì)部分或全部奇數(shù)幀進(jìn)行編碼。結(jié)合嵌入式基層編解碼器,編碼器可以用除相鄰偶數(shù)幀以外的幀作為參考幀,如下面所述。
預(yù)測(cè)模塊(710)接著按如下所示計(jì)算高通幀Hi。
Hi=I2i+1-P(I2i+1)(2)。
在更新步驟(720),其接著預(yù)測(cè)步驟(710)來(lái)完成一級(jí)時(shí)間轉(zhuǎn)換,編碼器按如下所示根據(jù)相鄰高通幀為偶數(shù)幀I2i計(jì)算更新信息U(I2i)。
U(I2i)=14((MC(Hi-1,MV2i->2i-1)+MC(Hi,MV2i->2i+1))---(3).]]>這里MC()表示根據(jù)相鄰高通幀為偶數(shù)幀產(chǎn)生至少部分更新的動(dòng)作補(bǔ)償。作為一種簡(jiǎn)單方法,MCU的動(dòng)作矢量可以用相應(yīng)MCP動(dòng)作矢量的反轉(zhuǎn)得到。(等式(3)意思是說(shuō)明用于提供動(dòng)作矢量的大塊、大塊分區(qū)或者是其它部分的偶數(shù)幀的MCU,并且這樣的MCU被重復(fù)用于偶數(shù)幀其它的大塊、大塊分區(qū)等。)在一些情況下,編碼器在計(jì)算動(dòng)作補(bǔ)償更新時(shí)只考慮高通幀中的一個(gè)(而不是兩個(gè)),相應(yīng)地改變等式(3)中的MC屬性和權(quán)重;或者編碼器兩個(gè)高通幀均不考慮。
編碼器接著按如下所示產(chǎn)生低通幀。
Li=I2i+U(I2i) (4)。
在圖8的IMCTF(800)中,高通幀Hi在MCU(820)中被用作參考。對(duì)于特定偶數(shù)視頻幀I2i,解碼器根據(jù)高通幀Hi-1和Hi中的一個(gè)或全部為相鄰奇數(shù)視頻幀計(jì)算動(dòng)作補(bǔ)償?shù)母?。在更新和相?yīng)的偶數(shù)幀I2i的時(shí)間低通幀Li之間的差就是重建的偶數(shù)幀I2i。
在重建時(shí),偶數(shù)視頻幀在MCP(810)中被作為參考。對(duì)于特定奇數(shù)視頻幀I2i+1,解碼器根據(jù)相鄰重建偶數(shù)幀I2i和I2i+2中的一個(gè)或者兩個(gè)計(jì)算動(dòng)作補(bǔ)償?shù)念A(yù)測(cè)。預(yù)測(cè)與奇數(shù)幀I2i+1的相應(yīng)時(shí)間高通幀Hi的合并就是重建的奇數(shù)幀I2i+1。
在編碼器中,預(yù)測(cè)步驟的通常的目標(biāo)是和用于預(yù)測(cè)的動(dòng)作矢量一起最小化或者減少編碼高通幀(在空間分解和熵編碼中)所需的比特率。這樣,高通幀Hi實(shí)質(zhì)上是相應(yīng)的來(lái)自相關(guān)偶數(shù)索引原始視頻幀的奇數(shù)索引輸入視頻幀I2i+1的雙向MCP(或者前向MCP,或者后向MCP,視情況而定)的余量。接著,原始偶數(shù)索引幀I2i用預(yù)測(cè)余量更新為低通幀。
高通幀的能量取決于動(dòng)作模式的成功,后者取決于運(yùn)動(dòng)的復(fù)雜性、動(dòng)作交叉幀的一致性和動(dòng)作模式自身。如果動(dòng)作預(yù)測(cè)是精確的,那么預(yù)測(cè)殘余通常具有很小幅度。甚至在動(dòng)作被真實(shí)捕獲時(shí),然而,更新步驟仍是有用的,由于沿著運(yùn)動(dòng)軌跡的低通濾波他們能減少噪音和失真。通常,更新步驟有助于低通幀中高頻部分的刪除,因此提高了編碼效率。
如果動(dòng)作預(yù)測(cè)不準(zhǔn)確(例如,由于復(fù)雜、不可預(yù)測(cè)的動(dòng)作或者動(dòng)作模式自身的的不足),目標(biāo)特征可能不被校正,引發(fā)了幾個(gè)問(wèn)題。不準(zhǔn)確的動(dòng)作預(yù)測(cè)可能導(dǎo)致高通子帶幀中的多邊沿和能量的增加。這不僅僅損害了高通子帶自身的編碼壓縮性能,而且也在更新步驟中增加了時(shí)間低通幀的邊沿和輪廓的重影。
更普遍的是,當(dāng)具有時(shí)間可縮放性時(shí)更新步驟可能影響解碼性能。尤其是,例如,由于有限的信道帶寬或設(shè)備能力,當(dāng)一些時(shí)間高通幀部分或全部丟失時(shí),解碼器中可能出現(xiàn)問(wèn)題。(通常,IMCTF中的時(shí)間可縮放性的獲得是通過(guò)保留時(shí)間低通子帶同時(shí)丟棄時(shí)間轉(zhuǎn)換域中的高通子帶。)當(dāng)動(dòng)作預(yù)測(cè)無(wú)效時(shí),在編碼的更新步驟期間高通幀將噪聲帶給低通幀(也就是說(shuō),較低幀率的視頻)。當(dāng)視頻僅僅根據(jù)時(shí)間低通幀重建時(shí),高通幀的影響不能被解碼器中的MCU消除?;蛘撸绻麜r(shí)間高通幀信息被粗劣地量化,那么由于高通幀的影響只能在MCU中被近似地刪除,時(shí)間低通幀的質(zhì)量可能受到損害。因此,在更多比特被分配給低通幀用于編碼時(shí),低通幀中的重影也不能被消除。
一種可能的解決方法是在編碼器中跳過(guò)以提升為基礎(chǔ)的MCTF中的更新步驟。這會(huì)顯著降低編碼器的整體性能,因?yàn)椴还茉鯓?,更新步驟中由于沿運(yùn)動(dòng)軌跡的低通濾波能夠減少噪音和失真。而且,更新步驟通過(guò)在時(shí)間高通子帶和時(shí)間低通子帶中分散失真來(lái)減少解碼器中的整體失真。
IV.在MCTF和IMCTF中的自適應(yīng)更新在一些實(shí)施例中,可縮放視頻編碼器在以提升為基礎(chǔ)的MCTF中自適應(yīng)地執(zhí)行更新步驟和/或可縮放視頻解碼器在IMCTF中自適應(yīng)地執(zhí)行更新步驟。通過(guò)利用人工可視系統(tǒng)的特征,自適應(yīng)更新步驟提高從時(shí)間低通子帶解碼的低幀率視頻的可視質(zhì)量。同時(shí),對(duì)比常規(guī)更新步驟,自適應(yīng)更新步驟為從時(shí)間低通和時(shí)間高通子帶解碼的較高幀率的視頻保持了令人滿意的性能。
A 編碼器和解碼器范例自適應(yīng)更新方案在兩個(gè)相互矛盾的目標(biāo)(1)盡可能多地增加原始更新信息和(2)同時(shí)減少由更新步驟產(chǎn)生的視覺(jué)噪聲之間取得了良好的平衡。
圖9描述了編碼器中具有自適應(yīng)更新操作的MCTF框架(900),圖10描述了解碼器中具有自適應(yīng)更新操作的IMCTF框架(1000)。例如,框架(900,1000)像在參考圖2-5的描述那樣被并入編碼器和/或解碼器之中??商鎿Q地,自適應(yīng)更新操作被并入到另一種編碼器和/或解碼器中。
參考圖9,MCTF框架(900)包括預(yù)測(cè)(910)和更新(920)階段。這些階段基本上像參考圖7的描述那樣繼續(xù)進(jìn)行。
MCTF框架(900)使用人工可視系統(tǒng)(“HVS”)模型(930),按照視覺(jué)質(zhì)量對(duì)來(lái)自預(yù)測(cè)步驟的信號(hào)進(jìn)行估計(jì)。例如編碼器根據(jù)HVS模型(930)對(duì)偶數(shù)幀中的信息進(jìn)行估計(jì)。在一些實(shí)施例中,HVS模型(930)采用恰巧留意到差異(JND)的進(jìn)制。而在其它實(shí)施例中,HVS模型(930)使用其它已知標(biāo)準(zhǔn)。HVS模型(930)為閾值(940)階段提供閾值信息,該階段考慮閾值信息進(jìn)行估計(jì)并將結(jié)果提供給更新(920)階段。例如HVS模型(930)給根據(jù)這一模型估計(jì)的偶數(shù)幀的每一像素提供閾值。閾值的各種例子及它們?cè)诟虏僮鞯氖褂脤⒃谙旅婷枋???商鎿Q地,HVS模型(930)提供不同的閾值信息。
閾值(940)階段的結(jié)果是更新信息可以被限制在失真特別明顯的圖像的部分中,同時(shí)更新信息不對(duì)圖像的其它部分進(jìn)行限制。因此根據(jù)人們的感覺(jué),在更新信息被提供給偶數(shù)幀之前更新信息可以被自適應(yīng)的刪除或限制。
參考圖10,IMCTF框架(1000)也包括預(yù)測(cè)(1010)和更新(1020)階段。這些階段基本上像參考圖8的描述那樣進(jìn)展。
IMCTF框架(1000)使用HVS模型(1030)按照可視質(zhì)量估計(jì)信號(hào)。例如解碼器根據(jù)HVS模型(1030)估計(jì)低通幀中的信息。在一些實(shí)施例中,HVS模型(1030)使用恰巧留意到差異(“JND”)的進(jìn)制。在其它實(shí)施例中,HVS模型(1030)使用其它已知標(biāo)準(zhǔn)。
HVS模型(1030)向閾值階段(1040)提供閾值信息,閾值階段參考閾值信息進(jìn)行估計(jì)和為更新階段(1020)提供結(jié)果。例如,HVS模型(1030)提供按照該模型估計(jì)的低通幀的每像素的閾值。閾值的各種范例及它們?cè)诟虏僮髦械倪\(yùn)用將在下文描述。可替換地,HVS模型(1030)提供不同的閾值信息。
比較圖9和圖10,編碼器方的HVS模型(930)被提供給偶數(shù)幀,而解碼器方的HVS模型(1030)被提供給低通幀。即使在同樣的HVS模型(930,1030)被用在編碼器方和解碼器方,閾值也會(huì)有細(xì)微的差別。對(duì)于相應(yīng)的偶數(shù)和低通幀來(lái)說(shuō)閾值可能很類似是在可容忍的限度內(nèi),因?yàn)榫幋a器和解碼器狀態(tài)間的偏差是幀的局部(相對(duì)于隨時(shí)間累積和變壞)。
此外,在圖9和10的框架(900,1000)中,閾值在每一級(jí)MCTF/IMCTF進(jìn)行計(jì)算。就本身而言,閾值即使對(duì)于時(shí)間對(duì)應(yīng)的幀在不同級(jí)的MCTF/IMCTF也可能是不同的。
因此,在一些實(shí)施例中,編碼器方的MCTF(900)和解碼器方的IMCTF(1000)在HVS模型(930,1030)中應(yīng)用同樣的JND進(jìn)制。由于閾值在編碼器和解碼器中被獨(dú)立計(jì)算和應(yīng)用,所以沒(méi)有對(duì)和閾值相聯(lián)系的開(kāi)銷進(jìn)行編碼或閾值操作??商鎿Q地,編碼器向解碼器發(fā)送閾值信息或進(jìn)行判定,或者解碼器提供與編碼器不同的HVS模型。
B HVS模型和閾值操作的范例編碼器中的自適應(yīng)更新步驟通??梢园慈缦滤颈硎綥i=I2i+f(U2i)。函數(shù)f()是為偶數(shù)幀I2i提供更新U2i的自適應(yīng)函數(shù)。Li表示作為結(jié)果的低通幀。
自適應(yīng)函數(shù)利用人工可視模型的結(jié)果和推展。已經(jīng)進(jìn)行深入的研究以便發(fā)展基于人工可視系統(tǒng)的計(jì)算模型。在各種模型中,明確的標(biāo)準(zhǔn)是基于在HVS靈敏度以及在空間和時(shí)間域中亮度變化與對(duì)比度變化的激勵(lì)之間的不相容性的觀察。
在HVS的大量計(jì)算模型中,JND被廣泛用在可視編碼和圖片水印中。JND使用定義為亮度邊沿振幅函數(shù)的可視閾值,其中擾動(dòng)一直增加到人們剛好能看清為止。更多信息參見(jiàn)A.N.Netravali與B.Prasada所著的“Adaptive Quantizationof Picture Signals Using Spatial Masking”,Proc.IEEE,卷號(hào)65,頁(yè)數(shù)536-548(1977年4月)。JDN與HVS的紋理屏蔽特性有著密切關(guān)系。根據(jù)這一標(biāo)準(zhǔn),噪音在平面和沒(méi)有紋理的區(qū)域中更明顯,而噪音在具有邊沿和紋理的區(qū)域中就比較少見(jiàn)。
JND閾值是圖像的相關(guān)。只要更新信息保持小于JND閾值,在低通幀中就可獲得“更新殘余”的透明度。就本身而言,JND像在自適應(yīng)更新方案中的HVS模型一樣發(fā)揮很好的作用。在自適應(yīng)更新方案的實(shí)施例中,JND模型按如下所示定義。
JNDx(i,j)=1-11+θσx2(i,j)---(5)]]>其中σx2(i,j)表示中心在坐標(biāo)為(i,j)的像素的窗口內(nèi)的圖像x的局部變量。JND可以只根據(jù)亮度抽樣計(jì)算來(lái)降低計(jì)算的復(fù)雜性?;蛘撸琂ND可以根據(jù)亮度抽樣和色度抽樣來(lái)計(jì)算。窗口尺寸決定于實(shí)施。一個(gè)范例窗口的尺寸是3×3,另外一個(gè)是5×5。θ是為特定圖像選擇的調(diào)整參數(shù)。這與噪音能見(jiàn)度函數(shù)值一樣,假定了圖像是非靜止高斯的。調(diào)整參數(shù)θ在JND定義中起對(duì)比度調(diào)整的作用。為了使調(diào)整參數(shù)θ與圖像相關(guān),它可以按照如下所示進(jìn)行計(jì)算
θ=Dσxmax2---(6),]]>這里σxmax2是給定圖像最大局部變量,D∈[50,100]是實(shí)驗(yàn)決定參數(shù)。根據(jù)JND的定義,由于σx2(i,j)很小,JND的值在平整區(qū)域也很小,反之亦然。
更精確的表示編碼器中自適應(yīng)更新的方法是Li=I2i+f(I2i,U2i)(7),其中f(I2i,U2i)=U2i|U2i|<JNDI2i·SJNDI2i·SU2i≥JNDI2i·S-JNDI2i·SU2i≤-JNDI2i·S---(8).]]>JNDI2i是按上面定義的JNDx(i,j)的例子,S表示取決于實(shí)施的強(qiáng)度因子,例如12.5。JND函數(shù)與可視屏蔽相關(guān)的局部幀特征相適應(yīng)。如果局部亮度變量很大,JND相對(duì)大(根據(jù)等式(5)接近1),指示為繁忙或復(fù)雜的區(qū)域。另一方面,如果局部亮度變量小,JND相對(duì)小(根據(jù)等式(5)接近0),指示為平整的區(qū)域。它是根據(jù)要在編碼器中更新的偶數(shù)索引幀以及解碼器中的偶數(shù)索引幀(實(shí)際上,低通圖像近似閾值)計(jì)算的。結(jié)果,自適應(yīng)更新可以有效地減少高通幀導(dǎo)致的重影以及提供時(shí)間縮放的編碼性能。
像上面提到的,在一些實(shí)施例中,編碼器和解碼器使用相同的JND進(jìn)制和閾值(隨等式(8)中索引值等而改變),對(duì)于自適應(yīng)更新操作沒(méi)有任何開(kāi)銷要進(jìn)行編碼和分發(fā)給解碼器。雖然編碼器和解碼器操作不同的圖像(在編碼器中的原始幀和解碼器中重建的低通版本),實(shí)驗(yàn)結(jié)果顯示在解碼器中更新屏蔽的結(jié)果是很接近的編碼器中的近似值的。
可替換地,編碼器和/或解碼器利用其它定義的JND、其它HVS模型和/或其它閾值操作。例如可以采用其它和/或附加參數(shù)。
C 自適應(yīng)更新技術(shù)的范例圖11到圖13說(shuō)明了自適應(yīng)更新操作技術(shù)(1100,1200,1300)。一個(gè)像參考圖9描述的那樣的編碼器實(shí)現(xiàn)圖11和12中所示的技術(shù)(1100,1200),一個(gè)像參考圖10描述的那樣的解碼器實(shí)現(xiàn)圖11和13中所示的技術(shù)(1100,1300)。可替換地,其它編碼器或解碼器都可以實(shí)現(xiàn)該技術(shù)(1100,1200,1300)。
圖11顯示自適應(yīng)更新操作的簡(jiǎn)單、概括的技術(shù)(1100)。編碼器或解碼器為自適應(yīng)更新計(jì)算(1120)閾值。解碼器或編碼器接著執(zhí)行(1160)自適應(yīng)更新操作。
圖12顯示在編碼器中自適應(yīng)更新操作的詳細(xì)技術(shù)(1200),包括附加特征MCP。
對(duì)于當(dāng)前為之計(jì)算低通幀的偶數(shù)幀,編碼器計(jì)算(1220)閾值。例如;編碼器為像在前面部分描述的當(dāng)前偶數(shù)幀的像素計(jì)算JND??商鎿Q地,編碼器采用某些其它進(jìn)制計(jì)算(1220)閾值。
對(duì)于MCP,編碼器根據(jù)當(dāng)前偶數(shù)幀計(jì)算(1230)一個(gè)或多個(gè)動(dòng)作補(bǔ)償預(yù)測(cè),例如,前向和/或后向預(yù)測(cè)相鄰奇數(shù)幀。編碼器可以根據(jù)其它的偶數(shù)幀為相鄰奇數(shù)幀計(jì)算(1230)一個(gè)或多個(gè)其它的動(dòng)作補(bǔ)償預(yù)測(cè)(或者這種預(yù)測(cè)可以根據(jù)較早偶數(shù)幀提前地進(jìn)行計(jì)算)。編碼器(1240)接著根據(jù)動(dòng)作補(bǔ)償預(yù)測(cè)和他們相應(yīng)的相鄰奇數(shù)幀來(lái)計(jì)算一個(gè)或多個(gè)高通幀。
接下來(lái),編碼器根據(jù)一個(gè)或多個(gè)高通幀為當(dāng)前偶數(shù)幀計(jì)算(1250)動(dòng)作補(bǔ)償更新。例如,編碼器反向應(yīng)用在MCP(1230)期間根據(jù)當(dāng)前偶數(shù)幀計(jì)算的動(dòng)作信息??商鎿Q地,編碼器使用不同的機(jī)制來(lái)計(jì)算(1250)更新。
編碼器接著為當(dāng)前偶數(shù)幀進(jìn)行(1260)自適應(yīng)更新,并以低通幀作為結(jié)果。例如編碼器利用動(dòng)作補(bǔ)償更新和前面部分描述的JND閾值來(lái)進(jìn)行自適應(yīng)閾值操作。可替換地,編碼器可以利用不同的閾值機(jī)制來(lái)進(jìn)行(1260)自適應(yīng)更新。
編碼器(1290)決定是否繼續(xù)使用MCTF,以及如果繼續(xù),則以下一個(gè)偶數(shù)幀繼續(xù)。
圖13顯示在解碼器中的自適應(yīng)更新操作的詳細(xì)技術(shù)(1300),包括不同幀率的分開(kāi)的解碼路徑。
解碼器為解碼確定(1310)時(shí)間分辨率。時(shí)間分辨率可以根據(jù)使用者等級(jí)設(shè)置或某些其它設(shè)置來(lái)確定,根據(jù)解碼器實(shí)際接收的信息量的多少(例如,只有通過(guò)易于出錯(cuò)信道的時(shí)間低相應(yīng)息)來(lái)確定的,或者由某種其它方法決定??商鎿Q地,解碼器可以只有一條解碼路徑。例如,一個(gè)解碼器可以包括低幀率路徑同時(shí)另一個(gè)解碼器包括高幀率路徑,以適應(yīng)各自解碼器的資源。
在低幀率路徑中,解碼器根據(jù)接收到的低通幀信息(例如使用低通幀作為當(dāng)前幀)來(lái)計(jì)算(1312)當(dāng)偶數(shù)幀。由于高相應(yīng)息和動(dòng)作信息被忽略或不能接收,所以不執(zhí)行自適應(yīng)更新操作。即使缺少這種信息,由于編碼期間的自適應(yīng)更新操作,由于在編碼期間偶數(shù)幀顯著失真的增加被限制,所以當(dāng)前偶數(shù)幀的質(zhì)量被提高了(和常規(guī)IMCTF相比)。
在高幀率路徑中,對(duì)于當(dāng)前偶數(shù)幀,解碼器根據(jù)被解碼器接收的相應(yīng)低通幀計(jì)算(1320)閾值。例如解碼器為前面部分描述的低通幀的像素計(jì)算JND。可替換地,解碼器使用某個(gè)其它進(jìn)制計(jì)算(1320)閾值。
解碼器根據(jù)一個(gè)或多個(gè)高通幀來(lái)為當(dāng)前偶數(shù)幀來(lái)計(jì)算(1330)動(dòng)作補(bǔ)償更新(值)。例如解碼器反向應(yīng)用在當(dāng)前偶數(shù)幀的MCP(1230)期間計(jì)算的動(dòng)作信息??商鎿Q地,解碼器可使用不同機(jī)制來(lái)計(jì)算(1330)更新。
解碼器接著對(duì)低通幀執(zhí)行(1360)自適應(yīng)更新來(lái)重建當(dāng)前偶數(shù)幀。例如解碼器利用更新和前面部分中描述的JND閾值來(lái)執(zhí)行自適應(yīng)閾值操作??商鎿Q地,解碼器可以利用不同閾值機(jī)制來(lái)執(zhí)行(1360)自適應(yīng)更新。
對(duì)于MCP,解碼器根據(jù)重建的當(dāng)前偶數(shù)幀來(lái)計(jì)算(1370)一個(gè)或多個(gè)動(dòng)作補(bǔ)償預(yù)測(cè),例如前向和/或后向以便預(yù)測(cè)相鄰奇數(shù)幀。(其它給相鄰奇數(shù)幀的動(dòng)作補(bǔ)償預(yù)測(cè)可以由較早偶數(shù)幀被提前地計(jì)算。)解碼器接著根據(jù)奇數(shù)幀和相應(yīng)高通幀的動(dòng)作補(bǔ)償計(jì)算(1380)重建的奇數(shù)幀。
解碼器確定(1390)是否繼續(xù)IMCTF,以及如果是,則用下一個(gè)偶數(shù)幀繼續(xù)。
在圖12和圖13中顯示的各種操作都可以被分解、與其它操作組合,或重新排列。例如,雖然圖12以并行方式顯示某些操作,然而這些操作可以代替地以串行方式執(zhí)行。
V.3D子帶視頻編碼和解碼中的嵌入式基層編解碼器在一些實(shí)施例中,可縮放視頻編碼器包括嵌入式基層編解碼器和包含在嵌入式基層解碼器中的可縮放視頻解碼器?;旧?,由嵌入式基層編解碼器產(chǎn)生的比特流是作為低比特率、3D子帶視頻編碼比特流的基層用的。在一些可縮放視頻編碼/解碼系統(tǒng)的背景中,例如基層視頻以最小空間、時(shí)間和SNR分辨率為系統(tǒng)提供視頻,根據(jù)加入系統(tǒng)的附加的增強(qiáng)層為系統(tǒng)提供縮放允許的最大空間、時(shí)間和SNR分辨率。(在編碼和解碼中基層的確切作用在不同實(shí)施例中不同。)例如3D子帶視頻編碼器包括嵌入式視頻編解碼器而3D子帶視頻解碼器包括相應(yīng)的嵌入式視器解碼器。
對(duì)于許多類型的嵌入式編解碼器,這提高了低比特率的編碼性能,其中這比特在常規(guī)3D子帶編碼中編碼動(dòng)作信息花費(fèi)的比特消耗了可用比特率的無(wú)效率的部分,相比較而言,嵌入式視頻編解碼器更有效率。在一些情況下,嵌入式編解碼器提供諸如閉環(huán)時(shí)間預(yù)測(cè)、內(nèi)環(huán)濾波和失真率優(yōu)化而沒(méi)有與3D子帶編碼相關(guān)的制約的優(yōu)點(diǎn)。同時(shí),3D子帶在中等和較高比特率編碼的優(yōu)點(diǎn)(例如空間和時(shí)間的可縮放性)被保持下來(lái)。
在3D子帶視頻編碼中嵌入視頻編解碼器的另一個(gè)優(yōu)點(diǎn)是為嵌入式編解碼器和相應(yīng)解碼器提供兼容。例如如果MPEG-1編解碼是嵌入式,任何具有MPEG-1解碼能力的接收機(jī)能對(duì)壓縮視頻(即使MPEG-1編解碼器本身沒(méi)有改進(jìn)編碼性能)的粗略版本進(jìn)行解碼。如果H.264或VC-1編解碼器是嵌入式的,除了兼容性外,這還在低比特率的情況下提高了編碼性能。
這里描述的技術(shù)和工具并不是對(duì)具有性能和/或兼容上的優(yōu)點(diǎn)的系統(tǒng)的限制。除了性能和兼容性,在可縮放視頻編碼器中的嵌入式基層編解碼器和在可縮放視頻解碼器中的嵌入式視頻解碼器還具有其它優(yōu)點(diǎn)。
A 編碼器和解碼器范例圖14至圖19說(shuō)明了在編碼器或解碼器中分別嵌入基層編解碼器或解碼器的三種不同方案。在編碼器中,用于基層的編解碼器被嵌在時(shí)間子帶轉(zhuǎn)換中,空間子帶轉(zhuǎn)換跟著時(shí)間子帶轉(zhuǎn)換之后。附加的空間子帶轉(zhuǎn)換可以放在時(shí)間子帶轉(zhuǎn)換之前和/或之后,也對(duì)解碼器中的可能位置作相應(yīng)地改變?;鶎泳幗獯a器可以被放在各種轉(zhuǎn)換間的不同位置,相應(yīng)地改變?cè)诮獯a器中的可能位置。
通常,嵌入式編解碼器的位置為基層視頻設(shè)置了幀率和空間分辨率。為了簡(jiǎn)化在圖14至圖19中顯示三個(gè)方案之間的比較,基層分辨率被設(shè)置為原始視頻的四分之一幀率和二分之一的空間分辨率。這樣,如果原始視頻是30fps CIF視頻,例如,基層視頻就為7.5fps QCIF視頻。
這樣,在圖14、16和18的編碼器中基層編解碼器是在兩個(gè)時(shí)間子帶轉(zhuǎn)換之后,在圖15、17和19中的解碼器中基層解碼器在兩個(gè)反向時(shí)間子帶轉(zhuǎn)換之前。改變基層編碼器和解器碼在時(shí)間轉(zhuǎn)換中的位置是一種改變基層幀率的方法。例如通過(guò)圖14、16和18中顯示嵌入式基層模塊接收t-L2子帶作為輸入,可替換地基層模塊被放在t-L1子帶轉(zhuǎn)換或其它子帶轉(zhuǎn)換之后。通常,基層模塊在時(shí)間轉(zhuǎn)換中的位置取決于想要的基層視頻的幀率。
在圖14、16和18中,基層空間分辨率的改變是通過(guò)抽樣操作或空間轉(zhuǎn)換操作以及一些隨機(jī)因素(相鄰嵌入式編解碼器或解碼器)來(lái)完成的。改變抽樣/空間子帶轉(zhuǎn)換操作的比率是一種改變基層空間分辨率的方法。
圖14、16和18中包括時(shí)間子帶轉(zhuǎn)換模塊T、空間子帶轉(zhuǎn)換模塊S和MV編碼及熵編碼模塊,還有這些模塊的輸入和輸出。圖15、17和19包括反向時(shí)間子帶轉(zhuǎn)換模塊T-1、反向空間子帶轉(zhuǎn)換模塊S-1、MV解碼和熵解碼模塊,還有這些模塊的輸入和輸出。一般,這些模塊的作用和它們的輸入/輸出如參考圖2至5討論的那樣。
圖14、16和18中所示的基層編解碼器,以及圖15、17和19中相應(yīng)的基層解碼器可以是產(chǎn)生遵從標(biāo)準(zhǔn)的比特流(例如MPEG-1,MPEG-2,MPEG-4,H.261,H.263,H.264/AVC,或者VC-1)?;蛘撸鶎泳幗獯a器/解碼器能成為商品(如WMV8,WMV9)。更普遍地,基層編解碼器/解碼器可以是任何能夠獲得的具有期望性能和/或兼容特性的編解碼器/解碼器。
1 第一種方案圖14顯示了根據(jù)第一種方案的3D子帶編碼器(1400),編碼器(1400)包括嵌入式基層編解碼器(1420)以及在基層編解碼器(1420)左右的降抽樣模塊(1410)和升抽樣模塊(1430)。
降抽樣模塊(1410)和升抽樣模塊(1430)是可選的。它們?cè)谇度胧骄幗獯a器(1420)進(jìn)行編碼的視頻具有比輸入到嵌入式編解碼器(1420)的時(shí)間子帶低的空間分辨率時(shí)被使用。另外,降抽樣模塊(1410)和一個(gè)升抽樣模塊(1430)可以被跳過(guò)。
在圖14中虛線框包括了與在兩級(jí)時(shí)間分解之后和基層編解碼器(1420)相關(guān)的操作。對(duì)于基層,輸入視頻是每秒f/4幀,而分辨率可以被降抽樣模塊(1410)減少。因此,基層視頻提供低幀率和(潛在的)原始視頻低空間分辨率的表示。
降抽樣模塊(1410)使用簡(jiǎn)單的子抽樣、低通濾波器以及其它濾波機(jī)制對(duì)t-L2時(shí)間子帶進(jìn)行降抽樣。例如降抽樣模塊(1410)利用兩個(gè)水平或垂直因子減少空間分辨率。在一些實(shí)施例中,降抽樣模塊(1410)采用MPEG濾波器,像在文獻(xiàn)由Bjontegaard等著的文獻(xiàn)“H.263 Anchors-Technical Description”中描述的那樣,或者Daubechies 9/7 DWT濾波器中被描述。尤其是,降抽樣模塊(1410)根據(jù)任一隨機(jī)比率改變嵌入式編解碼器(1420)的輸入的空間分辨率來(lái)獲得想要的空間分辨率和/或匹配基層編解碼器(1420)允許的輸入空間分辨率。
嵌入式編解碼器(1420)利用嵌入式編解碼器(1420)的常用操作來(lái)對(duì)降抽樣的t-L2時(shí)間子帶(所示的ts-LL子帶)編碼。嵌入式編解碼器(1420)以基層分辨率生成輸出的基層比特流(1495),其中基層比特流(1495)和相應(yīng)的基層解碼器是兼容的。為了在編碼器(1400)中后續(xù)編碼的目的,嵌入式編解碼器(1420)還利用嵌入式編解碼器(1420)的相應(yīng)解碼操作來(lái)對(duì)ts-LL子帶進(jìn)行解碼,以生成重建子帶ts-LL’。
升抽樣模塊(1430)利用某些濾波機(jī)制對(duì)從基層編解碼器(1420)的重建輸出的子帶ts-LL’進(jìn)行升抽樣,以產(chǎn)生時(shí)間子帶t-L2的重建版本t-L2’。重建子帶t-L2’具有與t-L2相同的分辨率。例如升抽樣模塊(1430)通過(guò)兩個(gè)水平或垂直因子來(lái)增加空間分辨率。在一些實(shí)施例中,升抽樣模塊(1430)采用簡(jiǎn)易6抽頭濾波器{-1,5,20,20,5,-1}、像在由Chen等著的“Improved MC-EZBCwith Quarter-pixel Motion Vectors”中描述的8抽頭正弦濾波器或者Daubechies 9/7IDWT濾波器。升抽樣濾波器不需要和降抽樣濾波器對(duì)稱—例如MPEG濾波器可能被用來(lái)降抽樣,而IDWT濾波器可以用作升抽樣。尤其是,升抽樣模塊(1430)通過(guò)任一隨機(jī)比率改變嵌入式編解碼器(1420)的輸出的空間分辨率,以便恢復(fù)視頻在降抽樣模塊(1410)之前具有的空間分辨率。
編碼器(1400)從原始時(shí)間子帶t-L2減去重建版本t-L2’。這產(chǎn)生一個(gè)差或者殘余子帶t-L2”。當(dāng)基層編解碼器(1420)是有高效的(例如VC-1或H.264/AVC)以及基層比特率是足夠的,基層質(zhì)量可以相對(duì)較好,因此子帶差沒(méi)有很多能量。另一方面,當(dāng)基層編解碼器(1420)是低效的或基層比特率是不充分的,基層質(zhì)量可能相對(duì)較差,因此子帶差具有更多能量。
編碼器(1400)在子帶差t-L2”基礎(chǔ)上執(zhí)行兩個(gè)更深級(jí)別的時(shí)間分解。最后,編碼器(1400)在各自子帶(例如t-H1,t-H2,t-H3,t-H4和t-L4)執(zhí)行空間轉(zhuǎn)換和熵編碼以生成可縮放比特流。
圖15顯示了根據(jù)第一種方案的相應(yīng)的3D子帶解碼器(1500),解碼器(1500)包括嵌入式基層解碼器(1520)以及在基層解碼器(1520)之后的升抽樣模塊(1530)。
升抽樣模塊(1530)是可選的。它被用在當(dāng)由嵌入式解碼器(1520)解碼的視頻具有比輸出到下流反向時(shí)間轉(zhuǎn)換級(jí)別的時(shí)間子帶t-L2低的空間分辨率時(shí)。否則,抽樣模塊(1530)可以被跳過(guò)。
圖15中的虛線框包括了與在兩個(gè)附加級(jí)別的反向時(shí)間分解之前的和基層編解碼器(1520)相關(guān)的操作。對(duì)于基層,視頻是每秒f/4幀,而空間分辨率可能已經(jīng)減少了。因此,基層視頻提供了低幀率和(潛在地)低空間分辨率的視頻的表示。實(shí)際上,具有低幀率和(潛在地)低空間分辨率的視頻可以直接被基層解碼器(1520)解碼并輸出。
另外,解碼器(1500)對(duì)來(lái)自解碼器(1500)將用于重建視頻的可縮放比特流(例如t-H1、t-H2、t-H3、t-H4和t-L4)的任一個(gè)子帶執(zhí)行熵解碼和反向空間分解。解碼器(1500)根據(jù)t-H3、t-H4和t-L4子帶和相關(guān)的動(dòng)作信息執(zhí)行第三和第四級(jí)反向時(shí)間分解來(lái)重建子帶差t-L2”。
嵌入式解碼器(1520)接收以基層分辨率編碼的視頻的基層比特流(1595)。使用適當(dāng)?shù)慕獯a操作,嵌入式解碼器(1520)對(duì)在基層比特流(1595)中壓縮的降抽樣的子帶ts-LL進(jìn)行解碼,以產(chǎn)生子帶的一個(gè)重建版本ts-LL’。
升抽樣模塊(1530)采用某種濾波機(jī)制對(duì)來(lái)自基層解碼器(1520)的重建子帶ts-LL’進(jìn)行升抽樣,以產(chǎn)生時(shí)間子帶t-L2的重建版本t-L2’。重建子帶t-L2’與t-L2具有相同的分辨率。例如升抽樣模塊(1530)通過(guò)兩個(gè)水平或垂直因子來(lái)增加空間分辨率。尤其是,升抽樣模塊(1530)通過(guò)任一隨機(jī)比率改變從嵌入式編解碼器(1520)輸出的空間分辨率來(lái)恢復(fù)視頻在任何基層降抽樣之前的空間分辨率。
解碼器(1500)將重建子帶差t-L2”加到相應(yīng)的重建子帶t-L2’上。這樣產(chǎn)生時(shí)間低通子帶t-L2的重建版本,這個(gè)版本被輸入到反向時(shí)間分解的剩余部分。
2.第二種方案圖16顯示了根據(jù)第二種方案的3D子帶編碼器(1600)。編碼器(1600)包括嵌入式基層編解碼器(1620)以及在基層編解碼器(1620)左右的DWT模塊(1610)和IDWT模塊(1630)。
像在圖14中顯示的降抽樣模塊(1410)和升抽樣模塊(1430)一樣,DWT模塊(1610)和IDWT模塊(1630)是可選的。它們?cè)谟汕度胧骄幗獯a器(1620)進(jìn)行編碼的視頻具有比輸入到嵌入式編解碼器(1620)的時(shí)間子帶t-L2低的空間分辨率時(shí)被使用。否則,DWT模塊(1610)和IDWT模塊(1630)可以被跳過(guò)。
在圖16中虛線框包括了與兩級(jí)時(shí)間分解之后的基層編解碼器(1620)的相關(guān)操作。DWT模塊(1610)處理t-L2時(shí)間子帶,以生成低通子帶ts-LL。一般地,DWT模塊(1610)改變嵌入式編解碼器(1620)的輸入的空間分辨率以便獲得想要的基層空間分辨率和/或匹配被基層編解碼器(1620)允許的輸入空間分辨率。DWT模塊(1610)也生成路由到IDWT模塊(1630)的空間高通子帶ts-LH、ts-HL和ts-HH。
嵌入式編解碼器(1620)利用任何嵌入式編解碼器(1620)的常用操作來(lái)對(duì)ts-LL子帶進(jìn)行編碼。嵌入式編解碼器(1620)以基層分辨率生成輸出的基層比特流(1695)。嵌入式編解碼器(1620)也利用嵌入式編解碼器(1620)的相應(yīng)解碼操作來(lái)對(duì)ts-LL子帶進(jìn)行解碼,以生成重建子帶顯示ts-LL’。
解碼器(1600)從原始ts-LL子帶減去其重建版本ts-LL’。這產(chǎn)生一個(gè)殘余子帶ts-LL”。和圖14的編碼器(1400)的情況相同,當(dāng)基層編碼器(1620)是有效的和基層比特率是充分的,殘余ts-LL”通常沒(méi)有很多能量。另一方面,當(dāng)基層編解碼器(1620)是低效率的或基層比特率是不充分的時(shí),殘余ts-LL”具有更多的能量。
從殘余子帶ts-LL”和空間高通子帶ts-LH、ts-HL和ts-HH中,IDWT模塊(1630)生成新的殘余子帶t-L2”。新的殘余子帶t-L2”與被輸入到DWT模塊(1610)的子帶t-L2具有相同的空間分辨率。
編碼器(1600)在殘余子帶t-L2”上執(zhí)行兩個(gè)更深級(jí)別的時(shí)間分解。最后編碼器(1600)在各自子帶(如t-H1、t-H2、t-H3、t-H4和t-L4)執(zhí)行空間轉(zhuǎn)換和熵編碼以生成可縮放比特流。
圖17顯示了根據(jù)第二種方案的相應(yīng)3D子帶解碼器(1700)。解碼器(1700)包括嵌入式基層解碼器(1720)以及在基層解碼器(1720)左右的DWT模塊(1710)和IDWT模塊(1730)。
DWT模塊(1710)和IDWT模塊(1730)是可選的。它們被用在當(dāng)由嵌入式解碼器(1720)進(jìn)行編碼的視頻具有比輸出到下流反向時(shí)間轉(zhuǎn)換級(jí)別的時(shí)間子帶t-L2的空間分辨率低時(shí)。否則,DWT模塊(1710)和IDWT模塊(1730)可以被跳過(guò)。
圖17中虛線框包括了在兩個(gè)附加級(jí)別的反向時(shí)間分解之前和基層解碼器(1720)相關(guān)的操作?;鶎咏o出了低幀率和(潛在地)低空間分辨率的視頻的表示,并且這樣較低空間分辨率的視頻能被基層解碼器(1720)直接解碼并輸出。
另外,解碼器(1700)對(duì)來(lái)自解碼器(1700)將用于重建視頻的可縮放比特流(例如t-H1、t-H2、t-H3、t-H4和t-L4)的任一個(gè)子帶執(zhí)行熵解碼和反向空間分解。解碼器(1700)根據(jù)t-H3、t-H4和t-L4子帶和相關(guān)的動(dòng)作信息執(zhí)行第三和第四級(jí)反向時(shí)間分解來(lái)重建殘余子帶t-L2”。
DWT模塊(1710)處理殘余子帶t-L2”,生成空間低通殘余子帶ts-LL”的重建版本以及空間高通子帶ts-LH”、ts-HL”和ts-HH”。通常,DWT模塊(1710)改空間分辨率以便低通殘余子帶ts-LL”能在空間分辨率方面匹配嵌入式解碼器(1720)的輸出。
嵌入式解碼器(1720)接收以基層分辨率進(jìn)行編碼的視頻的基層比特流(1795)。使用適當(dāng)?shù)慕獯a操作,嵌入式解碼器(1720)可以對(duì)在基層比特流(1795)中壓縮的轉(zhuǎn)換子帶ts-LL進(jìn)行解碼,生成子帶的重建版本ts-LL’。
嵌入式解碼器(1700)將重建殘余子帶ts-LL”加到從嵌入式解碼器(1720)輸出的相應(yīng)重建子帶ts-LL’。這樣生成原始ts-LL子帶的重建版本。
IDWT模塊(1730)接著將從DWT模塊(1710)中輸出的空間高通子帶ts-LH”、ts-HL”和ts-HH”和重建ts-LL子帶合并。這樣生成時(shí)間低通子帶t-L2的重建版本,其被輸入到反向時(shí)間分解的剩余部分。
3.第三方案在先前的兩個(gè)編碼方案中,基層編解碼器被嵌在時(shí)間轉(zhuǎn)換之中以及殘余信號(hào)在后來(lái)的時(shí)間轉(zhuǎn)換之中被進(jìn)一步分解。與此相反,在第三個(gè)編碼方案中,后來(lái)的時(shí)間轉(zhuǎn)換被用到時(shí)間低通幀中(與殘余幀相反)。
圖18顯示了根據(jù)第三個(gè)方案的3D子帶編碼器(1800)。編碼器(1800)包括嵌入式基層編解碼器(1820)以及在基層編解碼器(1820)左右的降抽樣模塊(1810)和升抽樣模塊(1830)。圖18中的虛線框包括了在兩級(jí)時(shí)間分解之后的基層編解碼器(1820)的相關(guān)操作。像圖14中所示的編碼器(1400)的相應(yīng)模塊一樣,降抽樣模塊(1810)和升抽樣模塊(1830)是可選的。和在第二和第三時(shí)間轉(zhuǎn)換之間的可縮放視頻一樣,基層視頻是每秒f/4幀,而分辨率可以由下抽樣模塊(1810)減少。因此,基層視頻再次提供了低幀率和(潛在地)低空間分辨率的原始視頻的表示。
降抽樣模塊(1810)使用簡(jiǎn)單子抽樣、低通濾波器或其它濾波機(jī)制對(duì)t-L2時(shí)間子帶降抽樣。通常,降抽樣模塊(1810)根據(jù)任一隨機(jī)比率改變嵌入式編解碼器(1820)的輸入的空間分辨率,來(lái)獲得想要的基層空間分辨率和/或匹配被基層編解碼器(1820)允許的輸入空間分辨率。
嵌入式編解碼器(1820)利用嵌入式編解碼器(1820)的常用操作對(duì)降抽樣t-L2子帶(圖示為ts-LL子帶)進(jìn)行編碼。嵌入式編解碼器(1820)以基層分辨率生成最低比特率的輸出基層比特流(1895),其中基層比特流(1895)和相應(yīng)基層解碼器是兼容的。為了編碼器(1800)中后面編碼的目的,嵌入式編解碼器(1820)還利用嵌入式編解碼器(1820)的相應(yīng)解碼操作來(lái)對(duì)ts-LL子帶解碼,以生成重建子帶顯示ts-LL’。
升抽樣模塊(1830)利用一些濾波器機(jī)制對(duì)基層編解碼器(1820)的重建輸出子帶ts-LL’進(jìn)行升抽樣,生成時(shí)間子帶t-L2的重建版本t-L2’。重建子帶t-L2’與t-L2具有相同的分辨率。通常,升抽樣模塊(1830)利用隨機(jī)比率改變嵌入式編解碼器(1820)的輸出的空間分辨率來(lái)恢復(fù)視頻在降抽樣模塊(1810)之前具有的空間分辨率。
編碼器(1800)在原始(基層預(yù)處理)時(shí)間子帶t-L2上執(zhí)行第三和第四級(jí)別的時(shí)間轉(zhuǎn)換。對(duì)于第三和第四級(jí)別的時(shí)間轉(zhuǎn)換,編碼器(1800)為時(shí)間高通子帶t-H3和t-H4計(jì)算動(dòng)作補(bǔ)償預(yù)測(cè)。像期望的那樣,時(shí)間子帶t-L2為第三級(jí)別時(shí)間轉(zhuǎn)換中的動(dòng)作補(bǔ)償提供預(yù)選參考幀(例如,偶數(shù)幀t-L2),時(shí)間子帶t-L3為第四級(jí)別時(shí)間轉(zhuǎn)換中的動(dòng)作補(bǔ)償提供預(yù)選參考幀(例如,偶數(shù)幀t-L3)。根據(jù)第三方案,在經(jīng)過(guò)升抽樣的重建子帶t-L2’中與時(shí)間相應(yīng)的圖像,被作為動(dòng)作補(bǔ)償?shù)母郊拥念A(yù)選參考幀。例如,交替幀t-L2’(具有和奇數(shù)索引幀t-L2相同的計(jì)時(shí))被提供作為在第三級(jí)別時(shí)間轉(zhuǎn)換中奇數(shù)索引幀t-L2的MCP的參考。每第四幀t-L2’(具有和奇數(shù)索引幀t-L3相同的計(jì)時(shí))被提供作為在第四級(jí)別時(shí)間轉(zhuǎn)換中時(shí)間相應(yīng)的奇數(shù)索引幀t-L3的MCP的參考。
圖20顯示接著嵌入式基層編碼器的時(shí)間轉(zhuǎn)換中的動(dòng)作補(bǔ)償?shù)牟煌瑓⒖嫉慕M合情況。預(yù)選參考幀包括來(lái)自輸入時(shí)間低通子帶的幀(如偶數(shù)幀)。預(yù)選參考幀也包括來(lái)自基層升抽樣的輸出的時(shí)間相應(yīng)(如相同時(shí)間)的重建幀。例如在圖20的組合(1)中,高通子帶幀H使用來(lái)自前面時(shí)間子帶(相應(yīng)于低通子帶幀L)的偶數(shù)幀的第一動(dòng)作補(bǔ)償預(yù)測(cè),以及使用來(lái)自基層(與高通子帶幀H在時(shí)間上協(xié)同定位)的升抽樣的重建的第二動(dòng)作補(bǔ)償預(yù)測(cè)。相應(yīng)地,高通子帶幀H僅被用于更新用于動(dòng)作補(bǔ)償?shù)呐紨?shù)幀(以便生成相應(yīng)低通子帶幀L)。如果源自基層的參考被用在預(yù)測(cè)步驟,對(duì)于它相應(yīng)的更新步驟是不需要的。
在一些實(shí)施例中,編碼器在大塊相連的基礎(chǔ)上選擇和變換用于動(dòng)作補(bǔ)償?shù)膮⒖紟?商鎿Q地,編碼器在其它基礎(chǔ)(例如每個(gè)當(dāng)前奇數(shù)幀,每個(gè)動(dòng)作矢量和大塊分區(qū))上選擇和變換用于動(dòng)作補(bǔ)償?shù)膮⒖紟?br>
回到圖18,在最后時(shí)間分解之后,基層輸出t-L2’的幀率是最終低通子帶t-L4的幀率的四倍。編碼器(1800)從最終低通子帶t-L4中減去基層輸出t-L2’的時(shí)間相應(yīng)的升抽樣重建幀。這樣生成殘余子帶t-L4’。最后,編碼器(1800)在各自子帶(例如t-H1、t-H2、t-H3、t-H4和t-L4’)上執(zhí)行空間轉(zhuǎn)換和熵編碼以生成可縮放比特流。
圖19顯示根據(jù)第三個(gè)方案的相應(yīng)3D子帶解碼器(1900)。解碼器(1900)包括嵌入式基層解碼器(1920)和在基層解碼器(1920)之后的升抽樣模塊(1930)。
像圖15中所示的解碼器(1500)一樣,升抽樣模塊(1930)是可選的。它被用在當(dāng)由嵌入式解碼器(1920)解碼的視頻具有比下游反向時(shí)間轉(zhuǎn)換級(jí)別使用的時(shí)間子帶幀少的空間分辨率時(shí)。另外,升抽樣模塊(1930)可以被跳過(guò)。
圖19中的虛線框包括了與在四級(jí)反向時(shí)間分解之前的基層解碼器(1920)的相關(guān)操作。像用其它基層解碼器那樣,具有低幀率和(潛在地)低空間分辨率的視頻可以被基層解碼器(1920)直接解碼和輸出。
另外,解碼器(1900)對(duì)從解碼器(1900)將用于重建視頻的可縮放比特流(例如t-H1、t-H2、t-H3、t-H4和t-L4’)中的任一個(gè)子帶執(zhí)行熵解碼和反向空間分解。
嵌入式解碼器(1920)接收用于以基層分辨率進(jìn)行視頻解碼的基層比特流(1995)。使用適當(dāng)?shù)慕獯a操作,嵌入式解碼器(1920)可以對(duì)在基層比特流(1995)中壓縮的降抽樣子帶ts-LL進(jìn)行解碼,生成子帶的重建版本ts-LL’。升抽樣模塊(1930)利用某種濾波機(jī)制對(duì)來(lái)自基層解碼器(1920)的重建子帶ts-LL’進(jìn)行升抽樣,以生成時(shí)間子帶t-L2的重建版本t-L2’。
解碼器(1900)將殘余子帶t-L4’加到升抽樣基層輸出t-L2’的時(shí)間相應(yīng)(相同時(shí)間)幀。這樣生成時(shí)間低通子帶t-L4的重建版本,其被輸入到第四級(jí)反向時(shí)間分解中。
編碼器(1900)執(zhí)行第三和第四級(jí)別反向時(shí)間分解以便根據(jù)重建的t-H3、t-H4和t-L4子帶以及相關(guān)的動(dòng)作信息來(lái)重建時(shí)間子帶t-L2。對(duì)于第三和第四級(jí)別時(shí)間轉(zhuǎn)換,解碼器(1900)為時(shí)間高通子帶t-H3和t-H4計(jì)算動(dòng)作補(bǔ)償?shù)念A(yù)測(cè)。時(shí)間子帶t-L3具有用于第四級(jí)別時(shí)間轉(zhuǎn)換中的MCP的重建參考幀(例如,重建偶數(shù)幀t-L3),時(shí)間子帶t-L2具有為第三級(jí)別時(shí)間轉(zhuǎn)換中的MCP的重建參考幀(例如,重建偶數(shù)幀t-L2)。在經(jīng)過(guò)升抽樣的重建子帶t-L2’中的時(shí)間相應(yīng)(例如,相同時(shí)間)圖像,可以作為在第三和第四級(jí)別反向時(shí)間轉(zhuǎn)換中的MCP的附加參考幀。
B.基層信息的附加利用的范例除了在低比特率視頻的比率失真檢測(cè)中提供后向兼容以及提高壓縮效率之外,基層的輸出還有附加作用。
1.基層動(dòng)作矢量的再利用在具有以提升為基礎(chǔ)的MCTF的3D子帶編碼中,MCP步驟的動(dòng)作矢量是通過(guò)動(dòng)作估計(jì)獲得的。在一些實(shí)施例中,動(dòng)作估計(jì)過(guò)程和傳統(tǒng)的用于符合現(xiàn)有視頻標(biāo)準(zhǔn)例如MPEG2、H.264/AVC等的編碼器的動(dòng)作估計(jì)是類似的。而且,Haar和5/3時(shí)間轉(zhuǎn)換分別對(duì)于常規(guī)P-圖像和B-圖像的動(dòng)作補(bǔ)償過(guò)程是類似的。
由于和現(xiàn)有標(biāo)準(zhǔn)例如MPEG-2、MPEG-4、H.264/AVC等兼容的基層編解碼器,用內(nèi)部圖像(P-圖像或B-圖像)內(nèi)部壓縮的塊編碼典型地具有相關(guān)的動(dòng)作信息。同時(shí),在3D子帶編碼中,在基層編解碼器的各級(jí)時(shí)間分解下游(例如,圖14、16和18中的第三和第四級(jí)別)的高通子帶可以在基層輸出中找到時(shí)間相應(yīng)的圖像。在許多情況下(特別是根據(jù)第三方案),在這種高通子帶的動(dòng)作信息和基層中與時(shí)間相應(yīng)的內(nèi)部圖像的動(dòng)作信息之間存在很高的相似性。基于這種相關(guān)性,編碼器和/或解碼器因?yàn)閹讉€(gè)目的重新利用基層編解碼器的動(dòng)作矢量。
在基層動(dòng)作矢量附加應(yīng)用的一個(gè)例子中,3D子帶編碼器和3D子帶解碼器僅僅將基層動(dòng)作矢量作為時(shí)間相應(yīng)高通子帶幀的塊的真實(shí)動(dòng)作矢量使用。(當(dāng)基層幀和高通子帶幀具有不同的空間分辨率時(shí),3D子帶編碼器和3D子帶解碼器相應(yīng)地能估算基層動(dòng)作矢量。)尤其是,3D子帶編碼器和3D子帶解碼器在低比特率下為這一目的使用基層動(dòng)作矢量。這樣減少了動(dòng)作矢量的開(kāi)銷,當(dāng)然,也由于基層動(dòng)作矢量已經(jīng)作為基層比特流的部分被發(fā)送。在許多情況下,在動(dòng)作預(yù)測(cè)精度損失方面的補(bǔ)償是輕微的。
在基層動(dòng)作矢量附加應(yīng)用的其它例子中,3D子帶編碼器和3D子帶解碼器應(yīng)用動(dòng)作矢量預(yù)測(cè)中來(lái)自基層編解碼器的動(dòng)作矢量。作為常規(guī)動(dòng)作矢量編碼和解碼的部分,動(dòng)作矢量預(yù)測(cè)為當(dāng)前動(dòng)作矢量值提供預(yù)測(cè)。當(dāng)前動(dòng)作矢量接著可能用相對(duì)預(yù)測(cè)動(dòng)作矢量的差表示并被傳送。編碼器和解碼器都根據(jù)相鄰塊的在前重建的動(dòng)作矢量為當(dāng)前動(dòng)作矢量選擇或?qū)С鲱A(yù)測(cè)動(dòng)作矢量。
在一些實(shí)施例中,當(dāng)為時(shí)間高通子帶塊的當(dāng)前動(dòng)作矢量選擇或?qū)С鲱A(yù)測(cè)動(dòng)作矢量時(shí),3D子帶編碼器和3D子帶解碼器根據(jù)時(shí)間相應(yīng)基層幀的空間相應(yīng)塊使用動(dòng)作矢量。例如3D子帶編碼器和3D子帶解碼器使用基層動(dòng)作矢量作為預(yù)測(cè)動(dòng)作矢量?;蛘?,3D子帶編碼器和3D子帶解碼器使用基層動(dòng)作矢量作為選擇預(yù)測(cè)動(dòng)作矢量的候選(例如作為候選的中間值)。
在基層動(dòng)作矢量的附加應(yīng)用的另一個(gè)例子中,3D子帶編碼器使用基層動(dòng)作矢量加快動(dòng)作估計(jì)。例如;子帶編碼器考慮早期動(dòng)作估計(jì)中的相應(yīng)基層動(dòng)作矢量以便更快找到合適的當(dāng)前動(dòng)作矢量。
類似地,3D子帶編碼器和3D子帶解碼器能夠再次利用基層的動(dòng)作模式(例如,塊分區(qū)、方向)信息。在一些例子中,基層模式信息可以被用作時(shí)間相應(yīng)高通子帶幀的塊的真實(shí)動(dòng)作信息。或者,基層動(dòng)作模式被用于動(dòng)作信息的預(yù)測(cè)或用來(lái)加快動(dòng)作估計(jì)。
圖21到23顯示了不同的編碼結(jié)構(gòu)(幀類型模式),在這種情況下,基層動(dòng)作信息對(duì)于基層之后的時(shí)間分解中的時(shí)間高通子帶有著顯著的作用。在圖21中,基層的編碼結(jié)構(gòu)被調(diào)整以適應(yīng)普通3D子帶編碼結(jié)構(gòu)。三個(gè)B-圖像被插在兩個(gè)I-或P-圖像之間,而第二張B-圖像(像用H.264/AVC存儲(chǔ)的B-圖像)被用作第一張和第三張B-圖像的參考圖像。通過(guò)這種方法,在基層中的B-圖像的動(dòng)作矢量能夠很自然的被再次用在3D子帶編碼中時(shí)間相應(yīng)的高通子帶幀。
為了與用于基層編解碼器的某些現(xiàn)存標(biāo)準(zhǔn)兼容,圖22的幀結(jié)構(gòu)采用常規(guī)基層編碼結(jié)構(gòu)但是調(diào)整了用于3D子帶編碼的幀類型的模式。在基層中3個(gè)B-圖像被插在兩個(gè)I/P-圖像之間,但是3個(gè)B-圖像僅把I/P-圖像作為參考(沒(méi)有B-圖像作為動(dòng)作補(bǔ)償參考)。在3D子帶編碼方案中,該模式包括在兩個(gè)低通子帶間產(chǎn)生的三個(gè)高通子帶。
圖23說(shuō)明一種兼容模式。在基層中,在3D子帶編碼中時(shí)間上相應(yīng)于高通子帶的圖像被用B-或P-圖像進(jìn)行編碼。反之,在圖21和22中所示的模式適合5/3時(shí)間分解,圖23所示的模式可以自適應(yīng)地用于在Haar和5/3時(shí)間分解(分別相應(yīng)于P-圖像、B-圖像的關(guān)系)。
2.預(yù)測(cè)來(lái)自基層的內(nèi)部域當(dāng)視頻序列存在封閉和不規(guī)則動(dòng)作時(shí),動(dòng)作估計(jì)在時(shí)間高通子帶中只能發(fā)現(xiàn)和一些塊缺少匹配的塊。當(dāng)沒(méi)有內(nèi)部編碼模式可用時(shí),為這些情況的強(qiáng)制內(nèi)部預(yù)測(cè)可以使得編碼功能惡化并使視覺(jué)質(zhì)量受到壞影響。
在H.264/AVC標(biāo)準(zhǔn)中,內(nèi)部預(yù)測(cè)技術(shù)對(duì)MCP失敗的情況提出警告。在內(nèi)部預(yù)測(cè)中,當(dāng)前塊的預(yù)測(cè)值是由鄰近重建像素的空間預(yù)測(cè)得到的。在具有開(kāi)環(huán)MCTF結(jié)構(gòu)的3D子帶編碼中,無(wú)論怎樣,這樣的空間預(yù)測(cè)趨向指出不匹配和誤差。
在上文描述的第一和第二嵌入式基層編碼方案中,在完成基層編碼和解碼后,對(duì)差信息進(jìn)一步執(zhí)行3D子帶編碼的時(shí)間分解。(例如在圖14中,差信息是輸入時(shí)間子帶t-L2和從基層編解碼器輸出ts-LL’的升抽樣版本t-L2’間的殘余。)典型地,差只有高頻能量以及它的空間冗余很低。然而,當(dāng)一個(gè)塊在基層編解碼器中被以內(nèi)部模式編碼時(shí),在3D子帶編碼后來(lái)的時(shí)間分解中內(nèi)部預(yù)測(cè)通常是不必要提出的。這有助于避免與開(kāi)環(huán)3D子帶編碼中內(nèi)部預(yù)測(cè)有關(guān)的不匹配的問(wèn)題,同時(shí)提高了編碼性能和視覺(jué)質(zhì)量。
另一方面,在上文描述的第三種嵌入式基層編碼方案中,不對(duì)差信息執(zhí)行3D子帶編碼的進(jìn)一步時(shí)間分解。第三方案中,無(wú)論怎樣,基層編解碼器的輸出可以提供預(yù)選參考圖像,而預(yù)選參考圖像可以包括使用空間內(nèi)部預(yù)測(cè)編碼的塊。執(zhí)行相對(duì)于來(lái)自于基層編解碼器輸出的參考圖像的內(nèi)部編碼塊的動(dòng)作補(bǔ)償可以有助于指出在MCTF中的MCP的情況,否則只能發(fā)現(xiàn)匹配不佳的塊。來(lái)自基層編解碼器輸出的參考圖像也可以被用在后面的3D子帶編碼中低通子帶的預(yù)測(cè)值。3D子帶編碼器可以利用來(lái)自基層的內(nèi)部信息來(lái)確定何時(shí)為后來(lái)的MCP或其它預(yù)測(cè)使用來(lái)自基層的參考圖像。
3.為進(jìn)一步時(shí)間分解的動(dòng)作估計(jì)在純3D子帶編碼中,以及在具有根據(jù)上文描述的第三個(gè)方案的嵌入式基層編解碼器的3D子帶編碼中,動(dòng)作估計(jì)是在原始低通子帶上完成的以便獲得較高級(jí)別的高通子帶和動(dòng)作信息。這種動(dòng)作估計(jì)有效地結(jié)合許多的常規(guī)動(dòng)作估計(jì)參數(shù),例如,對(duì)編碼殘余信息的消耗和編碼動(dòng)作信息的消耗之比加權(quán)的“λ”參數(shù)。
根據(jù)上文描述的第一和第二嵌入式基層編解碼方案中的具有嵌入式編解碼器3D子帶編碼,無(wú)論怎樣,為進(jìn)一步時(shí)間分解執(zhí)行差信息的動(dòng)作估計(jì)。這樣,動(dòng)作估計(jì)匹配常規(guī)動(dòng)作估計(jì)參數(shù)以在進(jìn)一步時(shí)間分解中利用相鄰幀間的時(shí)間冗余。例如編碼器協(xié)調(diào)λ參數(shù)來(lái)對(duì)輸入到時(shí)間分解的差作出解釋。
C.使用基層編碼器或解碼器的技術(shù)的范例圖24顯示具有嵌入式基層編解碼器可縮放編碼的技術(shù)(2400)。圖25顯示具有嵌入式基層解碼器的可縮放解碼的技術(shù)(2500)。諸如參考圖14、16或18所描述的3D子帶編碼器執(zhí)行在圖24所示的技術(shù)(2400)。諸如參考圖15、17或19所描述的3D子帶解碼器執(zhí)行在圖25所示的技術(shù)(2500)??蛇x擇地,另一種編碼器或解碼器執(zhí)行技術(shù)(2400,2500)。
參考圖24,3D子帶編碼器利用子帶編碼對(duì)一層或多層視頻進(jìn)行編碼(2410),這樣產(chǎn)生的輸入到基層編解碼器。例如3D子帶編碼器執(zhí)行一層或多層MCTF,找到時(shí)間高通子帶的動(dòng)作信息并生成用作輸入到基層編解碼器中的低幀率視頻的時(shí)間低通子帶??商鎿Q地,3D子帶編碼器在這一階段執(zhí)行其它和/或者附加類型的編碼。
3D子帶編碼器用基層編解碼器對(duì)基層視頻進(jìn)行編碼(2430)。例如基層編解碼器是一個(gè)H.264/AVC、MPEG-2、VC-1或WMV9編解碼器并生成相應(yīng)的壓縮視頻比特流和重建的輸出視頻。動(dòng)作信息和內(nèi)部模式信息是壓縮視頻比特流的一部分,或這一信息可以以一些其它形式被獨(dú)立地提供給3D子帶編碼器。
3D子帶編碼器接著用基層編解碼器的結(jié)果對(duì)一層或多層視頻進(jìn)行編碼(2450)。例如3D子帶編碼器對(duì)根據(jù)基層編碼或解碼的結(jié)果計(jì)算出來(lái)的差信息執(zhí)行一級(jí)或多級(jí)時(shí)間分解?;蛘?,3D子帶編碼器利用來(lái)自基層編解碼器的重建視頻中的參考圖像對(duì)時(shí)間低通子帶執(zhí)行一級(jí)或多級(jí)時(shí)間分解?;蛘?,3D子帶編碼器將動(dòng)作信息和/或內(nèi)部模式信息用在編碼或時(shí)間分解的判決中??蛇x地,3D子帶編碼器在隨后的子帶編碼中以某種其它方法利用基層編解碼器的結(jié)果,或跳過(guò)隨后的編碼(2450)。
編碼器確定(2490)是否繼續(xù)編碼過(guò)程,并且,如果是,繼續(xù)下一幀。
(參考圖25,3D子帶解碼器用基層解碼器對(duì)基層視頻進(jìn)行編碼(2530))。例如基層解碼器是H.264/AVC、MPEG-2、VC-1或WMV9解碼器,它解析和解碼相應(yīng)的壓縮視頻比特流并生成重建輸出視頻。
3D子帶解碼器確定(2540)解碼分辨率。該分辨率可以根據(jù)使用者水平設(shè)置或某種其它設(shè)置來(lái)確定,可以根據(jù)解碼器實(shí)際接收多少信息(例如,正好是基層視頻或者一個(gè)或多個(gè)附加層)來(lái)確定,或者用某種其它方法來(lái)確定??商鎿Q地,3D子帶解碼器可以只有一條解碼路徑。例如,一個(gè)解碼器可以包括基層路徑同時(shí)另一個(gè)解碼器包括基層+可縮放層路徑,以適應(yīng)各自解碼器的資源。
如果沒(méi)有較高分辨率視頻要解碼(在判斷2540之外的“無(wú)”路徑),3D子帶解碼器在階段(2590)繼續(xù)。
否則,3D子帶解碼器用來(lái)自基層解碼的結(jié)果對(duì)視頻進(jìn)行一個(gè)或多個(gè)附加層的解碼(2550)。例如3D子帶解碼器對(duì)差信息執(zhí)行一級(jí)或多級(jí)反向時(shí)間分解然后把重建的差信息加到基層解碼的結(jié)果中去?;蛘?,3D子帶解碼器利用來(lái)自基層解碼器的重建視頻的參考圖像執(zhí)行一級(jí)或多級(jí)反向時(shí)間分解來(lái)重建時(shí)間低通子帶??商鎿Q地,3D子帶解碼器在隨后的子帶解碼中以某種其它方式利用來(lái)自基層解碼器的結(jié)果。
最后,編碼器確定(2590)是否繼續(xù)解碼過(guò)程,并且,如果是,則繼續(xù)下一幀。
在圖24和25中所示的各種操作是可以分開(kāi)、和其它操作組合或被重新編排。
VI.對(duì)SDMCTF-編碼的視頻進(jìn)行解碼的空間縮放性通常,根據(jù)MCTF在3D子帶視頻解碼何時(shí)執(zhí)行有兩類MCTF。在第一類中,被稱作帶內(nèi)MCTF(“IBMCTF”),編碼器首先對(duì)視頻進(jìn)行空間壓縮然后在子帶/子波域中執(zhí)行MCTF。編碼器接著可以執(zhí)行進(jìn)一步空間分解。在第二類中,被稱作空域MCTF(“SDMCTF”),編碼器在空間分解之前,直接在空間域內(nèi)執(zhí)行MCTF。類似地,在解碼期間,IMCTF可以在空間域(“SDIMCTF”)或帶內(nèi)(“IBIMCTF”)執(zhí)行。
這樣,在具有SDMCTF的3D子帶編碼中,整個(gè)視頻在空域和隨后的空間轉(zhuǎn)換中被幾次動(dòng)作調(diào)整時(shí)間轉(zhuǎn)換分解。圖5顯示了具有四級(jí)(反向)時(shí)間轉(zhuǎn)換和兩級(jí)(反向)空間轉(zhuǎn)換的完整的編碼和解碼方案,而在解碼中沒(méi)有空間縮放性。解碼過(guò)程正好是圖5中編碼的反向。
通常,在特定比特率質(zhì)量方面IBMCTF方案的性能沒(méi)有SDMCTF方案的性能好。由于這個(gè)原因,許多3D子帶編碼器使用SDMCTF。然而,在一些申請(qǐng)中,解碼器生成視頻輸出的較低空間分辨率版本。例如對(duì)于CIF分辨率(352×288像素)的原始視頻,對(duì)于具有一級(jí)空間縮放性的解碼,3D子帶解碼器生成解碼視頻的QCIF版本(176×144像素)。這可以作為以下情況解碼器和較小屏幕設(shè)備(如;蜂窩式可視電話)相連或者解碼器通過(guò)不可靠連接只接收較低空間分辨率子帶信息。這些方案在視頻的MCTF操作是在空域中被執(zhí)行時(shí)是有問(wèn)題的,因?yàn)椴还茉鯓樱瑒?dòng)作信息、參考圖像等是按照完整的空間分辨率表示的。
這部分描述了當(dāng)對(duì)以低空間分辨率輸出的SDMCTF-編碼視頻進(jìn)行解碼時(shí),各種提高解碼性能的機(jī)制。在一些實(shí)施例中,例如3D子帶視頻解碼器接收以某種分辨率(如CIF)使用SDMCTF進(jìn)行編碼的視頻但是對(duì)以更低分辨率(如QCIF)輸出的視頻進(jìn)行解碼。3D子帶解碼器使用幾種不同機(jī)制中的任何一個(gè)來(lái)提高解碼性能。
A.對(duì)SDMCTF視頻解碼中的簡(jiǎn)單空間可縮放方案圖26說(shuō)明從SDMCTF編碼視頻的壓縮視頻比特流解碼和輸出較低空間分辨率視頻的兩個(gè)簡(jiǎn)單方案(2600,2650)。低空間分辨率視頻不同于圖26中通過(guò)一級(jí)空間縮放的完整空間分辨率。
第一種方案(2600)提供了直接解決方案。3D子帶解碼器首先恢復(fù)完整空間分辨率視頻(所示的CIF視頻)。(假定第二反向空間轉(zhuǎn)換的空間高通(“SH”)子帶丟失的情況下,解碼器在第二反向空間轉(zhuǎn)換中把SH子帶作為空白(SH=0)對(duì)待。)在反向時(shí)間分解之后,3D子帶解碼器用濾波器(所示的空間轉(zhuǎn)換)對(duì)完整空間分辨率視頻進(jìn)行降抽樣以達(dá)到到輸出分辨率(所示的QCIF)。解碼器執(zhí)行SDIMCTF,并且當(dāng)在中間步驟對(duì)CIF視頻進(jìn)行解碼時(shí),解碼器使用許多解碼資源(例如,計(jì)算資源、參考圖像緩沖器)。
另一方面,在第二種方案(2650)中,3D子帶解碼器執(zhí)行IBIMCTF。第二種方案(2650)說(shuō)明了一種對(duì)低分辨率視頻進(jìn)行解碼的漸進(jìn)的方法。像第一種方案(2600)一樣,第二種方案(2650)包括熵解碼和四級(jí)反向時(shí)間轉(zhuǎn)換。第二種方案(2650)實(shí)際上包括了一種比第一種方案(2600)少的反向空間轉(zhuǎn)換。(在第二種方案(2650)中所示的第二反向空間轉(zhuǎn)換和隨后的空間轉(zhuǎn)換彼此抵消并且可以被省略。)在第二種方案(2650)中,3D子帶解碼器在以SL子帶分辨率執(zhí)行反向時(shí)間轉(zhuǎn)換過(guò)程中,必須把空間低通(“SL”)子帶(第一反向空間轉(zhuǎn)換的輸出)作為原始視頻的全部對(duì)待。這近似沒(méi)有空間縮放性的解碼過(guò)程,并具有低計(jì)算復(fù)雜性和低緩沖器要求(對(duì)于參考圖像,等等)的優(yōu)點(diǎn)。更進(jìn)一步說(shuō),視頻原始分辨率和空間縮放性對(duì)于解碼器來(lái)說(shuō)可以是完全透明的。第二種方案(2650)的性能在低比特率方面是令人滿意的但在高比特率方面不能令人滿意。尤其是,隨著比特率的增加它對(duì)于重建高質(zhì)量低空間分辨率視頻變得困難和不可能,即使比特率非常高。
圖26所示的兩個(gè)解碼方案(2600,2650)間的不同在于在IMCTF期間MCP和MCU的步驟如何被執(zhí)行。圖27說(shuō)明了在一級(jí)IMCTF中兩種方案(2600,2650)的MCP。尤其是,圖27顯示了根據(jù)參考圖像中的可用SL子帶信息(而不是SH子帶信息)在預(yù)測(cè)步驟的SL提升信號(hào)的產(chǎn)生。
對(duì)于SDIMCTF,SL提升信號(hào)按如下所示產(chǎn)生→SLIDWT→SDINTPSD→MCPSD→SDDWT---(9),]]>這里INTPSD表示參考圖像信息在空間域中像素的插值,而MCPSD表示在空間域的MCP。DWT是線性操作,并且DWT(F1+F2)=DWT(F1)+DWT(F2) (10)。
為使用SL緩沖器來(lái)保留中間結(jié)果,DWT對(duì)于在SL域中的預(yù)測(cè)減少了空間域預(yù)測(cè)。
對(duì)于IBIMCTF,SL提升信號(hào)按如下所示產(chǎn)生→SLINTPSL→MCPSL→SL---(11),]]>這里INTPSL表示參考圖像信息在SL域中像素的插值,而MCPSL表示在SL域的MCP。為了簡(jiǎn)便,同樣的插值濾波器被用于INTPSD和INTPSL。
B.理論分析各種因素導(dǎo)致在對(duì)SDMCTF編碼視頻進(jìn)行3D子帶解碼過(guò)程中的空間縮放性出現(xiàn)問(wèn)題。一個(gè)因素是SL域中插入值和動(dòng)作補(bǔ)償?shù)臒o(wú)效性。另一因素是IMCTF的位置(與在編碼中的MCTF的位置相比)。還有另外一個(gè)因素由動(dòng)作補(bǔ)償引起的跨越子帶的能量譜泄漏。
除了這些因素外,各種編碼/解碼特征能導(dǎo)致編碼器中SDMCTF和解碼器中IBIMCTF之間的不匹配。兩個(gè)這樣的特征是動(dòng)作矢量縮放比例和OBMC。在這部分中,為了簡(jiǎn)便,假設(shè)在IBIMCTF中動(dòng)作矢量的精度是不變的,并且在IBIMCTF期間子像素插入值被用作動(dòng)作補(bǔ)償是足夠好的以便能充分利用動(dòng)作信息。也是為了簡(jiǎn)便的目的,OBMC是無(wú)作用的,MCP操作假定是只根據(jù)可適用動(dòng)作矢量的簡(jiǎn)單像素取出操作。甚至作為一些簡(jiǎn)化假設(shè),在前面段落中列舉的因素可以降低IBIMCTF的功能。
1.插入值甚至當(dāng)同樣的插值濾波器(像雙線性的濾波器或8抽頭正弦濾波器)被用于空域插值和SL域插值時(shí),給定的一幀中相同位置的局部像素是從不同批像素中被插入的,這是由于兩個(gè)操作的不同范圍。這導(dǎo)致由被插入子像素的參考圖像間的不匹配。
由于另一個(gè)原因在SL域的插入可能不是最佳的。由于子波轉(zhuǎn)換的抽取方面,只有空間LL帶不是原始視頻的整個(gè)低通信號(hào)的完全代表。也就是說(shuō),不考慮高通信號(hào)或當(dāng)高通信號(hào)缺失時(shí),在二分之一相位位置部分低通信號(hào)丟失。抽取的一個(gè)結(jié)果是空間LL帶偏移變量性質(zhì)。由于LL帶的不完整性,當(dāng)獲得插值低通幀時(shí),在LL帶(如在操作(12)顯示)中進(jìn)行直接插入可能不是最佳的。
→SLINTPSL→mxmSLMCPSL→SL---(12),]]>→SLIDWT→OCDWT→INTPOC-LL→mxmSLMCPSL→SL---(13),]]>和→SLIDWT→SDINTPSD→SDDSDWT→mxmSLMCPSL→SL---(14).]]>一種可供選擇的方法是通過(guò)變換過(guò)完整子波表示執(zhí)行二分之一像素插入。來(lái)自SL的過(guò)完整表示可以由完全到過(guò)完整的DWT(未示出)或由反向DWT和過(guò)完整的DWT(“OCDWT”)(在操作13中顯示)產(chǎn)生。這種IDWT加上OCDWT的和作為一級(jí)插入。余下級(jí)別的插入可以用過(guò)完整子波域的常規(guī)插入完成,用操作13中的INTPOC-LL表示。
變換到常規(guī)過(guò)完整子波表示只要提供在SL域的二分之一像素插入。為了支持在SL域中四分之一像素動(dòng)作矢量精度或更出色動(dòng)作,解碼器可以利用連續(xù)的相位過(guò)完整轉(zhuǎn)換(“CPOCWT”)。為了在SL子帶中四分之一像素位置,解碼器在空間域中執(zhí)行插入,如操作(14)所示。接著,插入幀的低通子帶通過(guò)DWT獲得。DWT是比例敏感操作。只要在編碼器中與DWT匹配,編碼器在插入幀中以m-抽樣像素執(zhí)行OCDWT,這里mxm是在OCDWT之前空間域插入的因子。在操作(14)中,DSDWT表示對(duì)將空間域插入幀降抽樣為一些子幀,在各自子幀執(zhí)行OCDWT以及向后地隔行掃描獲得的系數(shù)。象這樣,DSDWT是一種OCDWT。
根據(jù)(12)至(14)的每一操作,解碼器在SL域中根據(jù)mxm參考圖像執(zhí)行動(dòng)作補(bǔ)償預(yù)測(cè)。
2.DWT和MCP的位置變換對(duì)于IBIMCTF,即使在像(14)中帶內(nèi)插入被用空域插入代替的情況下,MCP的參考圖像仍是低通幀-MCP發(fā)生在子波域中。與編碼器相比較,DWT和MCP的預(yù)期排序被交換(這里,在編碼器中,MCP先于DWT)。然而,由于DWT的偏移變量屬性,DWT和MCP操作是不可交換的DWT(MCPSD(FSD))≠M(fèi)CPSL(DWT(FSD)) (15)和IDWT(MCPSL(FSL))≠M(fèi)CPSD(IDWT(FSL)) (16)。
假設(shè)為了簡(jiǎn)化目的MCP包括簡(jiǎn)單的以塊為基礎(chǔ)的動(dòng)作變換操作,等式(15)按如下解釋,假設(shè)當(dāng)前幀被分解成塊B={Bi|i=1,…,m},并且這些塊的動(dòng)作矢量MV={mvi|i=1,…,m}。Frefi是參考幀F(xiàn)ref的新版本,這里只有作為塊Bi參考的像素被保留,其它像素被定義為零。
Fpred(x)=Σi=1mFrefi(x+mvi)---(17),]]>DWT(MCP(Fref))=DWT(Σi=1mFrefi(x+mvi))]]>=Σi=1mDWT(Frefi(x+mvi))≠Σi=1m(DWTFrefi(x+mvi))---(18).]]>=MCP(Σi=1mDWT(Frefi))=MCP(DWT(Σi=1mFrefi))]]>≠M(fèi)CP(DWT(Fref))在(18)中的第一個(gè)不等式是由于DWT的偏移變量屬性。在(18)中的第二個(gè)不等式是由于當(dāng)動(dòng)作非常復(fù)雜時(shí)MCP中動(dòng)作變換期間的重疊和泄漏。
一種可能的解決方案是將MCP移到DWT之前的空間域,像操作(19)中所示的那樣。這種情況下,MCP是SDIMCTF的一部分。
→SLIDWT→SDINTPSD→MCPSD→SDDWT---(19).]]>3.動(dòng)作移動(dòng)導(dǎo)致的功率譜泄漏在3D子波編碼中,時(shí)間空間子帶通常假定是獨(dú)立的。在許多申請(qǐng)中,時(shí)間空間子帶根據(jù)希望被丟棄,特別是高通子帶。然而,在使用MCTF的3D子帶編碼中,由于動(dòng)作移動(dòng)引入的功率譜泄漏,相鄰幀的低通子帶和高通子帶具有類似之處。
當(dāng)只包含一個(gè)空間子帶信號(hào)的幀根據(jù)動(dòng)作變換時(shí),部分該信號(hào)被轉(zhuǎn)移到其它的空間子帶。圖28說(shuō)明簡(jiǎn)單球形動(dòng)作現(xiàn)象。在圖28的第一行中,原始幀Org被分成兩部分SL信號(hào)A和SH信號(hào)B。在第二行中,只包括SL信號(hào)A的幀被用簡(jiǎn)單圖像域動(dòng)作變換(“IMS”)變換到空間域中,而變換后的幀現(xiàn)在包括SH信號(hào)。相似地,在圖28的第三行中,只包括SH信號(hào)B的幀被切換到空間域中,而變換后的幀包括SL信號(hào)。當(dāng)運(yùn)動(dòng)復(fù)雜時(shí)頻譜泄漏問(wèn)題變得更為嚴(yán)重。
因此,在編碼器中具有SDMCTF而不是使用SL信息的IMCTF,參考幀的SL部分預(yù)測(cè)該幀的SH部分。因此,即使在解碼器在開(kāi)始階段只有SL子帶信息的情況下,解碼器也能在每級(jí)IMCTF的中間效果中獲得有意義的SH子帶信息。無(wú)論如何,當(dāng)解碼器使用SL分辨率緩沖器來(lái)保留各級(jí)IMCTF之間的中間結(jié)果時(shí),會(huì)丟棄SH子帶信息,也許這對(duì)于下一級(jí)IMCTF中的MCP是有用的。
此外,參考幀的SH部分預(yù)測(cè)參考幀的SL部分。為了對(duì)SL編碼,編碼器可以在參考幀中使用SH子帶信息。當(dāng)解碼器不能訪問(wèn)這些SH部分時(shí),SH子帶的缺少導(dǎo)致一種漂移。(例如當(dāng)編碼器根據(jù)完整分辨率幀(包括SH信息)執(zhí)行MCP,而解碼器僅有SL信息。)這種結(jié)果是PSNR的極限—在相對(duì)低的比特率下PSNR曲線變成水平的。
C.對(duì)具有空間縮放性的SDMCTF-編碼的視頻進(jìn)行解碼的改進(jìn)方案范例在一些實(shí)施例中,3D子帶解碼器當(dāng)對(duì)SDMCTF-編碼的視頻進(jìn)行解碼并以較低空間分辨率輸出時(shí),使用幾項(xiàng)技術(shù)中的任一種來(lái)提高解碼性能。這一技術(shù)一步步地提高解碼性能,并且主要地不需要改變編碼器以及發(fā)送的比特流。在這一集合中,這些技術(shù)以不同復(fù)雜級(jí)別的不同選項(xiàng)提供復(fù)雜的解碼方案。
在一些方案中,解碼器分配額外的資源用于解碼。通常,當(dāng)額外的計(jì)算資源致力于解碼時(shí)解碼器能重建更好的視頻。而且,當(dāng)額外緩沖器資源致力于存儲(chǔ)參考圖像信息時(shí)解碼器重建更好的視頻。
或者,編碼器或解碼器因?yàn)榻獯aSL視頻強(qiáng)調(diào)SH子帶信息。例如為將SH子帶信息合并到IMCTF判決中,即使在解碼器只重建SL分辨率視頻時(shí),比特流抽取器給SH系數(shù)分配帶寬,而不是完全丟棄它們。
這部分的各個(gè)圖(也就是,圖29到34)顯示了一級(jí)空間縮放??商鎿Q地,3D子帶解碼器以多級(jí)空間縮放輸出視頻。在相同的列中,這部分的各個(gè)圖顯示了為用MCTF以CIF分辨率編碼的原始視頻輸出QCIF視頻的3D子帶解碼器。這里描述的技術(shù)和工具不限于用CIF和QCIF分辨率。
對(duì)這部分的許多圖來(lái)說(shuō),動(dòng)作矢量具有原始分辨率二分之一的像素精度和SL分辨率四分之一的像素精度。這影響了象子像素插值這樣的操作??商鎿Q地,動(dòng)作矢量具有其它精度,相應(yīng)地解碼器執(zhí)行更多或更少的子像素插值。而且,通過(guò)這部分的幾個(gè)圖中為了插值顯示了用于插值的正弦濾波器,可替換地,解碼器使用其它類型的濾波器(如,雙線性的,雙三次的)。
最后,這部分的各個(gè)圖顯示了二元DWT和IDWT的操作??商鎿Q地,解碼器為空間轉(zhuǎn)換和反向空間轉(zhuǎn)換使用其它的操作。
1.方案AIBIMCTF(基線)為了與后面的方案比較,圖29說(shuō)明在解碼期間沒(méi)有額外的計(jì)算和緩沖器資源的IBIMCTF。圖29中的方案相應(yīng)于圖26的IBIMCTF解碼器(2650)中的一級(jí)IMCTF。在圖29所示的操作存在于子波域中。
根據(jù)圖29,3D子帶解碼器使用SL緩沖器(2910)存儲(chǔ)SL子帶信息作為參考圖像信息。SL子帶信息的有效分辨率是QCIF。
解碼器采用4×4正弦濾波器執(zhí)行子像素插值(2920)。(在SL域中MCP的動(dòng)作矢量精度是四分之一像素的精度。)這生成子像素插值參考幀(2930)。插值參考幀的有效分辨率是4CIF(704×576像素)。
解碼器在SL域中執(zhí)行MCP(2940),使用參考圖像信息的插值參考幀(2930)。MCPSL(2940)在SL域中生成預(yù)測(cè)值(2950)。預(yù)測(cè)值(2950)的有效分辨率也是QCIF。
2.方案B最優(yōu)化IBIMCTF在第二種方案中,3D子帶解碼器通過(guò)將插值操作和/或MCP操作移動(dòng)到空間域中來(lái)提高IMCTF。解碼器依然使用用于參考圖像信息的SL分辨率緩沖器。圖30顯示了第二種方案的概括框架,其中反向時(shí)間轉(zhuǎn)換被用最優(yōu)反向時(shí)間轉(zhuǎn)換OT-1i表示。圖31、32和33顯示根據(jù)第二種方案的不同變形的一級(jí)IMCTF的范例。
a.方案B1根據(jù)圖31顯示的方案(方案B1),3D子帶解碼器使用SL緩沖器(3110)來(lái)存儲(chǔ)作為參考圖像信息使用的SL子帶信息。解碼器利用緩存的SL子帶信息執(zhí)行IDWT操作(3120)。SH子帶在IDWT操作(3120)時(shí)被認(rèn)為是空的(SH=0)。這樣IDWT操作(3120)根據(jù)SL子帶信息生成參考幀(3130)。當(dāng)SL子帶的有效分辨率是QCIF時(shí),參考幀(3130)的有效分辨率是CIF。
解碼器接著對(duì)參考幀(3130)執(zhí)行OCDWT(3140)操作,生成過(guò)完整表示(3150)??商鎿Q地,解碼器執(zhí)行完全到過(guò)完整的DWT而不是IDWT(3120)和OCDWT(3140)。任一種方式,過(guò)完整表示(3150)包括適合二分之一像素MCP的相移值。
在給四分之一像素MCP預(yù)備中,解碼器接著利用2×2正弦濾波器執(zhí)行子像素插值(3160)。這生成子像素插值參考幀(3170)。該插值參考幀(3170)的有效分辨率是4CIF。
解碼器利用參考圖像信息的插值參考幀(3170)在SL域中執(zhí)行MCP(3180)。MCPSL(3180)在SL域中生成預(yù)測(cè)值(3190)。預(yù)測(cè)值(3190)的有效分辨率也是QCIF。
b.方案B2根據(jù)圖32所示的方案(方案B2),3D子帶解碼器使用SL緩沖器(3210)來(lái)存儲(chǔ)用作參考圖像信息的SL子帶信息。解碼器利用緩存的SL子帶信息來(lái)執(zhí)行IDWT操作(3220)。SH子帶在IDWT操作(3220)中被認(rèn)為是空的(SH=0)。這樣IDWT操作(3220)根據(jù)SL子帶信息生成參考幀(3230)。當(dāng)SL子帶的有效分辨率是QCIF時(shí),參考幀(3230)的有效分辨率是CIF。
解碼器利用2×2正弦濾波器執(zhí)行子像素插值(3240)。這產(chǎn)生了子像素插值參考幀(3250),其具有由兩個(gè)水平和垂直因子增加的分辨率。插值參考幀(3250)的有效分辨率是4CIF。
解碼器接著在插值參考幀(3250)上執(zhí)行DSDWT(3260)操作。這樣生成參考幀信息的過(guò)完整表示(3270)。過(guò)完整表示(3270)包括適合四分之一像素MCP的相移值。
解碼器利用參考圖像信息的插值參考幀(3270),在SL域中執(zhí)行MCP(3280)。MCPSL(3280)在SL域中生成預(yù)測(cè)值(3290)。預(yù)測(cè)值(3290)的有效分辨率也是QCIF。
c.方案B3根據(jù)圖33所示的方案(方案B3),3D子帶解碼器使用SL緩沖器(3310)來(lái)存儲(chǔ)用作參考圖像信息的SL子帶信息。解碼器利用SL子帶信息執(zhí)行IDWT操作(3320)。SH子帶在IDWT操作(3320)中被認(rèn)為是空的(SH=0)。這樣IDWT操作(3320)根據(jù)SL子帶信息生成參考幀(3330)。當(dāng)SL子帶的有效分辨率是QCIF時(shí),參考幀(3330)的有效分辨率是CIF。
解碼器利用2×2正弦濾波器執(zhí)行子像素插值(3340)。這產(chǎn)生了子像素插值參考幀(3350),其具有由兩個(gè)水平和垂直因子增加的分辨率。插值參考幀(3350)的有效分辨率是4CIF。
解碼器利用參考圖像信息的插值參考幀(3350),在空間域中執(zhí)行MCP(3360)。MCPSD(3360)(具有二分之一像素精度的動(dòng)作矢量)在空間域中生成預(yù)測(cè)值(3370)。在這種例子中,預(yù)測(cè)值(3370)的有效分辨率是CIF。
解碼器根據(jù)預(yù)測(cè)(3370)執(zhí)行DWT操作(3380),生成預(yù)測(cè)(3370)的低空間分辨率版本(3390)。低空間分辨率預(yù)測(cè)(3390)的有效分辨率也是QCIF。
3.方案CSDIMCTF圖34說(shuō)明具有專用于解碼期間的附加計(jì)算和緩沖資源的SDIMCTF。圖34中的方案相應(yīng)于圖26的SDIMCTF解碼器(2600)中的一級(jí)IMCTF。圖34中的操作存在于空域中。與方案B3相比,在方案C中參考圖像緩沖器是SD緩沖器,解碼器不執(zhí)行每一級(jí)IMCTF的IDWT和DWT操作。以這種方式,中間結(jié)果中的SH信息被保存用作后來(lái)的SDIMCTF中。
根據(jù)方案C,3D子帶解碼器使用SD緩沖器(3410)存儲(chǔ)空間域信息并用作參考圖像信息。對(duì)于第一個(gè)反向時(shí)間轉(zhuǎn)換,最后的反向空間轉(zhuǎn)換從SL子帶信息產(chǎn)生SD緩沖器(3410)中的信息。對(duì)于隨后的反向時(shí)間轉(zhuǎn)換,從較早的反向時(shí)間轉(zhuǎn)換中SD緩沖器(3410)的信息被保存,并且SD緩沖器(3410)的信息可以包括由于功率譜泄漏產(chǎn)生的SH信息。SD緩沖器(3410)中信息的有效分辨率是CIF。
解碼器利用2×2正弦(sinc)濾波器執(zhí)行子像素插值(3420)。這產(chǎn)生了子像素插值參考幀(3430),其具有由兩個(gè)水平和垂直因子增加的分辨率。插值參考幀(3430)的有效分辨率是4CIF。
解碼器利用參考圖像信息的插值參考幀(3430),在空間域中執(zhí)行MCP(3440)。MCPSD(3440)(具有二分之一像素精度的動(dòng)作矢量)在空間域中生成預(yù)測(cè)值(3450)。在這種例子中,預(yù)測(cè)值(3450)的有效分辨率是CIF。
4.方案D具有SH系數(shù)的SDIMCTF為了處理SH漂移問(wèn)題,帶寬被分配給比特流抽取器中的SH系數(shù)。這不像常規(guī)空間縮放性,按照常規(guī)方法當(dāng)為輸出SL分辨率視頻而解碼時(shí)SH子帶信息被簡(jiǎn)單地丟棄。
為了確定SH系數(shù)的最佳比率,測(cè)量SH系數(shù)減少低空間分辨率視頻的失真的作用。(相反,按照常規(guī)空間縮放性的實(shí)踐,測(cè)量SH系數(shù)減少全部原始分辨率視頻的失真的作用)換句話說(shuō),即使在只有低空間分辨率視頻輸出的時(shí)候,也考慮SH子帶的增益因子以便考慮SH子帶在減少SL視頻失真方面的優(yōu)勢(shì)(例如,提高的動(dòng)作補(bǔ)償預(yù)測(cè)精度)。以這種方式,SH子帶信息很可能被向前帶進(jìn)SL視頻解碼中。
在方案D中,當(dāng)解碼SL視頻時(shí)使用SH子帶的當(dāng)前增益因子,仿佛解碼器正提取原始分辨率視頻一樣。SL和SH的系數(shù)被允許包括在最后的比特流中??商鎿Q地,可以為用于原始空間分辨率解碼和SL解碼的SH子帶計(jì)算不同增益因子。
在方案D中,當(dāng)解碼SL視頻時(shí),3D子帶解碼器為一級(jí)IMCTF采用圖34所示的解碼框架。參考圖像緩沖器(3410)是SD緩沖器。對(duì)于第一反向時(shí)間轉(zhuǎn)換,SD緩沖器包括用SL子帶信息和(至少一些)SH子帶信息重建的參考圖像信息,即使最后輸出視頻只會(huì)具有有效的SL分辨率。中間結(jié)果中的SH信息也被保存用在后來(lái)的SDIMCTF中。
解碼器利用2×2正弦濾波器執(zhí)行子像素插值(3420)。這產(chǎn)生了子像素插值參考幀(3430),其具有由兩個(gè)水平和垂直因子增加的分辨率。解碼器利用參考圖像信息的插值參考幀(3430),在空間域中執(zhí)行MCP(3440)。MCPSD(3440)(具有二分之一像素精度的動(dòng)作矢量)在空間域中生成預(yù)測(cè)值(3450)。
5.比較下表比較了方案A、B1、B2、B3、C和D的特征。
可替換地,當(dāng)為以較低空間分辨率輸出對(duì)SDMCTF編碼視頻解碼時(shí),解碼器使用另外一些空間域插值、空間域動(dòng)作補(bǔ)償、空域參考圖像緩沖器的組合和/或使用SH信息來(lái)提高解碼性能。
VI.連續(xù)相位的過(guò)完整子帶轉(zhuǎn)換IBMCTF和IBIMCTF的一個(gè)問(wèn)題是怎樣減少子波轉(zhuǎn)換偏移變量在動(dòng)作估計(jì)和補(bǔ)償方面的影響—在圖像域中的偏移/動(dòng)作不能直接映射到轉(zhuǎn)換域中。一些技術(shù)將整數(shù)像素移動(dòng)映射到轉(zhuǎn)換域中。(可參見(jiàn),例如,Y.A.Andreopoulos等作者的“A New Method for Complete-to-Overcomplete Discrete Wavelet Transforms”,Proc.IEEE Conf.Digital Signal Proc.(2002);以及,X.Li,、L.Kerofsky和S.Lei的“All-phase Motion Compensated Prediction for High Performance Video Coding”,Proc.ICIP,vol.3,pp.538-541(2001))這部分描述了將分像素移動(dòng)映射到轉(zhuǎn)換域中的相位變化的技術(shù)。通過(guò)這樣處理,動(dòng)作估計(jì)和補(bǔ)償能夠完成得更精確,也能明顯影響編碼性能。
這部分用一級(jí)一維子波轉(zhuǎn)換的例子說(shuō)明了連續(xù)相位過(guò)完整子帶轉(zhuǎn)換(“CPOST”)。p-像素CPOST的分解過(guò)程有四個(gè)連續(xù)階段(1)p-像素插值,(2)連續(xù)移位,(3)降抽樣,和(4)子波轉(zhuǎn)換。
把連續(xù)p-像素相位過(guò)完整轉(zhuǎn)換認(rèn)為是(p=1,1/2,1/4,1/8,…)。當(dāng)p=1時(shí),CPOST是整數(shù)像素相位過(guò)完整的例子,其它p值表示子像素相位過(guò)完整的例子。假設(shè)輸入信號(hào)是離散時(shí)域內(nèi)的序列{x(n)),n=0,1,2,3,…。編碼器或解碼器首先執(zhí)行{x(n)}的p-像素插值,然后繼續(xù)位移p-像素插值序列
次并對(duì)位移的序列降抽樣。這樣生成一組{x(n)}的連續(xù)相移序列,用{xpi(n)},i=0,1,…, 表示。最后,編碼器或解碼器對(duì){xpi(n)}執(zhí)行子波分解轉(zhuǎn)換。
對(duì)于p=_的例子,連續(xù)相移序列按如下所示。{y(n)}是由{x(n)}的_-像素插值點(diǎn)組成的序列。
…x(n) y(n) x(n+1) y(n+1) x(n+2) y(n+2) x(n+3) y(n+3)…0-相位 …x(n) x(n+1) x(n+2)…_-相位 …y(n) y(n+1) y(n+2)…1-相位 …x(n+1) x(n+2) x(n+3)…3/2-相位 …y(n+1) y(n+2) y(n+3)…2D CPOST能通過(guò)分別在水平和垂直方向上執(zhí)行兩個(gè)序列的1D CPOST實(shí)現(xiàn)。
在子波域中,連續(xù)p-像素相移序列可以提供使用一組預(yù)測(cè)濾波器Fpi(z)i=0,1,…, 這些濾波器等價(jià)于連續(xù)位移子像素插值序列和降抽樣這些位移的序列。p-像素CPOST的分解過(guò)程可以表示為{x(n)}的濾波器應(yīng)用,接著為子波分解轉(zhuǎn)換目的分別用低通濾波GL(z)和高通濾波器GH(z)處理結(jié)果,然后降抽樣。(i=0,1,…, 的lpi(n)和hpi(n)分別是CPOST的低通和高通系數(shù)。在z域中,X(z)和Xip(z)分別是{x(n)}和{xpi(n)}的z轉(zhuǎn)換。Lip(z)和Hip(z)分別是lpi(n)和hpi(n)的z轉(zhuǎn)換。
Xip(z)=Fip(z)X(z),i=0,1,2...,2p-1---(20),]]>Lip(z)=_[GL(z_)Xip(z_)+GL(-z_)Xip(-z_)]Hip(z)=_[GH(z_)Xip(z_)+GH(-z_)Xip(-z_)] (21)。
i=0,1,2,3...,2p-1]]>p-像素CPOST分解過(guò)程符合矩陣表達(dá)式L0p(z)Hp0(z)=12GL(z1/2)GL(-z1/2)GH(z1/2)GH(-z1/2)X(z1/2)X(-z1/2)---(22),]]>Lip(z)Hpi(z)=12GL(z1/2)GL(-z1/2)GH(z1/2)GH(-z1/2)Xpi(z1/2)Xpi(-z1/2)---(23).]]>i=1,2,3...,2p-1]]>表達(dá)式(22)表示沒(méi)有位移的原始序列子波分解轉(zhuǎn)換。表達(dá)式(23)表示連續(xù)子相位移動(dòng)序列的子波分解轉(zhuǎn)換。表達(dá)式(23)和表達(dá)式(24)組成CPOST。對(duì)于Lip(z),Hip(z)和L0p(z)和H0p(z)的關(guān)系,從(20)到(23)
Lip(z)Hpi(z)=12GL(z1/2)GL(-z1/2)GH(z1/2)GH(-z1/2)Fpi(z1/2)00Fpi(-z1/2)X(z1/2)X(-z1/2)---(24),]]>從(22)到(24)Lip(z)Hpi(z)=G(z)Fpi(z1/2)00Fpi(-z1/2)G-1(z)L0(z)H0(z)---(25),]]>其中,G(z)=GL(z1/2)GL(-z1/2)GH(z1/2)GH(-z1/2)]]>并且其中G-1(z)是G(z)的逆矩陣。
根據(jù)(25),變換矩陣Tip(z)和逆變換矩陣ITip(z)能從原始序列(例如0-相位移動(dòng)序列)的子波變換獲得以便得到子像素相移序列的子波轉(zhuǎn)換。
Tip(z)=G(z)Fpi(z1/2)00Fpi(-z1/2)G-1(z)---(26),]]>ITip(z)=[Tip(z)]-1=G-1(z)Fpi(z1/2)00Fpi(-z1/2)-1G(z)---(27).]]>根據(jù)(26),如果存在表達(dá)式(28),在離散時(shí)域中過(guò)完整子波轉(zhuǎn)換之后的子像素插值的結(jié)果和子像素插值之后的過(guò)完整子波轉(zhuǎn)換的結(jié)果是相等的。然而,在離散時(shí)域中過(guò)完整子波轉(zhuǎn)換之后子像素的結(jié)果和子像素插值之后的過(guò)完整子波轉(zhuǎn)換的結(jié)果是不相等的。
Fpi(z1/2)00Fpi(-z1/2)G-1(z)=G-1(z)Fpi(z1/2)00Fpi(-z1/2)---(28).]]>通常,表達(dá)式(28)不存在,這就意味不能交換帶內(nèi)視頻編碼的子像素插值和過(guò)完整子波轉(zhuǎn)換的順序。然而,根據(jù)(25),原始序列的CPOST系數(shù)可以從它的子波轉(zhuǎn)換系數(shù)中獲得。
CPOST方法不僅能實(shí)現(xiàn)整數(shù)像素相位過(guò)完整子波轉(zhuǎn)換而且也能實(shí)現(xiàn)子像素相位過(guò)完整子波轉(zhuǎn)換。對(duì)于p=_,具有5-3子波轉(zhuǎn)換和6-抽頭插值濾波器的連續(xù)相位過(guò)完整子波轉(zhuǎn)換離散系數(shù)隨后產(chǎn)生。轉(zhuǎn)換矩陣T_1(z)、T_2(z)和T_3(z)每一部分的系數(shù)按如下所示T1/21(0,0)=0.0098-0.09570.88670.2227-0.0215-0.0020]]>T1/21(0,1)=-0.00240.0488-0.22900.3242-0.14400.00200.0005]]>T1/21(1,0)=0.0391-0.23440.3438-0.1406-0.0078]]>
T1/21(1,1)=-0.00980.15820.3633-0.53520.02150.0020]]>T1/22(0,0)=-0.06250.56250.5625-0.0625]]>T1/22(0,1)=0.015625-0.250.46875-0.250.015625]]>T1/22(1,0)=-0.250.5-0.25]]>T1/22(1,1)=0.0625-0.5625-0.56250.0625]]>T1/23(0,0)=-0.0020-0.02150.22270.8867-0.09570.0098]]>T1/23(0,1)=0.00050.0020-0.11400.3242-0.22900.0488-0.0024]]>T1/23(1,0)=-0.0078-0.14060.3438-0.23440.0391]]>T1/23(1,1)=0.00200.02148-0.53520.36330.1582-0.0098]]>考慮到許多可能應(yīng)用本發(fā)明公開(kāi)的原理的實(shí)施例,應(yīng)當(dāng)認(rèn)識(shí)到所說(shuō)明的實(shí)施例只是本發(fā)明的首選例子,不應(yīng)該將其作為對(duì)發(fā)明范圍的限制。更確切地,本發(fā)明的范圍通過(guò)下面的權(quán)利要求書(shū)進(jìn)行限定。為此我們要求在這些權(quán)利要求的范圍和精神內(nèi)的全部作為我們的發(fā)明。
權(quán)利要求
1.一種方法包括用其中嵌有基層編解碼器的3D子帶視頻編碼器對(duì)視頻進(jìn)行編碼,和輸出編碼結(jié)果。
2.如權(quán)利要求1的方法,其中基層編解碼器被嵌在3D子帶視頻編碼器的復(fù)數(shù)個(gè)時(shí)間子帶轉(zhuǎn)換中間,以便使基層編解碼器的編碼/解碼跟蹤一個(gè)或多個(gè)復(fù)數(shù)時(shí)間子帶轉(zhuǎn)換,并先于一個(gè)或多個(gè)復(fù)數(shù)時(shí)間子帶轉(zhuǎn)換進(jìn)行。
3.如權(quán)利要求2的方法,其中復(fù)數(shù)個(gè)時(shí)間子帶轉(zhuǎn)換包括動(dòng)作補(bǔ)償時(shí)間濾波。
4.如權(quán)利要求1的方法,其中基層編解碼器是具有二維頻率轉(zhuǎn)換的以塊為基礎(chǔ)的動(dòng)作補(bǔ)償預(yù)測(cè)編解碼器。
5.如權(quán)利要求1的方法,其中編碼包括對(duì)輸入到基層編解碼器中的視頻進(jìn)行降抽樣;對(duì)輸入到基層編解碼器中的降抽樣視頻進(jìn)行編碼和解碼,來(lái)生成基層比特流和重建的輸出視頻;以及對(duì)重建的輸出視頻進(jìn)行升抽樣。
6.如權(quán)利要求1的方法,其中編碼包括執(zhí)行空間子帶轉(zhuǎn)換,來(lái)生成空間低通子帶以及一個(gè)或多個(gè)空間高通子帶。用基層編解碼器對(duì)空間低通子帶進(jìn)行編碼和解碼,來(lái)生成基層比特流和重建空間低通子帶;計(jì)算殘余子帶并作為空間低通子帶和重建空間低通子帶之間的差;以及在殘余子帶和一個(gè)或多個(gè)空間高通子帶上執(zhí)行反向空間子帶轉(zhuǎn)換。
7.如權(quán)利要求1的方法,其中編碼過(guò)程包括在殘余子帶上執(zhí)行一個(gè)或多個(gè)時(shí)間子帶轉(zhuǎn)換,其中殘余子帶至少部分基于輸入到基層編解碼器的視頻和從基層編解碼器輸出的重建視頻之間的差。
8.如權(quán)利要求1的方法,其中編碼包括在基層編解碼器編碼/解碼之后在一個(gè)或多個(gè)時(shí)間子帶轉(zhuǎn)換中執(zhí)行動(dòng)作補(bǔ)償時(shí)間濾波,并且其中至少一些動(dòng)作補(bǔ)償時(shí)間濾波是和從基層編解碼器輸出的重建視頻中的一個(gè)或多個(gè)參考圖像有關(guān)。
9.如權(quán)利要求8的方法,其中動(dòng)作補(bǔ)償時(shí)間濾波包括預(yù)測(cè)階段和更新階段,并且其中對(duì)于一個(gè)或多個(gè)大塊中的每一個(gè)的動(dòng)作補(bǔ)償時(shí)間濾波包括當(dāng)來(lái)自較低級(jí)時(shí)間低通子帶的參考圖像被用在預(yù)測(cè)階段時(shí),對(duì)該參考圖像執(zhí)行更新階段;以及當(dāng)重建輸出視頻中的一個(gè)或多個(gè)參考圖像被用在預(yù)測(cè)階段時(shí),對(duì)該參考圖像跳過(guò)更新階段。
10.如權(quán)利要求1的方法,其中編碼包括在隨后的使用3D子帶視頻編碼器的編碼中再次利用來(lái)自基層編解碼器的編碼/解碼中的動(dòng)作信息。
11.如權(quán)利要求1的方法,其中編碼包括在隨后的使用3D子帶視頻編碼器的編碼中再次利用來(lái)自基層編解碼器的編碼/解碼中的內(nèi)部模式信息。
12.一種方法包括用其中嵌有基層解碼器的3D子帶視頻解碼器對(duì)視頻進(jìn)行解碼;輸出解碼結(jié)果。
13.如權(quán)利要求12的方法,其中基層解碼器被嵌在3D子帶視頻解碼器的復(fù)數(shù)個(gè)反向時(shí)間子帶轉(zhuǎn)換中間,以便使基層解碼器的解碼跟蹤一個(gè)或多個(gè)復(fù)數(shù)反向時(shí)間子帶轉(zhuǎn)換,并先于一個(gè)或多個(gè)復(fù)數(shù)反向時(shí)間子帶轉(zhuǎn)換進(jìn)行。
14.如權(quán)利要求12的方法,其中基層解碼器是具有二維反向頻率轉(zhuǎn)換的以塊為基礎(chǔ)的動(dòng)作補(bǔ)償預(yù)測(cè)解碼器。
15.如權(quán)利要求12的方法,其中解碼包括用基層解碼器對(duì)基層比特流進(jìn)行解碼,來(lái)生成重建的輸出視頻;以及對(duì)重建的輸出視頻進(jìn)行升抽樣。
16.如權(quán)利要求12的方法,其中解碼包括執(zhí)行空間子帶轉(zhuǎn)換,來(lái)生成空間低通子帶以及一個(gè)或多個(gè)空間高通子帶。用基層解碼器對(duì)基層比特流進(jìn)行解碼,來(lái)生成重建的空間低通子帶;合并殘余子帶和重建的空間低通子帶,來(lái)生成合并的低通子帶;以及在合并的低通子帶和一個(gè)或多個(gè)空間高通子帶上執(zhí)行反向空間子帶轉(zhuǎn)換。
17.如權(quán)利要求12的方法,其中解碼包括在殘余子帶上執(zhí)行一個(gè)或多個(gè)反向時(shí)間子帶轉(zhuǎn)換。
18.如權(quán)利要求12所述的方法,其中解碼包括在基層編解碼器解碼之后在一個(gè)或多個(gè)反向時(shí)間子帶轉(zhuǎn)換中執(zhí)行反向動(dòng)作補(bǔ)償時(shí)間濾波,并且其中至少一些反向動(dòng)作補(bǔ)償時(shí)間濾波是和從基層解碼器輸出的重建視頻中的一個(gè)或多個(gè)參考圖像有關(guān)。
19.如權(quán)利要求18所述的方法,其中反向動(dòng)作補(bǔ)償時(shí)間濾波包括預(yù)測(cè)階段和更新階段,并且其中對(duì)于一個(gè)或多個(gè)大塊中的每一個(gè)的動(dòng)作補(bǔ)償時(shí)間濾波包括當(dāng)來(lái)自較低級(jí)時(shí)間低通子帶的參考圖像被用在預(yù)測(cè)階段時(shí),對(duì)該參考圖像執(zhí)行更新階段;以及當(dāng)重建輸出視頻中的一個(gè)或多個(gè)參考圖像被用在預(yù)測(cè)階段時(shí),對(duì)該參考圖像跳過(guò)更新階段。
20.一種系統(tǒng)包括用于利用3D子帶視頻編碼器或3D子帶視頻解碼器處理可縮放壓縮視頻比特流的裝置;用于利用其中嵌有基層視頻編解碼器的3D子帶視頻編碼器,或者其中嵌有基層解碼器的3D子帶視頻解碼器,來(lái)處理基層壓縮視頻比特流的裝置。
全文摘要
描述了用于可縮放視頻編碼和解碼的技術(shù)和工具。例如包括嵌入式基層編解碼器以及時(shí)間子帶轉(zhuǎn)換和空間子帶轉(zhuǎn)換的3D子帶視頻編解碼器?;鶎泳幗獯a器在子帶轉(zhuǎn)換之間的位置和在可縮放視頻編碼中基層編解碼器的作用隨實(shí)施而變化。通常,基層編解碼器提供在低比特率的有效壓縮并生成與現(xiàn)有解碼器兼容的基層壓縮視頻比特流。同時(shí),3D子帶視頻編碼器在較高比特率提供空間和時(shí)間縮放性選擇,來(lái)改進(jìn)基層視頻。相應(yīng)的3D子帶視頻解碼器包括嵌入式基層解碼器。
文檔編號(hào)H04N7/50GK1738434SQ200510109820
公開(kāi)日2006年2月22日 申請(qǐng)日期2005年7月12日 優(yōu)先權(quán)日2004年7月12日
發(fā)明者吳楓, J·徐, 季向陽(yáng) 申請(qǐng)人:微軟公司