JP2016511619A - ビデオ情報のスケーラブルコード化のための装置及び方法 - Google Patents

ビデオ情報のスケーラブルコード化のための装置及び方法 Download PDF

Info

Publication number
JP2016511619A
JP2016511619A JP2016501529A JP2016501529A JP2016511619A JP 2016511619 A JP2016511619 A JP 2016511619A JP 2016501529 A JP2016501529 A JP 2016501529A JP 2016501529 A JP2016501529 A JP 2016501529A JP 2016511619 A JP2016511619 A JP 2016511619A
Authority
JP
Japan
Prior art keywords
bit depth
video
pixel information
upsampling
video unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2016501529A
Other languages
English (en)
Other versions
JP6333942B2 (ja
JP2016511619A5 (ja
Inventor
グオ、リウェイ
チェン、ジャンレ
リ、シャン
ラパカ、クリシュナカンス
プ、ウェイ
カークゼウィックズ、マルタ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of JP2016511619A publication Critical patent/JP2016511619A/ja
Publication of JP2016511619A5 publication Critical patent/JP2016511619A5/ja
Application granted granted Critical
Publication of JP6333942B2 publication Critical patent/JP6333942B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/439Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using cascaded computational arrangements for performing a single operation, e.g. filtering
    • 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/117Filters, e.g. for pre-processing or post-processing
    • 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/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/187Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scalable video layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/33Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the spatial domain
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/34Scalability techniques involving progressive bit-plane based encoding of the enhancement layer, e.g. fine granular scalability [FGS]
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Control Of Indicators Other Than Cathode Ray Tubes (AREA)
  • Image Processing (AREA)

Abstract

ビデオ情報をコード化するように構成された装置は、メモリユニットと、メモリユニットと通信しているプロセッサとを備える。メモリユニットは、参照レイヤ(RL)と拡張レイヤ(EL)とに関連付けられたビデオ情報を記憶するように構成される。ELはELビデオ単位を備え、RLは、ELビデオ単位に対応するRLビデオ単位を備える。プロセッサは、ELビデオ単位の予測された画素情報を決定し、予測された画素情報を使用してELビデオ単位を決定するために、単一の合成プロセスにおいてRLビデオ単位の画素情報に対してアップサンプリング及びビット深度変換を実行するように構成される。

Description

[0001]本開示は、ビデオコード化及び圧縮の分野に関し、詳細には、スケーラブルビデオコード化(SVC:scalable video coding)又はマルチビュービデオコード化(MVC:multiview video coding、3DV)に関する。
[0002]デジタルビデオ機能は、デジタルテレビジョン、デジタルダイレクトブロードキャストシステム、ワイヤレスブロードキャストシステム、携帯情報端末(PDA)、ラップトップ又はデスクトップコンピュータ、デジタルカメラ、デジタル記録機器、デジタルメディアプレーヤ、ビデオゲーム機器、ビデオゲームコンソール、セルラー電話又は衛星無線電話、ビデオ遠隔会議機器などを含む、広範囲にわたる機器に組み込まれ得る。デジタルビデオ機器は、MPEG−2、MPEG−4、ITU−T H.263、ITU−T H.264/MPEG−4,Part10,アドバンストビデオコード化(AVC:Advanced Video Coding)、現在開発中の高効率ビデオコード化(HEVC:High Efficiency Video Coding)規格によって定義された規格、及びそのような規格の拡張に記載されているビデオ圧縮技法など、ビデオ圧縮技法を実装する。ビデオ機器は、そのようなビデオコード化技法を実装することによって、デジタルビデオ情報をより効率的に送信、受信、符号化、復号、及び/又は記憶し得る。
[0003]ビデオ圧縮技法は、ビデオシーケンスに固有の冗長性を低減又は除去するために空間的(イントラピクチャ)予測及び/又は時間的(インターピクチャ)予測を実行する。ブロックベースのビデオコード化の場合、ビデオスライス(例えば、ビデオフレーム、ビデオフレームの一部分など)が、ツリーブロック、コード化単位(CU:coding unit)及び/又はコード化ノードと呼ばれることもあるビデオブロックに区分され得る。ピクチャのイントラコード化(I)スライス中のビデオブロックは、同じピクチャ中の隣接ブロック内の参照サンプルに対する空間的予測を使用して符号化される。ピクチャのインターコード化(P又はB)スライス中のビデオブロックは、同じピクチャ中の隣接ブロック中の参照サンプルに対する空間的予測、又は他の参照ピクチャ中の参照サンプルに対する時間的予測を使用し得る。ピクチャはフレームと呼ばれることがあり、参照ピクチャは参照フレームと呼ばれることがある。
[0004]空間的予測又は時間的予測は、コード化されるべきブロックの予測ブロックを生じる。残差データは、コード化されるべき元のブロックと予測ブロックとの間の画素差分を表す。インターコード化ブロックは、予測ブロックを形成する参照サンプルのブロックを指す動きベクトルと、コード化ブロックと予測ブロックとの間の差分を示す残差データとに従って符号化される。イントラコード化ブロックは、イントラコード化モードと残差データとに従って符号化される。更なる圧縮のために、残差データは、画素領域から変換領域に変換されて、残差変換係数が得られ得、その残差変換係数は、次いで量子化され得る。量子化変換係数は、最初は2次元アレイで構成され、変換係数の1次元ベクトルを生成するために走査され得、なお一層の圧縮を達成するために、エントロピー符号化が適用され得る。
[0005]スケーラブルビデオコード化(SVC)は、参照レイヤ(RL:reference layer)と呼ばれることがあるベースレイヤ(BL:base layer)と、1つ又は複数のスケーラブル拡張レイヤ(EL:enhancement layer)とが使用されるビデオコード化を指す。SVCでは、ベースレイヤは、ベースレベルの品質でビデオデータを搬送することができる。1つ又は複数の拡張レイヤは、例えば、より高い空間レベル、時間レベル、及び/又は信号対雑音(SNR:signal-to-noise)レベルをサポートするために追加のビデオデータを搬送することができる。拡張レイヤは、前に符号化されたレイヤに対して定義され得る。例えば、最下位レイヤはBLとして働き得、最上位レイヤはELとして働き得る。中間レイヤは、EL又はRLのいずれか、又はその両方として働き得る。例えば、中間にあるレイヤは、ベースレイヤ又は介在拡張レイヤ(intervening enhancement layer)など、それの下のレイヤのためのELであり、同時に、それの上の1つ又は複数の拡張レイヤのためのRLとして働き得る。同様に、HEVC規格のマルチビュー又は3D拡張では、複数のビューがあり得、1つのビューの情報は、別のビューの情報(例えば、動き推定、動きベクトル予測及び/又は他の冗長)をコード化(例えば、符号化又は復号)するために利用され得る。
[0006]SVCでは、拡張レイヤ中の現在ブロックが、ベースレイヤの画素情報を使用して予測され得る。例えば、イントラBLモードと呼ばれる拡張レイヤのためのコード化モードでは、拡張レイヤ中の現在ブロックのテクスチャ(例えば、画素又はサンプル値)は、ベースレイヤ中の同一位置配置ブロック(co-located block)のテクスチャを使用して予測され得る(本開示で使用する「同一位置配置(co-located)」という用語は、現在ブロック、例えば、現在予測されているブロックと同じピクチャに対応する、別のレイヤ中のブロックを指すことがある)。従って、現在ブロックのテクスチャを送信するのではなく、ビデオエンコーダは、現在ブロックのテクスチャと同一位置配置ベースレイヤブロックのテクスチャとの間の差(例えば、残差)のみを送信することができる。
[0007]しかしながら、空間スケーラビリティ及びビット深度スケーラビリティなどの幾つかのスケーラビリティ方式の場合、ベースレイヤ画素情報は、拡張レイヤ画素情報を予測するために使用される前に変更される必要があり得る。例えば、空間スケーラビリティでは、ベースレイヤ画素情報は、拡張レイヤ画素情報を予測するために使用される前に(例えば、解像度比に従って)アップサンプリングされる必要があり得、ビット深度スケーラビリティでは、ベースレイヤ画素情報は、拡張レイヤ画素情報を予測するために使用される前にビット深度変換を受ける(例えば、ビット深度差だけビットシフトされる)必要があり得る。空間スケーラビリティとビット深度スケーラビリティとが両方とも存在するとき、ベースレイヤ画素情報は、拡張レイヤ画素情報を予測するために使用される前に、アップサンプリングすることと、異なるビット深度に変換することの両方が行われる必要があり得る。しかしながら、2つの別個のプロセス中でアップサンプリングとビット深度変換とを実行することはコード化効率及び/又は予測精度の低下(例えば、丸め誤差)を生じ得る。従って、アップサンプリングプロセスとビット深度変換プロセスとを単段プロセス(single-stage process)に組み合わせることによって、コード化効率は改善され得、計算複雑さは低減され得る。
[0008]本開示のシステム、方法及び装置は、それぞれ幾つかの発明的態様を有し、それらのうちの単一の態様が、本明細書で開示する望ましい属性を単独で担当するとは限らない。
[0009]一実施形態では、ビデオ情報をコード化(例えば、符号化又は復号)するように構成された装置は、メモリユニットと、メモリユニットと通信しているプロセッサとを含む。メモリユニットは、参照レイヤ(RL)と拡張レイヤ(EL)とに関連付けられたビデオ情報を記憶するように構成され、ELはELビデオ単位を備え、RLは、ELビデオ単位に対応するRLビデオ単位を備える。プロセッサは、ELビデオ単位の予測された画素情報を決定し、予測された画素情報を使用してELビデオ単位を決定するために、単一の合成プロセスにおいてRLビデオ単位の画素情報に対してアップサンプリング及びビット深度変換を実行するように構成される。
[0010]一実施形態では、ビデオ情報をコード化(例えば、符号化又は復号)する方法は、参照レイヤ(RL)と拡張レイヤ(EL)とに関連付けられたビデオ情報を記憶することと、ELがELビデオ単位を備え、RLが、ELビデオ単位に対応するRLビデオ単位を備える、ELビデオ単位の予測された画素情報を決定するために、単一の合成プロセスにおいてRLビデオ単位の画素情報に対してアップサンプリング及びビット深度変換を実行することと、予測された画素情報を使用してELビデオ単位を決定することとを備える。
[0011]一実施形態では、非一時的コンピュータ可読媒体は、実行されたとき、装置にプロセスを実行させるコードを備える。プロセスは、参照レイヤと拡張レイヤ(EL)とに関連付けられたビデオ情報を記憶することと、ELがELビデオ単位を備え、RLが、ELビデオ単位に対応するRLビデオ単位を備える、ELビデオ単位の予測された画素情報を決定するために、単一の合成プロセスにおいてRLビデオ単位の画素情報に対してアップサンプリング及びビット深度変換を実行することと、予測された画素情報を使用してELビデオ単位を決定することとを備える。
[0012]一実施形態では、ビデオ情報をコード化するように構成されたビデオコード化機器は、参照レイヤ(RL)と拡張レイヤ(EL)とに関連付けられたビデオ情報を記憶するための手段と、ELがELビデオ単位を備え、RLが、ELビデオ単位に対応するRLビデオ単位を備える、ELビデオ単位の予測された画素情報を決定するために、単一の合成プロセスにおいてRLビデオ単位の画素情報に対してアップサンプリング及びビット深度変換を実行するための手段と、予測された画素情報を使用してELビデオ単位を決定するための手段とを備える。
[0013]本開示で説明する態様による技法を利用し得るビデオ符号化及び復号システムの一例を示すブロック図。 [0014]本開示で説明する態様による技法を実装し得るビデオエンコーダの一例を示すブロック図。 [0015]本開示で説明する態様による技法を実装し得るビデオエンコーダの一例を示すブロック図。 [0016]本開示で説明する態様による技法を実装し得るビデオデコーダの一例を示すブロック図。 [0017]本開示で説明する態様による技法を実装し得るビデオデコーダの一例を示すブロック図。 [0018]異なる次元におけるSVCスケーラビリティを示す概念図。 [0019]SVCビットストリームの例示的な構造を示す概念図。 [0020]SVCビットストリーム中のアクセス単位を示す概念図。 [0021]本開示の一実施形態による、レイヤ間予測(inter-layer prediction)の例を示す概念図。 [0022]本開示の一実施形態による、ビデオ情報をコード化する方法を示すフローチャート。 [0023]本開示の別の実施形態による、ビデオ情報をコード化する方法を示すフローチャート。
[0024]本明細書で説明する幾つかの実施形態は、HEVC(高効率ビデオコード化)など、高度ビデオコーデック(advanced video codecs)のコンテキストにおけるスケーラブルビデオコード化のためのレイヤ間予測に関する。より詳細には、本開示は、HEVCのスケーラブルビデオコード化(SVC)拡張におけるレイヤ間予測の性能の改善のためのシステム及び方法に関する。
[0025]以下の説明では、幾つかの実施形態に関係するH.264/AVC技法について説明し、HEVC規格及び関係する技法についても説明する。幾つかの実施形態について、HEVC及び/又はH.264規格のコンテキストにおいて本明細書で説明するが、本明細書で開示するシステム及び方法が任意の好適なビデオコード化規格に適用可能であり得ることを、当業者は諒解されよう。例えば、本明細書で開示する実施形態は、以下の規格、即ち、ITU−T H.261、ISO/IEC MPEG−1 Visual、ITU−T H.262又はISO/IEC MPEG−2 Visual、ITU−T H.263、ISO/IEC MPEG−4 Visual、及びそれのスケーラブルビデオコード化(SVC)拡張とマルチビュービデオコード化(MVC)拡張とを含む、(ISO/IEC MPEG−4 AVCとしても知られる)ITU−T H.264のうちの1つ又は複数に適用可能であり得る。
[0026]HEVCは、概して、多くの点で、前のビデオコード化規格のフレームワークに従う。HEVCにおける予測の単位は、幾つかの前のビデオコード化規格における単位(例えば、マクロブロック)とは異なる。事実上、マクロブロックの概念は、幾つかの前のビデオコード化規格において理解されているように、HEVC中に存在しない。マクロブロックは、考えられる利益の中でも、高いフレキシビリティを与え得る、4分木方式に基づく階層構造と置き換えられ得る。例えば、HEVC方式内で、3つのタイプのブロック、コード化単位(CU:Coding Unit)、予測単位(PU:Prediction Unit)、及び変換単位(TU:Transform Unit)が定義される。CUは領域分割の基本単位を指し得る。CUはマクロブロックの概念に類似すると見なされ得るが、それは、最大サイズを制限せず、コンテンツ適応性を改善するために4つの等しいサイズのCUへの再帰的分割を可能にし得る。PUはインター/イントラ予測の基本単位と見なされ得、それは、不規則な画像パターンを効果的にコード化するために、単一のPU中に複数の任意の形状区分を含んでいることがある。TUは変換の基本単位と見なされ得る。それは、PUとは無関係に定義され得るが、それのサイズは、TUが属するCUに制限され得る。3つの異なる概念へのブロック構造のこの分離は、各々がそれの役割に従って最適化されることを可能にし得、それによりコード化効率が改善され得る。
[0027]単に説明の目的で、本明細書で開示する幾つかの実施形態について、ただ2つのレイヤ(例えば、ベースレイヤなどの下位レベルレイヤ、及び拡張レイヤなどの上位レベルレイヤ)を含む例を用いて説明する。そのような例は、複数のベースレイヤ及び/又は拡張レイヤを含む構成に適用可能であり得ることを理解されたい。更に、説明を簡単にするために、以下の開示は、幾つかの実施形態に関して「フレーム」又は「ブロック」という用語を含む。但し、これらの用語は限定的なものではない。例えば、以下で説明する技法は、ブロック(例えば、CU、PU、TU、マクロブロックなど)、スライス、フレームなど、任意の好適なビデオ単位とともに使用され得る。
ビデオコード化規格
[0028]ビデオ画像、TV画像、静止画像、又はビデオレコーダ若しくはコンピュータによって生成された画像など、デジタル画像は、水平ライン及び垂直ラインで構成された画素又はサンプルからなり得る。単一の画像中の画素の数は一般に数万個である。各画素は、一般に、ルミナンス情報とクロミナンス情報とを含んでいる。圧縮なしに、画像エンコーダから画像デコーダに搬送されるべき情報の量は、リアルタイム画像送信を不可能にするほど非常に大きい。送信されるべき情報の量を低減するために、JPEG、MPEG及びH.263規格など、幾つかの異なる圧縮方法が開発された。
[0029]ビデオコード化規格は、ITU−T H.261と、ISO/IEC MPEG−1 Visualと、ITU−T H.262又はISO/IEC MPEG−2 Visualと、ITU−T H.263と、ISO/IEC MPEG−4 Visualと、それのスケーラブルビデオコード化(SVC)及びマルチビュービデオコード化(MVC)拡張を含む(ISO/IEC MPEG−4 AVCとしても知られる)ITU−T H.264とを含む。
[0030]更に、新しいビデオコード化規格、即ち、高効率ビデオコード化(HEVC)が、ITU−Tビデオコード化エキスパートグループ(VCEG:Video Coding Experts Group)とISO/IECモーションピクチャエキスパートグループ(MPEG:Motion Picture Experts Group)とのジョイントコラボレーションチームオンビデオコード化(JCT−VC:Joint Collaboration Team on Video Coding)によって開発されている。HEVCドラフト10についての完全引用は、文書JCTVC−L1003、Brossら、「High Efficiency Video Coding (HEVC) Text Specification Draft 10」、ITU−T SG16 WP3及びISO/IEC JTC1/SC29/WG11のジョイントコラボレーティブチームオンビデオコード化(JCT−VC:Joint Collaborative Team on Video Coding)、第12回会合:ジュネーブ、スイス、2013年1月14日〜2013年1月23日である。
[0031]添付の図面を参照しながら新規のシステム、装置、及び方法の様々な態様について以下でより十分に説明する。但し、本開示は、多くの異なる形態で実施され得、本開示全体にわたって提示する任意の特定の構造又は機能に限定されるものと解釈されるべきではない。むしろ、これらの態様は、本開示が周到で完全になり、本開示の範囲を当業者に十分に伝えるために与えるものである。本明細書の教示に基づいて、本開示の範囲は、本開示の他の態様とは無関係に実装されるにせよ、本開示の他の態様と組み合わせて実装されるにせよ、本明細書で開示する新規のシステム、装置、及び方法のいかなる態様をもカバーするものであることを、当業者なら諒解されたい。例えば、本明細書に記載される態様をいくつ使用しても、装置は実装され得、又は方法は実施され得る。更に、本開示の範囲は、本明細書に記載する本開示の様々な態様に加えて又はそれらの態様以外に、他の構造、機能、又は構造及び機能を使用して実施されるそのような装置又は方法をカバーするものとする。本明細書で開示するどの態様も請求項の1つ又は複数の要素によって実施され得ることを理解されたい。
[0032]本明細書では特定の態様について説明するが、これらの態様の多くの変形及び置換は本開示の範囲内に入る。好適な態様の幾つかの利益及び利点について説明するが、本開示の範囲は特定の利益、使用、又は目的に限定されるものではない。むしろ、本開示の態様は、様々なワイヤレス技術、システム構成、ネットワーク、及び伝送プロトコルに広く適用可能であるものとし、それらの幾つかを例として、図及び好適な態様についての以下の説明において示す。発明を実施するための形態及び図面は、本開示を限定するものではなく説明するものにすぎず、本開示の範囲は添付の特許請求の範囲及びそれの均等物によって定義される。
[0033]添付の図面は例を示している。添付の図面中の参照番号によって示される要素は、以下の説明における同様の参照番号によって示される要素に対応する。本開示では、序数語(例えば、「第1の」、「第2の」、「第3の」など)で始まる名前を有する要素は、必ずしもそれらの要素が特定の順序を有することを暗示するとは限らない。むしろ、そのような序数語は、同じ又は同様のタイプの異なる要素を指すために使用されるにすぎない。
ビデオコード化システム
[0034]図1は、本開示で説明する態様による技法を利用し得る例示的なビデオコード化システム10を示すブロック図である。本明細書で使用し説明する「ビデオコーダ」という用語は、総称的にビデオエンコーダとビデオデコーダの両方を指す。本開示では、「ビデオコード化」又は「コード化」という用語は、ビデオ符号化とビデオ復号とを総称的に指すことがある。
[0035]図1に示されているように、ビデオコード化システム10は、発信源機器12と宛先機器14とを含む。発信源機器12は符号化ビデオデータを生成する。宛先機器14は、発信源機器12によって生成された符号化ビデオデータを復号し得る。発信源機器12及び宛先機器14は、デスクトップコンピュータ、ノートブック(例えば、ラップトップなど)コンピュータ、タブレットコンピュータ、セットトップボックス、所謂「スマート」フォン、所謂「スマート」パッドなどの電話ハンドセット、テレビジョン、カメラ、表示装置、デジタルメディアプレーヤ、ビデオゲームコンソール、車内コンピュータなどを含む、広範囲にわたる機器を備え得る。幾つかの例では、発信源機器12及び宛先機器14は、ワイヤレス通信のために装備され得る。
[0036]宛先機器14は、チャネル16を介して発信源機器12から符号化ビデオデータを受信し得る。チャネル16は、発信源機器12から宛先機器14に符号化ビデオデータを移動することが可能な任意のタイプの媒体又は機器を備え得る。一例では、チャネル16は、発信源機器12が符号化ビデオデータを宛先機器14にリアルタイムで直接送信することを可能にする通信媒体を備え得る。この例では、発信源機器12は、ワイヤレス通信プロトコルなどの通信規格に従って符号化ビデオデータを変調し得、変調されたビデオデータを宛先機器14に送信し得る。通信媒体は、無線周波数(RF)スペクトル又は1つ又は複数の物理伝送線路など、ワイヤレス通信媒体又はワイヤード通信媒体を備え得る。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、又はインターネットなどのグローバルネットワークなど、パケットベースネットワークの一部を形成し得る。通信媒体は、発信源機器12から宛先機器14への通信を可能にするルータ、スイッチ、基地局、又は他の機器を含み得る。
[0037]別の例では、チャネル16は、発信源機器12によって生成された符号化ビデオデータを記憶する記憶媒体に対応し得る。この例では、宛先機器14は、ディスクアクセス又はカードアクセスを介して記憶媒体にアクセスし得る。記憶媒体は、Blu−ray(登録商標)ディスク、DVD、CD−ROM、フラッシュメモリ、又は符号化ビデオデータを記憶するための他の適切なデジタル記憶媒体など、様々なローカルにアクセスされるデータ記憶媒体を含み得る。更なる例では、チャネル16は、発信源機器12によって生成された符号化ビデオを記憶する、ファイルサーバ又は別の中間記憶機器を含み得る。この例では、宛先機器14は、ストリーミング又はダウンロードを介して、ファイルサーバ又は他の中間記憶装置に記憶された符号化ビデオデータにアクセスし得る。ファイルサーバは、符号化ビデオデータを記憶することと、符号化ビデオデータを宛先機器14に送信することとが可能なタイプのサーバであり得る。例示的なファイルサーバとしては、(例えば、ウェブサイトなどのための)ウェブサーバ、FTPサーバ、ネットワーク接続ストレージ(NAS)機器、及びローカルディスクドライブがある。宛先機器14は、インターネット接続を含む、任意の標準のデータ接続を介して符号化ビデオデータにアクセスし得る。例示的なタイプのデータ接続としては、ファイルサーバに記憶された符号化ビデオデータにアクセスするのに好適である、ワイヤレスチャネル(例えば、Wi−Fi(登録商標)接続など)、ワイヤード接続(例えば、DSL、ケーブルモデムなど)、又はその両方の組合せがあり得る。ファイルサーバからの符号化ビデオデータの送信は、ストリーミング送信、ダウンロード送信、又はその両方の組合せであり得る。
[0038]本開示の技法はワイヤレス適用例又は設定に限定されない。本技法は、オーバージエアテレビジョン放送、ケーブルテレビジョン送信、衛星テレビジョン送信、例えばインターネットを介したストリーミングビデオ送信(例えば、動的適応ストリーミングオーバーHTTP(DASH:dynamic adaptive streaming over HTTP)など)、データ記憶媒体に記憶するためのデジタルビデオの符号化、データ記憶媒体に記憶されたデジタルビデオの復号、又は他の適用例など、様々なマルチメディア適用例のいずれかをサポートするビデオコード化に適用され得る。幾つかの例では、ビデオコード化システム10は、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、及び/又はビデオテレフォニーなどの適用例をサポートするために、一方向又は双方向のビデオ送信をサポートするように構成され得る。
[0039]図1の例では、発信源機器12は、ビデオ発信源18と、ビデオエンコーダ20と、出力インターフェース22とを含む。場合によっては、出力インターフェース22は変調器/復調器(モデム)及び/又は送信機を含み得る。発信源機器12において、ビデオ発信源18は、撮像装置、例えば、ビデオカメラ、以前に撮影されたビデオデータを含んでいるビデオアーカイブ、ビデオコンテンツプロバイダからビデオデータを受信するためのビデオフィードインターフェース、及び/又はビデオデータを生成するためのコンピュータグラフィックスシステムなどの発信源、又はそのような発信源の組合せを含み得る。
[0040]ビデオエンコーダ20は、撮影されたビデオデータ、以前に撮影されたビデオデータ、又はコンピュータ生成されたビデオデータを符号化するように構成され得る。符号化ビデオデータは、発信源機器12の出力インターフェース22を介して宛先機器14に直接送信され得る。符号化ビデオデータはまた、復号及び/又は再生のための宛先機器14による後のアクセスのために記憶媒体又はファイルサーバ上に記憶され得る。
[0041]図1の例では、宛先機器14は、入力インターフェース28と、ビデオデコーダ30と、表示装置32とを含む。場合によっては、入力インターフェース28は受信機及び/又はモデムを含み得る。宛先機器14の入力インターフェース28は、チャネル16を介して符号化ビデオデータを受信する。符号化ビデオデータは、ビデオデータを表す、ビデオエンコーダ20によって生成された様々なシンタックス要素を含み得る。シンタックス要素は、ブロック及び他のコード化単位、例えば、ピクチャグループ(GOP:group of pictures)の特性及び/又は処理を記述し得る。そのようなシンタックス要素は、通信媒体上で送信されるか、記憶媒体上に記憶されるか、又はファイルサーバ上に記憶される符号化ビデオデータとともに含まれ得る。
[0042]表示装置32は、宛先機器14と一体化され得るか又はその外部にあり得る。幾つかの例では、宛先機器14は、一体型表示装置を含み得、また、外部表示装置とインターフェースするように構成され得る。他の例では、宛先機器14は表示装置であり得る。概して、表示装置32は復号ビデオデータをユーザに表示する。表示装置32は、液晶表示器(LCD)、プラズマ表示器、有機発光ダイオード(OLED)表示器、又は別のタイプの表示装置など、様々な表示装置のいずれかを備え得る。
[0043]ビデオエンコーダ20及びビデオデコーダ30は、現在開発中の高効率ビデオコード化(HEVC)規格など、ビデオ圧縮規格に従って動作し得、HEVCテストモデル(HM)に準拠し得る。代替的に、ビデオエンコーダ20及びビデオデコーダ30は、代替的にMPEG−4,Part10,高度ビデオコード化(AVC)と呼ばれるITU−T H.264規格など、他のプロプライエタリ規格又は業界規格、又はそのような規格の拡張に従って動作し得る。但し、本開示の技法は、いかなる特定のコード化規格にも限定されない。ビデオ圧縮規格の他の例としてはMPEG−2及びITU−T H.263がある。
[0044]図1の例には示されていないが、ビデオエンコーダ20及びビデオデコーダ30は、それぞれオーディオエンコーダ及びデコーダと統合され得、適切なMUX−DEMUXユニット、又は他のハードウェア及びソフトウェアを含んで、共通のデータストリーム又は別個のデータストリーム中のオーディオとビデオの両方の符号化を処理し得る。適用可能な場合、幾つかの例では、MUX−DEMUX単位は、ITU H.223マルチプレクサプロトコル、又はユーザデータグラムプロトコル(UDP:user datagram protocol)などの他のプロトコルに準拠し得る。
[0045]この場合も、図1は一例にすぎず、本開示の技法は、符号化機器と復号機器との間のデータ通信を必ずしも含むとは限らないビデオコード化設定(例えば、ビデオ符号化又はビデオ復号)に適用され得る。他の例では、データがローカルメモリから取り出されること、ネットワークを介してストリーミングされることなどが行われ得る。符号化機器は、データを符号化し、メモリに記憶し得、及び/又は、復号機器は、メモリからデータを取り出し、復号し得る。多くの例では、符号化及び復号は、互いに通信しないが、メモリにデータを符号化し、及び/又はメモリからデータを取り出して復号するだけである機器によって実行される。
[0046]ビデオエンコーダ20及びビデオデコーダ30はそれぞれ、1つ又は複数のマイクロプロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、ディスクリート論理、ハードウェアなど、様々な好適な回路のいずれか、又はそれらの任意の組合せとして実装され得る。本技法が部分的にソフトウェアで実装されるとき、機器は、好適な非一時的コンピュータ可読記憶媒体にソフトウェアの命令を記憶し得、1つ又は複数のプロセッサを使用してその命令をハードウェアで実行して、本開示の技法を実行し得る。ビデオエンコーダ20とビデオデコーダ30とは、図1の例では別個の機器において実装されるものとして示されているが、本開示はそのような構成に限定されず、ビデオエンコーダ20とビデオデコーダ30とは同じ機器において実装され得る。ビデオエンコーダ20及びビデオデコーダ30の各々は1つ又は複数のエンコーダ又はデコーダ中に含まれ得、そのいずれも、それぞれの機器において複合エンコーダ/デコーダ(コーデック)の一部として統合され得る。ビデオエンコーダ20及び/又はビデオデコーダ30を含む機器は、集積回路、マイクロプロセッサ、及び/又はセルラー電話などのワイヤレス通信機器を備え得る。
[0047]上記で手短に述べたように、ビデオエンコーダ20はビデオデータを符号化する。ビデオデータは1つ又は複数のピクチャを備え得る。ピクチャの各々は、ビデオの一部を形成する静止画像である。幾つかの事例では、ピクチャはビデオ「フレーム」と呼ばれることがある。ビデオエンコーダ20がビデオデータを符号化するとき、ビデオエンコーダ20はビットストリームを生成し得る。ビットストリームは、ビデオデータのコード化表現を形成するビットのシーケンスを含み得る。ビットストリームはコード化ピクチャと関連データとを含み得る。コード化ピクチャはピクチャのコード化表現である。
[0048]ビットストリームを生成するために、ビデオエンコーダ20は、ビデオデータ中の各ピクチャに対して符号化演算を実行し得る。ビデオエンコーダ20がピクチャに対して符号化演算を実行するとき、ビデオエンコーダ20は、一連のコード化ピクチャと関連データとを生成し得る。関連データは、ビデオパラメータセット(VPS)と、シーケンスパラメータセットと、ピクチャパラメータセットと、適応パラメータセットと、他のシンタックス構造とを含み得る。シーケンスパラメータセット(SPS:sequence parameter set)は、ピクチャの0個以上のシーケンスに適用可能なパラメータを含んでいることがある。ピクチャパラメータセット(PPS:picture parameter set)は、0個以上のピクチャに適用可能なパラメータを含み得る。適応パラメータセット(APS:adaptation parameter set)は、0個以上のピクチャに適用可能なパラメータを含み得る。APS中のパラメータは、PPS中のパラメータよりも変化する可能性が高いパラメータであり得る。
[0049]コード化ピクチャを生成するために、ビデオエンコーダ20は、ピクチャを等しいサイズのビデオブロックに区分し得る。ビデオブロックはサンプルの2次元アレイであり得る。ビデオブロックの各々はツリーブロックに関連付けられる。幾つかの事例では、ツリーブロックは、最大コード化単位(LCU:largest coding unit)と呼ばれることがある。HEVCのツリーブロックは、H.264/AVCなど、以前の規格のマクロブロックに広い意味で類似し得る。しかしながら、ツリーブロックは、必ずしも特定のサイズに限定されるとは限らず、1つ又は複数のコード化単位(CU)を含み得る。ビデオエンコーダ20は、4分木区分(quadtree partitioning)を使用して、ツリーブロックのビデオブロックを、CUに関連付けられたビデオブロックに区分し得、従って「ツリーブロック」という名前がある。
[0050]幾つかの例では、ビデオエンコーダ20はピクチャを複数のスライスに区分し得る。スライスの各々は整数個のCUを含み得る。幾つかの事例では、スライスは整数個のツリーブロックを備える。他の事例では、スライスの境界はツリーブロック内にあり得る。
[0051]ピクチャに対して符号化演算を実行することの一部として、ビデオエンコーダ20は、ピクチャの各スライスに対して符号化演算を実行し得る。ビデオエンコーダ20がスライスに対して符号化演算を実行するとき、ビデオエンコーダ20は、スライスに関連付けられた符号化データを生成し得る。スライスに関連付けられた符号化データは「コード化スライス」と呼ばれることがある。
[0052]コード化スライスを生成するために、ビデオエンコーダ20は、スライス中の各ツリーブロックに対して符号化演算を実行し得る。ビデオエンコーダ20がツリーブロックに対して符号化演算を実行するとき、ビデオエンコーダ20はコード化ツリーブロックを生成し得る。コード化ツリーブロックは、ツリーブロックの符号化バージョンを表すデータを備え得る。
[0053]ビデオエンコーダ20がコード化スライスを生成するとき、ビデオエンコーダ20は、ラスタ走査順序に従って、スライス中のツリーブロックに対して符号化演算を実行し得る(例えば、そのツリーブロックを符号化し得る)。例えば、ビデオエンコーダ20は、スライス中のツリーブロックの一番上の行にわたって左から右に進み、次いでツリーブロックの次の下の行にわたって左から右に進み、以下同様に進む順序で、ビデオエンコーダ20がスライス中のツリーブロックの各々を符号化するまで、スライスのツリーブロックを符号化し得る。
[0054]ラスタ走査順序に従ってツリーブロックを符号化した結果として、所与のツリーブロックの上及び左のツリーブロックは符号化されていることがあるが、所与のツリーブロックの下及び右のツリーブロックはまだ符号化されていない。従って、ビデオエンコーダ20は、所与のツリーブロックを符号化するとき、所与のツリーブロックの上及び左のツリーブロックを符号化することによって生成された情報にアクセスすることが可能であり得る。しかしながら、ビデオエンコーダ20は、所与のツリーブロックを符号化するとき、所与のツリーブロックの下及び右のツリーブロックを符号化することによって生成された情報にアクセスすることができないことがある。
[0055]コード化ツリーブロックを生成するために、ビデオエンコーダ20は、ツリーブロックのビデオブロックに対して4分木区分を再帰的に実行して、ビデオブロックを徐々により小さいビデオブロックに分割し得る。より小さいビデオブロックの各々は異なるCUに関連付けられ得る。例えば、ビデオエンコーダ20は、ツリーブロックのビデオブロックを4つの等しいサイズのサブブロックに区分し、サブブロックのうちの1つ又は複数を、4つの等しいサイズのサブサブブロックに区分し得、以下同様である。区分されたCUは、それのビデオブロックが、他のCUに関連付けられたビデオブロックに区分された、CUであり得る。区分されていないCUは、それのビデオブロックが、他のCUに関連付けられたビデオブロックに区分されていない、CUであり得る。
[0056]ビットストリーム中の1つ又は複数のシンタックス要素は、ビデオエンコーダ20がツリーブロックのビデオブロックを区分し得る最大の回数を示し得る。CUのビデオブロックは形状が正方形であり得る。CUのビデオブロックのサイズ(例えば、CUのサイズ)は、8×8画素から、最大64×64以上の画素をもつツリーブロックのビデオブロックのサイズ(例えば、ツリーブロックのサイズ)までに及び得る。
[0057]ビデオエンコーダ20は、z走査順序に従って、ツリーブロックの各CUに対して符号化演算を実行し得る(例えば、各CUを符号化し得る)。言い換えれば、ビデオエンコーダ20は、左上のCUと、右上のCUと、左下のCUと、次いで右下のCUとを、その順序で符号化し得る。ビデオエンコーダ20が、区分されたCUに対して符号化演算を実行するとき、ビデオエンコーダ20は、z走査順序に従って、区分されたCUのビデオブロックのサブブロックに関連付けられたCUを符号化し得る。言い換えれば、ビデオエンコーダ20は、左上のサブブロックに関連付けられたCUと、右上のサブブロックに関連付けられたCUと、左下のサブブロックに関連付けられたCUと、次いで右下のサブブロックに関連付けられたCUとを、その順序で符号化し得る。
[0058]z走査順序に従ってツリーブロックのCUを符号化した結果として、所与のCUの上、左上、右上、左、及び左下のCUは符号化されていることがある。所与のCUの下及び右のCUはまだ符号化されていない。従って、ビデオエンコーダ20は、所与のCUを符号化するとき、所与のCUに隣接する幾つかのCUを符号化することによって生成された情報にアクセスすることが可能であり得る。しかしながら、ビデオエンコーダ20は、所与のCUを符号化するとき、所与のCUに隣接する他のCUを符号化することによって生成された情報にアクセスすることができないことがある。
[0059]ビデオエンコーダ20が、区分されていないCUを符号化するとき、ビデオエンコーダ20は、CUのために1つ又は複数の予測単位(PU)を生成し得る。CUのPUの各々は、CUのビデオブロック内の異なるビデオブロックに関連付けられ得る。ビデオエンコーダ20は、CUの各PUのための予測ビデオブロックを生成し得る。PUの予測ビデオブロックはサンプルのブロックであり得る。ビデオエンコーダ20は、イントラ予測又はインター予測を使用して、PUのための予測ビデオブロックを生成し得る。
[0060]ビデオエンコーダ20がイントラ予測を使用してPUの予測ビデオブロックを生成するとき、ビデオエンコーダ20は、PUに関連付けられたピクチャの復号サンプルに基づいて、PUの予測ビデオブロックを生成し得る。ビデオエンコーダ20がイントラ予測を使用してCUのPUの予測ビデオブロックを生成する場合、CUはイントラ予測されたCUである。ビデオエンコーダ20がインター予測を使用してPUの予測ビデオブロックを生成するとき、ビデオエンコーダ20は、PUに関連付けられたピクチャ以外の1つ又は複数のピクチャの復号サンプルに基づいて、PUの予測ビデオブロックを生成し得る。ビデオエンコーダ20がインター予測を使用してCUのPUの予測ビデオブロックを生成する場合、CUはインター予測されたCUである。
[0061]更に、ビデオエンコーダ20がインター予測を使用してPUのための予測ビデオブロックを生成するとき、ビデオエンコーダ20はPUの動き情報を生成し得る。PUの動き情報は、PUの1つ又は複数の参照ブロックを示し得る。PUの各参照ブロックは参照ピクチャ内のビデオブロックであり得る。参照ピクチャはPUに関連付けられたピクチャ以外のピクチャであり得る。幾つかの事例では、PUの参照ブロックはPUの「参照サンプル」と呼ばれることもある。ビデオエンコーダ20は、PUの参照ブロックに基づいて、PUのための予測ビデオブロックを生成し得る。
[0062]ビデオエンコーダ20がCUの1つ又は複数のPUのための予測ビデオブロックを生成した後、ビデオエンコーダ20は、CUのPUのための予測ビデオブロックに基づいて、CUの残差データを生成し得る。CUの残差データは、CUのPUのための予測ビデオブロック中のサンプルと、CUの元のビデオブロック中のサンプルとの間の差を示し得る。
[0063]更に、区分されていないCUに対して符号化演算を実行することの一部として、ビデオエンコーダ20は、CUの残差データに対して再帰的な4分木区分を実行して、CUの残差データを、CUの変換単位(TU)に関連付けられた残差データの1つ又は複数のブロック(例えば、残差ビデオブロック)に区分し得る。CUの各TUは異なる残差ビデオブロックに関連付けられ得る。
[0064]ビデオコーダ20は、TUに関連付けられた残差ビデオブロックに1つ又は複数の変換を適用して、TUに関連付けられた変換係数ブロック(例えば、変換係数のブロック)を生成し得る。概念的に、変換係数ブロックは変換係数の2次元(2D)行列であり得る。
[0065]変換係数ブロックを生成した後、ビデオエンコーダ20は、変換係数ブロックに対して量子化プロセスを実行し得る。量子化は、概して、変換係数を表すために使用されるデータの量をできるだけ低減するために変換係数が量子化され、更なる圧縮を実現する処理を指す。量子化プロセスは、変換係数の一部又は全部に関連付けられたビット深度を低減し得る。例えば、量子化中にnビットの変換係数がmビットの変換係数に切り捨てられることがあり、ここで、nはmよりも大きい。
[0066]ビデオエンコーダ20は、各CUを量子化パラメータ(QP:quantization parameter)値に関連付け得る。CUに関連付けられたQP値は、ビデオエンコーダ20が、CUに関連付けられた変換係数ブロックをどのように量子化するかを決定し得る。ビデオエンコーダ20は、CUに関連付けられたQP値を調整することによって、CUに関連付けられた変換係数ブロックに適用される量子化の程度を調整し得る。
[0067]ビデオエンコーダ20が変換係数ブロックを量子化した後、ビデオエンコーダ20は、量子化された変換係数ブロック中で変換係数を表すシンタックス要素のセットを生成し得る。ビデオエンコーダ20は、これらのシンタックス要素のうちの幾つかに、コンテキスト適応型バイナリ算術コード化(CABAC:Context Adaptive Binary Arithmetic Coding)演算などのエントロピー符号化演算を適用し得る。コンテンツ適応型可変長コード化(CAVLC:content adaptive variable length coding)、確率間隔区分エントロピー(PIPE:probability interval partitioning entropy)コード化、又は他のバイナリ算術コード化など、他のエントロピーコード化技法も使用され得る。
[0068]ビデオエンコーダ20によって生成されるビットストリームは、一連のネットワークアブストラクションレイヤ(NAL:Network Abstraction Layer)単位を含み得る。NAL単位の各々は、NAL単位中のデータのタイプの指示と、データを含んでいるバイトとを含んでいるシンタックス構造であり得る。例えば、NAL単位は、ビデオパラメータセット、シーケンスパラメータセット、ピクチャパラメータセット、コード化スライス、補足拡張情報(SEI:supplemental enhancement information)、アクセス単位区切り文字、フィラーデータ、又は別のタイプのデータを表すデータを含み得る。NAL単位中のデータは様々なシンタックス構造を含み得る。
[0069]ビデオデコーダ30は、ビデオエンコーダ20によって生成されたビットストリームを受信し得る。ビットストリームは、ビデオエンコーダ20によって符号化されたビデオデータのコード化表現を含み得る。ビデオデコーダ30がビットストリームを受信するとき、ビデオデコーダ30は、ビットストリームに対して構文解析演算(parsing operation)を実行し得る。ビデオデコーダ30が構文解析演算を実行するとき、ビデオデコーダ30は、ビットストリームからシンタックス要素を抽出し得る。ビデオデコーダ30は、ビットストリームから抽出されたシンタックス要素に基づいて、ビデオデータのピクチャを再構成し得る。シンタックス要素に基づいてビデオデータを再構成するためのプロセスは、一般に、シンタックス要素を生成するためにビデオエンコーダ20によって実行されるプロセスとは逆であり得る。
[0070]ビデオデコーダ30がCUに関連付けられたシンタックス要素を抽出した後、ビデオデコーダ30は、シンタックス要素に基づいて、CUのPUのための予測ビデオブロックを生成し得る。更に、ビデオデコーダ30は、CUのTUに関連付けられた変換係数ブロックを逆量子化し得る。ビデオデコーダ30は、変換係数ブロックに対して逆変換を実行して、CUのTUに関連付けられた残差ビデオブロックを再構成し得る。予測ビデオブロックを生成し、残差ビデオブロックを再構成した後、ビデオデコーダ30は、予測ビデオブロックと残差ビデオブロックとに基づいて、CUのビデオブロックを再構成し得る。このようにして、ビデオデコーダ30は、ビットストリーム中のシンタックス要素に基づいて、CUのビデオブロックを再構成し得る。
ビデオエンコーダ
[0071]図2Aは、本開示で説明する態様による技法を実装し得るビデオエンコーダの一例を示すブロック図である。ビデオエンコーダ20は、HEVCの場合など、ビデオフレームの単一のレイヤを処理するように構成され得る。更に、ビデオエンコーダ20は、本開示の技法のいずれか又は全てを実行するように構成され得る。一例として、予測処理ユニット100は、本開示で説明する技法のいずれか又は全てを実行するように構成され得る。別の実施形態では、ビデオエンコーダ20は、本開示で説明する技法のいずれか又は全てを実行するように構成された随意のレイヤ間予測ユニット128を含む。他の実施形態では、レイヤ間予測は予測処理ユニット100(例えば、インター予測ユニット121及び/又はイントラ予測ユニット126)によって実行され得、その場合、レイヤ間予測ユニット128は省略され得る。但し、本開示の態様はそのように限定されない。幾つかの例では、本開示で説明する技法は、ビデオエンコーダ20の様々な構成要素間で共有され得る。幾つかの例では、追加又は代替として、プロセッサ(図示せず)が、本開示で説明する技法のいずれか又は全てを実行するように構成され得る。
[0072]説明の目的で、本開示では、HEVCコード化のコンテキストにおいてビデオエンコーダ20について説明する。しかしながら、本開示の技法は、他のコード化規格又は方法にも適用可能であり得る。図2Aに示された例はシングルレイヤコーデックのためのものである。しかしながら、図2Bに関して更に説明するように、ビデオエンコーダ20の一部又は全部はマルチレイヤコーデックの処理のために複製され得る。
[0073]ビデオエンコーダ20は、ビデオスライス内のビデオブロックのイントラコード化及びインターコード化を実行し得る。イントラコード化は、所与のビデオフレーム又はピクチャ内のビデオの空間冗長性を低減又は除去するために空間予測に依拠する。インターコード化は、ビデオシーケンスの隣接フレーム又はピクチャ内のビデオの時間的冗長性を低減又は除去するために時間的予測に依拠する。イントラモード(Iモード)は、幾つかの空間ベースのコード化モードのいずれかを指し得る。単方向予測(Pモード)又は双方向予測(Bモード)などのインターモードは、幾つかの時間ベースのコード化モードのいずれかを指し得る。
[0074]図2Aの例では、ビデオエンコーダ20は複数の機能構成要素を含む。ビデオエンコーダ20の機能構成要素は、予測処理ユニット100と、残差生成ユニット102と、変換処理ユニット104と、量子化ユニット106と、逆量子化ユニット108と、逆変換ユニット110と、再構成ユニット112と、フィルタユニット113と、復号ピクチャバッファ114と、エントロピー符号化ユニット116とを含む。予測処理ユニット100は、インター予測ユニット121と、動き推定ユニット122と、動き補償ユニット124と、イントラ予測ユニット126と、レイヤ間予測ユニット128とを含む。他の例では、ビデオエンコーダ20は、より多数の、より少数の、又は異なる機能構成要素を含み得る。更に、動き推定ユニット122と動き補償ユニット124とは、高度に統合され得るが、図2Aの例では、説明の目的で別々に表されている。
[0075]ビデオエンコーダ20はビデオデータを受信し得る。ビデオエンコーダ20は、様々な発信源からビデオデータを受信し得る。例えば、ビデオエンコーダ20は、ビデオ発信源18(図1)又は別の発信源からビデオデータを受信し得る。ビデオデータは一連のピクチャを表し得る。ビデオデータを符号化するために、ビデオエンコーダ20は、ピクチャの各々に対して符号化演算を実行し得る。ピクチャに対して符号化演算を実行することの一部として、ビデオエンコーダ20は、ピクチャの各スライスに対して符号化演算を実行し得る。スライスに対して符号化演算を実行することの一部として、ビデオエンコーダ20は、スライス中のツリーブロックに対して符号化演算を実行し得る。
[0076]ツリーブロックに対して符号化演算を実行することの一部として、予測処理ユニット100は、ツリーブロックのビデオブロックに対して4分木区分を実行して、ビデオブロックを徐々により小さいビデオブロックに分割し得る。より小さいビデオブロックの各々は、異なるCUに関連付けられ得る。例えば、予測処理ユニット100は、ツリーブロックのビデオブロックを4つの等しいサイズのサブブロックに区分し、サブブロックの1つ又は複数を、4つの等しいサイズのサブサブブロックに区分し得、以下同様である。
[0077]CUに関連付けられたビデオブロックのサイズは、8×8サンプルから、最大64×64以上のサンプルをもつツリーブロックのサイズまでに及び得る。本開示では、「N×N(NxN)」及び「N×N(N by N)」は、垂直寸法及び水平寸法に関するビデオブロックのサンプル寸法、例えば、16×16(16x16)サンプル又は16×16(16 by 16)サンプルを指すために互換的に使用され得る。概して、16×16ビデオブロックは、垂直方向に16個のサンプルを有し(y=16)、水平方向に16個のサンプルを有する(x=16)。同様に、N×Nブロックは、概して、垂直方向にN個のサンプルを有し、水平方向にN個のサンプルを有し、ここで、Nは非負整数値を表す。
[0078]更に、ツリーブロックに対して符号化演算を実行することの一部として、予測処理ユニット100は、ツリーブロック用の階層的な4分木データ構造を生成し得る。例えば、ツリーブロックは、4分木データ構造のルートノードに対応し得る。予測処理ユニット100が、ツリーブロックのビデオブロックを4つのサブブロックに区分する場合、ルートノードは、4分木データ構造中に4つの子ノードを有する。子ノードの各々は、サブブロックのうちの1つに関連付けられたCUに対応する。予測処理ユニット100が、サブブロックのうちの1つを4つのサブサブブロックに区分する場合、サブブロックに関連付けられたCUに対応するノードは、サブサブブロックのうちの1つに関連付けられたCUに各々が対応する、4つの子ノードを有し得る。
[0079]4分木データ構造の各ノードは、対応するツリーブロック又はCUのシンタックスデータ(例えば、シンタックス要素)を含み得る。例えば、4分木の中のノードは、そのノードに対応するCUのビデオブロックが4つのサブブロックに区分される(例えば、分割される)かどうかを示すスプリットフラグを含み得る。CUのためのシンタックス要素は、再帰的に定義され得、CUのビデオブロックがサブブロックに分割されるかどうかに依存し得る。それのビデオブロックが区分されていないCUは、4分木データ構造におけるリーフノードに対応し得る。コード化ツリーブロックは、対応するツリーブロック用の4分木データ構造に基づくデータを含み得る。
[0080]ビデオエンコーダ20は、ツリーブロックの区分されていない各CUに対して符号化演算を実行し得る。ビデオエンコーダ20が、区分されていないCUに対して符号化演算を実行するとき、ビデオエンコーダ20は、区分されていないCUの符号化表現を表すデータを生成する。
[0081]CUに対して符号化演算を実行することの一部として、予測処理ユニット100は、CUの1つ又は複数のPUの中で、CUのビデオブロックを区分し得る。ビデオエンコーダ20及びビデオデコーダ30は、様々なPUサイズをサポートし得る。特定のCUのサイズが2N×2Nであると仮定すると、ビデオエンコーダ20及びビデオデコーダ30は、2N×2N又はN×NのPUサイズと、2N×2N、2N×N、N×2N、N×N、2N×nU、nL×2N、nR×2N、又は同様の対称PUサイズでのインター予測とをサポートし得る。ビデオエンコーダ20及びビデオデコーダ30は、2N×nU、2N×nD、nL×2N、及びnR×2NのPUサイズに対する非対称区分をもサポートし得る。幾つかの例では、予測処理ユニット100は、CUのビデオブロックの辺に直角に接触しない境界に沿って、CUのPUの間でCUのビデオブロックを区分するように、幾何学的な区分化を実行し得る。
[0082]インター予測ユニット121はCUの各PUに対してインター予測を実行し得る。インター予測は時間圧縮を実現し得る。PUに対してインター予測を実行するために、動き推定ユニット122はPUの動き情報を生成し得る。動き補償ユニット124は、動き情報と、CUに関連付けられたピクチャ以外のピクチャ(例えば、参照ピクチャ)の復号サンプルと基づくPUのための予測ビデオブロックを生成し得る。本開示では、動き補償ユニット124によって生成された予測ビデオブロックは、インター予測ビデオブロックと呼ばれることがある。
[0083]スライスは、Iスライス、Pスライス、又はBスライスであり得る。動き推定ユニット122及び動き補償ユニット124は、PUがIスライス中にあるか、Pスライス中にあるか、Bスライス中にあるかに応じて、CUのPUに対して異なる演算を実行し得る。Iスライス中では、全てのPUがイントラ予測される。従って、PUがIスライス中にある場合、動き推定ユニット122及び動き補償ユニット124は、PUに対してインター予測を実行しない。
[0084]PUがPスライス中にある場合、PUを含んでいるピクチャは、「リスト0」と呼ばれる参照ピクチャのリストに関連付けられる。リスト0中の参照ピクチャの各々は、他のピクチャのインター予測に使用され得るサンプルを含んでいる。動き推定ユニット122が、Pスライス中のPUに関して動き推定演算を実行するとき、動き推定ユニット122は、PUのための参照ブロックについて、リスト0中の参照ピクチャを探索し得る。PUの参照ブロックは、PUのビデオブロック中のサンプルに最も密接に対応するサンプルのセット、例えば、サンプルのブロックであり得る。動き推定ユニット122は、様々なメトリクスを使用して、参照ピクチャ中のサンプルのセットがどの程度密接にPUのビデオブロック中のサンプルに対応するかを決定し得る。例えば、動き推定ユニット122は、絶対差分和(SAD:sum of absolute difference)、2乗差分和(SSD:sum of square difference)、又は他の差分メトリックによって、参照ピクチャ中のサンプルのセットがどの程度密接にPUのビデオブロック中のサンプルに対応するかを決定し得る。
[0085]Pスライス中のPUの参照ブロックを識別した後、動き推定ユニット122は、参照ブロックを含んでいる、リスト0中の参照ピクチャを示す参照インデックスと、PUと参照ブロックとの間の空間変位を示す動きベクトルとを生成し得る。様々な例において、動き推定ユニット122は動きベクトルを異なる精度に生成し得る。例えば、動き推定ユニット122は、1/4サンプル精度、1/8サンプル精度、又は他の分数のサンプル精度で動きベクトルを生成し得る。分数のサンプル精度の場合、参照ブロック値は、参照ピクチャ中の整数位置のサンプル値から補間され得る。動き推定ユニット122は、PUの動き情報として、参照インデックスと動きベクトルとを出力し得る。動き補償ユニット124は、PUの動き情報によって識別された参照ブロックに基づいて、PUの予測ビデオブロックを生成し得る。
[0086]PUがBスライス中にある場合、PUを含んでいるピクチャは、「リスト0」及び「リスト1」と呼ばれる参照ピクチャの2つのリストに関連付けられ得る。幾つかの例では、Bスライスを含んでいるピクチャは、リスト0とリスト1の組合せである、リストの組合せに関連付けられ得る。
[0087]更に、PUがBスライス中にある場合、動き推定ユニット122は、PUについての単方向予測又は双方向予測を実行し得る。動き推定ユニット122が、PUについての単方向予測を実行するとき、動き推定ユニット122は、PUのための参照ブロックについて、リスト0又はリスト1の参照ピクチャを探索し得る。動き推定ユニット122は、次いで、参照ブロックを含んでいる、リスト0又はリスト1中の参照ピクチャを示す参照インデックスと、PUと参照ブロックとの間の空間変位を示す動きベクトルとを生成し得る。動き推定ユニット122は、PUの動き情報として、参照インデックスと、予測方向インジケータと、動きベクトルとを出力し得る。予測方向インジケータは、参照インデックスが、リスト0中の参照ピクチャを示すか、リスト1中の参照ピクチャを示すかを示し得る。動き補償ユニット124は、PUの動き情報によって示された参照ブロックに基づいて、PUの予測ビデオブロックを生成し得る。
[0088]動き推定ユニット122が、PUについての双方向予測を実行するとき、動き推定ユニット122は、PUのための参照ブロックについて、リスト0中の参照ピクチャを探索し得、また、PUのための別の参照ブロックについて、リスト1中の参照ピクチャを探索し得る。動き推定ユニット122は、次いで、参照ブロックを含んでいる、リスト0及びリスト1中の参照ピクチャを示す参照インデックスと、参照ブロックとPUの間の空間変位を示す動きベクトルとを生成し得る。動き推定ユニット122は、PUの動き情報としてPUの参照インデックスと動きベクトルとを出力し得る。動き補償ユニット124は、PUの動き情報によって示された参照ブロックに基づいて、PUの予測ビデオブロックを生成し得る。
[0089]幾つかの例では、動き推定ユニット122は、PUの動き情報のフルセットをエントロピー符号化ユニット116に出力しない。そうではなく、動き推定ユニット122は、別のPUの動き情報を参照して、PUの動き情報を信号伝達(signal)し得る。例えば、動き推定ユニット122は、PUの動き情報が、隣接PUの動き情報と十分に類似していると決定し得る。この例では、動き推定ユニット122は、PUに関連付けられたシンタックス構造において、PUが隣接PUと同じ動き情報を有することをビデオデコーダ30に示す値を示し得る。別の例では、動き推定ユニット122は、PUに関連付けられたシンタックス構造において、隣接PUと動きベクトル差分(MVD:motion vector difference)とを識別し得る。動きベクトル差分は、PUの動きベクトルと、示される隣接PUの動きベクトルとの間の差分を示す。ビデオデコーダ30は、示される隣接PUの動きベクトルと、動きベクトル差分とを使用して、PUの動きベクトルを決定し得る。第2のPUの動き情報を信号伝達するときに第1のPUの動き情報を参照することによって、ビデオエンコーダ20は、より少数のビットを使用して、第2のPUの動き情報を信号伝達することが可能であり得る。
[0090]図8及び図9に関して以下で更に説明するように、予測処理ユニット100は、図8及び図9に示されている方法を実行することによってPU(又は他の拡張レイヤブロック又はビデオ単位)をコード化(例えば、符号化又は復号)するように構成され得る。例えば、(例えば、動き推定ユニット122及び/又は動き補償ユニット124を介した)インター予測ユニット121、イントラ予測ユニット126、又はレイヤ間予測ユニット128は、一緒に又は別々に、図8及び図9に示されている方法を実行するように構成され得る。
[0091]CUに対して符号化演算を実行することの一部として、イントラ予測ユニット126は、CUのPUに対してイントラ予測を実行し得る。イントラ予測は空間圧縮を実現し得る。イントラ予測ユニット126がPUに対してイントラ予測を実行するとき、イントラ予測ユニット126は、同じピクチャ中の他のPUの復号サンプルに基づいて、PUの予測データを生成し得る。PUの予測データは、予測ビデオブロックと様々なシンタックス要素とを含み得る。イントラ予測ユニット126は、Iスライス、Pスライス、及びBスライス中のPUに対してイントラ予測を実行し得る。
[0092]PUに対してイントラ予測を実行するために、イントラ予測ユニット126は、複数のイントラ予測モードを使用して、PUの予測データの複数のセットを生成し得る。イントラ予測ユニット126が、イントラ予測モードを使用してPUの予測データのセットを生成するとき、イントラ予測ユニット126は、イントラ予測モードに関連付けられた方向及び/又は勾配で、隣接PUのビデオブロックからPUのビデオブロックにわたって、サンプルを延ばし得る。隣接PUは、PU、CU、及びツリーブロックについて左から右、上から下の符号化順序を仮定すると、PUの上、右上、左上、又は左にあり得る。イントラ予測ユニット126は、PUのサイズに応じて、様々な数のイントラ予測モード、例えば、33個の方向性イントラ予測モードを使用し得る。
[0093]予測処理ユニット100は、PUについての、動き補償ユニット124によって生成された予測データ、又はPUについての、イントラ予測ユニット126によって生成された予測データの中から、PUの予測データを選択し得る。幾つかの例では、予測処理ユニット100は、予測データのセットのレート/歪みメトリックに基づいて、PUのための予測データを選択する。
[0094]予測処理ユニット100が、イントラ予測ユニット126によって生成された予測データを選択する場合、予測処理ユニット100は、PUの予測データを生成するために使用されたイントラ予測モード、例えば、選択されたイントラ予測モードを信号伝達し得る。予測処理ユニット100は、選択されたイントラ予測モードを様々な方法で信号伝達し得る。例えば、選択されたイントラ予測モードは、隣接PUのイントラ予測モードと同じであることがあり得る。言い換えれば、隣接PUのイントラ予測モードは現在PUに対して最確モードであり得る。従って、予測処理ユニット100は、選択されたイントラ予測モードが隣接PUのイントラ予測モードと同じであることを示すための、シンタックス要素を生成し得る。
[0095]上記で説明したように、ビデオエンコーダ20はレイヤ間予測ユニット128を含み得る。レイヤ間予測ユニット128は、SVCにおいて利用可能である1つ又は複数の異なるレイヤ(例えば、ベースレイヤ又は参照レイヤ)を使用して現在ブロック(例えば、EL中の現在ブロック)を予測するように構成される。そのような予測はレイヤ間予測と呼ばれることがある。レイヤ間予測ユニット128は、レイヤ間冗長性を低減するために予測方法を利用し、それによって、コード化効率を改善し、計算リ発信源要件を低減する。レイヤ間予測の幾つかの例としては、レイヤ間イントラ予測、レイヤ間動き予測、及びレイヤ間残差予測がある。レイヤ間イントラ予測は、ベースレイヤ中の同一位置配置ブロックの再構成を使用して拡張レイヤ中の現在ブロックを予測する。レイヤ間動き予測は、ベースレイヤの動き情報を使用して拡張レイヤ中の動作を予測する。レイヤ間残差予測は、ベースレイヤの残差を使用して拡張レイヤの残差を予測する。レイヤ間予測方式の各々について、より詳細に以下で説明する。
[0096]予測処理ユニット100がCUのPUの予測データを選択した後、残差生成ユニット102は、CUのビデオブロックからCUのPUの予測ビデオブロックを差し引くこと(例えば、マイナス符号によって示される)によって、CUの残差データを生成し得る。CUの残差データは、CUのビデオブロック中のサンプルの異なるサンプル成分に対応する、2D残差ビデオブロックを含み得る。例えば、残差データは、CUのPUの予測ビデオブロック中のサンプルのルミナンス成分と、CUの元のビデオブロック中のサンプルのルミナンス成分との間の差分に対応する、残差ビデオブロックを含み得る。更に、CUの残差データは、CUのPUの予測ビデオブロック中のサンプルのクロミナンス成分と、CUの元のビデオブロック中のサンプルのクロミナンス成分との間の差分に対応する、残差ビデオブロックを含み得る。
[0097]予測処理ユニット100は、4分木区分を実行して、CUの残差ビデオブロックをサブブロックに区分し得る。各分割されていない残差ビデオブロックは、CUの異なるTUに関連付けられ得る。CUのTUに関連付けられた残差ビデオブロックのサイズ及び位置は、CUのPUに関連付けられたビデオブロックのサイズ及び位置に基づくことも基づかないこともある。「残差4分木」(RQT:residual quad tree)として知られる4分木構造は、残差ビデオブロックの各々に関連付けられたノードを含み得る。CUのTUはRQTのリーフノードに対応し得る。
[0098]変換処理ユニット104は、TUに関連付けられた残差ビデオブロックに1つ又は複数の変換を適用することによって、CUの各TUのための1つ又は複数の変換係数ブロックを生成し得る。変換係数ブロックの各々は、変換係数の2D行列であり得る。変換処理ユニット104は、TUに関連付けられた残差ビデオブロックに様々な変換を適用し得る。例えば、変換処理ユニット104は、離散コサイン変換(DCT)、方向性変換、又は概念的に同様の変換を、TUに関連付けられた残差ビデオブロックに適用し得る。
[0099]変換処理ユニット104が、TUに関連付けられた変換係数ブロックを生成した後、量子化ユニット106は、変換係数ブロック中の変換係数を量子化し得る。量子化ユニット106は、CUに関連付けられたQP値に基づいて、CUのTUに関連付けられた変換係数ブロックを量子化し得る。
[00100]ビデオエンコーダ20は、様々な方法でQP値をCUに関連付け得る。例えば、ビデオエンコーダ20は、CUに関連付けられたツリーブロックに対してレート歪み分析を実行し得る。レート歪み分析では、ビデオエンコーダ20は、ツリーブロックに対して符号化演算を複数回実行することによって、ツリーブロックの複数のコード化表現を生成し得る。ビデオエンコーダ20がツリーブロックの異なる符号化表現を生成するとき、ビデオエンコーダ20は、異なるQP値をCUに関連付け得る。ビデオエンコーダ20は、最小のビットレート及び歪みメトリックを有するツリーブロックのコード化表現で所与のQP値がCUに関連付けられるとき、所与のQP値がCUに関連付けられることを信号伝達し得る。
[00101]逆量子化ユニット108及び逆変換ユニット110は、それぞれ、変換係数ブロックに逆量子化と逆変換とを適用して、変換係数ブロックから残差ビデオブロックを再構成し得る。再構成ユニット112は、再構成された残差ビデオブロックを、予測処理ユニット100によって生成された1つ又は複数の予測ビデオブロックからの対応するサンプルに追加して、TUに関連付けられた再構成されたビデオブロックを生成し得る。このようにCUの各TUのためのビデオブロックを再構成することによって、ビデオエンコーダ20は、CUのビデオブロックを再構成し得る。
[00102]再構成ユニット112がCUのビデオブロックを再構成した後、フィルタユニット113は、CUに関連付けられたビデオブロックにおけるブロック歪み(blocking artifacts)を低減するためにデブロッキング演算を実行し得る。1つ又は複数のデブロッキング演算を実行した後、フィルタユニット113は、復号ピクチャバッファ114にCUの再構成されたビデオブロックを記憶し得る。動き推定ユニット122及び動き補償ユニット124は、再構成されたビデオブロックを含んでいる参照ピクチャを使用して、後続ピクチャのPUに対してインター予測を実行し得る。更に、イントラ予測ユニット126は、復号ピクチャバッファ114中の再構成されたビデオブロックを使用して、CUと同じピクチャの中の他のPUに対してイントラ予測を実行し得る。
[00103]エントロピー符号化ユニット116は、ビデオエンコーダ20の他の機能構成要素からデータを受信し得る。例えば、エントロピー符号化ユニット116は、量子化ユニット106から変換係数ブロックを受信し得、予測処理ユニット100からシンタックス要素を受信し得る。エントロピー符号化ユニット116がデータを受信するとき、エントロピー符号化ユニット116は、1つ又は複数のエントロピー符号化演算を実行して、エントロピー符号化されたデータを生成し得る。例えば、ビデオエンコーダ20は、コンテキスト適応型可変長コード化(CAVLC)演算、CABAC演算、変数間(V2V:variable-to-variable)レングスコード化演算、シンタックスベースコンテキスト適応型バイナリ算術コード化(SBAC:syntax-based context-adaptive binary arithmetic coding)演算、確率間隔区分エントロピー(PIPE)コード化演算、又は別のタイプのエントロピー符号化演算をデータに対して実行し得る。エントロピー符号化ユニット116は、エントロピー符号化されたデータを含むビットストリームを出力し得る。
[00104]データに対してエントロピー符号化演算を実行することの一部として、エントロピー符号化ユニット116は、コンテキストモデルを選択し得る。エントロピー符号化ユニット116がCABAC演算を実行している場合、コンテキストモデルは、特定の値を有する特定のビンの確率の推定値を示し得る。CABACのコンテキストでは、「ビン」という用語は、シンタックス要素の2値化されたバージョンのビットを指すために使用される。
マルチレイヤビデオエンコーダ
[00105]図2Bは、本開示で説明する態様による技法を実装し得るマルチレイヤビデオエンコーダ21の一例を示すブロック図である。ビデオエンコーダ21は、SHVC及びマルチビューコード化の場合など、マルチレイヤビデオフレームを処理するように構成され得る。更に、ビデオエンコーダ21は、本開示の技法のいずれか又は全てを実行するように構成され得る。
[00106]ビデオエンコーダ21はビデオエンコーダ20Aとビデオエンコーダ20Bとを含み、それらの各々はビデオエンコーダ20として構成され得、ビデオエンコーダ20に関して上記で説明した機能を実行し得る。更に、参照番号の再利用によって示されるように、ビデオエンコーダ20A及び20Bは、ビデオエンコーダ20としてシステムとサブシステムとのうちの少なくとも幾つかを含み得る。ビデオエンコーダ21は、2つのビデオエンコーダ20A及び20Bを含むものとして示されているが、ビデオエンコーダ21は、そのようなものとして限定されず、任意の数のビデオエンコーダ20レイヤを含み得る。幾つかの実施形態では、ビデオエンコーダ21はアクセス単位中の各ピクチャ又はフレームについてビデオエンコーダ20を含み得る。例えば、5つのピクチャを含むアクセス単位は、5つのエンコーダレイヤを含むビデオエンコーダによって処理又は符号化され得る。幾つかの実施形態では、ビデオエンコーダ21は、アクセス単位中のフレームよりも多くのエンコーダレイヤを含み得る。幾つかのそのような場合では、ビデオエンコーダレイヤの幾つかは、幾つかのアクセス単位を処理するときに非アクティブであり得る。
[00107]ビデオエンコーダ20A及び20Bに加えて、ビデオエンコーダ21はリサンプリングユニット90を含み得る。リサンプリングユニット90は、場合によっては、例えば、拡張レイヤを作成するために、受信されたビデオフレームのベースレイヤをアップサンプリングし得る。リサンプリングユニット90は、フレームの受信されたベースレイヤに関連付けられた特定の情報をアップサンプリングするが、他の情報をアップサンプリングしないことがある。例えば、リサンプリングユニット90は、ベースレイヤの空間サイズ又は画素の数をアップサンプリングし得るが、スライスの数又はピクチャ順序カウントは定数のままであり得る。場合によっては、リサンプリングユニット90は、受信されたビデオを処理しないことがあるか、及び/又は随意であり得る。例えば、場合によっては、予測処理ユニット100はアップサンプリングを実行し得る。幾つかの実施形態では、リサンプリングユニット90は、レイヤをアップサンプリングすることと、スライス境界ルール及び/又はラスタ走査ルールのセットに準拠するために1つ又は複数のスライスを再編成、再定義、変更、又は調整することとを行うように構成される。アクセス単位中のベースレイヤ又は下位レイヤをアップサンプリングするものとして主に説明したが、場合によっては、リサンプリングユニット90はレイヤをダウンサンプリングし得る。例えば、ビデオのストリーミング中に帯域幅が減少した場合、フレームは、アップサンプリングされるのではなく、ダウンサンプリングされ得る。
[00108]リサンプリングユニット90は、下位レイヤエンコーダ(例えば、ビデオエンコーダ20A)の復号ピクチャバッファ114からピクチャ又はフレーム(又はピクチャに関連付けられたピクチャ情報)を受信し、ピクチャ(又は受信されたピクチャ情報)をアップサンプリングするように構成され得る。このアップサンプリングされたピクチャは、次いで、下位レイヤエンコーダと同じアクセス単位中のピクチャを符号化するように構成された上位レイヤエンコーダ(例えば、ビデオエンコーダ20B)の予測処理ユニット100に与えられ得る。場合によっては、上位レイヤエンコーダは、下位レイヤエンコーダから削除された1つのレイヤである。他の場合には、図2Bのレイヤ0ビデオエンコーダとレイヤ1エンコーダとの間に1つ又は複数の上位レイヤエンコーダがあり得る。
[00109]場合によっては、リサンプリングユニット90は省略又はバイパスされ得る。そのような場合、ビデオエンコーダ20Aの復号ピクチャバッファ114からのピクチャは、直接、又は少なくともリサンプリングユニット90に与えられることなしに、ビデオエンコーダ20Bの予測処理ユニット100に与えられ得る。例えば、ビデオエンコーダ20Bに与えられたビデオデータと、ビデオエンコーダ20Aの復号ピクチャバッファ114からの参照ピクチャとが同じサイズ又は解像度である場合、参照ピクチャは、リサンプリングなしにビデオエンコーダ20Bに与えられ得る。
[00110]幾つかの実施形態では、ビデオエンコーダ21は、ビデオエンコーダ20Aにビデオデータを与える前に、ダウンサンプリングユニット94を使用して下位レイヤエンコーダに与えられるべきビデオデータをダウンサンプリングする。代替的に、ダウンサンプリングユニット94は、ビデオデータをアップサンプリング又はダウンサンプリングすることが可能なリサンプリングユニット90であり得る。また他の実施形態では、ダウンサンプリングユニット94は省略され得る。
[00111]図2Bに示されているように、ビデオエンコーダ21は、マルチプレクサ98、又はmuxを更に含み得る。mux98は、ビデオエンコーダ21から合成ビットストリームを出力することができる。合成ビットストリームは、ビデオエンコーダ20A及び20Bの各々からビットストリームを取ることと、所与の時間において出力されるビットストリームを交替することとによって、作成され得る。場合によっては、2つの(又は、3つ以上のビデオエンコーダレイヤの場合には、より多くの)ビットストリームからのビットが一度に1ビットずつ交替され得るが、多くの場合、ビットストリームは別様に合成され得る。例えば、出力ビットストリームは、選択されたビットストリームを一度に1ブロックずつ交替することによって作成され得る。別の例では、出力ビットストリームは、ビデオエンコーダ20A及び20Bの各々からブロックの非1:1比(non-1:1 ratio)を出力することによって作成され得る。例えば、2つのブロックは、ビデオエンコーダ20Aから出力された各ブロックについてビデオエンコーダ20Bから出力され得る。幾つかの実施形態では、mux98からの出力ストリームはプリプログラムされ得る。他の実施形態では、mux98は、発信源機器12上のプロセッサからなど、ビデオエンコーダ21の外部のシステムから受信された制御信号に基づいて、ビデオエンコーダ20A、20Bからのビットストリームを合成し得る。制御信号は、ビデオ発信源18からのビデオの解像度又はビットレートに基づいて、チャネル16の帯域幅に基づいて、ユーザに関連付けられたサブスクリプション(例えば、有料サブスクリプション対無料サブスクリプション)に基づいて、又はビデオエンコーダ21から望まれる解像度出力を決定するための他のファクタに基づいて生成され得る。
ビデオデコーダ
[00112]図3Aは、本開示で説明する態様による技法を実装し得るビデオデコーダの一例を示すブロック図である。ビデオデコーダ30は、HEVCの場合など、ビデオフレームの単一のレイヤを処理するように構成され得る。更に、ビデオデコーダ30は、本開示の技法のいずれか又は全てを実行するように構成され得る。一例として、動き補償ユニット162及び/又はイントラ予測ユニット164は、本開示で説明する技法のいずれか又は全てを実行するように構成され得る。一実施形態では、ビデオデコーダ30は、場合によっては、本開示で説明する技法のいずれか又は全てを実行するように構成されたレイヤ間予測ユニット166を含み得る。他の実施形態では、レイヤ間予測は予測処理ユニット152(例えば、動き補償ユニット162及び/又はイントラ予測ユニット164)によって実行され得、その場合、レイヤ間予測ユニット166は省略され得る。但し、本開示の態様はそのように限定されない。幾つかの例では、本開示で説明する技法は、ビデオデコーダ30の様々な構成要素間で共有され得る。幾つかの例では、追加又は代替として、プロセッサ(図示せず)が、本開示で説明する技法のいずれか又は全てを実行するように構成され得る。
[00113]説明の目的で、本開示では、HEVCコード化のコンテキストにおいてビデオデコーダ30について説明する。しかしながら、本開示の技法は、他のコード化規格又は方法にも適用可能であり得る。図3Aに示された例はシングルレイヤコーデックのためのものである。しかしながら、図3Bに関して更に説明するように、ビデオデコーダ30の一部又は全部はマルチレイヤコーデックの処理のために複製され得る。
[00114]図3Aの例では、ビデオデコーダ30は複数の機能構成要素を含む。ビデオデコーダ30の機能構成要素は、エントロピー復号ユニット150と、予測処理ユニット152と、逆量子化ユニット154と、逆変換ユニット156と、再構成ユニット158と、フィルタユニット159と、復号ピクチャバッファ160とを含む。予測処理ユニット152は、動き補償ユニット162と、イントラ予測ユニット164と、レイヤ間予測ユニット166とを含む。幾つかの例では、ビデオデコーダ30は、図2Aのビデオエンコーダ20に関して説明された符号化経路とは全般に逆の復号経路を実行し得る。他の例では、ビデオデコーダ30は、より多数の、より少数の、又は異なる機能構成要素を含み得る。
[00115]ビデオデコーダ30は、符号化ビデオデータを備えるビットストリームを受信し得る。ビットストリームは複数のシンタックス要素を含み得る。ビデオデコーダ30がビットストリームを受信したとき、エントロピー復号ユニット150は、ビットストリームに対して構文解析演算を実行し得る。ビットストリームに対して構文解析演算を実行した結果として、エントロピー復号ユニット150は、ビットストリームからシンタックス要素を抽出し得る。構文解析演算を実行することの一部として、エントロピー復号ユニット150は、ビットストリーム中のエントロピー符号化されたシンタックス要素をエントロピー復号し得る。予測処理ユニット152、逆量子化ユニット154、逆変換ユニット156、再構成ユニット158、及びフィルタユニット159は、ビットストリームから抽出されたシンタックス要素に基づいて、復号ビデオデータを生成する再構成演算を実行し得る。
[00116]上記で説明したように、ビットストリームは、一連のNAL単位を備え得る。ビットストリームのNAL単位は、ビデオパラメータセット、シーケンスパラメータセットNAL単位、ピクチャパラメータセットNAL単位、SEI NAL単位などを含み得る。ビットストリームに対して構文解析演算を実行することの一部として、エントロピー復号ユニット150は、シーケンスパラメータセットNAL単位からのシーケンスパラメータセット、ピクチャパラメータセットNAL単位からのピクチャパラメータセット、SEI NAL単位からのSEIデータなどを抽出しエントロピー復号する、構文解析演算を実行し得る。
[00117]更に、ビットストリームのNAL単位はコード化スライスNAL単位を含み得る。ビットストリームに対して構文解析演算を実行することの一部として、エントロピー復号ユニット150は、コード化スライスNAL単位からコード化スライスを抽出しエントロピー復号する、構文解析演算を実行し得る。コード化されたスライスの各々は、スライスヘッダとスライスデータとを含み得る。スライスヘッダは、スライスに関するシンタックス要素を含んでいることがある。スライスヘッダ中のシンタックス要素は、スライスを含んでいるピクチャに関連付けられたピクチャパラメータセットを識別するシンタックス要素を含み得る。エントロピー復号ユニット150は、コード化されたスライスヘッダ中のシンタックス要素に対して、CABAC復号演算などのエントロピー復号演算を実行して、スライスヘッダを再構成し得る。
[00118]コード化スライスのNAL単位からスライスデータを抽出することの一部として、エントロピー復号ユニット150は、スライスデータ中のコード化CUからシンタックス要素を抽出する構文解析演算を実行し得る。抽出されたシンタックス要素は、変換係数ブロックに関連付けられたシンタックス要素を含み得る。エントロピー復号ユニット150は、次いで、シンタックス要素のうちの幾つかに対してCABAC復号演算を実行し得る。
[00119]エントロピー復号ユニット150が区分されていないCUに対して構文解析演算を実行した後、ビデオデコーダ30は、区分されていないCUに対して再構成演算を実行し得る。区分されていないCUに対して再構成演算を実行するために、ビデオデコーダ30はCUの各TUに対して再構成演算を実行し得る。CUの各TUについて再構成演算を実行することによって、ビデオデコーダ30は、CUに関連付けられた残差ビデオブロックを再構成し得る。
[00120]TUに対して再構成演算を実行することの一部として、逆量子化ユニット154は、TUに関連付けられた変換係数ブロックを逆の量子化(inverse quantize)、例えば、逆量子化(de-quantize)し得る。逆量子化ユニット154は、HEVC用に提案された、又はH.264復号規格によって定義された逆量子化プロセスと同様の方式で、変換係数ブロックを逆量子化し得る。逆量子化ユニット154は、量子化の程度を決定し、同様に、逆量子化ユニット154が適用するべき逆量子化の程度を決定するために、変換係数ブロックのCUのためにビデオエンコーダ20によって計算される量子化パラメータQPを使用し得る。
[00121]逆量子化ユニット154が変換係数ブロックを逆量子化した後、逆変換ユニット156は、変換係数ブロックに関連付けられたTUのための残差ビデオブロックを生成し得る。逆変換ユニット156は、TUのための残差ビデオブロックを生成するために、変換係数ブロックに逆変換を適用し得る。例えば、逆変換ユニット156は、変換係数ブロックに、逆DCT、逆整数変換、逆カルーネンレーベ変換(KLT:Karhunen-Loeve transform)、逆回転変換、逆方向変換、又は別の逆変換を適用し得る。幾つかの例では、逆変換ユニット156は、ビデオエンコーダ20からの信号伝達に基づいて、変換係数ブロックに適用すべき逆変換を決定し得る。そのような例では、逆変換ユニット156は、変換係数ブロックに関連付けられたツリーブロックの4分木のルートノードにおいて信号伝達された変換に基づいて、逆変換を決定し得る。他の例では、逆変換ユニット156は、ブロックサイズ、コード化モードなど、1つ又は複数のコード化特性から逆変換を推論し得る。幾つかの例では、逆変換ユニット156はカスケード逆変換を適用し得る。
[00122]幾つかの例では、動き補償ユニット162は、補間フィルタに基づく補間を実行することによって、PUの予測ビデオブロックを改良し得る。サブサンプル精度をもつ動き補償のために使用されるべき補間フィルタのための識別子が、シンタックス要素中に含まれ得る。動き補償ユニット162は、PUの予測ビデオブロックの生成中にビデオエンコーダ20によって使用された同じ補間フィルタを使用して、参照ブロックのサブ整数サンプルについての補間値を計算し得る。動き補償ユニット162は、受信されたシンタックス情報に従って、ビデオエンコーダ20によって使用された補間フィルタを決定し、その補間フィルタを使用して予測ビデオブロックを生成し得る。
[00123]図8及び図9に関して以下で更に説明するように、予測処理ユニット152は、図8及び図9に示されている方法を実行することによってPU(又は他の拡張レイヤブロック又はビデオ単位)をコード化(例えば、符号化又は復号)し得る。例えば、動き補償ユニット162、イントラ予測ユニット164、又はレイヤ間予測ユニット166は、一緒に又は別々に、図8及び図9に示されている方法を実行するように構成され得る。
[00124]PUが、イントラ予測を使用して符号化される場合、イントラ予測ユニット164は、PUのための予測ビデオブロックを生成するためにイントラ予測を実行し得る。例えば、イントラ予測ユニット164は、ビットストリーム中のシンタックス要素に基づいて、PUのためのイントラ予測モードを決定し得る。ビットストリームは、PUのイントラ予測モードを決定するためにイントラ予測ユニット164が使用し得るシンタックス要素を含み得る。
[00125]幾つかの事例では、シンタックス要素は、イントラ予測ユニット164が別のPUのイントラ予測モードを使用して現在PUのイントラ予測モードを決定するべきであることを示し得る。例えば、現在PUのイントラ予測モードは隣接PUのイントラ予測モードと同じであることがあり得る。言い換えれば、隣接PUのイントラ予測モードは、現在PUに対して最確モード(most probable mode)であり得る。従って、この例では、ビットストリームは、PUのイントラ予測モードが隣接PUのイントラ予測モードと同じであることを示す、小さいシンタックス要素を含み得る。イントラ予測ユニット164は、次いで、イントラ予測モードを使用して、空間的に隣接するPUのビデオブロックに基づいて、PUの予測データ(例えば、予測サンプル)を生成し得る。
[00126]上記で説明したように、ビデオデコーダ30もレイヤ間予測ユニット166を含み得る。レイヤ間予測ユニット166は、SVCにおいて利用可能である1つ又は複数の異なるレイヤ(例えば、ベースレイヤ又は参照レイヤ)を使用して現在ブロック(例えば、EL中の現在ブロック)を予測するように構成される。そのような予測はレイヤ間予測と呼ばれることがある。レイヤ間予測ユニット166は、レイヤ間冗長性を低減するために予測方法を利用し、それによって、コード化効率を改善し、計算リ発信源要件を低減する。レイヤ間予測の幾つかの例としては、レイヤ間イントラ予測、レイヤ間動き予測、及びレイヤ間残差予測がある。レイヤ間イントラ予測は、ベースレイヤ中の同一位置配置ブロックの再構成を使用して拡張レイヤ中の現在ブロックを予測する。レイヤ間動き予測は、ベースレイヤの動き情報を使用して拡張レイヤ中の動作を予測する。レイヤ間残差予測は、ベースレイヤの残差を使用して拡張レイヤの残差を予測する。レイヤ間予測方式の各々について、より詳細に以下で説明する。
[00127]再構成ユニット158は、適用可能なとき、CUのTUに関連付けられた残差ビデオブロックとCUのPUの予測ビデオブロックとを使用して、例えば、イントラ予測データ又はインター予測データのいずれかを使用して、CUのビデオブロックを再構成し得る。従って、ビデオデコーダ30は、ビットストリーム中のシンタックス要素に基づいて、予測ビデオブロックと残差ビデオブロックとを生成し得、予測ビデオブロックと残差ビデオブロックとに基づいて、ビデオブロックを生成し得る。
[00128]再構成ユニット158がCUのビデオブロックを再構成した後、フィルタユニット159は、デブロッキング演算を実行して、CUに関連付けられたブロック歪みを低減し得る。フィルタユニット159がデブロッキング演算を実行してCUに関連付けられたブロック歪みを低減した後、ビデオデコーダ30は、復号ピクチャバッファ160にCUのビデオブロックを記憶し得る。復号ピクチャバッファ160は、後続の動き補償、イントラ予測、及び図1の表示装置32などの表示装置上での提示のために、参照ピクチャを与え得る。例えば、ビデオデコーダ30は、復号ピクチャバッファ160中のビデオブロックに基づいて、他のCUのPUに対してイントラ予測演算又はインター予測演算を実行し得る。
スケーラブルビデオコード化(SVC)の構造
マルチレイヤデコーダ
[00129]図3Bは、本開示で説明する態様による技法を実装し得るマルチレイヤビデオデコーダ31の一例を示すブロック図である。ビデオデコーダ31は、SHVC及びマルチビューコード化の場合など、マルチレイヤビデオフレームを処理するように構成され得る。更に、ビデオデコーダ31は、本開示の技法のいずれか又は全てを実行するように構成され得る。
[00130]ビデオデコーダ31はビデオデコーダ30Aとビデオデコーダ30Bとを含み、それらの各々はビデオデコーダ30として構成され得、ビデオデコーダ30に関して上記で説明した機能を実行し得る。更に、参照番号の再利用によって示されるように、ビデオデコーダ30A及び30Bは、ビデオデコーダ30としてシステムとサブシステムとのうちの少なくとも幾つかを含み得る。ビデオデコーダ31は、2つのビデオデコーダ30A及び30Bを含むものとして示されているが、ビデオデコーダ31は、そのようなものとして限定されず、任意の数のビデオデコーダ30レイヤを含み得る。幾つかの実施形態では、ビデオデコーダ31はアクセス単位中の各ピクチャ又はフレームについてビデオデコーダ30を含み得る。例えば、5つのピクチャを含むアクセス単位は、5つのデコーダレイヤを含むビデオデコーダによって処理又は復号され得る。幾つかの実施形態では、ビデオデコーダ31は、アクセス単位中のフレームよりも多くのデコーダレイヤを含み得る。幾つかのそのような場合では、ビデオデコーダレイヤの幾つかは、幾つかのアクセス単位を処理するときにインアクティブ(inactive)であり得る。
[00131]ビデオデコーダ30A及び30Bに加えて、ビデオデコーダ31はアップサンプリングユニット92を含み得る。幾つかの実施形態では、アップサンプリングユニット92は、フレーム又はアクセス単位のための参照ピクチャリストに追加されるべき拡張レイヤ(enhanced layer)を作成するために、受信されたビデオフレームのベースレイヤをアップサンプリングし得る。この拡張レイヤは復号ピクチャバッファ160に記憶され得る。幾つかの実施形態では、アップサンプリングユニット92は、図2Aのリサンプリングユニット90に関して説明した実施形態の一部又は全部を含むことができる。幾つかの実施形態では、アップサンプリングユニット92は、レイヤをアップサンプリングすることと、スライス境界ルール及び/又はラスタ走査ルールのセットに準拠するために1つ又は複数のスライスを再編成、再定義、変更、又は調整することとを行うように構成される。場合によっては、アップサンプリングユニット92は、受信されたビデオフレームのレイヤをアップサンプリング及び/又はダウンサンプリングするように構成されたリサンプリングユニットであり得る。
[00132]アップサンプリングユニット92は、下位レイヤデコーダ(例えば、ビデオデコーダ30A)の復号ピクチャバッファ160からピクチャ又はフレーム(又はピクチャに関連付けられたピクチャ情報)を受信し、ピクチャ(又は受信されたピクチャ情報)をアップサンプリングするように構成され得る。このアップサンプリングされたピクチャは、次いで、下位レイヤデコーダと同じアクセス単位中のピクチャを復号するように構成された上位レイヤデコーダ(例えば、ビデオデコーダ30B)の予測処理ユニット152に与えられ得る。場合によっては、上位レイヤデコーダは、下位レイヤデコーダから削除された1つのレイヤである。他の場合には、図3Bのレイヤ0ビデオデコーダとレイヤ1デコーダとの間に1つ又は複数の上位レイヤデコーダがあり得る。
[00133]場合によっては、アップサンプリングユニット92は省略又はバイパスされ得る。そのような場合、ビデオデコーダ30Aの復号ピクチャバッファ160からのピクチャは、直接、又は少なくともアップサンプリングユニット92に与えられることなしに、ビデオデコーダ30Bの予測処理ユニット152に与えられ得る。例えば、ビデオデコーダ30Bに与えられたビデオデータと、ビデオデコーダ30Aの復号ピクチャバッファ160からの参照ピクチャとが同じサイズ又は解像度である場合、参照ピクチャは、アップサンプリングなしにビデオデコーダ30Bに与えられ得る。更に、幾つかの実施形態では、アップサンプリングユニット92は、ビデオデコーダ30Aの復号ピクチャバッファ160から受信された参照ピクチャをアップサンプリング又はダウンサンプリングするように構成されたリサンプリングユニット90であり得る。
[00134]図3Bに示されているように、ビデオデコーダ31は、デマルチプレクサ99、又はdemuxを更に含み得る。demux99は符号化ビデオビットストリームを複数のビットストリームにスプリットすることができ、demux99によって出力された各ビットストリームは異なるビデオデコーダ30A及び30Bに与えられる。複数のビットストリームは、ビットストリームを受信することによって作成され得、ビデオデコーダ30A及び30Bの各々は、所与の時間においてビットストリームの一部分を受信する。場合によっては、demux99において受信されるビットストリームからのビットは、ビデオデコーダの各々(例えば、図3Bの例ではビデオデコーダ30A及び30B)の間で一度に1ビットずつ交替され得るが、多くの場合、ビットストリームは別様に分割される。例えば、ビットストリームは、一度に1ブロックずつビットストリームを受信するビデオデコーダを交替することによって分割され得る。別の例では、ビットストリームは、ブロックの非1:1比によって、ビデオデコーダ30A及び30Bの各々に分割され得る。例えば、2つのブロックは、ビデオデコーダ30Aに与えられる各ブロックについてビデオデコーダ30Bに与えられ得る。幾つかの実施形態では、demux99によるビットストリームの分割はプリプログラムされ得る。他の実施形態では、demux99は、宛先機器14上のプロセッサからなど、ビデオデコーダ31の外部のシステムから受信された制御信号に基づいてビットストリームを分割し得る。制御信号は、入力インターフェース28からのビデオの解像度又はビットレートに基づいて、チャネル16の帯域幅に基づいて、ユーザに関連付けられたサブスクリプション(例えば、有料サブスクリプション対無料サブスクリプション)に基づいて、又はビデオデコーダ31によって取得可能な解像度を決定するための他のファクタに基づいて生成され得る。
スケーラブルビデオコード化(SVC)の構造
[00135]図4は、異なる次元における例示的なスケーラビリティを示す概念図である。上記で説明したように、SVCの1つの例示的な実装形態はHEVCのスケーラブルビデオコード化拡張(scalable video coding extension)を指す。HEVCのスケーラブルビデオコード化拡張は、ビデオ情報がレイヤ中で与えられることを可能にする。各レイヤは、異なるスケーラビリティに対応するビデオ情報を与えることができる。HEVCでは、スケーラビリティは、3つの次元において使用可能であり、即ち、時間(temporal)(又は時間(time))スケーラビリティ、空間スケーラビリティ、及び(信号対雑音比又はSNRスケーラビリティと呼ばれることがある)品質スケーラビリティである。例えば、時間次元では、7.5Hz、15Hz、30Hzなどをもつフレームレートが時間スケーラビリティ(T)によってサポートされ得る。空間スケーラビリティ(S)がサポートされるとき、QCIF、CIF、4CIFなどの異なる解像度が使用可能であり得る。特定の空間解像度及びフレームレートごとに、ピクチャ品質を改善するためにSNR(Q)レイヤが追加され得る。
[00136]ビデオコンテンツがそのようなスケーラブルな方法で符号化されると、例えば、クライアント又は送信チャネルに依存することがあるアプリケーション要件に従って、実際の配信されたコンテンツを適応させるために、抽出器ツールが使用され得る。図4に示された例では、各立方体は、同じフレームレート(時間レベル)、空間解像度及びSNRレイヤをもつピクチャを含んでいる。例えば、立方体402及び404は、同じ解像度及びSNRを有するが、異なるフレームレートを有するピクチャを含んでいる。立方体402及び406は、(例えば、同じ空間レイヤでは)同じ解像度を有するが、異なるSNR及びフレームレートを有するピクチャを表す。立方体402及び408は、(例えば、同じ品質イヤでは)同じSNRを有するが、異なる解像度及びフレームレートを有するピクチャを表す。立方体402及び410は、異なる解像度と、フレームレートと、SNRとを有するピクチャを表す。それらの立方体(ピクチャ)を任意の次元で追加することによって、より良い表現が達成され得る。使用可能な2つ、3つ又は更に多くのスケーラビリティがあるとき、複合スケーラビリティがサポートされる。例えば、立方体402中のピクチャを立方体404中のピクチャと合成することによって、より高いフレームレートが実現され得る。立方体404中のピクチャを立方体406中のピクチャと合成することによって、より良好なSNRが実現され得る。
[00137]HEVCのSVC拡張によれば、最低空間レイヤ及び品質レイヤをもつピクチャは、HEVCに適合し、最低時間レベルにあるピクチャは、より高い時間レベルにあるピクチャを用いて拡張され得る時間ベースレイヤを形成する。HEVC適合レイヤに加えて、空間スケーラビリティ及び/又は品質スケーラビリティを与えるために幾つかの空間及び/又はSNR拡張レイヤが追加され得る。SNRスケーラビリティは品質スケーラビリティと呼ばれることもある。各空間又はSNR拡張レイヤ自体は、HEVC適合レイヤと同じ時間スケーラビリティ構造で、時間的にスケーラブルになり得る。1つの空間又はSNR拡張レイヤについて、それが依存するより低いレイヤは、その特定の空間又はSNR拡張レイヤのベースレイヤと呼ばれることもある。
[00138]図5は、例示的なスケーラブルビデオコード化ビットストリームを示す概念図である。図5に示されている例示的なSVCコード化構造では、最低空間及び品質レイヤをもつピクチャ(QCIF解像度を与えるレイヤ502及びレイヤ504中のピクチャ)は、HEVCに適合する。それらの中で、最低時間レベルのピクチャは、図5に示されているように、時間ベースレイヤ502を形成する。この時間ベースレイヤ(例えば、レイヤ502)は、レイヤ504など、より高い時間レベルのピクチャを用いて拡張され得る。HEVC適合レイヤに加えて、空間スケーラビリティ及び/又は品質スケーラビリティを与えるために幾つかの空間及び/又はSNR拡張レイヤが追加され得る。例えば、拡張レイヤは、レイヤ506と同じ解像度を有するCIF表現であり得る。図5に示されている例では、レイヤ508はSNR拡張レイヤである。その例に示されているように、各空間又はSNR拡張レイヤ自体は、HEVC適合レイヤと同じ時間スケーラビリティ構造で、時間的にスケーラブルになり得る。また、拡張レイヤは空間解像度とフレームレートの両方を向上させことができる。例えば、レイヤ510は、フレームレートを15Hzから30Hzに更に増加させる4CIF拡張レイヤを与える。
[00139]図6は、スケーラブルビデオコード化ビットストリーム600中の例示的なアクセス単位(例えば、1つ又は複数のスライスからなるコード化ピクチャ)を示す概念図である。図6に示されているように、幾つかの実施形態では、同じ時間インスタンス中のコード化スライスは、ビットストリーム順序で連続しており、SVCのコンテキストにおける1つのアクセス単位を形成する。それらのSVCアクセス単位は、次いで、表示順序とは異なり得る復号順序に従う。復号順序は、例えば、時間予測関係によって決定され得る。例えば、フレーム0のための(例えば、図5に示されているフレーム0のための)全ての4つのレイヤ612、614、616、及び618からなるアクセスユニット610の後に、フレーム4のための(例えば、図5のフレーム4のための)全ての4つのレイヤ622、624、626、及び628からなるアクセスユニット620が続き得る。フレーム2のためのアクセスユニット630は、少なくともビデオ再生の観点から順が狂って続き得る。しかしながら、フレーム0及び4からの情報は、フレーム2を符号化又は復号するときに使用され得、従って、フレーム4は、フレーム2の前に符号化又は復号され得る。フレーム0とフレーム4との間の残りのフレームのためのアクセスユニット640及び650は、図6に示されているように続き得る。
スケーラブルビデオコード化(SVC)の機能
[00140]シングルループ復号
[00141]上記で説明したように、SVCでは、拡張レイヤは、参照レイヤから導出された情報に基づいて予測され得る。そのような予測方法はレイヤ間予測と呼ばれる。レイヤ間予測は、異なるレイヤ間に存在する冗長を利用する。レイヤ間予測方式のうちの1つはレイヤ間イントラ予測である。レイヤ間イントラ予測を使用するコード化モードは「イントラBL」モードと呼ばれることがある。そのような予測モードについて、図7に関して以下で説明する。
[00142]図7に、イントラBL予測の例700の概略図を示す。特に、ベースレイヤ710中のベースレイヤブロック712は拡張レイヤ720中の拡張レイヤブロック722と同一位置配置される。イントラBLモードでは、ブロック722のテクスチャは、同一位置配置ベースレイヤブロック712のテクスチャを使用して予測され得る。例えば、同一位置配置ベースレイヤブロック712が、基本的に拡張レイヤブロック722と同じビデオオブジェクトを示すので、同一位置配置ベースレイヤブロック712の画素値と拡張レイヤブロック722の画素値とが互いに極めて似ていることがあり得る。従って、同一位置配置ベースレイヤブロック712の画素値は、拡張レイヤブロック722の画素値を予測するための予測子として働き得る。ベースレイヤブロック712は、拡張レイヤ720とベースレイヤ710とが、異なる解像度を有する場合、拡張レイヤブロック722を予測するために使用される前にアップサンプリングされ得る。例えば、ベースレイヤピクチャは1280×720であり得、拡張レイヤは1920×1080であり得、その場合、ベースレイヤブロック又はベースレイヤピクチャは、拡張レイヤブロック又はピクチャを予測するために使用される前に、各方向(例えば、水平及び垂直)で1.5倍にアップサンプリングされ得る。予測誤差(例えば、残差)は、変換され、量子化され、エントロピー符号化され得る。「同一位置配置」という用語は、本明細書では、拡張レイヤブロックと同じビデオオブジェクトを示すベースレイヤブロックの位置を表すために使用され得る。代替的に、その用語は、同一位置配置ベースレイヤブロックが、拡張レイヤブロックと(ベースレイヤと拡張レイヤとの間の解像度比が考慮に入れられた後の)同じ座標値を有し得ることを意味し得る。本開示では「同一位置配置」という用語が使用されているが、現在ブロックの近隣(例えば、隣接)ブロック、現在ブロックの同一位置配置ブロックの近隣(例えば、隣接)ブロック、又は他の関係するブロックを用いて同様の技法が適用され得る。
[00143]レイヤ間テクスチャ予測のための別の手法はレイヤ間参照ピクチャ(ILRP)の使用を伴い得る。そのような例では、(必要なアップサンプリングの後に)対応する拡張レイヤピクチャの参照ピクチャリスト中に再構成されたベースレイヤピクチャが挿入される。レイヤ間テクスチャ予測は、レイヤ間参照ピクチャを使用して拡張レイヤが予測されるときに達成される。
スケーラビリティ
[00144]スケーラブルビデオコード化方式は、空間スケーラビリティ及びビット深度スケーラビリティなど、様々なスケーラビリティを与え得る。上記で説明したように、スケーラブルビデオコード化は、より高い空間、時間、及び/又は信号対雑音(SNR)レベルを達成するために、ベースレイヤと組み合わせて復号され得る1つ又は複数のスケーラブル拡張レイヤを与える。
[00145]空間スケーラビリティは、ベースレイヤピクチャと拡張レイヤピクチャとが異なるサイズを有する場合を指す。例えば、ベースレイヤ中のピクチャは1280画素×720画素のサイズを有し得、拡張レイヤ中のピクチャは1920画素×1080画素のサイズを有し得る。
[00146]ビット深度スケーラビリティは、ベースレイヤピクチャと拡張レイヤピクチャとが異なるビット深度を有する場合を指す。例えば、ベースレイヤ中のピクチャは8ビットのビット深度を有し得る(例えば、色成分は8ビットで表され、合計で28=256個の可能な値を生じる)が、拡張レイヤ中のピクチャは10ビットのビット深度を有し得る(例えば、色成分は10ビットで表され、合計で210=1024個の可能な値を生じる)。また、1つの色成分(例えば、ルーマ)が1つのビット深度を使用して表され、別の色成分(例えば、クロマ)が別のビット深度を使用して表されることが可能である。
[00147]より低いビット深度(例えば、720p及び/又は8ビット)を有するビデオコンテンツを生成するためにレガシーデコーダ(例えば、720p及び/又は8ビット)によって復号され得るベースレイヤと、より拡張されたビデオコンテンツ(例えば、1080p及び/又は10ビット)を生成するためにスケーラブルデコーダによって復号され得る1つ又は複数の拡張レイヤとを含んでいるスケーラブルビットストリームを生成するためにSVCを使用することによって、レガシーデコーダとの後方互換性が与えられ得、別個のビットストリームをサイマルキャストすることと比較して帯域幅要件が低減され得、それによってコード化効率及び性能が改善される。
空間スケーラビリティ及びレイヤ間予測
[00148]上記で説明したように、ベースレイヤ中の画素値は、拡張レイヤ中の画素値を予測するために使用され得る。空間スケーラビリティの場合、ベースレイヤ中のピクチャと拡張レイヤ中のピクチャとは異なるサイズを有し、従って、ベースレイヤピクチャは、拡張レイヤピクチャを予測するために使用される前に、(例えば、それらが拡張レイヤピクチャと同じ解像度にあるように)変更される必要があり得る。例えば、ベースレイヤピクチャは、(例えば、拡張レイヤのサイズがベースレイヤのサイズよりも大きい場合)ベースレイヤと拡張レイヤとの間の解像度比によってアップサンプリングされ得る。
[00149]空間スケーラビリティの場合のそのような変更の例について以下で説明する。この例では、ベースレイヤ画素の色成分値Pbl0及びPbl1に基づいて拡張レイヤ画素の色成分値Pelを推定するために、2タップアップサンプリングフィルタを使用する実装形態が使用される。ここで、レイヤ間予測は、ベースレイヤ画素値(又はその色成分値)に関連付けられた重みを使用して達成され得る。1つのそのような関係は以下の式で表され、但し、P’elはPelの予測値を表す。
Figure 2016511619
[00150]この例では、w0及びw1は重みを表し、Oはアップサンプリングフィルタのオフセットを表す。例えば、重みは重み係数であり得る。この例では、色成分値(例えば、ルーマ成分)Pbl0及びPbl1は、それぞれ重みw0及びw1によって乗算される。一実施形態では、アップサンプリングフィルタの全ての重み(例えば、重みwi)の合計は(1<<T)に等しく、それは、Tビットだけ左側にシフトされるバイナリ1を示す。Tの値は、どのくらいの精度が望まれるかに基づいて選定又は決定され得る。一実施形態では、それ以上の精度が望まれる場合、Tの値は増加し得る。Tの値の増加は、より多いビットシフティングが左側に行われることを意味し、計算を実行するためにより多くのビットを生じる。一実施形態では、オフセットOの値は(1<<(T−1))である。別の実施形態では、オフセットOの値は、全ての重み(例えば、wi)の合計の値の半分であり得る。例えば、Tの値が4に等しい場合、全ての係数の和は1<<4になり、それは(10000)2=16である。同じ例では、オフセットOは1<<3になり、それは(1000)2=8である。オフセットOは、式(1)の計算が、切り捨てられるのではなく切り上げられるような丸めオフセットであり得る。幾つかの実施形態では、オフセットは0であり得る。
ビット深度スケーラビリティ及びレイヤ間予測
[00151]同様に、ビット深度スケーラビリティの場合、ベースレイヤ画素及び拡張レイヤ画素は異なる数のビット(例えば、8ビット対10ビット)で表され、従って、ベースレイヤ画素値は、拡張レイヤ画素値を予測するために使用される前に変更される(例えば、拡張レイヤ画素値と同じビット数を有するためにビット深度変換を経験する)必要があり得る。そのような変更(例えば、ビット深度変換)の一例は、(例えば、拡張レイヤが、より高いビット深度を有する場合)ベースレイヤ画素のビットをNだけ左側にシフトすることを伴い、但し、Nはベースレイヤと拡張レイヤとのビット深度差を表す。
[00152]ビット深度スケーラビリティの場合のそのような変更の例について以下で説明する。この例では、Mは拡張レイヤのビット深度を表し、Nはベースレイヤのビット深度を表し、Kはビット深度差を表し、それはM−Nである。ここで、ビット深度は、YUV色空間の例では、Y、U、又はVなど、特定の色成分のビット深度を指す。この例では、実施形態を示すためにルーマ成分が使用されるが、同様の方法が他の色成分に適用され得る。
[00153]この例では、Pelは拡張レイヤ中の画素のルーマ成分を表し、Pblはベースレイヤ中の対応する(例えば、同一位置配置)画素のルーマ成分を表す。ここで、レイヤ間テクスチャ予測は、ベースレイヤ色成分が拡張レイヤ色成分と同じビット数で表されるように、ベースレイヤ色成分を変換することを伴い得る。そのような変換の一実装形態が以下の式に示され、但し、P’elはPelの予測値を表す。
Figure 2016511619
Figure 2016511619
[00154]例えば、ベースレイヤと拡張レイヤと(例えば、8ビットのビット深度を有するベースレイヤと、10ビットのビット深度を有する拡張レイヤと)の間のビット深度差が2である場合、ベースレイヤ画素のルーマ成分は2ビットだけ左側にシフトされる。従って、式(1)に従って、ベースレイヤ中の画素(例えば、カラーホワイト)が、ベースレイヤ中で255(2進数で1111 1111)のルーマ成分を有する場合、予測値は1020(2進数で11 1111 1100)になり、それは、10ビットビット深度でカラーホワイトのルーマ成分、即ち、1023の近傍にある。
[00155]本開示では、Kは、0よりも大きいか又はそれに等しい(例えば、拡張レイヤのビット深度は、ベースレイヤのビット深度よりも大きいか又はそれに等しい)と仮定される。しかしながら、同様の方法は、Kが0よりも小さい場合に適用され得る。
合成空間及びビット深度スケーラビリティ
[00156]一実施形態では、空間スケーラビリティとビット深度スケーラビリティの両方が存在する場合、上記で説明した方法は、拡張レイヤ画素値を予測するためにアップサンプリングとビット深度変換の両方を達成するために合成され得る。例えば、一実装形態は以下の通りであり得る。
1.ベースレイヤ画素PbliをKビットだけ左シフトする:P’bli=Pbli<<K
2.左シフトされた画素P’bliをアップサンプリングする:P’el=(w0P’bl0+w1P’bl1+O)>>T
[00157]上記に示した例では、ビット深度変換プロセス(例えば、第1のプロセス)は、ベースレイヤ画素値に対してビット深度変換を実行し、ビット深度変換された画素値を出力し、アップサンプリングプロセス(例えば、第2のプロセス)は、ビット深度変換された画素値に対してアップサンプリングを実行し、アップサンプリングされたビット深度変換された画素値を出力する。このようにして、プロセスが直列に実行され、アップサンプリングとビット深度変換の両方は達成され得る。
[00158]別の実施形態では、ベースレイヤ画素は、最初に解像度比に従ってアップサンプリングされ、次いで、予測された拡張レイヤ画素値P’el(例えば、アップサンプリングされたビット深度変換された画素値)を取得するためにKビットだけ左シフトされ得る。
空間及びビット深度スケーラビリティのための単段プロセス
[00159]上記で説明した例では、アップサンプリング及びビット深度変換は2段プロセスとして行われる。別の実施形態では、アップサンプリング及びビット深度変換は、合成ビット深度及び空間スケーラビリティのための予測を生成する単段プロセス中で実行される。そのような単段プロセスの一実装形態が以下の式に示される。
Figure 2016511619
[00160]式(4)はアップサンプリングプロセスを示し、この場合、右シフトは、ベースレイヤと拡張レイヤとの間のビット深度差Kだけ低減される。従って、ビット深度スケーラビリティがない場合よりも小さいKビットだけの右側へのビットシフティングによって、式(4)に示されたプロセスは、Kビットだけの左側へのビットシフティングを効果的に実行しながら、同時にアップサンプリングをも達成する。式(4)の例では、式(4)に示された単段プロセスは、ベースレイヤ画素値に適用され、アップサンプリングされたビット深度変換された画素値を出力する。これは、上記で説明した例とは異なり、但し、ビット深度変換プロセスは、ベースレイヤ画素値に対して実行され、アップサンプリングプロセスは、ビット深度変換プロセスの出力(例えば、ビット深度変換されたベースレイヤ画素値)に対して実行される。
[00161]幾つかの実施形態では、アップサンプリングとビット深度変換とは同時に実行される。一実施形態では、アップサンプリングとビット深度変換とを「同時に」実行することは、アップサンプリングとビット深度変換の両方に寄与する少なくとも1つの演算があることを意味し得る。別の実施形態では、アップサンプリングとビット深度変換の両方を同時に実行することは、アップサンプリングとビット深度変換の両方を実行するために単一のフィルタが使用されることを意味し得る。別の実施形態では、アップサンプリングとビット深度変換の両方を同時に実行することは、アップサンプリングとビット深度変換とが時間的に互いと重複することを意味し得る。
[00162]幾つかの実施形態では、別個のビット深度変換プロセスを実行する前にアップサンプリングプロセスを終了するのではなく、ビット深度変換プロセスは単段アップサンプリングプロセスに組み込まれ得る。代替的に、幾つかの実施形態では、別個のアップサンプリングプロセスを実行する前にビット深度変換プロセスを終了するのではなく、アップサンプリングプロセスは単段ビット深度変換プロセスに組み込まれ得る。一実施形態では、単段プロセスは、乗算、加算、及び/又はビットシフティングなど、複数の数学演算を含み得る。単段プロセスは、アップサンプリングとビット深度変換の両方に寄与する少なくとも1つの演算を含み得る。一例では、そのような演算は左ビットシフトであり得る。別の例では、そのような演算は右ビットシフトであり得る。また別の例では、そのような演算は乗算を伴い得る。また別の例では、そのような演算は加算を伴い得る。
[00163]一実施形態では、アップサンプリングプロセスを実行した後に、ビット深度変換がアップサンプリングプロセスの一部としてすでに実行されているので、別個のビット深度変換プロセスは、実行される必要がないことがある。例えば、ビット深度変換プロセスはアップサンプリングプロセスに組み込まれ得る。一実施形態では、アップサンプリングプロセスに関して実行される演算のうちの1つはまた、ビット深度変換を達成し、別個のビット深度変換プロセスを実行する必要はなくなる。
[00164]幾つかの実施形態では、単段プロセス中でアップサンプリングとビット深度変換とを実行することによって、アップサンプリングプロセス中の丸め誤差が低減され得る。例えば、上記に示した単段プロセスでは、重み付けされた画素値w0bl0及びw1bl1とオフセットOとの合計はWだけ右シフトされ、Wは式(1)中のTよりも小さく、従って、より多くの桁が保存され、それにより、より良い精度をもたらす。
[00165]図8は、本開示の一実施形態による、ビデオ情報をコード化するための方法800を示すフローチャートである。図8に示されたステップは、エンコーダ(例えば、図2B又は図2Bに示されているビデオエンコーダ)、デコーダ(例えば、図3A又は図3Bに示されているビデオデコーダ)、又は任意の他の構成要素によって実行され得る。便宜上、方法800について、エンコーダ、デコーダ又は別の構成要素であり得る、コーダによって実行されるものとして説明する。
[00166]方法800はブロック801において開始する。ブロック805において、コーダは、ELビデオ単位を備える拡張レイヤ(EL)と、ELビデオ単位に対応するRLビデオ単位を備える参照レイヤ(RL)とに関連付けられたビデオ情報を記憶する。ブロック810において、コーダは、ELビデオ単位の予測された画素情報を決定するために、RLビデオ単位の画素情報に対してアップサンプリング及びビット深度変換を実行する。例えば、コーダは、単段プロセスを適用することによって、アップサンプリングとビット深度変換の両方を同時に実行する。そのような単段プロセスは、アップサンプリングとビット深度変換の両方に寄与する少なくとも1つの演算を含み得る。一実施形態では、画素情報は、画素値又はそのような画素値の色成分を指し、予測された画素情報は、ELビデオ単位の画素値又は色成分を決定するための予測子を指す。一実施形態では、予測画素情報は、単段プロセス中で画素値を(例えば、同時に)アップサンプリング及びビットシフトするように構成された合成アップサンプリング及びビット深度変換フィルタを適用することによって決定され得る。ブロック815において、コーダは、予測された画素情報を使用してELビデオ単位を決定する。例えば、そのようなプロセスは、ELブロックの(1つ又は複数の)実効値から、(1つ又は複数の)RL画素値に予測関数を適用することによって取得された(1つ又は複数の)予測値を減算することと、残差及び予測を送信することとを伴い得る。方法800はブロック820において終了する。
[00167]上記で説明したように、図2Aのビデオエンコーダ20、図2Bのビデオエンコーダ21、図3Aのビデオデコーダ30、又は図3Bのビデオデコーダ31のうちの1つ又は複数の構成要素(例えば、レイヤ間予測ユニット128及び/又はレイヤ間予測ユニット166)は、画素情報に対してアップサンプリング及びビット深度変換を実行すること、ならびに予測された画素情報を使用してELビデオ単位(例えば、EL中の現在ブロック)を決定することなど、本開示で説明する技法のいずれかを実装するために使用され得る。
[00168]図9は、本開示の一実施形態による、ビデオ情報をコード化するための方法900を示すフローチャートである。図9に示されたステップは、エンコーダ(例えば、図2A又は図2Bに示されているビデオエンコーダ)、デコーダ(例えば、図3A又は図3Bに示されているビデオデコーダ)、又は任意の他の構成要素によって実行され得る。便宜上、方法900について、エンコーダ、デコーダ又は別の構成要素であり得る、コーダによって実行されるものとして説明する。
[00169]方法900はブロック901において開始する。ブロック905において、コーダは、参照レイヤの解像度と拡張レイヤの解像度とが異なるかどうかを決定する。コーダが、解像度が異なると決定した場合、ブロック910において、コーダは、参照レイヤのビット深度と拡張レイヤのビット深度とが異なるかどうかを決定する。コーダが、ビット深度が異なると決定した場合、ブロック925において、コーダは、拡張レイヤ中の現在ブロックの予測された画素情報を決定するために(例えば、図8を参照しながら説明したように、RLブロック又はRLピクチャの画素情報に対して)同時アップサンプリング及びビット深度変換を実行する。ブロック910において、コーダが、ビット深度が異ならないと決定した場合、ブロック920において、コーダは、現在ブロックの予測された画素情報を決定するためにアップサンプリングを実行する。ブロック905において、コーダが、解像度が異ならないと決定した場合、ブロック915において、コーダは、ビット深度が異なるかどうかを決定する。コーダが、ビット深度が異なると決定した場合、ブロック930において、コーダは、現在ブロックの予測された画素情報を決定するためにビット深度変換を実行する。ブロック915において、コーダが、ビット深度が異ならないと決定した場合、ブロック935において、コーダは、予測された画素情報(例えば、参照レイヤ中の同一位置配置ブロックの画素情報)に基づいて現在ブロックを決定する。同様に、ブロック920、925、又は930において、コーダが、予測された画素情報を決定した後、ブロック935において、コーダは、参照レイヤ中の同一位置配置ブロックの処理された画素情報(例えば、予測された画素情報)に基づいて現在ブロックを決定する。方法900はブロック940において終了する。
[00170]上記で説明したように、図2Aのビデオエンコーダ20、図2Bのビデオエンコーダ21、図3Aのビデオデコーダ30、又は図3Bのビデオデコーダ31のうちの1つ又は複数の構成要素(例えば、レイヤ間予測ユニット128及び/又はレイヤ間予測ユニット166)は、解像度及び/又はビット深度が異なるかどうかを決定すること、アップサンプリング、ビット深度変換、又は同時アップサンプリング及びビット深度変換を実行すること、並びに予測された画素情報を使用してEL中の現在ブロックを決定することなど、本開示で説明する技法のいずれかを実装するために使用され得る。
[00171]方法900では、図9に示されたブロックのうちの1つ又は複数は削除される(例えば、実行されない)ことがあり、及び/又は方法が実行される順序は入れ替えられることがある。例えば、図9の例では、ビット深度が異なるかどうかを検査する前に、解像度が異なるかどうかが検査されるが、別の例では、解像度が異なるかどうかを検査する前に、ビット深度が異なるかどうかが検査され得る。
予測値のクリッピング
[00172]一実施形態では、以下に示されているように予測画素のビット範囲を制限するために、式(4)に示された予測にクリッピングプロセスが適用され得る。
Figure 2016511619
[00173]この例では、P’elの値は、(例えば、アンダーフロー又はオーバーフローを防ぐために)範囲[0,(1<<M)−1]中の値にクリッピングされ得る。例えば、ELのビット深度が10である場合、予測値P’elは範囲[0,1023]にクリッピングされ得る。最小値及び最大値は、そのような例に限定されず、エンコーダによってあらかじめ定義されるか又は信号伝達され得る。ビット深度(又は値の範囲)は、PPSで信号伝達され得る。
空間及びビット深度スケーラビリティのための2次元フィルタ
[00174]式(4)に関して説明した例は、1次元(1D)アップサンプリングフィルタの場合を示す。ベースレイヤ及び拡張レイヤ中のピクチャが2D画素アレイを備える場合、そのような1Dフィルタは、画素を垂直方向に(例えば、Pbl0及びPbl1はベースレイヤ中の垂直方向の隣接画素である)又は水平方向に(例えば、Pbl0及びPbl1はベースレイヤ中の水平方向の隣接画素である)アップサンプリングするために使用され得る。1Dアップサンプリングフィルタを使用して、全ての方向の画素についての予測値が生成され得る。
[00175]一実施形態では、2次元分離可能フィルタが使用され得る。例えば、1D水平アップサンプリングフィルタが適用され得、次いで、1D垂直アップサンプリングフィルタが適用され得る。別の実施形態では、1D水平アップサンプリングフィルタが適用される前に、1D垂直アップサンプリングフィルタが適用され得る。水平アップサンプリングが第1の段として選択され、垂直アップサンプリングが第2の段として選択される例では、第2の段中の右シフト量(例えば、垂直アップサンプリング)は、ベースレイヤと拡張レイヤとの間のビット深度差を反映するために低減され得る。例えば、Tsecが、合成アップサンプリング及びビット深度変換フィルタ(例えば、上記で説明した2D分離可能フィルタ)中で、ビット深度スケーラビリティがない場合の第2の段中の右シフト量を表す場合、右シフト量Tsec−Kは第2の段中で使用され得る。言い換えれば、右シフト量は、別個の段中の予測値を左シフトする必要がなくなるように、ベースレイヤと拡張レイヤとの間のビット深度差だけ低減される。例えば、Tsecが4に設定され、ビット深度差が2である場合、第2の段では、重み付けされた色成分の合計は、4ではなく、4−2=2だけ右側にシフトされる。この例では、垂直アップサンプリングが第2の段として選択されるが、同様の技法は、水平アップサンプリングが第2の段として選択されたときに適用され得る。一実施形態では、2D(又は他の次元の)分離可能フィルタの最終段中のビットシフティングは、ベースレイヤと拡張レイヤとのビット深度差だけ低減される。
[00176]別の実施形態では、アップサンプリングは、以下に示すような2D非分離可能フィルタによって実行され得る。
Figure 2016511619
但し、Pblijは、ロケーション(i,j)における画素であり、wijは、Pblijのための対応する重みである。一実施形態では、全ての重みwijの和は1<<Tに等しい。(2D非分離可能アップサンプリングフィルタを用いた)空間スケーラビリティとビット深度スケーラビリティとの合成は、以下の式を使用して実装され得る。
Figure 2016511619
[00177]上記で説明したように、単段プロセスにおいてアップサンプリング及びビット深度変換を実行することによって、丸め誤差は低減され、それによって、より良い精度を達成し得る。
フィルタ係数の適応信号伝達
[00178]合成ビット深度及び空間スケーラビリティ方式の一実施形態では、適応レイヤ間アップサンプリング/フィルタ処理及び/又はレイヤ間コンポーネント間フィルタ処理及び/又はコンポーネント間フィルタ処理が使用され得る。フィルタ係数は、PPS、APS、スライスヘッダ、及び関係する拡張などのビットストリーム中で適応的に信号伝達され得る。例えば、あるフレーム(又はスライス)のために、フィルタ係数が信号伝達され得(例えば、デコーダに送信され得)、ある他のフレームのために、フィルタ係数は、1つ又は複数のあらかじめ定義された値を取り得る。そのようなあらかじめ定義された値はエンコーダ及び/又はデコーダによって知られ得る。従って、フィルタ係数の信号伝達又は決定は異なるフレーム(又はスライス)について異なり得る。例えば、フィルタ係数を信号伝達すべきかどうか、及びどのように信号伝達すべきかは、サイド情報に基づいて決定され得、それは、限定はしないが、色空間、カラーフォーマット(4:2:2、4:2:0など)、フレームサイズ、フレームタイプ、予測モード、インター予測方向、イントラ予測モード、コード化単位(CU)サイズ、最大/最小コード化単位サイズ、量子化パラメータ(QP)、最大/最小変換単位(TU)サイズ、最大変換ツリー深度参照フレームインデックス、時間レイヤidなどのうちの1つ又は複数を含み得る。例えば、フィルタ係数は、しきい値サイズよりも大きいサイズを有するフレームのためにのみ送信され得る。別の実施形態では、フィルタ係数は、しきい値サイズよりも小さいサイズを有するフレームのためにのみ送信され得る。
[00179]一実施形態では、利用可能なフィルタ係数の2つ又はそれ以上のセットがあり得、エンコーダは、フレームのためにフィルタ係数のどのセットが使用されるべきであるかを示す(1つ又は複数の)選定ビットを信号伝達し得る。従って、異なるフレーム(又はスライス)はフィルタ係数の異なるセットを使用し得る。例えば、あるフレームは高コントラストエッジを含み得、最小低域(low-pass)効果を生成するフィルタ係数が使用され得る。同じ例では、別のフレームは多くの雑音を含み得、より強い低域効果を生成するフィルタ係数が使用され得る。一実施形態では、エンコーダは、フィルタ係数の各利用可能なセットをもつ拡張レイヤフレームを予測し、コード化性能に基づいて1つのセットを選択する。一実施形態では、フィルタ係数の複数のセットは、どこか(例えば、ストレージ)に記憶され、エンコーダ及び/又はデコーダによって使用され得る。別の実施形態では、フィルタ係数はエンコーダ及び/又はデコーダによってオンザフライで導出され得る。また別の実施形態では、フィルタ係数はエンコーダによってデコーダに送信される。
[00180]一実施形態では、上記で説明した適応レイヤ間フィルタ及び/又はレイヤ間コンポーネント間フィルタ及び/又はコンポーネント間フィルタは、VPS、SPS、及び関係する拡張などのビットストリーム中で有効及び/又は無効にされる。例えば、適応フィルタは、フレームのサブセットのみのために有効にされ、他のフレームのために無効にされ得る。
単段プロセスのためのオフセット
[00181]式(4)に関して説明した例では、ビットシフティングが実行された後に加算されるオフセットはない。別の実施形態では、ビットシフティングが実行された後に、以下に示すようにオフセットSが加算される。
Figure 2016511619
[00182]一実施形態では、オフセットSは1<<(K−1)であり得る。この例では、(例えば、予測値が実際の拡張レイヤ画素値により近くなるように)オフセットOはアップサンプリングプロセスのために与えられ、オフセットSはビット深度変換プロセスのために与えられる。
[00183]別の例では、ビットシフティングが実行される前に、オフセットが加算され得る。言い換えれば、以下に示すように、式(8)中のオフセットSは、式(8)中のオフセットOに組み込まれ得る。
Figure 2016511619
但し、合成オフセットO’は、式(8)中のオフセットOに組み込まれたオフセットSを表す。例えば、式(8)の例で、オフセットOが値1<<(T−1)を有し、オフセットSが値1<<(K−1)を有する場合、新しい合成オフセットO’はO+(S<<W)に等しくなり、それは1<<Tである。この例では、中間段で(例えば、ビットシフティングが実行される前に)オフセットが加算されるので、それ以上の精度が維持される。
[00184]一実施形態では、式(5)に関して説明したクリッピングは、式(8)又は式(9)に適用される。例えば、P’elの値は範囲[0,(1<<M)−1]中の値にクリッピングされ得、いかなるアンダーフロー又はオーバーフローも防がれ得る。
合成オフセットの適応選択
[00185]一実施形態では、上記で説明した合成オフセットO’は、(例えば、レート歪み性能を改善するために)適応的に選択され得る。合成オフセットO’のそのような適応選択は、例えば、コード化ツリー単位(CTU)ごとに、又はピクチャごとに行われ得る。
[00186]例えば、8ビットベースレイヤピクチャでは、2つの異なる色、即ち、ブラックとホワイトとを表す2つの画素があり得る。ベースレイヤピクチャでは、カラーブラックに対応する画素は色成分値0を有し得、カラーホワイトに対応する画素は色成分値255を有し得る。これらの2つのベースレイヤ画素が10ビット拡張レイヤ画素を予測するために使用されるべきである場合、画素は、最初に、8ビット表現から10ビット表現に進むために2ビットだけ左側にシフトされ得る。ビット深度変換が実行されたとき、ブラック画素の予測値は依然として0(0<<2)であり、ホワイト画素の予測値は1020(1111 1111<<2であり、それは11 1111 1100=1020である)である。ビット深度変換が実行された後、ブラック画素の予測値は実効値0に等しいが、ホワイト画素の予測値1020は、実際の拡張レイヤ画素値が1023であろうように3だけ離れる。一実施形態では、全体的予測誤差が低減され得るように、全ての予測値に固定オフセットが加算される。一例では、オフセットは、範囲の中心にある値であり得る。例えば、全ての予測値に固定オフセット2が加算され得、それにより、平均して予測誤差を低減することになる。別の実施形態では、オフセット値は、予測誤差が各画素(又は各PU、CU、LCU、又はピクチャ、あるいは他の単位)について最小限に抑えられるように、複数のオフセット値(例えば、この例では、0、1、2、3)から適応的に選択される。例えば、ブラック画素のためのオフセットは0になるように選択され得、ホワイト画素のためのオフセットは3になるように選択され得る。
ルックアップテーブルからの合成オフセット(Combined Offset)の導出
[00187]一実施形態では、合成オフセットO’はルックアップテーブル(例えば、範囲マッピングルックアップテーブル)から導出され得る。そのようなルックアップテーブルは、入力としてベースレイヤ画素値を取り、それぞれのベースレイヤ画素値のためのオフセット値を出力し得る。従って、拡張レイヤ画素を予測するために使用されるべきオフセット値は、ベースレイヤ中の対応する(例えば、同一位置配置)画素の色成分値(例えば、画素強度値)に基づき得る。一実施形態では、ルックアップテーブルはエンコーダによってデコーダに送信される。別の実施形態では、固定ルックアップテーブルはエンコーダとデコーダの両方に知られている。そのような場合、エンコーダは、エンコーダがルックアップテーブルを使用していることをデコーダに、ただ信号伝達し得る。
相互成分予測
[00188]幾つかの実施形態では、異なる色成分(例えば、ルーマ、クロマなど)が別々に処理され得る。例えば、ベースレイヤ画素のルーマ成分が、拡張レイヤ画素のクロマ成分を予測するために使用され得る。他の実施形態では、1つ又は複数の色成分が、他の色成分を予測するために使用され得る。例えば、以下に示すように、ベースレイヤ画素のルーマ成分は、対応する拡張レイヤ画素のクロマ成分のより小さいK(ビット深度差)ビットを予測するために使用され得る(その逆も同様)。
Figure 2016511619
但し、Wは(T−K)に等しい。例えば、ルーマ信号は、クロマ信号よりも多くの詳細を含み得る。従って、拡張レイヤクロマ成分を予測するためにベースレイヤクロマ成分がフィルタ処理される場合、一部の詳細はプロセス中に容易に失われ得る。式(10)の例では、ルーマ成分が、クロマ成分を予測するために使用される。従って、そうすることによって、更なる詳細が維持され得る。
[00189]本明細書で開示する情報及び信号は、多種多様な技術及び技法のいずれかを使用して表され得る。例えば、上記の説明全体にわたって言及され得るデータ、命令、コマンド、情報、信号、ビット、シンボル、及びチップは、電圧、電流、電磁波、磁界又は磁性粒子、光場又は光学粒子、あるいはそれらの任意の組合せによって表され得る。
[00190]本明細書で開示する実施形態に関して説明した様々な例示的な論理ブロック、モジュール、回路、及びアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、又は両方の組合せとして実装され得る。ハードウェアとソフトウェアのこの互換性を明確に示すために、様々な例示的な構成要素、ブロック、モジュール、回路、及びステップについて、上記では概してそれらの機能に関して説明した。そのような機能をハードウェアとして実装するか、ソフトウェアとして実装するかは、特定の適用例及び全体的なシステムに課された設計制約に依存する。当業者は、説明した機能を特定の適用例ごとに様々な方法で実装し得るが、そのような実装の決定は、本発明の範囲からの逸脱を生じるものと解釈されるべきではない。
[00191]本明細書で説明した技法は、ハードウェア、ソフトウェア、ファームウェア、又はそれらの任意の組合せで実装され得る。そのような技法は、汎用コンピュータ、ワイヤレス通信機器ハンドセット、又はワイヤレス通信機器ハンドセット及び他の機器における適用例を含む複数の用途を有する集積回路デバイスなど、様々な機器のいずれかにおいて実装され得る。モジュール又は構成要素として説明した特徴は、集積論理デバイスに一緒に、又は個別であるが相互運用可能な論理デバイスとして別々に実装され得る。ソフトウェアで実装した場合、本技法は、実行されたとき、上記で説明した方法のうちの1つ又は複数を実行する命令を含むプログラムコードを備えるコンピュータ可読データ記憶媒体によって、少なくとも部分的に実現され得る。コンピュータ可読データ記憶媒体は、パッケージング材料を含むことがあるコンピュータプログラム製品の一部を形成し得る。コンピュータ可読媒体は、同期型ダイナミックランダムアクセスメモリ(SDRAM)などのランダムアクセスメモリ(RAM)、読取り専用メモリ(ROM)、不揮発性ランダムアクセスメモリ(NVRAM)、電気消去可能プログラマブル読取り専用メモリ(EEPROM(登録商標))、フラッシュメモリ、磁気又は光学データ記憶媒体など、メモリ又はデータ記憶媒体を備え得る。本技法は、追加又は代替として、伝搬信号又は電波など、命令又はデータ構造の形態でプログラムコードを搬送又は伝達し、コンピュータによってアクセスされ、読み取られ、及び/又は実行され得るコンピュータ可読通信媒体によって、少なくとも部分的に実現され得る。
[00192]プログラムコードは、1つ又は複数のデジタル信号プロセッサ(DSP)、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルロジックアレイ(FPGA)、又は他の等価の集積回路又はディスクリート論理回路など、1つ又は複数のプロセッサを含み得るプロセッサによって実行され得る。そのようなプロセッサは、本開示で説明する技法のいずれかを実行するように構成され得る。汎用プロセッサはマイクロプロセッサであり得るが、代替として、プロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラ、又は状態機械であり得る。プロセッサは、コンピュータ機器の組合せ、例えば、DSPとマイクロプロセッサとの組合せ、複数のマイクロプロセッサ、DSPコアと連携する1つ又は複数のマイクロプロセッサ、あるいは任意の他のそのような構成として実装され得る。従って、本明細書で使用する「プロセッサ」という用語は、上記の構造、上記の構造の任意の組合せ、又は本明細書で説明した技法の実装に好適な他の構造又は装置のいずれかを指す。更に、幾つかの態様では、本明細書で説明した機能は、符号化及び復号のために構成された専用のソフトウェアモジュール又はハードウェアモジュール内に提供されるか、あるいは複合ビデオエンコーダ/デコーダ(コーデック)に組み込まれ得る。また、本技法は、1つ又は複数の回路又は論理要素において完全に実装され得る。
[00193]本開示の技法は、ワイヤレスハンドセット、集積回路(IC)又はICのセット(例えば、チップセット)を含む、多種多様な機器又は装置において実装され得る。本開示では、開示する技法を実行するために構成された機器の機能的態様を強調するために様々な構成要素、モジュール、又はユニットについて説明したが、それらの構成要素、モジュール、又はユニットは、必ずしも異なるハードウェアユニットによる実現を必要とするとは限らない。むしろ、上記で説明したように、様々なユニットが、好適なソフトウェア及び/又はファームウェアとともに、上記で説明した1つ又は複数のプロセッサを含めて、コーデックハードウェアユニットにおいて組み合わせられるか、又は相互動作可能なハードウェアユニットの集合によって与えられ得る。
[00194]本発明の様々な実施形態について説明した。これら及び他の実施形態は以下の特許請求の範囲内に入る。
[00194]本発明の様々な実施形態について説明した。これら及び他の実施形態は以下の特許請求の範囲内に入る。
以下に本件出願当初の特許請求の範囲]に記載された発明を付記する。
[1] ビデオ情報をコード化するように構成された装置であって、前記装置は、参照レイヤ(RL)と拡張レイヤ(EL)とに関連付けられたビデオ情報を記憶するように構成されたメモリユニットと、前記ELがELビデオ単位を備え、前記RLが、前記ELビデオ単位に対応するRLビデオ単位を備える、前記メモリユニットと通信しているプロセッサとを備え、前記プロセッサが、前記ELビデオ単位の予測された画素情報を決定するために、単一の合成プロセスにおいて前記RLビデオ単位の画素情報に対してアップサンプリング及びビット深度変換を実行することと、前記予測された画素情報を使用して前記ELビデオ単位を決定することとを行うように構成された、装置。
[2] 前記ELビデオ単位がELピクチャと前記ELピクチャ内のELブロックとのうちの1つであり、前記RLビデオ単位がRLピクチャと前記RLピクチャ内のRLブロックとのうちの1つである、[1]に記載の装置。
[3] 前記プロセッサが、アップサンプリングとビット深度変換とを同時に実行するように構成された、[1]に記載の装置。
[4] 前記ビット深度変換が、前記アップサンプリングされたRLビデオ単位に、前記ELビデオ単位のために使用されるのと同じビット数を有させる、[1]に記載の装置。
[5] 前記同時アップサンプリング及びビット深度変換が、アップサンプリングとビット深度変換の両方に寄与する少なくとも1つの演算を含む単段プロセスを備える、[1]に記載の装置。
[6] 前記プロセッサが、前記RLビデオ単位の前記画素情報に合成アップサンプリング及びビット深度変換フィルタを適用するように構成され、前記合成アップサンプリング及びビット深度変換フィルタが、前記RLと前記ELとの解像度比に基づいて前記RLビデオ単位の前記画素情報をアップサンプリングし、前記ELのビット深度と前記RLのビット深度との間の差に基づいて前記アップサンプリングされた画素情報のビット深度を変換するように構成された、[1]に記載の装置。
[7] 前記プロセッサが、前記RLビデオ単位の前記画素情報に合成ビット深度変換及びアップサンプリングフィルタを適用するように構成され、前記合成ビット深度変換及びアップサンプリングフィルタが、前記ELの前記ビット深度と前記RLの前記ビット深度との間の前記差に基づいて前記RLビデオ単位の前記画素情報の前記ビット深度を変換し、前記RLと前記ELとの解像度比に基づいて前記変換された画素情報をアップサンプリングするように構成された、[1]に記載の装置。
[8] 前記プロセッサが、1つ以上の重み係数とオフセットとビットシフト値とを有するアップサンプリング及びビット深度変換フィルタを適用するように構成され、ここにおいて、前記ビットシフト値が、前記ELに関連付けられたELビット深度と前記RLに関連付けられたRLビット深度との間の差に依存する、[1]に記載の装置。
[9] 前記プロセッサが、前記RLビデオ単位の前記画素情報に2次元分離可能フィルタを適用するように構成され、前記2次元分離可能フィルタが、1つ以上の重み係数と第1のオフセットと第1のビットシフト値とを有する水平アップサンプリング段と、1つ以上の追加の重み係数と第2のオフセットと第2のビットシフト値とを有する垂直アップサンプリング段とを備え、ここにおいて、前記第1のビットシフト値が、前記RLに関連付けられたRLビット深度に依存し、前記第2のビットシフト値が、前記ELに関連付けられたELビット深度に依存する、[1]に記載の装置。
[10] 前記プロセッサが、前記RLビデオ単位の前記画素情報に2次元分離可能フィルタを適用するように構成され、前記2次元分離可能フィルタが、1つ以上の重み係数と第1のオフセットと第1のビットシフト値とを有する水平アップサンプリング段と、1つ以上の追加の重み係数と第2のオフセットと第2のビットシフト値とを有する垂直アップサンプリング段とを備え、ここにおいて、前記第1のビットシフト値が、前記RLに関連付けられたRLビット深度に依存し、前記第2のビットシフト値が、前記ELに関連付けられたELビット深度と前記RLに関連付けられたRLビット深度との間のビット深度差によって決定される、[1]に記載の装置。
[11] 前記プロセッサが、前記RLビデオ単位の前記画素情報に2次元分離可能フィルタを適用するように構成され、前記2次元分離可能フィルタが、1つ以上の重み係数と第1のオフセットと第1のビットシフト値とを有する水平アップサンプリング段と、1つ以上の追加の重み係数と第2のオフセットと第2のビットシフト値とを有する垂直アップサンプリング段とを備え、ここにおいて、前記第1のビットシフト値は、前記ELに関連付けられたELビット深度と前記RLに関連付けられたRLビット深度とが同等である場合にビットシフト値と同じ方法で導出され、前記第2のビットシフト値は、前記ELビット深度と前記RLビット深度との間のビット深度差に基づいて導出され、前記ELビット深度と前記RLビット深度とが同等である場合に前記ビットシフト値よりも小さい、[1]に記載の装置。
[12] 前記プロセッサが、前記RLビデオ単位の前記画素情報に2次元非分離可能フィルタを適用するように構成され、前記2次元非分離可能フィルタが、前記RLの複数の画素値に対応する重み係数の行列によって乗算される前記複数の画素値の合計を備える、[1]に記載の装置。
[13] 前記プロセッサが、前記RLビデオ単位の前記画素情報に、1つ以上のフィルタ係数を有する合成アップサンプリング及びビット深度変換フィルタを適用することと、前記EL中の各フレームについて、前記ELビデオ単位を予測するための前記1つ以上のフィルタ係数を使用すべきかどうかを決定することと
を行うように更に構成された、[1]に記載の装置。
[14] 前記RLが第1の解像度と第1のビット深度とを有し、前記ELが、前記第1の解像度とは異なる第2の解像度と、前記第1のビット深度とは異なる第2のビット深度とを有し、前記アップサンプリング及びビット深度変換が、前記第1の解像度と前記第1のビット深度とを有する画素情報を前記第2の解像度と前記第2のビット深度とを有する画素情報に変換する、[1]に記載の装置。
[15] 前記プロセッサは、前記RLビデオ単位の前記画素情報に対してアップサンプリング及びビット深度変換を実行し、前記ビット深度変換が実行された後にオフセットを加算するように構成された、[1]に記載の装置。
[16] 前記プロセッサは、前記RLビデオ単位の前記画素情報に対してアップサンプリング及びビット深度変換を実行し、前記ビット深度変換が実行される前に単一の合成オフセットを加算するように構成された、[1]に記載の装置。
[17] 前記プロセッサは、前記RLビデオ単位の前記画素情報に対してアップサンプリング及びビット深度変換を実行し、前記ビット深度変換が実行される前に単一の合成オフセットを加算するように構成され、前記合成オフセットの値が、レート歪み性能に基づいて複数のオフセット値から適応的に選択される、[1]に記載の装置。
[18] 前記プロセッサは、前記RLビデオ単位の前記画素情報に対してアップサンプリング及びビット深度変換を実行し、前記ビット深度変換が実行される前に単一の合成オフセットを加算するように構成され、前記合成オフセットの前記値が、前記RLビデオ単位の前記画素情報に基づいて前記合成オフセットの前記値を出力するように構成されたルックアップテーブルから導出される、[1]に記載の装置。
[19] 前記プロセッサが、前記RLビデオ単位の前記画素情報のクロマ成分とルーマ成分の両方に基づいて、前記予測された画素情報のクロマ成分を決定するように構成された、[1]に記載の装置。
[20] 前記装置がエンコーダを備え、前記プロセッサが、前記予測された画素情報を使用して前記ELビデオ単位を符号化するように更に構成された、[1]に記載の装置。
[21] 前記装置がデコーダを備え、前記プロセッサが、前記予測された画素情報を使用して前記ELビデオ単位を復号するように更に構成された、[1]に記載の装置。
[22] 前記装置が、コンピュータと、ノートブックと、ラップトップと、コンピュータと、タブレットコンピュータと、セットトップボックスと、電話ハンドセットと、スマートフォンと、スマートパッドと、テレビジョンと、カメラと、表示装置と、デジタルメディアプレーヤと、ビデオゲームコンソールと、車内コンピュータとのうちの1つ又は複数なるグループから選択される機器を備える、[1]に記載の装置。
[23] ビデオ情報をコード化する方法であって、前記方法は、参照レイヤ(RL)と拡張レイヤ(EL)とに関連付けられたビデオ情報を記憶することと、前記ELがELビデオ単位を備え、前記RLが、前記ELビデオ単位に対応するRLビデオ単位を備える、前記ELビデオ単位の予測された画素情報を決定するために、単一の合成プロセスにおいて前記RLビデオ単位の画素情報に対してアップサンプリング及びビット深度変換を実行することと、前記予測された画素情報を使用して前記ELビデオ単位を決定することと
を備える、方法。
[24] 前記ELビデオ単位がELピクチャと前記ELピクチャ内のELブロックとのうちの1つであり、前記RLビデオ単位がRLピクチャと前記RLピクチャ内のRLブロックとのうちの1つである、[23]に記載の方法。
[25] 前記画素情報に対してアップサンプリング及びビット深度変換を実行することが、前記アップサンプリングと前記ビット深度変換とを同時に実行することを備える、[23]に記載の方法。
[26] 前記ビット深度変換が、前記アップサンプリングされたRLビデオ単位に、前記ELビデオ単位のために使用されるのと同じビット数を有させる、[23]に記載の方法。
[27] アップサンプリング及びビット深度変換を実行することが、アップサンプリングとビット深度変換の両方に寄与する少なくとも1つの演算を含む単段プロセスを実行することを更に備える、[23]に記載の方法。
[28] 前記RLビデオ単位の前記画素情報に合成アップサンプリング及びビット深度変換フィルタを適用することを更に備え、前記合成アップサンプリング及びビット深度変換フィルタが、前記RLと前記ELとの解像度比に基づいて前記RLビデオ単位の前記画素情報をアップサンプリングし、前記ELのビット深度と前記RLのビット深度との間の差に基づいて前記アップサンプリングされた画素情報のビット深度を変換するように構成された、[23]に記載の方法。
[29] 前記RLビデオ単位の前記画素情報に合成ビット深度変換及びアップサンプリングフィルタを適用することを更に備え、前記合成ビット深度変換及びアップサンプリングフィルタが、前記ELの前記ビット深度と前記RLの前記ビット深度との間の前記差に基づいて前記RLビデオ単位の前記画素情報の前記ビット深度を変換し、前記RLと前記ELとの解像度比に基づいて前記変換された画素情報をアップサンプリングするように構成された、[23]に記載の方法。
[30] プロセッサが、1つ以上の重み係数とオフセットとビットシフト値とを有するアップサンプリング及びビット深度変換フィルタを適用するように構成され、ここにおいて、前記ビットシフト値が、前記ELに関連付けられたELビット深度と前記RLに関連付けられたRLビット深度との間の差に依存する、[23]に記載の方法。
[31] 前記プロセッサが、前記RLビデオ単位の前記画素情報に2次元分離可能フィルタを適用するように構成され、前記2次元分離可能フィルタが、1つ以上の重み係数と第1のオフセットと第1のビットシフト値とを有する水平アップサンプリング段と、1つ以上の追加の重み係数と第2のオフセットと第2のビットシフト値とを有する垂直アップサンプリング段とを備え、ここにおいて、前記第1のビットシフト値が、前記RLに関連付けられたRLビット深度に依存し、前記第2のビットシフト値が、前記ELに関連付けられたELビット深度に依存する、[23]に記載の方法。
[32] 前記プロセッサが、前記RLビデオ単位の前記画素情報に2次元分離可能フィルタを適用するように構成され、前記2次元分離可能フィルタが、1つ以上の重み係数と第1のオフセットと第1のビットシフト値とを有する水平アップサンプリング段と、1つ以上の追加の重み係数と第2のオフセットと第2のビットシフト値とを有する垂直アップサンプリング段とを備え、ここにおいて、前記第1のビットシフト値が、前記RLに関連付けられたRLビット深度に依存し、前記第2のビットシフト値が、前記ELに関連付けられたELビット深度と前記RLに関連付けられたRLビット深度との間のビット深度差によって決定される、[23]に記載の方法。
[33] 前記プロセッサが、前記RLビデオ単位の前記画素情報に2次元分離可能フィルタを適用するように構成され、前記2次元分離可能フィルタが、1つ以上の重み係数と第1のオフセットと第1のビットシフト値とを有する水平アップサンプリング段と、1つ以上の追加の重み係数と第2のオフセットと第2のビットシフト値とを有する垂直アップサンプリング段とを備え、ここにおいて、前記第1のビットシフト値は、前記ELに関連付けられたELビット深度と前記RLに関連付けられたRLビット深度とが同等である場合にビットシフト値と同じ方法で導出され、前記第2のビットシフト値は、前記ELビット深度と前記RLビット深度との間のビット深度差に基づいて導出され、前記ELビット深度と前記RLビット深度とが同等である場合に前記ビットシフト値よりも小さい、[23]に記載の方法。
[34] 前記RLビデオ単位の前記画素情報に2次元非分離可能フィルタを適用することを更に備え、前記2次元非分離可能フィルタが、前記RLの複数の画素値に対応する重み係数の行列によって乗算される前記複数の画素値の合計を備える、[23]に記載の方法。
[35] 前記RLビデオ単位の前記画素情報に、1つ以上のフィルタ係数を有する合成アップサンプリング及びビット深度変換フィルタを適用することと、前記EL中の各フレームについて、前記ELビデオ単位を予測するための前記1つ以上のフィルタ係数を使用すべきかどうかを決定することと
を更に備える、[23]に記載の方法。
[36] 前記RLが第1の解像度と第1のビット深度とを有し、前記ELが、前記第1の解像度とは異なる第2の解像度と、前記第1のビット深度とは異なる第2のビット深度とを有し、前記アップサンプリング及びビット深度変換が、前記第1の解像度と前記第1のビット深度とを有する画素情報を前記第2の解像度と前記第2のビット深度とを有する画素情報に変換する、[23]に記載の方法。
[37] 前記RLビデオ単位の前記画素情報に対してアップサンプリング及びビット深度変換を実行することと、前記ビット深度変換が実行された後にオフセットを加算することと
を更に備える、[23]に記載の方法。
[38] 前記RLビデオ単位の前記画素情報に対してアップサンプリング及びビット深度変換を実行することと、前記ビット深度変換が実行される前に単一の合成オフセットを加算することと
を更に備える、[23]に記載の方法。
[39] 前記RLビデオ単位の前記画素情報に対してアップサンプリング及びビット深度変換を実行することと、前記ビット深度変換が実行される前に単一の合成オフセットを加算することと、前記合成オフセットの値が、レート歪み性能に基づいて複数のオフセット値から適応的に選択される、
を更に備える、[23]に記載の方法。
[40] 前記RLビデオ単位の前記画素情報に対してアップサンプリング及びビット深度変換を実行することと、前記ビット深度変換が実行される前に単一の合成オフセットを加算することと、前記合成オフセットの前記値が、前記RLビデオ単位の前記画素情報に基づいて前記合成オフセットの前記値を出力するように構成されたルックアップテーブルから導出される、
を更に備える、[23]に記載の方法。
[41] 前記RLビデオ単位の前記画素情報のクロマ成分とルーマ成分の両方に基づいて、前記予測された画素情報のクロマ成分を決定することを更に備える、[23]に記載の方法。
[42] 実行されたとき、参照レイヤ(RL)と拡張レイヤ(EL)とに関連付けられたビデオ情報を記憶することと、前記ELがELビデオ単位を備え、前記RLが、前記ELビデオ単位に対応するRLビデオ単位を備える、前記ELビデオ単位の予測された画素情報を決定するために、単一の合成プロセスにおいて前記RLビデオ単位の画素情報に対してアップサンプリング及びビット深度変換を実行することと、前記予測された画素情報を使用して前記ELビデオ単位を決定することと
を備えるプロセスを装置に実行させるコードを備える、コンピュータ可読記憶媒体。
[43] アップサンプリング及びビット深度変換を実行することが、アップサンプリングとビット深度変換の両方に寄与する少なくとも1つの演算を含む単段プロセスを実行することを更に備える、[42]に記載のコンピュータ可読記憶媒体。
[44] ビデオ情報をコード化するように構成されたビデオコード化機器であって、前記ビデオコード化機器は、参照レイヤ(RL)と拡張レイヤ(EL)とに関連付けられたビデオ情報を記憶するための手段と、前記ELがELビデオ単位を備え、前記RLが、前記ELビデオ単位に対応するRLビデオ単位を備える、前記ELビデオ単位の予測された画素情報を決定するために、単一の合成プロセスにおいて前記RLビデオ単位の画素情報に対してアップサンプリング及びビット深度変換を実行するための手段と、前記予測された画素情報を使用して前記ELビデオ単位を決定するための手段と
を備える、ビデオコード化機器。
[45] アップサンプリング及びビット深度変換を実行するための前記手段が、アップサンプリングとビット深度変換の両方に寄与する少なくとも1つの演算を含む単段プロセスを実行するように構成された、[44]に記載のビデオコード化機器。

Claims (45)

  1. ビデオ情報をコード化するように構成された装置であって、前記装置は、
    参照レイヤ(RL)と拡張レイヤ(EL)とに関連付けられたビデオ情報を記憶するように構成されたメモリユニットと、前記ELがELビデオ単位を備え、前記RLが、前記ELビデオ単位に対応するRLビデオ単位を備える、
    前記メモリユニットと通信しているプロセッサと
    を備え、前記プロセッサが、
    前記ELビデオ単位の予測された画素情報を決定するために、単一の合成プロセスにおいて前記RLビデオ単位の画素情報に対してアップサンプリング及びビット深度変換を実行することと、
    前記予測された画素情報を使用して前記ELビデオ単位を決定することと
    を行うように構成された、装置。
  2. 前記ELビデオ単位がELピクチャと前記ELピクチャ内のELブロックとのうちの1つであり、前記RLビデオ単位がRLピクチャと前記RLピクチャ内のRLブロックとのうちの1つである、請求項1に記載の装置。
  3. 前記プロセッサが、アップサンプリングとビット深度変換とを同時に実行するように構成された、請求項1に記載の装置。
  4. 前記ビット深度変換が、前記アップサンプリングされたRLビデオ単位に、前記ELビデオ単位のために使用されるのと同じビット数を有させる、請求項1に記載の装置。
  5. 前記同時アップサンプリング及びビット深度変換が、アップサンプリングとビット深度変換の両方に寄与する少なくとも1つの演算を含む単段プロセスを備える、請求項1に記載の装置。
  6. 前記プロセッサが、前記RLビデオ単位の前記画素情報に合成アップサンプリング及びビット深度変換フィルタを適用するように構成され、前記合成アップサンプリング及びビット深度変換フィルタが、前記RLと前記ELとの解像度比に基づいて前記RLビデオ単位の前記画素情報をアップサンプリングし、前記ELのビット深度と前記RLのビット深度との間の差に基づいて前記アップサンプリングされた画素情報のビット深度を変換するように構成された、請求項1に記載の装置。
  7. 前記プロセッサが、前記RLビデオ単位の前記画素情報に合成ビット深度変換及びアップサンプリングフィルタを適用するように構成され、前記合成ビット深度変換及びアップサンプリングフィルタが、前記ELの前記ビット深度と前記RLの前記ビット深度との間の前記差に基づいて前記RLビデオ単位の前記画素情報の前記ビット深度を変換し、前記RLと前記ELとの解像度比に基づいて前記変換された画素情報をアップサンプリングするように構成された、請求項1に記載の装置。
  8. 前記プロセッサが、1つ以上の重み係数とオフセットとビットシフト値とを有するアップサンプリング及びビット深度変換フィルタを適用するように構成され、
    ここにおいて、前記ビットシフト値が、前記ELに関連付けられたELビット深度と前記RLに関連付けられたRLビット深度との間の差に依存する、請求項1に記載の装置。
  9. 前記プロセッサが、前記RLビデオ単位の前記画素情報に2次元分離可能フィルタを適用するように構成され、前記2次元分離可能フィルタが、1つ以上の重み係数と第1のオフセットと第1のビットシフト値とを有する水平アップサンプリング段と、1つ以上の追加の重み係数と第2のオフセットと第2のビットシフト値とを有する垂直アップサンプリング段とを備え、
    ここにおいて、前記第1のビットシフト値が、前記RLに関連付けられたRLビット深度に依存し、前記第2のビットシフト値が、前記ELに関連付けられたELビット深度に依存する、請求項1に記載の装置。
  10. 前記プロセッサが、前記RLビデオ単位の前記画素情報に2次元分離可能フィルタを適用するように構成され、前記2次元分離可能フィルタが、1つ以上の重み係数と第1のオフセットと第1のビットシフト値とを有する水平アップサンプリング段と、1つ以上の追加の重み係数と第2のオフセットと第2のビットシフト値とを有する垂直アップサンプリング段とを備え、
    ここにおいて、前記第1のビットシフト値が、前記RLに関連付けられたRLビット深度に依存し、前記第2のビットシフト値が、前記ELに関連付けられたELビット深度と前記RLに関連付けられたRLビット深度との間のビット深度差によって決定される、請求項1に記載の装置。
  11. 前記プロセッサが、前記RLビデオ単位の前記画素情報に2次元分離可能フィルタを適用するように構成され、前記2次元分離可能フィルタが、1つ以上の重み係数と第1のオフセットと第1のビットシフト値とを有する水平アップサンプリング段と、1つ以上の追加の重み係数と第2のオフセットと第2のビットシフト値とを有する垂直アップサンプリング段とを備え、
    ここにおいて、前記第1のビットシフト値は、前記ELに関連付けられたELビット深度と前記RLに関連付けられたRLビット深度とが同等である場合にビットシフト値と同じ方法で導出され、前記第2のビットシフト値は、前記ELビット深度と前記RLビット深度との間のビット深度差に基づいて導出され、前記ELビット深度と前記RLビット深度とが同等である場合に前記ビットシフト値よりも小さい、請求項1に記載の装置。
  12. 前記プロセッサが、前記RLビデオ単位の前記画素情報に2次元非分離可能フィルタを適用するように構成され、前記2次元非分離可能フィルタが、前記RLの複数の画素値に対応する重み係数の行列によって乗算される前記複数の画素値の合計を備える、請求項1に記載の装置。
  13. 前記プロセッサが、
    前記RLビデオ単位の前記画素情報に、1つ以上のフィルタ係数を有する合成アップサンプリング及びビット深度変換フィルタを適用することと、
    前記EL中の各フレームについて、前記ELビデオ単位を予測するための前記1つ以上のフィルタ係数を使用すべきかどうかを決定することと
    を行うように更に構成された、請求項1に記載の装置。
  14. 前記RLが第1の解像度と第1のビット深度とを有し、前記ELが、前記第1の解像度とは異なる第2の解像度と、前記第1のビット深度とは異なる第2のビット深度とを有し、前記アップサンプリング及びビット深度変換が、前記第1の解像度と前記第1のビット深度とを有する画素情報を前記第2の解像度と前記第2のビット深度とを有する画素情報に変換する、請求項1に記載の装置。
  15. 前記プロセッサは、前記RLビデオ単位の前記画素情報に対してアップサンプリング及びビット深度変換を実行し、前記ビット深度変換が実行された後にオフセットを加算するように構成された、請求項1に記載の装置。
  16. 前記プロセッサは、前記RLビデオ単位の前記画素情報に対してアップサンプリング及びビット深度変換を実行し、前記ビット深度変換が実行される前に単一の合成オフセットを加算するように構成された、請求項1に記載の装置。
  17. 前記プロセッサは、前記RLビデオ単位の前記画素情報に対してアップサンプリング及びビット深度変換を実行し、前記ビット深度変換が実行される前に単一の合成オフセットを加算するように構成され、前記合成オフセットの値が、レート歪み性能に基づいて複数のオフセット値から適応的に選択される、請求項1に記載の装置。
  18. 前記プロセッサは、前記RLビデオ単位の前記画素情報に対してアップサンプリング及びビット深度変換を実行し、前記ビット深度変換が実行される前に単一の合成オフセットを加算するように構成され、前記合成オフセットの前記値が、前記RLビデオ単位の前記画素情報に基づいて前記合成オフセットの前記値を出力するように構成されたルックアップテーブルから導出される、請求項1に記載の装置。
  19. 前記プロセッサが、前記RLビデオ単位の前記画素情報のクロマ成分とルーマ成分の両方に基づいて、前記予測された画素情報のクロマ成分を決定するように構成された、請求項1に記載の装置。
  20. 前記装置がエンコーダを備え、前記プロセッサが、前記予測された画素情報を使用して前記ELビデオ単位を符号化するように更に構成された、請求項1に記載の装置。
  21. 前記装置がデコーダを備え、前記プロセッサが、前記予測された画素情報を使用して前記ELビデオ単位を復号するように更に構成された、請求項1に記載の装置。
  22. 前記装置が、コンピュータと、ノートブックと、ラップトップと、コンピュータと、タブレットコンピュータと、セットトップボックスと、電話ハンドセットと、スマートフォンと、スマートパッドと、テレビジョンと、カメラと、表示装置と、デジタルメディアプレーヤと、ビデオゲームコンソールと、車内コンピュータとのうちの1つ又は複数なるグループから選択される機器を備える、請求項1に記載の装置。
  23. ビデオ情報をコード化する方法であって、前記方法は、
    参照レイヤ(RL)と拡張レイヤ(EL)とに関連付けられたビデオ情報を記憶することと、前記ELがELビデオ単位を備え、前記RLが、前記ELビデオ単位に対応するRLビデオ単位を備える、
    前記ELビデオ単位の予測された画素情報を決定するために、単一の合成プロセスにおいて前記RLビデオ単位の画素情報に対してアップサンプリング及びビット深度変換を実行することと、
    前記予測された画素情報を使用して前記ELビデオ単位を決定することと
    を備える、方法。
  24. 前記ELビデオ単位がELピクチャと前記ELピクチャ内のELブロックとのうちの1つであり、前記RLビデオ単位がRLピクチャと前記RLピクチャ内のRLブロックとのうちの1つである、請求項23に記載の方法。
  25. 前記画素情報に対してアップサンプリング及びビット深度変換を実行することが、前記アップサンプリングと前記ビット深度変換とを同時に実行することを備える、請求項23に記載の方法。
  26. 前記ビット深度変換が、前記アップサンプリングされたRLビデオ単位に、前記ELビデオ単位のために使用されるのと同じビット数を有させる、請求項23に記載の方法。
  27. アップサンプリング及びビット深度変換を実行することが、アップサンプリングとビット深度変換の両方に寄与する少なくとも1つの演算を含む単段プロセスを実行することを更に備える、請求項23に記載の方法。
  28. 前記RLビデオ単位の前記画素情報に合成アップサンプリング及びビット深度変換フィルタを適用することを更に備え、前記合成アップサンプリング及びビット深度変換フィルタが、前記RLと前記ELとの解像度比に基づいて前記RLビデオ単位の前記画素情報をアップサンプリングし、前記ELのビット深度と前記RLのビット深度との間の差に基づいて前記アップサンプリングされた画素情報のビット深度を変換するように構成された、請求項23に記載の方法。
  29. 前記RLビデオ単位の前記画素情報に合成ビット深度変換及びアップサンプリングフィルタを適用することを更に備え、前記合成ビット深度変換及びアップサンプリングフィルタが、前記ELの前記ビット深度と前記RLの前記ビット深度との間の前記差に基づいて前記RLビデオ単位の前記画素情報の前記ビット深度を変換し、前記RLと前記ELとの解像度比に基づいて前記変換された画素情報をアップサンプリングするように構成された、請求項23に記載の方法。
  30. プロセッサが、1つ以上の重み係数とオフセットとビットシフト値とを有するアップサンプリング及びビット深度変換フィルタを適用するように構成され、
    ここにおいて、前記ビットシフト値が、前記ELに関連付けられたELビット深度と前記RLに関連付けられたRLビット深度との間の差に依存する、請求項23に記載の方法。
  31. 前記プロセッサが、前記RLビデオ単位の前記画素情報に2次元分離可能フィルタを適用するように構成され、前記2次元分離可能フィルタが、1つ以上の重み係数と第1のオフセットと第1のビットシフト値とを有する水平アップサンプリング段と、1つ以上の追加の重み係数と第2のオフセットと第2のビットシフト値とを有する垂直アップサンプリング段とを備え、
    ここにおいて、前記第1のビットシフト値が、前記RLに関連付けられたRLビット深度に依存し、前記第2のビットシフト値が、前記ELに関連付けられたELビット深度に依存する、請求項23に記載の方法。
  32. 前記プロセッサが、前記RLビデオ単位の前記画素情報に2次元分離可能フィルタを適用するように構成され、前記2次元分離可能フィルタが、1つ以上の重み係数と第1のオフセットと第1のビットシフト値とを有する水平アップサンプリング段と、1つ以上の追加の重み係数と第2のオフセットと第2のビットシフト値とを有する垂直アップサンプリング段とを備え、
    ここにおいて、前記第1のビットシフト値が、前記RLに関連付けられたRLビット深度に依存し、前記第2のビットシフト値が、前記ELに関連付けられたELビット深度と前記RLに関連付けられたRLビット深度との間のビット深度差によって決定される、請求項23に記載の方法。
  33. 前記プロセッサが、前記RLビデオ単位の前記画素情報に2次元分離可能フィルタを適用するように構成され、前記2次元分離可能フィルタが、1つ以上の重み係数と第1のオフセットと第1のビットシフト値とを有する水平アップサンプリング段と、1つ以上の追加の重み係数と第2のオフセットと第2のビットシフト値とを有する垂直アップサンプリング段とを備え、
    ここにおいて、前記第1のビットシフト値は、前記ELに関連付けられたELビット深度と前記RLに関連付けられたRLビット深度とが同等である場合にビットシフト値と同じ方法で導出され、前記第2のビットシフト値は、前記ELビット深度と前記RLビット深度との間のビット深度差に基づいて導出され、前記ELビット深度と前記RLビット深度とが同等である場合に前記ビットシフト値よりも小さい、請求項23に記載の方法。
  34. 前記RLビデオ単位の前記画素情報に2次元非分離可能フィルタを適用することを更に備え、前記2次元非分離可能フィルタが、前記RLの複数の画素値に対応する重み係数の行列によって乗算される前記複数の画素値の合計を備える、請求項23に記載の方法。
  35. 前記RLビデオ単位の前記画素情報に、1つ以上のフィルタ係数を有する合成アップサンプリング及びビット深度変換フィルタを適用することと、
    前記EL中の各フレームについて、前記ELビデオ単位を予測するための前記1つ以上のフィルタ係数を使用すべきかどうかを決定することと
    を更に備える、請求項23に記載の方法。
  36. 前記RLが第1の解像度と第1のビット深度とを有し、前記ELが、前記第1の解像度とは異なる第2の解像度と、前記第1のビット深度とは異なる第2のビット深度とを有し、前記アップサンプリング及びビット深度変換が、前記第1の解像度と前記第1のビット深度とを有する画素情報を前記第2の解像度と前記第2のビット深度とを有する画素情報に変換する、請求項23に記載の方法。
  37. 前記RLビデオ単位の前記画素情報に対してアップサンプリング及びビット深度変換を実行することと、
    前記ビット深度変換が実行された後にオフセットを加算することと
    を更に備える、請求項23に記載の方法。
  38. 前記RLビデオ単位の前記画素情報に対してアップサンプリング及びビット深度変換を実行することと、
    前記ビット深度変換が実行される前に単一の合成オフセットを加算することと
    を更に備える、請求項23に記載の方法。
  39. 前記RLビデオ単位の前記画素情報に対してアップサンプリング及びビット深度変換を実行することと、
    前記ビット深度変換が実行される前に単一の合成オフセットを加算することと、前記合成オフセットの値が、レート歪み性能に基づいて複数のオフセット値から適応的に選択される、
    を更に備える、請求項23に記載の方法。
  40. 前記RLビデオ単位の前記画素情報に対してアップサンプリング及びビット深度変換を実行することと、
    前記ビット深度変換が実行される前に単一の合成オフセットを加算することと、前記合成オフセットの前記値が、前記RLビデオ単位の前記画素情報に基づいて前記合成オフセットの前記値を出力するように構成されたルックアップテーブルから導出される、
    を更に備える、請求項23に記載の方法。
  41. 前記RLビデオ単位の前記画素情報のクロマ成分とルーマ成分の両方に基づいて、前記予測された画素情報のクロマ成分を決定することを更に備える、請求項23に記載の方法。
  42. 実行されたとき、
    参照レイヤ(RL)と拡張レイヤ(EL)とに関連付けられたビデオ情報を記憶することと、前記ELがELビデオ単位を備え、前記RLが、前記ELビデオ単位に対応するRLビデオ単位を備える、
    前記ELビデオ単位の予測された画素情報を決定するために、単一の合成プロセスにおいて前記RLビデオ単位の画素情報に対してアップサンプリング及びビット深度変換を実行することと、
    前記予測された画素情報を使用して前記ELビデオ単位を決定することと
    を備えるプロセスを装置に実行させるコードを備える、非一時的コンピュータ可読媒体。
  43. アップサンプリング及びビット深度変換を実行することが、アップサンプリングとビット深度変換の両方に寄与する少なくとも1つの演算を含む単段プロセスを実行することを更に備える、請求項42に記載の非一時的コンピュータ可読媒体。
  44. ビデオ情報をコード化するように構成されたビデオコード化機器であって、前記ビデオコード化機器は、
    参照レイヤ(RL)と拡張レイヤ(EL)とに関連付けられたビデオ情報を記憶するための手段と、前記ELがELビデオ単位を備え、前記RLが、前記ELビデオ単位に対応するRLビデオ単位を備える、
    前記ELビデオ単位の予測された画素情報を決定するために、単一の合成プロセスにおいて前記RLビデオ単位の画素情報に対してアップサンプリング及びビット深度変換を実行するための手段と、
    前記予測された画素情報を使用して前記ELビデオ単位を決定するための手段と
    を備える、ビデオコード化機器。
  45. アップサンプリング及びビット深度変換を実行するための前記手段が、アップサンプリングとビット深度変換の両方に寄与する少なくとも1つの演算を含む単段プロセスを実行するように構成された、請求項44に記載のビデオコード化機器。
JP2016501529A 2013-03-15 2014-03-12 ビデオ情報のスケーラブルコード化のための装置及び方法 Active JP6333942B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201361790538P 2013-03-15 2013-03-15
US61/790,538 2013-03-15
US14/205,006 US9800884B2 (en) 2013-03-15 2014-03-11 Device and method for scalable coding of video information
US14/205,006 2014-03-11
PCT/US2014/024423 WO2014150864A2 (en) 2013-03-15 2014-03-12 Device and method for scalable coding of video information

Publications (3)

Publication Number Publication Date
JP2016511619A true JP2016511619A (ja) 2016-04-14
JP2016511619A5 JP2016511619A5 (ja) 2017-03-30
JP6333942B2 JP6333942B2 (ja) 2018-05-30

Family

ID=51526960

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016501529A Active JP6333942B2 (ja) 2013-03-15 2014-03-12 ビデオ情報のスケーラブルコード化のための装置及び方法

Country Status (9)

Country Link
US (1) US9800884B2 (ja)
EP (1) EP2974312B1 (ja)
JP (1) JP6333942B2 (ja)
KR (1) KR102301450B1 (ja)
CN (1) CN105009590B (ja)
BR (1) BR112015023800B8 (ja)
ES (1) ES2778350T3 (ja)
HU (1) HUE046979T2 (ja)
WO (1) WO2014150864A2 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2534843A4 (en) * 2010-02-08 2017-01-18 Nokia Technologies Oy An apparatus, a method and a computer program for video coding
WO2015054307A2 (en) * 2013-10-07 2015-04-16 Vid Scale, Inc. Combined scalability processing for multi-layer video coding
US20150264368A1 (en) * 2014-03-14 2015-09-17 Sony Corporation Method to bypass re-sampling process in shvc with bit-depth and 1x scalability
US20170034538A1 (en) * 2015-07-27 2017-02-02 Sony Computer Entertainment Inc. Encode/Decode Strategy for Mitigating Irregular Stream Decoding Time
EP3340620A4 (en) * 2015-08-23 2019-04-17 LG Electronics Inc. IMAGE PROCESSING METHOD BASED ON INTER-PREDICTION MODE AND APPARATUS THEREOF
WO2017188782A2 (ko) * 2016-04-29 2017-11-02 세종대학교 산학협력단 영상 신호 부호화/복호화 방법 및 장치
US10638126B2 (en) * 2017-05-05 2020-04-28 Qualcomm Incorporated Intra reference filter for video coding
US10992939B2 (en) * 2017-10-23 2021-04-27 Google Llc Directional intra-prediction coding
MX2020003656A (es) * 2017-10-02 2020-10-12 Arris Entpr Llc Sistema y método para reducir artefactos de bloque y proporcionar eficiencia de codificación mejorada.
US10841604B2 (en) * 2018-09-04 2020-11-17 Google Llc Temporal prediction shifting for scalable video coding
CN110662031B (zh) * 2019-03-11 2021-03-23 杭州海康威视数字技术股份有限公司 解码方法及装置
CN110677690B (zh) * 2019-09-27 2022-07-01 腾讯科技(深圳)有限公司 视频处理方法和装置、存储介质
WO2021066508A1 (ko) * 2019-09-30 2021-04-08 현대자동차주식회사 다른 해상도를 가지는 픽처들에 대한 인터 예측 방법 및 장치
CN112055203B (zh) * 2020-08-22 2024-04-12 浙江大华技术股份有限公司 帧间预测方法、视频编码方法及其相关装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010514236A (ja) * 2006-12-14 2010-04-30 トムソン ライセンシング 空間予測及びビット深度予測の適応的予測順序を使用してビデオ・データを符号化し、かつ/又は復号化する方法及び装置
JP2010531584A (ja) * 2007-06-27 2010-09-24 トムソン ライセンシング ビット深さスケーラビリティのために向上層残差予測を使ってビデオ・データをエンコードおよび/またはデコードする方法および装置
JP2010531585A (ja) * 2007-06-29 2010-09-24 フラウンホファー・ゲゼルシャフト・ツール・フォルデルング・デル・アンゲバンテン・フォルシュング・アインゲトラーゲネル・フェライン ビデオエンコーダ、ビデオデコーダ、エンコードするための方法、デコードするための方法、コンピュータプログラム、およびスケーラブルなビットストリーム
JP2011501568A (ja) * 2007-10-19 2011-01-06 トムソン ライセンシング 統合された空間・ビット深度スケーラビリティ

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7062096B2 (en) 2002-07-29 2006-06-13 Matsushita Electric Industrial Co., Ltd. Apparatus and method for performing bitplane coding with reordering in a fine granularity scalability coding system
KR20060105409A (ko) 2005-04-01 2006-10-11 엘지전자 주식회사 영상 신호의 스케일러블 인코딩 및 디코딩 방법
US20050259729A1 (en) * 2004-05-21 2005-11-24 Shijun Sun Video coding with quality scalability
US7590300B2 (en) * 2004-06-24 2009-09-15 Intel Corporation Image filtering methods and apparatus
JP2006011685A (ja) 2004-06-24 2006-01-12 Noritsu Koki Co Ltd 写真画像処理方法及びその装置
US8199812B2 (en) * 2007-01-09 2012-06-12 Qualcomm Incorporated Adaptive upsampling for scalable video coding
US8432968B2 (en) * 2007-10-15 2013-04-30 Qualcomm Incorporated Scalable video coding techniques for scalable bitdepths
US8953673B2 (en) * 2008-02-29 2015-02-10 Microsoft Corporation Scalable video coding and decoding with sample bit depth and chroma high-pass residual layers
BRPI1008372A2 (pt) 2009-02-11 2018-03-06 Thomson Licensing métodos e aparelho para codificação e decodificação de vídeo escalável com profundidade de bit utilizando mapeamento de tons e mapeamento inverso de tons
KR101597987B1 (ko) * 2009-03-03 2016-03-08 삼성전자주식회사 계층 독립적 잔차 영상 다계층 부호화 장치 및 방법
US9078008B2 (en) * 2009-04-20 2015-07-07 Dolby Laboratories Licensing Corporation Adaptive inter-layer interpolation filters for multi-layered video delivery
US8934540B2 (en) 2010-07-20 2015-01-13 Cisco Technology, Inc. Video compression using multiple variable length coding methods for multiple types of transform coefficient blocks
WO2012086203A1 (ja) * 2010-12-22 2012-06-28 パナソニック株式会社 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法
BR112014012351A2 (pt) * 2011-11-08 2017-05-30 Motorola Mobility Llc dispositivos e métodos para codificação e/ou de sinalização de deslocamento adaptado de amostra
KR20180112099A (ko) * 2012-07-09 2018-10-11 브이아이디 스케일, 인크. 멀티 레이어 비디오 코딩용 코덱 아키텍처

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010514236A (ja) * 2006-12-14 2010-04-30 トムソン ライセンシング 空間予測及びビット深度予測の適応的予測順序を使用してビデオ・データを符号化し、かつ/又は復号化する方法及び装置
JP2010531584A (ja) * 2007-06-27 2010-09-24 トムソン ライセンシング ビット深さスケーラビリティのために向上層残差予測を使ってビデオ・データをエンコードおよび/またはデコードする方法および装置
JP2010531585A (ja) * 2007-06-29 2010-09-24 フラウンホファー・ゲゼルシャフト・ツール・フォルデルング・デル・アンゲバンテン・フォルシュング・アインゲトラーゲネル・フェライン ビデオエンコーダ、ビデオデコーダ、エンコードするための方法、デコードするための方法、コンピュータプログラム、およびスケーラブルなビットストリーム
JP2011501568A (ja) * 2007-10-19 2011-01-06 トムソン ライセンシング 統合された空間・ビット深度スケーラビリティ

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
DO-KYOUNG KWON TEXAS INSTRUMENTS INC., USA: "Inter-layer texture prediction for bit-depth and chroma format scalability[online]", JCTVC-L JCTVC-L0229, JPN6017047148 *
YONGYING GAO, IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY, vol. V19 N4, JPN5016003886, 1 April 2009 (2009-04-01), US, pages 00 - 510 *

Also Published As

Publication number Publication date
ES2778350T3 (es) 2020-08-10
BR112015023800A2 (pt) 2017-07-18
JP6333942B2 (ja) 2018-05-30
KR102301450B1 (ko) 2021-09-10
EP2974312B1 (en) 2019-12-18
HUE046979T2 (hu) 2020-04-28
BR112015023800B1 (pt) 2023-04-25
US20140269939A1 (en) 2014-09-18
US9800884B2 (en) 2017-10-24
CN105009590B (zh) 2018-10-02
BR112015023800B8 (pt) 2023-10-17
WO2014150864A2 (en) 2014-09-25
CN105009590A (zh) 2015-10-28
EP2974312A2 (en) 2016-01-20
KR20150128915A (ko) 2015-11-18
WO2014150864A3 (en) 2014-12-18

Similar Documents

Publication Publication Date Title
JP6333942B2 (ja) ビデオ情報のスケーラブルコード化のための装置及び方法
JP6285020B2 (ja) コンポーネント間フィルタ処理
JP6141386B2 (ja) 深度範囲パラメータのシグナリング
JP6297670B2 (ja) ハイレベルシンタックスのみのスケーラブルビデオコーディングのための、レイヤ間参照ピクチャ制限
KR102140361B1 (ko) 멀티 계층 코딩에서의 컨포먼스 윈도우 정보
JP6440735B2 (ja) マルチレイヤビデオコーデックのためのレベル定義
JP6231128B2 (ja) ビデオ情報のスケーラブル及びマルチビュー/3dコード化のための機器及び方法
US9769492B2 (en) Conformance parameters for bitstream partitions
US9420280B2 (en) Adaptive upsampling filters
US9344718B2 (en) Adaptive up-sampling filter for scalable video coding
US20140198846A1 (en) Device and method for scalable coding of video information
US9584808B2 (en) Device and method for scalable coding of video information
KR102314587B1 (ko) 비디오 정보의 스케일러블 코딩을 위한 디바이스 및 방법
JP6363190B2 (ja) Vps内のビットレート情報およびピクチャレート情報のシグナリング
JP6430394B2 (ja) 高効率ビデオコード化に基づくビデオ情報のスケーラブルコード化のための機器及び方法
US9674522B2 (en) Device and method for scalable coding of video information
JP2018514985A (ja) ビデオデータを処理するためのデバイスおよび方法
JP6479776B2 (ja) リサンプリングプロセスにおける中間データのダイナミックレンジ制御

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160129

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170215

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170215

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171212

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180309

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180425

R150 Certificate of patent or registration of utility model

Ref document number: 6333942

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250