(58)【調査した分野】(Int.Cl.,DB名)
エントロピー符号化されたデータストリームからサンプルアレイ(10)を復元するためのデコーダであって、前記デコーダはハードウェア装置またはコンピュータを備え、かつ、
各エントロピースライスについて、それぞれのエントロピー符号化パス(14)順で、それぞれの確率推定を用いて、エントロピー復号化を実行し、
前記それぞれのエントロピースライスの前に復号化されたパートを用いて、前記それぞれのエントロピー符号化パスに沿って、前記それぞれの確率推定を適応させ、
前記複数のエントロピースライスの前記エントロピー復号化を、エントロピースライス順序(16)を用いてシーケンシャルに開始し、
予め定められたエントロピースライスのエントロピー復号化において、前記予め定められたエントロピースライスの前に復号化されたパートを用いて適応された前記予め定められたエントロピースライスのそれぞれの確率推定と、前記予め定められたエントロピースライスに空間的に隣接し、かつ、前記空間的に隣接するエントロピースライスの隣接するパートにおいて、エントロピースライス順序で前記予め定められたエントロピースライスに先行する、空間的に隣接するエントロピースライスの前記エントロピー復号化において用いられた確率推定と、に基づいて前記予め定められたエントロピースライスの現在のパートのエントロピー復号化を実行して、
前記エントロピー符号化されたデータストリーム内の複数のエントロピースライスをエントロピー復号化し、前記エントロピースライスに関連付けられた前記サンプルアレイの異なる部分(12)をそれぞれ復元するように構成され、
前記デコーダが、エントロピースライス順序において前記先行するエントロピースライスに対応する部分の前記それぞれの符号化パス順で2番目のブロックをエントロピー復号化した後に現れる前記確率推定を記憶し、前記それぞれのエントロピースライスに対応する部分の前記それぞれのエントロピー符号化パス順で最初のブロックを復号化する前に、初期化のために前記記憶された確率推定を使用するように構成され、
前記エントロピースライスはチャンクに細分化され、前記デコーダは、
現在のチャンクが前記予め定められたエントロピースライスの部分の前記エントロピー符号化パス順で最初のサブ部分に対応するかどうかをチェックし、
対応する場合は、前記それぞれの確率推定を適応させたうえで前記現在のチャンクをエントロピー復号化し、前記予め定められたエントロピースライスの部分の前記それぞれのエントロピー符号化パス順で2番目のサブ部分に対応する他のチャンクをエントロピー復号化するときに、前記現在のチャンクをエントロピー復号化した後に現れる前記それぞれの確率推定の状態を考慮にいれ、
対応しない場合は、前記現在のチャンクに対応するサブ部分に前記それぞれのエントロピー符号化パス順で先行する前記予め定められたエントロピースライスの部分のサブ部分に対応するチャンクをエントロピー復号化した後に現れる確率推定によって決まる確率推定を用いて、前記現在のチャンクをエントロピー復号化する、
ように構成され、
前記デコーダはイントラ予測およびフレーム間予測を使用するように構成される、
デコーダ。
前記エントロピースライス順序は、前記異なる部分が、実質的に互いに平行に延在する前記エントロピースライス順序に沿って、前記エントロピースライスの前記エントロピー符号化パス(14)に対して角度のある方向(16)にお互いを追従するように、選択された、請求項1または請求項2に記載のデコーダ。
各エントロピースライスは、前記サンプルアレイの対応する部分についてのデータをエントロピー符号化しており、前記異なる部分は、前記サンプルアレイのブロックの行を形成していて、前記ブロックは行および列に規則的に配列されていて前記エントロピースライスに対応する部分が同じ数のブロックから成り、かつ前記エントロピー符号化パスが前記ブロックの行に沿って平行に向くようになっていて、前記デコーダは、各エントロピースライス(90)について、前記それぞれのエントロピースライスに対応する部分(12)の前記それぞれの符号化パス(14)順で最初のブロックを復号化する前に、前記エントロピースライス順序(16)において先行するエントロピースライスに対応する部分(12)の前記それぞれのエントロピー符号化パス順で2番目のブロック(50)をエントロピー復号化した後に現れる確率推定によって、前記それぞれのエントロピースライスに対する前記確率推定(94)の初期化を実行するように構成される、請求項1または請求項2に記載のデコーダ。
各エントロピースライスは、前記サンプルアレイの対応する部分についてのデータをエントロピー符号化しており、前記異なる部分は前記サンプルアレイのブロックの行を形成し、前記ブロックは行および列に規則的に配列されていて前記エントロピースライスに対応する部分が同じ数のブロックから成り、かつ前記エントロピー符号化パスが前記ブロックの行に沿って平行に向くようになっていて、前記デコーダは、各エントロピースライスについて、前記それぞれのエントロピー符号化パスに沿ったエントロピー復号化と前記それぞれの符号化パスに沿った適応を実行して、前記予め定められたエントロピースライスの前記現在のパートが前記予め定められたエントロピースライスの前記それぞれの確率推定(94)に基づいてエントロピー復号化された後に、前記予め定められたエントロピースライスの前記それぞれの確率推定(94)が、前記予め定められたエントロピースライスの前記現在のパート、および前記空間的に隣接するエントロピースライスの隣接するパートのエントロピー復号化において現れる前記確率推定によって適応されるように構成される、請求項1または請求項2に記載のデコーダ。
前記デコーダは、エントロピースライス順序において直接に連続するエントロピースライスの前記エントロピー復号化をステアリングし、前記エントロピー符号化パスに沿ってブロック単位で測定された直接に連続するエントロピースライスに対応する部分の現在復号化されるブロックの距離が2ブロックより低くなることを防止するように構成される、請求項1または請求項2に記載のデコーダ。
前記デコーダは、エントロピースライス順序において直接に連続するエントロピースライスの前記エントロピー復号化をステアリングし、前記エントロピー符号化パスに沿ってブロック単位で測定された直接に連続するエントロピースライスに対応する部分の現在復号化されるブロックの距離が2ブロックにとどまるように構成される、請求項1または請求項2に記載のデコーダ。
前記エントロピースライスは、チャンクに細分化され、前記デコーダは、前記チャンクを非インターリーブするデインターリーバを備え、前記エントロピースライスのいずれかの全体を受信する前でさえ、前記エントロピースライスの前記エントロピー復号化を、前記エントロピー符号化パスに沿って平行に開始するように構成される、請求項1または請求項2に記載のデコーダ。
前記サンプルアレイ(10)はサンプルのシーケンスの現在のサンプルアレイであり、前記デコーダは、予め定められたエントロピースライスのエントロピー復号化において、前記予め定められたエントロピースライスの前に復号化されたパートを用いて適応された前記予め定められたエントロピースライスの前記それぞれの確率推定と、前記空間的に隣接し、エントロピースライス順序において先行するエントロピースライスの、前記空間的に隣接するエントロピースライスの隣接するパートにおけるエントロピー復号化において用いられた確率推定と、前記現在のサンプルアレイ以外の他のサンプルアレイに関係する前記エントロピー符号化されたデータストリームの前に復号化されたフレームの復号化において用いられた確率推定とに基づいて、前記予め定められたエントロピースライスの前記現在のパートをエントロピー復号化するように構成される、請求項1または請求項2に記載のデコーダ。
【発明を実施するための形態】
【0013】
符号化効率に関してより少ないペナルティで低遅延の達成を改善する以下に概説される方策の理解を容易にするため、
図1のエンコーダは、本願の実施形態の有利なコンセプトと、それを
図1の実施形態にどのように組み込むことができるかについて前もって議論することなく、より一般的な用語で最初に記載される。しかしながら、
図1に示される構造は、単に本願の実施形態を用いることができる説明のための環境として役立つことを述べるべきである。本発明の実施形態によるエンコーダとデコーダの一般化と変形例が簡単に述べられる。
【0014】
図1は、サンプルアレイ10を、エントロピー符号化されたデータストリーム20に符号化するエンコーダを示す。
図1に示されるように、サンプルアレイ10は、サンプルアレイのシーケンス30の1つとすることができ、エンコーダは、シーケンス30をデータストリーム20に符号化するように構成することができる。
【0015】
図1のエンコーダは、全般的に参照符号40によって示され、データストリーム20を出力するエントロピー符号化ステージ44が引き続くプリコーダ42を備える。プリコーダ42は、各シンタックス要素が予め定められたシンタックス要素タイプのセットのそれぞれの1つであり、次にそれぞれのセマンティクスに関連する、予め定められたシンタックスのシンタックス要素によってそのコンテンツを記述するため、サンプルアレイ10を受信し、動作するように構成される。
【0016】
シンタックス要素を用いたサンプルアレイ10の記述において、プリコーダ42は、サンプルアレイ10を符号化ユニット50に細分化することができる。用語「符号化ユニット」は、以下により詳細に述べられる理由のために、代わりに「符号化ツリーユニット」(CTU)と呼ばれる。プリコーダ42がサンプルアレイ10をどのように符号化ユニット50に細分化することができるかの1つの可能性が、
図2において例示的に示される。この実施例によれば、細分化は、サンプルアレイ10を符号化ユニット50に規則的に細分化し、その結果、後者は、全部のサンプルアレイ10をオーバーラップなしにギャップレスにカバーするように行および列に配置される。言い換えれば、プリコーダ42は、各符号化ユニット50をシンタックス要素によって記述するように構成することができる。これらのシンタックス要素のいくつかは、それぞれの符号化ユニット50の更なる細分化のための細分化情報を形成することができる。細分化情報は、例えば、マルチツリー細分化によって、これらの予測ブロック52の各々に対して予測モードを関連する予測パラメータに関連づけるプリコーダ42による、それぞれの符号化ユニット50の予測ブロック52への細分化を記述することができる。この予測細分化は、
図2に図示されるように、サイズにおいて異なる予測ブロック52を許容することができる。プリコーダ42は、予測ブロック52毎の予測残差を記述するために、予測ブロック52を残差ブロック54に更に細分化するために、残差予測情報を予測ブロック52に関連づけることもできる。従って、プリコーダは、ハイブリッド符号化スキームによるサンプルアレイ10のシンタックス記述を生成するように構成することができる。しかしながら、既に上記されたように、プリコーダ42がシンタックス要素によってサンプルアレイ10を記述するちょうど述べられた方法は、単に図示の目的で提示されたものであって、異なって実施することもできる。
【0017】
プリコーダ42は、サンプルアレイ10の隣接する符号化ユニット50のコンテンツ間の空間的相互関係を利用することができる。例えば、プリコーダ42は、現在符号化されている符号化ユニット50に空間的に隣接する前に符号化された符号化ユニット50に対して決定されたシンタックス要素から、特定の符号化ユニット50に対するシンタックス要素を予測することができる。
図1および2において、例えば、上部および左手のとなりは、矢印60および62で図示されるように、予測に対して役に立つ。そのうえ、プリコーダ42は、イントラ−予測モードにおいて、現在の符号化ユニット50のサンプルの予測を取得するように、隣接する符号化ユニット50の既に符号化されたコンテンツを現在の符号化ユニット50に外挿することができる。
図1に示されたように、プリコーダ42は、空間的相互関係の利用を越えて、
図1において矢印64で説明のために示された前に符号化されたサンプルアレイから、現在の符号化ユニット50に対するサンプルおよび/またはシンタックス要素を一時的に予測することができる。すなわち、動き補償された予測をプリコーダ42によって用いることができ、動きベクトル自身は、前に符号化されたサンプルアレイの動きベクトルからの時間的予測に従うことができる。
【0018】
すなわち、プリコーダ42は、符号化ユニット別に、サンプルアレイ10のコンテンツを記述することができ、このために、空間的予測を用いることができる。空間的予測は、各符号化ユニット50に対して、同じサンプルアレイ10の空間的に隣接する符号化ユニットに限定され、その結果、サンプルアレイ10の符号化ユニット50の中で符号化順序66に従うとき、空間的予測に対して予測レファレンスとして役立つ隣接する符号化ユニットは、現在の符号化ユニット50の前に、符号化順序66によってトラバースする。
図2において図示されたように、符号化ユニット50の中で定められた符号化順序66は、例えば、符号化ユニット50が上から下に行単位でトラバースするラスタースキャン順序とすることができる。オプションとして、アレイ10の、タイルのアレイへの細分化は、スキャン順序66を、−ラスタースキャン順序において−、次にラスタースキャンタイプとすることもできるタイル順序において、1つのタイルを次に対して先行する前の最初に備える符号化ユニット50をトラバースさせるようにすることができる。例えば、空間的予測は、単に、現在の符号化ユニット50が存在する符号化ユニットの行の上の符号化ユニットの行内の隣接する符号化ユニット50と、同じ符号化ユニットの行内であるが、現在の符号化ユニットに対して左側の符号化ユニットを含むことができる。以下でより詳細に説明されるように、空間的相互関係/空間的予測上のこの制限は、並列ウェーブフロント処理を可能にする。
【0019】
プリコーダ42は、シンタックス要素をエントロピー符号化ステージ44に転送する。ちょうど概説されたように、これらのシンタックス要素のいくつかは、予測的に符号化される、すなわち予測残差を表す。プリコーダ42は、従って、予測的符号化器とみなすことができる。その他に、プリコーダ42は、符号化ユニット50のコンテンツの予測のコード残差を変換するように構成された変換符号化器とすることができる。
【0020】
エントロピー符号化ステージ44の例示的な内部構造は、
図1においても示される。図のように、エントロピー符号化ステージ44は、オプションとして、可能なステージ数がシンボルアルファベットの基数を超える、プリコーダ42から受信されたシンタックス要素の各々を、エントロピー符号化エンジン44がそれに基づいて動作するシンボルアルファベットのシンボルs
iのシーケンスに変換するシンボライザを備えることができる。エントロピー符号化エンジン44は、オプションのシンボライザ70の他に、コンテキストセレクタ72とイニシャライザ74、確率推定マネージャ76、確率推定アダプタ78およびエントロピー符号化コア80を備えることができる。エントロピー符号化コアの出力は、エントロピー符号化ステージ44の出力を形成する。また、エントロピー符号化コア80は、2つの入力、言い換えれば1つはシンボルのシーケンスのシンボルsiを受信する入力と、他の1つはシンボルの各々に対する確率推定p
iを受信する入力を備える。
【0021】
エントロピー符号化の性質により、圧縮レートに関する符号化効率は確率推定の改善によって増加し、確率推定が実際のシンボル統計量によくマッチすればするほど、圧縮レートはよくなる。
【0022】
図1の実施例において、コンテキストセレクタ72は、各シンボルsiに対して、マネージャ76によって管理される利用可能なコンテキストのセットの中で対応するコンテキストciを選択するように構成される。コンテキストの選択は、しかしながら、単にオプションの機能を形成し、例えば、各シンボルに対して同じコンテキストを用いることによって省くことができる点に留意すべきである。しかしながら、コンテキストの選択を用いる場合、コンテキストセレクタ72は、現在の符号化ユニットの外部の符号化ユニットに関する、言い換えれば上述の限定された近傍内の隣接する符号化ユニットに関する情報に少なくとも部分的に基づいてコンテキストの選択を実行するように構成することができる。
【0023】
マネージャ76は、各利用可能なコンテキストに対して、関連する確率推定を記憶する記憶装置を備える。例えば、シンボルアルファベットをバイナリのアルファベットとし、その結果、各利用可能なコンテキストに対して、単に1つの確率値が記憶されるようにすることができる。
【0024】
イニシャライザ74は、利用可能なコンテキストに対して、マネージャ76内で記憶された確率推定を、断続的に初期化または再初期化することができる。このような初期化を実行することができる可能な瞬間は、更に以下で議論される。
【0025】
アダプタ78は、シンボルs
iおよび対応する確率推定p
iのペアーにアクセスし、それゆえにマネージャ76内で確率推定を適応させる。すなわち、それぞれのシンボルs
iをエントロピー符号化するために、エントロピー符号化コア80によって、確率推定がデータストリーム20に適用されるたびに、アダプタ78は、この現在のシンボルs
iの値によるこの確率推定を変化させることができ、その結果、この確率推定p
iは、その確率推定に関連する次のシンボルを(そのコンテキストによって)符号化するとき、実際のシンボル統計量によりよく適応される。すなわち、アダプタ78は、選択されたコンテキストに対する確率推定を、対応するシンボルs
iとともにマネージャ76から受信し、それゆえに確率推定p
iを適応させ、その結果、同じコンテキストc
iの次のシンボルs
iに対して、適応された確率推定が用いられる。
【0026】
エントロピー符号化コア80は、例えば、算数符号化スキームによって、または確率−インターバル−分割−エントロピー符号化スキームにおいて動作するように構成される。算術符号化において、エントロピー符号化コア80は、例えば、シンボルのシーケンスを符号化するとき、例えば、確率インターバル幅値および確率インターバルオフセット値によって定められた確率インターバルによって定められる状態によって、その状態を連続的に更新する。パイプコンセプトにおいて動作するとき、エントロピー符号化コア80は、例えば、確率推定の可能な値のドメインを、これらのインターバルの各々に関して固定−確率エントロピー符号化を実行することによって、異なるインターバルに細分化し、それにより、符号化効率が、関連する確率インターバルにそれぞれ合せられる、サブインターバルの各々に対して、サブストリームが取得される。エントロピー符号化の場合には、データストリーム20の出力は、インターバル細分化プロセスをエミュレートするまたはやり直すことを可能にする復号化側の情報に対する、算術的に符号化されたデータストリームのシグナリングである。
【0027】
当然、エントロピー符号化状態44に対して、サンプルアレイ10に関するすべての情報、すなわちすべてのシンタックス要素/シンボルs
iを、確率推定をその始めにおいて単に一度だけ初期化することによって、エントロピー符号化することが可能であり、そして、次にアダプタ78によって確率推定を連続的に更新する。これは、しかしながら、復号化側でシーケンシャルに復号化されなければならないデータストリーム20に結果としてなる。言い換えれば、いかなるデコーダに対しても、結果として生じるデータストリームをいくつかのサブ部分に細分化し、サブ部分を並列に復号化する可能性はない。これは、次にいかなる低遅延労力も妨げる。
【0028】
それゆえに、以下に更に詳細に概説されるように、サンプルアレイ10を記述するデータ量を、いわゆるエントロピースライスに細分化することは好ましい。これらのエントロピースライスの各々は、それゆえに、サンプルアレイ10に関するシンタックス要素の異なるセットをカバーする。しかしながら、エントロピー符号化ステージ44が、互いに完全に独立する各エントロピースライスを、最初に確率推定を一度初期化し、次に各エントロピースライスに対して個別に確率推定を連続的に更新することによって、エントロピー符号化する場合、用いられる確率推定が実際のシンボル統計量にまだ)正確に適応されないサンプルアレイ10に関し、それを記述するデータの増大するパーセンテージのために、符号化効率が低下する。
【0029】
一方では低い符号化遅延、他方では高い符号化効率の要望に対応するちょうど述べられた問題を克服するため、ここで
図3に関して記載される以下の符号化スキームを用いることができる。
【0030】
最初に、サンプルアレイ10を記述するデータは、以下において「エントロピースライス」と呼ばれている部分に細分化される。細分化80は、オーバーラップフリーである必要はない。他方では、この細分化は、少なくとも部分的にサンプルアレイ10の異なる部分への空間細分化に対応することができる。すなわち、細分化80によれば、サンプルアレイ10を記述するシンタックス要素は、それぞれのシンタックス要素が関係する符号化ユニット50の位置によって異なるエントロピースライス上に分配することができる。例えば、
図2を参照されたい。
図2は、サンプルアレイ10の異なる部分12への例示的な細分化を示す。各部分は、それぞれのエントロピースライスに対応する。例示的に示されるように、各部分12は、符号化ユニット50の行に対応する。他の細分化は、しかしながら、同様に可能である。しかしながら、サンプルアレイ10の部分12への細分化が、上述の符号化順序66に従い、その結果、部分12が符号化順序66に沿って符号化ユニットの連続するランをカバーする場合、それは有益である。しかしながら、そうであったとしても、符号化順序66に沿った部分12の始まりおよび終わりの位置は、それぞれ符号化ユニット50の行の左側と右側の端と一致する必要はない。符号化ユニット50の境界との一致でさえも、お互いに直接に追従し、符号化順序66は強制的である必要はない。
【0031】
そのような方法でサンプルアレイ10を細分化することによって、エントロピースライス順序66は、部分12が符号化順序66に沿ってお互いに追従する部分12の中で定められる。そのうえ、各エントロピースライスに対して、それぞれのエントロピー符号化パス14、言い換えればそれぞれの部分12に向って走る符号化パス66のフラグメントが定められる。部分12が符号化ユニット50の行と一致する
図2の実施例において、各エントロピースライスのエントロピー符号化パス14は、行方向に沿って、お互いに平行に、すなわちここでは左手側から右手側を指し示している。
【0032】
スライス境界を交差しないように、プリコーダ42によって実行される空間的予測と、コンテキストセレクタ72によって実行されるコンテキストの導出を限定する、すなわち、その結果、空間的予測およびコンテキスト選択が他のエントロピースライスに対応するデータによって決定しないようにすることが可能である点に留意すべきである。このように、「エントロピースライス」は、例えば、以下に概説される確率初期化/適応化の従属性を除いて、お互いから完全に独立に復号化可能であるH.264における「スライス」の通常の定義に対応する。しかしながら、WPP処理は、プリコーディングの反転、すなわちシンタックス要素に基づく復元と、エントロピーコンテキスト選択が関係する限りにおいて依然として可能であるので、空間的予測およびコンテキスト選択、すなわち一般的に言って従属性を許容し、ローカル/空間的相互従属性を活用するために、スライス境界を交差することも可能である。その限りにおいて、エントロピースライスは「従属スライス」に何らかの形で対応する。
【0033】
細分化80は、例えば、エントロピー符号化ステージ44によって実行することができる。細分化は、固定するまたはシーケンス30のアレイ中で変化することができる。細分化は、規約毎に固定するまたはデータストリーム20内でシグナリングすることができる。
【0034】
エントロピースライスに基づいて、実際のエントロピー符号化、すなわち82を起こすことができる。各エントロピースライスに対して、エントロピー符号化は、開始フェーズ84と継続フェーズ86に構造化することができる。開始フェーズ84は、例えば、確率推定の初期化ならびにそれぞれのエントロピースライスに対する実際のエントロピー符号化プロセスのトリガーを含む。実際のエントロピー符号化は、次に継続フェーズ86の間、実行される。フェーズ86の間のエントロピー符号化は、それぞれのエントロピー符号化パス14に沿って実行される。各エントロピースライスに対する開始フェーズ84は、複数のエントロピースライスのエントロピー符号化がエントロピースライス順序16を用いてシーケンシャルに開始するように制御される。
【0035】
ここで、お互いに完全に独立する各エントロピースライスのエントロピー符号化から結果として生じる上記概説されたペナルティを回避するために、エントロピー符号化プロセス82は、現在のパート、例えば、現在のエントロピースライスの現在の符号化ユニットが、現在のエントロピースライスの前に符号化されたパート、すなわち
図2の場合において現在の符号化ユニット50の左側に対する現在のエントロピースライスのパートを用いて適応された現在のエントロピースライスのそれぞれの確率推定と、エントロピースライス順序16において空間的に隣接する先行するエントロピースライスのエントロピー符号化においてその隣接するパート、すなわち隣接する符号化ユニットで用いられた確率推定とに基づいて、エントロピー符号化されるように制御される。
【0036】
上述した従属性をより明確に記載するため、
図4が参照される。
図4は、エントロピースライス順序16におけるn−1、nおよびn+1番目のエントロピースライスを、参照符合90によって示す。各エントロピースライス90は、それぞれのエントロピースライス90に関連するサンプルアレイ10の部分12を記述するシンタックス要素のシーケンスを包含する。エントロピー符号化パス14に沿って、エントロピースライス19は、セグメント92のシーケンスにセグメント化され、その各々は、エントロピースライス90が関係する部分12の符号化ユニット50のそれぞれの1つに対応する。
【0037】
上述のように、エントロピースライス90のエントロピー符号化において用いられる確率推定は、継続フェーズ86の間、エントロピー符号化パス14に沿って連続的に更新され、その結果、確率推定は、それぞれのエントロピースライス90の実際のシンボル統計量に次第によく適応する、−すなわち、確率推定はそれぞれのエントロピースライスに関連する。
図4において、継続フェーズ86の間、エントロピースライス90のエントロピー符号化に用いられる確率推定94は連続的に更新されるが、単にセグメント92の始まりと終わりの位置で生じる確率推定94の状態が、更に以下で図示され言及される。特に、開始フェーズ84の間に初期化された最初のセグメント92のエントロピー符号化の前の状態が96で示され、最初のセグメントを符号化した後に現れる状態が98で図示され、最初の2つのセグメントを符号化した後に現れる状態が100で示される。同じ要素は、
図4において、エントロピースライス順序16において、n−1のエントロピースライスと、引き続くエントロピースライス、すなわちエントロピースライスn+1に対しても示される。
【0038】
ここで、上記概説された従属性を達成するため、n番目のエントロピースライス90のエントロピー符号化に対する初期状態96は、先行するエントロピースライスn−1の符号化の間に現れる確率推定94のいかなる中間状態によってもセットされる。「中間状態」は、初期状態96および全部のエントロピースライスn−1のエントロピー符号化の後に現れる最終状態を除いて、確率推定94のいかなる状態をも示す。こうすることによって、エントロピースライス順序16に沿ったエントロピースライス90のシーケンスのエントロピー符号化は、次のエントロピースライスのエントロピー符号化に対する確率推定94の初期化に対して用いられる状態に先行するセグメント92の数、すなわちaと、後続するセグメント92の数、すなわちbとの比率によって決定される並列度で並列化することができる。特に、
図4において、aは、矢印104で図示される、現在のエントロピースライスの状態96を、先行するエントロピースライスの状態100に等しくなるようにセットするように、初期化によって、状態100の適応に等しくなるように例示的にセットされる。
【0039】
この方策によって、エントロピー符号化パス順序14において状態100に追従するいかなるセグメント92のエントロピー符号化も、継続フェーズ86の間、同じエントロピースライスの先行するセグメントに基づいて適応された確率推定94ならびに先行するエントロピースライス90の3番目のセグメント92のエントロピー符号化において用いられた確率推定によって決まる。
【0040】
したがって、エントロピースライス90のエントロピー符号化は、パイプライン化されたスケジューリングにおいて並列に実行することができる。タイムスケジューリングに課される唯一の制限は、いくつかのエントロピースライスのエントロピー符号化が、単に先行するエントロピースライスのa番目のセグメント92のエントロピー符号化を終了した後に開始することができるということである。エントロピースライス順序16において直接お互いを追従するエントロピースライス90は、継続フェーズ86の間、エントロピー符号化手順の時間配列に関する他のいかなる制限も受けない。
【0041】
しかしながら、他の実施形態によれば、より強い結合が、付加的におよび/または代わりに用いられる。特に、
図4において代表的な矢印106によって図示されるように、継続フェーズ86の間の確率推定の適応化は、特定のセグメント92に対応する符号化ユニットのデータが、それぞれのセグメント92の始めにおける状態からこのセグメント92の終わりまで、確率推定94を変化させることを生じさせ、これにより、上記で示された実際のシンボル統計量の近似を改善する。すなわち、適応化106は、エントロピースライスn−1に対して、単にエントロピースライスn−1のデータによって実行され、同じことがエントロピースライスn等の確率推定の適応化106に対して適用される。例えば、エントロピースライス90間の更なる干渉なしに、確率推定の適応化106を実行することによって、矢印104に関して上述された初期化を実行することが可能である。しかしなから、実際のシンボル統計量の確率推定近似を促進させるために、連続するエントロピースライスの確率推定の適応化106を結合することができ、その結果、現在のエントロピースライスnの確率推定の適応化を適応させるときに、先行するエントロピースライスn−1の確率推定の適応化106も影響し、または考慮される。これは、n−1番目のエントロピースライス90のエントロピー符号化に対する空間的に隣接する確率推定94の状態110からn番目のエントロピースライス90のエントロピー符号化に対する確率推定94の状態100から指し示す矢印108によって、
図4において図示される。上記概説された状態96の初期化を用いるとき、確率適応化の結合108は、例えば、先行するエントロピースライスのbセグメント92のエントロピー符号化の後に現れるいかなるb確率推定状態も用いることができる。より正確に言うと、現在のエントロピースライスの第1のセグメント92のエントロピー符号化の後に現れる確率推定は、通常の確率適応化106と、先行するエントロピー符号化のa+1番目のセグメント92のエントロピー符号化の間の確率推定の適応化106から結果として生じる確率推定状態を考慮すること108による結果とすることができる。「考慮すること」は、例えば、いくらかの平均演算を含むことができる。実施例は、以下に更に概説される。言い換えれば、n番目のエントロピースライス90のエントロピー符号化に対する、そのエントロピー符号化セグメントの始めにおける確率推定94の状態98は、適応化106を用いて適応された現在のエントロピースライスnのエントロピー符号化に対する確率推定94の直前の状態96と、確率適応化106によって修正された先行するエントロピースライスn−1のa+1番目のセグメント92のエントロピー符号化の前の状態との平均演算の結果とすることができる。同様に、状態100は、現在のエントロピースライスnのエントロピー符号化の間に実行される適応化106の結果と、先行するエントロピースライスn−1等のa+2番目のセグメント92のエントロピー符号化の間の確率適応化の結果との平均演算の結果とすることができる。
【0042】
より詳しくは、
p(n)→{i,j}とする。ここで、i,jは任意の符号化ユニットの位置を示し(ここで(0,0)は左上の位置であり、(I,J)は右下の位置である)、i∈{1…I}、j∈{1…J}、Iは列の番号であり、Jは行の番号であり、p()はパス順序66を定める。
P
[i,j]は、エントロピー符号化ユニット{i,j}において用いられる確率推定を示し、
T(P
[i,j])は、エントロピー符号化ユニット{i,j}に基づくP
[i,j]の確率適応化106の結果を示す。
そのとき、連続するエントロピースライス90の確率推定106は、結合され、次式によって、通常のエントロピースライスの内部適用化をP
p(n-1)=T(P
p(n))に従って置き換えることができる。
【0044】
ここで、Nは1または2以上とすることができ、{i,j}
1…
N、それぞれ、任意の前の(エントロピースライス順序16において)エントロピースライス90およびその関連する部分12から選択される。関数「平均」は、加重和、中央値関数、その他の1つとすることができる。p(n)={i,j}は、現在の符号化ユニットであり、p(n+1)は、それぞれ、符号化順序14および66に従って追従する。提案された実施形態において、p(n+1)={i+1,j}である。
【0045】
好ましくは、{i,j}
1…
Nは、各k∈{1…N}に対して、{i,j}
1…
N={i
k,j
k}およびi
k<i+3、j
k<jを満たす。ここで、p(n)={i,j}は現在の符号化ユニット(すなわち現在のエントロピースライスの2番目または追従する符号化ユニットのいずれか)であり、すなわちそれらはウェーブフロントを超えて存在することはない。
【0046】
後者の変形例において、エントロピー符号化のタイムスケジューリングは、エントロピースライス90を並列にエントロピー符号化するとき、より密接にお互いに結合される。すなわち、継続フェーズ86の間、現在のエントロピースライスのラインにおける次のセグメント92は、単にエントロピー符号化パス順序14において更なる上位の位置である先行するエントロピースライスの対応するセグメントの終了によって、始めることができる。
【0047】
言い換えれば、上記説明は、デコーダ40および、特にエントロピー符号化ステージ44が、n番目のようなエントロピースライス90に対して、n番目のエントロピースライスに対応する部分12の最初の符号化ユニット/最初のブロック50に対応する最初のセグメント92をそれぞれの符号化パス14に沿って復号化する前に、エントロピースライス順序16において、先行するエントロピースライスに対応する部分12の2番目の符号化ユニット/ブロックをそれぞれの符号化パス14に沿ってエントロピー復号化した後に現れる確率推定によって、その確率推定94の初期化を実行するように構成された、実施例を示したものである。付加的にまたは代わりに、デコーダ40および、特にエントロピー符号化ステージ44は、各エントロピースライス90に対して、現在のエントロピースライスの現在のパート/ブロック/符号化ユニット50が現在のエントロピースライス90のそれぞれの確率推定94に基づいてエントロピー復号化された後に、現在のエントロピースライスのそれぞれの確率推定94が、現在のエントロピースライスのこの現在のパートと、現在のエントロピースライスの現在のパート/ブロック/符号化ユニットの右側に対して2番目の列における上部に隣接する行におけるような、空間的に隣接する先行するエントロピースライスの隣接するパート/ブロック/符号化ユニット50のエントロピー復号化において現れる確率推定によって適応されるように、エントロピー復号化および確率推定の適応化を実行するように構成することができる。
【0048】
上記説明から明らかになったように、確率推定は、各エントロピースライス50に対して別々に適応/管理されなければならない。これは、それぞれの確率推定記憶120(
図1参照)において、
図4、すなわち96、98、100、110および102に関して例示的に示され、言及されたように、エントロピースライスをシーケンシャルに処理し、確率推定状態を記憶することによってなすことができる。あるいは、エントロピースライスを並列に復号化するために、複数のエントロピー符号化ステージ44を提供することができる。これは、エントロピー符号化ステージ44の複数のインスタンス化が示された
図5において図示され、エントロピースライスのそれぞれ1つおよびサンプルアレイ10の対応する部分12にそれぞれ関連する。
図5は、それぞれのエントロピー復号化ステージ130の並列のインスタンス化を用いることによる復号化プロセスおよびその可能な実施態様をも図示している。これらのエントロピー復号化ステージ130の各々は、データストリーム20によって伝達されるエントロピースライスのそれぞれによって供給される。
【0049】
図5は、エントロピー符号化ステージ44およびそれぞれの復号化ステージ130が、完全にはお互いに独立に並列に動作しないことを示している。むしろ、記憶装置120に記憶されるような記憶された確率推定状態は、それぞれのエントロピースライスに対応する1つのステージから、エントロピースライス順序16に従って追従するエントロピースライスに関係する他のステージに、引き渡される。
【0050】
図5は、説明の便宜上、1つの符号化ユニット50内で、予測ブロック52の中で定められたトラバース順序140のような符号化ユニット50の可能な細分化をトラバースする可能なトラバース順序をも示す。すべてのこれらの予測ブロック52に対して、対応するシンタックス要素はそれぞれのセグメント92内に、これらのシンタックス要素の値に対応して含まれ、確率推定94は、パス140のトラバースの間、上述された「T」を定義する符号化ユニット50のトラバースの間の適応化によって、適応化される。H.264およびHEVCにかかるCABACにおいて、「T」は、テーブルベースで、すなわち、現在のコンテキストに対する確率推定の現在の状態から、そのコンテキストに関連する現在のシンボル値によって決定される次の状態への遷移を定義する「テーブルウォーク」によって実行される。
【0051】
図1のエンコーダの実施形態に対応するデコーダの実施形態を示す
図6に進む前に、プリコーダ42の予測的な性質は、単に説明のための実施形態として役立つ点に留意すべきである。さらに代替の実施形態によれば、プリコーダ42は、例えば、サンプルアレイ10のオリジナルのサンプル値である、エントロピー符号化ステージ44が動作するシンタックス要素によって、やめることができる。さらに代わりとして、プリコーダ42は、JPEGにおけるようなサンプルアレイ10のサブバンド分解を形成するように構成することができる。コンテキストセレクタ72のオプションの性質は、既に上述されている。同じことがイニシャライザ74に関して適用される。同じことが異なって装備されてもよい。
【0052】
図6は、
図1のエンコーダ40に対応するデコーダ200を示す。デコーダ200の構造は、エンコーダ40の構造を実質的に反映するものであることは、
図6から明らかである。すなわち、デコーダ200は、データストリーム20を受信する入力202を備え、エントロピー復号化ステージ204とコンストラクタ206の連結が続く。エントロピー復号化ステージ204は、データストリーム202内で伝達されるエントロピースライスをエントロピー復号化し、次に、復号化されたシンボルs
iおよびシンタックス要素を、それぞれコンストラクタ206に転送し、コンストラクタ206は、次に、それぞれのリクエスト208によって、エントロピー復号化ステージ204からシンタックス要素をリクエストする。言い換えれば、コンストラクタ206は、エンコーダ内でプリコーダ42によって生成されたシンタックス要素ストリームを解析する責務をも負担する。したがって、コンストラクタ206は、エントロピー復号化ステージ204から、シンタックス要素をシーケンシャルにリクエストする。エントロピー復号化ステージ204は、エントロピー符号化ステージ44と実質的に同じ方法で構築される。したがって、エントロピー復号化ステージ204の内部ブロックの同じ参照符号が再利用される。シンボライザ70は、存在するならば、シンタックス要素に対するリクエストをシンボルに対するリクエストに変え、エントロピー復号化コア80は、それぞれのシンボル値s
iによって答え、シンボライザ70は、有効なシンボル語を形成する受信されたシンボルのシーケンスをシンタックス要素にマッピングし、それをコンストラクタ206に転送する。コンストラクタ206は、上記で概説された予測的復号化等を用いたようなエントロピー復号化ステージ204から受信されたシンタックス要素のストリームからサンプルアレイ10を復元する。より正確に言うと、コンストラクタ206は、符号化順序66をも用い、予測60、62および64を実行することによって、符号化ユニット毎に復号化を実行する。シンタックス要素に対するまたはサンプル値に対する1つ以上の予測は、オプションとしてシンタックス要素ストリームのシンタックス要素から取得される予測残差を用いることによって、加算のように結合される。エントロピー復号化コア80は、ちょうどエントロピー符号化コア80のように、算術復号化コンセプトまたは確率インターバル分割エントロピー復号化コンセプトに従うことができる。算数復号化の場合、エントロピー復号化コア80は、部分的インターバル幅値およびこの部分的インターバルを指し示すオフセット値のような値のフォームにおいて、内部状態を連続的に更新することができる。更新は、到着するデータストリームを用いてなされる。現在の部分的インターバルは、確率推定マネージャ76とともにコンテキストセレクタ72によって各シンボルs
iに対して提供される確率推定p
iを用いて、エントロピー符号化コア80に類似して細分化される。アダプタ78は、コンテキストセレクタ72によってシンボルs
iに関連するコンテキストc
iの確率推定値p
iを更新するために、復号化されたシンボル値s
iを用いて確率推定の適応化を実行する。イニシャライザ74による初期化は、同じインスタンスに、符号化側と同じ方法でなされる。
【0053】
図6のデコーダは、
図3に関して上述されたエンコーダの機能に非常に類似した方法で動作する。ステップ230において、サンプルアレイ10は、エントロピースライスに細分化される。例えば、
図8を参照されたい。
図8は、入力202に到着するデータストリーム20と、特にそれに含まれるエントロピースライス90を示す。ステップ230において、これらのエントロピースライス90の各々は、それぞれのエントロピースライス90が関連する部分12に関連し、その結果、それぞれの先行するエントロピースライスに基づく上述の確率推定の初期化および確率推定の適応化を実行することができる。サンプルアレイの細分化、または、より正確に言うと、エントロピースライス90の、それらのそれぞれの部分12との関連付けは、コンストラクタ206によって実行することができる。関連付けは、エントロピー符号化されない部分においてデータストリーム20内に含まれるサイド情報のような異なる方策によって、または規約によって達成することができる。
【0054】
エントロピースライス90は、次に、エントロピー復号化プロセス232において、符号化プロセス82を反映させる方法で、言い換えれば、各エントロピースライス90に対して、確率推定の初期化と適応化によって、開始フェーズ234と継続フェーズ236を符号化プロシージャと同じ方法で同じインスタンスに実行することによって、エントロピー復号化される。
【0055】
符号化に関して上述されたのと同じ並列化が、復号化側において可能である。
図5に示されたエントロピー復号化ステージのインスタンス化130は、
図6におけるエントロピー復号化ステージ204に関して示されたようにそれぞれ具現化することができる。確率推定記憶装置240は、エントロピー符号化順序16において引き続くエントロピースライスのエントロピー復号化に対して責任があるエントロピー復号化ステージ130における使用に対して、確率推定の状態を記憶するために用いることができる。
【0056】
本願の実施形態が記載された後、今までに記載されたコンセプトが、異なる言い回しを用いて、再び以下に記載される。以下に、本願のいくつかの更なる態様が記載される。以下において、上述された符号化ユニット50は、LCU(最大符号化ユニット)と呼ばれ、それにより、来たるべきHEVC規格に対する用語に適合する。
【0057】
第1に、上述された確率適応化106は、
図9に関して再び簡単に記述される。
【0058】
現在のLCUは、先行する左側のLCUを符号化した後に利用可能な、CABAC確率のような確率推定を用いる。例えば、xによって示される
図9のLCUは、左手側のLCUのエントロピー符号化の終わりまでLCUxの左側に対して適応された確率推定p
1を用いてエントロピー符号化されると仮定される。しかしながら、情報が、左側のものだけでなく、既に処理されて利用可能な1つ以上の他のLCUから用いられる場合、確率適応化においてより良い結果を達成することができる。
【0059】
上述のように、エントロピースライスのエントロピー復号化およびエントロピー符号化において、各LCUの符号化または復号化の前に、他のLCUからの既に存在する確率(確率推定)の助けによって新しい確率推定が演算される。より正確に言うと、確率適応化は、現在のエントロピースライスのあらゆる先行するLCUから実行されるだけでなく、エントロピースライス順序に先行するエントロピースライスのLCUからも実行することができる。このアプローチは、再び
図9において表される。したがって、
図9においてXで示された現在のLCUの始めの確率は、次のように演算することができる。
【0061】
ここで、a
1,…a
kはLCUの重み係数である。
【0062】
どの重みの確率が最も良い結果を提供するかはテストされている。この実験において、近傍のLCUのみが用いられている。この研究は、左側のLCUから75%および上右側のLCUからの25%の重みを用いることを明らかにする。
図10〜13において、その結果が提供される。「Prob.Adap」を用いて与えられたグラフは、上述された確率適応化を用いる。
【0063】
しかしながら、確率推定の適応化において、隣接するブロックのみを用いることはできない。各最も近いLCUは、確率最適化に対する使用を有意とすることができる自身の近傍を特別に有する。言い換えれば、上側の最も近い行からのLCUのみを適用することはできない。
図9において、確率推定の導出が、最初に近傍からとられ、各次の上側の行の各上右側のLCU(p
5およびp
kを参照)からとることができた実施例を見ることができる。
【0064】
上記概説された確率再計算または確率推定の適応化によって、いくつかの複雑度が導入されることが認められるべきである。確率推定の新しい演算は、例えば、次の3つのステップにおいて生ずる。第1に、各候補の確率推定は、各コンテキストの状態から得られなければならない。これは、それぞれ記憶装置120および240に記憶することによって、またはこれらの状態が同時に利用可能であるように並列のエントロピースライスn/復号化プロセスをステアリングすることによって、なされる。第2に、式(1)を用いて、最適化された確率(p
new)がつくられる。すなわち、異なるエントロピースライスの適応された確率推定を結合するために、例えば、いくつかの平均演算を用いることができる。最後のステップとして、新しいコンテキストの状態がp
newから変換され、古いものを置換する。すなわち、確率推定マネージャ76は、このように取得された新しい確率推定を採用する。各シンタックス要素に対するこのパフォーマンスは、特に乗算演算を用いることで、複雑度を非常に増大させることができる。このペナルティを低減する唯一の方法は、これらの3つのステップを回避しようと試みることである。候補の数およびそれらの重みが決定される場合、各状態に対して予め計算されたテーブルを近似することができる。従って、候補のインデックス(コンテキストの状態)の助けによるテーブル日付への1つの簡単なアクセスのみを必要とする。
【0065】
この技術は、両方のアプリケーションに対して、エントロピースライスを用いておよびエントロピースライスを用いないで、良い結果を提供することができることが主張される。第1のアプリケーションは、フレーム毎に1つのスライスのみを用い、従って確率適応化は他のいかなる変化もなしに最適化される。エントロピースライスの場合には、確率の適応化は、他のスライスから独立な各スライス内で生ずる。これは、現在のLCUの確率の速い学習を可能にする。
【0066】
上記説明において、上側ラインの2番目のLCUの使用、すなわち確率推定の初期化に対する2番目のLCUの使用も提供された。上述されたビットストリーム(エントロピースライス)のいくつかの条件が達成された場合、符号化および復号化の並列化が可能である。LCU間のCABAC確率の従属性は、壊れていなければならない。ウェーブフロント並列処理によって、各ラインの最初のLCUを、前のラインの最後のLCUから独立させることが重要である。それは、例えば、CABAC確率がLCUの各ラインの始めにおいて再初期化される場合、達成することができる。しかしながら、この方法は、各再初期化が画像の特異性に適応された、達成されたCABAC確率を失うので、最適でない。このペナルティは、各ラインの最初のLCUのCABAC確率の初期化が、前のラインの2番目のLCUの後に取得される確率によって生ずる場合、低減することができる。
【0067】
上述されたように、確率適応化速度における利益は、空間的に隣接するエントロピースライスの確率適応化を結合することによって、達成可能である。特に、言い換えれば、上記説明は、エントロピー符号化されたデータストリームからサンプルアレイ(10)を復元する
図6の1つのようなデコーダであって、エントロピー符号化されたデータストリーム内の複数のエントロピースライスをエントロピー復号化する(エントロピー復号化ステージによって実行される)ように構成され、各エントロピースライスに対して、それぞれの確率推定を用いて、それぞれのエントロピー符号化パス(14)に沿ってエントロピー復号化を実行し、それぞれのエントロピースライスの前に復号化されたパートを用いて、それぞれのエントロピー符号化パスに沿ってそれぞれの確率推定を適応させ、エントロピースライス順序(16)を用いて、複数のエントロピースライスのエントロピー復号化をシーケンシャルに開始し、そして、予め定められたエントロピースライスのエントロピー復号化において、予め定められたエントロピースライスの前に復号化されたパート(例えば、p1を含む)を用いて適応された予め定められたエントロピースライスのそれぞれの確率推定と、空間的に隣接する、エントロピースライス順序において先行するエントロピースライス(例えば、Xを含むスライス)のエントロピー復号化において、空間的に隣接するエントロピースライスの隣接するパート(p4のような)で用いられた確率推定とに基づいて、予め定められたエントロピースライスの現在のパート(x)のエントロピー復号化を実行することによって、エントロピースライスに関連するサンプルアレイの異なる部分(12)をそれぞれ復元する、デコーダをも予期する。
【0068】
異なる部分は、サンプルアレイのブロック(例えばLCUまたはマクロブロック)の行とすることができる。
後者は、ビデオの画像とすることができる。エントロピー符号化パスは、行ワイズに延在することができる。エントロピー符号化、そして従って、確率適応化も同様に、コンテキスト適応可能とすることができる。エントロピースライス順序は、一般に、エントロピースライス順序に沿って、異なる部分が、エントロピースライスのエントロピー符号化パス(14)に対して角度をなす方向(16)においてお互いに追従し、次に、実質的にお互いに対して平行に延在するように、選択することができる。この方策によって、エントロピースライスの現在の復号化されたパート(図においてp1、p4、p5+1およびpkのような)の「ウェーブフロント」は、一般に、エントロピースライスパスに対して部分のシーケンスの方向よりも小さい角度を形成するラインに沿って配置することができる。左上のレファレンスが常にそこにあるために、スライスを並列に処理する全てのスレッドに対して、ウェーブフロントは、2xのブロック位置毎に1yの傾斜を有しなければならないようにすることができる。
【0069】
デコーダは、各エントロピースライスに対して、それぞれのエントロピースライスのサンプルアレイ部分のパートのユニットにおいて、それぞれのエントロピー符号化パスに沿ってエントロピー復号化を実行し、その結果、エントロピースライスがそれぞれ同じ数のパートから成り、その部分のパートのシーケンスが、エントロピースライスパスに沿ってエントロピースライスパスに対してお互いに横方向に配列されるように構成することができる。予め定められたエントロピースライスの部分の現在のパートは、結果として生じるパートのグリッド(例えばLCUまたはマクロブロック)に帰属する。各エントロピースライスに対する、それぞれのエントロピー符号化パスに沿ったエントロピー復号化の実行において、デコーダは、エントロピースライス順序における直接に連続するエントロピースライスの開始時間の間のオフセット/シフトを保存することができ、その結果、エントロピースライスの現在復号化されるパートのウェーブフロントは、エントロピースライスパスおよびエントロピースライス順序方向に関して0.5xブロック位置の傾斜を備えたラインまでのような対角線を形成する。オフセット/シフトは、直接に連続するエントロピースライスの全てのペアーに対する2つのパートに対応することができる。あるいは、デコーダは、単に、直接に連続する(そして、それらのサンプルアレイの部分12が関係する限り直接に隣接する)エントロピースライスの現在復号化されるパートの距離が2パート未満になることを回避することができる。上の図を参照されたい:パート/ブロックp4が復号化されるとすぐに、その右側のパート/ブロックはパス順序16に従って復号化され、もしあれば、Xまたはそれに先行するパート/ブロックのいずれかが同時に復号化される。この方策によって、デコーダは、Xの復号化において用いられる確率推定を決定するために、パート/ブロックp4のコンテンツ、すなわち、パス順序16において現在のパートXに後続する予め定められたエントロピースライスの部分12のパートに配列される空間的に隣接する部分内のパートに基づいて既に適応された確率推定を用いることができる。2つのパートの即時のエントロピースライスの復号化において固定のオフセットの場合、デコーダは、空間的に隣接する引き続くパート(すなわちp4の右側のパート)のエントロピー復号化に対して、同時にパート/ブロックp4のコンテンツに基づいて既に適応された確率推定を用いることが可能である。
【0070】
上述されたように、Xの復号化に対して用いられる確率推定を決定するために、既に適応された確率推定の重み付け加算を用いることができる。
【0071】
また、上述されたように、エントロピースライス順序は、フレーム境界を超えることもできる。
【0072】
先行するエントロピースライスからのちょうど概説された確率採用は、先行するエントロピースライスにおいてそのような隣接するパートが利用可能である現在の/予め定められたエントロピースライスのすべてのパートに対して実行することができることに留意すべきである。すなわち、これは、パス方向16に沿った最初のパートに対しても真であり、この1番最初のパート/ブロック(図において各エントロピースライスの最左)に対して、採用は上述された初期化に等しい。
【0073】
より良く適応させるために、この場合においても、2つの上述された方法を一緒に結合することができる。1スレッドおよび4スレッド、すなわち並列に用いられた処理ユニットによるこのプロセスの結果は、
図10〜13(2LCU+Prob.Adapまたは2LCUのグラフ)において図示されている(Prob.Adapは「確率適応化」を示す)。
【0074】
上記実施形態のコンテキストと、特に以下に記載された更なる実施形態、特にLCUの使用をより良く理解するために、最初にH.264/AVCの構成に目を通すことができる。
【0075】
H.264/AVCにおける符号化されたビデオシーケンスは、NALユニットストリームにおいて集められた一連のアクセスユニットから成り、それらは1つのシーケンスパラメータのセットのみを用いる。各ビデオシーケンスは、独立に復号化することができる。符号化されたシーケンスは、符号化された画像のシーケンスから成る。符号化されたフレームは、全体のフレームまたは単一のフィールドとすることができる。各画像は、固定サイズのマクロブロック(HEVCにおいて:LCU)に区分化される。いくつかのマクロブロックまたはLCUは、一緒に1つのスライスにマージすることができる。画像は、それ故に1つ以上のスライスの集まりである。このデータ分離のゴールは、他のスライスからのデータの使用なしに、スライスによって表された画像のエリアにおけるサンプルの独立の復号化を可能にすることである。
【0076】
しばしば「エントロピースライス」とも称された技術は、従来のスライスの付加的なサブスライスへの分割である。具体的には、それは、単一のスライスのエントロピー符号化されたデータのスライシングを意味する。スライスにおけるエントロピースライスの配置は、異なる種類を有することができる。最も簡単なものは、フレームにおいて、LCU/マクロブロックの各行を、1つのエントロピースライスとして用いることである。代わりに、列または分離した領域を、中断し、お互いに切り換えることさえできるエントロピースライス、例えば
図14におけるスライス1、として利用することができる。
【0077】
エントロピースライスコンセプトの明らかな目的は、復号化プロセスの時間を改善する、すなわちプロセスをスピードアップするために、並列のCPU/GPUおよびマルチコアアーキテクチャの使用を可能にすることである。現在のスライスは、解析し、他のスライスデータに対する参照なしに復元することができるパーティションに分割することができる。エントロピースライスアプローチによって2、3の利益が達成されるが、それによりいくつかのペナルティが現れる。
【0078】
まず最初に、主な目的は、並列の符号化および復号化プロセスに適するビットストリームを生成することである。予測に対して空間および動き情報を用いるため、隣接するLCU(左、上、右上)が符号化されたバージョンとして既に利用可能である場合にのみ、LCUを符号化できることを考慮しなければならない。スライスすることによって並列性を可能にするため、スライスの処理間のシフト(例えば、ウェーブフロントアプローチに対して典型的な、2つのLCUのシフト)を実現しなければならない。CABAC確率の適応化のため、LCUは、前の符号化されたLCUから利用可能な確率を用いる。ラスタースキャン順序に関して、画像をスライスすることによって生ずる問題は、各ラインの最初のLCUが前のラインの最後のLCUによって決定されることから、並列性の妨害となることである。この影響は、いくつかのスライスを同時に開始することができるように、スライス間のCABAC確率の従属性が破壊されなければならないことである。このようにする1つの方法は、通常のCABAC再初期化であるが、それによって全ての採用されたデータは失われる。その結果、ビットレートが増加する可能性がある。
【0079】
第2に、各スライスはそれ自身のサブビットストリームを生成し、それをメインストリームにシリーズに入れることができる。しかし、これらのスライスおよびメインストリームにおけるそれらの位置を正しく識別できるように、デコーダに特別な情報を引き渡す必要がある。シグナリングに対する2つのシナリオがサポートされる。位置情報は、画像ヘッダ(スライス長さ情報)にまたは各スライスヘッダ(開始コードとして指し示す)に記憶することができる。各エントロピースライスの終わりにおけるバイト配列と位置情報は、損失を増やす。
【0080】
エントロピースライスに対するシグナリングによって導入されるペナルティを低減するために、シグナリングに対して良い符号化技術を用いることが重要である。スタートコードが各スライスに対して用いられる場合、すなわち、あまりに多くの付加的なバイト(例えばスライス毎に最小4バイト)がビットストリームに付加される場合に、エントロピースライスシグナリングに対する目に見えるペナルティがフレームにおいて導入される。確かに、開始コードを用いたエントロピースライス90の挿入は、エンコーダが即座にエントロピースライスを出力することができる低遅延シナリオにおいて利益を有する。そのような場合、可能なエントリーポイントの前もってのシグナリングがない。
【0081】
しかしながら、より少ない低遅延の厳密なシナリオにおいて、スライス長(オフセット)を記憶する機会がより適切であるように思われる。このような情報を符号化する1つの周知の方法は、可変長コード(VLC)または指数ゴロンブ符号化である。VLCの主な特徴は、真の情報の前に空の情報(ゼロ)を加えることである。これらのゼロの助けにより、オフセット長についての情報を記憶するコードを決定することができる。我々は、これを実現する他の技術であって、
図15においてスキームが示され、X=EntropySliceSizeがエントロピースライスに含まれるバイトの量である技術を提案する。各次のX(オフセット)は、前の、既に符号化され、シグナリングされたエントロピースライスのオフセットと現在のものとの間のサイズにおける差分として定められる。このコンセプトの主な特徴は、サイズXによる差分を形成し、従って、データ量を減少し、3ビットまで加算することができ、デコーダによって、各エントロピースライスのサイズについての適当な情報を導き出すことを可能にする。VLCと比較すると、エントロピースライスヘッダにおいて節約されるビット量を得ることができる。
【0082】
すなわち、例えば、
図15の態様によれば、情報信号をエントロピー符号化するコンセプトが提供され、並列処理能力にもかかわらず、今までに利用可能なコンセプトと比較して、より高い圧縮レートを可能にする。この態様によれば、サンプルアレイが符号化されるエントロピー符号化されたデータストリームのセクション20は、サンプルアレイの異なる部分12がエントロピー符号化される
図8における90のようなエントロピースライスと、エントロピー符号化されたデータストリーム内で、エントロピー復号化ドメインにおいて測定された、エントロピースライス90の開始位置302を表す情報を備える
図9における破線300によって図示されたヘッダとを備えるものであって、当該情報は、予め定められたエントロピースライスに対して、先行するエントロピースライスn−1の開始位置と予め定められたエントロピースライスnの開始位置の差分を表す差分値を備え、当該差分は、VLCビットシーケンスとして、データストリームに含まれる。
【0083】
特に、VLCビットシーケンスは、差分xがインターバル[0,2
a−1]、[2
a,2
b+2
a−1]、[2
b+2
a,2
c+2
b+2
a−1]、その他の数zのシーケンスのy番目に落ちることを示す可変長yの接頭部と、長さa,b,c,…のシーケンスのy番目のPCM符号化された接尾部を有することができる。a,b,c,…が2の累乗に選ばれる場合、対応するyが加算される場合、すなわち、その結果、a+1、b+2、c+3、その他が全て2の累乗である場合、バイト配列を保存することができる。数zは、
図15において例示的に選択される3つに制限されない。
【0084】
図1におけるようなエンコーダは、連続する開始位置の差分をVLCビットシーケンスに変えるように、すなわち最初に接頭部を決定し、すなわちそのサブインターバル内に差分が存在し(y番目の)、そして接尾部を、開始位置の差分に等しくなるようにプラスし、0、2
a、2
b+2
a、その他のy番目をマイナスしたものにセットすることによって、適切に設計される。
図6におけるようなデコーダは、VLCビットシーケンスから現在のエントロピースライスnの開始位置を導き出すように、すなわち最初に接頭部を検査してyを取得し、次に差分を接尾部の値プラス0、2
a、2
b+2
a、その他のy番目にセットし、次に差分を先行するエントロースライスn−1の開始ポイントに加算することにより、適切に設計される。
【0085】
更なる利益は、エントロピースライスのセグメント化によって、言い換えれば低遅延伝送と復号化のスピードアップに対して、達成することができる。
【0086】
ビデオストリーミングにおいて、より高い解像度(フルHD、クワッドHD他)の実現は、より高い伝送データ量に導く。時間に敏感なシナリオ、いわゆる低遅延の使用ケース(<145ms)に対して、転送時間は、クリチカルな要素になる。ビデオ会議アプリケーションに対するADSLのアップロードリンクを考慮する。ここで、いわゆるストリームのランダムアクセスポイント(通常これらはIフレームと呼ばれる)は、伝送の間にボトルネックを生じさせる候補である。
【0087】
その問題を解決し、伝送および復号化時間の遅延、すなわち端末間の遅延を最小化するために、並列伝送および処理のためのインターリーブ化されたエントロピースライススキームに対して、新しい技術を適用することができる。
【0088】
HEVCは、デコーダ側においていわゆるウェーブフロント処理を許容する。それは、エントロピースライスの使用によって使用可能になる。通常のケースにおいて、全部のスライスのデータは、一度に配信される。復号化プロセスは、符号化されたデータがウェーブフロント−デコーダ−エンジンに到達するとすぐに開始する。デコーダが1つのフレームを開始し、終了することができる時間を低減するために、本発明の実施形態よれば、インターリーブアプローチを用いたエントロピースライスの小さなチャンクへのセグメント化が使用される。それ故に、エンコーダは、特定のエントロピースライスに対応するデータを、通常のケースより早くトランスポート層に配信することができる。それは、より速い伝送と、クライアントにおける並列の復号化プロセスのより早い開始に結果としてなる。
【0089】
スライスのチャンクの生成は、全ての従属性を保持する更なるスライス(従属スライス)において、エントロピースライスを細分化するによって、更に達成することができる。各最大符号化ユニット(LCU)/符号化ツリーユニット(CTU)においてそうする場合、これらのチャンクは、チャンクをインターリーブ形式で伝送し、付加的なシグナリングによって復元するまたは少なくともチャンクのオリジナルの復号化順序の知識を提供することを可能にするシステムレイヤー技術を付加的に用いることによって、インターリーブ化することができる。このようなシグナリングは、H.264/AVCに対するIETF RTP ペイロードフォーマット(RFC3984)において定められたような、復号化順序番号(DON)とすることができる。他のシステム方法は、異なるPIDをこれらの各々にアサインし、更に多重化し、それによってトランスポートチャンネル上でそれらをインターリーブ化することによって、ウェーブフロントサブストリームのチャンクを、MEPG−2システムにおけるような異なるトランスポートストリームに適用することができる。
【0090】
そのアプローチは、追従するフレームのスライスまたはエントロピースライスが、例えばウェーブフロント方法において、追従するフレームのエントロピースライスの復号化に必要な情報がフレーム間レファレンスの利用可能性に基づいているという知識に基づいて、既に復号化することができる場合には、フレーム境界を越えて適用することもできる。復号化順序において後続するこれらの既に復号化可能なフレームのデータは、最大可能な/シグナリングされた動きベクトル長またはデータパートの先行するフレームに対する従属性を示すストリームにおける付加的な情報、またはパラメータセットのようなシーケンスの固定された位置においてシグナリングされる位置を示す固定された参照スキームから導き出すことができる。これは、以下に更に概説される。
【0091】
画像は、
図2および9において描かれた最大符号化ユニット(LCU)−行毎に1つのエントロピースライスによって符号化することができる。それは、デコーダ側でのウェーブフロント技術の使用に対して有利である。符号化プロセスの間、各スライスのビットストリームは、一定のサイズのセグメントに分割することができる。次に、結果としてのセグメントは、インターリーブ化され、伝送に引き渡すことができる。一定のサイズのセグメントは、その可変長により、ビットストリームの終わりにおいて問題をもたらす可能性がある。
【0092】
ここで、可能な2つの一般解がある。第1の解は、1バイトセグメントの生成(通常、スライスのビットストリーム表現はバイト配列されている)と、各デコーダエンジンによるバイトの消費の制御、すなわち、デコーダがエントロピースライスの完了を発見することである。
【0093】
第2の解は、スライスの終わりにおいてファイナライズコードを用いることである。最後のケースにおいて、可変長セグメントは可能であるが、それはまた、より高いデータ量に導く可能性がある。他の方法は、エントロピースライス長のシグナリングである。このような変形例の1つの方法が以下に記載される。
【0094】
セグメントのサイズおよびインターリーブモードは、1つのSEIメッセージまたはSPSのいずれかにおいてシグナリングすることができる。
【0096】
このように、例えば、
図16の態様によれば、今までに利用可能なコンセプトと比較してより低遅延を可能にする、サンプルアレイのエントロピー符号化のコンセプトが提供される。この態様によれば、情報信号が符号化される符号化されたデータストリーム20は、エントロピースライス90のようなスライスまたは情報信号の異なる部分12が(予測的におよび/またはエントロピー)符号化されるちょうど完全に独立に復号化可能なスライス(左手側に示される)を備え、スライス90は、符号化されたデータストリーム20内に、インターリーブ化された方法で配置される(右手側に示される)チャンク(シェードされたボックス310)に細分化され、インターリーブ化は、ブラケット312によって表される。
【0097】
上記に示され、他の態様に関して記載されたように、スライスは、エントロピースライス90とすることができ、それは、次に、フレームのスライスの適当なサブセットとすることができ、したがって、符号化されたデータストリームは、エントロピー符号化されたデータストリーム20とすることができる。
【0098】
いずれのスライス90の復号化に対しても責任があるデコーダは、他のデコーダの前のスライス(スライス順序16による)によって消費される継続時間を待つ必要がないので、スライス90のインターリーブ化312は、より低遅延を可能とする。むしろ、全ての利用可能なデコーダは、その最初のチャンク310が利用可能であるとすぐに、それらの関連するスライスの復号化を開始することが可能であり、潜在的なスライス間の従属性は解消される(ウェーブフロントアプローチを参照)。
【0099】
異なる部分12は、エントロピースライスの中で独立にセットされた確率推定を用いて、または、例えば、言い換えれば異なる部分12がそれぞれのエントロピー符号化パス14に沿ってエントロピースライス90に符号化されるような、上述された確率推定のエントロピースライス間の採用を用いて、エントロピースライス90にエントロピー符号化することができ、下位のエントロピースライスは、前に記載されたように、とりわけ、対応する部分の空間的に隣接するパートにおいて、より高いランクのエントロピースライスにおいて用いられる確率推定から導き出された確率推定を用いて、その中で符号化されるそれらの対応する部分12を有する。
【0100】
エントロピー符号化されたデータストリーム20は、
図16においてオプションとして示されたヘッダを付加的に備えることができる。ヘッダ300はシーケンス30のフレーム(サンプルアレイ)に関連することができ、ヘッダ300はエントロピースライスの長さを表す情報を備える。エントロピースライス90の長さに関する情報は、VLCコードを用いて、上述されたヘッダ300内で符号化することができる。エントロピースライスの長さについての知識を用いて、復号化側において、エントロピースライス90の各々に関連する最後のチャンクとその長さを識別することが可能である。しかしながら、開始コードまたは他の表示スキームを用いることもできる。スライスの開始位置は、まさにスライスの終了を知っている復号化プロセスによって識別することもできる。それ故に、デコーダの表示にちょうど依存することを可能とすることができるが、これは、場合によっては、ストリームにおいて「以前の」エントロピースライスが「以後の」スライスよりも後に終了する場合に、デコーダ間のシグナリングを必要とする。これは、特定のケースに対して、ストリームにおいて、開始コードに基づくことができる「適応的」シグナリングを必要とすることができる。
【0101】
例えば、エントロピースライス90は、
図16において図示されたように、ヘッダ300の後に配置することができる。
【0102】
チャンク310は、少なくとも、チャンクがエントロピー符号化されたデータストリーム20内に配置される順序に沿ったチャンクの最初の1つからの、チャンク310のシーケンスの始めの隣接する部分に関する限り、等しい長さとすることができる。引き続くチャンクは、長さにおいて変化することができる。引き続くチャンクは、シーケンスの始めの隣接する部分の長さに等しくてもよく、またはこの長さより小さくてもよい。引き続くチャンクの長さは、エントロピースライス90の長さまたは開始位置を表すヘッダ300内の上述の情報から導き出すことができる。チャンク310は、エントロピースライスの中で定められた順序に従って、周期的な方法で、エントロピー符号化されたデータストリーム20内に配置することができる。エントロピースライスに対して、完全に前のサイクル内にあるチャンクは、現在および引き続くサイクルにおいてスキップすることができる。
【0103】
他の情報信号、それからビデオ信号のようなサンプルアレイシーケンスは、同様にデータストリーム20によって伝達することができる。従って、異なる部分12は、画像/フレームのような予め定められたサンプルアレイの部分である必要はない。
【0104】
上述のように、エントロピースライス90は、エントロピースライス間予測および/またはフレーム間予測の予測残差のエントロピー符号化を用いて、予測符号化によってその中に符号化されるサンプルアレイ10の異なる部分12を有することができる。すなわち、上述のように、異なる部分は、フレーム10の空間的に区別可能な部分または多重フレーム30とすることができる。後者のケースは、追従するフレームのスライスまたはエントロピースライスが、例えば、ウェーブフロント方法において、既に復号化することができる場合に、追従するフレームのエントロピースライスの復号化に必要な情報が利用可能なフレーム間レファレンスに起因する知識に基づいて、適用される。復号化順序において後続するフレームのこれらの既に復号化可能なデータは、先行するフレームのデータパートの従属性を示す、ストリームにおける最大の許容された/シグナリングされた動きベクトル長または付加的な情報から導き出すことができ、エントロピースライス間予測はイントラ予測を含むことができ、その一方で、フレーム間予測は動き補償された予測を含むことができる。実施例は以下で概説される。
【0105】
上述されたエントロピースライスの中でセットする確率推定の独立性は、確率適応化ならびにコンテキストモデリングの両方に関係することができる。すなわち、エントロピースライス内で選択されるコンテキストは、他のエントロピースライスから独立に選択することができ、コンテキストの確率推定は、同様に他のいかなるエントロピースライスからも独立に初期化し、適応することができる。
【0106】
対応するエントロピーデコーダは、以下のように構成することができる。
【0107】
フレームの異なる部分がエントロピー符号化されるエントロピースライス90を備えるエントロピー符号化されたデータストリーム20を復号化するように構成され、エントロピースライスが、エントロピー符号化されたデータストリーム20内にインターリーブ化された方法で配置されるチャンク310に細分化される、エントロピーデコーダは、
図6に示されたように構成することができ、
図16において314で表される、チャンク310を非インターリーブ化するように構成されたデインターリーバを付加的に備えることができる。
【0108】
特に、
図5において図示されたように、エントロピーデコーダは、異なる処理カーネル上で走るスレッドのような複数のエントロピーデコーダ130を備えることができ、デインターリーバは、各エントロピースライスに対して、そのチャンク310を、それぞれのエントロピースライスに関連するエントロピーデコーダ44に転送するように構成することができる。
【0109】
言い換えれば、エントロピースライスは、チャンクに細分化することができ、次に、インターリーブ化することができ、デコーダは、チャンクを非インターリーブ化するデインターリーバを備えることができ、エントロピースライスに関する動作を、全体としていずれかのエントロピースライスの受信の前にさえ、パス16に沿って並列に開始することができる。チャンクの長さは、例えば、画像等における多くの特定の空間パート/ブロックに対応するように、好ましくは、シンタックスドメインよりむしろエントロピー符号化ドメインにおいて測定される(後者のオプションが同様に利用可能であるにもかかわらず、)ことを想起すべきである。
【0110】
次に、時間的従属性の使用が記載される。それは、今までに記載された確率推定拡張形態に加えて、または代わりに用いることができる。
【0111】
ウェーブフロント処理パターンは、ここで記載されたように、各LCUに対してフレーム間の時間的従属性をも用いた新しい確率計算によって、エントロピー符号化に対して拡張することができる。
【0112】
周知のように、確率は、各フレームの始め(最初のLCU)において再初期化される。これにより、前のフレームにおいて既に取得された確率は消失する。符号化効率の損失を低減するため、参照フレーム324から現在のフレーム10またはエントロピースライス12の最初のLCUに対して、画像の終わりの状態(320)または、エントロピースライスの使用の場合において、スライスの終わりの状態(322)の確率を、それぞれ引き渡すことができる(
図17)。並列のウェーブフロント処理はフレーム境界を超えることもできるので、すなわちフレームのスライスの符号化の間、先行するフレームのスライスの符号化プロセスが既に終了していない可能性があるので、参照フレームにおいて対応するスライスのこのようなデータは、参照されたスライスにおいて、終わりの位置だけでなく、以前の位置からも導き出すことができる。それ故に、シグナリングは、参照位置を示すために用いることができる、またはスキームによって示すことができる。
【0114】
参照フレームの終わりの状態の解析プロセスは、確率適応化の方法によってテストされ、その結果は、
図10〜19上に図示されている(時間的グラフ)。
【0115】
他のフレームからの日付を用いる他の機会は、配列されたLCUの間で取得された確率を交換することである。主なアイデアは、参照フレームの性質が現在のフレームからあまり大きく異ならないという主張に基づいている。フレームにおけるLCUに沿った確率の学習を速めるために、現在のフレームにおいて各LCUの終わりの状態を適当なLCUに引渡すことをトライすることができる。この提案は、
図18において図示される。
【0116】
参照フレームのもとで、異なる機会を理解することができる。例として、最後に符号化されたフレームは、参照フレームとして用いることができる。その他には、同じ時間的レイヤーのみからの最後に符号化されたフレームを、参照に対して充当することができる。
【0117】
その上、このアプローチは、参照フレームからの最後の(スライス)情報の使用、確率適応化、および上側ラインの2番目のLCUの使用として、既に上記提案された方法と併合することができる。
【0118】
上記空間的適応化プロセスは、次のように修正することができる。
【0120】
ここで、Nは1または2以上とすることができ、{i,j}
1…
Nは、それぞれ、現在のサンプルアレイ10およびその関連する部分12におけるいずれかの前の(エントロピースライス順序16において)エントロピースライス90から選択され(そのなかにあり)、Mは1または2以上とすることができ、{i,j}’
1…
Mは、先行するサンプルアレイ350内にある。CU50{i,j}’
1…
Mの少なくとも1つは、p(n)に対して同じ位置に配置されるようにすることができる。CU50{i,j}
1…
Nの可能な選択に関して、上記記載が参照される。関数「平均」は、加重和、メディアン関数、その他のいずれかとすることができる。
【0121】
上記空間的適応化プロセスは、次式によって置き換えることができる。
【0123】
ここで、Mは1または2以上とすることができ、{i,j}’
1…
Mは、先行するサンプルアレイ内にある。{i,j}’
1…
Mの少なくとも1つは、p(n)に対して同じ位置に配置されるようにすることができる。{i,j}
1…
Nの可能な選択に関して、上記記載が参照される。関数「平均」は加重和、メディアン関数、その他のいずれかとすることができる。{i,j}’
1…
Mの少なくとも1つは、p(n)に対して同じ位置に配置されるようにすることができる。
【0124】
配列された情報の使用の特定の拡張として、1つまたはさらに多くの参照フレームから、他ブロックから取得された日付を利用するアプローチを適用することができる。
【0125】
早期に言及された技術は、現在のフレームにおいてまたは参照フレームにおいて、直接の近傍から取得された情報のみを用いる。しかしながら、それは、このケースにおいて得られた確率が最高のものであることを意味しない。隣接するLCUは、画像区分化(残差)によって、必ずしも最良の確率モデルを有しない。最良の結果は、予測がなされるブロックの助けを借りて達成することができると想定される。そして、従って、この適当なブロックを、現在のLCUに対するレファレンスとして用いることができる。
【0126】
このように、上記の適応化の実施例において、{i,j}
1…
Nおよび/または{i,j}’
1…
Mは、p(n)に対する予測器の提供者として役立つCUによって選択することができる。
【0127】
提案された時間的確率適応化/初期化スキームは、エントロピースライスなしでまたはフレーム毎に単一のエントロピースライスで用いることもできる。
【0128】
後者の態様によれば、確率適応化速度における利益は、時間的に隣接する/関連するフレームの確率適応化を結合することによって達成される。そこで記載されることは、
図6のようなデコーダであり、デコーダは、エントロピー符号化されたデータストリームからサンプルアレイのシーケンスを復元するように構成され、また、サンプルアレイのシーケンスの現在のサンプルアレイを復元するために、エントロピー符号化されたデータストリームの現在のフレームをエントロピー復号化し、確率推定を用いてエントロピー符号化パスに沿ってエントロピー復号化を実行し、現在のフレームの前に復号化されたパートを用いて、エントロピー符号化パスに沿って確率推定を適応させるように構成され、エントロピー復号化ステージは、エントロピー符号化されたデータストリームの前に復号化されたフレームの復号化において用いられた確率推定に基づいて、現在のフレームに対する確率推定を初期化または決定するように構成される。
【0129】
すなわち、例えば、現在のフレームに対する確率推定は、エントロピー符号化されたデータストリームの前に復号化されたフレームの復号化を終了した後に結果として生じる確率推定に基づいて初期化される。バッファーの要求条件は、単に確率推定の終わりの状態が現在フレームの復号化の始まりまでバッファリングされなければならないだけであるので、それ故に低い。もちろん、この態様は、各部分12の最初のパートに対して、以前のエントロピースライス(利用可能であれば)において空間的に隣接するパートに対して用いられた確率推定だけでなく、例えば、重み付けされた方法で、前のフレームにおいて対応する(例えば、空間的に)エントロピースライスの確率推定の終わりの状態が用いられるという点において、
図1〜9の態様と結合可能である。並列のウェーブフロント処理はフレーム境界を超えることもできるので、すなわちフレームのスライスの符号化の間、先行するフレームのスライスの符号化プロセスが既に終了していない可能性があるので、参照フレームにおいて対応するスライスのこのようなデータは、参照されたスライスにおいて、終わりの位置だけでなく、以前の位置からも導き出すことができる。それ故に、シグナリングは、参照位置を示すために用いることができる、またはスキームによって示すことができる。
【0130】
更に、例えば、前に復号化されたフレームのパート/ブロックの符号化に対して用いられた確率推定は、終わりの状態だけでなく、全てバッファリングされ、デコーダは、上述のように、予め定められたエントロピースライスのエントロピー符号化において(空間的結合の確率導出の上記記載を参照して)、予め定められたエントロピースライスの前に復号化されたパート(例えば、p1を含む)を用いて適応された予め定められたエントロピースライスのそれぞれの確率推定と、前に復号化されたフレームのエントロピースライスの空間的に対応するパートのエントロピー復号化において用いられた確率推定とに基づいて、オプションとして、空間的に隣接する、エントロピースライス順序において先行するエントロピースライス(例えば、Xを含むスライス)のエントロピー復号化において、空間的に隣接する先行するエントロピースライスの隣接するパート(p4のような)において用いられた確率推定を付加的に用いることによって、予め定められたエントロピースライスの現在のパート(X)のエントロピー復号化を実行する。また、上述されたように、パートの中の空間的な対応と、前に復号化されたフレームの中で現在のフレームに対する確率採用に対して適当なものの識別は、現在のパート/ブロックの動きインデックス、動きベクトル、その他のような動き情報の助けによって定めることができる。
【0131】
これまで、ウェーブフロント処理の間に延在するウェーブフロントは、サンプルアレイの順に実行される符号化/復号化によって、主として1つのサンプルアレイ10によって斜めに延在するように記載されていた。しかしながら、これは必須ではない。ここで、
図19が参照される。
図19は、サンプルアレイのシーケンスからの部分を示し、そのシーケンスのサンプルアレイは、それらの中で定められ、提示の時間順序と一致してもよくまたは一致しなくてもよいサンプルアレイ符号化順序380において配置されるように表される。
図19は、サンプルアレイ10の、各々の4つのエントロピースライスへの細分化を例示的に示す。既に符号化/復号化されたエントロピースライスはハッチングされて示される。4つの符号化/復号化スレッド(符号化/復号化ステージ)382は、インデックスnを有するサンプルアレイの4つのエントロピースライス12に関して現在動作している。しかしながら、
図19は、左にあるスレッド番号5を示し、
図19において番号5を有するこの更なるスレッド382が、現在符号化/復号化されるフレームnにおいてそれぞれの参照部分が既に利用可能である、すなわちスレッド1〜4のいずれかによって既に処理されたことが保証される部分で、ラインにおいて次のサンプルアレイ、すなわちn+1を符号化/復号化するように動作することが可能である。これらの部分は、例えば、
図1において64で示される予測において参照される。
【0132】
図19は、一方では、サンプルアレイnの既に処理された、すなわち既に符号化/復号化された部分、すなわちサンプルアレイ内のハッチングされた部分と、他方では、サンプルアレイnのまだ処理されていない部分、すなわちサンプルアレイのハッチングされてない部分の間の境界に対して同じ場所に配置されるサンプルアレイn+1によって延在するラインを、破線384によって例示的に示す。
図19は、また、両矢印によって、列方向および行方向において測定された動きベクトルの最大可能長さ、すなわちそれぞれy
maxおよびx
maxを示す。したがって、
図19は、また、鎖線386によって、ライン384の変位したバージョン、言い換えれば距離が列方向においてy
max、行方向においてx
max以下にならないようにライン384から最大可能距離だけ離れて配置されたライン386を示す。図に示すように、サンプルアレイnにおけるいずれの参照部分も見つかることが保証されるサンプルアレイn+1における符号化ユニット50が、サンプルアレイnの既に処理された部分内に完全に含まれるようにある、言い換えればサンプルアレイn+1の半分に設定されるそれらがライン386に対して上流側にある。したがって、スレッド5は、
図19に示すように、これらの符号化ユニットを復号化/符号化するように既に動作することが可能である。図に示すように、6番目のスレッドでさえも、サンプルアレイn+1のエントロピースライス順序16において2番目のエントロピースライスに関して動作することができる。これにより、ウェーブフロントは、サンプルアレイのシーケンス30にわたる空間的−時間的スペースによって、空間的だけでなく時間的にも延在する。
【0133】
ちょうど言及されたウェーブフロント態様は、エントロピースライス境界を横切って上記概説された確率推定結合と組合せても働くことに留意されたい。
【0134】
更に、上記概説されたチャンク態様に関して、エントロピースライスの、より小さいピース、すなわちチャンクへの細分化は、エントロピー符号化ドメインにおいて、すなわちエントロピー圧縮ドメインにおいて、実行されることに限定されない点にも留意すべきである。上記議論について考える:上記記載されたエントロピースライスは、それの前に符号化/復号化されたエントロピースライスまたは前に符号化/復号化されたフレームからの確率推定の導出、すなわちそのような前のエントロピースライスの確率推定に基づく確率推定の初期化および/または適応化によるウェーブフロント処理の可能性にもかかわらず、符号化効率の損失を低減する利益を有する。これらのエントロピースライスの各々は、ウェーブフロント処理の場合には1つのスレッドによってエントロピー符号化/復号化されると想定される。すなわち、エントロピースライスを細分化するとき、チャンクを並列に符号化可能/復号化可能にレンダリングする必要はない。むしろ、エンコーダは、エントロピー符号化をファイナライズする前に、単にそのエントロピースライスのビットストリームのサブパートを出力する機会を提供するだけであり、デコーダは、同じエントロピースライスの残りのチャンクの受信の前に、これらのサブパート、すなわちチャンクに関して動作する機会を提供する。その上、インターリービングは、受信側において可能になる。しかしながら、後の非インターリーブ化を可能とするために、エントロピー符号化ドメインにおいて細分化を実行する必要はない。特に、断続的に確率インターバルの内部状態、すなわちエントロピー符号化/復号化コアのそれぞれ確率インターバル幅値およびオフセット値を単にリセットすることにより、上記提案されたエントロピースライスのより小さいチャンクへの細分化を、重度の符号化効率の損失なしに実行することが可能である。しかしながら、確率推定はリセットされない。むしろ、それらは、それぞれエントロピースライスの始めから終わりまで連続的に更新/適応される。この方策によって、圧縮ビットストリームドメインよりもむしろシンタックス要素ドメインにおいて実行される細分化によって、エントロピースライスを個々のチャンクに細分化することが可能である。細分化は、チャンクインターフェイスのデコーダへのシグナリングを容易にするために、下に概説された空間的細分化に従うことができる。チャンクの各々は、例えば、そのエントロピースライスに対するインデックスとともにそれぞれのエントロピースライスの開始位置に対して、または上左側のコーナーのようなサンプルアレイ10の突出した位置に対して、符号化順序14に関して測定された、サンプルアレイにおけるその開始位置を表す自身のチャンクヘッダによって提供することができる。
【0135】
後者の実施形態によるエントロピースライスのチャンクへの細分化をより明確に記載するために、
図20が参照される。
図20は、単に説明の目的に対して、4つのエントロピースライスに細分化されるサンプルアレイ10を示す。サンプルアレイ10の現在符号化される部分は、ハッチングされて示される。3つのスレッドは、サンプルアレイ10のエントロピー符号化に関して現在動作しており、応急手当ベースでエントロピースライスのチャンクを出力する:例えば、サンプルアレイ10の部分12に対応する、エントロピースライス順序16において最初のエントロピースライスを見て頂きたい。部分12のサブパート12aを符号化した後に、エンコーダは、そこからチャンク390を形成する、すなわちエントロピー符号化コア80が、チャンク390を形成するために算術符号化するケースにおいて、今までにサブ部分12aから作り出された算数ビットストリームをファイナライズするためにいくつかの終了手順を実行する。符号化手順は、次に、新しいエントロピービットストリームを開始しながら、符号化順序14においてエントロピースライス12の引き続くサブ部分12bに関して再開される。これは、例えば、エントロピー符号化コア80の確率インターバル幅値および確率インターバルオフセット値のような、内部状態がリセットされることを意味する。しかしながら、確率推定はリセットされない。それらは不変のままにされる。これは、
図20において矢印392によって図示される。
図20において、エントロピースライスまたは部分12が2つ以上のサブ部分に細分化され、したがって、2番目のチャンク1bでさえ、符号化順序14に沿って部分12の終わりに到達する前に終了するいくつかのエントロピーに従い、そこにおいて、ラインにおける次のチャンクがその他によって開始されることが例示的に示される。
【0136】
同時に、他のスレッドは、エントロピースライス順序16において2番目のエントロピースライスまたは部分12に関して動作する。この2番目のエントロピースライス/部分12の最初のサブ部分を終了すると、チャンク2aが出力され、そこにおいて2番目のエントロピースライスの残りのエントロピー符号化が開始されるが、しかしながら、チャンク2aの終わりにおいて確率推定を有効なものとして維持する。
【0137】
図20は、時間軸394によって、チャンク390は、それらがファイナライズされるとすぐに出力されることを図示しようとしている。これは、
図16において表されたものに類似するインターリービングに導く。各チャンクは、パケットにパケット化され、いずれかの順序においていくつかのトランスポート層によって復号化側に移送することができる。トランスポート層は、矢印396を用いて図示されている。
【0138】
デコーダは、チャンクを、そのサブ部分12a,12b、その他に対して再アサインしなければならない。このために、各チャンク390は、その関連するサブ部分12aまたは12b、すなわちそれを記述するシンタックス要素がそれぞれのチャンクにおいてエントロピー符号化されるサブ部分、の始めの位置を表すヘッダセクション398を有することができる。この情報を用いることによって、デコーダは、各チャンク390を、そのエントロピースライスと、そしてそのエントロピースライスの部分12内のそのサブ部分と関連づけることが可能である。
【0139】
説明の便宜上、
図20は、エントロピースライス12の連続するサブ部分12aと12bの間の接続が、連続する符号化ユニット50の間の境界と一致する必要はないという可能性をも例示的に示す。むしろ、当該接続は、上述された符号化ユニットの例示的なマルチツリー細分化のより深いレベルにおいて定めることができる。ヘッダ398に含まれる位置情報は、それぞれの符号化ユニットのそれぞれのサブブロック、すなわちそれぞれのサブブロックに関して記述されるシンタックス要素のシーケンス内の位置、を識別するために、十分に正確に現在のチャンク390に関連するサブ部分の始めを示すことができる。
【0140】
上記議論から明らかになったように、符号化効率の損失は、エントロピースライスのチャンクへの細分化からほとんど生じなかった。単にエントロピー終了プロセスおよびパケット化は、いくらかの符号化効率の損失を含む可能性があるが、他方では低遅延の利益は莫大である。
【0141】
また、ちょうど言及された空間細分化チャンク態様は、空間的および時間的に、エントロピースライス境界を横切って、上記概説された確率推定結合と組合せても働くことに留意されたい。
【0142】
図6のデコーダのようなデコーダは、以下のようにチャンク伝送を取り消すことができる。特に、デコーダは、どのエントロピースライスに現在のチャンクが帰属するかについてチェックすることができる。このチェックは、前述の位置情報に基づいてなすことができる。次に、現在のチャンクが、エントロピー符号化パス14に沿って、対応するエントロピースライスの部分の第1のサブ部分に対応するかどうかをチェックすることができる。その場合、デコーダは、現在のチャンクをそれぞれの確率推定の適応のもとでエントロピー復号化し、予め定められたエントロピースライスの部分の2番目のサブ部分に対応する他のチャンクをエントロピー符号化パスに沿ってエントロピー復号化するとき、現在のチャンクのエントロピー復号化の終わりにおいて現れるそれぞれの確率推定の状態を考慮することができる。「考慮する」は、チャンク1bの始めにおける確率推定を、チャンクの1aのサブ部分12aの終わりにおいて、チャンク1aの始めにおける確率推定の状態から開始する確率適応によって現れる確率推定に等しく、またはそれと上述された他のエントロピースライスからのエントロピー確率推定との組合せに等しくセットすることを含むことができる。最初のチャンク12aの始めにおける確率初期化が関係している限り、これも対応するエントロピースライスの始めを形成するので、上記議論が参照される。言い換えれば、現在のスライスが順序14において2番目のまたは引き続くチャンクである場合、デコーダは、エントロピー符号化パス14に沿って、現在のチャンクに対応するサブ部分に先行する予め定められたエントロピースライスの部分のサブ部分に対応するチャンクのエントロピー復号化の終わりにおいて現れる確率推定によって決まる確率推定を用いて、現在のチャンクをエントロピー復号化することができる。
【0143】
上記記載は、並列の符号化および復号化に有用であり、ならびに新進のHEVCビデオ符号化規格において既に存在するプロセスの最適化に対して役立つことができる、異なる方法を明らかにする。エントロピースライスの簡単な概要が提示されてきた。どのようにそれらを形成することができ、どの利益がスライシングによって達成することができ、どんなペナルティがそれらの技術から生ずることができるかが示されてきた。LCU間のローカルの従属性と、更には異なるフレームのLCU間の時間的な従属性をより良く利用することによって、フレームにおいてLCU(最大符号化ユニット)に沿った確率の学習プロセスを改善すると想定される多くの方法が提案されてきた。異なる組合せが、符号化および復号化の並列化によるおよびよらない両方のコンセプトに対して改善を提供することが主張される。
【0144】
例えば、提案されたアプローチのベストミックスによる、高効率性におけるパフォーマンスの改善は、エントロピースライスを使用しないHM3.0と比較して、イントラにおいて−0.4%、低遅延において−0.78%およびランダムアクセスにおいて−0.63%、または、通常の再初期化によるエントロピースライスアプローチと比較して、イントラにおいて−0.7%、低遅延において−1.95%およびランダムアクセスにおいて−1.5%である。
【0145】
特に、とりわけ、以下の技術が上記提示されてきた。
・LCUのローカルだけでなく、時間的な従属性も用い、各LCUを符号化する前にCABAC確率の適応化を最適化する(
図1〜9、17および18を参照)。
・復号化においてより多くの柔軟性を達成し、またフレームにおける特定の領域がお互いから独立になるようにエントロピースライスを利用することができる。
・並列化、例えばウェーブフロント処理に対して、スライス/エントロピースライスの開始位置の最小限のシグナリングを可能にする(
図15を参照)。
・エントロピースライス/スライスのインターリーブ化された移送によって、並列化されたエンコーダ−送信機−受信機−デコーダ環境における低遅延の移送を可能にする(
図16を参照)。
【0146】
上述された全ての方法は集積され、HM3.0においてテストされてきた。参照ポイントがいかなるエントロピースライスの実施もないHM3.0である取得結果は、表1および2において提示されている(ここで、2LCUは上側ラインの2番目のLCUの使用、2LCU+Prob.Adapは確率適応化の方法と併合された2LCU、Temporalは各LCUに対する確率適応化による時間的従属性(参照フレームの最終状態)の使用である)。
【0149】
しかしながら、提案されたアプローチが、LCUの各ラインの始めにおける確率の再初期化によって、ウェーブフロント処理にどのように影響するかを知ることは興味深い。これらの結果は、表3および4に図示されている(ここで、orig_neiInitは、エントロピースライスを用いないHM3.0と、初期化によるエントロピースライスの使用との比較である)。
【0152】
上記の結果は、フレーム内およびフレーム間の従属性のかなり多い使用と既に取得された情報の合理的な適用が平均損失を防止することを示している。
【0153】
HEVCビデオの符号化および復号化に対するウェーブフロント処理のアプローチは、ウェーブフロント並列処理のコンセプトによって、隣接するLCU間の従属性ならびに時間的なフレームの従属性を用いる可能性を併合する。このようにして、損失を低減することができ、パフォーマンスの進歩を達成することができる。
【0154】
確率適応化スピードにおける利益は、空間的に隣接するエントロピースライスの確率適応化の演算によって達成されてきた。
【0155】
既に上述されたように、すべての上記の態様はお互いに結合することができ、従って、特定の態様に関する特定の実施の可能性の言及は、もちろん他の態様に対しても適用される。
【0156】
いくつかの態様が装置の文脈において記載されてきたが、これらの態様は対応する方法の記述をも表すことは明らかであり、ブロックまたはデバイスは方法ステップまたは方法ステップの機能に対応する。同様に、方法ステップの文脈において記載された態様は、対応する装置の対応するブロック、アイテムまたは機能の記述をも表す。いくつかのまたはすべての方法ステップは、例えば、マイクロプロセッサ、プログラム可能なコンピュータまたは電子回路のようなハードウェア装置によって(または用いて)実行することができる。いくつかの実施形態において、いくつかの1つ以上の最も重要な方法ステップは、このような装置によって実行することができる。
【0157】
上述された本発明の符号化された信号は、デジタル記憶媒体に記憶することができ、または無線の伝送媒体のような伝送媒体またはインターネットのような有線の伝送媒体を伝送することができる。
【0158】
特定の実現要求に依存して、本発明の実施形態は、ハードウェアにおいてまたはソフトウェアにおいて実施することができる。実施は、その上に記憶された電子的に読取可能な制御信号を有し、それぞれの方法が実行されるようにプログラム可能なコンピュータシステムと協働する(または協働することができる)、デジタル記憶媒体、例えばフロッピー(登録商標)ディスク、DVD、CD、ROM、PROM、EPROM、EEPROMまたはフラッシュメモリを用いて実行することができる。それ故に、デジタル記憶媒体は、コンピュータ読取可能とすることができる。
【0159】
本発明に係るいくつかの実施形態は、本願明細書に記載された方法の1つが実行されるように、プログラム可能なコンピュータシステムと協働することができる、電子的に読取可能な制御信号を有するデータキャリアを備える。
【0160】
一般に、本発明の実施形態は、コンピュータプログラム製品がコンピュータ上で動作するとき、本発明の方法の1つを実行するように動作可能であるプログラムコードによるコンピュータプログラム製品として実施することができる。プログラムコードは、例えば機械読取可能なキャリアに記憶することができる。
【0161】
他の実施形態は、機械読取可能なキャリアに記憶された、本願明細書に記載された方法の1つを実行するコンピュータプログラムを備える。
【0162】
言い換えれば、本発明の方法の一実施形態は、それ故に、コンピュータプログラムがコンピュータ上で動作するとき、本願明細書に記載された方法の1つを実行するプログラムコードを有するコンピュータプログラムである。
【0163】
本発明の方法の更なる実施形態は、それ故に、その上に記録され、本願明細書に記載された方法の1つを実行するコンピュータプログラムを備えるデータキャリア(またはデジタル記憶媒体またはコンピュータ読取可能媒体)である。データキャリア、デジタル記憶媒体または記録媒体は、通常は有形および/または非過渡的である。
【0164】
本発明の方法の更なる実施形態は、それ故に、本願明細書に記載された方法の1つを実行するコンピュータプログラムを表すデータストリームまたは信号のシーケンスである。データストリームまたは信号のシーケンスは、例えば、データ通信接続、例えばインターネットによって転送されるように構成することができる。
【0165】
更なる実施形態は、本願明細書に記載された方法の1つを実行するように構成されたまたは適合された処理手段、例えばコンピュータまたはプログラマブルロジックデバイスを備える。
【0166】
更なる実施形態は、本願明細書に記載された方法の1つを実行するコンピュータプログラムがインストールされたコンピュータを備える。
【0167】
本発明に係る更なる実施形態は、本願明細書に記載された方法の1つを実行するコンピュータプログラムを、受信者に転送(例えば、電子的または光学的に)するように構成された装置またはシステムを備える。受信者は、例えば、コンピュータ、モバイルデバイス、メモリデバイスなどとすることができる。装置またはシステムは、例えば、コンピュータプログラムを受信者へ転送するファイルサーバを備えることができる。
【0168】
いくつかの実施形態において、本願明細書に記載された方法のいくつかまたは全ての機能を実行するために、プログラマブルロジックデバイス(例えばフィールドプログラマブルゲートアレイ)を用いることができる。いくつかの実施形態において、フィールドプログラマブルゲートアレイは、本願明細書に記載された方法の1つを実行するために、マイクロプロセッサと協働することができる。一般に、方法は、好ましくはいかなるハードウェア装置によっても実行される。
【0169】
上記記載された実施形態は、単に本発明の原理に対して説明したものである。本願明細書に記載された構成および詳細の修正および変更は、当業者にとって明らかであると理解される。それ故に、本発明は、間近に迫った特許請求の範囲のスコープのみによって制限され、本願明細書の実施形態の記載および説明の方法によって表された特定の詳細によって制限されないことが意図される。