JP7198949B2 - ビデオ符号化のための動きベクトル予測 - Google Patents

ビデオ符号化のための動きベクトル予測 Download PDF

Info

Publication number
JP7198949B2
JP7198949B2 JP2021572067A JP2021572067A JP7198949B2 JP 7198949 B2 JP7198949 B2 JP 7198949B2 JP 2021572067 A JP2021572067 A JP 2021572067A JP 2021572067 A JP2021572067 A JP 2021572067A JP 7198949 B2 JP7198949 B2 JP 7198949B2
Authority
JP
Japan
Prior art keywords
mvp
block
obtaining
neighboring blocks
spatial
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
JP2021572067A
Other languages
English (en)
Other versions
JP2022527673A (ja
Inventor
チェン、イ-ウェン
シウ、シャオユー
マー、ツォン-チョアン
チュー、ホン-チェン
イェ、ショイミン
ワン、シャンリン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Dajia Internet Information Technology Co Ltd
Original Assignee
Beijing Dajia Internet Information Technology Co Ltd
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 Beijing Dajia Internet Information Technology Co Ltd filed Critical Beijing Dajia Internet Information Technology Co Ltd
Publication of JP2022527673A publication Critical patent/JP2022527673A/ja
Priority to JP2022201577A priority Critical patent/JP2023030061A/ja
Application granted granted Critical
Publication of JP7198949B2 publication Critical patent/JP7198949B2/ja
Priority to JP2024001436A priority patent/JP2024038295A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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/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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • 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/172Methods 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 picture, frame or field
    • 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/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • 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/57Motion estimation characterised by a search window with variable size or shape
    • 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)

Description

関連出願の相互参照
本出願は、開示全体が全体として参照により本明細書に組み込まれている、2019年6月13日出願の米国仮特許出願第62/861,315号に基づいており、その優先権を主張する。
本開示は、ビデオの符号化および圧縮に関する。より詳細には、本開示は、ビデオ符号化における動きベクトル予測のための方法および装置に関する。
様々なビデオ符号化技術が、ビデオデータを圧縮するために使用されてよい。ビデオ符号化は、1つまたは複数のビデオ符号化規格に従って実行される。例えば、ビデオ符号化規格は、多用途ビデオ符号化(VVC)、共同探索試験モデル(JEM)、高効率ビデオ符号化(H.265/HEVC)、高度ビデオ符号化(H.264/AVC)、ムービング・ピクチャ・エキスパート・グループ(MPEG)符号化などを含む。ビデオ符号化は、概して、ビデオ画像またはシーケンスに存在する冗長性を利用する予測方法(例えば、インター予測、イントラ予測など)を利用する。ビデオ符号化技術の重要な目標は、ビデオ品質の劣化を回避または最小化しながら、より低いビットレートを使用する形式にビデオデータを圧縮することである。
本開示の例は、ビデオ符号化における動きベクトル予測のための方法および装置を提供する。
本開示の第1の態様によれば、ビデオ信号を復号する方法が提供される。この方法は、デコーダで、ビデオ信号からビデオブロックを取得することを含むことができる。この方法は、デコーダで、ビデオブロックに基づいて、空間近隣ブロックを取得することをさらに含むことができる。空間近隣ブロックは、複数の左方空間近隣ブロックおよび複数の上方空間近隣ブロックを含むことができる。この方法は、デコーダで、複数の左方空間近隣ブロックに基づいて、最大1つのスケーリングされていない左方動きベクトル予測子(MVP)を取得することを含むことができる。この方法はまた、デコーダで、複数の上方空間近隣ブロックに基づいて、最大1つのスケーリングされていない上方MVPを取得することを含むことができる。この方法は、デコーダで、空間近隣ブロックから導出されたスケーリングされたMVPを選択する可能性を低減させることによって、ビデオブロック、複数の左方空間近隣ブロック、複数の上方空間近隣ブロックに基づいて、MVP候補リストを導出することを含むことができる。MVP候補リストは、最大1つのスケーリングされていない左方MVPおよび最大1つのスケーリングされていない上方MVPを含むことができる。この方法は、デコーダで、MVP候補リストに基づいて、最良MVPを受け取ることをさらに含むことができる。エンコーダが、MVP候補リストから最良MVPを選択する。この方法は、デコーダで、最良MVPに基づいて、ビデオブロックの予測信号を取得することを含むことができる。
本開示の第2の態様によれば、ビデオ信号を復号するためのコンピューティングデバイスが提供される。コンピューティングデバイスは、1つまたは複数のプロセッサと、1つまたは複数のプロセッサによって実行可能な命令を記憶する非一時的コンピュータ可読メモリとを含むことができる。1つまたは複数のプロセッサは、ビデオ信号からビデオブロックを取得するように構成されてよい。1つまたは複数のプロセッサは、ビデオブロックに基づいて、空間近隣ブロックを取得するようにさらに構成されてよい。空間近隣ブロックは、複数の左方空間近隣ブロックおよび複数の上方空間近隣ブロックを含むことができる。1つまたは複数のプロセッサは、複数の左方空間近隣ブロックに基づいて、最大1つのスケーリングされていない左方動きベクトル予測子(MVP)を取得するように構成されてよい。1つまたは複数のプロセッサはまた、複数の上方空間近隣ブロックに基づいて、最大1つのスケーリングされていない上方MVPを取得するように構成されてよい。1つまたは複数のプロセッサは、空間近隣ブロックから導出されたスケーリングされたMVPを選択する可能性を低減させることによって、ビデオブロック、複数の左方空間近隣ブロック、複数の上方空間近隣ブロックに基づいて、MVP候補リストを導出するように構成されてよい。MVP候補リストは、最大1つのスケーリングされていない左方MVPおよび最大1つのスケーリングされていない上方MVPを含むことができる。1つまたは複数のプロセッサは、MVP候補リストに基づいて、最良MVPを受け取るようにさらに構成されてよい。エンコーダが、MVP候補リストから最良MVPを選択する。1つまたは複数のプロセッサは、最良MVPに基づいて、ビデオブロックの予測信号を取得するように構成されてよい。
本開示の第3の態様によれば、命令が記憶された非一時的コンピュータ可読記憶媒体が提供される。装置の1つまたは複数のプロセッサによって命令が実行されるとき、命令は、装置に、デコーダで、ビデオ信号からビデオブロックを取得することを実行させることができる。命令は、装置に、デコーダで、ビデオブロックに基づいて、空間近隣ブロックを取得することを実行させることができる。空間近隣ブロックは、複数の左方空間近隣ブロックおよび複数の上方空間近隣ブロックを含むことができる。命令は、装置に、デコーダで、複数の左方空間近隣ブロックに基づいて、最大1つのスケーリングされていない左方動きベクトル予測子(MVP)を取得することをさらに実行させることができる。命令は、装置に、デコーダで、複数の上方空間近隣ブロックに基づいて、最大1つのスケーリングされていない上方MVPを取得することを実行させることができる。命令は、装置に、デコーダで、空間近隣ブロックから導出されたスケーリングされたMVPを選択する可能性を低減させることによって、ビデオブロック、複数の左方空間近隣ブロック、複数の上方空間近隣ブロックに基づいて、MVP候補リストを導出することをさらに実行させることができる。MVP候補リストは、最大1つのスケーリングされていない左方MVPおよび最大1つのスケーリングされていない上方MVPを含むことができる。命令はまた、装置に、デコーダで、MVP候補リストに基づいて、最良MVPを受け取ることを実行させることができる。エンコーダが、MVP候補リストから最良MVPを選択する。命令はまた、装置に、履歴ベースMVPを取得した後、デコーダで、空間近隣ブロックから導出されたスケーリングされたMVPを取得することを実行させることができる。
本明細書に組み込まれてその一部を構成する添付の図面は、本開示に一貫した例を示し、その記載とともに、本開示の原理について説明する働きをする。
本開示の一例に係るエンコーダのブロック図である。 本開示の一例に係るデコーダのブロック図である。 本開示の一例に係る空間MVP候補および時間MVP候補に対する候補位置を示す図である。 本開示の一例に係る空間動きベクトル候補に対する動きベクトルのスケーリングを示す図である。 本開示の一例に係る時間マージ候補に対する動きベクトルのスケーリングを示す図である。 本開示の一例に係るビデオ信号を復号する方法の図である。 本開示の一例に係るMVP候補リストを導出する方法の図である。 本開示の一例に係るユーザ・インターフェースに結合されたコンピューティング環境を示す図である。
例示的な実施形態が次に詳細に参照されており、例示的な実施形態の例は、添付の図面に示されている。以下の説明は、添付の図面を参照し、添付の図面では、異なる図面の同じ符号は、別途指示されない限り、同じまたは類似の要素を表す。以下の実施形態の説明に記載される実装形態は、本開示に一貫したすべての実装形態を表すわけではない。代わりに、これらの実装形態は、添付の特許請求の範囲に引用される開示に関係する態様に一貫した装置および方法の例にすぎない。
本開示で使用される技術用語は、特定の実施形態について説明することのみを目的とし、本開示を限定することが意図されるものではない。文脈上別途明白に指示しない限り、本開示および添付の特許請求の範囲で使用されるとき、単数形の「a」、「an」、および「the」は、複数形も同様に含むことが意図される。本明細書で使用される「および/または」という用語は、列挙された関連する項目のうちの1つまたは複数のあらゆる可能な組合せを意味し、そのような組合せを含むことが意図されることも理解されよう。
「第1」、「第2」、「第3」などの用語は、様々な情報について説明するために本明細書で使用されることがあるが、その情報は、これらの用語によって限定されるべきではないことが理解されよう。これらの用語は、1つのカテゴリの情報を別のカテゴリの情報から区別するためにのみ使用される。例えば、本開示の範囲から逸脱することなく、第1の情報が第2の情報と呼ばれてよく、同様に第2の情報が第1の情報と呼ばれてもよい。本明細書では、「~場合(if)」という用語は、文脈に応じて、「~とき(when)」または「~とき(upon)」または「判断に応答して」を意味することが理解されよう。
ビデオ符号化システム
概念的には、上記で言及されたビデオ符号化規格は類似している。例えば、そのような規格はすべて、ブロックに基づく処理を使用しており、ビデオ圧縮を実現するために、類似のビデオ符号化ブロック図を共用する。
図1は、VVCのためのブロックに基づくビデオエンコーダの概略図を示す。具体的には、図1は、典型的なエンコーダ100を示す。エンコーダ100は、ビデオ入力110、動き補償112、動き推定114、イントラ/インター・モード決定116、ブロック予測子140、加算器128、変換130、量子化132、予測関連情報142、イントラ予測118、ピクチャバッファ120、逆量子化134、逆変換136、加算器126、メモリ124、ループ内フィルタ122、エントロピー符号化138、およびビットストリーム144を有する。
エンコーダ100では、ビデオフレームが、処理のために複数のビデオブロックに区画化される。所与の各ビデオブロックに対して、インター予測手法またはイントラ予測手法に基づいて、予測が形成される。
ビデオ入力110の一部である現在のビデオブロックと、ブロック予測子140の一部であるその予測子との間の差を表す予測残差が、加算器128から変換130へ送られる。次いで、変換係数が、エントロピー低減のために変換130から量子化132へ送られる。次いで、量子化された係数が、エントロピー符号化138へ送出されて、圧縮されたビデオビットストリームを生成する。図1に示されているように、ビデオブロック区画情報、動きベクトル(MV)、参照ピクチャインデックス、およびイントラ予測モードなどのイントラ/インター・モード決定116からの予測関連情報142もまた、エントロピー符号化138を通って送出され、圧縮されたビットストリーム144に保存される。圧縮されたビットストリーム144は、ビデオビットストリームを含む。
エンコーダ100では、予測の目的で画素を再構築するために、デコーダ関連回路も必要とされる。まず、逆量子化134および逆変換136によって、予測残差が再構築される。この再構築された予測残差は、ブロック予測子140と組み合わされて、現在のビデオブロックに対するフィルタリングされていない再構築画素を生成する。
空間予測(または「イントラ予測」)は、同じビデオフレーム内のすでに符号化された近隣ブロックのサンプル(参照サンプルと呼ばれる)からの画素を、現在のビデオブロックとして使用して、現在のビデオブロックを予測する。
時間予測(「インター予測」とも呼ばれる)は、すでに符号化されたビデオ・ピクチャからの再構築画素を使用して、現在のビデオブロックを予測する。時間予測は、ビデオ信号に固有の時間的冗長性を低減させる。通常、所与の符号化ユニット(CU)または符号化ブロックに対する時間予測信号は、現在のCUとその時間参照との間の動きの量および方向を示す1つまたは複数のMVによって送信される。さらに、複数の参照ピクチャが対応される場合、1つの参照ピクチャインデックスがさらに送られ、これは、時間予測信号が参照ピクチャ・ストレージ内のどの参照ピクチャに由来するかを識別するために使用される。
動き推定114が、ピクチャバッファ120からビデオ入力110および信号を取り入れ、動き推定信号を動き補償112へ出力する。動き補償112は、ビデオ入力110、ピクチャバッファ120からの信号、および動き推定114からの動き推定信号を取り入れ、イントラ/インター・モード決定116へ動き補償信号を出力する。
空間および/または時間予測が実行された後、エンコーダ100内のイントラ/インター・モード決定116が、例えばレート歪み最適化方法に基づいて、最良の予測モードを選ぶ。次いで、現在のビデオブロックからブロック予測子140が引かれ、変換130および量子化132を使用して、その結果得られる予測残差から相関が除去される。その結果得られる量子化された残差係数は、逆量子化134によって逆量子化され、逆変換136によって逆変換されて、再構築残差を形成し、次いで、この再構築残差が、予測ブロックに再び加算されて、CUの再構築信号を形成する。さらに、非ブロック化フィルタ、サンプル適応型オフセット(SAO)、および/または適応型ループ内フィルタ(ALF)などのループ内フィルタリング122が、再構築CUに適用されてよく、その後、ピクチャバッファ120の参照ピクチャ・ストレージに入れられ、将来のビデオブロックを符号化するために使用される。出力ビデオビットストリーム144を形成するために、符号化モード(インターまたはイントラ)、予測モード情報、動き情報、および量子化された残差係数はすべて、エントロピー符号化ユニット138へ送られ、さらに圧縮およびパックされて、ビットストリームを形成する。
エンコーダでは、ビデオフレームが、処理のためにブロックに区画化される。所与の各ビデオブロックに対して、インター予測またはイントラ予測に基づいて、予測が形成される。インター予測では、予測子は、前に再構築されたフレームの画素に基づいて、動き推定および動き補償によって形成されてよい。イントラ予測では、予測子は、現在のフレーム内の再構築画素に基づいて形成されてよい。モード決定によって、現在のブロックを予測するために、最良の予測子が選択されてよい。
予測残差(すなわち、現在のブロックとその予測子との間の差)が、変換モジュールへ送られる。次いで、変換係数が、エントロピー低減のために量子化モジュールへ送られる。量子化された係数が、エントロピー符号化モジュールへ送出されて、圧縮されたビデオビットストリームを生成する。図1に示されているように、ブロック区画情報、動きベクトル、参照ピクチャインデックス、およびイントラ予測モードなどのインターおよび/またはイントラ予測モジュールからの予測関連情報もまた、エントロピー符号化モジュールを通って、ビットストリームに保存される。
エンコーダでは、予測の目的で画素を再構築するために、デコーダ関連モジュールも必要とされる。まず、逆量子化および逆変換によって、予測残差が再構築される。そのように再構築された予測残差は、ブロック予測子と組み合わされて、現在のブロックに対するフィルタリングされていない再構築画素を生成する。
符号化効率および視覚品質を改善するために、ループ内フィルタが一般に使用される。例えば、AVC、HEVC、ならびに現在のVVCで、非ブロック化フィルタが利用可能である。HEVCでは、SAO(サンプル適応型オフセット)と呼ばれる追加のループ内フィルタが、符号化効率をさらに改善するように定義される。最新のVVCでは、ALF(適応型ループ・フィルタ)と呼ばれるさらに別のループ内フィルタが積極的に調査されており、最終的な規格に含まれる可能性が高い。
図2は、VVCのためのビデオ・デコーダの概略ブロック図を示す。具体的には、図2は、典型的なデコーダ200のブロック図を示す。デコーダ200は、ビットストリーム210、エントロピー復号212、逆量子化214、逆変換216、加算器218、イントラ/インター・モード選択220、イントラ予測222、メモリ230、ループ内フィルタ228、動き補償224、ピクチャバッファ226、予測関連情報234、およびビデオ出力232を有する。
デコーダ200は、図1のエンコーダ100内に存在する再構築関連部分に類似している。デコーダ200では、まず、入ってくるビデオビットストリーム210が、エントロピー復号212によって復号されて、量子化された係数レベルおよび予測関連情報を導出する。次いで、量子化された係数レベルが、逆量子化214および逆変換216によって、再構築された予測残差を取得するために処理される。イントラ/インター・モード・セレクタ220で実施されるブロック予測子機構は、復号された予測情報に基づいて、イントラ予測222または動き補償224を実行するように構成される。加算器218を使用して、逆変換216からの再構築された予測残差と、ブロック予測子機構によって生成された予測出力とを加算することによって、1組のフィルタリングされていない再構築画素が取得される。
再構築されたブロックは、ループ内フィルタ228をさらに通過することができ、その後、参照ピクチャストアとして機能するピクチャバッファ226に記憶される。ピクチャバッファ226内の再構築ビデオは、ディスプレイデバイスを駆動するために送られ、ならびに将来のビデオブロックを予測するために使用されてよい。ループ内フィルタ228がオンにされた状況で、これらの再構築画素においてフィルタリング動作が実行されて、最終的な再構築ビデオ出力232を導出する。
図2は、これらの規格に対する典型的なデコーダのブロック図を示す。このブロック図は、エンコーダ内に存在する再構築関連部分とほぼ同じであることが見て取れる。
デコーダでは、まず、ビットストリームが、エントロピー復号モジュールによって復号されて、量子化された係数レベルおよび予測関連情報を導出する。次いで、量子化された係数レベルが、逆量子化および逆変換モジュールによって、再構築された予測残差を取得するために処理される。ブロック予測子は、復号された予測情報に基づいて、イントラ予測または動き補償プロセスによって形成される。再構築された予測残差と、ブロック予測子とを加算することによって、フィルタリングされていない再構築画素が取得される。ループ内フィルタがオンにされている場合、これらの画素においてフィルタリング動作が実行されて、出力のための最終的な再構築ビデオを導出する。
多用途ビデオ符号化(VVC)
第10回JVET会議(2018年4月10~20日、米国サンディエゴ)において、JVETは、多用途ビデオ符号化(VVC)およびVVC試験モデル1(VTM1)符号化方法の原案を定義した。JVETは、2分割および3K分割の符号化ブロック構造をVVCの最初の新しい符号化特徴として使用する入れ子状の複数タイプのツリーを有する4分木を含むと決定した。それ以降、符号化方法および試案のVVC復号プロセスを実施するための参照ソフトウェアVTMが、JVET会議中に開発されている。
ピクチャ区画化構造は、入力ビデオを符号化ツリー単位(CTU)と呼ばれるブロックに分割する。CTUは、入れ子状の複数タイプのツリー構造を有する4分木を使用して、符号化単位(CU)に分割され、葉の符号化ユニット(CU)が、同じ予測モード(例えば、イントラまたはインター)を共有する領域を画定する。本明細書では、「単位」という用語は、画像がすべての成分を含む領域を画定し、「ブロック」という用語は、特定の成分(例えば、ルマ)を含む領域を画定するために使用され、4:2:0などのクロマ・サンプリング方式を考慮すると、空間位置が異なってもよい。
VVCにおける動きベクトル予測
動きベクトル予測は、動きパラメータの明示的な伝送に使用される近隣CUの動きベクトルの空間的および時間的な相関関係を利用する。動きベクトル予測は、まず左方、上方、および時間的に近隣するブロック位置(図3に示されている、後述)ならびに履歴ベースMVの利用可能性を確認することによって、動きベクトル予測子(MVP)候補リストを構築する。次いで、冗長な候補を除去し、ゼロ・ベクトルを加えて、候補リストを一定の長さにする。次いで、エンコーダは、候補リストから最良の予測子を選択し、選択された候補を示す対応するインデックスを伝送することができる。次いで、最良の動きベクトル候補のインデックスは、ビットストリームに符号化される。以下の章では、MVP候補の導出プロセスに関する詳細が提供される。
図3は、空間MVP候補A0、A1、B0、B1、およびB2、ならびに時間MVP候補T0およびT1の候補位置を示す。
動きベクトル予測子候補の導出
VVCでは、MVP候補リストは、以下の候補を順に含むことによって構築される。
(1)左方空間近隣CUから最大1つのスケーリングされていないMVPを導出する(A0→A1)。
(2)左方からのスケーリングされていないMVPが利用可能でない場合、左方空間近隣CUから最大1つのスケーリングされたMVPを導出する(A0→A1)。
(3)上方空間近隣CUから最大1つのスケーリングされていないMVPを導出する(B0→B1→B2)。
(4)両方の近隣ブロックA0およびA1が利用可能でない、またはイントラ・モードで符号化されている場合、上方空間近隣CUから最大1つのスケーリングされたMVPを導出する(B0→B1→B2)。
(5)条件付きプルーニング。
(6)時間配列CUから最大1つのMVPを導出する(T0→T1)。
(7)FIFO表から最大2つの履歴ベースMVPを導出する。
(8)最大2つのゼロMVを導出する。
項目5の「条件付きプルーニング」は、2つのMVP候補が空間ブロックから導出されたときに行われる。2つのMVP候補が互いに比較され、これらが同一であるとき、一方がMVP候補リストから除去される。インターMVPリストのサイズは、2に固定される。インター予測であるが非マージモードで符号化された各CUに対して、どのMVP候補が使用されているかを示すために、フラグが符号化される。
動きベクトル予測では、空間MVP候補、時間MVP候補、および履歴ベースMVP候補という3つのタイプのMVP候補が考慮される。空間MVP候補の導出の場合、図3に示されているように、5つの異なる位置に配置された各ブロックの動きベクトルに基づいて、最大2つのMVP候補が導出される。時間MVP候補の導出の場合、同一場所に配置された2つの異なる位置に基づいて導出された2つの候補から、最大1つのMVP候補が選択される。MVP候補の数が2より小さい場合、追加のゼロ動きベクトル候補がリストに追加されて、MVP候補の数を2にする。
空間動きベクトル予測子候補
空間動きベクトル予測子候補の導出では、図3に示されているように配置されたブロックから導出された最大5つの潜在候補から、最大2つの候補が選択されてよい。それらのブロック位置は、マージモードの場合にMVP候補を導出するために使用される位置と同じである。A、Aを含む現在のブロックの左側に配置されたブロックの場合、そのMV確認順序は、A、A、およびスケーリングされたA、スケーリングされたAと定義される。ここで、スケーリングされたA、スケーリングされたAは、それぞれブロックA、AのスケーリングされたMVを指す。B、B、Bを含む現在のブロックの上方に配置されたブロックの場合、そのMV確認順序は、B、B、B、スケーリングされたB、スケーリングされたB、スケーリングされたBと定義される。各々の側に対して、動きベクトル候補を導出する際に確認されるべき4つの事例が存在し、2つの事例では、空間MVスケーリングが必要とされず、他の2つの事例では、空間MVスケーリングが必要とされる。4つの異なる事例は、次のように要約される。
空間MVスケーリングが必要とされない事例
(1)同じ参照ピクチャリストおよび同じ参照ピクチャインデックス(同じPOC)を有するMV。
(2)異なる参照ピクチャリストを有するが、同じ参照ピクチャ(同じPOC)を有するMV。
空間MVスケーリングが必要とされる事例
(3)同じ参照ピクチャリストを有するが、異なる参照ピクチャ(異なるPOC)を有するMV。
(4)異なる参照ピクチャリストおよび異なる参照ピクチャ(異なるPOC)を有するMV。
まず、空間MVスケーリングなしの事例(上記の事例1および2)が確認され、それに続いて空間MVスケーリングが必要とされる事例(上記の事例3および4)が確認される。より具体的には、MVに対して、確認順序は以下のステップの通りである。
事例1→A事例2→A事例1→A事例2→A事例3→A事例4→A事例3→A事例4を順次確認することによって、ブロックA、Aから最大1つのMV候補が導出される。
事例1→B事例2→B事例1→B事例2→B事例1→B事例2を順次確認することによって、ブロックB、B、Bから最大1つのMV候補が導出される。
ステップ1でMV候補が導出されない場合、B事例3→B事例4→B事例3→B事例4→B事例3→B事例4を順次確認することによって、ブロックB、B、Bから最大1つのMV候補が導出される。
MVP候補の数が2より小さい場合、追加のゼロ動きベクトル候補がリストに追加されて、MVP候補の数を2にする。
参照ピクチャリストにかかわらず、近隣ブロックの参照ピクチャのPOCが現在のブロックのPOCとは異なる場合、空間MVスケーリングが必要とされる。上記のステップで見て取れるように、現在のブロックの左側でブロックのMVが利用可能でない(例えば、ブロックが利用可能でない、またはそれらすべてのブロックがイントラ符号化されている)場合、現在のブロックの上側のブロックの動きベクトルに対して、MVスケーリングが可能にされる。それ以外の場合、上方ブロックの動きベクトルに対する空間MVスケーリングは可能にされない。その結果、MV予測候補導出プロセス全体において、最大1つの空間MVスケーリングのみが必要とされる。
空間MVスケーリングプロセスでは、時間MVスケーリングと同様に、図4(後述)に示されているように、近隣ブロックの動きベクトルがスケーリングされる。
図4は、空間動きベクトル候補に対する動きベクトルのスケーリングの図を示す。この図は、410neigh_ref、420curr_ref、430curr_pic、440neighbor_PU、450curr_PU、460tb、および470tdを含む。410neigh_refは、動きベクトルのスケーリングに使用される近隣参照である。420curr_refは、動きベクトルのスケーリングに使用される現在の参照である。430は、動きベクトルのスケーリングに使用される現在のピクチャである。440neighbor_PUは、動きベクトルのスケーリングに使用される近隣予測ユニットである。450curr_PUは、動きベクトルのスケーリングに使用される現在の予測ユニットである。460tbは、現在のピクチャの参照ピクチャと現在のピクチャとの間のPOC差である。470tdは、近隣参照ピクチャと現在のピクチャとの間のPOC差である。
時間動きベクトル予測子候補
時間MVP候補の導出では、参照ピクチャリストにおいて前に符号化されたピクチャ内の配列ブロックのMVから、スケーリングされた動きベクトルが導出される。以下の説明では、時間MVP候補を導出するための配列ブロックを含むピクチャが、「配列ピクチャ」と呼ばれる。時間動き候補を導出するために、まず、スライス・ヘッダ内の明示的なフラグ(collocated_from_L0_flag)がデコーダへ送られて、配列ピクチャがリスト0から選択されたか、それともリスト1から選択されたかを示す。配列参照インデックス(collocated_ref_idx)がさらに送られて、そのリスト内のどのピクチャが時間動きベクトル予測子候補を導出するための配列ピクチャとして選択されたかを示す。時間MVP候補のL0およびL1のMVは、表1に示されているように、事前定義された順序に従って、独立して導出される。
表1で、CollocatedPictureListは、どの予測リストから配列ピクチャが配置されているかを示すために信号送信される構文である。図5(後述)に点線によって示されているように、時間MVP候補に対するスケーリングされた動きベクトルが取得される。このスケーリングされた動きベクトルは、POC距離tbおよびtdを使用して、同一場所に配置されたブロックの選択された動きベクトルからスケーリングされており、ここでtbは、現在のピクチャの参照ピクチャと現在のピクチャとの間のPOC差であると定義され、tdは、同一場所に配置されたピクチャの参照ピクチャと同一場所に配置されたピクチャとの間のPOC差であると定義される。時間マージ候補の参照ピクチャインデックスは、ゼロに等しく設定される。スケーリングプロセスの実際的な実現は、HEVC仕様に記載されている。B-スライスの場合、参照ピクチャリスト0用の動きベクトルおよび参照ピクチャリスト1用の動きベクトルという2つの動きベクトルが取得され、これらが組み合わされて、双方向予測マージ候補を作成する。
Figure 0007198949000001
図5は、時間マージ候補に対する動きベクトルのスケーリングの図を示す。この図は、510neigh_ref、520curr_ref、530curr_pic、540col_pic、550curr_PU、560col_PU、570tb、および580tdを含む。510neigh_refは、動きベクトルのスケーリングに使用される近隣参照ピクチャである。520curr_refは、動きベクトルのスケーリングに使用される現在の参照である。530curr_picは、動きベクトルのスケーリングに使用される現在のピクチャである。540col_picは、動きベクトルのスケーリングに使用される配列ピクチャである。550curr_PUは、動きベクトルのスケーリングに使用される現在の予測ユニットである。560col_PUは、動きベクトルのスケーリングに使用される配列予測ユニットである。570tbは、現在のピクチャの参照ピクチャと現在のピクチャとの間のPOC差である。580tdは、配列ピクチャの参照ピクチャと配列ピクチャとの間のPOC差である。
配列ピクチャにおいて、図3に示されているように、時間候補を導出するための配列ブロックが、T0とT1との間で選択される。位置T0のブロックが利用可能でない場合、もしくはイントラ符号化されている場合、または現在のCTUの外側にある場合、位置T1が使用される。それ以外の場合、時間マージ候補の導出では位置T0が使用される。
履歴ベースのマージ候補の導出
履歴ベースMVP(HMVP)は、空間MVPおよびTMVP後に、マージ・リストに追加される。この方法では、表に記憶されている、前に符号化されたブロックの動き情報が、現在のブロックに対するMVPとして使用されてよい。そのようなMVPはHMVPと呼ばれる。符号化/復号プロセス中、複数のHMVP候補を含む表が維持される。新しいCTU列に遭遇したとき、この表はリセットされる(空にされる)。CUがサブブロック以外のインター予測モードで符号化されているときはいつでも、CUの関連動き情報が、表の最後のエントリに新しいHMVP候補として追加される。
動きベクトル予測のための空間動きベクトルのスケーリング
MVPの現在の設計では、最大1つのスケーリングされた空間MV候補が導出されてよい。MVスケーリングプロセスは、その複雑さの点から些細なものではないため、新しい方式は、MVPを導出する際に空間MVスケーリングを使用する可能性をさらに低減させるように設計される。
動きベクトル予測の改善
本開示では、複雑さまたは符号化効率の点から動きベクトル予測を改善するために、いくつかの方法が提案される。提案される方法は、独立してまたは組み合わせて適用されてよいことに留意されたい。
図6は、本開示によるビデオ信号を復号する方法を示す。この方法は、例えば、デコーダに適用されてよい。
ステップ610で、デコーダは、ビデオ信号からビデオブロックを取得することができる。
ステップ612で、デコーダは、ビデオブロックに基づいて、空間近隣ブロックを取得することができる。例えば、空間近隣ブロックは、複数の左方空間近隣ブロックおよび複数の上方空間近隣ブロックを含むことができる。
ステップ614で、デコーダは、複数の左方空間近隣ブロックに基づいて、最大1つのスケーリングされていない左方動きベクトル予測子(MVP)を取得することができる。
ステップ616で、デコーダは、複数の上方空間近隣ブロックに基づいて、最大1つのスケーリングされていない上方MVPを取得することができる。
ステップ618で、デコーダは、空間近隣ブロックから導出されたスケーリングされたMVPを選択する可能性を低減させることによって、ビデオブロック、複数の左方空間近隣ブロック、複数の上方空間近隣ブロックに基づいて、MVP候補リストを導出することができる。例えば、MVP候補リストは、最大1つのスケーリングされていない左方MVPおよび最大1つのスケーリングされていない上方MVPを含むことができる。
ステップ620で、デコーダは、MVP候補リストに基づいて、最良MVPを受け取ることができ、エンコーダは、MVP候補リストから最良MVPを選択する。一例では、最良MVPは、コスト値に基づいて、エンコーダによって選択されてよい。例えば、いくつかのエンコーダ設計の場合、エンコーダは、各MVP候補を使用して、選択されたMVPと、動き推定によって導出されたMVとの間のMV差を導出することができる。各MVP候補に対して、選択されたMVPの例えばMV差およびMVPインデックスのビットを使用して、コスト値が計算される。最良のコスト値(例えば、最小コスト)を有するMVP候補が、最終的なMVPとして選択され、そのMVPインデックスがビットストリームに符号化される。
ステップ622で、デコーダは、最良MVPに基づいて、ビデオブロックの予測信号を取得することができる。
第1の態様によれば、スケーリングされたMVPを選択/導出する可能性を低減させるために、MVP候補リストを構築するとき、スケーリングされた空間MVPを後の位置に入れることが提案される。空間近隣ブロックからスケーリングされたMVPを導出するための条件は、現在のVVCのものと同じであっても異なってもよい。
一例では、空間近隣ブロックからスケーリングされたMVPを導出するための条件は、現在のVVCのものと同じままで維持される。MVP候補リストは、1つまたは複数のプロセッサを使用して以下の動作を実行することによって構築される。
1)左方空間近隣ブロックから最大1つのスケーリングされていないMVPを導出する(A0→A1)。
2)上方空間近隣ブロックから最大1つのスケーリングされていないMVPを導出する(B0→B1→B2)。
3)条件付きプルーニング。
4)時間配列ブロックから最大1つのMVPを導出する(T0→T1)。
5)FIFO表から最大2つの履歴ベースMVPを導出する。
6)左方近隣ブロックからのスケーリングされていないMVPが利用可能でない場合、左方空間近隣ブロックから最大1つのスケーリングされたMVPを導出する(A0→A1)。
7)近隣ブロックAおよびAがいずれも利用可能でない、またはイントラ・モードで符号化されている場合、上方空間近隣ブロックから最大1つのスケーリングされたMVPを導出する(B0→B1→B2)。
8)最大2つのゼロMVを導出する。
別の例では、空間近隣ブロックからスケーリングされたMVPを導出するための条件が除去される。MVP候補リストは、1つまたは複数のプロセッサを使用して以下の動作を実行することによって構築される。
1)左方空間近隣ブロックから最大1つのスケーリングされていないMVPを導出する(A0→A1)。
2)上方空間近隣ブロックから最大1つのスケーリングされていないMVPを導出する(B0→B1→B2)。
3)条件付きプルーニング。
4)時間配列ブロックから最大1つのMVPを導出する(T0→T1)。
5)FIFO表から最大2つの履歴ベースMVPを導出する。
6)左方空間近隣ブロックから最大1つのスケーリングされたMVPを導出する(A0→A1)。
7)上方空間近隣ブロックから最大1つのスケーリングされたMVPを導出する(B0→B1→B2)。
8)最大2つのゼロMVを導出する。
第3の例では、空間近隣ブロックからスケーリングされたMVPを導出するための条件が、現在のVVCのものから修正される。MVP候補リストは、1つまたは複数のプロセッサを使用して以下の動作を実行することによって構築される。
1)左方空間近隣ブロックから最大1つのスケーリングされていないMVPを導出する(A0→A1)。
2)上方空間近隣ブロックから最大1つのスケーリングされていないMVPを導出する(B0→B1→B2)。
3)条件付きプルーニング。
4)時間配列ブロックから最大1つのMVPを導出する(T0→T1)。
5)FIFO表から最大2つの履歴ベースMVPを導出する。
6)左方空間近隣ブロックから最大1つのスケーリングされたMVPを導出する(A0→A1)。
7)近隣ブロックAおよびAがいずれも利用可能でない、またはイントラ・モードで符号化されている場合、上方空間近隣ブロックから最大1つのスケーリングされたMVPを導出する(B0→B1→B2)。
8)最大2つのゼロMVを導出する。
第4の例では、空間近隣ブロックからスケーリングされたMVPを導出するための条件が、現在のVVCのものから修正される。MVP候補リストは、1つまたは複数のプロセッサを使用して以下の動作を実行することによって構築される。
1)左方空間近隣ブロックから最大1つのスケーリングされていないMVPを導出する(A0→A1)。
2)上方空間近隣ブロックから最大1つのスケーリングされていないMVPを導出する(B0→B1→B2)。
3)条件付きプルーニング。
4)時間配列ブロックから最大1つのMVPを導出する(T0→T1)。
5)FIFO表から最大2つの履歴ベースMVPを導出する。
6)左方空間近隣ブロックA0から最大1つのスケーリングされたMVPを導出する。
7)左方空間近隣ブロックA1から最大1つのスケーリングされたMVPを導出する。
8)上方空間近隣ブロックB0から最大1つのスケーリングされたMVPを導出する。
9)上方空間近隣ブロックB1から最大1つのスケーリングされたMVPを導出する。
10)上方空間近隣ブロックB2から最大1つのスケーリングされたMVPを導出する。
11)最大2つのゼロMVを導出する。
第2の態様によれば、スケーリングされたMVPを選択/導出する可能性を低減させるために、MVP候補リストを構築するとき、時間MVPおよびスケーリングされた空間MVPの両方を後の位置に入れることが提案される。空間近隣ブロックからスケーリングされたMVPを導出するための条件は、現在のVVCのものと同じであっても異なってもよい。
一例では、空間近隣ブロックからスケーリングされたMVPを導出するための条件は、現在のVVCのものと同じままで維持される。MVP候補リストは、1つまたは複数のプロセッサを使用して以下の動作を実行することによって構築される。
1)左方空間近隣ブロックから最大1つのスケーリングされていないMVPを導出する(A0→A1)。
2)上方空間近隣ブロックから最大1つのスケーリングされていないMVPを導出する(B0→B1→B2)。
3)条件付きプルーニング。
4)FIFO表から最大2つの履歴ベースMVPを導出する。
5)時間配列ブロックから最大1つのMVPを導出する(T0→T1)。
6)左方近隣ブロックからのスケーリングされていないMVPが利用可能でない場合、左方空間近隣ブロックから最大1つのスケーリングされたMVPを導出する(A0→A1)。
7)近隣ブロックAおよびAがいずれも利用可能でない、またはイントラ・モードで符号化されている場合、上方空間近隣ブロックから最大1つのスケーリングされたMVPを導出する(B0→B1→B2)。
8)最大2つのゼロMVを導出する。
別の例では、空間近隣ブロックからスケーリングされたMVPを導出するための条件が除去される。MVP候補リストは、1つまたは複数のプロセッサを使用して以下の動作を実行することによって構築される。
1)左方空間近隣ブロックから最大1つのスケーリングされていないMVPを導出する(A0→A1)。
2)上方空間近隣ブロックから最大1つのスケーリングされていないMVPを導出する(B0→B1→B2)。
3)条件付きプルーニング。
4)FIFO表から最大2つの履歴ベースMVPを導出する。
5)時間配列ブロックから最大1つのMVPを導出する(T0→T1)。
6)左方空間近隣ブロックから最大1つのスケーリングされたMVPを導出する(A0→A1)。
7)上方空間近隣ブロックから最大1つのスケーリングされたMVPを導出する(B0→B1→B2)。
8)最大2つのゼロMVを導出する。
第3の例では、空間近隣ブロックからスケーリングされたMVPを導出するための条件が、現在のVVCのものから修正される。MVP候補リストは、1つまたは複数のプロセッサを使用して以下の動作を実行することによって構築される。
1)左方空間近隣ブロックから最大1つのスケーリングされていないMVPを導出する(A0→A1)。
2)上方空間近隣ブロックから最大1つのスケーリングされていないMVPを導出する(B0→B1→B2)。
3)条件付きプルーニング。
4)FIFO表から最大2つの履歴ベースMVPを導出する。
5)時間配列ブロックから最大1つのMVPを導出する(T0→T1)。
6)左方空間近隣ブロックから最大1つのスケーリングされたMVPを導出する(A0→A1)。
7)近隣ブロックAおよびAがいずれも利用可能でない、またはイントラ・モードで符号化されている場合、上方空間近隣ブロックから最大1つのスケーリングされたMVPを導出する(B0→B1→B2)。
8)最大2つのゼロMVを導出する。
第4の例では、空間近隣ブロックからスケーリングされたMVPを導出するための条件が、現在のVVCのものから修正される。MVP候補リストは、1つまたは複数のプロセッサを使用して以下の動作を実行することによって構築される。
1)左方空間近隣ブロックから最大1つのスケーリングされていないMVPを導出する(A0→A1)。
2)上方空間近隣ブロックから最大1つのスケーリングされていないMVPを導出する(B0→B1→B2)。
3)条件付きプルーニング。
4)FIFO表から最大2つの履歴ベースMVPを導出する。
5)時間配列ブロックから最大1つのMVPを導出する(T0→T1)。
6)左方空間近隣ブロックA0から最大1つのスケーリングされたMVPを導出する。
7)左方空間近隣ブロックA1から最大1つのスケーリングされたMVPを導出する。
8)上方空間近隣ブロックB0から最大1つのスケーリングされたMVPを導出する。
9)上方空間近隣ブロックB1から最大1つのスケーリングされたMVPを導出する。
10)上方空間近隣ブロックB2から最大1つのスケーリングされたMVPを導出する。
11)最大2つのゼロMVを導出する。
第3の態様によれば、スケーリングされたMVPを選択/導出する可能性を低減させるために、スケーリングされた空間MVP候補をMVP候補リストから除外することが提案される。
図7は、本開示によるMVP候補リストを導出する方法を示す。この方法は、例えば、デコーダに適用されてよい。
ステップ710で、デコーダは、空間近隣ブロックから2つのMVP同一候補が導出されたとき、2つのMVP同一候補のうちの一方をMVP候補リストからプルーニングすることができる。
ステップ712で、デコーダは、時間配列ブロックから最大1つのMVPを取得することができる。時間配列ブロックは、配列ブロックT0および配列ブロックT1を含む。
ステップ714で、デコーダは、FIFO表から最大2つの履歴ベースMVPを取得することができる。FIFO表は、前に符号化されたブロックを含む。
ステップ716で、デコーダは、0に等しい最大2つのMVを取得することができる。
一例では、MVP候補リストは、1つまたは複数のプロセッサを使用して以下の動作を実行することによって構築される。
1)左方空間近隣ブロックから最大1つのスケーリングされていないMVPを導出する(A0→A1)。
2)上方空間近隣ブロックから最大1つのスケーリングされていないMVPを導出する(B0→B1→B2)。
3)条件付きプルーニング。
4)時間配列ブロックから最大1つのMVPを導出する(T0→T1)。
5)FIFO表から最大2つの履歴ベースMVPを導出する。
6)最大2つのゼロMVを導出する。
別の例では、MVP候補リストは、1つまたは複数のプロセッサを使用して以下の動作を実行することによって構築される。
1)左方空間近隣ブロックから最大1つのスケーリングされていないMVPを導出する(A0→A1)。
2)上方空間近隣ブロックから最大1つのスケーリングされていないMVPを導出する(B0→B1→B2)。
3)条件付きプルーニング。
4)FIFO表から最大2つの履歴ベースMVPを導出する。
5)時間配列ブロックから最大1つのMVPを導出する(T0→T1)。
6)最大2つのゼロMVを導出する。
第4の態様によれば、スケーリングされたMVPを選択/導出する可能性を低減させるために、スケーリングされた空間MVP候補およびTMVPの両方をMVP候補リストから除外することが提案される。
一例では、MVP候補リストは、1つまたは複数のプロセッサを使用して以下の動作を実行することによって構築される。
1)左方空間近隣ブロックから最大1つのスケーリングされていないMVPを導出する(A0→A1)。
2)上方空間近隣ブロックから最大1つのスケーリングされていないMVPを導出する(B0→B1→B2)。
3)条件付きプルーニング。
4)FIFO表から最大2つの履歴ベースMVPを導出する。
5)最大2つのゼロMVを導出する。
上記に示されているこれらすべての態様および/または例において、MVP候補リストが一杯になったとき、導出プロセスが終了することに留意されたい。
図8は、ユーザ・インターフェース860に結合されたコンピューティング環境810を示す。コンピューティング環境810は、データ処理サーバの一部とすることができる。コンピューティング環境810は、プロセッサ820、メモリ840、およびI/Oインターフェース850を含む。
プロセッサ820は、典型的に、表示、データ取得、データ通信、および画像処理に関連する動作など、コンピューティング環境810の全体的な動作を制御する。プロセッサ820は、前述の方法のステップのすべてまたはいくつかを実行するための命令を実行するために、1つまたは複数のプロセッサを含むことができる。さらに、プロセッサ820は、プロセッサ820と他の構成要素との間の相互作用を容易にする1つまたは複数のモジュールを含むことができる。プロセッサは、中央演算処理装置(CPU)、マイクロプロセッサ、単一チップ機械、GPUなどとすることができる。
メモリ840は、コンピューティング環境810の動作に対応するために、様々なタイプのデータを記憶するように構成される。メモリ840は、所定のソフトウェア842を含むことができる。そのようなデータの例は、コンピューティング環境810、ビデオデータセット、画像データなどで動作されるあらゆるアプリケーションまたは方法向けの命令を含む。メモリ840は、スタティック・ランダム・アクセス・メモリ(SRAM)、電気的に消去可能なプログラマブル読取り専用メモリ(EEPROM)、消去可能なプログラマブル読取り専用メモリ(EPROM)、プログラマブル読取り専用メモリ(PROM)、読取り専用メモリ(ROM)、磁気メモリ、フラッシュメモリ、磁気または光ディスクなど、任意のタイプの揮発性もしくは不揮発性のメモリデバイス、またはそれらの組合せを使用することによって実施されてよい。
I/Oインターフェース850は、プロセッサ820と、キーボード、クリックホイール、ボタンなどの周辺インターフェースモジュールとの間に、インターフェースを提供する。ボタンは、それだけに限定されるものではないが、ホームボタン、走査開始ボタン、および走査終了ボタンを含むことができる。I/Oインターフェース850は、エンコーダおよびデコーダに結合されてよい。
いくつかの実施形態では、メモリ840に含まれるものなど、コンピューティング環境810内のプロセッサ820によって実行可能である、前述の方法を実行する複数のプログラムを備える非一時的コンピュータ可読記憶媒体も提供される。例えば、非一時的コンピュータ可読記憶媒体は、ROM、RAM、CD-ROM、磁気テープ、フロッピーディスク、光データ記憶デバイスなどとすることができる。
非一時的コンピュータ可読記憶媒体には、1つまたは複数のプロセッサを有するコンピューティングデバイスによる実行のための複数のプログラムが記憶されており、複数のプログラムは、1つまたは複数のプロセッサによって実行されるとき、コンピューティングデバイスに、動き予測のための上述された方法を実行させる。
いくつかの実施形態では、コンピューティング環境810は、上記の方法を実行するための1つまたは複数の特定用途向け集積回路(ASIC)、デジタル信号プロセッサ(DSP)、デジタル信号処理デバイス(DSPD)、プログラマブル論理デバイス(PLD)、フィールド・プログラマブル・ゲート・アレイ(FPGA)、グラフィカル処理ユニット(GPU)、コントローラ、マイクロコントローラ、マイクロプロセッサ、または他の電子構成要素によって実施されてよい。
本開示の説明は、例示の目的で提示されており、網羅的であること、または本開示に限定されることが意図されるものではない。多くの修正形態、変形形態、および代替の実装形態が、上記の説明および添付の図面に提示される教示の利益を有する当業者には明らかである。
これらの例は、本開示の原理を説明し、当業者であれば、様々な実装形態の開示を理解し、企図される特定の用途に適した様々な修正によって、根本的な原理および様々な実装を最善に利用することが可能になるように選択および記載されている。したがって、本開示の範囲は、開示される実装形態の特有の例に限定されないこと、および修正形態および他の実装形態も本開示の範囲に包含されることが意図されることを理解されたい。

Claims (20)

  1. ビデオ号化方法であって、
    ビデオ信号から符号化ブロックを取得することと、
    前記符号化ブロックに基づいて、複数の空間近隣ブロックを取得することであって、前記複数の空間近隣ブロックが、複数の左方空間近隣ブロックおよび複数の上方空間近隣ブロックを含むことと、
    前記複数の左方空間近隣ブロックに基づいて、最大1つのスケーリングされていない左方動きベクトル予測子(MVP)を取得することと、
    前記複数の上方空間近隣ブロックに基づいて、最大1つのスケーリングされていない上方MVPを取得することと、
    空間MVP候補の導出処理において、動きベクトル導出のための全てのシナリオにおいて動きベクトルのスケーリングを行わないことによって前記符号化ブロック、前記複数の左方空間近隣ブロック、および前記複数の上方空間近隣ブロックに基づいて、MVP候補リストを導出することであって、前記MVP候補リストが、前記最大1つのスケーリングされていない左方MVPおよび前記最大1つのスケーリングされていない上方MVPを含むことと、
    前記MVP候補リストの中でMVPを示すインデックスを受け取ることと、
    前記インデックスによって示される前記MVPに基づいて、前記符号化ブロックの予測信号を取得することと、を含む方法。
  2. 前記MVP候補リストを導出することが、
    前記複数の空間近隣ブロックから2つの同一MVP候補が導出されたとき、前記2つの同一MVP候補のうちの一方を前記MVP候補リストからプルーニングすることと、
    時間配列ブロックから最大1つのMVPを取得することであって、前記時間配列ブロックが、右下の配列ブロックT0および中央の配列ブロックT1を含むことと、
    先入れ先出し(FIFO)表から最大2つの履歴ベースMVPを取得することと、
    0に等しい最大2つのMVを取得することと、を含む、請求項1に記載の方法。
  3. 前記複数の空間近隣ブロックは、左下ブロック、左ブロック、右上ブロック、上ブロックおよび左上ブロックを含む、請求項1に記載の方法。
  4. 時間動きベクトル予測に使用される配列ピクチャが第1の参照ピクチャリストまたは第2の参照ピクチャリストのどちらから導出されているかを示す明示的なフラグを取得することをさらに含む、請求項2に記載の方法。
  5. 前記時間動きベクトル予測に使用される前記配列ピクチャの参照インデックスを特定する配列参照インデックスを取得することをさらに含む、請求項4に記載の方法。
  6. 時間配列ブロックから最大1つのMVPを取得することは、
    前記時間配列ブロックから導出されたMVPで動きベクトルスケーリングを実行することを含む、請求項2に記載の方法。
  7. 前記動きベクトルスケーリングは、現在のピクチャの参照ピクチャと前記現在のピクチャとの間のピクチャ順序カウント(POC)差、および配列ピクチャの参照ピクチャと前記配列ピクチャとの間のPOC差に基づいて実行される、請求項6に記載の方法。
  8. コンピューティングデバイスであって、
    1つまたは複数のプロセッサと、
    前記1つまたは複数のプロセッサによって実行可能な命令を記憶する非一時的コンピュータ可読記憶媒体と、を備え、前記1つまたは複数のプロセッサが、
    ビデオ信号から符号化ブロックを取得することと、
    前記符号化ブロックに基づいて、複数の空間近隣ブロックを取得することであって、前記複数の空間近隣ブロックが、複数の左方空間近隣ブロックおよび複数の上方空間近隣ブロックを含むことと、
    前記複数の左方空間近隣ブロックに基づいて、最大1つのスケーリングされていない左方動きベクトル予測子(MVP)を取得することと、
    前記複数の上方空間近隣ブロックに基づいて、最大1つのスケーリングされていない上方MVPを取得することと、
    空間MVP候補の導出処理において、動きベクトル導出のための全てのシナリオにおいて動きベクトルのスケーリングを行わないことによって前記符号化ブロック、前記複数の左方空間近隣ブロック、および前記複数の上方空間近隣ブロックに基づいて、MVP候補リストを導出することであって、前記MVP候補リストが、前記最大1つのスケーリングされていない左方MVPおよび前記最大1つのスケーリングされていない上方MVPを含むことと、
    前記MVP候補リストの中でMVP示すインデックスを受け取ることと、
    前記インデックスによって示される前記MVPに基づいて、前記符号化ブロックの予測信号を取得することと、を行うように構成される、コンピューティングデバイス。
  9. 前記MVP候補リストを導出するように構成された前記1つまたは複数のプロセッサが、
    前記複数の空間近隣ブロックから2つの同一MVP候補が導出されたとき、前記2つの同一MVP候補のうちの一方を前記MVP候補リストからプルーニングすることと、
    時間配列ブロックから最大1つのMVPを取得することであって、前記時間配列ブロックが、右下の配列ブロックT0および中央の配列ブロックT1を含むことと、
    先入れ先出し(FIFO)表から最大2つの履歴ベースMVPを取得することと、
    0に等しい最大2つのMVを取得することと、を行うようにさらに構成される、請求項8に記載のコンピューティングデバイス。
  10. 前記複数の空間近隣ブロックは、左下ブロック、左ブロック、右上ブロック、上ブロックおよび左上ブロックを含む、請求項8に記載のコンピューティングデバイス。
  11. 前記1つまたは複数のプロセッサが、
    時間動きベクトル予測に使用される配列ピクチャが第1の参照ピクチャリストまたは第2の参照ピクチャリストのどちらから導出されているかを示す明示的なフラグを取得するように構成される、請求項9に記載のコンピューティングデバイス。
  12. 前記1つまたは複数のプロセッサが、
    前記時間動きベクトル予測に使用される前記配列ピクチャの参照インデックスを特定する配列参照インデックスを取得するように構成される、請求項11に記載のコンピューティングデバイス。
  13. 前記1つまたは複数のプロセッサが、
    前記時間配列ブロックから導出されたMVPで動きベクトルスケーリングを実行することによって、時間配列ブロックから最大1つのMVPを取得するように構成される、請求項9に記載のコンピューティングデバイス。
  14. 前記動きベクトルスケーリングは、現在のピクチャの参照ピクチャと前記現在のピクチャとの間のピクチャ順序カウント(POC)差、および配列ピクチャの参照ピクチャと前記配列ピクチャとの間のPOC差に基づいて実行される、請求項13に記載のコンピューティングデバイス。
  15. 1つまたは複数のプロセッサを有するコンピューティングデバイスによる実行のための複数のプログラムを記憶する非一時的コンピュータ可読記憶媒体であって、前記複数のプログラムが、前記1つまたは複数のプロセッサによって実行されるとき、前記コンピューティングデバイスに、
    ビデオ信号から符号化ブロックを取得することと、
    前記符号化ブロックに基づいて、複数の空間近隣ブロックを取得することであって、前記複数の空間近隣ブロックが、複数の左方空間近隣ブロックおよび複数の上方空間近隣ブロックを含むことと、
    前記複数の左方空間近隣ブロックに基づいて、最大1つのスケーリングされていない左方動きベクトル予測子(MVP)を取得することと、
    前記複数の上方空間近隣ブロックに基づいて、最大1つのスケーリングされていない上方MVPを取得することと、
    空間MVP候補の導出処理において、動きベクトル導出のための全てのシナリオにおいて動きベクトルのスケーリングを行わないことによって前記符号化ブロック、前記複数の左方空間近隣ブロック、および前記複数の上方空間近隣ブロックに基づいて、MVP候補リストを導出することであって、前記MVP候補リストが、前記最大1つのスケーリングされていない左方MVPおよび前記最大1つのスケーリングされていない上方MVPを含むことと、
    前記MVP候補リストの中でMVPを示すインデックスを受け取ることと、
    前記インデックスによって示される前記MVPに基づいて、前記符号化ブロックの予測信号を取得することと、を含む動作を実行させる、非一時的コンピュータ可読記憶媒体。
  16. 前記複数のプログラムが、前記コンピューティングデバイスに、
    前記複数の空間近隣ブロックから2つの同一MVP候補が導出されたとき、前記2つの同一MVP候補のうちの一方を前記MVP候補リストからプルーニングすることと、
    時間配列ブロックから最大1つのMVPを取得することであって、前記時間配列ブロックが、右下の配列ブロックT0および中央の配列ブロックT1を含むことと、
    先入れ先出し(FIFO表)から最大2つの履歴ベースMVPを取得することと、
    0に等しい最大2つのMVを取得することと、を含む動作をさらに実行させる、請求項15に記載の非一時的コンピュータ可読記憶媒体。
  17. 前記複数の空間近隣ブロックは、左下ブロック、左ブロック、右上ブロック、上ブロックおよび左上ブロックを含む、請求項15に記載の非一時的コンピュータ可読記憶媒体。
  18. 前記動作は、時間動きベクトル予測に使用される配列ピクチャが第1の参照ピクチャリストまたは第2の参照ピクチャリストのどちらから導出されているかを示す明示的なフラグを取得することをさらに含む、請求項16に記載の非一時的コンピュータ可読記憶媒体。
  19. 前記動作は、前記時間動きベクトル予測に使用される前記配列ピクチャの参照インデックスを特定する配列参照インデックスを取得することをさらに含む、請求項18に記載の非一時的コンピュータ可読記憶媒体。
  20. 1つまたは複数のプロセッサによって実行されると、前記1つまたは複数のプロセッサに、請求項1から7のいずれかの方法を実行させる複数の命令を含む、コンピュータプログラ
JP2021572067A 2019-06-13 2020-06-13 ビデオ符号化のための動きベクトル予測 Active JP7198949B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2022201577A JP2023030061A (ja) 2019-06-13 2022-12-16 ビデオ符号化のための動きベクトル予測
JP2024001436A JP2024038295A (ja) 2019-06-13 2024-01-09 ビデオ符号化のための動きベクトル予測

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962861315P 2019-06-13 2019-06-13
US62/861,315 2019-06-13
PCT/US2020/037649 WO2020252422A1 (en) 2019-06-13 2020-06-13 Motion vector prediction for video coding

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2022201577A Division JP2023030061A (ja) 2019-06-13 2022-12-16 ビデオ符号化のための動きベクトル予測

Publications (2)

Publication Number Publication Date
JP2022527673A JP2022527673A (ja) 2022-06-02
JP7198949B2 true JP7198949B2 (ja) 2023-01-04

Family

ID=73782260

Family Applications (3)

Application Number Title Priority Date Filing Date
JP2021572067A Active JP7198949B2 (ja) 2019-06-13 2020-06-13 ビデオ符号化のための動きベクトル予測
JP2022201577A Pending JP2023030061A (ja) 2019-06-13 2022-12-16 ビデオ符号化のための動きベクトル予測
JP2024001436A Pending JP2024038295A (ja) 2019-06-13 2024-01-09 ビデオ符号化のための動きベクトル予測

Family Applications After (2)

Application Number Title Priority Date Filing Date
JP2022201577A Pending JP2023030061A (ja) 2019-06-13 2022-12-16 ビデオ符号化のための動きベクトル予測
JP2024001436A Pending JP2024038295A (ja) 2019-06-13 2024-01-09 ビデオ符号化のための動きベクトル予測

Country Status (7)

Country Link
US (2) US11917189B2 (ja)
EP (1) EP3963891A4 (ja)
JP (3) JP7198949B2 (ja)
KR (2) KR102437696B1 (ja)
CN (2) CN113994700A (ja)
MX (1) MX2021014880A (ja)
WO (1) WO2020252422A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023030061A (ja) * 2019-06-13 2023-03-07 ベイジン、ターチア、インターネット、インフォメーション、テクノロジー、カンパニー、リミテッド ビデオ符号化のための動きベクトル予測

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8755437B2 (en) * 2011-03-17 2014-06-17 Mediatek Inc. Method and apparatus for derivation of spatial motion vector candidate and motion vector prediction candidate
PT2690870T (pt) * 2011-03-21 2020-02-10 Lg Electronics Inc Processo de selecção de preditor de vectores de movimento e dispositivo que o utiliza
EP4164224B1 (en) * 2011-06-28 2024-04-10 LG Electronics Inc. Video decoding apparatus and video encoding apparatus
KR20130030181A (ko) 2011-09-16 2013-03-26 한국전자통신연구원 움직임 벡터 예측기를 이용한 움직임 벡터 부호화/복호화 방법 및 장치
GB2509881B (en) * 2011-11-08 2018-09-12 Kt Corp A method of decoding a video signal using an AMVP mode
JP5613846B2 (ja) * 2012-05-09 2014-10-29 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 動きベクトル予測方法及び動きベクトル予測装置
BR112014033038A2 (pt) * 2012-07-02 2017-06-27 Samsung Electronics Co Ltd método de predição de vetor de movimento para inter predição, e aparelho de predição de vetor de movimento para inter predição
US10432928B2 (en) * 2014-03-21 2019-10-01 Qualcomm Incorporated Using a current picture as a reference for video coding
US11477477B2 (en) * 2015-01-26 2022-10-18 Qualcomm Incorporated Sub-prediction unit based advanced temporal motion vector prediction
WO2016165069A1 (en) * 2015-04-14 2016-10-20 Mediatek Singapore Pte. Ltd. Advanced temporal motion vector prediction in video coding
WO2017039117A1 (ko) * 2015-08-30 2017-03-09 엘지전자(주) 영상의 부호화/복호화 방법 및 이를 위한 장치
CN108293131B (zh) * 2015-11-20 2021-08-31 联发科技股份有限公司 基于优先级运动矢量预测子推导的方法及装置
US20190028731A1 (en) * 2016-01-07 2019-01-24 Mediatek Inc. Method and apparatus for affine inter prediction for video coding system
US10560718B2 (en) * 2016-05-13 2020-02-11 Qualcomm Incorporated Merge candidates for motion vector prediction for video coding
US10298951B2 (en) * 2017-04-06 2019-05-21 Mediatek Inc. Method and apparatus of motion vector prediction
WO2018233661A1 (en) * 2017-06-23 2018-12-27 Mediatek Inc. INTER PREDICTION METHOD AND APPARATUS FOR IMMERSIVE VIDEO ENCODING
US11356657B2 (en) * 2018-01-26 2022-06-07 Hfi Innovation Inc. Method and apparatus of affine inter prediction for video coding system
CN112154660B (zh) * 2018-05-23 2023-07-14 寰发股份有限公司 使用双向编码单元加权的视频编码方法和装置
WO2019235822A1 (ko) * 2018-06-04 2019-12-12 엘지전자 주식회사 어파인 움직임 예측을 이용하여 비디오 신호를 처리하는 방법 및 장치
WO2020252422A1 (en) * 2019-06-13 2020-12-17 Beijing Dajia Internet Information Technology Co., Ltd. Motion vector prediction for video coding

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
BROSS, Benjamin et al.,Versatile Video Coding (Draft 5),Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 14th Meeting: Geneva, CH, 19-27 Mar. 2019, [JVET-N1001-v8],JVET-N1001(version 8),ITU-T,2019年06月11日,<URL: http://phenix.it-sudparis.eu/jvet/doc_end_user/documents/14_Geneva/wg11/JVET-N1001-v8.zip>: JVET-N1001-v8.docx: pp.40-43,160-164,175-182
Ken McCann et al.,HM4: High Efficiency Video Coding (HEVC) Test Model 4 Encoder Description,Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 6th Meeting: Torino, IT, 14-22 July, 2011, [JCTVC-F802],JCTVC-F802 (version 1),ITU-T,2011年10月04日,<URL: http://phenix.it-sudparis.eu/jct/doc_end_user/documents/6_Torino/wg11/JCTVC-F802-v1.zip>: JCTVC-F802-d1.doc: pp.17-18

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023030061A (ja) * 2019-06-13 2023-03-07 ベイジン、ターチア、インターネット、インフォメーション、テクノロジー、カンパニー、リミテッド ビデオ符号化のための動きベクトル予測

Also Published As

Publication number Publication date
CN115065828A (zh) 2022-09-16
KR102437696B1 (ko) 2022-08-26
EP3963891A1 (en) 2022-03-09
KR20220122802A (ko) 2022-09-02
KR20210153139A (ko) 2021-12-16
WO2020252422A1 (en) 2020-12-17
US20220094970A1 (en) 2022-03-24
CN113994700A (zh) 2022-01-28
US11917189B2 (en) 2024-02-27
JP2023030061A (ja) 2023-03-07
JP2024038295A (ja) 2024-03-19
MX2021014880A (es) 2022-01-18
EP3963891A4 (en) 2022-08-03
US20240163469A1 (en) 2024-05-16
JP2022527673A (ja) 2022-06-02
CN115065828B (zh) 2024-05-03

Similar Documents

Publication Publication Date Title
KR102492738B1 (ko) 비디오 코딩에서 장기 참조 픽처에 대한 제한받는 움직임 벡터 도출
KR20200113259A (ko) 하드웨어 친화적으로 제약된 모션 벡터 개선
TW201946470A (zh) 用於照度補償的信令
CN113965746B (zh) 选择性地应用双向光流和解码器侧运动矢量细化来进行视频编解码的方法和设备
US20230051193A1 (en) System and method for combined inter and intra prediction
US20240163469A1 (en) Motion vector prediction for video coding
JP2023063506A (ja) 構築されたアフィンマージ候補を導出する方法
JP7303255B2 (ja) ビデオコーディングの方法、ビデオコーディングデバイス、コンピュータ可読記憶媒体およびコンピュータプログラム
CN113542748B (zh) 视频编解码方法、设备和非暂时性计算机可读存储介质
CN113491117A (zh) 用于处理不同图片尺寸的视频编解码
KR20230013163A (ko) 조합된 인터 및 인트라 예측을 위한 시스템 및 방법

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211203

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20211203

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20211215

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220607

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220907

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20221118

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221219

R150 Certificate of patent or registration of utility model

Ref document number: 7198949

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150