(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-09
(45)【発行日】2024-12-17
(54)【発明の名称】標本の領域の結合
(51)【国際特許分類】
H04N 19/13 20140101AFI20241210BHJP
H04N 19/147 20140101ALI20241210BHJP
H04N 19/176 20140101ALI20241210BHJP
H04N 19/70 20140101ALI20241210BHJP
【FI】
H04N19/13
H04N19/147
H04N19/176
H04N19/70
【外国語出願】
(21)【出願番号】P 2023097339
(22)【出願日】2023-06-13
(62)【分割の表示】P 2022151363の分割
【原出願日】2011-04-13
【審査請求日】2023-07-11
(32)【優先日】2010-04-13
(33)【優先権主張国・地域又は機関】EP
(31)【優先権主張番号】PCT/EP2010/054833
(32)【優先日】2010-04-13
(33)【優先権主張国・地域又は機関】EP
(73)【特許権者】
【識別番号】515089080
【氏名又は名称】ジーイー ビデオ コンプレッション エルエルシー
【住所又は居所原語表記】1 Research Circle,Niskayuna,NY 12309,USA
(74)【代理人】
【識別番号】100079577
【氏名又は名称】岡田 全啓
(72)【発明者】
【氏名】ヘッレ,フィリップ
(72)【発明者】
【氏名】ウディン,ジモン
(72)【発明者】
【氏名】ヴィンケン,マルティン
(72)【発明者】
【氏名】マルペ,デトレフ
(72)【発明者】
【氏名】ヴィーガント,トーマス
【審査官】岩井 健二
(56)【参考文献】
【文献】特開2010-081465(JP,A)
【文献】特開2010-045853(JP,A)
【文献】特開2009-010943(JP,A)
【文献】特開2008-311781(JP,A)
【文献】国際公開第2009/001864(WO,A1)
【文献】国際公開第2008/156548(WO,A1)
【文献】国際公開第2008/127597(WO,A2)
【文献】Joel Jung and Guillaume Laroche,ITU - Telecommunications Standardization Sector STUDY GROUP 16 Question 6 Video Coding Experts Group,Competition-Based Scheme for Motion Vector Selection and Coding,VCEG-AC06,29th Meeting: Klagenfurt, Austria,2006年07月,pp.1-7
【文献】Marco Tagliasacchi et al.,MOTION ESTIMATION BY QUADTREE PRUNING AND MERGING,Multimedia and Expo, 2006 IEEE International Conference on,IEEE,2006年07月09日,pp.1861-1864
【文献】Raffaele De Forni and David S. Taubman,ON THE BENEFITS OF LEAF MERGING IN QUAD-TREE MOTION MODELS,Image Processing, 2005. ICIP 2005. IEEE International Conference on,IEEE,2005年09月14日,pp.858-861
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/00 - 19/98
(57)【特許請求の範囲】
【請求項1】
2次元の情報信号が符号化されているデータストリームを復号化するためのデコーダであって、
再帰的にマルチパーティション化することによって、前記2次元の情報信号の空間的なサンプリングを表す情報標本の配列を、前記データストリームに含まれる構文要素の第1の部分集合に応じて異なるサイズの複数の単連結領域に空間的に細分割するように構成される細分割部と、
前記第1の部分集合とは分離された、前記データストリーム内の構文要素の第2の部分集合に依存して、既定の単連結領域を前記複数の単連結領域のうちの空間的に近接する単連結領域をマージするように構成されるマージ部と、
前記既定の単連結領域がマージされている、前記近接する単連結領域から、前記既定の単連結領域のための符号化パラメータを採用または予測することにより、前記情報標本の配列を前記データストリームから再構築するように構成される再構築部と
をさらに備え、
前記構文要素の第2の部分集合は、コンテキストモデリングを使用してエントロピー符号化される、マージ情報を定義するビンのシーケンスにより前記マージ情報を定義し、前記ビンのシーケンスのうちの一部のビンについてのコンテキストモデルは近接する単連結領域の伝送済みの構文要素に基づいて導出され、前記ビンのシーケンスのうちの他のビンは固定のコンテキストモデルにより符号化され、
前記2次元の情報信号はビデオの画像であり、前記デコーダはビデオデコーダである、デコーダ。
【請求項2】
前記データストリームは深度情報を含む、請求項
1に記載のデコーダ。
【請求項3】
前記データストリームは、各画像が輝度標本の配列を1つと彩度標本の配列2つを含む画像のシーケンスを符号化しており、前記輝度標本の配列に対する前記彩度標本の配列の水平方向の空間解像度のスケーリングファクタは、垂直方向の空間解像度のスケーリングファクタと異なる、請求項
1に記載のデコーダ。
【請求項4】
前記情報標本の配列は、異なるカラーコンポーネントに関連し且つ画像の色平面を形成する標本の配列のうちの1つであって、前記デコーダは前記画像の異なる前記色平面を独立して復号化するように構成される、請求項
1に記載のデコーダ。
【請求項5】
2次元の情報信号が符号化されているデータストリームを復号化する方法であって、
再帰的にマルチパーティション化することによって、前記2次元の情報信号の空間的なサンプリングを表す情報標本の配列を、前記データストリームに含まれる構文要素の第1の部分集合に依存して異なるサイズの複数の単連結領域に空間的に細分割するステップと、
前記第1の部分集合とは分離された、前記データストリーム内の構文要素の第2の部分集合に依存して、既定の端連結領域を前記複数の単連結領域のうちの空間的に近接する単連結領域をマージするステップと、
前記情報標本の配列を前記データストリームから再構築するとともに、前記既定の単連結領域がマージされている、前記近接する単連結領域から、前記既定の単連結領域のための符号化パラメータを採用または予測するステップと
を含み、
前記構文要素の第2の部分集合は、コンテキストモデリングを使用してエントロピー符号化される、マージ情報を定義するビンのシーケンスにより前記マージ情報を定義し、前記ビンのシーケンスのうちの一部のビンについてのコンテキストモデルは近接する単連結領域の伝送済みの構文要素に基づいて導出され、前記ビンのシーケンスのうちの他のビンは固定のコンテキストモデルにより符号化され、
前記2次元の情報信号はビデオの画像であり、復号化はビデオ復号化である、
方法。
【請求項6】
前記データストリームは深度情報を含む、請求項
5に記載の方法。
【請求項7】
前記データストリームは、各画像が輝度標本の配列を1つと彩度標本の配列2つを含む画像のシーケンスを符号化しており、前記輝度標本の配列に対する前記彩度標本の配列の水平方向の空間解像度のスケーリングファクタは、垂直方向の空間解像度のスケーリングファクタと異なる、請求項
5に記載の方法。
【請求項8】
前記情報標本の配列は、異なるカラーコンポーネントに関連し且つ画像の色平面を形成する標本の配列のうちの1つであって、前記画像の異なる前記色平面は独立して復号化される、請求項
5に記載の方法。
【請求項9】
2次元の情報信号が符号化されているデータストリームを生成するためのエンコーダであって、
再帰的にマルチパーティション化することによって、前記2次元の情報信号の空間的なサンプリングを表す情報標本の配列の、異なるサイズの複数の単連結領域への空間的な細分割を定義する構文要素の第1の部分集合と、既定の単連結領域と空間的に近接する単連結領域とのマージを定義する、前記第1の部分集合とは分離された構文要素の第2の部分集合とを決定するように構成される細分割/マージ器と、
前記情報標本の配列を前記データストリームに符号化するとともに構文要素の前記第1および第2の部分集合をデータストリームに挿入するように構成されるデータストリーム生成部であって、前記既定の単連結領域のための符号化パラメータは、前記構文要素の第2の部分集合により、前記既定の単連結領域がマージされている近接する単連結領域から採用または予測されることが示され、前記構文要素の第2の部分集合は、コンテキストモデリングを使用してエントロピー符号化される、マージ情報を定義するビンのシーケンスによって前記マージ情報を定義し、前記ビンのシーケンスの一部のビンについてのコンテキストモデルは近接する単連結領域の伝送済みの構文要素に基づいて導出される一方で、前記ビンのシーケンスの他のビンは固定のコンテキストモデルで符号化される、データストリーム生成部と、
を備え、
前記2次元の情報信号はビデオの画像であり、前記エンコーダはビデオエンコーダである、エンコーダ。
【請求項10】
前記データストリームは深度情報を含む、請求項
9に記載のエンコーダ。
【請求項11】
前記データストリームは、各画像が輝度標本の配列を1つと彩度標本の配列2つを含む画像のシーケンスを符号化しており、前記輝度標本の配列に対する前記彩度標本の配列の水平方向の空間解像度のスケーリングファクタは、垂直方向の空間解像度のスケーリングファクタと異なる、請求項
9に記載のエンコーダ。
【請求項12】
前記情報標本の配列は、異なるカラーコンポーネントに関連し且つ画像の色平面を形成する標本の配列のうちの1つであって、前記エンコーダは、前記画像の異なる前記色平面は独立して符号化するように構成される、請求項
9に記載のエンコーダ。
【請求項13】
2次元の情報信号によって符号化されているデータストリームを生成するための方法であって、
再帰的にマルチパーティション化することによって、前記2次元の情報信号の空間的なサンプリングを表す情報標本の配列の、異なるサイズの複数の単連結領域への空間的な細分割を定義する構文要素の第1の部分集合と、既定の単連結領域と空間的に近接する単連結領域とのマージを定義する、前記第1の部分集合とは分離された構文要素の第2の部分集合とを決定するステップと、
前記情報標本の配列を前記データストリームに符号化するとともに構文要素の前記第1および第2の部分集合をデータストリームへ挿入するステップであって、前記既定の単連結領域のための符号化パラメータは、前記構文要素の第2の部分集合により、前記既定の単連結領域がマージされている近接する単連結領域から採用または予測されることが示され、前記構文要素の第2の部分集合は、コンテキストモデリングを使用してエントロピー符号化される、マージ情報を定義するビンのシーケンスによって前記マージ情報を定義し、前記ビンのシーケンスの一部のビンについてのコンテキストモデルは近接する単連結領域の伝送済みの構文要素に基づいて導出される一方で、前記ビンのシーケンスの他のビンは固定のコンテキストモデルで符号化される、ステップと、
を含み、
前記2次元の情報信号はビデオの画像であり、前記データストリームは前記ビデオを符号化している、方法。
【請求項14】
前記データストリームは深度情報を含む、請求項
13に記載の方法。
【請求項15】
前記データストリームは、各画像が輝度標本の配列を1つと彩度標本の配列2つを含む画像のシーケンスを符号化しており、前記輝度標本の配列に対する前記彩度標本の配列の水平方向の空間解像度のスケーリングファクタは、垂直方向の空間解像度のスケーリングファクタと異なる、請求項
13に記載の方法。
【請求項16】
前記情報標本の配列は、異なるカラーコンポーネントに関連し且つ画像の色平面を形成する標本の配列のうちの1つであって、前記画像の異なる前記色平面は独立して符号化される、請求項
13に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、動画または静止画像などの2次元でサンプリングされた情報信号についての符号化体系に関する。
【背景技術】
【0002】
通常、画像および動画の符号化においては、画像、または、画像内の特定の標本配列の集合がブロックに分解され、特定の符号化パラメータに関連付けられる。通常、画像は、複数の標本配列で構成される。さらに、画像が、たとえば、透明度の情報や深度のマップなどを指定する追加の補助的な標本配列に関連付けられている場合もある。画像の標本配列(補助的な標本配列を含む)は、1つ以上のいわゆる平面グループにグループ化でき、各平面グループは、1つ以上の標本配列で構成される。画像の平面グループは、独立して符号化でき、また、その画像が複数の平面グループに関連付けられている場合は、同じ画像の他の平面グループからの予測によって符号化できる。通常、各平面グループは、ブロックに分解される。ブロック(または標本配列の対応するブロック)は、画像間での予測または画像内での予測のどちらかによって予測が行われる。ブロックはさまざまなサイズになる場合があり、正方形または長方形のどちらかとなる。ブロックへの画像の区分化は、構文によって固定でき、あるいは、(少なくとも一部について)ビットストリーム内で信号を送信することも可能である。多くの場合、所定のサイズのブロックについての細分割の信号を送信する構文要素が伝送される。そういった構文要素によって、ブロックがより小さいブロックに細分割され、予測の目的などで符号化パラメータに関連付けられるか否か、および、その方法を指定できる。ブロック(または標本配列の対応するブロック)の全ての標本について、関連付けられている符号化パラメータの復号化が特定の方法で指定される。たとえば、参照インデックス(符号化済みの画像の集合の中で参照画像を特定)、運動パラメータ(参照画像と現在の画像との間のブロックの動きの量を指定)、補間フィルタやイントラ予測モードなどの指定のためのパラメータなどの、同じ予測パラメータの集合を使用して、ブロック内の全ての標本の予測が行われる。運動パラメータは、水平方向および垂直方向の成分を持った変位ベクトル、または、6つの成分で構成されるアフィン運動パラメータなどの高次の運動パラメータによって表すことができる。また、単一のブロックに、特定の予測パラメータ(参照インデックスや運動パラメータなど)の1つ以上の集合を複数関連付けることも可能である。その場合、これらの特定の予測パラメータのそれぞれの集合について、ブロック(または標本配列の対応するブロック)についての単一の中間予測信号が生成され、中間予測信号の重ね合わせを含む組合せによって最終予測信号が形成される。対応する重み付けパラメータは、場合によって一定のオフセット(加重和に追加される)とともに、画像、参照画像、または、参照画像の集合のいずれかについて固定でき、あるいは、対応するブロックについての予測パラメータの集合に含むこともできる。元のブロック(または標本配列の対応するブロック)と予測信号との間の差は、残差信号とも呼ばれ、通常、変換と量子化が行われる。多くの場合、残差信号(または残差ブロックの対応する標本配列)に2次元変換が適用される。変換符号化のために、予測パラメータの特定の集合が使用されているブロック(または標本配列の対応するブロック)は、変換の適用前にさらに分割することができる。変換ブロックは、予測に使用されるブロックと同じサイズか、または、より小さくなる。また、変換ブロックは、予測に使用されるブロックを複数含むことも可能である。各変換ブロックはさまざまなサイズになる場合があり、正方形または長方形のブロックとなる。変換後、結果として得られる変換係数が量子化され、いわゆる変換係数レベルが得られる。変換係数レベルおよび予測パラメータと、存在する場合は細分割情報が、エントロピー符号化される。
【発明の概要】
【発明が解決しようとする課題】
【0003】
画像および動画の符号化の規格において、構文によって提供される、ブロックへの画像(または平面グループ)の細分割の可能性は、非常に限定されている。通常、指定できるのは、所定のサイズのブロックをより小さいブロックに細分割できるか否か、および、(場合によってその方法)のみである。たとえば、H.264では最大ブロックサイズは16×16である。16×16のブロックはマクロブロックとも呼ばれ、各画像は最初のステップでマクロブロックに区分化される。16×16のマクロブロックのそれぞれについて、16×16のブロック、2つの16×8のブロック、2つの8×16のブロック、または4つの8×8のブロックのうちのどれで符号化されるかを情報伝達(シグナリング)することができる。16×16のブロックが4つの8×8のブロックに細分割される場合は、これらの8×8のブロックのそれぞれを、1つの8×8のブロック、2つの8×4のブロック、2つの4×8のブロック、または4つの4×4のブロックのいずれかとして符号化できる。画像および動画の符号化の最新の規格で、ブロックへの区分化を指定する可能性を少なくすることで、細分割情報を伝達(シグナリング)するための付随する情報のレートを小さく抑えられるという利点があるが、以下で説明するように、ブロックの予測パラメータの伝送に必要なビットレートが、大きくなる場合があるというデメリットがある。通常、予測情報の伝達に付随する情報のレートは、ブロックのビットレート全体のかなりの量を占める。そのため、この付随する情報が縮小されると、符号化の効率が向上する可能性があり、たとえば、より大きなブロックサイズを使用することで実現できる可能性がある。実際の画像や動画のシーケンスの画像は、特定の性質を持った任意の形状の物体で構成される。たとえば、そういった物体や物体の一部は、固有のテクスチャや固有の動きによって特徴付けられる。通常、そういった物体や物体の一部に、同じ予測パラメータの集合が適用される。しかし、通常は、物体の境界は、大きな予測ブロック(たとえば、H.264での16×16のマクロブロックなど)の可能なブロックの境界とは一致しない。通常、エンコーダが、特定のレート/歪みの損失量が最小になるように、(限られた可能性の中から)細分割の決定を行う。この結果、任意の形状の物体の場合には、多数の小さなブロックができる可能性がある。これらの小さなブロックのそれぞれは、伝送される必要がある予測パラメータの集合にそれぞれ関連付けられているので、付随する情報のレートが、ビットレート全体のかなりの部分を占めるようになる可能性がある。しかし、その小さなブロックのいくつかは、依然として同じ物体または物体の一部の領域を表すので、得られた多数のブロックの予測パラメータは、同一か、または、非常に類似したものになる。
【0004】
つまり、画像をより小さい部分またはタイルやブロックに細分割したりタイル化したりすると、符号化の効率および符号化の複雑さに大幅に影響を与える。上記で概説したとおり、画像をより小さなブロックへより多く細分割するほど、符号化パラメータの設定を空間的により詳細に行うことができ、これらの符号化パラメータの画像/動画の素材への適応性が向上する。その一方で、符号化パラメータの設定の粒度が高くなるほど、デコーダに必要な設定を通知するために必要な、付随する情報の量がより大きな負荷となる。また、エンコーダが画像/動画を空間的に(さらに)ブロックに細分割できるようにすると、あり得る符号化パラメータの設定の量が大幅に増加し、その結果、一般的に、符号化パラメータの設定に関して最良のレート/歪みの妥協点を見つけることがさらに困難になることに注意する必要がある。
【課題を解決するための手段】
【0005】
空間的にサンプリングされた2次元の情報信号を表す情報標本の配列の符号化を行う符号化体系を提供することを目的とする。情報標本の配列は、動画の画像や静止画像などが対象となるが、これらに限定されない。この符号化体系によって、エンコーディングの複雑さと、達成できるレート/歪み率との間の調整の改善、および/または、レート/歪み率の向上の達成が可能となる。
【0006】
この目的は、特許請求の範囲の独立請求項に記載のデコーダ、エンコーダ、方法、コンピュータプログラム、およびデータストリームによって実現される。
【0007】
実施の形態では、情報標本の配列が細分割されてできる単連結領域の望ましい結合またはグループ化が、符号化され、データ量が削減される。そのために、単連結領域について、所定の相対的な位置関係が定義される。これにより、所定の単連結領域に対して所定の相対的な位置関係にある、複数の単連結領域の中の単連結領域を特定することが、所定の単連結領域について可能になる。すなわち、その数がゼロである場合は、所定の単連結領域についてのマージ指標がデータストリーム内になくてもよい。さらに、所定の単連結領域に対して所定の相対的な位置関係にある単連結領域の数が1の場合は、単連結領域の符号化パラメータが、所定の単連結領域についての符号化パラメータの予測に採用または使用されてもよく、それ以上の構文要素は必要ない。そうでない場合、すなわち、所定の単連結領域に対して所定の相対的な位置関係にある単連結領域の数が1より大きい場合は、これらの特定された単連結領域に関連付けられている符号化パラメータが互いに同一のものである場合でも、さらなる構文要素の導入が抑制されてもよい。
【0008】
実施の形態では、隣接する単連結領域の符号化パラメータが互いに等しくない場合は、所定の単連結領域に対して所定の相対的な位置関係にある単連結領域の数の真部分集合を、参照隣接識別子によって識別してもよく、この真部分集合は、符号化パラメータの採用、または、所定の単連結領域の符号化パラメータの予測の際に使用される。
【0009】
さらに他の実施の形態では、データストリームに含まれる構文要素の第1の部分集合に応じて、2次元の情報信号の空間的なサンプリングを表す標本の領域が、異なるサイズの複数の単連結領域へ、再帰的に複数回の区分化を行うことによって、空間的に細分割される。続いて、第1の部分集合から分離されているデータストリーム内の構文要素の第2の部分集合に応じて、空間的に隣接する単連結領域が組み合わされ、和集合が複数の単連結領域である、単連結領域の互いに素な集合への標本の配列の中間の細分割が行われる。中間の細分割は、データストリームから標本の配列を再構築する際に使用される。これにより、細分割が緻密すぎる場合に後から結合によって補正できることから、細分割についての最適化の重要度を下げることができる。さらに、細分割と結合の組み合わせによって、再帰的な複数回の区分化のみでは不可能な中間の細分割の実現が可能になり、分離されている構文要素の集合を使用して細分割と結合を連結することにより、2次元の情報信号の実際の内容に対する効果的または中間的な細分割の適合度を向上させることができる。結合の詳細を示すための追加の構文要素の部分集合によって発生する追加のオーバーヘッドは、利点と比較すると無視できるほど小さい。
【0010】
実施の形態では、空間的にサンプリングされた情報信号を表す情報標本の配列は、まず、空間的にツリーのルート領域に分割され、続いてデータストリームから抽出されるマルチツリーの細分割情報に従って細分割される。ツリーのルート領域の部分集合に再帰的に複数回の区分化を行うことによって、少なくとも、そのツリーのルート領域の部分集合が、さまざまなサイズのより小さい単連結領域に細分割される。妥当なエンコーディングの複雑さで、レート/歪みの点で緻密すぎる細分割と粗すぎる細分割との間の望ましい妥協点を見つけることができるようにするために、情報標本の配列が空間的に分割されるツリーのルート領域の最大の領域のサイズは、データストリーム内に含まれ、復号化側のデータストリームから抽出される。したがって、デコーダは、データストリームから最大の領域のサイズおよびマルチツリーの細分割情報を抽出できる抽出部、空間的にサンプリングされた情報信号を表す情報標本の配列を最大の領域のサイズのツリーのルート領域に空間的に分割し、マルチツリーの細分割情報に従って細分割し、ツリーのルート領域の部分集合に再帰的に複数回の区分化を行うことによって、少なくとも、そのツリーのルート領域の部分集合を、さまざまなサイズのより小さい単連結領域に細分割することができる細分割部、および、より小さい単連結領域への細分割を使用してデータストリームから情報標本の配列を再構築できる再構築部を備えていてもよい。
【0011】
また、実施の形態では、データストリームは、ツリーのルート領域の部分集合が再帰的な複数回の区分化の対象となる最大の階層レベルを含む。この方法により、マルチツリーの細分割情報を伝達することが容易になり、符号化に必要なビット数が少なくなる。
【0012】
さらに、再構築部は、中間の細分割に応じた粒度で、少なくともイントラ予測モードおよび平面間予測モードの中からの使用する予測モードの決定、スペクトル領域から空間領域への変換、平面間予測の実行および/または平面間予測のパラメータの設定、イントラ予測の実行および/またはイントラ予測のパラメータの設定のうちの1つ以上を行うように構成されていてもよい。
【0013】
さらに、抽出部は、区分化されたツリーブロックのリーフ領域と関連付けられている構文要素を、深度順のトラバースの順序で、データストリームから抽出するように構成されていてもよい。この方法により、抽出部は、符号化済みの隣接するリーフ領域の構文要素の統計量を、幅の順のトラバースの順序を使用した場合よりも高い可能性で利用できる。別の実施の形態では、さらなるマルチツリーの細分割情報に従って、より小さい単連結領域の少なくとも1つの部分集合を、さらに小さい単連結領域に細分割するために、さらに細分割部が使用される。情報標本の領域の予測を行うために、1つめの段階の細分割が再構築部によって使用されてもよく、スペクトル領域から空間領域への再変換を行うために、2つめの段階の細分割が再構築部によって使用されてもよい。残差の細分割を、予測の細分割に対して下位に定義すると、細分割の全体の符号化によるビットの消費量が少なくなる。その一方で、下位に定義されることによる残差の細分割についての制限および自由度は、符号化の効率にわずかなマイナスの影響を与える。これは、ほとんどの場合において、同様の動き補償パラメータを持つ画像の一部は、同様のスペクトルの特性を持つ部分よりも大きいためである。
【0014】
さらに他の実施の形態では、さらに最大の領域のサイズがデータストリームに含まれ、これによって、さらなるマルチツリーの細分割情報に従ってツリールートの小領域の少なくとも1つの部分集合がさらに小さい単連結領域へ細分割される前により小さい単連結領域が最初に分割されてできるツリールートの小領域のサイズが定義される。これにより、予測の細分割の最大の領域のサイズを独自に設定することが可能になり、その一方で、残差の細分割によって、レート/歪みの妥協点についての向上が可能になる。
【0015】
本発明のさらに他の実施の形態では、マルチツリーの細分割情報を形成する構文要素の第2の部分集合から分離されている、構文要素の第1の部分集合が、データストリームに含まれ、復号化側の結合部は、構文要素の第1の部分集合に応じて、マルチツリーの細分割の、空間的に隣接するより小さい単連結領域を組み合わせて、標本の配列の中間の細分割を取得することができる。再構築部は、中間の細分割を使用して標本の配列を再構築できるように構成されてもよい。これにより、エンコーダが、情報標本の配列の特性の空間的な分布に対して効果的な細分割を行うことができ、レート/歪みについての最適な妥協点を見つけることがより容易になる。たとえば、最大の領域のサイズが大きい場合は、ツリールートの領域が大きくなるため、マルチツリーの細分割情報は複雑になる可能性が高い。その一方で、最大の領域のサイズが小さい場合は、隣接するツリールートの領域が、同様の特性を含む情報の内容に関連していて、これらのツリールートの領域もあわせて処理されている可能性が高い。結合によって、上記の両極端な場合の隔たりが解消され、その結果、最適に近い粒度の細分割が可能となる。エンコーダ側からの観点では、結合の構文要素によって、エンコーディングの手順が簡略化されるか、あるいは、計算の複雑さが低減される。これは、エンコーダが誤って緻密すぎる細分割を使用した場合、エンコーダが後から結合の構文要素を設定することによって、その誤りを補正するためである。この場合、結合の構文要素の設定の前に設定されていた構文要素のごく一部の適応については、行われても行われなくてもよい。
【0016】
さらに他の実施の形態では、最大の領域のサイズ、および、マルチツリーの細分割情報が、予測の細分割ではなく、残差の細分割に使用される。
【0017】
空間的にサンプリングされた情報信号を表す情報標本の配列の四分木の細分割の単連結領域を扱う場合、幅の順のトラバースの順序ではなく、深度順のトラバースの順序が、実施の形態に従って使用される。深度順のトラバースの順序を使用することによって、それぞれの単連結領域が、トラバース済みの隣接する単連結領域を有する確率が高くなり、現在の単連結領域をそれぞれ再構築する際に、これらの隣接する単連結領域に関する情報を確実に利用できる。
【0018】
情報標本の配列が、まず、ゼロ次の階層サイズのツリーのルート領域の規則的な配列に分割され、続いて、ツリーのルート領域の少なくとも1つの部分集合が、異なるサイズのより小さい単連結領域に細分割される場合、再構築部は、ジグザグ走査を使用してツリーのルート領域を走査し、区分化されるツリーのルート領域のそれぞれについて、深度順のトラバースの順序で単連結リーフ領域を処理し、さらに、ジグザグ走査の順序で次のツリーのルート領域へ進んでもよい。さらに、深度順のトラバースの順序に従って、同じ階層レベルの単連結リーフ領域がジグザグ走査の順序でトラバースされてもよい。このように、隣接する単連結リーフ領域を有する可能性が高まった状態が維持される。
【0019】
実施の形態では、マルチツリー構造のノードに関連付けられているフラグは、深度順のトラバースの順序で順次配置されるが、フラグの順次の符号化では、確率推定のコンテキストが使用される。これは、マルチツリー構造の同じ階層レベル内に位置するマルチツリー構造のノードと関連付けられているフラグについては同じであるが、マルチツリー構造の異なる階層レベル内に位置するマルチツリー構造のノードについては異なる。その結果、その一方で、提供されるコンテキストの数と、フラグの実際のシンボルの統計量への適応との間での妥協点についての向上が可能になる。
【0020】
実施の形態では、深度順のトラバースの順序で所定のフラグに先行し、所定のフラグが対応する領域に対して所定の相対的な位置関係にあるツリーのルート領域の領域に対応するフラグに応じて、使用される所定のフラグについての確率推定のコンテキストも異なる。説明している態様の基礎となる考え方と同様に、深度順のトラバースの順序の使用によって、符号化済みのフラグに、所定のフラグに対応する領域に隣接する領域に対応するフラグが含まれることが高い確率で保証される。この知見が利用されて、所定のフラグに使用されるコンテキストへの適応性が向上する。
【0021】
所定のフラグについてのコンテキストの設定に使用されるフラグは、所定のフラグが対応する領域の上部および/または左に位置する領域に対応するものであってもよい。
さらに、コンテキストの選択に使用されるフラグは、所定のフラグが関連付けられているノードと同じ階層レベルに属しているフラグに制限されてもよい。
【0022】
実施の形態では、符号化された伝達情報が、最上位の階層レベルの表示と、最上位の階層レベル以外のマルチツリー構造のノードに関連付けられている一連のフラグとを含む。各フラグによって、関連付けられているノードが中間ノードか子ノードであるかが指定される。データストリームから、一連のフラグが深度順または幅の順のトラバースの順序で順次復号化される。その際に、最上位の階層レベルのノードはスキップされ、自動的に同じリーフノードが指定される。その結果、符号化レートが低減される。
【0023】
他の実施の形態では、マルチツリー構造の符号化された伝達情報で最上位の階層レベルが示されてもよい。これにより、最上位の階層レベル以外の階層レベルにフラグの存在を限定して、最上位の階層レベルのブロックがさらに区分化されないようにすることが可能である。
【0024】
空間的なマルチツリーの細分割がリーフノードの二次的な細分割の一部であり、一次のマルチツリーの細分割のツリーのルート領域が区分化されない場合、二次的な細分割のフラグの符号化に使用されるコンテキストは、同じサイズの領域に関連付けられているフラグについてコンテキストが同じになるように選択されてもよい。
本発明の好適な実施の形態を、下記の図を参照して以下に説明する。
【図面の簡単な説明】
【0025】
【
図1】本願の実施の形態のエンコーダを示す構成図である。
【
図2】本願の実施の形態のデコーダを示す構成図である。
【
図3A】四分木の細分割の例を示す模式図であり、第1の階層レベルを示す。
【
図3B】四分木の細分割の例を示す模式図であり、第2の階層レベルを示す。
【
図3C】四分木の細分割の例を示す模式図であり、第3の階層レベルを示す。
【
図4】実施の形態に係る
図3Aから
図3Cの四分木の細分割のツリー構造を示す模式図である。
【
図5B】
図3Aから
図3Cの個別のリーフブロックのインデックスが付いたツリー構造を示す模式図である。
【
図6A】異なる実施の形態に従って
図4のツリー構造および
図3Aから
図3Cの四分木の細分割を表す2進列またはフラグのシーケンスを示す模式図である。
【
図6B】異なる実施の形態に従って
図4のツリー構造および
図3Aから
図3Cの四分木の細分割を表す2進列またはフラグのシーケンスを示す模式図である。
【
図7】実施の形態のデータストリーム抽出部が行うステップを示すフローチャートである。
【
図8】他の実施の形態のデータストリーム抽出部の機能を示すフローチャートである。
【
図9A】ハイライトされた所定のブロックに隣接する候補ブロックを示した、実施の形態に従う四分木の細分割を示す模式図である。
【
図9B】ハイライトされた所定のブロックに隣接する候補ブロックを示した、実施の形態に従う四分木の細分割を示す模式図である。
【
図10】他の実施の形態のデータストリーム抽出部の機能を示すフローチャートである。
【
図11】実施の形態に従って、平面および平面グループからの画像の構成を示し、平面間の適合/予測を使用した符号化を説明する模式図である。
【
図12A】実施の形態に従って継承の体系を説明するために、サブツリー構造を示す模式図である。
【
図12B】実施の形態に従って継承の体系を説明するために、サブツリー構造に対応する細分割を示す模式図である。
【
図12C】実施の形態に従って採用および予測を行う継承の体系を説明するために、サブツリー構造を示す模式図である。
【
図12D】実施の形態に従って採用および予測を行う継承の体系を説明するために、サブツリー構造を示す模式図である。
【
図13】実施の形態に従って継承の体系を実現するエンコーダが行うステップを示すフローチャートである。
【
図14】
図14Aは、実施の形態に従って、平面間予測に関連して継承の体系を実装できる可能性を説明するために、一次の細分割を示す図であり、
図14Bは、実施の形態に従って、平面間予測に関連して継承の体系を実装できる可能性を説明するために、下位の細分割を示す図である。
【
図15】実施の形態に従って、継承の体系に関連して復号化のプロセスを示す構成図である。
【
図16】実施の形態に従って、イントラ予測の対象となる小領域に関して、マルチツリーの細分割の小領域の走査の順序を示す模式図である。
【
図17】実施の形態のデコーダを示す構成図である。
【
図18A】他の実施の形態での異なる細分割の可能性を示す模式図である。
【
図18B】他の実施の形態での異なる細分割の可能性を示す模式図である。
【
図18C】他の実施の形態での異なる細分割の可能性を示す模式図である。
【
図19】実施の形態のエンコーダを示す構成図である。
【
図20】他の実施の形態のデコーダを示す構成図である。
【
図21】他の実施の形態のエンコーダを示す構成図である。
【発明を実施するための形態】
【0026】
以下の各図の説明では、複数の図に出現する要素は共通の符号で示し、これらの要素についての重複する説明は省略する。つまり、ある1つの図に出現している要素についての説明は、その説明が関連している限りは、その要素が出現する他の図にも適用される。
【0027】
さらに、
図1から
図11で説明されているエンコーダおよびデコーダの実施の形態を使って、以下の説明を始める。これらの図に対して説明されている実施の形態は、本願の多数の態様を組み合わせたものであるが、符号化体系の中で個別に実装される場合も効果が得られる。したがって、以下の図について、これらの実施の形態のそれぞれを個別に使用して上記の態様を利用する実施の形態は簡潔に説明され、
図1および
図11について説明されている実施の形態の抽象的概念を異なる意味で表している。
【0028】
図1は、本発明の実施の形態のエンコーダを示している。
図1のエンコーダ10は、予測部12、残差プレコーダ14、残差再構築部16、データストリーム挿入部18、および、ブロック分割部20を備える。エンコーダ10は、時間的・空間的にサンプリングされた情報信号をデータストリーム22に符号化するためのものである。時間的・空間的にサンプリングされた情報信号は、たとえば、動画、すなわち一連の画像などであってもよい。各画像は、画像の標本の配列を表す。時間的・空間的な情報信号の他の例では、たとえば、タイムオブライトカメラなどでキャプチャーされる深度の画像などが含まれる。さらに、空間的にサンプリングされた情報信号には、フレームまたはタイムスタンプごとに複数の配列が含まれる場合があることに注意する必要がある。たとえば、フレームごとに1つの輝度の標本の配列が2つの彩度の標本の配列とともに含まれるカラーの動画の場合などである。また、情報信号の異なる構成要素、すなわち輝度および彩度の時間的なサンプリングレートは異なっていてもよい。空間的な解像度でも同様である。また、動画には、深度または透明度の情報などの空間的にサンプリングされた情報がさらに付随してもよい。しかし、以下の説明では、本願の主たる内容を理解しやすいように、まず、これらの配列の1つの処理を重点的に説明し、その後、複数の平面の扱いについて説明する。
【0029】
図1のエンコーダ10は、画像全体と個別の画像の標本との間に位置する粒度でデータストリーム22の構文要素が画像を記述するように、データストリーム22を作成するように構成されている。そのために、分割部20は、各画像24をさまざまなサイズの単連結領域26に細分割するように構成されている。以下では、これらの領域は、単にブロックまたは小領域26と呼ぶ。
【0030】
以下でより詳細に説明するとおり、分割部20は、画像24をさまざまなサイズのブロック26に細分割するために、マルチツリーの細分割を使用する。さらに正確に言えば、
図1から
図11に関して以下で概説される特定の実施の形態では、ほとんどの場合、四分木の細分割を使用する。分割部20は、以下で詳細に説明されるとおり、内部で連結されている細分割部28を備えていてもよい。細分割部28は、画像24を上記ブロック26に細分割する。細分割部28は、結合部30に連結されている。結合部30は、画像24の非細分割と細分割部28によって定義される細分割との間に位置する効果的な細分割または粒度を取得するために、これらブロック26のグループを結合できる。
【0031】
図1に破線で示されているように、予測部12、残差プレコーダ14、残差再構築部16、および、データストリーム挿入部18が、分割部20によって定義される画像の細分割を行う。たとえば、以下でより詳細に説明するとおり、予測部12は、分割部20によって定義される予測の細分割を使用して、次のことを行う。選択された予測モードに従ってそれぞれの小領域に対応する予測パラメータを設定して、それぞれ小領域が画像内予測または画像間予測の対象となる必要があるかについて、予測の細分割の個別の小領域のための判別を行う。
【0032】
次に、残差プレコーダ14は、予測部12によって提供される画像24の予測の残差のエンコーディングを行うために、画像24の残差の細分割を使用してもよい。残差再構築部16が、残差プレコーダ14によって出力された構文要素から残差を再構築する際に、残差再構築部16は、上記の残差の細分割も行う。データストリーム挿入部18が上記の分割、すなわち予測および残差の細分割を利用して、以下を行ってもよい。たとえば、エントロピーエンコーディングなどを使用して残差プレコーダ14および予測部12によってデータストリーム22へ出力された構文要素の挿入のために、構文要素のうち挿入の順序および隣接関係の判別を行う。
【0033】
図1に示されるように、エンコーダ10は、エンコーダ10に元の情報信号が入力される入力部32を備える。減算器34、残差プレコーダ14、および、データストリーム挿入部18は、この順序で、入力部32と、符号化されたデータストリーム22が出力されるデータストリーム挿入部18の出力部との間に直列に接続される。減算器34および残差プレコーダ14は、予測ループの一部である。予測ループは、残差プレコーダ14の出力部と減算器34の反転入力部との間に次の順序で直列に接続されている残差構築部16、加算器36、および、予測部12で閉じられている。また、予測部12の出力部も加算器36のもう1つの入力部に接続されている。また、予測部12は、入力部32に直接接続される入力部を備え、オプションのループ内フィルタ38を介して加算器36の出力部にも接続されているもう1つの入力部を備えていてもよい。さらに、予測部12は、動作中に付随する情報を生成するので、予測部12の出力部はデータストリーム挿入部18にも接続される。同様に、分割部20は、データストリーム挿入部18の別の入力部に接続される出力部を備える。
エンコーダ10の構造について説明してきたが、以下では動作のモードについてより詳細に説明する。
【0034】
上記で説明したとおり、分割部20は、各画像24について、小領域26への細分割の方法を決定する。予測に使用される画像24の細分割に従って、予測部12は、この細分割に対応する各小領域について、それぞれの小領域の予測の方法を決定する。予測部12は、減算器34の反転入力部および加算器36のもう1つの入力部に小領域の予測を出力し、予測部12が動画のエンコーディング済みの部分からこの予測を取得する方法を反映した予測情報を、データストリーム挿入部18に出力する。
【0035】
減算器34の出力部では、残差プレコーダ14が、分割部20によって指示される残差の細分割に従って、この予測の残差を処理して、予測の残差が得られる。
図3から
図10を使用して以下にさらに詳細に説明するように、残差プレコーダ14によって使用される画像24の残差の細分割は、それぞれの予測の小領域が残差の小領域として採用されるか、または、より小さい残差の小領域にさらに細分割されるように、予測部12によって使用される予測の細分割に関連していてもよい。また、完全に独立した予測および残差の細分割であってもよい。
【0036】
残差プレコーダ14は、それぞれの残差の小領域に対して、2次元変換による空間領域からスペクトル領域への変換を行う。結果として得られる変換ブロックの、結果として得られる変換係数の量子化が続いて行われるか、または、これを本質的に伴う。それによって、歪みが量子化のノイズの結果として起こる。たとえば、データストリーム挿入部18は、たとえば、エントロピーエンコーディングなどを使用して、上記の変換係数を記述している構文要素のデータストリーム22へのエンコーディングを無損失で行ってもよい。
【0037】
次に、残差再構築部16は、再変換を伴う再量子化を使用して、変換係数を残差信号に再変換する。予測の残差の取得のために、残差信号が、減算器34によって使用される予測と加算器36内で結合される。その結果、加算器36の出力部で、現在の画像の再構築された部分または小領域が取得される。予測部12は、再構築された画像の小領域をイントラ予測に直接使用してもよい。これは、隣接している再構築済みの予測の小領域からの推定によって、特定の予測の小領域の予測を行うためである。しかしながら、現在の小領域のスペクトルを隣接する小領域のスペクトルから直接予測することによってスペクトル領域内で行われるイントラ予測も、理論的には可能である。
【0038】
平面間予測のために、予測部12は、オプションのループ内フィルタ38によってフィルタ処理が行われたバージョンの、エンコーディング済みで再構築済みの画像を使用してもよい。たとえば、ループ内フィルタ38は、上述した量子化ノイズを形成することで効果を得られる伝達関数を有し、非ブロック化するフィルタおよび/または適応フィルタを備えていてもよい。
【0039】
予測部12は、画像24内の元の標本と比較して、特定の予測の小領域の予測を行う方法を示す予測パラメータを選択する。以下でより詳細に説明しているように、予測パラメータは、それぞれの予測の小領域についての、画像内予測や画像間予測などの予測モードの指示を含んでいてもよい。画像内予測の場合、予測パラメータは、イントラ予測が行われる予測の小領域内の境界が主として延びる角度の指示を含んでいてもよい。画像間予測の場合は、運動ベクトル、動画のインデックス、さらに、高次の運動変換パラメータを含んでいてもよい。画像内予測および/または画像間予測の両方の場合は、現在の予測の小領域の予測の基になる再構築された画像の標本のフィルタ処理のための、オプションのフィルタ情報を含んでいてもよい。
【0040】
以下でより詳細に説明するとおり、分割部20によって定義される前述の細分割は、残差プレコーダ14、予測部12、および、データストリーム挿入部18によって最大限達成できるレート/歪み率に大幅に影響を与える。細分割が緻密になると、予測部12によって取得される予測は向上する可能性があり、残差プレコーダ14によって符号化される残差信号は小さくなって少ないビット数で符号化される可能性があるが、予測部12によって出力されデータストリーム22に挿入される予測パラメータ40に必要な符号化レートは非常に大きくなる。細分割が粗くなる場合は、その逆の状態となる。また、上記の考え方は、残差の細分割に対しても同様に当てはまる。個別の変換ブロックについて、より緻密な粒度で画像を変換すると、変換の演算の複雑さは低減され、結果として得られる変換で空間的な解像度は増加する。つまり、より小さい残差の小領域によって、個別の残差の小領域の内容のスペクトル分布の整合性が高まる。しかし、スペクトル分解能は低下し、有意な係数と、有意でない、すなわちゼロに量子化される係数との間の比率が悪化する。つまり、変換の粒度は、局所的に画像の内容に適応している必要がある。さらに、粒度が緻密になることのプラスの効果とは別に、粒度が緻密になると、通常は、デコーダに対して選択された細分割を示すために必要な、付随する情報の量が増加する。以下でより詳細に説明するとおり、後述する実施の形態では、エンコーディングされる情報信号の内容に対して非常に効果的に細分割に適応でき、符号化されたデータストリーム22に細分割情報を挿入するようにデータストリーム挿入部18に指示することによって、復号化の側に使用される細分割情報を伝達することができるエンコーダ10について説明する。以下に詳細を示す。
【0041】
しかしながら、分割部20の細分割を詳細に定義する前に、本願の実施の形態に従うデコーダについて、
図2で詳細に説明する。
【0042】
図2のデコーダは符号100で示され、抽出部102、分割部104、残差再構築部106、加算器108、予測部110、オプションのループ内フィルタ112、および、オプションのポストフィルタ114を備える。抽出部102は、符号化されたデータストリームをデコーダ100の入力部116で受信し、符号化されたデータストリームの細分割情報118から、抽出部102が画像分割部104、予測部110、および、残差再構築部106にそれぞれ出力する予測パラメータ120および残差データ122を抽出する。残差再構築部106の出力部は、加算器108の第1の入力部に接続されている。加算器108の別の入力部と出力部は、予測ループに接続されている。予測ループには、オプションのループ内フィルタ112および予測部110がこの順序で直列に接続されていて、加算器108の出力部から予測部110へ直接バイパスする経路がある。これは、上述した
図1の加算器36と予測部12との間の接続と同様で、すなわち、一方が画像内予測のためのもので、他方が画像間予測のためのものである。加算器108の出力部またはループ内フィルタ112の出力部のどちらかが、再構築された情報信号が再現装置などへ出力されるデコーダ100の出力部124に接続されていてもよい。オプションのポストフィルタ114は、再構築された信号の視覚的印象についての画質を出力部124で向上させるために、出力部124への経路に接続されていてもよい。
【0043】
概して、残差再構築部106、加算器108および予測部110は、
図1の16、36および12の各要素と同様の働きをする。言い換えれば、
図1の上記の各要素の動作と同様の動作を行う。そのために、残差再構築部106および予測部110は、それぞれ、抽出部102からの細分割情報118に従って、予測パラメータ120と画像分割部104によって指示される細分割とによって制御される。これは、予測部12が行った方法または行うと決定した方法と同じ方法で予測の小領域を予測し、受信された変換係数を、残差プレコーダ14が変換を行ったのと同じ粒度で再変換することを目的としている。次に、画像分割部104は、細分割情報118を参照することによって、
図1の分割部20によって選択された細分割を、同期された方法で再編する。続いて、抽出部は、コンテキストの選択、隣接関係の判定、確率の推定、データストリームの構文の解析に関してなどのデータ抽出を制御するために、細分割情報を使用してもよい。
【0044】
上記の実施の形態に関して、一部が異なる形態がいくつか考えられる。その一部について、細分割部28によって行わる細分割、および、結合部30によって行わる結合については、以下に詳細に説明する。その他については、
図12から
図16を用いて説明する。支障がない限り、これらの変形の実施の形態は全て、個別に、または、部分集合で、
図1および
図2についてそれぞれ上述した説明に適用されてもよい。たとえば、分割部20および104は、画像ごとの予測の細分割および残差の細分割のみを判定しなくてもよい。そうではなく、予測または残差の符号化のための他の細分割に依存しない状態、または、依存する状態のどちらかで、オプションのループ内フィルタ38および112のそれぞれのフィルタの細分割を判定してもよい。また、これらの要素による細分割の判定は、フレームごとに行われなくてもよい。そうではなく、特定のフレームで判定された細分割を、以降の特定の数のフレームに再使用または採用し、その後に新たな細分割に移行してもよい。
【0045】
小領域への画像の分割に関してさらに詳細に説明するにあたって、以下の説明では、まず、細分割部28、104aが行う細分割の部分について重点的に説明する。続いて、結合部30および結合部104bが行う結合のプロセスを説明する。最後に、平面間の適合/予測について説明する。
【0046】
細分割部28、104aが画像を分割する場合、画像または動画のデータについての予測の符号化および残差の符号化を目的として、多数のブロックに画像を分割でき、ブロックはさまざまなサイズとなる可能性がある。上述したとおり、画像24は、画像の標本値の1つ以上の配列として利用されてもよい。YUV/YCbCrの色空間の場合、たとえば、第1の配列が輝度チャンネルを表し、他の2つの配列が彩度チャンネルを表していてもよい。これらの配列は、異なる次元を有していてもよい。全ての配列は、1つ以上の平面グループにグループ化されていてもよく、各平面グループは、各平面が1つのみの平面グループに含まれるように、1つ以上の連続した平面で構成される。それぞれの平面グループに関して、以下が適用される。特定の平面グループの第1の配列は、この平面グループの一次の配列と呼ばれる。他の配列が続く場合は、下位の配列となる。一次の配列のブロックの分割は、四分木のアプローチに基づいて行われてもよい。最適なアプローチについて後述する。下位の配列のブロックの分割は、一次の配列の分割に基づいて導き出されてもよい。
【0047】
後述する実施の形態では、細分割部28、104aは、一次の配列を、多数の等しいサイズ正方形のブロック、いわゆるツリーブロックに次のように分割できるように構成されている。四分木が使用される場合、ツリーブロックの境界の長さは、一般的に、16、32、64などの2のべき乗である。しかし、厳密には、二分木や、任意の数のリーフを持つツリーなど、他のツリーのタイプを使用することもできることに注意されたい。さらに、ツリーの子の数は、ツリーのレベルやツリーが表している信号に応じて、さまざまな数になる。
【0048】
この他にも、上述したとおり、標本の配列は、深度のマップや光照射野など、動画のシーケンス以外の情報を表していてもよい。説明を簡潔にするために、以下では、マルチツリーの代表例として四分木について重点的に説明する。四分木とは、それぞれの内部のノードで厳密に4つの子を有するツリーである。各ツリーブロックは、一次の四分木を構成し、一次の四分木の各リーフで下位の四分木が構成される。一次の四分木は、予測のために所定のツリーブロックの細分割を判定し、下位の四分木は、残差の符号化のために所定の予測ブロックの細分割を判定する。
【0049】
一次の四分木のルートノードは、完全なツリーブロックに対応する。たとえば、
図3Aは、ツリーブロック150を表す。各画像は、たとえば、標本の配列が隙間なくカバーされるように、ツリーブロック150のように線と列で規則的な格子状に分割されることを想定する。しかし、以下に示すブロックの細分割の全てについて、重なりのないシームレスな細分割が必須であるわけではないことに注意されたい。そうではなく、隣接するリーフブロックの適正な下位の部分となっているリーフブロックがない限りは、隣接するブロックは互いに重なっていてもよい。
【0050】
ツリーブロック150の四分木の構造に沿って、各ノードはさらに4つの子ノードに分割できる。これは、一次の四分木の場合、それぞれのツリーブロック150は、ツリーブロック150の半分の幅と高さの4つのサブブロックに分割できることを意味する。
図3Aでは、これらのサブブロックは、符号152aから152dで示している。同様の方法で、これらのサブブロックはそれぞれ、元のサブブロック半分の幅と高さの、より小さい4つのサブブロックにさらに分割できる。
図3dでは、サブブロック152cの例が示され、4つの小さなサブブロック154aから154dに細分割されている。
図3Aから3Cでは、例としてツリーブロック150が次のように分割される様子が示されている。ツリーブロック150は、まず、4つのサブブロック152aから152dに分割される。続いて左下のサブブロック152cが4つの小さなサブブロック154aから154dにさらに分割される。最終的に、
図3Cに示されているとおり、これらのより小さいサブブロックのうちの右上のブロック154bが、元のツリーブロック150の1/8の幅および高さを有する4つのブロックに再度分割される。これらのさらに小さいブロックは、156aから156dで示されている。
【0051】
図4は、
図3Aから
図3dで示した四分木に基づいた分割の例の基本となるツリー構造を示している。ツリーのノードの横の数字は、細分割フラグと呼ばれる値で、四分木の構造の情報伝達について説明する際に、詳細を後述する。四分木のルートノードは、図の最上部に示されている(「レベル0」)。このルートノードのレベル1での4つの分岐は、
図3Aで示した4つのサブブロックに対応する。
図3Bで、これらのサブブロックのうちの3つ目がさらに4つのサブブロックに細分割されているので、
図4のレベル1の3つ目のノードにも4つの分岐がある。さらに、
図3Cの2つめ(右上)の子ノードの細分割に対応して、四分木の階層のレベル2で2つめのノードに接続している、4つの下位の分岐がある。レベル3のノードは、それ以上細分割されてはいない。
【0052】
一次の四分木の各リーフは、可変サイズのブロックに対応し、これに対して個別の予測パラメータを指定できる(すなわち、イントラ予測モードまたは平面間予測モードや運動パラメータなど)。以下では、これらのブロックを予測ブロックと呼ぶ。これらのリーフブロックは、具体的には、
図3Cに示されている。ここで簡単に
図1および
図2の説明を参照すると、分割部20または細分割部28が、上述した四分木の細分割の判定を行う。細分割部152a~152dは、ツリーブロック150、サブブロック152aから152d、小さいサブブロック154aから154dなどのうちのどれが細分割されたりさらに区分化されたりするかの判定を行う。これは、上記で既に示しているように、緻密な予測と細分割と粗い予測の細分割との間の最適なトレードオフを求めることを目的としている。次に、予測部12は、予測の細分割に応じた粒度で上述した予測パラメータを判定するために、指示された予測の細分割を使用する。あるいは、
図3Cなどで示したブロックによって表される予測の小領域のそれぞれについて、指示された予測の細分割を使用する。
【0053】
図3Cに示した予測ブロックは、残差の符号化を目的として、さらに小さいブロックに分割できる。各予測ブロックに対して、すなわち、一次の四分木の各リーフノードに対して、残差の符号化のために、1つ以上の下位の四分木によって、対応する細分割が決定される。たとえば、残差ブロックのサイズが最大で16×16の場合は、所定の32×32の予測ブロックは4つの16×16のブロックに分割でき、それぞれ、残差の符号化のために、下位の四分木によって決定される。この例の16×16の各ブロックは、下位の四分木のルートノードに対応する。
【0054】
所定のツリーブロックの予測ブロックへの細分割の場合の説明と同様に、下位の四分木を分解することによって各予測ブロックを多数の残差ブロックに分割できる。下位の四分木の各リーフは、残差ブロックに対応する。残差の符号化パラメータによって制御される残差プレコーダ14、続いて残差再構築部16、106によって、残差ブロックに、個別の残差の符号化パラメータを指定できる(すなわち、変換モード、変換係数など)。
【0055】
言い換えると、細分割部28は、各画像または画像の各グループについて、予測の細分割および下位の残差の細分割を判定するように構成されていてもよい。これは次のように行われる。まず、画像を、ツリーブロック150の規則的な配列に分割し、四分木の細分割によって再帰的にこれらのツリーブロックの部分集合を区分化し、予測の細分割を予測ブロックに取得する。それぞれのツリーブロック、または、四分木の細分割のリーフブロックで区分化が行われない場合は、予測ブロックは、ツリーブロックであってもよい。続いて、これらの予測ブロックの部分集合を同様の方法で次のようにさらに細分割する。予測ブロックが下位の残差の細分割の最大サイズよりも大きい場合は、まず、それぞれの予測ブロックをサブツリーブロックの規則的な配列に分割する。続いて、四分木の細分割の手順に従って、これらのサブツリーブロックの部分集合を細分割し、残差ブロックを取得する。それぞれの予測ブロックでサブツリーブロックへの分割が行われない場合は、残差ブロックは、予測ブロックであってもよい。また、それぞれのサブツリーブロック、または、残差の四分木の細分割リーフブロックで、さらに小さい領域への分割が行われない場合は、サブツリーブロックであってもよい。
【0056】
上記で概説したとおり、一次の配列に対して選択された細分割は、下位の配列にマッピングされてもよい。これは、一次の配列と同じ次元の下位の配列を考慮すると容易である。しかし、一次の配列の次元と下位の配列の次元が異なる場合は、特別な方法が必要である。一般的に、一次の配列の細分割を次元が異なる下位の配列にマッピングするには、空間的なマッピング、すなわち、一次の配列の細分割のブロックの境界を下位の配列に空間的にマッピングすることによって可能である。特に、それぞれの下位の配列について、一次の配列の下位の配列に対する次元の比率を判定する、水平方向および垂直方向のスケーリングファクタが使用されてもよい。予測および残差の符号化のための下位の配列からサブブロックへの分割は、一次の配列の配列された各ツリーブロックの一次の四分木および下位の四分木によって、相対的なスケーリングファクタを適用した結果として得られる下位の配列のツリーブロックを使用して、判定されてもよい。水平方向および垂直方向のスケーリングファクタが異なる場合(たとえば、4:2:2の彩度の下位サンプリングなど)は、下位の配列の結果として得られる予測ブロックおよび残差ブロックは、正方形ではなくなる。この場合、(シーケンス全体、シーケンスのうちの1つの画像、または、単一の予測ブロックまたは残差ブロックのそれぞれについて)正方形ではない残差ブロックが正方形のブロックに分割されるか否かを、状況に合わせて、事前に決定するか、または、選択することが可能である。たとえば、1つめのケースでは、マッピングされたブロックが正方形でない場合に、エンコーダおよびデコーダは、正方形のブロックへの細分割を承諾する。2つめのケースでは、細分割部28がデータストリーム挿入部18およびデータストリーム22を介して細分割部104aへ選択の信号を送る。たとえば、4:2:2の彩度の下位サンプリングの場合で、下位の配列の幅が一次の配列の半分で高さが同じ場合、残差ブロックの高さは幅の2倍である。このブロックを垂直に分割することによって、1つのブロックから2つの正方形のブロックが再度得られる。
【0057】
上述したとおり、細分割部28または分割部20は、それぞれ、データストリーム22を介して細分割部104aへ四分木に基づいた分割を情報伝達する。そのために、細分割部28は、データストリーム挿入部18に画像24に対して選択された細分割を通知する。続いて、データストリーム挿入部は、一次の四分木および二次の四分木の構造、すなわち、データストリームまたはビットストリーム22内での予測または残差の符号化のための可変サイズのブロックへの画像の配列の分割について、復号化の側へ伝送する。
【0058】
最小および最大の許容ブロックサイズは、付随する情報として伝送され、画像ごとに変更してもよい。また、最小および最大の許容ブロックサイズは、エンコーダおよびデコーダ内で固定できる。これらの最小および最大のブロックサイズは、予測ブロックと残差ブロックで異なる場合がある。四分木の構造を情報伝達するために、四分木は、トラバースされる必要があり、各ノードについて、この特定のノードが四分木のリーフノードである(すなわち、対応するブロックがさらに細分割されていない)か、または、4つの子ノードに分岐する(すなわち、対応するブロックが半分のサイズの4つのサブブロックに分割されている)か、が指定される必要がある。
【0059】
1つの画像内での情報伝達は、
図5Aの140に示すように、左から右および上から下などのラスター走査の順序で、ツリーブロックごとに行われる。この走査の順序も別の順序でもよく、右下から左上や、チェッカー盤状でもよい。好適な実施の形態では、細分割情報を伝達するために、各ツリーブロック、すなわち各四分木は、深度順でトラバースされる。
【0060】
好適な実施の形態では、細分割情報、すなわちツリーの構造だけでなく、予測データなど、すなわち、ツリーのリーフノードに関連付けられているペイロードも深度順で伝送/処理される。このように行われる理由は、深度順のトラバースには幅の順よりも大きな利点があるためである。
図5Bでは、a、b、…、jで示されるリーフノードを持つ四分木の構造が示されている。
図5Aは、結果として得られるブロックの分割を示している。ブロック/リーフノードが幅の順にトラバースされる場合は、abjchidefgの順で取得される。一方、深度順では、abc…ijとなる。
図5Aから分かるように、深度順の場合、左に隣接するブロックおよび上部に隣接するブロックは常に、現在のブロックよりも前に伝送/処理される。このように、運動ベクトル予測およびコンテキストモデリングでは、左および上部に隣接するブロックに指定されたパラメータを常に使用して、符号化の効率の向上を実現できる。幅の順の場合は、たとえばブロックjはブロックe、g、iよりも前に伝送されるので、このようにはならない。
【0061】
最終的に、各ノードについて、対応するブロックが4つのサブブロックに分割されるか否かを指定するフラグが伝送されるように、一次の四分木の構造に沿って、各ツリーブロックについての情報伝達が再帰的に行われる。このフラグの値が「1」(「true」を示す)の場合は、この情報伝達のプロセスが、4つの子ノードすなわちサブブロックの全てについて、ラスター走査の順序(上部左、上部右、下部左、下部右)で、一次の四分木のリーフノードに到達するまで再帰的に繰り返される。リーフノードは、値が「0」の細分割フラグを持つことを特徴とする。ノードが、一次の四分木の最下層の階層レベルに存在し、予測ブロックの最小の許容サイズに相当する場合は、細分割フラグは伝送される必要はない。
図3Aから
図3Cの例では、
図6Aの190で示すように、最初に「1」が送信され、これはツリーブロック150が4つのサブブロック152a~152dに分割されるように指定している。続いて、ラスター走査の順序200で、4つのサブブロック152a~152dの全てについての細分割情報のエンコーディングが再帰的に行われる。最初の2つのサブブロック152aおよび152bについては、細分割が行われないことを指定する「0」が送信される(
図6Aの202を参照)。3つめのサブブロック152c(下部左)については、このブロックが細分割されることを指定する「1」が送信される(
図6Aの204を参照)。これにより、再帰的なアプローチによって、このブロックの4つのサブブロック154a~154dが処理される。ここで、最初のサブブロックについては「0」が送信され(206)、2つめの(上部右)のサブブロックについては「1」が送信される(208)。これにより、
図3C内で最小のブロックサイズとなる4つのブロック156a~156dが処理される。本例での最小の許容ブロックサイズに到達した場合は、さらに細分割を行うことはできないので、これ以上のデータを伝送する必要はない。あるいは、
図6Aの210で示すように、これらのブロックがこれ以上分割されないことを指定する「0000」が伝送される。この後、
図3Bの下部の2つのブロックについて、「00」が送信され(
図6Aの212を参照)、最後に、
図3Aの下部右のブロックについて、「0」が送信される(214を参照)。このように、四分木の構造を表す完全な2進列は、全体で、
図6Aのようになる。
【0062】
図6Aで示したこの2進列で、背景の陰影が異なっているのは、四分木に基づいた細分割の階層のレベルが異なっていることに対応している。陰影216はレベル0を表し(元のツリーブロックサイズに等しいブロックサイズに対応する)、陰影218はレベル1を表す(元のツリーブロックサイズの半分に等しいブロックサイズに対応する)。陰影220はレベル2を表し(元のツリーブロックサイズの1/4に等しいブロックサイズに対応する)、陰影222はレベル3を表す(元のツリーブロックサイズの1/8に等しいブロックサイズに対応する)。同じ階層レベル(同じブロックサイズに対応し、例示された2進列での同じ表現に対応する)の細分割フラグは全て、たとえば、挿入部18によって、1つの同じ確率モデルを使用してエントロピー符号化されてもよい。
幅の順のトラバースの場合は、細分割情報は、
図6bに示したような異なった順序で伝送される。
【0063】
予測を目的とした各ツリーブロックの細分割と同様に、結果として得られる各予測ブロックから残差ブロックへの分割もビットストリーム内で伝送される必要がある。また、付随する情報として伝送される残差の符号化について最大および最小のブロックサイズがあってもよく、これは画像ごとに変更してもよい。また、残差の符号化についての最大および最小のブロックサイズはエンコーダおよびデコーダ内で固定できる。
図3Cで示しているような一次の四分木の各リーフノードで、対応する予測ブロックは、最大許容サイズの残差ブロックに分割されてもよい。これらのブロックは、残差の符号化のための下位の四分木の構造を構成するルートノードである。たとえば、画像の残差ブロックの最大サイズが64×64で予測ブロックのサイズが32×32の場合は、予測ブロック全体は、32×32のサイズの下位(残差)の四分木のルートノード1つに対応する。一方、画像の残差ブロックの最大サイズが16×16の場合は、32×32の予測ブロックは、16×16のサイズの、残差の四分木のルートノード4つで構成される。各予測ブロック内で、ルートノードごとにラスター走査の順序(左から右、上部から下部)で、下位の四分木の構造の情報伝達が行われる。一次(予測)の四分木の構造の場合のように、各ノードについて、フラグが符号化され、この特定のノードが4つの子ノードに分割されるか否かが指定される。そして、このフラグの値が「1」の場合は、対応する4つの子ノードと対応するサブブロックの全てについて、ラスター走査の順序(上部左、上部右、下部左、下部右)で、下位の四分木のリーフノードに到達するまで、この手順が再帰的に繰り返される。一次の四分木の場合のように、下位の四分木の最下層の階層レベルのノードについては情報伝達の必要はない。なぜなら、これらのノードは、残差ブロックの最小サイズのブロックに対応していて、これ以上分割できないからである。
【0064】
エントロピー符号化のために、同じブロックサイズの残差ブロックに属している残差ブロックの細分割フラグを、1つの同じ確率モデルを使用してエンコーディングしてもよい。
【0065】
このように、
図3Aから
図6Aに基づいて上記で示した例に従って、細分割部28が、予測を目的とした一次の細分割と、残差の符号化を目的とした、一次の細分割の異なるサイズのブロックの下位の細分割とを定義した。データストリーム挿入部18は、各ツリーブロックについてジグザグ走査順で、
図6Aに従って構築されるビットシーケンスの情報伝達によって、一次の細分割の符号化を行い、あわせて、一次のブロックの最大サイズおよび一次の細分割の最大階層レベルの符号化を行った。このように定義された各予測ブロックについて、関連付けられた予測パラメータがデータストリームに含められている。また、残差の細分割の最大サイズ以下であった各予測ブロックについて、および、残差ブロックについて定義された最大サイズを超える、予測ブロックから分割済みの残差のツリーのルートの各ブロックについて、同様の情報、すなわち、最大サイズ、最大階層レベル、および、
図6Aのようなビットシーケンスの符号化が行われた。このように定義された各残差ブロックについて、残差データがデータストリームに挿入されている。
【0066】
抽出部102は、入力部116でデータストリームから各ビットシーケンスを抽出し、取得した細分割情報を分割部104に通知する。さらに、データストリーム挿入部18および抽出部102は、予測ブロックおよび残差ブロックの間で上記の順序を使用して、残差プレコーダ14によって出力された残差データや予測部12によって出力された予測パラメータなどの構文要素をさらに送信してもよい。この順序を使用すると、隣接するブロックの符号化/復号化済みの構文要素を利用することによって、特定のブロックの個別の構文要素のエンコーディングに適したコンテキストを選択できる場合があるという点で利点がある。さらに、残差プレコーダ14および予測部12と同様に、残差再構築部106およびプレコーダ110も、上記で概説されている順序で個別の予測ブロックおよび残差ブロックを処理してもよい。
【0067】
図7は、上記で概説した方法でエンコーディングが行われる場合に、細分割情報をデータストリーム22から抽出するために抽出部102で行われるステップを示したフローチャートである。最初のステップでは、抽出部102が画像24をツリーのルートのブロック150に分割する。このステップは、
図7ではステップ300として示している。ステップ300で、抽出部102がデータストリーム22から予測ブロックの最大サイズを抽出してもよい。あるいは、代わりに、ステップ300で、抽出部102がデータストリーム22から最大階層レベルを抽出してもよい。
次に、ステップ302では、抽出部102がデータストリームからフラグまたはビットを復号化する。はじめてステップ302が行われる場合、抽出部102は、各フラグが、ツリーのルートのブロックの走査の順序140において、ツリーのルートの最初のブロック150に属しているビットシーケンスの最初のフラグであることを認識する。このフラグは階層レベル0のフラグなので、抽出部102は、ステップ302でその階層レベル0と関連付けられているコンテキストモデリングを使用して、コンテキストを判定できる。各コンテキストで、関連付けられているフラグのエントロピー復号化について、それぞれの確率の推定を行ってもよい。コンテキストの確率の推定は、それぞれのコンテキストのシンボルの統計量に対してコンテキスト別に適応されてもよい。たとえば、ステップ302での階層レベル0のフラグの復号化に適したコンテキストを判定するために、抽出部102は、コンテキストの集合のうちの、次のような1つのコンテキストを選択してもよい。そのコンテキストは、隣接するツリーブロックの階層レベル0のフラグに応じて、あるいは、さらに、上部および左の隣接するツリーブロックなど、現在処理されているツリーブロックに隣接するツリーブロックの四分木の細分割を定義するビット列内に含まれている情報に応じて、その階層レベル0に関連付けられている。
【0068】
次のステップ、すなわち、ステップ304では、抽出部102が、直近に復号化されたフラグが区分化を示唆しているか否かについて確認する。示唆している場合は、抽出部102は、ステップ306で、現在のブロック(ここではツリーブロック)の区分化を行うか、または、この区分化を細分割部104aに示す。そして、ステップ308で、現在の階層レベルが最大階層レベルから1を引いたものに等しい否かについて確認する。たとえば、抽出部102が、ステップ300でデータストリームから抽出された最大階層レベルを保持していてもよい。現在の階層レベルが最大階層レベルから1を引いたものと等しくない場合は、抽出部102は、ステップ310で現在の階層レベルを1つ増やし、ステップ302に戻って、データストリームから次のフラグを復号化する。ここで、ステップ302で復号化されるフラグは、別の階層レベルに属しているため、実施の形態に従って、抽出部102は、現在の階層レベルに属している別のコンテキストの集合のうちの1つを選択してもよい。この選択は、復号化済みの隣接するツリーブロックの、
図6Aのような細分割のビットシーケンスに基づいて行われてもよい。
【0069】
フラグが復号化され、このフラグが現在のブロックの区分化を示唆していないことがステップ304で確認された場合は、抽出部102はステップ312に進んで、現在の階層レベルが0であるか否かについて確認する。0である場合は、抽出部102は、ステップ314で、走査の順序140で次のツリーのルートのブロックの処理を行う。あるいは、処理されるツリーのルートのブロックが残っていない場合は、細分割情報の抽出の処理を停止する。
【0070】
図7の説明では、予測の細分割についての細分割を示すフラグの復号化のみを重点的に説明していることに注意する必要がある。実際には、ステップ314では、現在のツリーブロックなどに関連する他のビンまたは構文要素の復号化も含まれる可能性がある。いずれの場合でも、さらに次のツリーのルートのブロックが存在する場合は、抽出部102はステップ314からステップ302に進み、細分割情報からの次のフラグ、すなわち、新たなツリーのルートのブロックに関するフラグシーケンスの最初のフラグを復号化する。
【0071】
ステップ312で階層レベルが0でないと判明した場合は、ステップ316に進み、現在のノードに関連する子ノードがさらに存在するか否かについて確認される。つまり、抽出部102がステップ316の確認を行う際には、現在の階層レベルが0以外の階層レベルであることはステップ312で既に確認済みである。ツリーのルートのブロック150またはより小さいブロック152a~152dのうちの1つ、さらには小さいブロック152a~152dなどに属している親ノードが存在する。直近に復号化されたフラグが属しているツリー構造のノードは親ノードを持ち、これは、現在のツリー構造の他の3つのノードでも共通である。共通の親ノードを持つそういった子ノードの走査の順序は、
図3Aで、階層レベル0の場合を符号200で例示している。このように、ステップ316では、
図7の処理でこれらの4つの子ノード全てが走査済みか否かについて抽出部102が確認する。そうでない場合、すなわち、現在の親ノードとともにさらに子ノードがある場合は、
図7の処理はステップ318に進む。ジグザグ走査の順序200に従って現在の階層レベル内の次の子ノードが走査される。これによって、対応するサブブロックは、処理7の現在のブロックを表すようになる。その後、ステップ302で、現在のブロックまたは現在のノードに関するデータストリームから、フラグが復号化される。しかし、ステップ316で現在の親ノードの子ノードがそれ以上ない場合は、
図7の処理はステップ320に進み、現在の階層レベルが1つ減らされて、処理はステップ312に進む。
【0072】
抽出部102および細分割部104aは、
図7で示したステップを行うことによって、エンコーダ側で選択された細分割をデータストリームから取得するように連動する。
図7の処理は、上述した場合での予測の細分割についてまとめたものである。
図8は、
図7のフローチャートと組み合わされるものであり、抽出部102および細分割部104aが残差の細分割をデータストリームから取得するように連動する方法を示している。
【0073】
図8は、特に、予測の細分割の結果として得られる各予測ブロックに対して抽出部102および細分割部104aによって行われるステップを示している。これらの予測ブロックは、上述したとおり、予測の細分割のツリーブロック150内のジグザグ走査の順序140に従い、深度順のトラバースの順序で、リーフブロックをトラバースするために現在走査されている各ツリーブロック150内を、たとえば
図3Cに示したように、トラバースされる。深度順のトラバースの順序に従って、区分化された一次のツリーブロックのリーフブロックが走査される。共通の現在のノードが属している特定の階層レベルのサブブロックがジグザグ走査の順序200で走査され、これらの各サブブロックの細分割を先に走査し、続いて、このジグザグ走査の順序200で次のサブブロックに進む。
図3Cの例では、ツリーブロック150のリーフノード間での結果的な走査の順序を、符号350で示している。
【0074】
現在走査されている予測ブロックに対して、
図8の処理はステップ400から開始される。ステップ400では、現在のブロックの現在のサイズを表す内部パラメータが、残差の細分割の階層レベル0のサイズ、すなわち、残差の細分割の最大ブロックサイズと等しく設定される。残差ブロックの最大サイズは、予測の細分割の最小ブロックサイズよりも小さい場合があり、また、それ以上の大きさの場合もあることに注意する必要がある。言い換えると、実施の形態においては、エンコーダは、上記の可能性から自由に選択できる。
【0075】
次のステップ、すなわちステップ402では、現在走査されているブロックの予測ブロックのサイズが、現在のサイズを表す内部パラメータよりも大きいか否かについての確認が行われる。内部パラメータよりも大きい場合は、現在走査されている予測ブロックは、残差ブロックの最大サイズよりも大きい。この予測ブロックは、予測の細分割のリーフブロック、または、予測の細分割のツリーブロックであり、それ以上区分化されていない。この場合は、
図8の処理は、
図7のステップ300に進む。つまり、現在走査されている予測ブロックは、残差のツリールートのブロックに分割され、現在走査されているこの予測ブロック内の最初の残差ツリーブロックのフラグシーケンスの最初のフラグが、ステップ302などで復号化される。
【0076】
しかし、現在走査されている予測ブロックのサイズが、現在のサイズを表す内部パラメータ以下の場合は、
図8の処理はステップ404に進み、予測ブロックのサイズが確認されて、現在のサイズを表す内部パラメータに等しいか否かについて判定される。等しい場合は、分割ステップ300はスキップされてもよく、処理は直接
図7のステップ302へ進む。
【0077】
しかし、現在走査されている予測ブロックのサイズが、現在のサイズを表す内部パラメータよりも小さい場合は、
図8の処理はステップ406へ進み、階層レベルが1つ増やされ、現在のサイズが、2で割った値(四分木の細分割の場合は、両方の軸方向で)などの新たな階層レベルのサイズに設定される。その後、ステップ404の確認が再度行われる。ステップ404および406で形成されるループの効果は、各予測ブロックが残差ブロックの最大サイズ未満か以上かに関係なく、区分化される対応するブロックのサイズに階層レベルが常に対応していることである。このように、ステップ302でフラグを復号化する際に、フラグが参照する階層レベルとブロックのサイズとの両方に応じて、コンテキストモデリングが行われる。異なる階層レベルまたはブロックサイズのフラグに異なるコンテキストを使用することによって、次のような利点がある。フラグの値の発生に関して、確率の推定の実際の確率の分布への適合度が高い。その一方で、管理されるコンテキストの数が比較的少ない。その結果、コンテキストの管理のオーバーヘッドが減り、また、実際のシンボルの統計量へのコンテキストの適合度が高くなる。
【0078】
上述したとおり、複数の標本の配列があってもよく、これらの標本の配列は1つ以上の平面グループにグループ化されていてもよい。入力部32に入力されてエンコーディングされる入力信号は、たとえば、動画のシーケンスのうちの1つの画像であってもよいし、静止画であってもよい。このように、画像は1つ以上の標本配列の形式で提供されてもよい。動画のシーケンスの画像または静止画の符号化のコンテキストでは、標本配列が、赤、緑、および青のような3つの色平面や、YUVまたはYCbCrの色表現などの輝度および彩度の平面を参照する場合がある。また、アルファ、すなわち透明度を表す標本配列および/または、3D動画素材用の深度の情報も存在する場合がある。多数のこういった標本配列が、いわゆる平面グループとしてまとまってグループ化されていてもよい。たとえば、輝度(Y)が、1つのみの標本配列を持った1つの平面グループで、CbCrなどの彩度が、2つの標本配列を持った別の平面グループである場合がある。また、他の例では、YUVが、3つの行列を持った1つの平面グループで、3D動画素材用の深度の情報が、1つのみの標本配列を持った別の平面グループである場合がある。全ての平面グループについて、予測ブロックへの分割を表すために、データストリーム22内で、1つの一次の四分木の構造が符号化され、各予測ブロックについて、残差ブロックへの分割を表す二次の四分木の構造が符号化されてもよい。よって、輝度の要素が1つの平面グループであり、彩度の要素が他の平面グループを形成する上記の1つめの例に従うと、輝度の平面の予測ブロックについての1つの四分木の構造と、輝度の平面の残差ブロックについての1つの四分木の構造と、彩度の平面の予測ブロックについての1つの四分木の構造と、彩度の平面の残差ブロックについての1つの四分木の構造とが存在する。しかし、上記の2つめの例では、輝度および彩度の両方(YUV)の予測ブロックについての1つの四分木の構造と、輝度および彩度の両方(YUV)の残差ブロックについての1つの四分木の構造と、3D動画素材用の深度の情報の予測ブロックについての1つの四分木の構造と、3D動画素材用の深度の情報の残差ブロックについての1つの四分木の構造とが存在する。
【0079】
さらに、上述の説明では、一次の四分木の構造を使用して入力信号が予測ブロックに分割され、下位の四分木の構造を使用してこれらの予測ブロックがさらに残差ブロックに細分割される方法について説明した。別の実施の形態では、細分割が下位の四分木の段階で終了しなくてもよい。つまり、下位の四分木の構造を使用した分割で得られるブロックが、第3の四分木の構造を使用してさらに細分割されてもよい。この分割は、残差信号のエンコーディングを容易にする符号化ツールをさらに使用することを目的として行われてもよい。
【0080】
上述の説明では、それぞれ細分割部28および細分割部104aによって行われる細分割を重点的に説明している。上述したとおり、細分割は、細分割部28、104aによってそれぞれ定義され、エンコーダ10およびデコーダ100の上記のモジュールが処理を行う粒度が制御される。しかし、以下で説明する実施の形態では、結合部30および結合部104bが、それぞれ、細分割部228、104aの後に続く。ただし、結合部30、104bはオプションであり、なくても構わない。
【0081】
しかし、実際には、以下でより詳細に説明するとおり、結合部がエンコーダに、予測ブロックまたは残差ブロックの一部をグループまたはクラスタにまとめる機会を提供し、他のモジュール、少なくとも他のモジュールの一部がこれらのブロックのグループをまとめて取り扱うことができるようにする。たとえば、このグループに属している全てのブロックについての共通のパラメータの伝送を伴った予測ブロックのグループ化の情報伝達の方が、これらの予測ブロックの全てについて個別に予測パラメータの情報伝達よりも、レート/歪み率の点で見込みがある場合は、予測部12が、細分割部28の細分割を使用した最適化によって決定されるように、一部の予測ブロックの予測パラメータ間の小さな偏差を犠牲にし、その代わりにこれらの予測ブロックの全てに共通の予測パラメータを使用してもよい。しかし、これらの共通の予測パラメータに基づいて予測部12および110自体で予測を取得する処理は、予測ブロックに関して行われてもよい。しかし、予測ブロックのグループ全体について予測部12および110が一旦予測の処理を行うことも可能である。
【0082】
以下でより詳細に説明するとおり、次のことも可能である。予測ブロックのグループ化は、予測ブロックのグループに同一または共通の予測パラメータを使用することだけが目的ではなく、あるいは、またはさらにこれによって、エンコーダ10が、このグループ用の1つの予測パラメータを、このグループに属している予測ブロックの予測の残差とともに送信でき、このグループの予測パラメータの情報伝達のオーバーヘッドを減少させることができる。残差プレコーダ14および予測部12による決定よりも、データストリーム挿入部18への結合の処理の影響は少ない。ただし、詳細については以下で説明する。厳密に言うと、上記の態様は、上述した残差の細分割やフィルタの細分割などの他の細分割にも適用されることに注意する必要がある。
【0083】
まず、上述した予測ブロックや残差ブロックなどの標本の集合の結合は、さまざまな実現の方法があり、すなわち、上述したマルチツリーの細分割に限らない。ただし、以下の説明では、上記の実施の形態でのマルチツリーの細分割の結果として得られるブロックの結合について重点的に説明する。
【0084】
一般的に、関連付けられている符号化パラメータの伝送を目的として、特定の標本の集合に関連付けられている構文要素を結合すると、画像および動画の符号化で、付随する情報のレートを減少させることが可能である。たとえば、通常、エンコーディングされる信号の標本配列は、特定の標本の集合に区分化される。特定の標本の集合は、長方形または正方形のブロックを表す場合や、三角形などの任意の形状の領域を含む他の標本の集合を表す場合がある。前述の実施の形態では、単連結領域は、マルチツリーの細分割の結果として得られる予測ブロックおよび残差ブロックであった。標本配列の細分割は、構文によって固定されてもよく、また、上述したように、ビットストリーム内で、少なくとも部分的に、細分割情報が伝達されてもよい。細分割情報を伝達するための付随する情報のレートを小さく抑えておくために、より小さいブロックへのブロックの細分割などの単純な区分化となる選択は、通常、構文は限られた数しか許可しない。標本の集合は特定の符号化パラメータに関連付けられていて、符号化パラメータによって、予測の情報や残差の符号化のモードなどが指定される。これに関しての詳細は、上記で説明している。標本の各集合について、予測および/または残差の符号化を指定する個別の符号化パラメータが伝送されてもよい。符号化の効率の向上を実現するために、後述する結合の態様、すなわち、2つ以上の標本の集合を標本の集合のいわゆるグループに結合することによって、いくつかの利点が得られる。これらの利点について、以下でさらに説明する。たとえば、標本の集合は、そういったグループの全ての標本の集合が同じ符号化パラメータを共有するように結合されてもよい。同じ符号化パラメータは、グループ内の標本の集合の1つとあわせて伝送できる。そうすることによって、符号化パラメータを標本の集合のグループの標本の各集合に個別に伝送する必要がなくなり、その代わりに、標本の集合のグループ全体に符号化パラメータが一度だけ伝送される。その結果、符号化パラメータの伝送のための付随する情報のレートが減少し、符号化の全体の効率が改善される可能性がある。別のアプローチとして、標本の集合のグループの1つ以上の標本の集合に、1つ以上の符号化パラメータについての追加のリファインメントを伝送することが可能である。リファインメントは、グループの標本の集合の全てへの適用、または、伝送される標本の集合のみへの適用のどちらかが可能である。
【0085】
また、以下でさらに説明する結合の態様によって、エンコーダは、ビットストリーム22の作成についての自由度が増す。なぜなら、結合のアプローチによって、画像の標本配列の区分化の選択肢が著しく増加するからである。エンコーダが、特定のレート/歪みの量の最小化などのために、より多くの選択肢から選択できるので、符号化の効率を向上させることが可能である。エンコーダの動作にはいくつかの選択肢がある。簡易なアプローチでは、エンコーダが、まず、標本配列の最適な細分割を判定する。
図1を簡単に参照すると、細分割部28が最初の段階で最適な細分割を判定できる。その後、別の標本の集合、または、標本の集合の別のグループとの結合によって、特定のレート/歪みの損失量が減少するか否かの確認が、標本の各集合について行われる。ここで、新たな動きの検索の実行または、共通の標本の集合について判定済みの予測パラメータなどによって、結合された標本の集合のグループと関連付けられている予測パラメータを再評価することができる。そして、結合の候補となる標本の集合、または、標本の集合のグループが、考慮されている標本の集合のグループについて評価される。詳細なアプローチでは、特定のレート/歪みの損失量が、追加の候補となる標本の集合のグループについて評価される。
【0086】
以下で説明する結合のアプローチは、標本の集合の処理の順序を変更するものではない。つまり、遅延が増加しないように、すなわち、結合のアプローチを使用しない場合と同じタイミングで標本の各集合を復号化できるように、結合の考え方を実装できる。
【0087】
たとえば、符号化される予測パラメータの数を減少させることによって削減されるビットレートが、復号化の側へ結合について示すためのマージ情報の符号化で別途使用されるビットレートより大きい場合は、さらに後述する結合のアプローチの結果、符号化の効率は向上する。また、説明されている結合のための構文の拡張によって、エンコーダで、画像または平面グループからブロックへの区分化の選択の自由度が増す。言い換えると、エンコーダは、まず細分割を行ってから、結果として得られるブロックの一部が同じ集合または同様の集合の予測パラメータを有しているか否かの確認するように制限を受けない。簡単な別の方法として、エンコーダはまずレート/歪みの損失量に応じて細分割の判定を行い、その後、隣接するブロックまたは関連付けられている判定済みのブロックのグループの1つとの結合によってレート/歪みの損失量が減少するか否かの確認を各ブロックについて行う。ここで、新たな動きの検索の実行や、現在のブロックについて判定済みの予測パラメータなどによって、新たなブロックのグループと関連付けられている予測パラメータを再評価することができ、隣接するブロックまたはブロックのグループを新たなブロックのグループについて評価できる。結合の情報は、ブロックごとに情報伝達することができる。事実上、結合は、現在のブロックの予測パラメータの推定と理解することもでき、推定された予測パラメータは、隣接するブロックの1つの予測パラメータと等しく設定されている。あるいは、ブロックのグループ内のブロックについて、残差が伝送されてもよい。
【0088】
このように、さらに後述する結合についての基礎となる基本的な考え方は、隣接するブロックをブロックのグループに結合することによって、予測パラメータまたは他の符号化パラメータの伝送に必要なビットレートを減少させることである。その場合、ブロックの各グループは、予測パラメータや残差の符号化パラメータなど、符号化パラメータの一意の集合に関連付けられている。結合の情報が存在する場合、ビットストリーム内で細分割情報に付加されて送信される。結合の考え方の利点は、符号化パラメータに付随する情報のレートが減少することの結果として得られる符号化の効率の向上である。ここで説明している結合の処理を、空間的な次元以外の次元に拡張することもできる。たとえば、いくつかの異なる動画の画像内に存在する標本またはブロックのそれぞれの集合のグループは、1つのブロックのグループに結合できる。また、4D圧縮および光照射野の符号化にも、結合を適用できる。
【0089】
よって、
図1から
図8での説明に戻ると、細分割部28、104aがそれぞれ画像を細分割する具体的な方法に関係なく、細分割に続く結合の処理には利点がある。具体的には、後者もH.264などと同様の方法で画像を細分割できる。すなわち、各画像を、16×16の輝度の標本や、データストリーム内で情報伝達されるサイズなど、所定のサイズの長方形または正方形のマクロブロックの規則的な配列に細分割できる。各マクロブロックは、関連付けられている特定の符号化パラメータを有し、とりわけ、区分化のパラメータと、対応する予測パラメータとをデータストリーム内に含む。区分化のパラメータは、各マクロブロックについて、予測の粒度となる1、2、4などの回数で区分化される規則的なサブグリッドへの区分化を定義する。また、残差についての区分化および対応する残差の変換の粒度が定義される。
【0090】
いずれの場合でも、画像および動画の符号化での付随する情報のビットレートの削減など、上記で概説した利点が、結合によって得られる。任意の単連結領域や標本などの、正方形または長方形のブロック、または、任意の形状の領域、または、その他の標本の集合を表す標本の特定の集合は、通常、符号化パラメータの特定の集合と接続される。標本の各集合について、符号化パラメータはビットストリームに含まれ、符号化パラメータは、符号化済みの標本を使用して対応する標本の集合を予測する方法を指定する予測パラメータなどを表す。画像の標本配列から標本の集合への区分化は、構文によって固定されてもよく、また、ビットストリーム内の対応する細分割情報によって伝達されてもよい。標本の集合の符号化パラメータは、構文で指定される所定の順序で伝送されてもよい。結合部30は、結合の機能に従って、標本の共通の集合、または、1つ以上の他の標本の集合と結合された予測ブロックや残差ブロックなどの現在のブロックについて、標本の集合のグループに情報伝達することが可能である。したがって、標本の集合のグループの符号化パラメータは、一度だけ伝送される必要がある。特定の実施の形態では、符号化パラメータが既に伝送済みである標本の集合、または、標本の集合の既存のグループと、現在の標本の集合が結合される場合は、現在の標本の集合の符号化パラメータは、伝送されない。その代わりに、現在の標本の集合の符号化パラメータが、現在の標本の集合が結合されている、標本の集合、または、標本の集合のグループの符号化パラメータと等しく設定される。別のアプローチとして、1つ以上の符号化パラメータのための追加のリファインメントを、現在の標本の集合について伝送できる。リファインメントは、グループの標本の集合の全て、または、リファインメントが伝送される標本の集合のみのどちらかに適用できる。
【0091】
実施の形態では、上述した予測ブロック、上述した残差ブロック、上述したマルチツリーの細分割のリーフブロックなどの標本の各集合について、全ての符号化/復号化済みの標本の集合の集合を「因果標本の集合の集合」と称する。たとえば、
図3Cを参照する。この図で示している全てのブロックは、予測の細分割や残差の細分割などの特定の細分割、または、マルチツリーの細分割などの結果であり、これらのブロック間で定義される符号化/復号化の順序は、矢印350で定義されている。これらのブロックのうちの特定のブロックを、現在の標本の集合、または、現在の単連結領域として考えると、その因果標本の集合の集合は、順序350で現在のブロックより前にある全てのブロックで構成される。しかし、マルチツリーの細分割を使用しない別の細分割も、以下で説明している結合の原則に関する限り、可能である。
【0092】
現在の標本の集合との結合に使用できる標本の集合は、以下では「候補の標本の集合の集合」と呼び、常に「因果標本の集合の集合」の部分集合となる。部分集合を形成する方法は、デコーダに通知するか、または、エンコーダからデコーダへのデータストリームまたはビットストリーム内で指定することが可能である。特定の現在の標本の集合が符号化/復号化され、その候補の標本の集合の集合が空ではない場合は、共通の標本の集合が、この候補の標本の集合のうちの1つの標本の集合と結合されるか否かが、エンコーダによってデータストリーム内で情報伝達が行われ、デコーダによってデータストリームから導き出される。結合される場合は、それらがあわせて情報伝達される。そうでない場合は、候補の標本の集合の集合が空であり、このブロックで結合を使用することはできない。
【0093】
候補の標本の集合の集合を表す、因果標本の集合の部分集合を判定する方法には、さまざまな方法がある。たとえば、候補の標本の集合の判定は、長方形または正方形のブロックの左上の画像の標本などの、一意に幾何学的に定義された、現在の標本の集合の中の標本に基づいて行われてもよい。この一意に幾何学的に定義された標本から開始し、ゼロではない特定の標本の数が決定される。これは、この一意に幾何学的に定義された標本に、空間的に直接隣接することを表す。たとえば、このゼロではない特定の標本の数には、現在の標本の集合の一意に幾何学的に定義された標本の上部に隣接するものおよび左に隣接するものが含まれる。隣接する標本のゼロではない数は、最大で2であり、上部または左に隣接しているものの1つが利用できないか画像の外側に存在している場合は1であり、両方とも隣接しているものがない場合はゼロである。
【0094】
そして、上記の隣接する標本のゼロではない数の少なくとも1つを含む標本の集合を包含するように、候補の標本の集合の集合が決定される。たとえば、
図9Aを参照する。結合の対象として考慮中の現在の標本の集合をブロックXとし、その一意に幾何学的に定義された標本を、400で例示した左上の標本とする。標本400の上部および左に隣接する標本を、402および404で示している。因果標本の集合の集合、または、因果ブロックの集合は、陰影を付けて強調されている。これらのブロックのうち、ブロックAおよびBは、隣接する標本402および404のうちの1つを含むため、これらのブロックは、候補ブロックの集合、または、候補の標本の集合の集合を形成する。
【0095】
別の実施の形態では、結合を目的として決定される候補の標本の集合の集合が、ゼロではない特定の標本の数を含む標本の集合を、追加的または排他的に含んでいてもよい。ゼロではない特定の標本の数は、1または2で、空間的に同じ位置だが異なる画像に含まれている、すなわち、符号化/復号化済みの画像などである。たとえば、
図9AのブロックAおよびBに加えて、標本400と同じ位置の標本を含む符号化済みの画像のブロックを使用できる。なお、上部に隣接する標本404のみまたは左に隣接する標本402のみを使用して、隣接する標本の上記のゼロではない数の定義できる。一般に、候補の標本の集合の集合は、現在の画像または他の画像内の処理済みのデータから導き出されてもよい。この導出は、特定の方向と関連付けられている変換係数や現在の画像の傾きなどの空間的な方向の情報を含んでいてもよく、また、隣接する動きの表現などの時間的な方向の情報を含んでいてもよい。受信部/デコーダで利用できるそのようなデータ、および、存在する場合は、データストリーム内の他のデータおよび付随する情報から、候補の標本の集合の集合が導き出されてもよい。
【0096】
エンコーダ側の結合部30およびデコーダ側の結合部104bの両方で並行して候補の標本の集合が導き出される。上述のとおり、両方に通知済みの所定の方法に基づいて、相互に依存せず両方で候補の標本の集合の集合を決定してもよい。また、エンコーダがビットストリーム内でヒントの情報を伝達してもよい。これによって、エンコーダ側の結合部30が候補の標本の集合の集合を決定したのと同じ方法で、これらの候補の標本の集合を導き出す位置に結合部104bが置かれる。
【0097】
以下で詳細に説明するとおり、結合部30およびデータストリーム挿入部18は、連動して、標本の各集合について1つ以上の構文要素を伝送する。この構文要素によって、標本の集合が、結合済みの標本の集合のグループの一部である別の標本の集合と結合されるか否か、および、結合に使用される候補の標本の集合の集合が指定される。続いて、抽出部102は、これらの構文要素を抽出し、それに従って結合部104bに通知する。特に、後述する具体的な実施の形態では、特定の標本の集合について結合の情報を指定するために1つまたは2つの構文要素が伝送される。1つめの構文要素によって、現在の標本の集合が別の標本の集合と結合されるか否かが指定される。2つめの構文要素は、現在の標本の集合が別の標本の集合と結合されることが1つめの構文要素によって指定される場合のみに伝送され、結合に使用される候補の標本の集合の集合が指定される。導き出された候補の標本の集合の集合が空の場合は、1つめの構文要素は伝送されなくてもよい。言い換えると、1つめの構文要素は、導き出された候補の標本の集合の集合が空でない場合のみに伝送されてもよい。2つめの構文要素は、導き出された候補の標本の集合の集合に複数の標本の集合が含まれる場合のみに伝送されてもよい。なぜなら、候補の標本の集合の集合に含まれる標本の集合が1つのみの場合は、それ以上の選択は不可能だからである。さらに、候補の標本の集合の集合が複数の標本の集合を含むが、候補の標本の集合のうちの全ての標本の集合が同じ符号化パラメータに関連付けられている場合は、2つめの構文要素は伝送されなくてもよい。言い換えると、2つめの構文要素は、導き出された候補の標本の集合のうち少なくとも2つの標本の集合が、異なる符号化パラメータに関連付けられている場合のみに伝送されてもよい。
【0098】
ビットストリーム内で、標本の集合についての結合の情報は、予測パラメータ、または、その標本の集合に関連付けられている他の特定の符号化パラメータよりも前に符号化されてもよい。予測パラメータまたは符号化パラメータは、結合の情報によって、現在の標本の集合が他の標本の集合と結合されないことが情報伝達される場合のみに送信されてもよい。
【0099】
特定の標本の集合、すなわちブロックなどについての結合の情報は、予測パラメータの真部分集合、より一般的な意味では、それぞれの標本の集合に関連付けられている符号化パラメータが伝送された後に符号化されてもよい。予測/符号化パラメータの部分集合は、1つ以上の参照画像インデックス、または、1つ以上の運動パラメータのベクトルの成分、または、参照インデックスおよび1つ以上の運動パラメータのベクトルの成分などで構成されてもよい。予測パラメータまたは符号化パラメータの伝送済みの部分集合を、上記で導き出された暫定的な候補の標本の集合の集合から候補の標本の集合の集合を導き出すのに使用できる。たとえば、現在の標本の集合符号化済みの予測パラメータおよび符号化パラメータと、候補の標本の集合の予備集合の対応する予測パラメータおよび符号化パラメータとの間の、所定の隔たりの基準に基づいた差の大きさまたは隔たりを算出できる。そして、算出された差の大きさまたは隔たりが所定の閾値または導き出された閾値以下の標本の集合のみが、候補の標本の集合の最終的な、すなわち、縮小された集合に含まれる。たとえば、
図9Aを参照する。現在の標本の集合をブロックXとする。このブロックに関連する符号化パラメータの部分集合が、データストリーム22に既に挿入されているとする。たとえば、ブロックXが予測ブロックであり、符号化パラメータの真部分集合が、画像参照インデックスを含む集合の部分集合などの、このブロックXについての予測パラメータの部分集合、および、運動ベクトルなどの動きのマッピング情報であったと想定する。ブロックXが残差ブロックである場合は、符号化パラメータの部分集合は、ブロックX内の変換係数や有意な変換係数の位置を表すマップなどの、残差の情報の部分集合である。この情報に基づいて、データストリーム挿入部18および抽出部102の両方が、この情報を使用して、この特定の実施の形態で、上述した候補の標本の集合の予備集合を形成する、ブロックAおよびBの部分集合を決定することができる。特に、ブロックAおよびBは因果標本の集合の集合に属しているため、その符号化パラメータは、エンコーダおよびデコーダの両方で、ブロックXの符号化パラメータが符号化/復号化される際に利用できる。したがって、上記の差の大きさの比較を使用して、候補の標本の集合AおよびBの予備集合の任意の数のブロックを除外してもよい。そして、候補の標本の集合の、結果として縮小される集合を、上述したように使用してもよい。すなわち、以下について決定するために使用してもよい。候補の標本の集合の縮小される集合内の標本の集合の数に応じて、結合を表すマージ指標がデータストリーム内で伝送されるか、あるいは、データストリームから抽出されるかについて、および、2つめの構文要素がデータストリーム内で伝送される必要があるか、あるいは、データストリームから抽出される必要があるかについて決定する。2つめの構文要素は、候補の標本の集合の縮小される集合内のどの標本の集合を結合の相手のブロックとするかを表す。つまり、所定の単連結領域についての結合の決定、または、それぞれの結合の構文要素の伝送は、所定の単連結領域に対して所定の相対的な位置関係にあり、同時に所定の単連結領域についての符号化パラメータの第1の部分集合に対して所定の関係を満たす符号化パラメータが関連付けられている単連結領域の数に基づいて行われてもよく、予測の残差の抽出を行う採用または予測が、所定の単連結領域についての符号化パラメータの第2の部分集合で行われてもよい。つまり、所定の単連結領域に対して所定の相対的な位置関係にあり、同時に所定の単連結領域についての符号化パラメータの第1の部分集合に対して所定の関係を満たす符号化パラメータが関連付けられている単連結領域の数の1つまたは特定された1つの符号化パラメータの部分集合のみが、所定の単連結領域の第2の部分集合から採用されてもよく、所定の単連結領域の第2の部分集合の予測に使用されてもよい。
【0100】
上記の隔たりが比較される上記の閾値は、固定されてエンコーダおよびデコーダの両方に通知されていてもよく、また、差の値の中央値や他の中心傾向などの、算出された隔たりに基づいて導き出されてもよい。この場合に、候補の標本の集合の縮小される集合が、候補の標本の集合の予備集合の真部分集合となることは不可避である。あるいは、それらの標本の集合のみが、隔たりの大きさに基づいた隔たりが最小になる候補の標本の集合の予備集合から選択される。あるいは、上記の隔たりの大きさを使用して、標本の1つの集合が、候補の標本の集合の予備集合から選択される。後者の場合、結合の情報で指定する必要があるのは、現在の標本の集合が、単一の候補の標本の集合と結合されるか否かのみである。
【0101】
よって、候補ブロックの集合は、
図9Aを参照して以下で説明するように、形成されるか、あるいは、導き出される。
図9Aの現在のブロックXの左上の標本の位置400から開始され、その左に隣接する標本402の位置、および、その上部に隣接する標本404の位置がエンコーダおよびデコーダの側で導き出される。よって、候補ブロックの集合は、最大で2つのみの要素、すなわち、
図9Aの因果ブロックの陰影を付けた集合のうち、
図9の場合はブロックBおよびAとなる、2つの標本の位置の1つを含むブロックを持つことができる。よって、候補ブロックの集合は、現在のブロックの左上の標本の位置の2つの直接隣接するブロックのみをその要素として有することができる。他の実施の形態では、現在のブロックよりも前に符号化されていて、現在のブロックの任意の標本に空間的に直接隣接するものを表す1つ以上の標本を含む全てのブロックによって、候補ブロックの集合が形成される。直接の空間的な隣接関係は、現在のブロックの任意の標本の、左への直接の隣接、および/または、上部への直接の隣接、および/または、右への直接の隣接、および/または、下部への直接の隣接に制限してもよい。たとえば、別のブロックの細分割を示す
図9Bを参照する。この場合、候補ブロックは4つのブロックを含み、すなわち、ブロックA、B、C、およびDである。
【0102】
また、現在のブロックの任意の標本と同じ位置にあるが、異なる画像、すなわち、符号化/復号化済みの画像に含まれる、1つ以上の標本を含むブロックを、候補ブロックの集合が追加的または排他的に含んでいてもよい。
【0103】
また、候補のブロックの集合は、空間的または時間的な方向での隣接関係によって決定された、上述したブロックの集合の部分集合を表す。候補ブロックの部分集合は、固定されてもよく、情報伝達されてもよく、導き出されてもよい。候補ブロックの部分集合の導出では、その画像または他の画像内の他のブロックについての決定を考慮してもよい。たとえば、同じ符号化パラメータ、または、他の候補ブロックよりも類似性が非常に高い符号化パラメータに関連付けられているブロックは、候補のブロックの集合に含まれていなくてもよい。
【0104】
実施の形態についての以下の説明は、最大で、現在のブロックの左上の標本の左および上部に隣接する標本を含むブロック2つのみが、候補として考慮される場合に適用される。
【0105】
候補ブロックの集合が空ではない場合は、現在のブロックが候補ブロックのいずれかと結合されるか否かを指定するmerge_flagというフラグが情報伝達される。merge_flagが0(「false」を示す)の場合、このブロックは、候補ブロックのうちの1つとは結合されず、全ての符号化パラメータは通常どおり伝送される。merge_flagが1(「true」を示す)の場合は、以下が適用される。候補ブロックの集合がブロックを1つだけ含む場合は、この候補ブロックが結合に使用される。そうでない場合、候補ブロックの集合は2つのブロックを含む。これらの2つのブロックの予測パラメータが同一の場合は、これらの予測パラメータが現在のブロックに使用される。そうでない場合(2つのブロックが異なる予測パラメータを有する場合)は、merge_left_flagというフラグが情報伝達される。merge_left_flagが1(「true」を示す)の場合は、現在のブロックの左上の標本の位置の左に隣接する標本の位置を含むブロックが、候補ブロックの集合から選択される。merge_left_flagが0(「false」を示す)の場合は、候補ブロックの集合から、他の(すなわち、上部に隣接する)ブロックが選択される。選択されたブロックの予測パラメータは、現在のブロックに使用される。
【0106】
結合に関して上述したいくつかの実施の形態をまとめて、入力部116に入力されるデータストリーム22から結合の情報を抽出するために抽出部102が行うステップを示した
図10を参照する。
【0107】
現在の標本の集合またはブロックについて、候補ブロックまたは標本の集合を特定する450から、処理が開始される。ブロックについての符号化パラメータが、データストリーム22内で特定の1次元の順序で伝送されるので、
図10では、現在走査されている標本の集合またはブロックについての結合の情報の取得の処理について説明している。
【0108】
前述したとおり、特定およびステップ450は、復号化済みのブロック、すなわち、因果ブロックの集合から、隣接関係の観点に基づいて行う特定を含んでいてもよい。たとえば、空間的または時間的に、現在のブロックXの幾何学的に予め決定された1つ以上の標本と隣接する、特定の隣接する標本を含む隣接するブロックが、指名された候補であってもよい。さらに、特定を行うステップには、2つの段階が含まれていてもよい。すなわち、候補ブロックの予備集合を得る上記の特定、すなわち、隣接関係に基づいた特定を含む1つめの段階と、ステップ450の前にデータストリームから復号化済みのブロックのみが、伝送済みの符号化パラメータが現在のブロックXの符号化パラメータの真部分集合との特定の関係を満たす指名された候補となる2つめの段階である。
【0109】
次に、処理はステップ452に進み、候補ブロックの数がゼロよりも大きいか否かについて判定される。大きい場合は、ステップ454でmerge_flagがデータストリームから抽出される。抽出のステップ454にエントロピー復号化が含まれてもよい。ステップ454でのmerge_flagのエントロピー復号化についてのコンテキストは、たとえば、候補ブロックの集合または候補ブロックなどの予備集合に属している構文要素に基づいて判定されてもよい。その場合、構文要素への依存度は、該当の集合に属しているブロックが結合の対象であったか否かの情報に制限されてもよい。選択されたコンテキストの確率の推定が適応されてもよい。
【0110】
一方、ステップ452で、候補ブロックの数がゼロと判定された場合は、
図10の処理はステップ456に進み、現在のブロックの符号化パラメータがビットストリームから抽出される。また、上記の2段階の特定の場合は、残りの符号化パラメータが抽出され、その後、抽出部102が
図3Cに示した順序350などのブロックの走査の順序で次のブロックの処理に進む。
【0111】
ステップ454に戻ると、処理は、ステップ454の抽出の後、ステップ458に進み、現在のブロックの結合が発生するか否かを、抽出されたmerge_flagが示唆しているか否かについて確認が行われる。結合が行われない場合は、処理は上記のステップ456へ進む。結合が行われる場合は、処理はステップ460へ進み、候補ブロックの数が1か否かについて確認が行われる。候補ブロックの数が1の場合は、候補ブロックのうちの特定の候補ブロックを示して伝送する必要はないため、
図10の処理はステップ462に進み、現在のブロックの結合の相手がその唯一の候補ブロックに設定される。その後、ステップ464で、結合された相手のブロックの符号化パラメータが、その符号化パラメータ、または、現在のブロックの残りの符号化パラメータの適応または予測に使用される。適応の場合は、現在のブロックの不足している符号化パラメータが、結合の相手のブロックからコピーされるだけである。この他の場合、すなわち、予測の場合は、ステップ464で、データストリームから残差データの抽出をさらに行ってもよい。この残差データは、現在のブロックの不足している符号化パラメータの予測の残差に関連する。そして、この残差データと、結合の相手のブロックから取得されるこれらの不足している符号化パラメータの予測との組合せを行ってもよい。
【0112】
一方、ステップ460で候補ブロックの数が1より大きいと判定された場合は、
図10の処理はステップ466へ進み、符号化パラメータまたは符号化パラメータの該当する部分、すなわち、現在のブロックについてのデータストリーム内でまだ伝送されていない部分に関係する一部分が、互いに同一であるか否かについての確認が行われる。同一である場合は、ステップ468で、これらの共通の符号化パラメータが結合の参照として設定される。あるいは、候補ブロックが結合の相手として設定される。そして、それぞれの該当する符号化パラメータが、ステップ464で、適応または予測に使用される。
【0113】
結合の相手自体が、結合が情報伝達されたブロックであってもよい。この場合、その結合の相手の、採用された符号化パラメータ、または、予測で取得された符号化パラメータが、ステップ464で使用される。
【0114】
一方、そうでない場合、すなわち、符号化パラメータが同一でない場合は、
図10の処理はステップ470に進み、さらに構文要素merge_left_flagがデータストリームから抽出される。このフラグのエントロピー復号化には、別個のコンテキストの集合が使用されてもよい。また、merge_left_flagのエントロピー復号化に使用されるコンテキストの集合は、1つのみのコンテキストで構成されていてもよい。ステップ470の後、merge_left_flagによって示唆された候補ブロックが、ステップ472で結合の相手に設定され、ステップ464で適応または予測に使用される。ステップ464の後、抽出部102は、ブロックの順序で次のブロックの処理に進む。
【0115】
当然ながら、別の形態が多数存在する。たとえば、前述したmerge_flagおよびmerge_left_flagの別個の構文要素の代わりに、データストリーム内で構文要素を組み合わせて伝送して、組み合わされた構文要素で結合の処理を情報伝達してもよい。また、上記のmerge_left_flagは、2つの候補ブロックが同じ予測パラメータを有しているか否かに関係なく、データストリーム内で伝送されてもよく、その結果、
図10の処理を行うための計算のオーバーヘッドが削減される。
【0116】
既に
図9Bなどで示したように、候補ブロックの集合に、3つ以上のブロックが含まれていてもよい。また、結合の情報、すなわち、ブロックが結合されるか否か(結合される場合は、候補ブロックと結合される)の情報伝達を行う情報が、1つ以上の構文要素で伝達されていてもよい。ブロックが候補ブロックのいずれかと結合されるか否かを、上述のmerge_flagなどの1つの構文要素で指定することができる。フラグは、候補ブロックの集合が空ではない場合にのみ伝送されてもよい。上記のmerge_left_flagなどの、2つめの構文要素で、どの候補ブロックが結合に使用されるかを情報伝達してもよい。通常、2つ以上の候補ブロックからの選択が示される。2つめの構文要素は、現在のブロックが候補ブロックの1つと結合されることを示す信号が1つめの構文要素によって伝達される場合にのみ情報伝達されてもよい。さらに、2つめの構文要素は、候補ブロックの集合が複数の候補ブロックを含む場合、および/または候補ブロックのいずれかが、他の候補ブロックとは異なる予測パラメータを有している場合にのみ送信されてもよい。構文は、候補ブロックの数、および/または候補ブロックに関連付けられている予測パラメータがどの程度異なっているかに応じたものとなる。
【0117】
候補ブロックのどのブロックが使用されるかを情報伝達する構文は、エンコーダおよびデコーダの側で、同時におよび/または並行して設定されてもよい。たとえば、ステップ450で特定される候補ブロックについて3つの選択肢がある場合は、これらの3つの選択肢のみがたとえば、ステップ470などでエントロピー符号化に利用可能で考慮の対象となるように、構文が選択される。言い換えると、シンボルアルファベットが、存在する候補ブロックの選択肢の数と同じ数だけ要素を有するように、構文要素が選択される。その他全ての選択肢の可能性はゼロであると考えてよく、エントロピー符号化/復号化が、エンコーダおよびデコーダで同時に調整されてもよい。
【0118】
さらに、ステップ464で言及したように、結合の処理の結果として推定された予測パラメータは、現在のブロックに関連付けられている予測パラメータの完全集合を表してもよい。あるいは、複数の仮説による予測が行われるブロックの1つの仮説についての予測パラメータなど、これらの予測パラメータの部分集合を表してもよい。
【0119】
上記で言及したように、結合の情報に関連している構文要素を、コンテキストモデリングを使用して、エントロピー符号化することができる。構文要素は、上述のmerge_flagおよびmerge_left_flag(または、同様の構文要素)で構成されていてもよい。具体例では、ステップ454などで、3つのコンテキストモデルまたはコンテキストから1つを、merge_flagの符号化/復号化に使用できる。使用されるコンテキストモデルのインデックスmerge_flag_ctxが、次のように導き出されてもよい。候補ブロックの集合が2つの要素を含む場合は、merge_flag_ctxの値は、2つの候補ブロックのmerge_flagの値の和に等しい。一方、候補ブロックの集合が含む要素が1つの場合は、merge_flag_ctxの値は、この1つの候補ブロックのmerge_flagの値の2倍に等しくしてもよい。隣接する候補ブロックの各merge_flagは1または0になるので、merge_flagに3つのコンテキストを利用できる。merge_left_flagは、単一の確率モデルのみを使用して、符号化してもよい。
【0120】
また、別の実施の形態においては、異なるコンテキストモデルが使用されてもよい。たとえば、binと呼ばれる一連のバイナリシンボルに、非バイナリの構文要素がマッピングされてもよい。結合の情報を定義するいくつかの構文要素または構文要素のbinについてのコンテキストモデルが、隣接するブロックの伝送済みの構文要素、または、候補ブロックの数などに基づいて導き出され、他の構文要素または構文要素のbinが、固定されたコンテキストモデルで符号化されてもよい。
【0121】
上記のブロックの結合の説明に関して、候補ブロックの集合は、上述の実施の形態のいずれかに次のような修正を加えた方法で導き出されてもよい。候補ブロックを、動き補償予測または相互予測を使用しているブロックにそれぞれ制限する。そういったブロックのみが、候補ブロックの集合の要素となることができる。マージ情報の伝達およびコンテキストモデリングは、上述したように行うことができる。
【0122】
上述のマルチツリーの細分割の実施の形態と、現在説明している結合の態様との組合せに戻る。四分木に基づいた細分割の構造を使用して、可変サイズの正方形のブロックに画像を分割する場合、たとえば、merge_flagおよびmerge_left_flagなどの結合を指定する構文要素は、四分木の構造の各リーフノードについて伝送される予測パラメータと交互に扱われる。たとえば、
図9Aを再度考察する。
図9Aは、可変サイズの予測ブロックへの、四分木に基づいた画像の細分割の例を示している。最大のサイズの上部の2つのブロックは、ツリーブロックと呼ばれる。すなわち、最大可能サイズの予測ブロックである。この図の他のブロックは、対応するツリーブロックが細分割されて得られる。現在のブロックは、「X」で示されている。陰影が付いているブロックは全て、現在のブロックより前にエンコーディング/復号化されるので、因果ブロックの集合が形成される。実施の形態の1つについて、候補ブロックの集合の導出の説明で詳説したように、現在のブロックの左上の標本の位置の直接(すなわち、上部または左に)隣接する標本を含むブロックのみが、候補ブロックの集合の要素となることができる。よって、現在のブロックは、ブロック「A」またはブロック「B」のどちらかと結合できる。merge_flagが0(「false」を示す)の場合は、現在のブロック「X」は2つのブロックのどちらとも結合されない。ブロック「A」および「B」が同一の予測パラメータを有する場合は、2つのブロックのどちらと結合を行っても同じ結果となるので、区別を行う必要はない。そのため、この場合には、merge_left_flagは伝送されない。そうではなく、ブロック「A」および「B」が異なる予測パラメータを有する場合は、merge_left_flagが1(「true」を示す)であると、ブロック「X」および「B」が結合され、一方で、merge_left_flagが0(「false」を示す)であると、ブロック「X」および「A」が結合される。別の好適な実施の形態では、追加の隣接する(伝送済みの)ブロックが、結合の候補を表す。
【0123】
図9Bでは、別の例を示している。ここで、現在のブロック「X」、および、左に隣接するブロック「B」は、ツリーブロックであり、すなわち、最大の許容ブロックサイズになっている。上部に隣接するブロック「A」のサイズは、ツリーブロックのサイズの4分の1である。因果ブロックの集合の要素であるブロックには陰影を付けてある。好適な実施形態の1つにおいては、現在のブロック「X」は、2つのブロック「A」または「B」のみと結合でき、上部で隣接する他のブロックとは結合できない。他の好適な実施の形態では、追加の隣接する(伝送済みの)ブロックが、結合の候補を表す。
【0124】
本願の実施の形態に従って、1つの画像のうちの異なる標本配列を取扱う態様についての説明に進む前に、マルチツリーの細分割を行って情報伝達を行いながら一方で結合を行う態様に関しての上記の説明で、これらの態様によって、互いに独立して利用することができる利点が得られることを明らかにした。つまり、上記で既に説明したとおり、マルチツリーの細分割と結合との組合せによって、具体的な利点が得られる。しかし、別の方法でも利点が得られる。たとえば、四分木またはマルチツリーの細分割に基づいてではなく、これらのマクロブロックをより小さい区分へ規則的に区分化するマクロブロックの細分割に対応して、細分割部30、104aによって行われる細分割で結合の機能が具現化される。その一方で、ツリーブロックの最大サイズの指示のビットストリーム内での伝送を行うマルチツリーの細分割と、深度順のトラバースの順序を使用してブロックの対応する符号化パラメータを伝送するマルチツリーの細分割の使用との組合せによって、結合の機能が並行して利用されるか否かに関係なく、利点が得られる。一般に、次のことを考慮すると、直感的に、結合の利点を理解することができる。標本配列の符号化の構文が、ブロックの細分割を可能にするだけでなく、細分割後に得られる2つ以上のブロックを結合することも可能にする方法で拡張されると、符号化の効率が向上する。その結果、同じ予測パラメータで符号化されるブロックのグループが得られる。そういったブロックのグループについての予測パラメータが符号化される必要があるのは、一度だけである。また、標本の集合の結合について、再度述べるが、考えられる標本の集合は、長方形または正方形のブロックであり、結合された標本の集合は、長方形または正方形のブロックの集まりとなる。また、考えられる標本の集合は、任意の形状の画像領域も考えられ、結合された標本の集合は、任意の形状の画像領域の集まりとなる。
【0125】
以下では、画像ごとに複数の標本配列がある場合の、画像の異なる標本配列の扱いについて重点的に説明する。以下で概説される態様では、使用される細分割の種類に関係なく、すなわち、マルチツリーの細分割に基づいた細分割か否か、および、結合が使用されるか否かに関係なく、利点が得られる。1つの画像のうちの異なる標本配列の扱いについて、具体的な実施の形態の説明に入る前に、画像ごとの異なる標本配列の扱いに関しての短い導入を挟んでから、これらの実施の形態の本題を説明する。
【0126】
以下では、画像または動画の符号化においての、1つの画像のうちの異なる標本配列のブロック間の符号化パラメータについて重点的に説明する。特に、たとえば、
図1および
図2のそれぞれのエンコーダおよびデコーダに限らず、別の画像または動画の符号化の環境も含めた環境での、1つの画像のうちの異なる標本配列間での符号化パラメータを、状況に合わせて予測する方法について重点的に説明する。上述のとおり、標本配列は、さまざまな色成分に関連する標本配列、または、透明度のデータや深度のマップなどの付加情報と画像を関連付ける標本配列を表すことができる。画像の色成分に関連する標本配列は、色平面とも呼ばれる。以下で説明する技術は、平面間採用/予測とも呼ばれ、ブロックを利用する画像および動画のエンコーダおよびデコーダで使用できる。その場合、画像の標本配列のブロックが処理される順序は任意である。
【0127】
一般的に、画像および動画のコーダーは、カラー画像(静止画または動画のシーケンスの画像のどちらか)の符号化を目的として設計されている。カラー画像は、異なる色成分の標本配列を表す複数の色平面で構成されている。多くの場合、カラー画像は、輝度の平面、および、2つの彩度の平面で構成される標本配列の集合として符号化され、2つの彩度の平面では、色差の成分が指定される。一部の用途では、符号化される標本配列の集合が、三原色である赤、緑、青の標本配列を表す3つの色平面で構成されることも一般的である。さらに、色表現の向上のために、カラー画像が、4つ以上の色平面で構成される場合もある。さらに、画像の付加情報を指定する補助的な標本配列に画像を関連付けることもできる。たとえば、そういった補助的な標本配列には、関連付けられているカラー標本配列の透明度を指定する標本配列(特定の表示の目的に適している)や、深度のマップを指定する標本配列(3D表示など、多視点のレンダリングに適している)などがある。
【0128】
従来の画像および動画の符号化の規格(H.264など)では、通常、色平面はまとめて符号化される。その場合、マクロブロックおよび下位のマクロブロックの予測モード、参照インデックス、運動ベクトルなどの特定の符号化パラメータが、1つのブロックの全ての色成分に使用される。輝度の平面は、特定の符号化パラメータがビットストリーム内で指定される一次の色平面と考えることができ、彩度の平面は、一次の輝度の平面から対応する符号化パラメータが推定される二次的な平面と考えることができる。輝度のブロックはそれぞれ、画像内の同じ領域を表す2つの彩度のブロックに関連付けられている。使用されている彩度のサンプリング形式によっては、1つのブロックについて、彩度の標本配列は、輝度の標本配列よりも小さくなる。1つの輝度の成分、および、2つの彩度の成分で構成される各マクロブロックについて、同じ区分化が行われ、より小さいブロックへの区分化が行われる(マクロブロックが細分割される場合)。輝度の標本のブロック1つと、彩度の標本のブロック2つで構成される各ブロック(マクロブロック自体、または、マクロブロックのサブブロックの場合がある)について、参照インデックスや運動パラメータなどの同じ予測パラメータの集合が使用され、場合によって、イントラ予測モードが使用される。従来の動画の符号化の規格の特定のプロファイル(H.264の4:4:4プロファイルなど)では、1つの画像の異なる色平面を独立して符号化することも可能である。その構成では、マクロブロックまたはサブブロックの色成分について、マクロブロックの区分化、予測モード、参照インデックス、および、運動パラメータを、別々に選択することが可能である。従来の符号化の規格では、同じ特定の符号化パラメータの集合(細分割情報や予測パラメータなど)を使用して全ての色平面が符号化されるか、全ての色平面が互いに完全に独立して符号化されるかのどちらかである。
【0129】
色平面がまとめて符号化される場合は、ブロックの全ての色成分に、細分割および予測のパラメータの1つの集合が使用される必要がある。これによって、付随する情報を確実に小さく抑えることができるが、独立して符号化される場合と比較して、符号化の効率が下がる場合がある。これは、異なる色成分に、異なるブロックの分解および予測のパラメータを使用すると、レート/歪みの損失量が小さくなる場合があるためである。たとえば、異なる運動ベクトルまたは参照フレームを彩度の成分に使用すると、彩度の成分についての残差信号のエネルギーが著しく減少し、全体の符号化の効率が上がる場合がある。色平面が独立して符号化される場合は、各色成分についての符号化の効率を最適化するために、ブロックの区分化、参照インデックス、運動パラメータなどの符号化パラメータを、各色成分について別々に選択できる。しかし、色成分の間で、冗長性を利用することはできない。特定の符号化パラメータの複数回の伝送によって、(まとめて符号化する場合と比較して)付随する情報のレートが増加し、この付随する情報のレートの増加が、全体の符号化の効率に悪影響を与える場合がある。また、最新の動画の符号化の規格(H.264など)での補助的な標本配列のサポートは、独自の符号化パラメータの集合を使用して補助的な標本配列を符号化する場合に限定される。
【0130】
よって、これまでに説明した全ての実施の形態において、画像の平面を上述のとおりに扱うことができる。しかし、同じく上述したとおり、ブロック単位での決定が可能な場合、たとえば、ブロックの全ての標本配列が同じ符号化パラメータで符号化されるか否かや、異なる符号化パラメータが使用されるか否かを決定できる場合に、複数の標本配列(異なる色平面、および/または、補助的な標本配列に関連している場合がある)を符号化する場合の全体の符号化の効率が向上する場合がある。以下の平面間予測の基本的な考え方は、そういったブロック単位での状況に合わせた決定を可能にすることである。エンコーダは、たとえば、レート/歪みの基準に基づいて、特定のブロックの標本配列の全てまたは一部が、同じ符号化パラメータを使用して符号化されるか否かや、異なる標本配列に異なる符号化パラメータが使用されるか否かを選択することができる。また、標本配列の特定のブロックについて、異なる標本配列の同じ場所にある符号化済みのブロックから特定の符号化パラメータが推定されるか否かを情報伝達することによって、この選択を実現できる。1つの画像についての異なる標本配列をグループで配置することも可能であり、これらは標本配列グループまたは平面グループと呼ばれる。各平面グループには、画像の標本配列を1つ以上含むことができる。そして、平面グループ内の標本配列のブロックは、細分割情報、予測モード、残差の符号化のモードなどの、選択された同じ符号化パラメータを共有する。その一方で、変換係数レベルなどの他の符号化パラメータは、平面グループ内の各標本配列について別々に伝送される。1つの平面グループは、一次の平面グループとして符号化される。すなわち、他の平面グループから推定または予測される符号化パラメータはない。二次的な平面グループの各ブロックについては、選択される符号化パラメータの新たな集合が伝送されるか否か、または、選択される符号化パラメータが一次の平面グループまたは別の二次的な平面グループから推定または予測されるか否かを、状況に合わせて選択できる。特定のブロックについて選択される符号化パラメータが推定または予測されるか否かの決定は、ビットストリームに含まれる。平面間予測によって、複数の標本配列で構成される画像の最新の符号化と比較して、付随する情報のレートと予測の質との間のトレードオフの選択の自由度が増す。複数の標本配列で構成される画像の従来の符号化と比較して、符号化の効率の向上が利点である。
【0131】
平面内での採用/予測によって、上記の実施の形態などの画像または動画のコーダーを、次のように拡張してもよい。カラー標本配列、または、補助的な標本配列、または、カラー標本配列および/または補助的な標本配列の集合のブロックについて、選択される符号化パラメータの集合が、同じ画像内の他の標本配列の同じ場所にある符号化済みのブロックから推定または予測されるか否か、または、ブロックについて選択される符号化パラメータの集合が、同じ画像内の他の標本配列の同じ場所にあるブロックを参照せずに独立して符号化されるか否かを、状況に合わせて選択できるように拡張してもよい。1つの標本配列のブロック、または、複数の標本配列ブロックについて、選択される符号化パラメータの集合が推定または予測されるか否かの決定は、ビットストリームに含まれてもよい。1つの画像に関連付けられている異なる標本配列が、同じサイズである必要はない。
【0132】
上述したように、画像に関連付けられている標本配列(標本配列は、色成分および/または補助的な標本配列を表すことができる)は、2つ以上のいわゆる平面グループに配置されてもよく、各平面グループは1つ以上の標本配列で構成される。特定の平面グループに含まれる標本配列は、同じサイズである必要はない。平面グループへのこういった配置には、各標本配列が別々に符号化される場合も含まれる。
【0133】
具体的には、実施の形態で、平面グループの各ブロックについて、ブロックの予測方法を指定する符号化パラメータが、同じ画像についての異なる平面グループの同じ場所にある符号化済みのブロックから推定または予測されるか否か、または、ブロックについて、これらの符号化パラメータが別々に符号化されるか否かが、状況に合わせて選択される。ブロックの予測方法を指定する符号化パラメータには、以下の符号化パラメータの1つ以上が含まれる。ブロックにどういった予測が使用されるかを指定するブロック予測モード(イントラ予測、単一の運動ベクトルおよび参照画像を使用する平面間予測、2つの運動ベクトルおよび参照画像を使用する平面間予測、高次の、すなわち、非並進運動のモデルおよび単一の参照画像を使用する平面間予測、複数の運動モデルおよび参照画像を使用する平面間予測)、イントラ予測信号の生成方法を指定するイントラ予測モード、ブロックについての最終的な予測信号の生成のために組み合わされる予測信号の数を指定する識別子、動き補償予測に使用される参照画像を指定する参照インデックス、参照画像を使用して予測信号を生成する方法を指定する運動パラメータ(変位ベクトルやアフィン運動パラメータなど)、動き補償予測の信号の生成のための参照画像のフィルタ処理の方法を指定する識別子のうち1つ以上が含まれる。概して、ブロックは、上記の符号化パラメータの部分集合のみに関連付けることができる。たとえば、ブロック予測モードで、ブロックにイントラ予測が行われるように指定された場合は、ブロックの符号化パラメータは追加としてイントラ予測モードを含むことができるが、平面間予測の信号の生成方法を指定する参照インデックスや運動パラメータなどの符号化パラメータは指定されない。あるいは、ブロック予測モードで、平面間予測が指定された場合は、関連付けられている符号化パラメータは追加として参照インデックスおよび運動パラメータを含むことができるが、イントラ予測モードは指定されない。
【0134】
2つ以上の平面グループのうちの1つが、ビットストリーム内で一次の平面グループとして、符号化されるか、または、示されてもよい。この一次の平面グループの全てのブロックについて、予測信号の生成方法を指定する符号化パラメータが、同じ画像の他の平面グループを参照することなく伝送される。残りの平面グループは二次的な平面グループとして符号化される。二次的な平面グループの各ブロックについて、ブロックの予測方法を指定する符号化パラメータが、他の平面グループの同じ場所にあるブロックから推定または予測されるか否か、または、これらの符号化パラメータの新たな集合がブロックについて伝送されるか否かを情報伝達する1つ以上の構文要素が伝送される。1つ以上の構文要素のうちの1つが、平面間予測フラグ、または、平面間予測パラメータと呼ばれる場合がある。対応する符号化パラメータの推定または予測が行われないことを示す信号が構文要素によって送信された場合は、ブロックについての対応する符号化パラメータの新たな集合が、ビットストリーム内で伝送される。対応する符号化パラメータの推定または予測が行われることを示す信号が構文要素によって送信された場合は、いわゆる参照平面グループの同じ場所にあるブロックが特定される。ブロックへの参照平面グループの割り当ては、複数の方法で構成することができる。1つの実施の形態では、特定の参照平面グループは、二次的な平面グループのそれぞれに割り当てられる。この割り当ては固定することができ、あるいは、パラメータの集合、アクセス単位のヘッダ、画像ヘッダ、スライスヘッダなどのハイレベルな構文の構造で情報伝達できる。
【0135】
2つめの実施の形態では、参照平面グループの割り当ては、ビットストリーム内で符号化され、1つ以上の構文要素によって信号が送信される。この構文要素はブロックについて符号化され、選択される符号化パラメータが推定または予測されるか、あるいは別々に符号化されるか否かが指定される。
【0136】
平面間予測および以下の詳細な実施の形態に関連して上述の可能性を説明するために、
図11を参照する。
図11は、3つの標本配列502、504、506で構成される画像500を図示している。
図11では、わかりやすいように、標本配列502~506の下位の部分のみが示されている。標本配列は、空間的に互いに対応するように示されている。標本配列502~506は方向508に沿って互いに重なるようになっている。また、方向508に沿って標本配列502~506の標本を投影すると、これら全ての標本配列502~506の標本は、互いに空間的な位置が正確に一致する。言い換えると、平面502および506は水平方向および垂直方向に広がって、互いの空間的な解像度に適応し、互いに対応している。
【0137】
実施の形態では、画像の全ての標本配列は、空間的な光景の同じ部分に属し、垂直方向および水平方向の解像度は、標本配列502~506のそれぞれで異なっていてもよい。さらに、説明のために、標本配列502、504が1つの平面グループ510に属しているものとし、その一方で、標本配列506が別の平面グループ512に属しているものとする。また、
図11では、標本配列504の水平軸に沿った空間的な解像度が、標本配列502の水平方向の解像度の2倍である場合を例示している。さらに、標本配列504は、標本配列502に対しての一次の配列となるものとする。標本配列502は、一次の配列504に対しての下位の配列となる。前述したように、この場合に、
図1の細分割部30によって決定される標本配列504のブロックへの細分割は、下位の配列502によって採用される。
図11の例では、標本配列502の垂直方向の解像度が一次の配列504の垂直方向の解像度の2分の1であるため、各ブロックは、水平に並んだ2つのブロックに等分される。このブロックは、標本配列502内の標本の位置を単位とした場合、等分によって、再度2次式のブロックとなる。
【0138】
図11で例示されているように、標本配列506について選択されている細分割は、他の平面グループ510の細分割とは異なる。前述のとおり、細分割部30は、平面グループ510についての細分割とは関係なく別々に、画素の配列506の細分割を選択してもよい。当然、標本配列506の解像度も、平面グループ510の平面502、504の解像度と異なっていてもよい。
【0139】
ここで、個々の標本配列502~506のエンコーディングの際に、エンコーダ10は、たとえば上述の方法で、平面グループ510の一次の配列504の符号化から開始してもよい。
図11で示されているブロックは、たとえば、上述の予測ブロックであってもよい。あるいは、ブロックは、残差ブロック、または、特定の符号化パラメータの定義のための粒度を定義する他のブロックである。平面間予測は、
図11に例示されている四分木またはマルチツリーの細分割に限定されるものではない。
【0140】
一次の配列504についての構文要素の伝送の後、エンコーダ10が、一次の配列504を下位の平面502の参照平面とすることを宣言することを決定してもよい。エンコーダ10および抽出部30は、それぞれ、ビットストリーム22を介してこの決定を情報伝達してもよい。また、標本配列504が平面グループ510の一次の配列となっていることから、その関連性が明確になっていてもよく、その情報は、ビットストリーム22の一部であってもよい。いずれの場合でも、標本配列502内の各ブロックについて、挿入部18、または、挿入部18と連動する他のエンコーダ10のモジュールは、次のことを決定してもよい。ビットストリーム内でのこのブロックの符号化パラメータの伝送を抑えて、その代わりにそのブロックについてのビットストリーム内で、一次の配列504内の同じ場所にあるブロックの符号化パラメータを代わりに使用する、あるいは、一次の配列504内の同じ場所にあるブロックの符号化パラメータを、標本配列502の現在のブロックの符号化パラメータの予測として使用することを示す信号を送信し、ビットストリーム内で標本配列502の現在のブロックについての残差データのみを伝送する。その決定がされない場合は、符号化パラメータはデータストリーム内で通常どおり伝送される。各ブロックについてデータストリーム22内でその決定が情報伝達される。デコーダ側では、抽出部102が、各ブロックについての平面間予測の情報を使用して、それに応じて、標本配列502のそれぞれのブロックの符号化パラメータを取得する。すなわち、一次の配列504の同じ場所にあるブロックの符号化パラメータを推定することによって、これを行う。あるいは、平面間の採用/予測の情報によって平面間の採用/予測が示唆されている場合は、データストリームからそのブロックについての残差データを抽出し、一次の配列504の同じ場所にあるブロックの符号化パラメータから取得された予測とこの残差データとを組み合わせることによって、これを行う。あるいは、一次の配列504には関係なく、通常どおり、標本配列502の現在のブロックの符号化パラメータを抽出することによって、これを行う。
【0141】
前述のとおり、参照平面が存在する場所は、現在、平面間予測の対象となっているブロックと同じ平面グループ内に限定されない。したがって、上述のとおり、平面グループ510は、二次的な平面グループ512についての一次の平面グループ、または、参照平面グループとなっていてもよい。この場合、ビットストリームは、標本配列506の各ブロックについて、一次の平面グループまたは参照平面グループ510の平面502、504のいずれかの同じ場所にあるマクロブロックの符号化パラメータの上記の採用/予測を行うか否かを表す構文要素を含んでいてもよい。後者の場合は、標本配列506の現在のブロックの符号化パラメータは、通常どおり伝送される。
【0142】
平面グループ内の平面についての細分割および/または予測パラメータは同一になる場合がある。すなわち、それらは平面グループについて一度符号化されるのみであり(平面グループの二次的な平面は全て、同じ平面グループ内の一次の平面から、細分割情報および/または予測パラメータの推定を行う)、細分割情報および/または予測パラメータの状況に合わせた予測または推定は、平面グループ間で行われる。
参照平面グループは、一次の平面グループ、または、二次的な平面グループとなる場合がある。
【0143】
採用されたリーフブロックを2次式のブロックにする、上記のさらなる区分化を除いて、一次の標本配列504の細分割は下位の標本配列502によって空間的に行われるため、平面グループ内の異なる平面のブロック同士が同じ場所にあることは理解しやすい。異なる平面グループ間の平面間の採用/予測の場合は、この同じ場所を、これらの平面グループの細分割の間の自由度が増すように定義してもよい。参照平面グループが与えられると、参照平面グループ内の同じ場所にあるブロックが特定される。以下のような処理によって、同じ場所にあるブロックおよび参照平面グループを導き出すことができる。二次的な平面グループ512の標本配列506の1つの現在のブロック516内の特定の標本514が選択される。これは、
図11の514で例示されている、現在のブロック516の左上の標本であってもよい。また、現在のブロック516の中心に近い現在のブロック516内の標本や、現在のブロック内のその他の標本であってもよく、幾何学的に一意に定義される。参照平面グループ510の標本配列502、504内の、この選択された標本515の場所が算出される。標本配列502、504内の標本514の位置は、
図11の518、520にそれぞれ示されている。参照平面グループ510の平面502、504のどちらが実際に使用されるかは、予め特定されてもよく、また、ビットストリーム内で情報伝達されてもよい。位置518、520に最も近い、参照平面グループ510の対応する標本配列502または504内の標本が、それぞれ特定され、この標本を含むブロックが、標本配列502、504内で、それぞれ、同じ場所にあるブロックとして選択される。
図11の場合は、それぞれ、ブロック522、524である。他の平面で同じ場所にあるブロックを特定するための別のアプローチについて、後述する。
【0144】
実施の形態では、追加の付随する情報を伝送することなく、同じ画像500の異なる平面グループ510内の同じ場所にあるブロック522/524の対応する予測パラメータを使用して、現在のブロック516についての予測を指定する符号化パラメータが完全に推定される。この推定は、対応する符号化パラメータを単にコピーすること、または、現在の平面グループ512と参照平面グループ510との間の差を考慮して符号化パラメータを適合させることによって行われる。たとえば、この適合で、輝度と彩度の標本配列の間の位相差を考慮するために、運動パラメータの補正(変位ベクトルの補正など)が行われてもよい。また、この適合で、輝度と彩度の標本配列の異なる解像度を考慮するために、運動パラメータの精度の修正(変位ベクトル精度の修正)が行われてもよい。他の実施の形態では、予測信号の生成を指定するための1つ以上の推定される符号化パラメータは、現在のブロック516に直接使用されないが、現在のブロック516についての対応する符号化パラメータの予測として使用され、現在のブロック516についてのこれらの符号化パラメータのリファインメントが、ビットストリーム22内で伝送される。たとえば、推定された運動パラメータは直接使用されないが、現在のブロック516に使用される運動パラメータと、推定された運動パラメータとの間の偏差を指定する、運動パラメータの差(変位ベクトルの差など)がビットストリーム内で符号化される。デコーダ側で、推定される運動パラメータと伝送される運動パラメータの差を組み合わせることによって、実際に使用される運動パラメータが得られる。
【0145】
別の実施の形態では、上述の予測の細分割のツリーブロックなどのブロックの、予測ブロック(すなわち、同じ予測パラメータの集合が使用される標本のブロック)への細分割が、状況に合わせて、同じ画像の異なる平面グループの同じ場所にある符号化済みのブロック、すなわち、
図6Aまたは
図6bのビットシーケンスから、推定または予測が行われる。実施の形態では、2つ以上の平面グループのうちの1つが、一次の平面グループとして符号化される。この一次の平面グループの全てのブロックについて、同じ画像の他の平面グループを参照することなく、細分割情報が伝送される。残りの平面グループは、二次的な平面グループとして符号化される。二次的な平面グループのブロックについて、他の平面グループの同じ場所にあるブロックから細分割情報の推定または予測が行われるか否か、または、細分割情報がビットストリーム内で伝送されるか否かを情報伝達する、1つ以上の構文要素が伝送される。1つ以上の構文要素のうちの1つが、平面間予測フラグ、または、平面間予測パラメータと呼ばれる場合がある。構文要素によって、細分割情報の推定または予測が行われないことを示す情報伝達が行われた場合は、同じ画像の他の平面グループを参照することなく、ブロックの細分割情報がビットストリーム内で伝送される。構文要素によって、細分割情報の推定または予測が行われることを示す情報伝達が行われた場合は、いわゆる参照平面グループの同じ場所にあるブロックが特定される。ブロックへの参照平面グループの割り当ては、複数の方法で構成することができる。1つの実施の形態では、特定の参照平面グループが、二次的な平面グループのそれぞれに割り当てられる。この割り当ては、固定することができ、あるいは、パラメータの集合、アクセス単位のヘッダ、画像ヘッダ、スライスヘッダなどのハイレベルな構文の構造で情報伝達できる。2つめの実施の形態では、参照平面グループの割り当ては、ビットストリーム内で符号化され、1つ以上の構文要素によって情報伝達が行われる。この構文要素はブロックについて符号化され、細分割情報が推定または予測されるか、あるいは別々に符号化されるか否かが指定される。参照平面グループは、一次の平面グループ、または、別の二次的な平面グループである場合がある。参照平面グループが与えられると、参照平面グループ内の同じ場所にあるブロックが特定される。同じ場所にあるブロックは、現在のブロックと同じ画像領域に対応する参照平面グループ内のブロック、または、画像領域の最大の部分を現在のブロックと共有する、参照平面グループ内のブロックを表すブロックである。同じ場所にあるブロックは、より小さい予測ブロックに区分化できる。
【0146】
他の実施の形態では、
図6Aまたは
図6bの四分木に基づいた細分割情報などの、現在のブロックについての細分割情報は、追加の付随する情報を伝送することなく、同じ画像の異なる平面グループ内の同じ場所にあるブロックの細分割情報を使用して、完全に推定される。1つの特定の例として、同じ場所にあるブロックが2つまたは4つの予測ブロックに区分化される場合は、現在のブロックも、予測を目的として2つまたは4つのサブブロックに区分化される。別の特定の例として、同じ場所にあるブロックが4つのサブブロックに区分化され、これらのサブブロックの1つがより小さい4つのサブブロックにさらに区分化される場合は、現在のブロックも4つのサブブロックに区分化され、これらのサブブロックの1つ(さらに分解される、同じ場所にあるブロックのサブブロックに対応するもの)も、より小さい4つのサブブロックに区分化される。他の好適な実施の形態では、推定された細分割情報は現在のブロックに直接使用されないが、現在のブロックについての実際の細分割情報の予測として使用され、対応するリファインメントの情報がビットストリーム内で伝送される。たとえば、同じ場所にあるブロックから推定される細分割情報が、さらにリファインされてもよい。より小さいブロックに区分化されない、同じ場所にあるブロック内のサブブロックに対応する各サブブロックについて、構文要素をビットストリーム内で符号化できる。これによって、現在の平面グループでサブブロックがさらに分解されるかが指定される。そういった構文要素の伝送は、サブブロックのサイズでの条件付けを行うことができる。あるいは、参照平面グループでさらに区分化されるサブブロックが、現在の平面グループでより小さいブロックに区分化されないことを示す信号をビットストリーム内で送信できる。
【0147】
他の実施の形態では、予測ブロックへのブロックの細分割、および、そのサブブロックの予測方法を指定する符号化パラメータの両方が、同じ画像についての異なる平面グループの同じ場所にある符号化済みのブロックから、状況に合わせて推定または予測される。本発明の好適な実施の形態では、2つ以上の平面グループのうちの1つが、一次の平面グループとして符号化される。この一次の平面グループの全てのブロックについて、同じ画像の他の平面グループを参照することなく、細分割情報および予測パラメータが伝送される。残りの平面グループは、二次的な平面グループとして符号化される。二次的な平面グループのブロックについて、細分割情報および予測パラメータが、他の平面グループの同じ場所にあるブロックから推定または予測されるか否か、または、細分割情報および予測パラメータがビットストリーム内で伝送されるか否かを情報伝達する、1つ以上の構文要素が伝送される。1つ以上の構文要素のうちの1つが、平面間予測フラグ、または、平面間予測パラメータと呼ばれる場合がある。構文要素によって、細分割情報および予測パラメータの推定または予測が行われないことが情報伝達された場合は、同じ画像の他の平面グループを参照することなく、ブロックの細分割情報と、結果として得られるサブブロックについての予測パラメータとが、ビットストリーム内で伝送される。構文要素によって、細分割情報およびサブブロックについての予測パラメータの推定または予測が行われることが情報伝達された場合は、いわゆる参照平面グループの同じ場所にあるブロックが特定される。ブロックへの参照平面グループの割り当ては、複数の方法で構成することができる。1つの実施の形態では、特定の参照平面グループが、二次的な平面グループのそれぞれに割り当てられる。この割り当ては、固定することができ、あるいは、パラメータの集合、アクセス単位のヘッダ、画像ヘッダ、またはスライスヘッダなどのハイレベルな構文の構造で情報伝達できる。2つめの実施の形態では、参照平面グループの割り当ては、ビットストリーム内で符号化され、1つ以上の構文要素によって情報伝達される。この構文要素はブロックについて符号化され、細分割情報および予測パラメータが推定または予測されるか、あるいは別々に符号化されるか否かが指定される。参照平面グループは、一次の平面グループ、または、別の二次的な平面グループである場合がある。参照平面グループが与えられると、参照平面グループ内の同じ場所にあるブロックが特定される。同じ場所にあるブロックは、現在のブロックと同じ画像領域に対応する参照平面グループ内のブロック、または、画像領域の最大の部分を現在のブロックと共有する、参照平面グループ内のブロックを表すブロックであってもよい。同じ場所にあるブロックは、より小さい予測ブロックに区分化できる。好適な実施の形態では、現在のブロックについての細分割情報、および、結果として得られるサブブロックについての予測パラメータは、追加の付随する情報を伝送することなく、同じ画像の異なる平面グループ内の同じ場所にあるブロックの細分割情報と、対応するサブブロックの予測パラメータとを使用して、完全に推定される。1つの特定の例として、同じ場所にあるブロックが2つまたは4つの予測ブロックに区分化される場合は、現在のブロックも、予測を目的として2つまたは4つのサブブロックに区分化され、現在のブロックのサブブロックについての予測パラメータが、上述したように導き出される。別の例として、同じ場所にあるブロックが4つのサブブロックに区分化され、これらのサブブロックの1つがより小さい4つのサブブロックにさらに区分化される場合は、現在のブロックも4つのサブブロックに区分化され、これらのサブブロックの1つ(さらに分解される、同じ場所にあるブロックのサブブロックに対応するもの)も、より小さい4つのサブブロックに区分化され、それ以上区分化されない全てのサブブロックについての予測パラメータは、上述したように推定される。他の好適な実施の形態では、細分割情報は、参照平面グループ内の同じ場所にあるブロックの細分割情報に基づいて、完全に推定されるが、サブブロックについて推定される予測パラメータは、サブブロックの実際の予測パラメータの予測として使用されるだけである。実際の予測パラメータと、推定された予測パラメータとの間の偏差は、ビットストリーム内で符号化される。他の実施の形態では、推定された細分割情報が、現在のブロックの実際の細分割情報についての予測として使用され、差がビットストリーム内で(上述したように)伝送されるが、予測パラメータは完全に推定される。別の実施の形態では、推定された細分割情報と推定された予測パラメータとの両方が予測として使用され、実際の細分割情報および予測パラメータと、推定された値との間の差がビットストリーム内で伝送される。
【0148】
別の実施の形態では、平面グループのブロックについて、残差の符号化のモード(変換タイプなど)が、同じ画像の異なる平面グループの同じ場所にある符号化済みのブロックから推定または予測されるか否か、または、残差の符号化のモードが、ブロックについて別々に符号化されるか否かが、状況に合わせて選択される。この実施の形態は、予測パラメータの推定/予測を状況に合わせて行う上述の実施の形態と類似している。
【0149】
別の実施の形態では、変換ブロック(すなわち、2次元変換が適用される標本のブロック)へのブロック(予測ブロックなど)の細分割が、同じ画像の異なる平面グループの同じ場所にある符号化済みのブロックから状況に合わせて推定または予測される。この実施の形態は、予測ブロックへの細分割の推定/予測を状況に合わせて行う上述の実施の形態と類似している。
【0150】
別の実施の形態では、変換ブロックへのブロックの細分割、および、結果として得られる変換ブロックについての残差の符号化のモード(変換タイプなど)が、同じ画像の異なる平面グループの同じ場所にある符号化済みブロックから状況に合わせて推定または予測される。この実施の形態は、予測ブロックへの細分割、および、結果として得られる予測ブロックについての予測パラメータの推定/予測を状況に合わせて行う上述の実施の形態と類似している。
【0151】
別の実施の形態では、予測ブロックへのブロックの細分割、関連付けられる予測パラメータ、予測ブロックの細分割情報、および、変換ブロックについての残差の符号化のモードが、同じ画像の異なる平面グループの同じ場所にある符号化済みのブロックから状況に合わせて推定または予測される。この実施の形態は、上述の実施の形態が組み合わされたものである。上述の符号化パラメータの一部のみの推定または予測を行うことも可能である。
【0152】
よって、前述のとおり、平面間の採用/予測によって、符号化の効率が上がる可能性がある。ただし、マルチツリーに基づいた細分割以外の他のブロックの細分割が使用される場合にも、平面間の採用/予測による符号化の効率の向上は可能であり、ブロックの結合が行われるか否かには関係しない。
【0153】
平面間の適合/予測に関して上記で概説した実施の形態は、画像および動画のエンコーダおよびデコーダに適用できる。エンコーダおよびデコーダは、画像の色平面、および、存在する場合は、画像と関連付けられている補助的な標本配列をブロックに分割し、それらのブロックを符号化パラメータと関連付ける。各ブロックについて、符号化パラメータの集合は、ビットストリーム内に含まれていてもよい。たとえば、これらの符号化パラメータは、デコーダ側でのブロックの予測または復号化の方法が記述されたパラメータであってもよい。たとえば、符号化パラメータは、マクロブロックまたはブロックの予測モード、細分割情報、イントラ予測モード、動き補償予測に使用される参照インデックス、変位ベクトルなどの運動パラメータ、残差の符号化のモード、変換係数などを表すことができる。画像に関連付けられている標本配列は、それぞれサイズが異なっていてもよい。
【0154】
次に、たとえば
図1から
図8を参照して上述したような、ツリーに基づいた区分化の体系での、符号化パラメータについての、拡張された情報伝達の体系を説明する。後述される体系は、上記の任意の実施の形態の1つまたは組合せと組み合わせることが可能であるが、他の体系、すなわち、結合および平面間の採用/予測と同様に、拡張された情報伝達の体系の効果および利点は、上記の実施の形態とは関係なく説明される。この体系は、以下では継承と呼ぶ。
【0155】
ツリーに基づいた区分化の体系での付随する情報の符号化についての改善された符号化体系は、継承と呼ばれ、次に説明する。これによって、一般に、符号化パラメータの処理についての従来の体系と比較して以下のような利点が実現される。
【0156】
通常、従来の画像および動画の符号化においては、画像、または、画像内の特定の標本配列の集合がブロックに分解され、特定の符号化パラメータに関連付けられる。通常、画像は、複数の標本配列で構成される。さらに、画像が、たとえば、透明度の情報や深度のマップなどを指定する追加の補助的な標本配列に関連付けられている場合もある。画像の標本配列(補助的な標本配列を含む)は、1つ以上のいわゆる平面グループにグループ化でき、各平面グループは、1つ以上の標本配列で構成される。画像の平面グループは、独立して符号化でき、また、その画像が複数の平面グループに関連付けられている場合は、同じ画像の他の平面グループからの予測によって符号化できる。通常、各平面グループは、ブロックに分解される。ブロック(または標本配列の対応するブロック)は、画像間での予測または画像内での予測のどちらかによって予測が行われる。ブロックはさまざまなサイズになる場合があり、正方形または長方形のどちらかとなる。ブロックへの画像の区分化は、構文によって固定でき、あるいは、(少なくとも一部について)ビットストリーム内で情報伝達することも可能である。多くの場合、所定のサイズのブロックについての細分割情報を伝達する構文要素が伝送される。そういった構文要素によって、ブロックがより小さいブロックに細分割され、予測の目的などで符号化パラメータに関連付けられるか否か、および、その方法を指定できる。ブロック(または標本配列の対応するブロック)の全ての標本について、関連付けられている符号化パラメータの復号化が特定の方法で指定される。例では、参照インデックス(符号化済みの画像の集合の中で参照画像を特定)、運動パラメータ(参照画像と現在の画像との間のブロックの動きの量を指定)、補間フィルタやイントラ予測モードなどの指定のためのパラメータなどの、同じ予測パラメータの集合を使用して、ブロック内の全ての標本の予測が行われる。運動パラメータは、水平方向および垂直方向の成分を持った変位ベクトル、または、6つの成分で構成されるアフィン運動パラメータなどの高次の運動パラメータによって表すことができる。また、単一のブロックに、特定の予測パラメータ(参照インデックスや運動パラメータなど)の集合を複数関連付けることも可能である。その場合、これらの特定の予測パラメータのそれぞれの集合について、ブロック(または標本配列の対応するブロック)についての単一の中間予測信号が生成され、中間予測信号の重ね合わせを含む組合せによって最終予測信号が形成される。対応する重み付けパラメータは、場合によって一定のオフセット(加重和に追加される)とともに、画像、参照画像、または、参照画像の集合のいずれかについて固定でき、あるいは、対応するブロックについての予測パラメータの集合に含むこともできる。元のブロック(または標本配列の対応するブロック)と予測信号との間の差は、残差信号とも呼ばれ、通常、変換と量子化が行われる。多くの場合、残差信号(または残差ブロックの対応する標本配列)に2次元変換が適用される。変換符号化のために、予測パラメータの特定の集合が使用されているブロック(または標本配列の対応するブロック)は、変換の適用前にさらに分割することができる。変換ブロックは、予測に使用されるブロックと同じサイズか、または、より小さくなる。また、変換ブロックは、予測に使用されるブロックを複数含むことも可能である。各変換ブロックはさまざまなサイズになる場合があり、正方形または長方形のブロックとなる。変換後、結果として得られる変換係数が量子化され、いわゆる変換係数レベルが得られる。変換係数レベルおよび予測パラメータと、存在する場合は細分割情報が、エントロピー符号化される。
【0157】
一部の画像および動画の符号化の規格において、構文によって提供される、ブロックへの画像(または平面グループ)の細分割の可能性は、非常に限定されている。通常、指定できるのは、所定のサイズのブロックをより小さいブロックに細分割できるか否か、および、(場合によってその方法)のみである。たとえば、H.264では最大ブロックサイズは16×16である。16×16のブロックはマクロブロックとも呼ばれ、各画像は最初のステップでマクロブロックに区分化される。16×16のマクロブロックのそれぞれについて、16×16のブロック、2つの16×8のブロック、2つの8×16のブロック、または4つの8×8のブロックのうちのどれで符号化されるかを情報伝達することができる。16×16のブロックが4つの8×8のブロックに細分割される場合は、これらの8×8のブロックのそれぞれを、1つの8×8のブロック、2つの8×4のブロック、2つの4×8のブロック、または4つの4×4のブロックのいずれかとして符号化できる。画像および動画の符号化の最新の規格で、ブロックへの区分化を指定する可能性を少なくすることで、細分割情報を伝達するための付随する情報のレートを小さく抑えられるという利点があるが、以下で説明するように、ブロックの予測パラメータの伝送に必要なビットレートが、大きくなる場合があるというデメリットがある。通常、予測情報を情報伝達するための付随する情報のレートは、ブロックのビットレート全体のかなりの量を占める。そのため、この付随する情報が縮小されると、符号化の効率が向上する可能性があり、たとえば、より大きなブロックサイズを使用することで実現できる可能性がある。実際の画像や動画のシーケンスの画像は、特定の性質を持った任意の形状の物体で構成される。たとえば、そういった物体や物体の一部は、固有のテクスチャや固有の動きによって特徴付けられる。通常、そういった物体や物体の一部に、同じ予測パラメータの集合が適用される。しかし、通常は、物体の境界は、大きな予測ブロック(たとえば、H.264での16×16のマクロブロックなど)のブロックの境界とは一致しない。通常、エンコーダが、特定のレート/歪みの損失量が最小になるように、(限られた可能性の中から)細分割の決定を行う。この結果、任意の形状の物体の場合には、多数の小さなブロックができる可能性がある。これらの小さなブロックは、伝送される必要がある予測パラメータの集合にそれぞれ関連付けられているので、付随する情報のレートが、ビットレート全体のかなりの部分を占めるようになる可能性がある。しかし、その小さなブロックのいくつかは、依然として同じ物体または物体の一部の領域を表すので、得られた多数のブロックの予測パラメータは、同一か、または、非常に類似したものになる。構文が、ブロックの細分割を可能にするだけでなく、細分割後に得られるブロック間で符号化パラメータを共有することも可能にする方法で拡張されると、符号化の効率が向上すると考えられる。ツリーに基づいた細分割において、符号化パラメータまたはその一部を、ツリーに基づいた階層内の1つ以上の親ノードに割り当てることによって、所定のブロックの集合について符号化パラメータの共有を実現できる。その結果、共有されるパラメータまたはその一部を使用して、細分割後に得られるブロックについての符号化パラメータの実際の選択の情報伝達に必要な付随する情報を減少させることができる。減少させる方法としては、後続のブロックについてのパラメータの情報伝達を省略するか、または、共有されたパラメータを、後続のブロックについてのパラメータの予測および/またはコンテキストモデリングに使用する。
【0158】
以下で説明する継承の体系の基本的な考え方は、ツリーに基づいたブロックの階層に従って情報を共有することによって、符号化パラメータの伝送に必要なビットレートを減少させることである。共有される情報信号は(細分割情報に付加されて)ビットストリーム内で送信される。継承の体系の利点は、符号化パラメータに付随する情報のレートが減少することによる、符号化の効率の向上である。
【0159】
付随する情報のレートを減少させるために、後述する実施の形態では、マルチツリーの細分割の特定の標本の集合、すなわち、単連結領域についてのそれぞれの符号化パラメータの信号が、効率的な方法で、データストリーム内で送信される。特定の標本の集合、すなわち、単連結領域は、長方形または正方形のブロック、または、任意の形状の領域、または、その他の標本の集合を表す。後述する継承の体系によって、これらの標本の集合のそれぞれについて、符号化パラメータを完全にビットストリーム内に明示的に含める必要がなくなる。符号化パラメータは、符号化済みの標本を使用して対応する標本の集合を予測する方法を指定する予測パラメータを表してもよい。上記で説明した多数の可能性および例は、ここでも適用される。上記でも示したように、また、以下でもさらに説明するように、以下の継承の体系に関しては、標本の集合への画像の標本配列のツリーに基づいた区分化は、構文によって固定されてもよく、あるいは、ビットストリーム内の対応する細分割情報によって伝達されてもよい。上述したとおり、標本の集合についての符号化パラメータは、構文によって指定される所定の順序で伝送されてもよい。
【0160】
継承の体系に従って、デコーダまたはデコーダの抽出部102は、個別の単連結領域または標本の集合の符号化パラメータについての情報を特定の方法で導き出すように構成される。特に、予測の目的に使用されるパラメータなどの符号化パラメータまたはその一部は、エンコーダまたは挿入部18によって決定されるツリー構造に従う共有グループとともに、所定のツリーに基づいた区分化体系に従うブロック間で共有される。特定の実施の形態では、区分化のツリーの所定の内部ノードの全ての子ノードについての符号化パラメータの共有が、2進値の特定の共有フラグを使用して示される。別のアプローチとして、ツリーに基づいたブロックの階層に従って累積したパラメータのリファインメントを所定のリーフノードのブロックの全ての標本の集合に適用できるように、各ノードについて、符号化パラメータのリファインメントを伝送できる。別の実施の形態では、ツリーに基づいたブロックの階層に従って内部ノードについて伝送される符号化パラメータの一部を、所定のリーフノードのブロックについての符号化パラメータまたはその一部の、コンテキストに適応したエントロピーエンコーディングおよびエントロピー復号化に使用できる。
【0161】
図12Aおよび
図12Bは、四分木に基づいた区分化を使用する特定の場合の継承の基本的な考え方を示している。ただし、上記で何度も示しているとおり、他のマルチツリーの細分割を使用してもよい。
図12Aではツリー構造が示され、
図12Bでは、
図12Aのツリー構造に対応する空間的な区分化が示されている。これらに示されている区分化は、
図3Aから
図3Cで示したものと同様である。一般に、継承の体系によって、ツリー構造内の異なる非リーフ層のノードに、付随する情報を割り当てることが可能になる。
図12Aのツリー内の内部ノードやルートノードなどの、ツリー内の異なる層のノードへの付随する情報の割り当てに応じて、
図12Bに示したブロックのツリー階層内で、付随する情報の共有をさまざまな度合いで実現できる。たとえば、
図12Aの場合は親ノードが全て同じである、第4層の全てのリーフノードが、付随する情報を共有すると決定されている場合は、実質的には、
図12Bで156aから156dで示されている最小のブロックが、この付随する情報を共有することを意味し、これらの小さなブロック156aから156dの全てについて、それぞれ、すなわち、4回、付随する情報を伝送する必要がなくなる。ただし、これはエンコーダのオプションとして残される。また、
図12Aの階層レベル1(第2層)の領域全体、すなわち、サブブロック154a、154b、および154dと、さらに小さい上記のサブブロック156aから156dとを含むツリーブロック150の上部右の4分の1の部分を、符号化パラメータが共有される領域として決定することも可能である。よって、付随する情報を共有する領域が増加する。増加の次のレベルは、第1層の全てのサブブロック、すなわち、サブブロック152a、152c、および152dと、上記のより小さいブロックをまとめることである。言い換えると、この場合は、ツリーブロック全体が、割り当てられている付随する情報を有していて、このツリーブロック150の全てのサブブロックが、付随する情報を共有している。
【0162】
以下での継承の説明において、実施の形態の説明に、次の表記を使用する。
a.現在のリーフノードの再構築される標本:r
b.隣接するリーフの再構築される標本:r'
c.現在のリーフノードの予測因子:p
d.現在のリーフノードの残差:Res
e.現在のリーフノードの再構築される残差:RecRes
f.スケーリングおよび逆変換:SIT
g.共有フラグ:f
【0163】
1つめの継承の例として、内部ノードでのイントラ予測の信号化について説明する。具体的には、予測を目的とした、ツリーに基づいたブロックの区分化の、内部ノードでのイントラ予測モードの信号化の方法について説明する。内部ノード(ルートノードを含む)は、ルートノードからリーフノードへツリーをトラバースすることによって、対応する子ノードで利用される付随する情報の一部を伝達できる。具体的には、内部ノードについて、次の意味で、共有フラグfが伝送される。
【0164】
・fの値が1(「true」)の場合は、所定の内部ノードの全ての子ノードが、同じイントラ予測モードを共有する。値が1の共有フラグfに加え、内部ノードは、全ての子ノードに使用されるイントラ予測モードのパラメータを情報伝達する。そのため、後続の全ての子ノードは、予測モードの情報や共有フラグを一切伝送しない。関連している全てのリーフノードの再構築にあたって、デコーダが、対応する内部ノードから、イントラ予測モードを適用する。
【0165】
・fの値が0(「false」)の場合は、対応する内部ノードの子ノードは、同じイントラ予測モードを共有せず、内部ノードである各子ノードは、別個の共有フラグを伝送する。
【0166】
図12Cは、上述した内部ノードでのイントラ予測の信号化を説明している。第1層の内部ノードは、共有フラグ、および、イントラ予測モードの情報によって提供された付随する情報を伝達し、子ノードは付随する情報を一切伝送しない。
【0167】
2つめの継承の例として、平面間予測のリファインメントについて説明する。具体的には、運動ベクトルなどによって提供される運動パラメータのリファインメントを目的とした、ツリーに基づいたブロックの区分化の、内部モードでの平面間予測モードの付随する情報の伝達方法について説明する。内部ノード(ルートノードを含む)は、ルートノードからリーフノードへツリーをトラバースすることによって、対応する子ノードでリファインされる付随する情報の一部を伝達できる。具体的には、内部ノードについて、次の意味で、共有フラグfが伝送される。
【0168】
・fの値が1(「true」)の場合は、所定の内部ノードの全ての子ノードが、同じ運動ベクトルの参照を共有する。値が1の共有フラグfに加え、内部ノードは、運動ベクトルおよび参照インデックスも送信する。そのため、後続の全ての子ノードは、それ以上の共有フラグを伝送しないが、この継承される運動ベクトルの参照のリファインメントを伝送してもよい。関連している全てのリーフノードの再構築にあたって、デコーダが、所定のリーフノードの運動ベクトルのリファインメントを、値が1の共有フラグfを有する対応する内部親ノードに属している、継承される運動ベクトルの参照に追加する。これは、所定のリーフノードの運動ベクトルのリファインメントが、このリーフノードで動き補償予測のために適用される実際の運動ベクトルと、対応する内部親ノードの運動ベクトルの参照との間の差であることを意味する。
【0169】
・fの値が0(「false」)の場合は、対応する内部ノードの子ノードは、必ずしも同じ平面間予測モードを共有せず、対応する内部ノードから運動パラメータを使用することによって、子ノードで運動パラメータのリファインメントは行われない。内部ノードである各子ノードは、別個の共有フラグを伝送する。
【0170】
図12Dは、上述した運動パラメータのリファインメントを説明している。第1層の内部ノードは、共有フラグおよび付随する情報を伝達している。リーフノードである子ノードは、運動パラメータのリファインメントのみを伝送し、たとえば、第2層の内部子ノードが伝送する付随する情報はない。
【0171】
ここで、
図13について説明する。
図13は、データストリームからの空間的な例の情報信号を表す情報標本の配列の再構築における、
図2のデコーダなどの、デコーダの動作のモードを表すフローチャートである。情報標本の配列は、マルチツリーの細分割によって、異なるサイズのリーフ領域に細分割される。上記で説明したように、各リーフ領域は、マルチツリーの細分割の一連の階層レベルのうちの1つの階層レベルに関連付けられる。たとえば、
図12Bで示されている全てのブロックは、リーフ領域である。たとえば、リーフ領域156cは、第4層(または、レベル3)の階層に関連付けられている。各リーフ領域は、符号化パラメータに関連付けられている。これらの符号化パラメータの例は、上記で説明している。符号化パラメータは、各リーフ領域について、それぞれの構文要素の集合によって表される。各構文要素の、それぞれの構文要素のタイプは、一連の構文要素のタイプのうちの1つである。たとえば、そういった構文要素のタイプは、予測モード、運動ベクトルの成分、イントラ予測モードの指示などである。デコーダは、
図13に従って、以下のステップを行う。
【0172】
ステップ550で、継承の情報がデータストリームから抽出される。
図2の場合では、抽出部102がステップ550を行う。継承の情報は、情報標本の現在の配列に継承が使用されるか否かについて示す。以下の説明では、共有フラグfや、一次および二次的な部分に分割されるマルチツリー構造の情報伝達などの継承の情報には、いくつかの可能性があることを明らかにする。
【0173】
情報標本の配列は、ツリーブロックなど、既に画像の一部分であってもよい。すなわち、
図12Bのツリーブロック150などである。したがって、継承の情報によって、特定のツリーブロック150に継承が使用されるか否かが示される。そういった継承の情報は、たとえば、予測の細分割の全てのツリーブロックについて、データストリームに挿入されてもよい。
【0174】
さらに、継承が使用されることが示されている場合、継承の情報によって、情報標本の配列の継承の領域が、少なくとも1つ示される。この継承の領域は、リーフ領域の集合で構成される。また、リーフ領域の集合が関連付けられている各階層レベルよりも下位に位置する、マルチツリーの細分割の一連の階層レベルのうちの1つの階層レベルに対応する。言い換えると、継承の情報によって、ツリーブロック150などの現在の標本配列に継承が使用されるか否かが示される。継承が使用される場合は、このツリーブロック150の少なくとも1つの継承の領域または小領域が示され、その中では、リーフ領域が符号化パラメータを共有する。よって、継承の領域は、リーフ領域でなくてもよい。
図12Bの例では、この継承の領域は、たとえば、サブブロック156aから156bで形成される領域であってもよい。あるいは、継承の領域は、さらに大きくてもよく、さらにサブブロック154a、154b、および154dも含んでもよい。また、さらに、継承の領域が、ツリーブロック150自体であって、全てのリーフブロックで、その継承の領域に関連付けられている符号化パラメータが共有されてもよい。
【0175】
また、1つの標本配列またはツリーブロック150のそれぞれの中で、複数の継承の領域が定義されてもよい。たとえば、下部左のサブブロック152cも、より小さいブロックに区分化されたとする。この場合、サブブロック152cも継承の領域を形成できる。
【0176】
ステップ552では、継承が使用されるか否かについて、継承の情報の確認が行われる。継承が使用される場合は、
図13の処理はステップ554に進み、所定の構文要素のタイプの構文要素を少なくとも1つ含む継承の部分集合が、平面間継承の領域ごとに、データストリームから抽出される。続くステップ556では、それぞれの少なくとも1つの継承の領域を構成するリーフ領域の集合に関連付けられている符号化パラメータを表す構文要素の集合内の、対応する構文要素の継承の部分集合へ、この継承の部分集合がコピーされるか、または、その予測として使用される。言い換えると、継承の情報内で示されている継承の領域のそれぞれについて、データストリームが、構文要素の継承の部分集合を構成する。さらに言い換えると、継承は、継承に使用できる少なくとも1つの特定の構文要素のタイプまたは構文要素のカテゴリに関連する。たとえば、予測モードまたは平面間予測モードまたはイントラ予測モードの構文要素は、継承の対象となってもよい。たとえば、継承の領域についてのデータストリーム内に含まれている継承の部分集合は、平面間予測モードの構文要素を含んでいてもよい。また、継承の部分集合は、継承の体系に関連付けられている上記の固定された構文要素のタイプの値に構文要素のタイプが依存する、構文要素をさらに含んでいてもよい。たとえば、平面間予測モードが継承の部分集合の固定された構成要素である場合、運動ベクトルの成分などの、動き補償を定義する構文要素は、構文によって、継承の部分集合に含まれても含まれなくてもよい。たとえば、ツリーブロック150の上部右の4分の1、すなわち、サブブロック152bが継承の領域であるとすると、この継承の領域について、平面間予測モードのみ、または、平面間予測モードと運動ベクトルおよび運動ベクトルのインデックスを示すことができる。
【0177】
継承の部分集合に含まれている全ての構文要素は、その継承の領域、すなわち、リーフブロック154a、154b、154d、および、156aから156dの中のリーフブロックの対応する符号化パラメータへコピーされるか、または、その予測として使用される。予測が使用される場合は、個々のリーフブロックについて残差が伝送される。
【0178】
ツリーブロック150についての継承の情報の伝送の1つの可能性が、上述した共有フラグfの伝送である。この場合、ステップ550での継承の情報の抽出には、以下が含まれる。特に、デコーダは、マルチツリーの細分割の少なくとも1つの階層レベルの継承の集合のいずれかに対応する非リーフ領域について、下位の階層レベルから上位の階層レベルへの階層レベルの順序を使用して、データストリームから共有フラグfを抽出し、それぞれの継承フラグまたは共有フラグで継承が指示されているか否かについて確認できるように構成される。たとえば、階層レベルの継承の集合は、
図12Aの第1層から第3層の階層によって形成される。よって、リーフノードではなく、第1層から第3層のいずれかの中に位置するサブツリー構造のノードのいずれかが、関連付けられている共有フラグをデータストリーム内に有する。デコーダは、第1層から第3層への順序で、深度順または幅の順などのトラバースの順序で、これらの共有フラグを抽出する。共有フラグの1つが1であると、デコーダは、対応する継承の領域に含まれるリーフブロックが、続いてステップ554で抽出される継承の部分集合を共有すると認識する。現在のノードの子ノードについて、継承フラグを確認する必要がなくなる。言い換えると、これらの子ノードについての継承フラグは、データストリーム内で伝送されない。これは、これらのノードの領域が、構文要素の継承の部分集合が共有されている継承の領域に既に属していることが明らかであるためである。
【0179】
共有フラグfは、上述した四分木の細分割を情報伝達するビットと交互に扱うことができる。たとえば、細分割フラグと共有フラグとの両方を含んで交互に扱うビットシーケンスは、次のように示される。
【数1】
これは、
図6Aで示したものと同じ細分割情報に、下線で強調した2つの共有フラグが組み入れられていて、
図3Cで、ツリーブロック150の下部左側の4分の1の中の全てのサブブロックが符号化パラメータを共有することを示す。
【0180】
継承の領域を示す継承の情報を定義する別の方法には、予測および残差の細分割についてそれぞれ上記で説明したような、互いに下位の方法で定義される2つの細分割の使用がある。一般に、一次の細分割のリーフブロックによって、構文要素の継承の部分集合が共有される領域を定義する継承の領域を形成できる。同時に、構文要素の継承の部分集合が、コピーされるか、または、予測として使用される、これらの継承の領域内のブロックが、下位の細分割によって定義される。
【0181】
たとえば、残差のツリーを、予測のツリーの拡張として考える。さらに、残差の符号化を目的として、予測ブロックをより小さいブロックにさらに分割できる場合を考える。予測に関連する四分木のリーフノードに対応する各予測ブロックについて、1つ以上の下位の四分木によって、残差の符号化についての対応する細分割が決定される。
【0182】
この場合、内部ノードで予測の信号化を使用するのではなく、残差のツリーを次のように解釈する。一定の予測モードの使用という意味で、予測のツリーのリファインメントも指定され(予測に関連するツリーの対応するリーフノードによって情報伝達される)、リファインされた参照標本も使用される。以下の例では、この場合について説明している。
【0183】
たとえば、
図14Aおよび
図14Bは、イントラ予測について四分木の区分化を示している。一次の細分割の1つの特定のリーフノードについて、隣接する参照標本がハイライトされている。
図14Bは、同じ予測リーフノードについての、残差の四分木の細分割を、リファインされた参照標本とともに示している。
図14Bで示されている全てのサブブロックは、
図14Aでハイライトされているそれぞれのリーフブロックについて、データストリーム内に含まれている同じ平面間予測パラメータを共有する。このように、
図14Aは、イントラ予測についての従来の四分木の区分化の例を示し、1つの特定のリーフノードについての参照標本が示されている。しかし、好適な実施の形態では、たとえば、
図14Bでグレーの縞で陰影を付けて示しているような、残差のツリー内の再構築済みのリーフノードの隣接する標本を使用することによって、残差のツリー内の各リーフノードについて、別個のイントラ予測の信号が算出される。そして、量子化された残差信号をこの予測信号に追加することによって、通常の方法で、所定の残差のリーフノードの再構築された信号が取得される。この再構築された信号は、参照の信号として以降の予測の処理に使用される。予測のための復号化の順序は、残差の復号化の順序と同じである。
【0184】
図15で示しているように、復号化のプロセスでは、残差のリーフノードのそれぞれについて、実際のイントラ予測モードに従って(予測に関連する四分木のリーフノードで示されているように)参照標本r'を使用して、予測信号pが算出される。
【0185】
SIT処理、
【数2】
の後、次の予測の算出の処理のために、再構築された信号rが算出されて記憶される。
【数3】
【0186】
予測のための復号化の順序は、
図16で示している残差の復号化の順序と同じである。
【0187】
残差のリーフノードのそれぞれは、前の段落で説明したように復号化される。再構築された信号rは、
図16で示しているように、バッファに記憶される。次の予測および復号化のプロセスのために、このバッファから、参照の標本r’が取得される。
【0188】
図1から
図16を参照して、上記で概説したさまざまな態様を組み合わせて具体的な実施の形態を説明したが、さらに、上述した特定の態様に重点が置かれ、上述の実施の形態のいくつかを総合した実施の形態となっている、本願の他の実施の形態について説明する。
【0189】
特に、
図1および
図2の構成を基に上述した実施の形態は、主に、本願の多数の態様が組み合わされたものであり、他の用途や他の符号化の分野で使用される場合にも利点が得られる。上記の説明で繰り返し述べたように、たとえば、結合および/または、平面間の採用/予測および/または、継承を行わずにマルチツリーの細分割が使用されてもよい。たとえば、付随する情報のビットレートの削減を目的とした、最大ブロックサイズの伝送、深度順のトラバースの順序の使用、それぞれの細分割フラグの階層レベルに応じたコンテキストの適応、ビットストリーム内での最大階層レベルの伝送といった態様は全て、相互に依存することなく、利点をもたらす。これは、結合の体系を考える場合においても同様である。画像が単連結領域に細分割される詳細な方法に関係なく、結合によって利点が得られ、また、複数の標本配列の存在や、平面間の採用/予測および/または継承の使用に関係なく、利点が得られる。平面間の採用/予測および継承から得られる利点についても、同様である。
【0190】
したがって、以下で概説する実施の形態では、結合に関連する態様に関しての上述の実施の形態を総合する。以下の実施の形態は、上述の実施の形態を総合したものとなるので、上述した詳細の多くは、以下で説明する実施の形態と組み合わせることができると見なしてよい。
【0191】
図17は、本願の実施の形態のデコーダを示している。
図17のデコーダは、抽出部600および再構築部602を備える。抽出部600は、空間的にサンプリングされた情報信号を表す情報標本の配列が細分割されてできる複数の単連結領域のそれぞれについて、ペイロードデータをデータストリーム604から抽出するように構成される。上述したように、情報標本の配列が細分割されてできる単連結領域は、マルチツリーの細分割によって生じ、正方形または長方形の形状となる。さらに、標本配列の細分割について具体的に説明した実施の形態は、単に特定の実施の形態であり、他の細分割が使用されてもよい。一部の可能性を、
図18A~
図18Cに示す。たとえば、
図18Aは、標本配列606の細分割を示す。重ならずに相互に隣接するツリーブロック608の規則的な2次元の配列へ細分割され、そのうちの一部は、マルチツリー構造に従って、さまざまなサイズのサブブロック610に細分割される。上述したとおり、
図18Aは四分木の細分割を示しているが、この他の数の子ノードにそれぞれの親ノードを区分化することも可能である。
図18Bで示す実施の形態では、画素の配列606の全体に、直接マルチツリーの細分割が適用されることによって、標本配列606がさまざまなサイズのサブブロックへ細分割される。つまり、画素の配列606の全体がツリーブロックとして扱われる。
図18Cは、別の実施の形態を示す。この実施の形態においては、標本配列は、相互に隣接する正方形または長方形のマクロブロックの規則的な2次元の配列による構造となる。これらのマクロブロック612のそれぞれは、区分化の情報に個別に関連付けられ、この区分化の情報に従って、マクロブロック612は区分化されずに残されるか、あるいは、区分化の情報によって示されているサイズのブロックの規則的な2次元の配列へ区分化される。以上からわかるように、
図13Aから
図13Cの全ての細分割で、たとえば
図18Aから
図18Cの実施の形態の重なりのない単連結領域へ、標本配列606が細分割される。しかし、いくつかの別の方法も可能である。たとえば、ブロックは相互に重なりあってもよい。ただし、各ブロックに、隣接するブロックのいずれとも重なっていない部分がある状態に制限される。あるいは、所定の方向に現在のブロックと並んで配置されている、隣接するブロックのうち、最大で1つのブロックが、ブロックの各標本に重なっている状態に制限される。後者の状態は、左側および右側に隣接するブロックが、現在のブロックを完全に覆うように現在のブロックに重なるが、相互に重なることはなく、垂直方向および対角線方向の隣接するブロックについても同様な状態を意味する。
【0192】
図1から
図16を参照して上述したように、情報標本の配列は、必ずしも、動画の画像または静止画像を表しているとは限らない。標本配列606が、特定の光景の深度のマップまたは透明度のマップを表す場合もある。上記で既に説明したように、複数の単連結領域のそれぞれに関連付けられているペイロードデータは、変換係数などの空間領域または変換領域での残差データと、残差ブロックに対応する変換ブロック内で有意な変換係数の位置を特定する有意性のマップとを含む場合がある。一般に、データストリーム604から各単連結領域について抽出部600によって抽出されるペイロードデータは、関連付けられている単連結領域が、空間領域またはスペクトル領域のどちらかで、直接、あるいは、何らかの予測に対する残差などとして、空間的に記述されたデータである。
【0193】
再構築部602は、各単連結領域に関連付けられている符号化パラメータによって指示されている方法で各単連結領域についてのペイロードデータを単連結領域ごとに処理することによって、情報標本の配列の単連結領域についてのペイロードデータから情報標本の配列を再構築するように構成される。上記の説明と同様に、符号化パラメータは予測パラメータであってもよいため、
図18Aから
図18Cで示している単連結領域は、上述の予測ブロック、すなわち、データストリーム604が個別の単連結領域の予測のために予測の詳細を明示する単位となるブロックに相当するものであってもよい。しかし、符号化パラメータは予測パラメータに限定されない。符号化パラメータによって、ペイロードデータの変換に使用される変換を示すことができる。あるいは、情報標本の配列の再構築の際に個別の単連結領域の再構築に使用されるフィルタを定義することができる。
【0194】
抽出部600は、所定の単連結領域について、複数の単連結領域の中で所定の単連結領域に対して所定の相対的な位置関係にある単連結領域を特定するように構成される。このステップについての詳細は、ステップ450に関して上述している。つまり、所定の相対的な位置関係に加え、所定の単連結領域に関連付けられている符号化パラメータの部分集合に応じて特定が行われてもよい。抽出部600は、特定を行った後、データストリーム604から所定の単連結領域についてのマージ指標を抽出する。所定の単連結領域に対して所定の相対的な位置関係にある単連結領域の数がゼロよりも大きい場合は、上記のステップ452および454の説明に対応する。マージ指標で所定のブロックの結合の処理が示唆されている場合は、抽出部600が、所定の単連結領域に対して所定の相対的な位置関係にある単連結領域の数が1であるかどうか、あるいは、所定の単連結領域に対して所定の相対的な位置関係にある単連結領域の数が1よりも大きいが、その符号化パラメータが互いに一致しているかどうかの確認を行うように構成される。この2つのうちの1つに当てはまる場合は、ステップ458から468で上述したとおり、抽出部は、符号化パラメータを採用するか、あるいは、所定の単連結領域またはその残りの部分集合の符号化パラメータの予測に使用する。
図10を参照して上述したように、所定の単連結領域に対して所定の相対的な位置関係にある単連結領域の数が1よりも大きく、符号化パラメータが互いに異なることが後者の確認で明らかになった場合は、抽出部600によってデータストリーム604からさらに指標が抽出されてもよい。
【0195】
後者の確認を行うことで、候補の単連結領域の1つまたは部分集合を示すさらなる指標の伝送を抑制でき、その結果、付随する情報のオーバーヘッドを削減できる。
【0196】
図19は、
図17のデコーダで復号化できるデータストリームを生成するエンコーダの一般的な構造を示している。
図19のエンコーダは、データ生成部650および挿入部652を備える。データ生成部650は、情報標本の配列が細分割されてできる複数の相互接続された領域のそれぞれについて、各単連結領域についてのペイロードデータが再構築される方法を示すために各単連結領域に関連付けられている符号化パラメータと関連付けて、情報標本の配列をペイロードデータへ符号化するように構成される。挿入部652は、
図12のデコーダの抽出部600が行ったのと同様に特定と確認を行うが、マージ指標の抽出ではなく挿入を行い、データストリームへの符号化パラメータの挿入を抑制する。あるいは、データストリームへ符号化パラメータを全て挿入するのではなく、
図12および
図10をそれぞれ参照して上述した採用/予測の代わりに、それぞれの予測の残差を挿入する。
【0197】
また、
図19のエンコーダの構造は概略を示したものであり、実際には、ペイロードデータ、符号化パラメータ、およびマージ指標の決定は、反復処理であってもよいことに注意されたい。たとえば、隣接する単連結領域の符号化パラメータが類似しているが互いに一致してはいない場合に、マージ指標によって、単連結領域の1つの符号化パラメータが完全に抑制され、これらの符号化パラメータを全て提示する代わりに、残差のみを提示することが可能になることを考慮すると、これらの符号化パラメータの間のわずかな相違について、デコーダへ情報伝達を行うのではなく、そういった相違を許容する方が望ましいと、反復処理によって決定されてもよい。
【0198】
図20は、デコーダの他の実施の形態を示している。
図20のデコーダは、細分割部700、結合部702、および再構築部704を備える。細分割部は、データストリームに含まれる構文要素の部分集合に応じて、再帰的な複数回の区分化によって、2次元情報信号の空間的なサンプリングを表す標本の配列を、異なるサイズの複数の重なりのない単連結領域へ空間的に細分割するように構成される。したがって、この複数回の区分化は、
図1から
図16や
図18Aまたは
図18Bを参照して上記で概説した実施の形態に対応していてもよい。細分割を示すためのデータストリームに含まれる構文要素は、
図6Aおよび
図6bを参照して上記で示したように定義されてもよく、別の方法で定義されてもよい。
【0199】
結合部702は、第1の部分集合から分離されているデータストリーム内の構文要素の第2の部分集合に応じて、複数の単連結領域のうちの空間的に隣接する単連結領域を組み合わせて、和集合が複数の単連結領域である、単連結領域の互いに素な集合への標本の配列の中間の細分割を取得するように構成される。言い換えると、結合部702は、単連結領域を組み合わせて、単連結領域の結合グループに対して固有の方法で割り当てを行う。結合の情報を示す上記の構文要素の第2の部分集合は、
図19および
図10を参照して上述した方法で定義されてもよく、他の方法で定義されてもよい。つまり、エンコーダが、結合を示している部分集合から分離されている部分集合の使用によって細分割を示すことができることで、実際の標本配列の内容へ標本配列の細分割を適応するエンコーダの自由度が増し、符号化の効率が向上する。再構築部704は、中間の細分割を使用してデータストリームから標本の配列を再構築するように構成される。上記で示したとおり、再構築部は、現在の単連結領域についての結合の相手の符号化パラメータの採用/予測によって中間の細分割を利用してもよい。あるいは、再構築部704は、変換または予測の処理を、単連結領域の結合されたグループの組み合わされた領域に適用してもよい。
【0200】
図21は、
図15のデコーダで復号化できるデータストリームを生成するエンコーダとして考えられるものを示している。このエンコーダは、細分割/結合の段階750およびデータストリーム生成部752を備える。細分割/結合の段階で、2次元情報信号の空間的なサンプリングを表す情報標本の配列の中間の細分割、および、和集合が複数の単連結領域である単連結領域の互いに素な2つの集合が決定されるように構成される。この中間の細分割は、構文要素の第1の部分集合と第2の部分集合によって定義される。構文要素の第1の部分集合に従って、再帰的な複数回の区分化によって、情報標本の配列が、異なるサイズの複数の重なりのない単連結領域に細分割される。また、第1の部分集合から分離されている構文要素の第2の部分集合に従って、複数の単連結領域のうちの空間的に隣接する単連結領域が組み合わされて中間の細分割が取得される。データストリーム生成部752は、中間の細分割を使用して情報標本の配列をデータストリームへ符号化する。また、細分割/結合の段階750で、第1の部分集合および第2の部分集合がデータストリームに挿入される。
図14の場合のように、データストリーム生成部752によって生成される第1および第2の部分集合と構文要素の決定の処理についても、反復して行われる処理であってもよい。たとえば、細分割/結合の段階750で予め最適な細分割を決定し、データストリーム生成部752が、細分割/結合の段階とともに標本の細分割を使用して標本配列を符号化するための構文要素の対応する最適な集合を決定してから、結合について記述されている構文要素を設定して、付随する情報のオーバーヘッドが削減されるようにしてもよい。また、エンコーディングの処理はここで終了しなくてもよい。結合の有益な特性を利用することによってレート/歪み率が向上するか否かを判定するために、データストリーム生成部752によって事前に決定されている細分割および構文要素の最適な設定とは別の設定を行うように、細分割/結合の段階750がデータストリーム生成部752と連動してもよい。
【0201】
前述のとおり、
図17から
図21を参照して説明した実施の形態は、
図1から
図16を参照して前述した実施の形態を総合したものであるので、
図1から
図16の要素を
図17から
図21で示している要素に一意的に関連付けることができる。たとえば、抽出部102は、細分割部104aおよび結合部104bとともに、
図17の抽出部600が行うタスクを行う。細分割部は、細分割と、個別の単連結領域の間の隣接関係の管理を行う。続いて、結合部104bは、グループへの単連結領域の結合を管理し、現在復号化されている結合の情報によって結合のイベントが示されている場合は、コピーされるか、あるいは、現在の単連結領域の予測として使用される正しい符号化パラメータを特定する。データの抽出にエントロピー復号化が使用される場合は、抽出部102が、正しいコンテキストを使用してデータストリームから実際のデータの抽出を行う。
図2の残りの要素は、再構築部602の例である。当然ながら、再構築部602は、
図2で示されている形態とは別の形態で具現化されてもよい。たとえば、再構築部602は、動き補償予測および/またはイントラ予測を使用しなくてもよい。この他の可能性についても同様である。
また、上述したとおり、
図17の説明に関連して言及した単連結領域は、上記で既に示しているように、上述の予測ブロック、または、残差の細分割またはフィルタの細分割などの上述の他の細分割のいずれかに対応する。
【0202】
図19のエンコーダを
図1の例と比較すると、データ生成部650はデータストリーム挿入部18以外の全ての要素を含み、後者は
図19の挿入部652に対応する。データ生成部650についても、
図1で示しているハイブリッドな符号化のアプローチとは別の符号化のアプローチを使用できる。
【0203】
図20のデコーダを
図2で示した例と比較すると、細分割部104aおよび結合部104bは、それぞれ
図20の細分割部100および結合部102に対応し、要素106および114は、再構築部704に対応する。抽出部102は、
図20で示されている全ての要素の機能に共通して関与している。
【0204】
図21のエンコーダに関しては、細分割/結合の段階750は細分割部28および結合部30に対応し、データストリーム生成部752は、
図10で示されている全ての他の要素を含む。
【0205】
装置に関していくつかの態様を説明したが、これらの態様が、対応する方法についての説明にもなっていることは明らかであり、ブロックまたはデバイスは、手段、または、手段の特徴に対応する。同様に、手段に関して説明した態様も、対応するブロックや項目、または、対応する装置の機能の説明になっている。手段の一部または全ては、マイクロプロセッサ、プログラムで制御可能なコンピュータ、電子回路などのハードウェアの装置によって(あるいはハードウェアの装置を使用して)実行されてもよい。一部の実施の形態では、最も重要な手段の1つまたは複数が、そういった装置で実行されてもよい。
【0206】
本発明によってエンコーディング/圧縮が行われた信号は、デジタル記憶媒体に記憶できる。あるいは、無線の伝送媒体やインターネットなどの有線の伝送媒体などの伝送媒体で伝送できる。
【0207】
本発明の実施の形態は、特定の実装要件に応じて、ハードウェア、または、ソフトウェアで実装できる。たとえば、フロッピーディスク、DVD、Blu?ray(登録商標)Disc、CD、ROM、PROM、EPROM、EEPROM、フラッシュメモリなど、電子的に読み取りが可能な制御信号が記憶され、プログラムで制御可能なコンピュータシステムとともに使用されて(あるいは、使用されることが可能で)それぞれの方法が実行される、デジタル記憶媒体を使用して実装できる。したがって、デジタル記憶媒体は、コンピュータによる読み取りが可能なものであってもよい。
【0208】
本発明の一部の実施の形態には、電子的に読み取りが可能な制御信号を記憶するデータ記憶媒体が含まれる。データ記憶媒体は、プログラムで制御可能なコンピュータシステムとともに使用でき、ここで説明されている方法の1つが実行される。
【0209】
一般に、本発明の実施の形態は、プログラムコードを含むコンピュータプログラム製品として実装でき、そのコンピュータプログラム製品がコンピュータ上で実行された際に、プログラムコードによって、方法の1つが実行される。プログラムコードは、たとえば、機械による読み取りが可能な記憶媒体に記憶されてもよい。
他の実施の形態では、ここで説明されている方法の1つを実行するコンピュータプログラムが含まれ、機械による読み取りが可能な記憶媒体に記憶される。
【0210】
したがって、言い換えると、本発明の方法の実施の形態は、コンピュータ上で実行された際に、ここで説明されている方法の1つを実行するプログラムコードを含むコンピュータプログラムである。
【0211】
したがって、本発明の方法の他の実施の形態は、ここで説明されている方法の1つを実行するコンピュータプログラムが記録されたデータ記憶媒体(または、デジタル記憶媒体、または、コンピュータ読み取りが可能な媒体)である。
【0212】
したがって、本発明の方法の他の実施の形態は、ここで説明されている方法の1つを実行するコンピュータプログラムを表すデータストリームまたは一連の信号である。たとえば、データストリームまたは一連の信号は、インターネットなどのデータ通信の接続を介して伝送されるように構成されてもよい。
【0213】
他の実施の形態は、コンピュータまたはプログラムで制御可能な論理デバイスなどの、ここで説明されている方法の1つを実行するように構成された、または適用された処理の手段を備える。
他の実施の形態は、ここで説明されている方法の1つを実行するコンピュータプログラムがインストールされたコンピュータを備える。
【0214】
一部の実施の形態では、ここで説明されている方法の機能の一部または全てを実現するために、プログラムで制御可能な論理デバイス(フィールドプログラマブルゲートアレイなど)が使用されてもよい。一部の実施の形態では、フィールドプログラマブルゲートアレイが、ここで説明されている方法の1つを実行するために、マイクロプロセッサと連動してもよい。一般に、ハードウェアの装置によって方法が実行されることが望ましい。
【0215】
上述した実施の形態は、単に本発明の基本的性質を説明するための例である。ここで説明されている配置および詳細の変形例やバリエーションは、当業者には明らかであると理解される。したがって、対応する特許の請求項の範囲によってのみ制限され、ここでの実施の形態の説明によって示される具体的な詳細によって制限されないものとする。