(57)【要約】      （修正有）【課題】ビデオイメージを表現しかつこのビデオイメージを表示するビデオビットストリームを復号・表示するためのビデオメモリ管理システムを提供する。【解決手段】ＦｌｅｘｉＲａｍデザインと分割メモリマネージャデザインとを組み合わせる。第１ＦｌｅｘｉＲａｍ１３７０ａは、第１メモリマネージャ１３１０ａと第１メモリ１３３０ａとの間に配置する。第２ＦｌｅｘｉＲａｍ１３８０ａは、第２メモリマネージャ１３２０ａと第２メモリ１３４０ａとの間に配置する。ＦｌｅｘｉＲａｍ技術を用いて、格納されたすべてのビデオメモリデータが圧縮・復元される。【選択図】図１３ａ
2009177833.tif 000002
【特許請求の範囲】
【請求項１】
符号化されたビデオイメージを表すデータのビットストリームを復号・表示する方法であって、
参照フレームデータおよび双方向フレームデータを供給するために前記データのビットストリームを復号するステップと、
前記参照フレームデータを第１ビデオメモリに格納するステップと、
前記双方向フレームデータを第２ビデオメモリに格納するステップと、
前記第１ビデオメモリから前記参照フレームデータを取り出すステップと、
前記第２ビデオメモリから前記双方向フレームデータを取り出すステップと、
前記双方向フレームデータおよび前記参照フレームデータからのビデオイメージを表示するステップと、
からなる方法。
【請求項２】
請求項１記載の方法において、
前記第２ビデオメモリの記憶容量は、１つの完全なフレーム用の復号されたビデオイメージ情報を格納するのに十分な記憶容量よりも小さい方法。
【請求項３】
請求項１記載の方法において、
前記第１ビデオメモリの記憶容量は、２つの完全なフレーム用の復号されたビデオイメージ情報を格納するのに十分である方法。
【請求項４】
請求項１記載の方法において、
前記第１ビデオメモリの記憶容量は、２つの完全なフレーム用の復号されたビデオイメージ情報を格納するのに十分であり、前記第２ビデオメモリの記憶容量は、１つの完全なフレーム用の復号されたビデオイメージ情報を格納するのに十分な記憶容量よりも小さい方法。
【請求項５】
請求項１記載の方法において、
前記双方向フレームデータを第２ビデオメモリに格納するステップは、前記双方向フレームデータを前記第２メモリに格納する前に圧縮するステップとからさらになり、前記第２ビデオメモリから前記双方向フレームデータを取り出すステップは、前記圧縮された双方向フレームデータを復元するステップとからさらになる方法。
【請求項６】
ビデオ復号・表示システムであって、
第１の数のメモリセグメントに区切られたビデオメモリと、
第２の数の表示セグメントに区切られた表示ピクチャであって、各表示セグメントは、表示セグメントリスト中のエントリに対応し、第２の数は第１の数よりも大きい表示ピクチャと、
論理的スライディングウインドウを維持するメモリマネージャであって、前記論理的スライディングウインドウは、第３の数の表示セグメントリストエントリからなり、論理的スライディングウインドウ中の第３の数の表示セグメントリストエントリは、ビデオメモリ中の第１の数のメモリセグメント以下となるように維持され、前記論理的スライディングウインドウ中の各表示セグメントエントリは、書き込まれているがまだ表示されていないビデオデータを有するメモリセグメントを参照するメモリマネージャと、
からなるシステム。
【請求項７】
請求項６記載のシステムにおいて、
前記表示ピクチャは、Ｂピクチャであるシステム。
【請求項８】
請求項６記載のシステムにおいて、
前記表示ピクチャは、Ｉピクチャであるシステム。
【請求項９】
請求項６記載のシステムにおいて、
前記表示ピクチャは、Ｐピクチャであるシステム。
【請求項１０】
請求項６記載のシステムにおいて、
前記メモリマネージャは、対応するメモリセグメントが前記ビデオメモリから読み出された後に表示セグメントエントリを論理的スライディングウインドウから解放するシステム。
【請求項１１】
請求項６記載のシステムにおいて、
前記メモリマネージャは、対応するメモリセグメントが書き込まれた後に表示セグメントエントリを論理的スライディングウインドウに付加するシステム。
【請求項１２】
請求項６記載のシステムにおいて、
前記メモリマネージャは、メモリセグメントがビデオメモリから読み出された後に前記メモリセグメントを論理的スライディングウインドウから解放し、かつメモリセグメントが書き込まれた後に前記メモリセグメントを論理的スライディングウインドウに付加するシステム。
【請求項１３】
請求項６記載のシステムにおいて、
前記論理的スライディングウインドウは、インターレースされたピクチャのトップフィールドに対応する論理的トップウインドウと、前記インターレースされたピクチャのボトムフィールドに対応する論理的ボトムウインドウとからなるシステム。
【請求項１４】
請求項６記載のシステムにおいて、
前記ビデオメモリマネージャは、フィールドピクチャおよびフレームピクチャ両方を取り扱うシステム。
【請求項１５】
ビデオ復号・表示システムであって、
多数のメモリセグメントに区切られたビデオメモリと、
多数のエントリを有するメモリセグメントリストであって、前記メモリセグメントリストの各エントリは、ビデオメモリ中のメモリセグメントに対応し、かつ対応するメモリセグメントが書き込まれているが読み出されてはいないかどうかを示すビジーインジケータからなる、メモリセグメントリストと、
多数の表示セグメントに区切られた表示ピクチャと、
多数のエントリを有する表示セグメントリストであって、表示セグメントリストの各エントリは、表示ピクチャ中の表示セグメントに対応し、かつメモリセグメントリスト中のエントリを指すインデックスからなり、前記表示セグメントリストは、トップポーションとボトムポーションとからなり、前記トップポーションとボトムポーションの各々は、前記表示セグメントリストの多数のエントリの半分からなる、表示セグメントリストと、
前記表示セグメントリストのエントリを指す読み取りポインタであって、前記メモリセグメントは、次に表示されるべきビデオデータを格納している読み取りポインタにより指された表示セグメントリストのエントリにより参照される、読み取りポインタと、
前記表示セグメントリストの２つの異なるエントリを指す第１書き込みポインタおよび第２書き込みポインタであって、前記表示ピクチャはフィールドピクチャフォーマットであり、前記第１書き込みポインタは表示セグメントリストのトップポーション中のエントリを指すのに対して前記第２書き込みポインタは表示セグメントリストのボトムポーション中のエントリを指し、かつ表示ピクチャがフレームピクチャフォーマットであれば、第１書き込みポインタおよび第２書き込みポインタはその間に１の固定間隔を有する、第１書き込みポインタおよび第２書き込みポインタと、
からなるシステム。
【請求項１６】
ビデオイメージを表示するシステムであって、
ビデオメモリと、
前記ビデオイメージを表すビデオデータのビットストリームを受信するメモリマネージャと、
前記ビデオイメージを表示するために、前記メモリマネージャに連結された表示サブシステムと、
前記メモリマネージャおよびビデオメモリに連結され、前記ビデオメモリ中に格納されるべき前記ビデオデータを圧縮するデータ圧縮器と、
前記メモリマネージャおよびビデオメモリに連結され、前記メモリマネージャのために、前記ビデオメモリから読み出された前記圧縮ビデオデータを復元するデータ復元器と、  からなるシステム。
【請求項１７】
請求項１６記載のシステムにおいて、
前記データ圧縮器は、損失性であるシステム。
【請求項１８】
請求項１６記載のシステムにおいて、
前記データ圧縮器は、非損失性であるシステム。
【請求項１９】
請求項１６記載のシステムにおいて、
前記データ圧縮器は、前記ビデオデータを圧縮するエラー拡散機構および画素切り捨て機構からなるシステム。
【請求項２０】
請求項１９記載のシステムにおいて、
前記データ復元器は、前記ビデオメモリ中に格納されている前記圧縮されたビデオデータを復元する画素再構築機構およびビット接合機構からなるシステム。
【請求項２１】
請求項１６記載のシステムにおいて、
前記データ圧縮器は、前記ビデオデータを圧縮するエラー拡散機構および画素切り捨て機構からなり、前記データ復元器は、前記ビデオメモリ中に格納されている前記圧縮されたビデオデータを復元する画素再構築機構およびビット接合機構からなるシステム。
【請求項２２】
請求項２１記載のシステムにおいて、
前記エラー拡散機構は１ビットエラー拡散機構であり、前記画素切り捨て機構はカルテットあたり１画素切り捨て機構であり、前記画素再構築機構はカルテットあたり１画素再構築機構であり、前記ビット接合機構はゼロ接合機構であるシステム。
【請求項２３】
ビデオイメージの復号・表示方法であって、
前記ビデオイメージを表す符号化されたビデオデータのビットストリームを復号するステップと、
復号されたビデオデータをメモリマネージャに供給するステップと、
復号されたビデオデータを圧縮するステップと、
圧縮されたビデオデータをビデオメモリに格納するステップと、
前記圧縮されたビデオデータをビデオメモリから読み取るステップと、
前記ビデオイメージを表示する表示サブシステムのために圧縮されたビデオデータを復元するステップと、
からなる方法。
【請求項２４】
請求項２３記載の方法において、
前記復号されたビデオデータを圧縮するステップは、損失性である方法。
【請求項２５】
請求項２３記載の方法において、
前記復号されたビデオデータを圧縮するステップは、非損失性である方法。
【請求項２６】
請求項２３記載の方法において、
前記復号されたビデオデータを圧縮するステップは、エラー拡散段階および画素切り捨て段階からなり、前記圧縮されたビデオデータを復元するステップは、画素再構築段階およびビット接合段階からなる方法。
【請求項２７】
符号化されたビデオイメージを表すデータのビットストリームを復号・表示するシステムであって、
前記データのビットストリームを復号する復号器であって、復号されたデータが参照フレームデータおよび双方向フレームデータからなる、複合器と、
前記復号器に連結され、前記参照フレームデータを取り扱う第１ビデオメモリマネージャと、
前記参照フレームデータを格納するために、前記第１ビデオメモリマネージャに連結された第１ビデオメモリと、
前記復号器に連結され、前記双方向フレームデータを取り扱う第２ビデオメモリマネージャと、
前記双方向フレームデータを格納するために、前記第２ビデオメモリマネージャに連結された第２ビデオメモリと、
前記ビデオイメージを表示するために、前記第１ビデオメモリマネージャおよび前記第２ビデオメモリマネージャに連結された表示サブシステムと、
からなるシステム。
【請求項２８】
請求項２７記載のシステムにおいて、
前記第２ビデオメモリの記憶容量は、１つの完全なフレーム用の復号されたビデオイメージ情報を格納するのに十分な記憶容量よりも小さいシステム。
【請求項２９】
請求項２７記載のシステムにおいて、
前記第１ビデオメモリの記憶容量は、２つの完全なフレーム用の復号されたビデオイメージ情報を格納するのに十分であるシステム。
【請求項３０】
請求項２７記載のシステムにおいて、
前記第１ビデオメモリの記憶容量は、２つの完全なフレーム用の復号されたビデオイメージ情報を格納するのに十分であり、前記第２ビデオメモリの記憶容量は、１つの完全なフレーム用の復号されたビデオイメージ情報を格納するのに十分な記憶容量よりも小さいシステム。
【請求項３１】
請求項２７記載のシステムにおいて、
前記第２ビデオメモリマネージャおよび前記第２ビデオメモリに連結され、前記第２ビデオメモリ中に格納されるべき前記双方向フレームデータを圧縮するデータ圧縮器と、
前記第２ビデオメモリマネージャおよび前記第２ビデオメモリに連結され、前記第２ビデオメモリから読み出された圧縮された双方向フレームデータを復元するデータ復元器と、
からさらになるシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＭＰＥＧ（"Moving Picture Experts Groups" ）復号・表示システムに関し、より詳細には、ビデオイメージの復号・表示用のＭＰＥＧ復号・表示システムで必要とされるビデオメモリサイズの減少に関する。
【背景技術】
【０００２】
１９８０年代末期、モーションビデオおよびそれに関連する音声を第１世代ＣＤ−ＲＯＭ上に１．４Ｍビット／秒で載せる必要が生じた。この目的のため、１９８０年代末期および１９９０年代初頭、ＩＳＯ（「国際標準化機構」）ＭＰＥＧ委員会は、ビデオおよび２チャンネルステレオ音声のためのデジタル圧縮規格を開発した。この規格は、通称ＭＰＥＧ−１、公式にはＩＳＯ１１１７２として知られている。
【０００３】
ＭＰＥＧ−１に続き、衛星、カセットテープ、放送およびＣＡＴＶなどの伝送媒体用のエンターテインメントテレビを圧縮する必要が生じた。従って、フル解像度の標準解像度テレビ（ＳＤＴＶ）画像または高品位テレビ（ＨＤＴＶ）画像用のデジタル圧縮方法を利用可能にするため、ＩＳＯは通称ＭＰＥＧ−２、公式にはＩＳＯ１３８１８として知られる第２の規格を開発した。ＭＰＥＧ−２を最適化するために選ばれたビットレートは、ＳＤＴＶについては４Ｍビット／秒および９Ｍビット／秒、ＨＤＴＶについては２０Ｍビット／秒であった。
【０００４】
ＭＰＥＧ−１規格もＭＰＥＧ−２規格も、どの符号化方法を使用するか、符号化プロセス、または符号器の詳細について規定していない。これらの規格は、復号器へのデータ入力を表現するためのフォーマット、およびこれらのデータを解釈するためのルールセットを規定しているのみである。データを表すためのこれらのフォーマットは、構文と呼ばれ、ビットストリームと称される種々の有効なデータストリームを構築するのに用いることができる。データを解釈するためのルールは、復号意味論と呼ばれる。復号意味論の順序集合は、復号プロセスと呼ばれる。
【０００５】
ＭＰＥＧ構文は、空間的冗長性と時間的冗長性の両方を利用する種々の符号化方法をサポートしている。空間的冗長性は、８×８画素ブロックのブロックベースの離散コサイン変換（「ＤＣＴ」）符号化を用いて利用され、その後に量子化、ジグザグスキャン、および０量子化されたインデックスおよびこれらインデックスの振幅の可変長符号化が行なわれる。ＤＣＴ係数の知覚的重み付け量子化を可能にする量子化行列は、知覚的に無関係の情報を捨てるために用いることができ、従って、符号化効率がさらに向上する。一方、時間的冗長性は、動き補償予測、順方向予測、逆方向予測および双方向予測を用いて利用される。
【０００６】
ＭＰＥＧは２タイプのビデオデータ圧縮方法、すなわちフレーム内符号化およびフレーム間符号化を提供する。
フレーム内符号化は、空間的冗長性を利用するためのものである。対話的要件の多くは、フレーム内符号化のみで満たし得る。しかしながら、低ビットレートのいくつかのビデオ信号において、フレーム内符号化のみで達成できる画像品質は十分ではない。
【０００７】
従って、時間的冗長は、予測エラーと呼ばれるフレーム間差信号を計算するＭＰＥＧアルゴリズムにより利用される。予測エラーの計算において、動き補償の技術は、動きについての予測を補正するために使用される。Ｈ. ２６１におけるように、マクロブロック（ＭＢ）アプローチは、ＭＰＥＧにおける動き補償に採用されている。前方向予測と呼ばれる一方向の運動評価において、符号化しようとするピクチャ内の目標ＭＢは、参照ピクチャと呼ばれる過去のピクチャ内の同サイズの移動されたマクロブロックのセットと突き合わせられる。Ｈ. ２６１におけるように、目標マクロブロックに最もよく一致する参照ピクチャ内のマクロブロックが予測ＭＢとして用いられる。予測エラーは、次に目標マクロブロックと予測マクロブロックとの差として計算される。
【０００８】
Ｉ．ピクチャバッファサイズ
（１）２つの参照フレーム
要約すれば、ＭＰＥＧ−２はビデオピクチャを３タイプのピクチャ（すなわち、イントラ「Ｉ」、予測「Ｐ」および双方向予測「Ｂ」）に分割する。定義により、Ｉピクチャ内のすべてのマクロブロックは、（ベースラインＪＰＥＧピクチャのように）符号化イントラでなければならない。さらに、Ｐピクチャ内のマクロブロックはイントラあるいは非イントラとして符号化し得る。Ｐピクチャの非イントラ符号化の間に、Ｐピクチャは、前に再構築されたピクチャから一時的に予測され、それにより直前のＩまたはＰピクチャについて符号化される。最後に、Ｂ（すなわち双方向的予測）ピクチャ内のマクロブロックは、独立して、イントラあるいは順方向予測、逆方向予測または順方向および逆方向（補間）予測などの非イントラとして選択され得る。Ｂピクチャの非イントラ符号化の間に、ピクチャは、直後のＩまたはＰピクチャだけでなく、直前のＩまたはＰピクチャを基準として符号化される。符号化順序について、Ｐピクチャは因果的であるのに対し、Ｂピクチャは因果的ではなく、予測用に偶然に符号化された２つの包囲するピクチャを使う。圧縮効率について、Ｉピクチャは効率が最も低く、Ｐピクチャは多少よく、Ｂピクチャは最も効率的である。
【０００９】
すべてのマクロブロックヘッダーは、マクロブロックタイプと呼ばれる要素を含み、これはスイッチのようにこれらのモードをオンおよびオフにできる。マクロブロック（または、ＭＰＥＧ−２におけるようなモーションタイプ）タイプは、ことによると、ビデオ構文全体の中で単独で最も強力な要素である。ピクチャタイプ（Ｉ、ＰおよびＢ）は、単に、意味論の範囲を広げてマクロブロックモードを可能にする。
【００１０】
ピクチャのシーケンスは、Ｉ、ＰおよびＢピクチャのほとんどどのようなパターンからでも成り得る。固定パターン（例えば、ＩＢＢＰＢＢＰＢＢＰＢＢＰＢＢ）を持つことは工業的には一般的であるけれども、より進化した符号器は、よりグローバルな特徴の文脈中のローカルなシーケンスの特徴に従って３つのピクチャタイプの配置を最適化することを試みる。
【００１１】
前に説明したように、Ｂピクチャを再構築するためには復号器は２つの参照フレーム（すなわち、２つのＰフレーム、ＰおよびＩフレーム各１つ、または２つのＩフレーム）を必要とするので、ビデオ復号・表示システムは、２つの参照フレームを格納するために、ビデオメモリの少なくとも２つのフレームを割り当てなければならない。
【００１２】
（２）２つの半フレーム
（ｉ）インターレースビデオ
さらに、ＭＰＥＧ−２は、フレームがプログレッシブに符号化、またはインターレースされ「プログレッシブフレーム」変数により信号で伝えられ得ることを定義する。
プログレッシブフレームは、フィルムから組織されたビデオ材料のための論理選択であり、そこではすべての「画素」が統合、すなわちほとんど同じ瞬間にキャプチャされる。ピクチャ上の場面の光学的イメージは、１度に１ラインが、左から右そして上から下へ走査される。垂直方向に表し得る細部は、走査線数により制限される。従って、ラスタ走査低下の結果として、垂直解像度の細部のいくらかが失われる。同様に、各走査線のサンプリングのため、水平方向の細部のいくらかが失われる。
【００１３】
走査線の選択は、帯域幅、フリッカおよび解像度の矛盾した要件間のトレードオフを伴う。インターレースフレーム走査は、異なる時間にサンプリングされた２つのフィールドのラインで構成されたフレームを用いてこれらのトレードオフを達成しようとし、２つのフィールドのラインはインターリーブされており、それにより、フレームの２つの連続するラインは交互のフィールドに属する。これは空間的および時間的解像度における垂直−時間的トレードオフである。
【００１４】
インターレースされたピクチャのために、ＭＰＥＧ−２は２つの「ピクチャ構造」の選択を提供する。「フィールドピクチャ」では、各々がマクロブロックに分割されて、かつ別々に符号化される個々のフィールドから構成される。他方、「フレームピクチャ」で、各インターレースされたフィールドペアは、１つのフレームに共にインターリーブされ、そのフレームは次にマクロブロックに分割され、符号化される。ＭＰＥＧ−２は、インターレースされたビデオが交互のトップおよびボトムフィールドとして表示されることを必要とする。しかしながら、フレーム内では、トップまたはボトムフィールドの一方が、一時的に最初に符号化され、フレームの第１フィールドピクチャとして送られる。フレーム構造の選択は、ＭＰＥＧ−２パラメータの１つにより示される。
【００１５】
インターレースされたフレームピクチャを処理する従来の復号・表示システムにおいて、たとえトップフィールドおよびボトムフィールドのために再構築された両方のデータが復号器により同時に生成されたとしても、ボトムフィールドはトップフィールドの表示完了後にやっと表示されるか、あるいは逆の場合も同じである。ボトムフィールド表示において、この遅延のため、遅延したものについてボトムフィールドを格納するために、１フィールド（半フレーム）サイズのバッファが必要である。付加的な１フィールド（半フレーム）のこの付加的なビデオメモリ要件が、２つの参照フレーム（すなわち、Ｉおよび／またはＰフレーム）を格納するために必要な２つのフレームの前述した要件に加えられることに留意されたい。
【００１６】
（ｉｉ）３：２プルダウン
リピート・ファースト・フィールドは、現在のフレームからのフィールドまたはフレームが、フレームレート変換の目的のために繰り返されるべきである（３０Ｈｚ表示対２４Ｈｚ符号化の以下の例のように）ことを信号で伝えるために、ＭＰＥＧ−２に導入された。平均して、２４フレーム／秒符号化シーケンスにおいて、１つおきの符号化されたフレームは、リピート・ファースト・フィールドフラッグを信号で伝える。従って、２４フレーム／秒（または４８フィールド／秒）符号化シーケンスは、３０フレーム／秒（６０フィールド／秒）表示シーケンスになる。このプロセスは数十年来、３：２プルダウンとして知られている。テレビ出現以来、ＮＴＳＣディスプレイ上で見られたほとんどの映画は、この方法で表示されてきた。ＭＰＥＧ−２フォーマットにおいて、リピート・ファースト・フィールドフラッグはあらゆるフレーム構造化ピクチャにおいて独立して決定されるので、実際のパターンは不規則となり得る（それは、文字どおり１つ置きのフレームである必要はない）。
【００１７】
ＭＰＥＧ−２ビデオについて、ビデオディスプレイおよびメモリコントローラは、復号されたビデオデータと共に来るフラッグをチェックすることにより、いつ３：２プルダウンを実行するかを自身で決定しなければならない。ＭＰＥＧ−２は、フレームまたはフィールドが繰り返されるべきかどうかを明示的に記述する２つのフラッグ（リピート・ファースト・フィールドおよびトップ・フィールド・ファースト）を提供する。プログレッシブシーケンスにおいて、フレームは２〜３回繰り返され得る。一方、シンプルおよびメインプロファイルは、繰り返されたフィールドにのみ限定される。さらに、リピート・ファースト・フィールドは、プログレッシブフレーム構造化ピクチャにおいてのみ信号で伝えられ得る（値＝１）ということは一般的な構文上の制限である。
【００１８】
例えば、最も一般的なシナリオでは、１つのフィルムシーケンスは毎秒２４フレームを含む。しかしながら、シーケンスヘッダー中のフレームレートエレメントは、３０フレーム／秒を示す。平均して、１つおきの符号化されたフレームは、フレームレートを２４Ｈｚから３０Ｈｚまで水増しするために、リピートフィールド（リピート・ファースト・フィールド＝１）の信号を送る。すなわち、（２４符号化フレーム／秒）＊（２フィールド／符号化フレーム）＊（５表示フィールド／４符号化フィールド）＝６０表示フィールド／秒＝３０表示フレーム／秒。
【００１９】
３：２プルダウン能力を有するシステムについて、ビデオメモリの別の余分な１フィールド（半フレーム）が、最初に表示されたフィールドを後に繰り返す目的で格納するために必要とされる（３：２プルダウンプロトコルによる）。なぜならば、最初に表示されたフィールドは、第２フィールドの表示終了後に表示用に再度必要とされるからである。この要件を説明すると、復号中にトップフィールドが表示されると、次にボトムフィールドはトップフィールドの表示完了に続いて表示される。しかしながら、このトップフィールドは、システムがボトムフィールド表示を終了した後に再び表示用に必要とされる（すなわち、３：２プルダウン）。トップフィールドは、２つの異なる瞬間（すなわち、ボトムフィールド表示の前後）に表示用に必要とされるので、トップフィールドを格納するためにビデオメモリの別の半フレーム（１フィールド）が必要になる。２つの参照フレームを格納するのに必要な前述した２．５フレームに、インターレースされたピクチャを表示するためにの半フレームを加えて、ＭＰＥＧ−２ビデオピクチャを表示するために、従来システムは合計３フレームのビデオメモリを必要とする。
【００２０】
（ｉｉｉ）静止フレーム
いくつかの新設計のＭＰＥＧ−２ビデオ復号・表示システムでは、現在表示中のフレームを利用者が静止させることもできる。「静止フレーム」条件下では、ビデオ復号・表示システムは、利用者からさらに指示があるまで現在表示中のピクチャを繰り返し表示する。停止中はそれ以上の復号および３：２プルダウンが必要とされないので、前述した２つの半フレーム（すなわち、インターレースされたピクチャの表示と３：２プルダウン用）は要求されない。しかしながら、表示中のフリーズされたフレームがプログレッシブＢフレームであれば、Ｂフレーム全体がビデオシステム中に格納される必要があるので、現在表示中のＢフレームを格納するために、ビデオメモリの余分なフレームが必要である。フリーズされたフレームがＩまたはＰフレームであれば、余分なビデオメモリが全く必要とされないことは真実である。なぜなら、これら２つの参照フレームはすでにビデオメモリ中に（順方向予測フレームおよび逆方向予測フレームとして）格納されているからである。しかしながら、通常Ｂフレームは参照用にビデオメモリ中に格納されないので、ビデオメモリの余分なフレームがＢフレーム表示用に必要である。従って、Ｂフレームピクチャの正確なイメージを表示するためには、参照フレームを格納するために必要な２つのフレームに加え、ビデオメモリの別のフルフレームが必要である。
【００２１】
ＩＩ．従来のビデオ復号・表示システムが直面する問題
ＭＰＥＧ−２メインプロファイル・メインレベルシステムは、ＣＣＩＲ６０１パラメータにおいてサンプリング限界（ＮＴＳＣについては７２０×４８０×３０Ｈｚ、ＰＡＬについては７２０×５７６×２４Ｈｚ）を有すると規定されている。用語「プロファイル」は、ＭＰＥＧにおいて使われる構文（すなわち、アルゴリズム）を限定するために用いられ、用語「レベル」は、符号化パラメータ（サンプルレート、フレーム寸法、符号化されたビットレート等）を限定するために用いられる。それと共に、ビデオメインプロファイル・メインレベルは、複雑さを１９９４ＶＬＳＩ技術の実現可能な制限で標準化し、それでもやはり大半のアプリケーションの要求を満たす。
【００２２】
ＣＣＩＲ６０１レートビデオについて、ＰＡＬ／ＳＥＣＡＭ復号・表示システムに必要な３フレームが、復号器のビデオメモリ要件を、通常の１６Ｍビット（２Ｍバイト）限界を越えて、３２−Ｍビットの次のレベルのメモリデザインへと押しやる。このメモリ制約は、１９９７年７月８日に登録され、本願と同じ譲受人に譲渡されたＣｉｓｍａｓによる米国特許第５，６４６，６９３号（特許文献１）で論じられている。この特許は、その全体が本願明細書において参照により援用されている。従来技術においてよく立証されてきたように、ビデオメモリを１６−Ｍビット以上に増大させると、メモリコントローラのデザインを複雑にし、また別の１６Ｍビットビデオメモリの製造費用が加わることになる。
【００２３】
特許文献１は、サイズが通常のビデオメモリ要件よりも小さい（すなわち、メモリの３フレーム）フレームバッファを用いて、ＭＰＥＧビデオの復号・表示を行なうシステムおよび方法を開示している。復号・表示の間、特許文献１のシステムは、完全な第２のフィールドを格納する代わりに、第１のフィールドが表示されつつある時は、第２のフィールドの一部のみを格納する。表示のために第２のフィールドが必要になると、復号器は、第２のフィールドの足りない部分を再度復号して、第２のフィールド表示用の残りのデータを生成する。第２のフィールドを表示するために、最初に表示されたフィールドについて割り当てられた同じ格納場所を再度利用することによって、復号・表示システムは、メモリの半フレームまでの節約をする（パーティションの数による）。しかしながら、表示中のビデオメモリ不足の問題を特許文献１のシステムがたとえ解決したとしても、特許文献１のシステムは、第２のフィールドの足りない部分を２度目に復号するための付加的な復号パワーを必要とする。従って、ビデオメモリの要件を低減する一方で、第２の復号段階を無くすという特許文献１と同じ目的を達成できる新しいビデオメモリ管理システムが望まれている。
【００２４】
本発明の付加的な目的および利点は、以下の説明中で述べられ、またその説明からある程度明らかになるか、あるいは本発明の実施により学ばれ得る。本発明の目的および利点は、特に特許請求の範囲において指摘される手段および組合せによって実現および達成され得る。
【先行技術文献】
【特許文献】
【００２５】
【特許文献１】米国特許第５，６４６，６９３号
【発明の概要】
【００２６】
本発明は、圧縮されたビデオデータのビットストリームの復号・表示に用いられるビデオメモリを取り扱うための改良されたビデオメモリコントロールシステムに向けられている。詳細には、本発明は、圧縮されたビデオデータのビットストリームの受信、圧縮されたビデオデータの復号、およびその中に含まれているイメージの表示のためのビデオメモリ管理システムに向けられている。
【００２７】
このメモリ管理システムの１つの側面は、ビデオメモリ管理を取り扱うためのモジュール式メモリ管理システムまたは装置を提供することである。より詳細には、本発明のビデオ復号・表示システムは、２つの別個のメモリマネージャを有する分割メモリマネージャから成る。これらのメモリマネージャの各々は、特定のメモリ管理機能を取り扱う。メモリ管理機能を種々のメモリマネージャ間で分けることにより、ビデオデータの復号・表示はより効率的に実行できる。
【００２８】
本発明の別の側面は、ビデオメモリの斬新な処理および取り扱方法を提供することで、これによりＭＰＥＧ−２データストリームの効率的な取り扱い方法が提供される。特に、セグメント化された再利用可能なビデオメモリ管理システムが開示されている。
【００２９】
本発明の別の側面は、ビデオ復号・表示システムに必要とされるビデオメモリのサイズをさらに減らすことが可能なフレーム内ビデオデータ圧縮システムを提供することである。
【００３０】
添付図面は、本願明細書中に含まれかつその一部を構成しており、本発明の好ましい実施態様を例示するもので、前述した全般的説明および以下に示される好ましい実施態様の詳細な説明と共に、本発明の原理の説明を助けるものである。
【図面の簡単な説明】
【００３１】
【図１】従来のビデオ復号・表示システムを示す。
【図２】本発明の分割メモリマネージャデザインの好ましい実施態様を示す。
【図３】本発明の分割メモリマネージャデザインの別の好ましい実施態様を示す。
【図４】表示セグメントリストとメモリセグメントリストとを用いた、ビデオメモリを間接的にアドレスする方法を示す。
【図５】メモリセグメントリストの詳細を示す。
【図６】表示セグメントリストの詳細を示す。
【図７】（ａ）フレームピクチャフォーマットおよび（ｂ）フィールドピクチャフォーマットのための表示セグメントリスト上の２つの書き込みポインタおよび読み取りポインタの位置決めを示す。
【図８】セグメント化された再利用可能なビデオメモリデザインの詳細を示すブロック図である（本発明者によりローリングメモリデザインと名付けられている）。
【図９】各ピクチャについての表示セグメントリストの初期化の詳細を示す。
【図１０】各マクロブロック行の復号されたビデオデータのビデオメモリへの書き込みを示す。
【図１１】表示セグメントリストの更新の詳細を示す。
【図１２】ＦｌｅｘｉＲａｍデザインの３つの好ましい実施態様を示す。
【図１３ａ】ＦｌｅｘｉＲａｍデザインの別の３つの好ましい実施態様のうちの１つを示す。
【図１３ｂ】ＦｌｅｘｉＲａｍデザインの別の３つの好ましい実施態様のうちの１つを示す。
【図１３ｃ】ＦｌｅｘｉＲａｍデザインの別の３つの好ましい実施態様のうちの１つを示す。
【図１４】ビデオデータ圧縮・復元の段階を示すブロック図である。
【図１５】圧縮および復元の種々の段階の間のカルテットのビデオデータフォーマットを示す。
【発明を実施するための形態】
【００３２】
本発明は、いくつかの好ましい実施態様について説明される。好ましい実施態様は、ビデオデータの取り扱いおよび処理のための装置および方法である。以下の本発明の３つの側面が詳細に論じられる。すなわち、（１）分割ビデオメモリマネージャ、（２）セグメント化再利用可能メモリデザイン（本発明者により「ローリングメモリデザイン」と名付けられている）、および（３）方法および用途を考慮しないシンプル固定低ビットレート補助圧縮技術（本発明者により「ＦｌｅｘｉＲａｍ」と名付けられている）である。本発明のこれら３つの側面すべては、ビデオメモリデータの効率的取り扱いについて開示され、単独のビデオ復号・表示システムにおいて実行できる。
【００３３】
１．分割ビデオメモリマネージャ
図１は、従来のビデオ復号・表示システムを示すもので、復号器１１０、メモリマネージャ１２０、ビデオメモリ１３０、および表示サブシステム１４０から成っている。符号化されたビデオデータの連続したビットストリームは、復号および表示のため復号器１１０に供給される。ビデオデータの連続したビットストリームは、全体的なシステムデザインに応じて、一定または可変ビットレートで供給される。復号器１１０はビットストリームを復元し、次に復元されたデータをメモリマネージャ１２０に供給する。メモリマネージャ１２０は、復元されたビデオデータをビデオメモリ１３０中に格納し、そのビデオデータを表示サブシステム１４０に供給する役割を果たしている。
【００３４】
ビデオメモリ１３０は基本的に、２つの主要な機能を果たしている。すなわち、第１に、これはビデオデータの入り来るビットストリームの復号と復号されたビデオイメージの表示との間で異なる処理測度を緩衝するためのビデオデータバッファとして働く。ビデオイメージ表示のいかなる中断も防止するため、復号器１１０は、表示サブシステム１４０からの要求よりも速くビデオデータを復元することが一般に要求される。第２に、ビデオメモリ１３０は、参照フレームデータ（すなわち、ＩおよびＰフレーム）を格納し、データの入り来るビットストリームからビデオイメージを再構築するために復号器１１０に提供することが必要である。従って、図１に示すように、復号器１１０とメモリマネージャ１２０との間のデータバスは双方向であり、それにより復元されたデータは、メモリマネージャ１２０へおよびそこから流れている。
【００３５】
図２は、本発明により開示される斬新な分割メモリマネージャデザインを説明するものである。図１に示すような従来のシングルメモリマネージャデザインの代わりに、本発明のメモリマネージャは２つの別個のメモリマネージャから成っている。すなわち、第１メモリマネージャ２１０と第２メモリマネージャ２２０である。各メモリマネージャはビデオメモリ（すなわち、第１メモリ２３０および第２メモリ２４０）に連結されている。
【００３６】
前の段落で論じたように、基本的に、ビデオメモリに格納される２つのビデオデータグループがある。参照フレームデータ（すなわち、ＩおよびＰフレーム）と、双方向フレームデータ（すなわち、Ｂフレーム）である。ビデオデータのこれら２つのグループは、復号および表示両方において異なって処理されるので、ビデオデータのこれら２つのグループ間のビデオメモリの取り扱いはまったく異なる。
【００３７】
本発明の好ましい実施態様において、第１メモリマネージャ２１０および結合第１メモリ２３０は、参照フレーム（すなわち、ＩおよびＰフレーム）を取り扱いかつ格納するために割り当てられるのに対し、第２メモリマネージャ２２０および結合第２メモリ２４０は、双方向フレーム（すなわち、Ｂフレーム）データを取り扱いかつ格納するために割り当てられる。ビデオメモリコントローラを２つの分離された別個のメモリコントローラに分割することにより、各種類のビデオデータを取り扱うのに最も効率的なメモリ管理および／または圧縮方法を実行するために、２つのコントローラの各々を特別にデザインできる。従来のメモリマネージャを２つの別個のマネージャに分割することにより、従来のビデオ復号・表示システムに優る、ビデオデータをより効率的に取り扱うことができる一方で、単純なシステムデザインを有するという利点が本発明によりもたらされる。
【００３８】
例えば、特許文献１が開示したビデオメモリ管理システムにおいて、メモリ管理方法はＢフレームに向けられる。分割メモリマネージャデザインを用いた好ましい実施態様において、第１メモリマネージャ２１０または３１０および付属する第１メモリ２３０または３３０が従来のビデオメモリ管理機能を実行するのに対して、第２メモリマネージャ２２０または３２０および付属する第２メモリ２４０または３４０のみが特許文献１のメモリ管理技術を実行するようにデザインすることができる。従って、個々の種類のビデオデータ用に特定のビデオメモリ管理技術をカスタマイズできるという本発明の能力は、従来デザインに優るより大きなデザイン柔軟性をビデオシステム設計者にもたらす。
【００３９】
さらに、別の好ましい実施態様において、本発明は３つのメモリマネージャから成る。第１メモリマネージャはＩフレームを取り扱う。第２マネージャはＰフレームを取り扱う。さらに、第３メモリマネージャはＢフレームのみを取り扱う。
別の好ましい実施態様において、本発明は３つメモリマネージャから成る。３つのメモリマネージャの各々は、３つの色成分（例えば、Ｙ、Ｕ、およびＶ）の１つを取り扱う。
【００４０】
多数のメモリマネージャを有するさらなる好ましい実施態様において、メモリマネージャの各々は、ビデオデータのタイプ（例えば、色成分）および／またはグループ（例えば、参照フレームまたは双方向フレーム）の異なる組合せを取り扱うことができる。例えば、好ましい実施態様において、ビデオ復号・表示システムは、Ｉピクチャ用のＹクロマ成分を取り扱うための第１メモリマネージャ、Ｂピクチャ用のＵおよびＶクロマ成分を取り扱うための第２メモリマネージャ、ＩおよびＰピクチャ用のＵおよびＶクロマ成分を取り扱うための第３メモリマネージャ、および残りのビデオデータを取り扱うための第４メモリマネージャから成る。４つのメモリマネージャの各々は、異なるメモリ管理技術を利用できる。
本発明の分割メモリマネージャデザインによりもたらされるデザイン柔軟性はほとんど無制限なので、ビデオデータの特定の種類または定義に適合するように、個々のメモリマネージャをカスタマイズし得る。
【００４１】
図３は、本発明の別の好ましい実施態様を示すものである。ＭＰＥＧ−２のメインプロファイル・メインレベルの定義の下では、リピート・ファースト・フィールドは、ＰＡＬ規格についてのＢフレームについては許されない。従って、ＭＰＥＧ−２メインプロファイル・メインレベルＰＡＬシステムについてデザインされた好ましい実施態様において、リピート・ファースト・フィールドは第２メモリマネージャ３２０に供給される必要はない。なぜならば、第２メモリマネージャ３２０はＢフレームピクチャのみを処理するからである。しかしながら、トップ・フィールド・ファースト信号は、インターレースされたピクチャを取り扱うための第１メモリマネージャ３１０および第２メモリマネージャ３２０の両方にとり依然として必要である。
【００４２】
２．セグメント化された再利用可能なビデオメモリデザイン
本発明の別の側面は、フィールドピクチャおよびフレームピクチャ両方を取り扱うことができるビデオ復号・表示システムのためのビデオメモリ割り当てを取り扱う方法に向けられている。
前に説明したように、ＭＰＥＧ−２は、インターレースされたピクチャに対し２つのピクチャ構造の選択を提供する。フィールドピクチャは、各々がマクロブロックに分割され、個別に符号化された個々のフィールドから成る。一方、フレームピクチャでは、インターレースされた各フィールドペアは一緒に１つのフレームにインターリーブされ、そのフレームは次にマクロブロックに分割され、符号化される。ＭＰＥＧ−２は、インターレースされたビデオが交互のトップおよびボトムフィールドとして表示されることを必要とする。しかしながら、フレーム内では、トップまたはボトムフィールドの一方が一時的に先に符号化され、あらかじめ定められた定義に従ってフレームの第１フィールドピクチャとして送られ得る。２つのピクチャ構造についての復号されたデータのシーケンスにおける違いのため、これらの２つのフォーマットにより定義されたビデオデータの読み取りおよび書き込みは、異なる２つの順番で実行される。
【００４３】
図４は、本発明の好ましい実施態様を説明するものである。図に示されるように、ビデオメモリ４１０は多数のメモリセグメントに区切られている。メモリセグメントの各々は、２つのフィールドのうちの１つのビデオデータの８本の連続するラインを格納することができる。メモリマネージャは、２つのリスト、ＭＳ（メモリセグメント）４２０およびＤＳ（表示セグメント）４３０を作り出しかつ維持する。各メモリセグメントは、メモリセグメントリスト４２０のエントリを介して、表示セグメントリスト４３０のエントリにより間接的にアドレス指定される。ＭＳリスト４２０は、ビデオメモリセグメントと同数のエントリを有し、ＭＳリストの各エントリは１つのメモリセグメントに対応している。好ましい実施態様において、ＭＳリスト４２０は、４８個のメモリセグメントをビデオメモリ４１０中にアドレスするための４８個のエントリを有している。ＰＡＬのケースについて、ビデオメモリ中の４８個のメモリセグメントがフレームの２／３に対応している。ＭＳリスト４２０の各エントリは、ビデオメモリ４１０中のメモリセグメントの第１セルアドレスを定義する２０ビットアドレスを含んでいる。これらのアドレスは、システム設計に応じて、静的または動的とし得る。例えば、ＭＰＥＧ−２ビデオデータの復号・表示用に特にデザインされた専用システムにおいて、システムオーバーヘッドを減らすため、アドレスは、好ましくは静的であって動的ではない。しかしながら、ＭＰＥＧ−１およびＭＰＥＧ−２ビデオデータ両方を表示可能なシステムのような多目的デジタル式復号・表示システムにおいて、これらのアドレスは、種々のビデオメモリ管理方法に対処できるように、好ましくは動的に維持される。
【００４４】
図４に示されるような好ましい実施態様において、ＤＳリスト４３０は、表示スクリーンへビデオメモリ４１０をマッピングする。表示スクリーンは多数のセグメントに論理的に分割されており、ＤＳリスト４３０の各エントリは表示スクリーンの１つのセグメントに対応している。好ましい実施態様において、ＤＳリスト４３０は７２個のエントリを含み、１つが各表示セグメントに対応している。７２という数が選ばれたのは、ＰＡＬフォーマットにおいて、５７６本のラインが表示され、かつ各セグメントなビデオデータの８本のラインを含んでいるからである。従って、数７２＝５７６／８が選択される。
【００４５】
図４と図５に示されるように、ＭＳリスト４２０の各エントリは、ビデオメモリの特定のメモリセグメントがビジーであるかどうかを示すために、１つの付加的なビジービット５１０（「ビジービット」）を含んでいる。具体的には、あるメモリセグメントに書き込まれてそれが表示されなければ、それはビジーとして示される。同様に、ビジーでないメモリセグメントとは、そのメモリセグメントが表示されたが、新しいデータはなんらその中に含まれていないことを意味する。本発明にとり、ビジービット５１０を用いることは非常に重要である。なぜならば、ＭＳリスト４２０中の各エントリ上のビジービット５１０のスイッチングは、ビデオメモリ４１０中の論理的スライディングウインドウを定義することと特徴付け得るからである。データがビデオメモリセグメントに書き込みされおよびそこから読み出された時にビジービット５１０を「オン」および「オフ」に設定することにより、論理的スライディングウインドウは、ビジービットが「オン」のＭＳリスト中の対応するエントリを有するすべてのメモリセグメントとして定義される。さらに、論理的スライディングウインドウは、図７に示されるように、２つのＤＳ書き込みポインタ（すなわち、７１０および７２０、または７３０および７４０）および読み取りポインタ（すなわち、７５０または７６０）のインクリメントおよび更新によっても維持される。
【００４６】
ビデオメモリ４１０中のメモリセグメントおよびＭＳリスト４２０中のエントリの物理的位置が、ＤＳリスト４３０中のエントリのように連続して割り当てられなくても、論理的スライディングウインドウは、ＤＳリスト４３０中の連続しているエントリにより定義される。ビデオメモリ４１０中のメモリセグメントにより多くの復号データが格納された後に論理的スライディングウインドウはサイズが増大するのに対し、ビデオメモリ４１０中のメモリセグメントから復号データが読み出された後では、サイズが減少する。さらに、ビデオデータがビデオメモリから読み出されおよびそれに書き込まれると、論理的スライディングウインドウは位置がシフトする（すなわち、ＤＳリスト４３０下方へ）。本発明のキーコンセプトは、表示スクリーンの一部に対応する論理的に連続するメモリスペースを定義できることあり、対応する復号されたビデオデータは、たとえそのビデオデータが物理的ビデオメモリにランダムに格納されることがあったとしても、現在ビデオメモリに書き込まれており、かつ表示されていない。本発明の利点は、物理的ビデオメモリのサイズをフルピクチャより小さくできることである。理論上は、物理的メモリサイズはフルピクチャの格納に必要なサイズの半分（すなわち、フレームの半分）まで小さくし得る。
【００４７】
図４は、本発明の好ましい実施態様により用いられる間接的アドレッシングスキームを示すものである。ＤＳリスト４３０の各エントリは、ＭＳリスト４２０の１つのエントリを指すインデックスを格納するのに対し、ＭＳリスト４２０の各エントリは、ビデオメモリ４１０のメモリセグメントのアドレスを格納する。
【００４８】
好ましい実施態様において、本発明のビデオ復号・表示システムは、フレームピクチャフォーマットおよびフィールドピクチャフォーマット両方におけるインターレースされたピクチャを取り扱う。従って、図６に示されるように、ＤＳリスト４３０は、論理的に２つの部分に区切られる。すなわち、トップフィールドに対応するトップポーション６１０およびボトムフィールドに対応するボトムポーション６２０である。０から３５まで索引を付けられたエントリはトップフィールドに属し、３６から７１まで索引を付けられたエントリはボトムフィールドに属する。ＤＳリスト４３０を対応するビデオメモリセグメント４２０に一致させるため、ＤＳリスト４３０の各エントリは、ＭＳリスト４２０への６ビットインデックス（０から４７）を含む。従って、ＤＳリスト４３０の各エントリはＭＳリスト４２０のエントリを参照し、かつビデオメモリの１つのセグメントに間接的にアドレスする（図４参照）。
【００４９】
図７に示されるように、好ましい実施態様において、ＤＳリスト４３０用に３つのポインタが維持される。すなわち、読み取り・表示用の読み取りポインタ（すなわち、７５０または７６０）１つ、およびビデオメモリ書き込み用の書き込みポインタ（すなわち、７１０、７２０または７３０、７４０）２つである。
フィールドピクチャおよびフレームピクチャについて、これら３つのＤＳポインタは異なる位置に割り当てられる。
【００５０】
図７（ａ）は、ビデオシステムがフレームピクチャを取り扱っている時のこれら３つのポインタの位置を示すものである。データが２つのフィールド間でインターリーブ的に復号される、フレームピクチャ用ビデオデータのビットストリームを取り扱うため、２つの書き込みポインタ７１０、７２０は、間に３６のインタバルを有する２つのＤＳエントリを指すように設定され、それにより、２つの書き込みポインタの各々は、異なるフィールド中の同じオフセット位置にあるエントリを指している（すなわち、トップフィールドおよびボトムフィールド）。さらに、読み取りポインタ７５０は、次に表示されるべきＤＳリスト４３０のエントリを指している。フレームピクチャのトップフィールドおよびボトムフィールド両方に対応するため、論理的スライディングウインドウは、論理的トップウインドウおよび論理的ボトムウインドウからさらに成っている。論理的トップウインドウは、トップウインドウ内にスライディングウインドウを定義し、これはビデオメモリ中のメモリセグメントに間接的にアドレッシングしているＤＳリストのトップポーション中の連続するエントリにより示され、このメモリセグメントは書き込まれたがまだ表示されていないものである。同様に、論理的ボトムウインドウは、スライディングウインドウをボトムフィールド中に定義し、これはビデオメモリ中のメモリセグメントに間接的にアドレッシングしているＤＳリストのボトムポーション中の連続するエントリにより示され、このメモリセグメントは書き込まれたがまだ表示されていないものである。
【００５１】
図７（ｂ）は、ビデオ復号・表示システムがフィールドピクチャを取り扱っている時のこれらのポインタの位置を示すものである。フィールドピクチャのビデオデータは復号器により逐次復号および供給されるので、２つの書き込みポインタは７３０、７４０は、それらの間に１の固定インタバルを有するように設定されている。さらに、読み取りポインタ７６０は、次に表示されるべきＤＳリスト４３０のエントリを指している。フィールドピクチャ中では、ビデオデータは逐次復号および供給され、フレームピクチャにおけるように、論理的スライディングウインドウを論理的トップおよびボトムウインドウにさらに分割する必要は全く無い。従って、前の段落において論じられたような論理的スライディングウインドウが維持される。
【００５２】
図８は、本発明のためのフローチャートを示すものである。
最初に、ビデオ復号・表示システムの初期化中に、ＭＳエントリのすべてのビジービットは、メモリマネージャによりＮＯＴビジー（すなわち、ＭＳエントリの全ビジービットを論理０にセットする）初期化される（段階８１０）。
メモリマネージャが、符号化されたビデオデータの入り来るストリーム中に新しいピクチャを検出すると、図９に示されるように、メモリマネージャはＤＳリスト４３０を初期化する（段階８２０）。
【００５３】
図９は、各ピクチャについてＤＳリスト４３０を初期化する段階を詳しく示すものである（段階８２０）。最初に、メモリコントローラが入り来るビットストリーム中のピクチャのフォーマットをチェックし、ピクチャ構造パラメータ値をチェックすることによりそのピクチャがフィールドピクチャかフレームピクチャかを決定する（段階９１０）。
【００５４】
ビデオデータがフレームピクチャフォーマットであれば、メモリコントローラは次にトップ・フィールド・ファースト変数をチェックしてフラッグが立てられているどうかを決定する（段階９３０）。トップフィールドが最初に復号される必要があれば、ＤＳ読み取りポインタ７５０は３６に初期化され、第１ＤＳ書き込みポインタ７１０は０にセットされ、第２ＤＳ書き込みポインタ７２０は３６にセットされる（段階９６０）。一方、ボトムフィールドが最初に復号される必要があれば、ＤＳ読み取りポインタ７５０は０にセットされ、第１ＤＳ書き込みポインタ７１０は０にセットされ、第２ＤＳ書き込みポインタ７２０は３６にセットされる（段階９７０）。
【００５５】
図９に示されるように、ビデオデータがフィールドピクチャフォーマットであれば、メモリコントローラはピクチャ構造パラメータをチェックして、入り来るビデオデータがトップフィールドピクチャかボトムフィールドピクチャかを決定する（段階９２０）。トップフィールドが復号される必要があれば、３つのＤＳポインタは以下の通りセットされる。すなわち、ＤＳ読み取りポインタ７６０は３６にセットされ、第１ＤＳ書き込みポインタ７３０は０にセットされ、第２ＤＳ書き込みポインタ７４０は１にセットされる（段階９４０）。一方、ボトムフィールドが復号される必要があれば、ＤＳ読み取りポインタ７６０は０にセットされ、第１ＤＳ書き込みポインタ７３０は３６にセットされ、第２ＤＳ書き込みポインタ７４０は３７にセットされる（段階９５０）。
【００５６】
図８に示されるように、ＤＳリストが初期化された後、メモリマネージャは、ＭＳリスト４２０をスキャンして、ＭＳリスト４２０のエントリのビジービット５１０をチェックすることにより、ビデオメモリ４１０中の利用可能なスペースを調べる（段階８３０）。メモリマネージャは、ＭＳリスト４２０をインデックス０からインデックス４７まで順番にスキャンし、ビジービット５１０がセットされていない最初の２つのエントリを見つける。そのような「ビジーでない」セグメントが全く無いか、あるいはそのようなセグメントが１つしか無いのであれば、条件が満たされるまで復号は停止される。復号器はそれにより、２つの「ビジーでない」ビデオメモリセグメントを待つ待機ステージに入る。ビデオメモリセグメント中のデータが読み出されかつ表示されると、メモリマネージャは、メモリセグメントの対応するビジービット５１０を論理０にセットすることにより、新たに復号されたビデオデータを格納するためにメモリセグメントを解放する。
【００５７】
２つのビジーでないメモリセグメントが見つかった時は、第１ＤＳ書き込みポインタ（すなわち、７１０または７２０）により指し示されるＤＳリスト４３０に、第１の利用可能メモリセグメントのＭＳインデックス４２０（すなわち、０、１、２、…または４７）が書き込まれ、第２ＤＳ書き込みポインタ（すなわち、７２０または７４０）により指し示されるＤＳエントリに第２の利用可能メモリセグメントが書き込まれる、それにより２つのＤＳ書き込みポインタは、ビデオメモリ４１０中の２つの「ビジーでない」メモリセグメントに間接的にアドレスしている。
【００５８】
ＤＳエントリが更新された後、復号器はビデオデータの１６本のラインを含む新しいマクロブロック行を復号する（段階８３０）。
ビデオデータのマクロブロック行が復号された後、メモリマネージャは、復号されたビデオデータを段階８４０においてビデオメモリに保存する。図１０は段階８４０の詳細を示すものである。
【００５９】
図１０に示されるように、ピクチャがフィールドピクチャであれば、メモリマネージャは、各マクロブロック行のトップ８ラインのビデオデータを、第１ＤＳ書き込みポインタ７３０により間接的にアドレスされたＭＳセグメントのエントリによりアドレスされたメモリセグメントに書き込む（段階１０３０）。次にメモリマネージャは、各マクロブロック行のボトム８ラインのビデオデータを、第２ＤＳ書き込みポインタ７４０により間接的にアドレスされたＭＳセグメントのエントリによりアドレスされたメモリセグメントへ書き込む（段階１０３０）。
【００６０】
一方、ピクチャがフレームピクチャであれば、復号器が入り来るビットストリームのビデオデータのライン１６本（すなわち、１マクロブロック行）を復号した後、メモリマネージャは、現在復号しているフレームのトップフィールドに対応するビデオデータのライン８本を、第１ＤＳ書き込みポインタ７１０により間接的にアドレスされた第１ＭＳセグメントのエントリによりアドレスされたメモリセグメントへ書き込む。次にメモリマネージャは、現在復号中のフレームのボトムフィールドに対応するビデオデータのライン８本を、第２ＤＳ書き込みポインタ７２０により間接的にアドレスされた第２ＭＳセグメントのエントリによりアドレスされたメモリセグメントへ書き込む（段階１０２０）。
図８に示されるように、対応するメモリセグメントへのビデオデータの書き込みに続き、ＤＳポインタ（すなわち、７１０、７２０、および７５０または７３０、７４０、および７６０）が次に、図１１に示されるような段階（段階８６０）により更新される。
【００６１】
図１１は、ＤＳポインタ（すなわち、７１０、７２０、および７５０または７３０、７４０、および７６０）の更新操作（段階８６０）の詳細を示すものである。メモリマネージャは最初に、ビデオデータがフィールドピクチャフォーマットであるかフレームピクチャフォーマットであるかをチェックし（段階１１１０）、次にそれに応じてメモリマネージャが２つのＤＳ書き込みポインタを更新する（段階１１２０および１１３０）。
【００６２】
ビデオデータがフレームピクチャフォーマットであれば、２つのＤＳ書き込みポインタ７１０、７２０のどちらも１進められる（段階１１２０）。一方、ビデオデータがフィールドピクチャフォーマットであれば、２つのＤＳ書き込みポインタ７３０、７４０のどちらも２進められる（段階１１３０）。
ＤＳポインタが更新された後、メモリマネージャは、現在のピクチャ用にそれ以上入り来るビデオデータがあるかどうかをチェックする。入り来るビデオビットストリームがまだあるならば、その操作は、図８に示されるようなＭＳリストスキャニング段階に戻る（段階８７０）。
【００６３】
現在のピクチャ用の入り来るビットストリームが終結すれば、次にビデオシステムは、さらに復号・表示されるピクチャがさらにあるかどうかをチェックする（段階８８０）。復号・表示のために入り来るピクチャがさらにあれば、全体の操作は段階８２０に戻る。全体の操作は、表示用に入り来るピクチャがもはやなくなれば完了する（段階８９０）。
【００６４】
システムが表示用に付加的なビデオデータを必要とする時は、データの次のライン８本が、ＤＳ読み取りポインタ（すなわち、７５０または７６０）によりアドレスされたＭＳインデックスを用いて、ビデオメモリ４１０のメモリセグメントから取り出される。ＭＳリストエントリ中に格納されているアドレスは、ビデオメモリ４１０から次に表示されるメモリセグメントの位置を特定するのに用いられる。表示用に特定のメモリセグメントが読み出された後、そのＭＳエントリ４２０のビジービット５１０は非ビジーにセットされ、ＤＳ読み出しポインタは次に１増大される（７２を法として）。ポインタが７１に達した後、ＤＳ読み取りポインタは「０」位置にリセットされる。
【００６５】
本発明の１実施態様において、メモリコントローラが、前述した「間接的アドレッシング」スキームを処理するのに十分な速度を有していなければ、ＤＳリスト４３０のエントリは６ビットから２６ビットに増大され、それにより、メモリセグメントのアドレスがＭＳエントリ中で選択されると、それはＭＳリスト４２０インデックスと共にＤＳエントリにコピーされる。メモリセグメントのアドレスをＭＳリスト４２０エントリと共にＤＳリストに書き込むことにより、アドレッシングおよびＭＳリスト４２０からのデータ取り出しの余分な段階が回避できる。
【００６６】
３．ＦＬＥＸＩＲＡＭデザイン
本発明の別の側面は、フレーム内ビデオメモリ圧縮／復元方法に向けられている。
本発明において、ビデオデータは、ビデオメモリに格納される前に、損失性または非損失性に圧縮され、圧縮されたデータは、それがビデオメモリから読み出される時に復元される。このビデオデータ圧縮・復元装置は、本発明者らにより「ＦｌｅｘｉＲａｍ」と名付けられている。
【００６７】
図１２は、本発明の３つの異なる実施態様を示す。
図１２（ａ）に示されるような好ましい実施態様において、本発明のＦｌｅｘｉＲａｍ１２２０ａは、メモリマネージャ１２１０ａに組み込まれており、ビデオデータのすべての圧縮および復元はメモリマネージャ１２１０ａ内で実行される。この実施態様の利点は、ビデオメモリ１２３０ａのための特別なハードウェア要件が全く無いことおよびビデオデータの圧縮および復元のどちらもビデオメモリ１２３０ａに対してトランスペアレントであることである。
【００６８】
図１２（ｂ）は本発明の別の好ましい実施態様を示すもので、ＦｌｅｘｉＲａｍ１２２０ｂは、メモリマネージャ１２１０ｂおよびビデオメモリ１２３０ｂの両方から分離されている。この実施態様の利点は、ビデオ復号・表示システム全体の実質的な修正なしで本発明の実行が可能なことである。
【００６９】
図１２（ｃ）は本発明の別の実施態様を示すもので、ＦｌｅｘｉＲａｍ１２２０ｃはビデオメモリ１２３０ｃに組み入れられている。この実施態様の利点は、データ圧縮および復元の操作全体がメモリマネージャ１２１０ｃに対してトランスペアレントであり、メモリマネージャ１２１０ｃに対しオーバーヘッドが全く付加されないことである。
【００７０】
本発明がすべてのピクチャタイプ（Ｉ、ＰおよびＢ）で作用し、かつどのようなタイプのピクチャに対しても限定されないことは留意すべきである。従って、所望されれば、本発明は、分割メモリマネージャデザインにおいて、（ａ）第２メモリマネージャ２４０、あるいは（ｂ）第１メモリマネージャ２３０と第２メモリマネージャ２４０両方を用いて実行し得る（図２参照）。
【００７１】
図１３ａ、１３ｂおよび１３ｃは、ＦｌｅｘｉＲａｍデザインと分割メモリマネージャデザインとを組み合せた、本発明の３つの異なる実施態様を示すものである。図１３ａは、本発明の２つの好ましい実施態様の１つを示す。この実施態様において、２つのＦｌｅｘｉＲａｍ圧縮器／復号器が用いられる。第１ＦｌｅｘｉＲａｍ１３７０ａは、第１メモリマネージャ１３１０ａと第１メモリ１３３０ａとの間に置かれている。第２ＦｌｅｘｉＲａｍ１３８０ａは、第２メモリマネージャ１３２０ａと第２メモリ１３４０ａとの間に置かれ、ＦｌｅｘｉＲａｍ技術を用いて、格納されたすべてのビデオメモリデータが圧縮・復元される。図１３ｂは、本発明の別の実施態様を示すものである。ＦｌｅｘｉＲａｍ１３７０ｂは、第２メモリマネージャ１３２０ｂと第２メモリ１３４０ｂとの間に置かれ、双方向フレーム（すなわち、Ｂ）のためのビデオデータのみが、ビデオメモリに格納される時に圧縮される。最後に、図１３ｃは本発明のさらに別の実施態様を示すものである。ＦｌｅｘｉＲａｍ１３７０ｃは、第１メモリマネージャ１３１０ｃと第１メモリ１３３０ｃとの間に置かれ、予測フレーム（すなわち、２Ｉ；１Ｉおよび１Ｐ；または２Ｐ）用ビデオデータのみが、ビデオメモリに格納される時に圧縮される。本発明はメモリマネージャの数を２または３に限定するものではないことに留意すべきである。メモリマネージャは、ビデオデータの種々のタイプおよび／またはグループを処理するため、多数（すなわち、３を超える）の別個のメモリマネージャに分割し得る。
【００７２】
特定のシステムについてどの実施態様を実施すべきかを考慮する場合に最も重要な因子は、利用可能なビデオメモリ量、利用可能な処理速度、および所望の画質等である
例えば、前述した実施態様に加え、ＦｌｅｘｉＲａｍデザインは、３つの色成分すべて、あるいは２つのクロマ色成分のみの圧縮および復元に適用できる。
【００７３】
デザインは、前に開示されたすべての実施態様および側面を組み合せることによりさらに改善し得る。例えば、１つの実施態様において、Ｂピクチャ中のＵおよびＶ色成分のみがＦｌｅｘｉＲａｍデザインにより圧縮される。あるいは、別の実施態様において、２つのピクチャグループ（すなわち、参照フレーム、または双方向フレーム）すべてについての３つの色成分すべてが、ＦｌｅｘｉＲａｍデザインにより圧縮される。
【００７４】
分割メモリマネージャ、ＦｌｅｘｉＲａｍ、および原色の分割を組み合せる上での本発明のデザイン柔軟性により、種々のビデオシステム要件、ビデオメモリサイズ、および所望の画質等に応じて、システムデザイナーが最も適切かつ効果的な組み合わせを選択できるようになるという、デザイン自由度におけるたいへんな利点がもたらされる。
【００７５】
図１４は、ＦｌｅｘｉＲａｍデザインの好ましい実施態様の概要を示すものである。図に示されるように、データ圧縮は２つの段階から成る。すなわち、（１）エラー拡散（段階１４１０）、および（２）カルテットあたり１画素切り捨て（段階１４２０）である。
【００７６】
最初、ビデオデータがエラー拡散アルゴリズムに従って圧縮される（段階１４１０）。好ましい実施態様において、基本的圧縮単位は、４つの連続した水平画素を含む「カルテット」と定義される。エラー拡散圧縮段階（段階１４１０）は、カルテットの各画素を個別に圧縮する。１ビットエラー拡散アルゴリズムを用いることにより、本来３２ビット（４画素＊８ビット／画素）を有する画素のカルテットは、２８ビットに圧縮される（４画素＊７ビット／画素）。本発明は１ビットエラー拡散アルゴリズムに限定されるものではなく、多ビットエラー拡散アルゴリズムも同様に、ただし知覚可能な画質低下のトレードオフを伴って実施し得ることに留意すべきである。
【００７７】
ビデオデータ圧縮の第２段階は、「カルテットあたり１画素切り捨て」である（段階１４２０）。カルテットあたり１画素切り捨てアルゴリズムは、４つの７ビット画素のカルテットを２４ビットカルテットに圧縮するものである。データ圧縮器は、切り捨てされるカルテットの最良の画素を計算し、再構築記述子（「ＲＤ」）としてカルテットの最後の３ビットに再構築方法を格納する。この圧縮段階の後、画素の圧縮されたカルテットは２４ビットを有する（３画素＊７ビット／画素＋３ビットＲＤ）。このカルテットあたり１画素切り捨ての詳細なアルゴリズムは後述する。
ビデオデータがビデオメモリから必要とされる時は、ＦｌｅｘｉＲａｍは、メモリから読み出された圧縮データに復元を実行する。復元段階は、図１４に示される圧縮段階の逆である。
【００７８】
最初に、１つの画素が、カルテットあたり１画素再構築アルゴリズムにより２４ビットカルテットに加え戻されるが、このアルゴリズムはカルテットあたり１画素切り捨てアルゴリズムの逆である（段階１４３０）。この復元段階は、カルテットを表す２４ビットの最後の３ビットとして格納されたＲＤにより供給された再構築方法に従って、７ビットの切り捨てられた画素を再構築する。この復元段階（段階１４３０）の後、カルテットは再形成されて、４つの７ビット画素を持つ。好ましい再構築アルゴリズムは後に詳述する。
【００７９】
次に、各７ビット画素に「０」が連接され、圧縮前の４つの８ビット画素カルテットに戻る（段階１４４０）。この復元段階（段階１４４０）は、すべての画素に最も有意でないビットとして「０」を１つ連接して４つの８ビット画素を再形成する。
図１５は、圧縮・復元段階における種々のプロセス中のビデオデータのカルテット（すなわち、４つの８ビット画素）のデータフォーマットを示すものである。
【００８０】
最初、カルテット１５１０の各８ビット画素が、エラー拡散アルゴリズム１５２０を用いて個別に圧縮される。中間的な圧縮データは、４つの７ビット画素１５３０から成る。次に、これら４つの７ビット画素１５３０は、カルテットあたり１画素切り捨てアルゴリズム１５４０によりさらに圧縮される。最終的な圧縮データは、３つの７ビット画素１５５１と１つの３ビットＲＤ１５５２とから成る。圧縮されたデータの全長は２４ビットである。
ビデオデータがビデオメモリから必要とされる時は、圧縮されたデータは以下の２つの連続的段階により復元される。
【００８１】
最初、１つの付加的画素が、カルテットあたり１画素再構築アルゴリズム１５６０に従って生成される。このアルゴリズムは、２４ビット圧縮データ１５５０の３ビットＲＤ１５５２に基づくカルテットあたり１画素切り捨てアルゴリズム１５４０の逆である。中間的な復元データ１５７０は４つの７ビット画素から成る。次に、４つの７ビット画素の各々が、最も有意でないビット１５８０としての「０」と連接され、圧縮前の４つの８ビット画素が再形成される。
エラー拡散およびカルテットあたり１画素切り捨てアルゴリズムの詳細は以下で説明する。
【００８２】
Ａ．エラー拡散
この圧縮段階に様々なエラー拡散アルゴリズムが使用し得ることは留意すべきである。以下に開示される好ましい実施態様は、１ビットエラー拡散アルゴリズムを利用している。しかしながら、本発明は、エラー拡散処理に用いられるどのような特定のアルゴリズムにも限定されない。さらに、前に論じたように、より多くの画質劣化が許されるならば、複数のビット（１を超える）がエラー拡散アルゴリズムにより除去され得る。従って、以下の特定の１ビットエラー拡散アルゴリズムは、説明目的だけのために開示されている。
【００８３】
本発明のこの好ましい実施態様において、エラー拡散（ＥＤ）アルゴリズムはピクチャ中のすべてのラインに独立して作用する。ラインの最初では、「ｅ」と表示された１ビットレジスターが１にセットされる。「ｅ」は、現在走っているエラーを格納し、画素ベースで更新される。１ビットＥＤアルゴリズムは、以下の２つの方程式により説明される。
Ｉout （ｊ）＝２＊ｆｌｏｏｒ［（Ｉin（ｊ）＋ｅ（ｊ））／２］
ただし、Ｉin（ｊ）＝２５５およびｅ（ｊ）＝１であれば、Ｉｏｕｔ（ｊ）＝２５５
ｅ（ｊ＋１）＝Ｉin（ｊ）＋ｅ（ｊ）＋Ｉout （ｊ）
式中、
ｊ：行中の現在の画素のインデックス
Ｉin（ｊ）：画素の本来の値
Ｉout （ｊ）：画素の新しい値（ＥＤ後）
ｅ（ｊ）：画素ｊの時間におけるエラーアキュムレータ
ｆｌｏｏｒ（ｘ）：ｘ以下で最も近い整数
Ｉout （ｊ）が計算された後、Ｉout （ｊ）の最も有意でないビットが切り捨てられ、このアルゴリズムにより８ビット画素が７ビット画素へ量子化される一方で、擬似的輪郭効果が除去される。
【００８４】
このアルゴリズムは例えば以下のように説明し得る。すなわち、１つのケースにおいて、Ｉin（ｊ）が１８２、２進数１００１０１１１であり、ｅ（ｊ）が１であると仮定すると、
Ｉout （ｊ）＝２＊ｆｌｏｏｒ（（１００１０１１１＋１／２）
＝２＊ｆｌｏｏｒ（１００１１０００／２）
＝２＊ｆｌｏｏｒ０１００１１００
＝１００１１００
ｅ（ｊ＋１）＝１００１０１１１＋１−１００１１００
＝０
最も有意でないビットを切り捨てることにより、格納された量子化画素は＝１００１１０である。
【００８５】
「ｅ」値は次に、ラインの終わりに伝播される。本発明のＥＤアルゴリズムがラスタ構造に作用し、ピクチャがブロック構造のメモリに書き込まれるので、e(j)をブロックラインの終わりに格納することが必要である。この値は、ＥＤが同じライン（これは次のブロックに属している）中の次の画素と続いている時に、使われる。従って、８ビットラッチが、すべての「中断」ブロックに使用されなければならない。（ｅは０または１にしかなれないので、すべての中断ラインあたり１ビットで十分である）。
【００８６】
復元段階１５８０は、前述した圧縮段階の逆である。好ましい実施態様において、データは、「０」と共にあらゆる画素に連接され、４つの８ビット画素を再形成する。
各７ビット画素は次に最も有意でないビットとして「０」が連接される。例えば、「１１０１１０１」は「１１０１１０１０」に再形成される。従って、結果として得られるデータは、オリジナルな未圧縮データと同様に４つの８ビット画素である。
【００８７】
データが、１ビットエラー拡散アルゴリズムを用いて圧縮された後、４ビットが切り捨てられ、それにより４つの８ビット画素を有するカルテットが４つの７ビット画素に圧縮される。４つの８ビット画素を有するカルテットを４つの６ビット画素に圧縮できる「２」ビットエラー拡散アルゴリズムを実行することにより、より高い圧縮率が達成できることは真実である。２ビットエラー拡散アルゴリズムを用いた時の圧縮率は、２４／３２×１００％（すなわち、７５％）である。しかしながら、２ビットエラー拡散技術を用いた圧縮および復元後に知覚可能な画質劣化があることが見出される。従って、２ビットエラー圧縮技術を用いる代わりに、本発明では２段階の圧縮／復元プロセス、すなわち（１）１ビットエラー拡散、および（２）カルテットあたり１画素切り捨てを開示している。たとえ２つの技術の圧縮率が同一（すなわち、７５％）であっても、本発明として開示される２段階圧縮／復元プロセスの結果得られる画質は、２ビットエラー拡散技術に対し知覚可能な改善をもたらす。
【００８８】
Ｂ．１カルテットあたり１画素切り捨て
本発明の好ましい実施態様の第２圧縮段階は、カルテットあたり１画素切り捨てである。カルテットあたり１画素切り捨てアルゴリズム１５４０は、４つの７ビット画素を３つの７ビット画素プラス３ビット再構築記述子（「ＲＤ」）（すなわち、総計で２４ビット）に圧縮するものである。
【００８９】
ビデオメモリ中に格納される画素数を減らすため、種々の画素切り捨てアルゴリズムが使用し得ることに留意すべきである。本発明は、圧縮および復元プロセス中に用いられるどのような特定の画素切り捨てアルゴリズムおよび方程式にも限定されない。さらに、多画素（１を超える）は、画質劣化とのトレードオフで切り捨てられ得る。以下のカルテットあたり１画素切り捨ては、メモリ節約と画質への知覚可能な影響がほとんど無いという最良のバランスを備えた、本発明の好ましい実施態様として開示される。
【００９０】
好ましい実施態様において、カルテットの４画素は各々Ｐ０、Ｐ１、Ｐ２、またはＰ３と連続的に名付けられる。画素Ｐ１およびＰ２は、切り捨てられる２つの候補である。このアルゴリズムは、（１）どちらの画素が切捨てにより適しているか、および（２）切り捨てられた画素を推定するために、復元においてどのような再構築方法を用いるべきかを予測する。各候補について５つの再構築方法が考えらえる。すなわち、
１．左隣りのものをコピーする。
２．右隣りのものをコピーする。
３．左隣りのものと右隣りのものを平均する。
４．左隣りのものの１／４と右隣りのものの３／４を合計する。
５．左隣りのものの３／４と右隣りのものの１／４を合計する。
【００９１】
理論的には、Ｐ１を切り捨ててＰ２のコピーによりそれを推定することと、Ｐ２を切り捨ててＰ１のコピーによりそれを推定することとは等価である。従って、２つの候補（すなわち、Ｐ１およびＰ２）について、考えられる推定量は９つ（１０ではない）しかない。さらに、カルテットから１画素を切り捨てた後、残る３画素を表すために２１ビットが残されることになる。好ましい実施態様において、各カルテットについての最終的な圧縮データの目標サイズは２４ビットである（２５％圧縮）。このことは、選択され推定量を記述するために３ビットのみが割り当てられ得ることを意味し、従って、実際は８つの推定量のみが考慮し得る。考慮から省略される推定量は、左隣りのものの３／４と右隣りのものの１／４によりＰ２を再構築することである。この特定の推定量を省略する理由は、ＭＰＥＧピクチャの統計学により、これが最善のものとして選ばれることが最も少ないとことが示されるからである（４つの１／４、３／４推定量の中で選択は恣意的である）。
【００９２】
最初に、８つの推定量が計算される。
Ｐ01＝Ｐ０（Ｐkj はｋ法を用いたＰｉの推定量を表す）
Ｐ01＝Ｐ２
Ｐ21＝０．５Ｐ０＋０．５Ｐ２
Ｐ31＝０．２５Ｐ０＋０．７５Ｐ２
Ｐ41＝０．７５Ｐ０＋０．２５Ｐ２
Ｐ12＝Ｐ３
Ｐ22＝０．５Ｐ１＋０．５Ｐ３
Ｐ32＝０．２５Ｐ１＋０．７５Ｐ３
【００９３】
すべての推定量について、推定誤差の絶対値は、Ｅki＝｜Ｐki−Ｐｉ｜と定義される。最小誤差は、ｍｉｎi,k｛Ｅkl｝である。１を超える最小誤差があれば、選択は恣意的である。（決定は実行のために未決のままにされる）。最後に、最小誤差に従って、Ｐｊiminが切り捨てられ、３ビットの再構築記述子（ＲＤ）が設定されて選択された推定量、Ｐkminiminが示される。３ビットＲＤは、残る３つの７ビット画素に連接され、一緒になって２４ビットの圧縮されたカルテットを形成する。連接方法は実行のために未決のままにされる。
【００９４】
圧縮されたデータの復元は、単純に圧縮アルゴリズムの逆である。欠けている７ビットの切り捨てられた画素は、（１）再構築にどの画素（すなわち、Ｐ１またはＰ２）を、および（２）再構築にどの再構築方法を選択するかのために各カルテットの最後にあるＲＤを用いて再構築される。
【００９５】
図１５に示されるように、データ圧縮器は、ＲＤの３ビットにより提供される再構築方法を得る。次に、再構築のための画素（Ｐ１またはＰ２）が決定され、前述した８つの方程式の逆に従って、画素再構築が実行される。
【００９６】
本発明が、（１）エラー拡散、および（２）画素切り捨てのビデオデータ圧縮段階において用いられるどのような特定の方法および方程式にも限定されないことは指摘されるべきである。本発明として開示されたＦｌｅｘｉＲａｍデザインの重要な特徴は、これら２つのデータ圧縮／復元段階の特定のシーケンスである。すなわち、ビデオデータは最初に、エラー拡散アルゴリズムを用いて画素あたりのビット数を減らして圧縮される。次に、中間的な圧縮ビデオデータは、特定の画素グループから１つの画素を切り捨てる画素切り捨てアルゴリズムを用いてさらに圧縮される。前に論じたように、復元プロセスはまさに圧縮プロセスの逆である。
【００９７】
本発明が前述した好ましい特定の実施態様と共にされる一方で、説明および実施例は例示を意図するものであって、かつ本発明の範囲を限定するものではなく、それは添付の特許請求の範囲により規定されるものであるということは理解されるべきである。
【図１】
2009177833.tif 000003
【図２】
2009177833.tif 000004
【図３】
2009177833.tif 000005
【図４】
2009177833.tif 000006
【図５】
2009177833.tif 000007
【図６】
2009177833.tif 000008
【図７】
2009177833.tif 000009
【図８】
2009177833.tif 000010
【図９】
2009177833.tif 000011
【図１０】
2009177833.tif 000012
【図１１】
2009177833.tif 000013
【図１２】
2009177833.tif 000014
【図１３ａ】
2009177833.tif 000015
【図１３ｂ】
2009177833.tif 000016
【図１３ｃ】
2009177833.tif 000017
【図１４】
2009177833.tif 000018
【図１５】
2009177833.tif 000019