(57)【要約】【課題】  デジタル・ビデオ・システムで動き予測を実行するための方法および装置が開示される。特に、本発明は、極めて効率的な方法で予測動きベクトルを迅速に計算するシステムを開示する。【解決手段】  複数の画像の時間に関する順序値を用いて、該複数の画像のうちの特定の画像の動きベクトルを求める。【選択図】  図１
2010154568.tif 000002
【特許請求の範囲】
【請求項１】
ビデオ画像を復号化する方法であって、
符号化された第１のビデオ画像と、符号化された第２のビデオ画像と、符号化された第３のビデオ画像と、第２のビデオ画像の符号化された第１の順序値と、第３のビデオ画像の符号化された第２の順序値とを受信することであって、前記第１の順序値は前記第２のビデオ画像と第１のビデオ画像との間の時間差を表すものであるとともに、２つのビデオ画像間の単位時間を表すものであり、前記第２の順序値は前記第３のビデオ画像と第１のビデオ画像との間の時間差を表すものであるとともに、前記第１の順序値によって規定されるものである、受信することと、
前記順序値を使用して、少なくとも一つの動きベクトルを計算することと、
その動きベクトルを使用して前記第２のビデオ画像を復号化することと
を含む方法。
【請求項２】
前記動きベクトルを計算することが、他のビデオ画像の動きベクトルを使用することを含む請求項１記載の方法。
【請求項３】
前記動きベクトルを計算することが、２の累乗による除算の実行を含む請求項１記載の方法。
【請求項４】
隣接するビデオ画像間の順序差が均等でないときに、前記順序値は一連の均等でない順序値である請求項１記載の方法。
【請求項５】
前記順序値は、基準ビデオ画像選択の順序を確立するためのものである請求項１記載の方法。
【請求項６】
前記第２のビデオ画像を復号化することは、当該第２のビデオ画像の内在的Ｂ予期ブロック重付け値を計算することを含む請求項１記載の方法。
【請求項７】
前記第２のビデオ画像に関連するスライスヘッダであって、その中の値から前記第１の順序値が導出される請求項１記載の方法。
【請求項８】
前記計算された動きベクトルが変倍値を用いて計算される請求項１記載の方法。
【請求項９】
前記計算された動きベクトルはビットのけた送り操作の実行を含む請求項１記載の方法。
【請求項１０】
前記ビットのけた送り操作は８ビットごとに１ビットシフトすることをことによって実行される請求項９記載の方法。
【請求項１１】
第１の順序値は圧縮されたフォーマットのビットストリームに格納される請求項１記載の方法。
【請求項１２】
第１の順序値は可変長符号化によって圧縮される請求項１１記載の方法。
【請求項１３】
第１の順序値は算術符号化によって圧縮される請求項１１記載の方法。
【請求項１４】
符号化された第１のビデオ画像、符号化された第２のビデオ画像、符号化された第３のビデオ画像と、
前記第２のビデオ画像に関して、（ｉ）該第２のビデオ画像と前記第１のビデオ画像との間の時間差と、（ｉｉ）２つのビデオ画像間の単位時間とを表す符号化された第１の順序値と、
前記第３のビデオ画像に関して、該第３のビデオ画像と前記第１のビデオ画像との間の時間差であって、前記第１の順序値によって定められる符号化された第２の順序値と
を含むビットストリームを格納したコンピュータ可読記憶媒体。
【請求項１５】
前記第１の順序値は圧縮された順序値である請求項１４の媒体。
【請求項１６】
前記圧縮された順序値は可変長符号化によって圧縮されている請求項１５記載の媒体。
【請求項１７】
前記圧縮された順序値は算術符号化によって圧縮されている請求項１５記載の媒体。
【請求項１８】
前記ビットストリームが、前記第２のビデオ画像に関連するスライスヘッダであって、その中の値から前記第１の順序値が導出されるスライスヘッダをさらに有する請求項１４記載の媒体。
【請求項１９】
前記第１の順序値がビットストリーム内で１回以上符号化される請求項１４記載の媒体。
【請求項２０】
請求項１−１３のいずれか一つの方法をコンピュータに実行させるためのプログラムを記憶したコンピュータ可読記憶媒体。
【請求項２１】
請求項１−１３のいずれか一つの方法の各ステップを実行するための１以上の処理ユニットを含むコンピュータシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願）
本特許出願は、２００２年１２月６日出願の米国特許出願番号１０／３１３，７７３について、米国特許法第１２０条により先の出願日の利益を主張する。
【０００２】
（技術分野）
本発明は、マルチメディア圧縮システムの分野に関する。特に、本発明は、プロセッサ集約型除算演算の要件が低減された可変精度画像間タイミング指定の方法およびシステムを開示する。
【背景技術】
【０００３】
デジタル・ベースの電子媒体フォーマットはついに大幅にアナログ電子媒体フォーマットに取って代わる段階に達した。デジタル・コンパクト・ディスク（ＣＤ）はかなり以前にアナログのビニール製レコードに取って代わっている。アナログ磁気カセット・テープはますます稀になっている。ミニディスクおよびＭＰ３（ＭＰＥＧオーディオ・レイヤ３）などの第２世代および第３世代デジタル・オーディオ・システムは、コンパクト・ディスクの第１世代デジタル・オーディオ・フォーマットから市場シェアを奪いつつある。
ビデオ媒体フォーマットは、オーディオ媒体と比較してデジタル記憶装置およびデジタル伝送フォーマットへの移行が遅れている。このデジタルへの移行の遅さの理由は、許容できる品質の映像をデジタル形式で正確に表現するのに必要な大量のデジタル情報と圧縮された映像を符号化するのに必要な高速処理能力とに主として起因する。映像を正確に表現するのに必要な大量のデジタル情報は、極めて大容量のデジタル記憶システムおよび高帯域伝送システムを必要とする。
【０００４】
しかし、映像はデジタル記憶装置および伝送フォーマットに急速に移行しつつある。より高速のコンピュータ・プロセッサ、高密度記憶システム、および新しい効率的な圧縮および符号化アルゴリズムによって、デジタル・ビデオ伝送および記憶装置は消費者価格にまで引き下げた。デジタル・ビデオ・システムであるＤＶＤ（デジタル多用途ディスク）は、数年にわたって最もよく売れている消費者向け電子製品の１つである。ＤＶＤは、その高品質の映像、極めて高品質の音響、利便性および他の特徴によって、好んで選ばれる事前録画されたビデオ再生システムとして、ビデオカセット・レコーダ（ＶＣＲ）に急速に取って代わっている。古くなったアナログＮＴＳＣ（米国テレビジョン方式委員会）のビデオ伝送システムは現在、デジタルＡＴＳＣ（高度テレビジョン方式委員会）のビデオ伝送システムに移行しつつある。
コンピュータ・システムは何年もの間、さまざまな異なるデジタル・ビデオ符号化フォーマットを使用してきた。特に、コンピュータ・システムはデジタル映像をそれぞれ圧縮および符号化、または圧縮解除および復号化する異なるビデオ符号器／復号器の方法を使用してきた。ハードウェアまたはソフトウェア実施態様でのビデオ符号器／復号器の方法は、一般に「コーデック」と呼ばれる。
【０００５】
コンピュータ・システムによって使用されてきた最良のデジタル・ビデオ圧縮および符号化システムには、頭字語ＭＰＥＧで一般に周知である動画映像専門家グループ（Ｍｏｔｉｏｎ Ｐｉｃｔｕｒｅｓ ＥｘｐｅｒｔＧｒｏｕｐ）が支援するデジタル・ビデオ・システムが含まれる。ＭＰＥＧの３つの最も知られ、使用されているデジタル・ビデオ・フォーマットは、ＭＰＥＧ−１、ＭＰＥＧ−２、およびＭＰＥＧ−４である。ビデオＣＤ（ＶＣＤ）および消費者グレードのデジタル・ビデオ編集システムは初期のＭＰＥＧ−１デジタル・ビデオ符号化フォーマットを使用する。デジタル多用途ディスク（ＤＶＤ）およびディッシュ・ネットワーク・ブランドの直接放送衛星（ＤＢＳ）テレビジョン放送システムは高品質ＭＰＥＧ−２デジタル・ビデオ圧縮および符号化システムを使用する。ＭＰＥＧ−４符号化システムは、最新のコンピュータ・ベースのデジタル・ビデオ・エンコーダおよびそれに関連するデジタル・ビデオ・プレーヤに急速に採用されている。
【０００６】
ＭＰＥＧ−２およびＭＰＥＧ−４標準は一連のビデオ・フレームまたはビデオ・フィールドを圧縮し、次に圧縮されたフレームまたはフィールドをデジタル・ビットストリームに符号化する。ビデオ・フレームまたはフィールドをＭＰＥＧ−２およびＭＰＥＧ−４システムで符号化する時には、ビデオ・フレームまたはフィールドは画素ブロックの矩形の格子に分割される。各画素ブロックは独立して圧縮および符号化される。
ビデオ・フレームまたはフィールドを圧縮する時には、ＭＰＥＧ−４標準はフレームまたはフィールドを、イントラフレーム（Ｉフレーム）、片方向予測フレーム（Ｐフレーム）、または双方向予測フレーム（Ｂフレーム）という３つのタイプの圧縮フレームまたはフィールドのうちの１つに圧縮できる。イントラフレームは他のビデオ・フレームを参照せずに完全に独立して個別のビデオ・フレームを符号化する。Ｐフレームは、単一の以前に表示されたビデオ・フレームを参照してビデオ・フレームを定義する。Ｂフレームは、現在のフレーム以前に表示されたビデオ・フレームと現在のフレーム以後に表示されるビデオ・フレームの両方を参照してビデオ・フレームを定義する。冗長ビデオ情報を効率的に使用することで、ＰフレームおよびＢフレームは最良の圧縮を提供する。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ビデオ・コーデックで動き予測を実行する方法および装置を開示する。特に、本発明は、過剰な除算回数を必要とせずに極めて効率的な方法で予測動きベクトルを迅速に計算するシステムを開示する。
一実施形態では、第１のビデオ画像と第２のビデオ画像との第１の表示時間差に２の累乗値を乗算することで第１の被乗数が決定される。このステップで比率の分子が拡大する。次に、システムは、その変倍された分子を前記第２のビデオ画像と第３のビデオ画像の第２の表示時間差で除算することで変倍された比率を決定する。次に、変倍された比率は記憶され、後で動きベクトル予測の計算に使用される。変倍された比率を記憶することですべての予測動きベクトルは高い精度で迅速に計算できる。これは、変倍された比率が有効ビットを保存し、倍率の低減が簡単なけた送りで実行されるために時間がかかる除算演算の必要を解消するためである。
本発明の他の目的、特徴、および利点は、添付の図面および以下の詳細な説明から明らかになるだろう。
【図面の簡単な説明】
【０００８】
【図１】１つの可能なデジタル・ビデオ・エンコーダ・システムの高レベル・ブロック図である。
【図２】異なる画像を結ぶ矢印が動き補償を用いて作成される画像間依存を示す順序で画像が表示される一連のビデオ画像を示す図である。
【図３】異なる画像を結ぶ矢印が動き補償を用いて作成される画像間依存を示す画像の好ましい送信順序で図２の画像をリストしたビデオ画像を示す図である。
【図４】互いを参照するビデオ画像間の距離が２の累乗になるように選択される一連のビデオ画像を示す概念図である。
【発明を実施するための形態】
【０００９】
除算演算の要件が低減されたマルチメディア圧縮および符号化システムの可変精度画像間タイミング指定の方法およびシステムを開示する。以下の説明では、説明を分かりやすくするために、特定の命名法を用いて本発明の徹底的な理解を図る。しかし、本発明を実施する際にこれらの特定の詳細内容が必要ではないことは当業者には明らかであろう。例えば、本発明をＭＰＥＧマルチメディア圧縮および符号化システムに関して記載している。しかし、他のタイプの圧縮および符号化システムにも同じ技法を容易に適用することができる。
【実施例】
【００１０】
マルチメディア圧縮および符号化の概要
図１は、当業技術分野で周知である典型的なデジタル・ビデオ・エンコーダ１００の高レベル・ブロック図である。デジタル・ビデオ・エンコーダ１００は、ブロック図の左側でビデオ・フレームの着信ビデオ・ストリーム１０５を受信する。デジタル・ビデオ・エンコーダ１００は、各ビデオ・フレームを画素ブロックの格子に分割する。画素ブロックは別々に圧縮される。さまざまな異なるサイズの画素ブロックを異なるビデオ符号化システムが使用できる。例えば、異なる画素ブロック解像度は、８×８、８×４、１６×８、４×４等を含む。さらに、画素ブロックは時折「マクロブロック」と呼ばれる。本明細書では、いかなるサイズの画素のいかなるブロックを指す場合でも画素ブロックという用語を使用する。
離散コサイン変換（ＤＣＴ）ユニット１１０はビデオ・フレーム内の各画素ブロックを処理する。フレームは独立して処理でき（イントラフレーム）、または動き補償ユニットから受信した他のフレームからの情報に関連して処理できる（インターフレーム）。次に、量子化（Ｑ）ユニット１２０は離散コサイン変換ユニット１１０からの情報を量子化する。最後に、量子化されたビデオ・フレームはエントロピー・エンコーダ（Ｈ）ユニット１８０によって符号化され、符号化されたビットストリームを生成する。エントロピー・エンコーダ（Ｈ）ユニット１８０は可変長符号化（ＶＬＣ）システムを使用できる。
【００１１】
フレーム間符号化ビデオ・フレームは他の近くのビデオ・フレームに関連して定義されるので、デジタル・ビデオ・エンコーダ１００は、インターフレームが符号化できるように、各復号化されたフレームがデジタルビデオ・デコーダ内でどのように表示されるかの複製を作成する必要がある。それ故、デジタル・ビデオ・エンコーダ１００の下の部分は実際にデジタル・ビデオ・デコーダ・システムになる。特に、逆量子化器（Ｑ−１）ユニット１３０はビデオ・フレーム情報の量子化を反転し、逆離散コサイン変換（ＤＣＴ−１）ユニット１４０はビデオ・フレーム情報の離散コサイン変換を反転する。逆離散コサイン変換（ＤＣＴ−１）ユニット１４０からすべてのＤＣＴ係数が再構成されると、動き補償ユニットが動きベクトルと共にこの情報を使用して符号化されたビデオ・フレームを再構成する。次に、再構成されたビデオ・フレームは以後のフレームの動き予測の基準ビデオ・フレームとして使用される。
【００１２】
次に、復号化されたビデオ・フレームを用いて復号化されたビデオ・フレーム内の情報に関して定義されたインターフレーム（ＰフレームまたはＢフレーム）を符号化することができる。特に、動き補償（ＭＣ）ユニット１５０および動き予測（ＭＥ）ユニット１６０を用いて動きベクトルを決定し、インターフレームの符号化に用いる差分値を生成することができる。
レート・コントローラ１９０はデジタル・ビデオ・エンコーダ１００内の多くの異なる構成要素から情報を受信し、この情報を用いてビデオ・フレームごとにビット・バジェットを割り当てる。レート・コントローラ１９０は、指定された一組の制約事項に適合する最高品質のデジタル・ビデオ・ビット・ストリームを生成するようにビット・バジェットを割り当てなければならない。特に、レート・コントローラ１９０は、バッファのオーバフロー（記憶できる以上の情報を送信することでビデオ・デコーダ内の利用可能なメモリの量を超過すること）、またはバッファのアンダフロー（ビデオ・フレームの送信が遅く、ビデオ・デコーダが表示するビデオ・フレームが不足すること）を引き起こすことなく、最高品質の圧縮ビデオ・ストリームを生成しようとする。
【００１３】
画素ブロックによるデジタル・ビデオ符号化
一部のビデオ信号では、連続するビデオ画像（フレームまたはフィールド）の間の時間は一定ではない。（注：本明細書ではビデオ画像という用語で一般にビデオ・フレームまたはビデオ・フィールドを指す。）例えば、伝送帯域幅の制約によって一部のビデオ画像が欠落することがある。さらに、カメラの不規則性あるいはスローモーションまたはファストモーションのような特殊効果のためにビデオ・タイミングも異なる場合がある。一部のビデオ・ストリームでは、元のビデオ・ソースは設計による不均一の画像間時間を単に有することがある。例えば、コンピュータ・グラフィック・アニメーションなどの合成ビデオは、ビデオ・カメラ・システムなどの均一のタイミングのビデオ・キャプチャー・システムによって任意のビデオ・タイミングを課されないために、不均一のタイミングを有する場合がある。柔軟なデジタル・ビデオ符号化システムは不均一のビデオ画像タイミングを扱うことができなければならない。
前述したように、大半のデジタル・ビデオ符号化システムはビデオ画像を画素ブロックの矩形の格子に分割する。ビデオ画像内の各々の個々の画素ブロックは別々に圧縮され符号化される。例えば、ＩＳＯ ＭＰＥＧまたはＩＴＵＨ．２６４などのいくつかのビデオ符号化標準は、別のタイプの予測画素ブロックを用いてビデオ画像を符号化する。１つのシナリオでは、画素ブロックは以下の３つのタイプのうちのいずれかである。
１．Ｉ画素ブロック − イントラ（Ｉ）画素ブロックは符号化に際して他のビデオ画像の情報を使用しない（イントラ画素ブロックは完全に自己定義される）。
２．Ｐ画素ブロック − 片方向予測（Ｐ）画素ブロックは以前のビデオ画像の画像情報を参照する。
３．Ｂ画素ブロック − 双方向予測（Ｂ）画素ブロックは以前および将来のビデオ画像の情報を参照する。
【００１４】
ビデオ画像内の画素ブロックのすべてがイントラ画素ブロックの場合、ビデオ画像はイントラフレームである。ビデオ画像が片方向予測マクロブロックまたはイントラ画素ブロックのみを含む場合、ビデオ画像はＰフレームと呼ばれる。ビデオ画像が双方向予測画素ブロックを含む場合、ビデオ画像はＢフレームと呼ばれる。話を分かりやすくするために、本明細書では所与の画像内のすべての画素ブロックが同じタイプである場合を想定する。
符号化されるビデオ画像のシーケンスの例は以下のように表現される。
Ｉ１Ｂ２Ｂ３Ｂ４Ｐ５Ｂ６Ｂ７Ｂ８Ｂ９Ｐ１０Ｂ１１Ｐ１２Ｂ１３Ｉ１４．．．
ここで、文字（Ｉ、Ｐ、またはＢ）は、デジタル・ビデオ画像がＩフレーム、Ｐフレーム、またはＢフレームのいずれかであるか、番号はビデオ画像のシーケンス内のビデオ画像のカメラの順序を表す。カメラ順序はカメラがそのビデオ画像を記録した順序で、ビデオ画像を表示する順序（表示順）でもある。
【００１５】
上記の一連のビデオ画像の例を図２に概念図で示す。図２を参照すると、矢印は記憶された画像（この場合、ＩフレームまたはＰフレーム）の画素ブロックが他の画像の動き補償予測で使用されることを示す。
図２のシナリオでは、他の画像の情報はイントラフレーム・ビデオ画像Ｉ１の符号化で使用されない。ビデオ画像Ｐ５は、符号化に以前のビデオ画像Ｉ１内のビデオ情報を使用するＰフレームであり、したがって、ビデオ画像Ｉ１からビデオ画像Ｐ５に矢印が引かれている。ビデオ画像Ｂ２、ビデオ画像Ｂ３、ビデオ画像Ｂ４はすべてその符号化にビデオ画像Ｉ１およびビデオ画像Ｐ５両方の情報を使用する。したがって、矢印がビデオ画像Ｉ１およびビデオ画像Ｐ５からビデオ画像Ｂ２、ビデオ画像Ｂ３、およびビデオ画像Ｂ４に引かれている。上記のように、画像間時間は一般に同じではない。
Ｂ画像は将来の画像（後で表示される画像）の情報を使用するので、送信順は普通表示順とは異なる。特に、他のビデオ画像を構成するのに必要なビデオ画像は最初に送信しなければならない。上記のシーケンスでは、送信順は以下の通りである。
Ｉ１Ｐ５Ｂ２Ｂ３Ｂ４Ｐ１０Ｂ６Ｂ７Ｂ８Ｂ９Ｐ１２Ｂ１１Ｉ１４Ｂ１３．．．
【００１６】
図３は図２のビデオ画像の以前の送信順を示す。さらに、図中の矢印は記憶されたビデオ画像（この場合、ＩまたはＰ）の画素ブロックが他のビデオ画像の動き補償予測に使用されることを示す。
図３を参照すると、システムは最初に他のいかなるフレームにも依存しないＩフレームＩ１を送信する。次に、システムはビデオ画像Ｉ１に依存するＰフレーム・ビデオ画像Ｐ５を送信する。次に、ビデオ画像Ｂ２がビデオ画像Ｐ５の前に表示されるとしても、システムはビデオ画像Ｐ５の後にＢフレーム・ビデオ画像Ｂ２を送信する。これは、ビデオ画像Ｂ２を復号化する時点では、デコーダはビデオ画像Ｂ２を復号化するのに必要なビデオ画像Ｉ１およびＰ５内の情報を受信し、記憶しているからである。同様に、ビデオ画像Ｉ１およびＰ５をただちに用いて次のビデオ画像Ｂ３およびビデオ画像Ｂ４を復号化することができる。受信機／デコーダは正しく表示するためにビデオ画像シーケンスを並び替える。この動作で、ＩおよびＰ画像は記憶画像と呼ばれることが多い。
Ｐフレーム画像の符号化は、通常、動きベクトルが画像内の画素ブロックごとに計算される動き補償を使用する。計算された動きベクトルを用いて、前述の以前の画像の画素を並進して予測画素ブロック（Ｐ画素ブロック）を形成できる。次に、Ｐフレーム画像内の実際の画素ブロックと予測画素ブロックとの差が符号化されて送信される。
【００１７】
Ｐ画像
Ｐ画像の符号化は、通常、以前の画像のある位置をポイントする動きベクトル（ＭＶ）が現在の画像内の画素ブロックごとに計算される動き補償（ＭＣ）を使用する。動きベクトルを用いて、前述の以前の画像の画素を並進して予測画素ブロックを形成できる。次に、Ｐ画像内の実際の画素ブロックと予測画素ブロックとの差が符号化されて送信される。
また、各動きベクトルは予測符号化によって送信できる。例えば、動きベクトル予測は近くの動きベクトルを用いて形成できる。その場合、実際の動きベクトルと予測動きベクトルとの差が符号化されて送信される。
【００１８】
Ｂ画像
各Ｂ画素ブロックは、前述した以前のビデオ画像を参照する第１の動きベクトルと、以後のビデオ画像を参照する第２の動きベクトルという２つの動きベクトルを使用する。これら２つの動きベクトルから２つの予測画素ブロックが計算される。次に、２つの予測画素ブロックはある機能を用いて結合され、最終予測画素ブロックが形成される。上記と同様、Ｂフレーム画像の実際の画素ブロックと最終予測画素ブロックとの差が符号化され送信される。
Ｐ画素ブロックの場合、予測符号化を用いてＢ画素ブロックの各動きベクトル（ＭＶ）を送信することもできる。特に、予測動きベクトルは近くの動きベクトルを用いて形成される。次に、実際の動きベクトルと予測動きベクトルとの差が符号化され送信される。
しかし、Ｂ画素ブロックの場合、最も近くの記憶画像画素ブロック内の動きベクトルから動きベクトルを補間する余地がある。そのような動きベクトル補間はデジタル・ビデオ・エンコーダとデジタル・ビデオ・デコーダの両方で実行される。
この動きベクトル補間は固定された背景をゆっくりとパンするカメラによって作成されるビデオ・シーケンスのビデオ画像で特に有効である。実際、そのような動きベクトル補間は単独で使用できる。特に、これは、補間を用いて符号化された上記のＢ画素ブロック動きベクトルに関して差分情報を計算したり送信したりする必要がないということを意味する。
【００１９】
さらに説明を深めるために、上記のシナリオで、画像ｉとｊとの間の画像間表示時間をＤｉ，ｊと表す。すなわち、画像の表示時間が、それぞれ、ＴｉおよびＴｊの場合、
Ｄｉ，ｊ＝Ｔｉ−Ｔｊ ここから
Ｄｉ，ｋ＝Ｄｉ，ｊ＋Ｄｊ，ｋ
Ｄｉ，ｋ＝−Ｄｋ，ｉ
ただし、Ｄｉ，ｊは場合によって負である。
それ故、ＭＶ５，１がＩ１を参照するＰ５画素ブロックの動きベクトルの場合、Ｂ２、Ｂ３およびＢ４内の対応する画素ブロックでは、Ｉ１およびＰ５を参照する動きベクトルはそれぞれ以下の式により補間される。
ＭＶ２，１＝ＭＶ５，１＊Ｄ２，１／Ｄ５，１
ＭＶ５，２＝ＭＶ５，１＊Ｄ５，２／Ｄ５，１
ＭＶ３，１＝ＭＶ５，１＊Ｄ３，１／Ｄ５，１
ＭＶ５，３＝ＭＶ５，１＊Ｄ５，３／Ｄ５，１
ＭＶ４，１＝ＭＶ５，１＊Ｄ４，１／Ｄ５，１
ＭＶ５，４＝ＭＶ５，１＊Ｄ５，４／Ｄ５，１
動きベクトル予測に表示時間の比率が使用されるので、絶対表示時間は必要ないことに留意されたい。それ故、Ｄｉ，ｊ画像間表示時間値には相対表示時間を使用することができる。
このシナリオは、例えば、Ｈ．２６４標準内で生成できる。生成過程で、ＰまたはＢ画像はその動きベクトル予測に任意の以前に送信された画像を使用できる。それ故、上記の場合、画像Ｂ３はその予測に画像Ｉ１および画像Ｂ２を使用できる。さらに、動きベクトルは補間だけでなく外挿してもよい。それ故、この場合、以下のようになる。
ＭＶ３，１＝ＭＶ２，１＊Ｄ３，１／Ｄ２，１
このような動きベクトルの外挿（または補間）は動きベクトルの予測符号化の予測プロセスでも使用できる。
【００２０】
画像間表示時間の符号化
ビデオ・シーケンスの可変画像間表示時間は、極めて高い符号化効率を得られるように符号化し送信しなければならない。表示時間はビデオ・デコーダの要件を満たすように選択可能な精度を有する。理想的には、符号化システムは、比較的簡単なコンピュータ・システムがデジタル・ビデオを復号化できるように、デコーダのタスクを簡単化すべきである。
可変画像間表示時間は、差分動きベクトル、直接モード動きベクトル、および／または暗黙的Ｂ予測ブロック重み付けを計算するためにいくつかの異なるビデオ符号化システムで潜在的に必要である。
ビデオ・シーケンス内の可変画像間表示時間という問題は時間的基準の使用とからみあっている。理想的には、ビデオ・コーデックの出力画像の正確な画素値の導出はその画像が復号化または表示される時間から独立していなければならない。したがって、タイミングの問題と時間基準とはコーデック・レイヤ外で解決しなければならない。
所望の時間独立の基礎となる符号化関連およびシステム関連の両方の理由がある。ビデオ・コーデックでは、以下の２つの目的で時間基準が使用される。
（１）基準画像選択の順序の確立
（２）画像間の動きベクトルの補間
基準画像選択の順序を確立するには、相対位置値を送信するだけでよい。例えば、復号化順のフレーム位置Ｎと表示順のフレーム位置Ｍの差、すなわち、Ｎ−Ｍである。そのような実施形態では、タイム・スタンプまたは他の時間基準は必要ない。動きベクトルを補間する場合、時間的な距離が補間距離に関連するならば、時間的な距離が有用である。しかし、動きが非直線の場合にはこれはあてはまらない。したがって、動きベクトル補間の時間情報以外のパラメータを送信することがより適当と思われる。
【００２１】
システムに関しては、通常のビデオ・コーデックはビデオ・コーデックが他のビデオ（およびオーディオ）・コーデックと共存する、より大きいシステムの一部であると予測できる。そのようなマルチ・コーデック・システムでは、優れたシステム・レイヤ形成および設計は、タイミングなどのコーデックに論理的に依存しない一般機能がコーデック外のレイヤによって処理されることを必要とする。各コーデックによる個別のタイミング管理ではなく、システムによるタイミング管理は、同期化などの共通機能の一貫した処理を達成するのに欠かせない。例えば、ビデオ／オーディオ・プレゼンテーションなどの同時に複数のストリームを処理するシステムでは、異なるストリームを同期状態に保つためにタイミング調整がストリーム内に必要になることがある。同様に、異なるクロックを備えたリモート・システムのストリームを処理するシステムでは、リモート・システムとの同期を保つためにタイミング調整が必要である。そのようなタイミング調整はタイム・スタンプを用いて達成できる。例えば、送信機からの「送信側レポート」によってリンクされ、ストリームごとにＲＴＰレイヤ内でＲＴＰに供給されるタイム・スタンプを同期化に使用できる。これらの送信側レポートは、以下の形式をとることができる。
ビデオＲＴＰタイム・スタンプＸが基準タイム・スタンプＹと位置合わせされている。
オーディオＲＴＰタイム・スタンプＷが基準タイム・スタンプＺと位置合わせされている。
ここで、基準タイム・スタンプのクロック速度は知られており、２つのストリームを位置合わせすることができる。しかし、これらのタイム・スタンプ基準は２つのストリームに関して周期的かつ個別に到着し、２つのストリームの何らかの必要な再位置合わせを引き起こす。これは一般にビデオ・ストリームをオーディオに合わせて調整するかその逆の方法で達成される。タイム・スタンプをシステムが処理する場合、表示される画素値に影響してはならない。より一般的には、時間情報のシステムによる処理はコーデック外部で実行しなければならない。
【００２２】
前節で述べたように、不均一の画像間時間の場合の問題は、画像間表示時間値Ｄｉ，ｊを効率的にデジタル・ビデオ受信機に送信することである。この目標を達成する１つの方法は、第１の画像の後に、画像ごとに現在の画像と最も最近送信された記憶画像との表示時間差をシステムに送信させるというものである。エラー許容力については、画像内で送信を数回繰り返してもよい。例えば、表示時間差をＭＰＥＧまたはＨ．２６４標準のスライス・ヘッダ内で繰り返すことができる。すべてのスライス・ヘッダが失われた場合、損失画像に依存して復号化情報を得る他の画像もおそらくは復号化できない。
したがって、前節の例に関して、システムは以下の画像間表示時間値を送信する。
Ｄ５，１Ｄ２，５Ｄ３，５Ｄ４，５Ｄ１０，５Ｄ６，１０Ｄ７，１０Ｄ８，１０Ｄ９，１０Ｄ１２，１０Ｄ１１，１２Ｄ１４，１２Ｄ１３，１４．．．
動きベクトル予測のために、画像によって、画像間表示時間Ｄｉ，ｊは変化する。例えば、単一のＢフレーム画像Ｂ６のみが２つのＰフレーム画像Ｐ５とＰ７との中間にある場合、以下の情報のみを送信すれば済む。
Ｄ７，５＝２ および Ｄ６，７＝−１
ここで、Ｄｉ，ｊ画像間表示時間値は相対時間値である。
ビデオ画像Ｂ６がビデオ画像Ｐ５とビデオ画像Ｐ７との距離のわずか１／４の位置にある場合、送信する適当なＤｉ，ｊ画像間表示時間値は以下のようになる。
Ｄ７，５＝４およびＤ６，７＝−１
上記の両方の例では、ビデオ画像Ｂ６とビデオ画像Ｐ７との間の表示時間（画像間表示時間Ｄ６，７）は表示時間の「単位」値として使用されていることに留意されたい。最近の例では、ビデオ画像Ｐ５とビデオ画像Ｐ７との間の表示時間差（画像間表示時間Ｄ６，７）は、４表示時間「単位」（４＊Ｄ６，７）である。
【００２３】
復号化の効率の改善
一般に、動きベクトル予測計算は、除数が２の累乗の場合に大幅に簡単化される。これは、２つの記憶された画像間のＤｉ，ｊ（画像間時間）が図４に示すように２の累乗として選択される場合に本発明者の実施態様で容易に達成される。あるいは、予測手順はすべての除数を２の累乗に切り捨てるか丸めるように定義できる。
画像間時間が２の累乗の場合、画像間時間の値そのものの代わりに（２の）累乗を送信しさえすればデータ・ビットの数を低減できる。図４は、画像間の距離が２の累乗になるように選択される場合を示すグラフである。この場合、ビデオ画像Ｐ１とビデオ画像Ｐ３との間のＤ３，１表示時間値２が１（２１＝２のため）として送信され、ビデオ画像Ｐ７とビデオ画像Ｐ３との間のＤ７，３表示時間値４が２（２２＝４のため）として送信できる。
あるいは、外挿演算の動きベクトル補間は、分母が２の累乗であるような方法で変倍して任意の所望の精度に近似することができる。（分母に２の累乗がある除算は除算する値のビットをけた送りするだけで実行できる。）例えば、
Ｄ５，４／Ｄ５，１〜Ｚ５，４／Ｐ
ただし、値Ｐは２の累乗で、Ｚ５，４＝Ｐ＊Ｄ５，４／Ｄ５，１は最も近い整数に丸められるか切り捨てされる。Ｐの値はシステムの定数として周期的に送信されるか設定される。一実施形態では、Ｐの値はＰ＝２８＝２５６に設定される。
【００２４】
この手法の利点は、デコーダが画像あたりＺ５，４を１回だけ計算すれば済むか、または多くの場合にデコーダがＺ値を事前計算して記憶できるという点である。これによって、デコーダは画像内の動きベクトルごとにＤ５，１で除算する必要がなくなり、はるかに効率的に動きベクトル補間が実行できる。例えば、通常の動きベクトル計算は以下のようになる。
ＭＶ５，４＝ＭＶ５，１＊Ｄ５，４／Ｄ５，１
しかし、Ｚ５，４（ただしＺ５，４＝Ｐ＊Ｄ５，４／Ｄ５，１）を計算し記憶する場合、
ＭＶ５，４＝ＭＶ５，１＊Ｚ５，４／Ｐ
Ｐ値は２の累乗になるように選択されているので、Ｐによる除算は単にビットのけた送りである。したがって、ビデオ画像のＺ値が計算されたら、以降の画素ブロックの動きベクトルを計算するのに１回の乗算と１回のけた送りだけが必要である。さらに、計算時に有効ビットが失われないように、システムはすべての除算を最後に実行することで精度を高く保つことができる。こうして、デコーダはエンコーダと同様に動きベクトル補間を正確に実行して、この方法を採らなければ発生する可能性がある不一致の問題を回避することができる。
除算（２の累乗による除算以外の）は、加算または乗算よりもデジタル・コンピュータ・システムにとってはるかに計算が集中するタスクであるため、この手法は動きベクトル補間または外挿を使用する画像を再構築するために必要な計算を大幅に削減することができる。
ある場合には、動きベクトル補間を使用しなくてもよい。ただし、受信機／プレーヤ・システムがビデオ画像を正しい順序で表示するように、受信機／プレーヤ・システムにビデオ画像の表示順序を送信することがなお必要である。この場合、実際の表示時間に関わらず、Ｄｉ，ｊは単に符号付き整数値で足りる。いくつかの応用例では、画像順序を再構成するために符号（正または負）しか必要でない。
【００２５】
画像間時間Ｄｉ，ｊは単一の符号付き整数値として送信できる。ただし、Ｄｉ，ｊ値の符号化に多くの方法を使用してさらに圧縮をかけることができる。例えば、符号ビットに続けて可変長符号化の大きさを指定すると比較的実施しやすく、符号化の効率が上がる。
使用可能なそのような可変長符号化システムはＵＶＬＣ（ユニバーサル可変長符号）として知られる。ＵＶＬＣ可変長符号化システムは以下のコード・ワードで与えられる。
１＝ １
２＝ ０１０
３＝ ０１１
４＝ ００１００
５＝ ００１０１
６＝ ００１１０
７＝ ００１１１
８＝０００１０００．．．
画像間時間を符号化する別の方法は算術符号化の使用である。通常、算術符号化はデータ・ビットの極めて高い圧縮を行う条件付き確率を使用する。
以上のように、本発明は、動きベクトル予測で使用する画像間表示時間の簡単で強力な符号化および伝送方法とこれら画像間表示時間の復号化方法とを紹介する。画像間表示時間の符号化は、可変長符号化または算術符号化を用いて極めて効率的にすることができる。さらに、ビデオ・コーデックの必要のみを満たすように所望の精度を選択することができる。
以上、マルチメディア圧縮および符号化システムで可変精度画像間タイミングを指定するシステムについて説明した。本発明の範囲を逸脱することなく、本発明の要素の材料および構成をさまざまな変更および修正できることは、当業者には明らかであろう。
【符号の説明】
【００２６】
１００ デジタル・ビデオ・エンコーダ
１０５ 着信ビデオ・ストリーム
１１０ 離散コサイン変換（ＤＣＴ）ユニット
１２０ 量子化（Ｑ）ユニット
１３０ 逆量子化器（Ｑ−１）ユニット
１４０ 逆離散コサイン変換（ＤＣＴ−１）ユニット
１５０ 動き補償（ＭＣ）ユニット
１６０ 動き予測（ＭＥ）ユニット
１８０ エントロピー・エンコーダ（Ｈ）ユニット
１９０ レート・コントローラ
【図１】
2010154568.tif 000003
【図２】
2010154568.tif 000004
【図３】
2010154568.tif 000005
【図４】
2010154568.tif 000006