JP6563079B2 - 符号化方法、復号方法、符号化装置、復号装置、及びプログラム - Google Patents

符号化方法、復号方法、符号化装置、復号装置、及びプログラム Download PDF

Info

Publication number
JP6563079B2
JP6563079B2 JP2018108460A JP2018108460A JP6563079B2 JP 6563079 B2 JP6563079 B2 JP 6563079B2 JP 2018108460 A JP2018108460 A JP 2018108460A JP 2018108460 A JP2018108460 A JP 2018108460A JP 6563079 B2 JP6563079 B2 JP 6563079B2
Authority
JP
Japan
Prior art keywords
intra prediction
angle
prediction mode
intra
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018108460A
Other languages
English (en)
Other versions
JP2018157587A (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.)
Canon Inc
Original Assignee
Canon 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 Canon Inc filed Critical Canon Inc
Publication of JP2018157587A publication Critical patent/JP2018157587A/ja
Application granted granted Critical
Publication of JP6563079B2 publication Critical patent/JP6563079B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/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/186Methods 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 a colour or a chrominance component
    • 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/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial 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/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
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Landscapes

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

Description

本発明は、一般に、デジタルビデオ信号処理に関し、より詳細には、ビデオデータのビデオフレーム用のイントラ予測されたサンプルを生成するための方法、装置、およびシステムに関する。本発明はまた、ビデオデータのビデオフレーム用のイントラ予測されたサンプルを生成するためのコンピュータプログラムを記録したコンピュータ可読媒体を含む、コンピュータプログラム製品に関する。
現在、ビデオデータの送信および記憶のためのアプリケーションを含む、多くのビデオコーディング用のアプリケーションが存在する。多くのビデオコーディング規格もまた既に開発されており、現在、他のビデオコーディング規格が開発中である。ビデオコーティングの標準化における最近の開発は、「ビデオコーディング共同研究部会」(JCT−VC)と呼ばれるグループの編成につながっている。ビデオコーディング共同研究部会(JCT−VC)は、ビデオコーディングエキスパートグループ(VCEG)として知られる、国際電気通信連合(ITU)の電気通信標準化セクタ(ITU−T)の研究グループ16議題6(SG16/Q6)のメンバと、同様に動画エキスパートグループ(MPEG)として知られる、国際標準化機構/国際電気標準会議共同技術委員会1/分科委員会29/作業グループ11(ISO/IEC JTC1/SC29/WG11)のメンバとを含む。
ビデオコーディング共同研究部会(JCT−VC)は、「H.264/MPEG−4 AVC」として知られる、現存するビデオコーディング規格より著しく優れている、新しいビデオコーディング規格を作成するという目標を有している。ビデオコーディング規格のパフォーマンスは複数の方法で測定される。ビデオコーディング規格に存在する、またはビデオコーディング規格用に提案されるアルゴリズムの複雑さの測定値は、ビデオコーディング規格に特定のアルゴリズムを導入する増分コストまたは節約を推定するために使用される。複雑さの1つの簡単な測定値は、ビデオコーディング規格のソフトウェア実装形態のランタイムである。非圧縮ビデオデータを簡潔に表現するビデオコーディング規格の実装形態の能力の測定値は、「コーディング効率」として知られる。ビデオコーディング規格の実装形態は、通常、解凍されたビデオデータにひずみを発生させる。これは「不可逆」圧縮として知られ、より高いコーディング効率が達成されることを可能にする。結果として、コーディング効率の測定値は、圧縮されたビデオデータ(「ビットストリーム」)についてのひずみ(たとえばPSNR)の測定値とビットレートの測定値の両方を考慮しなければならない。H.264/MPEG−4 AVC規格は、それ自体、MPEG−4およびITU−T H.263などの以前のビデオコーディング規格に対する大きい改善である。開発中の新しいビデオコーディング規格は、「高効率ビデオコーディング(HEVC)」と命名されている。高効率ビデオコーディング(HEVC)の今後の開発は、「クロマフォーマット」として知られる、ビデオデータ内に存在するクロマ情報の様々な表現のサポートを導入することに向けられている。ビデオコーディング共同研究部会(JCT−VC)はまた、リアルタイムまたは高フレームレートで高い解像度で動作するように規格の実装形態をスケーリングするときの困難さをもたらす、高効率ビデオコーディング(HEVC)用に提案された技術から生じる実装形態の課題を考慮する。高効率ビデオコーディング(HEVC)に存在するアルゴリズムの複雑さは、実装形態、たとえばハードウェア実装形態の回路サイズに影響を及ぼす。
特定のビデオコーディング規格によって達成可能なコーディング効率の一態様は、利用可能な予測方法の特性である。2次元ビデオフレームの圧縮シーケンスを対象とするビデオコーディング規格の場合、2つのタイプの予測:イントラ予測およびインター予測が存在する。イントラ予測方法は、ビデオフレームの一部分のコンテンツが同じビデオフレームの他の部分から予測されることを可能にする。イントラ予測方法は、通常、指向性テクスチャを有するブロックを生成し、イントラ予測モードは、テクスチャ、およびテクスチャを生成する基礎として使用されるフレーム内の隣接サンプルの方向を指定する。インター予測方法は、ビデオフレーム内のブロックのコンテンツが前のビデオフレーム内のブロックから予測されることを可能にする。前のビデオフレームは、「参照フレーム」と呼ばれる場合がある。ビデオフレームのシーケンス内の最初のビデオフレームは、参照用に利用可能な前のフレームがないので、通常、フレーム内の全ブロックに対してイントラ予測を使用する。後続のビデオフレームは、そこからブロックを予測する1つ以上の前のビデオフレームを使用しても良い。最も高いコーディング効率を達成するために、元のビデオデータに最も近い予測ブロックを生成する予測方法が通常使用される。予測ブロックと元のビデオデータとの間に残っている差異は、「残留物」として知られる。「残差」として知られる残留物の不可逆表現は、ビットストリームに記憶されても良い。残差内の不可逆量は、元のビデオデータおよびビットストリームのサイズと比較して、ビットストリームから復号されたビデオデータのひずみに影響を及ぼす。
ビデオデータを表現するために使用される「クロマフォーマット」は、ビデオデータのルーマチャネルと複数のクロマチャネルとの間のサンプルアスペクト比を指定する。アスペクト比は、クロマフォーマットごとのルーマおよびクロマ用のコロケートされたブロックサイズ間の固定関係と言う意味を含む。固定関係はまた、コロケートされたブロックのルーマチャネルおよびクロマチャネルに使用される利用可能な変換サイズに影響を及ぼす。ビデオデータが「4:2:2」のクロマフォーマットを使用して表現されるとき、ルーマサンプルとクロマサンプルとの間に非正方形の関係が存在する。
「4:2:2」のクロマフォーマット用のクロマチャネルで使用される非正方形ブロックサイズの1つの帰結は、イントラ予測動作の指向性テクスチャが、ルーマチャネルと比較してクロマチャネルでひずむことである。ひずみにより、クロマチャネル用の予測ブロックの確度が低下する。ひずみを補償するために、クロマチャネル用の残差のサイズが増大することが必要である。残差のサイズが増大すると、ビデオコーディング規格の実装形態によって達成されるコーディング効率が望ましくない低下を引き起こす。
本開示の一態様によれば、色差チャネルのためのイントラ予測処理を行って、画像データに基づくビットストリームを生成する符号化方法であって、
生成するビットストリームのカラーフォーマットが4:2:2のカラーフォーマットであるか判定し、4:2:2のカラーフォーマットであった場合に、他のカラーフォーマットの場合とは異なる所定の方法を用いて、前記色差チャネルのためのイントラ予測処理における角度であるIntraPredAngleを、イントラ予測モードを示す値 を用いて導出する導出工程と、
前記導出工程によって導出された角度を用いて、前記色差チャネルのイントラ予測処理を行う予測工程と
を有し、
前記 カラーフォーマットが前記他のカラーフォーマットであった場合、前記イントラ予測モードを示す値と、前記導出工程において導出される前記IntraPredAngleとは下記のような関係となり、
前記カラーフォーマットが前記4:2:2のカラーフォーマットであった場合、前記イントラ予測モードを示す値と、前記導出工程において導出される前記IntraPredAngleとは下記のような関係となり、
前記イントラ予測処理における予測ユニットとして、対応するコーディングユニットと同じ大きさの予測ユニット、及び、対応するコーディングユニットを4つに分割した予測ユニットを使用可能である。
また、本開示の一態様によれば、 色差チャネルのためのイントラ予測処理を行って、ビットストリームから画像を復号する復号方法であって、
前記ビットストリームのカラーフォーマットが4:2:2のカラーフォーマットであるか判定し、4:2:2のカラーフォーマットであった場合に、他のカラーフォーマットの場合とは異なる所定の方法を用いて、前記色差チャネルのためのイントラ予測処理における角度であるIntraPredAngleを、イントラ予測モードを示す値を用いて導出する導出工程と、
前記導出工程によって導出された角度を用いて、前記色差チャネルのイントラ予測処理を行う予測工程と
を有し、
前記カラーフォーマットが前記他のカラーフォーマットであった場合、前記イントラ予測モードを示す値と、前記導出工程において導出される前記IntraPredAngleとは下記のような関係となり、
前記カラーフォーマットが前記4:2:2のカラーフォーマットであった場合、前記イントラ予測モードを示す値と、前記導出工程において導出される前記IntraPredAngleとは下記のような関係となり、
前記イントラ予測処理における予測ユニットとして、対応するコーディングユニットと同じ大きさの予測ユニット、及び、対応するコーディングユニットを4つに分割した予測ユニットを使用可能である。
本開示の一態様によれば、4:2:2のクロマフォーマット用に構成されたビデオビットストリームのクロマチャネルのためのイントラ予測されたサンプルを生成する方法が提供され、前記方法は、
クロマチャネル用のイントラ予測モードからイントラ予測角度を決定することであって、前記イントラ予測モードは複数の水平イントラ予測モードのうちの1つである、決定することと、
4:2:2のクロマフォーマットに起因してイントラ予測角度を調整することと、
調整された角度が所定の値を超える場合、水平イントラ予測モードと垂直イントラ予測モードとの間の変化しきい値を修正することであって、前記修正された変化しきい値は、複数の水平イントラ予測モードのうちの1つから垂直イントラ予測モードに、調整されたイントラ予測角度を変換するために構成されている、修正することと、
調整されたイントラ予測角度および変化しきい値に従う垂直イントラ予測モードを使用して、イントラ予測されたサンプルを生成すること、
と、を含む。
本開示の別の態様によれば、4:2:2のクロマフォーマット用に構成されたビデオビットストリームのクロマチャネルのためのイントラ予測されたサンプルを生成するためのシステムが提供され、前記システムは、
データおよびコンピュータプログラムを記憶するためのメモリと、
前記コンピュータプログラムを実行するための、メモリに結合されたプロセッサと、を備え、前記コンピュータプログラムは、
クロマチャネル用のイントラ予測モードからイントラ予測角度を決定することであって、前記イントラ予測モードは複数の水平イントラ予測モードのうちの1つである、決定することと、
4:2:2のクロマフォーマットに起因してイントラ予測角度を調整することと、
調整された角度が所定の値を超える場合、水平イントラ予測モードと垂直イントラ予測モードとの間の変化しきい値を修正することであって、前記修正された変化しきい値は、複数の水平イントラ予測モードのうちの1つから垂直イントラ予測モードに、調整されたイントラ予測角度を変換するために構成されている、修正することと、
調整されたイントラ予測角度および変化しきい値による垂直イントラ予測モードを使用して、イントラ予測されたサンプルを生成すること、と
を行うための命令を備える。
本開示の別の態様によれば、4:2:2のクロマフォーマット用に構成されたビデオビットストリームのクロマチャネルのためのイントラ予測されたサンプルを生成するための装置が提供され、前記装置は、
クロマチャネル用のイントラ予測モードからイントラ予測角度を決定するための手段であって、前記イントラ予測モードは複数の水平イントラ予測モードのうちの1つである、手段と、
4:2:2のクロマフォーマットに起因してイントラ予測角度を調整するための手段と、
調整された角度が所定の値を超える場合、水平イントラ予測モードと垂直イントラ予測モードとの間の変化しきい値を修正するための手段であって、前記修正された変化しきい値は、複数の水平イントラ予測モードのうちの1つから垂直イントラ予測モードに、調整されたイントラ予測角度を変換するために構成されている、手段と、
調整されたイントラ予測角度および変化しきい値による垂直イントラ予測モードを使用して、イントラ予測されたサンプルを生成するための手段と
を備える。
本開示のさらに別の態様によれば、4:2:2のクロマフォーマット用に構成されたビデオビットストリームのクロマチャネルのためのイントラ予測されたサンプルを生成するためのコンピュータプログラムを備えるコンピュータ可読媒体が提供され、プログラムは、
クロマチャネル用のイントラ予測モードからイントラ予測角度を決定するためのコードであって、前記イントラ予測モードは複数の水平イントラ予測モードのうちの1つである、コードと、
4:2:2のクロマフォーマットに起因してイントラ予測角度を調整するためのコードと、
調整された角度が所定の値を超える場合、水平イントラ予測モードと垂直イントラ予測モードとの間の変化しきい値を修正するためのコードであって、前記修正された変化しきい値は、複数の水平イントラ予測モードのうちの1つから垂直イントラ予測モードに、調整されたイントラ予測角度を変換するために構成されている、コードと、
調整されたイントラ予測角度および変化しきい値による垂直イントラ予測モードを使用して、イントラ予測されたサンプルを生成するためのコード、と
を備える。
本開示のさらに別の態様によれば、4:2:2のクロマフォーマット用に構成されたビデオビットストリームのクロマチャネルのためのイントラ予測されたサンプルを生成する方法が提供され、前記方法は、
クロマチャネル用のイントラ予測モードからイントラ予測角度を決定することであって、前記イントラ予測モードは複数の水平イントラ予測モードのうちの1つである、決定することと、
4:2:2のクロマフォーマットに起因してイントラ予測角度を調整することと、
ビットストリームが4:2:2のクロマフォーマット用に構成されている場合、水平イントラ予測モードと垂直イントラ予測モードとの間の変化しきい値を修正することであって、前記修正された変化しきい値は、複数の水平イントラ予測モードのうちの1つから垂直イントラ予測モードに、調整されたイントラ予測角度を変換するために構成されている、修正することと、
調整されたイントラ予測角度および変化しきい値による垂直イントラ予測モードを使用して、イントラ予測されたサンプルを生成すること、と
を含む。
本開示のさらに別の態様によれば、4:2:2のクロマフォーマット用に構成されているビデオビットストリームのクロマチャネルのためのイントラ予測されたサンプルを生成するためのシステムが提供され、前記システムは、
データおよびコンピュータプログラムを記憶するためのメモリと、
前記コンピュータプログラムを実行するための、メモリに結合されたプロセッサと、を備え、前記コンピュータプログラムは、
クロマチャネル用のイントラ予測モードからイントラ予測角度を決定することであって、前記イントラ予測モードは複数の水平イントラ予測モードのうちの1つである、決定することと、
4:2:2のクロマフォーマットに起因してイントラ予測角度を調整することと、
ビットストリームが4:2:2のクロマフォーマット用に構成されている場合、水平イントラ予測モードと垂直イントラ予測モードとの間の変化しきい値を修正することであって、前記修正された変化しきい値が、複数の水平イントラ予測モードのうちの1つから垂直イントラ予測モードに、調整されたイントラ予測角度を変換するために構成されている、修正することと、
調整されたイントラ予測角度および変化しきい値による垂直イントラ予測モードを使用して、イントラ予測されたサンプルを生成すること、と
を行うための命令を備える。
本開示のさらに別の態様によれば、4:2:2のクロマフォーマット用に構成されているビデオビットストリームのクロマチャネルのためのイントラ予測されたサンプルを生成するための装置が提供され、前記装置は、
クロマチャネル用のイントラ予測モードからイントラ予測角度を決定するための手段であって、前記イントラ予測モードは複数の水平イントラ予測モードのうちの1つである、手段と、
4:2:2のクロマフォーマットに起因してイントラ予測角度を調整するための手段と、
ビットストリームが4:2:2のクロマフォーマット用に構成されている場合、水平イントラ予測モードと垂直イントラ予測モードとの間の変化しきい値を修正するための手段であって、前記修正された変化しきい値が、複数の水平イントラ予測モードのうちの1つから垂直イントラ予測モードに、調整されたイントラ予測角度を変換するために構成されている、手段と、
調整されたイントラ予測角度および変化しきい値による垂直イントラ予測モードを使用して、イントラ予測されたサンプルを生成するための手段と、
を備える。
本開示のさらに別の態様によれば、4:2:2のクロマフォーマット用に構成されているビデオビットストリームのクロマチャネルのためのイントラ予測されたサンプルを生成するためのコンピュータプログラムを備えるコンピュータ可読媒体が提供され、前記プログラムは、
クロマチャネル用のイントラ予測モードからイントラ予測角度を決定するためのコードであって、前記イントラ予測モードは複数の水平イントラ予測モードのうちの1つである、コードと、
4:2:2のクロマフォーマットに起因してイントラ予測角度を調整するためのコードと、
ビットストリームが4:2:2のクロマフォーマット用に構成されている場合、水平イントラ予測モードと垂直イントラ予測モードとの間の変化しきい値を修正するためのコードであって、前記修正された変化しきい値は、複数の水平イントラ予測モードのうちの1つから垂直イントラ予測モードに、調整されたイントラ予測角度を変換するために構成されている、コードと、
調整されたイントラ予測角度および変化しきい値による垂直イントラ予測モードを使用して、イントラ予測されたサンプルを生成するためのコードと、
を備える。
本開示のさらに別の態様によれば、ビデオビットストリームのクロマチャネルのためのイントラ予測されたサンプルを生成する方法が提供され、前記方法は、
ビデオビットストリームのクロマフォーマットを復号することと、
角度パラメータを決定する前にイントラ予測モードを調整することであって、前記調整は復号されたクロマフォーマットに依存する、調整することと、
調整されたイントラ予測モードから角度パラメータを決定することと、
決定された角度パラメータを使用して参照サンプルを生成することと、
決定された角度パラメータおよび生成された参照サンプルを使用して、イントラ予測されたサンプルを生成すること、と
を含む。
本開示のさらに別の態様によれば、ビデオビットストリームのクロマチャネルのためのイントラ予測されたサンプルを生成するためのシステムが提供され、前記システムは、
データおよびコンピュータプログラムを記憶するためのメモリと、
前記コンピュータプログラムを実行するための、メモリに結合されたプロセッサと、を備え、前記コンピュータプログラムは、
ビデオビットストリームのクロマフォーマットを復号することと、
角度パラメータを決定する前にイントラ予測モードを調整することであって、前記調整が復号されたクロマフォーマットに依存する、調整することと、
調整されたイントラ予測モードから角度パラメータを決定することと、
決定された角度パラメータを使用して参照サンプルを生成することと、
決定された角度パラメータおよび生成された参照サンプルを使用して、イントラ予測されたサンプルを生成すること、と
を行うための命令を備える。
本開示のさらに別の態様によれば、ビデオビットストリームのクロマチャネルのためのイントラ予測されたサンプルを生成するための装置が提供され、前記方法は、
ビデオビットストリームのクロマフォーマットを復号するための手段と、
角度パラメータを決定する前にイントラ予測モードを調整するための手段であって、前記調整が復号されたクロマフォーマットに依存する、手段と、
前記調整されたイントラ予測モードから角度パラメータを決定するための手段と、
前記決定された角度パラメータを使用して参照サンプルを生成するための手段と、
決定された角度パラメータおよび生成された参照サンプルを使用して、イントラ予測されたサンプルを生成すること、と
を備える。
本開示のさらに別の態様によれば、ビデオビットストリームのクロマチャネルのためのイントラ予測されたサンプルを生成するためのコンピュータプログラムを備えるコンピュータ可読媒体が提供され、前記コンピュータプログラムは、
ビデオビットストリームのクロマフォーマットを復号するためのコードと、
角度パラメータを決定する前にイントラ予測モードを調整するためのコードであって、前記調整が復号されたクロマフォーマットに依存する、コードと、
調整されたイントラ予測モードから角度パラメータを決定するためのコードと、
決定された角度パラメータを使用して参照サンプルを生成するためのコードと、
決定された角度パラメータおよび生成された参照サンプルを使用して、イントラ予測されたサンプルを生成すること、と
を備える。
他の態様も開示される。
次に、以下の図面および付録を参照して、本開示の少なくとも1つの実施形態が記載される。
ビデオ符号化および復号システムを示す概略ブロック図である。 図1のビデオ符号化および復号システムの一方または両方が実践され得る汎用コンピュータシステムの概略ブロック図である。 図1のビデオ符号化および復号システムの一方または両方が実践され得る汎用コンピュータシステムの概略ブロック図である。 ビデオエンコーダの機能モジュールを示す概略ブロック図である。 ビデオデコーダの機能モジュールを示す概略ブロック図である。 フレームデータを表現するためのクロマフォーマットを概略的に示す図である。 フレームデータを表現するためのクロマフォーマットを概略的に示す図である。 複数のコーディングユニット(CU)、予測ユニット(PU)、および変換ユニット(TU)へのコーディングツリーユニット(CTB)の再分割を概略的に示す図である。 指向性のイントラ予測モードを概略的に示す図である。 例示的なイントラ予測方向のためのイントラ予測プロセスを概略的に示す図である。 さらなる例示的なイントラ予測方向のためのイントラ予測プロセスを概略的に示す図である。 4:2:2のクロマフォーマットを使用するように構成されているフレームのルーマサンプルグリッド上のイントラ予測された予測ユニット(PU)を概略的に示す図である。 図9Aの4:2:2のクロマフォーマットを使用するように構成されているフレームのクロマサンプルグリッド上のイントラ予測された予測ユニット(PU)を概略的に示す図である。 図4のフレーム内予測モジュールの機能モジュールを示す概略ブロック図である。 図3のビデオエンコーダおよび図4のビデオデコーダにおいてイントラ予測されたサンプルを生成する方法を示す概略ブロック図である。 イントラ予測モードをイントラ予測角度および逆角度に変換し、イントラ予測角度および逆角度を量子化するための表である。 イントラ予測モードをイントラ予測角度および逆角度に変換し、イントラ予測角度および逆角度ならびにブロックタイプによって決定された水平イントラ予測モードと垂直イントラ予測モードとの間の境界を量子化するための表である。 イントラ予測モードをイントラ予測角度および逆角度に変換し、イントラ予測角度および逆角度を代替量子化するための表である。 イントラ予測モードをイントラ予測角度および逆角度に変換し、イントラ予測角度および逆角度ならびにブロックタイプによって決定された水平イントラ予測モードと垂直イントラ予測モードとの間の境界を代替量子化するための表である。
付録Aは、図12と合致する、イントラ予測されたサンプルを生成する方法の一例を示す。
付録Bは、図13と合致する、イントラ予測されたサンプルを生成する方法の一例を示す。
付録Cは、図14と合致する、イントラ予測されたサンプルを生成する方法の一例を示す。
付録Dは、図15と合致する、イントラ予測されたサンプルを生成する方法の一例を示す。
添付図面の任意の1つ以上の同じ参照番号を有するステップおよび/または特徴に対して参照が行われた場合、逆の意図が明白でない限り、それらのステップおよび/または特徴は、この説明の目的で同じ機能または動作を有する。
図1は、ビデオ符号化および復号システム100の機能モジュールを示す概略ブロック図である。システム100は、カラーチャネル用の利用可能な変換ロジックの改善された選択をもたらす残差4分木変換選択のための技法を利用することができる。カラーチャネルは、システム100によってサポートされるすべてのクロマフォーマット用のいずれかのクロマチャネルを含む場合がある。システム100は、ソースデバイス110および宛先デバイス130を含む。通信チャネル120は、ソースデバイス110から宛先デバイス130に符号化されたビデオ情報を通信するために使用される。ソースデバイス110および宛先デバイス130は、それぞれの携帯電話ハンドセットを備える場合があり、その場合、通信チャネル120はワイヤレスチャネルである。または、ソースデバイス110および宛先デバイス130は、ビデオ会議機器を備える場合があり、その場合、通信チャネル120は、通常、インターネット接続などの有線チャネルである。さらに、ソースデバイス110および宛先デバイス130は、テレビジョン放送、ケーブルテレビジョンアプリケーション、インターネットビデオアプリケーション、および符号化されたビデオが何らかの記憶媒体またはファイルサーバ上で取り込まれるアプリケーションをサポートするデバイスを含む、広範囲のデバイスのうちいかなるデバイスを備えていても良い。
図1に示されたように、ソースデバイス110は、ビデオソース112、ビデオエンコーダ114、および送信機116を含む。ビデオソース112は、通常、イメージングセンサ、非一時的記録媒体に記憶された以前に取り込まれたビデオシーケンス、またはリモートイメージングセンサからのビデオフィードなどの、取り込まれたビデオフレームデータのソースを備える。ビデオソース112としてイメージングセンサを含むであろうソースデバイス110の例には、スマートフォン、ビデオカムコーダ、およびネットワークビデオカメラが含まれる。ビデオエンコーダ114は、ビデオソース112から取り込まれたフレームデータを符号化ビデオデータに変換するが、さらに図3を参照して後述する。符号化ビデオデータは、通常、符号化ビデオデータ(または「符号化ビデオ情報」)として、通信チャネル120を介して送信機116によって送信される。符号化ビデオデータが、後で通信チャネル120を介して送信されるまで、「フラッシュ」メモリまたはハードディスクドライブなどの何らかのストレージデバイスに記憶されることも可能である。
宛先デバイス130は、受信機132、ビデオデコーダ134、およびディスプレイデバイス136を含む。受信機132は、通信チャネル120から符号化ビデオデータを受信し、受信されたビデオデータをビデオデコーダ134に渡す。次いで、ビデオデコーダ134は、復号されたフレームデータをディスプレイデバイス136に出力する。ディスプレイデバイス136の例には、スマートフォン、タブレットコンピュータ、コンピュータモニタ、またはスタンドアロンテレビ受信機などの中の、陰極線管、液晶ディスプレイが含まれる。ソースデバイス110および宛先デバイス130の各々の機能が単一のデバイス内で具現化されることも可能である。
上述された例示的なデバイスにもかかわらず、ソースデバイス110および宛先デバイス130の各々は、通常、ハードウェア構成要素とソフトウェア構成要素の組合せを介して、汎用コンピューティングシステム内で構成されても良い。図2Aはそのようなコンピュータシステム200を示し、コンピュータシステム200は、コンピュータモジュール201と、入力デバイスである、キーボード202、マウスポインタデバイス203、スキャナ226、ビデオソース112として構成されていても良いカメラ227、およびマイクロフォン280などや、出力デバイスである、プリンタ215、ディスプレイデバイス136として構成しても良いディスプレイデバイス214、およびラウドスピーカ217と、を含む。外部変調器−復調器(モデム)トランシーバデバイス216は、接続221を介して通信ネットワーク220との間で通信するために、コンピュータモジュール201によって使用されても良い。通信チャネル120を代表するであろう通信ネットワーク220は、インターネットなどのワイドエリアネットワーク(WAN)、セルラー電気通信ネットワーク、またはプライベートWANであり得る。接続221が電話回線である場合、モデム216は従来の「ダイヤルアップ」モデムで良い。または、接続221が高容量(たとえば、ケーブル)接続である場合、モデム216はブロードバンドモデムであり得る。通信ネットワーク220へのワイヤレス接続のために、ワイヤレスモデムが使用される場合もある。トランシーバデバイス216は、送信機116と受信機132の機能を供給し、通信チャネル120は接続221内で具現化され得る。
コンピュータモジュール201は、通常、少なくとも1つのプロセッサユニット205およびメモリユニット206を含む。たとえば、メモリユニット206は、半導体のランダムアクセスメモリ(RAM)および半導体の読取り専用メモリ(ROM)を有していても良い。コンピュータモジュール201はまた、以下を含むいくつかの入力/出力(I/O)インターフェースを含む。つまり、ビデオディスプレイ214、ラウドスピーカ217、およびマイクロフォン280に結合するオーディオ−ビデオインターフェース207と、キーボード202、マウス203、スキャナ226、カメラ227、および場合によってはジョイスティックまたは他のヒューマンインターフェースデバイス(図示せず)に結合するI/Oインターフェース213と、外部モデム216およびプリンタ215用のインターフェース208である。いくつかの実装形態では、モデム216は、コンピュータモジュール201内、たとえばインターフェース208内に組み込まれても良いであろう。コンピュータモジュール201はローカルネットワークインターフェース211も有し、ローカルネットワークインターフェース211は、ローカルエリアネットワーク(LAN)として知られるローカルエリア通信ネットワーク222に、接続223を介してコンピュータシステム200を結合することを可能にする。図2Aに示されたように、ローカル通信ネットワーク222は、接続224を介してワイドネットワーク220に結合する場合もあり、接続224は、通常、いわゆる「ファイアウォール」デバイスまたは同様の機能のデバイスを含むはずである。ローカルネットワークインターフェース211は、Ethernet(商標)回路カード、Bluetooth(商標)ワイヤレス構成、またはIEEE802.11ワイヤレス構成を備えていても良いが、多数の他のタイプのインターフェースがインターフェース211用に実施されても良い。ローカルネットワークインターフェース211は、送信機116と受信機132の機能を提供することもでき、通信チャネル120はローカル通信ネットワーク222内でも具現化され得る。
I/Oインターフェース208および213は、シリアル接続とパラレル接続のいずれかまたは両方を提供することができ、前者は、通常、ユニバーサルシリアルバス(USB)規格に従って実装され、対応するUSBコネクタ(図示せず)を有する。ストレージデバイス209が備えられ、通常ハードディスクドライブ(HDD)210を含む。フロッピーディスクドライブおよび磁気テープドライブ(図示せず)などの他のストレージデバイスが使用されても良い。光ディスクドライブ212は、通常、データの不揮発性ソースとして働くために備えられている。ポータブルメモリデバイス、たとえば、光ディスク(たとえば、CD−ROM、DVD、ブルーレイディスク(商標))、USB−RAM、ポータブル外部ハードドライブ、およびフロッピーディスクなどは、コンピュータシステム200へのデータの適切なソースとして使用されても良い。通常、HDD210、光ドライブ212、ネットワーク220、およびネットワーク222どれでも、ビデオソース112として、またはディスプレイ214を介して表示するために記憶されるべき復号ビデオデータ用の宛先として動作するように構成される。
コンピュータモジュール201の構成要素205〜213は、通常、相互接続されたバス204を介して、かつ当業者に知られたコンピュータシステム200の従来の動作モードとなる方式で通信する。たとえば、プロセッサ205は、接続218を使用してシステムバス204に結合される。同様に、メモリ206および光ディスクドライブ212は、接続219によってシステムバス204に結合される。記載された構成が実践され得るコンピュータの例には、IBM−PCおよびその互換製品、Sun SPARCstations、Apple Mac(商標)、または同様のコンピュータシステムが含まれる。
適切な場合、または望まれる場合は、ビデオエンコーダ114およびビデオデコーダ134、ならびに下記に記載される方法は、コンピュータシステム200を使用して実装されても良く、ビデオエンコーダ114、ビデオデコーダ134、および以下に述べる図11のプロセスは、コンピュータシステム200内で実行可能な、1つ以上のソフトウェアアプリケーションプログラム233として実装されても良い。特に、ビデオエンコーダ114、ビデオデコーダ134、および記載される方法のステップは、コンピュータシステム200内で遂行されるソフトウェア233の中の命令231(図2B参照)によって達成される。ソフトウェア命令231は、各々が1つ以上の特定のタスクを実行するための、1つ以上のコードモジュールとして形成されても良い。ソフトウェアは2つの個別の部分に分割されても良く、その中で、第1の部分および対応するコードモジュールは、記載される方法を実行し、第2の部分および対応するコードモジュールは、第1の部分とユーザとの間のユーザインターフェースを管理する。
ソフトウェアは、たとえば、下記に記載されるストレージデバイスを含む、コンピュータ可読媒体に記憶されても良い。ソフトウェアは、コンピュータ可読媒体からコンピュータシステム200にロードされ、次いで、コンピュータシステム200によって実行される。そのようなソフトウェアを有するコンピュータ可読媒体、またはコンピュータ可読媒体に記録されたコンピュータプログラムは、コンピュータプログラム製品である。コンピュータシステム200においてコンピュータプログラム製品を使用すると、好ましくは、ビデオエンコーダ114、ビデオデコーダ134、および記載される方法を実装するための有利な装置がもたらされる。
ソフトウェア233は、通常、HDD210またはメモリ206に記憶される。ソフトウェアは、コンピュータ可読媒体からコンピュータシステム200にロードされ、コンピュータシステム200によって実行される。このように、たとえば、ソフトウェア233は、光ディスクドライブ212によって読み取られる光学的に読取り可能なディスク記憶媒体(たとえば、CD−ROM)225に記憶されても良い。
場合によっては、アプリケーションプログラム233は、1つ以上のCD−ROM225上で符号化され、対応するドライブ212を介して読み取られて、ユーザに提供されても良いが、または代わりに、ネットワーク220もしくは222からユーザによって読み取られても良い。またさらに、ソフトウェアは、他のコンピュータ可読媒体からコンピュータシステム200にロードすることもできる。コンピュータ可読記憶媒体は、実行および/または処理のためにコンピュータシステム200に記録された命令および/またはデータを提供する、任意の非一時的有形記憶媒体を指す。そのような記憶媒体の例には、フロッピーディスク(登録商標)、磁気テープ、CD−ROM、DVD、ブルーレイディスク、ハードディスクドライブ、ROMもしくは集積回路、USBメモリ、光磁気ディスク、またはPCMCIAなどのコンピュータ可読カードなどが、そのようなデバイスがコンピュータモジュール201の内部または外部にあるか否かにかかわらず、含まれる。ソフトウェア、アプリケーションプログラム、命令および/またはビデオデータもしくは符号化ビデオデータのコンピュータモジュール201への提供に関与する場合もある、一時的または非有形のコンピュータ可読伝送媒体の例には、無線または赤外線送信チャネルならびに別のコンピュータまたはネットワークデバイスへのネットワーク接続、ならびに、電子メール送信およびウェブサイトに記録された情報を含むインターネットまたはイントラネットなどが含まれる。
上述されたアプリケーションプログラム233の第2の部分および対応するコードモジュールは、ディスプレイ214上にレンダリングまたは場合によっては表示されるべき1つ以上のグラフィカルユーザインターフェース(GUI)を実装するために実行されても良い。通常、キーボード202およびマウス203の操作を介して、コンピュータシステム200およびアプリケーションのユーザは、機能的に適応可能な方式でインターフェースを操作して、GUIに関連付けられたアプリケーションに制御コマンドおよび/または入力を提供する。ラウドスピーカ217を介した音声プロンプト出力、およびマイクロフォン280を介したユーザボイスコマンド入力を利用するオーディオインターフェースなどの、機能的に適応可能なユーザインターフェースの他の形態が実装されても良い。
図2Bは、プロセッサ205および「メモリ」234の詳細な概略ブロック図である。メモリ234は、図2Aのコンピュータモジュール201によってアクセスできる、(HDD209および半導体メモリ206を含む)すべてのメモリモジュールの論理集合を表す。
コンピュータモジュール201が最初に電源投入されると、パワーオンセルフテスト(POST)プログラム250が実行される。POSTプログラム250は、通常、図2Aの半導体メモリ206のROM249に記憶される。ソフトウェアを記憶するROM249などのハードウェアデバイスは、ファームウェアと呼ばれる場合がある。POSTプログラム250は、コンピュータモジュール201内のハードウェアを検査して適正に機能することを確認し、通常、プロセッサ205、メモリ234(209、206)、および基本入出力システムソフトウェア(BIOS)モジュール251をチェックし、また通常、正常な動作のためにROM249に記憶される。POSTプログラム250が正常に動作すると、BIOS251は、図2Aのハードディスクドライブ210をアクティブ化する。ハードディスクドライブ210のアクティブ化は、ハードディスクドライブ210に常駐するブートストラップローダプログラム252を、プロセッサ205を介して実行させる。ブートストラップローダプログラム252は、オペレーティングシステム253をRAMメモリ206にロードし、そこでオペレーティングシステム253は動作を開始する。オペレーティングシステム253は、プロセッサ管理、メモリ管理、デバイス管理、ストレージ管理、ソフトウェアアプリケーションインターフェース、および汎用ユーザインターフェースを含む、様々な高水準の機能を実現する、プロセッサ205によって実行可能なシステムレベルのアプロケーションである。
オペレーティングシステム253は、メモリ234(209、206)を管理して、コンピュータモジュール201で動作する各プロセスまたはアプリケーションが、他のプロセスに割り振られたメモリと衝突することなく実行するのに十分なメモリを有することを確認する。さらに、図2Aのコンピュータシステム200において利用可能な様々なタイプのメモリは、各プロセスが効果的に動作することができるように、適切に使用されなければならない。したがって、集合メモリ234は、(別段に明記されていない限り)メモリの特定のセグメントがどのように割り振られるかを示すものではなく、むしろ、コンピュータシステム200によってアクセス可能なメモリの全体図、およびメモリがどのように使用されるかを提供するものである。
図2Bに示されたように、プロセッサ205は、制御ユニット239、算術論理ユニット(ALU)240、および、キャッシュメモリと呼ばれるローカルメモリまたは内部メモリ248を含む、いくつかの機能モジュールを含む。キャッシュメモリ248は、通常、レジスタセクション内のいくつかのストレージレジスタ244〜246を含む。1つ以上の内部バス241は、これらの機能モジュールを機能的に相互接続する。プロセッサ205は、通常、接続218を使用して、システムバス204を介して外部デバイスと通信するための1つ以上のインターフェース242も有する。メモリ234は、接続219を使用してバス204に結合される。
アプリケーションプログラム233は、条件分岐およびループの命令を含む場合がある、命令のシーケンス231を含む。プログラム233は、プログラム233の実行時に使用されるデータ232を含む場合もある。命令231およびデータ232は、それぞれ、メモリロケーション228、229、230および235、236、237に記憶される。命令231とメモリロケーション228〜230の相対サイズに応じて、特定の命令は、メモリロケーション230に記憶された命令によって描写されたように、単一のメモリロケーションに記憶されても良い。または、命令はいくつかの部分にセグメント化されても良く、それらの各々は、メモリロケーション228および229に示された命令セグメントによって描写されたように、別々のメモリロケーションに記憶される。
一般に、プロセッサ205は、その中で実行される命令のセットを与えられる。プロセッサ205は次の入力を待機し、それに対して、プロセッサ205は命令の別のセットを実行することによって反応する。各入力は、すべて図2Aに描写された、入力デバイス202、203のうちの1つ以上によって生成されたデータ、ネットワーク220、222のうちの1つにわたって外部ソースから受信されたデータ、ストレージデバイス206、209のうちの1つから取り出されたデータ、または対応する読取り機212の中に挿入された記憶媒体225から取り出されたデータを含む、いくつかのソースのうちの1つまたは複数から供給されても良い。命令のセットの実行により、場合によってはデータが出力される場合が有る。実行により、メモリ234にデータまたは変数を記憶することを必要とする場合もある。
ビデオエンコーダ114、ビデオデコーダ134、および記載される方法は、対応するメモリロケーション255、256、257内のメモリ234に記憶された入力変数254を使用すても良い。ビデオエンコーダ114、ビデオデコーダ134、および記載される方法は、対応するメモリロケーション262、263、264内のメモリ234に記憶される出力変数261を生成する。中間変数258は、メモリロケーション259、260、266、および267に記憶されても良い。
図2Bのプロセッサ205を参照すると、レジスタ244、245、246、算術論理ユニット(ALU)240、および制御ユニット239は、連携して、プログラム233を構成する命令セット内の命令ごとに、「フェッチ、復号、および実行」サイクルを実行するために必要なマイクロ動作のシーケンスを実行する。各フェッチ、復号、および実行サイクルは、以下を含む。
(a)メモリロケーション228、229、230から命令231をフェッチする、すなわち読み取るフェッチ動作、
(b)どの命令がフェッチされたかを制御ユニット239が判定する復号動作、および
(c)制御ユニット239および/またはALU240が命令を実行する実行動作
その後、次の命令用のさらなるフェッチ、復号、および実行サイクルが実行されるであろう。同様に、それにより制御ユニット239がメモリロケーション232に値を記憶する、すなわち書き込む記憶サイクルが実行されるであろう。
以下に述べる図11のプロセス内の各ステップまたはサブステップは、プログラム233の1つ以上のセグメントに関連付けられ、通常、プロセッサ205内のレジスタセクション244、245、247、ALU240、および制御ユニット239によって連携して実行され、プログラム233の上記のセグメント用の命令セット内の命令ごとにフェッチ、復号、および実行サイクルを実行する。
図3は、ビデオエンコーダ114の機能モジュールを示す概略ブロック図である。図4は、ビデオデコーダ134の機能モジュールを示す概略ブロック図である。ビデオエンコーダ114およびビデオデコーダ134は、図2Aおよび図2Bに示されたように、汎用コンピュータシステム200を使用して実装されても良く、ここで、様々な機能モジュールは、コンピュータシステム200内の専用ハードウェアにより、ハードディスクドライブ205に常駐し、プロセッサ205によってその実行が制御されるソフトウェアアプリケーションプログラム233の1つ以上のソフトウェアコードモジュールなどの、コンピュータシステム200内で実行可能なソフトウェアにより実行されても良いし、または、専用ハードウェアとコンピュータシステム200内で実行可能なソフトウェアの組合せによって実装されても良い。ビデオエンコーダ114、ビデオデコーダ134、および上記の方法は、代替として、上記方法の機能または副機能を実行する1つ以上の集積回路などの、専用ハードウェアで実現されても良い。専用ハードウェアとしては、グラフィックプロセッサ、デジタル信号プロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、または1つ以上のマイクロプロセッサおよび関連メモリがあるであろう。特に、ビデオエンコーダ114はモジュール320〜346を備え、ビデオデコーダ134はモジュール420〜434を備え、モジュール320〜346およびモジュール420〜434は、各々ソフトウェアアプリケーションプログラム233の1つ以上のソフトウェアコードモジュールとして実装されても良い。
図3のビデオエンコーダ114は高効率ビデオコーディング(HEVC)のビデオ符号化パイプラインの一例であるが、本明細書に記載される処理段階を実行するために、他のビデオコーデックを使用しても良い。ビデオエンコーダ114は、各フレームが1つ以上のカラーチャネルを含む一連のフレームなどの、取り込まれたフレームデータを受信する。各フレームは、カラーチャネル当たり1つのサンプルグリッドを備える。色情報は、勧告ITU−R BT.709(「YUV」)などの「色空間」を使用して表されるが、他の色空間も可能である。YUV色空間などの色空間が使用されるとき、カラーチャネルは、ルーマカラーチャネル(「Y」)と2つのクロマカラーチャネル(「U」および「V」)とを含む。さらに、画像のサンプリングに応じて、または取り込まれたフレームデータを再サンプリングするためにフィルタリングするアプリケーションを介して、異なる量の情報が、取り込まれたフレームデータの各カラーチャネルのサンプルグリッドに含まれても良い。「クロマフォーマット」として知られるいくつかの使用可能なサンプリング方法が存在し、それらのうちのいくつかを、図5Aおよび図5Bを参照して説明する。
ビデオエンコーダ114は、フレームデータ310などの取り込まれたフレームデータの各フレームを、一般に「コーディングツリーブロック」(CTB)と呼ばれる領域に分割する。各コーディングツリーブロック(CTB)は、フレームの部分の階層的な4分木細区分をコーディングユニット(CU)の集合に含める。コーディングツリーブロック(CTB)は、一般に、64×64のルーマサンプルの面積を占めるが、16×16または32×32などの他のサイズが可能である。場合によっては、128×128のルーマサンプルなどの、コーディングツリーブロック(CTB)用のさらに大きいサイズを使用しても良い。コーディングツリーブロック(CTB)は、4つの同じサイズの領域に分割されることによって再分割されて、新しい階層レベルを作成しても良い。分割は再帰的に適用されても良く、結果として4分木階層をもたらす。コーディングツリーブロック(CTB)の面寸法は常に2のべき乗であり、4分木分割は常に幅と高さを半分にする結果になり、領域の面寸法も常に2のべき乗である。これ以上の領域の分割が実行されないとき、「コーディングユニット」(CU)は領域内を出ると言われる。コーディングツリーブロックのトップレベル(または通常「最上位レベル」)で分割が実行されないとき、コーディングツリーブロック全体を占める領域は、一般に「最大コーディングユニット」(LCU)と呼ばれる1つのコーディングユニット(CU)を含む。8×8のルーマサンプルによって占められる面積などの最小サイズもコーディングユニット(CU)ごとに存在するが、他の最小サイズも可能である。最小サイズのコーディングユニットは、一般に、「最小コーディングユニット」(SCU)と呼ばれる。4分木階層の結果として、コーディングツリーブロック(CTB)の全体は、1つ以上のコーディングユニット(CU)によって占められる。
ビデオエンコーダ114は、コーディングユニット(CU)ごとに、一般に「予測ユニット」(PU)と呼ばれる、データサンプルの1つ以上のアレイを生成する。予測ユニット(PU)が重複しないこと、およびコーディングユニット(CU)の全体が1つ以上の予測ユニット(PU)によって占められることの要件を満たせば、各コーディングユニット(CU)内の予測ユニット(PU)の様々な構成が可能である。予測ユニット(PU)が重複しないこと、およびコーディングユニット(CU)の全体が1つ以上の予測ユニット(PU)によって占められることの要件により、予測ユニット(PU)がフレームの面積全体をカバーすることが保証される。
ビデオエンコーダ114は、マルチプレクサモジュール340から予測ユニット(PU)382を出力することによって動作する。差分モジュール344は、予測ユニット(PU)382と、対応するデータサンプルの2Dアレイとの間の差分を、空間領域内で、フレームデータ310のコーディングツリーブロック(CTB)のコーディングユニット(CU)から出力する。差分は「残差サンプルアレイ」360として知られている。残差サンプルアレイ360は、変換モジュール320において周波数領域に変換されても良い。差分モジュール344からの残差サンプルアレイ360は変換モジュール320によって受信され、変換モジュール320は、「順方向変換」を適用することによって、残差サンプルアレイ360を空間表現から周波数領域表現に変換(または「符号化」)する。変換モジュール320は変換係数を作成する。変換係数は、コーディングユニット(CU)の階層細区分内の変換ユニット(TU)内の変換ごとに、残差変換アレイ362として構成される。コーディングユニット(CU)は1つ以上の変換ユニット(TU)に再分割される。再分割されたコーディングユニット(CU)は、「残差4分木」または「残差4分木(RQT)」と呼ばれる場合がある。コーディングユニット(CU)の残差データの残差4分木(RQT)への再分割は、変換制御モジュール346の制御下で実行される。
変換制御モジュール346は、「レートひずみ基準」に従って現在のコーディングユニット(CU)の残差4分木内の変換ユニット(TU)の様々な考えられる構成について、符号化ビットストリーム312内で必要なビットレートをテストすることができる。レートひずみ基準は、符号化ビットストリーム312またはそのローカル領域のビットレートと、ひずみ間の、または、フレームバッファ332に存在するフレームと取り込まれたフレームデータと間の差分の許容可能なトレードオフの測定値である。いくつかの構成では、レートひずみ基準は、ルーマについてのレートおよびひずみのみを考慮し、したがって、ルーマチャネルの特性のみに基づいて、符号化決定が行われる。一般に、残差4分木(RQT)は、ルーマとクロマとの間で共有され、クロマ情報の量は、ルーマと比較して相対的に小さくいので、レートひずみ基準においてルーマのみを考慮することが適切である。クロマのみに固有の決定が行われる必要がある場合、レートひずみ基準は、クロマのビットコストおよびレートコストを考慮するように拡張されても良い。または代替として、ルーマについてのレートひずみ基準に基づいて、クロマからの妥当な決定を行うために、ルールまたは「ヒューリスティック」が導入されても良い。したがって、変換制御モジュール346は、残差4分木として変換ユニット(TU)の構成を選択しても良い。選択された構成は、考えられる変換ユニット(TU)のセットから、現在のコーディングユニット(CU)の残差サンプルアレイ360を符号化するために構成される。コーディングユニット(CU)の残差4分木(RQT)の構成は、分割変換フラグ386のセットによって指定される。残差4分木(RQT)は、図5Aおよび図5Bを参照してさらに以下で説明する。
残差4分木用の考えられる変換ユニットは、利用可能な変換サイズおよびコーディングユニット(CU)のサイズに依存する。残差4分木を用いると、符号化ビットストリーム312においてより低いビットレートとなる、したがって、より高いコーディング効率を達成できるであろう。より大きいサイズの変換ユニット(TU)により、ルーマとクロマの両方について、より大きい変換を使用することになる。一般に、より大きい変換は、残差サンプルアレイにわたって拡散したサンプルデータ(または「残差エネルギー」)を有する残差サンプルアレイのよりコンパクトな表現をもたらす。より小さい変換ユニット(TU)は、残差サンプルアレイの特定の領域に局所化した残差エネルギーを有する残差サンプルアレイのよりコンパクトな表現をもたらす。したがって、残差4分木の多くの考えられる構成は、開発中の高効率ビデオコーディング(HEVC)規格において、残差サンプルアレイ360の高いコーディング効率を達成するための有用な手段を提供する。
開発中の高効率ビデオコーディング(HEVC)規格の場合、残差サンプルアレイ360の周波数領域表現への変換は、離散コサイン変換(DCT)がシフトおよび加算を使用して実施されるように修正された、修正DCTを使用して実施される。サポートされる変換サイズにしたがって、残差サンプルアレイ360および変換係数362の様々なサイズが可能である。開発中の高効率ビデオコーディング(HEVC)規格では、変換は、32×32、16×16、8×8、および4×4などのサイズを有するデータサンプルの2Dアレイ上で実行される。したがって、変換サイズの所定のセットは、ビデオエンコーダ114に利用可能である。さらに、変換サイズのセットは、ルーマチャネルとクロマチャネルとの間で異なっていても良い。
2次元変換は、一般に「分離可能」であるように構成され、一方向の(たとえば行上の)データサンプルの2Dアレイ上で動作する1D変換の第1のセットとしての実装を可能にする。1D変換の第1のセットの後に、他の方向の(たとえば列上の)1D変換の第1のセットから出力されたデータサンプルの2Dアレイ上で動作する1D変換の第2のセットが続く。同じ幅と高さとを有する変換は、一般に「正方形変換」と呼ばれる。異なる幅と高さとを有するさらなる変換も使用される場合があり、一般に「非正方形変換」と呼ばれる。行と列の1次元変換は、4×4変換モジュールまたは8×8変換モジュールなどの、特定のハードウェアまたはソフトウェアに組み込まれても良い。
より大きい寸法を有する変換は、そのようなより大きい寸法の変換がまれにしか使用されない場合でも、大量の回路を必要とする。したがって、開発中の高効率ビデオコーディング(HEVC)規格は、32×32のルーマサンプルの最大変換サイズを定義する。開発中の高効率ビデオコーディング(HEVC)規格用に定義された変換実装の統合的性質により、サポートされる非正方形変換の数を低減することも優先される。非正方形変換のサイズは、通常、非正方形変換のサイズごとに実装されるべき完全に新しいハードウェア、または、様々な1D変換ロジックを特定の非正方形変換のサイズに再構成することを可能にするさらなる選択ロジックのいずれかを必要とする。加えて、非正方形変換のサイズは、サポートされる非正方形変換のサイズごとに変換および逆変換の動作を実行するためにさらなる方法を導入することによって、ソフトウェア実装形態の複雑さを増大させ、さらなる変換サイズの必要なバッファ管理機能を実装する複雑さを増大させる場合もある。
変換は、ルーマチャネルとクロマチャネルの両方に適用されても良い。変換ユニット(TU)に関してルーマチャネルを扱うこととクロマチャネルを扱うことの間の差異が存在し、図5Aおよび図5Bを参照して下記に論じる。各残差4分木は、1つのコーディングユニット(CU)を占め、残差4分木階層の各リーフノードで1つの変換ユニット(TU)を含む階層へのコーディングユニット(CU)の4分木分解として定義され、各変換ユニット(TU)は、サポートされる変換サイズの特定の変換を使用することができる。コーディングツリーブロック(CTB)と同様に、コーディングユニット(CU)の全体が1つ以上の変換ユニット(TU)によって占められることが必要である。残差4分木階層の各レベルで、「コード化ブロックフラグ値」は各カラーチャネル内の存在の可能性のある変換を現在の階層レベルで(これ以上の分割が存在しないとき)通知し、また、より低い階層レベルが、生じた変換ユニット(TU)の間で少なくとも1つの変換を含む場合があることを通知する。コード化ブロックフラグ値がゼロであるとき、現在のレベルまたはより低いレベルにあるすべての残差係数は、ゼロであると知られ、したがって、(現在の階層レベルまたはより低い階層レベルのいずれかにある)残差4分木の任意の変換ユニット(TU)の対応するカラーチャネルのために変換が実行される必要はない。コード化ブロックフラグ値が1であるとき、現在の領域がこれ以上再分割されない場合、領域は、少なくとも1つの非ゼロ残差係数を必要とする変換を含む。現在の領域がさらに再分割される場合、1のコード化ブロックフラグ値は、各々の生じた再分割された領域が非ゼロ残差係数を含む場合があることを示す。このようにして、カラーチャネルごとに、ゼロ以上の変換は、何もないところからコーディングユニット(CU)の全体まで変化する、コーディングユニット(CU)の面積の一部分をカバーする場合がある。カラーチャネルごとに別々のコード化ブロックフラグ値が存在する。ただ1つの可能なコード化ブロックフラグ値があるケースが存在するので、各コード化ブロックフラグ値は符号化される必要がない。
変換係数362は、スケーリングおよび量子化モジュール322に入力され、そこで、そのデータサンプル値は、決定された量子化パラメータ384に従ってスケーリングおよび量子化されて、残差データアレイ364を生成する。スケーリングおよび量子化によって、決定された量子化パラメータ384の値に応じて、予測の損失が発生する。決定された量子化パラメータ384がより高い値だと、より大きい情報が残差データから失われることになる。失われた情報は、ビデオデコーダ134からの出力の視覚的品質の低下を犠牲にして、ビデオエンコーダ114によって達成される圧縮を増大させる。決定された量子化パラメータ384は、フレームデータ310の各フレームの符号化中に適用されても良い。また、決定された量子化パラメータ384は、フレームデータ310の各フレームの部分用に固定化されても良い。さらに、決定された量子化パラメータ384は、フレームデータ310の全フレーム用に固定化されても良い。別々の値で様々な残差係数を量子化することなど、決定された量子化パラメータ384の他の適用も可能である。
残差データアレイ364および決定された量子化パラメータ384は、逆スケーリングモジュール326への入力になる。逆スケーリングモジュール326は、スケーリングおよび量子化モジュール322によって実行されたスケーリングを逆転させて、残差データアレイ364の再スケーリングバージョンである再スケーリングデータアレイ366を生成する。残差データアレイ364、決定された量子化パラメータ384、および分割変換フラグ386は、エントロピーエンコーダモジュール324への入力にもなる。エントロピーエンコーダモジュール324は、符号化ビットストリーム312(または「ビデオビットストリーム」)内で残差データアレイ364の値を符号化する。スケーリングおよび量子化モジュール322から生じた予測の損失に起因して、再スケーリングデータアレイ366は、アレイ363内の元の値と同一ではない。次いで、逆スケーリングモジュール326からの再スケーリングデータアレイ366は、逆変換モジュール328に出力される。逆変換モジュール328は、周波数領域から空間領域への逆変換を実行して、再スケーリング変換係数アレイ366の空間領域表現368を生成する。空間領域表現368は、ビデオデコーダ134で生成される空間領域表現と実質的に同一である。次いで、空間領域表現368は加算モジュール342に入力される。
動き推定モジュール338は、一般にメモリ206内に構成されるフレームバッファモジュール332に記憶されたフレームの1つ以上のセットからの以前のフレームデータと、フレームデータ310を比較することによって、動きベクトル374を生成する。フレームのセットは「参照ピクチャリスト」として知られる。次いで、動きベクトル374は動き補償モジュール334に入力され、動き補償モジュール334は、フレームバッファモジュール332に記憶されたデータサンプルをフィルタリングし、動きベクトル374から導出された空間オフセットを考慮に入れることによって、インター予測された予測ユニット(PU)376を生成する。図3には示されていないが、動きベクトル374はまた、符号化ビットストリーム312内で符号化するために、エントロピーエンコーダモジュール324にシンタックス要素として渡される。フレーム内予測モジュール336は、加算モジュール342から取得されたサンプル370を使用して、イントラ予測された予測ユニット(PU)378を生成し、加算モジュール342は、マルチプレクサモジュール340からの予測ユニット(PU)382とマルチプレクサ369の空間領域出力とを加算する。フレーム内予測モジュール336はまた、符号化ビットストリーム312内に符号化するために、エントロピーエンコーダモジュール324に送られるイントラ予測モード380を生成する。
予測ユニット(PU)は、イントラ予測方法またはインター予測方法のいずれかを使用して生成されても良い。イントラ予測方法は、予測ユニット(PU)内の参照データサンプルを生成するために、(通常、予測ユニットの上および左に)以前に復号された予測ユニット(PU)に隣接するデータサンプルを使用する。イントラ予測の様々な方向が可能であり、「イントラ予測モード」と呼ばれる。イントラ予測方法は、動きベクトルを使用して、選択された参照フレームからのブロックを参照する。動き推定モジュール338および動き補償モジュール334は、動きベクトル374に対して動作し、ルーマサンプルの8分の1(1/8)の精度を有し、フレームデータ310内のフレーム間の動きの精密なモデル化を可能にする。イントラ予測方法またはインター予測方法のどちらを使用するかの決定は、生じる符号化ビットストリーム312の所望のビットレートと、イントラ予測方法またはインター予測方法のいずれかによって導入される画像品質のひずみ量との間のレートひずみのトレードオフに従って行われる。イントラ予測が使用される場合、同様にレートひずみのトレードオフに従って、可能なイントラ予測モードのセットから1つのイントラ予測モードが選択される。マルチプレクサモジュール340は、レートひずみアルゴリズムによって行われた決定に応じて、フレーム内予測モジュール336からのイントラ予測された参照サンプル378、または動き補償ブロック334からのインター予測された予測ユニット(PU)376のいずれかを選択する。
加算モジュール342は、デブロッキングフィルタモジュール330に入力される総和370を生成する。デブロッキングフィルタモジュール330は、ブロック境界に沿ってフィルタリングし、メモリ206内に構成されているフレームバッファモジュール332に書き込まれる、デブロッキングされたサンプル372を生成することを実行する。フレームバッファモジュール332は、参照ピクチャリストの一部として将来の参照用に、1つ以上の過去のフレームからのデータを保持するために十分な容量を有するバッファである。
開発中の高効率ビデオコーディング(HEVC)規格の場合、エントロピーエンコーダ324によって生成された符号化ビットストリーム312は、ネットワークアブストラクションレイヤ(NAL)ユニットの中に描写される。一般に、フレームの各スライスは1つのNALユニットに含まれる。エントロピーエンコーダ324は、コンテキスト適応型バイナリ算術コーディング(CABAC)アルゴリズムを実行することによって、「シンタックス要素」と総称して呼ばれる、残差アレイ364、イントラ予測モード380、動きベクトル、および他のパラメータを、符号化ビットストリーム312に符号化する。シンタックス要素は、「シンタックス構造」の中に一緒にグループ化される。グループ化は、階層構造を記述するために再帰を含む場合がある。イントラ予測モードなどの序数値、または動きベクトルなどの整数値に加えて、シンタックス要素はまた、たとえば4分木分割を示すためにフラグを含む。
図4のビデオデコーダ134は高効率ビデオコーディング(HEVC)のビデオ復号パイプラインを参照して記載されるが、他のビデオコーデックがモジュール420〜434の処理段階を利用する場合もある。符号化されたビデオ情報は、メモリ206、ハードディスクドライブ210、CD−ROM、ブルーレイ(商標)ディスク、または他のコンピュータ可読記憶媒体から読み取られても良い。また、符号化されたビデオ情報は、通信ネットワーク220に接続されたサーバまたは無線周波受信機などの外部ソースから受信されても良い。
図4に見られるように、符号化ビットストリーム312などの受信されたビデオデータが、ビデオデコーダ134に入力される。符号化ビットストリーム312は、メモリ206、ハードディスクドライブ210、CD−ROM、ブルーレイ(商標)ディスク、または他のコンピュータ可読記憶媒体から読み取られても良い。または、符号化ビットストリーム312は、通信ネットワーク220に接続されたサーバまたは無線周波受信機などの外部ソースから受信されても良い。符号化ビットストリーム312は、復号されるべき取り込まれたフレームデータを表す符号化されたシンタックス要素を含む。
符号化ビットストリーム312は、エントロピーデコーダモジュール420に入力され、エントロピーデコーダモジュール420は、符号化ビットストリーム312からシンタックス要素を抽出し、シンタックス要素の値をビデオデコーダ134内の他のブロックに渡す。エントロピーデコーダモジュール420は、コンテキスト適応型バイナリ算術コーディング(CABAC)アルゴリズムを適用して、符号化ビットストリーム312からのシンタックス要素を復号する。復号されたシンタックス要素は、ビデオデコーダ134内でパラメータを再構成するために使用される。パラメータは、ゼロ以上の残差データアレイ450、動きベクトル452、予測モード454、および分割変換フラグ468を含む。残差データアレイ450は逆スケーリングモジュール421に渡され、動きベクトル452は動き補償モジュール434に渡され、予測モード454はフレーム内予測モジュール426およびマルチプレクサ428に渡される。逆スケーリングモジュール421は、残差データに対して逆スケーリングを実行して、変換係数の形態で再構成されたデータ455を作成する。逆スケーリングモジュール421は、再構成されたデータ455を逆変換モジュール422に出力する。逆変換モジュール422は、「逆変換」を適用して再構成されたデータ455(すなわち、変換係数)を、周波数領域表現から空間領域表現に変換(または「復号」)し、マルチプレクサモジュール423を介して残差サンプルアレイ456を出力する。逆変換モジュール422は、逆変換モジュール328と同じ動作を実行する。逆変換モジュール422は、分割変換フラグ468によって指定された残差4分木に従って変換を実行するように構成される。逆変換モジュール422によって実行される変換は、開発中の高効率ビデオコーディング(HEVC)規格に準拠する、符号化ビットストリーム312を復号するために必要な変換サイズの所定のセットから選択される。
動き補償モジュール434は、メモリ206内に構成されたフレームバッファブロック432からの参照フレームデータ460と組み合わせて、エントロピーデコーダモジュール420からの動きベクトル452を使用して、出力復号フレームデータの予測である、予測ユニット(PU)のためのインター予測された予測ユニット(PU)462を生成する。現在の予測ユニットがイントラ予測を使用してコード化されたことを、予測モード454が示すとき、フレーム内予測モジュール426は、予測ユニット(PU)に空間的に隣接するデータサンプルと、同様に予測モード454によって供給された予測方向とを使用して、予測ユニット(PU)のためのイントラ予測された予測ユニット(PU)464を生成する。空間的に隣接するデータサンプルは、加算モジュール424から出力された総和458から取得される。マルチプレクサモジュール428は、現在の予測モード454に応じて、予測ユニット(PU)466のための、イントラ予測された予測ユニット(PU)464またはインター予測された予測ユニット(PU)462を選択する。マルチプレクサモジュール428からの出力である予測ユニット(PU)466は、加算モジュール424により、逆スケーリングおよび変換モジュール422からの残差サンプルアレイ456に加算されて、総和458を生成する。次いで、総和458は、デブロッキングフィルタモジュール430およびフレーム内予測モジュール426の各々に入力される。デブロッキングフィルタモジュール430は、変換ユニット(TU)境界などのデータブロック境界に沿ってフィルタリングを実行して、可視アーテファクトを平滑化する。デブロッキングフィルタモジュール430の出力は、メモリ206内に構成されたフレームバッファモジュール432に書き込まれる。フレームバッファモジュール432は、将来の参照用の1つ以上の復号フレームを保持するために十分なストレージを提供する。復号フレーム412は、フレームバッファモジュール432から、ディスプレイデバイス136などのディスプレイデバイスにも出力される(たとえば、ディスプレイデバイス214の形態)。
図5Aは、4:2:0のクロマフォーマットを使用して符号化されたフレーム部分500のサンプルグリッドを示す。図5Bは、4:2:2のクロマフォーマットを使用して符号化されたフレーム部分510を示す。クロマフォーマットは、ビデオエンコーダ114への構成パラメータとして指定され、ビデオエンコーダ114は、クロマフォーマットを指定する「chroma_format_idc」シンタックス要素を、符号化ビットストリーム312に符号化する。ビデオデコーダ134は、符号化ビットストリーム312からの「chroma_format_idc」シンタックス要素を復号して、使用されているクロマフォーマットを特定する。たとえば、4:2:0のクロマフォーマットが使用されているとき、chroma_format_idcの値は1であり、4:2:2のクロマフォーマットが使用されているとき、chroma_format_idcの値は2であり、4:4:4のクロマフォーマットが使用されているとき、chroma_format_idcの値は3である。図5Aおよび図5Bでは、ルーマサンプルロケーション501などのルーマサンプルロケーションは「X」のシンボルを使用して示され、クロマサンプルロケーション502などのクロマサンプルロケーションは「O」のシンボルを使用して示される。4:2:0のクロマフォーマットが適用されるとき、示されたポイントでフレーム部分500をサンプリングすることによって、カラーチャネルごとにサンプルグリッドが取得される。各ルーマサンプルロケーションXでルーマチャネル(「Y」)がサンプリングされ、各クロマサンプルロケーションOで両方のクロマチャネル(「U」および「V」)がサンプリングされる。図5Aに示されたように、クロマサンプルロケーションごとに、ルーマサンプルロケーションの2×2の配列が存在する。
4:2:2のクロマフォーマットが適用されるとき、フレーム部分510に示された、ルーマサンプルロケーションでルーマサンプルをサンプリングし、クロマサンプルロケーションでクロマサンプルをサンプリングすることによって、カラーチャネルごとにサンプルグリッドが取得される。フレーム部分500の場合と同じカラーチャネルに対するデータサンプルの割り振りが、フレーム部分510に対して行われる。フレーム部分500と対比して、2倍多いクロマサンプルロケーションがフレーム部分510に存在する。フレーム部分510では、クロマサンプルロケーションは、1つおきのルーマサンプルロケーションとコロケートされる。したがって、図5Bでは、クロマサンプルロケーションごとに、2×1のルーマサンプルロケーションの配列が存在する。
ルーマサンプル単位での変換ユニットの様々な許容可能な寸法が上述された。ルーマチャネルに適用される変換によってカバーされる領域は、したがって、変換ユニットの寸法と同じ寸法を有する。変換ユニットはクロマチャネルも符号化するので、各クロマチャネルに適用される変換は、使用されている特定のクロマフォーマットに従って適応された寸法を有する。たとえば、4:2:0のクロマフォーマットが使用されているとき、16×16の変換ユニット(TU)は、ルーマチャネル用の16×16の変換と、各クロマチャネル用の8×8の変換とを使用する。
「残差4分木(RQT)」は「ルートノード」で始まる階層を定義し、階層の各「リーフノード」で1つ以上の変換ユニット(TU)を含む領域をカバーする。非ルーフノードで、領域は、「4分木分割」として知られる分割で、4つの等しいサイズの「下位領域」に分割される。各変換ユニット(TU)は、一般に、ルーマサンプルグリッド上の変換ユニット(TU)を含む領域の寸法として記述される、関連するサイズ(または「変換サイズ」)を有するが、領域は、クロマサンプルグリッド上の寸法として記述される場合もある。サイズは、コーディングユニット(CU)のサイズおよび変換深度に依存する。ゼロの変換深度を有する変換ユニット(TU)は、対応するコーディングユニット(CU)のサイズに等しいサイズを有する。変換深度の増加毎に、所与の変換深度で残差4分木内に存在する変換ユニット(TU)の寸法(すなわち、面の幅と高さ)は半減する。フレームはルーマチャネルおよびクロマチャネルを含むので、コーディングユニット(CU)は、ルーマサンプルグリッドとクロマサンプルグリッドの両方上の領域を占め、したがって、各変換ユニット(TU)は、ルーマサンプルグリッド上のルーマサンプルとクロマサンプルグリッドのクロマサンプルの両方を記述する情報を含む。変換ユニット(TU)ごとの情報の性質は、ビデオエンコーダ114またはビデオデコーダ134の処理段階に依存する。変換モジュール320への入力、ならびに逆スケーリングおよび変換モジュール422の出力で、残差サンプルアレイ360および456は、それぞれ、空間領域内の変換ユニット(TU)ごとの情報を含む。残差サンプルアレイ360および456は、ルーマチャネルとクロマチャネルとの間の処理における差異に起因して、「クロマ残差サンプルアレイ」および「ルーマ残差サンプルアレイ」にさらに分割される場合がある。スケーリングおよび量子化モジュール322の出力、ならびに逆スケーリングおよび変換モジュール422の入力で、残差データアレイ364および450は、それぞれ、周波数領域内の変換ユニット(TU)ごとの情報を含む。残差データアレイ364および450は、ルーマチャネルとクロマチャネルとの間の処理における差異に起因して、「クロマ残差データアレイ」および「ルーマ残差データアレイ」にさらに分割される場合がある。
図6は、複数のコーディングユニット(CU)、予測ユニット(PU)、および変換ユニット(TU)へのコーディングツリーブロック(CTB)602の再分割を示す図である。4分木階層は、コーディングツリーブロック(CTB)602などのコーディングツリーブロック(CTB)の、1つ以上のコーディングユニット(CU)への分割を記述する。4分木階層は、符号化ビットストリーム312内に存在する1つ以上の「分割コーディングユニットフラグ」(または「split_cu_flag」シンタックス要素)によって定義される。
図6では、コーディングツリーブロック(CTB)602は、4つの等しいサイズの正方形領域に分割され、それらの各々はこれ以上再分割されない。その結果、コーディングツリーブロック(CTB)602は、コーディングユニット(CU)604などの4つのコーディングユニット(CU)を含む。各コーディングユニット(CU)は、1つ以上の予測ユニット(PU)と、1つ以上の変換ユニット(TU)とを含む。
1つ以上の予測ユニット(PU)へのコーディングユニット(CU)の分解は、「区分化」と呼ばれ、一般に、符号化ビットストリーム312内に存在する「パーティションモード」(または「part_mode」シンタックス要素)によって指定される。パーティションモードは、単一の予測ユニット(PU)がコーディングユニット(CU)全体を占めるか、または複数の重複しない予測ユニット(PU)がコーディングユニット(CU)全体を占めるかを指定することができる。たとえば、図6に見られるように、コーディングユニット(CU)は、コーディングユニット(CU)604の面積を予測ユニット(PU)608などの4つの正方形予測ユニット(PU)に分割する区分化606を含む。
各インター予測された予測ユニット(PU)は動きベクトルを有し、各イントラ予測された予測ユニット(PU)は方向を有する。従って、異なる動きベクトル、方向、または異なる動きベクトルと方向の組合せに起因して、隣接する予測ユニット(PU)間の境界で、視覚的不連続性の可能性がある。所与の区分化の場合、1つ以上の生じた予測ユニット(PU)は、すべてイントラ予測されるか、すべてインター予測されるかのいずれかであるが、イントラ予測とインター予測の組合せではない。
1つ以上の変換ユニット(TU)へのコーディングユニット(CU)の分解は、「残差4分木」(RQT)と呼ばれる4分木分解である。残差4分木(RQT)は、一般に、符号化ビットストリーム312内に存在する1つ以上の「分割変換フラグ」(または「split_transform_flag」シンタックス要素)によって指定される。たとえば、コーディングユニット(CU)604は、コーディングユニット(CU)604の面積を4つの等しいサイズの領域に分割する残差4分木(RQT)610を含む。4つの等しいサイズの領域の各々は、これ以上再分割されず、変換ユニット(TU)612などの4つの変換ユニット(TU)になる。各変換ユニット(TU)は、ルーマチャネル用の変換および各クロマチャネル用の変換を含む。ビデオエンコーダ114およびビデオデコーダ134が4:2:0のクロマフォーマット向けに構成されているとき、ルーマチャネルおよび各クロマチャネルについての変換の境界(または「エッジ」)は、変換ユニット(TU)の境界に位置合わせされる。対照的に、ビデオエンコーダ114およびビデオデコーダ134が4:2:2のクロマフォーマット向けに構成され、正方形変換が各クロマチャネルに使用されるとき、各クロマチャネルについてさらなる変換の境界が存在する。変換の境界で不連続性が見える可能性がある。不連続性は、フレームデータ310と比較して復号フレーム412の知覚品質を低下させる。スケーリングおよび量子化ブロック322、ならびに逆スケーリングモジュール421によって適用される量子化パラメータは、変換ユニット(TU)間で変化する可能性がある。従って、空間的に隣接する変換は、異なる量子化パラメータが適用される可能性がある。一般に、隣接する変換に適用されるより大きい量子化パラメータおよび量子化パラメータ内の差異により、増大する変換ブロックのエッジアーテファクトに起因して、視覚的品質がより低くなる。

開発中の高効率ビデオコーディング(HEVC)規格は、35個のイントラ予測モードを定義する。35個のイントラ予測モードのうち、1つのイントラ予測モードは「DC」モードとして知られ、1つは「平面」モード、33個は指向性モードとして知られる。
図7は、すべての指向性(または「角度」)イントラ予測モードを概略的に示す。イントラ予測方向704などの33個の考えられるイントラ予測方向の各々が、矢印を使用して図7に示される。イントラ予測方向の各々はまた、イントラ予測方向704に対応する、図7で702として参照されるイントラ予測モード2などのイントラ予測モードとともに列挙される。指向性イントラ予測モードは、イントラ予測モード2〜34を割り当てられる。イントラ予測モード0および1は、DCモードおよび平面モードのために確保される。図7の矢印はすべて中心点から放射するイントラ予測方向を示すが、イントラ予測の実際の「方向」は正反対であり、図7に示された方向から180度回転している。イントラ予測の方向は、予測ユニット(PU)の(上と左に位置する)参照サンプルを取り、予測ユニット(PU)の各サンプルを占めるテクスチャを作成するために参照サンプルを使用する、前記イントラ予測方法1100に起因して180度回転している。図7に示された回転した方向は、単一の図で33個のイントラ予測方向の各々を明瞭に示す。イントラ予測モード2〜17は、主として水平方向であり、水平イントラ予測モード712として知られる。イントラ予測モード18〜34は、主として垂直方向であり、垂直イントラ予測モード710として知られる。水平イントラ予測モード712を垂直イントラ予測モード710から分別するしきい値は、存在すると言えるだろう。イントラ予測モード18は45度の角度に対応し、したがって主として水平または垂直ではないことに留意されたい。しかしながら、慣例により、高効率ビデオコーディング(HEVC)規格では、イントラ予測モード18は、主に垂直のカテゴリに入ると考えられる。イントラ予測モード18についての角度パラメータおよび逆角度用の対応する値が、垂直または水平のカテゴリ化にかかわらず同じ予測されたサンプルを生成するはずなので、イントラ予測モード18が主に垂直のカテゴリに入るはずと考えることは、予測されたサンプルに対する影響をもたない任意の選定である。各角度は、角度パラメータ(または「intraPredangle」)によって指定される。
角度パラメータは、−32から+32までの整数である。角度パラメータは、垂直イントラ予測モードの場合の水平軸、または水平イントラ予測モードの場合の垂直軸のいずれかに沿ったオフセットとして解釈されても良い。たとえば、角度パラメータ706は、30の値を有し、すべての水平イントラ予測モード712を含む垂直軸に沿って存在する。図7に示されるように、イントラ予測モード2は、32の角度パラメータを有する。2本の軸の間に対称性が存在し、各軸内で、正の角度パラメータと負の角度パラメータとの間に対称性が存在する。2つの対称性により、ハードウェアおよびソフトウェアの実装形態の簡略化が可能になる。これらの対称性の結果として、[0、2、5、9、13、17、21、26、32]の角度パラメータの縮小されたセットは、すべての水平イントラ予測モードおよび垂直イントラ予測モードにわたって使用されるすべての角度パラメータを合成するために使用されても良い。
ビデオエンコーダ114またはビデオデコーダ134においてイントラ予測されたサンプルを生成する方法1100を、図11を参照して下記に詳細に説明する。図8Aは、ビデオエンコーダ114内のフレーム内予測モジュール336、またはビデオデコーダ134内のフレーム内予測モジュール426によって実行されるような、例示的なイントラ予測方向についてのイントラ予測方法1100を概略的に示す。イントラ予測方法1100は、予測されたサンプルを有する予測ユニット(PU)802などの予測ユニット(PU)を埋めるために使用され、下記に詳細に述べる。予測されたサンプルは、参照サンプルを使用して生成される。図8Aでは、参照サンプルは、「上」参照サンプル804、「左」参照サンプル806、および「左上」参照サンプル808(総称して、「参照サンプル」)を含む。左上参照サンプル808は、一般に、上参照サンプル804と左参照サンプル806の両方に含まれる。上参照サンプル804、左参照サンプル806、および左上参照サンプル808は、一般に、ビデオエンコーダ114内の総和370、およびビデオデコーダ134内の総和458から取得される。総和370および総和458は、一般に、フレームの以前に復号されたサンプルを出力する。上参照サンプル804、左参照サンプル806、および左上参照サンプル808は、一般に、「隣接サンプル」で埋められる。隣接サンプルは、総和370または総和458から取得され、図8Aに示された参照サンプルの位置決めに従って、予測ユニット(PU)802に対して空間的に位置する。フレーム内の予測ユニット(PU)802の位置およびフレーム内の以前に復号された予測ユニットに応じて、隣接サンプルのうちのすべてが利用可能であるとは限らない場合がある。利用可能ではない隣接サンプルの場合、参照サンプル内の対応するサンプルは、代わりにデフォルトサンプル値で埋められる場合がある。デフォルトサンプル値は、利用可能な他の隣接サンプルから決定されるか、または各々が定数値でも良い。
指向性イントラ予測モードは、予測されたサンプルがテクスチャであり、特定の方向を有し、参照サンプル804などの参照サンプルから決定されるという特性を有する。指向性イントラ予測モードが選択されたとき、参照サンプルバッファからのサンプルは、イントラ予測の方向内の予測ユニット(PU)にコピーされる。たとえば、イントラ予測方向810は、右上の方向を有する、予測ユニット(PU)802用に生成されているテクスチャをもたらす。テクスチャは、イントラ予測の方向内の予測ユニット(PU)802にわたって、参照サンプル812などの参照サンプル内の各参照サンプルをコピーすることによって生成され、対応する参照サンプルに等しい値を割り当てられている予測されたサンプル(たとえば、予測されたサンプル814)をもたらす。明確にするために、図8Aは、少ない参照サンプルと予測されたサンプルとの間の関係を示すだけだが、予測ユニット(PU)内のすべての予測されたサンプルが生成される。33個の指向性イントラ予測モードをサポートする細粒度に起因して、滑らかなテクスチャを生成するために、予測ユニット内のサンプル値の補間が必要である。滑らかなテクスチャにより、対応する変換ユニット(TU)に必要とされるより小さい残差がもたらされ、したがって、より大きいコーディング効率がもたらされる。イントラ予測プロセスは、ビデオエンコーダ114とビデオデコーダ134の両方によって実行される。ビデオエンコーダ114は、イントラ予測モードのセットから予測ユニット(PU)用の1つのイントラ予測モードを選択し、選択されたイントラ予測モードを符号化ビットストリーム312の中に符号化する。最も高いコーディング効率を達成するために、ビデオエンコーダ114によってすべての考えられるイントラ予測モードを探索したり、またはコーディング効率を犠牲にして、時間量を削減して選択を行うために、考えられるイントラ予測モードのサブセットを探索しても良い。ビデオエンコーダ114は、エントロピーエンコーダ324を使用して、符号化ビットストリーム312内で選択されたイントラ予測モードを符号化する。ビデオデコーダ134は、エントロピーデコーダ420を使用して、符号化ビットストリーム312からの選択されたイントラ予測モードを決定する。
イントラ予測モード26〜34の場合、上参照サンプル(たとえば、804)のみが必要である。イントラ予測モード2〜10の場合、左参照サンプル(たとえば、806)のみが必要である。イントラ予測モード11〜25の場合、上参照サンプル(たとえば、804)と左参照サンプル(たとえば、806)の両方が必要である。イントラ予測モード11〜25の場合、「逆角度」または「invAngle」という名称のさらなるパラメータが定義される。主として垂直イントラ予測モードの場合、逆角度は左参照サンプルの占有数を制御し、主として水平イントラ予測モードの場合、逆角度は上参照サンプル(たとえば、804)の占有数を制御する。逆角度が定義されたとき、逆角度の値は、それぞれイントラ予測モード11〜25の場合、[−4096、−1638、−910、−630、−482、−390、−315、−256、−315、−390、−482、−630、−910、−1638、−4096]のうちの1つである。イントラ予測モード18での対称性は、逆角度の値のリストから認識できる。実装形態は、対称性を使用して複雑さを低減することができる。複雑さをそのように低減すると、コーディング効率における損失が無視できるか、またはない状態がもたらされる場合、複雑さを低減することが望ましい。さらに、逆角度の範囲は−256から−4096まで変化するが、8つの離散値のみが定義される。逆角度は、個々の隣接サンプルへのアクセスの間隔を変更することによって、隣接サンプルを有する参照サンプルバッファの占有数を制御するために使用される。各隣接サンプルにアクセスするためのオフセットを決定するとき、8ビットの右シフトが逆角度に適用される。これに起因して、−256の逆角度の値により、参照サンプルが近傍の隣接サンプルで埋められる結果になる。−4096の逆角度の値により、参照サンプルが15個おきの隣接サンプルで埋められる結果になる。
主として垂直イントラ予測モードの場合、左参照サンプルが上参照サンプルの拡張であるかのように左参照サンプルが埋められ、左参照サンプルは、イントラ予測の反対方向(すなわち、図8に示された方向)内の上参照サンプルの拡張上に投影される。主として水平イントラ予測モードの場合、上参照サンプルが左参照サンプルの拡張であるかのように上参照サンプルが埋められ、上参照サンプルは、イントラ予測の反対方向(すなわち、図8Aに示された方向)内の左参照サンプルの拡張上に投影される。
図8Bは、逆角度が上参照サンプルを埋めるために使用される場合の、例示的なイントラ予測方向822についてのイントラ予測方法1100を概略的に示す。図8Bの例では、イントラ予測方向822は、主として水平イントラ予測方向であるが、右下の方向(たとえば、図7のイントラ予測モード14)を有する。上隣接サンプル816などの上隣接サンプル820は、逆角度に従って、上参照サンプル804(たとえば、上参照サンプル818)を埋めるために使用される。逆角度の値はイントラ予測モードに依存し、イントラ予測モード14の場合、逆角度の値は−630である。この逆角度の場合、1つおきまたは2つおきの上隣接サンプル820が上参照サンプル804に埋められる。
図9Aおよび図9Bは、4:2:2の色差フォーマットを使用して、ビデオデータ内のフレームのそれぞれ輝度サンプルグリッド900および色差サンプルグリッド910上のイントラ予測された予測ユニット(PU)901を概略的に示す。輝度サンプルグリッド900上で、予測ユニット(PU)901は8×8のサンプル領域を占め、図9Aの矢印によって表されたように、イントラ予測モードは18であり、−32の角度パラメータがもたらされる。輝度サンプルグリッド900上で、この角度パラメータにより、45度の有効角度がもたらされる。しかしながら、色差サンプルグリッド910上で、同じ角度パラメータにより、22.5度への有効角度の水平方向の拡張がもたらされる。水平方向の拡張は、色差サンプルグリッド910上の各色差サンプルの1×2のサイズに起因する。
ルーマサンプルグリッド900およびクロマサンプルグリッド910にまたがる所与の角度パラメータ用の有効角度間の不一致により、コーディング効率が低下する。ビデオデータがルーマチャネルとクロマチャネルにまたがって相関する特徴をしばしば含むので、コーディング効率が低下し、したがって、これはイントラ予測についての共通のシナリオである。
図10は、ビデオデコーダ134のフレーム内予測モジュール426の機能モジュールを示す概略ブロック図である。ビデオエンコーダ114のフレーム内予測モジュール336は、ビデオデコーダ134のフレーム内予測モジュール426と同様に動作し、したがって、図10の機能モジュールの説明は、フレーム内予測モジュール336にも適用可能である。図10の機能モジュールは、コンピュータシステム200内の専用ハードウェアにより、ハードディスクドライブ205に常駐し、プロセッサ205によってその実行が制御されるソフトウェアアプリケーションプログラム233の1つ以上のソフトウェアコードモジュールなどの、コンピュータシステム200内のソフトウェア実行ファイルにより、または、コンピュータシステム200内の専用ハードウェアとソフトウェア実行ファイルの組合せによって実装されても良い。
総和458は加算モジュール424から受信され、隣接ブロックからの残差と予測の総和である。隣接サンプルバッファ1002は、左隣接バッファ1004内の左隣接サンプルおよび上隣接バッファ1006内の上隣接サンプルを保持するために十分なストレージを提供する。総和458は、デブロッキングフィルタモジュール430によって実行されるループ内フィルタリングの前に生成される。左隣接バッファ1004は左隣接サンプル1020を出力し、上隣接バッファ1006は上隣接サンプル1022を出力する。参照サンプル生成器モジュール1008は、角度パラメータ1024および逆角度1026に従って、一括して参照サンプル1028である左参照サンプル(たとえば、806)および上参照サンプル(たとえば、804)を生成する。参照サンプル生成器モジュール1008は、隣接サンプルバッファ1002から隣接サンプルをコピーすることによって、参照サンプルを生成することができる。コピー動作は、図8Aはおよび図8Bの説明に従って動作することができる。参照サンプルブロック生成器1008は、主として垂直イントラ予測モード(すなわち、predModeIntraが18以上である)と、主として水平イントラ予測モード(すなわち、predModeIntraが18未満である)との間を区別する。値18は、主として水平イントラ予測モードと主として垂直イントラ予測モードとの間のしきい値を定義する。DCモードおよび平面モードは、方向を有するとは考えられないので、別個に扱われる。サンプルブロック生成器1010は、参照サンプル1028、角度パラメータ1024、および予測モード454を使用して、イントラ予測されたサンプルのアレイの形態で、イントラ予測された予測ユニット(PU)464を生成する。参照サンプルブロック生成器1008と同様に、サンプルブロック生成器1010は、(予測モード454によって提供された)イントラ予測モードを18のしきい値と比較して、主として垂直イントラ予測モード(すなわち、predModeIntraが18以上である)と、主として水平イントラ予測モード(すなわち、predModeIntraが18未満である)との間を区別する。
角度パラメータおよび(定義された場合)逆角度の任意の所与の値の場合、主として垂直イントラ予測モードについての参照サンプルブロック生成器1008による左参照サンプルおよび上参照サンプルのアクセスは、主として水平イントラ予測モードについてのアクセスの転置である。この対称性は、これら2つのケース間のしきい値を使用して転置演算の動作を制御することによって、参照サンプル生成の複雑さを低減するために活用しても良い。
サンプルブロック生成器1010は、参照サンプル1028からサンプルをコピーすることによって動作して、イントラ予測された予測ユニット(PU)464を生成する。たとえば、18のイントラ予測モードにより、−32の角度パラメータがもたらされる。−32の角度パラメータにより、参照サンプル1028からの各参照サンプルが対角線の右下パターンで予測ユニット(PU)にコピーされる結果になる。予測ユニット(PU)内の各ロケーションは、このようにして、角度パラメータに従って参照サンプルのコピーで埋められて、テクスチャを含むサンプルのブロックを生成する。
角度パラメータの任意の所与の値の場合、主として垂直イントラ予測モードについてのサンプルブロック生成器1010の出力は、主として水平イントラ予測モードについてのサンプルブロック生成器1010の出力の(イントラ予測モード18によって定義された軸に沿った)転置である。この対称性は、これら2つのケース間のしきい値を使用して転置演算の動作を制御することによって、複雑さを低減するために活用できる。
サンプルブロック生成器1010の複雑さは、角度パラメータ用の値に存在する対称性を活用することによって低減できる。イントラ予測された予測ユニット(PU)464内の各サンプルは、参照サンプル1028および角度パラメータ1024にのみ依存するので、サンプルブロック生成器1010の並列実装が可能である。
並列実装により、(たとえば、クロックサイクル当たり生成されるサンプルの数によって測定される)「スループット」が、最大サポートフレームレートでのリアルタイム動作をサポートするために十分になるので、サンプルブロック生成器1010の並列実装は、より高い解像度のために有利である。
一般に、並列実装は、ロジックを重複させる欠点を有し、回路サイズを増大させる。並列化される動作を簡略化して、サンプルブロック生成器1010の実装に並列化を加えることの増分コストを低減することは有益である。
サンプルブロック生成器1010の実装に並列化を加えることの増分コストを低減する構成が、図11〜図13を参照して下記に説明する。制御ロジック1012は、予測モード454を使用して角度パラメータ1024および逆角度1026を生成し、図11〜図13を参照して説明する。
図11は、クロマサンプルアレイ用の4:2:2のクロマフォーマット向けに構成されているビデオエンコーダ114またはビデオデコーダ134において、イントラ予測されたサンプルを生成する方法1100を示す概略ブロック図である。方法1100は、符号化ビットストリーム312などのビデオビットストリームのクロマチャネル用のイントラ予測されたサンプルを生成するために使用されても良い。方法1100は、イントラ予測された予測ユニット(PU)用のサンプルのアレイを生成し、図10および図11を参照して説明する。方法1100は、たとえば、ハードウェアまたはソフトウェアとして実装される可能性があるビデオエンコーダ114またはビデオデコーダ134の一部として実装されるであろう。方法1100は、方法1100がハードディスクドライブ210とともに常駐するソフトウェアアプリケーションプログラム233の1つ以上のコードモジュールとして実装され、プロセッサ205によってその実行が制御される例として説明する。
方法1100は、イントラ予測モードを選択するためにプロセッサ205が使用される、ステップ決定ステップ1102で始まる。選択ステップ1102の動作は、下記に記載されるように、ビデオエンコーダ114とビデオデコーダ134との間で異なる。
ステップ1104〜1126は、ビデオエンコーダ114とビデオデコーダ134との間で同じ動作を有する。図11に示されたように、ステップ1130は、イントラ予測モードから角度パラメータおよび逆角度を決定するために使用される集合ステップ1104〜1122を表す。ステップ1130のステップ1106〜1122では、詳細には、4:2:2のクロマフォーマットが使用されているときのクロマチャネル処理に起因して、イントラ予測角度を調整する。ステップ1130のステップ1106〜1122では、角度パラメータ1024、および水平イントラ予測モードと垂直イントラ予測モードとの間のしきい値(または「変化しきい値」)を調整する。調整により、クロマサンプルグリッド上のイントラ予測がルーマサンプルグリッド上のイントラ予測と一貫して動作することが可能になる。(「predModeIntra」によって列挙される)水平イントラ予測モードと垂直イントラ予測モードとの間の変化しきい値は、図7に示されたように主として水平イントラ予測モードと主として垂直イントラ予測モードとの間の境界を示す。変化しきい値は、ルーマサンプルグリッドについて、(かつ4:2:2以外のクロマフォーマットが使用されているときのクロマチャネルについて)18の値を有する。4:2:2のクロマフォーマットが使用されているときのクロマチャネルの場合、変化しきい値は15の値を有する。ステップ1130のステップ1106〜1122は、調整された角度が所定の値を超える場合、変化しきい値を修正するために構成される。修正された変化しきい値は、修正されたイントラ予測角度を、複数の水平イントラ予測モードのうちの1つから垂直イントラ予測モードに変換するために構成されている。
ビデオエンコーダ114では、ステップ1102で、どのイントラ予測モードが予測ユニット(PU)に使用されるべきかを選択するために、プロセッサ205が使用される。ステップ1102で選択されたイントラ予測モードは、複数の水平イントラ予測モードのうちの1つであろう。一般に、ステップ1102で、プロセッサ205は、入力されたフレームデータ310上のコロケートされたブロックと比較して、最も低いひずみを与えるイントラ予測モードを選択する。選択されたイントラ予測モードは、エントロピーエンコーダ324によって符号化ビットストリーム312内で符号化され、メモリ206および/またはHDD210に記憶されるであろう。ビデオデコーダ134では、エントロピーデコーダ420を使用して符号化ビットストリーム312からのシンタックス要素を復号することによって、イントラ予測モードがステップ1102で決定される。
決定ステップ1104で、クロマチャネル用のイントラ予測モードについてイントラ予測の角度パラメータおよび逆角度によって表されるイントラ予測角度を決定するために、プロセッサ205が使用される。角度パラメータは図8に従って決定される。決定された角度パラメータおよび逆角度は、メモリ206および/またはHDD210に記憶されても良い。
次いで、クロマ4:2:2テストステップ1105で、生成されるべき予測されたサンプルのブロックがクロマチャネル用であり、クロマチャネルが4:2:2のクロマフォーマットを使用しているかどうかを判定するために、プロセッサ205が使用される。そうである場合、制御はテストステップ1106に移る。そうでない場合、制御は参照サンプル生成ステップ1124に移る。
次いで、テストステップ1106で、ステップ1102で選択されたイントラ予測モードの主な方向が垂直か水平かを判定するために、プロセッサ205が使用される。テストステップ1106は、イントラ予測モードpredModeIntraを18のしきい値と比較し、predModeIntraがしきい値以上である場合、主な方向は垂直であり、そうでない場合、主な方向は水平である。
イントラ予測モードの主な方向が垂直である場合、制御は角度半減ステップ1108に移る。イントラ予測モードの主な方向が水平である場合、制御は角度倍増ステップ1112に移る。以下のステップ1108、1110、1112、および1114において、方法1100は、4:2:2のクロマフォーマットに起因してイントラ予測角度を調整するために使用される。イントラ予測角度は、選択されたイントラ予測モードの主な方向に応じて調整される。主として垂直イントラ予測モードの場合、ステップ1104で決定された角度パラメータは、クロムサンプルグリッドを補償するために低減される。角度半減ステップ1108で、ステップ1104で決定された角度パラメータを(たとえば、1ビットだけ右シフトを実行することによって)半減することによって、イントラ予測角度を半減するために、プロセッサ205が使用される。加えて、(逆角度が定義される)イントラ予測モード18〜25の場合、ステップ1108は逆角度を倍増する。ステップ1108により、ルーマサンプルグリッド上で実現される角度と最も近く一致する新しい角度がもたらされる。たとえば、ステップ1108は、角度パラメータを[0、2、5、9、13、17、21、26、32]から[0、1、2、4、6、8、10、13、16]にマッピングすることができ、逆角度を[−256、−315、−390、−482、−630、−910、−1638、−4096]から[−512、−630、−780、−964、−1260、−1820、−3276、−8192]にマッピングすることができる。または、常に角度パラメータは下向きに、逆角度パラメータは上向きに量子化されてもよく、その逆も同様である。
角度半減ステップ1108からもたらされた角度パラメータを、下記の参照サンプル生成ステップ1124およびイントラ予測サンプル生成ステップ1126に適用することの1つの欠点は、角度パラメータおよび逆角度用のさらなる可能値が今や存在することである。さらなる可能値により、ステップ1124およびステップ1126における複雑さが増大する結果になる。図10のサンプルブロック生成器1010を参照して述べたような、ステップ1126用の並列実装を提供する構成は、したがって、さらなる可能値をサポートするために複雑さを増大したはずである。
方法1100は角度量子化ステップ1110で引き続き、ステップ1108で決定された半減角度パラメータを角度パラメータ用の最も近い既存の値に量子化するために、プロセッサ205が使用される。同様にステップ1110で、逆角度を逆角度用の最も近い既存の値に量子化するために、プロセッサ205が使用される。
イントラ予測モード25の場合、角度パラメータは−2から−1に調整され、逆角度はステップ1110で−4096から−8192に倍増されている。次いで、ステップ1112は、角度パラメータを−1から0に量子化しても良い。そのような場合、イントラ予測モード25がイントラ予測モード26(純粋な垂直イントラ予測)と同一になるので、逆角度はイントラ予測モード25についてもはや定義されない。イントラ予測モード26は、図8Bを参照して記載された逆角度を使用して参照サンプルを生成するための機構を必要としない。
一構成では、角度半減ステップ1108および角度量子化ステップ1110は、複雑さを低減するための単一の表参照動作に組み合わされても良い。たとえば、組み合わされたステップ1108と1110は、角度パラメータを[0、2、5、9、13、17、21、26、32]から[0、0、2、5、5、9、9、13、17]にマッピングすることができ、逆角度を[−256、−315、−390、−482、−630、−910、−1638、−4096]から[−482、−630、−910、−910、−1638、−1638、−4096、N/A]にマッピングすることができる。
角度パラメータの半減中の丸めの差異に起因して、他の構成が異なるマッピングを生成しても良い。角度パラメータの半減中の丸めの差異に起因して異なるマッピングを生成する構成では、量子化から異なる出力が生成されるが、角度パラメータおよび逆角度用に既存の値のみを使用する特性は保持される。
主として水平イントラ予測モードの場合、角度パラメータは、クロムサンプルグリッドを補償するために増加される。角度倍増ステップ1112で、ステップ1104で決定された角度パラメータを(たとえば、1ビットだけ左シフトを実行することによって)倍増することによって、イントラ予測角度を倍増するために、プロセッサ205が使用される。ステップ1112により、ルーマサンプルグリッド上で実現された角度と厳密に一致する新しい角度がもたらされる。さらにまた、角度倍増ステップ1112でからの角度パラメータを、参照サンプル生成ステップ1124およびイントラ予測サンプル生成ステップ1126に適用することの1つの欠点は、角度パラメータおよび逆角度用のさらなる可能値が今や存在することである。さらなる可能値により、ステップ1124およびステップ1126における複雑さが増大する結果になる。さらにまた、図10のサンプルブロック生成器1010を参照して前述したような、ステップ1126用の並列実装を提供する構成は、したがって、さらなる可能値をサポートするために複雑さを増大したはずである。次いで、角度量子化ステップ1110で、ステップ1112で決定された倍増角度パラメータを角度パラメータ用の最も近い既存の値に量子化するために、プロセッサ205が使用される。同様にステップ1114で、逆角度を逆角度用の最も近い既存の値に量子化するために、プロセッサ205が使用される。
角度パラメータを倍増することのさらなる欠点は、角度パラメータ用の許容可能範囲が+/−32であり、角度パラメータを倍増すると、許容可能範囲からはずれる値がもたらされることである。許容可能範囲は、左参照サンプルの範囲を決定する。
左参照サンプル(たとえば、806)のサイズを増大させると、イントラ予測用の予測ユニット(PU)から空間的にかなり離れるサンプルを使用する結果になる。使用されるサンプルは、予測ユニット(PU)のコンテンツと相関しないはずであり、したがってコーディング効率に寄与しない。その代わりに、角度パラメータおよび逆角度の調整が可能である。
方法1100は角度パラメータ最大値超過テストステップ1116に引き続き、そこで、(倍増後の)角度パラメータが32より大きいかどうかをテストするために、プロセッサ205が使用される。または、ステップ1116で、プロセッサ205は、角度パラメータが倍増前に16より大きいかどうかをテストすることができ、これは、(倍増後の)角度パラメータが32より大きいかどうかをテストすることと同じ結果をもたらす。
ステップ1116で最大角度パラメータを超えたケースは、主として水平イントラ予測モード2〜5に対応し、制御は角度調整ステップ1118に移る。角度調整ステップ1118で、角度パラメータを32に設定し、逆角度を−256に設定するために、プロセッサ205が使用される。ステップ1116の条件が満足されなかったケースでは、制御は角度パラメータ最小値未満テストステップ1120に移る。
角度倍増ステップ1112、角度量子化ステップ1114、ならびにステップ1116および1118は、複雑さを低減するための単一の表参照動作に組み合わされても良い。たとえば、組み合わされたステップ1112と1114は、角度パラメータを[0、2、5、9、13、17、21、26、32]から[0、5、9、17、26、32、32、32、32]にマッピングすることができ、逆角度を[−256、−315、−390、−482、−630、−910、−1638、−4096]から[−256、−256、−256、−256、−315、−482、−910、−1638]にマッピングすることができる。
逆角度の半減中の丸めの差異に起因して、他の構成により異なるマッピングを生成される場合がある。逆角度の半減中の丸めの差異に起因して異なるマッピングを生成する構成では、量子化から異なる出力が生成されるが、角度パラメータおよび逆角度用に既存の値のみを使用する特性は保持される。または、いくつかの構成では、常に角度パラメータは下向きに、逆角度パラメータは上向きに量子化されてもよく、その逆も同様である。
角度パラメータ最小値未満テストステップ1120で、(倍増後の)角度パラメータが−32より小さいかどうかをテストするために、プロセッサ205が使用される。または、ステップ1120は、角度パラメータが倍増前に−16より小さいかどうかをテストすることもでき、これは、(倍増後の)角度パラメータが−32より小さいかどうかをテストすることと同じ結果をもたらす。低しきい値超過条件が満足されたケースは、主として水平イントラ予測モード15〜17に対応する。低しきい値を超えた場合、方法1100は、角度および方向調整ステップ1122に進む。そうでない場合、方法1100はステップ1124に進む。
ステップ1122で、角度パラメータ、逆角度、およびしきい値を調整するために、プロセッサ205が使用される。ステップ1122はイントラ予測モード18〜20の角度パラメータおよび逆角度に対応するように、角度パラメータおよび逆角度を設定する。ステップ1122はまた、しきい値を18から15に調整する。イントラ予測モード18〜20は主として垂直であり、したがって、調整されたしきい値により、イントラ予測モード15、16、および17の方向が主として水平から主として垂直に変化する結果になる。
上述したように、変化しきい値は、主として水平イントラ予測モードと主として垂直イントラ予測モードとの間の境界を示す。変化しきい値は、ルーマサンプルグリッドについて、(かつ4:2:2以外のクロマフォーマットが使用されているときのクロマチャネルについて)18の値を有する。4:2:2のクロマフォーマットが使用されているときのクロマチャネルの場合、変化しきい値は15の値を有する。同様に上述したように、調整されたイントラ予測の角度パラメータが所定の値(たとえば、32)を超えた場合、変化しきい値は修正されても良い。
参照サンプル生成ステップ1124で、参照サンプル生成器1008は、プロセッサ205の実行下で、角度パラメータおよび(定義された場合)逆角度を使用して、参照サンプルを生成する。調整されたしきい値は、参照サンプルを生成するために使用されても良い。
次いで、イントラ予測サンプル生成ステップ1126で、サンプルブロック生成器1010は、プロセッサ205の実行下で、ステップ1124で決定された参照サンプルおよび角度パラメータ1024を使用して、イントラ予測されたサンプルのアレイの形態で予測ユニット(PU)464を生成するために使用される。イントラ予測されたサンプルは、ステップ1118および1122のいずれかで調整されたイントラ予測角度に従って、かつ上述された変化しきい値に従って、垂直イントラ予測モードを使用して、ステップ1126で生成される。
図12は、イントラ予測モード(predModeIntra)をイントラ予測角度(intraPredAngle)および逆角度(invAngle)に変換し、イントラ予測角度および逆角度を量子化するための表を示す。図12の表は、図11のステップ1130からの結果(すなわち、ステップ1124に入力される角度パラメータ値および逆角度値)と一致し、ステップ1120および1122は省略される。また、(ステップ1120および1122を除く)ステップ1130は、表12を使用してイントラ予測モード用の角度パラメータおよび逆角度を決定する表参照動作によって置き換えられても良い。図12と一致する構成についての例示的な「作業ドラフト」テキストが付録Aに含まれる。
図13は、イントラ予測モード(predModeIntra)をイントラ予測角度(intraPredAngle)および逆角度(invAngle)に変換し、イントラ予測角度および逆角度、ならびにブロックタイプによって決定された水平イントラ予測モードと垂直イントラ予測モードとの間の境界またはしきい値を量子化するための表を示す。図13の表は、図11のステップ1130からの結果(すなわち、ステップ1124に入力される角度パラメータ値および逆角度値)と一致する。ステップ1130は、表13の表を使用してイントラ予測モード用の角度パラメータおよび逆角度を決定する表参照動作によって置き換えられても良い。図13と一致する構成についての例示的な「作業ドラフト」テキストが付録Bに含まれる。
図14は、イントラ予測モード(predModeIntra)をイントラ予測角度(intraPredAngle)および逆角度(invAngle)に変換し、イントラ予測角度および逆角度を代替的に量子化するための表を示す。図14の表は、図11のステップ1130からの結果(すなわち、ステップ1124に入力される角度パラメータ値および逆角度値)と一致し、ステップ1120および1122は省略され、角度半減ステップ1108において代替的にマッピングする。代替的なマッピングは、(正/負の対称性が活用され、角度パラメータ用の正の値が列挙されるが、代替的なマッピングは負の角度パラメータを含むように明示的に拡張され得ると仮定すると、)[0、2、5、9、13、17、21、26、32]の角度パラメータを、[0、2、2、5、5、9、9、13、17]の角度パラメータにマッピングする。方法1100の一構成では、(ステップ1120および1122を除く)ステップ1130は、表14の表を使用してイントラ予測モード用の角度パラメータおよび逆角度を決定する表参照動作によって置き換えられても良い。図14と一致する構成についての例示的な「作業ドラフト」テキストが付録Cに含まれる。
図15は、イントラ予測モード(predModeIntra)をイントラ予測角度(intraPredAngle)および逆角度(invAngle)に変換し、イントラ予測角度および逆角度、ならびにブロックタイプによって決定された水平イントラ予測モードと垂直イントラ予測モードとの間の境界またはしきい値を代替的に量子化するための表を示す。図15の表は、図11のステップ1130からの結果(すなわち、ステップ1124に入力される角度パラメータ値および逆角度値)と一致し、角度半減ステップ1108において代替的にマッピングする。代替的なマッピングは、(正/負の対称性が活用され、角度パラメータ用の正の値が列挙されるが、代替的なマッピングは負の角度パラメータを含むように明示的に拡張され得ると仮定すると、)[0、2、5、9、13、17、21、26、32]の角度パラメータを、[0、2、2、5、5、9、9、13、17]の角度パラメータにマッピングする。方法1100の一構成では、ステップ1130は、表13の表を使用してイントラ予測モード用の角度パラメータおよび逆角度を決定する表参照動作によって置き換えられても良い。図15と一致する構成についての例示的な「作業ドラフト」テキストが付録Dに含まれる。
図14の表および図15の表のうちのいずれかと一致する構成は、逆角度が定義されるイントラ予測モードの範囲(すなわち、イントラ予測モード11〜25)が、4:2:2のクロマフォーマットを有するクロマチャネルのケースと、ルーマチャネルまたは4:2:2ではないクロマフォーマットのケースとの間で同じであるという利点を有する。図14の表および図15の表のうちのいずれかと一致する構成は、参照サンプル生成ステップ1124で逆角度が適用されるべきかどうかを判定する条件チェックを導入する必要性を回避する。
図12〜図15の表のうちのいずれかと一致する構成は、任意のイントラ予測モード用の角度パラメータおよび逆角度を決定するために単一の表参照のみが必要であり、さらなる中間の(または「調整された」)パラメータが必要ではないという利点を有する。
一構成では、イントラ予測モードは、角度パラメータおよび逆角度を決定する前に、調整されたイントラ予測モードに再マッピングされても良い。調整されたイントラ予測モードは、方法1100のステップ1104〜1126で使用される。イントラ予測モードを調整されたイントラ予測モードに再マッピングすると、再マッピングから生じる中間の(すなわち「調整された」)イントラ予測モードが導入される。イントラ予測モードを調整されたイントラ予測モードに再マッピングすると、イントラ予測モードを調整されたイントラ予測モードに再マッピングするさらなる表も導入され、(たとえば、ステップ1102の一部として)再マッピングを実行するためにさらなる表参照が必要になる。イントラ予測モードが調整されたイントラ予測モードに再マッピングされる構成では、角度パラメータおよび逆角度のさらなる調整は必要ではなく、したがって、ステップ1105〜1122は必要ではない。
本明細書に記載された構成により、イントラ予測される予測ユニット(PU)について高いコーディング効率を維持しながら、複雑さが低減された、4:2:2のクロマフォーマットをサポートするビデオエンコーダ114およびビデオデコーダ134の実装形態が可能になる。
上述の構成は、コンピュータ業界およびデータ処理業界に適用可能であり、特に、ビデオ信号などの信号の符号化および復号のためのデジタル信号処理に適用可能である。
上記は本開示のいくつかの実施形態を記載するにすぎず、本発明の範囲および趣旨から逸脱することなく、それらに対して修正および/または変更が可能であり、実施形態は限定的ではなく例示的である。
本明細書のコンテキストでは、「備えるcomprising)」という単語は、「必ずしも単独ではないが主に含む」または「有する」または「含む」を意味し、「のみから構成される」を意味しない。「備える(comprise)」および「備える(comprises)」などの「備える(comprising)」という単語の変形は、対応的に変化する意味を有する。
付録A
イントラ予測されたサンプルを生成する実装形態
8.4.4.2.6 INTRA_ANGULAR2〜INTRA_ANGULAR34の範囲のイントラ予測モードの仕様
このプロセスへの入力は、
−イントラ予測モードpredModeIntra
−隣接サンプルp[x][y]、x=−1、y=−1〜nTbS*2−1、およびx=0〜nTbS*2−1、y=−1
−変換ブロックサイズを指定する変数nTbS
−現在ブロックの色成分を指定する変数cIdx
である。
このプロセスの出力は、予測されたサンプルpredSamples[x][y]、x、y=0〜nTbS−1である。
図8−2は、合計33個のイントラ角度を示し、表8−4は、predModeIntraと角度パラメータintraPredAngleとの間のマッピングテーブルを指定する。

図8−2−イントラ予測角度定義(情報)
表8−4−intraPredAngleの仕様
表8−5はさらに、predModeIntraと逆角度パラメータinvAngleとの間のマッピングテーブルを指定する。
表8−5−invAngleの仕様
−ChromaArrayTypeが2に等しくないか又はcIdxが0に等しいときにpredModeIntraが18以上である場合、または、ChromaArrayTypeが2に等しく且つcIdxが0に等しくないときにpredModeIntraが15以上である場合に、以下の順序付けられたステップが適用される:
1.参照サンプルアレイref[x]が以下のように指定される:
−以下が適用される:
ref[x]=p[−1+x][−1]、x=0〜nTbS (8−47)
−intraPredAngleが0より小さい場合、主要な参照サンプルアレイが以下のように拡張される:
−(nTbS*intraPredAngle)>>5が−1より小さいとき、
ref[x]=p[−1][−1+((x*invAngle+128)>>8)]、x=−1〜(nTbS*intraPredAngle)>>5 (8−48)
−そうでない場合、
ref[x]=p[−1+x][−1]、x=nTbS+1〜2*nTbS (8−49)
2.予測サンプルの値predSamples[x][y]、x、y=0〜nTbS−1が、以下のように導出される:
a.インデックス変数iIdxおよび倍率iFactが以下のように導出される:
iIdx=((y+1)*intraPredAngle)>>5 (8−50)
iFact=((y+1)*intraPredAngle)&31 (8−51)
b.iFactの値に応じて、以下が適用される:
−iFactが0に等しくない場合、予測サンプルpredSamples[x][y]の値が以下のように導出される:
predSamples[x][y]=((32−iFact)*ref[x+iIdx+1]+iFact*ref[x+iIdx+2]+16)>>5 (8−52)
−そうでない場合、予測サンプルpredSamples[x][y]の値が以下のように導出される:
predSamples[x][y]=ref[x+iIdx+1] (8−53)
c.predModeIntraが26に等しく(垂直)、cIdxが0に等しく、nTbSが32より小さい場合、x=0、y=0〜nTbS−1で以下のフィルタリングが適用される:
predSamples[x][y]=Clip1(p[x][−1]+((p[−1][y]−p[−1][−1])>>1)) (8−54)
−そうでない場合、以下の順序付けられたステップが適用される:
1.参照サンプルアレイref[x]が以下のように指定される:
−以下が適用される:
ref[x]=p[−1][−1+x]、x=0〜nTbS (8−55)
−intraPredAngleが0より小さい場合、主要な参照サンプルアレイが以下のように拡張される:
−(nTbS*intraPredAngle)>>5が−1より小さいとき、
ref[x]=p[−1+((x*invAngle+128)>>8)][−1]、x=−1〜(nTbS*intraPredAngle)>>5 (8−56)
−そうでない場合、
ref[x]=p[−1][−1+x]、x=nTbS+1〜2*nTbS (8−57)
2.予測サンプルの値predSamples[x][y]、x、y=0〜nTbS−1が、以下のように導出される:
a.インデックス変数iIdxおよび倍率iFactが以下のように導出される:
iIdx=((x+1)*intraPredAngle)>>5 (8−58)
iFact=((x+1)*intraPredAngle)&31 (8−59)
b.iFactの値に応じて、以下が適用される:
−iFactが0に等しくない場合、予測サンプルpredSamples[x][y]の値が以下のように導出される:
predSamples[x][y]=((32−iFact)*ref[y+iIdx+1]+iFact*ref[y+iIdx+2]+16)>>5 (8−60)
−そうでない場合、予測サンプルpredSamples[x][y]の値が以下のように導出される:
predSamples[x][y]=ref[y+iIdx+1] (8−61)
c.predModeIntraが10に等しく(水平)、cIdxが0に等しく、nTbSが32より小さい場合、x=0〜nTbS−1、y=0で以下のフィルタリングが適用される:
predSamples[x][y]=Clip1(p[−1][y]+((p[x][−1]−p[−1][−1])>>1)) (8−62)
付録Aの終了
付録B
イントラ予測されたサンプルを生成する代替実装形態
8.4.4.2.6 INTRA_ANGULAR2〜INTRA_ANGULAR34の範囲のイントラ予測モードの仕様
このプロセスへの入力は、
−イントラ予測モードpredModeIntra
−隣接サンプルp[x][y]、x=−1、y=−1〜nTbS*2−1、およびx=0〜nTbS*2−1、y=−1
−変換ブロックサイズを指定する変数nTbS
−現在ブロックの色成分を指定する変数cIdx
である。
このプロセスの出力は、予測されたサンプルpredSamples[x][y]、x、y=0〜nTbS−1である。
図8−2は、合計33個のイントラ角度を示し、表8−4は、predModeIntraと角度パラメータintraPredAngleとの間のマッピングテーブルを指定する。
図8−2−イントラ予測角度定義(情報)
表8−4−intraPredAngleの仕様
表8−5はさらに、predModeIntraと逆角度パラメータinvAngleとの間のマッピングテーブルを指定する。
表8−5−invAngleの仕様
−ChromaArrayTypeが2に等しくないか、もしくはcIdxが0に等しいときにpredModeIntraが18以上である場合、または、ChromaArrayTypeが2に等しく且つcIdxが0に等しくないときに、predModeIntraが15以上である場合、以下の順序付けられたステップが適用される:
3.参照サンプルアレイref[x]が以下のように指定される:
−以下が適用される:
ref[x]=p[−1+x][−1]、x=0〜nTbS (8−47)
−intraPredAngleが0より小さい場合、主要な参照サンプルアレイが以下のように拡張される:
−(nTbS*intraPredAngle)>>5が−1より小さいとき、
ref[x]=p[−1][−1+((x*invAngle+128)>>8)]、x=−1〜(nTbS*intraPredAngle)>>5 (8−48)
−そうでない場合、
ref[x]=p[−1+x][−1]、x=nTbS+1〜2*nTbS (8−49)
4.予測サンプルの値predSamples[x][y]、x、y=0〜nTbS−1が、以下のように導出される:
a.インデックス変数iIdxおよび倍率iFactが以下のように導出される:
iIdx=((y+1)*intraPredAngle)>>5 (8−50)
iFact=((y+1)*intraPredAngle)&31 (8−51)
b.iFactの値に応じて、以下が適用される:
−iFactが0に等しくない場合、予測サンプルpredSamples[x][y]の値が以下のように導出される:
predSamples[x][y]=((32−iFact)*ref[x+iIdx+1]+iFact*ref[x+iIdx+2]+16)>>5 (8−52)
−そうでない場合、予測サンプルpredSamples[x][y]の値が以下のように導出される:
predSamples[x][y]=ref[x+iIdx+1] (8−53)
c.predModeIntraが26に等しく(垂直)、cIdxが0に等しく、nTbSが32より小さい場合、x=0、y=0〜nTbS−1で以下のフィルタリングが適用される:
predSamples[x][y]=Clip1(p[x][−1]+((p[−1][y]−p[−1][−1])>>1)) (8−54)
−そうでない場合、以下の順序付けられたステップが適用される:
3.参照サンプルアレイref[x]が以下のように指定される:
−以下が適用される:
ref[x]=p[−1][−1+x]、x=0〜nTbS (8−55)
−intraPredAngleが0より小さい場合、主要な参照サンプルアレイが以下のように拡張される:
−(nTbS*intraPredAngle)>>5が−1より小さいとき、
ref[x]=p[−1+((x*invAngle+128)>>8)][−1]、x=−1〜(nTbS*intraPredAngle)>>5 (8−56)
−そうでない場合、
ref[x]=p[−1][−1+x]、x=nTbS+1〜2*nTbS (8−57)
4.予測サンプルの値predSamples[x][y]、x、y=0〜nTbS−1が、以下のように導出される:
d.インデックス変数iIdxおよび倍率iFactが以下のように導出される:
iIdx=((x+1)*intraPredAngle)>>5 (8−58)
iFact=((x+1)*intraPredAngle)&31 (8−59)
e.iFactの値に応じて、以下が適用される:
−iFactが0に等しくない場合、予測サンプルpredSamples[x][y]の値が以下のように導出される:
predSamples[x][y]=((32−iFact)*ref[y+iIdx+1]+iFact*ref[y+iIdx+2]+16)>>5 (8−60)
−そうでない場合、予測サンプルpredSamples[x][y]の値が以下のように導出される:
predSamples[x][y]=ref[y+iIdx+1] (8−61)
f.predModeIntraが10に等しく(水平)、cIdxが0に等しく、nTbSが32より小さい場合、x=0〜nTbS−1、y=0で以下のフィルタリングが適用される:
predSamples[x][y]=Clip1(p[−1][y]+((p[x][−1]−p[−1][−1])>>1)) (8−62)
付録Bの終了
付録C
イントラ予測されたサンプルを生成する代替実装形態
8.4.4.2.6 INTRA_ANGULAR2〜INTRA_ANGULAR34の範囲のイントラ予測モードの仕様
このプロセスへの入力は、
−イントラ予測モードpredModeIntra
−隣接サンプルp[x][y]、x=−1、y=−1〜nTbS*2−1、およびx=0〜nTbS*2−1、y=−1
−変換ブロックサイズを指定する変数nTbS
−現在ブロックの色成分を指定する変数cIdx
である。
このプロセスの出力は、予測されたサンプルpredSamples[x][y]、x、y=0〜nTbS−1である。
図8−2は、合計33個のイントラ角度を示し、表8−4は、predModeIntraと角度パラメータintraPredAngleとの間のマッピングテーブルを指定する。
図8−2−イントラ予測角度定義(参考情報)
表8−4−intraPredAngleの仕様
表8−5はさらに、predModeIntraと逆角度パラメータinvAngleとの間のマッピングテーブルを指定する。
表8−5−invAngleの仕様
−ChromaArrayTypeが2に等しくないか又はcIdxが0に等しいときでpredModeIntraが18以上である場合、または、ChromaArrayTypeが2に等しく且つcIdxが0に等しくないときでpredModeIntraが15以上である場合、以下の順序付けられたステップが適用される:
5.参照サンプルアレイref[x]が以下のように指定される:
−以下が適用される:
ref[x]=p[−1+x][−1]、x=0〜nTbS (8−47)
−intraPredAngleが0より小さい場合、主要な参照サンプルアレイが以下のように拡張される:
−(nTbS*intraPredAngle)>>5が−1より小さいとき、
ref[x]=p[−1][−1+((x*invAngle+128)>>8)]、x=−1〜(nTbS*intraPredAngle)>>5 (8−48)
−そうでない場合、
ref[x]=p[−1+x][−1]、x=nTbS+1〜2*nTbS (8−49)
6.予測サンプルの値predSamples[x][y]、x、y=0〜nTbS−1、が以下のように導出される:
a.インデックス変数iIdxおよび倍率iFactが以下のように導出される:
iIdx=((y+1)*intraPredAngle)>>5 (8−50)
iFact=((y+1)*intraPredAngle)&31 (8−51)
b.iFactの値に応じて、以下が適用される:
−iFactが0に等しくない場合、予測サンプルpredSamples[x][y]の値が以下のように導出される:
predSamples[x][y]=((32−iFact)*ref[x+iIdx+1]+iFact*ref[x+iIdx+2]+16)>>5 (8−52)
−そうでない場合、予測サンプルpredSamples[x][y]の値が以下のように導出される:
predSamples[x][y]=ref[x+iIdx+1] (8−53)
c.predModeIntraが26に等しく(垂直)、cIdxが0に等しく、nTbSが32より小さい場合、x=0、y=0〜nTbS−1で以下のフィルタリングが適用される:
predSamples[x][y]=Clip1(p[x][−1]+((p[−1][y]−p[−1][−1])>>1)) (8−54)
−そうでない場合、以下の順序付けられたステップが適用される:
5.参照サンプルアレイref[x]が以下のように指定される:
−以下が適用される:
ref[x]=p[−1][−1+x]、x=0〜nTbS (8−55)
−intraPredAngleが0より小さい場合、主要な参照サンプルアレイが以下のように拡張される:
−(nTbS*intraPredAngle)>>5が−1より小さいとき、
ref[x]=p[−1+((x*invAngle+128)>>8)][−1]、x=−1〜(nTbS*intraPredAngle)>>5 (8−56)
−そうでない場合、
ref[x]=p[−1][−1+x]、x=nTbS+1〜2*nTbS (8−57)
6.予測サンプルの値predSamples[x][y]、x、y=0〜nTbS−1が以下のように導出される:
g.インデックス変数iIdxおよび倍率iFactが以下のように導出される:
iIdx=((x+1)*intraPredAngle)>>5 (8−58)
iFact=((x+1)*intraPredAngle)&31 (8−59)
h.iFactの値に応じて、以下が適用される:
−iFactが0に等しくない場合、予測サンプルpredSamples[x][y]の値が以下のように導出される:
predSamples[x][y]=((32−iFact)*ref[y+iIdx+1]+iFact*ref[y+iIdx+2]+16)>>5 (8−60)
−そうでない場合、予測サンプルpredSamples[x][y]の値が以下のように導出される:
predSamples[x][y]=ref[y+iIdx+1] (8−61)
i.predModeIntraが10に等しく(水平)、cIdxが0に等しく、nTbSが32より小さい場合、x=0〜nTbS−1、y=0で以下のフィルタリングが適用される:
predSamples[x][y]=Clip1(p[−1][y]+((p[x][−1]−p[−1][−1])>>1)) (8−62)
付録Cの終了
付録D
イントラ予測されたサンプルを生成する代替実装形態
8.4.4.2.6 INTRA_ANGULAR2〜INTRA_ANGULAR34の範囲のイントラ予測モードの仕様
このプロセスへの入力は、
−イントラ予測モードpredModeIntra
−隣接サンプルp[x][y]、x=−1、y=−1〜nTbS*2−1、およびx=0〜nTbS*2−1、y=−1
−変換ブロックサイズを指定する変数nTbS
−現在ブロックの色成分を指定する変数cIdx
である。
このプロセスの出力は、予測されたサンプルpredSamples[x][y]、x、y=0〜nTbS−1である。
図8−2は、合計33個のイントラ角度を示し、表8−4は、predModeIntraと角度パラメータintraPredAngleとの間のマッピングテーブルを指定する。
図8−2−イントラ予測角度定義(参考情報)
表8−4−intraPredAngleの仕様
表8−5はさらに、predModeIntraと逆角度パラメータinvAngleとの間のマッピングテーブルを指定する。
表8−5−invAngleの仕様
−ChromaArrayTypeが2に等しくないか又はcIdxが0に等しいときでpredModeIntraが18以上である場合、または、ChromaArrayTypeが2に等しく且つcIdxが0に等しくないときでpredModeIntraが15以上である場合、以下の順序付けられたステップが適用される:
7.参照サンプルアレイref[x]が以下のように指定される:
−以下が適用される:
ref[x]=p[−1+x][−1]、x=0〜nTbS (8−47)
−intraPredAngleが0より小さい場合、主要な参照サンプルアレイが以下のように拡張される:
−(nTbS*intraPredAngle)>>5が−1より小さいとき、
ref[x]=p[−1][−1+((x*invAngle+128)>>8)]、x=−1〜(nTbS*intraPredAngle)>>5 (8−48)
−そうでない場合、
ref[x]=p[−1+x][−1]、x=nTbS+1〜2*nTbS (8−49)
8.予測サンプル値predSamples[x][y]、x、y=0〜nTbS−1が以下のように導出される:
a.インデックス変数iIdxおよび倍率iFactが以下のように導出される:
iIdx=((y+1)*intraPredAngle)>>5 (8−50)
iFact=((y+1)*intraPredAngle)&31 (8−51)
b.iFactの値に応じて、以下が適用される:
−iFactが0に等しくない場合、予測サンプルpredSamples[x][y]の値が以下のように導出される:
predSamples[x][y]=((32−iFact)*ref[x+iIdx+1]+iFact*ref[x+iIdx+2]+16)>>5 (8−52)
−そうでない場合、予測サンプルpredSamples[x][y]の値が以下のように導出される:
predSamples[x][y]=ref[x+iIdx+1] (8−53)
c.predModeIntraが26に等しく(垂直)、cIdxが0に等しく、nTbSが32より小さい場合、x=0、y=0〜nTbS−1で以下のフィルタリングが適用される:
predSamples[x][y]=Clip1(p[x][−1]+((p[−1][y]−p[−1][−1])>>1)) (8−54)
−そうでない場合、以下の順序付けられたステップが適用される:
7.参照サンプルアレイref[x]が以下のように指定される:
−以下が適用される:
ref[x]=p[−1][−1+x]、x=0〜nTbS (8−55)
−intraPredAngleが0より小さい場合、主要な参照サンプルアレイが以下のように拡張される:
−(nTbS*intraPredAngle)>>5が−1より小さいとき、
ref[x]=p[−1+((x*invAngle+128)>>8)][−1]、x=−1〜(nTbS*intraPredAngle)>>5 (8−56)
−そうでない場合、
ref[x]=p[−1][−1+x]、x=nTbS+1〜2*nTbS (8−57)
8.予測サンプル値predSamples[x][y]、x、y=0〜nTbS−1が以下のように導出される:
j.インデックス変数iIdxおよび倍率iFactが以下のように導出される:
iIdx=((x+1)*intraPredAngle)>>5 (8−58)
iFact=((x+1)*intraPredAngle)&31 (8−59)
k.iFactの値に応じて、以下が適用される:
−iFactが0に等しくない場合、予測サンプルpredSamples[x][y]の値が以下のように導出される:
predSamples[x][y]=((32−iFact)*ref[y+iIdx+1]+iFact*ref[y+iIdx+2]+16)>>5 (8−60)
−そうでない場合、予測サンプルpredSamples[x][y]の値が以下のように導出される:
predSamples[x][y]=ref[y+iIdx+1] (8−61)
l.predModeIntraが10に等しく(水平)、cIdxが0に等しく、nTbSが32より小さい場合、x=0〜nTbS−1、y=0で以下のフィルタリングが適用される:
predSamples[x][y]=Clip1(p[−1][y]+((p[x][−1]−p[−1][−1])>>1)) (8−62)
付録Dの終了

Claims (10)

  1. 色差チャネルのためのイントラ予測処理を行って、画像データに基づくビットストリームを生成する符号化方法であって、
    生成するビットストリームのカラーフォーマットが4:2:2のカラーフォーマットであるか判定し、4:2:2のカラーフォーマットであった場合に、他のカラーフォーマットの場合とは異なる所定の方法を用いて、前記色差チャネルのためのイントラ予測処理における角度であるIntraPredAngleを、イントラ予測モードを示す値を用いて導出する導出工程と、
    前記導出工程によって導出された角度を用いて、前記色差チャネルのイントラ予測処理を行う予測工程と
    を有し、
    前記 カラーフォーマットが前記他のカラーフォーマットであった場合、前記イントラ予測モードを示す値と、前記導出工程において導出される前記IntraPredAngleとは下記のような関係となり、

    前記カラーフォーマットが前記4:2:2のカラーフォーマットであった場合、前記イントラ予測モードを示す値と、前記導出工程において導出される前記IntraPredAngleとは下記のような関係となり、

    前記イントラ予測処理における予測ユニットとして、対応するコーディングユニットと同じ大きさの予測ユニット、及び、対応するコーディングユニットを4つに分割した予測ユニットを使用可能である
    ことを特徴とする符号化方法。
  2. 前記4つに分割した予測ユニットは正方形である
    ことを特徴とする請求項1記載の符号化方法。
  3. 対応するコーディングユニットと同じ大きさの予測ユニットを使用するか、又は、対応するコーディングユニットを4つに分割した予測ユニットを使用するかを示すpart_modeを前記ビットストリームにおいて符号化する符号化工程
    を有することを特徴とする請求項1又は2に記載の符号化方法。
  4. 色差チャネルのためのイントラ予測処理を行って、ビットストリームから画像を復号する復号方法であって、
    前記ビットストリームのカラーフォーマットが4:2:2のカラーフォーマットであるか判定し、4:2:2のカラーフォーマットであった場合に、他のカラーフォーマットの場合とは異なる所定の方法を用いて、前記色差チャネルのためのイントラ予測処理における角度であるIntraPredAngleを、イントラ予測モードを示す値を用いて導出する導出工程と、
    前記導出工程によって導出された角度を用いて、前記色差チャネルのイントラ予測処理を行う予測工程と
    を有し、
    前記カラーフォーマットが前記他のカラーフォーマットであった場合、前記イントラ予測モードを示す値と、前記導出工程において導出される前記IntraPredAngleとは下記のような関係となり、

    前記カラーフォーマットが前記4:2:2のカラーフォーマットであった場合、前記イントラ予測モードを示す値と、前記導出工程において導出される前記IntraPredAngleとは下記のような関係となり、

    前記イントラ予測処理における予測ユニットとして、対応するコーディングユニットと同じ大きさの予測ユニット、及び、対応するコーディングユニットを4つに分割した予測ユニットを使用可能である
    ことを特徴とする復号方法。
  5. 前記4つに分割した予測ユニットは正方形である
    ことを特徴とする請求項記載の復号方法。
  6. 対応するコーディングユニットと同じ大きさの予測ユニットを使用するか、又は、対応するコーディングユニットを4つに分割した予測ユニットを使用するかを示すpart_modeを前記ビットストリームから復号する復号工程
    を有することを特徴とする請求項4又は5に記載の復号方法。
  7. 色差チャネルのためのイントラ予測処理を行って、画像データに基づくビットストリームを生成する符号化装置であって、
    生成するビットストリームのカラーフォーマットが4:2:2のカラーフォーマットであるか判定し、4:2:2のカラーフォーマットであった場合に、他のカラーフォーマットの場合とは異なる所定の方法を用いて、前記色差チャネルのためのイントラ予測処理における角度であるIntraPredAngleを、イントラ予測モードを示す値を用いて導出する導出手段と、
    前記導出手段によって導出された角度を用いて、前記色差チャネルのイントラ予測処理を行う予測手段と
    を有し、
    前記カラーフォーマットが前記他のカラーフォーマットであった場合、前記イントラ予測モードを示す値と、前記導出手段において導出される前記IntraPredAngleとは下記のような関係となり、

    前記カラーフォーマットが前記4:2:2のカラーフォーマットであった場合、前記イントラ予測モードを示す値と、前記導出手段において導出される前記IntraPredAngleとは下記のような関係となり、

    前記イントラ予測処理における予測ユニットとして、対応するコーディングユニットと同じ大きさの予測ユニット、及び、対応するコーディングユニットを4つに分割した予測ユニットを使用可能である
    ことを特徴とする符号化装置。
  8. 色差チャネルのためのイントラ予測処理を行って、ビットストリームから画像を復号する復号装置であって、
    前記ビットストリームのカラーフォーマットが4:2:2のカラーフォーマットであるか判定し、4:2:2のカラーフォーマットであった場合に、他のカラーフォーマットの場合とは異なる所定の方法を用いて、前記色差チャネルのためのイントラ予測処理における角度であるIntraPredAngleを、イントラ予測モードを示す値を用いて導出する導出手段と、
    前記導出手段によって導出された角度を用いて、前記色差チャネルのイントラ予測処理を行う予測手段と
    を有し、
    前記カラーフォーマットが前記他のカラーフォーマットであった場合、前記イントラ予測モードを示す値と、前記導出手段において導出される前記IntraPredAngleとは下記のような関係となり、

    前記カラーフォーマットが前記4:2:2のカラーフォーマットであった場合、前記イントラ予測モードを示す値と、前記導出手段において導出される前記IntraPredAngleとは下記のような関係となり、

    前記イントラ予測処理における予測ユニットとして、対応するコーディングユニットと同じ大きさの予測ユニット、及び、対応するコーディングユニットを4つに分割した予測ユニットを使用可能である
    ことを特徴とする復号装置。
  9. 請求項1〜3のいずれか1項に記載の符号化方法を、コンピュータに実行させることを特徴とするプログラム。
  10. 請求項4〜6のいずれか1項に記載の復号方法を、コンピュータに実行させることを特徴とするプログラム。
JP2018108460A 2013-04-05 2018-06-06 符号化方法、復号方法、符号化装置、復号装置、及びプログラム Active JP6563079B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
AU2013202653 2013-04-05
AU2013202653A AU2013202653A1 (en) 2013-04-05 2013-04-05 Method, apparatus and system for generating intra-predicted samples

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2016505654A Division JP6351706B2 (ja) 2013-04-05 2014-04-04 方法、符号化方法、復号方法、装置、及びプログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2019136397A Division JP2019213206A (ja) 2013-04-05 2019-07-24 符号化方法、復号方法、符号化装置、復号装置、及びプログラム

Publications (2)

Publication Number Publication Date
JP2018157587A JP2018157587A (ja) 2018-10-04
JP6563079B2 true JP6563079B2 (ja) 2019-08-21

Family

ID=51657333

Family Applications (3)

Application Number Title Priority Date Filing Date
JP2016505654A Active JP6351706B2 (ja) 2013-04-05 2014-04-04 方法、符号化方法、復号方法、装置、及びプログラム
JP2018108460A Active JP6563079B2 (ja) 2013-04-05 2018-06-06 符号化方法、復号方法、符号化装置、復号装置、及びプログラム
JP2019136397A Ceased JP2019213206A (ja) 2013-04-05 2019-07-24 符号化方法、復号方法、符号化装置、復号装置、及びプログラム

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2016505654A Active JP6351706B2 (ja) 2013-04-05 2014-04-04 方法、符号化方法、復号方法、装置、及びプログラム

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2019136397A Ceased JP2019213206A (ja) 2013-04-05 2019-07-24 符号化方法、復号方法、符号化装置、復号装置、及びプログラム

Country Status (7)

Country Link
US (1) US20160050422A1 (ja)
EP (1) EP2982108B1 (ja)
JP (3) JP6351706B2 (ja)
KR (1) KR20150135519A (ja)
CN (1) CN105264889B (ja)
AU (2) AU2013202653A1 (ja)
WO (1) WO2014161043A1 (ja)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10715833B2 (en) * 2014-05-28 2020-07-14 Apple Inc. Adaptive syntax grouping and compression in video data using a default value and an exception value
US9762919B2 (en) * 2014-08-28 2017-09-12 Apple Inc. Chroma cache architecture in block processing pipelines
JP6747430B2 (ja) * 2015-03-27 2020-08-26 ソニー株式会社 画像処理装置、画像処理方法及びプログラム
US11076153B2 (en) * 2015-07-31 2021-07-27 Stc.Unm System and methods for joint and adaptive control of rate, quality, and computational complexity for video coding and video delivery
WO2017155334A1 (ko) * 2016-03-11 2017-09-14 디지털인사이트 주식회사 비디오 코딩 방법 및 장치
CN105681812B (zh) * 2016-03-30 2019-11-19 腾讯科技(深圳)有限公司 Hevc帧内编码处理方法和装置
CN113438477A (zh) * 2016-04-06 2021-09-24 株式会社Kt 对视频进行编码、解码的方法及存储压缩视频数据的设备
WO2018066980A1 (ko) * 2016-10-04 2018-04-12 김기백 영상 데이터 부호화/복호화 방법 및 장치
JP6565885B2 (ja) * 2016-12-06 2019-08-28 株式会社Jvcケンウッド 画像符号化装置、画像符号化方法及び画像符号化プログラム、並びに画像復号化装置、画像復号化方法及び画像復号化プログラム
JP6680260B2 (ja) 2017-04-28 2020-04-15 株式会社Jvcケンウッド 画像符号化装置、画像符号化方法及び画像符号化プログラム、並びに画像復号化装置、画像復号化方法及び画像復号化プログラム
US10951908B2 (en) 2017-05-24 2021-03-16 Lg Electronics Inc. Method and device for decoding image according to intra prediction in image coding system
GB2567862A (en) * 2017-10-27 2019-05-01 Sony Corp Image data encoding and decoding
CN108337510A (zh) * 2017-12-22 2018-07-27 西安思丹德信息技术有限公司 一种基于h264标准的低延时编解码方法及图像数据传输方法
GB2571313B (en) * 2018-02-23 2022-09-21 Canon Kk New sample sets and new down-sampling schemes for linear component sample prediction
WO2019212230A1 (ko) * 2018-05-03 2019-11-07 엘지전자 주식회사 영상 코딩 시스템에서 블록 사이즈에 따른 변환을 사용하는 영상 디코딩 방법 및 그 장치
US10284844B1 (en) 2018-07-02 2019-05-07 Tencent America LLC Method and apparatus for video coding
US11128872B2 (en) * 2018-07-16 2021-09-21 Qualcomm Incorporated Position dependent intra prediction combination with wide angle intra prediction
JP7342118B2 (ja) * 2018-10-12 2023-09-11 ウィルス インスティテュート オブ スタンダーズ アンド テクノロジー インコーポレイティド 多重仮定予測を用いるビデオ信号処理方法及び装置
CN109982075B (zh) * 2019-03-21 2022-11-08 南京威翔科技有限公司 一种基于fpga的帧内预测通用角度方法
EP3888361B1 (en) 2019-03-24 2024-04-24 Huawei Technologies Co., Ltd. Method and apparatus for chroma intra prediction in video coding
WO2020216303A1 (en) 2019-04-23 2020-10-29 Beijing Bytedance Network Technology Co., Ltd. Selective use of secondary transform in coded video
US20220360774A1 (en) * 2019-06-24 2022-11-10 Sharp Kabushiki Kaisha Systems and methods for performing intra prediction coding in video coding
WO2020262408A1 (ja) * 2019-06-25 2020-12-30 日本放送協会 イントラ予測装置、画像復号装置、及びプログラム
WO2021025508A1 (ko) * 2019-08-06 2021-02-11 엘지전자 주식회사 컬러 포멧에 따라 결정된 예측 모드 타입에 기반하여 분할 모드를 결정하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
US11432006B2 (en) * 2020-08-14 2022-08-30 Tencent America LLC Chroma mode video coding
US11140394B1 (en) * 2020-08-27 2021-10-05 Tencent America LLC Adaptive chroma intra mode coding in video compression

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060013320A1 (en) * 2004-07-15 2006-01-19 Oguz Seyfullah H Methods and apparatus for spatial error concealment
US8331448B2 (en) * 2006-12-22 2012-12-11 Qualcomm Incorporated Systems and methods for efficient spatial intra predictabilty determination (or assessment)
US8094714B2 (en) * 2008-07-16 2012-01-10 Sony Corporation Speculative start point selection for motion estimation iterative search
US8144766B2 (en) * 2008-07-16 2012-03-27 Sony Corporation Simple next search position selection for motion estimation iterative search
KR101753551B1 (ko) * 2011-06-20 2017-07-03 가부시키가이샤 제이브이씨 켄우드 화상 부호화 장치, 화상 부호화 방법 및 화상 부호화 프로그램을 저장한 기록매체
JP5614381B2 (ja) * 2011-06-23 2014-10-29 株式会社Jvcケンウッド 画像符号化装置、画像符号化方法、及び画像符号化プログラム、並びに、送信装置、送信方法、及び送信プログラム
CN105791834B (zh) * 2011-06-23 2018-01-02 Jvc 建伍株式会社 图像解码装置和图像解码方法
JP5995448B2 (ja) * 2012-01-19 2016-09-21 シャープ株式会社 画像復号装置、および画像符号化装置
GB2501535A (en) * 2012-04-26 2013-10-30 Sony Corp Chrominance Processing in High Efficiency Video Codecs
US20140198855A1 (en) * 2013-01-14 2014-07-17 Qualcomm Incorporated Square block prediction
US9300964B2 (en) * 2013-01-24 2016-03-29 Sharp Kabushiki Kaisha Image decoding apparatus and image coding apparatus
EP3606074B1 (en) * 2013-03-29 2020-12-30 JVC KENWOOD Corporation Image decoding device, image decoding method, and image decoding program
US9774872B2 (en) * 2013-04-05 2017-09-26 Mitsubishi Electric Corporation Color image encoding device, color image decoding device, color image encoding method, and color image decoding method

Also Published As

Publication number Publication date
EP2982108A4 (en) 2017-03-22
CN105264889B (zh) 2018-09-11
WO2014161043A1 (en) 2014-10-09
US20160050422A1 (en) 2016-02-18
KR20150135519A (ko) 2015-12-02
AU2015271953B2 (en) 2017-10-19
CN105264889A (zh) 2016-01-20
JP2019213206A (ja) 2019-12-12
JP6351706B2 (ja) 2018-07-04
AU2015271953A1 (en) 2016-01-21
JP2016518761A (ja) 2016-06-23
JP2018157587A (ja) 2018-10-04
AU2013202653A1 (en) 2014-10-23
EP2982108B1 (en) 2019-02-06
EP2982108A1 (en) 2016-02-10

Similar Documents

Publication Publication Date Title
JP6563079B2 (ja) 符号化方法、復号方法、符号化装置、復号装置、及びプログラム
JP7104827B2 (ja) 映像サンプルのブロックをデブロックする方法
US20190289332A1 (en) Method, apparatus and system for de-blocking video data
AU2016203628B2 (en) Method, apparatus and system for encoding and decoding video data
RU2604986C2 (ru) Способ, устройство и система для кодирования и декодирования единиц преобразования единицы кодирования
US20230037302A1 (en) Method, apparatus and system for encoding and decoding a coding tree unit
US20220394311A1 (en) Method apparatus and system for encoding and decoding a coding tree unit
JP2023159400A (ja) ビデオサンプルのブロックを符号化及び復号するための方法、装置、及びシステム
KR20220032620A (ko) 비디오 샘플들의 블록을 인코딩 및 디코딩하기 위한 방법, 장치 및 시스템

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190322

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190409

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190607

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190723

R151 Written notification of patent or utility model registration

Ref document number: 6563079

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151