JP2000509212A - 二次元データ圧縮装置および方法 - Google Patents

二次元データ圧縮装置および方法

Info

Publication number
JP2000509212A
JP2000509212A JP9516092A JP51609297A JP2000509212A JP 2000509212 A JP2000509212 A JP 2000509212A JP 9516092 A JP9516092 A JP 9516092A JP 51609297 A JP51609297 A JP 51609297A JP 2000509212 A JP2000509212 A JP 2000509212A
Authority
JP
Japan
Prior art keywords
pixel
leading
matching
string
scanned
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.)
Granted
Application number
JP9516092A
Other languages
English (en)
Other versions
JP3233410B2 (ja
Inventor
ハウル,ポール
Original Assignee
ジョンソングレース カンパニー
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 ジョンソングレース カンパニー filed Critical ジョンソングレース カンパニー
Publication of JP2000509212A publication Critical patent/JP2000509212A/ja
Application granted granted Critical
Publication of JP3233410B2 publication Critical patent/JP3233410B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/40Tree coding, e.g. quadtree, octree
    • 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/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Apparatus For Radiation Diagnosis (AREA)

Abstract

(57)【要約】 画像データ(204)を含むデータを圧縮するシステムおよび方法。画像データ(204)は、ピクセルアレイで形成されており、ピクセルアレイは、複数の目標ピクセル(206)および複数の前位ピクセル(206)を有しており、それそれの前位ピクセルは、そのピクセルアレイ内でそれぞれの目標ピクセルより前の位置にある。この発明の方法は、画像データ(204)を圧縮して圧縮画像を得ることを含んでいる。圧縮ステップにおいて、ピクセルアレイは、所定の非線形二次元トラバースパターンに従ってトラバースされる(206)。一致前位ピクセルのストリングを有する目標ピクセルの各ストリングについて、最長の一致前位ピクセルストリング(208、210)があれば、それが見つけ出される。目標ピクセルに対して、一致前位ピクセルが見つからなければ、そのような目標ピクセルは、不一致ピクセルと特徴付けられる(212)。最終的に、圧縮画像は、エンコードされ(412)、伝送されてもよいし、記憶されてもよい(416)。

Description

【発明の詳細な説明】 二次元データ圧縮装置および方法 発明の背景 1. 発明の分野 この発明は、データ圧縮システムに関するもので、より詳しくは、画像データ を圧縮形態に圧縮しそして圧縮形態のものを解凍する装置および方法に関するも のである。 2. 関連技術の説明 一般に、データ圧縮とは、ある与えられたフォーマットのデータを代替フォー マットに変換してその代替フォーマットが原フォーマットよりも少ないビットを 有するようにする如何なるプロセスをも称する。種々のデータ圧縮システムが従 来技術においてよく知られており、デジタルデータ信号の原ストリーム(原デー タ列)を圧縮されたデジタルデータ信号にエンコードするために使用され、そし てその圧縮されたデジタルデータ信号を原データ信号にデコードし戻すのに使用 されている。データ圧縮システムの使用によって、コンピュータシステム同士の 間で通信されるデータの量と必要なデータ記憶空間の量の両方が減る。このよう にして、データ圧縮は、与えられたデジタル情報を伝送するのに必要な時間の量 の節約とデジタル情報を保持するのに必要な記憶装置の量の節約になるので、有 利なものである。 多くのデータ圧縮方法は、デジタルデータおよびデータファイルが典型的にか なりの量の冗長さを含んでいるという事実に頼っている。そのような「冗長圧縮 法」は、データファイルが記憶装置上でより少ない空間を占めるように、または データファイルが通信チャンネル上をより少ない時間で伝送され得るように、デ ータファイルを圧縮するため使われてきている。 冗長圧縮法は、「テキストファイル」を減らすためにも使用できる。テキスト ファイルは、アルファベットの文字、数字および/または句読点類などの一連の 文書文字を含むデータファイルである。テキストファイル用の典型的な冗長法に おいては、まず一連の文書文字中のあるひとつの最初の(先頭の)目標文字の位 置を指定する。最も簡単な形態としては、その最初の目標文字の直前の文字から 始めて、その目標文字と一致するひとつの前位文字(目標文字より前に位置する 文字)が見つかるまで、その最初の目標文字より前にある文字を逆向きに探索( またはトラバース)する。ひとつの最初の一致する前位文字が見つかると、一致 性をその目標文字より後ろについて延長して、前位文字の中の一致する「文字列 」を見付けることが試みられる。このために、探索は、最初の目標文字の直後に ある新しい目標文字の方へ進むとともに、最初の一致前位文字の直後にある次の 前位文字へと進んで、システムは、後続の目標文字と後続の前位文字が一致する かを判断する。もし、一致すれば、処理は、後続の複数の前位文字に沿って、一 致しなくなるまで続けられる。このようにして、最初の一致前位文字から最後の 一致前位文字までとして、一致文字列が定義される。 このデータを圧縮するには、その一致文字列を二つのデータ項目により表すこ とができる。つまり、(1)一致前位文字列の開始点 (すなわち、一連の複数文字の中における最初の一致前位文字の所在位置)およ び(2)一致前位文字列の長さである。このようにして、前位文字と一致する目 標文字の列は、(1)一致文字列の始点位置と(2)その文字列の長さとを示す データとして簡単に表される。その結果、一致する前位文字列がある目標文字の 列(ストリング)は、各目標文字が独立にエンコードされた場合よりも少ないビ ットで表される。 多くの冗長圧縮法において、ひとつの「最長一致データ列」が探される。その ような方法では、ひとつの最初のデータストリング(データ列)が見つかったと きに処理が停止しない。その代わり、最初の一致前位文字の直前の前位文字から 始めて、複数の前位文字中を逆向きに探索が続けられる。処理は、ひとつの最長 一致データ列が見つかるまで続く(それは最初の一致データ列であるかも知れな い)。単に最初の一致データ列で停止しないで、最長の一致データ列を見つける ことにより、データテキストのさらなる圧縮が達成され得る。 以下の例において、冗長圧縮について説明する。次の文字列が伝送される場合 を仮定する:「THE RAIN IN SPAIN FALLS MAINL Y ON THE PLANE」。このデータは、次のようにエンコードされる 。最初の文字「T」は、「リテラル」コード(文字そのままのコード)としてエ ンコードされ、圧縮されない(それがリテラルコードであることを示すフラグビ ットにより実際は伸張されるかも知れない)。次いで、二番目の文字「H」が目 標文字となり、先にエンコードされている文字が探索探索されて、一致があるか 見る。この場合、エンコードされている唯一の先行文字は、次の文字「H」と一 致しない「T」である。 したがって、その「H」文字は、リテラルコードとしてエンコードされる。次い で、「H」の後の各後続文字が目標文字となり、先にエンコードされている文字 が探索されて、一致があるか探される。この例では、「RAIN」と「IN」の 間の空白スペースを数えないで、最初の文字一致は、最初に出てくる単語「IN 」の中の「I」のところで起こり、それは単語「RAIN」の中の「I」と一致 する。そこで、一致ストリング(文字列)のサーチが始まり、新しい目標文字は 「IN」の中の「N」になる。単語「RAIN」の中の一致した「I」の直後に ある文字が、その新しい目標文字と比較されて、一致するか調べられる。ご覧の とおり、新しい目標文字と先の一致文字直後の文字は両方とも「N」であるので 、正に一致する。この処理は、一致が起こらなくなるまで続けられる。このケー スでは、それは単語「SPAIN」の中の最初の文字(つまり「S」)のところ で起こる。このようにして、この冗長技術により見つけられた一致データ列は、 「IN」である(「N」に続く空白もまた前の空白スペースと一致している)。 次いで、この一致データ列、つまり「IN」は、一致データ列中の先頭文字(つ まり「RAIN」の中の「I」)の先頭位置および一致データ列の長さ(このケ ースでは、「I」、「N」および「空白」の三文字)としてそれをエンコードす ることにより、圧縮される。この処理は、ファイル全体が圧縮されてエンコード されるまで、テキストファイル全体を通して続けられる。上述したように、最初 の一致ストリングが見つかった後、最長一致ストリングを見つけようとして継続 してもよい。 在来の冗長圧縮は、前位の文書文字を探索するのに、「線形トラバース法」か 「ハッシュ法」のいずれかを採用してきている。しかしながら、これらの両方法 とも、特に圧縮されるデータが文書デー タでなく画像データである場合に、不利な点や欠点を有している。しかしながら 、これらの欠点を説明する前に、画像データのいくつかの面を理解しておくこと が重要である。画像データは、ピクセルの二次元配列を含む。各ピクセルは、テ キストファイルにおける文字に等価であると考えてもよい。各ピクセルは、画像 中の一点を表し、例えば、そのピクセルの色と強度を表すデータを含んでいる。 画像は、エリア全体が一様であったり見かけが極めて類似していたりするような エリアがいくつもあり得る(例えば、青い海が画面の大きい面積を占める場合) ので、ピクセルデータは、パターン化された方式でその画像内で広範囲に複製さ れ得ることがある。したがって、ある目標ピクセルに関して、ある場所において は、他の場所よりも、冗長なピクセルが起こる確率がずっと高い。 画像を圧縮するのに線形トラバース法を採用すると、目標ピクセルと一致する 前位ピクセル(目標ピクセルより前に位置するピクセル)を見つけるのに、一度 に一ピクセルずつそして順番に全部の前位ピクセルを通して後ろ向きにトラバー スすることによって、探索が実行される。したがって、線形トラバース法では、 目標ピクセルに関してある場所には一致ピクセルがより高い確率で見つかるとい う事実を補う試みはなされない。そうではなくて、ピクセルは、一致があればそ れが見つかるまで、前位ピクセルを通して後ろ向きに線形的にトラバースされる にすぎない。したがって、画像データを圧縮するのに線形トラバース法を使用す るのは、非効率であり、高速画像データ圧縮を達成できない。データ圧縮システ ムにおいては画像データが圧縮される(または解凍される)スピードを最大にす ることが極度に重要であるので、線形トラバース法が比較的低速なことはシステ ムの機能を低下させ、その方法が画像データを圧縮お よび解凍するには不利であることになる。 在来のハッシュ法では、前位ピクセルを通して探索して一致ピクセル列(ピク セルストリング)を見つけるのに、「ヒストリアレイ」、「ヒストリアレイポイ ンタ」、「ハッシュ表」および「オフセットアレイ」が用いられる。ヒストリア レイは、ある数のエントリを有し、各エントリは前位ピクセルの入力データスト リームの一部を記憶するものである。ヒストリアレイポインタは、ハッシュアレ イ内の最後のエントリを指す。ハッシュ表は、ヒストリアレイポインタを有する 一連のエントリを含んでいる。オフセットアレイ(またはハッシュリンク表)は 、ある特定のハッシュ値に対応するヒストリアレイ中の前のエントリを指し、オ フセットアレイの中の別の項は、このハッシュ値と関連するヒストリアレイ中の 最も古いエントリを指す。ヒストリアレイポインタ、ハッシュ表およびオフセッ トアレイは、ハッシュデータ構造を構成する。 ハッシングにおいては、ピクセルのデータストリームがスキャンされまたはシ ステムに入力されつつあるとき、ヒストリアレイに記憶されている特定のストリ ングを見つけるのにヒストリアレイポインタ、ハッシュ表およびオフセットアレ イを使用し、ヒストリアレイの中を探索して入力データストリーム中のピクセル のストリングと一致する最長の一致ピクセル列を見つける。最長の一致ストリン グを見つけようとするとき、ハッシュ関数を実行しなければならず、それは数段 のステップを有する。最初に、ハッシュ関数の結果を得なければならず、その関 数はハッシュ表の中のエントリの一つに対するポインタを与えるものである。二 番目に、ハッシュ関数の結果により指されるハッシュ表中に記憶されているポイ ンタを得る。三番目に、ヒストリアレイポインタとハッシュ表から得られたポイ ン タとの差を求める計算をし、その差をヒストリアレイポインタにより指されるオ フセットアレイエントリの中に記憶する。最後に、ヒストリアレイポインタをハ ッシュ関数により指されるハッシュ表エントリの中に記憶する。 さらに、ハッシュデータ構造を維持するために、種々のポインタやエントリを 更新するための計算が実行されなければならない。そのような計算は、圧縮速度 を遅くし、他の機能を実行するのに使える筈の高価なCPUの時間を占有する。 したがって、データ圧縮のためにハッシュ法を採用したシステムは、複雑で資 源集約的である。このように、画像データを圧縮するためにハッシュ法を採用し ているシステムは、難しくて、備えるのに高価であり、そしてハッシュ法を実行 するための計算条件でスピードが遅くなる。 したがって、従来の画像データ圧縮法に存在する不利や欠点を除去するような 、画像を圧縮し解凍する方法および装置に対する必要性が存在する。この発明は 、そのような方法と装置を提供するものである。 発明の概要 この発明は、データのストリームを圧縮するための装置および方法、並びに前 に圧縮されたデータを解凍するための装置および方法である。データは、二次元 か三次元のいずれの画像を表すものでもよい。しかしながら、この発明は、文字 データを含む如何なるタイプのデータを圧縮するのにも使用し得るものと認識さ れたい。 この発明は、画像データは、同一または類似の色の大きな面積部 分がいくつもあって、二次元に冗長性を有するであろうという観察をうまく利用 したものである。この発明は、この事実を利用して、前位ピクセルの最長一致ス トリングを見つけるのにトラバースしなければならない前位ピクセルの数を最小 限にするように設計された所定のパターンで画像ピクセルをトラバースするもの である。 この発明によれば、入力ストリームは、複数の入力データピクセルを含み、そ の内の二つ以上が入力データストリングを構成する。方法は、数段のステップを 含んでなる。入力データストリームが最初に読みとられて、前位データが得られ 、それは前位データストリングを含んでいる。次いで、前位データを所定の非線 形トラバースパターンで探索して、入力目標データストリングと一致する最長一 致前位データストリングを探す。何か最長一致データストリングが見つかったら 、それらを圧縮してコピートークンにエンコードする。一致前位ピクセルを持た ない入力目標ピクセルは、いずれもリテラルトークンとしてエンコードされる。 コピーおよびリテラルのトークンは、次いで、エントロピー符号化され、記憶へ または伝送用に出力される。 より詳しく説明すると、この発明においては、ひとつの目標ピクセルがピクセ ルアレイ中の複数の前位ピクセルと比較されて、前位ピクセルのどれかがその目 標ピクセルと一致するか、調べられる。好ましい実施態様では、一致前位ピクセ ルを見つける時間を最小にし圧縮速度を最適化するように設計された要領で前位 ピクセルをトラバースすべく経験的に予め定められた非線形二次元トラバースパ ターンで前位ピクセルを探索する。その非線形トラバースパターンは、画像全体 を圧縮するプロセス中を通して一定に保たれてもよいし、「境界」条件(例えば 、画像の縁)に適応させてまたは特定の 画像の「学究的」特性すなわち実践的に求めた特性に応じて変わってもよい。 非線形トラバースパターンを用いて、目標ピクセルと一致するひとつの前位ピ クセルが見つかったら、その目標ピクセルに関して非線形トラバースパターン内 の一致前位ピクセルの位置が、一致データストリングの開始点(または、「非線 形ピクセルオフセット」)となる。(この文脈において、「非線形ピクセルオフ セット」なる語は、非線形トラバースパターン内において最初の目標ピクセルと 最初の一致前位ピクセルの間にあるピクセルの数を意味する。)次の目標ピクセ ル、これは前記の最初の目標ピクセル(先頭目標ピクセル)の直後のピクセルで あるが、が次いで選択されて、最初に一致した前位ピクセルの直後の前位ピクセ ルが当該次の目標ピクセルと比較され、それら二つの直後ピクセルが互いに一致 するか判定される。もし一致すれば、このプロセス(処理)は、次の前位ピクセ ルが次の対応目標ピクセルと一致しなくなるまで続けられる。一致する前位ピク セルの数が一致データストリングのためのストリング長を構成し、非線形トラバ ースパターン中の最初の一致前位ピクセル(先頭一致前位ピクセル)の位置が一 致データストリングのための非線形ピクセルオフセットとなる。(この非線形ピ クセルオフセットからおよびピクセルアレイ中の目標ピクセルの位置から、最初 の一致ピクセルの「線形ピクセルオフセット」を生成することができる。この「 線形ピクセルオフセット」なる語は、ピクセルアレイ中の線形順序において目標 ピクセルと最初の一致ピクセルの間にあるピクセルの数を意味する。) ひとたび、第一の一致ストリングが見つかると、所定の非線形トラバースパタ ーンを使ってそのプロセスを続行し、さらに別の一致 前位ピクセルストリングがあれば、それを見つける。より長い一致のものが見つ かれば、以前のより短い一致のものをそれに置き換える。好ましくは、この方法 は、トラバースパターンを経てサーチされる前位ピクセルの数について合理的な 限界を有する。そうすれば、一致する前位ピクセルストリングを見つける探査プ ロセスは、全ての前位ピクセルの初めに到達する前に、停止することができる。 最長一致ストリングは、次いで、「コピートークン」としてエンコードされ、そ れは最長一致ストリングの非線形ピクセルオフセットとそのストリング長を示す データを含んでいる。もし、非線形トラバースパターンで前位ピクセルをトラバ ースするプロセスの間に目標ピクセルに対する一致前位ピクセルが見つからなけ れば、不一致の目標ピクセルは「リテラルトークン」としてエンコードされる。 一致ストリングを見つけるためのサーチプロセスは、画像を構成するピクセルの 終わりまで続けられ、全てのコピートークンと全てのリテラルトークンを位置づ けし、一つのトークンセットを形成する。 そのトークンセットは、さらに大域的にエンコードされ(好ましくは、ハフマ ンデータ圧縮アルゴリズムを使って)、エンコードされた圧縮画像データのスト リームが得られる。このエンコードされた圧縮画像データのストリームは、次い で、伝送されまたは記憶される。伝送された場合は、そのエンコードされた圧縮 画像データのストリームが受信されると、それはデコードアルゴリズムを使って デコードされ、圧縮画像データの復号ストリームが得られる。記憶された場合は 、そのエンコードされた圧縮画像データのストリームが検索されると、それはデ コードアルゴリズム(例えば、ハフマン復号化)を使ってデコードされ、同じく 圧縮画像データの復号ストリームが得られる。両方の場合とも、圧縮画像データ の復号ストリ ームのトークンセットが次いで伸張され、原画像と同一の解凍画像が得られる。 ひとつの実施態様においては、比較されつつあるピクセルが同一のデータを含 む場合のみ、ピクセルは、一致すると見られる。この実施態様では、非線形トラ バースパターンでトラバースされた前位ピクセルのいずれとも目標ピクセルが完 全に一致しなければ、その目標ピクセルはリテラルトークンとしてエンコードさ れ、プロセスはピクセルアレイ中を通して続行され、完全に一致するピクセルの ストリングを見つけようと試みられる。 別の代替実施態様においては、目標ピクセルと前位ピクセルとは、それらが完 全に同一でなくても、前位ピクセルが目標ピクセルの所定許容差内に入れば、「 一致」と見られる。この実施態様では、前位ピクセルが目標ピクセルと比較され て、その前位ピクセルがその目標ピクセルの当該所定許容差内に入れば、その前 位ピクセルは「一致」と見られる。このようにして、類似のしかし同一ではない 色が「一致する」とみなされることができる。一致データストリングを見つける ための検索が開始された後は、最初の目標ピクセルに続く目標ピクセルが最初の 一致前位ピクセルに続く各対応の前位ピクセルと比較され、それぞれについてプ リセット許容差が目標ピクセルに適用される。この実施態様は、高い圧縮比を可 能とするが、「損失のある」圧縮となる。 予め定められた非線形トラバースパターンを採用することにより、この発明は 、従来技術の圧縮法における不利と欠点を克服している。第一に、最長一致デー タストリングが、ずっと早くかつ従来技術の線形トラバース法で必要なよりも少 ないピクセルトラバースでもって見つかるように、非線形トラバースパターンが 経験的に求められ る。したがって、圧縮速度が実質的に向上する。第二に、この発明は、ハッシュ 法で要求される複雑な回路や時間のかかる計算の必要性を取り除く。したがって 、この発明は、ハッシュ法よりもコストが低く、複雑でなく、そして高速である 。 この発明の好ましい実施態様の詳細について、添付の図面および以下の説明に 述べる。ひとたび、この発明の詳細が分かれば、当業者にとって、無数の追加の 改革や変更が自明となるであろう。 図面の簡単な説明 図1は、この発明の圧縮および解凍方法を実施するためのプログラム可能なコ ンピュータシステムのブロック図である。 図2は、この発明の好ましい実施態様の基本的な方法を示す流れ図である。 図3は、この発明に従って最長一致データストリングおよび不一致目標ピクセ ルを見つけてトークン化するためのプロセスを詳細に示す流れ図である。 図4は、この発明の好ましい実施態様の圧縮/解凍の全体プロセスのより詳細 なバージョンを示す流れ図である。 各図において、同じ参照番号および名称は、同じ要素を意味している。 発明の詳細な説明 この説明の全体を通して、示されている好ましい実施態様および実例は、例示 と考えるべきであり、この発明に対する限定と考えて はいけない。 そのうえ、この説明の残りの部分の全体を通して、便宜上、画像データおよび ピクセルについて言及する。しかしながら、この発明は、画像データの圧縮と解 凍に限定されると認識されてはならない。むしろ、この発明は、データ圧縮が採 用される如何なるシステムやデータタイプにも応用できるものである。動作環境の大略 以下の記載は、好ましくは汎用コンピュータまたはプログラム可能な処理シス テムにより読み取り可能な記録媒体または記憶装置(例えば、ROMや磁気ディ スケット)に記録されたコンピュータプログラムとして実行される手続(手順) であって、記録媒体または記憶装置がコンピュータまたは処理システムにより読 み取られたとき、そのコンピュータまたは処理システムをそれらが下記に説明す る機能を果たすように配置構成および動作させる手続について説明するものであ る。 図1は、この発明の圧縮および解凍システムを実行するために使用できる典型 的なプログラマブル処理システム10のブロック図を示す。処理システム10は 、好ましくは、CPU12、RAM14、ROM16(これは、フラッシュRO Mのように書き込み可能であってもよい)、I/Oコントローラ18、および磁 気ディスクなどの採用任意の記憶装置19を含んでいて、それらが図示のように CPUバスで接続されている。I/Oバスには、ディスプレイ20、キーボード 22および通信ポート24などの入出力装置並びにI/Oコントローラ18が接 続されている。ディスプレイ20は、圧縮される原画像を表示するのに使用して もよい。プログラマブル処理 システム10は、予めプログラムされていてもよいし、他のソース(例えば、他 のコンピュータ)からプログラムをダウンロードすることによりプログラム(お よび再プログラム)してもよい。CPU12は、データ値間の同一性または違い を判定するため、およびオプションとして二つのデータ値を第三の値(例えば、 しきい値)と比較するために、比較回路を有しているか、または一つのデータ値 を他のデータ値と比較するようにプログラマブルでなければならない。 プログラマブル処理システム10は、通信リンク26を介して遠隔データ処理 システム30に接続されていてもよい。通信リンク26を通ってプログラマブル 処理システム10と第二のプログラマブル処理システム30の間をデータが通信 されてもよい。図1に示すシステムを使って、原画像を圧縮しエンコードして圧 縮画像を得てもよい。圧縮画像は、次いで通信リンク26を通して伝送され、そ れを受信して、デコードし解凍して原画像を得てもよい。その代わりに、原画像 を圧縮しエンコードして、例えば記憶装置19に記憶し、記憶圧縮画像を得ても よい。記憶圧縮画像は、後でCPU12で取り出し、デコードおよび解凍して、 原画像を得てもよく、それはまたディスプレイ20上に表示することができる。 CPU12は、原画像1を圧縮、エンコード、デコードおよび解凍するのに使用 するハードウェアおよびソフトウェアを内蔵していてもよいし、そのようなハー ドウェアおよびソフトウェアは、遠隔コンピュータの中やプログラマブル処理シ ステム10の別個のモジュールの中に設けてもよい。基本的方法の大略 図2は、この発明の基本的方法の流れ図である。図2に示す方法は、入力デー タストリームを圧縮するために使用されるもので、入カデータストリームは複数 の入力データピクセルを含んでおり、それらの二つ以上からなる一つのグループ が一つの入力データストリームを構成している。(ここで用いられる「ピクセル 」は、カラーデプスや使用されるカラースペースモデルに拘わらず、如何なるデ ータセグメント、データストラクチャ、またはひとつの画像のピクチャエレメン トを定義するビットの集合をも意味し、そして文字データも含む。)この方法は 、開始状態202から始まる。入力データストリーム(例えば、データファイル や伝送画像)がコンピュータメモリ内に読み込まれ、初期画像データを得る(ス テップ204)。データストリームは、ひとつの画像全体を表してもよいし、ま たはもしメモリ資源より大きければひとつの画像の一部を定義する複数ブロック を表してもよい。この後者の場合、各ブロックは「部分画像」として扱われ、こ の発明に従って別々に圧縮される。しかしながら、この発明は、通常、一つの画 像の複数部分を表す「動く窓」のデータを圧縮して、全体の画像を処理するのに 適用されるであろう。 一般には、圧縮されつつある画像は、原画像の形(例えば、長方形、円、など )に拘わらず、ピクセルの長方形配列(アレイ)によって一つの画像を記述する データファイルとして表される。それにもかかわらず、六角形など他の配列形態 を有する画像もまた、以下に記載の手続(手順)を使用して圧縮してもよい。し かしながら、ピクセルアレイにより表される画像が何であれ、アレイには始まり と終わりがあって、一番目の「前位」ピクセルはピクセルアレイの初めのところ に位置し、したがって、そのアレイの中の一番目のピ クセルである。この説明の残り部分として、ピクセルアレイ中を通って「前方へ 」移動またはトラバースするという場合は、その移動またはトラバースがピクセ ルアレイの始めから終わりの方向(つまり、一番目の前位ピクセルから離れる方 向)に行われることを意味している。ピクセルアレイ中を通って「後方へ」移動 またはトラバースするという場合は、その移動またはトラバースがピクセルアレ イの終わりから始めの方向(つまり、一番目の前位ピクセルヘ向かう方向)に行 われることを意味している。 再び図2を参照して、各新しい、つまり「目標」ピクセルが読み取られると、 予め定められた所定の非線形の(二次元に)トラバースパターンで前位(=「目 標」より前に位置する)ピクセルデータをサーチ(探索)して、前位データ内の 最長一致ストリングを探す。これにより、各最長一致前位データストリングは、 入力データストリームからのデータストリングと一致する前位データストリング を構成するものである。 好ましくは、その所定の非線形トラバースパターンは、単一の画像に対しては ひとつの固定した長さを有する。すなわち、各目標ピクセルに対して、所定の非 線形トラバースパターンは、トラバースすべき固定数の前位ピクセルを有し、そ して、各画像に対して、サーチされる前位ピクセルの所定数のところでトラバー スパターンが停止する。 替わりに、単一の画像内でトラバースパターンの長さを変化させることにより 、もっと有利にすることもできる。随意であるが、単一の画像に対してフルに変 化する(つまり、最適の)パターンを計算することもできる。すなわち、トラバ ースパターンは、画像ごとに変わってもよい。 非線形トラバースパターンの範囲とパスは、圧縮されるデータの構成形態によ り限定してもよい。例えば、圧縮する画像が境界または限界を有するピクセル配 列でできていて、トラバースパターンがピクセル配列の限界の外側になるセグメ ントを含んでいてもよい。その場合、ピクセル配列の限界の外側になるセグメン トは、例えば、配列の縁のところで動的に(ダイナミックに)取り除くことがで きる。取り除かれたセグメントは、最長一致データストリングを構成するベクト ルの中に再度登場しない。つまり、取り除かれたセグメントは、トラバースパタ ーン中にそれまで存在しなかったかのように扱われる。そのようなセグメントは 、最長一致ピクセルストリングを見つけるのに有用でないので、これにより高速 化が図れる。 上記に言及したように、予め定めておく非線形トラバースパターンは、経験的 に求めてもよい。最適のトラバースパターンを経験的に求めるには、目標ピクセ ルと一致する前位ピクセルを探して多数のテスト画像を徹底的にスキャンする。 そして、ヒストグラムを計算して、前位ピクセルの位置に一致する頻度を出す。 このヒストグラムを次いで降順にソートして、ソートされた一致頻度に対応する 相対的ピクセルオフセットが、好ましい非線形トラバースパターンになる。 ここで具体例で示すように、好ましいトラバースパターンは、上記の方法で決 定される。ピクセルオフセットは、目標ピクセルとの一致をサーチしている前位 ピクセルの、目標ピクセルに対する二次元配列における相対的位置として定義さ れる。経験的に求めた好ましいトラバースパターンでは、最初の24個の相対的 ピクセルオフセットが、次の順序で(省略時に)スキャンされる。 上記表において、「#」記号は、目標ピクセル、すなわちそれに対する一致前位 ピクセルをサーチしているエンコード中の位置を表す。1〜24の数は、トラバ ースパターンにおける初めの24個の相対的ピクセルオフセットをその順で表す 。 上記の表では、オフセット1〜5は、ピクセルをトークンにエンコードする際 に、僅かに優先的な取扱いを受ける。(トークンのスキーマは以下で詳細に説明 する。)好ましい実施態様では、オフセット1〜5は、追加のトークンフラグビ ットを添えないで、独特のトークンが割り当てられている。追加のトークンフラ グビットは、非優先的トークンに添えられるものである。このため、画像がトー クンとしてエンコードされた後は、上記の24個の相対オフセットの内の最も頻 繁に起こる5つを同定し、最も頻繁に起こるオフセットに最適トークン位置1〜 5が割り当てられるように、初めの24個のオフセットの全部を丁度よいように 置換する。この置換は、デコード処理の間は、逆転され、他のエンコード/デコ ード処理部分に対しては何も影響しない。このことは、以下で詳細に説明する。 最も頻繁に起こるオフセットに僅かに優先的な扱いをする目的は、ビットパック 効率を上げるためである。初めの24個のオフセットからの最も頻度の高い5つ のオフセットは、「最頻(most popular)」オフセットと呼ばれる。 この好ましい実施態様では、初めの24個の相対オフセットをスキャンした後 は、次の41個のオフセットを下記の順序でスキャンする: 前記の第一の表と同様に、「#」記号は一致前位ピクセルを探している目標ピク セルを表す。 この好ましい実施態様においては、非線形トラバースパターンの中の位置(ロ ケーション)の数は、サーチの深さ(それで、より長い一致が得られるかも知れ ない)と圧縮のスピードとのバランスを取るためある合理的な数に制限される。 小さいコラム幅(縁から縁まで)を有する画像に対しては、上記のオフセット のいくつかは、最初のコラムから最後のコラムへと、または最後のコラムから最 初のコラムへと「巻き付くこと(wrapping around)」により、冗長性を生じる であろう。ここに実現しているように、そのような巻き付きは許容される。巻き 付きは、圧縮スキームの実行を簡単にする。それは、圧縮率の向上にもつながる 。というのは、画像の境界で起こる色は、しばしば関連しているからである。 残りの相対オフセットは、前のスキャン段階からすでに考慮された如何なるオ フセットをも考慮しないで、目標ピクセルの位置から 後ろ向きに線形パターンでスキャンされる。例えば、(16コラムの画像を想定 する)、スキャンは下記のように続けられる。 再び図2を参照し、特にステップ208を参照して、もし、最長一致前位デー タストリングが見つかったら、対応の一致目標データストリングは、それを「コ ピートークン」でエンコードする(置き換える)ことにより圧縮される(ステッ プ210)。もし、最長の一致前位データストリングが見つからなかったら、入 力データストリームからの各不一致ピクセルは、「リテラルトークン」としてエ ンコードされる(ステップ212)。好ましくは、エンコードプロセスは、最長 一致前位データストリングおよび不一致ピクセルに出会うと、実行される。した がって、エンコードは、階段的な要領で生じる。つまり、この方法は、画像の全 体がスキャンされた後で、見つかった最長一致前位データストリングおよび不一 致ピクセルの全部がエンコードされなくてもよいような具合に実行してもよい。 しかしながら、エンコードステップを、画像全体がスキャンされて不一致ピクセ ルおよび最長一致前位ピクセルストリングの全部が見つけられた後に、行うよう にすることも、随意可能である。 エンコード後、コピートークンとリテラルトークンが出力され、 全ピクセルがエンコードされてしまうまでこのプロセスが繰り返され(ステップ 214)て、そこでこの基本プロセスは終了する(ステップ216)。コピート ークンとリテラルトークンは、次いで、通信リンク(図1に示したように)を通 って他のデータ処理システム30へ伝送されてもよい。図2の方法を使って入力 データストリーム(または、画像)が圧縮されているので、より少ないビットが 通信リンク26を通ってデータ処理システム30へ伝送されればよい。替わりに 、圧縮されたデータは、記憶装置19に記憶されることもでき、データまたは画 像が圧縮されていなければ必要であろうよりも、少ない記憶空間で済む。サーチアルゴリズム 図3は、図2のステップ204〜214をより詳しく図解して、画像を圧縮す る好ましい方法を示す。図4の最初のステップは、処理すべき「次の」目標ピク セルを選択するためのものである(ステップ302)。(この「次の」目標ピク セルは、処理すべき最初のピクセルのこともある。)ひとたび、目標ピクセルが 選択されると、複数の前位ピクセル(すなわち、ピクセルアレイの中で先頭目標 ピクセルに比べて前の位置にある複数のピクセル)が所定の非線形トラバースパ ターンでトラバースされる(ステップ304)。 前位ピクセルをトラバースするプロセスにおいて、目標ピクセルはトラバース パターンで出くわす各前位ピクセルと比較され、それら前位ピクセルのいずれか が目標ピクセルと一致するか判定される(ステップ308)。一致が見つからな ければ(ステップ308)、非線形パターンが全部終わったかが見られる(ステ ップ318)。終わってなければ、プロセスはステップ306で続行される。 もし、一致が見つかれば(ステップ308)、先頭の一致前位ピクセルにして 、一致がさらに延びるか見られる。そのやり方で、先頭目標ピクセルに続く目標 ピクセルと先頭前位ピクセルに続く前位ピクセルとが、前方への線形パターンで トラバースされ、先頭一致を延ばそうと試みられる(ステップ310)。このよ うにして、線形トラバースパターンがピクセルアレイの終わりへ向けて移動して いく。 さらに詳しくいうと、ひとたび先頭の一致前位ピクセルが見つかると、先頭の 一致目標ピクセルに続く各目標ピクセルは、対応する次の前位ピクセルを有する 。したがって、目標ピクセルのストリングが前位ピクセルのストリングと一致す るかをひとつひとつ判定するために、先頭の目標ピクセルに続く各目標ピクセル がそれに対応する前位ピクセルと比較される(ステップ312)。もし、比較中 の対応する目標ピクセルと前位ひくとが互いに一致していると分かれば、ステッ プ310が繰り返されて、次の対応する目標ピクセルと前位ピクセルとが互いに 一致するか判定される。このプロセスは、一致が見つからなくなるまで続き(ス テップ312)、前位ピクセルの現一致ストリングの終点を指示する。 ひとたび、一致前位ピクセルストリングの終わりに到達すると、現在の一致ス トリングの長さが現在処理中の先頭目標ピクセルについて前にセーブされている ストリング長のいずれとも比較される(ステップ314)。現在のストリングが 最初に見つかったものであるか、または現在のストリングが前にセーブされたス トリングより長ければ、現在の一致ストリングの相対オフセットおよびストリン グ長が「現在の」最長一致を表し、記憶される(ステップ316)。(好ましく は、概要の部分で定義したように、非線形ピクセルオフ セットが記憶され、それから目標ピクセルの位置とともに線形ピクセルオフセッ トを生成することができる。しかしながら、線形ピクセルオフセットを替わりに 記憶することができることも、認識されたい。)そうでなければ、現在の一致を 捨てて、プロセスはステップ318で続行する。替わりに、オフセットおよび長 さの情報が直ちにコピートークンで置き換えられる(下記参照)。 圧縮を最適にするためには、一致データのストリングのみでなく、一致データ の最長ストリング(ある限定したサーチ空間内で)を見つけてエンコードするの が、非常に好ましい。最長の一致ストリングをサーチして見つけることにより、 単に最初の一致ストリングを見つけてその点でプロセスを中止する場合よりも、 大きな圧縮が達成され得る。このようにして、次のステップは、前に見つけた一 致前位ピクセルストリングがひとつでもあるか、そしてそれは現在の最長一致よ りも長いかを判定するものである。したがって、もし非線形トラバースパターン が全部終わっていなければ(ステップ318)、画像パターンが終わるまでステ ップ306でプロセスが繰り返される。上に説明したように、好ましくは、非線 形トラバースは所定の終了点を有し、各前位ピクセルの全部がトラバースされる ことはない。もし、全ての前位ピクセルがトラバースされたら(すなわち、最初 の前位ピクセルに到達したときのみ非線形トラバースが終了する)、この発明に より達成される圧縮スピードの向上は減殺される。したがって、この発明の非線 形トラバースパターンを制定するには、圧縮スピードのみならずビット低減の量 をも最適化するためにどれだけの前位ピクセルをトラバースすべきかを決定する 。これは、非線形トラバースパターンの長さを、前位ピクセルをさらに後ろ向き にトラバースすることによりもっと長い一致ストリング を見つける可能性と、相互に関係させて決定する。圧縮が最適化される点は、上 に説明したように、経験的に求めてもよい。 トラバースパターンの続きは、一番最近の一致ストリングの先頭の一致前位ピ クセルの、トラバースパターンに従っての直前の前位ピクセルから始める。この ように、非線形トラバースが続けられるので、次のトラバースされる前位ピクセ ルは、必ずしも、そのような先頭の一致前位ピクセルの、ピクセルアレイ中での 直前の前位ピクセルでなくてもよい。むしろ、トラバースパターンが非線形であ るので、先頭の目標ピクセルと比較される次の前位ピクセルは、ピクセルアレイ の中で先頭の一致前位ピクセルからずっと離れた位置にあってもよい。(好まし い非線形トラバースパターンについては、トラバースパターンを構成する経験的 に求めた「ピクセルオフセット」を示す上記の図を参照されたい。)次いで、プ ロセスは、前位ピクセルの別の一致ストリングを見つけようとして、そしてその ようなストリングが最長の一致ストリングであるかを判定しようとして、続行す る。 もし、非線形トラバースパターンが全部終わったら(ステップ318)、その 先頭の目標ピクセルに対して一致が見つからなかったか、最長のストリングが見 つかったかの、いずれかである。前者の場合は、目標ピクセルがリテラルトーク ンで置き換えられ、後者の場合は、一致目標ストリングがコピートークンで置き 換えられる(ステップ320)。そのトークンは、次いで出力される。 次に、画像が全部処理されたかを見る(ステップ322)。そうであれば、プ ロセスは終了する(ステップ324)。そうでなければ、次の目標ピクセルが処 理のために選択される(ステップ304)。次の先頭目標ピクセルは、一致前位 ピクセルをサーチした最後の目 標ピクセルの直後の位置に位置決めされる。もし、非線形パターンで前位ピクセ ルをトラバースするプロセスの間に、先頭目標ピクセルと一致する前位ピクセル が見つからなかった場合は、次の先頭目標ピクセルは、一致が見つからなかった 前の先頭目標ピクセルの直後の目標ピクセルである。しかしながら、もし、前位 ピクセルの一致ストリングが見つかった場合は、次の先頭目標ピクセルは、一致 目標ピクセルのストリングの中の最後の目標ピクセルの直後の目標ピクセルであ る。プロセスは、次いでステップ306へ進、現在の目標ピクセルに対して(す なわち、「移動窓(moving window)」)の複数の前位ピクセルが、所定の非線 形トラバースパターンで再びトラバースされ、今回は次の先頭目標ピクセルに一 致する先頭の一致前位ピクセルをサーチする。「一致」の定義 この発明の方法は、ロスのある比較にも、ロスのない比較にも使えるものであ る。ロスのない比較のためには、二つのピクセルは、両者が同一である場合のみ 、「一致する」とみなされる。ロスのある比較では、二つのピクセルは、両者が 同一でなくても、それらが予め定めた許容差の範囲に入っていれば、「一致する 」とみなされる(これは、予めプログラムされていてもよいし、いろいろな程度 の圧縮が可能なように、ユーザ定義可能でもよい)。このようにして、目標ピク セルと前位ピクセルの間の比較の程度を予め定めた許容差によって変えることも できる。もし、目標ピクセルが前位ピクセルの許容差範囲内にあれば、その目標 ピクセルと前位ピクセルは一致するとみなされ、一致する前位ピクセルストリン グを見つけるための目標ピクセルと前位ピクセルの一致を見るプロセスは、許容 差内の最長ストリングが前位ピクセルの中に見つかるまで、続行する。 許容差(ロスのある)一致の正確度または有効度を向上させるために、いくつ かの変形や特徴を採用することができる。第一に、ロスの程度をコントロールす るために、可変許容差を使用することができる。この許容差は、画像ごとに、ま たは単一の画像の中で可変とすることができる。第二に、この方法は、許容差内 の一致をサーチしているとき許容差外のミスが生じたら、そのストリング内の追 加の後続ピクセルが許容差内にあるかを決めるために、サーチ中のストリングに ついて一致プロセスを続けられるように改変することができる。そうすれば、「 許容差外」ミスを「一致」とみなすことができる。第三に、このスキームの変形 は、ストリング比較における平均ヒット品質を指示する二次許容差を設けること である。第四に、一致ストリングを通しての合計誤差を監視していて、「誤差」 があるしきい値を超えたら一致プロセスを停止することができる(「誤差」とは 、前位ピクセルと目標ピクセルとの差を意味する)。これは、小さな誤差(依然 、許容差内にある)が、例えば背景色におけるような多数のピクセルにわたって 繰り返された結果生じる「ストリーキング」を最小にするのに使用することがで きる。 一致する前位ピクセルストリングを見つけるのに許容差比較を採用する場合は 、スキャン(サーチ)中の前位ピクセルは、再構成されたバージョンであり、現 ソース画像ピクセルではない。これは、圧縮中の画像を再構成するときに、デコ ーダに供給されるのと同じピクセルに対してスキャンニングプロセスが実行され なければならないからであり、さもなくば、許容差比較は不正確なものとなる。 そのうえ、許容差比較が採用された場合は、再構成ピクセルバージ ョンを作り出すステップを追加することができ、そこで、一致目標ピクセルを一 致前位ピクセル(すでに再構成された画像からの)で置き換える。この一致プロ セスは、潜在的に非同一の一致を作るので、一致前位ピクセルは、置き換えてい る目標ピクセルとは異なるかも知れない。トークン化 不一致の目標ピクセルについては、その目標ピクセルの原ピクセル値がリテラ ルトークンとしてトークン化される。デコーダまたはデコードステップ(以下に 説明)は、そのようなリテラルトークンに応答して、この単一のピクセル値を再 構成画像の中に挿入する。このリテラルピクセルは、その原ピクセルと正確には 一致しないかも知れないが、ピクセルを後で変更(許容差内で)して後続の一致 を改良する(例えば、長くするとか合計誤差を減らす)のに便利である。 より詳しくいえば、以下のテーブルは、トークンセットを記述するものであり 、好ましい実施態様においてリテラル要素およびコピー要素がマップされている (ここに、「ML」は「最小長」コピーストリングを表し、それは画像ごとに異 なり、2〜17の間の任意の値に設定できる。)。 好ましいトークン化スキームでは、いくつかの他の考慮がなされる。第一に、 255より大きいトークンは、コピーストリング(コピー要素)である。255 以下のトークンは、トークンが表すリテラルピクセル値に直接マップされる。第 二に、コピー要素は、16のブロックにグループ分けして、トークンビットの7 から4まででブロックを指定してもよい。各ブロック内で、ピクセルオフセット の意味は同一であり、下位の4トークンビットは、オフセットおよび/またはオ フセットをさらに定義するためにトークンに続く追加ビットの数を定義する。第 三に、各コピーブロックについてのトークンビット7から4までは、コピースト リングの長さおよび/またはその長さをさらに定義するためにトークンに続く追 加ビットの数を決定する。第四に、トークン416〜431(これらは延長され た長さを有するコピートークンを表す)については、二つのビットが追加長ビッ トに先行して、追加長ビットが何ビット後に続いているかを示している。方法の詳細バージョン 画像の処理 図4は、この発明の好ましい実施態様の圧縮/解凍プロセスの全体のより詳細 なバージョンを図解するものであり、図2に図解した方法を適用している。画像 データを圧縮する前に、画像データのカラースペースを公知の要領で変更しても よく、それは採用任意である(ステップ402)。好ましい実施態様では、画像 データをエンコードするカラースペースは、在来のYCrCbである。ソース画 像(または原画像)が好ましくないカラースペース(例えば、RGB)にあれば 、画像は、まず好ましいカラースペース(すなわち、 YCrCb)に変換されればよい。(International Radio Consultative Commi ttee「CCIR」Recommendation 601を参照。)しかしながら、そのようなカラ ースペース変換は、典型的にロスレスではない。したがって、デコードされた画 像がソース(原)画像と正確に一致することがクリティカルでない場合のみ、ロ スレス変換を行ってもよい。 圧縮される画像は、画像データの値の範囲を減らすために、公知のやり方で副 標本化する(部分画像ごとに標本化する)ことも採用任意である(ステップ40 6)。副標本化(subsampling)を行うと、画像内の各色は、カラースペースを 変更した後、最初に公知のやり方で任意にフィルタを適用してもよい(ステップ 404)。好ましいフィルタは、1、2、1の3要素カーネルを使用する。二次 元画像に対しては、このフィルタを画像の両方の次元に沿って適用する。たとえ 、カラースペースが変更されなくても(ステップ402)、副標本化する(ステ ップ406)前に画像を任意にフィルタして(ステップ404)もよい。 この好ましい実施態様では、画像データは、一つ以上の動的に選択されるDP CM(差分PCM)アルゴリズムを用いて予めフィルタされる。連続したトーン の24ビット画像に対しては、大部分のピクセル値が一組の小さいデルタに変形 されるので、そのようなフィルタリングは典型的に一致ストリングの数を増加さ せ、画像の圧縮後のサイズを小さくする。デルタをデコードするときは、逆DP CMアルゴリズムが適用され(ステップ426)、それはエンコード/デコード のプロセスに何もロスを増やさない。 好ましくは、この発明では、以下の三つのDPCMアルゴリズムが使用される が、異なるDPCMを採用することも任意である。 (1)X=X−B; (2)X=X−C;または (3)X=X−((B+C+1)/2)、 ここに、B、CおよびXは、下記のとおりである。 行(n−2) . . . . 行(n−1) . B . . 行(n) C X . . Xは目標ピクセルを表し、Bはピクセルアレイ内でXのすぐ上の前位ピクセル であり、そしてCはピクセルアレイ内でXの直前の(または左の)前位ピクセル である。好ましい実施態様において、最初の画像列(コラム)に対してDPCM アルゴリズム(1)が常に使用され、そして最初の画像行に対してDPCMアル ゴリズム(2)が常に使用される。画像内の最初のピクセルに対しては、この好 ましい実施態様ではDPCMが使用されない。 サーチおよびトークン化 次に、図2および図3に記述された基本的なアルゴリズムを使用して、所定の 非線形トラバースパターンで画像をピクセルごとにトラバースすることにより、 画像が圧縮される(ステップ408)。ここで、各目標ピクセルが、所定の非線 形トラバースパターンで出会う前位ピクセルと一致するか試される。さらに、目 標ピクセルの現在のストリングと一致する前位ピクセルの最長ストリングを見つ けるために、それぞれの一致を延ばすことが試される。 好ましい実施態様では、パレット化(8ビット)データまたは24ビットデー タのいずれかを圧縮することができる。24ビットの場合は、データは圧縮され て要素ごとに分けられて、あたかも24 ビットデータがパレットのない三つの8ビット画像であるかのようにしてもよい 。もしくは、24ビットの場合、データはインタリーブされた要素であってもよ く、あたかもその画像が3倍の数の列を持つ単一の要素であるかのようにしても よい。 上述したように、圧縮されたデータは、要素の列(シーケンス)からなってお り、各要素は、リテラルピクセル(例えば、非圧縮のソース画像からの転送同一 物)か「コピー」呼出しかの、いずれかを表している。コピー呼出しは、前にエ ンコードされている画像の中を指すデータ対[オフセット,長さ]であり、デコ ードされたとき、データ対の現在の位置にコピーされるべき一致前位ピクセルの ストリングを同定するものである。例えば、ピクセルストリングは、以下のよう であってもよい(下記の各桁はピクセルを表すと仮定する)。 43210210321098798711111 ロスなし圧縮を仮定して、上記のピクセルストリングは、下記の要素リストと してエンコードされてもよいかも知れない(ここに、「.」はリテラル要素が後 にくることを示し、「[]」(すなわち、[オフセット,長さ])はコピー要素 (またはコピー呼出し)が後にくることを示す)。 .4.3.2.1.0[3,3][7,4].9.8.7[3,3] .1[1,4] 上記は、ロスなし圧縮の一例であるが、この発明はロスあり圧縮にも同じく使 用できると理解すべきである。上述のように、ロスあり圧縮の場合、圧縮されつ つある画像について、一致ストリングは、不正確であっても視覚的に近似してい るというので構わない。デコーダは、エンコーダが一致ストリングをロスありで 持っているかロ スなしで持っているかに関心がないので、この「ロスあり」は、デコーダの動作 に影響を与えない。 リテラル要素およびコピー要素は、上述のように、定義されたトークンのセッ ト(一組)に再マップされる。さらなる圧縮を達成するために、この好ましい実 施態様では、これらのトークンをヒストグラム化し、ハフマンコード化する。得 られるコードワードは、出力データストリームの大部分を作る。追加の非ハフマ ン化ビットがハフマンコードワードの間に置かれてもよい。これらの追加ビット は、必要な全ての情報を運ぶのにハフマンコードワードが不十分であるときに、 間に挟まれる。例えば、非常に大きいコピー長のコピー要素または非常に大きい オフセットのコピー要素は、より大きい値の上位ビットを記述するために、トー クンの後に続く追加のビットをしばしば必要とするであろう。これらの追加ビッ トが存在することは、これらのビットに先行するトークンの定義から知ることが できる。 ハフマンエンコード したがって、画像がトークン化された(ステップ408)後、得られたデータ ストリームは好ましくはハフマンコードを使用してエンコードされる(ステップ 410)。好ましくは、古典的なハフマンアルゴリズムを使用して、そのトーク ンのセットに対する最適なハフマンツリーを作り出す。ハフマンコードは、圧縮 画像を含むファイルの初めのところに、それ自体、圧縮フォーマットにエンコー ドされる。好ましくは、このステップの出力は、長さが1〜16ビットのハフマ ンコードワードからなる圧縮ハフマンストリームであり、随意、追加のコードワ ード依存のデータを散在させてある。 この好ましい実施態様では、ハフマンツリーは、以下の要領でエンコードされ る。ハフマンツリーは、可能なトークンの全てに位置的に対応する432の整数 のベクトルで表され、各整数は0から16の値を持つ。これらは、「トークン長 」と呼ばれる。トークン長ベクトルは、ハフマンツリーの形を完全にエンコード しており、どトークンがそのリーフに対応するかを示している。0から16のト ークン長の値は、トークンの二進コードワード長をビット数で表している。コー ドワードの割当てにおいて、短いコードワードは、長いコードワードの等価長プ レフィックスより数値的に小さいと推定される(すなわち、長いコードは、1の ビットでプレフィックスされる傾向にあり、ツリーは右方向に深い)。 トークン長ベクトルは、まず、処理中の画像についてのエンコードパラメータ によって、0を持つと分かっている位置のいずれをも除くことにより、長さを減 じられる。例えば、もし、最大オフセット(ユーザ調整可能なエンコードパラメ ータ)が65以下であれば、65より大きいオフセットを表すトークン位置の全 てが取り除かれて、ベクトルを縮める。 次いで、トークン長ベクトルは、この好ましい実施態様においてそれ自身トー クン化されビットパックされる。下記のトークンが、 トークン長の圧縮に使用するために定義される(ここで、以下のテキストは、あ たかもトークンがデコードされつつあるとして解釈される)。 * 前を一度繰り返す(「R1」):前にデコードした値をもう一度出力する * デルタ1:前にデコードした0でない値に+/−1を加算して(範囲を1か ら16に維持するためにモジュロ16の演算を使用する)、それをもう一度出力 する。パックされたトークンに続いてデルタの符号を示す一つのビットがあり、 0:正の修正 1:負の修正。 * デルタ2:値を2とすることを除き、デルタ1と同じ。 * デルタ3:値を3とすることを除き、デルタ1と同じ。 * デルタ4:値を4とすることを除き、デルタ1と同じ。 * デルタ5〜8:より大きいデルタコーディング。デルタトークンの直後に追 加の2ビットを続け、デルタの大きさを示す。これらの2ビットに続いて小さい デルタの場合のように符号ビットがある。[注:デルタ+8は違法で、回避。デ ルタ演算はモジュロ16で行うので、デルタ+8はデルタ−8と等価である。両 方の場合にデルタ−8を使用しなければならない。] * 前を三度繰り返す(「R3」):前にデコードした値を三度出力する(「二 度繰り返す」は、一対の「一度繰り返す」によりコードする) 前を三度繰り返すのトークン(「repeat threeトークン」)は、もしそれが一 つ以上の一度繰り返すのトークンに先行されていると、追加の意味を持つ。三度 繰り返すのトークンの直前にある連続した 一度繰り返すのトークンのそれぞれについて、追加のビット(最大8まで)が三 度繰り返すのトークンに後続し、以下のようにより長い繰り返しを示す(ここで 、R1[n]は一度繰り返す(repeat-once)のトークンがn回連続することを 表す)。 説明として、全ての長さの「前を繰り返す」は以下に挙げるようにコードされ る[注:(1)先頭のRxはその前にR1がないものとする。そのような値を持 つ理由がないから。(2)x>3のRxは、前の行からの、より大きい複合繰り 返しの呼出しである。]。ハードの0:一つの0(不使用のトークン位置を示す)を出力する。これは、「 前にデコードされた値」のフィールドを変更しない。(「前にデコードされた値 」の定義に関しては、以下の説明を参照。) 多数のハードの0:二つ以上のハードの0を出力する。出力すべきハードの0の カウントは、トークンの直後に続く延長ビットにより決まる。 (n[x]は、x回のn) (許される最長の延長は16ビットである。) 前にデコードされた値 これは、出力された最後の0でない値(1〜16)を反映する値である。(言 い換えれば、「ハードの0」のトークンは、このフィールドを更新させない。) スタートアップにおいて、このフィールドは8であると定義される。エンコード /デコードが進行するにつ れて、デルタが計算され、それから及びそれに適用される。パックされた出力ビ ットストリームは、以下のようにフォーマットされている。 ビット 0…N: パックされたデルタコードトークン長(下記) n+1…: エンコードされたトークン長のビットストリームパックされたデルタコードトークン長 入力トークン長をモデル化するのに使用されるトークンについてのハフマンツ リーは、それ自体記述されていなければならない。これは、ストリームのビット 0〜nにおいてなされる。下記の静的ハフマンコードは、0から8までの値をエ ンコードするのに使用される。 この値は、次いで、次のように初期化されるルックアップテーブルの指標付け に使用される:(1,2,3,4,5,6,7,8,0)。これは、潜在的な「 dcトークン長」(これは、主トークン長と区別するために、dcトークン長と 呼ばれる)を表し、0で不使用コードを指定する。エンコード/デコードが進行 していくにつれて、ツリーレベルが全部達したためにもはや可能でなくなったd cトークン長は、ルックアップテーブルから除かれる。 もし、残っているゼロのdcトークン長があっても、それらは記憶されない。 むしろ、デコーダがそれらを自動的に検知する。なぜなら、ハフマンツリーはゼ ロが始まる点で正確に満たされるからで ある。また、最後のdcトークン長の位置は決して記憶されず、デコーダはハフ マンツリーを調べてそれが何でなければならないかを常に決定することができる 。 ブロック分け 再び図4を参照して、エンコードされた画像は、圧縮されエンコードされた画 像の記憶または伝送前に、随意、複数ブロックに区分けしてもよい(ステップ4 12)。ステップ412では、ハフマンエンコードされたコピーおよびリテラル トークンに、ある構造体が課せられる。この構造体は、トークンファイルを行の ブロック(例えば、16ブロック)に区分けし、デコーダに画像が到着したとき に、デコーダが画像の部分的な区域を表示または「ペイント」できるようにする 。(好ましいファイルフォーマットについて、下記を参照。) 画像のスプラッシュおよびプリスプラッシュ 圧縮されエンコードされた画像を伝送または記憶する前に、画像の「スプラッ シュ」バージョンをデータストリームの初めに、随意、前置してもよい(ステッ プ414)。スプラッシュ画像は、原画像を極度に小さく(サイズを)したバー ジョンであり、それはデシメーション(間引き)/フィルタリング(ろ波)によ って減じられている。スプラッシュ画像は、データストリーム中のスプラッシュ 画像に続く主画像と同じ圧縮スキームを使用してエンコードされる。スプラッシ ュ画像が受信されると、それはデコードされ、拡大されて、例えばスクリーン表 示窓の中に描画される。これは、画像が到達する前に、主画像の近似レンダリン グでもって画像のビューアを 提供する。主画像は、スプラッシュ画像の後に複数区分(上記のように、行のブ ロック)で到達し、スプラッシュ画像をオーバレイする。 スプラッシュ画像は、好ましくは、主画像をデコードするのには使用されない 。このことは、主画像をデコードする性能に影響せずに、スプラッシュ画像がデ ータファイルから取り除かれるのを可能にする。しかしながら、主画像をデコー ドするのにスプラッシュ画像が使用されてもよいことを、認識されたい。そのう え、例えば主画像データをスプラッシュ画像に対して差分PCMするなど、スプ ラッシュ画像の情報を使用することにより、主エンコード画像のサイズを減じる のにスプラッシュ画像を使用してもよい。 随意に、「プリスプラッシュ」コードを利用してもよい。プリスプラッシュコ ードは、スプラッシュ画像の中で最も「ポピュラーな」または優勢な色を表す。 スプラッシュコードは、スプラッシュ画像を枠決めするのにスプラッシュ画像が 表示されるエリアのための背景色として使用することができる。 さらに、パレット(8ビットのソース)を有する画像のために、伝送または記 憶中のファイルに「透明」色を設ける別の表示方式も随意である。デコードする ときは、呼出しアプリケーションで透明置換色を特定することができる。この色 は、ファイル透明色の先頭にあるパレットの中に入れられ、透明エリアを置換色 で効果的に塗り込む。 記憶または伝送 圧縮されてエンコードされた主画像が区分され(ステップ412)ていようと 、および/または主画像の前にスプラッシュ画像が前置 され(ステップ414)ていようと、圧縮されてエンコードされた主画像(すな わち、トークンのセット)は、伝送されまたは記憶される。(ステップ416) 。その画像は、図1のシステム10からシステム30へのように、ひとつのコン ピュータシステムから別のへ伝送されてもよいし、または、画像は、図1の記憶 装置19のようなメモリデバイスの中に記憶されてもよい。いずれの場合も、画 像を圧縮することにより、利点が得られる。伝送される場合は、圧縮画像は、圧 縮されていない場合よりも速く受け側に到達し、より少ないバンド幅を使用する 。記憶される場合は、圧縮画像は、非圧縮画像よりも、メモリデバイス内でより 小さい空間を占有する。 デコード 伝送されてきた圧縮画像が受信され、または記憶された圧縮画像が再生される と、それは、好ましくは、公知の要領でエンコードプロセスを逆算するハフマン デコードアルゴリズムを使用して、デコーダでデコードされる(ステップ418 )。画像は、次いで、同じく公知の要領で、解凍(または、伸張)されて、原画 像の表現を得る(ステップ420)。(例えば、米国特許第5、016、009 号およびそこに引用されている文献に記載の解凍についての説明を参照されたい 。)この点で画像を解凍することにより、図4のステップ408の圧縮段階に入 力されたとおりに画像を復元する。 従来の解凍においては、リテラルトークンは単純に直接ピクセルとして出力さ れ、コピートークンのオフセットおよび長さ情報で参照される解凍された前位ピ クセルストリングが、出力にコピーされる。しかしながら、コピーの代わりに補 間が用いられてもよい。好ましい補間方法は、両次元への簡単な線形補間を含み 、各色成分は 他と独立に補間される。例えば、二つの値、0x10および0x40の間を3倍に補間す ると、0x10[0x20][0x30]0x40となり、ここにブラケット内の値は補間で作られた 値である。画像の縁では、補間するための対の値が存在せず、単一の値がそのま ま写される。 解凍において、圧縮画像を定義するトークンは、ピクセル成分値に変換される 。次に、トークンが24ビットであれば、トークンは他の色成分とインタリーブ されて、出力色を形成する。他方、トークンが8ビットであれば、画像パレット がインデックスされて、24ビットの出力色を形成する。好ましくは、デコード (ステップ418)および解凍(ステップ420)は、同時に実行され、設計を 簡単にし、メモリの要求を減じ、時間効率を向上させる。しかしながら、デコー ドと解凍とは論理的には別であるので、異なる時点で実行する独立のステップと して組み入れることもできる。 任意に、デコードされ解凍された画像は、画像を強調するためにフィルタして もよい(ステップ422)。好ましい実施態様では、強調フィルタを解凍ステッ プから得られた画像成分値に適用して、解凍された行および列が出力(視聴)寸 法に拡大する前に使用される。あるいは、フィルタは、解凍されたピクセル成分 値に適用されてもよい。例えば、フィルタは、値によってイネーブルされるよう にして、例えばY成分のみまたはX成分のみを強調するようにすることもできる 。好ましいFIRフィルタは、係数0.0625、-0.3125、1.5、-0.3125、0.0625を 有する7タップのものである。これは、この発明の譲受人に譲渡されている米国 特許出願第275、945号に開示されているフィルタを近似的に実現したもの である。ただ、デシメーションの間に用いられる改変フィルタに対応するように 変 更し、かつ係数をの数を減らした。この変更は、フィルタを適用するコストを低 減するために、フィルタの正確度が僅かながら低下するという犠牲のうえで、し たものである。 もし、原画像がステップ406で副標本化されていれば、デコードされ伸張さ れた画像は、公知のやり方で次いで再補間される(ステップ424)。再補間ス テップは、好ましくは、必要に応じ、両次元に線形補間である。24ビットエン コードにおける各色成分は、個別にスケーリングすることができる。このように 、画像ごとに、再補間される成分とされない成分があってもよい。好ましいフィルタフォーマット 伝送されまたは記憶される圧縮されエンコードされた画像ファイルのフォーマ ットをここに詳述する。 GTアートデータストリームのフォーマット 好ましいデータフォーマットは、「GTアート」フォーマットとして知られて いる。これは、下記のように、ヘッダとそれに続く可変数のセグメントを有する データストリームで構成されている。 ヘッダのフォーマットは、この好ましい実施態様では、8バイトの長さである 。最初の2バイト(Byte0、Byte1)は、このデータがGTアートデータストリ ームであることを同定するためのシグネチャを形成する。Byte2とByte3は、こ のストリームのバージョンを同定する。典型的なデコーダは、メジャーバージョ ンおよ びある範囲のマイナーバージョンのストリームをデコードする。Byte4、Byte5 、Byte6は予備である。Byte7は、そのストリームを生成したエンコーダを同定 する。まとめると、これらのバイトは、 各セグメントは、プレフィックスセクションとデータセクションとからなって いる。プレフィックスは、タグフィールドとサイズフィールドからなっており、 それらはその値に応じて三つのフォーマットの内の一つを使ってそれぞれエンコ ードされている。データセクションは、任意バイトのストリングであり、そのバ イトカウントがプレフィックスにサイズフィールドとしてエンコードされている 。 プレフイックスフォーマット プレフィックスのセグメントは、1、2または3バイトのシーケンスであり、 タグと呼ばれる「セグメントタイプ」および後に続くデータバイトのサイズと呼 ばれるカウントをエンコードするのに使用される。 1バイトのフォーマットは、0〜63のタグ値とデータの0バイトを許容する 。2ばいとのフォーマットは、0〜31のタグ値とデータの0〜511バイトを 許容する。3ばいとのフォーマットは、0〜255のタグ値とデータの0〜32 767バイトを許容する。このエンコーダは、タグ値およびサイズ値のための最 短のエンコードを選択する。 データセクション データセクションは、タグ識別子に特有のフォーマットのデータバイトを含ん でいる。その内容およびセグメントタイプの好ましい順序を下記に挙げる(全タ グの値を16進で、およびフィールドを名称の隣に)。 セグメントタイプ(1)は、出力画像およびカラースペースの大きさを定義し、 次の6バイトで形成される。 バイト 各フラグは、サイズ、位置および意味において、GT_INSTANCE_I NFOセグメントの中のJG_GTFLAG_CLRフィールド_xxxとと同 一の単一フィールドを有している。(下記を参照。)このフィールドは、画像の カラースペースを決定する。(下記のセグメントタイプJG_SEG_GTI_ INFOを参照。) セグメントタイプ(2)は、画像の透明色を定義し、次の4バイトで形成され る。 バイト セグメントタイプ(3)は、画像をパレット化モードで表示するときに使用す るのに好ましい3色パレットを定義する。パレット化(8ビット)画像の場合、 このパレットをストリームパレットと称する。三つの成分(色0−C0、色1− C1、色2−C2、)は、順に、緑(C0)、次に青(C1)、次に赤(C2) である。 パレットのパック形式は: バイト 0−パレット内のエントリ数マイナス1(0〜255) 1−フラグバイト ビットストリームのスタート位置より先は、データはビットの境界に記憶され ている。ビットは、昇順のアドレスバイトで上位桁から下位桁へ順序づけられて いる。フィールドは、上位桁から下位桁ビットへ記憶されている。 もし、「量子化/2次−3次圧縮」フラグビット(ビット3)がセットされる と、10ビットのフィールド(C0*81+C1*9+C2)が続き、C0(色 0)、C1(色1)、およびC2(色2)が量子化されるレベル(0〜8)を示 す。(例えば、これら10ビットフィールドは生エレメントあたりのビットの数 を表す。) もし色0が生で記憶されると(0/1ビット量子化の場合は常に生)、連続す るnビット(色0の量子化因子に応じたビット数)のフィールドが用意され色0 の全部の値を保持する。他方、色0が圧縮されて記憶されると(これは、少なく とも8個の値があるときのみ起こる、8個より多い値が依然として生で記憶され るけれども)、最初の16ビットはデルタマスクであり、どのデルタトークンが 使用中であるかを次のようにして選択する。第一のビットは、0のデ ルタがコードされるているとき1であり、第二のビットは、1のデルタに対して 1になり、……、最後(16番目)のビットは、15のデルタがコードされてい るとき1である。 デルタトークンの意味は、次のとおりである。デルタトークンは、前のサンプ ルから次のものへの変化の量を示す。0〜14のデルタ値は、次のサンプルを直 接(一つのトークンを介して)生成する。15のデルタは特別なケースで、デル タが15+後続データを示す。多くのデルタ15のトークンが一行に現れて、大 きいデルタをコードする。常に15より小さい数のデルタトークンが存在して、 一回以上のデルタ15の発生を終了させる。 デルタの値は、無符号である。それは、それらが現在値を一方向にのみ動かす ことができることを意味する。好ましい実行は、パレットを第一要素を介して降 順に記憶することから開始する。このように、第一の色のためのデルタトークン は、負の変化を表す(すなわち、デコードの間に現在の第一色の値から減算され る)。 デルタマスクの16ビットに続くのは、デルタコードワード長のニブル(各4 ビット)である。デルタマスク内の全1ビットに対して一つのニブルが存在する 。(すなわち、コードワード長のニブルとデルタマスク内のビットとが位置的に 対応している。したがって、第一のニブルは、もし使われていれば、デルタ0に 対するコードワード長を表す。)コードワードに対するハフマン長は、1+ニブ ルに記憶されている値である。 次のnビットは、第一の色の値を生の形で保持している。一番最初の生のトー クンに続くのは、残りの第一の色の値を定義するデルタトークンに対する可変長 コードワードである。 もし、色1が生で記憶されると、(0/1ビット量子化の場合は 常に生)、次のようになる。連続するnビット(色1の量子化因子に応じた数) のフィールドが用意され、色1の値の全部を保持する。そうでなければ、色1は 圧縮して記憶され、それは少なくとも8個の値でもって常に起こる。もし、圧縮 されると、圧縮表現は、デルタ15のコードの定義を除き、色0と同一であり、 それは再定義されて、生へエスケープの定義のフラグを立て、次のnビット(そ の色の量子化値に応じた数)が色の値を生の値で保持することを示す。 もし、色2が生で記憶されると、(0/1ビット量子化の場合は常に生)、次 のようになる。連続するnビット(色2の量子化因子に応じた数)のフィールド が用意され、色2の値の全部を保持する。そうでなければ、色2は圧縮して記憶 され、それは少なくとも8個の値のときは常にそうであり、圧縮表現は、色1と 同一である。 セグメントタイプ4は、スプラッシュまたは画像データで描画またはパネリン グする前に画像ウィンドウを一つの色で溢れさせるのに使用する。このセグメン トは、次の4バイトを有する。 バイト ここに採用随意のスプラッシュの項を入れてもよい。そうするなら、それは、 正に主画像の項がそうであろう(データストリームの中で後続する)ように、セ グメントJG_SEG_GTI_INFOからJG_SEG_GTI_DATA で構成されることになるであろう。 セグメントタイプ(5)は、各色成分について必須である。画像が24ビット (3成分)であれば、三つの連続したJG_SEG_GTI_INFOセグメン トが他の如何なるセグメントより前に必要である。このフォーマットは、連続し たJG_SEG_GTI_INFOセグメントの数を数えてひとつの画像内の成 分の数を求める。それら成分は、0、1、2と番号付けされる(現れた順に)。 下記のC言語構造は、GT Infoセグメントのパック形式を展開したもの である(UINT8は「符号なし文字(unsigned char)タイプである」)。 全てのマルチバイトフィールドが複数の単一エンティティとして以下に記述さ れており、ストリーム内に下位バイトから上位バイトに記憶される。 以下の8つのフラグは、JG_PACKED_GT_INSTANCE_IN FOセグメント(すなわち、セグメントタイプ(5))に対応する。 フラグ(1)は、セグメントあたりのパックされた画像の最大行 数が32のときに立てられる。フラグが立っていなければ、セグメントあたり記 憶されている最大行数は16である。 フラグ(2)は、画像の項がスプラッシュであることを示すために立てられる 。 フラグ(3)は、その項のピクセルフォーマットを決める4ビットのフィール ドである。これは、以下の6つの値のいずれをもとり得る。 8ビットパレット化の項。この項でエンコードされる指標は、可変(エンコー ダ定義の)ストリームパレットを指す。 8ビットの項。この項でエンコードされる指標は、プリセットされた256エ ントリのパレットを指し、3ビットが赤に、3ビットが緑に、そして2ビットが 青に割り当てられる。 8ビットの項。この項でエンコードされる指標は、プリセットされた線形モノ クローム(グレイスケール)パレットを指し、0が黒を示し、0xffが白を示 す。 8ビットの項。この項でエンコードされる指標は、可変(エンコーダ定義の) パレットを指し、これはInfoセグメントの直後に続く。 24ビットの項。三つのinfoセグメントが存在しなければならない。圧縮 画像データは、パレットへの指標でなく、色成分値からなっている。 24ビットの項。この場合、唯一つのInfoセグメントと一組のエンコード されたデータが存在する。三つの色成分は、一緒にインタリーブされた(B、G 、Rの順で)ままで、あたかも3倍の数のコラム(列)を持った単一の画像であ るかのようにエンコードされる。 フラグ(4)は、この項のカラースペースを決定する4ビットのフィールドで ある(24ビットの場合に圧縮データ自体であるか、8ビットのパレット化され た項のパレットであるかのいずれか)。これは、以下の2つの値のいずれかを取 り得る。 カラースペースは、RGBである(名称中に使用のBGRには意味がない)。 カラースペースは、YUVである。 解凍データをその最終寸法にスケーリング(尺度変換)する際に、フラグ(5 )および(6)が強調フィルタ(上記)が関与するか否かを制御する。強調は、 行および列について個々に制御可能である。 立っていると、フラグ(7)および(8)は、画像全体を適当回数複製するこ とにより、スケーリングされた画像のサイズを増大させる。もし、画像のサイズ が減少しつつあるならば、範囲全体をスケーリングしないで、その最下行および 右列がクリップされる。 以下の8つのフィールドは、セグメントタイプ(5)(すなわち、JG_SE G_GTI_INFOセグメント)に関連して使用される。 フィールド(1)および(2)は、圧縮画像データの行数と列数を保持してい る。もし、これらの値がJG_SEG_WINDOW_INFOセグメントに記 録されているのと異なる場合は、その画像はJG_SEG_WINDOW_IN FOセグメントの寸法に尺 度変換される。 8ビットの項である場合、フィールド(3)は、エンコードプロセスにおいて 、下記のように色成分差に適用される色の重み係数を保持する。 これらの値は、情報の目的のためにのみ記憶される(ストリームのデコードに は影響しない)。 24ビットの項である場合、フィールド(3)は、エンコード中に使用された ものでデコードの間は逆転される必要のあるDPCMアルゴリズムを保持する。 上記は、次のピクセル関係を想定している。 ..B .CX (ここに、Xは目標ピクセルである) 「自動」が選択されている場合、DPCMアルゴリズムは、行ごとの単位で動 的に(ダイナミックに)選択され、アルゴリズムタイプが各圧縮行の初めに記録 される。(DPCMアルゴリズムについての上記の説明を参照されたい。) フィールド(4)および(5)は、エンコード時にプログラムされたように、 最小長および最大長のコピーストリングを表す。両フィールドは、4ビットであ る。最大長は、上位の4ビットに記憶される。この4ビットコードは、次のベク トルを指標して、実際の最小長さを作り出す:0、1、2、3、4、5、6、7 、9、13、21、37、69、133、261、517、1029。この4ビ ットコードは、次のベクトルを指標して、実際の最大長さを作り出す:0、1、 2、3、4、5、6、8、12、20、37460、37460、37460、 37460、37460、37460。最大長テーブルを指標した後、その結果 に最小コピ一長が加算されて、最終的な最大コピー長を生成する。 フィールド(6)および(7)は、エンコード時にセットされた長さ2以上の コピーについての最大オフセットサイズである。両フィールドは、4ビットであ る。長さ2のサーチサイズが上位ビットに記憶される。これらのフィールドは、 コピーストリングが取り得る最大許容オフセットを制御する(長さ2以上の全て のコピーについて)。この4ビットコードは、次のベクトルを指標して、実際の 長さ2のコピーの最大オフセットサイズを作り出す:1、2、3、4、5、9、 17、33、65、129、257、513、1025、2049、4097、 8193。この4ビットコードは、次のベクトルを指標して、実際の長さが2よ り大きいコピーの最大オフセットサイズを作り出す:1、2、3、4、5、9、 17、33、65、129、257、513、1025、2049、4097、 8193。 フィールド8は、エンコード時にピクセルどうしの間の数値的な差に適用され て、それらが等しいとみなしてもよい程度に充分に近いか否かを決めるための許 容差である。「DifTol」が0であると、ピクセルが等しいとみなされるこ とはなく、いかなる一致をも生じさせない。24ビットエンコードのためには、 このフィールドは、単に、ピクセル値の間の差の絶対値と比較される。パレット 化された(8ビット)エンコードのためには、比較されるべきピクセルは、まず 脱パレット化される(指標がパレット内で探索される)。次いで、色ベクトルは 、差が求められ(互いに他から減算され)、絶対値が取られて、CxWeigh tによって重み付けされる。次いで、得られたベクトル要素は、二乗され合計さ れる。この値が「DifTol」に対して比較され、等しいか判定される。 セグメントタイプ(6)は、局所または脱パレット化パレットを表す。このセ グメントは、採用任意で、8ビットパレット画像の場合のみ使用される。これは 、ストリームパレットと同じフォーマットで記憶される。(セグメントタイプJ G_SEG_GTI_PALETTEを参照されたい。) ハフマンセグメントは、採用任意である。成分についてハフマンセグメント( タイプ(7))が受信されなければ、そのデータは生 であるに違いない(圧縮なしで記憶されている)。多色成分(24ビット)画像 をデコードする際は、JG_SEG_GTI_HUFFMANセグメントが色成 分0、1、2に対応して順序付けされなければならない。ハフマンセグメントの 初めの1〜3バイトは、「最もポピュラーな」マスクを定義する。(上記参照。 )記憶されたバイトの数は、五つの1ビットを出力するのに必要なバイト数によ って求められる。3バイト未満が必要なときは、後ろの1または2バイトは0と 推定される。論理的に記憶されたその3バイトは、24ビットのマスクを表す。 五つの1ビットの位置は、初めの24個のトラバースパターンオフセットの内の どれを前へ移動し、それにより最も効率的にコード化すべきであるかを示す。残 りのオフセットは、それらの相対的な順序を維持しており、五つの最もポピュラ ーなオフセットの後ろに移動される。(五つの最もポピュラーなオフセットの思 想は、上記に説明した。) 「何もするな」のマスクのサンプルは、下記の単バイト:0xF8であろう。 これは、初めの五つのオフセットを最もポピュラーなままとする。替わりとして 、 0x0 0x0 0x1F なら、最初の24個のオフセットの内の最後の五つを最もポピュラーなものとす るであろう。 単一成分画像について、JG_SEG_GTI_DATAセグメント(タイプ (8))は、画像の頭から始めて、行の順序ブロックとして順序づけられ、任意 の数(JG_SEG_WINDOW_INFOセグメント(すなわち、セグメン トタイプ(1))の中で特 定された最大値まで)の画像行を含んでよい。全部の画像行を記憶するのに充分 なデータセグメントが存在する。もし、画像が多成分を有する場合は、デコード プロセスの要求に応じて各成分に対して新しいデータセグメントが使えるように 、各成分についてJG_SEG_GTI_DATAセグメント(すなわち、セグ メントタイプ(8))がインタリーブされる。これにより、デコーダは、キャッ シュ成分データセグメントを持つ必要がなくなる。この簡単な場合は、全部の成 分が同じ副標本化因子で記憶され、各セグメントにおいて同じ数の行が記憶され て、成分セグメントは、0、1、2、0、1、2、…とインタリーブされる。も し、最後の二つの成分が最初の成分の半分の速度で副標本化された(YUVの場 合については典型的)としら、成分の順序は、0、0、1、2、0、0、1、2 、…。これは、成分1および2のデータの2倍の成分Oのデータがあるからであ る。 このGT画像データセグメントの最初のバイトは、次の内容を保持する。 1番目のバイトに続いて、ビットストリームが始まる。データは、ビット境界 に記憶される。ビットは、昇順のアドレスバイトで上位桁から下位桁に順序付け られている。フィールドは、上位ビットから下位のビットへと記憶されている。 各データ行についての圧縮ビットは、連続(連接)して記憶される(行と行の 間にバイト境界なしに)。それらビットは、上述のように、その成分に対するハ フマンツリーを使用してコードワードに 変換されGTトークンを表す。 さらに、可変(自動)DPCMモードが使用される場合は、下記のように、各 行の始めのところに1または2ビットのDPCMタイプのコードワードが記憶さ れる。 これは、後続の行のエンコード中に採用されたDPCMアルゴリズムのタイプ を示している。 セグメントタイプ(9)は、画像の許容可能な小型版(ミニチュアフォーム) を作り出すために、ストリーム中のどの点で充分なデータが受信されたかを示す 。もし、スプラッシュ画像がミニチュア画像を生成するのに使用しうるとみなさ れたときは、フラグをスプラッシュ画像に続いて置いてもよいし、またはフラグ は主画像の後に置いてもよい。 セグメントタイプ(10)は、フォーマットされたストリームの終わりを示す 。 上記に挙げた種々のセグメント、フラグおよび値は、この発明に従って圧縮さ れてエンコードされた画像データを伝送するためのフォーマットを定義する。も ちろん、前記のフォーマットは改変されてもよいし、代替フォーマットが採用さ れてもよいことを、当業者は認識するであろう。例えば、上で注記したように、 セグメントの あるものは採用任意であり、使用する必要はない。同様に、「必須の」セグメン トも改変されてもよく、または代用が用意される場合は置換されてもよい。他の 例として、ハフマンエンコード以外の代替形式のエンコードが採用され場合は、 ハフマンセグメントはそれに応じて変更することができる。結言 予め定めた非線形トラバースパターンを採用することにより、この発明は、以 前の圧縮法の不利および欠点を克服している。圧縮スピードが実質的に向上し、 この発明は、従来技術のハッシュ法において要した複雑な回路およびs時間のか かる計算の必要性を除去するものである。 この発明のいくつかの実施態様について説明した。しかしながら、この発明の 精神および範囲から逸脱することなく、種々の変更がなされ得ることが、理解さ れるであろう。したがって、この発明は、具体的な説明された実施態様に限定さ れるべきでなく、添付の請求の範囲によってのみ限定されるものと理解されたい 。
【手続補正書】 【提出日】1999年4月30日(1999.4.30) 【補正内容】 請求の範囲 1.複数の目標ピクセルおよび複数の前位ピクセルを有するピクセルアレイで、 それぞれの前位ピクセルはそのピクセルアレイ内でそれぞれの目標ピクセルより 前の位置にあるようなピクセルアレイを有する原画像を圧縮する方法であって、 (a)(1)所定の非線形トラバースパターンに従って前記ピクセルアレイをト ラバースして、ひとつの目標ピクセルと一致するひとつの前位ピクセルが有れば 、それを見つけだし、 (2)もし、そのような一致する前位ピクセルが見つけだされたら、当該 一致した目標ピクセルおよび前位ピクセルから線形的に次々たどりながら対応す る目標ピクセルと前位ピクセルを比較していって、一致する前位ピクセルストリ ングが有る場合、それを見つけだし、 (3)ステップ(1)および(2)を繰り返して、最長の一致前位ピクセ ルストリングを見つけだし、 (4)それぞれのそのような最長の一致前位ピクセルストリングを表す圧 縮表現としてコピートークンを生成し、 (5)一致前位ピクセルを有しない目標ピクセルのそれぞれについてリテ ラルトークンを生成する ことを繰り返し行うことにより原画像を圧縮して圧縮画像を得るステップ を含んでなる方法。 2.複数の目標ピクセルおよび複数の前位ピクセルを有するピクセルアレイで、 それぞれの前位ピクセルはそのピクセルアレイ内でそ れぞれの目標ピクセルより前の位置にあるようなピクセルアレイを有する原画像 を圧縮して、圧縮画像を得る方法であって、 (a)所定の非線形トラバースパターンに従って前記ピクセルアレイを繰り返し トラバースして、ひとつの目標ピクセルストリングと一致するひとつの最長の一 致前位ピクセルストリングが有れば、それを見つけだすステップと、 (b)そのような一致した目標ピクセルストリングを表す圧縮表現としてそのよ うな最長の一致前位ピクセルストリングを参照するコピートークンを生成するス テップと、 (c)一致する前位ピクセルを有しない目標ピクセルのそれぞれについてリテラ ルトークンを生成するステップと を含んでなる方法。 3.請求項1または2に記載の方法であって、さらに、 ハフマン符号化アルゴリズムを使用して前記圧縮画像をエンコードすることに より前記圧縮画像をさらに圧縮するステップを含んでなる方法。 4.請求項3に記載の方法であって、 全ての可能なコピートークンおよび全ての可能なリテラルトークンがひとつの トークンセットを形成していて、さらに、 (a)そのトークンセットについてハフマンツリーを生成するステップと、 (b)そのハフマンツリーを出力するステップと、 (c)そのハフマンツリーを出力した後に前記圧縮画像を出力するステップと を含んでなる方法。 5.請求項4に記載の方法であって、さらに、 (a)前記ハフマンツリーを出力する前にハフマンツリーをひとつの圧縮フォー マットにエンコードして、圧縮されたハフマンツリーを得るステップと、 (b)そのハフマンツリーを使用して前記エンコードされた圧縮画像をデコード するステップと、 (c)そのデコードされた圧縮画像を解凍して原画像を得るステップと を含んでなる方法。 6.請求項1に記載の方法であって、さらに、 (a)原画像を圧縮する前に原画像を部分標本化するステップを含んでなる方法 。 7.請求項1に記載の方法において、 前記所定の非線形トラバースパターンは固定長を有することを特徴とする方法 。 8.請求項6に記載の方法において、 前記所定の非線形トラバースパターンは経験的に定められることを特徴とする 方法。 9.請求項8に記載の方法において、 前記所定の非線形トラバースパターンは複数のピクセルオフセッ トを有し、その初めの24個は下記表のものであり、 ここに、「#」はエンコード中のピクセル位置を示し、1から24の数字は初め の24個のピクセルオフセットをその順に示していることを特徴とする方法。 10.請求項1または2に記載の方法において、 各最長の一致データストリングは、目標ピクセルのストリングに対応する一致 ピクセルのストリングを有し、 最長の一致データストリングを見つける際に、ピクセルアレイ内の各ピクセル は許容差を有していて、もし一致ピクセルのストリング内の一致ピクセルのそれ ぞれが目標ピクセルのストリング内の対応目標ピクセルの許容差範囲内に入って いれば、最長一致データストリング内の一致ピクセルのストリングは目標ピクセ ルのストリングに一致するとみなされる ことを特徴とする方法。 11.複数の目標ピクセルおよび複数の前位ピクセルを有するピクセルアレイで 、それぞれの前位ピクセルはそのピクセルアレイ内でそれぞれの目標ピクセルよ り前の位置にあるようなピクセルアレイを有する原画像を圧縮して、圧縮画像を 得るシステムであって、 (a)所定の非線形トラバースパターンに従って前記ピクセルアレイを繰り返し トラバースして、ひとつの目標ピクセルストリングと一致するひとつの最長の一 致前位ピクセルストリングが有れば、それを見つけだす手段と、 (b)そのような一致した目標ピクセルストリングを表す圧縮表現としてそのよ うな最長の一致前位ピクセルストリングを参照するコピートークンを生成する手 段と、 (c)一致する前位ピクセルを有しない目標ピクセルのそれぞれについてリテラ ルトークンを生成する手段と を備えてなるシステム。 12.ピクセルアレイを有する原画像を圧縮して圧縮画像を得るコンピュータプ ログラムであって、 そのプログラムはコンピュータシステムにより読み取り可能な媒体上に認識可 能に記録されており、プログラムがコンピュータシステムにより読み取られて実 行されると、 (a)所定の非線形トラバースパターンに従って前記ピクセルアレイを繰り返し トラバースして、ひとつの目標ピクセルストリングと一致するひとつの最長の一 致前位ピクセルストリングが有れば、それを見つけだす機能と、 (b)そのような一致した目標ピクセルストリングを表す圧縮表現としてそのよ うな最長の一致前位ピクセルストリングを参照するコピートークンを生成する機 能と、 (c)一致する前位ピクセルを有しない目標ピクセルのそれぞれについてリテラ ルトークンを生成する機能と を実行するようにコンピュータシステムの構成を配置するように適 合させてなるコンピュータプログラム。 13.先頭の目標ピクセルおよび複数の前位ピクセルを有するピクセルアレイで 、それぞれの前位ピクセルはそのピクセルアレイ内でそれぞれの目標ピクセルの 前に位置しているピクセルアレイよりなる画像データを圧縮する方法であって、 (a)前記画像データを逆向き非線形トラバースパターンに従って前記ピクセル アレイ内で逆向きにトラバースするステップと、 (b)前記先頭の目標ピクセルと一致する、ひとつの先頭の一致前位ピクセルが があれば、それを見つけだすステップと、 (c)もしひとつの先頭の一致前位ピクセルが見つけだされたら、前記ピクセル アレイ内で前向きの線形トラバースパターンに従って、前記先頭の目標ピクセル に続く複数のピクセルと前記先頭の一致前位ピクセルに続く複数のピクセルの両 方を、前記先頭の目標ピクセルに続く目標ピクセルが前記先頭の一致前位ピクセ ルに続く前位ピクセルと一致しなくなるまでトラバースして一致データストリン グを定義するステップと、 (d)前記非線形トラバースパターン内の前記画像データをトラバースすること を続けて前記先頭の目標ピクセルと一致する他の前位ピクセルを見つけだすこと を試みるステップと、 (e)もし他の一致前位ピクセルが見つけだされたらば、他の一致データストリ ングをステップ(c)に従って定義するステップと、 (f)ステップ(d)と(e)を繰り返してすべての一致データストリングを定 義するステップと、 (g)前記一致データストリングの何れが最長の一致データストリ ングであるかを決定するステップと、 (h)前記最長の一致データストリングをコピートークンとしてエンコードする ステップと を含んでなる方法。 14.複数の目標ピクセルおよび複数の前位ピクセルを含んでおり、それぞれの 前位ピクセルはピクセルアレイ内で目標ピクセルより前の位置にあるようなピク セルアレイよりなる画像データを圧縮する方法であって、 (a)前記前位ピクセルを、先頭の目標ピクセルに関して所定の位置を有する最 初の前位ピクセルのところで起こる始まりと、前記先頭の目標ピクセルに関して 他の所定の位置を有する最後の前位ピクセルのところで起こる終わりを有する所 定の非線形トラバースパターンに従ってトラバースするステップと、 (b)前記所定の非線形トラバースパターンに従ってトラバースされた前位ピク セルの中から、前記先頭の目標ピクセルと一致する先頭の一致前位ピクセルがあ れば、それを見つけだすステップと (c)もしひとつの先頭の一致前位ピクセルが見つけだされたら、線形トラバー スパスに従って、前記先頭の目標ピクセルに後続する目標ピクセルと前記先頭の 一致前位ピクセルに後続する前位ピクセルの両方を、各後続の目標ピクセルに前 記線形トラバースパスに沿って後続の前位ピクセルを対応させながらトラバース するステップと、 (d)それぞれの続く目標ピクセルを対応する前位ピクセルと比較して、続く目 標ピクセルが対応する続く前位ピクセルと一致し ないことが見つけだされるまで前記線形トラバースパス内のトラバースを続けて 非一致前位ピクセルを見つけだすステップと、 (e)一致データストリングを、前記先頭の一致前位ピクセルで始まり前記ピク セルアレイ内で前記非一致前位ピクセルの直前の前位ピクセルで終わるピクセル のストリングとして定義するステップと、 (f)前記非線形トラバースパターン内の前記前位ピクセルのトラバースを、前 記非線形トラバースパターン内の前記先頭の一致前位ピクセルに先行する前位ピ クセルで開始して続けて、前記先頭の目標ピクセルと一致する他の前位ピクセル を見つけ出すことを試みるステップと、 (g)もし他の一致前位ピクセルが見つけだされたらば、ステップ(c)から( e)を繰り返して他の一致データストリングを定義するステップと、 (h)ステップ(f)と(g)を最後の前位ピクセルに達するまで繰り返すステ ップと、 (i)もしただひとつの一致データストリングだけが定義されたらば、そのひと つの一致データストリングを最長の一致データストリングとするステップと、 (j)もし複数の一致データストリングが定義されたらば、この複数の一致デー タストリングの何れが最長の一致データストリングであるかを決定するステップ と、 (k)前記最長の一致データストリングをコピートークンとしてエンコードする ステップと を含んでなる方法。 15.スキャンされている目標ピクセルを示すピクセルポインタを含むデータ圧 縮システム内においてピクセルアレイを含む画像データのストリームをエンコー ドされた画像データのストリームに圧縮すると共にこのエンコードされた画像デ ータのストリームを解凍された画像に解凍する方法であって、 (a)ピクセルアレイ内の少なくともひとつのピクセルをスキャンして前記ピク セルアレイ内に位置を有するスキャンされた前位ピクセルを得るステップと、 (b)(1)前記ピクセルアレイ内に位置を有する先頭目標ピクセルをスキャン し、 (2)前記スキャンされた前位ピクセルを所定の非線形トラバースパター ンに従ってトラバースし、 (3)トラバースされた前記スキャンされた前位ピクセルの何れかがスキ ャンされた前記先頭目標ピクセルと一致するかを決定して、先頭のスキャンされ た一致前位ピクセルを見つけだし、 (4)前記ピクセルポインタを、前記ピクセルアレイ内で前記先頭の目標 ピクセルの位置の直後に続く位置にあるスキャンされる次の目標ピクセルに進め 、 (5)前記次の目標ピクセルが、前記ピクセルアレイ内で前記先頭のスキ ャンされた一致前位ピクセルの直後に続く位置を有する後続のスキャンされた前 位ピクセルと一致するかどうかを決定し、 (6)ピクセルポインタを進めて、スキャンされた一致前位ピクセルが見 いだされなくなるまでステップb(5)を繰り返して前記ピクセルポインタによ り示されたピクセルと 一致する全ての後続のスキャンされた前位ピクセルを見つけだして、一致データ ストリングを定義する ことにより、スキャンされるピクセルのストリングと一致する一致データス トリングを求めて、前記スキャンされた前位ピクセルをサーチするステップと、 (c)前記ピクセルアレイ内における前記先頭の目標ピクセルに関する、前記先 頭のスキャンされた一致前位ピクセルの位置を表すオフセットを決定するステッ プと、 (d)前記一致データストリング内のスキャンされた一致前位ピクセルの数であ る前記一致データストリングのストリング長を決定するステップと、 (e)前記一致データストリングを、前記先頭のスキャンされた一致ピクセルの オフセットと前記一致データストリングのストリング長を含むコピートークンに 変換するステップと、 (f)前記コピートークンをエンコードするステップと を含んでなる方法。 16.請求項15に記載の方法であって、さらに (a)前記ピクセルアレイを部分標本化して、画像データのストリーム内のデー タを、前記一致データストリングのために前記スキャンされた前位ピクセルをサ ーチする前に減少させるステップ を含んでなる方法。 17.それぞれのピクセルが色画像データを含んでいる請求項16に記載の方法 であって、さらに (a)前記ピクセルアレイを部分標本化する前に、それぞれのピクセルの色画像 データをフィルタするステップ を含んでなる方法。 18.色画像データがカラースペースを有している請求項17に記載の方法であ って、さらに (a)前記画像データをフィルタする前に、前記画像データのカラースペースを 他のカラースペースに変換するステップ を含んでなる方法。 19.前記カラースペースがYCrCbカラースペースである請求項18に記載 の方法。 20.請求項15に記載の方法であって、 前記ピクセルアレイ内のそれぞれのピクセルは、スキャンされた一致ピクセル が見つけだされたときを決定するのに使用される予め定められた許容差を有して いて、 スキャンされた前位ピクセルが目標ピクセルと一致するかどうかを決定す るために、 (a)スキャン中の目標ピクセルをスキャンされた前位ピクセルと比較するステ ップと、 (b)前記スキャンされた前位ピクセルが前記目標ピクセルの前記予め定められ た許容差内にあるかどうかを決定するステップと、 (c)前記スキャンされた前位ピクセルが前記目標ピクセルの前記予め定められ た許容差内にあるときは前記スキャンされた前位ピクセルを一致目標ピクセルと 見なすステップと が実行されることを特徴とする 方法。 21.請求項15に記載の方法において、 前記所定の非線形トラバースパターンは圧縮される個々の画像データのストリ ームごとに画像トラバース長を含む固定長を有しており、 前記画像トラバース長さは画像ごとに異なっている ことを特徴とする方法。 22.請求項15に記載の方法において、 前記所定の非線形トラバースパターンは、圧縮される画像データの単一のスト リームの圧縮の間に変化する長さを有している ことを特徴とする方法。 23.請求項15に記載の方法において、 前記所定の非線形トラバースパターンは、圧縮される画像データの各個々のス トリームごとに、画像ごとに異なる固定したパターンを含んでいる ことを特徴とする方法。 24.請求項15に記載の方法において、 前記所定の非線形トラバースパターンは圧縮される画像データの単一のストリ ームの圧縮の間に変化する ことを特徴とする方法。25.請求項15に記載の方法であって、 前記ピクセルアレイはアレイの限界を有し、前記所定の非線形トラバースパタ ーンは複数のセグメントを有し、その複数のセグメントのそれぞれはスキャンさ れた前位ピクセルに対応しており、 この方法は、さらに、 (a)前記複数のセグメントから前記アレイの限界の外側にある全てのセグメン トを取り除くステップ を含んでなる ことを特徴とする方法。 26.請求項25に記載の方法において、 前記所定の非線形トラバースパターンは経験的に定めたトラバースパターンで あり、その経験的に定めたパターンは経験的に定めた要領で前記複数のセグメン トがトラバースされるようにすることを特徴とする方法。 27.請求項26に記載の方法において、 トラバースされる初めの24個のセグメントの前記経験的に定めたパターンは 下記表のものであり、 ここに、「#」はスキャン中の目標ピクセルであり、1から24の 数字は1から24の順にトラバースされる初めの24個のセグメントに対応して いる ことを特徴とする方法。 28.請求項27に記載の方法において、 トラバースされる次の41個のセグメントの前記経験的に定めたパターンは下 記表のものであり、 ここに、25から65の数字は25から65の順にトラバースされる次の41個 のセグメントに対応している ことを特徴とする方法。 29.請求項26に記載の方法において、 前記所定の非線形トラバースパターンにおける前記複数のセグメントの少なく とも一つは当該トラバースパターンにおける他のセグメントよりも優先的な扱い を受け、 前記コピートークンは複数のトークン位置を有し、 前記優先的な扱いを受ける少なくとも一つのセグメントは前記コピートークン の内の前記複数のトークン位置の中から最適なトーク ン位置が割り当てられる ことを特徴とする方法。 30.請求項15に記載の方法において、 前記画像データのストリームは長方形の画像を含む ことを特徴とする方法。 31.請求項15に記載の方法において、 前記一致データストリングはハフマンアルゴリズムに従ってエンコードされる ことを特徴とする方法。 32.請求項15に記載の方法であって、 前記エンコードされた画像データのストリームは、それぞれがスキャン中のピ クセルに対応しかつスキャンされた一致前位ピクセルを有しないリテラルトーク ンと、もし一致データストリングに対応するコピートークンがあればそのコピー トークンとを含むトークン化されたデータを含んでおり、 この方法は、さらに、 (a)スキャンされた一致前位ピクセルを有しないスキャン中のピクセルの各々 をリテラルトークンに変換するステップと、 (b)もし、一致データストリングがあれば、その各々をコピートークンに変換 するステップと、 (c)前記リテラルトークンの各々と前記コピートークンの各々をハフマン圧縮 アルゴリズムを用いてエンコードして前記エンコードされた画像データのストリ ームを得るステップと、 (d)前記エンコードされた画像データのストリームを伝達するステップと、 (e)前記エンコードされた画像データのストリームをハフマン解凍アルゴリズ ムを用いてデコードして画像データのデコードされたストリームを得るステップ を含んでなる ことを特徴とする方法。 33.請求項32に記載の方法であって、さらに、 (a)前記解凍された画像を得るために、前記リテラルトークンの各々と前記コ ピートークンの各々をピクセル成分値に伸張することを含んで前記画像データの デコードされたストリームを伸張するステップ を含んでなる方法。 34.請求項33に記載の方法において、 前記エンコードされた画像データのストリームが、同時にデコード及び伸張さ れる ことを特徴とする方法。 35.請求項33に記載の方法であって、さらに、 (a)前記ピクセル成分値をフィルタして前記解凍された画像を強調するステッ を含んでなる方法。 36.請求項15に記載の方法であって、 前記解凍された画像は二次元の画像であり、 この方法は、さらに、 (a)前記二次元の画像の両次元において線形補間を実施することを含んで前記 解凍された画像を再補間するステップ を含んでなる ことを特徴とする方法。 37.請求項20に記載の方法において、 前記予め定められた許容差は可変である ことを特徴とする方法。 38.請求項20に記載の方法であって、さらに、 (a)もし比較される前記スキャンされた前位ピクセルが、比較される前記目標 ピクセルの前記予め定められた許容差外であれば、前記ピクセルアレイのサーチ を続行して他のスキャンされた前位ピクセルが前記ピクセルアレイ中の前記目標 ピクセルの直後に続く位置にあるピクセルの前記予め定められた許容差内にある かどうかを決定するステップ を含んでなる ことを特徴とする方法。 39.請求項33に記載の方法であって、さらに、 (a)前記画像データのストリームを副標本化してスプラッシ画像を得るステッ プと、 (b)前記スプラッシュ画像をエンコードしてエンコードされたスプラッシュ画 像を得るステップと、 (c)前記エンコードされたスプラッシュ画像を伝達するステップと、 (d)前記エンコードされたスプラッシュ画像をデコードしてデコドされたス プラッシュ画像を得るステップと、 (e)前記エンコードされたデータのストリームがデコード及び伸張されている 間に前記デコードされたスプラッシュ画像を表示するステップと を含んでなる方法。 40.請求項39に記載の方法であって、 前記スプラッシ画像は複数の色を含み、 この方法は、さらに、 (a)前記複数の色から最も普通の色を表すプリスプラッシコードを決定するス テップと、 (b)前記最も普通の色を前記デコードされたスプラッシ画像の背景色として表 示するステップと を含んでなる ことを特徴とする方法。 41.データ圧縮システム内においてそれ自体からの少なくともひとつのピクセ ルを受け入れるストリングに分割可能なピクセルアレイを含む画像データのスト リームを圧縮するとともにこの画像データのストリームを解凍された画像に解凍 するための方法であって、 (a)前記ピクセルアレイを所定の非線形トラバースパターンに従ってスキャン してスキャンされた前位ピクセルを得るステップと、 (b)前記スキャンされたピクセルを前記スキャンされた前位ピクセルと比較し てスキャンされたピクセルの何れかが前記スキャンされた前位ピクセルと一致す るかどうかを決定するステップと、 (c)スキャンされたピクセルと一致する少なくともひとつのスキャンされた前 位ピクセルと対応するストリングを有するスキャンされた少なくともひとつのピ クセルの各ストリングに対する一致データストリングで、前記スキャンされた一 致前位ピクセルと対応する画像データを含む一致データストリングが、もしあれ ば、それを生成するステップと、 (d)もし一致データストリングが生成されれば、そのような一致データストリ ングをコピートークンに変換するステップと、 (e)スキャンされたピクセルがスキャンされた一致前位ピクセルを有しないな らば、スキャンされたピクセルをリテラルトークンに変換するステップと、 (f)前記コピートークンがあればそれをエンコードし、また前記リテラルトー クンをエンコードされたトークンセットにエンコードするステップと、 (g)エンコードされた前記トークンセットを伝達するステップと、 (h)前記エンコードされたトークンセットをデコードしてデコードされたトー クンセットを得るステップと、 (i)前記デコードされたトークンセットを伸張して解凍された画像を得るステ ップと を含んでなる方法。 42.請求項41に記載の方法であって、 前記比較して決定するステップは、さらに、 (a)スキャンされている先頭ピクセルを選択するステップと、 (b)前記所定の非線形トラバースパターンに従って前記スキャンされた前位ピ クセルをトラバースし、前記スキャンされている先頭ピクセルが前記所定の非線 形トラバースパターンに従ってスキャンされた個々の前位ピクセルと比較される ステップと、 (c)もし前記先頭ピクセルに一致する最初のスキャンされた一致前位ピクセル が見つけだされたら、前記所定の非線形トラバースパターンで前記スキャンされ た前位ピクセルをトラバースすることを停止するステップと、 (d)前記ピクセルアレイ内の前記先頭ピクセルの直後に続く位置に見つけださ れる次のスキャンされるべきピクセルを選択するステップと、 (e)前記次のピクセルを、前記ピクセルアレイ内で前記最初のスキャンされた 一致前位ピクセルの直後に続く位置に見つけだされる後続のスキャンされた前位 ピクセルと比較するステップと、 (f)前記後続のスキャンされた前位ピクセルが前記次のピクセルと一致するか どうかを決定し、それにより他のスキャンされた一致前位ピクセルが存在するか どうかを決定するステップと、 (g)スキャンされるべき次のピクセルを選択することと、そのような次のピク セルを他の後続のスキャンされた前位ピクセルと比較することを、後続のスキャ ンされた前位ピクセルが次のピクセルと一致しなくなるまで繰り返すステップと を含む方法。 43.請求項41に記載の方法であって、 前記一致データストリングをコピートークンに変換するステップは、さらに、 (a)前記ピクセルアレイ内で前記先頭ピクセルに対比して前記スキャンされた 最初の一致前位ピクセルの位置を表すオフセットを決定するステップと、 (b)前記決定されたスキャンされた一致前位ピクセルの数を表すストリング長 さを決定するステップと、 (c)前記スキャンされた最初の一致前位ピクセルのオフセットと前記ストリン グ長さを結合して前記コピートークンを形成するステップと を含む方法。 44.請求項41に記載の方法において、 前記コピートークンおよびリテラルトークンはハフマンアルゴリズムに従って エンコードされる ことを特徴とする方法。 45.請求項41に記載の方法であって、さらに、 (a)全ての可能性のあるコピートークンとリテラルトークンに位置的に対応す るハフマンツリーを生成するステップと、 (b)前記ハフマンツリーを圧縮されたフォーマットにエンコードして圧縮され たハフマンツリーを得るステップと、 (c)前記エンコードされたトークンのセットを伝達する前に前記 圧縮されたハフマンツリーを伝達するステップと、 (d)前記圧縮されたハフマンツリーをデコードおよび伸張するステップと、 (e)前記ハフマンツリーを用いて前記エンコードされたトークンのセットをデ コードするステップと を含んでなる方法。 46.請求項41に記載の方法であって、さらに、 (a)前記エンコードされたトークンのセットを複数のブロックに区分けして、 それら複数のブロックを伝達される度に順次デコードするステップと、 (b)前記複数のブロックがデコードされるにつれて、そのブロックの各々を表 示し、各々が前記複数のブロックの一つに対応する前記デコードされた画像の部 分のそれぞれは、それがデコードされた直後に表示され得るようにするステップ を含んでなる方法。 47.請求項41に記載の方法であって、さらに、 (a)前記ピクセルアレイをスキャンする前に前記画像データのストリームを副 標本化して前記画像データのストリーム内のデータを減らすステップと、 (b)前記解凍された画像を再補間するステップと を含んでなる方法。 48.請求項41に記載の方法において、 スキャン中の各ピクセルは許容差を有し、もしスキャンされた前 位ピクセルが前記スキャン中のピクセルの許容差内に入っていれば、前記スキャ ンされた前位ピクセルが前記スキャン中のピクセルと一致することとする ことを特徴とする方法。 49.請求項48に記載の方法であって、さらに、 (a)スキャンされた一致ピクセルの平均品質を示す第二許容差を与えるステッ を含んでなる方法。 50.ピクセルアレイを含む画像データのストリームをエンコードされた画像デ ータのストリームに圧縮すると共にこのエンコードされた画像データのストリー ムを解凍された画像に解凍するための、スキャンされる目標ピクセルを示すピク セルポインタを含むデータ圧縮システムであって、 (a)ピクセルアレイ内の少なくともひとつのピクセルをスキャンして前記ピク セルアレイ内に位置を有するスキャンされた前位ピクセルを得るスキャナと、 (b)(1)前記ピクセルアレイ内に位置を有する先頭目標ピクセルをスキャン する手段と、 (2)前記スキャンされた前位ピクセルを所定の非線形トラバースパター ンを用いててトラバースする手段と、 (3)前記スキャンされた前位ピクセルの何れかがスキャンされた前記先 頭目標ピクセルと一致するかを決定して、先頭のスキャンされた一致前位ピクセ ルを見つけだす第1比較手段と、、 (4)前記ピクセルポインタを、前記ピクセルアレイ内で前記先頭の目標 ピクセルの位置の直後に続く位置にあるスキャンされる次の目標ピクセルに進め る手段と、 (5)前記次の目標ピクセルが、前記ピクセルアレイ内で前記先頭のスキ ャンされた一致前位ピクセルの直後に続く位置を有する後続のスキャンされた前 位ピクセルと一致するかどうかを決定する第2比較手段と、 (6)ピクセルポインタを進めて、スキャンされた一致前位ピクセルが見 いだされなくなるまでステップb(5)を繰り返して前記ピクセルポインタによ り示されたピクセルと一致する全ての後続のスキャンされた前位ピクセルを見つ けだして、一致データストリングを定義する手段と を含む、スキャンされるピクセルのストリングと一致する一致データストリ ングを求めて、前記スキャンされた前位ピクセルをサーチする手段と、 (c)前記ピクセルアレイ内における前記先頭の目標ピクセルに関する、前記先 頭のスキャンされた一致前位ピクセルの位置を表すオフセットを決定する手段と 、 (d)前記一致データストリング内のスキャンされた一致前位ピクセルの数であ る前記一致データストリングのストリング長を決定する手段と、 (e)前記一致データストリングを、前記先頭のスキャンされた一致前位ピクセ ルのオフセットと前記一致データストリングのストリング長を含むコピートーク ンに変換するコンバータと、 (f)前記コピートークンをエンコードするエンコーダと を含んでなるシステム。51.請求項50に記載のシステムであって、さらに、 (a)前記スキャンされた前位ピクセルをサーチする手段が作動する前に前記ピ クセルアレイを副標本化して画像データストリーム内のデータを減らす標本化装 を含んでなるシステム。 52.請求項51に記載のシステムであって、 各ピクセルは色画像データをんでおり、 このシステムは、さらに、 (a)前記標本化装置が前記ピクセルアレイを副標本化する前に各ピクセルの前 記色画像データをフィルタリングするフィルタを含んでなる ことを特徴とするシステム。 53.請求項52に記載のシステムであって、 前記色画像データはカラースペースを有しており、 このシステムは、さらに、 (a)前記色画像データをフィルタリングする前に前記画像データのカラースペ ースを他のカラースペースに変換するコンバータ を含んでなる ことを特徴とするシステム。 54.請求項53に記載のシステムにおいて、 前記カラースペースはYCrCbカラースペースである ことを特徴とするシステム。 55.請求項50に記載のシステムであって、 前記ピクセルアレイの各ピクセルはスキャンされた一致前位ピクセルが見つけ だされたときを決定するのに使用される予め定められた許容差を有していて、 前記第1および第2比較手段の各々は、 (a)スキャン中の目標ピクセルをスキャンされた前位ピクセルと比較するコン パレータと、 (b)前記スキャンされた前位ピクセルが前記目標ピクセルの前記予め定められ た許容差の範囲内にあるかどうかを決定する手段と、 (c)前記スキャンされた前位ピクセルが前記目標ピクセルの前記予め定められ た許容差内にあるときは前記スキャンされた前位ピクセルをスキャンされた一致 前位ピクセルと同定する手段と を含んでいる ことを特徴とするシステム。 56.請求項50に記載のシステムにおいて、 前記所定の非線形トラバースパターンは圧縮される個々の画像データのストリ ームごとに画像トラバース長さを含む固定長を有しており、 前記画像トラバース長さは画像ごとに異なっている ことを特徴とするシステム。 57.請求項50に記載のシステムにおいて、 前記所定の非線形トラバースパターンは、圧縮される画像データの単一のスト リームの圧縮の間に変化する長さを有している ことを特徴とするシステム。 58.請求項50に記載のシステムにおいて、 前記所定の非線形トラバースパターンは、圧縮される画像データの各個々のス トリームに対して、画像ごとに異なる固定パターンを含んでいる ことを特徴とするシステム。 59.請求項50に記載のシステムにおいて、 前記所定の非線形トラバースパターンは圧縮される画像データの単一のストリ ームの圧縮の間に変化する ことを特徴とするシステム。 60.請求項50に記載のシステムであって、 前記ピクセルアレイはアレイの限界を有しており、 前記所定の非線形トラバースパターンは、それぞれがスキャンされた前位ピク セルに対応する複数のセグメントを含んでおり、 このシステムは、さらに、 (a)前記複数のセグメントから前記アレイの限界の外側にある全てのセグメン トを取り除く手段 を含んでなる ことを特徴とするシステム。 61.請求項60に記載のシステムにおいて、 前記所定の非線形トラバースパターンは経験的に定めたトラバースパターンで あり、前記スキャンされた前位ピクセルをトラバースする手段は経験的に定めら れた要領で前記複数のセグメントがトラバースされるようにする ことを特徴とするシステム。 62.請求項61に記載のシステムにおいて、 トラバースされる初めの24個のセグメントの前記経験的に定めたパターンは 下記表のものであり、 ここに、「#」はスキャン中の目標ピクセルであり、1から24の数字は1から 24の順にトラバースされる初めの24個のセグメントに対応している ことを特徴とするシステム。 63.請求項62に記載のシステムにおいて、 トラバースされる次の41個のセグメントの前記経験的に定められたパターン は下記表のものであり、 ここに、25から65の数字は25から65の順にトラバースされる次の41個 のセグメントに対応している ことを特徴とするシステム。 64.請求項61に記載のシステムでにおいて、 前記経験的に定められたパターンにおける複数のセグメントの少なくとも一つ は前記経験的に定められたパターンにおける他のセグメントよりも優先的な扱い を受け、 前記コピートークンは複数のトークン位置を有し、 前記優先的な扱いを受けるセグメントには前記コピートークンの内の前記複数 のトークン位置の中から最適なトークン位置が割り当てられる ことを特徴とするシステム。 65.請求項50に記載のシステムにおいて、 前記画像データのストリームは長方形の画像を含む ことを特徴とするシステム。 66.請求項50に記載のシステムにおいて、 前記一致データストリングはハフマンアルゴリズムに従ってエンコードされる ことを特徴とするシステム。 67.請求項50に記載のシステムであって、 前記エンコードされた画像データのストリームは、それぞれがスキャン中のピ クセルに対応しかつスキャンされた一致前位ピクセルを有しないリテラルトーク ンと、もし一致データストリングに対応するコピートークンがあればそのコピー トークンとを含むトークン化されたデータを含んでおり、 このシステムは、さらに、 (a)スキャンされた一致前位ピクセルを有しないスキャン中のピクセルの各々 をリテラルトークンに変換するコンバータと、 (b)もし、一致データストリングがあれば、その各々をコピートークンに変換 するコンバータと、 (c)前記リテラルトークンの各々と前記コピートークンの各々をハフマン圧縮 アルゴリズムを用いてエンコードして前記エンコードされた画像データのストリ ームを得るエンコーダと、 (d)前記エンコードされた画像データのストリームを伝達するトランスミッタ と、 (e)ハフマン解凍アルゴリズムを用いて前記エンコードされた画像データのス トリームをデコードして画像データのデコードされたストリームを得るデコーダ を含んでなる ことを特徴とするシステム。 68.請求項67に記載のシステムであって、さらに、 (a)前記解凍された画像を得るために、前記リテラルトークンの各々と前記コ ピートークンの各々をピクセル成分値に伸張することを含んで前記画像データの デコードされたストリームを伸張する手段 を含んでなるシステム。 69.請求項68に記載のシステムにおいて、 前記エンコードされた画像データのストリームが、同時にデコード及び伸張さ れる ことを特徴とするシステム。 70.請求項68に記載のシステムであって、さらに、 (a)前記ピクセル成分値をフィルタして前記解凍された画像を強調するフィル を含んでなるシステム。 71.請求項50に記載のシステムであって、 前記解凍された画像は二次元の画像であり、 このシステムは、さらに、 (a)前記二次元の画像の両次元において線形補間を実施する手段を含む前記解 凍された画像を再補間する手段 を含んでなる ことを特徴とするシステム。 72.請求項55に記載のシステムにおいて、 前記予め定められた許容差は可変である ことを特徴とするシステム。 73.請求項55に記載のシステムであって、さらに、 (a)もし前記コンパレータにより比較されている前記スキャンされた前位ピク セルが、同コンパレータにより比較されている前記目標ピクセルの前記予め定め られた許容差外であれば、前記ピクセルアレイのサーチを続行して他のスキャン された前位ピクセルが前記ピクセルアレイ中の前記目標ピクセルの直後に続く位 置にあるピクセルの前記予め定められた許容差内にあるかどうかを決定する手段 を含んでなるシステム。 74.請求項68に記載のシステムであって、さらに、 (a)前記画像データのストリームを副標本化してスプラッシ画像を得るサンプ ラと、 (b)前記スプラッシ画像をエンコードしてエンコードされたスプラッシ画像を 得るエンコーダと、 (c)前記エンコードされたスプラッシ画像を伝達するトランスミッタと、 (d)前記エンコードされたスプラッシ画像をデコードしてデコードされたスプ ラッシ画像を得るデコーダと、 (e)前記エンコードされたデータのストリームがデコード及び伸張されている 間に前記デコードされたスプラッシ画像を表示するディスプレイと を含んでなるシステム。 75.請求項74に記載のシステムであって、 前記スプラッシュ画像は複数の色を含み、 このシステムは、さらに、 (a)前記複数の色から最も普通の色を表すプリスプラッシコードを決定する手 段と、 (b)前記最も普通の色を前記デコードされたスプラッシ画像の背景色として表 示するディスプレイと を含んでなる ことを特徴とするシステム。 76.それ自体からの少なくともひとつのピクセルを受け入れるストリングに分 割可能なピクセルアレイを含む画像データのストリームを圧縮すると共にこの画 像データのストリームを解凍された画像に解凍するためのシステムであって、 (a)前記ピクセルアレイを所定の非線形トラバースパターンでスキャンしてス キャンされた前位ピクセルを得るスキャナと、 (b)前記スキャンされたピクセルを前記スキャンされた前位ピクセルと比較し てスキャンされたピクセルの何れかが前記スキャンされた前位ピクセルと一致す るかどうかを決定するコンパレータと、 (c)スキャンされたピクセルと一致する少なくともひとつのスキャンされた前 位ピクセルと対応するストリングを有するスキャンされた少なくともひとつのピ クセルの各ストリングに対する一致データストリングで、前記スキャンされた一 致前位ピクセ ルと対応する画像データを含む一致データストリングが、もしあれば、それを生 成する手段と、 (d)もし一致データストリングが生成されれば、そのような一致データストリ ングをコピートークンに変換するコンバータと、 (e)スキャンされたピクセルがスキャンされた一致前位ピクセルを有しないな らば、スキャンされたピクセルをリテラルトークンに変換するコンバータと、 (f)前記コピートークンがあればそれをエンコードし、また前記リテラルトー クンをエンコードされたトークンセットにエンコードするエンコーダと、 (g)エンコードされた前記トークンセットを伝達するトランスミッタと、 (h)前記エンコードされたトークンセットをデコードしてデコードされたトー クンセットを得るデコーダと、 (i)前記デコードされたトークンセットを伸張して解凍された画像を得る手段 と を含んでなるシステム。77.請求項76に記載のシステムにおいて、 前記コンパレータは、さらに、 (a)スキャン中の先頭ピクセルを選択する手段と、 (b)前記所定の非線形トラバースパターンに従って前記スキャンされた前位ピ クセルをトラバースし、前記スキャン中の先頭ピクセルが前記所定の非線形トラ バースパターンに従ってスキャンされた個々の前位ピクセルと比較される手段と (c)もし前記先頭ピクセルに一致する最初のスキャンされた一致 前位ピクセルが見つけだされたら、前記所定の非線形トラバースパターンで前記 スキャンされた前位ピクセルをトラバースすることを停止する手段と、 (d)前記ピクセルアレイ内の前記先頭ピクセルの直後に続く位置に見つけださ れる次のスキャンされるべきピクセルを選択する手段と、 (e)前記次のピクセルを、前記ピクセルアレイ内で前記最初のスキャンされた 一致ピクセルの直後に続く位置において見つけだされる後続のスキャンされた前 位ピクセルと比較する手段と、 (f)前記後続のスキャンされた前位ピクセルが前記次のピクセルと一致するか どうかを決定し、それにより他のスキャンされた一致前位ピクセルが存在するか どうかを決定する手段と、 (g)スキャンされるべき次のピクセルを選択することと、そのような次のピク セルを他の後続のスキャンされた前位ピクセルと比較することを、後続のスキャ ンされた前位ピクセルがそのような次のピクセルと一致しなくなるまで繰り返す 手段とを含む ことを特徴とするシステム。 78.請求項76に記載のシステムであって、 前記一致データストリングをコピートークンに変換する前記コンバータは、さ らに、 (a)前記ピクセルアレイ内で前記先頭ピクセルに対比して前記スキャンされた 最初の一致前位ピクセルの位置を表すオフセットを決定する手段と、 (b)前記決定されたスキャンされた一致前位ピクセルの数を表すストリング長 さを決定する手段と、 (c)前記スキャンされた最初の一致ピクセルのオフセットと前記ストリング長 さを結合して前記コピートークンを形成する手段と を含む ことを特徴とするシステム。 79.請求項76に記載のシステムにおいて、 前記コピートークンおよびリテラルトークンはハフマンアルゴリズムに従って エンコードされる ことを特徴とするシステム。 80.請求項76に記載のシステムであって、さらに、 (a)全ての可能性のあるコピートークンとリテラルトークンに位置的に対応す るハフマンツリーを生成する手段と、 (b)前記ハフマンツリーを圧縮されたフォーマットにエンコードして圧縮され たハフマンツリーを得るエンコーダと、 (c)前記エンコードされたトークンのセットを伝達する前に前記圧縮されたハ フマンツリーを伝達するトランスミッタと、 (d)前記圧縮されたハフマンツリーをデコード及び伸張するデコータと、 (e)前記ハフマンツリーを用いて前記エンコードされたトークンのセットをデ コードする手段と を含んでなるシステム。 81.請求項76に記載のシステムであって、さらに、 (a)前記エンコードされたトークンのセットを複数のブロックに区分けして、 それら複数のブロックを伝達される度に順次デコードする手段と、 (b)前記複数のブロックがデコードされるにつれて、そのブロックの各々を表 示し、各々が前記複数のブロックの一つに対応する前記デコードされた画像の部 分のそれぞれは、それがデコードされた直後に表示され得るようになっているデ ィスプレイユニットと を含んでなるシステム。 82.請求項76に記載のシステムであって、さらに、 (a)前記ピクセルアレイをスキャンする前に前記画像データのストリームを副 標本化して前記画像データのストリーム内のデータを減らすサンプラと、 (b)前記解凍された画像を再補間する手段と を含んでなるシステム。 83.請求項76に記載のシステムにおいて、 スキャンされている各ピクセルは許容差を有し、もしスキャンされた前位ピク セルが前記スキャンされているピクセルの許容差内に入っていれば、前記スキャ ンされた前位ピクセルが前記スキャンされているピクセルと一致することとする ことを特徴とするシステム。 84.請求項83に記載のシステムであって、さらに、 (a)スキャンされた一致ピクセルの平均品質を示す第二許容差を与える手段を 含んでなるシステム。 85.ピクセルアレイを含む画像データのストリームをエンコードされた画像デ ータのストリームに圧縮すると共にこのエンコードされた画像データのストリー ムを解凍された画像に解凍するためのコンピュータプログラムであって、そのコ ンピュータプログラムは、スキャンされる目標ピクセルを示すピクセルポインタ を含むコンピュータシステムにより読み取り可能な媒体上に認識可能に記録され ており、プログラムがコンピュータシステムにより読み取られて実行されると、 前記コンピュータシステムにより (a)ピクセルアレイ内の少なくともひとつのピクセルをスキャンして前記ピク セルアレイ内に位置を有するスキャンされた前位ピクセルを得る機能と、 (b)(1)前記ピクセルアレイ内に位置を有する先頭目標ピクセルをスキャン し、 (2)前記スキャンされた前位ピクセルを所定の非線形トラバースパター ンに従ってトラバースし、 (3)トラバースされた前記スキャンされた前位ピクセルの何れかがスキ ャンされた前記先頭目標ピクセルと一致するかを決定して、先頭のスキャンされ た一致前位ピクセルを見つけだし、 (4)前記ピクセルポインタを、前記ピクセルアレイ内で前記先頭の目標 ピクセルの位置の直後に続く位置にあるスキャンされる次の目標ピクセルに進め 、 (5)前記次の目標ピクセルが、前記ピクセルアレイ内で前記先頭のスキ ャンされた一致前位ピクセルの直後に続く位置を有する後続のスキャンされた前 位ピクセルと一致するかどうかを決定し、 (6)ピクセルポインタを進めて、スキャンされた一致前位ピクセルが見 いだされなくなるまで機能b(5)を繰り返して前記ピクセルポインタにより示 されたピクセルと一致する全ての後続のスキャンされた前位ピクセルを見つけだ して、一致データストリングを定義する ことにより、スキャンされるピクセルのストリングと一致する一致データス トリングを求めて、前記スキャンされた前位ピクセルをサーチする機能と、 (c)前記ピクセルアレイ内における前記先頭の目標ピクセルに関する、前記先 頭のスキャンされた一致前位ピクセルの位置を表すオフセットを決定する機能と 、 (d)前記一致データストリング内のスキャンされた一致前位ピクセルの数であ る前記一致データストリングのストリング長を決定する機能と、 (e)前記一致データストリングを、前記先頭のスキャンされた一致ピクセルの オフセットと前記一致データストリングのストリング長を含むコピートークンに 変換する機能と、 (f)前記コピートークンをエンコードする機能と を実行するようにコンピュータシステムの構成を配置するように適合させてなる コンピュータプログラム。86.請求項85に記載のコンピュータプログラムであって、さら (a)前記一致データストリングを見つけようと前記スキャンされた前位ピクセ ルの中をサーチする前に、前記ピクセルアレイを副標本化して画像データのスト リーム内のデータを減少させる機能 を実行するコンピュータプログラム。 87.請求項85に記載のコンピュータプログラムであって、 前記ピクセルアレイ内のそれぞれのピクセルは、スキャンされた一致前位ピク セルが見つけだされたときを決定するのに使用される予め定められた許容差を有 していて、スキャンされた前位ピクセルが目標ピクセルと一致するかどうかを決 定するために、 このコンピュータプログラムが、さらに、 (a)スキャン中の目標ピクセルをスキャンされた前位ピクセルと比較する機能 と、 (b)前記スキャンされた前位ピクセルが前記目標ピクセルの前記予め定められ た許容差内にあるかどうかを決定する機能と、 (c)前記スキャンされた前位ピクセルが前記目標ピクセルの前記予め定められ た許容差内にあるときは前記スキャンされた前位ピクセルをスキャンされた一致 ピクセルと見なす機能と を実行する ことを特徴とするコンピュータプログラム。 88.請求項85に記載のコンピュータプログラムにおいて、 前記所定の非線形トラバースパターンは圧縮される個々の画像データのストリ ームごとに画像トラバース長さを含む固定長を有しており、 前記画像トラバース長さは画像ごとに異なっている ことを特徴とするコンピュータプログラム。 89.請求項85に記載のコンピュータプログラムであって、 前記ピクセルアレイはアレイの限界を有し、前記所定の非線形トラバースパタ ーンは複数のセグメントを有し、その複数のセグメントのそれぞれはスキャンさ れた前位ピクセルに対応しており、 このコンピュータプログラムは、さらに、 (a)前記複数のセグメントから前記アレイの限界の外側にある全てのセグメン トを取り除く機能 を実行する ことを特徴とするコンピュータプログラム。 90.請求項85に記載のコンピュータプログラムであって、 前記一致データストリングはハフマンアルゴリズムに従ってエンコードされる ことを特徴とするコンピュータプログラム。 91.請求項85に記載のコンピュータプログラムにおいて、 前記エンコードされた画像データのストリームは、それぞれがスキャン中のピ クセルに対応しかつスキャンされた一致前位ピクセルを有しないリテラルトーク ンと、もし一致データストリングに対応するコピートークンがあればそのコピー トークンとを含むトークン化されたデータを含んでおり、 このコンピュータプログラムは、さらに、 (a)スキャンされた一致前位ピクセルを有しないスキャン中の各ピクセルの各 々をリテラルトークンに変換する機能と、 (b)もし、一致データストリングがあれば、その各々をコピートークンに変換 する機能と、 (c)前記リテラルトークンの各々と前記コピートークンの各々をハフマン圧縮 アルゴリズムを用いてエンコードして前記エンコードされた画像データのストリ ームを得る機能と、 (d)前記エンコードされた画像データのストリームを伝達する機能と、 (e)前記エンコードされた画像データのストリームをハフマン解凍アルゴリズ ムを用いてデコードして画像データのデコードされたストリームを得る機能と を実行する ことを特徴とするコンピュータプログラム。 92.請求項91に記載のコンピュータプログラムであって、さらに、 (a)前記解凍された画像を得るために、前記リテラルトークンの各々と前記コ ピートークンの各々をピクセル成分値に伸張することを含んで前記画像データの デコードされたストリームを伸張する機能 を実行するコンピュータプログラム。 93.請求項92に記載のコンピュータプログラムにおいて、 前記エンコードされた画像データのストリームが、同時にデコード及び伸張さ れる ことを特徴とするコンピュータプログラム。 94.請求項92に記載のコンピュータプログラムであって、さらに、 (a)前記画像データのストリームを副標本化してスプラッシ画像を得る機能と (b)前記スプラッシ画像をエンコードしてエンコードされたスプラッシ画像を 得る機能と、 (c)前記エンコードされたスプラッシ画像を伝達する機能と、 (d)前記エンコードされたスプラッシ画像をデコードしてデコードされたスプ ラッシ画像を得る機能と、 (e)前記エンコードされたデータのストリームがデコード及び伸張されている 間に前記デコードされたスプラッシ画像を表示する機能と を実行するコンピュータプログラム。 95.それ自体からの少なくともひとつのピクセルを受け入れるストリングに分 割可能なピクセルアレイを含む画像データのストリームを圧縮すると共にこの画 像データのストリームを解凍された画像に解凍するためのコンピュータプログラ ムであって、そのコンピュータプログラムはコンピュータシステムにより読み取 り可能な媒体上に認識可能に記録されており、プログラムがコンピュータシステ ムにより読み取られて実行されると、前記コンピュータシステムにより (a)前記ピクセルアレイを所定の非線形トラバースパターンに従ってスキャン してスキャンされた前位ピクセルを得る機能と、 (b)前記スキャン中のピクセルを前記スキャンされた前位ピクセルと比較して スキャン中のピクセルの何れかが前記スキャンさ れた前位ピクセルと一致するかどうかを決定する機能と、 (c)スキャンされたピクセルと一致する少なくともひとつのスキャンされた前 位ピクセルと対応するストリングを有するスキャンされた少なくともひとつのピ クセルの各ストリングに対する一致データストリングで、前記スキャンされた一 致前位ピクセルと対応する画像データを含む一致データストリングを生成する機 能と、 (d)もし一致データストリングが生成されれば、そのような一致データストリ ングをコピートークンに変換する機能と、 (e)スキャンされたピクセルがスキャンされた一致前位ピクセルを有しないな らば、スキャンされたピクセルをリテラルトークンに変換する機能と、 (f)前記コピートークンがあればそれをエンコードし、また前記リテラルトー クンをエンコードされたトークンセットにエンコードする機能と、 (g)エンコードされた前記トークンセットを伝達する機能と、 (h)前記エンコードされたトークンセットをデコードしてデコードされたトー クンセットを得る機能と、 (i)前記デコードされたトークンセットを伸張して解凍された画像を得る手段 と を実行するようにコンピュータシステムの構成を配置するように適合させてなる コンピュータプログラム。96.請求項95に記載のコンピュータプログラムであって、 前記スキャン中のピクセルを比較して決定する機能は、さらに、 (a)スキャンされている先頭ピクセルを選択する機能と、 (b)前記所定の非線形トラバースパターンに従って前記スキャンされた前位ピ クセルをトラバースし、前記スキャンされている先頭ピクセルが前記所定の非線 形トラバースパターンに従ってスキャンされた個々の前位ピクセルと比較される 機能と、 (c)もし前記先頭ピクセルに一致する最初のスキャンされた一致前位ピクセル が見つけだされたら、前記所定の非線形トラバースパターンで前記スキャンされ た前位ピクセルをトラバースすることを停止する機能と、 (d)前記ピクセルアレイ内の前記先頭ピクセルの直後に続く位置に見つけださ れる次のスキャンされるべきピクセルを選択する機能と、 (e)前記次のピクセルを、前記ピクセルアレイ内で前記最初のスキャンされた 一致前位ピクセルの直後に続く位置に見つけだされる後続のスキャンされた前位 ピクセルと比較する機能と、 (f)前記後続のスキャンされた前位ピクセルが前記次のピクセルと一致するか どうかを決定し、それにより他のスキャンされた一致前位ピクセルが存在するか どうかを決定する機能と、 (g)スキャンされるべき次のピクセルを選択することと、そのような次のピク セルを他の後続のスキャンされた前位ピクセルと比較することを、後続のスキャ ンされた前位ピクセルが次のピクセルと一致しなくなるまで繰り返す機能と を含んでなるコンピュータプログラム。 97.請求項96に記載のコンピュータプログラムであって、 前記一致データストリングをコピートークンに変換する前記機能 は、さらに、 (a)前記ピクセルアレイ内で前記先頭ピクセルに対比して前記スキャンされた 最初の一致ピクセルの位置を表すオフセットを決定する機能と、 (b)前記決定されたスキャンされた一致前位ピクセルの数を表すストリング長 さを決定する機能と、 (c)前記スキャンされた最初の一致前位ピクセルのオフセットと前記ストリン グ長さを結合して前記コピートークンを形成する機能と を含んでなるコンピュータプログラム。 98.請求項95に記載のコンピュータプログラムであって、さらに、 (a)全ての可能性のあるコピートークンとリテラルトークンに位置的に対応す るハフマンツリーを生成する機能と、 (b)前記ハフマンツリーを圧縮されたフォーマットにエンコードして圧縮され たハフマンツリーを得る機能と、 (c)前記エンコードされたトークンのセットを伝達する前に前記圧縮されたハ フマンツリーを伝達する機能と、 (d)前記圧縮されたハフマンツリーをデコード及び伸張する機能と、 (e)前記ハフマンツリーを用いて前記エンコードされたトークンのセットをデ コードする機能と を実行するコンピュータプログラム。 99.請求項95に記載のコンピュータプログラムであって、さら に、 (a)前記エンコードされたトークンのセットを複数のブロックに区分けして、 それら複数のブロックを伝達される度に順次デコードするステップと、 (b)前記複数のブロックがデコードされるにつれて、そのブロックの各々を表 示し、各々が前記複数のブロックの一つに対応する前記デコードされた画像の部 分のそれぞれは、それがデコードされた直後に表示され得るようにする機能と を実行するコンピュータプログラム。 100.請求項95に記載のコンピュータプログラムにおいて、 スキャンされている各ピクセルは許容差を有し、もしスキャンされた前位ピク セルが前記スキャンされているピクセルの許容差内に入っていれば、前記スキャ ンされた前位ピクセルが前記スキャンされているピクセルと一致することとする ことを特徴とするコンピュータプログラム。 101.入力データストリングをからなる2またはそれ以上のグループの複数の 入力データセグメントを含む入力データストリームを圧縮する方法であって、 (a)入力データストリームを読み込んで、前位データストリングからなる2ま たはそれ以上のグループの複数の前位データセグメントを含む前位データを得る ステップと、 (b)前記前位データを、それぞれ前位データストリングを含み前記入力データ ストリームからの入力データストリングと一致す る最長の一致前位データストリングを求めて、所定の非線形トラバースパターン でサーチするステップと、 (c)前記前位データ内に最長の一致前位データストリングが見いだせたらば、 その最長の一致前位データストリングを圧縮して圧縮ストリングを得ると共にこ の圧縮ストリングをコピートークンとしてエンコードするステップと、 (d)一致前位データセグメントを有しない入力データセグメントについて、そ のような入力データセグメントをリテラルトークンとしてエンコードするステッ プと、 (e)前記コピートークンがあればそれを、またリテラルトークンを出力するス テップと を含んでなる方法。102.請求項101に記載の方法において、 前記入力データストリームは複数のピクセルを有する画像を含み、 前記複数の前位データセグメントは前記画像内に複数の前位ピクセルを含むと ともに、前記複数の入力セグメントは前記画像内に複数の目標ピクセルを含み、 前記所定の非線形トラバースパターンは前位ピクセルと選択された目標ピクセ ルとの一致頻度に基づいて経験的に決定された変化するパターンである ことを特徴とする方法。 103.請求項101に記載の方法において、 前記目標ピクセルは許容差レベルを有し、 前位ピクセルのストリングは、もし前記前位ピクセルのストリン グが前記目標ピクセルのストリングの前記許容差レベル内にあれば、前記目標ピ クセルのストリングに一致するものとみられる ことを特徴とする方法。 104.入力データストリングをからなる2またはそれ以上のグループの複数の 入力データセグメントを含む入力データストリームを圧縮するシステムであって 、 (a)入力データストリームを読み込んで、前位データストリングからなる2ま たはそれ以上のグループの複数の前位データセグメントを含む前位データを得る 手段と、 (b)前記前位データを、それぞれ前位データストリングを含み前記入力データ ストリームからの入力データストリングと一致する最長の一致前位データストリ ングを求めて、所定の非線形トラバースパターンでサーチする手段と、 (c)前記前位データ内に最長の一致前位データストリングが見いだせたらば、 その最長の一致前位データストリングを圧縮して圧縮ストリングを得る圧縮手段 及びこの圧縮ストリングをコピートークンとしてエンコードするエンコーダと、 (d)一致前位データセグメントを有しない入力データセグメントについて、そ のような入力データセグメントをリテラルトークンとしてエンコードするエンコ ーダと、 (e)前記コピートークンがあればそれを、またリテラルトークンを出力するポ ートと を含んでなるシステム。 105.ある順序を有している複数のデータセグメントを含むデー タを圧縮する方法で、前記複数のデータセグメントは目標セグメントと前位セグ メントを含み、前記前位セグメントは前記複数のデータセグメントの順序内で前 記目標セグメントに先行しているデータを圧縮する方法であって、 (a)先頭の目標セグメントを選択するステップと、 (b)前記前位セグメントを所定の非線形トラバースパターンに従ってトラバー スするステップと、 (c)前記先頭の目標セグメントで始まる目標セグメントのストリングと一致す る、前記所定の非線形トラバースパターン内にある先頭の一致前位セグメントを 有する最長の一致する前位セグメントのストリングを見つけだすステップと を含んでなる方法。106.請求項105に記載の方法において、 前記ストリングを見つけだすステップは、 (a)前記先頭の一致前位セグメントから始めて、前記前位セグメントを第一の 線形トラバースパスでトラバースするステップと、 (b)前記先頭の目標セグメントから始めて、第二の線形トラバースパスに沿っ て各々が第一の線形トラバースパスに沿う対応する前位セグメントを有する前記 目標セグメントを、前記第二の線形トラバースパスでトラバースするステップと (c)前記第二の線形トラバースパスに沿って存在する各目標セグメントを前記 第一の線形トラバースパスに沿って存在する前記対応する前位セグメントと比較 し、各目標セグメントが前記対応する前位セグメントと一致するかどうかを決定 するス テップと、 (d)もし、目標セグメントが前記対応する前位セグメントと一致しないならば 、前記前位セグメントと目標セグメントのトラバースを停止し、前記先頭の一致 前位セグメントで始る一致前位セグメントの数は第一の一致ストリング長を有す る第一の一致ストリングを含むこととなるステップと を含んでいる ことを特徴とする方法。 107.請求項106に記載の方法であって、 前記見つけだすステップは、さらに、 (a)前記停止するステップの後に、前記先頭の一致前位セグメントに先行して いる前記前位セグメントを前記所定の非線形トラバースパターンでトラバースし 続けるステップと、 (b)もし、前記非線形トラバースパターンの範囲内に前記先頭の目標セグメン トと一致する次の一致前位セグメントがあれば、それを見つけだすステップと、 (c)前記次の一致前位セグメントから始めて前記前位セグメントを第三の線形 トラバースパスでトラバースするステップと、 (d)前記先頭の目標セグメントから始めて、且つ前記第二の線形トラバースパ スに沿って前記第三の線形トラバースパスに沿って対応する前位セグメントを有 する前記目標セグメントを前記第二の線形トラバースパスでトラバースするステ ップと、 (e)前記第二の線形トラバースパスに沿って存在する各目標セグメントを前記 第三の線形トラバースパスに沿って存在する前記対応する前位セグメントと比較 し、各目標セグメントが前 記対応する前位セグメントに一致するかどうかを決定するステップと、 (f)もし、目標セグメントが前記対応する前位セグメントに一致しないならば 、前記前位セグメントと目標セグメントのトラバースを停止し、前記次の一致前 位セグメントで始る一致前位セグメントの数が第二の一致ストリング長を有する 第二の一致ストリングを含むこととなるステップと、 (g)前記第一の一致ストリングの前記第一の一致ストリング長を前記第二の一 致ストリングの前記第二の一致ストリング長と比較し、いずれが長いかを決定す るステップと、 (h)前記の長い方の長さを有する一致ストリングを前位セグメントの最長一致 ストリングとして定義するステップと を含んでなる方法。 108.請求項105に記載の方法において、 前記最長一致ストリングを見つけだすステップは、前記前位セグメントに許容 レベルを適用し、前位セグメントが目標セグメントに一致するかどうかを決定す るステップを含む ことを特徴とする方法。 109.請求項105に記載の方法において、 前記所定の非線形トラバースパターンは固定した長さを有することを特徴とす る方法。 110.請求項105に記載の方法において、 前記所定の非線形トラバースパターンは固定した長さを有し、前 記所定の非線形トラバースパターンによりトラバースされる最初の24個のデー タセグメントは下記表のものであり、 ここに、「#」は前記先頭の目標セグメントを示し、1から24の数字は1から 24の順に、トラバースされる最初の24個のデータを示している ことを特徴とする方法。 111.請求項105に記載の方法において、 前記データは画像データを含み、前記複数のデータセグメントは複数のピクセ ルを含んでいる ことを特徴とする方法。 112.ある順序を有している複数のタセグメントを含むデータを圧縮するシス テムで、前記複数のセグメントは目標セグメントと前位セグメントを含み、前記 前位セグメントは前記複数のセグメントの順序内で前記目標セグメントに先行し ているデータを圧縮するシステムであって、 (a)先頭の目標セグメントを選択する手段と、 (b)前記前位セグメントを所定の非線形トラバースパターンに従 ってトラバースする手段と、 (c)前記先頭の目標セグメントで始まる目標セグメントのストリングと一致す る、前記所定の非線形トラバースパターン内にある先頭の一致前位セグメントを 有する最長の一致する前位セグメントのストリングを見つけだす手段と を含んでなるシステム。113.請求項112に記載のシステムにおいて、 前記見つけだす手段は、 (a)前記先頭の一致前位セグメントから始めて、前記前位セグメントを第一の 線形トラバースパスでトラバースする手段と、 (b)前記先頭の目標セグメントから始めて、第二の線形トラバースパスに沿っ て各セグメントが前記第一の線形トラバースパスに沿う対応する前位セグメント を有する前記目標セグメントを、前記第二の線形トラバースパスでトラバースす る手段と、 (c)前記第二の線形トラバースパスに沿って存在する各目標セグメントを前記 第一の線形トラバースパスに沿って存在する前記対応する前位セグメントと比較 し、各目標セグメントが前記対応する前位セグメントと一致するかどうかを決定 する手段と、 (d)もし、目標セグメントが前記対応する前位セグメントと一致しないならば 、前記前位セグメントと目標セグメントのトラバースを停止し、前記先頭の一致 前位セグメントで始る一致前位セグメントの数は第一の一致ストリング長を有す る第一の一致ストリングを含むこととなる手段と を含んでいる ことを特徴とするシステム。 114.請求項113に記載のシステムであって、 前記見つけだす手段は、さらに、 (a)前記停止する手段の作動後に、前記先頭の一致前位セグメントに先行して いる前記前位セグメントを前記所定の非線形トラバースパターンでトラバースし 続ける手段と、 (b)もし、前記非線形トラバースパターンの範囲内に前記先頭の目標セグメン トと一致する次の一致前位セグメントがあれば、それを見つけだす手段と、 (c)前記次の一致前位セグメントから始めて、前記前位セグメントを第三の線 形トラバースパスでトラバースする手段と、 (d)前記先頭目標セグメントから始めて、前記第三の線形トラバースパスに沿 って対応する前位セグメントを前記第二の線形トラバースパスに沿って有する前 記目標セグメントを前記第二の線形トラバースパスでトラバースする手段と、 (e)前記第二の線形トラバースパスに沿って存在する各目標セグメントを前記 第三の線形トラバースパスに沿って存在する前記対応する前位セグメントと比較 し、各目標セグメントが前記対応する前位セグメントに一致するかどうかを決定 する手段と、 (f)もし、目標セグメントが前記対応する前位セグメントに一致しないならば 、前記前位セグメントと目標セグメントのトラバースを停止し、前記次の一致前 位セグメントで始る一致前位セグメントの数が第二の一致ストリング長を有する 第二の 一致ストリングを含むこととなる手段と、 (g)前記第一の一致ストリングの前記第一の一致ストリング長を前記第二の一 致ストリングの前記第二の一致ストリング長と比較し、いずれが長いかを決定す る手段と、 (h)前記の長い方の長さを有する前記一致ストリングを前位セグメントの最長 一致ストリングとして定義する手段と を含んでなる ことを特徴とするシステム。 115.請求項112に記載のシステムにおいて、 前記最長一致ストリングを見つけだす手段は、前記前位セグメントに許容レベ ルを適用し、前位セグメントが目標セグメントに一致するかどうかを決定する手 段を含む ことを特徴とするシステム。 116.請求項112に記載のシステムにおいて、 前記所定の非線形トラバースパターンは固定した長さを有することを特徴とす るシステム。 117.請求項112に記載のシステムにおいて、前記所定の非線形トラバース パターンは固定したパターンを有し、前記所定の非線形トラバースパターンによ りトラバースされる最初の24個のデータセグメントは下記表のものであり、 ここに、「#」は前記先頭の目標セグメントを示し、1から24の数字は1から 24の順に、トラバースされる前記最初の24個のデータを示している ことを特徴とするシステム。 118.請求項112に記載のシステムにおいて、 前記データは画像データを含み、前記複数のデータセグメントは複数のピクセ ルを含んでいる ことを特徴とするシステム。 119.ある順序を有している複数のタセグメントを含むデータを圧縮するコン ピュータプログラムで、前記複数のセグメントは目標セグメントと前位セグメン トを含み、前記前位セグメントは前記複数のセグメントの順序内で前記目標セグ メントに先行しているデータを圧縮するコンピュータプログラムであって、その コンピュータプログラムはコンピュータシステムにより読み取り可能な媒体上に 認識可能に記録されており、プログラムがコンピュータシステムにより読み取ら れて実行されると、前記コンピュータシステムにより (a)先頭の目標セグメントを選択する機能と、 (b)前記前位セグメントを所定の非線形トラバースパターンに従ってトラバー スする機能と、 (c)前記先頭の目標セグメントで始まる目標セグメントのストリングと一致す る、前記所定の非線形トラバースパターン内にある先頭の一致前位セグメントを 有する最長の一致する前位セグメントのストリングを見つけだす機能と を実行するようにコンピュータシステムの構成を配置するように適合させてなる コンピュータプログラム。120.請求項119に記載のコンピュータプログラムにおいて、前記見つけだ す機能は、 (a)前記先頭の一致前位セグメントから始めて、前位セグメントを第一の線形 トラバースパスでトラバースする機能と、 (b)前記先頭の目標セグメントから始めて、第二の線形トラバースパスに沿っ て各セグメントが前記第一の線形トラバースパスに沿う対応する前位セグメント を有する前記目標セグメントを、前記第二の線形トラバースパス内トラバースす る機能と、 (c)前記第二の線形トラバースパスに沿って存在する各目標セグメントを前記 第一の線形トラバースパスに沿って存在する前記対応する前位セグメントと比較 し、各目標セグメントが前記対応する前位セグメントと一致するかどうかを決定 する機能と、 (d)もし、目標セグメントが前記対応する前位セグメントと一致しないならば 、前記前位セグメントと目標セグメントのトラバースを停止し、前記先頭の一致 前位セグメントで始る一致 前位セグメントの数は第一の一致ストリング長を有する第一の一致ストリングを 含むこととなる機能と を含んでいる ことを特徴とするコンピュータプログラム。 121.請求項120に記載のコンピュータプログラムであって、 前記見つけだす機能は、さらに、 (a)前記停止する機能の作動後に、前記先頭の一致前位セグメントに先行して いる前記前位セグメントを前記所定の非線形トラバースパターンによりトラバー スし続ける機能と、 (b)もし、前記非線形トラバースパターンの範囲内に前記先頭の目標セグメン トと一致する次の一致前位セグメントがあれば、それを見つけだす機能と、 (c)前記次の一致前位セグメントから始めて、前記前位セグメントを第三の線 形トラバースパスでトラバースする機能と、 (d)前記先頭の目標セグメントから始めて、前記第三の線形トラバースパスに 沿って対応する前位セグメントを前記第二の線形トラバースパスに沿って有する 前記目標セグメントを前記第二の線形トラバースパスでトラバースする機能と、 (e)前記第二の線形トラバースパスに沿って存在する各目標セグメントを前記 第三の線形トラバースパスに沿って存在する前記対応する前位セグメントと比較 し、各目標セグメントが前記対応する前位セグメントに一致するかどうかを決定 する機能と、 (f)もし、目標セグメントが前記対応する前位セグメントに一致しないならば 、前記前位セグメントと目標セグメントのトラ バースを停止し、前記次の一致前位セグメントで始る一致前位セグメントの数が 第二の一致ストリング長を有する第二の一致ストリングを含むこととなる機能と (g)前記第一の一致ストリングの前記第一の一致ストリング長を前記第二の一 致ストリングの前記第二の一致ストリング長と比較し、いずれが長いかを決定す る機能と、 (h)前記の長い方の長さを有する前記一致ストリングを前位セグメントの最長 一致ストリングとして定義する機能と を含んでなる ことを特徴とするコンピュータプログラム。

Claims (1)

  1. 【特許請求の範囲】 1.複数の目標ピクセルおよび複数の前位ピクセルを有するピクセルアレイで、 それぞれの前位ピクセルはそのピクセルアレイ内でそれぞれの目標ピクセルより 前の位置にあるようなピクセルアレイを有する原画像を圧縮する方法であって、 (a)(1)所定の非線形トラバースパターンに従って前記ピクセルアレイをト ラバースして、ひとつの目標ピクセルと一致するひとつの前位ピクセルが有れば 、それを見つけだし、 (2)もし、そのような一致する前位ピクセルが見つけだされたら、当該 一致した目標ピクセルおよび前位ピクセルから線形的に次々たどりながら対応す る目標ピクセルと前位ピクセルを比較していって、一致する前位ピクセルストリ ングが有る場合、それを見つけだし、 (3)ステップ(1)および(2)を繰り返して、最長の一致前位ピクセ ルストリングを見つけだし、 (4)それぞれのそのような最長の一致前位ピクセルストリングを表す圧 縮表現としてコピートークンを生成し、 (5)一致前位ピクセルを有しない目標ピクセルのそれぞれについてリテ ラルトークンを生成する ことを繰り返し行うことにより原画像を圧縮して圧縮画像を得るステップ を含んでなる方法。 2.複数の目標ピクセルおよび複数の前位ピクセルを有するピクセルアレイで、 それぞれの前位ピクセルはそのピクセルアレイ内でそ れぞれの目標ピクセルより前の位置にあるようなピクセルアレイを有する原画像 を圧縮して、圧縮画像を得る方法であって、 (a)所定の非線形トラバースパターンに従って前記ピクセルアレイを繰り返し トラバースして、ひとつの目標ピクセルストリングと一致するひとつの最長の一 致前位ピクセルストリングが有れば、それを見つけだすステップと、 (b)そのような一致した目標ピクセルストリングを表す圧縮表現としてそのよ うな最長の一致前位ピクセルストリングを参照するコピートークンを生成するス テップと、 (c)一致する前位ピクセルを有しない目標ピクセルのそれぞれについてリテラ ルトークンを生成するステップと を含んでなる方法。 3.請求項1または2に記載の方法であって、さらに、 ハフマン符号化アルゴリズムを使用して前記圧縮画像をエンコードすることに より前記圧縮画像をさらに圧縮するステップを含んでなる方法。 4.請求項3に記載の方法であって、 全ての可能なコピートークンおよび全ての可能なリテラルトークンがひとつの トークンセットを形成していて、さらに、 (a)そのトークンセットについてハフマンツリーを生成するステップと、 (b)そのハフマンツリーを出力するステップと、 (c)そのハフマンツリーを出力した後に前記圧縮画像を出力するステップと を含んでなる方法。 5.請求項4に記載の方法であって、さらに、 (a)前記ハフマンツリーを出力する前にハフマンツリーをひとつの圧縮フォー マットにエンコードして、圧縮されたハフマンツリーを得るステップと、 (b)そのハフマンツリーを使用して前記エンコードされた圧縮画像をデコード するステップと、 (c)そのデコードされた圧縮画像を解凍して原画像を得るステップと を含んでなる方法。 6.請求項1に記載の方法であって、さらに、 (a)原画像を圧縮する前に原画像を部分標本化するステップを含んでなる方法 。 7.請求項1に記載の方法において、 前記所定の非線形トラバースパターンは固定長を有することを特徴とする方法 。 8.請求項6に記載の方法において、 前記所定の非線形トラバースパターンは経験的に定められることを特徴とする 方法。 9.請求項8に記載の方法において、 前記所定の非線形トラバースパターンは複数のピクセルオフセッ トを有し、その初めの24個は下記表のものであり、 ここに、「#」はエンコード中のピクセル位置を示し、1から24の数字は初め の24個のピクセルオフセットをその順に示していることを特徴とする方法。 10.請求項1または2に記載の方法において、 各最長の一致データストリングは、目標ピクセルのストリングに対応する一致 ピクセルのストリングを有し、 最長の一致データストリングを見つける際に、ピクセルアレイ内の各ピクセル は許容差を有していて、もし一致ピクセルのストリング内の一致ピクセルのそれ ぞれが目標ピクセルのストリング内の対応目標ピクセルの許容差範囲内に入って いれば、最長一致データストリング内の一致ピクセルのストリングは目標ピクセ ルのストリングに一致するとみなされる ことを特徴とする方法。 11.複数の目標ピクセルおよび複数の前位ピクセルを有するピクセルアレイで 、それぞれの前位ピクセルはそのピクセルアレイ内でそれぞれの目標ピクセルよ り前の位置にあるようなピクセルアレイを有する原画像を圧縮して、圧縮画像を 得るシステムであって、 (a)所定の非線形トラバースパターンに従って前記ピクセルアレイを繰り返し トラバースして、ひとつの目標ピクセルストリングと一致するひとつの最長の一 致前位ピクセルストリングが有れば、それを見つけだす手段と、 (b)そのような一致した目標ピクセルストリングを表す圧縮表現としてそのよ うな最長の一致前位ピクセルストリングを参照するコピートークンを生成する手 段と、 (c)一致する前位ピクセルを有しない目標ピクセルのそれぞれについてリテラ ルトークンを生成する手段と を備えてなるシステム。 12.ピクセルアレイを有する原画像を圧縮して圧縮画像を得るコンピュータプ ログラムであって、 そのプログラムはコンピュータシステムにより読み取り可能な媒体上に認識可 能に記録されており、プログラムがコンピュータシステムにより読み取られて実 行されると、 (a)所定の非線形トラバースパターンに従って前記ピクセルアレイを繰り返し トラバースして、ひとつの目標ピクセルストリングと一致するひとつの最長の一 致前位ピクセルストリングが有れば、それを見つけだす機能と、 (b)そのような一致した目標ピクセルストリングを表す圧縮表現としてそのよ うな最長の一致前位ピクセルストリングを参照するコピートークンを生成する機 能と、 (c)一致する前位ピクセルを有しない目標ピクセルのそれぞれについてリテラ ルトークンを生成する機能と を実行するようにコンピュータシステムの構成を配置するように適 合させてなるコンピュータプログラム。 13.先頭の目標ピクセルおよび複数の前位ピクセルを有するピクセルアレイで 、それぞれの前位ピクセルはそのピクセルアレイ内でそれぞれの目標ピクセルの 前に位置しているピクセルアレイよりなる画像データを圧縮する方法であって、 (a)前記画像データを逆向き非線形トラバースパターンに従って前記ピクセル アレイ内で逆向きにトラバースするステップと、 (b)前記先頭の目標ピクセルと一致する、ひとつの先頭の一致前位ピクセルが があれば、それを見つけだすステップと、 (c)もしひとつの先頭の一致前位ピクセルが見つけだされたら、前記ピクセル アレイ内で前向きの線形トラバースパターンに従って、前記先頭の目標ピクセル に続く複数のピクセルと前記先頭の一致前位ピクセルに続く複数のピクセルの両 方を、前記先頭の目標ピクセルに続く目標ピクセルが前記先頭の一致前位ピクセ ルに続く前位ピクセルと一致しなくなるまでトラバースして一致データストリン グを定義するステップと、 (d)前記非線形トラバースパターン内の前記画像データをトラバースすること を続けて前記先頭の目標ピクセルと一致する他の前位ピクセルを見つけだすこと を試みるステップと、 (e)もし他の一致前位ピクセルが見つけだされたらば、他の一致データストリ ングをステップ(c)に従って定義するステップと、 (f)ステップ(d)と(e)を繰り返してすべての一致データストリングを定 義するステップと、 (g)前記一致データストリングの何れが最長の一致データストリ ングであるかを決定するステップと、 (h)前記最長の一致データストリングをコピートークンとしてエンコードする ステップと を含んでなる方法。 14.複数の目標ピクセルおよび複数の前位ピクセルを含んでおり、それぞれの 前位ピクセルはピクセルアレイ内で目標ピクセルより前の位置にあるようなピク セルアレイよりなる画像データを圧縮する方法であって、 (a)前記前位ピクセルを、先頭の目標ピクセルに関して所定の位置を有する最 初の前位ピクセルのところで起こる始まりと、前記先頭の目標ピクセルに関して 他の所定の位置を有する最後の前位ピクセルのところで起こる終わりを有する所 定の非線形トラバースパターンに従ってトラバースするステップと、 (b)前記所定の非線形トラバースパターンに従ってトラバースされた前位ピク セルの中から、前記先頭の目標ピクセルと一致する先頭の一致前位ピクセルがあ れば、それを見つけだすステップと (c)もしひとつの先頭の一致前位ピクセルが見つけだされたら、線形トラバー スパスに従って、前記先頭の目標ピクセルに後続する目標ピクセルと前記先頭の 一致前位ピクセルに後続する前位ピクセルの両方を、各後続の目標ピクセルに前 記線形トラバースパスに沿って後続の前位ピクセルを対応させながらトラバース するステップと、 (d)それぞれの続く目標ピクセルを対応する前位ピクセルと比較して、続く目 標ピクセルが対応する続く前位ピクセルと一致し ないことが見つけだされるまで前記線形トラバースパス内のトラバースを続けて 非一致前位ピクセルを見つけだすステップと、 (e)一致データストリングを、前記先頭の一致前位ピクセルで始まり前記ピク セルアレイ内で前記非一致前位ピクセルの直前の前位ピクセルで終わるピクセル のストリングとして定義するステップと、 (f)前記非線形トラバースパターン内の前記前位ピクセルのトラバースを、前 記非線形トラバースパターン内の前記先頭の一致前位ピクセルに先行する前位ピ クセルで開始して続けて、前記先頭の目標ピクセルと一致する他の前位ピクセル を見つけ出すことを試みるステップと、 (g)もし他の一致前位ピクセルが見つけだされたらば、ステップ(c)から( e)を繰り返して他の一致データストリングを定義するステップと、 (h)ステップ(f)と(g)を最後の前位ピクセルに達するまで繰り返すステ ップと、 (i)もしただひとつの一致データストリングだけが定義されたらば、そのひと つの一致データストリングを最長の一致データストリングとするステップと、 (j)もし複数の一致データストリングが定義されたらば、この複数の一致デー タストリングの何れが最長の一致データストリングであるかを決定するステップ と、 (k)前記最長の一致データストリングをコピートークンとしてエンコードする ステップと を含んでなる方法。 15.スキャンされている目標ピクセルを示すピクセルポインタを含むデータ圧 縮システム内においてピクセルアレイを含む画像データのストリームをエンコー ドされた画像データのストリームに圧縮すると共にこのエンコードされた画像デ ータのストリームを解凍された画像に解凍する方法であって、 (a)ピクセルアレイ内の少なくともひとつのピクセルをスキャンして前記ピク セルアレイ内に位置を有するスキャンされた前位ピクセルを得るステップと、 (b)(1)前記ピクセルアレイ内に位置を有する先頭目標ピクセルをスキャン し、 (2)前記スキャンされた前位ピクセルを所定の非線形トラバースパター ンに従ってトラバースし、 (3)トラバースされた前記スキャンされた前位ピクセルの何れかがスキ ャンされた前記先頭目標ピクセルと一致するかを決定して、先頭のスキャンされ た一致前位ピクセルを見つけだし、 (4)前記ピクセルポインタを、前記ピクセルアレイ内で前記先頭の目標 ピクセルの位置の直後に続く位置にあるスキャンされる次の目標ピクセルに進め 、 (5)前記次の目標ピクセルが、前記ピクセルアレイ内で前記先頭のスキ ャンされた一致前位ピクセルの直後に続く位置を有する後続のスキャンされた前 位ピクセルと一致するかどうかを決定し、 (6)ピクセルポインタを進めて、スキャンされた一致前位ピクセルが見 いだされなくなるまでステップb(5)を繰り返して前記ピクセルポインタによ り示されたピクセルと 一致する全ての後続のスキャンされた前位ピクセルを見つけだして、一致データ ストリングを定義する ことにより、スキャンされるピクセルのストリングと一致する一致データス トリングを求めて、前記スキャンされた前位ピクセルをサーチするステップと、 (c)前記ピクセルアレイ内における前記先頭の目標ピクセルに関する、前記先 頭のスキャンされた一致前位ピクセルの位置を表すオフセットを決定するステッ プと、 (d)前記一致データストリング内のスキャンされた一致前位ピクセルの数であ る前記一致データストリングのストリング長を決定するステップと、 (e)前記一致データストリングを、前記先頭のスキャンされた一致ピクセルの オフセットと前記一致データストリングのストリング長を含むコピートークンに 変換するステップと、 (f)前記コピートークンをエンコードするステップと を含んでなる方法。 16.請求項15に記載の方法であって、さらに (a)前記ピクセルアレイを部分標本化して、画像データのストリーム内のデー タを、前記一致データストリングのために前記スキャンされた前位ピクセルをサ ーチする前に減少させるステップ を含んでなる方法。 17.それぞれのピクセルが色画像データを含んでいる請求項16に記載の方法 であって、さらに (a)前記ピクセルアレイを部分標本化する前に、それぞれのピクセルの色画像 データをフィルタするステップ を含んでなる方法。 18.色画像データがカラースペースを有している請求項17に記載の方法であ って、さらに (a)前記画像データをフィルタする前に、前記画像データのカラースペースを 他のカラースペースに変換するステップ を含んでなる方法。 19.前記カラースペースがYCrCbカラースペースである請求項18に記載 の方法。 20.請求項15に記載の方法であって、 前記ピクセルアレイ内のそれぞれのピクセルは、スキャンされた一致ピクセル が見つけだされたときにスキャンされた前位ピクセルが目標ピクセルと一致する かどうかを決定するのに使用される予め定められた許容差を有している方法であ って、 (a)スキャンされた目標ピクセルをスキャンされた前位ピクセルと比較するス テップと、 (b)前記スキャンされた前位ピクセルが前記目標ピクセルの前記予め定められ た許容差内にあるかどうかを決定するステップと、 (c)前記スキャンされた前位ピクセルが前記目標ピクセルの前記予め定められ た許容差内にあるときは前記スキャンされた前位ピクセルを一致目標ピクセルと 見なすステップと が実行される方法。 21.請求項15に記載の方法において、 前記所定の非線形トラバースパターンは圧縮される個々の画像データのストリ ームごとに画像トラバース長を含む固定長を有しており、 前記画像トラバース長さは画像ごとに異なっている ことを特徴とする方法。 22.請求項15に記載の方法において、 前記所定の非線形トラバースパターンは、圧縮される画像データの単一のスト リームの圧縮の間に変化する長さを有している ことを特徴とする方法。 23.請求項15に記載の方法において、 前記所定の非線形トラバースパターンは、圧縮される画像データの各個々のス トリームごとに、画像ごとに異なる固定したパターンを含んでいる ことを特徴とする方法。 24.請求項15に記載の方法において、 前記所定の非線形トラバースパターンは圧縮される画像データの単一のストリ ームの圧縮の間に変化する ことを特徴とする方法。 50.ピクセルアレイを含む画像データのストリームをエンコードされた画像デ ータのストリームに圧縮すると共にこのエンコードさ れた画像データのストリームを解凍された画像に解凍するための、スキャンされ る目標ピクセルを示すピクセルポインタを含むデータ圧縮システムであって、 (a)ピクセルアレイ内の少なくともひとつのピクセルをスキャンして前記ピク セルアレイ内に位置を有するスキャンされた前位ピクセルを得るスキャナと、 (b)(1)前記ピクセルアレイ内に位置を有する先頭目標ピクセルをスキャン する手段と、 (2)前記スキャンされた前位ピクセルを所定の非線形トラバースパター ンを用いててトラバースする手段と、 (3)前記スキャンされた前位ピクセルの何れかがスキャンされた前記先 頭目標ピクセルと一致するかを決定して、先頭のスキャンされた一致前位ピクセ ルを見つけだす第1比較手段と、、 (4)前記ピクセルポインタを、前記ピクセルアレイ内で前記先頭の目標 ピクセルの位置の直後に続く位置にあるスキャンされる次の目標ピクセルに進め る手段と、 (5)前記次の目標ピクセルが、前記ピクセルアレイ内で前記先頭のスキ ャンされた一致前位ピクセルの直後に続く位置を有する後続のスキャンされた前 位ピクセルと一致するかどうかを決定する第2比較手段と、 (6)ピクセルポインタを進めて、スキャンされた一致前位ピクセルが見 いだされなくなるまでステップb(5)を繰り返して前記ピクセルポインタによ り示されたピクセルと一致する全ての後続のスキャンされた前位ピクセルを見つ けだして、一致データストリングを定義する手段と を含む、スキャンされるピクセルのストリングと一致する一致データストリング を求めて、前記スキャンされた前位ピクセルをサーチする手段と、 (c)前記ピクセルアレイ内における前記先頭の目標ピクセルに関する、前記先 頭のスキャンされた一致前位ピクセルの位置を表すオフセットを決定する手段と 、 (d)前記一致データストリング内のスキャンされた一致前位ピクセルの数であ る前記一致データストリングのストリング長を決定する手段と、 (e)前記一致データストリングを、前記先頭のスキャンされた一致前位ピクセ ルのオフセットと前記一致データストリングのストリング長を含むコピートーク ンに変換するコンバータと、 (f)前記コピートークンをエンコードするエンコーダと を含んでなるシステム。 76.それ自体からの少なくともひとつのピクセルを受け入れるストリングに分 割可能なピクセルアレイを含む画像データのストリームを圧縮すると共にこの画 像データのストリームを解凍された画像に解凍するためのシステムであって、 (a)前記ピクセルアレイを所定の非線形トラバースパターンでスキャンしてス キャンされた前位ピクセルを得るスキャナと、 (b)前記スキャンされたピクセルを前記スキャンされた前位ピクセルと比較し てスキャンされたピクセルの何れかが前記スキャンされた前位ピクセルと一致す るかどうかを決定するコンパレータと、 (c)スキャンされたピクセルと一致する少なくともひとつのスキ ャンされた前位ピクセルと対応するストリングを有するスキャンされた少なくと もひとつのピクセルの各ストリングに対する一致データストリングで、前記スキ ャンされた一致前位ピクセルと対応する画像データを含む一致データストリング が、もしあれば、それを生成する手段と、 (d)もし一致データストリングが生成されれば、そのような一致データストリ ングをコピートークンに変換するコンバータと、 (e)スキャンされたピクセルがスキャンされた一致前位ピクセルを有しないな らば、スキャンされたピクセルをリテラルトークンに変換するコンバータと、 (f)前記コピートークンがあればそれをエンコードし、また前記リテラルトー クンをエンコードされたトークンセットにエンコードするエンコーダと、 (g)エンコードされた前記トークンセットを伝達するトランスミッタと、 (h)前記エンコードされたトークンセットをデコードしてデコードされたトー クンセットを得るデコーダと、 (i)前記デコードされたトークンセットを伸張して解凍された画像を得る手段 と を含んでなるシステム。 85.ピクセルアレイを含む画像データのストリームをエンコードされた画像デ ータのストリームに圧縮すると共にこのエンコードされた画像データのストリー ムを解凍された画像に解凍するためのコンピュータプログラムであって、そのコ ンピュータプログラムは、スキャンされる目標ピクセルを示すピクセルポインタ を含むコンピ ュータシステムにより読み取り可能な媒体上に認識可能に記録されており、プロ グラムがコンピュータシステムにより読み取られて実行されると、前記コンピュ ータシステムにより (a)ピクセルアレイ内の少なくともひとつのピクセルをスキャンして前記ピク セルアレイ内に位置を有するスキャンされた前位ピクセルを得る機能と、 (b)(1)前記ピクセルアレイ内に位置を有する先頭目標ピクセルをスキャン し、 (2)前記スキャンされた前位ピクセルを所定の非線形トラバースパター ンに従ってトラバースし、 (3)トラバースされた前記スキャンされた前位ピクセルの何れかがスキ ャンされた前記先頭目標ピクセルと一致するかを決定して、先頭のスキャンされ た一致前位ピクセルを見つけだし、 (4)前記ピクセルポインタを、前記ピクセルアレイ内で前記先頭の目標 ピクセルの位置の直後に続く位置にあるスキャンされる次の目標ピクセルに進め 、 (5)前記次の目標ピクセルが、前記ピクセルアレイ内で前記先頭のスキ ャンされた一致前位ピクセルの直後に続く位置を有する後続のスキャンされた前 位ピクセルと一致するかどうかを決定し、 (6)ピクセルポインタを進めて、スキャンされた一致前位ピクセルが見 いだされなくなるまで機能b(5)を繰り返して前記ピクセルポインタにより示 されたピクセルと一致する全ての後続のスキャンされた前位ピクセルを見つけだ して、一致データストリングを定義する ことにより、スキャンされるピクセルのストリングと一致する一致データストリ ングを求めて、前記スキャンされた前位ピクセルをサーチする機能と、 (c)前記ピクセルアレイ内における前記先頭の目標ピクセルに関する、前記先 頭のスキャンされた一致前位ピクセルの位置を表すオフセットを決定する機能と 、 (d)前記一致データストリング内のスキャンされた一致前位ピクセルの数であ る前記一致データストリングのストリング長を決定する機能と、 (e)前記一致データストリングを、前記先頭のスキャンされた一致ピクセルの オフセットと前記一致データストリングのストリング長を含むコピートークンに 変換する機能と、 (f)前記コピートークンをエンコードする機能と を実行するようにコンピュータシステムの構成を配置するように適合させてなる コンピュータプログラム。 95.それ自体からの少なくともひとつのピクセルを受け入れるストリングに分 割可能なピクセルアレイを含む画像データのストリームを圧縮すると共にこの画 像データのストリームを解凍された画像に解凍するためのコンピュータプログラ ムであって、そのコンピュータプログラムはコンピュータシステムにより読み取 り可能な媒体上に認識可能に記録されており、プログラムがコンピュータシステ ムにより読み取られて実行されると、前記コンピュータシステムにより (a)前記ピクセルアレイを所定の非線形トラバースパターンに従ってスキャン してスキャンされた前位ピクセルを得る機能と、 (b)前記スキャンされたピクセルを前記スキャンされた前位ピクセルと比較し てスキャンされたピクセルの何れかが前記スキャンされた前位ピクセルと一致す るかどうかを決定する機能と、 (c)スキャンされたピクセルと一致する少なくともひとつのスキャンされた前 位ピクセルと対応するストリングを有するスキャンされた少なくともひとつのピ クセルの各ストリングに対する一致データストリングで、前記スキャンされた一 致前位ピクセルと対応する画像データを含む一致データストリングを生成する機 能と、 (d)もし一致データストリングが生成されれば、そのような一致データストリ ングをコピートークンに変換する機能と、 (e)スキャンされたピクセルがスキャンされた一致前位ピクセルを有しないな らば、スキャンされたピクセルをリテラルトークンに変換する機能と、 (f)前記コピートークンがあればそれをエンコードし、また前記リテラルトー クンをエンコードされたトークンセットにエンコードする機能と、 (g)エンコードされた前記トークンセットを伝達する機能と、 (h)前記エンコードされたトークンセットをデコードしてデコードされたトー クンセットを得る機能と、 (i)前記デコードされたトークンセットを伸張して解凍された画像を得る手段 と を実行するようにコンピュータシステムの構成を配置するように適合させてなる コンピュータプログラム。 101.入力データストリングをからなる2またはそれ以上のグル ープの複数の入力データセグメントを含む入力データストリームを圧縮する方法 であって、 (a)入力データストリームを読み込んで、前位データストリングからなる2ま たはそれ以上のグループの複数の前位データセグメントを含む前位データを得る ステップと、 (b)前記前位データを、それぞれ前位データストリングを含み前記入力データ ストリームからの入力データストリングと一致する最長の一致前位データストリ ングを求めて、所定の非線形トラバースパターンでサーチするステップと、 (c)前記前位データ内に最長の一致前位データストリングが見いだせたらば、 その最長の一致前位データストリングを圧縮して圧縮ストリングを得ると共にこ の圧縮ストリングをコピートークンとしてエンコードするステップと、 (d)一致前位データセグメントを有しない入力データセグメントについて、そ のような入力データセグメントをリテラルトークンとしてエンコードするステッ プと、 (e)前記コピートークンがあればそれを、またリテラルトークンを出力するス テップと を含んでなる方法。 104.入力データストリングをからなる2またはそれ以上のグループの複数の 入力データセグメントを含む入力データストリームを圧縮するシステムであって 、 (a)入力データストリームを読み込んで、前位データストリングからなる2ま たはそれ以上のグループの複数の前位データセグメントを含む前位データを得る 手段と、 (b)前記前位データを、それぞれ前位データストリングを含み前記入力データ ストリームからの入力データストリングと一致する最長の一致前位データストリ ングを求めて、所定の非線形トラバースパターンでサーチする手段と、 (c)前記前位データ内に最長の一致前位データストリングが見いだせたらば、 その最長の一致前位データストリングを圧縮して圧縮ストリングを得る圧縮手段 及びこの圧縮ストリングをコピートークンとしてエンコードするエンコーダと、 (d)一致前位データセグメントを有しない入力データセグメントについて、そ のような入力データセグメントをリテラルトークンとしてエンコードするエンコ ーダと、 (e)前記コピートークンがあればそれを、またリテラルトークンを出力するポ ートと を含んでなるシステム。 105.ある順序を有している複数のデータセグメントを含むデータを圧縮する 方法で、前記複数のデータセグメントは目標セグメントと前位セグメントを含み 、前記前位セグメントは前記複数のデータセグメントの順序内で前記目標セグメ ントに先行しているデータを圧縮する方法であって、 (a)先頭の目標セグメントを選択するステップと、 (b)前記前位セグメントを所定の非線形トラバースパターンに従ってトラバー スするステップと、 (c)前記先頭の目標セグメントで始まる目標セグメントのストリングと一致す る、前記所定の非線形トラバースパターン内にある先頭の一致前位セグメントを 有する最長の一致する前位セグ メントのストリングを見つけだすステップと を含んでなる方法。 112.ある順序を有している複数のタセグメントを含むデータを圧縮するシス テムで、前記複数のセグメントは目標セグメントと前位セグメントを含み、前記 前位セグメントは前記複数のセグメントの順序内で前記目標セグメントに先行し ているデータを圧縮するシステムであって、 (a)先頭の目標セグメントを選択する手段と、 (b)前記前位セグメントを所定の非線形トラバースパターンに従ってトラバー スする手段と、 (c)前記先頭の目標セグメントで始まる目標セグメントのストリングと一致す る、前記所定の非線形トラバースパターン内にある先頭の一致前位セグメントを 有する最長の一致する前位セグメントのストリングを見つけだす手段と を含んでなるシステム。 119.ある順序を有している複数のタセグメントを含むデータを圧縮するコン ピュータプログラムで、前記複数のセグメントは目標セグメントと前位セグメン トを含み、前記前位セグメントは前記複数のセグメントの順序内で前記目標セグ メントに先行しているデータを圧縮するコンピュータプログラムであって、その コンピュータプログラムはコンピュータシステムにより読み取り可能な媒体上に 認識可能に記録されており、プログラムがコンピュータシステムにより読み取ら れて実行されると、前記コンピュータシステムにより (a)先頭の目標セグメントを選択する機能と、 (b)前記前位セグメントを所定の非線形トラバースパターンに従ってトラバー スする機能と、 (c)前記先頭の目標セグメントで始まる目標セグメントのストリングと一致す る、前記所定の非線形トラバースパターン内にある先頭の一致前位セグメントを 有する最長の一致する前位セグメントのストリングを見つけだす機能と を実行するようにコンピュータシステムの構成を配置するように適合させてなる コンピュータプログラム。
JP51609297A 1995-10-19 1996-10-21 二次元データ圧縮装置および方法 Expired - Fee Related JP3233410B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US08/545,513 1995-10-19
US08/545,513 US5710719A (en) 1995-10-19 1995-10-19 Apparatus and method for 2-dimensional data compression
US545,513 1995-10-19
PCT/US1996/016909 WO1997015014A1 (en) 1995-10-19 1996-10-21 Apparatus and method for two-dimensional data compression

Publications (2)

Publication Number Publication Date
JP2000509212A true JP2000509212A (ja) 2000-07-18
JP3233410B2 JP3233410B2 (ja) 2001-11-26

Family

ID=24176548

Family Applications (1)

Application Number Title Priority Date Filing Date
JP51609297A Expired - Fee Related JP3233410B2 (ja) 1995-10-19 1996-10-21 二次元データ圧縮装置および方法

Country Status (8)

Country Link
US (1) US5710719A (ja)
EP (1) EP0870251B1 (ja)
JP (1) JP3233410B2 (ja)
AU (1) AU713756B2 (ja)
BR (1) BR9611056A (ja)
CA (1) CA2235249C (ja)
DE (1) DE69631792T2 (ja)
WO (1) WO1997015014A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013541295A (ja) * 2010-09-30 2013-11-07 マイクロソフト コーポレーション 画像圧縮のためのエントロピーコーダー
CN116506629A (zh) * 2023-06-27 2023-07-28 上海伯镭智能科技有限公司 用于矿山无人驾驶矿车协同控制的路况数据压缩方法

Families Citing this family (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3305190B2 (ja) * 1996-03-11 2002-07-22 富士通株式会社 データ圧縮装置及びデータ復元装置
US5987459A (en) * 1996-03-15 1999-11-16 Regents Of The University Of Minnesota Image and document management system for content-based retrieval
US20030195848A1 (en) * 1996-06-05 2003-10-16 David Felger Method of billing a purchase made over a computer network
US7555458B1 (en) * 1996-06-05 2009-06-30 Fraud Control System.Com Corporation Method of billing a purchase made over a computer network
US8229844B2 (en) 1996-06-05 2012-07-24 Fraud Control Systems.Com Corporation Method of billing a purchase made over a computer network
US6031914A (en) * 1996-08-30 2000-02-29 Regents Of The University Of Minnesota Method and apparatus for embedding data, including watermarks, in human perceptible images
US6282299B1 (en) 1996-08-30 2001-08-28 Regents Of The University Of Minnesota Method and apparatus for video watermarking using perceptual masks
US6061793A (en) * 1996-08-30 2000-05-09 Regents Of The University Of Minnesota Method and apparatus for embedding data, including watermarks, in human perceptible sounds
US6272634B1 (en) 1996-08-30 2001-08-07 Regents Of The University Of Minnesota Digital watermarking to resolve multiple claims of ownership
US6226387B1 (en) 1996-08-30 2001-05-01 Regents Of The University Of Minnesota Method and apparatus for scene-based video watermarking
JP3730385B2 (ja) * 1997-12-05 2006-01-05 株式会社東芝 デ−タ圧縮装置
JP3457184B2 (ja) * 1998-06-25 2003-10-14 シャープ株式会社 検索装置及びその制御プログラムを記憶した媒体
US6130630A (en) * 1998-10-27 2000-10-10 Hewlett-Packard Company Apparatus and method for compressing Huffman encoded data
US6741368B1 (en) * 1999-05-25 2004-05-25 Adobe Systems, Incorporated Method and apparatus for reducing storage requirements for display data
US6393154B1 (en) 1999-11-18 2002-05-21 Quikcat.Com, Inc. Method and apparatus for digital image compression using a dynamical system
KR20010059114A (ko) * 1999-12-30 2001-07-06 박종섭 이미지 센서로부터 출력되는 이미지 데이터의 압축 방법
US20010039552A1 (en) * 2000-02-04 2001-11-08 Killi Tom E. Method of reducing the size of a file and a data processing system readable medium for performing the method
US6236341B1 (en) * 2000-03-16 2001-05-22 Lucent Technologies Inc. Method and apparatus for data compression of network packets employing per-packet hash tables
US7167259B2 (en) * 2000-05-16 2007-01-23 International Business Machines Corporation System and method for merging line work objects using tokenization and selective compression
US9894379B2 (en) * 2001-07-10 2018-02-13 The Directv Group, Inc. System and methodology for video compression
US6650261B2 (en) * 2001-09-06 2003-11-18 Xerox Corporation Sliding window compression method utilizing defined match locations
US6501395B1 (en) * 2002-04-10 2002-12-31 Hewlett-Packard Company System, method and computer readable medium for compressing a data sequence
FR2844935B1 (fr) * 2002-09-25 2005-01-28 Canon Kk Transcodage de donnees numeriques
US8549574B2 (en) * 2002-12-10 2013-10-01 Ol2, Inc. Method of combining linear content and interactive content compressed together as streaming interactive video
US9192859B2 (en) 2002-12-10 2015-11-24 Sony Computer Entertainment America Llc System and method for compressing video based on latency measurements and other feedback
US9446305B2 (en) 2002-12-10 2016-09-20 Sony Interactive Entertainment America Llc System and method for improving the graphics performance of hosted applications
US8964830B2 (en) 2002-12-10 2015-02-24 Ol2, Inc. System and method for multi-stream video compression using multiple encoding formats
US20090118019A1 (en) * 2002-12-10 2009-05-07 Onlive, Inc. System for streaming databases serving real-time applications used through streaming interactive video
US8526490B2 (en) * 2002-12-10 2013-09-03 Ol2, Inc. System and method for video compression using feedback including data related to the successful receipt of video content
US8949922B2 (en) * 2002-12-10 2015-02-03 Ol2, Inc. System for collaborative conferencing using streaming interactive video
US8711923B2 (en) 2002-12-10 2014-04-29 Ol2, Inc. System and method for selecting a video encoding format based on feedback data
US9061207B2 (en) 2002-12-10 2015-06-23 Sony Computer Entertainment America Llc Temporary decoder apparatus and method
US9138644B2 (en) 2002-12-10 2015-09-22 Sony Computer Entertainment America Llc System and method for accelerated machine switching
US9314691B2 (en) * 2002-12-10 2016-04-19 Sony Computer Entertainment America Llc System and method for compressing video frames or portions thereof based on feedback information from a client device
US10201760B2 (en) * 2002-12-10 2019-02-12 Sony Interactive Entertainment America Llc System and method for compressing video based on detected intraframe motion
US8366552B2 (en) * 2002-12-10 2013-02-05 Ol2, Inc. System and method for multi-stream video compression
US9077991B2 (en) * 2002-12-10 2015-07-07 Sony Computer Entertainment America Llc System and method for utilizing forward error correction with video compression
US9108107B2 (en) 2002-12-10 2015-08-18 Sony Computer Entertainment America Llc Hosting and broadcasting virtual events using streaming interactive video
US20040202326A1 (en) * 2003-04-10 2004-10-14 Guanrong Chen System and methods for real-time encryption of digital images based on 2D and 3D multi-parametric chaotic maps
CN100541537C (zh) * 2003-11-24 2009-09-16 廖宏 一种利用计算机对数字化档案文件压缩的方法
US7450134B2 (en) * 2004-11-18 2008-11-11 Time Warner Cable Inc. Methods and apparatus for encoding and decoding images
US7826670B2 (en) * 2005-06-15 2010-11-02 Fujifilm Corporation Data compression apparatus and data compression program storage medium
AU2005248949B2 (en) * 2005-12-23 2010-04-01 Canon Kabushiki Kaisha Efficient Halftone Image Compression
US8149469B2 (en) * 2007-08-03 2012-04-03 Canon Kabushiki Kaisha Image reading apparatus and image reading method
US9168457B2 (en) 2010-09-14 2015-10-27 Sony Computer Entertainment America Llc System and method for retaining system state
JP2011019008A (ja) * 2009-07-07 2011-01-27 Fujifilm Corp 動画圧縮送信装置、動画圧縮送信プログラム、および動画圧縮送信方法
US9438413B2 (en) * 2010-01-08 2016-09-06 Novell, Inc. Generating and merging keys for grouping and differentiating volumes of files
US9298722B2 (en) * 2009-07-16 2016-03-29 Novell, Inc. Optimal sequential (de)compression of digital data
US8782734B2 (en) * 2010-03-10 2014-07-15 Novell, Inc. Semantic controls on data storage and access
US8832103B2 (en) 2010-04-13 2014-09-09 Novell, Inc. Relevancy filter for new data based on underlying files
US8559741B2 (en) * 2010-06-02 2013-10-15 Altek Corporation Lossless image compression method
US9208244B2 (en) * 2011-12-16 2015-12-08 Microsoft Technology Licensing, Llc Referencing change(s) in data utilizing a network resource locator
CN112383780B (zh) * 2013-08-16 2023-05-02 上海天荷电子信息有限公司 点匹配参考集和索引来回扫描串匹配的编解码方法和装置
KR102017807B1 (ko) * 2013-12-31 2019-09-03 에스케이하이닉스 주식회사 데이터 처리 장치 및 데이터 처리 방법
US9787332B2 (en) * 2015-09-15 2017-10-10 Intel Corporation Error-checking compressed streams in heterogeneous compression accelerators
CN110168611A (zh) * 2017-03-22 2019-08-23 惠普发展公司,有限责任合伙企业 基于数据关系的图像数据的压缩版本
FR3104886B1 (fr) * 2019-12-13 2022-08-12 Valeo Vision Procédé de gestion des données d'image et dispositif d'éclairage automobile
FR3132815B1 (fr) * 2022-02-11 2024-03-01 St Microelectronics Grenoble 2 Procédé de hachage partiel d’un flux vidéo

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3656178A (en) * 1969-09-15 1972-04-11 Research Corp Data compression and decompression system
US3675211A (en) * 1970-09-08 1972-07-04 Ibm Data compaction using modified variable-length coding
US3701108A (en) * 1970-10-30 1972-10-24 Ibm Code processor for variable-length dependent codes
US3694813A (en) * 1970-10-30 1972-09-26 Ibm Method of achieving data compaction utilizing variable-length dependent coding techniques
US3717851A (en) * 1971-03-03 1973-02-20 Ibm Processing of compacted data
US4021782A (en) * 1974-01-07 1977-05-03 Hoerning John S Data compaction system and apparatus
US4412306A (en) * 1981-05-14 1983-10-25 Moll Edward W System for minimizing space requirements for storage and transmission of digital signals
US4464650A (en) * 1981-08-10 1984-08-07 Sperry Corporation Apparatus and method for compressing data signals and restoring the compressed data signals
US4491934A (en) * 1982-05-12 1985-01-01 Heinz Karl E Data compression process
US4814746A (en) * 1983-06-01 1989-03-21 International Business Machines Corporation Data compression method
US4558302A (en) * 1983-06-20 1985-12-10 Sperry Corporation High speed data compression and decompression apparatus and method
US4612532A (en) * 1984-06-19 1986-09-16 Telebyte Corportion Data compression apparatus and method
US4730348A (en) * 1986-09-19 1988-03-08 Adaptive Computer Technologies Adaptive data compression system
US4853696A (en) * 1987-04-13 1989-08-01 University Of Central Florida Code converter for data compression/decompression
US4876541A (en) * 1987-10-15 1989-10-24 Data Compression Corporation Stem for dynamically compressing and decompressing electronic data
US4906991A (en) * 1988-04-29 1990-03-06 Xerox Corporation Textual substitution data compression with finite length search windows
AU622937B2 (en) * 1988-10-18 1992-04-30 Veag Vereinigte Energiewerke Aktiengesellschaft Process for generating electrical energy and/or drying and process heat
US5247357A (en) * 1989-05-31 1993-09-21 Scientific Atlanta, Inc. Image compression method and apparatus employing distortion adaptive tree search vector quantization with avoidance of transmission of redundant image data
AU657510B2 (en) * 1991-05-24 1995-03-16 Apple Inc. Improved image encoding/decoding method and apparatus
GB2267624B (en) * 1992-05-05 1995-09-20 Acorn Computers Ltd Image data compression
EP0582907A3 (en) * 1992-08-10 1995-05-10 Stac Electronics Inc Device and method for data compression using search by comparison of strings and Huffman coding.
US5416857A (en) * 1992-10-21 1995-05-16 International Business Machines Corporation Apparatus and method for compressing data while retaining image integrity
US5466918A (en) * 1993-10-29 1995-11-14 Eastman Kodak Company Method and apparatus for image compression, storage, and retrieval on magnetic transaction cards

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013541295A (ja) * 2010-09-30 2013-11-07 マイクロソフト コーポレーション 画像圧縮のためのエントロピーコーダー
CN116506629A (zh) * 2023-06-27 2023-07-28 上海伯镭智能科技有限公司 用于矿山无人驾驶矿车协同控制的路况数据压缩方法
CN116506629B (zh) * 2023-06-27 2023-08-25 上海伯镭智能科技有限公司 用于矿山无人驾驶矿车协同控制的路况数据压缩方法

Also Published As

Publication number Publication date
CA2235249A1 (en) 1997-04-24
DE69631792D1 (de) 2004-04-08
JP3233410B2 (ja) 2001-11-26
AU7465496A (en) 1997-05-07
BR9611056A (pt) 1999-09-28
EP0870251B1 (en) 2004-03-03
EP0870251A1 (en) 1998-10-14
WO1997015014A1 (en) 1997-04-24
DE69631792T2 (de) 2005-03-10
CA2235249C (en) 2005-03-29
AU713756B2 (en) 1999-12-09
US5710719A (en) 1998-01-20
EP0870251A4 (en) 2000-07-26

Similar Documents

Publication Publication Date Title
JP3233410B2 (ja) 二次元データ圧縮装置および方法
US6054943A (en) Multilevel digital information compression based on lawrence algorithm
US5227789A (en) Modified huffman encode/decode system with simplified decoding for imaging systems
EP1285399B1 (en) Enhanced compression of gray-level images
US6639945B2 (en) Method and apparatus for implementing motion detection in video compression
US6008847A (en) Temporal compression and decompression for video
US4316222A (en) Method and apparatus for compression and decompression of digital image data
US5471207A (en) Compression of palettized images and binarization for bitwise coding of M-ary alphabets therefor
US6008745A (en) Variable length decoding using lookup tables
US5363219A (en) Image processing method and apparatus
US6836564B2 (en) Image data compressing method and apparatus which compress image data separately by modifying color
JP2005516554A6 (ja) 可変長カラー・コードを用いる、パレット化されたカラー画像の圧縮
JP3341962B2 (ja) 可変長復号器及び可変長符号値を復号化する方法
JP2000030024A (ja) デジタル的に圧縮されたカラ―像の記憶及び呼び出し用スマ―トカ―ド
KR20040077921A (ko) 가변 길이 칼라 코드들로 팔레트화된 칼라 화상들의 압축
US6584226B1 (en) Method and apparatus for implementing motion estimation in video compression
IL133046A (en) Arithmetic coding and decoding of an information signal
US20060067582A1 (en) Progressive JPEG decoding system
US5764357A (en) Zero-run-length encoder with shift register
US6157327A (en) Encoding/decoding device
US5838266A (en) Data processing apparatus and method using data compression
US5793896A (en) Ordering corrector for variable length codes
US20030113029A1 (en) Skim encoding method for compression of a two dimensional array of data
US7974484B2 (en) JBIG coding and decoding system
JPH08275153A (ja) 画像圧縮装置および画像復元装置

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20080921

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20090921

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20100921

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20100921

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20110921

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20120921

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20130921

Year of fee payment: 12

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees