TW201448566A - 三維視頻寫碼中導出之視差向量 - Google Patents
三維視頻寫碼中導出之視差向量 Download PDFInfo
- Publication number
- TW201448566A TW201448566A TW103107770A TW103107770A TW201448566A TW 201448566 A TW201448566 A TW 201448566A TW 103107770 A TW103107770 A TW 103107770A TW 103107770 A TW103107770 A TW 103107770A TW 201448566 A TW201448566 A TW 201448566A
- Authority
- TW
- Taiwan
- Prior art keywords
- block
- video
- ddv
- truncation
- disparity
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/56—Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/597—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
一視訊寫碼器儲存用於視訊資料之一當前圖像之一截塊的僅一導出之視差向量(DDV)。該視訊寫碼器在一基於相鄰區塊之視差向量(NBDV)導出程序中使用用於該截塊之該DDV判定用於一特定區塊之一視差向量。此外,該視訊寫碼器儲存用於該特定區塊之該視差向量作為用於該截塊之該DDV。
Description
本申請案主張2013年3月6日申請之美國臨時專利申請案第61/773,680號及2013年4月5日申請之美國臨時專利申請案第61/809,174號之權利,其中之每一者之全部內容被以引用的方式併入。
本發明係關於用於視訊寫碼之技術,且更特定言之,係關於用於三維(3D)視訊寫碼之技術。
可將數位視訊能力併入至廣泛範圍的器件內,包括數位電視、數位直接廣播系統、無線廣播系統、個人數位助理(PDA)、膝上型或桌上型電腦、數位相機、數位記錄器件、數位媒體播放器、視訊遊戲器件、視訊遊戲主控台、蜂巢式或衛星無線電電話、視訊電話會議器件及類似者。數位視訊器件實施視訊壓縮技術(諸如,在由MPEG-2、MPEG-4、ITU-T H.263、ITU-T H.264/MPEG-4、進階視訊寫碼(AVC)第10部分、高效率視訊寫碼(HEVC)定義之標準及此等標準之擴展中描述的技術),以傳輸、接收及儲存數位視訊資訊。視訊器件可藉由實施此等視訊壓縮技術較有效率地傳輸、接收、編碼、解碼及/或儲存數位視訊資訊。
視訊壓縮技術執行空間(圖像內)預測及/或時間(圖像間)預測以減少或移除視訊序列中所固有的冗餘。對於基於區塊之視訊寫碼,可將
視訊截塊(亦即,視訊圖框或視訊圖框之一部分)分割成視訊區塊。一圖像之框內寫碼(I)截塊中的視訊區塊係使用關於同一圖像中的相鄰區塊中之參考樣本之空間預測編碼的。一圖像之框間寫碼(P或B)截塊中的視訊區塊可使用關於同一圖像中的相鄰區塊中之參考樣本之空間預測或關於其他參考圖像中的參考樣本之時間預測。圖像可被稱作圖框,且參考圖像可被稱作參考圖框。
空間或時間預測導致用於待寫碼之區塊的預測性區塊。殘差資料表示待寫碼之原始區塊與預測性區塊之間的像素差。根據指向形成預測性區塊的參考樣本之區塊之運動向量編碼框間寫碼之區塊,且殘差資料指示經寫碼之區塊與預測性區塊之間的差。根據框內寫碼模式及殘差資料編碼框內寫碼之區塊。為了進一步壓縮,可將殘差資料自像素域變換至變換域,從而導致接著可量化之殘差係數。可掃描一開始按二維陣列排列的經量化之係數以便產生係數之一維向量,且可應用熵寫碼以達成甚至更多的壓縮。
前述標準(包括H.264/AVC)中之一些的擴展提供用於多視圖視訊寫碼以便產生立體或三維(「3D」)視訊之技術。詳言之,已提議用於多視圖寫碼之技術用於在AVC中使用,包括多視訊視訊寫碼(MVC)標準(其已變為H.264/AVC之多視圖擴展)。可調式視訊寫碼(SVC)標準亦已經開發為H.264/AVC之擴展。
通常,使用兩個視圖(例如,左視圖及右視圖)來達成立體視訊。可實質上同時地將左視圖之圖像與右視圖之圖像一起顯示以達成三維視訊效應。舉例而言,使用者可佩戴濾波左視圖與右視圖的經偏光之被動眼鏡。在其他實例中,可快速連續地展示兩個視圖之圖像,且使用者可佩戴按同一頻率快速關上左眼及右眼之快門但具有90度相移之主動眼鏡。
一般而言,本發明描述用於3D視訊寫碼之技術。詳言之,本發明與視差向量導出有關。根據本發明之一些技術,視訊寫碼器可儲存用於當前圖像之一截塊的一導出之視差向量(DDV)。視訊寫碼器可至少部分基於用於該截塊之DDV導出用於該截塊之第一區塊的基於相鄰區塊之視差向量(NBDV)。視訊寫碼器可至少部分基於用於該第一區塊之NBDV寫碼第一區塊。此外,視訊寫碼器可儲存用於第一區塊之NBDV作為用於該截塊之DDV。在儲存用於第一區塊之NBDV作為用於該截塊之DDV後,視訊寫碼器可至少部分基於用於該截塊之DDV導出用於該截塊之第二區塊的NBDV。此外,視訊寫碼器可至少部分基於用於該第二區塊之NBDV寫碼第二區塊。在一些情況下,視訊寫碼器可儲存用於第二區塊之NBDV作為用於該截塊之DDV。視訊寫碼器可針對該截塊之額外區塊繼續此程序。
在一實例中,本發明描述一種解碼視訊資料之方法,該方法包含:儲存用於該視訊資料之一當前圖像之一截塊的僅一DDV,其中該截塊包括多個區塊;在一NBDV導出程序中使用用於該截塊之該DDV判定用於一特定區塊之一視差向量,其中該特定區塊為該截塊之該等區塊中之一者;及儲存用於該特定區塊之該視差向量作為用於該截塊之該DDV。
在另一實例中,本發明描述一種編碼視訊資料之方法,該方法包含:儲存用於該視訊資料之一當前圖像之一截塊的僅一DDV,其中該截塊包括多個區塊;在一NBDV導出程序中使用用於該截塊之該DDV判定用於一特定區塊之一視差向量,其中該特定區塊為該截塊之該等區塊中之一者;及儲存用於該特定區塊之該視差向量作為用於該截塊之該DDV。
在另一實例中,本發明描述一種視訊寫碼器件,該視訊寫碼器件包含:一記憶體,其儲存視訊資料;及一或多個處理器,其經組態
以:儲存用於該視訊資料之一當前圖像之一截塊的僅一DDV,其中該截塊包括多個區塊;在一NBDV導出程序中使用用於該截塊之該DDV判定用於一特定區塊之一視差向量,其中該特定區塊為該截塊之該等區塊中之一者;及儲存用於該特定區塊之該視差向量作為用於該截塊之該DDV。
在另一實例中,本發明描述一種經組態以寫碼視訊資料之視訊寫碼器件,該視訊寫碼器件包含:用於儲存用於該視訊資料之一當前圖像之一截塊的僅一DDV之構件,其中該截塊包括多個區塊;用於在一NBDV導出程序中使用用於該截塊之該DDV判定用於一特定區塊之一視差向量之構件,其中該特定區塊為該截塊之該等區塊中之一者;及用於儲存用於該特定區塊之該視差向量作為用於該截塊之該DDV之構件。
在另一實例中,本發明描述一種非暫時性電腦可讀媒體,其具有儲存於其上之指令,該等指令當經執行時使一視訊寫碼器件之一或多個處理器:儲存用於視訊資料之一當前圖像之一截塊的僅一DDV,其中該截塊包括多個區塊;在一NBDV導出程序中使用用於該截塊之該DDV判定用於一特定區塊之一視差向量,其中該特定區塊為該截塊之該等區塊中之一者;及儲存用於該特定區塊之該視差向量作為用於該截塊之該DDV。
在隨附圖式及以下描述中闡明了一或多個實例之細節。自描述、圖式及申請專利範圍,其他特徵、目標及優勢將顯而易見。
10‧‧‧視訊編碼及解碼系統
12‧‧‧源器件
14‧‧‧目的地器件
16‧‧‧鏈路
18‧‧‧視訊源
20‧‧‧視訊編碼器
22‧‧‧輸出介面
28‧‧‧輸入介面
30‧‧‧視訊解碼器
32‧‧‧顯示器件
34‧‧‧儲存器件
48‧‧‧預測處理單元
50‧‧‧求和器
52‧‧‧變換處理單元
54‧‧‧量化單元
56‧‧‧熵編碼單元
58‧‧‧反量化單元
60‧‧‧反變換處理單元
62‧‧‧求和器
64‧‧‧濾波器單元
66‧‧‧參考圖像記憶體
68‧‧‧運動估計單元
70‧‧‧運動補償單元
72‧‧‧框內預測處理單元
80‧‧‧熵解碼單元
82‧‧‧預測處理單元
84‧‧‧反量化單元
86‧‧‧反變換處理單元
88‧‧‧求和器
90‧‧‧參考圖像記憶體
92‧‧‧運動補償單元
94‧‧‧框內預測處理單元
圖1為說明可利用本發明中描述之技術的一實例視訊編碼及解碼系統之方塊圖。
圖2為說明用於多視圖寫碼之一實例預測結構之概念圖。
圖3為說明一實例多視圖解碼次序之概念圖。
圖4為基於反向變形的基於區塊之視圖合成預測VSP(B-VSP)之一實例概念觀測。
圖5為說明用於基於相鄰區塊之視差向量(NBDV)導出程序之實例空間相鄰區塊之一概念圖。
圖6為說明用於NBDV導出程序之實例時間相鄰區塊之一概念圖。
圖7為說明可實施本發明之一或多個技術的一實例視訊編碼器之方塊圖。
圖8為說明可實施本發明之一或多個技術的一實例視訊解碼器之方塊圖。
圖9A為說明根據本發明之一實例的視訊編碼器之一實例操作之流程圖。
圖9B為說明根據本發明之一實例的視訊解碼器之一實例操作之流程圖。
圖10為說明根據本發明之一實例的一實例視差向量導出操作之流程圖。
一般而言,本發明描述用於基於進階編碼解碼器之多視圖視訊寫碼之技術,包括藉由H.264/進階視訊寫碼(AVC)編碼解碼器寫碼兩個或兩個以上視圖(例如,在H.264 AVC之多視圖視訊寫碼(MVC)擴展中)。本發明提議與視差向量導出有關之技術。基於3D AVC之視訊寫碼(亦即,3D-AVC)為針對三維(3D)視訊寫碼的H.264/AVC之AVC相容視訊加深度擴展。類似於H.264/AVC之MVC加深度(MVC+D)擴展,3D-AVC支援紋理及深度圖分量之寫碼。然而,本發明之技術可一般性在適用於任何多視圖視訊寫碼技術,包括高效率視訊寫碼(HEVC)標準之多視圖擴展。
在多視圖視訊寫碼中,不同視圖之視訊內容可表示不同透視。舉例而言,在第一視圖中之圖像中的視訊區塊可包括類似於第二視圖中之圖像中的視訊區塊之視訊內容。在此實例中,視訊區塊在第一視圖中之圖像中的位置與視訊區塊在第二視圖中之圖像中的位置可不同。舉例而言,在不同視圖中,在視訊區塊之位置之間可存在某一位移(亦即,視差)。在多視圖視訊寫碼中,可實現基於用於不同視圖的重建構之視圖分量之視圖間預測。視圖間預測可藉由採用以下實事來達成寫碼增益:每一視圖之表示視訊之同一時間執行個體的圖像可包括類似視訊內容。
當使用視圖間預測寫碼當前圖像中之視訊區塊時,該區塊可具有指示視圖間參考圖像中之位置的運動向量。視圖間參考圖像可為在與當前圖像相同之時間執行個體中(亦即,與該時間執行個體相關聯)但在與當前圖像不同之視圖中(亦即,與不同視圖相關聯)的參考圖像。若區塊之運動向量指示視圖間參考圖像中之位置,則運動向量可被稱作視差運動向量。視訊寫碼器(例如,視訊編碼器或視訊解碼器)可使用當前區塊之視差運動向量判定用於當前區塊之預測性區塊。若視訊寫碼器為視訊編碼器,則視訊寫碼器可使用用於當前區塊之預測性區塊來產生用於當前區塊之殘差資料。若視訊寫碼器為視訊解碼器,則視訊寫碼器可使用用於當前區塊之預測性區塊及用於當前區塊之殘差資料來重建構用於當前視訊區塊之樣本值。
此外,特定圖像中之區塊可具有類似於視圖間參考圖像中之對應的區塊之運動資訊或殘差資料的運動資訊或殘差資料。因此,視訊寫碼器可基於視圖間參考圖像中之對應的區塊之運動資訊或殘差資料預測當前圖像中的當前區塊之運動資訊或殘差資料。視訊寫碼器可判定當前區塊之視差向量以便判定在對應的區塊在視圖間參考圖像內之位置。視訊寫碼器可基於視圖間參考圖像中之對應的區塊之運動資訊
或殘差資料預測當前區塊之運動資訊或殘差資料,而與當前區塊是否具有視差運動向量無關。因此,若基於視圖間參考圖像中之對應的區塊之運動資訊或殘差資料預測當前區塊之運動資訊或殘差資料,則當前區塊被稱之為具有視差向量。當將視差向量用於稍後寫碼之區塊的視差向量導出程序時,視差向量可被稱作隱含視差向量(IDV)。用於當前區塊之視差向量可等於用於先前區塊中之一者的視差向量。
視訊寫碼器可使用基於相鄰區塊之視差向量(NBDV)導出程序導出用於當前區塊之視差向量。在NBDV導出程序中,視訊寫碼器可檢查鄰接當前區塊之區塊。相鄰區塊可包括空間相鄰區塊及時間相鄰區塊。空間相鄰區塊在與當前區塊相同之圖像(亦即,當前圖像)中。時間相鄰區塊在與當前圖像不同之一或多個圖像中。當視訊寫碼器檢查一相鄰區塊時,該視訊寫碼器可判定該相鄰區塊是否具有一視差運動向量。當視訊寫碼器判定該等相鄰區塊中之一者具有一視差運動向量時,視訊寫碼器可停止檢查相鄰區塊且可將相鄰區塊之視差運動向量轉換成用於當前區塊之視差向量。此外,若相鄰區塊中無一者具有視差運動向量,則視訊寫碼器可判定該等空間相鄰區塊中之任一者是否具有IDV。當視訊寫碼器判定該等空間相鄰區塊中之一者具有一IDV時,視訊寫碼器可停止檢查相鄰區塊且可將相鄰區塊之IDV轉換成用於當前區塊之視差向量。
關於現有NBDV導出程序,存在若干問題。舉例而言,IDV在NBDV導出程序中之使用可能需要儲存要求及記憶體存取之數目的增加。本發明之技術可解決關於NBDV導出程序之此等問題。舉例而言,根據本發明之一技術,視訊寫碼器可至少部分基於用於視訊資料之當前圖像之一截塊的導出之視差向量(DDV)導出用於該截塊之第一區塊的NBDV。該截塊可包括視訊資料之一或多個區塊。視訊寫碼器可至少部分基於用於該第一區塊之NBDV寫碼第一區塊。此外,視訊
寫碼器可儲存用於第一區塊之NBDV作為用於該截塊的經更新之DDV。在儲存用於第一區塊之NBDV作為經更新之DDV後,視訊寫碼器可至少部分基於經更新之DDV導出用於該截塊之第二區塊的NBDV。此外,視訊寫碼器可至少部分基於用於該第二區塊之NBDV寫碼第二區塊。此程序可針對截塊中之每一區塊而繼續。詳言之,可基於先前寫碼之區塊的NBDV更新用於該截塊之DDV,且接著使用經更新之DDV導出用於下一個區塊之NBDV。藉由以此方式使用DDV,視訊寫碼器可能能夠判定用於該截塊之區塊的更準確之視差向量。增加視差向量之準確度可減小位元串流大小。
圖1為說明可利用本發明中描述之技術的一實例視訊編碼及解碼系統10之方塊圖。如本文中所使用,術語「視訊寫碼器」一般指視訊編碼器及視訊解碼器兩者。在本發明中,術語「視訊寫碼」或「寫碼」可一般指視訊編碼或視訊解碼。
如在圖1中所示,系統10包括一源器件12,其產生在稍後時間將由目的地器件14解碼的經編碼之視訊資料。因此,源器件12可被稱作視訊編碼器件或視訊編碼裝置。目的地器件14可解碼由源器件12產生的經編碼之視訊資料。因此,目的地器件14可被稱作視訊寫碼器件或視訊解碼裝置。源器件12及目的地器件14可為視訊寫碼器件或視訊寫碼裝置之實例。
源器件12及目的地器件14可包含廣泛範圍之器件中的任何者,包括桌上型電腦、筆記型(亦即,膝上型)電腦、平板電腦、機上盒、電話手機(諸如,所謂的「智慧型」手機)、電視、攝影機、顯示器件、數位媒體播放器、視訊遊戲主控台、視訊串流器件或類似者。在一些情況下,源器件12及目的地器件14可經裝備,用於無線通信。
在圖1之實例中,源器件12包括一視訊源18、一視訊編碼器20及一輸出介面22。在一些實例中,輸出介面22包括一調變器/解調變器
(數據機)及/或一傳輸器。視訊源18可包括諸如視訊捕獲器件(例如,視訊攝影機)、含有先前捕獲之視訊的視訊封存、接收來自視訊內容提供者之視訊的視訊饋入介面及/或用於產生電腦圖形資料作為源視訊之電腦圖形系統的源或此等源之組合。作為一實例,若視訊源18為視訊攝影機,則源器件12及目的地器件14可形成所謂的相機電話或視訊電話。然而,本發明中描述之技術一般可適用於視訊寫碼,且可應用於無線及/或有線應用。
經捕獲、經預捕獲或電腦產生之視訊可由視訊編碼器20編碼。源器件12之輸出介面22可將經編碼之視訊資料直接傳輸至目的地器件14。儲存器件34可儲存經編碼之視訊資料供稍後由目的地器件14或用於解碼及/或播放之其他器件存取。
目的地器件14包括一輸入介面28、一視訊解碼器30及一顯示器件32。在一些情況下,輸入介面28可包括一接收器及/或一數據機。目的地器件14之輸入介面28可經由鏈路16接收經編碼之視訊資料。經由鏈路16傳遞或在儲存器件34上提供的經編碼之視訊資料可包括由視訊編碼器20產生的各種各樣之語法元素,用於由諸如視訊解碼器30之視訊解碼器在解碼視訊資料程序中使用。此等語法元素可與在通信媒體上傳輸、儲存於儲存媒體上或儲存於檔案伺服器上的經編碼之視訊資料包括在一起。
顯示器件32可與目的地器件14整合在一起或在目的地器件14外部。在一些實例中,目的地器件14可包括一整合式顯示器件,且亦可經組態以與外部顯示器件介面連接。在其他實例中,目的地器件14可為顯示器件。一般而言,顯示器件32對使用者顯示經解碼之視訊資料,且可包含各種各樣的顯示器件中之任一者,諸如,液晶顯示器(LCD)、電漿顯示器、有機發光二極體(OLED)顯示器或另一類型之顯示器件。
如上指示,目的地器件14可經由鏈路16接收待解碼的經編碼之視訊資料。鏈路16可包含能夠將經編碼之視訊資料自源器件12移動至目的地器件14的一類型之媒體或器件。在一實例中,鏈路16可包含一通信媒體以使源器件12能夠即時地將經編碼之視訊資料直接傳輸至目的地器件14。經編碼之視訊資料可根據一通信標準(諸如,無線通信協定)來調變,且傳輸至目的地器件14。通信媒體可包含任一無線或有線通信媒體,諸如,射頻(RF)頻譜或一或多個實體傳輸線。通信媒體可形成諸如區域網路、廣域網路或全球網路(諸如,網際網路)的基於封包之網路的部分。通信媒體可包括路由器、交換器、基地台或可用於有助於自源器件12至目的地器件14之通信的任一其他設備。
或者,經編碼之資料可自輸出介面22輸出至儲存器件34。類似地,經編碼之資料可由輸入器件28自儲存器件34存取。儲存器件34可包括各種各樣分散式或局部存取之資料儲存媒體中的任一者,諸如,硬碟機、Blu-ray碟、DVD、CD-ROM、快閃記憶體、揮發性或非揮發性記憶體或用於儲存經編碼之視訊資料的任一其他合適數位儲存媒體。在再一實例中,儲存器件34可對應於檔案伺服器或可保持由源器件12產生的經編碼之視訊之另一中間儲存器件。目的地器件14可經由串流或下載自儲存器件34存取儲存之視訊資料。檔案伺服器可為能夠儲存經編碼之視訊資料且將彼經編碼之視訊資料傳輸至目的地器件14的任一類型之伺服器。實例檔案伺服器包括網路伺服器(例如,用於網站)、檔案轉移協定(FTP)伺服器、網路附接式儲存(NAS)器件、本地碟機或將資料提供至其他計算器件的其他類型之器件或系統。目的地器件14可經由任一標準資料連接(包括網際網路連接)存取經編碼之視訊資料。此可包括無線頻道(例如,Wi-Fi連接)、有線連接(例如,DSL、電纜數據機等)或適合於存取儲存於檔案伺服器上的經編碼之視訊資料之兩者之組合。經編碼之視訊資料自儲存器件34之傳輸可為
串流傳輸、下載傳輸或兩者之組合。
本發明之技術未必限於無線應用或環境。該等技術可應用於支援各種各樣之多媒體應用(諸如,空中電視廣播、有線電視傳輸、衛星電視傳輸、串流視訊傳輸(例如,經由網際網路)、用於在資料儲存媒體上儲存的數位視訊之編碼、儲存於資料儲存媒體上的數位視訊之解碼或其他應用)中之任何者的視訊寫碼。在一些實例中,系統10可經組態以支援單向或雙向視訊傳輸以支援諸如視訊串流、視訊播放、視訊廣播及/或視訊電話之應用。
儘管在圖1中未圖示,但在一些態樣中,視訊編碼器20及視訊解碼器30每一者可與音訊編碼器及解碼器整合,且可包括適當MUX-DEMUX單元或其他硬體及軟體,以處置在共同資料串流或分開資料串流中的音訊及視訊兩者之編碼。在一些實例中,若可應用,則MUX-DEMUX單元可遵照ITU H.223多工器協定或諸如使用者資料報協定(UDP)之其他協定。
視訊編碼器20及視訊解碼器30每一者可實施為各種各樣的合適編碼器電路中之任一者,諸如,一或多個微處理器、數位信號處理器(DSP)、特殊應用積體電路(ASIC)、場可程式化閘陣列(FPGA)、離散邏輯、軟體、硬體、韌體或其任何組合。當該等技術部分地以軟體實施時,器件可將用於軟體之指令儲存於合適的非暫時性電腦可讀媒體中,且可使用一或多個處理器執行硬體中之指令以執行本發明之技術。視訊編碼器20及視訊解碼器30中之每一者可包括於一或多個編碼器或解碼器中,其中之任一者可整合為各別器件中的組合式編碼器/解碼器(CODEC)之部分。
本發明可通常指視訊編碼器20將某些資訊「傳信」至另一器件(諸如,視訊解碼器30)。術語「傳信」一般可指語法元素及/或用以解碼經壓縮之視訊資料的傳達。此通信可即時或准即時地發生。或者,
此通信可在一時間跨度上發生,諸如,可當在編碼時以經編碼之位元流將語法元素儲存至電腦可讀儲存媒體時發生,該等語法元素接著可由解碼器件在儲存至此媒體後的任何時間擷取。因此,傳信可大體指在經編碼之位元串流中提供資訊以用於在處理及/或解碼經編碼之位元串流程序中使用。
在一些實例中,視訊編碼器20及視訊解碼器30根據諸如ISO/IEC MPEG-4 Visual及ITU-T H.264(亦被稱為ISO/IEC MPEG-4 AVC)(包括其可調式視訊寫碼(SVC)擴展、多視圖視訊寫碼(MVC)擴展及基於MVC之3DV擴展)之視訊壓縮標準操作。此外,存在產生至H.264/AVC之三維視訊(3DV)寫碼擴展(即,基於AVC之3DV或「3D-AVC」)之正在進行中的努力。H.264之MVC擴展的聯合草案描述於2010年3月ITU-T建議案H.264之「Advanced video coding for generic audiovisual services_」(下文稱作H.264/AVC規範)中。在其他實例中,視訊編碼器20及視訊解碼器30可根據TU-T H.261、ISO/IEC MPEG-1 Visual、ITU-T H.262或ISO/IEC MPEG-2 Visual及ITU-T H.263、ISO/IEC MPEG-4 Visual操作。然而,本發明之技術不限於任一特定寫碼標準。
如上所指示,VCEG及MPEG之關於3D視訊寫碼之聯合合作團隊(JCT-3C)當前正開發基於H.264/AVC之3DV標準,亦即,3D-AVC。對於3D-AVC,已包括且支援除了MVC中之視圖間預測外的新寫碼工具。至2014年3月3日為止,用於3D-AVC之軟體(亦即,3D-ATM)可自以下連結下載:[3D-ATM version 6.2]:http://mpeg3dv.research.nokia.com/svn/mpeg3dv/tags/3DV-ATMv6.2/。3D-AVC之草案版本可公開獲得:Hannuksela等人之「3D-AVC draft text 5」(JCT3V-C1002,2013年1月,瑞士日內瓦)(下文稱作「3D-AVC草案本文5(3D-AVC draft text 5)」),其全部內容被以引用的方式
併入本文中。至2014年3月3日為止,3D-AVC草案本文5可自以下連結獲得:http://phenix.it-sudparis.eu/jct2/doc_end_user/documents/3_Geneva/wg11/JCT3V-C1002-v3.zip.
在其他實例中,視訊編碼器20及視訊解碼器30可根據由ITU-T視訊寫碼專業團體(VCEG)與ISO/IEC動畫專業團體(MPEG)之關於視訊寫碼之聯合合作團隊(JCT-VC)開發的高效率視訊寫碼(HEVC)標準或HEVC之擴展操作。Bross等人之「High Efficiency Video Coding(HEVC)text specification draft 9」(2012年10月10日至19日,中國上海,第11次會議,文件JCTVC-K1003)提供HEVC標準之工作草案,被稱作「HEVC工作草案9(HEVC Working Draft 9)」。至2014年3月3日為止,HEVC工作草案9可在http://phenix.int-evry.fr/jct/doc_end_user/documents/11_Shanghai/wg11/JCTVC-K1003-v12.zip處下載利用。
此外,存在產生用於HEVC之多視圖寫碼及3DV擴展的正在進行中之努力。換言之,VCEG及MPEG之關於3D視訊寫碼之聯合合作團隊(JCT-3C)正開發基於HEVC之3DV標準,針對其的標準化努力之部分包括基於HEVC的多視圖視訊編碼解碼器(MV-HEVC)及基於HEVC的3D視訊寫碼(3D-HEVC)之另一部分之標準化。視訊編碼器20及視訊解碼器30可根據對HEVC標準之此等擴展操作。HEVC之多視圖寫碼擴展可被稱作MV-HEVC。Tech等人之「MV-HEVC Working Draft 1」(JCT3V-A1004,ITU-T SG 16 WP 3與ISO/IEC JTC 1/SC 29/WG 11之關於3D視訊寫碼擴展開發之聯合合作團隊,2012年7月16日至20日,瑞典斯德哥爾摩,第1次會議)(下文稱作「JCT3V-A1004」或「MV-HEVC工作草案1(MV-HEVC Working Draft 1)」)提供用於MV-HEVC之工作草案。Tech等人之「MV-HEVC Working Draft 2」(JCT3V-
B1004,ITU-T SG 16 WP 3與ISO/IEC JTC 1/SC 29/WG 11之關於3D視訊寫碼擴展開發之聯合合作團隊,2012年10月13日至19日,中國上海,第2次會議)(下文稱作「MV-HEVC工作草案2(MV-HEVC Working Draft 2)」)提供用於MV-HEVC之另一工作草案。
HEVC之3DV擴展可被稱作3D-HEVC。Tech等人之「Draft of 3D-HEVC Test Model Description Draft」(JCT3V-B1005,ITU-T SG 16 WP 3與ISO/IEC JTC 1/SC 29/WG 11之關於3D視訊寫碼擴展開發之聯合合作團隊,2012年7月16日至20日,瑞典斯德哥爾摩,第1次會議)(下文稱作「3D-HEVC測試模型1(3D-HEVC Test Model 1)」)提供參考軟體以及用於3D-HEVC之工作草案。Tech等人之「3D-HEVC Test Model Description draft 2」(JCT3V-B1005,ITU-T SG 16 WP 3與ISO/IEC JTC 1/SC 29/WG 11之關於3D視訊寫碼擴展開發之聯合合作團隊,2012年10月,中國上海,第2次會議)(下文稱作「3D-HEVC測試模型2(3D-HEVC Test Model 2)」)包括參考軟體描述以及3D-HEVC之另一工作草案。
視訊序列通常包括一系列視訊圖框。視訊編碼器20通常對個別視訊圖框內之視訊區塊操作以便編碼視訊資料。本發明可使用術語「視訊區塊」或「區塊」指一或多個樣本區塊及用以寫碼樣本之該一或多個區塊(亦即,「樣本區塊」)中的樣本之語法結構。區塊之實例類型包括巨集區塊、巨集區塊分割區、子巨集區塊、寫碼單元、預測單元、寫碼樹型區塊等等。
視訊區塊之樣本區塊可具有固定或變化的大小,且大小可根據指定之寫碼標準而不同。樣本(亦即,「樣本值」)可指示像素之色彩分量(例如,亮度或色度分量)。在一些情況下,樣本可指示深度值。
在H.264/AVC中,一圖像群組(GOP)通常包含一系列一或多個視訊圖框。GOP可在GOP之標頭、GOP之一或多個圖框之標頭中或在其
他處包括語法資料,該語法資料描述包括於GOP中的圖框之數目。每一圖框可包括描述各別圖框之編碼模式的圖框語法資料。
此外,在H.264/AVC中,一視訊區塊可對應於一巨集區塊(MB)或一巨集區塊之一分割區(亦即,一巨集區塊分割區)。MB為具有三個樣本陣列之圖像的亮度樣本之16×16區塊及色度樣本之兩個對應的區塊,或單色圖像或使用三個分開的色彩平面寫碼之圖像的樣本之16×16區塊。MB分割區為自巨集區塊之分割以用於針對具有三個樣本陣列之圖像之框間預測而產生的亮度樣本之一區塊及色度樣本之兩個對應的區塊,或自巨集區塊之分割以用於單色圖像或使用三個分開的色彩平面寫碼之圖像之框間預測而產生的亮度樣本之一區塊。在H.264/AVC中,可按四個不同方式來分割每一框間預測之巨集區塊:一個16×16巨集區塊分割區、兩個16×8巨集區塊分割區、兩個8×16巨集區塊分割區及四個8×8巨集區塊分割區。一MB中之不同MB分割區可具有針對每一預測方向之不同參考索引值(亦即,RefPicList0或RefPicList1)。
H.264/AVC中的巨集區塊之概念不存在於HEVC中。相反地,巨集區塊由基於一般四叉樹方案之高度靈活階層式結構替換。在此方案內,定義三個類型之區塊,亦即,寫碼單元(CU)、預測單元(PU)及變換單元(TU)。CU為區塊分裂之基本單元。CU之概念類似於巨集區塊之概念,但CU不限於最大大小,且CU允許遞歸地分裂成四個同等大小之CU以改良內容自適應性。PU為框間/框內預測之基本單元。在一些實例中,PU可在單一PU中含有多個任意形狀之分割區以有效地寫碼不規則影像圖案。TU為變換之基本單元。可與CU之PU獨立地定義CU之TU。然而,TU之大小限於TU所屬之CU。區塊結構至三個不同概念之此分開可允許每一者根據其角色而最佳化,其可導致改良之寫碼效率。
為了在HEVC中產生圖像的經編碼之表示,視訊編碼器20可產生一組寫碼樹型單元(CTU)。CTU亦可被稱作「樹型區塊」或「最大寫碼單元」(LCU)。CTU中之每一者可包含亮度樣本之寫碼樹型區塊、色度樣本之兩個對應的寫碼樹型區塊及用以寫碼該等寫碼樹型區塊之樣本的語法結構。在單色圖像或具有三個分開的色彩平面之圖像中,一CTU可包含一單一寫碼樹型區塊及用以寫碼該寫碼樹型區塊之樣本的語法結構。寫碼樹型區塊可為N×N樣本區塊。因此,HEVC之測試模型描述可將一視訊圖框或圖像分成包括亮度及色度樣本兩者之一連串樹型區塊或LCU。HEVC之CTU可廣泛地與諸如H.264/AVC的其他標準之巨集區塊相似。然而,CTU未必限於特定大小,且可包括一或多個CU。
為了在HEVC中產生經寫碼之CTU,視訊編碼器20可對一CTU之寫碼樹型區塊遞歸地執行四叉樹分割,以將該寫碼樹型區塊分成寫碼區塊,因此,名為「寫碼樹型單元」。換言之,每一寫碼樹型區塊可根據四叉樹分裂成CU。舉例而言,作為四叉樹之根節點的寫碼樹型區塊可分裂成四個子節點,且每一子節點可又為母節點且分裂成另四個子節點。作為四叉樹之葉節點的最終未分裂子節點包含一寫碼節點,亦即,經寫碼視訊區塊。與經寫碼之位元流相關聯的語法資料可定義樹區塊可分裂之最大次數,且亦可定義寫碼節點之最小大小。
寫碼區塊為N×N樣本區塊。一CU可包含具有一亮度樣本陣列、一Cb樣本陣列及一Cr樣本陣列之圖像的亮度樣本之寫碼區塊及色度樣本之兩個對應的寫碼區塊,及用以寫碼該等寫碼區塊之樣本的語法結構。在單色圖像或具有三個分開的色彩平面之圖像中,一CU可包含一單一寫碼區塊及用以寫碼該寫碼區塊之樣本的語法結構。CU之大小通常對應於CU之寫碼區塊之大小且在形狀上通常為正方形。CU之大小可範圍自8×8個像素,直至具有64×64個像素或更大之最大大小
的CTU之大小。
視訊編碼器20可將CU之寫碼區塊分割成一或多個預測區塊。一般而言,PU包括與預測程序有關之資料。CU之PU可包含亮度樣本之一預測區塊、色度樣本之兩個對應的預測區塊,及用以預測該等預測區塊樣本之語法結構。在單色圖像或具有三個分開的色彩平面之圖像中,一PU可包含一單一寫碼區塊及用以寫碼該預測區塊之語法結構。預測區塊可為對其應用相同預測的樣本之矩形(例如,M×N,其中M可或可不等於N)區塊。因此,可將PU分割成形狀非正方形。在HEVC及其他視訊寫碼標準之情況下,術語「視訊區塊」或「區塊」可應用於LCU、CU或PU。
作為一實例,用於HEVC之測試模型支援在各種PU大小下之預測。假定,一特定CU之大小為2N×2N,用於HEVC之測試模型支援在2N×2N或N×N之PU大小下之框內預測及在2N×2N、2N×N、N×2N或N×N之對稱的PU大小下之框間預測。用於HEVC之測試模型亦支援用於在2N×nU、2N×nD、nL×2N及nR×2N之PU大小下之框間預測的不對稱分割。在不對稱分割中,CU之一方向未分割,而另一方向被分割成25%及75%。對應於25%分割區的CU之部分由「n」跟上「上」、「下」、「左」或「右」之指示來指示。因此,舉例而言,「2N×nU」指在頂部具有2N×0.5N PU且在底部具有2N×1.5N PU的水平分割之2N×2N CU。
在本發明中,「N×N」與「N乘N」可互換使用指就垂直及水平維度而言的視訊區塊之像素尺寸,例如,16×16個像素或16乘16個像素。一般而言,16×16區塊在垂直方向上具有16個像素(y=16)且在水平方向上具有16個像素(x=16)。同樣地,N×N區塊通常在垂直方向上具有N個像素且在水平方向上具有N個像素,其中N表示非負整數值。區塊中之像素可按列及行排列。此外,區塊未必需要在水平方向
上與在垂直方向上具有相同數目個像素。舉例而言,區塊可包含N×M個像素,其中M未必等於N。
視訊編碼器20可針對CU之每一PU之預測區塊(例如,亮度、Cb及Cr預測區塊)產生預測性區塊(例如,亮度、Cb及Cr區塊)。因此,在本發明中,CU可被稱之為分割成一或多個PU。為了易於解釋,本發明可將PU之預測區塊之大小簡稱作PU之大小。與CU相關聯之語法元素可描述(例如)將CU分割成一或多個PU。分割模式在CU經跨越或直接模式編碼、框內預測模式編碼或是框間預測模式編碼之間可不同。
在一些實例中,當諸如MB、MB分割區、CU、PU等之視訊區塊在跳過模式中寫碼時,無殘差資料經針對視訊區塊傳信。舉例而言,在H.264/AVC中,經跳過之MB為除了待將該MB解碼為「經跳過」之指示外不針對其寫碼資料之MB。在一些實例中,當使用直接模式寫碼視訊區塊時,無運動向量經針對視訊區塊寫碼。舉例而言,在H.264/AVC,直接預測為針對不解碼其運動向量之區塊(亦即,樣本之M×N陣列)的框間預測。
一視訊圖框或圖像可分割成一或多個截塊。一截塊可包括按寫碼次序(諸如,光柵掃描次序)連續排序之整數數目個視訊區塊。在H.264/AVC中,一截塊可包括按寫碼次序連續排序之整數數目個巨集區塊。在HEVC中,一截塊可包括按寫碼次序連續排序之整數數目個CTU。圖像之每一截塊可包括描述各別截塊之編碼模式的截塊語法資料。經寫碼之截塊或包含一截塊標頭及截塊資料。截塊之截塊標頭可為包括提供關於該截塊之資訊的語法元素之語法結構。截塊資料可包括該截塊的經寫碼之視訊區塊。視訊編碼器20通常對個別截塊(亦即,「視訊截塊」)內之視訊區塊操作以便編碼視訊資料。
視訊寫碼標準定義各種類型之截塊。舉例而言,H.264/AVC及
HEVC定義I截塊、P截塊及B截塊。一般而言,I截塊為僅使用框內預測解碼之截塊。一般而言,P截塊為可使用框內預測或框間預測解碼之截塊,其使用至多一運動向量及一參考索引來預測每一區塊之樣本值。一般而言,B截塊(亦即,b預測性截塊)為可使用框內預測或框間預測解碼之截塊,其使用至多兩個運動向量及參考索引來預測每一區塊之樣本值。此外,H.264/AVC定義額外截塊類型,諸如,SI截塊及SP截塊。SI截塊為僅使用框內預測且使用預測樣本之量化寫碼之截塊。因此,在H.264/AVC中,I截塊為並非僅使用框內預測解碼之SI截塊的截塊。SP截塊為可使用框內預測或框間預測藉由預測樣本之量化寫碼之截塊,其使用至多一運動向量及參考索引來預測每一區塊之樣本值。因此,在H.264/AVC中,P截塊為並非可使用框內預測或框間預測解碼之SP截塊的截塊,其使用至多一運動向量及一參考索引來預測每一區塊之樣本值。
當視訊編碼器20編碼當前視訊區塊時,視訊編碼器20可產生對應於當前視訊區塊之預測性區塊。視訊編碼器20可執行框內預測或框間預測以產生預測性區塊。舉例而言,視訊編碼器20可使用框間預測或框內預測編碼巨集區塊。當視訊編碼器20執行針對當前視訊區塊之框內預測時,視訊編碼器20可基於與當前視訊區塊相同之圖像內的樣本產生用於當前視訊區塊之預測性區塊。舉例而言,當視訊編碼器20使用框內預測編碼巨集區塊時,視訊編碼器20可基於當前圖像中之樣本產生用於該巨集區塊之一或多個預測性區塊。使用框內預測編碼之巨集區塊可被稱作框內巨集區塊。然而,H.264提供九個框內預測編碼模式,HEVC可提供多達三十三個框內預測編碼模式。當PU經框內模式編碼時,PU可包括描述用於PU之框內預測模式的資料。
當視訊編碼器20執行框間預測以產生用於當前視訊區塊之預測性區塊時,視訊編碼器20可基於一或多個參考圖像內之樣本產生預測
性區塊。參考圖像可為不同於含有當前視訊區塊之圖像的圖像。
在H.264/AVC之情況下,當視訊編碼器20使用框間預測編碼巨集區塊時,視訊編碼器20基於不同於當前圖像(亦即,含有該巨集區塊之圖像)的一或多個圖像之樣本產生用於該巨集區塊之一或多個預測性區塊。使用框間預測編碼之巨集區塊可被稱作框間巨集區塊。
在HEVC之情況下,當PU經框間模式編碼時,PU可包括定義用於PU之運動向量的資料。定義用於PU之運動向量之資料可描述(例如)運動向量之水平分量、運動向量之垂直分量、運動向量之解析度(例如,四分之一像素精確度或八分之一像素精確度)、運動向量指向之參考圖像及/或運動向量之參考圖像清單(例如,清單0、清單1或清單C),運動向量可由預測方向指示。
在視訊編碼器20產生用於當前視訊區塊之預測性區塊後,視訊編碼器20可產生用於當前視訊區塊之殘差區塊。殘差區塊中之每一樣本可基於當前視訊區塊及用於當前視訊區塊之預測性區塊之亮度或色度區塊中之對應的樣本之間的差。舉例而言,在HEVC之情況下,殘差資料可對應於未編碼之圖像之像素與對應於CU的預測值之間的像素差。視訊編碼器20可將變換應用於殘差區塊之樣本以產生變換係數區塊。視訊編碼器20可將各種變換應用至殘差區塊。舉例而言,在HEVC之情況下,在使用CU之PU的框內預測或框間預測寫碼後,視訊編碼器20可計算由CU之TU指定的變換應用於之殘差資料。換言之,視訊編碼器20可形成用於CU之殘差資料,且接著變換殘差資料以產生變換係數。在一些實例中,視訊編碼器20可將諸如離散餘弦變換(DCT)、整數變換、小波變換或概念上類似的變換之變換應用至殘差區塊。
視訊編碼器20可量化變換係數區塊以進一步減少用以表示當前視訊區塊的位元之數目。在產生變換係數之任何變換後,視訊編碼器
20可執行變換係數之量化。量化通常指變換係數經量化以可能地減少用以表示係數的資料之量從而提供進一步壓縮之程序。量化程序可減小與該等係數中之一些或所有者相關聯的位元深度。舉例而言,在量化期間可將n位元值捨去至m位元值,其中n大於m。
在一些實例中,視訊編碼器20可在量化一變換係數區塊後掃描經量化之變換係數以形成經量化之變換分量的1維向量(亦即,串行化之向量)。在一些實例中,視訊編碼器20可利用預定義之掃描次序來掃描經量化之變換係數,以產生串行化之向量。在其他實例中,視訊編碼器20可執行自適應掃描。可熵編碼表示經量化之變換係數的語法元素。換言之,在掃描了經量化之變換係數以形成一維向量後,視訊編碼器20可熵編碼該一維向量。
HEVC標準允許根據TU之變換,對於不同CU,其可不同。一般而言,將TU用於變換及量化程序。具有一或多個PU之給定CU亦可包括一或多個TU。在預測後,視訊編碼器20可根據PU自由寫碼節點識別之視訊區塊計算殘差值。接著更新寫碼節點以參考殘差值,而非原始視訊區塊。殘差值可包含可使用變換及TU中指定之其他變換資訊變換成變換係數、量化及掃描以產生用於熵寫碼的串行化變換係數之像素差值。可再一次更新寫碼節點以參考此等串行化變換係數。
視訊編碼器20可熵編碼表示變換係數區塊中之變換係數的語法元素及與當前視訊區塊相關聯之其他語法元素。舉例而言,視訊編碼器20可對語法元素執行上下文自適應性二進位算術寫碼(CABAC)、上下文自適應性可變長度寫碼(CAVLC)、指數哥倫布寫碼(exponential-Golomb coding)、基於語法之上下文自適應性二進位算術寫碼(SBAC)、機率間隔分割熵(PIPE)或另一類型之熵編碼。視訊編碼器20可輸出包括經熵編碼之語法元素及與當前視訊區塊相關聯的其他語法元素之位元流。
在HEVC中,視訊編碼器20可使用四叉樹分割將一CU之一或多個殘差區塊(例如,CU之亮度、Cb及Cr殘差區塊)分解成一或多個變換區塊(例如,亮度、Cb及Cr變換區塊)。變換區塊為對其應用同一變換的樣本之矩形(例如,正方形或非正方形)區塊。CU之TU可包含亮度樣本之一變換區塊、色度樣本之兩個對應的變換區塊,及用以變換該等變換區塊樣本之語法結構。因此,CU之每一TU可與亮度變換區塊、Cb變換區塊及Cr變換區塊相關聯。與TU相關聯之亮度變換區塊可為CU之亮度殘差區塊的子區塊。Cb變換區塊可為CU之Cb殘差區塊的子區塊。Cr變換區塊可為CU之Cr殘差區塊的子區塊。在單色圖像或具有三個分開的色彩平面之圖像中,一TU可包含一單一變換區塊及用以變換該變換區塊之樣本的語法結構。以此方式,使用被稱為「殘差四叉樹」(RQT)之四叉樹結構,可將對應於CU之殘差樣本再分成較小單元。RQT之葉節點可被稱作TU。與CU相關聯之語法元素亦可描述(例如)根據四叉樹將CU分割成一或多個TU。
在一些實例中,針對經分割之LCU定義的CU之TU經基於CU之PU之大小定大小,但情況並非始終如此。在一些實例中,TU為相同大小或小於PU。
此外,在HEVC中,視訊編碼器20可將一或多個變換應用至TU之變換區塊以產生用於TU之係數區塊。係數區塊可為變換係數之二維陣列。舉例而言,視訊編碼器20可將一或多個變換應用至TU之亮度變換區塊以產生用於TU之亮度係數區塊。變換係數可為純量。視訊編碼器20可將一或多個變換應用至TU之Cb變換區塊以產生用於TU之Cb係數區塊。視訊編碼器20可將一或多個變換應用至TU之Cr變換區塊以產生用於TU之Cr係數區塊。以此方式,與TU相關聯之像素差值可經變換以產生可量化之變換係數。
位元流可包括形成經寫碼之圖像及相關聯之資料的表示之一連
串位元。位元流可包含一連串網路抽象層(NAL)單元。NAL單元中之每一者包括NAL單元標頭且囊封一原始位元組序列有效負載(RBSP)。NAL單元標頭可包括指示NAL單元類型碼之語法元素。由NAL單元之NAL單元標頭指定的NAL單元類型碼指示NAL單元之類型。RBSP可為含有囊封於NAL單元內的整數數目個位元組之語法結構。在一些情況下,RBSP包括零個位元。
不同類型之NAL單元可囊封不同類型之RBSP。舉例而言,第一類型之NAL單元可囊封用於圖像參考集(PPS)之RBSP,第二類型之NAL單元可囊封用於經寫碼之截塊之RBSP,第三類型之NAL單元可囊封用於補充增強資訊(SEI)之RBSP,等等。囊封用於視訊寫碼資料之RBSP(如與用於參數集及SEI訊息之RBSP相反)的NAL單元可被稱作視訊寫碼層(VCL)NAL單元。囊封經寫碼之截塊的NAL單元可被稱作經寫碼之截塊NAL單元。
視訊解碼器30可接收包括視訊資料的經編碼之表示之位元流。視訊解碼器30可剖析位元流以自位元流提取語法元素。作為自位元流提取語法元素之部分,視訊解碼器30可熵解碼位元流之部分。視訊解碼器30可至少部分基於與當前視訊區塊(例如,一MB或MB分割區等)相關聯之語法元素執行框間或框內預測以產生預測性區塊。此外,視訊解碼器30可量化變換係數區塊之變換係數且可將一或多個反變換應用至變換係數區塊以產生殘差區塊。視訊解碼器30可接著至少部分基於殘差區塊及預測性區塊重建構當前視訊區塊之亮度及色度區塊。以此方式,藉由重建構一圖像之每一視訊區塊的亮度及色度區塊,視訊解碼器30可重建構該圖像。
如上提到,視訊編碼器20可執行框間預測以針對一特定視訊區塊產生預測性區塊。更特定言之,視訊編碼器20可執行單向框間預測或雙向框間預測以產生預測性區塊。
當視訊編碼器20執行針對一當前視訊區塊(例如,MB、MB分割區、PU等)之單向框間預測時,視訊編碼器20可搜尋單一參考圖像清單(例如,「清單0」或「RefPicList0」)中之參考圖像內的一參考區塊。參考區塊可為類似於當前視訊區塊之亮度及色度區塊的亮度樣本之區塊及色度樣本之對應的區塊。此外,當視訊編碼器20執行單向框間預測時,視訊編碼器20可產生用於該特定視訊區塊之運動資訊。用於該特定視訊區塊之運動資訊可包括一運動向量及一參考索引。運動向量可指示當前視訊區塊之樣本區塊之當前圖像內的位置與參考區塊之參考圖像內的位置之間的空間位移。參考索引指示含有參考區塊的參考圖像在參考圖像清單內之位置。用於當前視訊區塊之預測性區塊中的樣本可等於參考區塊中之對應的樣本。
當視訊編碼器20執行針對一當前視訊區塊(例如,MB、MB分割區、PU等)之雙向框間預測時,視訊編碼器20可搜尋在第一參考圖像清單(「清單0」或「RefPicList0」)中之參考圖像內的第一參考區塊,且可搜尋在第二參考圖像清單(「清單1」或「RefPicList1」)中之參考圖像內的第二參考區塊。視訊編碼器20可至少部分基於第一及第二參考區塊產生用於當前視訊區塊之預測性區塊。此外,視訊編碼器20可產生第一運動向量,其指示當前視訊區塊之樣本區塊與第一參考區塊之間的空間位移。視訊編碼器20亦可產生第一參考索引,其識別含有第一參考區塊之參考圖像在第一參考圖像清單內的位置。此外,視訊編碼器20可產生第二運動向量,其指示當前視訊區塊之區塊與第二參考區塊之間的空間位移。視訊編碼器20亦可產生第二參考索引,其識別包括第二參考區塊之參考圖像在第二參考圖像清單內的位置。
當視訊編碼器20執行針對當前視訊區塊(例如,MB、MB分割區、PU等)之單向框間預測時,視訊解碼器30可使用當前視訊區塊之運動資訊識別該當前視訊區塊之參考區塊。視訊解碼器30可接著基於
當前視訊區塊之參考區塊產生用於當前視訊區塊之預測性區塊。當視訊編碼器20執行針對當前視訊區塊之雙向框間預測時,視訊解碼器30可使用用於該當前視訊區塊之運動資訊識別該當前視訊區塊之兩個參考區塊。視訊解碼器30可基於當前視訊區塊之兩個參考區塊產生當前視訊區塊之預測性區塊。
在H.264/AVC中,當MB未分割成四個8×8 MB分割區時,該MB可針對整個MB分割區在每一預測方向(亦即,RefPicList0或RefPicList1)上僅具有一運動向量當將一MB分割成四個8×8 MB分割區時,每一8×8 MB分割區可進一步分割成子區塊。存在自8×8 MB分割區分割子區塊之四個不同方式:一個8×8子區塊、兩個8×4子區塊、兩個4×8子區塊或四個4×4子區塊。每一子區塊可在每一預測方向上具有不同運動向量。將8×8 MB分割區分割成子區塊之方式可叫作子區塊分割區。
多視圖視訊寫碼(MVC)為H.264/AVC之擴展。在多視圖寫碼中,存在來自不視點的同一場景之多個視圖。在多視圖寫碼之情況下,術語「存取單元」可指對應於同一時間執行個體之一組圖像。因此,視訊資料可概念化為一系列隨時間出現之存取單元。
在多視圖寫碼中,一位元串流可具有複數個層。該等層中之每一者可對應於一不同視圖。在多視圖寫碼中,若視訊解碼器(例如,視訊解碼器30)可不參考任一其他視圖中之圖像來解碼一視圖中之圖像,則可將該視圖稱作「基層視圖」。若一視圖之解碼取決於在一或多個其他視圖中的圖像之解碼,則該視圖可被稱作非基本視圖。
圖2為說明用於多視圖寫碼之一實例預測結構之概念圖。用於多視圖視訊寫碼之一典型MVC預測(包括在每一視圖內之圖像間預測及視圖間預測兩者)結構展示於圖2中,其中預測由箭頭指示,指向至之物件使用指向自之物件用於預測參考。
圖2之多視圖預測結構包括時間及視圖間預測。在圖2之實例中,每一正方形對應於一視圖分量。在圖2之實例中,將存取單元標為T0......T11,且將視圖標為S0......S7。標為「I」之正方形為框內預測之視圖分量。標為「P」之正方形為單向框間預測之視圖分量。標為「B」或「b」之正方形為雙向框間預測之視圖分量。標為「b」之正方形可使用標為「B」之正方形作為參考圖像。自第一正方形指向第二正方形之箭頭指示第一正方形可在框間預測中作為用於第二正方形之參考圖像。如由圖2中之垂直箭頭指示,在同一存取單元之不同視圖中的視圖分量可用作參考圖像。將一存取單元之一視圖分量用作用於同一存取單元之另一視圖分量的參考圖像可被稱作視圖間預測。
在MVC中,在於同一存取單元之不同視圖中捕獲的圖像間執行視圖間預測(亦即,在同一時間執行個體內)以移除視圖之間的相關性。可將藉由視圖間預測寫碼之圖像添加至用於其他非基本視圖之視圖間預測的參考圖像清單。可按與框間預測參考圖像相同之方式將視圖間預測參考圖像置於參考圖像清單之任一位置中。
在多視圖視訊寫碼之情況下,存在兩種運動向量。一種運動向量為指向時間參考圖像(亦即,在與當前圖像不同之時間執行個體中的圖像)之法向運動向量。對應於法向時間運動向量的框間預測之類型可被稱作「運動補償之預測」或「MCP」。當將視圖間預測參考圖像用於運動補償時,對應的運動向量可被稱作「視差運動向量」。換言之,視差運動向量指向在不同視圖中之圖像(亦即,視差參考圖像或視圖間參考圖像)。對應於視差運動向量的框間預測之類型可被稱作「視差補償之預測」或「DCP」。
圖3為說明一實例多視圖解碼次序之概念圖。換言之,一典型的MVC解碼次序(亦即,位元串流次序)展示於圖3中。該解碼次序配置被稱作時間優先解碼。注意,存取單元之解碼次序可不與輸出或顯示
次序相同。在圖3中,S0-S7各指多視圖視訊之不同視圖。T1-T9各表示一輸出時間執行個體。一存取單元可包括用於一輸出時間執行個體的所有視圖之經寫碼之圖像。舉例而言,第一存取單元可包括對於時間執行個體T1之所有視圖S0-S7,第二存取單元可包括對於時間執行個體T2之所有視圖S0-S7,等等。
以下章節大體論述多視圖及3D視訊寫碼。在多視圖及3D視訊寫碼之情況下,「視圖分量」可為在單一存取單元中的視圖之經寫碼表示。當一視圖包括經寫碼之紋理及深度表示時,視圖分量可包含紋理視圖分量及深度視圖分量(例如,由紋理視圖分量及深度視圖分量組成)。因此,每一紋理視圖分量可具有一對應的深度視圖分量。一般而言,紋理視圖分量包括視訊內容(例如,像素值之亮度及色度分量),且深度視圖分量可指示在紋理視圖分量內的像素之相對深度。因此,用於每一視圖之複數個視訊圖像可被稱作紋理視圖分量。在本發明中,「視圖」可指與同一視圖識別符相關聯的一連串視圖分量。
更特定言之,紋理視圖分量(亦即,紋理圖像)可為在單一存取單元中的視圖之紋理之經寫碼表示。紋理視圖分量包括顯示之實際影像內容。舉例而言,紋理視圖分量可包括亮度(Y)及色度(Cb及Cr)分量。紋理視圖可為與視圖次序索引之識別值相關聯的一連串紋理視圖分量。視圖之視圖次序索引可指示該視圖相對於其他視圖之相機位置。
本發明之技術係關於藉由寫碼紋理及深度資料來寫碼3D視訊資料。一般而言,術語「紋理」用以描述影像之亮度(luminance)(亦即,亮度(brightness)或「luma」)值及影像之色度(亦即,色彩或「chroma」)值。在一些實例中,紋理影像可包括用於藍色調(Cb)及紅色調(Cr)之一組亮度資料及兩組色度資料。在某些色度取樣格式(諸如,4:2:2或4:2:0)中,相對於亮度資料減少取樣色度資料。亦即,色
度像素之空間解析度可低於對應的亮度像素之空間解析度,例如,亮度解析度之一半或四分之一。
深度視圖分量(亦即,深度圖像)可為在單一存取單元中的視圖之深度之經寫碼表示。深度視圖可為與視圖次序索引之識別值相關聯的一連串深度視圖分量。深度視圖分量可指示像素在其對應的紋理視圖分量中之相對深度。作為一實例,深度視圖分量為包括僅亮度值之灰階影像。換言之,深度視圖分量可不傳送任何影像內容,而相反,提供像素在紋理視圖分量中之相對深度的量測。
在一些實例中,在深度視圖分量中之純白像素指示自檢視者之角度看來,在對應的紋理視圖分量中之其對應的像素更靠近,且在深度視圖分量中之純黑像素指示自檢視者之角度看來,在對應的紋理視圖分量中之其對應的像素更遠。在黑與白之間的灰階之各種陰影指示不同深度等級。舉例而言,在深度視圖分量中之深灰像素可指示在紋理視圖分量中之其對應的像素比在深度視圖分量中之淺灰像素更遠。因為僅需要灰階來識別像素之深度,所以深度視圖分量不需要包括色度分量,此係由於用於深度視圖分量之色彩值可不用來滿足任何目的。僅使用亮度值(例如,強度值)識別深度之深度視圖分量係為了說明目的而提供,且不應被視為限制性。在其他實例中,可利用任一技術來指示像素在紋理視圖分量中之相對深度。
深度資料通常描述對應的紋理資料之深度值。舉例而言,深度影像可包括各描述對應的紋理資料之深度的一組深度像素。深度資料可用以判定對應的紋理資料之水平視差。因此,接收紋理及深度資料之器件可針對一視圖(例如,左眼視圖)顯示第一紋理影像,且可使用深度資料修改第一紋理影像以藉由按基於深度值判定之水平視差值使第一影像之像素值偏移來針對另一視圖(例如,右眼視圖)顯示第二紋理影像。一般而言,水平視差(或簡稱為「視差」)描述第一視圖中之
像素至第二視圖中之對應的像素之水平空間偏移,其中兩個像素對應於如在兩個視圖中表示的同一物件之同一部分。
在再其他實例中,在與影像平面垂直之z維度上針對像素定義深度資料,使得相對於針對影像定義之零視差值定義與給定像素相關聯之深度。此深度可用以創造用於顯示像素之水平視差,使得取決於像素相對於零視差平面之z維度深度值針對左眼及右眼不同地顯示像素。零視差平面可針對視訊序列之不同部分改變,且相對於零視差平面的深度之量亦可改變。可針對左眼及右眼類似地定義位於零視差平面上之像素。可針對左眼及右眼在不同位置中顯示位於零視差平面前之像素(例如,藉由水平視差),以便創造像素顯得來自在垂直於影像平面之z方向上的影像之察覺。位於零視差平面後之像素可藉由稍微的模糊來顯示,以呈現深度之稍微察覺,或可針對左眼及右眼在不同位置中顯示(例如,藉由與位於零視差平面前的像素之水平視差相對之水平視差)。亦可使用許多其他技術來傳達或定義用於一影像之深度資料。
對於深度視圖分量中之每一像素,在紋理視圖分量中可存在一或多個對應的像素。舉例而言,若深度視圖分量與紋理視圖分量之空間解析度相同,深度視圖分量中之每一像素對應於紋理視圖分量中之一像素。若深度視圖分量之空間解析度小於紋理視圖分量之空間解析度,同則深度視圖分量中之每一像素對應於紋理視圖分量中之多個像素。深度視圖分量中的像素之值可指示紋理視圖中的對應的一或多個像素之相對深度。
在一些實例中,視訊編碼器傳信用於紋理視圖分量之視訊資料及用於視圖中之每一者的對應的深度視圖分量。視訊解碼器30可利用紋理視圖分量及深度視圖分量兩者之視訊資料來解碼用於顯示的視圖之視訊內容。顯示器接著顯示多視圖視訊以產生3D視訊。
返回參看圖3,視圖中之每一者包括圖像之集合。舉例而言,視圖S0包括圖像0、8、16、24、32、40、48、56及64之集合,且視圖S1包括圖像1、9、17、25、33、41、49、57及65之集合,等等。每一集合包括兩個圖像:一圖像被稱作紋理視圖分量,且另一圖像被稱作深度視圖分量。可將在一視圖之圖像集合內的紋理視圖分量及深度視圖分量視為彼此對應。舉例而言,將在一視圖之一圖像集合內的紋理視圖分量視為對應於在該視圖之該等圖像之集合內的深度視圖分量(亦即,深度視圖分量對應於該集合中之其紋理視圖分量,且反之亦然)。如本發明中所使用,可將對應於深度視圖分量之紋理視圖分量視為紋理視圖分量及深度視圖分量為一單一存取單元之同一視圖之部分。
本發明之下一個章節論述基於AVC之3D視訊寫碼標準(亦即,3D-AVC)。以下論述在3D-AVC中的視圖分量之寫碼次序。3D-AVC按以下方式與H.264/AVC相容:基本視圖之紋理部分完全可針對H.264/AVC解碼器解碼。對於3D-AVC中之增強型視圖分量,可在紋理前寫碼深度,且可基於來自深度視圖分量之資訊寫碼紋理視圖分量,其亦被稱為深度優先寫碼。相比之下,按紋理優先寫碼次序,在各別深度視圖分量前寫碼每一紋理視圖分量。舉例而言,在3D-AVC中的紋理及深度視圖分量之寫碼次序可舉例說明如下;其中T0及D0分別指基本視圖之紋理及深度視圖分量,且Ti及Di分別指第i個相依視圖之紋理及深度視圖分量。在以下實例中,存在三個視圖:
- T0 D0 D1 D2 T1 T2:按紋理優先寫碼次序寫碼基本視圖(T0及D0),而按深度優先寫碼次序寫碼相依視圖。當前在3D-AVC之普通測試條件中使用混合寫碼次序。
- T0 D0 T1 D1 T2 D2:按紋理優先寫碼次序寫碼所有視圖分量。
若針對Ti啟用視圖間預測,則將參考紋理視圖定義為包括視圖間
參考圖像之視圖,且將對應的深度視圖定義為具有與參考紋理視圖之視圖次序索引相同的視圖次序索引之參考深度視圖。
視訊寫碼器可將視差向量(DV)用作兩個視圖之間的視差之估計量。因為在視訊寫碼中相鄰區塊共用幾乎相同的運動/視差資訊,所以當前區塊可將相鄰區塊中之運動向量資訊用作良好預測值。現在論述經由深度圖之3D-AVC視差向量導出。用於導出視差向量之技術可隨每一低階寫碼工具而變化,但通常,歸因於深度優先寫碼次序,將相依視圖之深度資料用於紋理視圖分量寫碼。
3D-AVC中的基於迴路內區塊之視圖合成視圖間預測(BVSP)及基於深度之運動向量預測(D-MVP)為低階寫碼工具,主要使用自相依圖框中的深度圖之深度值轉換之視差向量。通常,在3D-AVC軟體中,自實際深度圖值至對特定視圖之視差的轉換程序之結果與攝影機參數一起儲存於查找表中。
可在3D-AVC中啟用BVSP。BVSP原先提議於Su等人之「3DV-CE1.a:Block-based View Synthesis Prediction for 3DV-ATM」(ITU-T SG 16 WP 3與ISO/IEC JTC 1/SC 29/WG 11之關於3D視訊寫碼擴展開發之聯合合作團隊,2012年7月16日至20日,瑞典斯德哥爾摩,第1次會議)(下文稱作「JCT3V-A0107」)中,至2014年3月3日為止,JCT3V-A0107可自以下連結下載:http://phenix.it-sudparis.eu/jct2/doc_end_user/documents/1_Stockholm/wg11/JCT3V-A0107-v1.zip。
圖4為基於反向變形的BVSP之一實例概念觀測。參看圖4,假定利用以下寫碼次序:(T0、D0、D1、T1)。紋理分量T0為基本視圖,且T1為藉由VSP寫碼之相依視圖。深度圖分量D0及D1為與T0及T1相關聯之各別深度圖。
在相依視圖T1中,自由基本視圖T0之樣本值組成的參考區R(Cb)
預測當前區塊Cb之樣本值。自與當前寫碼之紋理樣本相關聯的深度圖值,將經寫碼之樣本與參考樣本之間的位移向量表示為T1與T0之間的導出之視差向量。
在一些實例中,視訊寫碼器可使用以下方程式來執行自深度值至視差向量之轉換程序:
其中j及i為在Cb內之局部空間座標,d(Cb(j,i))為在視圖#1之深度圖影像中之深度圖值,Z為d(Cb(j,i))之實際深度值,且D為對一特定視圖#0的導出之視差向量之水平分量。參數f、b、Znear及Zfar為指定攝影機設置之參數,亦即,使用之焦距(f)、視圖#1與視圖#0之間的攝影機分隔(b),且深度範圍(Znear、Zfar)表示深度圖轉換之參數。
在一些實例中,導出之視差向量之垂直分量始終設定為等於0。在3D-AVC之一當前實施(亦即,3DV-ATM實施)中,方程式(1)及(2)已經針對每一深度圖值(0......255)預先計算,且儲存為查找表。因此,視訊寫碼器可使用查找表在不計算以上提供之方程式(1)及(2)之情況下將深度值轉換至視差向量。
與BVSP有關之一實施問題涉及BVSP區塊之指示。在一些實例中,如下指示BVSP區塊。在MB級之一旗標傳信當前MB是否藉由習知跳過/直接模式寫碼或當前MB是否藉由跳過/直接模式寫碼但自合成參考分量預測。對於每一MB分割區(自16×16至8×8),對應於一參考圖像清單之參考索引傳信參考圖像清單中之參考圖像。當視訊編碼器使用BVSP模式編碼MB分割區時,視訊編碼器不傳信MB分割區之運動向量差(MVD),因為不存在用於BVSP寫碼之區塊的運動向量。當
旗標或參考索引指示使用合成參考分量寫碼MB分割區時,視訊寫碼器可調用一個分割區之預測,如下所描述。
與BVSP有關之另一實施問題涉及預測導出程序。N×M可表示MB分割區之大小,其中N或M等於8或16。若藉由BVSP模式寫碼MB分割區,則該MB分割區進一步分割成具有等於K×K之大小的若干個子區域,其中K可為4×4、2×2或1×1。對於MB分割區之每一子區域,視訊寫碼器導出一分開的導出之視差向量。此外,對於MB分割區之每一各別子區域,視訊寫碼器使用導出之視差向量找出在視圖間參考圖像中之對應的區塊(亦即,圖4中之R(cb))之位置。視訊寫碼器可自各別子區域之對應的區塊預測各別子區域。BVSP之一實例係基於具有4×4之大小的區塊之反向變形(意謂K等於4)。未針對BVSP寫碼之區塊儲存導出之視差向量,此係因為不存在使用此等向量之寫碼工具。
另一實施問題涉及視差向量導出程序。當應用深度優先寫碼次序時,視訊寫碼器可藉由轉換在對應的非基本深度視圖中之對應的深度區塊之深度值來獲得導出之視差向量,如圖4中所示。可應用若干技術來選擇一深度區塊之深度值,諸如,深度區塊的中心位置之深度值、在一深度區塊內的所有深度值中之最大值、在一深度區塊內的四個角像素之最大值及深度區塊/深度MB之右下部像素之深度值。當應用紋理優先寫碼次序時,視訊寫碼器可停用BVSP模式,此係因為當解碼非基本紋理視圖時,對應的非基本深度視圖不可用。
兩個論述對於常規框間模式在3D-AVC中的基於深度之運動向量預測(D-MVP)。D-MVP為在當前視圖中併有相關聯之深度圖資料之運動向量預測方法,歸因於深度優先寫碼次序,該方法可用。視訊寫碼器可藉由相依(亦即,非基本)視圖中之紋理視圖分量應用D-MVP。
在3D-AVC中,將D-MVP方法併入至H.264/AVC中的基於習知中值函數之運動向量預測。特定言之,首先按檢查相鄰區塊中的運動向
量之參考索引以知曉運動預測之類型的方式識別待預測的運動向量之類型(亦即,時間運動向量或是視差運動向量)。
相鄰區塊按次序包括相對於當前區塊之左區塊、上方區塊、右上方區塊及左上方區塊。在一些實例中,當其他三個相鄰區塊(亦即,左區塊、上方區塊及右上方區塊)中之一者不含有運動向量且因此被視為不可用時,視訊寫碼器可僅使用左上方區塊中之運動向量。
然後,若三個相鄰區塊可用,則視訊寫碼器可將三個相鄰區塊中之運動向量用於當前區塊的運動向量之運動向量預測。在時間預測中,若三個相鄰區塊之運動向量皆具有同一類型且皆具有相同的參考索引,則視訊寫碼器可直接使用中值濾波器,如在H.264/AVC中所描述。否則(若三個相鄰區塊之運動向量屬於不同類型且三個相鄰區塊具有不同參考索引),則視訊寫碼器可進一步導出用於當前區塊之運動向量。當當前參考圖像為視圖間參考圖像時,視訊寫碼器可檢查運動向量類型及其在相鄰參考位置中之參考索引。若運動向量皆具有同一類型且相同的參考索引,則視訊寫碼器可應用中值濾波器。在兩個情況下,若不足三個相鄰區塊可用,則視訊寫碼器可進一步導出用於不可用區塊之運動向量,使得三個相鄰區塊變得可用。
針對相鄰區塊導出之運動向量可被稱作導出之運動向量。為了導出當前區塊之運動向量,視訊寫碼器可判定當前運動向量(亦即,相鄰區塊之運動向量)是否為視差運動向量,相鄰區塊之運動向量是否具有與當前運動向量之類型不同的類型,或相鄰區塊之運動向量不可用。若此等條件中之任一者適用,則視訊寫碼器可將當前區塊之導出之運動向量設定為視差運動向量,視訊寫碼器可自對應的深度視圖分量轉換視差運動向量。視訊寫碼器可將同一視圖之深度視圖分量之對應的區塊之四個角落之深度值中之最大值轉換至視差值。視訊寫碼器可將視差值設定至導出之運動向量之水平分量。視訊寫碼器可將導
出之運動向量之垂直分量設定為零。
若當前運動向量為時間運動向量,則視訊寫碼器可使用視差值(如上所提到類似地導出)來判定參考(基本)視圖中的參考區塊之時間運動向量。視訊寫碼器可將導出之運動向量設定為時間運動向量。若將時間運動向量視為不可用(例如,時間相鄰區塊在框內區塊中,或時間相鄰區塊之運動向量不指向參考視圖中與當前參考圖像對準的參考圖像),則視訊寫碼器可將導出之運動向量設定為零。
現在論述針對跳過及直接模式在3D-AVC中之視圖間運動預測。如在H.264/AVC規範之章節7.3.5及7.4.5中所描述,用於巨集區塊之macroblock_layer語法結構可包括指定該巨集區塊之巨集區塊類型的mb_type語法元素。mb_type語法元素之語義取決於含有該巨集區塊的截塊之截塊類型。若截塊為P截塊,則巨集區塊類型包括P_Skip類型。當巨集區塊之巨集區塊類型為P_Skip時,位元串流中無進一步的資料目前用於巨集區塊。若該截塊為B截塊,則巨集區塊類型包括B_Skip模式及B_Direct_16×16模式(亦即,B-16×16直接模式)。當巨集區塊之巨集區塊類型為B_Skip時,位元串流中無進一步的資料目前用於巨集區塊。當巨集區塊之巨集區塊類型為B_Direct_16×16時,位元串流中無運動向量差或參考索引目前用於巨集區塊。此外,當巨集區塊之巨集區塊類型為B_Direct_16×16時,函數MbPartWidth(B_Direct_16×16)及MbPartHeight(B_Direct_16×16)在導出程序中用於H.264/AVC規範之子條款8.4.1中的運動向量及參考圖框索引,以用於直接模式預測。
此外,macroblock_layer語法結構可包括一或多個sub_mb_pred語法結構。sub_mb_pred語法結構可包括指定子巨集區塊類型之四個sub_mb_type語法元素。子巨集區塊類型包括B_Direct_8×8模式(亦即,B-8×8直接模式)。當子巨集區塊之子巨集區塊類型為
B_Direct_8×8時,位元串流中無運動向量差或參考索引目前用於子巨集區塊。函數SubMbPartWidth(B_Direct_8×8)及SubMbPartHeight(B_Direct_8×8)在導出程序中用於H.264/AVC規範之子條款8.4.1中的運動向量及參考圖框索引,以用於直接模式預測。
視訊寫碼器可在P跳過、B跳過、B-16×16直接模式及B-8×8直接模式中執行在3D-AVC中之視圖間運動預測。為了執行視圖間運動預測,視訊寫碼器可首先自相鄰區塊導出用於當前區塊之視差向量,以及導出自同一視圖之深度視圖分量之深度值轉換的視差向量。若一可用空間相鄰區塊含有一視差運動向量,則視訊寫碼器可判定此視差運動向量為用於當前區塊之視差向量。否則,當相鄰區塊中無一者具有視差運動向量時,視訊寫碼器可自深度值轉換一區塊之視差運動向量(類似於在D-MVP中之轉換)。然後,視訊寫碼器可將中值濾波器應用至三個相鄰區塊以判定用於當前區塊之視差向量。
視訊寫碼器可使用用於當前區塊之視差向量來判定在參考(例如,基本)視圖中的參考區塊之時間運動向量。若時間運動向量不可用,視訊寫碼器可首先導出參考索引,且視訊寫碼器可應用如上所論述之D-MVP來產生運動向量預測值。
3D-AVC及HEVC之多視圖擴展可使用基於相鄰區塊之視差向量(NBDV)導出程序來導出區塊之視差向量。一般而言,NBDV導出程序將相鄰視差資訊用於估計用於當前區塊之視差向量。一開始定義若干空間及時間相鄰候選區塊。視訊寫碼器可按預定義之次序檢查相鄰區塊中之每一者。可藉由當前區塊與相鄰區塊之間的相關性之優先權判定預定義之次序。一旦視訊寫碼器判定相鄰區塊具有視差運動向量(亦即,相鄰區塊之運動向量指向一視圖間參考圖像),則視訊寫碼器可將該視差運動向量轉換至用於當前區塊之視差向量。
一般而言,當執行NBDV導出程序時,視訊寫碼器可使用兩組相
鄰區塊。一組相鄰區塊來自空間相鄰區塊,且另一組相鄰區塊來自時間相鄰區塊。在一些實例中,若使用NBDV導出程序導出區塊之視差向量,則術語NBDV用以指區塊之視差向量。
視訊寫碼器可將NBDV導出程序用作3D-HEVC中之視差運動導出方法,其針對所有視圖使用紋理優先寫碼次序。在當前3D-HEVC設計中,視訊寫碼器可亦使用NBDV導出程序自參考視圖之深度圖擷取深度資料。3D-HEVC首先採用在Zhang等人之「Disparity vector generation results」(ITU-T SG 16 WP 3與ISO/IEC JTC 1/SC 29/WG 11之關於3D視訊寫碼擴展開發之聯合合作團隊,2012年7月16日至20日,瑞典斯德哥爾摩,第1次會議)(下文稱作JCT3V-A0097)中提議之方法。隱含視差向量與簡化之NBDV一起包括於JCT3V-A0126:Sung等人之「3D-CE5.h:Simplification of disparity vector derivation for HEVC-based 3D video coding」(ITU-T SG 16 WP 3與ISO/IEC JTC 1/SC 29/WG 11之關於3D視訊寫碼擴展開發之聯合合作團隊,2012年7月16日至20日,瑞典斯德哥爾摩,第1次會議,文件JCT3V-A0126(下文稱作JCT3V-A0126))中。此外,在Kang等人之「3D-CE5.h related:Improvements for disparity vector derivation」(ITU-T SG 16 WP 3與ISO/IEC JTC 1/SC 29/WG 11之關於3D視訊寫碼擴展開發之聯合合作團隊,2012年10月13日至19日,中國上海,第2次會議,文件JCT3V-B0047(下文稱作JCT3V-B0047))中,藉由移除儲存於經解碼圖像緩衝器中之隱含視差向量進一步簡化NBDV導出程序,同時藉由隨機存取圖像(RAP)選擇達成改良之寫碼增益。
在一些NBDV導出程序中,視訊寫碼器使用五個空間相鄰區塊用於視差向量導出。五個空間相鄰區塊為當前PU的由A0、A1、B0、B1及B2表示之左下方區塊、左區塊、右上方區塊、上方區塊及左上方區塊。在提議之NBDV導出程序中使用之五個空間相鄰區塊可為在
HEVC中在合併模式中使用之相同的五個空間相鄰區塊。因此,在一些實例中,不需要額外記憶體存取來存取五個空間相鄰區塊。
為了檢查時間相鄰區塊,視訊寫碼器可首先執行候選圖像清單之建構程序。視訊寫碼器可將來自當前視圖之所有參考圖像作為候選圖像對待。視訊寫碼器可首先將所謂的共置型參考圖像插入至候選圖像清單內,接著為按參考索引之升序的候選圖像中之其餘者(亦即,當前視圖中之參考圖像)。亦即,視訊寫碼器可根據剩餘候選圖像出現在當前圖像之參考圖像清單(例如,RefPicList0及RefPicList1)中之次序將剩餘候選圖像插入至候選圖像清單內。在含有當前區塊之截塊之截塊標頭中的一或多個語法元素可指示共置型圖像。在一些實例中,當在兩個參考圖像清單(例如,RefPicList0及RefPicList1)中的具有相同參考索引之參考圖像可用於在NBDV導出程序中使用時,在與共置型圖像相同之參考圖像清單中的參考圖像在候選圖像清單中在其他參考圖像之前。
當視訊寫碼器藉由視圖間運動預測寫碼一區塊時,視訊寫碼器可導出一視差向量以用於選擇不同視圖中之對應的區塊。術語「隱含視差向量」或「IDV」(或在一些情況下,「導出之視差向量」)可指在視圖間運動預測中導出之視差向量。舉例而言,即使視訊寫碼器可藉由運動預測(亦即,時間運動預測)寫碼一區塊,視訊寫碼器仍不拋棄導出之視差向量。相反地,視訊寫碼器可將該視差向量用於寫碼接下來的區塊之目的。特定言之,視訊寫碼器可將該視差向量作為隱含視差向量對待,且可在NBDV導出程序中使用隱含視差向量來判定用於一或多個其他區塊之視差向量。
典型地,當視訊寫碼器執行NBDV導出程序時,視訊寫碼器按次序檢查時間相鄰區塊中之視差運動向量、空間相鄰區塊中之視差運動向量且接著隱含視差向量。一旦視訊寫碼器找到視差向量,則該視訊
寫碼器可終止NBDV導出程序。
可在3D-HEVC中啟用反向VSP。在3D-HEVC中,當視訊寫碼器應用紋理優先寫碼次序時,視訊寫碼器可針對每一PU自NBDV導出程序導出一視差向量,考慮或不考慮參考深度視圖中之深度值。在視訊寫碼器獲得一視差向量後,若一PU之4×4子區域經藉由BVSP模式寫碼,則該視訊寫碼器可進一步針對該PU之每一4×4子區域改進該視差向量。
改進程序可包括兩個步驟。在第一步驟中,視訊寫碼器可自參考深度視圖中之4×4深度區塊選擇一最大深度值。視訊寫碼器可使用導出之視差向量找出4×4深度區塊之位置。在第二步驟中,視訊寫碼器可將深度值轉換至經改進之視差向量的水平分量,同時保持經改進之視差向量的垂直分量為0。在針對一PU之一4×4子區域改進視差向量後,視訊寫碼器可使用經改進之視差向量找出參考紋理視圖中之一區塊的位置以用於運動補償。
如上所指示,3D-HEVC可使用NBDV導出程序來導出視差向量。被以引用的方式併入本文中的在2013年2月26日申請之美國臨時專利申請案第61/769,716號(下文稱作'716申請案)描述針對3D-AVC之NBDV導出程序。如在'716申請案中所描述,視訊寫碼器可使用MB級NBDV導出程序來導出用於當前MB之視差向量。視訊寫碼器可進一步將用於當前MB之視差向量用於運動向量預測。如在'716申請案中所描述,一旦視訊寫碼器識別一視差運動向量(亦即,一旦視訊寫碼器識別使用視圖間參考圖像之一時間或空間相鄰區塊),則該視訊寫碼器可返回該視差運動向量作為用於當前MB之視差向量。
圖5為說明用於NBDV導出程序之實例空間相鄰區塊之一概念圖。在'716申請案中,當視訊寫碼器在NBDV導出程序中檢查空間相鄰區塊時,視訊寫碼器可檢查該視訊寫碼器在AVC運動預測程序中檢
查之空間相鄰區塊。當視訊寫碼器在於'716申請案中提議之NBDV導出程序中檢查空間相鄰區塊時,該視訊寫碼器可按A(左)、B(上)、C(右上)及D(左上)之次序檢查空間相鄰區塊,如圖5之實例中所示。換言之,將在AVC運動預測程序中檢查之空間相鄰區塊在提議之NBDV程序中係按A(左)、B(上)、C(右上)及D(左上)之次序檢查。
此外,在於'716申請案中提議之NBDV導出程序中,視訊寫碼器可檢查時間相鄰區塊。圖6為說明用於NBDV導出程序之實例時間相鄰區塊之一概念圖。該視訊寫碼器可檢查來自與當前圖像相同之視圖中的多達兩個參考圖像之區塊:(對於B截塊,RefPicList1[0]及RefPicList0[0],且對於P截塊,RefPicList0[0])。當前,視訊寫碼器可逐個圖像地檢查三個時間區塊。對於每一圖像,視訊寫碼器可按BR(右下)、CT3(中間3)及CO2(角落2)之次序(如在圖6之實例中所指示)檢查相對於共置型MB之共置型區塊,如下所指示。
此外,在'716申請案中,NBDV導出程序之終止描述如下。視訊寫碼器可按次序檢查以上提到之相鄰區塊。類似於3D-HEVC,視訊寫碼器可首先檢查時間相鄰區塊,且稍後檢查空間相鄰區塊。一旦視訊寫碼器判定一區塊含有可用之視差運動向量,則該視訊寫碼器可終止導出程序。
當與MVC+D相比時,在'716申請案中提議的方法之寫碼增益展示於下表中。
'716申請案之提議方法啟用僅紋理寫碼,其未在3D-AVC中得到有效率地支援。當啟用相同的僅紋理組態時,來自當前3D-AVC之寫碼增益僅為1%。
在一些實例中,存取參考視圖之深度視圖分量的NBDV導出程序用於3D-AVC中。如在2013年2月27日申請之美國臨時專利申請案61/770,268('268申請案)(其全部內容被以引用的方式併入本文中)中所描述,可藉由存取基本/參考視圖之深度視圖分量來進一步改良NBDV導出程序。如在'268申請案中所描述,視訊寫碼器可使用自相鄰區塊導出之視差向量找出深度視圖分量中之深度像素的位置,使得視訊寫碼器可進一步改進視差向量。下表展示當與MVC+D相比時'268申請案的提議之方法之寫碼增益。
如上展示,'268申請案的提議之方法提供5%多之寫碼增益,但仍需要存取深度視圖分量。
針對3D-AVC開發之NBDV導出方法可具有以下問題。首先,當利用'716申請案中提議之NBDV導出方法時,包括D-MVP及BVSP之寫碼工具可變得不夠有效率,主要歸因於視差向量不夠準確之原因。其次,當利用'268申請案中提議之NBDV導出方法時,始終需要存取深度視圖分量。甚至在此情況下,自相鄰區塊獲得之初始視差向量可亦防止視訊寫碼器識別深度視圖分量中之更準確區。第三,可藉由存取
如在3D-HEVC中之IDV來改良視差向量。然而,此等IDV之使用可需要用於空間相鄰區塊及時間相鄰區塊兩者之額外儲存。在類似於運動場之大小的等級中,用於空間及時間相鄰區塊的IDV之儲存可顯著需要更多儲存,及更多記憶體存取。
本發明提議改良之NBDV程序。特定言之,本發明之技術可提供對藉由儲存用於整個截塊的一或多個導出之視差向量(DDV)來改良NBDV產生(亦即,NBDV導出程序)之解決方案。本發明之技術可主要針對NBDV方法設計,如在'716申請案及'268申請案中所描述。
根據本發明之一或多個技術,視訊寫碼器(例如,視訊編碼器20或視訊解碼器30)可儲存一或多個DDV。視訊寫碼器可將DDV用於預測隨後寫碼之視訊區塊的視差向量。換言之,儲存來自先前區塊之一或多個DDV,用於更好地預測未來區塊之視差向量。
在一些實例中,若當前區塊為深度視圖分量且視訊寫碼器導出DDV所來自之區塊為紋理視圖分量,則視訊寫碼器不使用DDV預測當前區塊之視差向量。此外,若當前區塊為紋理視圖分量且視訊寫碼器導出DDV所來自之區塊為深度視圖分量,則視訊寫碼器不使用DDV預測當前區塊之視差向量。舉例而言,不使用DDV預測不同於不含有當前MB之視圖分量的任一視圖分量之任一區塊之視差向量。換言之,不使用DDV預測不含有當前MB的任一視圖分量之任一區塊之視差向量。
此外,在一些實例中,若當前區塊及視訊寫碼器導出DDV所來自之區塊在不同截塊中,則視訊寫碼器不使用DDV預測當前區塊之視差向量。舉例而言,不使用DDV預測不同於不含有當前MB之截塊的任一截塊之任一區塊之視差向量。
如上所指示,視訊寫碼器可維護用於一截塊之一或多個DDV。在一些實例中,由視訊寫碼器針對截塊維護的DDV之數目不與當前圖
像之寬度、當前圖像之高度或當前截塊中的區塊之數目成比例。換言之,待維護的DDV之數目不與圖像寬度、圖像高度或截塊具有的區塊之數目成比例。相反,在一些實例中,由視訊寫碼器維護的DDV之數目與一MB、一CU或一LCU中的區塊之數目成比例。
在本發明之一些實例中,視訊寫碼器儲存僅一DDV。舉例而言,一旦視訊寫碼器解碼一截塊之第一(按寫碼次序)MB,則視訊寫碼器可將該MB之視差向量儲存至DDV。當寫碼當前MB時,視訊寫碼器可在NBDV導出程序中使用儲存之DDV來導出用於後續MB之視差向量。換言之,當寫碼當前MB時,當寫碼先前MB(其通常為左MB)時產生的先前儲存之DDV用於MBDV。
以此方式,在一些實例中,視訊寫碼器可儲存用於視訊資料之當前圖像之一截塊的DDV。此外,視訊寫碼器可至少部分基於用於視訊資料之當前圖像之一截塊的DDV導出用於該截塊之第一區塊的NBDV。視訊寫碼器可至少部分基於用於該第一區塊之NBDV寫碼第一區塊。此外,視訊寫碼器可儲存用於第一區塊之NBDV作為DDV。舉例而言,一旦視訊寫碼器寫碼截塊之第一MB(亦即,在此之後),則視訊寫碼器可儲存該MB之視差向量作為DDV。因此,在一些實例中,視訊寫碼器可儲存用於視訊資料之當前圖像之一截塊的僅一DDV,其中該截塊包括多個區塊。此外,在此等實例中,視訊寫碼器可在NBDV導出程序中使用用於該截塊之DDV來判定用於一特定區塊之視差向量,其中該特定區塊為該截塊之區塊中的一者。在此等實例中,視訊寫碼器可儲存用於特定區塊之視差向量作為用於該截塊之DDV。
在儲存用於第一區塊之NBDV作為DDV後,視訊寫碼器可至少部分基於該DDV導出用於該截塊之第二區塊的NBDV。在一些實例中,第一區塊緊靠第二區塊之左邊。此外,視訊寫碼器可至少部分基於用
於該第二區塊之NBDV寫碼第二區塊。在此等實例中,第一區塊可為巨集區塊,且第二區塊亦可為巨集區塊。在其他情況下,第一區塊及第二區塊可為CU,第一區塊及第二區塊可為PU,或第一區塊及第二區塊可為LCU。
在一些實例中,視訊寫碼器可更新DDV以指定當前MB之視差向量。舉例而言,僅當視訊寫碼器使用視圖間運動預測寫碼當前MB時,視訊寫碼器可更新DDV以指定當前MB之視差向量。換言之,僅當藉由使用NBDV結果(例如,使用視圖間運動預測)寫碼當前MB時,更新DDV。在另一實例中,僅當框間寫碼當前MB時,視訊寫碼器更新DDV以指定當前MB之視差向量。換言之,僅當框間寫碼當前MB時更新DDV。在另一實例中,僅當當前MB在經框間寫碼之截塊(例如,P截塊或B截塊)中時,視訊寫碼器更新DDV以指定當前MB之視差向量。因此,在其他實例中,僅當框間寫碼當前截塊時更新DDV。在另一實例中,僅當藉由跳過模式或直接模式寫碼當前MB時,視訊寫碼器更新DDV以指定當前MB之視差向量。換言之,僅當藉由跳過模式或直接模式寫碼當前MB時更新DDV。
此外,在一些實例中,視訊寫碼器可回應於判定用於一區塊之視差向量的量值大於DDV之量值來儲存用於該區塊之視差向量作為DDV。舉例而言,僅若當前MB之視差向量之水平分量大於DDV之水平分量時,視訊寫碼器可更新DDV以指定當前MB之視差向量。換言之,僅若當前MB之導出之視差向量大於先前儲存之DDV時,進一步儲存/更新該DDV。此處,比較視差向量之水平分量之絕對值。
在一些實例中,僅若DDV為零時,視訊寫碼器更新DDV以指定當前區塊之視差向量。在一些實例中,當DDV之兩個分量皆等於零時,視訊寫碼器可將DDV識別為零。在其他實例中,當DDV之水平分量等於零時,視訊寫碼器可將DDV識別為零。因此,在此等實例
中,僅若DDV為零(由兩個分量識別為零或僅水平分量為零)時,進一步儲存或更新該DDV。
在一些實例中,僅當儲存之DDV指定用於在當前區塊之左邊的區塊之視差向量時,視訊寫碼器可自儲存之DDV導出用於當前區塊之視差向量。舉例而言,若視訊寫碼器導出DDV所來自之MB不鄰近當前MB之左側,則視訊寫碼器不使用該DDV來導出用於當前MB之視差向量。換言之,若用以產生DDV之先前MB並非位於當前MB之左側的MB,則該DDV不用以導出當前MB之NBDV。
因此,在以上及本發明之其他處提供的本發明之各種實例中,視訊寫碼器可回應於滿足一條件來更新DDV以指定用於一區塊之NBDV,該條件為以下中之一者:使用視圖間運動預測寫碼第一區塊,框間寫碼第一區塊,框間寫碼截塊,藉由跳過模式或直接模式寫碼第一區塊,用於第一區塊的NBDV之量值大於DDV之量值,及DDV為非零。
視訊寫碼器可至少部分基於儲存之DDV、用於時間相鄰區塊之視差運動向量(TDV)及用於空間相鄰區塊之視差運動向量(SDV)來導出用於當前區塊之NBDV。亦即,可以各種方式將DDV與來自時間相鄰區塊之可能的視差運動向量(表示為TDV)及來自空間相鄰區塊之視差運動向量(表示為SDV)一起使用。因此,導出用於第一區塊之NBDV可包含使用該DDV、用於時間相鄰區塊之視差運動向量及用於空間相鄰區塊之視差運動向量來導出用於區塊之NBDV。
舉例而言,當視訊寫碼器不能夠識別任何TDV或SDV時,視訊寫碼器可將當前區塊之視差向量設定為DDV。換言之,在識別無可用之TDV或SDV後,將視差向量設定至DDV。因此,回應於判定TDV或SDV中無一者可用於在判定用於當前區塊之NBDV程序中使用,視訊寫碼器可判定用於當前區塊之NBDV等於儲存之DDV。
在一些實例中,僅若不存在可用之TDV或SDV且DDV為非零時,視訊寫碼器將用於當前區塊之視差向量設定為DDV。當DDV之分量中之任一者為非零時,視訊寫碼器可判定該DDV為非零。替代地,當DDV之水平分量為非零時,視訊寫碼器可判定該DDV為非零。在此實例中,若DDV為零,則視訊寫碼器可將用於當前區塊之視差向量設定為零。換言之,當時間及空間鄰居不提供可用視差運動向量時,若DDV為非零(由兩個分量識別為零或僅水平分量為零),則返回非零DDV作為NBDV;否則,返回零視差向量。
此外,在視訊寫碼器執行除了檢查DDV外亦檢查TDV及SDV之NBDV導出程序之一些實例中,視訊寫碼器可按各種次序檢查TDV、SDV及DDV。換言之,按給定預定義之次序檢查視差向量。一旦視訊寫碼器識別到可用且為非零(由兩個分量識別為非零或僅水平分量為非零)之視差運動向量,則該視訊寫碼器可自識別之視差運動向量導出當前區塊之視差向量。舉例而言,當視訊寫碼器自儲存之DDV、TDV及SDV間識別可用之非零視差運動向量同時按預定義之次序檢查儲存之DDV、TDV及SDV時,視訊寫碼器可判定用於當前區塊之視差向量等於可用之非零視差向量。可能的預定義之檢查次序可包括:■TDV、SDV及DDV;■SDV、TDV及DDV;■DDV、SDV及TDV;■DDV、TDV及SDV;■TDV、DDV及SDV;及■SDV、DDV及TDV。
舉例而言,若視訊寫碼器使用TDV、SDV及DDV或SDV、TDV及DDV之次序,則導出用於一區塊之NBDV可包含在判定時間相鄰區塊不具有視差運動向量後且在判定空間相鄰區塊不具有視差運動向量後
將用於該區塊之NBDV設定為DDV。
更特定言之,若視訊寫碼器使用TDV、SDV及DDV之次序,則視訊寫碼器可判定時間相鄰區塊是否具有視差運動向量。此外,回應於判定時間相鄰區塊具有視差運動向量,視訊寫碼器可基於時間相鄰區塊之視差運動向量導出用於該區塊之NBDV。回應於判定時間相鄰區塊不具有視差運動向量,視訊寫碼器可判定在複數個空間相鄰區塊中之任一空間相鄰區塊是否具有視差運動向量。回應於判定在複數個空間相鄰區塊中之一特定空間相鄰區塊具有一視差運動向量,該視訊寫碼器可基於該特定空間相鄰區塊之視差運動向量導出用於該區塊之NBDV。回應於判定複數個空間相鄰區塊中無空間相鄰區塊具有一視差運動向量,視訊寫碼器可導出用於該區塊之NBDV作為DDV。
在一些實例中,視訊寫碼器導出兩個或兩個以上DDV。在此等實例中,視訊寫碼器可按某一次序形成DDV。在一些此等實例中,視訊寫碼器可按與以上在實例中所描述相同的預定義之次序共同地考慮DDV與TDV及SDV,其中視訊寫碼器藉由重新執行僅具有多個DDV之DDV來執行除了檢查DDV外亦檢查TDV及SDV之NBDV導出程序。舉例而言,當自TDV、SDV及兩個或兩個以上儲存之DDV間識別可用之非零視差向量同時按預定義之檢查次序檢查TDV、SDV及兩個或兩個以上儲存之DDV時,視訊寫碼器可判定用於當前區塊之視差向量等於可用之非零視差向量,其中按預定義之檢查次序,根據特定次序檢查兩個或兩個以上儲存之DDV。
在視訊寫碼器導出兩個或兩個以上DDV之一些實例中,若一DDV並非自當前區塊之相鄰MB產生,則自用以預測當前MB之視差向量的DDV排除該DDV。
此外,在一些實例中,視訊寫碼器導出兩個DDV:DDV 1及DDV 2。一開始可將DDV 1及DDV 2設定為相同。然而,一旦寫碼為
當前MB之右相鄰MB的當前MB,則更新DDV 1,且一旦寫碼為當前MB之上方相鄰MB的當前MB,則更新DDV 2。亦即,一旦寫碼作為先前連續寫碼之MB的右相鄰MB之當前MB,則更新DDV 1,且一旦寫碼作為先前連續寫碼之MB的底部相鄰MB之當前MB,則更新DDV 2。當視訊寫碼器寫碼當前MB時,視訊寫碼器可寫碼DDV 1及DDV 2兩者,其中DDV 1具有比DDV 2高的優先權。換言之,視訊寫碼器檢查DDV 1比檢查DDV 2早。在另一實例中,若DDV 1自在當前區塊之左邊的區塊導出,則視訊寫碼器僅使用DDV 1導出當前區塊之視差向量。舉例而言,僅若DDV 1自左邊相鄰MB導出時,使用DDV 1導出視差向量。此外,若DDV 2自在當前區塊上方之區塊導出,則視訊寫碼器可使用DDV 2導出用於當前區塊之視差向量。舉例而言,若DDV 2自上方相鄰MB導出,則使用DDV 2導出視差向量。
在一些實例中,當允許存取基本/參考視圖深度視圖分量時,就使用DDV而言,兩個或兩個以上替代方法係可能的。在一方法中,當不允許存取深度視圖分量時,視訊寫碼器僅使用DDV。舉例而言,回應於判定不允許存取深度視圖分量時,視訊寫碼器可基於一或多個儲存之DDV導出用於當前區塊之視差向量。
在允許存取基本/參考視圖深度視圖分量之另一實例中,視訊寫碼器使用DDV判定如上描述之一初始視差向量。然後,視訊寫碼器進一步使用初始視差向量識別潛在地更準確之深度區塊以改進視差運動向量。舉例而言,當允許存取基本/參考視圖深度視圖分量時,視訊寫碼器可基於一或多個儲存之DDV判定用於當前區塊之初始NBDV,且可使用用於當前區塊之初始視差向量識別一潛在地更準確之深度區塊以改進用於當前區塊之初始視差向量。
此外,在允許存取基本/參考視圖深度視圖分量之一些實例中,視訊寫碼器可藉由使用如在'268申請案中描述的改進之視差向量來改
良DDV。舉例而言,當允許存取基本/參考視圖深度視圖分量時,視訊寫碼器可改進一或多個儲存之DDV。在一些實例中,視訊寫碼器儲存在MB級改進之視差向量作為DDV。在另一實例中,視訊寫碼器儲存在比MB級小之區塊級改進之視差向量作為DDV。舉例而言,視訊寫碼器可儲存在MB內之右下角的改進之視差向量作為DDV。以此方式,視訊寫碼器可基於深度視圖分量中之深度像素改進用於一區塊之NBDV,且當視訊寫碼器儲存用於該區塊之NBDV作為DDV時,視訊寫碼器可更新DDV以指定用於該區塊的改進之NBDV。
以下為本發明的提議之技術(例如,方法)至3D-HEVC之一般化。在提議之技術至3D-HEVC之一般化的第一點中,本發明之上述技術亦可應用於其中MB由PU、CU或LCU替換之3D-HEVC。在本發明的提議之技術至3D-HEVC之一般化的第二點中,當本發明的提議之技術用於3D-HEVC中時,視訊寫碼器可不需要儲存IDV。換言之,在3D-AVC、3D-HEVC及潛在地其他視訊寫碼標準及規範中,根據本發明之一些實例,視訊寫碼器可不儲存用於截塊之任一區塊的IDV。
在提議之技術至3D-HEVC之一般化的第三點中,對於每一LCU或CU,視訊寫碼器可儲存大於或等於最小寫碼單元(例如,4×4或8×8)之單元中的最右邊區塊之DDV。當寫碼當前PU時,視訊寫碼器可使用視訊寫碼器自左LCU之當前PU之左區塊導出的DDV預測當前PU之視差向量。舉例而言,當LCU為64×64且最小寫碼單元為4×4時,視訊寫碼器可儲存多達16個DDV。儲存之DDV中的一些可相同,此係因為儲存之DDV屬於同一PU之區塊。
此外,對於一LCU或CU,視訊寫碼器可儲存自該LCU或CU內的PU中之一者導出之僅一DDV。當寫碼當前PU時,視訊寫碼器可使用當前PU之左LCU/CU的DDV預測當前PU之視差向量。在一實例中,視訊寫碼器可經由一LCU或CU內的PU之所有可用DDV之一功能選擇
待儲存的該LCU或CU之DDV。
以此方式,視訊編碼器20可儲存來自一截塊之一或多個先前寫碼之區塊的一或多個DDV。此外,視訊編碼器20可基於一或多個儲存之DDV導出用於該截塊之一當前區塊的NBDV。視訊編碼器20可至少部分基於用於該當前區塊之NBDV編碼當前區塊。類似地,視訊解碼器20可儲存來自一截塊之一或多個先前寫碼之區塊的一或多個DDV。此外,視訊解碼器20可至少部分基於一或多個儲存之DDV導出用於該截塊之一當前區塊的NBDV。視訊解碼器30可至少部分基於用於該當前區塊之NBDV解碼當前區塊。
在本發明的提議之技術至3D-HEVC之一般化的另一點中,視訊寫碼器針對每一截塊可維護僅一DDV。一旦一CU經寫碼,則視訊寫碼器可更新DDV。在不同實例中,視訊寫碼器可以不同方式更新DDV。
舉例而言,當截塊未框內寫碼時,視訊寫碼器可針對每一CU調用NBDV導出程序,而與CU使用自NBDV導出程序產生之視差向量無關。換言之,一旦一截塊未框內寫碼,則針對每一CU調用NBDV,而與該CU是否使用NBDV結果無關。視訊寫碼器可使用NBDV結果更新DDV,其意謂視訊寫碼器可設定DDV等於由NBDV導出程序導出之視差向量。
在當本發明之技術一般化至3D-HEVC時視訊寫碼器可更新DDV的方式之另一實例中,在視訊寫碼器使用框間預測寫碼一CU後,該視訊寫碼器可調用NBDV導出程序。換言之,一旦一CU經框間寫碼,則針對該CU調用NBDV。視訊寫碼器可使用NBDV結果(亦即,由NBDV導出程序導出之視差向量)更新DDV。否則,若視訊寫碼器不使用框間預測寫碼CU,則視訊寫碼器不更新DDV。
在當本發明之技術一般化至3D-HEVC時視訊寫碼器可更新DDV
的方式之另一實例中,當視訊寫碼器使用NBDV結果(亦即,由NBDV導出程序導出之視差向量)寫碼CU內之PU時,視訊寫碼器可使用該NBDV結果更新DDV。在此實例中,當視訊寫碼器未使用NBDV結果寫碼PU時,視訊寫碼器不更新DDV。換言之,一旦使用NBDV結果寫碼一CU內之一PU,則使用NBDV結果更新DDV,否則不更新DDV。
在當本發明之技術一般化至3D-HEVC時視訊寫碼器可更新DDV的方式之另一實例中,當視訊寫碼器藉由跳過模式寫碼一CU之至少一PU時,該視訊寫碼器可更新DDV以指定一NBDV結果(亦即,由NBDV導出程序導出之視差向量)。換言之,在此實例中,一旦藉由跳過模式寫碼一CU內之至少一PU,則使用NBDV結果更新DDV。
在本發明的提議之技術至3D-HEVC之一般化之另一實例點中,在一些實例中,視訊寫碼器可僅針對每一截塊維護一DDV,且視訊寫碼器可僅一旦PU經寫碼時更新DDV。因此,在本發明之各種實例中,針對該截塊維護僅一DDV,且針對該截塊之在寫碼該截塊之第一區塊後寫碼的每一區塊(巨集區塊、CU、PU等),將DDV更新一次。在一些實例中,視訊寫碼器可以各種方式更新DDV。舉例而言,當一截塊未框內寫碼時,視訊寫碼器可針對該截塊之每一各別PU調用NBDV導出程序,而與該視訊寫碼器是否使用NBDV結果寫碼各別PU無關。在此實例中,視訊寫碼器可使用NBDV結果更新DDV。換言之,一旦一截塊未框內寫碼,則針對每一PU調用NBDV,而與該PU是否使用NBDV結果無關。
在當視訊寫碼器針對每一截塊維護僅一DDV時視訊寫碼器可更新DDV的方式之另一實例中,若視訊寫碼器已使用框間預測寫碼一PU,則該視訊寫碼器可調用NBDV導出程序。在此實例中,視訊寫碼器可使用NBDV結果更新DDV。否則,若視訊寫碼器不使用框間預測寫碼PU,則視訊寫碼器不使用NBDV結果更新DDV。換言之,一旦一
PU經框間寫碼,則針對該PU調用NBDV。使用NBDV結果更新DDV,否則不更新DDV。
在當視訊寫碼器針對每一截塊維護僅一DDV時視訊寫碼器可更新DDV的方式之另一實例中,當視訊寫碼器使用NBDV結果寫碼一PU時,該視訊寫碼器可使用NBDV結果更新DDV。在此實例中,當視訊寫碼器不使用NBDV結果寫碼PU時,視訊寫碼器不使用NBDV結果更新DDV。換言之,一旦使用NBDV結果寫碼一PU,則使用NBDV結果更新DDV,否則不更新DDV。
在當視訊寫碼器針對每一截塊維護僅一DDV時視訊寫碼器可更新DDV的方式之另一實例中,當視訊寫碼器使用跳過模式寫碼一PU時,該視訊寫碼器可使用NBDV結果更新DDV。換言之,一旦藉由跳過模式寫碼一PU,則使用NBDV結果更新DDV。
在本發明之技術一般化至3D-HEVC之一些實例中,視訊寫碼器針對每一截塊維護一DDV,且一旦視訊寫碼器寫碼一CU或一旦視訊寫碼器寫碼一PU,則視訊寫碼器更新DDV,當一區塊之空間及時間相鄰區塊不具有視差運動向量時,視訊寫碼器可使用DDV導出該區塊之視差向量(亦即,NBDV)。換言之,當空間及時間相鄰區塊不含有視差運動向量時,使用DDV導出NBDV。在此情況中,視訊寫碼器可將NBDV設定為相等,作為DDV。然後,視訊寫碼器可進一步藉由存取參考視圖之深度來改進設定為DDV之NBDV。在一些實例中,視訊寫碼器可設定DDV等於使用原始NBDV(亦即,區塊的未改進之視差向量)自存取參考視圖之深度視圖分量產生的改進之視差向量。
此外,在本發明之技術應用於3D-AVC或3D-HEVC之一些實例中,視訊寫碼器可僅儲存且更新DDV之水平分量,同時視訊寫碼器可始終將DDV之垂直分量設定至0。
本發明之一或多個實例技術可一般化至任一視訊編碼解碼器。
舉例而言,可針對每一區塊導出一變數。該變數經使用且有必要用於解碼當前區塊。在解碼每一區塊後,可更新該變數。如可由先前區塊更新之變數用以預測當前區塊。該變數僅自相鄰區塊預測,且不直接或間接(例如,使用差分寫碼)傳信。
圖7為說明可實施本發明之一或多個技術的一實例視訊編碼器20之方塊圖。在圖7之實例中,視訊編碼器20包括一預測處理單元48、一求和器50、一變換處理單元52、一量化單元54、一熵編碼單元56、一反量化單元58、一反變換處理單元60、一求和器62、一濾波器單元64及一參考圖像記憶體66。預測處理單元48包括一運動估計單元68(亦即,一運動及視差補償單元)、一運動補償單元70(亦即,運動及視差補償單元)及一框內預測處理單元72。
如在圖7中所示,視訊編碼器20接收視訊資料,且將資料分割成視訊區塊。此分割亦可包括將圖像分割成截塊、標題或其他較大單元,以及視訊區塊分割,例如,根據LCU及CU之四叉樹結構或藉由在HEVC之情況下分割巨集區塊。視訊編碼器20大體說明編碼待編碼之截塊內的視訊區塊之分量。截塊可分成多個視訊區塊(且可能分成被稱作標題之數組視訊區塊)。
預測處理單元48可基於誤差結果(例如,寫碼率及失真度)選擇複數個可能寫碼模式中之一者(諸如,複數個框內寫碼模式中之一者或複數個框間寫碼模式中之一者或視圖間寫碼模式)用於當前視訊區塊。預測處理單元48可執行截塊內的視訊區塊之框內寫碼及框間寫碼。框間寫碼(亦即,時間框間預測)可依賴於時間預測來減少或移除視訊序列之鄰近圖框或圖像內的視訊中之時間冗餘。框內寫碼(亦即,「框內模式」或「I模式」)可指若干基於空間之壓縮模式中之任一者。諸如單向預測(亦即,「單向預測」或「P模式」)或雙向預測(亦即,「雙向預測」或「B模式」)之框間模式可指若干基於時間之壓縮
模式中之任一者。此外,預測處理單元48可執行在不同視圖中的圖像之間的視圖間預測,如上所述。預測處理單元48可將所得框內或框間寫碼之區塊提供至求和器50以產生殘差區塊資料,且提供至求和器62以重建構原始區塊,用於用作參考圖像。
在預測處理單元48內之框內預測處理單元72可執行相對於同一圖框或截塊中之一或多個相鄰區塊的當前視訊區塊(作為待寫碼之當前區塊)之框內預測寫碼(亦即,框內寫碼)以提供空間壓縮。換言之,框內寫碼依賴於空間預測減少或移除在給定視訊圖框或圖像內的視訊中之空間冗餘。在預測處理單元48內之運動估計單元68與運動補償單元70執行相對於一或多個參考圖像及/或參考視圖中之一或多個預測區塊的當前視訊區塊之框間預測性寫碼及/或視圖間寫碼以提供時間及視圖間壓縮。
預測處理單元48可根據用於一視訊序列之預定型樣判定用於一截塊的框間預測模式及/或視圖間預測模式。預定型樣可將序列中之截塊指明為P截塊或B截塊。運動估計單元68與運動補償單元70可經高度整合,但為了概念上的目的,分開地加以說明。運動估計單元68可執行運動估計及/或視差估計。運動估計包含產生運動向量之程序,該等運動向量估計視訊區塊之運動。舉例而言,運動向量可指示在當前視訊圖框或圖像內之當前區塊(例如,PU、MB、MB分割區等)相對於在參考圖像內之預測性區塊的位移。視差估計為產生視差向量之程序,視差向量可用以自在不同視圖中之區塊預測當前寫碼之區塊。
預測性區塊可為就像素差而言發現緊密匹配待寫碼之當前區塊(例如,PU、MB、MB分割區等)的區塊,像素差可由絕對差之總和(SAD)、平方差之總和(SSD)或其他差量度判定。在一些實例中,視訊編碼器20可針對儲存於參考圖像記憶體66中的參考圖像之子整數像
素位置計算值。參考圖像記憶體66亦可被稱作經解碼圖像緩衝器。舉例而言,視訊編碼器20可內插參考圖像的四分之一像素位置、八分之一像素位置或其他分數像素位置之值。因此,運動估計單元68可執行相對於完全像素位置及分數像素位置之運動搜尋,且輸出具有分數像素精確度之運動向量。
預測處理單元48可藉由比較在經框間寫碼或視圖間預測之截塊中的一區塊(例如,PU、MB、MB分割區等)之位置與一參考圖像之預測性區塊之位置來計算該區塊的運動向量(對於運動補償之預測)及/或視差向量(對於視差補償之預測)。可自第一參考圖像清單(清單0)或第二參考圖像清單(清單1)選擇參考圖像,該等圖像清單中之每一者識別儲存於參考圖像記憶體66中之一或多個參考圖像。對於視圖間預測,參考圖像在不同視圖中。運動估計單元68可將計算之運動向量及/或視差向量發送至熵編碼單元56及運動補償單元70。
運動補償單元70可執行運動補償及/或視差補償。運動補償及/或視差補償可涉及基於藉由運動估計及/或視差估計判定之運動向量接取或產生預測性區塊,可能執行至子像素精確度之內插。在接收到用於一區塊(例如,PU、MB、MB分割區等)之運動向量及/或視差後,運動補償單元70可找出在參考圖像清單中之一者中運動向量及/或視差向量指向的預測性區塊之位置。預測處理單元48亦可產生與視訊區塊及截塊相關聯之語法元素,用於由視訊解碼器30在解碼截塊之視訊區塊程序中使用。
求和器50可藉由自正寫碼之當前視訊區塊之對應的像素值減去預測性區塊之像素值形成殘差視訊區塊,藉此形成像素差值。像素差值形成用於當前視訊區塊之殘差資料。像素差值可包括亮度差值及色度差值兩者。求和器50可表示執行此減法運算之該或該等組件。
框內預測處理單元72可執行框內預測以產生用於當前視訊區塊
之一或多個預測性區塊,作為對如上所述的由運動估計單元68及運動補償單元70執行之框間預測之替代。舉例而言,框內預測處理單元72可判定框內預測模式以用以產生用於當前視訊區塊之一或多個預測性區塊。在判定(亦即,選擇)用於一當前視訊區塊之框內預測模式後,框內預測處理單元72可將指示用於當前視訊區塊之選定框內預測模式的資訊(例如,語法元素)提供至熵編碼單元56。熵編碼單元56可編碼指示選定框內預測模式之資訊。
在一些實例中,框內預測處理單元72可使用各種框內預測模式編碼當前視訊區塊(亦即,框內預測處理單元72可產生用於當前視訊區塊之一或多個預測性區塊)。舉例而言,框內預測處理單元72可在分開的編碼遍次期間產生用於當前視訊區塊之預測性區塊。框內預測處理單元72可自測試之模式選擇一適當框內預測模式使用。舉例而言,框內預測處理單元72可使用針對各種測試之框內預測模式的速率失真分析來計算速率失真值,且在測試之框內預測模式間選擇具有最佳速率失真特性之框內預測模式。一般而言,速率失真分析判定經編碼之區塊與經編碼以產生經編碼之區塊之原始的未編碼之區塊之間的失真(或誤差)之量,以及用以產生經編碼之區塊之位元率(亦即,位元之數目)。框內預測處理單元72可自失真及速率計算各種經編碼之區塊之比率以判定哪一框內預測模式展現預測性區塊之最佳速率失真值。
在一些實例中,運動估計單元68可判定用於當前視訊區塊之視差向量。運動估計單元68可使用用於當前區塊之視差向量執行針對當前視訊區塊之運動向量預測。舉例而言,運動估計單元68可使用用於當前區塊之視差向量判定視圖間參考圖像中之一對應的區塊。此外,運動估計單元68可針對當前視訊區塊產生一運動向量候選清單(例如,合併候選清單或AMVP候選清單)。運動向量候選清單可包括指
定對應的視圖間參考區塊之一或多個運動向量的一或多個候選者。運動補償單元70可基於候選者判定預測性區塊,且可基於預測性區塊之速率失真分析及其他資料選擇該等候選者中之一者。運動補償單元70可產生指示選定候選者之一或多個語法元素。此外,在一些實例中,運動補償單元70可使用用於當前視訊區塊之視差向量執行針對當前視訊區塊之殘差預測(例如,進階殘差預測)。因此,在此等實例中,最終由運動補償單元70產生之預測性區塊可基於用於當前視訊區塊之預測性區塊與用於當前視訊區塊之殘差預測值之間的差。
運動估計單元68可使用NBDV導出程序判定用於當前視訊區塊之視差向量。根據本發明之一或多個技術,運動估計單元68可初始化用於當前截塊之一或多個DDV。運動估計單元68可在NBDV導出程序中使用用於當前截塊之一或多個DDV判定用於當前視訊區塊之視差向量。在一些實例中,運動估計單元68初始化用於當前截塊之單一DDV且更新該DDV,使得對於當前截塊之在當前截塊之第一視訊區塊後的每一各別視訊區塊,用於當前截塊之DDV指定用於按寫碼次序緊接出現在各別視訊區塊前之視訊區塊的視差向量。
以此方式,運動估計單元68可儲存用於當前圖像之當前截塊的DDV。此外,運動估計單元68可至少部分基於DDV導出用於當前截塊之第一視訊區塊的NBDV。運動補償單元70及視訊編碼器20之其他單元可至少部分基於用於第一視訊區塊之NBDV編碼第一視訊區塊。此外,運動估計單元68可儲存用於第一視訊區塊之NBDV作為DDV,藉此更新DDV。在儲存用於第一視訊區塊之NBDV作為DDV後,運動估計單元68可至少部分基於經更新之DDV導出用於該當前截塊之第二視訊區塊的NBDV。運動補償單元70及視訊編碼器20之其他單元可至少部分基於用於第二視訊區塊之NBDV編碼第二視訊區塊。運動估計單元68、運動補償單元70及視訊編碼器20之其他單元可繼續針對當前
截塊之額外視訊區塊執行此等動作。
在預測處理單元48經由框間預測或框內預測產生用於當前視訊區塊之預測性區塊後,求和器50可藉由自當前視訊區塊之對應的樣本值減去預測性區塊之樣本值而形成殘差區塊。殘差區塊中之殘差視訊資料可包括於一或多個TU中。變換處理單元52可使用變換將殘差視訊資料變換成殘差變換係數。舉例而言,變換處理單元52可使用離散餘弦變換(DCT)或概念上類似之變換來變換殘差視訊資料。在一些實例中,變換處理單元52可將殘差視訊資料自像素域轉換至變換域(諸如,頻域)。
變換處理單元52可將所得變換係數發送至量化單元54。量化單元54可量化由變換處理單元52產生之變換係數以進一步減小位元率。量化程序可減小與該等係數中之一些或所有者相關聯的位元深度。可藉由調整量化參數來修改量化之程度。在一些實例中,量化單元54可執行包括經量化之變換係數的矩陣之掃描。或者,熵編碼單元56可執行掃描。
在量化後,熵編碼單元56可熵編碼經量化之變換係數。換言之,熵編碼單元56可熵編碼表示經量化之變換係數的語法元素。舉例而言,熵編碼單元56可藉由執行上下文自適應性可變長度寫碼(CAVLC)、上下文自適應性二進位算術寫碼(CABAC)、基於語法之上下文自適應性二進位算術寫碼(SBAC)、機率間隔分割熵(PIPE)寫碼或另一熵編碼方法或技術來熵編碼經量化之變換係數。熵編碼單元56亦可熵編碼用於正寫碼之當前截塊的其他語法元素。
視訊編碼器20可輸出包括視訊資料之經編碼表示的經編碼之位元串流。位元串流可包括由熵編碼單元56產生的經熵編碼之語法元素及其他熵寫碼或未熵寫碼之語法元素。經編碼之位元串流可傳輸至視訊解碼器30或經封存用於稍後由視訊解碼器30傳輸或擷取。
反量化單元58及反變換處理單元60可分別應用反量化及反變換以重建構像素域中之殘差區塊,用於稍後用作參考圖像之參考區塊。求和器62可藉由將由反變換處理單元60產生的殘差區塊中之樣本添加至由預測處理單元48產生的一或多個預測性區塊之對應的樣本來重建構樣本區塊。在一些實例中,求和器62將重建構之殘差區塊添加至預測性區塊(例如,由運動補償單元44產生的經運動補償之預測性區塊)以產生一參考區塊用於儲存於參考圖像記憶體66中。因此,參考圖像記憶體66可為儲存視訊資料之記憶體。運動估計單元68及運動補償單元70可將該參考區塊用作一參考區塊來框間預測在後續視訊圖框或圖像中之一區塊。運動補償單元70可藉由將殘差區塊添加至在參考圖像清單中之一者內的參考圖像中之一者之預測區塊來計算參考區塊。運動補償單元70亦可將一或多個內插濾波器應用至重建構之殘差區塊以計算用於在運動估計中使用之子整數像素值。
在圖7之實例中,濾波器單元64可將一或多個濾波器應用至由求和器62產生之樣本區塊。舉例而言,濾波器單元64可應用一解區塊濾波器以濾波區塊邊界以自重建構之視訊移除方塊效應假影。在一些實例中,除瞭解區塊濾波器之外,濾波器單元64亦使用額外迴路濾波器(迴路內或迴路後)。
圖8為說明可實施本發明之一或多個技術的一實例視訊解碼器30之方塊圖。在圖8之實例中,視訊解碼器30包括一熵解碼單元80、一預測處理單元82、一反量化單元84、一反變換處理單元86、一求和器88及一參考圖像記憶體90。預測處理單元82包括一運動補償單元92(亦即,一運動及視差補償單元)及一框內預測處理單元94。在一些實例中,視訊解碼器30可執行大體與關於來自圖7之視訊編碼器20描述之編碼遍次互逆的解碼遍次。
視訊解碼器30自視訊編碼器20接收表示經編碼之截塊之視訊區
塊及相關聯之語法元素的經編碼之視訊位元串流。視訊解碼器30之熵解碼單元80可熵解碼該位元串流以產生經量化之係數、運動向量、視差向量及其他語法元素。更特定言之,熵解碼單元80可執行剖析程序以自視訊位元串流獲得語法元素。作為執行剖析程序之部分,熵解碼單元80可熵解碼在位元串流中傳信的經熵編碼之語法元素。熵解碼單元80可將與運動向量、視差向量及其他資訊相關聯之語法元素轉遞至預測處理單元82。視訊解碼器30可在視訊截塊級別及/或視訊區塊級別接收語法元素。
當將當前截塊寫碼為框內寫碼截塊(例如,I截塊、SI截塊等)時,預測處理單元82之框內預測處理單元94可基於傳信之框內預測模式及來自當前圖框或圖像的先前解碼之區塊之資料產生用於當前截塊之視訊區塊之預測資料。當當前截塊經框間寫碼(例如,P截塊、B截塊、SP截塊等)時,預測處理單元82之運動補償單元92可基於運動向量、視差向量及自熵解碼單元80接收之語法元素產生(produce)(亦即,產生(generate))用於當前截塊之視訊區塊的預測性區塊。
視訊解碼器30之預測處理單元82可基於儲存於參考圖像記憶體90(其亦被稱作經解碼圖像緩衝器(DPB))中之參考圖像使用(例如,預設)建構技術來建構參考圖框清單--清單0及清單1。運動補償單元92可自參考圖像清單中之一或多者內的一或多個參考圖像產生預測性區塊。
運動補償單元92可藉由剖析運動向量及其他語法元素來判定用於當前截塊之視訊區塊的預測資訊,且可使用預測資訊產生用於正解碼之當前視訊區塊的預測性區塊。舉例而言,運動補償單元92可使用接收之語法元素中之一些判定用以寫碼截塊之視訊區塊的預測模式(例如,框內或框間預測)、判定框間預測或視圖間預測截塊類型(例如,B截塊、P截塊或GPB截塊)之語法元素、判定針對截塊之參考圖
像清單中之一或多者的建構資訊之語法元素、判定用於截塊之每一框間編碼之視訊區塊的運動向量及/或視差向量之語法元素、判定用於截塊之每一框間寫碼之視訊區塊的框間預測狀態之語法元素及判定解碼當前截塊中之視訊區塊的其他資訊之語法元素。
運動補償單元92亦可基於內插濾波器來執行內插。運動補償單元92可使用如由視訊編碼器20在視訊區塊之編碼期間使用之內插濾波器計算用於參考區塊之子整數像素之內插值。在一些實例中,運動補償單元92可自接收之語法元素判定由視訊編碼器20使用之內插濾波器,且可使用該等內插濾波器產生預測性區塊。
在一些實例中,運動補償單元92可判定用於當前視訊區塊之視差向量。運動補償單元92可使用用於當前區塊之視差向量執行針對當前視訊區塊之運動向量預測。舉例而言,運動補償單元92可使用用於當前區塊之視差向量判定視圖間參考圖像中之一對應的區塊。此外,運動補償單元92可針對當前視訊區塊產生一運動向量候選清單(例如,合併候選清單或AMVP候選清單)。運動向量候選清單可包括指定對應的視圖間參考區塊之一或多個運動向量的一或多個候選者。運動補償單元92可基於自位元串流獲得之一或多個語法元素判定候選清單中之一選定候選者。運動補償單元92可接著基於由選定候選者指定之一或多個運動向量判定用於當前視訊區塊之一或多個運動向量。舉例而言,若候選清單為合併候選清單,則運動補償單元92可判定當前視訊區塊之運動向量匹配由選定候選者指定之運動向量。若候選清單為AMVP候選清單,則運動補償單元92可判定當前視訊區塊之運動向量等於在位元串流中傳信之運動向量差(MVD)與由選定候選者指定之運動向量的總和。
在一些實例中,運動補償單元70可使用用於當前視訊區塊之視差向量執行針對當前視訊區塊之殘差預測(例如,進階殘差預測)。在
此等實例中,運動補償單元92可使用視差向量判定用於當前區塊之殘差預測值。最終由運動補償單元92產生之預測性區塊可基於用於當前視訊區塊之預測性區塊與用於當前視訊區塊之殘差預測值之間的差。
運動補償單元92可使用NBDV導出程序判定用於當前視訊區塊之視差向量。根據本發明之一或多個技術,運動補償單元92可初始化用於當前截塊之一或多個DDV。運動補償單元92可在NBDV導出程序中使用用於當前截塊之一或多個DDV判定用於當前視訊區塊之視差向量。在一些實例中,運動補償單元92初始化用於當前截塊之單一DDV且更新該DDV,使得對於當前截塊之在當前截塊之第一視訊區塊後的每一各別視訊區塊,用於當前截塊之DDV指定用於按寫碼次序緊接出現在各別視訊區塊前之視訊區塊的視差向量。
以此方式,運動補償單元92可儲存用於當前圖像之當前截塊的DDV。此外,運動補償單元92可至少部分基於DDV導出用於當前截塊之第一視訊區塊的NBDV。運動補償單元92及視訊解碼器30之其他單元可至少部分基於用於第一視訊區塊之NBDV解碼第一視訊區塊。此外,運動補償單元92可儲存用於第一視訊區塊之NBDV作為DDV,藉此更新DDV。在儲存用於第一視訊區塊之NBDV作為DDV後,運動補償單元92可至少部分基於經更新之DDV導出用於該當前截塊之第二視訊區塊的NBDV。運動補償單元92及視訊解碼器30之其他單元可至少部分基於用於第二視訊區塊之NBDV解碼第二視訊區塊。運動補償單元92及視訊解碼器30之其他單元可繼續針對當前截塊之額外視訊區塊執行此等動作。
反量化單元84可執行反量化程序以反量化(亦即,去量化)在位元串流中傳信的經量化之變換係數。反量化程序可包括使用由視訊編碼器20針對當前截塊中之每一視訊區塊計算之量化參數判定量化之程度,且同樣地判定應被應用的反量化之程度。反變換處理單元86可將
反變換應用至變換係數以便產生像素域中之殘差區塊。舉例而言,反變換處理單元86可應用反DCT、反整數變換或概念上類似之反變換程序以變換該等變換係數。
在運動補償單元92產生用於當前視訊區塊之預測性區塊後,視訊解碼器30可藉由將由反變換處理單元86產生的殘差區塊之樣本值與由運動補償單元92產生的預測性區塊之對應的樣本值求和來形成經解碼之視訊區塊。求和器88表示執行此求和運算之該或該等組件。
視需要,亦可應用解區塊濾波器以濾波經解碼之區塊以便移除方塊效應假影。其他迴路濾波器(在寫碼迴路中或在寫碼迴路後)亦可用以使像素轉變平滑,或另外改良視訊品質。在給定圖框或圖像中的經解碼之視訊區塊接著儲存於參考圖像記憶體90(有時叫作經解碼圖像緩衝器)中,該參考圖像記憶體儲存用於後續運動補償之參考圖像。參考圖像記憶體90亦可儲存經解碼之視訊資料,用於在顯示器件(諸如,圖1之顯示器件32)上呈現。因此,參考圖像記憶體90可為儲存視訊資料之記憶體。
圖9A為說明根據本發明之一實例的視訊編碼器20之一實例操作之流程圖。在其他實例中,視訊編碼器20可執行類似於圖9A之操作但包括更多、更少或不同動作的操作。舉例而言,在其他實例中,圖9A之一或多個動作可被省略、重新排列或重複。參看圖7解釋圖9A。然而,圖9A之實例不受如此限制。
在圖9A之實例中,預測處理單元48可儲存用於視訊資料之當前圖像之一截塊的僅一DDV(152)。該截塊包括多個區塊。此外,預測處理單元48可在NBDV導出程序中使用用於該截塊之DDV判定用於一特定區塊之視差向量(154)。特定區塊為截塊之區塊中之一者。此外,預測處理單元48可儲存用於特定區塊之視差向量(亦即,NBDV)作為用於該截塊之DDV(156)。
此外,在圖9A之實例中,視訊編碼器20可至少部分基於用於特定區塊之視差向量編碼特定區塊(158)。舉例而言,視訊編碼器20可使用用於特定區塊之NBDV執行視圖間運動預測及/或視圖間殘差預測以產生特定區塊的經編碼表示。在一些實例中,視訊編碼器20關於該截塊之額外區塊繼續圖9A之操作。此外,在一些實例中,在儲存了用於特定區塊(亦即,第一區塊)之視差向量作為用於該截塊之DDV後,預測處理單元48可在NBDV導出程序中使用用於該截塊之DDV判定用於該截塊之第二區塊的視差向量。視訊編碼器20可至少部分基於用於第二區塊之視差向量編碼第二區塊。在一些實例中,第一區塊及第二區塊為巨集區塊。在其他實例中,第一區塊及第二區塊為CU,第一區塊及第二區塊為PU,或第一區塊及第二區塊為LCU。
圖9B為說明根據本發明之一實例的視訊解碼器30之一實例操作之流程圖。在其他實例中,視訊解碼器30可執行類似於圖9B之操作但包括更多、更少或不同動作的操作。舉例而言,在其他實例中,圖9A之一或多個動作可被省略、重新排列或重複。參看圖8解釋圖9B。然而,圖9B之實例不受如此限制。
在圖9B之實例中,預測處理單元82可儲存用於視訊資料之當前圖像之一截塊的僅一DDV(172)。該截塊包括多個區塊。此外,預測處理單元82可在NBDV導出程序中使用用於該截塊之DDV判定用於一特定區塊之視差向量(174)。特定區塊為截塊之區塊中之一者。此外,預測處理單元82可儲存用於特定區塊之視差向量(亦即,NBDV)作為用於該截塊之DDV(176)。
此外,在圖9B之實例中,視訊解碼器30可至少部分基於用於特定區塊之視差向量(亦即,NBDV)解碼特定區塊(178)。舉例而言,視訊解碼器30可使用用於特定區塊之視差向量執行視圖間運動預測及/或視圖間殘差預測作為重建構用於特定區塊的樣本之一區塊之程序之
部分。在一些實例中,在儲存了用於特定區塊(亦即,第一區塊)之視差向量作為用於該截塊之DDV後,預測處理單元82可在NBDV導出程序中使用用於該截塊之DDV判定用於該截塊之第二區塊的視差向量。視訊解碼器30可至少部分基於用於第二區塊之視差向量解碼第二區塊。舉例而言,視訊解碼器30可使用用於第二區塊之視差向量(亦即,NBDV)執行視圖間運動預測及/或視圖間殘差預測作為重建構用於第二區塊的樣本之一區塊之程序之部分。在一些實例中,特定區塊(亦即,第一區塊)及第二區塊為巨集區塊。在其他實例中,第一區塊及第二區塊為CU,第一區塊及第二區塊為PU,或第一區塊及第二區塊為LCU。在一些實例中,視訊解碼器30可關於該截塊之額外區塊繼續圖9B之操作。
圖10為說明根據本發明之一實例的一實例視差向量導出操作之流程圖。在其他實例中,視訊寫碼器可執行類似於圖10之操作但包括更多、更少或不同動作的操作。舉例而言,在其他實例中,圖10之一或多個動作可被省略、重新排列或重複。諸如視訊編碼器20或視訊解碼器30之視訊寫碼器可執行圖10之實例視差向量導出操作。視訊寫碼器可執行圖10之操作以判定用於當前圖像之當前截塊之當前區塊的視差向量。在不同實例中,當前區塊可為巨集區塊、CU、PU、LCU或另一類型之區塊或視訊區塊。
在圖10之實例中,視訊寫碼器可判定當前區塊之時間相鄰區塊(200)。時間相鄰區塊可為在與當前圖像不同之存取單元中的參考圖像之區塊。此外,視訊寫碼器可判定時間相鄰區塊是否具有一視差運動向量(202)。回應於判定時間相鄰區塊具有一視差運動向量(202之「是」),視訊寫碼器可基於時間相鄰區塊之視差運動向量設定用於當前區塊之視差向量(204)。舉例而言,視訊寫碼器可將用於當前區塊的視差向量之水平分量設定至時間相鄰區塊之視差運動向量之水平
分量,且可將用於當前區塊的視差向量之垂直分量設定至0。在其他實例中,視訊寫碼器可設定用於當前區塊之視差向量等於用於時間相鄰區塊之視差運動向量。
另一方面,回應於判定時間相鄰區塊不具有視差運動向量(202之「否」),視訊寫碼器可判定空間相鄰區塊是否具有一視差運動向量(206)。空間相鄰區塊可為覆蓋圖5中之位置A、B、C或D中之一或多者的區塊。回應於判定空間相鄰區塊具有一視差運動向量(206之「是」),視訊寫碼器可基於時間相鄰區塊之視差運動向量設定用於當前區塊之視差向量(208)。舉例而言,視訊寫碼器可將用於當前區塊的視差向量之水平分量設定至空間相鄰區塊之視差運動向量之水平分量,且可將用於當前區塊的視差向量之垂直分量設定至0。在其他實例中,視訊寫碼器可設定用於當前區塊之視差向量等於用於空間相鄰區塊之視差運動向量。
回應於判定空間相鄰區塊不具有視差運動向量(206之「否」),視訊寫碼器可判定是否存在任何剩餘空間相鄰區塊要檢查(210)。回應於判定存在一或多個剩餘空間相鄰區塊(210之「是」),視訊寫碼器可關於另一空間相鄰區塊重複動作(206),且若適當地,重複動作(208)。以此方式,視訊寫碼器可檢查空間相鄰區塊中之每一者,直至視訊解碼器判定空間相鄰區塊中之一者具有一視差運動向量或不存在剩餘的空間相鄰區塊要檢查。回應於判定不存在剩餘空間相鄰區塊要檢查(210之「否」),視訊寫碼器可基於DDV設定用於當前區塊之視差向量(212)。舉例而言,視訊寫碼器可將用於當前區塊之視差向量同等地設定為DDV。
在於(204)、(208)或(212)中設定了視差向量後,視訊寫碼器可將DDV設定至用於當前區塊之視差向量(214)。以此方式,視訊寫碼器更新DDV,用於由當前截塊中之隨後區塊使用。
以下為根據本發明之一或多個技術之額外實例。
實例1.一種根據本文中揭示的實施例中之任一者之編碼視訊資料之方法。
實例2.一種根據本文中揭示的實施例中之任一者之解碼視訊資料之方法。
實例3.一種電腦可讀媒體,其具有儲存於其上之指令,該等指令當經執行時執行實例1至2之方法中之任一者。
實例4.一種裝置,其包含一處理器,其中該處理器經組態以執行實例1至2之方法中之任一者。
實例5.一種編碼視訊資料之方法,該方法包含:儲存來自一截塊之一或多個先前寫碼之區塊的一或多個導出之視差向量(DDV);至少部分基於該一或多個儲存之DDV導出用於該截塊之一當前區塊的一基於相鄰區塊之視差向量(NBDV);及至少部分基於用於該當前區塊之該NBDV編碼該當前區塊。
實例6.如實例5之方法,其中:該儲存之DDV包括用於在該當前區塊之左邊之一區塊的一儲存之DDV,且導出用於該當前區塊之該NBDV包含至少部分基於用於在該當前區塊之左邊之該區塊的該儲存之DDV導出用於該當前區塊之該NBDV。
實例7.如實例5之方法,其中:該方法進一步包含判定該一或多個儲存之DDV是否包括用於在該當前區塊之左邊之一區塊的一儲存之DDV;且導出用於該當前區塊之該NBDV包含回應於判定該一或多個儲存之DDV包括用於在該當前區塊之左邊之該區塊的該儲存之DDV,至少部分基於用於在該當前區塊之左邊之該區塊的該儲存之DDV判定用於該當前區塊之該NBDV。
實例8.如實例5之方法,其中儲存該一或多個DDV包含回應於判定該區塊之該DDV的一量值大於一先前儲存之DDV的一量值,儲
存用於一區塊之一DDV。
實例9.如實例5之方法,其中導出用於該當前區塊之該NBDV包含至少部分基於一儲存之DDV、用於時間相鄰區塊之視差運動向量(TDV)及用於空間相鄰區塊之視差運動向量(SDV)導出用於該當前區塊之該NBDV。
實例10.如實例9之方法,其中導出用於該當前區塊之該NBDV包含回應於判定該等TDV或該等SDV中無一者可用於在判定用於該當前區塊之該NBDV程序中使用,判定用於該當前區塊之該NBDV等於該儲存之DDV。
實例11.如實例9之方法,其中導出用於該當前區塊之該NBDV包含當自該儲存之DDV、該等TDV及該等SDV間識別一可用非零視差向量同時按一預定義之次序檢查該儲存之DDV、該等TDV及該等SDV時,判定用於該當前區塊之該NBDV等於該可用非零視差向量。
實例12.如實例5之方法,其中:儲存該一或多個DDV包含儲存來自該截塊之兩個或兩個以上先前寫碼之區塊的兩個或兩個以上DDV,該兩個或兩個以上儲存之DDV具有一特定次序,且導出用於該當前區塊之該NBDV包含當自TDV、SDV及該兩個或兩個以上儲存之DDV間識別一可用非零視差向量同時按一預定義之檢查次序檢查該等TDV、該等SDV及該兩個或兩個以上儲存之DDV時,判定用於該當前區塊之該NBDV等於該可用非零視差向量,其中按該預定義之檢查次序,根據該特定次序檢查該兩個或兩個以上儲存之DDV。
實例13.如實例5之方法,其中導出用於該當前區塊之該NBDV包含回應於判定不允許存取一深度視圖分量,至少部分基於該一或多個儲存之DDV導出用於該當前區塊之該NBDV。
實例14.如實例5之方法,其中導出用於該當前區塊之該NBDV包含:當允許存取一基本/參考視圖深度視圖分量時,至少部分基於
該一或多個儲存之DDV判定用於該當前區塊之一初始NBDV;及使用用於該當前區塊之該初始NBDV識別一潛在更準確之深度區塊以改進用於該當前區塊之該初始NBDV。
實例15.如實例5之方法,其進一步包含當允許存取一基本/參考視圖深度視圖分量時,改進該一或多個儲存之DDV。
實例16.如實例5之方法,其中該當前區塊為一巨集區塊、預測單元(PU)、寫碼單元(CU)或最大寫碼單元(LCU)。
實例17.如實例5之方法,其中儲存之DDV之數目與在一巨集區塊、寫碼單元或最大寫碼單元(LCU)中的區塊之數目成比例。
實例18.如實例5之方法,其中儲存之DDV之該數目不與相關聯於該當前區塊的一圖像之一寬度或高度或在該截塊中的區塊之一數目成比例。
實例19.如實例5之方法,其中該方法進一步包含僅當使用一NBDV結果寫碼該當前區塊時更新一儲存之DDV。
實例20.如實例5之方法,其進一步包含僅當框間寫碼該當前區塊時更新一儲存之DDV。
實例21.如實例5之方法,其進一步包含僅當框間寫碼該截塊時更新一儲存之DDV。
實例22.如實例5之方法,其進一步包含當藉由跳過/直接模式寫碼該當前區塊時更新一儲存之DDV。
實例23.如實例5之方法,其中針對該截塊維護僅一DDV,且一旦一寫碼單元(CU)經寫碼,則更新該DDV。
實例24.如實例23之方法,其進一步包含:當該截塊未經框內寫碼時,針對該截塊之每一各別CU調用NBDV,而與該各別CU是否使用NBDV無關,且使用一NBDV結果更新該DDV。
實例25.如實例23之方法,其進一步包含:當該CU經框間寫碼
時,調用用於該CU之NBDV以判定一NBDV結果,且使用該NBDV結果更新該DDV;當該CU未經框間寫碼時,抑制更新該DDV。
實例26.如實例23之方法,其進一步包含:當使用一NBDV結果寫碼在該CU內之一預測單元(PU)時,使用該NBDV結果更新該DDV;及當未使用該NBDV結果寫碼該PU時,抑制更新該DDV。
實例27.如實例23之方法,其進一步包含:當藉由跳過模式寫碼在該CU內之至少一PU時,使用一NBDV結果更新該DDV。
實例28.如實例5之方法,其中針對該截塊維護僅一DDV,且一旦一PU經寫碼,則更新該DDV。
實例29.如實例28之方法,其進一步包含:當該截塊未經框內寫碼時,針對該截塊之每一各別PU調用NBDV,而與該各別PU是否使用NBDV無關,且使用一NBDV結果更新該DDV。
實例30.如實例28之方法,其進一步包含:當該PU經框間寫碼時,調用用於該PU之NBDV以判定一NBDV結果,且使用該NBDV結果更新該DDV;當該PU未經框間寫碼時,抑制更新該DDV。
實例31.如實例28之方法,其進一步包含:當使用一NBDV結果寫碼該PU時,使用該NBDV結果更新該DDV;及當未使用該NBDV結果寫碼該PU時,抑制更新該DDV。
實例32.如實例28之方法,其進一步包含:當藉由跳過模式寫碼該PU時,使用一NBDV結果更新該DDV。
實例33.如實例23或28之方法,其進一步包含當空間及時間相鄰區塊不含有一視差運動向量時,使用該DDV導出一NBDV,其中將該NBDV設定為等於該DDV。
實例34.如實例33之方法,其進一步包含藉由存取一參考視圖之一深度改進該NBDV。
實例35.如實例33之方法,其進一步包含:藉由使用該NBDV存
取一參考視圖之一深度來產生一改進之視差向量;及將該DDV設定為等於該改進之視差向量。
實例36.如實例5之方法,其中儲存該一或多個DDV包含儲存該一或多個DDV之僅水平分量及設定該一或多個DDV之垂直分量等於0。
實例37.一種方法,其包含如實例5至36之任何組合。
實例38.一種解碼視訊資料之方法,該方法包含:儲存來自一截塊之一或多個先前寫碼之區塊的一或多個導出之視差向量(DDV);至少部分基於該一或多個儲存之DDV導出用於該截塊之一當前區塊的一基於相鄰區塊之視差向量(NBDV);及至少部分基於用於該當前區塊之該NBDV解碼該當前區塊。
實例39.如實例38之方法,其中:該儲存之DDV包括用於在該當前區塊之左邊之一區塊的一儲存之DDV,且導出用於該當前區塊之該NBDV包含至少部分基於用於在該當前區塊之左邊之該區塊的該儲存之DDV導出用於該當前區塊之該NBDV。
實例40.如實例38之方法,其中:該方法進一步包含判定該一或多個儲存之DDV是否包括用於在該當前區塊之左邊之一區塊的一儲存之DDV;且導出用於該當前區塊之該NBDV包含回應於判定該一或多個儲存之DDV包括用於在該當前區塊之左邊之該區塊的該儲存之DDV,至少部分基於用於在該當前區塊之左邊之該區塊的該儲存之DDV判定用於該當前區塊之該NBDV。
實例41.如實例38之方法,其中儲存該一或多個DDV包含回應於判定該區塊之該DDV的一量值大於一先前儲存之DDV的一量值,儲存用於一區塊之一DDV。
實例42.如實例38之方法,其中導出用於該當前區塊之該NBDV包含至少部分基於一儲存之DDV、用於時間相鄰區塊之視差運動向量
(TDV)及用於空間相鄰區塊之視差運動向量(SDV)導出用於該當前區塊之該NBDV。
實例43.如實例42之方法,其中導出用於該當前區塊之該NBDV包含回應於判定該等TDV或該等SDV中無一者可用於在判定用於該當前區塊之該NBDV程序中使用,判定用於該當前區塊之該NBDV等於該儲存之DDV。
實例44.如實例42之方法,其中導出用於該當前區塊之該NBDV包含當自該儲存之DDV、該等TDV及該等SDV間識別一可用非零視差向量同時按一預定義之次序檢查該儲存之DDV、該等TDV及該等SDV時,判定用於該當前區塊之該NBDV等於該可用非零視差向量。
實例45.如實例38之方法,其中:儲存該一或多個DDV包含儲存來自該截塊之兩個或兩個以上先前寫碼之區塊的兩個或兩個以上DDV,該兩個或兩個以上儲存之DDV具有一特定次序,且導出用於該當前區塊之該NBDV包含當自TDV、SDV及該兩個或兩個以上儲存之DDV間識別一可用非零視差向量同時按一預定義之檢查次序檢查該等TDV、該等SDV及該兩個或兩個以上儲存之DDV時,判定用於該當前區塊之該NBDV等於該可用非零視差向量,其中按該預定義之檢查次序,根據該特定次序檢查該兩個或兩個以上儲存之DDV。
實例46.如實例38之方法,其中導出用於該當前區塊之該NBDV包含回應於判定不允許存取一深度視圖分量,至少部分基於該一或多個儲存之DDV導出用於該當前區塊之該NBDV。
實例47.如實例38之方法,其中導出用於該當前區塊之該NBDV包含:當允許存取一基本/參考視圖深度視圖分量時,至少部分基於該一或多個儲存之DDV判定用於該當前區塊之一初始NBDV;及使用用於該當前區塊之該初始NBDV識別一潛在更準確之深度區塊以改進用於該當前區塊之該初始NBDV。
實例48.如實例38之方法,其進一步包含當允許存取一基本/參考視圖深度視圖分量時,改進該一或多個儲存之DDV。
實例49.如實例38之方法,其中該當前區塊為一巨集區塊、預測單元(PU)、寫碼單元(CU)或最大寫碼單元(LCU)。
實例50.如實例38之方法,其中儲存之DDV之數目與在一巨集區塊、寫碼單元或最大寫碼單元(LCU)中的區塊之數目成比例。
實例51.如實例38之方法,其中儲存之DDV之該數目不與相關聯於該當前區塊的一圖像之一寬度或高度或在該截塊中的區塊之一數目成比例。
實例52.如實例38之方法,其中針對該截塊維護僅一DDV,且一旦一寫碼單元(CU)經寫碼,則更新該DDV。
實例53.如實例52之方法,其進一步包含:當該截塊未經框內寫碼時,針對該截塊之每一各別CU調用NBDV,而與該各別CU是否使用NBDV無關,且使用一NBDV結果更新該DDV。
實例54.如實例52之方法,其進一步包含:當該CU經框間寫碼時,調用用於該CU之NBDV以判定一NBDV結果,且使用該NBDV結果更新該DDV;當該CU未經框間寫碼時,抑制更新該DDV。
實例55.如實例52之方法,其進一步包含:當使用一NBDV結果寫碼在該CU內之一預測單元(PU)時,使用該NBDV結果更新該DDV;及當未使用該NBDV結果寫碼該PU時,抑制更新該DDV。
實例56.如實例52之方法,其進一步包含:當藉由跳過模式寫碼在該CU內之至少一PU時,使用一NBDV結果更新該DDV。
實例57.如實例38之方法,其中針對該截塊維護僅一DDV,且一旦一PU經寫碼,則更新該DDV。
實例58.如實例57之方法,其進一步包含:當該截塊未經框內寫碼時,針對該截塊之每一各別PU調用NBDV,而與該各別PU是否使
用NBDV無關,且使用一NBDV結果更新該DDV。
實例59.如實例57之方法,其進一步包含:當該PU經框間寫碼時,調用用於該PU之NBDV以判定一NBDV結果,且使用該NBDV結果更新該DDV;當該PU未經框間寫碼時,抑制更新該DDV。
實例60.如實例57之方法,其進一步包含:當使用一NBDV結果寫碼該PU時,使用該NBDV結果更新該DDV;及當未使用該NBDV結果寫碼該PU時,抑制更新該DDV。
實例61.如實例57之方法,其進一步包含:當藉由跳過模式寫碼該PU時,使用一NBDV結果更新該DDV。
實例62.如實例52或57之方法,其進一步包含當空間及時間相鄰區塊不含有一視差運動向量時,使用該DDV導出一NBDV,其中將該NBDV設定為等於該DDV。
實例63.如實例62之方法,其進一步包含藉由存取一參考視圖之一深度改進該NBDV。
實例64.如實例62之方法,其進一步包含:藉由使用該NBDV存取一參考視圖之一深度來產生一改進之視差向量;及將該DDV設定為等於該改進之視差向量。
實例65.如實例38之方法,其中儲存該一或多個DDV包含儲存該一或多個DDV之僅水平分量及設定該一或多個DDV之垂直分量等於0。
實例66.一種方法,其包含如實例38至65之任何組合。
實例67.一種裝置,其經組態以編碼視訊資料,該裝置包含:用於儲存來自一截塊之一或多個先前寫碼之區塊的一或多個導出之視差向量(DDV)之構件;用於至少部分基於該一或多個儲存之DDV導出用於該截塊之一當前區塊的一基於相鄰區塊之視差向量(NBDV)之構件;及用於至少部分基於用於該當前區塊之該NBDV編碼該當前區塊
之構件。
實例68.如實例67之裝置,其進一步包含用於執行如實例6至36之方法中之任何者之構件。
實例69.一種裝置,其經組態以解碼視訊資料,該裝置包含:用於儲存來自一截塊之一或多個先前寫碼之區塊的一或多個導出之視差向量(DDV)之構件;用於至少部分基於該一或多個儲存之DDV導出用於該截塊之一當前區塊的一基於相鄰區塊之視差向量(NBDV)之構件;及用於至少部分基於用於該當前區塊之該NBDV解碼該當前區塊之構件。
實例70.如實例69之裝置,其進一步包含用於執行如實例38至65之方法中之任何者之構件。
實例71.一種視訊編碼器件,其包含經組態以實施實例1至36中之任一者之方法之一或多個處理器。
實例72.一種視訊解碼器件,其包含經組態以實施實例38至65中之任一者之方法之一或多個處理器。
實例73.一種電腦可讀儲存媒體,其具有儲存於其上之指令,該等指令當由一視訊編碼裝置執行時組態該視訊編碼裝置執行實例1至36中之任一者之方法。
實例74.一種電腦可讀儲存媒體,其具有儲存於其上之指令,該等指令當由一視訊解碼裝置執行時組態該視訊編碼裝置執行實例38至65中之任一者之方法。
實例75.一種用於解碼視訊資料之方法,該方法包含:基於一或多個相鄰區塊導出用於一圖像之一當前區塊的一變數,其中該變數不直接或間接在一位元串流中傳信;使用該變數解碼該當前區塊;及在解碼該當前區塊後更新該變數。
實例76.一種器件,其包含一視訊解碼器,該視訊解碼器經組態
以:基於一或多個相鄰區塊導出用於一圖像之一當前區塊的一變數,其中該變數不直接或間接在一位元串流中傳信;使用該變數解碼該當前區塊;及在解碼該當前區塊後更新該變數。
實例77.一種器件,其包含用於基於一或多個相鄰區塊導出用於一圖像之一當前區塊的一變數之構件,其中該變數不直接或間接在一位元串流中傳信;用於使用該變數解碼該當前區塊之構件;及用於在解碼該當前區塊後更新該變數之構件。
實例78.一種電腦可讀儲存媒體,其具有儲存於其上之指令,該等指令當經執行時組態一視訊解碼器件以:基於一或多個相鄰區塊導出用於一圖像之一當前區塊的一變數,其中該變數不直接或間接在一位元串流中傳信;使用該變數解碼該當前區塊;及在解碼該當前區塊後更新該變數。
在一或多個實例中,所描述之功能可以硬體、軟體、韌體或其任何合適組合實施。若以軟體實施,則可將功能作為一或多個指令或程式碼儲存於一電腦可讀媒體上或在一電腦可讀媒體上傳輸,且由基於硬體之處理單元執行。電腦可讀媒體可包括電腦可讀儲存媒體(其對應於諸如資料儲存媒體之有形媒體)或通信媒體,通信媒體包括(例如)根據通信協定有助於電腦程式自一處轉移至另一處的任何媒體。以此方式,電腦可讀媒體通常可對應於(1)非暫時性的有形電腦可讀儲存媒體,或(2)諸如信號或載波之通信媒體。資料儲存媒體可為可由一或多個電腦或一或多個處理器存取以擷取用於在本發明中描述的技術之實施之指令、程式碼及/或資料結構之任何可利用媒體。電腦程式產品可包括電腦可讀媒體。
藉由實例而非限制,此等電腦可讀儲存媒體可包含RAM、ROM、EEPROM、CD-ROM或其他光碟儲存器、磁碟儲存器或其他磁性儲存器件、快閃記憶體或可用以儲存呈指令或資料結構之形式之所
要的程式碼且可由電腦存取的任何其他媒體。又,將任何連接恰當地稱為電腦可讀媒體。舉例而言,若使用同軸電纜、光纜、雙絞線、數位用戶線(DSL)或無線技術(諸如,紅外線、無線電及微波)而自一網站、伺服器或其他遠端源傳輸指令,則同軸電纜、光纜、雙絞線、DSL或無線技術(諸如,紅外線、無線電及微波)包括於媒體之定義中。然而,應理解,電腦可讀儲存媒體及資料儲存媒體不包括連接件、載波、信號或其他暫時性媒體,而實情為,係有關非暫時性有形儲存媒體。如本文中所使用,磁碟及光碟包括緊密光碟(CD)、雷射光碟、光碟、數位影音光碟(DVD)、軟碟及Blu-ray光碟,其中磁碟通常以磁性之方式再生資料,而光碟藉由雷射以光學之方式再生資料。以上之組合亦應包括於電腦可讀媒體之範疇內。
指令可由一或多個處理器執行,諸如,一或多個數位信號處理器(DSP)、通用微處理器、特殊應用積體電路(ASIC)、場可程式化邏輯陣列(FPGA)或其他等效積體或離散邏輯電路。因此,如本文中所使用之術語「處理器」可指前述結構或適合於實施本文中所描述之技術之任何其他結構中的任一者。此外,在一些態樣中,本文中所描述之功能性可提供於經組態用於編碼及解碼之專用硬體及/或軟體模組內,或被併入組合之編碼解碼器中。同樣,該等技術可完全地實施於一或多個電路或邏輯元件中。
本發明之技術可實施於廣泛的各種各樣之器件或裝置中,包括無線手機、積體電路(IC)或IC之集合(例如,晶片組)。各種組件、模組或單元在本發明中經描述以強調經組態以執行揭示之技術的器件之功能態樣,但未必需要藉由不同硬體單元實現。相反,如上所述,各種單元可組合於一編碼解碼器硬體單元中或由互操作之硬體單元(包括如上所述之一或多個處理器)結合合適的軟體及/或韌體之集合提供。
已描述各種實例。此等及其他實例處於下列申請專利範圍之範疇內。
Claims (42)
- 一種解碼視訊資料之方法,該方法包含:儲存用於該視訊資料之一當前圖像之一截塊的僅一導出之視差向量(DDV),其中該截塊包括多個區塊;在一基於相鄰區塊之視差向量(NBDV)導出程序中使用用於該截塊之該DDV判定用於一特定區塊之一視差向量,其中該特定區塊為該截塊之該等區塊中之一者;及儲存用於該特定區塊之該視差向量作為用於該截塊之該DDV。
- 如請求項1之方法,其進一步包含至少部分基於用於該特定區塊之該視差向量解碼該特定區塊。
- 如請求項1之方法,其中該特定區塊為一第一區塊,且該方法進一步包含在儲存用於該第一區塊之該視差向量作為用於該截塊之該DDV後:在一NBDV導出程序中使用用於該截塊之該DDV判定用於一第二區塊之一視差向量,其中該第二區塊為該截塊之該等區塊中之一者;及至少部分基於用於該第二區塊之該視差向量解碼該第二區塊。
- 如請求項3之方法,其中該第一區塊緊接在該第二區塊左邊。
- 如請求項3之方法,其中該第一區塊為一巨集區塊,且該第二區塊為一巨集區塊。
- 如請求項3之方法,其中該第一區塊及該第二區塊為寫碼單元(CU),該第一區塊及該第二區塊為預測單元(PU),或該第一區塊及該第二區塊為最大寫碼單元(LCU)。
- 如請求項1之方法,其中在該NBDV導出程序中使用用於該截塊之該DDV包含使用用於該截塊之該DDV、用於一時間相鄰區塊之一視差運動向量及用於一空間相鄰區塊之一視差運動向量導出用於該特定區塊之該視差向量。
- 如請求項7之方法,其中在該NBDV導出程序中使用用於該截塊之該DDV包含:在判定該時間相鄰區塊不具有一視差運動向量後且在判定該空間相鄰區塊不具有一視差運動向量後將用於該特定區塊之該視差向量設定為等於用於該截塊之該DDV。
- 如請求項8之方法,其中在該NBDV導出程序中使用用於該截塊之該DDV包含:判定該時間相鄰區塊是否具有一視差運動向量;回應於判定該時間相鄰區塊具有一視差運動向量,基於該時間相鄰區塊之該視差運動向量導出用於該特定區塊之該視差向量;回應於判定該時間相鄰區塊不具有一視差運動向量,判定在複數個空間相鄰區塊中之任一空間相鄰區塊是否具有一視差運動向量;回應於判定在該複數個空間相鄰區塊中之一特定空間相鄰區塊具有一視差運動向量,基於該特定空間相鄰區塊之該視差運動向量導出用於該特定區塊之該視差向量;及回應於判定該複數個空間相鄰區塊中無空間相鄰區塊具有一視差運動向量,導出用於該特定區塊之該視差向量作為用於該截塊之該DDV。
- 如請求項1之方法,其進一步包含對於在該特定區塊後寫碼的該截塊之每一區塊,將用於該截塊之該DDV更新一次。
- 如請求項1之方法,其中儲存用於該特定區塊之該視差向量作為用於該截塊之該DDV包含回應於滿足一條件更新用於該截塊之該DDV以指定用於該特定區塊之該視差向量,該條件為以下中之一者:使用視圖間運動預測寫碼該特定區塊;框間寫碼該特定區塊;框間寫碼該截塊;藉由跳過模式或直接模式寫碼該特定區塊;用於該特定區塊之該視差向量的一量值大於用於該截塊之該DDV的一量值;及用於該截塊之該DDV為非零。
- 如請求項1之方法,其進一步包含基於一深度視圖分量中之深度像素改進用於該特定區塊之該視差向量,其中儲存用於該特定區塊之該視差向量作為用於該截塊之該DDV包含更新用於該截塊之該DDV以指定用於該特定區塊之該改進之視差向量。
- 如請求項1之方法,其中該方法進一步包含不儲存用於該截塊之該等區塊中之任一者的隱含視差向量。
- 一種編碼視訊資料之方法,該方法包含:儲存用於該視訊資料之一當前圖像之一截塊的僅一導出之視差向量(DDV),其中該截塊包括多個區塊;在一基於相鄰區塊之視差向量(NBDV)導出程序中使用用於該截塊之該DDV判定用於一特定區塊之一視差向量,其中該特定區塊為該截塊之該等區塊中之一者;及儲存用於該特定區塊之該視差向量作為用於該截塊之該DDV。
- 如請求項14之方法,其進一步包含至少部分基於用於該特定區塊之該視差向量編碼該特定區塊。
- 如請求項14之方法,其中該特定區塊為一第一區塊,且該方法進一步包含在儲存用於該第一區塊之該視差向量作為用於該截塊之該DDV後:在一NBDV導出程序中使用用於該截塊之該DDV判定用於一第二區塊之一視差向量,其中該第二區塊為該截塊之該等區塊中之一者;及至少部分基於用於該第二區塊之該視差向量編碼該第二區塊。
- 如請求項16之方法,其中該第一區塊緊接在該第二區塊左邊。
- 如請求項16之方法,其中該第一區塊為一巨集區塊,且該第二區塊為一巨集區塊。
- 如請求項16之方法,其中該第一區塊及該第二區塊為寫碼單元(CU),該第一區塊及該第二區塊為預測單元(PU),或該第一區塊及該第二區塊為最大寫碼單元(LCU)。
- 如請求項14之方法,其中針對該特定區塊在該NBDV導出程序中使用用於該截塊之該DDV包含使用用於該截塊之該DDV、用於一時間相鄰區塊之一視差運動向量及用於一空間相鄰區塊之一視差運動向量導出用於該特定區塊之該視差向量。
- 如請求項20之方法,其中在該NBDV導出程序中使用用於該截塊之該DDV包含:在判定該時間相鄰區塊不具有一視差運動向量後且在判定該空間相鄰區塊不具有一視差運動向量後將用於該特定區塊之該視差向量設定為等於用於該截塊之該DDV。
- 如請求項21之方法,其中在該NBDV導出程序中使用用於該截塊 之該DDV包含:判定該時間相鄰區塊是否具有一視差運動向量;回應於判定該時間相鄰區塊具有一視差運動向量,基於該時間相鄰區塊之該視差運動向量導出用於該特定區塊之該視差向量;回應於判定該時間相鄰區塊不具有一視差運動向量,判定在複數個空間相鄰區塊中之任一空間相鄰區塊是否具有一視差運動向量;回應於判定在該複數個空間相鄰區塊中之一特定空間相鄰區塊具有一視差運動向量,基於該特定空間相鄰區塊之該視差運動向量導出用於該特定區塊之該視差向量;及回應於判定該複數個空間相鄰區塊中無空間相鄰區塊具有一視差運動向量,導出用於該特定區塊之該視差向量作為用於該截塊之該DDV。
- 如請求項14之方法,其進一步包含對於在該特定區塊後寫碼的該截塊之每一區塊,將用於該截塊之該DDV更新一次。
- 如請求項14之方法,其中儲存用於該特定區塊之該視差向量作為用於該截塊之該DDV包含回應於滿足一條件更新用於該截塊之該DDV以指定用於該特定區塊之該視差向量,該條件為以下中之一者:使用視圖間運動預測寫碼該特定區塊;框間寫碼該特定區塊;框間寫碼該截塊;藉由跳過模式或直接模式寫碼該特定區塊;用於該特定區塊之該視差向量的一量值大於用於該截塊之該DDV的一量值;及 用於該截塊之該DDV為非零。
- 如請求項14之方法,其進一步包含基於一深度視圖分量中之深度像素改進用於該特定區塊之該視差向量,其中儲存用於該特定區塊之該視差向量作為用於該截塊之該DDV包含更新用於該截塊之該DDV以指定用於該特定區塊之該改進之視差向量。
- 如請求項14之方法,其中該方法進一步包含不儲存用於該截塊之該等區塊中之任一者的隱含視差向量。
- 一種視訊寫碼器件,其包含:一記憶體,其儲存視訊資料;及一或多個處理器,其經組態以:儲存用於該視訊資料之一當前圖像之一截塊的僅一導出之視差向量(DDV),其中該截塊包括多個區塊;在一基於相鄰區塊之視差向量(NBDV)導出程序中使用用於該截塊之該DDV判定用於一特定區塊之一視差向量,其中該特定區塊為該截塊之該等區塊中之一者;及儲存用於該特定區塊之該視差向量作為用於該截塊之該DDV。
- 如請求項27之視訊寫碼器件,其中該一或多個處理器經組態以至少部分基於用於該特定區塊之該視差向量編碼該特定區塊。
- 如請求項27之視訊寫碼器件,其中該一或多個處理器經組態以至少部分基於用於該特定區塊之該視差向量解碼該特定區塊。
- 如請求項27之視訊寫碼器件,其中該特定區塊為一第一區塊,且該一或多個處理器經進一步組態使得在儲存用於該第一區塊之該視差向量作為用於該截塊之該DDV後,該一或多個處理器: 在一NBDV導出程序中使用用於該截塊之該DDV判定用於一第二區塊之一視差向量,其中該第二區塊為該截塊之該等區塊中之一者;及至少部分基於用於該第二區塊之該視差向量寫碼該第二區塊。
- 如請求項27之視訊寫碼器件,其中該第一區塊緊接在該第二區塊左邊。
- 如請求項27之視訊寫碼器件,其中該第一區塊為一巨集區塊,且該第二區塊為一巨集區塊。
- 如請求項27之視訊寫碼器件,其中該第一區塊及該第二區塊為寫碼單元(CU),該第一區塊及該第二區塊為預測單元(PU),或該第一區塊及該第二區塊為最大寫碼單元(LCU)。
- 如請求項27之視訊寫碼器件,其中該一或多個處理器經組態以使用用於該截塊之該DDV、用於一時間相鄰區塊之一視差運動向量及用於一空間相鄰區塊之一視差運動向量導出用於該特定區塊之該視差向量。
- 如請求項34之視訊寫碼器件,其中該一或多個處理器經組態以在判定該時間相鄰區塊不具有一視差運動向量後且在判定該空間相鄰區塊不具有一視差運動向量後將用於該特定區塊之該視差向量設定為等於用於該截塊之該DDV。
- 如請求項35之視訊寫碼器件,其中該一或多個處理器經組態以:判定該時間相鄰區塊是否具有一視差運動向量;回應於判定該時間相鄰區塊具有一視差運動向量,基於該時間相鄰區塊之該視差運動向量導出用於該特定區塊之該視差向量; 回應於判定該時間相鄰區塊不具有一視差運動向量,判定在複數個空間相鄰區塊中之任一空間相鄰區塊是否具有一視差運動向量;回應於判定在該複數個空間相鄰區塊中之一特定空間相鄰區塊具有一視差運動向量,基於該特定空間相鄰區塊之該視差運動向量導出用於該特定區塊之該視差向量;及回應於判定該複數個空間相鄰區塊中無空間相鄰區塊具有一視差運動向量,導出用於該特定區塊之該視差向量作為用於該截塊之該DDV。
- 如請求項27之視訊寫碼器件,其中該一或多個處理器經組態以對於在該第一區塊後寫碼的該截塊之每一區塊,將該DDV更新一次。
- 如請求項27之視訊寫碼器件,其中該一或多個處理器經組態以回應於滿足一條件更新用於該截塊之該DDV以指定用於該特定區塊之該視差向量,該條件為以下中之一者:使用視圖間運動預測寫碼該特定區塊;框間寫碼該特定區塊;框間寫碼該截塊;藉由跳過模式或直接模式寫碼該特定區塊;用於該特定區塊之該視差向量的一量值大於用於該截塊之該DDV的一量值;及用於該截塊之該DDV為非零。
- 如請求項27之視訊寫碼器件,其中該一或多個處理器經組態以基於一深度視圖分量中之深度像素改進用於該特定區塊之該視差向量;且其中該一或多個處理器經組態以更新用於該截塊之該DDV以 指定用於該特定區塊之該改進之視差向量。
- 如請求項27之視訊寫碼器件,其中該一或多個處理器經組態以不儲存用於該截塊之任一區塊的隱含視差向量。
- 一種視訊寫碼器件,其經組態以寫碼視訊資料,該視訊寫碼器件包含:用於儲存用於該視訊資料之一當前圖像之一截塊的僅一導出之視差向量(DDV)之構件,其中該截塊包括多個區塊;用於在一基於相鄰區塊之視差向量(NBDV)導出程序中使用用於該截塊之該DDV判定用於一特定區塊之一視差向量之構件,其中該特定區塊為該截塊之該等區塊中之一者;及用於儲存用於該特定區塊之該視差向量作為用於該截塊之該DDV之構件。
- 一種非暫時性電腦可讀媒體,其具有儲存於其上之指令,該等指令當經執行時使一視訊寫碼器件之一或多個處理器:儲存用於視訊資料之一當前圖像之一截塊的僅一導出之視差向量(DDV),其中該截塊包括多個區塊;在一基於相鄰區塊之視差向量(NBDV)導出程序中使用用於該截塊之該DDV判定用於一特定區塊之一視差向量,其中該特定區塊為該截塊之該等區塊中之一者;及儲存用於該特定區塊之該視差向量作為用於該截塊之該DDV。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361773680P | 2013-03-06 | 2013-03-06 | |
US201361809174P | 2013-04-05 | 2013-04-05 | |
US14/198,442 US9521389B2 (en) | 2013-03-06 | 2014-03-05 | Derived disparity vector in 3D video coding |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201448566A true TW201448566A (zh) | 2014-12-16 |
TWI539791B TWI539791B (zh) | 2016-06-21 |
Family
ID=51487789
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW103107770A TWI539791B (zh) | 2013-03-06 | 2014-03-06 | 三維視頻寫碼中導出之視差向量 |
Country Status (9)
Country | Link |
---|---|
US (1) | US9521389B2 (zh) |
EP (1) | EP2965522B1 (zh) |
JP (1) | JP6227678B2 (zh) |
KR (1) | KR101780434B1 (zh) |
CN (1) | CN105027571B (zh) |
ES (1) | ES2636967T3 (zh) |
HU (1) | HUE032800T2 (zh) |
TW (1) | TWI539791B (zh) |
WO (1) | WO2014138450A1 (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014166063A1 (en) * | 2013-04-09 | 2014-10-16 | Mediatek Inc. | Default vector for disparity vector derivation for 3d video coding |
US9667990B2 (en) | 2013-05-31 | 2017-05-30 | Qualcomm Incorporated | Parallel derived disparity vector for 3D video coding with neighbor-based disparity vector derivation |
CN105532004B (zh) * | 2013-07-12 | 2019-01-25 | 三星电子株式会社 | 层间视频解码方法及设备 |
US10075690B2 (en) * | 2013-10-17 | 2018-09-11 | Mediatek Inc. | Method of motion information prediction and inheritance in multi-view and three-dimensional video coding |
WO2015057037A1 (ko) * | 2013-10-18 | 2015-04-23 | 엘지전자 주식회사 | 멀티-뷰 비디오를 디코딩하는 비디오 디코딩 장치 및 방법 |
CN111193930B (zh) * | 2013-12-16 | 2021-11-30 | 浙江大学 | 一种前向双假设编码图像块的编解码方法和装置 |
US10560718B2 (en) | 2016-05-13 | 2020-02-11 | Qualcomm Incorporated | Merge candidates for motion vector prediction for video coding |
CA3025477C (en) * | 2016-05-25 | 2023-10-03 | Arris Enterprises Llc | Jvet coding block structure with asymmetrical partitioning |
JP2019535202A (ja) * | 2016-10-06 | 2019-12-05 | エルジー エレクトロニクス インコーポレイティド | インター予測モードベースの画像処理方法及びそのための装置 |
US11891309B2 (en) | 2017-09-19 | 2024-02-06 | Ecolab Usa Inc. | Cooling water monitoring and control system |
US10368071B2 (en) * | 2017-11-03 | 2019-07-30 | Arm Limited | Encoding data arrays |
BR112020005049B1 (pt) * | 2017-11-10 | 2023-05-16 | Ecolab Usa Inc | Método |
US10587885B2 (en) * | 2018-06-04 | 2020-03-10 | Tencent America LLC | Method and apparatus for merge mode with additional middle candidates in video coding |
US10679668B2 (en) * | 2018-08-31 | 2020-06-09 | Gopro, Inc. | Systems and methods for editing videos |
US11665365B2 (en) * | 2018-09-14 | 2023-05-30 | Google Llc | Motion prediction coding with coframe motion vectors |
CA3134527C (en) * | 2019-04-22 | 2023-12-12 | Leia Inc. | Time-multiplexed backlight, multiview display, and method |
CN111103829B (zh) * | 2019-12-11 | 2024-05-17 | 旋智电子科技(上海)有限公司 | 一种电机控制装置和方法 |
US11496151B1 (en) | 2020-04-24 | 2022-11-08 | Tencent America LLC | Neural network model compression with block partitioning |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3693407B2 (ja) * | 1996-04-04 | 2005-09-07 | シャープ株式会社 | 多視点画像符号化装置および復号装置 |
US20040260827A1 (en) | 2003-06-19 | 2004-12-23 | Nokia Corporation | Stream switching based on gradual decoder refresh |
EP2030450B1 (en) * | 2006-06-19 | 2015-01-07 | LG Electronics Inc. | Method and apparatus for processing a video signal |
KR20080066522A (ko) * | 2007-01-11 | 2008-07-16 | 삼성전자주식회사 | 다시점 영상의 부호화, 복호화 방법 및 장치 |
KR20090113281A (ko) * | 2007-01-24 | 2009-10-29 | 엘지전자 주식회사 | 비디오 신호 처리 방법 및 장치 |
WO2008108566A1 (en) * | 2007-03-02 | 2008-09-12 | Lg Electronics Inc. | A method and an apparatus for decoding/encoding a video signal |
US10298952B2 (en) * | 2007-08-06 | 2019-05-21 | Interdigital Madison Patent Holdings | Methods and apparatus for motion skip move with multiple inter-view reference pictures |
CN103428504B (zh) * | 2007-08-15 | 2017-04-12 | 汤姆森许可贸易公司 | 在多视图编码的视频中进行错误隐藏的方法和装置 |
US8964844B2 (en) * | 2007-08-15 | 2015-02-24 | Thomson Licensing | Methods and apparatus for motion skip mode in multi-view coded video using regional disparity vectors |
CN102342127A (zh) | 2009-01-28 | 2012-02-01 | 诺基亚公司 | 用于视频编码和解码的方法和装置 |
TW201210325A (en) | 2010-07-21 | 2012-03-01 | Nokia Corp | Method and apparatus for indicating switching points in a streaming session |
US20140078254A1 (en) * | 2011-06-15 | 2014-03-20 | Mediatek Inc. | Method and Apparatus of Motion and Disparity Vector Prediction and Compensation for 3D Video Coding |
SG10201609891QA (en) * | 2011-06-30 | 2016-12-29 | Sony Corp | Image processing device and image processing method |
RU2583040C2 (ru) | 2011-08-30 | 2016-05-10 | Нокиа Текнолоджиз Ой | Устройство, способ и компьютерная программа для кодирования и декодирования видеосигналов |
EP2878125A4 (en) * | 2012-07-27 | 2016-10-12 | Hfi Innovation Inc | CONSTRAINED DISPARITY VECTOR DERIVATION METHOD IN 3D VIDEO CODING |
US9544612B2 (en) * | 2012-10-04 | 2017-01-10 | Intel Corporation | Prediction parameter inheritance for 3D video coding |
US9635357B2 (en) | 2013-02-26 | 2017-04-25 | Qualcomm Incorporated | Neighboring block disparity vector derivation in 3D video coding |
US9237345B2 (en) | 2013-02-26 | 2016-01-12 | Qualcomm Incorporated | Neighbor block-based disparity vector derivation in 3D-AVC |
US9667990B2 (en) | 2013-05-31 | 2017-05-30 | Qualcomm Incorporated | Parallel derived disparity vector for 3D video coding with neighbor-based disparity vector derivation |
-
2014
- 2014-03-05 US US14/198,442 patent/US9521389B2/en active Active
- 2014-03-06 WO PCT/US2014/021343 patent/WO2014138450A1/en active Application Filing
- 2014-03-06 EP EP14712957.1A patent/EP2965522B1/en active Active
- 2014-03-06 TW TW103107770A patent/TWI539791B/zh not_active IP Right Cessation
- 2014-03-06 KR KR1020157027073A patent/KR101780434B1/ko active IP Right Grant
- 2014-03-06 JP JP2015561669A patent/JP6227678B2/ja not_active Expired - Fee Related
- 2014-03-06 HU HUE14712957A patent/HUE032800T2/en unknown
- 2014-03-06 ES ES14712957.1T patent/ES2636967T3/es active Active
- 2014-03-06 CN CN201480012000.1A patent/CN105027571B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
KR20150122772A (ko) | 2015-11-02 |
CN105027571A (zh) | 2015-11-04 |
JP6227678B2 (ja) | 2017-11-08 |
KR101780434B1 (ko) | 2017-09-21 |
EP2965522A1 (en) | 2016-01-13 |
US20140254682A1 (en) | 2014-09-11 |
ES2636967T3 (es) | 2017-10-10 |
WO2014138450A1 (en) | 2014-09-12 |
CN105027571B (zh) | 2018-08-28 |
US9521389B2 (en) | 2016-12-13 |
JP2016513919A (ja) | 2016-05-16 |
EP2965522B1 (en) | 2017-05-10 |
HUE032800T2 (en) | 2017-11-28 |
TWI539791B (zh) | 2016-06-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI539791B (zh) | 三維視頻寫碼中導出之視差向量 | |
JP6768768B2 (ja) | 3dビデオコーディングにおける視差ベクトル導出および動きベクトル予測の簡略化 | |
TWI539796B (zh) | 視差向量推導 | |
KR101773693B1 (ko) | 스킵 및 직접 모드들에 대한 3d 비디오 코딩에서의 디스패리티 벡터 유도 | |
JP6337025B2 (ja) | 3dビデオコード化における隣接ブロック視差ベクトル導出 | |
TWI551121B (zh) | 視訊寫碼中之視差向量改進 | |
TW201639365A (zh) | 用於線性模型預測模式之降低取樣處理 | |
JP2016530848A (ja) | 非対称動き分割を使用するビデオコーディング技法 | |
KR20150139953A (ko) | 백워드 뷰 합성 예측 | |
JP2016514426A (ja) | ビュー内でのおよびビューにわたる深度ルックアップテーブルの予測コーディング | |
JP2016526348A (ja) | 深さブロックの不一致に基づく高度な深さインターコーディング |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |