JP2013539940A - ビデオコーディングのためのイントラ予測モード選択の指示 - Google Patents

ビデオコーディングのためのイントラ予測モード選択の指示 Download PDF

Info

Publication number
JP2013539940A
JP2013539940A JP2013531911A JP2013531911A JP2013539940A JP 2013539940 A JP2013539940 A JP 2013539940A JP 2013531911 A JP2013531911 A JP 2013531911A JP 2013531911 A JP2013531911 A JP 2013531911A JP 2013539940 A JP2013539940 A JP 2013539940A
Authority
JP
Japan
Prior art keywords
prediction mode
intra prediction
index
mode
current block
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.)
Pending
Application number
JP2013531911A
Other languages
English (en)
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 JP2013539940A publication Critical patent/JP2013539940A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/18Methods 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 set of transform coefficients
    • 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/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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • 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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • 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
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • 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/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

ビデオデータのブロックについて、ビデオエンコーダは、変更されたイントラ予測モードインデックスにマッピングされたコードワードを使用して選択されたイントラ予測モードをビデオデコーダにシグナリングする。ビデオデコーダは、コードワードを受信し、コードワードに対応する変更されたイントラ予測モードインデックスを決定し、コンテキストに基づいて最もありえるモードを決定し、変更されたイントラ予測モードインデックスを最もありえるモードのモードインデックスと比較することによって、変更されたイントラ予測モードインデックスをイントラ予測モードインデックスにマッピングし、イントラ予測モードインデックスに基づいてビデオデータのブロックを符号化するために使用される選択されたイントラ予測モードを決定する。

Description

本開示は、ビデオコーディングに関し、より詳細には、コード化されたビデオデータについてのコーディング特性のシグナリングに関する。
[0002]デジタルビデオ機能は、デジタルテレビジョン、デジタルダイレクトブロードキャストシステム、ワイヤレスブロードキャストシステム、携帯情報端末(PDA)、ラップトップまたはデスクトップコンピュータ、デジタルカメラ、デジタル記録デバイス、デジタルメディアプレーヤ、ビデオゲームデバイス、ビデオゲームコンソール、セルラー電話または衛星無線電話、ビデオ遠隔会議デバイスなどを含む、広範囲にわたるデバイスに組み込まれ得る。デジタルビデオデバイスは、デジタルビデオ情報をより効率的に送信および受信するために、MPEG−2、MPEG−4、ITU−T H.263またはITU−T H.264/MPEG−4、Part 10、Advanced Video Coding(AVC)によって定義された規格、およびそのような規格の拡張に記載されているビデオ圧縮技法など、ビデオ圧縮技法を実装する。
[0003]ビデオ圧縮技法では、ビデオシーケンスに固有の冗長性を低減または除去するために空間的予測および/または時間的予測を実行する。ブロックベースのビデオコーディングの場合、ビデオフレームまたはスライスはビデオブロックに区分され得る。各ビデオブロックはさらに区分され得る。イントラコード化(I)フレームまたはスライス中のビデオブロックは、近隣ビデオブロックに関する空間的予測を使用して符号化される。インターコード化(PまたはB)フレームまたはスライス中のビデオブロックは、同じフレームまたはスライス中の隣接マクロブロックまたはコーディングユニットに関する空間的予測、あるいは他の参照フレームに関する時間的予測を使用し得る。
[0004]概して、本開示では、コード化されたビデオデータについてのコーディング特性をシグナリングするための技法について説明する。本開示の技法は、ビデオデータのブロックを符号化するために使用されるイントラ予測モードのシグナリングの効率を向上させることができる。本開示の技法は、符号化されたビットストリームにおいて、たとえば、ブロックのコンテキストに基づいて、コードワードの可能性に反比例する長さを有する可変長のコードワードを使用して、ビデオデータのブロックについてのイントラ予測モードをシグナリングすることを含む。このようにして、本開示の技法を使用するとき、コード化されたビットストリームについての相対的なビット節約があり得る。
[0005]一例では、ビデオデータを復号する方法は、現在のブロックのコンテキストに基づいて、ビデオデータのコード化ブロックについての第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードを決定することと、現在のブロックのコンテキストに基づいてコードワードのテーブルを選択することと、コードワードのテーブルは、第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モード以外のイントラ予測モードに対応する変更されたイントラ予測モードインデックスに対応する複数の可変長のコードワードを備え、コードワードのテーブルを使用して受信されたコードワードに対応する変更されたイントラ予測モードインデックスのうちの1つを決定することと、コード化ブロックの復号に使用するために、第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モード以外のイントラ予測モードを選択することと、選択されたイントラ予測モードは、変更されたイントラ予測モードインデックスのうちの決定された1つに対応し、選択されたイントラ予測モードを使用して、現在のブロックを復号することと、を含む。
[0006]別の例では、ビデオデータを復号するための装置は、現在のブロックのコンテキストに基づいて、ビデオデータのコード化ブロックについての第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードを決定し、現在のブロックのコンテキストに基づいてコードワードのテーブルを選択し、コードワードのテーブルは、第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モード以外のイントラ予測モードに対応する変更されたイントラ予測モードインデックスに対応する複数の可変長のコードワードを備え、コードワードのテーブルを使用して受信されたコードワードに対応する変更されたイントラ予測モードインデックスのうちの1つを決定し、コード化ブロックの復号に使用するために、第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モード以外のイントラ予測モードを選択し、選択されたイントラ予測モードは、変更されたイントラ予測モードインデックスのうちの決定された1つに対応し、選択されたイントラ予測モードを使用して、現在のブロックを復号するように構成されるビデオデコーダを含む。
[0007]別の例では、ビデオデータを符号化する方法は、現在のブロックの符号化コンテキストに基づいて、ビデオデータの現在のブロックについての第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードを決定することと、現在のブロックのコンテキストに基づいてコードワードのテーブルを選択することと、コードワードのテーブルは、第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モード以外のイントラ予測モードに対応する変更されたイントラ予測モードインデックスに対応する複数の可変長のコードワードを備え、第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モード以外のイントラ予測モードのうちの1つを使用して、現在のブロックを符号化することと、コードワードのテーブルを使用してイントラ予測モードのうちの1つに対応する変更されたイントラ予測モードインデックスのうちの1つを決定することと、選択されたコードワードのテーブルから、変更されたイントラ予測モードインデックスのうちの1つに対応するコードワードを出力することと、を含む。
[0008]別の例では、ビデオデータを符号化するための装置は、現在のブロックの符号化コンテキストに基づいて、ビデオデータの現在のブロックについての第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードを決定し、現在のブロックのコンテキストに基づいてコードワードのテーブルを選択し、コードワードのテーブルは、第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モード以外のイントラ予測モードに対応する変更されたイントラ予測モードインデックスに対応する複数の可変長のコードワードを備え、第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モード以外のイントラ予測モードのうちの1つを使用して、現在のブロックを符号化し、コードワードのテーブルを使用してイントラ予測モードのうちの1つに対応する変更されたイントラ予測モードインデックスのうちの1つを決定し、選択されたコードワードのテーブルから、変更されたイントラ予測モードインデックスのうちの1つに対応するコードワードを出力するように構成されたビデオエンコーダを含む。
[0009]別の例では、ビデオデータを符号化するための装置は、現在のブロックの符号化コンテキストに基づいて、ビデオデータの現在のブロックについての第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードを決定する手段と、現在のブロックのコンテキストに基づいてコードワードのテーブルを選択する手段と、コードワードのテーブルは、第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モード以外のイントラ予測モードに対応する変更されたイントラ予測モードインデックスに対応する複数の可変長のコードワードを備え、第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モード以外のイントラ予測モードのうちの1つを使用して、現在のブロックを符号化する手段と、コードワードのテーブルを使用してイントラ予測モードのうちの1つに対応する変更されたイントラ予測モードインデックスのうちの1つを決定する手段と、選択されたコードワードのテーブルから、変更されたイントラ予測モードインデックスのうちの1つに対応するコードワードを出力する手段と、を含む。
[0010]別の例では、ビデオを復号するための装置は、現在のブロックのコンテキストに基づいて、ビデオデータのコード化ブロックについての第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードを決定する手段と、現在のブロックのコンテキストに基づいてコードワードのテーブルを選択する手段と、コードワードのテーブルは、第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モード以外のイントラ予測モードに対応する変更されたイントラ予測モードインデックスに対応する複数の可変長のコードワードを備え、コードワードのテーブルを使用して受信されたコードワードに対応する変更されたイントラ予測モードインデックスのうちの1つを決定する手段と、コード化ブロックの復号に使用するために、第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モード以外のイントラ予測モードを選択する手段と、選択されたイントラ予測モードは、変更されたイントラ予測モードインデックスのうちの決定された1つに対応し、選択されたイントラ予測モードを使用して、現在のブロックを復号する手段と、を含む。
[0011]別の例では、実行されると、1つまたは複数のプロセッサに、現在のブロックのコンテキストに基づいて、ビデオデータのコード化ブロックについての第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードを決定させ、現在のブロックのコンテキストに基づいてコードワードのテーブルを選択させ、コードワードのテーブルは、第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モード以外のイントラ予測モードに対応する変更されたイントラ予測モードインデックスに対応する複数の可変長のコードワードを備え、コードワードのテーブルを使用して受信されたコードワードに対応する変更されたイントラ予測モードインデックスのうちの1つを決定させ、コード化ブロックの復号に使用するために、第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モード以外のイントラ予測モードを選択させ、選択されたイントラ予測モードは、変更されたイントラ予測モードインデックスのうちの決定された1つに対応し、選択されたイントラ予測モードを使用して、現在のブロックを復号させる命令を記憶するコンピュータ可読記憶媒体。
[0012]さらに別の例では、実行されると、1つまたは複数のプロセッサに、現在のブロックの符号化コンテキストに基づいて、ビデオデータの現在のブロックについての第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードを決定させ、現在のブロックのコンテキストに基づいてコードワードのテーブルを選択させ、コードワードのテーブルは、第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モード以外のイントラ予測モードに対応する変更されたイントラ予測モードインデックスに対応する複数の可変長のコードワードを備え、第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モード以外のイントラ予測モードのうちの1つを使用して、現在のブロックを符号化させ、コードワードのテーブルを使用してイントラ予測モードのうちの1つに対応する変更されたイントラ予測モードインデックスのうちの1つを決定させ、選択されたコードワードのテーブルから、変更されたイントラ予測モードインデックスのうちの1つに対応するコードワードを出力させる命令を記憶するコンピュータ可読記憶媒体。
[0013]別の例では、ビデオデータを復号する方法は、現在のブロックのコンテキストに基づいて、ビデオデータの現在のブロックについての第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードを決定することと、現在のブロックのコンテキストに基づいて、コードワードのテーブルを選択することと、コードワードのテーブルはコードワードインデックスに対応する複数の可変長のコードワードを備え、コードワードインデックスはイントラ予測モードにマッピングされ、コードワードのテーブルを使用して受信されたコードワードに対応する変更されたコードワードインデックスを決定することと、コード化ブロックの復号に使用するために、第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モード以外のイントラ予測モードを選択すると、選択されたイントラ予測モードは、変更されたコードワードインデックス、第1の最もありえるイントラ予測モード、および第2の最もありえるイントラ予測モードに基づいて選択されたコードワードインデックスに対応し、選択されたイントラ予測モードを使用して、現在のブロックを復号することと、を含む。
[0014]別の例では、ビデオデータを復号するための装置は、現在のブロックのコンテキストに基づいて、ビデオデータの現在のブロックについての第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードを決定し、現在のブロックのコンテキストに基づいて、コードワードのテーブルを選択し、コードワードのテーブルは、コードワードインデックスに対応する複数の可変長のコードワードを備え、コードワードインデックスはイントラ予測モードにマッピングされ、コードワードのテーブルを使用して受信されたコードワードに対応する変更されたコードワードインデックスを決定し、コード化ブロックの復号に使用するために、第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モード以外のイントラ予測モードを選択し、選択されたイントラ予測モードは、変更されたコードワードインデックス、第1の最もありえるイントラ予測モード、および第2の最もありえるイントラ予測モードに基づいて選択されたコードワードインデックスに対応し、選択されたイントラ予測モードを使用して、現在のブロックを復号するように構成されたビデオデコーダを含む。
[0015]別の例では、ビデオを復号するための装置は、現在のブロックのコンテキストに基づいて、ビデオデータの現在のブロックについての第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードを決定する手段と、現在のブロックのコンテキストに基づいて、コードワードのテーブルを選択する手段と、コードワードのテーブルはコードワードインデックスに対応する複数の可変長のコードワードを備え、コードワードインデックスはイントラ予測モードにマッピングされ、コードワードのテーブルを使用して受信されたコードワードに対応する変更されたコードワードインデックスを決定する手段と、コード化ブロックの復号に使用するために、第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モード以外のイントラ予測モードを選択する手段と、選択されたイントラ予測モードは、変更されたコードワードインデックス、第1の最もありえるイントラ予測モード、および第2の最もありえるイントラ予測モードに基づいて選択されたコードワードインデックスに対応し、選択されたイントラ予測モードを使用して、現在のブロックを復号する手段と、を含む。
[0016]別の例では、実行されると、1つまたは複数のプロセッサに、現在のブロックのコンテキストに基づいて、ビデオデータの現在のブロックについての第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードを決定させ、現在のブロックのコンテキストに基づいて、コードワードのテーブルを選択させ、コードワードのテーブルはコードワードインデックスに対応する複数の可変長のコードワードを備え、コードワードインデックスはイントラ予測モードにマッピングされ、コードワードのテーブルを使用して受信されたコードワードに対応する変更されたコードワードインデックスを決定させ、コード化ブロックの復号に使用するために、第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モード以外のイントラ予測モードを選択させ、選択されたイントラ予測モードは、変更されたコードワードインデックス、第1の最もありえるイントラ予測モード、および第2の最もありえるイントラ予測モードに基づいて選択されたコードワードインデックスに対応し、選択されたイントラ予測モードを使用して、現在のブロックを復号させる命令を記憶するコンピュータ可読記憶媒体。
[0017]別の例では、ビデオデータを符号化する方法は、現在のブロックの符号化コンテキストに基づいて、ビデオデータの現在のブロックについての第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードを決定することと、現在のブロックのコンテキストに基づいて、コードワードのテーブルを選択することと、コードワードのテーブルはコードワードインデックスに対応する複数の可変長のコードワードを備え、コードワードインデックスはイントラ予測モードにマッピングされ、第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モード以外のイントラ予測モードのうちの1つを使用して、現在のブロックを符号化することと、現在のブロックを符号化するために使用されるイントラ予測モードのうちの1つのコードワードインデックス、第1の最もありえるモードにマッピングされたコードワードインデックス、および第2の最もありえるモードにマッピングされたコードワードインデックスに基づいて、変更されたコードワードインデックスを決定することと、選択されたコードワードのテーブルから、変更されたコードワードインデックスに対応するコードワードを出力することと、を含む。
[0018]別の例では、ビデオデータを符号化するための装置は、現在のブロックの符号化コンテキストに基づいて、ビデオデータの現在のブロックについての第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードを決定し、現在のブロックのコンテキストに基づいて、コードワードのテーブルを選択し、コードワードのテーブルはコードワードインデックスに対応する複数の可変長のコードワードを備え、コードワードインデックスはイントラ予測モードにマッピングされ、第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モード以外のイントラ予測モードのうちの1つを使用して、現在のブロックを符号化し、現在のブロックを符号化するために使用されるイントラ予測モードのうちの1つのコードワードインデックス、第1の最もありえるモードにマッピングされたコードワードインデックス、および第2の最もありえるモードにマッピングされたコードワードインデックスに基づいて、変更されたコードワードインデックスを決定し、選択されたコードワードのテーブルから、変更されたコードワードインデックスに対応するコードワードを出力する、ように構成されたビデオエンコーダを含む。
[0019]別の例では、ビデオを符号化するための装置は、現在のブロックの符号化コンテキストに基づいて、ビデオデータの現在のブロックについての第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードを決定する手段と、現在のブロックのコンテキストに基づいて、コードワードのテーブルを選択する手段と、コードワードのテーブルはコードワードインデックスに対応する複数の可変長のコードワードを備え、コードワードインデックスはイントラ予測モードにマッピングされ、第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モード以外のイントラ予測モードのうちの1つを使用して、現在のブロックを符号化する手段と、現在のブロックを符号化するために使用されるイントラ予測モードのうちの1つのコードワードインデックス、第1の最もありえるモードにマッピングされたコードワードインデックス、および第2の最もありえるモードにマッピングされたコードワードインデックスに基づいて、変更されたコードワードインデックスを決定する手段と、選択されたコードワードのテーブルから、変更されたコードワードインデックスに対応するコードワードを出力する手段と、を含む。
[0020]別の例では、実行されると、1つまたは複数のプロセッサに、現在のブロックの符号化コンテキストに基づいて、ビデオデータの現在のブロックについての第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードを決定させ、現在のブロックのコンテキストに基づいて、コードワードのテーブルを選択させ、コードワードのテーブルはコードワードインデックスに対応する複数の可変長のコードワードを備え、コードワードインデックスはイントラ予測モードにマッピングされ、第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モード以外のイントラ予測モードのうちの1つを使用して、現在のブロックを符号化させ、現在のブロックを符号化するために使用されるイントラ予測モードのうちの1つのコードワードインデックス、第1の最もありえるモードにマッピングされたコードワードインデックス、および第2の最もありえるモードにマッピングされたコードワードインデックスに基づいて、変更されたコードワードインデックスを決定させ、選択されたコードワードのテーブルから、変更されたコードワードインデックスに対応するコードワードを出力させる、命令を記憶するコンピュータ可読記憶媒体。
ビデオデータのブロックについてのイントラ予測モードを表すシンタックスデータをコード化するための技法を利用し得る一例のビデオ符号化および復号システムを示すブロック図。 イントラ予測モードを示す情報をコード化するための技法を実装し得るビデオエンコーダの一例を示すブロック図。 イントラ予測モードおよび対応するモードインデックスの一例を示す図。 符号化ビデオシーケンスを復号するビデオデコーダの一例を示すブロック図。 ビデオデータのブロックをイントラ予測符号化するための一例の方法を示すフローチャート。 コード化ブロックについてのイントラ予測モードを示すコードワードを選択するための例示的な方法を示すフローチャート。 コード化ブロックについてのイントラ予測モードを示すコードワードを選択するための例示的な方法を示すフローチャート。 ビデオデータのブロックをイントラ予測復号するための例示的な方法を示すフローチャート。 コード化ブロックについてのイントラ予測モードを示す受信されたコードワードを使用して、ブロックに対しイントラ予測モードを決定するための例示的な方法を示すフローチャート。 コード化ブロックについてのイントラ予測モードを示す受信されたコードワードを使用して、ブロックに対しイントラ予測モードを決定するための例示的な方法を示すフローチャート。 イントラ予測モードインデックステーブルと変更されたイントラ予測モードインデックステーブルとコンテキストデータとの間の関係を示す構成データのセットの一例を示す概念図。
[0030]概して、本開示では、コード化されたビデオデータについてのコーディング特性をシグナリングするための技法について説明する。本開示の技法は、ビデオデータのブロックをイントラ符号化するために使用されるイントラ予測モードのシグナリングの効率を向上させることができる。ビデオエンコーダは、たとえば、様々なイントラ予測モードを使用して符号化されるブロックの符号化コンテキストに基づいて、イントラ予測モードのインデックスを示す構成データを含み得る。符号化コンテキストは、たとえば、隣接する、前にコード化されたブロックについての符号化モードおよび/またはブロックサイズを含み得る。
[0031]構成データは、コンテキストごとに1つの最もありえるイントラ予測モードを定義する、またはコンテキストごとに2つ以上の最もありえるイントラ予測モードを定義するために使用され得る。これらの最もありえるイントラ予測モードは、本開示では、時として、単に最もありえるモードと呼ばれ得る。構成データは、所与のコンテキストにおいて(1つまたは複数の)最もありえるモード以外のモードについてのイントラ予測モードを記述するシンタックスデータの符号化に使用するために、可変長コード(VLC)テーブルも定義し得る。特に、VLCテーブルは、VLCコードワードに対するインデックスのマッピングを含むことができる。以下でより詳細に説明するように、VLCテーブルは、コードワードに対して変更されたイントラ予測モードインデックスをマッピングし得、または、イントラ予測モードインデックスを、すぐ後で、変更されたコードワードインデックスに調整されるコードワードインデックスに対してマッピングし得る。イントラ予測モードのインデックスについてのコードワードは、比較的可能性が高いイントラ予測モードでは比較的短くなり得る。
[0032]したがって、ビデオエンコーダは、イントラ予測モード符号化されるブロックに対し符号化コンテキストを決定するように構成され得る。符号化コンテキストは、最もありえるイントラ予測モードと、他のイントラ予測モードの可能性とに関連し得る。現在のブロックの符号化に使用するために、最もありえるイントラ予測モードが選択されると、ビデオエンコーダは、ブロックが生じるコンテキストについて、ブロックは最もありえるモードで符号化されることを示すために、1ビットのコードワード(たとえば「1」)を選択し得る。2つ以上の最もありえるイントラ予測モードが使用される例では、第1のビットは、現在のブロックの符号化に使用するために、最もありえるイントラ予測モードのうちの1つが選択されるかどうかを示し、最もありえるイントラ予測のうちの1つが使用される場合、最もありえるイントラ予測モードのうちどれが選択されるかを第2のビット(または一連のビット)が示し得る。時として、本開示全体にわたって、この第1のビットと第2のビットとの組合せは、それ自体、コードワードと呼ばれ、コードワードの第1のビットは、選択されたイントラ予測モードが最もありえるイントラ予測モードのうちの1つであることをシグナリングし、第2のビット(または一連のビット)は、最もありえるイントラ予測モードのうちのどれかを識別する。
[0033]符号化コンテキストに基づいて、他のイントラ予測モード(すなわち(1つまたは複数の)最もありえるイントラ予測モード以外のイントラ予測モード)の各々に、変更されたインデックス値を割り当てることもできる。その上、符号化コンテキストは、さらに、イントラ予測モードのインデックスに関連するインデックス値によってインデックス付けされる1セットのコードワード(たとえば、可変長のコードワード)を有するテーブルに対応し得る。特に、上記で説明したように、(1つまたは複数の)最もありえるイントラ予測モードのインデックス値に、最もありえるイントラ予測モードが選択されたことを表すシングルビットの(または場合によってはより長い)コードワード以外の別の可変長のコードワードを割り当てる必要はない。可変長のコードワードを残りの各イントラ予測モードにマッピングするために、まず、(1つまたは複数の)最も可能性が高いモードに対し当初割り振られたものを除外するために、残りの各イントラ予測モードのインデックスが変更され得る。したがって、変更されたイントラ予測モードインデックスは、最もありえるモードについてのモードインデックスより小さいイントラ予測モードインデックスに等しくなり得る。一方、変更されたイントラ予測モードインデックスは、最もありえるモードについてのインデックスよりも大きいイントラ予測モードインデックスに対し、イントラ予測モードインデックスより1つ小さいものであり得る。このようにして、イントラ予測モードよりも1つ少ない可変長のコードワードがあり、符号化コンテキストに基づいて、比較的短いコードワードが比較的可能性が高いイントラ予測モードにマッピングされるように、コードワードは、イントラ予測モードにマッピングされ得る。2つ以上の最もありえるイントラ予測モードを使用するとき、コードワードテーブルに、イントラ予測モードよりも2以上少ない可変長のコードワードがあり得、コードワードは、同様に、符号化コンテキストに基づいて、比較的短いコードワードが比較的可能性が高いイントラ予測モードにマッピングされるように、イントラ予測モードにマッピングされ得る。
[0034]ビデオデコーダは、たとえば、符号化されたブロックについてのイントラ予測モードを決定するとき、類似の技法を実行するように、同様に構成され得る。本開示の技法によれば、ビデオデコーダは、符号化されたブロックのデータ、ならびに符号化されたブロックの復号に使用するためのイントラ予測モードを示すコードワードを受信し得る。ビデオデコーダは、ビデオエンコーダと同様の方法で、ブロックのコンテキストを決定することができる。コンテキストに基づいて、ビデオデコーダは、ブロックについての1つまたは複数の最もありえるイントラ予測モードを決定することができる。1つの最もありえるイントラ予測モードを使用するとき、最もありえるモードが選択されるかどうかを決定するために、シングルビットが復号され得る。最もありえるモードが選択されることをシングルビットが示す場合、ビデオデコーダは、最もありえるイントラ予測モードを使用してブロックを復号することができる。そうでない場合、ビデオデコーダは、受信されたコードワードにマッピングされる変更されたイントラ予測モードインデックスを参照し得る。変更されたイントラ予測モードインデックスが、最もありえるイントラ予測モードのモードインデックス以上である場合、ビデオデコーダは、変更されたイントラ予測モードインデックスよりも1大きいモードインデックスにマッピングされるイントラ予測モードを使用してブロックを復号する。変更されたイントラ予測モードインデックスが、最もありえるイントラ予測モードのモードインデックスより小さい場合、ビデオデコーダは、変更されたイントラ予測モードインデックスに等しいモードインデックスにマッピングされるイントラ予測モードを使用してブロックを復号する。
[0035]同様に、2つの最もありえるイントラ予測符号化モードを使用するとき、選択されたイントラ予測モードが最もありえるイントラ予測モードのうちの1つであることを第1のビットが示す場合、ビデオデコーダは、第2のビットによって識別された最もありえるイントラ予測モードを使用してブロックを復号することができる。そうでない場合、ビデオデコーダは、受信されたコードワードにマッピングされる変更されたイントラ予測モードインデックスを参照し得る。変更されたイントラ予測モードインデックスが、第1の最もありえるイントラ予測モードのモードインデックスより小さい場合、ビデオデコーダは、変更されたイントラ予測モードインデックスに等しいモードインデックスにマッピングされるイントラ予測モードを使用してブロックを復号することができる。そうでない場合、変更されたイントラ予測モードインデックス+1が、第2の最もありえるイントラ予測モードのモードインデックスより小さい場合、ビデオデコーダは、変更されたイントラ予測モードインデックスよりも1大きいモードインデックスにマッピングされるイントラ予測モードを使用してブロックを復号することができる。そうでない場合、ビデオデコーダは、変更されたイントラ予測モードインデックスよりも2大きいモードインデックスにマッピングされるイントラ予測モードを使用してブロックを復号することができ、以下同様である。
[0036]「第1の最もありえる」および「第2の最もありえる」という句は、本開示では、一般に、2つの別個の最もありえるイントラ予測モードを指すために使用され、2つのイントラ予測モードの相対的な見込みを暗示するものではない。しかしながら、後で例を通じて説明するように、一般に、本開示での説明のために、第1の最もありえるイントラ予測モードが第2の最もありえるイントラ予測モードよりも低い対応するモードインデックス値を有すると想定され得る。したがって、変更されたイントラ予測モードインデックス値が第1の最もありえるモードのモードインデックスより小さいという場合、変更されたイントラ予測モードインデックス値も、第2の最もありえるイントラ予測モード、第3の最もありえるイントラ予測モードなどのモードインデックスより小さいと想定することができる。
[0037]本開示の技法は、3つ以上の最もありえるイントラ予測モードを利用する実装に拡張することができる。たとえば、最もありえるイントラ予測モードがN個あると仮定すると、第1のビットまたは一連のビットは、選択されたイントラ予測モードがN個の最もありえるイントラ予測モードのうちの1つであるかどうかを示し得る。選択されたイントラ予測モードがN個の最もありえるイントラ予測モードのうちの1つである場合、第2の一連のビットは、N個の最もありえるイントラ予測モードのうちどれが選択されたイントラ予測モードであるかを識別することができる。いくつかの例では、最もありえるイントラ予測モードは、1つまたは複数のグループでシグナリングされ得、この場合、第1のビットまたは一連のビットは、選択された最もありえるイントラ予測モードが第1のグループからであるかどうかをシグナリングする。選択されたイントラ予測モードが第1のグループからではない場合、後続のビットは、それが第2のグループからのものであるかどうか、などをシグナリングすることができる。
[0038]たとえば、5つの最もありえるモードが使用される場合、第1のビットまたは一連のビットは、選択されたイントラ予測モードが2つの最もありえるイントラ予測モードの第1のグループからのものであるかどうかをシグナリングし得る。選択されたモードが2つのうちの1つである場合、第2のビットは、2つのうちのどちらが選択されたモードであるかを識別し得る。選択されたモードが2つのうちの1つではない場合、第2グループのビットは、選択されたモードを識別し得る。たとえば、第2グループのビットが2ビットを含む場合、第1のビットの組合せ(たとえば00)は、選択されたモードが第3の最もありえるモードであることを示し、第2のビットの組合せ(たとえば01)は、選択されたモードが第4の最もありえるモードであることを示し、第3のビットの組合せ(たとえば10)は、選択されたモードが第5の最もありえるモードであることを示す。選択されたモードが5つの最もありえるイントラ予測モードのうちの1つである場合、デコーダは、最もありえるモードを使用してブロックを復号することができる。第4のビットの組合せ(たとえば11)は、選択されたモードが5つの最もありえるモードのうちの1つでないことを示し、その場合、本開示で説明する技法に従って、第4のビットの組合せの後に、選択されたモードを識別する後続のビットが続き得る。
[0039]選択されたモードが最もありえるモードではない例では、ビデオデコーダは、受信されたコードワードにマッピングされる変更されたイントラ予測モードインデックスを参照し得る。例として、第1の最もありえるイントラ予測モードが第2の最もありえるイントラ予測モードよりも低い対応するモードインデックス値を有し、第2が第3よりも低いインデックスを有する、などが想定できる。本開示の技法によれば、変更されたイントラ予測モードインデックスが、第1の最もありえるイントラ予測モードのモードインデックスより小さい場合、ビデオデコーダは、変更されたイントラ予測モードインデックスに等しいモードインデックスにマッピングされるイントラ予測モードを使用してブロックを復号することができる。そうでなく、変更されたイントラ予測モードインデックス+1が、第2の最もありえるイントラ予測モードのモードインデックスより小さい場合、ビデオデコーダは、変更されたイントラ予測モードインデックスよりも1大きいモードインデックスにマッピングされるイントラ予測モードを使用してブロックを復号することができる。そうではなく、変更されたイントラ予測モードインデックス+2が、第3の最もありえるイントラ予測モードのモードインデックスより小さい場合、ビデオデコーダは、変更されたイントラ予測モードインデックスよりも2大きいモードインデックスにマッピングされるイントラ予測モードを使用してブロックを復号することができ、以下同様である。以下でさらに詳細に説明するように、変更されたイントラ予測モードインデックスが最もありえるモードのエントリを含まないので、イントラ予測モードインデックスが、最もありえるモードのモードインデックスに応じて、変更されたイントラ予測モードインデックス+1、変更されたイントラ予測モードインデックス+2など、にマッピングされ得る。
[0040]図1は、ビデオデータのブロックについてのイントラ予測モードを表すシンタックスデータをコード化するための技法を利用し得る例示的なビデオ符号化および復号システム10を示すブロック図である。図1に示すように、システム10は、通信チャネル16を介して符号化ビデオを宛先デバイス14に送信するソースデバイス12を含む。ソースデバイス12および宛先デバイス14は、広範囲のデバイスのいずれかを備えることができる。場合によっては、ソースデバイス12および宛先デバイス14は、いわゆるセルラー電話または衛星無線電話のワイヤレスハンドセットなどのワイヤレス通信デバイス、または通信チャネル16を介してビデオ情報を通信することができる任意のワイヤレスデバイスを備え得、その場合、通信チャネル16はワイヤレスである。
[0041]ただし、ビデオデータのブロックについてのイントラ予測モードを表すシンタックスデータのコード化に関係する本開示の技法は、必ずしもワイヤレスアプリケーションまたはセッティングに限定されるとは限らない。たとえば、これらの技法は、オーバージエアテレビジョン放送、ケーブルテレビジョン送信、衛星テレビジョン送信、インターネットビデオ送信、記憶媒体上に符号化される符号化デジタルビデオ、または他のシナリオに適用し得る。したがって、通信チャネル16は、符号化ビデオデータの送信に好適なワイヤレスまたはワイヤード媒体の任意の組合せを備え得る。その上、通信チャネル16は、ビデオ符号化デバイスがビデオ復号デバイスにデータを送信し得る多くの方法のうちのただ1つを表すためのものである。たとえば、システム10の他の構成では、ソースデバイス12は、宛先デバイス14による復号のために符号化ビデオを生成し、必要に応じて、符号化ビデオが宛先デバイス14によってアクセスできるように、記憶媒体またはファイルサーバ上に符号化ビデオを記憶し得る。
[0042]図1の例では、ソースデバイス12は、ビデオソース18と、ビデオエンコーダ20と、変調器/復調器(モデム)22と、送信機24とを含む。宛先デバイス14は、受信機26と、モデム28と、ビデオデコーダ30と、ディスプレイデバイス32とを含む。本開示によれば、ソースデバイス12のビデオエンコーダ20は、ビデオデータのブロックについてのイントラ予測モードを表すシンタックスデータをコード化するための技法を適用するように構成され得る。他の例では、ソースデバイスおよび宛先デバイスは他の構成要素または構成を含み得る。たとえば、ソースデバイス12は、外部カメラなどの外部ビデオソース18からビデオデータを受信し得る。同様に、宛先デバイス14は、一体型ディスプレイデバイスを含むのではなく、外部ディスプレイデバイスとインターフェースし得る。
[0043]図1の図示のシステム10は一例にすぎない。ビデオデータのブロックについてのイントラ予測モードを表すシンタックスデータのコード化のための技法は、任意のデジタルビデオ符号化および/または復号デバイスによって実行され得る。概して、本開示の技法はビデオ符号化デバイスによって実行されるが、本技法は、一般に「コーデック」と呼ばれるビデオエンコーダ/デコーダによっても実行され得る。その上、本開示の技法はまた、ビデオプリプロセッサによって実行され得る。ソースデバイス12および宛先デバイス14は、ソースデバイス12が宛先デバイス14に送信するためのコード化ビデオデータを発生するような、コーディングデバイスの例にすぎない。いくつかの例では、デバイス12、14の各々はビデオ符号化構成要素および復号構成要素を含むようにして、デバイス12、14は、実質的に対称的に動作し得る。したがって、システム10は、たとえば、ビデオストリーミング、ビデオ再生、ビデオブロードキャストまたはビデオ電話通信のためのビデオデバイス12とビデオデバイス14との間の一方向または双方向のビデオ送信をサポートすることができる。
[0044]ソースデバイス12のビデオソース18は、ビデオカメラなどのビデオキャプチャデバイス、以前にキャプチャされたビデオを含んでいるビデオアーカイブ、および/またはビデオコンテンツプロバイダからのビデオフィードを含み得る。さらなる代替として、ビデオソース18は、ソースビデオとしてのコンピュータグラフィックスベースのデータ、またはライブビデオとアーカイブビデオとコンピュータ生成ビデオとの組合せを生成し得る。場合によっては、ビデオソース18がビデオカメラである場合、ソースデバイス12および宛先デバイス14は、いわゆるカメラ付き携帯電話またはビデオ電話を形成することができる。ただし、上述のように、本開示で説明する技法は、一般にビデオコーディングに適用可能であり、ワイヤレスおよび/またはワイヤードアプリケーションに適用可能であり得る。各場合において、キャプチャされたビデオ、以前にキャプチャされたビデオまたはコンピュータ生成ビデオは、ビデオエンコーダ20によって符号化され得る。次いで、符号化ビデオ情報は、通信規格に従ってモデム22によって変調され、送信機24を介して宛先デバイス14に送信され得る。モデム22は、信号変調のために設計された様々なミキサ、フィルタ、増幅器または他の構成要素を含むことができる。送信機24は、増幅器、フィルタ、および1つまたは複数のアンテナを含む、データを送信するために設計された回路を含むことができる。
[0045]宛先デバイス14の受信機26はチャネル16を介して情報を受信し、モデム28は情報を復調する。この場合も、ビデオ符号化プロセスは、ビデオデータのブロックについてのイントラ予測モードを表すシンタックスデータをコード化するために、本明細書で説明する技法のうちの1つまたは複数を実施することができる。チャネル16を介して通信される情報は、ビデオエンコーダ20によって定義され、またビデオデコーダ30によって使用される、マクロブロックおよび他のコード化ユニット、たとえば、GOPの特性および/または処理を記述するシンタックス要素を含む、シンタックス情報を含み得る。ディスプレイデバイス32は、復号されたビデオデータをユーザに対して表示し、陰極線管(CRT)、液晶ディスプレイ(LCD)、プラズマディスプレイ、有機発光ダイオード(OLED)ディスプレイ、または別のタイプのディスプレイデバイスなど、様々なディスプレイデバイスのいずれかを備え得る。
[0046]図1の例では、通信チャネル16は、無線周波数(RF)スペクトルまたは1つもしくは複数の物理的伝送線路など、ワイヤレスまたはワイヤードの任意の通信媒体、あるいはワイヤレスおよびワイヤード媒体の任意の組合せを備えることができる。通信チャネル16は、ローカルエリアネットワーク、ワイドエリアネットワーク、またはインターネットなどのグローバルネットワークなど、パケットベースのネットワークの一部を形成することができる。通信チャネル16は、一般に、ワイヤードまたはワイヤレス媒体の任意の好適な組合せを含む、ビデオデータをソースデバイス12から宛先デバイス14に送信するのに好適な任意の通信媒体、または様々な通信媒体の集合体を表す。通信チャネル16は、ソースデバイス12から宛先デバイス14への通信を可能にするのに有用なルータ、スイッチ、基地局、または任意の他の機器を含むことができる。
[0047]ビデオエンコーダ20およびビデオデコーダ30は、代替的にMPEG−4、Part 10、Advanced Video Coding(AVC)と呼ばれるITU−T H.264規格など、ビデオ圧縮規格に従って動作し得る。ただし、本開示の技法は、いかなる特定のコーディング規格にも限定されない。他の例には、MPEG−2およびITU−T H.263がある。図1には示されていないが、いくつかの態様では、ビデオエンコーダ20およびビデオデコーダ30は、それぞれオーディオエンコーダおよびデコーダと統合され得、適切なMUX−DEMUXユニット、または他のハードウェアおよびソフトウェアを含んで、共通のデータストリームまたは別個のデータストリーム中のオーディオとビデオの両方の符号化を処理し得る。適用可能な場合、MUX−DEMUXユニットはITU H.223マルチプレクサプロトコル、またはユーザデータグラムプロトコル(UDP)などの他のプロトコルに準拠することができる。
[0048]ITU−T H.264/MPEG−4(AVC)規格は、Joint Video Team(JVT)として知られる共同パートナーシップの成果として、ISO/IEC Moving Picture Experts Group(MPEG)とともにITU−T Video Coding Experts Group(VCEG)によって策定された。いくつかの態様では、本開示で説明する技法は、一般にH.264規格に準拠するデバイスに適用することができる。H.264規格は、ITU−T研究グループによる2005年3月付けのITU−T勧告H.264「Advanced Video Coding for generic audiovisual services」に記載されており、本明細書ではH.264規格またはH.264仕様、あるいはH.264/AVC規格または仕様と呼ぶ。Joint Video Team(JVT)はH.264/MPEG−4 AVCへの拡張に取り組み続けている。
[0049]ビデオエンコーダ20およびビデオデコーダ30はそれぞれ、1つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェアなど、様々な好適なエンコーダ回路のいずれか、またはそれらの任意の組合せとして実装され得る。ビデオエンコーダ20およびビデオデコーダ30の各々は1つまたは複数のエンコーダまたはデコーダ中に含まれ得、そのいずれも複合エンコーダ/デコーダ(コーデック)の一部としてそれぞれのカメラ、コンピュータ、モバイルデバイス、加入者デバイス、ブロードキャストデバイス、セットトップボックス、サーバなどに統合され得る。
[0050]ビデオシーケンスは、一般に一連のビデオフレームを含む。ピクチャグループ(GOP)は、概して、一連の1つまたは複数のビデオフレームを備える。GOPは、GOP中に含まれるいくつかのフレームを記述するシンタックスデータを、GOPのヘッダ、GOPの1つまたは複数のフレームのヘッダ、または他の場所中に含み得る。各フレームは、それぞれのフレームについての符号化モードを記述するフレームシンタックスデータを含み得る。ビデオエンコーダ20は、一般に、ビデオデータを符号化するために、個々のビデオフレーム内のビデオブロックに対して動作する。ビデオブロックは、マクロブロックまたはマクロブロックのパーティションに対応し得る。ビデオブロックは、サイズを固定することも変更することもでき、指定のコーディング規格に応じてサイズが異なることがある。各ビデオフレームは複数のスライスを含み得る。各スライスは複数のマクロブロックを含み得、それらはサブブロックとも呼ばれるパーティションに配置され得る。
[0051]一例として、ITU−T H.264規格は、ルーマ成分については16×16、8×8、または4×4、およびクロマ成分については8×8など、様々なブロックサイズのイントラ予測をサポートし、ならびにルーマ成分については16×16、16×8、8×16、8×8、8×4、4×8および4×4、およびクロマ成分については対応するスケーリングされたサイズなど、様々なブロックサイズのインター予測をサポートする。本開示では、「N×N」と「N by N」は、垂直および水平次元に関するブロックのピクセル次元、たとえば、16×16ピクセルまたは16 by 16ピクセルを指すために互換的に使用され得る。一般に、16×16ブロックは、垂直方向に16ピクセルを有し(y=16)、水平方向に16ピクセルを有する(x=16)。同様に、N×Nブロックは、一般に、垂直方向にNピクセルを有し、水平方向にNピクセルを有し、Nは、非負整数値を表す。ブロック中のピクセルは行と列に構成され得る。その上、ブロックは、必ずしも、水平方向に垂直方向と同じ数のピクセルを有する必要はない。たとえば、ブロックは、N×M個のピクセルを備えることができ、必ずしもMがNに等しいとは限らない。16×16未満のブロックサイズは、ITU−T H.264では16×16のマクロブロックのパーティションと呼ばれ得る。
[0052]ビデオブロックは、ピクセル領域におけるピクセルデータのブロックを備え得、あるいは、たとえば、コード化ビデオブロックと予測ビデオブロックとのピクセル差分を表す残差ビデオブロックデータへの離散コサイン変換(DCT)、整数変換、ウェーブレット変換、または概念的に同様の変換などの変換を適用した後の変換領域における変換係数のブロックを備え得る。場合によっては、ビデオブロックは、変換領域における量子化変換係数のブロックを備え得る。
[0053]より小さいビデオブロックは、より良い解像度を与え、高い詳細レベルを含むビデオフレームの位置に使用され得る。一般に、マクロブロック、およびサブブロックと呼ばれることがある様々なパーティションは、ビデオブロックと見なされ得る。さらに、スライスは、マクロブロックおよび/またはサブブロックなど、複数のビデオブロックであると見なされ得る。各スライスはビデオフレームの単独で復号可能なユニットとすることができる。代替的に、フレーム自体を復号可能なユニットとすることができるか、またはフレームの他の部分を復号可能なユニットとして定義することができる。「コード化ユニット」という用語は、フレーム全体、フレームのスライス、シーケンスとも呼ばれるピクチャグループ(GOP)など、ビデオフレームの単独で復号可能な任意のユニット、または適用可能なコーディング技法に従って定義される別の単独で復号可能なユニットを指すことがある。
[0054]高効率ビデオコーディング(HEVC)と現在呼ばれる、新しいビデオコーディング規格を開発するための取り組みが現在進行中である。新たに登場したHEVC規格はH.265と呼ばれる。この規格化の取り組みは、HEVCテストモデル(HM:HEVC Test Model)と呼ばれるビデオコーディングデバイスのモデルに基づく。HMは、たとえば、ITU−T H.264/AVCによるデバイスに勝るビデオコーディングデバイスのいくつかの能力を仮定する。たとえば、H.264が9つのイントラ予測モードを提供するのに対して、HMは、たとえば、イントラ予測コード化されるブロックのサイズに基づいて、33ものイントラ予測モードを提供する。
[0055]HMは、ビデオデータのブロックをコーディングユニット(CU)と称する。ビットストリーム内のシンタックスデータは、ピクセルの数に関して最大のコーディングユニットである最大コーディングユニット(LCU:largest coding unit)を定義し得る。概して、CUは、CUがサイズの差異を有しないことを除いて、H.264のマクロブロックと同様の目的を有する。したがって、CUは複数のサブCUに分割され得る。概して、本開示におけるCUへの言及は、ピクチャの最大コーディングユニットまたはLCUのサブCUを指すことがある。LCUは複数のサブCUに分割され得、各サブCUは複数のサブCUに分割され得る。ビットストリームのシンタックスデータは、CU深さと呼ばれる、LCUが分割され得る最大回数を定義し得る。それに応じて、ビットストリームは最小コーディングユニット(SCU:smallest coding unit)をも定義し得る。本開示ではまた、CU、予測ユニット(PU:prediction unit)、または変換ユニット(TU:transform unit)のいずれかを指すために「ブロック」という用語を使用する。
[0056]LCUは4分木データ構造に関連付けられ得る。概して、4分木データ構造はCUごとに1つのノードを含み、ルートノードはLCUに対応する。CUが4つのサブCUに分割された場合、CUに対応するノードは4つのリーフノードを含み、リーフノードの各々はサブCUのうちの1つに対応する。4分木データ構造の各ノードは、対応するCUのシンタックスデータを与え得る。たとえば、4分木のノードは、そのノードに対応するCUがサブCUに分割されるかどうかを示す分割フラグを含み得る。CUのシンタックス要素は、再帰的に定義され得、CUがサブCUに分割されるかどうかに依存し得る。
[0057]分割されないCUは、1つまたは複数の予測ユニット(PU)を含み得る。概して、PUは、対応するCUの全部または一部分を表し、そのPUについて参照サンプルを取り出すためのデータを含む。たとえば、PUがイントラ予測モード符号化されるとき、PUは、そのPUのためのイントラ予測モードを記述するデータを含み得る。別の例として、PUがインターモード符号化されるとき、PUは、PUの動きベクトルを定義するデータを含み得る。動きベクトルを定義するデータは、たとえば、動きベクトルの水平成分、動きベクトルの垂直成分、動きベクトルの解像度(たとえば、1/4ピクセル精度もしくは1/8ピクセル精度)、動きベクトルが指す参照フレーム、および/または動きベクトルの参照リスト(たとえば、リスト0もしくはリスト1)を記述し得る。また、(1つまたは複数の)PUを定義するCUについてのデータは、たとえば、1つまたは複数のPUへのCUの区分(partitioning)について記述し得る。区分(partitioning)モードは、CUがコーディングされないか、イントラ予測モード符号化されるか、またはインター予測モード符号化されるかとの間で異なり得る。
[0058]1つまたは複数のPUを有するCUは、1つまたは複数の変換ユニット(TU:transform unit)をも含み得る。PUを使用した予測の後に、ビデオエンコーダは、PUに対応するCUの部分の残差値を計算し得る。1組の残差値は、変換され、走査され、量子化されて、1組の変換係数が定義され得る。TUは、変換係数を含むデータ構造を定義する。TUは、必ずしもPUのサイズに制限されるとは限らない。したがって、TUは、同じCUについての対応するPUよりも大きくても小さくてもよい。いくつかの例では、TUの最大サイズは、対応するCUのサイズに対応し得る。
[0059]本開示の技法によれば、ビデオエンコーダ20は、イントラ予測モード符号化を使用して、ビデオデータのいくつかのブロックを符号化することができ、ブロックを符号化するために使用される選択されたイントラ予測モードを示す情報を提供することができる。ビデオエンコーダ20は、PフレームまたはPスライス、およびBフレームまたはBスライスに加えて、たとえば、IフレームまたはIスライスなど、イントラ予測モードを使用して、任意のタイプのフレームまたはスライスのブロックをイントラ予測符号化することができる。あるブロックがイントラ予測モード符号化されるべきであることをビデオエンコーダ20が決定したとき、ビデオエンコーダ20は、最も適切なイントラ予測モードを選択するためにレートひずみ分析を実行することができる。たとえば、ビデオエンコーダ20は、1つまたは複数のイントラ予測モードについてのレートひずみ値を計算し、受容できるレートひずみ特性を有するモードのうちの1つを選択することができる。
[0060]ビデオエンコーダ20は、ブロックの符号化コンテキストを決定するように構成され得る。コンテキストは、ブロックの様々な特性を含み、例えば、ピクセル次元の観点で決定され得るブロックのサイズ、たとえばHEVCの例における2N×2N、N×2N、2N×N、N×Nなどの予測ユニット(PU)タイプ、2N×N/2、N/2×2N、2N×1、1×2Nなどの短距離イントラ予測(SDIP)タイプ、H.264の例におけるマクロブロックタイプ、ブロックについてのコーディングユニット(CU)深さ、またはビデオデータのブロックについてのサイズの他の測定値などの、ブロックの様々な特性を含む。いくつかの例では、コンテキストは、上に隣接するブロック、左に隣接するブロック、左上に隣接するブロック、右上に隣接するブロック、または他の隣接するブロックについてのイントラ予測モードのいずれかまたはすべてに対応することができる。いくつかの例では、コンテキストは、1つまたは複数のブロックについてのイントラ予測モードと、符号化されている現在のブロックのサイズ情報の両方を含むことができる。
[0061]いずれの場合にも、ビデオエンコーダ20は、ブロックのコンテキストを現在のブロックについての様々なコーディング特性にマッピングする構成データを含み得る。たとえば、ブロックのコンテキストに基づいて、構成データは、1つまたは複数の最もありえるイントラ予測モード、イントラ予測モードインデックステーブル、および可変長コード(VLC)テーブルを示し得る。すなわち、構成データは、複数のイントラ予測モードインデックステーブルおよびVLCテーブル、ならびに複数のイントラ予測モードインデックステーブルのうちの1つの指示、および現在のブロックの符号化コンテキストに基づく現在のブロックについてのイントラ予測モードの指示の符号化に使用するためのVLCテーブルのうちの1つの指示を含み得る。構成データは、符号化コンテキストに基づいて、現在のブロックについての1つまたは複数の最もありえるモードの指示をさらに提供することができる。1つの最もありえるイントラ予測モードが常に使用され、2つの最もありえるイントラ予測モードが常に使用され、3つの最もありえるイントラ予測モードが常に使用されるなどのように、使用される最もありえるイントラ予測モードの数を固定してもよく、または、代わりに、いくつかのコンテキストは、最もありえるイントラ予測モードを1つ使用し、他のコンテキストは、最もありえるイントラ予測モードを2つ以上使用するように、最もありえるイントラ予測モードの数は、コンテキスト依存でもよい。
[0062]モードインデックステーブルは、1組のイントラ予測モード、ならびにイントラ予測モードの各々にマッピングされるインデックスを含み得る。いくつかの例では、利用可能なイントラ予測モードの数は、符号化されているブロックのサイズに依存し、したがって、複数のイントラ予測モードインデックステーブルおよびVLCテーブルは、たとえば、符号化されているブロックのサイズおよび/または他の要因に応じて、異なる数のエントリを有する。構成データにおけるVLCテーブルとイントラ予測モードインデックステーブルとの間に1対多の関係があり得る。すなわち、1つまたは複数のイントラ予測モードインデックステーブルから選択されたイントラ予測モードを符号化するために、同じVLCテーブルを使用することができる。このように、VLCテーブルは、複数のイントラ予測モードインデックステーブルに再利用することができる。同様に、たとえば、2つ以上のコンテキストが同じ組のイントラ予測モード、およびそれらのコンテキストにおいて使用されるイントラ予測モードの類似または同一の相対的可能性を共有するときなど、同じイントラ予測モードインデックステーブルは、様々なコンテキストにおいて再利用することができる。その上、いくつかの場合において、同じイントラ予測モードインデックステーブルおよびVLCテーブルは、特定のサイズのすべてのブロックに使用されてもよく、最もありえるイントラ予測モードは、たとえば、特定のサイズのブロックに隣接するブロックについてのイントラ予測モードに基づいて決定することができる。
[0063]いずれの場合にも、この開示の技法によれば、ビデオエンコーダ20は、ブロックについての符号化コンテキスト、ならびにブロックについての符号化コンテキストに基づくイントラ予測モードインデックステーブルおよびVLCテーブルに基づいて、あるブロックについての1つまたは複数の最もありえるモードを決定することができる。ブロックの符号化に使用するイントラ予測モードを選択した後、ビデオエンコーダ20は、選択されたイントラ予測モードがブロックについての最もありえるイントラ予測モードであるかどうかを決定することができる。選択されたモードが最もありえるモードである場合、ビデオエンコーダ20は、シングルビットのコードワード(たとえば、「0」または「1」など)または一連のビットを使用してイントラ予測モードをシグナリングすることができる。
[0064]さらに、最もありえるイントラ予測モードは、ブロックの符号化コンテキストに基づいてブロックのために選択されたイントラ予測モードインデックステーブル内のインデックス値を有し得る。特に、イントラ予測モードインデックステーブルは、テーブル内の各イントラ予測モードに対してユニークなインデックス値を含み得る。mは最もありえるイントラ予測モードのインデックスの値を表すとする。最もありえるイントラ予測モードについてのコードワードは、個別にシグナリングされ得るので、VLCテーブルは、最もありえるイントラ予測モードについての追加のコードワードを含む必要はない。したがって、使用可能なイントラ予測モードのセットが0からKにわたるインデックスの範囲にマッピングされるK+1個のメンバーを有する場合、VLCテーブルは、K個のコードワードを0からK−1のインデックスに割り当てることができる。
[0065]この例示的な方式に従ってコードワードを決定するために、選択されたイントラ予測モードが最もありえるイントラ予測モードでなく、モードインデックス値jを有すると仮定する。値nはjに対応する変更されたイントラ予測モードのインデックスを表すとする。前の記述によれば、インデックスnにマッピングされたコードワードは、選択されたイントラ予測モードjを示すために、エンコーダからデコーダにシグナリングされる。選択されたイントラ予測モードについてのモードインデックス値が最もありえるイントラ予測モードのモードインデックス値より小さい場合、ビデオエンコーダ20は、jに対応するコードワードを使用して現在のブロックを符号化するために使用されるイントラ予測モードの指示を符号化する。言い換えれば、j<mである場合、n=jである。一方、選択されたイントラ予測モードについてのモードインデックス値が最もありえるイントラ予測モードのモードインデックス値以上である場合、ビデオエンコーダ20は、j−1に対応するコードワードを使用して現在のブロックを符号化するために使用されるイントラ予測モードの指示を符号化する。言い換えれば、j≧mである場合、n=j−1である。
[0066]2つ以上の最もありえるイントラ予測モードが選択される例では、ビデオエンコーダ20は、第1のビット(たとえば「0」または「1」)を使用して、選択されたモードが決定された最もありえるイントラ予測モードのうちの1つであるかどうかを、符号化されたビットストリームでシグナリングする。選択されたモードが決定された最もありえるイントラ予測モードのうちの1つである場合、ビデオエンコーダ20は、第2のビットを使用して、最もありえるイントラ予測モードのうちどれが選択されたモードであるかをシグナリングする。選択されたモードが決定された最もありえるイントラ予測モードのうちの1つではない場合、ビデオエンコーダ20は、VLCテーブルからのコードワードを使用して他のイントラ予測モードのうちどれが選択されたモードであるかをシグナリングする。再度、一般性の喪失なしに、第1のビットが、選択されたモードは最もありえるイントラ予測モードのうちの1つであることを示す「0」の値を有し、ビデオエンコーダ20が2つの最もありえるイントラ予測モードを決定することを仮定すると、ビデオエンコーダ20は、2つの最もありえるイントラ予測モードのうちのどちらが選択されたモードであるかを「00」または「01」の値でシグナリングすることができ、この場合、最初の0は、第1のビットを表す。選択されたモードが最もありえるイントラ予測モードのうちの1つではない場合、ビデオエンコーダ20は、第1のビットの「1」と、続いてコードワードとをシグナリングすることによって、選択されたモードをシグナリングすることができる。
[0067]さらに、2つの最もありえるイントラ予測モードは、ブロックの符号化コンテキストに基づいてブロックに対し選択されたイントラ予測モードインデックステーブル内にインデックス値を有し得る。特に、イントラ予測モードインデックステーブルは、テーブル内の各イントラ予測モードに対しユニークなインデックス値を含み得る。m1は、第1の最もありえるイントラ予測モードのインデックスの値を表し、m2は、第2の最もありえるイントラ予測モードのインデックスの値を表すとする。上記で説明したように、第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードについてのコードワードは第1のビットおよび第2のビットを使用してシグナリングされ得るので、VLCテーブルは、第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードについての追加のコードワードを含む必要はない。したがって、使用可能なイントラ予測モードのセットが0からKにわたるインデックスの範囲にマッピングされるK+1個のメンバーを有する場合、VLCテーブルは、K−1個のコードワードを0からK−2のインデックスに割り当てることができる。
[0068]2つの最もありえるモードが識別されるこの例示的な方式に従ってコードワードを決定するために、選択されたイントラ予測モードが最もありえるイントラ予測モードのうちの1つではなく、モードインデックス値jを有すると仮定する。値nはjに対応する変更されたイントラ予測モードを表すとする。前の記述によれば、インデックスnにマッピングされたコードワードは、選択されたイントラ予測モードjを示すために、エンコーダからデコーダにシグナリングされる。選択されたイントラ予測モードについてのモードインデックス値が第1の最もありえるイントラ予測モードのモードインデックス値より小さい場合、ビデオエンコーダ20は、jに対応するコードワードを使用して現在のブロックを符号化するために使用されるイントラ予測モードの指示を符号化することができる。言い換えれば、j<m1である場合、n=jである。一方、選択されたイントラ予測モードについてのモードインデックス値が第1の最もありえるイントラ予測モードのモードインデックス値以上であるが、第2の最もありえるイントラ予測モードより小さい場合、ビデオエンコーダ20は、j−1に対応するコードワードを使用して現在のブロックを符号化するために使用されるイントラ予測モードの指示を符号化することができる。言い換えれば、j≧m1およびj<m2である場合、n=j−1である。最後に、選択されたイントラ予測モードについてのモードインデックス値が第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードのモードインデックス値より大きい場合、ビデオエンコーダ20は、j−2に対応するコードワードを使用して現在のブロックを符号化するために使用されるイントラ予測モードの指示を符号化することができる。言い換えれば、j≧m1およびj≧m2である場合、n=j−2である。最もありえるモードがVLCテーブルに含まれないということを考慮するようにインデックスを再割り当てすることによって、残りのイントラ予測モードについてのVLCテーブルをより効率的に構築することができ、これは、1つまたは複数の選択されなかった最もありえるモードが、そうでない場合に、選択されたモードより小さい定義されたVLCインデックスをもつとき、ビットの節約になり得る。
[0069]ビデオエンコーダ20は、いくつかの例では、コンテキストに基づいて、最もありえるモードでイントラ予測モードの選択のための分析を開始するように構成され得る。最もありえるモードが適切なレートひずみ特性を達成するとき、いくつかの例では、ビデオエンコーダ20は、最もありえるモードを選択する。他の例では、ビデオエンコーダ20は、最もありえるモードで選択プロセスを開始する必要はない。
[0070]予測データと残差データとを生成するためのイントラ予測コーディングまたはインター予測コーディングの後、および変換係数を生成するための(H.264/AVCで使用される4×4または8×8整数変換、あるいは離散コサイン変換DCTなどの)任意の変換の後、変換係数の量子化が実行され得る。量子化は、概して、係数を表すために使用されるデータ量をできるだけ低減するために変換係数を量子化するプロセスを指す。量子化プロセスは、係数の一部または全部に関連するビット深度を低減することができる。たとえば、量子化中にnビット値がmビット値に切り捨てられ得、この場合、nはmよりも大きい。
[0071]量子化の後に、たとえば、コンテンツ適応型可変長コーディング(CAVLC)、コンテキスト適応型2値算術コーディング(CABAC)、または別のエントロピーコーディング方法に従って、量子化データのエントロピーコーディングが実行され得る。エントロピーコーディング用に構成された処理ユニットまたは別の処理ユニットは、量子化係数のゼロランレングスコーディング、および/またはコード化ブロックパターン(CBP)値、マクロブロックタイプ、コーディングモード、(フレーム、スライス、マクロブロック、またはシーケンスなどの)コード化ユニットの最大マクロブロックサイズなどのシンタックス情報の生成など、他の処理機能を実行し得る。
[0072]ビデオデコーダ30は、最終的に、たとえば、モデム28および受信機26から符号化ビデオデータを受信し得る。本開示の技法によれば、ビデオデコーダ30は、ビデオデータのブロックを符号化するために使用されるイントラ予測モードを表すコードワードを受信し得る。ビデオデコーダ30は、ビデオエンコーダ20と実質的に同様の方法でブロックについてのコーディングコンテキストを決定するように構成される。さらに、ビデオデコーダ30は、たとえば、最もありえるモードの指示、イントラ予測モードインデックステーブル、および各コーディングコンテキストに対するVLCテーブルなど、ビデオエンコーダ20と同様の構成データを含み得る。
[0073]1つの最もありえるイントラ予測モードを使用するとき、ブロックを符号化するために使用されるイントラ予測モードが最もありえるモードであるかどうかを示すために、シングルビットが使用され得る。選択されたモードが最もありえるモードではないと決定された場合、ビデオデコーダ30は、全体的にビデオエンコーダ20とは逆の方法で、ビデオデータのブロックを符号化するために使用されるイントラ予測モードを決定し得る。
[0074]具体的には、この場合も、nは、VLCテーブルにおいて受信されたコードワードがマッピングされる変更されたイントラ予測モードのインデックスを表し、jは、コード化ブロックを復号するために使用されるイントラ予測モードのモードインデックスを表し、mは、最もありえるモードのモードインデックスを表すとする。変更されたイントラ予測モードインデックスnが最もありえるモードのモードインデックスmより小さい場合、ビデオデコーダ30は、インデックスnを有するイントラ予測モードを使用してコード化ブロックを復号する。すなわち、n<mである場合、j=nである。一方、変更されたイントラ予測モードインデックスnが最もありえるモードのモードインデックスm以上である場合、ビデオデコーダ30は、インデックスn+1を有するイントラ予測モードを使用してコード化ブロックを復号することができる。言い換えれば、n≧mである場合、j=n+1である。
[0075]2つ以上の最もありえるイントラ予測モードを使用するとき、選択されたモードが2つの最もありえるイントラ予測モードのうちの1つであることを示す第1のビットをコードワードが備える場合、ビデオデコーダ30は、2つ以上の最もありえるイントラ予測モードのうちどれが選択されたモードに対応するかを識別する追加のビットに基づいて、コード化ブロックを符号化するために使用されるイントラ予測モードを決定し得る。選択されたモードが2つの最もありえるイントラ予測モードのうちの1つではないことを第1のビットが示す場合、ビデオデコーダ30は、全体的にビデオエンコーダ20のものとは逆の方法で、ビデオデータのブロックを符号化するために使用されるイントラ予測モードを決定し得る。
[0076]具体的には、この場合も、nは、VLCテーブルにおいて受信されたコードワードがマッピングされる変更されたイントラ予測モードのインデックスを表し、jは、コード化ブロックを復号するために使用されるイントラ予測モードのモードインデックスを表し、m1は、第1の最もありえるモードのモードインデックスを表し、m2は、第2の最もありえるモードのモードインデックスを表すとする。上述のように、m1のモードインデックスがm2のモードインデックスよりも小さいと仮定することができる。変更されたイントラ予測モードインデックスnが第1の最もありえるモードのモードインデックスm1より小さい場合、ビデオデコーダ30は、インデックスnを有するイントラ予測モードを使用してコード化ブロックを復号し得る。すなわち、n<m1である場合、j=nである。そうではなく、「変更されたイントラ予測モードインデックス+1」(n+1)が第2の最もありえるモードのモードインデックスm2より小さい場合、ビデオデコーダ30は、インデックスn+1を有するイントラ予測モードを使用してコード化ブロックを復号し得る。言い換えれば、n+1<m2である場合、j=n+1である。そうでない場合、ビデオデコーダ30は、インデックスn+2を有するイントラ予測モードを使用してコード化ブロックを復号し得る。言い換えれば、n+1≧m2である場合、j=n+2である。
[0077]2つの最もありえるモードについて、ビデオエンコーダ20によって実行される、変更されたイントラ予測モードインデックスに対するモードインデックスのマッピングは、したがって、以下の擬似コードによって表すことができる。
Figure 2013539940
[0078]N個の最もありえるモードについて、m1が第1の最もありえるモードを表し、mNがN番目の最もありえるモードを表す場合、ビデオエンコーダ20によって実行される、変更されたイントラ予測モードインデックスに対するモードインデックスのマッピングは、したがって、以下の擬似コードによって表すことができる。
Figure 2013539940
[0079]2つの最もありえるモードについて、ビデオデコーダ30によって実行される、モードインデックスに対する変更されたイントラ予測モードインデックスのマッピングは、したがって、以下の擬似コードによって表すことができる。
Figure 2013539940
[0080]N個の最もありえるモードについて、ビデオデコーダ30によって実行される、モードインデックスに対する変更されたイントラ予測モードインデックスのマッピングは、したがって、以下の擬似コードによって表すことができる。
Figure 2013539940
[0081]本開示の技法によれば、モードは、対応するコードワードを示すコードワードインデックスに直接マッピングすることもできる。一般に、小さい(lower)コードワードインデックス値は、より短いコードワードに割り当てられ、大きい(higher)コードワードインデックス値は、より長いコードワードに割り当てられる。上述した変更されたイントラ予測モードインデックスと同様の方法で、モードインデックスに対応するインデックスでコードワードを送る代わりに、変更されたコードワードインデックスでコードワードを送ることによって、ビットの節約を達成することができ、この場合、変更は、最もありえるモードではないモードを示すために、最もありえるモードに当初関連付けられたコードワードインデックスを使用した結果である。上記で説明したように、最もありえるモードは、最初のビットまたは一連のビットを使用してシグナリングされるので、最もありえるモードは、最もありえるモードのうちの1つではないモードのコードワードインデックスをシグナリングするとき、考慮から除外することができる。その結果、最もありえるモードのうちの1つに当初マッピングされたコードワードインデックスを使用して、最もありえるモードのうちの1つではないモードを示すことができる。
[0082]たとえば、上記の変更されたイントラ予測モードと同様に、2つの最もありえるイントラ予測モードが使用されると仮定すると、使用可能なイントラ予測モードのセットが0からKにわたるコードワードインデックスの範囲にマッピングされるK+1個のメンバーを有する場合、変更されたコードワードインデックスのテーブルは、K−1個のコードワードを0からK−2までのコードワードインデックスに割り当てる。
[0083]Cがコードワードインデックスを表し、Cmodが変更されたコードワードインデックスを表すと仮定する。さらに、Cm1が最もありえるモードの最も小さい(lowest)コードワードインデックスを表し、Cm2が最もありえるモードに対応する第2に最も小さい(lowest)コードワードインデックスを表し、以下同様であると仮定する。以下でより詳細に説明するように、コードワードインデックスに対するモードのマッピングは、動的でもよい。したがって、最も小さいモードインデックスをもつ第1の最もありえるモードは、最も小さいコードワードインデックスを有していない場合もある。したがって、必ずしもCm1は第1の最もありえるモードに対応しているとは限らず、Cm2は第2の最もありえるモードに対応しているとは限らず、以下同様であり得る。N個の最もありえるモードについて、ビデオエンコーダ20によって実行される、変更されたコードワードインデックスに対するコードワードインデックスのマッピングは、したがって、以下の擬似コードによって表すことができる。
Figure 2013539940
[0084]N個の最もありえるモードについて、ビデオデコーダ30によって実行される、コードワードインデックスに対する変更されたコードワードインデックスのマッピングは、したがって、以下の擬似コードによって表すことができる。
Figure 2013539940
[0085]ビデオエンコーダ20およびビデオデコーダ30はそれぞれ、適用可能なとき、1つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、ディスクリート論理回路、ソフトウェア、ハードウェア、ファームウェアなど、様々な好適なエンコーダまたはデコーダ回路のいずれか、あるいはそれらの任意の組合せとして実装され得る。ビデオエンコーダ20およびビデオデコーダ30の各々は1つまたは複数のエンコーダまたはデコーダ中に含まれ得、そのいずれも複合ビデオエンコーダ/デコーダ(コーデック)の一部として統合され得る。ビデオエンコーダ20および/またはビデオデコーダ30を含む装置は、集積回路、マイクロプロセッサ、および/またはセルラー電話などのワイヤレス通信デバイスを備え得る。
[0086]図2は、イントラ予測モードを示す情報をコード化するための技法を実装し得るビデオエンコーダ20の一例を示すブロック図である。ビデオエンコーダ20は、マクロブロックあるいはマクロブロックのパーティションまたはサブパーティションを含むビデオフレーム内のブロックのイントラコーディングおよびインターコーディングを実行し得る。イントラコーディングは、所与のビデオフレーム内のビデオの空間的冗長性を低減または除去するために空間的予測に依拠する。インターコーディングは、ビデオシーケンスの隣接フレーム内のビデオの時間的冗長性を低減または除去するために時間的予測に依拠する。イントラ予測(I)モードは、いくつかの空間ベース圧縮モードのいずれかを指し、単方向予測(Pモード)または双方向予測(Bモード)などのインターモードは、いくつかの時間ベース圧縮モードのいずれかを指し得る。図2にはインターモード符号化のための構成要素が示されているが、ビデオエンコーダ20はイントラ予測モード符号化のための構成要素をさらに含み得ることを理解されたい。ただし、簡潔および明快のために、そのような構成要素は示されていない。
[0087]図2に示すように、ビデオエンコーダ20は、符号化されるビデオフレーム内の現在のビデオブロックを受信する。図2の例では、ビデオエンコーダ20は、動き補償ユニット44と、動き推定ユニット42と、メモリ64と、加算器50と、変換ユニット52と、量子化ユニット54と、エントロピーコーディングユニット56とを含む。ビデオブロック再構成のために、ビデオエンコーダ20はまた、逆量子化ユニット58と、逆変換ユニット60と、加算器62とを含む。再構成されたビデオからブロッキネスアーティファクトを除去するためにブロック境界をフィルタ処理するデブロッキングフィルタ(図2に図示せず)も含まれ得る。所望される場合、デブロッキングフィルタは、一般に、加算器62の出力をフィルタ処理するであろう。
[0088]符号化プロセス中に、ビデオエンコーダ20はコーディングされるビデオフレームまたはスライスを受信する。フレームまたはスライスは、複数のビデオブロックに分割され得る。動き推定ユニット42および動き補償ユニット44は、時間圧縮を行うために、1つまたは複数の参照フレーム中の1つまたは複数のブロックに対して、受信したビデオブロックのインター予測コーディングを実行する。イントラ予測ユニット46は、空間圧縮を行うために、コーディングされるブロックと同じフレームまたはスライス中の1つまたは複数の隣接ブロックに対して、受信したビデオブロックのイントラ予測コーディングを実行し得る。
[0089]モード選択ユニット40は、たとえば、誤差結果に基づいて、およびコード化されている現在のブロックを含むフレームまたはスライスのフレームまたはスライスタイプに基づいて、コーディングモード、すなわち、イントラまたはインターのうちの1つを選択し、得られたイントラコード化ブロックまたはインターコード化ブロックを、残差ブロックデータを生成するために加算器50に供給し、参照フレームまたは参照スライス中で使用するための符号化ブロックを再構成するために加算器62に供給し得る。
一般に、イントラ予測は、前にコード化された隣接ブロックに対して現在のブロックを予測することを含み、一方、インター予測は、現在のブロックを時間的に予測するために、動き推定および動き補償を含む。
[0090]動き推定ユニット42および動き補償ユニット44は、ビデオエンコーダ20のインター予測要素を表す。動き推定ユニット42と動き補償ユニット44とは、高度に統合され得るが、概念的な目的のために別々に示してある。動き推定は、ビデオブロックの動きを推定する動きベクトルを生成するプロセスである。動きベクトルは、たとえば、現在のフレーム(または、他のコード化ユニット)内のコーディングされている現在のブロックに対する予測参照フレーム(または、他のコード化ユニット)内の予測ブロックの変位を示し得る。予測ブロックは、絶対値差分和(SAD:sum of absolute difference)、2乗差分和(SSD:sum of square difference)、または他の差分メトリックによって判断され得るピクセル差分に関して、コーディングされるブロックにぴったり一致することがわかるブロックである。動きベクトルはまた、マクロブロックのパーティションの変位を示し得る。動き補償は、動き推定によって決定された動きベクトルに基づいて予測ブロックをフェッチまたは生成することを含み得る。この場合も、いくつかの例では、動き推定ユニット42と動き補償ユニット44とは機能的に統合され得る。
[0091]動き推定ユニット42は、ビデオブロックを参照フレームストア64中の参照フレームのビデオブロックと比較することによって、インターコード化フレームのビデオブロックに対し動きベクトルを計算する。動き補償ユニット44はまた、参照フレーム、たとえば、IフレームまたはPフレームのサブ整数ピクセルを補間し得る。ITU H.264規格は、一例として、符号化されている現在のフレームよりも前の表示順序を有する参照フレームを含むリスト0、および符号化されている現在のフレームよりも後の表示順序を有する参照フレームを含むリスト1の2つのリストを記述する。したがって、参照フレームストア64に記憶されたデータは、これらのリストに従って編成され得る。
[0092]動き推定ユニット42は、参照フレームストア64からの1つまたは複数の参照フレームのブロックを現在のフレーム、たとえば、PフレームまたはBフレームの符号化すべきブロックと比較する。参照フレームストア64中の参照フレームがサブ整数ピクセルについての値を含むとき、動き推定ユニット42によって計算される動きベクトルは参照フレームのサブ整数ピクセルロケーションを参照し得る。動き推定ユニット42および/または動き補償ユニット44は、サブ整数ピクセル位置についての値が参照フレームストア64に記憶されていない場合、参照フレームストア64に記憶された参照フレームのサブ整数ピクセル位置の値を計算するように構成することもできる。動き推定ユニット42は、計算された動きベクトルをエントロピーコーディングユニット56と動き補償ユニット44とに送る。動きベクトルによって識別される参照フレームブロックは予測ブロックと呼ばれることがある。動き補償ユニット44は、インター予測ブロックに基づいて予測データを計算し得る。
[0093]イントラ予測ユニット46は、上記で説明したように、動き推定ユニット42と動き補償ユニット44とによって実行されるインター予測の代替として、現在のブロックをイントラ予測し得る。特に、イントラ予測ユニット46は、現在のブロックの符号化に使用するためのイントラ予測モードを決定することができる。いくつかの例では、イントラ予測ユニット46は、たとえば別々の符号化パスの間中に、様々なイントラ予測モードを使用して、現在のブロックを符号化し、イントラ予測ユニット46(または、いくつかの例において、モード選択ユニット40)は、テストされたモードから使用するのに適切なイントラ予測モードを選択し得る。たとえば、イントラ予測ユニット46は、様々なテストされたイントラ予測モードに対しレートひずみ分析を使用してレートひずみ値を計算し、テストされたモードの中で最良のレートひずみ特性を有するイントラ予測モードを選択する。レートひずみ分析は、一般に、符号化されたブロックと、当該符号化されたブロックを生成するために符号化された符号化されていないオリジナルのブロックとの間のひずみ(またはエラー)の量、ならびに、符号化されたブロックを生成するために使用されるビットレート(すなわち、ビット数)を決定する。イントラ予測ユニット46は、どのイントラ予測モードがブロックについての最良のレートひずみ値を呈するかを決定するために、様々な符号化されたブロックについてのひずみおよびレートから比率を計算し得る。
[0094]いずれの場合も、あるブロックについてイントラ予測モードを選択した後、イントラ予測ユニット46は、エントロピーコーディングユニット56に、当該ブロックについて選択されたイントラ予測モードを示す情報を提供する。エントロピーコーディングユニット56は、本開示の技法に従って選択されたイントラ予測モードを示す情報を符号化し得る。図2に示すように、ビデオエンコーダ20は、複数のイントラ予測モードインデックステーブルおよび複数の変更されたイントラ予測モードインデックステーブル(コードワードマッピングテーブルとも呼ばれる)と、様々なブロックについての符号化コンテキストの定義と、最もありえるイントラ予測モード、イントラ予測モードインデックステーブル、および各コンテキストについての使用する変更されたイントラ予測モードインデックステーブルの指示とを含む構成データ66を含みえる。
[0095]以下の表1は、イントラ予測モードインデックス、対応するイントラ予測モード、およびどのモードが特定のコンテキストについて最もありえるモードであるかの指示の一例を表す。表1は、この特定の例において、各モードインデックスにマッピングする変更されたイントラ予測モードインデックスも示す。表2は、表1のモードインデックスに全体的に対応する変更されたイントラ予測モードインデックスにコードワードをマッピングする例示的なマッピングテーブルを提供する。上記で説明したように、2つ以上の最もありえるモードが使用されてもよいが、表1および表2の例は、ただ1つの最もありえるモードが使用されると仮定する。最もありえるモードが1つ使用されるため、表2は、表1よりも1つ少ないエントリを含む。最もありえるモードは、残りのモードとは別にシグナリングされるので、モードインデックス5は、対応する変更されたイントラ予測モードインデックスを有していない。同様に、表2は、最もありえるモードについてのコードワードを含む必要はない。
Figure 2013539940
Figure 2013539940
[0096]例として、mは表1において最もありえるモードのモードインデックスを表し、nはjに対応する変更されたイントラ予測モードのインデックスを表すとする。選択されたモードが最もありえるモードである場合、第1のビット(たとえば「0」)は、この例では、モードを表すために使用され、モードは、表1によって示されるように、最もありえるモードとして決定される(この例では、垂直−右)。0以外の第1のビット(すなわち「1」)が送られる場合、モードは、最もありえるモードではない。nは、モードを表すために送られるコードワードによって示される変更されたイントラ予測モードインデックスに対応するとする。インデックスnにマッピングされたコードワードは、選択されたイントラ予測モードjを示すために、エンコーダからデコーダにシグナリングされる。選択されたイントラ予測モードについてのモードインデックス値が最もありえるイントラ予測モードのモードインデックス値より小さい場合、ビデオエンコーダ20は、jに対応するコードワードを使用して現在のブロックを符号化するために使用されるイントラ予測モードの指示を符号化する。言い換えれば、j<mである場合、n=jである。一方、選択されたイントラ予測モードについてのモードインデックス値が最もありえるイントラ予測モードのモードインデックス値以上である場合、ビデオエンコーダ20は、j−1に対応するコードワードを使用して現在のブロックを符号化するために使用されるイントラ予測モードの指示を符号化する。言い換えれば、j≧mである場合、n=j−1である。
[0097]デコーダ、たとえばデコーダ30は、一般に、エンコーダ20の逆のマッピングを実行する。したがって、デコーダ30は、n<mである場合、モードインデックスがnに等しいことを決定する。一方、n≧mである場合、モードインデックスはn+1に等しい。言い換えれば、変更されたイントラ予測モードインデックス(たとえば、送られるコードワードに対応する表2からの変更されたイントラ予測モードインデックス)が(この例では、表1からの)最もありえるモードのインデックス以上である場合、イントラ予測モードは、事実上、nではなく、n+1によって示される。このようにして、現在のブロックを符号化するために使用されるイントラ予測モードについてのモードインデックス(たとえば、n+1)が最もありえる符号化モードのインデックス(m)よりも大きいとき、選択されたイントラ予測モードを表すために使用されるコードワードは、現在のブロックを符号化するために使用されるイントラ予測モードについてのモードインデックス(n+1)よりも1小さい変更されたイントラ予測モードインデックス(n)に対応する。
[0098]表1および表2の例に関する一例として、垂直−右の最もありえるモードを示すコンテキストを有する現在のブロックに対して、選択されたモードが水平−下であると仮定する。この例では、最もありえるモードのインデックスmは5であり、一方、(表1による)選択されたモードについてのモードインデックスは8である。この例では、選択されたモードについてのモードインデックスは、最もありえるモードについてのモードインデックスよりも大きいので、n=j−1であり、この場合、nは、変更されたイントラ予測モードのインデックスであり、7に等しい。したがって、表2では、ビデオエンコーダ20は、この例では、選択されたモードを表すために、コードワード11111を使用する。コードワード11111は、選択されたモードが最もありえるモードではないことを示す最初のビットに続く。したがって、ビデオデコーダ30(図1および図4)は、最初のビットとコードワード11111とを受信し、nの値が7であることを決定する。この例では7が5よりも大きい(すなわち、n≧m)ので、ビデオデコーダ30はモードインデックスn+1を有するモード、この例ではモードインデックス8を有し、水平−下に対応するモードを表1から取り出す。
[0100]別の例として、この場合も、表1および表2の例に関して、現在のブロックについて、選択されたモードがDCであると仮定する。同じく、この例では、最もありえるモードのインデックスmは5であり、一方、(表1による)選択されたモードについてのモードインデックスは0である。この例では、選択されたモードについてのモードインデックスが最もありえるモードについてのモードインデックスより小さいので、モードインデックスはnに等しく、この場合、nは、変更されたイントラ予測モードインデックスである。したがって、表2では、ビデオエンコーダ20は、この例では、選択されたモードを表すために、コードワード0を使用する。コードワード0は、選択されたモードが最もありえるモードではないことを示す最初のビットに続く。したがって、ビデオデコーダ30(図1および図4)は、最初のビットとコードワード0とを受信し、nの値が0であることを決定する。この例では0が5より小さい(すなわち、n<m)ので、ビデオデコーダ30は、モードインデックスnを有するモード、この例ではモードインデックス0を有し、DCに対応するモードを表1から取り出す。
[0101]以下の表3は、イントラ予測モードインデックス、対応するイントラ予測モード、およびどのモードが特定のコンテキストについて最もありえるモードであるかの指示の一例を表す。表3は、この特定の例では、各モードインデックスにマッピングする変更されたイントラ予測モードインデックスも示す。表4は、表3のモードインデックスに全体的に対応する変更されたイントラ予測モードインデックスにコードワードをマッピングする例示的なマッピングテーブルを提供する。上記で説明したように、3つ以上の最もありえるモードが使用されてもよいが、表3および表4の例は、最もありえるモード2つのみが使用されると仮定する。最もありえるモードが2つ使用されるため、表4は、表3よりも2つ少ないエントリを含む。
Figure 2013539940
Figure 2013539940
[0102]特に、m1は表3における第1の最もありえるモードのモードインデックスを表し、m2は第2の最もありえるモードのモードインデックスを表すとする。選択されたモードが最もありえるモードのうちの1つである場合、モードが2つの最もありえるモードのうちの1つであることをシグナリングするために、第1のビット(たとえば「0」)が使用される。モードが2つの最もありえるモードのうちの1つである場合、第2のビットは、2つの最もありえるモードのうちのどちらが選択されたモードに対応するかをシグナリングするために使用される。したがって、2つの最もありえるモードは、それぞれ「00」および「01」の最初のビットシーケンスでシグナリングすることができる。「0」以外の第1のビット(すなわち「1」)が送られる場合、選択されたモードは、2つの最もありえるモードのうちの1つではない。nはモードを表すために送られるコードワードによって示される変更されたイントラ予測モードインデックスに対応するとする。
[0103]ビデオエンコーダ20は、選択されたモードのモードインデックス(j)を決定し、モードインデックスを変更されたモードインデックス(n)にマッピングすることができる。j≧m2である場合、n=j−2である。そうではなく、j≧m1である場合、n=j−1である。そうでない場合、n=jである。ビデオデコーダ30は、変更されたイントラ予測モードインデックス(n)を受信し、最初にnをm1と比較することができる。n<m1である場合、モードインデックス(j)はnに等しい。nがm1以上である場合、n+1はm2と比較することができる。n+1<m2である場合、モードインデックスはn+1に等しい。そうでない場合、モードインデックスは、n+2に等しい。
[0104]表3および表4の例に関する一例として、垂直−左および対角下/左の最もありえるモードを示すコンテキストを有する現在のブロックについて、選択されたモードが水平−下であると仮定する。この例では、最もありえるモードのインデックスm1およびm2は4および6であり、(表3による)選択されたモードについてのモードインデックスjは8である。この例では、選択されたモードについてのモードインデックスが両方の最もありえるモードについてのモードインデックスよりも大きいので、モードインデックスjはn+2に等しく、この場合、nは、表4における変更されたイントラ予測モードのインデックスに等しい。したがって、モードインデックスjが8に等しい場合、n=6である。したがって、ビデオエンコーダ20は、この例では、選択されたモードを表すために、コードワード1111を使用する。したがって、ビデオデコーダ30(図1および図4)は、コードワード1111を受信し、nの値が6であることを決定する。この例では、6が4以上(すなわちn≧m1)であり、6+1が6以上である(すなわち、n+1≧m2)であるので、ビデオデコーダ30は、n+2に等しいモードインデックスjを有するモード、この例ではモードインデックス8を有し、水平−下に対応するモードを表3から取り出す。
[0105]別の例として、この場合も、表3および表4の例に関して、現在のブロックについて、選択されたモードがDCであると仮定する。この場合も、この例では、最もありえるモードのインデックスm1およびm2は4および6であり、(表3による)選択されたモードについてのモードインデックスjは0である。この例では、選択されたモードについてのモードインデックスが両方の最もありえるモードについてのモードインデックスより小さい(すなわち、n<m1)ので、モードインデックスjはnに等しく、この場合、nは、表4における変更されたイントラ予測モードのインデックスに等しい。したがって、nは、0に等しい。したがって、表4に基づいて、ビデオエンコーダ20は、この例では、選択されたモードを表すために、コードワード0を使用する。コードワード0は、選択されたモードが最もありえるモードではないことを示す最初のビットまたは一連のビットに続く。したがって、ビデオデコーダ30(図1および図4)は、最初のビットまたは一連のビットとコードワード0とを受信し、nの値が0であることを決定する。この例では0が4および6未満(すなわち、n<m1)なので、ビデオデコーダ30は、nに等しいモードインデックスjを有するモード、この例では、モードインデックス0を有し、DCに対応するモードを表3から取り出す。
[0106]さらに別の例として、表3および表4の例に関して、現在のブロックについて、選択されたモードが垂直−右であると仮定する。この例では、最もありえるモードについてのインデックスm1およびm2は4および6であり、(表3による)選択されたモードについてのモードインデックスjは5である。この例では、選択されたモードについてのモードインデックスが第1の最もありえるモードについてのモードインデックス以上であるが、第2の最もありえるモードについてのモードインデックスより小さいので、モードインデックスjはn+1に等しく、この場合、nは、表4における変更されたイントラ予測モードのインデックスに等しい。したがって、モードインデックスjが5である場合、n=4である。したがって、ビデオエンコーダ20は、この例では、選択されたモードを表すために、コードワード1101を使用する。コードワード1101は、選択されたモードが最もありえるモードではないことを示す最初のビットまたは一連のビットに続く。したがって、ビデオデコーダ30(図1および図4)は、最初のビットおよび一連のビットと、コードワード1101とを受信し、nの値が4であることを決定する。この例では、4が4以上であるが、4+1が6未満(すなわち、n≧m1、しかしn+1<m2)であるので、ビデオデコーダ30は、n+1に等しいモードインデックスjを有するモード、この例ではモードインデックス5を有し、垂直−右に対応するモードを表3から取り出す。
[0107]表1、表2、表3、および表4は単に、最もありえるモード、モードのインデックス、および様々なインデックスに割り当てられるコードワードの表の例にすぎないことを理解されたい。他の例では、たとえば、あるブロックの符号化コンテキストに基づいて、他のモードが最もありえると決定され得る。たとえば、最もありえるモードは、左および上に隣接するブロックを符号化するために使用される符号化モードに基づいて決定することができる。構成データ66は、概して表1および表3の例に類似した、最もありえるモードとして識別される異なる符号化モードに関連付けられた複数の異なるテーブルを含み得る。同様に、構成データ66は、特定のモードの使用の確率がそのコードワードの長さに反比例するように、最もありえるモードを比較的短いコードワード(たとえば、1または2ビットのコードワード)にマッピングし、残りのインデックスをコードワードにマッピングする表2および表4などの複数のコードワードマッピングテーブルを含み得る。所与の例についての最もありえるモードおよびコーディングテーブルは、その例で使用される符号化モードの代わりに、またはそれに加えて、コンテキストのタイプに基づいて定義することもできる。これらの方法では、符号化モードが比較的短いコードワードにマッピングされる確率が比較的高いため、ビットの節約を達成することができる。
[0108]いくつかの実装形態では、たとえば表2および表4に示される例など、変更されたイントラ予測モードインデックスに対するコードワードのマッピングは、より頻繁に生じる変更されたイントラ予測モードインデックスに、より短いコードワードが動的に割り当てられるように、適応型でもよい。いくつかの例では、特定のコンテキストでは、各変更されたイントラ予測モードインデックスが選択される回数が、カウンタを使用して追跡され、選択の回数に基づいて、より頻繁に生じる変更されたイントラ予測モードインデックスは、あまり頻繁に生じないイントラ予測モードインデックスよりも短いコードワードが割り当てられる。いくつかの他の例では、変更されたイントラ予測モードインデックスがコード化(すなわち、符号化または復号のいずれか)されるときはいつでも、この変更されたイントラ予測モードインデックスは、VLCテーブルにおける現在のコードワードの直前にくるコードワードにマッピングされる別の変更されたイントラ予測モードインデックスと、コードワードを交換する。たとえば表4で、変更されたイントラ予測モードインデックス4がコード化される場合、表4におけるマッピングテーブルは、将来のブロックを符号化するかまたは復号するために、変更されたイントラ予測モードインデックス4がコードワード1100にマッピングされ、変更されたイントラ予測モードインデックス3がコードワード1101にマッピングされるように調整される。したがって、表2および表4は、変更されたイントラ予測モードが増加するにつれてコードワード長が増加することを示すが、この関係は必ずしも生じるとは限らない場合がある。たとえば、変更されたイントラ予測モードインデックス6が最も頻繁に生じている変更されたイントラ予測モードである場合、変更されたイントラ予測モード6は、最も短いコードワードが割り当てられ得る。
[0109]一般に、表1および表3は、モードインデックステーブルと呼ばれ得、一方、表2および表4は、変更されたイントラ予測モードインデックスマッピングテーブル、または単にマッピングテーブルと呼ばれ得る。上記のように、表1および表2は、単にモードインデックステーブルおよびマッピングテーブルの一例にすぎない。いくつかの例では、構成データ66は、複数のモードインデックステーブルおよび複数のマッピングテーブルについてのデータを含み得る。いくつかの例では、複数のコーディングコンテキストは、1つの共通のモードインデックステーブルに対応し得る。同様に、複数のモードインデックステーブルは、1つの共通のマッピングテーブルにマッピングされ得る。
[0110]本開示の技法によれば、モードは、変更されたイントラ予測モードインデックスではなく、コードワードインデックスにマッピングすることもできる。次いで、コードワードインデックスを、コードワードを検索するために使用される、変更されたコードワードインデックスにマッピングすることができる。以下の表5は、イントラ予測モードインデックス、およびコードワードインデックスにマッピングされたモードの一例を表す。表5は、どのモードが特定のコンテキストについての最もありえるモードであるかの指示、およびこの特定の例でのコードワードインデックスに対応する変更されたコードワードインデックスも示す。
Figure 2013539940
Figure 2013539940
[0111]例として、Cm1は1つの最もありえるモードのコードワードインデックスを表し、Cm2は別の最もありえるモードのコードワードインデックスを表すとし、この場合、Cm1は、Cm2よりも低いコードワードインデックス値を有する。上記で説明したように、Cm1およびCm2は、モードインデックス値とは反対に、コードワードインデックス値に基づいて決定される。したがって、Cm1は必ずしも第1の最もありえるモードに対応しているとは限らず、Cm2は必ずしも第2の最もありえるモードに対応しているとは限らない。表5の例では、たとえば、モード3(対角下/右)は、それが最もありえるモードの最も低いモードインデックスを有するので、第1の最もありえるモードであり、モード6は、第2の最もありえるモードである。しかしながら、第2のモードありえるモードは、第1の最もありえるモードよりも低い対応するコードワードインデックスを有する。したがって、表5の例では、Cm1は第2の最もありえるモードのコードワードインデックスに対応し、Cm2は第1の最もありえるモードのコードワードインデックスに対応する。以下の説明では、Cm1がCm2より小さいと仮定される。
[0112]選択されたモードが最もありえるモードのうちの1つである場合、モードが2つの最もありえるモードのうちの1つであることをシグナリングするために、第1のビット(たとえば「0」)が使用される。モードが2つの最もありえるモードのうちの1つである場合、第2のビットは、2つの最もありえるモードのうちのどちらが選択されたモードに対応するかをシグナリングするために使用される。したがって、2つの最もありえるモードは、それぞれ「00」および「01」の最初のビットシーケンスでシグナリングすることができる。「0」以外の第1のビット(すなわち「1」)が送られる場合、選択されたモードは、2つの最もありえるモードのうちの1つでなく、選択されたモードは、コードワードインデックスに対応するコードワードとして送られる。しかしながら、選択されたモードについてのコードワードインデックスに直接対応するコードワードを送る代わりに、ビデオエンコーダ20が変更されたコードワードインデックスに対応するコードワードを送ることによって、ビットの節約が達成され得る。ビデオデコーダ30は、変更されたコードワードインデックスに対応するコードワードを受信し、次いで、選択されたイントラ予測モードに対応するコードワードインデックスを決定することができる。
[0113]ビデオエンコーダ20は、選択されたモード(C)のコードワードインデックスを決定し、モードインデックスを変更されたモードインデックス(Cmod)にマッピングすることができる。C≧Cm2である場合、Cmod=C−2である。そうではなく、C≧Cm1である場合、Cmod=C−1である。そうでない場合、Cmod=Cである。ビデオデコーダ30は、変更されたイントラ予測モードインデックス(Cmod)を受信し、最初にそれをCm1と比較することができる。Cmod<Cm1である場合、モードインデックス(C)はCmodに等しい。CmodがCm1以上である場合、Cmod+1はCm2と比較することができる。Cmod+1<Cm2である場合、モードインデックスはCmod+1に等しい。そうでない場合、モードインデックスは、Cmod+2に等しい。
[0114]表5および表6の例に関する一例として、垂直−左(モードインデックス6)および対角下/右(モードインデックス3)の最もありえるモードを示すコンテキストを有する現在のブロックについて、選択されたモードが水平−下(モードインデックス8)であると仮定する。この例では、最もありえるモードについてのコードワードインデックスCm1およびCm2は2および5であり、一方、(表5による)選択されたモードについてのモードインデックスは8である。表5によれば、モードインデックス3、6、および8はそれぞれ、コードワードインデックス5、2、および8にマッピングする。この例では、選択されたモードについてのコードワードインデックス(すなわちコードワードインデックス8)が両方の最もありえるモードについてのコードワードインデックス(すなわちコードワードインデックス5および2)よりも大きいので、コードワードインデックスはCmod+2に等しく、この場合、Cmodは、表6におけるコードワードに対応する変更されたコードワードインデックスに等しい。したがって、選択されたモードのコードワードインデックスが8に等しい場合、Cmod=6である。したがって、ビデオエンコーダ20は、この例では、選択されたモードを表すために、コードワード1111を使用する。したがって、ビデオデコーダ30(図1および図4)は、コードワード1111を受信し、Cmodの値が6であることを決定する。この例では、6が2以上(すなわちCmod≧Cm1)であり、6+1が5以上である(すなわち、Cmod+1≧Cm2)であるので、ビデオデコーダ30は、モードインデックスCmod+2を有するモード、この例ではモードインデックス8を有し、水平−下に対応するモードを表5から取り出す。
[0115]別の例として、この場合も、表5および表6の例に関して、現在のブロックについて、選択されたモードが垂直(モードインデックス1およびコードワードインデックス0)であると仮定する。さらに、最もありえるモードのインデックスCm1およびCm2は、5および2である。この例では、選択されたモードについてのコードワードインデックスが両方の最もありえるモードについてのコードワードインデックスより小さい(すなわちC<Cm1)ので、変更されたコードワードインデックスCmodは、コードワードインデックスに等しい。したがって、ビデオエンコーダ20は、この例では、選択されたモードを表すために、コードワード0を使用する。コードワード0は、選択されたモードが最もありえるモードではないことを示す最初のビットまたは一連のビットに続く。したがって、ビデオデコーダ30(図1および図4)は、最初のビットまたは一連のビットとコードワード0とを受信し、Cmodの値が0であることを決定する。この例では0が5および2より小さい(すなわち、Cmod<Cm1)なので、ビデオデコーダ30は、Cmodに等しいモードインデックスCを有するモード、この例ではモードインデックス0を有し、垂直に対応するモードを表5から取り出す。
[0116]さらに別の例として、表5および表6の例に関して、現在のブロックについて、選択されたモードが水平(モードインデックス2およびコードワードインデックス4)であると仮定する。この例では、最もありえるモードについてのインデックスCm1およびCm2は、2および5である。この例では、選択されたモードについてのコードワードインデックスは、Cm1以上であるがCm2より小さいので、コードワードインデックスはCmod+1に等しく、ここで、Cmodは、変更されたコードワードインデックスである。したがって、コードワードインデックスが4である場合、Cmod=3である。したがって、ビデオエンコーダ20は、この例では、選択されたモードを表すために、コードワード1100を使用する。コードワード1100は、選択されたモードが最もありえるモードではないことを示す最初のビットまたは一連のビットに続く。したがって、ビデオデコーダ30(図1および図4)は、最初のビットおよび一連のビットとコードワード1100とを受信し、Cmodの値が3であると決定する。この例では、3が2以上であるが、3+1が5未満なので(すなわち、Cmod≧Cm1であるが、Cmod+1<Cm2)であるので、ビデオデコーダ30は、Cmod+1に等しいモードインデックスを有するモード、すなわちモードインデックス4を有し、水平に対応するモードを表5から取り出す。
[0117]表1〜表6は単に、最もありえるモード、モードのインデックス、コードワードインデックス、および様々なインデックスに割り当てられるコードワードの表の例にすぎないことを理解されたい。他の例では、たとえば、あるブロックの符号化コンテキストに基づいて、他のイントラ予測モードが最もありえるモードと決定され得る。たとえば、最もありえるモードは、左および上に隣接するブロックを符号化するために使用されるイントラ予測モードに基づいて決定することができる。構成データ66は、概して表1、表3、および表5の例に類似した、最もありえるモードとして識別される異なるイントラ予測モード、ならびに識別される異なる数の最もありえるモードに関連付けられた複数の異なるテーブルを含み得る。同様に、構成データ66は、特定のモードの使用の確率がそのコードワードの長さに反比例するように、残りのイントラ予測モードインデックスをコードワードにマッピングする表2、表4、および表6のような複数のコードワードマッピングテーブルを含み得る。上記で説明したように、最もありえるモードは、最初のビットまたは一連のビットを使用してシグナリングされる。そのような最初のビットまたは一連のビットは、コンテキスト依存でもよい。たとえば、異なる一連のビットは、最もありえるモードがいくつ識別されるか、ならびにどのイントラ予測モードが最もありえるモードであると識別されるかに応じて、最もありえるモードをシグナリングするために使用され得る。所与の例についての最もありえるモードおよびコーディングテーブルは、その例で使用される隣接ブロックイントラ予測モードの代わりに、またはそれに加えて、他のタイプのコンテキストに基づいて定義することもできる。これらの方法では、比較的高い確率の符号化モードは比較的短いコードワードにマッピングされるため、ビットの節約を達成することができる。
[0118]いくつかの実装形態では、たとえば表5におけるコードワードインデックスに対するモードのマッピングは、特定のコンテキストについて、各モードが選択される回数が追跡され、選択の回数に基づいて、比較的短い対応するコードワードを有する比較的低いコードワードインデックスに、より頻繁に生じるモードが割り当てられ、一方、比較的長い対応するコードワードを有する比較的高いコードワードインデックスに、あまり頻繁に生じないモードが割り当てられるように、適応型でもよい。
[0119]表1、表2、表3、表4、および表5の例は、H.264の9つのイントラ予測モードに関して提供される。しかしながら、本開示の技法を高効率ビデオコーディング(HEVC)など他の符号化標準および技法に適用することができることを理解されたい。いくつかの例では、たとえばHEVCにおいて、使用可能なイントラ予測モードの数は、コード化されているブロックのサイズ(たとえば、HEVCでの「コーディングユニット」または「CU」)に依存し得る。各イントラ予測モードに対し、モードインデックスは、各イントラ予測モードの出現の可能性に基づいて割り当てることができる。図3は、HEVCで使用することができるイントラ予測モードおよび対応するモードインデックスの一例を示す。図3の矢印は、予測方向を表し、数字は、モードインデックスを表す。以下の表7は、CUのサイズと、そのサイズのCUの符号化のために利用可能なイントラ予測モードの数との間の対応を示す。表7によってわかるように、8×8、16×16、および32×32のCUは、図3に示される35のイントラ予測モードを使用することができ、一方、4×4および64×64のCUはより少ないセットのイントラ予測モードを使用する。
Figure 2013539940
[0120]イントラ予測モードの数がブロックサイズに基づいて変わる例では、構成データ66は、異なるサイズのブロックについての異なるテーブルを含み得る。したがって、1つのブロックを符号化するために使用されるイントラ予測モードの指示を符号化するためのコンテキストは、当該ブロックのサイズ、ならびに隣接するブロックを符号化するために使用されるコーディングモードを含み得る。エントロピーコーディングユニット56は、ブロックのコンテキストに基づいてブロックの符号化に使用される選択されたイントラ予測モードを表すコードワードを選択するために使用されるモードインデックステーブルおよびコードワードマッピングテーブルを選択することができる。その上、特定サイズのブロックについてのモードインデックステーブルは、そのサイズのブロックについてのイントラ予測モードの数に等しい数のエントリを有することができる。したがって、サイズ4×4のブロックについてのモードインデックステーブルは、18のエントリを有し、サイズ8×8、16×16、および32×32のブロックについてのモードインデックステーブルは、35のエントリを有し、サイズ64×64のブロックについてのモードインデックステーブルは、4つのエントリを有し得る。たとえば128×128のような他のサイズのブロックも、決定された数の利用可能なイントラ予測モードを有し得る。
[0121]サイズ8×8、16×16、および32×32のブロックのために利用可能なイントラ予測モードは同じであり、したがって、サイズ8×8、16×16、および32×32のブロックに対して同じモードインデックステーブルが使用され得る。しかしながら、これらのサイズのブロックについて同じモードが可能であるが、ブロックを符号化するために特定のモードを使用する確率は、ブロックのサイズに基づいて変わり得る。したがって、いくつかの例では、エントロピーコーディングユニット56は、イントラ予測モードがシグナリングされることになっているブロックのサイズに基づいて、特定のモードインデックステーブルについてのコードワードマッピングテーブルを決定することができる。
[0122]例として、上記の表2は、様々な符号化モードを表す例示的なテーブルにすぎない。しかしながら、他の例では、たとえば単項(unary)コードワードなど、他のタイプの可変長コードを使用することができることを理解されたい。コードワードの各々が一意に復号可能である限り(たとえば、コードワードのいずれも、同じテーブルの別のコードワードのプレフィックスでない)、コードワードマッピングテーブル(すなわち、VLCテーブルまたは変更されたイントラ予測モードインデックステーブル)のために、任意のセットのコードワードを使用することができる。
[0123]構成データ66に含まれる複数のコードワードマッピングテーブルは各々、異なるコードワード構造を有することができ、この場合、コードワード構造とは、一般に、コードワードマッピングテーブルにおけるコードワードの長さを意味する。特定のコードワードマッピングテーブルについてのコードワード構造は、あるブロックの符号化コンテキストに依存し得る。以下の表8は、コードワードマッピングテーブルについてのコードワード構造の4つの異なる例(リストVLC0、リストVLC1、リストVLC2、およびリストVLC3と識別される)を識別するが、追加の構造が使用されてもよい。リストをよりコンパクトにするために、多くのコードワードの終わりにいくつかのxが含まれる。xは、0または1のいずれかであり得る。たとえば、0Xは2つのコードワード(01および00)を表し、0XXは4つのコードワード(000、001、010、および011)を表し、以下同様である。
Figure 2013539940
[0124]表8によってわかるように、テーブルにおける第1のコードワードについて、より少ない数のビットを使用することによって、テーブルにおけるその後のコードワードは、速く長くなり得る。たとえば、リストVLC0では、第5のコードワードは、長さ5ビットであるが、リストVLC1では、第5のコードワードは、長さわずか4ビットである。しかしながら、リストVLC0の第1のコードワードは、リストVLC1の第1のコードワードよりも短い(2と比較して1ビット)。したがって、テーブルにおける第1のコードワードを使用するとき、リストVLC0のコードワードは、リストVLC1と比較してビット節約をもたらすが、リストVLC1における第5のコードワードを使用することは、リストVLC0と比較してビット節約をもたらす。
[0125]異なるコンテキストについての異なるコードワード構造を有するコードワードマッピングテーブルを維持することによって、全体的なビット節約を達成することができる。上記で説明したように、たとえば、ブロックのサイズおよび形状、ならびに隣接するブロックがどのように符号化されたかなどの特性に基づいて、特定のブロックについてのコンテキストが決定され得る。異なるコンテキストについて、最もありえるイントラ予測モード以外の符号化モードの可能性は、異なる分布を有し得る。たとえば、いくつかのイントラ予測モードが他のイントラ予測モードと比較して高い可能性を有する場合、当該いくつかの可能性のあるイントラ予測モードを最初のいくつかの最も短いコードワードにマッピングすることによって、リストVLC0のような構造を有するコードワードマッピングテーブルを使用することは、リストVLC1などの構造を有するコードワードマッピングテーブルを使用することと比較して、ビット節約をもたらし得る。この相対的ビット節約が起こり得るのは、コードワードマッピングテーブルの最初の数個の最も短いコードワードが、他のコードワードに使用される余分なビットを最初の数個のコードワードについての(リストVLC1に対するリストVLC0についての)ビット節約を超えるほど十分頻繁に使用されるからであり、その結果、リストVLC1と比較してリストVLC0についてのビットの正味の節約になる。
[0126]しかしながら、たとえば、コードワードマッピングテーブルにおける最初の数個の最も短いコードワードにマッピングされるイントラ予測モードが、他のコードワードにマッピングされるイントラ予測モードよりもかなり高い可能性を有していない場合、リストVLC1などの構造を有するコードワードマッピングテーブルを使用することは、リストVLC0などのコードワード構造を有するコードワードマッピングテーブルを使用することと比較して、ビット節約になり得る。この相対的ビット節約が起こり得るのは、テーブルのさらに下方にあるコードワードが、最初の数個のコードワードに使用される余分なビットをテーブルのさらに下方にあるコードワードについての(リストVLC0に対するリストVLC1の)ビット節約を超えるほど十分頻繁に使用されるからであり、その結果、リストVLC0と比較してリストVLC1についてのビットの正味の節約になる。
[0127]たとえば、イントラ予測またはインター予測を使用して、現在のブロックを予測した後、ビデオエンコーダ20は、コーディングされている元のビデオブロックから、動き補償ユニット44またはイントラ予測ユニット46によって計算された予測データを減算することによって残差ビデオブロックを形成し得る。加算器50は、この減算演算を実行する1つまたは複数の構成要素を表す。変換ユニット52は、離散コサイン変換(DCT)または概念的に同様の変換などの変換を残差ブロックに適用し、残差変換係数値を備えるビデオブロックを生成する。変換ユニット52は、概念的にDCTと同様である、H.264規格によって定義される変換のような他の変換を実行し得る。ウェーブレット変換、整数変換、サブバンド変換または他のタイプの変換をも使用することができる。いずれの場合も、変換ユニット52は、変換を残差ブロックに適用し、残差変換係数のブロックを生成する。変換は、残差情報をピクセル値領域から周波数領域のような変換領域に変換し得る。量子化ユニット54は、ビットレートをさらに低減するために残差変換係数を量子化する。量子化プロセスは、係数の一部または全部に関連するビット深度を低減することができる。量子化の程度は、量子化パラメータを調整することによって変更され得る。
[0128]量子化の後、エントロピーコーディングユニット56が量子化変換係数をエントロピーコーディングする。たとえば、エントロピーコーディングユニット56は、コンテンツ適応型可変長コーディング(CAVLC)、コンテキスト適応型2値算術コーディング(CABAC)、または別のエントロピーコーディング技法を実行し得る。エントロピーコーディングユニット56によるエントロピーコーディングの後、符号化ビデオを、別のデバイスに送信するか、あるいは後で送信または検索するためにアーカイブすることができる。コンテキスト適応型2値算術コーディングの場合、コンテキストは隣接ブロックおよび/またはブロックサイズに基づき得る。
[0129]場合によっては、エントロピーコーディングユニット56またはビデオエンコーダ20の別のユニットは、上記で説明したように、エントロピーコーディングおよびイントラ予測モードのコーディングに加えて他のコーディング機能を実行するように構成され得る。たとえば、エントロピーコーディングユニット56はブロックのコード化ブロックパターン(CBP:coded block pattern)値およびパーティションを判断するように構成され得る。また、場合によっては、エントロピーコーディングユニット56は、マクロブロックまたはそのパーティション中の係数のランレングスコーディングを実行し得る。特に、エントロピーコーディングユニット56は、マクロブロックまたはパーティション中の変換係数をスキャンするためにジグザグスキャンまたは他のスキャンパターンを適用し、さらなる圧縮のためにゼロのランを符号化し得る。エントロピーコーディングユニット56はまた、符号化ビデオビットストリーム中での送信のために適切なシンタックス要素とともにヘッダ情報を構成し得る。
[0130]逆量子化ユニット58および逆変換ユニット60は、それぞれ逆量子化および逆変換を適用して、たとえば参照ブロックとして後で使用するために、ピクセル領域における残差ブロックを再構成する。動き補償ユニット44は、残差ブロックを参照フレームストア64のフレームのうちの1つの予測ブロックに加算することによって参照ブロックを計算し得る。動き補償ユニット44はまた、再構成された残差ブロックに1つまたは複数の補間フィルタを適用して、動き推定において使用するサブ整数ピクセル値を計算し得る。加算器62は、再構成された残差ブロックを、動き補償ユニット44によって生成された動き補償予測ブロックに加算して、参照フレームストア64に記憶するための再構成されたビデオブロックを生成する。再構成されたビデオブロックは、後続のビデオフレーム中のブロックをインターコーディングするために動き推定ユニット42および動き補償ユニット44によって参照ブロックとして使用され得る。
[0131]このように、ビデオエンコーダ20は、現在のブロックの符号化コンテキストに基づいて、ビデオデータの現在のブロックについての1つまたは複数の最もありえるイントラ予測モードを決定し、現在のブロックのコンテキストに基づいてコードワードのテーブルを選択し、ここで、コードワードのテーブルは、コンテキストに基づいて、最もありえるイントラ予測モード以外のイントラ予測モードに対応する変更されたイントラ予測モードインデックスに対応する複数の可変長のコードワードを備え、最もありえるイントラ予測モード以外のイントラ予測モードのうちの1つを使用して、現在のブロックを符号化し、イントラ予測モードのうちの1つに対応する変更されたイントラ予測モードインデックスのうちの1つを決定し、選択されたコードワードのテーブルからコードワードを出力し、ここで、コードワードは変更されたイントラ予測モードインデックスのうちの1つに対応する、ように構成されたビデオエンコーダの一例を表す。
[0132]図4は、符号化ビデオシーケンスを復号するビデオデコーダ30の一例を示すブロック図である。図4の例では、ビデオデコーダ30は、エントロピー復号ユニット70と、動き補償ユニット72と、イントラ予測ユニット74と、逆量子化ユニット76と、逆変換ユニット78と、メモリ82と、加算器80とを含む。ビデオデコーダ30は、いくつかの例では、ビデオエンコーダ20(図2)に関して説明した符号化パスとは概して逆の復号パスを実行し得る。動き補償ユニット72は、エントロピー復号ユニット70から受信した動きベクトルに基づいて予測データを生成し得る。
[0133]動き補償ユニット72は、ビットストリーム中で受信した動きベクトルを使用して、参照フレームストア82中の参照フレーム中の予測ブロックを識別し得る。イントラ予測ユニット74は、ビットストリーム中で受信したイントラ予測モードを使用して、空間的に隣接するブロックから予測ブロックを形成し得る。特に、ビデオデコーダ30は、図4の例では、構成データ84を含む。構成データ84は、イントラ予測されたブロックのコンテキストを記述する情報と、各コンテキストについて使用する複数のイントラ予測インデックスマッピングテーブルのうちの1つと、各コンテキストについて使用する複数の変更されたイントラ予測モードインデックス(またはコードワードマッピング)テーブルのうちの1つと、各コンテキストについて最もありえるイントラ予測モードとを含むという点で、構成データ84は、図2の構成データ66と実質的に同様である。
[0134]エントロピー復号ユニット70は、ビデオデータの符号化されたブロックの復号に使用するためのイントラ予測モードを表すコードワードを受信し得る。エントロピー復号ユニット70は、たとえば、符号化されたブロックの左に隣接するブロックおよび上に隣接するブロックについてのイントラ予測モード、および/または符号化されたブロックについてのサイズに基づいて、符号化されたブロックのコンテキストを決定し得る。コンテキストに基づいて、エントロピー復号ユニット70は、ブロックの復号に使用するための1つまたは複数の最もありえるイントラ予測モード、ならびにブロックの復号に使用するための実際のイントラ予測モードの決定に使用するためのイントラ予測インデックステーブルおよび変更されたイントラ予測モードインデックステーブルを決定することができる。
[0135]単一の最もありえるイントラ予測モードを使用する場合、コードワードが、たとえば「0」といった第1のビットを備えるときには、エントロピー復号ユニット70は、実際のイントラ予測モードは符号化されたブロックについての最もありえるイントラ予測モードであると決定し得る。そうでないときには、エントロピー復号ユニット70は、符号化されたブロックのコンテキストについての変更されたイントラ予測モードインデックステーブルに基づいて、受信されたコードワードにマッピングされる変更されたイントラ予測モードインデックスを決定し得る。nは変更されたイントラ予測モードインデックスを表し、mは最もありえるイントラ予測モードについてのモードインデックスを表すとする。n<mであるとき、エントロピー復号ユニット70は、符号化されたブロックについての実際のイントラ予測モードはモードインデックスnを有すると決定し得る。そうでない場合(すなわち、n≧m)、エントロピー復号ユニット70は、符号化されたブロックについての実際のイントラ予測モードはモードインデックスn+1を有すると決定し得る。上記のようにnまたはn+1のいずれかに等しいモードインデックスを使用することによって、エントロピー復号ユニット70は、符号化されたブロックの復号に使用するための実際のイントラ予測モードを示す情報を取り出し、イントラ予測ユニット74にモードの指示を送ることができる。
[0136]2つの最もありえるイントラ予測モードといった2つ以上の最もありえるイントラ予測モードを使用する場合、第1のビットが例えば「0」といった、ある値を有するときには、エントロピー復号ユニット70は、実際のイントラ予測モードが符号化されたブロックについての最もありえるイントラ予測モードのうちの1つであると決定し得る。そのような場合、第2のビットまたは一連のビットに基づいて、エントロピー復号ユニット70は、最もありえるイントラ予測モードのうちどれが選択されたイントラ予測モードであるかを決定することができる。そうでないときには、第1のビットの後、エントロピー復号ユニット70は、受信されたコードワードにマッピングされた変更されたイントラ予測モードインデックスを決定し、変更されたイントラ予測モードインデックスに基づいて、ブロックについての選択されたイントラ予測モードを決定することができる。一例として、nは変更されたイントラ予測モードインデックスを表し、m1およびm2は最もありえるイントラ予測モードについてのモードインデックスを表すとする。n<m1である場合、エントロピー復号ユニット70は、符号化されたブロックについての選択されたイントラ予測モードがモードインデックスnを有すると決定し得る。n+1<m2である(しかしnはm1以上である)とき、エントロピー復号ユニット70は、符号化されたブロックについての選択されたイントラ予測モードがモードインデックスn+1を有すると決定し得る。そうではなく、n+1がm2以上であるとき、エントロピー復号ユニット70は、符号化されたブロックについての選択されたイントラ予測モードがモードインデックスn+2を有すると決定し得る。モードインデックスを使用することによって、エントロピー復号ユニット70は、符号化されたブロックの復号に使用するための選択されたイントラ予測モードを示す情報を取り出し、イントラ予測ユニット74にモードの指示を送ることができる。
[0137]同様に、イントラ予測モードインデックスがコードワードインデックスにマッピングされ、2つ以上の最もありえるモードが使用されている場合、第1のビットまたは一連のビットが、たとえば「0」など、ある値を有するときには、エントロピー復号ユニット70は、実際のイントラ予測モードが符号化されたブロックについての最もありえるイントラ予測モードのうちの1つであると決定し得る。そのような場合、第2のビットまたは一連のビットに基づいて、エントロピー復号ユニット70は、最もありえるイントラ予測モードのうちどれが選択されたイントラ予測モードであるかを決定することができる。そうでないときには、第1のビットまたは一連のビットの後、エントロピー復号ユニット70は、受信されたコードワードにマッピングされた変更されたコードワードインデックスを決定し、変更されたコードワードインデックスに基づいて、ブロックについての選択されたイントラ予測モードを決定し得る。一例として、Cmodは変更されたコードワードインデックスを表し、Cm1およびCm2は最もありえるイントラ予測モードについてのモードインデックスを表すとする。Cmod<Cm1である場合、エントロピー復号ユニット70は、符号化されたブロックについての実際の選択されたイントラ予測モードがCmodに等しいコードワードインデックスを有すると決定することができる。Cmod+1<Cm2である(しかしCmodはCm1以上である)とき、エントロピー復号ユニット70は、符号化されたブロックについての実際の選択されたイントラ予測モードがCmod+1のコードワードインデックスを有すると決定することができる。そうではなく、Cmod+1がCm2以上であるとき、エントロピー復号ユニット70は、符号化されたブロックについての実際の選択されたイントラ予測モードがCmod+2のモードインデックスを有すると決定することができる。コードワードインデックスを使用することによって、エントロピー復号ユニット70は、符号化されたブロックの復号に使用するための実際の選択されたイントラ予測モードを示す情報を取り出し、イントラ予測ユニット74にモードの指示を送ることができる。
[0138]イントラ予測ユニット74は、たとえば、隣接する、以前復号されたブロックのピクセルを使用して、符号化されたブロックをイントラ予測するためにイントラ予測モードの指示を使用することができる。ブロックがインター予測モード符号化される例では、動き補償ユニット72は、符号化されたブロックについての動き補償予測データを取り出すために、動きベクトルを定義する情報を受信する。いずれの場合も、動き補償ユニット72またはイントラ予測ユニット74は、加算器80に予測ブロックを定義する情報を提供することができる。
[0139]逆量子化ユニット76は、ビットストリーム中で供給され、エントロピー復号ユニット70によって復号された量子化ブロック係数を逆量子化(inverse quantize)、すなわち、逆量子化(de-quantize)する。逆量子化プロセスは、たとえば、H.264復号規格によって定義される、またはHEVCテストモデルによって実行されるなど、従来のプロセスを含み得る。逆量子化プロセスはまた、量子化の程度を判断し、同様に、適用する逆量子化の程度を判断するための、各マクロブロックについてエンコーダ20によって計算される量子化パラメータQPYの使用を含み得る。
[0140]逆変換ユニット58は、逆変換、たとえば、逆DCT、逆整数変換、または概念的に同様の逆変換プロセスを変換係数に適用して、ピクセル領域における残差ブロックを生成する。動き補償ユニット72は動き補償ブロックを生成し、場合によっては、補間フィルタに基づいて補間を実行する。サブピクセル精度をもつ動き推定に使用される補間フィルタの識別子は、シンタックス要素中に含まれ得る。動き補償ユニット72は、ビデオブロックの符号化中にビデオエンコーダ20によって使用される補間フィルタを使用して、参照ブロックのサブ整数ピクセルの補間値を計算し得る。動き補償ユニット72は、受信したシンタックス情報に従って、ビデオエンコーダ20によって使用された補間フィルタを判断し、その補間フィルタを使用して予測ブロックを生成し得る。
[0141]動き補償ユニット72は、シンタックス情報のいくつかを使用して、符号化ビデオシーケンスの(1つまたは複数の)フレームを符号化するために使用されるブロックのサイズと、符号化ビデオシーケンスのフレームまたはスライスの各ブロックがどのように区分されるかを記述するパーティション情報と、各パーティションがどのように符号化されるかを示すモードと、各インター符号化ブロックまたはパーティションのための1つまたは複数の参照フレーム(および参照フレームリスト)と、符号化ビデオシーケンスを復号するための他の情報と、を判断する。
[0142]加算器80は、残差ブロックを、動き補償ユニット72またはイントラ予測ユニット74によって生成される対応する予測ブロックと合計して、復号ブロックを形成する。必要に応じて、ブロッキネスアーティファクトを除去するために、デブロッキングフィルタを適用して、復号ブロックをフィルタ処理することもできる。復号されたビデオブロックは、次いで、参照フレームストア82に記憶され、参照フレームストア82は、参照ブロックをその後の動き補償に供給し、また、ディスプレイデバイス(図1のディスプレイデバイス32など)上での提示のために復号されたビデオを生成する。
[0143]このように、図4のビデオデコーダ30は、現在のブロックのコンテキストに基づいて、ビデオデータのコード化ブロックについての1つまたは複数の最もありえるイントラ予測モードを決定し、現在のブロックのコンテキストに基づいてコードワードのテーブルを選択し、ここで、コードワードのテーブルは、コンテキストに基づいて、最もありえるイントラ予測モード以外のイントラ予測モードに対応する変更されたイントラ予測モードインデックスに対応する複数の可変長のコードワードを備え、コードワードのテーブルを使用して受信されたコードワードに対応する変更されたイントラ予測モードインデックスのうちの1つを決定し、コード化ブロックの復号に使用するために、最もありえるイントラ予測モード以外のイントラ予測モードを選択し、ここで、選択されたイントラ予測モードは、変更されたイントラ予測モードインデックスのうちの決定された1つに対応し、選択されたイントラ予測モードを使用して、現在のブロックを復号するように構成されたビデオデコーダの一例を表す。
[0144]図5は、ビデオデータのブロックをイントラ予測符号化するための例示的な方法を示すフローチャートである。図5の技法は、一般に、ハードウェア、ソフトウェア、ファームウェア、またはそれらの組合せのいずれに実装されようと、任意の処理ユニットまたはプロセッサによって実行することができ、ソフトウェアまたはファームウェアに実装されるとき、ソフトウェアまたはファームウェアのための命令を実行するために、対応するハードウェアが提供され得る。例として、図5の技法は、ビデオエンコーダ20(図1および図2)に関して説明するが、他のデバイスが同様の技法を実行するように構成され得ることを理解されたい。さらに、図5に示されるステップは、本開示の技法から逸脱することなく、異なる順序でまたは並行して実行されてもよく、追加のステップが追加されたり、いくつかのステップが省略されたりしてもよい。
[0145]初めに、ビデオエンコーダ20は、ビデオデータの現在のブロックについてのイントラ予測モードを選択する(100)。たとえば、イントラ予測ユニット46は、ブロックを符号化するために使用される様々なイントラ予測モードについてのレートひずみ値を計算し、次いで、テストされたイントラ予測モードの最良のレートひずみ値を呈するイントラ予測モードを選択する。イントラ予測ユニット46は、次いで、選択されたイントラ予測モードを使用してブロックを符号化する(102)。すなわち、イントラ予測ユニット46は、選択されたイントラ予測モードに基づいてブロックについての予測ブロックを計算する。ビデオエンコーダ20は、予測ブロックと元の(オリジナルの)ブロックとの間の差をさらに計算して、残差ブロックを生成し、ビデオエンコーダ20は、次に、残差ブロックを変換および量子化する。
[0146]ビデオエンコーダ20は、選択されたイントラ予測モードを表す情報をさらに符号化する。すなわち、イントラ予測ユニット46は、エントロピーコーディングユニット56に選択されたイントラ予測モードの指示を送る。エントロピーコーディングユニット56またはビデオエンコーダ20の別のユニットは、ブロックのコンテキストを決定する(104)。ブロックのコンテキストは、ブロックのサイズ、および/または、上に隣接するブロックおよび/または左に隣接するブロックなどの隣接するブロックのイントラ予測モードを含み得る。エントロピーコーディングユニット56は、ブロックの符号化コンテキストに基づいて、イントラ予測モードインジケータの符号化に使用するための変更されたイントラ予測モードインデックステーブルを選択する(106)。エントロピーコーディングユニット56は、いくつかの例では、イントラ予測インデックステーブルをさらに選択することができ、一方、他の例では、イントラ予測モードインデックスは固定されてもよい。エントロピーコーディングユニット56は、ブロックのコンテキストにおけるブロックについての1つまたは複数の最もありえるイントラ予測モードをさらに決定する(108)。
[0147]エントロピーコーディングユニット56は、次いで、最もありえるイントラ予測モードに基づいて、イントラ予測モードについてのコードワードを変更されたイントラ予測モードインデックステーブルから選択する(110)。たとえば、以下でより詳細に説明するように、エントロピーコーディングユニット56は、シングルビットまたは一連のビット(たとえば、シングルビットまたは2ビット)を使用して、選択されたイントラ予測モードが最もありえるイントラ予測モードのうちの1つを備えることをシグナリングすることができる。選択されたイントラ予測モードが最もありえるイントラ予測モードのうちの1つではない場合、エントロピーコーディングユニット56は、選択されたイントラ予測モードをシグナリングするために、可変長のコードワードを選択する。選択されたコードワードは、ブロックについての決定されたコンテキストにおいて、ブロックを符号化するためにイントラ予測モードの使用の可能性に反比例する長さを有し得る。エントロピーコーディングユニット56は、次いで、コード化ブロック(たとえば、符号化された量子化変換係数)と選択されたコードワードとをビットストリームに出力する(112)。
[0148]図6Aは、コード化ブロックについてのイントラ予測モードを示すコードワードを選択するための例示的な方法を示すフローチャートである。この場合も、図6Aの技法は、任意の適したプロセッサにおいて実施することができるが、図6Aの技法は、例として、ビデオエンコーダ20の例に関して説明する。図6Aは、一般に、図5のステップ110についての追加の詳細を提供する。図6Aに示される方法のステップは、本開示の技法から逸脱することなく、異なる順序でまたは並行して実行されてもよく、追加のステップが追加されたり、いくつかのステップが省略されたりしてもよい。
[0149]上記で説明したように、ビデオエンコーダ20は、現在のブロックについてのコーディングコンテキストを決定する(120)。同様に、ビデオエンコーダ20は、ブロックについてのコーディングコンテキストに基づいて、変更されたイントラ予測モードインデックステーブルを選択する(122A)。ビデオエンコーダ20の構成データは、ブロックのコンテキストについて、変更されたイントラ予測モードインデックステーブルと、いくつかの例では、イントラ予測モードインデックステーブルとの指示を提供することができる。さらに、ビデオエンコーダ20は、ブロックについてのコーディングコンテキストに基づいてブロックの符号化に使用するための最もありえるイントラ予測モードを決定する(124A)。この場合も、ビデオエンコーダ20の構成データは、ブロックのコンテキストについて最もありえるイントラ予測モードの指示を提供することができる。
[0150]上記で説明したように、ビデオエンコーダ20は、ブロックの実際の符号化に使用するために、ブロックについてのイントラ予測モードを選択する(126A)。ビデオエンコーダ20は、選択されたイントラ予測モードが、ブロックのコンテキストに基づいて、ブロックについての最もありえるイントラ予測モードと同じであるかどうかを決定する(128A)。選択されたモードが最もありえるモードである場合(128Aの「はい」分岐)、ビデオエンコーダ20は、最もありえるモードに基づいて、シングルビット、たとえば、「0」または「1」を使用して、ブロックの符号化に使用されるイントラ予測モードの指示を符号化する(130A)。
[0151]選択されたモードが最もありえるモードでないとき(128Aの「いいえ」分岐)、ビデオエンコーダ20は、たとえば、イントラ予測モードインデックステーブルから、選択されたイントラ予測モードについてのモードインデックスを決定する(122A)。いくつかの例では、モードインデックスは、コンテキストに関係なく、グローバルな値でもよいが、他の例では、ビデオエンコーダ20の構成データは、各コンテキストを複数のイントラ予測モードインデックステーブルのうちの1つにマッピングする。ビデオエンコーダ20は、最もありえるイントラ予測モードについてのモードインデックスをさらに決定する。次いで、ビデオエンコーダ20は、選択されたイントラ予測モードについてのモードインデックスがブロックのコンテキストにおいて最もありえるイントラ予測モードについてのモードインデックスより小さいかどうかを決定する(134A)。
[0152]選択されたイントラ予測モードについてのモードインデックスが最もありえるイントラ予測モードについてのモードインデックスより小さいとき(134Aの「はい」分岐)、ビデオエンコーダ20は、ブロックのコンテキストについての変更されたイントラ予測モードインデックステーブルから、選択されたイントラ予測モードについてのモードインデックスに対応するコードワードを決定する。より詳細には、ビデオエンコーダ20は、選択されたイントラ予測モードについてのモードインデックスに等しい変更されたイントラ予測モードインデックスにマッピングされたコードワードを使用する(136A)。
[0153]一方、選択されたイントラ予測モードについてのモードインデックスが最もありえるイントラ予測モードについてのモードインデックスよりも大きいとき(134Aの「いいえ」分岐)、ビデオエンコーダ20は、ブロックのコンテキストについての変更されたイントラ予測モードインデックステーブルから、選択されたイントラ予測モードについてのモードインデックスよりも1小さいものに対応するコードワードを決定する。より詳細には、ビデオエンコーダ20は、選択されたイントラ予測モードよりも1小さいモードインデックスに等しい変更されたイントラ予測モードインデックスにマッピングされたコードワードを使用する(136A)。
[0154]シングルビットのコードワードが最もありえるイントラ予測モードにマッピングされるので、変更されたイントラ予測モードインデックステーブルは、追加のコードワードを最もありえるイントラ予測モードのインデックスにマッピングする必要はない。したがって、最もありえるイントラ予測モードについてのモードインデックスに等しい変更されたイントラ予測モードインデックスは、このようにして、最もありえるイントラ予測モードについてのモードインデックスよりも1大きいモードインデックスにマッピングされ得る。したがって、ブロックのために利用可能なイントラ予測モードがK個ある場合、変更されたイントラ予測モードインデックステーブルは、最もありえるイントラ予測モードがブロックを符号化するために使用されるかどうかを示すシングルビットのコードワード以外の、K−1個の変更されたイントラ予測モードインデックスについての可変長コードを提供するだけでよい。
[0155]このようにして、本開示の技法は、ビデオデータのブロックの符号化に使用されるイントラ予測モードを表す可変長のコードワードの使用を提供する。コードワードの長さは、ブロックのコンテキストに基づいて、ブロックについてのイントラ予測モードの可能性に反比例し得る。利用可能なイントラ予測モードの数は、たとえば、HEVCテストモデルまたは他の類似の符号化デバイスでは、比較的大きくなり得る。たとえば、特定のブロックについての利用可能なイントラ予測モードは35個ある。固定長の値を使用して35個の一意のイントラ予測モードを表すために、固定長の値は、少なくとも6ビットを必要とする。しかしながら、可変長のコードワードは、本開示の技法によれば、イントラ予測モードの可能性に反比例する長さを有し得るので、可能性が十分に決定されていると仮定すると、これらの技法は、ビットストリーム全体にわたって相対的ビット節約をもたらすことができる。
[0156]このようにして、図6Aの方法は、現在のブロックの符号化コンテキストに基づいて、ビデオデータの現在のブロックについての最もありえるイントラ予測モードを決定することと、現在のブロックのコンテキストに基づいてコードワードのテーブルを選択することと、ここで、コードワードのテーブルは、コンテキストに基づいて、最もありえるイントラ予測モード以外のイントラ予測モードに対応する変更されたイントラ予測モードインデックスに対応する複数の可変長のコードワードを備え、最もありえるイントラ予測モード以外のイントラ予測モードのうちの1つを使用して、現在のブロックを符号化することと、イントラ予測モードのうちの1つに対応する変更されたイントラ予測モードインデックスのうちの1つを決定することと、選択されたコードワードのテーブルからコードワードを出力すると、ここで、コードワードは、変更されたイントラ予測モードインデックスのうちの1つに対応し、を含む方法の一例を表す。
[0157]図6Bは、コード化ブロックについてのイントラ予測モードを示すコードワードを選択するための例示的な方法を示すフローチャートである。この場合も、図6Bの技法は、任意の適したプロセッサにおいて実施することができるが、図6Bの技法は、例として、ビデオエンコーダ20の例に関して説明する。図6Bは、一般に、2つの最もありえるモードが使用される例について、図5のステップ110の追加の詳細を提供する。図6Bに示される方法のステップは、本開示の技法から逸脱することなく、異なる順序でまたは並行して実行されてもよく、追加のステップが追加されたり、いくつかのステップが省略されたりしてもよい。
[0158]上記で説明したように、ビデオエンコーダ20は、現在のブロックについてのコーディングコンテキストを決定する(120B)。同様に、ビデオエンコーダ20は、ブロックについてのコーディングコンテキストに基づいて、変更されたイントラ予測モードインデックステーブルを選択する(122BA)。ビデオエンコーダ20の構成データは、ブロックのコンテキストについて、変更されたイントラ予測モードインデックステーブルと、いくつかの例では、イントラ予測モードインデックステーブルとの指示を提供する。さらに、ビデオエンコーダ20は、ブロックについてのコーディングコンテキストに基づいて、ブロックの符号化に使用するための第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードを決定する(124B)。この場合も、ビデオエンコーダ20の構成データは、ブロックのコンテキストについて、最もありえるイントラ予測モードの指示を提供する。
[0159]上記で説明したように、ビデオエンコーダ20は、ブロックの実際の符号化に使用するために、ブロックについてのイントラ予測モードを選択する(126B)。ビデオエンコーダ20は、選択されたイントラ予測モードが、ブロックのコンテキストに基づいて、ブロックについての最もありえるイントラ予測モードのうちの1つと同じであるかどうかを決定する(128B)。選択されたモードが最もありえるモードである場合(128Bの「はい」分岐)、ビデオエンコーダ20は、最もありえるモードに基づいて、最初の一連のビットを使用してブロックの符号化に使用されるイントラ予測モードの指示を符号化し、最初の一連のビットは、たとえば、実際のモードが最もありえるモードのうちの1つであることを示す第1のビットと、最もありえるモードのうちどれが実際のモードであるかを示す第2のビットとを含む2ビットである(130B)。
[0160]選択されたモードが最もありえるモードのうちの1つではないとき(128Bの「いいえ」分岐)、ビデオエンコーダ20は、たとえば、イントラ予測モードインデックステーブルから、選択されたイントラ予測モードのためのモードインデックスを決定する(122B)。いくつかの例では、モードインデックスは、コンテキストに関係なく、グローバルな値でもよく、他の例では、ビデオエンコーダ20の構成データは、各コンテキストを複数のイントラ予測モードインデックステーブルのうちの1つにマッピングする。ビデオエンコーダ20は、最もありえるイントラ予測モードについてのモードインデックスをさらに決定する。次いで、ビデオエンコーダ20は、選択されたイントラ予測モードについてのモードインデックスがブロックのコンテキストにおいて第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードについてのモードインデックスより小さいかどうかを決定する(134B)。
[0161]選択されたイントラ予測モードについてのモードインデックスが両方の最もありえるイントラ予測モードについてのモードインデックスより小さいとき(134Bの「はい」分岐)、ビデオエンコーダ20は、ブロックのコンテキストについての変更されたイントラ予測モードインデックステーブルから、選択されたイントラ予測モードについてのモードインデックスに対応するコードワードを決定する。より詳細には、ビデオエンコーダ20は、選択されたイントラ予測モードについてのモードインデックスに等しい変更されたイントラ予測モードインデックスにマッピングされたコードワードを使用する(136B)。
[0162]一方、選択されたイントラ予測モードについてのモードインデックスが両方の最もありえるイントラ予測モードについてのモードインデックス以上であるとき(134Bの「いいえ」分岐)、ビデオエンコーダ20は、選択されたイントラ予測モードについてのモードインデックスが、ブロックのコンテキストにおける第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードについてのモードインデックス以上であるかどうかを決定する(138B)。選択されたイントラ予測モードについてのモードインデックスが両方の最もありえるイントラ予測モードについてのモードインデックス以上であるとき(138Bの「はい」分岐)、ビデオエンコーダ20は、
ブロックのコンテキストについての変更されたイントラ予測モードインデックステーブルから、選択されたイントラ予測モードについてのモードインデックスに対応するコードワードを決定する。より詳細には、ビデオエンコーダ20は、ブロックのコンテキストについての変更されたイントラ予測モードインデックステーブルから、選択されたイントラ予測モードについてのモードインデックスよりも2小さいものに対応するコードワードを決定する。より詳細には、ビデオエンコーダ20は、選択されたイントラ予測モードについてのモードインデックスよりも2小さいものに等しい変更されたイントラ予測モードインデックスにマッピングされたコードワードを使用する(140B)。
[0163]選択されたイントラ予測モードについてのモードインデックスが両方の最もありえるイントラ予測モードについてのモードインデックス以上であるとき(134Bの「いいえ」分岐)、および選択されたイントラ予測モードについてのモードインデックスが両方の最もありえるイントラ予測モードについてのモードインデックス以上ではないとき(138Bの「いいえ」分岐)、選択されたイントラ予測モードについてのモードインデックスは、第1の最もありえるイントラ予測モードについてのモードインデックス以上であるが、第2の最もありえるイントラ予測モードについてのモードインデックスより小さい(138Bの「いいえ」分岐)。選択されたイントラ予測モードについてのモードインデックスが第1の最もありえるイントラ予測モードについてのモードインデック以上であるが、第2の最もありえるイントラ予測モードについてのモードインデックスより小さいとき、ビデオエンコーダ20は、ブロックのコンテキストについての変更されたイントラ予測モードインデックステーブルから、選択されたイントラ予測モードについてのモードインデックスに対応するコードワードを決定する。より詳細には、ビデオエンコーダ20は、選択されたイントラ予測モードについてのモードインデックスよりも1小さいものに等しい変更されたイントラ予測モードインデックスにマッピングされたコードワードを使用する(140B)。
[0164]上記で説明した方法で最もありえるモードをシグナリングするために第1のビットおよび第2のビットが使用されるので、変更されたイントラ予測モードインデックステーブルは、追加のコードワードを最もありえるイントラ予測モードのインデックスにマッピングする必要はない。したがって、ブロックのために利用可能なイントラ予測モードがK個ある場合、変更されたイントラ予測モードインデックステーブルは、K−2個の変更されたイントラ予測モードインデックスについての可変長コードを提供するだけでよい。
[0165]このようにして、本開示の技法は、ビデオデータのブロックの符号化に使用されるイントラ予測モードを表す可変長のコードワードの使用を提供する。コードワードの長さは、ブロックのコンテキストに基づいて、ブロックについてのイントラ予測モードの可能性に反比例し得る。利用可能なイントラ予測モードの数は、たとえば、HEVCテストモデルまたは他の類似の符号化デバイスでは、比較的大きくなり得る。たとえば、特定のブロックについての利用可能なイントラ予測モードが35個ある。固定長の値を使用して35個の一意のイントラ予測モードを表すために、固定長の値は、少なくとも6ビットを必要とする。しかしながら、可変長のコードワードは、本開示の技法によれば、イントラ予測モードの可能性に反比例する長さを有するので、可能性が十分に決定されていると仮定すると、これらの技法は、ビットストリーム全体にわたって相対的ビット節約をもたらすことができる。
[0166]図7は、ビデオデータのブロックをイントラ予測復号するための例示的な方法を示すフローチャートである。図7の技法は、一般に、ハードウェア、ソフトウェア、ファームウェア、またはそれらの組合せのいずれに実装されようと、任意の処理ユニットまたはプロセッサによって実行することができ、ソフトウェアまたはファームウェアに実装されるとき、ソフトウェアまたはファームウェアのための命令を実行するために、対応するハードウェアが提供され得る。例として、図7の技法は、ビデオデコーダ30(図1および図4)に関して説明するが、他のデバイスが同様の技法を実行するように構成され得ることを理解されたい。その上、図7に示されるステップは、本開示の技法から逸脱することなく、異なる順序でまたは並行して実行されてもよく、追加のステップが追加されたり、いくつかのステップが省略されたりしてもよい。
[0167]ビデオデコーダ30は、イントラ予測モードコード化ブロックについてのコードワードを受信する(150)。コードワードは、一般に、ブロックを符号化するために使用されるイントラ予測モードと、同様に、ブロックを復号するために使用されるイントラ予測モードとを表す。ビデオデコーダ30は、たとえば、ブロックのサイズ、および/または上に隣接するブロックおよび/または左に隣接するブロックなどの隣接するブロックのイントラ予測モードに基づいて、ビデオエンコーダ20のものと同様の方法でブロックについてのコーディングコンテキストを決定する(152)。
[0168]ビデオデコーダ30は、さらに、ブロックについての決定されたコーディングコンテキストに基づいて、ブロックについての変更されたイントラ予測モードインデックステーブルを選択する(154)。ビデオデコーダ30は、いくつかの例では、コンテキストに基づいてイントラ予測モードインデックステーブルを決定し、他の例では、イントラ予測モードインデックスは、固定され、グローバルにすべてのコンテキストに適用することができる。ビデオデコーダ30は、さらに、ブロックのコンテキストについての1つまたは複数の最もありえるイントラ予測モードを決定する(156)。
[0169]次いで、ビデオデコーダ30は、選択されたコードワードテーブル、最もありえるイントラ予測モード、および受信されたコードワードを使用して、ブロックの復号に使用するために、実際のイントラ予測モードを決定する(158)。たとえば、選択されたモードが最もありえるモードであるかどうかを示すシングルビットまたは一連のビットをコードワードが備える場合、ビデオデコーダ30は、シングルビットまたは一連のビットを使用して、最もありえるイントラ予測モードがブロックの復号に使用されるかどうかを決定する。選択されたモードが最もありえるモードではないことが決定された場合、ビデオデコーダ30は、変更されたイントラ予測モードインデックステーブルを使用して、コードワードに基づいて、変更されたイントラ予測モードインデックスを決定し、変更されたイントラ予測モードインデックスに基づいて、ビデオデコーダ30は、ブロックの符号化に使用されるイントラ予測モードを決定する。
[0170]ビデオデコーダ30は、ブロックを復号するために、決定されたイントラ予測モードを使用する(160)。たとえば、ビデオデコーダ30は、決定されたイントラ予測モードを使用して、ブロックについての予測ブロックを計算する。ビデオデコーダ30は、さらに、コード化された量子化変換係数を受信し、ブロックについての残差ブロックを再構築するために、ビデオデコーダ30は、コード化された量子化変換係数を復号し、逆量子化し、および逆変換する。次いで、ビデオデコーダ30は、予測ブロックおよび残差ブロックを合計して、復号されたブロックを形成する。ビデオデコーダ30は、復号されたブロックを出力し(162)、これは、復号されたビデオブロックを表示のためにディスプレイデバイスに(たとえば、フレームバッファを介して)送ることと、たとえば時間的に別個のフレームまたはスライスにおいて、ビデオデータの後続のブロックを復号するとき、参照ブロックとして使用するために、参照フレームバッファに復号されたブロックのコピーを記憶することと、のいずれかまたは両方を含む。
[0171]図8Aは、コード化ブロックについてのイントラ予測モードを示す受信されたコードワードを使用して、ブロックについてのイントラ予測モードを決定するための例示的な方法を示すフローチャートである。この場合も、図8Aの技法は、任意の適したプロセッサにおいて実施することができるが、図8Aの技法は、例として、および説明のために、ビデオデコーダ30の例に関して説明する。図8Aは、一般に、図7のステップ160についての追加の詳細を提供する。図8Aに示される方法のステップは、本開示の技法から逸脱することなく、異なる順序でまたは並行して実行されてもよく、追加のステップが追加されたり、いくらかのステップが省略されたりしてもよい。
[0172]ビデオデコーダ30は、イントラコード化ブロックについてのコードワードを受信する(170A)。上記で説明したように、ビデオデコーダ30は、たとえば、ブロックのサイズ、および/または隣接するブロックのイントラ予測コード化モードに基づいて、ブロックについてのコーディングコンテキストを決定する(172A)。決定されたコンテキストに基づいて、ビデオデコーダ30は、ブロックに対し変更されたイントラ予測モードインデックステーブルを選択し(174A)、ブロックについての最もありえるイントラ予測モードを決定する(176A)。いくつかの例では、ビデオデコーダ30は、さらに、決定されたコンテキストに基づいてブロックについてのイントラ予測モードインデックステーブルを選択する。
[0173]ビデオデコーダ30は、コードワードにおける第1のビットが、選択されたイントラ予測モードが最もありえるモードであることを示すかどうかを決定する。選択されたイントラ予測モードが最もありえるモードである場合(178Aの「はい」分岐)、ビデオデコーダ30は、最もありえるイントラ予測モードを使用して、ブロックを復号する(180A)。一方、選択されたイントラ予測モードが最もありえるモード以外のイントラ予測モードである場合(178Aの「いいえ」分岐)、ビデオデコーダ30は、選択された変更されたイントラ予測モードインデックステーブルから、コードワードに基づいて変更されたイントラ予測モード(MIPM)インデックスを決定する(182A)。
[0174]次いで、ビデオデコーダ30は、変更されたイントラ予測モードインデックスがブロックのコンテキストについての最もありえるイントラ予測モードについてのモードインデックスより小さいかどうかを決定する(184A)。変更されたイントラ予測モードインデックスが、最もありえるイントラ予測モードについてのモードインデックスより小さい場合(184Aの「はい」分岐)、ビデオデコーダ30は、変更されたイントラ予測モードインデックスに等しいモードインデックスを有するイントラ予測モードを使用してブロックを復号する(186A)。一方、変更されたイントラ予測モードインデックスが、最もありえるイントラ予測モードについてのモードインデックス以上である場合(184Aの「いいえ」分岐)、ビデオデコーダ30は、変更されたイントラ予測モードインデックスよりも1大きいものに等しいモードインデックスを有するイントラ予測モードを使用してブロックを復号する(188A)。
[0175]このようにして、図8Aは、現在のブロックのコンテキストに基づいて、ビデオデータのコード化ブロックについての最もありえるイントラ予測モードを決定することと、現在のブロックのコンテキストに基づいてコードワードのテーブルを選択することと、ここで、コードワードのテーブルは、コンテキストに基づいて、最もありえるイントラ予測モード以外のイントラ予測モードに対応する変更されたイントラ予測モードインデックスに対応する複数の可変長のコードワードを備え、コードワードのテーブルを使用して、受信されたコードワードに対応する変更されたイントラ予測モードインデックスのうちの1つを決定することと、コード化ブロックの復号に使用するために、最もありえるイントラ予測モード以外のイントラ予測モードを選択することと、ここで、選択されたイントラ予測モードは、変更されたイントラ予測モードインデックスのうちの決定された1つに対応し、選択されたイントラ予測モードを使用して、現在のブロックを復号することと、を含む方法の一例を表す。
[0176]図8Bは、コード化ブロックについてのイントラ予測モードを示す受信されたコードワードを使用して、ブロックについてのイントラ予測モードを決定するための例示的な方法を示すフローチャートである。この場合も、図8Bの技法は、任意の適したプロセッサにおいて実施することができるが、図8Bの技法は、例として、および説明のために、ビデオデコーダ30の例に関して説明する。図8Bは、一般に、2つ以上の最もありえるモードが使用される例について、図7のステップ160の追加の詳細を提供する。図8Bに示される方法のステップは、本開示の技法から逸脱することなく、異なる順序でまたは並行して実行されてもよく、追加のステップが追加されたり、いくつかのステップが省略されたりしてもよい。
[0177]ビデオデコーダ30は、イントラコード化ブロックについてのコードワードを受信する(170B)。上記で説明したように、ビデオデコーダ30は、たとえば、ブロックのサイズ、および/または隣接するブロックのイントラ予測コード化モードに基づいて、ブロックについてのコーディングコンテキストを決定する(172B)。決定されたコンテキストに基づいて、ビデオデコーダ30は、ブロックについての変更されたイントラ予測モードインデックステーブルを選択し(174B)、ブロックについての最もありえるイントラ予測モードを決定する(176B)。いくつかの例では、ビデオデコーダ30は、さらに、決定されたコンテキストに基づいてブロックについてのイントラ予測モードインデックステーブルを選択する。
[0178]ビデオデコーダ30は、コードワードにおける第1のビットまたは一連のビットが、選択されたイントラ予測モードは最もありえるモードのうちの1つであることを示すかどうかを決定する。選択されたモードが最もありえるモードのうちの1つである場合(178Bの「はい」分岐)、ビデオデコーダ30は、最もありえるイントラ予測モードを使用して、ブロックを復号する(180B)。ビデオデコーダ30は、たとえば、最もありえるモードのうちのどれが選択されたモードであるかを示す第2のビットまたは一連のビットを受信する。一方、第1のビットまたは一連のビットが、選択されたモードが最もありえるモードのうちの1つではないことを示す場合(178Bの「いいえ」分岐)、ビデオデコーダ30は、選択された変更されたイントラ予測モードインデックステーブルからコードワードに基づいて変更されたイントラ予測モード(MIPM)インデックスを決定する(182B)。
[0179]次いで、ビデオデコーダ30は、変更されたイントラ予測モードインデックスがブロックのコンテキストについての第1の最もありえるイントラ予測モードについてのモードインデックスより小さいかどうかを決定する(184B)。上記に説明されるように、第1の最もありえるモードについてのモードインデックスが第2の最もありえるモードについてのモードインデックスよりも低いと仮定される。したがって、変更されたイントラ予測モードインデックスが、第1の最もありえるイントラ予測モードについてのモードインデックスよりも低い場合、第2の最もありえるイントラ予測モードについてのモードインデックスよりも低い。変更されたイントラ予測モードインデックスが第1の最もありえるイントラ予測モードについてのモードインデックスより小さい場合(184Bの「はい」分岐)、ビデオデコーダ30は、変更されたイントラ予測モードインデックスに等しいモードインデックスを有するイントラ予測モードを使用してブロックを復号する(186B)。変更されたイントラ予測モードインデックスが第1の最もありえるイントラ予測モードについてのモードインデックス以上である場合(184Bの「いいえ」分岐)、ビデオデコーダ30は、変更されたイントラ予測モードインデックス+1がブロックのコンテキストについての第2の最もありえるイントラ予測モードについてのモードインデックスより小さいかどうかを決定する(188B)。変更されたイントラ予測モードインデックス+1がブロックのコンテキストについての第2の最もありえるイントラ予測モードについてのモードインデックスより小さい場合(188Bの「はい」分岐)、ビデオデコーダ30は、変更されたイントラ予測モードインデックスよりも1大きいものに等しいモードインデックスを有するイントラ予測モードを使用してブロックを復号する(190B)。
[0180]変更されたイントラ予測モードインデックスが第2の最もありえるイントラ予測モードについてのモードインデックス以上である場合(188Bの「いいえ」分岐)、ビデオデコーダ30は、変更されたイントラ予測モードインデックスよりも2大きいものに等しいモードインデックスを有するイントラ予測モードを使用してブロックを復号する(192B)。
[0181]図5、図6A、図6B、図7、図8A、および図8Bの方法は、モードインデックスに対して変更されたイントラ予測モードインデックスをマッピングすることに関して示されているが、表5および表6の例に関して、上記で説明した方法で、変更されたコードワードインデックスをコードワードインデックスに、またはその逆にマッピングするために、方法の基礎をなす技法を使用することもできることを理解されたい。
[0182]図9は、イントラ予測モードインデックステーブル200と、変更されたイントラ予測モードインデックステーブル210と、コンテキストデータ220との間の関係を示す構成データ250のセットの一例を示す概念図である。構成データ250は、一般に、構成データ66(図2)または構成データ84(図4)に対応し得る。さらに、コンテキスト、テーブル、および最もありえるイントラ予測モードを記述する構成データは、所与のビットストリームに対し、エンコーダとデコーダの両方で同じでなければならない。
[0183]図9の例では、イントラ予測モードインデックステーブル200は、1セットのイントラ予測モード2021〜202K(イントラ予測モード202)と、対応するインデックス2041〜204Kとを含む。説明のために、および例として、イントラ予測モードインデックステーブル200が1つのみ示されているが、構成データ250は、イントラ予測モードインデックステーブル200に類似した複数のイントラ予測モードインデックステーブルを含み得ることを理解されたい。ブロックに利用可能なイントラ予測モードの数は、たとえば表5に関して上記で説明したように、ブロックのサイズに依存し得るので、イントラ予測モードインデックステーブルは、すべてが同じサイズを有する必要はない。インデックス204は、イントラ予測モードインデックス、または単にモードインデックスとも呼ばれ得る。
[0184]変更されたイントラ予測モードインデックステーブル210は、インデックス2121〜212K-1、ならびにコードワード2141〜214K-1を含む。このようにして、変更されたイントラ予測モードインデックステーブル210は、イントラモードインデックステーブル200(K)よりも1つ少ないエントリ(K−1)を備える。上記で説明したように、最もありえるイントラ予測モードは、コードワード214のうちの1つではなく、シングルビットまたは一連のビットを使用して示され得る。したがって、最もありえるイントラ予測モード以外のイントラ予測モードは、コードワード214のうちの1つによって表される。再び、図9の例には、変更されたイントラ予測モードインデックステーブルが1つのみ示されているが、構成データ250は、複数の変更されたイントラ予測モードインデックステーブルを含むことができることを理解されたい。さらに、変更されたイントラ予測モードインデックステーブルの数は、必ずしもイントラモードインデックステーブルの数に等しい必要はない。いくつかの例では、同じモードインデックステーブルが1つまたは複数のイントラモードインデックステーブルに対応し得るように、イントラモードインデックステーブルと変更されたイントラ予測モードインデックステーブルとの間に多対1の関係があり得る。
[0185]さらに、構成データ250は、コンテキストエントリ222Aに類似した複数のコンテキストエントリを含むコンテキストデータ220を含む。この例では、コンテキストエントリ222Aは、最もありえるイントラモードインジケータ224Aと、イントラ予測モードインデックステーブル識別子226Aと、変更されたイントラ予測モードインデックステーブル識別子228Aと、ブロックコンテキストデータ230Aとを含む。ブロックコンテキストデータ230Aは、コンテキストエントリ222Aが適用するブロックを示す情報を含み得る。たとえば、ブロックコンテキストデータ230Aは、コンテキストエントリ222Aが適用するブロックの1つまたは複数のサイズ、ならびにコンテキストエントリ222Aが適用するブロックの隣接するブロックについてのイントラ予測モードを記述する情報を含み得る。一例として、コンテキストエントリ222のうちの1つのブロックコンテキストデータは、コンテキストエントリが16×16のピクセルを有するブロックに対応することを示し、この場合、上に隣接するブロックは、水平のイントラ予測モードを使用して符号化され、左に隣接するブロックも、水平のイントラ予測モードを使用して符号化される。
[0186]最もありえるイントラモードインジケータ224Aは、この例では、イントラ予測モード202Mを示す。いくつかの例では、構成データ250は、あるブロックが、最もありえるイントラ予測モードを使用して符号化されることを表すために使用するためのシングルビットのコードワードを指定する。したがって、ブロックコンテキストデータ230Aに対応するコンテキストを有するブロックでは、この例では、最もありえるイントラ予測モードは、イントラ予測モード202Mである。イントラ予測モード202Mはコンテキストエントリ222Aについての最もありえるイントラ予測モードであるので、イントラ予測モード202Mは、変更されたイントラ予測モードインデックステーブル210におけるコードワード214のうちの1つにマッピングされる必要はなく、したがって、変更されたイントラ予測モードインデックステーブル210のコードワードは、イントラモードインデックステーブル200におけるイントラ予測モード202よりも1つ少ない。
[0187]さらに、この例では、モードインデックス204Mより小さいモードインデックス204、すなわち、モードインデックス2041〜204M-1は、変更されたイントラ予測モードインデックステーブル210の均一に値の定められた変更されたイントラ予測モードインデックス212にマッピングされる。たとえば、この例では、モードインデックス2042がモードインデックス204Mより小さいため、モードインデックス2042は、変更されたイントラ予測モードインデックス2122にマッピングされる。したがって、ビデオエンコーダ20がイントラ予測モード2022を使用してブロックコンテキストデータ230Aによって定義されるコンテキストを有するブロックを符号化するとき、ビデオエンコーダ20は、コードワード2142を使用して、ブロックについてのイントラ予測モードをシグナリングする。同様に、ビデオデコーダ30がブロックコンテキストデータ230Aによって定義されるコンテキストを有するブロックについてのコードワード2142を受信するとき、ビデオデコーダ30は、ブロックの符号化に使用されるイントラ予測モード(および、同様に、ブロックの復号に使用されるイントラ予測モード)がイントラ予測モード2022を備えることを決定する。同様に、モードインデックス204M-1が変更されたイントラ予測モードインデックス212M-1にマッピングされるため、イントラ予測モード202M-1は、コードワード214M-1にマッピングされる。
[0188]一方、モードインデックス204Mよりも大きいモードインデックス204、すなわち、この例では、モードインデックス204M-1〜204Kは、モードインデックスよりも1小さい変更されたイントラ予測モードインデックス212にマッピングされる。たとえば、この例では、モードインデックス204K-1がモードインデックス204Mよりも大きいため、モードインデックス204K-1は、変更されたイントラ予測モードインデックス212K-2にマッピングされる。したがって、ビデオエンコーダ20がイントラ予測モード202K-1を使用してブロックコンテキストデータ230Aによって定義されるコンテキストを有するブロックを符号化するとき、ビデオエンコーダ20は、コードワード214K-2を使用して、ブロックについてのイントラ予測モードをシグナリングする。同様に、ビデオデコーダ30がブロックコンテキストデータ230Aによって定義されるコンテキストを有するブロックについてのコードワード214K-2を受信するとき、ビデオデコーダ30は、ブロックの符号化に使用されるイントラ予測モード(および、同様に、ブロックの復号に使用されるイントラ予測モード)がイントラ予測モード202K-1を備えることを決定する。同様に、モードインデックス204M+1が変更されたイントラ予測モードインデックス212Mにマッピングされるため、イントラ予測モード202M+1は、コードワード214Mにマッピングされる。
[0189]このように、モードインデックスjにマッピングされるイントラ予測モードが与えられると、ビデオエンコーダ20は、以下のステップ関数f(j)を使用して、最もありえるモード以外のイントラ予測モードに対し、コードワードを決定する。式中、mは最もありえるイントラ予測モードについてのモードインデックスを表し、コードワード(n)は変更されたイントラ予測モードインデックスnに割り当てられるコードワードを表す。
Figure 2013539940
[0190]同様に、最もありえるモードでない選択されたイントラ予測モードについてのコードワードが与えられると、ビデオデコーダ30は、以下のステップ関数g(n)を使用して、コードワードにマッピングされるイントラ予測モードを決定する。式中、mは最もありえるイントラ予測モードについてのモードインデックスを表し、モード(j)はモードインデックスjにマッピングされるイントラコーディングモードを指す。
Figure 2013539940
[0191]これらの概念が、2つの最もありえるモードが使用される例に拡張されるとき、モードインデックスjにマッピングされるイントラコーディングモードが与えられると、ビデオエンコーダ20は、以下のステップ関数f(j)を使用して、コードワードを決定する。式中、m1は第1の最もありえるイントラ予測モードについてのモードインデックスを表し、m2は第2の最もありえるイントラ予測モードについてのモードインデックスを表し、コードワード(n)は変更されたイントラ予測モードインデックスnに割り当てられるコードワードを表す。
Figure 2013539940
[0192]同様に、コードワードが与えられると、ビデオデコーダ30は、以下のステップ関数g(n)を使用して、コードワードにマッピングされるイントラ予測モードを決定する。式中、m1は第1の最もありえるイントラ予測モードについてのモードインデックスを表し、m2は第2の最もありえるイントラ予測モードについてのモードインデックスを表し、モード(j)はモードインデックスjにマッピングされるイントラ予測モードを指す。
Figure 2013539940
[0193]1つまたは複数の例では、説明した機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。ソフトウェアで実装される場合、機能は、1つまたは複数の命令またはコードとしてコンピュータ可読媒体上に記憶されるか、あるいはコンピュータ可読媒体を介して送信され、ハードウェアベースの処理ユニットによって実行され得る。コンピュータ可読媒体は、たとえば、通信プロトコルに従って、ある場所から別の場所へのコンピュータプログラムの転送を可能にする任意の媒体を含むデータ記憶媒体または通信媒体などの有形媒体に対応するコンピュータ可読記憶媒体を含み得る。このようにして、コンピュータ可読媒体は、概して、(1)非一時的である有形コンピュータ可読記憶媒体、あるいは(2)信号または搬送波などの通信媒体に対応し得る。データ記憶媒体は、本開示で説明した技法の実装のための命令、コードおよび/またはデータ構造を取り出すために1つまたは複数のコンピュータあるいは1つまたは複数のプロセッサによってアクセスされ得る任意の利用可能な媒体であり得る。コンピュータプログラム製品はコンピュータ可読媒体を含み得る。
[0194]限定ではなく例として、そのようなコンピュータ可読記憶媒体は、RAM、ROM、EEPROM、CD−ROMまたは他の光ディスクストレージ、磁気ディスクストレージ、または他の磁気ストレージデバイス、フラッシュメモリ、あるいは命令またはデータ構造の形態の所望のプログラムコードを記憶するために使用され得、コンピュータによってアクセスされ得る、任意の他の媒体を備えることができる。同様に、いかなる接続も適切にコンピュータ可読媒体と称される。たとえば、命令が、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線(DSL)、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、DSL、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。ただし、コンピュータ可読記憶媒体およびデータ記憶媒体は、接続、搬送波、信号、または他の一時的媒体を含まないが、代わりに非一時的有形記憶媒体を対象とすることを理解されたい。本明細書で使用するディスク(disk)およびディスク(disc)は、コンパクトディスク(disc)(CD)、レーザディスク(disc)、光ディスク(disc)、デジタル多用途ディスク(disc)(DVD)、フロッピー(登録商標)ディスク(disk)およびブルーレイディスク(disc)を含み、ディスク(disk)は、通常、データを磁気的に再生し、ディスク(disc)は、データをレーザで光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲内に含めるべきである。
[0195]命令は、1つまたは複数のデジタル信号プロセッサ(DSP)などの1つまたは複数のプロセッサ、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブル論理アレイ(FPGA)、あるいは他の等価な集積回路またはディスクリート論理回路によって実行され得る。したがって、本明細書で使用する「プロセッサ」という用語は、前述の構造、または本明細書で説明する技法の実装に好適な他の構造のいずれかを指す。さらに、いくつかの態様では、本明細書で説明した機能は、符号化および復号のために構成された専用のハードウェアおよび/またはソフトウェアモジュール内に提供され得、あるいは複合コーデックに組み込まれ得る。また、本技法は、1つまたは複数の回路または論理要素中に十分に実装され得る。
[0196]本開示の技法は、ワイヤレスハンドセット、集積回路(IC)またはICのセット(たとえば、チップセット)を含む、多種多様なデバイスまたは装置において実施され得る。本開示では、開示する技法を実行するように構成されたデバイスの機能的態様を強調するために様々な構成要素、モジュール、またはユニットについて説明したが、それらの構成要素、モジュール、またはユニットを、必ずしも異なるハードウェアユニットによって実現する必要はない。むしろ、上記で説明したように、様々なユニットが、好適なソフトウェアおよび/またはファームウェアとともに、上記で説明したように1つまたは複数のプロセッサを含んで、コーデックハードウェアユニットにおいて組み合わせられるか、または相互動作ハードウェアユニットの集合によって与えられ得る。

Claims (76)

  1. ビデオデータを復号する方法であって、
    現在のブロックのコンテキストに基づいて、ビデオデータのコード化ブロックについての第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードを決定することと、
    前記現在のブロックの前記コンテキストに基づいてコードワードのテーブルを選択することと、前記コードワードのテーブルは、前記第1の最もありえるイントラ予測モードおよび前記第2の最もありえるイントラ予測モード以外のイントラ予測モードに対応する変更されたイントラ予測モードインデックスに対応する複数の可変長のコードワードを備え、
    前記コードワードのテーブルを使用して、受信されたコードワードに対応する前記変更されたイントラ予測モードインデックスのうちの1つを決定することと、
    前記コード化ブロックの復号に使用するために、前記第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モード以外のイントラ予測モードを選択することと、前記選択されたイントラ予測モードは、前記変更されたイントラ予測モードインデックスのうちの前記決定された1つに対応し、
    前記選択されたイントラ予測モードを使用して、前記現在のブロックを復号することと
    を備える方法。
  2. 前記現在のブロックに対して左に隣接するブロックと前記現在のブロックに対して上に隣接するブロックとのうちの少なくとも1つについてのイントラ予測モードに少なくとも一部基づいて、前記現在のブロックについての前記コンテキストを決定することをさらに備える、請求項1に記載の方法。
  3. 前記コード化ブロックのサイズに少なくとも一部基づいて、前記現在のブロックについての前記コンテキストを決定することをさらに備える、請求項1に記載の方法。
  4. 前記イントラ予測モードの各々は、それぞれのモードインデックスに対応する、請求項1に記載の方法。
  5. 前記変更されたイントラ予測モードインデックスのうちの前記決定された1つの変更されたイントラ予測モードインデックス+1が前記第1の最もありえるイントラ予測モードについてのモードインデックス以上であり、前記第2の最もありえるイントラ予測モードについてのモードインデックス以上であるとき、前記イントラ予測モードを選択することは、前記1つの変更されたイントラ予測モードインデックスよりも2大きいモードインデックスに対応する前記イントラ予測モードを選択することを備える、請求項4に記載の方法。
  6. 前記変更されたイントラ予測モードインデックスのうちの前記決定された1つの変更されたイントラ予測モードインデックスが前記第1の最もありえるイントラ予測モードについてのモードインデックスより小さく、前記第2の最もありえるイントラ予測モードについてのモードインデックスより小さいとき、前記イントラ予測モードを選択することは、前記1つの変更されたイントラ予測モードインデックスに等しいモードインデックスを有する前記イントラ予測モードを選択することを備える、請求項4に記載の方法。
  7. 前記変更されたイントラ予測モードインデックスのうちの前記決定された1つの変更されたイントラ予測モードインデックス+1が前記第1の最もありえるイントラ予測モードについてのモードインデックス以上であり、前記第2の最もありえるイントラ予測モードについてのモードインデックスより小さいとき、前記イントラ予測モードを選択することは、前記1つの変更されたイントラ予測モードインデックスよりも1大きいモードインデックスに対応する前記イントラ予測モードを選択することを備える、請求項4に記載の方法。
  8. ビデオデータを復号するための装置であって、
    現在のブロックのコンテキストに基づいて、ビデオデータのコード化ブロックについての第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードを決定し、
    前記現在のブロックの前記コンテキストに基づいてコードワードのテーブルを選択し、前記コードワードのテーブルは、前記第1の最もありえるイントラ予測モードおよび前記第2の最もありえるイントラ予測モード以外のイントラ予測モードに対応する変更されたイントラ予測モードインデックスに対応する複数の可変長のコードワードを備え、
    前記コードワードのテーブルを使用して、受信されたコードワードに対応する前記変更されたイントラ予測モードインデックスのうちの1つを決定し、
    前記コード化ブロックの復号に使用するために、前記第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モード以外のイントラ予測モードを選択し、前記選択されたイントラ予測モードは、前記変更されたイントラ予測モードインデックスのうちの前記決定された1つに対応し、
    前記選択されたイントラ予測モードを使用して、前記現在のブロックを復号する
    ように構成されたビデオデコーダを備える装置。
  9. 前記ビデオデコーダは、前記現在のブロックに対して左に隣接するブロックと前記現在のブロックに対して上に隣接するブロックとのうちの少なくとも1つについてのイントラ予測モードに少なくとも一部基づいて、前記現在のブロックについての前記コンテキストを決定するようにさらに構成される、請求項8に記載の装置。
  10. 前記ビデオデコーダは、前記コード化ブロックのサイズに少なくとも一部基づいて、前記現在のブロックについての前記コンテキストを決定するようにさらに構成される、請求項8に記載の装置。
  11. 前記イントラ予測モードの各々は、それぞれのモードインデックスに対応する、請求項8に記載の装置。
  12. 前記変更されたイントラ予測モードインデックスのうちの前記決定された1つの変更されたイントラ予測モードインデックス+1が前記第1の最もありえるイントラ予測モードについてのモードインデックス以上であり、前記第2の最もありえるイントラ予測モードについてのモードインデックス以上であるとき、前記イントラ予測モードを選択することは、前記1つの変更されたイントラ予測モードインデックスよりも2大きいモードインデックスに対応する前記イントラ予測モードを選択することを備える、請求項11に記載の装置。
  13. 前記変更されたイントラ予測モードインデックスのうちの前記決定された1つの変更されたイントラ予測モードインデックスが前記第1の最もありえるイントラ予測モードについてのモードインデックスより小さく、前記第2の最もありえるイントラ予測モードについてのモードインデックスより小さいとき、前記ビデオデコーダは、前記1つの変更されたイントラ予測モードインデックスに等しいモードインデックスを有する前記イントラ予測モードを選択することによって、前記イントラ予測モードを選択するようにさらに構成される、請求項11に記載の装置。
  14. 前記変更されたイントラ予測モードインデックスのうちの前記決定された1つの変更されたイントラ予測モードインデックス+1が前記第1の最もありえるイントラ予測モードについてのモードインデックス以上であり、前記第2の最もありえるイントラ予測モードについてのモードインデックスより小さいとき、前記イントラ予測モードを選択することは、前記1つの変更されたイントラ予測モードインデックスよりも1大きいモードインデックスに対応する前記イントラ予測モードを選択することを備える、請求項11に記載の装置。
  15. 前記装置は、
    集積回路と、
    マイクロプロセッサと、
    前記ビデオデコーダを含むワイヤレス通信デバイスと、
    のうちの少なくとも1つを備える、請求項8に記載の装置。
  16. ビデオデータを符号化する方法であって、
    現在のブロックの符号化コンテキストに基づいて、ビデオデータの前記現在のブロックについての第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードを決定することと、
    前記現在のブロックの前記コンテキストに基づいてコードワードのテーブルを選択することと、前記コードワードのテーブルは、前記第1の最もありえるイントラ予測モードおよび前記第2の最もありえるイントラ予測モード以外のイントラ予測モードに対応する変更されたイントラ予測モードインデックスに対応する複数の可変長のコードワードを備え、
    前記第1の最もありえるイントラ予測モードおよび前記第2の最もありえるイントラ予測モード以外の前記イントラ予測モードのうちの1つを使用して、前記現在のブロックを符号化することと、
    前記コードワードのテーブルを使用して、前記イントラ予測モードのうちの前記1つに対応する前記変更されたイントラ予測モードインデックスのうちの1つを決定することと、
    前記選択されたコードワードのテーブルからコードワードを出力することと、前記コードワードは前記変更されたイントラ予測モードインデックスのうちの前記1つに対応する、
    を備える方法。
  17. 前記現在のブロックに対して左に隣接するブロックと前記現在のブロックに対して上に隣接するブロックとのうちの少なくとも1つについてのモードに少なくとも一部基づいて、前記現在のブロックについての前記符号化コンテキストを決定することをさらに備える、請求項16に記載の方法。
  18. 前記現在のブロックのサイズに少なくとも一部基づいて、前記現在のブロックについての前記符号化コンテキストを決定することをさらに備える、請求項16に記載の方法。
  19. 前記イントラ予測モードの各々は、それぞれのモードインデックスに対応する、請求項16に記載の方法。
  20. 前記イントラ予測モードのうちの1つについてのモードインデックスが前記第1の最もありえるイントラ予測モードについてのモードインデックスよりも大きく、前記第2の最もありえるイントラ予測モードについてのモードインデックスよりも大きいとき、前記変更されたイントラ予測モードインデックスのうちの前記1つを決定することは、前記最もありえるイントラ予測モードについての前記モードインデックスよりも2小さい前記変更されたイントラ予測モードインデックスのうちの1つを決定することを備える、請求項19に記載の方法。
  21. 前記イントラ予測モードのうちの1つについてのモードインデックスが前記第1の最もありえるイントラ予測モードについてのモードインデックスより小さく、前記第2の最もありえるイントラ予測モードについてのモードインデックスより小さいとき、前記変更されたイントラ予測モードインデックスのうちの前記1つを決定することは、前記最もありえるイントラ予測モードについての前記モードインデックスに等しい前記変更されたイントラ予測モードインデックスのうちの1つを決定することを備える、請求項19に記載の方法。
  22. 前記イントラ予測モードのうちの1つについてのモードインデックスが前記第1の最もありえるイントラ予測モードについてのモードインデックス以上であり、前記第2の最もありえるイントラ予測モードについてのモードインデックスより小さいとき、前記変更されたイントラ予測モードインデックスのうちの前記1つを決定することは、前記最もありえるイントラ予測モードについての前記モードインデックスよりも1小さい前記変更されたイントラ予測モードインデックスのうちの1つを決定することを備える、請求項19に記載の方法。
  23. ビデオデータを符号化するための装置であって、
    現在のブロックの符号化コンテキストに基づいて、ビデオデータの前記現在のブロックについての第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードを決定し、
    前記現在のブロックの前記コンテキストに基づいてコードワードのテーブルを選択し、前記コードワードのテーブルは、前記第1の最もありえるイントラ予測モードおよび前記第2の最もありえるイントラ予測モード以外のイントラ予測モードに対応する変更されたイントラ予測モードインデックスに対応する複数の可変長のコードワードを備え、
    前記第1の最もありえるイントラ予測モードおよび前記第2の最もありえるイントラ予測モード以外の前記イントラ予測モードのうちの1つを使用して、前記現在のブロックを符号化し、
    前記コードワードのテーブルを使用して、前記イントラ予測モードのうちの前記1つに対応する前記変更されたイントラ予測モードインデックスのうちの1つを決定し、
    前記選択されたコードワードのテーブルからコードワードを出力し、前記コードワードは前記変更されたイントラ予測モードインデックスのうちの前記1つに対応する、
    ように構成されたビデオエンコーダを備える装置。
  24. 前記ビデオエンコーダは、前記現在のブロックに対して左に隣接するブロックと前記現在のブロックに対して上に隣接するブロックとのうちの少なくとも1つについてのモードに少なくとも一部基づいて、前記現在のブロックについての前記符号化コンテキストを決定するようにさらに構成される、請求項23に記載の装置。
  25. 前記ビデオエンコーダは、前記現在のブロックのサイズに少なくとも一部基づいて、前記現在のブロックについての前記符号化コンテキストを決定するようにさらに構成される、請求項23に記載の装置。
  26. 前記イントラ予測モードの各々は、それぞれのモードインデックスに対応する、請求項23に記載の装置。
  27. 前記イントラ予測モードのうちの1つについてのモードインデックスが前記第1の最もありえるイントラ予測モードについてのモードインデックスよりも大きく、前記第2の最もありえるイントラ予測モードについてのモードインデックスよりも大きいとき、前記ビデオエンコーダは、前記最もありえるイントラ予測モードについての前記モードインデックスよりも2小さい前記変更されたイントラ予測モードインデックスのうちの1つを決定することによって、前記変更されたイントラ予測モードインデックスのうちの前記1つを決定するようにさらに構成される、請求項26に記載の装置。
  28. 前記イントラ予測モードのうちの1つについてのモードインデックスが前記第1の最もありえるイントラ予測モードについてのモードインデックスより小さく、前記第2の最もありえるイントラ予測モードについてのモードインデックスより小さいとき、前記ビデオエンコーダは、前記最もありえるイントラ予測モードについての前記モードインデックスに等しい前記変更されたイントラ予測モードインデックスのうちの1つを決定することによって、前記変更されたイントラ予測モードインデックスのうちの前記1つを決定するようにさらに構成される、請求項23に記載の装置。
  29. 前記イントラ予測モードのうちの1つについてのモードインデックスが前記第1の最もありえるイントラ予測モードについてのモードインデックス以上であり、前記第2の最もありえるイントラ予測モードについてのモードインデックスより小さいとき、前記ビデオエンコーダは、前記最もありえるイントラ予測モードについての前記モードインデックスよりも1小さい前記変更されたイントラ予測モードインデックスのうちの1つを決定することによって、前記変更されたイントラ予測モードインデックスのうちの前記1つを決定するようにさらに構成される、請求項23に記載の装置。
  30. 前記装置が、
    集積回路と、
    マイクロプロセッサと、
    前記ビデオデコーダを含むワイヤレス通信デバイスと、
    のうちの少なくとも1つを備える、請求項23に記載の装置。
  31. ビデオデータを復号するための装置であって、
    現在のブロックのコンテキストに基づいて、ビデオデータのコード化ブロックについての第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードを決定する手段と、
    前記現在のブロックの前記コンテキストに基づいてコードワードのテーブルを選択する手段と、前記コードワードのテーブルは、前記第1の最もありえるイントラ予測モードおよび前記第2の最もありえるイントラ予測モード以外のイントラ予測モードに対応する変更されたイントラ予測モードインデックスに対応する複数の可変長のコードワードを備え、
    前記コードワードのテーブルを使用して、受信されたコードワードに対応する前記変更されたイントラ予測モードインデックスのうちの1つを決定する手段と、
    前記コード化ブロックの復号に使用するために、前記第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モード以外のイントラ予測モードを選択する手段と、前記選択されたイントラ予測モードは、前記変更されたイントラ予測モードインデックスのうちの前記決定された1つに対応し、
    前記選択されたイントラ予測モードを使用して、前記現在のブロックを復号する手段と、
    を備える装置。
  32. 前記現在のブロックに対して左に隣接するブロックと前記現在のブロックに対して上に隣接するブロックとのうちの少なくとも1つについてのイントラ予測モードに少なくとも一部基づいて、前記現在のブロックについての前記コンテキストを決定する手段
    をさらに備える、請求項31に記載の装置。
  33. 前記コード化ブロックのサイズに少なくとも一部基づいて、前記現在のブロックについての前記コンテキストを決定する手段
    をさらに備える、請求項31に記載の装置。
  34. ビデオデータを符号化するための装置であって、
    現在のブロックの符号化コンテキストに基づいて、ビデオデータの前記現在のブロックについての第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードを決定する手段と、
    前記現在のブロックの前記コンテキストに基づいてコードワードのテーブルを選択する手段と、前記コードワードのテーブルは、前記第1の最もありえるイントラ予測モードおよび前記第2の最もありえるイントラ予測モード以外のイントラ予測モードに対応する変更されたイントラ予測モードインデックスに対応する複数の可変長のコードワードを備え、
    前記第1の最もありえるイントラ予測モードおよび前記第2の最もありえるイントラ予測モード以外の前記イントラ予測モードのうちの1つを使用して、前記現在のブロックを符号化する手段と、
    前記コードワードのテーブルを使用して、前記イントラ予測モードのうちの前記1つに対応する前記変更されたイントラ予測モードインデックスのうちの1つを決定する手段と、
    前記選択されたコードワードのテーブルからコードワードを出力する手段と、前記コードワードは前記変更されたイントラ予測モードインデックスのうちの前記1つに対応する、
    を備える装置。
  35. 前記現在のブロックに対して左に隣接するブロックと前記現在のブロックに対して上に隣接するブロックとのうちの少なくとも1つについてのモードに少なくとも一部基づいて、前記現在のブロックについての前記符号化コンテキストを決定する手段
    をさらに備える、請求項34に記載の装置。
  36. 前記現在のブロックのサイズに少なくとも一部基づいて、前記現在のブロックについての前記符号化コンテキストを決定する手段
    をさらに備える、請求項34に記載の装置。
  37. 実行されると、1つまたは複数のプロセッサに、
    現在のブロックのコンテキストに基づいて、ビデオデータのコード化ブロックについての第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードを決定させ、
    前記現在のブロックの前記コンテキストに基づいてコードワードのテーブルを選択させ、前記コードワードのテーブルは、前記第1の最もありえるイントラ予測モードおよび前記第2の最もありえるイントラ予測モード以外のイントラ予測モードに対応する変更されたイントラ予測モードインデックスに対応する複数の可変長のコードワードを備え、
    前記コードワードのテーブルを使用して、受信されたコードワードに対応する前記変更されたイントラ予測モードインデックスのうちの1つを決定させ、
    前記コード化ブロックの復号に使用するために、前記第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モード以外のイントラ予測モードを選択させ、前記選択されたイントラ予測モードは、前記変更されたイントラ予測モードインデックスのうちの前記決定された1つに対応し、
    前記選択されたイントラ予測モードを使用して、前記現在のブロックを復号させる
    命令を記憶するコンピュータ可読記憶媒体。
  38. 実行されると、1つまたは複数のプロセッサに、
    現在のブロックの符号化コンテキストに基づいて、ビデオデータの前記現在のブロックについての第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードを決定させ、
    前記現在のブロックの前記コンテキストに基づいてコードワードのテーブルを選択させ、前記コードワードのテーブルは、前記第1の最もありえるイントラ予測モードおよび前記第2の最もありえるイントラ予測モード以外のイントラ予測モードに対応する変更されたイントラ予測モードインデックスに対応する複数の可変長のコードワードを備え、
    前記第1の最もありえるイントラ予測モードおよび前記第2の最もありえるイントラ予測モード以外の前記イントラ予測モードのうちの1つを使用して、前記現在のブロックを符号化させ、
    前記コードワードのテーブルを使用して、前記イントラ予測モードのうちの前記1つに対応する前記変更されたイントラ予測モードインデックスのうちの1つを決定させ、
    前記選択されたコードワードのテーブルからコードワードを出力させ、前記コードワードは前記変更されたイントラ予測モードインデックスのうちの前記1つに対応する、
    命令を記憶するコンピュータ可読記憶媒体。
  39. ビデオデータを復号する方法であって、
    現在のブロックのコンテキストに基づいて、ビデオデータの前記現在のブロックについての第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードを決定することと、
    前記現在のブロックの前記コンテキストに基づいて、コードワードのテーブルを選択することと、前記コードワードのテーブルは、コードワードインデックスに対応する複数の可変長のコードワードを備え、前記コードワードインデックスはイントラ予測モードにマッピングされ、
    前記コードワードのテーブルを使用して、受信されたコードワードに対応する変更されたコードワードインデックスを決定することと、
    前記コード化ブロックの復号に使用するために、前記第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モード以外のイントラ予測モードを選択することと、前記選択されたイントラ予測モードは、前記変更されたコードワードインデックス、前記第1の最もありえるイントラ予測モード、および前記第2の最もありえるイントラ予測モードに基づいて選択されたコードワードインデックスに対応し、
    前記選択されたイントラ予測モードを使用して、前記現在のブロックを復号することと、
    を備える方法。
  40. 前記現在のブロックに対して左に隣接するブロックと前記現在のブロックに対して上に隣接するブロックとのうちの少なくとも1つについてのイントラ予測モードに少なくとも一部基づいて、前記現在のブロックについての前記コンテキストを決定することをさらに備える、請求項39に記載の方法。
  41. 前記コード化ブロックのサイズに少なくとも一部基づいて、前記現在のブロックについての前記コンテキストを決定することをさらに備える、請求項39に記載の方法。
  42. 前記変更されたコードワードインデックス+1が前記第1の最もありえるイントラ予測モードについてのコードワードインデックス以上であり、前記第2の最もありえるイントラ予測モードについてのコードワードインデックス以上であるとき、前記イントラ予測モードを選択することは、前記変更されたイントラ予測モードインデックスよりも2大きいコードワードインデックスに対応する前記イントラ予測モードを選択することを備える、請求項39に記載の方法。
  43. 前記変更されたコードワードインデックスが前記第1の最もありえるイントラ予測モードについてのコードワードインデックスより小さく、前記第2の最もありえるイントラ予測モードについてのコードワードインデックスより小さいとき、前記イントラ予測モードを選択することは、前記変更されたコードワードインデックスに等しいコードワードインデックスを有する前記イントラ予測モードを選択することを備える、請求項39に記載の方法。
  44. 前記変更されたコードワードインデックス+1が前記第1の最もありえるイントラ予測モードについてのモードインデックス以上であり、前記第2の最もありえるイントラ予測モードについてのモードインデックスより小さいとき、前記イントラ予測モードを選択することは、前記変更されたイントラコードワードインデックスよりも1大きいコードワードインデックスに対応する前記イントラ予測モードを選択することを備える、請求項39に記載の方法。
  45. イントラ予測モードに対する前記コードワードインデックスのマッピングを動的に調整すること
    をさらに備える、請求項39に記載の方法。
  46. ビデオデータを復号するための装置であって、
    現在のブロックのコンテキストに基づいて、ビデオデータの前記現在のブロックについての第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードを決定し、
    前記現在のブロックの前記コンテキストに基づいてコードワードのテーブルを選択し、前記コードワードのテーブルはコードワードインデックスに対応する複数の可変長のコードワードを備え、前記コードワードインデックスはイントラ予測モードにマッピングされ、
    前記コードワードのテーブルを使用して、受信されたコードワードに対応する変更されたコードワードインデックスを決定し、
    前記コード化ブロックの復号に使用するために、前記第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モード以外のイントラ予測モードを選択し、前記選択されたイントラ予測モードは、前記変更されたコードワードインデックス、前記第1の最もありえるイントラ予測モード、および前記第2の最もありえるイントラ予測モードに基づいて選択されたコードワードインデックスに対応し、
    前記選択されたイントラ予測モードを使用して、前記現在のブロックを復号する
    ように構成されたビデオデコーダを備える装置。
  47. 前記ビデオデコーダは、前記現在のブロックに対して左に隣接するブロックと前記現在のブロックに対して上に隣接するブロックとのうちの少なくとも1つについてのイントラ予測モードに少なくとも一部基づいて、前記現在のブロックについての前記コンテキストを決定するようにさらに構成される、請求項46に記載の装置。
  48. 前記ビデオデコーダは、前記コード化ブロックのサイズに少なくとも一部基づいて、前記現在のブロックについての前記コンテキストを決定するようにさらに構成される、請求項46に記載の装置。
  49. 前記変更されたコードワードインデックス+1が前記第1の最もありえるイントラ予測モードについてのコードワードインデックス以上であり、前記第2の最もありえるイントラ予測モードについてのコードワードインデックス以上であるとき、前記イントラ予測モードを選択することは、前記変更されたイントラコードワードインデックスよりも2大きいコードワードインデックスに対応する前記イントラ予測モードを選択することを備える、請求項46に記載の装置。
  50. 前記変更されたコードワードインデックスが前記第1の最もありえるイントラ予測モードについてのコードワードインデックスより小さく、前記第2の最もありえるイントラ予測モードについてのコードワードインデックスより小さいとき、前記イントラ予測モードを選択することは、前記変更されたコードワードインデックスに等しいコードワードインデックスを有する前記イントラ予測モードを選択することを備える、請求項46に記載の装置。
  51. 前記変更されたコードワードインデックス+1が前記第1の最もありえるイントラ予測モードについてのモードインデックス以上であり、前記第2の最もありえるイントラ予測モードについてのモードインデックスより小さいとき、前記イントラ予測モードを選択することは、前記変更されたコードワードインデックスよりも1大きいコードワードインデックスに対応する前記イントラ予測モードを選択することを備える、請求項46に記載の装置。
  52. 前記ビデオデコーダは、イントラ予測モードに対する前記コードワードインデックスのマッピングを動的に調整するようにさらに構成される、請求項46に記載の装置。
  53. 前記装置は、
    集積回路と、
    マイクロプロセッサと、
    前記ビデオデコーダを含むワイヤレス通信デバイスと、
    のうちの少なくとも1つを備える、請求項46に記載の装置。
  54. ビデオデータを復号するための装置であって、
    現在のブロックのコンテキストに基づいて、ビデオデータの前記現在のブロックについての第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードを決定する手段と、
    前記現在のブロックの前記コンテキストに基づいて、コードワードのテーブルを選択する手段と、前記コードワードのテーブルは、コードワードインデックスに対応する複数の可変長のコードワードを備え、前記コードワードインデックスはイントラ予測モードにマッピングされ、
    前記コードワードのテーブルを使用して、受信されたコードワードに対応する変更されたコードワードインデックスを決定する手段と、
    前記コード化ブロックの復号に使用するために、前記第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モード以外のイントラ予測モードを選択する手段と、前記選択されたイントラ予測モードは、前記変更されたコードワードインデックス、前記第1の最もありえるイントラ予測モード、および前記第2の最もありえるイントラ予測モードに基づいて選択されたコードワードインデックスに対応し、
    前記選択されたイントラ予測モードを使用して、前記現在のブロックを復号する手段と、
    を備える装置。
  55. 前記現在のブロックに対して左に隣接するブロックと前記現在のブロックに対して上に隣接するブロックとのうちの少なくとも1つについてのイントラ予測モードに少なくとも一部基づいて、前記現在のブロックについての前記コンテキストを決定する手段をさらに備える、請求項54に記載の装置。
  56. 前記コード化ブロックのサイズに少なくとも一部基づいて、前記現在のブロックについての前記コンテキストを決定する手段をさらに備える、請求項54に記載の装置。
  57. 実行されると、1つまたは複数のプロセッサに、
    現在のブロックのコンテキストに基づいて、ビデオデータの前記現在のブロックについての第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードを決定させ、
    前記現在のブロックの前記コンテキストに基づいて、コードワードのテーブルを選択させ、前記コードワードのテーブルは、コードワードインデックスに対応する複数の可変長のコードワードを備え、前記コードワードインデックスはイントラ予測モードにマッピングされ、
    前記コードワードのテーブルを使用して、受信されたコードワードに対応する変更されたコードワードインデックスを決定させ、
    前記コード化ブロックの復号に使用するために、前記第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モード以外のイントラ予測モードを選択させ、前記選択されたイントラ予測モードは、前記変更されたコードワードインデックス、前記第1の最もありえるイントラ予測モード、および前記第2の最もありえるイントラ予測モードに基づいて選択されたコードワードインデックスに対応し、
    前記選択されたイントラ予測モードを使用して、前記現在のブロックを復号させる
    命令を記憶するコンピュータ可読記憶媒体。
  58. ビデオデータを符号化する方法であって、
    現在のブロックの符号化コンテキストに基づいて、ビデオデータの前記現在のブロックについての第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードを決定することと、
    前記現在のブロックの前記コンテキストに基づいて、コードワードのテーブルを選択することと、前記コードワードのテーブルは、コードワードインデックスに対応する複数の可変長のコードワードを備え、前記コードワードインデックスはイントラ予測モードにマッピングされ、
    前記第1の最もありえるイントラ予測モードおよび前記第2の最もありえるイントラ予測モード以外の前記イントラ予測モードのうちの1つを使用して、前記現在のブロックを符号化することと、
    前記現在のブロックを符号化するために使用される前記イントラ予測モードのうちの前記1つの前記コードワードインデックス、前記第1の最もありえるモードにマッピングされたコードワードインデックス、および前記第2の最もありえるモードにマッピングされたコードワードインデックスに基づいて、変更されたコードワードインデックスを決定することと、
    前記選択されたコードワードのテーブルからコードワードを出力することと、前記コードワードは前記変更されたコードワードインデックスに対応する、
    を備える方法。
  59. 前記現在のブロックに対して左に隣接するブロックと前記現在のブロックに対して上に隣接するブロックとのうちの少なくとも1つについてのモードに少なくとも一部基づいて、前記現在のブロックについての前記符号化コンテキストを決定することをさらに備える、請求項58に記載の方法。
  60. 前記コード化ブロックのサイズに少なくとも一部基づいて、前記現在のブロックについての前記符号化コンテキストを決定することをさらに備える、請求項58に記載の方法。
  61. 前記現在のブロックの符号化に使用される前記イントラ予測モードのうちの前記1つの前記コードワードインデックスが前記第1の最もありえるイントラ予測モードにマッピングされたコードワードインデックスよりも大きく、前記第2の最もありえるイントラ予測モードにマッピングされたコードワードインデックスよりも大きいとき、前記変更されたコードワードインデックスを決定することは、前記コードワードインデックスよりも2小さい前記変更されたコードワードインデックスを決定することを備える、請求項58に記載の方法。
  62. 前記現在のブロックの符号化に使用される前記イントラ予測モードのうちの前記1つの前記コードワードインデックスが前記第1の最もありえるイントラ予測モードにマッピングされたコードワードインデックスより小さく、前記第2の最もありえるイントラ予測モードにマッピングされたモードインデックスより小さいとき、前記変更されたコードワードインデックスを決定することは、前記コードワードインデックスに等しい前記変更されたコードワードインデックスを決定することを備える、請求項58に記載の方法。
  63. 前記現在のブロックの符号化に使用される前記イントラ予測モードのうちの前記1つの前記コードワードインデックスが前記第1の最もありえるイントラ予測モードにマッピングされたコードワードインデックス以上であり、前記第2の最もありえるイントラ予測モードにマッピングされたコードワードインデックスより小さいとき、前記変更されたコードワードインデックスを決定することは、前記コードワードインデックスよりも1小さい前記変更されたコードワードインデックスを決定することを備える、請求項58に記載の方法。
  64. イントラ予測モードに対する前記コードワードインデックスのマッピングを動的に調整すること、
    をさらに備える、請求項58に記載の方法。
  65. ビデオデータを符号化するための装置であって、
    現在のブロックの符号化コンテキストに基づいて、ビデオデータの前記現在のブロックについての第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードを決定し、
    前記現在のブロックの前記コンテキストに基づいて、コードワードのテーブルを選択し、前記コードワードのテーブルは、コードワードインデックスに対応する複数の可変長のコードワードを備え、前記コードワードインデックスはイントラ予測モードにマッピングされ、
    前記第1の最もありえるイントラ予測モードおよび前記第2の最もありえるイントラ予測モード以外の前記イントラ予測モードのうちの1つを使用して、前記現在のブロックを符号化し、
    前記現在のブロックを符号化するために使用される前記イントラ予測モードのうちの前記1つの前記コードワードインデックス、前記第1の最もありえるモードにマッピングされたコードワードインデックス、および前記第2の最もありえるモードにマッピングされたコードワードインデックスに基づいて、変更されたコードワードインデックスを決定し、
    前記選択されたコードワードのテーブルからコードワードを出力し、前記コードワードは前記変更されたコードワードインデックスに対応する、
    ように構成されたビデオエンコーダを備える装置。
  66. 前記ビデオエンコーダは、前記現在のブロックに対して左に隣接するブロックと前記現在のブロックに対して上に隣接するブロックとのうちの少なくとも1つについてのモードに少なくとも一部基づいて、前記現在のブロックについての前記符号化コンテキストを決定するようにさらに構成される、請求項65に記載の装置。
  67. 前記ビデオエンコーダは、前記現在のブロックのサイズに少なくとも一部基づいて、前記現在のブロックについての前記符号化コンテキストを決定するようにさらに構成される、請求項65に記載の装置。
  68. 前記現在のブロックの符号化に使用される前記イントラ予測モードのうちの前記1つの前記コードワードインデックスが前記第1の最もありえるイントラ予測モードにマッピングされたコードワードインデックスよりも大きく、前記第2の最もありえるイントラ予測モードにマッピングされたコードワードインデックスよりも大きいとき、前記変更されたコードワードインデックスを決定することは、前記コードワードインデックスよりも2小さい前記変更されたコードワードインデックスを決定することを備える、請求項65に記載の装置。
  69. 前記現在のブロックの符号化に使用される前記イントラ予測モードのうちの前記1つの前記コードワードインデックスが前記第1の最もありえるイントラ予測モードにマッピングされたコードワードインデックスより小さく、前記第2の最もありえるイントラ予測モードにマッピングされたモードインデックスより小さいとき、前記変更されたコードワードインデックスを決定することは、前記コードワードインデックスに等しい前記変更されたコードワードインデックスを決定することを備える、請求項65に記載の装置。
  70. 前記現在のブロックの符号化に使用される前記イントラ予測モードのうちの前記1つの前記コードワードインデックスが前記第1の最もありえるイントラ予測モードにマッピングされたコードワードインデックス以上であり、前記第2の最もありえるイントラ予測モードにマッピングされたコードワードインデックスより小さいとき、前記変更されたコードワードインデックスを決定することは、前記コードワードインデックスよりも1小さい前記変更されたコードワードインデックスを決定することを備える、請求項65に記載の装置。
  71. イントラ予測モードに対する前記コードワードインデックスのマッピングを動的に調整すること、
    をさらに備える、請求項65に記載の装置。
  72. 前記装置は、
    集積回路と、
    マイクロプロセッサと、
    前記ビデオデコーダを含むワイヤレス通信デバイスと、
    のうちの少なくとも1つを備える、請求項65に記載の装置。
  73. ビデオを符号化するための装置であって、
    現在のブロックの符号化コンテキストに基づいて、ビデオデータの前記現在のブロックについての第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードを決定する手段と、
    前記現在のブロックの前記コンテキストに基づいて、コードワードのテーブルを選択する手段と、前記コードワードのテーブルは、コードワードインデックスに対応する複数の可変長のコードワードを備え、前記コードワードインデックスはイントラ予測モードにマッピングされ、
    前記第1の最もありえるイントラ予測モードおよび前記第2の最もありえるイントラ予測モード以外の前記イントラ予測モードのうちの1つを使用して、前記現在のブロックを符号化する手段と、
    前記現在のブロックを符号化するために使用される前記イントラ予測モードのうちの前記1つの前記コードワードインデックス、前記第1の最もありえるモードにマッピングされたコードワードインデックス、および前記第2の最もありえるモードにマッピングされたコードワードインデックスに基づいて、変更されたコードワードインデックスを決定する手段と、
    前記選択されたコードワードのテーブルからコードワードを出力する手段と、前記コードワードは、前記変更されたコードワードインデックスに対応する、
    を備える装置。
  74. 前記現在のブロックに対して左に隣接するブロックと前記現在のブロックに対して上に隣接するブロックとのうちの少なくとも1つについてのモードに少なくとも一部基づいて、前記現在のブロックについての前記符号化コンテキストを決定する手段をさらに備える、請求項73に記載の装置。
  75. 前記現在のブロックのサイズに少なくとも一部基づいて、前記現在のブロックについての前記符号化コンテキストを決定する手段をさらに備える、請求項73に記載の装置。
  76. 実行されると、1つまたは複数のプロセッサに、
    現在のブロックの符号化コンテキストに基づいて、ビデオデータの前記現在のブロックについての第1の最もありえるイントラ予測モードおよび第2の最もありえるイントラ予測モードを決定させ、
    前記現在のブロックの前記コンテキストに基づいて、コードワードのテーブルを選択させ、前記コードワードのテーブルは、コードワードインデックスに対応する複数の可変長のコードワードを備え、前記コードワードインデックスはイントラ予測モードにマッピングされ、
    前記第1の最もありえるイントラ予測モードおよび前記第2の最もありえるイントラ予測モード以外の前記イントラ予測モードのうちの1つを使用して、前記現在のブロックを符号化させ、
    前記現在のブロックを符号化するために使用される前記イントラ予測モードのうちの前記1つの前記コードワードインデックス、前記第1の最もありえるモードにマッピングされたコードワードインデックス、および前記第2の最もありえるモードにマッピングされたコードワードインデックスに基づいて、変更されたコードワードインデックスを決定させ、
    前記選択されたコードワードのテーブルからコードワードを出力させ、前記コードワードは前記変更されたコードワードインデックスに対応する、
    命令を記憶するコンピュータ可読記憶媒体。
JP2013531911A 2010-10-01 2011-09-30 ビデオコーディングのためのイントラ予測モード選択の指示 Pending JP2013539940A (ja)

Applications Claiming Priority (13)

Application Number Priority Date Filing Date Title
US38916610P 2010-10-01 2010-10-01
US61/389,166 2010-10-01
US201061427440P 2010-12-27 2010-12-27
US61/427,440 2010-12-27
US201161430520P 2011-01-06 2011-01-06
US61/430,520 2011-01-06
US201161446402P 2011-02-24 2011-02-24
US61/446,402 2011-02-24
US201161448623P 2011-03-02 2011-03-02
US61/448,623 2011-03-02
US13/248,760 US9025661B2 (en) 2010-10-01 2011-09-29 Indicating intra-prediction mode selection for video coding
US13/248,760 2011-09-29
PCT/US2011/054218 WO2012044931A1 (en) 2010-10-01 2011-09-30 Indicating intra-prediction mode selection for video coding

Publications (1)

Publication Number Publication Date
JP2013539940A true JP2013539940A (ja) 2013-10-28

Family

ID=45889816

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013531911A Pending JP2013539940A (ja) 2010-10-01 2011-09-30 ビデオコーディングのためのイントラ予測モード選択の指示

Country Status (12)

Country Link
US (1) US9025661B2 (ja)
EP (1) EP2622864B1 (ja)
JP (1) JP2013539940A (ja)
KR (1) KR101518149B1 (ja)
CN (1) CN103262533B (ja)
DK (1) DK2622864T3 (ja)
ES (1) ES2700296T3 (ja)
HU (1) HUE040322T2 (ja)
IN (1) IN2013MN00599A (ja)
PT (1) PT2622864T (ja)
SI (1) SI2622864T1 (ja)
WO (1) WO2012044931A1 (ja)

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101739987B1 (ko) * 2010-12-28 2017-05-26 에스케이 텔레콤주식회사 주변블록의 특징벡터를 이용한 영상 부호화/복호화 방법 및 장치
AU2011354441B2 (en) 2011-01-07 2014-07-17 Hfi Innovation Inc. Method and apparatus of improved intra luma prediction mode coding
EP2764694A4 (en) 2011-10-07 2015-11-25 Pantech Co Ltd METHODS AND APPARATUSES FOR INTRA PREDICTION MODE CODING AND DECODING USING INTRA CANDIDATE PREDICTION MODES
LT2773118T (lt) 2011-10-24 2020-10-12 Innotive Ltd Vaizdo dekodavimo būdas ir aparatas
US10390016B2 (en) 2011-11-04 2019-08-20 Infobridge Pte. Ltd. Apparatus of encoding an image
KR20130049524A (ko) * 2011-11-04 2013-05-14 오수미 인트라 예측 블록 생성 방법
US9154796B2 (en) * 2011-11-04 2015-10-06 Qualcomm Incorporated Intra-mode video coding
KR20130049522A (ko) * 2011-11-04 2013-05-14 오수미 인트라 예측 블록 생성 방법
US9628789B2 (en) 2011-11-18 2017-04-18 Qualcomm Incorporated Reference mode selection in intra mode coding
WO2013106986A1 (en) * 2012-01-16 2013-07-25 Mediatek Singapore Pte. Ltd. Methods and apparatuses of intra mode coding
CN103220506B (zh) * 2012-01-19 2015-11-25 华为技术有限公司 一种编解码方法和设备
WO2013115568A1 (ko) * 2012-01-30 2013-08-08 한국전자통신연구원 인트라 예측 모드 부호화/복호화 방법 및 장치
US9955169B2 (en) * 2012-01-30 2018-04-24 Electronics And Telecommunications Research Institute Intra prediction mode encoding/decoding method and apparatus
HUE039986T2 (hu) * 2012-07-02 2019-02-28 Samsung Electronics Co Ltd Eljárás video entrópia dekódolására
US9544612B2 (en) * 2012-10-04 2017-01-10 Intel Corporation Prediction parameter inheritance for 3D video coding
US10349069B2 (en) * 2012-12-11 2019-07-09 Sony Interactive Entertainment Inc. Software hardware hybrid video encoder
US9237343B2 (en) * 2012-12-13 2016-01-12 Mitsubishi Electric Research Laboratories, Inc. Perceptually coding images and videos
US10904551B2 (en) * 2013-04-05 2021-01-26 Texas Instruments Incorporated Video coding using intra block copy
US9787989B2 (en) * 2013-06-11 2017-10-10 Blackberry Limited Intra-coding mode-dependent quantization tuning
CN103813173B (zh) * 2014-03-14 2017-02-15 北方工业大学 基于bcim的3d‑hevc快速帧内预测方案
CN105554504B (zh) * 2015-12-15 2018-07-03 辽宁师范大学 基于升降序元组的索引图编码和解码方法
WO2017190288A1 (en) 2016-05-04 2017-11-09 Microsoft Technology Licensing, Llc Intra-picture prediction using non-adjacent reference lines of sample values
FR3051309A1 (fr) * 2016-05-10 2017-11-17 Bcom Procedes et dispositifs de codage et de decodage d'un flux de donnees representatif d'au moins une image
US10827186B2 (en) * 2016-08-25 2020-11-03 Intel Corporation Method and system of video coding with context decoding and reconstruction bypass
CN117395408A (zh) * 2016-10-04 2024-01-12 韩国电子通信研究院 对图像进行编码/解码的方法和设备以及记录介质
WO2018101687A1 (ko) 2016-11-29 2018-06-07 성균관대학교 산학협력단 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
KR102628889B1 (ko) * 2017-07-24 2024-01-25 애리스 엔터프라이지즈 엘엘씨 인트라 모드 jvet 코딩
US10863172B2 (en) 2017-07-24 2020-12-08 Arris Enterprises Llc Intra mode JVET coding
US10484695B2 (en) 2017-10-23 2019-11-19 Google Llc Refined entropy coding for level maps
US10771781B2 (en) * 2018-03-12 2020-09-08 Electronics And Telecommunications Research Institute Method and apparatus for deriving intra prediction mode
US10645381B2 (en) 2018-04-30 2020-05-05 Google Llc Intra-prediction for smooth blocks in image/video
US11616949B2 (en) 2018-08-31 2023-03-28 Hfi Innovation Inc. Method and apparatus of intra prediction with MPM generation in image and video processing
KR20210046804A (ko) * 2018-09-07 2021-04-28 주식회사 비원영상기술연구소 영상 부호화/복호화 방법 및 장치
US10848763B2 (en) * 2018-11-14 2020-11-24 Tencent America LLC Method and apparatus for improved context design for prediction mode and coded block flag (CBF)
CN111010577B (zh) * 2018-12-31 2022-03-01 北京达佳互联信息技术有限公司 一种视频编码中帧内帧间联合预测的方法和设备及介质
US11172197B2 (en) * 2019-01-13 2021-11-09 Tencent America LLC Most probable mode list generation scheme
CN114175653B (zh) * 2019-09-17 2023-07-25 北京达佳互联信息技术有限公司 用于视频编解码中的无损编解码模式的方法和装置
US11962784B2 (en) * 2020-09-23 2024-04-16 Ofinno, Llc Intra prediction
KR102639490B1 (ko) * 2023-10-13 2024-02-21 조영봉 친환경 과수 살균제 조성물의 제조방법

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR0155784B1 (ko) 1993-12-16 1998-12-15 김광호 영상데이타의 적응형 가변장 부호화/복호화방법
KR970009408B1 (ko) 1994-01-18 1997-06-13 대우전자 주식회사 인터/인트라 테이블 선택 회로
US6765964B1 (en) 2000-12-06 2004-07-20 Realnetworks, Inc. System and method for intracoding video data
CN100481955C (zh) 2000-12-06 2009-04-22 真实网络公司 对视频数据进行内编码的方法和设备
WO2003084241A2 (en) 2002-03-22 2003-10-09 Realnetworks, Inc. Context-adaptive macroblock type encoding/decoding methods and apparatuses
JP4130780B2 (ja) 2002-04-15 2008-08-06 松下電器産業株式会社 画像符号化方法および画像復号化方法
US7170937B2 (en) 2002-05-01 2007-01-30 Texas Instruments Incorporated Complexity-scalable intra-frame prediction technique
US7289674B2 (en) 2002-06-11 2007-10-30 Nokia Corporation Spatial prediction based intra coding
DE60345459C5 (de) 2002-06-11 2022-11-17 Nokia Technologies Oy Intracodierung auf der basis räumlicher prädiktion
US7194137B2 (en) 2003-05-16 2007-03-20 Cisco Technology, Inc. Variable length coding method and apparatus for video compression
KR101014660B1 (ko) * 2003-10-24 2011-02-16 삼성전자주식회사 인트라 예측 방법 및 장치
US8565314B2 (en) 2006-10-12 2013-10-22 Qualcomm Incorporated Variable length coding table selection based on block type statistics for refinement coefficient coding
FR2908007A1 (fr) * 2006-10-31 2008-05-02 Thomson Licensing Sas Procede de codage d'une sequence d'images
JP2008199100A (ja) 2007-02-08 2008-08-28 Toshiba Corp 可変長符号復号装置
BRPI0818444A2 (pt) 2007-10-12 2016-10-11 Qualcomm Inc codificação adaptativa de informação de cabeçalho de bloco de vídeo
NO328295B1 (no) 2007-12-20 2010-01-25 Tandberg Telecom As VLC-fremgangsmate og -innretning
KR20090095316A (ko) * 2008-03-05 2009-09-09 삼성전자주식회사 영상 인트라 예측 방법 및 장치
US8761253B2 (en) 2008-05-28 2014-06-24 Nvidia Corporation Intra prediction mode search scheme
KR101507344B1 (ko) 2009-08-21 2015-03-31 에스케이 텔레콤주식회사 가변 길이 부호를 이용한 인트라 예측모드 부호화 방법과 장치, 및 이를 위한기록 매체
CA2784517A1 (en) 2009-12-17 2011-06-23 Telefonaktiebolaget L M Ericsson (Publ) Method and arrangement for video coding
KR101789634B1 (ko) 2010-04-09 2017-10-25 엘지전자 주식회사 비디오 데이터 처리 방법 및 장치
US20120106640A1 (en) 2010-10-31 2012-05-03 Broadcom Corporation Decoding side intra-prediction derivation for video coding

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
JPN6014008647; Moinard, M., et.al.: '"A SET OF TEMPLATE MATCHING PREDICTORS FOR INTRA VIDEO CODING"' Proceedings of IEEE International Conference on Acoustics Speech and Signal Processing 2010 (ICASSP , 20100319, p.1422-1425 *
JPN6014008648; 映像情報メディア学会編: 「画像情報符号化」 初版, 20080430, 第196〜198頁, 株式会社コロナ社 *
JPN6014008649; Marta Karczewicz, et.al.: '"Video coding technology proposal by Qualcomm Inc."' [online] Document: JCTVC-A121, 201004, p.1,7, Joint Collaborative Team on Video Coding (JCT-VC) *
JPN6014008650; Thomas Davies: '"BBC's Response to the Call for Proposals on Video Compression Technology"' [online] Document: JCTVC-A125, 201004, p.1-10,13-16, Joint Collaborative Team on Video Coding (JCT-VC) *
JPN6014008651; "Index of /jct/doc_end_user/documents/1_Dresden/wg11" , [online] *

Also Published As

Publication number Publication date
KR101518149B1 (ko) 2015-05-06
CN103262533B (zh) 2016-08-31
WO2012044931A1 (en) 2012-04-05
PT2622864T (pt) 2018-12-12
KR20130063029A (ko) 2013-06-13
SI2622864T1 (sl) 2019-01-31
CN103262533A (zh) 2013-08-21
HUE040322T2 (hu) 2019-02-28
EP2622864A1 (en) 2013-08-07
ES2700296T3 (es) 2019-02-14
US20120082223A1 (en) 2012-04-05
IN2013MN00599A (ja) 2015-05-29
US9025661B2 (en) 2015-05-05
EP2622864B1 (en) 2018-09-05
DK2622864T3 (da) 2019-01-02

Similar Documents

Publication Publication Date Title
US10264280B2 (en) Enhanced intra-prediction mode signaling for video coding using neighboring mode
EP2622864B1 (en) Indicating intra-prediction mode selection for video coding
CA2823948C (en) Indicating intra-prediction mode selection for video coding using cabac
KR101626734B1 (ko) 비디오 코딩을 위한 인트라 평활 필터
KR101632776B1 (ko) 비디오 코딩에 대한 구문 엘리먼트들의 공동 코딩
KR101619004B1 (ko) 인트라 예측 코딩에 있어서의 최빈 변환
KR101632130B1 (ko) 인트라 모드 코딩에서 레퍼런스 모드 선택
US9491491B2 (en) Run-mode based coefficient coding for video coding

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140304

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20140604

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20140611

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140703

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20140805

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141204

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20141216

A912 Removal of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20150213