用于可伸縮視頻編碼的層間運(yùn)動(dòng)向量縮放的制作方法
【專利說明】
[0001] 交叉引用
[0002] 本發(fā)明主張?jiān)?013年3月12日提出的申請(qǐng)?zhí)枮?1/777,250、標(biāo)題為"Methods ofMotionVectorScalingwithFrameCroppingforScalableVideoCoding" 的美 國臨時(shí)專利申請(qǐng)案的優(yōu)先權(quán);主張?jiān)?013年3月19日提出的申請(qǐng)?zhí)枮?1/803, 222、標(biāo) 題為"MethodsofMotionVectorScalingandPixelPositionMappingwithFrame CroppingforScalableVideoCoding"的美國臨時(shí)申請(qǐng)案的優(yōu)先權(quán);主張?jiān)?013年4 月 22 日提出的申請(qǐng)?zhí)枮?61/814, 591、標(biāo)題為"Methodsofsimplifiedmotionvector scalingandpixelpositionmappingforscalablevideocoding',的美國臨時(shí)申請(qǐng)案 的優(yōu)先權(quán);以及主張?jiān)?013年7月15日提出的申請(qǐng)?zhí)枮?1/846, 128、標(biāo)題為"Methodsof Inter-layerMotionVectorScalingandInter-layerPixelPositionMappingwith PhaseShiftforScalableVideoCoding"的美國臨時(shí)申請(qǐng)案的優(yōu)先權(quán)。因此在全文中合 并參考這些美國臨時(shí)專利申請(qǐng)案。
技術(shù)領(lǐng)域
[0003] 本發(fā)明是有關(guān)于可伸縮視頻編碼,特別是有關(guān)于層間(inter-layer)運(yùn)動(dòng)向量縮 放和層間像素位置映射。
【背景技術(shù)】
[0004] 壓縮的數(shù)字視頻已經(jīng)廣泛地應(yīng)用于各種應(yīng)用中。例如,對(duì)于數(shù)字網(wǎng)絡(luò)的視頻流和 對(duì)于數(shù)字通道的視頻傳輸。通常,單一的視頻內(nèi)容可以通過不同特性的網(wǎng)絡(luò)來傳輸。舉例來 說,現(xiàn)場(chǎng)直播的體育賽事可以載入高寬帶數(shù)據(jù)流格式,并通過收費(fèi)視頻服務(wù)的寬帶網(wǎng)絡(luò)傳 輸。在這樣的應(yīng)用中,壓縮的視頻通常保存高分辨率和高品質(zhì),以使得視頻內(nèi)容適合于高清 晰度設(shè)備,例如,高清晰度電視或高清晰度顯示器。相同的內(nèi)容也可以載入蜂窩數(shù)據(jù)網(wǎng)絡(luò), 以使得該內(nèi)容可以在便攜式設(shè)備(例如,智能手機(jī)或通過網(wǎng)絡(luò)連接的便攜式媒體設(shè)備)上 進(jìn)行觀看。在此應(yīng)用中,由于網(wǎng)絡(luò)帶寬問題和在智能手機(jī)或便攜式設(shè)備上的低分辨率顯示, 視頻內(nèi)容通常被壓縮為低分辨率和低比特率。因此,對(duì)于不同的網(wǎng)絡(luò)環(huán)境和不同的應(yīng)用,視 頻分辨率和視頻品質(zhì)的要求是完全不同的。即使對(duì)于相同類型的網(wǎng)絡(luò),用戶可能由于不同 的網(wǎng)絡(luò)基礎(chǔ)設(shè)施和網(wǎng)絡(luò)流量狀況而感受到不同的可用帶寬。因此,用戶可能希望當(dāng)可用帶 寬較寬時(shí),接收高品質(zhì)視頻,當(dāng)網(wǎng)絡(luò)擁塞發(fā)生時(shí),接收較低品質(zhì)但是很流暢的視頻。在另一 種情況下,高端媒體播放器可以處理的高分辨率和高比特率的已壓縮視頻,然而由于限制 的計(jì)算資源,低成本的媒體播放器僅能夠處理低分辨率和低比特率的已壓縮視頻。相應(yīng)地, 需要以可伸縮的方法構(gòu)造壓縮的視頻,以使得可以從相同的已壓縮比特流處得到不同的時(shí) 空分辨率及/或不同品質(zhì)的視頻。
[0005]IS0/IECMPEG和ITU-TVCEG的聯(lián)合視頻工作組(jointvideoteam,JVT)標(biāo)準(zhǔn)化 對(duì)于H. 264/AVC標(biāo)準(zhǔn)的可伸縮視頻編碼擴(kuò)展。H. 264/AVC可伸縮視頻編碼比特流包括從低 幀率、低分辨率、和低品質(zhì)到高幀率、高清晰度和高品質(zhì)的視頻信息。此種單一的比特流能 夠適應(yīng)各種應(yīng)用并能夠在不同配置的設(shè)備上顯示。相應(yīng)地,H.264/AVC可伸縮視頻編碼適 用于各種視頻應(yīng)用,例如,視頻廣播、視頻數(shù)據(jù)流、以及視頻監(jiān)控,以適合網(wǎng)絡(luò)基礎(chǔ)設(shè)施,交 通條件,用戶偏好等。
[0006] 在可伸縮視頻編碼中,提供三種可伸縮類型,即時(shí)間可伸縮,空間可伸縮和品質(zhì)可 伸縮??缮炜s視頻編碼采用多層編碼結(jié)構(gòu)來實(shí)現(xiàn)三維可伸縮??缮炜s視頻編碼的主要目標(biāo) 是產(chǎn)生一個(gè)可伸縮比特流,以容易和迅速地適應(yīng)各種傳輸信道、不同的顯示能力、和不同的 計(jì)算資源相關(guān)的比特率要求,而無需反式編碼(trans-coding)或重編碼(re-encoding)。 可伸縮視頻編碼設(shè)計(jì)的一個(gè)重要特征是,在比特流層(bitstreamlevel)提供這種可伸縮 性。換言之,對(duì)于取得縮減空間及/或時(shí)間分辨率的視頻的比特流,可以簡(jiǎn)單地通過從需要 打算解碼的視頻的可伸縮比特流中提取網(wǎng)絡(luò)抽象層(以下簡(jiǎn)稱為NAL)單元(或網(wǎng)絡(luò)數(shù)據(jù) 包)而獲得。可另外減小用于品質(zhì)精化的NAL單元從而減小比特率及/或降低相應(yīng)視頻品 質(zhì)。在可伸縮視頻編碼中,時(shí)間可伸縮通過層級(jí)B圖片編碼結(jié)構(gòu)來提供。信噪比(以下簡(jiǎn) 稱為SNR)可伸縮通過編碼較高品質(zhì)的、包括細(xì)化系數(shù)(refinementcoefficients)的增強(qiáng) 層來實(shí)現(xiàn)。
[0007] 如圖1所示,在可伸縮視頻編碼中,基于金字塔編碼(pyramidcoding)方案支持 空間可伸縮。在具有空間可伸縮性的可伸縮視頻編碼系統(tǒng)中,首先下采樣視頻序列,以獲得 不同的空間分辨率(層)的較小圖片。例如,原始分辨率的圖片110可以通過空間抽取120 處理,而獲得分辨率降低的圖片111。如圖1所示,分辨率降低的圖片111可進(jìn)一步通過空 間抽取121處理,而獲得分辨率進(jìn)一步減小的圖象112。除二階(dyadic)空間分辨率之外, 該空間分辨率在每一層減小一半,可伸縮視頻編碼還支持任意分辨率的比率,這被稱為擴(kuò) 展空間可縮放(extendedspatialscalability,ESS)。圖1中的可伸縮視頻編碼系統(tǒng)描述 了三層空間可伸縮系統(tǒng)的示意圖,其中第〇層對(duì)應(yīng)于具有最低空間分辨率的圖片,第2層對(duì) 應(yīng)于具有最高空間分辨率的圖片。不需要參考其他層,可以編碼第〇層,即單層的編碼。例 如,使用編碼運(yùn)動(dòng)補(bǔ)償和幀內(nèi)預(yù)測(cè)130編碼最底層圖片112。
[0008] 運(yùn)動(dòng)補(bǔ)償和幀內(nèi)預(yù)測(cè)130將生成語法元素和編碼相關(guān)信息(例如,運(yùn)動(dòng)信息),以 進(jìn)一步用于熵編碼140。圖1實(shí)際上描述了一個(gè)聯(lián)合可伸縮視頻編碼系統(tǒng),該系統(tǒng)提供空間 可伸縮和品質(zhì)可伸縮(也稱為SNR可伸縮)。該系統(tǒng)也可提供時(shí)間可伸縮,這并沒有明確 顯示出來。對(duì)于每一個(gè)單層編碼,編碼殘差(residualcodingerrors)可以使用SNR增強(qiáng) 層編碼150而改善。圖1中SNR增強(qiáng)層可以提供多個(gè)品質(zhì)層(level)(品質(zhì)可伸縮)。支 持分辨率層的每一個(gè)品質(zhì)層,可以由各自的單層運(yùn)動(dòng)補(bǔ)償和幀內(nèi)預(yù)測(cè)進(jìn)行編碼,例如非可 伸縮編碼系統(tǒng)?;谝粋€(gè)或多個(gè)的較低空間層,也可以使用層間編碼來編碼每個(gè)較高空間 層。舉例來說,在宏塊或其他區(qū)塊單元的基礎(chǔ)上,使用根據(jù)第〇層視頻的層間預(yù)測(cè)或者使用 單層編碼,來自適應(yīng)編碼第1層視頻。同樣地,使用基于重構(gòu)的第1層視頻的層間預(yù)測(cè)或使 用單層編碼,來自適應(yīng)編碼第2層視頻。如圖1所示,第1層圖片111可以通過運(yùn)動(dòng)補(bǔ)償 和幀內(nèi)預(yù)測(cè)131、基本層熵編碼141和SNR增強(qiáng)層編碼151來編碼。如圖1所示,運(yùn)動(dòng)補(bǔ)償 和幀內(nèi)預(yù)測(cè)131也利用重建的基本層視頻數(shù)據(jù),其中在空間第1層中的編碼塊可使用重建 的基本層視頻數(shù)據(jù)作為附加的幀內(nèi)預(yù)測(cè)數(shù)據(jù)(即,不涉及運(yùn)動(dòng)補(bǔ)償)。相似地,第2層圖片 110可以通過運(yùn)動(dòng)補(bǔ)償和幀內(nèi)預(yù)測(cè)132、基本層熵編碼142和SNR增強(qiáng)層編碼152來編碼。 來自所有空間層的基本層比特流和SNR增強(qiáng)層比特流通過復(fù)用器160復(fù)用產(chǎn)生可伸縮的比 特流。由于層間編碼,可以提高編碼效率。此外,編碼空間第1層需要的信息取決于重建的 第0層(層間預(yù)測(cè))??缮炜s視頻編碼系統(tǒng)中較高層被稱為增強(qiáng)層。H. 264可伸縮視頻編 碼提供三種類型的層間預(yù)測(cè)工具:層間運(yùn)動(dòng)預(yù)測(cè)、層間紋理預(yù)測(cè)(也稱為層間幀內(nèi)預(yù)測(cè))、 以及層間殘差預(yù)測(cè)。
[0009] 在可伸縮視頻編碼中,增強(qiáng)層(EL)可以重新使用在基本層(BL)中的運(yùn)動(dòng)信息,以 減少層間運(yùn)動(dòng)數(shù)據(jù)冗余。例如,增強(qiáng)層宏塊編碼可以使用一個(gè)標(biāo)志,例如在mb_type之前的 標(biāo)志base_mode_flag被確定為指示增強(qiáng)層運(yùn)動(dòng)信息是否是直接來自于基本層。如果標(biāo)志 baSe_m〇de_flag等于1時(shí),增強(qiáng)層宏塊的分割數(shù)據(jù)以及相關(guān)的參考索引和運(yùn)動(dòng)向量來自基 本層中同一位置的8X8區(qū)塊相應(yīng)的數(shù)據(jù)?;緦拥膮⒖紙D片索引直接用于增強(qiáng)層。增強(qiáng) 層的運(yùn)動(dòng)向量是自與基本層相關(guān)的數(shù)據(jù)來進(jìn)行縮放的。此外,已縮放的基本層運(yùn)動(dòng)向量可 以被用作增強(qiáng)層的附加的運(yùn)動(dòng)向量預(yù)測(cè)子(predictor)。
[0010] 層間殘差預(yù)測(cè)使用上采樣的基本層殘差信息,以減少所需編碼增強(qiáng)層殘差的信 息??墒褂秒p線性濾波器來區(qū)塊式(block-wise)上采樣基本層的同一位置的殘差,以及基 本層的同一位置的殘差可用作在增強(qiáng)層中對(duì)應(yīng)宏塊的殘差的預(yù)測(cè)。參考層殘差的上采樣以 變換區(qū)塊為基礎(chǔ)來完成,以確保濾波沒有穿越變換區(qū)塊的邊界。
[0011] 層間幀內(nèi)預(yù)測(cè)降低增強(qiáng)層的冗余紋理信息。通過區(qū)塊式上采樣同一位置的基本層 重建信號(hào),來產(chǎn)生增強(qiáng)層的預(yù)測(cè)。在層間紋理預(yù)測(cè)上采樣過程中,分別將4抽頭和2抽頭 FIR濾波器應(yīng)用于亮度和色度組分。不同于層間殘差預(yù)測(cè),層間幀內(nèi)預(yù)測(cè)的濾波總是穿越子 區(qū)塊的邊界。為簡(jiǎn)化解碼,層間幀內(nèi)預(yù)測(cè)可以僅應(yīng)用基本層中的幀內(nèi)編碼宏塊。
[0012] 在可伸縮視頻編碼中,增強(qiáng)層中的區(qū)塊的運(yùn)動(dòng)信息可利用基本層中對(duì)應(yīng)區(qū)塊的運(yùn) 動(dòng)信息。舉例來說,如圖2所示,與在基本層中對(duì)應(yīng)的位置a~h相關(guān)的運(yùn)動(dòng)信息可用于推 導(dǎo)層間預(yù)測(cè)。在圖2中,區(qū)塊210對(duì)應(yīng)于增強(qiáng)層中的當(dāng)前區(qū)塊以及區(qū)塊220為基本層中對(duì) 應(yīng)的區(qū)塊。在基本層中位置a、位置b、位置g和位置h處的運(yùn)動(dòng)信息為在增強(qiáng)層中位置A、 位置B、位置G和位置H處對(duì)應(yīng)的運(yùn)動(dòng)信息。位置c、位置d、位置e、位置f處的運(yùn)動(dòng)信息為 在增強(qiáng)層中位置C、位置D、位置E和位置F處對(duì)應(yīng)的運(yùn)動(dòng)信息。位置A、位置B、位置G和位 置H為在增強(qiáng)層中的當(dāng)前區(qū)塊的四個(gè)角的像素,以及位置C、位置D,位置E和位置F和在增 強(qiáng)層中的當(dāng)前區(qū)塊的四個(gè)中心像素。
[0013] 不僅在基本層中對(duì)應(yīng)區(qū)塊的運(yùn)動(dòng)信息而且在基本層中對(duì)應(yīng)區(qū)塊的相鄰區(qū)塊的運(yùn) 動(dòng)信息可以用作增強(qiáng)層的層間候選,而包括于合并/先進(jìn)運(yùn)動(dòng)向量預(yù)測(cè)候選清單中。如圖2 所示,在基本層中的相鄰候選,包括相鄰基本層區(qū)塊的t(右下)、a0 (左下)、al(左)、b0 (右 上)、bl(上),和b2 (左上),可用作增強(qiáng)層的候選,而包括在合并/先進(jìn)運(yùn)動(dòng)向量預(yù)測(cè)候 選的導(dǎo)出中。同一位置的增強(qiáng)層相鄰區(qū)塊分別對(duì)應(yīng)于相鄰增強(qiáng)層區(qū)塊的T(右下),A0 (左 下)、A1 (左),B0 (右上),B1 (頂部)和B2 (左上)。
[0014] 高效率視頻編碼(High-EfficiencyVideoCoding,HEVC)為由聯(lián)合視頻編碼組 (JCT-VC)開發(fā)的新的國際視頻編碼標(biāo)準(zhǔn)。HEVC的可伸縮擴(kuò)展(即,SHVC)也在開發(fā)中。在 HEVC中,空間和時(shí)間范圍內(nèi)的相鄰區(qū)塊的運(yùn)動(dòng)信息用于推導(dǎo)合并和運(yùn)動(dòng)向量預(yù)測(cè)候選。運(yùn) 動(dòng)信息包括幀間預(yù)測(cè)方向(inter_pred_idc)、參考索引(refldx)、運(yùn)動(dòng)向量、運(yùn)動(dòng)向量預(yù) 測(cè)子、運(yùn)動(dòng)向量預(yù)測(cè)子索引、合并索引、合并候選等。在空間運(yùn)動(dòng)向量預(yù)測(cè)子的推導(dǎo)過程中, 運(yùn)動(dòng)向量預(yù)測(cè)子可自指向作為目標(biāo)參考圖片的相同參考圖片的運(yùn)動(dòng)向量來得到,或自指向 不同參考圖片的運(yùn)動(dòng)向量來得到。當(dāng)運(yùn)動(dòng)向量預(yù)測(cè)子自指向不同參考圖片的運(yùn)動(dòng)向量而得 到時(shí),該運(yùn)動(dòng)向量被縮放至目標(biāo)參考圖片并作為最終運(yùn)動(dòng)向量預(yù)測(cè)子。在空間和時(shí)間運(yùn)動(dòng) 向量預(yù)測(cè)子的推導(dǎo)過程中,需要運(yùn)用除法(division)來縮放運(yùn)動(dòng)向量?;诋?dāng)前圖片和目 標(biāo)圖片之間的距離和在同位圖片和對(duì)于同位區(qū)塊的參考圖片之間的距離的比例來計(jì)算縮 放因子。在運(yùn)動(dòng)向量縮放過程中,由公式(1)來定義縮放因子:
[0015]ScalingFactor=(POCcurr-POCref)/(POCcol-P0Ccol_ref) =tb/td, (1)
[0016] 其中,td為在同位圖片和由同位區(qū)塊的運(yùn)動(dòng)向量指向的參考圖片之間的圖片順序 計(jì)數(shù)距離,以及tb為當(dāng)前圖片和目標(biāo)參考圖片之間的圖片順序計(jì)數(shù)距離。用于空間運(yùn)動(dòng)向 量預(yù)測(cè)子推導(dǎo)的縮放因子可用相似的方法來得到。在ffiVC中,縮放因子按如下所示公式來 計(jì)算:
[0017]X= (2~14+|td/2|)/td,以及(2)
[0018]ScalingFactor=clip(-4096, 4095, (tbXX+32) >>6)〇(3)
[0019] 然后,被縮放的運(yùn)動(dòng)向量按如下所示的公式來得到:
[0020] ScaledMV=sign(ScalingFactorXMV)X
[0021] ((abs(ScalingFactorXMV)+127))>>8 (4)
[0022] 在SHVC測(cè)試模型1. 0(SHM_1. 0)中,層間紋理預(yù)測(cè)可在兩個(gè)方案中實(shí)現(xiàn)。第一方 案使用編碼單元級(jí)信令(signaling)來指示此編碼單元預(yù)測(cè)子是否來自已上采樣的基本 層紋理。其中,幀內(nèi)基本層模式Intra_BLmode用于發(fā)送選擇。第二方案將已上采樣的基 本層紋理包括于參考幀清單中。換句話說,與已上采樣的基本層紋理相關(guān)的參考圖片被分 配一個(gè)參考圖片索引,即參考圖片索引Refldx。此方案被稱為參考圖片索引Refldx模式。 與參考圖片相關(guān)的運(yùn)動(dòng)向量也被存儲(chǔ)并用于幀間預(yù)測(cè)。