JP2022500930A - ビデオコーディングにおける条件付きデコーダ側動きベクトル精緻化のための装置および方法 - Google Patents

ビデオコーディングにおける条件付きデコーダ側動きベクトル精緻化のための装置および方法 Download PDF

Info

Publication number
JP2022500930A
JP2022500930A JP2021514368A JP2021514368A JP2022500930A JP 2022500930 A JP2022500930 A JP 2022500930A JP 2021514368 A JP2021514368 A JP 2021514368A JP 2021514368 A JP2021514368 A JP 2021514368A JP 2022500930 A JP2022500930 A JP 2022500930A
Authority
JP
Japan
Prior art keywords
picture
block
motion vector
current
temporal distance
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.)
Granted
Application number
JP2021514368A
Other languages
English (en)
Other versions
JP7297874B2 (ja
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 JP2022500930A publication Critical patent/JP2022500930A/ja
Priority to JP2023098026A priority Critical patent/JP2023126226A/ja
Application granted granted Critical
Publication of JP7297874B2 publication Critical patent/JP7297874B2/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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • 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/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/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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame 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/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/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/537Motion estimation other than block-based
    • 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

ビデオの現在のピクチャ内の現在の画像ブロックのインター予測のための方法が提供される。方法は、第1の時間的距離(TD0など)が、第2の時間的距離(TD1など)に等しいかどうかを決定するステップであって、第1の時間的距離は、現在のピクチャのピクチャ順序カウント値と第1の参照画像のピクチャ順序カウント値の間の差に関して表現され、第2の時間的距離は、第2の参照画像のピクチャ順序カウント値と現在のピクチャのピクチャ順序カウント値の間の差に関して表現される、ステップと、第1の時間的距離(TD0)が第2の時間的距離(TD1)に等しくないと決定されたときに動きベクトル精緻化(DMVR)手順を実行しないステップとを含む。従って、DMVR手順は、等距離の参照を有する画像ブロックのみに制限される。

Description

関連出願への相互参照
この特許出願は、2018年9月13日に出願されたインド仮特許出願第IN201831034607号の優先権を主張する。前述の特許出願は、その全体が参照によりここに組み込まれる。
本開示の実施形態は、一般に、ビデオデータの符号化および復号化の技術に関し、特に、ビデオコーディングにおけるデコーダ側動きベクトル精緻化(decoder-side motion vector refinement, DMVR)に関する。
比較的短いビデオでさえ描画するために必要なビデオデータの量はかなりであり得、これは、結果として、データがストリーミングされ、または限定された帯域幅容量で通信ネットワークを横断して他のやり方で伝達されるとき困難になり得る。従って、ビデオデータは、一般に、現代の電気通信ネットワークを横断して伝達される前に圧縮される。メモリリソースが限定され得るので、ビデオが記憶デバイスに記憶されるときビデオのサイズも問題になり得る。ビデオ圧縮デバイスは、多くの場合、供給元においてソフトウェアおよび/またはハードウェアを使用して伝送または記憶の前にビデオデータをコード化し、それによりデジタルビデオ画像を表現するために必要なデータの量を減少させる。次いで、圧縮されたデータは、ビデオデータを復号化するビデオ伸張デバイスによって宛先において受信される。限定されたネットワークリソース、およびより高いビデオ品質のますます増加している需要のゆえに、画像品質をほとんどまたはまったく犠牲にすることなく圧縮率を改善する、改善された圧縮および伸張技術が望ましい。
本出願の実施形態は、ビデオの現在のピクチャ内の現在の画像ブロックのインター予測のための装置および方法、デコーダ側動きベクトル精緻化(DMVR)を条件付きで実行することができるエンコーダおよびデコーダを提供し、従って、コーディング効率が改善されることが可能である。
発明の実施形態は独立請求項の特徴によって定義され、実施形態のさらなる有利な実装は従属請求項の特徴による。
従属請求項における他の実施形態とともに、特定の実施形態が添付の独立請求項において概説されている。
第1の態様によれば、開示は、ビデオの現在のピクチャ内の現在の画像ブロックのインター予測(双予測)のための方法に関し、方法は、
現在のピクチャが時間的に(時間に関して)第1の参照ピクチャ(RefPic0など)と第2の参照ピクチャ(RefPic1など)の間にあるかどうか、および第1の時間的距離(TD0など)と第2の時間的距離(TD1など)が同じ距離であるかどうかを決定するステップであって、第1の時間的距離(TD0)は、現在のピクチャと第1の参照ピクチャ(RefPic0)の間であり、第2の時間的距離(TD1)は、現在のピクチャと第2の参照ピクチャ(RefPic1)の間である、ステップと、第1の精緻化された参照ブロックの位置と第2の精緻化された参照ブロックの位置を取得するために動きベクトル精緻化(DMVR)手順を実行し、現在のピクチャが時間的に第1の参照ピクチャ(RefPic0など)と第2の参照ピクチャ(RefPic1など)の間にあること、および第1の時間的距離(TD0)と第2の時間的距離(TD1)が同じ距離であることが決定されたときに、第1の精緻化された参照ブロックの位置および第2の精緻化された参照ブロックの位置に基づいて現在の画像ブロックの予測ブロック(予測されたサンプル値)を決定するステップとを含む。
「現在のピクチャが時間的に第1の参照ピクチャ(RefPic0など)と第2の参照ピクチャ(RefPic1など)の間にあること、および第1の時間的距離(TD0)と第2の時間的距離(TD1)が同じ距離であることが決定されたとき」は、「現在のピクチャが時間的に第1の参照ピクチャ(RefPic0など)と第2の参照ピクチャ(RefPic1など)の間にあること、および第1の時間的距離(TD0)と第2の時間的距離(TD1)が同じ距離であることが決定されたときのみ」と理解されるべきでないことが注記される。他の条件も、動きベクトル精緻化(DMVR)の手順を実行するかどうかを決定するときに考慮されることが可能である。
「第1の精緻化された参照ブロックの位置と第2の精緻化された参照ブロックの位置」に関しては、位置は、参照ピクチャ内の位置である絶対位置であるか、または初期参照ブロックの位置に基づいてオフセットされた位置である相対位置であることが可能である。
DMVRは、過去の参照ピクチャからの1つの動きベクトル(MV)と、未来の別の参照ピクチャからの別のMVとを用いた双予測のマージモードに対して適用されることが注記される。参照ピクチャは、現在の画像ブロックを含む現在のピクチャに関して時間的に異なる方向にある2つのピクチャであってよい。本開示は、両方の予測が同じ時間方向に由来するシナリオ(両方とも過去から、または両方とも未来からのいずれか)には適用可能でない。
第1の態様の任意の先行する実装による方法の可能な実装形態において、現在のピクチャが時間的に第1の参照ピクチャ(RefPic0など)と第2の参照ピクチャ(RefPic1など)の間にあるかどうか、および第1の時間的距離(TD0など)と第2の時間的距離(TD1など)が同じ距離であると決定するステップであって、第1の時間的距離(TD0)は、現在のピクチャと第1の参照ピクチャ(RefPic0)の間であり、第2の時間的距離(TD1)は、現在のピクチャと第2の参照ピクチャ(RefPic1)の間である、ステップは、
|TD0|==|TD1|
および
TD0*TD1<0
であることを含む。
双方向を示す各マージ候補について、TD0およびTD1を、現在のピクチャからL0およびL1参照ピクチャの時間的距離として計算する。TD0およびTD1は、ピクチャ順序カウント(POC)を使用することによって計算され得る。たとえば、
TD0=POCc-POC0
TD1=POCc-POC1
である。ここで、POCc、POC0、およびPOC1は、それぞれ、現在のピクチャのPOC、第1の参照ピクチャのPOC、および第2の参照ピクチャのPOCを表現する。
第1の態様の任意の先行する実装による方法の可能な実装形態または第1の態様それ自体において、方法は、第1の時間的距離(TD0)と第2の時間的距離(TD1)が異なる距離であること、または現在のピクチャが時間的に第1の参照ピクチャ(RefPic0など)と第2の参照ピクチャ(RefPic1など)の間にないことが決定されたときに、第1の初期動きベクトル(MV0)および第2の初期動きベクトル(MV1)を使用して動き補償を実行するステップ、一例において、TD0=POCc-POC0、およびTD1=POCc-POC1の場合に|TD0|≠|TD1|またはTD0*TD1>=0のときに第1の初期動きベクトル(MV0)および第2の初期動きベクトル(MV1)を使用して動き補償を実行するステップをさらに含む。代替的に、別の例において、TD0=POCc-POC0、およびTD1=POC1-POCcの場合にTD0≠TD1のときに第1の初期動きベクトル(MV0)および第2の初期動きベクトル(MV1)を使用して動き補償を実行すること。
第1の態様の任意の先行する実装による方法の可能な実装形態または第1の態様それ自体において、方法は現在のピクチャ内の現在の画像ブロックの初期動き情報を取得するステップであって、初期動き情報は、第1の初期動きベクトル、第1の参照インデックス、第2の初期動きベクトル、および第2の参照インデックスを含み、第1の参照インデックスは、第1の参照ピクチャを示し、第2の参照インデックスは、第2の参照ピクチャを示す、ステップをさらに含む。
第1の態様の任意の先行する実装による方法の可能な実装形態または第1の態様それ自体において、動きベクトル精緻化(DMVR)手順を実行するステップは、
第1の初期動きベクトルに基づいて第1の参照ピクチャ内の第1の初期参照ブロックを決定するステップと、
第2の初期動きベクトルに基づいて第2の参照ピクチャ内の第2の初期参照ブロックを決定するステップと、
第1の初期参照ブロックおよび第2の初期参照ブロックに基づいてバイラテラル参照ブロックを生成するステップであって、たとえば、バイラテラル参照ブロックは、バイラテラルテンプレートと称されてよく、テンプレートは、画像予測ブロックの形状およびサイズを有する、ステップと、
バイラテラル参照ブロックと第1の参照ピクチャ内の複数の第1の参照ブロックの各々との間のコストを比較して、第1の精緻化された参照ブロックまたは第1の精緻化された動きベクトルの位置を決定するステップと、
バイラテラル参照ブロックと第2の参照ピクチャ内の複数の第2の参照ブロックの各々との間のコストを比較して、第2の精緻化された参照ブロックまたは第2の精緻化された動きベクトルの位置を決定するステップとを含む。
第1の態様の任意の先行する実装による方法の可能な実装形態または第1の態様それ自体において、動きベクトル精緻化(DMVR)手順を実行するステップは、
第1の参照ピクチャ(RefPic0など)内の第1の初期動きベクトルによって指し示される第1の初期参照ブロックと、第2の参照ピクチャ(RefPic1など)内の第2の初期動きベクトルによって指し示される第2の初期参照ブロックとに基づいて現在の画像ブロックに対するテンプレートを取得するステップと、
第1の精緻化された動きベクトルおよび第2の精緻化された動きベクトルを、それぞれ第1の探索空間および第2の探索空間内の前記テンプレートとのテンプレートマッチングによって決定するステップであって、第1の探索空間は第1の初期動きベクトルによって与えられる位置を含み、第2の探索空間は第2の初期動きベクトルによって与えられる位置を含む、ステップとを含む。
第1の態様の任意の先行する実装による方法の可能な実装形態または第1の態様それ自体において、動きベクトル精緻化(DMVR)手順を実行するステップは、
マッチングコスト基準に基づいて(たとえば、参照ブロックの各対のマッチングコストに基づいて)参照ブロックの複数の対から最良の動きベクトルによって指し示される最良マッチングブロックの対を決定するステップであって、参照ブロックの前記対は、第1の参照ピクチャの、第1の初期動きベクトルに基づいて決定されるサンプル領域内の第1の参照ブロックと、第2の参照ピクチャの、第2の初期動きベクトルに基づいて決定されるサンプル領域内の第2の参照ブロックとを含み、
最良の動きベクトルは、第1の精緻化された動きベクトルおよび第2の精緻化された動きベクトルを含む、ステップを含む。
第1の態様の任意の先行する実装による方法の可能な実装形態または第1の態様それ自体において、第1の精緻化された参照ブロックの位置と第2の精緻化された参照ブロックの位置とを取得するために動きベクトル精緻化(DMVR)手順を実行するステップは、
第1の初期動きベクトル、第2の初期動きベクトル、および現在の画像ブロックの位置に基づいてN個の第1の参照ブロックの位置と、N個の第2の参照ブロックの位置とを決定するステップであって、N個の第1の参照ブロックは、第1の参照画像内に含まれ、N個の第2の参照ブロックは、第2の参照画像内に含まれ、Nは、1より大きい整数である、ステップと、
マッチングコスト基準に基づいて、参照ブロックのM個の対の位置から参照ブロックの対の位置を、第1の精緻化された参照ブロックの位置および第2の精緻化された参照ブロックの位置として決定するステップであって、参照ブロックの各対の位置は、第1の参照ブロックの位置と第2の参照ブロックの位置とを含み、参照ブロックの各対について、第1の位置オフセット(delta0x, delta0y)および第2の位置オフセット(delta1x, delta1y)はミラーリングされ、第1の位置オフセット(delta0x, delta0y)は、第1の初期参照ブロックの位置に対する第1の参照ブロックの位置のオフセットを表現し、第2の位置オフセット(delta1x, delta1y)は、第2の初期参照ブロックの位置に対する第2の参照ブロックの位置のオフセットを表現し、Mは1以上の整数であり、MはN以下である、ステップとを含む。
一例において、第1の位置オフセット(delta0x, delta0y)および第2の位置オフセット(delta1x, delta1y)がミラーリングされているという表現は、第1の位置オフセットの方向が第2の位置オフセットの方向と反対であり、第1の位置オフセットの大きさが第2の位置オフセットの大きさと同じであるとして理解されてよい。
第1の態様の任意の先行する実装による方法の可能な実装形態または第1の態様それ自体において、第1の精緻化された参照ブロックの位置および第2の精緻化された参照ブロックの位置に基づいて現在の画像ブロックの予測ブロックを決定するステップは、
第1の精緻化された参照ブロックおよび第2の精緻化された参照ブロックに基づいて予測ブロックを決定するステップであって、第1の精緻化された参照ブロックは、第1の精緻化された参照ブロックの位置に基づいて第1の参照ピクチャ内で決定され、第2の精緻化された参照ブロックは、第2の精緻化された参照ブロックの位置に基づいて第2の参照ピクチャ内で決定される、ステップ、または
第1の精緻化された参照ブロックおよび第2の精緻化された参照ブロックに基づいて予測ブロックを決定するステップであって、第1の精緻化された参照ブロックおよび第2の精緻化された参照ブロックは、第1の精緻化された動きベクトルおよび第2の精緻化された動きベクトルを使用して動き補償を実行することによって決定される、ステップを含む。
第1の態様の任意の先行する実装による方法の可能な実装形態または第1の態様それ自体において、第1の参照ピクチャは、現在のピクチャに時間的に先行する参照画像であり、第2の参照ピクチャは、現在のピクチャによって時間的に先行される参照画像であるか、または第1の参照ピクチャは、現在のピクチャによって時間的に先行される参照画像であり、第2の参照ピクチャは、現在のピクチャに時間的に先行する参照画像であるか、または
第1の参照ピクチャは過去の参照画像であり、第2の参照ピクチャは未来の参照画像であるか、または第1の参照ピクチャは未来の参照画像であり、第2の参照ピクチャは過去の参照画像である。
言い換えると、現在のピクチャの前のピクチャは第1の参照ピクチャであり、現在のピクチャの次の画像は第2の参照ピクチャであるか、または現在のピクチャの前のピクチャは第2の参照ピクチャであり、現在のピクチャの次の画像は第1の参照ピクチャである。
第1の態様の任意の先行する実装による方法の可能な実装形態または第1の態様それ自体において、第1の時間的距離(TD0)は現在のピクチャと第1の参照ピクチャの間のピクチャ順序カウント(POC)距離を示し、第2の時間的距離(TD1)は現在のピクチャと第2の参照ピクチャの間のPOC距離を示すか、または
第1の時間的距離(TD0)は、現在のピクチャのピクチャ順序カウント値(POCc)と第1の参照画像のピクチャ順序カウント値(POC0)の間の差に関して表現され、第2の時間的距離(TD1)は、現在のピクチャのピクチャ順序カウント値(POCc)と第2の参照画像のピクチャ順序カウント値(POC1)の間の差に関して表現される。
第1の態様の任意の先行する実装による方法の可能な実装形態または第1の態様それ自体において、現在のピクチャが時間的に第1の参照ピクチャ(RefPic0など)と第2の参照ピクチャ(RefPic1など)の間にあるかどうかを決定するステップは、
現在のピクチャのピクチャ順序カウント値(POCc)が、第1の参照画像のピクチャ順序カウント値(POC0)よりも大きく、現在のピクチャのピクチャ順序カウント値(POCc)が、第2の参照画像のピクチャ順序カウント値(POC1)よりも小さいかどうか、または現在のピクチャのピクチャ順序カウント値(POCc)が、第1の参照画像のピクチャ順序カウント値(POC0)よりも小さく、現在のピクチャのピクチャ順序カウント値(POCc)が、第2の参照画像のピクチャ順序カウント値(POC1)よりも大きいかどうかを決定するステップを含む。
第2の態様によれば、開示は、ビデオの現在のピクチャ内の現在の画像ブロックのインター予測(双予測)のための方法に関し、方法は、現在のピクチャが時間的に第1の参照ピクチャ(RefPic0など)と第2の参照ピクチャ(RefPic1など)の間にあるかどうか、および第1の時間的距離(TD0など)と第2の時間的距離(TD1など)が同じ距離であるかどうかを決定するステップであって、第1の時間的距離(TD0)は、現在のピクチャと第1の参照ピクチャ(RefPic0)の間であり、第2の時間的距離(TD1)は、現在のピクチャと第2の参照ピクチャ(RefPic1)の間である、ステップと、第1の時間的距離(TD0)と第2の時間的距離(TD1)が異なる距離であること、または現在のピクチャが時間的に第1の参照ピクチャ(RefPic0など)と第2の参照ピクチャ(RefPic1など)の間にないことが決定されたときに、第1の初期動きベクトル(MV0)および第2の初期動きベクトル(MV1)を使用して動き補償を実行するステップとを含む。
第2の態様それ自体による方法の可能な実装形態において、現在の画像ブロックの初期動き情報は、第1の初期動きベクトル、第1の参照インデックス、第2の初期動きベクトル、および第2の参照インデックスを含み、第1の参照インデックスは、第1の参照ピクチャを示し、第2の参照インデックスは、第2の参照ピクチャを示す。
第2の態様の任意の先行する実装による方法の可能な実装形態または第2の態様それ自体において、第1の時間的距離は、現在のピクチャと第1の参照ピクチャの間のピクチャ順序カウント(POC)距離を示し、第2の時間的距離は現在のピクチャと第2の参照ピクチャの間のPOC距離を示すか、または
第1の時間的距離(TD0)は、現在のピクチャのピクチャ順序カウント値(POCc)と第1の参照画像のピクチャ順序カウント値(POC0)の間の差に関して表現され、第2の時間的距離(TD1)は、現在のピクチャのピクチャ順序カウント値(POCc)と第2の参照画像のピクチャ順序カウント値(POC1)の間の差に関して表現される。
第3の態様によれば、開示は、ビデオの現在のピクチャ内の現在の画像ブロックのインター予測(双予測)のための方法に関し、方法は、
第1の時間的距離(TD0など)が、第2の時間的距離(TD1など)に等しいかどうかを決定するステップであって、第1の時間的距離(TD0)は、現在のピクチャのピクチャ順序カウント値(POCc)と第1の参照画像のピクチャ順序カウント値(POC0)の間の差に関して表現され、第2の時間的距離(TD1)は、第2の参照画像のピクチャ順序カウント値(POC1)と現在のピクチャのピクチャ順序カウント値(POCc)の間の差に関して表現される、ステップと、第1の時間的距離(TD0)が第2の時間的距離(TD1)に等しいと決定されたときに、現在の画像ブロックの予測ブロックを決定するために動きベクトル精緻化(DMVR)手順を実行するステップとを含む。
第3の態様それ自体による方法の可能な実装形態において、方法は、第1の時間的距離が第2の時間的距離に等しくないと決定されたときに、第1の初期動きベクトルおよび第2の初期動きベクトルを使用して動き補償を実行して、現在の画像ブロックの予測ブロックを決定することをさらに含む。
第4の態様によれば、開示は、ビデオの現在のピクチャ内の現在の画像ブロックのインター予測(双予測)のための方法に関し、方法は、
第1の時間的距離(TD0など)が、第2の時間的距離(TD1など)に等しいかどうかを決定するステップであって、第1の時間的距離(TD0)は、現在のピクチャのピクチャ順序カウント値(POCc)と第1の参照画像のピクチャ順序カウント値(POC0)の間の差に関して表現され、第2の時間的距離(TD1)は、第2の参照画像のピクチャ順序カウント値(POC1)と現在のピクチャのピクチャ順序カウント値(POCc)の間の差に関して表現される、ステップと、
第1の時間的距離(TD0)が第2の時間的距離(TD1)に等しくないと決定されたときに、動きベクトル精緻化(DMVR)手順を実行しない(または動きベクトル精緻化(DMVR)手順を無効化する)ステップとを含む。
双方向を示す各マージ候補について、TD0およびTD1は、ピクチャ順序カウント(POC)を使用することによって計算され得る。たとえば、
TD0=POCc-POC0
TD1=POC1-POCc
である。ここで、POCc、POC0、およびPOC1は、それぞれ、現在のピクチャのPOC、第1の参照ピクチャのPOC、および第2の参照ピクチャのPOCを表現する。
第2または第3または第4の態様の任意の先行する実装による方法の可能な実装形態または第2または第3または第4の態様それ自体において、第1の参照ピクチャは、現在のピクチャに時間的に先行する参照画像であり、第2の参照ピクチャは、現在のピクチャによって時間的に先行される参照画像であるか、または第1の参照ピクチャは、現在のピクチャによって時間的に先行される参照画像であり、第2の参照ピクチャは、現在のピクチャに時間的に先行する参照画像であるか、または
第1の参照ピクチャは過去の参照画像であり、第2の参照ピクチャは未来の参照画像であるか、または第1の参照ピクチャは未来の参照画像であり、第2の参照ピクチャは過去の参照画像である。
言い換えると、現在のピクチャの前のピクチャは第1の参照ピクチャであり、現在のピクチャの次の画像は第2の参照ピクチャであるか、または現在のピクチャの前のピクチャは第2の参照ピクチャであり、現在のピクチャの次の画像は第1の参照ピクチャである。
第5の態様によれば、開示は、ビデオ画像を符号化するための方法に関し、
上記の方法に従ってビデオの現在のピクチャ内の現在の画像ブロックのインター予測を実行して現在の画像ブロックの予測ブロックを取得するステップと、
現在の画像ブロックと予測ブロックの間の差(たとえば、残差または残差ブロック)を符号化し、符号化された差および初期動き情報を示すためのインデックス(マージ候補インデックスなど)を含むビットストリームを生成するステップであって、初期動き情報は、第1の初期動きベクトルおよび第2の初期動きベクトルを含む、ステップとを含む。
第6の態様によれば、開示は、ビットストリームからビデオ画像を復号化するための方法に関し、
ビットストリームから初期動き情報を示すためのインデックス(マージ候補インデックスなど)および現在の画像ブロックと現在の画像ブロックの予測ブロックの間の符号化された差(たとえば、残差または残差ブロック)を解析するステップであって、初期動き情報は、第1の初期動きベクトルおよび第2の初期動きベクトルを含む、ステップと、
上記で前に説明された方法に従ってビデオの現在のピクチャ内の現在の画像ブロックのインター予測を実行して現在の画像ブロックの予測ブロックを取得するステップと、
現在の画像ブロックを、解析された差と予測ブロックの和として再構築するステップとを含む。
第7の態様によれば、開示は、符号化デバイスによって実現される符号化の方法に関し、
上記の方法が有効化されるか、されないかを示すシンタックス要素の値を決定するステップと、
シンタックス要素を含むビットストリームを生成するステップとを含む。
第7の態様の任意の先行する実装による方法の可能な実装形態または第7の態様それ自体において、シンタックス要素は、シーケンスパラメータセット(SPS)レベル、ピクチャパラメータセット(PPS)レベル、スライスヘッダ、コーディングツリーユニット(CTU)シンタックス、またはコーディングユニット(CU)シンタックスのいずれか1つでシグナリングされる。
第7の態様の任意の先行する実装による方法の可能な実装形態または第7の態様それ自体において、シンタックス要素は、第1のフラグ(sps_conditional_dmvr_flagなど)および/または第2のフラグ(pps_conditional_dmvr_flagなど)を含み、
第1のフラグ(sps_conditional_dmvr_flag)が0に等しいならば、上記で前に説明された方法は、シーケンスの画像ブロックに対して実行されないか、
第1のフラグ(sps_conditional_dmvr_flag)が1に等しく、第2のフラグ(pps_conditional_dmvr_flag)が0に等しいならば、上記で前に説明された方法は、シーケンスのピクチャの画像ブロックに対して実行されないか、または
第1のフラグ(sps_conditional_dmvr_flag)が1に等しく、第2のフラグ(pps_conditional_dmvr_flag)が1に等しいならば、上記で前に説明された方法は、シーケンスのピクチャの画像ブロックに対して実行される。
第8の態様によれば、開示は、復号化デバイスによって実現される復号化の方法に関し、
ビットストリームから、上記で前に説明された方法が有効化されるか、されないかを示すシンタックス要素を解析するステップと、
上記の方法が有効化されるか、されないかを示すシンタックス要素に従ってデコーダ側動きベクトル精緻化(DMVR)手順を適応的に有効化または無効化するステップとを含む。
第8の態様の任意の先行する実装による方法の可能な実装形態または第8の態様それ自体において、シンタックス要素は、ビットストリームのシーケンスパラメータセット(SPS)レベル、ビットストリームのピクチャパラメータセット(PPS)レベル、スライスヘッダ、コーディングツリーユニット(CTU)シンタックス、またはコーディングユニット(CU)シンタックスのいずれか1つから取得される。
第8の態様の任意の先行する実装による方法の可能な実装形態または第8の態様それ自体において、シンタックス要素は、第1のフラグ(sps_conditional_dmvr_flag)および第2のフラグ(pps_conditional_dmvr_flag)を含み、
第1のフラグ(sps_conditional_dmvr_flag)が0に等しいならば、上記で前に説明された方法は、シーケンスの画像ブロックに対して実行されないか、
第1のフラグ(sps_conditional_dmvr_flag)が1に等しく、第2のフラグ(pps_conditional_dmvr_flag)が0に等しいならば、上記で前に説明された方法は、シーケンスのピクチャの画像ブロックに対して実行されないか、または
第1のフラグ(sps_conditional_dmvr_flag)が1に等しく、第2のフラグ(pps_conditional_dmvr_flag)が1に等しいならば、上記で前に説明された方法は、シーケンスのピクチャの画像ブロックに対して実行される。
第9の態様によれば、開示は、コーディングデバイスに関し、
命令を記憶するメモリと、
メモリに結合されたプロセッサであって、プロセッサはメモリに記憶された命令を実行して前に表された方法をプロセッサに実行させるように構成された、プロセッサとを含む。
第10の態様によれば、開示は、ビデオの現在のピクチャ内の現在の画像ブロックのインター予測のための装置に関し、
現在のピクチャが時間的に第1の参照ピクチャ(RefPic0など)と第2の参照ピクチャ(RefPic1など)の間にあるかどうか、および第1の時間的距離(TD0など)と第2の時間的距離(TD1など)が同じ距離であるかどうかを決定するように構成された決定ユニットであって、第1の時間的距離(TD0)は、現在のピクチャと第1の参照ピクチャ(RefPic0)の間であり、第2の時間的距離(TD1)は、現在のピクチャと第2の参照ピクチャ(RefPic1)の間である、決定ユニットと、
第1の精緻化された参照ブロックの位置と第2の精緻化された参照ブロックの位置とを取得するために、動きベクトル精緻化(DMVR)手順を実行して、現在のピクチャが時間的に第1の参照ピクチャ(RefPic0など)と第2の参照ピクチャ(RefPic1など)の間にあること、および第1の時間的距離(TD0)と第2の時間的距離(TD1)が同じ距離であることが決定されたときに、第1の精緻化された参照ブロックの位置と第2の精緻化された参照ブロックの位置とに基づいて現在の画像ブロックの予測ブロックを決定するように構成されたインター予測処理ユニットとを含む。
第10の態様の任意の先行する実装による方法の可能な実装形態において、決定ユニットは、次の式
|TD0|==|TD1|
および
TD0*TD1<0
を通じて、現在のピクチャが時間的に第1の参照ピクチャ(RefPic0など)と第2の参照ピクチャ(RefPic1など)の間にあるかどうか、および第1の時間的距離(TD0など)と第2の時間的距離(TD1など)が同じ距離であるかどうかを決定するように構成される。
双方向を示す各マージ候補について、TD0およびTD1を、現在のピクチャからL0およびL1参照ピクチャの時間的距離として計算する。TD0およびTD1は、ピクチャ順序カウント(POC)を使用することによって計算され得る。たとえば、
TD0=POCc-POC0
TD1=POCc-POC1
である。ここで、POCc、POC0、およびPOC1は、それぞれ、現在のピクチャのPOC、第1の参照ピクチャのPOC、および第2の参照ピクチャのPOCを表現する。
第10の態様それ自体による方法の可能な実装形態において、インター予測処理ユニットは、第1の時間的距離(TD0)と第2の時間的距離(TD1)が異なる距離であること、または現在のピクチャが時間的に第1の参照ピクチャ(RefPic0など)と第2の参照ピクチャ(RefPic1など)の間にないことが決定されたときに、第1の初期動きベクトル(MV0)および第2の初期動きベクトル(MV1)を使用して動き補償を実行するようにさらに構成される。一例において、インター予測処理ユニットは、TD0=POCc-POC0、およびTD1=POCc-POC1の場合に|TD0|≠|TD1|またはTD0*TD1>=0のときに第1の初期動きベクトル(MV0)および第2の初期動きベクトル(MV1)を使用して動き補償を実行するようにさらに構成される。代替的に、別の例では、インター予測処理ユニットは、TD0=POCc-POC0、およびTD1=POC1-POCcの場合にTD0≠TD1のときに第1の初期動きベクトル(MV0)および第2の初期動きベクトル(MV1)を使用して動き補償を実行するようにさらに構成される。
第10の態様の任意の先行する実装による方法の可能な実装形態または第10の態様それ自体において、インター予測処理ユニットは、
現在のピクチャ内の現在の画像ブロックの初期動き情報を取得するようにさらに構成され、初期動き情報は、第1の初期動きベクトル、第1の参照インデックス、第2の初期動きベクトル、および第2の参照インデックスを含み、第1の参照インデックスは、第1の参照ピクチャを示し、第2の参照インデックスは、第2の参照ピクチャを示す。
第10の態様の任意の先行する実装による方法の可能な実装形態または第10の態様それ自体において、第1の精緻化された参照ブロックの位置と第2の精緻化された参照ブロックの位置とを取得するために動きベクトル精緻化(DMVR)手順を実行することについて、インター予測処理ユニットは、具体的には、
第1の初期動きベクトルに基づいて第1の参照ピクチャ内の第1の初期参照ブロックを決定し、
第2の初期動きベクトルに基づいて第2の参照ピクチャ内の第2の初期参照ブロックを決定し、
第1の初期参照ブロックおよび第2の初期参照ブロックに基づいてバイラテラル参照ブロックを生成し、
バイラテラル参照ブロックと第1の参照ピクチャ内の複数の第1の参照ブロックの各々との間のコストを比較して、第1の精緻化された参照ブロックまたは第1の精緻化された動きベクトルの位置を決定し、
バイラテラル参照ブロックと第2の参照ピクチャ内の複数の第2の参照ブロックの各々との間のコストを比較して、第2の精緻化された参照ブロックまたは第2の精緻化された動きベクトルの位置を決定するように構成される。
第10の態様の任意の先行する実装による方法の可能な実装形態または第10の態様それ自体において、第1の精緻化された参照ブロックの位置と第2の精緻化された参照ブロックの位置とを取得するために動きベクトル精緻化(DMVR)手順を実行することについて、インター予測処理ユニットは、具体的には、
第1の参照ピクチャ(RefPic0など)内の第1の初期動きベクトルによって指し示される第1の初期参照ブロックと、第2の参照ピクチャ(RefPic1など)内の第2の初期動きベクトルによって指し示される第2の初期参照ブロックとに基づいて現在の画像ブロックに対するテンプレートを取得し、
第1の精緻化された動きベクトルおよび第2の精緻化された動きベクトルを、それぞれ第1の探索空間および第2の探索空間内の前記テンプレートとのテンプレートマッチングによって決定するように構成され、第1の探索空間は第1の初期動きベクトルによって与えられる位置に位置特定され、第2の探索空間は第2の初期動きベクトルによって与えられる位置に位置特定される。
第10の態様の任意の先行する実装による方法の可能な実装形態または第10の態様それ自体において、第1の精緻化された参照ブロックの位置と第2の精緻化された参照ブロックの位置とを取得するために動きベクトル精緻化(DMVR)手順を実行することについて、インター予測処理ユニットは、具体的には、
マッチングコスト基準に基づいて(たとえば、参照ブロックの各対のマッチングコストに基づいて)参照ブロックの複数の対から最良の動きベクトルによって指し示される最良マッチングブロックの対を決定するように構成され、参照ブロックの前記対は、第1の参照ピクチャの、第1の初期動きベクトルに基づいて決定されるサンプル領域内の第1の参照ブロックと、第2の参照ピクチャの、第2の初期動きベクトルに基づいて決定されるサンプル領域内の第2の参照ブロックとを含み、
最良の動きベクトルは、第1の精緻化された動きベクトルおよび第2の精緻化された動きベクトルを含む。
第10の態様の任意の先行する実装による方法の可能な実装形態または第10の態様それ自体において、第1の精緻化された参照ブロックの位置と第2の精緻化された参照ブロックの位置とを取得するために動きベクトル精緻化(DMVR)手順を実行することについて、インター予測処理ユニットは、具体的には、
第1の初期動きベクトル、第2の初期動きベクトル、および現在の画像ブロックの位置に基づいてN個の第1の参照ブロックの位置と、N個の第2の参照ブロックの位置とを決定するように構成され、N個の第1の参照ブロックは、第1の参照画像内に含まれ、N個の第2の参照ブロックは、第2の参照画像内に含まれ、Nは1より大きい整数であり、
インター予測処理ユニットは、具体的には、マッチングコスト基準に基づいて、参照ブロックのM個の対の位置から参照ブロックの対の位置を、第1の精緻化された参照ブロックの位置および第2の精緻化された参照ブロックの位置として決定するように構成され、参照ブロックの各対の位置は、第1の参照ブロックの位置と第2の参照ブロックの位置とを含み、参照ブロックの各対について、第1の位置オフセット(delta0x, delta0y)および第2の位置オフセット(delta1x, delta1y)はミラーリングされ、第1の位置オフセット(delta0x, delta0y)は、第1の初期参照ブロックの位置に対する第1の参照ブロックの位置のオフセットを表現し、第2の位置オフセット(delta1x, delta1y)は、第2の初期参照ブロックの位置に対する第2の参照ブロックの位置のオフセットを表現し、Mは1以上の整数であり、MはN以下である。
第10の態様の任意の先行する実装による方法の可能な実装形態または第10の態様それ自体において、第1の精緻化された参照ブロックの位置および第2の精緻化された参照ブロックの位置に基づいて現在の画像ブロックの予測ブロックを決定することについて、インター予測処理ユニットは、具体的には、
第1の精緻化された参照ブロックおよび第2の精緻化された参照ブロックに基づいて予測ブロックを決定するように構成され、第1の精緻化された参照ブロックは、第1の精緻化された参照ブロックの位置に基づいて第1の参照ピクチャ内で決定され、第2の精緻化された参照ブロックは、第2の精緻化された参照ブロックの位置に基づいて第2の参照ピクチャ内で決定されるか、または
インター予測処理ユニットは、具体的には、第1の精緻化された参照ブロックおよび第2の精緻化された参照ブロックに基づいて予測ブロックを決定するように構成され、第1の精緻化された参照ブロックおよび第2の精緻化された参照ブロックは、第1の精緻化された動きベクトルおよび第2の精緻化された動きベクトルを使用して動き補償を実行することによって決定される。
第10の態様の任意の先行する実装による方法の可能な実装形態または第10の態様それ自体において、第1の参照ピクチャは、現在のピクチャに時間的に先行する参照画像であり、第2の参照ピクチャは、現在のピクチャによって時間的に先行される参照画像であるか、または第1の参照ピクチャは、現在のピクチャによって時間的に先行される参照画像であり、第2の参照ピクチャは、現在のピクチャに時間的に先行する参照画像であるか、または
第1の参照ピクチャは過去の参照画像であり、第2の参照ピクチャは未来の参照画像であるか、または第1の参照ピクチャは未来の参照画像であり、第2の参照ピクチャは過去の参照画像である。
第10の態様の任意の先行する実装による方法の可能な実装形態または第10の態様それ自体において、第1の時間的距離(TD0)は、現在のピクチャと第1の参照ピクチャの間のピクチャ順序カウント(POC)距離を示し、第2の時間的距離(TD1)は現在のピクチャと第2の参照ピクチャの間のPOC距離を示すか、または
第1の時間的距離(TD0)は、現在のピクチャのピクチャ順序カウント値(POCc)と第1の参照画像のピクチャ順序カウント値(POC0)の間の差に関して表現され、第2の時間的距離(TD1)は、現在のピクチャのピクチャ順序カウント値(POCc)と第2の参照画像のピクチャ順序カウント値(POC1)の間の差に関して表現される。
第10の態様の任意の先行する実装による方法の可能な実装形態または第10の態様それ自体において、現在のピクチャが時間的に第1の参照ピクチャ(RefPic0など)と第2の参照ピクチャ(RefPic1など)の間にあるかどうかを決定することについて、インター予測処理ユニットは、具体的には、
現在のピクチャのピクチャ順序カウント値(POCc)が、第1の参照画像のピクチャ順序カウント値(POC0)よりも大きく、現在のピクチャのピクチャ順序カウント値(POCc)が、第2の参照画像のピクチャ順序カウント値(POC1)よりも小さいかどうか、または現在のピクチャのピクチャ順序カウント値(POCc)が、第1の参照画像のピクチャ順序カウント値(POC0)よりも小さく、現在のピクチャのピクチャ順序カウント値(POCc)が、第2の参照画像のピクチャ順序カウント値(POC1)よりも大きいかどうかを決定するように構成される。
第11の態様によれば、開示は、ビデオ画像を符号化するための符号化装置に関し、符号化装置は、
現在のピクチャが時間的に第1の参照ピクチャと第2の参照ピクチャの間にあるかどうか、および第1の時間的距離と第2の時間的距離が同じ距離であるかどうかを決定するように構成された決定ユニットであって、第1の時間的距離は、現在のピクチャと第1の参照ピクチャの間であり、第2の時間的距離は、現在のピクチャと第2の参照ピクチャの間である、決定ユニットと、
第1の時間的距離と第2の時間的距離が異なる距離であること、または現在のピクチャが時間的に第1の参照ピクチャと第2の参照ピクチャの間にないことが決定されたときに、第1の初期動きベクトルおよび第2の初期動きベクトルを使用して動き補償を実行して現在の画像ブロックの予測ブロックを決定するように構成されたインター予測処理ユニットとを含む。
第11の態様それ自体による方法の可能な実装形態において、現在の画像ブロックの初期動き情報は、第1の初期動きベクトル、第1の参照インデックス、第2の初期動きベクトル、および第2の参照インデックスを含み、第1の参照インデックスは、第1の参照ピクチャを示し、第2の参照インデックスは、第2の参照ピクチャを示す。
第11の態様の任意の先行する実装による方法の可能な実装形態または第11の態様それ自体において、第1の時間的距離は、現在のピクチャと第1の参照ピクチャの間のピクチャ順序カウント(POC)距離を示し、第2の時間的距離は現在のピクチャと第2の参照ピクチャの間のPOC距離を示すか、または第1の時間的距離(TD0)は、現在のピクチャのピクチャ順序カウント値(POCc)と第1の参照画像のピクチャ順序カウント値(POC0)の間の差に関して表現され、第2の時間的距離(TD1)は、現在のピクチャのピクチャ順序カウント値(POCc)と第2の参照画像のピクチャ順序カウント値(POC1)の間の差に関して表現される。
第12の態様によれば、開示は、ビデオ画像を符号化するための符号化装置に関し、符号化装置は、
現在の画像ブロックの予測ブロックを取得するための前に表された装置と、
現在の画像ブロックと現在の画像ブロックの予測ブロックの間の差(残差など)を符号化し、符号化された差および初期動き情報を示すためのインデックス(マージ候補インデックスなど)を含むビットストリームを生成するように構成されたエントロピーコーディングユニットであって、初期動き情報は、第1の初期動きベクトルおよび第2の初期動きベクトルを含む、エントロピーコーディングユニットとを含む。
第13の態様によれば、開示は、ビットストリームからビデオ画像を復号化するための復号化装置に関し、装置は、
ビットストリームから、初期動き情報を示すためのインデックスおよび現在の画像ブロックと現在の画像ブロックの予測ブロックの間の符号化された差(残差など)を解析するように構成されたエントロピー復号化ユニットであって、初期動き情報は、第1の初期動きベクトルおよび第2の初期動きベクトルを含む、エントロピー復号化ユニットと、
現在の画像ブロックの予測ブロックを取得するための前に表された装置と、
現在の画像ブロックを、解析された差(残差など)と予測ブロックの和として再構築するように構成された画像再構築ユニットとを含む。
第14の態様によれば、開示は符号化デバイスに関し、
前に表された方法が有効化されるか、されないかを示すシンタックス要素の値を決定し、シンタックス要素を含むビットストリームを生成するように構成された1つまたは複数の処理回路を含む。
第14の態様それ自体による方法の可能な実装形態において、シンタックス要素は、シーケンスパラメータセット(SPS)レベル、ピクチャパラメータセット(PPS)レベル、スライスヘッダ、コーディングツリーユニット(CTU)シンタックス、またはコーディングユニット(CU)シンタックスのいずれか1つでシグナリングされる。
第14の態様の任意の先行する実装による方法の可能な実装形態または第14の態様それ自体において、シンタックス要素は、第1のフラグ(sps_conditional_dmvr_flag)および第2のフラグ(pps_conditional_dmvr_flag)を含み、
第1のフラグ(sps_conditional_dmvr_flag)が0に等しいならば、前に表された方法は、シーケンスの画像ブロックに対して実行されないか、
第1のフラグ(sps_conditional_dmvr_flag)が1に等しく、第2のフラグ(pps_conditional_dmvr_flag)が0に等しいならば、前に表された方法は、シーケンスのピクチャの画像ブロックに対して実行されないか、または
第1のフラグ(sps_conditional_dmvr_flag)が1に等しく、第2のフラグ(pps_conditional_dmvr_flag)が1に等しいならば、前に表された方法1は、シーケンスのピクチャの画像ブロックに対して実行される。
第15の態様によれば、開示は復号化デバイスに関し、
ビットストリームから、前に表された方法が有効化されるか、されないかを示すためのシンタックス要素を解析し、
シンタックス要素に従ってデコーダ側動きベクトル精緻化(DMVR)手順を適応的に有効化または無効化するように構成された1つまたは複数の処理回路を含む。
第15の態様それ自体による方法の可能な実装形態において、シンタックス要素は、ビットストリームのシーケンスパラメータセット(SPS)レベル、ビットストリームのピクチャパラメータセット(PPS)レベル、スライスヘッダ、コーディングツリーユニット(CTU)シンタックス、またはコーディングユニット(CU)シンタックスのいずれか1つから取得される。
第15の態様の任意の先行する実装による方法の可能な実装形態または第15の態様それ自体において、シンタックス要素は、第1のフラグ(sps_conditional_dmvr_flag)および第2のフラグ(pps_conditional_dmvr_flag)を含み、
第1のフラグ(sps_conditional_dmvr_flag)が0に等しいならば、前に表された方法は、シーケンスの画像ブロックに対して実行されないか、
第1のフラグ(sps_conditional_dmvr_flag)が1に等しく、第2のフラグ(pps_conditional_dmvr_flag)が0に等しいならば、前に表された方法は、シーケンスのピクチャの画像ブロックに対して実行されないか、または
第1のフラグ(sps_conditional_dmvr_flag)が1に等しく、第2のフラグ(pps_conditional_dmvr_flag)が1に等しいならば、前に表された方法は、シーケンスのピクチャの画像ブロックに対して実行される。
第16の態様によれば、開示は、プロセッサにおいて実行されたときに前に表された方法によるステップを実行するコンピュータ可読命令を記憶するコンピュータ可読媒体に関する。
第17の態様によれば、開示は、ビデオの現在のピクチャ内の現在の画像ブロックのインター予測のための方法に関し、方法は、
少なくとも1つの条件が満たされるかどうかを決定するステップであって、少なくとも1つの条件は、第1の時間的距離(TD0など)が、第2の時間的距離(TD1など)に等しいことを含み、第1の時間的距離は、現在のピクチャのピクチャ順序カウント値と第1の参照画像のピクチャ順序カウント値の間の差に関して表現され、第2の時間的距離は、第2の参照画像のピクチャ順序カウント値と現在のピクチャのピクチャ順序カウント値の間の差に関して表現される、ステップと、
少なくとも1つの条件が満たされたときに、現在の画像ブロックの予測ブロックを決定するためにデコーダ側動きベクトル精緻化(DMVR)手順を実行するステップとを含む。
第18の態様によれば、開示は、ビデオの現在のピクチャ内の現在の画像ブロックのインター予測のための方法に関し、方法は、
1つまたは複数の条件が満たされたときに、現在の画像ブロックのサブブロックに対する第1の精緻化された動きベクトルおよび第2の精緻化された動きベクトルを取得するために動きベクトル精緻化(DMVR)手順を実行するステップであって、第1の精緻化された動きベクトルは第1の参照ピクチャに対応し、第2の精緻化された動きベクトルは第2の参照ピクチャに対応する、ステップと、
現在の画像ブロックの予測ブロック(予測されたサンプル値など)を決定するステップであって、現在の画像ブロックの予測ブロックは、サブブロックの予測ブロックを含み、サブブロックの予測ブロックは、第1の精緻化された動きベクトルおよび第2の精緻化された動きベクトルに少なくとも一部基づいて決定される、ステップとを含み、
1つまたは複数の条件は、少なくとも、
第1の時間的距離(TD0など)が、第2の時間的距離(TD1など)に等しいことを含み、第1の時間的距離(TD0)は、現在のピクチャのピクチャ順序カウント値(POCc)と第1の参照画像のピクチャ順序カウント値(POC0)の間の差に関して表現され、第2の時間的距離(TD1)は、第2の参照ピクチャのピクチャ順序カウント値(POCc)と現在の画像のピクチャ順序カウント値(POC1)の間の差に関して表現される。
第15、第16、第17、および第18の態様の任意の先行する実装による方法の可能な実装形態または第15、第16、第17、および第18の態様それ自体において、第1の参照ピクチャは、現在のピクチャに時間的に先行する参照画像であり、第2の参照ピクチャは、現在のピクチャによって時間的に先行される参照画像であるか、または第1の参照ピクチャは、現在のピクチャによって時間的に先行される参照画像であり、第2の参照ピクチャは、現在のピクチャに時間的に先行する参照画像であるか、または
第1の参照ピクチャは過去の参照画像であり、第2の参照ピクチャは未来の参照画像であるか、または第1の参照ピクチャは未来の参照画像であり、第2の参照ピクチャは過去の参照画像である。
発明のいくつかの態様による方法は、本発明のいくつかの態様による装置によって実行されることが可能である。発明のいくつかの態様による方法のさらなる特徴および実装形態は、発明のいくつかの態様およびその異なる実装形態による装置の機能から直接に起因する。
コーディングデバイスは、符号化デバイスまたは復号化デバイスであり得ることが注記される。
他の態様によれば、発明は、ビデオストリームを復号化するための装置に関し、プロセッサとメモリとを含む。メモリは、前に表された方法をプロセッサに実行させる命令を記憶している。
他の態様によれば、発明は、ビデオストリームを符号化するための装置に関し、プロセッサとメモリとを含む。メモリは、前に表された方法をプロセッサに実行させる命令を記憶している。
別の態様によれば、実行されたときに1つまたは複数のプロセッサにビデオデータをコード化するように構成させる命令が格納されているコンピュータ可読記憶媒体が提案される。命令は、1つまたは複数のプロセッサに、前に表された方法を実行させる。
別の態様によれば、コンピュータプログラムがコンピュータにおいて動作するときに前に表された方法を実行するためのプログラムコードを有するコンピュータプログラム製品が提供される。
1つまたは複数の実施形態の詳細は、添付図面および以下の説明において述べられる。他の特徴、目的、および利点は、説明、図面、および請求項から明らかになるであろう。
明確さの目的のために、前述の実施形態のいずれか1つが他の前述の実施形態のいずれか1つまたは複数と組み合わされて、本開示の範囲内で新しい実施形態を作り出し得る。
これらおよび他の特徴は、添付図面および請求項と併せて用いられる、以下の詳細な説明からより明確に理解されるであろう。
この開示のより完全な理解のために、同様な参照符号は同様の部分を表現する、添付図面および詳細な説明と併せて用いられる、以下の簡単な説明への参照がここで行われる。
条件付きデコーダ側動きベクトル精緻化技術を利用し得る一例のコーディングシステムを例示するブロック図である。 条件付きデコーダ側動きベクトル精緻化技術を実現し得る一例のビデオエンコーダを例示するブロック図である。 条件付きデコーダ側動きベクトル精緻化技術を実現し得るビデオデコーダの一例を例示するブロック図である。 コーディングデバイスの概略図である。 符号化装置または復号化装置の一例を例示するブロック図である。 ビデオコーディングにおける条件付きデコーダ側動きベクトル精緻化に対する時間的距離の図式的な例示である。 デコーダ側動きベクトル精緻化(DMVR)手順の一例の図式的な例示である。 図6Bを参照してデコーダ側動きベクトル精緻化(DMVR)手順の一例を例示するフローチャートである。 デコーダ側動きベクトル精緻化(DMVR)手順の別の例を例示するフローチャートである。 符号化方法の一例を例示するフローチャートである。 復号化方法の一例を例示するフローチャートである。 ビデオの現在のピクチャ内の現在の画像ブロックのインター予測のための方法の一例を例示するフローチャートである。 ビデオの現在のピクチャ内の現在の画像ブロックのインター予測のための装置の例示の構造を表すブロック図である。 コンテンツ配信サービスを提供するコンテンツ供給システムの例示の構造を表すブロック図である。 端末デバイスの一例の構造を表すブロック図である。
最初に、1つまたは複数の実施形態の例示的な実装が以下に提供されているが、開示されたシステムおよび/または方法は、現在知られているか、または存在しているかに関わらず、任意の数の技術を使用して実現され得ることが理解されるべきである。開示は、ここで例示され、説明された例示的な設計および実装を含む、以下に例示された例示的な実装、図面、および技術に決して限定されるべきでないが、等価物の全範囲とともに付属の請求項の範囲内で修正され得る。
頭字語および語彙の定義
DMVR デコーダ側動きベクトル精緻化(Decoder Side Motion Vector Refinement)
SAD 絶対差の和(Sum of Absolute Differences)
MV 動きベクトル(Motion Vector)
MCP 動き補償予測(Motion Compensated Prediction)
HEVC 高効率ビデオコーディング(High Efficient Video Coding)
図1は、双方向予測技術を利用し得る例示のコーディングシステム10を例示するブロック図である。図1に表されたように、コーディングシステム10は、宛先デバイス14によって後で復号化されるべき符号化されたビデオデータを提供する供給元デバイス12を含む。特に、供給元デバイス12は、コンピュータ可読媒体16を介してビデオデータを宛先デバイス14に提供してよい。供給元デバイス12および宛先デバイス14は、デスクトップコンピュータ、ノートブック(すなわち、ラップトップ)コンピュータ、タブレットコンピュータ、セットトップボックス、いわゆる「スマート」フォンなどの電話ハンドセット、いわゆる「スマート」パッド、テレビ、カメラ、ディスプレイデバイス、デジタルメディアプレーヤー、ビデオゲームコンソール、ビデオストリーミングデバイス、または同様のものを含む、広い範囲のデバイスのうちのいずれかを含んでよい。いくつかの場合において、供給元デバイス12および宛先デバイス14は、ワイヤレス通信のために装備され得る。
宛先デバイス14は、コンピュータ可読媒体16を介して復号化されるべき符号化されたビデオデータを受信し得る。コンピュータ可読媒体16は、符号化されたビデオデータを供給元デバイス12から宛先デバイス14に移動することができる任意のタイプの媒体またはデバイスを含み得る。一例において、コンピュータ可読媒体16は、供給元デバイス12が符号化されたビデオデータを直接に宛先デバイス14にリアルタイムで伝送することを可能にするための通信媒体を含み得る。符号化されたビデオデータは、ワイヤレス通信プロトコルなどの、通信規格に従って変調され、宛先デバイス14に伝送され得る。通信媒体は、無線周波数(RF)スペクトルまたは1つまたは複数の物理的伝送線などの任意のワイヤレスまたは有線通信媒体を含み得る。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、またはインターネットなどのグローバルネットワークなどの、パケットを基にしたネットワークの一部を形成してよい。通信媒体は、ルーター、スイッチ、基地局、または供給元デバイス12から宛先デバイス14への通信を円滑にするために役立ち得る任意の他の設備を含み得る。
いくつかの例では、符号化されたデータは、出力インターフェース22から記憶デバイスに出力され得る。同様に、符号化されたデータは、入力インターフェースによって記憶デバイスからアクセスされ得る。記憶デバイスは、ハードドライブ、ブルーレイディスク、デジタルビデオディスク(DVD)、コンパクト・ディスク・リード・オンリー・メモリ(CD-ROM)、フラッシュメモリ、揮発性または不揮発性メモリ、または符号化されたビデオデータを記憶するための任意の他の適したデジタル記憶媒体などの、様々な分散型の、またはローカルでアクセスされるデータ記憶媒体のうちのいずれかを含み得る。さらなる例では、記憶デバイスは、供給元デバイス12によって生成された符号化されたビデオを記憶し得るファイルサーバまたは別の中間記憶デバイスに対応してよい。宛先デバイス14は、ストリーミングまたはダウンロードを介して記憶デバイスから記憶されたビデオデータにアクセスし得る。ファイルサーバは、符号化されたビデオデータを記憶し、その符号化されたビデオデータを宛先デバイス14に伝送することができる任意のタイプのサーバであってよい。例示のファイルサーバは、ウェブサーバ(たとえば、ウェブサイト用)、ファイル転送プロトコル(FTP)サーバ、ネットワーク接続型記憶(network attached storage, NAS)デバイス、またはローカルディスクドライブを含む。宛先デバイス14は、インターネット接続を含む、任意の規格のデータ接続を通じて符号化されたビデオデータにアクセスし得る。これは、ワイヤレスチャネル(たとえば、Wi-Fi接続)、有線接続(たとえば、デジタル加入者線(digital subscriber line, DSL)、ケーブルモデムなど)、またはファイルサーバにおいて記憶された符号化されたビデオデータにアクセスするために適した両方の組み合わせを含み得る。記憶デバイスからの符号化されたビデオデータの伝送は、ストリーミング伝送、ダウンロード伝送、またはこれらの組み合わせであってよい。
この開示の技術は、ワイヤレスアプリケーションまたは設定に必ずしも限定されない。技術は、地上波テレビ放送、ケーブルテレビ伝送、衛星テレビ伝送、HTTP上の動的適応ストリーミング(dynamic adaptive streaming over HTTP, DASH)などのインターネットストリーミングビデオ伝送、データ記憶媒体上に符号化されるデジタルビデオ、データ記憶媒体上に記憶されたデジタルビデオの復号化、または他のアプリケーションなどの様々なマルチメディアアプリケーションのうちのいずれかをサポートするビデオコーディングに適用され得る。いくつかの例において、コーディングシステム10は、ビデオストリーミング、ビデオ再生、ビデオ放送、および/またはビデオ電話などのアプリケーションをサポートするために一方向または二方向ビデオ伝送をサポートするように構成され得る。
図1の例では、供給元デバイス12は、ビデオ供給元18と、ビデオエンコーダ20と、出力インターフェース22とを含む。宛先デバイス14は、入力インターフェース28と、ビデオデコーダ30と、ディスプレイデバイス32とを含む。この開示によれば、供給元デバイス12のビデオエンコーダ20および/または宛先デバイス14のビデオデコーダ30は、双方向予測のために技術を適用するように構成され得る。他の例では、供給元デバイスおよび宛先デバイスは、他の構成要素または配置を含み得る。たとえば、供給元デバイス12は、外部カメラなどの、外部ビデオ供給元からビデオデータを受信し得る。同様に、宛先デバイス14は、統合されたディスプレイデバイスを含むのではなく、外部ディスプレイデバイスとインターフェースし得る。
図1の例示されたコーディングシステム10は、単に一例である。双方向予測のための技術は、任意のデジタルビデオ符号化および/または復号化デバイスによって実行され得る。この開示の技術は、一般に、ビデオコーディングデバイスによって実行されるが、技術は、典型的に「CODEC」と称されるビデオエンコーダ/デコーダによっても実行され得る。さらに、この開示の技術は、ビデオプリプロセッサによっても実行され得る。ビデオエンコーダおよび/またはデコーダは、グラフィックスプロセッシングユニット(GPU)または類似のデバイスであってもよい。
供給元デバイス12および宛先デバイス14は、供給元デバイス12が宛先デバイス14への伝送のためのコード化されたビデオデータを生成するそのようなコーディングデバイスの単に例である。いくつかの例において、供給元デバイス12および宛先デバイス14は、供給元デバイス12および宛先デバイス14の各々がビデオ符号化および復号化構成要素を含むように実質的に対称的な方式で動作し得る。従って、コーディングシステム10は、たとえば、ビデオストリーミング、ビデオ再生、ビデオ放送、またはビデオ電話のために、ビデオデバイス12、14の間の一方向または二方向のビデオ伝送をサポートし得る。
供給元デバイス12のビデオ供給元18は、ビデオカメラ、前にキャプチャされたビデオを含むビデオアーカイブ、および/またはビデオコンテンツプロバイダからビデオを受信するためのビデオフィードインターフェースなどの、ビデオキャプチャデバイスを含み得る。さらなる代替として、ビデオ供給元18は、コンピュータグラフィックスを基にしたデータを、供給元ビデオ、またはライブビデオ、アーカイブされたビデオ、およびコンピュータ生成されたビデオの組み合わせとして生成し得る。
いくつかの場合において、ビデオ供給元18がビデオカメラであるときに、供給元デバイス12および宛先デバイス14は、いわゆるカメラフォンまたはビデオフォンを形成し得る。しかしながら、上記で言及したように、この開示で説明される技術は、一般にビデオコーディングに適用可能であってよく、ワイヤレスおよび/または有線アプリケーションに適用されてよい。各々の場合において、キャプチャされた、事前キャプチャされた、またはコンピュータ生成されたビデオは、ビデオエンコーダ20によって符号化され得る。次いで、符号化されたビデオ情報は、出力インターフェース22によってコンピュータ可読媒体16上に出力され得る。
コンピュータ可読媒体16は、ワイヤレス放送または有線ネットワーク伝送などの、一時的媒体、またはハードディスク、フラッシュドライブ、コンパクトディスク、デジタルビデオディスク、ブルーレイディスク、または他のコンピュータ可読媒体などの、記憶媒体(すなわち、非一時的記憶媒体)を含み得る。いくつかの例では、ネットワークサーバ(表されていない)は、供給元デバイス12から符号化されたビデオデータを受信し、符号化されたビデオデータを、たとえば、ネットワーク伝送を介して、宛先デバイス14に提供し得る。同様に、ディスク圧縮成形設備などの、媒体生産設備のコンピューティングデバイスは、供給元デバイス12から符号化されたビデオデータを受信し、符号化されたビデオデータを含むディスクを作り出し得る。従って、コンピュータ可読媒体16は、様々な例において、様々な形態の1つまたは複数のコンピュータ可読媒体を含むと理解され得る。
宛先デバイス14の入力インターフェース28は、コンピュータ可読媒体16から情報を受信する。コンピュータ可読媒体16の情報は、ブロックおよび他のコード化されたユニット、たとえば、グループオブピクチャ(GOP)の特性および/または処理を記述するシンタックス要素を含む、ビデオデコーダ30によっても使用される、ビデオエンコーダ20によって定義されたシンタックス情報を含み得る。ディスプレイデバイス32は、復号化されたビデオデータをユーザに表示し、陰極線管(CRT)、液晶ディスプレイ(LCD)、プラズマディスプレイ、有機発光ダイオード(OLED)ディスプレイ、または別のタイプのディスプレイデバイスなどの、様々なディスプレイデバイスのうちのいずれかを含み得る。
ビデオエンコーダ20およびビデオデコーダ30は、現在開発中の高効率ビデオコーディング(HEVC)規格などの、ビデオコーディング規格に従って動作してよく、HEVCテストモデル(HM)に準拠してよい。代替的に、ビデオエンコーダ20およびビデオデコーダ30は、代替的にモーションピクチャエキスパートグループ(MPEG)-4、Part 10、アドバンストビデオコーディング(AVC)と称される国際電気通信連合電気通信標準化セクタ(ITU-T)H.264規格、H.265/HEVC、またはそのような規格の拡張などの、他の独自規格または業界規格に従って動作してよい。しかしながら、この開示の技術は、どの特定のコーディング規格にも限定されない。ビデオコーディング規格の他の例は、MPEG-2およびITU-T H.263を含む。図1に表されていないが、いくつかの態様において、ビデオエンコーダ20およびビデオデコーダ30は、各々、オーディオエンコーダおよびデコーダに統合されてよく、共通データストリームまたは別個のデータストリーム内のオーディオとビデオの両方の符号化を処理するために適切なマルチプレクサ・デマルチプレクサ(MUX-DEMUX)ユニット、または他のハードウェアおよびソフトウェアを含み得る。適用可能ならば、MUX-DEMUXユニットは、ITU H.223マルチプレクサプロトコル、またはユーザデータグラムプロトコル(UDP)などの他のプロトコルに準拠してよい。
ビデオエンコーダ20およびビデオデコーダ30は、各々、1つまたは複数のマイクロプロセッサ、デジタルシグナルプロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、個別のロジック、ソフトウェア、ハードウェア、ファームウェア、またはこれらの任意の組み合わせなどの、様々な適したエンコーダ回路のうちのいずれかとして実現されてよい。技術がソフトウェアで部分的に実現されるときに、デバイスは、ソフトウェアのための命令を適した非一時的コンピュータ可読媒体に記憶し、この開示の技術を実行するために、1つまたは複数のプロセッサを使用してハードウェアで命令を実行し得る。ビデオエンコーダ20およびビデオデコーダ30の各々は、1つまたは複数のエンコーダまたはデコーダに含まれてもよく、これらのいずれかが、それぞれのデバイス内に組み合わされたエンコーダ/デコーダ(コーデック)の一部として統合されてもよい。ビデオエンコーダ20および/またはビデオデコーダ30を含むデバイスは、集積回路、マイクロプロセッサ、および/または携帯電話などのワイヤレス通信デバイスを含んでよい。
図2は、双方向予測技術を実現し得るビデオエンコーダ20の一例を例示するブロック図である。ビデオエンコーダ20は、ビデオスライス内でビデオブロックのイントラおよびインターコーディングを実行し得る。イントラコーディングは、所与のビデオフレームまたはピクチャ内のビデオにおける空間的冗長性を低減または除去するために空間的予測に依存する。インターコーディングは、ビデオシーケンスの隣接フレームまたはピクチャ内のビデオにおける時間的冗長性を低減または除去するために時間的予測に依存する。イントラモード(Iモード)は、いくつかの空間を基にしたコーディングモードのうちのいずれかを指してよい。一方向予測(Pモード)または双予測(Bモード)などのインターモードは、いくつかの時間を基にしたコーディングモードのうちのいずれかを指してよい。
図2に表されたように、ビデオエンコーダ20は、符号化されるべきビデオフレーム内の現在のビデオブロックを受信する。図2の例において、ビデオエンコーダ20は、モード選択ユニット40と、参照フレームメモリ64と、加算器50と、変換処理ユニット52と、量子化ユニット54と、エントロピーコーディングユニット56とを含む。次いで、モード選択ユニット40は、動き補償ユニット44と、動き推定ユニット42と、イントラ予測ユニット46と、区分ユニット48とを含む。ビデオブロック再構築のために、ビデオエンコーダ20は、また、逆量子化ユニット58と、逆変換ユニット60と、加算器62とを含む。デブロッキングフィルタ(図2には表されていない)は、また、ブロック境界をフィルタ処理して、再構築されたビデオからブロックノイズアーチファクトを除去するために含まれ得る。望ましいならば、デブロッキングフィルタは、典型的には、加算器62の出力をフィルタ処理する。デブロッキングフィルタに加えて、追加のフィルタ(ループ内のまたはループ後の)も使用され得る。そのようなフィルタは、簡潔さのために表されていないが、望ましいならば、加算器50の出力をフィルタ処理してよい(ループ内フィルタとして)。
符号化プロセスの間に、ビデオエンコーダ20は、コード化されるべきビデオフレームまたはスライスを受信する。フレームまたはスライスは、複数のビデオブロックに分割され得る。動き推定ユニット42および動き補償ユニット44は、時間的予測を提供するために1つまたは複数の参照フレーム内の1つまたは複数のブロックに対して、受信されたビデオブロックのインター予測コーディングを実行する。イントラ予測ユニット46は、空間的予測を提供するためにコード化されるべきブロックと同じフレームまたはスライス内の1つまたは複数の近傍ブロックに対して、受信されたビデオブロックのイントラ予測コーディングを代替的に実行してもよい。ビデオエンコーダ20は、たとえば、ビデオデータの各ブロックについて適切なコーディングモードを選択するために、複数のコーディングパスを実行してよい。
さらに、区分ユニット48は、前のコーディングパスにおける前の区分方式の評価に基づいて、ビデオデータのブロックをサブブロックに区分し得る。たとえば、区分ユニット48は、最初に、フレームまたはスライスを最大コーディングユニット(LCU)に区分し、レート歪み解析(たとえば、レート歪み最適化)に基づいて、LCUの各々をサブコーディングユニット(サブCU)に区分し得る。モード選択ユニット40は、LCUのサブCUへの区分を示す四分木データ構造をさらに作り出し得る。四分木のリーフノードCUは、1つまたは複数の予測ユニット(PU)と1つまたは複数の変換ユニット(TU)とを含み得る。
本開示は、用語「ブロック」を使用して、HEVCの文脈におけるCU、PU、またはTUのいずれか、または他の規格の文脈における類似のデータ構造(たとえば、H.264/AVCにおけるマクロブロックおよびそのサブブロック)を指す。CUは、コーディングノード、PU、およびコーディングノードに関連付けられたTUを含む。CUのサイズは、コーディングノードのサイズに対応し、形状は正方形である。CUのサイズは、8×8ピクセルから、64×64ピクセルまたはより大きい最大値を有するツリーブロックのサイズまで及んでよい。各CUは、1つまたは複数のPUと1つまたは複数のTUとを含んでよい。CUに関連付けられたシンタックスデータは、たとえば、1つまたは複数のPUへのCUの区分を記述し得る。区分モードは、CUがスキップされているか、または直接モード符号化されているか、イントラ予測モード符号化されているか、またはインター予測モード符号化されているかの間で異なり得る。PUは、形状が非正方形であるように区分されてよい。CUに関連付けられたシンタックスデータは、また、たとえば、四分木により1つまたは複数のTUへのCUの区分を記述してよい。一実施形態において、CU、PU、またはTUは、形状が正方形または非正方形(たとえば、矩形)であることが可能である。
モード選択ユニット40は、たとえば、エラーの結果に基づいて、コーディングモードのうちの1つ、イントラまたはインターを選択してよく、結果として得られるイントラまたはインターコード化されたブロックを、残差ブロックデータを生成するため加算器50に、参照フレームとしての使用のために符号化されたブロックを再構築するために加算器62に提供する。モード選択ユニット40は、また、動きベクトル、イントラモードインジケータ、区分情報、および他のそのようなシンタックス情報などの、シンタックス要素をエントロピーコーディングユニット56に提供する。
動き推定ユニット42および動き補償ユニット44は、高度に統合されてもよいが、概念的な目的のために別々に例示される。動き推定ユニット42によって実行される動き推定は、ビデオブロックについての動きを推定する、動きベクトルを生成するプロセスである。動きベクトルは、たとえば、現在のフレーム(または他のコード化されたユニット)内でコード化されている現在のブロックに対する参照フレーム(または他のコード化されたユニット)内の予測ブロックに対する現在のビデオフレームまたはピクチャ内のビデオブロックのPUの変位を示し得る。予測ブロックは、絶対差の和(SAD)、平方差の和(SSD)、または他の差の計量によって決定され得る、ピクセル差に関する、コード化されるべきブロックとよく一致することが見出されたブロックである。いくつかの例において、ビデオエンコーダ20は、参照フレームバッファ64内に記憶された参照ピクチャの整数より下のピクセル位置についての値を計算してよい。たとえば、ビデオエンコーダ20は、参照ピクチャの1/4ピクセル位置、1/8ピクセル位置、または他の分数ピクセル位置の値を補間し得る。従って、動き推定ユニット42は、フルピクセル位置および分数ピクセル位置に対する動き探索を実行し、分数ピクセル精度で動きベクトルを出力してよい。
動き推定ユニット42は、PUの位置を参照ピクチャの予測ブロックの位置と比較することによって、インターコード化されたスライス内のビデオブロックのPUについての動きベクトルを計算する。参照ピクチャは、第1の参照ピクチャリスト(List 0)または第2の参照ピクチャリスト(List 1)から選択されてよく、各々が参照フレームメモリ64内に記憶された1つまたは複数の参照ピクチャを識別する。動き推定ユニット42は、計算された動きベクトルをエントロピー符号化ユニット56および動き補償ユニット44に送信する。
動き補償ユニット44によって実行される動き補償は、動き推定ユニット42によって決定された動きベクトルに基づいて予測ブロックをフェッチまたは生成することを伴い得る。再び、動き推定ユニット42および動き補償ユニット44は、いくつかの例において、機能的に統合され得る。現在のビデオブロックのPUのための動きベクトルを受信すると、動き補償ユニット44は、参照ピクチャリストのうちの1つにおいて動きベクトルが指し示す予測ブロックを位置特定し得る。加算器50は、以下で論じられるように、コード化されている現在のビデオブロックのピクセル値から予測ブロックのピクセル値を減算し、ピクセル差値を形成することによって残差ビデオブロックを形成する。一般に、動き推定ユニット42は、ルーマ成分に対して動き推定を実行し、動き補償ユニット44は、クロマ成分とルーマ成分の両方についてルーマ成分に基づいて計算された動きベクトルを使用する。モード選択ユニット40は、また、ビデオスライスのビデオブロックを復号化する際にビデオデコーダ30による使用のためにビデオブロックおよびビデオスライスに関連付けられたシンタックス要素を生成し得る。
イントラ予測ユニット46は、上記で説明されたように、動き推定ユニット42および動き補償ユニット44によって実行されるインター予測の代替として、現在のブロックをイントラ予測し得る。特に、イントラ予測ユニット46は、現在のブロックを符号化するために使用するイントラ予測モードを決定し得る。いくつかの例では、イントラ予測ユニット46は、たとえば、別個の符号化パスの間、様々なイントラ予測モードを使用して現在のブロックを符号化してよく、イントラ予測ユニット46(または、いくつかの例では、モード選択ユニット40)は、テストされたモードから使用するために適切なイントラ予測モードを選択してよい。
たとえば、イントラ予測ユニット46は、様々なテストされたイントラ予測モードに対してレート歪み解析を使用してレート歪み値を計算し、テストされたモードのうちの最良のレート歪み特性を有するイントラ予測モードを選択してよい。レート歪み解析は、一般に、符号化されたブロックと、符号化されたブロックを作り出すために符号化された元の符号化されていないブロックとの間の歪み(またはエラー)の量、ならびに符号化されたブロックを作り出すために使用されたビットレート(すなわち、ビットの数)を決定する。イントラ予測ユニット46は、様々な符号化されたブロックに対する歪みおよびレートから比を計算し、どのイントラ予測モードがブロックに対する最良のレート歪み値を示すかを決定し得る。
加えて、イントラ予測ユニット46は、深度モデリングモード(DMM)を使用して深度マップの深度ブロックをコード化するように構成され得る。モード選択ユニット40は、利用可能なDMMモードが、たとえば、レート歪み最適化(RDO)を使用して、イントラ予測モードおよび他のDMMモードより良好なコーディング結果を作り出すかどうかを決定し得る。深度マップに対応するテクスチャ画像に対するデータは、参照フレームメモリ64内に記憶され得る。動き推定ユニット42および動き補償ユニット44は、また、深度マップの深度ブロックをインター予測するように構成され得る。
ブロックに対するイントラ予測モード(たとえば、従来のイントラ予測モードまたはDMMモードのうちの1つ)を選択した後、イントラ予測ユニット46は、エントロピーコーディングユニット56にブロックに対する選択されたイントラ予測モードを示す情報を提供し得る。エントロピーコーディングユニット56は、選択されたイントラ予測モードを示す情報を符号化し得る。ビデオエンコーダ20は、複数のイントラ予測モードインデックステーブルおよび複数の修正されたイントラ予測モードインデックステーブル(コードワードマッピングテーブルとも称される)を含み得る、伝送されるビットストリーム構成データ内に、コンテキストの各々のために使用する、様々なブロックのためのコンテキストを符号化する定義と、最もあり得るイントラ予測モードの指示と、イントラ予測モードインデックステーブルと、修正されたイントラ予測モードインデックステーブルとを含み得る。
ビデオエンコーダ20は、モード選択ユニット40からの予測データをコード化されている元のビデオブロックから減算することによって残差ビデオブロックを形成する。加算器50は、この減算動作を実行する1つまたは複数の構成要素を表現する。
変換処理ユニット52は、離散コサイン変換(DCT)または概念的に類似する変換などの変換を残差ブロックに適用し、残差変換係数値を含むビデオブロックを作り出す。変換処理ユニット52は、DCTと概念的に類似する他の変換を実行してよい。ウエーブレット変換、整数変換、サブバンド変換、または他のタイプの変換が使用されることも可能である。
変換処理ユニット52は、残差ブロックに変換を適用して、残差変換係数のブロックを作り出す。変換は、残差情報をピクセル値領域から周波数領域などの変換領域に変換し得る。変換処理ユニット52は、結果として得られる変換係数を量子化ユニット54に送信し得る。量子化ユニット54は、変換係数を量子化してビットレートをさらに低減する。量子化プロセスは、係数のいくつかまたは全てに関連付けられたビット深度を低減し得る。量子化の程度は、量子化パラメータを調整することによって修正され得る。いくつかの例では、量子化ユニット54は、次いで、量子化された変換係数を含む行列の走査を実行し得る。代替的に、エントロピー符号化ユニット56が走査を実行してよい。
量子化に続いて、エントロピーコーディングユニット56は、量子化された変換係数をエントロピーコード化する。たとえば、エントロピーコーディングユニット56は、コンテキスト適応可変長コーディング(context adaptive variable length coding, CAVLC)、コンテキスト適応2進算術コーディング(context adaptive binary arithmetic coding, CABAC)、シンタックスを基にしたコンテキスト適応2進算術コーディング(syntax-based context-adaptive binary arithmetic coding, SBAC)、確率間隔区分エントロピー(probability interval partitioning entropy, PIPE)コーディング、または別のエントロピーコーディング技術を実行し得る。コンテキストを基にしたエントロピーコーディングの場合、コンテキストは、近傍ブロックに基づき得る。エントロピーコーディングユニット56によるエントロピーコーディングに続いて、符号化されたビットストリームは、別のデバイス(たとえば、ビデオデコーダ30)に伝送されるか、または後の伝送または取り出しのためにアーカイブされ得る。
逆量子化ユニット58および逆変換ユニット60は、逆量子化と逆変換とを、それぞれ適用して、ピクセル領域内に残差ブロックを、たとえば、参照ブロックとしての後の使用のために再構築する。動き補償ユニット44は、残差ブロックを参照フレームメモリ64のフレームのうちの1つの予測ブロックに加えることによって参照ブロックを計算し得る。動き補償ユニット44は、また、動き推定における使用のために整数より下のピクセル値を計算するために、再構築された残差ブロックに1つまたは複数の補間フィルタを適用してよい。加算器62は、再構築された残差ブロックを動き補償ユニット44によって作り出された動き補償された予測ブロックに加えて、参照フレームメモリ64内の記憶のために再構築されたビデオブロックを作り出す。再構築されたビデオブロックは、動き推定ユニット42および動き補償ユニット44によって、後続のビデオフレーム内のブロックをインターコード化するために参照ブロックとして使用され得る。
ビデオエンコーダ20の他の構造的変形は、ビデオストリームを符号化するために使用されることが可能である。たとえば、非変換を基にしたエンコーダ20は、あるブロックまたはフレームに対して、変換処理ユニット52なしで、残差信号を直接に量子化することができる。別の実装において、エンコーダ20は、単一のユニットに組み合わされた量子化ユニット54および逆量子化ユニット58を有することができる。
図3は、双方向予測技術を実現し得るビデオデコーダ30の一例を例示するブロック図である。図3の例において、ビデオデコーダ30は、エントロピー復号化ユニット70と、動き補償ユニット72と、イントラ予測ユニット74と、逆量子化ユニット76と、逆変換ユニット78と、参照フレームメモリ82と、加算器80とを含む。ビデオデコーダ30は、いくつかの例において、ビデオエンコーダ20(図2)に関して説明された符号化パスに一般に逆の復号化パスを実行し得る。動き補償ユニット72は、エントロピー復号化ユニット70から受信された動きベクトルに基づいて予測データを生成し得るが、イントラ予測ユニット74は、エントロピー復号化ユニット70から受信されたイントラ予測モードインジケータに基づいて予測データを生成し得る。
復号化プロセスの間、ビデオデコーダ30は、ビデオエンコーダ20から符号化されたビデオスライスのビデオブロックおよび関連付けられたシンタックス要素を表現する符号化されたビデオビットストリームを受信する。ビデオデコーダ30のエントロピー復号化ユニット70は、ビットストリームをエントロピー復号化して、量子化された係数と、動きベクトルまたはイントラ予測モードインジケータと、他のシンタックス要素とを生成する。エントロピー復号化ユニット70は、動きベクトルおよび他のシンタックス要素を動き補償ユニット72に転送する。ビデオデコーダ30は、ビデオスライスレベルおよび/またはビデオブロックレベルにおいてシンタックス要素を受信し得る。
ビデオスライスがイントラコード化された(I)スライスとしてコード化されるときに、イントラ予測ユニット74は、シグナリングされたイントラ予測モードと、現在のフレームまたはピクチャの前に復号化されたブロックからのデータとに基づいて現在のビデオスライスのビデオブロックに対する予測データを生成し得る。ビデオフレームが、インターコード化された(すなわち、B、P、またはGPB)スライスとしてコード化されたときに、動き補償ユニット72は、エントロピー復号化ユニット70から受信された動きベクトルおよび他のシンタックス要素に基づいて現在のビデオスライスのビデオブロックに対する予測ブロックを作り出す。予測ブロックは、参照ピクチャリストのうちの1つの中の参照ピクチャのうちの1つから作り出され得る。ビデオデコーダ30は、参照フレームメモリ82内に記憶された参照ピクチャに基づいて、デフォルトの構築技術を使用して、参照フレームリスト、List 0およびList 1を構築し得る。
動き補償ユニット72は、動きベクトルおよび他のシンタックス要素を解析することによって、現在のビデオスライスのビデオブロックのための予測情報を決定し、復号化されている現在のビデオブロックのための予測ブロックを作り出すために予測情報を使用する。たとえば、動き補償ユニット72は、ビデオスライスのビデオブロックをコード化するために使用された予測モード(たとえば、イントラまたはインター予測)と、インター予測スライスタイプ(たとえば、Bスライス、Pスライス、またはGPBスライス)と、スライスのための参照ピクチャリストのうちの1つまたは複数のための構築情報と、スライスの各々のインター符号化されたビデオブロックのための動きベクトルと、スライスの各々のインターコード化されたビデオブロックのためのインター予測ステータスと、現在のビデオスライス内のビデオブロックを復号化するための他の情報とを決定するために、受信されたシンタックス要素のいくつかを使用する。
動き補償ユニット72は、また、補間フィルタに基づいて補間を実行してよい。動き補償ユニット72は、参照ブロックの整数より下のピクセルについての補間された値を計算するために、ビデオブロックの符号化の間にビデオエンコーダ20によって使用されるように補間フィルタを使用し得る。この場合、動き補償ユニット72は、受信されたシンタックス要素からビデオエンコーダ20によって使用される補間フィルタを決定し、補間フィルタを使用して予測ブロックを作り出し得る。
深度マップに対応するテクスチャ画像についてのデータは、参照フレームメモリ82内に記憶され得る。動き補償ユニット72は、また、深度マップの深度ブロックをインター予測するように構成され得る。
当業者によって理解されるであろうように、図1のコーディングシステム10は、様々なビデオコーディングまたは圧縮技術を実現するために適している。インター予測、イントラ予測、およびループフィルタなどのいくつかのビデオ圧縮技術は、有効であることが実証されている。従って、ビデオ圧縮技術は、H.264/AVCおよびH.265/HEVCなどの様々なビデオコーディング規格に採用されてきた。
適応動きベクトル予測(AMVP)およびマージモード(MERGE)などの様々なコーディングツールが、動きベクトル(MV)を予測するために使用され、インター予測効率、従って全体的なビデオ圧縮効率を高める。
上記で注記されたMVは、双予測において利用される。双予測動作では、2つの予測ブロックが形成される。1つの予測ブロックは、list0のMV(ここではMV0と称される)を使用して形成される。別の予測ブロックは、list1のMV(ここではMV1と称される)を使用して形成される。次いで、2つの予測ブロックは、単一の予測信号(たとえば、予測ブロックまたは予測子ブロック)を形成するために、組み合わされる(たとえば、平均化される)。
ビデオデコーダ30の他の変形は、圧縮されたビットストリームを復号化するために使用されることが可能である。たとえば、デコーダ30は、ループフィルタリングユニットなしで出力ビデオストリームを作り出すことができる。たとえば、非変換を基にしたデコーダ30は、あるブロックまたはフレームに対して、逆変換処理ユニット78なしで、残差信号を直接に逆量子化することができる。別の実装において、ビデオデコーダ30は、単一のユニットに組み合わせた逆量子化ユニット76および逆変換処理ユニット78を有することができる。
図5は、開示の実施形態による、コーディングデバイス500の概略図である。コーディングデバイス500は、ここで説明されたような開示された実施形態を実現するために適している。実施形態において、コーディングデバイス500は、図1のビデオデコーダ30などのデコーダ、または図1のビデオエンコーダ20などのエンコーダであってよい。実施形態において、コーディングデバイス500は、上記で説明されたような図1のビデオデコーダ30または図1のビデオエンコーダ20の1つまたは複数の構成要素であってよい。
コーディングデバイス500は、データを受信するための入口ポート510および受信機ユニット(Rx)520と、データを処理するためのプロセッサ、ロジックユニット、または中央処理ユニット(CPU)530と、データを伝送するための送信機ユニット(Tx)540および出口ポート550と、データを記憶するためのメモリ560とを含む。コーディングデバイス500は、また、光または電気信号の出口または入口のための、入口ポート510、受信機ユニット520、送信機ユニット540、および出口ポート550に結合された光・電気(OE)構成要素および電気・光(EO)構成要素を含み得る。
プロセッサ530は、ハードウェアおよびソフトウェアによって実現される。プロセッサ530は、1つまたは複数のCPUチップ、コア(たとえば、マルチコアプロセッサとして)、FPGA、ASIC、およびDSPとして実現されてもよい。プロセッサ530は、入口ポート510、受信機ユニット520、送信機ユニット540、出口ポート550、およびメモリ560と通信する。プロセッサ530は、コーディングモジュール570を含む。コーディングモジュール570は、上記で説明された開示された実施形態を実現する。たとえば、コーディングモジュール570は、様々なコーディング動作を実現し、処理し、準備し、または提供する。従って、コーディングモジュール570の包含は、コーディングデバイス500の機能に実質的な改善を提供し、コーディングデバイス500の異なる状態への変換に影響を与える。代替的に、コーディングモジュール570は、メモリ560に記憶され、プロセッサ530によって実行される命令として実現される。
メモリ560は、1つまたは複数のディスク、テープドライブ、およびソリッドステートドライブを含み、そのようなプログラムが実行のために選択されたときにプログラムを記憶し、プログラムの実行の間に読み出される命令およびデータを記憶するために、オーバーフローデータ記憶デバイスとして使用され得る。メモリ560は、揮発性および/または不揮発性であってよく、リード・オンリー・メモリ(ROM)、ランダム・アクセス・メモリ(RAM)、三値連想メモリ(TCAM)、および/またはスタティック・ランダム・アクセス・メモリ(SRAM)であってよい。
図4は、例示的な実施形態による、図1Aからの供給元デバイス12および宛先デバイス14のいずれかまたは両方として使用され得る装置1000の単純化されたブロック図である。装置1000は、この本出願の技術を実現することができる。装置1000は、複数のコンピューティングデバイスを含むコンピューティングシステムの形態であるか、または単一のコンピューティングデバイス、たとえば、携帯電話、タブレットコンピュータ、ラップトップコンピュータ、ノートブックコンピュータ、デスクトップコンピュータ、および同様のもの形態であることが可能である。
装置1000内のプロセッサ1002は、中央処理ユニットであることが可能である。代替的に、プロセッサ1002は、現在存在しているまたは今後開発される情報を操作または処理することができる、任意の他のタイプのデバイスまたは複数のデバイスであることが可能である。開示された実装は、表されたような単一のプロセッサ、たとえば、プロセッサ1002を用いて実施されることが可能であるが、速度および効率における利点は、1つより多くのプロセッサを使用して達成されることが可能である。
装置1000内のメモリ1004は、一実装においてリード・オンリー・メモリ(ROM)デバイスまたはランダム・アクセス・メモリ(RAM)であることが可能である。任意の他の適したタイプの記憶デバイスは、メモリ1004として使用されることが可能である。メモリ1004は、バス1012を使用してプロセッサ1002によってアクセスされるコードおよびデータ1006を含むことができる。メモリ1004は、オペレーティングシステム1008およびアプリケーションプログラム1010をさらに含むことが可能であり、アプリケーションプログラム1010はプロセッサ1002がここで説明された方法を実行することを可能にする少なくとも1つのプログラムを含む。たとえば、アプリケーションプログラム1010は、アプリケーション1からNを含むことが可能であり、これらはここで説明される方法を実行するビデオコーディングアプリケーションをさらに含む。装置1000は、また、二次記憶1014の形態の追加のメモリを含むことが可能であり、これは、たとえば、モバイルコンピューティングデバイスとともに使用されるメモリカードであることが可能である。ビデオ通信セッションは、かなりの量の情報を含み得るので、それらは、その全部または一部が二次記憶1014に記憶され、処理のため必要とされるときにメモリ1004にロードされることが可能である。
装置1000は、また、ディスプレイ1018などの、1つまたは複数の出力デバイスを含むことができる。ディスプレイ1018は、一例において、タッチ入力を感知するように動作可能であるタッチ感知要素とディスプレイを組み合わせたタッチ感知ディスプレイであってよい。ディスプレイ1018は、バス1012を介してプロセッサ1002に結合されることが可能である。ユーザが装置1000をプログラムするか、または他のやり方で使用することを可能にする他の出力デバイスが、ディスプレイ1018に加えて、またはその代替として提供されることが可能である。出力デバイスがディスプレイであるか、またはディスプレイを含むときに、ディスプレイは、液晶ディスプレイ(LCD)、陰極線管(CRT)ディスプレイ、プラズマディスプレイ、または有機LED(OLED)ディスプレイなどの発光ダイオード(LED)ディスプレイを含む様々なやり方で実現されることが可能である。
装置1000は、また、画像感知デバイス1020、たとえば、カメラ、または装置1000を動作させるユーザの画像などの画像を感知することができる現在存在しているかまたは今後開発される任意の他の画像感知デバイス1020を含むか、またはそれらと通信することができる。画像感知デバイス1020は、それが装置1000を動作させるユーザに向けられるように位置決めされることが可能である。一例では、画像感知デバイス1020の位置および光軸は、視野が、ディスプレイ1018に直接隣接し、ディスプレイ1018が見える領域を含むように構成されることが可能である。
装置1000は、また、音感知デバイス1022、たとえば、マイクロフォン、または装置1000の近くの音を感知することができる現在存在しているかまたは今後開発される任意の他の音感知デバイスを含むか、またはそれらと通信することができる。音感知デバイス1022は、装置1000を動作させるユーザに向けられるように位置決めされることが可能であり、ユーザが装置1000を動作させる間にユーザによって作られる音、たとえば、発言または他の発声を受信するように構成されることが可能である。
図4は、装置1000のプロセッサ1002およびメモリ1004が単一のユニットに統合されているように描画しているが、他の構成が利用されることが可能である。プロセッサ1002の動作は、直接に、またはローカルエリアのまたは他のネットワークを横断して結合されることが可能である複数のマシン(各マシンは1つまたは複数のプロセッサを有する)を横断して分散されることが可能である。メモリ1004は、ネットワークを基にしたメモリまたは装置1000の動作を実行する複数のマシン内のメモリなど、複数のマシンを横断して分散されることが可能である。ここでは単一のバスとして描画されているが、装置1000のバス1012は複数のバスで構成されることが可能である。さらに、二次記憶1014は、装置1000の他の構成要素に直接に結合されることが可能であり、またはネットワークを介してアクセスされることが可能であり、メモリカードなどの単一の統合されたユニットまたは複数のメモリカードなどの複数のユニットを含むことが可能である。従って、装置1000は、広く様々な構成で実現されることが可能である。
ビデオ圧縮において、インター予測は、現在のブロックに対して動きベクトルを指定することによって、以前に復号化された参照ピクチャの再構築されたサンプルを使用するプロセスである。これらの動きベクトルは、空間的または時間的動きベクトル予測子を使用することによって予測残差としてコード化されることが可能である。動きベクトルは、サブピクセルの精度であることが可能である。再構築された整数位置の値から参照フレーム内のサブピクセル精度のピクセル値を導出するために、補間フィルタが適用される。双予測は、現在のブロックに対する予測が2つの参照ピクチャ領域からの2つの動きベクトルを使用して導出された2つの予測ブロックの重み付けされた組み合わせとして導出されるプロセスを指す。この場合、動きベクトルに加えて、2つの予測ブロックが導出される参照ピクチャに対する参照インデックスもコード化される必要がある。現在のブロックに対する動きベクトルは、また、どの動きベクトルの残差もコード化することなく空間近傍の動きベクトルおよび参照インデックスが継承されるマージプロセスを通じて導出されることが可能である。空間的近傍に加えて、前にコード化された参照フレームの動きベクトルも保存され、現在のブロックについての参照フレームへの距離に対して参照フレームへの距離を考慮するために動きベクトルの適切なスケーリングとともに時間的マージオプションとして使用される。
動きベクトル残差コーディングビットがさらに低減されることが可能であるようにデコーダ側動きベクトル精緻化または導出を実行するためのいくつかの方法が提案されてきた。
バイラテラルマッチング(BM)法と呼ばれる方法のクラスでは、現在のCUの動き情報は、2つの異なる参照ピクチャ内の現在のCUの動き軌跡に沿った2つのブロックの間で最も近い一致を見出すことによって導出される。これは、図6Aに表されている。連続的な動き軌跡の仮定の下で、2つの参照ブロックを指し示す動きベクトルMV0およびMV1は、現在のピクチャと2つの参照ピクチャの間の時間的距離、すなわちTD0およびTD1に比例するものとする。
バイラテラルマッチングマージモードでは、CUの動き情報が、2つの異なる参照ピクチャ内の現在のCUの動き軌跡に沿った2つのブロック間の最も近い一致に基づいて導出されるので双予測が常に適用される。
テンプレートマッチングマージまたはバイラテラルマッチングマージを示すための明示的なマージモードは、これらのモードを、どのデコーダ側動きベクトル導出も必要としないデフォルトのマージモードから区別するためにシグナリングされることが可能である。
いくつかの例では、時間的距離は無視され、バイラテラルマッチングは、過去および未来の参照フレームにおける等しい大きさおよび反対の符号を有する動きベクトルを使用して実行される。
いくつかの例では、マージインデックスはシグナリングされないが、他の例では、複数の動き補償を実行するデコーダの複雑さを単純化するために、明示的なマージインデックスがシグナリングされる。
図6Bは、DMVR法400の一例の図式的な例示である。一例では、DMVR方法400は、現在のピクチャ404内の現在のブロック402で始まる。一例では、現在のブロック402は、形状が正方形または非正方形であってよい。現在のピクチャ404は、また、現在の領域、画像、タイルなどと称されてもよい。図6Bに表されたように、MV0は、第1の参照ピクチャ408内の第1の参照ブロック(第1の初期参照ブロックも指す)406を指し示し、MV1は、第2の参照ピクチャ412内の第2の参照ブロック(第2の初期参照ブロックも指す)410を指し示す。一例において、第1の参照ブロック406は、時間、シーケンス、復号化順序、またはいくつかの他のパラメータにおいて現在のブロック402の先にある。一例において、第2の参照ブロック410は、時間、シーケンス、復号化順序、またはいくつかの他のパラメータにおいて現在のブロック402の先にある。第1の参照ブロック406および第2の参照ブロック410は、ここでは初期参照ブロックと称され得る。
第1の参照ブロック406および第2の参照ブロック410は、組み合わされて、バイラテラルテンプレートブロック414を形成する。一例において、第1の参照ブロック406および第2の参照ブロック410は、バイラテラルテンプレートブロック414を生成するために一緒に平均化される。一例では、バイラテラルテンプレートブロック414は、第1の参照ブロック406および第2の参照ブロック410の重み付けされた組み合わせとして生成される。
いったんバイラテラルテンプレートブロック414が生成されると、テンプレートマッチング動作が実行される。テンプレートマッチング動作は、バイラテラルテンプレートブロック414と、第1の参照ブロック406の周りのサンプル領域内の各候補参照ブロックとの間の第1のコスト、およびバイラテラルテンプレートブロック414と、第2の参照ブロック410の周りのサンプル領域内の各候補参照ブロックとの間の第2のコストを計算することを伴う。一例において、対応する最低コスト(たとえば、最小テンプレートコスト)をもたらす潜在的参照ブロックは、各サンプル領域内のどの参照ブロックが精緻化された参照ブロック(別名、改訂された参照ブロック)としての役割を果たすかを決定する。一例において、第1および第2のコストは、SADを使用して決定される。他のコスト尺度は、実際のアプリケーションで利用され得る。
図6Bの例において、MV0'によって指し示される第1の参照ピクチャ408内の第1の精緻化された参照ブロック416は、結果として最低の第1のコストになり、MV1'によって指し示される第2の参照ピクチャ412内の第2の精緻化された参照ブロック418は、最低の第2のコストをもたらした。一例において、第1の精緻化された参照ブロック416および第2の精緻化された参照ブロック418は、それぞれ、第1の参照ブロック406および第2の参照ブロック410を置き換える。
その後、第1の精緻化された参照ブロック416および第2の精緻化された参照ブロック418を使用して、予測ブロックが生成される。予測ブロック420は、予測子ブロックまたは最終双予測結果と称され得る。いったん生成されると、予測ブロック420は、電子デバイス(たとえば、スマートフォン、タブレットデバイス、ラップトップコンピュータなど)のディスプレイにおける表示のための画像を生成するために使用され得る。
DMVR法400は、追加のシンタックス要素を伝送する必要なく、過去の参照ピクチャからの1つのMVおよび未来の参照ピクチャからの別のものを用いて双予測のマージモードに対して適用され得る。共同探索モデル(Joint Exploration Model, JEM)参照ソフトウェアにおいて局所的照度補償(local illumination compensation, LIC)、アフィン動き、フレームレート・アップコンバージョン(FRUC)、またはCUマージ候補がCUに対して有効化されているときには、DMVR法400は適用されない。
JEM参照ソフトウェアでは、参照ピクチャ内の各参照ブロックに対して(たとえば、各リストに対して、たとえばlist 0またはlist 1に対して)、9個のMV候補(9個の参照ブロック候補を指し示すことになる)が探索される。9個のMV候補は、参照ブロック(すなわち、初期参照ブロック、たとえば、参照ブロック406または参照ブロック410)を指し示す元のMV(すなわち、初期MV、たとえば、初期MV0または初期MV1)と、水平方向、垂直方向、または両方のいずれかにおいて元のMVに対する1つのルーマサンプルオフセットを有する参照ブロックの周りの参照ブロックを指し示す8つのMVとを含む。しかしながら、元のMVに対する1つのルーマサンプルオフセットを有するMV候補を使用することは、最良のMV候補を提供しないことがある。
例示の方法において、バイラテラルテンプレートマッチングを基にしたデコーダ側動きベクトル精緻化(DMVR)法が提供され、明示的にシグナリングされるマージ候補インデックスから取得されるL0およびL1参照における参照ブロックを使用して、最初に両側で平均化されたテンプレートが作り出され、このテンプレートに対してバイラテラルマッチングが実行される。これは、図6Bおよび図6Cに例示されている。初期動きベクトルによって参照される初期参照ブロック(406、410)と、最新の最良の動きベクトルによって参照される参照ブロック(416、418)との間に何か移動があるならば、テンプレートは更新される。また、いくつかの例において、精緻化は1つの参照において実行され、他の参照における動きベクトルは、この精緻化された動きベクトルをミラーリングすることを通じて取得される。中心位置が最小のマッチング誤差を有するか、または最大の反復数が到達されるかのいずれかまで、精緻化は、2つの参照の間で交互する。
図6Cは、コーディング方法600の一例を例示するフローチャートである。一例において、コーディング方法600は、図1のビデオデコーダ30などのデコーダにおいて実現される。コーディング方法600は、たとえば、図1のビデオエンコーダ20などのエンコーダから受信されたビットストリームが、電子デバイスのディスプレイにおいて表示されるべき画像を生成するために復号化されるべきであるときに実現され得る。コーディング方法600は、また、図1のビデオエンコーダ20などのエンコーダにおいて実現されてもよい。コーディング方法600は、図6Bにおいて識別された要素を参照して説明される。
ブロック602において、第1の参照ピクチャ(たとえば、参照ピクチャ408)内の第1の参照ブロック(たとえば、参照ブロック406)は、現在のピクチャ(たとえば、現在のピクチャ404)内の現在のブロック(たとえば、現在のブロック402)に対応する第1の動きベクトル(たとえば、MV0)に基づいて決定される。
ブロック604において、第2の参照ピクチャ(たとえば、参照ピクチャ412)内の第2の参照ブロック(たとえば、参照ブロック410)は、現在のピクチャ(たとえば、現在のピクチャ604)内の現在のブロック(たとえば、現在のブロック402)に対応する第2の動きベクトル(たとえば、MV1)に基づいて決定される。
ブロック606において、バイラテラル参照ブロック(たとえば、バイラテラル参照ブロック414)が、第1の参照ブロックおよび第2の参照ブロックに基づいて生成される。一例において、バイラテラル参照ブロックは、第1の参照ブロックおよび第2の参照ブロックの重み付けされた平均を使用して取得される。
ブロック608において、バイラテラル参照ブロックと、第1の参照ピクチャ内の複数の第1の参照ブロック候補の各々との間のコスト比較が実行される。第1の参照ブロック候補は、たとえば、第1の参照ピクチャ408内の第1の参照ブロック406を囲む様々な参照ブロックであってよい。コスト比較は、第1の精緻化された動きベクトル(たとえば、MV0')を決定するために使用される。一例において、第1の参照ブロック候補は、複数の利用可能なステップサイズ(たとえば、1/8、1/4、1/2、1など)から選択されたステップサイズに基づいて決定される。
ブロック610において、バイラテラル参照ブロックと、第2の参照ピクチャ内の複数の第2の参照ブロック候補の各々との間のコスト比較が実行される。第2の参照ブロック候補は、たとえば、第2の参照ピクチャ412内の第2の参照ブロック410を囲む様々な参照ブロックであってよい。コスト比較は、第2の精緻化された動きベクトル(たとえば、MV1')を決定するために使用される。一例において、第2の参照ブロック候補は、複数の利用可能なステップサイズ(たとえば、1/8、1/4、1/2、1など)から選択されたステップサイズに基づいて決定される。
ブロック612において、第1の参照ピクチャ内の第1の精緻化された参照ブロック(たとえば、精緻化された参照ブロック416)が、第1の精緻化された動きベクトルに基づいて選択され、第2の参照ピクチャ内の第2の精緻化された参照ブロック(たとえば、精緻化された参照ブロック418)が、第2の精緻化された動きベクトルに基づいて選択される。
ブロック614において、予測ブロック(たとえば、予測ブロック420)は、第1の精緻化された参照ブロックおよび第2の精緻化された参照ブロックに基づいて決定される。
ブロック616において、予測ブロックを使用して生成された画像は、電子デバイスのディスプレイにおいて表示される。
精緻化の方法のいくつかの例において、CUレベルの精緻化が最初に実行される。次いで、サブCU(すなわち、サブブロック)レベルの複数の候補評価が、CUレベルの精緻化されたMVを複数の候補として使用して実行される。任意選択で、各サブCUは、最良マッチング候補に関してそれ自体の精緻化を実行することができる。別の例では、CUレベルの精緻化は実行されず、各サブCUがそれ自体の精緻化を実行することができる。
いくつかのコスト関数は、動きベクトル精緻化距離をバイアス項として使用する。
暗黙のデコーダ側導出または精緻化プロセスを仮定すると、エンコーダは、エンコーダ側再構築がデコーダ側再構築と一致するようにデコーダとまったく同じ方式でこれらのステップを実行する必要がある。
典型的には、ルーマサンプルのみが、デコーダ側動きベクトル精緻化または導出プロセスの間に使用される。しかしながら、いくつかの場合において、クロミナンスも、ルーマ動き補償のために使用されるような最終的な精緻化動きベクトル(任意のクロマダウンサンプリングを考慮して適切にスケーリングされる)を使用して動き補償される。
デコーダ側における動きベクトル精緻化のための他の1つの技術は、双方向オプティカルフロー(BIO)技術と呼ばれる。この方法では、動き補償された補間は、コーディングユニットに関連付けられた参照インデックスおよび動きベクトルによって示される2つの参照フレームからのサンプルを使用する規範的な動き補償法を使用して所与のコーディングユニットに対して実行される。加えて、サブピクセル精度の位置における水平および垂直の勾配は、動き補償のために使用される参照サンプルから、または動き補償されたサンプルそれ自体を使用して、評価される。コーディングユニットは、均一なサイズのサブブロックに区分され、サブブロックサイズは、1×1ピクセル、2×2ピクセル、4×4ピクセルなどとすることができる。現在のフレーム内のサブブロックのサンプル値predBIOの推定値を生成するために参照フレームに関連付けられた様々な値に関するオプティカルフローを基にした式は、以下で式(1)において提供される。式(1)において、(vx, vy)は、参照フレームL0から現在のフレームへ、次いで参照フレームL1へのサブブロックのフローを表現する。Gx0およびGy0は、それぞれ、L0における水平および垂直方向における勾配を表現する。Gx1およびGy1は、それぞれ、L1における水平および垂直方向における勾配を表現する。I0およびI1は、それぞれ、L0およびL1における2つの参照パッチの強度値を表現する。τ1およびτ0は、それぞれ、参照フレームL0およびL1への現在のフレームの距離を表記する。τ0=POC(current)-POC(Ref0)、τ1=POC(Ref1)-POC(current)。
predBIO=1/2(I0+I1+vx/2(τ1Gx1-τ0Gx0)+vy/2*(τ1Gy1-τ0Gy0)) (1)
各時間間隔における個々のフロー式を用いて、L0サンプルを使用する予測子(すなわち、サブブロックの予測されたサンプル値)とL1サンプルを使用する予測子の間の差は、
Δ=(I0-I1)+vx(τ1Gx1+τ0Gx0)+vy(τ1Gy1+τ0Gy0)
と書かれることが可能である。
差Δを最小化することによって、vxおよびvyの推定値が取得されることが可能である。たとえば、vxおよびvyに関して差Δの二乗の偏微分を行い、その偏微分をゼロに設定することによって、サブブロック内のサンプルについて、およびサブブロックに隣接するサンプルについて、未知数としてvxおよびvyを有する式が取得される。この一組の過度に制約された式は、vxおよびvyの推定値を取得するために最小二乗を通じて解かれることが可能である。上記で言及した式Eqn.(1)、計算されたvx、vyの推定値、および勾配Gx0およびGy0を使用して、補正項が通常の双予測動き補償に加えられる。いくつかの方法において、τ0およびτ1はこれらの式において等しいと仮定される。
上記で説明されたように、バイラテラルマッチングを基にしたデコーダ側動きベクトル導出/精緻化法は、2つの参照(双予測のために使用される)におけるマージモード動きベクトル(すなわち、初期動きベクトルMV0およびMV1を含むマージ候補)の周りの差分動きベクトル(すなわち、初期動きベクトルMV0およびMV1への変化)を計算する。計算された差分動きベクトルは、現在のピクチャから2つの参照までの時間的距離TD0およびTD1に依存する。しかしながら、TD1とTD0の間の比率により、一方の参照における整数距離の移動は他方の参照における非整数距離の移動であり得るので、精緻化を評価することは、精緻化のための開始位置を構成するマージモード動きベクトルの位相と比較したときに、異なる位相のサブピクセル精度の位置の評価を要求する(たとえば、TD1とTD0が等しくないときに、L0 picが2の距離にあり、L1が1の距離にあるならば、L0における1ピクセルの精緻化の移動は、L1における0.5ピクセルの移動に導く)。従って、精緻化手順の高い計算の複雑さに導く。精緻化手順を単純化するために、精緻化手順はTD0およびTD1を無視し、一方の参照における整数距離の移動が他方の参照における整数距離の移動として残るように2つの参照において大きさが等しく方向が反対である差分動きベクトルを使用し得る。事前定義された最大反復カウントが到達されるか、または所与の反復の中心位置が最低のコストを有する位置であることが判明するかのいずれかまで、精緻化の複数の反復が適用される。この方法は、また、多用途ビデオコーディングで採用された共通テスト条件で使用されるようなダイアディック構成における階層的Bピクチャが利用される場合においてうまく機能する。そのようなダイアディック構成では、次の時間的層におけるピクチャの数は、現在の時間的層内のピクチャの数の2倍の多さである。従って、Bピクチャは、現在のピクチャから等距離である過去からの1つの参照および未来からの1つの参照を有する。
しかしながら、参照の1つにおける閉塞により、候補マージ動きベクトルは一方向予測に適用可能であり得るか、または候補マージ動きベクトルは、現在のピクチャへの等しくない距離を有する2つの参照フレームを参照し得る。また、市販のエンコーダでは、時間的相関関係に基づいてピクチャタイプを適応させる傾向があるので、厳密なダイアディック階層的Bピクチャは使用されないことがある。たとえば、いくつかのエンコーダは、2つごとの参照ピクチャの間で2つの非参照ピクチャを使用する。ある他のエンコーダは、基礎となる動きの特性により同じ時間的層に属すピクチャ間で可変距離を有する。そのような場合において、等しく反対の差分動きベクトルを基にした精緻化の使用は、大きなコーディング利得を作り出すことに失敗し、また、精緻化の必要性を示すために明示的なフラグが使用されないときにはいつでもコーディング利得に影響を及ぼし得る。しかしながら、精緻化の使用を示すためにすべてのCUに対してフラグをシグナリングすることは、精緻化によってもたらされるコーディング利得の一部を相殺する。
従って、たとえば等しく反対の差分動きベクトルを用いたバイラテラルマッチングを基にした精緻化が使用されるときにはいつでも、等距離の参照を有するコーディングユニットへのデコーダ側精緻化を制限または有効化する能力を選択的にまたは適応的に提供する必要がある。
また、BIO法が等しいτ0およびτ1を仮定するときにはいつでも、時間的距離が本当に等しいときにのみBIO法が適用されることを制限または有効化する能力を提供する必要がある。
本開示は、フレームのグループにおいて少なくとも1つのアクセスユニット内でコード化される双予測マージモードコーディングユニットが、その2つの参照へのコーディングユニットの時間的距離に基づいてデコーダ側動きベクトル精緻化を使用することを選択的に制限または有効化する方法を提供することによって上記の問題に対処する。そのような制限は、その2つの参照へのコーディングユニットの時間的距離が実質的に等しいときにのみデコーダ側のMV精緻化を許可するために、フラグを符号化側でシーケンスパラメータ設定レベルに設定することを通じて実行されることが可能である。この方法は、デコーダ側MV精緻化が有効化されたときに符号化および復号化側の両方で使用される。
提示された方法の詳細な例
本開示の実施形態は、デコーダ側動きベクトル導出/精緻化を、等距離参照を有するコーディングユニットのみに制限するための方法を提供する。実施形態は、デコーダ側MV精緻化が使用される場合に使用され得る。たとえば、バイラテラルマッチングを基にしたデコーダ側MV精緻化が、双予測のために使用される2つの参照において大きさが等しく符号が反対である差分動きベクトルとともに使用されるときに(バイラテラルテンプレートが使用されるか、されないかに関わらず)、方法が使用されることが可能である。前に説明されたように、サブピクセル精度のマージ動きベクトルの中心から始まる整数距離の精緻化が、参照の各々における単一のサブピクセルの位相でのサンプルの補間を使用して実行されることが可能であるように、そのような方法は、現在のピクチャから参照フレームへの時間的距離を無視する。マージ候補リストから取得されるマージ動きベクトルは、任意のサブピクセル位置にあり得る。たとえば、サブピクセル精度は1/16であってよい。方法は、また、双方向オプティカルフロー(BDOF)を基にしたデコーダ側動きベクトル精緻化が時間的距離に依存しないか、またはそれらが等しいと仮定するときに、使用されることが可能である。
この実施形態において、デコーダ側MV精緻化は、コーディングブロックから双予測のために使用される参照ピクチャまでの時間的距離が、実質的に大きさが等しく符号または方向が反対であるときにのみ所与のコーディングユニットまたはコーディングブロックに対して使用される。図7は、符号化方法700の実施形態を例示するフローチャートである。実施形態において、符号化方法700は、図1におけるビデオエンコーダ20などのエンコーダにおいて実現される。ブロック701において、いったん1つまたは複数のマージ候補を含むマージ候補リストが、符号化または復号化側で規範的なプロセスに従って構築されると、マージ動きベクトルおよびそれらの参照インデックスが利用可能になる。ブロック703において、双予測を示す各マージ候補について、双予測のために要求される2つの参照インデックスに対応する、ここではL0およびL1参照と称される、2つの参照フレームが識別され、現在のピクチャへのそれらの時間的距離、すなわちTD0およびTD1が取得される。ブロック705において、双予測のために使用される参照ピクチャへの時間的距離が、実質的に大きさが等しく符号が反対であるかどうかが決定される。ブロック707において、時間的距離が、実質的に大きさが等しく符号が反対である場合に、エンコーダまたはデコーダは、マージ候補に対して規範的なデコーダ側MV精緻化プロセスを実行する。精緻化された動きベクトルは、参照フレームL0およびL1を使用して動き補償された双予測を実行するために使用される。ブロック705において、双予測のために使用される参照ピクチャへの時間的距離が、実質的に大きさが等しく符号が反対であると決定されたならば、ブロック709において、デコーダ側MV精緻化はスキップされ、マージ動きベクトルが双予測のために使用される。ブロック711において、最良マージモード候補が、評価されたどの他のモードよりも低いコストを有するならば、エンコーダは、コーディングユニットに対してマージフラグを1としてシグナリングする。加えて、エンコーダは、マージリスト内の勝利マージ候補に対するマージ候補インデックスを明示的にシグナリングすることもできる。いくつかの場合、これは復号化側で暗黙的に導出され得る。
図8は、復号化方法800の実施形態を例示するフローチャートである。実施形態において、復号化方法800は、図1におけるビデオデコーダ30などのデコーダにおいて実現される。ブロック801において、コーディングユニットに対して、マージフラグは受信されたビットストリームから解析され、マージフラグが真(1など)に設定されているならば、マージ候補は、明示的にシグナリングされたマージインデックスを復号化することによって、または復号化側でそれを暗黙的に導出することによって、のいずれかで取得される。ブロック803において、規範的なマージリスト構築プロセスが、マージインデックスに関連付けられた動きベクトルおよび参照インデックスに到達するために使用される。ブロック805において、マージ候補が双予測を示すならば、2つの参照インデックスに対応する2つの参照フレームが識別され、現在のピクチャへのそれらの時間的距離、すなわちTD0およびTD1が取得される。ブロック807において、双予測のために使用される参照ピクチャへの時間的距離が、実質的に大きさが等しく符号が反対であるかどうかが決定される。ブロック809において、時間的距離が、実質的に大きさが等しく符号が反対である場合に、デコーダは、マージ候補に対して規範的なデコーダ側MV精緻化プロセスを実行する。特に、デコーダ側動きベクトル精緻化の採用がシーケンスレベルで有効化されるならば、TD0およびTD1が、実質的に大きさが等しく符号が反対であるときにのみデコーダ側MV精緻化が実行される。精緻化された動きベクトルは、参照フレームL0およびL1を使用して動き補償された双予測を実行するために使用される。そうでない場合、ブロック811において、デコーダ側MV精緻化はスキップされ、マージインデックスに対する動きベクトルは動き補償された双予測を実行するために使用される。ブロック813において、コーディングブロックは、動き補償されたデータ、たとえば、解析された残差データおよび予測されたデータの和に基づいて再構築される。
別の実施形態では、TD0およびTD1に対する同じチェックは、また、TD0およびTD1が実質的に等しく、反対の符号を有するときにのみ所与のコーディングユニットへのBIOを基にした方法を有効化するために、双方向オプティカルフロー(BIO)を基にした方法(TD0はτ0に対応し、TD1は上記で説明された-τ1に対応する)に使用され得る。
図9は、ビデオの現在のピクチャ内の現在の画像ブロックのインター予測(双予測)のための方法のフローチャートである。方法は、ステップ901において始まる。
ステップ903において、現在のピクチャが時間的に第1の参照ピクチャ(RefPic0など)と第2の参照ピクチャ(RefPic1など)の間にあり、第1の時間的距離(TD0など)と第2の時間的距離(TD1など)が同じ距離であるかどうかが決定され、第1の時間的距離(TD0)は現在のピクチャと第1の参照ピクチャ(RefPic0)の間であり、第2の時間的距離(TD1)は現在のピクチャと第2の参照ピクチャ(RefPic1)の間である。
ステップ905において、現在のピクチャが時間的に第1の参照ピクチャ(RefPic0など)と第2の参照ピクチャ(RefPic1など)の間にあり、第1の時間的距離(TD0)と第2の時間的距離(TD1)が同じ距離であると決定されたときに、現在の画像ブロックの予測ブロックを決定するために動きベクトル精緻化(DMVR)手順が実行される。動きベクトル精緻化(DMVR)手順は、図6Cのブロック602から610または図6Dのブロック632から640に関して上記で説明されたように実行されることが可能である。動きベクトル精緻化を実行する他のやり法も利用されることが可能である。
ステップ907において、第1の時間的距離(TD0)と第2の時間的距離(TD1)が異なる距離であるか、または現在のピクチャが時間的に第1の参照ピクチャ(RefPic0など)と第2の参照ピクチャ(RefPic1など)の間にないと決定されたときに、第1の初期動きベクトル(MV0)および第2の初期動きベクトル(MV1)を使用して現在の画像ブロックの予測ブロックを取得するために、動き補償が実行される。
図10は、ビデオの現在のピクチャ内の現在の画像ブロックのインター予測のための装置の例示の構造を表すブロック図である。装置は、
現在のピクチャが時間的に第1の参照ピクチャ(RefPic0など)と第2の参照ピクチャ(RefPic1など)の間にあり、第1の時間的距離(TD0など)と第2の時間的距離(TD1など)が同じ距離であるかどうかを決定するように構成された決定ユニット101であって、第1の時間的距離(TD0)は現在のピクチャと第1の参照ピクチャ(RefPic0)の間であり、第2の時間的距離(TD1)は現在のピクチャと第2の参照ピクチャ(RefPic1)の間である、決定ユニット101と、
現在のピクチャが時間的に第1の参照ピクチャ(RefPic0など)と第2の参照ピクチャ(RefPic1など)の間にあり、第1の時間的距離(TD0)と第2の時間的距離(TD1)が同じ距離であると決定されたときに、現在の画像ブロックの予測ブロックを決定するために動きベクトル精緻化(DMVR)手順を実行するように構成されたインター予測処理ユニット103とを含み得る。
いくつかの実施形態において、コーディングユニットまたはコーディングブロックレベルでデコーダ側動きベクトル精緻化を条件付きで実行するために上述の時間的距離を基にしたチェックを常に適用する代わりに、特定のフラグがシーケンスパラメータセットレベルおよび/またはピクチャレベルでシグナリングされるときにのみチェックが条件付きで実行されることが可能である。
一実施形態において、sps_conditional_dmvr_flagなどのフラグは、デコーダ側動きベクトル精緻化がシーケンスパラメータセットレベルで有効化されているときにはいつでも、シーケンスパラメータセットレベルでシグナリングされる。このフラグが0に設定されているときに、デコーダ側MV精緻化は、すべてのアクセスユニットにおいて現在のピクチャから参照フレームへの時間的距離に依存せずに実行されることが可能である。このフラグが1に設定されているときに、pps_conditional_dmvr_flagなどの追加フラグは、ピクチャパラメータセットレベルでシグナリングされる。pps_conditional_dmvr_flagが0に設定されているときに、デコーダ側MV精緻化は、現在のピクチャから参照フレームへの時間的距離に依存せずに実行されることが可能である。pps_conditional_dmvr_flagが1に設定されているときに、デコーダ側MV精緻化は、所与のCUに対する現在のピクチャから参照フレームへの時間的距離が、実質的に大きさが等しく符号が反対であるときにのみ実行されることが可能である。
規則的なダイアディック階層的Bピクチャのグループオブピクチャ(GOP)構造が使用され、Bピクチャ内の参照フレームの最大数が2に設定され、参照ピクチャ選択が現在のピクチャへの等しい時間的距離を有し、現在のピクチャの反対側に入る参照フレームを常に選択するときに、エンコーダはsps_conditional_dmvr_flagをゼロに設定することができる。表示順でのダイアディックGOP構造の一例は、I00 B14 B23 B34 B42 B54 B63 B74 B81 B94 B103 B114 B122 B134 B143 B154 P160であり、添え字は時間的層を示し、ピクチャタイプの次の数は表示順のフレームカウントを示す。
(a)通常のダイアディック階層的BピクチャのGOP構造が使用されるが、Bピクチャに対する参照フレームの最大数が2よりも大きく設定されているときに、または(b)参照ピクチャの選択が、現在のピクチャへの実質的に等しい時間的距離を有さない、または表示順において現在のピクチャの反対側に入らない、参照ピクチャを選択する見込みがあるならば、または(c)ダイアディックでない階層的Bピクチャまたはダイアディックでない単一のBピクチャ層GOP構造が使用されるときに、エンコーダはsps_conditional_dmvr_flagを1に設定することができる。ダイアディックでないGOP構造の一例は、Bピクチャの1つのみの層を有するI00 B11 B21 P30 B41 B51 P60である。適応的な階層的Bピクチャの一例は、同じ時間層レベルでの2つのピクチャの間の間隔がコンテンツ特性に基づいて適応的に決定されるI00 B12 B22 B31 B42 P50である。
代替的に、sps_conditional_dmvr_flagは、上記で述べた条件に基づいてユーザによってエンコーダパラメータとして手動で構成されることが可能である。
sps_conditional_dmvr_flagが1に設定されているときに、エンコーダは、参照フレームの最大数が2に設定され、それらの参照フレームが現在のピクチャからの時間的距離において実質的に等しく、表示順で現在のピクチャの反対側に入るフレームに対して、pps_conditional_dmvr_flagをゼロに設定することができる。
sps_conditional_dmvr_flagが1に設定されているときに、参照フレームの最大数が2よりも大きい値に設定されているフレームにおいて、またはCUに対する双予測のために使用される2つの参照フレームが現在のピクチャからの実質的に等しい時間的距離にある必要がないか、または両方の参照ピクチャが表示順に現在のピクチャの反対側に入らない場合に、エンコーダはpps_conditional_dmvr_flagを1に設定することができる。符号化/復号化順序シーケンスがI00 P10, P60, B41, B22 ,B32, B52であり、表示順序がI00 P10 B22 B32 B41 B52 P60である例では、ピクチャB22は、その参照ピクチャとしてI00 P10, P60, B41を有することができる。これらの参照ピクチャのうち、参照ピクチャI0およびB4は、等しい距離および反対の方向である。従って、I0およびB4がB2のための参照として使用されるときに、時間的距離は等しく反対であるが、P1およびB4が参照として使用される場合にはそうではない。pps_conditional_dmvr_flagが1に設定されているとき、I0およびB4を参照として有するB2におけるコーディングユニットは、デコーダ側MV精緻化を使用するが、P1およびB4を参照として有するB2におけるコーディングユニットは、デコーダ側MV精緻化を使用することができない(事前に決定された比率閾値、たとえば、現在のピクチャと第1の参照(refL0)の間の距離の、第2の参照(refL1)と現在のピクチャの間の距離に対する比に依存する)。
物体の動きは、L0から現在のピクチャまで、および現在のピクチャからL1まで必ずしも線形ではないので、参照ピクチャが実質的に等しい時間的距離にないときであっても、等しく反対の動きの仮定が時々機能し得ることが可能である。ある実施形態において、エンコーダは、pps_conditional_dmvr_flagが0に設定されているフレームに対する符号化、およびpps_conditional_dmvr_flagが1に設定されている同じフレームに対する別の符号化を実行し、より低いレート歪み最適化コストを提供する設定を選択することができる。レート歪み最適化コストは、供給元フレームに関して再構築されたフレームの歪み尺度と、フレームのために使用される平均量子化パラメータに依存する適したラグランジュ乗数が乗じられた消費されたビットとの和として計算される。
他の実施形態において、レート歪み最適化コストは、時間的距離が実質的に等しくないコーディングユニットに対して、デコーダ側MV精緻化がある場合およびデコーダ側MV精緻化ない場合の両方について累算されることが可能であり、精緻化がないときは精緻化があるときより低い累算コストをもたらすならば、フラグは後続のピクチャに対して1に設定されることが可能である。
参照フレームへの実質的に等しい時間的距離が、エンコーダで決定されたGOP構造に基づいて任意のコーディングユニットに対して可能でないときに、デコーダ側動きベクトル精緻化それ自体をシーケンスパラメータセット(SPS)レベルまたはピクチャパラメータセットレベルで無効化することも可能である。SPSレベルでの条件付きフラグは、存在するならば、デコーダ側動きベクトル精緻化がSPSレベルで有効化されるときのみシグナリングされる。PPSレベルでの条件付きフラグは、存在するならば、デコーダ側動きベクトル精緻化がPPSレベルで(明示的にまたは暗黙的に)有効化されるときのみシグナリングされる。SPS/PPSレベルでのデコーダ側MV精緻化をシグナリングする任意の代替的方法、参照までの時間的距離に対して無条件の精緻化、および参照までの時間的距離に対して条件付きの精緻化をシグナリングする能力は、この発明によって予期される。たとえば、2つのフラグの代わりに、2つのフラグを一緒に連結することによって3つの可能な値(たとえば、0、1、および2)のうちの1つを取るシンタックス要素をコード化することが可能である。
図6Dは、デコーダ側動きベクトル精緻化(DMVR)手順またはプロセスを実行するための別の例を例示するフローチャートである。実施形態において、プロセスは、図1におけるビデオデコーダ30などのデコーダにおいて実現される。プロセスは、たとえば、図1のビデオエンコーダ20などの、エンコーダから受信されたビットストリームが、電子デバイスのディスプレイにおいて画像を生成するために復号化されるべきであるときに実現され得る。プロセスは、また、図1におけるビデオエンコーダ20などのエンコーダにおいて実現される。プロセスは、図6Bにおいて識別された要素を参照して説明される。
ブロック632において、第1の参照ピクチャ(たとえば、参照ピクチャ408)内の第1の初期参照ブロック(たとえば、参照ブロック406)の位置は、現在のピクチャ(たとえば、現在のピクチャ404)内の現在のブロック(たとえば、現在のブロック402)に対応する第1の動きベクトル(たとえば、MV0)に基づいて決定される。
ブロック634において、第2の参照ピクチャ(たとえば、参照ピクチャ412)内の第2の初期参照ブロック(たとえば、参照ブロック410)の位置は、現在のピクチャ(たとえば、現在のピクチャ404)内の現在のブロック(たとえば、現在のブロック402)に対応する第2の動きベクトル(たとえば、MV1)に基づいて決定される。
ブロック636において、第1の参照ピクチャ内の複数の第1の参照ブロック(たとえば、N-1個の第1の参照ブロック)の位置が決定される。
ブロック638において、第2の参照ピクチャ内の複数の第2の参照ブロック(たとえば、N-1個の第2の参照ブロック)の位置が決定される。ブロック636および638において、参照ブロックの各対の位置は、第1の参照ブロックの位置および第2の参照ブロックの位置を含み、参照ブロックの各対について、第1の位置オフセット(delta0x, delta0y)および第2の位置オフセット(delta1x, delta1y)は、ミラーリングされ(すなわち、大きさが等しく符号が反対)、第1の位置オフセット(delta0x, delta0y)は、第1の初期参照ブロックの位置に対する第1の参照ブロックの位置のオフセットを表現し、第2の位置オフセット(delta1x, delta1y)は、第2の初期参照ブロックの位置に対する第2の参照ブロックの位置のオフセットを表現する。特に、第1および第2の参照ブロックの各対の位置について、第1のオフセットの方向は、第2のオフセットの方向とは反対であり、第1のオフセットの大きさは、第2のオフセットの大きさと同じであり、第1のオフセットおよび第2のオフセットは、それぞれ、対のそれぞれの第1の参照ブロックおよびそれぞれの第2の参照ブロックに関連付けられている。
ブロック640において、第1の参照ピクチャ内の複数の第1の参照ブロックおよび第2の参照ピクチャ内の複数の第2の参照ブロックのうちの第1および第2の参照ブロックの各対の間のコスト比較が実行される。第1および第2の初期参照ブロックの間のコスト比較も実行され得る。第1の参照ブロックは、たとえば、第1の参照ピクチャ408内の第1の初期参照ブロック406を囲む様々な参照ブロックであってよい。コスト比較は、第1の精緻化された動きベクトル(たとえば、MV0')と第2の精緻化された動きベクトル(たとえば、MV1')とを決定するために使用される。
第2の参照ブロックは、たとえば、第2の参照ピクチャ412内の第2の初期参照ブロック410を囲む様々な参照ブロックであってよい。代替的に、参照ブロックのN個の対の位置からの参照ブロックの対の位置は、マッチングコスト基準に基づいて第1の精緻化された参照ブロックの位置および第2の精緻化された参照ブロックの位置として決定される。参照ブロックのN個の対は、第1および第2の初期参照ブロックの対を含み得ることが理解されることが可能である。
ブロック642において、第1の参照ピクチャ内の第1の精緻化された参照ブロック(たとえば、精緻化された参照ブロック416)が、第1の精緻化された動きベクトルに基づいて選択され、第2の参照ピクチャ内の第2の精緻化された参照ブロック(たとえば、精緻化された参照ブロック418)が、第2の精緻化された動きベクトルに基づいて選択される。代替的に、第1の精緻化された参照ブロックは、第1の精緻化された参照ブロックの位置に基づいて第1の参照ピクチャにおいて決定され、第2の精緻化された参照ブロックは、第2の精緻化された参照ブロックの位置に基づいて第2の参照ピクチャにおいて決定される。
ブロック644において、予測ブロック(たとえば、予測ブロック420)は、第1の精緻化された参照ブロックおよび第2の精緻化された参照ブロックに基づいて決定される。
ブロック646において、予測ブロックを使用して生成された画像は、電子デバイスのディスプレイにおいて表示される。
当業者は、デコーダ側動きベクトル精緻化(DMVR)手順を実行するために多くの解決策が適用され得ること、本発明は前に表された例示のプロセスに限定されないことを認識するであろう。
上記に基づいて、本開示は、各CUによって使用される2つの参照への時間的距離に基づいてデコーダ側動きベクトル精緻化を条件付きで制限すること(有効化するまたは無効化するなど)を可能にし、従って、それは、精緻化が仮定する等しく反対の差分動きベクトルの基礎をなす仮定が真である見込みがないときに精緻化を適用しないことによってコーディング効率を改善する。
上記に基づいて、本開示は、また、すべてのアクセスユニットに対して無条件に精緻化を無効化する、あるアクセスユニットに対して条件付きで精緻化を無効化する、アクセスユニットレベルで無条件の精緻化を有効化する、またはアクセスユニットにおける条件付き精緻化を、そのアクセスユニット内のコーディングユニットによって使用される現在のピクチャから参照への時間的距離に基づいて有効化するために粒度を提供する。
上記に基づいて、本開示は、また、圧縮利得を改善する見込みがないマージインデックスに対してデコーダ側で実行される精緻化を無効化する利点をもたらす。
また、上記に基づいて、本開示は、精緻化を2つのみの等距離参照に制限し、デコーダ側の他の参照によるより少ないキャッシュ汚染の利点を有し得る。
上記に基づいて、本開示は、2つの参照への時間的距離が、実質的に大きさが等しく方向が反対ではないときにはいつでもCUレベルでのバイラテラルマッチングを基にしたデコーダ側動きベクトル精緻化の規範的無効化を可能にする。特に、この無効化は、精緻化プロセスが差分動きベクトルをスケーリングするために時間的距離を使用しないときに適用される。
上記に基づいて、本開示は、エンコーダが見られたGOP構造およびコーディング利得などの要因に基づいて適切なフラグ値をシグナリングするオプションを有するように、シーケンスおよびピクチャパラメータセットレベルでフラグを追加して、CUレベルでの時間的距離を基にしたチェックが、これらのフラグによって示されたときにのみ実行されることを可能にする。
以下は、上述の実施形態において表されたような符号化方法ならびに復号化方法、およびそれらを使用するシステムのアプリケーションの説明である。
図11は、コンテンツ配信サービスを実現するためのコンテンツ供給システム3100を表すブロック図である。コンテンツ供給システム3100は、キャプチャデバイス3102、端末デバイス3106を含み、任意選択でディスプレイ3126を含む。キャプチャデバイス3102は、通信リンク3104上で端末デバイス3106と通信する。通信リンクは、上記で説明された通信チャネル13を含んでいてもよい。通信リンク3104は、限定はしないが、WIFI、イーサネット、ケーブル、ワイヤレス(3G/4G/5G)、USB、またはこれらの任意の種類の組み合わせ、または同様のものを含む。
キャプチャデバイス3102は、データを生成し、上記の実施形態において表されたような符号化方法によってデータを符号化し得る。代替的に、キャプチャデバイス3102は、データをストリーミングサーバ(図に表されていない)に配信してよく、サーバはデータを符号化し、符号化されたデータを端末デバイス3106に伝送する。キャプチャデバイス3102は、限定はしないが、カメラ、スマートフォンまたはパッド、コンピュータまたはラップトップ、ビデオ会議システム、PDA、車載デバイス、またはそれらの任意の組み合わせ、または同様のものを含む。たとえば、キャプチャデバイス3102は、上記で説明されたような供給元デバイス12を含み得る。データがビデオを含むときには、キャプチャデバイス3102に含まれるビデオエンコーダ20は、実際にはビデオ符号化処理を実行し得る。データがオーディオ(すなわち、音声)を含むときには、キャプチャデバイス3102に含まれるオーディオエンコーダは、実際にはオーディオ符号化処理を実行し得る。いくつかの実際のシナリオについては、キャプチャデバイス3102は、符号化されたビデオおよびオーディオデータを、それらを一緒に多重化することによって配信する。他の実際のシナリオについては、たとえば、ビデオ会議システムにおいて、符号化されたオーディオデータおよび符号化されたビデオデータは多重化されない。キャプチャデバイス3102は、符号化されたオーディオデータと符号化されたビデオデータとを別々に端末デバイス3106に配信する。
コンテンツ供給システム3100において、端末デバイス310は、符号化されたデータを受信し、再生する。端末デバイス3106は、スマートフォンまたはパッド3108、コンピュータまたはラップトップ3110、ネットワークビデオレコーダ(NVR)/デジタルビデオレコーダ(DVR)3112、TV3114、セットトップボックス(STB)3116、ビデオ会議システム3118、ビデオ監視システム3120、パーソナルデジタルアシスタント(PDA)3122、車載デバイス3124、またはそれらの任意の組み合わせなどのデータ受信および復元機能を有するデバイス、または上述の符号化されたデータを復号化することができる同様のものであることが可能である。たとえば、端末デバイス3106は、上記で説明されたような宛先デバイス14を含み得る。符号化されたデータがビデオを含むときには、端末デバイスに含まれるビデオデコーダ30は、ビデオ復号化を実行するように優先順位付けされる。符号化されたデータがオーディオを含むときには、端末デバイスに含まれるオーディオデコーダは、オーディオ復号化処理を実行するように優先順位付けされる。
そのディスプレイを有する端末デバイス、たとえば、スマートフォンまたはパッド3108、コンピュータまたはラップトップ3110、ネットワークビデオレコーダ(NVR)/デジタルビデオレコーダ(DVR)3112、TV3114、パーソナルデジタルアシスタント(PDA)3122、または車載デバイス3124については、端末デバイスは、復号化されたデータをそのディスプレイに供給することができる。ディスプレイが装備されていない端末デバイス、たとえば、STB3116、ビデオ会議システム3118、またはビデオ監視システム3120については、外部ディスプレイ3126がそれに接続されて、復号化されたデータを受信および表示する。
このシステムにおける各デバイスが符号化または復号化を実行するときに、上述の実施形態において表されたような、ピクチャ符号化デバイスまたはピクチャ復号化デバイスが使用されることが可能である。
図12は、端末デバイス3106の一例の構造を表す図である。端末デバイス3106が、キャプチャデバイス3102からストリームを受信した後、プロトコル進行ユニット3202は、ストリームの伝送プロトコルを解析する。プロトコルは、限定はしないが、リアルタイムストリーミングプロトコル(RTSP)、ハイパーテキスト転送プロトコル(HTTP)、HTTPライブストリーミングプロトコル(HLS)、MPEG-DASH、リアルタイムトランスポートプロトコル(RTP)、リアルタイムメッセージングプロトコル(RTMP)、またはこれらの任意の種類の組み合わせ、または同様のものを含む。
プロトコル進行ユニット3202がストリームを処理した後、ストリームファイルが生成される。ファイルは、逆多重化ユニット3204に出力される。逆多重化ユニット3204は、多重化されたデータを、符号化されたオーディオデータと、符号化されたビデオデータとに分離することができる。上記で説明されたように、いくつかの実際のシナリオについては、たとえば、ビデオ会議システムにおいて、符号化されたオーディオデータおよび符号化されたビデオデータは多重化されない。この状況では、符号化されたデータは、逆多重化ユニット3204を通ることなくビデオデコーダ3206およびオーディオデコーダ3208に伝送される。
逆多重化処理を介して、ビデオエレメンタリーストリーム(ES)、オーディオES、および任意選択でサブタイトルが生成される。上述の実施形態において説明されたようなビデオデコーダ30を含むビデオデコーダ3206は、上述の実施形態において表された復号化方法によってビデオESを復号化してビデオフレームを生成し、このデータを同期ユニット3212に供給する。オーディオデコーダ3208は、オーディオESを復号化してオーディオフレームを生成し、このデータを同期ユニット3212に供給する。代替的に、ビデオフレームは、同期ユニット3212にそれを供給する前に、バッファ(図Yに表されていない)に記憶してよい。同様に、オーディオフレームは、同期ユニット3212にそれを供給する前に、バッファ(図Yに表されていない)に記憶してよい。
同期ユニット3212は、ビデオフレームおよびオーディオフレームを同期し、ビデオ/オーディオをビデオ/オーディオディスプレイ3214に供給する。たとえば、同期ユニット3212は、ビデオおよびオーディオ情報の提示を同期させる。情報は、コード化されたオーディオおよびビジュアルデータの提示に関するタイムスタンプ、およびデータストリームそれ自体の配信に関するタイムスタンプを使用してシンタックス内にコード化し得る。
サブタイトルがストリームに含まれるならば、サブタイトルデコーダ3210は、サブタイトルを復号化し、それをビデオフレームおよびオーディオフレームと同期し、ビデオ/オーディオ/サブタイトルをビデオ/オーディオ/サブタイトルディスプレイ3216に供給する。
本発明は、上述のシステムに限定されず、上述の実施形態におけるピクチャ符号化デバイスまたはピクチャ復号化デバイスのいずれかが、他のシステム、たとえば、カーシステムに組み込まれることが可能である。
1つまたは複数の例において、説明された機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組み合わせにおいて実現され得る。ソフトウェアにおいて実現されるならば、機能は、コンピュータ可読媒体において1つまたは複数の命令またはコードとして記憶または伝送され、ハードウェアを基にした処理ユニットによって実行され得る。コンピュータ可読媒体は、データ記憶媒体などの有形媒体、または、たとえば、通信プロトコルに従って、1つの場所から別の場所へのコンピュータプログラムの転送を円滑にする任意の媒体を含む通信媒体に対応する、コンピュータ可読記憶媒体を含み得る。この方式で、コンピュータ可読媒体は、一般に、(1)非一時的である有形のコンピュータ可読記憶媒体、または(2)信号または搬送波などの通信媒体に対応し得る。データ記憶媒体は、この開示において説明された技術の実装のため命令、コード、および/またはデータ構造を取り出すために、1つまたは複数のコンピュータまたは1つまたは複数のプロセッサによってアクセスされることが可能である任意の利用可能な媒体であり得る。コンピュータプログラム製品は、コンピュータ可読媒体を含み得る。
例として、限定はしないが、そのようなコンピュータ可読記憶媒体は、RAM、ROM、EEPROM、CD-ROM、または他の光ディスク記憶、磁気ディスク記憶、または他の磁気記憶デバイス、フラッシュメモリ、または命令またはデータ構造の形態で所望のプログラムコードを記憶するために使用されることが可能である、コンピュータによってアクセスされることが可能である任意の他の媒体を含むことができる。また、どのような接続もコンピュータ可読媒体と適切に称される。たとえば、同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者線(DSL)、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他の遠隔の供給元から命令が伝送されるならば、同軸ケーブル、光ファイバケーブル、ツイストペア、DSL、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。しかしながら、コンピュータ可読記憶媒体およびデータ記憶媒体は、接続、搬送波、信号、または他の一時的媒体を含まないが、代わりに、非一時的な有形の記憶媒体に向けられることが理解されるべきである。ここで使用されるようなディスク(disk)およびディスク(disc)は、コンパクトディスク(CD)、レーザーディスク(登録商標)、光ディスク、デジタル多用途ディスク(DVD)、フロッピーディスクおよびブルーレイディスクを含み、ディスク(disk)は、通常、磁気的にデータを再生するが、ディスク(disc)は、レーザーを用いてデータを光学的に再生する。上記の組み合わせも、コンピュータ可読媒体の範囲内に含まれるべきである。
命令は、1つまたは複数のデジタルシグナルプロセッサ(DSP)、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルロジックアレイ(FPGA)、または他の等価な集積回路または個別のロジック回路などの1つまたは複数のプロセッサによって実行され得る。従って、ここで使用されるような用語「プロセッサ」は、前述の構造、またはここで説明された技術の実装のために適した任意の他の構造のいずれかを指し得る。加えて、いくつかの態様において、ここで説明された機能は、符号化および復号化のために構成された専用のハードウェアおよび/またはソフトウェアモジュール内に提供されるか、または組み合わされたコーデックに組み込まれてよい。また、これらの技術は、1つまたは複数の回路またはロジック要素において完全に実現されることが可能である。
この開示の技術は、ワイヤレスハンドセット、集積回路(IC)、またはICのセット(たとえば、チップセット)を含む、広く様々なデバイスまたは装置において実現され得る。様々な構成要素、モジュール、またはユニットは、開示された技術を実行するように構成されたデバイスの機能的態様を強調するようにこの開示において説明されているが、異なるハードウェアユニットによる実現を必ずしも要求しない。むしろ、上記で説明されたように、様々なユニットが、コーデックハードウェアユニット内に組み合わされ、または適したソフトウェアおよび/またはファームウェアと併せて、上記で説明されたような1つまたは複数のプロセッサを含む、相互運用可能なハードウェアユニットの集合によって提供され得る。
本開示においていくつかの実施形態が提供されたが、開示されたシステムおよび方法は、本開示の精神または範囲から逸脱することなく多くの他の特定の形態で具現化され得ることが理解されるべきである。本例示は、例示的であり、制限的でないと考えられるべきであり、発明は、ここで与えられた詳細に限定されるべきでない。たとえば、様々な要素または構成要素は、別のシステム内に組み合わされ、または統合されてよく、またはある特徴は、省略され、または実現されなくてよい。
加えて、個別または別個として様々な実施形態において説明され例示された技術、システム、サブシステム、および方法は、本開示の範囲から逸脱することなく他のシステム、モジュール、技術、または方法と組み合わされ、または統合されてよい。結合されるか、または直接結合されるか、または互いに通信するとして表されまたは論じられた他の項目は、電気的、機械的、または他のやり方であろうと、いくつかのインターフェース、デバイス、または中間の構成要素を通じて間接的に結合されるか、または通信してよい。変更、代用、および改変の他の例は、当業者によって確かめることができ、ここで開示された精神および範囲から逸脱することなく行われ得る。
本開示においていくつかの実施形態が提供されたが、開示されたシステムおよび方法は、本開示の精神または範囲から逸脱することなく多くの他の特定の形態で具現化され得ることが理解されるべきである。本例示は、例示的であり、制限的でないと考えられるべきであり、発明は、ここで与えられた詳細に限定されるべきでない。たとえば、様々な要素または構成要素は、別のシステム内に組み合わされ、または統合されてよく、またはある特徴は、省略され、または実現されなくてよい。
加えて、個別または別個として様々な実施形態において説明され例示された技術、システム、サブシステム、および方法は、本開示の範囲から逸脱することなく他のシステム、モジュール、技術、または方法と組み合わされ、または統合されてよい。結合されるか、または直接結合されるか、または互いに通信するとして表されまたは論じられた他の項目は、電気的、機械的、または他のやり方であろうと、いくつかのインターフェース、デバイス、または中間の構成要素を通じて間接的に結合されるか、または通信してよい。変更、代用、および改変の他の例は、当業者によって確かめることができ、ここで開示された精神および範囲から逸脱することなく行われ得る。
10 コーディングシステム
12 供給元デバイス
13 通信チャネル
14 宛先デバイス
16 コンピュータ可読媒体
18 ビデオ供給元
20 ビデオエンコーダ
22 出力インターフェース
28 入力インターフェース
30 ビデオデコーダ
32 ディスプレイデバイス
40 モード選択ユニット
42 動き推定ユニット
44 動き補償ユニット
46 イントラ予測ユニット
48 区分ユニット
50 加算器
52 変換処理ユニット
54 量子化ユニット
56 エントロピーコーディングユニット
58 逆量子化ユニット
60 逆変換ユニット
62 加算器
64 参照フレームメモリ
70 エントロピー復号化ユニット
72 動き補償ユニット
74 イントラ予測ユニット
76 逆量子化ユニット
78 逆変換ユニット
80 加算器
82 参照フレームメモリ
101 決定ユニット
310 端末デバイス
400 DMVR法
402 現在のブロック
404 現在のピクチャ
406 第1の参照ブロック
408 第1の参照ピクチャ
410 第2の参照ブロック
412 第2の参照ピクチャ
414 バイラテラルテンプレートブロック
416 第1の精緻化された参照ブロック
418 第2の精緻化された参照ブロック
420 予測ブロック
500 コーディングデバイス
510 入口ポート
520 受信機ユニット(Rx)
530 プロセッサ
540 送信機ユニット(Tx)
550 出口ポート
560 メモリ
570 コーディングモジュール
600 コーディング方法
700 符号化方法
800 復号化方法
1000 装置
1002 プロセッサ
1004 メモリ
1006 コードおよびデータ
1008 オペレーティングシステム
1010 アプリケーションプログラム
1012 バス
1014 二次記憶装置
1018 ディスプレイ
1020 画像感知デバイス
1022 音感知デバイス
3100 コンテンツ供給システム
3102 キャプチャデバイス
3104 通信リンク
3106 端末デバイス
3108 スマートフォンまたはパッド
3110 コンピュータまたはラップトップ
3112 ネットワークビデオレコーダ(NVR)/デジタルビデオレコーダ(DVR)
3114 TV
3116 セットトップボックス(STB)
3118 ビデオ会議システム
3120 ビデオ監視システム
3122 携帯情報端末(PDA)
3124 車載デバイス
3126 ディスプレイ
3202 プロトコル進行ユニット
3204 逆多重化ユニット
3206 ビデオデコーダ
3208 オーディオデコーダ
3210 サブタイトルデコーダ
3212 同期ユニット
3214 ビデオ/オーディオディスプレイ
3216 ビデオ/オーディオ/サブタイトルディスプレイ

Claims (61)

  1. ビデオの現在のピクチャ内の現在の画像ブロックのインター予測のための方法であって、
    前記現在のピクチャが時間的に第1の参照ピクチャと第2の参照ピクチャの間にあるかどうか、および第1の時間的距離と第2の時間的距離が同じ距離であるかどうかを決定するステップであって、前記第1の時間的距離は、前記現在のピクチャと前記第1の参照ピクチャの間であり、前記第2の時間的距離は、前記現在のピクチャと前記第2の参照ピクチャの間である、ステップと、
    前記現在のピクチャが時間的に前記第1の参照ピクチャと前記第2の参照ピクチャの間にあり、前記第1の時間的距離と前記第2の時間的距離が同じ距離であると決定されたときに、前記現在の画像ブロックの予測ブロックを決定するために動きベクトル精緻化(DMVR)手順を実行するステップとを含む方法。
  2. 前記第1の時間的距離と前記第2の時間的距離が異なる距離であること、または前記現在のピクチャが時間的に前記第1の参照ピクチャと前記第2の参照ピクチャの間にないことが決定されたときに、前記現在の画像ブロックの前記予測ブロックを決定するために第1の初期動きベクトルと第2の初期動きベクトルを使用して動き補償を実行するステップをさらに含む請求項1に記載の方法。
  3. 動きベクトル精緻化(DMVR)手順を実行する前記ステップは、
    参照ブロックの複数の対から最良の動きベクトルによって指し示される最良マッチングブロックの対を決定するステップであって、参照ブロックの前記複数の対の各々は、前記第1の参照ピクチャ内にあり第1の初期動きベクトルに基づいて決定される第1の参照ブロックと、前記第2の参照ピクチャ内にあり第2の初期動きベクトルに基づいて決定される第2の参照ブロックとを含み、
    前記最良の動きベクトルは、第1の精緻化された動きベクトルおよび第2の精緻化された動きベクトルを含む、ステップを含む請求項1に記載の方法。
  4. 動きベクトル精緻化(DMVR)手順を実行する前記ステップは、
    マッチングコスト基準に基づいて、参照ブロックのM個の対の位置から参照ブロックの対の位置を、第1の精緻化された参照ブロックの位置および第2の精緻化された参照ブロックの位置として決定するステップであって、参照ブロックの前記M個の対の前記位置は、第1の初期動きベクトル、第2の初期動きベクトル、および前記現在の画像ブロックの位置に基づいて決定され、参照ブロックの各対の位置は、第1の参照ブロックの位置と第2の参照ブロックの位置とを含み、前記第1の参照ブロックは、前記第1の参照画像内に含まれ、前記第2の参照ブロックは、前記第2の参照画像内に含まれ、参照ブロックの各対について、第1の位置オフセット(delta0x, delta0y)と第2の位置オフセット(delta1x, delta1y)は、大きさが等しく符号が反対であり、前記第1の位置オフセット(delta0x, delta0y)は、第1の初期参照ブロックの位置に対する前記第1の参照ブロックの前記位置のオフセットを表現し、前記第2の位置オフセット(delta1x, delta1y)は、第2の初期参照ブロックの位置に対する前記第2の参照ブロックの前記位置のオフセットを表現し、Mは1以上の整数である、ステップを含む請求項1に記載の方法。
  5. 前記現在の画像ブロックの初期動き情報は、前記第1の初期動きベクトル、第1の参照インデックス、前記第2の初期動きベクトル、および第2の参照インデックスを含み、前記第1の参照インデックスは、前記第1の参照ピクチャを示し、前記第2の参照インデックスは、前記第2の参照ピクチャを示す請求項2から4のいずれか一項に記載の方法。
  6. 前記第1の参照ピクチャは、前記現在のピクチャに時間的に先行する参照画像であり、前記第2の参照ピクチャは、前記現在のピクチャによって時間的に先行される参照画像であるか、または
    前記第1の参照ピクチャは、前記現在のピクチャによって時間的に先行される参照画像であり、前記第2の参照ピクチャは、前記現在のピクチャに時間的に先行する参照画像であるか、あるいは
    前記第1の参照ピクチャは過去の参照画像であり、前記第2の参照ピクチャは未来の参照画像であるか、または前記第1の参照ピクチャは未来の参照画像であり、前記第2の参照ピクチャは過去の参照画像である請求項1から5のいずれか一項に記載の方法。
  7. 前記第1の時間的距離は、前記現在のピクチャと前記第1の参照ピクチャの間のピクチャ順序カウント(POC)距離を示し、前記第2の時間的距離は前記現在のピクチャと前記第2の参照ピクチャの間のPOC距離を示すか、または
    前記第1の時間的距離(TD0)は、前記現在のピクチャのピクチャ順序カウント値(POCc)と前記第1の参照画像のピクチャ順序カウント値(POC0)の間の差に関して表現され、前記第2の時間的距離(TD1)は、前記現在のピクチャの前記ピクチャ順序カウント値(POCc)と前記第2の参照画像のピクチャ順序カウント値(POC1)の間の差に関して表現される請求項1から6のいずれか一項に記載の方法。
  8. 前記現在のピクチャが時間的に第1の参照ピクチャと第2の参照ピクチャの間にあるかどうか、および第1の時間的距離と第2の時間的距離が同じ距離であるかどうかを決定する前記ステップは、
    前記第1の時間的距離と前記第2の時間的距離は、大きさが等しく符号が反対であるかどうかを決定するステップであって、前記第1の時間的距離は、前記現在のピクチャの前記ピクチャ順序カウント値と前記第1の参照画像の前記ピクチャ順序カウント値の間の差に関して表現され、前記第2の時間的距離は、前記現在のピクチャの前記ピクチャ順序カウント値と前記第2の参照画像の前記ピクチャ順序カウント値の間の差に関して表現される、ステップを含み、
    動きベクトル精緻化(DMVR)手順を実行する前記ステップは、
    前記第1の時間的距離と前記第2の時間的距離は、大きさが等しく符号が反対であると決定されたときに、前記現在の画像ブロックの予測ブロックを決定するために動きベクトル精緻化(DMVR)手順を実行するステップを含む請求項1から7のいずれか一項に記載の方法。
  9. ビデオの現在のピクチャ内の現在の画像ブロックのインター予測のための方法であって、
    前記現在のピクチャが時間的に第1の参照ピクチャと第2の参照ピクチャの間にあるかどうか、および第1の時間的距離と第2の時間的距離が同じ距離であるかどうかを決定するステップであって、前記第1の時間的距離は、前記現在のピクチャと前記第1の参照ピクチャの間であり、前記第2の時間的距離は、前記現在のピクチャと前記第2の参照ピクチャの間である、ステップと、
    前記第1の時間的距離と前記第2の時間的距離が異なる距離であること、または前記現在のピクチャが時間的に前記第1の参照ピクチャと前記第2の参照ピクチャの間にないことが決定されたときに、前記現在の画像ブロックの予測ブロックを決定するために第1の初期動きベクトルと第2の初期動きベクトルを使用して動き補償を実行するステップとを含む方法。
  10. 前記現在の画像ブロックの初期動き情報は、前記第1の初期動きベクトル、第1の参照インデックス、前記第2の初期動きベクトル、および第2の参照インデックスを含み、前記第1の参照インデックスは、前記第1の参照ピクチャを示し、前記第2の参照インデックスは、前記第2の参照ピクチャを示す請求項9に記載の方法。
  11. 前記第1の時間的距離は、前記現在のピクチャと前記第1の参照ピクチャの間のピクチャ順序カウント(POC)距離を示し、前記第2の時間的距離は前記現在のピクチャと前記第2の参照ピクチャの間のPOC距離を示すか、または
    前記第1の時間的距離(TD0)は、前記現在のピクチャのピクチャ順序カウント値(POCc)と前記第1の参照画像のピクチャ順序カウント値(POC0)の間の差に関して表現され、前記第2の時間的距離(TD1)は、前記現在のピクチャの前記ピクチャ順序カウント値(POCc)と前記第2の参照画像のピクチャ順序カウント値(POC1)の間の差に関して表現される請求項9または10に記載の方法。
  12. ビデオの現在のピクチャ内の現在の画像ブロックのインター予測のための方法であって、
    第1の時間的距離が第2の時間的距離に等しいかどうかを決定するステップであって、前記第1の時間的距離は、前記現在のピクチャのピクチャ順序カウント値と第1の参照画像のピクチャ順序カウント値の間の差に関して表現され、前記第2の時間的距離は、第2の参照画像のピクチャ順序カウント値と前記現在のピクチャの前記ピクチャ順序カウント値の間の差に関して表現される、ステップと、
    前記第1の時間的距離が前記第2の時間的距離に等しいと決定されたときに、前記現在の画像ブロックの予測ブロックを決定するために動きベクトル精緻化(DMVR)手順を実行するステップとを含む方法。
  13. 前記第1の時間的距離が前記第2の時間的距離に等しくないと決定されたときに、第1の初期動きベクトルおよび第2の初期動きベクトルを使用して動き補償を実行して、前記現在の画像ブロックの予測ブロックを決定するステップをさらに含む請求項12に記載の方法。
  14. 動きベクトル精緻化(DMVR)手順を実行する前記ステップは、
    参照ブロックの複数の対から最良の動きベクトルによって指し示される最良マッチングブロックの対を決定するステップであって、参照ブロックの前記対は、前記第1の参照ピクチャの、第1の初期動きベクトルに基づいて決定される第1の参照ブロックと、前記第2の参照ピクチャの、第2の初期動きベクトルに基づいて決定される第2の参照ブロックとを含み、
    前記最良の動きベクトルは、第1の精緻化された動きベクトルおよび第2の精緻化された動きベクトルを含む、ステップを含む請求項12に記載の方法。
  15. 前記現在の画像ブロックの初期動き情報は、前記第1の初期動きベクトル、第1の参照インデックス、前記第2の初期動きベクトル、および第2の参照インデックスを含み、前記第1の参照インデックスは、前記第1の参照ピクチャを示し、前記第2の参照インデックスは、前記第2の参照ピクチャを示す請求項13または14に記載の方法。
  16. ビデオの現在のピクチャ内の現在の画像ブロックのインター予測のための方法であって、
    第1の時間的距離が第2の時間的距離に等しいかどうかを決定するステップであって、前記第1の時間的距離は、前記現在のピクチャのピクチャ順序カウント値と第1の参照画像のピクチャ順序カウント値の間の差に関して表現され、前記第2の時間的距離は、第2の参照画像のピクチャ順序カウント値と前記現在のピクチャの前記ピクチャ順序カウント値の間の差に関して表現される、ステップと、
    前記第1の時間的距離が前記第2の時間的距離に等しくないと決定されたときに、前記現在の画像ブロックに対して動きベクトル精緻化(DMVR)手順を実行しないステップとを含む方法。
  17. ビデオ画像を符号化するための方法であって、
    請求項1から15のいずれか一項に記載の方法に従って前記ビデオの現在のピクチャ内の現在の画像ブロックのインター予測を実行して前記現在の画像ブロックの予測ブロックを取得するステップと、
    前記現在の画像ブロックと前記予測ブロックの間の残差、および初期動き情報を示すためのインデックスを含むビットストリームを生成するステップとを含む方法。
  18. ビットストリームからビデオ画像を復号化するための方法であって、
    前記ビットストリームから、初期動き情報を示すためのインデックス、および現在の画像ブロックと前記現在の画像ブロックの予測ブロックの間の残差を解析するステップと、
    請求項1から15のいずれか一項に記載の方法に従ってビデオの現在のピクチャ内の現在の画像ブロックのインター予測を実行して前記現在の画像ブロックの予測ブロックを取得するステップと、
    前記残差および前記予測ブロックに基づいて前記現在の画像ブロックを再構築するステップとを含む方法。
  19. 符号化デバイスによって実現される符号化の方法であって、
    請求項1、3から8、および12から15のいずれか一項に記載の方法が有効化されるか、されないかを示すシンタックス要素の値を決定するステップと、
    前記シンタックス要素を含むビットストリームを生成するステップとを含む方法。
  20. 前記シンタックス要素は、シーケンスパラメータセット(SPS)レベル、ピクチャパラメータセット(PPS)レベル、スライスヘッダ、コーディングツリーユニット(CTU)シンタックス、またはコーディングユニット(CU)シンタックスのいずれか1つでシグナリングされる請求項19に記載の方法。
  21. 復号化デバイスによって実現される復号化の方法であって、
    請求項1、3から8、および12から15のいずれか一項に記載の方法が有効化されるか、されないかを示すシンタックス要素をビットストリームから解析するステップと、
    前記シンタックス要素に従ってデコーダ側動きベクトル精緻化(DMVR)手順を適応的に有効化または無効化するステップとを含む方法。
  22. 前記シンタックス要素は、ビットストリームのシーケンスパラメータセット(SPS)レベル、前記ビットストリームのピクチャパラメータセット(PPS)レベル、スライスヘッダ、コーディングツリーユニット(CTU)シンタックス、またはコーディングユニット(CU)シンタックスのいずれか1つから取得される請求項21に記載の方法。
  23. コーディングデバイスであって、
    命令を記憶するメモリと、
    前記メモリに結合されたプロセッサであって、前記プロセッサは前記メモリに記憶された命令を実行して、
    現在のピクチャが時間的に第1の参照ピクチャと第2の参照ピクチャの間にあるかどうか、および第1の時間的距離と第2の時間的距離が同じ距離であるかどうかを前記プロセッサに決定させ、前記第1の時間的距離(TD0)は、前記現在のピクチャと前記第1の参照ピクチャ(RefPic0)の間であり、前記第2の時間的距離(TD1)は、前記現在のピクチャと前記第2の参照ピクチャ(RefPic1)の間であり、
    前記現在のピクチャが時間的に前記第1の参照ピクチャと前記第2の参照ピクチャの間にあり、前記第1の時間的距離と前記第2の時間的距離は同じ距離であると決定されたときに、前記現在のピクチャ内の現在の画像ブロックの予測ブロックを決定するために動きベクトル精緻化(DMVR)手順を前記プロセッサに実行させるように構成されたプロセッサとを含むコーディングデバイス。
  24. 前記プロセッサは、前記第1の時間的距離と前記第2の時間的距離が異なること、または前記現在のピクチャが時間的に前記第1の参照ピクチャと前記第2の参照ピクチャの間にないことが決定されたときに、前記現在の画像ブロックの予測ブロックを決定するために第1の初期動きベクトルと第2の初期動きベクトルを使用して動き補償を実行するようにさらに構成された請求項23に記載のコーディングデバイス。
  25. 動きベクトル精緻化(DMVR)手順を実行することについて、前記プロセッサは、
    参照ブロックの複数の対から最良の動きベクトルによって指し示される最良マッチングブロックの対を決定するように構成され、参照ブロックの前記対は、前記第1の参照ピクチャ内にあり第1の初期動きベクトルに基づいて決定される第1の参照ブロックと、前記第2の参照ピクチャ内にあり第2の初期動きベクトルに基づいて決定される第2の参照ブロックとを含み、
    前記最良の動きベクトルは、第1の精緻化された動きベクトルおよび第2の精緻化された動きベクトルを含む請求項23に記載のデバイス。
  26. 動きベクトル精緻化(DMVR)手順を実行することについて、前記プロセッサは、具体的には、
    マッチングコスト基準に基づいて、参照ブロックのM個の対の位置から参照ブロックの対の位置を、第1の精緻化された参照ブロックの位置および第2の精緻化された参照ブロックの位置として決定するように構成され、参照ブロックの前記M個の対の前記位置は、前記第1の初期動きベクトル、前記第2の初期動きベクトル、および前記現在の画像ブロックの位置に基づいて決定され、参照ブロックの各対の位置は、第1の参照ブロックの位置と第2の参照ブロックの位置とを含み、前記第1の参照ブロックは、前記第1の参照画像内に含まれ、前記第2の参照ブロックは、前記第2の参照画像内に含まれ、参照ブロックの各対について、第1の位置オフセットと第2の位置オフセットは、大きさが等しく符号が反対であり、前記第1の位置オフセットは、第1の初期参照ブロックの位置に対する前記第1の参照ブロックの前記位置のオフセットを表現し、前記第2の位置オフセットは、第2の初期参照ブロックの位置に対する前記第2の参照ブロックの前記位置のオフセットを表現し、Mは1以上の整数である請求項23に記載のデバイス。
  27. 前記プロセッサは、前記現在のピクチャ内の前記現在の画像ブロックの初期動き情報を取得するようにさらに構成され、前記初期動き情報は、前記第1の初期動きベクトル、第1の参照インデックス、前記第2の初期動きベクトル、および第2の参照インデックスを含み、前記第1の参照インデックスは、前記第1の参照ピクチャを示し、前記第2の参照インデックスは、前記第2の参照ピクチャを示す請求項24から26のいずれか一項に記載のデバイス。
  28. 前記第1の参照ピクチャは、前記現在のピクチャに時間的に先行する参照画像であり、前記第2の参照ピクチャは、前記現在のピクチャによって時間的に先行される参照画像であるか、または前記第1の参照ピクチャは、前記現在のピクチャによって時間的に先行される参照画像であり、前記第2の参照ピクチャは、前記現在のピクチャに時間的に先行する参照画像であるか、あるいは
    前記第1の参照ピクチャは過去の参照画像であり、前記第2の参照ピクチャは未来の参照画像であるか、または前記第1の参照ピクチャは未来の参照画像であり、前記第2の参照ピクチャは過去の参照画像である請求項23から27のいずれか一項に記載のデバイス。
  29. 前記第1の時間的距離は、前記現在のピクチャと前記第1の参照ピクチャの間のピクチャ順序カウント(POC)距離を示し、前記第2の時間的距離は前記現在のピクチャと前記第2の参照ピクチャの間のPOC距離を示すか、または
    前記第1の時間的距離(TD0)は、前記現在のピクチャの前記ピクチャ順序カウント値(POCc)と前記第1の参照画像の前記ピクチャ順序カウント値(POC0)の間の差に関して表現され、前記第2の時間的距離(TD1)は、前記現在のピクチャの前記ピクチャ順序カウント値(POCc)と前記第2の参照画像の前記ピクチャ順序カウント値(POC1)の間の差に関して表現される請求項23から28のいずれか一項に記載のデバイス。
  30. 前記プロセッサは、前記第1の時間的距離と前記第2の時間的距離が、大きさが等しく符号が反対であるかどうかを決定するように構成され、前記第1の時間的距離は、前記現在のピクチャの前記ピクチャ順序カウント値と前記第1の参照画像の前記ピクチャ順序カウント値の間の差に関して表現され、前記第2の時間的距離は、前記第2の参照画像の前記ピクチャ順序カウント値と前記現在のピクチャの前記ピクチャ順序カウント値の間の差に関して表現され、
    前記プロセッサは、前記第1の時間的距離と前記第2の時間的距離は、大きさが等しく符号が反対であると決定されたときに、前記現在の画像ブロックの予測ブロックを決定するために動きベクトル精緻化(DMVR)手順を実行するように構成された請求項23から29のいずれか一項に記載のデバイス。
  31. コーディングデバイスであって、
    命令を記憶するメモリと、
    前記メモリに結合されたプロセッサであって、前記プロセッサは前記メモリに記憶された命令を実行して、
    現在のピクチャが時間的に第1の参照ピクチャと第2の参照ピクチャの間にあるかどうか、および第1の時間的距離と第2の時間的距離が同じ距離であるかどうかを前記プロセッサに決定させ、前記第1の時間的距離は、前記現在のピクチャと前記第1の参照ピクチャの間であり、前記第2の時間的距離は、前記現在のピクチャと前記第2の参照ピクチャの間であり、
    前記第1の時間的距離と前記第2の時間的距離が異なる距離であること、または前記現在のピクチャが時間的に前記第1の参照ピクチャと前記第2の参照ピクチャの間にないことが決定されたときに、前記現在のピクチャ内の現在の画像ブロックの予測ブロックを決定するために第1の初期動きベクトルと第2の初期動きベクトルを使用して動き補償を前記プロセッサに実行させるように構成されたプロセッサとを含むコーディングデバイス。
  32. 前記プロセッサは、前記現在のピクチャ内の前記現在の画像ブロックの初期動き情報を取得するようにさらに構成され、前記初期動き情報は、前記第1の初期動きベクトル、第1の参照インデックス、前記第2の初期動きベクトル、および第2の参照インデックスを含み、前記第1の参照インデックスは、前記第1の参照ピクチャを示し、前記第2の参照インデックスは、前記第2の参照ピクチャを示す請求項31に記載のコーディングデバイス。
  33. 前記第1の時間的距離は、前記現在のピクチャと前記第1の参照ピクチャの間のピクチャ順序カウント(POC)距離を示し、前記第2の時間的距離は前記現在のピクチャと前記第2の参照ピクチャの間のPOC距離を示すか、または
    前記第1の時間的距離(TD0)は、前記現在のピクチャのピクチャ順序カウント値(POCc)と前記第1の参照画像のピクチャ順序カウント値(POC0)の間の差に関して表現され、前記第2の時間的距離(TD1)は、前記現在のピクチャの前記ピクチャ順序カウント値(POCc)と前記第2の参照画像のピクチャ順序カウント値(POC1)の間の差に関して表現される請求項31または32に記載のコーディングデバイス。
  34. コーディングデバイスであって、
    命令を記憶するメモリと、
    前記メモリに結合されたプロセッサであって、前記プロセッサは前記メモリに記憶された命令を実行して、
    第1の時間的距離が第2の時間的距離に等しいかどうかを前記プロセッサに決定させ、前記第1の時間的距離は、現在のピクチャのピクチャ順序カウント値と第1の参照画像のピクチャ順序カウント値の間の差に関して表現され、前記第2の時間的距離は、第2の参照画像のピクチャ順序カウント値と前記現在のピクチャの前記ピクチャ順序カウント値の間の差に関して表現され、
    前記第1の時間的距離が前記第2の時間的距離に等しいと決定されたときに、前記現在の画像ブロックの予測ブロックを決定するために動きベクトル精緻化(DMVR)手順を前記プロセッサに実行させるように構成されたプロセッサとを含むコーディングデバイス。
  35. 前記プロセッサは、
    前記第1の時間的距離が前記第2の時間的距離に等しくないと決定されたときに、第1の初期動きベクトルおよび第2の初期動きベクトルを使用して動き補償を実行して、前記現在の画像ブロックの予測ブロックを決定するようにさらに構成された請求項34に記載のデバイス。
  36. 動きベクトル精緻化(DMVR)手順を実行することについて、前記プロセッサは、
    参照ブロックの複数の対から最良の動きベクトルによって指し示される最良マッチングブロックの対を決定するように構成され、参照ブロックの前記対は、前記第1の参照ピクチャの、第1の初期動きベクトルに基づいて決定される第1の参照ブロックと、前記第2の参照ピクチャの、第2の初期動きベクトルに基づいて決定される第2の参照ブロックとを含み、
    前記最良の動きベクトルは、第1の精緻化された動きベクトルおよび第2の精緻化された動きベクトルを含む請求項34に記載のデバイス。
  37. 前記プロセッサは、
    前記現在のピクチャ内の前記現在の画像ブロックの初期動き情報を取得するようにさらに構成され、前記初期動き情報は、前記第1の初期動きベクトル、第1の参照インデックス、前記第2の初期動きベクトル、および第2の参照インデックスを含み、前記第1の参照インデックスは、前記第1の参照ピクチャを示し、前記第2の参照インデックスは、前記第2の参照ピクチャを示す請求項35または36に記載のデバイス。
  38. コーディングデバイスであって、
    命令を記憶するメモリと、
    前記メモリに結合されたプロセッサであって、前記プロセッサは前記メモリに記憶された命令を実行して、
    第1の時間的距離が第2の時間的距離に等しいかどうかを前記プロセッサに決定させ、前記第1の時間的距離は、現在のピクチャのピクチャ順序カウント値と第1の参照画像のピクチャ順序カウント値の間の差に関して表現され、前記第2の時間的距離は、第2の参照画像のピクチャ順序カウント値と前記現在のピクチャの前記ピクチャ順序カウント値の間の差に関して表現され、
    前記第1の時間的距離が前記第2の時間的距離に等しくないと決定されたときに、前記現在の画像ブロックに対して動きベクトル精緻化(DMVR)手順を前記プロセッサに実行させないように構成されたプロセッサとを含むコーディングデバイス。
  39. ビデオの現在のピクチャ内の現在の画像ブロックのインター予測のための装置であって、
    前記現在のピクチャが時間的に第1の参照ピクチャと第2の参照ピクチャの間にあるかどうか、および第1の時間的距離と第2の時間的距離が同じ距離であるかどうかを決定するように構成された決定ユニットであって、前記第1の時間的距離(TD0)は、前記現在のピクチャと前記第1の参照ピクチャ(RefPic0)の間であり、前記第2の時間的距離(TD1)は、前記現在のピクチャと前記第2の参照ピクチャ(RefPic1)の間である、決定ユニットと、
    前記現在のピクチャが時間的に前記第1の参照ピクチャと前記第2の参照ピクチャの間にあり、前記第1の時間的距離と前記第2の時間的距離が同じ距離であると決定されたときに、前記現在の画像ブロックの予測ブロックを決定するために動きベクトル精緻化(DMVR)手順を実行するように構成されたインター予測処理ユニットとを含む装置。
  40. 前記インター予測処理ユニットは、前記第1の時間的距離と前記第2の時間的距離が異なること、または前記現在のピクチャが時間的に前記第1の参照ピクチャと前記第2の参照ピクチャの間にないことが決定されたときに、前記現在の画像ブロックの予測ブロックを決定するために第1の初期動きベクトルと第2の初期動きベクトルを使用して動き補償を実行するようにさらに構成された請求項39に記載の装置。
  41. 動きベクトル精緻化(DMVR)手順を実行することについて、前記インター予測処理ユニットは、具体的には、
    参照ブロックの複数の対から最良の動きベクトルによって指し示される最良マッチングブロックの対を決定するように構成され、参照ブロックの前記対は、前記第1の参照ピクチャ内にあり第1の初期動きベクトルに基づいて決定される第1の参照ブロックと、前記第2の参照ピクチャ内にあり第2の初期動きベクトルに基づいて決定される第2の参照ブロックとを含み、
    前記最良の動きベクトルは、第1の精緻化された動きベクトルおよび第2の精緻化された動きベクトルを含む請求項39に記載の装置。
  42. 動きベクトル精緻化(DMVR)手順を実行することについて、前記インター予測処理ユニットは、具体的には、
    マッチングコスト基準に基づいて、参照ブロックのM個の対の位置から参照ブロックの対の位置を、第1の精緻化された参照ブロックの位置および第2の精緻化された参照ブロックの位置として決定するように構成され、参照ブロックの前記M個の対の前記位置は、第1の初期動きベクトル、第2の初期動きベクトル、および前記現在の画像ブロックの位置に基づいて決定され、参照ブロックの各対の位置は、第1の参照ブロックの位置と第2の参照ブロックの位置とを含み、前記第1の参照ブロックは、前記第1の参照画像内に含まれ、前記第2の参照ブロックは、前記第2の参照画像内に含まれ、参照ブロックの各対について、前記第1の位置オフセットと前記第2の位置オフセットは、大きさが等しく符号が反対であり、前記第1の位置オフセットは、第1の初期参照ブロックの位置に対する前記第1の参照ブロックの前記位置のオフセットを表現し、前記第2の位置オフセットは、第2の初期参照ブロックの位置に対する前記第2の参照ブロックの前記位置のオフセットを表現し、Mは1以上の整数である請求項39に記載の装置。
  43. 前記インター予測処理ユニットは、前記現在のピクチャ内の前記現在の画像ブロックの初期動き情報を取得するようにさらに構成され、前記初期動き情報は、前記第1の初期動きベクトル、第1の参照インデックス、前記第2の初期動きベクトル、および第2の参照インデックスを含み、前記第1の参照インデックスは、前記第1の参照ピクチャを示し、前記第2の参照インデックスは、前記第2の参照ピクチャを示す請求項40から42のいずれか一項に記載の装置。
  44. 前記第1の参照ピクチャは、前記現在のピクチャに時間的に先行する参照画像であり、前記第2の参照ピクチャは、前記現在のピクチャによって時間的に先行される参照画像であるか、または前記第1の参照ピクチャは、前記現在のピクチャによって時間的に先行される参照画像であり、前記第2の参照ピクチャは、前記現在のピクチャに時間的に先行する参照画像であるか、あるいは
    前記第1の参照ピクチャは過去の参照画像であり、前記第2の参照ピクチャは未来の参照画像であるか、または前記第1の参照ピクチャは未来の参照画像であり、前記第2の参照ピクチャは過去の参照画像である請求項39から43のいずれか一項に記載の装置。
  45. 前記第1の時間的距離は、前記現在のピクチャと前記第1の参照ピクチャの間のピクチャ順序カウント(POC)距離を示し、前記第2の時間的距離は前記現在のピクチャと前記第2の参照ピクチャの間のPOC距離を示すか、または
    前記第1の時間的距離(TD0)は、前記現在のピクチャのピクチャ順序カウント値(POCc)と前記第1の参照画像のピクチャ順序カウント値(POC0)(POC0)の間の差に関して表現され、前記第2の時間的距離(TD1)は、前記現在のピクチャの前記ピクチャ順序カウント値(POCc)と前記第2の参照画像のピクチャ順序カウント値(POC1)の間の差に関して表現される請求項39から44のいずれか一項に記載の装置。
  46. 前記決定ユニットは、前記第1の時間的距離と前記第2の時間的距離が、大きさが等しく符号が反対であるかどうかを決定するように構成され、前記第1の時間的距離は、前記現在のピクチャの前記ピクチャ順序カウント値と前記第1の参照画像の前記ピクチャ順序カウント値の間の差に関して表現され、前記第2の時間的距離は、前記現在のピクチャの前記ピクチャ順序カウント値と前記第2の参照画像の前記ピクチャ順序カウント値の間の差に関して表現され、
    前記インター予測処理ユニットは、前記第1の時間的距離と前記第2の時間的距離は、大きさが等しく符号が反対であると決定されたときに、前記現在の画像ブロックの予測ブロックを決定するために動きベクトル精緻化(DMVR)手順を実行するように構成された請求項39から45のいずれか一項に記載の装置。
  47. ビデオの現在のピクチャ内の現在の画像ブロックのインター予測のための装置であって、
    前記現在のピクチャが時間的に第1の参照ピクチャと第2の参照ピクチャの間にあるかどうか、および第1の時間的距離と第2の時間的距離が同じ距離であるかどうかを決定するように構成された決定ユニットであって、前記第1の時間的距離は、前記現在のピクチャと前記第1の参照ピクチャの間であり、前記第2の時間的距離は、前記現在のピクチャと前記第2の参照ピクチャの間である、決定ユニットと、
    前記第1の時間的距離と前記第2の時間的距離が異なる距離であること、または前記現在のピクチャが時間的に前記第1の参照ピクチャと前記第2の参照ピクチャの間にないことが決定されたときに、前記現在の画像ブロックの予測ブロックを決定するために第1の初期動きベクトルと第2の初期動きベクトルを使用して動き補償を実行するように構成されたインター予測処理ユニットとを含む装置。
  48. 前記現在の画像ブロックの初期動き情報は、前記第1の初期動きベクトル、第1の参照インデックス、前記第2の初期動きベクトル、および第2の参照インデックスを含み、前記第1の参照インデックスは、前記第1の参照ピクチャを示し、前記第2の参照インデックスは、前記第2の参照ピクチャを示す請求項47に記載の装置。
  49. 前記第1の時間的距離は、前記現在のピクチャと前記第1の参照ピクチャの間のピクチャ順序カウント(POC)距離を示し、前記第2の時間的距離は前記現在のピクチャと前記第2の参照ピクチャの間のPOC距離を示すか、または
    前記第1の時間的距離(TD0)は、前記現在のピクチャのピクチャ順序カウント値(POCc)と前記第1の参照画像のピクチャ順序カウント値(POC0)の間の差に関して表現され、前記第2の時間的距離(TD1)は、前記現在のピクチャの前記ピクチャ順序カウント値(POCc)と前記第2の参照画像のピクチャ順序カウント値(POC1)の間の差に関して表現される請求項47または48に記載の装置。
  50. ビデオの現在のピクチャ内の現在の画像ブロックのインター予測のための装置であって、
    第1の時間的距離が第2の時間的距離に等しいかどうかを決定するように構成された決定ユニットであって、前記第1の時間的距離は、前記現在のピクチャのピクチャ順序カウント値と第1の参照画像のピクチャ順序カウント値の間の差に関して表現され、前記第2の時間的距離は、第2の参照画像のピクチャ順序カウント値と前記現在のピクチャの前記ピクチャ順序カウント値の間の差に関して表現される、決定ユニットと、
    前記第1の時間的距離が前記第2の時間的距離に等しいと決定されたときに、前記現在の画像ブロックの予測ブロックを決定するために動きベクトル精緻化(DMVR)手順を実行するように構成されたインター予測処理ユニットとを含む装置。
  51. 前記インター予測処理ユニットは、前記第1の時間的距離が前記第2の時間的距離に等しくないと決定されたときに、第1の初期動きベクトルおよび第2の初期動きベクトルを使用して動き補償を実行して、前記現在の画像ブロックの予測ブロックを決定するようにさらに構成された請求項50に記載の装置。
  52. 動きベクトル精緻化(DMVR)手順を実行することについて、前記インター予測処理ユニットは、参照ブロックの複数の対から最良の動きベクトルによって指し示される最良マッチングブロックの対を決定するように構成され、参照ブロックの前記対は、前記第1の参照ピクチャの、第1の初期動きベクトルに基づいて決定される第1の参照ブロックと、前記第2の参照ピクチャの、第2の初期動きベクトルに基づいて決定される第2の参照ブロックとを含み、前記最良の動きベクトルは、第1の精緻化された動きベクトルおよび第2の精緻化された動きベクトルを含む請求項50に記載の装置。
  53. 前記インター予測処理ユニットは、前記現在のピクチャ内の前記現在の画像ブロックの初期動き情報を取得するようにさらに構成され、前記初期動き情報は、前記第1の初期動きベクトル、第1の参照インデックス、前記第2の初期動きベクトル、および第2の参照インデックスを含み、前記第1の参照インデックスは、前記第1の参照ピクチャを示し、前記第2の参照インデックスは、前記第2の参照ピクチャを示す請求項51または52に記載の装置。
  54. ビデオの現在のピクチャ内の現在の画像ブロックのインター予測のための装置であって、
    第1の時間的距離が第2の時間的距離に等しいかどうかを決定するように構成された決定ユニットであって、前記第1の時間的距離は、前記現在のピクチャのピクチャ順序カウント値と第1の参照画像のピクチャ順序カウント値の間の差に関して表現され、前記第2の時間的距離は、第2の参照画像のピクチャ順序カウント値と前記現在のピクチャの前記ピクチャ順序カウント値の間の差に関して表現される、決定ユニットと、
    前記第1の時間的距離が前記第2の時間的距離に等しくないと決定されたときに、前記現在の画像ブロックに対して動きベクトル精緻化(DMVR)手順を実行しないように構成されたインター予測処理ユニットとを含む装置。
  55. ビデオ画像を符号化するための符号化装置であって、
    現在の画像ブロックの予測ブロックを取得するための請求項39から53のいずれか一項に記載の装置と、
    前記現在の画像ブロックと前記予測ブロックの間の残差、および初期動き情報を示すためのインデックスを含むビットストリームを生成するように構成されたエントロピーコーディングユニットとを含む符号化装置。
  56. ビットストリームからビデオ画像を復号化するための復号化装置であって、
    前記ビットストリームから、初期動き情報を示すためのインデックス、および現在の画像ブロックと前記現在の画像ブロックの予測ブロックの間の残差を解析するように構成されたエントロピー復号化ユニットと、
    前記現在の画像ブロックの前記予測ブロックを取得するための請求項39から53のいずれか一項に記載の装置と、
    前記残差および前記予測ブロックに基づいて前記現在の画像ブロックを再構築するように構成された画像再構築ユニットとを含む復号化装置。
  57. 符号化デバイスであって、
    請求項1、3から8、および12から15のいずれか一項に記載の方法を有効化または無効化するためのシンタックス要素の値を決定し、
    前記シンタックス要素を含むビットストリームを生成する
    ように構成された1つまたは複数の処理回路を含む符号化デバイス。
  58. 前記シンタックス要素は、シーケンスパラメータセット(SPS)レベル、ピクチャパラメータセット(PPS)レベル、スライスヘッダ、コーディングツリーユニット(CTU)シンタックス、またはコーディングユニット(CU)シンタックスのいずれか1つでシグナリングされる請求項57に記載の符号化デバイス。
  59. 復号化デバイスであって、
    請求項1、3から8、および12から15のいずれか一項に記載の方法が有効化されるか、されないかを示すためのシンタックス要素をビットストリームから解析し、
    前記シンタックス要素に従ってデコーダ側動きベクトル精緻化(DMVR)手順を適応的に有効化または無効化する
    ように構成された1つまたは複数の処理回路を含む復号化デバイス。
  60. 前記シンタックス要素は、ビットストリームのシーケンスパラメータセット(SPS)レベル、前記ビットストリームのピクチャパラメータセット(PPS)レベル、スライスヘッダ、コーディングツリーユニット(CTU)シンタックス、またはコーディングユニット(CU)シンタックスのいずれか1つから取得される請求項59に記載の復号化デバイス。
  61. プロセッサにおいて実行されたときに請求項1から22のいずれか一項に記載のステップを実行するコンピュータ可読命令を記憶するコンピュータ可読媒体。
JP2021514368A 2018-09-13 2019-09-12 ビデオコーディングにおける条件付きデコーダ側動きベクトル精緻化のための装置および方法 Active JP7297874B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2023098026A JP2023126226A (ja) 2018-09-13 2023-06-14 ビデオコーディングにおける条件付きデコーダ側動きベクトル精緻化のための装置および方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
IN201831034607 2018-09-13
IN201831034607 2018-09-13
PCT/CN2019/105717 WO2020052654A1 (en) 2018-09-13 2019-09-12 Apparatus and method for conditional decoder-side motion vector refinement in video coding

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2023098026A Division JP2023126226A (ja) 2018-09-13 2023-06-14 ビデオコーディングにおける条件付きデコーダ側動きベクトル精緻化のための装置および方法

Publications (2)

Publication Number Publication Date
JP2022500930A true JP2022500930A (ja) 2022-01-04
JP7297874B2 JP7297874B2 (ja) 2023-06-26

Family

ID=69778183

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2021514368A Active JP7297874B2 (ja) 2018-09-13 2019-09-12 ビデオコーディングにおける条件付きデコーダ側動きベクトル精緻化のための装置および方法
JP2023098026A Pending JP2023126226A (ja) 2018-09-13 2023-06-14 ビデオコーディングにおける条件付きデコーダ側動きベクトル精緻化のための装置および方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2023098026A Pending JP2023126226A (ja) 2018-09-13 2023-06-14 ビデオコーディングにおける条件付きデコーダ側動きベクトル精緻化のための装置および方法

Country Status (10)

Country Link
US (2) US11563948B2 (ja)
EP (2) EP4415364A3 (ja)
JP (2) JP7297874B2 (ja)
KR (2) KR102653856B1 (ja)
CN (8) CN117241015A (ja)
BR (1) BR112021004800A8 (ja)
MX (1) MX2021003048A (ja)
PL (1) PL3847807T3 (ja)
SG (1) SG11202102569QA (ja)
WO (1) WO2020052654A1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020084509A1 (en) 2018-10-23 2020-04-30 Beijing Bytedance Network Technology Co., Ltd. Harmonized local illumination compensation and modified inter coding tools
CN112913247B (zh) 2018-10-23 2023-04-28 北京字节跳动网络技术有限公司 使用局部照明补偿的视频处理
WO2020130710A1 (ko) * 2018-12-21 2020-06-25 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
WO2020147747A1 (en) 2019-01-15 2020-07-23 Beijing Bytedance Network Technology Co., Ltd. Weighted prediction in video coding
CN113316933B (zh) 2019-01-17 2024-10-11 北京字节跳动网络技术有限公司 使用运动预测进行去方块滤波
CN118612456A (zh) * 2019-02-14 2024-09-06 Lg 电子株式会社 基于dmvr的帧间预测方法和设备
US20210092427A1 (en) * 2019-09-23 2021-03-25 Qualcomm Incorporated Harmonized early termination in bdof and dmvr in video coding
CN118765498A (zh) * 2021-12-07 2024-10-11 抖音视界有限公司 用于视频处理的方法、装置和介质
CN118575478A (zh) * 2022-01-18 2024-08-30 北京达佳互联信息技术有限公司 视频编解码中考虑边界外条件的运动补偿

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018092870A1 (ja) * 2016-11-21 2018-05-24 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法及び復号方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102123283B (zh) * 2011-03-11 2013-10-30 杭州海康威视数字技术股份有限公司 视频帧率转换中的插值帧获取方法及其装置
US11330284B2 (en) * 2015-03-27 2022-05-10 Qualcomm Incorporated Deriving motion information for sub-blocks in video coding
US10944963B2 (en) * 2016-05-25 2021-03-09 Arris Enterprises Llc Coding weighted angular prediction for intra coding
WO2018105582A1 (ja) * 2016-12-09 2018-06-14 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法及び復号方法
WO2018113658A1 (en) * 2016-12-22 2018-06-28 Mediatek Inc. Method and apparatus of motion refinement for video coding
US10750203B2 (en) * 2016-12-22 2020-08-18 Mediatek Inc. Method and apparatus of adaptive bi-prediction for video coding
US10911761B2 (en) * 2016-12-27 2021-02-02 Mediatek Inc. Method and apparatus of bilateral template MV refinement for video coding
CN107360433B (zh) * 2017-07-20 2020-06-19 北京奇艺世纪科技有限公司 一种帧间预测编码方法和装置
WO2019234578A1 (en) * 2018-06-05 2019-12-12 Beijing Bytedance Network Technology Co., Ltd. Asymmetric weighted bi-predictive merges
CN118612456A (zh) * 2019-02-14 2024-09-06 Lg 电子株式会社 基于dmvr的帧间预测方法和设备

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018092870A1 (ja) * 2016-11-21 2018-05-24 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法及び復号方法
US20190273931A1 (en) * 2016-11-21 2019-09-05 Panasonic Intellectual Property Corporation Of America Encoder, decoder, encoding method, and decoding method

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
CHUN-CHI CHEN, WEI-JUNG CHIEN, MARTA KARCZEWICZ, SEMIH ESENLIK, IVAN KRASNOV, ZHIJIE ZHAO, MA XIANG,: "CE9-related: Harmonization between CE9.2.6 (DMVR with Template-free Bilateral Matching, JVET-K0359)", JVET-K JVET-K0361-V2, JPN6022029881, 17 October 2019 (2019-10-17), pages 1 - 5, ISSN: 0004828281 *
HAITAO YANG, ET.AL.: "Subblock-Based Motion Derivation and Inter Prediction Refinement in the Versatile Video Coding Stand", IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY, vol. Volume: 31, Issue: 10, October 2021, JPN6022029884, 27 July 2021 (2021-07-27), pages 3862 - 3877, ISSN: 0004828285 *
HUANBANG CHEN, JIANLE CHEN, ROMAN CHERNYAK, SEMIH ESENLIK, ALEXEY FILIPPOV, SHAN GAO, SERGEY IKONIN,: "Description of SDR, HDR and 360° video coding technology proposal by Huawei, GoPro, HiSilicon, and", JVET-J JVET-J0025_V2, JPN6022029880, 17 October 2019 (2019-10-17), pages 1 - 67, ISSN: 0004828283 *
SEMIH ESENLIK, ANAND MEHER KOTRA, BIAO WANG, HAN GAO, JIANLE CHEN, SRIRAM SETHURAMAN: "Simplified DMVR for inclusion in VVC [online]", JVET-L JVET-L0670, JPN6022029883, 17 October 2019 (2019-10-17), pages 1 - 5, ISSN: 0004828284 *
SEMIH ESENLIK, IVAN KRASNOV, ZHIJIE ZHAO, MA XIANG, HAITAO YANG, JIANLE CHEN, YUE LI: "CE9: DMVR with Bilateral Matching (Test2.9) [online]", JVET-K JVET-K0217_V1, JPN6022029882, 17 October 2019 (2019-10-17), pages 1 - 5, ISSN: 0004828282 *

Also Published As

Publication number Publication date
CN112740679A (zh) 2021-04-30
PL3847807T3 (pl) 2024-09-09
CN116405666A (zh) 2023-07-07
KR20210057146A (ko) 2021-05-20
EP4415364A2 (en) 2024-08-14
BR112021004800A2 (pt) 2021-06-08
JP2023126226A (ja) 2023-09-07
EP4415364A3 (en) 2024-10-23
US20220368921A9 (en) 2022-11-17
EP3847807A1 (en) 2021-07-14
KR20240046631A (ko) 2024-04-09
MX2021003048A (es) 2021-08-11
JP7297874B2 (ja) 2023-06-26
CN112740679B (zh) 2023-03-24
BR112021004800A8 (pt) 2021-06-22
US20210203946A1 (en) 2021-07-01
SG11202102569QA (en) 2021-04-29
CN117478873A (zh) 2024-01-30
CN116743992A (zh) 2023-09-12
EP3847807B1 (en) 2024-06-19
US20230188722A1 (en) 2023-06-15
CN116489345A (zh) 2023-07-25
CN117241015A (zh) 2023-12-15
CN116437076A (zh) 2023-07-14
US11563948B2 (en) 2023-01-24
WO2020052654A1 (en) 2020-03-19
KR102653856B1 (ko) 2024-04-01
EP3847807A4 (en) 2021-11-03
CN116405667A (zh) 2023-07-07

Similar Documents

Publication Publication Date Title
CN112823517B (zh) 基于历史的运动矢量预测子的改进
KR102608366B1 (ko) 인트라 예측 방법 및 디바이스
US10477237B2 (en) Decoder side motion vector refinement in video coding
JP7297874B2 (ja) ビデオコーディングにおける条件付きデコーダ側動きベクトル精緻化のための装置および方法
US10542280B2 (en) Encoding optimization with illumination compensation and integer motion vector restriction
US9736489B2 (en) Motion vector determination for video coding
US10616582B2 (en) Memory and bandwidth reduction of stored data in image/video coding
JP2021530917A (ja) ビデオ符号器、ビデオ復号器、並びに対応する符号化及び復号化方法
TW201803348A (zh) 用於在視頻寫碼中之並列參考指標的一致性約束
KR20160106617A (ko) 비디오 코딩을 위한 적응 모션 벡터 해상도 시그널링
KR20130126688A (ko) 모션 벡터 예측
TW201338549A (zh) 產生額外合併候選者
JP2014511653A (ja) 復号ピクチャバッファ管理
KR20230150284A (ko) 효율적인 비디오 인코더 아키텍처

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210510

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210510

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220617

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220719

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220817

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221205

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230303

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: 20230515

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230614

R150 Certificate of patent or registration of utility model

Ref document number: 7297874

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150