(57)【特許請求の範囲】
【請求項１】
少なくとも一つの符号化された画像を表すストリームを復号する方法であって、
前記少なくとも一つの符号化された画像を表すストリームを受け取り、
前記ストリームから所定の複数のブロックのグループを特定し、
所与のブロックのグループ内の第１のブロックを処理し、
前記第１のブロックの処理は、
前記第１のブロックが前記所与のブロックのグループ内のブロックの順において最初であることを判定し、
前記第１のブロックが前記所与のブロックのグループ内のブロックの順において最初であるとの判定に応答して、確率データの第１のセットに基づいて前記第１のブロックをエントロピー復号し、前記確率データの第１のセットは、前記第１のブロックのすぐ右上にあり、且つブロックの前記所定の複数のブロックのグループにおける前記所与のブロックのグループとは異なる他のブロックのグループに属するブロックに関連しているシンボルの発生確率の第１のセットを含み、
前記第１のブロックを逆量子化し、
前記第１のブロックを逆変換すること、
を含み、
前記所与のブロックのグループ内の第２のブロックを処理し、
前記第２のブロックの処理は、
前記第２のブロックが前記所与のブロックのグループ内のブロックの順において最初でないことを判定し、
前記第２のブロックが前記所与のブロックのグループ内のブロックの順において最初でないとの判定に応答して、確率データの第２のセットに基づいて前記第２のブロックをエントロピー復号し、前記確率データの第２のセットは、前記所定の複数のブロックのグループにおける前記所与のブロックのグループに属する前記第２のブロックのすぐ左の復号されたブロックに関連しているシンボルの発生確率の第２のセットを含み、且つ、前記シンボルの発生確率の第２のセットは、前記所与のブロックのグループに属さないブロックには関連しておらず、
前記第２のブロックを逆量子化し、
前記第２のブロックを逆変換すること、
を含む、方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、画像処理の分野に関し、より詳細には、デジタル画像およびデジタル画像のシーケンスの符号化および復号に関する。
【０００２】
したがって、本発明は、特に、現在のビデオコーダ(MPEG、H.264など)またはこれから登場するビデオコーダ(ITU-T/VCEG (H.265)もしくはISO/MPEG (HVC))に実装されるビデオ符号化に適用され得る。
【背景技術】
【０００３】
現在のビデオコーダ(MPEG、H.264など)は、ビデオシーケンスのブロック式の表現を使用する。画像は、マクロブロックに分割され、それぞれのマクロブロック自体がブロックに分割され、各ブロックまたはマクロブロックが、イントラ画像予測(intra-image prediction)またはインター画像予測(inter-image prediction)によって符号化される。したがって、特定のイメージが、空間的予測(イントラ予測)によって符号化される一方、その他の画像は、当業者によって知られている動き補償の助けを借りて、1つまたは複数の符号化/復号の参照画像に対する時間的予測(インター予測)によって符号化される。さらに、各ブロックに関して、予測によって減少した元のブロックに対応する残差ブロックが符号化され得る。このブロックの係数は、任意の変換の後、量子化され、次に、エントロピーコーダによって符号化される。
【０００４】
イントラ予測およびインター予測には、前に符号化および復号された特定のブロックが、現在のブロックを予測するためにデコーダまたはコーダのどちらかで使用されるように利用可能であることが必要である。そのような予測符号化の概略的な例が図１Ａに示されており、この図においては、画像INがブロックに分割され、この画像の現在のブロックMBiが、斜線矢印によって指定されるような、前に符号化および復号された所定の数3つのブロックMBr1、MBr2、およびMBr3に対して予測符号化にかけられている。特に、上述の3つのブロックは、現在のブロックMBiのすぐ左に位置するブロックMBr1、ならびに現在のブロックMBiの真上および右上にそれぞれ位置する2つのブロックMBr2およびMBrを含む。
【０００５】
ここで、特に対象とするのは、エントロピーコーダである。エントロピーコーダは、情報をその到着順に符号化する。通常、画像の左上のブロックから始まる、図１Ａにおいて参照符号PRSによって示されるような「ラスタスキャン」型のブロックの行ごとの横断が実行される。各ブロックに関して、ブロックを表すために必要な情報のさまざまな項目(ブロックの種類、予測のモード、残差の係数など)が、順番にエントロピーコーダに送られる。
【０００６】
AVC圧縮規格(ISO-MPEG4 part 10およびITU-T H.264としても知られる)に導入された「CABAC」(「コンテキスト適応2値算術コーダ(Context Adaptive Binary Arithmetic Coder)」)と呼ばれる複雑過ぎない有効な算術コーダが既に知られている。
【０００７】
エントロピーコーダは、以下のさまざまな概念を実装する:
-  算術符号化:文献J. RissanenおよびG. G. Langdon Jr、「Universal modeling and coding」、IEEE Trans. Inform. Theory、vol. IT-27、12〜23ページ、1981年1月、に初めに記載されたコーダは、シンボルを符号化するために、このシンボルが現れる確率を使用する。
-  コンテキスト(context)への適合:これは、符号化されるべきシンボルが現れる確率を適合させることをともなう。一方で、オンザフライの学習が実行される。他方で、前に符号化された情報の状態に応じて、特定のコンテキストが符号化のために使用される。そこでは、各コンテキストに、シンボルが現れる固有の確率が対応する。例えば、コンテキストは、所与の構成または近傍の状態(例えば、近傍から選択される「イントラ」モード("intra" mode)の数など)に応じて符号化されるシンボルの種類(残差の係数の表現、符号化モードのシグナリングなど)に対応する。
-  2値化:符号化されるべきシンボルは、一連のビットの形式に変換される。その後、これらのさまざまなビットは、2値エントロピーコーダに連続的に送られる。
【０００８】
したがって、このエントロピーコーダは、使用される各コンテキストに関して、考慮されるそのコンテキストに関して前に符号化されたシンボルに対してオンザフライで確率を学習するためのシステムを実装する。この学習は、これらのシンボルの符号化の順序に基づく。概して、画像は、上で説明したように、「ラスタスキャン」型の順序に従って横断される。
【０００９】
0または1に等しい可能性がある所与のシンボルbの符号化中に、このシンボルが現れる確率Piの学習が、現在のブロックMBiに対して以下のようにして更新される。
【００１０】
【数１】
0006310523.tif 000002
【００１１】
ここで、αは、所定の値、例えば0.95であり、Pi-1は、このシンボルが前回現れていた間に計算されたシンボルが現れる確率である。
【００１２】
そのようなエントロピー符号化の概略的な例が図１Ａに示されており、この図においては、画像INの現在のブロックMBiがエントロピー符号化にかけられている。ブロックMBiのエントロピー符号化が始まるとき、使用されるシンボルが現れる確率は、「ラスタスキャン」型のブロックの上述の行ごとの横断に従って現在のブロックMBiの直前にある前に符号化および復号されたブロックの符号化の後に得られた確率である。ブロックごとの依存性に基づくそのような学習が、図１Ａにおいて、図を明瞭にするために特定のブロックについてのみ細線矢印によって示されている。
【００１３】
そのような種類のエントロピー符号化の弱点は、ブロックの「ラスタスキャン」の横断を考慮すると、行の始めにあるシンボルの符号化中に使用される確率が、主として、前の行の終わりにあるシンボルに関して観測された確率に対応することにある。このとき、シンボルの確率のあり得る空間的な変動(例えば、動き情報の項目に関連するシンボルに関して、画像の右側部分にある動きは、左側部分で観測される動きとは異なる可能性があり、したがって、それらに起因する局所的な確率に関しても同様である)のために、確率の局所的な妥当性が欠けていることが見受けられる可能性があり、符号化中に有効性が失われる危険性がある。
【００１４】
インターネットアドレスhttp://wftp3.itu.int/av-arch/jctvcsite/2010_04_A Dresden/JCTVC-A114-AnnexA.docで利用可能な文献「Annex A: CDCM Video Codec Decoder Specification」(2011年2月8日)は、上述の弱点を軽減する符号化方法を記載している。上述の文献に記載の符号化方法は、図１Ｂに示されるように、以下のステップを含む。
-  画像INを複数のブロックに分割するステップ。
-  斜線矢印によって指定されるような前に符号化および復号された所定の数3つのブロックMBr1、MBr2、およびMBr3に対してこの画像の現在のブロックMBiを予測符号化するステップ。特に、上述の3つのブロックは、現在のブロックMBiのすぐ左に位置するブロックMBr1、ならびに現在のブロックMBiの真上および右上にそれぞれ位置する2つのブロックMBr2およびMBr3を含む。
-  画像INのブロックをエントロピー符号化するステップ。このステップによれば、各ブロックが、現在のブロックの真上に位置する符号化および復号されたブロックと、現在のブロックのすぐ左に位置する符号化および復号されたブロックとが利用可能であるとき、これらのブロックに関してそれぞれ計算されたシンボルが現れる確率を使用する。シンボルが現れる確率のこの使用は、図１Ｂにおいて、後半を明瞭にするために細線矢印によって部分的に示されている。
【００１５】
そのようなエントロピー符号化の利点は、現在のブロックのすぐ近くの環境から得られた確率を利用し、それによって、より高い符号化性能を実現することを可能にすることである。さらに、使用される符号化技術は、ブロックの所定の数のペアの近傍のサブセットを並列に符号化することを可能にする。図１Ｂに示される例においては、3つのサブセットSE1、SE2、およびSE3が並列に符号化され、この例において、それぞれのサブセットは、破線によって示されるブロックの行からなる。もちろん、そのような符号化は、現在のブロックの上および右上にそれぞれ位置するブロックが利用可能であることを必要とする。
【００１６】
この並列的な符号化技術の弱点は、現在のブロックの真上に位置するブロックに関して計算されたシンボルが現れる確率を利用できるようにするために、ブロックの行に関連するある量の確率を記憶することが必要であることである。例えば、図１Ｂにおいてブロックの第2の行SE2について考える場合、この行の第1のブロックは、前の第1の行SE1の第1のブロックに関して計算されたシンボルが現れる確率を使用することによってエントロピー符号化にかけられる。第2の行の第1のブロックの符号化が完了すると、現れる確率の値V1の状態が、バッファメモリMTに記憶される。その後、第2の行SE2の第2のブロックが、第1の行SE1の第2のブロックおよび第2の行SE2の第1のブロックに関して同時にいっぺんに計算されたシンボルが現れる確率を使用することによってエントロピー符号化にかけられる。第2の行の第2のブロックの符号化が完了すると、現れる確率の値V2の状態が、バッファメモリMTに記憶される。この手順が、第2の行SE2の最後のブロックまで行われる。確率の量が非常に多い(構文要素(syntax element)の数と関連するコンテキストの数との組合せと同じ数の確率が存在する)ので、行全体にわたってこれらの確率を記憶することは、メモリリソースの点で高価である。
【先行技術文献】
【特許文献】
【００１７】
【特許文献１】特開２０１４−４４７０７号公報
【発明の概要】
【発明が解決しようとする課題】
【００１８】
本発明の目的の1つは、上述の従来技術の弱点を改善することである。
【課題を解決するための手段】
【００１９】
この目的のために、本発明の主題は、少なくとも1つの画像を符号化する方法に関し、この方法は、以下のステップを含む:
-  画像を複数のブロックに分割するステップ
-  ブロックをブロックの所定の数のサブセットにグループ化するステップ
-  ブロックの前記サブセットのそれぞれを並列に符号化するステップであって、考慮されるサブセットのブロックが、所定の連続する横断順序に従って符号化され、前記符号化するステップが、考慮されるサブセットの現在のブロックに関して、
・  前に符号化および復号された少なくとも1つのブロックに対して現在のブロックを予測符号化するサブステップ、
・  シンボルが現れる少なくとも1つの確率を学習することによって現在のブロックをエントロピー符号化するサブステップ
を含む、符号化するステップ
【００２０】
本発明による方法は、
-  現在のブロックが、考慮されるサブセットの符号化されるべき第1のブロックである場合、シンボルが現れる確率が、少なくとも1つのその他のサブセットの符号化および復号された所定のブロックに関して計算されたシンボルが現れる確率であり、
-  現在のブロックが、第1のブロック以外の、考慮されるサブセットのブロックである場合、シンボルが現れる確率が、同じサブセットに属する少なくとも1つの符号化および復号されたブロックに関して計算されたシンボルが現れる確率である
ことが特に注目すべき点である。
【００２１】
そのような構成は、ブロックのサブセットの第1のブロック以外の現在のブロックのエントロピー符号化が、もはや必ずしも、別のサブセットの、現在のブロックの上に位置する前に符号化および復号されたブロックに関して計算されたシンボルが現れる確率を使用することを必要としないので、コーダのバッファメモリに記憶するシンボルが現れる確率の量をかなり減らすことを可能にする。
【００２２】
さらに、そのような構成は、現在のブロックのエントロピー符号化が、現在のブロックが属するサブセットの別の前に符号化および復号されたブロックに関して計算されたシンボルが現れる確率を使用し、その結果、確率を更新することによって既に学習が行われており、したがって、後者がビデオ信号の統計にしたがうので、既存の圧縮性能を維持することを可能にする。
【００２３】
ブロックの考慮されるサブセットの第1の現在のブロックをエントロピー符号化する間に前記別のサブセットの第1のブロックに関して計算されたシンボルが現れる確率を使用することの主な利点は、前記別のサブセットのその他の連続するブロックによって学習されたシンボルが現れる確率を考慮せずにシンボルが現れる前記確率の更新だけをコーダのバッファメモリに記憶することによってコーダのバッファメモリを節約するという利点である。
【００２４】
ブロックの考慮されるサブセットの第1の現在のブロックをエントロピー符号化する間に、第1のブロック以外の、前記別のサブセットのブロック、例えば第2のブロックに関して計算されたシンボルが現れる確率を使用することの主な利点は、シンボルが現れる確率のより正確な、したがってより優れた学習が得られ、それによって、より高いビデオ圧縮性能をもたらすという利点である。
【００２５】
特定の実施形態においては、サブセットの第1のブロック以外の、符号化されるべき現在のブロックと同じサブセットに属する符号化および復号されたブロックは、復号されるべき現在のブロックの最近隣のブロックである。
【００２６】
したがって、そのような構成は、この特定の場合、第1の現在のブロックの上に位置し、別のサブセットに属するブロックに関して計算されたシンボルが現れる確率だけが考慮されるので、考慮されるサブセットの第1のブロックをエントロピー符号化する間に学習されたシンボルが現れる確率だけを記憶することを可能にする。これは、コーダのメモリリソースのサイズの削減の最適化をもたらす。
【００２７】
別の特定の実施形態においては、考慮されるサブセットのブロックを予測符号化するサブステップが、考慮される前記サブセット以外のサブセットの、前に符号化および復号された所定の数のブロックに対して実行されるように意図されている場合、考慮される前記サブセットのブロックを並列に符号化するステップが、並列に符号化するステップが実行される順序でその直前にあるブロックのサブセットに対して前記所定の数のブロックの分だけずらして実行される。
【００２８】
そのような構成は、符号化されるべきブロックの現在のサブセットに関して、並列に符号化するステップが実行される順序で現在のサブセットの前にあるブロックのサブセットのブロックの処理の進行の同期を実現することを可能にし、それによって、現在のブロックの符号化のために使用される前のサブセットの1つのブロックまたは複数のブロックが利用可能であることを保証することを可能にする。このように、従来技術の並列的なコーダで実施されているような、前のサブセットのこのまたはこれらのブロックが利用できるかどうかを検証するステップが、有利なことに省略可能であり、それによって、本発明によるコーダにおいてブロックを処理するために必要とされる処理時間を速くすることを可能にする。
【００２９】
相関的に、さらに、本発明は、少なくとも1つの画像を符号化するためのデバイスに関し、このデバイスは、以下を備える:
-  画像を複数のブロックに分割するための手段
-  ブロックをブロックの所定の数のサブセットにグループ化するための手段
-  ブロックのサブセットのそれぞれを並列に符号化する手段であって、考慮されるサブセットのブロックが、所定の連続する横断順序に従って符号化され、前記符号化する手段が、考慮されるサブセットの現在のブロックに関して、
・  前に符号化および復号された少なくとも1つのブロックに対して現在のブロックを予測符号化する下位手段、
・  シンボルが現れる少なくとも1つの確率に基づいて現在のブロックをエントロピー符号化する下位手段
を含む、符号化する手段
【００３０】
そのような符号化するデバイスは、
-  現在のブロックが、考慮されるサブセットの符号化されるべき第1のブロックである場合、エントロピー符号化する下位手段が、第1の現在のブロックのエントロピー符号化に関して、少なくとも1つのその他のサブセットの符号化および復号された所定のブロックに関して計算されたシンボルが現れる確率を考慮に入れ、
-  現在のブロックが、考慮されるサブセットの第1のブロック以外の、考慮されるサブセットのブロックである場合、エントロピー符号化する下位手段が、現在のブロックのエントロピー符号化に関して、同じサブセットに属する少なくとも1つの符号化および復号されたブロックに関して計算されたシンボルが現れる確率を考慮に入れることが特に注目すべき点である。
【００３１】
対応するように、さらに、本発明は、少なくとも1つの符号化された画像を表すストリームを復号する方法に関し、この方法は、以下のステップを含む:
-  復号されるべきブロックの所定の数のサブセットを画像内で特定するステップ
-  ブロックのサブセットのそれぞれに関連するストリームの部分を並列に復号するステップであって、考慮されるサブセットのブロックが、所定の連続する横断順序に従って復号され、前記並列に復号するステップが、考慮されるサブセットの現在のブロックに関して、
・  シンボルが現れる少なくとも1つの確率に基づいて現在のブロックをエントロピー復号するサブステップ、
・  前に復号された少なくとも1つのブロックに対して現在のブロックを予測復号するサブステップ
を含む、復号するステップ
【００３２】
そのような復号する方法は、
-  現在のブロックが、考慮されるサブセットの復号されるべき第1のブロックである場合、シンボルが現れる確率が、少なくとも1つのその他のサブセットの復号された所定のブロックに関して計算されたシンボルが現れる確率であり、
-  現在のブロックが、考慮されるサブセットの第1のブロック以外の、考慮されるサブセットのブロックである場合、シンボルが現れる確率が、同じサブセットに属する少なくとも1つの復号されたブロックに関して計算されたシンボルが現れる確率である
ことが特に注目すべき点である。
【００３３】
特定の実施形態においては、サブセットの第1のブロック以外の、復号されるべき現在のブロックと同じサブセットに属する復号されたブロックは、復号されるべき現在のブロックの最近隣のブロックである。
【００３４】
別の特定の実施形態においては、考慮されるサブセットのブロックを予測復号するサブステップが、考慮されるサブセット以外のサブセットの、前に復号された所定の数のブロックに対して実行されるように意図されている場合、考慮されるサブセットのブロックを並列に復号するステップが、並列に復号するステップが実行される順序でその直前にあるブロックのサブセットに対して所定の数のブロックの分だけずらして実行される。
【００３５】
相関的に、さらに、本発明は、少なくとも1つの符号化された画像を表すストリームを復号するためのデバイスに関し、このデバイスは、以下を備える:
-  復号されるべきブロックの所定の数のサブセットを画像内で特定するための特定手段
-  ブロックのサブセットのそれぞれに関連するストリームの部分を並列に復号する手段であって、考慮されるサブセットのブロックが、所定の連続する横断順序に従って復号され、前記並列に復号する手段が、考慮されるサブセットの現在のブロックに関して、
・  シンボルが現れる少なくとも1つの確率に基づいて現在のブロックをエントロピー復号する下位手段、
・  前に復号された少なくとも1つのブロックに対して現在のブロックを予測復号する下位手段
を含む、復号する手段
【００３６】
そのような復号するデバイスは、
-  現在のブロックが、考慮されるサブセットの復号されるべき第1のブロックである場合、エントロピー復号する下位手段が、第1の現在のブロックのエントロピー復号に関して、少なくとも1つのその他のサブセットの復号された所定のブロックに関して計算されたシンボルが現れる確率を考慮に入れ、
-  現在のブロックが、考慮されるサブセットの第1のブロック以外の、考慮されるサブセットのブロックである場合、エントロピー復号する下位手段が、現在のブロックのエントロピー復号に関して、同じサブセットに属する少なくとも1つの復号されたブロックに関して計算されたシンボルが現れる確率を考慮に入れる
ことが特に注目すべき点である。
【００３７】
本発明は、コンピュータで実行されるときに上述の符号化する方法または復号する方法のステップを実行するための命令を含む、コンピュータプログラムも目的とする。
【００３８】
そのようなプログラムは、任意のプログラミング言語を使用し、ソースコードの形式、オブジェクトコードの形式、もしくは部分的にコンパイルされた形式のような、ソースコードとオブジェクトコードとの中間のコードの形式、または任意のその他の所望の形式である可能性がある。
【００３９】
本発明のさらに別の主題は、コンピュータによって読取り可能であり、上述のようなコンピュータプログラムの命令を含む記録媒体も目的とする。
【００４０】
記録媒体は、プログラムを記憶することができる任意のエンティティまたはデバイスである可能性がある。例えば、そのような媒体は、ROM、例えば、CD ROMもしくは超小型電子回路ROM(microelectronic circuit ROM)、またはそうでなければ磁気記録手段、例えば、ディスケット(フロッピー(登録商標)ディスク)もしくはハードディスクなどのストレージ手段を含み得る。
【００４１】
さらに、そのような記録媒体は、電気もしくは光ケーブルを介して、無線によって、またはその他の手段によって搬送され得る、電気または光信号などの送信可能な媒体である可能性がある。本発明によるプログラムは、特に、インターネット型のネットワークでダウンロードされ得る。
【００４２】
代替的に、そのような記録媒体は、プログラムが組み込まれる集積回路である可能性があり、その回路は、対象の方法を実行するように、または対象の方法を実行する際に使用されるように適合される。
【００４３】
上述の符号化するデバイス、復号する方法、復号するデバイス、およびコンピュータプログラムは、少なくとも、本発明による符号化する方法によって与えられる利点と同じ利点をもたらす。
【００４４】
その他の特徴および利点は、図面を参照して説明される2つの好ましい実施形態を読めば明らかになろう。
【図面の簡単な説明】
【００４５】
【図１Ａ】第1の例による従来技術の画像符号化の図である。
【図１Ｂ】第2の例による従来技術の画像符号化の図である。
【図２Ａ】本発明による符号化する方法の主なステップを示す図である。
【図２Ｂ】図２Ａの符号化する方法で実装される並列的な符号化を詳細に示す図である。
【図３Ａ】本発明による符号化デバイスの実施形態を示す図である。
【図３Ｂ】図３Ａの符号化デバイスのための符号化ユニットを示す図である。
【図４Ａ】第1の好ましい実施形態による画像符号化/復号の図である。
【図４Ｂ】第2の好ましい実施形態による画像符号化/復号の図である。
【図５Ａ】本発明による復号する方法の主なステップを示す図である。
【図５Ｂ】図５Ａの復号する方法で実装される並列的な符号化を詳細に示す図である。
【図６Ａ】本発明による復号デバイスの実施形態を示す図である。
【図６Ｂ】図６Ａの復号デバイスのための復号ユニットを示す図である。
【発明を実施するための形態】
【００４６】
符号化部分の実施形態の詳細な説明
H.264/MPEG-4 AVC規格に準じた符号化によって得られる2値ストリームに近い2値ストリームよる画像のシーケンスを符号化するために本発明による符号化する方法が使用される本発明の実施形態が、以降、説明される。この実施形態において、本発明による符号化する方法は、例えば、H.264/MPEG-4 AVC規格にもともと準拠しているコーダを修正することによってソフトウェアまたはハードウェアの形で実装される。本発明による符号化する方法は、図２Ａに示されるステップC1からC5を含むアルゴリズムの形式で表される。
【００４７】
本発明の実施形態によれば、本発明による符号化する方法は、図３Ａに示される符号化デバイスCOで実施される。
【００４８】
図２Ａを参照すると、第1の符号化ステップC1は、符号化されるべき画像のシーケンスの画像IEを、図４Ａまたは４Ｂに示されるような複数のブロックまたはマクロブロックMBに分割することである。示された例において、前記ブロックMBは、正方形であり、すべて同じサイズである。必ずしもブロックのサイズの倍数であるとは限らない画像のサイズに応じて、左端のブロックおよび最も下のブロックは正方形でない可能性がある。代替的な実施形態においては、ブロックは、例えば、長方形のサイズを持ち、および/または互いに位置が揃っていない可能性がある。
【００４９】
さらに、各ブロックまたはマクロブロック自体が、サブブロックに分割される可能性があり、それらのサブブロックはそれら自体さらに分割可能である。
【００５０】
そのような分割は、例えば、それ自体よく知られている分割アルゴリズムを使用する、図３Ａに示される分割モジュールPCOによって実行される。
【００５１】
図２Ａを参照すると、第2の符号化ステップC2は、上述のブロックを、並列に符号化されるように意図されるブロックの所定の数P個の連続するサブセットSE1、SE2、…、SEk、…、SEPにグループ化することである。図４Ａおよび４Ｂに示される例において、所定の数Pは4に等しく、破線で示される4つのサブセットSE1、SE2、SE3、SE4は、画像IEのブロックの初めの4行のそれぞれからなる。
【００５２】
そのようなグループ化は、それ自体よく知られているアルゴリズムを用いて、図３Ａに示される計算モジュールGRCOによって実行される。
【００５３】
図２Ａを参照すると、第3の符号化ステップC3は、ブロックの前記サブセットSE1、SE2、SE3、およびSE4のそれぞれを並列に符号化することにあり、考慮されるサブセットのブロックが、所定の連続する横断順序PSに従って符号化される。図４Ａおよび４Ｂに示される例においては、現在のサブセットSEk(1≦k≦4)のブロックが、矢印PSによって示されるように左から右に1つずつ符号化される。
【００５４】
そのような並列的な符号化は、図３Ａに示されるようにR=4として、R個の符号化ユニットUCk(1≦k≦R)によって実施され、符号化する方法を実質的に高速化することを可能にする。それ自体知られているように、コーダCOは、現在のブロックの符号化と平行して漸次更新されるようなシンボルが現れる確率を含むように適合されるバッファメモリMTを含む。
【００５５】
図３Ｂにより詳細に示されるように、符号化ユニットUCkのそれぞれは以下を含む。
・  SUCPkと表記される、前に符号化および復号された少なくとも1つのブロックに対して現在のブロックを予測符号化するためのサブユニット。
・  SUCEkと表記される、前記前に符号化および復号されたブロックに関して計算されたシンボルが現れる少なくとも1つの確率を使用することによって前記現在のブロックをエントロピー符号化するためのサブユニット。
【００５６】
予測符号化サブユニットSUCPkは、例えばイントラモードおよび/またはインターモード(Inter mode)などの通常の予測技術に従って現在のブロックの予測符号化を実行することができる。
【００５７】
エントロピー符号化サブユニットSUCEkは、その一部分に関しては、CABAC型であるが、この説明でさらに示されるように本発明によって修正される。
【００５８】
変更形態として、エントロピー符号化サブユニットSUCEkは、それ自体知られているハフマンコーダである可能性がある。
【００５９】
図４Ａおよび４Ｂに示される例においては、第1のユニットUC1が、第1の行SE1のブロックを左から右に符号化する。第1のユニットUC1は、第1の行SE1の最後のブロックに到達するとき、ここでは第5の行である第(N+1)の行の第1のブロックなどに移動する。第2のユニットUC2は、第2の行SE2のブロックを左からに右に符号化する。第2のユニットUC2は、第2の行SE2の最後のブロックに到達すると、ここでは第6の行である第(N+2)の行の第1のブロックなどに移動する。この横断は、第4の行SE4のブロックを左から右に符号化するユニットUC4まで繰り返される。ユニットUC4は、第4の行の最後のブロックに到達すると、ここでは第8の行である第(N+4)の行の第1のブロックに移動するなど、画像IEの最後のブロックが符号化されるまで以下同様に繰り返される。
【００６０】
上で今説明された横断以外の種類の横断が、もちろんあり得る。したがって、画像IEをいくつかのサブイメージに分割し、この種の分割をそれぞれのサブイメージに独立に適用することが可能である。各符号化ユニットが、上で説明されたような入れ子になった行ではなく、入れ子になった列を処理することも可能である。行または列をどちらかの方向に横断することも可能である。
【００６１】
図２Ａを参照すると、第4の符号化ステップC4は、上述の符号化ユニットのそれぞれによって圧縮された処理されたブロックを表すN個のサブビットストリームFk(1≦k≦N)、と各サブセットSEkの処理されたブロックの復号されたバージョンとを生成することである。SED1、SED2、…、SEDk、…、SEDPと表記される考慮されるサブセットの復号された処理されたブロックは、この説明でさらに詳細に示される同期メカニズムに従って、図３Ａに示される符号化ユニットUC1、UC2、…、UCk、…、UCPの一部によって再利用される可能性がある。
【００６２】
図２Ａを参照すると、第5の符号化ステップC5は、上述のサブストリームFkに基づいて包括的なストリームFを構築することにある。一実施形態によれば、サブストリームFkは、包括的なストリームF内での各サブストリームFkの位置をデコーダに示すように意図される追加の情報項目を用いて単純に並べられる。後者は、通信ネットワーク(図示せず)によってリモート端末に送信される。後者は、図６Ａに示されるデコーダDOを含む。
【００６３】
したがって、この説明でさらに詳細に示されるように、本発明によるデコーダは、包括的なストリームF内のサブストリームFkを分離し、それらのサブストリームFkをデコーダのそれぞれの構成要素の復号ユニットに割り振ることができる。サブストリームを包括的なストリームにそのように構成することは、並列に動作するいくつかの符号化ユニットの使用を選択することとは無関係であること、およびこの手法によって、並列に動作するユニットを備えるコーダを有するだけ、またはデコーダを有するだけである可能性があることが留意される。
【００６４】
包括的なストリームFのそのような構築は、図３Ａに示されるようなストリーム構築モジュールCFで実施される。
【００６５】
符号化ユニットUCkにおいて上述の並列的な符号化ステップC3中に実施されるような本発明のさまざまな具体的なサブステップが、以降で図２Ｂを参照して説明される。
【００６６】
ステップC31の間に、符号化ユニットUCkは、図４Ａまたは４Ｂに示された現在の行SEkの符号化されるべき第1のブロックを現在のブロックとして選択する。
【００６７】
ステップC32の間に、ユニットUCkは、現在のブロックが上述のステップC1でブロックに分割された画像IEの(左上に位置する)第1のブロックであるかどうかを調べる。
【００６８】
そうである場合、ステップC33の間に、符号化の確率が、図３ＡのコーダCOで定義済みの値Pinitに初期化される。
【００６９】
そうではない場合、後の説明で後ほど示されるステップC40の間に、必要な前に符号化および復号されたブロックが利用できるかどうかの判定が行われる。
【００７０】
ステップC34の間に、図４Ａまたは４Ｂに示される第1の行SE1の第1の現在のブロックMB1の符号化が行われる。そのようなステップC34は、以下で説明される複数のサブステップC341からC348を含む。
【００７１】
第1のサブステップC341の間に、イントラ予測および/またはインター予測の知られている技術による現在のブロックMB1の予測符号化が行われ、この予測符号化の間に、ブロックMB1は、前に符号化および復号された少なくとも1つのブロックに対して予測される。
【００７２】
H.264規格で提案されているようなイントラ予測のその他のモードもあり得ることは言うまでもない。
【００７３】
現在のブロックMB1は、インターモードの予測符号化にもかけられる可能性があり、この予測符号化の間に、現在のブロックは、前に符号化および復号された画像から得られたブロックに対して予測される。その他の種類の予測も、当然考えられる。現在のブロックに関する可能な予測の中で、最適な予測が、当業者によく知られているレート歪み(ratedistortion)の基準によって選択される。
【００７４】
上述の予測符号化ステップは、現在のブロックMB1の近似である予測されたブロックMBp1を構築することを可能にする。この予測符号化に関連する情報は、後で、デコーダDOに送信されるストリームFに書き込まれる。そのような情報は、特に、予測の種類(インターまたはイントラ)と、必要に応じて、イントラ予測のモードと、ブロックの分割の種類またはマクロブロックがさらに分割された場合にはマクロブロックの分割の種類と、インター予測モードで使用される参照画像のインデックスおよび変位ベクトルとを含む。この情報は、コーダCOによって圧縮される。
【００７５】
続くサブステップC342の間に、残差ブロックMBr1を生成するために、現在のブロックMB1からの予測されたブロックMBp1の減算が行われる。
【００７６】
続くサブステップC343の間に、変換されたブロックMBt1を生成するために、例えば、DCT型の離散コサイン変換などの直接変換の通常の演算によって残差ブロックMBr1の変換が行われる。
【００７７】
続くサブステップC344の間に、例えば、スカラー量子化などの通常の量子化演算による変換されたブロックMBt1の量子化が行われる。そして、量子化された係数のブロックMBq1が得られる。
【００７８】
続くサブステップC345の間に、量子化された係数のブロックMBq1のエントロピー符号化が行われる。好ましい実施形態においては、これは、CABACエントロピー符号化をともなう。
【００７９】
続くサブステップC346の間に、ステップC344で行われた量子化の逆演算である通常の逆量子化演算によるブロックMBq1の逆量子化が行われる。そして、逆量子化された係数のブロックMBDq1が得られる。
【００８０】
続くサブステップC347の間に、上述のステップC343で実行された直接変換の逆演算である逆量子化された係数のブロックMBDq1の逆変換が行われる。そして、復号された残差ブロックMBDr1が得られる。
【００８１】
続くサブステップC348の間に、予測されたブロックMBp1に復号された残差ブロックMBDr1を加算することによって復号されたブロックMBD1の構築が行われる。後者のブロックは、この説明でさらに示される画像IEの復号の方法が完了したときに得られる復号されたブロックと同じであることに留意されたい。したがって、復号されたブロックMBD1は、符号化ユニットUC1、または所定の数R個の符号化ユニットの一部を形成する任意のその他の符号化ユニットによって使用されるように利用できるようにされる。
【００８２】
上述の符号化ステップC34が完了すると、図３Ｂに示されるようなエントロピー符号化サブユニットSUCEkは、第1のブロックの符号化と平行して漸次更新されるようなすべての確率を含む。これらの確率は、さまざまなあり得る構文要素およびさまざまな関連する符号化コンテキストに対応する。
【００８３】
上述の符号化ステップC34の後、ステップC35の間に、現在のブロックがこの同じ行の第jのブロックであるかどうかを判定するためのテストが実行され、ここで、jは、1以上である、コーダCOの知られている所定の値である。
【００８４】
そうである場合、ステップC36の間に、第jのブロックに関して計算された1組の確率が、図３Ａならびに図４Ａおよび４Ｂに示されるようなコーダCOのバッファメモリMTに記憶され、前記メモリのサイズは、計算される数の確率を記憶するのに好適である。
【００８５】
ステップC37の間に、ユニットUCkは、ちょうど符号化が終わった行SEkの現在のブロックが画像IEの最後のブロックであるかどうかを調べる。
【００８６】
そうである場合、ステップC38の間に、符号化する方法が終了する。
【００８７】
そうではない場合、ステップC39の間に、図４Ａまたは４Ｂにおいて矢印PSによって示される横断順序に従って、符号化されるべき次のブロックMBiの選択が行われる。
【００８８】
ステップC35の間に、現在のブロックが、考慮される行SEkの第jのブロックではない場合、上述のステップC37が行われる。
【００８９】
ステップC40の間に、現在のブロックMBiを符号化するために必要な、前に符号化および復号されたブロックが利用できるかどうかの判定が行われる。これが異なる符号化ユニットUCkによる画像IEのブロックの並列的な符号化をともなうことを考慮すると、これらのブロックが、これらのブロックの符号化に割り振られた符号化ユニットによって符号化および復号されておらず、したがって、まだ利用できない可能性がある。前記判定するステップは、前の行SEk-1に位置する所定の数N'個のブロック、例えば、現在のブロックの上および右上にそれぞれ位置する2つのブロックが現在のブロックの符号化のために利用できるかどうか、別の言い方をすれば、それらのブロックがそれらのブロックの符号化に割り振られた符号化ユニットUCk-1によって既に符号化され、それから復号されたかどうかを検証することにある。さらに、前記判定するステップは、符号化されるべき現在のブロックMBiの左に位置する少なくとも1つのブロックが利用できるかどうかを検証することにある。しかし、図４Ａまたは４Ｂに示される実施形態で選択された横断順序PSを考慮すると、ブロックは、考慮される行SEkで順々に符号化される。その結果、左側の符号化および復号されたブロックは、(行の第1のブロックを除いて)常に利用可能である。図４Ａまたは４Ｂに示される例において、これは、符号化されるべき現在のブロックのすぐ左に位置するブロックをともなう。この目的のために、現在のブロックの上および右上にそれぞれ位置する2つのブロックが利用できるかどうかだけが調べられる。
【００９０】
このテストステップは符号化する方法を遅くする傾向があるので、本発明による代替的な方法では、現在のブロックの上および右上にそれぞれ位置する2つのブロックが利用できることを、これら2つのブロックが利用できるかどうかを検証する必要なしに保証するために、図３Ａに示されるクロックCLKが、ブロックの符号化の進行を同期させるように適合される。したがって、図４Ａまたは４Ｂに示されるように、符号化ユニットUCkは、常に、現在のブロックの符号化のために使用される前の行SEk-1の所定の数N'(ここではN'=2)個の符号化および復号されたブロックの分だけずらして第1のブロックの符号化を開始する。ソフトウェアの観点から見ると、そのようなクロックを実装することは、コーダCOにおいて画像IEのブロックを処理するために必要とされる処理時間を著しく速くすることを可能にする。
【００９１】
ステップC41の間に、現在のブロックが、考慮される行SEkの第1のブロックであるかどうかを判定するためのテストが実行される。
【００９２】
そうである場合、ステップC42の間に、前の行SEk-1の第jのブロックの符号化中に計算されたシンボルが現れる確率だけの読取りがバッファメモリMTで行われる。
【００９３】
図４Ａに示される第1の変更形態によれば、第jのブロックは、前の行SEk-1の第1のブロックである(j=1)。そのような読取りは、バッファメモリMTに存在する確率でCABACコーダの確率を置き換えることにある。第2、第3、および第4の行SE2、SE3、およびSE4のそれぞれの第1のブロックを処理しているとき、この読取りステップは、図４Ａにおいて、細線によって示される矢印によって描かれる。
【００９４】
図４Ｂに示される上述のステップC42の第2の変更形態によれば、第jのブロックは、前の行SEk-1の第2のブロックである(j=2)。そのような読取りは、バッファメモリMTに存在する確率でCABACコーダの確率を置き換えることにある。第2、第3、および第4の行SE2、SE3、およびSE4のそれぞれの第1のブロックを処理しているとき、この読取りステップは、図４Ｂにおいて、細い破線によって示される矢印によって描かれる。
【００９５】
ステップC42の後、現在のブロックは、上述のステップC34からC38を繰り返すことによって符号化され、それから復号される。
【００９６】
上述のステップC41の後、現在のブロックが考慮される行SEkの第1のブロックではない場合、有利なことに、同じ行SEkに位置する、前に符号化および復号されたブロック、言い換えると、示された例においては、現在のブロックのすぐ左に位置する符号化および復号されたブロックから得られた確率の読取りは行われない。実は、図４Ａまたは４Ｂに示されるような、同じ行に位置するブロックの読取りの一連の横断PSを考慮すると、現在のブロックの符号化を始めるときにCABACコーダに存在するシンボルが現れる確率は、この同じ行の前のブロックの符号化/復号の後に存在する確率とぴったり一致する。
【００９７】
したがって、ステップC43の間に、図４Ａまたは４Ｂにおいて折れ曲がった実線矢印によって示されるように、同じ行の前記前のブロックに関して計算されたシンボルが現れる確率のみに対応する、前記現在のブロックのエントロピー符号化のためのシンボルが現れる確率の学習が行われる。
【００９８】
ステップC43の後、現在のブロックは、上述のステップC34からC38を繰り返すことによって符号化され、それから復号される。
【００９９】
復号部分の実施形態の詳細な説明
H.264/MPEG-4 AVC規格にもともと準拠しているデコーダを修正することによってソフトウェアまたはハードウェアの形で復号する方法が実装される本発明による復号する方法の実施形態が、以降、説明される。
【０１００】
本発明による復号する方法は、図５Ａに示されるステップD1からD4を含むアルゴリズムの形式で表される。
【０１０１】
本発明の実施形態によれば、本発明による復号する方法は、図６Ａに示される復号デバイスDOで実施される。
【０１０２】
図５Ａを参照すると、第1の復号ステップD1は、図４Ａまたは４Ｂに示されたような、前に符号化されたブロックまたはマクロブロックMBのN個のサブセットSE1、SE2、…、SEk、…、SEPのそれぞれを含むN個のサブストリームF1、F2、…、Fk、…、FPを前記ストリームF内で特定することである。この目的のために、ストリームF内のそれぞれのサブストリームFkは、ストリームF内のそれぞれのサブストリームFkの位置をデコーダDOが判定することを可能にするように意図されたインジケータに関連付けられる。示された例において、前記ブロックMBは、正方形であり、すべて同じサイズである。必ずしもブロックのサイズの倍数であるとは限らない画像のサイズに応じて、左端のブロックおよび最も下のブロックは正方形でない可能性がある。代替的な実施形態においては、ブロックは、例えば、長方形のサイズを持ち、および/または互いに位置が揃っていない可能性がある。
【０１０３】
さらに、各ブロックまたはマクロブロック自体が、サブブロックに分割される可能性があり、それらのサブブロックはそれら自体さらに分割可能である。
【０１０４】
そのような特定は、図６Ａに示されるようなストリーム抽出モジュールEXDOによって実行される。
【０１０５】
図４Ａまたは４Ｂに示された例において、所定の数は4であり、4つのサブセットSE1、SE2、SE3、SE4が破線で示されている。
【０１０６】
図５Ａを参照すると、第2の復号ステップD2は、ブロックの前記サブセットSE1、SE2、SE3、およびSE4のそれぞれを並列に復号することであり、考慮されるサブセットのブロックは、所定の連続する横断順序PSに従って符号化されている。図４Ａまたは４Ｂに示された例においては、現在のサブセットSEk(1≦k≦4)のブロックが、矢印PSによって示されるように左から右に1つずつ復号される。ステップD2が完了すると、復号されたブロックのサブセットSED1、SED2、SED3、…、SEDk、…、SEDPが得られる。
【０１０７】
そのような並列的な復号は、図６Ａに示されるようにR=4として、R個の復号ユニットUDk(1≦k≦R)によって実施され、復号する方法を実質的に高速化することを可能にする。それ自体知られているように、デコーダDOは、現在のブロックの復号と平行して漸次更新されるようなシンボルが現れる確率を含むように適合されるバッファメモリMTを含む。
【０１０８】
図６Ｂにより詳細に示されるように、復号ユニットUDkのそれぞれは以下を含む:
・  SUDEkと表記される、前に復号された少なくとも1つのブロックに関して計算されたシンボルが現れる少なくとも1つの確率を学習することによって前記現在のブロックをエントロピー復号するためのサブユニット
・  SUDPkと表記される、前記前に復号されたブロックに対して現在のブロックを予測復号するためのサブユニット
【０１０９】
予測復号サブユニットSUDPkは、例えばイントラモードおよび/またはインターモードなどの通常の予測技術に従って現在のブロックの予測復号を実行することができる。
【０１１０】
エントロピー復号サブユニットSUDEkは、その一部分に関しては、CABAC型であるが、この説明でさらに示されるように本発明によって修正される。
【０１１１】
変更形態として、エントロピー復号サブユニットSUDEkは、それ自体知られているハフマンデコーダである可能性がある。
【０１１２】
図４Ａまたは４Ｂに示される例においては、第1のユニットUD1が、第1の行SE1のブロックを左から右に復号する。第1のユニットUD1は、第1の行SE1の最後のブロックに到達するとき、ここでは第5の行である第(N+1)の行の第1のブロックなどに移動する。第2のユニットUD2は、第2の行SE2のブロックを左からに右に復号する。第2のユニットUD2は、第2の行SE2の最後のブロックに到達するとき、ここでは第6の行である第(N+2)の行の第1のブロックなどに移動する。この横断は、第4の行SE4のブロックを左から右に復号するユニットUD4まで繰り返される。ユニットUD4は、第4の行の最後のブロックに到達すると、ここでは第8の行である第(N+4)の行の第1のブロックに移動するなど、最後に特定されたサブストリームの最後のブロックが復号されるまで以下同様に繰り返される。
【０１１３】
上で今説明された横断以外の種類の横断が、もちろんあり得る。例えば、各復号ユニットが、上で説明されたような入れ子になった行ではなく、入れ子になった列を処理することも可能である。行または列をどちらかの方向に横断することも可能である。
【０１１４】
図５Ａを参照すると、第3の復号ステップD3は、復号ステップD2で得られたそれぞれの復号されたサブセットSED1、SED2、…、SEDk、…、SEDPに基づいて復号された画像を再構築することである。より厳密に言えば、それぞれの復号されたサブセットSED1、SED2、…、SEDk、…、SEDPの復号されたブロックが、図６Ａに示されるような画像再構築ユニットURIに送信される。このステップD3の間に、ユニットURIは、復号されたブロックが利用可能になるにつれて、および復号されたブロックが利用可能になるときに、これらのブロックを復号された画像に書き込む。
【０１１５】
図５Ａに示される第4の復号ステップD4の間に、完全に復号された画像IDが、図６Ａに示されたユニットURIによって送られる。
【０１１６】
復号ユニットUDkにおいて上述の並列的な復号ステップD2中に実施されるような本発明のさまざまな具体的なサブステップが、以降で図５Ｂを参照して説明される。
【０１１７】
ステップD21の間に、復号ユニットUDkは、図４Ａまたは４Ｂに示された現在の行SEkの復号されるべき第1のブロックを現在のブロックとして選択する。
【０１１８】
ステップD22の間に、ユニットUDkは、現在のブロックが、復号される画像の第1のブロック、この場合にはサブストリームF1の第1のブロックであるかどうかを調べる。
【０１１９】
そうである場合、ステップD23の間に、復号の確率が、図６ＡのデコーダDOで定義済みの値Pinitに初期化される。
【０１２０】
そうではない場合、後の説明で後ほど示されるステップD30の間に、必要な前に復号されたブロックが利用できるかどうかの判定が行われる。
【０１２１】
ステップD24の間に、図４Ａまたは４Ｂに示される第1の行SE1の第1の現在のブロックMB1の復号が行われる。そのようなステップD24は、以下で説明される複数のサブステップD241からD246を含む。
【０１２２】
第1のサブステップD241の間に、現在のブロックに関連する構文要素のエントロピー復号が行われる。より厳密には、現在のブロックに関連する構文要素は、図６Ｂに示されるようなCABACエントロピー復号サブユニットSUDE1によって復号される。後者は、圧縮されたファイルのサブビットストリームF1を復号して構文要素を生成し、同時に、このサブユニットがシンボルを復号するときに、このシンボルが現れる確率が上述のエントロピー符号化ステップC345中にこの同じシンボルを符号化する間に得られた確率と同じであるようにその後者の確率を更新する。
【０１２３】
続くサブステップD242の間に、イントラ予測および/またはインター予測の知られている技術による現在のブロックMB1の予測復号が行われ、この予測復号の間に、ブロックMB1は、前に復号された少なくとも1つのブロックに対して予測される。
【０１２４】
H.264規格で提案されているようなイントラ予測のその他のモードもあり得ることは言うまでもない。
【０１２５】
このステップの間に、予測復号は、前のステップで復号され、特に、予測の種類(インターまたはイントラ)と、必要に応じて、イントラ予測のモードと、ブロックの分割の種類またはマクロブロックがさらに分割された場合にはマクロブロックの分割の種類と、インター予測モードで使用される参照画像のインデックスおよび変位ベクトルとを含む構文要素を用いて実行される。
【０１２６】
上述の予測復号ステップは、予測されたブロックMBp1を構築することを可能にする。
【０１２７】
続くサブステップD243の間に、前に復号された構文要素を用いて、量子化された残差ブロックMBq1の構築が行われる。
【０１２８】
続くサブステップD244の間に、復号された逆量子化されたブロックMBDt1を生成するために、上述のステップC344で行われた量子化の逆演算である通常の逆量子化演算によって、量子化された残差ブロックMBq1の逆量子化が行われる。
【０１２９】
続くサブステップD245の間に、上述のステップC343で実行された直接変換の逆演算である逆量子化されたブロックMBDt1の逆変換が行われる。そして、復号された残差ブロックMBDr1が得られる。
【０１３０】
続くサブステップD246の間に、予測されたブロックMBp1に復号された残差ブロックMBDr1を加算することによって復号されたブロックMBD1の構築が行われる。したがって、復号されたブロックMBD1は、復号ユニットUD1、または所定の数N個の復号ユニットの一部を形成する任意のその他の復号ユニットによって使用されるように利用できるようにされる。
【０１３１】
上述の復号ステップD246が完了すると、図６Ｂに示されるようなエントロピー復号サブユニットSUDE1は、第1のブロックの復号と平行して漸次更新されるようなすべての確率を含む。これらの確率は、さまざまなあり得る構文要素およびさまざまな関連する復号コンテキストに対応する。
【０１３２】
上述の復号ステップD24の後、ステップD25の間に、現在のブロックがこの同じ行の第jのブロックであるかどうかを判定するためのテストが実行され、ここで、jは、1以上である、デコーダDOの知られている所定の値である。
【０１３３】
そうである場合、ステップD26の間に、第jのブロックに関して計算された1組の確率が、図６Ａならびに図４Ａまたは４Ｂに示されるようなデコーダDOのバッファメモリMTに記憶され、前記メモリのサイズは、計算される数の確率を記憶するのに好適である。
【０１３４】
ステップD27の間に、ユニットUDkは、今復号された現在のブロックが最後のサブストリームの最後のブロックであるかどうかを調べる。
【０１３５】
そうである場合、ステップD28の間に、復号する方法が終了する。
【０１３６】
そうではない場合、ステップD29の間に、図４Ａまたは４Ｂにおいて矢印PSによって示される横断順序に従って、復号されるべき次のブロックMBiの選択が行われる。
【０１３７】
上述のステップD25の間に、現在のブロックが、考慮される行SEDkの第jのブロックではない場合、上述のステップD27が行われる。
【０１３８】
上述のステップD29に続くステップD30の間に、現在のブロックMBiを復号するために必要な、前に復号されたブロックが利用できるかどうかの判定が行われる。これが異なる復号ユニットUDkによるブロックの並列的な復号をともなうことを考慮すると、これらのブロックが、これらのブロックの復号に割り振られた復号ユニットによって復号されておらず、したがって、まだ利用できない可能性がある。前記判定するステップは、前の行SEk-1に位置する所定の数N'個のブロック、例えば、現在のブロックの上および右上にそれぞれ位置する2つのブロックが現在のブロックの復号のために利用できるかどうか、別の言い方をすれば、それらのブロックがそれらのブロックの復号に割り振られた復号ユニットUDk-1によって既に復号されたかどうかを検証することにある。さらに、前記判定するステップは、復号されるべき現在のブロックMBiの左に位置する少なくとも1つのブロックが利用できるかどうかを検証することにある。しかし、図４Ａまたは４Ｂに示される実施形態で選択された横断順序PSを考慮すると、ブロックは、考慮される行SEkで順々に復号される。その結果、左側の復号されたブロックは、(行の第1のブロックを除いて)常に利用可能である。図４Ａまたは４Ｂに示される例において、これは、復号されるべき現在のブロックのすぐ左に位置するブロックをともなう。この目的のために、現在のブロックの上および右上にそれぞれ位置する2つのブロックが利用できるかどうかだけが調べられる。
【０１３９】
このテストステップは復号する方法を遅くする傾向があるので、本発明による代替的な方法では、現在のブロックの上および右上にそれぞれ位置する2つのブロックが利用できることを、これら2つのブロックが利用できるかどうかを検証する必要なしに保証するために、図６Ａに示されるクロックCLKが、ブロックの復号の進行を同期させるように適合される。したがって、図４Ａまたは４Ｂに示されるように、復号ユニットUDkは、常に、現在のブロックの復号のために使用される前の行SEk-1の所定の数N'(ここではN'=2)個の復号されたブロックの分だけずらして第1のブロックの復号を開始する。ソフトウェアの観点から見ると、そのようなクロックを実装することは、デコーダDOにおいて各サブセットSEkのブロックを処理するために必要とされる処理時間を著しく速くすることを可能にする。
【０１４０】
ステップD31の間に、現在のブロックが、考慮される行SEkの第1のブロックであるかどうかを判定するためのテストが実行される。
【０１４１】
そうである場合、ステップD32の間に、前の行SEk-1の第jのブロックの復号中に計算されたシンボルが現れる確率だけの読取りがバッファメモリMTで行われる。
【０１４２】
図４Ａに示される第1の変更形態によれば、第jのブロックは、前の行SEk-1の第1のブロックである(j=1)。そのような読取りは、バッファメモリMTに存在する確率でCABACデコーダの確率を置き換えることにある。第2、第3、および第4の行SE2、SE3、およびSE4のそれぞれの第1のブロックを処理しているとき、この読取りステップは、図４Ａにおいて、細線によって示される矢印によって描かれる。
【０１４３】
図４Ｂに示される上述のステップD32の第2の変更形態によれば、第jのブロックは、前の行SEk-1の第2のブロックである(j=2)。そのような読取りは、バッファメモリMTに存在する確率でCABACデコーダの確率を置き換えることにある。第2、第3、および第4の行SE2、SE3、およびSE4のそれぞれの第1のブロックを処理しているとき、この読取りステップは、図４Ｂにおいて、細い破線によって示される矢印によって描かれる。
【０１４４】
ステップD32の後、現在のブロックは、上述のステップD24からD28を繰り返すことによって復号される。
【０１４５】
上述のステップD31の後、現在のブロックが考慮される行SEkの第1のブロックではない場合、有利なことに、同じ行SEkに位置する、前に復号されたブロック、言い換えると、示された例においては、現在のブロックのすぐ左に位置する復号されたブロックから得られた確率の読取りは行われない。実は、図４Ａまたは４Ｂに示されるような、同じ行に位置するブロックの読取りの一連の横断PSを考慮すると、現在のブロックの復号を始めるときにCABACデコーダに存在するシンボルが現れる確率は、この同じ行の前のブロックの復号の後に存在する確率とぴったり一致する。
【０１４６】
したがって、ステップD33の間に、図４Ａまたは４Ｂにおいて折れ曲がった実線矢印によって示されるように、同じ行の前記前のブロックに関して計算された確率のみに対応する、前記現在のブロックのエントロピー復号のためのシンボルが現れる確率の学習が行われる。
【０１４７】
ステップD33の後、現在のブロックは、上述のステップD24からD28を繰り返すことによって復号される。
【符号の説明】
【０１４８】
CF  ストリーム構築モジュール
CLK  クロック
CO  コーダ、符号化デバイス、
DO  デコーダ、復号デバイス
EXDO  ストリーム抽出モジュール
F  包括的なストリーム
F1  サブストリーム
F2  サブストリーム
Fk  ビットストリーム、サブストリーム
FP  サブストリーム
GRCO  計算モジュール
ID  完全に復号された画像
IE  画像
IN  画像
MB1  第1の現在のブロック
MBi  現在のブロック
MBp1  予測されたブロック
MBq1  量子化された係数のブロック
MBr1  ブロック、残差ブロック
MBr2  ブロック
MBr3  ブロック
MBD1  復号されたブロック
MBDq1  逆量子化された係数のブロック
MBDr1  復号された残差ブロック
MBDt1  復号された逆量子化されたブロック
PCO  分割モジュール
PS  順序
SE1  ブロックのサブセット
SE2  ブロックのサブセット
SE3  ブロックのサブセット
SE4  ブロックのサブセット
SEk  ブロックのサブセット
SEP  ブロックのサブセット
SED1  復号されたブロックのサブセット
SED2  復号されたブロックのサブセット
SED3  復号されたブロックのサブセット
SEDk  復号されたブロックのサブセット
SEDP  復号されたブロックのサブセット
SUCEk  サブユニット
SUCPk  サブユニット
SUDEk  サブユニット
SUDE1  サブユニット
SUDPk  サブユニット
UC1  符号化ユニット
UC2  符号化ユニット
UC4  ユニット
UCk  符号化ユニット
UCk-1  符号化ユニット
UCP  符号化ユニット
UD1  復号ユニット
UD2  ユニット
UD4  ユニット
UDk  復号ユニット
UDk-1  復号ユニット
URI  画像再構築ユニット
【図１Ａ】
0006310523.tif 000003
【図１Ｂ】
0006310523.tif 000004
【図２Ａ】
0006310523.tif 000005
【図２Ｂ】
0006310523.tif 000006
【図３Ａ】
0006310523.tif 000007
【図３Ｂ】
0006310523.tif 000008
【図４Ａ】
0006310523.tif 000009
【図４Ｂ】
0006310523.tif 000010
【図５Ａ】
0006310523.tif 000011
【図５Ｂ】
0006310523.tif 000012
【図６Ａ】
0006310523.tif 000013
【図６Ｂ】
0006310523.tif 000014