JP4377455B2 - スプライト符号化 - Google Patents

スプライト符号化 Download PDF

Info

Publication number
JP4377455B2
JP4377455B2 JP53376097A JP53376097A JP4377455B2 JP 4377455 B2 JP4377455 B2 JP 4377455B2 JP 53376097 A JP53376097 A JP 53376097A JP 53376097 A JP53376097 A JP 53376097A JP 4377455 B2 JP4377455 B2 JP 4377455B2
Authority
JP
Japan
Prior art keywords
pixel
sprite
encoding
block
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP53376097A
Other languages
English (en)
Other versions
JP2000507412A (ja
JP2000507412A5 (ja
Inventor
ウェイ―ゲ チェン
ミン―チー リー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2000507412A publication Critical patent/JP2000507412A/ja
Publication of JP2000507412A5 publication Critical patent/JP2000507412A5/ja
Application granted granted Critical
Publication of JP4377455B2 publication Critical patent/JP4377455B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/649Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding the transform being applied to non rectangular image segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/20Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
    • H04N19/23Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding with coding of regions that are present throughout a whole video segment, e.g. sprites, background or mosaic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/537Motion estimation other than block-based
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/537Motion estimation other than block-based
    • H04N19/543Motion estimation other than block-based using regions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/56Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/20Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

【0001】
[技術分野]
本発明は、ディジタル・ビデオ信号を圧縮する方法に関する。特に、精度を増すためのエラー・フィードバックを備えたオブジェクトベースのディジタル・ビデオ符号化方法に関する。
【0002】
[背景技術]
アナログ・ビデオ信号によるフルモーション・ビデオ表示は、テレビの形式で長く一般に利用されている。最近の、コンピュータ処理機能や、コンピュータ価格性の増大に伴って、ディジタル・ビデオ信号によるフルモーション・ビデオ表示がさらに広く一般に利用されるようになっている。ディジタル・ビデオ装置は、従来のアナログ・ビデオ装置に比べて、フルモーション・ビデオシーケンスを生成し、変更し、伝送し、保存し、再生することにおいてかなりの改善を加えている。
【0003】
ディジタル・ビデオ表示は、多数の画像フレームを含み、これらのフレームは、30〜75Hzの周波数で連続的に再生、あるいは、表示される。各画像フレームは、特定の装置の表示解像度による、表示ピクセル配列から形成される静止画である。例を挙げるならば、VHS装置は、320x480ピクセルの表示解像度を持ち、NTSC装置は、720x486ピクセルの表示解像度を持ち、現在開発中の高解像度(high-definition television,HDTV)装置は、1360x1024ピクセルの表示解像度を持つ。
【0004】
ビデオシーケンスに含まれる生のディジタル情報の量は莫大である。この多量のビデオ情報の保存・伝送は、従来のパソコン装置では不可能である。320x480ピクセル解像度を持つ比較的低解像度のVHS画像方式におけるディジタル形に関しては、連続2時間の動画像は、100ギガバイトのディジタル・ビデオ信号に相当する。比較として、従来のコンパクト・ディスクは、約0.6ギガバイトの容量を持ち、磁気ハード・ディスクは、1〜2ギガバイトの容量を持ち、また、現在開発中の光コンパクト・ディスクは、最大8ギガバイトの容量を持つ。
【0005】
このような多量のディジタル・ビデオ信号の保存・伝送における限界に応じて、各種のビデオ圧縮標準または方法が導入されている。その中にはMPEG-1、MPEG-2、および、H.26Xがある。これら従来のビデオ圧縮法は、時間的またはフレーム間相関と呼ばれる、連続する画像フレーム間の相似性を利用して、フレーム間圧縮を行なう。この圧縮においては、画像フレームのピクセル表現値が、動き表現値に変換される。さらに、従来のビデオ圧縮法は、空間またはフレーム内相関と呼ばれる画像フレーム内部の相似性を利用し、フレーム内圧縮を実行する。この圧縮においては、ある画像フレーム内の動き表現値がさらに圧縮される。フレーム内圧縮は、従来の静止画像圧縮方法、例えば、離散的コサイン変換(DCT)符号化法に基づく。
【0006】
特定の実施方法は異なるものの、MPEG-1、MPEGー2、および、H.26Xのビデオ圧縮標準はいくつかの点で類似する。下記のMPEGー2ビデオ圧縮標準に関する説明は、一般に他の二者にも適用できる。
【0007】
MPEG-2は、ビデオ画像におけるピクセルの正方形ブロック、または配列に基づいてフレーム間圧縮とフレーム内圧縮とを実行する。一つのビデオ画像は、16x16ピクセルの大きさを持つ変換ブロックに区分される。ある画像フレームNにおける各変換ブロックTNについて、直前の画像フレームN-1、または、直後の画像フレームN+1(すなわち両方向性)の画像を横切って探索を行ない、それぞれにおいてもっとも相似性の高い変換ブロックTN+1またはTN-1を特定する。
【0008】
理想的には、かつ、直後の画像フレームの探索に関して、変換ブロックTNおよびTN+1のピクセルは、例えその変換ブロックが、それぞれの画像フレームにおいて異なる位置を占めていても、同一である。このような状況においては、変換ブロックTN+1におけるピクセル情報は、変換ブロックTNのピクセル情報に対して冗長となる。変換ブロックTN+1のピクセル情報を、変換ブロックTNとTN+1との間の位置変換で置き換えることによって圧縮を実行する。この簡略化した例においては、変換ブロックTN+1内の256ピクセルに関係したビデオ情報に対して、一つの線形移動ベクトル(ΔX、ΔY)が指定される。
【0009】
しばしばあることであるが、対応する変換ブロックTNおよびTN+1内のビデオ情報(すなわち、ピクセル)は同一ではない。両者の差は変換ブロック誤差Eと呼ばれるが、無視できない場合がしばしばある。この誤差は、離散的コサイン変換(DCT)符号化法のような従来の圧縮方法によって圧縮されるのではあるが、この変換ブロック誤差Eは厄介なものであり、ビデオ信号を圧縮できる度余り(比)と精度を制限する。
【0010】
ブロックによるビデオ圧縮法においては、いくつかの理由で、大きな変換ブロック誤差Eを生ずる。ブロックに基づく動きの評価は、連続する画像フレーム間の線形移動の動きを示すにすぎない。表示される、対応する変換ブロックTNとTN+1との間の唯一の変化は、それら変換ブロックの相対的位置の変化だけである。このような表示の欠点は、フルモーション・ビデオシーケンスは、線形移動以外の複雑な動き、例えば、回転、拡大、および、斜行をしばしば含むことである。このような複雑な動きを単純な線形移動近似によって表示することは重大な誤差を生むことになる。
【0011】
ビデオ表示のもう一つの態様は、ビデオ表示は、通常、互いに変化、即ち動く複数の画像特徴または画像オブジェクトを曲型的にを含むことである。オブジェクトは、あるビデオ表示内における個別の人物、事物、または、情景とすることができる。動画像における情景に関しては、例えば、その情景の中の人物(すなわち、俳優)や事物(すなわち、点景)の各々が、実なるオブジェクトとなり得る。
【0012】
あるビデオシーケンスにおけるオブジェクト間の相対的な動きが、従来のビデオ圧縮方法において、変換ブロック誤差要Eの他の要因となる。変換ブロックが規則的な形・大きさを持つために、変換ブロックの多くは、異なるオブジェクトの部分を包含する。連続する画像フレームを通じて、オブジェクト間に相対的な動きがある場合、対応する変換ブロック間に極端に低い相関が生ずることがある(すなわち、変換誤差Eが高くなる)。同様に、連続する画像フレームにおけるオブジェクトの部分の出現(例えば、人物が振り向く)も高い変換誤差Eを生じる。
【0013】
従来のビデオ圧縮法は、変換誤差Eの大きさによって、固有に制限されているように思われる。ディジタル・ビデオ表示性能に対する要求が高まるにつれて、改良されたディジタル・ビデオ圧縮方法が望まれている。
【0014】
[発明の概要]
本発明は、多数の画像フレームから成るビデオシーケンスにおける表示の動きを表わすディジタル化ビデオ信号を圧縮するための、ビデオ圧縮符号化方法を含む。この符号化方法は、オブジェクトベースのビデオ圧縮を利用し、それによって、フレーム内の動き、およびフレーム間画像特徴の精度、および、融通性を改善するものである。ビデオ情報は、従来のビデオ圧縮法に見られるように、一定の規則的なピクセル配列に対してではなく、任意の形を持つオブジェクトに対して圧縮される。これによって、誤差成分は低下し、それによって、圧縮効率および精度は改善される。もう一つの利点として、本発明のオブジェクトベースのビデオ圧縮法は、圧縮されたビデオ情報を処理するための、インタラクティブビデオ編集機能を与える。
【0015】
一つの好ましい実施態様においては、本発明の方法は、第1ビデオ画像フレームにおける任意の形をした画像特徴を特定し(識別し)、その画像特徴の内部に、複数の異なる特徴点を定義することである。第1ビデオ画像フレームにおける画像特徴の特徴点は、直後の第2ビデオ画像フレームにおける画像特徴の対応する特徴点と相関する。これによって、第2のビデオ画像フレームにおける画像特徴の推定を実行する。第2のビデオ画像フレームにおける推定画像特徴と、実際の画像特徴との差を求め、これを圧縮形式に符号化する。
【0016】
本発明の符号化方法は、従来のブロックベースのビデオ圧縮法の欠点を克服するものである。この符号化方法は多次元変換法を用いることが好ましい。すなわち、それによって連続する画像フレームにおける対応するオブジェクト間のマッピングを表わすためである。変換の多次元とは、一般的な形の座標の数を指す。多次元変換は、線形移動、回転、拡大、および、斜行のいずれかを、または、それらのすべてを含む複雑な動きを表わすことができる。そのため、連続する画像フレーム間のオブジェクトの複雑な動きを、比較的変換誤差を低く抑えて、表現することができる。
【0017】
従来のブロックベースのビデオ圧縮法のもう一つの誤差要因は、一つの変換ブロック内部に含まれる複数のオブジェクト間の動きである。本発明の、オブジェクトベースのビデオ圧縮または符号化においては、変換ブロック内部における複数のオブジェクト間の相対的な動きは実質的に取り除かれる。そのため、オブジェクト間な動きによって生ずる変換誤差はかなり減少する。本発明の符号化方法による変換誤差きわめて低いために、本方法では、従来の符号化方法、例えば、MPEG-2で得られるものよりも、最大300%に達する大きな圧縮率を得ることができる。
【0018】
しばしば、あるビデオシーケンスにおける1つ以上のオブジェクトに関係するすべての画像またはオブジェクト情報は、このオブジェクトがこのビデオシーケンスにおいて最初に現れたときに利用可能または「知られている」。これらのオブジェクトは、これらの最初の出現時から、少なくとも1つの「スプライト」と、1つ以上の軌跡によって完全に規定される。前記ストライプは、前記ビデオシーケンスを通じてオブジェクトのすべての画像特徴を含み、前記軌跡は、前記ストライプをワーピングまたは変形し、前記ビデオシーケンスの各フレームにおいて前記オブジェクトを表わす。いくつかの用途において、前記オブジェクトをさらに、前記ビデオシーケンスにおけるオブジェクトの最初の出現時に知られる照明または透明要因によって規定または変更する。ビデオシーケンスにおいて現れる時間から、少なくとも1つのストライプと1つ以上の軌跡とによって完全に規定されるオブジェクトを、スプライト規定オブジェクトと呼ぶ。
【0019】
代表的に、本発明にしたがって処理された多くのオブジェクトは、一般的であり、これらは、ビデオシーケンスの開始時に規定されない特徴または成分を有する。本発明の多くの態様は、初期に規定された特徴または成分によるこのような一般的なオブジェクトの識別と効率的な符号化および復号化を可能にする。しかしながら、本発明の他の態様は、スプライト規定オブジェクトおよび一般的なオブジェクトの双方を有する混合ビデオシーケンスにおけるスプライト規定オブジェクトは、前記圧縮ビデオ情報を格納または伝送するビットレート条件および効率を改善する簡略化した処理を利用できるという認識である。
【0020】
スプライト規定オブジェクトは、一般的なオブジェクト(すなわち、初期に規定されない特徴または成分によるオブジェクト)を表わす精度を増すことに特別に向けられた本発明の態様を必要としない。したがって本発明によれば、スプライト規定オブジェクトは、圧縮ビデオ情報の簡略化した符号化および復号化を使用する。
【0021】
動作において、スプライト規定オブジェクトのスプライト情報を、前記軌跡または変形情報にしたがって、連続する画像フレーム間で変形または「ワーピングする」。ビデオ会議のようないくつかの用途において、背景を、その初期スプライトによって完全に規定され、前記ビデオシーケンスを通じて変化しないオブジェクトとして処理できる。この形式の用途において、前記軌跡情報は単一であり、前記オブジェクトにおいて前記ビデオシーケンスを通じて変化を示さない。他の用途において、スプライト規定オブジェクトは、軌跡を、多次元アフィン変換の形態において、または、コンピュータ生成グラフィックの場合において、透視変換の形態において使用できる。
【0022】
前記スプライトおよび軌跡は、前記ビデオシーケンスを通じての前記オブジェクトの完全な規定を与えることができ、この規定は、固有的に誤差がなく、最小ビットレート条件を有する。このようなスプライト発生オブジェクトを、一般的なオブジェクトに使用される一般的なオブジェクト処理よりも簡略化した処理にしたがって符号化および復号化し、前記誤差無し特徴を利用し、前記オブジェクト情報を処理するためのビットレートおよび処理条件を低減する。前記スプライト生成オブジェクトを、本発明の一般的なオブジェクト処理によって処理される一般的なオブジェクトと共に在るとしても、前記簡略化した処理にしたがって符号化および復号化する。オブジェクトのこのような単純化した処理は、前記オブジェクトを前記ビデオシーケンスを通じて表わすために必要なビットレートを低減し、前記圧縮情報の復号化を、一般的なオブジェクトに必要な動き推定および誤差信号発生を取り除くことによって簡単にする。
【0023】
このような簡略化した復号化を、本発明のより一般化したオブジェクトベースの符号化と組み合わせて使用し、スプライト規定オブジェクトおよびスプライト生成オブジェクトの双方を一緒に処理できることが理解できるであろう。さらに、前記スプライトおよびワーピング情報を、好適には、各々符号化(例えば、ウェーブレット符号化)し、伝送および格納効率をさらに増す。
【0024】
本発明の、好ましい実施態様の、前記した、ならびに、その他の利点は下記の詳細な説明によりさらに明瞭になるであろう。説明は、図面を参照しながら行う。
【0025】
[実施例の説明]
図1を参照すると、本発明の好ましい実施態様における動作環境は、汎用型または特殊型いずれかのコンピュータ装置20であって、少なくとも1個の高速演算処理装置(Central processing unit,CPU)22を、メモリ装置24、入力装置26、および、出力装置28と結合状態において含むものである。これらの要素は、バス構造30によって相互に結合される。
【0026】
図示のCPU22は、普及型デザインのもので、計算を実行するためのALU32、データの一次的保存のための一群のレジスタ34、装置20の動作を制御するための制御装置36を含む。CPU22は、以下の各種アーキテクチャーのいずれかを持つプロセッサーとすることができる。すなわち、ディジタル社のアルファ、MIPSテクノロジー社、NEC、ジーメンスおよびその他のMIPS、インテル社および、サイリックス、AMD、および、ネクスジェンを含むその他のx86、および、IBMおよびモトローラ社のパワーPcである。
【0027】
メモリー装置24は、メイン・メモリー38、および、二次ストレージ40を含む。図示のメイン・メモリー38は、16メガバイトの半導体RAMメモリーの形態を取る。ストレージ40は、ROM、オプティカル・ディスクまたは磁気ディスク、フラッシュ・メモリー、または、テープのような長期保存の形態を取る。当業者であれば、メモリ装置24は、多くの他の要素を含むことができることがわかるであろう。
【0028】
入力装置26および出力装置28は一般的なものである。入力装置26は、キーボード、マウス、物理的トランスデューサー(例えば、マイクロフォン)等を含むことができる。出力装置28は、ディスプレイ、プリンター、トランスデューサー(例えば、スピーカー)等を含むことができる。ネットワーク・インターフェイスまたはモデムのようないくつかの装置も、入力装置および、または出力装置として使用することができる。
【0029】
当業者に知られているように、コンピュータ装置20はさらにオペレーティング・システム、および、少なくとも1個のアプリケーション・プログラムを含む。オペレーティング・システムは、コンピュータ装置の動作とリソースの割り当てを制御する一組のソフトウェアである。アプリケーション・プログラムとはオペレーティング・システムを通じて利用可能になるコンピュータのリソースを利用しながら、ユーザーの望むタスクを実行する一組のソフトウェアである。両方とも、図示のメモリ装置24中に保存する。
【0030】
コンピュータ・プログラミングの分野の当業者のプラクティスに従って、以下に本発明を、別様に断らないかぎり、コンピュータ装置20によって実行される動作に関する記号的表記に基づいて説明する。このような動作は、コンピュータ実行(computer-executed)と呼ばれることがある。記号的に表記される動作は、データ・ビットを表わす電気信号のCPUによる操作、および、メモリー装置24内のメモリー位置におけるデータ・ビットの保持、その他の信号処理を含む。データ・ビットが保持されるメモリー位置は、そのデータ・ビットにたいする特定の電気的、磁気的、または、光学的性質を持つ物理的位置である。
【0031】
図2Aおよび図2Bは、ビデオ表示装置52(例えば、テレビ、または、コンピュータのモニタ)の表示画面50の模式図であって、対応するビデオ信号によって電子的に表わされるビデオ画像シーケンスの内の、2個の連続する画像フレーム54aおよび54bを示す。ビデオ信号は、アナログ・ビデオ形式、例えば、NTSC、PAL、および、SECAMを含むビデオ信号形式、および、コンピュータ表示で通常用いられる、ピクセル式、または、ディジタル化ビデオ信号形式、例えば、VGA、CGA、および、EGAのビデオ信号形式など、各種ビデオ信号形式の内のいずれかで表わされたものとなることができる。画像フレームに対応するビデオ信号は、ディジタル化信号形式のものであることが好ましい。すなわち、技術上知られているように、もともとディジタル化信号として生成されたものか、アナログ・ビデオ信号形式から変換されたものかのいずれかであることが好ましい。
【0032】
画像フレーム54aおよび54bは、それぞれ、背景60上に位置する、直方体の画像特徴56と、ピラミド型の画像特徴58とを含む。画像フレーム54aと54bにおける画像特徴56と58は、異なる部分が隠され、示されるので、異なる外観を持つ。以下の説明のために、ある画像フレームの中にある画像特徴の特定の形をオブジェクト、または、マスクと言うことにする。従って、直方体特徴56は、それぞれの画像フレーム54aと54bにおいて、直方体オブジェクト56aおよび56bとして示され、ピラミッド型画像特徴58は、それぞれの画像フレーム54aと54bにおいて、ピラミッド型オブジェクト58aおよび58bとして示される。
【0033】
ピラミッド型画像特徴58は、画像フレーム54aと54bとにおいて、同じ位置と方向で示されるので、ビデオシーケンスの中で示された場合、不動に見える。直方体56は、フレーム54aと54bにおいて、ピラミッド58に対して、相対的に異なる方向および位置に示されるので、ビデオシーケンスの中で示された場合、ピラミッド58に対して動いて、回転しているように見える。画像特徴58と60のこれらの外観は、図示的なもので、誇張されている。ビデオシーケンスの画像フレームは通常、30〜60Hzの頻度で表示される。ビデオの動きに対する人間の感覚は、通常、2個以上のフレームを必要とする。したがって、画像フレーム54aと54bとは、本発明を説明するために、従来のビデオシーケンスの簡略化された表示を与える。さらに、本発明は決して、そのように簡略化されたビデオ画像、画像特徴、または、シーケンスのみに限定されないこと、逆に、任意の複雑さを持つビデオ画像やビデオシーケンスに適用可能であることが了解されるであろう。
【0034】
[ビデオ圧縮符号化工程の概論]
図3Aは、ビデオ圧縮符号化工程64の全体機能ブロック・ダイアグラムであり、この工程は、複数の画像フレームを持つビデオシーケンスにおいて、表示の動きを表わすディジタル化ビデオ信号を圧縮するためのものである。ビデオ情報(すなわち、ビデオシーケンスまたはビデオ信号)の圧縮は、例えば、インタラクティブまたはディジタル・テレビや、マルティメディア・コンピュータの応用を含む各種用途におけるディジタル・ビデオ情報の経済的な保存や転送を可能にする。簡単のために、符号化工程64の機能ブロックに割り当てた参照数字は、その機能ブロックによって生成される結果に関しても互換的に用いることとする。
【0035】
従来のビデオ圧縮法は、時間的相関またはフレーム間相関と呼ばれる、連続する画像フレーム間の類似性を利用し、画像フレームのピクセルベースの表現値動き表現値に変換するフレーム間圧縮を実行する。さらに、従来のビデオ圧縮法は、空間的相関またはフレーム内相関と呼ばれる、画像フレーム内部の類似性を利用し、画像フレーム内の動き表現値がさらに圧縮されるフレーム内圧縮を実行する。
【0036】
MPEG-1、MPEG-2、および、H.26Xを含む、このような従来のビデオ圧縮法においては、時間的・空間的相関は、一定の規則的な(例えば、正方形)ピクセル配列の単純な線形移動に対して決定される。しかしながら、ビデオ情報は通常、ピクセルの正方形配列を線形移動することによっては正確に表わすことのできない任意のビデオの動きを含む。そのため、従来のビデオ圧縮法は通常、無視できない誤差成分を含むこととなり、これが、圧縮比と精度に制限を与える。
【0037】
逆に、符号化工程64は、オブジェクトベースのビデオ圧縮を利用し、それによって、フレーム間の動き、および、フレーム内画像特徴を符号化する際の精度と融通性とを改善する。符号化工程64は、一定の規則的なピクセル配列ではなく、任意の形態を持つオブジェクトに対してビデオ情報を圧縮する。これによって、誤差成分は減少するから、圧縮効率と精度は改善される。もう一つの利点として、オブジェクトベースのビデオ圧縮は、圧縮ビデオ情報を処理する際に有効な、インタラクティブビデオ編集機能を与える。
【0038】
図3Aを参照すると、機能ブロック66は、あるビデオシーケンスの画像フレームにおけるユーザー定義によるオブジェクトが、同じ画像フレーム内の他のオブジェクトからセグメント化されることを示す。オブジェクトは、任意の形状とすることができるが、できれば、表示画像において、個別の画像特徴を表わしていることが好ましい。セグメント化は、オブジェクトに対応する画像フレーム内のピクセルを特定することを含む。ユーザ定義のオブジェクトは、ビデオシーケンス中の画像フレームのそれぞれにおいて定義される。例えば、図2A図2Bにおいて、直方体オブジェクト56aと56b、および、ピラミッド型オブジェクト58aと58bとは別々にセグメント化される。
【0039】
セグメント化されたオブジェクトは、オブジェクトのバイナリ・ビットまたはマルチ・ビット(例えば、8ビット)「アルファー・チャンネル」マスクで表わされる。オブジェクトマスクは、オブジェクトの、大きさ、形状、位置をピクセル毎に表わすものである。簡単のために、以下の説明では、バイナリマスクを取扱うこととする。バイナリマスクにおいては、オブジェクトの各ピクセルは、通常の24ビット(3個の色成分値のそれぞれに対して8ビットずつ)ではなく、一つのバイナリ・ビットで表わされる。マルチ・ビット(例えば8ビット)マスクも従来使用されている。
【0040】
機能ブロック68は、各オブジェクトの「特徴点」が、ユーザによって定義されることを示す。特徴点は、オブジェクトの際立った特徴ないし状態であることが好ましい。例えば、コーナー70a〜70c、および、コーナー72a〜72cを、それぞれ直方体56とピラミッド58の特徴点としてユーザーが定義することができる。各画像フレームにおける、各オブジェクトマスクと、その特徴点に対応するピクセルは、メモリー装置24に含まれるオブジェクトデータベースに保存される。
【0041】
機能ブロック74は、連続する画像フレームにおける特徴点の位置の変化を特定し、連続する画像フレーム間の特徴点に対する軌跡を求めることを示す。軌跡とは、特徴点移動の方向と程度を表わす。機能ブロック76は、直前フレームN-1と現在フレームNとの間におけるオブジェクトの特徴点の軌跡も、オブジェクトデータベースから取り出されることを示す。
【0042】
機能ブロック78は、直前フレームN-1と現在フレームNの間において、オブジェクトに対して、粗動き変換を求めることを示す。粗動き変換は、フレームN-1とNとの間における特徴点軌跡に基づいて実行される。粗動き変換は、直前フレームN-1と現在フレームNとの間におけるオブジェクトの変化の近似を与える。
【0043】
機能ブロック80は、現在フレームNにおけるオブジェクトのマスクが、メモリー装置24のオブジェクトデータベースから取り出されることを示す。
【0044】
機能ブロック90は、量子化マスタオブジェクト、あるいは、「スプライト」が、オブジェクト、すなわち、画像フレーム配列における画像特徴に対応するマスク66と、特徴点軌跡74とから形成されることを示す。このマスタオブジェクトは、オブジェクトの状態または特徴のすべてを、それらが複数フレームで表わされるように含んでいることが好ましい。例えば、図2A図2Bに関しては、フレーム54bの直方体56は、フレーム54aに示されていない側面78bを含む。同様に、直方体56は、フレーム54aにおいて、フレーム54bには示されていない側面78aを含む。直方体56のマスタオブジェクトは、両側面78aと78bとを含む。
【0045】
粗動き変換78は、フレームN-1とNとの間におけるオブジェクトの変化を完全に表わさないことがしばしばある。例えば、直前フレームN-1におけるオブジェクト、例えば、直方体56aは、例えば、直方体56bの側面78bのように、現在フレームNにおいてオブジェクトのすべての特徴を含んでいないかもしれない。
【0046】
したがって、変換の精度を上げるために、直前フレームN-1と現在フレームNにおけるオブジェクトマスクの交点を、当業者には既知の論理AND機能を用いて求める。現在フレームNにおけるオブジェクトのマスクを、得られた交点から差し引き、直前フレームN-1のオブジェクトに含まれない、現在フレームNのオブジェクトのあらゆる部分または特徴(例えば、前述の直方体56bの側面78b)を特定する。オブジェクトの新たに特定された部分を、マスタオブジェクト90に取り込み、それによって、マスタオブジェクトが、フレームN-1とNにおいて、オブジェクトの完全な表現値を含めることができるようにする。
【0047】
機能ブロック96は、直前フレームN-1におけるオブジェクト98の量子化形状(例えば、画像フレーム54aにおける直方体56a)が、密な動き変換によって変換され、それによって、現在フレームNにおけるオブジェクト102の予想形状(例えば、画像フレーム54bにおける直方体56b)を与えることを示す。この変換は、オブジェクトベースのフレーム間圧縮を与える。
【0048】
な動き変換は、フレームN-1の量子化直前オブジェクト98と現在フレームNのオブジェクトとの間のアフィン変換を求め、かつ、そのアフィン変換を、量子化直前オブジェクト98に適用することから成ることが好ましい。好ましいアフィン変換は、アフィン変換係数104によって表わされ、かつ、線形移動、回転、拡大、および、斜行を記述することができる。アフィン変換は、密な動き評価から求められるが、直前量子化オブジェクト98と、現在フレームNのオブジェクトとの間において、ピクセル毎のマッピングを含むことが好ましい。
【0049】
予想現在オブジェクト102は、密な動き変換96によって変更された量子化直前オブジェクト98によって表わされるが、これは、比較的複雑な動きを表わすことができるだけでなく、マスタオブジェクト90から得られるどのような新しい画像状態をも表わすことができる。このようなオブジェクトベースの表現は、比較的精度が高い。というのは、オブジェクトに結合する感覚的・空間的連続性が、異なる画像フレームにおける異なるオブジェクト間に通常見られる関係変化から生ずる誤差を除去するからである。さらに、オブジェクトベースの表現の場合、ユーザは、異なるオブジェクトを、異なる解像度レベルで表わすことが可能であるから、それによって、様々の複雑さを持つ、複数のオブジェクトを表わす際に、相対的な効率と精度を最適化することができる。
【0050】
機能ブロック106は、画像フレームNに関して、予想現在オブジェクト102を、現在フレームNの元のオブジェクト108から差し引き、それによって、予想オブジェクト102における推定誤差110を求めることを示す。推定誤差110は、量子化直前オブジェクト98に対する、画像フレームNにおける現在オブジェクト108の圧縮表現である。具体的に言うと、現在オブジェクト108は、推定誤差110と量子化直前オブジェクト98とから復号化、すなわち、再構成することができる。
【0051】
機能ブロック112は、推定誤差110が、従来の「ロッシー」(損失を伴う)静止画像圧縮法すなわち符号化法、例えば、格子サブバンド(ウェーブレット)圧縮法によって、または、離散的コサイン変換(DCT)符号化法によって圧縮、すなわち、符号化されることを示す。これら圧縮法については、前者は、バイジャナタン(Vaidyanathan)著「多速度装置および集積フィルタ(Multirate Systems and Filter Banks)」(PTR Prentice-Hall,Inc.,Englewood Cliffs,ニュージャージー州、アメリカ、1993)に、後者は、ペンベーカーら(Pennebaker et al.)著「JPEG―静止画像圧縮基準」(Van Nostrand Reinhold,ニューヨーク、1993)に記載の通りである。
【0052】
当業者には既知のように、「ロッシー」圧縮法は、データ圧縮を増そうとすると、データ歪を生ずる。データ歪とは、圧縮前の元データと、圧縮し、復元した後に得られるデータとの間の変異を指す。下記の例示のために、機能ブロック102の圧縮、すなわち、符号化は、ウェーブレット符号化法であるとする。
【0053】
機能ブロック114は、機能ブロック112によって得られるウェーブレット符号化推定誤差が、従来の「ロスレス」(損失を伴わない)静止画像圧縮法によってさらに圧縮されること、すなわち、「符号化」され、それによって圧縮データ116を形成することを示す。好ましい通例のロスレス静止画像圧縮法としては、ペンベーカーら(Pennebaker et al.)著「JPEG―静止画像圧縮標準」に記載のエントロピー符号化法がよい。当業者には既知のように、「ロスレス」圧縮法はデータ歪を生じない。
【0054】
誤差フィードバック・ループ118は、フレームNのオブジェクトについて機能ブロック112で得られたウェーブレット符号化推定誤差を利用して、直後フレームN+1に対する直前量子化オブジェクトを得る。フィードバック・ループの第1手順として、機能ブロック120は、機能ブロック112で得られたウェーブレット符号化推定誤差がウェーブレット形符号化される、すなわち、ウェーブレット復号化され、それによって画像フレームNのオブジェクトに対する量子化誤差122を形成することを示す。
【0055】
「ロッシー」静止画像圧縮法によって、推定誤差110を連続的に符号化し、復号化することの効果は、量子化誤差122から、一般に視認者には感覚されないビデオ情報を取り除くことにある。このため、そのような高い周波数成分を取り除くことによって、画像品質をほとんど損なわずに、最大約200%の画像圧縮率を得ることができる。
【0056】
機能ブロック124は、共に画像フレームNに対する、量子化誤差122と予想オブジェクト102が加算され、それによって、画像フレームNに対する量子化オブジェクト126を形成することを示す。タイミング調整遅延128の後、量子化オブジェクト126は、量子化直前オブジェクト98となり、画像フレームN+1の対応するオブジェクトを処理する基礎として用いられる。
【0057】
符号化工程64は、連続する画像フレームにおける対応するオブジェクトの時間的相関を用いて、改善されたフレーム間圧縮を獲得し、さらに、オブジェクト内の空間的相関を用いて、高精度の、効率的なフレーム内圧縮を獲得する。フレーム間圧縮に関して言えば、動き推定と補償を実行し、それによって、あるフレームにおいて定義されたオブジェクトを、直後のフレームにおいて推定する。直後フレームにおけるオブジェクトの動きベースの推定は、従来のブロックベースのオブジェクトの表現よりもはるかに少ない情報しか必要としない。フレーム内圧縮に関して言えば、各オブジェクトに対する推定誤差信号が圧縮され、それによって、あるフレーム内の、そのオブジェクトの空間的相関を利用することができ、また、異なるオブジェクトを、異なる解像度で表わすことができる。フィードバック・ループ118によって、連続するフレームにおけるオブジェクトを、完全に復元されたオブジェクトから予測することができるから、そのため推定誤差の蓄積を防止することができる。
【0058】
符号化工程64は、出力として、複数画像フレームのビデオシーケンスにおける表示の動きを表わす量子化ビデオ信号の圧縮表現、すなわち、符号化表現を与える。この圧縮、すなわち、符号化表現は、オブジェクトマスク66、特徴点68、アフィン変換係数104、および、圧縮誤差データ116を含む。この符号化表現は、ビデオ情報の使用される特定の用途に従って、保存することができ、転送することができる。
【0059】
図3Bは、マスタオブジェクト90を符号化、すなわち、圧縮するためのマスタオブジェクト符号化工程130の機能ブロック・ダイアグラムである。機能ブロック132は、マスタオブジェクト90が、従来のロッシー静止画像圧縮法、例えば、格子サブバンド(ウェーブレット)圧縮法、または、離散的コサイン変換(DCT)符号化法によって圧縮、または、符号化されることを示す。機能ブロック132は、ウェーブレット符号化法を採用することが好ましい。
【0060】
機能ブロック134は、機能ブロック132によって得られたウェーブレット符号化マスタオブジェクトがさらに従来のロスレス静止画像圧縮法によって圧縮、すなわち、符号化され、圧縮マスタオブジェクトデータ136を形成することを示す。好ましい通例のロスレス静止画像圧縮法はエントロピー符号化法である。
【0061】
符号化工程130は、出力として、圧縮マスタオブジェクト136を与える。符号化工程64によって与えられる圧縮または符号化表現と共に、圧縮マスタオブジェクト136は、保存または転送後に復元または復号化し、複数画像フレームのビデオシーケンスを生成させることができる。
【0062】
符号化工程64は、画像フレーム内部における一つのオブジェクトに対応するビデオ情報を符号化することに関連して説明される。図2A図2Bに示したように、また、上述のように、符号化工程64は、画像フレームにおける個々のオブジェクトごとに(例えば、図2A図2Bのオブジェクト56と58)別々に実行される。さらに、多くのビデオ画像は、その上に任意の数の画像特徴、または、オブジェクトをレンダリングする背景を含む。できれば、背景は、すべてのユーザー指定のオブジェクトが処理された後、本発明によるオブジェクトとして処理されることが好ましい。
【0063】
画像フレーム内のオブジェクトの処理のためには、それらオブジェクトが個別に特定されることが必要である。符号化工程64は、ある画像フレームについて、最前のオブジェクト(単数または複数)から始まって、順々に進行していき最後尾のオブジェクト(例えば、背景)に至るオブジェクトに適用されることが好ましい。符号化オブジェクトのビデオ画像への構成は、最後尾のオブジェクト(例えば、背景)から始まって、順々に最前のオブジェクト(例えば、図2A図2Bの直方体56)に向かって進行することが好ましい。符号化オブジェクトの重なりは、画像フレームのオブジェクトと関連する個別の重なりデータとして通信することができ、あるいは、重なりまたは合成シーケンスに対応する、シーケンス中の符号化オブジェクトを伝送、または、獲得することによって通信することができる。
【0064】
[オブジェクトのセグメント化と追跡]
一つの好ましい実施態様においては、機能ブロック66において参照される画像フレーム内部のオブジェクトをセグメント化することによって、ユーザーは対話的セグメント化を得ることができる。本発明のオブジェクトセグメント化は、オブジェクトをセグメント化するに当たって高精度を可能にし、比較的速く、かつ、セグメント化されるオブジェクトを定義するにあたって、ユーザーに最適の素軟性を与える。
【0065】
図4は、オブジェクトセグメント化工程140の機能ブロック・ダイアグラムであり、この工程によって、あるビデオシーケンスのある画像フレームの選ばれたオブジェクトをセグメント化する。工程140によるオブジェクトセグメント化は、高精度で速く、ユーザーにとって定義の簡単な、オブジェクトの感覚的グループ化を実現させる。
【0066】
図5Aは、画像フレーム54aと直方体オブジェクト56aを示すビデオ表示装置52の表示画面50の模式図である。ディスプレイ画面50への表示時、直方体オブジェクト56aはオブジェクト周縁142(図では、はっきりと分かるようにオブジェクト56aから離して描かれる)を含む。このものは、オブジェクト内部144の境界となる。オブジェクト内部144とは、表示画面50におけるオブジェクト56aの輪郭を指し、一般に、内部表面、または、図示のように、画像特徴の外部表面に一致する。下記の説明は、特に、直方体オブジェクト56aに関してなされるものであるが、画像フレームにおいてセグメント化される各オブジェクトに同様に適用可能である。
【0067】
機能ブロック146は、ユーザーが、オブジェクト内部144内に、オブジェクト周縁142の内部輪郭148を形成することを示す。ユーザーは、内部輪郭148を、マウスや、追跡ボールのような通例のポインター、または、カーソル制御装置で形成することが好ましい。内部輪郭148は、オブジェクト周縁142から指定の距離150以内に形成される。指定距離150は、ユーザーによって選ばれるが、その大きさは十分大きく、ユーザーは、内部輪郭148を、周縁142の指定距離150以内に、比較的速やかに形成することができる。指定距離150は、例えば、約4〜10ピクセルに相当する。
【0068】
機能ブロック146は、ビデオシーケンスの中のキー・フレームに関連して実行される。例えば、従来の動画像の場面に関しては、キー・フレームとは、場面の複数のフレームの内の最初のフレームとすることができる。この機能にユーザーを参加させることによって、オブジェクトセグメント化工程140は半ば自動化されるが、オブジェクトのセグメント化される精度と素軟性はかなり増大する。キー・フレームを除いて、後の画像フレームにおけるオブジェクトは、以下にさらに詳細に述べるように自動的にセグメント化される。
【0069】
機能ブロック152は、内部輪郭148が自動的に拡大され、外部輪郭156を形成することを示す。外部輪郭156の形成は、外部輪郭156が、内部輪郭148からユーザーが定めた数のピクセルだけ増えるように、輪郭148の比較的簡単な画像拡大として実行される。内部輪郭148と、外部輪郭156との間の距離は、およそ距離150の2倍となることが好ましい。
【0070】
機能ブロック158は、内部輪郭148と外部輪郭156との間のピクセルが、それらがオブジェクト内部144の中にあるかどうかに関する、あらかじめ定義された属性に従って分類され、それによって、図3Aに関連して説明された種類の、オブジェクト周縁142と、対応マスク80を自動的に特定することを示す。画像属性は、ピクセルのカラーと位置を含むことが好ましく、かつ、いずれの属性も、それだけで、または、他の属性と併せて使用できるものであることが好ましい。
【0071】
この好ましい実施態様では、内部輪郭148と外部輪郭156におけるピクセルの各々が、(r、g、b、x、y)の形の5次元ベクトルで表わされる「クラスター中心」を定義する。用語r、g、およびbは、ピクセルの各々に関連する赤、緑、および青のカラー成分に対応し、用語xおよびyは、ピクセルの位置に対応する。内部輪郭148の中のピクセルに対応するm個のクラスター中心ベクトルは、{I0,I1,...,Im-1}で表わされ、外部輪郭156の中のn個のクラスター中心ベクトルは、{O0,O1,...,On-1}で表わされる。
【0072】
クラスター中心ベクトルIiとOjとの間のピクセルは、5次元ベクトル空間において、各ピクセルの最も近いベクトルを特定することによって分類される。各ピクセルについて、それぞれのクラスター中心ベクトルIiおよびOjの各々に対する絶対距離diおよびdjは、下記の式によって計算される。
【0073】
Figure 0004377455
【0074】
ここに、WcolorおよびWcoordは、カラーおよびピクセル位置情報それぞれに対する重みづけ係数である。重みづけ係数WcolorおよびWcoordは、合計が1、そうでなければユーザーの選んだ数となる値を持つ。重みづけ係数WcolorおよびWcoordは、0.5という等値を持つことが好ましい。各ピクセルは、クラスター中心ベクトルIiおよびOjの一つに対し、5次元最小距離によるオブジェクト内部144または外部に関連する。
【0075】
機能ブロック162は、ユーザーが、先頭フレームまたはキー・フレームの各オブジェクトにおいて、少なくとも2個の、できればそれよりたくさんの(例えば4〜6個の)特徴点を選択することを示す。特徴点は、オブジェクトの比較的際立った状態であることが好ましい。例えば、直方体画像特徴56に関連しては、コーナー70a〜70cを特徴点として選ぶことも可能である。
【0076】
機能ブロック164は、各選ばれた特徴点(例えば、コーナー70a〜70c)を取り囲む複数のピクセルから成るブロック166が定義され、後続画像フレーム(例えば、直後画像フレーム)の対応するブロックにマッチングされることを示す。ピクセル・ブロック166は、ユーザー定義によるものではあるが、画像内部144内のピクセルだけを含む32x32ピクセル配列を含むものであることが好ましい。機能ブロック15で決められることであるが、(例えば、コーナー70bと70c)ピクセル・ブロック166の内、オブジェクト内部144の外にはみ出すピクセル168(斜線で示す)は除外される。ピクセル・ブロック166は、従来のブロックマッチング工程、または、下記にさらに詳細に述べる多角形マッチング工程によって特定される最小絶対誤差によって、直後画像フレームの対応するピクセル・ブロックにマッチングされる。
【0077】
機能ブロック170は、オブジェクトの粗動き変換が、2個の連続する画像フレームにおける対応する特徴点から求められることを示す。機能ブロック172は、現在画像フレームのマスク80が粗動き変換によって変換され、それによって、直後画像フレームのマスク80に対する推定が得られることを示す。後続画像フレームの中に特定されない、現在フレーム中の特徴点はいかなるものも無視される。
【0078】
機能ブロック174は、直後画像フレームにおけるマスク80に関して得られた推定がフレーム1個分遅らせられ、かつ、その直後サイクルに対して輪郭176として機能することを示す。同様に、機能ブロック178は、対応する特徴点もフレーム1個分遅らせられ、同じ直後のフレームに対して初期特徴点180として利用されることを示す。
【0079】
[多角形マッチング法]
図6は、多角形マッチング法200の機能ブロック・ダイグラムであり、この方法は、連続する画像フレームにおける、各対応ピクセル・ペアについて動きベクトルを求めるものである。このような密な動きベクトル計算は、図3Aの密な動き変換96を求める基礎となる。
【0080】
多角形マッチング工程200は、従来のブロックマッチング工程同様、連続する画像フレーム間の広範な動きを求めることができる。しかも、従来のブロックマッチング工程と違って、多角形マッチング工程200は、オブジェクト周縁近傍、または、直上に位置するピクセルに対する高精度を維持するから、その生成する誤差は極めて少ない。多角形ブロック法200の好ましい実施態様においては、計算効率が向上する。
【0081】
多角形ブロック法200を、図7Aおよび図7Bを参照しながら説明する。この図は、2個の連続する画像フレーム202a、202bを示す表示画面50の模式図であり、それら画像フレームにおいて、画像特徴204が、それぞれ、オブジェクト204aおよび204bとして表示される。
【0082】
機能ブロック206は、画像フレーム202aと202bとにおけるオブジェクト204aと204bとが特定され、例えば、オブジェクトセグメント化法140によってセグメント化されることを示す。
【0083】
機能ブロック208は、オブジェクト204bに対して適用されるピクセル・ブロック210b(例えば、15x15ピクセル)と、オブジェクト204aの周囲の探索領域212に対する大きさが求められることを示す。ピクセル・ブロック210bは、それに対して、オブジェクト204aにおける対応ピクセル・ブロック210aが特定される、そのような、オブジェクト204bの周囲の領域を定める。探索領域212は、対応ピクセル・ブロク210aが求められる領域を定める。ピクセル・ブロック210bと探索領域212とは、規則的なピクセル配列であって、ユーザーによって定義される大きさを持つものであることが好ましい。
【0084】
機能ブロック214は、オブジェクト204b内の初期ピクセル216が特定され、現在ピクセルと指定されたことを示す。初期ピクセル216は、各種の基準の内のいずれで定義されてもよい。そのような初期ピクセルとしては、例えば、最大垂直範囲および最小水平範囲の位置にあるピクセルである。図示の座標軸220に従って配置された、表示画面50上のピクセルに関しては、初期ピクセル216は、最大y座標値と、最小x座標値を持つ、オブジェクト214bのピクセルとして表わすことができる。
【0085】
機能ブロック222は、ピクセル・ブロック210bが、現在ピクセルを中心とし、その周辺に広がっていることを示す。
【0086】
機能ブロック224は、ピクセル・ブロック210bが、オブジェクト204bに含まれないピクセル(例えば、図7Bの斜線で示したピクセル226)を含むかどうか関する照会を表わす。この照会は、機能ブロック206によって特定されたオブジェクトを参照して実行される。現在ピクセルに位置づけられるピクセル・ブロック210b内のピクセルがオブジェクト204b外にはみ出した場合は必ず、機能ブロック224は、機能ブロック228に進み、その他の場合は機能ブロック232に進む。
【0087】
機能ブロック228は、ピクセル・ブロック210bの内、オブジェクト204bの外にはみだすピクセル(例えば、ピクセル226)は、ピクセル・ブロック210bによって定義される領域から除外し、それによって、ピクセル・ブロック210bが、オブジェクト204b内部のピクセルだけを含むようにする。その結果、ピクセル・ブロック210bは、もともと定義された正方形、長方形領域よりもさらに複雑な多角形となる。
【0088】
機能ブロック232は、オブジェクト204a内にあるピクセルが、オブジェクト204bにおける現在ピクセルと対応すると特定されたことを示す。オブジェクト204aにおけるそのピクセルを、直前対応ピクセルと言う。直前対応ピクセルは、探索領域212の各ピクセルの周囲にピクセル・ブロック210aを形成し、かつ、ピクセル・ブロック210aと、オブジェクト204bにおける現在ピクセルの周囲のピクセル・ブロック210bの間の相関を求めることによって特定することが好ましい。ピクセル・ブロック210aと210bとの間の各相関は、例えば、絶対誤差によって求めることができる。直前対応ピクセルは、探索領域212の中に、ピクセル・ブロック210bに対する絶対誤差が最小となるピクセル・ブロック210aを特定することによって特定される。ピクセル・ブロック210bに対するピクセル・ブロック210aの総計絶対誤差は、次のようにして求めることができる。
【0089】
Figure 0004377455
【0090】
ここに、項rij,gij,bijは、ピクセル・ブロック210b中のピクセル各々と結合する、それぞれ、赤、緑、および、青のカラー成分に対応し、項rij’,giij’,bij’は、ピクセル・ブロック210aのピクセル各々と結合する、それぞれ、赤、緑、および、青のカラー成分に対応する。
【0091】
上述したように、絶対誤差Eの総計は、mxnのピクセル寸法を持つピクセル配列を持つピクセル・ブロックを含む。多角形を持つピクセル・ブロック210bは、多角形ピクセル・ブロック210bの外にはみ出すすべてのピクセルのカラー成分に対してゼロ値を定義することによって、比較的簡単に取り込むことができる。
【0092】
機能ブロック234は、オブジェクト204b内の各ピクセルと、オブジェクト204a内の対応直前ピクセル間の動きベクトルMVが求められることを示す。動きベクトルは、オブジェクト204bのピクセルの位置と、オブジェクト204aの対応直前ピクセルの位置との間の差と定義される。
【0093】
MV=(xi-xk’,yj-yl’)
【0094】
ここに項xiとyiは、それぞれ、ピクセル・ブロック210bにおけるピクセルの、x-座標位置、および、y-座標位置に一致し、項xk’とxl’は、それぞれ、ピクセル・ブロック210aの対応直前ピクセルのx-座標位置、y-座標位置に一致する。
【0095】
機能ブロック236は、オブジェクト204bが、何らかの残存ピクセルを含むかどうかに関する照会を表わす。オブジェクト204bが残存ピクセルを含む場合は必ず、機能ブロック236は、機能ブロック238に進み、そうでなければ終末ブロック240に進む。
【0096】
機能ブロック238は、オブジェクト204bの次のピクセルが、あらかじめ指定されたフォーマットまたは、シーケンスによって特定されることを示す。初期ピクセルは、機能ブロック214に関連して前述のように選ばれたが、後続ピクセルは、ある行において(すなわち、共通のy-座標軸の)、まずすぐ次のピクセルを特定することによって定義し、かつ、もしもオブジェクト204が列の中に他にピクセルを含んでいなければ、1段下の行の、第1、すなわち、最左ピクセル(すなわち、最小x-座標値を持つ)に進んでもよい。このようにして特定されたピクセルは、現在ピクセルに指定され、機能ブロック238は、機能ブロック222に戻る。
【0097】
多角形ブロック法200は、対応ピクセルが、仮に、オブジェクトの周縁上に、または、周縁近傍に位置していても、対応ピクセルを正確に特定する。従来のブロックマッチング工程に見られた重大な誤差原因は、ピクセル・ブロック210bの内、オブジェクト204bの外にはみ出したピクセルを除外または無視することによって除去される。従来のブロックマッチング工程は、均一なピクセル・ブロック形状には厳密に適用されるが、セグメントオブジェクトに対しては厳密には適用されない。均一ピクセル・ブロック形状は、オブジェクトの周縁近傍のピクセルに対してはかなりの誤差を引き起こす。なぜなら、オブジェクトの外にはみ出すピクセルは、オブジェクトが動くにつれ、または、その背景が変化するにつれ、かなりの変化を受けるからである。従来のブロックマッチング工程においては、そのようにはみ出しピクセルの変動が含まれるのであるから、オブジェクト周縁近傍のピクセルは、厳密には、直前画像フレームの対応ピクセルと相関されない。
【0098】
オブジェクト204bの各ピクセルに関しては、オブジェクト204aの対応直前ピクセルが特定される。これは、直前オブジェクト204aのピクセルの各々について、ピクセル・ブロック210bと、ピクセル・ブロック210aとを比較することによって実行される。直前対応ピクセルとは、オブジェクト204aにおいて、ピクセル・ブロック210bと最も高い相関を持つピクセル・ブロック210Aを持つピクセルである。従来の方法で処理するならば、この解決には、各直前対応ピクセルを特定するために実質的な計算が要求される。具体例を挙げるならば、mxnピクセルの寸法を持つ探索領域212よりもはるかに小さいnxnピクセルの寸法を持つピクセル・ブロックについて、直前オブジェクト204aにおける各直前対応ピクセルを特定するために、約n2xm2個の計算が必要である。
【0099】
[ピクセル・ブロック相関工程]
図8は、変更ピクセル・ブロック相関工程260の機能ブロック・ダイグラムであり、これを、機能ブロック232に関連して説明したものの代わりとして用いることが好ましい。変更相関工程260は、ピクセル・ブロック210bと210aとを相関する際に内在的に認められる冗長度を利用し、それによって、必要計算数をかなり減少させる。
【0100】
相関工程を、図9A図9G、および、図10A図10Gを参照しながら説明する。これらの図は、連続する画像フレーム202aと202bに対応する任意のピクセル群を模式的に表わす。特に、図9Aは、5x5ピクセルの寸法を持つピクセル・ブロックの模式図であり、この図において、各文字は、個別のピクセルに相当する。ピクセル・ブロック262のピクセルは、個別の行264を含む、ピクセルの正規則的配列として配置される。図9Bは、qxqの寸法を持ち、直前画像フレーム202aの探索領域212に対応するピクセル配列266を表わす。図9Bの各々の数字は個別のピクセルを表わす。従来の正規則的ピクセル・ブロック262と関連して説明されているが、相関工程260は、多角形マッチング工程200に関連して説明された種類の多角形ピクセル・ブロックにも同様に適用できる。
【0101】
機能ブロック268は、初期ピクセル・ブロック(例えば、ピクセル・ブロック262)が、中央ピクセルMに関して定義され、探索領域212(例えば、ピクセル配列266)を経て走査されることを示す。この走査は、一般に、従来のブロックマッチング工程に見られるように、ラスター・パターン(一部図7Aに示す)の形で実行される。図9C図9Gは、ピクセル・ブロック262とピクセル配列266の間のブロックマッチング工程におけるおよそq2個の手順の内の5個を模式的に図示する。
【0102】
ピクセル・ブロック262の、ピクセル配列266に対する横断走査は、従来の方法で行なわれるが、両者の間の相関に関する計算は、本発明にしたがって、別の方法で実行される。特に、相関(例えば、絶対誤差)は、各走査位置において、ピクセル・ブロック262の各列264に対して求められ、保存される。各走査位置において、ピクセル・ブロック262の各列264について求められ、保存された相関は、列相関270と呼ばれる。その内のいくつかを、相関されたピクセルに関連させることによって、図9C図9Gに記号で示す。具体的に示すと、図9Cは、列相関270(1)を示すが、これは、ピクセル配列266に揃えられた、ピクセル・ブロック262の1個の列264に対して求められたものである。同様に、図9Dは、列相関270(2)と270(3)とを示し、これらは、ピクセル配列266に揃えられたピクセル・ブロックの2個の列264に対して求められたものである。図9E図9Gは、ピクセル配列266に対する、上記に続く3個の連続走査位置における、ピクセル・ブロック262との、同様の列相関を示す。
【0103】
ピクセル配列266上を、初期ピクセル・ブロック262を走査することによって、列相関の保存配列、または、データベースが得られる。ピクセル・ブロック262が、r個の列264を持ち、かつ、ピクセル配列266がqxq個のピクセルを持つ場合、列相関データベースは、約rq2個の列相関を含む。この行相関の数は近似値である。なぜならピクセル・ブロック262は、できれば最初にピクセル配列266の上を、ピクセルMがピクセル配列266のピクセルの内の第1列に揃うように、走査されることが好ましいからである。
【0104】
図9Cに示されるものから始まる残余の手順は、ピクセル配列266の上をピクセル・ブロック262が完全に2回走査された後に起こる(すなわち、ピクセル配列266の第1列、第2列にピクセルMが揃った後)。
【0105】
機能ブロック274は、次のピクセル・ブロック(図10A)が、例えば、画像フレーム202bにおいて、ピクセルMと同じ列の中心ピクセルNに関して定義されることを示す。ピクセル・ブロック276は、ピクセル・ブロック262に含まれないピクセル列278と、ピクセル・ブロック262に含まれるピクセル列280とを含む。ピクセル・ブロック276は、ピクセル・ブロック262に含まれる列282(図9A)を含まない。次のピクセル・ブロック276におけるこのような増加定義は、従来のブロックマッチング工程に用いられるものとほぼ同じである。
【0106】
機能ブロック284は、ピクセル・ブロック276が、機能ブロック268に関連して前述したような方法で、ピクセル配列266が走査されることを示す。図9C図9Gと同様に、図10B図10Gも、ピクセル・ブロック276が、ピクセル配列266が走査される様子を示す。
【0107】
機能ブロック286は、列278について、各走査位置において、列相関が求められ、保存されることを示す。従って、列相関288(1)〜288(5)は、それぞれ、第10B〜10Fに示す列278の走査位置に関連して求められる。
【0108】
機能ブロック290は、ピクセル・ブロック276の列280の各々について、保存された列決定が、以前に計算された各走査位置に関して取り出され、機能ブロック268に保存されることを示す。例えば、図9Cの列相関270(1)は、図10Cの270’(1)と同じである。同様に、図10D図10Fの列相関270’(2),270’(3),270’(5)〜270’(8)および270’(15)〜270’(18)は、第9D、9E、および、図9Gの対応する列相関と同じである。従って、ピクセル・ブロック276について、列相関288のみが各走査位置について計算される。この結果、ピクセル・ブロック276に必要な計算の数は、ほぼ80%減少される。
【0109】
機能ブロック292は、後続ピクセル・ブロック294(図11A)が、ピクセルMに対して次に続く行の中心ピクセルRに関して定義されることを示す。ピクセル・ブロック294は、図9Aのピクセル・ブロック262の列264と類似ではあるが、異なるピクセルから成る列296を含む。特に、列296は、列264には含まれないピクセルA’〜E’を含む。後続ピクセル・ブロック294のこのような増加定義は、従来のブロックマッチング工程に用いられるものとほぼ同じである。
【0110】
機能ブロック298は、ピクセル・ブロック294が、機能ブロック268および276に関連して前述した方法で、ピクセル配列266(図9B)走査される。図11B図11Fは、ピクセル・ブロック294を、ピクセル配列266を走査する様子を示す。
【0111】
機能ブロック300は、列296の各々について、列相関が求められ、保存されることを示す。したがって、列相関302(1)〜302(18)は、図11B図11Fに示した列296の走査位置に関連して求められる。
【0112】
列相関302(1)〜302(18)の各々は、ピクセル・ブロック262(図9A)に関して実行された列相関に関連して、短縮して計算することもできる。
【0113】
例えば、図11Dの列相関302(1)〜302(18)は、図9Eの副列相関304(4)〜304(8)と同じ副列相関304’(4)〜304’(8)を含む。したがって、列相関302(4)〜302(8)は、それぞれの列相関270(4)〜270(8)から、ピクセル01A、02B、03C、04D、および05Eに対する後者の相関値を減算することによって、それぞれ、副列相関304(4)〜304(8)を決定することができる。列相関302(4)〜302(8)はピクセル・ペア56A’、57B’、58C’、59D’、および50E’に対する相関値を、それぞれの副列相関値304(4)〜304(8)に加算することによって得ることができる。
【0114】
それぞれの列相関270(4)〜270(8)から、列相関302(4)〜302(8)を求めるには、ピクセル・ブロック294には含まれない、ピクセル・ブロック262のピクセルA〜E列に対応する、個々のピクセル相関値を減算し、かつ、ピクセル・ブロック294には含まれるが、ピクセル・ブロック262には含まれないピクセルA’〜E’行に対するピクセル相関値を加算する必要がある。この方法は、列相関302(4)〜302(8)の各々に対し、従来の方法であれば、各列相関を求めるのに5回の加算が必要とされるのに対し、1回の減算、1回の加算で代用される。さらに大きな寸法のピクセル・ブロックが好まれれば好まれる程、従来の計算法に優るこの方法の利点がますます大きくなる。従来のピクセルマッチング工程は、ピクセル配列266に対する初期ピクセル・ブロック262の各走査位置について、総合ブロック相関のみを特定するだけである。そのため、全ピクセルに対する全相関値を、各走査位置について個別に計算しなければならない。逆に、相関工程260は、保存列相関270を利用し、それによって、必要な計算数をかなり減少させる。相関工程260によってもたらされる速度と、プロセッサーのリソース要求度における改善は、列相関を保存するために必要とされる装置条件を補って余りある。
【0115】
相関工程260は、図9図11を参照しながら説明してきたが、これは、本発明の特徴を例示するためのものであることがわかるであろう。例示したように、本発明は、コンピュータ装置で実行するのに特に適した繰り返し特徴または周期的特長を含む。この繰り返し特徴または周期的特徴は、ピクセル・ブロックとピクセル配列に依存するものであるが、当業者であれば、十分に理解し、導入可能なものである。
【0116】
[多次元変換]
図12は、第1と第2の連続する画像フレーム間において多次元変換を生成し、かつ、転送または保存のためにマッピングを量子化することから成る、変換法350の機能ブロック・ダイアグラムである。この多次元変換は、図3A,図3Bの機能ブロック96と関連させて使用するのが好ましい。変換法350は、図7A図13に基づいて説明される。これらの図の内の後者は、図7Bと同様、表示画面50の模式図であって、画像特徴20がオブジェクト204bとして表示される画像フレーム202bを示す。
【0117】
変換法350は、線形移動、回転、拡大、および、斜行の内のいずれか、または、その全てを含む複雑な動きを表わすことのできる多次元アフィン変換を実行するものであることが好ましい。変換法350は、1次元のみで、かつ、線形移動にしか関わらない従来のビデオ圧縮法、例えば、MPEG-1、MPEG-2、および、H.26Xよりもはるかに優る。この点において、変換の次元性とは、後で詳しく述べるように、変換の一般形における座標の数を指す。複雑な動きを、本発明に従って表現することによって精度は増すけれども、それによる誤差は、従来の表現法によるものよりも少ない。従って、圧縮効率が増す。
【0118】
機能ブロック352は、オブジェクト204aおよび204bのピクセルの密な動き推定を求めることを示す。密な動き推定は、多角形マッチング工程200で入手することが好ましい。前述したように、密な動き推定は、座標(xi,yj)における、画像フレーム202bのオブジェクト204bのピクセルと、座標(xi’,yj’)における、画像フレーム202aのオブジェクト204aのピクセルとの間の動きベクトルを含む。
【0119】
機能ブロック354は、変換ブロック356の配列が、オブジェクト204bを見込むように定義されることを示す。変換ブロック356は、例えば、32x32ピクセルの寸法を持つ、ピクセルの正規則性配列であることが好ましい。
【0120】
機能ブロック358は、各変換ブロック356に対して一つの多次元アフィン変換が生成されることを示す。アフィン変換は、1次であって、次のように表わされるものであることが好ましい。すなわち、
xi’=axi+byi+c
yi’=dxi+eyi+f
かつ、動きベクトルがそれに対して較的高い信頼度を持つすべてのピクセルについて求めることが好ましい。このアフィン変換は、xiとyiとが、二つの座標xi’とyi’に関して定義されるという点で2次元を持つ。
【0121】
動きベクトルの相対的信頼度とは、対応するピクセル間の動きベクトルが、他のピクセルに対して、一意的に決定される、その精度を指す。例えば、比較的大きなピクセル配列の中にあり、かつ、均一なカラーを持つ(例えば、黒)、特定のピクセル間の動きベクトルは、通常、高精度に求めることはできない。特に、第1画像フレームにおける黒ピクセルについては、後続画像フレームのピクセル配列の中の多くのピクセルが同一相関を持つ(すなわち、ピクセル・ブロック間の絶対値誤差)。
【0122】
逆に、構成ピクセルが、個別的な特徴に対応するピクセル配列は、後続の画像フレームにおいて、特定の対応ピクセルに対して比較的高い相関を持つ。
【0123】
比較的高い相関は、特定のピクセルに対して、最小絶対誤差の決定として表わされることが好ましい。従って、比較的信頼度の高い動きベクトルは、このように一意的に低い誤差値に対して求めることができる。例えば、信頼度の高い動きベクトルとは次のようなものとして定義される。すなわち、その動きベグトルに対する最小絶対値誤差が、そのピクセルに関連する次に大きい誤差値よりも、閾値差分を上回る差分少ないもの、である。あるいはまた、信頼度の高い動きベクトルは、相関係数を求める基礎となる絶対誤差値の2次微分に関して定義することもできる。ある特定の値を上回る2次微分は、特定の対応ピクセル間に比較的高い相関のあることを示す。
【0124】
このような高信頼度の動きベクトルを含むn個のピクセルが与えられたとき、好ましいアフィン変換方程式は、画像フレーム202aと202bにおけるn個の対応ピクセルに関して求められる。画像フレームは、好ましいアフィン変換方程式の、6個の未知係数a、b、c、d、e、およびfを求めるには、画像フレーム202aと202bに、高信頼度の動きベクトルを含む少なくとも3個の対応ピクセルを含んでいなければならない。好ましい次元に関して言えば、変換ブロック356の各々が210個のピクセルを含み、その内の相当数が通常比較的高い信頼度の動きベクトルを持っていなければならない。
【0125】
これによって得られるn個の方程式は、以下の線形代数方程式で表わされる。
【0126】
Figure 0004377455
【0127】
これらの方程式は、従来の特異数値分解法(Singular value decomposition,SVD)によって解くのが好ましい。この方法により、密な動きベクトルの近似値にたいする最小二乗誤差が得られる。従来のSVD法は、例えば、プレスら(Press et al.)著「Cにおける数字処理(Numerical Recipes in C)」Cambridge University Press(1992)に記載されている。
【0128】
上述のように、この好ましい二次元アフィン変換方程式は、連続する画像フレーム202aと202bとの間において、変換ブロック356の線形移動、回転、拡大、および、斜行を表わすことができる。逆に、従来の圧縮標準として用いられる通例の動き変換法は、下記の形の、簡単な変換方程式を用いる。
【0129】
xi’=xi+g
yi’=yi+h
【0130】
従来の単純化された変換方程式は、動きを、たった二つの係数gとhで表わす。これは、好ましい多次元変換方程式によって得られる情報量(すなわち係数)の僅か3分の1にすぎない。従来の圧縮法と比べて、変換法350によって得られる情報の優れた圧縮効果を現実のものとするには、変換ブロック356の次元を、MPEG-1やMPEG-2圧縮法によって採用されている16x16の3倍を越えるものとすることが好ましい。変換ブロック356の好ましい32x32ピクセル寸法は、従来の変換法の変換ブロックで採用されるピクセル数の4倍に渡る。変換ブロック356の従来に優る大きな次元数は、アフィン変換係数が変換ブロック356の動きを表わす際の高精度とあいまって、変換法350が、従来の圧縮法に優る大きな圧縮を実行するのを可能にする。
【0131】
本発明によって生成されるアフィン係数は、通常、非整数の、浮動少数点値であって、十分に圧縮しようとすると必ずその精度に悪影響を与えるものであることが了解されるであろう。従って、アフィン変換係数を保存ないし転送する際に要求される帯域を減らすためには、それら係数を量子化することが好ましい。
【0132】
機能ブロック362は、機能ブロック358に関連して生成されたアフィン変換係数が量子化され、それによって、それら係数を保存ないし伝送する際に必要とされる帯域を減少させることを示す。図14は、変換ブロック356の部分的に拡大現したものであって、3個の選ばれたピクセル364a、364b、および364cを示す。すなわち、これらのピクセルから、6個の好ましいアフィン変換係数a〜fが求められる。
【0133】
ピクセル364a〜364cは、それぞれ、(x1,y1)、(x2,y2)、(x3,y3)のピクセル座標として表わされる。機能ブロック352の密な動き推定に基づき、ピクセル364a〜364cは、直前画像フレーム202aにおいて、それぞれの対応ピクセル(x1’,y1’)、(x2’,y2’)、(x3’,y3’)を持つ。従来の方法と同様に、ピクセル位置(xi,yi)は、整数で表わされ、アフィン変換方程式の解となる。そして、それに基づき、好ましいアフィン変換係数が求められる。従って、選ばれたピクセル364a〜364cは、直前画像フレーム202aの対応ピクセルを計算するのに用いられるが、このピクセルは、通常、浮動小数点値となる。
【0134】
これらの浮動小数点値の量子化は、対応するピクセル間の差(xi-xi’,yi-yi’)を、整数形に変換することによって実行する。アフィン変換係数は、まず、差ベクトルとピクセル値(xi,yi)からピクセル値(x’i,y’i)を計算し、次に、ピクセル値(x’i,y’i)に関して機能ブロック358の多次元変換方程式を解くことによって求められる。
【0135】
図14に示したように、ピクセル364a〜364cは、できれば、変換ブロック356内部の局部的変動に対する量子化の感度を最小にするように、変換ブロック356内に分布される。ピクセル364aは変換ブロック356の中心か、中心近傍に、ピクセル364bと364cとは上隅に位置するのが好ましい。また、好ましい実施態様においては、オブジェクト204bの変換ブロック356の各々における選ばれたピクセルが、同じ位置を持つことが好ましい。それによって量子化工程が効率的に実施できるからである。
【0136】
機能ブロック362の量子化法のもう一つの態様は、異なるレベルの量子化を用いて、様々の動きの程度を表わすことができる、ということである。その結果、比較的単純な動き(例えば、線形移動)は、複雑な動きに要求されるものよりも少なく選ばれたピクセルを用いて表わすことができる。前述のアフィン変換方程式については、オブジェクト204bからのピクセル364a(x1,y1)と、オブジェクト204a対応ピクセル(x1’,y1’)で、下記の形の単純化されたアフィン変換方程式を解くのに十分である。
【0137】
x1’=y1+c
y1’=y1+f
【0138】
これは、連続する画像フレーム間の線形移動を表わす。ピクセル364aは、その中心位置が、一般に、他の種類の動きとは独立に線形移動を表わすという理由から、特異的に使用される。したがって、ユーザーは、線形移動のような単純な動きは、簡略化されたアフィン変換方程式で選択的に表現することができる。簡略化されたアフィン変換方程式は、複雑な動きを表現するのに必要とされるデータの3分の1しか要求しないからである。
【0139】
同様に、オブジェクト204bに関する、一対の選択ピクセル(x1,y1)(例えば、ピクセル364a)と(x2,y2)(すなわち、ピクセル364bと364cのどちらか)、および、オブジェクト204aに関する対応ピクセル(x1’,y1’)および(x2’,y2’)は、下記の形の単純化されたアフィン変換方程式を解くのに十分である。
【0140】
xi’=axi+c
yi’=eyi+f
【0141】
これは、連続する画像フレーム間の線形移動および拡大を含む動きを表わすことができる。下記の簡略化された形において、
x’=acosθx+sinθy+c
y’=-sinθx+acosθy+f
【0142】
選択ピクセルの対応ペアは、線形移動、回転、等方拡大を含む動きを表わすことができる。この簡略形においては、変数x、yが共通の係数を持つので、この方程式は、2個の対応ペアによって解くことが可能となる。
【0143】
従って、ユーザーは、線形移動、回転、および、拡大を含む比較的複雑な動きを、部分的に簡略化されたアフィン変換方程式によって選択的に表わすことができる。このような方程式は、複雑な動きを表わすのに必要とされるデータの3分の2しか要求しない。オブジェクト204bの、第3の選択ピクセル(x3,y3)を加えると、オブジェクト204aの対応ピクセル(x3’,y3’)と、完全な、好ましいアフィン変換方程式とによって、ユーザーは、さらに、連続する画像フレーム間の斜行をも表わすことができるようになる。
【0144】
変換法350(図12)の好ましい実施態様を、例えば、32x32ピクセルの寸法を持つ、一様変換ブロック356使用の場合を例にとって説明する。機能ブロック358に関連して説明した好ましい多次元アフィン変換は、変換ブロック356に関して求められる。変換ブロック356の次元は、本方法によって得られる圧縮比に直接影響することがわかるであろう。
【0145】
あるオブジェクトについて、画像フレーム間の変換を表わすためには、比較的大きな寸法を持つ変換ブロック356の場合、より小さい寸法を持つ変換ブロック356の持つ数よりも、数が少なくなる。一様に大きな変換ブロック356を設けると、その結果は、それに相当する大きな誤差が、各変換ブロック当たりに導入されることになる。したがって、一様な大きさの変換ブロック356は、通常、この相矛盾する性能制限のバランスを取るために、中程度の寸法を持つ。
【0146】
[変換ブロックの最適化]
図15は、変換ブロック最適化法370の機能ブロック・ダイグラムである。この方法は、最小誤差閾値を与える変換ブロック次元を自動的に選択するものである。最適化法370は、図16に基づいて説明する。図16は、オブジェクト204bを含む画像フレーム202bの一部を示す表示画面50の模式図である。
【0147】
機能ブロック372は、初期変換ブロック374が、オブジェクト204bに関して定義されることを示す。初期変換ブロック374は、ユーザーの選択可能な最大寸法のもの、例えば、64x64ピクセルであることが好ましい。初期変換ブロック374は、現在変換ブロックと呼ばれる。
【0148】
機能ブロック376は、現在の信号対雑音比(SNR)ピークが、現在変形ブロックに関して計算されることを示す。この信号対雑音比は、できれば、現在変換ブロック内部のピクセルのカラー成分値の変動(すなわち、信号)の、推定誤差110(図3A,図3B)に関連するピクセルのカラー成分値の変動に対する比として計算されるのが好ましい。
【0149】
機能ブロック378は、現在変換ブロック(例えば変換ブロック374)が、例えば、4個の、相等しいサブブロック380a〜380dに分割され、サブブロック380a〜380dの各々についてアフィン変換が求められ、かつ、そのアフィン変換に関して将来の信号対雑音比が求められることを示す。将来の信号対雑音比は、機能ブロック376に関連して説明した現在の信号対雑音比について行なったものとほぼ同じ方法で求められる。
【0150】
照会ブロック382は、将来信号対雑音比が、現在信号対雑音比よりも、ユーザーの選択した閾値を越えて、上回るかどうかに関する照会を表わす。この照会は、現在変換ブロック(例えば、変換ブロック374)をさらに細分割したならば、それによって、アフィン変換の精度を、少なくとも閾値分だけ改善することができるという決定を表わす。将来信号対雑音比が、現在信号対雑音比よりも、閾値以上上回る場合は必ず、照会ブロック382は、機能ブロック384に進むが、そうでなければ、機能ブロック388に進む。
【0151】
機能ブロック384は、サブブロック380a〜380dが、連続的に現在変換ブロックを指定され、かつ、各々が、さらに細分割されるべきか否かを決定することを示す。具体例を挙げると、サブブロック380aが現在変換に指定され、機能ブロック376に従って処理され、さらに、サブブロック386a〜386dに細分割される。機能ブロック388は、次に続く変換ブロック374’が特定され、かつ、初期または現在の変換ブロックに指定されることを示す。
【0152】
[圧縮前外挿法]
図17Aおよび図17Bは、圧縮前外挿法400の機能ブロック・ダイアグラムであり、これは、任意の形の画像特徴を、あらかじめ定義された形に外挿し、それによって、符号化工程64(図3Aおよび図3B両図)の機能ブロック112に従って圧縮する手順を容易にするものである。外挿法400によって、機能ブロック112の圧縮が、前述のDCT、格子ウェーブレット圧縮のような従来の方法で実行することが可能となる。
【0153】
格子ウェーブレット圧縮、または、離散的コサイン変換(DCT)のような、従来の静止画像圧縮法は、ピクセルの方形配列に基づいて操作される。しかしながら、前述のように、本発明の方法は、任意の形の画像特徴、すなわち、オブジェクトに適用可能である。そのようなオブジェクト、または、画像特徴を、方形ピクセル配列形に外挿すれば、格子ウェーブレット圧縮、または、DCTのような従来の静止画像圧縮法の使用が可能となる。外挿法400は、図18A図18Dに基づいて説明される。これらの図は、単純なオブジェクト402が表示される表示画面50を表わすもので、外挿法400の様々の態様を示すものである。
【0154】
機能ブロック404は、外挿ブロック境界406が、オブジェクト402の周囲に定義されることを示す。外挿ブロック境界406は、方形であることが好ましい。図18Aを参照しながら説明すると、オブジェクト402の周囲における外挿ブロック境界406の形成は、オブジェクト402の周縁408の特定に基づいて実行され、その特定は、例えば、オブジェクトセグメント法140(図4)によって実行される。あるいはまた外挿ブロック境界406は、説明のために、オブジェクト402をその全体に渡って取り囲むように図示される。外挿ブロック境界406は、オブジェクト402の一部のみを取り込むことができることがわかるであろう。オブジェクトセグメント化法140に関連して前述したように、オブジェクト402に含まれるピクセルは、オブジェクト402に含まれないピクセルのカラー成分値とは異なるカラー成分値を持つ。
【0155】
機能ブロック410は、外挿ブロック境界406によって囲まれるが、オブジェクト402には含まれない全てのピクセル412について、そのカラー成分の各々に対してあらかじめ定義された値、例えば、ゼロ値が割り当てられることを示す。
【0156】
機能ブロック414は、外挿ブロック境界406内のピクセルの水平線が走査され、それによってゼロの、および、非ゼロのカラー成分値を持つ水平ピクセルセグメントを持つ水平線が特定されることを示す。
【0157】
機能ブロック416は、ゼロのカラー成分値を持つ水平ピクセルセグメントが、その両端において、周縁408に区画されているかどうかを問う照会を表わす。領域420は、ゼロのカラー成分値を持ち、かつ、ただ一端で周縁408で区画される水平ピクセルセグメントを表わす。機能ブロック416は、ピクセルセグメントがゼロのカラー成分値を持ち、両端においてオブジェクト402の周縁408で区画される領域418に対しては、機能ブロック426に進み、それ以外の場合には機能ブロック422に進む。
【0158】
機能ブロック422は、領域420の各水平ピクセルセグメントにおけるピクセルには、対応する水平線におけるピクセル424(例示のもののみ図示)とオブジェクト402の周縁408のカラー成分値が割り当てられることを示す。あるいはまた、領域420のピクセルに割り当てられるカラー成分値は、ピクセル424のカラー成分値に対して関数的な関係を持つ。
【0159】
機能ブロック426は、領域418の各水平ピクセルセグメントにおけるピクセルには、対応する水平線と周縁408に存在するピクセル428aと428bのカラー成分値の平均に相当する、その平均に等しいものが割り当てられることを示す。
【0160】
機能ブロック430は、外挿ブロック境界406内のピクセルの垂直線が走査され、それによってゼロの、および、非ゼロのカラー成分値を持つ垂直ピクセルセグメントを持つ垂直線が特定されることを示す。
【0161】
機能ブロック432は、ゼロのカラー成分値を持つ垂直線におけるピクセルセグメントが、その両端において、オブジェクト402の周縁408に区画されているかどうかを問う照会を表わす。図18Cに基づいて述べると、領域434は、ゼロのカラー成分値を持ち、かつ、両端で周縁408で区画される垂直ピクセルセグメントを表わす。領域436は、ゼロのカラー成分値を持ち、かつ、ただ一端で周縁408によって区画される垂直ピクセルセグメントを表わす。機能ブロック432は、ピクセルセグメントがゼロのカラー成分値を持ち、両端においてオブジェクト402の周縁408で区画される領域434に対しては、機能ブロック444に進み、それ以外の場合には機能ブロック438に進む。
【0162】
機能ブロック438は、領域436の各垂直ピクセルセグメントにおけるピクセルには、対応する垂直線におけるピクセル442(例示のもののみ図示)とオブジェクト402の周縁408のカラー成分値が割り当てられることを示す。あるいはまた、領域436のピクセルに割り当てられるカラー成分値は、ピクセル442のカラー成分値に対して関数的な関係を持つ。
【0163】
機能ブロック444は、領域434の各垂直ピクセルセグメントにおけるピクセルには、対応する垂直線と周縁408に存在するピクセル446aと446bのカラー成分値の平均に相当する、好ましくは、その平均に等しいものが割り当てられることを示す。
【0164】
機能ブロック448は、この方法によってカラー成分値を割り当てられた水平ならびに垂直ピクセルセグメント中のピクセルに対して、もしそうでなければその水平、および、垂直ピクセルセグメントにしたがってそのピクセルに割り当てられたはずのカラー成分値と比例する、好ましくは、その平均である複合カラー成分値が割り当てられることを示す。
【0165】
そのような複合カラー成分値を割り当てられたピクセルの例は、領域418と434の中のピクセルである。
【0166】
機能ブロック450は、外挿ブロック境界406によって区画はされるが、オブジェクト402の周縁408とは水平線に沿っても、垂直線に沿っても交差しない領域452に対して、近傍のピクセルに割り当てられたカラー成分値に比例する、好ましくは、その平均値に等しい、複合カラー成分値が割り当てられることを示す。図18Dに基づいて説明すると、領域452のピクセル454の各々に対しては、それぞれ水平線と垂直線においてピクセル454と同軸にあって、本方法によってあらかじめ非ゼロのカラー成分値を割り当てられているピクセル456aと456bのそのカラー成分値の、できれば、平均であるカラー成分値が割り当てられる。
【0167】
オブジェクト外挿工程400の利点は、オブジェクト402に含まれないピクセルに対して、滑らかに変化するカラー成分値を割り当てることができること、したがって、従来の静止画像圧縮法の圧縮性能と精度を最適化することができることである。逆に、チャンら(Chang et al.)著「任意の形をした画像セグメントの変形符号化法(Transform Coding of Arbitrary-Shaped Image Segments)」ACM Multimedia,83〜88ページ、1993年6月発行に記載されているような、ゼロ平滑化法や鏡像法のような従来技術では、機能ブロック410で実行したように、ゼロのカラー成分値を持つピクセルで充満している外挿オブジェクトに対して圧縮を適用する。オブジェクトとゼロ平滑化領域との間に見られる急激な画像変化は、圧縮の困難な高周波の変化を導くか、または、圧縮によって画像アーティファクトを導く。オブジェクト外挿法400はそのような欠点を克服するものである。
【0168】
[他の符号化法]
図19Aは、符号化法500の機能ブロック・ダイグラムであるが、この方法は、独特のフィルタを持つラプラシアン・ピラミッド符号化器用いる。このフィルタは、高度の圧縮を実現しながら、しかも、画像特徴の非線形態様、例えば、周縁を保存する。従来のラプラシアン・ピラミッド符号化法については、例えば、バートとエイデルソン(Burt and Addleson)著「緊密画像符号としてのラプラス・ピラミッド(Laplacian Pyramid as a Compact Image Code)」IEEE Trans.Comm.31巻7号523〜540ページ、1983年4月号に記載されている。符号化法500は、図3A,図3Bに示したビデオ圧縮符号化工程64の機能ブロック112に関連して説明した符号化法を実行することもできるし、もちろん、それ以外にも、ウェーブレット符号化法によるDCTの使用が示唆される、または、実際に使用されるところでは必ず実行可能である。一例として、符号化法500を、推定誤差110の符号化(図3A,図3B)に関連して説明することにする。
【0169】
第1のデシメーション・フィルタ502は、推定誤差(図3A,図3B)に相当するピクセル情報を受け取り、このピクセルを、フィルタ基準に従ってフィルタリングする。従来のラプラシアン・ピラミッド法では、デシメーション・フィルタは、ガウス重みづけ関数のような低域フィルタである。しかしながら、符号化法500に従うならば、デシメーション・フィルタ502は、メディアン・フィルタ、さらに詳しく言うと、3x3非分離メディアン・フィルタを用いることが好ましい。
【0170】
具体的に言うと、図20Aは、ピクセル504の、任意の一組、配列の一つのカラー成分(例えば、赤)に対するカラー成分値を簡略化して示したものである。赤のカラー成分値に特に関連して説明しているけれども、この説明は、ピクセル504の緑や青のカラー成分値にも同様に当てはまる。
【0171】
デシメーション・フィルタ502の好ましい実施態様については、3x3ピクセルの寸法を持つフィルタ・ブロック506が、ピクセル504の中に定義される。各ピクセル・ブロック506について、ピクセル強度中央値が特定され、選択される。ピクセル・ブロック506a〜506cについては、例えば、デシメーション・フィルタ502は、それぞれの値8、9および10を与え、これらは、図20Bの、最初の3個のピクセル512に並べられる。
【0172】
しかしながら、デシメーション・フィルタ502は、本発明に従って、他のメディアン・フィルタを採用することもできることがわかるであろう。従って、関連カラー成分値{a0,a1,...,an-1}を持つ各グループのピクセルに対して、メディアン・フィルタは、中央値aMを選択する。
【0173】
第1の2x2ダウンサンプリング・フィルタ514が、垂直、水平方向に一つおきのピクセル512をサンプリングし、さらに圧縮を行なう。図20Cは、得られた、圧縮された一組のピクセル515を示す。
【0174】
2x2アップサンプリング・フィルタ516は、ダウンサンプリング・フィルタ514で除外された各ピクセル512の代わりにゼロ値ピクセルを挿入する。また、補間フィルタ518は、ゼロ値ピクセルに対して、対立する隣接ピクセルの平均のピクセル値を割り当てる、または、もしもゼロ値ピクセルが、非ゼロ値を持つピクセルの対立ペアの間にない場合には、以前に割り当てた値を割り当てる。具体的に示すと、図20Dは、そのようにして得られた、一組のまたは一配列のピクセル値520を示す。
【0175】
差522が、一組のピクセル504のカラー成分値と、一組のピクセル520の対応するカラー成分値との間で求められ、ゼロ次画像成分I0を与える。
【0176】
第2のデシメーション・フィルタ526は、第1の2x2ダウンサンプリング・フィルタ514によって生成された圧縮された一組のピクセル515に対応するカラー成分値を受け取る。デシメーション・フィルタ526は、できれば、デシメーション・フィルタ502(例えば、3x3非分離メディアン・フィルタ)と同じものであることが好ましい。したがって、デシメーション・フィルタ526は、デシメーション・フィルタ502と同様に機能し、第2の2x2ダウンサンプリング・フィルタ528に対して、圧縮された一組のまたは一配列のピクセル(図示せず)を転送する。
【0177】
ダウンサンプリング・フィルタ528は、ダウンサンプリング・フィルタ514と同様に機能し、2次画像成分L2を形成する。この成分はさらに2x2アップサンプリング・フィルタ530と補間フィルタ531に転送される。これらのフィルタも、それぞれ、アップサンプリング・フィルタ516および補間フィルタ518と同様に機能する。差532が、一組のピクセル515のカラー成分値と、補間フィルタ531によって与えられるカラー成分値との間で求められ、1次画像成分I1を与える。
【0178】
画像成分I0、I1、およびL2は、それぞれ、ピクセル504のn×n配列のカラー成分値を表わす
n×n n/2×n/2,n/4×n/4
組みのカラー成分値である。
【0179】
画像成分I0は、元の一組のピクセル504によって表わされる画像の高周波成分(例えば、辺)を保持する。画像成分I1とL2は、元の画像の低周波面を表わす。画像成分I0、I1、および、L2は、元の画像の相対的圧縮を実現する。画像成分I0とI1は、隣接ピクセル値間に比較的高い相関があるために、高い圧縮度を持つ形式に高周波特徴(例えば、辺)を保持する。画像成分L2は、そのままではすぐには圧縮されない。なぜなら、主に低周波特徴から成るが、比較的寸法の小さい組みだからである。
【0180】
図19Bは、符号化法500によって生成された画像成分I0、I1およびL2を復号する、すなわち、符号化を逆行する復号化法536を示す機能ブロック・ダイグラムである。復号化法536は、第1の2x2アップサンプリング・フィルタ538を含む。このフィルタは、画像成分L2を受け取り、各隣接ペア・ピクセルの間にゼロ値のピクセルを挿入する。補間フィルタ539は、ゼロ値ピクセルに、隣接ピクセルの値の平均のピクセル値を割り当てる、または、もしもゼロ値ピクセルが、非ゼロ値ピクセルの対立ペアの間にない場合には、以前に割り当てた値を割り当てる。第1の2x2アップサンプリング・フィルタ538は、図19Aのアップサンプリング・フィルタ516と530とほぼ同じように動作する。また、補間フィルタ539は、補間フィルタ518と531とほ同じように動作する。
【0181】
合計540が、第1の2x2アップサンプリング・フィルタ538と補間フィルタ539によって生成された、復元された一組のピクセルに対応する画像成分I1と、カラー成分値の間で求められる。第2の2x2アップサンプリング・フィルタ542は、合計540によって生成されたピクセルの各隣接ペアの間にゼロ値のピクセルを挿入する。補間フィルタ543は、ゼロ値ピクセルに、隣接ピクセル値の平均を、または、ゼロ値ピクセルが、非ゼロ値ピクセルの対立ペアの間にない場合には、以前に割り当てられた値を、割り当てる。アップサンプリング・フィルタ542と補間フィルタ543は、それぞれ、アップサンプリング・フィルタ538と補間フィルタ539とほぼ同じである。
【0182】
合計544は、画像成分I0と、第2の2x2アップサンプリング・フィルタ542と補間フィルタ543によって生成される、復元された一組のピクセルに対応するカラー成分値とを加算する。合計544は、符号化工程500に供給される推定誤差110に対応する復元推定誤差110を与える。
【0183】
動きベクトルの変換符号化]
従来のビデオ圧縮符号化工程、例えば、MPEG-1やMPEG-2は、粗動きベクトル・フィールドのみを用いて、規則的な大きさと形を持つ、相当に大きなピクセル配列の動きを表わそうとする。動きベクトル・フィールドがであるというのは、例えば、16x16ピクセルの大きさを持つピクセル配列の動きを表わすのにたった一つの動きベクトルしか用いないからである。この粗動きベクトル・フィールドが、例えば、離散的コサイン変換(DCT)符号化法によって、元となる画像またはピクセルの縦列符号化と協働して、従来のビデオ圧縮符号化を実現する。
【0184】
それと対照的に、ビデオ圧縮符号化法64(図3A,図3B)は、密な動きベクトル・フィールドを用いる。この場合、動きベクトルは、オブジェクトの全ベクトルに対して、または、ほとんど全てのベクトルに対して求められる。このような密な動きベクトルは、対応するピクセル間の動きが表現される精度をかなり向上させる。このように改善された精度は、従来の粗動きベクトル・フィールド表現に伴う誤差をかなり減少させるが、密な動きベクトル・フィールドに含まれる情報増加は、ビデオシーケンスを表わす情報量の増加となる。従って、本発明によれば、細密ビデオ・フィールドそれ自体が圧縮され、符号化されているわけであり、それによって、本発明の与える圧縮比を向上させる。
【0185】
図21は、動きベクトル符号化工程の機能ブロック・ダイグラムであり、この工程は、動きベクトル・フィールド、できれば、図3A,図3Bの密な動き変換96に従って生成されるものと同様の密な動きベクトルであることが好ましいが、そのようなフィールドを符号化する、すなわち、圧縮するものである。ある選ばれたオブジェクトから得られるこのような密な動きベクトルは、通常、そのオブジェクトに相当する元となるピクセルよりも大きな連続性、または、「滑らかさ」を持っていることがわかるであろう。そのため、密な動きベクトル・フィールドの圧縮または符号化は、元のピクセルの圧縮または符号化よりも大きな圧縮比を実現することになる。
【0186】
機能ブロック562は、ある密な動きベクトル・フィールドが、あるオブジェクト、または、オブジェクトの一部分について、例えば、図3A,図3Bに関連して説明した機能ブロック96の工程に従って得られることを示す。従って、密な動きベクトル・フィールドは、任意の形または大きさのオブジェクトまたはその他の画像部分に一致する。
【0187】
機能ブロック564は、密な動きベクトル・フィールドの形状が、規則的な形状、好ましくは方形に外挿され、それによって、符号化または圧縮をやりやすくすることを示す。できれば、密な動きベクトル・フィールドの形状は、図17A図17Bに関連して上述した圧縮前外挿法400によって規則的な形に外挿されることが好ましい。あるいはまた、従来の外挿法、例えば、鏡像法を用いることができることがわかるであろう。
【0188】
機能ブロック566は、外挿された規則的な形を持つ密な動きベクトル・フィールドが、従来の符号化変換によって符号化、または、圧縮されることを示す。そのような従来の方法としては、例えば、離散的コサイン変換(DCT)または格子ウェーブレット圧縮があるが、この内前者が好ましい。
【0189】
機能ブロック568は、符号化された密な動きベクトル・フィールドが、エントロピー符号化のような、従来のロスレス静止画圧縮法によってさらに圧縮または符号化され、それによって符号化された密な動きベクトル・フィールド570を形成することを示す。このような静止画像圧縮法は、図3A,図3Bの機能ブロック114に関連して説明した。
【0190】
[前のビデオ・フレームからの量子化されたオブジェクトの圧縮]
図3A,図3Bを参照して説明すると、ビデオ圧縮符号化工程64は、直前フレームN-1に関して求められた量子化された直前オブジェクト98を用いて、次に続くフレームNの対応するオブジェクトを符号化する。従って、符号化工程64は、量子化された直前オブジェクト98が、アクセス可能なメモリー・バッファーの中に保存されていることを要求する。従来のビデオ表示解像度であれば、そのようなメモリー・バッファーは、一つのビデオ・フレームのために、その量子化直前オブジェクト98を保存するのに、少なくとも1メガバイトの容量を必要とする。高解像度の表示形式であれば、それに応じてさらに大きなメモリー・バッファーが要求される。
【0191】
図22は、量子化オブジェクト符号化・復号化(コーデック)工程600の機能ブロック・ダイアグラムである。この工程は、量子化された直前オブジェクト98を圧縮し、かつ、選択的に復元し、それによって、量子化オブジェクトメモリー・バッファーの必要容量の減少を実現する。
【0192】
機能ブロック602は、画像フレーム中の各量子化オブジェクト98が、離散的コサイン変換(DCT)符号化または格子サブバンド(ウェーブレット)圧縮のようなロッシー符号化または圧縮法によって、ブロックごとに符号化されることを示す。
【0193】
機能ブロック604は、符号化ないし圧縮量子化オブジェクトがメモリー・バッファー(図示せず)に保存されることを示す。
【0194】
機能ブロック606は、次に続くビデオ・フレームの対応するオブジェクトの処理を予想して、メモリー・バッファーから、符号化量子化オブジェクトが取り出されることを示す。
【0195】
機能ブロック608は、符号化量子化オブジェクトが、機能ブロック602に関連して採用された符号化法に従って、例えば、DCTまたはウェーブレット復号化によって、逆符号化されることを示す。
【0196】
コーデック工程600は、対応するメモリー・バッファーの容量が、全体のビデオ圧縮比と、得られるビデオの所望の画質に依存するのではあるが、最大80%まで減少するのを可能にする。さらに、コーデック工程600は、ビデオ圧縮符号化工程64に相当する復号化工程にも同様に適用可能であることがわかるであろう。
【0197】
[ビデオ圧縮復号化工程の概要]
図3A,図3Bのビデオ圧縮符号化工程64は、複数の画像フレームから成るビデオシーケンスに対応するビデオ信号の符号化または圧縮表現を与える。この圧縮表現は、オブジェクトマスク66、特徴点68、アフィン変換係数104、および、符号化工程64から得られる圧縮誤差データ116と符号化工程130から得られる圧縮マスタオブジェクト136とを含む。これらの圧縮表現は、ビデオ情報の保存あるいは伝送を促進し、MPEG-2のような従来のビデオ圧縮法で実現可能な圧縮比よりも最大300%優る圧縮比を実現することができる。
【0198】
しかしながら、このような圧縮ビデオ情報をデータ保存部から取り出すこと、または、そのようなビデオ情報の転送を受け取ることは、それが復号化され、復元され、それによって元のビデオ信号が再構成され、それによって、ビデオ・表示装置52(図2A図2B)のような表示装置によって表示されることが必要であることがわかるであろう。MPEG-1、MPEG-2およびH.26Xのような従来の符号化工程に見られるように、ビデオ情報の脱圧縮ないし復号化は、実質的に、元のビデオ信号が符号化または圧縮される工程の逆工程である。
【0199】
図23Aは、ビデオ圧縮復号化工程700の機能ブロック・ダイアグラムであるが、この工程は、図3A,図3Bのビデオ圧縮符号化工程64によって生成されるビデオ情報を復元するものである。符号化工程64の記述と一貫させるために、復号化工程700は、図2A図2Bを参照しながら説明する。復号化工程700は、メモリーから、または、転送されたものとして、符号化ビデオ情報を受け取る。この情報は、オブジェクトマスク66、特徴点68、圧縮マスタオブジェクト136、アフィン変換係数104、および、圧縮誤差データ166を含む。
【0200】
復号化工程700は、符号化工程64(図3A,図3B)の操作の逆の操作を実行する。したがって、復号化工程を備えた符号化工程64の、前述の好ましい操作のそれぞれも、同様に逆転される。
【0201】
機能ブロック702は、マスク66、特徴点68、変換係数104、および、圧縮誤差データ116がメモリーから取り出され、または、転送物として受け取られ、それによって、復号化工程700による処理が可能になることを示す。
【0202】
図23Bは、マスタオブジェクト復号化工程704の機能ブロック・ダイアグラムであるが、この工程は、圧縮されたマスタオブジェクト136を復号または復元する。機能ブロック706は、圧縮化されたマスタオブジェクトデータ136が、図3Bの機能ブロック134の、従来のロスレス・エントロピー符号化法を逆行することによって、エントロピー復号化されることを示す。機能ブロック708は、機能ブロック706においてエントロピー復号化されたマスタオブジェクトが、図3Bの機能ブロック132で用いられた、従来のロッシーウェーブレット符号化工程を逆行することによって復号化されることを示す。
【0203】
機能ブロック712は、密な動き変換、できれば、多次元アフィン変換であることが好ましいが、それがアフィン係数104から生成されることを示す。できれば、アフィン係数104は、変換法350(図12)に従って量子化されることが好ましく、かつ、アフィン変換は、機能ブロック362(図12)に関連して上述した操作の逆行を実行することによって、その量子化アフィン係数から生成されることが好ましい。
【0204】
機能ブロック714は、タイミング遅延を介して与えられた、直前フレームN-1のオブジェクト716の量子化された形(例えば、画像フレーム54aの直方体56a)が、密な動き変換によって変換され、それによって、現在フレームNのオブジェクト720の予想形(例えば、画像フレーム54bの直方体50b)を与えることを示す。
【0205】
機能ブロック722は、画像フレームNについて、予想現在オブジェクト720が、圧縮誤差データ116から生成された量子化誤差724に加算されることを示す。特に、機能ブロック726は、圧縮誤差データ116が、圧縮工程114(図3A)の逆工程によって復号化されることを示す。好ましい実施態様においては、機能ブロック114と726は、エントロピー符号化法のような、従来のロスレス静止画像圧縮法に基づいて実行される。
【0206】
機能ブロック728は、機能ブロック726で得られたエントロピー復号化誤差データが、機能ブロック112(図3A)で使用されるものに一致する、従来のロッシー静止画像圧縮法によってさらに復元またはないし、復号化されることを示す。好ましい実施態様においては、機能ブロック728の復元または復号化は、格子サブバンド(ウェーブレット)工程、または、離散的コサイン変換(DCT)工程によって実行される。
【0207】
機能ブロック722は、フレームNの量子化オブジェクト730を、予想オブジェクト720と量子化誤差724との和として与える。これは、再構成または復元されたオブジェクト723を表わし、このオブジェクトは、後続のフレームのオブジェクト再構成のために機能ブロック718に配送される。
【0208】
機能ブロック734は、量子化されたオブジェクト732が、現在画像フレームNの他のオブジェクトと組み合わされて、復元ビデオ信号を形成することを示す。
【0209】
[簡略化チェーン符号化法]
マスク、オブジェクト、スプライト、および、その他のグラッフィク性特徴は、通常、その輪郭で表現される。図5Aに関連して図示し、説明したように、例えば、直方体56aは、オブジェクト周縁または輪郭142によって区画される。輪郭を符号化または圧縮するための従来の工程は、チェーン符号化法と呼ばれる。
【0210】
図24Aは、従来の8点チェーンコード800を示す。すなわち、このコードに基づいて、従来の方形ピクセル配列上の輪郭が定義される。現在ピクセル位置Xに基づいて、輪郭における、次に続くピクセル位置が方向802a〜802hの内の一つに沿って延びる。直後ピクセルのチェーンコード値は、特定方向802に一致する数値である。例を挙げると、右、水平方向802aはチェーンコード値0に相当し、下向き、垂直方向802gはチェーンコード値6に相当する。どのような連続輪郭であれ、8点チェーンコード800によって記述することができる。
【0211】
図24Bを参照しながら説明すると、XおよびA〜Gと名づけられる、ピクセル806によって表わされる輪郭804は、従来の方法では、チェーンコード{00764432}で符号化される。特に、ピクセルXから始めると、ピクセルAとBは、ピクセルXとAに対して、方向0に位置づけられる。ピクセルCは、ピクセルBに対して方向7に位置づけられる。残りのピクセルD〜Gも同様に、上述のチェーンコードに一致する方向に位置づけられる。2進表現では、従来の、各チェーンコード値は、3個のディジタル・ビットで表わされる。
【0212】
図25Aは、本発明のチェーンコード工程810の機能ブロック・ダイグラムであるが、この工程は、従来のチェーンコード工程のものの少なくとも約2倍の圧縮比を与えることができる。チェーンコード工程810は、このように高い圧縮比を、チェーンコードの数を制限することによって、また、隣接ペア・ピクセルの一致軸に対してチェーンコードを定義することによって、実現する。実験によると、チェーンコード工程810のチェーンコードは、制限されてはいるものの、オブジェクトまたはマスク輪郭のピクセル軸99.8%以上を表わすことが判明した。特殊ケース・チェーンコード修正を設けることによって、後述するように、ピクセル軸の、残りの0.2%未満を収容することができる。
【0213】
機能ブロック816は、あるマスク、オブジェクト、または、スプライトに対して輪郭が得られることを示す。輪郭は、例えば、図4図5A,図5Bに関連して上述したオブジェクトセグメント化工程140によって得るkとができる。
【0214】
機能ブロック818は、輪郭の初期ピクセルが特定されることを示す。初期ピクセルは、通常の方法、例えば、最小のX軸座標値、Y軸座標値を持つピクセルをもって特定することができる。
【0215】
機能ブロック820は、あらかじめ定められたチェーンコードが、初期ピクセルと、輪郭において次に隣接するピクセルとの間の関係を表わすように割り当てられることを示す。あらかじめ定められたチェーンコードは、前進方向に一致するように定義されることが好ましい。
【0216】
図25Bは、本発明の3点チェーンコード822を示す模式図である。チェーンコード822は、3個のチェーンコード824a、824b、および824cを含む。これら3個のチェーンコードは、それぞれ、前進方向826a、左方向826b、および、右方向826cに一致する。方向826a〜826cは、現在ピクセル830と、このチェーンコードにおいて直前ピクセルを表わす隣接ピクセル832との間の、直前同軸方向828に対して定義される。
【0217】
直前同軸方向828は、図24Aに示す方向802のいずれに沿って延びることもできるが、説明の都合上、特定方向(すなわち、右、水平)を持つものとして示される。方向826aは、したがって、方向828と同じである。方向826bと826cは、方向828から、1ピクセル左、および、右変位分だけ異なる。
【0218】
チェーンコード824の50%をわずかに上回る分が、前進方向826aに一致し、チェーンコード824の25%をわずかに下回る分が、方向826bおよび826cのそれぞれに一致することが、実験的に求められた。
【0219】
機能ブロック836は、輪郭において次に隣接するピクセルが、方向826の内の一つに一致するかどうかを尋ねる照会を示す。輪郭において次に隣接するピクセルが、方向826の内の一つに一致する場合には必ず、機能ブロック836は、機能ブロック838に進み、それ以外の場合には機能ブロック840に進む。
【0220】
機能ブロック838は、次に隣接するピクセルに、直前隣接ピクセル・ペアの揃う軸に沿った方向828にたいする、そのものの方向826に相当するチェーンコード824が割り当てられることを示す。
【0221】
機能ブロック840は、方向826の一つに一致するピクセル配列を、現実には一致しなかったピクセル配列の代用とされることを示す。実験によれば、このような代用は、通常、輪郭のピクセル配列の0.2%未満に起こるが、6個の特殊ケース変更の内の一つを用いることによって収容できることが定められた。
【0222】
図25Cは、6個の特殊ケース修正842の模式図であるが、この変更は、非一致性ピクセル配列を、方向826に一致するピクセル配列に変換するものである。各変更842の内部において、ピクセル配列844は、ピクセル配列846に変換される。それぞれの隣接ピクセルX1、X2、A、Bのピクセル配列844の各々において、ピクセルA、B間の方向は、方向826の一つと一致しない。それは、ピクセルX1とX2の軸に対するピクセルAの軸の相対的位置のためである。
【0223】
ピクセル配列844aにおいて、初期ピクセル軸850aと852aは、非一致的な直角方向変化を表わす。したがって、ピクセル配列846aにおいては、ピクセル配列844aのピクセルAが除去される。これによって、ピクセル方向854aが得られ、これはピクセル方向826aに一致する。ピクセル配列修正842b〜842fも同様に非一致性ピクセル配列844b〜844fを、それぞれ一致性配列846b〜846fに変換する。
【0224】
ピクセル配列変更842は、直前隣接ピクセルX1およびX2の軸に対して90°以上変化するピクセル方向軸をもたらすピクセルを除外する。一つの効果は、直角を表わす輪郭の最小曲率半径を、3ピクセルまで増すことである。したがって、ピクセル変更842は、極めて微妙な輪郭細部の最小の損失を招く。しかしながら、本発明によれば、このような細部の損失は、大抵の視認条件では受け容れ可能なものであることが定められた。
【0225】
機能ブロック862は、機能ブロック840によって導入された、または、生起された非一致性ピクセル軸方向が除去されることを示す。ある好ましい実施態様では、非一致性方向変化は簡単に次のようにして除去される。すなわち、機能ブロック816に戻り、工程810を繰り返し、これを、非一致性ピクセル配列が見られなくなるまで続ける。これは通常、8回未満の繰り返しで実現される。また、別の実施態様では、このような生起された非一致性方向は次のようにして「リアルタイム」で修正される。すなわち、非一致性方向変化が変更される度ごとに、何か生起された非一致性方向変化がないかどうかをチェックし、あれば修正する。
【0226】
機能ブロック864は、ハフマン・コードが、このようにして得られた簡略化化チェーンコードから生成されることを示す。方向826a〜826cは、ある輪郭において、それぞれ約50%、25%、および、25%のピクセルに起こるのであるが、この方向に一致するチェーンコード824a〜824cに関しては、それぞれ0、11、および、10のハフマン・コードが割り当てられる。このような一次ハフマン・コードによって、チェーン工程810は、輪郭のピクセル当たり1.5ビット未満のビット速度で輪郭を表わすことが可能となる。このようなビット速度は、従来のチェーンコード工程に対し、ほぼ50%の圧縮比改善となる。
【0227】
さらに高次のハフマン・コードを用いることによって、さらに高い圧縮比が得られることがわかるであろう。さらに高次のハフマン・コードとは、例えば、第1次のハフマン・コードのあらかじめ選ばれた配列に対して、あらかじめ定められた値を割り当てることを含む。
【0228】
[スプライト生成]
本発明は、確定動画ビデオ(映画)を符号化するのに関連して用いられるスプライトの生成を含む。ビットマップは寄せ集められたビットマップ・シリーズを形成するが、これは、ある画像ソースから発する連続画像の、複数の連続ビットマップを含む。寄せ集めは、オブジェクトすなわち人物が、互いに相対的に動く場合、または、ある人物が、同様の他の人物を、ちょうど前景人物が背景を閉塞するような具合に閉塞する場合、そのようなときの閉塞ピクセルの問題を克服するために使用される。例えば、前景人物が移動し、何かの新しい背景を露呈する場合、次のことがなされない限り、この新しい背景を、以前のビットマップから構築することはできない。すなわち、後続のビットマップにおいて露呈される予定のピクセルを、先行ビットマップに含めることによって、まずその先行ビットマップを強調しておくことである。この方法は、人物の不完全な画像を捕らえ、その人物に属してはいるが、直接には見ることのできないピクセルについて、それをいつか見る時がくるかも知れないと予測する。このようなピクセルを用いて、その人物に対する複合ビットマップを生成する。この複合ビットマップがあれば、その人物の将来のどのような外観も、その複合ビットマップを変形することによって生成することができる。
【0229】
符号化工程は、オペレーターが、人物と、現在ビットマップ・シリーズにおいて、現在ビットマップの内の、その人物の部分とを特定することから始まる。特徴または変形点は、人物の部分が動き回る部分の特徴の上に、オペレーターによって選択される。三角形から成る現在グリッドが、現在ビットマップの部分に重ねられる。三角形の現在グリッドを構成する三角形は、隣接変形点を結んで形成される。現在ビットマップにおける各三角形の現在位置が求められ、記憶装置に保存される。
【0230】
各三角形の現在位置内にある第1画像を定義する現在ビットマップのデータの一部は、将来の使用に備えて保持される。
【0231】
現在のビットマップ列の第2イメージを定義する後続ビットマップはイメージ源から受け、図形および図形の部分はオペレーターにより識別される。次に、現在のビットマップからの三角形の現在のグリッドが、後続ビットマップ上に重畳される。三角形の現在のグリッドの歪曲点は、後続ビットマップの対応図形の特徴と一致する様に再整列される。再整列された歪曲点は、第2イメージの後続ビットマップ上に三角形の後続グリッドを形成する。後続ビットマップ上の各三角形の後続位置が決定されると共に記憶装置に記憶される。各三角形の後続位置内で第2イメージを定義する後続ビットマップのデータの部分は、更なる使用の為に保持される。
【0232】
各三角形の現在位置および後続位置を決定且つ記憶するプロセスは現在のビットマップ列の複数のシーケンシャル・ビットマップに対して反復される。このプロセスが完了したとき、現在のビットマップ列における各三角形の平均イメージは別個に保持されたデータから決定される。各三角形の平均イメージは記憶装置に記憶される。
【0233】
再生の間、現在のビットマップ列の各三角形の平均イメージおよび現在のビットマップの各三角形の現在位置は記憶装置から取り出される。予測ビットマップが生成されるが、これは、現在のビットマップ列内の各三角形の平均イメージを現在のビットマップの各三角形の現在位置に変換する変換解を計算すると共に、変換解を各三角形の平均イメージに適用することで行われる。予測ビットマップは、表示の為にモニタに引渡される。
【0234】
再生時には制御プログラムによりイメージが決定されるという再生確定動画ビデオ(ビデオゲーム)に関し、スプライト・ビットマップはその全体が記憶装置に記憶される。スプライト・ビットマップは、スプライト・イメージを定義する複数のデータ・ビットから成る。スプライト・ビットマップはモニタ上に表示され、スプライトの各部分はオペレーターにより識別されると共に歪曲点がスプライトの各部分に対して選択される。
【0235】
三角形のグリッドは、スプライト・ビットマップの各部分上に重畳される。グリッドを構成する三角形は、隣接する歪曲点を接続することにより形成される。歪曲点は三角形の各頂点である。スプライト・ビットマップの各三角形の位置が決定されて記憶装置に記憶される。
【0236】
再生の間、各三角形の後続位置は制御プログラムから受け取る。スプライト・ビットマップと、スプライト・ビットマップ上の各三角形の後続位置は、記憶装置から呼び出されて表示プロセッサーに引渡される。各三角形の後続位置もまた、表示プロセッサーに引渡される。
【0237】
スプライト・ビットマップ上の各三角形に対しては、変換解が計算される。次に表示プロセッサー内に後続ビットマップが生成されるが、これは、各三角形の位置内のスプライト・イメージを定義する、スプライト・ビットマップから導かれた各三角形の変換解を適用することにより行われる。ディスプレイ・プロセッサーは、後続スプライト・ビットマップをモニタに引渡して表示させる。このプロセスは、制御プログラムにより要求された各三角形の後続位置の各々に対して反復される。
【0238】
図26に示されるように、動画ビデオに対する符号化処理は、イメージ源から現在のビットマップ列を受けるCPU22によりステップ900にて開始される。現在のビットマップ列は、シーケンシャル・イメージの複数のシーケンシャル・ビットマップから成る。また、現在のビットマップ列は、イメージ源からの第1イメージを定義する複数のデータ・ビットからなる現在のビットマップを有する。第1イメージは、少なくとも1個の部分を有する少なくとも1個の図形を備えて成る。
【0239】
ステップ902に進み、第1イメージはモニタ28上でオペレーターに対して表示される。モニタ28から、現在のビットマップ上の第1イメージの図形がオペレーターにより識別される。現在のビットマップ上の図形の各部分は次にステップ904にてオペレーターにより識別される。
【0240】
次にステップ906にて、オペレーターは現在のビットマップ上の特徴点もしくは歪曲点を選択する。歪曲点は、部分の相対的な動きが生じ得るところのビットマップ上の特徴と歪曲点が一致するように選択される。当業者であれば、図形、図形の各部分およびビットマップ上の歪曲点はコンピュータシステム20もしくはその助けを借りて識別され得ることを理解し得よう。しかしながら、図形、図形の各部分およびビットマップ上の歪曲点をオペレーターが識別すれば好適である。
【0241】
ステップ908に進むと、三角形の現在のグリッドがコンピュータシステム20により、現在のビットマップの各部分に重畳される。図27Aを参照すると、現在のグリッドは、隣接歪曲点を接続して形成された三角形から成っている。歪曲点は三角形の頂点を形成する。より詳細に述べると、現在のビットマップの第1イメージは、人物970である図形から成る。人物970は、頭972、胴体974、右腕976、左腕978、右足980および左足982に対応する6個の部分を有している。歪曲点は人物970に各部分に対して選択され、従って、歪曲点は、部分の相対的な動きが生じ得るところの特徴に一致する。各部分上にて、現在のグリッドには、隣接歪曲点を接続することにより形成された現在のグリッドの各々の三角形が重畳される。従って、歪曲点は三角形の頂点を形成する。
【0242】
ステップ910にては、コンピュータシステム20が、現在のビットマップ上の各三角形の現在位置を決定する。現在のビットマップ上の各三角形の現在位置は、三角形の頂点を形成する歪曲点の位置により定義される。ステップ912においては、各三角形の現在位置が記憶装置に記憶される。各三角形の現在位置内の第1イメージを定義する現在のビットマップから導出されたデータの部分は、ステップ914にて保持される。
【0243】
次に、ステップ916にては、現在のビットマップ列の後続ビットマップがCPU22により受け取られる。後続ビットマップは、現在のビットマップ列の第2イメージを定義する複数のデータ・ビットから成る。第2イメージは、第1イメージ内の図形に対応する図形を含むこともあり含まないこともある。但し、次のステップに対しては、第1イメージ内の図形に対応する図形を第2イメージが有しているものと仮定する。ステップ918にては、三角形の現在のグリッドが後続ビットマップ上に重畳される。重畳された三角形状グリッドを備えた第2イメージは、モニタ28上でオペレーターに対して表示される。
【0244】
ステップ920にて、歪曲点は、コンピュータシステム20の助けを借りたオペレーターにより、後続ビットマップ上の対応特徴と一致するように再整列される。コンピュータシステム20は、ブロック整合を用いて歪曲点を再整列する。誤りがあれば、オペレーターにより訂正される。図27Bを参照すると、再整列された歪曲点は、三角形の後続グリッドを形成する。再整列された歪曲点は、三角形の頂点である。より詳細に述べると、人物970の後続ビットマップの第2イメージは、頭972、胴体974、右腕976、左腕978、右足980および左足982を含んでいる。但し、第2イメージにおいては右腕976が上がっている。第1イメージの現在のグリッドは、各部分に重畳されると共に、それらの歪曲点は、第2イメージ上の対応特徴に一致すべく再整列されている。再整列された歪曲点は、三角形の後続グリッドを定義する。後続グリッドは、再整列された歪曲点を接続して形成された三角形から成る。故に、再整列された歪曲点は、後続グリッドの三角形の頂点を形成する。
【0245】
ステップ922に進むと、後続ビットマップの各三角形の後続位置がコンピュータシステム20により決定される。ステップ924では、後続ビットマップ上の各三角形の後続位置が記憶装置に記憶される。各三角形の後続位置内の第2イメージを定義する、後続ビットマップから導出されたデータの部分は、ステップ926で保持される。ステップ926は、次の後続ビットマップが存在するか否かを決定する判断ステップ928に続いている。
【0246】
もし次の後続ビットマップが存在すれば、判断ステップ928のYES分岐は、後続ビットマップが現在のビットマップになるステップ930に繋がる。ステップ930は、現在のビットマップ列の後続ビットマップがCPU22により受け取られるステップ916に戻る。もし次の後続ビットマップが存在しなければ、判断ステップ928のNO分岐は、現在のビットマップ列の各三角形に対する平均イメージが決定されるステップ932に進む。平均イメージは、三角形の各ピクセルの中央値である。平均イメージを使用することにより、プロセスの劣化が生じにくくなる。ステップ934に進み、現在のビットマップ列の各三角形の平均イメージは記憶装置に記億される。
【0247】
次に、ステップ936にては、現在のビットマップ上の各三角形の現在位置が記憶装置から取り出される。次に、ステップ938にて、各三角形の平均イメージを現在のビットマップ上の三角形の現在位置に変換する為のアファイン変換解がコンピュータシステム20により計算される。ステップ940にては、各三角形の平均イメージの変換解を、現在のビットマップ上の各三角形の現在位置に適用することにより、予測ビットマップが生成される。ステップ942にて、予測ビットマップは現在のビットマップと比較される。
【0248】
ステップ944にては、修正ビットマップが生成される。修正ビットマップは、予測ビットマップにより正確に予測されなかった現在のビットマップのデータ・ビットから成る。修正ビットマップはステップ948にて記憶装置に記憶される。ステップ948は、後続ビットマップが存在するか否かを決定する判断ステップ950に進む。
【0249】
もし後続ビットマップが存在すれば、判断ステップ950のYES分岐は、後続ビットマップが現在のビットマップになるステップ952に行く。ステップ952は、現在のビットマップ上の各三角形の現在位置が記憶装置から取り出されるステップ936に戻る。もし次の後続ビットマップが存在しなければ、判断ステップ950のNO分岐は、後続ビットマップ列が存在するか否かを決定する判断ステップ954に行く。もし後続ビットマップ列が存在しなければ、符号化は終了すると共に判断ステップ954のNO分岐はステップ956に行く。もし後続ビットマップ列が存在すれば、判断ステップ954のYES分岐は、後続ビットマップ列を現在のビットマップ列としてCPU22が受け取るステップ958に行く。ステップ956は、現在のビットマップ列の第1イメージの図形がオペレーターにより識別されるステップ902に戻る。
【0250】
図26のプロセスは、図3A,図3Bのエンコーダプロセス64により使用されるスプライト・オブジェクトもしくはマスタオブジェクト90の生成法を記述している。マスタオブジェクト90を利用して予測オブジェクト102を形成するプロセスは、図28を参照して記述する。
【0251】
図28に示される様に、現在のビットマップ列を検索することにより処理はステップ1000から開始される。現在のビットマップ列はシーケンシャル・イメージの複数のシーケンシャル・ビットマップから成る。現在のビットマップ列は、イメージ源から第1イメージを定義する複数のデータ・ビットから成る現在のビットマップを有する。第1イメージは、少なくとも1個の部分を有する少なくとも1個の図形から成る。
【0252】
ステップ1002において、現在のビットマップ列の各三角形の平均イメージは記憶装置から取り出される。各三角形の平均イメージは次にステップ1004にて(不図示の)表示プロセッサーに引渡される。(図1の)コンピュータシステム20が、本発明のプロセスを実行する為の表示プロセッサーもしくは他の専用要素を選択的に含み得ることは理解される。ステップ1006に進み、現在のビットマップ上の各三角形の現在位置が記憶装置から取り出される。各三角形の現在位置はステップ1008でディスプレイ・プロセッサーに引渡される。
【0253】
次に、各三角形の平均イメージを、現在のビットマップ上の各三角形の現在位置に変換する為のアファイン変換解がステップ1010で表示プロセッサーにより計算される。ステップ1012に進み、表示プロセッサーにより予測ビットマップが生成されるが、これは、各三角形の平均イメージを、現在のビットマップ上の各三角形の現在位置に変換する為の変換解を適用することで行われる。
【0254】
ステップ1014にて、現在のビットマップに対する修正ビットマップが記憶装置から取り出される。修正ビットマップは、ステップ1016にてディスプレイ・プロセッサーに引渡される。次に、予測ビットマップに修正ビットマップを重ねることにより、表示プロセッサー内で表示用ビットマップが生成される。表示プロセッサーは、各三角形の平均イメージのコピーを保持すると共に、モニタ上の表示の為にフレームバッファに表示用ビットマップを引渡す。
【0255】
次に、判断ステップ1020にて、現在のビットマップ列の後続ビットマップが存在するか否かが決定される。もし現在のビットマップ列の後続ビットマップが存在すれば、判断ステップ1020のYES分岐はステップ1022に行く。ステップ1022にて、後続ビットマップは現在のビットマップとなる。ステップ1022では、現在のビットマップの各三角形の位置が記憶装置から取り出される。
【0256】
判断ステップ1020に戻り、もし現在のビットマップ列の後続ビットマップが存在しなければ、判断ステップ1020のNO分岐は判断ステップ1024に行く。判断ステップ1024にては、後続ビットマップ列が存在するか否かが決定される。もし後続ビットマップ列が存在しなければ、プロセスは終了すると共に、判断ステップ1024のNO分岐はステップ1026に行く。もし後続ビットマップ列が存在すれば、判断ステップ1024のYES分岐はステップ1028に行く。ステップ1028にては、後続ビットマップ列は現在のビットマップ列になる。ステップ1028はステップ1000に戻る。
【0257】
[スプライト符号化]
図29は、各々、図3Aおよび図23Aを参照して説明したビデオ圧縮符号化工程64およびビデオ圧縮復号化工程700と関連して使用するのに好適な簡略化した圧縮方法1100の機能ブロック・ダイアグラムである。簡略化したオブジェクト圧縮方法1100は、以下に詳細に説明するように、オブジェクトが最初に現れた時からビデオシーケンスを通じて完全に規定される、スプライト規定オブジェクトの圧縮ビデオ表現の符号化および復号化に向けられている。
【0258】
簡略化した圧縮方法1100と、符号化工程64と、復号化工程700とを、好適には、少なくとも1つのスプライト規定オブジェクトと、ビデオシーケンスにおけるその最初の出現から完全には規定されない少なくとも1つの一般的なビデオオブジェクトとを含む一般的なビデオシーケンスに用いる。一般的なビデオオブジェクト、または一般的なビデオシーケンスのオブジェクトを、好適には、上述した符号化工程64および復号化工程700によって処理する。
【0259】
スプライト規定オブジェクトは、一般的なビデオシーケンスにおける一般的なオブジェクトのサブセットであり、これらが最初にビデオシーケンスにおいて現れた時に、他のオブジェクトよりも多くの利用可能な情報を有する。簡略化した圧縮方法1100は、スプライト規定オブジェクトに利用可能な追加の情報を、追加の情報が符号化工程64および復号化工程700によって利用されるよりも効率的に利用することを可能にする。結果として、簡略化した方法1100によるスプライト規定オブジェクトまたは一般的なビデオシーケンスにおけるオブジェクトの処理は、一般的なビデオ情報の保存または伝送に関するビットレート条件および効率をさらに改善することができる。
【0260】
スプライト規定オブジェクトは、その最初の出現時に、「スプライト」および1つ以上の軌跡によってビデオシーケンスを通じて完全に規定される。スプライトは、ビデオシーケンスを通じてのオブジェクトのすべての画像特徴を含み、1つ以上の軌跡は、スプライトをワーピングまたは変換し、ビデオシーケンスの各フレームにおいてオブジェクトを表わす。いくつかの用途において、オブジェクトをさらに、ビデオシーケンスにおけるオブジェクトの最初の出現時に知られる照明または透明要因(lighting or transparency factors)によって規定または変更する。スプライト規定オブジェクトは、例えば、ビデオ会議、または、コンピュータ生成グラフィックス用途において頻繁に生じる。簡略化した圧縮方法1100は、例えば、一般的なビデオ圧縮、マルチメディア用途、ディジタルビデオアーカイビング、ネットワークまたはインターネット閲覧、およびビデオ伝送に対しても利用可能である。
【0261】
図29において、工程ブロック1102は、一般的なビデオシーケンスにおける多数のオブジェクトの各々に関係するオブジェクト情報が、例えば、ビデオ圧縮符号化工程64(図3A)の機能ブロック66〜96にしたがって得られることを示す。ビデオシーケンスにおけるオブジェクトの少なくとも1つは、スプライト規定オブジェクトであり、このオブジェクトに関して、ビデオシーケンスに必要なすべてのオブジェクト情報が、ビデオシーケンスの開始時において利用可能すなわち「既知」である。スプライト規定オブジェクトに関するオブジェクト情報は、ビデオシーケンスを通じてのオブジェクトのすべての画像特徴を含み、1つ以上の軌跡は、スプライトをワーピングまたは変換し、ビデオシーケンスの各フレームにおいてオブジェクトを表わす。ビデオシーケンスは、スプライト発生オブジェクトではない少なくとも1つの一般的なビデオオブジェクトを含む、または、含むことができるという点で一般的である。
【0262】
コンピュータ生成グラフィックスに関して、例えば、オブジェクトは、ビデオシーケンスの開始時、または、オブジェクトが最初にこのビデオシーケンスにおいて現れたときに利用可能な、スプライト(または数学的に規定されたオブジェクトモデル)および軌跡によって、一般に表わされる。しばしば変換情報と呼ばれる軌跡は、オブジェクトをビデオシーケンスを通じて発生するために利用され、したがって有用である。変換情報を、多次元アフィン変換または透視変換の形態のものとすることができる。図12に示す変換方法350を参照して説明したように、アフィン変換を好適には、
x’=ax+by+c
x’=dx+ey+f
のように表わす。代わりに、変換情報を、好適には、例えば、1990年、IEEEにおけるジョージ・ウォルバーグによるディジタル画像ワーピングに記載されているように、
x’=(ax+by+c)\(gx+hy+1)
y’=(dx+ey+f)\(gx+hy+1)
として表わされる透視変換の形態におけるものとすることもできる。
【0263】
図26のスプライト発生または符号化工程(例えば、工程936)を参照して説明したように、一般に多くのスプライトまたはオブジェクトは、1つのアフィン変換と、したがって2つ以上の軌跡とによって表わされる。この例における変換(アフィンまたは投影)または軌跡に対する簡略化した圧縮方法1100のこの説明における関係は、単に説明的なものであり、この方法の制限を意味するものではないことは理解されるであろう。
【0264】
ビデオ会議用途に関して、例えば、このビデオ会議場面の背景に対応するオブジェクトを、背景スプライト描画期間中に単独で背景を描画することによって得られるスプライト規定オブジェクトとして形成することができる。この例における変換情報は、オブジェクトをビデオ場面を通じて静止状態において保持する同一性変換である。このような用途において、背景オブジェクトの表現の簡略化は、ビデオシーケンスまたは会議を伝送するのに必要なバンド幅を大幅に減らすことができる。
【0265】
これらの2つの例は、単に説明的なものであり、スプライトの形式または用途における制限ではないことは理解されるであろう。一例として、簡単な翻訳によって変換されるコンピュータ生成グラフィック背景を、他のコンピュータ生成グラフィックスオブジェクトかビデオグラフィックオブジェクトと共に利用することができる。
【0266】
工程ブロック1104は、スプライト規定オブジェクトが、一般的なビデオシーケンスにおける多数のオブジェクトの各々に関係するオブジェクト情報において一般的なオブジェクトから識別されることを示している。スプライト規定オブジェクトを、簡略化した圧縮工程1100の次の処理工程にしたがって処理する。一般的なオブジェクトを、好適には、各々図3Aおよび図23Aの符号化工程64および復号化工程700にしたがって処理する。スプライト規定オブジェクトを、例えば、これらが形成されるときにラベル付けすることによって識別してもよい。
【0267】
ビデオ会議用途に関して、例えば、このビデオ会議場面の背景に対応するオブジェクトを、背景スプライト描画期間中に単独で背景を描画することによって得られるスプライト規定オブジェクトとして形成することができる。他の例として、コンピュータ生成グラフィックスオブジェクトを、代表的に、データまたはアルゴリズムによって完全に発生し、代表的に、スプライト規定オブジェクトとする。一般的な動画ビデオ場面において、符号化オペレーターは、いくつかのオブジェクトに、スプライト規定であるとして手動でラベル付けすることができる。
【0268】
工程ブロック1106は、スプライト情報および変換情報を、簡略化した符号化工程によって符号化することを示す。好適には、スプライト情報を、上述したように、ウェーブレットまたはDCT符号化のような従来のロッシー符号化工程によって記録する。スプライト規定オブジェクトを、(ビデオシーケンスにおけるオブジェクトの最初の出現時に既知の)照明または透過要因のような追加の要因によってさらに規定または変更するときはいつも、追加の要因も、スプライトと同じように符号化する。スプライトおよび追加の要因の符号化は、例えば、圧縮前外挿法400(図17Aおよび図17B)の適用をさらに含み、圧縮または符号化を高めてもよい。
【0269】
軌跡または変換情報を、軌跡として表わし、好適には、ウィリアムB.ペネバッカー(William B.Pennebaker)およびジャンL.ミッチェル(Joan L.Mitchel)による「JPEG:静止画像データ圧縮標準」ヴァンノストランドレインホルド(Van Nostrand Reinhold)、ニューヨーク、1993年に記載されているような、QM符号化のようなロスレス符号化技術によって符号化または圧縮する。ハフマン符号化のような他のロスレス符号化技術も好適であることは理解されるであろう。
【0270】
説明の目的のために、以下の説明をQM符号化に対して行う。
【0271】
スプライトにおける特徴点の位置を、各々の軌跡の基礎として設定する。各々の軌跡のxおよびy成分を、QM符号化を行う前に、差別的に符号化すると共に連結し、スプライトにおける特徴点または画素の座標と、スプライトにおける特徴点または画素の座標および後続の画像フレームにおける対応するオブジェクトの対応する特徴点または画素の座標間の座標差とを有する表現またはビットストリームを形成する。数Tの画像フレームと、
(xi (j),yi (j)),i=1,...,T,j=1,...,Nとして表わされる特徴点位置に対する数Nの軌跡を有するスプライトとを有するビデオシーケンスに関して、好適にはQM符号化された値は、
x1 (1),Δx2 (1),...,ΔxT (1),y1 (1),Δy2 (1),...,ΔyT (1),
x1 (1),Δx2 (1),...,ΔxT (1),y1 (1),Δy2 (1),...,ΔyT (1),
x1 (N),Δx2 (N),...,ΔxT (N),y1 (N),Δy2 (N),...,ΔyT (N)
である。
【0272】
工程ブロック1108は、符号化スプライト生成オブジェクトを、マルチメディア用途と、ディジタルビデオアーカイビングと、ネットワークまたはインターネット閲覧と、ビデオ伝送とを含む、符号化または圧縮化ディジタル情報の代表的な使用にしたがって、保存または伝送と、取出しまたは受信とを行うことを示す。
【0273】
工程ブロック1110は、記憶装置から取り出された、または伝送を経て受信された、符号化スプライト生成オブジェクトを復号化することを示す。符号化軌跡をQM復号化し、スプライトを、これが符号化されているフォーマット(例えば、DCT)にしたがって復号化する。
【0274】
本発明の原理を好適実施例に関して図示すると共に説明したが、当業者であれば、このような原理から逸脱することなく実施例の配置構成および詳細を改変し得ることは自明であろう。従って、本出願人は、本願の特許請求の範囲およびその均等物の範囲および趣旨の範囲内に収まる全ての実施例に対して権利を主張するものである。
【図面の簡単な説明】
【0275】
【図1】本発明の方法および装置を実施するのに用いられるコンピュータ装置のブロック・ダイアグラムである。
【図2A】ビデオ表示装置の表示画面の模式図であって、ビデオ信号に対応する、二つの連続する画像フレームを示す。
【図2B】ビデオ表示装置の表示画面の模式図であって、ビデオ信号に対応する、二つの連続する画像フレームを示す。
【図3A】ビデオ圧縮符号化方法の総合機能ブロック・ダイグラムであり、この方法によって、複数画像フレームから成るビデオシーケンスにおいて表示の動きを表わすディジタル化ビデオ信号を圧縮する。
【図3B】本発明によるマスタオブジェクト符号化方法の機能ブロック・ダイグラムである。
【図4】ビデオシーケンスのある画像フレームにおける選ばれたオブジェクトをセグメント化するための、オブジェクトセグメント工程の機能ブロック・ダイアグラムである。
【図5A】図2Aのビデオ表示装置の表示画面の模式図である。
【図5B】図5Aの表示画面の一部の拡大表示である。
【図6】連続する画像フレームの対応オブジェクトにおける、対応するピクセル・ペアに対する動きベクトルを求める、多角形マッチング方法を示す機能ブロック・ダイアグラムである。
【図7A】二つの対応するオブジェクトを含む、二つの連続する画像フレームを示す表示画面の模式図である。
【図7B】二つの対応するオブジェクトを含む、二つの連続する画像フレームを示す表示画面の模式図である。
【図8】インタラクティブピクセル・ブロック相関工程の機能ブロック・ダイアグラムである。
【図9A】異なる画像フレームにおいて、対応するピクセルを特定するために使用される第1ピクセル・ブロックの模式図である。
【図9B】対応ピクセルが探索される前の画像フレームにおける探索域に対応するピクセル配列の模式図である。
【図9C】対応ピクセルを特定するために、図9Bのピクセル配列において走査される第1ピクセル・ブロックの模式図である。
【図9D】対応ピクセルを特定するために、図9Bのピクセル配列において走査される第1ピクセル・ブロックの模式図である。
【図9E】対応ピクセルを特定するために、図9Bのピクセル配列において走査される第1ピクセル・ブロックの模式図である。
【図9F】対応ピクセルを特定するために、図9Bのピクセル配列において走査される第1ピクセル・ブロックの模式図である。
【図9G】対応ピクセルを特定するために、図9Bのピクセル配列において走査される第1ピクセル・ブロックの模式図である。
【図10A】異なる画像フレームにおいて、対応するピクセルを特定するために使用される第2ピクセル・ブロックの模式図である。
【図10B】対応ピクセルを特定するために、図9Bのピクセル配列において走査される第2ピクセル・ブロックの模式図である。
【図10C】対応ピクセルを特定するために、図9Bのピクセル配列において走査される第2ピクセル・ブロックの模式図である。
【図10D】対応ピクセルを特定するために、図9Bのピクセル配列において走査される第2ピクセル・ブロックの模式図である。
【図10E】対応ピクセルを特定するために、図9Bのピクセル配列において走査される第2ピクセル・ブロックの模式図である。
【図10F】対応ピクセルを特定するために、図9Bのピクセル配列において走査される第2ピクセル・ブロックの模式図である。
【図11A】異なる画像フレームにおいて、対応するピクセルを特定するために使用される第3ピクセル・ブロックの模式図である。
【図11B】対応ピクセルを特定するために、図9Bのピクセル配列において走査される第3ピクセル・ブロックの模式図である。
【図11C】対応ピクセルを特定するために、図9Bのピクセル配列において走査される第3ピクセル・ブロックの模式図である。
【図11D】対応ピクセルを特定するために、図9Bのピクセル配列において走査される第3ピクセル・ブロックの模式図である。
【図11E】対応ピクセルを特定するために、図9Bのピクセル配列において走査される第3ピクセル・ブロックの模式図である。
【図11F】対応ピクセルを特定するために、図9Bのピクセル配列において走査される第3ピクセル・ブロックの模式図である。
【図12】多次元変換法を示す機能ブロック・ダイアグラムであり、この方法は、連続する第1、第2画像フレームにおけるオブジェクト間のマッピングを生成し、このマッピングを転送または保存のために量子化するものである。
【図13】図7の画像フレームを表わす表示画面の模式図であって、図12の多次元変換法を例示するためのものである。
【図14】図12の方法で求めたアフィン変換係数の量子化に使用される変換ブロックの3種の選ばれたピクセルを表わす拡大模式図である。
【図15】図12の多次元変換法の別の実施態様に用いられる変換ブロック最適化法の機能ブロック・ダイアグラムである。
【図16】図7の画像フレームを表わす表示画面の、部分模式図であって、図15の変換ブロック最適化法を例示するためのものである。
【図17A】圧縮前外挿法の機能ブロック・ダイアグラムであり、この方法は、圧縮をやり易くするために、任意の形の画像特徴を、特定の形に外挿するためのものである。
【図17B】圧縮前外挿法の機能ブロック・ダイアグラムであり、この方法は、圧縮をやり易くするために、任意の形の画像特徴を、特定の形に外挿するためのものである。
【図18A】単純なオブジェクトを、図14の外挿法の様々な態様を示すように表示させた表示画面を表わすものである。
【図18B】単純なオブジェクトを、図14の外挿法の様々な態様を示すように表示させた表示画面を表わすものである。
【図18C】単純なオブジェクトを、図14の外挿法の様々な態様を示すように表示させた表示画面を表わすものである。
【図18D】単純なオブジェクトを、図14の外挿法の様々な態様を示すように表示させた表示画面を表わすものである。
【図19A】それぞれ、符号化法および復号化法を示す機能ブロック・ダイアグラムであり、これらは、本発明にしたがってラプラシアン・ピラミッド符号化法を用いている。
【図19B】それぞれ、符号化法および復号化法を示す機能ブロック・ダイアグラムであり、これらは、本発明にしたがってラプラシアン・ピラミッド符号化法を用いている。
【図20A】図19Aの符号化工程によって処理された任意の一組の、または、一配列のピクセルのカラー成分値を示す模式図である。
【図20B】図19Aの符号化工程によって処理された任意の一組の、または、一配列のピクセルのカラー成分値を示す模式図である。
【図20C】図19Aの符号化工程によって処理された任意の一組の、または、一配列のピクセルのカラー成分値を示す模式図である。
【図20D】図19Aの符号化工程によって処理された任意の一組の、または、一配列のピクセルのカラー成分値を示す模式図である。
【図21】本発明による動きベクトル符号化法の機能ブロック・ダイアグラムである。
【図22】量子化されたオブジェクト符号化・復号化別様工程を示す機能ブロック・ダイアグラムである。
【図23A】図3の復号化工程にマッチングするビデオ圧縮復号化工程の総合機能ブロック・ダイアグラムである。
【図23B】本発明によるマスタオブジェクト復号化工程を示す機能ダイグラムである。
【図24A】従来のチェーンコード形式の模式図である。
【図24B】図24Aのチェーンコード形式処理された場合の輪郭を例示する模式図である。
【図25A】本発明のチェーンコード化工程の機能ブロック・ダイアグラムである。
【図25B】本発明のチェーンコード形式の模式図である。
【図25C】図25Aの工程で使用される特別ケース・チェーンコード修正を示す模式図である。
【図26】スプライト生成、または符号化工程を示す機能ブロック・ダイアグラムである。
【図27A】ビットマップによって定義される、それぞれ、第1および第2のオブジェクトであり、第26の工程に従ってオブジェクトの上に重ねられた三角形のグリッドを示す。
【図27B】ビットマップによって定義される、それぞれ、第1および第2のオブジェクトであり、第26の工程に従ってオブジェクトの上に重ねられた三角形のグリッドを示す。
【図28】図26の符号化工程に対応する、スプライト復号化工程の機能ブロック・ダイアグラムである。
【図29】完全に規定されたオブジェクトに対する簡略化した復号化処理の機能ブロック・ダイアグラムである。」

Claims (20)

  1. 複数のフレームを有するビデオシーケンスのオブジェクトを符号化する方法であって、前記オブジェクトが1つ以上の一般的なオブジェクトを含み、前記1つ以上の一般的なオブジェクトの各々が、フレーム間の動き推定および誤差信号発生によって符号化されており、
    前記ビデオシーケンスにおける1つ以上の一般的なオブジェクトからスプライト規定オブジェクトを識別し、前記スプライト規定オブジェクトがスプライトおよび軌跡情報を含み、前記識別することが、前記ビデオシーケンスの複数のフレームにおける前記スプライト規定オブジェクトに関するピクセル情報を付加し、前記スプライトに関する複合ビットマップを形成することを含み、
    前記スプライト規定オブジェクトを符号化し、この符号化が前記スプライトに関する複合ビットマップを符号化することを含むことを特徴とする符号化方法。
  2. 請求項1に記載の符号化方法において、前記スプライトに関する複合ビットマップの符号化が、前記複合ビットマップを画像として圧縮し、前記複合ビットマップにおける空間相関を用いることを含むことを特徴とする符号化方法。
  3. 請求項1に記載の符号化方法において、前記スプライト規定オブジェクトの符号化が、前記軌跡情報を圧縮することを含むことを特徴とする符号化方法。
  4. 請求項1に記載の符号化方法において、前記識別が、
    前記軌跡情報を、前記ビデオシーケンスにおけるスプライトのフレーム対フレーム透視変換に基づいて計算することをさらに含むことを特徴とする符号化方法。
  5. 請求項1に記載の符号化方法において、前記ビデオシーケンスにおける1つ以上のスプライト規定オブジェクトを識別し、符号化することをさらに含むことを特徴とする符号化方法。
  6. 請求項1に記載の符号化方法において、前記オブジェクトの各々に関し、前記ビデオシーケンスの層が前記オブジェクトを含むことを特徴とする符号化方法。
  7. 請求項1に記載の方法において、前記ビデオシーケンスの複数のフレームの各々に関し、パーオブジェクトマスクが、前記スプライト規定オブジェクトおよび一般的なオブジェクトの各々に関するフレームにおける画素を指示することを特徴とする符号化方法。
  8. 請求項1に記載の符号化方法において、前記軌跡情報が、複数の特徴点の各々に関するxおよびy座標の列を含むことを特徴とする符号化方法。
  9. 請求項1に記載の符号化方法において、背景をスプライト規定オブジェクトで表すことを特徴とする符号化方法。
  10. 請求項1記載の符号化方法において、前記複数のフレームに関して、前記軌跡情報が、前記複合ビットマップをいかにワーピングして、前記フレームにおいて前記スプライト規定オブジェクトを表すかを特徴とする符号化方法。
  11. 請求項1に記載の符号化方法において、前記軌跡情報と、前記スプライトに関する符号化された複合ビットマップと出力して、保存または伝送することを特徴とする符号化方法。
  12. 請求項8に記載の符号化方法において、前記xおよびy座標が、前記複数の特徴点の少なくとも幾つかに関して個別に符号化されていることを特徴とする符号化方法。
  13. 複数のフレームを有するビデオシーケンスのオブジェクトを復号化する方法であって、前記オブジェクトが1つ以上の一般的なオブジェクトを含み、前記1つ以上の一般的なオブジェクトの各々が、フレーム対フレーム動き推定および誤差信号発生によって符号化されている、復号化方法において、
    前記ビデオシーケンスの符号化されたスプライト規定オブジェクトを受け取り、前記符号化されたスプライト規定オブジェクトは、軌跡情報とスプライトに関する符号化された複合ビットマップとを含み、前記軌跡情報は、前記スプライトにおける複数の特徴点と、前記ビデオシーケンスの当該複数のフレームのうちの1つのフレームにおける前記符号化されたスプライト規定オブジェクトの対応する複数の特徴点との間の座標差の値を含んでおり、
    前記ビデオシーケンスの前記符号化されスプライト規定オブジェクトを復号化し、前記スプライト規定オブジェクトが、前記ビデオシーケンスの1つ以上のフレームに閉じ込められたピクセルを有し、前記スプライトに関する複合ビットマップが、前記ビデオシーケンスを通じての前記スプライト規定オブジェクトに関するピクセル情報を含み、これによって、前記複合ビットマップに閉じ込められたピクセルを表すことを特徴とする復号化方法。
  14. 請求項13に記載の復号化方法において、前記符号化された複合ビットマップを画像として事前に圧縮して空間相関を用い、前記復号化が、前記複合ビットマップを復元することを含むことを特徴とする復号化方法。
  15. 請求項13に記載の復号化方法において、前記軌跡情報を事前に圧縮し、前記復号化が、前記軌跡情報を復元することを含むことを特徴とする復号化方法。
  16. 請求項13に記載の復号化方法において、前記ビデオシーケンスにおける1つ以上の他のスプライト規定オブジェクトを復号化することをさらに含むことを特徴とする復号化方法。
  17. 請求項13に記載の復号化方法において、前記オブジェクトの各々に関し、前記ビデオシーケンスの層が前記オブジェクトを含むことを特徴とする復号化方法。
  18. 請求項13に記載の復号化方法において、前記ビデオシーケンスの複数のフレームの各々に関し、パーオフジェクトマスクが、前記スプライト規定オブジェクトおよび一般的なオブジェクトの各々に関するフレームにおける画素を指示することを特徴とする復号化方法。
  19. 請求項13に記載の復号化方法において、背景をスプライト規定オブジェクトで表すことを特徴とする復号化方法。
  20. 請求項13に記載の復号化方法において、前記複数のフレームに関して、前記軌跡情報が、前記複合ビットマップをいかにワーピングして、前記フレームにおいて前記スプライト規定オブジェクトを表すかを特徴とする復号化方法。
JP53376097A 1996-03-22 1997-03-21 スプライト符号化 Expired - Fee Related JP4377455B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/621,012 US5778098A (en) 1996-03-22 1996-03-22 Sprite coding
US08/621,012 1996-03-22
PCT/US1997/004652 WO1997035276A1 (en) 1996-03-22 1997-03-21 Sprite coding

Publications (3)

Publication Number Publication Date
JP2000507412A JP2000507412A (ja) 2000-06-13
JP2000507412A5 JP2000507412A5 (ja) 2004-12-02
JP4377455B2 true JP4377455B2 (ja) 2009-12-02

Family

ID=24488373

Family Applications (1)

Application Number Title Priority Date Filing Date
JP53376097A Expired - Fee Related JP4377455B2 (ja) 1996-03-22 1997-03-21 スプライト符号化

Country Status (6)

Country Link
US (1) US5778098A (ja)
EP (1) EP0888592B1 (ja)
JP (1) JP4377455B2 (ja)
AT (1) ATE245329T1 (ja)
DE (1) DE69723550T2 (ja)
WO (1) WO1997035276A1 (ja)

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5867166A (en) * 1995-08-04 1999-02-02 Microsoft Corporation Method and system for generating images using Gsprites
US5825929A (en) * 1995-10-05 1998-10-20 Microsoft Corporation Transformation block optimization method
US6037988A (en) * 1996-03-22 2000-03-14 Microsoft Corp Method for generating sprites for object-based coding sytems using masks and rounding average
US6571016B1 (en) * 1997-05-05 2003-05-27 Microsoft Corporation Intra compression of pixel blocks using predicted mean
US6215910B1 (en) * 1996-03-28 2001-04-10 Microsoft Corporation Table-based compression with embedded coding
US6037983A (en) * 1996-11-08 2000-03-14 Hughes Electronics Corporation High quality reduced latency transmission of video objects
US5861920A (en) * 1996-11-08 1999-01-19 Hughes Electronics Corporation Hierarchical low latency video compression
JP2001507541A (ja) * 1996-12-30 2001-06-05 シャープ株式会社 スプライトベースによるビデオ符号化システム
EP1276326A3 (en) 1997-02-14 2003-12-10 The Trustees of Columbia University in the City of New York Object based audio visual terminal and bitstream structure
US7199836B1 (en) * 1998-02-13 2007-04-03 The Trustees Of Columbia University In The City Of New York Object-based audio-visual terminal and bitstream structure
US6400831B2 (en) 1998-04-02 2002-06-04 Microsoft Corporation Semantic video object segmentation and tracking
US6240198B1 (en) 1998-04-13 2001-05-29 Compaq Computer Corporation Method for figure tracking using 2-D registration
US6269172B1 (en) 1998-04-13 2001-07-31 Compaq Computer Corporation Method for tracking the motion of a 3-D figure
US6256418B1 (en) * 1998-04-13 2001-07-03 Compaq Computer Corporation Method and system for compressing a sequence of images including a moving figure
US6041143A (en) * 1998-04-14 2000-03-21 Teralogic Incorporated Multiresolution compressed image management system and method
US8189662B2 (en) * 1999-07-27 2012-05-29 Microsoft Corporation Selection compression
IL141104A0 (en) * 1998-07-27 2002-02-10 Webtv Networks Inc Remote computer access
US7360230B1 (en) * 1998-07-27 2008-04-15 Microsoft Corporation Overlay management
US6711278B1 (en) 1998-09-10 2004-03-23 Microsoft Corporation Tracking semantic objects in vector image sequences
JP4226730B2 (ja) * 1999-01-28 2009-02-18 株式会社東芝 物体領域情報生成方法及び物体領域情報生成装置並びに映像情報処理方法及び情報処理装置
CN1229996C (zh) * 1999-01-29 2005-11-30 三菱电机株式会社 图象特征编码方法
EP2278549A1 (en) * 1999-09-24 2011-01-26 Nippon Telegraph And Telephone Corporation Method and apparatus for extracting segmentation mask
JP2001266159A (ja) * 2000-03-17 2001-09-28 Toshiba Corp 物体領域情報生成方法及び物体領域情報生成装置並びに近似多角形生成方法及び近似多角形生成装置
KR100415266B1 (ko) * 2000-05-11 2004-01-16 가부시끼가이샤 도시바 물체영역정보 기술방법과 물체영역정보 생성장치 및 기록매체
US6738520B1 (en) 2000-06-19 2004-05-18 Intel Corporation Method of compressing an image
US7046728B1 (en) 2000-06-30 2006-05-16 Intel Corporation Method of video coding the movement of a human face from a sequence of images
JP4011327B2 (ja) * 2000-11-15 2007-11-21 株式会社レクサー・リサーチ 表示オブジェクト提供装置、表示オブジェクト提供方式及び表示オブジェクト提供プログラム
US20020107988A1 (en) * 2001-02-05 2002-08-08 James Jordan In-line compression system for low-bandwidth client-server data link
US7321624B1 (en) * 2001-03-16 2008-01-22 Objectvideo, Inc. Bit-rate allocation system for object-based video encoding
JP2002359842A (ja) * 2001-05-31 2002-12-13 Monolith Co Ltd 画像符号化方法と装置および画像復号方法と装置
CN101448162B (zh) 2001-12-17 2013-01-02 微软公司 处理视频图像的方法
US7421129B2 (en) * 2002-09-04 2008-09-02 Microsoft Corporation Image compression and synthesis for video effects
US7085434B2 (en) * 2002-10-01 2006-08-01 International Business Machines Corporation Sprite recognition in animated sequences
US7408986B2 (en) * 2003-06-13 2008-08-05 Microsoft Corporation Increasing motion smoothness using frame interpolation with motion analysis
US7558320B2 (en) * 2003-06-13 2009-07-07 Microsoft Corporation Quality control in frame interpolation with motion analysis
US10554985B2 (en) 2003-07-18 2020-02-04 Microsoft Technology Licensing, Llc DC coefficient signaling at small quantization step sizes
IL170320A (en) * 2005-08-17 2010-04-29 Orad Hi Tec Systems Ltd System and method for managing the visual effects insertion in a video stream
KR101899383B1 (ko) * 2012-03-22 2018-09-17 노키아 솔루션스 앤드 네트웍스 오와이 이볼브드 패킷 시스템들에서 객체-기반 미디어 송신을 위한 향상된 정책 제어 프레임네트워크
US10462490B2 (en) * 2015-11-06 2019-10-29 Raytheon Company Efficient video data representation and content based video retrieval framework
US10575007B2 (en) 2016-04-12 2020-02-25 Microsoft Technology Licensing, Llc Efficient decoding and rendering of blocks in a graphics pipeline
US10157480B2 (en) 2016-06-24 2018-12-18 Microsoft Technology Licensing, Llc Efficient decoding and rendering of inter-coded blocks in a graphics pipeline
US11197010B2 (en) 2016-10-07 2021-12-07 Microsoft Technology Licensing, Llc Browser-based video decoder using multiple CPU threads

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3873972A (en) * 1971-11-01 1975-03-25 Theodore H Levine Analytic character recognition system
US4751742A (en) * 1985-05-07 1988-06-14 Avelex Priority coding of transform coefficients
US4754492A (en) * 1985-06-03 1988-06-28 Picturetel Corporation Method and system for adapting a digitized signal processing system for block processing with minimal blocking artifacts
JP2540809B2 (ja) * 1986-07-30 1996-10-09 ソニー株式会社 高能率符号化装置
US4745633A (en) * 1986-08-18 1988-05-17 Peter Waksman Optical image encoding and comparing using scan autocorrelation
US5070465A (en) * 1987-02-25 1991-12-03 Sony Corporation Video image transforming method and apparatus
US4912549A (en) * 1988-09-07 1990-03-27 Rca Licensing Corporation Video signal synchronization system as for an extended definition widescreen television signal processing system
GB8909498D0 (en) * 1989-04-26 1989-06-14 British Telecomm Motion estimator
GB9001468D0 (en) * 1990-01-23 1990-03-21 Sarnoff David Res Center Computing multiple motions within an image region
JP2569219B2 (ja) * 1990-01-31 1997-01-08 富士通株式会社 動画像予測方式
US5148497A (en) * 1990-02-14 1992-09-15 Massachusetts Institute Of Technology Fractal-based image compression and interpolation
JPH082107B2 (ja) * 1990-03-02 1996-01-10 国際電信電話株式会社 動画像のハイブリッド符号化方法及びその装置
US5103306A (en) * 1990-03-28 1992-04-07 Transitions Research Corporation Digital image compression employing a resolution gradient
US4999705A (en) * 1990-05-03 1991-03-12 At&T Bell Laboratories Three dimensional motion compensated video coding
US5155594A (en) * 1990-05-11 1992-10-13 Picturetel Corporation Hierarchical encoding method and apparatus employing background references for efficiently communicating image sequences
US5086477A (en) * 1990-08-07 1992-02-04 Northwest Technology Corp. Automated system for extracting design and layout information from an integrated circuit
US5020121A (en) * 1990-08-16 1991-05-28 Hewlett-Packard Company Neighborhood block prediction bit compression
GB9019538D0 (en) * 1990-09-07 1990-10-24 Philips Electronic Associated Tracking a moving object
EP0497586A3 (en) * 1991-01-31 1994-05-18 Sony Corp Motion detection circuit
JPH04334188A (ja) * 1991-05-08 1992-11-20 Nec Corp 動画像信号の符号化方式
JP2866222B2 (ja) * 1991-06-12 1999-03-08 三菱電機株式会社 動き補償予測方式
KR930001678A (ko) * 1991-06-13 1993-01-16 강진구 영상 신호에 있어서의 잡음 검출 알고리즘
WO1993002529A1 (en) * 1991-07-23 1993-02-04 British Telecommunications Public Limited Company Method and device for frame interpolation of a moving image
US5259040A (en) * 1991-10-04 1993-11-02 David Sarnoff Research Center, Inc. Method for determining sensor motion and scene structure and image processing system therefor
JP3068304B2 (ja) * 1992-01-21 2000-07-24 日本電気株式会社 動画像符号化方式および復号化方式
US5420638A (en) * 1992-04-14 1995-05-30 U.S. Philips Corporation Subassembly for coding images with refresh correction of the data to be coded, and subassembly for decording signals representing these images and previously coded by means of a subassembly of the former kind
TW250555B (ja) * 1992-09-30 1995-07-01 Hudson Kk
JPH06113287A (ja) * 1992-09-30 1994-04-22 Matsushita Electric Ind Co Ltd 画像符号化装置と画像復号化装置
US5424783A (en) * 1993-02-10 1995-06-13 Wong; Yiu-Fai Clustering filter method for noise filtering, scale-space filtering and image processing
US5592228A (en) * 1993-03-04 1997-01-07 Kabushiki Kaisha Toshiba Video encoder using global motion estimation and polygonal patch motion estimation
US5329311A (en) * 1993-05-11 1994-07-12 The University Of British Columbia System for determining noise content of a video signal in the disclosure
DE69416717T2 (de) * 1993-05-21 1999-10-07 Nippon Telegraph And Telephone Corp., Tokio/Tokyo Bewegtbildkoder und -dekoder
EP0626788B1 (en) * 1993-05-26 2000-08-30 STMicroelectronics S.r.l. Video images decoder architecture for implementing a 40 ms processing algorithm in high definition televisions
US5517327A (en) * 1993-06-30 1996-05-14 Minolta Camera Kabushiki Kaisha Data processor for image data using orthogonal transformation
JP2576771B2 (ja) * 1993-09-28 1997-01-29 日本電気株式会社 動き補償予測装置
US5574572A (en) * 1994-09-07 1996-11-12 Harris Corporation Video scaling method and device
US5621660A (en) * 1995-04-18 1997-04-15 Sun Microsystems, Inc. Software-based encoder for a software-implemented end-to-end scalable video delivery system

Also Published As

Publication number Publication date
JP2000507412A (ja) 2000-06-13
ATE245329T1 (de) 2003-08-15
EP0888592B1 (en) 2003-07-16
US5778098A (en) 1998-07-07
EP0888592A4 (en) 2001-07-18
DE69723550D1 (de) 2003-08-21
DE69723550T2 (de) 2004-04-15
EP0888592A1 (en) 1999-01-07
WO1997035276A1 (en) 1997-09-25

Similar Documents

Publication Publication Date Title
JP4377455B2 (ja) スプライト符号化
JP4242452B2 (ja) ビデオ圧縮方法及び装置
JP4572010B2 (ja) マスクおよび丸め平均値を使用したオブジェクトベースの符号化システムのためのスプライト生成に関する方法
US5692063A (en) Method and system for unrestricted motion estimation for video
US5946419A (en) Separate shape and texture coding of transparency data for video coding applications
US5787203A (en) Method and system for filtering compressed video images
US5799113A (en) Method for expanding contracted video images
US5982438A (en) Overlapped motion compensation for object coding
US6075875A (en) Segmentation of image features using hierarchical analysis of multi-valued image data and weighted averaging of segmentation results
WO1997013372A9 (en) Feature-based video compression method

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040322

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040322

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070327

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20070627

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20070813

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070927

A72 Notification of change in name of applicant

Free format text: JAPANESE INTERMEDIATE CODE: A721

Effective date: 20070927

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20070927

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A132

Effective date: 20080930

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20090105

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20090209

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090330

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090602

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090722

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090901

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090911

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120918

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120918

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130918

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees