(57)【要約】ある実施形態では、デジタルイメージのピクセルは一度に試験される。試験されたピクセルの色は、その隣接するピクセルの色と比較される、隣接するピクセルのどちらかとの色の差（２０４０）が閾値を下回る場合（２０５０，２０６０）、試験されたピクセルの色により近い隣接するピクセルの色は、試験されたピクセルへコピーされる（２０８０，２０９０）。隣接するピクセルのどちらも十分に近い色でない場合、試験されたピクセルの色は変更されない（２１００）。ピクセルは、単一のパスで試験される。各ピクセルが試験され、場合によっては変更された後、Ｌｅｍｐｅｌ−ｚｉｖ技術のうちの１つのようなディレクショナリベースの技術を用いて、イメージの圧縮率が、通常改善される。
2005503056.tif 000002
【特許請求の範囲】
【請求項１】
イメージを処理するステップであって、該処理は、ある圧縮技術に対する該画像の圧縮率を増大させる、ステップと、
該処理された該イメージを該圧縮技術によって圧縮するステップと
を包含する、方法。
【請求項２】
イメージを処理する前記ステップは、
一連のピクセルを試験するステップと、
各ピクセルに対して、
該ピクセルの色を決定するステップと、
前のピクセルの色を決定するステップと、
後のピクセルの色を決定するステップと、
該ピクセルの該色と該前のピクセルの色との第１の差、および、該ピクセルの該色と該後のピクセルの該色との第２の差のどちらかが閾値の差よりも小さいかどうかを決定するステップと、
どちらかの差が該閾値の差よりも小さい場合、該第１の差が該第２の差よりも小さいならば、該前のピクセルの該色に、該第２の差が該１の差よりも小さいならば、該後のピクセルの該色に該ピクセルの色を設定するステップと
をさらに包含する、請求項１に記載の方法。
【請求項３】
前記圧縮技術は、ディクショナリベースの技術である、請求項１に記載の方法。
【請求項４】
前記圧縮技術は、Ｌｅｍｐｅｌ−Ｚｉｖ１９７７（ＬＺ７７）圧縮である、請求項３に記載の方法。
【請求項５】
前記圧縮技術は、Ｌｅｍｐｅｌ−Ｚｉｖ１９７８（ＬＺ７８）圧縮である、請求項３に記載の方法。
【請求項６】
前記圧縮技術は、Ｌｅｍｐｅｌ−Ｚｉｖ−Ｗｅｌｃｈ（ＬＺＷ）圧縮である、請求項３に記載の方法。
【請求項７】
前記画像を処理するステップは、
サイズｎのブロックの一連のピクセルを試験するステップと、
各ピクセルのブロックに対して、
該試験されたピクセルのブロックと該ピクセルの前のブロックとの第１の差を決定するステップと、
該試験されたピクセルのブロックと該ピクセルの後のブロックとの第２の差を決定するステップと、
該第１の差または該第２の差のどちらかが閾値の差よりも小さいかどうかを決定するステップと、
どちらかの差が該閾値の差よりも小さい場合、該第１の差が第２の差よりも小さければ、該試験されたピクセルのブロックに該ピクセルの前のブロックをコピーし、該第２の差が該第１の差よりも小さければ、該試験されたピクセルのブロックに該ピクセルの後のブロックをコピーするステップと
をさらに包含する、請求項１に記載の方法。
【請求項８】
前記一連のピクセルの試験は、少なくとも１回繰り返され、ｎは、連続する試験毎にデクレメントされる、請求項７に記載の方法。
【請求項９】
前記イメージの処理の前に、該イメージを解凍するステップをさらに包含する、請求項１に記載の方法。
【請求項１０】
イメージを処理する前記ステップは、
イメージの各複数のピクセルに対して、
ピクセルの色が第１の隣接するピクセルの色の閾値の距離内にあるかどうかを決定するステップと、
該ピクセルの色が該第１のピクセルの色の該閾値の距離内にあり、かつ、該ピクセルの色が第２の隣接するピクセルの色に対して少なくとも第１の隣接するピクセルの色に近い場合、該第１の隣接するピクセルの色に該ピクセルの色を変更するステップ
をさらに包含する、請求項１に記載の方法。
【請求項１１】
前記修正されたイメージを圧縮するステップは、該修正されたイメージにディクショナリベースの圧縮を実行するステップを包含する、請求項１０に記載の方法。
【請求項１２】
前記修正されたイメージを圧縮するステップは、該修正されたイメージにＬｅｍｐｅｌ−Ｚｉｖ１９７７（ＬＺ７７）圧縮を実行するステップを含む、請求項１１に記載の方法。
【請求項１３】
前記修正されたイメージを圧縮するステップは、該修正されたイメージにＬｅｍｐｅｌ−Ｚｉｖ１９７８（ＬＺ７８）圧縮を実行するステップを包含する、請求項１１に記載の方法。
【請求項１４】
前記修正されたイメージを圧縮するステップは、該修正されたイメージにＬｅｍｐｅｌ−Ｚｉｖ−Ｗｅｌｃｈ（ＬＺＷ）圧縮である、請求項１１に記載の方法。
【請求項１５】
プロセッサと、
バッファと
を備えるシステムであって、
該バッファは、該プロセッサによる実行のために複数のピクセルを格納するように構成され、
該プロセッサは、
ある圧縮技術に対して該イメージの圧縮率を増大させるようにイメージを処理し、
該圧縮技術に応じて該処理されたイメージを圧縮する
ように構成される、システム。
【請求項１６】
前記プロセッサは、一連のイメージのピクセルの各々を試験し、該一連のピクセルの各々に対して、
該ピクセルの色が第１の隣接するピクセルの色の閾値の差の範囲内にあるかどうかを決定し、
該ピクセルの色が第２の隣接するピクセルの色の閾値の差の範囲内にあるかどうかを決定し、
該ピクセルの色が該第１の隣接するピクセルの色の該閾値の差の範囲内にあり、かつ、該ピクセルの色が、該第２の隣接するピクセルの色に対して該第１の隣接するピクセルの色に少なくとも近い場合、該第１の隣接するピクセルの色に対して該ピクセルの色を変更するように構成される、請求項１５に記載のシステム。
【請求項１７】
前記プロセッサは、ディクショナリベースの圧縮技術を利用するように構成される、請求項１５に記載のシステム。
【請求項１８】
前記圧縮技術は、Ｌｅｍｐｅｌ−Ｚｉｖ１９７７（ＬＺ７７）圧縮である、請求項１７に記載のシステム。
【請求項１９】
前記圧縮技術は、Ｌｅｍｐｅｌ−Ｚｉｖ１９７８（ＬＺ７８）圧縮である、請求項１７に記載のシステム。
【請求項２０】
前記圧縮技術は、Ｌｅｍｐｅｌ−Ｚｉｖ−Ｗｅｌｃｈ（ＬＺＷ）圧縮である、請求項１７に記載のシステム。
【請求項２１】
前記プロセッサは、サイズｎのブロックの一連のピクセルを試験し、
各ピクセルのブロックに対して、
該試験されたピクセルのブロックとピクセルの前のブロックとの第１の差を決定し、
該試験されたピクセルのブロックとピクセルの後のブロックとの第２の差を決定し、
該第１の差または該第２の差のどちらかが閾値の差よりも小さいかどうかを決定し、
どちらかの差が該閾値の差よりも小さい場合、該第１の差が該第２の差よりも小さいならば、該試験されたピクセルのブロックに該ピクセルの前のブロックをコピーし、該第２の差が該第１の差よりも小さいならば、該試験されたピクセルのブロックに該ピクセルの後のブロックをコピーする、請求項１５に記載のシステム。
【請求項２２】
前記プロセッサは、前記一連のピクセルの試験を少なくとも１回繰り返すように構成され、ｎは、連続する試験毎にデクリメントされる、請求項２１に記載のシステム。
【請求項２３】
前記プロセッサは、前記イメージを処理する前に、該イメージを解凍するように構成される、請求項１５に記載のシステム。
【請求項２４】
前記プロセッサは、あるイメージの複数のピクセルの各々に対して、
該ピクセルの色が第１の隣接するピクセルの色の閾値の距離内にあるかどうかを決定し、
該ピクセルの色が該第１の隣接するピクセルの色の該閾値の距離内にあり、かつ、該ピクセルの色が第２の隣接するピクセルの色に対して該第１の隣接するピクセルの色に近い場合、該第１の隣接するピクセルの色に該ピクセルの色を変更する
ように構成される、請求項１５に記載のシステム。
【請求項２５】
前記プロセッサは、前記修正されたイメージにディクショナリベースの圧縮を実行するように構成される、請求項２４に記載のシステム。
【請求項２６】
前記プロセッサは、前記修正されたイメージにＬｅｍｐｅｌ−Ｚｉｖ１９７７（ＬＺ７７）圧縮を実行するように構成される、請求項２５に記載のシステム。
【請求項２７】
前記プロセッサは、前記修正されたイメージにＬｅｍｐｅｌ−Ｚｉｖ１９７８（ＬＺ７８）圧縮を実行するように構成される、請求項２５に記載のシステム。
【請求項２８】
前記プロセッサは、前記修正されたイメージにＬｅｍｐｅｌ−Ｚｉｖ−Ｗｅｌｃｈ（ＬＺＷ）圧縮を実行するように構成される、請求項２５に記載のシステム。
【請求項２９】
前記イメージを処理するステップは、
サイズｎのブロックの一連のピクセルを試験するステップと、
各ピクセルのブロックに対して、
該試験されたピクセルのブロックと該ピクセルの前のブロックとの第１の差を決定するステップと、
該試験されたピクセルのブロックと該ピクセルの後のブロックとの第２の差を決定するステップと、
該第１の差または該第２の差のどちらかが閾値の差よりも小さいかどうかを決定するステップと、
どちらかの差が該閾値の差よりも小さい場合、該第１の差が第２の差よりも小さければ、該試験されたピクセルのブロックに該ピクセルの前のブロックをコピーし、該第２の差が該第１の差よりも小さければ、該試験されたピクセルのブロックに該ピクセルの後のブロックをコピーするステップと
を包含する、請求項１に記載の方法。
【請求項３０】
ｎ＝１である、請求項２９に記載の方法。
【請求項３１】
ｎは１より大きく、前記一連のピクセルの試験は、少なくとも１回繰り返され、ｎは、連続する試験毎にデクリメントされる、請求項２９に記載の方法。
【請求項３２】
前記イメージを処理する前に、該イメージを解凍するステップをさらに包含する、請求項２９に記載の方法。
【請求項３３】
前記イメージを処理した後に、該イメージを圧縮するステップをさらに包含する、請求項２９に記載の方法。
【請求項３４】
前記圧縮技術は、ディクショナリベースの技術である、請求項３３に記載の方法。
【請求項３５】
前記修正されたイメージを圧縮するステップは、該修正されたイメージに対してＬｅｍｐｅｌ−Ｚｉｖ１９７７（ＬＺ７７）圧縮を実行するステップを包含する、請求項３４に記載の方法。
【請求項３６】
前記修正されたイメージを圧縮するステップは、該修正されたイメージに対してＬｅｍｐｅｌ−Ｚｉｖ１９７８（ＬＺ７８）圧縮を実行するステップを包含する、請求項３４に記載の方法。
【請求項３７】
前記修正されたイメージを圧縮するステップは、該修正されたイメージに対してＬｅｍｐｅｌ−Ｚｉｖ−Ｗｅｌｃｈ（ＬＺＷ）圧縮を実行するステップを包含する、請求項３４に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願との相互参照）
本願は、米国仮特許出願第６０／３２２、１４８号（Ｊｅｒｅｍｙ  Ｓ．Ｄｅ  Ｂｏｎｅｔによる「Ｔｒａｎｓｆｏｒｍａｔｉｏｎ  Ｓｙｓｔｅｍ  Ａｎｄ  Ｍｅｔｈｏｄ  Ｔｏ  Ｉｎｃｒｅａｓｅ  Ｔｈｅ  Ｌｅｍｐｅｌ−Ｚｉｖ  Ｃｏｍｐｒｅｓｓｉｂｉｌｉｔｙ  Ｏｆ  Ｉｍａｇｅ  Ｗｉｔｈ  Ｍｉｎｉｍａｌ  Ｖｉｓｕａｌ  Ｄｉｓｔｏｒｔｉｏｎ」２００１年９月１２日出願）で優先権を主張し、その全体を本明細書に記載する場合、参照として援用される。
【０００２】
本発明は一般にデジタルイメージ圧縮に関する。より詳細には本発明は強化されたディクショナリベースのイメージ圧縮技術、例えば周知のＬｅｍｐｅｌ−Ｚｉｖアルゴリズム（ＬＺ７７、ＬＺ７８およびＬＺＷを含む）であり、最小限の視覚の歪みを導入して、このような方法でイメージ圧縮率を増大させる。
【背景技術】
【０００３】
（関連技術）
デジタルイメージデータは、送達および／または格納のために膨大で高額になり得る。デジタルイメージを送達する場合に、より少量のバイトを（例えば、ウェッブを介して）送信するために、圧縮技術が用いられ得る。圧縮は、損失が多いかまたは損失がないかのどちらかであり得る。損失が多い圧縮は結果として、原型と同一ではないが、原型にかなり似ている。損失がない圧縮は、イメージの統計的冗長度の点で優位であり、あまりデータを用いずに正確に原型を表すイメージを作成する。
【０００４】
圧縮方法は、Ｃｌａｕｄｅ  Ｓｈａｎｎｏｎ（１９４８）の独創性に富んだ研究から始まったと理解されるべきで、彼は基礎情報論の大部分を生み出した。圧縮技術の力強いクラスは、ディクショナリベースの技術として知られるが、最初にＺｉｖおよびＬｅｍｐｅｌ（１９７７および１９７８）の研究で説明され、後に１９８４年にＷｅｌｃｈによって拡張された。ＬＺ７７およびＬＺ７８として一般に周知であるこれらの技術は、実装を簡単にし、かつ、相対的に早くし、かなり高い圧縮率を達成する。これらの特性のために、この技術は、多くのコンピュータアプリケーションで用いられている。
【０００５】
ＬＺ７７は、コンピュータプログラムｇｚｉｐ、ｚｉｐ、ＰＫＺｉｐ、ｄｅｆｌａｔｅおよびｚｌｉｂ用に内在する圧縮技術を形成する。さらにＬＺ７７は、ＰＮＧグラフィック形式に用いられている基礎的な圧縮層を形成する。ＬＺＷは、コンピュータプログラムコンプレスの基礎的な圧縮技術を形成する。さらにＬＺＷは、ＧＩＦグラフィック形式を用いて基礎的な圧縮層を形成する。
【０００６】
ディクショナリベースの技術は、特定のデータセットの中で変数群が意図されて繰り返される仮定を基にしている。ＺｉｖおよびＬｅｍｐｅｌ（１９７７）によって証明された画期的な事実の１つは、静止した分布用の、不変の工程によって生成されたデータの、ディクショナリベースの技術が、システムのエントロピに接近し、それ故、最大の可能圧縮率を達成することである。この理論的結果で、圧縮されるべきデータが無限に膨大である場合、最大の圧縮を達成することを保証するのみである。特にこれは、多くの拘束（格納、メモリおよびバンド帯を含む）によって制限されるデータのように明確な事例ではない（全てのデータは、有限でなければならない）。それ故、技術がデータのエントロピに近づく割合が決定的に重要である。
【０００７】
データ変数が小さなアルファベット（変数の範囲）から選ばれる場合、特にデータセットエントロピが低く、ディクショナリベースの圧縮は通常そのエントロピに急速に近づく。これによって、ＧＩＦおよびＰＮＧ形式両方は、イメージの中に表され得る色の数を減少させ、それによって、圧縮されるべきデータのアルファベットを減少する。ＧＩＦおよびＰＮＧ形式両方は、２５６色の上部限界を有する。ＬＺ７７およびＬＺＷ技術は、さらに色を用いることで、適度な圧縮率を達成する従来のイメージにおける現在よりも、より多くのデータを必要とする。
【０００８】
イメージをエンコードするＧＩＦまたはＰＮＧ工程は、以下のステップによって高水準で記載され得る。２５６または少数の色にイメージを減少するステップと、色のルックアップテーブル（ＬＵＴ）および色ルックアップテーブル変数（色変数）の２次元アレイとしてイメージを表すステップと、イメージサイズを格納するステップと、バックアップテーブルを格納するステップと、ＬＺＷまたはＬＺ７７を用いる色変数を圧縮および格納するステップによって記載される。
【０００９】
これらの技術を用いて、ＧＩＦおよびＰＮＧをエンコーディングする技術は、おおよそ２から５０の間で圧縮率を達成し得る。
【００１０】
イメージの圧縮率をさらに増大させるために、２つの従来技術が知られている。イメージのサイズ変更と色の減少である。
【００１１】
イメージのサイズ変更は、イメージのサイズを減少する単純な動作であり、それによってイメージのピクセル数を減少する。イメージのサイズ変更は、以下のいくつかの方法でなされ得る。サブサンプリング−いくつかのピクセルを単純に保持し、他を放棄するステップ；双１次補間−ピクセル群をその群における色の荷重平均変数と取り換えるステップ；スプライン補間−ピクセル群を群における色の荷重平均変数と取り換え、周囲の領域で原型イメージの色の変化の滑らかさを考慮するステップ；フィルタリング−ピクセル群をその群の色の変数の和と取り換え、周囲の領域で特定のフィルタを用いた変数によって重みをつけられるステップである。
【００１２】
イメージのサイズを減少することで、エンコーディングされる必要のピクセル変数が少なくすみ、結果、より小さい圧縮されたイメージになる。しかし、イメージのサイズを減少することによって、重要なイメージ特性を潜在的に含むイメージの細部は失われる。
【００１３】
ＧＩＦおよびＰＮＧのように一番良く格納されたイメージは、多くの場合、細部にわたり方向づけられており（すなわち、アイコン、ダイアグラムまたは図）、イメージサイズ変更が控えめなサイズ減少（すなわち、３０％以下の減少）でさえもよく受け入れられないために、細部は失われれる。
【００１４】
色の減少は、小数の色を用いてイメージを表す操作である。色の減少はイメージが一般に１６００万色の可能なセットから２５６色に減少する場合、ＧＩＦおよびＰＮＧ圧縮で既に実行されている。
【００１５】
色の減少は、アルファベットのサイズ（各ピクセルが帯び得る可能な変数の数）を減少することによってイメージの圧縮率を改善する。一般的に、小さいアルファベットはもはや、データの繰り返されるセット変数ではなくなり、それ故、高い圧縮率が得られる結果になる。
【００１６】
ある程度、色の減少技術は圧縮されたイメージのサイズをかなり効率的に減少し得、非常に小さなイメージの視覚的歪みを生成する。しかし、色の数が減少するにつれ、用いられている減少方法に関わらず視覚的歪みは減少する。
【００１７】
減少する色を補正するために、ディターリング（ｄｉｔｈｅｒｉｎｇ）でエラー拡散のような技術が用いられ得る。イメージ領域を異なった色のピクセルパターンを用いて満たすことで、膨大な色のセットの外観を近似され得る。しかし、ディクショナリベース圧縮の仕組みのディターリングまたはエラー拡散の適用は制限され、混合色のパターンは繰り返さないように意図され、短いディクショナリエントリを生み、圧縮率を制限する。
【発明の開示】
【課題を解決するための手段】
【００１８】
（本発明の簡単な要旨）
本発明は、イメージの圧縮率を増大するシステムおよび方法を包含し、最小の視覚的歪みを導入する。本明細書に開示された技術の根底にある概念は、ディクショナリ技術で達成可能な圧縮が、通常の列の長さおよび周期が増加する場合、増大することである。本発明は、均一の色の列の長さを広げることで通常の列の長さおよび周期が増加する。均一の色の列の長さを広げることで、列は自己圧縮率になる（例えば、列の開始が残り列を圧縮するように用いられ得る）。同色のほかの列とともに長い整合が起こる。
【００１９】
本発明の１つの簡単な実施形態によると、イメージのピクセルは試験される。各ローのピクセルは別々に試験される。各ローで左から右にいくと、各ピクセル（第１のおよび最後を除く）は、ただちに前および後ろの列のピクセルを比較する。ピクセルの色が、前または後ろのピクセルの色の閾値の距離内にある場合、前および後ろのピクセルに近い色に変化させる。ピクセルの１つのローが完了した後、全体のイメージが試験されるまで次のローが試験される。
【００２０】
本発明の別のより複雑な実施形態において、イメージのピクセルは複数の反復で試験される。この実施形態において、個々のピクセルではなくてピクセルのブロックで、最後の反復を除いて試験され続ける。色の相違は、全体のピクセルのブロックに対して計算され、ブロックは隣接したブロックに整合するように変化する。すなわちブロックが十分に色に近いと、試験されているブロックに色を複製する。この工程は、イメージの各ローごとに繰り返されている。各反復が完了した後、ブロックサイズは１ピクセル単位で減少され、そしてこの工程は繰り返される。最後の反復でブロックサイズが１ピクセルになるまでブロックサイズは減少され、これによって最後の反復は上述の簡単な方法と同じである。
【００２１】
本発明の別の実施形態は、ソフトウェアアプリケーションを含む。このソフトウェアアプリケーションは、コンピュータ読み込み可能媒体を具現化し得、例えば、フロッピー（登録商標）ディスク、磁気テープ、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、ＲＡＭ、ＲＯＭ等である。コンピュータ読み込み可能媒体は、コンピュータに上述されたような一般的な方法を実行さすように構成されている命令を含む。コンピュータ読み込み可能媒体はＲＡＭまたはコンピュータシステムを形成する他のメモリを備えることを注記すべきである。コンピュータシステムはそれによって、この開示に従って方法を実行することが可能で、添付の特許請求の範囲内であると思われる。
【００２２】
多くのさらなる実施形態はまた可能である。
【００２３】
本発明の他の目的および優位性は以下の詳細な説明を読み、かつ、添付の図を参照することで明らかになる。
【００２４】
本発明は、さまざまな改変および代替的形式に制約されるが、特定の実施形態は図の実施例の方法で示され、詳細な説明が付けられている。しかし、この図および詳細な説明で、本発明が記載された特定の実施形態に制限されることを意図しない。この開示は、全ての改変を網羅することを意図され、同等および代替的に、添付の特許請求によって定義されるように本発明の範囲内に収まる。
【発明を実施するための最良の形態】
【００２５】
（発明の詳細な説明）
本発明の好適な実施形態を以下に記載する。以下に記載されるこの実施形態および任意の他の実施形態は例示的で、制限ではなくて本発明の実例となるように意図される。
【００２６】
大ざっぱに言うと、本発明はイメージのピクセルを試験することによって、デジタルイメージの圧縮率を増大させるシステムおよび方法を含む。与えられたピクセルの色がその隣のピクセルの色に十分近い場合、ピクセルの色は隣のピクセルの色に変化する。このように、多くの連続する同色のピクセルが増加し、ディクショナリベースの圧縮技術に関してイメージデータをより圧縮させる。
【００２７】
一般にイメージのピクセルは、ひとつひとつ試験され、左から右へ上から下に行う。各ピクセルに対してピクセルの色の変数は閾値の差以内であるか、または、前の（左）または後ろの（右）ピクセルのどちらかの閾値の「距離」であるかを判定する。ピクセルの色が、他のピクセルうちの１つの閾値の距離内にある場合、ピクセルの色は前のピクセルまたは後ろのピクセルの閾値に近いほうへ変化する。閾値の色の距離は、高いまたは低い変数に構造化可能であり得、重要な境界および詳細は歪められないことを保証する。この方法は作動長を増加し得る（同じ色の連続のピクセル）。作動の終了において、この技術は、前のピクセルの色ととともに継続し得る。作動の始まりおいて、後ろのピクセルの色へ変化し得る。
【００２８】
本発明の２つの例示的な実施形態は、均一色の列の長さがデジタルイメージで拡張され得る方法を含む。それによって、通常の列の長さおよび周期を増加し、それ故に、イメージの圧縮率を増大する。第１の方法は、第２の方法より単純であり、多くのアプリケーションに対して、所望の圧縮歪みのトレードオフを達成し得る。
【００２９】
第１の方法はイメージデータを介する単一パスを含む。各ローは別々に試験される。各ローの左から右に行くと各ピクセルは、すぐにローの前のおよび後ろのピクセルを比較する。ピクセルの色が前のまたは後ろのピクセルの色の閾値の距離内にある場合、前のまたは後ろのピクセルの近い色に変化する。ピクセルの１つのローが完了した後、全体のイメージが試験されるまで次のローが試験される。
【００３０】
図１を参照して、第１の、単純な方法を例示したフローチャートを示す。この図にて、圧縮された入力イメージ１０１０は、イメージソース１０００より選ばれる。例えば、ハードドライブ、デジタルカメラまたはウェッブサイトである。入力イメージは、標準ディクショナリベースのイメージ解凍技術（ＧＩＦまたはＰＮＧ解凍のどちらか）を用いるデコード１０２０である。結果として起こるイメージは、２５６色または少数の色を用いたルックアップテーブル（ＬＵＴ）イメージであり、その色は色ＬＵＴおよびルックアップ変数の２次元アレイから構成される。一般に、このＬＵＴイメージはユーザデバイスのエンドで表示されるものか、または、イメージはＲＧＢイメージに変換され得る。
【００３１】
原型のイメージは前に圧縮される必要がないことを注記すべきである。圧縮されたイメージの使用は、単にイメージがその圧縮率を増大するように処理されることを例示するものである。
【００３２】
変換の工程は、アレイ指数ｎ（１０３０）の初期化とともに開始され、指標ｎ（１０３０）は第２のピクセルで開始する（最初のピクセルがピクセル０なのでこの場合ピクセル１である）。ピクセルｎで参照される色はｐ（ｎ）にて表現される。１０４０において、ピクセルｐ（ｎ）の色は、ノルムの関数を用いて前のピクセルｐ（ｎ−１）の色と比較される。これは２つのピクセルの色の間の距離寸法ｄＬを生む。同様の計算はｐ（ｎ）と後のピクセルｐ（ｎ＋１）との間で計算され、距離寸法ｄＲを生む。ピクセルｎの隣の（ｎ−１およびｎ＋１）との色の密接度は、決定され得る。
【００３３】
ｄＬおよびｄＲは、他の各々とまたは閾値Ｔ（１０５０および１０６０にて示す）と比較されるのみであり、任意の距離関数が用いられ得、同様に、標準の数学的の基準（単色、三角不等式およびゼロノルム）の定義を満たす。いくつか可能な選択を以下に示す。
【００３４】
【数１】
2005503056.tif 000003
実際に、Ｌ２ノルムの２乗
【００３５】
【数２】
2005503056.tif 000004
を利用することは、しばしば役立つ。なぜなら、これは、ほとんどのコンピュータアーキテクチャ上で（たいていプロセッサの一周期において）極めて速く計算され得るからである。あるノルム関数の選択により、異なる高損失の近似を生じるが、アルゴリズムの差は生じない。
【００３６】
ｄＬおよびｄＲが計算された後、ｄＲはＴ（１０５０）と比較される。ｄＲがＴよりも小さい場合、その後ｄＬ（１０７０）と比較される。さもなければ、ｄＬはＴ（１０６０）と比較される。
【００３７】
処理が１０７０に達した場合（すなわちｄＲがＴよりも小さい場合）、そして、ｄＲがｄＬよりも小さい場合、ピクセルｎ＋１におけるルックアップ値は、ピクセルｎ（１０８０）におけるルックアップ値にコピーされる。そうでない場合、ピクセルｎ−１におけるルックアップ値はピクセルｎ（１０９０）におけるルックアップ値にコピーされる。
【００３８】
処理が１０６０に達した場合（すなわちｄＲがＴよりも小さい場合）、そして、ｄＬがＴよりも小さい場合、ピクセルｎ−１におけるルックアップ値はピクセルｎ（１０９０）におけるルックアップ値にコピーされる。そうでない場合、ピクセルｎにおけるルックアップ値は変化しないままである（１１００）。
【００３９】
次に、インデックスｎを処理することは、ｎ＋１まで進む（１１１０）。新しいピクセルｎが行（ピクセルＣ−１）において最下位のピクセルではない場合、その後、プロセスは（１０４０まで戻ることによって）この新しいピクセル位置で繰り返される。新しいピクセルが行において最下位のピクセルである場合、このプロセスは処理されない（１１２０）。この手順は、イメージにおける全ての行に対して繰り返される。各行が処理された後、次に、イメージは、標準ディクショナリベースのイメージ圧縮技術（例えば、ＧＩＦまたはＰＮＧ圧縮のどちらか）を用いて再圧縮される（１１３０）。
【００４０】
ほとんどの場合、新しい圧縮イメージ（１１４０）は、オリジナル（１０１０）よりも小さくなる。所与のイメージに対してなされ得る追加の圧縮は、閾値パラメータＴによってコントロールされる。Ｔの値が大きくなるにつれピクセルの色は隣接したピクセルの色に変化されることになり得る。しかし、追加の圧縮は、さらなる視覚的な歪みを犠牲にしてなされることが覚えておくべきことである。従って、Ｔは、圧縮および視覚的な歪みの両方の適切なレベルをなすように選択されるべきである。典型的には、圧縮は、イメージに対する極めて小さい視覚的歪みである２５〜３５％の範囲内で増加され得る。
【００４１】
図１の実施形態から変化する多くの方法で、同様の方法がインプリメントされ得ることに留意されたい。例えば、ｄＬは、ｄＲが閾値パラメータＴと比較される以前に閾値パラメータＴと比較され得、あるいは、ｄＬは、ｄＲと比較され得、それらのうち小さい方だけがＴと比較され、ピクセルｎの色に変化するかどうかを決定し得る。このような変更は、記載される方法と等価であると考慮される。
【００４２】
ピクセルが、上述される実施形態において左から右、上から下へと調べられる一方で、これは他の実施形態における場合とは異なり得ることに留意されたい。ピクセルの順序は、イメージングファイルフォーマットによって決まる。２つのピクセルのためのデータが、イメージングファイルに連続して格納される場合、次に、２つのピクセルは、記載される方法のコンテキストにおいてそれらを検査するために隣接して（すなわち、それらは隣同士）考慮される。
【００４３】
図１に記載される変換方法は、コンピュータプログラミング言語で書かれるアルゴリズムとして描写され得る。図２は、Ｃ＋＋で書かれるこの変換方法のインプリメンテーションを示す。この場合も、多くの変更が可能である、結果としてそれぞれ等価なインプリメンテーションで生じる。
【００４４】
第２に、より高度な実施形態は、上述の単一の変換の複数の繰り返しバージョンを含む。この実施形態において、個々のピクセルではなくピクセルブロックが第１の繰り返しについて調査する。色の違いは、ピクセルブロック全体に対して計算され、ブロックは、隣接したブロックに一致するように変更される。ブロックの色の違いは、本実施形態において定義され、各ブロックの対応するピクセル間の個々のブロックの違いの合計になる。このプロセスは、イメージの各行に対して繰り返される。これは、隣接するピクセルに対する色において極めて近似するピクセルの小さいグループを変化しないという潜在的な問題を解決する。引き続く繰り返しにおいて、ブロックサイズは、最後の繰り返しにおいて、方法の残りが上述される単一の方法と同一になるまで減少される。
【００４５】
図３は、さらに高度な方法を示すフロー図である。本実施形態において、複数のパスがイメージを引き取る。第１のパスの前に、複数のパスがイメージを引き取る。第１のパスの前に、グループサイズｋは、値Ｌに初期化される。これは入力パラメータである。インデックスｎが、サイズｋのステップにおいてイメージを経て進むにとき（２０１０）、ｎにおけるウィンドウの左および右へのサイズｋのピクセルのグループがｎにおけるサイズｋのグループと比較される。左または右からの個々のピクセルが単一の変換（１０８０、１０９０）においてコピーされたことと同様に、高度な変換において、長さｋのウィンドウ全体がコピーされる（２０８０、２０９０）。
【００４６】
各パスの後、グループサイズｋが減少され（２１２２）、プロセスは、サイズが０に達するまで（２１２４）に、イメージが、例えばＧＩＦまたはＰＮＧ圧縮といった標準ディクショナリベースのイメージ圧縮技術を用いて再圧縮される（２１３０）点で、より小さいグループサイズで繰り返される。
【００４７】
このより高度な方法でＬおよびＴの特定のセッティングを用いて、より大きな圧縮の改良は、イメージを複数のパスに引き取るために必要とされる更なる計算時間を犠牲にしてなされ得る。単一の変換とは異なって、高度な変換は、特定のパラメータを用いて、極めて高い圧縮レベルを達成するためにイメージの視覚的な外観を完全に歪め得る。しかし、いくつかのアプリケーションに対して、これらの極端な歪みレベルは、受け入れられない。
【００４８】
この変換は、コンピュータプログラミング言語で書かれるアルゴリズムとして繰り返され得る。図４は、Ｃ＋＋で書かれるこの変換のインプリメンテーションを含む。
【００４９】
本明細書に開示される方法論は、ソフトウェア（ファームウェアを含む）およびハードウェアの多様な組み合わせでインプリメントされ得ることに留意されたい。したがって本願は、コンピュータまたは他のデータプロセッサが本明細書に開示される方法の実行をもたらすための指示を含むソフトウェアアプリケーションを覆うことが意図される。これらのソフトウェアアプリケーションは、フロッピー（登録商標）ディスク、磁気テープ、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、ＲＡＭ、ＲＯＭなどを含む、例えばコンピュータまたはデータプロセッサによる任意の媒体リーダブルで具現化され得る。このようなソフトウェアアプリケーションを実行するために構成され、または、さもなければ本明細書中に開示される方法を実行するためにプログラムされる、コンピュータあるいはデータプロセッサは、本発明によってカバーされるように意図される。
【００５０】
本発明によって提供され得る利益および利点は、特定の実施形態について上述されてきた。これらの利益および利点、ならびに、それらがより明白に生じ、または明白になり得る任意の要素あるいは限定は、任意または全ての特許請求の範囲の重要な、必要な、または基本的な特徴として構成されるべきでない。本明細書中に用いられるように、用語「含む（ｃｏｍｐｒｉｓｅ）」、「含む（ｃｏｍｐｒｉｓｉｎｇ）」、またはその任意の変形は、これらの用語に続く要素または限定を排他的に含むとして解釈されるように意図される。従って、要素のリストを含むプロセス、方法、物、または装置は、これらの要素のみを含むのではなく、特許請求の範囲のプロセス、方法、物、または装置に明白にリストされ、または固有でない他の要素を含み得る。
【００５１】
本発明は、特定の実施形態に従って記載されてきた一方で、実施形態は実例であり、本発明の範囲がこれらの実施形態に限定されないことが理解されるべきである。上述の実施形態に対して多くの変形、変更、追加、および改良が可能である。これらの変形、変更、追加、および改良が、添付の特許請求の範囲内に記載されるように発明の範囲に含まれることが意図される。
【図面の簡単な説明】
【００５２】
【図１】図１は、イメージの単純な変換を含む本発明の１つの実施形態を例示したフローチャートである。
【図２】図２は、プログラミング言語Ｃ＋＋で書かれたアルゴリズムとして表現された図１の実施形態の単純な変換の実装を示す。
【図３】イメージの進歩した変換を含む本発明に１つの実施形態を例示したフローチャートである。
【図４】図４は、プログラミング言語Ｃ＋＋で書かれたアルゴリズムとして表現された図３の実施形態の単純な変換の実装を示す。
【図１】
2005503056.tif 000005
【図３】
2005503056.tif 000006
【国際公開パンフレット】
2005503056.tif 000007
2005503056.tif 000008
2005503056.tif 000009
2005503056.tif 000010
2005503056.tif 000011
2005503056.tif 000012
2005503056.tif 000013
2005503056.tif 000014
2005503056.tif 000015
2005503056.tif 000016
2005503056.tif 000017
2005503056.tif 000018
2005503056.tif 000019
2005503056.tif 000020
2005503056.tif 000021
2005503056.tif 000022
2005503056.tif 000023
2005503056.tif 000024
2005503056.tif 000025
2005503056.tif 000026
2005503056.tif 000027
2005503056.tif 000028
2005503056.tif 000029
2005503056.tif 000030
2005503056.tif 000031
2005503056.tif 000032
2005503056.tif 000033
【国際調査報告】
2005503056.tif 000034