(57)【要約】  ビデオ・フレームのシーケンスを含むビデオ・シーケンスをコーディングするためのビデオ・コーディング・システムであって、各フレームはピクセル値のアレイを有し、デコーディング・プロセスにおいてピクセル値を再構成するために補間フィルタが規定されるビデオ・コーディング・システム。システムは、所定のベース・フィルタと比較して差をつけて補間フィルタの係数をコーディングして、差分値の組を与える。ベース・フィルタ係数がエンコーダおよびデコーダの両方に対して既知であり、ベース・フィルタ係数をビデオ・シーケンスで使用される実際のフィルタに対して統計的に合理的に近くすることができるために、デコーダは、差分値の組に基づいてピクセル値を再構成することができる。
2005514872.tif 000002
【特許請求の範囲】
【請求項１】
デジタル・ビデオ・シーケンスにおける画像をエンコーディングしてエンコーディングされたビデオ・データを与えるための方法であって、デジタル・ビデオ・シーケンスはビデオ・フレームのシーケンスを含み、各フレームは複数のピクセル値を有し、複数の係数値によって表わされる複数の係数を有する補間フィルタを用いて、エンコーディングされたビデオ・データから前記デジタル・ビデオ・シーケンスのフレーム内のピクセル値を再構成し、前記方法は、
補間フィルタの係数値を、所定のベース・フィルタと比較して差をつけてコーディングして、差分値の組を形成するステップと、
エンコーディングされたビデオ・データにおける前記差分値の組を適合させて、ピクセル値の再構成が前記差分値の組に基づくようにするステップと、
を含むことを特徴とする方法。
【請求項２】
エンコーディングされたビデオ・データをビデオ・エンコーダからビデオ・デコーダへ送信し、
エンコーディングされたビデオ・データは、前記差分値の組を示すエンコーディングされた値を含み、前記差分値の組を、ビデオ・エンコーダからビデオ・デコーダへ送信する前にエントロピ・コーディングすることを特徴とする、請求項１に記載の方法。
【請求項３】
所定のベース・フィルタが、補間フィルタの係数値に統計的に類似する値の複数のさらなる係数を有することを特徴とする、請求項１に記載の方法。
【請求項４】
補間フィルタの係数を、選択された画像セグメント内でのピクセル値を補間するように選択することを特徴とする、請求項１に記載の方法。
【請求項５】
所定のベース・フィルタが、固定された係数値を有することを特徴とする、請求項１に記載の方法。
【請求項６】
所定のベース・フィルタが、ビデオ・シーケンスの統計値に適合される複数の係数を有することを特徴とする、請求項１に記載の方法。
【請求項７】
補間フィルタが対象的であり、フィルタ係数の２分の１のみがコーディングされることを特徴とする、請求項１に記載の方法。
【請求項８】
補間フィルタの係数値が、第１の係数値から最後の係数値まで、ある順序でコーディングされることを特徴とする、請求項１に記載の方法。
【請求項９】
係数値がコーディングされるある順序が、前記係数の空間的な順序とは異なることを特徴とする、請求項８に記載の方法。
【請求項１０】
補間フィルタの係数値の合計が固定されていることを特徴とする、請求項８に記載の方法。
【請求項１１】
所定のベース・フィルタが複数のさらなる係数値を有し、所定のベース・フィルタのさらなる係数値に一定の値を加えて、補間フィルタの係数値と所定のベース・フィルタのさらなる係数値との間の差分の振幅を減らすことを特徴とする、請求項１に記載の方法。
【請求項１２】
ビデオ・フレームのシーケンスを有するデジタル・ビデオ・シーケンスにおける画像をエンコーディングして、ビデオ・シーケンスを示すエンコーディングされたビデオ・データを与える手段であって、ビデオ・シーケンスの各フレームは複数のピクセル値を含む手段と、
デコーディング・プロセスにおいて前記デジタル・ビデオ・シーケンスのフレーム内のピクセル値を再構成するための補間フィルタを規定する手段であって、補間フィルタは複数の係数値によって表わされる多くの係数を有する手段と、
を備えるビデオ・エンコーダであって、
補間フィルタに対応して、前記補間フィルタの係数値と所定のベース・フィルタの係数値との間の差分を計算して差分値の組を与える手段と、
エンコーディングされたビデオ・データにおける前記差分値の組を適合させて、デコーディング・プロセスにおけるピクセル値の再構成が前記差分値の組に基づくようにする手段と、
を備えることを特徴とするビデオ・エンコーダ。
【請求項１３】
エンコーディングされたビデオ・データにおける前記差分値の組を適合させる前に前記差分値の組をエントロピ・コーディングするための手段をさらに備えることを特徴とする、請求項１２に記載のビデオ・エンコーダ。
【請求項１４】
補間フィルタが対称的であり、エントロピ・コーディング手段を、前記差分値の組の２分の１のみをエンコーディングするように用意することを特徴とする、請求項１３に記載のビデオ・エンコーダ。
【請求項１５】
ビデオ・フレームのシーケンスを含むデジタル・ビデオ・シーケンスを示すビデオ・データをデコーディングする方法であって、ビデオ・シーケンスの各フレームは複数のピクセル値を含み、複数の係数値によって表わされる複数の係数を有する補間フィルタを用いて前記デジタル・ビデオ・シーケンスのフレーム内のピクセル値を再構成し、前記方法は、
ビデオ・データから差分値の組を回収するステップであって、前記差分値の組は、補間フィルタの係数値と所定のベース・フィルタの係数値との間の差分を示すステップと、
前記差分値の組と所定のベース・フィルタとに基づいて、さらなるフィルタを構成するステップと、
さらなるフィルタに基づいてピクセル値を再構成するステップと、
を含むことを特徴とする方法。
【請求項１６】
所定のベース・フィルタが、複数のさらなる係数値によって表わされる複数のさらなる係数を有し、
前記差分値の組を所定のベース・フィルタのさらなる係数値と合計してさらなるフィルタを構成するステップ、をさらに含むことを特徴とする、請求項１５に記載の方法。
【請求項１７】
前記差分値の組を、ビデオ・データから、エントロピ・デコーディングによって回収することを特徴とする、請求項１６に記載の方法。
【請求項１８】
ビット・ストリーム内のビデオ・データを受信するための手段であって、受信したビデオ・データは、ビデオ・フレームのシーケンスを含むデジタル・ビデオ・シーケンスを示し、ビデオ・シーケンスの各フレームは複数のピクセル値を含む手段、を備えるビデオ・デコーダであって、
ビット・ストリームから差分値の組を回収するための手段と、
所定のベース・フィルタと前記差分値の組とに基づいて補間フィルタを構成するための手段と、
補間フィルタと受信したビデオ・データとに基づいてビデオ・シーケンスのフレーム内のピクセル値を再構成するための手段と、
を備えることを特徴とするビデオ・デコーダ。
【請求項１９】
所定のベース・フィルタが、さらなる係数値によって表わされる複数のさらなる係数を有し、
前記差分値の組を所定のベース・フィルタのさらなる係数値と合計して補間フィルタを構成する手段、をさらに備えることを特徴とする、請求項１８に記載のビデオ・デコーダ。
【請求項２０】
ビット・ストリームからの前記差分値の組をエントロピ・デコーディングする手段、をさらに備えることを特徴とする、請求項１８に記載のビデオ・デコーダ。
【請求項２１】
ビデオ・フレームのシーケンスを有するデジタル・ビデオ・シーケンスにおける画像をエンコーディングして、ビデオ・シーケンスを示すビット・ストリームでのエンコーディングされたビデオ・データを与えるエンコーダであって、ビデオ・シーケンスの各フレームは複数のピクセル値を含み、前記エンコーダは、デコーディング・プロセスにおいて前記デジタル・ビデオ・シーケンスのフレーム内のピクセル値を再構成するための補間フィルタを規定する手段であって、補間フィルタは複数の係数値によって表わされる複数のフィルタ係数を有する手段、を有するエンコーダと、
ビット・ストリームでのエンコーディングされたビデオ・データを受信して、デコーディング・プロセスにおいてビデオ・シーケンスのフレーム内のピクセル値を再構成するためのデコーダと、
を備えるビデオ・コーディング・システムであって、
エンコーダがさらに、
補間フィルタと所定のベース・フィルタとの間の差分を計算して差分値の組を与える手段と、
ビット・ストリームでの前記差分値の組を適合させる手段と、を備え、
デコーディングは、
ビット・ストリームから前記差分値の組を回収するための手段と、
所定のベース・フィルタと回収された差分値の組とに基づいてさらなるフィルタを構成して、デコーディング・プロセスにおけるピクセル値の再構成がさらなるフィルタに基づくようにする手段と、
を備えることを特徴とするビデオ・コーディング・システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、米国仮特許出願第６０／３４８，８１１号明細書（２００２年１月１４日出願）に基づいており、この仮出願の特典を主張する。
【０００２】
本発明はビデオ・コーディングにおける動き補償に関する。より具体的には、本発明は、動き補償ビデオ・エンコーダおよびデコーダにおける画像ピクセル値の再構成に用いられる補間フィルタの係数のコーディング方法に関する。また本発明は、本発明の方法を実施する対応するビデオ・エンコーダ、ビデオ・デコーダ、およびビデオ送信システムに関する。
【背景技術】
【０００３】
現在、様々なビデオ・コーディング標準が存在している。これらには、国際電気通信連合電気通信標準化部門（ＩＴＵ−Ｔ）勧告Ｈ．２６３、および国際標準化機構（ＩＳＯ）動画符号化専門グループ（ＭＰＥＧ）標準ＭＰＥＧ−１、ＭＰＥＧ−２、およびＭＰＥＧ−４などがある。これらのビデオ・コーディング標準は、動き補償予測および予測エラー・コーディングを用いることを基礎としている。動き補償予測は、ビデオ・シーケンス内の連続フレームを分析およびコーディングすること、ならびに動き情報を用いて画像ブロックを再構成することによって行なわれる。画像ブロックの再構成は、画像（ピクセル）値を、必要なピクセルおよびサブ・ピクセルの位置用に生成することができる動き補間フィルタを用いて作り上げられる。動き補償予測と補間フィルタを用いる画像再構成との基本原理を、以下の段落で、より詳細に説明する。
【０００４】
デジタル・ビデオ・シーケンスは、普通のフィルム上に記録される動画と同様に、静止画像（「フレーム」と言われることが多い）のシーケンスを含んでいる。フレームを次々と比較的速い速度で、通常は１５〜３０フレーム／秒で表示することによって、動きの錯覚が形成される。フレーム速度が比較的速いために、連続フレームの画像コンテントは、かなり類似する傾向がある。そのため連続フレームは、かなりの量の冗長な情報を含んでいる。
【０００５】
デジタル・ビデオ・シーケンスの各フレームは、画像ピクセルのアレイを含んでいる。一般的に使用されるデジタル・ビデオ形式（クォータ一般交換形式（ＱＣＩＦ）として知られる）では、フレームは１７６×１４４ピクセルのアレイを含んでおり、すなわち各フレームは２５，３４４ピクセルを有している。フレームの各ピクセルは、ある数のビットによって表わされる。これは、ピクセルに対応する画像の領域の輝度および／またはカラー・コンテント（クロミナンス）に関する情報を伝える。一般には、いわゆるＹＵＶカラー・モデルを用いて、画像の輝度およびクロミナンス・コンテントを表わす。輝度またはＹ成分は画像の強度（明るさ）を表わし、一方で画像のカラー・コンテントは、ＵおよびＶと名付けられる２つのクロミナンス成分によって表わされる。
【０００６】
画像コンテントの輝度／クロミナンス表示に基づくカラー・モデルの場合、原色（赤、緑、および青、ＲＧＢ）を含む表示に基づくカラー・モデルと比べて、ある程度の利点が得られる。人間の視覚システムはカラー変化よりも強度変化に対して敏感であるので、ＹＵＶカラー・モデルでは、クロミナンス成分（Ｕ、Ｖ）に対して用いる空間分解能を、輝度成分（Ｙ）に対する分解能よりも低くすることによって、この特性を利用している。このようにして、画像内のカラー情報のコーディングに必要な情報量を、画像品質の劣化を軽微に留めて、減らすことができる。
【０００７】
クロミナンス成分の空間分解能を低くすることは通常、空間的なサブ・サンプリングによって実現される。通常、１６×１６の画像ピクセルのブロックを、輝度情報を表わす１６×１６値の１ブロックによってコーディングし、２つのクロミナンス成分をそれぞれ、１６×１６アレイの輝度値の画像面積に等しい画像面積を表わす８×８値の１つのブロックによって表わす。このようにしてクロミナンス成分を、水平および垂直方向に２倍、空間的にサブ・サンプリングする。結果として生じる１つの１６×１６輝度ブロックと２つの８×８クロミナンス・ブロックとのアセンブリは普通、ＹＵＶマクロブロック、または略してマクロブロックと言われる。
【０００８】
ＱＣＩＦ画像には１１×９のマクロブロックが含まれている。輝度ブロックとクロミナンス・ブロックとを、８ビット分解能を用いて表わした場合（数で０〜２５５の範囲にある）、マクロブロックごとに必要となるビット総数は、（１６×１６×８）＋２×（８×８×８）＝３０７２ビットとなる。したがってＱＣＩＦ形式のビデオ・フレームを、成分あたり８ビット数分解能を用いて表わすのに必要なビット数は、９９×３０７２＝３０４，１２８ビットとなる。したがって、一連のこのようなＱＣＩＦ形式フレームを含むビデオ・シーケンスを３０フレーム／秒の速度で送信、記録、または表示するのに必要なデータ量は、９Ｍｂｐｓ（１００万ビット／秒）よりも多くなる。このようなデータ速度は、ビデオ記録、送信、および表示用途で使用するには実際的ではない。と言うのは、非常に大きな記憶容量、送信チャネル容量、およびハードウェア性能が要求されるからである。このために、ビデオ・コーディング標準、たとえば前述したようなものが、許容範囲の画像品質を保持する一方でビデオ・データを表現および送信するのに必要な情報量を減らすために開発されている。
【０００９】
前述した各ビデオ・コーディング標準は、特性の異なるビデオ記録または送信システムでの適用に適応するように作られている。たとえばＩＳＯＭＰＥＧ−１標準は、利用可能なデータ・バンド幅が最大で約１．５Ｍビット／秒の状況で使用することに対して具体的にデザインされている。ＭＰＥＧ−２ビデオ・コーディング標準は主に、デジタル記憶媒体およびビデオ放送または通信（利用可能なデータ・バンド幅が最大で約１０Ｍビット／秒）に対して適用できる。ＩＴＵ−Ｔ勧告Ｈ．２６３は、利用可能なバンド幅が一般にはるかに低いシステムでの使用が意図されている。ＩＴＵ−Ｔ勧告Ｈ．２６３は、ビデオ・データをリアル・タイムで固定回線ネットワーク上、たとえばＩＳＤＮ（総合デジタル通信網）または従来のＰＳＴＮ（公衆交換電話網）（利用可能なデータ送信バンド幅が通常６４ｋビット／秒のオーダである）上で、送信する状況での使用に特に適している。送信が少なくとも部分的に無線通信リンク上で行なわれる携帯テレビ電話では、利用可能なバンド幅は２０ｋビット／秒と小さい可能性がある。
【００１０】
現在存在する種々のビデオ・コーディング標準は、種々の状況での使用に適応するように作られているが、送信すべき情報量を減らすためにそれらが用いるメカニズムは、多くの共通する特徴を有している。特にそれらはすべて、送信すべきビデオ・シーケンスにおいて冗長で知覚的に関連のない情報量を減らすように作用する。ビデオ・シーケンスには基本的に３つのタイプの冗長性が存在する。すなわち空間的冗長性、時間的冗長性、およびスペクトル冗長性である。空間的冗長性は、シーケンスの個々のフレーム内の隣接するピクセル間の相関性を記述するために用いられる用語である。時間的な冗長性は、シーケンスの１つのフレーム内に現れる物体が、その後のフレームに現れる可能性があるという事実を表わす。スペクトル冗長性は、同じ画像の異なるカラー成分間の相関性を指す。
【００１１】
通常、所定の画像シーケンスにおいて種々の形態の冗長性を単に減らすだけでは、十分に効率的な圧縮を実現することはできない。そのため現在のビデオ・エンコーダのほとんどは、自覚される範囲で最も重要性が低いビデオ・シーケンス部分の品質も落としている。加えて、圧縮ビデオ・ビット・ストリームの冗長性それ自体は、効率的な低損失エンコーディングによって低減される。通常、これはエントロピ・コーディングを用いて実現される。
【００１２】
動き補償予測は、時間的な冗長性が低減される形式であり、ビデオ・シーケンスにおけるいくつか（しばしば多くの）フレームのコンテントを、フレーム間の画像の物体または領域の動きを追跡することによって、シーケンスの他のフレームから「予測する」。動き補償予測を用いて圧縮されるフレームは通常、インター・コーデッドまたはＰフレームと言われ、動き補償予測を用いないで圧縮されるフレームは、イントラ・コーデッドまたはＩフレームと言われる。予測される（動き補償される、インター・コーデッドな）画像が、十分な品質の画像コントラスを表わすほどに十分に正確であることはめったにない。そのため、空間的に圧縮される予測エラー（ＰＥ）フレームも、各インター・フレームに付随する。多くのビデオ圧縮方式は、双方向性の予測フレームを用いることもでき、これは一般にＢピクチャまたはＢフレームと言われる。Ｂピクチャは、基準またはいわゆる「アンカ」ピクチャ対（ＩまたはＰフレーム）の間に挿入され、アンカ・ピクチャのいずれか一方または両方から予測される。
【００１３】
添付図面の図３に、通常の圧縮ビデオ・シーケンス内で生じる種々のタイプのフレームを例示する。図から分かるように、シーケンスは、イントラまたはＩフレーム３０から始まる。図３では、矢印３３によって、Ｐフレーム３４が形成される「前方」予測プロセスを示す。Ｂフレーム３６が形成される双方向性予測プロセスを、矢印３１ａおよび３１ｂによって、それぞれ示す。
【００１４】
図１および図２に、動き補償予測を用いる一般的なビデオ・コーディング・システムの概略的なダイアグラムを示す。図１では、動き補償予測を用いるエンコーダ１０を例示する。図２では、対応するデコーダ２０を例示する。図１に示すエンコーダ１０は、動き領域推定ブロック１１、動き領域コーディング・ブロック１２、動き補償予測ブロック１３、予測エラー・コーディング・ブロック１４、予測エラー・デコーディング・ブロック１５、多重化ブロック１６、フレーム・メモリ１７、および加算器１９を備える。デコーダ２０は、動き補償予測ブロック２１、予測エラー・デコーディング・ブロック２２、逆多重化ブロック２３、およびフレーム・メモリ２４を備える。
【００１５】
動き補償予測を用いるビデオ・コーダの動作原理は、予測エラー・フレームＥn（ｘ、ｙ）内の情報量を最小限にすることである。予測エラー・フレームＥn（ｘ、ｙ）は、コーディングされている現在のフレームＩn（ｘ、ｙ）と予測フレームＰn（ｘ、ｙ）との間の差分である。したがって予測エラー・フレームは次のように規定される。
【００１６】
【数１】
2005514872.tif 000003
【００１７】
予測フレームＰn（ｘ、ｙ）は、基準フレームＲn（ｘ、ｙ）のピクセル値を用いて作られる。基準フレームＲn（ｘ、ｙ）は一般的に、すでにコーディングされて送信されたフレームの１つ（たとえば現在のフレームの直前のフレーム）であり、またエンコーダ１０のフレーム・メモリ１７から入手することができる。より具体的には、予測フレームＰn（ｘ、ｙ）は、現在のフレーム内のピクセルに実質的に一致する基準フレームＲn（ｘ、ｙ）内の「予測ピクセル」を見つけることによって構成される。現在のフレーム内のピクセルと基準フレーム内の対応する予測ピクセルとの間の関係（たとえば相対的な位置、回転、比率など）を記述する動き情報を得て、動き情報に従って予測ピクセルを移動させることによって予測フレームが形成される。このようにして予測フレームは、基準フレーム内のピクセル値を用いて、現在のフレームの概略的な表現として構成される。したがって前述の予測エラー・フレームは、予測フレームによって得られる現在のフレームの概略的な表現と現在のフレームそれ自体との間の差分を表わす。動き補償予測を用いるビデオ・エンコーダによって得られる基本的な有利点は、現在のフレームの比較的コンパクトな記述を得ることが、その予測を形成するために必要となる動き情報とともに、予測エラー・フレーム内の付随する予測エラー情報によって、可能となるという事実から生じる。
【００１８】
フレーム内には多数のピクセルがあるために、各ピクセルに対する別個の動き情報をデコーダへ送信することは一般的に効率的ではない。その代わりに、ほとんどのビデオ・コーディング方式では、現在のフレームをもっと大きな画像セグメントＳkに分割して、セグメントに関する動き情報をデコーダへ送信している。たとえば通常は、フレームの各マクロブロックに対して動き情報を与えて、そしてマクロブロック内のすべてのピクセルに対して同じ動き情報を用いる。現在開発中のＩＴＵ−Ｔ勧告Ｈ．２６Ｌなどの一部のビデオ・コーディング標準では、マクロブロックをもっと小さいブロックに分割して、小さいブロックのそれぞれに独自の動き情報を与える。
【００１９】
動き情報は通常、動きベクトル［Δｘ（ｘ、ｙ）、Δｙ（ｘ，ｙ）］の形を取る。一対の数Δｘ（ｘ、ｙ）およびΔｙ（ｘ，ｙ）によって、基準フレームＲn（ｘ、ｙ）内のピクセルに対する現在のフレームＩn（ｘ、ｙ）内のピクセル（ｘ、ｙ）の水平および垂直方向の変位が表わされる。動きベクトル［Δｘ（ｘ、ｙ）、Δｙ（ｘ，ｙ）］は、動き領域推定ブロック１１において計算され、現在のフレームの動きベクトルの組［Δｘ（・）、Δｙ（・）］は動きベクトル領域と言われる。
【００２０】
通常、現在のビデオ・フレーム内でのマクロブロックの位置は、その左上角の（ｘ、ｙ）座標によって特定される。したがってフレームの各マクロブロックに動き情報が付随するビデオ・コーディング方式では、現在のフレームＩn（ｘ、ｙ）内のマクロブロックの左上角を表わすピクセルの、基準フレームＲn（ｘ、ｙ）内の予測ピクセルの実質的に対応するブロックの左上角のピクセルに対する水平および垂直方向の変位Δｘ（ｘ、ｙ）およびΔｙ（ｘ、ｙ）が、各動きベクトルによって記述される（図４ｂに示す）。
【００２１】
動き推定は、計算が集約される作業である。基準フレームＲn（ｘ、ｙ）と、たとえば現在のフレーム内のＮ×Ｎピクセルを含む正方形のマクロブロック（図４ａに示す）とを仮定すると、動き推定の目標は、ある基準にしたがって現在のピクチャ内のマクロブロックの特性にマッチングする基準フレーム内のＮ×Ｎピクセル・ブロックを見つけることである。この基準は、たとえば現在のフレーム内のマクロブロックのピクセルと、それが比較される基準フレーム内のピクセルのブロックとの間の絶対差分和（ＳＡＤ）とすることができる。このプロセスは、「ブロック・マッチング」として一般に知られている。実在の物体はスケール変化を、さらに回転および歪みを経る可能性があるため、一般に、マッチングすべきブロックの幾何形状と基準フレーム内のそれとは同じである必要はないことを理解されたい。しかし現在の国際的なビデオ・コーディング標準、たとえば前述したようなものでは、並進運動モデルのみが用いられており（以下を参照）、したがって固定された矩形幾何形状で十分である。
【００２２】
理想的には、マッチングを見つける最高の可能性を得るためには、基準フレームの全体をサーチする必要がある。しかしこれは、ビデオ・エンコーダに課される計算の負担が大きくなりすぎるために、非現実的である。その代わりに図４ｃに示すように、サーチ領域を一般に、現在のフレーム内のマクロブロックの本来の位置の周囲の領域［−ｐ、ｐ］に限定する。
【００２３】
エンコーダ１０からデコーダ２０へ送信すべき動き情報をさらに減らすために、エンコーダ１０の動き領域コーディング・ブロック１２内で、動きベクトル領域を動きモデルを用いて表わすことによってコーディングする。このプロセスでは、画像セグメントの動きベクトルをある所定の関数を用いて再表現するか、または言い換えれば、動きベクトル領域をモデルを用いて表わす。現在使用されている動きベクトル領域モデルのほとんど全てが、加法的な動きモデルであり、以下の式に従う。
【００２４】
【数２】
2005514872.tif 000004
【００２５】
【数３】
2005514872.tif 000005
【００２６】
ここで、ａiおよびｂiは動き係数である。動き係数は、デコーダ２０に送信される（図１および２における情報ストリーム２）。関数ｆiおよびｇiは、動き領域の基底関数である。これらは、エンコーダおよびデコーダの両方に対して既知である。概略的な動きベクトル領域
【００２７】
【数４】
2005514872.tif 000006
【００２８】
を、係数および基底関数を用いて構成することができる。基底関数がエンコーダ１０およびデコーダ２０の両方に対して既知である（すなわち格納されている）ために、エンコーダへ送信する必要があるのは動き係数のみであり、したがってフレームの動き情報を表わすのに必要な情報量を減らすことができる。
【００２９】
最も単純な動きモデルは、各セグメントの動きベクトルを記述するのに２つの係数のみを必要とする並進運動モデルである。動きベクトルの値は以下のように与えられる。
【００３０】
【数５】
2005514872.tif 000007
【００３１】
これは、ＩＴＵ−Ｔ勧告Ｈ．２６３およびＩＳＯ標準ＭＰＥＧ−１、ＭＰＥＧ−２、ＭＰＥＧ−４において、１６×１６および８×８ブロックの動きを記述するために用いられるモデルである。並進運動モデルを用いるシステムは通常、フル・ピクセル分解能またはフル・ピクセル分解能の整数分の１、たとえばピクセル分解能の２分の１または４分の１で、動き推定を行なう。
【００３２】
予測フレームＰn（ｘ、ｙ）は、エンコーダ１０の動き補償予測ブロック１３において構成され、以下のように与えられる。
【００３３】
【数６】
2005514872.tif 000008
【００３４】
予測エラー・コーディング・ブロック１４では、予測エラー・フレームＥn（ｘ、ｙ）が通常、いくつかの２次元関数の有限級数として表わすこと（変換）によって、圧縮される。たとえば２次元離散コサイン変換（ＤＣＴ）を用いることができる。変換係数を、デコーダへ送信する（図１および２における情報ストリーム１）前に、量子化してエントロピ（たとえばハフマン（Ｈｕｆｆｍａｎ））コーディングする。量子化によってエラーが導入されるために、この動作によって通常、予測エラー・フレームＥn（ｘ、ｙ）内で多少の劣化（情報の損失）が生じる。この劣化を補償するために、エンコーダ１０は、予測エラー・デコーディング・ブロック１５も備えている。予測エラー・デコーディング・ブロック１５では、デコーディングされた予測エラー・フレーム
【００３５】
【数７】
2005514872.tif 000009
【００３６】
が、変換係数を用いて構成される。この局所的にデコーディングされた予測エラー・フレームが、加算器１９によって予測フレームＰn（ｘ、ｙ）に加えられ、結果として生じるデコーディングされた現在のフレーム
【００３７】
【数８】
2005514872.tif 000010
【００３８】
がフレーム・メモリ１７内に格納されて、次の基準フレームＲn+1（ｘ、ｙ）としてさらに用いられる。
【００３９】
マルチプレクサ１６において、動きベクトルについての情報を伝える情報ストリーム２を予測エラーについての情報と組み合わせ、通常は少なくともこれら２つのタイプの情報を含む情報ストリーム３をデコーダ２０へ送る。
【００４０】
次に、対応するビデオ・デコーダ２０の動作について説明する。
【００４１】
デコーダ２０のフレーム・メモリ２４には、すでに再構成された基準フレームＲn（ｘ、ｙ）が格納されている。デコーダ２０の動き補償予測ブロック２１では、すでに再構成された基準フレームＲn（ｘ、ｙ）の受信された動き係数情報とピクセル値とを用いて、式５に従って予測フレームＰn（ｘ、ｙ）が構成される。予測エラー・デコーディング・ブロック２２では、予測エラー・フレームＥn（ｘ、ｙ）の送信された変換係数を用いて、デコーディングされた予測エラー・フレーム
【００４２】
【数９】
2005514872.tif 000011
【００４３】
が構成される。次に、デコーディングされた現在のフレーム
【００４４】
【数１０】
2005514872.tif 000012
【００４５】
のピクセルが、予測フレームＰn（ｘ、ｙ）とデコーディングされた予測エラー・フレーム
【００４６】
【数１１】
2005514872.tif 000013
【００４７】
とを加えることによって、再構成される。
【００４８】
【数１２】
2005514872.tif 000014
【００４９】
このデコーディングされた現在のフレームを、次の基準フレームＲn+1（ｘ、ｙ）としてフレーム・メモリ２４に格納しても良い。
【００５０】
前述したデジタル・ビデオの動き補償エンコーディングおよびデコーディングの説明では、基準フレームＲn（ｘ、ｙ）に対する現在のフレーム内のマクロブロックの動きを記述する動きベクトル［Δｘ（ｘ、ｙ）、Δｙ（ｘ，ｙ）］は、基準フレーム内のどのピクセルも指し示すことができる。これは、デジタル・ビデオ・シーケンスのフレーム間の動きを表わすことができるのは、フレーム内の画像ピクセルによって決定される分解能（いわゆるフル・ピクセル分解能）においてのみであることを意味する。しかし実際の動きは精度が定まらないため、前述したシステムによって与えられるのは、デジタル・ビデオ・シーケンスの連続フレーム間の動きについての概略的なモデリングのみである。通常、フル・ピクセル分解能を有するビデオ・フレーム間の動きについてのモデリングは精度が十分ではないため、各マクロブロックまたはフレームに関連する予測エラー（ＰＥ）情報を効率的に最小化することができない。そのため実際の動きについてのもっと正確なモデリングを可能にし、エンコーダからデコーダへ送信すべきＰＥ情報を減らすことを促進するために、多くのビデオ・コーディング標準では、動きベクトルが画像ピクセル「の中間」を指し示すことができる。言い換えれば、動きベクトルが「サブ・ピクセル」分解能を有することができる。動きベクトルがサブ・ピクセル分解能を有することができるようになると、行なうべきエンコーディングおよびデコーディング動作の複雑さが増加するため、動きベクトルが有しても良い空間分解能の程度を限定することがやはり有利である。そのためビデオ・コーディング標準、たとえば前述したようなものでは通常、フル、２分の１、または４分の１ピクセル分解能のみを有することができる。
【００５１】
図５の典型的な方法で例示するように、サブ・ピクセル分解能を有する動き推定を、動きベクトルがフルまたは２分の１ピクセル分解能を有し得る一般的なビデオ・コーディング方式に対して、２段階プロセスとして実行することができる。第１のステップでは、フル・ピクセル分解能を有する動きベクトルを、前述したブロック・マッチング・プロセスなどの適切な動き推定方式を用いて決定する。図５に、結果として生じるフル・ピクセル分解能を有する動きベクトルを示す。
【００５２】
第２の段階では、第１の段階で決定された動きベクトルを精緻化して、所望の２分の１ピクセル分解能を得る。図５に例示した例では、これは、１６×１６ピクセルの８つの新しいサーチ・ブロックを形成することによって行なわれる。図５では、各ブロックの左上角の位置がＸによってマーキングされている。これらの位置は、［Δｘ＋ｍ／２、Δｙ＋ｎ／２］によって示される。ここでｍおよびｎは、−１、０、＋１の値を取ることができるが、同時には０にはなれない。本来の画像ピクセルのピクセル値のみが既知であるため、２分の１ピクセル位置にあるサブ・ピクセルの値（たとえば、輝度および／またはクロミナンス値）が、８つの新しいサーチ・ブロックのそれぞれに対して、ある補間方式の形態を用いて推定される。
【００５３】
サブ・ピクセルの値を２分の１ピクセル分解能で補間したら、８つのサーチ・ブロックのそれぞれを、動きベクトルが探索されているマクロブロックと比較する。フル・ピクセル分解能を有する動きベクトルを決定するために行なうブロック・マッチング・プロセスの場合と同様に、マクロブロックを、ある基準たとえばＳＡＤにしたがって８つのサーチ・ブロックのそれぞれと比較する。比較の結果、最小のＳＡＤ値が一般的に得られる。ビデオ・シーケンスにおける動きの種類に応じて、最小値は、本来の動きベクトルによって特定される位置（フル・ピクセル分解を有する）に対応しても良いし、２分の１ピクセル分解能を有する位置に対応しても良い。こうして、動きベクトルがフル・ピクセル位置を指し示すべきかサブ・ピクセル位置を指し示すべきかを決定することができ、サブ・ピクセル分解能が適切である場合には、正確なサブ・ピクセル分解能の動きベクトルを決定することができる。
【００５４】
実際には、基準フレーム内のサブ・ピクセル値を推定することは、周囲のピクセル値からサブ・ピクセル値を補間することによって行なわれる。一般に、非整数位置（ｘ、ｙ）＝（ｎ＋Δｘ、ｍ＋Δｙ）に配置されるサブ・ピクセル値Ｆ（ｘ、ｙ）を補間することは２次元動作として定式化することができ、以下のように数学的に表わされる。
【００５５】
【数１３】
2005514872.tif 000015
【００５６】
ここで、ｆ（ｋ、ｌ）はフィルタ係数であり、ｎおよびｍは、ｘおよびｙをそれぞれ切り捨てによって整数値にすることによって得られる。通常、フィルタ係数はｘおよびｙの値に依存し、補間フィルタは通常、いわゆる「分離可能なフィルタ」である。この場合、サブ・ピクセル値Ｆ（ｘ、ｙ）は以下のように計算することができる。
【００５７】
【数１４】
2005514872.tif 000016
【００５８】
動きベクトルはエンコーダで計算される。対応する動き係数がいったんデコーダに送信されたら、エンコーダで使用される補間方法と同一の補間方法を用いて必要なサブ・ピクセルを補間することは簡単な事である。このようにして、フレーム・メモリ２４内で基準フレームに続くフレームを、基準フレームおよび送信すべき動きベクトルから再構成することができる。
【００５９】
従来、ビデオ・エンコーダおよびデコーダで使用される補間フィルタには固定のフィルタ係数値が用いられ、同じフィルタ（すなわち同じフィルタ係数値を有する同じタイプのフィルタ）を、コーディングされているビデオ・シーケンスのすべてのフレームに対して用いている。同じフィルタをすべてのビデオ・シーケンスに対して、それらの種類およびそれらが取得された（捕らえられた）方法に関係なくさらに用いる。ウェディ（Ｗｅｄｉ）（「動き補償ハイブリッド・ビデオ・コーディングに対する適合可能な補間フィルタ（Adaptive Interpolation for Motion Compensated Hybrid Video Coding）」、ピクチャ・コーディング・シンポジウム（Picture Coding Symposium）（ＰＣＳ２００１）、ソウル、韓国、２００１年４月）では、適合可能なフィルタ係数値を有する補間フィルタを用いて、ビデオ・コーディング・プロセスにおけるある種の欠点を補償することが提案されている。特にウェディ（Ｗｅｄｉ）は、画像取得プロセスにおけるエイリアシング、許容される動きベクトルの分解能が有限であること、および並進運動モデルの妥当性が限られていることによって、さらなる予測エラーがどのように導入されるかについて説明している。ビデオ画像内のエイリアシングは、画像取得プロセスにおいて非理想的なロー・パス・フィルタを用いること（および結果として生じるナイキスト(Ｎｙｑｕｉｓｔ)・サンプリング法則の不履行）のために生じる。エイリアシングによって、ビデオ・シーケンス内での動き補償予測が妨げられ、さらなる予測エラー成分が生じる。また許容される動きベクトルの精度が有限であること（たとえばフル・ピクセル、２分の１ピクセル、または４分の１ピクセル）と、並進運動モデルが表わせるのは連続ビデオ・フレーム間の水平および垂直の動きのみであることとによっても、さらなる予測エラー寄与が生じる。ウェディはさらに、補間フィルタのフィルタ係数値を適合させて、エイリアシングと、動きベクトル精度が有限であることと、および並進運動モデルの妥当性が限られていることとによって導入されるさらなる予測エラーを補償することによって、コーディング効率の向上を実現できることを提案している。
【００６０】
より一般的には、動きの種類および特性がビデオ・シーケンス内で変化するため、最適の補間フィルタは時間および画像位置の関数として変化することを理解されたい。ウェディによって提示される例では、動的に適合可能なフィルタ係数値を有する補間フィルタがＨ．２６Ｌビデオ・コーデックに、より具体的には、テスト・モデル（ＴＭＬ）によって規定されるそのコーデックのバージョンに、組み込まれている。Ｈ．２６ＬのＴＭＬ−４では、４分の１ピクセルの動きベクトル分解能と、６つの対称的なフィルタ係数を有するウィナー（Ｗｉｅｎｅｒ）・タイプの補間フィルタ（６タップ・フィルタ）とが使用された。ウェディで示される例では、補間フィルタのフィルタ係数をフレームづつのベースで適合させること、フィルタ係数を差をつけてコーディングすること、およびフィルタ係数を、メインのビデオ・データに対する副次的な情報としてデコーダへ送信することが示されている。このアプローチに基づいて、Ｈ．２６Ｌビデオ・コーデックのテスト・モデル８において動的なフィルタ係数数値を有する補間フィルタを使用することを含める提案がなされた。これはＩＴＵ電気通信標準化部門において、表題「Ｈ．２６Ｌ用の適合可能な補間フィルタ（Adaptive Interpolation Filter for H. 26L）」、研究グループ１６、議題６、ビデオ・コーディング専門家グループ（ＶＣＥＧ）、文献ＶＣＥＧ−Ｎ２８（２００１年９月）および、表題「Ｈ．２６Ｌ用の適合可能な補間フィルタに関するさらなる結果（More Results on Adaptive Interpolation Filter for H. 26L）」、研究グループ１６、議題６、ビデオ・コーディング専門家グループ（ＶＣＥＧ）、文献ＶＣＥＧ−Ｏ１６ｒｌ（２００１年１１月）にて提出された。
【００６１】
動的に適合可能な補間フィルタを用いることは、エンコーディングされたビデオ・データ・ストリームのコーディング効率に関して重要な問題を引き起こし、またエンコーディングされたビデオ・データのエラー回復に影響を及ぼす。コーディング効率の問題は、簡単な仕方で理解することができる。固定のフィルタ係数値を有する補間フィルタを用いるビデオ・コーディング・システムでは、エンコーディングされたビデオ・データ・ビット・ストリーム内に、フィルタ係数値に関する情報を含める必要がまったくない。フィルタ係数値を、ビデオ・エンコーダおよびビデオ・デコーダに簡単に記録することができる。言い換えれば、固定の補間フィルタを用いる特定のビデオ・コーディング標準にしたがって実装されるビデオ・コーディング・システムでは、係数値は、標準の仕様に従ってエンコーダおよびデコーダの両方に対して事前プログラムされる。しかし動的に適合可能なフィルタ係数が可能になれば、係数値に関する情報を送信する必要が生じてくる。フィルタ係数は周期的に（たとえばフレームづつのベースで）更新されるため、これは必然的に、ビデオ・エンコーダからデコーダへ送るべき情報量に加えられ、またコーディング効率に対して悪影響を及ぼす。ビット・レートが低いビデオ・コーディング用途では、送信すべき情報量がわずかでも増えることは一般に望ましくない。
【００６２】
したがって動きを最適にモデリングおよび補償するために、動的な補間フィルタを効率的に表現する必要がある。
【００６３】
エラー回復に関しては、動的に可変の補間フィルタの係数についての情報をエンコーダからデコーダへ送信する方法によって、送信エラーに対するビデオ・データの敏感さに影響が出る場合があることを理解されたい。より具体的には、動的に適合可能な補間フィルタを用いるビデオ・コーディング・システムでは、デコーダにおけるビデオ・シーケンスのフレームの正確な再構成は、フィルタ係数値の正確な受信およびデコーディングに依存する。係数値に関する情報が、エンコーダからデコーダへ送信される間にエラーの影響を受けやすい場合には、再構成されるビデオ・データの破損が起こる可能性がある。従来技術から知られるフィルタ係数のコーディング方法には３種類ある。第１は、フィルタ係数値を別個にエントロピ・コーディングすることである。第２は、フィルタ係数値を、すでにデコーディングされたフィルタのフィルタ係数と比較して差をつけて、エントロピ・コーディングすることである（ウェディにおいて提案されている）。第３は、フィルタの組を規定して、選択したフィルタのインデックスをコーディングすることである。
【００６４】
前述したように補間フィルタ係数のコーディングに利用できる可能性がある従来技術の解決方法はすべて、それらの使用方法のシナリオが異なることに付随する問題がある。第１の方法では、補間フィルタ係数を別個にコーディングするが、先験的な情報（すなわちすでにコーディングされた補間フィルタ係数値に関する情報）を何ら利用しないため、コーディング性能が劣っている。したがってこのアプローチでは、エンコーディングされたビデオ・ビット・ストリームに過度に多量の情報を加えて、補間フィルタ係数値を記述する必要がある。ウェディにおいて提案されるように、係数の差分コーディングは効率的ではあるが、フィルタ係数が、以前のフィルタ係数が正しくデコーディングされていることに依存するために、送信エラーを伴う可能性がある環境では使用することができない。前述したように、エンコーディングされたビデオ・ビット・ストリームが、エンコーダからデコーダへ送信される間に、エラーの影響を受けやすい場合には、デコーダにおいて再構成されるビデオ・データの破損が起こる可能性がある。所定のフィルタの組を伴う第３の従来技術の解決方法では、限られた選択肢のみが与えられるため、コーディング性能が劣化する。言い換えれば、このオプションでは、ウェディで述べられているように動的に適合可能なフィルタ係数値を有する補間フィルタを用いる利点を十分に実現することはできない。
【００６５】
したがって、適合可能な補間フィルタの係数値をコーディングする方法として、効率的であるとともに、エンコーディングされたビデオ・ビット・ストリームのエラー回復の劣化につながらない方法が必要とされていることが理解される。
【発明の開示】
【課題を解決するための手段】
【００６６】
本発明では、差分コーディングの良好なコーディング効率をエラー回復特徴と組み合わせることで、差分コーディングをすべての環境で使用できるようにする。したがってそれは、エラーが生じやすい環境、たとえばエンコーディングされたビデオ・ビット・ストリームを干渉を受けやすい無線通信リンク上で送信すべき環境で使用するためのビデオ・コーディング・システム内への実装に特に適している。
【００６７】
したがって、本発明の第１の態様によれば、デジタル・ビデオ・シーケンスにおける画像をエンコーディングしてエンコーディングされたビデオ・データを与えるための方法であって、デジタル・ビデオ・シーケンスはビデオ・フレームのシーケンスを含み、各フレームは複数のピクセル値を有し、複数の係数値によって表わされる複数の係数を有する補間フィルタを用いて、エンコーディングされたビデオ・データから前記デジタル・ビデオ・シーケンスのフレーム内のピクセル値を再構成する方法が提供される。この方法は、
補間フィルタの係数値を、所定のベース・フィルタと比較して差をつけてコーディングして、差分値の組を形成するステップと、
エンコーディングされたビデオ・データにおける前記差分値の組を適合させて、ピクセル値の再構成が前記差分値の組に基づくようにするステップと、を含むことを特徴とする。
【００６８】
有利なのは、エンコーディングされたビデオ・データが、前記差分値の組を示すエンコーディングされた値を含み、前記差分値の組を、ビデオ・エンコーダからビデオ・デコーダへ送信する前にエントロピ・コーディングすることである。
【００６９】
有利なのは、所定のベース・フィルタが、補間フィルタの係数値に統計的に類似する値の複数の係数を有することである。
【００７０】
有利なのは、補間フィルタの係数を、選択された画像セグメント内でのピクセルを補間するように選択することである。
【００７１】
有利なのは、所定のベース・フィルタが、固定された係数値を有することである。
【００７２】
有利なのは、所定のベース・フィルタが、ビデオ・シーケンスの統計値に適合される複数の係数を有することである。
【００７３】
好ましくは、補間フィルタが対称的であり、フィルタ係数の２分の１のみがコーディングされる。
【００７４】
有利なことは、補間フィルタの係数値が、第１の係数値から最後の係数値まで、ある順序でコーディングされ、ある順序は前記係数の空間的な順序とは異なることである。
【００７５】
有利なことは、補間フィルタの係数値の合計が固定されていることである。
【００７６】
有利なことは、所定のベース・フィルタが複数の係数値を有し、所定のベース・フィルタの係数値に一定の値を加えて、補間フィルタの係数値と所定のベース・フィルタの係数値との間の差分の振幅を減らすことである。
【００７７】
本発明の第２の態様によれば、ビデオ・フレームのシーケンスを有するデジタル・ビデオ・シーケンスにおける画像をエンコーディングして、ビデオ・シーケンスを示すエンコーディングされたビデオ・データを与える手段であって、ビデオ・シーケンスの各フレームは複数のピクセル値を含む手段と、
デコーディング・プロセスにおいて前記デジタル・ビデオ・シーケンスのフレーム内のピクセル値を再構成するための補間フィルタを規定する手段であって、補間フィルタは複数の係数値によって表わされる多くの係数を有する手段と、を備えるビデオ・エンコーダが提供される。このビデオ・エンコーダは、補間フィルタに対応して、前記補間フィルタの係数値と所定のベース・フィルタの係数値との間の差分を計算して差分値の組を与える手段と、
エンコーディングされたビデオ・データにおける前記差分値の組を適合させて、デコーディング・プロセスにおけるピクセル値の再構成が前記差分値の組に基づくようにする手段と、を備えることを特徴とする。
【００７８】
有利なことは、エンコーダが、エンコーディングされたビデオ・データにおける前記差分値の組を適合させる前に前記差分値の組をエントロピ・コーディングするための手段をさらに備えることである。
【００７９】
本発明の第３の態様によれば、ビデオ・フレームのシーケンスを含むデジタル・ビデオ・シーケンスを示すビデオ・データをデコーディングする方法であって、ビデオ・シーケンスの各フレームは複数のピクセル値を含み、複数の係数値によって表わされる複数の係数を有する補間フィルタを用いて前記デジタル・ビデオ・シーケンスのフレーム内のピクセル値を再構成する方法が提供される。この方法は、
ビデオ・データから差分値の組を回収するステップであって、前記差分値の組は、補間フィルタの係数値と所定のベース・フィルタの係数値との間の差分を示すステップと、
前記差分値の組と所定のベース・フィルタとに基づいて、さらなるフィルタを構成するステップと、
さらなるフィルタに基づいてピクセル値を再構成するステップと、を含むことを特徴とする。
【００８０】
有利なことは、所定のベース・フィルタが、複数の係数値によって表わされる複数の係数を有し、さらなるフィルタの構成を、前記差分値の組を所定のベース・フィルタの係数値と合計することによって行なうことである。
【００８１】
有利なことは、前記差分値の組を、ビデオ・データから、エントロピ・デコーディングによって回収することである。
【００８２】
本発明の第４の態様によれば、ビット・ストリーム内のビデオ・データを受信するための手段であって、受信したビデオ・データは、ビデオ・フレームのシーケンスを含むデジタル・ビデオ・シーケンスを示し、ビデオ・シーケンスの各フレームは複数のピクセル値を含む手段を備えるビデオ・デコーダが提供される。ビデオ・デコーダは、
ビット・ストリームから差分値の組を回収するための手段と、
所定のベース・フィルタと前記差分値の組とに基づいて補間フィルタを構成するための手段と、
補間フィルタと受信したビデオ・データとに基づいてビデオ・シーケンスのフレーム内のピクセル値を再構成するための手段と、を備えることを特徴とする。
【００８３】
有利なことは、ビデオ・デコーダが、前記差分値の組を所定のベース・フィルタのさらなる係数値と合計して補間フィルタを構成する手段、およびビット・ストリームからの前記差分値の組をエントロピ・デコーディングする手段も備えることである。
【００８４】
本発明の第５の態様によれば、ビデオ・フレームのシーケンスを有するデジタル・ビデオ・シーケンスにおける画像をエンコーディングして、ビデオ・シーケンスを示すビット・ストリームでのエンコーディングされたビデオ・データを与えるエンコーダであって、ビデオ・シーケンスの各フレームは複数のピクセル値を含み、エンコーダは、デコーディング・プロセスにおいて前記デジタル・ビデオ・シーケンスのフレーム内のピクセル値を再構成するための補間フィルタを規定する手段であって、補間フィルタは複数の係数値によって表わされる複数のフィルタ係数を有する手段、を有するエンコーダと、
ビット・ストリームでのエンコーディングされたビデオ・データを受信して、デコーディング・プロセスにおいてビデオ・シーケンスのフレーム内のピクセル値を再構成するためのデコーダと、を備えるビデオ・コーディング・システムが提供される。ビデオ・コーディング・システムは、
エンコーダがさらに、
補間フィルタと所定のベース・フィルタとの間の差分を計算して差分値の組を与える手段と、
ビット・ストリームでの前記差分値の組を適合させる手段と、を備え、
デコーディングは、
ビット・ストリームから前記差分値の組を回収するための手段と、
所定のベース・フィルタと回収された差分値の組とに基づいてさらなるフィルタを構成して、デコーディング・プロセスにおけるピクセル値の再構成がさらなるフィルタに基づくようにする手段と、を備えることを特徴とする。
【００８５】
本発明のこれらの特徴および他の特徴は、以下の説明を添付の図面とともに参照することによって明らかになる。しかし図面は、例示のためにデザインされているに過ぎず、本発明の限界を規定するものとしてではないことを理解されたい。
【発明を実施するための最良の形態】
【００８６】
本発明によれば、エンコーダは、所定のベース・フィルタ係数と比較して差をつけてフィルタ係数をコーディングする。図６ａ〜６ｃに、本発明による方法を例示する。図６ａに示すバー・グラフは、補間フィルタ係数値を表わしており、各バーは、フィルタ係数の１つに対応する。バーの高さは個々の係数値を表わす。水平軸の上方に延びるバーは正係数値を表わし、水平軸の下方に延びるバーは負係数値を表わす。図６ａおよび図６ｂを参照して、バー・グラフ１１０は、選択された画像セグメントの動き推定に最も適しているとエンコーダによって検出されたフィルタを表わす一方で、バー・グラフ１４０はベース・フィルタを表わす。図６ａに示す例では、フィルタは、６つのフィルタ係数を有する６タップ対称性フィルタである。フィルタ係数自体を送る代わりに、選択されたフィルタ１１０とベース・フィルタ１４０との間の差分１３０をコーディングして送る。図６ｃに、送られる係数１２０を示す。
【００８７】
本発明を用いた場合、エントロピ・コーダを用いて小さい振幅差分を効率的にコーディングすることができるために、コーディング・ゲインが得られる。ビデオ・エンコーダによって生成されたエンコーディングされたビデオ・ビット・ストリーム内にこのような差分が含まれ、ビデオ・ビット・ストリームをエンコーダから対応するデコーダへ送信するときには、エンコーディングされたビット・ストリームから差分値を回収し、それらを、デコーダに格納された所定のベース・フィルタの個々の係数値に加えることによって、補間フィルタの係数をデコーダにおいて再構成することができる。
【００８８】
またベース・フィルタを、ビデオ・シーケンスと受信されたフィルタ係数との統計値に適合させて、コーディング係数をさらに改善できることを理解されたい。ベース・フィルタを、コーデック全体に対して予め規定することもできる。言い換えれば、予め規定された同じフィルタを、コーディングすべき全てのビデオ・シーケンスに対して、それらの特性と関係なく、またはそれらが取得された方法で用いる。あるいは、ベース・フィルタをビデオ・データに適合させる、すなわち異なるビデオ・シーケンスに対して異なるベース・フィルタを用いるか、またはベース・フィルタを、ある所定のルールに従って特定のビデオ・シーケンスのエンコーディングの間に適合させることができる。
【００８９】
図６ａ〜６ｃに示すように、フィルタが対称的である場合には、コーディングする必要があるのはフィルタ係数の２分の１だけである。その他はコピーによって得ることができる。図６ｃに示した例では、エンコーディングされたビデオ・ビット・ストリーム内の適合可能な補間フィルタの係数値を表わすのに必要な情報量をさらに減らすことが、４番目、５番目、６番目のフィルタ係数が３番目、２番目、１番目のフィルム係数とそれぞれ同一となることを実現することによって可能となる。したがってこの場合には、補間フィルタの６つの係数を実際には、次の３つの値でコーディングすることができる。すなわち、第１の補間フィルタ係数と所定のベース・フィルタの第１の係数との間の差分を表わす第１、第２の補間フィルタ係数と所定のベース・フィルタの第２の係数との間の差分を表わす第２、および第３の補間フィルタ係数と所定のベース・フィルタの第３の係数との間の差分を表わす第３である。したがってこれらの３つの差分値を、エンコーダからデコーダへ送信されるエンコーディングされたビデオ・ビット・ストリーム内に含めることだけが必要であり、再構成された最初の３つのフィルタ係数値を適切にコピーすることによって、デコーダは残りの３つの補間フィルタ係数を得ることができる。ベース・フィルタと補間フィルタとが有する係数の数が偶数ではなく奇数であるが、それにもかかわらずそれらが対称的である場合には、同様のアプローチを採用することができる。この場合、コーディングすべき差分値の数は（ｎ／２）＋１であり、ここでｎはベース・フィルタ／補間フィルタにおける係数の数であることを、理解されたい。また本発明による方法は、他の係数コーディング方法と組み合わせることもできる。たとえば、最も頻繁に使用されるフィルタの組は、それらのインデックスによって規定およびコーディングすることができる。それほど頻繁には使用されないフィルタを、説明した発明によってコーディングして、利用可能なフィルタに対して最大限の変化を与えることで、係数値をコーディングするための従来技術の第３の方法に関する前述の不利点を打開することができる。
【００９０】
フィルタ係数のコーディング順序は、空間的な順序に従う必要はない。たとえば、補間フィルタ係数値を表わす差分値を、エンコーディングされたビデオ・ビット・ストリーム内に、フィルタ内で生じる係数と同じ順序で含める必要はない。この場合には、差分値がビット・ストリーム内に現れる順序を指定する所定のルールを規定して、それをエンコーダおよびデコーダの両方に対して既知としなければならない。
【００９１】
ベース・フィルタを、同じフィルタの受信されたフィルタ係数に適合させることができる。たとえば、第１の送信されたフィルタ係数がベース・フィルタ係数よりも大きい場合には、第２のベース・フィルタ係数を小さくすることができる。これは特に、フィルタ係数の合計が知られている場合に当てはまる。
【００９２】
通常、フィルタ係数の合計は固定されている。このような場合、最後のフィルタ係数をコーディングする必要はまったくなく、しかし最後のフィルタ係数は、最初の係数の合計を全体の合計から引き算することによって計算することができる。フィルタ係数の合計が固定されていない場合には、別個に送信される定数をベース・フィルタ係数またはフィルタ出力に加えて、係数差分の振幅を小さくすることができる。
【００９３】
図７に、本発明に従って動作するように適合させることができるビデオ・エンコーディングおよびデコーディング機器を備える端末装置を示す。より正確には、図７に、ＩＴＵ−Ｔ勧告Ｈ．３２４に従って実装されるマルチメディア端末６０を例示する。端末は、マルチメディア送受信器装置と考えることができる。それは、マルチメディア・データ・ストリームを捕捉、エンコーディング、および多重化して通信網を介して送信する要素にくわえて、受信したマルチメディア・コンテントを受信、逆多重化、デコーディング、および表示する要素を含む。ＩＴＵ−Ｔ勧告Ｈ．３２４は、端末の動作全体を規定し、その種々の構成部分の動作を支配する他の勧告について言及している。この種のマルチメディア端末は、対話形式テレビ電話などのリアル・タイム用途、またはビデオ・クリップの回収またはストリーミングをたとえばインターネット内のマルチメディア・コンテント・サーバーから行なうなどの非リアル・タイム用途で用いることができる。
【００９４】
本発明の文脈においては、図７に示したＨ．３２４端末は、本発明の方法の応用に適した多くの代替的なマルチメディア端末実装の１つに過ぎないことを理解されたい。また端末機器の位置および実装に関して多くの代替案が存在することにも注意されたい。図７に例示したように、マルチメディア端末を、アナログＰＳＴＮ（公衆交換電話網）などの固定回線電話網に接続された通信機器内に位置付けても良い。この場合、マルチメディア端末に、ＩＴＵ−Ｔ勧告Ｖ．８、Ｖ．３４、および任意にＶ．８の２に準拠するモデム７１が備え付けられる。あるいは、マルチメディア端末を外部のモデムに接続しても良い。モデムによって、マルチメディア端末によって生成された多重化デジタル・データおよび制御信号を、ＰＳＴＮ上への送信に適したアナログ形式に変換することができる。さらにモデムによって、マルチメディア端末がデータおよび制御信号をＰＳＴＮからアナログ形式で受信して、端末が適切な方法で逆多重化して処理することができるデジタル・データ・ストリームに変換することができる。
【００９５】
またＨ．３２４マルチメディア端末の実装を、ＩＳＤＮ（総合デジタル通信網）などのデジタル固定回線網に直接接続できるように行なっても良い。この場合、モデム７１を、ＩＳＤＮユーザ・ネットワーク・インターフェースと取り替える。図７では、このＩＳＤＮユーザ・ネットワーク・インターフェースを、代わりのブロック７２で表わしている。
【００９６】
またＨ．３２４マルチメディア端末を、モバイル通信用途で使用するために適合させても良い。無線通信リンクとともに使用する場合、図７の代わりのブロック７３で表わしたように、モデム７１を何らかの適切な無線インターフェースと取り替えることができる。たとえばＨ．３２４／Ｍマルチメディア端末は、現在の第２世代ＧＳＭ携帯電話網または提案される第３世代ＵＭＴＳ（ユニバーサル移動電話システム）への接続が可能な無線送受信器を含むことができる。
【００９７】
双方向通信用に、すなわちビデオ・データの送信および受信用にデザインされたマルチメディア端末では、本発明により実装されるビデオ・エンコーダおよびビデオ・デコーダの両方を設けることが有利であることを理解されたい。このようなエンコーダおよびデコーダは多くの場合、単一の組み合わせ機能ユニット（「コーデック」と言われる）として実装される。
【００９８】
次に典型的なＨ．３２４マルチメディア端末を、図７を参照して、より詳細に説明する。マルチメディア端末６０には、「端末機器」と言われる種々の要素が含まれている。この端末機器には、ビデオ、オーディオ、およびテレマティック装置が含まれており、それぞれ総称的に参照番号６１、６２、および６３によって示す。ビデオ機器６１はたとえば、ビデオ映像を捕らえるためのビデオ・カメラ、受信したビデオ・コンテントを表示するためのモニタ、および任意にビデオ処理機器を含んでいても良い。オーディオ機器６２は通常、たとえば口頭によるメッセージを捕らえるためのマイクロフォン、および受信したオーディオ・コンテントを再生するためのラウドスピーカを含んでいる。またオーディオ機器は、さらなるオーディオ処理ユニットを含んでいても良い。テレマティック機器６３は、データ端末、キーボード、電子黒板、または静止画像受信器（たとえばファックス・ユニット）を含んでいても良い。
【００９９】
ビデオ機器６１は、ビデオ・コーデック６５に結合されている。ビデオ・コーデック６５は、ビデオ・エンコーダおよび対応するビデオ・デコーダを備えており、両方とも本発明により実装されている。このようなエンコーダおよびデコーダを以下で説明する。ビデオ・コーデック６５は、捕らえられたビデオ・データを通信リンク上でさらに送信するのに適切な形式でエンコーディングし、および通信網から受信した圧縮ビデオ・コンテントをデコーディングする役割を担っている。図７に例示した例では、ビデオ・コーデックが、動的に適合可能な補間フィルタを用いることが含まれるように実装されることが想定されている。また前述したように、本発明の方法の実施形態により、ビデオ・コーデックのエンコーダ部分が、補間フィルタ係数値をエンコーディングして、対応するデコーダに送信するように適合されることが、さらに想定されている。同様に、ビデオ・コーデックのデコーダ部分は、本発明の方法の同じ実施形態によりエンコーディングされたフィルタ係数値を受信してデコーディングするように適合される。
【０１００】
端末のオーディオ機器は、図７で参照番号６６によって示されるオーディオ・コーデックに結合されている。ビデオ・コーデックと同様に、オーディオ・コーデックは、エンコーダ／デコーダ対を備えている。それは、端末のオーディオ機器によって捕らえられたオーディオ・データを、通信リンク上での送信に適した形式に変換し、またネットワークから受信されたエンコーディングされたオーディオ・データを変換して、たとえば端末のラウドスピーカ上での再生に適した形式に戻す。オーディオ・コーデックの出力は、遅延ブロック６７へ送られる。ここでは、ビデオ・コーディング・プロセスで生じた遅延を補償することによって、オーディオおよびビデオ・コンテントの同期化が保証される。
【０１０１】
マルチメディア端末のシステム制御ブロック６４では、終端対ネットワーク・シグナリングを適切な制御プロトコル（シグナリング・ブロック６８）を用いて制御して、送信および受信端末間の共通の動作モードを確立する。シグナリング・ブロック６８では、送信および受信端末のエンコーディングおよびデコーディング能力に関する情報を交換する。シグナリング・ブロック６８を用いて、ビデオ・エンコーダの種々のコーディング・モードをイネーブルにすることができる。またシステム制御ブロック６４では、データ暗号化を使用することも制御する。データ送信で用いるべき暗号化のタイプに関する情報が、暗号化ブロック６９からマルチプレクサ／デマルチプレクサ（ＭＵＸ／ＤＭＵＸユニット）７０へ送られる。
【０１０２】
マルチメディア端末からのデータ送信の間、ＭＵＸ／ＤＭＵＸユニット７０は、エンコーディングされ同期化されたビデオおよびオーディオ・ストリームを、テレマティック機器６３からのデータ入力および考えられる制御データと組み合わせて、単一のビット・ストリームを形成する。暗号化ブロック６９によって供給される、ビット・ストリームに加えるべきデータ暗号化（もしあれば）のタイプに関する情報を用いて、暗号化モードを選択する。対応して、多重化されおよびおそらく暗号化されるマルチメディア・ビット・ストリームを受信しているときに、ＭＵＸ／ＤＭＵＸユニット７０は、ビット・ストリームを解読して、その構成媒体成分に分解し、それらの成分を適切なコーデックおよび／または端末機器へデコーディングおよび再生のために送る役割を担う。
【０１０３】
図８ａは、本発明の好ましい実施形態により実装されるビデオ・エンコーダ７００を示す概略的なブロック・ダイアグラムである。図８ａに示すビデオ・エンコーダの構造は、多くの点で、図１に例示した従来技術のビデオ・エンコーダに類似しているが、サブ・ピクセル値の補間と、エンコーディングされたビデオ・ビット・ストリームの形成とに関連する動作を行なうエンコーダ部分に、適切な変更が加えられている。ビデオ・エンコーダ７００のほとんどの要素は、前述した従来技術のビデオ・エンコーダ１０（図１を参照）の対応する要素に類似する方法で、機能し動作する。このような要素の説明は、簡潔にするために省略する。特にビデオ・エンコーダ７００は、動き領域推定ブロック７１１、動き領域コーディング・ブロック７１２、動き補償予測ブロック７１３、予測エラー・コーディング・ブロック７１４、予測エラー・デコーディング・ブロック７１５、多重化ブロック７１６、フレーム・メモリ７１７、および加算器７１９を備えている。また図８ａに示すように、動き領域推定ブロック７１１は、差分係数計算ブロック７１０を含む。差分係数計算ブロック７１０は、選択したフィルタとベース・フィルタ７０９との間の差分を計算するために用いられる。
【０１０４】
次にビデオ・エンコーダ７００の動作について、詳細に考察する。従来技術から知られるビデオ・エンコーダと同様に、本発明のこの実施形態によるビデオ・エンコーダ７００では、基準フレームＲn（ｘ、ｙ）に対する動き補償予測を用いて、インター形式でコーディングされているビデオ・フレームを表わすビット・ストリームを生成する。それは、動き補償予測をサブ・ピクセル分解能まで行ない、さらに動的に可変なフィルタ係数値を有する補間フィルタを用いて、動き推定プロセスの間に要求されるサブ・ピクセル値を形成する。
【０１０５】
ビデオ・エンコーダ７００は、ブロックづつのベースで動き補償予測を行ない、動き補償を、サブ・ピクセル分解能まで、各ブロックに対して２段階プロセスとして行なう。第１段階では、フル・ピクセル分解能を有する動きベクトルを、ブロック・マッチングによって、すなわちコーディングすべき現在の画像ブロックのピクセル値と最もマッチングするピクセル値のブロックを基準フレームＲn（ｘ、ｙ）内でサーチすることによって、決定する。ブロック・マッチング動作は、動き領域推定ブロック７１１によって、フレーム記憶装置７１７と協力して行なわれる。フレーム記憶装置７１７からは、基準フレームＲn（ｘ、ｙ）のピクセル値が回収される。動き補償予測の第２段階では、第１段階で決定された動きベクトルを精緻化して、所望のサブ・ピクセル分解能にする。これを行なうために、動き領域推定ブロック７１１が、サブ・ピクセル分解能を有する新しいサーチ・ブロックを形成する。これは、現在コーディングされている画像ブロック（図５を参照）に対するベスト・マッチングとしてすでに特定された領域において基準フレームＲn（ｘ、ｙ）のピクセル値を補間することよって、行なわれる。このプロセスの一部として、動き領域推定ブロック７１１が、サブ・ピクセル値の補間に対して最適な補間フィルタを決定する。有利なことは、補間フィルタの係数値が、各画像ブロックのエンコーディングとともに適合されることである。代替的な実施形態においては、補間フィルタの係数を適合させる頻度を少なくしても良い。たとえばフレームごとに一度、またはコーディングすべき新しいビデオ・シーケンスの始まりにおいてである。
【０１０６】
必要なサブ・ピクセル値を補間して新しいサーチ・ブロックを形成したら、動き領域推定ブロック７１１は、さらにサーチを行なって、新しいサーチ・ブロックの何れかが、フル・ピクセル分解能において当初特定されたベスト・マッチング・ブロックよりも良好なマッチングを、現在の画像ブロックに対して表わすかどうかを決定する。このようにして、動き領域推定ブロック７１１は、現在コーディングされている画像ブロックを表わす動きベクトルが、フル・ピクセル位置を指し示すべきかサブ・ピクセル位置を指し示すべきかを決定する。
【０１０７】
前述したように、動き領域推定ブロック７１１は、特定された動きベクトルを動き領域コーディング・ブロック７１２に出力し、このブロック７１２では、動きモデルを用いて動きベクトルを見積もる。次に、動き補償予測ブロック７１３は、見積もられた予測エラー情報を用いて、現在の画像ブロックに対する予測を形成する。予測は、その後に、予測エラー・コーディング・ブロック７１４内でコーディングされる。次に、現在の画像ブロックに対するコーディングされた予測エラー情報を、予測エラー・コーディング・ブロック７１４からマルチプレクサ・ブロック７１６へ転送する。またマルチプレクサ・ブロック７１６は、見積もられた動きベクトルについての情報（動き係数の形式）も、動き領域コーディング・ブロック７１２から受信し、同様に、現在の画像ブロックの動き補償予測の間に用いられる最適な補間フィルタについての情報も、動き領域推定ブロック７１１から受信する。本発明のこの実施形態によれば、動き領域推定ブロック７１１は、差分係数計算ブロック７１０により計算された計算結果に基づいて、現在のブロックに対する最適な補間フィルタのフィルタ係数とエンコーダ７００に格納された所定のベース・フィルタ７０９の係数との間の差分を示す差分値７０５の組を送信する。その後にマルチプレクサ・ブロック７１６は、画像の現在のブロックを表わすエンコーディングされたビット・ストリーム７０３を、動き情報（動き係数）、予測エラー・データ、フィルタ係数差分値、および考えられる制御情報を組み合わせることによって、形成する。種々タイプの情報のそれぞれをエントロピ・コーダによってエンコーディングすることを、ビット・ストリーム内に含めてその後に対応するデコーダへ送信する前に、行なっても良い。
【０１０８】
本発明の代替的な実施形態においては、図８ｂに示すように、動き領域推定ブロック７１１は、最適な補間フィルタのフィルタ係数を示す値７０４の組を、動き領域推定ブロック７１１とマルチプレクサ・ブロック７１６との間に位置する差分係数計算ブロック７１０へ送る。ベース・フィルタ７０９に基づいて、差分係数計算ブロック７１０は、差分値７０５を計算して、マルチプレクサ・ブロック７１６へ送る。
【０１０９】
他の代替的な実施形態においては、差分係数計算ブロック７１０が、マルチプレクサ・ブロック７１６内に配置されている。この場合、図８ｃに示すように、最適な補間フィルタのフィルタ係数７０４を、動き領域推定ブロック７１１によってマルチプレクサ・ブロック７１６へ直接送ることができる。
【０１１０】
図９ａは、本発明の好ましい実施形態により実装されるビデオ・デコーダ８００のブロック・ダイアグラムであり、図８ａに例示したビデオ・エンコーダ７００に対応している。デコーダ８００は、動き補償予測ブロック７２１、予測エラー・デコーディング・ブロック７２２、逆多重化ブロック７２３、およびフレーム・メモリ８２４を備える。デコーダ８００内のほとんどの要素は、従来技術２０（図２を参照）内の対応する要素に類似する仕方で機能および動作する。しかし図９ａに示したように、本発明のデコーダ８００には、フィルタ再構成ブロック８１０が含まれる。これは、差分値１３０（図６ｂおよび図６ｃ）および所定のベース・フィルタ８０９に基づいて、最適な補間フィルタ１１０（図６ａを参照）を再構成するものである。所定のベース・フィルタ８０９は好ましくは、ベース・フィルタ７０９（図８ａ〜８ｃ）と同一である。
【０１１１】
次に、ビデオ・デコーダ８００の動作を詳細に考察する。デマルチプレクサ８２３は、エンコーディングされたビット・ストリーム８０３を受信して、ビット・ストリームを、その構成部分（動き係数、予測エラー・データ、フィルタ係数差分値、および考えられる制御情報）に分割し、種々のデータ・タイプについて何らかの必要なエントロピ・デコーディングを行なう。デマルチプレクサ８２３は、受信したビット・ストリーム８０３から回収した予測エラー情報を、予測エラー・デコーディング・ブロック８２２へ転送する。また、受信した動き情報も、動き補償予測ブロック８２１へ転送する。本発明のこの実施形態においては、デマルチプレクサ８２３は、受信した（およびエントロピ・デコーディングされた）差分値を、信号８０２を介して動き補償予測ブロック８２１へ転送する。その結果、フィルタ再構成ブロック８１０が、受信した差分値を、デコーダに格納された所定のベース・フィルタ８０９の係数へ加えることによって、最適な補間フィルタ１１０（図６ａを参照）を再構成することができる。その後に、動き補償予測ブロック８２１が、再構成された係数値によって規定されるように、最適な補間フィルタを用いて、現在デコーディングされている画像ブロックに対する予測を構成する。より具体的には、動き補償予測ブロック８２１は、現在の画像ブロックに対する予測を形成することを、フレーム・メモリ８２４に格納された基準フレームＲn（ｘ、ｙ）のピクセル値を回収し、そして必要に応じて、受信した動き情報に従ってピクセル値を補間して、何らかの必要なサブ・ピクセル値を形成することによって、行なう。次に、現在の画像ブロックに対する予測を、対応する予測エラー・データと組み合わせて、当該画像ブロックの再構成を形成する。
【０１１２】
あるいは、図９ｂに示すように、フィルタ再構成ブロック８１０は、動き補償予測ブロック８２１の外に配置されている。デマルチプレクサ８２３から受信した信号８０２内に含まれる差分値から、フィルタ再構成ブロック８１０は、最適な補間フィルタを再構成して、再構成フィルタ係数８０５を動き補償予測ブロック８２１へ送る。さらに他の代替的な実施形態においては、フィルタ再構成ブロック８１０が、デマルチプレクサ・ブロック８２３内に配置されている。デマルチプレクサ・ブロック８２３は、最適な補間フィルタの再構成された係数を、動き補償予測ブロック８２１へ転送する。
【０１１３】
本発明によれば、エンコーダが、所定のベース・フィルタ係数と比較して差をつけてフィルタ係数をコーディングすることによって、デコーダが、差分値に基づいて、最適な補間フィルタを再構成することができる。ベース・フィルタ係数は、エンコーダおよびデコーダの両方に対して既知でなければならず、また良好なコーディング性能をもたらすように、ビデオ・シーケンス内で使用される実際のフィルタに統計的に合理的に近くなければならない。言い換えれば、本発明の方法によれば、特定の係数値の組を有するベース・フィルタを規定した後、ベース・フィルタ係数と、実際に使用される補間フィルタの係数との間の差分をコーディングして、ビデオ・ビット・ストリーム内に含める。このようにして、エンコーディングされたビデオ・ビット・ストリーム内の適合可能な補間フィルタ係数を表わすのに必要な情報量が、適合可能なフィルタ係数のそれぞれを別個にコーディングする方法と比較して低減される。実際に用いられる補間フィルタの係数にベース・フィルタの係数が十分に類似していれば、コーディングすべき差分値は小さい。したがって実際に用いられる補間フィルタに所定のベース・フィルタが統計的に類似しているならば、この場合には、差分値が減りコーディング効率のさらなる改善が得られるために、有利である。
【０１１４】
ウェディで提案されている差分コーディング方法とは異なり、本発明による方法は、比較的良好なエラー回復を保持している。エンコーディングされたビデオ・ビット・ストリームをエンコーダからデコーダへ送信する間にエラーが生じた場合には、それは、ベース・フィルタと、エラーの影響を受ける実際に用いられる補間フィルタとの間の差分に過ぎない。
【０１１５】
本発明によるマルチメディア端末、ビデオ・エンコーダ、デコーダ、およびビデオ・コーデックの機能要素は、ソフトウェアもしくは専用のハードウェア、または２つの組み合わせとして、実装できることを理解されたい。本発明によるビデオ・エンコーディングおよびデコーディング方法は、本発明の機能ステップを実行するための機械読み取り可能な命令を含むコンピュータ・プログラムの形態での実装に、特に適している。したがって本発明によるエンコーダ、デコーダ、およびビデオ・コーデックを、記憶媒体上に格納されたソフトウェア・コードとして実装して、パーソナル・デスクトップ・コンピュータなどのコンピュータ内で実行することで、そのコンピュータに、ビデオ・エンコーディングおよび／またはデコーディング機能性を持たせても良い。
【０１１６】
特定の実施形態との関連で説明してきたが、これらの教示に対する多くの変更および種々の変形を行なっても良いことが当業者には明らかである。すなわち本発明は特に１つまたは複数の好ましい実施形態に関して図示して説明してきたが、前述したような本発明の範囲および趣旨から逸脱することなく、ある種の変更または変形を行なっても良いことが、当業者によって理解される。
【図面の簡単な説明】
【０１１７】
【図１】従来技術による一般的なビデオ・エンコーダを例示するブロック・ダイアグラムである。
【図２】従来技術による一般的なビデオ・デコーダを例示するブロック・ダイアグラムである。
【図３】ビデオ・エンコーディングで用いるフレームのタイプを例示する概略的な図である。
【図４ａ】現在のフレーム内のマクロブロックを例示する概略的な図である。
【図４ｂ】ブロック・マッチング用の基準フレームを例示する概略的な図である。
【図４ｃ】現在のフレーム内のマクロブロックの本来の位置の周辺のサーチ領域を例示する概略的な図である。
【図５】従来技術によるサブ・ピクセル分解能までの動き推定プロセスを例示する概略的な図である。
【図６ａ】最適な補間フィルタを例示する概略的な図である。
【図６ｂ】最適な補間をベース・フィルタと差分係数とに分解する様子を例示する概略的な図である。
【図６ｃ】コーディングしてデコーダへ送るべき差分係数を例示する概略的な図である。
【図７】本発明を実施することができるビデオ・エンコーディングおよびデコーディング機器を備える端末装置を例示する例示するブロック・ダイアグラムである。
【図８ａ】本発明の好ましい実施形態によるビデオ・エンコーダを例示するブロック・ダイアグラムである。
【図８ｂ】本発明の他の実施形態によるビデオ・エンコーダを例示するブロック・ダイアグラムである。
【図８ｃ】本発明のさらに他の実施形態によるビデオ・エンコーダを例示するブロック・ダイアグラムである。
【図９ａ】本発明の好ましい実施形態によるビデオ・デコーダを例示するブロック・ダイアグラムである。
【図９ｂ】本発明の他の実施形態によるビデオ・デコーダを例示するブロック・ダイアグラムである。
【図９ｃ】本発明のさらに他の実施形態によるビデオ・デコーダを例示するブロック・ダイアグラムである。
【図１】
2005514872.tif 000017
【図２】
2005514872.tif 000018
【図３】
2005514872.tif 000019
【図４ａ】
2005514872.tif 000020
【図４ｂ】
2005514872.tif 000021
【図４ｃ】
2005514872.tif 000022
【図５】
2005514872.tif 000023
【図６ａ】
2005514872.tif 000024
【図６ｂ】
2005514872.tif 000025
【図６ｃ】
2005514872.tif 000026
【図７】
2005514872.tif 000027
【図８ａ】
2005514872.tif 000028
【図８ｂ】
2005514872.tif 000029
【図８ｃ】
2005514872.tif 000030
【図９ａ】
2005514872.tif 000031
【図９ｂ】
2005514872.tif 000032
【図９ｃ】
2005514872.tif 000033
【国際調査報告】
2005514872.tif 000034