(57)【要約】  本開示では、ビデオコーディングプロセスにおいてサンプル適応オフセットシグナリングおよびコーディングを実行するための技法について説明する。本開示の技法は、サンプル適応オフセット情報（すなわち、オフセット値およびオフセットタイプ）のためのマージベースシグナリングプロセスと予測ベースシグナリングプロセスの両方を含む。本技法は、現在のパーティションについてのオフセット情報を判断することと、現在のパーティションのオフセット情報を１つまたは複数のネイバーパーティションのオフセット情報と比較することと、１つまたは複数のネイバーパーティションのうちの１つのオフセット情報が現在のパーティションのオフセット情報と同じである場合、マージ命令をコーディングすることと、１つまたは複数のネイバーパーティションのオフセット情報が現在のパーティションのオフセット情報と同じでない場合、複数の予測命令のうちの１つをコーディングすることとを含む。
2014516217.tif 000002
【特許請求の範囲】
【請求項１】
ビデオ符号化プロセスにおいてサンプル適応オフセット値を符号化するための方法であって、
現在のパーティションについてのオフセット情報を判断することと、
前記現在のパーティションの前記オフセット情報を１つまたは複数のネイバーパーティションのオフセット情報と比較することと、
前記１つまたは複数のネイバーパーティションのうちの１つの前記オフセット情報が前記現在のパーティションの前記オフセット情報と同じである場合、マージ命令をコーディングすることと、
前記１つまたは複数のネイバーパーティションの前記オフセット情報が前記現在のパーティションの前記オフセット情報と同じでない場合、複数の予測命令のうちの１つをコーディングすることと
を備える方法。
【請求項２】
前記オフセット情報がオフセットタイプとオフセット値とを含む、請求項１に記載の方法。
【請求項３】
前記マージ命令が、前記現在のパーティションについての前記１つまたは複数のネイバーパーティションのうちの１つの前記オフセット情報をコピーするようにデコーダに命令する、請求項１に記載の方法。
【請求項４】
前記マージ命令が、マージフラグと、前記現在のパーティションと同じ前記オフセット情報をもつ前記１つまたは複数のネイバーパーティションのうちの１つのインデックスとを含む、請求項３に記載の方法。
【請求項５】
複数の予測命令のうちの１つをコーディングすることが、
前記１つまたは複数のネイバーパーティションのうちの１つのオフセット情報から前記現在のパーティションについてのオフセット情報を導出するようにデコーダに命令する第１の予測命令をコーディングすること
を含む、請求項２に記載の方法。
【請求項６】
前記第１の予測命令が、前記１つまたは複数のネイバーパーティションのうちの１つのインデックスと、オフセット残差値とを含み、オフセット残差値が、前記１つまたは複数のネイバーパーティションのうちの１つのオフセット値から前記現在のパーティションの前記オフセット値を減算することによって作成される、請求項５に記載の方法。
【請求項７】
前記第１の予測命令は、オフセット残差値を送ることによってビットレート効率が達成され得る場合にコーディングされる、請求項６に記載の方法。
【請求項８】
複数の予測命令のうちの１つをコーディングすることが、
前記現在のパーティションについてのオフセット情報を含む第２の予測命令をコーディングすること
を含む、請求項２に記載の方法。
【請求項９】
前記第２の予測命令は、オフセット残差値を送ることによってビットレート効率が達成され得ない場合にコーディングされる、請求項８に記載の方法。
【請求項１０】
複数の予測命令のうちの１つをコーディングすることが、
オフセット値をそこからコピーすべき前記１つまたは複数のネイバーパーティションのうちの１つのインデックスを含み、前記現在のパーティションについてのオフセットタイプをも含む第３の予測命令をコーディングすること
を含む、請求項２に記載の方法。
【請求項１１】
ビデオコーディングプロセスにおいてサンプル適応オフセット値を符号化するように構成された装置であって、前記装置は、
現在のパーティションのオフセット情報を１つまたは複数のネイバーパーティションのオフセット情報と比較することと、
前記１つまたは複数のネイバーパーティションのうちの１つの前記オフセット情報が前記現在のパーティションの前記オフセット情報と同じである場合、マージ命令をコーディングすることと、
前記１つまたは複数のネイバーパーティションの前記オフセット情報が前記現在のパーティションの前記オフセット情報と同じでない場合、複数の予測命令のうちの１つをコーディングすることと
を行うように構成されたビデオエンコーダ
を備える装置。
【請求項１２】
前記オフセット情報がオフセットタイプとオフセット値とを含む、請求項１１に記載の装置。
【請求項１３】
前記マージ命令が、前記現在のパーティションについての前記１つまたは複数のネイバーパーティションのうちの１つの前記オフセット情報をコピーするようにデコーダに命令する、請求項１１に記載の装置。
【請求項１４】
前記マージ命令が、マージフラグと、前記現在のパーティションと同じ前記オフセット情報をもつ前記１つまたは複数のネイバーパーティションのうちの１つのインデックスとを含む、請求項１３に記載の装置。
【請求項１５】
前記ビデオエンコーダが、前記１つまたは複数のネイバーパーティションのうちの１つのオフセット情報から前記現在のパーティションについてのオフセット情報を導出するようにデコーダに命令する第１の予測命令をコーディングするようにさらに構成された、請求項１２に記載の装置。
【請求項１６】
前記第１の予測命令が、前記１つまたは複数のネイバーパーティションのうちの１つのインデックスと、オフセット残差値とを含み、オフセット残差値が、前記１つまたは複数のネイバーパーティションのうちの１つのオフセット値から前記現在のパーティションの前記オフセット値を減算することによって作成される、請求項１５に記載の装置。
【請求項１７】
前記第１の予測命令は、オフセット残差値を送ることによってビットレート効率が達成され得る場合にコーディングされる、請求項１６に記載の装置。
【請求項１８】
前記ビデオエンコーダが、前記現在のパーティションについてのオフセット情報を含む第２の予測命令をコーディングするようにさらに構成された、請求項１２に記載の装置。
【請求項１９】
前記第２の予測命令は、オフセット残差値を送ることによってビットレート効率が達成され得ない場合にコーディングされる、請求項１８に記載の装置。
【請求項２０】
前記ビデオエンコーダが、オフセット値をそこからコピーすべき前記１つまたは複数のネイバーパーティションのうちの１つのインデックスを含み、前記現在のパーティションについてのオフセットタイプをも含む第３の予測命令をコーディングするようにさらに構成された、請求項１２に記載の装置。
【請求項２１】
ビデオ符号化プロセスにおいてサンプル適応オフセット値を符号化するための装置であって、
現在のパーティションのオフセット情報を１つまたは複数のネイバーパーティションのオフセット情報と比較するための手段であって、前記オフセット情報がオフセットタイプとオフセット値とを含む、比較するための手段と、
前記１つまたは複数のネイバーパーティションのうちの１つの前記オフセット情報が前記現在のパーティションの前記オフセット情報と同じである場合、マージ命令をコーディングするための手段と、
前記１つまたは複数のネイバーパーティションの前記オフセット情報が前記現在のパーティションの前記オフセット情報と同じでない場合、複数の予測命令のうちの１つをコーディングする手段と
を備える装置。
【請求項２２】
前記マージ命令が、前記現在のパーティションについての前記１つまたは複数のネイバーパーティションのうちの１つの前記オフセット情報をコピーするようにデコーダに命令し、前記マージ命令が、マージフラグと、前記現在のパーティションと同じ前記オフセット情報をもつ前記１つまたは複数のネイバーパーティションのうちの１つのインデックスとを含む、請求項２１に記載の装置。
【請求項２３】
前記１つまたは複数のネイバーパーティションのうちの１つのオフセット情報から前記現在のパーティションについてのオフセット情報を導出するようにデコーダに命令する第１の予測命令をコーディングするための手段であって、前記第１の予測命令が、前記１つまたは複数のネイバーパーティションのうちの１つのインデックスと、オフセット残差値とを含み、オフセット残差値が、前記１つまたは複数のネイバーパーティションのうちの１つのオフセット値から前記現在のパーティションの前記オフセット値を減算することによって作成される、第１の予測命令をコーディングするための手段
をさらに備える、請求項２１に記載の装置。
【請求項２４】
前記現在のパーティションについてのオフセット情報を含む第２の予測命令をコーディングするための手段であって、前記第２の予測命令は、オフセット残差値を送ることによってビットレート効率が達成され得ない場合にコーディングされる、第２の予測命令をコーディングするための手段
をさらに備える、請求項２１に記載の装置。
【請求項２５】
オフセット値をそこからコピーすべき前記１つまたは複数のネイバーパーティションのうちの１つのインデックスを含み、前記現在のパーティションについてのオフセットタイプをも含む第３の予測命令をコーディングする手段
をさらに備える、請求項２１に記載の装置。
【請求項２６】
実行されたとき、ビデオデータを符号化するためのデバイスのプロセッサに、
現在のパーティションのオフセット情報を１つまたは複数のネイバーパーティションのオフセット情報と比較することであって、前記オフセット情報がオフセットタイプとオフセット値とを含む、比較することと、
前記１つまたは複数のネイバーパーティションのうちの１つの前記オフセット情報が前記現在のパーティションの前記オフセット情報と同じである場合、マージ命令をコーディングすることと、
前記１つまたは複数のネイバーパーティションの前記オフセット情報が前記現在のパーティションの前記オフセット情報と同じでない場合、複数の予測命令のうちの１つをコーディングすることと
を行わせる命令を記憶したコンピュータ可読記憶媒体を備えるコンピュータプログラム製品。
【請求項２７】
前記マージ命令が、前記現在のパーティションについての前記１つまたは複数のネイバーパーティションのうちの１つの前記オフセット情報をコピーするようにデコーダに命令し、前記マージ命令が、マージフラグと、前記現在のパーティションと同じ前記オフセット情報をもつ前記１つまたは複数のネイバーパーティションのうちの１つのインデックスとを含む、請求項２６に記載のコンピュータ可読媒体。
【請求項２８】
プロセッサに、
前記１つまたは複数のネイバーパーティションのうちの１つのオフセット情報から前記現在のパーティションについてのオフセット情報を導出するようにデコーダに命令する第１の予測命令をコーディングすることであって、前記第１の予測命令が、前記１つまたは複数のネイバーパーティションのうちの１つのインデックスと、オフセット残差値とを含み、オフセット残差値が、前記１つまたは複数のネイバーパーティションのうちの１つのオフセット値から前記現在のパーティションの前記オフセット値を減算することによって作成される、第１の予測命令をコーディングすること
をさらに行わせる、請求項２６に記載のコンピュータ可読媒体。
【請求項２９】
プロセッサに、
前記現在のパーティションについてのオフセット情報を含む第２の予測命令をコーディングすることであって、前記第２の予測命令は、オフセット残差値を送ることによってビットレート効率が達成され得ない場合にコーディングされる、第２の予測命令をコーディングすること
をさらに行わせる、請求項２６に記載のコンピュータ可読媒体。
【請求項３０】
プロセッサに、
オフセット値をそこからコピーすべき前記１つまたは複数のネイバーパーティションのうちの１つのインデックスを含み、前記現在のパーティションについてのオフセットタイプをも含む第３の予測命令をコーディングすること
をさらに行わせる、請求項２６に記載のコンピュータ可読媒体。
【請求項３１】
ビデオ復号プロセスにおいてサンプル適応オフセット値を復号するための方法であって、
現在のパーティションについて、マージ命令、または複数の予測命令のうちの１つを受信することと、
前記マージ命令が受信された場合、オフセット情報をネイバーパーティションから前記現在のパーティションにコピーすることと、
前記複数の予測命令のうちの１つが受信された場合、前記現在のパーティションについてのオフセット予測プロセスを実行することと
を備える方法。
【請求項３２】
前記オフセット情報がオフセットタイプとオフセット値とを含む、請求項３１に記載の方法。
【請求項３３】
前記マージ命令が、マージフラグと前記ネイバーパーティションのインデックスとを含む、請求項３１に記載の方法。
【請求項３４】
第１の予測命令が受信され、前記オフセット予測プロセスが、前記１つまたは複数のネイバーパーティションのうちの１つのオフセット情報から前記現在のパーティションについてのオフセット情報を導出する、請求項３２に記載の方法。
【請求項３５】
前記第１の予測命令が、前記１つまたは複数のネイバーパーティションのうちの１つのインデックスと、オフセット残差値とを含み、前記現在のパーティションについてのオフセット値が、前記１つのネイバーパーティションのオフセット値を前記オフセット残差値に加算することによって導出される、請求項３４に記載の方法。
【請求項３６】
前記現在のパーティションについてのオフセット情報を含む第２の予測命令が受信される、請求項３２に記載の方法。
【請求項３７】
オフセット値をそこからコピーすべき前記１つまたは複数のネイバーパーティションのうちの１つのインデックスを含み、前記現在のパーティションについてのオフセットタイプをも含む第３の予測命令が受信され、前記オフセット予測プロセスが、前記現在のパーティションについての前記１つのネイバーパーティションからのオフセット値をコピーすることによって、ならびに前記現在のパーティションに前記受信されたオフセットタイプを割り当てることによって、前記現在のパーティションについてのオフセット情報を導出する、請求項３２に記載の方法。
【請求項３８】
ビデオ復号プロセスにおいてサンプル適応オフセット値を復号するように構成された装置であって、
現在のパーティションについて、マージ命令、または複数の予測命令のうちの１つを受信することと、
前記マージ命令が受信された場合、オフセット情報をネイバーパーティションから前記現在のパーティションにコピーすることと、
前記複数の予測命令のうちの１つが受信された場合、前記現在のパーティションについてのオフセット予測プロセスを実行することと
を行うように構成されたビデオデコーダ
を備える装置。
【請求項３９】
前記オフセット情報がオフセットタイプとオフセット値とを含む、請求項３８に記載の装置。
【請求項４０】
前記マージ命令が、マージフラグと前記ネイバーパーティションのインデックスとを含む、請求項３８に記載の装置。
【請求項４１】
第１の予測命令が受信され、前記オフセット予測プロセスが、前記１つまたは複数のネイバーパーティションのうちの１つのオフセット情報から前記現在のパーティションについてのオフセット情報を導出する、請求項３９に記載の装置。
【請求項４２】
前記第１の予測命令が、前記１つまたは複数のネイバーパーティションのうちの１つのインデックスと、オフセット残差値とを含み、前記現在のパーティションについてのオフセット値が、前記１つのネイバーパーティションのオフセット値を前記オフセット残差値に加算することによって導出される、請求項４１に記載の装置。
【請求項４３】
前記現在のパーティションについてのオフセット情報を含む第２の予測命令が受信される、請求項３９に記載の装置。
【請求項４４】
オフセット値をそこからコピーすべき前記１つまたは複数のネイバーパーティションのうちの１つのインデックスを含み、前記現在のパーティションについてのオフセットタイプをも含む第３の予測命令が受信され、前記オフセット予測プロセスが、前記現在のパーティションについての前記１つのネイバーパーティションからオフセット値をコピーすることによって、ならびに前記現在のパーティションに前記受信されたオフセットタイプを割り当てることによって前記現在のパーティションについてのオフセット情報を導出する、請求項３９に記載の装置。
【請求項４５】
ビデオ復号プロセスにおいてサンプル適応オフセット値を復号するように構成された装置であって、
現在のパーティションについて、マージ命令、または複数の予測命令のうちの１つを受信するための手段と、
前記マージ命令が受信された場合、オフセット情報をネイバーパーティションから前記現在のパーティションにコピーするための手段と、
前記複数の予測命令のうちの１つが受信された場合、前記現在のパーティションについてのオフセット予測プロセスを実行するための手段と
を備える装置。
【請求項４６】
実行されたとき、ビデオデータを復号するためのデバイスのプロセッサに、
現在のパーティションについて、マージ命令、または複数の予測命令のうちの１つを受信することと、
前記マージ命令が受信された場合、オフセット情報をネイバーパーティションから前記現在のパーティションにコピーすることと、
前記複数の予測命令のうちの１つが受信された場合、前記現在のパーティションについてのオフセット予測プロセスを実行することと
を行わせる命令を記憶したコンピュータ可読記憶媒体を備えるコンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、どちらもそれぞれの全体が参照により本明細書に組み込まれる、２０１１年５月１０日に出願された米国仮出願第６１／４８４，６２４号、および２０１１年６月３０日に出願された米国仮出願第６１／５０３，４５４号の利益を主張する。
【０００２】
本開示は、ビデオコーディングに関し、より詳細には、ビデオコーディングプロセスにおいてサンプル適応オフセットシグナリングおよびコーディングを実行するための技法に関する。
【背景技術】
【０００３】
デジタルビデオ機能は、デジタルテレビジョン、デジタルダイレクトブロードキャストシステム、ワイヤレスブロードキャストシステム、携帯情報端末（ＰＤＡ）、ラップトップまたはデスクトップコンピュータ、デジタルカメラ、デジタル記録デバイス、デジタルメディアプレーヤ、ビデオゲームデバイス、ビデオゲームコンソール、セルラー電話または衛星無線電話、ビデオ遠隔会議デバイスなどを含む、広範囲にわたるデバイスに組み込まれ得る。デジタルビデオデバイスは、デジタルビデオ情報をより効率的に送信、受信および記憶するための、ＭＰＥＧ−２、ＭＰＥＧ−４、ＩＴＵ−Ｔ  Ｈ．２６３、ＩＴＵ−Ｔ  Ｈ．２６４／ＭＰＥＧ−４，Ｐａｒｔ１０，Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＡＶＣ）によって定義された規格、現在開発中の高効率ビデオコーディング（ＨＥＶＣ：High Efficiency Video Coding）規格、およびそのような規格の拡張に記載されているビデオ圧縮技法など、ビデオ圧縮技法を実装する。
【０００４】
ビデオ圧縮技法は、ビデオシーケンスに固有の冗長性を低減または除去するために空間的予測および／または時間的予測を含む。ブロックベースのビデオコーディングの場合、ビデオフレームまたはスライスはブロックに区分され得る。各ブロックはさらに区分され得る。イントラコード化（Ｉ）フレームまたはスライス中のブロックは、同じフレームまたはスライス中の隣接ブロック中の参照サンプルに関する空間的予測を使用して符号化される。インターコード化（ＰまたはＢ）フレームまたはスライス中のブロックは、同じフレームまたはスライス中の隣接ブロック中の参照サンプルに関する空間的予測、あるいは他の参照フレーム中の参照サンプルに関する時間的予測を使用し得る。空間的予測または時間的予測は、コーディングされるべきブロックの予測ブロックを生じる。残差データは、コーディングされるべき元のブロックと予測ブロックとの間のピクセル差分を表す。
【０００５】
インターコード化ブロックは、予測ブロックを形成する参照サンプルのブロックをポイントする動きベクトルと、コード化ブロックと予測ブロックとの間の差分を示す残差データとに従って符号化される。イントラコード化ブロックは、イントラコーディングモードと残差データとに従って符号化される。さらなる圧縮のために、残差データは、ピクセル領域から変換領域に変換されて、残差変換係数が得られ得、その残差変換係数は、次いで量子化され得る。最初は２次元アレイに構成される、量子化された変換係数は、特定の順序で走査されて、エントロピーコーディングのための変換係数の１次元ベクトルが生成され得る。
【発明の概要】
【０００６】
概して、本開示では、ビデオデータをコーディングするための技法について説明する。本開示では、ビデオコーディングプロセスにおいてサンプル適応オフセットシグナリングおよびコーディングを実行するための技法について説明する。本開示の技法は、サンプル適応オフセット情報（すなわち、オフセット値およびオフセットタイプ）のためのマージベースシグナリングプロセスと予測ベースシグナリングプロセスの両方を含む。
【０００７】
本開示の一例では、ビデオ符号化プロセスにおいてサンプル適応オフセット値を符号化するための方法が提案される。本方法は、現在のパーティションについてのオフセット情報を判断することと、現在のパーティションのオフセット情報を１つまたは複数のネイバーパーティションのオフセット情報と比較することと、１つまたは複数のネイバーパーティションのうちの１つのオフセット情報が現在のパーティションのオフセット情報と同じである場合、マージ命令をコーディングすることと、１つまたは複数のネイバーパーティションのオフセット情報が現在のパーティションのオフセット情報と同じでない場合、複数の予測命令のうちの１つをコーディングすることとを含む。
【０００８】
本開示の別の例では、ビデオコーディングプロセスにおいてサンプル適応オフセット値を符号化するように構成された装置が提案される。本装置は、現在のパーティションのオフセット情報を１つまたは複数のネイバーパーティションのオフセット情報と比較することと、１つまたは複数のネイバーパーティションのうちの１つのオフセット情報が現在のパーティションのオフセット情報と同じである場合、マージ命令をコーディングすることと、１つまたは複数のネイバーパーティションのオフセット情報が現在のパーティションのオフセット情報と同じでない場合、複数の予測命令のうちの１つをコーディングすることとを行うように構成されたビデオエンコーダを含む。
【０００９】
本開示の別の例では、ビデオ復号プロセスにおいてサンプル適応オフセット値を復号するための方法が提案される。本方法は、現在のパーティションについて、マージ命令、または複数の予測命令のうちの１つを受信することと、マージ命令が受信された場合、オフセット情報をネイバーパーティションから現在のパーティションにコピーすることと、複数の予測命令のうちの１つが受信された場合、現在のパーティションについてのオフセット予測プロセスを実行することとを含む。
【００１０】
本開示の別の例では、ビデオ復号プロセスにおいてサンプル適応オフセット値を復号するように構成された装置が提案される。本装置は、現在のパーティションについて、マージ命令、または複数の予測命令のうちの１つを受信することと、マージ命令が受信された場合、オフセット情報をネイバーパーティションから現在のパーティションにコピーすることと、複数の予測命令のうちの１つが受信された場合、現在のパーティションについてのオフセット予測プロセスを実行することとを行うように構成されたビデオデコーダを含む。
【００１１】
１つまたは複数の例の詳細を添付の図面および以下の説明に記載する。他の特徴、目的、および利点は、その説明および図面、ならびに特許請求の範囲から明らかになろう。
【図面の簡単な説明】
【００１２】
【図１】ビデオコーディングプロセスにおけるコーディングユニットのための４分木構造を示す概念図。
【図２】４つの可能なエッジオフセットタイプを示す概念図。
【図３】例示的なバンドオフセットタイプを示す概念図。
【図４】例示的なビデオ符号化および復号システムを示すブロック図。
【図５】例示的なビデオエンコーダを示すブロック図。
【図６】オフセット情報をシグナリングする際に使用される潜在的なネイバーパーティションを示す概念図。
【図７Ａ】マージモードでの適応オフセットシンタックスコーディングの一例の概念図。
【図７Ｂ】第１の予測モードでの適応オフセットシンタックスコーディングの一例の概念図。
【図７Ｃ】第２の予測モードでの適応オフセットシンタックスコーディングの一例の概念図。
【図７Ｄ】第３の予測モードでの適応オフセットシンタックスコーディングの一例の概念図。
【図８】例示的なビデオデコーダを示すブロック図。
【図９】サンプル適応オフセットを使用してビデオを符号化する例示的な方法を示すフローチャート。
【図１０】サンプル適応オフセットを使用してビデオを復号する例示的な方法を示すフローチャート。
【詳細な説明】
【００１３】
概して、本開示では、ビデオデータをコーディングするための技法について説明する。本開示では、ビデオコーディングプロセスにおいてサンプル適応オフセット値をコーディングするための技法について説明する。
【００１４】
デジタルビデオデバイスは、デジタルビデオ情報をより効率的に符号化および復号するためのビデオ圧縮技法を実装する。ビデオ圧縮は、ビデオシーケンスに固有の冗長性を低減または除去するために空間的（フレーム内）予測および／または時間的（フレーム間）予測技法を適用し得る。
【００１５】
一例として、Ｊｏｉｎｔ  Ｃｏｏｐｅｒａｔｉｖｅ  Ｔｅａｍ  ｆｏｒ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＪＣＴ−ＶＣ）によって現在開発中の高効率ビデオコーディング（ＨＥＶＣ）規格に従うビデオコーディングでは、ビデオフレームがコーディングユニットに区分され得る。コーディングユニット（ＣＵ：coding unit）は、概して、ビデオ圧縮のために様々なコーディングツールが適用される基本ユニットとして働く画像領域を指す。ＣＵは、通常、Ｙとして示されるルミナンス成分と、ＵおよびＶとして示される２つのクロマ成分とを有する。ビデオサンプリングフォーマットに応じて、サンプルの数に関してＵおよびＶ成分のサイズは、Ｙ成分のサイズと同じであるかまたはそれとは異なり得る。ＣＵは、一般に方形であり、たとえば、ＩＴＵ−Ｔ  Ｈ．２６４などの他のビデオコーディング規格の下でのいわゆるマクロブロックと同様であると見なされ得る。本出願では、例示のために、開発中のＨＥＶＣ規格の現在提案されている態様のいくつかに従うコーディングについて説明する。ただし、本開示で説明する技法は、Ｈ．２６４または他の規格に従って定義されるビデオコーディングプロセスあるいはプロプライエタリビデオコーディングプロセスなど、他のビデオコーディングプロセスのために有用であり得る。
【００１６】
ＨＥＶＣの規格化の取り組みは、ＨＥＶＣテストモデル（ＨＭ：HEVC Test Model）と呼ばれるビデオコーディングデバイスのモデルに基づく。ＨＭは、たとえば、ＩＴＵ−Ｔ  Ｈ．２６４／ＡＶＣによるデバイスに勝るビデオコーディングデバイスのいくつかの能力を仮定する。たとえば、Ｈ．２６４は９つのイントラ予測符号化モードを提供するが、ＨＭは３４個ものイントラ予測符号化モードを提供する。
【００１７】
ＨＭによれば、ＣＵは、１つまたは複数の予測ユニット（ＰＵ：prediction unit）および／または１つまたは複数の変換ユニット（ＴＵ：transform unit）を含み得る。ビットストリーム内のシンタックスデータは、ピクセルの数に関して最大ＣＵである最大コーディングユニット（ＬＣＵ：largest coding unit）を定義し得る。概して、ＣＵは、ＣＵがサイズの差異を有しないことを除いて、Ｈ．２６４のマクロブロックと同様の目的を有する。したがって、ＣＵはサブＣＵに分割され得る。概して、本開示におけるＣＵへの言及は、ピクチャの最大コーディングユニットまたはＬＣＵのサブＣＵを指すことがある。ＬＣＵはサブＣＵに分割され得、各サブＣＵはさらにサブＣＵに分割され得る。ビットストリームのシンタックスデータは、ＣＵ深さと呼ばれる、ＬＣＵが分割され得る最大回数を定義し得る。したがって、ビットストリームは最小コーディングユニット（ＳＣＵ：smallest coding unit）をも定義し得る。本開示ではまた、ＣＵ、ＰＵ、またはＴＵのいずれかを指すために「ブロック」または「部分」という用語を使用する。概して、「部分」は、ビデオフレームの任意のサブセットを指し得る。
【００１８】
ＬＣＵは４分木データ構造に関連付けられ得る。図１は、４分木分割の概念図である。概して、４分木データ構造はＣＵごとに１つのノードを含み、ルートノードはＬＣＵに対応する。ＣＵが４つのサブＣＵに分割された場合、ＣＵに対応するノードは４つのリーフノードを含み、リーフノードの各々はサブＣＵのうちの１つに対応する。４分木データ構造の各ノードは、対応するＣＵのシンタックスデータを与え得る。たとえば、４分木のノードは、そのノードに対応するＣＵがサブＣＵに分割されるかどうかを示す分割フラグを含み得る。ＣＵのシンタックス要素は、再帰的に定義され得、ＣＵがサブＣＵに分割されるかどうかに依存し得る。ＣＵがさらに分割されない場合、そのＣＵはリーフＣＵと呼ばれる。本開示では、元のリーフＣＵの明示的分割が存在しなくても、リーフＣＵの４つのサブＣＵをリーフＣＵとも呼ぶ。たとえば、１６×１６サイズでＣＵがさらに分割されない場合、この１６×１６ＣＵが決して分割されなくても、４つの８×８サブＣＵをリーフＣＵとも呼ぶ。
【００１９】
その上、リーフＣＵのＴＵもそれぞれの４分木データ構造に関連付けられ得る。すなわち、リーフＣＵは、リーフＣＵがどのようにＴＵに区分されるかを示す４分木を含み得る。本開示では、ＬＣＵがどのように区分されるかを示す４分木をＣＵ４分木と呼び、リーフＣＵがどのようにＴＵに区分されるかを示す４分木をＴＵ４分木と呼ぶ。ＴＵ４分木のルートノードは概してリーフＣＵに対応し、ＣＵ４分木のルートノードは概してＬＣＵに対応する。分割されないＴＵ４分木のＴＵはリーフＴＵと呼ばれる。
【００２０】
リーフＣＵは、１つまたは複数の予測ユニット（ＰＵ）を含み得る。概して、ＰＵは、対応するＣＵの全部または一部分を表し、そのＰＵの参照サンプルを取り出すためのデータを含み得る。たとえば、ＰＵがインターモード符号化されるとき、ＰＵは、ＰＵの動きベクトルを定義するデータを含み得る。動きベクトルを定義するデータは、たとえば、動きベクトルの水平成分、動きベクトルの垂直成分、動きベクトルの解像度（たとえば、１／４ピクセル精度もしくは１／８ピクセル精度）、動きベクトルがポイントする参照フレーム、および／または動きベクトルの参照リスト（たとえば、リスト０もしくはリスト１）を記述し得る。（１つまたは複数の）ＰＵを定義するリーフＣＵのデータはまた、たとえば、ＣＵを１つまたは複数のＰＵに区分することを記述し得る。区分モードは、ＣＵがコーディングされないか、イントラ予測モード符号化されるか、またはインター予測モード符号化されるかに応じて異なり得る。イントラコーディングの場合、ＰＵは、以下で説明するリーフ変換ユニットと同じように扱われ得る。
【００２１】
サンプル適応オフセット（ＳＡＯ）コーディングは、現在、ＨＥＶＣ規格への採用を検討中である。概して、ビデオフレーム（たとえば、インター予測またはイントラ予測の場合の予測フレーム）中のピクセルへのオフセット値の加算は、ビデオシーケンスのフレーム間の照明変化中、たとえば、フラッシュ、ダークニングスカイ(darkening sky)、または他のタイプのフレーム間の照明変化などの間のコーディングを改善し得る。たとえば、照明変化を補償するように予測ビデオブロックの値をバイアスするために、予測されたビデオブロックのピクセルにオフセット値が適用され得る。Ｈ．２６４などの以前のビデオコーディング規格では、ピクセルのブロックまたはフレーム全体にわたって一様にオフセットタイプおよび値を適用していた。ＳＡＯ技法は、ピクセル（またはブロック）分類メトリックに応じて異なるオフセット値を異なるピクセル（またはブロック）に適用することを可能にする。可能な分類メトリックは、エッジメトリックおよびバンドメトリックなど、アクティビティメトリックを含む。オフセット分類の記述は、Ｃ．−Ｍ．Ｆｕ、Ｃ．−Ｙ．Ｃｈｅｎ、Ｃ．−Ｙ．Ｔｓａｉ、Ｙ．−Ｗ．  Ｈｕａｎｇ、Ｓ．Ｌｅｉ、「ＣＥ１３：  Ｓａｍｐｌｅ  Ａｄａｐｔｉｖｅ  Ｏｆｆｓｅｔ  ｗｉｔｈ  ＬＣＵ−Ｉｎｄｅｐｅｎｄｅｎｔ  Ｄｅｃｏｄｉｎｇ」、ＪＣＴ−ＶＣ  Ｃｏｎｔｒｉｂｕｔｉｏｎ、Ｅ０４９、ジュネーブ、２０１１年２月に発見され得る。
【００２２】
ＨＥＶＣ規格のワーキングドラフトにおける現在のＳＡＯ実装形態では、（ＬＣＵのセットからなる）各パーティションは、（ピクセル分類とも呼ばれる）３つのオフセットタイプ、すなわち、オフセットなしと、バンド分類ベースのオフセットタイプ０／１と、エッジ分類ベースのタイプ０／１／２／３とのうちの１つを有することができる。各バンド分類オフセットタイプは１６個の可能なオフセット値を有するが、各エッジ分類ベースタイプは４つの可能なオフセット値を有する。これらのオフセットタイプのうちの１つが、パーティションのために使用されるために選定された場合、対応するオフセットタイプとオフセット値とを示す情報がデコーダに送られる。
【００２３】
エッジオフセットタイプは、エッジ情報に基づいて各ピクセルを分類する。図２は、ＨＥＶＣのために現在提案されている４つの可能な（オフセットタイプとも呼ばれる）エッジオフセット分類を示す概念図である。現在のピクセルＣについてのエッジは、２つの隣接ピクセル（１および２）に対して判断される。エッジオフセットタイプ０（ＳＡＯ＿ＥＯ＿０）は水平エッジである。エッジオフセットタイプ１（ＳＡＯ＿ＥＯ＿１）は垂直エッジである。エッジオフセットタイプ２（ＳＡＯ＿ＥＯ＿２）および３（ＳＡＯ＿ＥＯ＿３）は対角エッジである。各エッジオフセットタイプ値について、４つのオフセット値が判断され、デコーダが使用する符号化ビデオビットストリーム中でシグナリングされる。
【００２４】
バンドオフセットの場合、ピクセルは、強度に基づいて異なるバンドに分類される。図３は、強度値に基づく例示的なバンドを示す概念図である。バンドオフセット分類の場合、ピクセルは、３２個のバンドにカテゴリー分類される。中心の１６個のバンドは、１つのグループ（バンドオフセットタイプ０）に分類され、残りのバンドは、第２のグループ（バンドオフセットタイプ１）に分類される。バンドの各グループについて、１６個のオフセット値が判断され、ビデオデコーダが使用する符号化ビデオビットストリーム中でシグナリングされる。
【００２５】
本開示は、各パーティションについてのオフセットタイプとオフセット値とをより効率的に送るための方法および技法を提案する。このコンテキストでは、パーティションは、複数の（Ｈ．２６４規格におけるいわゆるマクロブロックと同様の）コーディングユニット（ＣＵ）、またはさらには複数の最大コーディングユニット（ＬＣＵ）を含み得る。
【００２６】
本開示の一例では、ビデオ符号化プロセスにおいてサンプル適応オフセット値を符号化するための技法が提案される。提案される技法は、現在のパーティションについてのオフセット情報を判断することと、現在のパーティションのオフセット情報を１つまたは複数のネイバーパーティションのオフセット情報と比較することと、１つまたは複数のネイバーパーティションのうちの１つのオフセット情報が現在のパーティションのオフセット情報と同じである場合、マージ命令をコーディングすることと、１つまたは複数のネイバーパーティションのオフセット情報が現在のパーティションのオフセット情報と同じでない場合、複数の予測命令のうちの１つをコーディングすることとを含む。
【００２７】
本開示の別の例では、ビデオ復号プロセスにおいてサンプル適応オフセット値を復号するための技法が提案される。提案される技法は、現在のパーティションについて、マージ命令、または複数の予測命令のうちの１つを受信することと、マージ命令が受信された場合、オフセット情報をネイバーパーティションから現在のパーティションにコピーすることと、複数の予測命令のうちの１つが受信された場合、現在のパーティションについてのオフセット予測プロセスを実行することとを含む。
【００２８】
図４は、本開示の例による、サンプル適応オフセットシグナリングおよびコーディングを実行するための技法を利用するように構成され得る例示的なビデオ符号化および復号システム１０を示すブロック図である。図４に示すように、システム１０は、通信チャネル１６を介して符号化ビデオを宛先デバイス１４に送信するソースデバイス１２を含む。符号化ビデオデータはまた、記憶媒体３４またはファイルサーバ３６に記憶され得、必要に応じて宛先デバイス１４によってアクセスされ得る。記憶媒体またはファイルサーバに記憶されたとき、ビデオエンコーダ２０は、コード化ビデオデータを記憶媒体に記憶するための、ネットワークインターフェース、コンパクトディスク（ＣＤ）、ブルーレイ（登録商標）またはデジタルビデオディスク（ＤＶＤ）バーナーまたはスタンピングファシリティデバイス、あるいは他のデバイスなど、別のデバイスにコード化ビデオデータを与え得る。同様に、ネットワークインターフェース、ＣＤまたはＤＶＤリーダーなど、ビデオデコーダ３０とは別個のデバイスが、記憶媒体からコード化ビデオデータを取り出し、取り出されたデータをビデオデコーダ３０に与え得る。
【００２９】
ソースデバイス１２および宛先デバイス１４は、デスクトップコンピュータ、ノートブック（すなわち、ラップトップ）コンピュータ、タブレットコンピュータ、セットトップボックス、いわゆるスマートフォンなどの電話ハンドセット、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲームコンソールなどを含む、多種多様のデバイスのいずれかを備え得る。多くの場合、そのようなデバイスはワイヤレス通信に対応し得る。したがって、通信チャネル１６は、符号化ビデオデータの送信に好適なワイヤレスチャネル、ワイヤードチャネル、またはワイヤレスチャネルとワイヤードチャネルとの組合せを備え得る。同様に、ファイルサーバ３６は、インターネット接続を含む任意の標準データ接続を介して宛先デバイス１４によってアクセスされ得る。これは、ファイルサーバに記憶された符号化ビデオデータにアクセスするのに好適である、ワイヤレスチャネル（たとえば、Ｗｉ−Ｆｉ接続）、ワイヤード接続（たとえば、ＤＳＬ、ケーブルモデムなど）、または両方の組合せを含み得る。
【００３０】
本開示の例による、サンプル適応オフセットシグナリングおよびコーディングを実行するための技法は、無線の(over-the-air)テレビジョン放送、ケーブルテレビジョン送信、衛星テレビジョン送信、たとえばインターネットを介したストリーミングビデオ送信、データ記憶媒体に記憶するためのデジタルビデオの符号化、データ記憶媒体に記憶されたデジタルビデオの復号、または他の適用例など、様々なマルチメディア適用例のいずれかをサポートするビデオコーディングに適用され得る。いくつかの例では、システム１０は、ビデオストリーミング、ビデオ再生、ビデオブロードキャスト、および／またはビデオテレフォニーなどの適用例をサポートするために、一方向または双方向のビデオ送信をサポートするように構成され得る。
【００３１】
図４の例では、ソースデバイス１２は、ビデオソース１８と、ビデオエンコーダ２０と、変調器／復調器２２と、送信機２４とを含む。ソースデバイス１２において、ビデオソース１８は、ビデオカメラなどのビデオキャプチャデバイス、以前にキャプチャされたビデオを含んでいるビデオアーカイブ、ビデオコンテンツプロバイダからビデオを受信するためのビデオフィードインターフェース、および／またはソースビデオとしてコンピュータグラフィックスデータを生成するためのコンピュータグラフィックスシステムなどのソース、あるいはそのようなソースの組合せを含み得る。一例として、ビデオソース１８がビデオカメラである場合、ソースデバイス１２および宛先デバイス１４は、いわゆるカメラフォンまたはビデオフォンを形成し得る。ただし、本開示で説明する技法は、概してビデオコーディングに適用可能であり得、ワイヤレスおよび／またはワイヤードアプリケーション、あるいは符号化ビデオデータがローカルディスクに記憶されたアプリケーションに適用され得る。
【００３２】
キャプチャされたビデオ、以前にキャプチャされたビデオ、またはコンピュータ生成されたビデオは、ビデオエンコーダ２０によって符号化され得る。符号化されたビデオ情報は、ワイヤレス通信プロトコルなどの通信規格に従ってモデム２２によって変調され、送信機２４を介して宛先デバイス１４に送信され得る。モデム２２は、信号変調のために設計された様々なミキサ、フィルタ、増幅器または他のコンポーネントを含み得る。送信機２４は、増幅器、フィルタ、および１つまたは複数のアンテナを含む、データを送信するために設計された回路を含み得る。
【００３３】
ビデオエンコーダ２０によって符号化された、キャプチャされたビデオ、以前にキャプチャされたビデオ、またはコンピュータ生成されたビデオはまた、後で消費するために記憶媒体３４またはファイルサーバ３６に記憶され得る。記憶媒体３４は、ブルーレイ（登録商標）ディスク、ＤＶＤ、ＣＤ−ＲＯＭ、フラッシュメモリ、または符号化ビデオを記憶するための他の好適なデジタル記憶媒体を含み得る。記憶媒体３４に記憶された符号化ビデオは、次いで、復号および再生のために宛先デバイス１４によってアクセスされ得る。
【００３４】
ファイルサーバ３６は、符号化ビデオを記憶することと、その符号化ビデオを宛先デバイス１４に送信することとが可能な任意のタイプのサーバであり得る。例示的なファイルサーバは、（たとえば、ウェブサイトのための）ウェブサーバ、ＦＴＰサーバ、ネットワークアタッチストレージ（ＮＡＳ）デバイス、ローカルディスクドライブ、または符号化ビデオデータを記憶することと、符号化ビデオデータを宛先デバイスに送信することとが可能な他のタイプのデバイスを含む。ファイルサーバ３６からの符号化ビデオデータの送信は、ストリーミング送信、ダウンロード送信、または両方の組合せであり得る。ファイルサーバ３６は、インターネット接続を含む任意の標準データ接続を介して宛先デバイス１４によってアクセスされ得る。これは、ファイルサーバに記憶された符号化ビデオデータにアクセスするのに好適である、ワイヤレスチャネル（たとえば、Ｗｉ−Ｆｉ接続）、ワイヤード接続（たとえば、ＤＳＬ、ケーブルモデム、イーサネット（登録商標）、ＵＳＢなど）、または両方の組合せを含み得る。
【００３５】
図４の例では、宛先デバイス１４は、受信機２６と、モデム２８と、ビデオデコーダ３０と、ディスプレイデバイス３２とを含む。宛先デバイス１４の受信機２６はチャネル１６を介して情報を受信し、モデム２８はその情報を復調して、ビデオデコーダ３０のための復調されたビットストリームを生成する。チャネル１６を介して通信される情報は、ビデオデータを復号する際にビデオデコーダ３０が使用する、ビデオエンコーダ２０によって生成された様々なシンタックス情報を含み得る。そのようなシンタックスはまた、記憶媒体３４またはファイルサーバ３６に記憶された符号化ビデオデータとともに含まれ得る。ビデオエンコーダ２０およびビデオデコーダ３０の各々は、ビデオデータを符号化または復号することが可能であるそれぞれのエンコーダデコーダ（コーデック）の一部を形成し得る。本開示では、コーダという用語はエンコーダ、デコーダ、またはコーデックを指し、コーダ、エンコーダ、デコーダ、およびコーデックという用語はすべて、本開示に一致するビデオデータのコーディング（符号化および／または復号）のために設計された特定の機械を指す。
【００３６】
ディスプレイデバイス３２は、宛先デバイス１４と一体化されるかまたはその外部にあり得る。いくつかの例では、宛先デバイス１４は、一体型ディスプレイデバイスを含み得、また、外部ディスプレイデバイスとインターフェースするように構成され得る。他の例では、宛先デバイス１４はディスプレイデバイスであり得る。概して、ディスプレイデバイス３２は、復号されたビデオデータをユーザに対して表示し、液晶ディスプレイ（ＬＣＤ）、プラズマディスプレイ、有機発光ダイオード（ＯＬＥＤ）ディスプレイ、または別のタイプのディスプレイデバイスなど、様々なディスプレイデバイスのいずれかを備え得る。
【００３７】
図４の例では、通信チャネル１６は、無線周波数（ＲＦ）スペクトルあるいは１つまたは複数の物理伝送線路など、任意のワイヤレスまたはワイヤード通信媒体、あるいはワイヤレス媒体とワイヤード媒体との任意の組合せを備え得る。通信チャネル１６は、ローカルエリアネットワーク、ワイドエリアネットワーク、またはインターネットなどのグローバルネットワークなど、パケットベースネットワークの一部を形成し得る。通信チャネル１６は、概して、ワイヤード媒体またはワイヤレス媒体の任意の好適な組合せを含む、ビデオデータをソースデバイス１２から宛先デバイス１４に送信するのに好適な任意の通信媒体、または様々な通信媒体の集合体を表す。通信チャネル１６は、ソースデバイス１２から宛先デバイス１４への通信を可能にするのに有用であり得るルータ、スイッチ、基地局、または任意の他の機器を含み得る。
【００３８】
ビデオエンコーダ２０およびビデオデコーダ３０は、現在開発中の高効率ビデオコーディング（ＨＥＶＣ）規格などのビデオ圧縮規格に従って動作し得、ＨＥＶＣテストモデル（ＨＭ）に準拠し得る。代替的に、ビデオエンコーダ２０およびビデオデコーダ３０は、代替的にＭＰＥＧ−４，Ｐａｒｔ１０，Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＡＶＣ）と呼ばれるＩＴＵ−Ｔ  Ｈ．２６４規格、またはそのような規格の拡張など、他のプロプライエタリまたは業界標準に従って動作し得る。ただし、本開示の技法は、いかなる特定のコーディング規格にも限定されない。他の例にはＭＰＥＧ−２およびＩＴＵ−Ｔ  Ｈ．２６３がある。
【００３９】
図４には示されていないが、いくつかの態様では、ビデオエンコーダ２０およびビデオデコーダ３０は、それぞれオーディオエンコーダおよびオーディオデコーダと統合され得、共通のデータストリームまたは別個のデータストリーム中のオーディオとビデオの両方の符号化を処理するための適切なＭＵＸ−ＤＥＭＵＸユニット、または他のハードウェアおよびソフトウェアを含み得る。適用可能な場合、いくつかの例では、ＭＵＸ−ＤＥＭＵＸユニットはＩＴＵ  Ｈ．２２３マルチプレクサプロトコル、またはユーザデータグラムプロトコル（ＵＤＰ）などの他のプロトコルに準拠し得る。
【００４０】
ビデオエンコーダ２０およびビデオデコーダ３０はそれぞれ、１つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェアなど、様々な好適なエンコーダ回路のいずれか、またはそれらの任意の組合せとして実装され得る。本技法が部分的にソフトウェアで実装されるとき、デバイスは、好適な非一時的コンピュータ可読媒体にソフトウェアの命令を記憶し、１つまたは複数のプロセッサを使用してその命令をハードウェアで実行して、本開示の技法を実行し得る。ビデオエンコーダ２０およびビデオデコーダ３０の各々は１つまたは複数のエンコーダまたはデコーダ中に含まれ得、そのいずれも、それぞれのデバイスにおいて複合エンコーダ／デコーダ（コーデック）の一部として統合され得る。
【００４１】
ビデオエンコーダ２０は、ビデオ符号化プロセスにおいてサンプル適応オフセットシグナリングおよびコーディングを実行するための本開示の技法のうちのいずれかまたはすべてを実装し得る。同様に、ビデオデコーダ３０は、ビデオコーディングプロセスにおいてサンプル適応オフセットコーディングを実行するためのこれらの技法のいずれかまたはすべてを実装し得る。本開示で説明するビデオコーダは、ビデオエンコーダまたはビデオデコーダを指し得る。同様に、ビデオコーディングユニットは、ビデオエンコーダまたはビデオデコーダを指し得る。同様に、ビデオコーディングはビデオ符号化またはビデオ復号を指し得る。
【００４２】
本開示の一例では、ソースデバイス１２のビデオエンコーダ２０は、現在のパーティションのオフセット情報を１つまたは複数のネイバーパーティションのオフセット情報と比較することと、１つまたは複数のネイバーパーティションのうちの１つのオフセット情報が現在のパーティションのオフセット情報と同じである場合、マージ命令をコーディングすることと、１つまたは複数のネイバーパーティションのオフセット情報が現在のパーティションのオフセット情報と同じでない場合、複数の予測命令のうちの１つをコーディングすることとを行うように構成され得る。
【００４３】
本開示の別の例では、宛先デバイス１４のビデオデコーダ３０は、現在のパーティションについて、マージ命令、または複数の予測命令のうちの１つを受信することと、マージ命令が受信された場合、オフセット情報をネイバーパーティションから現在のパーティションにコピーすることと、複数の予測命令のうちの１つが受信された場合、現在のパーティションについてのオフセット予測プロセスを実行することとを行うように構成され得る。
【００４４】
図５は、本開示で説明する、サンプル適応オフセット値をコーディングし、シグナリングするための技法を使用し得るビデオエンコーダ２０の一例を示すブロック図である。ビデオエンコーダ２０について、例示のためにＨＥＶＣコーディングのコンテキストにおいて説明するが、変換係数の走査を必要とし得る他のコーディング規格または方法に関して本開示を限定するものではない。ビデオエンコーダ２０は、ビデオフレーム内のＣＵのイントラコーディングおよびインターコーディングを実行し得る。イントラコーディングは、所与のビデオフレーム内のビデオデータの空間的冗長性を低減または除去するために空間的予測に依拠する。インターコーディングは、ビデオシーケンスの現在のフレームと前にコーディングされたフレームとの間の時間的冗長性を低減または除去するために時間的予測に依拠する。イントラモード（Ｉモード）は、いくつかの空間ベースのビデオ圧縮モードのいずれかを指し得る。単方向予測（Ｐモード）または双方向予測（Ｂモード）などのインターモードは、いくつかの時間ベースのビデオ圧縮モードのいずれかを指し得る。
【００４５】
図５に示すように、ビデオエンコーダ２０は、符号化されるべきビデオフレーム内の現在のビデオブロックを受信する。図５の例では、ビデオエンコーダ２０は、動き補償ユニット４４と、動き推定ユニット４２と、イントラ予測ユニット４６と、参照フレームバッファ６４と、加算器５０と、変換ユニット５２と、量子化ユニット５４と、エントロピー符号化ユニット５６とを含む。図５に示す変換ユニット５２は、残差データのブロックに実際の変換または変換の組合せを適用するユニットであり、ＣＵの変換ユニット（ＴＵ）と呼ばれることもある変換係数のブロックと混同されるべきでない。ビデオブロック再構成のために、ビデオエンコーダ２０はまた、逆量子化ユニット５８と、逆変換ユニット６０と、加算器６２と、ＳＡＯユニット４３とを含む。再構成されたビデオからブロッキネスアーティファクトを除去するためにブロック境界をフィルタ処理するデブロッキングフィルタを含めることもできる。所望される場合、デブロッキングフィルタは、一般に、加算器６２の出力をフィルタ処理することになる。
【００４６】
符号化プロセス中に、ビデオエンコーダ２０は、コーディングされるべきビデオフレームまたはスライスを受信する。フレームまたはスライスは、複数のビデオブロック、たとえば、最大コーディングユニット（ＬＣＵ）に分割され得る。動き推定ユニット４２および動き補償ユニット４４は、時間圧縮を提供するために、１つまたは複数の参照フレーム中の１つまたは複数のブロックに対する受信したビデオブロックのインター予測コーディングを実行する。イントラ予測ユニット４６は、空間圧縮を提供するために、コーディングされるべきブロックと同じフレームまたはスライス中の１つまたは複数の隣接ブロックに対する受信したビデオブロックのイントラ予測コーディングを実行し得る。
【００４７】
モード選択ユニット４０は、たとえば、各モードについてのレートひずみ結果に基づいて、コーディングモードのうちの１つ、イントラまたはインターを選択し得、得られたイントラまたはインター予測ブロック（たとえば、予測ユニット（ＰＵ））を、残差ブロックデータを生成するために加算器５０に与え、参照フレーム中で使用する符号化ブロックを再構成するために加算器６２に与える。加算器６２は、以下でより詳細に説明するように、予測ブロックを、そのブロックについての、逆変換ユニット６０からの逆量子化され逆変換されたデータと合成して、符号化ブロックを再構成する。いくつかのビデオフレームはＩフレームに指定され得、Ｉフレーム中のすべてのブロックはイントラ予測モードで符号化される。場合によっては、たとえば、動き推定ユニット４２によって実行された動き探索によってブロックの十分な予測が得られないとき、イントラ予測ユニット４６は、ＰフレームまたはＢフレーム中のブロックのイントラ予測符号化を実行し得る。
【００４８】
動き推定ユニット４２と動き補償ユニット４４とは、高度に統合され得るが、概念的な目的のために別々に示してある。動き推定（または動き探索）は、ビデオブロックの動きを推定する動きベクトルを生成するプロセスである。動きベクトルは、たとえば、参照フレームの参照サンプルに対する、現在のフレーム中の予測ユニットの変位(displacement)を示し得る。動き推定ユニット４２は、予測ユニットを参照フレームバッファ６４に記憶された参照フレームの参照サンプルと比較することによってインターコード化フレームの予測ユニットの動きベクトルを計算する。参照サンプルは、絶対値差分和（ＳＡＤ：sum of absolute difference）、２乗差分和（ＳＳＤ：sum of squared difference）、または他の差分メトリックによって判断され得るピクセル差分に関して、コーディングされているＰＵを含むＣＵの部分にぴったり一致することがわかるブロックであり得る。参照サンプルは、参照フレームまたは参照スライス内のどこにでも発生し得、必ずしも、参照フレームまたはスライスのブロック（たとえば、コーディングユニット）境界において発生するとは限らない。いくつかの例では、参照サンプルは分数ピクセル位置(fractional pixel position)において発生し得る。
【００４９】
動き推定ユニット４２は、計算された動きベクトルをエントロピー符号化ユニット５６と動き補償ユニット４４とに送る。動きベクトルによって識別される参照フレームの部分は参照サンプルと呼ばれることがある。動き補償ユニット４４は、たとえば、ＰＵの動きベクトルによって識別される参照サンプルを取り出すことによって、現在のＣＵの予測ユニットについての予測値を計算し得る。
【００５０】
イントラ予測ユニット４６は、動き推定ユニット４２と動き補償ユニット４４とによって実行されるインター予測の代替として、受信ブロックをイントラ予測し得る。イントラ予測ユニット４６は、隣接する、前にコーディングされたブロック、たとえば、ブロックについての左から右へ、上から下への符号化順序を仮定すると、現在のブロックの上、右上、左上、または左のブロックに対して受信ブロックを予測し得る。イントラ予測ユニット４６は多種多様なイントラ予測モードで構成され得る。たとえば、イントラ予測ユニット４６は、符号化されているＣＵのサイズに基づいて、一定数の方向性予測モード、たとえば、３５個の方向性予測モードで構成され得る。
【００５１】
イントラ予測ユニット４６は、たとえば、様々なイントラ予測モードの誤差値(error values)を計算し、最も低い誤差値を生じるモードを選択することによって、イントラ予測モードを選択し得る。方向性予測モードは、空間的に隣接するピクセルの値を合成し、その合成された値をＰＵ中の１つまたは複数のピクセル位置に適用するための機能を含み得る。ＰＵ中のすべてのピクセル位置の値が計算されると、イントラ予測ユニット４６は、ＰＵと符号化されるべき受信ブロックとの間のピクセル差分に基づいて予測モードの誤差値を計算し得る。イントラ予測ユニット４６は、許容できる誤差値を生じるイントラ予測モードが発見されるまでイントラ予測モードをテストし続け得る。イントラ予測ユニット４６は、次いで、ＰＵを加算器５０に送り得る。
【００５２】
ビデオエンコーダ２０は、コーディングされている元のビデオブロックから、動き補償ユニット４４またはイントラ予測ユニット４６によって計算された予測データを減算することによって残差ブロックを形成する。加算器５０は、この減算演算を実行する１つまたは複数のコンポーネントを表す。残差ブロックはピクセル差分値の２次元行列に対応し得、残差ブロック中の値の数は、残差ブロックに対応するＰＵ中のピクセルの数と同じである。残差ブロック中の値は、ＰＵ中のコロケートピクセル(co-located pixels)の値と、コーディングされるべき元のブロック中のコロケートピクセルの値との間の差分、すなわち、誤差に対応し得る。差分は、コーディングされるブロックのタイプに応じてクロマ差分またはルーマ差分であり得る。
【００５３】
変換ユニット５２は、残差ブロックから１つまたは複数の変換ユニット（ＴＵ）を形成し得る。変換ユニット５２は、複数の変換の中から変換を選択する。変換は、ブロックサイズ、コーディングモードなど、１つまたは複数のコーディング特性に基づいて選択され得る。変換ユニット５２は、次いで、選択された変換をＴＵに適用して、変換係数の２次元アレイを備えるビデオブロックを生成する。変換ユニット５２は、上記で説明した本開示の技法に従って変換パーティションを選択し得る。さらに、変換ユニット５２は、選択された変換パーティションを符号化ビデオビットストリーム中でシグナリングし得る。
【００５４】
変換ユニット５２は、得られた変換係数を量子化ユニット５４に送り得る。量子化ユニット５４は、次いで、その変換係数を量子化し得る。エントロピー符号化ユニット５６が、次いで、走査モードに従って、行列中の量子化された変換係数の走査を実行し得る。本開示では、エントロピー符号化ユニット５６が走査を実行するものとして説明する。ただし、他の例では、量子化ユニット５４などの他の処理ユニットが走査を実行し得ることを理解されたい。
【００５５】
変換係数が１次元アレイに走査されると、エントロピー符号化ユニット５６は、ＣＡＶＬＣ、ＣＡＢＡＣ、シンタックスベースコンテキスト適応型バイナリ算術コーディング（ＳＢＡＣ：syntax-based context-adaptive binary arithmetic coding）、または別のエントロピーコーディング方法などのエントロピーコーディングを係数に適用し得る。
【００５６】
ＣＡＶＬＣを実行するために、エントロピー符号化ユニット５６は、送信されるべきシンボルの可変長コードを選択し得る。ＶＬＣのコードワードは、相対的により短いコードがより可能性が高いシンボルに対応し、より長いコードがより可能性が低いシンボルに対応するように構築され得る。このようにして、ＶＬＣの使用は、たとえば、送信されるべき各シンボルのために等長コードワードを使用するよりも、ビット節約を達成し得る。
【００５７】
ＣＡＢＡＣを実行するために、エントロピー符号化ユニット５６は、送信されるべきシンボルを符号化するために、あるコンテキストに適用すべきコンテキストモデルを選択し得る。コンテキストは、たとえば、隣接値が非０であるか否かに関係し得る。エントロピー符号化ユニット５６はまた、選択された変換を表す信号など、シンタックス要素をエントロピー符号化し得る。本開示の技法によれば、エントロピー符号化ユニット５６は、コンテキストモデル選択のために使用される他のファクタの中でも、たとえば、イントラ予測モードのためのイントラ予測方向、シンタックス要素に対応する係数の走査位置、ブロックタイプ、および／または変換タイプに基づいて、これらのシンタックス要素を符号化するために使用されるコンテキストモデルを選択し得る。
【００５８】
エントロピー符号化ユニット５６によるエントロピーコーディングの後に、得られた符号化ビデオは、ビデオデコーダ３０などの別のデバイスに送信されるか、あるいは後で送信するかまたは取り出すためにアーカイブされ得る。
【００５９】
場合によっては、エントロピー符号化ユニット５６またはビデオエンコーダ２０の別のユニットは、エントロピーコーディングに加えて、他のコーディング機能を実行するように構成され得る。たとえば、エントロピー符号化ユニット５６は、ＣＵおよびＰＵのコード化ブロックパターン（ＣＢＰ：coded block pattern）値を判断するように構成され得る。また、場合によっては、エントロピー符号化ユニット５６は係数のランレングスコーディング(run length coding)を実行し得る。
【００６０】
逆量子化ユニット５８および逆変換ユニット６０は、それぞれ逆量子化および逆変換を適用して、たとえば参照ブロックとして後で使用するために、ピクセル領域において残差ブロックを再構成する。動き補償ユニット４４は、残差ブロックを参照フレームバッファ６４のフレームのうちの１つの予測ブロックに加算することによって参照ブロックを計算し得る。動き補償ユニット４４はまた、再構成された残差ブロックに１つまたは複数の補間フィルタを適用して、動き推定において使用するサブ整数ピクセル値を計算し得る。加算器６２は、再構成された残差ブロックを、動き補償ユニット４４によって生成された動き補償予測ブロックに加算して、再構成されたビデオブロックを生成する。
【００６１】
ＳＡＯユニット４３は、現在のパーティションについてのオフセットタイプとオフセット値とを判断し、再構成されたビデオブロック（すなわち、現在のパーティション）のピクセルにオフセット値を加算し、デコーダが使用する符号化ビデオビットストリーム中で適応オフセットシンタックスをシグナリングする。オフセット値をもつ再構成されたビデオブロックは、次いで、参照フレームバッファ６４に記憶される。再構成されたビデオブロックは、後続のビデオフレーム中のブロックをインターコーディングするために動き推定ユニット４２および動き補償ユニット４４によって参照ブロックとして使用され得る。
【００６２】
場合によっては、オフセット情報（すなわち、オフセットタイプおよびオフセット値）はそれらをそのまま、すなわち、他のパーティションへの予測または参照なしに送ることによって、符号化ビデオビットストリーム中でシグナリングされる。しかしながら、この技法は、効率の向上のためにオフセットタイプとオフセット値とのコーディングにおいて活用され得る、異なるパーティション間の可能な相関を利用することができない。本開示は、以下の技法が、オフセットタイプおよび値をコーディングするために潜在的な相関を利用することを提案する。
【００６３】
初めに、オフセットタイプとオフセット値とがスライスレベルで適用されるのか、パーティションレベルで適用されるのかが判断される。すなわち、エンコーダは、全スライスが１つのオフセットタイプとオフセット値とを有するかどうか（スライスベース）、または各パーティションがそれ自体のオフセットタイプおよび値を有するかどうか（パーティションベース）を選定し得る。スライスベースのオフセットが選定された場合、オフセットタイプとオフセット値とは予測なしにデコーダに送られ、その場合、オフセット値は、スライスレベルシンタックス（たとえば、スライスヘッダ）中で送られ得、そのスライス内のＣＵのために使用され得る。そうではなく、パーティションベースのオフセットが選択された場合、エンコーダは、オフセット情報のマージベースシグナリングまたは予測ベースシグナリングを採用し得る。
【００６４】
ＳＡＯユニット４３は、符号化ビデオビットストリーム中で、オフセットタイプおよび値を現在のパーティションについてのネイバーパーティションから単にコピーするようにデコーダに命令するマージ命令をシグナリングし得る。代替的に、ＳＡＯユニット４３は、符号化ビデオビットストリーム中で、現在のパーティションについてのオフセットタイプとオフセット値とを判断するための予測技法を適用するようにデコーダに命令する予測命令をシグナリングし得る（マージなし）。
【００６５】
現在のパーティションについてのオフセット情報のマージベースシグナリングと予測ベースシグナリングの両方は、現在のパーティションに対する隣接パーティションのオフセット情報を利用(relay on)し得る。図６は、オフセット情報をシグナリングする際に使用される潜在的なネイバーパーティションを示す概念図である。ネイバーパーティションは、通常、因果的方式(casual fashion)（すなわち、デコーダによってすでに復号されたネイバーパーティション）で導出される。ネイバーパーティションのロケーションの例としては、現在のパーティションに対する上（Ｕ）パーティション、左（Ｌ）パーティション、左上（ＵＬ）パーティション、および右上（ＵＲ）パーティションがある。ネイバーパーティションは、現在のパーティションに直接隣接し得る。別の例では、ネイバーパーティションは、現在のパーティションからより遠くに離れているが、同じコーディングユニット中に（たとえば、同じＬＣＵ内に）あり得る。
【００６６】
潜在的なマージ候補であるネイバーパーティションは、同じオフセットタイプをもつ利用可能な（すなわち、因果的）ネイバーパーティションである。たとえば、現在のパーティションのオフセットタイプがエッジオフセットタイプ０（ＥＯ０）である場合、オフセットタイプＥＯ０をもつ因果的ネイバーパーティションは、マージ候補であると見なされる。
【００６７】
４分木ベース区分が使用されるときに利用可能なネイバーパーティションを判断するとき、異なるケースが適用され得る。図６に、同じサイズの直接（すなわち、隣接）ネイバーパーティションが同じオフセットタイプを有するケース１を示す。ケース２では、ネイバーの親（すなわち、現在のパーティションよりも大きいサイズのパーティション）は、同じオフセットタイプを有する。ケース３では、同じサイズの直接ネイバーパーティションは、同じオフセットタイプを有しないが、直接ネイバーパーティションのネイバーパーティションは、同じオフセットタイプを有する。これらの３つの場合の各々は、サンプル適応オフセットマージモードのために使用され得るネイバーパーティションの例を示している。
【００６８】
現在のパーティションについてのオフセットタイプとオフセット値とを判断した後に、ＳＡＯユニット４３は、現在のパーティションのオフセットタイプおよびオフセット値をネイバーパーティションと比較する。ネイバーパーティションのうちの１つが、現在のパーティションと同じオフセットタイプとオフセット値とを有するとき、マージモードが使用される。
【００６９】
図７Ａは、マージモードでの適応オフセットシンタックスコーディングの一例の概念図である。「マージ」フラグ１（たとえば、マージの場合は１、およびマージなしの場合は０、またはその逆も同様）は、デコーダが隣接パーティションのオフセットタイプと現在のパーティションについてのオフセット値とをコピーすべきかどうか（すなわち、マージプロセスを実行すべきかどうか）を示すために符号化ビデオビットストリーム中でシグナリングされる。マージフラグは、オフセットが使用可能である利用可能なネイバーがないとき、０（すなわち、マージなし）であると推測され得ることに留意されたい。
【００７０】
マージが使用された（すなわち、マージフラグが１に設定された）場合、マージフラグ１に加えて、ＳＡＯユニット４３は、オフセット情報（すなわち、オフセットタイプおよび値）がビデオ復号中に現在のパーティションにコピーされることになる、ネイバーパーティションのインデックスを示すネイバーパーティションインデックス３をデコーダにシグナリングする。ネイバーパーティションインデックスのシグナリングは、（マージ候補とも呼ばれる）異なる利用可能なネイバーパーティションの数に依存する。ネイバーパーティションインデックスは、マージ候補が１つしかないとき、送られないことがある。その状況では、デコーダは、唯一のマージ候補のインデックスを推論し得る。
【００７１】
ＳＡＯユニット４３が、現在のパーティションのオフセット情報をネイバーパーティションのすべてと比較し、正確な一致を発見しない場合、マージは使用されない。マージなしが使用された（すなわち、マージフラグが０に設定された）場合、予測タイプは、（たとえば、ｐｒｅｄ＿ｔｙｐｅフラグを使用して）デコーダに送られる。本開示は、３つの可能な予測タイプを提案する。
【００７２】
図７Ｂは、第１の予測モードでの適応オフセットシンタックスコーディングの一例の概念図である。ネイバーパーティションのオフセット値が、現在のパーティションのオフセット値と同等でないが、ビットレート効率が残差オフセット値を送ることによって達成され得るように十分に近接しているとＳＡＯユニット４３が判断した場合、第１の予測命令（すなわち、ｐｒｅｄ＿ｔｙｐｅ０）が送られ得る。ｐｒｅｄ＿ｔｙｐｅ０の使用は、残差オフセット値を送ることによって達成されるビットレートを、現在のパーティションのオフセット値をそのまま送ることによるビットレートと比較することによって判断され得る。
【００７３】
第１の予測命令の場合、ｐｒｅｄ＿ｔｙｐｅフラグ５は、０に設定される。ネイバーパーティションインデックス７は、予測ネイバーパーティションのインデックスである。マージモードと同様に、ｐｒｅｄ＿ｔｙｐｅ０は、現在のパーティションの同じオフセットタイプを有するネイバーパーティションを使用する。デコーダは、復号プロセス中に現在のパーティションについてのオフセットタイプをネイバーパーティションから単にコピーし得る。また、残差オフセット値９は、符号化ビデオビットストリーム中でシグナリングされる。残差オフセット値は、選択されたネイバーパーティションのオフセット値から、現在のパーティションについて判断されたオフセット値を減算することによって作成される。次いで、デコーダは、現在のパーティションについてのオフセット値を再構成するために、ネイバーパーティションインデックス７によって示されるネイバーパーティションのオフセット値に受信された残差オフセット値を単に加算し得る。予測候補として利用可能なネイバーパーティションは、図６に関して上記で説明したマージモードの場合と同様に導出され得る。利用可能なネイバーパーティションが１つしかない場合、ネイバーパーティションインデックスは、シグナリングされないことがあるが、代わりにデコーダによって推測され得る。
【００７４】
ネイバーパーティションが、残差を送ることによってコーディング効率を達成するために現在のパーティションのオフセット値に十分に近接したオフセット値を有しない状況では、第２の予測命令（ｐｒｅｄ＿ｔｙｐｅ１）が符号化ビデオビットストリーム中でシグナリングされ得る。図７Ｃは、第２の予測モードでの適応オフセットシンタックスコーディングの一例の概念図である。ｐｒｅｄ＿ｔｙｐｅ１では、現在のパーティションについてのオフセットタイプ１１とオフセット値１３の両方がそのまま符号化ビットストリーム中でシグナリングされる。本質的に、デコーダは、このモードでネイバーパーティションを参照する必要がないが、現在のパーティションについてのオフセットタイプとオフセット値とを単に受信し得る。
【００７５】
第３の予測命令（ｐｒｅｄ＿ｔｙｐｅ２）は、現在のパーティションのオフセット値が隣接パーティションと同じであるが、オフセットタイプは異なるとＳＡＯユニット４３が判断した状況で送られ得る。図７Ｄは、第３の予測モードでの適応オフセットシンタックスコーディングの一例の概念図である。この場合、ネイバーパーティションインデックス７は、現在のパーティションについてのオフセット値をそこからコピーすべき隣接パーティションを示す。さらに、現在のパーティションについてのオフセットタイプ１１も符号化ビデオビットストリーム中でシグナリングされる。これは、オフセット値のみがネイバーパーティションからコピーされ、オフセットタイプがコピーされないので、マージフラグとはわずかに異なることに留意されたい。予測タイプ２の場合の予測候補の導出は、予測タイプ０およびマージモードの場合の予測候補の導出とはわずかに異なる。同じオフセットタイプをもつ因果的ネイバーを考慮する代わりに、予測タイプ２は、異なるオフセットタイプをもつネイバーパーティションを考慮する。たとえば、現在のパーティションのオフセットタイプがエッジオフセットタイプ０（ＥＯ０）である場合、ＥＯ１／２／３をもつネイバーは、予測候補であると見なされる。
【００７６】
図８は、符号化ビデオシーケンスを復号するビデオデコーダ３０の一例を示すブロック図である。図８の例では、ビデオデコーダ３０は、エントロピー復号ユニット７０と、動き補償ユニット７２と、イントラ予測ユニット７４と、逆量子化ユニット７６と、逆変換ユニット７８と、参照フレームバッファ８２と、ＳＡＯユニット７９と、加算器８０とを含む。ビデオデコーダ３０は、いくつかの例では、ビデオエンコーダ２０（図５参照）に関して説明した符号化パスとは概して逆の(reciprocal)復号パスを実行し得る。
【００７７】
エントロピー復号ユニット７０は、変換係数の１次元アレイを取り出すために、符号化ビットストリームに対してエントロピー復号プロセスを実行する。使用されるエントロピー復号プロセスは、ビデオエンコーダ２０によって使用されたエントロピーコーディング（たとえば、ＣＡＢＡＣ、ＣＡＶＬＣなど）に依存する。エンコーダによって使用されたエントロピーコーディングプロセスは、符号化ビットストリーム中でシグナリングされるか、または所定のプロセスであり得る。
【００７８】
いくつかの例では、エントロピー復号ユニット７０（または逆量子化ユニット７６）は、ビデオエンコーダ２０のエントロピー符号化ユニット５６（または量子化ユニット５４）によって使用された走査モードをミラーリングする走査を使用して受信値を走査し得る。係数の走査は逆量子化ユニット７６において実行され得るが、走査については、例示のために、エントロピー復号ユニット７０によって実行されるものとして説明する。さらに、説明しやすいように別個の機能ユニットとして示されているが、ビデオデコーダ３０のエントロピー復号ユニット７０、逆量子化ユニット７６、および他のユニットの構造および機能は互いに高度に統合され得る。
【００７９】
逆量子化ユニット７６は、ビットストリーム中で与えられ、エントロピー復号ユニット７０によって復号された、量子化変換係数を逆量子化（inverse quantize）、すなわち、逆量子化（de-quantize）する。逆量子化プロセスは、たとえば、ＨＥＶＣのために提案されたプロセスまたはＨ．２６４復号規格によって定義されたプロセスと同様の、従来のプロセスを含み得る。逆量子化プロセスは、量子化の程度を判断し、同様に、適用されるべき逆量子化の程度を判断するための、ＣＵについてビデオエンコーダ２０によって計算される量子化パラメータＱＰの使用を含み得る。逆量子化ユニット７６は、係数が１次元アレイから２次元アレイに変換される前または変換された後に変換係数を逆量子化し得る。
【００８０】
逆変換ユニット７８は、逆量子化された変換係数に逆変換を適用する。いくつかの例では、逆変換ユニット７８は、ビデオエンコーダ２０からのシグナリングに基づいて、あるいはブロックサイズ、コーディングモードなどの１つまたは複数のコーディング特性から変換を推論することによって、逆変換を判断し得る。いくつかの例では、逆変換ユニット７８は、現在のブロックを含むＬＣＵのための４分木のルートノードにおけるシグナリングされた変換に基づいて、現在のブロックに適用すべき変換を判断し得る。代替的に、変換は、ＬＣＵ４分木中のリーフノードＣＵのためのＴＵ４分木のルートにおいてシグナリングされ得る。いくつかの例では、逆変換ユニット７８は、逆変換ユニット７８が、復号されている現在のブロックの変換係数に２つ以上の逆変換を適用する、カスケード逆変換を適用し得る。
【００８１】
イントラ予測ユニット７４は、シグナリングされたイントラ予測モードと、現在のフレームの前に復号されたブロックからのデータとに基づいて、現在のフレームの現在のブロックについての予測データを生成し得る。
【００８２】
取り出された動き予測方向、参照フレームインデックス、および計算された現在の動きベクトルに基づいて、動き補償ユニットは現在の部分の動き補償ブロックを生成する。これらの動き補償ブロックは、本質的に、残差データを生成するために使用される予測ブロックを再現する。
【００８３】
動き補償ユニット７２は、動き補償ブロックを生成し、場合によっては、補間フィルタに基づいて補間を実行し得る。サブピクセル精度をもつ動き推定に使用されるべき補間フィルタの識別子は、シンタックス要素中に含まれ得る。動き補償ユニット７２は、ビデオブロックの符号化中にビデオエンコーダ２０によって使用された補間フィルタを使用して、参照ブロックのサブ整数ピクセルの補間値を計算し得る。動き補償ユニット７２は、受信されたシンタックス情報に従って、ビデオエンコーダ２０によって使用された補間フィルタを判断し、その補間フィルタを使用して予測ブロックを生成し得る。
【００８４】
さらに、動き補償ユニット７２およびイントラ予測ユニット７４は、ＨＥＶＣの例では、（たとえば、４分木によって与えられる）シンタックス情報の一部を使用して、符号化ビデオシーケンスの（１つまたは複数の）フレームを符号化するために使用されたＬＣＵのサイズを判断し得る。動き補償ユニット７２およびイントラ予測ユニット７４はまた、シンタックス情報を使用して、符号化ビデオシーケンスのフレームの各ＣＵがどのように分割されるか（および、同様に、サブＣＵがどのように分割されるか）を記述する分割情報を判断し得る。シンタックス情報はまた、各分割がどのように符号化されるかを示すモード（たとえば、イントラまたはインター予測、およびイントラ予測の場合はイントラ予測符号化モード）と、各インター符号化ＰＵについての１つまたは複数の参照フレーム（および／またはそれらの参照フレームの識別子を含んでいる参照リスト）と、符号化ビデオシーケンスを復号するための他の情報とを含み得る。
【００８５】
加算器８０は、残差ブロックを、動き補償ユニット７２またはイントラ予測ユニット７４によって生成される対応する予測ブロックと合成して、復号ブロックを形成する。ＳＡＯユニット７９は、エンコーダによって導入されるオフセットを除去する。ＳＡＯユニット７９は、図７Ａ〜図７Ｄに関して上記で説明したシンタックスなど、パーティションについてのオフセット情報を示す受信されたシンタックスに従ってこのプロセスを実行する。
【００８６】
マージ命令が受信された場合、ＳＡＯユニット７９は、ネイバーパーティションインデックス３によって示されるネイバーパーティションから現在のパーティションにオフセット情報をコピーする（図７Ａを参照）。
【００８７】
第１の予測命令（ｐｒｅｄ＿ｔｙｐｅ０）が受信された場合、ＳＡＯユニット７９は、ネイバーパーティションインデックス７によって示されるネイバーパーティションから現在のパーティションにオフセットタイプをコピーする（図７Ｂを参照）。さらに、ＳＡＯユニット７９は、受信された残差オフセット値９を、ネイバーパーティションインデックス７によって示されるネイバーパーティションインデックスのオフセット値に加算して、現在のパーティションについてのオフセット値を再構成する（図７Ｂを参照）。
【００８８】
第２の予測命令（ｐｒｅｄ＿ｔｙｐｅ１）が受信された場合、ＳＡＯユニット７９は、受信されたオフセットタイプ１１とオフセット値１３とを現在のパーティションについてのオフセット情報として使用する（図７Ｃを参照）。
【００８９】
第３の予測命令（ｐｒｅｄ＿ｔｙｐｅ２）が受信された場合、ＳＡＯユニット７９は、ネイバーパーティションインデックス７によって示されるネイバーパーティションから現在のパーティションにオフセット値をコピーする（図７Ｄを参照）。さらに、ＳＡＯユニット７９は、受信されたオフセットタイプ１１を現在のパーティションについてのオフセットタイプとして使用する。
【００９０】
所望される場合、ブロッキネスアーティファクトを除去するために、復号ブロックをフィルタ処理するためにデブロッキングフィルタも適用され得る。また、追加のフィルタ処理は、ループ内またはループ後(post-loop)のいずれかに適用され得る。復号ビデオブロックは、次いで、参照フレームバッファ８２に記憶され、参照フレームバッファ８２は、その後の動き補償のための参照ブロックを与え、また、（図４のディスプレイデバイス３２などの）ディスプレイデバイス上での提示のために復号ビデオを生成する。ループ内フィルタ処理が適用された場合、後続の動き補償のために記憶された復号ビデオブロックは、フィルタ処理されたブロックであるが、ループ後フィルタ処理が適用された場合、後続の動き補償のために記憶された復号ビデオブロックは、フィルタ処理されていないブロックである。
【００９１】
図９は、サンプル適応オフセットを使用してビデオを符号化する例示的な方法を示すフローチャートである。他のデバイスも図９の技法を実行し得るが、図９の方法について、図５に示したビデオエンコーダ２０の観点から説明する。図９に示すように、ビデオエンコーダ２０は、ビデオ符号化プロセスにおいてサンプル適応オフセット値を符号化するように構成され得る。ビデオエンコーダ２０は、現在のパーティションについてのオフセット情報を判断し得（１２０）、現在のパーティションのオフセット情報を１つまたは複数のネイバーパーティションのオフセット情報と比較し得る（１２２）。オフセット情報は、オフセットタイプとオフセット値とを含み得る。ビデオエンコーダ２０は、１つまたは複数のネイバーパーティションのうちの１つのオフセット情報が現在のパーティションのオフセット情報と同じである場合、マージ命令をコーディングする（１２４）。ビデオエンコーダ２０は、１つまたは複数のネイバーパーティションのオフセット情報が現在のパーティションのオフセット情報と同じでない場合、複数の予測命令のうちの１つをコーディングする（１２４）。
【００９２】
マージ命令は、現在のパーティションについての１つまたは複数のネイバーパーティションのうちの１つのオフセット情報をコピーするようにデコーダに命令する。マージ命令は、マージフラグと、現在のパーティションと同じオフセット情報をもつ１つまたは複数のネイバーパーティションのうちの１つのインデックスとを含み得る。
【００９３】
一例では、複数の予測のうちの１つをコーディングすることは、１つまたは複数のネイバーパーティションのうちの１つのオフセット情報から現在のパーティションについてのオフセット情報を導出するようにデコーダに命令する第１の予測命令をコーディングすることを含み得る。第１の予測命令は、１つまたは複数のネイバーパーティションのうちの１つのインデックスと、オフセット残差値とを含み得、オフセット残差値は、１つまたは複数のネイバーパーティションのうちの１つのオフセット値から現在のパーティションのオフセット値を減算することによって作成される。ビデオエンコーダ２０は、オフセット残差値を送ることによってビットレート効率が達成され得る場合に第１の予測をコーディングし得る。
【００９４】
別の例では、複数の予測命令のうちの１つをコーディングすることは、現在のパーティションについてのオフセット情報を含む第２の予測命令をコーディングすることを含む。ビデオエンコーダ２０は、オフセット残差値を送ることによってビットレート効率が達成され得ない場合に第２の予測命令をコーディングし得る。
【００９５】
別の例では、複数の予測命令のうちの１つをコーディングすることは、オフセット値をそこからコピーすべき１つまたは複数のネイバーパーティションのうちの１つのインデックスを含み、現在のパーティションについてのオフセットタイプをも含む第３の予測命令をコーディングすることを含む。
【００９６】
図１０は、サンプル適応オフセットを使用してビデオを復号する例示的な方法を示すフローチャートである。他のデバイスも図１０の技法を実行し得るが、図１０の方法について、図８に示したビデオデコーダ３０の観点から説明する。図１０に示すように、ビデオデコーダ３０は、ビデオ復号プロセスにおいてサンプル適応オフセット値を復号するように構成され得る。ビデオデコーダは、現在のパーティションについて、マージ命令、または複数の予測命令のうちの１つを受信するように構成され得る（１３０）。ビデオデコーダは、マージ命令が受信された場合、オフセット情報をネイバーパーティションから現在のパーティションにコピーするように構成される（１３２）。マージ命令は、マージフラグとネイバーパーティションのインデックスとを含む。オフセット情報は、オフセットタイプとオフセット値とを含み得る。
【００９７】
ビデオデコーダはまた、複数の予測命令のうちの１つが受信された場合、現在のパーティションについてのオフセット予測プロセスを実行するように構成される（１３４）。
【００９８】
複数の予測命令は、第１、第２、および第３の予測命令を含み得る。第１の予測命令が受信された場合、オフセット予測プロセスが、１つまたは複数のネイバーパーティションのうちの１つのオフセット情報から現在のパーティションについてのオフセット情報を導出する。第１の予測命令は、１つまたは複数のネイバーパーティションのうちの１つのインデックスとオフセット残差値とを含み得る。ビデオデコーダ２０は、１つのネイバーパーティションのオフセット値をオフセット残差値に加算することによって、現在のパーティションについてのオフセット値を導出する。
【００９９】
第２の予測命令が受信された場合、ビデオデコーダ２０はまた、オフセット情報を受信する。受信されたオフセット情報は、現在のパーティションのために使用される。
【０１００】
第３の予測命令が受信された場合、ビデオデコーダ２０はまた、オフセット値をそこからコピーすべき１つまたは複数のネイバーパーティションのうちの１つのインデックスを受信し、オフセットタイプをも受信する。ビデオデコーダ２０は、現在のパーティションについての１つのネイバーパーティションからのオフセット値をコピーすることによって、ならびに現在のパーティションに受信されたオフセットタイプを割り当てることによって、現在のパーティションについてのオフセット情報を導出することによってオフセット予測プロセスを実行する。
【０１０１】
１つまたは複数の例では、説明した機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。ソフトウェアで実装される場合、機能は、１つまたは複数の命令またはコードとしてコンピュータ可読媒体上に記憶されるか、あるいはコンピュータ可読媒体を介して送信され、ハードウェアベースの処理ユニットによって実行され得る。コンピュータ可読媒体は、たとえば、通信プロトコルに従って、ある場所から別の場所へのコンピュータプログラムの転送を可能にする任意の媒体を含むデータ記憶媒体または通信媒体などの有形媒体に対応するコンピュータ可読記憶媒体を含み得る。このようにして、コンピュータ可読媒体は、概して、（１）非一時的である有形コンピュータ可読記憶媒体、あるいは（２）信号または搬送波などの通信媒体に対応し得る。データ記憶媒体は、本開示で説明した技法の実装のための命令、コードおよび／またはデータ構造を取り出すために１つまたは複数のコンピュータあるいは１つまたは複数のプロセッサによってアクセスされ得る任意の利用可能な媒体であり得る。コンピュータプログラム製品はコンピュータ可読媒体を含み得る。
【０１０２】
限定ではなく例として、そのようなコンピュータ可読記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭまたは他の光ディスクストレージ、磁気ディスクストレージ、または他の磁気ストレージデバイス、フラッシュメモリ、あるいは命令またはデータ構造の形態の所望のプログラムコードを記憶するために使用され得、コンピュータによってアクセスされ得る、任意の他の媒体を備えることができる。また、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。たとえば、命令が、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線（ＤＳＬ）、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、ＤＳＬ、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。ただし、コンピュータ可読記憶媒体およびデータ記憶媒体は、接続、搬送波、信号、または他の一時媒体を含まないが、代わりに非一時的有形記憶媒体を対象とすることを理解されたい。本明細書で使用するディスク（disk）およびディスク（disc）は、コンパクトディスク（disc）（ＣＤ）、レーザーディスク（登録商標）（disc）、光ディスク（disc）、デジタル多用途ディスク（disc）（ＤＶＤ）、フロッピー（登録商標）ディスク（disk）、およびブルーレイ（登録商標）ディスク（disc）を含み、ディスク（disk）は、通常、データを磁気的に再生し、ディスク（disc）は、データをレーザーで光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲内に含まれるべきである。
【０１０３】
命令は、１つまたは複数のデジタル信号プロセッサ（ＤＳＰ）などの１つまたは複数のプロセッサ、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブル論理アレイ（ＦＰＧＡ）、あるいは他の等価な集積回路またはディスクリート論理回路によって実行され得る。したがって、本明細書で使用する「プロセッサ」という用語は、前述の構造、または本明細書で説明した技法の実装に好適な他の構造のいずれかを指し得る。さらに、いくつかの態様では、本明細書で説明した機能は、符号化および復号のために構成された専用のハードウェアおよび／またはソフトウェアモジュール内に与えられ得、あるいは複合コーデックに組み込まれ得る。また、本技法は、１つまたは複数の回路または論理要素中に十分に実装され得る。
【０１０４】
本開示の技法は、ワイヤレスハンドセット、集積回路（ＩＣ）、またはＩＣのセット（たとえば、チップセット）を含む、多種多様なデバイスまたは装置において実装され得る。本開示では、開示する技法を実行するように構成されたデバイスの機能的態様を強調するために様々なコンポーネント、モジュール、またはユニットについて説明したが、それらのコンポーネント、モジュール、またはユニットを、必ずしも異なるハードウェアユニットによって実現する必要はない。むしろ、上記で説明したように、様々なユニットが、好適なソフトウェアおよび／またはファームウェアとともに、上記で説明した１つまたは複数のプロセッサを含めて、コーデックハードウェアユニットにおいて組み合わせられるか、または相互動作(interoperative)ハードウェアユニットの集合によって与えられ得る。
【０１０５】
様々な例について説明した。これらおよび他の例は以下の特許請求の範囲内に入る。
【図１】
2014516217.tif 000003
【図２】
2014516217.tif 000004
【図３】
2014516217.tif 000005
【図４】
2014516217.tif 000006
【図５】
2014516217.tif 000007
【図６】
2014516217.tif 000008
【図７Ａ】
2014516217.tif 000009
【図７Ｂ】
2014516217.tif 000010
【図７Ｃ】
2014516217.tif 000011
【図７Ｄ】
2014516217.tif 000012
【図８】
2014516217.tif 000013
【図９】
2014516217.tif 000014
【図１０】
2014516217.tif 000015
【国際調査報告】
2014516217.tif 000016
2014516217.tif 000017