(57)【要約】本発明は、ビデオフレームからなるグループを符号化するための方法及び装置に向けられる。本発明によれば、該グループにおける第一の数のフレームは、複数の基準フレームに基づいて動き補償時間フィルタリングされる。該グループにおける第二の数のフレームは、単一の基準フレームに基づいて動き補償時間フィルタリングされる。第一及び第二の数のフレームは、ウェーブレット係数に変換される。さらに、ウェーブレット係数は、エントロピー符号化される。１つの例では、第一の数のフレームは、該グループの第一の部分内に位置され、第二の数のフレームは、該グループの第二の部分内に位置される。別の例では、第一の数のフレーム及び第二の数のフレームは、該グループ内でインタリーブされる。
2005533425.tif 000002
【特許請求の範囲】
【請求項１】
ビデオフレームからなるグループを符号化する方法であって、
複数の基準フレームに基づいて、該グループにおける第一の数のフレームに動き補償時間フィルタリングを行うステップと、
単一の基準フレームに基づいて、該グループにおける第二の数のフレームに動き補償時間フィルタリングを行うステップと、
該第一及び第二の数のフレームをウェーブレット係数に変換するステップと、
該ウェーブレット係数をエントロピー符号化するステップと、
を備える方法。
【請求項２】
該複数の基準フレームに基づいて、該グループにおける第一の数のフレームに動き補償時間フィルタリングを行う該ステップは、
該第一の数のフレームのそれぞれにおける領域を該複数の基準フレームにおける領域に整合させるステップと、
該第一の数のフレームのそれぞれにおける領域の画素値と該複数の基準フレームにおける領域の画素値との間の差を計算するステップと、
を含む請求項１記載の方法。
【請求項３】
該第一の数のフレームのそれぞれにおける領域の画素値と該複数のフレームにおける領域での画素値との間の差をスケーリングファクタで割るステップをさらに含む、
請求項２記載の方法。
【請求項４】
単一の基準フレームに基づいて、該グループにおける第二の数のフレームに動き補償時間フィルタリングを行う該ステップは、
該第二の数のフレームの第一の半分における領域を第二の半分における領域に整合させるステップと、
該第二の数のフレームの該第一の半分と該第二の半分の画素値間の差を計算するステップと、
該第二の数のフレームの該第一の半数と該第二の半数における領域の画素値の平均を計算するステップと、
を含む請求項１記載の方法。
【請求項５】
重要な情報に従って該ウェーブレット係数を符号化するステップをさらに含む、
請求項１記載の方法。
【請求項６】
該第一の数のフレームは、該グループの第一の部分内に位置され、該第二の数のフレームは、該グループの第二の部分内に位置される、
請求項１記載の方法。
【請求項７】
該第一の数のフレームと該第二の数のフレームは、該グループ内でインタリーブされる、
請求項１記載の方法。
【請求項８】
ビデオフレームからなるグループを符号化する方法であって、
該グループにおける少なくとも１つのフレームにおける領域を複数の基準フレームにおける領域に整合させるステップと、
該少なくとも１つのフレームにおける領域の画素値と該複数の基準フレームにおける領域の画素値との間の差を計算するステップと、
該グループにおける少なくとも１つの他のフレームにおける領域を単一の基準フレームにおける領域に整合させるステップと、
該グループにおける該少なくとも１つの他のフレームにおける領域の画素値と該単一の基準フレームにおける領域の画素値との第二の差及び平均を計算するステップと、
該平均、該差及び該第二の差をウェーブレット係数に変換するステップと、
を含む方法。
【請求項９】
ビデオ系列を符号化するための装置であって、
該ビデオ系列をフレームのグループに分割するための分割ユニットと、
複数の基準フレームに基づいてグループにおける第一の数のフレームを処理し、単一のフレームに基づいて該グループにおける第二の数のフレームを処理するための動き補償時間フィルタリングユニットと、
該第一の数のフレームと該第二の数のフレームをウェーブレット係数に変換するための空間分解ユニットと、
を有する装置。
【請求項１０】
該ウェーブレット係数をビットストリームに符号化するためのエントロピー符号化ユニットをさらに含む、
請求項９記載の装置。
【請求項１１】
ビデオフレームからなるグループを符号化するためのコードを含む記憶媒体であって、該コードは、
複数の基準フレームに基づいて該グループにおける第一の数のフレームに動き補償時間フィルタリングを行うためのコードと、
単一の基準フレームに基づいて該グループにおける第二の数のフレームに動き補償時間フィルタリングを行うためのコードと、
該第一の数のフレームと該第二の数のフレームをウェーブレット係数に変換するためのコードと、
該ウェーブレット係数をエントロピー符号化するためのコードと、
を含む記憶媒体。
【請求項１２】
符号化されたビデオフレームからなるグループを含むビットストリームを復号化する方法であって、
該ビットストリームをエントロピー復号化してウェーブレット係数を生成するステップと、
該ウェーブレット係数を部分的に復号化されたフレームに変換するステップと、
複数の基準フレームを使用して第一の数の部分的に復号化されたフレームに逆時間フィルタリングを行うステップと、
単一の基準フレームを使用して第二の数の部分的に復号化されたフレームに逆時間フィルタリングを行うステップと、
を含む方法。
【請求項１３】
該第一の数の部分的に復号化されたフレームに逆時間フィルタリングを行う該ステップは、
該第一の数の部分的に復号化されたフレームのそれぞれにおける領域に予め整合された該複数の基準フレームから領域を回復するステップと、
該複数の基準フレームにおける領域の画素値を該第一の数の部分的に復号化されたフレームにおける領域の画素値に加えるステップと、
を含む請求項１２記載の方法。
【請求項１４】
該複数の基準フレームから領域を回復する該ステップは、該ビットストリームに含まれる動きベクトル及びフレーム番号に従って実行される、
請求項１３記載の方法。
【請求項１５】
該第一の数の部分的に復号化されたフレームをスケーリングファクタで乗算するステップをさらに含む、
請求項１３記載の方法。
【請求項１６】
該第二の数の部分的に復号化されたフレームに逆時間フィルタリングを行う該ステップは、
該第二の数の部分的に復号化されたフレームの第一の半分と第二の半分との間の差を計算するステップと、
該第二の数の部分的に復号化されたフレームの第一の半分と第二の半分の合計を計算するステップと、
を含む請求項１２記載の方法。
【請求項１７】
該差及び該合計をスケーリングファクタで割るステップをさらに含む、
請求項１６記載の方法。
【請求項１８】
重要な情報に従って該ウェーブレット係数を復号化するステップをさらに含む、
請求項１２記載の方法。
【請求項１９】
該第一の数の部分的に復号化されたフレームは、該グループの第一の部分内に位置され、該第二の数の部分的に復号化されたフレームは、該グループの第二の部分内に位置される、
請求項１２記載の方法。
【請求項２０】
該第一の数の部分的に復号化されたフレーム及び該第二の数の部分的に復号化されたフレームは、該グループ内でインタリーブされる、
請求項１２記載の方法。
【請求項２１】
符号化されたビデオフレームからなるグループを含むビットストリームを復号化するための装置は、
該ビットストリームをウェーブレット係数に復号化するためのエントロピー復号化ユニットと、
該ウェーブレット係数を部分的に復号化されたフレームに変換するための空間組み直しユニットと、
複数の基準フレームを使用して第一の数の部分的に復号化されたフレームを処理し、単一の基準フレームを使用して第二の数の部分的に復号化されたフレームを処理するための逆時間フィルタリングユニットと、
を有する装置。
【請求項２２】
符号化されたビデオフレームからなるグループを含むビットストリームを復号化するためのコードを含む記憶媒体であって、該コードは、
該ビットストリームをエントロピー復号化してウェーブレット係数を生成するためのコードと、
該ウェーブレット係数を部分的に復号化されたフレームに変換するためのコードと、
複数の基準フレームを使用して第一の数の部分的に復号化されたフレームに逆時間フィルタリングを行うためのコードと、
単一の基準フレームを使用して第二の数の部分的に復号化されたフレームに逆時間フィルタリングを行うためのコードと、
を含む記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ビデオ圧縮全般に関し、より詳細には、単一の基準フレームと複数の基準フレームの両者に基づいた、動き補償時間フィルタリングを利用したウェーブレットベースの符号化に関する。
【０００２】
本出願は、2002年4月29日に提出された米国仮出願シリアル番号60/376,381号、及び2002年7月15日に提出された米国仮出願シリアル番号60/395,921号の利益を請求するものであって、これらの教示は引用により本明細書に盛り込まれる。
本出願は、“Motion  Compensated  Temporal  Filtering  Based  On  Multiple  Reference  Frames  For  Wavelet  Based  Coding”と題された米国特許出願、及び同時に提出された“Scalable  Wavelet  Based  Coding  Using  Motion  Compensation  Temporal  Filtering  Based  On  Multiple  Reference  Frames”と題された米国特許出願に関する。
【背景技術】
【０００３】
多数の現在のビデオ符号化アルゴリズムは、動き補償予測符号化に基づいており、この動き補償予測符号化は、ハイブリッドスキームであると考えられる。かかるハイブリッドスキームでは、動き補償を使用して時間的な冗長度が低減され、動き補償の残りを変換符号化することで空間的な冗長度が低減される。一般に使用される変換は、離散コサイン変換（ＤＣＴ）又はサブバンド／ウェーブレット分解を含んでいる。しかし、かかるスキームは、真のスケーラブルなビットストリームを供給する観点で柔軟性に欠ける。
【０００４】
別のタイプのスキームは、３次元サブバンド／ウェーブレット（以下「３Ｄウェーブレット」と呼ぶ）に基づく符号化として知られており、混成のネットワークを通したビデオ送信という現在のシナリオでは、特に評判を得てきている。これらのスキームは、かかる応用において望まれており、これは、非常にフレキシブルなスケーラブルビットストリーム及びより高いエラー回復が提供されるためである。３Ｄウェーブレット符号化では、全体のフレームは、ＤＣＴベースの符号化におけるようなブロック毎の代わりに、同時に転送される。
【０００５】
３Ｄウェーブレットスキームの１つのコンポーネントは、動き補償時間フィルタリング（ＭＣＴＦ）であり、このＭＣＴＦは、時間的な冗長度を低減するために実行される。ＭＣＴＦの例は、Seung-Jong  Choi  及び  John  Woods（以下Woodsと呼ぶ）による、“Motion-Compensated  3-D  Subband  Coding  of  Video”IEEE  Transaction  On  Image  Processing,  Volume  8,  No  2,  February  1999と題された論文に記載されている。
【０００６】
Woodsでは、空間的な分解が実行される前に、動きの方向でフレームが時間的にフィルタリングされる。時間フィルタリングの間、幾つかの画素は、シーンにおける動きの性質及び物体のカバーリング及びアンカバーリングにより、参照されないか又は複数回参照されるかのいずれかである。かかる画素は、接続されていない画素として知られており、空間的な処理を必要とし、低減された符号化効率をもたらす。図１には、接続されていない画素及び接続される画素の例が示されており、この図はWoodsから採用されるものである。
【発明の開示】
【課題を解決するための手段】
【０００７】
本発明は、ビデオフレームのグループを符号化するための方法及び装置に向けられる。本発明によれば、グループにおける第一の数のフレームは、複数の基準フレームに基づいて動き補償時間フィルタリングされる。グループにおける第二の数のフレームは、単一の基準フレームに基づいて動き補償時間フィルタリングされる。第一の数及び第二の数のフレームは、ウェーブレット係数に変換される。さらに、ウェーブレット係数は、エントロピー符号化される。１つの例では、第一の数のフレームは、グループの第一の部分内に位置され、第二の数のフレームは、グループの第二の部分内に位置される。別の例では、第一の数のフレームと第二の数のフレームは、グループ内でインタリーブされる。
【０００８】
また、本発明は、符号化されたビデオフレームのグループを含むビットストリームをデコードするための方法及び装置に向けられる。本発明によれば、ウェーブレット係数を得るため、ビットストリームがエントロピー復号化される。ウェーブレット係数は、部分的にデコードされたフレームのグループに変換される。第一の数の部分的に復号化されたフレームは、複数の基準フレームを使用して逆時間フィルタリングされる。第二の数の部分的に復号化されたフレームは、単一の基準フレームを使用して逆時間フィルタリングされる。１つの例では、第一の数の部分的に復号化されたフレームは、グループの第一の部分内に位置され、第二の数の部分的に復号化されたフレームは、グループの第二の部分内に位置される。別の例では、第一の数の部分的に復号化されたフレームと第二の数の部分的に復号化されたフレームは、グループ内にインタリーブされる。
ここで、添付図面を参照して、同じ参照符号は全体的に対応する部材を表している。
【発明を実施するための最良の形態】
【０００９】
先に説明されたように、３Ｄウェーブレットスキームの１つのコンポーネントは、動き補償時間フィルタリング（MCTF:  Motion  Compensated  Temporal  Filtering）であり、このＭＣＴＦは、時間的な冗長度を低減するために実行される。ＭＣＴＦの間、空間処理を必要とする接続されていない画素（unconnected  pixels）が生じる場合があり、これにより、低減された符号化効率を招く場合がある。本発明は、ＭＣＴＦスキームに対処するものであって、動き補償と時間フィルタリングの間に、単一の基準フレームと複数の基準フレームを使用する。整合の品質を改善することで符号化効率を改善するため、また、接続されていない画素の数を減少するため、複数の基準フレームの使用が望まれる。さらに、所望の符号化効率に基づいて、単一の基準フレームと複数の基準フレームの使用が適応的に選択される。
【００１０】
図２には、本発明に係るエンコーダの１つの例が示されている。理解することができるように、エンコーダ２は、入力ビデオをグループオブピクチャ（ＧＯＰ）に分割するための分割ユニット２を含んでおり、これらＧＯＰは、ユニットとしてエンコードされる。本発明によれば、分割ユニット２は、ＧＯＰが予め決定された数のフレームを含むか、帯域幅、符号化効率及びビデオコンテンツのようなパラメータに基づいた動作の間に動的に決定されるように動作する。たとえば、ビデオが急速なシーン変化及びハイモーションからなる場合、より短いＧＯＰを有することが効果的であり、ビデオが大部分静止した対象物から構成される場合、より長いＧＯＰを有することが効果的である。
【００１１】
理解することができるように、ＭＣＴＦユニット４が含まれており、このユニットは、動き予測ユニット６及び時間フィルタリングユニット８から構成されている。先に説明されたように、本発明は、単一の基準フレームと複数の基準フレームの両方を使用するＭＣＴＦに向けられている。したがって、動作の間、動き予測ユニット６は、ある特定のフレームの領域を、同じＧＯＰにおける１つの他のフレーム又は複数のフレームにおけるいずれかの領域に整合させる。単一の基準フレーム又は複数の基準フレームの使用は、予め決定されたやり方で実行されるか、又は所望の符号化効率に基づいて適応的に選択される場合がある。複数の基準フレームに基づく動き補償に関して、動き予測ユニット６により処理されたフレームは、Ｈフレームとして定義される。さらに、ＧＯＰにおける多数のフレームは、動き予測ユニット６により処理されず、これらのフレームは、Ａフレームとして定義される。それぞれのＧＯＰにおけるＡフレームの数は、多数の要素のために変動する場合がある。特に、前方予測、後方予測又は双方向予測が使用されるかに依存して、それぞれのＧＯＰにおける最初のフレーム又は最後のフレームのいずれかがＡフレームである場合がある。さらに、それぞれのＧＯＰにおける多数のフレームは、時間的なスケーラビリティを提供するため、Ａフレームとして選択される場合がある。この選択は、第二フレーム毎、第三フレーム毎、第四フレーム毎、等のような任意のインターバルで行われる場合がある。
【００１２】
Ａフレームの使用は、本発明に従って符号化されたビデオが時間的にスケーラブルとなることを可能にする。Ａフレームは独立に符号化されるので、ビデオは、良好な品質でより低いフレームレートでデコードすることができる。さらに、動き予測ユニット６により処理されるためにどのフレームが選択されないかに基づいて、任意のインターバルでＡフレームがＧＯＰに挿入される場合があり、これにより、２分の１、３分の１、４分の１等のような任意のフレームレートでビデオをデコードすることができる。さらに、Ａフレームの使用は、予測ドリフトを制限する。これは、これらのフレームが如何なる他のフレームへの参照なしに符号化されることによる。
【００１３】
１つの例では、動き予測ユニット６は、複数の基準フレームに基づいて、後方予測を実行する。このように、ＧＯＰのうちの１以上のフレームにおける画素のグループ又は領域は、同じＧＯＰの前のフレームにおける類似した画素のグループ又は領域に整合される。この例では、ＧＯＰにおける前のフレームが、処理されるそれぞれのフレームの基準フレームである。この例では後方予測が使用されるので、ＧＯＰにおける最初のフレームは、利用可能な前のフレームが存在しないので、Ａフレームである場合がある。しかし、代替的に、別の例では、第一のフレームが前方予測される場合がある。
【００１４】
別の例では、動き予測ユニット６は、複数の基準フレームに基づいて、前方予測を実行する。したがって、ＧＯＰの１以上のフレームにおける画素のグループ又は領域は、同じＧＯＰの前のフレームにおける類似の画素のグループ又は領域に整合される。この例では、ＧＯＰにおける後続するフレームが、処理されるそれぞれのフレームの基準フレームである。この例では前方予測が使用されるので、ＧＯＰにおける最後のフレームは、利用可能な後続するフレームが存在しないので、Ａフレームである場合がある。しかし、代替的に、別の例では、最後のフレームが後方予測される場合がある。
【００１５】
別の例では、動き予測ユニット６は、複数の基準フレームに基づいて、双方向予測を実行する。したがって、ＧＯＰの１以上のフレームにおける画素のグループ又は領域は、同じＧＯＰの前のフレームと後続するフレームの両方における類似した画素のグループ又は領域に整合される。この例では、ＧＯＰにおける前のフレーム及び後続するフレームが、処理されるそれぞれのフレームの基準フレームである。この例では、双方向予測が使用されるので、ＧＯＰにおける最初のフレーム又は最後のフレームは、利用可能な前のフレーム又は後続するフレームが存在しないので、Ａフレームである。しかし、代替的に、別の例では、最初のフレームが前方予測されるか、又は最後のフレームが後方予測される場合がある。
【００１６】
先に説明された整合の結果として、動き予測ユニット６は、動きベクトルＭＶ、及び処理されている現在のフレームで整合されるそれぞれの領域のフレーム番号を提供する。単一の基準フレームが使用される場合、ある特定のフレームにおける領域は、同じ関連されるフレーム番号を有するべきである。複数の基準フレームが使用される場合、ある特定のフレームにおける領域は、異なる関連されるフレーム番号を有する場合がある。さらに、あるケースでは、唯一の動きベクトルＭＶ、及び処理されている現在のフレームにおけるそれぞれの領域と関連されるフレーム数が存在する場合がある。しかし、双方向の予測が使用される場合、２つの動きベクトル、及びそれぞれの領域と関連されるフレーム数が存在する場合がある。それぞれの動きベクトル及びフレーム番号は、処理されているそれぞれのフレームにおける領域に整合される類似の領域を含むＧＯＰにおける位置及び他のフレームを示している。
【００１７】
動作の間、時間フィルタリングユニット８は、動き予測ユニット６により提供される動きベクトルＭＶ及びフレーム番号に従って、それぞれＧＯＰのフレーム間の時間的な冗長度を除く。これを実行するため、時間フィルタリングユニット８は、処理されているそれぞれのフレームにおける領域に前に整合された類似の領域を検索する。これは、動き予測ユニット６により提供される動きベクトル及びフレーム基準番号に従って行われる。さらに、時間フィルタリングユニット８は、ある特定のフレームに実行される動き補償が単一の基準フレームに基づいているか、又は複数の基準フレームに基づいているかに依存して、異なる方法をある特定のフレームに適用する。
【００１８】
動き補償が安逸の基準フレームに基づく場合、Woods（“Motion-Compensated  3-D  Subband  Coding  of  Video”,  IEEE  Transactions  On  Image  Processing,  Volume  8,  No.2  February  1999,  by  Seung-Jong  Choi  and  Jhon  Woodsと題された論文）におけるように、特定のフレームが時間フィルタリングされる。図１から理解できるように、Woodsは、２つのフレームを採用し、これらのフレームを高い（Ｈ）周波数フレームと低い（Ｌ）周波数のフレームを含む２つのフレームに変換する。図２を参照して、時間フィルタリングユニット８は、２つのフレームにおける対応する領域間の平均を取り、次いで、あるスケーリングファクタで平均を割ることでＬフレームを生成する。さらに、時間フィルタリングユニットは、２つのフレームにおける対応する領域間の差を取り、次いで、あるスケーリングファクタで差を割ることでＨフレームを生成する。適切なスケーリングファクタの例は、２の平方根（√２）又は２の平方根の逆数（１／√２）である。
【００１９】
動き補償が複数の基準フレームに基づく場合、時間フィルタリングユニット８は、処理されているそれぞれのフレームについて１つのＨフレームを生成する。先に説明されたように、それぞれのＧＯＰにおける多数のフレーム（Ａフレーム）が処理されない場合がある。したがって、時間フィルタリングユニット８は、かかるフレームへのフィルタリングを実行せず、これらのフレームを変更されない状態で通過させる。さらに、Ｈフレームとして選択されたフレームは、ＧＯＰのそれぞれのフレームの領域とＧＯＰの他のフレームに見られる類似の領域との間の差を取ることで、時間フィルタリングされる。
【００２０】
先に説明されたように、処理されているそれぞれのフレームにおける領域は、同じＧＯＰにおける他のフレームにおける類似の領域に整合されている。類似の領域を検索した後、時間フィルタリングユニット８は、類似の領域における画素値と処理されているフレームの領域における画素値との間の差を計算する。さらに、時間フィルタリングユニット８は、好ましくは、Ｈフレームを生成するため、あるスケーリングファクタでこの差を割る。
【００２１】
本発明によれば、このＭＣＴＦスキームは、改善された符号化効率をもたらす。これは、最良の整合の品質が大幅に改善され、接続されていない画素の数もまた低減されるためである。特に、シミュレーションが示されており、それぞれのフレームについて、接続されていない画素の数が３４パーセントから２２パーセントに低減されている。しかし、このスキームは、ある接続されていない画素をなお生成する。したがって、時間フィルタリングユニット８は、Woodsで記載されているように、これらの接続されていない画素を処理する。
【００２２】
理解することができるように、空間分解ユニット１０は、ＭＣＴＦユニット４により提供されるフレームにおける空間的な冗長度を低減するために含まれている。動作の間、ＭＣＴＦユニット４から受信されたフレームは、２Ｄウェーブレット変換に従ってウェーブレット係数に変換される。ウェーブレット変換に関して、多くの異なるタイプのフィルタ及び実現が存在している。
【００２３】
図３には、適切な２Ｄウェーブレット変換の１つの例が示されている。理解することができるように、ウェーブレットフィルタを使用して、あるフレームは、低周波サブバンド及び高周波サブバンドに分解される。これは２Ｄ変換であるので、３つの高周波サブバンド（水平、垂直及び対角線）が存在する。低周波サブバンドには、ＬＬサブバンドがラベル付けされる（水平周波数及び垂直周波数の両者で低い）。これら高周波サブバンドには、ＬＨ、ＨＬ及びＨＨがラベル付けされ、これらは、水平方向で高周波、垂直方向で高周波、並びに水平及び垂直方向の両者で高周波であることに対応している。低周波サブバンドは、再帰的に更に分解される場合がある。図３では、ＷＴは、ウェーブレット変換を意味している。これらは、Stephane  Mallet,  Academic  Press,  1997による“A  Wavelet  Tour  of  Signal  Processing”と題された書籍に記載される、他の公知のウェーブレット変換スキームである。
【００２４】
図２を参照して、エンコーダは、重要な情報に従って空間分解ユニット１０の出力を符号化するための重要性の符号化ユニット１２を含んでいる。この例では、重要性とは、ウェーブレット係数の大きさを意味する場合があり、大きな係数は、小さな係数よりも重要である。この例では、重要性符号化ユニット１０は、空間分解ユニット１０から受信されたウェーブレット係数を見て、大きさに従ってウェーブレット係数を再順序付けする。このように、最も大きい振幅を有するウェーブレット係数が最初に送出される。重要性の符号化に関する１つの例は、ＳＰＩＨＴ（Set  Partitioning  In  Hierarchical  Trees）である。このことは、A.  Said及びW.  Pearlmanによる“A  New  Fast  and  Efficient  Image  Codec  Based  on  Set  Partitioning  in  Hierarchical  Trees”  IEEE  Transaction  on  Circuits  and  Systems  for  Video  Technology,  vol.6,  June  1996と題された論文に記載されている。
【００２５】
図２から理解することができるように、動作のうちの幾つかの間の依存性を示すために破線が含まれている。１つの例では、動き予測６は、重要性の符号化１２の特性に依存する。たとえば、どのウェーブレット係数がより重要であるかを判定するため、動き予測により生成された動きベクトルが使用される場合がある。別の例では、空間的な分解１０は、重要性の符号化１２のタイプに依存する場合もある。たとえば、ウェーブレット分解のレベル数は、重要な係数の数に関連される場合がある。
【００２６】
更に理解することができるように、出力ビットストリームを生成するためにエントロピー符号化ユニット１４が含まれる。動作の間、ウェーブレット係数を出力ビットストリームに符号化するためにエントロピー符号化技術が適用される。また、エントロピー符号化技術は、動き予測ユニット６により提供される動きベクトル及びフレーム番号にも適用される。この情報は、復号化を可能にするため、出力ビットストリームに含まれる。
【００２７】
図４には、本発明に係る時間フィルタリングの１つの例が示されている。この例では、時間的なピラミッド分解スキームが使用されており、ここでは、ＡフレームとＬフレームとの混成が異なるレベルで配置される場合がある。理解することができるように、この例におけるピラミッド分解は、３つのレベルで実現されている。
【００２８】
レベル１では、複数の基準フレーム及び双方向予測が使用されている。レベル１から理解することができるように、第一のフレームはＡフレームであり、これは、後方予測を実行するため、ＧＯＰにおける前のフレームが存在しないためである。したがって、このフレームはフィルタリングされず、変更されないままである。このＧＯＰでは、１つおきにＡフレームが選択されている。先に説明されたように、ＧＯＰにおける多数のフレームが時間的なスケーラビリティを提供するため、Ａフレームとして選択されている。さらに、Ａフレームとして選択されていないフレームは、Ｈフレームとして処理される。この例では、Ｈフレームは、先に説明されたように、複数の基準フレームに基づいて双方向予測及び時間フィルタリングにより生成される。これは、レベル１で示されるフレームを生成する。
【００２９】
レベル２では、レベル１からＡフレームが収集され、次いで、先に説明されたように、単一の基準フレームを使用して時間フィルタリングされる。したがって、レベル１からのＡフレームのそれぞれのペアは、図示されるように。ＬフレームとＨフレームに変換される。このスキームのため、レベル１及び２からのフレームは、処理されているフレームのグループ内でインタリーブされる。
【００３０】
レベル３では、レベル２からのＬフレームは、複数の基準フレーム技術を使用して時間フィルタリングされる。この例では、レベル２において２つのみのＬフレームが存在する。したがって、最初のフレーム又は最後のフレームのいずれかが基準フレームとしての役割を果たす。したがって、この例では、単一の基準フレームが使用されている。しかし、レベル２で利用可能な２以上のＬフレームが存在する他の例では、複数の基準フレームが使用される。この例では、レベル２における最初のＬフレームは、Ａフレームとして選択され、したがってフィルタリングされない。さらに、レベル２からの第二のＬフレームは、単一のＨフレームに変換される。このことは、最初のＬフレームを基準フレームとして使用して後方予測を実行し、次いで２つのフレームにおける対応するエリア間のスケーリングされた差を取ることで達成される。
【００３１】
なお、図４のスキームは１つの例である。他の例では、より多くのフレームがＧＯＰに含まれる場合がある。レベル１では、後方予測又は前方予測は、図示されるように双方向予測の代わりに使用される場合がある。レベル３では、図示されるように、後方予測の代わりに、前方予測又は双方向予測が使用される場合がある。たとえば、レベル３で前方予測が使用される場合、第二のＬフレームがＡフレームとして選択され、最初のＬフレームがＨフレームに変換される。さらに、図４におけるレベルが変化される場合がある。たとえば、単一の基準フレームに基づく時間フィルタリングは、レベル１で実行される場合があり、複数の基準フレームに基づく時間フィルタリングは、レベル２で実行される場合がある。
【００３２】
図５には、本発明に係る時間フィルタリングの別の例が示されている。理解することができるように、ＧＯＰの一部は、複数の基準フレームを使用して時間フィルタリングされるとして選択され、他の部分は、単一の基準フレームを使用してフィルタリングされる。先に説明されたように、この選択は、予め決定されているか、又は適応的に実行される場合がある。この例では、ＧＯＰの最初の半分は、複数の基準フレームを使用して時間フィルタリングされるとして選択されており、さらに、この例では、最初の半分における１つおきのフレームがＡフレームとして選択されている。このように、ＧＯＰの最初の半分における他のフレームは、双方向予測を使用してＨフレームに変換される。なお、後方予測又は前方予測が代わりに使用される場合がある。この例では、ＧＯＰの第二の半分は、単一の基準フレームを使用して時間フィルタリングされる。したがって、フレームの２つのペアのそれぞれは、図示されるように、ＬフレームとＨフレームに変換される。
【００３３】
なお、図５の例では、Ａフレームとして選択される場合があるフレーム数には制約がない。さらに、Ｌフレームの数は、単一の基準フレームを使用してフィルタリングされるべきＧＯＰのより大きな部分を選択することで増加される場合がある。また、この例ではＡフレームはフィルタリングされていないので、これらのフレームは、Ｌフレームよりも大きな振幅を有している。したがって、この差を補償するため、Ａフレームをスケーリングファクタで割ることが好ましい場合がある。これにより、Ａフレームは、ピラミッドスキームの一部として共にフィルタリングされるべきＬフレームと共にグループ化することが可能である。
【００３４】
図６には、本発明に係るデコーダに関する１つの例が示されている。図２に関して先に説明されたように、入力ビデオがＧＯＰに分割され、それぞれのＧＯＰは、あるユニットとして符号化される。したがって、入力ビットストリームは、１以上のＧＯＰを含む場合があり、この１以上のＧＯＰもあるユニットとしてデコードされる。また、ビットストリームは、前に動き補償時間フィルタリングされたＧＯＰにおけるそれぞれのフレームに対応する多数の動きベクトルＭＶ及びフレーム数を含んでいる。動きベクトル及びフレーム数は、時間フィルタリングされているそれぞれのフレームにおける領域に前に整合された同じＧＯＰにおける他のフレームにおける領域を示している。
【００３５】
理解することができるように、デコーダは、到来するビットストリームを復号化するためのエントロピー復号化ユニット１６を含んでいる。動作の間、入力ビットストリームは、符号化側で実行されるエントロピー符号化技法の逆に従って復号化される場合がある。このエントロピー復号化は、それぞれのＧＯＰに対応するウェーブレット係数を生成する。さらに、エントロピー復号化は、後に利用される多数の動きベクトル及びフレーム番号を生成する。重要性の復号化ユニット１８は、重要な情報に従ってエントロピー復号化ユニット１６からのウェーブレット係数を復号化するために含まれる。したがって、動作の間、ウェーブレット係数は、エンコーダ側で使用される技法の逆を使用することで、正しい空間順序に従って順序付けされる。
【００３６】
更に理解することができるように、重要性の復号化ユニット１８からのウェーブレット係数を部分的に復号化されたフレームに変換するための空間的な組み直しユニット２０が含まれている。動作の間、それぞれのＧＯＰに対応するウェーブレット係数は、エンコーダ側で実行される２Ｄウェーブレット変換の逆に従って実行される。このことは、本発明に従って動き補償時間フィルタリングされている部分的に復号化されたフレームを生成する。先に説明されたように、本発明に係る動き補償された時間フィルタリングは、同じＧＯＰにおける単一の基準フレームと複数の基準フレームとの両者を使用する。したがって、それぞれのＧＯＰは、Ａフレーム、Ｈフレーム及びＬフレームのミクスチャを含んでいる。
【００３７】
逆時間フィルタリングユニット２２は、エンコーダ側で実行される時間フィルタリングの逆を実行することで、空間組み直しユニット２０からの部分的に復号化されたフレームを再構成するために含まれている。時間的なピラミッドの分割スキームが使用された場合、最も高いレベルで始まりレベル１にまで下がる、逆時間フィルタリングがレベル毎に実行されることが好ましい。たとえば、図４の例では、レベル３からのフレームは、はじめに時間フィルタリングされ、レベル２のフレームが続き、レベル１のフレームがそれぞれ続く。さらに、逆時間フィルタリングユニット２２は、エンコーダ側の時間フィルタリングが単一の基準フレーム又は複数の基準フレームのいずれかに基づいているかに依存して、異なる方法をある特定のフレームに適用する。
【００３８】
時間フィルタリングが単一の基準フレームに基づいている場合、逆時間フィルタリングユニット２２は、以下のように、それぞれのＧＯＰに含まれるＨ及びＬフレームのそれぞれのペアを処理する。はじめに、Ｈ及びＬフレームのそれぞれのペアは、エンコーダ側で使用されたのと同じスケーリングファクタで乗算される。その後、Ｈ及びＬフレームのそれぞれのペアについて和及び差が計算される。それぞれの和及び差は、次いで、ある特定のＧＯＰに含まれるＨフレームとＬフレームのそれぞれのペアに対応する再構成されたフレームを提供するため、別のスケーリングファクタで割られる。適切なスケーリングファクタの例は、値２である。
【００３９】
時間フィルタリングが複数の基準フレームに基づいている場合、逆時間フィルタリングユニット２２は、それぞれのＧＯＰに含まれるＨフレームを以下のように処理する。第一に、エンコーダ側のＨフレームがあるスケーリングファクタで割られた場合、これらのフレームは、同じファクタで乗算される。それぞれのＧＯＰにおけるＨフレームは、エントロピー復号化ユニット１６により提供される動きベクトルＭＶ及びフレーム番号に基づいて再構成される。
【００４０】
Ｈフレームを再構成するため、エンコーダ側でどの種類の動き補償が実行されたかに関して、はじめに判定される。
【００４１】
後方動き予測が符号化側で使用された場合、ＧＯＰにおける最初のＡフレームの後のＨフレームが最初に再構築されることが好ましい。特に、このＨフレームは、その特定のフレームについて提供される動きベクトル及びフレーム番号に従って画素値を回復することで再構築される。この例では、動きベクトルは、最初のＡフレーム内の領域を示す。逆時間フィルタリングユニット２２は、次いで、回復された画素値を再構築されているＨフレームにおける対応する領域に加え、したがって差を実際の画素値に変換する。ＧＯＰにおけるＨフレームにおける残りは、１を超える前のフレームからの画素値が回復され、再構築されているフレームにおける対応する領域に加えられる場合を除いて、同様に再構築される。
【００４２】
前方予測がエンコーダ側で使用された場合、ＧＯＰにおける最後のＡフレームの前のＨフレームが最初に再構成されるのが好ましい。特に、このＨフレームは、その特定のフレームについて提供される動きベクトル及びフレーム番号に従って画素値を回復することで再構成される。この例では、動きベクトルは、最後のＡフレーム内の領域を示す。逆時間フィルタリングユニット２２は、その後、回復された画素値を再構成されている現在のＨフレームにおける対応する領域に加え、これにより差を実際の画素値に変換する。ＧＯＰにおけるＨフレームの残りは、１を超える後続するフレームからの画素値が回復され、再構築されているフレームにおける対応する領域に追加される場合を除いて、同様に再構築される。
【００４３】
双方向動き予測がエンコーダ側で使用された場合、最初のＡフレームの後のＨフレーム、又は最後のＡフレームの前のＨフレームのいずれかが、どの例が実現されたかに依存して最初に再構築されることが好ましい。特に、このＨフレームは、その特定のフレームについて提供される動きベクトル及びフレーム番号に従って画素値を回復することで再構成される。このケースでは、動きベクトルは、最初のＡフレーム又は最後のＡフレームにいずれか内の領域を示す。
【００４４】
先に説明されたように、双方向のＨフレームは、前のフレーム、後続するフレーム又はその両者からの整合に基づいてフィルタリングされた領域を含んでいる場合がある。直前又は直後のフレームからの整合について、画素値が回復され、処理されている現在のフレームにおける対応する領域に加えられる。両方からの整合について、前のフレーム及び後ろのフレームの両方からの値が回復され、次いで平均化される。この平均は、処理されている現在のフレームにおける対応する領域に加えられる。ＧＯＰにおけるＨフレームの残りは、１を超える前のフレーム又は後続するフレームからの画素値が回復され、再構築されているフレームにおける対応する領域に加えられる場合を除き、同様に再構築される。
【００４５】
図７には、本発明に係る単一の基準フレームと複数の基準フレームの両者に基づいた動き補償時間フィルタリングを利用したウェーブレットベースの符号化が実現される場合があるシステムの１つの例が示されている。例を介して、システムは、テレビジョン、セットトップボックス、デスクトップ、ラップトップ又はパームトップコンピュータ、パーソナルデジタルアシスタント（ＰＤＡ）、ビデオカセットレコーダ（ＶＣＲ）、デジタルビデオレコーダ（ＤＶＲ）、ＴｉＶＯ装置等のようなビデオ／イメージ記憶装置、並びにこれらの装置の一部又は組み合わせ及び他の装置の一部又は組み合わせを表している場合がある。システムは、１以上のビデオソース２６、１以上の入力／出力装置３４、プロセッサ２８、メモリ３０、及び表示装置３６を含んでいる。
【００４６】
ビデオ／イメージソース２６は、たとえば、テレビジョン受信機、ＶＣＲ又は他のビデオ／イメージ記憶装置を表している場合がある。ソース２６は、たとえば、インターネット、ワイドエリアネットワーク、メトロポリタンエリアネットワーク、ローカルエリアネットワーク、地上波ブロードキャストシステム、ケーブルネットワーク、衛星ネットワーク、ワイヤレスネットワーク、又はテレフォンネットワーク、これらのタイプのネットワーク及び他のタイプのネットワークの一部及び組み合わせといった、世界的なコンピュータネットワークコネクションを通して、１以上のサーバからのビデオを受信するため、１以上のネットワークコネクションを代替的に表す場合がある。
【００４７】
入力／出力装置３４、プロセッサ２８及びメモリ３０は、通信媒体３２を通して通信する。通信媒体３２は、たとえば、バス、通信ネットワーク、１以上の回路の内部コネクション、サーキットカード又は他の装置、並びに、これらの通信媒体及び他の通信媒体の一部及び組み合わせを表している場合がある。ソース２６からの入力ビデオデータは、表示装置３６に供給される出力ビデオ／イメージを生成するため、メモリ３０に記憶され、プロセッサ２８により実行される１以上のソフトウェアプログラムに従って処理される。
【００４８】
特に、メモリ３０に記憶されるソフトウェアプログラムは、単一の基準フレーム及び複数の基準フレームの両方に基づいた動き補償時間フィルタリングを利用するウェーブレットベースの符号化を含んでいる。この実施の形態では、単一の基準フレーム及び複数の基準フレームの両方に基づいた動き補償時間フィルタリングを利用したウェーブレットベースの符号化は、システムにより実行されるコンピュータ読取り可能なコードにより実現される。コードは、メモリ３０に記憶されるか、ＣＤ−ＲＯＭ又はフロプティカルディスクのようなメモリ媒体から読取り／ダウンロードされる場合がある。他の実施の形態では、ハードウェア回路は、本発明を実現するためのソフトウェア命令の代わりに、又は該ソフトウェアと組み合わせて使用される場合がある。
【００４９】
本発明は特定の例の観点で先に説明されたが、本発明は、本明細書に開示された例に限定されるものとして意図されていないことを理解されたい。したがって、本発明は、請求項の範囲及び精神内に含まれる様々な構造及び変更をカバーすることが意図されている。
【図面の簡単な説明】
【００５０】
【図１】公知の動き補償時間フィルタリング技術の態様を例示する図である。
【図２】本発明に係るエンコーダの一例のブロック図である。
【図３】２Ｄウェーブレット変換の一例を例示するブロック図である。
【図４】本発明に係る時間フィルタリングの一例を例示する図である。
【図５】本発明に係る時間フィルタリングの別の例を例示する図である。
【図６】本発明に係るデコーダの一例のブロック図である。
【図７】本発明に係るシステムの一例のブロック図である。
【図１】
2005533425.tif 000003
【図２】
2005533425.tif 000004
【図３】
2005533425.tif 000005
【図４】
2005533425.tif 000006
【図５】
2005533425.tif 000007
【図６】
2005533425.tif 000008
【図７】
2005533425.tif 000009
【国際調査報告】
2005533425.tif 000010
2005533425.tif 000011
2005533425.tif 000012