[go: up one dir, main page]

JP2015039191A - サイズとイントラモードとに基づいて又はエッジ検出に基づいてイントラブロック符号化の周波数変換を適応させること - Google Patents

サイズとイントラモードとに基づいて又はエッジ検出に基づいてイントラブロック符号化の周波数変換を適応させること Download PDF

Info

Publication number
JP2015039191A
JP2015039191A JP2014191393A JP2014191393A JP2015039191A JP 2015039191 A JP2015039191 A JP 2015039191A JP 2014191393 A JP2014191393 A JP 2014191393A JP 2014191393 A JP2014191393 A JP 2014191393A JP 2015039191 A JP2015039191 A JP 2015039191A
Authority
JP
Japan
Prior art keywords
intra prediction
transform
prediction mode
block
mapped
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2014191393A
Other languages
English (en)
Other versions
JP5944459B2 (ja
JP2015039191A5 (ja
Inventor
マルタ・カークゼウィックズ
Karczewicz Marta
ムハンメド・ジェイド・コバン
Zeyd Coban Muhanmmed
ペイソン・チェン
Payson Chen
シャオ−チャン・チュアン
Hsiao-Chiang Chuang
ラジャン・ラックスマン・ジョシ
Laxman Joshi Rajan
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 JP2015039191A publication Critical patent/JP2015039191A/ja
Publication of JP2015039191A5 publication Critical patent/JP2015039191A5/ja
Application granted granted Critical
Publication of JP5944459B2 publication Critical patent/JP5944459B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • 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/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • H04N19/122Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
    • 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/129Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
    • 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/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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • 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/192Methods 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 the adaptation method, adaptation tool or adaptation type being iterative or recursive
    • H04N19/194Methods 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 the adaptation method, adaptation tool or adaptation type being iterative or recursive involving only two passes
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

【課題】イントラ予測モードからマッピングされた変換を使用して残差ブロックを変換する方法を提供する。
【解決手段】ビデオデータを符号化するための装置は、イントラ予測モードを用いて形成された予測ブロックに基づいてビデオデータのブロックのための残差ブロックを計算し、イントラ予測モードからマップされた変換を用いて残差ブロックを変換するように構成されるビデオエンコーダを有する。又は、ビデオデータのブロックのためのイントラ予測モードの第1のセットの第1のイントラ予測モードの指示を受信し、イントラ予測モードの第1のセットより小さいイントラ予測モードの第2のセットから第1のイントラ予測モードがマップされる第2のイントラ予測モードを決定し、第2のイントラ予測モードがマップされる方向性変換を決定し、方向性変換をブロックの残差データに適用するように構成されるビデオエンコーダを有する。
【選択図】図9

Description

本開示は、ビデオ符号化に関する。
デジタルビデオ機能は、デジタルテレビジョン、デジタルダイレクトブロードキャストシステム、ワイヤレスブロードキャストシステム、携帯情報端末(PDA)、ラップトップ又はデスクトップコンピュータ、デジタルカメラ、デジタル記録機器、デジタルメディアプレーヤ、ビデオゲーム機器、ビデオゲームコンソール、セルラー電話又は衛星無線電話、ビデオ遠隔会議機器などを含む、広範囲にわたる機器に組み込まれ得る。デジタルビデオ機器は、デジタルビデオ情報をより効率的に送信及び受信するために、MPEG−2、MPEG−4、ITU−T H.263、ITU−T H.264/MPEG−4、Part10、Advanced Video Coding(AVC)、(H.265とも呼ばれる)今度の高効率ビデオ符号化(HEVC:High Efficiency Video Coding)規格によって定義された規格、及びそのような規格の拡張に記載されているビデオ圧縮技術など、ビデオ圧縮技術を実装する。
ビデオ圧縮技術では、ビデオシーケンスに固有の冗長性を低減又は除去するために空間的予測及び/又は時間的予測を実行する。ブロックベースのビデオ符号化の場合、ビデオフレーム又はスライスはマクロブロックに区分され得る。各マクロブロックは更に区分され得る。イントラ符号化(I)フレーム又はスライス中のマクロブロックは、隣接マクロブロックに関する空間的予測を使用して符号化される。インター符号化(P又はB)フレーム又はスライス中のマクロブロックは、同じフレーム又はスライス中の隣接マクロブロックに関する空間的予測、或いは他の参照フレームに関する時間的予測を使用し得る。
概して、本開示では、ビデオデータを符号化するための技術について説明する。本開示では、ビデオ符号化プロセス中に残差ビデオデータを変換し、変換係数を走査するための技術について説明する。概して、符号化されるべきピクチャのブロックは、イントラモード符号化される(例えば、同じピクチャの他のブロックに対して符号化される)か又はインターモード符号化され得る(例えば、前に符号化されたピクチャのブロックに対して符号化され得る)。いずれの場合も、ビデオエンコーダは予測データと残差データとを形成する。ビデオエンコーダは、離散サイン変換、離散コサイン変換、方向性変換及び/又は回転変換など、1つ以上の様々な変換を使用して残差値を変換し得る。ビデオエンコーダは、例えば、ブロックをイントラモード符号化するときに使用される予測方向など、幾つかの基準に基づいて適用すべき1つ以上の変換を選択するように構成され得る。
ビデオエンコーダは、ビデオデータのブロックの残差データを変換することによって変換係数を計算し得、残差データは、元のブロックと予測ブロックとの間の画素差分値に対応する。変換係数は、変換されたブロックと(係数の数に関して)同じサイズを有する2次元行列に対応し得る。ビデオエンコーダは、変換係数を走査して2次元行列を1次元配列に変換し、それによって変換係数をシリアル化(直列化)し得る。本開示の技術によれば、ビデオエンコーダは、ブロックを変換するために使用される(1つ又は複数の)変換に基づいて選択された所定の走査パターンを適用し得る。幾つかの例では、本開示の技術によれば、ビデオエンコーダは、所定の走査パターンではなく、適応走査パターンを適用し得、ビデオエンコーダは適応走査パターンを周期的に更新し得る。走査パターンは、幾つかの例では、ブロックを予測するために使用される(1つ又は複数の)変換及び/又はイントラ予測モードに基づき得る。
一例では、ビデオデータを符号化する方法は、イントラ予測モードを使用して形成された予測ブロックに基づいてビデオデータのブロックの残差ブロックを計算することと、イントラ予測モードからマッピングされた変換を使用してその残差ブロックを変換することとを含む。
別の例では、ビデオデータを符号化するための装置であって、イントラ予測モードを使用して形成された予測ブロックに基づいてビデオデータのブロックの残差ブロックを計算することと、イントラ予測モードからマッピングされた変換を使用してその残差ブロックを変換することとを行うように構成されたビデオエンコーダを備える装置が提供される。
別の例では、ビデオデータを符号化するための装置は、イントラ予測モードを使用して形成された予測ブロックに基づいてビデオデータのブロックの残差ブロックを計算するための手段と、イントラ予測モードからマッピングされた変換を使用してその残差ブロックを変換するための手段とを含む。
別の例では、コンピュータプログラム製品は、実行されたとき、イントラ予測モードを使用して形成された予測ブロックに基づいてビデオデータのブロックの残差ブロックを計算することと、イントラ予測モードからマッピングされた変換を使用してその残差ブロックを変換することとを、ビデオデータを符号化するための機器のプロセッサに行わせる命令を記憶したコンピュータ可読記憶媒体を含む。
別の例では、ビデオデータを復号する方法は、ビデオデータのブロックを予測するために使用されるべきイントラ予測モードを決定することと、イントラ予測モードからマッピングされた逆変換を使用してブロックの変換された残差データを逆変換することとを含む。
別の例では、ビデオデータを復号するための装置は、ビデオデータのブロックを予測するために使用されるべきイントラ予測モードを決定することと、イントラ予測モードからマッピングされた逆変換を使用してブロックの変換された残差データを逆変換することとを行うように構成されたビデオデコーダを含む。
別の例では、ビデオデータを復号するための装置は、ビデオデータのブロックを予測するために使用されるべきイントラ予測モードを決定するための手段と、イントラ予測モードからマッピングされた逆変換を使用してブロックの変換された残差データを逆変換するための手段とを含む。
別の例では、実行されたとき、ビデオデータのブロックを予測するために使用されるべきイントラ予測モードを決定することと、イントラ予測モードからマッピングされた逆変換を使用してブロックの変換された残差データを逆変換することとを、ビデオデータを復号するための機器のプロセッサに行わせる命令を記憶したコンピュータ可読記憶媒体を備えるコンピュータプログラム製品が提供される。
別の例では、ビデオデータを符号化する方法は、ビデオデータのブロックのためのイントラ予測モードの第1のセット中の第1のイントラ予測モードの指示を受信することと、イントラ予測モードの第1のセットよりも小さいイントラ予測モードの第2のセットから、第1のイントラ予測モードがマッピングされる第2のイントラ予測モードを決定することと、第2のイントラ予測モードがマッピングされる方向性変換を決定することと、ブロックの残差データに方向性変換を適用することとを含む。
別の例では、ビデオデータを符号化するための装置は、ビデオデータのブロックのためのイントラ予測モードの第1のセット中の第1のイントラ予測モードの指示を受信することと、イントラ予測モードの第1のセットよりも小さいイントラ予測モードの第2のセットから、第1のイントラ予測モードがマッピングされる第2のイントラ予測モードを決定することと、第2のイントラ予測モードがマッピングされる方向性変換を決定することと、ブロックの残差データに方向性変換を適用することとを行うように構成されたビデオエンコーダを含む。
別の例では、ビデオデータを符号化するための装置は、ビデオデータのブロックのためのイントラ予測モードの第1のセット中の第1のイントラ予測モードの指示を受信するための手段と、イントラ予測モードの第1のセットよりも小さいイントラ予測モードの第2のセットから、第1のイントラ予測モードがマッピングされる第2のイントラ予測モードを決定するための手段と、第2のイントラ予測モードがマッピングされる方向性変換を決定するための手段と、ブロックの残差データに方向性変換を適用するための手段とを含む。
別の例では、実行されたとき、ビデオデータのブロックのためのイントラ予測モードの第1のセット中の第1のイントラ予測モードの指示を受信することと、イントラ予測モードの第1のセットよりも小さいイントラ予測モードの第2のセットから、第1のイントラ予測モードがマッピングされる第2のイントラ予測モードを決定することと、第2のイントラ予測モードがマッピングされる方向性変換を決定することと、ブロックの残差データに方向性変換を適用することとを、ビデオデータを符号化するための機器のプロセッサに行わせる命令を記憶したコンピュータ可読媒体を備えるコンピュータプログラム製品が提供される。
別の例では、ビデオデータを復号する方法は、符号化されたビデオデータのブロックのためのイントラ予測モードの第1のセット中の第1のイントラ予測モードの指示を受信することと、イントラ予測モードの第1のセットよりも小さいイントラ予測モードの第2のセットから、第1のイントラ予測モードがマッピングされる第2のイントラ予測モードを決定することと、第2のイントラ予測モードがマッピングされる逆方向性変換を決定することと、ブロックの変換された残差データに逆方向性変換を適用することとを含む。
別の例では、ビデオデータを復号するための装置は、符号化されたビデオデータのブロックのためのイントラ予測モードの第1のセット中の第1のイントラ予測モードの指示を受信することと、イントラ予測モードの第1のセットよりも小さいイントラ予測モードの第2のセットから、第1のイントラ予測モードがマッピングされる第2のイントラ予測モードを決定することと、第2のイントラ予測モードがマッピングされる逆方向性変換を決定することと、ブロックの変換された残差データに逆方向性変換を適用することとを行うように構成されたビデオデコーダを含む。
別の例では、ビデオデータを復号するための装置は、符号化されたビデオデータのブロックのためのイントラ予測モードの第1のセット中の第1のイントラ予測モードの指示を受信するための手段と、イントラ予測モードの第1のセットよりも小さいイントラ予測モードの第2のセットから、第1のイントラ予測モードがマッピングされる第2のイントラ予測モードを決定するための手段と、第2のイントラ予測モードがマッピングされる逆方向性変換を決定するための手段と、ブロックの変換された残差データに逆方向性変換を適用するための手段とを含む。
別の例では、実行されたとき、符号化されたビデオデータのブロックのためのイントラ予測モードの第1のセット中の第1のイントラ予測モードの指示を受信することと、イントラ予測モードの第1のセットよりも小さいイントラ予測モードの第2のセットから、第1のイントラ予測モードがマッピングされる第2のイントラ予測モードを決定することと、第2のイントラ予測モードがマッピングされる逆方向性変換を決定することと、ブロックの変換された残差データに逆方向性変換を適用することとを、ビデオデータを復号するための機器のプロセッサに行わせる命令を記憶したコンピュータ可読媒体を備えるコンピュータプログラム製品が提供される。
別の例では、ビデオデータを符号化する方法は、ビデオデータのブロックを符号化するために使用すべきイントラ予測モードを選択することと、複数の変換が可能であるサイズのサブブロックをブロックが含むかどうかを、サブブロックのサイズと選択されたイントラ予測モードとに基づいて決定することとを含む。サブブロックのサイズと選択されたイントラ予測モードとに基づいて、複数の変換が可能であるサイズのサブブロックをブロックが含むとき、本方法は、複数の可能な変換のうちの1つを選択することと、複数の可能な変換のうちの選択された1つを使用してサブブロックを変換することと、ブロックのサイズについての複数の可能な変換のうちの選択された1つの指示を与えることとを含む。
別の例では、ビデオデータを符号化するための装置は、ビデオデータのブロックを符号化するために使用すべきイントラ予測モードを選択することと、複数の変換が可能であるサイズのサブブロックをブロックが含むかどうかを、サブブロックのサイズと選択されたイントラ予測モードとに基づいて決定することと、サブブロックのサイズと選択されたイントラ予測モードとに基づいて、複数の変換が可能であるサイズのサブブロックをブロックが含むとき、複数の可能な変換のうちの1つを選択することと、複数の可能な変換のうちの選択された1つを使用してサブブロックを変換することと、ブロックのサイズについての複数の可能な変換のうちの選択された1つの指示を与えることとを行うように構成されたビデオエンコーダを含む。
別の例では、ビデオデータを符号化するための装置は、ビデオデータのブロックを符号化するために使用すべきイントラ予測モードを選択するための手段と、複数の変換が可能であるサイズのサブブロックをブロックが含むかどうかを、サブブロックのサイズと選択されたイントラ予測モードとに基づいて決定するための手段と、サブブロックのサイズと選択されたイントラ予測モードとに基づいて、複数の変換が可能であるサイズのサブブロックをブロックが含むとき、複数の可能な変換のうちの1つを選択するための手段と、複数の可能な変換のうちの選択された1つを使用してサブブロックを変換するための手段と、ブロックのサイズについての複数の可能な変換のうちの選択された1つの指示を与えるための手段とを含む。
別の例では、実行されたとき、ビデオデータのブロックを符号化するために使用すべきイントラ予測モードを選択することと、複数の変換が可能であるサイズのサブブロックをブロックが含むかどうかを、サブブロックのサイズと選択されたイントラ予測モードとに基づいて決定することと、サブブロックのサイズと選択されたイントラ予測モードとに基づいて、複数の変換が可能であるサイズのサブブロックをブロックが含むとき、複数の可能な変換のうちの1つを選択することと、複数の可能な変換のうちの選択された1つを使用してサブブロックを変換することと、ブロックのサイズについての複数の可能な変換のうちの選択された1つの指示を与えることとを、ビデオデータを符号化するための機器のプロセッサに行わせる命令を記憶したコンピュータ可読媒体を備えるコンピュータプログラム製品が提供される。
別の例では、ビデオデータを復号する方法は、ビデオデータのブロックを復号するために使用すべきイントラ予測モードの第1の指示を受信することと、複数の変換が可能であるサイズのサブブロックをブロックが含むかどうかを、サブブロックのサイズと指示されたイントラ予測モードとに基づいて決定することと、サブブロックのサイズと指示されたイントラ予測モードとに基づいて、複数の逆変換が可能であるサイズのサブブロックをブロックが含むとき、複数の可能な逆変換のうちの1つの第2の指示を受信することと、複数の可能な逆変換のうちの指示された1つを使用してサブブロックを逆変換することとを含む。
別の例では、ビデオデータを復号するための装置は、ビデオデータのブロックを復号するために使用すべきイントラ予測モードの第1の指示を受信することと、複数の変換が可能であるサイズのサブブロックをブロックが含むかどうかを、サブブロックのサイズと指示されたイントラ予測モードとに基づいて決定することと、サブブロックのサイズと指示されたイントラ予測モードとに基づいて、複数の逆変換が可能であるサイズのサブブロックをブロックが含むとき、複数の可能な逆変換のうちの1つの第2の指示を受信することと、複数の可能な逆変換のうちの指示された1つを使用してサブブロックを逆変換することとを行うように構成されたビデオデコーダを含む。
別の例では、ビデオデータを復号するための装置は、ビデオデータのブロックを復号するために使用すべきイントラ予測モードの第1の指示を受信するための手段と、複数の変換が可能であるサイズのサブブロックをブロックが含むかどうかを、サブブロックのサイズと指示されたイントラ予測モードとに基づいて決定するための手段と、サブブロックのサイズと指示されたイントラ予測モードとに基づいて、複数の逆変換が可能であるサイズのサブブロックをブロックが含むとき、複数の可能な逆変換のうちの1つの第2の指示を受信するための手段と、複数の可能な逆変換のうちの指示された1つを使用してサブブロックを逆変換するための手段とを含む。
別の例では、実行されたとき、ビデオデータのブロックを復号するために使用すべきイントラ予測モードの第1の指示を受信することと、複数の変換が可能であるサイズのサブブロックをブロックが含むかどうかを、サブブロックのサイズと指示されたイントラ予測モードとに基づいて決定することと、サブブロックのサイズと指示されたイントラ予測モードとに基づいて、複数の逆変換が可能であるサイズのサブブロックをブロックが含むとき、複数の可能な逆変換のうちの1つの第2の指示を受信することと、複数の可能な逆変換のうちの指示された1つを使用してサブブロックを逆変換することとを、ビデオデータを復号するための機器のプロセッサに行わせる命令を記憶したコンピュータ可読媒体を備えるコンピュータプログラム製品が提供される。
別の例では、ビデオデータを符号化する方法は、変換係数の1次元ベクトルを生成するために変換係数の2次元ブロックを走査することと、1次元ベクトル中の変換係数が有効であるかどうかを示す値を決定することと、少なくとも、上記値のうちの少なくとも1つの前に符号化された上記値の所定数中の有効係数の割合に基づいて選択されたコンテキストモデルを使用して上記値のうちの少なくとも1つをエントロピー符号化することとを含む。
別の例では、ビデオデータを符号化するための装置は、変換係数の1次元ベクトルを生成するために変換係数の2次元ブロックを走査することと、1次元ベクトル中の変換係数が有効であるかどうかを示す値を決定することと、少なくとも、上記値のうちの少なくとも1つの前に符号化された上記値の所定数中の有効係数の割合に基づいて選択されたコンテキストモデルを使用して上記値のうちの少なくとも1つをエントロピー符号化することとを行うように構成されたビデオエンコーダを含む。
別の例では、ビデオデータを符号化するための装置は、変換係数の1次元ベクトルを生成するために変換係数の2次元ブロックを走査するための手段と、1次元ベクトル中の変換係数が有効であるかどうかを示す値を決定するための手段と、少なくとも、上記値のうちの少なくとも1つの前に符号化された上記値の所定数中の有効係数の割合に基づいて選択されたコンテキストモデルを使用して上記値のうちの少なくとも1つをエントロピー符号化するための手段とを含む。
別の例では、実行されたとき、変換係数の1次元ベクトルを生成するために変換係数の2次元ブロックを走査することと、1次元ベクトル中の変換係数が有効であるかどうかを示す値を決定することと、少なくとも、上記値のうちの少なくとも1つの前に符号化された上記値の所定数中の有効係数の割合に基づいて選択されたコンテキストモデルを使用して上記値のうちの少なくとも1つをエントロピー符号化することとを、ビデオデータを符号化するための機器のプロセッサに行わせる命令を記憶したコンピュータ可読媒体を備えるコンピュータプログラム製品が提供される。
別の例では、ビデオデータを復号する方法は、符号化された変換係数の受信された1次元ベクトル中の符号化された変換係数が有効であるかどうかを示す値を受信することと、少なくとも、上記値のうちの少なくとも1つの前に復号された上記値の所定数中の有効係数の割合に基づいて選択されたコンテキストモデルを使用して上記値のうちの少なくとも1つをエントロピー復号することと、変換係数の2次元ブロックを生成するために1次元ベクトルを逆走査することとを含む。
別の例では、ビデオデータを復号するための装置は、符号化された変換係数の受信された1次元ベクトル中の符号化された変換係数が有効であるかどうかを示す値を受信することと、少なくとも、上記値のうちの少なくとも1つの前に復号された上記値の所定数中の有効係数の割合に基づいて選択されたコンテキストモデルを使用して上記値のうちの少なくとも1つをエントロピー復号することと、変換係数の2次元ブロックを生成するために1次元ベクトルを逆走査することとを行うように構成されたビデオデコーダを含む。
別の例では、ビデオデータを復号するための装置は、符号化された変換係数の受信された1次元ベクトル中の符号化された変換係数が有効であるかどうかを示す値を受信するための手段と、少なくとも、上記値のうちの少なくとも1つの前に復号された上記値の所定数中の有効係数の割合に基づいて選択されたコンテキストモデルを使用して上記値のうちの少なくとも1つをエントロピー復号するための手段と、変換係数の2次元ブロックを生成するために1次元ベクトルを逆走査するための手段とを含む。
別の例では、実行されたとき、符号化された変換係数の受信された1次元ベクトル中の符号化された変換係数が有効であるかどうかを示す値を受信することと、少なくとも、上記値のうちの少なくとも1つの前に復号された上記値の所定数中の有効係数の割合に基づいて選択されたコンテキストモデルを使用して上記値のうちの少なくとも1つをエントロピー復号することと、変換係数の2次元ブロックを生成するために1次元ベクトルを逆走査することとを、ビデオデータを復号するための機器のプロセッサに行わせる命令を記憶したコンピュータ可読媒体を備えるコンピュータプログラム製品が提供される。
一例では、ビデオデータを符号化する方法は、変換係数の中間の2次元ブロックを生成するために第1の変換を使用してビデオデータのブロックの残差データを変換することと、変換係数の2次元ブロックを生成するために回転変換を使用して変換係数の中間の2次元ブロックを変換することと、第1の変換及び回転変換のうちの少なくとも1つに関連付けられた統計値のセットを選択することと、統計値の選択されたセットに基づいて変換係数の2次元ブロックを適応的に走査することとを含み、統計値のセットは、変換係数の2次元ブロック中の位置が非ゼロになる可能性を与える。
別の例では、ビデオデータを符号化するための装置は、変換係数の中間の2次元ブロックを生成するために第1の変換を使用してビデオデータのブロックの残差データを変換することと、変換係数の2次元ブロックを生成するために回転変換を使用して変換係数の中間の2次元ブロックを変換することと、第1の変換及び回転変換のうちの少なくとも1つに関連付けられた統計値のセットを選択すること、統計値の選択されたセットに基づいて変換係数の2次元ブロックを適応的に走査することとを行うように構成され、統計値のセットは、変換係数の2次元ブロック中の位置が非ゼロになる可能性を与える、ビデオエンコーダを含む。
別の例では、ビデオデータを符号化するための装置は、変換係数の中間の2次元ブロックを生成するために第1の変換を使用してビデオデータのブロックの残差データを変換するための手段と、変換係数の2次元ブロックを生成するために回転変換を使用して変換係数の中間の2次元ブロックを変換するための手段と、第1の変換及び回転変換のうちの少なくとも1つに関連付けられた統計値のセットを選択するための手段と、統計値の選択されたセットに基づいて変換係数の2次元ブロックを適応的に走査するための手段とを含み、統計値のセットは、変換係数の2次元ブロック中の位置が非ゼロになる可能性を与える。
別の例では、実行されたとき、変換係数の中間の2次元ブロックを生成するために第1の変換を使用してビデオデータのブロックの残差データを変換することと、変換係数の2次元ブロックを生成するために回転変換を使用して変換係数の中間の2次元ブロックを変換することと、第1の変換及び回転変換のうちの少なくとも1つに関連付けられた統計値のセットを選択することと、統計値の選択されたセットに基づいて変換係数の2次元ブロックを適応的に走査することとを、ビデオデータを符号化するための機器のプロセッサに行わせる命令を記憶し、統計値のセットは、変換係数の2次元ブロック中の位置が非ゼロになる可能性を与える、コンピュータ可読媒体を備えるコンピュータプログラム製品が提供される。
別の例では、ビデオデータを復号する方法は、変換係数の2次元ブロックを生成するために第1の変換と回転変換の両方を使用してビデオデータのブロックの残差データが変換されたという指示を受信することと、第1の変換及び回転変換のうちの少なくとも1つに関連付けられた統計値のセットを選択することと、ブロックのための変換係数の2次元行列を生成するために、統計値の選択されたセットに基づいてブロックの残差データの符号化バージョンを含む受信された1次元ベクトルを適応的に逆走査することとを含み、統計値のセットは、変換係数の2次元ブロック中の位置が非ゼロになる可能性を与える。
別の例では、ビデオデータを復号するための装置は、変換係数の2次元ブロックを生成するために第1の変換と回転変換の両方を使用してビデオデータのブロックの残差データが変換されたという指示を受信することと、第1の変換及び回転変換のうちの少なくとも1つに関連付けられた統計値のセットを選択することと、ブロックのための変換係数の2次元行列を生成するために、統計値の選択されたセットに基づいてブロックの残差データの符号化バージョンを含む受信された1次元ベクトルを適応的に逆走査することとを行うように構成され、統計値のセットは、変換係数の2次元ブロック中の位置が非ゼロになる可能性を与える、ビデオデコーダを含む。
別の例では、ビデオデータを復号するための装置は、変換係数の2次元ブロックを生成するために第1の変換と回転変換の両方を使用してビデオデータのブロックの残差データが変換されたという指示を受信するための手段と、第1の変換及び回転変換のうちの少なくとも1つに関連付けられた統計値のセットを選択するための手段と、ブロックのための変換係数の2次元行列を生成するために、統計値の選択されたセットに基づいてブロックの残差データの符号化バージョンを含む受信された1次元ベクトルを適応的に逆走査するための手段とを含み、統計値のセットは、変換係数の2次元ブロック中の位置が非ゼロになる可能性を与える。
別の例では、実行されたとき、変換係数の2次元ブロックを生成するために第1の変換と回転変換の両方を使用してビデオデータのブロックの残差データが変換されたという指示を受信することと、第1の変換及び回転変換のうちの少なくとも1つに関連付けられた統計値のセットを選択することと、ブロックのための変換係数の2次元行列を生成するために、統計値の選択されたセットに基づいてブロックの残差データの符号化バージョンを含む受信された1次元ベクトルを適応的に逆走査することとを、ビデオデータを復号するための機器のプロセッサに行わせる命令を記憶し、統計値のセットは、変換係数の2次元ブロック中の位置が非ゼロになる可能性を与える、コンピュータ可読媒体を備えるコンピュータプログラム製品が提供される。
別の例では、ビデオデータを復号する方法は、ビデオデータのブロックのイントラ予測モードがDCイントラ予測モードであることを示す情報を受信することと、ビデオデータのブロック中にエッジが存在するかどうかを決定することと、ブロック中にエッジが存在すると決定した後に、エッジの角度を決定することと、イントラ予測モードがDCイントラ予測モードであることを示す情報と、ブロック中にエッジが存在するという決定とに基づいて、エッジの角度に近い角度を有する方向性イントラ予測モードからマッピングされた方向性逆変換を使用してブロックを逆変換することと、逆変換されたブロックを復号することとを含む。
別の例では、ビデオデータを復号するための装置は、ビデオデータのブロックのイントラ予測モードがDCイントラ予測モードであることを示す情報を受信することと、ビデオデータのブロック中にエッジが存在するかどうかを決定することと、ブロック中にエッジが存在すると決定した後に、エッジの角度を決定することと、イントラ予測モードがDCイントラ予測モードであることを示す情報と、ブロック中にエッジが存在するという決定とに基づいて、エッジの角度に近い角度を有する方向性イントラ予測モードからマッピングされた方向性逆変換を使用してブロックを逆変換することと、逆変換されたブロックを復号することとを行うように構成されたビデオデコーダを含む。
別の例では、ビデオデータを復号するための装置は、ビデオデータのブロックのイントラ予測モードがDCイントラ予測モードであることを示す情報を受信するための手段と、ビデオデータのブロック中にエッジが存在するかどうかを決定するための手段と、ブロック中にエッジが存在すると決定した後に、エッジの角度を決定するための手段と、エッジの角度を決定した後に、イントラ予測モードがDCイントラ予測モードであることを示す情報と、ブロック中にエッジが存在するという決定とに基づいて、エッジの角度に近い角度を有する方向性イントラ予測モードからマッピングされた方向性逆変換を使用してブロックを逆変換するための手段と、逆変換されたブロックを復号するための手段とを含む。
別の例では、コンピュータプログラム製品は、実行されたとき、ビデオデータのブロックのイントラ予測モードがDCイントラ予測モードであることを示す情報を受信することと、ビデオデータのブロック中にエッジが存在するかどうかを決定することと、ブロック中にエッジが存在すると決定した後に、エッジの角度を決定することと、イントラ予測モードがDCイントラ予測モードであることを示す情報と、ブロック中にエッジが存在するという決定とに基づいて、エッジの角度に近い角度を有する方向性イントラ予測モードからマッピングされた方向性逆変換を使用してブロックを逆変換することと、逆変換されたブロックを復号することとをプロセッサに行わせる命令を記憶したコンピュータ可読媒体を含む。
別の例では、ビデオデータを符号化する方法は、イントラ予測符号化されるべきブロックがブロック内にエッジを含んでいると決定することと、エッジ指向イントラ予測モードを使用して計算された予測値に基づいてブロックの残差ブロックを計算することと、ブロック中にエッジが存在するという決定と、エッジベースイントラ予測モードの選択とに基づいて、エッジの角度に近い角度を有する方向性イントラ予測モードからマッピングされた方向性変換を使用して、残差ブロックを変換することと、変換された残差ブロックを表す情報と、ブロックがDCイントラ予測モードを使用して予測されたことを示す情報とを出力することとを含む。
別の例では、ビデオデータを符号化するための装置は、イントラ予測符号化されるべきブロックがブロック内にエッジを含んでいると決定することと、エッジ指向イントラ予測モードを使用して計算された予測値に基づいてブロックの残差ブロックを計算することと、ブロック中にエッジが存在するという決定と、エッジベースイントラ予測モードの選択とに基づいて、エッジの角度に近い角度を有する方向性イントラ予測モードからマッピングされた方向性変換を使用して、残差ブロックを変換することと、変換された残差ブロックを表す情報と、ブロックがDCイントラ予測モードを使用して予測されたことを示す情報とを出力することとを行うように構成されたビデオエンコーダを含む。
別の例では、ビデオデータを符号化するための装置は、イントラ予測符号化されるべきブロックがブロック内にエッジを含んでいると決定するための手段と、エッジ指向イントラ予測モードを使用して計算された予測値に基づいてブロックの残差ブロックを計算するための手段と、ブロック中にエッジが存在するという決定と、エッジベースイントラ予測モードの選択とに基づいて、エッジの角度に近い角度を有する方向性イントラ予測モードからマッピングされた方向性変換を使用して、残差ブロックを変換するための手段と、変換された残差ブロックを表す情報と、ブロックがDCイントラ予測モードを使用して予測されたことを示す情報とを出力するための手段とを含む。
別の例では、コンピュータプログラム製品は、実行されたとき、イントラ予測符号化されるべきブロックがブロック内にエッジを含んでいると決定することと、エッジ指向イントラ予測モードを使用して計算された予測値に基づいてブロックの残差ブロックを計算することと、ブロック中にエッジが存在するという決定と、エッジベースイントラ予測モードの選択とに基づいて、エッジの角度に近い角度を有する方向性イントラ予測モードからマッピングされた方向性変換を使用して、残差ブロックを変換することと、変換された残差ブロックを表す情報と、ブロックがDCイントラ予測モードを使用して予測されたことを示す情報とを出力することとをプロセッサに行わせる命令を記憶したコンピュータ可読記憶媒体を含む。
符号化ユニットの変換ユニットを符号化及び復号するための技術を利用し得る例示的なビデオ符号化及び復号システムを示すブロック図。 本開示で説明するビデオデータの変換ユニットを符号化するための技術のいずれか又は全てを実装し得るビデオエンコーダの一例を示すブロック図。 符号化されたビデオシーケンスを復号するビデオデコーダの一例を示すブロック図。 様々なイントラ予測モードに関連付けられた予測方向の例示的なセットを示す図式を示す概念図。 ITU−T H.264/AVC規格によって規定された様々なイントラ予測モードを示す概念図。 変換係数のブロックのジグザグ走査を示す概念図。 例示的な4分木(quadtree)を示す概念図。 対応する最大符号化ユニット(LCU)を示す概念図。 ブロックのために選択されたイントラ予測モードに基づいてブロックに適用すべき変換及び走査を選択するための例示的な方法を示すフローチャート。 ブロックのために選択されたイントラ予測モードに基づいてブロックに適用すべき変換及び走査を選択するための別の例示的な方法を示すフローチャート。 特定のサイズのサブCUにイントラ予測モード及び変換を適用するための例示的な方法を示すフローチャート。 残差値のブロックに適用される選択された変換に基づいて変換係数の適応走査を実行するための例示的な方法を示すフローチャート。 適応的に走査される係数を記述するシンタックス要素を走査し、エントロピー符号化するときに使用すべきコンテキストモデルを選択するための例示的な方法を示すフローチャート。 本開示の技術のうちの1つ又は複数を使用して符号化された変換ユニットを復号するための例示的な方法を示すフローチャート。 DCイントラ予測モードが信号伝達されるエッジを含むイントラ符号化ブロックに適用すべき変換を選択するための例示的な方法を示すフローチャート。
概して、本開示では、ビデオデータを符号化するための技術について説明する。より詳細には、本開示では、ビデオ符号化プロセス中に残差データを変換し、変換係数を走査することに関係する技術について説明する。符号化ビデオデータは予測データと残差データとを含み得る。ビデオエンコーダは、イントラ予測モード又はインター予測モード中に予測データを生成し得る。イントラ予測は、概して、あるピクチャのブロックを、同じピクチャの隣接する、前に符号化されたブロックに対して予測することを伴う。インター予測は、概して、あるピクチャのブロックを、前に符号化されたピクチャのデータに対して予測することを伴う。
イントラ予測又はインター予測の後に、ビデオエンコーダはブロックの残差値を計算し得る。この残差値は、概して、ブロックの予測データとブロックの真値との間の差に対応する。ブロックの残差値を更に圧縮するために、残差値は、(「エネルギー」とも呼ばれる)できるだけ多くのデータをできるだけ少数の係数に構成する変換係数のセットに変換され得る。変換係数は、元のブロックと同じサイズである係数の2次元行列に対応する。言い換えれば、元のブロック中の画素とちょうど同数の変換係数がある。但し、変換により、変換係数の多くは、0に等しい値を有し得る。
場合によっては、第1の変換によって生成された変換係数のサブセットに、回転変換などの2次変換が適用され得る。例えば、16×16残差ブロックを変換係数の16×16行列に変換した後に、最低周波数変換係数の8×8ブロックに回転変換が適用され得る。この例では2次変換として回転変換について説明したが、他の2次変換(例えば、KLT、DCTなど)も2次変換として適用され得る。そのような2次変換はまた、ブロックのための信号伝達されたイントラ予測モードに基づいて選択され得る。
「DCT変換」への言及は、固定小数点実装形態と浮動小数点実装形態の両方を含むものと理解されたい。即ち、DCT変換の実装形態は、実際には、DCT変換が有理数係数ではなく整数係数(即ち、固定小数点係数)を有するような、DCTの近似を備え得る。
幾つかの例では、変換は非分離可能変換を備え得る。非分離可能変換は一般に計算コストが高く、従って、ビデオ符号化機器は代わりに分離可能変換を適用し得る。概して、分離可能変換は、ブロックの行に適用される水平成分と、そのブロックの列に適用される垂直成分とを含む。このようにして、分離可能変換は、2直交変換成分とも呼ばれる、行変換成分と列変換成分とを有し得る。分離可能変換を定義するために2つの行列が使用され得、行列の各々は直交変換成分のうちの1つに対応する。非分離可能変換は、適用されたときに、分離可能変換の適用と概念的に同様の結果を、但し比較的より集約的な計算を介して生じる、1つの行列のみを含み得る。
残差データのブロックを変換すると、そのブロックの変換係数のセットが生成される。ビデオエンコーダは、次いで、ビデオデータを更に圧縮するために変換係数を量子化し得る。量子化は、概して、相対的に大きいセット内の値を相対的に小さいセット中の値にマッピングし、それによって、量子化された変換係数を表すために必要とされるデータの量を低減することを伴う。量子化の後に、ビデオエンコーダは、変換係数を走査して、量子化された変換係数を含む2次元行列から1次元ベクトルを生成し得る。ビデオエンコーダは、走査より前に又は走査の後に、幾つかの係数、例えば、行列の左上隅以外の全ての係数、又は配列の位置Nから終端までの配列中の全ての係数をゼロ設定し得る。
ビデオエンコーダは、次いで、データをなお一層圧縮するために、得られた配列をエントロピー符号化し得る。幾つかの例では、ビデオエンコーダは、例えば、コンテキスト適応型可変長符号化(CAVLC)を使用して、配列の様々な可能な量子化された変換係数を表すために可変長コード(VLC:variable length code)を使用するように構成され得る。他の例では、ビデオエンコーダは、例えば、コンテキスト適応型2値算術符号化(CABAC)を使用して、得られた量子化係数を符号化するために2値算術符号化を使用するように構成され得る。
本開示では、ビデオ符号化プロセス中の残差値の変換、量子化、走査、及びエントロピー符号化に関係する幾つかの技術について説明する。本技術は、ビデオ符号化及び/又は復号を実行するように構成されたビデオエンコーダ/デコーダ(コーデック)と処理ユニットとを含む、ビデオ符号化ユニットとビデオ復号ユニットの両方によって適用され得る。「ビデオ符号化ユニット」又は「ビデオ符号化機器」への言及は、ビデオデータの符号化、復号、又は符号化と復号の両方が可能なユニット又は機器を指すものと理解されたい。
高効率ビデオ符号化(HEVC)と現在呼ばれる、新しいビデオ符号化規格を開発するための取り組みが現在進行中である。この今度の規格はH.265とも呼ばれる。この規格化の取り組みは、HEVCテストモデル(HM:HEVC Test Model)と呼ばれるビデオ符号化機器のモデルに基づく。HMは、例えば、ITU−T H.264/AVCによる機器に勝るビデオ符号化機器の幾つかの能力を仮定する。例えば、H.264は9つのイントラ予測符号化モードを提供するが、HMは34個ものイントラ予測符号化モードを提供する。
HMでは、ビデオデータのブロックを符号化ユニット(CU:coding unit)と呼び、CUは、1つ以上の予測ユニット(PU:prediction unit)及び/又は1つ以上の変換ユニット(TU:transform unit)を含み得る。ビットストリーム内のシンタックスデータが、画素の数に関して最大の符号化ユニットである最大符号化ユニット(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、又はTUのいずれかを指すために「ブロック」という用語を使用する。
LCUは4分木データ構造に関連付けられ得る。概して、4分木データ構造はCUごとに1つのノードを含み、ルートノードはLCUに対応する。CUが4つのサブCUに分割された場合、CUに対応するノードは4つのリーフノードを含み、リーフノードの各々はサブCUのうちの1つに対応する。4分木データ構造の各ノードは、対応するCUのシンタックスデータを与え得る。例えば、4分木のノードは、そのノードに対応するCUがサブCUに分割されるかどうかを示す分割フラグを含み得る。CUのシンタックス要素は、再帰的に定義され得、CUがサブCUに分割されるかどうかに依存し得る。CUが更に分割されない場合、そのCUはリーフCUと呼ばれる。本開示では、元のリーフCUの明示的分割が存在しなくても、リーフCUの4つのサブCUをリーフCUとも呼ぶ。例えば、16×16サイズのCUが更に分割されない場合、この16×16CUが決して分割されなくても、4つの8×8サブCUをリーフCUとも呼ぶ。
その上、リーフCUのTUもそれぞれの4分木データ構造に関連付けられ得る。即ち、リーフCUは、リーフCUがどのようにTUに区分されるかを示す4分木を含み得る。本開示では、LCUがどのように区分されるかを示す4分木をCU4分木と呼び、リーフCUがどのようにTUに区分されるかを示す4分木をTU4分木と呼ぶ。TU4分木のルートノードは概してリーフCUに対応し、CU4分木のルートノードは概してLCUに対応する。分割されないTU4分木のTUはリーフTUと呼ばれる。
リーフCUは、1つ以上の予測ユニット(PU)を含み得る。概して、PUは、対応するCUの全部又は一部分を表し、そのPUの参照サンプルを取り出すためのデータを含み得る。例えば、PUがインターモード符号化されるとき、PUは、PUの動きベクトルを定義するデータを含み得る。動きベクトルを定義するデータは、例えば、動きベクトルの水平成分、動きベクトルの垂直成分、動きベクトルの解像度(例えば、1/4画素精度もしくは1/8画素精度)、動きベクトルが指す参照フレーム、及び/又は動きベクトルの参照リスト(例えば、リスト0又はリスト1)を記述し得る。(1つ又は複数の)PUを定義するリーフCUのデータはまた、例えば、CUを1つ以上のPUに区分することを記述し得る。区分モードは、CUが符号化されないか、イントラ予測モード符号化されるか、又はインター予測モード符号化されるかに応じて異なり得る。イントラ符号化の場合、PUは、以下で説明するリーフ変換ユニットと同じように扱われ得る。
リーフCUは、1つ以上の変換ユニット(TU)を含み得る。変換ユニットは、上記で説明したように、TU4分木構造を使用して指定され得る。即ち、分割フラグは、リーフCUが4つの変換ユニットに分割されるかどうかを示し得る。次いで、各変換ユニットは更に4つのサブTUに分割され得る。TUが更に分割されないとき、そのTUはリーフTUと呼ばれ得る。概して、イントラ符号化の場合、リーフCUに属する全てのリーフTUは同じイントラ予測モードを共有する。即ち、概して、リーフCUの全てのTUの予測値を計算するために同じイントラ予測モードが適用される。イントラ符号化の場合、ビデオエンコーダは、イントラ予測モードを使用して各リーフTUの残差値を、TUに対応する予測値の一部と元のブロックとの間の差として計算し得る。残差値は変換され、量子化され、走査され得る。インター符号化の場合、ビデオエンコーダは、PUレベルで予測を実行し、各PUの残差を計算し得る。リーフCUに対応する残差値は変換され、量子化され、走査され得る。インター符号化の場合、リーフTUはPUよりも大きく又は小さくなり得る。イントラ符号化の場合、PUは、対応するリーフTUと同一場所に配置され得る。幾つかの例では、リーフTUの最大サイズは、対応するリーフCUのサイズであり得る。
概して、本開示では、特に明記しない限り、リーフCU及びリーフTUに言及するためにそれぞれCU及びTUという用語を使用する。概して、本開示の技術は、CUのデータを変換し、量子化し、走査し、エントロピー符号化することに関する。一例として、本開示の技術は、ブロックを予測するために使用されたイントラ予測モードに基づいてイントラ予測されたブロックの残差値を変換するために使用すべき変換を選択することを含む。本開示ではまた、イントラ予測モード方向に依存するそのような変換に言及するために「方向性変換(directional transform)」又は「設計変換(designed transform)」という用語を使用する。即ち、ビデオエンコーダは、変換ユニット(TU)に適用すべき方向性変換を選択し得る。上記のように、イントラ予測は、あるピクチャの現在のCUのTUを、同じピクチャの前に符号化されたCU及びTUから予測することを含む。より詳細には、ビデオエンコーダは、特定のイントラ予測モードを使用してあるピクチャの現在のTUをイントラ予測し得る。
本開示の技術は、幾つかの変換をイントラ予測モードに関連付けることを含む。従って、本開示の技術によれば、イントラ予測モードと変換との間に1対1の対応があり得る。幾つかの例では、イントラ予測モードとそれの変換との間に多対1の対応があり得る。例えば、イントラ予測モードの大きいセットはイントラ予測モードのより小さいセットにマッピングされ得、イントラ予測モードのより小さいセットの各々はそれぞれの変換に1対1でマッピングされ得る。
変換はまた、それぞれの走査パターンにマッピングされ得る。幾つかの例では、イントラ予測モードは変換と走査の両方にマッピングされ得るが、他の例では、イントラ予測モードは変換にマッピングされ得、変換は走査にマッピングされ得る。様々な例において、変換と係数走査の様々な組合せが使用され得る。例えば、イントラ予測モードはモード依存方向性変換にマッピングされ得、全ての場合においてジグザグ走査が使用され得る。
幾つかの例では、イントラ予測モードを変換及び/又は走査パターンにマッピングするのではなく、ビデオエンコーダ20は、適用すべき1つ以上の変換と走査パターンの組合せを信号伝達するように構成され得る。同様に、ビデオデコーダ30は、イントラ予測モードと変換及び走査パターンとの間でマッピングするのではなく、受信された指示に基づいて適用すべき変換と走査パターンとを決定するように構成され得る。
変換は、離散コサイン変換(DCT)と、カルーネンレーベ変換(KLT:Karhunen-Loeve transform)とも呼ばれる8つの方向性変換とを含み得る。DCTは、概して、異なる周波数を有するコサイン関数の和であり、これらの関数は残差値に適用される。KLTは、概して、それぞれ2つの行列を含む。KLTにおける各行列は、変換されるべき残差ブロックと同じサイズである。KLTは、トレーニングセットデータから導出されるか、或いはビデオフレーム及び/又は予測残差のモデルを仮定して分析的に導出され得る。
HMエンコーダは、幾つかのブロックサイズのための34個のイントラ予測モードで構成され得る。従って、方向性イントラ予測モードと方向性変換との間の1対1のマッピングをサポートするために、HMエンコーダ及びデコーダは、サポートされる各変換サイズについて最高68個の行列を記憶する必要があろう。更に、全ての34個のイントラ予測モードがサポートされるブロックサイズは、相対的に大きいブロック、例えば、16×16画素、32×32画素、又はより一層大きい画素になり得る。
幾つかの例では、本開示は、エンコーダ及びデコーダがサポートする必要がある方向性変換の数を低減するための技術を提供する。即ち、エンコーダ及びデコーダは、利用可能なイントラ予測モードの数よりも少ない方向性変換をサポートし得る。これらの技術によるエンコーダは、例えば、イントラ予測モードの相対的に大きいセットをイントラ予測モードのサブセットにマッピングし得る。サブセット中のイントラ予測モードの各々は方向性変換に関連付けられ得る。即ち、サブセット中のイントラ予測モードは、方向性変換のセットとの1対1の対応を有し得る。従って、大きいセット中のイントラ予測モードは、方向性変換のセットとの多対1の対応を有し得る。
例えば、34個のHM方向性イントラ予測モードの各々は、H.264の8つの方向性イントラ予測モードのうちの1つにマッピングされ得る。ビデオエンコーダは、従って、現在のTUの値をイントラ予測するために方向性予測モードを選択し、選択されたモードがマッピングされるサブセットからイントラ予測モードを決定し、次いで、そのサブセットからのイントラ予測モードにマッピングされる方向性変換を使用して現在のTUを変換し得る。更に、方向性変換の各々はそれぞれの走査パターンに関連付けられ得る。従って、エンコーダは、方向性変換に関連付けられた走査を実行して変換係数のベクトルを生成し得、次いで、それらの変換係数は量子化され得る。その上、エンコーダは、ベクトルの最大サイズを用いて構成され得る。即ち、エンコーダは、走査されるべき次の係数が非ゼロであるか否かにかかわらず、最大サイズに達したときに変換係数を走査するのを停止し得る。
上記で説明した技術を適用することによって、エンコーダは、上記で説明した技術が使用されるとき、特定のTUのために使用される変換を信号伝達する必要がなくなる。即ち、エンコーダとデコーダとは、それぞれ、大きいセットのイントラ予測モードの、サブセットのイントラ予測モードへの多対1のマッピング(many-to-one mapping)と、サブセットのイントラ予測モードの、方向性変換への1対1のマッピング(one-to-one mapping)とを用いて構成され得る。従って、大きいセットからイントラ予測モードを信号伝達することにより、デコーダは、ブロックを変換するために使用される変換を導出することができる。その上、これらの技術は、様々な方向性変換のための行列の記憶に割り振られ得るメモリが限られているレガシー機器によって実装され得る。
HMエンコーダは、ブロックのイントラ予測モードの利用可能なセットがブロックのサイズに基づいて異なるように構成され得る。即ち、CUのサイズによってそのCUのために利用可能なイントラ予測モードの数が決定され得、そこから、エンコーダは、TUの係数を計算するために使用される値を予測するためにイントラ予測モードを選択し得る。以下の表1に、CUのサイズと、そのサイズのCUのために利用可能なイントラ予測モードの数との間の対応の一例を示す。本開示では、元のリーフCUの明示的分割が存在しなくても、リーフCUの4つのサブCUをリーフCUとも呼ぶ。リーフCUが最小CUサイズを有する場合、これらの4つのサブCUは異なるイントラ予測モードを選択することができる。従って、この表は4×4CUサイズの項目を有する。
Figure 2015039191
概して、ビデオエンコーダは、ビデオデコーダがブロックを適切に復号するためにそのブロックの予測方向を信号伝達し得る。幾つかの例では、ビデオエンコーダは、CUに属する全てのTUに適用され得る、そのCUのための単一の予測方向を決定するように構成され得る。但し、表1に上記したように、ブロックの幾つかのサイズは、ブロックの他のサイズと比較して利用可能なイントラ予測モードがより少ない。そのような場合は、CUブロックサイズにおける予測方向の数がTUブロックサイズのために使用されることを可能にすることによって解決され得る。代替的に、より大きいセットのイントラ予測モードが、より小さいセット、例えば、サブセットのイントラ予測モードにマッピングされ得る。上記で説明したように、より大きいセットのイントラ予測モードとより小さいセットのイントラ予測モードとの間に多対1の関係があり得る。
TU4分木構造は、大きいブロック(CU)の、より小さいブロック(TU)への分解につながり得る。(CUの)ルートブロックの空間的予測モードはビットストリーム中で明示的に信号伝達され得る。得られたより小さいTU4分木ブロック(TU)は、それらの予測モードを、(CUに対応する)TU4分木のルートブロックの予測モードから継承し得る。但し、より小さいブロック(TU)によってサポートされる空間的予測方向の数は、ルートブロック(CU)の数とは異なり得る。これは、より小さいブロック(TU)のためにより多くの予測方向を可能にすることによって解決され得る。代替的に、より小さいブロック(TU)の予測モードは、CUのイントラ予測方向と、より小さいブロック中のサポートされる予測方向との間の予測方向角度差を最小限に抑えることなど、所定の基準に従って、多対1又は1対1のマッピングによって、ルートブロック(CU)の予測モードから導出され得る。このマッピングに基づいて方向性変換と走査パターンとが選択され得る。
このようにして、ビデオエンコーダは、CUのためにイントラ予測方向を1回信号伝達し得る。CUが、信号伝達されたイントラ予測方向をサポートしないサイズのTUを含むと仮定すると、ビデオエンコーダは、マッピングに基づいてTUのイントラ予測モードを決定し得る。即ち、ビデオエンコーダは、より大きいセットの信号伝達されたイントラ予測モードがマッピングされるより小さいセットのイントラ予測モードを使用してTUを計算するために使用される予測ブロックをイントラ予測し得る。同様に、ビデオデコーダは、ビデオデコーダが受信したCUの各TUについてイントラ予測モードを決定することができるように、同じ構成を含み得る。代替的に、TUの予測モードの数は、対応するCUの予測モードの数に一致するように増加され得る。
幾つかの例では、幾つかのイントラ予測モードでは、特定のサイズのTUのために複数の変換が可能であり得る。そのような場合、ビデオデコーダは、イントラ予測モードのみからTUに適用すべき変換を導出することが可能でないことがある。従って、ビデオエンコーダは、複数の変換が可能であるサイズのTUのために使用すべき変換を信号伝達する必要があり得る。そのようなTUごとに変換を信号伝達するのではなく、この情報はCUレベルで信号伝達され得る。そのような場合、この変換は、CU中に含まれている全てのTUに適用され得る。信号伝達されたイントラ予測モードにただ1つの変換がマッピングされるサイズのTUについては、マッピングされた変換が使用され得る。
その上、複数の変換が可能であるサイズのTUをCUが含む場合、変換を指定するシンタックスが存在するだけでよい。ただ1つの変換が可能であるTUの場合、ビデオエンコーダ及びデコーダは、選択されたイントラ予測モードに基づいて使用すべき変換を決定し得る。但し、複数の変換が可能であるサイズのTUの場合、ビデオエンコーダは、例えば、CUのTU4分木のルートにおいて使用すべき変換を信号伝達することによって、CU中の全ての同様にサイズ決定されたTUのために使用すべき変換を明示的に信号伝達し得る。
このようにして、ビデオデコーダが、TUに対応するCUのイントラ予測モードに基づいて複数の変換が可能であるサイズのTUに遭遇した場合、デコーダは、明示的信号伝達に基づいて適用すべき変換を決定し得る。他のTUの場合、ビデオデコーダは、CUについて信号伝達されたイントラ予測モードに関連付けられた変換を使用し得る。
幾つかの例では、ビデオエンコーダは、CUの残差値に2つ以上の変換(例えば、2つ以上の分離可能変換)を適用し得る。例えば、ビデオエンコーダは、第1の変換を使用してCUのTUを1回変換して、変換係数の第1のセットを生成し、次いで、その変換係数の第1のセットに第2の変換を適用して変換係数の第2のセットを生成し得る。TUに2つ以上の変換を適用するこのプロセスはカスケード変換(cascaded transform)と呼ばれることがある。幾つかの例では、第2の変換は、第1の変換によって生成された係数のサブセットのみに適用され得る。第1の変換が第1の分離可能変換を備え得ると同時に、第2の変換は第2の分離可能変換を備え得ることを理解されたい。従って、カスケード変換は、第1の分離可能変換のために2つ、第2の分離可能変換のために別の2つ、合計4つの行列を係数に適用することによって適用され得る。
幾つかの例では、第2の変換(即ち、第2の分離可能変換)は回転変換(ROT:rotational transform)に対応し得る。回転変換は、概して、変換基底の座標系を変化させるものと考えられ得る。例えば、ビデオエンコーダは、TUに対して、最初に方向性変換を適用し、次いで回転変換を適用し得る。別の例として、ビデオエンコーダは、TUに対して、最初にDCTを適用し、次いでそのTUに回転変換を適用し得る。ビデオエンコーダは複数の回転変換を用いて構成され得る。ビデオエンコーダは更に、幾つかの方向性変換の後に及び/又は幾つかのイントラ予測モードと併せて回転変換を適用するように構成され得る。即ち、ビデオエンコーダは、方向性変換の幾つかの組合せと幾つかのイントラ予測モードとに対して回転変換を適用するように構成され得る。ある値、例えば、回転角によって異なる回転変換がインデックス付けされ得る。幾つかの例では、回転変換を使用して係数の全てが変換されるとは限らない。例えば、ビデオエンコーダは、TUの低周波変換係数のみを回転変換するように構成され得る。
更に、幾つかの例では、本開示の技術は、TU内の検出されたエッジを有するTUをイントラモード予測することを含む。例えば、ビデオ符号化ユニットは、隣接ブロック中のエッジの存在を検出し、次いで、そのエッジが現在のTU中に続くと決定し得る。そのようなTUをイントラ予測するためのエッジ処理予測モードが提供され得る。ビデオエンコーダは、このエッジベース予測モードを使用してTUを予測すべきか別の方向性イントラ予測モードを使用してTUを予測すべきかを決定し得る。TU中にエッジが存在すると決定されたとき、及びエッジベース予測モードが選択されているとき、使用されるイントラ予測モードを信号伝達するためにDC予測モードを示す値が使用され得るが、エッジが存在するという決定により、この値はエッジ処理予測モードを示すと解釈され得る。更に、エッジの角度が決定され、上記で説明した方向性イントラ予測モードの方向性変換へのマッピングと同様の方法で方向性変換にマッピングされ得る。同様に、この例では方向性変換にマッピングされた走査パターンも使用され得る。
本開示はまた、1次元ベクトルを生成し、次いでその1次元ベクトルをエントロピー符号化することができるように、変換係数を走査するための技術を提供する。これらの技術によれば、ビデオエンコーダは、様々なファクタに基づいて固定走査パターンを選択するか、又は適応走査を実行するように構成され得る。例えば、ビデオエンコーダは固定走査パターンのセットを含み得る。ビデオエンコーダは、例えば、イントラ予測モード、TUのために選択された変換、TUが、TUのために選択されたカスケード変換を使用して変換されるか、TUのために選択された回転変換を使用して変換されるか、又はそれらの任意の組合せを使用して変換されるかなど、様々な基準に基づいて固定走査パターンのうちの1つを選択し得る。例えば、ビデオエンコーダは、イントラ予測モード、2次変換、又はそれらの組合せに基づいて予め定義された走査のセットのうちの1つを選択し得る。幾つかの例では、ビデオエンコーダは、上記で説明したファクタのうちの1つ以上に基づいて走査インデックスを選択し得、走査インデックスは固定走査又は適応走査のいずれかに対応し得る。
幾つかの例では、ビデオエンコーダは変換係数を適応的に走査するように構成され得る。ビデオエンコーダは、初期の固定走査パターンを記憶し得る。ビデオエンコーダがピクチャのブロックを符号化するとき、ビデオエンコーダは走査パターンを適応的に更新し得る。ビデオエンコーダは、例えば、位置における係数がゼロ値化される傾向があるかどうかを示す統計値を収集し得、特定の位置における係数が通常ゼロ値化される場合、ビデオエンコーダは、通常非ゼロ値を有する他の係数よりも後にその係数を走査することを選択し得る。その上、ビデオエンコーダは、例えば、イントラ予測モード、TUのために選択された変換、TUが、TUのために選択されたカスケード変換を使用して変換されるか、TUのために選択された回転変換を使用して変換されるか、又はそれらの任意の組合せを使用して変換されるかなど、ファクタの様々な組合せのための別々の固定走査及び/又は走査統計値を記憶し得る。幾つかの例では、ビデオエンコーダは、カスケード変換の各組合せ、例えば、第1の変換に後続する回転変換について別々の統計値を記憶し得る。幾つかの例では、ビデオエンコーダは、ビデオエンコーダがカスケード変換を適用するときは適応走査を使用し、ビデオエンコーダが単一の変換を適用するときは固定走査を使用し得る。
上記のように、変換係数の2次元行列を走査すると1次元ベクトルが生成され、次いで、その1次元ベクトルはエントロピー符号化され得る。幾つかの例では、ビデオエンコーダは、コンテキスト適応型2値算術符号化(CABAC)を使用して変換係数をエントロピー符号化し得る。ビデオエンコーダはまた、例えば、有効係数フラグ及び最終係数フラグなど、シンタックス要素をエントロピー符号化し得る。変換係数を適応的に走査するとき、ビデオエンコーダは、係数が有効であるか否か示すために有効係数フラグの値を設定し得る。ビデオエンコーダは、例えば、係数の値が非ゼロのとき、係数が有効であると決定するように構成され得る。ビデオエンコーダはまた、適応走査によって生成されたベクトル中の最終係数を示すために最終係数フラグの値を設定し得る。ビデオデコーダは、エントロピー符号化された係数を適応的に逆走査するために、これらのシンタックス要素を使用して局所的に記憶された統計値を更新し得る。本開示は、そのようなシンタックス要素を符号化するためにCABACを実行するときにコンテキストモデルを選択するための技術を提供する。ビデオエンコーダは、例えば、要素の中でも、符号化されているCUのイントラ予測モードに基づいてコンテキストモデルを選択し得る。
図1は、符号化ユニットの変換ユニットを符号化及び復号するための技術を利用し得る例示的なビデオ符号化及び復号システム10を示すブロック図である。図1に示すように、システム10は、通信チャネル16を介して符号化ビデオを宛先機器14に送信するソース機器12を含む。ソース機器12及び宛先機器14は、広範囲にわたる機器のいずれかを備え得る。場合によっては、ソース機器12及び宛先機器14は、ワイヤレスハンドセット、所謂セルラー無線電話又は衛星無線電話などのワイヤレス通信機器を備えるか、或いは通信チャネル16を介してビデオ情報を通信することができ、その場合、通信チャネル16がワイヤレスである、任意のワイヤレス機器を備え得る。
但し、変換ユニットの符号化及び復号に関係する本開示の技術は、必ずしもワイヤレスアプリケーション又は設定に限定されるとは限らない。例えば、これらの技術は、オーバージエアテレビジョン放送、ケーブルテレビジョン送信、衛星テレビジョン送信、インターネットビデオ送信、記憶媒体上に符号化される符号化デジタルビデオ、又は他のシナリオに適用され得る。従って、通信チャネル16は、符号化ビデオデータの送信又は記憶に好適なワイヤレス又はワイヤード媒体の任意の組合せを備え得る。
図1の例では、ソース機器12は、ビデオソース18と、ビデオエンコーダ20と、変調器/復調器(モデム)22と、送信機24とを含む。宛先機器14は、受信機26と、モデム28と、ビデオデコーダ30と、表示装置32とを含む。本開示によれば、ソース機器12のビデオエンコーダ20は、本開示の変換ユニットの符号化及び復号のための技術を適用するように構成され得る。他の例では、ソース機器及び宛先機器は他の構成要素又は構成を含み得る。例えば、ソース機器12は、外部カメラなどの外部ビデオソース18からビデオデータを受信し得る。同様に、宛先機器14は、内蔵表示装置を含むのではなく、外部表示装置とインターフェースし得る。
図1の図示のシステム10は一例にすぎない。変換ユニットの符号化及び復号のための技術は、任意のデジタルビデオ符号化及び/又は復号機器によって実行され得る。概して、本開示の技術はビデオ符号化機器又はビデオ復号機器によって実行されるが、本技術は、一般に「コーデック」と呼ばれるビデオエンコーダ/デコーダによっても実行され得る。ソース機器12及び宛先機器14は、ソース機器12が宛先機器14に送信するための符号化ビデオデータを生成する、そのような符号化機器の例にすぎない。幾つかの例では、機器12、14は、機器12、14の各々がビデオ符号化構成要素とビデオ復号構成要素とを含むように、実質的に対称的に動作し得る。従って、システム10は、例えば、ビデオストリーミング、ビデオ再生、ビデオブロードキャスト、又はビデオテレフォニーのためのビデオ機器12とビデオ機器14との間の一方向又は双方向のビデオ送信をサポートし得る。
ソース機器12のビデオソース18は、ビデオカメラなどのビデオキャプチャ機器、以前にキャプチャされたビデオを含んでいるビデオアーカイブ、及び/又はビデオコンテンツプロバイダからのビデオフィードを含み得る。さらなる代替として、ビデオソース18は、ソースビデオとしてのコンピュータグラフィックスベースのデータ、又はライブビデオとアーカイブビデオとコンピュータ生成ビデオとの組合せを生成し得る。場合によっては、ビデオソース18がビデオカメラである場合、ソース機器12及び宛先機器14は、所謂カメラ付き携帯電話又はビデオ電話を形成し得る。但し、上述のように、本開示で説明する技術は、概してビデオ符号化に適用可能であり得、ワイヤレス及び/又はワイヤードアプリケーションに適用可能であり得る。各場合において、撮像されたビデオ、以前に撮像されたビデオ、又はコンピュータ生成ビデオは、ビデオエンコーダ20によって符号化され得る。符号化ビデオ情報は、次いで、通信規格に従ってモデム22によって変調され、送信機24を介して宛先機器14に送信され得る。モデム22は、信号変調のために設計された様々なミキサ、フィルタ、増幅器又は他の構成要素を含み得る。送信機24は、増幅器、フィルタ、及び1つ以上のアンテナを含む、データを送信するために設計された回路を含み得る。
宛先機器14の受信機26はチャネル16を介して情報を受信し、モデム28はその情報を復調する。この場合も、ビデオ符号化プロセスは、変換ユニットを符号化及び復号するための本明細書で説明する技術のうちの1つ以上を実装し得る。チャネル16を介して通信される情報は、ビデオエンコーダ20によって定義され、またビデオデコーダ30によって使用される、符号化ビデオデータの符号化ユニット又は他のユニット、例えば、ピクチャグループ(GOP)、スライス、フレームなどの特性及び/又は処理を記述するシンタックス要素を含む、シンタックス情報を含み得る。CU4分木データ構造が、最大符号化ユニットのためのシンタックス情報の一部を形成し得る。即ち、各LCUは、LCUがどのようにサブCUに分割されるかを記述し得るCU4分木の形態のシンタックス情報、及びLCUとサブCUとがどのように符号化されるかに関する信号伝達情報を含み得る。同様に、TU4分木データ構造は、それぞれのリーフCUがどのようにTUに分割されるかを記述し得る、LCUのリーフCUのためのシンタックス情報の一部を形成し得る。
ビデオデコーダ30は、CUのTUを含む、受信されたピクチャのCUをどのように復号すべきかを決定するためにCU4分木とTU4分木とを使用し得る。ビデオデコーダ30は、次いで、CUを復号し、復号されたビデオデータを表示装置32に送り得る。表示装置32は、復号されたビデオデータをユーザに対して表示し、陰極線管(CRT)、液晶ディスプレイ(LCD)、プラズマディスプレイ、有機発光ダイオード(OLED)ディスプレイ、又は別のタイプの表示装置など、様々な表示装置のいずれかを備え得る。
図1の例では、通信チャネル16は、無線周波数(RF)スペクトル或いは1つ以上の物理伝送線路など、任意のワイヤレス又は有線通信媒体、若しくはワイヤレス媒体と有線媒体との任意の組合せを備え得る。通信チャネル16は、ローカルエリアネットワーク、ワイドエリアネットワーク、又はインターネットなどのグローバルネットワークなど、パケットベースネットワークの一部を形成し得る。通信チャネル16は、概して、有線媒体又はワイヤレス媒体の任意の好適な組合せを含む、ビデオデータをソース機器12から宛先機器14に送信するのに好適な任意の通信媒体、又は様々な通信媒体の集合体を表す。通信チャネル16は、ソース機器12から宛先機器14への通信を可能にするのに有用であり得るルータ、スイッチ、基地局、又は任意の他の機器を含み得る。
ビデオエンコーダ20及びビデオデコーダ30は、代替的にMPEG−4、Part10、Advanced Video Coding(AVC)と呼ばれるITU−T H.264規格など、ビデオ圧縮規格に従って動作し得る。別の例として、ビデオエンコーダ20及びビデオデコーダ30は、高効率ビデオ符号化(HEVC)規格に従って動作し得、HEVCテストモデル(HM)に準拠し得る。但し、本開示の技術は、いかなる特定の符号化規格にも限定されない。他の例には、MPEG−2及びITU−T H.263がある。図1には示されていないが、幾つかの態様では、ビデオエンコーダ20及びビデオデコーダ30は、それぞれオーディオエンコーダ及びデコーダと統合され得、適切なMUX−DEMUXユニット、又は他のハードウェア及びソフトウェアを含んで、共通のデータストリーム又は別個のデータストリーム中のオーディオとビデオの両方の符号化を処理し得る。適用可能な場合、MUX−DEMUXユニットはITU H.223マルチプレクサプロトコル、又はユーザデータグラムプロトコル(UDP)などの他のプロトコルに準拠し得る。
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 Study Groupによる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への拡張に取り組み続けている。
ビデオエンコーダ20及びビデオデコーダ30はそれぞれ、1つ以上のマイクロプロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェアなど、様々な好適なエンコーダ回路のいずれか、或いはそれらの任意の組合せとして実装され得る。本技術がソフトウェアで実装されるとき、機器は、好適な非一時的コンピュータ可読媒体にソフトウェアの命令を記憶し、1つ以上のプロセッサを使用してその命令を実行して、本開示の技術を実行し得る。ビデオエンコーダ20及びビデオデコーダ30の各々は1つ以上のエンコーダ又はデコーダ中に含まれ得、そのいずれも複合エンコーダ/デコーダ(コーデック)の一部としてそれぞれのカメラ、コンピュータ、モバイル機器、加入者機器、ブロードキャスト機器、セットトップボックス、サーバなどに統合され得る。
ビデオシーケンスは、一般に一連のビデオフレームを含む。ピクチャグループ(GOP)は、概して、一連の1つ以上のビデオフレームを備える。GOPは、GOP中に含まれる幾つかのフレームを記述するシンタックスデータを、GOPのヘッダ、GOPの1つ以上のフレームのヘッダ、又は他の場所中に含み得る。各フレームは、それぞれのフレームについての符号化モードを記述するフレームシンタックスデータを含み得る。ビデオエンコーダ20は、一般に、ビデオデータを符号化するために、個々のビデオフレーム内の符号化ユニットに対して動作する。符号化ユニットはLCU又はサブCUに対応し得、CUという用語はLCU又はサブCUを指し得る。LCUのヘッダ情報は、LCUのサイズ、LCUが分割され得る回数(本開示ではCU深さと呼ぶ)、及び他の情報を記述し得る。各ビデオフレームは複数のスライスを含み得、各スライスは複数のLCUを含み得る。
幾つかの例では、様々なCUサイズについての予測が実行され得る。LCUのサイズはシンタックス情報によって定義され得る。特定のリーフノードCUのサイズが2N×2Nであると仮定すると、幾つかの例では、イントラ予測サイズは2N×2N又はN×Nを含み得、インター予測対称サイズは2N×2N、2N×N、N×2N、又はN×Nを含み得る。幾つかの例では、2N×nU、2N×nD、nL×2N、及びnR×2Nのサイズを用いたインター予測のために非対称分割が使用され得る。非対称分割では、CUの一方向は分割されないが、他の方向は25%と75%とに分割される。CUのどの部分が25%分割されるかは、「n」に後続する「Up」、「Down」、「Left」、又は「Right」の指示によって示される。従って、例えば、「2N×nU」は、水平方向に、上部の0.2N×0.5N PUと下部の2N×1.5N PUとで分割される2N×2N CUを指す。
本開示では、「N×(x)N」と「N×(by)N」は、垂直寸法と水平寸法とに関するブロック(例えば、CU、PU、又はTU)の画素寸法、例えば、16×(x)16画素又は16×(by)16画素を指すために互換的に使用され得る。一般に、16×16ブロックは、垂直方向に16画素を有し(y=16)、水平方向に16画素を有する(x=16)。同様に、N×Nブロックは、一般に、垂直方向にN画素を有し、水平方向にN画素を有し、但し、Nは非負整数値を表す。ブロック中の画素は行と列に構成され得る。その上、ブロックは、必ずしも、水平方向において垂直方向と同じ数の画素を有する必要はない。例えば、ブロックはN×M画素を備え得、Mは必ずしもNに等しいとは限らない。
CUのPUは、(画素領域とも呼ばれる)空間領域中の画素データを備え得るが、CUのTUは、例えば、残差ビデオデータに対する離散コサイン変換(DCT)、整数変換、ウェーブレット変換、又は概念的に同様の変換などの変換の適用後の、変換領域中の係数を生成するために変換され得る。残差データは、概して、PUの値と、入力ビデオデータからの同一位置配置非符号化画素の値との間の画素差分を表す。係数は更に量子化され得る。TUの変換係数は周波数領域中にあると言われることがある。
ビデオエンコーダ20は、符号化ユニットの変換ユニットの符号化を改善するために本開示の技術のいずれか又は全てを実装し得る。同様に、ビデオデコーダ30は、符号化ユニットの変換ユニットの復号を改善するためにこれらの技術のいずれか又は全てを実装し得る。概して、本開示の技術は、イントラモード予測に基づいて係数の計算に続いて変換ユニットの係数を変換することを対象とする。但し、本開示の幾つかの態様はインター予測符号化に関しても実装され得る。例として、これらの技術はTUのイントラ予測符号化に関連して説明される。これらの技術の幾つかの態様は、インター予測符号化とともにも実行され得ることを理解されたい。
ビデオエンコーダ20は、LCUを受信し、そのLCUを、各々がサブCUを備える、4つの象限(quadrant)に分割すべきかどうか、又はそのLCUを分割せずに符号化すべきかどうかを決定し得る。LCUをサブCUに分割すると決定した後に、ビデオエンコーダ20は、各サブCUを、各々がサブCUを備える、4つの象限に分割すべきかどうかを決定し得る。ビデオエンコーダ20は、CUを分割すべきかどうかを再帰的に決定することを続け得、分割の最大数はLCU深さによって示される。ビデオエンコーダ20は、LCUとそのLCUのサブCUとの分割を示すCU4分木データ構造を与え得る。LCUはCU4分木のルートノードに対応し得る。CU4分木の各ノードはLCUのCUに対応し得る。その上、各ノードは、対応するCUが分割されるかどうかを示す分割フラグ値を含み得る。
LCUが分割される場合、例えば、ビデオエンコーダ20は、LCUが分割されることを示すためにルートノードにおいて分割フラグの値を設定し得る。次いで、ビデオエンコーダ20は、もしあれば、LCUのサブCUのうちのどれが分割されるのかを示すためにルートノードの子ノードの値を設定し得る。分割されないCUはCU4分木データ構造のリーフノードに対応し得、リーフノードは子ノードを有しない。その上、各リーフノードCUは、そのリーフノードCUのTU4分木によって示される、1つ以上のTUを含み得る。
ビデオエンコーダ20は、4分木データ構造中のリーフノードに対応するLCUの各サブCUを符号化し得る。例として、本開示では、リーフノードCUに対応するTUのイントラ予測符号化に関係する技術について説明する。イントラモード符号化では、ビデオエンコーダ20は、TU4分木データ構造中のリーフノードに対応する各TUについて予測ユニット(PU)を形成し得る。幾つかの例では、ビデオエンコーダ20は、CUについての34個の異なるイントラ予測モードのうちの1つを選択し、TU4分木のルートノードにおいてその選択されたイントラ予測モードを信号伝達し得る。(CU4分木中のリーフノードCUにサイズが等しい)第1の最大TUから開始して、ビデオエンコーダ20は、最大TUを区分すべきかどうか、及び、再帰的に、親TUのサブTUを区分すべきかどうかを決定し得る。ビデオエンコーダ20は、更に、TU4分木を含むCUのためのリーフノードCU4分木においてイントラ予測モードを信号伝達し得、信号伝達されるイントラ予測モードは、CUに対応するTU4分木においてTUの各々の予測値を計算するために使用されるべきイントラ予測モードを記述し得る。ビデオエンコーダ20は、選択されたイントラ予測モードに従って、隣接する、前に符号化されたビデオデータからTUの予測データを取り出す。このようにして、イントラ予測モードを使用して予測されるCUのPUは、CUのTUと同じサイズである。
本開示の技術によれば、例えば、現在のCUサイズにより、選択されたイントラ予測モードがそのCUのために利用可能でない場合、ビデオエンコーダ20は、4分木のルートにおいて信号伝達されたモードがマッピングされるイントラ予測モードを選択し得る。即ち、ビデオエンコーダ20は、多対1の対応で、モードの大きいセットのうちのモードの各々を、より小さいセットのモード、例えば、その大きいセットのサブセットにマッピングする情報を含み得る。ビデオエンコーダ20は、次いで、より小さいセットからイントラ予測モードを使用してCUについての1つ以上のPUをイントラ予測し得る。このようにして、ビデオエンコーダ20は、LCUのために1つのイントラ予測モードを信号伝達するだけでよいが、ビデオエンコーダ20は、モードの各々とモードが使用されるサブCUとを明示的に信号伝達することなしにLCUのサブCUをイントラ予測するために複数のモードを使用し得る。従って、ビットストリーム中に含まれる情報の量を増加させることなしに複数のイントラ予測モードが使用され得、それによってオーバーヘッドが低減される。別の実施形態では、サブCUサイズ又はPUサイズにかかわらずLCUのために同じイントラ予測モードを使用することを可能にするために、CUレベルにおいてより大きい数の予測方向が可能にされ得る。
ビデオエンコーダ20は、更に、ビデオエンコーダ20が決定するCU中のTUがエッジを含むことを予測するためのエッジベース予測モードで構成され得る。概して、エッジは、TUを通る比較的真直ぐなラインに沿った高周波変動に対応する。例えば、エッジは、同じくTU中に表された背景と対比されるTU中に表された対象物の境界に沿って生じ得る。TU中のエッジを検出するために、ビデオエンコーダ20は、TU中の画素の勾配を計算し、その勾配がTUを通るラインを識別するかどうかを決定し得る。現在のTUがエッジを含むと決定した後に、ビデオエンコーダ20は、エッジベース予測モードを使用すべきかどうかを決定し得る。そのようなエッジが検出された場合、及びエッジベース予測モードが選択されているとき、ビデオエンコーダ20は、通常ならばDC予測モードの使用を示すであろう値を使用してエッジベース予測モードの使用を信号伝達し得る。即ち、現在のブロック中にエッジの存在を検出した後に、ビデオエンコーダ20は、エッジベース予測モード及び他の方向性予測モードを含む(がDCモードを除く)セットからイントラ予測モードを選択し、エッジベース予測モードが選択されたとき、DC予測モードの使用を信号伝達するかのようにエッジベース予測モードの使用を信号伝達し得る。
CUのTUの予測データを生成するためのイントラ予測又はインター予測符号化の後に、ビデオエンコーダ20は、TUの予測データと元のデータとの間の画素ごとの差を表すTUの係数を備える、残差データを計算し得る。ビデオエンコーダ20は、このようにしてCUのための残差データを含む1つ以上のTUを形成し得る。ビデオエンコーダ20は、次いで、それらのTUを変換し得る。本開示の技術によれば、ビデオエンコーダ20は、TUのデータをイントラモード予測するために使用されたイントラ予測モードに基づいてTUに適用すべき変換を選択し得る。
幾つかの例では、ビデオエンコーダ20は、イントラ予測モードの大きいセットと、イントラ予測モードのより小さいセットとの間の多対1のマッピングを与える構成データを含み得る。例えば、ビデオエンコーダ20は、HMの34個のイントラ予測モードとH.264の9つのイントラ予測モードとの間のマッピングを与える構成データを含み得る。その上、ビデオエンコーダ20は、イントラ予測モードのより小さいセットと方向性変換との間のマッピングを与える構成データを含み得る。方向性変換のセットは、イントラ予測モードのより小さいセットと方向性変換のセットとの間に1対1のマッピングがあるように、イントラ予測モードのより小さいセットと同じサイズであり得る。このようにして、ビデオエンコーダ20の構成データは、イントラ予測モードの大きいセットと方向性変換のセットとの間の間接的な多対1のマッピングを与え得る。代替的に、幾つかの例では、方向性変換の大きいセットと、ある方向性変換、又は離散コサイン変換、離散サイン変換、又は他の概念的に同様の変換など、他の設計変換の大きいセットとの1対1のマッピングがあり得る。いずれの場合も、マッピングを使用して、ビデオエンコーダ20は、TUを含むCUのために選択されたイントラ予測モードに基づいて各TUの変換を選択し得る。
幾つかの例では、特定のサイズのTUのために可能な複数の方向性変換があり得る。幾つかの例では、ビデオエンコーダ20は、CUに対応するTU4分木データ構造のルート(即ち、CU4分木中のリーフノードCU)において、選択されたイントラ予測モード(例えば、選択されたイントラ予測方向)を信号伝達し得、この選択されたイントラ予測モードはCUの全てのTUに適用され得る。ただ1つの変換が可能であるサイズをCU中の全てのTUが有する場合、ビデオエンコーダ20は、上記の例に従って進み得、LCUのための信号伝達されたイントラ予測モードからその変換が導出され得る。しかしながら、CU中の少なくとも1つのTUが、複数の変換が可能であるサイズである場合、ビデオエンコーダ20は、可能な変換のうちの1つを選択し、TU4分木のルートノードにおいてその選択された変換を信号伝達し得る。従って、ビデオエンコーダ20は、信号伝達された変換を使用して、複数の可能な変換に関連付けられたサイズを有するCU中の各TUを変換し得る。このようにして、ビデオエンコーダ20は、余分な追加の帯域幅を消費することなしに、変換を明示的に信号伝達し得る。
幾つかの例では、ビデオエンコーダ20がTUの値を予測するためにエッジベースイントラ予測モードを適用するとき、ビデオエンコーダ20は、エッジの角度に基づいてTUに適用すべき変換を選択し得る。上記で説明したように、ビデオエンコーダ20は、現在のTUと境界を共有する、隣接するTU中のエッジの検出に基づいて現在のTU中にエッジが存在すると決定し得る。本開示の技術によれば、ビデオエンコーダ20は、エッジの相対角度を計算し、エッジのその角度を使用して、イントラ予測モードの方向性変換を選択するのと同様の方法で方向性変換を選択し得る。例えば、ビデオエンコーダ20は、エッジの角度を方向性イントラ予測モードの角度と比較し、エッジの角度に最も近い角度を有する方向性イントラ予測モードを決定し、次いで、その決定されたイントラ予測モードにマッピングされた変換を使用してエッジベース予測モード予測されたTUを変換し得る。
幾つかの例では、ビデオエンコーダ20は、本開示ではカスケード変換と呼ぶ、2つ以上の変換をTUに適用するように構成され得る。例えば、第1の変換は、一般的に方向性変換とも呼ばれる、離散コサイン変換(DCT)又はカルーネンレーベ変換(KLT)に対応し得る。方向性変換が、その方向性変換にマッピングされたイントラ予測モードに基づいて選択されたとき、その変換はモード依存方向性変換(MDDT:mode-dependent directional transform)と呼ばれることがある。本開示ではまた、予測モードのために特に選択された方向性変換、離散コサイン変換、離散サイン変換、又は他の概念的に同様の変換を含み得る、イントラ予測モードに基づいて選択された変換を設計変換と呼ぶ。
第2の変換は回転変換に対応し得る。幾つかの例では、ビデオエンコーダ20は複数の回転変換を用いて構成され得る。ビデオエンコーダ20は、幾つかの例では、回転変換の各々のレート歪みコストを計算することを通して適用すべき回転変換のうちの1つを選択し得る。ビデオエンコーダ20は、第1の変換よりもより少ない数の係数に回転変換を適用するように構成され得る。本開示の技術によれば、ビデオエンコーダ20は、列変換行列と行変換行列とを含む、モード依存回転変換(MDROT:mode-dependent rotational transform)のための構成データを含み得る。イントラ予測モードは、第1の変換、例えば、MDDTのうちの1つと、回転変換のうちの1つ、例えば、MDROTのうちの1つの両方にマッピングされ得る。従って、CUのための信号伝達されたイントラ予測モードはまた、LCUのTUに適用すべき第1の変換と、TUに適用すべき第2の変換との指示を与え得る。例としてMDROTについて説明したが、第2の変換は、方向性変換など、他の変換を備え得ることを理解されたい。
TUの係数を変換することによって、ビデオエンコーダ20は変換係数の行列を生成する。この行列はTUと同じサイズを有する。概して、変換プロセスは、データを更に圧縮する量子化のための残差データを準備する。量子化は、概して、係数を表すために使用されるデータの量ができるだけ低減されるように変換係数が量子化されるプロセスを指す。量子化プロセスは、係数の一部又は全部に関連するビット深さを低減し得る。例えば、量子化中にnビット値がmビット値に切り捨てられ得、但し、nはmよりも大きい。
幾つかの例では、ビデオエンコーダ20は、エントロピー符号化され得るベクトルを生成するために、予め定義された走査順序を利用して量子化変換係数を走査し得る。例えば、従来の変換又はモード依存変換の後に、ビデオエンコーダ20は、ジグザグ走査を適用するように構成され得る。ビデオエンコーダ20はまた、イントラ予測モード、及び/又はブロックに適用される1つ以上の変換に基づいて走査を適用するように構成され得る。幾つかの例では、ビデオエンコーダ20は、TUの係数の変換及び量子化の後に適応走査を実行し得る。幾つかの例では、ビデオエンコーダ20は、可能な変換方式ごとに異なる走査方式を定義する構成データを備え得る。例えば、ビデオエンコーダ20は、方向性変換のセットと予め定義された走査パターンのセットとの間の1対1のマッピングを備える構成データを含み得る。対応する方向性変換に続いてベクトル中の変換係数の配置を最適化するために、走査パターンは、特定の方向性変換後の走査の経験的テストに基づいて定義され得る。代替的に、ビデオエンコーダ20は、イントラ予測モード(又は変換方式)がマッピングされ得る走査インデックスを定義する構成データを含み得、走査インデックスは、予め定義された走査又は適応走査のいずれかを示し得る。
従って、各方向性変換は、経験的テストに基づいて、その方向性変換のために比較的最適化された関連する走査パターンを有し得る。TUを含むCUのためのTU4分木において信号伝達されるイントラ予測モードと、方向性変換及び走査パターンとの間のマッピングがあると仮定すると、上記のように、ビデオエンコーダ20は、特定のTUのために使用される方向性変換又は走査パターンを信号伝達する必要はない。様々な例において、走査パターンは、選択された第1の変換(例えば、DCT又はMDDT)、選択された第2の変換(例えば、MDROT、DCT、又は他の2次分離可能変換)、或いはその両方の組合せに依存することができる。幾つかの例では、2つのカスケード変換のうちの一方は、特定の方向(例えば、水平又は垂直)に適用される設計変換を備え得、ビデオエンコーダ20は、構成データに基づいて、同じ方向又は直交方向に概して対応する走査順序を選択し得る。
ビデオエンコーダ20がTUにカスケード変換を適用する例では、ビデオエンコーダ20は、カスケード変換から生じる係数を適応的に走査し得る。適応走査を実行するために、ビデオエンコーダ20は、概して、変換係数の行列中の特定の位置が有効である(例えば、非ゼロである)可能性がより高いかより低いかを示す統計値を追跡し得る。ビデオエンコーダ20は、走査パターンがこれらの統計的可能性に対応するように、走査パターンを経時的に適応させ得る。即ち、適応走査パターンにより、有効である(例えば、非ゼロである)確率が相対的により高い変換係数が、有効である確率が相対的により低い変換係数の前に走査されることを保証することが試みられ得る。代替的に、ビデオエンコーダ20は、カスケード変換がマッピングされる走査インデックスを選択し得る。
ビデオエンコーダ20は、可能なカスケード変換ごとに別々に走査統計値を追跡し得る。例えば、変換行列中の特定の係数位置が異なり得る可能性は、カスケード変換中に適用される第1の変換と第2の変換とに基づく。従って、ビデオエンコーダ20は、可能なカスケード変換ごとに統計値の別々の独立したセットを追跡し得る。一例として、イントラ予測モードがMDDTとMDROT(又は他の2次分離可能変換)の両方にマッピングされると仮定すると、ビデオエンコーダ20は、TUに適用されるMDDTとMDROT(又は他の2次変換)との組合せごとに独立した統計値を追跡し得る。別の例として、ビデオエンコーダ20は、ビデオエンコーダ20がTUにDCTを適用するときのみ、カスケード変換を実行するように構成され得る。従って、ビデオエンコーダ20は、DCTの後に適用されるTUのための選択されたMDROT(又は他の2次分離可能変換)に基づいて、適応走査を実行し、適応走査を実行するための独立した統計値を追跡し得る。
幾つかの例では、適応走査を使用するか所定の走査を使用するかにかかわらず、ビデオエンコーダ20は、走査の後に配列中の係数をゼロ設定し得る。即ち、ビデオエンコーダ20は、配列の位置Nから終端までの係数の値を0に等しく設定し得る。Nの値はCUのサイズ及び/又はTUのサイズに関係し得る。幾つかの例では、ビデオエンコーダ20は、走査するより前に、行列中の変換係数、例えば、行列の左上隅にある係数以外の行列中の全ての係数をゼロ設定し得る。
1次元ベクトルを形成するために変換行列を走査した後に、ビデオエンコーダ20は、例えば、コンテンツ適応型可変長符号化(CAVLC)、コンテキスト適応型2値算術符号化(CABAC)、シンタックスベースコンテキスト適応型2値算術符号化(SBAC)、又は別のエントロピー符号化方法に従って1次元ベクトルをエントロピー符号化し得る。
CAVLCを実行するために、ビデオエンコーダ20は、送信されるべきシンボルの可変長コードを選択し得る。VLCのコードワードは、相対的により短いコードがより可能性が高いシンボルに対応し、より長いコードがより可能性が低いシンボルに対応するように構築され得る。このようにして、VLCを使用すると、例えば、送信されるべきシンボルごとに等長コードワードを使用する場合よりも、ビット節約を達成し得る。
CABACを実行するために、ビデオエンコーダ20は、送信されるべきシンボルを符号化するために、あるコンテキストに適用すべきコンテキストモデルを選択し得る。コンテキストは、例えば、隣接値が非ゼロか否かに関係し得る。ビデオエンコーダ20はまた、適応走査を実行するときに生成される有効係数フラグ及び最終係数フラグなど、シンタックス要素をエントロピー符号化し得る。本開示の技術によれば、ビデオエンコーダ20は、コンテキストモデル選択のために使用されるファクタの中でも、例えば、イントラ予測方向、シンタックス要素に対応する係数の走査位置、ブロックタイプ、及び/又は変換タイプに基づいて、これらのシンタックス要素を符号化するために使用されるコンテキストモデルを選択し得る。
ビデオデコーダ30は、ビデオエンコーダ20の方法と本質的に対称的な方法で動作し得る。例えば、ビデオデコーダ30は、符号化されたTUデータを含む、符号化されたCUを表すエントロピー符号化されたデータを受信し得る。CUがイントラ予測符号化されたと仮定すると、この受信データは、PUデータを符号化するために使用されたイントラ予測モードを示す情報を含み得る。ビデオデコーダ30は、この受信データを逆エントロピー符号化して符号化量子化係数を形成し得る。ビデオエンコーダ20が可変長コードアルゴリズムを使用してデータをエントロピー符号化したとき、ビデオデコーダ30は、受信コードワードに対応するシンボルを決定するために1つ以上のVLCテーブルを使用し得る。ビデオエンコーダ20が算術符号化アルゴリズムを使用してデータをエントロピー符号化したとき、ビデオデコーダ30は、データを符号化するためにビデオエンコーダ20によって使用されたのと同じコンテキストモデルに対応し得るデータを復号するために、コンテキストモデルを使用し得る。
ビデオデコーダ30は、次いで、ビデオエンコーダ20によって使用された走査をミラーリングする逆走査を使用して、復号された係数を逆走査し得る。係数を適応的に逆走査するために、ビデオデコーダ30は、ビデオエンコーダ20によって適応走査を実行するために使用された統計値を再生成するために、有効係数フラグ及び最終係数フラグを含むシンタックス要素を復号し得る。ビデオデコーダ30は、それによって、エントロピー復号プロセスから得られた1次元ベクトルから2次元行列を形成し得る。
次に、ビデオデコーダ30は、逆走査によって生成された2次元行列中の係数を逆量子化し得る。ビデオデコーダ30は、次いで、2次元行列に1つ以上の逆変換を適用し得る。逆変換は、ビデオエンコーダ20によって適用された変換に対応し得る。ビデオデコーダ30は、例えば、TUの係数を計算するために使用されるイントラ予測モードに基づいて、適用すべき逆変換を決定し得、特定のサイズのTUのために複数の変換が利用可能である場合は、現在復号されているTUを含むCUに対応するTU4分木のルートにおいて情報が信号伝達され得る。このようにして、ビデオデコーダ30は、TUのために信号伝達されるイントラ予測モードに基づいて、TUを再生するためにTUの逆量子化係数に適用されるべき1つ以上の逆変換を選択し得る。その上、ビデオデコーダ30は、例えば、TU4分木において、イントラ予測モードの信号伝達された指示に対応するイントラ予測モードを使用してTUの予測値を計算し得る。幾つかの例では、ビデオデコーダ30は、隣接TU中で検出されたエッジに基づいて、TU中にエッジが存在すると決定し得、DCモードが信号伝達されたときは、TUの値を予測するために、代わりにエッジベースモードを使用し得る。
ビデオエンコーダ20及びビデオデコーダ30はそれぞれ、適用可能なとき、1つ以上のマイクロプロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、ディスクリート論理回路、ソフトウェア、ハードウェア、ファームウェアなど、様々な好適なエンコーダ又はデコーダ回路のいずれか、或いはそれらの任意の組合せとして実装され得る。ビデオエンコーダ20及びビデオデコーダ30の各々は1つ以上のエンコーダ又はデコーダ中に含まれ得、そのいずれも複合ビデオエンコーダ/デコーダ(コーデック)の一部として統合され得る。ビデオエンコーダ20及び/又はビデオデコーダ30を含む装置は、集積回路、マイクロプロセッサ、及び/又はセルラー電話などのワイヤレス通信機器を備え得る。
図2は、本開示で説明するビデオデータの変換ユニットを符号化するための技術のいずれか又は全てを実装し得るビデオエンコーダ20の一例を示すブロック図である。ビデオエンコーダ20は、ビデオフレーム内のCUのイントラ符号化及びインター符号化を実行し得る。イントラ符号化は、所与のビデオフレーム内のビデオの空間的冗長性を低減又は除去するために空間的予測に依拠する。インター符号化は、ビデオシーケンスの現在のフレームと前に符号化されたフレームとの間の時間的冗長性を低減又は除去するために時間的予測に依拠する。イントラモード(Iモード)は、幾つかの空間ベースの圧縮モードのいずれかを指し、単方向予測(Pモード)又は双方向予測(Bモード)などのインターモードは、幾つかの時間ベースの圧縮モードのいずれかを指し得る。
図2に示すように、ビデオエンコーダ20は、符号化されるべきビデオフレーム内の現在のビデオブロックを受信する。図2の例では、ビデオエンコーダ20は、動き補償ユニット44と、動き推定ユニット42と、イントラ予測ユニット46と、参照フレームストア64と、加算器50と、変換ユニット52と、量子化ユニット54と、エントロピー符号化ユニット56とを含む。図2に示す変換ユニット52は、実際の変換を実行するユニットであり、CUのTUと混同されるべきでない。ビデオブロック再構成のために、ビデオエンコーダ20はまた、逆量子化ユニット58と、逆変換ユニット60と、加算器62とを含む。更に、ビデオエンコーダ20は、マッピングデータ66など、構成データを含み得る。再構成されたビデオからブロッキネスアーティファクトを除去するためにブロック境界をフィルタ処理するデブロッキングフィルタ(図2に図示せず)も含まれ得る。所望される場合、デブロッキングフィルタは、一般に、加算器62の出力をフィルタ処理するであろう。
符号化プロセス中に、ビデオエンコーダ20は符号化されるべきビデオフレーム又はスライスを受信する。フレーム又はスライスは、複数のビデオブロック、例えば、最大符号化ユニット(LCU)に分割され得る。動き推定ユニット42及び動き補償ユニット44は、時間圧縮を行うために、1つ以上の参照フレーム中の1つ以上のブロックに対して受信されたビデオブロックのインター予測符号化を実行する。イントラ予測ユニット46は、空間圧縮を行うために、符号化されるべきブロックと同じフレーム又はスライス中の1つ以上の隣接ブロックに対して受信されたビデオブロックのイントラ予測符号化を実行し得る。
モード選択ユニット40は、例えば、(歪みと呼ばれることがある)誤差結果に基づいて符号化モード、即ち、イントラ又はインターのうちの1つを選択し、残差ブロックデータを生成するために、得られたイントラ符号化ブロック又はインター符号化ブロックを加算器50に供給し、参照フレーム中で使用するための符号化ブロックを再構成するために、得られたイントラ符号化ブロック又はインター符号化ブロックを加算器62に供給し得る。幾つかのビデオフレームはIフレームに指定され得、Iフレーム中の全てのブロックはイントラ予測モードで符号化される。場合によっては、例えば、動き推定ユニット42によって実行された動き探索によって得られたブロックの予測が不十分であったとき、イントラ予測ユニット46は、Pフレーム又はBフレーム中のブロックのイントラ予測符号化を実行し得る。
動き推定ユニット42と動き補償ユニット44とは、高度に統合され得るが、概念的な目的のために別々に示してある。動き推定は、ビデオブロックの動きを推定する動きベクトルを生成するプロセスである。動きベクトルは、例えば、参照フレームの参照サンプルに対する、現在のフレーム中の予測ユニットの変位を示し得る。参照サンプルは、絶対値差分和(SAD:sum of absolute difference)、2乗差分和(SSD:sum of square difference)、又は他の差分メトリックによって決定され得る画素差分に関して、符号化されているPUを含むCUの部分にぴったり一致することがわかるブロックである。動き補償ユニット44によって実行される動き補償は、動き推定によって決定された動きベクトルに基づいて予測ユニットの値をフェッチ又は生成することを伴い得る。この場合も、幾つかの例では、動き推定ユニット42と動き補償ユニット44とは機能的に統合され得る。
動き推定ユニット42は、予測ユニットを参照フレームストア64に記憶された参照フレームの参照サンプルと比較することによってインター符号化フレームの予測ユニットの動きベクトルを計算する。幾つかの例では、ビデオエンコーダ20は、参照フレームストア64に記憶された参照フレームのサブ整数画素位置の値を計算し得る。例えば、ビデオエンコーダ20は、参照フレームの1/4画素位置、1/8画素位置、又は他の分数画素位置の値を計算し得る。従って、動き推定ユニット42は、完全画素位置と分数画素位置とに対する動き探索を実行し、分数画素精度で動きベクトルを出力し得る。動き推定ユニット42は、計算された動きベクトルをエントロピー符号化ユニット56と動き補償ユニット44とに送る。動きベクトルによって識別される参照フレームの部分は参照サンプルと呼ばれることがある。動き補償ユニット44は、例えば、PUの動きベクトルによって識別される参照サンプルを取り出すことによって、現在のCUの予測ユニットについての予測値を計算し得る。
イントラ予測ユニット46は、動き推定ユニット42と動き補償ユニット44とによって実行されるインター予測の代替として、受信ブロックをイントラ予測符号化し得る。イントラ予測ユニット46は、隣接する、前に符号化されたブロック、例えば、(ラスタ走査順序など)ブロックについての左から右、上から下への符号化順序を仮定すると、現在のブロックの上ブロック、右上ブロック、左上ブロック、又は左ブロックに対して受信ブロックを符号化し得る。イントラ予測ユニット46は多種多様なイントラ予測モードで構成され得る。例えば、イントラ予測ユニット46は、符号化されているCUのサイズに基づいて、一定数の方向性予測モード、例えば、34個の方向性予測モードで構成され得る。
イントラ予測ユニット46は、例えば、様々なイントラ予測モードの誤差値を計算し、最も低い誤差値を生じるモードを選択することによってイントラ予測モードを選択し得る。方向性予測モードは、空間的に隣接する画素の値を合成し、その合成された値をPU中の1つ以上の画素位置に適用するための機能を含み得る。PU中の全ての画素位置の値が計算されると、イントラ予測ユニット46は、PUと符号化されるべき受信ブロックとの間の画素差分に基づいて予測モードの誤差値を計算し得る。イントラ予測ユニット46は、許容できる誤差値を生じるイントラ予測モードが発見されるまでイントラ予測モードをテストし続け得る。イントラ予測ユニット46は、次いで、PUを加算器50に送り得る。
本開示の技術によれば、イントラ予測ユニット46は、エッジベース予測モードを使用してエッジを含むブロックを予測するように構成され得る。特に、イントラ予測ユニット46は、隣接ブロックのうちの少なくとも1つの中にエッジが検出されるかどうか、及びそのエッジが前に符号化されたブロックと現在のブロックとの間の境界を横断するかどうかを決定するために、隣接する、前に符号化されたブロックの画素を分析し得る。エッジを検出するために、イントラ予測ユニット46は、隣接する、前に符号化されたブロック中の画素の勾配を、水平方向と垂直方向の両方で計算し得る。隣接ブロックのうちの1つの中の複数の画素の勾配が、隣接ブロックと現在のブロックとの間の境界を横断する共通のラインに対して比較的直角であるとき、イントラ予測ユニット46は、現在のブロックがエッジ(特に、上記で説明したように検出されたラインに沿ったエッジ)をも含むと決定し得る。このコンテキストにおける「エッジ」という用語は、画素のブロック内の比較的まっすぐなラインに沿った高周波変動を指し、別々に符号化されたブロック間の境界又は境界線を指すものではないことを理解されたい。
従って、ブロック中にエッジが検出されたとき、イントラ予測ユニット46は、エッジベース予測モードを使用してブロックを予測すべきか方向性イントラ予測モードを使用してブロックを予測すべきかを決定し得る。イントラ予測ユニット46がエッジベース予測モードを選択したとき、イントラ予測ユニット46は、イントラ予測モードを信号伝達する必要がある値の数を増加させるのを回避するために、ブロックを予測するためにDC予測モードが使用されたことを信号伝達し得る。従って、図3に関してより詳細に説明するように、ビデオデコーダ30などのビデオデコーダは、ブロック中にエッジが存在するとビデオデコーダが決定したとき、ブロックを予測するためにDC予測モードが使用されたという指示(例えば、信号又はシンタックス情報)をエッジベース予測モードの指示として解釈するように構成され得る。
ビデオエンコーダ20は、符号化されている元のビデオブロックから、動き補償ユニット44又はイントラ予測ユニット46によって計算された予測データを減算することによって残差ブロックを形成する。加算器50は、この減算演算を実行する1つ以上の構成要素を表す。残差ブロックは値の2次元行列に対応し得、残差ブロック中の値の数は、残差ブロックに対応するPU中の画素の数と同じである。残差ブロック中の値は、PU中の同一位置配置画素と、符号化されるべき元のブロック中の同一位置配置画素との間の差分に対応し得る。
変換ユニット52は、残差ブロックから1つ以上の変換ユニット(TU)を形成し得る。変換ユニット52は、離散コサイン変換(DCT)、方向性変換、又は概念的に同様の変換などの変換をTUに適用して、変換係数を備えるビデオブロックを生成する。本開示の技術によれば、イントラ予測ユニット46は、例えば、TUに対応するTU4分木のノードにおけるモードを信号伝達することによって、TUのために選択されたイントラ予測モードの指示を変換ユニット52に送り得る。従って、変換ユニット52は、イントラ予測ユニット46から受信されたイントラ予測モードの指示に基づいてTUに適用すべき変換を選択し得る。
幾つかの例では、変換ユニット52は、TUを予測するために使用されるイントラ予測モードに基づいてTUに適用すべき方向性変換などの変換を選択するように構成される。即ち、マッピングデータ66は、TUを予測するために使用されるイントラ予測モードに基づいて適用されるべき変換を記述する構成データを記憶し得る。このようにして、変換ユニット52は、残差ブロックを計算するために使用されるイントラ予測モードにマッピングされた変換を使用して残差ブロックを変換し得る。同様に、マッピングデータ66は、ブロックの量子化変換係数に適用されるべき走査を選択するために使用され得る特定の走査インデックスに、イントラ予測モード、変換、又はその両方をマッピングし得る。
幾つかの例では、マッピングデータ66は、イントラ予測モードの大きいセットと、イントラ予測モードのより小さいセットとの間の多対1のマッピングを含む構成データを記憶し得る。より小さいセットはイントラ予測モードのサブセットを備え得る。幾つかの例では、大きいセットは、HEVCテストモデルによってサポートされるイントラ予測モードを備え得、より小さいセットは、H.264によってサポートされるイントラ予測モードを備え得る。マッピングデータ66はまた、イントラ予測モードのより小さいセットと変換との間の、1対1のマッピングなどのマッピングを含み得る。イントラ予測モードのより小さいセットは、対応するイントラ予測モードのために経験的に最良の変換結果を与えるように設計された方向性変換に1対1でマッピングされ得る。
幾つかの例では、大きいセットのイントラ予測モードと、より小さいセットのイントラ予測モードは、それぞれの予測角度に関連付けられ得る。予測モードの大きいセットとより小さいセットとの間のマッピングは、従って、大きいセットのイントラ予測モードの予測角度に近い、より小さいセット中のイントラ予測モードのうちの1つの予測角度を選択することによって決定され得る。αが、大きいセットのイントラ予測モードのうちの1つの予測角度を表すとし、βiが、より小さいセットのi番目のイントラ予測モードの予測角度を表すとする。イントラ予測モードをより小さいセットのイントラ予測モードのうちの1つにマッピングするために、ビデオエンコーダ20は、αが与えられれば、以下の式1が満たされるようなβiを見つけ得る。
Figure 2015039191
変換ユニット52は、イントラ予測ユニット46から選択されたイントラ予測モードの指示を受信し、次いで、マッピングデータ66を照会して、加算器50から受信された残差値を含むTUを変換するために使用すべき変換を決定し得る。TUが、複数の可能な変換が可能であるサイズである場合、ビデオエンコーダ20の変換ユニット52又は別のユニットは、変換ユニット52が同じCU中のそのサイズの全てのTUに同じ変換を適用し得るように、そのサイズのTUのための変換を選択し得る。幾つかの例では、変換ユニット52は更に、第1の変換からカスケードされる回転変換を実行するように構成され得る。即ち、第1の変換の後に、変換ユニット52は回転変換を選択し、その回転変換を変換係数に適用し得る。変換ユニット52は、例えば、現在のTUのPUを予測するために使用されるイントラ予測モードに基づいて回転変換を選択し得る。
上記で説明したように、幾つかの例では、イントラ予測ユニット46は、ブロックがエッジを含むかどうか(即ち、ブロック内の画素間の高周波変動)を決定するように構成される。エッジが検出されたとき、イントラ予測ユニット46は、エッジベース予測モード又は従来の方向性イントラ予測モードのいずれかを選択し得る。即ち、イントラ予測ユニット46は、エッジベース予測モードの代わりにDC予測モードを使用し得る。幾つかの例では、ブロックがエッジベース予測モードを使用して予測されたとき、変換ユニット52は、エッジの角度に極めて近い角度を有するイントラ予測モードの方向にマッピングされた(方向性変換などの)変換を選択する。即ち、変換ユニット52は、幾つかの例では、ブロック内のエッジの角度を決定し、エッジの角度に極めて近い(例えば、それに対して最小距離を有する)角度を有する方向性イントラ予測モードにマッピングされた変換を選択する。幾つかの例では、変換ユニット52は、ブロック中で検出されたエッジの角度に極めて近い角度を有する方向性イントラ予測モードにマッピングされた変換を選択するように構成される。
ビデオエンコーダ20はまた、通常ならばDC予測モードの使用を信号伝達するために使用されるであろう値を使用してエッジベース予測モードの使用を信号伝達し得る。従って、DC予測モードが信号伝達されるが、ブロックを予測するためにエッジベース予測モードが使用され得る。同様に、ブロックを予測するためにエッジベース予測モードが使用され得るが、変換ユニット52は、ブロック中で検出されたエッジの角度に近い角度を有するイントラ予測モードにマッピングされた変換を使用し得る。
マッピングデータ66は、DC予測モードが信号伝達されるブロック中でエッジが検出されたとき、変換ユニット52が、そのエッジの角度に近い角度を有する変換を選択すべきことを指示する構成データを提供し得る。その上、上記で説明したように、マッピングデータ66は、イントラ予測モードからのマッピングと、方向性変換に対する(そのイントラ予測モードを定義し得る)そのイントラ予測モードの角度とを含み得る。従って、変換ユニット52は、マッピングデータ66を照会して、ブロック中のエッジの角度に極めて近い角度を有するイントラ予測モードを決定し、その決定されたイントラ予測モードにマッピングされた変換を決定し得る。
このように、ビデオエンコーダ20は、イントラ予測モードを使用して形成された予測ブロックに基づいてビデオデータのブロックの残差ブロックを計算することと、イントラ予測モードにマッピングされた変換を使用してその残差ブロックを変換することとを行うように構成されたビデオエンコーダの一例である。ビデオエンコーダ20はまた、ビデオデータのブロックのためのイントラ予測モードの第1のセット中の第1のイントラ予測モードの指示を受信することと、イントラ予測モードのより小さいセットから、第1のイントラ予測モードがマッピングされる第2のイントラ予測モードを決定することと、第2のイントラ予測モードがマッピングされる方向性変換を決定することと、ブロックの残差データに方向性変換を適用することとを行うように構成されたビデオエンコーダの一例である。
更に、ビデオエンコーダ20はまた、ビデオデータのブロックを符号化するために使用すべきイントラ予測モードを選択することと、複数の変換が可能であるサイズのサブブロックをブロックが含むかどうかを、サブブロックのサイズと選択されたイントラ予測モードとに基づいて決定することと、サブブロックのサイズと選択されたイントラ予測モードとに基づいて、複数の変換が可能であるサイズのサブブロックをブロックが含むとき、複数の可能な変換のうちの1つを選択することと、複数の可能な変換のうちの選択された1つを使用してサブブロックを変換することと、ブロックのサイズについての複数の可能な変換のうちの選択された1つの指示を与えることとを行うように構成されたビデオエンコーダの一例である。
その上、ビデオエンコーダ20は、イントラ予測符号化されるべきブロックがブロック内にエッジを含んでいると決定することと、エッジ指向イントラ予測モードを使用して計算された予測値に基づいてブロックの残差ブロックを計算することと、エッジの角度に近い角度を有する方向性イントラ予測モードにマッピングされた方向性変換を使用して残差ブロックを変換することと、変換された残差ブロックを表す情報と、ブロックがDCイントラ予測モードを使用して予測されたことを示す情報とを出力することとを行うように構成されたビデオエンコーダの一例である。
変換ユニット52は、得られた変換係数を量子化ユニット54に送り得る。量子化ユニット54は、次いで、その変換係数を量子化し得る。幾つかの例では、量子化ユニット54は、次いで、量子化された変換係数を含む行列の走査を実行し得る。代替的に、エントロピー符号化ユニット56が走査を実行し得る。本開示では、エントロピー符号化ユニット56が走査を実行するものとして説明するが、他の例では、量子化ユニット54など、他の処理ユニットが走査を実行し得ることを理解されたい。
幾つかの例では、エントロピー符号化ユニット56は、イントラ予測ユニット46又は変換ユニット52から選択されたイントラ予測モードの指示を受信し得る。エントロピー符号化ユニット56は、2次元行列を1次元ベクトルに変換するために、変換係数の行列に適用すべき走査を選択し得る。幾つかの例では、エントロピー符号化ユニット56は走査の所定のセットから走査を選択する。マッピングデータ66は、イントラ予測モードのより小さいセットを走査の所定のセットにマッピングし得る。エントロピー符号化ユニット56は、例えば、ブロックタイプ(インターもしくはイントラ)、イントラ予測モード(イントラ符号化ブロックを仮定する)、及び/又はTUに適用される変換のタイプ(例えば、DCT又はKLT)など、現在のTUの様々な特性に基づいて走査を選択し得る。
幾つかの例では、エントロピー符号化ユニット56は適応走査を実行するように構成され得る。初めに(例えば、現在のフレームの第1のTUについて)、エントロピー符号化ユニット56は所定の走査パターンを使用し得る。時間とともに、エントロピー符号化ユニット56は走査パターンを更新して適応走査を実行し得る。概して、適応走査の目的は、特定の変換係数が非ゼロになる確率を決定することである。その場合、走査順序は、概して、非ゼロである確率が最も高い係数から非ゼロである確率が最も低い係数に進む。エントロピー符号化ユニット56は、様々な統計値及び計算を使用して経時的にこれらの確率を決定し得る。その上、エントロピー符号化ユニット56は、イントラ予測モード、変換、カスケード変換、又はそれらの任意の組合せごとに別々の統計値を追跡し得る。
エントロピー符号化ユニット56は、変換係数が非ゼロである確率を決定し、適応走査順序を決定するために、高ダイナミックレンジテーブルと動的更新走査テーブルとを使用し得る。N×N TUを仮定すると、これらのテーブルの各々は、TUの変換係数に対応する値をもつN×Nテーブルであり得る。高ダイナミックレンジテーブルは、各変換係数が非ゼロである確率を与える固定の予め決定されたテーブルであり得る。このテーブルはトレーニングデータのセットに基づいて計算され得る。その上、このテーブルは、適応走査順序の開始点を与えるために使用され得る。
エントロピー符号化ユニット56は、変換係数について最近決定された統計値を反映するために、動的更新走査テーブルを経時的に更新し得る。エントロピー符号化ユニット56は、N×N変換行列中の特定の位置における各係数が非ゼロである回数のカウントを保持し得る。即ち、現在のフレームのTUごとに、エントロピー符号化ユニット56は、現在の変換ブロック中の非ゼロ係数に対応する動的更新走査テーブル中の、特に、現在のCUのためのイントラ予測モード、変換、及び/又はカスケード変換に関連付けられた動的更新走査テーブル中の値を増分し得る。例えば、行2と列1とにおける変換係数が非ゼロである場合、エントロピー符号化ユニット56は、行2と列1とにおける動的更新走査テーブル中の値に1を加算し得る。エントロピー符号化ユニット56はまた、動的更新走査テーブル中の値が最大値を超えるのを防ぐために、それらの値を周期的に正規化し得る。
現在のフレームの第1のTUに対して適応走査を実行するために、エントロピー符号化ユニット56は、高ダイナミックレンジテーブルのみに基づいて走査し得る。エントロピー符号化ユニット56はまた、例えば、動的更新走査テーブル中の全ての値を0に設定することによって、動的更新走査テーブルを初期化し得る。変換ブロック中の非ゼロ係数ごとに、エントロピー符号化ユニット56は、現在のTUのためのイントラ予測モード及び変換又はカスケード変換に関連付けられた動的更新走査テーブル中の同一位置配置の値に1を加算し得る。同じイントラ予測モード及び変換又はカスケード変換を使用する後続のTUについて、エントロピー符号化ユニット56は、最初に動的更新走査テーブルを参照して変換係数のどれが非ゼロである可能性が最も高いかを決定し、次いで、係数が非ゼロである可能性の降順に走査し得る。場合によっては、動的更新走査テーブル中の2つ以上の値が等しくなり得る。そのような場合、エントロピー符号化ユニット56は、次にどの係数を走査すべきかを決定するために高ダイナミックレンジテーブルを参照する。このようにして、エントロピー符号化ユニット56は、高ダイナミックレンジテーブルと動的更新走査テーブルとの組合せに基づいてイントラ予測モード、変換、又はカスケード変換(或いはそれらの任意の組合せ)ごとに適応走査を実行し得る。
変換係数の2次元行列を走査することによって、エントロピー符号化ユニット56は、変換係数を含む1次元配列を生成し得る。エントロピー符号化ユニット56は、次いで、TUを走査して配列を形成し、その走査に続いて、ビットレートを更に低減するために配列中の変換係数を量子化し得る。量子化プロセスは、係数の一部又は全部に関連するビット深さを低減し得る。量子化の程度は、量子化パラメータを調整することによって変更され得る。
エントロピー符号化ユニット56はまた、適応走査より前に又は適応走査中に、行列の係数のシンタックス要素をエントロピー符号化し得る。シンタックス要素は、特定の係数が有効である(例えば、非ゼロである)かどうかを示す有効係数フラグと、特定の係数が適応走査中に走査される最終係数であるかどうかを示す最終係数フラグとを含み得る。ビデオデコーダは、ビデオデコーダがエントロピー符号化ユニット56によって符号化された係数を逆走査することができるように、これらのシンタックス要素を使用して動的更新走査テーブルを再構成し得る。
シンタックス要素をエントロピー符号化するために、エントロピー符号化ユニット56は、CABACを実行し、例えば、前に走査されたN個の係数の中の有効係数の数に基づいてコンテキストモデルを選択し得、但し、Nは、走査されているブロックのサイズに関係し得る整数値である。エントロピー符号化ユニット56はまた、変換係数のブロックに変換された残差データを計算するために使用される予測モードと、その残差データを変換係数のブロックに変換するために使用される変換のタイプとに基づいてコンテキストモデルを選択し得る。対応する予測データがイントラ予測モードを使用して予測されたとき、エントロピー符号化ユニット56は更に、イントラ予測モードの方向に基づいてコンテキストモデルの選択を行い得る。
このように、ビデオエンコーダ20は、変換係数の中間の2次元ブロックを生成するために第1の変換を使用してビデオデータのブロックの残差データを変換することと、変換係数の2次元ブロックを生成するために回転変換を使用して変換係数の中間の2次元ブロックを変換することと、第1の変換及び回転変換のうちの少なくとも1つに関連付けられた統計値のセットを選択することであって、統計値のセットは、変換係数の2次元ブロック中の位置が非ゼロになる可能性を与える、選択することと、統計値の選択されたセットに基づいて変換係数の2次元ブロックを適応的に走査することとを行うように構成されたビデオエンコーダの一例を表す。
ビデオエンコーダ20はまた、変換係数の1次元ベクトルを生成するために変換係数の2次元ブロックを走査することと、1次元ベクトル中の変換係数が有効であるかどうかを示す値を決定することと、少なくとも、上記値のうちの少なくとも1つの前に符号化された上記値の所定数中の有効係数の割合に基づいて選択されたコンテキストモデルを使用して上記値のうちの少なくとも1つをエントロピー符号化することとを行うように構成されたビデオエンコーダの一例を表す。
幾つかの例では、変換ユニット52は、幾つかの変換係数(即ち、幾つかの位置における変換係数)をゼロ設定するように構成され得る。例えば、変換ユニット52は、変換後のTUの左上象限の外部にある全ての変換係数をゼロ設定するように構成され得る。別の例として、エントロピー符号化ユニット56は、配列中のある位置の後に来る配列中の変換係数をゼロ設定するように構成され得る。幾つかの例では、エントロピー符号化ユニット56は2次元行列を量子化し得、エントロピー符号化ユニット56は走査を実行し得る。いずれの場合も、ビデオエンコーダ20は、例えば、走査の前又は後に、変換係数のある部分をゼロ設定するように構成され得る。「ゼロ設定する」という句は、係数の値を0に等しく設定することを意味するように使用されるが、必ずしも係数をスキップ又は廃棄するとは限らない。
量子化の後に、エントロピー符号化ユニット56は量子化変換係数をエントロピー符号化する。例えば、エントロピー符号化ユニット56は、コンテンツ適応型可変長符号化(CAVLC)、コンテキスト適応型2値算術符号化(CABAC)、又は別のエントロピー符号化技術を実行し得る。エントロピー符号化ユニット56によるエントロピー符号化の後に、符号化されたビデオは、別の機器に送信されるか、或いは後で送信又は取り出すためにアーカイブされ得る。コンテキスト適応型2値算術符号化の場合、コンテキストは隣接ブロックに基づき得る。
場合によっては、エントロピー符号化ユニット56又はビデオエンコーダ20の別のユニットは、エントロピー符号化に加えて他の符号化機能を実行するように構成され得る。例えば、エントロピー符号化ユニット56はブロックの符号化ブロックパターン(CBP:coded block pattern)値を決定するように構成され得る。また、場合によっては、エントロピー符号化ユニット56はブロック中の係数のランレングス符号化を実行し得る。
逆量子化ユニット58及び逆変換ユニット60は、それぞれ逆量子化及び逆変換を適用して、例えば参照ブロックとして後で使用するために、画素領域において残差ブロックを再構成する。動き補償ユニット44は、残差ブロックを参照フレームストア(参照フレーム記憶装置)64のフレームのうちの1つの予測ブロックに加算することによって参照ブロックを計算し得る。動き補償ユニット44はまた、再構成された残差ブロックに1つ以上の補間フィルタを適用して、動き推定において使用するサブ整数画素値を計算し得る。加算器62は、再構成された残差ブロックを、動き補償ユニット44によって生成された動き補償予測ブロックに加算して、参照フレームストア64に記憶するための再構成されたビデオブロックを生成する。再構成されたビデオブロックは、後続のビデオフレーム中のブロックをインター符号化するために動き推定ユニット42及び動き補償ユニット44によって参照ブロックとして使用され得る。
図3は、符号化されたビデオシーケンスを復号するビデオデコーダ30の一例を示すブロック図である。図3の例では、ビデオデコーダ30は、エントロピー復号ユニット70と、動き補償ユニット72と、イントラ予測ユニット74と、逆量子化ユニット76と、逆変換ユニット78と、参照フレームストア82と、加算器80とを含む。ビデオデコーダ30は、幾つかの例では、ビデオエンコーダ20(図2)に関して説明した符号化パスとは概して逆の復号パスを実行し得る。動き補償ユニット72は、エントロピー復号ユニット70から受信された動きベクトルに基づいて予測データを生成し得る。イントラ予測ユニット74は、信号伝達されたイントラ予測モードと、現在のフレームの前に復号されたブロックからのデータとに基づいて現在のフレームの現在のブロックについての予測データを生成し得る。
幾つかの例では、エントロピー復号ユニット70又は逆量子化ユニット76は、ビデオエンコーダ20によって使用された走査をミラーリングする走査を使用して受信値を走査し得る。図3の例では、ビデオデコーダ30は、マッピングデータ66のデータと同様の又は同じデータを含み得る、マッピングデータ84を含む。従って、ビデオデコーダ30は、例えば、現在のブロックについての(例えば、現在のブロックを含むLCUのための4分木のルートノードにおいて提示される)イントラ符号化モードの指示、現在のブロックに対する変換、現在のブロックに対するカスケード変換、又は走査を選択するためにビデオエンコーダ20によって使用される他のファクタに基づいて走査を選択し得る。同様に、ビデオデコーダ30は、適応走査を実行するか、又はこれらのファクタに基づいて所定の走査を選択するように構成され得る。このようにして、ビデオデコーダ30は、係数の受信された1次元配列から量子化変換係数の2次元行列を生成し得る。
逆量子化ユニット76は、ビットストリーム中で供給され、エントロピー復号ユニット70によって復号された量子化変換係数を逆量子化(inverse quantize)、即ち、逆量子化(de-quantize)する。逆量子化プロセスは、例えば、H.264復号規格又はHEVCによって定義された従来のプロセスを含み得る。逆量子化プロセスは、量子化の程度を決定し、同様に、適用されるべき逆量子化の程度を決定するための、CUについてビデオエンコーダ20によって計算される量子化パラメータQPYの使用を含み得る。
逆変換ユニット58は、逆変換、例えば、逆DCT、逆整数変換、逆回転変換、又は逆方向性変換を適用する。幾つかの例では、逆変換ユニット78は、受信されたイントラ予測符号化ブロックについて信号伝達されるイントラ予測モードに基づいて逆変換を決定し得る。イントラ予測モードに基づいて、ブロックが、2つ以上の変換が可能であるサイズである場合、逆変換ユニット78は、現在のブロックを含むLCUのための4分木のルートノードにおける信号伝達された変換に基づいて現在のブロックに適用すべき変換を決定し得る。幾つかの例では、逆変換ユニット78は、カスケード逆変換を適用し得、例えば、最初に逆回転変換を適用し、続いて逆方向性変換を適用し得る。
例えば、信号伝達されたイントラ予測モードがDC予測モードである、幾つかの例では、逆変換ユニット58(又はビデオデコーダ30の別のユニット)は、現在のブロック中にエッジが存在するかどうかを決定し得る。逆変換ユニット58は、図2のビデオエンコーダ20に関して説明した技術に実質的に対応する技術を使用してエッジが存在するかどうかを決定し得る。現在のブロック中にエッジが存在する場合、逆変換ユニット78は、ブロック内のそのエッジの角度を決定し、そのエッジの角度に近い角度を有するイントラ予測モードにマッピングされた逆変換を選択し得る。
上記で説明したように、マッピングデータ84は、イントラ予測モードの角度、及びイントラ予測モードと逆変換との間のマッピングを与え得る。従って、DC予測モードが信号伝達されたとき、逆変換ユニット78は、マッピングデータ84を照会して、エッジの角度に極めて近い角度を有するイントラ予測モードにマッピングされた逆変換を決定し得る。更に、ブロック中にエッジが検出されたとき、イントラ予測ユニット74は、ブロックを予測するために、ブロックについて信号伝達されたDC予測モードではなく、エッジベース予測モードを適用し得る。マッピングデータ84はまた、受信された量子化変換係数の逆走査を選択するために、イントラ予測モードからのマッピング、回転変換などの2次変換、又はそれらの組合せを走査インデックスに与え得る。
動き補償ユニット72は動き補償ブロックを生成し、場合によっては、補間フィルタに基づいて補間を実行する。サブ画素精度をもつ動き推定に使用されるべき補間フィルタの識別子は、シンタックス要素中に含まれ得る。動き補償ユニット72は、ビデオブロックの符号化中にビデオエンコーダ20によって使用された補間フィルタを使用して、参照ブロックのサブ整数画素の補間値を計算し得る。動き補償ユニット72は、受信されたシンタックス情報に従って、ビデオエンコーダ20によって使用された補間フィルタを決定し、その補間フィルタを使用して予測ブロックを生成し得る。
動き補償ユニット72及びイントラ予測ユニット74は、(例えば、4分木によって与えられる)シンタックス情報の一部を使用して、符号化ビデオシーケンスの(1つ以上の)フレームを符号化するために使用されるLCUのサイズと、符号化ビデオシーケンスのフレームの各CUがどのように分割されるか(及び、同様に、サブCUがどのように分割されるか)を記述する分割情報と、各分割がどのように符号化されるかを示すモード(例えば、イントラ予測又はインター予測、及びイントラ予測の場合はイントラ予測符号化モード)と、各インター符号化PUについての1つ以上の参照フレーム(及び/又はそれらの参照フレームの識別子を含んでいる参照リスト)と、符号化ビデオシーケンスを復号するための他の情報とを決定する。
加算器80は、残差ブロックを、動き補償ユニット72又はイントラ予測ユニット74によって生成される対応する予測ブロックと合成して、復号ブロックを形成する。所望される場合、ブロッキネスアーティファクトを除去するために、デブロッキングフィルタを適用して復号ブロックをフィルタ処理することもある。復号されたビデオブロックは、次いで、参照フレームストア82に記憶され、参照フレームストア82は、参照ブロックを後続の動き補償に供給し、また、(図1の表示装置32などの)表示装置上での提示のために復号されたビデオを生成する。
このように、ビデオデコーダ30は、ビデオデータのブロックを予測するために使用されるべきイントラ予測モードを決定することと、イントラ予測モードにマッピングされた逆変換を使用してブロックの変換された残差データを逆変換することとを行うように構成されたビデオデコーダの一例である。ビデオデコーダ30はまた、符号化されたビデオデータのブロックのためのイントラ予測モードの第1のセット中の第1のイントラ予測モードの指示を受信することと、イントラ予測モードのより小さいセットから、第1のイントラ予測モードがマッピングされる第2のイントラ予測モードを決定することと、第2のイントラ予測モードがマッピングされる逆方向性変換を決定することと、ブロックの変換された残差データに逆方向性変換を適用することとを行うように構成されたビデオデコーダの一例である。
ビデオデコーダ30はまた、ビデオデータのブロックを復号するために使用すべきイントラ予測モードの第1の指示を受信することと、複数の変換が可能であるサイズのサブブロックをブロックが含むかどうかを、サブブロックのサイズと指示されたイントラ予測モードとに基づいて決定することと、サブブロックのサイズと指示されたイントラ予測モードとに基づいて、複数の逆変換が可能であるサイズのサブブロックをブロックが含むとき、複数の可能な逆変換のうちの1つの第2の指示を受信することと、複数の可能な逆変換のうちの指示された1つを使用してサブブロックを逆変換することとを行うように構成されたビデオデコーダの一例である。
ビデオデコーダ30はまた、符号化された変換係数の受信された1次元ベクトル中の符号化された変換係数が有効であるかどうかを示す値を受信することと、少なくとも、上記値のうちの少なくとも1つの前に復号された上記値の所定数中の有効係数の割合に基づいて選択されたコンテキストモデルを使用して上記値のうちの少なくとも1つをエントロピー復号することと、変換係数の2次元ブロックを生成するために1次元ベクトルを逆走査することとを行うように構成されたビデオデコーダの一例である。
ビデオデコーダ30はまた、変換係数の2次元ブロックを生成するために第1の変換と回転変換の両方を使用してビデオデータのブロックの残差データが変換されたという指示を受信することと、第1の変換及び回転変換のうちの少なくとも1つに関連付けられ、変換係数の2次元ブロック中の位置が非ゼロになる可能性を与える統計値のセットを選択することと、ブロックのための変換係数の2次元行列を生成するために、統計値の選択されたセットに基づいてブロックの残差データの符号化バージョンを含む受信された1次元ベクトルを適応的に逆走査することとを行うように構成されたビデオデコーダの一例である。
ビデオデコーダ30は更に、ビデオデータのブロックのイントラ予測モードがDCイントラ予測モードであることを示す情報を受信することと、ブロックについてのDCイントラ予測モードの指示に基づいてビデオデータのブロック中のエッジの角度を決定することと、そのエッジの角度に近い角度を有する方向性イントラ予測モードにマッピングされた方向性逆変換を使用してブロックを逆変換することと、逆変換されたブロックを復号することとを行うように構成されたビデオデコーダの一例である。
図4は、イントラ予測モードに関連付けられた方向の例示的なセットを示す図式104を示す概念図である。図4の例では、ブロック106は、選択されたイントラ予測モードに応じて隣接画素100A〜100AG(隣接画素100)から予測され得る。矢印102A〜102AG(矢印102)は、様々なイントラ予測モードに関連付けられた方向又は角度を表す。図4の例は、HMによって与えられるイントラ予測モードを表す。但し、他の例では、より多い又はより少ないイントラ予測モードが与えられ得る。ブロック106の例は8×8画素ブロックであるが、概して、ブロックは、任意の数の画素、例えば、4×4、8×8、16×16、32×32、64×64、128×128などを有し得る。HMは正方形のPUを規定しているが、本開示の技術は、他のブロックサイズ、例えば、N×Mブロックにも適用され得、Nは必ずしもMに等しいとは限らない。
イントラ予測モードは、例えば、ブロック106の垂直側に直角な水平軸に対する、予測方向の角度に従って定義され得る。従って、矢印102の各々は、対応するイントラ予測モードの予測方向の特定の角度を表し得る。幾つかの例では、イントラ予測方向モードは、対応するイントラ予測モードがコンテキスト画素外挿のために使用する方向を表し得る、整数ペア(dx,dy)によって定義され得る。即ち、イントラ予測モードの角度はdy/dxとして計算され得る。言い換えれば、その角度は水平オフセットdxと垂直オフセットdyとによって表され得る。ブロック106中の位置(x,y)における画素の値は、dy/dxの角度で位置(x,y)を通るラインが通る、隣接画素100のうちの1つから決定され得る。
幾つかの例では、矢印102によって表される角度に対応するイントラ予測モードの各々は特定の変換にマッピングされ得る。幾つかの例では、同じ変換に2つ以上のイントラ予測モードがマッピングされ得る。変換は、方向性変換、KLT、回転変換、離散コサイン変換、離散サイン変換、フーリエ変換、又は特定のイントラ予測モードのために特に選択された他の変換に対応し得る。そのような変換は、変換が特定のイントラ予測モードのために選択されたという点で、一般に「設計」変換と呼ばれることがある。
上記で説明したように、幾つかの例では、イントラ予測モードのセットは、多対1の対応によって、イントラ予測モードのより小さいセット、例えば、サブセットにマッピングされ得る。言い換えれば、モードの大きいセット中のイントラ予測モードの角度は、モードのより小さいセット中のイントラ予測モードの角度にマッピングされ得る。幾つかの例では、マッピングは数式を使用して実現され得る。例えば、この式は、ここではαと呼ぶ、実際の予測方向角度と、ここではβiと呼ぶ、イントラ予測モードのより小さいセットの予測方向角度との間の絶対予測角度差を最小限に抑えるマッピングを与え得る。予測方向角度αを仮定すれば、この式は、上記の式(1)が満たされるようなβiを与え得る。便宜のために式(1)を以下に再掲する。
Figure 2015039191
一例では、イントラ予測モードのより小さいセットは、矢印102E、102I、102M、102Q、102U、102Y、102AC、及び102AGと同じである角度を有し得る。従って、矢印102の角度の各々は、矢印102E、102I、102M、102Q、102U、102Y、102AC、及び102AGの角度のうちの1つにマッピングされ得る。一例として、矢印102A〜102Eの角度は矢印102Eの角度にマッピングされ得、矢印102F〜102Iの角度は矢印102Iの角度にマッピングされ得、矢印102J〜102Mの角度は矢印102Mの角度にマッピングされ得、矢印102N〜102Qの角度は矢印102Qの角度にマッピングされ得、矢印102R〜102Uの角度は矢印102Uの角度にマッピングされ得、矢印102V〜102Yの角度は矢印102Yの角度にマッピングされ得、矢印102Z〜102ACの角度は矢印102ACの角度にマッピングされ得、矢印102AD〜102AGの角度は矢印102AGの角度にマッピングされ得る。
他のマッピングも与えられ得る。幾つかの例では、ビデオエンコーダ20及びビデオデコーダ30は多種多様なマッピングを用いて構成され得、ビデオエンコーダ20は、例えば、ヘッダデータ、シーケンスパラメータセット(SPS:sequence parameter set)、又は他の信号伝達されるデータ中で、特定のビットストリームのために使用されるマッピングを示す情報を提供し得る。
上記で説明したように、幾つかの例では、(ビデオエンコーダ20又はビデオデコーダ30などの)ビデオ符号化機器は、ブロック中にエッジが存在するかどうかを決定するように構成され得る。例えば、ビデオ符号化機器は、1つ以上の隣接ブロックの画素の分析に基づいてブロック106中にエッジが存在するかどうかを決定するように構成され得、隣接ブロックは、隣接画素100のうちの1つ以上を含み得る。概して、隣接する、前に符号化されたブロックは、ブロック106と境界を共有し得、その境界は隣接画素100のうちの1つ以上に対応し得る。例えば、ブロック106の左に隣接するブロックは、その左に隣接するブロックとブロック106との間の境界を画定する、隣接画素100I〜100Pを含み得る。
ビデオ符号化機器は、隣接する、前に符号化されたブロック中にエッジが存在するかどうかを決定するために、その隣接する、前に符号化されたブロック中の画素の勾配を計算するように構成され得る。ビデオ符号化機器は更に、隣接する、前に符号化されたブロックと、ブロック106など、現在のブロックとの間の境界をエッジが横断する(即ち、その境界と交差する)かどうかを決定し得る。上記で説明したブロック106の左に隣接するブロックの例に関して、ビデオ符号化機器は、左に隣接するブロック中の画素の勾配が、その左に隣接するブロックとブロック106との間の境界と交差するエッジの存在を示すかどうかを決定し得、この例では、境界は画素100I〜100Pによって画定される。左に隣接するブロック中の画素の勾配がエッジの存在を示し、画素100I〜100Pによって画定された境界をそのエッジが横断するとビデオ符号化機器が決定したとき、ビデオ符号化機器は、エッジがブロック106中に続いており、従って、ブロック106はエッジを含むと決定し得る。
幾つかの例では、ブロック106のための信号伝達されたイントラ予測モードがDC予測モードであり、ブロック106がエッジを含むとビデオ符号化機器が決定したとき、ビデオ符号化機器はエッジベースイントラ予測モードを使用してブロック106を予測し得る。その上、ビデオ符号化機器はエッジの角度を決定し得る。ビデオ符号化機器は、次いで、そのエッジの角度に最も極めて近い、矢印102によって全体的に示される予測モードの角度を決定し得る。ビデオ符号化機器は、次いで、エッジの角度に最も極めて近い角度を有するイントラ予測モードにマッピングされた(復号時に逆変換に対応し得る)変換を選択し、その選択された変換をブロック106の残差データに適用し得る。符号化プロセス中に、ビデオ符号化機器は、変換をブロック106のTUに適用し得、復号プロセス中に、ビデオ符号化機器は、ブロック106のための変換された残差データに逆変換を適用し得る。
図5は、H.264のイントラ予測モード110A〜110I(イントラ予測モード110)を示す概念図である。イントラ予測モード110Cは、DCイントラ予測モードに対応し、従って、必ずしも実際の角度に関連付けられるとは限らない。残りのイントラ予測モード110は、図4の矢印102の角度と同様に、ある角度に関連付けられ得る。例えば、イントラ予測モード110Aの角度は矢印102Yに対応し、イントラ予測モード110Bの角度は矢印102Iに対応し、イントラ予測モード110Dの角度は矢印102AGに対応し、イントラ予測モード110Eの角度は矢印102Qに対応し、イントラ予測モード110Fの角度は矢印102Uに対応し、イントラ予測モード110Gの角度は矢印102Mに対応し、イントラ予測モード110Hの角度は矢印102ADに対応し、イントラ予測モード110Iの角度は矢印102Eに対応する。
イントラ予測モード110のうちの1つに直接対応しない矢印102の角度は、イントラ予測モード110のうちの1つにマッピングされ得る。例えば、矢印102のうちの1つの角度に近いイントラ予測モード110のうちの1つの角度は、矢印102のうちのその1つがマッピングされる角度に対応し得る。
イントラ予測モード110の各々は、例えば、1対1の対応で、特定の変換にマッピングされ得る。例えば、ビデオエンコーダ20又はビデオデコーダ30など、ビデオ符号化機器は、イントラ予測モード110CをDCTにマッピングし、他のイントラ予測モード110の各々を特定の方向性変換、例えば、KLTにマッピングする構成データを含み得る。従って、矢印102(図4)に関連付けられたイントラ予測モードの各々の角度は、イントラ予測モード110(図5)の角度にマッピングされ得る。イントラ予測モード110は、今度は、変換、例えば、方向性変換にマッピングされ得る。このようにして、矢印102(図4)に関連付けられたイントラ予測モードの各々の角度は方向性変換にマッピングされ得る。従って、ビデオエンコーダ20及びビデオデコーダ30は、TUに対応するPUのために選択されたイントラ予測モードに基づいてTUに適用すべき方向性変換を決定し得る。
図6は、係数120A〜120P(係数120)の例示的なジグザグ走査を示す概念図である。係数120は、概して、TUの画素の変換と量子化とから生じる量子化変換係数に対応する。ビデオエンコーダ20は、例えば、残差ブロックへのDCTの適用の後に、図6のジグザグ走査を使用して係数のブロックを走査するように構成され得る。この例では、ジグザグ走査は、係数120Aから開始し、次いで係数120Bに進み、次いで係数120Eに進み、次いで係数120Iに進み、次いで係数120Fに進み、次いで係数120Cに進み、次いで係数120Dに進み、次いで係数120Gに進み、次いで係数120Jに進み、次いで係数120Mに進み、次いで係数120Nに進み、次いで係数120Kに進み、次いで係数120Hに進み、次いで係数120Lに進み、次いで係数120Oに進み、最後に係数120Pに進む。
この走査を実行することによって、画素の係数の2次元構成は、係数120の各々の値を含む1次元配列に変換され得る。これらの値は、配列中に走査順に構成され得る。例えば、係数120Aの値が配列中の最初にあり得、その後に係数120B、120E、120I、120Fなどの値が続き得る。
他の変換のために他の予め定義された走査パターンも定義され得る。例えば、各方向性変換は、より高い周波数係数よりも、方向性変換から生じる低い周波数係数を早く配列中に配置するように設計された走査パターンに関連付けられ得る。方向性変換のうちの1つにより、より低い周波数係数が変換係数のブロックの左端の列に沿って生じ得、その場合、係数120Aから開始し、次いで係数120Eに進み、次いで係数120Iに進み、次いで係数120Mに進み、次いで120Bなどに進む、対応する走査が定義され得る。別の例として、方向性変換のうちの別の1つにより、より低い周波数係数が変換係数のブロックの最上行に沿って生じ得、その場合、係数120Aから開始し、次いで係数120Bに進み、次いで係数120Cに進み、次いで係数120Dに進み、次いで係数120Eなどに進む、対応する走査が定義され得る。
幾つかの例では、ビデオエンコーダ20は、予め定義された走査ではなく、適応走査を実行するように構成され得る。適応走査は、特定の係数(即ち、係数120に対応する係数)が有効であるかどうかを示す統計値に基づいて時間とともに変化し得る。その上、ビデオエンコーダ20は、例えば、ブロックを予測するために選択されるイントラ予測モード、初期変換の後に適用すべき回転変換のインデックス、又は他のファクタに基づいて、統計値の別個のセットを計算し得る。
幾つかの例では、ビデオエンコーダ20は、これらの統計値のための、高ダイナミックレンジテーブル及び動的更新走査テーブルという2つのテーブルを含み得る。走査されるべきブロックがN×N係数を有すると仮定すると、これらの2つのテーブルの各々もN×Nサイズを有し得る。高ダイナミックレンジテーブルは、各変換係数が非ゼロである確率を与える固定の予め決定されたテーブルであり得る。このテーブルはトレーニングデータのセットに基づいて計算され得る。その上、このテーブルは、適応走査順序の開始点を与えるために使用され得る。概して、高ダイナミックレンジテーブルはビットストリームに対して静的(即ち、不変)であり得る。
変換係数について最近決定された統計値を反映するために、動的更新走査テーブルは時間とともに更新され得る。特に、ビデオエンコーダ20は、各係数が非ゼロである回数のカウントを保持し得る。即ち、変換ブロックごとに、ビデオエンコーダ20は、現在の変換ブロック中の非ゼロ係数に対応する動的更新走査テーブル中の値を増分し得る。例えば、係数120Eに対応する変換係数が非ゼロである場合、ビデオエンコーダ20は、係数120Eに対応する動的更新走査テーブル中の値に1を加算し得る。動的更新走査テーブル中の値はまた、値が最大値を超えるのを防ぐために周期的に正規化され得る。
フレームの第1の変換ユニットに対して適応走査を実行するために、ビデオエンコーダ20は高ダイナミックレンジテーブルのみに基づいて走査し得る。ビデオエンコーダ20はまた、例えば、動的更新走査テーブル中の全ての値を0に設定することによって、動的更新走査テーブルを初期化し得る。変換ブロック中の非ゼロ係数ごとに、ビデオエンコーダ20は動的更新走査テーブル中の同一位置の値(collocated value)に1を加算し得る。後続のブロックについて、ビデオエンコーダ20は、最初に動的更新走査テーブルを参照して変換係数のどれが非ゼロである可能性が最も高いかを決定し、次いで、係数が非ゼロである可能性の降順に走査し得る。場合によっては、動的更新走査テーブル中の2つ以上の値が等しくなり得る。そのような場合、量子化ユニット54は、次にどの係数を走査すべきかを決定するために高ダイナミックレンジテーブルを参照する。このようにして、量子化ユニット54は、高ダイナミックレンジテーブルと動的更新走査テーブルとの組合せに基づいて適応走査を実行し得る。
高ダイナミックレンジテーブルは、幾つかの例では、全ての適応走査統計値に対して同じであり得る。従って、ビデオエンコーダ20は、例えば、選択されたイントラ予測モード、回転変換インデックス、又はそれらの組合せに固有の動的更新走査テーブルを含み得る。幾つかの例では、ビデオエンコーダ20は、回転変換が適用されないときは所定の静的走査の中から選択し、回転変換が適用されたときは適応走査を実行し、更に、選択されたイントラ予測モードと、選択された回転変換のインデックスとの一方又は両方に基づいて適応走査を実行するための統計値を選択するように構成され得る。代替的に、ビデオエンコーダ20は、回転変換のインデックス、イントラ予測モード、又はそれらの組合せに基づいて、予め定義された走査を選択するように構成され得る。ビデオデコーダ30は、ビデオエンコーダ20と同様に適切な走査を選択するように構成され得る。
図7A及び図7Bは、例示的な4分木150と、対応する最大符号化ユニット172とを示す概念図である。図7Aは、階層式に構成されたノードを含む、例示的な4分木150を示している。4分木150など、4分木中の各ノードは、子をもたないリーフノードであるか、又は4つの子ノードを有し得る。図7Aの例では、4分木150はルートノード152を含む。ルートノード152は、リーフノード156A〜156C(リーフノード156)とノード154とを含む、4つの子ノードを有する。ノード154はリーフノードでないので、ノード154は、この例ではリーフノード158A〜158D(リーフノード158)である、4つの子ノードを含む。
4分木150は、この例ではLCU172など、対応する最大符号化ユニット(LCU)の特性を記述するデータを含み得る。例えば、4分木150は、それの構造により、サブCUへのLCUの分割を記述し得る。LCU172は2N×2Nのサイズを有すると仮定する。LCU172は、この例では、4つのサブCU176A〜176C(サブCU176)及び174を有し、各々はN×Nサイズである。サブCU174は更に4つのサブCU178A〜178D(サブCU178)に分割され、各々はサイズN/2×N/2である。この例では、4分木150の構造はLCU172の分割に対応する。即ち、ルートノード152はLCU172に対応し、リーフノード156はサブCU176に対応し、ノード154はサブCU174に対応し、リーフノード158はサブCU178に対応する。
4分木150のノードのデータは、ノードに対応するCUが分割されるかどうかを記述し得る。CUが分割される場合、4分木150中に4つの追加のノードが存在し得る。幾つかの例では、4分木のノードは以下の擬似コードと同様に実装され得る。
Figure 2015039191
split_flag値は、現在のノードに対応するCUが分割されるかどうかを表す1ビット値であり得る。CUが分割されない場合、split_flag値は「0」であり得るが、CUが分割される場合、split_flag値は「1」であり得る。4分木150の例に関して、分割フラグ値の配列は101000000であり得る。
幾つかの例では、サブCU176及びサブCU178の各々は、同じイントラ予測モードを使用してイントラ予測符号化され得る。従って、ビデオエンコーダ20は、ルートノード152においてイントラ予測モードの指示を与え得る。その上、サブCUの幾つかのサイズは、特定のイントラ予測モードのために複数の可能な変換を有し得る。本開示の技術によれば、ビデオエンコーダ20は、ルートノード152においてそのようなサブCUのために使用すべき変換の指示を与え得る。例えば、サイズN/2×N/2のサブCUでは複数の可能な変換が利用可能であり得る。ビデオエンコーダ20は、ルートノード152において使用すべき変換を信号伝達し得る。従って、ビデオデコーダ30は、ルートノード152において信号伝達されたイントラ予測モードと、ルートノード152において信号伝達された変換とに基づいてサブCU178に適用すべき変換を決定し得る。
従って、ビデオエンコーダ20は、本開示の技術によれば、リーフノード156及びリーフノード158においてサブCU176及びサブCU178に適用すべき変換を信号伝達する必要はないが、代わりに、単に、ルートノード152において、イントラ予測モードと、幾つかの例では、幾つかのサイズのサブCUに適用すべき変換とを信号伝達し得る。このようにして、これらの技術は、LCU172など、LCUのサブCUごとに変換機能を信号伝達するオーバーヘッドコストを低減し得る。
幾つかの例では、サブCU176及び/又はサブCU178のイントラ予測モードは、LCU172のイントラ予測モードとは異なり得る。ビデオエンコーダ20及びビデオデコーダ30は、ルートノード152において信号伝達されるイントラ予測モードを、サブCU176及び/又はサブCU178のために利用可能なイントラ予測モードにマッピングする機能を用いて構成され得る。この機能は、LCU172のために利用可能なイントラ予測モードの、サブCU176及び/又はサブCU178のイントラ予測モードへの多対1のマッピングを与え得る。
図7AではCU4分木の一例を示したが、同様の4分木がリーフノードCUのTUに適用され得ることを理解されたい。即ち、リーフノードCUは、CUのためのTUの区分を記述するTU4分木を含み得る。TU4分木は、TU4分木がCUのTUのイントラ予測モードを個々に信号伝達し得ることを除いて、概してCU4分木に似ていることがある。
図8は、ブロックのために選択されたイントラ予測モードに基づいてブロックに適用すべき変換及び走査を選択するための例示的な方法を示すフローチャートである。説明のためにビデオエンコーダ20(図2)の構成要素によって実行されるものとして一般的に説明するが、プロセッサ、処理ユニット、エンコーダ/デコーダ(コーデック)などのハードウェアベースの符号化ユニットなど、他のビデオ符号化ユニットも図8の方法を実行するように構成され得ることを理解されたい。
図8の例では、変換ユニット52は、初めに、現在のTUの残差データを受信する(180)。更に、変換ユニット52はまた、TUのために選択されたイントラ予測モードの指示を受信し得る。この指示から、変換ユニット52はTUについての予測方向を決定する(182)。例えば、変換ユニット52は、指示されたイントラ予測モードについての予測方向の角度を決定し得る。
いずれの場合も、イントラ予測モードを決定した後に、変換ユニット52は、イントラ予測モードから変換へのマッピングに基づいて残差データに適用すべき変換を選択する(186)。例えば、変換ユニット52は、イントラ予測方向とマッピングデータ66を照会することによって適用すべき変換を選択し、イントラ予測方向がマッピングされる変換を決定し得る。変換は、離散コサイン変換、又はモード依存方向性変換(MDDT)などの方向性変換に対応し得る。変換ユニット52は、次いで、選択された変換を残差データに適用して残差データを変換する(188)。幾つかの例では、変換ユニット52が、第1の変換の後に、回転変換など、2つ以上の変換を適用すべきであるという指示をマッピングデータ66は更に含み得、その場合、変換ユニット52は指示された回転変換を更に適用し得る。
残差データを変換することによって、変換ユニット52は、残差データと係数の同じ数を有する変換係数の2次元行列を生成し得る。図8の例では、量子化ユニット54は、次いで、変換係数を量子化する(190)。幾つかの例では、量子化ユニット54は、例えば、係数を量子化する前又は後に、係数の2次元行列を走査して1次元配列を生成し得る。代替的に、エントロピー符号化ユニット56が2次元行列を走査し得る。
この例では、エントロピー符号化ユニット56は、マッピングデータ66を照会して、量子化変換係数に適用すべき走査を選択する(192)。幾つかの例では、マッピングデータ66は、イントラ予測モードを特定の予め定義された走査パターンにマッピングするデータを含み得る。幾つかの例では、マッピングデータ66は、変換を予め定義された走査パターンにマッピングするデータを含み得る。例えば、回転変換が変換係数に適用されるべきであることをマッピングデータ66が示す、幾つかの例では、マッピングデータ66は、適応走査が実行されるべきであるか、又は回転変換がマッピングされた予め定義された走査が実行されるべきであるかを更に指示し得る。適応走査が実行される例では、マッピングデータ66は、走査統計値、例えば、イントラ予測モードにマッピングされた高ダイナミックレンジテーブル及び動的更新走査テーブル、第1の変換のインデックス、回転変換のインデックス、それらの組合せ、及び/又は他のファクタを更に含み得る。
エントロピー符号化ユニット56は、次いで、選択された走査、例えば、予め定義された走査、又は選択された走査統計値に基づく適応走査を使用して量子化変換係数を走査する(194)。幾つかの例では、エントロピー符号化ユニット56は、(変換係数の数よりも少ないか又はそれに等しいことがある)走査位置を用いて構成され得、その後、エントロピー符号化ユニット56は配列中の係数値をゼロ設定し得る。走査位置に等しい幾つかの係数を走査した後に、エントロピー符号化ユニット56は残りの配列値を0に等しく設定し得る。幾つかの例では、変換係数をゼロ設定することは走査の前又は後に行われ得る。
幾つかの例では、エントロピー符号化ユニット56は、次いで、走査の後に、配列中の走査された係数をエントロピー符号化する(196)。代替的に、幾つかの例では、エントロピー符号化ユニット56は、係数が走査されるときにそれらの係数をエントロピー符号化し得る。いずれの場合も、エントロピー符号化ユニット56は、係数をエントロピー符号化するためにCABAC又はCAVLCのいずれかを利用し得る。
CABACを使用するとき、及び適応走査を実行するとき、エントロピー符号化ユニット56は、有効係数フラグと最終係数フラグとを含むシンタックス要素をエントロピー符号化し得る。エントロピー符号化ユニット56は、ブロックタイプ(イントラ又はインター)、選択されたイントラ予測モード(ブロックがイントラモードで予測されると仮定する)、及び/又は適用される変換のタイプ(例えば、DCTもしくは方向性/KLT)に基づいて有効係数フラグをエントロピー符号化するためのコンテキストモデルを選択し得る。エントロピー符号化ユニット56は、適応走査の順序インデックス、ブロックタイプ、空間的予測方向、及び/又は選択された変換に基づいて最終係数フラグをエントロピー符号化するためのコンテキストモデルを選択し得る。
このように、図8の方法は、イントラ予測モードを使用して形成された予測ブロックに基づいてビデオデータのブロックの残差ブロックを計算することと、イントラ予測モードにマッピングされた変換を使用してその残差ブロックを変換することとを含む方法の一例を表す。
図9は、残差データのブロックに適用すべき変換及び走査を選択するための別の例示的な方法を示すフローチャートである。概して、図9は実質的に図8に準拠する。但し、図9の例では、残差データと、TUのために選択されたイントラ予測モードの指示とを受信した後に(180)、変換ユニット52は、TUを予測するための第1の予測方向を決定する(183)。例えば、変換ユニット52は、指示されたイントラ予測モードについての予測方向の角度を決定し得る。
変換ユニット52は、次いで、第1の予測方向にマッピングされた第2の方向を決定する(184)。例えば、変換ユニット52は、マッピングデータ66を照会して、第1のイントラ予測モードがマッピングされる第2のイントラ予測モードを決定し得る。幾つかの例では、変換ユニット52は、指示されたイントラ予測モードの角度に近い角度を決定し、その決定された角度に対応する第2のイントラ予測モードを選択し得る。変換ユニット52は、次いで、第2の予測データにマッピングされた変換を選択する(185)。複数の変換を選択することに対応し得る、変換を選択した後に、ビデオエンコーダ20は、概して、図8に関して説明した対応するステップと同様の方法で図9の残りのステップを実行する。
このように、図9の方法は、ビデオデータのブロックのためのイントラ予測モードの第1のセット中の第1のイントラ予測モードの指示を受信することと、イントラ予測モードのより小さいセットから、第1のイントラ予測モードがマッピングされる第2のイントラ予測モードを決定することと、第2のイントラ予測モードがマッピングされる方向性変換を決定することと、ブロックの残差データに方向性変換を適用することとを含む方法の一例である。
図10は、特定のサイズのサブCUにイントラ予測モード及び変換を適用するための例示的な方法を示すフローチャートである。説明のためにビデオエンコーダ20(図2)の構成要素によって実行されるものとして一般的に説明するが、プロセッサ、処理ユニット、エンコーダ/デコーダ(コーデック)などのハードウェアベースの符号化ユニットなど、他のビデオ符号化ユニットも図10の方法を実行するように構成され得ることを理解されたい。また、他の例では、同様の方法は、説明する技術から逸脱することなく、図10に示すステップに対する追加又は代替のステップを含むか、或いは異なる順序で図示のステップを実行し得ることを理解されたい。
図10に関して説明するように変換を選択し、適用するための技術は、図8のステップ186及び188に対応し得る。図10に関して説明するように様々なサイズのブロックに様々なイントラ予測モードを適用するための技術は、図8のステップ180より前に実行され得る。
イントラ予測ユニット46は、画素のブロック、例えば、LCUを受信する(200)。イントラ予測ユニット46は、次いで、LCUに適用すべきイントラ予測モードを決定し、例えば、LCUに対応する4分木データ構造のルートノードにおいて、LCUについて決定されたイントラ予測モードを信号伝達する(201)。イントラ予測ユニット46は、次いで、イントラ予測モードのサブセットのみが利用可能であるサブCUのサイズを決定する(202)。イントラ予測ユニット46は更に、LCUを1つ以上のサブCUに区分し、イントラ予測モードのサブセットのみが利用可能であるサイズをサブCUのいずれかが有するかどうかを決定する(204)。
イントラ予測モードのサブセットのみが利用可能であるサイズのサブCUをLCUが含む場合(184の「YES」分岐)、イントラ予測ユニット46は、LCUのために選択されたイントラ予測モードがマッピングされるイントラ予測モードを使用してそれらのサブCUをイントラ予測する(206)。一方、そのようなサイズであるサブCUをLCUが含まない場合(184の「NO」分岐)、イントラ予測ユニット46は、LCUのために信号伝達されたモードをLCUの全てのサブブロックに適用する(208)。
ビデオエンコーダ20は、次いで、LCUのサブCUの残差値を計算し得る。次いで、変換ユニット52は、LCUのための信号伝達されたイントラ予測モードに基づいて、複数の変換が可能であるサブCUサイズを決定する(210)。変換ユニット52は更に、LCUのサブCUのいずれかが、複数の変換が可能であるサイズであるかどうかを決定する(212)。少なくとも1つのサブCUが、複数の変換が可能であるサイズである場合(192の「YES」分岐)、変換ユニット52は、そのサイズのサブCUのために適用すべき変換を選択し、信号伝達する(214)。例えば、変換ユニット52は、LCUの4分木のルートノードにおいてそのサイズのサブCUに適用すべき変換を信号伝達し得る。変換ユニット52はまた、信号伝達された変換を、そのサイズのLCU中の全てのサブブロックに適用する(216)。一方、複数の変換が可能であるサブCUをLCUが含んでいない場合(192の「NO」分岐)、変換ユニット52は、LCUのための信号伝達されたイントラ予測モードに純粋に基づいて変換をLCUのサブCUに適用し(218)、従って、変換に関する信号伝達は不要である。
このように、図10の方法は、ビデオデータのブロックを符号化するために使用すべきイントラ予測モードを選択することと、複数の変換が可能であるサイズのサブブロックをブロックが含むかどうかを、サブブロックのサイズと選択されたイントラ予測モードとに基づいて決定することと、サブブロックのサイズと選択されたイントラ予測モードとに基づいて、複数の変換が可能であるサイズのサブブロックをブロックが含むとき、複数の可能な変換のうちの1つを選択することと、複数の可能な変換のうちの選択された1つを使用してサブブロックを変換することと、ブロックのサイズについての複数の可能な変換のうちの選択された1つの指示を与えることとを含む方法の一例である。
図11は、ブロックに適用される選択された変換に基づいて適応走査を実行するための例示的な方法を示すフローチャートである。説明のためにビデオエンコーダ20(図2)の構成要素によって実行されるものとして一般的に説明するが、プロセッサ、処理ユニット、エンコーダ/デコーダ(コーデック)などのハードウェアベースの符号化ユニットなど、他のビデオ符号化ユニットも図11の方法を実行するように構成され得ることを理解されたい。
また、他の例では、同様の方法は、説明する技術から逸脱することなく、図11に示すステップに対する追加又は代替のステップを含むか、或いは異なる順序で図示のステップを実行し得ることを理解されたい。図11に示す、カスケード変換の後に係数を適応的に走査するための技術は、図8のステップ192及び194に対応し得る。図11の残差係数を適応的に走査するための技術は、イントラ予測又はインター予測の後に残差データに適用され得る。
初めに、ビデオエンコーダ20の変換ユニット52が残差ブロックを受信する(230)。残差ブロックは、CUのイントラ予測又はインター予測後の残差に対応し得る。残差ブロックは、CUの対応する予測ユニットと同じサイズであるか又は異なるサイズであり得る。変換ユニット52は、次いで、残差ブロックを変換する(232)。幾つかの例では、変換ユニット52は、本開示の技術によれば、イントラ予測モードのサブセットからのイントラ予測モードに対応する方向性変換を適用し得る。他の例では、変換ユニット52は離散コサイン変換を適用し得る。
変換ユニット52は、次いで、変換されたブロックに回転変換を適用する(234)。変換ユニット52がDCTを適用する8×8及びそれより大きいサイズの変換ユニット(TU)の場合、変換ユニット52は、最低周波数8×8DCT係数に回転変換を適用し得る。8×8よりも小さいTUの場合、変換ユニット52は、TU全体に回転変換を適用し得る。TUに対応するPUがイントラ予測符号化された場合、変換ユニット52は、例えば、イントラ予測モードのサブセットが回転変換にマッピングされ得る、PUを予測するために使用されるイントラ予測モードに基づいて回転変換を選択し得る。これらの回転変換はモード依存回転変換(MDROT)と呼ばれることがある。幾つかの例では、変換ユニット52は、KLTであり得る、モード依存方向性変換(MDDT)の後に、回転変換(又は他の2次分離可能変換)をカスケードし得る。
回転変換の後に、量子化ユニット54は、幾つかの例では、変換係数を量子化し得る。次いで、エントロピー符号化ユニット56は、変換係数の適応走査を実行するために使用すべき統計値のセットを選択し得る。統計値のセットは、高ダイナミックレンジ(HDR:high dynamic range)テーブルと、動的更新(DU:dynamically updating)テーブルとを含み得る。HDRテーブル及びDUテーブルの一方又は両方は、特定のシナリオ、例えば、PUを予測するためにイントラ予測が使用されたかインター予測が使用されたか、イントラ予測が使用されたときのPUのための特定のイントラ予測モード、PUに対応するTUにDCTが適用されたかKLTが適用されたか、使用される回転変換のインデックス、又はそれらの任意の組合せについて選択され得る。このようにして、エントロピー符号化ユニット56は、適応走査中に使用するためのHDR及び/又はDUテーブルを選択する(236)。
上記で説明したように、HDRテーブルは、行列中の各位置の係数が非ゼロである確率を示すデータの予め定義されたセットを含み得る。HDRテーブルは、トレーニングデータのセットを使用して生成され得、ビットストリーム全体にわたって同じままであり得る。エントロピー符号化ユニット56は、DUテーブルの値を計算するために、ビデオデータのフレーム、スライス、ピクチャグループ、又は他のユニットに固有の統計値を収集し得る。DUテーブルも、従って、行列中の各位置の係数が非ゼロである確率を示し得る。
適応走査を実行するために、エントロピー符号化ユニット56は、最初に、DUテーブルを使用して、非ゼロ係数を含む確率が最も高い行列中の位置を決定する(238)。場合によっては、非ゼロ係数を有する確率が等しい行列中の2つ以上の位置があり得る。従って、エントロピー符号化ユニット56は、非ゼロ係数を含む確率が同じである行列中の複数の位置があるかどうかを決定する(240)。非ゼロ係数を含む確率が同じである行列中の複数の位置がある場合(240の「YES」分岐)、エントロピー符号化ユニット56は、HDRテーブルを使用して、非ゼロ係数を含む確率が最も高い行列中の位置を決定する(242)。
エントロピー符号化ユニット56は、次いで、決定された位置における係数を走査し、エントロピー符号化する(244)。エントロピー符号化ユニット56はまた、走査された係数が事実上非ゼロであったかどうかを決定し、走査された係数が非ゼロであった、従って有効であったかどうかを示すように有効係数フラグの値を設定し得る。エントロピー符号化ユニット56は、次いで、行列中の全ての係数が走査されたかどうかを決定する(246)。行列中の全ての係数が走査されているわけではない場合(246の「NO」分岐)、エントロピー符号化ユニット56は、DUテーブル(又は場合によってはHDRテーブル)を使用して、非ゼロ係数を含む確率が次に高い行列中の位置を決定し、この位置における係数を走査し得る。
全ての係数が走査された後に(246の「YES」分岐)、エントロピー符号化ユニットは走査を停止し得る。その上、幾つかの例では、エントロピー符号化ユニット56は、対応する係数がフラグの最終係数であるかどうかを示すように係数ごとに最終係数フラグの値を設定し得る。全ての係数が走査されたと決定した後に(246の「YES」分岐)、エントロピー符号化ユニット56は、最後に走査された係数に対応する最終係数フラグの値を1に等しく設定し得る。以下で説明するように図12の技術を使用して、エントロピー符号化ユニット56は、有効係数フラグと最終係数フラグとを含むシンタックス要素を符号化し得る。
幾つかの例では、(適応であるか固定であるかにかかわらず)走査の後に、ビデオエンコーダ20は、走査によって生成された配列中の係数、例えば、配列中の位置Nの後にある全ての係数をゼロ設定し得、但し、Nは0と配列の長さとの間の整数である。他の例では、ビデオエンコーダ20は、(1つ以上の)変換或いは量子化の後に行列の幾つかの位置における係数をゼロ設定し得る。これらの位置は、例えば、行列の左上隅に対応し得る。概して、これらの係数をゼロ設定するとより高い周波数係数がゼロ設定され得、それにより、品質に多くの影響を及ぼすことなしに符号化効率が改善され得る。
このように、図11の方法は、変換係数の中間の2次元ブロックを生成するために第1の変換を使用してビデオデータのブロックの残差データを変換することと、変換係数の2次元ブロックを生成するために回転変換を使用して変換係数の中間の2次元ブロックを変換することと、第1の変換及び回転変換のうちの少なくとも1つに関連付けられた統計値のセットを選択することであって、統計値のセットは、変換係数の2次元ブロック中の位置が非ゼロになる可能性を与える、選択することと、統計値の選択されたセットに基づいて変換係数の2次元ブロックを適応的に走査することとを含む方法の一例である。
図12は、適応的に走査される係数を記述するシンタックス要素を走査し、エントロピー符号化するときに使用すべきコンテキストモデルを選択するための例示的な方法を示すフローチャートである。説明のためにビデオエンコーダ20(図2)の構成要素によって実行されるものとして一般的に説明するが、プロセッサ、処理ユニット、エンコーダ/デコーダ(コーデック)などのハードウェアベースの符号化ユニットなど、他のビデオ符号化ユニットも図12の方法を実行するように構成され得ることを理解されたい。
また、他の例では、同様の方法は、説明する技術から逸脱することなく、図12に示すステップに対する追加又は代替のステップを含むか、或いは異なる順序で図示のステップを実行し得ることを理解されたい。図11に示すように適応的に走査される係数を記述するシンタックス要素を走査し、エントロピー符号化するときに使用すべきコンテキストモデルを選択するための技術は、図8のステップ192〜196に対応し得る。図12の技術は、図11の適応走査が実行されるより前に、その間に、又はその後に実行され得る。
エントロピー符号化ユニット56は、例えば、量子化ユニット54から、量子化変換係数の行列を受信する(250)。概して、図12の例示的な方法を使用して、エントロピー符号化ユニット56は、受信された係数を記述するシンタックス要素を符号化し得る。シンタックス要素は、係数ごとに、有効係数フラグと最終係数フラグとを含み得る。有効係数フラグは、対応する係数が有効であるかどうか、例えば、対応する係数の値が0よりも大きいかどうかを示し得る。最終係数フラグは、対応する係数が適応走査の最終係数であるかどうかを示し得る。
エントロピー符号化ユニット56は、受信された行列中の有効係数の位置を決定し得る。エントロピー符号化ユニット56は、受信された行列中の有効係数の位置を示すシンタックス要素を形成する(252)。例えば、行列中の係数ごとに、エントロピー符号化ユニット56は、係数が0よりも大きいかどうかを決定し、係数が0よりも大きい場合は、係数と同一位置に配置されたシンタックス要素行列中の値を1に等しく設定し得、他の場合、エントロピー符号化ユニットは、係数と同一位置に配置された値を0に等しく設定し得る。エントロピー符号化ユニット56は、次いで、シンタックス要素行列を使用して動的更新走査テーブルを更新する(254)。例えば、エントロピー符号化ユニット56は、動的更新走査テーブル中の各要素の現在値に、シンタックス要素行列中の同一位置配置シンタックス要素の値を追加し得る。
エントロピー符号化ユニット56は、次いで、シンタックス要素行列中のシンタックス要素のうちの第1のシンタックス要素を走査する(256)。エントロピー符号化ユニット56は、図6Aに示す走査などのジグザグ走査、或いはブロックタイプ(インター予測又はイントラ予測されたブロック)、ブロックがイントラ予測符号化されたブロックである場合は空間的予測方向、及び/又は使用される変換のタイプ(例えば、DCT又は方向性変換)に基づいて選択された走査を適用し得る。次に、エントロピー符号化ユニット56は、走査されたシンタックス要素を符号化するためのコンテキストモデルを選択する(258)。概して、コンテキストモデルは、前に走査されたN個の係数中の有効な(例えば、非ゼロである)係数の数に基づいて選択され得、但し、Nは非ゼロ整数値である。Nはブロックのサイズに基づいて選択され得る。
現在のシンタックス要素を符号化するために使用すべきコンテキストモデルを選択した後に、エントロピー符号化ユニット56は、選択されたコンテキストモデルを使用して、走査されたシンタックス要素をエントロピー符号化する(260)。エントロピー符号化ユニット56は、次いで、符号化されたシンタックス要素が、符号化されるべき最後のシンタックス要素であるかどうかを決定する(262)。シンタックス要素が最後のシンタックス要素である場合(262の「YES」分岐)、エントロピー符号化ユニット56は係数を走査するのを停止し得る。一方、シンタックス要素が最後のシンタックス要素でない場合(262の「NO」分岐)、エントロピー符号化ユニット56は、次のシンタックス要素を走査し(264)、例えば、前に走査されたN個の係数中の有効係数の数に基づいて、走査されたシンタックス要素を符号化するためのコンテキストモデルを再び選択し得る。
図12の例は、主に、特定の係数が有効であるか否かを記述するシンタックス要素に関して説明した。これらのシンタックス要素は、例えば、有効係数フラグ、例えば、対応する係数が有効であるか、例えば、非ゼロであるかどうかを示す1ビットフラグを含み得る。特定の係数が適応走査における最終係数であるかどうかを記述するシンタックス要素に関して同様の技術が適用され得ることを理解されたい。例えば、同様の技術は最終係数フラグに適用され得る。CABACを使用して最終係数フラグを符号化するとき、コンテキストモデルは、ブロックタイプ、空間的予測方向、及び/又は選択された変換に基づく適応走査における順序インデックスに基づき得る。
図12の技術は、ビデオエンコーダ20などのビデオ符号化機器によって実行され得る。ビデオデコーダは、図12に従って符号化されたシンタックス要素を使用して逆走査を実行し得る。例えば、ビデオデコーダ30は、符号化されたブロックを予測するために使用されるイントラ予測モードの指示、その符号化されたブロックを変換するために使用される回転変換の指示、又は他のそのようなデータを受信し得る。ビデオエンコーダ20及びビデオデコーダ30は、それぞれ同じ高ダイナミックレンジテーブルを用いて構成され得る。ビデオエンコーダ20が複数の高ダイナミックレンジテーブルを含む例では、ビデオエンコーダ20及びビデオデコーダ30は、それぞれ高ダイナミックレンジテーブルの同じセットを用いて構成され得る。そのような例では、ビデオデコーダ30は、ビデオエンコーダ20によって適応走査を実行するために使用された高ダイナミックレンジテーブルと同じ高ダイナミックレンジテーブルを選択するために、受信された情報を使用し得る。
上記のように、ビデオエンコーダ20は、行列中の特定の位置における係数が非ゼロである可能性(又は確率)を示す統計値に基づいて適応走査を実行し得る。ビデオエンコーダ20は、この可能性を示す動的更新走査テーブルを維持し、走査されたブロックごとに動的更新走査テーブルを更新し得る。あるブロックの係数のうちのどれが有効であり、どの係数が適応走査における最終係数であるかを示すシンタックス要素を符号化することによって、ビデオエンコーダ20は、受信係数を逆走査するために使用され得る情報をビデオデコーダ30に提供し得る。
例えば、ビデオデコーダ30は、シンタックス要素を復号し、次いで、シンタックス要素を使用して動的更新走査テーブルのローカルバージョンを更新し得る。ビデオデコーダ30は、次いで、符号化された係数をエントロピー復号し、有効である(例えば、非ゼロである)確率が次に高い行列の対応する位置にその復号された係数を配置し得る。このようにして、ビデオデコーダ30は、適応逆走査を使用してエントロピー符号化された係数の受信されたベクトルから量子化変換係数の行列を再構成し得る。
このように、図12の方法は、変換係数の1次元ベクトルを生成するために変換係数の2次元ブロックを走査することと、1次元ベクトル中の変換係数が有効であるかどうかを示す値を決定することと、少なくとも、上記値のうちの少なくとも1つの前に符号化された上記値の所定数中の有効係数の割合に基づいて選択されたコンテキストモデルを使用して上記値のうちの少なくとも1つをエントロピー符号化することとを含む方法の一例である。
図13は、本開示の技術のうちの1つ以上を使用して符号化されたTUを復号するための例示的な方法を示すフローチャートである。説明のためにビデオデコーダ30(図3)の構成要素によって実行されるものとして一般的に説明するが、プロセッサ、処理ユニット、エンコーダ/デコーダ(コーデック)などのハードウェアベースの符号化ユニットなど、他のビデオ復号ユニットも図13の方法を実行するように構成され得ることを理解されたい。また、他の例では、同様の方法は、説明する技術から逸脱することなく、図13に示すステップに対する追加又は代替のステップを含むか、或いは異なる順序で図示のステップを実行し得ることを理解されたい。
初めに、ビデオデコーダ30は、符号化された残差データを受信する(300)。図13の例では、残差データは、説明のために、イントラ予測モードで予測される1つ以上のPUを含むCUの残差に対応する。本開示の技術によれば、ビデオデコーダ30は、受信された残差データに関連付けられた予測データについての第1の予測方向を決定する(302)。予測方向は、CUに対応する4分木のルートにおいて信号伝達されるイントラ予測モードに対応し得る。
ビデオデコーダ30は、第1の予測方向にマッピングされた第2の予測方向を決定する(304)。例えば、マッピングデータ84は、イントラ予測モードのセットの、イントラ予測モードのより小さいセット、例えば、サブセットへの多対1のマッピングを与え得る。従って、ビデオデコーダ30は、マッピングデータ84を参照して、第1の予測方向にマッピングされた第2の予測方向を決定し得る。ビデオデコーダ30のエントロピー復号ユニット70は、次いで、受信された係数をエントロピー復号することを開始する(306)。
エントロピー復号ユニット70はまた、エントロピー復号中に又はその後に係数を逆走査する(308)。幾つかの例では、エントロピー復号ユニット70は、例えば、マッピングデータ84によって示される、第2の予測方向がマッピングされる固定走査を逆にし得る。他の例では、例えば、第1の変換が回転変換によってカスケードされたとき、エントロピー復号ユニット70は動的走査を逆にし得る。上記で説明したように、エントロピー復号ユニット70は、そのような例では、ビデオエンコーダ20などのエンコーダが残差データを適応的に走査したとき、エンコーダによって使用された動的更新テーブルと同じ動的更新テーブルをエントロピー復号ユニット70が生成することができるように、有効係数フラグ及び最終係数フラグなどのシンタックス要素を受信し、復号し得る。
いずれの場合も、逆走査の後に、エントロピー復号ユニット70は、量子化変換係数を含む2次元行列を生成し得る。従って、逆量子化ユニット76は、その行列の量子化変換係数を逆量子化する(310)。逆変換ユニット78は、第2の予測方向にマッピングされた逆変換を選択し(312)、その選択された逆変換を使用して変換係数を逆変換する(314)。例えば、逆変換ユニット76は、マッピングデータ84を参照して逆変換を選択し得る。幾つかの例では、マッピングデータ84は、適用すべき逆回転変換と別の逆変換の両方を示し得、その場合、逆変換ユニット78は、変換係数に対して最初に逆回転変換を適用し、次いで他方の逆変換を適用し得る。
本開示の技術によれば、幾つかの例では、複数の逆変換が可能である変換係数のサブブロックがあり得る。そのような例では、ビデオデコーダ30は、ビデオエンコーダによって適用された変換の指示を使用して適用すべき逆変換を決定し得る。例えば、ビデオデコーダ30は、残差データを含むブロックに対応する4分木のルートノードにおけるサブブロックのために使用される変換の指示を受信し得る。
(1つ以上の)逆変換を適用した後に、ビデオデコーダ30は、ビデオデータの符号化中にビデオエンコーダ20によって計算された残差ブロックと同様の残差ブロックを取得する。イントラ予測ユニット74は、残差データについての予測ユニットを加算器80に供給し、加算器80は、予測ユニットと残差データとを合成して、復号されたCUを生成する(316)。ビデオデコーダ30は、復号されたCUを含む復号されたフレームを参照フレームストア82中に集合させ得る。復号されたフレームは、次いで、表示のためにレンダリングされ得、及び/又は他のフレームを復号するときの参照のために使用され得る。
このように、図13の方法は、符号化されたビデオデータのブロックのためのイントラ予測モードの第1のセット中の第1のイントラ予測モードの指示を受信することと、イントラ予測モードのより小さいセットから、第1のイントラ予測モードがマッピングされる第2のイントラ予測モードを決定することと、第2のイントラ予測モードがマッピングされる逆方向性変換を決定することと、ブロックの変換された残差データに逆方向性変換を適用することとを含む方法の一例である。
図13の方法はまた、ビデオデータのブロックを復号するために使用すべきイントラ予測モードの第1の指示を受信することと、複数の変換が可能であるサイズのサブブロックをブロックが含むかどうかを、サブブロックのサイズと指示されたイントラ予測モードとに基づいて決定することと、サブブロックのサイズと指示されたイントラ予測モードとに基づいて、複数の逆変換が可能であるサイズのサブブロックをブロックが含むとき、複数の可能な逆変換のうちの1つの第2の指示を受信することと、複数の可能な逆変換のうちの指示された1つを使用してサブブロックを逆変換することとを含む方法の一例である。
図13の方法はまた、変換係数の2次元ブロックを生成するために第1の変換と回転変換の両方を使用してビデオデータのブロックの残差データが変換されたという指示を受信することと、第1の変換及び回転変換のうちの少なくとも1つに関連付けられ、変換係数の2次元ブロック中の位置が非ゼロになる可能性を与える統計値のセットを選択することと、ブロックのための変換係数の2次元行列を生成するために、統計値の選択されたセットに基づいてブロックの残差データの符号化バージョンを含む受信された1次元ベクトルを適応的に逆走査することとを含む方法の一例である。
図13の方法はまた、符号化された変換係数の受信された1次元ベクトル中の符号化された変換係数が有効であるかどうかを示す値を受信することと、少なくとも、上記値のうちの少なくとも1つの前に復号された上記値の所定数中の有効係数の割合に基づいて選択されたコンテキストモデルを使用して上記値のうちの少なくとも1つをエントロピー復号することと、変換係数の2次元ブロックを生成するために1次元ベクトルを逆走査することとを含む方法の一例である。
図14は、DCイントラ予測モードが信号伝達されるエッジを含むイントラ符号化ブロックに適用すべき変換を選択するための例示的な方法を示すフローチャートである。図3のビデオデコーダ30に関して説明するが、図2のビデオエンコーダ20、又は他のビデオ符号化機器によって同様の(逆の)技術が適用され得ることを理解されたい。
ビデオエンコーダ30は、イントラ符号化ブロック、例えば、TUを受信する(180)。このブロックは、TU4分木中のノードに対応する変換係数のブロックを備え得る。TU4分木ノードは、そのブロックの予測値を計算するために適用されるべきイントラ予測モードの指示を含み得る。従って、ビデオデコーダ30は、予測モードと、そのブロックについてDC予測モードが信号伝達されたかどうかとを決定する(352)。ブロックについてDC予測モードが信号伝達された場合(352の「YES」分岐)、ビデオデコーダ30は更に、ブロック中にエッジが存在するかどうかを決定する(354)。例えば、上記で説明したように、ビデオデコーダ30は、前に符号化されたブロック中にエッジが検出されるかどうか、及びそのエッジが前に符号化されたブロックと現在のブロックとの間の境界と交差するかどうかを決定するために、隣接する、前に符号化されたブロックを検査し得る。
ブロック中にエッジが存在すると決定された場合(354の「YES」分岐)、ビデオデコーダ30はエッジベース予測モードを使用してブロックの予測値を計算する(356)。更に、ビデオデコーダ30は、エッジの角度を決定し(358)、そのエッジの角度に極めて近い角度をもつイントラモードを決定する(360)。例えば、ビデオデコーダ30は、可能なイントラ予測モードのうちの1つ以上の角度と、そのエッジの角度との間の差を計算し、差が最も低いイントラ予測モードを選択し得る。
とはいえ、この例では、ビデオデコーダ30は、概してエッジベース予測モードを使用してブロックの値を予測するので、この予測モードを決定することは、概して、その予測モードにマッピングされた変換を決定するためにのみ実行される。即ち、ビデオデコーダ30は、次いで、決定されたイントラ予測モード、即ち、エッジの角度に極めて近い角度を有するイントラ予測モードにマッピングされた変換を選択する(362)。ビデオデコーダ30は、次いで、選択された変換を使用してブロックを変換する(364)。
一方、ブロックについてDC予測モードが信号伝達されなかった場合(352の「NO」分岐)、ビデオデコーダ30は、信号伝達されたモードを使用してブロックを予測する(353)。DC予測モードが信号伝達されたときにブロック中にエッジが存在しないと決定された場合(354の「NO」分岐)、ビデオデコーダ30は、信号伝達されたようにDC予測モードを使用してブロックを予測する(366)。ビデオデコーダ30はまた、予測モードにマッピングされた(例えば、信号伝達されたDC又は方向性)変換、又は幾つかの例ではDCTなどのデフォルト変換を選択する(368)。ビデオデコーダ30はまた、この場合、選択された変換を使用してブロックを変換する(364)。
この例ではブロックを逆変換することに対応する、ブロックを変換した後に、ビデオデコーダ30は空間領域中の残差値のブロックを再生する。ブロックを復号するために、ビデオデコーダ30は、その残差値のブロックを(ステップ353、356、又は366から得られる)予測ブロックに加算し得る。残差値を予測値に加算するこのステップは、簡潔のために図14に示されていないが、ステップ364の後に実行され得る。
このように、図14の方法は、ビデオデータのブロックのイントラ予測モードがDCイントラ予測モードであることを示す情報を受信することと、ブロックについてのDCイントラ予測モードの指示に基づいてビデオデータのブロック中のエッジの角度を決定することと、そのエッジの角度に近い角度を有する方向性イントラ予測モードにマッピングされた方向性逆変換を使用してブロックを逆変換することと、逆変換されたブロックを復号することとを含む方法の一例である。
上記のように、同様の方法は、例えば、ビデオエンコーダ20によって実行され得る。そのような方法は、イントラ予測符号化されるべきブロックがブロック内にエッジを含んでいると決定することと、エッジ指向イントラ予測モードを使用して計算された予測値に基づいてブロックの残差ブロックを計算することと、エッジの角度に近い角度を有する方向性イントラ予測モードにマッピングされた方向性変換を使用して残差ブロックを変換することと、変換された残差ブロックを表す情報と、ブロックがDCイントラ予測モードを使用して予測されたことを示す情報とを出力することとを含み得る。
1つ以上の例では、説明した機能は、ハードウェア、ソフトウェア、ファームウェア、又はそれらの任意の組合せで実装され得る。ソフトウェアで実装される場合、機能は、1つ以上の命令又はコードとしてコンピュータ可読媒体上に記憶されるか、或いはコンピュータ可読媒体を介して送信され、ハードウェアベースの処理ユニットによって実行され得る。コンピュータ可読媒体は、例えば、通信プロトコルに従ってある場所から別の場所へのコンピュータプログラムの転送を可能にする任意の媒体を含むデータ記憶媒体又は通信媒体など、有形媒体に対応するコンピュータ可読記憶媒体を含み得る。このようにして、コンピュータ可読媒体は、概して、(1)非一時的である有形コンピュータ可読記憶媒体、或いは(2)信号又は搬送波などの通信媒体に対応し得る。データ記憶媒体は、本開示で説明した技術の実装のための命令、コード及び/又はデータ構造を取り出すために1つ以上のコンピュータ或いは1つ以上のプロセッサによってアクセスされ得る任意の利用可能な媒体であり得る。コンピュータプログラム製品はコンピュータ可読媒体を含み得る。
限定ではなく例として、そのようなコンピュータ可読記憶媒体は、RAM、ROM、EEPROM、CD−ROM又は他の光ディスクストレージ、磁気ディスクストレージ、又は他の磁気ストレージ機器、フラッシュメモリ、或いは命令又はデータ構造の形態の所望のプログラムコードを記憶するために使用され得、コンピュータによってアクセスされ得る、任意の他の媒体を備えることができる。更に、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。例えば、命令が、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線(DSL)、又は赤外線、無線、及びマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、又は他のリモートソースから送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、DSL、又は赤外線、無線、及びマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。但し、コンピュータ可読記憶媒体及びデータ記憶媒体は、接続、搬送波、信号、又は他の一時媒体を含まないが、代わりに非一時的有形記憶媒体を対象とすることを理解されたい。本明細書で使用するディスク(disk)及びディスク(disc)は、コンパクトディスク(disc)(CD)、レーザディスク(disc)、光ディスク(disc)、デジタル多用途ディスク(disc)(DVD)、フロッピー(登録商標)ディスク(disk)及びブルーレイ(登録商標)ディスク(disc)を含み、ディスク(disk)は、通常、データを磁気的に再生し、ディスク(disc)は、データをレーザで光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲内に含めるべきである。
命令は、1つ以上のデジタル信号プロセッサ(DSP)などの1つ以上のプロセッサ、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブル論理アレイ(FPGA)、或いは他の等価な集積回路又はディスクリート論理回路によって実行され得る。従って、本明細書で使用する「プロセッサ」という用語は、前述の構造、又は本明細書で説明した技術の実装に好適な他の構造のいずれかを指し得る。更に、幾つかの態様では、本明細書で説明した機能は、符号化及び復号のために構成された専用のハードウェア及び/又はソフトウェアモジュール内に提供され得、或いは複合コーデックに組み込まれ得る。また、本技術は、1つ以上の回路又は論理要素中に十分に実装され得る。
本開示の技術は、ワイヤレスハンドセット、集積回路(IC)又はICのセット(例えば、チップセット)を含む、多種多様な機器又は装置において実施され得る。本開示では、開示する技術を実行するように構成された機器の機能的態様を強調するために様々な構成要素、モジュール、又はユニットについて説明したが、それらの構成要素、モジュール、又はユニットを、必ずしも異なるハードウェアユニットによって実現する必要はない。むしろ、上記で説明したように、様々なユニットが、好適なソフトウェア及び/又はファームウェアとともに、上記で説明したように1つ以上のプロセッサを含んで、コーデックハードウェアユニットにおいて組み合わせられるか、又は相互動作ハードウェアユニットの集合によって与えられ得る。
ビデオエンコーダ20は、次いで、LCUのサブCUの残差値を計算し得る。次いで、変換ユニット52は、LCUのための信号伝達されたイントラ予測モードに基づいて、複数の変換が可能であるサブCUサイズを決定する(210)。変換ユニット52は更に、LCUのサブCUのいずれかが、複数の変換が可能であるサイズであるかどうかを決定する(212)。少なくとも1つのサブCUが、複数の変換が可能であるサイズである場合(192の「YES」分岐)、変換ユニット52は、そのサイズのサブCUのために適用すべき変換を選択し、信号伝達する(214)。例えば、変換ユニット52は、LCUの4分木のルートノードにおいてそのサイズのサブCUに適用すべき変換を信号伝達し得る。変換ユニット52はまた、信号伝達された変換を、そのサイズのLCU中の全てのサブブロックに適用する(216)。一方、複数の変換が可能であるサブCUをLCUが含んでいない場合(212の「NO」分岐)、変換ユニット52は、LCUのための信号伝達されたイントラ予測モードに純粋に基づいて変換をLCUのサブCUに適用し(218)、従って、変換に関する信号伝達は不要である。
本開示の技術は、ワイヤレスハンドセット、集積回路(IC)又はICのセット(例えば、チップセット)を含む、多種多様な機器又は装置において実施され得る。本開示では、開示する技術を実行するように構成された機器の機能的態様を強調するために様々な構成要素、モジュール、又はユニットについて説明したが、それらの構成要素、モジュール、又はユニットを、必ずしも異なるハードウェアユニットによって実現する必要はない。むしろ、上記で説明したように、様々なユニットが、好適なソフトウェア及び/又はファームウェアとともに、上記で説明したように1つ以上のプロセッサを含んで、コーデックハードウェアユニットにおいて組み合わせられるか、又は相互動作ハードウェアユニットの集合によって与えられ得る。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
[C1]
ビデオデータを符号化する方法であって、
ビデオデータのブロックのためのイントラ予測モードの第1のセット中の第1のイントラ予測モードの指示を受信することと、
イントラ予測モードの前記第1のセットよりも小さいイントラ予測モードの第2のセットから、前記第1のイントラ予測モードがマッピングされる第2のイントラ予測モードを決定することと、
前記第2のイントラ予測モードがマッピングされる方向性変換を決定することと、
前記ブロックの残差データに前記方向性変換を適用することとを備える、方法。
[C2]
前記第2のセットの前記イントラ予測モードの各々がそれぞれの走査パターンに関連付けられ、前記第2のイントラ予測モードに関連付けられた前記走査パターンを使用して前記変換された残差ブロックを走査することをさらに備える、C1に記載の方法。
[C3]
前記第2のイントラ予測モードがマッピングされる回転変換を決定することと、
前記変換された残差ブロックに前記回転変換を適用することとをさらに備える、C1に記載の方法。
[C4]
前記第2のイントラ予測モードを決定することは、前記第1のイントラ予測モードがマッピングされる前記第2のイントラ予測モードを決定するために構成データを照会することを備え、
前記方向性変換を決定することは、前記第2のイントラ予測モードがマッピングされる前記方向性変換を決定するために前記構成データを照会することを備える、C1に記載の方法。
[C5]
イントラ予測モードの前記第2のセットが、イントラ予測モードの前記第1のセットのサブセットを備える、C1に記載の方法。
[C6]
前記変換された残差ブロックが2次元行列を備え、前記方法が、前記行列中の1つまたは複数の係数の値を0に等しく設定することをさらに備える、C1に記載の方法。
[C7]
前記変換された残差ブロックが2次元行列を備え、前記方法が、
1次元ベクトルを形成するために前記変換された残差データを走査することと、
前記ベクトル中の1つ以上の係数の値を0に等しく設定することとをさらに備える、C1に記載の方法。
[C8]
前記ブロックに関連付けられた4分木データ構造のルートノードにおいて前記第1のイントラ予測モードの指示を記憶することをさらに備える、C1に記載の方法。
[C9]
前記変換が、前記イントラ予測モードからマッピングされた第1の変換を備え、前記ブロックを変換することが、第2の異なる変換を使用して前記ブロックを変換することをさらに備える、C1に記載の方法。
[C10]
前記第1の変換および前記イントラ予測モードのうちの少なくとも1つからマッピングされた走査インデックスを選択することと、
前記走査インデックスに対応する走査パターンを使用して前記変換された残差ブロックを走査することとをさらに備える、C9に記載の方法。
[C11]
ビデオデータを符号化するための装置であって、
ビデオデータのブロックのためのイントラ予測モードの第1のセット中の第1のイントラ予測モードの指示を受信することと、イントラ予測モードの前記第1のセットよりも小さいイントラ予測モードの第2のセットから、前記第1のイントラ予測モードがマッピングされる第2のイントラ予測モードを決定することと、前記第2のイントラ予測モードがマッピングされる方向性変換を決定することと、前記ブロックの残差データに前記方向性変換を適用することとを行うように構成されたビデオエンコーダを備える、装置。
[C12]
前記第2のセットの前記イントラ予測モードの各々がそれぞれの走査パターンに関連付けられ、前記ビデオエンコーダが、前記第2のイントラ予測モードに関連付けられた前記走査パターンを使用して前記変換された残差データを走査するように構成された、C11に記載の装置。
[C13]
前記ビデオエンコーダは、前記第2のイントラ予測モードがマッピングされる回転変換を決定することと、前記変換された残差データに前記回転変換を適用することとを行うように構成された、C11に記載の装置。
[C14]
イントラ予測モードの前記第1のセットとイントラ予測モードの前記第2のセットとの間のマッピングの第1のセットと、イントラ予測モードの前記第2のセットと決定された前記方向性変換を備える方向性変換のセットとの間のマッピングの第2のセットとを与える構成データを記憶するコンピュータ可読媒体をさらに備え、前記第2のイントラ予測モードを決定するために、前記ビデオエンコーダは、前記第1のイントラ予測モードがマッピングされる前記第2のイントラ予測モードを決定するために構成データを照会するように構成され、前記方向性変換を決定するために、前記ビデオエンコーダは、前記第2のイントラ予測モードがマッピングされる前記方向性変換を決定するために前記構成データを照会するように構成された、C11に記載の装置。
[C15]
前記ビデオエンコーダが、前記方向性変換によって生成された1つ以上の変換係数の値を0に等しく設定するように構成された、C11に記載の装置。
[C16]
前記変換が、前記イントラ予測モードからマッピングされた第1の変換を備え、前記ビデオエンコーダが、前記第1の変換に加えて第2の異なる変換を使用して前記ブロックを変換するように構成された、C11に記載の装置。
[C17]
前記ビデオエンコーダが、前記第1の変換および前記イントラ予測モードのうちの少なくとも1つからマッピングされた走査インデックスを選択することと、前記走査インデックスに対応する走査パターンを使用して前記変換された残差ブロックを走査することとを行うように構成された、C16に記載の装置。
[C18]
前記装置が、
集積回路と、
マイクロプロセッサと、
前記ビデオエンコーダを含むワイヤレス通信機器とのうちの少なくとも1つを備える、C11に記載の装置。
[C19]
ビデオデータを符号化するための装置であって、
ビデオデータのブロックのためのイントラ予測モードの第1のセット中の第1のイントラ予測モードの指示を受信するための手段と、
イントラ予測モードの前記第1のセットよりも小さいイントラ予測モードの第2のセットから、前記第1のイントラ予測モードがマッピングされる第2のイントラ予測モードを決定するための手段と、
前記第2のイントラ予測モードがマッピングされる方向性変換を決定するための手段と、
前記ブロックの残差データに前記方向性変換を適用するための手段とを備える、装置。
[C20]
前記第2のセットの前記イントラ予測モードの各々がそれぞれの走査パターンに関連付けられ、前記装置が、前記第2のイントラ予測モードに関連付けられた前記走査パターンを使用して、変換された前記残差データを走査するための手段をさらに備える、C19に記載の装置。
[C21]
前記第2のイントラ予測モードがマッピングされる回転変換を決定するための手段と、
変換された前記残差データに前記回転変換を適用するための手段とをさらに備える、C19に記載の装置。
[C22]
実行されたとき、
ビデオデータのブロックのためのイントラ予測モードの第1のセット中の第1のイントラ予測モードの指示を受信することと、
イントラ予測モードの前記第1のセットよりも小さいイントラ予測モードの第2のセットから、前記第1のイントラ予測モードがマッピングされる第2のイントラ予測モードを決定することと、
前記第2のイントラ予測モードがマッピングされる方向性変換を決定することと、
前記ブロックの残差データに前記方向性変換を適用することとを、ビデオデータを符号化するための機器のプロセッサに行わせる命令を記憶したコンピュータ可読記憶媒体を備えるコンピュータプログラム製品。
[C23]
前記第2のセットの前記イントラ予測モードの各々がそれぞれの走査パターンに関連付けられ、
前記第2のイントラ予測モードに関連付けられた前記走査パターンを使用して前記変換された残差データを走査することを前記プロセッサに行わせる命令をさらに備える、C22に記載のコンピュータプログラム製品。
[C24]
前記第2のイントラ予測モードがマッピングされる回転変換を決定することと、
前記変換された残差データに前記回転変換を適用することとを前記プロセッサに行わせる命令をさらに備える、C22に記載のコンピュータプログラム製品。
[C25]
ビデオデータを復号する方法であって、
符号化されたビデオデータのブロックのためのイントラ予測モードの第1のセット中の第1のイントラ予測モードの指示を受信することと、
イントラ予測モードの前記第1のセットよりも小さいイントラ予測モードの第2のセットから、前記第1のイントラ予測モードがマッピングされる第2のイントラ予測モードを決定することと、
前記第2のイントラ予測モードがマッピングされる逆方向性変換を決定することと、
前記ブロックの変換された残差データに前記逆方向性変換を適用することとを備える、方法。
[C26]
前記第2のセットの前記イントラ予測モードの各々がそれぞれの逆走査パターンに関連付けられ、
前記逆方向性変換を適用するより前に、前記第2のセットの前記イントラ予測モードに関連付けられた前記逆走査パターンを使用して、前記ブロックの受信された係数を逆走査することをさらに備える、C25に記載の方法。
[C27]
前記第2のイントラ予測モードがマッピングされる逆回転変換を決定することと、
中間の変換された残差データを生成するために前記変換された残差データに前記逆回転変換を適用することとをさらに備え、
前記逆方向性変換を適用することが、前記中間の変換された残差データに前記逆方向性変換を適用することを備える、C25に記載の方法。
[C28]
前記第2のイントラ予測モードを決定することは、前記第1のイントラ予測モードがマッピングされる前記第2のイントラ予測モードを決定するために構成データを照会することを備え、
前記方向性変換を決定することは、前記第2のイントラ予測モードがマッピングされる前記方向性変換を決定するために前記構成データを照会することを備える、C25に記載の方法。
[C29]
イントラ予測モードの前記第2のセットが、イントラ予測モードの前記第1のセットのサブセットを備える、C25に記載の方法。
[C30]
前記第1のイントラ予測モードの前記指示を受信することが、
前記ブロックに関連付けられた4分木データ構造を受信することと、
前記4分木データ構造のルートノードから前記第1のイントラ予測モードの前記指示を取り出すこととを備える、C25に記載の方法。
[C31]
前記逆変換が、前記イントラ予測モードからマッピングされた第1の逆変換を備え、前記ブロックを逆変換することが、第2の異なる逆変換を使用して前記ブロックの前記変換された残差データを逆変換することをさらに備える、C25に記載の方法。
[C32]
前記第1の逆変換および前記イントラ予測モードのうちの少なくとも1つからマッピングされた走査インデックスを選択することと、
前記走査インデックスに対応する走査パターンを使用して前記残差ブロックを逆走査することとをさらに備える、C31に記載の方法。
[C33]
ビデオデータを復号するための装置であって、
符号化されたビデオデータのブロックのためのイントラ予測モードの第1のセット中の第1のイントラ予測モードの指示を受信することと、イントラ予測モードの前記第1のセットよりも小さいイントラ予測モードの第2のセットから、前記第1のイントラ予測モードがマッピングされる第2のイントラ予測モードを決定することと、前記第2のイントラ予測モードがマッピングされる逆方向性変換を決定することと、前記ブロックの変換された残差データに前記逆方向性変換を適用することとを行うように構成されたビデオデコーダを備える、装置。
[C34]
前記第2のセットの前記イントラ予測モードの各々がそれぞれの逆走査パターンに関連付けられ、前記ビデオデコーダが、前記逆方向性変換を適用するより前に、前記第2のセットの前記イントラ予測モードに関連付けられた前記逆走査パターンを使用して、前記ブロックの受信された係数を逆走査するように構成された、C33に記載の装置。
[C35]
前記ビデオデコーダは、前記第2のイントラ予測モードがマッピングされる逆回転変換を決定することと、中間の変換された残差データを生成するために前記変換された残差データに前記逆回転変換を適用することとを行うように構成され、前記逆方向性変換を適用することが、前記中間の変換された残差データに前記逆方向性変換を適用することを備える、C33に記載の装置。
[C36]
イントラ予測モードの前記第1のセットとイントラ予測モードの前記第2のセットとの間のマッピングの第1のセットと、イントラ予測モードの前記第2のセットと前記決定された方向性変換を備える方向性変換のセットとの間のマッピングの第2のセットとを与える構成データを記憶するコンピュータ可読媒体をさらに備え、前記第2のイントラ予測モードを決定するために、前記ビデオデコーダは、前記第1のイントラ予測モードがマッピングされる前記第2のイントラ予測モードを決定するために前記構成データを照会するように構成され、前記方向性変換を決定するために、前記ビデオデコーダは、前記第2のイントラ予測モードがマッピングされる前記方向性変換を決定するために前記構成データを照会するように構成された、C33に記載の装置。
[C37]
前記第1のイントラ予測モードの前記指示を受信するために、前記ビデオデコーダが、前記ブロックに関連付けられた4分木データ構造を受信することと、前記4分木データ構造のルートノードから前記第1のイントラ予測モードの前記指示を取り出すこととを行うように構成された、C33に記載の装置。
[C38]
前記逆変換が、前記イントラ予測モードからマッピングされた第1の逆変換を備え、前記ビデオデコーダが、前記第1の逆変換に加えて第2の異なる逆変換を使用して前記ブロックを逆変換するように構成された、C33に記載の装置。
[C39]
前記ビデオデコーダが、前記第1の逆変換および前記イントラ予測モードのうちの少なくとも1つからマッピングされた走査インデックスを選択することと、前記走査インデックスに対応する走査パターンを使用して前記残差ブロックを逆走査することとを行うように構成された、C38に記載の装置。
[C40]
前記装置が、
集積回路と、
マイクロプロセッサと、
前記ビデオデコーダを含むワイヤレス通信機器とのうちの少なくとも1つを備える、C33に記載の装置。
[C41]
ビデオデータを復号するための装置であって、前記装置は、
符号化されたビデオデータのブロックのためのイントラ予測モードの第1のセット中の第1のイントラ予測モードの指示を受信するための手段と、
イントラ予測モードの前記第1のセットよりも小さいイントラ予測モードの第2のセットから、前記第1のイントラ予測モードがマッピングされる第2のイントラ予測モードを決定するための手段と、
前記第2のイントラ予測モードがマッピングされる逆方向性変換を決定するための手段と、
前記ブロックの変換された残差データに前記逆方向性変換を適用するための手段とを備える、装置。
[C42]
前記第2のセットの前記イントラ予測モードの各々がそれぞれの逆走査パターンに関連付けられ、前記装置が、前記逆方向性変換を適用するより前に、前記第2のセットの前記イントラ予測モードに関連付けられた前記逆走査パターンを使用して、前記ブロックの受信された係数を逆走査するための手段をさらに備える、C41に記載の装置。
[C43]
前記第2のイントラ予測モードがマッピングされる逆回転変換を決定するための手段と、
中間の変換された残差データを生成するために前記変換された残差データに前記逆回転変換を適用するための手段とをさらに備え、
前記逆方向性変換を適用することが、前記中間の変換された残差データに前記逆方向性変換を適用することを備える、C41に記載の装置。
[C44]
実行されたとき、
符号化されたビデオデータのブロックのためのイントラ予測モードの第1のセット中の第1のイントラ予測モードの指示を受信することと、
イントラ予測モードの前記第1のセットよりも小さいイントラ予測モードの第2のセットから、前記第1のイントラ予測モードがマッピングされる第2のイントラ予測モードを決定することと、
前記第2のイントラ予測モードがマッピングされる逆方向性変換を決定することと、
前記ブロックの変換された残差データに前記逆方向性変換を適用することとを、ビデオデータを復号するための機器のプロセッサに行わせる命令を記憶したコンピュータ可読記憶媒体を備えるコンピュータプログラム製品。
[C45]
前記第2のセットの前記イントラ予測モードの各々がそれぞれの逆走査パターンに関連付けられ、
前記逆方向性変換を適用するより前に、前記第2のセットの前記イントラ予測モードに関連付けられた前記逆走査パターンを使用して、前記ブロックの受信された係数を逆走査することをさらに備える、C44に記載のコンピュータプログラム製品。
[C46]
前記第2のイントラ予測モードがマッピングされる逆回転変換を決定することと、
中間の変換された残差データを生成するために前記変換された残差データに前記逆回転変換を適用することとをさらに備え、
前記逆方向性変換を適用することが、前記中間の変換された残差データに前記逆方向性変換を適用することを備える、C44に記載のコンピュータプログラム製品。

Claims (46)

  1. ビデオデータを符号化する方法であって、
    ビデオデータのブロックのためのイントラ予測モードの第1のセット中の第1のイントラ予測モードの指示を受信することと、
    イントラ予測モードの前記第1のセットよりも小さいイントラ予測モードの第2のセットから、前記第1のイントラ予測モードがマッピングされる第2のイントラ予測モードを決定することと、
    前記第2のイントラ予測モードがマッピングされる方向性変換を決定することと、
    前記ブロックの残差データに前記方向性変換を適用することと
    を備える、方法。
  2. 前記第2のセットの前記イントラ予測モードの各々がそれぞれの走査パターンに関連付けられ、前記第2のイントラ予測モードに関連付けられた前記走査パターンを使用して前記変換された残差ブロックを走査することをさらに備える、請求項1に記載の方法。
  3. 前記第2のイントラ予測モードがマッピングされる回転変換を決定することと、
    前記変換された残差ブロックに前記回転変換を適用することと
    をさらに備える、請求項1に記載の方法。
  4. 前記第2のイントラ予測モードを決定することは、前記第1のイントラ予測モードがマッピングされる前記第2のイントラ予測モードを決定するために構成データを照会することを備え、
    前記方向性変換を決定することは、前記第2のイントラ予測モードがマッピングされる前記方向性変換を決定するために前記構成データを照会することを備える、
    請求項1に記載の方法。
  5. イントラ予測モードの前記第2のセットが、イントラ予測モードの前記第1のセットのサブセットを備える、請求項1に記載の方法。
  6. 前記変換された残差ブロックが2次元行列を備え、前記方法が、前記行列中の1つまたは複数の係数の値を0に等しく設定することをさらに備える、請求項1に記載の方法。
  7. 前記変換された残差ブロックが2次元行列を備え、前記方法が、
    1次元ベクトルを形成するために前記変換された残差データを走査することと、
    前記ベクトル中の1つ以上の係数の値を0に等しく設定することと
    をさらに備える、請求項1に記載の方法。
  8. 前記ブロックに関連付けられた4分木データ構造のルートノードにおいて前記第1のイントラ予測モードの指示を記憶することをさらに備える、請求項1に記載の方法。
  9. 前記変換が、前記イントラ予測モードからマッピングされた第1の変換を備え、前記ブロックを変換することが、第2の異なる変換を使用して前記ブロックを変換することをさらに備える、請求項1に記載の方法。
  10. 前記第1の変換および前記イントラ予測モードのうちの少なくとも1つからマッピングされた走査インデックスを選択することと、
    前記走査インデックスに対応する走査パターンを使用して前記変換された残差ブロックを走査することと
    をさらに備える、請求項9に記載の方法。
  11. ビデオデータを符号化するための装置であって、
    ビデオデータのブロックのためのイントラ予測モードの第1のセット中の第1のイントラ予測モードの指示を受信することと、イントラ予測モードの前記第1のセットよりも小さいイントラ予測モードの第2のセットから、前記第1のイントラ予測モードがマッピングされる第2のイントラ予測モードを決定することと、前記第2のイントラ予測モードがマッピングされる方向性変換を決定することと、前記ブロックの残差データに前記方向性変換を適用することとを行うように構成されたビデオエンコーダを備える、装置。
  12. 前記第2のセットの前記イントラ予測モードの各々がそれぞれの走査パターンに関連付けられ、前記ビデオエンコーダが、前記第2のイントラ予測モードに関連付けられた前記走査パターンを使用して前記変換された残差データを走査するように構成された、請求項11に記載の装置。
  13. 前記ビデオエンコーダは、前記第2のイントラ予測モードがマッピングされる回転変換を決定することと、前記変換された残差データに前記回転変換を適用することとを行うように構成された、請求項11に記載の装置。
  14. イントラ予測モードの前記第1のセットとイントラ予測モードの前記第2のセットとの間のマッピングの第1のセットと、イントラ予測モードの前記第2のセットと決定された前記方向性変換を備える方向性変換のセットとの間のマッピングの第2のセットとを与える構成データを記憶するコンピュータ可読媒体をさらに備え、前記第2のイントラ予測モードを決定するために、前記ビデオエンコーダは、前記第1のイントラ予測モードがマッピングされる前記第2のイントラ予測モードを決定するために構成データを照会するように構成され、前記方向性変換を決定するために、前記ビデオエンコーダは、前記第2のイントラ予測モードがマッピングされる前記方向性変換を決定するために前記構成データを照会するように構成された、請求項11に記載の装置。
  15. 前記ビデオエンコーダが、前記方向性変換によって生成された1つ以上の変換係数の値を0に等しく設定するように構成された、請求項11に記載の装置。
  16. 前記変換が、前記イントラ予測モードからマッピングされた第1の変換を備え、前記ビデオエンコーダが、前記第1の変換に加えて第2の異なる変換を使用して前記ブロックを変換するように構成された、請求項11に記載の装置。
  17. 前記ビデオエンコーダが、前記第1の変換および前記イントラ予測モードのうちの少なくとも1つからマッピングされた走査インデックスを選択することと、前記走査インデックスに対応する走査パターンを使用して前記変換された残差ブロックを走査することとを行うように構成された、請求項16に記載の装置。
  18. 前記装置が、
    集積回路と、
    マイクロプロセッサと、
    前記ビデオエンコーダを含むワイヤレス通信機器と
    のうちの少なくとも1つを備える、請求項11に記載の装置。
  19. ビデオデータを符号化するための装置であって、
    ビデオデータのブロックのためのイントラ予測モードの第1のセット中の第1のイントラ予測モードの指示を受信するための手段と、
    イントラ予測モードの前記第1のセットよりも小さいイントラ予測モードの第2のセットから、前記第1のイントラ予測モードがマッピングされる第2のイントラ予測モードを決定するための手段と、
    前記第2のイントラ予測モードがマッピングされる方向性変換を決定するための手段と、
    前記ブロックの残差データに前記方向性変換を適用するための手段と
    を備える、装置。
  20. 前記第2のセットの前記イントラ予測モードの各々がそれぞれの走査パターンに関連付けられ、前記装置が、前記第2のイントラ予測モードに関連付けられた前記走査パターンを使用して、変換された前記残差データを走査するための手段をさらに備える、請求項19に記載の装置。
  21. 前記第2のイントラ予測モードがマッピングされる回転変換を決定するための手段と、
    変換された前記残差データに前記回転変換を適用するための手段と
    をさらに備える、請求項19に記載の装置。
  22. 実行されたとき、
    ビデオデータのブロックのためのイントラ予測モードの第1のセット中の第1のイントラ予測モードの指示を受信することと、
    イントラ予測モードの前記第1のセットよりも小さいイントラ予測モードの第2のセットから、前記第1のイントラ予測モードがマッピングされる第2のイントラ予測モードを決定することと、
    前記第2のイントラ予測モードがマッピングされる方向性変換を決定することと、
    前記ブロックの残差データに前記方向性変換を適用することと
    を、ビデオデータを符号化するための機器のプロセッサに行わせる命令を記憶したコンピュータ可読記憶媒体を備えるコンピュータプログラム製品。
  23. 前記第2のセットの前記イントラ予測モードの各々がそれぞれの走査パターンに関連付けられ、
    前記第2のイントラ予測モードに関連付けられた前記走査パターンを使用して前記変換された残差データを走査することを前記プロセッサに行わせる命令をさらに備える、請求項22に記載のコンピュータプログラム製品。
  24. 前記第2のイントラ予測モードがマッピングされる回転変換を決定することと、
    前記変換された残差データに前記回転変換を適用することと
    を前記プロセッサに行わせる命令をさらに備える、請求項22に記載のコンピュータプログラム製品。
  25. ビデオデータを復号する方法であって、
    符号化されたビデオデータのブロックのためのイントラ予測モードの第1のセット中の第1のイントラ予測モードの指示を受信することと、
    イントラ予測モードの前記第1のセットよりも小さいイントラ予測モードの第2のセットから、前記第1のイントラ予測モードがマッピングされる第2のイントラ予測モードを決定することと、
    前記第2のイントラ予測モードがマッピングされる逆方向性変換を決定することと、
    前記ブロックの変換された残差データに前記逆方向性変換を適用することと
    を備える、方法。
  26. 前記第2のセットの前記イントラ予測モードの各々がそれぞれの逆走査パターンに関連付けられ、
    前記逆方向性変換を適用するより前に、前記第2のセットの前記イントラ予測モードに関連付けられた前記逆走査パターンを使用して、前記ブロックの受信された係数を逆走査することをさらに備える、請求項25に記載の方法。
  27. 前記第2のイントラ予測モードがマッピングされる逆回転変換を決定することと、
    中間の変換された残差データを生成するために前記変換された残差データに前記逆回転変換を適用することと
    をさらに備え、
    前記逆方向性変換を適用することが、前記中間の変換された残差データに前記逆方向性変換を適用することを備える、
    請求項25に記載の方法。
  28. 前記第2のイントラ予測モードを決定することは、前記第1のイントラ予測モードがマッピングされる前記第2のイントラ予測モードを決定するために構成データを照会することを備え、
    前記方向性変換を決定することは、前記第2のイントラ予測モードがマッピングされる前記方向性変換を決定するために前記構成データを照会することを備える、
    請求項25に記載の方法。
  29. イントラ予測モードの前記第2のセットが、イントラ予測モードの前記第1のセットのサブセットを備える、請求項25に記載の方法。
  30. 前記第1のイントラ予測モードの前記指示を受信することが、
    前記ブロックに関連付けられた4分木データ構造を受信することと、
    前記4分木データ構造のルートノードから前記第1のイントラ予測モードの前記指示を取り出すことと
    を備える、請求項25に記載の方法。
  31. 前記逆変換が、前記イントラ予測モードからマッピングされた第1の逆変換を備え、前記ブロックを逆変換することが、第2の異なる逆変換を使用して前記ブロックの前記変換された残差データを逆変換することをさらに備える、請求項25に記載の方法。
  32. 前記第1の逆変換および前記イントラ予測モードのうちの少なくとも1つからマッピングされた走査インデックスを選択することと、
    前記走査インデックスに対応する走査パターンを使用して前記残差ブロックを逆走査することと
    をさらに備える、請求項31に記載の方法。
  33. ビデオデータを復号するための装置であって、
    符号化されたビデオデータのブロックのためのイントラ予測モードの第1のセット中の第1のイントラ予測モードの指示を受信することと、イントラ予測モードの前記第1のセットよりも小さいイントラ予測モードの第2のセットから、前記第1のイントラ予測モードがマッピングされる第2のイントラ予測モードを決定することと、前記第2のイントラ予測モードがマッピングされる逆方向性変換を決定することと、前記ブロックの変換された残差データに前記逆方向性変換を適用することとを行うように構成されたビデオデコーダを備える、装置。
  34. 前記第2のセットの前記イントラ予測モードの各々がそれぞれの逆走査パターンに関連付けられ、前記ビデオデコーダが、前記逆方向性変換を適用するより前に、前記第2のセットの前記イントラ予測モードに関連付けられた前記逆走査パターンを使用して、前記ブロックの受信された係数を逆走査するように構成された、請求項33に記載の装置。
  35. 前記ビデオデコーダは、前記第2のイントラ予測モードがマッピングされる逆回転変換を決定することと、中間の変換された残差データを生成するために前記変換された残差データに前記逆回転変換を適用することとを行うように構成され、前記逆方向性変換を適用することが、前記中間の変換された残差データに前記逆方向性変換を適用することを備える、請求項33に記載の装置。
  36. イントラ予測モードの前記第1のセットとイントラ予測モードの前記第2のセットとの間のマッピングの第1のセットと、イントラ予測モードの前記第2のセットと前記決定された方向性変換を備える方向性変換のセットとの間のマッピングの第2のセットとを与える構成データを記憶するコンピュータ可読媒体をさらに備え、前記第2のイントラ予測モードを決定するために、前記ビデオデコーダは、前記第1のイントラ予測モードがマッピングされる前記第2のイントラ予測モードを決定するために前記構成データを照会するように構成され、前記方向性変換を決定するために、前記ビデオデコーダは、前記第2のイントラ予測モードがマッピングされる前記方向性変換を決定するために前記構成データを照会するように構成された、請求項33に記載の装置。
  37. 前記第1のイントラ予測モードの前記指示を受信するために、前記ビデオデコーダが、前記ブロックに関連付けられた4分木データ構造を受信することと、前記4分木データ構造のルートノードから前記第1のイントラ予測モードの前記指示を取り出すこととを行うように構成された、請求項33に記載の装置。
  38. 前記逆変換が、前記イントラ予測モードからマッピングされた第1の逆変換を備え、前記ビデオデコーダが、前記第1の逆変換に加えて第2の異なる逆変換を使用して前記ブロックを逆変換するように構成された、請求項33に記載の装置。
  39. 前記ビデオデコーダが、前記第1の逆変換および前記イントラ予測モードのうちの少なくとも1つからマッピングされた走査インデックスを選択することと、前記走査インデックスに対応する走査パターンを使用して前記残差ブロックを逆走査することとを行うように構成された、請求項38に記載の装置。
  40. 前記装置が、
    集積回路と、
    マイクロプロセッサと、
    前記ビデオデコーダを含むワイヤレス通信機器と
    のうちの少なくとも1つを備える、請求項33に記載の装置。
  41. ビデオデータを復号するための装置であって、前記装置は、
    符号化されたビデオデータのブロックのためのイントラ予測モードの第1のセット中の第1のイントラ予測モードの指示を受信するための手段と、
    イントラ予測モードの前記第1のセットよりも小さいイントラ予測モードの第2のセットから、前記第1のイントラ予測モードがマッピングされる第2のイントラ予測モードを決定するための手段と、
    前記第2のイントラ予測モードがマッピングされる逆方向性変換を決定するための手段と、
    前記ブロックの変換された残差データに前記逆方向性変換を適用するための手段と
    を備える、装置。
  42. 前記第2のセットの前記イントラ予測モードの各々がそれぞれの逆走査パターンに関連付けられ、前記装置が、前記逆方向性変換を適用するより前に、前記第2のセットの前記イントラ予測モードに関連付けられた前記逆走査パターンを使用して、前記ブロックの受信された係数を逆走査するための手段をさらに備える、請求項41に記載の装置。
  43. 前記第2のイントラ予測モードがマッピングされる逆回転変換を決定するための手段と、
    中間の変換された残差データを生成するために前記変換された残差データに前記逆回転変換を適用するための手段と
    をさらに備え、
    前記逆方向性変換を適用することが、前記中間の変換された残差データに前記逆方向性変換を適用することを備える、
    請求項41に記載の装置。
  44. 実行されたとき、
    符号化されたビデオデータのブロックのためのイントラ予測モードの第1のセット中の第1のイントラ予測モードの指示を受信することと、
    イントラ予測モードの前記第1のセットよりも小さいイントラ予測モードの第2のセットから、前記第1のイントラ予測モードがマッピングされる第2のイントラ予測モードを決定することと、
    前記第2のイントラ予測モードがマッピングされる逆方向性変換を決定することと、
    前記ブロックの変換された残差データに前記逆方向性変換を適用することと
    を、ビデオデータを復号するための機器のプロセッサに行わせる命令を記憶したコンピュータ可読記憶媒体を備えるコンピュータプログラム製品。
  45. 前記第2のセットの前記イントラ予測モードの各々がそれぞれの逆走査パターンに関連付けられ、
    前記逆方向性変換を適用するより前に、前記第2のセットの前記イントラ予測モードに関連付けられた前記逆走査パターンを使用して、前記ブロックの受信された係数を逆走査することをさらに備える、請求項44に記載のコンピュータプログラム製品。
  46. 前記第2のイントラ予測モードがマッピングされる逆回転変換を決定することと、
    中間の変換された残差データを生成するために前記変換された残差データに前記逆回転変換を適用することと
    をさらに備え、
    前記逆方向性変換を適用することが、前記中間の変換された残差データに前記逆方向性変換を適用することを備える、
    請求項44に記載のコンピュータプログラム製品。
JP2014191393A 2010-07-09 2014-09-19 サイズとイントラモードとに基づいて又はエッジ検出に基づいてイントラブロック符号化の周波数変換を適応させること Expired - Fee Related JP5944459B2 (ja)

Applications Claiming Priority (12)

Application Number Priority Date Filing Date Title
US36312710P 2010-07-09 2010-07-09
US61/363,127 2010-07-09
US37457310P 2010-08-17 2010-08-17
US61/374,573 2010-08-17
US37742010P 2010-08-26 2010-08-26
US61/377,420 2010-08-26
US13/178,434 US9215470B2 (en) 2010-07-09 2011-07-07 Signaling selected directional transform for video coding
US13/178,438 2011-07-07
US13/178,434 2011-07-07
US13/178,427 US9172968B2 (en) 2010-07-09 2011-07-07 Video coding using directional transforms
US13/178,438 US9661338B2 (en) 2010-07-09 2011-07-07 Coding syntax elements for adaptive scans of transform coefficients for video coding
US13/178,427 2011-07-07

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2013519730A Division JP2013534794A (ja) 2010-07-09 2011-07-08 サイズとイントラモードとに基づいて又はエッジ検出に基づいてイントラブロック符号化の周波数変換を適応させること

Publications (3)

Publication Number Publication Date
JP2015039191A true JP2015039191A (ja) 2015-02-26
JP2015039191A5 JP2015039191A5 (ja) 2015-04-09
JP5944459B2 JP5944459B2 (ja) 2016-07-05

Family

ID=45438569

Family Applications (4)

Application Number Title Priority Date Filing Date
JP2013519730A Pending JP2013534794A (ja) 2010-07-09 2011-07-08 サイズとイントラモードとに基づいて又はエッジ検出に基づいてイントラブロック符号化の周波数変換を適応させること
JP2013519731A Active JP5746339B2 (ja) 2010-07-09 2011-07-08 サイズとイントラモードとに基づいて又はエッジ検出に基づいてイントラブロック符号化の周波数変換を適応させること
JP2014187863A Pending JP2015039185A (ja) 2010-07-09 2014-09-16 サイズとイントラモードとに基づいて又はエッジ検出に基づいてイントラブロック符号化の周波数変換を適応させること
JP2014191393A Expired - Fee Related JP5944459B2 (ja) 2010-07-09 2014-09-19 サイズとイントラモードとに基づいて又はエッジ検出に基づいてイントラブロック符号化の周波数変換を適応させること

Family Applications Before (3)

Application Number Title Priority Date Filing Date
JP2013519730A Pending JP2013534794A (ja) 2010-07-09 2011-07-08 サイズとイントラモードとに基づいて又はエッジ検出に基づいてイントラブロック符号化の周波数変換を適応させること
JP2013519731A Active JP5746339B2 (ja) 2010-07-09 2011-07-08 サイズとイントラモードとに基づいて又はエッジ検出に基づいてイントラブロック符号化の周波数変換を適応させること
JP2014187863A Pending JP2015039185A (ja) 2010-07-09 2014-09-16 サイズとイントラモードとに基づいて又はエッジ検出に基づいてイントラブロック符号化の周波数変換を適応させること

Country Status (12)

Country Link
US (4) US9661338B2 (ja)
EP (3) EP2591600B1 (ja)
JP (4) JP2013534794A (ja)
KR (4) KR20130030301A (ja)
CN (4) CN102986216B (ja)
AR (1) AR082203A1 (ja)
DK (1) DK2591600T3 (ja)
HU (1) HUE024172T2 (ja)
IN (1) IN2013CN00428A (ja)
PL (1) PL2591600T3 (ja)
TW (1) TW201208386A (ja)
WO (3) WO2012006574A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019003676A1 (ja) * 2017-06-29 2019-01-03 ソニー株式会社 画像処理装置と画像処理方法およびプログラム

Families Citing this family (213)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7289674B2 (en) * 2002-06-11 2007-10-30 Nokia Corporation Spatial prediction based intra coding
EP2081386A1 (en) * 2008-01-18 2009-07-22 Panasonic Corporation High precision edge prediction for intracoding
US9736500B2 (en) * 2009-07-06 2017-08-15 Thomson Licensing Methods and apparatus for spatially varying residue coding
KR20110068792A (ko) 2009-12-16 2011-06-22 한국전자통신연구원 적응적 영상 부호화 장치 및 방법
KR20120086232A (ko) * 2011-01-25 2012-08-02 (주)휴맥스 율-왜곡 최적화를 위한 영상 부호화/복호화 방법 및 이를 수행하는 장치
MY163978A (en) 2010-04-13 2017-11-15 Samsung Electronics Co Ltd Video-encoding method and video-encoding apparatus using prediction units based on encoding units determined in accordance with a tree structure, and video-decoding method and video-decoding apparatus using prediction units based on encoding units determined in accordance with a tree structure
KR20140057671A (ko) * 2010-04-23 2014-05-13 엠앤케이홀딩스 주식회사 동영상 부호화 장치
US10091529B2 (en) * 2010-07-09 2018-10-02 Samsung Electronics Co., Ltd. Method and apparatus for entropy encoding/decoding a transform coefficient
US9661338B2 (en) 2010-07-09 2017-05-23 Qualcomm Incorporated Coding syntax elements for adaptive scans of transform coefficients for video coding
JP2012039590A (ja) * 2010-07-16 2012-02-23 Sony Corp 画像処理装置、画像処理方法、及びプログラム
DE102010041226A1 (de) 2010-09-22 2012-03-22 Aces Gmbh Knochenverankerungseinrichtung
EP2619985A4 (en) * 2010-09-24 2015-03-11 Nokia Corp PROCESSES, DEVICES AND COMPUTER PROGRAMS FOR VIDEO ENCRYPTION
CN103141105B (zh) * 2010-09-27 2018-05-15 Lg电子株式会社 用于分割块的方法和解码设备
JP5395274B2 (ja) * 2010-09-30 2014-01-22 パナソニック株式会社 画像復号方法、画像復号装置およびプログラム
US9497472B2 (en) * 2010-11-16 2016-11-15 Qualcomm Incorporated Parallel context calculation in video coding
US8976861B2 (en) 2010-12-03 2015-03-10 Qualcomm Incorporated Separately coding the position of a last significant coefficient of a video block in video coding
US9042440B2 (en) 2010-12-03 2015-05-26 Qualcomm Incorporated Coding the position of a last significant coefficient within a video block based on a scanning order for the block in video coding
US20120163456A1 (en) 2010-12-22 2012-06-28 Qualcomm Incorporated Using a most probable scanning order to efficiently code scanning order information for a video block in video coding
US9049444B2 (en) 2010-12-22 2015-06-02 Qualcomm Incorporated Mode dependent scanning of coefficients of a block of video data
US10992958B2 (en) 2010-12-29 2021-04-27 Qualcomm Incorporated Video coding using mapped transforms and scanning modes
PL2663075T3 (pl) * 2011-01-06 2020-10-19 Samsung Electronics Co., Ltd. Sposób i urządzenie do kodowania wideo z wykrzystaniem jednostki danych o strukturze hierarchicznej i sposób i urządzenie do jego dekodowania
US20130287106A1 (en) * 2011-01-07 2013-10-31 Samsung Electronics Co., Ltd. Video prediction method capable of performing bilateral prediction and unilateral prediction and a device thereof, video encoding method and device thereof, and video decoding method and device thereof
US9380319B2 (en) * 2011-02-04 2016-06-28 Google Technology Holdings LLC Implicit transform unit representation
US9106913B2 (en) 2011-03-08 2015-08-11 Qualcomm Incorporated Coding of transform coefficients for video coding
US20120230418A1 (en) 2011-03-08 2012-09-13 Qualcomm Incorporated Coding of transform coefficients for video coding
KR20120140181A (ko) * 2011-06-20 2012-12-28 한국전자통신연구원 화면내 예측 블록 경계 필터링을 이용한 부호화/복호화 방법 및 그 장치
US9491469B2 (en) 2011-06-28 2016-11-08 Qualcomm Incorporated Coding of last significant transform coefficient
ES2657197T3 (es) 2011-06-28 2018-03-01 Samsung Electronics Co., Ltd. Aparato de decodificación de video con intra predicción
KR101955374B1 (ko) * 2011-06-30 2019-05-31 에스케이 텔레콤주식회사 고속 코딩 단위(Coding Unit) 모드 결정을 통한 부호화/복호화 방법 및 장치
WO2013014693A1 (ja) * 2011-07-22 2013-01-31 株式会社日立製作所 動画像復号化方法及び画像符号化方法
US9800870B2 (en) * 2011-09-16 2017-10-24 Qualcomm Incorporated Line buffer reduction for short distance intra-prediction
WO2013042912A2 (ko) * 2011-09-21 2013-03-28 엘지전자 주식회사 영상 부호화/복호화 방법 및 그 장치
US9398300B2 (en) * 2011-10-07 2016-07-19 Texas Instruments Incorporated Method, system and apparatus for intra-prediction in video signal processing using combinable blocks
US9699457B2 (en) 2011-10-11 2017-07-04 Qualcomm Incorporated Most probable transform for intra prediction coding
EP2582134A1 (en) * 2011-10-12 2013-04-17 Thomson Licensing Saliency value determination of predictively encoded video streams
KR101549914B1 (ko) * 2011-10-17 2015-09-03 주식회사 케이티 화면 내 예측 모드에 기초한 적응적인 변환 방법 및 이러한 방법을 사용하는 장치
CN107820080B (zh) * 2011-10-18 2021-05-14 株式会社Kt 视频信号解码方法
RU2626013C1 (ru) * 2011-10-19 2017-07-21 Кт Корпорейшен Способ декодирования видеосигнала
US10645398B2 (en) 2011-10-25 2020-05-05 Texas Instruments Incorporated Sample-based angular intra-prediction in video coding
KR20130049525A (ko) 2011-11-04 2013-05-14 오수미 잔차 블록 복원을 위한 역변환 방법
EP2774360B1 (en) 2011-11-04 2017-08-02 Huawei Technologies Co., Ltd. Differential pulse code modulation intra prediction for high efficiency video coding
US10390046B2 (en) 2011-11-07 2019-08-20 Qualcomm Incorporated Coding significant coefficient information in transform skip mode
PL409214A1 (pl) 2011-11-08 2015-07-20 Kt Corporation Sposób i urządzenie do skanowania współczynników na podstawie trybu podziału jednostki predykcji
CA2863208C (en) * 2012-01-13 2021-03-09 Sharp Kabushiki Kaisha Image decoding device, image encoding device, and data structure of encoded data
JP2013168932A (ja) * 2012-01-18 2013-08-29 Jvc Kenwood Corp 画像復号装置、画像復号方法及び画像復号プログラム
US9210438B2 (en) 2012-01-20 2015-12-08 Sony Corporation Logical intra mode naming in HEVC video coding
US9584812B2 (en) 2012-01-20 2017-02-28 Blackberry Limited Methods and devices for context set selection
US9531990B1 (en) 2012-01-21 2016-12-27 Google Inc. Compound prediction using multiple sources or prediction modes
US9866829B2 (en) 2012-01-22 2018-01-09 Qualcomm Incorporated Coding of syntax elements that correspond to coefficients of a coefficient block in video coding
US8737824B1 (en) 2012-03-09 2014-05-27 Google Inc. Adaptively encoding a media stream with compound prediction
EP3793200B1 (en) * 2012-04-13 2022-11-09 GE Video Compression, LLC Low delay picture coding
EP2840792A4 (en) 2012-04-16 2016-03-16 Korea Electronics Telecomm CODING METHOD AND DECODING METHOD AND DEVICE THEREFOR
US9621921B2 (en) * 2012-04-16 2017-04-11 Qualcomm Incorporated Coefficient groups and coefficient coding for coefficient scans
GB2501535A (en) 2012-04-26 2013-10-30 Sony Corp Chrominance Processing in High Efficiency Video Codecs
US9185414B1 (en) 2012-06-29 2015-11-10 Google Inc. Video encoding using variance
CA2877045C (en) 2012-06-29 2020-12-08 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Video data stream concept
US9497465B2 (en) 2012-06-29 2016-11-15 Electronics And Telecommunications Research Institute Method and device for encoding/decoding images
EP2869563B1 (en) * 2012-07-02 2018-06-13 Samsung Electronics Co., Ltd. METHOD FOR ENTROPY DECODING of a VIDEO
US9848204B2 (en) 2012-07-04 2017-12-19 Thomson Licensing Spatial prediction method and device, coding and decoding methods and devices
US9264713B2 (en) * 2012-07-11 2016-02-16 Qualcomm Incorporated Rotation of prediction residual blocks in video coding with transform skipping
US10412414B2 (en) 2012-08-13 2019-09-10 Gurulogic Microsystems Oy Decoder and method for decoding encoded input data containing a plurality of blocks or packets
EP2698996A3 (en) * 2012-08-13 2014-07-02 Gurulogic Microsystems OY Decoder and method
US20140056347A1 (en) * 2012-08-23 2014-02-27 Microsoft Corporation Non-Transform Coding
CN103716607B (zh) * 2012-09-28 2017-02-08 中兴通讯股份有限公司 一种应用于HEVC‑based 3DVC的编码方法和装置
US20140092956A1 (en) * 2012-09-29 2014-04-03 Motorola Mobility Llc Adaptive transform options for scalable extension
GB2508339A (en) * 2012-11-22 2014-06-04 Sony Corp Manipulation of transform coefficient blocks in high-efficiency video coding (HEVC)
US9628790B1 (en) * 2013-01-03 2017-04-18 Google Inc. Adaptive composite intra prediction for image and video compression
EP2944082B1 (en) 2013-01-11 2019-08-21 Huawei Technologies Co., Ltd. Method and apparatus of depth prediction mode selection
US9219915B1 (en) * 2013-01-17 2015-12-22 Google Inc. Selection of transform size in video coding
US9967559B1 (en) 2013-02-11 2018-05-08 Google Llc Motion vector dependent spatial transformation in video coding
US9544597B1 (en) 2013-02-11 2017-01-10 Google Inc. Hybrid transform in video encoding and decoding
US20140254661A1 (en) * 2013-03-08 2014-09-11 Samsung Electronics Co., Ltd. Method and apparatus for applying secondary transforms on enhancement-layer residuals
CN104065973B (zh) * 2013-03-20 2017-11-17 华为技术有限公司 一种高性能视频编码搜索的方法及装置
US9538190B2 (en) * 2013-04-08 2017-01-03 Qualcomm Incorporated Intra rate control for video encoding based on sum of absolute transformed difference
JP6285014B2 (ja) * 2013-04-23 2018-02-28 クゥアルコム・インコーポレイテッドQualcomm Incorporated 映像コーディングにおける予測残差ブロックの位置再設定
US9674530B1 (en) 2013-04-30 2017-06-06 Google Inc. Hybrid transforms in video coding
US9374578B1 (en) 2013-05-23 2016-06-21 Google Inc. Video coding using combined inter and intra predictors
DE102013107719B4 (de) * 2013-07-19 2015-08-13 Deutsche Telekom Ag Verfahren und Vorrichtung zur blockbasierten Dekorrelation von Bildsignalen
MX368246B (es) 2013-07-24 2019-09-25 Microsoft Technology Licensing Llc Ordenes de escaneo para codificacion sin transformacion.
US20150055697A1 (en) * 2013-08-20 2015-02-26 Media Tek Inc. Method and Apparatus of Transform Process for Video Coding
US9628800B2 (en) 2013-11-18 2017-04-18 Qualcomm Incorporated Adaptive control for transforms in video coding
US9609343B1 (en) 2013-12-20 2017-03-28 Google Inc. Video coding using compound prediction
JP2015185897A (ja) * 2014-03-20 2015-10-22 パナソニックIpマネジメント株式会社 画像符号化方法及び画像符号化装置
WO2015200822A1 (en) * 2014-06-26 2015-12-30 Huawei Technologies Co., Ltd Method and device for reducing a computational load in high efficiency video coding
TWI594211B (zh) * 2014-10-31 2017-08-01 鴻海精密工業股份有限公司 監控設備及動態物件監控方法
US9565451B1 (en) 2014-10-31 2017-02-07 Google Inc. Prediction dependent transform coding
US10306229B2 (en) 2015-01-26 2019-05-28 Qualcomm Incorporated Enhanced multiple transforms for prediction residual
FR3032583B1 (fr) * 2015-02-06 2018-03-02 Orange Procede de codage d'une image numerique, procede de decodage, dispositifs, et programmes d'ordinateurs associes
FR3033115A1 (fr) * 2015-02-19 2016-08-26 Orange Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants
US20180255304A1 (en) * 2015-03-29 2018-09-06 Lg Electronics Inc. Method and device for encoding/decoding video signal
FR3035761A1 (fr) * 2015-04-30 2016-11-04 Orange Procede de codage et de decodage d'images, dispositif de codage et de decodage d'images et programmes d'ordinateur correspondants
CN104954806A (zh) * 2015-06-24 2015-09-30 上海交通大学 帧内视频优化编码方法
US10499061B2 (en) 2015-07-15 2019-12-03 Lg Electronics Inc. Method and device for processing video signal by using separable graph-based transform
WO2017014585A1 (ko) * 2015-07-21 2017-01-26 엘지전자(주) 그래프 기반 변환을 이용하여 비디오 신호를 처리하는 방법 및 장치
US9769499B2 (en) 2015-08-11 2017-09-19 Google Inc. Super-transform video coding
KR102605285B1 (ko) 2015-08-19 2023-11-24 엘지전자 주식회사 다중 그래프 기반 모델에 따라 최적화된 변환을 이용하여 비디오 신호를 인코딩/디코딩하는 방법 및 장치
US10469838B2 (en) 2015-09-10 2019-11-05 Lg Electronics Inc. Method and apparatus for processing video signal using graph-based transformation based on prediction angle
US10277905B2 (en) 2015-09-14 2019-04-30 Google Llc Transform selection for non-baseband signal coding
US10681379B2 (en) 2015-09-29 2020-06-09 Qualcomm Incorporated Non-separable secondary transform for video coding with reorganizing
WO2017061671A1 (ko) * 2015-10-08 2017-04-13 엘지전자 주식회사 영상 코딩 시스템에서 적응적 변환에 기반한 영상 코딩 방법 및 장치
ITUB20155295A1 (it) * 2015-10-16 2017-04-16 Torino Politecnico Apparatuses and methods for encoding and decoding images
CN115278232B (zh) 2015-11-11 2024-12-10 三星电子株式会社 对视频进行解码的方法和对视频进行编码的方法
US9807423B1 (en) 2015-11-24 2017-10-31 Google Inc. Hybrid transform scheme for video coding
US20180324441A1 (en) * 2015-11-24 2018-11-08 Samsung Electronics Co., Ltd. Method for encoding/decoding image and device therefor
WO2017105141A1 (ko) * 2015-12-17 2017-06-22 삼성전자 주식회사 영상을 부호화/복호화 하는 방법 및 그 장치
US10390048B2 (en) * 2016-02-15 2019-08-20 Qualcomm Incorporated Efficient transform coding using optimized compact multi-pass transforms
US10349085B2 (en) 2016-02-15 2019-07-09 Qualcomm Incorporated Efficient parameter storage for compact multi-pass transforms
US10448053B2 (en) 2016-02-15 2019-10-15 Qualcomm Incorporated Multi-pass non-separable transforms for video coding
US10623774B2 (en) * 2016-03-22 2020-04-14 Qualcomm Incorporated Constrained block-level optimization and signaling for video coding tools
US10708164B2 (en) * 2016-05-03 2020-07-07 Qualcomm Incorporated Binarizing secondary transform index
US10931947B2 (en) * 2016-05-04 2021-02-23 Sharp Kabushiki Kaisha Systems and methods for coding transform data
CN109076223B (zh) * 2016-05-13 2021-07-09 夏普株式会社 图像解码装置以及图像编码装置
US20170347094A1 (en) * 2016-05-31 2017-11-30 Google Inc. Block size adaptive directional intra prediction
KR102357329B1 (ko) * 2016-07-14 2022-02-03 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 변환 기반 잔차 코딩을 이용한 예측 화상 코딩
CN106231307B (zh) * 2016-08-09 2019-05-03 赵羽剑 一种图像压缩帧内编码预测方法及其硬件实现
US10880564B2 (en) 2016-10-01 2020-12-29 Qualcomm Incorporated Transform selection for video coding
WO2018066863A1 (ko) 2016-10-04 2018-04-12 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
US11095893B2 (en) 2016-10-12 2021-08-17 Qualcomm Incorporated Primary transform and secondary transform in video coding
US20190313102A1 (en) * 2016-11-28 2019-10-10 Electronics And Telecommunications Research Institute Method and apparatus for encoding/decoding image, and recording medium in which bit stream is stored
PL3552393T3 (pl) * 2016-12-23 2023-07-10 Huawei Technologies Co., Ltd. Aparat kodujący do sygnalizowania kierunkowego trybu predykcji wewnątrzramkowej rozszerzenia w ramach zbioru kierunkowych trybów predykcji wewnątrzramkowej
DE112017006638B4 (de) 2016-12-28 2023-05-11 Arris Enterprises Llc Verbesserte Videobitstromkodierung
WO2018128323A1 (ko) * 2017-01-03 2018-07-12 엘지전자(주) 이차 변환을 이용한 비디오 신호의 인코딩/디코딩 방법 및 장치
US11146795B2 (en) * 2017-03-10 2021-10-12 Qualcomm Incorporated Intra filtering flag in video coding
RU2722394C1 (ru) * 2017-03-21 2020-05-29 ЭлДжи ЭЛЕКТРОНИКС ИНК. Способ преобразования в системе кодирования изображений и устройство для его осуществления
KR102443959B1 (ko) 2017-03-22 2022-09-16 한양대학교 산학협력단 적응적인 화소 분류 기준에 따른 인루프 필터링 방법
WO2018194189A1 (ko) * 2017-04-18 2018-10-25 삼성전자 주식회사 영상을 부호화/복호화 하는 방법 및 그 장치
EP3410722A1 (en) 2017-05-31 2018-12-05 Thomson Licensing Method and apparatus for low-complexity bi-directional intra prediction in video encoding and decoding
US10999591B2 (en) 2017-06-02 2021-05-04 Lg Electronics Inc. Method and apparatus for processing video signal through target area modification
US10936655B2 (en) * 2017-06-07 2021-03-02 Amazon Technologies, Inc. Security video searching systems and associated methods
WO2018231087A1 (en) * 2017-06-14 2018-12-20 Huawei Technologies Co., Ltd. Intra-prediction for video coding using perspective information
US11070806B2 (en) * 2017-06-28 2021-07-20 Lg Electronics Inc. Method and apparatus for performing low complexity computation in transform kernel for video compression
US11134272B2 (en) * 2017-06-29 2021-09-28 Qualcomm Incorporated Memory reduction for non-separable transforms
WO2019009129A1 (ja) * 2017-07-03 2019-01-10 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法及び復号方法
US20210127112A1 (en) * 2017-07-04 2021-04-29 Samsung Electronics Co., Ltd. Image encoding method and apparatus, and image decoding method and apparatus
EP3451663A1 (en) * 2017-08-31 2019-03-06 Thomson Licensing Pools of transforms for local selection of a set of transforms in video coding
WO2019069782A1 (ja) * 2017-10-06 2019-04-11 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法及び復号方法
WO2019076138A1 (en) 2017-10-16 2019-04-25 Huawei Technologies Co., Ltd. Encoding method and apparatus
US10484695B2 (en) 2017-10-23 2019-11-19 Google Llc Refined entropy coding for level maps
EP3711297B1 (en) * 2017-11-21 2024-02-14 Huawei Technologies Co., Ltd. Image and video processing apparatuses and methods
KR20200092315A (ko) * 2017-11-24 2020-08-03 소니 주식회사 화상 처리 장치 및 방법
BR112020009749A2 (pt) * 2017-11-24 2020-11-03 Sony Corporation aparelho e método de processamento de imagem.
WO2019112394A1 (ko) * 2017-12-07 2019-06-13 한국전자통신연구원 채널들 간의 선택적인 정보 공유를 사용하는 부호화 및 복호화를 위한 방법 및 장치
CN109922340B (zh) * 2017-12-13 2021-10-15 华为技术有限公司 图像编解码方法、装置、系统及存储介质
KR102738221B1 (ko) 2017-12-15 2024-12-05 엘지전자 주식회사 변환에 기반한 영상 코딩 방법 및 그 장치
CN115941940B (zh) * 2017-12-21 2025-07-25 Lg电子株式会社 图像解码和编码方法、存储比特流的介质和数据发送方法
US10869060B2 (en) * 2018-01-30 2020-12-15 Google Llc Efficient context model computation design in transform coefficient coding
BR112020016913A2 (pt) 2018-02-23 2020-12-15 Huawei Technologies Co., Ltd. Transformação de variação espacial dependente de posição para codificação de vídeo
CN119011831A (zh) * 2018-03-29 2024-11-22 弗劳恩霍夫应用研究促进协会 用于视频编码的候选变换集合的确定
CN111937386B (zh) * 2018-04-01 2023-09-01 Lg电子株式会社 通过向分区块应用二次变换来处理视频信号的方法及设备
CN118474357A (zh) 2018-04-01 2024-08-09 有限公司B1影像技术研究所 图像编码/解码方法、介质和传输比特流的方法
WO2019199031A1 (ko) * 2018-04-11 2019-10-17 엘지전자 주식회사 적응적으로 적용되는 스캔 순서에 따른 영상 디코딩 방법 및 그 장치
US10645381B2 (en) 2018-04-30 2020-05-05 Google Llc Intra-prediction for smooth blocks in image/video
KR20250022246A (ko) 2018-05-31 2025-02-14 후아웨이 테크놀러지 컴퍼니 리미티드 적응적 변환 타입의 공간 가변 변환
KR20250162932A (ko) * 2018-07-02 2025-11-19 광동 오포 모바일 텔레커뮤니케이션즈 코포레이션 리미티드 이차 변환을 기반으로 비디오 신호를 처리하는 방법 및 장치
KR102745742B1 (ko) 2018-07-06 2024-12-20 엘지전자 주식회사 변환에 기반한 영상 코딩 방법 및 그 장치
WO2020046092A1 (ko) * 2018-09-02 2020-03-05 엘지전자 주식회사 비디오 신호의 부호화/복호화 방법 및 이를 위한 장치
EP4152748A1 (en) * 2018-09-02 2023-03-22 LG Electronics, Inc. Method and apparatus for processing image signal
KR20250161682A (ko) * 2018-09-05 2025-11-17 엘지전자 주식회사 비디오 신호의 부호화/복호화 방법 및 이를 위한 장치
WO2020056760A1 (en) * 2018-09-21 2020-03-26 Alibaba Group Holding Limited Transform selection for small size block
US11128866B2 (en) * 2018-10-18 2021-09-21 Qualcomm Incorporated Scans and last coefficient position coding for zero-out transforms
WO2020084476A1 (en) 2018-10-22 2020-04-30 Beijing Bytedance Network Technology Co., Ltd. Sub-block based prediction
CN118158405A (zh) 2018-10-24 2024-06-07 北京字节跳动网络技术有限公司 子块运动矢量预测中基于空域邻近块的运动候选推导
US11412260B2 (en) 2018-10-29 2022-08-09 Google Llc Geometric transforms for image compression
CN117459722A (zh) 2018-11-12 2024-01-26 北京字节跳动网络技术有限公司 组合帧间-帧内预测的简化
US10666985B1 (en) * 2018-11-18 2020-05-26 Sony Corporation Sub-block based entropy coding for image coding
JP7241870B2 (ja) 2018-11-20 2023-03-17 北京字節跳動網絡技術有限公司 部分的な位置に基づく差分計算
CN113170097B (zh) 2018-11-20 2024-04-09 北京字节跳动网络技术有限公司 视频编解码模式的编解码和解码
EP4325849A3 (en) 2018-11-22 2024-04-17 Beijing Bytedance Network Technology Co., Ltd. Coordination method for sub-block based inter prediction
GB2579824B (en) 2018-12-14 2022-05-18 British Broadcasting Corp Video encoding and video decoding
JP7672190B2 (ja) 2018-12-17 2025-05-07 キヤノン株式会社 画像符号化装置及び画像復号装置及びそれらの制御方法及びプログラム
US11323748B2 (en) 2018-12-19 2022-05-03 Qualcomm Incorporated Tree-based transform unit (TU) partition for video coding
GB2580326A (en) 2018-12-28 2020-07-22 British Broadcasting Corp Video encoding and video decoding
KR102807907B1 (ko) * 2019-01-01 2025-05-14 엘지전자 주식회사 이차 변환에 기반한 영상 코딩 방법 및 그 장치
US11190794B2 (en) * 2019-02-12 2021-11-30 Tencent America LLC Method and apparatus for video coding
WO2020180100A1 (ko) 2019-03-04 2020-09-10 엘지전자 주식회사 인트라 블록 코딩 기반 비디오 또는 영상 코딩
KR102635518B1 (ko) 2019-03-06 2024-02-07 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 변환된 단예측 후보의 사용
WO2020182213A1 (en) 2019-03-13 2020-09-17 Beijing Bytedance Network Technology Co., Ltd. Sub-block transform in transform skip mode
EP3922014A4 (en) 2019-04-02 2022-04-06 Beijing Bytedance Network Technology Co., Ltd. Decoder side motion vector derivation
US11240534B2 (en) * 2019-04-05 2022-02-01 Qualcomm Incorporated Extended multiple transform selection for video coding
FI3952313T3 (fi) 2019-04-16 2024-06-20 Lg Electronics Inc Muunnos intraennustukseen perustuvassa kuvankoodauksessa
CA3286847A1 (en) 2019-04-16 2025-11-29 Lg Electronics Inc. Transform for matrix-based intra-prediction in image coding
CN116896634A (zh) 2019-04-23 2023-10-17 北京字节跳动网络技术有限公司 在视频编解码中有条件地使用多重变换矩阵
EP3903485A4 (en) 2019-04-27 2022-03-02 Huawei Technologies Co., Ltd. ENCODER, DECODER AND CORRESPONDING INTRA PREDICTION METHODS
US11122297B2 (en) 2019-05-03 2021-09-14 Google Llc Using border-aligned block functions for image compression
EP3949396A4 (en) * 2019-05-10 2022-05-04 Beijing Bytedance Network Technology Co., Ltd. SELECTION OF SECONDARY TRANSFORMATION MATRICES FOR VIDEO PROCESSING
CN117560489A (zh) 2019-05-14 2024-02-13 北京字节跳动网络技术有限公司 用于残差编解码的上下文建模
CN120881276A (zh) * 2019-05-30 2025-10-31 夏普株式会社 图像解码装置
CN113940076B (zh) 2019-06-06 2025-01-03 北京字节跳动网络技术有限公司 应用隐式变换选择
WO2020244661A1 (en) 2019-06-06 2020-12-10 Beijing Bytedance Network Technology Co., Ltd. Implicit selection of transform candidates
WO2020244662A1 (en) 2019-06-06 2020-12-10 Beijing Bytedance Network Technology Co., Ltd. Simplified transform coding tools
CN117354521A (zh) 2019-06-07 2024-01-05 北京字节跳动网络技术有限公司 视频比特流中的简化二次变换的有条件信令
CN113966611B (zh) 2019-06-09 2023-12-15 北京字节跳动网络技术有限公司 视频编解码中的重要系数信令
CN114615506B (zh) * 2019-06-13 2023-07-04 北京达佳互联信息技术有限公司 视频解码方法、计算设备、存储介质
CN118694951A (zh) 2019-06-17 2024-09-24 Lg 电子株式会社 基于亮度映射的视频或图像编译
KR20250093435A (ko) 2019-06-17 2025-06-24 엘지전자 주식회사 루마 맵핑 및 크로마 스케일링 기반 비디오 또는 영상 코딩
GB2585030A (en) * 2019-06-25 2020-12-30 British Broadcasting Corp Method of signalling in a video codec
JP7422858B2 (ja) 2019-08-03 2024-01-26 北京字節跳動網絡技術有限公司 ビデオ処理方法、装置、記憶媒体及び記憶方法
CN120186324A (zh) * 2019-08-06 2025-06-20 Lg 电子株式会社 图像编码/解码方法和设备,以及用于发送比特流的方法
JP7481430B2 (ja) 2019-08-13 2024-05-10 北京字節跳動網絡技術有限公司 サブブロックに基づくインター予測における動き精度
CN118632034A (zh) 2019-08-17 2024-09-10 北京字节跳动网络技术有限公司 为视频中的缩减二次变换的边信息的上下文建模
US12425654B2 (en) 2019-09-13 2025-09-23 Interdigital Madison Patent Holdings, Sas Transform size interactions with coding tools
CN110636313B (zh) * 2019-09-18 2022-07-15 浙江大华技术股份有限公司 变换、二次变换矩阵训练方法、编码器及相关装置
CN114762330B (zh) 2019-09-22 2025-09-23 北京字节跳动网络技术有限公司 视频的子图片编码和解码
MX2022006140A (es) * 2019-11-26 2022-08-22 Fraunhofer Ges Forschung Conceptos de codificacion para representacion transformada de bloque de muestra.
EP4070552A1 (en) * 2019-12-05 2022-10-12 InterDigital VC Holdings France, SAS Intra sub partitions for video encoding and decoding combined with multiple transform selection, matrix weighted intra prediction or multi-reference-line intra prediction
US11284071B2 (en) 2019-12-12 2022-03-22 Google Llc Combination of mode-dependent and fixed transform types in video coding
US20220394298A1 (en) * 2019-12-27 2022-12-08 Interdigital Vc Holdings France Transform coding for inter-predicted video data
WO2021141403A1 (ko) * 2020-01-07 2021-07-15 엘지전자 주식회사 변환에 기반한 영상 코딩 방법 및 그 장치
GB2591806B (en) 2020-02-07 2023-07-19 British Broadcasting Corp Chroma intra prediction in video coding and decoding
EP4074046A1 (en) * 2020-02-13 2022-10-19 Google LLC Intra prediction for image and video compression
CN116018805A (zh) * 2020-09-29 2023-04-25 交互数字Vc控股法国有限公司 用于视频编码的karhunen loeve变换
US12126794B2 (en) 2021-09-30 2024-10-22 Tencent America LLC Adaptive transforms for compound inter-intra prediction modes
US20240357114A1 (en) * 2023-04-14 2024-10-24 Qualcomm Incorporated Context-based coding of transform coefficients for klt-based transforms

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010530190A (ja) * 2007-06-15 2010-09-02 クゥアルコム・インコーポレイテッド 映像コーディングに関する適応型係数走査

Family Cites Families (81)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1062963C (zh) 1990-04-12 2001-03-07 多尔拜实验特许公司 用于产生高质量声音信号的解码器和编码器
US6226327B1 (en) 1992-06-29 2001-05-01 Sony Corporation Video coding method and apparatus which select between frame-based and field-based predictive modes
EP0729688A1 (en) 1993-11-15 1996-09-04 National Semiconductor Corporation Quadtree-structured walsh transform coding
KR100211050B1 (ko) 1996-11-05 1999-07-15 이계철 선택적 양자화 계수 전송 장치 및 방법
JP3395558B2 (ja) 1997-02-07 2003-04-14 株式会社日立製作所 図形表示方法及び図形表示装置並びに図形表示処理プログラムを記録した媒体
CZ2001519A3 (cs) 1998-08-10 2001-08-15 Digital Accelerator Corporation Vlnky vloženého kvadrantového stromu při kompresi obrazů
EP0986026A1 (en) 1998-09-07 2000-03-15 STMicroelectronics S.r.l. Fractal coding of data in the DCT domain
JP4226172B2 (ja) 1998-11-24 2009-02-18 株式会社ハイニックスセミコンダクター 適応的変換方法を用いる映像圧縮符号化装置および復号化装置ならびにその方法
US6515889B1 (en) * 2000-08-31 2003-02-04 Micron Technology, Inc. Junction-isolated depletion mode ferroelectric memory
US7616690B2 (en) 2000-10-31 2009-11-10 Imec Method and apparatus for adaptive encoding framed data sequences
US6856701B2 (en) 2001-09-14 2005-02-15 Nokia Corporation Method and system for context-based adaptive binary arithmetic coding
CN101448162B (zh) 2001-12-17 2013-01-02 微软公司 处理视频图像的方法
KR100468844B1 (ko) 2002-01-07 2005-01-29 삼성전자주식회사 정지영상 및 동영상을 부호화/복호화하기 위한변환계수들의 최적주사방법
US7190840B2 (en) 2002-01-07 2007-03-13 Hewlett-Packard Development Company, L.P. Transform coefficient compression using multiple scans
JP4447197B2 (ja) 2002-01-07 2010-04-07 三菱電機株式会社 動画像符号化装置および動画像復号装置
ATE352826T1 (de) 2002-05-02 2007-02-15 Fraunhofer Ges Forschung Arithmetische codierung von transformationskoeffizienten
US20030231795A1 (en) 2002-06-12 2003-12-18 Nokia Corporation Spatial prediction based intra-coding
US7289674B2 (en) * 2002-06-11 2007-10-30 Nokia Corporation Spatial prediction based intra coding
CN1795680B (zh) 2003-03-03 2010-06-16 新加坡科技研究局 采用avc帧内预测以便对数字视频进行编码的方法和装置
JP4617644B2 (ja) 2003-07-18 2011-01-26 ソニー株式会社 符号化装置及び方法
US20050036549A1 (en) 2003-08-12 2005-02-17 Yong He Method and apparatus for selection of scanning mode in dual pass encoding
US7782954B2 (en) 2003-09-07 2010-08-24 Microsoft Corporation Scan patterns for progressive video content
US7688894B2 (en) 2003-09-07 2010-03-30 Microsoft Corporation Scan patterns for interlaced video content
DE602004017689D1 (de) 2003-11-21 2008-12-24 Samsung Electronics Co Ltd Vorrichtung und Methode zur Erzeugung von kodierten Blockanordnungen für ein Alpha-Kanalbild sowie Alpha-Kanalkodierungs und -dekodierungsvorrichtung und -methode.
US7379608B2 (en) 2003-12-04 2008-05-27 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung, E.V. Arithmetic coding for transforming video and picture data units
JP4142563B2 (ja) 2003-12-12 2008-09-03 株式会社エヌ・ティ・ティ・ドコモ 動画像符号化装置、動画像符号化方法、及び動画像符号化プログラム
US7894530B2 (en) * 2004-05-07 2011-02-22 Broadcom Corporation Method and system for dynamic selection of transform size in a video decoder based on signal content
US7565020B2 (en) * 2004-07-03 2009-07-21 Microsoft Corp. System and method for image coding employing a hybrid directional prediction and wavelet lifting
CN101053259B (zh) 2004-11-04 2015-03-04 汤姆森特许公司 一种用于编码可分成宏块的图像的视频数据的装置和方法
JP2006140758A (ja) 2004-11-12 2006-06-01 Toshiba Corp 動画像符号化方法、動画像符号化装置および動画像符号化プログラム
JP4763422B2 (ja) 2004-12-03 2011-08-31 パナソニック株式会社 イントラ予測装置
EP1833259A4 (en) 2004-12-28 2011-01-19 Nec Corp PICTURE CODING DEVICE, PICTURE CODING METHOD AND PROGRAM THEREFOR
US8311119B2 (en) 2004-12-31 2012-11-13 Microsoft Corporation Adaptive coefficient scan order
US7751478B2 (en) 2005-01-21 2010-07-06 Seiko Epson Corporation Prediction intra-mode selection in an encoder
KR101088375B1 (ko) 2005-07-21 2011-12-01 삼성전자주식회사 가변 블록 변환 장치 및 방법 및 이를 이용한 영상부호화/복호화 장치 및 방법
US20090123066A1 (en) 2005-07-22 2009-05-14 Mitsubishi Electric Corporation Image encoding device, image decoding device, image encoding method, image decoding method, image encoding program, image decoding program, computer readable recording medium having image encoding program recorded therein,
CN100466745C (zh) 2005-10-11 2009-03-04 华为技术有限公司 帧内预测编解码方法及其系统
WO2007046644A1 (en) * 2005-10-21 2007-04-26 Electronics And Telecommunications Research Institute Apparatus and method for encoding and decoding moving picture using adaptive scanning
JP5089878B2 (ja) 2005-10-28 2012-12-05 パナソニック株式会社 画像符号化装置
JP2007189276A (ja) 2006-01-11 2007-07-26 Victor Co Of Japan Ltd 画像圧縮装置及び画像圧縮プログラム
KR101246294B1 (ko) 2006-03-03 2013-03-21 삼성전자주식회사 영상의 인트라 예측 부호화, 복호화 방법 및 장치
JP2007267123A (ja) 2006-03-29 2007-10-11 Victor Co Of Japan Ltd 動画像符号化装置
DE102006023933A1 (de) * 2006-05-19 2007-11-29 Atmel Germany Gmbh Speichervorrichtung und Verfahren zur Programmierung einer nicht-flüchtigen Speichermatrix
KR100882949B1 (ko) 2006-08-17 2009-02-10 한국전자통신연구원 화소 유사성에 따라 적응적인 이산 코사인 변환 계수스캐닝을 이용한 부호화/복호화 장치 및 그 방법
RU2407221C1 (ru) 2006-10-10 2010-12-20 Ниппон Телеграф Энд Телефон Корпорейшн Способ и устройство управления кодированием с внутренним предсказанием, программа для них и запоминающий носитель, который хранит программу
JP4908180B2 (ja) 2006-12-20 2012-04-04 株式会社東芝 動画像符号化装置
US8331448B2 (en) 2006-12-22 2012-12-11 Qualcomm Incorporated Systems and methods for efficient spatial intra predictabilty determination (or assessment)
KR101366086B1 (ko) 2007-01-03 2014-02-21 삼성전자주식회사 잔차 블록의 계수들에 대한 부호화 결정 방법, 장치,인코더 및 디코더
CN101222641B (zh) 2007-01-11 2011-08-24 华为技术有限公司 帧内预测编解码方法及其装置
JP2008193627A (ja) 2007-01-12 2008-08-21 Mitsubishi Electric Corp 画像符号化装置、画像復号装置、および画像符号化方法、画像復号方法
KR101175593B1 (ko) 2007-01-18 2012-08-22 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 화질 스케일러블 비디오 데이터 스트림
US8488672B2 (en) 2007-04-17 2013-07-16 Qualcomm Incorporated Mode uniformity signaling for intra-coding
KR100865690B1 (ko) 2007-05-21 2008-10-28 한양대학교 산학협력단 고속 인트라 예측모드 결정 장치 및 방법
US8571104B2 (en) 2007-06-15 2013-10-29 Qualcomm, Incorporated Adaptive coefficient scanning in video coding
US8331444B2 (en) 2007-06-26 2012-12-11 Qualcomm Incorporated Sub-band scanning techniques for entropy coding of sub-bands
US20090006036A1 (en) * 2007-06-27 2009-01-01 International Business Machines Corporation Shared, Low Cost and Featureable Performance Monitor Unit
CN103338364B (zh) 2007-06-29 2016-07-06 夏普株式会社 图像编码装置、图像编码方法、图像译码装置、图像译码方法
US8437564B2 (en) 2007-08-07 2013-05-07 Ntt Docomo, Inc. Image and video compression using sparse orthonormal transforms
TW200910971A (en) 2007-08-22 2009-03-01 Univ Nat Cheng Kung Direction detection algorithms for H.264 intra prediction
CN101415121B (zh) 2007-10-15 2010-09-29 华为技术有限公司 一种自适应的帧预测的方法及装置
JP5004180B2 (ja) 2007-11-07 2012-08-22 Kddi株式会社 動画像符号化装置および復号装置
WO2009080133A1 (en) 2007-12-21 2009-07-02 Telefonaktiebolaget Lm Ericsson (Publ) Adaptive intra mode selection
EP2081386A1 (en) 2008-01-18 2009-07-22 Panasonic Corporation High precision edge prediction for intracoding
CN101500160B (zh) 2008-01-28 2015-04-29 华为技术有限公司 一种码流标识方法、装置及编解码系统
KR101353301B1 (ko) 2008-04-11 2014-01-21 에스케이 텔레콤주식회사 인트라 예측 모드 결정 방법 및 그 장치와 이를 이용한영상 부호화/복호화 방법 및 그 장치
KR20100027384A (ko) 2008-09-02 2010-03-11 삼성전자주식회사 예측 모드 결정 방법 및 장치
KR101549823B1 (ko) 2008-09-02 2015-09-04 삼성전자주식회사 적응적 이진화를 이용한 영상 부호화, 복호화 방법 및 장치
JP4937224B2 (ja) 2008-09-30 2012-05-23 株式会社東芝 画像符号化装置
US8737613B2 (en) 2008-11-20 2014-05-27 Mediatek Inc. Scanning methods of transform-based digital data processing that conditionally adjust scan order according to characteristics information and related apparatus thereof
US20100172409A1 (en) 2009-01-06 2010-07-08 Qualcom Incorporated Low-complexity transforms for data compression and decompression
KR101834825B1 (ko) 2009-01-27 2018-03-06 톰슨 라이센싱 비디오 인코딩 및 디코딩에서 변환 선택을 위한 방법 및 장치
US9736500B2 (en) 2009-07-06 2017-08-15 Thomson Licensing Methods and apparatus for spatially varying residue coding
CN102598667B (zh) 2009-09-14 2015-03-18 汤姆森特许公司 帧内预测模式的高效视频编码和解码的方法和装置
US20110116539A1 (en) 2009-11-13 2011-05-19 Freescale Semiconductor, Inc. Method and apparatus for video decoding with reduced complexity inverse transform
JP5377395B2 (ja) 2010-04-02 2013-12-25 日本放送協会 符号化装置、復号装置及びプログラム
EP2693752B1 (en) * 2010-04-13 2017-03-08 GE Video Compression, LLC Coding of significance maps and transform coefficient blocks
US9083974B2 (en) 2010-05-17 2015-07-14 Lg Electronics Inc. Intra prediction modes
US20110317757A1 (en) 2010-06-25 2011-12-29 Qualcomm Incorporated Intra prediction mode signaling for finer spatial prediction directions
US9661338B2 (en) 2010-07-09 2017-05-23 Qualcomm Incorporated Coding syntax elements for adaptive scans of transform coefficients for video coding
US9313514B2 (en) 2010-10-01 2016-04-12 Sharp Kabushiki Kaisha Methods and systems for entropy coder initialization
US10992958B2 (en) 2010-12-29 2021-04-27 Qualcomm Incorporated Video coding using mapped transforms and scanning modes

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010530190A (ja) * 2007-06-15 2010-09-02 クゥアルコム・インコーポレイテッド 映像コーディングに関する適応型係数走査

Non-Patent Citations (10)

* Cited by examiner, † Cited by third party
Title
JPN6013056146; Thomas Davies,et.al.: '"Suggestion for a Test Model"' Document: JCTVC-A033,[online] , 201004, Joint Collaborative Team on Video Coding (JCT-VC) *
JPN6014019022; 齋藤誠二(外1名): '「HD-SDI H.264 超低遅延エンコーダ/デコーダ装置「EHH-1000E/D」とその応用」' 映像情報インダストリアル 2009年2月号(第41巻,第2号), 20090201, 第15〜20頁, 産業開発機構(株) *
JPN6014049382; BUSINESS COMMUNICATION(ビジネスコミュニケーション) Vol.44, No.6(2007年6月号), 20070601, 第92頁, 株式会社ビジネスコミュニケーション社 *
JPN6014049384; "ITU-T H.264(03/2005)" , 200503, 第116〜135頁, [online],ITU-T *
JPN6016015776; Teruhiko Suzuki, et.al.: '"Description of video coding technology proposal by Sony"' [online] Document: JCTVC-A103, 20100423, 第2.4.1.1〜2.4.1.4節, Joint Collaborative Team on Video Coding (JCT-VC) *
JPN6016015777; '"Test Model under Consideration"' [online] Document: JCTVC-B205, 20100728, 第5.3.5.1〜5.3.5.3節,第10.1〜10.4節, Joint Collaborative Team on Video Coding (JCT-VC) *
JPN6016015778; Chuohao Yeo, et.al.: '"Mode-Dependent Fast Separable KLT for Block-based Intra Coding"' [online] Document: JCTVC-B024, 20100728, Joint Collaborative Team on Video Coding (JCT-VC) *
JPN6016015779; Chuohao Yeo, et.al.: '"Choice of transforms in MDDT for Unified Intra Prediction"' [online] Document: JCTVC-C039 (version 1), 20101002, Joint Collaborative Team on Video Coding (JCT-VC) *
JPN6016015780; Xin Zhao, et.al.: '"RATE-DISTORTION OPTIMIZED TRANSFORM FOR INTRA-FRAME CODING"' Proc. of IEEE Int. Conf. on Acoustic Speech and Signal Processing (ICASSP) 2010 , 20100319, p.1414-1417 *
JPN6016015781; Sunil Lee, et.al.: '"High-Efficiency Video Compression Framework Based on Flexible Unit Representation"' Proceedings of the Second APSIPA Annual Summit and Conference , 20101217, p.623-631 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019003676A1 (ja) * 2017-06-29 2019-01-03 ソニー株式会社 画像処理装置と画像処理方法およびプログラム
JPWO2019003676A1 (ja) * 2017-06-29 2020-04-30 ソニー株式会社 画像処理装置と画像処理方法およびプログラム

Also Published As

Publication number Publication date
KR20140054464A (ko) 2014-05-08
EP2680585A3 (en) 2014-03-19
US20120008675A1 (en) 2012-01-12
KR20130030300A (ko) 2013-03-26
JP2013531445A (ja) 2013-08-01
CN102986215B (zh) 2016-06-08
KR20150046353A (ko) 2015-04-29
JP5944459B2 (ja) 2016-07-05
KR20130030301A (ko) 2013-03-26
US20170238015A1 (en) 2017-08-17
HK1220838A1 (zh) 2017-05-12
EP2591603B1 (en) 2016-05-11
WO2012006576A2 (en) 2012-01-12
CN102986215A (zh) 2013-03-20
WO2012006574A3 (en) 2012-04-19
JP5746339B2 (ja) 2015-07-08
US9172968B2 (en) 2015-10-27
EP2591603A1 (en) 2013-05-15
CN102986216B (zh) 2016-03-09
JP2013534794A (ja) 2013-09-05
HUE024172T2 (en) 2016-02-29
CN105721871A (zh) 2016-06-29
WO2012006574A2 (en) 2012-01-12
PL2591600T3 (pl) 2015-03-31
DK2591600T3 (en) 2015-01-12
EP2680585A2 (en) 2014-01-01
WO2012006568A1 (en) 2012-01-12
IN2013CN00428A (ja) 2015-07-03
KR101525370B1 (ko) 2015-06-09
CN105049852B (zh) 2018-06-01
KR101469394B1 (ko) 2014-12-05
US9215470B2 (en) 2015-12-15
CN105721871B (zh) 2019-11-01
WO2012006576A3 (en) 2012-03-15
CN105049852A (zh) 2015-11-11
KR101618021B1 (ko) 2016-05-03
EP2591600B1 (en) 2014-11-12
CN102986216A (zh) 2013-03-20
EP2680585B1 (en) 2016-02-10
AR082203A1 (es) 2012-11-21
TW201208386A (en) 2012-02-16
US10390044B2 (en) 2019-08-20
US20120008683A1 (en) 2012-01-12
JP2015039185A (ja) 2015-02-26
US9661338B2 (en) 2017-05-23
EP2591600A2 (en) 2013-05-15
US20120008682A1 (en) 2012-01-12

Similar Documents

Publication Publication Date Title
JP5944459B2 (ja) サイズとイントラモードとに基づいて又はエッジ検出に基づいてイントラブロック符号化の周波数変換を適応させること
JP5628438B2 (ja) ビデオコーディングのための変換係数の適応走査
JP6165798B2 (ja) イントラ予測を使用したビデオ符号化
JP5886440B2 (ja) イントラ予測ビデオコーディングにおける非正方形変換
JP5587508B2 (ja) ビデオコード化のためのイントラ平滑化フィルタ
KR20140016983A (ko) 비디오 코딩을 위한 런-모드 기반 계수 코딩
HK1220838B (zh) 基於大小及帧内模式或基於边缘检测的用於帧内块的自适应频率变换

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150205

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151027

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151110

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160209

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160426

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160525

R150 Certificate of patent or registration of utility model

Ref document number: 5944459

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees