TW202101991A - 運動向量差值導數傳訊技術 - Google Patents

運動向量差值導數傳訊技術 Download PDF

Info

Publication number
TW202101991A
TW202101991A TW109117090A TW109117090A TW202101991A TW 202101991 A TW202101991 A TW 202101991A TW 109117090 A TW109117090 A TW 109117090A TW 109117090 A TW109117090 A TW 109117090A TW 202101991 A TW202101991 A TW 202101991A
Authority
TW
Taiwan
Prior art keywords
flag
motion vector
difference
picture
vector difference
Prior art date
Application number
TW109117090A
Other languages
English (en)
Other versions
TWI743801B (zh
Inventor
江嫚書
徐志瑋
莊子德
Original Assignee
聯發科技股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 聯發科技股份有限公司 filed Critical 聯發科技股份有限公司
Publication of TW202101991A publication Critical patent/TW202101991A/zh
Application granted granted Critical
Publication of TWI743801B publication Critical patent/TWI743801B/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

一視訊解碼器接收一塊的像素資料,該塊將被解碼作為一視訊的一當前畫面中的一當前塊。當該當前塊藉由使用幀間模式與雙向預測加以編解碼時,該視訊解碼器接收一第一運動向量差值;以及基於一第一旗標或一第二旗標來決定一第二運動向量差值。當該第一旗標為假時,該視訊解碼器使用該第二旗標來決定是否將該第二運動向量差值設定為該第一運動向量差值的一相反數值。當該第一旗標為真時,該視訊解碼器設定該第二運動向量差值為零。基於該第一運動向量差值與該第二運動向量差值,該視訊解碼器藉由使用運動信息來進行幀間預測而重構該當前塊。

Description

運動向量差值導數傳訊技術
本揭示通常涉及視訊編解碼。尤其,本揭示關於用於幀間預測的運動向量差值的發信。
除非此處另有說明外,本小節所描述的方法相對於下面列出的請求項而言不是先前技術,並且不因納入於本小節而被認為承認是先前技術。
高效率視訊編碼(HEVC)是由視訊編碼聯合協作小組(Joint Collaborative Team on Video Coding,JCT-VC)所發展的新一代國際性視訊編解碼標準。HEVC是基於混合塊為基礎的運動補償類似DCT轉換的編解碼架構。補償的基本單元(稱為編解碼單元,CU)是一2Nx2N的方型塊,而每一CU可以遞迴式地被分割成四個較小的CU,一直達到預定的最小尺寸為止。每個CU包括一或多個預測單元(Prediction Unit,PU)。
為改善混合編解碼架構的編解碼效率,對於每一PU HEVC提供了兩種類型的預測模式,即幀內預測與幀間預測。對於幀內預測模式而言,可以用空間相鄰重構像素來產生方向性的預測,在HEVC中有多達35種方向。對於幀間預測模式而言,可以用時間重構參考幀來產生運動補償的預測。有三種不同模式,包括跳過(Skip)、合併(Merge)以及幀間高級運動向量預測(幀間AMVP)模式。
當一PU是以幀間 AMVP模式編碼時,運動補償的預測是由所傳送來的運動向量差值(motion vector differences,MVDs)來進行,MVDs可以與運動向量預測子(Motion Vector Predictors,MVPs)一起使用來推導出運動向量(motion vector,MVs)。為了決定幀間 AMVP模式下的MVP,可以使用高級運動向量預測(AMVP)的架構來選出一運動向量預測子,方式是從包括二空間MVP以及一時間MVP的一AMVP候選組中選出。因此在AMVP模式下,需要對MVP的MVP索引以及相對應的MVDs進行編碼與傳送。此外,幀間預測方向(用來表明在雙向預測以及單向預測之間的預測方向,也就是列表List0(L0)以及列表List1(L1))以及對於每一列表所伴隨的參考幀索引也應予以編碼與傳送。
以下發明內容僅是說明性的,不打算以任何方式加以限制。也就是說,以下發明內容被提供以介紹此處所描述的新且非顯而易知的技術的概念、重點、好處和優勢。選擇性而不是將所有的實施方式在下面的詳細說明中進行進一步描述。因此,以下發明內容不用於決定所要求主題的本質特徵,也不用於決定所要求主題的範圍。
本揭示的一些實施例提供用於發信運動向量差值的一種方法。一視訊解碼器接收一塊的像素資料,該塊將被解碼作為一視訊的一當前畫面中的一當前塊。當該當前塊藉由使用幀間模式與雙向預測加以編解碼時,該視訊解碼器接收一第一運動向量差值;以及基於一第一旗標或一第二旗標來導出一第二運動向量差值。當該第一旗標為假時,該視訊解碼器使用該第二旗標來決定是否將該第二運動向量差值設定為該第一運動向量差值的一相反數值。當該第一旗標為真時,該視訊解碼器設定該第二運動向量差值為零。基於該第一運動向量差值與該第二運動向量差值,該視訊解碼器藉由使用運動信息來進行幀間預測而重構該當前塊。
在下面詳細的說明書中,為了透徹理解相關教示內容,透過舉例的方式進行說明大量具體的細節。基於本文所描述的教示內容的任何改變、推導和/或拓展均在本發明的保護範圍內。為了避免不必要地混淆本發明的教示內容的方面,關於此處所公開的一個或者複數個示例性實施方式中已知的方法、程式、元件和/或電路,在有些時候會用相對較高的層次加以描述而不細說。 I. 對稱的 運動向量差值( Symmetric Motion Vector Difference SMVD 模式
除了用於一般的單向預測與雙向預測模式的MVD發信之外,一種用於雙向預測的MVD發信模式(SMVD模式,也稱作對稱MVD模式)被應用。在對稱MVD模式中,運動信息(包括列表-0與列表-1二者的參考畫面索引以及列表-1的MVD)不被發信而是推導得出。對稱的運動向量差值(SMVD)模式是一幀間預測模式,其中運動信息被對稱性地決定或推論得出。尤其在一些實施例中,在L1方向的運動向量差值(以MVD1或MVDL1表示)是基於在L0方向的一運動向量差值(以MVD0或MVDL0表示)來加以決定。在一些實施例中,L1參考畫面與L0參考畫面是與當前畫面在時間上或POC上等距離(可基於畫面順序計數(picture order count ,POC)或與時間域或POC相關的任何其他因素來加以決定)。在一些實施例中,在SMVD模式下,MVD1被推論等於–MVD0。在一些實施例中,當SMVD模式旗標為真,BDOF不被應用於預測以降低複雜度。
在一些實施例中,一參考對(ref_idx_l0與ref_idx_l1)不被發信而是推導得出(ref_idx_l0 是指向參考畫面列表-0的參考索引,而且ref_idx_l1是指向參考畫面列表-1的參考索引)。在一些實施例中,MVD0被發信,但是MVD1不被發信而是被推論得出。
在一些實施例中,於CU層級,如果用於SMVD模式的一致能條件滿足時,一SMVD模式旗標(其指示出對稱模式(或SMVD模式)是否被使用)被顯性地發信(explicitly signaled)。當對稱模式旗標為真,僅有mvp_l0_flag、mvp_l1_flag與MVD0被顯性地發信。用於列表-0與列表-1的參考索引,表示為(RefIdxSymL0,RefIdxSymL1),分別被設定為參考畫面對(pair of reference pictures)。MVD1被設定等於 (–MVD0) 。根據SMVD模式的MV計算為根據如下公式:
Figure 02_image001
L0 MV = (mvx0 , mvy0 ), L0 預測子= (mvpx0 , mvpy0 ), L0 MVD 或MVD0= (mvdx0 , mvdy0 ) 。L1 MV = (mvx1 , mvy1 ), L1預測子= (mvpx1 , mvpy1 ) 。L1 MVD或MVD1 = (mvdx1 , mvdy1 ) ,但是因為是SMVD模式,被推論為 (–mvdx0 , –mvdy0 ) 或 –MVD0。 II.L1 運動向量差值導出
在一些實施例中,當當前CU或PU是幀間-編解碼而且雙向預測被允許時(例如,當當前CU或PU是在一B-幀或B-切片中),許多不同設定可以被使用來隱含地推導出MVD1。這些設定中之一(其可以被使用來隱含地推導出MVD1)是SMVD模式。當用於SMVD模式的一致能條件(以條件A表示)滿足而且SMVD模式旗標為真時,MVD1被設定等於–MVD0而非顯性地加以發信。在一些實施例中,SMVD模式旗標可以被發信於CU/PU、CTU、切片、方塊(tile)、方塊群組(tile group)、SPS、PPS、或畫面層級。
另一個可以被使用來隱含地推導出MVD1的設定是零MVD1模式,MVD1模式可以藉由mvd_l1_zero_flag加以啟動。當用於mvd_l1_zero_flag的一致能條件(以條件B表示)滿足而且mvd_l1_zero_flag為真時,MVD1被設定等於零而非顯性地加以發信。在一些實施例中,mvd_l1_zero_flag可以被發信於CU/PU、CTU、切片、方塊(tile)、方塊群組(tile group)、SPS、PPS、或畫面層級。
在一些實施例中,畫面層級(picture level )指的是畫面標頭(picture header,PH)。PH語法結構包含對於與PH語法結構相關聯的經過編解碼畫面的所有切片都通用的信息。
第1圖概念性地繪示出當SMVD模式旗標為真時當前塊的幀間預測。第2圖概念性地繪示出當mvd_l1_zero_flag為真時的幀間預測。如第1-2圖所繪示,一視訊編解碼器編碼或解碼一像素塊100(例如CU或PU)以作為在一當前畫面110的一當前塊。L0參考畫面120與L1參考畫面130是與當前畫面在時間上或POC上等距離。當SMVD模式旗標為真,MVD1被設定為–MVD0。當mvd_l1_zero_flag為真,MVD1被設定為零。
本揭示的一些實施例提供方法來處理(或調和)於SMVD模式旗標與mvd_l1_zero_flag之間的互動,這是由於這二個旗標都關於(會影響)MVD1的推導。在一些實施例中,當前塊(或當前CU/PU)是幀間-編解碼而且雙向-預測是被允許的條件,是使得SMVD模式旗標或mvd_l1_zero_flag致能的一前提必要條件。當此前提必要條件在當前塊被滿足時,一視訊編碼器可以使用SMVD模式旗標與/或mvd_l1_zero_flag來決定MVD1的推導。在一些實施例中,當條件A不滿足時,SMVD模式旗標被推論為假。在一些實施例中,當條件B不滿足時,mvd_l1_zero_flag被推論為假。在這些實施例中的一些,條件A和條件B不相同。下列是條件A與條件B的例子:
在一些實施例中,條件A(即用於SMVD模式的致能條件)包括(或至少包括)CU是雙向-預測編解碼與/或滿足某些特定條件的參考畫面存在,其中在一些實施例中,BiDirPredFlag可以被用來指示出滿足某些特定條件的參考畫面是否存在。BiDirPredFlag在切片層級被推導如下:如果mvd_l1_zero_flag為1,BiDirPredFlag被設定等於0。否則,如果列表-0中最接近的參考畫面以及列表-1中最接近的參考畫面形成一對順向與逆向的參考畫面或是一對逆向與順向的參考畫面,而且列表-0與列表-1參考畫面二者皆為短期的(short-term)參考畫面,BiDirPredFlag被設定等於1。否則,BiDirPredFlag被設定等於0。在一些實施例中,條件A包括(或至少包括)列表-0中一被選擇的參考畫面(以RefIdxSymL0表示)以及列表-1中一被選擇的參考畫面(以RefIdxSymL1表示)形成一對順向與逆向的參考畫面或是一對逆向與順向的參考畫面。在一些實施例中,列表-0中該被選擇的畫面是列表-0中(時間上或POC)最接近於當前畫面的參考畫面。在一些實施例中,列表-1中該被選擇的畫面是列表-1中(時間上或POC)最接近於當前畫面的參考畫面。在一些實施例中,列表-0中該被選擇的畫面被發信於CU/PU、CTU、切片、方塊(tile)、方塊群組(tile group)、SPS、PPS、或畫面層級。在一些實施例中,列表-1中該被選擇的畫面被發信於CU/PU、CTU、切片、方塊(tile)、方塊群組(tile group)、SPS、PPS、或畫面層級。在一些實施例中,列表-0中該被選擇的畫面是列表-0中的第一參考畫面。在一些實施例中,列表-1中該被選擇的畫面是列表-1中的第一參考畫面。在實施例中,上述的任何組合可以被應用。
在一些實施例中,條件A包括(或至少包括)列表-0中最接近的參考畫面(以RefIdxSymL0表示)以及列表-1中最接近的參考畫面(以RefIdxSymL1表示)形成一對順向與逆向的參考畫面或是一對逆向與順向的參考畫面。在一些實施例中,條件A包括(或至少包括)列表-0中的第一參考畫面以及列表-1中的第一參考畫面是對稱的。換言之,列表-0中的第一參考畫面以及列表-1中的第一參考畫面形成一對順向與逆向的參考畫面(或是一對逆向與順向的參考畫面),而且當前畫面與列表-0中的第一參考畫面之間的距離和當前畫面與列表-1中的第一參考畫面之間的距離是相同的。在一些實施例中,當條件A滿足時,RefIdxSymL0與RefIdxSymL1被推論為零。
在一些實施例中,條件B包括(或至少包括)列表-0中的任一參考畫面以及列表-1中的任一參考畫面所形成的一對順向與順向的參考畫面。(這被稱為一般化的P與B畫面(或GPB)條件)。
在一些實施例中,如果條件A(用於SMVD模式旗標的致能條件)滿足時,條件B無法滿足。在一些實施例中,條件A包括(或至少包括)mvd_l1_zero_flag為假。在一些實施例中,當用於SMVD模式旗標的條件滿足時,mvd_l1_zero_flag的條件自動被認為無法滿足,而且mvd_l1_zero_flag被設定為假。
在一些實施例中,如果條件B(用於mvd_l1_zero_flag的致能條件)滿足時,條件A無法滿足。在一些實施例中,條件B包括(或至少包括)SMVD模式旗標為假。換言之,當用於mvd_l1_zero_flag的條件滿足時,SMVD模式旗標的條件自動被認為無法滿足,而且SMVD模式旗標被設定為假。
在一些實施例中,當mvd_l1_zero_flag與SMVD模式旗標二者皆為真時,MVD1被設定為零(而不是–MVD0)。在一些實施例中,當mvd_l1_zero_flag與SMVD模式旗標二者皆為真時,MVD1被設定為–MVD0(而不是零)。在一些實施例中,條件B與條件A相反。在一些實施例中,條件A與條件B相反。
前面提出的任何方法可以在編碼器與/或解碼器中加以實施。例如,所提出的任何方法可以在一編碼器的一幀間編解碼模組、一運動補償模組、一解碼器的一幀間候選推導模組中加以實施。所提出的任何方法也可以備選式地實施為一電路而耦合至一編碼器的一幀間編解碼模組與/或一運動補償模組、一解碼器的一合併/幀間候選推導模組。 III. 示例性的視訊編碼器
第3圖繪示出一示例性的視訊編碼器300。如圖所示,視訊編碼器300從一視訊源305接收輸入視訊信號並將該信號編碼進位元流395。視訊編碼器300具有若干組件或模組以將來自視訊源305的信號加以編碼,至少包括有些組件是選擇自轉換模組310、量化模組311、逆量化模組314、逆轉換模組315、幀內-畫面估計模組320、幀內-預測模組325、運動補償模組330、運動估計模組335、迴路濾波器345、已重構畫面緩衝器350、MV緩衝器365、MV預測模組375以及熵編碼器390。運動補償模組330與運動估計模組335是幀間-預測模組340的一部份。
在一些實施例中,模組310-390是由計算設備或電子裝置的一個或複數個處理單元(例如,處理器)所執行的軟體指令的模組。在一些實施例中,模組310-390是由電子裝置的一個或複數個積體電路(integrated circuit,IC)所實現的硬體電路的模組。雖然模組310-390被示出為分離的模組,但是一些模組可以被組合成單一個模組。
視訊源305提供原始視訊信號,其呈現沒有壓縮的每個視訊幀的像素資料。減法器308計算視訊源305的原始視訊像素資料與來自於運動補償模組330或者幀內-預測模組325的已預測像素資料313之間的差。轉換模組310將此差(或殘差像素資料或殘差信號309)轉換為轉換係數(例如,透過執行離散餘弦轉換,或DCT)。量化模組311將轉換係數量化為已量化資料(或已量化係數)312,其由熵編碼器390編碼進位元流395中。
逆量化模組314逆量化已量化資料(或已量化係數)312,以獲得轉換係數,而逆轉換模組315對轉換係數執行逆轉換以產生已重構殘差319。已重構殘差319與已預測像素資料313相加以生成已重構像素資料317。在一些實施例中,已重構像素資料317被暫時存儲在一線緩衝器(未示出)中以用於幀內-畫面預測和空間MV預測。已重構像素由迴路濾波器345進行濾波並被存儲在已重構畫面緩衝器350中。在一些實施例中,已重構畫面緩衝器350是在視訊編碼器300之外的一記憶體。在一些實施例中,已重構畫面緩衝器350是在視訊編碼器300之內的一記憶體。
幀內-畫面估計模組320基於已重構像素資料317執行幀內-預測,以產生幀內預測資料。幀內-預測資料被提供給熵編碼器390以被編碼進位元流395中。幀內-預測資料也被幀內-預測模組325使用,以產生已預測像素資料313。
運動估計模組335藉由提供MV給存儲在已重構畫面緩衝器350中的先前已解碼視訊幀的參考像素資料,來執行幀間-預測。這些MV被提供給運動補償模組330以產生已預測像素資料。
不用將完整實際MV編碼進位元流中,視訊編碼器300使用MV預測來產生已預測MV,並且將用於運動補償的MV與已預測MV之間的差被編碼為殘差運動資料並被存儲在位元流395中。
MV預測模組375基於參考MV來產生已預測MV,所述參考MV是在編碼先前視訊幀所產生的,也就是用於執行運動補償的運動補償MV。MV預測模組375從MV緩衝器365中取回來自先前視訊幀的參考MV。視訊編碼器300將所產生以用於當前視訊幀的MV存儲在MV緩衝器365中,以作為用於產生已預測MV的參考MV。
MV預測模組375使用參考MV來創建已預測MV。已預測MV可以由空間MV預測或時間MV預測來加以計算。當前視訊幀(殘差運動資料)的已預測MV與運動補償MV(MC MV)之間的差值由熵編碼器390編碼進位元流395中。
熵編碼器390透過使用諸如上下文適應性二進制算術編碼(Context-based Adaptive Binary Arithmetic Coding,CABAC)或霍夫曼編碼(Huffman encoding)的熵編解碼技術,將各種參數和資料編碼進位元流395中。熵編碼器390將各種標頭元素、旗標、以及已量化轉換係數312與殘差運動資料,一起編碼為語法元素進入位元流395中。然後位元流395被存儲於存儲裝置中或透過諸如網路的通信介質被傳輸至一解碼器。
迴路濾波器345對已重構像素資料317進行濾波運算或平滑操作運算以減少編解碼偽影,特別是在像素塊的邊界處。在一些實施例中,所執行的濾波操作包括取樣自適應偏移(Sample Adaptive Offset,SAO)。在一些實施例中,濾波操作包括自適應迴路濾波器(Adaptive Loop Filter,ALF)。
第4圖繪示出可以實施SMVD模式與零L1 MVD模式的視訊編碼器的一些部份。如之前所述,幀間-預測模組340,尤其是運動估計模組335輸出實際被用於運動補償(MC MV)的一運動向量。在一些實施例中,當用於SMVD模式的致能條件滿足而且SMVD旗標指示出使用SMVD模式時,運動估計以一初始MV評估(initial MV evaluation)開始對稱MVD搜尋。此初始MV是從一組初始MV候選中來加以評估,包括:從單向-預測搜尋所得到的MV、從雙向-預測搜尋所得到的MV、以及從AMVP列表的MV。具有最低率-失真成本(rate-distortion cost)的MV被選擇為用於該對稱MVD運動搜尋的該初始MV。
MC MV的數值是基於下列所決定:幀間-預測模組340是否使用SMVD模式(SMVD模式旗標=真)、零L1 MVD模式(mvd_l1_zero_flag=真)、或是一些其他模式來實施幀間-預測。如果當前塊是在一B-切片或B-幀中,於其中雙向預測被允許與/或當前塊是由雙向預測所編解碼。幀間-預測模組340依據一MVD選擇模組400來進行運動估計與運動補償,其中MVD選擇模組400提供與SMVD模式旗標與/或mvd_l1_zero_flag相關聯的MVD信息。如果用於SMVD模式旗標的致能條件滿足時,SMVD模式旗標可以於位元流中被發信;否則,SMVD模式旗標可以不經由發信而被推導出。如果用於mvd_l1_zero_flag的致能條件滿足時,mvd_l1_zero_flag可以於位元流中被發信;否則,mvd_l1_zero_flag可以不經由發信而被推導出。如果SMVD模式被使用時,MC MV基於MVD1 = –MVD0被設定。如果零L1 MVD模式被使用時,MC MV基於MVD1 =0被設定。如果用於SMVD模式旗標與/或mvd_l1_zero_flag其中之一被設定為真時,熵編碼器390不可以將用於L1的運動向量差值或殘差運動資料發信進入位元流395中。
第5圖概念性示出了一流程500,以調和SMVD模式與零L1 MVD模式。在一些實施例中,藉由執行儲存於一電腦可讀取媒介上的指令,實施編碼器300的一計算裝置上的一個或複數個處理單元(例如,處理器)會執行流程500。在一些實施例中,實施編碼器300的一電子裝置會執行流程500。
編碼器接收(於區塊510)一像素塊的原始像素資料,以編碼作為一視訊的一當前畫面中的一當前塊於一位元流中。編碼器決定(於區塊515)當前塊是否藉由使用幀間模式與雙向-預測來加以編解碼。如果是,流程進行至520。如果當前塊不是藉由幀間模式與雙向-預測來加以編解碼,視訊編碼器會藉由其他編解碼模式來編碼當前塊。
編碼器接收(於區塊520)或計算一第一運動向量差值。編碼器決定(於區塊525)一第一旗標(mvd_l1_zero_flag)是否為真或假。在一些實施例中,第一旗標(mvd_l1_zero_flag)被發信於一畫面層級。在一些實施例中,此mvd_l1_zero_flag可以被發信於CU/PU、CTU、切片、方塊(tile)、方塊群組(tile group)、SPS、或PPS層級。如果第一旗標為真,編碼器進行至區塊530。如果第一旗標為假,流程進行至區塊535。在一些實施例中,使SMVD模式致能的條件(或條件A)至少包括mvd_l1_zero_flag為假。
於區塊530,由於第一旗標(mvd_l1_zero_flag)指示出零L1 MVD模式被使用,編碼器設定一第二運動向量(即MVD1)為零。在一些實施例中,該第一與第二運動向量差值是相關聯於第一與第二參考畫面。在一些實施例中,該第一參考畫面是選擇自一第一參考畫面列表而且該第二參考畫面是選擇自一第二參考畫面列表。在一些實施例中,該第一與第二參考畫面形成一對順向與順向的參考畫面。這被稱為一般化的P與B畫面(或GPB)條件。然後流程進行至區塊570。
於區塊535,編碼器決定一第二旗標(SMVD模式旗標)是否為真或假。在一些實施例中,第二旗標(SMVD模式旗標)被發信於該當前塊的編解碼單元(CU)層級。在一些實施例中,此SMVD模式旗標可以被發信於CTU、切片、方塊(tile)、方塊群組(tile group)、SPS、PPS、或畫面層級。如果第二旗標為真,流程進行至540。如果第二旗標為假,流程進行至550。
於區塊540,編碼器設定該第二運動向量差值(即MVD1)為該第一運動向量差值的一相反數值(即–MVD0)。在一些實施例中,該第一與第二運動向量差值是相關聯於與該當前畫面相對稱的或相同距離的第一與第二參考畫面。在一些實施例中,編碼器可以從一第一參考畫面列表中選擇該第一參考畫面而且從一第二參考畫面列表中選擇該第二參考畫面。在一些實施例中,該第一與第二參考畫面形成一對逆向與順向的或是一對順向與逆向的參考畫面。在一些實施例中,該第一參考畫面是在該第一參考畫面列表中一時間上或POC最接近該當前畫面的畫面,而且該第二參考畫面是在該第二參考畫面列表中一時間上或POC最接近該當前畫面的畫面。然後流程進行至區塊570。
於區塊550,編碼器基於用於運動補償的一運動向量與一經過預測的運動向量來設定該第二運動向量差值(即MVD1)。然後該流程於該位元流中發信(於區塊560)該第二運動向量差值(MVD1)。在一些實施例中,當該第一旗標或是該第二旗標為真時,該第二運動向量差值(MVD1)不被發信於該位元流中。
基於該第一運動向量差值(MVD0)與該第二運動向量差值(MVD1),該流程藉由使用運動信息來進行幀間預測(尤其為雙向-預測)而編碼(於區塊570)該當前塊進入該位元流中。在一些實施例中,只有當雙向-預測被允許用於當前塊與/或只有當當前塊是一雙向-切片或雙向-畫面時,SMVD模式旗標與mvd_l1_zero_flag才會被視訊編碼器考慮用於幀間-預測。 IV. 示例性的視訊解碼器
第6圖繪示出一示例性的視訊解碼器600。如圖所示,視訊解碼器600是一影像-解碼或視訊-解碼電路,其接收一位元流695並將位元流的內容解碼為視訊幀的像素資料以用於顯示。視訊解碼器600具有用於解碼位元流695的若干組件或模組,包括有些組件是選擇自一逆量化模組605、一逆轉換模組610、一幀內-預測模組625、一運動補償模組630、一迴路濾波器645、一已解碼畫面緩衝器650、一MV緩衝器665、一MV預測模組675與一剖析器690。運動補償模組630是幀間-預測模組640的一部份。
在一些實施例中,模組610-690是由計算設備的一個或複數個處理單元(例如,處理器)所執行的軟體指令的模組。在一些實施例中,模組610-690是由電子設備的一個或複數個積體電路所實現的硬體電路的模組。雖然模組610-690被表示為分離的模組,但是一些模組可以被組合成單一個模組。
剖析器690(或熵解碼器)接收位元流695,並且根據由視訊-編解碼或影像-編解碼標準所定義的語法來進行初步剖析。所剖析的語法元素包括各種標頭元素、旗標、以及已量化資料(或已量化係數)612。剖析器690藉由使用諸如上下文適應性二進制算術編碼(context-adaptive binary arithmetic coding,CABAC)或霍夫曼編碼的熵編解碼技術來剖析出各種語法元素。
逆量化模組605對已量化資料(或已量化係數)612進行逆量化以獲得轉換係數,並且逆轉換模組610對轉換係數616執行逆轉換運算以產生已重構殘差信號619。已重構殘差信號619與來自於幀內-預測模組625或運動補償模組630的已預測像素資料613相加,以產生已解碼像素資料617。已解碼像素資料由迴路濾波器645濾波並被存儲在已解碼畫面緩衝器650中。在一些實施例中,已解碼畫面緩衝器650是在視訊解碼器600之外的一記憶體。在一些實施例中,已解碼畫面緩衝器650是在視訊解碼器600之內的一記憶體。
幀內-預測模組625從位元流695接收幀內-預測資料,並且據此從存儲在已解碼畫面緩衝器650中的已解碼像素資料617來產生已預測像素資料613。在一些實施例中,已解碼像素資料617也被存儲在用於幀內-畫面預測和空間MV預測的一線緩衝器(未示出)中。
在一些實施例中,已解碼畫面緩衝器650的內容被用於顯示。顯示裝置655直接取回出已解碼畫面緩衝器650的內容以進行顯示,或將已解碼畫面緩衝器的內容取回到一顯示緩衝器。在一些實施例中,顯示裝置透過一像素傳輸從已解碼畫面緩衝器650來接收像素值。
運動補償模組630根據運動補償MV(MC MV),從存儲在已解碼畫面緩衝器650中的已解碼像素資料617來產生已預測像素資料613。這些運動補償MV透過將自位元流695接收的殘差運動資料與自MV預測模組675接收的預測MV相加而被解碼。
MV預測模組675基於參考MV來產生已預測MV,所述參考MV是在解碼先前視訊幀所產生的,也就是用於執行運動補償的運動補償MV。MV預測模組675從MV緩衝器665中取回先前視訊幀的參考MV。視訊解碼器600將產生為用來解碼當前視訊幀的運動補償MV存儲在MV緩衝器665中,以作為用於產生已預測MV的參考MV。
迴路濾波器645對已解碼像素資料617執行濾波操作或平滑操作,以減少編解碼偽影,特別是在像素塊的邊界處。在一些實施例中,所執行的濾波操作包括取樣自適應偏移(Sample Adaptive Offset,SAO)。在一些實施例中,濾波操作包括自適應迴路濾波器(Adaptive Loop Filter,ALF)。
第7圖繪示出可以實施SMVD模式與零L1 MVD模式的視訊解碼器600的一些部份。如圖所示,熵解碼器690可以從位元流695剖析出SMVD模式旗標與/或mvd_l1_zero_flag。如果使SMVD模式旗標致能的條件滿足時,熵解碼器可以剖析出SMVD模式旗標;否則,SMVD模式旗標可以不經由發信而被推導出。如果使mvd_l1_zero_flag致能的條件滿足時,熵解碼器可以剖析出mvd_l1_zero_flag;否則,mvd_l1_zero_flag可以不經由發信而被推導出。熵解碼器690也可以從位元流中剖析出語法元素,位元流中發信當前塊是否在一B-切片或B-幀中、與/或當前塊是否為雙向預測或不由語法而推導出的來決定當前塊是否在一B-切片或B-幀中。
如果當前塊是在一B-切片或B-幀中、雙向預測被允許、與/或當前塊是由雙向預測所編解碼時,一MVD選擇模組700會基於SMVD模式旗標與/或mvd_l1_zero_flag來決定是否使用SMVD模式或零L1 MVD模式。
當MVD選擇模組700決定SMVD模式被使用時,當建構運動向量以用於運動補償(MC MV)時,–MVD0被用作為運動向量差值的L1運動向量差值(MVD1)。當MVD選擇模組700決定零L1 MVD模式被使用時,當建構運動向量以用於運動補償(MC MV)時,零被用作為L1運動向量差值。在其他情況時,由熵解碼器690從位元流所剖析出的殘差運動資料會被使用來建構運動向量以用於運動補償。然後藉由加入預測過後的MV,MVD0與MVD1被用來計算運動向量以用於運動補償(MC MV)。
第8圖概念性地繪示一流程以調和SMVD模式與零L1 MVD模式。在一些實施例中,藉由執行儲存於一電腦可讀取媒介上的指令,實施解碼器600的一計算裝置上的一個或複數個處理單元(例如,處理器)會進行流程800。在一些實施例中,實施解碼器600的一電子裝置會進行流程800。
解碼器從一位元流中接收(於區塊810)資料,以解碼一像素塊作為一視訊的一當前畫面中的一當前塊。解碼器決定(於區塊815)是否藉由使用幀間模式與雙向預測來對當前塊加以編解碼。如果是,流程進行至820。如果當前塊不是藉由幀間模式與雙向預測來加以編解碼時,視訊解碼器會基於其他編解碼模式來重構當前塊。
解碼器從一位元流中接收(於區塊820)一第一運動向量差值(即MVD0)。解碼器決定(於區塊825)一第一旗標(mvd_l1_zero_flag)是否為真或假。在一些實施例中,第一旗標(mvd_l1_zero_flag)被發信於一畫面層級。在一些實施例中,此mvd_l1_zero_flag可以被發信於CU/PU、CTU、切片、方塊(tile)、方塊群組(tile group)、SPS、或PPS層級。如果第一旗標為真,解碼器進行至區塊830。如果第一旗標為假,流程進行至區塊835。在一些實施例中,使SMVD模式致能的條件(或條件A)至少包括mvd_l1_zero_flag為假。
於區塊830,由於第一旗標(mvd_l1_zero_flag)指示出零L1 MVD模式被使用,解碼器設定一第二運動向量(即MVD1)為零。在一些實施例中,該第一與第二運動向量差值是相關聯於第一與第二參考畫面。在一些實施例中,該第一參考畫面是選擇自一第一參考畫面列表而且該第二參考畫面是選擇自一第二參考畫面列表。在一些實施例中,該第一與第二參考畫面形成一對順向與順向的參考畫面。這被稱為一般化的P與B畫面(或GPB)條件。然後流程進行至區塊870。
於區塊835,解碼器決定一第二旗標(SMVD模式旗標)是否為真或假。在一些實施例中,第二旗標(SMVD模式旗標)被發信於該當前塊的編解碼單元(CU)層級。在一些實施例中,此SMVD模式旗標可以被發信於CTU、切片、方塊(tile)、方塊群組(tile group)、SPS、PPS、或畫面層級。如果第二旗標為真,流程進行至840。如果第二旗標為假,流程進行至860。
於區塊840,解碼器設定該第二運動向量差值(即MVD1)為該第一運動向量差值的一相反數值(即–MVD0)。在一些實施例中,該第一與第二運動向量差值是相關聯於與該當前畫面相對稱的或相同距離的第一與第二參考畫面。在一些實施例中,解碼器可以從一第一參考畫面列表中選擇該第一參考畫面而且從一第二參考畫面列表中選擇該第二參考畫面。在一些實施例中,該第一與第二參考畫面形成一對逆向與順向的或是一對順向與逆向的參考畫面。在一些實施例中,該第一參考畫面是在該第一參考畫面列表中一時間上或POC最接近該當前畫面的畫面,而且該第二參考畫面是在該第二參考畫面列表中一時間上或POC最接近該當前畫面的畫面。然後流程進行至區塊870。
然後該流程接收(於區塊860)於該位元流中的該第二運動向量差值(MVD1)。在一些實施例中,當該第一旗標或是該第二旗標為真時,該第二運動向量差值(MVD1)不被發信於該位元流中。
基於該第一運動向量差值與該第二運動向量差值,解碼器藉由使用運動信息來進行幀間預測(尤其為雙向-預測)而重構(於區塊870)該當前塊。在一些實施例中,只有當雙向-預測被允許用於當前塊與/或只有當當前塊是一雙向-切片或雙向-畫面(前提必要條件)時,SMVD模式旗標與mvd_l1_zero_flag才會被視訊解碼器考慮用於幀間-預測。 IX. 示例性的電子系統
很多上述的特徵和應用可以被實現為軟體處理,其被指定為記錄在電腦可讀存儲介質(computer readable storage medium)(也被稱為電腦可讀介質)上的指令集。當這些指令由一個或者複數個計算單元或者處理單元(例如,一個或者複數個處理器、處理器核或者其他處理單元)來執行時,則這些指令使得該處理單元執行這些指令所表示的動作。電腦可讀介質的示例包括但不限於CD-ROM、快閃記憶體驅動器(flash drive)、隨機存取記憶體(random access memory,RAM)晶片、硬碟、可讀寫可程式設計唯讀記憶體(erasable programmable read only memory,EPROM),電可擦除可程式設計唯讀記憶體(electrically erasable programmable read-only memory,EEPROM)等。該電腦可讀介質不包括透過無線或有線連接的載波和電信號。
在本說明書中,術語“軟體”意味著包括唯讀記憶體中的韌體或者存儲在磁存儲裝置中的應用程式,該應用程式可以被讀入到記憶體中以用於處理器進行處理。同時,在一些實施例中,複數個軟體發明可以作為更大程式的子部分來實現,而保留不同的軟體發明。在一些實施例中,複數個軟體發明可以作為獨立的程式來實現。最後,一起實現此處所描述的軟體發明的獨立的程式的任何結合是在本發明的範圍內。在一些實施例中,當被安裝以在一個或者複數個電子系統上進行操作時,軟體程式定義了一個或者複數個特定的機器實現方式,該機器實現方式執行和實施該軟體程式的操作。
第9圖概念性地繪示一電子系統900,本揭示的一些實施例可以於其中加以實施。電子系統900可以是電腦(例如,臺式電腦、個人電腦、平板電腦等)、電話、PDA或者其他種類的電子設備。這個電子系統包括各種類型的電腦可讀媒質和用於各種其他類型的電腦可讀媒質的介面。電子系統900包括匯流排905、處理單元910、影像處理單元(graphics-processing unit,GPU)915、系統記憶體920、網路925、唯讀記憶體(read-only memory,ROM)930、永久存儲裝置935、輸入設備940和輸出設備945。
匯流排905集體表示與大量的電子系統900通信連接的內部設備的所有系統匯流排、外設匯流排和晶片組匯流排。例如,匯流排905透過影像處理單元915、唯讀記憶體930、系統記憶體920和永久存儲裝置935,與處理單元910通信連接。
對於這些各種記憶體單元,處理單元910取回執行的指令和處理的資料,以為了執行本發明的處理。在不同實施例中,該處理單元可以是單個處理器或者多核處理器。某些指令被傳輸影像處理單元915和並被其執行。該影像處理單元915可以卸載各種計算或補充由處理單元910提供的影像處理。
唯讀記憶體930存儲處理單元910或者電子系統的其他模組所需要的靜態資料和指令。另一方面,永久存儲裝置935是一種讀寫記憶體設備(read-and-write memory)。這個設備是一種非易失性(non-volatile)記憶體單元,其即使在電子系統900關閉時也存儲指令和資料。本發明的一些實施例使用大容量存儲設備(例如磁片或光碟及其相應的磁碟機)作為永久存儲裝置935。
其他實施例使用卸載式存儲裝置設備(如軟碟、快閃記憶體設備等,以及其相應的磁碟機)作為該永久存儲裝置。與永久存儲裝置935一樣,系統記憶體920是一種讀寫記憶體設備。但是,與存儲裝置935不一樣的是,該系統記憶體920是一種易失性(volatile)讀寫記憶體,例如隨機讀取記憶體。系統記憶體920存儲一些處理器在運行時需要的指令和資料。在一些實施例中,根據本發明的處理被存儲在該系統記憶體920、永久存儲裝置935和/或唯讀記憶體930中。例如,各種記憶體單元包括用於根據一些實施例的處理多媒體剪輯的指令。對於這些各種記憶體單元,處理單元910取回執行的指令和處理的資料,以為了執行某些實施例的處理。
匯流排905也連接到輸入設備940和輸出設備945。該輸入設備940使得使用者溝通資訊並選擇指令到該電子系統上。該輸入設備940包括字母數位元鍵盤和指點設備(也被稱為“遊標控制設備”),攝像機(如網路攝像機(webcam)),用於接收語音命令的麥克風或類似的設備等。輸出設備945顯示由電子系統生成的圖像或以其他方式輸出的資料。輸出設備945包括印表機和顯示裝置,例如陰極射線管(cathode ray tube,CRT)或液晶顯示器(liquid crystal display,LCD),以及揚聲器或類似的音訊輸出設備。一些實施例包括諸如同時用作輸入設備和輸出設備的觸控式螢幕等設備。
最後,如第9圖所示,匯流排905也透過網路介面卡(未示出)將電子系統900耦接到網路925。在這個方式中,電腦可以是電腦網路(例如,局域網(local area network,LAN)、廣域網路(wide area network,WAN)或者內聯網)或者網路的網路(例如互聯網)的一部分。電子系統900的任一或者所有元件可以與本發明結合使用。
一些實施例包括電子元件,例如,微處理器、存儲裝置和記憶體,其將電腦程式指令存儲到機器可讀介質或者電腦可讀介質(可選地被稱為電腦可讀存儲介質、機器可讀介質或者機器可讀存儲介質)。電腦可讀介質的一些實例包括RAM、ROM、唯讀光碟(read-only compact disc,CD-ROM),可燒錄光碟(recordable compact disc,CD-R)、可讀寫光碟(rewritable compact disc,CD-RW)、唯讀數位通用光碟(read-only digital versatile disc)(例如,DVD-ROM,雙層DVD-ROM)、各種可記錄/可讀寫DVD(例如DVD RAM、DVD-RW、DVD+RW等)、快閃記憶體(如SD卡、迷你SD卡,微SD卡等)、磁性和/或固態硬碟、唯讀和可燒錄藍光®(Blu-Ray®)盤、超高密度光碟和其他任何光學介質或磁介質,以及軟碟。電腦可讀介質可以存儲由至少一個處理單元執行的電腦程式,並且包括用於執行各種操作的指令集。電腦程式或電腦代碼的示例包括機器代碼,例如編譯器產生的機器代碼,以及包含由電腦、電子元件或微處理器使用注釋器(interpreter)而執行的高級代碼的文檔。
當以上討論主要是指執行軟體的微處理器或多核處理器時,很多上述的功能和應用程式由一個或複數個積體電路執行,如特定應用的積體電路(application specific integrated circuit,ASIC)或現場可程式設計閘陣列(field programmable gate array,FPGA)。在一些實施例中,這種積體電路執行存儲在該電路本身上的指令。此外,一些實施例執行存儲在可程式設計邏輯器件(programmable logic device,PLD),ROM或RAM設備中的軟體。
如本發明的說明書和任一請求項中所使用,術語“電腦”、“伺服器”、“處理器”和“記憶體”均指電子設備或其他技術設備。這些術語不包括人或群體。為了本說明書的目的,術語顯示或顯示裝置指在電子設備上進行顯示。如本發明的說明書和任一請求項中所使用,術語“電腦可讀介質”、“電腦可讀媒質”和“機器可讀介質”完全局限於有形的、實體的物體,其以電腦可讀的形式存儲資訊。這些術語不包括任何無線信號、有線下載信號和其他任何短暫信號。
在結合許多具體細節的情況下描述了本發明時,本領域通常知識者將認識到,本發明可以以其他具體形式而被實施,而不脫離本發明的精神。此外,大量的圖(包括第5圖和第8圖)概念性示出了處理。這些處理的具體操作可以不以所示以及所描述的確切順序來被執行。這些具體操作可用不在一個連續的操作系列中被執行,並且不同的具體操作可以在不同的實施例中被執行。另外,該處理透過使用幾個子處理而被實現,或者作為更大巨集處理的部分。因此,本領域通常知識者將能理解的是,本發明不受前述說明性細節的限制,而是由請求項加以界定。 附加的說明
本文所描述的主題有時表示不同的元件,其包含在或者連接到其他不同的元件。可以理解的是,所描述的結構僅是示例,實際上可以由許多其他結構來實施,以實現相同的功能。從概念上講,任何實現相同功能的組件的排列實際上是“相關聯的”,以便實現所需的功能。因此,不論結構或中間部件,為實現特定的功能而組合的任何兩個元件被視為“相互關聯”,以實現所需的功能。同樣,任何兩個相關聯的元件被看作是相互“可操作連接”或“可操作耦接”,以實現特定功能。能相互關聯的任何兩個組件也被視為相互“可操作地耦合”以實現特定功能。可操作連接的具體例子包括但不限於物理可配對和/或物理上相互作用的元件,和/或無線可交互和/或無線上相互作用的元件,和/或邏輯上相互作用和/或邏輯上可交互的元件。
此外,關於基本上任何複數和/或單數術語的使用,本領域的技術人員可以根據上下文和/或應用從複數轉換為單數和/或從單數到複數。為清楚起見,本文明確規定了不同的單數/複數排列。
此外,本領域的通常知識者可以理解,通常,本發明所使用的術語特別是請求項中的,如請求項的主題,通常用作“開放”術語,例如,“包括”應解釋為“包括但不限於,“有”應理解為“至少有”“包括”應解釋為“包括但不限於”等。本領域的通常知識者可以進一步理解,若計畫介紹特定數量的請求項內容,將在請求項內明確表示,並且,在沒有這類內容時將不顯示。例如,為幫助理解,下面請求項可能包含短語“至少一個”和“一個或複數個”,以介紹請求項內容。然而,這些短語的使用不應理解為暗示使用不定冠詞“a”或“an”介紹請求項內容,而限制了任何特定的請求項。甚至當相同的請求項包括介紹性短語“一個或複數個”或“至少有一個”,不定冠詞,例如“a”或“an”,則應被解釋為表示至少一個或者更多,對於用於介紹請求項的明確描述的使用而言,同樣成立。此外,即使明確引用特定數量的介紹性內容,本領域通常知識者可以認識到,這樣的內容應被解釋為表示所引用的數量,例如,沒有其他修改的“兩個引用”,意味著至少兩個引用,或兩個或兩個以上的引用。此外,在使用類似於“A、B和C中的至少一個”的表述的情況下,通常如此表述是為了本領域通常知識者可以理解該表述,例如,“系統包括A、B和C中的至少一個”將包括但不限於單獨具有A的系統,單獨具有B的系統,單獨具有C的系統,具有A和B的系統,具有A和C的系統,具有B和C的系統,和/或具有A、B和C的系統,等。本領域通常知識者進一步可理解,無論在說明書中、請求項中或者附圖中,由兩個或兩個以上的替代術語所表現的任何分隔的單詞和/或短語應理解為,包括這些術語中的一個,其中一個,或者這兩個術語的可能性。例如,“A或B”應理解為,“A”,或者“B”,或者“A和B”的可能性。
從前述可知,為了說明目的,此處已描述了各種實施方案,並且在不偏離本發明的範圍和精神的情況下,可以進行各種變形。因此,此處所公開的各種實施方式不用於限制,專利申請範圍表示真實的範圍和精神。
100:像素塊 110:當前畫面 120:L0參考畫面 130:L1參考畫面 300:視訊編碼器 305:視訊源 308:減法器 309:殘差信號 310:轉換模組 311:量化模組 312:已量化係數 313:已預測像素資料 314:逆量化模組 315:逆轉換模組 316:轉換係數 317:已重構像素資料 319:已重構殘差 320:幀內-畫面估計模組 325:幀內-預測模組 330:運動補償模組 335:運動估計模組 340:幀間-預測模組 345:迴路濾波器 350:已重構畫面緩衝器 365:MV緩衝器 375:MV預測模組 390:熵編碼器 395:位元流 400:MVD選擇模組 500:流程 510~570:區塊 600:視訊解碼器 605:逆量化模組 610:逆轉換模組 612:已量化係數 613:已預測像素資料 616:轉換係數 617:已解碼像素資料 619:已重構殘差信號 625:幀內-預測模組 630:運動補償模組 645:迴路濾波器 650:已解碼畫面緩衝器 655:顯示裝置 665:MV緩衝器 675:MV預測模組 690:剖析器 695:位元流 700:MVD選擇模組 800:流程 810~870:區塊 900:電子系統 905:匯流排 910:處理單元 915:影像處理單元 920:系統記憶體 925:網路 930:唯讀記憶體 935:永久存儲裝置 940:輸入設備 945:輸出設備
下列圖式用以提供本發明的進一步理解,並被納入且構成本發明的一部分。這些圖式說明瞭本發明的實施方式,並與說明書一起用以解釋本發明的原理。為了清楚地說明本發明的概念,與實際實施方式中的尺寸相比,一些元件可以不按照比例被示出,這些圖式無需按照比例繪製。 第1圖概念性地繪示出當SMVD模式旗標為真時當前塊的幀間預測。 第2圖概念性地繪示出當mvd_l1_zero_flag為真時的幀間預測。 第3圖繪示出一示例的視訊編碼器。 第4圖繪示出可以實施SMVD模式與零L1 MVD模式的視訊編碼器的部份。 第5圖概念性地繪示一流程以調和SMVD模式與零L1 MVD模式。 第6圖繪示出一示例的視訊解碼器。 第7圖繪示出可以實施SMVD模式與零L1 MVD模式的視訊解碼器的部份。 第8圖概念性地繪示一流程以調和SMVD模式與零L1 MVD模式。 第9圖概念性地繪示一電子系統,本揭示的一些實施例可以於其中加以實施。
800:流程
810~870:區塊

Claims (13)

  1. 一種視訊解碼方法,包括: 接收一塊的像素資料,該塊將被解碼作為一視訊的一當前畫面中的一當前塊;以及 當該當前塊藉由使用幀間模式與雙向預測加以編解碼時: 接收一第一運動向量差值; 基於一第一旗標或一第二旗標來決定一第二運動向量差值,其中當該第一旗標為假時,該第二旗標被使用來決定是否將該第二運動向量差值設定為該第一運動向量差值的一相反數值;以及 基於該第一運動向量差值與該第二運動向量差值,藉由使用運動信息來進行幀間預測而重構該當前塊。
  2. 如請求項1所述的視訊解碼方法,其中該第一旗標被發信於一畫面層級。
  3. 如請求項1所述的視訊解碼方法,其中該第二旗標被發信於該當前塊的編解碼單元層級。
  4. 如請求項1所述的視訊解碼方法,其中當該第一旗標或是該第二旗標為真時,該第二運動向量差值不被發信。
  5. 如請求項1所述的視訊解碼方法,其中高級運動向量預測模式被使用於該當前塊。
  6. 如請求項1所述的視訊解碼方法,其中該第一與第二運動向量差值是相關聯於相對稱的或與該當前畫面相同距離的第一與第二參考畫面。
  7. 如請求項6所述的視訊解碼方法,其中該第一參考畫面是選擇自一第一參考畫面列表而且該第二參考畫面是選擇自一第二參考畫面列表,其中該第一與第二參考畫面形成一對逆向與順向的參考畫面。
  8. 如請求項7所述的視訊解碼方法,其中該第一參考畫面是在該第一參考畫面列表中一時間上最接近該當前畫面的畫面,而且該第二參考畫面是在該第二參考畫面列表中一時間上最接近該當前畫面的畫面。
  9. 如請求項1所述的視訊解碼方法,其中當該第一旗標為真時,該第二運動向量差值被設定為零。
  10. 如請求項9所述的視訊解碼方法,其中該第一與第二運動向量差值是相關聯於第一與第二參考畫面,其中該第一參考畫面是選擇自一第一參考畫面列表而且該第二參考畫面是選擇自一第二參考畫面列表,其中該第一與第二參考畫面形成一對順向與順向的參考畫面。
  11. 一種視訊編碼方法,包括: 接收相對應於一當前畫面中的一當前塊的一像素塊的原始像素資料;以及 當該當前塊藉由使用幀間模式與雙向預測加以編解碼時: 計算一第一運動向量差值; 基於一第一旗標或一第二旗標來決定一第二運動向量差值,其中當該第一旗標為假時,該第二旗標被使用來決定是否將一第二運動向量差值設定為該第一運動向量差值的一相反數值;以及 基於該第一運動向量差值與該第二運動向量差值,藉由使用運動信息來進行幀間預測而編碼該當前塊。
  12. 一種電子裝置,包括: 一視訊解碼器被配置來進行操作,包括: 接收一塊的像素資料,該塊將被解碼作為一視訊的一當前畫面中的一當前塊;以及 當該當前塊藉由使用幀間模式與雙向預測加以編解碼時: 接收一第一運動向量差值; 基於一第一旗標或一第二旗標來決定一第二運動向量差值,其中當該第一旗標為假時,該第二旗標被使用來決定是否將該第二運動向量差值設定為該第一運動向量差值的一相反數值;以及 基於該第一運動向量差值與該第二運動向量差值,藉由使用運動信息來進行幀間預測而重構該當前塊。
  13. 一種視訊編解碼方法,包括: 接收一塊的像素資料,該塊將被編碼或解碼作為一視訊的一當前畫面中的一當前塊;以及 當該當前塊藉由使用幀間模式與雙向預測加以編解碼時: 接收一第一運動向量差值; 基於一第一旗標或一第二旗標來決定一第二運動向量差值,其中當該第一旗標為假時,該第二旗標被使用來決定是否將該第二運動向量差值設定為該第一運動向量差值的一相反數值;以及 基於該第一運動向量差值與該第二運動向量差值,藉由使用運動信息來進行幀間預測而編碼或解碼該當前塊。
TW109117090A 2019-05-22 2020-05-22 運動向量差值導數傳訊技術 TWI743801B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201962851140P 2019-05-22 2019-05-22
US62/851,140 2019-05-22
US16/880,344 2020-05-21
US16/880,344 US11109064B2 (en) 2019-05-22 2020-05-21 Signaling of motion vector difference derivation

Publications (2)

Publication Number Publication Date
TW202101991A true TW202101991A (zh) 2021-01-01
TWI743801B TWI743801B (zh) 2021-10-21

Family

ID=73456421

Family Applications (2)

Application Number Title Priority Date Filing Date
TW109117090A TWI743801B (zh) 2019-05-22 2020-05-22 運動向量差值導數傳訊技術
TW110133492A TWI752897B (zh) 2019-05-22 2020-05-22 運動向量差值導數傳訊技術

Family Applications After (1)

Application Number Title Priority Date Filing Date
TW110133492A TWI752897B (zh) 2019-05-22 2020-05-22 運動向量差值導數傳訊技術

Country Status (6)

Country Link
US (1) US11109064B2 (zh)
EP (1) EP3970375A4 (zh)
CN (1) CN113853795A (zh)
MX (1) MX2021014221A (zh)
TW (2) TWI743801B (zh)
WO (1) WO2020233702A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020156517A1 (en) * 2019-01-31 2020-08-06 Beijing Bytedance Network Technology Co., Ltd. Fast algorithms for symmetric motion vector difference coding mode
JP7469335B2 (ja) * 2019-06-13 2024-04-16 エルジー エレクトロニクス インコーポレイティド 動きベクトル予測基盤映像/ビデオコーディング方法及び装置
CN114080813A (zh) * 2019-06-14 2022-02-22 Lg 电子株式会社 使用运动矢量的图像编译的方法和装置
JP7323649B2 (ja) * 2019-06-14 2023-08-08 エルジー エレクトロニクス インコーポレイティド インター予測に基づく画像コーディング方法及び装置
US20200402546A1 (en) * 2019-06-24 2020-12-24 Seagate Technology Llc Reducing base deck porosity

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1306821C (zh) * 2004-07-30 2007-03-21 联合信源数字音视频技术(北京)有限公司 一种视频图像中运动矢量预测生成的方法及其装置
US9420285B2 (en) * 2012-04-12 2016-08-16 Qualcomm Incorporated Inter-layer mode derivation for prediction in scalable video coding
US10021414B2 (en) 2013-01-04 2018-07-10 Qualcomm Incorporated Bitstream constraints and motion vector restriction for inter-view or inter-layer reference pictures
US9609347B2 (en) * 2013-04-04 2017-03-28 Qualcomm Incorporated Advanced merge mode for three-dimensional (3D) video coding
US9762909B2 (en) * 2013-07-30 2017-09-12 Kt Corporation Image encoding and decoding method supporting plurality of layers and apparatus using same
JP6560230B2 (ja) * 2014-01-02 2019-08-14 ヴィド スケール インコーポレイテッド インターレースおよびプログレッシブ混合のコンテンツを用いるスケーラブルビデオコーディングのための方法およびシステム
US20170244964A1 (en) * 2016-02-23 2017-08-24 Mediatek Inc. Method and Apparatus of Flexible Block Partition for Video Coding
US20190007699A1 (en) 2017-06-28 2019-01-03 Futurewei Technologies, Inc. Decoder Side Motion Vector Derivation in Video Coding

Also Published As

Publication number Publication date
TWI743801B (zh) 2021-10-21
EP3970375A1 (en) 2022-03-23
TWI752897B (zh) 2022-01-11
US20200374551A1 (en) 2020-11-26
US11109064B2 (en) 2021-08-31
EP3970375A4 (en) 2023-05-24
CN113853795A (zh) 2021-12-28
TW202201964A (zh) 2022-01-01
MX2021014221A (es) 2022-07-15
WO2020233702A1 (en) 2020-11-26

Similar Documents

Publication Publication Date Title
TWI737201B (zh) 用於發信合併工具的方法及裝置
TWI690200B (zh) 畫面內合併預測
CN112400319B (zh) 一种视频编码/解码方法及装置
TWI749467B (zh) 幀內塊複製合併列表簡化
TWI743801B (zh) 運動向量差值導數傳訊技術
TWI729526B (zh) 用於多重假設之幀內預測
TWI706667B (zh) 隱式變換設置
TWI734268B (zh) 用於多重-參考行預測與多重-假設預測之發信
TW201832556A (zh) 多重假設之合併模式
TW201946470A (zh) 用於照度補償的信令
TWI754199B (zh) 具有應用的塊設定以及運動儲存設定的三角形預測
TW202123704A (zh) 視訊和影像編碼中之高階資訊傳訊技術
US20200059659A1 (en) Shared Candidate List
WO2023193769A1 (en) Implicit multi-pass decoder-side motion vector refinement
TW202408232A (zh) 更新合併候選的運動屬性
TW202412526A (zh) 視訊編解碼中的出界檢查
TW202406348A (zh) 視訊編解碼方法及其裝置