JP2015511472A - ビデオコード化におけるコードブックを使用したループフィルタパラメータのコード化 - Google Patents

ビデオコード化におけるコードブックを使用したループフィルタパラメータのコード化 Download PDF

Info

Publication number
JP2015511472A
JP2015511472A JP2014558868A JP2014558868A JP2015511472A JP 2015511472 A JP2015511472 A JP 2015511472A JP 2014558868 A JP2014558868 A JP 2014558868A JP 2014558868 A JP2014558868 A JP 2014558868A JP 2015511472 A JP2015511472 A JP 2015511472A
Authority
JP
Japan
Prior art keywords
codebook
video data
video
blocks
loop filter
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2014558868A
Other languages
English (en)
Other versions
JP2015511472A5 (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 JP2015511472A publication Critical patent/JP2015511472A/ja
Publication of JP2015511472A5 publication Critical patent/JP2015511472A5/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

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

Abstract

ビデオデータをコード化するための技法は、ビデオコード化プロセスを実行することの一部として、サンプル適応オフセット(SAO)オフセット値をコード化することを含む。具体的には、本技法は、SAOプロセスに従ってSAOオフセット値を決定することを含む。本技法は更に、SAOオフセット値の様々な変動をコード化するための複数のコードを定義するコードブックを記憶することを含む。本技法はまた、コードブックによって定義される複数のコードの1つとしてSAOオフセット値を規定するために、コードブックに従ってSAOオフセット値をコード化することを含む。

Description

[0001]本出願は、各々の内容全体が参照により本明細書に組み込まれる、2012年2月22日に出願された米国仮出願第61/601,994号、及び2012年12月13日に出願された米国仮出願第61/736,918号の利益を主張する。
[0002]本開示は全般にビデオコード化に関し、より具体的には、ビデオコード化プロセスにおけるサンプル適応オフセット(SAO)オフセット値のコード化に関する。
[0003]デジタルビデオ機能は、デジタルテレビジョン、デジタルダイレクトブロードキャストシステム、ワイヤレスブロードキャストシステム、携帯情報端末(PDA)、ラップトップ又はデスクトップコンピュータ、デジタルカメラ、デジタル記録機器、デジタルメディアプレーヤ、ビデオゲーム機器、ビデオゲームコンソール、セルラー又は衛星無線電話、ビデオ遠隔会議機器などを含む、広範囲にわたる機器に組み込まれ得る。デジタルビデオ機器は、MPEG−2、MPEG−4、ITU−T H.263、ITU−T H.264/MPEG−4、Part 10、Advanced Video Coding(AVC)、現在開発中のHigh Efficiency Video Coding(HEVC)規格によって定義された規格、及びそのような規格の拡張に記載されているようなビデオ圧縮技法を実装して、デジタルビデオ情報をより効率的に送信、受信、及び記憶する。
[0004]ビデオ圧縮技法は、ビデオシーケンスに固有の冗長性を低減又は除去するために空間的予測及び/又は時間的予測を含む。ブロックベースのビデオコード化では、ビデオフレーム又はスライスは、ブロックに区分され得る。各ブロックは、更に区分され得る。イントラコード化された(I)フレーム又はスライス中のブロックは、同じフレーム又はスライス中の隣接ブロック内の参照サンプルに対する空間的予測を使用して符号化される。インターコード化された(P又はB)フレーム又はスライス中のブロックは、同じフレーム又はスライス中の近隣ブロック中の参照サンプルに対する空間的予測、又は他の参照フレーム中の参照サンプルに対する時間的予測を使用し得る。空間的予測又は時間的予測は、コード化されるべきブロックの予測ブロックを生じる。残差データは、コード化されるべき元のブロックと予測ブロックとの間の画素差分を表す。
[0005]インターコード化されたブロックは、予測ブロックを形成する参照サンプルのブロックを指す動きベクトルと、コード化されたブロックと予測ブロックとの間の差分を示す残差データとに従って符号化される。イントラコード化されたブロックは、イントラコード化モードと残差データとに従って符号化される。更なる圧縮のために、残差データが、画素領域から変換領域に変換されてよく、これにより残差変換係数が生じ、その残差変換係数が、次いで量子化され得る。最初は2次元アレイで構成される、量子化された変換係数は、エントロピーコード化のために、特に変換係数の1次元ベクトルを生成するために走査されてよい。
[0006]全般に、本開示の技法は、ビデオコード化に関する。具体的には、本明細書で開示される技法は、ビデオコード化プロセスの一部として使用される、サンプル適応オフセット(SAO)オフセット値を含む、ループフィルタリングパラメータのコード化を対象とする。一例として、本開示の技法は、SAOプロセスに従って1つ又は複数のSAOオフセット値を決定することを含む。この例では、1つ又は複数のSAOオフセット値は、ビデオデータの1つ又は複数のブロックをコード化することの一部として決定され得る。例えば、1つ又は複数のSAOオフセット値は、1つ又は複数のブロックをコード化するために使用される予測データをフィルタリングするために、SAOプロセスを実行する目的で決定され得る。本技法は更に、ビデオエンコーダ及びビデオデコーダの1つ又は複数におけるSAOオフセット値の様々な変動をコード化するために使用され得るオフセット値の複数のセットを定義する、コードブックを記憶することを含む。本開示の技法はまた、コードブックに従って、上で説明された方式で決定された1つ又は複数のSAOオフセット値をコード化することを含み得る。特に、本開示の技法は、1つ又は複数のSAOオフセット値をコード化して、コードブックによって定義される複数のセットの1つとしてオフセット値を規定することを含み得る。
[0007]本開示の一例では、ビデオ復号プロセスにおいてループフィルタパラメータを復号する方法は、ループフィルタリングプロセスを実行するためにコードブックを使用するか否かを示す指示を受信することであって、コードブックが複数のエントリーを含み、コードブック中のエントリーの各々がループフィルタリングプロセスに対するループフィルタパラメータのセットを備え、コードブックがビデオデータの1つ又は複数のブロックに対して適用可能である、受信することと、受信された指示に基づいて、ビデオデータの1つ又は複数のブロックに対してループフィルタリングプロセスを実行することとを備える。
[0008]復号方法は更に、コードブック中の特定のエントリーを定義する1つ又は複数のシンタックス要素を受信することと、受信された1つ又は複数のシンタックス要素に基づいて、コードブックからループフィルタパラメータの特定のエントリーを取り出すことと、受信された指示及び取り出されたループフィルタパラメータに基づいて、ビデオデータの1つ又は複数のブロックに対してループフィルタリングプロセスを実行することとを備え得る。
[0009]一例では、ループフィルタリングプロセスは適応ループフィルタALFであり、ループフィルタパラメータはALF係数を備える。別の例では、ループフィルタリングプロセスはサンプル適応オフセット(SAO)フィルタであり、ループフィルタパラメータはSAOオフセット値を備える。
[0010]本開示の別の例では、ビデオ符号化プロセスにおいてループフィルタパラメータを符号化する方法は、ループフィルタリングプロセスにおいて使用するためのループフィルタパラメータの特定のセットを決定することと、ループフィルタパラメータの特定のセットがコードブックに記憶されるか否かを示す指示を信号伝達(signaling)することと、コードブックが複数のエントリーを含み、コードブック中のエントリーの各々がループフィルタリングプロセスに対するループフィルタパラメータのセットを備え、コードブックがビデオデータの1つ又は複数のブロックに対して適用可能である、ループフィルタパラメータの特定のセットに基づいて、ビデオデータの1つ又は複数のブロックに対してループフィルタリングプロセスを実行することとを備える。方法は更に、コードブック中のループフィルタパラメータの特定のセットに対するエントリーを定義する、1つ又は複数のシンタックス要素を信号伝達することを備え得る。
[0011]本開示の技法はまた、装置及びコンピュータ可読媒体に関して説明される。本開示で説明される技法は、ハードウェア、ソフトウェア、ファームウェア、又はそれらの組合せで実装され得る。ハードウェアで実装される場合、装置は、集積回路、プロセッサ、ディスクリート論理、又はそれらの任意の組合せとして実現され得る。ソフトウェアで実装される場合、ソフトウェアは、マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、又はデジタル信号プロセッサ(DSP)のような、1つ又は複数のプロセッサで実行され得る。本技法を実行するソフトウェアは、最初に有形コンピュータ可読媒体に記憶され、プロセッサにロードされ実行され得る。
[0012]従って、別の例では、コンピュータ可読記憶媒体は、実行されると、1つ又は複数のプロセッサにビデオコード化プロセスにおいてSAOオフセット値をコード化させる、命令を記憶する。この例では、命令は、1つ又は複数のプロセッサに、SAOプロセスに従ってSAOオフセット値を決定させる。命令は更に、1つ又は複数のプロセッサに、SAOオフセット値の様々な変動をコード化するための複数のコードを定義するコードブックを記憶させる。命令はまた、コードブックによって定義される複数のコードの1つとしてSAOオフセット値を規定するために、1つ又は複数のプロセッサに、コードブックに従ってSAOオフセット値をコード化させる。
[0013]1つ又は複数の例の詳細は、添付の図面及び以下の説明に記載されている。他の特徴、目的、及び利点は、その説明及び図面、ならびに特許請求の範囲から明らかになろう。
[0014]本開示の技法と一致する、ビデオコード化プロセスにおいてサンプル適応オフセット(SAO)オフセット値をコード化するための技法を実行することができる、ビデオ符号化及び復号システムの例を示すブロック図。 [0015]本開示の技法と一致する、ビデオコード化プロセスにおいてSAOオフセット値をコード化するための技法を実行することができる、ビデオエンコーダの例を示すブロック図。 [0016]本開示の技法と一致する、ビデオコード化プロセスにおいてSAOオフセット値をコード化するための技法を実行することができるビデオデコーダの例を示すブロック図。 [0017]本開示の技法と一致する、SAOプロセスにおいてエッジ分類を実行するために使用され得るビデオデータのブロックの画素の値の例を示す、概念図。 [0018]本開示の技法と一致する、SAOプロセスにおいて帯域分類を実行するために使用され得るビデオデータのブロックの画素の帯域の例を示す、概念図。 [0019]本開示の技法と一致する、ビデオコード化プロセスにおいてSAOオフセット値を符号化する例示的な方法を示すフローチャート。 本開示の技法と一致する、ビデオコード化プロセスにおいてSAOオフセット値を復号する例示的な方法を示すフローチャート。
[0020]全般に、本開示の技法は、ビデオコード化に関する。本開示の幾つかの例では、本明細書で開示される技法は、ビデオコード化プロセスの一部として使用されるループフィルタパラメータのコード化を対象とする。例示的なループフィルタリングプロセスは、適応ループフィルタ(ALF)、サンプル適応オフセット(SAO)フィルタ、デブロッキングフィルタ、又は別のタイプのフィルタによって実行されるプロセスを含み得る。本開示は、SAOフィルタに対するループフィルタパラメータ(例えば、SAOオフセット値)のコード化についての説明に焦点を当てる。しかしながら、本明細書で開示される技法は、ALF係数又は他のタイプのループフィルタ係数をコード化するために等しく適用可能である。
[0021]本開示の時点では、サンプル適応オフセット(SAO)コード化は、上で説明されたHEVC規格で採用されることが考えられている。全般に、ビデオフレーム(例えば、インター予測又はイントラ予測のための予測フレーム)中の画素へのオフセット値の加算は、ビデオシーケンスのフレーム間で明るさが変化する際、例えば、閃光、暗くなる空、又は他のタイプのフレーム間での明るさの変化などの際に、コード化を改善し得る。そのような明るさの変化は、フレーム中の画素にわたって比較的均一な強度変化を加え得る。例えば、明るさの変化を補償するように予測ビデオブロックの値にバイアスを与えるために、予測されたビデオブロックの画素にオフセット値が加えられ得る。
[0022]HEVC規格に対する提案におけるSAOの実装形態には、1つ又は複数の可能性のある欠点がある。例えば、それぞれ符号化し復号するための、HMにおいて現在規定されておりHEVCにおいて提案されている符号化技法、SAOオフセットタイプ、及び対応するオフセットデータは、SAOオフセットタイプ及び対応するオフセットデータの分配に完全に対応するようには最適化されないことがある。従って、本開示は、幾つかの場合には、HEVC規格において現在提案されているようなSAOコード化に関して上で特定された欠点の1つ又は複数に対処し得る、様々な技法を提示する。具体的には、一例として、規定され提案されたエントロピー符号化及び復号技法は、これらの値の全般的な分配に対して設計され、又は場合によっては最適化され得る。SAOオフセットタイプ及びHM準拠ビデオエンコーダによって一般に決定される対応するオフセットデータの統計的な評価を通じて、オフセット値の間の多数の関係が特定されてよく、この関係は、HMにより規定されるエントロピー符号化技法及びHEVCにより提案されるエントロピー復号技法と比較して、SAOオフセットタイプ及び/又は対応するオフセットデータをより効率的に符号化し得る、エントロピー符号化技法の最適化のための基礎を形成し得る。
[0023]本開示で提案される技法は、SAOオフセットタイプ及び対応するオフセットデータ(例えば、オフセット値)の符号化に関する幾つかの選択肢を定義する。これらの最適化は、オフセット値の統計的な評価を通じて特定されるオフセット値の間の関係を利用することができる。例示すると、オフセット値は、限られた範囲の値を有するように、統計的な評価を通じて決定されている。言い換えると、オフセット値は通常、値の特定のセットに限定される。一例として、あるSAOエッジオフセットタイプについて、対応するオフセット値は、「長方形構造」として特徴付けられ得るものを有すると特定されている。この長方形構造は、次のように記述され得る。
・offset0及びoffset3は同様である。
・offset1及びoffset2は同様である。
・offset0/offset3はoffset1/offset2以上である。
・オフセット値は通常0/1/2に限定される。
[0024]本開示で説明される技法は、この長方形構造を利用して、HMにおいて現在規定されているようなオフセット値の独立のコード化と比較して、SAOオフセット値に対するより効率的なコード化を実現することができる。具体的には、本開示は、ビデオエンコーダとビデオデコーダの両方においてSAO処理のために使用され得る、SAOオフセット値のインデックス付きセットを含む、コードブックを使用することを提案する。
[0025]一例として、本技法は、SAOプロセスに従って1つ又は複数のSAOオフセット値を決定することを含む。この例では、1つ又は複数のSAOオフセット値は、ビデオデータの1つ又は複数のブロックをコード化することの一部として決定され得る。例えば、1つ又は複数のSAOオフセット値は、1つ又は複数のブロックをコード化するために使用される予測データを生成するために、SAOプロセスを実行する目的で決定され得る。本技法は更に、ビデオエンコーダ及びビデオデコーダの1つ又は複数におけるSAOオフセット値の様々な変動をコード化するために使用され得るSAOオフセット値の複数のセットを定義する、コードブックを記憶することを含む。本技法はまた、コードブックに従って、上で説明された方式で決定された1つ又は複数のSAOオフセット値をコード化することを含む。具体的には、本技法は、1つ又は複数のSAOオフセット値をコード化して、コードブックによって定義される複数のセットの1つとしてオフセット値を規定することを含む。結果として、開示される技法は、オフセット値の各々を直接コード化することによってではなく、コードブックによって定義される単一のコードを使用してオフセット値をコード化することによって、より効率的に1つ又は複数のSAOオフセット値をコード化することを可能にし得る。
[0026]別の例として、本明細書で開示される技法は更に、コードブックによって定義される複数のコードのコードが1つ又は複数のSAOオフセット値の間の様々な関係を利用するように最適化されるように、上で説明されたコードブックを記憶することを含み得る。結果として、コードブックによって定義される複数のコードの各々は、1つ又は複数のSAOオフセット値よりも少量の情報(例えば、より少数のデータのビット)を使用して表され得る。このようにして、本技法は再度、オフセット値の各々を直接コード化することと比較して、コードブックによって定義される単一のコードを使用してオフセット値をコード化することによって、より効率的に1つ又は複数のSAOオフセット値をコード化することを可能にし得る。
[0027]従って、本開示の技法は、同様のデータをコード化するために使用される他の技法と比較して、より少量の情報(例えば、より少数のデータのビット)を使用して、1つ又は複数のSAOオフセット値をコード化することを可能にし得る。具体的には、コードブックによって定義されるコードを使用した1つ又は複数のSAOオフセット値のコード化を可能にすることによって、開示される技法は、オフセット値を直接コード化することを含む技法に対して、ビットストリーム中で信号伝達されるビットの数を減らすことができる。
[0028]加えて、上で説明された技法はまた、ビデオコーダの処理リ発信源及び/又は記憶リ発信源を場合によっては簡略化し、又はそれらの使用量を減らすことによって、1つ又は複数のSAOオフセット値をコード化するために使用されるビデオコーダの複雑さを下げることができる。具体的には、コードブックによって定義されオフセット値をコード化するために使用されるコードがオフセット値自体よりも少量の情報を使用して表される例では特に、本技法は、オフセット値を直接コード化するとき、ビデオコーダが処理及び/又は記憶する情報の量をより少なくすることを可能にし得る。
[0029]このようにして、本開示の技法を使用すると、ビデオデータをコード化するために使用されるコード化システムの複雑さの相対的な低減、及び/又は、コード化ビデオデータを含むコード化ビットストリームに対する相対的なビットの節減があり得る。
[0030]図1は、本開示の技法と一致する、ビデオコード化プロセスにおいてSAOオフセット値をコード化するための技法を実行することができるビデオ符号化及び復号システムの例を示すブロック図である。図1に示されるように、システム10は、宛先機器14によって後で復号されるべき符号化されたビデオデータを生成する発信源機器12を含む。発信源機器12及び宛先機器14は、デスクトップコンピュータ、ノートブック(即ち、ラップトップ)コンピュータ、タブレットコンピュータ、セットトップボックス、所謂「スマート」フォンなどの電話ハンドセット、所謂「スマート」パッド、テレビジョン、カメラ、表示装置、デジタルメディアプレーヤ、ビデオゲームコンソール、ビデオストリーミング機器などを含む、広範囲にわたる機器のいずれかを備え得る。場合によっては、発信源機器12及び宛先機器14は、ワイヤレス通信に対応し得る。
[0031]宛先機器14は、リンク16を介して、復号されるべき符号化されたビデオデータを受信し得る。リンク16は、発信源機器12から宛先機器14に符号化されたビデオデータを移動することが可能な任意のタイプの媒体又は機器を備え得る。一例では、リンク16は、符号化されたビデオデータを発信源機器12がリアルタイムで宛先機器14に直接送信することを可能にするための、通信媒体を備え得る。符号化されたビデオデータは、ワイヤレス通信プロトコルなどの通信規格に従って変調され、宛先機器14に送信され得る。通信媒体は、高周波(RF)スペクトル若しくは1つ又は複数の物理伝送線路のような、任意のワイヤレス又は有線通信媒体を備え得る。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、又はインターネットなどのグローバルネットワークのような、パケットベースネットワークの一部を形成し得る。通信媒体は、発信源機器12から宛先機器14への通信を可能にするために有用であり得るルータ、スイッチ、基地局、又は任意の他の機器を含み得る。
[0032]代替的に、符号化されたデータは、出力インターフェース22から記憶機器24に出力され得る。同様に、符号化されたデータは、入力インターフェース26によって記憶機器24からアクセスされ得る。記憶機器24は、ハードドライブ、ブルーレイ(登録商標)ディスク、DVD、CD−ROM、フラッシュメモリ、揮発性又は不揮発性メモリ、若しくは符号化されたビデオデータを記憶するための任意の他の好適なデジタル記憶媒体のような、種々の分散されたデータ記憶媒体又はローカルにアクセスされるデータ記憶媒体のいずれかを含み得る。更なる一例では、記憶機器24は、発信源機器12によって生成された符号化されたビデオを保持し得るファイルサーバ又は別の中間記憶機器に対応し得る。宛先機器14は、ストリーミング又はダウンロードを介して、記憶機器24から、記憶されたビデオデータにアクセスし得る。ファイルサーバは、符号化されたビデオデータを記憶し、その符号化されたビデオデータを宛先機器14に送信することが可能な任意のタイプのサーバであり得る。例示的なファイルサーバは、(例えば、ウェブサイトのための)ウェブサーバ、FTPサーバ、ネットワーク接続記憶(NAS)機器、又はローカルディスクドライブを含む。宛先機器14は、インターネット接続を含む、任意の標準のデータ接続を通じて、符号化されたビデオデータにアクセスし得る。これは、ファイルサーバに記憶された符号化されたビデオデータにアクセスするのに好適であるワイヤレスチャネル(例えば、Wi−Fi(登録商標)接続)、有線接続(例えば、DSL、ケーブルモデムなど)、又は両方の組合せを含み得る。記憶機器24からの符号化されたビデオデータの送信は、ストリーミング送信、ダウンロード送信、又は両方の組合せであり得る。
[0033]本開示の技法は、必ずしもワイヤレスの用途又は設定に限定されるとは限らない。本技法は、無線を通じたテレビジョン放送、ケーブルテレビジョン送信、衛星テレビジョン送信、例えばインターネットを介したストリーミングビデオ送信、データ記憶媒体に記憶するためのデジタルビデオの符号化、データ記憶媒体に記憶されたデジタルビデオの復号、又は他の用途など、種々のマルチメディア用途のいずれかをサポートするビデオコード化に適用され得る。幾つかの例では、システム10は、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、及び/又はビデオ電話などの適用例をサポートするために、一方向又は双方向のビデオ送信をサポートするように構成され得る。
[0034]図1の例では、発信源機器12は、ビデオ発信源18と、ビデオエンコーダ20と、出力インターフェース22とを含む。場合によっては、出力インターフェース22は、変調器/復調器(モデム)及び/又は送信機を含み得る。発信源機器12において、ビデオ発信源18は、例えばビデオカメラなどの撮像装置、以前に撮影されたビデオを含んでいるビデオアーカイブ、ビデオコンテンツプロバイダからビデオを受信するためのビデオフィードインターフェース、及び/又は発信源ビデオとしてコンピュータグラフィックスデータを生成するためのコンピュータグラフィックスシステムなどの発信源、若しくはそのような発信源の組合せを含み得る。一例として、ビデオ発信源18がビデオカメラである場合、発信源機器12及び宛先機器14は、所謂カメラ付き携帯電話又はビデオ電話を形成し得る。しかしながら、本開示で説明される技法は、一般にビデオコード化に適用可能であってよく、ワイヤレス及び/又は有線の用途に適用され得る。
[0035]撮影されたビデオ、以前に撮影されたビデオ、又はコンピュータにより生成されたビデオは、ビデオエンコーダ20によって符号化され得る。符号化されたビデオデータは、発信源機器12の出力インターフェース22を介して宛先機器14に直接送信され得る。符号化されたビデオデータは、更に(又は代替的に)、復号及び/又は再生のための宛先機器14又は他の機器による後のアクセスのために記憶機器24に記憶され得る。
[0036]宛先機器14は、入力インターフェース26と、ビデオデコーダ30と、表示装置28とを含む。場合によっては、入力インターフェース26は、受信機及び/又はモデムを含み得る。宛先機器14の入力インターフェース26は、リンク16を通じて、又は記憶機器24から符号化されたビデオデータを受信する。リンク16を通じて通信され、又は記憶機器24上に与えられた符号化されたビデオデータは、ビデオデータを復号する際にビデオデコーダ30のようなビデオデコーダが使用するための、ビデオエンコーダ20によって生成される種々のシンタックス要素を含み得る。そのようなシンタックス要素は、通信媒体上で送信される、記憶媒体上に記憶される、又はファイルサーバ上に記憶される、符号化されたビデオデータとともに含まれ得る。
[0037]表示装置28は、宛先機器14と一体化されてよく、又はその外部にあってよい。幾つかの例では、宛先機器14は、一体型表示装置を含んでよく、また、外部表示装置とインターフェースをとるように構成されてよい。他の例では、宛先機器14は表示装置であり得る。一般に、表示装置28は、復号されたビデオデータをユーザに対して表示し、液晶表示器(LCD)、プラズマ表示器、有機発光ダイオード(OLED)表示器、又は別のタイプの表示装置など、種々の表示装置のいずれかを備え得る。
[0038]ビデオエンコーダ20及びビデオデコーダ30は、ITU−T Video Coding Experts Group(VCEG)とISO/IEC Motion Picture Experts Group(MPEG)とのJoint Collaborative Team on Video Coding(JCT−VC)によって現在開発中のHigh Efficiency Video Coding(HEVC)規格などのビデオ圧縮規格に従って動作することができ、HEVC Test Model(HM)に準拠し得る。代替的に、ビデオエンコーダ20及びビデオデコーダ30は、代替的にMPEG−4、Part 10、Advanced Video Coding(AVC)と呼ばれるITU−T H.264規格のような、他のプロプライエタリ規格又は業界規格、あるいはそのような規格の拡張に従って動作し得る。しかしながら、本開示の技法は、いかなる特定のコード化規格にも限定されない。ビデオ圧縮規格の他の例には、MPEG−2及びITU−T H.263がある。「HEVC Working Draft 8」又は「WD8」と呼ばれるHEVC規格の最近のドラフトは、文書JCTVC−J1003_d7、Brossら、「High efficiency video coding(HEVC) text specification draft 8」、ITU−T SG16 WP3及びISO/IEC JTC1/SC29/WG11のJoint Collaborative Team on Video Coding(JCT−VC)、第10回会合:スウェーデン ストックホルム、2012年7月11〜20日に記載されており、この文書は、2013年2月18日現在、http://phenix.int−evry.fr/jct/doc_end_user/documents/10_Stockholm/wg11/JCTVC−J1003−v8.zipからダウンロード可能である。WD8は参照によって本明細書に組み込まれる。
[0039]図1には示されていないが、幾つかの態様では、ビデオエンコーダ20及びビデオデコーダ30は、各々オーディオエンコーダ及びデコーダと統合されてよく、共通のデータストリーム又は別個のデータストリーム中のオーディオとビデオの両方の符号化を処理するために、適切なMUX−DEMUXユニット、又は他のハードウェア及びソフトウェアを含んでよい。適用可能な場合、幾つかの例では、MUX−DEMUXユニットは、ITU H.223マルチプレクサプロトコル、又はユーザデータグラムプロトコル(UDP)などの他のプロトコルに準拠し得る。
[0040]ビデオエンコーダ20及びビデオデコーダ30は各々、1つ又は複数のマイクロプロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェア、又はそれらの任意の組合せのような、種々の適切なエンコーダ又はデコーダ回路のいずれかとして実装され得る。本技法が部分的にソフトウェアで実装される場合、機器は、適切な非一時的コンピュータ可読媒体にソフトウェアの命令を記憶し、1つ又は複数のプロセッサを使用してその命令をハードウェアで実行して、本開示の技法を実行し得る。ビデオエンコーダ20及びビデオデコーダ30の各々は1つ又は複数のエンコーダ又はデコーダ中に含まれてよく、そのいずれも、それぞれの機器において複合エンコーダ/デコーダ(「コーデック」)の一部として統合されてよい。
[0041]HEVC規格化の取り組みは、HEVC Test Model(HM)と呼ばれるビデオコード化機器の発展的モデルに基づく。HMは、例えば、ITU−T H.264/AVCに従う既存の機器に対してビデオコード化機器の幾つかの追加の能力を仮定する。例えば、H.264は9個のイントラ予測符号化モードを提供するが、HMは34個ものイントラ予測符号化モードを提供し得る。
[0042]一般に、HMの作業モデルは、ビデオフレーム又はピクチャが、ルーマとクロマの両方のサンプルを含む一連のツリーブロック又は最大コード化単位(LCU)に分割され得ることを記載する。ツリーブロックは、H.264規格のマクロブロックと同様の目的を有する。スライスは、コード化順序で幾つかの連続するツリーブロックを含む。ビデオフレーム又はピクチャは、1つ又は複数のスライスに区分され得る。各ツリーブロックは、4分木に従ってコード化ユニット(CU)に分割され得る。例えば、4分木のルートノードとしてのツリーブロックは、4つの子ノードに分割されてよく、各子ノードが今度は親ノードとなり、別の4つの子ノードに分割されてよい。4分木のリーフノードとしての、最終的な、分割されていない子ノードは、コード化ノード、即ち、コード化されたビデオブロックを備える。コード化されたビットストリームと関連付けられるシンタックスデータは、ツリーブロックが分割され得る最大回数を定義することができ、コード化ノードの最小サイズも定義することができる。
[0043]CUは、コード化ノードと、コード化ノードと関連付けられる予測単位(PU)と変換単位(TU)とを含む。CUのサイズは、コード化ノードのサイズに対応し、形状が方形でなければならない。CUのサイズは、8×8画素から最大で64×64以上の画素をもつツリーブロックのサイズにまで及び得る。各CUは、1つ又は複数のPuと、1つ又は複数のTUとを含み得る。CUと関連付けられるシンタックスデータは、例えば、CUを1つ又は複数のPuに区分することを記述し得る。区分モードは、CUが、スキップモード符号化又はダイレクトモード符号化されるか、イントラ予測モード符号化されるか、あるいはインター予測モード符号化されるかによって異なり得る。Puは、形状が非方形になるように区分され得る。CUと関連付けられるシンタックスデータは、例えば、4分木に従って、CUを1つ又は複数のTUに区分することも記述し得る。TUは、形状が方形又は非方形であり得る。
[0044]HEVC規格に対する提案は、CUごとに異なり得る、TUに従う変換を可能にする。TUは、一般に、区分されたLCUについて定義された所与のCU内のPUのサイズに基づいてサイズが決定されるが、常にそうであるとは限らない。TUは通常、PUと同じサイズであるか又はPUよりも小さい。幾つかの例では、CUに対応する残差サンプルは、「残差4分木」(RQT)として知られる4分木構造を使用してより小さいユニットに再分割され得る。RQTのリーフノードはTUと呼ばれることがある。TUと関連付けられる画素差分値は、変換係数を生成するように変換されてよく、その変換係数は量子化され得る。
[0045]一般に、PUは、予測プロセスに関連するデータを含む。例えば、PUがイントラモード符号化されるとき、PUは、PUのイントラ予測モードを記述するデータを含み得る。別の例として、PUがインターモード符号化されるとき、PUは、PUの動きベクトルを定義するデータを含み得る。PUの動きベクトルを定義するデータは、例えば、動きベクトルの水平成分、動きベクトルの垂直成分、動きベクトルの解像度(例えば、1/4画素精度又は1/8画素精度)、動きベクトルが指す参照ピクチャ、及び/又は動きベクトルの参照ピクチャリスト(例えば、リスト0、リスト1、又はリストC)を記述し得る。
[0046]一般に、TUは、変換プロセス及び量子化プロセスのために使用される。1つ又は複数のPUを有する所与のCUは、1つ又は複数のTUも含み得る。予測の後に、ビデオエンコーダ20は、PUに対応する残差値を計算し得る。残差値は、エントロピーコード化のための直列化された変換係数を生成するために、TUを使用して変換係数に変換され、量子化され、走査され得る、画素差分値を備える。本開示では、一般に、CUのコード化ノードを指すために「ビデオブロック」又は単に「ブロック」という用語を使用する。幾つかの特定の場合において、本開示では、コード化ノードとPUとTUとを含む、ツリーブロック、即ち、LCU又はCUを指す、「ビデオブロック」という用語も使用し得る。
[0047]ビデオシーケンスは通常、一連のビデオフレーム又はピクチャを含む。ピクチャのグループ(GOP)は、一般に、一連の1つ又は複数のビデオピクチャを備える。GOPは、GOP中に含まれる幾つかのピクチャを記述するシンタックスデータを、GOPのヘッダ中、ピクチャのうちの1つ又は複数のヘッダ中、又は他の場所に含み得る。ピクチャの各スライスは、それぞれのスライスの符号化モードを記述するスライスシンタックスデータを含み得る。ビデオエンコーダ20は通常、ビデオデータを符号化するために、個々のビデオスライス内のビデオブロックに対して動作する。ビデオブロックは、CU内のコード化ノードに対応し得る。ビデオブロックは、一定のサイズ又は可変のサイズを有してよく、指定されたコード化規格に従ってサイズが異なる場合がある。
[0048]一例として、HMは、様々なPUサイズでの予測をサポートする。特定のCUのサイズが2N×2Nであると仮定すると、HMは、2N×2N又はN×NというPUサイズでのイントラ予測をサポートし、2N×2N、2N×N、N×2N、又はN×Nという対称的なPUサイズでのインター予測をサポートする。HMはまた、2N×nU、2N×nD、nL×2N、及びnR×2NというPUサイズでのインター予測のための非対称区分をサポートする。非対称区分では、CUの一方向は区分されないが、他の方向は25%と75%とに区分される。25%の区分に対応するCUの部分は、「n」とその後ろに付く「Up」、「Down」、「Left」、又は「Right」という表示によって示される。従って、例えば、「2N×nU」は、上部の2N×0.5N PUと下部の2N×1.5N PUとで水平方向に区分された2N×2N CUを指す。
[0049]本開示では、「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は非負の整数値を表す。ブロック中の画素は行と列で構成され得る。その上、ブロックは、必ずしも、水平方向において垂直方向と同じ数の画素を有する必要があるとは限らない。例えば、ブロックはN×M画素を備えてよく、但し、Mは必ずしもNに等しいとは限らない。
[0050]CUのPUを使用したイントラ予測コード化又はインター予測コード化の後、ビデオエンコーダ20は、CUのTUのための残差データを計算し得る。PUは、(画素領域とも呼ばれる)空間領域において画素データを備えてよく、TUは、例えば、残差ビデオデータへの離散コサイン変換(DCT)、整数変換、ウェーブレット変換、又は概念的に同様の変換などの変換の適用後に、変換領域において係数を備え得る。残差データは、符号化されていないピクチャの画素と、PUに対応する予測値との間の画素差分に対応し得る。ビデオエンコーダ20は、CUのための残差データを含むTUを形成し、次いで、TUを変換して、CUの変換係数を生成し得る。
[0051]変換係数を生成するための任意の変換の後に、ビデオエンコーダ20は、変換係数の量子化を実行し得る。量子化は、一般に、係数を表すために使用されるデータの量をできるだけ低減するために変換係数が量子化され、更なる圧縮を提供するプロセスを指す。量子化プロセスは、係数の一部又は全部に関連するビット深度を低減し得る。例えば、量子化中にnビット値がmビット値に切り捨てられてよく、但し、nはmよりも大きい。
[0052]幾つかの例では、ビデオエンコーダ20は、予め定義された走査(scanning)又は「走査(scan)」順序を利用して、量子化された変換係数を走査し、エントロピー符号化され得る直列化されたベクトルを生成し得る。他の例では、ビデオエンコーダ20は適応走査を実行し得る。量子化された変換係数を走査して1次元ベクトルを形成した後に、ビデオエンコーダ20は、例えば、コンテキスト適応型可変長コード化(CAVLC:context-adaptive variable length coding)、コンテキスト適応型バイナリ算術コード化(CABAC:context-adaptive binary arithmetic coding)、シンタックスベースコンテキスト適応型バイナリ算術コード化(SBAC:syntax-based context-adaptive binary arithmetic coding)、確率間隔区分エントロピー(PIPE:Probability Interval Partitioning Entropy)コード化、又は別のエントロピー符号化方法に従って1次元ベクトルをエントロピー符号化し得る。ビデオエンコーダ20はまた、ビデオデータを復号する際にビデオデコーダ30が使用するための、符号化されたビデオデータと関連付けられるシンタックス要素をエントロピー符号化し得る。
[0053]CABACを実行するために、ビデオエンコーダ20は、送信されるべきシンボルに、コンテキストモデル内のコンテキストを割り当て得る。コンテキストは、例えば、シンボルの隣接値が0値か否かに関係し得る。
[0054]以下は、ビデオエンコーダ20及びビデオデコーダ30、更に、図2及び図3において示され以下でより詳しく説明されたようなそれらの様々なコンポーネントに関して論じられる。本開示の時点では、サンプル適応オフセット(SAO)コード化は、上で説明されたHEVC規格で採用されることが考えられている。一般に、ビデオフレーム中の画素へのオフセット値の加算(例えば、インター予測又はイントラ予測のための予測フレーム)は、ビデオ品質を改善することができ、スムージング効果をもたらすことができる。
[0055]例えばH.264/AVCのような以前のビデオコード化規格では、画素のブロック又はフレーム全体にわたって一様に、オフセットタイプと値とを適用していた。これらの以前の技法とは対照的に、SAO技法は、画素(又はブロック)分類尺度に応じて異なる画素(又はブロック)に異なるオフセット値が適用されることを可能にする。可能な分類尺度は、エッジ尺度及び帯域尺度のような、活動の尺度を含む。オフセット分類の説明は、参照によって本明細書に組み込まれる、C.−M.Fu、C.−Y.Chen、C.−Y.Tsai、Y.−W.Huang、S.Lei、「CE13:Sample Adaptive Offset with LCU−Independent Decoding」、JCT−VC Contribution、E049、ジュネーブ、2011年2月において見いだされ得る。
[0056]HEVC規格に対する提案に従った現在のSAOの実装形態では、各々の区分(LCUのセットを構成する)は、3つのオフセットタイプ(画素分類とも呼ばれる)、即ち、(1)オフセットなし、(2)帯域分類ベースのオフセットタイプ0/1、又は(3)エッジ分類ベースのオフセットタイプ0/1/2/3のうちの1つを有し得る。各帯域分類オフセットタイプは16個の可能なオフセット値を有するが、各エッジ分類ベースのオフセットタイプは4つの可能なオフセット値を有する。これらのオフセットタイプのうちの1つが、区分に使用されるために選ばれた場合、対応するオフセットタイプとオフセット値(SAO係数とも呼ばれる)とを示す情報がデコーダに送信される。
[0057]エッジオフセットタイプは、エッジ情報に基づいて各画素を分類する。図4は、HEVC規格に対して現在提案されている4つの可能なエッジオフセット分類を示す概念図である。図4に示されるエッジ分類の各々について、現在の画素のエッジタイプは、現在の画素(C)の値を隣接画素(1及び2)の値と比較することによって計算される。具体的には、ブロック400の画素は、分類0のSAOエッジオフセット、又は「SAO_EO_0」に対応し、ブロック402の画素は、分類1のSAOエッジオフセット、又は「SAO_EO_1」に対応し、ブロック404の画素は、分類2のSAOエッジオフセット、又は「SAO_EO_2」に対応し、ブロック406の画素は、分類3のSAOエッジオフセット、又は「SAO_EO_3」に対応する。
[0058]HEVC規格に従った、上で説明されたSAO技法では、最初、現在の画素のエッジタイプは0であると仮定される。更に、現在の画素Cの値が左と右の隣接画素1及び2の両方の値に等しい場合、エッジタイプは0のままである。しかしながら、現在の画素Cの値が隣接画素1の値よりも大きい場合、エッジタイプは1だけ増やされる。或いは、現在の画素Cの値が隣接画素1の値よりも小さい場合、エッジタイプは1だけ減らされる。同様に、現在の画素Cの値が隣接画素2の値よりも大きい場合、エッジタイプは1だけ増やされ、現在の画素Cの値が隣接画素2の値よりも小さい場合、エッジタイプは1だけ減らされる。
[0059]従って、現在の画素Cは、「−2」、「−1」、「0」、「1」、又は「2」のいずれかのエッジタイプを有し得る。例えば、現在の画素Cの値が隣接画素1及び2の両方の値より小さい場合、エッジタイプは−2である。更に、現在の画素Cの値が一方の隣接画素(例えば、1)の値より小さいが他方の隣接画素(例えば、2)の値に等しい場合、エッジタイプは−1である。加えて、現在の画素Cの値が両方の隣接画素1及び2の値と同じである場合、又は、現在の画素Cの値が一方の隣接画素(例えば、1)の値より大きいが他方の隣接画素(例えば、2)の値より小さい場合、エッジタイプは0である。また、現在の画素Cの値が一方の隣接画素(例えば、1)の値より大きいが他方の隣接画素(例えば、1)の値に等しい場合、エッジタイプは1である。最後に、現在の画素Cの値が隣接画素1と2の値の両方より大きい場合、エッジタイプは2である。各々の0ではないエッジタイプ値に対して、4つのオフセット値(即ち、eoffset-2、eoffset-1、eoffset1、eoffset2)は、デコーダ(例えば、ビデオデコーダ30)による使用のために符号化ビデオビットストリームにおいて(例えば、ビデオエンコーダ20によって)決定され信号伝達される。SAOのオフセット値は、SAO係数とも呼ばれ得る。
[0060]上で与えられた説明に鑑みて、各エッジオフセット分類に対して、各タイプ値が次の表現を使用して計算され得る。
EdgeType = 0;
if (C > 画素 1) EdgeType = EdgeType + 1;
if (C < 画素 1) EdgeType = EdgeType - 1;
if (C > 画素 2) EdgeType = EdgeType + 1;
if (C < 画素 2) EdgeType = EdgeType - 1;
[0061]帯域オフセットの場合、画素は、強度に基づいて異なる帯域に分類される。図5は、本開示の技法と一致する、SAOプロセスにおいて帯域分類を実行するために使用され得るビデオデータのブロックの画素の帯域の例を示す、概念図である。具体的には、図5の図面500に示されるように、ビデオデータのブロックの画素の帯域は、画素強度値に基づいて決定され得る。帯域オフセット分類では、画素は32個の帯域に分類され、このとき中心にある16個の帯域が1つのグループへと分類され、残りの帯域が第2のグループへと分類される。帯域の各グループに対して、16個のオフセット値(即ち、boffset0、…、boffset15)が決定され、ビデオデコーダ30による使用のために符号化ビデオビットストリーム中でビデオエンコーダ20によって信号伝達され得る。
[0062]HMによれば、ビデオエンコーダがSAOオフセットタイプ(例えば、SAOオフセットが適用されていないことを意味する「オフ」、「エッジ」オフセットのタイプ0/1/2/3、又は「帯域」オフセット)と、各LCUに対する対応するSAOオフセット値とを決定した後、ビデオエンコーダは、ビデオデコーダによる使用のために符号化ビデオビットストリームの中のオフセットタイプと対応するオフセット値とを符号化する。例えば、SAOオフセットタイプ及び対応するオフセット値は、ビットストリーム中のスライスデータ、スライスヘッダ、適応パラメータセット(APS)、シーケンスパラメータセット(SPS)、又はピクチャパラメータセット(PPS)において信号伝達され得る。加えて、オフセットタイプ及び対応するオフセット値は、オフセットタイプと対応するオフセットデータとをビットストリーム中でビデオデコーダへより効率的に通信するために、任意の形式の統計的に無損失のコード化技法を使用してエントロピー符号化され得る。
[0063]HEVC規格に対する提案におけるSAOの実装形態に関して上で説明される技法は、1つ又は複数の可能性のある欠点がある。例えば、それぞれ符号化し復号するための、HMにおいて現在規定されておりHEVCにおいて提案されている符号化技法、SAOオフセットタイプ、及び対応するオフセットデータは、SAOオフセットタイプ及び対応するオフセットデータの分配に完全に対応するようには最適化されないことがある。従って、本開示は、幾つかの場合には、HEVC規格において現在提案されているようなSAOコード化に関して上で特定された欠点の1つ又は複数に対処し得る、様々な技法を提示する。具体的には、一例として、規定され提案されたエントロピー符号化及び復号技法は、これらの値の一般的な分配に対して最適化され得る。SAOオフセットタイプ及びHM準拠ビデオエンコーダによって一般に決定される対応するオフセットデータの統計的な評価を通じて、オフセット値の間の多数の関係が特定されてよく、この関係は、HMにより規定されるエントロピー符号化技法及びHEVCにより提案されるエントロピー復号技法と比較して、SAOオフセットタイプ及び/又は対応するオフセットデータをより効率的に符号化し得る、エントロピー符号化技法の最適化のための基礎を形成し得る。
[0064]本開示で提案される技法は、SAOオフセットタイプ及び対応するオフセットデータ(例えば、オフセット値)のエントロピー符号化を改善することに関する多数の選択肢を定義する。これらの改善は、オフセット値の統計的な評価を通じて特定されるオフセット値の間の関係を利用することができる。例示すると、オフセット値は、限られた範囲の値を有するように、統計的な評価を通じて決定されている。言い換えると、オフセット値は通常、値の特定のセットに限定される。一例として、あるSAOエッジオフセットタイプについて、対応するオフセット値は、「長方形構造」として特徴付けられ得るものを有すると特定されている。この長方形構造は、次のように記述され得る。
・offset0及びoffset3は同様である。
・offset1及びoffset2は同様である。
・offset0/offset3はoffset1/offset2以上である。
・オフセット値は通常0/1/2に限定される。
[0065]本開示で説明される技法は、この長方形構造を利用して、HMにおいて現在規定されているようなオフセット値の独立のコード化と比較して、SAOオフセット値に対するより効率的なコード化を実現することができる。具体的には、本開示は、ビデオエンコーダとビデオデコーダの両方においてSAO処理のために使用され得る、SAOオフセット値のインデックス付きセットを含む、コードブックを使用することを提案する。
[0066]動作において、本開示で説明される技法は、ビデオコード化プロセスにおいてSAOオフセット値をコード化することができる。一例として、ビデオエンコーダ20は、本開示で説明される技法を実施して、本明細書で説明されるSAOプロセスに従ってSAOオフセット値を決定し、SAOオフセット値の間の関係を利用して符号化SAOオフセット値を生成するように最適化されている統計的に無損失のコード化プロセスに従って、SAOオフセット値をコード化するように構成され得る。同様に、ビデオデコーダ30は、本開示で説明される技法を実施して、本明細書で説明されるSAO信号伝達と解析技法とに従ってSAOオフセット値を決定するように構成され得る。
[0067]一例では、ビデオエンコーダ20は、SAOオフセット値の異なるセットをコード化するための複数のコードを定義する、SAOオフセット値のコードブックを記憶することによって、SAOオフセット値をコード化することができる。ビデオエンコーダ20は、SAOオフセット値をコード化するためにコードブックが使用されたことを示すためのビットをビットストリーム中で信号伝達し、使用されたSAOオフセット値の特定のセットを示すためのインデックスをコードブックに信号伝達することができる。コードブックは、ビデオエンコーダ20とビデオデコーダ30の両方において事前に定義され記憶され得る。一例では、コードブックは、ビデオエンコーダ20及び/又はビデオデコーダ30におけるメモリに記憶された参照テーブル(LUT)であり得る。
[0068]他の例では、事前に定義されたコードブックを記憶するのではなく、ビデオエンコーダ20は、コードブックに記憶されるべきSAOオフセット値を適応的に決定し、スライスヘッダ、適応パラメータセット(APS)、シーケンスパラメータセット(SPS)、及びピクチャパラメータセット(PPS)の1つ又は複数において、適応的に決定されたコードブックを信号伝達することができる。ビデオエンコーダ20は、幾つかの例では、以前に信号伝達された、又はビデオデコーダ30に記憶された任意の他のコードブックを適応的に決定されたコードブックが置き換えるように、スライスデータ、スライスヘッダ、APS、SPS、及びPPSの1つ又は複数において、適応的に決定されたコードブックを信号伝達することができる。あるいは、ビデオエンコーダは、幾つかの例では、以前に信号伝達された、又は符号化SAOオフセット値を復号するために使用されるビデオデコーダ30に記憶された任意の他のコードブックを適応的に決定されたコードブックが補足するように、スライスデータ、スライスヘッダ、APS、SPS、及びPPSの1つ又は複数において、適応的に決定されたコードブックを信号伝達することができる。
[0069]他の例では、ビデオエンコーダ20は、コードブック中のSAOオフセット値のセットのインデックスをコード化するのではなく、HM及びHEVCに関して上で説明されたもののような、統計的に無損失のコード化に従って、SAOオフセット値をコード化することができる。この例では、ビデオエンコーダ20は、明示的に符号化されたSAOオフセット値が、SAOコードブックに対するインデックスを符号化することよりも良好なレート歪み性能を提供するかどうかを決定することができる。この例では、ビデオエンコーダ20は、レート歪みの最適化に基づいて、明示的に符号化されたSAOオフセット値を信号伝達するか、SAOコードブックに対するインデックスを信号伝達するかのいずれかであり得る。
[0070]加えて、この決定が、明示的に符号化されたSAOオフセット値と、コードブックによりコード化されたオフセット値とに関して行われる場合、ビデオエンコーダ20は、コードブックによりコード化されたSAOオフセット値が、明示的に符号化されたSAOオフセット値よりも効率的に符号化されないと決定したことに応答して、符号化SAOオフセット値が明示的に符号化されたことを示すためのビットをビットストリーム中で信号伝達することができる。その上、ビデオエンコーダ20は、上述のビットに続いて、明示的に符号化されたSAOオフセット値をビットストリーム中で信号伝達することができる。
[0071]このようにして、本技法は全般に、SAOオフセット値のより効率的な符号化を可能にし得る。一般に、本技法は、次の選択肢のうちの1つによって、SAOに対するコードブックを定義することができる。
選択肢1:サイズNを伴う、デコーダ/エンコーダ内のオフセット値の事前に定義されたコードブックを使用する
選択肢2:スライスデータ/スライスヘッダ/APS/PPS/SPSの1つを使用してサイズNのコードブックを信号伝達するそのようなコードブックは、次の状況の1つ又は複数において参照及び/又は再使用され得る。
・同じレイヤ内(例えば、1つのフレーム/区分/LCUからのコードブックは、他のフレーム/区分/LCUのオフセットに対するコードブックを予測するために使用され得る)
・スケーラブルビデオコード化(SVC)における異なるレイヤの間(例えば、基本レイヤからのコードブックは、強化レイヤに対するコードブックを予測するために再使用又は使用され得る)
・マルチビュービデオコード化(MVC)における異なるビューの間(例えば、あるビューからのコードブックは、他のビューに対するコードブックを予測するために再使用又は使用され得る)
選択肢3:選択肢1よりも選択肢2を優先する可能性を伴って選択肢1を使用する
選択肢4:選択肢2の信号伝達プロセスによる、オフセット値の追加のセットのコードブックへの追加の可能性を伴う選択肢1
[0072]選択肢1は、サイズNのSAOオフセット値を記憶するための、適応的に決定されたものではなく事前に定義されたコードブックを、ビデオエンコーダ及びビデオデコーダが記憶する例を指す。即ち、コードブックは、SAOオフセット値のN個の異なるセットを記憶することができる。例えば、エッジタイプSAOオフセットでは、コードブック中の各エントリーは、4つのオフセット値を含み得る。帯域タイプSAOオフセットでは、コードブック中の各エントリーは、16個のオフセット値を含み得る。
[0073]一例では、各エッジオフセットタイプ又は帯域オフセットタイプに対する別個のコードブックであり得る。別の例では、全てのSAOタイプ(即ち、各エッジタイプ及び各帯域タイプ)に対するSAOオフセット値の組合せの全てを含む、単一のコードブックであり得る。ビデオエンコーダ20は、決定されたSAOオフセットタイプに基づいて、コードブックからオフセット値の対応するセットの1つを選択して、符号化プロセスの間にSAOを実行する。この決定は、レート歪みの最適化に基づき得る。ビデオエンコーダ20は次いで、コードブックに対するインデックスを、符号化ビデオビットストリーム中へと信号伝達し、オフセット値のどのセットが使用されたかを示す。複数のコードブックがSAOタイプごとに使用される例では、ビデオエンコーダ20はまた、特定のコードブックが使用されていることを示すための、1つ又は複数のビットを信号伝達することができる。ビデオデコーダ30は次いで、信号伝達されるビットに従って、ビデオデコーダに記憶されたコードブック中のオフセット値にアクセスする。
[0074]選択肢2は、ビデオエンコーダがコードブックを適応的に決定し、スライスデータ、スライスヘッダ、APS、PPS、又はSPSを介してこのコードブックをビデオデコーダに信号伝達する、上記の例を指す。幾つかの例では、コードブックは、複数の異なるフレーム、区分、最大コード化単位(LCU)によって参照される。即ち、第1のフレーム、区分(例えば、スライス)、及び/又はLCUを復号する際に使用するために信号伝達されるコードブックは、第2の異なるフレーム、区分、及び/又はLCUによって参照され得る。同様に、複数のフレーム、区分、及び/又はLCUが同じコードブックを参照し得る技法のこの態様は、スケーラブルビデオコード化(SVC)及び/又はマルチビュービデオコード化(MVC)に対応するように拡張され得る。
[0075]SVCの例は、全体が参照によって本明細書に組み込まれる、H.264/AVC規格の付録Gにおいて記述されるSVC処理である。SVCは、HEVCのような他のコード化規格のために開発され、又はそれに適用され得る。SVCにおいて、基本レイヤを補足するために、しばしば、ビデオデータが表示され得る空間解像度又は時間解像度を向上させるために、1つ又は複数の強化レイヤがコード化され得る。即ち、基本レイヤは、第1の低い空間解像度又は時間解像度でビデオデータを表し得る。追加の強化レイヤは、基本レイヤを補足して、基本レイヤと比較して空間解像度又は時間解像度を向上させることができる。SVCは一般に、同じビットストリームがビットストリーム(例えば、基本レイヤ)の低解像度のサブセットを復号することが可能な基本ビデオデコーダによって消費され得るが、より進化したビデオデコーダが追加のレイヤとともに基本レイヤを復号してより高解像度のビデオデータを提供することが可能であり得るという点で、より古いハードウェアに対する前方互換性を可能にし得る。選択肢2は、コードブックが複数のレイヤによって参照されることを可能にするために、SVCに関して実施され得る。例えば、基本レイヤからのコードブックは、1つ又は複数の強化レイヤにおいて使用するためのコードブックを予測するために使用され得る(例えば、差分予測)。別の例では、基本レイヤのために使用されるコードブックは単に、1つ又は複数の強化レイヤに対して再使用され得る。
[0076]マルチビュービデオコード化(MVC)は、ビデオデータの複数のビューをコード化するためのビデオコード化処理である。SVCと同様に、MVCプロセスの例は、H.264/AVCに対する付録として定義される。より具体的には、MVCプロセスは、全体が参照によって本明細書に組み込まれる、H.264/AVC規格の付録Hにおいて記述される。MVCは、HEVCのような他のコード化規格のために開発され、又はそれに適用され得る。MVCでは、各ビューは、共通のシーンの対応するビデオデータが撮影された異なる視点又は角度に対応する。MVCは、インタービュー予測(2つの異なるビューの間の予測を意味する)とイントラビュー予測(同じビュー内の予測を意味する)とを実現する。選択肢2は、コードブックが複数のビューによって参照されることを可能にするために、MVCに関して実施され得る。例えば、1つのビュー(例えば、基本ビュー)からのコードブックは、1つ又は複数の異なるビューにおいて使用されるべきコードブックを予測するために使用され得る。別の例では、基本ビューのために使用されるコードブックは単に、1つ又は複数の他のビューのために再使用され得る。
[0077]選択肢3は、選択肢1及び選択肢2の例示的な組合せを指し、このとき、ビデオエンコーダ及びビデオデコーダは、ビデオエンコーダによって適応的に決定され信号伝達されるコードブックによって選択的に置き換えられ得る、事前に定義されるコードブックを記憶する。選択肢4は、選択肢1及び選択肢2の組合せを指し、このとき、ビデオエンコーダ及びビデオデコーダは、ビデオエンコーダ20によって決定され信号伝達されるループフィルタパラメータ(例えば、SAOオフセット値)の1つ又は複数のセットによって補強され得る、事前に定義されるコードブックを記憶する。即ち、ビデオエンコーダ20は、ビデオデコーダ30において記憶されるコードブックに追加され得る、ループフィルタパラメータのセットを信号伝達することができる。
[0078]エッジタイプSAOに対するSAOオフセット値を記憶するコードブックの一例は次の通りである。
(2,1,1,2)
(1,1,1,1)
(1,0,0,1)
(2,0,0,2)
(2,0,1,2)
(2,1,0,2)
[0079]この例示的なコードブックでは、4つの数字からなる列の各々は、エッジタイプSAOに対して、それぞれ、offset0、offset1、offset2、及びoffset3の値を特定する。例えば、(2,1,1,2)はそれぞれ、offset0、offset1、offset2、及びoffset3に対して、2、1、1、及び2という値を示す。最上位のエントリー(即ち、(2,1,1,2))は一般に、値の最も頻繁に特定される値の列と関連付けられ、上から2番目のエントリー(即ち、(1,1,1,1))は通常、2番目に頻繁に利用される列であり、以下同様である。コードブック中の単一のエントリーへと4つの値を割り当てることによって、本開示の技法は、SAOオフセット値の各々を明示的に信号伝達することと比較して、コードブックに対するインデックスを単に信号伝達することによって、SAOオフセット値をより効率的に信号伝達することができる。例えば、4つのオフセット値の幾つかの組合せの各々は、コードブック中のエントリーを特定するそれぞれのコードとともに信号伝達され得る。
[0080]上の選択肢1において論じられるように、コードブックを使用してオフセット値を信号伝達する場合、通常、ビデオエンコーダは、コードブック中の特定のエントリーを定義する1つ又は複数のシンタックス要素の前にあるSAOオフセット値(例えば、SAOオフセット値のセット)を符号化するためにコードブックが使用されたことを示すための指示(例えば、1つ又は複数のビット)をビットストリーム中で信号伝達する。コードブック中のエントリーは通常、サイズNの任意のコード(例えば、サイズフロア(log2(N))の固定長コード、単位コード、又は指数ゴロムコード)を備え得る。ある例として、コードブックの使用の指示は、単一のビットを使用して信号伝達され得る。例えば、第1のビットは、コードブックの使用を示すために1という値で信号伝達され、コードブックが使用されないことを示すために0という値で信号伝達され得る。コードブックが使用される場合、1つ又は複数のシンタックス要素は次いで、コードブック中のエントリーのいずれが使用されるかを示すために信号伝達される。
[0081]SAOオフセット値が最適化されたコードブックを使用してコード化されない場合、ビデオエンコーダ20は、最適化されたコードブックがSAOオフセット値をコード化するために使用されなかったことを示すビットをビットストリーム中で信号伝達することができ、その後に明示的にコード化されたSAOオフセット値が続く。あるいは、ビデオエンコーダは、最適化されたコードブックが使用されなかったことを示すビットを信号伝達することができ、その後に、SOAオフセット値のセットに対するビット、及び、コードブック中で特定される値とSAOプロセスにおいて使用されるべき実際のSAOオフセット値との差分とともにコードブック中のエントリーを定義する1つ又は複数のシンタックス要素に対するビットが続く。加えて、幾つかの例では、ビデオエンコーダ20は、差分の代わりに、又は差分に加えて、スケーリング係数を信号伝達することができ、この場合、スケーリング係数は、最適化されたコードブックの最適化されたコードによって特定されるSOAオフセット値の各々が乗算され得る係数を特定し得る。
[0082]本開示の技法と一致する一例として、ビデオエンコーダ20及び/又はビデオデコーダ30は、ビデオデータの1つ又は複数のブロックをコード化するように構成され得る。例えば、1つ又は複数のブロックの各々は、ビデオデータのフレームの特定のスライスに対応し得る。しかしながら、より一般的には、1つ又は複数のブロックは、1つ又は複数の所謂「レイヤ」(例えば、スケーラブルビデオコード化、即ちSVC技法が使用される場合)、又は、ビデオデータの1つ又は複数のコード化ビデオシーケンス(CVS)の1つ又は複数の所謂「ビュー」(例えば、マルチビューコード化、即ちMVC技法が使用される場合)に対応する1つ又は複数のフレームを含む、ビデオデータの1つ又は複数のフレームのいずれかに対応し得る。
[0083]この例では、1つ又は複数のブロックをコード化することの一部として、ビデオエンコーダ20及び/又はビデオデコーダ30は、以前に説明されたように、SAOプロセスを使用して1つ又は複数のブロックをコード化する(例えば、符号化及び/又は復号する)ためにビデオエンコーダ20及び/又はビデオデコーダ30によって使用される、1つ又は複数のSAOオフセット値をコード化するように構成され得る。例えば、ビデオデコーダ30は、ループフィルタリングプロセスを実行するためにコードブックを使用するか否かを示す指示を受信し、このとき、コードブックが複数のエントリーを含み、コードブック中のエントリーの各々がループフィルタリングプロセスに対するループフィルタパラメータのセットを備え、コードブックがビデオデータの1つ又は複数のブロックに対して適用可能であり、更に、受信された指示に基づいて、ビデオデータの1つ又は複数のブロックに対してループフィルタリングプロセスを実行するように構成され得る。
[0084]ビデオデコーダ30は更に、コードブック中の特定のエントリーを定義する1つ又は複数のシンタックス要素を受信し、受信された1つ又は複数のシンタックス要素に基づいて、コードブックからループフィルタパラメータの特定のエントリーを取り出し、受信された指示及び取り出されたループフィルタパラメータに基づいて、ビデオデータの1つ又は複数のブロックに対してループフィルタリングプロセスを実行するように構成され得る。一例では、ループフィルタリングプロセスは適応ループフィルタALFであり、ループフィルタパラメータはALF係数を備える。別の例では、ループフィルタリングプロセスはサンプル適応オフセット(SAO)フィルタであり、ループフィルタパラメータはSAOオフセット値を備える。
[0085]同様に、ビデオエンコーダ20は、ループフィルタリングプロセスにおいて使用するループフィルタパラメータの特定のセットを決定し、ループフィルタパラメータの特定のセットがコードブックに記憶されるか否かを示す指示を信号伝達し、このとき、コードブックが複数のエントリーを含み、コードブック中のエントリーの各々がループフィルタリングプロセスに対するループフィルタパラメータのセットを備え、コードブックがビデオデータの1つ又は複数のブロックに対して適用可能であり、更に、ループフィルタパラメータの特定のセットに基づいて、ビデオデータの1つ又は複数のブロックに対してループフィルタリングプロセスを実行するように構成され得る。ビデオエンコーダ20は更に、コードブック中のループフィルタパラメータの特定のセットに対するエントリーを定義する、1つ又は複数のシンタックス要素を信号伝達するように構成され得る。
[0086]このようにして、ビデオエンコーダ20及び/又はビデオデコーダ30が複数のコードを定義するコードブックを記憶しコードブックに従ってSAOオフセット値をコードすることを可能にすることによって(即ち、コードブックによって定義される複数のコードの1つを使用してSAOオフセット値を規定することによって)、本開示の技法は、ビデオエンコーダ20及び/又はビデオデコーダ30が、同様のデータをコード化するために使用される他の技法と比較してより少量の情報(例えば、より少数のデータのビット)を使用して、SAOオフセット値をコード化することを可能にし得る。一例として、ビデオエンコーダ20及び/又はビデオデコーダ30が上で説明された方式でSAOオフセット値をコード化することを可能にすることによって、開示された技法は、SAOオフセット値を直接コード化することを含む技法に対して、(例えば、ビデオエンコーダ20からビデオデコーダ30及び/又は記憶機器24へと)ビットストリーム中で信号伝達されるビットの数を減らすことができる。
[0087]加えて、上で説明された技法はまた、ビデオエンコーダ20及び/又はビデオデコーダ30の複雑さを下げることができる。一例として、本開示の技法は、ビデオエンコーダ20及びビデオデコーダ30の1つ又は複数の処理リ発信源及び/又は記憶リ発信源を簡略化し、又はそれらの使用量を減らすことができる。具体的には、コードブックを記憶することによって、かつ、コードブックによって定義される複数のエントリーの1つを使用してSAOオフセット値をコード化することによって、開示される技法は、幾つかの場合には、ビデオエンコーダ20及び/又はビデオデコーダ30が、SAOオフセット値を直接コード化する場合よりも少量の情報を処理及び/又は記憶することを可能にし得る。例えば、以下でより詳しく説明されるように、コードブックによって定義されSAOオフセット値をコード化するために使用される複数のコードの1つは、幾つかの場合には、SAOオフセット値自体よりも少量の情報(例えば、より少数のデータのビット)を使用して表され得る。
[0088]このようにして、ビデオデータ(例えば、ビデオデータの1つ又は複数のブロック及び関連する1つ又は複数のSAOオフセット値)をコード化するときの、ビデオエンコーダ20及びビデオデコーダ30の1つ又は複数の複雑さの相対的な低減、及び/又は、本開示の技法を使用するときの、コード化ビデオデータを含むコード化ビットストリームに対するビットの相対的な節減があり得る。
[0089]ビデオエンコーダ20及びビデオデコーダ30はそれぞれ、可能な場合、1つ又は複数のマイクロプロセッサ、DSP、ASIC、FPGA、ディスクリート論理回路、ソフトウェア、ハードウェア、ファームウェア、又はそれらの任意の組合せのような、種々の好適なエンコーダ又はデコーダ回路のいずれかとして実装され得る。ビデオエンコーダ20及びビデオデコーダ30の各々は、1つ又は複数のエンコーダ又はデコーダ内に含まれてよく、それらのいずれも複合ビデオエンコーダ/デコーダ(コーデック)の一部として統合されてよい。ビデオエンコーダ20及び/又はビデオデコーダ30を含む装置は、集積回路(IC)、マイクロプロセッサ、及び/又はセルラー電話などのワイヤレス通信機器を備え得る。
[0090]図2は、本開示の技法と一致する、ビデオコード化プロセスにおいてSAOオフセット値をコード化するための技法を実行することができるビデオエンコーダの例を示すブロック図である。ビデオエンコーダ20は、ビデオスライス内のビデオブロックのイントラコード化とインターコード化とを実行し得る。イントラコード化は、空間的予測を利用して、所与のビデオフレーム又はピクチャ内のビデオの空間的冗長性を低減又は除去する。インターコード化は、時間的予測を利用して、ビデオシーケンスの隣接フレーム又はピクチャ内のビデオの時間的冗長性を低減又は除去する。イントラモード(Iモード)は、幾つかの空間ベースの圧縮モードのいずれかを指し得る。単方向予測(Pモード)又は双方向予測(Bモード)などのインターモードは、幾つかの時間ベースの圧縮モードのいずれかを指し得る。
[0091]図2の例では、ビデオエンコーダ20は、モード選択ユニット40と、動き推定ユニット42と、動き補償ユニット44と、イントラ予測モジュール46と、参照フレームメモリ64と、加算器50と、変換モジュール52と、量子化ユニット54と、エントロピー符号化ユニット56とを含む。ビデオブロック再構成のために、ビデオエンコーダ20はまた、逆量子化ユニット58と、逆変換モジュール60と、加算器62と、ループフィルタユニット66とを含む。再構成されたビデオからブロッキネスアーティファクトを除去するためにブロック境界をフィルタリングするための、デブロッキングフィルタも含まれ得る。加えて、以下でより詳しく説明されるように、ループフィルタユニット66は、ALF及び/又はデブロッキングのような、本開示の技法に従って、SAO及び/又は適応ループフィルタプロセスを実行することができる。いずれの場合でも、フィルタリングされた再構成されたビデオブロックは、次いで参照フレームメモリ64に記憶される。
[0092]図2に示されるように、ビデオエンコーダ20は、符号化されるべきビデオスライス内の現在のビデオブロックを受信する。スライスは複数のビデオブロックに分割され得る。モード選択ユニット40は、誤差結果に基づいて、現在のビデオブロックについて、コード化モードのうちの1つ、即ちイントラモード又はインターモードを選択し得る。イントラモード又はインターモードが選択された場合、モード選択ユニット40は、得られたイントラコード化ブロック又はインターコード化ブロックを、残差ブロックデータを生成するために加算器50に与え、かつ参照ピクチャとして使用するための符号化ブロックを再構成するために加算器62に与え得る。ループフィルタユニット66は次いで、上で説明された技法に従って、SAO及び/又は適応ループフィルタプロセスを実行することができる。
[0093]フィルタリングされた再構成されたビデオブロックは次いで、参照フレームメモリ64に記憶される。イントラ予測モジュール46は、コード化されるべき現在のブロックと同じフレーム又はスライス中の1つ又は複数の隣接ブロックに対する、現在のビデオブロックのイントラ予測コード化を実行して、空間圧縮を行うことができる。動き推定ユニット42及び動き補償ユニット44は、1つ又は複数の参照ピクチャ中の1つ又は複数の予測ブロックに対する、現在のビデオブロックのインター予測コード化を実行して、時間圧縮を行うことができる。
[0094]インターコード化の場合、動き推定ユニット42は、ビデオシーケンスの所定のパターンに従って、ビデオスライスのためのインター予測モードを決定するように構成され得る。所定のパターンは、シーケンス中のビデオスライスを、Pスライス、Bスライス、又はGPBスライスと指定し得る。動き推定ユニット42及び動き補償ユニット44は、高度に統合され得るが、概念的な目的のために別々に示されている。動き推定ユニット42によって実行される動き推定は、ビデオブロックの動きを推定する動きベクトルを生成するプロセスである。動きベクトルは、例えば、参照ピクチャ内の予測ブロックに対する現在のビデオフレーム又はピクチャ内のビデオブロックのPUの変位を示し得る。
[0095]予測ブロックは、絶対値差分和(SAD)、差分2乗和(SSD)、又は他の差分尺度によって決定され得る画素差分に関して、コード化されるべきビデオブロックのPUに厳密に一致することがわかるブロックである。幾つかの例では、ビデオエンコーダ20は、参照フレームメモリ64に記憶された参照ピクチャのサブ整数画素位置の値を計算し得る。例えば、ビデオエンコーダ20は、参照ピクチャの1/4画素位置、1/8画素位置、又は他の分数画素位置の値を計算し得る。従って、動き推定ユニット42は、フル画素位置と分数画素位置とに対する動き探索を実行し、分数画素精度で動きベクトルを出力し得る。
[0096]動き推定ユニット42は、PUの位置を参照ピクチャの予測ブロックの位置と比較することによって、インターコード化されたスライス中のビデオブロックのPUのための動きベクトルを計算する。参照ピクチャは、第1の参照ピクチャリスト(リスト0)又は第2の参照ピクチャリスト(リスト1)から選択されてよく、それらの参照ピクチャリストの各々は、参照フレームメモリ64に記憶された1つ又は複数の参照ピクチャを識別する。動き推定ユニット42は、計算された動きベクトルをエントロピー符号化ユニット56と動き補償ユニット44とに送る。
[0097]動き補償ユニット44によって実行される動き補償は、動き推定によって決定された動きベクトルに基づいて予測ブロックをフェッチ又は生成することを伴い得る。現在のビデオブロックのPUのための動きベクトルを受信すると、動き補償ユニット44は、参照ピクチャリストのうちの1つにおいて動きベクトルが指す予測ブロックの位置を特定し得る。ビデオエンコーダ20は、コード化されている現在のビデオブロックの画素値から予測ブロックの画素値を減算し、画素差分値を形成することによって残差ビデオブロックを形成する。画素差分値は、ブロックの残差データを形成し、ルーマ差分成分とクロマ差分成分の両方を含み得る。加算器50は、この減算演算を実行する1つ又は複数のコンポーネントを表す。動き補償ユニット44はまた、ビデオスライスのビデオブロックを復号する際にビデオデコーダ30が使用するための、ビデオブロック及びビデオスライスと関連付けられるシンタックス要素を生成し得る。
[0098]動き補償ユニット44が現在のビデオブロックのための予測ブロックを生成した後、ビデオエンコーダ20は、現在のビデオブロックから予測ブロックを減算することによって残差ビデオブロックを形成する。残差ブロック中の残差ビデオデータは、1つ又は複数のTU中に含まれ、変換モジュール52に適用され得る。変換モジュール52は、離散コサイン変換(DCT)又は概念的に同様の変換などの変換を使用して、残差ビデオデータを残差変換係数に変換する。変換モジュール52は、残差ビデオデータを画素領域から周波数領域などの変換領域に変換し得る。
[0099]変換モジュール52は、得られた変換係数を量子化ユニット54に送り得る。量子化ユニット54は、ビットレートを更に低減するために変換係数を量子化する。量子化プロセスは、係数の一部又は全てと関連付けられるビット深度を低減することができる。量子化の程度は、QPを調整することによって修正され得る。幾つかの例では、量子化ユニット54は、次いで、量子化された変換係数を含む行列の走査を実行し得る。代替的に、エントロピー符号化ユニット56が走査を実行し得る。
[0100]量子化の後に、エントロピー符号化ユニット56は、量子化された変換係数をエントロピー符号化する。例えば、エントロピー符号化ユニット56は、CAVLC、CABAC、又は別のエントロピー符号化方法を実行し得る。エントロピー符号化ユニット56によるエントロピー符号化の後に、符号化されたビットストリームは、ビデオデコーダ30に送信されるか、或いはビデオデコーダ30による後の送信又は取り出しのためにアーカイブされ得る。エントロピー符号化ユニット56はまた、コード化されている現在のビデオスライスのための動きベクトルと他のシンタックス要素とをエントロピー符号化し得る。
[0101]逆量子化ユニット58及び逆変換モジュール60は、それぞれ逆量子化及び逆変換を適用して、参照ピクチャの参照ブロックとして後で使用するために画素領域において残差ブロックを再構成する。動き補償ユニット44は、残差ブロックを参照ピクチャリストのうちの1つの中の参照ピクチャのうちの1つの予測ブロックに加算することによって、参照ブロックを計算し得る。動き補償ユニット44はまた、再構成された残差ブロックに1つ又は複数の補間フィルタを適用して、動き推定において使用するサブ整数画素値を計算し得る。加算器62は、再構成された残差ブロックを動き補償ユニット44によって生成された動き補償された予測ブロックに加算して、参照フレームメモリ64に記憶するための参照ブロックを生成する。以前に説明されたように、ループフィルタユニット66はまた、上で説明された技法に従って、参照ブロックに対してサンプル適応オフセット及び/又は適応ループフィルタプロセスを実行することができる。フィルタリングされた再構成されたビデオブロックは次いで、参照フレームメモリ64に記憶される。参照ブロックは、後続のビデオフレーム又はピクチャ中のブロックをインター予測するために、動き推定ユニット42及び動き補償ユニット44によって参照ブロックとして使用され得る。
[0102]幾つかの例では、ビデオエンコーダ20は、例えば、ビデオデコーダ30及び/又は記憶機器24へのビットストリーム中での送信のために、ビデオコード化プロセスの間にビデオデータの1つ又は複数のブロックを符号化するように構成され得る。例えば、以前に説明されたように、1つ又は複数のブロックは、ビデオデータのフレームの1つ又は複数のスライス内に、又は、ビデオデータの複数のフレームのスライス内に含まれ得る。一例として、1つ又は複数のブロックを符号化することの一部として、一例として、ビデオエンコーダ20のループフィルタユニット66は、例えば、符号化された1つ又は複数のブロックとともにビデオデコーダ30及び/又は記憶機器24へとビットストリーム中で送信するために、1つ又は複数のSAOオフセット値を符号化するように構成され得る。前にも説明されたように、1つ又は複数のSAOオフセット値は、1つ又は複数のブロックを符号化するためにビデオエンコーダ20によって使用され、1つ又は複数のブロックを復号するためにビデオデコーダ30によって使用され得る。
[0103]ループフィルタユニット66は、ループフィルタリングプロセスにおいて使用するためのループフィルタパラメータの特定のセットを決定し、ループフィルタパラメータの特定のセットがコードブックに記憶されるか否かを示す指示を信号伝達し、このとき、コードブックが複数のエントリーを含み、コードブック中のエントリーの各々がループフィルタリングプロセスに対するループフィルタパラメータのセットを備え、コードブックがビデオデータの1つ又は複数のブロックに対して適用可能であり、更に、ループフィルタパラメータの特定のセットに基づいて、ビデオデータの1つ又は複数のブロックに対してループフィルタリングプロセスを実行するように構成され得る。ループフィルタユニット66は更に、コードブック中のループフィルタパラメータの特定のセットに対するエントリーを定義する、1つ又は複数のシンタックス要素を信号伝達するように構成され得る。
[0104]他の例では、ループフィルタユニット66は更に、コードブックを適応的に決定するように構成され得る。これらの例では、エントロピー符号化ユニット56はまた更に、スライスデータ、スライスヘッダ、APS、SPS、及びPPSの1つ又は複数において適応的に決定されたコードブックを信号伝達するように構成され得る。
[0105]図3は、本開示の技法と一致する、ビデオコード化プロセスにおいてSAOオフセット値をコード化するための技法を実行することができるビデオデコーダの例を示すブロック図である。図3の例では、ビデオデコーダ30は、エントロピー復号ユニット80と、予測モジュール82と、逆量子化ユニット88と、逆変換モジュール90と、加算器92と、ループフィルタユニット94と、参照フレームメモリ96とを含む。予測モジュール82は、動き補償ユニット84と、イントラ予測モジュール86とを含む。ビデオデコーダ30は、幾つかの例では、図2のビデオエンコーダ20に関して説明された符号化パスとは全般に逆の復号パスを実行し得る。
[0106]復号プロセス中に、ビデオデコーダ30は、ビデオエンコーダ20から、符号化されたビデオスライスのビデオブロックと関連するシンタックス要素とを表す、符号化されたビデオビットストリームを受信する。ビットストリーム中に表されたビデオブロックが圧縮されたビデオデータを含むとき、ビデオデコーダ30のエントロピー復号ユニット80はビットストリームをエントロピー復号して、量子化係数と、動きベクトルと、他のシンタックス要素とを生成する。エントロピー復号ユニット80は、予測モジュール82に動きベクトルと他のシンタックス要素とを転送する。ビデオデコーダ30は、ビデオスライスレベル及び/又はビデオブロックレベルでシンタックス要素を受信し得る。
[0107]ビデオスライスがイントラコード化された(I)スライスとしてコード化されるとき、予測モジュール82のイントラ予測モジュール86は、信号伝達されたイントラ予測モードと、現在のフレーム又はピクチャの、以前に復号されたブロックからのデータとに基づいて、現在のビデオスライスのビデオブロックのための予測データを生成し得る。ビデオフレームがインターコード化された(即ち、B、P又はGPB)スライスとしてコード化されるとき、予測モジュール82の動き補償ユニット84は、エントロピー復号ユニット80から受信された動きベクトル及び他のシンタックス要素に基づいて、現在のビデオスライスのビデオブロックのための予測ブロックを生成する。予測ブロックは、参照ピクチャリストのうちの1つの中の参照ピクチャのうちの1つから生成され得る。ビデオデコーダ30は、参照フレームメモリ96に記憶された参照ピクチャに基づいて、デフォルトの構成技法を使用して、参照フレームリスト、即ち、リスト0とリスト1とを構成し得る。
[0108]動き補償ユニット84は、動きベクトルと他のシンタックス要素とを解析することによって現在のビデオスライスのビデオブロックのための予測情報を決定し、その予測情報を使用して、復号されている現在のビデオブロックの予測ブロックを生成する。例えば、動き補償ユニット84は、ビデオスライスのビデオブロックをコード化するために使用される予測モード(例えば、イントラ又はインター予測)と、インター予測スライスタイプ(例えば、Bスライス、Pスライス、又はGPBスライス)と、スライスの参照ピクチャリストのうちの1つ又は複数に対する構成情報と、スライスの各々のインター符号化されたビデオブロックの動きベクトルと、スライスの各々のインターコード化されたビデオブロックのインター予測ステータスと、現在のビデオスライス中のビデオブロックを復号するための他の情報とを決定するために、受信されたシンタックス要素の幾つかを使用する。
[0109]動き補償ユニット84はまた、補間フィルタに基づいて補間を実行し得る。動き補償ユニット84は、ビデオブロックの符号化中にビデオエンコーダ20によって使用された補間フィルタを使用して、参照ブロックのサブ整数画素の補間された値を計算し得る。動き補償ユニット84は、受信されたシンタックス要素からビデオエンコーダ20によって使用された補間フィルタを決定し、その補間フィルタを使用して予測ブロックを生成し得る。
[0110]逆量子化ユニット88は、ビットストリーム中で与えられエントロピー復号ユニット80によって復号された、量子化された変換係数を逆量子化(inverse quantize)、即ち、逆量子化(de-quantize)する。逆量子化プロセスは、量子化の程度を決定し、同様に、適用されるべき逆量子化の程度を決定するための、ビデオスライス中の各ビデオブロックに対してビデオエンコーダ20によって計算される量子化パラメータ(QP)の使用を含み得る。逆変換モジュール90は、逆変換、例えば、逆DCT、逆整数変換、又は概念的に同様の逆変換プロセスを変換係数に適用して、画素領域において残差ブロックを生成する。
[0111]動き補償ユニット84が、動きベクトルと他のシンタックス要素とに基づいて現在のビデオブロックのための予測ブロックを生成した後、ビデオデコーダ30は、逆変換モジュール90からの残差ブロックを動き補償ユニット84によって生成された対応する予測ブロックと加算することによって、復号されたビデオブロックを形成する。加算器92は、この加算演算を実行する1つ又は複数のコンポーネントを表す。ブロッキネスアーティファクトを除去するために、復号ブロックをフィルタリングするためのデブロッキングフィルタが適用され得る。加えて、上で説明されたように、ループフィルタユニット94は、上で説明された技法に従って、SAO及び/又は適応ループフィルタプロセスを実行することができる。いずれの場合でも、所与のフレーム又はピクチャ中の復号ビデオブロックは、次いで、その後の動き補償のために使用される参照ピクチャを記憶する参照フレームメモリ96に記憶される。参照フレームメモリ96はまた、図1の表示装置28などの表示装置上で後で表示するために、復号されたビデオを記憶する。
[0112]幾つかの例では、ビデオデコーダ30は、例えば、ビデオエンコーダ20及び/又は記憶機器24からのビットストリーム中で受信される、ビデオコード化プロセスの間にビデオデータの1つ又は複数のブロックを復号するように構成され得る。例えば、以前に説明されたように、1つ又は複数のブロックは、ビデオデータのフレームの1つ又は複数のスライス内に、又は、ビデオデータの複数のフレームのスライス内に含まれ得る。一例として、1つ又は複数のブロックを復号することの一部として、ビデオデコーダ30のループフィルタユニット94は、例えば、符号化された1つ又は複数のブロックとともにビデオデコーダ30及び/又は記憶機器24からビットストリーム中でも受信される、1つ又は複数のSAOオフセット値を復号するように構成され得る。前にも説明されたように、1つ又は複数のSAOオフセット値は、1つ又は複数のブロックを符号化するためにビデオエンコーダ(例えば、ビデオエンコーダ20)によって以前に使用された可能性があり、1つ又は複数のブロックを復号するためにビデオデコーダ30によって現在使用されている可能性がある。
[0113]例えば、ループフィルタユニット94は、ループフィルタリングプロセスを実行するためにコードブックを使用するか否かを示す指示を受信し、このとき、コードブックが複数のエントリーを含み、コードブック中のエントリーの各々がループフィルタリングプロセスに対するループフィルタパラメータのセットを備え、コードブックがビデオデータの1つ又は複数のブロックに対して適用可能であり、更に、受信された指示に基づいて、ビデオデータの1つ又は複数のブロックに対してループフィルタリングプロセスを実行するように構成され得る。
[0114]ループフィルタユニット94は更に、コードブック中の特定のエントリーを定義する1つ又は複数のシンタックス要素を受信し、受信された1つ又は複数のシンタックス要素に基づいて、コードブックからループフィルタパラメータの特定のエントリーを取り出し、受信された指示及び取り出されたループフィルタパラメータに基づいて、ビデオデータの1つ又は複数のブロックに対してループフィルタリングプロセスを実行するように構成され得る。一例では、ループフィルタリングプロセスは適応ループフィルタALFであり、ループフィルタパラメータはALF係数を備える。別の例では、ループフィルタリングプロセスはサンプル適応オフセット(SAO)フィルタであり、ループフィルタパラメータはSAOオフセット値を備える。
[0115]図6〜図7は、本開示の技法と一致する、ビデオコード化プロセスにおいてSAOオフセット値をコード化する例示的な方法を示すフローチャートである。図6及び図7の技法は一般に、ハードウェアで実装されるか、ソフトウェアで実装されるか、ファームウェアで実装されるか、又はこれらの組合せで実装されるかにかかわらず、任意の処理ユニット又はプロセッサによって実行されてよく、ソフトウェア又はファームウェアで実装される場合、対応するハードウェアが、ソフトウェア又はファームウェアのための命令を実行するために設けられ得る。
[0116]例として、図6〜図7の技法が、ビデオエンコーダ20(図1及び図2)とビデオデコーダ30(図1及び図3)の両方、更にはこれらの様々なコンポーネント(例えば、ループフィルタユニット66及びループフィルタユニット94)に関して説明されるが、他の機器が同様の技法を実行するように構成され得ることを理解されたい。即ち、ビデオデコーダ30は一般に、エントロピーコード化に関して、ビデオエンコーダ20によって実行される方法と逆の方法を実行するように構成される。従って、ビデオエンコーダ20及びビデオデコーダ30は、この例では、同様の(逆ではあるが)コード化方法を実行するように構成される。しかしながら、ビデオエンコーダ及び/又はビデオデコーダは、特定の方法を実行するように個々に構成され得ることを理解されたい。その上、本開示の技法から逸脱することなく、図6〜図7に示されるステップは、異なる順序で、又は並列に実行されてよく、追加のステップが追加されてよく、幾つかのステップが省略されてよい。
[0117]図6は、本開示の技法による例示的な復号方法のフローチャートである。一例では、ビデオデコーダ30は、ループフィルタリングプロセスを実行するためにコードブックを使用するか否かを示す指示を受信するように構成されてよく、コードブックが複数のエントリーを含み、コードブック中のエントリーの各々がループフィルタリングプロセスに対するループフィルタパラメータのセットを備え、コードブックがビデオデータの1つ又は複数のブロックに対して適用可能である(600)。コードブックが使用されるべきではないことをその指示が示す場合、ビデオデコーダ30は更に、信号伝達されたループフィルタリングパラメータを使用して、ビデオデータの1つ又は複数のブロックに対するループフィルタリングプロセスを実行するように構成され得る(610)。即ち、ループフィルタリングパラメータは、明示的にビデオデコーダ30に信号伝達され、コードブックから取り出されない。
[0118]コードブックが使用されるべきであることを指示が示す場合、ビデオデコーダ30は更に、コードブック中の特定のエントリーを定義する1つ又は複数のシンタックス要素を受信するように構成され得る(620)。ビデオデコーダ30は次いで、受信された1つ又は複数のシンタックス要素に基づいて、コードブックからループフィルタパラメータの特定のエントリーを取り出し(630)、受信された指示及び取り出されたループフィルタパラメータに基づいて、ビデオデータの1つ又は複数のブロックに対してループフィルタリングプロセスを実行することができる(640)。
[0119]上の1つ又は複数の例では、コードブックによって定義される複数のエントリーの1つ又は複数の各々は、固定長のコードワード、単位コードワード、及び指数ゴロムコードワードの1つを備える。
[0120]一例では、上で論じられた技法は、ループフィルタリングプロセスが適応ループフィルタALFであるときに実行され得る。この例では、ループフィルタパラメータはALF係数を備える。
[0121]別の例では、上で論じられた技法は、ループフィルタリングプロセスがサンプル適応オフセット(SAO)フィルタであるときに実行され得る。この例では、ループフィルタパラメータはSAOオフセット値を備える。
[0122]本開示の1つ又は複数の例では、コードブックがビデオデータの1つ又は複数のブロックに対してSAOフィルタを実行するために使用されるべきであることを、指示が示す。例えば、ビデオデコーダ30は更に、スライスヘッダ、適応パラメータセット(APS)、シーケンスパラメータセット(SPS)、及びピクチャパラメータセット(PPS)の1つ又は複数において指示を受信するように構成され得る。
[0123]本開示の一例では、ビデオデコーダ30は、事前に定義されたコードブックをメモリに記憶する。別の例では、コードブックは事前に定義されないが、代わりに、ビデオデコーダ30は、スライスデータ、スライスヘッダ、APS、SPS、及びPPSの1つ又は複数においてコードブックを受信する。
[0124]本開示はこの状況を扱うための様々な例を提示し、このとき、コードブックがビデオデータの1つ又は複数のブロックに対してSAOフィルタを実行するために使用されるべきではないことを、指示が示す。一例では、ビデオデコーダ30は更に、ビデオデータの1つ又はブロックとともに使用するための追加のループフィルタパラメータセットを受信し、コードブックの代わりに受信された追加のループフィルタパラメータを使用してループフィルタリング処理を実行するように構成される。別の例では、ビデオデコーダ30は更に、コードブックへの追加のエントリーとして設定される、受信された追加のループフィルタパラメータを追加するように構成される。
[0125]本開示の他の例は、SVC及びMVCにおいてレイヤとビューの間でコードブックを予測し再使用するための技法を提示する。一例では、コードブックは第1のコードブックであり、第1のコードブックは、スケーラブルビデオデータの基本レイヤにおけるビデオデータの1つ又は複数のブロックに対応する。一例では、ビデオデコーダ30は更に、第1のコードブックから、ビデオデータの1つ又は複数の強化レイヤに対する第2のコードブックを予測するように構成される。別の例では、ビデオデコーダ30は、ビデオデータの1つ又は複数の強化レイヤに対するコードブックを再使用するように構成される。
[0126]別の例では、コードブックは第1のコードブックであり、第1のコードブックは、マルチビュービデオデータの基本ビューにおけるビデオデータの1つ又は複数のブロックに対応する。一例では、ビデオデコーダ30は更に、第1のコードブックから、マルチビュービデオデータの1つ又は複数の追加のビューに対する第2のコードブックを予測するように構成される。別の例では、ビデオデコーダ30は更に、マルチビュービデオデータの1つ又は複数の追加のビューに対するコードブックを再使用するように構成される。
[0127]図7は、本開示の技法による例示的な復号方法のフローチャートである。一例では、ビデオエンコーダ20は、ループフィルタリングプロセスにおいて使用するためのループフィルタパラメータの特定のセットを決定し(700)、ループフィルタパラメータの特定のセットがコードブックに記憶されているか否かを示す指示を信号伝達する(710)ように構成され得る。コードブックは複数のエントリーを含み、コードブック中のエントリーの各々はループフィルタリングプロセスに対するループフィルタパラメータのセットを備え、コードブックがビデオデータの1つ又は複数のブロックに対して適用可能である。
[0128]コードブックが使用されるべきではないことを指示が示す場合、ビデオエンコーダ20は、ビデオデータの1つ又はブロックとともに使用するための追加のループフィルタパラメータを信号伝達するように構成され得る(720)。コードブックが使用されるべきであることを指示が示す場合、ビデオエンコーダ20は、コードブック中のループフィルタパラメータの特定のセットに対するエントリーを定義する、1つ又は複数のシンタックス要素を信号伝達するように構成され得る(730)。ビデオエンコーダ20は次いで、ループフィルタパラメータの特定のセットに基づいて、ビデオデータの1つ又は複数のブロックに対するループフィルタリングプロセスを実行することができる(740)。
[0129]上の1つ又は複数の例では、コードブックによって定義される複数のエントリーの1つ又は複数の各々は、固定長のコードワード、単位コードワード、及び指数ゴロムコードワードの1つを備える。
[0130]一例では、上で論じられた技法は、ループフィルタリングプロセスが適応ループフィルタALFであるときに実行され得る。この例では、ループフィルタパラメータはALF係数を備える。
[0131]別の例では、上で論じられた技法は、ループフィルタリングプロセスがサンプル適応オフセット(SAO)フィルタであるときに実行され得る。この例では、ループフィルタパラメータはSAOオフセット値を備える。
[0132]本開示の1つ又は複数の例では、コードブックがビデオデータの1つ又は複数のブロックに対してSAOフィルタを実行するために使用されるべきであることを、指示が示す。例えば、ビデオエンコーダ20は更に、スライスヘッダ、適応パラメータセット(APS)、シーケンスパラメータセット(SPS)、及びピクチャパラメータセット(PPS)の1つ又は複数において指示を信号伝達するように構成され得る。
[0133]本開示の一例では、ビデオエンコーダ20は、事前に定義されたコードブックをメモリに記憶する。別の例では、コードブックは事前に定義されないが、代わりに、ビデオエンコーダ20は、スライスデータ、スライスヘッダ、APS、SPS、及びPPSの1つ又は複数においてコードブックを信号伝達する。
[0134]本開示はこの状況を扱うための様々な例を提示し、このとき、コードブックがビデオデータの1つ又は複数のブロックに対してSAOフィルタを実行するために使用されるべきではないことを、指示が示す。一例では、ビデオエンコーダ20は更に、ビデオデータの1つ又はブロックとともに使用するための追加のループフィルタパラメータセットを信号伝達し、コードブックの代わりに信号伝達された追加のループフィルタパラメータを使用してループフィルタリング処理を実行するように構成される。別の例では、ビデオエンコーダ20は更に、コードブックへの追加のエントリーとして設定される、信号伝達された追加のループフィルタパラメータを追加するように構成される。
[0135]1つ又は複数の例では、本明細書に説明された機能は、ハードウェア、ソフトウェア、ファームウェア、又はそれらの任意の組合せで実装され得る。各機能は、ソフトウェアで実装される場合、1つ又は複数の命令又はコードとしてコンピュータ可読媒体上に記憶されてよく、あるいはコンピュータ可読媒体を介して送信され、ハードウェアベースの処理ユニットによって実行されてよい。コンピュータ可読媒体は、例えば、通信プロトコルに従って、ある場所から別の場所へのコンピュータプログラムの転送を可能にする任意の媒体を含むデータ記憶媒体又は通信媒体などの有形又は非一時的な媒体に対応してもよい、コンピュータ可読記憶媒体を含み得る。このようにして、コンピュータ可読媒体は全般に、(1)非一時的である有形コンピュータ可読記憶媒体、又は(2)信号もしくは搬送波などの通信媒体に対応し得る。データ記憶媒体は、本開示で説明された技法の実装のための命令、コード及び/又はデータ構造を取り出すために、1つ又は複数のコンピュータあるいは1つ又は複数のプロセッサによってアクセスされ得る任意の利用可能な媒体であり得る。コンピュータプログラム製品は、コンピュータ可読媒体を含み得る。
[0136]限定ではなく例として、そのようなコンピュータ可読記憶媒体は、RAM、ROM、EEPROM(登録商標)、CD−ROM又は他の光ディスク記憶、磁気ディスク記憶、又は他の磁気記憶機器、フラッシュメモリ、あるいは、命令又はデータ構造の形態の所望のプログラムコードを記憶するために使用されコンピュータによってアクセスされ得る、任意の他の媒体を備え得る。また、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。例えば、命令が、同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者回線(DSL)、又は赤外線、無線、及びマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、又は他のリモート発信源から送信される場合、同軸ケーブル、光ファイバケーブル、ツイストペア、DSL、又は赤外線、無線、及びマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。しかしながら、コンピュータ可読記憶媒体及びデータ記憶媒体は、接続、搬送波、信号、又は他の一時媒体(transient media)を含まないが、代わりに非一時的(non-transient)又は非一時的(non-transitory)有形記憶媒体を対象とすることを理解されたい。本明細書で使用されるディスク(disk)及びディスク(disc)は、コンパクトディスク(disc)(CD)、レーザーディスク(登録商標)(disc)、光ディスク(disc)、デジタル多用途ディスク(disc)(DVD)、フロッピー(登録商標)ディスク(disk)及びブルーレイディスク(disc)を含み、ディスク(disk)は、通常、データを磁気的に再生し、ディスク(disc)は、データをレーザで光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲内に含まれるべきである。
[0137]命令は、1つ又は複数の汎用マイクロプロセッサなどの1つ又は複数のプロセッサ、DSP、ASIC、FPGA、あるいは他の等価な集積回路又はディスクリート論理回路によって実行され得る。従って、本明細書で使用される「プロセッサ」という用語は、前述の構造、又は本開示で説明される技法の実装に適切な他の構造のいずれかを指し得る。加えて、幾つかの態様では、本明細書で説明された機能は、符号化及び復号のために構成された専用のハードウェア及び/又はソフトウェアモジュール内で提供されてよく、あるいは複合コーデックに組み込まれてよい。また、本技法は、1つ又は複数の回路又は論理要素中で完全に実装され得る。
[0138]本開示の技法は、ワイヤレスハンドセット、IC又はICのセット(例えば、チップセット)を含む、多種多様な機器又は装置において実装され得る。本開示では、開示される技法を実行するように構成された機器の機能的態様を強調するために、様々なコンポーネント、モジュール、又はユニットが説明されたが、それらのコンポーネント、モジュール、又はユニットは、必ずしも異なるハードウェアコンポーネント、モジュール又はユニットによる実現を必要とするとは限らない。むしろ、上で説明されたように、様々なユニットが、適切なソフトウェア及び/又はファームウェアとともに、上で説明された1つ又は複数のプロセッサを含めて、コーデックハードウェアユニットにおいて組み合わされてもよく、又は相互動作可能なハードウェアユニットの集合によって与えられてもよい。
[0139]様々な例が説明されてきた。これら及び他の例は、以下の特許請求の範囲内に入る。

Claims (56)

  1. ビデオ復号プロセスにおいてループフィルタパラメータを復号する方法であって、
    ループフィルタリングプロセスを実行するためにコードブックを使用するか否かを示す指示を受信することと、前記コードブックは複数のエントリーを含み、前記コードブック中の前記エントリーの各々が前記ループフィルタリングプロセスに対するループフィルタパラメータのセットを備え、前記コードブックがビデオデータの1つ以上のブロックに対して適用可能である、
    受信された前記指示に基づいて、ビデオデータの前記1つ以上のブロックに対する前記ループフィルタリングプロセスを実行することとを備える、方法。
  2. 前記コードブック中の特定のエントリーを定義する1つ以上のシンタックス要素を受信することと、
    受信された前記1つ以上のシンタックス要素に基づいて、前記コードブックからループフィルタパラメータの前記特定のエントリーを取り出すことと、
    受信された前記指示及び前記取り出されたループフィルタパラメータに基づいて、ビデオデータの前記1つ以上のブロックに対する前記ループフィルタリングプロセスを実行することとを更に備える、請求項1に記載の方法。
  3. 前記ループフィルタリングプロセスが適応ループフィルタALFであり、前記ループフィルタパラメータがALF係数を備える、請求項1に記載の方法。
  4. 前記ループフィルタリングプロセスがサンプル適応オフセット(SAO)フィルタであり、前記ループフィルタパラメータがSAOオフセット値を備える、請求項1に記載の方法。
  5. 前記コードブックがビデオデータの前記1つ以上のブロックに対する前記SAOフィルタを実行するために使用されるべきであることを前記指示が示し、前記指示を受信することが、スライスヘッダ、適応パラメータセット(APS)、シーケンスパラメータセット(SPS)、及びピクチャパラメータセット(PPS)の1つ以上において前記指示を受信することを備える、請求項4に記載の方法。
  6. スライスデータ、スライスヘッダ、APS、SPS、及びPPSの1つ以上において前記コードブックを受信することを更に備える、請求項5に記載の方法。
  7. 前記コードブックがビデオデータの前記1つ以上のブロックに対して前記SAOフィルタを実行するために使用されるべきではないことを前記指示が示し、
    ビデオデータの前記1つ以上のブロックとともに使用するための追加のループフィルタパラメータセットを受信することと、
    前記コードブックの代わりに、前記受信された追加のループフィルタパラメータを使用して前記ループフィルタリング処理を実行することとを更に備える、請求項4に記載の方法。
  8. 前記コードブックに対する追加のエントリーとして、前記受信された追加のループフィルタパラメータセットを追加することを更に備える、請求項4に記載の方法。
  9. 前記コードブックが第1のコードブックであり、前記第1のコードブックが、スケーラブルビデオデータの基本レイヤにおけるビデオデータの前記1つ以上のブロックに対応し、
    前記第1のコードブックからビデオデータの1つ以上の強化レイヤに対する第2のコードブックを予測することを更に備える、請求項1に記載の方法。
  10. 前記コードブックが、スケーラブルビデオデータの基本レイヤにおけるビデオデータの前記1つ以上のブロックに対応し、
    ビデオデータの1つ以上の強化レイヤに対して前記コードブックを再使用することを更に備える、請求項1に記載の方法。
  11. 前記コードブックが第1のコードブックであり、前記第1のコードブックが、マルチビュービデオデータの基本ビューにおけるビデオデータの前記1つ以上のブロックに対応し、
    前記第1のコードブックからマルチビュービデオデータの1つ以上の追加のビューに対する第2のコードブックを予測することを更に備える、請求項1に記載の方法。
  12. 前記コードブックが、マルチビュービデオデータの基本ビューにおけるビデオデータの前記1つ以上のブロックに対応し、
    マルチビュービデオデータの1つ以上の追加のビューに対して前記コードブックを再使用することを更に備える、請求項1に記載の方法。
  13. 前記コードブックによって定義される前記複数のエントリーの1つ以上の各々が、
    固定長のコードワードと、
    単位コードワードと、
    指数ゴロムコードワードとのうちの1つを備える、請求項1に記載の方法。
  14. ビデオ符号化処理においてループフィルタパラメータを符号化する方法であって、
    ループフィルタリングプロセスにおいて使用するためのループフィルタパラメータの特定のセットを決定することと、
    ループフィルタパラメータの前記特定のセットがコードブックに記憶されるか否かを示す指示を信号伝達することと、前記コードブックが複数のエントリーを含み、前記コードブック中の前記エントリーの各々が前記ループフィルタリングプロセスに対するループフィルタパラメータのセットを備え、前記コードブックがビデオデータの1つ以上のブロックに対して適用可能である、
    ループフィルタパラメータの前記特定のセットに基づいて、ビデオデータの前記1つ以上のブロックに対する前記ループフィルタリングプロセスを実行することとを備える、方法。
  15. 前記コードブック中のループフィルタパラメータの前記特定のセットに対する前記エントリーを定義する、1つ以上のシンタックス要素を信号伝達することを更に備える、請求項14に記載の方法。
  16. 前記ループフィルタリングプロセスが適応ループフィルタALFであり、前記ループフィルタパラメータがALF係数を備える、請求項14に記載の方法。
  17. 前記ループフィルタリングプロセスがサンプル適応オフセット(SAO)フィルタであり、前記ループフィルタパラメータがSAOオフセット値を備える、請求項14に記載の方法。
  18. 前記コードブックがビデオデータの前記1つ以上のブロックに対する前記SAOフィルタを実行するために使用されるべきであることを前記指示が示し、前記指示を信号伝達することが、スライスヘッダ、適応パラメータセット(APS)、シーケンスパラメータセット(SPS)、及びピクチャパラメータセット(PPS)の1つ以上において前記指示を信号伝達することを備える、請求項17に記載の方法。
  19. スライスデータ、スライスヘッダ、APS、SPS、及びPPSの1つ以上において前記コードブックを信号伝達することを更に備える、請求項18に記載の方法。
  20. 前記コードブックがビデオデータの前記1つ以上のブロックに対して前記SAOフィルタを実行するために使用されるべきではないことを前記指示が示し、
    ビデオデータの前記1つ以上のブロックとともに使用するための追加のループフィルタパラメータセットを信号伝達することを更に備える、請求項17に記載の方法。
  21. 前記コードブックに対する追加のエントリーとして、前記追加のループフィルタパラメータセットを追加することを更に備える、請求項17に記載の方法。
  22. 前記コードブックが第1のコードブックであり、前記第1のコードブックが、スケーラブルビデオデータの基本レイヤにおけるビデオデータの前記1つ以上のブロックに対応し、
    前記第1のコードブックからビデオデータの1つ以上の強化レイヤに対する第2のコードブックを予測することを更に備える、請求項14に記載の方法。
  23. 前記コードブックが、スケーラブルビデオデータの基本レイヤにおけるビデオデータの前記1つ以上のブロックに対応し、
    ビデオデータの1つ以上の強化レイヤに対して前記コードブックを再使用することを更に備える、請求項14に記載の方法。
  24. 前記コードブックが第1のコードブックであり、前記第1のコードブックが、マルチビュービデオデータの基本ビューにおけるビデオデータの前記1つ以上のブロックに対応し、
    前記第1のコードブックからマルチビュービデオデータの1つ以上の追加のビューに対する第2のコードブックを予測することを更に備える、請求項14に記載の方法。
  25. 前記コードブックが、マルチビュービデオデータの基本ビューにおけるビデオデータの前記1つ以上のブロックに対応し、
    マルチビュービデオデータの1つ以上の追加のビューに対して前記コードブックを再使用することを更に備える、請求項14に記載の方法。
  26. 前記コードブックによって定義される前記複数のエントリーの1つ以上の各々が、
    固定長のコードワードと、
    単位コードワードと、
    指数ゴロムコードワードとのうちの1つを備える、請求項14に記載の方法。
  27. ビデオデコーダを備え、ビデオ復号プロセスにおいてループフィルタパラメータを復号するように構成される装置であって、
    前記ビデオデコーダが、
    ループフィルタリングプロセスを実行するためにコードブックを使用するか否かを示す指示を受信し、このとき、前記コードブックが複数のエントリーを含み、前記コードブック中の前記エントリーの各々が前記ループフィルタリングプロセスに対するループフィルタパラメータのセットを備え、前記コードブックがビデオデータの1つ以上のブロックに対して適用可能であり、
    受信された前記指示に基づいて、ビデオデータの前記1つ以上のブロックに対する前記ループフィルタリングプロセスを実行する
    ように構成される、装置。
  28. 前記ビデオデコーダが更に、
    前記コードブック中の特定のエントリーを定義する1つ以上のシンタックス要素を受信し、
    受信された前記1つ以上のシンタックス要素に基づいて、前記コードブックからループフィルタパラメータの前記特定のエントリーを取り出し、
    受信された前記指示及び前記取り出されたループフィルタパラメータに基づいて、ビデオデータの前記1つ以上のブロックに対する前記ループフィルタリングプロセスを実行するように構成される、請求項27に記載の装置。
  29. 前記ループフィルタリングプロセスが適応ループフィルタALFであり、前記ループフィルタパラメータがALF係数を備える、請求項27に記載の装置。
  30. 前記ループフィルタリングプロセスがサンプル適応オフセット(SAO)フィルタであり、前記ループフィルタパラメータがSAOオフセット値を備える、請求項27に記載の装置。
  31. 前記コードブックがビデオデータの前記1つ以上のブロックに対する前記SAOフィルタを実行するために使用されるべきであることを前記指示が示し、前記ビデオデコーダが更に、スライスヘッダ、適応パラメータセット(APS)、シーケンスパラメータセット(SPS)、及びピクチャパラメータセット(PPS)の1つ以上において前記指示を受信するように構成される、請求項30に記載の装置。
  32. 前記ビデオデコーダが更に、
    スライスデータ、スライスヘッダ、APS、SPS、及びPPSの1つ以上において前記コードブックを受信するように構成される、請求項31に記載の装置。
  33. 前記コードブックがビデオデータの前記1つ以上のブロックに対して前記SAOフィルタを実行するために使用されるべきではないことを前記指示が示し、前記ビデオデコーダが更に、
    ビデオデータの前記1つ以上のブロックとともに使用するための追加のループフィルタパラメータセットを受信し、
    前記コードブックの代わりに、受信された前記追加のループフィルタパラメータを使用して前記ループフィルタリング処理を実行するように構成される、請求項30に記載の装置。
  34. 前記ビデオデコーダが更に、
    前記コードブックに対する追加のエントリーとして、受信された前記追加のループフィルタパラメータセットを追加するように構成される、請求項30に記載の装置。
  35. 前記コードブックが第1のコードブックであり、前記第1のコードブックが、スケーラブルビデオデータの基本レイヤにおけるビデオデータの前記1つ以上のブロックに対応し、前記ビデオデコーダが更に、
    前記第1のコードブックからビデオデータの1つ以上の強化レイヤに対する第2のコードブックを予測するように構成される、請求項27に記載の装置。
  36. 前記コードブックが、スケーラブルビデオデータの基本レイヤにおけるビデオデータの前記1つ以上のブロックに対応し、前記ビデオデコーダが更に、
    ビデオデータの1つ以上の強化レイヤに対して前記コードブックを再使用するように構成される、請求項27に記載の装置。
  37. 前記コードブックが第1のコードブックであり、前記第1のコードブックが、マルチビュービデオデータの基本ビューにおけるビデオデータの前記1つ以上のブロックに対応し、前記ビデオデコーダが更に、
    前記第1のコードブックからマルチビュービデオデータの1つ以上の追加のビューに対する第2のコードブックを予測するように構成される、請求項27に記載の装置。
  38. 前記コードブックが、マルチビュービデオデータの基本ビューにおけるビデオデータの前記1つ以上のブロックに対応し、前記ビデオデコーダが更に、
    マルチビュービデオデータの1つ以上の追加のビューに対して前記コードブックを再使用するように構成される、請求項27に記載の装置。
  39. 前記コードブックによって定義される前記複数のエントリーの1つ以上の各々が、
    固定長のコードワードと、
    単位コードワードと、
    指数ゴロムコードワードとのうちの1つを備える、請求項27に記載の装置。
  40. ビデオエンコーダを備える、ビデオ符号化プロセスにおいてループフィルタパラメータを符号化するように構成される装置であって、
    前記ビデオエンコーダが、
    ループフィルタリングプロセスにおいて使用するためのループフィルタパラメータの特定のセットを決定し、
    ループフィルタパラメータの前記特定のセットがコードブックにおいて記憶されるか否かを示す指示を信号伝達し、このとき、前記コードブックが複数のエントリーを含み、前記コードブック中の前記エントリーの各々が前記ループフィルタリングプロセスに対するループフィルタパラメータのセットを備え、前記コードブックがビデオデータの1つ以上のブロックに対して適用可能であり、
    ループフィルタパラメータの前記特定のセットに基づいて、ビデオデータの前記1つ以上のブロックに対する前記ループフィルタリングプロセスを実行する
    ように構成される、装置。
  41. 前記ビデオエンコーダが更に、
    前記コードブック中のループフィルタパラメータの前記特定のセットに対する前記エントリーを定義する、1つ以上のシンタックス要素を信号伝達するように構成される、請求項40に記載の装置。
  42. 前記ループフィルタリングプロセスが適応ループフィルタALFであり、前記ループフィルタパラメータがALF係数を備える、請求項40に記載の装置。
  43. 前記ループフィルタリングプロセスがサンプル適応オフセット(SAO)フィルタであり、前記ループフィルタパラメータがSAOオフセット値を備える、請求項40に記載の装置。
  44. 前記コードブックがビデオデータの前記1つ以上のブロックに対する前記SAOフィルタを実行するために使用されるべきであることを前記指示が示し、前記ビデオエンコーダが更に、スライスヘッダ、適応パラメータセット(APS)、シーケンスパラメータセット(SPS)、及びピクチャパラメータセット(PPS)の1つ以上において前記指示を信号伝達するように構成される、請求項43に記載の装置。
  45. 前記ビデオエンコーダが更に、
    スライスデータ、スライスヘッダ、APS、SPS、及びPPSの1つ以上において前記コードブックを信号伝達するように構成される、請求項44に記載の装置。
  46. 前記コードブックがビデオデータの前記1つ以上のブロックに対して前記SAOフィルタを実行するために使用されるべきではないことを前記指示が示し、前記ビデオエンコーダが更に、
    ビデオデータの前記1つ以上のブロックとともに使用するための追加のループフィルタパラメータセットを信号伝達するように構成される、請求項43に記載の装置。
  47. 前記ビデオエンコーダが更に、
    前記コードブックに対する追加のエントリーとして、前記追加のループフィルタパラメータセットを追加するように構成される、請求項43に記載の装置。
  48. 前記コードブックが第1のコードブックであり、前記第1のコードブックが、スケーラブルビデオデータの基本レイヤにおけるビデオデータの前記1つ以上のブロックに対応し、前記ビデオエンコーダが更に、
    前記第1のコードブックからビデオデータの1つ以上の強化レイヤに対する第2のコードブックを予測するように構成される、請求項40に記載の装置。
  49. 前記コードブックが、スケーラブルビデオデータの基本レイヤにおけるビデオデータの前記1つ以上のブロックに対応し、前記ビデオエンコーダが更に、
    ビデオデータの1つ以上の強化レイヤに対して前記コードブックを再使用するように構成される、請求項40に記載の装置。
  50. 前記コードブックが第1のコードブックであり、前記第1のコードブックが、マルチビュービデオデータの基本ビューにおけるビデオデータの前記1つ以上のブロックに対応し、前記ビデオエンコーダが更に、
    前記第1のコードブックからマルチビュービデオデータの1つ以上の追加のビューに対する第2のコードブックを予測するように構成される、請求項40に記載の装置。
  51. 前記コードブックが、マルチビュービデオデータの基本ビューにおけるビデオデータの前記1つ以上のブロックに対応し、前記ビデオエンコーダが更に、
    マルチビュービデオデータの1つ以上の追加のビューに対して前記コードブックを再使用するように構成される、請求項40に記載の装置。
  52. 前記コードブックによって定義される前記複数のエントリーの1つ以上の各々が、
    固定長のコードワードと、
    単位コードワードと、
    指数ゴロムコードワードとのうちの1つを備える、請求項40に記載の装置。
  53. ビデオ復号プロセスにおいてループフィルタパラメータを復号するように構成される装置であって、
    ループフィルタリングプロセスを実行するためにコードブックを使用するか否かを示す指示を受信するための手段と、前記コードブックが複数のエントリーを含み、前記コードブック中の前記エントリーの各々が前記ループフィルタリングプロセスに対するループフィルタパラメータのセットを備え、前記コードブックがビデオデータの1つ以上のブロックに対して適用可能である、
    受信された前記指示に基づいて、ビデオデータの前記1つ以上のブロックに対する前記ループフィルタリングプロセスを実行するための手段とを備える、装置。
  54. ビデオ符号化プロセスにおいてループフィルタパラメータを符号化するように構成される装置であって、
    ループフィルタリングプロセスにおいて使用するためのループフィルタパラメータの特定のセットを決定するための手段と、
    ループフィルタパラメータの前記特定のセットがコードブックに記憶されるか否かを示す指示を信号伝達するための手段と、前記コードブックが複数のエントリーを含み、前記コードブック中の前記エントリーの各々が前記ループフィルタリングプロセスに対するループフィルタパラメータのセットを備え、前記コードブックがビデオデータの1つ以上のブロックに対して適用可能である、
    ループフィルタパラメータの前記特定のセットに基づいて、ビデオデータの前記1つ以上のブロックに対する前記ループフィルタリングプロセスを実行するための手段とを備える、装置。
  55. 実行されると、ビデオデータを復号するように構成された装置の1つ以上のプロセッサに、
    ループフィルタリングプロセスを実行するためにコードブックを使用するか否かを示す指示を受信させ、このとき、前記コードブックが複数のエントリーを含み、前記コードブック中の前記エントリーの各々が前記ループフィルタリングプロセスに対するループフィルタパラメータのセットを備え、前記コードブックがビデオデータの1つ以上のブロックに対して適用可能であり、
    受信された前記指示に基づいて、ビデオデータの前記1つ以上のブロックに対する前記ループフィルタリングプロセスを実行させる、
    命令を記憶した、コンピュータ可読記憶媒体。
  56. 実行されると、ビデオデータを符号化するように構成された装置の1つ以上のプロセッサに、
    ループフィルタリングプロセスにおいて使用するためのループフィルタパラメータの特定のセットを決定させ、
    ループフィルタパラメータの前記特定のセットがコードブックに記憶されるか否かを示す指示を信号伝達させ、このとき、前記コードブックが複数のエントリーを含み、前記コードブック中の前記エントリーの各々が前記ループフィルタリングプロセスに対するループフィルタパラメータのセットを備え、前記コードブックがビデオデータの1つ以上のブロックに対して適用可能であり、
    ループフィルタパラメータの前記特定のセットに基づいて、ビデオデータの前記1つ以上のブロックに対する前記ループフィルタリングプロセスを実行させる、
    命令を記憶した、コンピュータ可読記憶媒体。
JP2014558868A 2012-02-22 2013-02-22 ビデオコード化におけるコードブックを使用したループフィルタパラメータのコード化 Pending JP2015511472A (ja)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201261601994P 2012-02-22 2012-02-22
US61/601,994 2012-02-22
US201261736918P 2012-12-13 2012-12-13
US61/736,918 2012-12-13
US13/773,151 2013-02-21
US13/773,151 US9596463B2 (en) 2012-02-22 2013-02-21 Coding of loop filter parameters using a codebook in video coding
PCT/US2013/027327 WO2013126706A2 (en) 2012-02-22 2013-02-22 Coding of loop filter parameters using a codebook in video coding

Publications (2)

Publication Number Publication Date
JP2015511472A true JP2015511472A (ja) 2015-04-16
JP2015511472A5 JP2015511472A5 (ja) 2016-03-17

Family

ID=48982245

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014558868A Pending JP2015511472A (ja) 2012-02-22 2013-02-22 ビデオコード化におけるコードブックを使用したループフィルタパラメータのコード化

Country Status (6)

Country Link
US (1) US9596463B2 (ja)
EP (1) EP2817966A2 (ja)
JP (1) JP2015511472A (ja)
KR (1) KR101807913B1 (ja)
CN (1) CN104126301B (ja)
WO (1) WO2013126706A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11102481B2 (en) 2015-11-17 2021-08-24 Huawei Technologies Co., Ltd. Method and apparatus for video coding

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9591331B2 (en) * 2012-03-28 2017-03-07 Qualcomm Incorporated Merge signaling and loop filter on/off signaling
US9473769B2 (en) * 2012-06-08 2016-10-18 Texas Instruments Incorporated Method and system for reducing slice header parsing overhead in video coding
US20150036738A1 (en) 2013-07-30 2015-02-05 Texas Instruments Incorporated Method and apparatus for real-time sao parameter estimation
US11418812B2 (en) * 2015-02-11 2022-08-16 Qualcomm Incorporated Placement of parameter sets and sync samples in video coding
EP3354027A1 (en) 2015-09-25 2018-08-01 Huawei Technologies Co., Ltd. Apparatus and method for video motion compensation
EP3354028B1 (en) 2015-09-25 2021-09-15 Huawei Technologies Co., Ltd. Apparatus and method for video motion compensation with selectable interpolation filter
EP3348057A1 (en) 2015-09-25 2018-07-18 Huawei Technologies Co., Ltd. Apparatus and method for video motion compensation
CA2999848C (en) * 2015-09-25 2020-08-18 Huawei Technologies Co., Ltd. Apparatus and method for video motion compensation
KR20180054751A (ko) 2015-09-25 2018-05-24 후아웨이 테크놀러지 컴퍼니 리미티드 예측 코딩을 위한 적응 선명화 필터
WO2018117895A1 (en) * 2016-12-23 2018-06-28 Huawei Technologies Co., Ltd Mixed domain collaborative in-loop filter for lossy video coding
US11451773B2 (en) * 2018-06-01 2022-09-20 Qualcomm Incorporated Block-based adaptive loop filter (ALF) design and signaling
WO2020151714A1 (en) 2019-01-25 2020-07-30 Mediatek Inc. Method and apparatus for non-linear adaptive loop filtering in video coding
TWI739386B (zh) * 2019-04-11 2021-09-11 聯發科技股份有限公司 具有適應性參數集之適應性迴路濾波器
KR20210135337A (ko) * 2019-05-14 2021-11-12 엘지전자 주식회사 적응적 루프 필터 기반 비디오 또는 영상 코딩
KR20220006113A (ko) * 2019-06-25 2022-01-14 에스지 디제이아이 테크놀러지 코., 엘티디 루프 필터링 방법 및 장치
US11743459B2 (en) * 2020-09-29 2023-08-29 Qualcomm Incorporated Filtering process for video coding

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004165785A (ja) * 2002-11-11 2004-06-10 Nippon Telegr & Teleph Corp <Ntt> 画像符号化方法,画像復号方法,画像符号化装置,画像復号装置,画像符号化プログラム,画像復号プログラムおよびそのプログラムを記録した記録媒体
WO2011087932A1 (en) * 2010-01-14 2011-07-21 Dolby Laboratories Licensing Corporation Buffered adaptive filters

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7778472B2 (en) 2006-03-27 2010-08-17 Qualcomm Incorporated Methods and systems for significance coefficient coding in video compression
US8275045B2 (en) * 2006-07-12 2012-09-25 Qualcomm Incorporated Video compression using adaptive variable length codes
US9014280B2 (en) * 2006-10-13 2015-04-21 Qualcomm Incorporated Video coding with adaptive filtering for motion compensated prediction
US8767834B2 (en) * 2007-03-09 2014-07-01 Sharp Laboratories Of America, Inc. Methods and systems for scalable-to-non-scalable bit-stream rewriting
WO2009051690A1 (en) * 2007-10-16 2009-04-23 Thomson Licensing Methods and apparatus for artifact removal for bit depth scalability
CN104954789A (zh) * 2009-04-20 2015-09-30 杜比实验室特许公司 在视频应用中用于视频预处理的滤波器选择
US9081733B2 (en) 2009-06-24 2015-07-14 Qualcomm Incorporated 16-point transform for media data coding
US20100329361A1 (en) 2009-06-30 2010-12-30 Samsung Electronics Co., Ltd. Apparatus and method for in-loop filtering of image data and apparatus for encoding/decoding image data using the same
US8660174B2 (en) 2010-06-15 2014-02-25 Mediatek Inc. Apparatus and method of adaptive offset for video coding
US9094658B2 (en) 2010-05-10 2015-07-28 Mediatek Inc. Method and apparatus of adaptive loop filtering
KR102062821B1 (ko) * 2010-09-29 2020-01-07 한국전자통신연구원 필터 정보 예측을 이용한 영상 부호화/복호화 방법 및 장치
US8861617B2 (en) 2010-10-05 2014-10-14 Mediatek Inc Method and apparatus of region-based adaptive loop filtering
US9055305B2 (en) * 2011-01-09 2015-06-09 Mediatek Inc. Apparatus and method of sample adaptive offset for video coding
US20130113880A1 (en) * 2011-11-08 2013-05-09 Jie Zhao High Efficiency Video Coding (HEVC) Adaptive Loop Filter

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004165785A (ja) * 2002-11-11 2004-06-10 Nippon Telegr & Teleph Corp <Ntt> 画像符号化方法,画像復号方法,画像符号化装置,画像復号装置,画像符号化プログラム,画像復号プログラムおよびそのプログラムを記録した記録媒体
WO2011087932A1 (en) * 2010-01-14 2011-07-21 Dolby Laboratories Licensing Corporation Buffered adaptive filters

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
BENJAMIN BROSS(外4名): "WD5: Working Draft 5 of High-Efficiency Video Coding", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11 JCTVC, JPN6017000068, 9 February 2012 (2012-02-09), US, pages 25 - 36, ISSN: 0003817150 *
MING LI(外4名): "APS Referencing", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11 JCTVC, JPN6017000071, 10 February 2012 (2012-02-10), US, pages 1 - 10, ISSN: 0003817152 *
VIRGINIE DRUGEON(外4名): "AHG15: Partial APS update", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11 JCTVC, JPN6017000070, 10 February 2012 (2012-02-10), US, pages 1 - 5, ISSN: 0003817151 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11102481B2 (en) 2015-11-17 2021-08-24 Huawei Technologies Co., Ltd. Method and apparatus for video coding
US11902515B2 (en) 2015-11-17 2024-02-13 Huawei Technologies Co., Ltd. Method and apparatus for video coding

Also Published As

Publication number Publication date
US20130215974A1 (en) 2013-08-22
CN104126301B (zh) 2018-08-28
US9596463B2 (en) 2017-03-14
WO2013126706A3 (en) 2014-04-10
EP2817966A2 (en) 2014-12-31
KR101807913B1 (ko) 2017-12-11
CN104126301A (zh) 2014-10-29
WO2013126706A2 (en) 2013-08-29
KR20140128442A (ko) 2014-11-05

Similar Documents

Publication Publication Date Title
JP6542400B2 (ja) 係数走査のための係数グループおよび係数コーディング
JP6903644B2 (ja) ビデオコーディングのために位置依存の予測組合せを使用する改善されたビデオイントラ予測
JP6543716B2 (ja) 適応型成分間残差予測
KR102352638B1 (ko) 비디오 코딩 프로세스에서의 계수 레벨 코딩
JP6129969B2 (ja) スケーラブルビデオコード化における代替変換
JP6162212B2 (ja) マージシグナリングおよびループフィルタオン/オフシグナリング
JP5964448B2 (ja) コンテキスト適応型バイナリ算術コード化のためのコンテキスト削減
US9596463B2 (en) Coding of loop filter parameters using a codebook in video coding
JP5922244B2 (ja) ビデオコーディングにおいて適応ループフィルタとマージされたサンプル適応オフセット
US9462275B2 (en) Residual quad tree (RQT) coding for video coding
JP5833249B2 (ja) ビデオコーディングのための適応的な中心帯域オフセットフィルタ
US20130272413A1 (en) Common spatial candidate blocks for parallel motion estimation
JP2017225132A (ja) 低減された初期値セットを持つコンテキスト適応エントロピ・コーディング
JP6042526B2 (ja) ビデオコーディングのための最後の位置コーディングのためのコンテキストの導出
JP2017513342A (ja) ゼロアウトされた係数を使用した低複雑な順変換のためのシステムおよび方法
JP2014509160A (ja) ビデオコーディングにおける変換
JP2013546257A (ja) ビデオコーディングのためのシンタックス要素のジョイントコーディング
EP2987324B1 (en) Indication of cross-layer picture type alignment in multi-layer video coding
JP2015514362A (ja) ビデオ・コーディングのためのインタ・レイヤ・テクスチャ予測
JP2016509436A (ja) レイヤ間シンタックス予測制御
CN113612997B (zh) 针对视频译码使用与位置相关的预测组合的改进视频帧内预测

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160129

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160129

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20161130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170110

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170330

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170919

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171212

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180619

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20190205