JP2014535249A - 追加マージ候補の生成 - Google Patents

追加マージ候補の生成 Download PDF

Info

Publication number
JP2014535249A
JP2014535249A JP2014541199A JP2014541199A JP2014535249A JP 2014535249 A JP2014535249 A JP 2014535249A JP 2014541199 A JP2014541199 A JP 2014541199A JP 2014541199 A JP2014541199 A JP 2014541199A JP 2014535249 A JP2014535249 A JP 2014535249A
Authority
JP
Japan
Prior art keywords
candidate
candidates
video
motion information
current
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
JP2014541199A
Other languages
English (en)
Other versions
JP5908600B2 (ja
Inventor
ジャン、ユンフェイ
ワン、シャンリン
カークゼウィックズ、マルタ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of JP2014535249A publication Critical patent/JP2014535249A/ja
Application granted granted Critical
Publication of JP5908600B2 publication Critical patent/JP5908600B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • 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/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • 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/154Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
    • 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/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding

Landscapes

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

Abstract

インター予測映像コーディングのための候補リストを生成する際に、映像コーダは、空間的候補及び時間的候補を候補リストに加えるときにプルーニング動作を行うことができ、人工的に生成された候補を候補リストに加えるときにはプルーニング動作を行わない。人工的に生成された候補は、候補リスト内に既に存在する空間的候補又は時間的候補の動き情報と同じである動き情報を有することができる。

Description

本特許出願は、
米国仮特許出願第61/556,746号(出願日:2011年11月7日)、
米国仮特許出願第61/562,284号(出願日:2011年11月21日)、及び
米国仮特許出願第61/562,940号(出願日:2011年11月22日)の利益を主張するものであり、それらの各々の内容全体が、引用によってここに組み入れられている。
本開示は、映像コーディングに関するものである。本開示は、より具体的には、映像データのマージモード予測に関するものである。
デジタル映像能力を広範なデバイス内に組み入れることができ、デジタルテレビと、デジタル直接放送システムと、無線放送システムと、パーソナルデジタルアシスタント(PDA)と、ラップトップ又はデスクトップコンピュータと、デジタルカメラと、デジタル記録デバイスと、デジタルメディアプレーヤーと、ビデオゲームプレイ装置と、ビデオゲームコンソールと、セルラー又は衛星無線電話と、ビデオ会議装置と、等を含む。デジタル映像デバイスは、デジタル映像情報をより効率的に送信、受信、及び格納するための映像圧縮技法、例えば、MPEG−2、MPEG−4、ITU−T H.263、ITU−T H.264/MPEG−4、Part10、アドバンストビデオコーディング(Advanced Video Coding(AVC))、現在開発中の高効率映像コーディング(High Efficiency Video Coding(HEVC)規格によって定義される規格、及び該規格の拡張版において説明されるそれらを実装する。
映像圧縮技法は、映像シーケンスに固有の冗長性を低減又は除去するために空間(イントラピクチャ)予測及び/又は時間(インターピクチャ)予測を行う。ブロックに基づく映像コーディングでは、映像スライスを映像ブロックに分割することができ、それらは、ツリーブロック、コーディングユニット(CU)及び/又はコーディングノードと呼ばれることもある。ピクチャのイントラコーディングされた(I)スライス内の映像ブロックは、同じピクチャ内の近隣ブロック内の基準サンプルに関して空間予測を用いて符号化される。ピクチャのインターコーディングされた(P又はB)スライス内の映像ブロックは、同じピクチャ内の近隣ブロック内の基準サンプルに関しては空間予測、その他の基準ピクチャ内の基準サンプルに関しては時間予測を使用することができる。ピクチャは、フレームと呼ぶことができ、基準ピクチャは、基準フレームと呼ぶことができる。
本開示は、映像符号器において、インター予測コーディングで使用するための候補リストを生成し、映像復号器において同じ候補リストを生成するための技法について説明する。映像符号器及び映像復号器は、同じ候補リスト構築技法を実装することによって同じ候補リストを生成することができる。例えば、映像符号器及び映像復号器の両方とも、同じ数の候補を有するリストを構築することができる。映像符号器及び映像復号器は、希望される数の候補がリストに追加されるまで、最初に空間的候補(例えば、同じピクチャ内の近隣ブロック)を検討し、次に、時間的候補(例えば、異なるピクチャ内の候補)を検討し、最後に、人工的に生成された候補を検討することができる。本開示の技法により、候補リストから重複物を取り除くために候補リスト構築中に幾つかのタイプの候補のためにプルーニング(pruning)動作を利用することができ、他方、その他のタイプの候補に関しては、コーダの複雑さを低減するためにプルーニングを使用することはできない。
一例では、映像データをコーディングする方法は、現在の映像フレームの現在の部分と関連付けられた空間的候補の組を決定することであって、空間的候補の組は、現在の部分に隣接する現在の映像フレームの近隣部分に対応し、及び、空間的候補の各々は、関連付けられた動き情報を有することと、現在の映像フレームの現在の部分と関連付けられた時間的候補を決定することであって、時間的候補は、基準映像フレームの一部分に対応し、及び時間的候補は、関連付けられた動き情報を有することと、空間的候補の組の部分組及び時間的候補に基づいて候補リストを生成することと、候補リストが指定された候補数よりも少ない候補数を備えることに応答して、人工的に生成された候補を候補リストに追加することであって、人工的に生成された候補は、部分組の空間的候補の動き情報又は時間的候補の動き情報と同じである動き情報を有することと、を含む。
他の例では、映像データをコーディングするためのデバイスは、現在の映像フレームの現在の部分と関連付けられた空間的候補の組を決定し、現在の映像フレームの現在の部分と関連付けられた時間的候補を決定し、空間的候補の組の部分組及び時間的候補に基づいて候補リストを生成し、及び候補リストが指定された候補数よりも少ない候補数を備えることに応答して、人工的に生成された候補を候補リストに追加するように構成された映像コーダを含み、空間候補の組は、現在の部分に隣接する現在の映像フレームの近隣部分に対応し、及び、空間候補の各々は、関連付けられた動き情報を有し、時間的候補は、基準映像フレームの一部分に対応し、時間的候補は、関連付けられた動き情報を有し、人工的に生成された候補は、部分組の空間的候補の動き情報又は時間的候補の動き情報と同じである動き情報を有する。
他の例では、映像データをコーディングするためのデバイスは、現在の映像フレームの現在の部分と関連付けられた空間的候補の組を決定するための手段であって、空間的候補の組は、現在の部分に隣接する現在の映像フレームの近隣部分に対応し、及び、空間的候補の各々は、関連付けられた動き情報を有する手段と、現在の映像フレームの現在の部分と関連付けられた時間的候補を決定するための手段であって、時間的候補は、基準映像フレームの一部分に対応し、及び時間的候補は、関連付けられた動き情報を有する手段と、空間的候補の組の部分組及び時間的候補に基づいて候補リストを生成するための手段と、候補リストが指定された候補数よりも少ない候補数を備えることに応答して、人工的に生成された候補を候補リストに追加するための手段であって、人工的に生成された候補は、部分組の空間的候の動き情報又は時間的候補の動き情報と同じである動き情報を有する手段と、を含む。
他の例では、コンピュータによって読み取り可能な記憶媒体は、実行されたときに、現在の映像フレームの現在の部分と関連付けられた空間候補の組を決定し、現在の映像フレームの現在の部分と関連付けられた時間的候補を決定し、空間的候補の組の部分組及び時間的候補に基づいて候補リストを生成し、及び候補リストが指定された候補数よりも少ない候補数を備えることに応答して、人工的に生成された候補を候補リストに追加することを1つ以上のプロセッサに行わせる命令を格納し、空間候補の組は、現在の部分に隣接する現在の映像フレームの近隣部分に対応し、及び、空間候補の各々は、関連付けられた動き情報を有し、時間的候補は、基準映像フレームの一部分に対応し、時間的候補は、関連付けられた動き情報を有し、人工的に生成された候補は、部分組の空間的候補の動き情報又は時間候補の動き情報と同じである動き情報を有する。
1つ以上の例の詳細が、添付図及び以下の説明において示される。それらの説明と図面から、及び請求項から、その他の特徴、目的、及び利点が明らかになるであろう。
本開示の技法を利用することができる映像コーディングシステム例を示したブロック図である。 本開示の技法を実装するように構成される映像符号器例を示したブロック図である。 本開示の技法を実装するように構成される映像復号器例を示したブロック図である。 インター予測モジュールの構成例を示したブロック図である。 マージ動作例を示したフローチャートである。 アドバンスト動きベクトル予測(AMVP)動作例を示したフローチャートである。 映像復号器によって行われる動き補償動作例を示したフローチャートである。 コーディングユニット(CU)及びCUと関連付けられたソース位置例を示した概念図である。 候補リスト構築動作例を示したフローチャートである。 結合された候補をマージ候補リストに追加する図形例を示した図である。 スケーリングされた候補をマージ候補リストに追加する図形例を示した図である。 ゼロ候補をマージ候補リストに追加する図形例を示した図である。 mv_offsetを生成する図形例を示した図である。 mv_offsetを生成する図形例を示した図である。 本開示で説明される技法の例を示したフローチャートである。
映像符号器は、ピクチャ間での時間的冗長性を低減させるためのインター予測を行うことができる。後述されるように、コーディングユニット(CU)は、複数の予測ユニット(PU)を有することができる。換言すると、複数のPUがCUに属することができる。映像符号器がインター予測を行うときには、映像符号器は、PUに関する動き情報をシグナリングすることができる。PUの動き情報は、例えば、基準ピクチャインデックスと、動きベクトルと、予測方向インジケータと、を含むことができる。動きベクトルは、PUの映像ブロックとPUの基準ブロックとの間の変位を示すことができる。PUの基準ブロックは、PUの映像ブロックに類似する基準ピクチャの一部分であることができる。基準ブロックは、基準ピクチャインデックス及び予測方向インジケータによって示される基準ピクチャ内に位置することができる。
PUの動き情報を表現するために要求されるビット数を減少させるために、映像符号器は、マージモード又はアドバンスト動きベクトル予測(AMVP)プロセスによりPUの各々に関する候補リストを生成することができる。PUに関する候補リスト内の各候補は、動き情報を示すことができる。候補リスト内の候補の一部によって示される動き情報は、その他のPUの動き情報に基づくことができる。本開示は、候補が指定された空間的又は時間的候補位置のうちの1つの動き情報を示す場合は、その候補を“オリジナルの”候補と呼ぶことができる。例えば、マージモードに関しては、5つのオリジナルの空間的候補の位置及び1つのオリジナルの時間的候補の位置が存在することができる。幾つかの例では、映像符号器は、異なるオリジナルの候補からの部分的動きベクトルを結合し、オリジナルの候補を変更することによって追加の候補を生成するか、又は単にゼロの動きベクトルを候補として挿入することができる。これらの追加の候補は、オリジナルの候補とはみなされず、本開示では人工的に生成された候補と呼ぶことができる。
本開示の技法は、概して、映像符号器において候補リストを生成するための技法及び映像復号器において同じ候補リストを生成するための技法に関するものである。映像符号器及び映像復号器は、同じ候補リスト構築技法を実装することによって同じ候補リストを生成することができる。例えば、映像符号器及び映像復号器の両方とも、同じ候補数(例えば、5つの候補)を有するリストを構築することができる。映像符号器及び映像復号器は、希望される数の候補がリストに追加されるまで、最初に、空間的候補(例えば、同じピクチャ内の近隣ブロック)を検討し、次に、時間的候補(例えば、異なるピクチャ内の候補)を検討し、最後に、人工的に生成された候補を検討することができる。本開示の技法により、候補リストから重複物を除去するために候補リスト構築中に幾つかのタイプの候補のためにプルーニング動作を利用することができ、他方、その他のタイプの候補に関しては、コーダの複雑さを低減するためにプルーニングを使用することはできない。例えば、空間的候補の組に関して及び時間的候補に関して、重複する動き情報を有する候補を候補リストから除外するためのプルーニング動作を行うことができる。しかしながら、人工的に生成された候補を候補リストに追加するときには、人工的に生成された候補は、人工的に生成された候補に関するプルーニング動作を行わずに追加することができる。
CUのPUに関する候補リストを生成後は、映像符号器は、候補リストから候補を選択し、候補インデックスをビットストリームで出力することができる。選択された候補は、コーディング中のターゲットPUと最も密接にマッチする予測子が結果的に得られる動きベクトルを有する候補であることができる。候補インデックスは、候補リスト内における選択された候補の位置を示すことができる。映像符号器は、PUの動き情報によって示される基準ブロックに基づいてPUに関する予測映像ブロックを生成することもできる。PUの動き情報は、選択された候補によって示される動き情報に基づいて決定することができる。例えば、マージモードでは、PUの動き情報は、選択された候補によって示される動き情報と同じであることができる。AMVPモードでは、PUの動き情報は、PUの動きベクトル差分及び選択された候補によって示される動き情報に基づいて決定することができる。映像符号器は、CUのPUの予測映像ブロック及びCUに関するオリジナルの映像ブロックに基づいてCUに関する1つ以上の残差映像ブロックを生成することができる。映像符号器は、1つ以上の残差映像ブロックを符号化し、ビットストリームで出力することができる。
ビットストリームは、PUの候補リスト内の選択された候補を識別するデータを含むことができる。映像復号器は、PUの候補リスト内の選択された候補によって示される動き情報に基づいてPUの動き情報を決定することができる。映像復号器は、PUの動き情報に基づいてPUに関する1つ以上の基準ブロックを識別することができる。PUの1つ以上の基準ブロックを識別後は、映像復号器は、PUの1つ以上の基準ブロックに基づいてPUに関する予測映像ブロックを生成することができる。映像復号器は、CUのPUに関する予測映像ブロック及びCUに関する1つ以上の残差映像ブロックに基づいてCUに関する映像ブロックを再構築することができる。
説明を容易にするために、本開示は、位置又は映像ブロックがCU又はPUと様々な空間的関係を有するとして説明することができる。該説明は、位置又は映像ブロックがCU又はPUと関連付けられた映像ブロックと様々な空間的関係を有することを意味すると解釈することができる。さらに、本開示は、映像コーダが現在コーディング中のPUを現在のPUと呼ぶことができる。本開示は、映像コーダが現在コーディング中のCUを現在のCUと呼ぶことができる。本開示は、映像コーダが現在コーディング中のピクチャを現在のピクチャと呼ぶことができる。
添付される図は、例を示すものである。添付される図面内で参照数字によって示される要素は、以下の説明において同様の参照数字によって示される要素に対応する。本開示では、序数(例えば、“第1の”、“第2の”、“第3の”、等)で始まる名前を有する要素は、それらの要素が特定の順序を有することは必ずしも示していない。むしろ、該序数は、同じ又は同様のタイプの異なる要素を意味するために使用されるにすぎない。
図1は、本開示の技法を利用することができる映像コーディングシステム例10を示したブロック図である。ここで使用される場合において、用語“映像コーダ”は、概して、映像符号器及び映像復号器の両方を意味する。本開示では、用語“映像コーディング”又は“コーディング”は、概して、映像符号化及び映像復号を意味することができる。
図1に示されるように、映像コーディングシステム10は、ソースデバイス12と、行先デバイス14と、を含む。ソースデバイス12は、符号化された映像データを生成する。従って、ソースデバイス12は、映像符号化デバイスと呼ぶことができる。行先デバイス14は、ソースデバイス12によって生成された符号化された映像データを復号することができる。従って、行先デバイス14は、映像復号デバイスと呼ぶことができる。ソースデバイス12及び行先デバイス14は、映像コーディングデバイスの例であることができる。
ソースデバイス12及び行先デバイス14は、広範なデバイスを備えることができ、デスクトップコンピュータ、モバイルコンピューティングデバイス、ノートブック(例えば、ラップトップ)コンピュータ、タブレットコンピュータ、セットトップボックス、電話ハンドセット、例えば、いわゆる“スマート”フォン、テレビ、カメラ、表示装置、デジタルメディアプレーヤー、ビデオゲームコンソール、車内コンピュータ、等を含む。幾つかの例では、ソースデバイス12及び行先デバイス14は、無線通信のために装備することができる。
行先デバイス14は、チャネル16を介してソースデバイス12から符号化された映像データを受信することができる。チャネル16は、符号化された映像データをソースデバイス12から行先デバイス14に移動させることが可能なタイプの媒体又はデバイスを備えることができる。一例では、チャネル16は、ソースデバイス12が符号化された映像データをリアルタイムで直接行先デバイス14に送信するのを可能にする通信媒体を備えることができる。この例では、ソースデバイス12は、符号化された映像データを通信規格、例えば、無線通信プロトコル、により変調することができ、変調された映像データを行先デバイス14に送信することができる。通信媒体は、無線又は有線の通信媒体、例えば、無線周波数(RF)スペクトル又は1つ以上の物理的な送信ライン、を備えることができる。通信媒体は、パケットに基づくネットワーク、例えば、ローカルエリアネットワーク、ワイドエリアネットワーク、又はグローバルネットワーク、例えば、インターネット、の一部を形成することができる。通信媒体は、ルータ、スイッチ、基地局、又は、ソースデバイス12から行先デバイス14への通信を容易にするその他の装置を含むことができる。
他の例では、チャネル16は、ソースデバイス12によって生成された符号化された映像データを格納する記憶媒体に対応することができる。この例では、行先デバイス14は、ディスクアクセス又はカードアクセスを介して記憶媒体にアクセスすることができる。記憶媒体は、様々なローカルでアクセスされるデータ記憶媒体、例えば、Blu−ray(登録商標)ディスク、DVD、CD−ROM、フラッシュメモリ、又は符号化された映像データを格納するためのその他の適切なデジタル記憶媒体、を含むことができる。さらなる例では、チャネル16は、ソースデバイス12によって生成された符号化された映像を格納するファイルサーバ又はその他の中間的な記憶デバイスを含むことができる。この例では、行先デバイス14は、ストリーミング又はダウンロードを介してファイルサーバ又はその他の中間的な記憶デバイスに格納された符号化された映像データにアクセスすることができる。ファイルサーバは、符号化された映像データを格納し及びその符号化された映像データを行先デバイス14に送信することが可能なタイプのサーバであることができる。ファイルサーバ例は、(例えば、ウェブサイトのための)ウェブサーバと、ファイル転送プロトコル(FTP)サーバと、ネットワーク接続記憶(NAS)デバイスと、ローカルディスクドライブとを含む。行先デバイス14は、インターネット接続を含むあらゆる標準的なデータ接続を通じて符号化された映像データにアクセスすることができる。データ接続のタイプ例は、無線チャネル(例えば、Wi−Fi接続)、有線接続(例えば、DSL、ケーブルモデム、等)、又はファイルサーバに格納された符号化された映像データにアクセスするのに適する両方の組み合わせ、を含むことができる。ファイルサーバからの符号化された映像データの送信は、ストリーミング送信、ダウンロード送信、又は両方の組み合わせであることができる。
本開示の技法は、無線用途又はセッティングには限定されない。それらの技法は、様々なマルチメディア用途、例えば、オーバーザエアテレビ放送、ケーブルテレビ送信、衛星テレビ送信、例えば、インターネットを介してのストリーミング映像送信、データ記憶媒体上での格納のためのデジタル映像の符号化、データ記憶媒体に格納されたデジタル映像の復号、又はその他の用途をサポートして映像コーディングに適用することができる。幾つかの例では、映像コーディングシステム10は、映像ストリーミング、映像再生、映像放送、及び/又は映像テレフォニー、等の用途をサポートするための一方向又は両方向の映像送信をサポートするように構成することができる。
図1の例では、ソースデバイス12は、映像ソース18と、映像符号器20と、出力インタフェース22と、を含む。幾つかの場合は、出力インタフェース22は、変調器/復調器(モデム)及び/又は送信機を含むことができる。ソースデバイス12内では、映像ソース18は、ソース、例えば、映像キャプチャデバイス、例えば、ビデオカメラ、以前にキャプチャされた映像が入った映像アーカイブ、映像コンテンツプロバイダから映像を受信するための映像フィードインタフェース、及び/又は映像データを生成するためのコンピュータグラフィックスシステム、又は該ソースの組み合わせ、を含むことができる。
映像符号器20は、キャプチャされた、予めキャプチャされた、又はコンピュータによって生成された映像データを符号化することができる。符号化された映像データは、ソースデバイス12の出力インタフェース22を介して直接行先デバイス14に送信することができる。符号化された映像データは、復号及び/又は再生のための行先デバイス14又はその他のデバイスによるのちのアクセスのために記憶媒体又はファイルサーバに格納することができる。
図1の例では、行先デバイス14は、入力インタフェース28と、映像復号器30と、表示装置32と、を含む。幾つかの場合は、入力インタフェース28は、受信機及び/又はモデムを含むことができる。行先デバイス14の入力インタフェース28は、チャネル16を通じて符号化された映像データを受信する。符号化された映像データは、映像データを表現する映像符号器20によって生成された様々な構文要素を含むことができる。該構文要素は、通信媒体上で送信される符号化された映像データとともに含めること、記憶媒体に格納すること、又はファイルサーバに格納することができる。
表示装置32は、行先デバイス14と一体化すること、又は行先デバイス14の外部に存在することができる。幾つかの例では、行先デバイス14は、一体化された表示装置を含むことができ、及び、外部表示装置とインタフェースするように構成することもできる。その他の例では、行先デバイス14は、表示装置であることができる。概して、表示装置32は、復号された映像データをユーザに表示する。表示装置32は、様々な表示装置、例えば、液晶ディスプレイ(LCD)、プラズマディスプレイ、有機発光ダイオード(OLED)ディスプレイ、又は他のタイプの表示装置、のうちのいずれかを備えることができる。
映像符号器20及び映像復号器30は、映像圧縮規格、例えば、現在開発中の高効率映像コーディング(High Efficiency Video Coding)(HEVC)規格、により動作することができ、及び、HEVCテストモデル(HM)に準拠することができる。来るべきHEVC規格の最近の草案は、“HEVC Working Draft6”又は“WD6”と呼ばれ、ITU−T SG16 WP3及びISO/IEC JTC1/SC29/WG11の映像コーディングに関する共同作業チーム(JCT−VC)第8回会議(米国、カリフォルニア州サンホセ、2012年2月)における文書JCTVC-H1003, Bross et al., "High efficiency video coding (HEVC) text specification draft6"(高効率映像コーディング(HEVC)テキスト仕様草案6)において説明されており、2012年5月1日現在では、http://phenix.int-evry.fr/jct/doc_end_user/documents/8_San%20Jose/wg11/JCTVC-H1003-v22.zipからダウンロード可能であり、ここにおける引用によってその内容全体がここに組み入れられている。HEVC規格の他の最近の草案は、“HEVC Working Draft7”又は“WD7”と呼ばれており、ITU−T SG16 WP3及びISO/IEC JTC1/SC29/WG11の映像コーディングに関する共同作業チーム(JCT−VC)第9回会議(スイス、ジュネーブ、2012年4月27日〜2012年5月7日)における文書HCTVC-I1003, Bross et al., "High efficiency video coding (HEVC) text specification draft6"(高効率映像コーディング(HEVC)テキスト仕様草案7)において説明されており、2012年6月5日現在では、http://phenix.it-sudparis.eu/jct/doc_end_user/documents/9_Geneva/wg11/JCTVC-I1003-v3.zipからダウンロード可能である。
代替として、映像符号器20及び映像復号器30は、その他の独占規格又は産業規格、例えば、ITU−T H.264規格であり、代替で、MPEG−4 Part10、Advanced Video Coding(AVC)と呼ばれている、又は該規格の拡張版により動作することができる。しかしながら、本開示の技法は、いずれの特定のコーディング規格又は技法にも限定されない。映像圧縮規格及び技法のその他の例は、MPEG−2、ITU−T H.263及び独占的な又はオープンなソース圧縮形式、例えば、VP89及び関連形式を含む。
図1の例には示されていないが、映像符号器20及び映像復号器30は、音声符号器及び復号器とそれぞれ一体化することができ、及び、音声及び映像の両方を共通のデータストリーム又は別々のデータストリームで符号化することを取り扱うための該当するMUX−DEMUXユニット又はその他のハードウェア及びソフトウェアを含むことができる。該当する場合、幾つかの例では、MUX−DEMUXユニットは、ITU H.223マルチプレクサプロトコル、又はその他のプロトコル、例えば、ユーザデータグラムプロトコル(UDP)、に準拠することができる。
繰り返すと、図1は、単なる例であるにすぎず、本開示の技法は、符号化デバイスと復号デバイスとの間でのデータ通信を必ずしも含まない映像コーディング設定(例えば、映像符号化又は映像復号)に適用することができる。その他の例では、データは、ローカルメモリから取り出すことができ、ネットワークを通じてストリーミングすることができ、等である。符号化デバイスは、データを符号化してメモリに格納することができ、及び/又は、復号デバイスは、メモリからデータを取り出して復号することができる。多くの例において、符号化及び復号は、互いに通信しないデバイスによって行われ、単にメモリへのデータを符号化する及び/又はメモリからデータを取り出して復号するにすぎない。
映像符号器20及び映像復号器30は、各々、様々な適切な回路、例えば、1つ以上のマイクロプロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、ディスクリートロジック、ハードウェア、又はそれらのあらゆる組み合わせのうちのいずれかとして実装することができる。技法がソフトウェア内に部分的に実装されるときには、デバイスは、ソフトウェアに関する命令を適切な、非一時的なコンピュータによって読み取り可能な媒体に格納し、本開示の技法を実施するために1つ以上のプロセッサを用いてハードウェア内で命令を実行することができる。映像符号器20及び映像復号器30の各々は、1つ以上の符号器又は復号器に含めることができ、それらのいずれも、各々のデバイス内の結合された符号器/復号器(CODEC)の一部として組み入れることができる。
上記において簡単に述べられているように、映像符号器20は、映像データを符号化する。映像データは、1つ以上のピクチャを備えることができる。これらのピクチャの各々は、映像の一部を形成する静止画像である。幾つかの例では、ピクチャは、映像“フレーム”と呼ぶことができる。映像符号器20が映像データを符号化するときには、映像符号器20は、ビットストリームを生成することができる。ビットストリームは、映像データのコーディングされた表現を形成するビットのシーケンスを含むことができる。ビットストリームは、コーディングされたピクチャと、関連付けられたデータと、を含むことができる。コーディングされたピクチャは、ピクチャのコーディングされた表現である。
ビットストリームを生成するために、映像符号器20は、映像データ内の各ピクチャに関して符号化動作を行うことができる。映像符号器20がピクチャに関して符号化動作を行うときには、映像符号器20は、一連のコーディングされたピクチャ及び関連付けられたデータを生成することができる。関連付けられたデータは、シーケンスパラメータセットと、ピクチャパラメータセットと、適合化パラメータセットと、その他の構文構造と、を含むことができる。シーケンスパラメータセット(SPS)は、ピクチャのゼロ以上のシーケンスに適用可能なパラメータを含むことができる。ピクチャパラメータセット(PPS)は、ゼロ以上のピクチャに適用可能なパラメータを含むことができる。適合化パラメータセット(APS)は、ゼロ以上のピクチャに適用可能なパラメータを含むことができる。APS内のパラメータは、PPS内のパラメータよりも変化しやすいパラメータであることができる。
コーディングされたピクチャを生成するために、映像符号器20は、ピクチャを映像ブロックに分割することができる。映像ブロックは、サンプルの二次元配列であることができる。映像ブロックの各々は、ツリーブロック(treeblock)と関連付けることができる。幾つかの例では、ツリーブロックは、最大のコーディングユニット(LCU)と呼ぶことができる。HEVCのツリーブロックは、以前の規格、例えば、H.264/AVC、のマクロブロックにほぼ類似することができる。しかしながら、ツリーブロックは、必ずしも特定のサイズに限定されず、1つ以上のコーディングユニット(CU)を含むことができる。映像符号器20は、ツリーブロックの映像ブロックをCUと関連付けられた映像ブロックに分割するために四分木分割を使用することができ、従って、名前は“ツリーブロック”である。
幾つかの例では、映像符号器20は、ピクチャを複数のスライスに分割することができる。それらのスライスの各々は、整数の数のCUを含むことができる。幾つかの例では、スライスは、整数の数のツリーブロックを備える。その他の例では、スライスの境界は、ツリーブロック内にあることができる。
ピクチャに関する符号化動作を行う一部として、映像符号器20は、ピクチャの各スライスに関する符号化動作を行うことができる。映像符号器20がスライスに関して符号化動作を行うときには、映像符号器20は、スライスと関連付けられた符号化されたデータを生成することができる。スライスと関連付けられた符号化されたデータは、“コーディングされたスライス”と呼ぶことができる。
コーディングされたスライスを生成するために、映像符号器20は、スライス内の各ツリーブロックに関して符号化動作を行うことができる。映像符号器20がツリーブロックに関して符号化動作を行うときには、映像符号器20は、コーディングされたツリーブロックを生成することができる。コーディングされたツリーブロックは、ツリーブロックの符号化されたバージョンを表現するデータを備えることができる。
映像符号器20がコーディングされたスライスを生成するときには、映像符号器20は、ラスタースキャン順序によりスライス内のツリーブロックに関する符号化動作を行う(すなわち、符号化する)ことができる。換言すると、映像符号器20は、映像符号器20がスライス内の各ツリーブロックを符号化するまでスライス内のツリーブロックの最上行(row)を横切って左から右に進み、次に、ツリーブロックの次に低い行を横切って右から左に進み、以下同様である順序でスライスのツリーブロックを符号化することができる。
ラスタースキャン順序によりツリーブロックを符号化した結果、所定のツリーブロックの上方及び左側のツリーブロックを符号化することができているが、所定のツリーブロックの下方及び右側のツリーブロックはまだ符号化されていない。従って、映像符号器20は、所定のツリーブロックを符号化時に所定のツリーブロックの上方及び左側のツリーブロックを符号化することによって生成された情報にアクセスすることができる。しかしながら、映像符号器20は、所定のツリーブロックを符号化時に所定のツリーブロックの下方及び右側のツリーブロックを符号化することによって生成された情報にアクセスすることができない。
コーディングされたツリーブロックを生成するために、映像符号器20は、ツリーブロックの映像ブロックに関する四分木分割を繰り返し行い、映像ブロックを徐々に小さくなる映像ブロックに分割することができる。より小さい映像ブロックの各々は、異なるCUと関連付けることができる。例えば、映像符号器20は、ツリーブロックの映像ブロックを4つの等しいサイズのサブブロックに分割し、それらのサブブロックのうちの1つ以上を4つの等しいサイズのサブ−サブブロックに分割することができ、以下同様である。分割されたCUは、その映像ブロックがその他のCUと関連付けられた映像ブロックに分割されたCUであることができる。分割されないCUは、その映像ブロックがその他のCUと関連付けられた映像ブロックに分割されないCUであることができる。
ビットストリーム内の1つ以上の構文要素は、映像符号器20がツリーブロックの映像ブロックを分割することができる最大回数を示すことができる。CUの映像ブロックは、形状が正方形であることができる。CUの映像ブロックのサイズ(すなわち、CUのサイズ)は、8×8ピクセルからツリーブロックの映像ブロックのサイズ(すなわち、ツリーブロックのサイズ)までであることができ、最大は、64×64ピクセル以上である。
映像符号器20は、zスキャン順序によりツリーブロックの各々のCUに関する符号化動作を行う(すなわち、符号化する)ことができる。換言すると、映像符号器20は、左上のCU、右上のCU、左下のCU、次に右下のCUの順に符号化することができる。映像符号器20が分割されたCUに関する符号化動作を行うときには、映像符号器20は、zスキャン順序により分割されたCUの映像ブロックのサブブロックと関連付けられたCUを符号化することができる。換言すると、映像符号器20は、左上のサブブロックと関連付けられたCU、右上のサブブロックと関連付けられたCU、左下のサブブロックと関連付けられたCU、次に右下のサブブロックと関連付けられたCUの順に符号化することができる。
zスキャン順序によりツリーブロックのCUを符号化した結果、所定のCUの上方、上方と左側、上方と右側、左側、及び下方と左側のCUが符号化されている。所定のCUの下方又は右側のCUはまだ符号化されていない。従って、映像符号器20は、所定のCUを符号化時に所定のCUの近隣の幾つかのCUを符号化することによって生成された情報にアクセスすることができる。しかしながら、映像符号器20は、所定のCUを符号化時に所定のCUの近隣のその他のCUを符号化することによって生成された情報にはアクセスすることができない。
映像符号器20が分割されないCUを符号化するときには、映像符号器20は、CUに関する1つ以上の予測ユニット(PU)を生成することができる。CUのPUの各々は、CUの映像ブロック内の異なる映像ブロックと関連付けることができる。映像符号器20は、CUの各PUに関する予測映像ブロックを生成することができる。PUの予測映像ブロックは、サンプルのブロックであることができる。映像符号器20は、PUに関する予測映像ブロックを生成するためにイントラ予測又はインター予測を使用することができる。
映像符号器20がPUの予測映像ブロックを生成するためにイントラ予測を使用するときには、映像符号器20は、PUと関連付けられたピクチャの復号されたサンプルに基づいてPUの予測映像ブロックを生成することができる。映像符号器20がCUのPUの予測映像ブロックを生成するためにイントラ予測を使用する場合は、CUは、イントラ予測されたCUである。映像符号器20がPUの予測映像ブロックを生成するためにインター予測を使用するときには、映像符号器20は、PUと関連付けられたピクチャ以外の1つ以上のピクチャの復号されたサンプルに基づいてPUの予測映像ブロックを生成することができる。映像符号器20がCUのPUの予測映像ブロックを生成するためにインター予測を使用する場合は、CUは、インター予測されたCUである。
さらに、映像符号器20がPUに関する予測映像ブロックを生成するためにインター予測を使用するときには、映像符号器20は、PUのための動き情報を生成することができる。PUのための動き情報は、PUの1つ以上の基準ブロックを示すことができる。PUの各基準ブロックは、基準ピクチャ内の映像ブロックであることができる。基準ピクチャは、PUと関連付けられたピクチャ以外のピクチャであることができる。幾つかの例では、PUの基準ブロックは、PUの“基準サンプル”と呼ばれることもある。映像符号器20は、PUの基準ブロックに基づいてPUに関する予測映像ブロックを生成することができる。
映像符号器20がCUの1つ以上のPUに関する予測映像ブロックを生成した後は、映像符号器20は、CUのPUに関する予測映像ブロックに基づいてCUに関する残差データを生成することができる。CUに関する残差データは、CUのPUに関する予測映像ブロック内のサンプルとCUのオリジナルの映像ブロックとの間の差分を示すことができる。
さらに、分割されないCUに関する符号化動作を行う一部として、映像符号器20は、CUの残差データをCUの変換ユニット(TU)と関連付けられた残差データの1つ以上のブロック(すなわち、残差映像ブロック)に分割するためにCUの残差データに関して繰り返しの四分木分割を行うことができる。CUの各TUは、異なる残差映像ブロックと関連付けることができる。
映像コーダ20は、TUと関連付けられた変換係数ブロック(すなわち、変換係数のブロック)を生成するためにTUと関連付けられた残差映像ブロックに1つ以上の変換を適用することができる。概念的には、変換係数ブロックは、変換の周波数領域における大きさを表す変換係数の二次元(2D)行列を備えることができる。
変換係数ブロックを生成後は、映像符号器20は、変換係数ブロックに関して量子化プロセスを実施することができる。量子化は、概して、変換係数を表すために使用されるデータ量を低減させるために変換係数が量子化されてさらなる圧縮を提供するプロセスを意味する。量子化プロセスは、変換係数の一部又は全部と関連付けられたビット深度を低減させることができる。例えば、nビット変換係数は、量子化中に切り捨ててmビット値することができ、ここで、nは、mよりも大きい。
映像符号器20は、各CUを量子化パラメータ(QP)値と関連付けることができる。CUと関連付けられたQP値は、映像符号器20がCUと関連付けられた変換係数ブロックをどのようにして量子化するかを決定することができる。映像符号器20は、CUと関連付けられたQP値を調整することによってCUと関連付けられた変換係数ブロックに適用される量子化度を調整することができる。
映像符号器20が変換係数ブロックを量子化後は、映像符号器20は、量子化された変換係数ブロック内の変換係数を表す構文要素の組を生成することができる。映像符号器20は、エントロピーコーディング動作、例えば、コンテキスト適応型バイナリ算術コーディング(CABAC)動作、をこれらの構文要素の一部に適用することができる。
映像符号器20によって生成されるビットストリームは、一連のネットワーク抽象化層(NAL)ユニットを含むことができる。NALユニットの各々は、NALユニット内のデータのタイプ及びデータが入ったバイトの表示を含む構文構造であることができる。例えば、NALユニットは、シーケンスパラメータセット、ピクチャパラメータセット、コーディングされたスライス、補足拡張情報(SEI)、アクセスユニットデリミッタ、フィラーデータ(filler data)、又は他のタイプのデータを表すデータを含むことができる。NALユニット内のデータは、様々な構文構造を含むことができる。
映像復号器30は、映像符号器20によって生成されたビットストリームを受信することができる。ビットストリームは、映像符号器20によって符号化された映像データのコーディングされた表現を含むことができる。映像復号器30がビットストリームを受信するときには、映像復号器30は、ビットストリームに関する構文解析動作を行うことができる。映像復号器30が構文解析動作を行うときには、映像復号器30は、ビットストリームから構文要素を抽出することができる。映像復号器30は、ビットストリームから抽出された構文要素に基づいて映像データのピクチャを再構築することができる。構文要素に基づいて映像データを再構築するプロセスは、概して、構文要素を生成するために映像符号器20によって行われるプロセスと相互的であることができる。
映像復号器30がCUと関連付けられた構文要素を抽出後は、映像復号器30は、構文要素に基づいてCUのPUに関する予測映像ブロックを生成することができる。さらに、映像復号器30は、CUのTUと関連付けられた変換係数ブロックを逆量子化することができる。映像復号器30は、CUのTUと関連付けられた残差映像ブロックを再構築するために変換係数ブロックに関する逆変換を行うことができる。予測映像ブロックを生成し及び残差映像ブロックを再構築した後は、映像復号器30は、予測映像ブロック及び残差映像ブロックに基づいてCUの映像ブロックを再構築することができる。この方法により、映像復号器30は、ビットストリーム内の構文要素に基づいてCUの映像ブロックを再構築することができる。
上記において簡単に説明されるように、映像符号器20は、CUのPUに関する予測映像ブロック及び動き情報を生成するためにインター予測を使用することができる。多くの例において、所定のPUの動き情報は、1つ以上の近傍のPU(すなわち、映像ブロックが所定のPUの映像ブロックの空間的に又は時間的に近傍にあるPU)の動き情報と同じであるか又は類似する可能性がある。近傍のPUは類似の動き情報を有することがしばしばあるため、映像符号器20は、近傍のPUの動き情報を参照して所定のPUの動き情報を符号化することができる。近傍のPUの動き情報を参照して所定のPUの動き情報を符号化することは、所定のPUの動き情報を示すためにビットストリーム内で要求されるビット数を減らすことができる。
映像符号器20は、近傍のPUの動き情報を参照して所定のPUの動き情報を様々な方法で符号化することができる。例えば、映像符号器20は、所定のPUの動き情報が近傍のPUの動き情報と同じであることを示すことができる。本開示は、所定のPUの動き情報が近傍のPUの動き情報と同じであるか又は近傍のPUの動き情報から導き出すことができることを示すために句“マージモード”を使用することができる。他の例では、映像符号器20は、所定のPUに関する動きベクトル差分(MVD)を計算することができる。MVDは、所定のPUの動きベクトルと近傍のPUの動きベクトルとの間の差分を示す。この例では、映像符号器20は、所定のPUの動きベクトルの代わりに所定のPUの動き情報のMVDを含むことができる。所定のPUの動きベクトルよりもMVDを表すほうがビットストリーム内でより少ないビットを要求することができる。本開示は、MVD及び候補動きベクトルを識別するインデックス値を用いて所定のPUの動き情報をシグナリングすることを示すために句“アドバンスト動きベクトル予測(AMVP)”モードを使用することができる。
マージモード又はAMVPモードを用いて所定のPUの動き情報をシグナリングするために、映像符号器20は、所定のPUに関する候補リストを生成することができる。候補リストは、1つ以上の候補を含むことができる。所定のPUに関する候補リスト内の候補の各々は、動き情報を指定することができる。各候補によって示される動き情報は、動きベクトルと、基準ピクチャインデックスと、予測方向インジケータと、を含むことができる。候補リスト内の候補は、“オリジナルの”候補を含むことができ、それらの各々は、所定のPU以外のPU内部の指定された候補位置のうちの1つの動き情報を示す。
PUに関する候補リストを生成後は、映像符号器20は、PUに関する候補リストから候補うちの1つを選択することができる。例えば、映像符号器は、各候補をコーディング中のPUと比較することができ及び望ましいレート−歪み性能を有する候補を選択することができる。映像符号器20は、PUに関する候補インデックスを出力することができる。候補インデックスは、選択された候補に関する候補リスト内の位置を識別することができる。
さらに、映像符号器20は、PUの動き情報によって示される基準ブロックに基づいてPUに関する予測映像ブロックを生成することができる。PUの動き情報は、PUに関する候補リスト内の選択された候補によって示される動き情報に基づいて決定することができる。例えば、マージモードでは、PUの動き情報は、選択された候補によって示される動き情報と同じであることができる。AMVPモードでは、PUの動き情報は、PUに関する動きベクトル差分(MVD)及び選択された候補によって示される動き情報に基づいて決定することができる。映像符号器20は、上述されるようにPUに関する予測映像ブロックを処理することができる。
映像復号器30がビットストリームを受信したときには、映像復号器30は、CUのPUの各々に関する候補リストを生成することができる。映像復号器30によってPUに関して生成される候補リストは、映像符号器20によってPUに関して生成される候補リストと同じであることができる。ビットストリームから構文解析された構文要素は、PUの候補リスト内での選択された候補の位置を示すことができる。PUに関する候補リストを生成後は、映像復号器30は、PUの動き情報によって示される1つ以上の基準ブロックに基づいてPUに関する予測映像ブロックを生成することができる。映像復号器30は、PUに関する候補リスト内の選択された候補によって示される動き情報に基づいてPUの動き情報を決定することができる。映像復号器30は、PUに関する予測映像ブロック及びCUに関する残差映像ブロックに基づいてCUに関する映像ブロックを再構築することができる。
図2は、本開示の技法を実装するように構成される映像符号器例20を示したブロック図である。図2は、説明を目的として提供されており、本開示においては幅広く例示及び説明されている技法を制限するものであるとはみなされるべきでない。説明の目的上、本開示は、HEVCコーディングの観点で映像符号器20について説明する。しかしながら、本開示の技法は、その他のコーディング規格又は方法に対して適用することができる。
図2の例では、映像符号器20は、複数の機能上のコンポーネントを含む。映像符号器20の機能上のコンポーネントは、予測モジュール100と、残差生成モジュール102と、変換モジュール104と、量子化モジュール106と、逆量子化モジュール108と、逆変換モジュール110と、再構築モジュール112と、フィルタモジュール113と、復号されたピクチャのバッファ114と、エントロピー符号化モジュール116と、を含む。予測モジュール100は、インター予測モジュール121と、動き推定モジュール122と、動き補償モジュール124と、イントラ予測モジュール126と、を含む。その他の例では、映像符号器20は、これよりも多い、少ない、又は異なる機能上のコンポーネントを含むことができる。さらに、動き推定モジュール122及び動き補償ユニット124は、一体化されることが非常に多いが、説明を目的として図2の例では別々に示される。
映像符号器20は、映像データを受信することができる。映像符号器20は、様々なソースから映像データを受信することができる。例えば、映像符号器20は、映像ソース18(図1)又は他のソースから映像データを受信することができる。映像データは、一連のピクチャを表現することができる。映像データを符号化するために、映像符号器20は、ピクチャの各々に関して符号化動作を行うことができる。ピクチャに関して符号化動作を行う一部として、映像符号器20は、ピクチャの各スライスに関して符号化動作を行うことができる。スライスに関して符号化動作を行う一部として、映像符号器20は、スライス内のツリーブロックに関して符号化動作を行うことができる。
ツリーブロックに関して符号化動作を行う一部として、予測モジュール100は、ツリーブロックの映像ブロックに関する四分木分割を行い、映像ブロックを徐々に小さくなる映像ブロックに分割することができる。より小さい映像ブロックの各々は、異なるCUと関連付けることができる。例えば、予測モジュール100は、ツリーブロックの映像ブロックを4つの等しいサイズのサブブロックに分割し、それらのサブブロックのうちの1つ以上を4つの等しいサイズのサブ−サブブロックに分割することができ、以下同様である。
CUと関連付けられた映像ブロックのサイズは、8×8サンプルからツリーブロックのサイズまでであることができ、最大は、64×64サンプル以上である。本開示では、“N×N”及び“N by N”は、垂直方向及び水平方向の寸法に関する映像ブロックのサンプル寸法を指し示すために互換可能な形で使用され、例えば、16×16サンプル又は16 by 16サンプルである。概して、16×16映像ブロックは、垂直方向に16サンプル(y=16)及び水平方向に16サンプル(x=16)を有する。同様に、N×Nブロックは、概して、垂直方向にNのサンプル及び水平方向にNのサンプルを有し、Nは、負でない整数値である。
さらに、ツリーブロックに関して符号化動作を行う一部として、予測モジュール100は、ツリーブロックに関する階層四分木データ構造を生成することができる。例えば、ツリーブロックは、四分木データ構造の根ノードに対応することができる。予測モジュール100がツリーブロックの映像ブロックを4つのサブブロックに分割する場合は、根ノードは、四分木データ構造内において4つの子ノードを有する。それらの子ノードの各々は、サブブロックのうちの1つと関連付けられたCUに対応する。予測モジュール100がサブブロックのうちの1つを4つのサブ−サブブロックに分割する場合は、サブブロックと関連付けられたCUに対応するノードは、4つの子ノードを有することができ、それらの各々は、サブ−サブブロックのうちの1つと関連付けられたCUに対応する。
四分木データ構造の各ノードは、対応するツリーブロック又はCUに関する構文データ(例えば、構文要素)を含むことができる。例えば、四分木内のノードは、そのノードに対応するCUの映像ブロックが4つのサブブロックに分割(すなわち、分離)されているかどうかを示すスプリットフラグを含むことができる。CUに関する構文要素は、繰り返し定義することができ、及び、CUの映像ブロックがサブブロックに分割されているかどうかに依存することができる。映像ブロックが分割されないCUは、四分木データ構造内の葉ノードに対応することができる。コーディングされたツリーブロックは、対応するツリーブロックに関する四分木データ構造に基づくデータを含むことができる。
映像符号器20は、ツリーブロックの各々の分割されないCUに関して符号化動作を行うことができる。映像符号器20が分割されないCUに関して符号化動作を行うときには、映像符号器20は、分割されないCUの符号化された表現を表すデータを生成する。
CUに関する符号化動作を行う一部として、予測モジュール100は、CUの1つ以上のPUの間でCUの映像ブロックを分割することができる。映像符号器20及び映像復号器30は、様々なPUサイズをサポートすることができる。特定のCUのサイズが2N×2Nであると仮定すると、映像符号器20及び映像復号器30は、イントラ予測に関しては2N×2N又はN×NのPUサイズ、インター予測に関しては2N×2N、2N×N、N×2N、N×N,等の対称的なPUサイズをサポートすることができる。映像符号器20及び映像復号器30は、インター予測に関する2N×nU、2N×nD、nL×2N、及びnR×2NのPNサイズに関する非対称的な分割もサポートすることができる。幾つかの例では、予測モジュール100は、CUの映像ブロックの側面と直角に出会わない境界に沿ってCUのPU間でCUの映像ブロックを分割するための幾何学的分割を行うことができる。
インター予測モジュール121は、CUの各PUに関してインター予測を行うことができる。インター予測は、時間的圧縮を提供することができる。PUに関してインター予測を行うために、動き推定モジュール122は、PUのための動き情報を生成することができる。動き補償モジュール124は、動き情報及びCUと関連付けられたピクチャ(すなわち、基準ピクチャ)以外のピクチャの復号されたサンプルに基づいてPUに関する予測映像ブロックを生成することができる。本開示では、動き補償モジュール124によって生成された予測映像ブロックを通じて予測される映像ブロックは、インター予測された映像ブロックと呼ぶことができる。
スライスは、Iスライス、Pスライス、又はBスライスであることができる。動き推定モジュール122及び動き補償モジュール124は、CUのPUがIスライス内、Pスライス内、又はBスライス内のいずれにあるかに依存してそのPUに関して異なる動作を行うことができる。従って、PUがIスライス内にある場合は、動き推定モジュール122及び動き補償モジュール124は、そのPUに関してインター予測を行わない。
PUがPスライス内にある場合は、PUが入っているピクチャは、“リスト0”と呼ばれる基準ピクチャのリストと関連付けられる。リスト0内の基準ピクチャの各々は、その他のピクチャのインター予測のために使用することができるサンプルを含む。動き推定モジュール122がPスライス内のPUに関して動き推定動作を行うときには、動き推定モジュール122は、PUに関する基準ブロックの有無に関してリスト0内の基準ピクチャを探索することができる。PUの基準ブロックは、PUの映像ブロック内のサンプルに最も密接に対応するサンプルの組、例えば、サンプルのブロック、であることができる。動き推定モジュール122は、基準ピクチャ内のサンプルの組がPUの映像ブロック内のサンプルにどれだけ密接に対応するかを決定するために様々なメトリックを使用することができる。例えば、動き推定モジュール122は、絶対差分和(SAD)、平方差分和(SSD)、又はその他の差分メトリックによって、基準ピクチャ内のサンプルの組がPUの映像ブロック内のサンプルにどれだけ密接に対応するかを決定することができる。
Pスライス内のPUの基準ブロックを識別後に、動き推定モジュール122は、基準ブロックが入っているリスト0内の基準ピクチャを示す基準インデックス及びPUと基準ブロックとの間の空間変位を示す動きベクトルを生成することができる。様々な例において、動き推定モジュール122は、様々な精度で動きベクトルを生成することができる。例えば、動き推定モジュール122は、1/4サンプル精度、1/8サンプル精度、又はその他の分数のサンプル精度で動きベクトルを生成することができる。分数のサンプル精度の場合は、基準ピクチャ内の整数位置サンプル値から基準ブロック値を内挿することができる。動き推定モジュール122は、基準インデックス及び動きベクトルをPUの動き情報として出力することができる。動き補償モジュール124は、PUの動き情報によって識別された基準ブロックに基づいてPUの予測映像ブロックを生成することができる。
PUがBスライス内に位置する場合は、PUを含むピクチャは、“リスト0”及び“リスト1”と呼ばれる2つの基準ピクチャリストと関連付けることができる。幾つかの例では、Bスライスを含むピクチャは、リスト0及びリスト1の組み合わせであるリストの組み合わせと関連付けることができる。
さらに、PUがBスライス内に位置する場合は、動き推定モジュール122は、PUに関する単方向性(uni−directional)予測又は両方向性(bi−directional)予測を行うことができる。動き推定モジュール122がPUに関して単方向性予測を行うときには、動き推定モジュール122は、PUに関する基準ブロックの有無に関してリスト0又はリスト1の基準ピクチャを探索する。次に、動き推定モジュール122は、基準ブロックが入っているリスト0又はリスト1内の基準ピクチャを示す基準インデックス及びPUと基準ブロックとの間の空間変位を示す動きベクトルを生成することができる。動き推定モジュール122は、基準インデックス、予測方向インジケータ、及び動きベクトルをPUの動き情報として出力することができる。予測方向インジケータは、基準インデックスがリスト0又はリスト1のいずれの基準ピクチャを示すかを示すことができる。動き補償モジュール124は、PUの動き情報によって示される基準ブロックに基づいてPUの予測映像ブロックを生成することができる。
動き推定モジュール122がPUに関して両方向性予測を行うときには、動き推定モジュール122は、PUに関する基準ブロックの有無に関してリスト0内の基準ピクチャを探索し、及びPUに関する他の基準ブロックの有無に関してリスト1内の基準ピクチャも探索することができる。次に、動き推定モジュール122は、基準ブロック及び基準ブロックとPUとの間の空間変位を示す動きベクトルが入っているリスト0及びリスト1内の基準ピクチャを示す基準インデックスを生成することができる。動き推定モジュール122は、PUの基準インデックス及び動きベクトルをPUの動き情報として出力することができる。動き補償モジュール124は、PUの動き情報によって示された基準ブロックに基づいてPUの予測映像ブロックを生成することができる。
幾つかの例では、動き推定モジュール122は、PUに関する動き情報の完全な組はエントロピー符号化モジュール16に出力しない。むしろ、動き推定モジュール122は、他のPUの動き情報を参照してPUの動き情報をシグナリングすることができる。例えば、動き推定モジュール122は、PUの動き情報が近隣PUの動き情報と十分に類似するということを決定することができる。この例では、動き推定モジュール122は、PUと関連付けられた構文構造において、PUが近隣PUと同じ動き情報を有するか又は近隣PUから導き出すことができる動き情報を有することを映像復号器30に示す値を示すことができる。他の例では、動き推定モジュール122は、PUと関連付けられた構文構造において、近隣PUと関連付けられた動き候補及び動きベクトル差分(MVD)を識別することができる。MVDは、PUの動きベクトルと近隣PUと関連付けられた、示された動き候補の動きベクトルとの間の差分を示す。映像復号器30は、PUの動きベクトルを決定するために示された動き候補の動きベクトル及びMVDを使用することができる。第2のPUの動き情報をシグナリングするときに第1のPUと関連付けられた候補の動き情報を参照することによって、映像符号器20は、本来であれば動きベクトルを通信するために必要になるビットよりも少ないビットを用いて第2のPUの動き情報をシグナリングすることができる。
後述されるように、インター予測モジュール121は、CUの各PUに関する候補リストを生成することができる。候補リストのうちの1つ以上は、1つ以上のオリジナルの候補及びオリジナルの候補から導き出される1つ以上の追加の候補を含むことができる。
CUに関して符号化動作を行う一部として、イントラ予測モジュール126は、CUのPUに関するイントラ予測を行うことができる。イントラ予測は、空間圧縮を提供することができる。イントラ予測モジュール126がPUに関してイントラ予測を行うときには、イントラ予測モジュール126は、同じピクチャ内のその他のPUの復号されたサンプルに基づいてPUに関する予測データを生成することができる。PUに関する予測データは、予測映像ブロックと、様々な構文要素と、を含むことができる。イントラ予測モジュール126は、Iスライス、Pスライス、及びBスライス内のPUに関してイントラ予測を行うことができる。
PUに関してイントラ予測を行うために、イントラ予測モジュール126は、PUに関する予測データの複数の組を生成するために複数のイントラ予測モードを使用することができる。イントラ予測モジュール126がPUに関する予測データの組を生成するためにイントラ予測モードを使用するときには、イントラ予測モジュール126は、近隣PUの映像ブロックからPUの映像ブロックを越えてイントラ予測モードと関連付けられた方向に及び/又は勾配でサンプルを延長することができる。PU、CU、及びツリーブロックに関して左から右、上から下への符号化順序であると仮定した場合、近隣PUは、PUの上方、右上、左上、又は左であることができる。イントラ予測モジュール126は、様々な数のイントラ予測モード、例えば、33の方向性イントラ予測モード、を使用することができる。幾つかの例では、イントラ予測モード数は、PUのサイズに依存することができる。
予測モジュール100は、PUに関して動き補償モジュール124によって生成された予測データ又はPUに関してイントラ予測モジュール126によって生成された予測データの中からPUに関する予測データを選択することができる。幾つかの例では、予測モジュール100は、予測データの組のレート/歪みメトリックに基づいてPUに関する予測データを選択する。
予測モジュール100がイントラ予測モジュール126によって生成された予測データを選択する場合は、予測モジュール100は、PUに関する予測データを生成するために使用されたイントラ予測モード、すなわち、選択されたイントラ予測モード、をシグナリングすることができる。予測モジュール100は、選択されたイントラ予測モードを様々な方法でシグナリングすることができる。例えば、選択されたイントラ予測モードは、近隣PUのイントラ予測モードと同じである可能性が高い。換言すると、近隣PUのイントラ予測モードは、現在のPUに関して最も可能性が高いモードであることができる。従って、予測モジュール100は、選択されたイントラ予測モードが近隣PUのイントラ予測モードと同じであることを示すための構文要素を生成することができる。
予測モジュール100がCUのPUに関する予測データを選択した後は、残差生成モジュール102は、CUのPUの予測映像ブロックをCUの映像ブロックから減じることによってCUに関する残差データを生成することができる。CUの残差データは、CUの映像ブロック内のサンプルの異なるサンプルコンポーネントに対応する2D残差映像ブロックを含むことができる。例えば、残差データは、CUのPUの予測映像ブロック内のサンプルのルミナンスコンポーネントとCUのオリジナルの映像ブロック内のサンプルのルミナンスコンポーネントとの間の差分に対応する残差映像ブロックを含むことができる。さらに、CUの残差データは、CUのPUの予測映像ブロック内のサンプルのクロミナンスコンポーネントとCUのオリジナルの映像ブロック内のサンプルのクロミナンスコンポーネントとの間の差分に対応する残差映像ブロックを含むことができる。
予測モジュール100は、CUの残差映像ブロックをサブブロックに分割するために四分木分割を行うことができる。各々の分割されない残差映像ブロックは、CUの異なるTUと関連付けることができる。CUのTUと関連付けられた残差映像ブロックのサイズ及び位置は、CUのPUと関連付けられた映像ブロックのサイズ及び位置に基づく場合と基づかない場合がある。“残差四分木”(RQT)と呼ばれる四分木構造は、各々の残差映像ブロックと関連付けられたノードを含むことができる。CUのTUは、RQTの葉ノードに対応することができる。
変換モジュール104は、CUの各TUと関連付けられた残差映像ブロックに1つ以上の変換を適用することによってそのTUに関する1つ以上の変換係数ブロックを生成することができる。変換係数ブロックの各々は、変換係数の2D行列であることができる。変換モジュール104は、TUと関連付けられた残差映像ブロックに対して様々な変換を適用することができる。例えば、変換モジュール104は、TUと関連付けられた残差映像ブロックに対して離散コサイン変換(DCT)、方向性変換、又は概念的に類似する変換を適用することができる。
変換モジュール104がTUと関連付けられた変換係数ブロックを生成した後は、量子化モジュール106は、変換係数ブロック内の変換係数を量子化することができる。量子化モジュール106は、CUと関連付けられたQP値に基づいてCUのTUと関連付けられた変換係数ブロックを量子化することができる。
映像符号器20は、様々な方法でQP値をCUと関連付けることができる。例えば、映像符号器20は、CUと関連付けられたツリーブロックに関するレート−歪み解析を行うことができる。レート−歪み解析では、映像符号器20は、ツリーブロックに関して符号化動作を複数回行うことによってツリーブロックの複数のコーディングされた表現を生成することができる。映像符号器20は、ツリーブロックの異なる符号化された表現を生成するときには異なるQP値をCUと関連付けることができる。映像符号器20は、所定のQP値が最低のビットレート及び歪みメトリックを有するツリーブロックのコーディングされた表現においてCUと関連付けられているときにその所定のQP値がCUと関連付けられているとシグナリングすることができる。
逆量子化モジュール108及び逆変換モジュール110は、変換係数ブロックから残差映像ブロックを再構築するために、逆量子化及び逆変換を変換係数ブロックにそれぞれ適用することができる。再構築モジュール112は、TUと関連付けられた再構築された映像ブロックを生成するために予測モジュール100によって生成された1つ以上の予測映像ブロックからの対応するサンプルに再構築された残差映像ブロックを加えることができる。このようにしてCUの各TUに関する映像ブロックを再構築することによって、映像符号器20は、CUの映像ブロックを再構築することができる。
再構築モジュール112がCUの映像ブロックを再構築後は、フィルタモジュール113は、CUと関連付けられた映像ブロックにおけるブロッキングアーティファクトを低減させるためのデブロッキング動作を行うことができる。1回以上のデブロッキング動作を行った後は、フィルタモジュール113は、CUの再構築された映像ブロックを復号されたピクチャのバッファ114に格納することができる。動き推定モジュール122及び動き補償モジュール124は、後続するピクチャのPUに関するインター予測を行うために再構築された映像ブロックを含む基準ピクチャを使用することができる。さらに、イントラ予測モジュール126は、CUと同じピクチャ内のその他のPUに関してイントラ予測を行うために復号されたピクチャのバッファ114内の再構築された映像ブロックを使用することができる。
エントロピー符号化モジュール116は、映像符号器20のその他の機能上のコンポーネントからデータを受信することができる。例えば、エントロピー符号化モジュール116は、量子化モジュール106から変換係数ブロックを受信することができ及び予測モジュール100から構文要素を受信することができる。エントロピー符号化モジュール116がデータを受信した時点で、エントロピー符号化モジュール116は、エントロピー符号化されたデータを生成するために1回以上のエントロピー符号化動作を行うことができる。例えば、映像符号器20は、コンテキスト適応型可変長コーディング(CAVLC)動作、CABAC動作、可変−可変(V2V)長コーディング動作、構文に基づくコンテキスト適応型バイナリ算術コーディング(SBAC)動作、確率間隔分割エントロピー(PIPE)コーディング動作、又はデータに関する他のタイプのエントロピー符号化動作を行うことができる。エントロピー符号化モジュール116は、エントロピー符号化されたデータを含むビットストリームを出力することができる。
データに関するエントロピー符号化動作を行う一部として、エントロピー符号化モジュール116は、コンテキストモデルを選択することができる。エントロピー符号化モジュール116がCABAC動作を行っている場合は、コンテキストモデルは、特定のビンが特定の値を有する確率の推定値を示すことができる。CABACに関して、用語“ビン”は、構文要素のバイナリ化されたバージョンの1ビットを意味するために使用される。
図3は、本開示の技法を実装するように構成される映像復号器例30を示したブロック図である。図3は、説明を目的として提供されており、本開示において幅広く例示及び説明されている技法を制限するものではない。説明の目的上、本開示は、HEVCコーディングの観点で映像復号器30について説明する。しかしながら、本開示の技法は、その他のコーディング規格又は方法に対して適用することができる。
図3の例では、映像復号器30は、複数の機能上のコンポーネントを含む。映像復号器30の機能上のコンポーネントは、エントロピー復号モジュール150と、予測モジュール152と、逆量子化モジュール154と、逆変換モジュール156と、再構築モジュール158と、フィルタモジュール159と、復号されたピクチャのバッファ160と、を含む。予測モジュール152は、動き補償モジュール162と、イントラ予測モジュール164と、を含む。幾つかの例では、映像復号器30は、図2の映像符号器20に関して説明される符号化パス(encoding pass)と概して相互的な復号パスを行うことができる。その他の例では、映像復号器30は、これよりも多い、少ない、又は異なる機能上のコンポーネントを含むことができる。
映像復号器30は、符号化された映像データを備えるビットストリームを受信することができる。ビットストリームは、複数の構文要素を含むことができる。映像復号器30がビットストリームを受信したときに、エントロピー復号モジュール150は、ビットストリームに関して構文解析動作を行うことができる。ビットストリームに関して構文解析動作を行った結果として、エントロピー復号モジュール150は、ビットストリームから構文要素を抽出することができる。構文解析動作を行う一部として、エントロピー復号モジュール150は、ビットストリーム内のエントロピー符号化された構文要素をエントロピー復号することができる。予測モジュール152、逆量子化モジュール154、逆変換モジュール156、再構築モジュール158、及びフィルタモジュール159は、ビットストリームから抽出された構文要素に基づいて復号された映像データを生成する再構築動作を行うことができる。
上述されるように、ビットストリームは、一連のNALユニットを備えることができる。ビットストリームのNALユニットは、シーケンスパラメータセットNALユニット、ピクチャパラメータセットNALユニット、SEI NALユニット、等を含むことができる。ビットストリームに関して構文解析動作を行う一部として、エントロピー復号モジュール150は、シーケンスパラメータセットNALユニットからシーケンスパラメータセットを、ピクチャパラメータセットNALユニットからピクチャパラメータセットを、SEI NALユニットからSEIデータを、抽出してエントロピー復号する構文解析動作を行うことができる。
さらに、ビットストリームのNALユニットは、コーディングされたスライスNALユニットを含むことができる。ビットストリームに関して構文解析動作を行う一部として、エントロピー復号モジュール150は、コーディングされたスライスNALユニットからコーディングされたスライスを抽出してエントロピー復号する構文解析動作を行うことができる。コーディングされたスライスの各々は、スライスヘッダと、スライスデータと、を含むことができる。スライスヘッダは、スライスに関連する構文要素を入れることができる。スライスヘッダ内の構文要素は、スライスを含むピクチャと関連付けられたピクチャパラメータセットを識別する構文要素を含むことができる。エントロピー復号モジュール150は、スライスヘッダを復元するためにコーディングされたスライスヘッダ内の構文要素に関してエントロピー復号動作、例えば、CABAC復号動作、を行うことができる。
コーディングされたスライスNALユニットからスライスデータを抽出する一部として、エントロピー復号モジュール150は、スライスデータ内のコーディングされたCUから構文要素を抽出する構文解析動作を行うことができる。抽出された構文要素は、変換係数ブロックと関連付けられた構文要素を含むことができる。次に、エントロピー復号モジュール150は、構文要素の一部に関してCABAC復号動作を行うことができる。
エントロピー復号モジュール150が分割されないCUに関して構文解析動作を行った後は、映像復号器30は、分割されないCUに関して再構築動作を行うことができる。分割されないCUに関して再構築動作を行うために、映像復号器30は、CUの各TUに関して再構築動作を行うことができる。CUの各TUに関して再構築動作を行うことによって、映像復号器30は、CUと関連付けられた残差映像ブロックを再構築することができる。
TUに関して再構築動作を行う一部として、逆量子化モジュール154は、TUと関連付けられた変換係数ブロックを逆量子化、すなわち、量子化解除、することができる。逆量子化モジュール154は、HEVCに関して提案されているか又はITU−T H.264コーディング規格によって定義されている逆量子化プロセスと同様の方法で変換係数ブロックを逆量子化することができる。逆量子化モジュール154は、量子化度、及び同様に、逆量子化モジュール154が適用する逆量子化度、を決定するために変換係数ブロックのCUに関して映像符号器20によって計算された量子化パラメータQPを使用することができる。
逆量子化モジュール154が変換係数ブロックを逆量子化した後は、逆変換モジュール156は、変換係数ブロックと関連付けられたTUに関する残差映像ブロックを生成することができる。逆変換モジュール156は、TUに関する残差映像ブロックを生成するために変換係数ブロックに対して逆変換を適用することができる。例えば、逆変換モジュール156は、逆DCT、逆整数変換、逆Karhunen−Loeve変換(KLT)、逆回転変換、逆方向性変換、又は他の逆変換を変換係数ブロックに適用することができる。
幾つかの例では、逆変換モジュール156は、映像符号器20からのシグナリングに基づいて変換係数ブロックに適用するための逆変換を決定することができる。該例では、逆変換モジュール156は、変換係数ブロックと関連付けられたツリーブロックに関する四分木の根ノードにおいてシグナリングされた変換に基づいて逆変換を決定することができる。その他の例では、逆変換モジュール156は、1つ以上のコーディング上の特徴、例えば、ブロックサイズ、コーディングモード、等、から逆変換を推論することができる。幾つかの例では、逆変換モジュール156は、カスケード型逆変換を適用することができる。
CUのPUがインター予測を用いて符号化された場合は、動き補償モジュール162は、PUに関する候補リストを生成することができる。ビットストリームは、PUの候補リスト内の選択された候補の位置を識別するデータを含むことができる。PUに関する候補リストを生成した後は、動き補償モジュール162は、PUの動き情報によって示された1つ以上の基準ブロックに基づいてPUに関する予測映像ブロックを生成することができる。PUの基準ブロックは、PUと異なる時間的ピクチャ内に存在することができる。動き補償モジュール162は、PUの候補リスト内の選択された候補によって示された動き情報に基づいてPUの動き情報を決定することができる。
幾つかの例では、動き補償モジュール162は、内挿フィルタに基づいて内挿を行うことによってPUの予測映像ブロックを向上させることができる。サブサンプル精度を有する動き補償のために使用される内挿フィルタに関する識別子を構文要素内に含めることができる。動き補償モジュール162は、基準ブロックの整数未満のサンプルに関する内挿値を計算するためにPUの予測映像ブロックの生成中に映像符号器20によって使用されるのと同じ内挿フィルタを使用することができる。動き補償モジュール162は、受信された構文情報により映像符号器20によって使用される内挿フィルタを決定し、内挿フィルタを用いて予測される映像ブロックを生成することができる。
PUがイントラ予測を用いて符号化される場合は、イントラ予測モジュール164は、PUに関する予測映像ブロックを生成するためにイントラ予測を行うことができる。例えば、イントラ予測モジュール164は、ビットストリーム内の構文要素に基づいてPUに関するイントラ予測モードを決定することができる。ビットストリームは、イントラ予測モジュール164がPUのイントラ予測モードを決定するために使用することができる構文要素を含むことができる。
幾つかの例では、構文要素は、イントラ予測モジュール164が現在のPUのイントラ予測モードを決定するために他のPUのイントラ予測モードを使用すべきであることを示すことができる。例えば、現在のPUのイントラ予測モードは、近隣PUのイントラ予測モードと同じである可能性が高い。換言すると、近隣PUのイントラ予測モードは、現在のPUに関して最も可能性が高いモードであることができる。従って、この例では、ビットストリームは、PUのイントラ予測モードが近隣PUのイントラ予測モードと同じであることを示す小さい構文要素を含むことができる。イントラ予測モジュール164は、空間的に近隣のPUの映像ブロックに基づいてPUに関する予測データ(例えば、予測サンプル)を生成するためにイントラ予測モードを使用することができる。
再構築モジュール158は、CUの映像ブロックを再構築するために、CUのTUと関連付けられた残差映像ブロック及びCUのPUの予測映像ブロック、すなわち、適宜、イントラ予測データ又はインター予測データ、を使用することができる。従って、映像復号器30は、ビットストリーム内の構文要素に基づいて予測映像ブロック及び残差映像ブロックを生成することができ及び予測映像ブロック及び残差映像ブロックに基づいて映像ブロックを生成することができる。
再構築モジュール158がCUの映像ブロックを再構築した後は、フィルタモジュール159は、全体的なコーディング品質を向上させるために1つ以上のフィルタリング動作を行うことができる。フィルタモジュール159によって行われるフィルタリング動作の例は、デブロッキングフィルタリング動作、サンプル適応型オフセットフィルタリング動作、及び適応型ループフィルタリング動作のうちの1つ以上を含むことができる。フィルタモジュール159がフィルタリング動作を行った後は、映像復号器30は、復号されたピクチャのバッファ160内にCUの映像ブロックを格納することができる。復号されたピクチャのバッファ160は、後続する動き補償、イントラ予測、及び表示装置、例えば、図1の表示装置32、での提示のために基準ピクチャを提供することができる。例えば、映像復号器30は、復号されたピクチャのバッファ160内の映像ブロックに基づいて、その他のCUのPUに関するイントラ予測又はインター予測動作を行うことができる。
図4は、インター予測モジュール121の構成例を示す概念図である。インター予測モジュール121は、複数の分割モードにより現在のCUをPUに分割することができる。例えば、インター予測モジュール121は、2N×2N、2N×N、N×2N、及びN×Nの分割モードにより現在のCUをPUに分割することができる。
インター予測モジュール121は、PUの各々に関して整数動き推定(IME)を行い、次に分数動き推定(FME)を行うことができる。インター予測モジュール121がPUに関してIMEを行うときには、インター予測モジュール121は、PUに関する基準ブロックの有無に関して1つ以上の基準ピクチャを探索することができる。PUに関する基準ブロックを見つけた後は、インター予測モジュール121は、PUとPUに関する基準ブロックとの間の空間変位を整数精度で示す動きベクトルを生成することができる。インター予測モジュール121がPUに関してFMEを行うときには、インター予測モジュール121は、PUに関してIMEを行うことによって動きベクトルを向上させることができる。PUに関してFMEを行うことによって生成された動きベクトルは、整数未満の精度(例えば、1/2ピクセル精度、1/4ピクセル精度、等)を有することができる。PUに関する動きベクトルを生成後は、インター予測モジュール121は、PUに関する予測映像ブロックを生成するためにPUに関する動きベクトルを使用することができる。
インター予測モジュール121がAMVPモードを用いてPUの動き情報をシグナリングする幾つかの例では、インター予測モジュール121は、PUに関する候補リストを生成することができる。候補リストは、1つ以上のオリジナルの候補及びオリジナルの候補から導き出される1つ以上の追加の候補を含むことができる。PUに関する候補リストを生成後は、インター予測モジュール121は、候補リストから候補を選択し、PUに関する動きベクトル差分(MVD)を生成することができる。PUに関するMVDは、選択された候補によって示される動きベクトルとIME及びFMEを用いてPUに関して生成された動きベクトルとの間の差分を示すことができる。該例では、インター予測モジュール121は、候補リスト内での選択された候補の位置を識別する候補インデックスを出力することができる。インター予測モジュール121は、PUのMVDを出力することもできる。図6は、以下において詳細に説明されるが、AMVP動作例を示す。
PUに関してIME及びFMEを行うことによってPUのための動き情報を生成することに加えて、インター予測モジュール121は、PUの各々に関してマージ動作を行うことができる。インター予測モジュール121がPUに関してマージ動作を行うときには、インター予測モジュール121は、PUに関する候補リストを生成することができる。PUに関する候補リストは、1つ以上のオリジナルの候補及びオリジナルの候補から導き出される1つ以上の追加の候補を含むことができる。候補リスト内のオリジナルの候補は、1つ以上の空間的候補と1つの時間的候補とを含むことができる。空間的候補は、現在のピクチャ内のその他のPUの動き情報を示すことができる。時間的候補は、現在のピクチャ以外のピクチャの共配置されたPUの動き情報に基づくことができる。時間的候補は、時間的動きベクトル予測子(TMVP)と呼ぶこともできる。
候補リストを生成後は、インター予測モジュール121は、候補リストから候補のうちの1つを選択することができる。インター予測モジュール121は、例えば、希望される再構築された映像品質及び/又は圧縮を達成させるために候補リストから候補を選択することができる。次に、インター予測モジュール121は、PUの動き情報によって示される基準ブロックに基づいてPUに関する予測映像ブロックを生成することができる。マージモードでは、PUの動き情報は、選択された候補によって示される動き情報と同じであることができる。以下において説明される図5は、マージ動作例を示したフローチャートである。
IME及びFMEに基づいてPUに関する予測映像ブロックを生成後及びマージ動作に基づいてPUに関する予測映像ブロックを生成後は、インター予測モジュール121は、FME動作によって生成された予測映像ブロック又はマージ動作によって生成された予測映像ブロックを選択することができる。幾つかの例では、インター予測モジュール121は、FME動作によって生成された予測映像ブロック及びマージ動作によって生成された予測映像ブロックのレート/歪み解析に基づいてPUに関する予測映像ブロックを選択することができる。
インター予測モジュール121が、各々の分割モードにより現在のCUを分割することによって生成されたPUに関する予測映像ブロックを選択した後は、インター予測モジュール121は、現在のCUに関する分割モードを選択することができる。幾つかの例では、インター予測モジュール121は、各々の分割モードにより現在のCUを分割することによって生成されたPUに関する選択された予測映像ブロックのレート/歪み解析に基づいて現在のCUに関する分割モードを選択することができる。インター予測モジュール121は、選択された分割モードに属するPUと関連付けられた予測映像ブロックを残差生成モジュール102に出力することができる。インター予測モジュール121は、選択された分割モードに属するPUの動き情報を示す構文要素をエントロピー符号化モジュール116に出力することができる。
図4の例において、インター予測モジュール121は、IMEモジュール180A乃至180N(総称して“IMEモジュール180”)と、FMEモジュール182A乃至182N(総称して“FMEモジュール182”)と、マージモジュール184A乃至184N(総称して“マージモジュール184”)と、PUモード決定モジュール186A乃至186N(総称して“PUモード決定モジュール186”)と、CUモード決定モジュール188と、を含む。
IMEモジュール180、FMEモジュール182、及びマージモジュール184は、現在のCUのPUに関してIME動作、FME動作、及びマージ動作を行うことができる。図4の例は、インター予測モジュール121がCUの各分割モードの各PUに関して別々のIMEモジュール180、FMEモジュール182、及びマージモジュール184を含むとして示している。その他の例では、インター予測モジュール121は、CUの各分割モードの各PUに関して別々のIMEモジュール180、FMEモジュール182、及びマージモジュール184を含まない。
図4の例において示されるように、IMEモジュール180A、FMEモジュール182A、及びマージモジュール184Aは、2N×2N分割モードによりCUを分割することによって生成されたPUに関してIME動作、FME動作、及びマージ動作を行うことができる。PUモード決定モジュール186Aは、IMEモジュール180A、FMEモジュール182A、及びマージモジュール184Aによって生成された予測映像ブロックのうちの1つを選択することができる。
IMEモジュール180B、FMEモジュール182B、及びマージモジュール184Bは、N×2N分割モードによりCUを分割することによって生成された左のPUに関してIME動作、FME動作、及びマージ動作を行うことができる。PUモード決定モジュール186Bは、IMEモジュール180B、FMEモジュール182B、及びマージモジュール184Bによって生成された予測映像ブロックのうちの1つを選択することができる。
IMEモジュール180C、FMEモジュール182C、及びマージモジュール184Cは、N×2N分割モードによりCUを分割することによって生成された右のPUに関してIME動作、FME動作、及びマージ動作を行うことができる。PUモード決定モジュール186Cは、IMEモジュール180C、FMEモジュール182C、及びマージモジュール184Cによって生成された予測映像ブロックのうちの1つを選択することができる。
IMEモジュール180N、FMEモジュール182N、及びマージモジュール184は、N×N分割モードによりCUを分割することによって生成された右下のPUに関してIME動作、FME動作、及びマージ動作を行うことができる。PUモード決定モジュール186Nは、IMEモジュール180N、FMEモジュール182N、及びマージモジュール184Nによって生成された予測映像ブロックのうちの1つを選択することができる。
PUモード決定モジュール186は、希望される再構築された映像品質及び/又は希望される圧縮比を生成する予測映像ブロックを選択するように構成することができる。PUモード決定モジュールは、例えば、複数の可能な予測映像ブロックのレート−歪み解析に基づいて予測映像ブロックを選択すること及び所定のコーディングシナリオに関する最良のレート−歪みトレードオフ(tradeoff)を提供する予測映像ブロックを選択することができる。一例として、帯域幅が制限される用途に関して、PUモード決定モジュール186は、圧縮比を増大させる予測映像ブロックを選択する方に偏らせることができ、他方、その他の用途に関しては、PUモード決定モジュール186は、再構築された映像の品質を向上させる予測映像ブロックを選択する方に偏らせることができる。PUモード決定モジュール186が現在のCUのPUに関して予測映像ブロックを選択した後は、CUモード決定モジュール188は、現在のCUのPUに関する予測映像ブロックを選択し、CUモード決定モジュール188は、現在のCUに関する分割モードを選択し、選択された分割モードに属するPUの予測映像ブロック及び動き情報を出力する。
図5は、マージ動作例200を示したフローチャートである。映像符号器、例えば、映像符号器20、は、マージ動作200を行うことができる。その他の例では、映像符号器は、マージ動作200以外のマージ動作を行うことができる。例えば、その他の例では、映像符号器は、マージ動作200よりも多い又は少ないステップ、又はマージ動作200と異なるステップを実施するマージ動作を行うことができる。その他の例では、映像符号器は、異なる順序で又は並行してマージ動作のステップを実施することができる。符号器は、スキップモードで符号化されたPUに関してマージ動作200を行うこともできる。
映像符号器がマージ動作200を開始した後は、映像符号器は、現在のPUに関する候補リストを生成することができる(202)。映像符号器は、現在のPUに関する候補リストを様々な方法で生成することができる。例えば、映像符号器は、図8乃至13Bに関して後述される技法例のうちの1つにより現在のCUに関する候補リストを生成することができる。
上記において簡単に説明されるように、現在のPUに関する候補リストは、時間的候補を含むことができる。時間的候補は、共配置されたPUの動き情報を示すことができる。共配置されたPUは、現在のPUとともに空間的に配置することができるが、現在のピクチャの代わりに基準ピクチャ内にある。本開示は、共配置されたPUを含む基準ピクチャを該当する基準ピクチャと呼ぶことができる。本開示は、該当する基準ピクチャの基準ピクチャインデックスを該当する基準ピクチャインデックスと呼ぶことができる。上述されるように、現在のピクチャは、基準ピクチャの1つ以上のリスト、例えば、リスト0、リスト1、等と関連付けることができる。基準ピクチャインデックスは、基準ピクチャのリストのうちの1つにおける基準ピクチャの位置を示すことによって基準ピクチャを示すことができる。幾つかの例では、現在のピクチャは、結合された基準ピクチャリストと関連付けることができる。
幾つかの従来の映像符号器では、該当する基準ピクチャインデックスは、現在のPUと関連付けられた基準インデックスソース位置をカバーするPUの基準ピクチャインデックスである。該従来の映像符号器では、現在のPUと関連付けられた基準インデックスソース位置は、現在のPUの直ぐ左又は現在のPUの直ぐ上である。本開示では、PUは、PUと関連付けられた映像ブロックが特定の位置を含む場合に特定の位置を“カバーする”ことができる。該従来の映像符号器では、映像符号器は、基準インデックスソース位置を利用できない場合はゼロの基準ピクチャインデックスを使用することができる。
しかしながら、現在のPUと関連付けられた基準インデックスソース位置が現在のCU内にある例が存在することができる。該例では、現在のPUと関連付けられた基準インデックスソース位置をカバーするPUは、このPUが現在のCUの上方又は左にある場合に利用可能であるとみなすことができる。しかしながら、映像符号器は、共配置されたPUを含む基準ピクチャを決定するために現在のCUの他のPUの動き情報にアクセスすることが必要な場合がある。従って、該映像符号器は、現在のPUに関する時間的候補を生成するために現在のCUに属するPUの動き情報(すなわち、基準ピクチャインデックス)を使用することができる。換言すると、該映像符号器は、現在のCUに属するPUの動き情報を用いて時間的候補を生成することができる。従って、映像符号器は、現在のPU及び現在のPUと関連付けられた基準インデックスソース位置をカバーするPUに関する候補リストを並行して生成することはできない。
本開示の技法により、映像符号器は、その他のPUの基準ピクチャインデックスを参照せずに、該当する基準ピクチャインデックスを明示で設定することができる。これは、映像符号器が現在のPU及び現在のCUのその他のPUに関する候補リストを並行して生成するのを可能にすることができる。映像符号器は該当する基準ピクチャインデックスを明示で設定するため、該当する基準ピクチャインデックスは、現在のCUのその他のPUの動き情報には基づかない。映像符号器が該当する基準ピクチャインデックスを明示で設定する幾つかの例では、映像符号器は、該当する基準ピクチャインデックスを固定された予め定義されたデフォルトの基準ピクチャインデックス、例えば、0、に常に設定することができる。この方法により、映像符号器は、デフォルト基準ピクチャインデックスによって示される基準フレーム内の共配置されたPUの動き情報に基づいて時間的候補を生成することができ及び現在のCUの候補リストにその時間的候補を含めることができる。
映像符号器が該当する基準ピクチャインデックスを明示で設定する例では、映像符号器は、該当する基準ピクチャインデックスを構文構造、例えば、ピクチャヘッダ、スライスヘッダ、APS、又は他の構文構造において明示でシグナリングすることができる。この例では、映像符号器は、すべてのLCU、CU、PU、TU又はその他のタイプのサブブロックに関して該当する基準ピクチャインデックスをシグナリングすることができる。例えば、映像符号器は、CUの各PUに関する該当する基準ピクチャインデックスが“1”に等しいことをシグナリングすることができる。
幾つかの例、例えば、図9A乃至9F及び10A乃至Fを参照して以下で説明されるそれら、では、該当する基準ピクチャインデックスを明示の代わりに暗黙に設定することができる。該例では、映像符号器は、現在のCUの外部の位置が現在のPUに厳格に隣接していない場合でも、該位置をカバーするPUの基準ピクチャインデックスによって示される基準ピクチャ内のPUの動き情報を用いて現在のCUのPUに関する候補リスト内の各時間的候補を生成することができる。
現在のPUに関する候補リストを生成後は、映像符号器は、候補リスト内の候補と関連付けられた予測映像ブロックを生成することができる(204)。映像符号器は、示された候補の動き情報に基づいて現在のPUの動き情報を決定し、次に、現在のPUの動き情報によって示される1つ以上の基準ブロックに基づいて予測映像ブロックを生成することによって候補と関連付けられた予測映像ブロックを生成することができる。次に、映像符号器は、候補リストから候補のうちの1つを選択することができる(206)。映像符号器は、様々な方法で候補を選択することができる。例えば、映像符号器は、候補と関連付けられた予測映像ブロックの各々に関するレート−歪み解析に基づいて候補のうちの1つを選択することができる。
候補を選択後は、映像符号器は、候補インデックスを出力することができる(208)。候補インデックスは、候補リスト内における選択された候補の位置を示すことができる。幾つかの例では、候補インデックスは、“merge_idx”で表すことができる。
図6は、AMVP動作例210を示すフローチャートである。映像符号器、例えば、映像符号器20、は、AMVP動作210を行うことができる。図6は、AMVP動作の単なる一例であるにすぎない。
映像符号器がAMVP動作210を開始後は、映像符号器は、現在のPUに関する1つ以上の動きベクトルを生成することができる(211)。映像符号器は、現在のPUに関する動きベクトルを生成するために整数動き推定及び分数動き推定を行うことができる。上述されるように、現在のピクチャは、2つの基準ピクチャリスト、リスト0及びリスト1と関連付けることができる。現在のPUが単一方向に予測される場合は、映像符号器は、現在のPUに関するリスト0動きベクトル又はリスト1動きベクトルを生成することができる。リスト0動きベクトルは、現在のPUの映像ブロックとリスト0内の基準ピクチャ内の基準ブロックとの間の空間変位を示すことができる。リスト1動きベクトルは、現在のPUの映像ブロックとリスト1内の基準ピクチャ内の基準ブロックとの間の空間変位を示すことができる。現在のPUが両方向に予測される場合は、映像符号器は、現在のPUに関するリスト0動きベクトル及びリスト1動きベクトルを生成することができる。
現在のPUに関する動きベクトル又は動きベクトル(複数)を生成後は、映像符号器は、現在のPUに関する予測映像ブロックを生成することができる(212)。映像符号器は、現在のPUに関する1つ以上の動きベクトルによって示される1つ以上の基準ブロックに基づいて現在のPUに関する予測映像ブロックを生成することができる。
さらに、映像符号器は、現在のPUに関する候補リストを生成することができる(213)。映像コーダは、現在のPUに関する候補リストを様々な方法で生成することができる。例えば、映像符号器は、図8乃至13Bに関して以下において説明される技法例のうちの1つ以上により現在のPUに関する候補リストを生成することができる。幾つかの例では、映像符号器がAMVP動作210において候補リストを生成するときには、候補リストは、2つの候補に限定することができる。対照的に、映像符号器がマージ動作で候補リストを生成するときには、候補リストは、より多くの候補(例えば、5つの候補)を含むことができる。
現在のPUに関する候補リストを生成後は、映像符号器は、候補リスト内の各リストに関する1つ以上の動きベクトル差分(MVD)を生成することができる(214)。映像符号器は、候補によって示された動きベクトルと現在のPUの対応する動きベクトルとの間の差分を決定することによって候補に関する動きベクトル差分を生成することができる。
現在のPUが単一の方向に予測される場合は、映像符号器は、各候補に関する単一のMVDを生成することができる。現在のPUが両方向に予測される場合は、映像符号器は、各候補に関して2つのMVDを生成することができる。第1のMVDは、候補の動きベクトルと現在のPUのリスト0動きベクトルとの間の差分を示すことができる。第2のMVDは、候補の動きベクトルと現在のPUのリスト1動きベクトルとの間の差分を示すことができる。
映像符号器は、候補リストから候補のうちの1つ以上を選択することができる(215)。映像符号器は、1つ以上の候補を様々な方法で選択することができる。例えば、映像符号器は、符号化されるべき動きベクトルに最も密接にマッチする関連付けられた動きベクトルを有する候補を選択することができ、それは、候補に関する動きベクトル差分を表すために要求されるビット数を減少させることができる。
1つ以上の候補を選択後は、映像符号器は、現在のPUに関する1つ以上の基準ピクチャインデックス、1つ以上の候補インデックス、及び1つ以上の選択された候補に関する1つ以上の動きベクトル差分を出力することができる(216)。
現在のピクチャが2つの基準ピクチャリスト、リスト0及びリスト1、と関連付けられており、及び、現在のPUが単一方向に予測される例では、映像符号器は、リスト0に関する基準ピクチャインデックス(“ref_idx_10”)又はリスト1(“ref_idx_11”)を出力することができる。映像符号器は、現在のPUのリスト0動きベクトルに関する選択された候補の候補リスト内での位置を示す候補インデックス(“mvp_10_flag”)を出力することもできる。代替として、映像符号器は、現在のPUのリスト1動きベクトルに関する選択された候補の候補リスト内での位置を示す候補インデックス(“mvp_11_flag”)を出力することができる。映像符号器は、現在のPUのリスト0動きベクトル又はリスト1動きベクトルに関するMVDを出力することもできる。
現在のピクチャが2つの基準ピクチャリスト、リスト0及びリスト1、と関連付けられており、及び現在のPUが両方向に予測される例では、映像符号器は、リスト0に関する基準ピクチャインデックス(“ref_idx_10”)及びリスト1に関する基準ピクチャインデックス(“ref_idx_11”)を出力することができる。映像符号器は、現在のPUのリスト0動きベクトルに関する選択された候補の候補リスト内での位置を示す候補インデックス(“mvp_10_flag”)を出力することもできる。さらに、映像符号器は、現在のPUのリスト1動きベクトルに関する選択された候補の候補リスト内での位置を示す候補インデックス(“mvp_11_flag”)を出力することもできる。映像符号器は、現在のPUのリスト0動きベクトルに関するMVD及び現在のPUのリスト1動きベクトルに関するMVDを出力することもできる。
図7は、映像復号器、例えば、映像復号器30、によって行われる動き補償動作例220を示したフローチャートである。図7は、動き補償動作の単なる一例であるにすぎない。
映像復号器が動き補償動作220を行うときには、映像復号器は、現在のPUに関する選択された候補の表示を受信することができる(222)。例えば、映像復号器は、現在のPUの候補リスト内での選択された候補の位置を示す候補インデックスを受信することができる。
現在のPUの動き情報がAMVPモードを用いて符号化され、及び、現在のPUが両方向に予測される場合は、映像復号器は、第1の候補インデックス及び第2の候補インデックスを受信することができる。第1の候補インデックスは、現在のPUのリスト0動きベクトルに関する選択された候補の候補リスト内での位置を示す。第2の候補インデックスは、現在のPUのリスト1動きベクトルに関する選択された候補の候補リスト内での位置を示す。幾つかの例では、両方の候補インデックスを識別するために単一の構文要素を使用することができる。
さらに、映像復号器は、現在のPUに関する候補リストを生成することができる(224)。映像復号器は、現在のPUに関する該候補リストを様々な方法で生成することができる。例えば、映像復号器は、現在のPUに関する候補リストを生成するために図8乃至15を参照して以下において説明される技法を使用することができる。映像復号器が候補リストに関する時間的候補を生成するときには、映像復号器は、図5に関して上述されるように、共配置されたPUを含む基準ピクチャを識別する基準ピクチャインデックスを明示で又は暗黙に設定することができる。
現在のPUに関する候補リストを生成後は、映像復号器は、現在のPUに関する候補リスト内の1つ以上の選択された候補によって示される動き情報に基づいて現在のPUの動き情報を決定することができる(225)。例えば、現在のPUの動き情報がマージモードを用いて符号化される場合は、現在のPUの動き情報は、選択された候補によって示される動き情報と同じであることができる。現在のPUの動き情報がAMVPモードを用いて符号化される場合は、映像復号器は、現在のPUの動きベクトル又は動きベクトル(複数)を再構築するために選択された候補又は候補(複数)によって示される1つ以上の動きベクトル又はビットストリーム内で示される1つ以上のMVDを使用することができる。現在のPUの基準ピクチャインデックス及び予測方向インジケータは、1つ以上の選択された候補の基準ピクチャインデックス及び予測方向インジケータと同じであることができる。現在のPUの動き情報を決定後は、映像復号器は、現在のPUの動き情報によって示される1つ以上の基準ブロックに基づいて現在のPUに関する予測映像ブロックを生成することができる(226)。
近隣物の動き情報は、現在の映像ブロックの位置(及びAMVPの場合のMVD)に関して使用される。換言すると、近隣物のMVは、近隣物に関する動きを意味する。現在のブロックのMVは、現在のブロックに関する動きを意味する。このため、現在のブロックが近隣物動き情報を採用する場合は、採用されたMVは、(それが採用された近隣物ではなく)現在のブロックに関する動きを定義する。
図8は、CU250及びCU250と関連付けられた候補位置例252A乃至Eを示した概念図である。本開示は、候補位置252A乃至252Eを総称して候補位置252と呼ぶことができる。候補位置252は、CU250と同じピクチャ内にある空間候補を表す。候補位置252Aは、CU250の左に位置する。候補位置252Bは、CU250の上方に位置する。候補位置252Cは、CU250の右上に位置する。候補位置252Dは、CU250の左下に位置する。候補位置252Dは、CU250の左下に位置する。候補位置252Eは、CU250の左上に位置する。図8は、インター予測モジュール121及び動き補償モジュール162が候補リストをどのようにして生成することができるかを示す例を提供するために使用される。以下の例は、基準インター予測モジュール121を用いて説明されるが、動き補償モジュール162が同じ技法を実装し、従って、同じ候補リストを生成できることが理解されるべきである。
図9は、本開示の技法により候補リストを構築するための方法例を示したフローチャートである。図9の技法は、5つの候補を含むリストを参照して説明されるが、ここにおいて説明される技法は、その他のサイズのリストとともに使用することもできる。5つの候補は、マージインデックス(例えば、0乃至4)を各々有することができる。図9の技法は、一般的な映像コーダを参照して説明される。一般的映像コーダは、例えば、映像符号器、例えば、映像符号器20、又は映像復号器、例えば、映像復号器30、であることができる。
図9の例により候補リストを構築するために、映像コーダは、最初に、4つの空間的候補を検討する(902)。4つの空間的候補は、例えば、候補位置252A、252B、252C、及び252Dを含むことができる。4つの空間的候補は、現在のCU(例えば、CU250)と同じピクチャ内の4つのPUの動き情報に対応する。映像コーダは、リスト内の4つの空間的候補を特定の順序で検討することができる。例えば、候補位置252Aを最初に検討することができる。候補位置252Aが利用可能である場合は、候補位置252Aをマージインデックス0に割り当てることができる。候補位置252Aが利用可能でない場合は、映像コーダは、候補位置252Aを候補リストに含めることができない。候補位置は、様々な理由で利用不能になることがある。例えば、候補位置が現在のピクチャ内に存在しない場合は、候補位置は利用不能である。他の例では、候補位置は、候補位置がイントラ予測される場合に利用不能であることがある。他の例では、候補位置は、候補位置が現在のCUと異なるスライス内にある場合に利用できないことがある。
候補位置252Aを検討後は、映像コーダは、次に、候補位置252Bを検討することができる。候補位置252Bが利用可能でありかつ候補位置252Aと異なる場合は、映像コーダは、候補位置252Bを候補リストに加えることができる。この特定の文脈では、用語“同じ”及び“異なる”は、候補位置と関連付けられた動き情報に関するものである。従って、2つの候補位置は、それらが同じ動き情報を有する場合は同じであるとみなされ、それらが異なる動き情報を有する場合は異なるとみなされる。候補252Aが利用可能でなかった場合は、映像コーダは、候補位置252Bをマージインデックス0に割り当てることができる。候補位置252Aが利用可能であった場合は、映像コーダは、候補位置252をマージインデックス1に割り当てることができる。候補位置252Bが利用可能でないか又は候補位置252Aと同じである場合は、映像コーダは、候補位置252Bをスキップし、候補リストに含めない。
候補位置252Cも同様に映像コーダによってリストに含めるかどうかが検討される。候補位置252Cが利用可能でありかつ候補位置252B及び252Cと同じでない場合は、映像コーダは、候補位置252Cを次に利用可能なマージインデックスに割り当てる。候補位置252Cが利用不能であるか又は候補位置252A及び252Bのうちの少なくとも1つと異なっていない場合は、映像コーダは、候補位置252Cを候補リストに含めない。次に、候補位置252Dが映像コーダによって検討される。候補位置252Dが利用可能でありかつ候補位置252A、252B、及び252Cと同じでない場合は、映像コーダは、候補位置252Dを次に利用可能なマージインデックスに割り当てる。候補位置252Dが利用不能であるか又は候補位置252A、252B、及び252Cのうちの少なくとも1つと異なっていない場合は、映像コーダは、候補位置252Dを候補リストに含めない。上例は、概して、候補252A乃至Dを候補リストに含めることに関して個々に検討されているが、幾つかの実装では、すべての候補252A乃至Dを最初に候補リストに追加し、のちに重複物を候補リストから取り除くことができる。
映像コーダが最初の4つの空間的候補を検討後は、候補リストは、4つの空間的候補を含むことができるか又はリストは、4つよりも少ない空間的候補を含むことができる。リストが4つの空間的候補を含む場合は(904、はい)、映像コーダは時間的候補を検討する(906)。時間的候補は、現在のピクチャ以外のピクチャの共配置されたPUの動き情報に対応することができる。時間的候補が利用可能でありかつ最初の4つの空間的候補と異なる場合は、映像コーダは、時間的候補をマージインデックス4に割り当てる。時間的候補が利用可能でないか又は最初の4つの空間的候補のうちの1つと同じである場合は、映像コーダは、時間的候補を候補リストに含めない。従って、映像コーダが時間的候補を検討後は(906)、候補リストは、5つの候補(ブロック902で検討された最初の4つの空間的候補及びブロック904で検討された時間的候補)を含む場合と4つの候補(ブロック902で検討された最初の4つの空間的候補)を含む場合がある。候補リストが5つの候補を含む場合は(908、はい)、映像コーダはリストの構築を終了させる。
候補リストが4つの候補を含む場合は(908、いいえ)、映像コーダは、第5の空間的候補を検討することができる(910)。第5の空間的候補は、例えば、候補位置252Eに対応することができる。位置252Eにおける候補が利用可能でありかつ位置252A、252B、252C、及び252Dにおける候補と異なる場合は、映像コーダは、マージ4に割り当てられた候補リストに第5の空間的候補を加えることができる。位置252Eにおける候補が利用不納であるか又は候補位置252A、252B、252C、及び252Dにおける1つと異ならない場合は、映像コーダは、位置252の候補を候補リストに含めることができない。従って、第5の空間的候補を検討後は(910)、リストは、5つの候補(ブロック902で検討された最初の4つの空間的候補及びブロック910で検討された第5の空間的候補)を含む場合と4つの候補(ブロック902で検討された最初の4つの空間的候補)を含む場合がある。
候補リストが5つの候補を含む場合は(912、はい)、映像コーダは、候補リストの生成を終了させる。候補リストが4つの候補を含む場合は(912、いいえ)、映像コーダは、リストが5つの候補を含むまで(916、はい)人工的に生成された候補を加える(914)。
映像コーダが第1の4つの空間的候補を検討後に、リストが4つよりも少ない数の空間的候補を含む場合は(904、いいえ)、映像コーダは、第5の空間的候補を検討することができる(918)。第5の空間的候補は、例えば、候補位置252Eに対応することができる。位置252Eにおける候補が利用可能でありかつ候補リストに既に含まれている候補と異なる場合は、映像コーダは、次の利用可能なマージインデックスに割り当てられた候補リストに第5の空間的候補を加えることができる。位置252Eの候補が利用可能でないか又は候補リストに既に含まれている候補のうちの1つと異ならない場合は、映像コーダは、位置252Eにおける候補を候補リストに含めることができない。映像コーダは、時間的候補を検討することができる(920)。時間的候補が利用可能でありかつ候補リストに既に含まれている候補と異なる場合は、映像コーダは、次の利用可能なマージインデックスに割り当てられた候補リストに時間的候補を加えることができる。時間的候補が利用可能でないか又は候補リストに既に含まれている候補のうちの1つと異ならない場合は、映像コーダは、時間的候補を候補リストに含めることができない。
第5の空間的候補(ブロック918)及び時間的候補(ブロック920)を検討後に、候補リストが5つの候補を含む場合は(922、はい)、映像コーダは、候補リストの生成を終わらせる。候補リストが5つよりも少ない候補を含む場合は(922、いいえ)、映像コーダは、リストが5つの候補を含むまで(916、はい)人工的に生成された候補を加える(914)。
本開示の技法により、マージ候補リストのサイズをマージ候補のうちの指定された数、例えば、図9の例では5つ、に固定させるために空間的候補及び時間的候補に引き続いて追加のマージ候補を人工的に生成することができる。追加のマージ候補は、例えば、結合された両方向性予測(bi−predictive)マージ候補(候補1)と、スケーリングされた両方向性予測マージ候補(候補2)と、ゼロベクトルマージ/AMVP候補(候補3)と、を含むことができる。
図10は、結合されたマージ候補の例を示す。結合された両方向性予測マージ候補は、オリジナルのマージ候補を結合することによって生成することができる。特に、mvL0及びrefIdxL0又はmvL1及びrefIdxL1を有する、オリジナルの候補のうちの2つの候補を、両方向性予測マージ候補を生成するために使用することができる。図10は、結合された両方向性予測マージ候補の例を示す。図10において、2つの候補がオリジナルのマージ候補リストに含められる。1方の候補の予測タイプは、リスト0単方向性予測(uni−predictive)であり、他方の1つは、リスト1単方向性予測である。この例では、mvL0_A及びref0がリスト0から選択され、mvL1_B及びref0がリスト1から選択され、次に、リスト0内にmvL0_A及びref0、リスト1内にmvL1_B及びref0を有する両方向性マージ候補を生成し、候補リストに既に含まれている候補と異なるかどうかを検査することができる。それが異なる場合は、映像コーダは、両方向性予測マージ候補を候補リストに含めることができる。
図11は、スケーリングされたマージ候補の例を示す。スケーリングされた両方向性予測マージ候補は、オリジナルのマージ候補をスケーリングすることによって生成することができる。特に、mvLX及びrefIdxLXを有することができる、オリジナルの候補からの1つの候補を、両方向性予測マージ候補を生成するために使用することができる。図11は、スケーリングされた両方向性予測マージ候補の例を示す。図11の例では、2つの候補がオリジナルマージ候補リスト内に含められる。一方の候補の予測タイプは、リスト0単方向性予測であり、他方の1つは、リスト1単方向性予測である。この例では、mvL0_A及びref0をリスト0から選択することができ、ref0は、リスト1内の基準インデックスref0’にコピーすることができる。次に、ref0及びref0’を用いてmvL0_AをスケーリングすることによってmvL0’_Aを計算することができる。スケーリングは、POC距離に依存することができる。次に、リスト0内においてmvL0_A及びref0及びリスト1内においてmvL0’_A及びref0’を有する両方向性予測マージ候補を生成し、それが重複しているかどうかを検査することができる。それが重複していない場合は、マージ候補リストに加えることができる。
図12は、ゼロベクトルマージ候補の例を示す。ゼロベクトルマージ候補は、ゼロベクトル及び参照することができる基準インデックスを結合することによって生成することができる。図12は、ゼロベクトルマージ候補の例を示す。ゼロベクトル候補が重複していない場合は、それらは、マージ候補リストに加えることができる。各々の生成されたマージ候補に関して、動き情報をリスト内の前の候補のそれらと比較することができる。一例では、新しい生成された候補が候補リスト内に既に含まれている候補と異なる場合は、生成された候補がマージ候補リストに加えられる。候補が候補リスト内に既に含められている候補と異なるかどうかを決定するこのプロセスは、プルーニング(pruning)と時々呼ばれる。プルーニングを用いることで、各々の新しい生成された候補をリスト内の既存の候補と比較することができ、それは、高い計算コストを有する可能性がある。幾つかの例では、プルーニング動作は、1つ以上の新しい候補を候補リスト内に既に存在する候補と比較することと、候補リスト内に既に存在する候補の重複物である新しい候補を加えないことと、を含むことができる。その他の例では、プルーニング動作は、1つ以上の新しい候補を候補リストに加えることと、のちに重複する候補をリストから取り除くことと、を含むことができる。
本開示の技法は、幾つかの例では、先行する技法と比較して単純化および改良を提供することができる。本開示の技法は、幾つかの例では、プルーニング動作を結合された両方向性予測候補に限定することを含み、結合された両方向性予測候補のみがリスト内の候補と比較されることを意味する。該例では、その他のすべての候補(例えば、スケーリングされた両方向性予測候補、ゼロ候補、及びmv_offset候補)は、動き情報がリスト内の幾つかと同じである場合でも、比較することもプルーニングすることもできない。本開示の技法は、スケーリングされた両方向性予測候補を取り除くことと、それらを候補リスト内に含めるための検討をしないことと、をさらに含むことができる。
本開示のさらなる技法により、上記の単純化によってもたらされる可能性のある性能損失を補償するために新しい候補(オフセット候補)を追加してゼロ候補と統合することができる。オフセット候補は、既存のマージ候補の動きベクトルにオフセットmvを加えることによって生成することができる。加えることができるオフセットmvsは、例えば、(4、0)、(−4、0)、(0、4)、及び(0、−4)を含むことができる。これらのオフセット値は、オフセット候補を生成するために他の動きベクトルに加えることができる。示される以外のその他のオフセット値を使用することもできる。
以下の表1は、Mv_offset候補の例を示す。表1に示される例として、第1の2つの候補は、空間的および時間的近隣物からである。最後の3つの候補は、既存の候補をオフセットすることによって生成される。
Figure 2014535249
本開示の技法により、mv_offset候補を生成するための手順は、次のステップを含むことができる。
1.既存のマージ候補が単方向性予測候補である場合は、既存のマージ候補に基づくmv_offset候補は、表1のマージ候補3によって示されるように、既存のマージ候補の動きベクトルにオフセット値を加え、基準インデックスをコピーすることによって生成することができる。
2.既存のマージ候補が両方向性予測候補である場合は、既存のマージ候補に基づくmv_offset候補は、以下のようにして生成することができる。
a.L0及びL1の2つの基準フレームが現在のフレームの同じ側からのものである場合は(前方及び後方)、mv_offset候補は、現在のフレームから遠い方の基準フレームを指し示す動きベクトルにオフセット値を加えることによって生成することができる。例えば、図13Aを参照。
b.L0及びL1の2つの基準フレームが現在のフレームの異なる側からのものである場合は、mv_offset候補は、一方のリストからのmvにオフセット値を加え、他方のリストからのmvから同じオフセット値を減じることによって生成することができる。例えば、図13Bを参照。
図13Aは、上のステップ2(a)によりmv_offset候補を生成することの図形例を示す。図13Aにおいて、両方の基準フレーム(この例ではN−3及びN−2)が現在のフレームの同じ側にある。図13Aにおいて、両方の基準フレームとも現在のフレームに対して後方であるが、両方の基準フレームが現在のフレームに対して前方である例において同じ技法を使用することができる。基準フレームN−2は、関連付けられた動きベクトルmv1を有しており、基準フレームN−3は、関連付けられた動きベクトルmv2を有する。人工的な候補を生成するために、遠い方の基準フレームを指し示す動きベクトルにmv_offsetが加えられ、それは、図13Aの例においては基準フレームN−3のmv2である。従って、図13Aの例では、人工的に生成されたマージ候補は、基準フレームN−2の動き情報及び基準フレームN−3から導き出された動き情報(mv2+mv_offset)を有する両方向性予測候補である。
図13Bは、上のステップ2(b)によりmv_offset候補を生成することの図形例を示す。図13Bにおいて、1つの基準フレーム(N−1)が現在のフレームに対して後方であり、1つの基準フレーム(N+1)が現在のフレームに対して前方である。基準フレームN−1は、関連付けられた動きベクトルmv1を有しており、基準フレームN+1は、関連付けられた動きベクトルmv2を有する。人工的な候補を生成するために、一方の基準フレームの動きベクトルにmv_offsetが加えられ、他方の基準フレームの動きベクトルから減じられる。従って、図13Bの例では、人工的に生成されたマージ候補は、基準フレームN−1から導き出された動き情報及び基準フレームN+1から導き出された動き情報を有する両方向性予測候補である。
本開示の技法により、ゼロ候補をオフセット候補内に組み入れることができる。該技法では、ゼロ候補は、次のようにオフセット候補の前に条件付きで加えることができる。
・空間的及び時間的近隣物において候補が見つからない場合は、mv=(0,0)refidx=0がオフセット候補の前に加えられる。
・空間的及び時間的近隣物において候補mv=(0,0)refidx=0が既に見つかっている場合は、mv=(0,0)refidx=1がオフセット候補の前に加えられる。
本開示の追加の技法により、最終的な追加のマージ候補は下記を含むことができる。
候補1:結合された両方向性予測候補(プルーニング動作あり)
候補2:ゼロが組み入れられた候補を有するオフセット(プルーニング動作なし)
“候補2”内の候補はプルーニングを必要としないため、候補1及び2は、並行して生成することができる。
図14は、本開示で説明される技法の例を示したフローチャートである。図14の技法は、映像コーダ、例えば、映像符号器20又は映像復号器30、によって実施することができる。映像復号器は、現在の映像フレームの現在の部分と関連付けられた空間的候補の組を決定することができる(142)。空間的候補の組は、現在の部分に隣接する現在の映像フレームの近隣部分に対応することができる。各空間的候補は、関連付けられた動き情報を有する。映像コーダは、現在の映像フレームの現在の部分と関連付けられた時間的候補を決定することもできる(144)。時間的候補は、基準映像フレームの一部分に対応することができ、時間的候補は、関連付けられた動き情報を有する。
空間的候補の組の部分組及び時間的候補に基づき、映像コーダは、候補のリストを生成することができる(146)。候補リストが最大数未満の候補を含むことに応答して、映像コーダは、人工的に生成された候補を候補のリストに加えることができる(148)。人工的に生成された候補は、部分組の空間的候補又は時間的候補の動き情報と同じである動き情報を有することができる。リスト内に既に含まれている候補の動き情報と同じ動き情報を有する人工的に生成された候補を候補のリストに含めることによって、コーダの複雑さを低減させることができる。
空間的候補の組は、同じ動き情報を有する2つ以上の空間的候補を含むことができ、他方、空間的候補の部分組は、2つ以上の空間的候補のうちの1つのみを含む。従って、空間的候補を取り除くか又はプルーニングし、より一意の候補を含めることによって、例えば、レート−歪みメトリックによって測定される映像コーディング品質を向上させることができる。空間的候補をプルーニングするが人工的に生成された候補をプルーニングしないことの組み合わせは、優れた映像コーディング品質と低減された複雑さの両方を提供する希望される折衷を提供することができる。
1つ以上の例において、説明される機能は、ハードウェア、ソフトウェア、ファームウェア、又はそれらの組み合わせにおいて実装することができる。ソフトウェアにおいて実装される場合は、それらの機能は、コンピュータによって読み取り可能な媒体において1つ以上の命令又はコードとして格納又は送信すること及びハードウェアに基づく処理ユニットによって実行することができる。コンピュータによって読み取り可能な媒体は、コンピュータによって読み取り可能な記憶媒体を含むことができ、それは、有形な媒体、例えば、データ記憶媒体、又は、例えば、通信プロトコルにより、1つの場所から他へのコンピュータプログラムの転送を容易にするあらゆる媒体を含む通信媒体、に対応する。このように、コンピュータによって読み取り可能な媒体は、概して、(1)非一時的である有形なコンピュータによって読み取り可能な記憶媒体又は(2)通信媒体、例えば、信号又は搬送波、に対応することができる。データ記憶媒体は、本開示において説明される技法の実装のために命令、コード及び/又はデータ構造を取り出すために1つ以上のコンピュータ又は1つ以上のプロセッサによってアクセスすることができるあらゆる利用可能な媒体であることができる。コンピュータプログラム製品は、コンピュータによって読み取り可能な媒体を含むことができる。
一例により、及び制限することなしに、該コンピュータによって読み取り可能な記憶媒体は、希望されるプログラムコードを命令又はデータ構造の形態で格納するために使用することができ及びコンピュータによってアクセス可能であるRAM、ROM、EEPROM、CD−ROM又はその他の光学ディスク記憶装置、磁気ディスク記憶装置、又はその他の磁気記憶デバイス、フラッシュメモリ、又はその他のいずれかの媒体を備えることができる。さらに、どのような接続も、コンピュータによって読み取り可能な媒体であると適切に呼ばれる。例えば、命令が、同軸ケーブル、光ファイバケーブル、より対線、デジタル加入者ライン(DSL)、又は無線技術、例えば、赤外線、無線、及びマイクロ波、を用いてウェブサイト、サーバ、又はその他の遠隔ソースから送信される場合は、該同軸ケーブル、光ファイバケーブル、より対線、DSL、又は無線技術、例えば赤外線、無線、及びマイクロ波、は、媒体の定義の中に含まれる。しかしながら、コンピュータによって読み取り可能な記憶媒体およびデータ記憶媒体は、コネクション、搬送波、信号、又はその他の遷移媒体は含まず、代わりに、非遷移的な、有形の記憶媒体を対象とすることが理解されるべきである。ここにおいて用いられるときのディスク(disk及びdisc)は、コンパクトディスク(CD)(disc)と、レーザディスク(disc)と、光ディスク(disc)と、デジタルバーサタイルディスク(DVD)(disc)と、フロッピー(登録商標)ディスク(disk)と、Blu−rayディスク(disc)と、を含み、ここで、diskは、通常は磁気的にデータを複製し、discは、レーザを用いて光学的にデータを複製する。上記の組み合わせも、コンピュータによって読み取り可能な媒体の適用範囲内に含められるべきである。
命令は、1つ以上のプロセッサ、例えば、1つ以上のデジタル信号プロセッサ(DSP)、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルロジックアレイ(FPGA)、又はその他の同等の集積又はディスクリート論理回路によって実行することができる。従って、ここにおいて用いられる場合の用語“プロセッサ”は、上記の構造又はここにおいて説明される技法の実装に適するあらゆるその他の構造のうちのいずれかを意味することができる。さらに、幾つかの態様では、ここにおいて説明される機能は、符号化および復号のために構成された専用のハードウェア及び/又はソフトウェアモジュール内において提供されること、又は組み合わされたコーデック内に組み入れることができる。さらに、技法は、1つ以上の回路又は論理素子内に完全に実装することが可能である。
本開示の技法は、無線ハンドセット、IC又は一組のIC(例えば、チップセット)を含む非常に様々なデバイス又は装置内に実装することができる。本開示では、開示される技法を実施するように構成されたデバイスの機能上の態様を強調するために様々なコンポーネント、モジュール、又はユニットが説明されるが、異なるハードウェアユニットによる実現は必ずしも要求しない。むしろ、上述されるように、様々なユニットは、適切なソフトウェア及び/又はファームウェアと関係させて、コーデックハードウェアユニット内において結合させること又は上述されるように1つ以上のプロセッサを含む相互運用的なハードウェアユニットの集合によって提供することができる。
様々な例が説明されている。これらの及びその他の例は、以下の請求項の適用範囲内である。
様々な例が説明されている。これらの及びその他の例は、以下の請求項の適用範囲内である。
以下に本願発明の当初の特許請求の範囲に記載された発明を付記する。
[1] 映像データをコーディングする方法であって、現在の映像フレームの現在の部分と関連付けられた空間的候補の組を決定することであって、空間的候補の前記組は、前記現在の部分に隣接する前記現在の映像フレームの近隣部分に対応し、前記空間的候補の各々は、関連付けられた動き情報を有することと、前記現在の映像フレームの前記現在の部分と関連付けられた時間的候補を決定することであって、前記時間的候補は、基準映像フレームの一部分に対応し、及び、前記時間的候補は、関連付けられた動き情報を有することと、空間的候補の前記組の部分組及び前記時間的候補に基づいて候補リストを生成することと、前記候補リストが指定された数よりも少ない候補を備えることに応答して、人工的に生成された候補を前記候補リストに加えることであって、前記人工的に生成された候補は、前記部分組の空間的候補の動き情報と同じであるか又は前記時間的候補の動き情報と同じである動き情報を有することと、を備える、方法。
[2] 空間的候補の前記組は、前記同じ動き情報を有する2つ以上の空間的候補を備え、空間的候補の前記部分組は、前記2つ以上の空間的候補のうちの1つのみを含む[1]に記載の方法。
[3] 空間的候補の前記組の前記部分組及び前記時間的候補に基づいて前記候補リストを生成することは、重複する動き情報を有する候補を前記候補リストから除外するためのプルーニング動作を行うことを備える[1]に記載の方法。
[4] 前記人工的に生成された候補を前記候補リストに加えることは、前記人工的に生成された候補に関して1つ以上のプルーニング動作を行わずに前記人工的に生成された候補を加えることを備える[1]に記載の方法。
[5] 前記人工的に生成された候補は、スケーリングされない両方向性予測候補である[1]に記載の方法。
[6] 前記人工的に生成された候補は、ゼロ候補である[1]に記載の方法。
[7] 前記人工的に生成された候補は、動きベクトルオフセット候補である[1]に記載の方法。
[8] 第2の人工的に生成された候補を生成することであって、前記人工的に生成された候補及び前記第2の人工的に生成された候補は、並行して生成されることをさらに備える[1]に記載の方法。
[9] マージモードを用いて前記現在の映像フレームの前記現在の部分をコーディングすることであって、前記マージモードのための動き情報は、前記候補リストに基づいて決定されることをさらに備える[1]に記載の方法。
[10] 前記方法は、映像符号器によって実施され、前記方法は、前記候補リストから候補を選択することと、前記選択された候補のインデックスを示す構文要素を生成することと、をさらに備える[1]に記載の方法。
[11] 前記方法は、映像復号器によって実施され、前記方法は、前記候補リストから候補を識別する構文要素を受信することと、前記識別された候補の動き情報を用いて前記現在の映像フレームの前記現在の部分を復号することと、をさらに備える[1]に記載の方法。
[12] 映像データをコーディングするためのデバイスであって、現在の映像フレームの現在の部分と関連付けられた空間的候補の組を決定し、前記現在の映像フレームの前記現在の部分と関連付けられた時間的候補を決定し、空間的候補の前記組の部分組及び前記時間的候補に基づいて候補リストを生成し、及び前記候補リストが指定された数よりも少ない候補を備えることに応答して、人工的に生成された候補を前記候補リストに加えるように構成された映像コーダを備え、空間的候補の前記組は、前記現在の部分に隣接する前記現在の映像フレームの近隣部分に対応し、前記空間的候補の各々は、関連付けられた動き情報を有し、前記時間的候補は、基準映像フレームの一部分に対応し、及び、前記時間的候補は、関連付けられた動き情報を有し、前記人工的に生成された候補は、前記部分組の空間的候補の動き情報と同じであるか又は前記時間的候補の動き情報と同じである動き情報を有する、デバイス。
[13] 空間的候補の前記組は、前記同じ動き情報を有する2つ以上の空間的候補を備え、空間的候補の前記部分組は、前記2つ以上の空間的候補のうちの1つのみを含む[12]に記載のデバイス。
[14] 前記映像コーダは、重複する動き情報を有する候補を前記候補リストから除外するためのプルーニング動作を行うことによって空間的候補の前記組の前記部分組及び前記時間的候補に基づいて前記候補リストを生成する[12]に記載のデバイス。
[15] 前記映像コーダは、前記人工的に生成された候補に関して1つ以上のプルーニング動作を行わずに前記人工的に生成された候補を加えることによって前記人工的に生成された候補を前記候補リストに加える[12]に記載のデバイス。
[16] 前記人工的に生成された候補は、スケーリングされない両方向性予測候補である[12]に記載のデバイス。
[17] 前記人工的に生成された候補は、ゼロ候補である[12]に記載のデバイス。
[18] 前記人工的に生成された候補は、動きベクトルオフセット候補である[12]に記載のデバイス。
[19] 前記映像コーダは、第2の人工的に生成された候補を生成するようにさらに構成され、前記人工的に生成された候補及び前記第2の人工的に生成された候補は、並行して生成される[12]に記載のデバイス。
[20] 前記映像コーダは、マージモードを用いて前記現在の映像フレームの前記現在の部分をコーディングするようにさらに構成され、前記マージモードのための動き情報は、前記候補リストに基づいて決定される[12]に記載のデバイス。
[21] 前記映像コーダは、映像符号器であり、前記映像符号器は、前記候補リストから候補を選択し及び前記選択された候補のインデックスを示す構文要素を生成するように構成される[12]に記載のデバイス。
[22] 前記映像コーダは、映像復号器であり、前記映像復号器は、前記候補リストから候補を識別する構文要素を受信し及び前記識別された候補の動き情報を用いて前記現在の映像フレームの前記現在の部分を復号するように構成される[12]に記載のデバイス。
[23] 前記デバイスは、集積回路、マイクロプロセッサ、及び前記映像コーダを含む無線通信デバイスのうちの少なくとも1つを備える[12]に記載のデバイス。
[24] 映像データをコーディングするためのデバイスであって、現在の映像フレームの現在の部分と関連付けられた空間的候補の組を決定するための手段であって、空間的候補の前記組は、前記現在の部分に隣接する前記現在の映像フレームの近隣部分に対応し、前記空間的候補の各々は、関連付けられた動き情報を有する手段と、前記現在の映像フレームの前記現在の部分と関連付けられた時間的候補を決定するための手段であって、前記時間的候補は、基準映像フレームの一部分に対応し、及び、前記時間的候補は、関連付けられた動き情報を有する手段と、空間的候補の前記組の部分組及び前記時間的候補に基づいて候補リストを生成するための手段と、前記候補リストが指定された数よりも少ない候補を備えることに応答して、人工的に生成された候補を前記候補リストに加えるための手段であって、前記人工的に生成された候補は、前記部分組の空間的候補の動き情報と同じであるか又は前記時間的候補の動き情報と同じである動き情報を有する手段と、を備える、デバイス。
[25] 空間的候補の前記組は、前記同じ動き情報を有する2つ以上の空間的候補を備え、空間的候補の前記部分組は、前記2つ以上の空間的候補のうちの1つのみを含む[24]に記載のデバイス。
[26] 空間的候補の前記組の前記部分組及び前記時間的候補に基づいて前記候補リストを生成するための前記手段は、重複する動き情報を有する候補を前記候補リストから除外するためのプルーニング動作を行うための手段を備える[24]に記載のデバイス。
[27] 前記人工的に生成された候補を前記候補リストに加えるための前記手段は、前記人工的に生成された候補に関して1つ以上のプルーニング動作を行わずに前記人工的に生成された候補を加えるための手段を備える[24]に記載のデバイス。
[28] 前記人工的に生成された候補は、スケーリングされない両方向性予測候補である[24]に記載のデバイス。
[29] 前記人工的に生成された候補は、ゼロ候補である[24]に記載のデバイス。
[30] 前記人工的に生成された候補は、動きベクトルオフセット候補である[24]に記載のデバイス。
[31] 第2の人工的に生成された候補を生成するための手段であって、前記人工的に生成された候補及び前記第2の人工的に生成された候補は、並行して生成される手段、をさらに備える[24]に記載のデバイス。
[32] マージモードを用いて前記現在の映像フレームの前記現在の部分をコーディングするための手段であって、前記マージモードのための動き情報は、前記候補リストに基づいて決定される手段、をさらに備える[24]に記載のデバイス。
[33] 前記デバイスは、映像符号器を備え、前記デバイスは、前記候補リストから候補を選択するための手段と、前記選択された候補のインデックスを示す構文要素を生成するための手段と、をさらに備える[24]に記載のデバイス。
[34] 前記デバイスは、映像復号器を備え、前記デバイスは、前記候補リストから候補を識別する構文要素を受信するための手段と、前記識別された候補の動き情報を用いて前記現在の映像フレームの前記現在の部分を復号するための手段と、をさらに備える[24]に記載のデバイス。
[35] コンピュータによって読み取り可能な記憶媒体であって、実行されたときに、現在の映像フレームの現在の部分と関連付けられた空間的候補の組を決定し、前記現在の映像フレームの前記現在の部分と関連付けられた時間的候補を決定し、空間的候補の前記組の部分組及び前記時間的候補に基づいて候補リストを生成し、及び前記候補リストが指定された数よりも少ない候補を備えることに応答して、人工的に生成された候補を前記候補リストに加えることを1つ以上のプロセッサに行わせる命令を格納し、空間的候補の前記組は、前記現在の部分に隣接する前記現在の映像フレームの近隣部分に対応し、前記空間的候補の各々は、関連付けられた動き情報を有し、前記時間的候補は、基準映像フレームの一部分に対応し、及び、前記時間的候補は、関連付けられた動き情報を有し、前記人工的に生成された候補は、前記部分組の空間的候補の動き情報と同じであるか又は前記時間的候補の動き情報と同じである動き情報を有する、コンピュータによって読み取り可能な記憶媒体。
[36] 空間的候補の前記組は、前記同じ動き情報を有する2つ以上の空間的候補を備え、空間的候補の前記部分組は、前記2つ以上の空間的候補のうちの1つのみを含む[35]に記載のコンピュータによって読み取り可能な記憶媒体。
[37] 前記命令は、重複する動き情報を有する候補を前記候補リストから除外するためのプルーニング動作を行うことによって空間的候補の前記組の前記部分組及び前記時間的候補に基づいて前記候補リストを生成することを前記1つ以上のプロセッサに行わせる[35]に記載のコンピュータによって読み取り可能な記憶媒体。
[38] 前記命令は、前記人工的に生成された候補に関して1つ以上のプルーニング動作を行わずに前記人工的に生成された候補を前記候補リストに加えることを前記1つ以上のプロセッサに行わせる[35]に記載のコンピュータによって読み取り可能な記憶媒体。
[39] 前記人工的に生成された候補は、スケーリングされない両方向性予測候補である[35]に記載のコンピュータによって読み取り可能な記憶媒体。
[40] 前記人工的に生成された候補は、ゼロ候補である[35]に記載のコンピュータによって読み取り可能な記憶媒体。
[41] 前記人工的に生成された候補は、動きベクトルオフセット候補である[35]に記載のコンピュータによって読み取り可能な記憶媒体。
[42] 実行されたときに、第2の人工的に生成された候補を生成することを前記1つ以上のプロセッサに行わせる命令をさらに備え、前記人工的に生成された候補及び前記第2の人工的に生成された候補は、並行して生成される[35]に記載のコンピュータによって読み取り可能な記憶媒体。
[43] 実行されたときに、マージモードを用いて前記現在の映像フレームの前記現在の部分をコーディングすることを前記1つ以上のプロセッサに行わせるさらなる命令を格納し、前記マージモードのための動き情報は、前記候補リストに基づいて決定される[35]に記載のコンピュータによって読み取り可能な記憶媒体。
[44] 前記1つ以上のプロセッサは、映像符号器を備え、前記コンピュータによって読み取り可能な記憶媒体は、実行されたときに、前記候補リストから候補を選択し、及び前記選択された候補のインデックスを示す構文要素を生成することを前記1つ以上のプロセッサに行わせるさらなる命令を格納する[35]に記載のコンピュータによって読み取り可能な記憶媒体。
[45] 前記1つ以上のプロセッサは、映像復号器を備え、前記コンピュータによって読み取り可能な記憶媒体は、実行されたときに、前記候補リストから候補を識別する構文要素を受信し及び前記識別された候補の動き情報を用いて前記現在の映像フレームの前記現在の部分を復号することを前記1つ以上のプロセッサに行わせるさらなる命令を格納する[35]に記載のコンピュータによって読み取り可能な記憶媒体。

Claims (45)

  1. 映像データをコーディングする方法であって、
    現在の映像フレームの現在の部分と関連付けられた空間的候補の組を決定することであって、空間的候補の前記組は、前記現在の部分に隣接する前記現在の映像フレームの近隣部分に対応し、前記空間的候補の各々は、関連付けられた動き情報を有することと、
    前記現在の映像フレームの前記現在の部分と関連付けられた時間的候補を決定することであって、前記時間的候補は、基準映像フレームの一部分に対応し、及び、前記時間的候補は、関連付けられた動き情報を有することと、
    空間的候補の前記組の部分組及び前記時間的候補に基づいて候補リストを生成することと、
    前記候補リストが指定された数よりも少ない候補を備えることに応答して、人工的に生成された候補を前記候補リストに加えることであって、前記人工的に生成された候補は、前記部分組の空間的候補の動き情報と同じであるか又は前記時間的候補の動き情報と同じである動き情報を有することと、を備える、方法。
  2. 空間的候補の前記組は、前記同じ動き情報を有する2つ以上の空間的候補を備え、空間的候補の前記部分組は、前記2つ以上の空間的候補のうちの1つのみを含む請求項1に記載の方法。
  3. 空間的候補の前記組の前記部分組及び前記時間的候補に基づいて前記候補リストを生成することは、重複する動き情報を有する候補を前記候補リストから除外するためのプルーニング動作を行うことを備える請求項1に記載の方法。
  4. 前記人工的に生成された候補を前記候補リストに加えることは、前記人工的に生成された候補に関して1つ以上のプルーニング動作を行わずに前記人工的に生成された候補を加えることを備える請求項1に記載の方法。
  5. 前記人工的に生成された候補は、スケーリングされない両方向性予測候補である請求項1に記載の方法。
  6. 前記人工的に生成された候補は、ゼロ候補である請求項1に記載の方法。
  7. 前記人工的に生成された候補は、動きベクトルオフセット候補である請求項1に記載の方法。
  8. 第2の人工的に生成された候補を生成することであって、前記人工的に生成された候補及び前記第2の人工的に生成された候補は、並行して生成されることをさらに備える請求項1に記載の方法。
  9. マージモードを用いて前記現在の映像フレームの前記現在の部分をコーディングすることであって、前記マージモードのための動き情報は、前記候補リストに基づいて決定されることをさらに備える請求項1に記載の方法。
  10. 前記方法は、映像符号器によって実施され、前記方法は、前記候補リストから候補を選択することと、前記選択された候補のインデックスを示す構文要素を生成することと、をさらに備える請求項1に記載の方法。
  11. 前記方法は、映像復号器によって実施され、前記方法は、前記候補リストから候補を識別する構文要素を受信することと、前記識別された候補の動き情報を用いて前記現在の映像フレームの前記現在の部分を復号することと、をさらに備える請求項1に記載の方法。
  12. 映像データをコーディングするためのデバイスであって、
    現在の映像フレームの現在の部分と関連付けられた空間的候補の組を決定し、
    前記現在の映像フレームの前記現在の部分と関連付けられた時間的候補を決定し、
    空間的候補の前記組の部分組及び前記時間的候補に基づいて候補リストを生成し、及び
    前記候補リストが指定された数よりも少ない候補を備えることに応答して、人工的に生成された候補を前記候補リストに加えるように構成された映像コーダを備え、空間的候補の前記組は、前記現在の部分に隣接する前記現在の映像フレームの近隣部分に対応し、前記空間的候補の各々は、関連付けられた動き情報を有し、前記時間的候補は、基準映像フレームの一部分に対応し、及び、前記時間的候補は、関連付けられた動き情報を有し、前記人工的に生成された候補は、前記部分組の空間的候補の動き情報と同じであるか又は前記時間的候補の動き情報と同じである動き情報を有する、デバイス。
  13. 空間的候補の前記組は、前記同じ動き情報を有する2つ以上の空間的候補を備え、空間的候補の前記部分組は、前記2つ以上の空間的候補のうちの1つのみを含む請求項12に記載のデバイス。
  14. 前記映像コーダは、重複する動き情報を有する候補を前記候補リストから除外するためのプルーニング動作を行うことによって空間的候補の前記組の前記部分組及び前記時間的候補に基づいて前記候補リストを生成する請求項12に記載のデバイス。
  15. 前記映像コーダは、前記人工的に生成された候補に関して1つ以上のプルーニング動作を行わずに前記人工的に生成された候補を加えることによって前記人工的に生成された候補を前記候補リストに加える請求項12に記載のデバイス。
  16. 前記人工的に生成された候補は、スケーリングされない両方向性予測候補である請求項12に記載のデバイス。
  17. 前記人工的に生成された候補は、ゼロ候補である請求項12に記載のデバイス。
  18. 前記人工的に生成された候補は、動きベクトルオフセット候補である請求項12に記載のデバイス。
  19. 前記映像コーダは、第2の人工的に生成された候補を生成するようにさらに構成され、前記人工的に生成された候補及び前記第2の人工的に生成された候補は、並行して生成される請求項12に記載のデバイス。
  20. 前記映像コーダは、マージモードを用いて前記現在の映像フレームの前記現在の部分をコーディングするようにさらに構成され、前記マージモードのための動き情報は、前記候補リストに基づいて決定される請求項12に記載のデバイス。
  21. 前記映像コーダは、映像符号器であり、前記映像符号器は、前記候補リストから候補を選択し及び前記選択された候補のインデックスを示す構文要素を生成するように構成される請求項12に記載のデバイス。
  22. 前記映像コーダは、映像復号器であり、前記映像復号器は、前記候補リストから候補を識別する構文要素を受信し及び前記識別された候補の動き情報を用いて前記現在の映像フレームの前記現在の部分を復号するように構成される請求項12に記載のデバイス。
  23. 前記デバイスは、
    集積回路、
    マイクロプロセッサ、及び
    前記映像コーダを含む無線通信デバイスのうちの少なくとも1つを備える請求項12に記載のデバイス。
  24. 映像データをコーディングするためのデバイスであって、
    現在の映像フレームの現在の部分と関連付けられた空間的候補の組を決定するための手段であって、空間的候補の前記組は、前記現在の部分に隣接する前記現在の映像フレームの近隣部分に対応し、前記空間的候補の各々は、関連付けられた動き情報を有する手段と、
    前記現在の映像フレームの前記現在の部分と関連付けられた時間的候補を決定するための手段であって、前記時間的候補は、基準映像フレームの一部分に対応し、及び、前記時間的候補は、関連付けられた動き情報を有する手段と、
    空間的候補の前記組の部分組及び前記時間的候補に基づいて候補リストを生成するための手段と、
    前記候補リストが指定された数よりも少ない候補を備えることに応答して、人工的に生成された候補を前記候補リストに加えるための手段であって、前記人工的に生成された候補は、前記部分組の空間的候補の動き情報と同じであるか又は前記時間的候補の動き情報と同じである動き情報を有する手段と、を備える、デバイス。
  25. 空間的候補の前記組は、前記同じ動き情報を有する2つ以上の空間的候補を備え、空間的候補の前記部分組は、前記2つ以上の空間的候補のうちの1つのみを含む請求項24に記載のデバイス。
  26. 空間的候補の前記組の前記部分組及び前記時間的候補に基づいて前記候補リストを生成するための前記手段は、重複する動き情報を有する候補を前記候補リストから除外するためのプルーニング動作を行うための手段を備える請求項24に記載のデバイス。
  27. 前記人工的に生成された候補を前記候補リストに加えるための前記手段は、前記人工的に生成された候補に関して1つ以上のプルーニング動作を行わずに前記人工的に生成された候補を加えるための手段を備える請求項24に記載のデバイス。
  28. 前記人工的に生成された候補は、スケーリングされない両方向性予測候補である請求項24に記載のデバイス。
  29. 前記人工的に生成された候補は、ゼロ候補である請求項24に記載のデバイス。
  30. 前記人工的に生成された候補は、動きベクトルオフセット候補である請求項24に記載のデバイス。
  31. 第2の人工的に生成された候補を生成するための手段であって、前記人工的に生成された候補及び前記第2の人工的に生成された候補は、並行して生成される手段、をさらに備える請求項24に記載のデバイス。
  32. マージモードを用いて前記現在の映像フレームの前記現在の部分をコーディングするための手段であって、前記マージモードのための動き情報は、前記候補リストに基づいて決定される手段、をさらに備える請求項24に記載のデバイス。
  33. 前記デバイスは、映像符号器を備え、前記デバイスは、前記候補リストから候補を選択するための手段と、前記選択された候補のインデックスを示す構文要素を生成するための手段と、をさらに備える請求項24に記載のデバイス。
  34. 前記デバイスは、映像復号器を備え、前記デバイスは、前記候補リストから候補を識別する構文要素を受信するための手段と、前記識別された候補の動き情報を用いて前記現在の映像フレームの前記現在の部分を復号するための手段と、をさらに備える請求項24に記載のデバイス。
  35. コンピュータによって読み取り可能な記憶媒体であって、
    実行されたときに、
    現在の映像フレームの現在の部分と関連付けられた空間的候補の組を決定し、
    前記現在の映像フレームの前記現在の部分と関連付けられた時間的候補を決定し、
    空間的候補の前記組の部分組及び前記時間的候補に基づいて候補リストを生成し、及び
    前記候補リストが指定された数よりも少ない候補を備えることに応答して、人工的に生成された候補を前記候補リストに加えることを1つ以上のプロセッサに行わせる命令を格納し、空間的候補の前記組は、前記現在の部分に隣接する前記現在の映像フレームの近隣部分に対応し、前記空間的候補の各々は、関連付けられた動き情報を有し、前記時間的候補は、基準映像フレームの一部分に対応し、及び、前記時間的候補は、関連付けられた動き情報を有し、前記人工的に生成された候補は、前記部分組の空間的候補の動き情報と同じであるか又は前記時間的候補の動き情報と同じである動き情報を有する、コンピュータによって読み取り可能な記憶媒体。
  36. 空間的候補の前記組は、前記同じ動き情報を有する2つ以上の空間的候補を備え、空間的候補の前記部分組は、前記2つ以上の空間的候補のうちの1つのみを含む請求項35に記載のコンピュータによって読み取り可能な記憶媒体。
  37. 前記命令は、重複する動き情報を有する候補を前記候補リストから除外するためのプルーニング動作を行うことによって空間的候補の前記組の前記部分組及び前記時間的候補に基づいて前記候補リストを生成することを前記1つ以上のプロセッサに行わせる請求項35に記載のコンピュータによって読み取り可能な記憶媒体。
  38. 前記命令は、前記人工的に生成された候補に関して1つ以上のプルーニング動作を行わずに前記人工的に生成された候補を前記候補リストに加えることを前記1つ以上のプロセッサに行わせる請求項35に記載のコンピュータによって読み取り可能な記憶媒体。
  39. 前記人工的に生成された候補は、スケーリングされない両方向性予測候補である請求項35に記載のコンピュータによって読み取り可能な記憶媒体。
  40. 前記人工的に生成された候補は、ゼロ候補である請求項35に記載のコンピュータによって読み取り可能な記憶媒体。
  41. 前記人工的に生成された候補は、動きベクトルオフセット候補である請求項35に記載のコンピュータによって読み取り可能な記憶媒体。
  42. 実行されたときに、第2の人工的に生成された候補を生成することを前記1つ以上のプロセッサに行わせる命令をさらに備え、前記人工的に生成された候補及び前記第2の人工的に生成された候補は、並行して生成される請求項35に記載のコンピュータによって読み取り可能な記憶媒体。
  43. 実行されたときに、マージモードを用いて前記現在の映像フレームの前記現在の部分をコーディングすることを前記1つ以上のプロセッサに行わせるさらなる命令を格納し、前記マージモードのための動き情報は、前記候補リストに基づいて決定される請求項35に記載のコンピュータによって読み取り可能な記憶媒体。
  44. 前記1つ以上のプロセッサは、映像符号器を備え、前記コンピュータによって読み取り可能な記憶媒体は、実行されたときに、前記候補リストから候補を選択し、及び前記選択された候補のインデックスを示す構文要素を生成することを前記1つ以上のプロセッサに行わせるさらなる命令を格納する請求項35に記載のコンピュータによって読み取り可能な記憶媒体。
  45. 前記1つ以上のプロセッサは、映像復号器を備え、前記コンピュータによって読み取り可能な記憶媒体は、実行されたときに、前記候補リストから候補を識別する構文要素を受信し及び前記識別された候補の動き情報を用いて前記現在の映像フレームの前記現在の部分を復号することを前記1つ以上のプロセッサに行わせるさらなる命令を格納する請求項35に記載のコンピュータによって読み取り可能な記憶媒体。
JP2014541199A 2011-11-07 2012-11-07 追加マージ候補の生成 Expired - Fee Related JP5908600B2 (ja)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
US201161556746P 2011-11-07 2011-11-07
US61/556,746 2011-11-07
US201161562284P 2011-11-21 2011-11-21
US61/562,284 2011-11-21
US201161562940P 2011-11-22 2011-11-22
US61/562,940 2011-11-22
US13/669,992 2012-11-06
US13/669,992 US20130114717A1 (en) 2011-11-07 2012-11-06 Generating additional merge candidates
PCT/US2012/063932 WO2013070757A1 (en) 2011-11-07 2012-11-07 Generating additional merge candidates

Publications (2)

Publication Number Publication Date
JP2014535249A true JP2014535249A (ja) 2014-12-25
JP5908600B2 JP5908600B2 (ja) 2016-04-26

Family

ID=48223691

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014541199A Expired - Fee Related JP5908600B2 (ja) 2011-11-07 2012-11-07 追加マージ候補の生成

Country Status (17)

Country Link
US (1) US20130114717A1 (ja)
EP (1) EP2777262B1 (ja)
JP (1) JP5908600B2 (ja)
KR (1) KR101626690B1 (ja)
CN (1) CN104126302B (ja)
AU (1) AU2012335887B2 (ja)
BR (1) BR112014010821A8 (ja)
CA (1) CA2853834C (ja)
HK (1) HK1199994A1 (ja)
IL (1) IL232285B (ja)
IN (1) IN2014CN03309A (ja)
MY (1) MY171806A (ja)
RU (1) RU2577779C2 (ja)
SG (1) SG11201401547XA (ja)
TW (1) TWI544783B (ja)
WO (1) WO2013070757A1 (ja)
ZA (1) ZA201404178B (ja)

Families Citing this family (82)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5982734B2 (ja) 2011-03-11 2016-08-31 ソニー株式会社 画像処理装置および方法
RU2719340C2 (ru) 2011-10-18 2020-04-17 Кт Корпорейшен Способ декодирования видеосигнала
CN107580223B (zh) 2011-11-08 2020-12-08 株式会社Kt 利用解码装置对视频信号进行解码的方法
US9491475B2 (en) 2012-03-29 2016-11-08 Magnum Semiconductor, Inc. Apparatuses and methods for providing quantized coefficients for video encoding
US20150085932A1 (en) * 2012-04-24 2015-03-26 Mediatek Inc. Method and apparatus of motion vector derivation for 3d video coding
US9325990B2 (en) 2012-07-09 2016-04-26 Qualcomm Incorporated Temporal motion vector prediction in video coding extensions
GB2511288A (en) * 2013-01-09 2014-09-03 Canon Kk Method, device, and computer program for motion vector prediction in scalable video encoder and decoder
US9392286B2 (en) * 2013-03-15 2016-07-12 Magnum Semiconductor, Inc. Apparatuses and methods for providing quantized coefficients for video encoding
US9948915B2 (en) 2013-07-24 2018-04-17 Qualcomm Incorporated Sub-PU motion prediction for texture and depth coding
US10158885B2 (en) 2013-07-24 2018-12-18 Qualcomm Incorporated Simplified advanced motion prediction for 3D-HEVC
US9667996B2 (en) 2013-09-26 2017-05-30 Qualcomm Incorporated Sub-prediction unit (PU) based temporal motion vector prediction in HEVC and sub-PU design in 3D-HEVC
US9762927B2 (en) * 2013-09-26 2017-09-12 Qualcomm Incorporated Sub-prediction unit (PU) based temporal motion vector prediction in HEVC and sub-PU design in 3D-HEVC
US9794575B2 (en) 2013-12-18 2017-10-17 Magnum Semiconductor, Inc. Apparatuses and methods for optimizing rate-distortion costs in video encoding
WO2015131387A1 (en) 2014-03-07 2015-09-11 Qualcomm Incorporated Simplified sub-prediction unit (sub-pu) motion parameter inheritence (mpi)
CN106105195B (zh) * 2014-03-11 2019-06-21 寰发股份有限公司 用于视频编码的单一样本模式的方法及装置
CN106031170B (zh) * 2014-04-01 2019-04-26 联发科技股份有限公司 运动信息编码的方法
US20160373744A1 (en) * 2014-04-23 2016-12-22 Sony Corporation Image processing apparatus and image processing method
JP6472877B2 (ja) * 2014-10-09 2019-02-20 寰發股▲ふん▼有限公司HFI Innovation Inc. 視点合成予測を含む3dまたは多視点映像符号化の方法
WO2016070363A1 (en) * 2014-11-05 2016-05-12 Mediatek Singapore Pte. Ltd. Merge with inter prediction offset
US11330284B2 (en) 2015-03-27 2022-05-10 Qualcomm Incorporated Deriving motion information for sub-blocks in video coding
US20180176596A1 (en) * 2015-06-05 2018-06-21 Intellectual Discovery Co., Ltd. Image encoding and decoding method and image decoding device
US10575011B2 (en) * 2015-09-24 2020-02-25 Lg Electronics Inc. Inter prediction method and apparatus in image coding system
WO2017147765A1 (en) * 2016-03-01 2017-09-08 Mediatek Inc. Methods for affine motion compensation
RU2632127C1 (ru) * 2016-04-07 2017-10-02 Общество С Ограниченной Ответственностью "Яндекс" Способ и система сравнения видеофайлов
CN116546207A (zh) * 2016-04-08 2023-08-04 韩国电子通信研究院 用于导出运动预测信息的方法和装置
US20210281873A1 (en) * 2016-09-06 2021-09-09 Mediatek Inc. Methods and apparatuses of candidate set determination for binary-tree splitting blocks
CN117528105A (zh) * 2016-11-28 2024-02-06 英迪股份有限公司 图像编码方法、图像解码方法及用于传送比特流的方法
WO2019054838A1 (ko) * 2017-09-18 2019-03-21 인텔렉추얼디스커버리 주식회사 블록 분할에 따른 병합 후보 리스트를 사용하는 비디오 코딩 방법 및 장치
KR102643116B1 (ko) * 2018-03-30 2024-03-04 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
CN114513671B (zh) * 2018-04-02 2024-04-09 华为技术有限公司 一种视频编解码方法和装置
CN112385213B (zh) 2018-05-10 2023-06-23 Lg电子株式会社 基于帧间预测模式处理图像的方法和用于该方法的设备
KR20230085231A (ko) * 2018-05-16 2023-06-13 후아웨이 테크놀러지 컴퍼니 리미티드 비디오 코딩 방법 및 장치
WO2020003284A1 (en) 2018-06-29 2020-01-02 Beijing Bytedance Network Technology Co., Ltd. Interaction between lut and amvp
CN110662037B (zh) * 2018-06-29 2022-06-28 北京字节跳动网络技术有限公司 运动信息共享的限制
EP3791585A1 (en) 2018-06-29 2021-03-17 Beijing Bytedance Network Technology Co. Ltd. Partial/full pruning when adding a hmvp candidate to merge/amvp
CN110662053B (zh) 2018-06-29 2022-03-25 北京字节跳动网络技术有限公司 使用查找表的视频处理方法、装置和存储介质
JP7328330B2 (ja) 2018-06-29 2023-08-16 北京字節跳動網絡技術有限公司 Lutにおける動き候補のチェック順序
EP3791587A1 (en) 2018-06-29 2021-03-17 Beijing Bytedance Network Technology Co. Ltd. Resetting of look up table per slice/tile/lcu row
TWI719523B (zh) * 2018-06-29 2021-02-21 大陸商北京字節跳動網絡技術有限公司 哪個查找表需要更新或不更新
TWI735900B (zh) * 2018-06-29 2021-08-11 大陸商北京字節跳動網絡技術有限公司 一種視頻處理方法和裝置
SG11202012293RA (en) 2018-06-29 2021-01-28 Beijing Bytedance Network Technology Co Ltd Update of look up table: fifo, constrained fifo
KR20210025537A (ko) * 2018-06-29 2021-03-09 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 하나 또는 다수의 룩업 테이블들을 사용하여 이전에 코딩된 모션 정보를 순서대로 저장하고 이를 사용하여 후속 블록들을 코딩하는 개념
JP7460617B2 (ja) 2018-06-29 2024-04-02 北京字節跳動網絡技術有限公司 Lut更新条件
CN110677669B (zh) 2018-07-02 2021-12-07 北京字节跳动网络技术有限公司 具有lic的lut
US10904555B2 (en) * 2018-07-11 2021-01-26 Tencent America LLC Method and apparatus for video coding
CN112514383B (zh) * 2018-07-31 2023-12-19 寰发股份有限公司 用于视频编解码的利用运动向量差的合并方法和装置
US11336914B2 (en) * 2018-08-16 2022-05-17 Qualcomm Incorporated History-based candidate list with classification
CN112585972B (zh) 2018-08-17 2024-02-09 寰发股份有限公司 视频编解码的帧间预测方法及装置
WO2020035022A1 (en) * 2018-08-17 2020-02-20 Mediatek Inc. Method and apparatus of simplified merge candidate list for video coding
WO2020053800A1 (en) 2018-09-12 2020-03-19 Beijing Bytedance Network Technology Co., Ltd. How many hmvp candidates to be checked
CN114125467A (zh) * 2018-09-13 2022-03-01 华为技术有限公司 一种预测运动信息的解码方法及装置
WO2020052653A1 (zh) * 2018-09-13 2020-03-19 华为技术有限公司 一种预测运动信息的解码方法及装置
BR112021005175A2 (pt) 2018-09-21 2021-06-08 Guangdong Oppo Mobile Telecommunications Corp., Ltd. método de decodificação de vídeo, método de codificação de vídeo, aparelho de decodificação de vídeo e aparelho de codificação de vídeo
CA3113860A1 (en) * 2018-09-24 2020-04-02 B1 Institute Of Image Technology, Inc. Image encoding/decoding method and device
CN114584788B (zh) * 2018-10-10 2022-09-23 华为技术有限公司 帧间预测方法及装置
EP3847814A4 (en) * 2018-11-06 2021-07-14 Beijing Bytedance Network Technology Co. Ltd. POSITION DEPENDENT STORAGE, MOVEMENT INFORMATION
EP4274233A3 (en) 2018-11-08 2023-11-22 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Method for encoding/decoding image signal, and apparatus therefor
CN116074505A (zh) * 2018-11-08 2023-05-05 Oppo广东移动通信有限公司 视频信号编码/解码方法以及用于所述方法的设备
PL3869800T3 (pl) 2018-11-08 2024-05-13 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Sposób kodowania/dekodowania sygnału obrazu i urządzenie do tego
JP7391958B2 (ja) 2018-11-08 2023-12-05 オッポ広東移動通信有限公司 ビデオ信号符号化/復号方法及び前記方法に用いられる機器
CN117880493A (zh) 2018-11-13 2024-04-12 北京字节跳动网络技术有限公司 用于空域运动候选列表的构建方法
CN112970258B (zh) * 2018-11-13 2023-08-18 北京字节跳动网络技术有限公司 用于子块预测块的多假设
KR20200056272A (ko) * 2018-11-14 2020-05-22 에스케이텔레콤 주식회사 인터 예측 방법 및 이를 이용한 영상 복호화 장치
WO2020101392A1 (ko) 2018-11-14 2020-05-22 에스케이텔레콤 주식회사 인터 예측 방법 및 이를 이용한 영상 복호화 장치
TWI734262B (zh) * 2018-11-16 2021-07-21 聯發科技股份有限公司 用於視訊編碼之運動向量差值改良式合併方法和裝置
WO2020103936A1 (en) 2018-11-22 2020-05-28 Beijing Bytedance Network Technology Co., Ltd. Pruning method for inter prediction with geometry partition
CN117880495A (zh) * 2018-12-03 2024-04-12 北京字节跳动网络技术有限公司 候选的最大数量的指示方法
US11570430B2 (en) 2018-12-06 2023-01-31 Lg Electronics Inc. Method and device for processing video signal on basis of inter-prediction
EP3716626A4 (en) 2018-12-12 2021-05-19 LG Electronics Inc. METHOD AND DEVICE FOR PROCESSING VIDEO SIGNAL BASED ON A TRANSFORM OF HISTORY-BASED MOTION VECTORS
CN113261290B (zh) 2018-12-28 2024-03-12 北京字节跳动网络技术有限公司 基于修改历史的运动预测
WO2020141962A1 (ko) * 2019-01-04 2020-07-09 세종대학교산학협력단 영상 부호화/복호화 방법 및 장치
KR102648159B1 (ko) 2019-01-10 2024-03-18 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 Lut 업데이트의 호출
CN113383554B (zh) 2019-01-13 2022-12-16 北京字节跳动网络技术有限公司 LUT和共享Merge列表之间的交互
WO2020147773A1 (en) 2019-01-16 2020-07-23 Beijing Bytedance Network Technology Co., Ltd. Inserting order of motion candidates in lut
US11140406B2 (en) * 2019-02-20 2021-10-05 Qualcomm Incorporated Signalling for merge mode with motion vector differences in video coding
CN113615193A (zh) 2019-03-22 2021-11-05 北京字节跳动网络技术有限公司 Merge列表构建和其他工具之间的交互
CN114097228B (zh) 2019-06-04 2023-12-15 北京字节跳动网络技术有限公司 具有几何分割模式编解码的运动候选列表
EP3963890A4 (en) 2019-06-04 2022-11-02 Beijing Bytedance Network Technology Co., Ltd. BUILDING A LIST OF MOVEMENT CANDIDATES USING NEIGHBOR BLOCK INFORMATION
EP3984215A4 (en) 2019-07-14 2022-08-24 Beijing Bytedance Network Technology Co., Ltd. TRANSFORM BLOCK SIZE RESTRICTION IN VIDEO CODING
WO2021057996A1 (en) 2019-09-28 2021-04-01 Beijing Bytedance Network Technology Co., Ltd. Geometric partitioning mode in video coding
CN114902663A (zh) * 2019-12-30 2022-08-12 鸿颖创新有限公司 用于编码视频数据的设备和方法
WO2024010370A1 (ko) * 2022-07-05 2024-01-11 엘지전자 주식회사 양방향 인터 예측에 기반한 영상 부호화/복호화 방법, 비트스트림을 전송하는 방법 및 비트스트림을 저장한 기록 매체

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040001546A1 (en) * 2002-06-03 2004-01-01 Alexandros Tourapis Spatiotemporal prediction for bidirectionally predictive (B) pictures and motion vector prediction for multi-picture reference motion compensation
GB0500332D0 (en) * 2005-01-08 2005-02-16 Univ Bristol Enhanced error concealment
US8665964B2 (en) * 2009-06-30 2014-03-04 Qualcomm Incorporated Video coding based on first order prediction and pre-defined second order prediction mode
EP2532159A1 (en) * 2010-02-05 2012-12-12 Telefonaktiebolaget L M Ericsson (PUBL) Selecting predicted motion vector candidates
US9313526B2 (en) * 2010-02-19 2016-04-12 Skype Data compression for video
US8824558B2 (en) * 2010-11-23 2014-09-02 Mediatek Inc. Method and apparatus of spatial motion vector prediction
US9866859B2 (en) * 2011-06-14 2018-01-09 Texas Instruments Incorporated Inter-prediction candidate index coding independent of inter-prediction candidate list construction in video coding
EP2723076A4 (en) * 2011-06-14 2015-03-04 Samsung Electronics Co Ltd METHOD AND APPARATUS FOR ENCODING MOVEMENT INFORMATION, AND METHOD AND APPARATUS FOR DECODING THE SAME
KR102014332B1 (ko) * 2011-10-21 2019-08-26 노키아 테크놀로지스 오와이 비디오 코딩 방법 및 장치
US9544592B2 (en) * 2012-02-10 2017-01-10 Texas Instruments Incorporated Methods and systems for encoding pictures associated with video data
ES2832507T3 (es) * 2012-05-09 2021-06-10 Sun Patent Trust Procedimiento de realización de predicción de vector de movimiento, procedimientos de codificación y decodificación y aparatos de los mismos

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
JPN6016006414; Sugio, T., et.al.: '"Parsing Robustness for Merge/AMVP"' [online] Document: JCTVC-F470(version 6), 20110722, Joint Collaborative Team on Video Coding (JCT-VC) *
JPN6016006416; Fujibayashi, A., et.al.: '"CE9 3.2d Simplified Motion vector prediction"' [online] Document: JCTVC-D231(version 1), 20110115, Joint Collaborative Team on Video Coding (JCT-VC) *
JPN6016006419; Jung, J., et.al.: '"Description of Core Experiment CE13: Motion data parsing robustness and throughput"' [online] Document: JCTVC-F913(version 2), 20110822, Joint Collaborative Team on Video Coding (JCT-VC) *
JPN6016006422; Jianle Chen, et.al.: '"MVP index parsing with fixed number of candidates"' [online] Document: JCTVC-F402(version 2), 20110712, Joint Collaborative Team on Video Coding (JCT-VC) *

Also Published As

Publication number Publication date
CN104126302B (zh) 2017-08-04
IL232285B (en) 2019-03-31
BR112014010821A8 (pt) 2017-06-20
WO2013070757A1 (en) 2013-05-16
TWI544783B (zh) 2016-08-01
CN104126302A (zh) 2014-10-29
TW201338549A (zh) 2013-09-16
CA2853834C (en) 2017-05-30
HK1199994A1 (en) 2015-07-24
RU2577779C2 (ru) 2016-03-20
EP2777262B1 (en) 2018-10-17
KR20140092876A (ko) 2014-07-24
KR101626690B1 (ko) 2016-06-01
EP2777262A1 (en) 2014-09-17
ZA201404178B (en) 2019-07-31
BR112014010821A2 (pt) 2017-06-13
MY171806A (en) 2019-10-30
AU2012335887B2 (en) 2016-03-24
AU2012335887A1 (en) 2014-05-29
RU2014123368A (ru) 2015-12-20
SG11201401547XA (en) 2014-06-27
IL232285A0 (en) 2014-06-30
CA2853834A1 (en) 2013-05-16
JP5908600B2 (ja) 2016-04-26
US20130114717A1 (en) 2013-05-09
IN2014CN03309A (ja) 2015-10-09

Similar Documents

Publication Publication Date Title
JP5908600B2 (ja) 追加マージ候補の生成
US10771811B2 (en) Overlapped motion compensation for video coding
JP6092222B2 (ja) ビデオコード化のための動きベクトル決定
CN111818343B (zh) 将当前图片用作视频译码的参考
US9699472B2 (en) Restriction of prediction units in B slices to uni-directional inter prediction
US9426463B2 (en) Restriction of prediction units in B slices to uni-directional inter prediction
US20190014342A1 (en) Partial reconstruction based template matching for motion vector derivation
US10542280B2 (en) Encoding optimization with illumination compensation and integer motion vector restriction
US9491458B2 (en) Scalable video coding prediction with non-causal information

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150929

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151225

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160323

R150 Certificate of patent or registration of utility model

Ref document number: 5908600

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees