(57)【特許請求の範囲】
【請求項１】
画像を複数のカラー・チャネル副画像に分離するステップと、
前記カラー・チャネル副画像を、以下のステップ、即ち、
前記副画像をサブサンプルするステップ、
前記サブサンプル副画像を変換コード化するステップ、
前記変換コード化画像をデコードするステップ、
前記デコード画像において、複数の正方形画素集合体を形成するステップ、
前記正方形画素集合体の各々において、画素の値を予測するステップであって、該予測するステップは、
前記正方形画素集合体における前記画素の内３つの値が中央値よりも大きく、前記正方形画素集合体における第４の画素の値が前記中央値よりも小さい場合、前記３つの画素の値の平均に前記予測値を設定するステップと、
前記３つの画素値が前記中央値よりも小さく、前記正方形画素集合体における第４の画素の値が前記中央値よりも大きい場合、前記３つの画素の値の平均に、前記予測値を設定するステップと、
前記正方形画素集合体における対角線上で対向する２つの画素の値間の絶対差がスレシホルド未満であり、前記正方形内の他の２つの画素の値間の絶対差が前記スレシホルド以上である場合、前記対角線上で対向する２つの画素の平均値に、前記予測値を設定するステップと、
前記予測値を前記設定ステップのいずれでも設定しない場合、前記予測値を前記正方形画素集合体内の前記画素全ての平均に設定するステップと、
を含む、ステップ、
前記正方形画素集合体の各々において、各予測画素値毎に、予測誤差を判定するステップ、
前記予測誤差をコード化するステップ、
前記デコード画像において、複数の菱形状画素集合体を形成するステップ、及び
前記菱形状画素集合体の各々において、画素の値を予測するステップ、
によって処理するステップと、
前記処理したカラー・チャネル副画像の各々を前記コード化予測誤差と組み合わせ、これにより圧縮画像を形成するステップと、
を含む、画像圧縮方法。
【請求項２】
請求項１記載の方法において、前記分離するステップが、前記画像をＲＧＢカラー空間における赤（Ｒ）、緑（Ｇ）および青（Ｂ）に分離するステップを含む方法。
【請求項３】
請求項１記載の方法において、前記分離するステップが、前記画像をＹＣｂＣｒカラー空間における輝度（Ｙ）、クロミナンス（Ｃｂ）およびクロミナンス（Ｃｒ）に分離するステップを含む方法。
【請求項４】
請求項１記載の方法において、前記サブサンプルするステップが、前記副画像のサイズの１／４にサブサンプルするステップを含む方法。
【請求項５】
請求項４記載の方法において、前記サブサンプルするステップが、
前記副画像の画素を、４つの互いに隣接する画素の複数のサブサンプル集合体に集合化するステップと、
前記サブサンプル集合体の各々において１つの画素を保持するステップと、
を含む方法。
【請求項６】
請求項５記載の方法において、保持した各画素が、前記サブサンプル集合体の各々において同じ位置を占める方法。
【請求項７】
請求項１記載の方法において、前記変換コード化するステップが、離散コサイン変換（ＤＣＴ）を用いて変換コード化を行なうステップを含む方法。
【請求項８】
請求項１記載の方法において、前記変換コード化するステップが、ウェーブレット変換を用いて変換コード化を行なうステップを含む方法。
【請求項９】
請求項１記載の方法において、前記変換コード化するステップが、４：１ないし１２：１の圧縮比で変換を行なうステップを含む方法。
【請求項１０】
請求項１記載の方法において、前記画像は、第１量子化テーブルを有するＪＰＥＧ圧縮画像であり、前記変換コード化するステップは、前記画像の前記第１量子化テーブルのサイズ以下のサイズを有する第２量子化テーブルを用いて変換を行なうステップを含む方法。
【請求項１１】
請求項１記載の方法において、前記中央値が１２８である方法。
【請求項１２】
請求項１記載の方法において、前記判定するステップが、前記予測誤差が最大値よりも大きく、最小値よりも小さい場合、前記予測誤差を破棄するステップを含む方法。
【請求項１３】
請求項１２記載の方法において、前記最大値が２３０であり、前記最小値が２０である方法。
【請求項１４】
請求項１記載の方法において、前記判定するステップが、前記正方形画素集合体における各２つの画素間の絶対差が第１スレシホルド以下である場合、前記予測誤差を破棄するステップを含む方法。
【請求項１５】
請求項１４記載の方法において、前記第１スレシホルドが８である方法。
【請求項１６】
請求項１４記載の方法において、前記予測誤差をコード化するステップが、前記正方形画素集合体における各２つの画素間の絶対差が第２スレシホルド以下である場合、ハフマン・コードを用いてコード化を行なうステップを含む方法。
【請求項１７】
請求項１６記載の方法において、前記第２スレシホルドが１６である方法。
【請求項１８】
請求項１６記載の方法において、前記予測誤差をコード化するステップが、前記正方形画素集合体における各２つの画素間の絶対差が前記第２スレシホルドよりも大きい場合、ハフマン・コードを用いてエントロピ・コード化を行なうステップを含む方法。
【請求項１９】
請求項１記載の方法において、前記予測誤差をコード化するステップが、４の量子化係数を用いて前記予測誤差を量子化するステップを含む方法。
【請求項２０】
画像を複数のカラー・チャネル副画像に分離するステップと、
前記カラー・チャネル副画像を、以下のステップ、即ち、
前記副画像をサブサンプルするステップ、
前記サブサンプル副画像を変換コード化するステップ、
前記変換コード化画像をデコードするステップ、
前記デコード画像において、複数の正方形画素集合体を形成するステップ、
前記正方形画素集合体の各々において、画素の値を予測するステップ、
前記正方形画素集合体の各々において、各予測画素値毎に、予測誤差を判定するステップ、
前記予測誤差をコード化するステップ、
前記デコード画像において、複数の菱形状画素集合体を形成するステップ、及び
前記菱形状画素集合体の各々において、画素の値を予測するステップであって、該予測するステップは、
前記菱形状画素集合体における前記画素の過半数の値が中央値よりも大きく、前記菱形状画素集合体における少なくとも１つの残りの画素の値が前記中央値よりも小さい値を有する場合、前記画素の過半数の平均に前記予測値を設定するステップと、
前記菱形状画素集合体における前記画素の過半数の値が中央値よりも小さく、前記菱形状画素集合体における少なくとも１つの残りの画素の値が前記中央値よりも大きい値を有する場合、前記画素の過半数の平均に前記予測値を設定するステップと、
を含む、ステップ、
によって処理するステップと、
前記処理したカラー・チャネル副画像の各々を前記コード化予測誤差と組み合わせ、これにより圧縮画像を形成するステップと、
を含む、画像圧縮方法。
前記処理したカラー・チャネル副画像の各々を前記コード化予測誤差と組み合わせ、これにより圧縮画像を形成するステップと、
によって処理を行う、画像圧縮方法。
【請求項２１】
請求項２０記載の方法であって、更に、
前記設定するステップのいずれにおいても前記予測値を設定しない場合、前記菱形状画素集合体における水平方向に対向する２つの画素の値間の絶対差がスレシホルドよりも小さく、前記菱形状画素集合体における垂直方向に対向する２つの画素間の絶対差が前記スレシホルド以上であるのであれば、前記菱形状画素集合体における前記水平方向に対向する２つの画素の平均に、前記予測値を設定するステップと、
前記垂直方向に対向する画素の値間の絶対差がスレシホルドよりも小さく、前記菱形状画素集合体における水平方向に対向する２つの画素間の絶対差が前記スレシホルド以上である場合、前記菱形状画素集合体における前記垂直方向に対向する２つの画素の平均に、前記予測値を設定するステップと、
を含む方法。
【請求項２２】
請求項２１記載の方法であって、更に、
前記設定するステップのいずれにおいても前記予測値を設定しない場合、以下のように垂直方向に並んだ６つの画素および水平方向に並んだ６つの画素から予測した値を有する、前記画素Ｚを包囲するチェッカーボード集合体を形成するステップ、
【数１】
・・・・・・・・・・・・・・・・・・・・
・・・・・・・・Ｖ1・Ｖ4・・・・・・・・
・・・・・・・Ｈ1・Ｈ2・Ｈ3・・・・・・・
・・・・・・・・Ｖ2ＺＶ5・・・・・・・・
・・・・・・・Ｈ4・Ｈ5・Ｈ6・・・・・・・
・・・・・・・・Ｖ3・Ｖ6・・・・・・・・・
・・・・・・・・・・・・・・・・・・・・
水平カウンタおよび垂直カウンタを０に初期化するステップ、
Ｈ１およびＨ２間の差の絶対値がスレシホルドより小さい場合、前記水平カウンタを増分するステップ、
Ｈ２およびＨ３間の差の絶対値がスレシホルドより小さい場合、前記水平カウンタを増分するステップ、
Ｈ４およびＨ５間の差の絶対値がスレシホルドより小さい場合、前記水平カウンタを増分するステップ、
Ｈ３およびＨ５間の差の絶対値がスレシホルドより小さい場合、前記水平カウンタを増分するステップ、
Ｖ１およびＶ２間の差の絶対値がスレシホルドより小さい場合、前記垂直カウンタを増分するステップ、Ｖ２およびＶ３間の差の絶対値がスレシホルドより小さい場合、前記垂直カウンタを増分するステップ、
Ｖ４およびＶ５間の差の絶対値がスレシホルドより小さい場合、前記垂直カウンタを増分するステップ、
Ｖ３およびＶ５間の差の絶対値がスレシホルドより小さい場合、前記垂直カウンタを増分するステップ、
前記水平カウンタが前記垂直カウンタより大きい場合、画素Ｚと接し前記垂直方向に並んだ画素の平均に、前記予測値を設定するステップ、
前記垂直カウンタが前記水平カウンタよりも大きい場合、画素Ｚと接し前記水平方向に並んだ画素の平均に、前記予測値を設定するステップ、
を含む方法。
【請求項２３】
請求項２２記載の方法であって、更に、
前記設定するステップのいずれにおいても前記予測値を設定しない場合、前記菱形状画素集合体における画素全ての平均に、前記予測値を設定するステップを含む方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、一般的に、画像圧縮に関し、更に特定すれば、無損失視覚画像圧縮に関する。
【０００２】
【従来の技術】
視覚画像圧縮技法は、ディジタル化したカラー画像を表現するために用いられるデータ量を削減しつつ、高品質の画像表現を得るために提案された。どの程度画像が圧縮されるかは、圧縮比で与えられ、画像自体、用いられる技法、および許容可能な情報損失量によって異なる。これらの技法の一部は、「無損失」である。これは、元の画像の情報全てを保存しているので、データを伸長する際に正確に再現されることを意味する。他の技法は、一般に「損失性」と呼ばれており、視覚上重要でない情報を破棄する。損失性技法は、元の画像を正確に再現するのではなく、これを近似するだけとすることにより、一般に、無損失技法よりも高い圧縮比を得ることができる。適切な圧縮技法および圧縮比を選択するには、ユーザは、圧縮比が高い程送信時間は短くなり、メモリ必要量も少なくて済むが、得られる画質は低下することを理解して、圧縮する個々の画像、所望の画質、ならびに送信時間およびメモリ要件を考慮しなければならない。
【０００３】
典型的な高品質デジタル化カラー画像は、画素当たり（ｂｐｐ）２４ビットを用い、ＲＧＢカラー空間における３つの基本カラー成分である赤（Ｒ）、緑（Ｇ）および青（Ｂ）のそれぞれに８ビットを割り当てる。あるいは、ＹＣｂＣｒカラー空間における３つの基本輝度−色成分である輝度（Ｙ）、クロミナンス（Ｃｂ）およびクロミナンス（Ｃｒ）のそれぞれに８ビットを割り当てる。このような画像を未圧縮状態で（即ち、空間または画素ドメインにおいて）送信または格納すると、時間、メモリ、および帯域幅要件に関して、過度の費用を要することになる。したがって、高品質デジタル化カラー画像を格納または送信するアプリケーションおよびデバイスは、典型的に、圧縮フォーマットでそうするようにしている。
【０００４】
現在では、カラー画像の無損失圧縮技法で可能な圧縮比は２：１に近づきつつあり、一方損失性圧縮技法で可能な圧縮比は１００：１に近づきつつある。したがって、８：１ないし２０：１の間の圧縮比を可能にしつつ、無損失圧縮技法の画質に近い画質を維持する損失性圧縮技法があれば、有利であろう。
【０００５】
【発明の概要】
本発明の一態様では、画像圧縮方法を提供する。この方法は、画像を複数のカラー・チャネル副画像に分離するステップと、カラー・チャネル副画像を処理するステップであって、副画像をサブサンプルし、サブサンプル副画像を変換コード化し、変換コード化画像をデコードし、デコード画像において、複数の正方形画素集合体を形成し、ｘ状集合体の各々において、画素の値を予測し、正方形集合体の各々において、各予測画素値毎に、予測誤差を判定し、予測誤差をコード化し、デコード画像において、複数の少なくとも部分的に菱形状の画素集合体を形成し、菱形状集合体の各々において、画素の値を予測し、処理したカラー・チャネル副画像の各々をコード化予測誤差を組み合わせることによって、圧縮画像を形成することによって処理するステップとを含む。
【０００６】
本発明の別の態様では、分離するステップは、画像をＲＧＢカラー空間における赤（Ｒ）、緑（Ｇ）および青（Ｂ）に分離することから成る。
本発明の別の態様では、分離するステップは、画像をＹＣｂＣｒカラー空間における輝度（Ｙ）、クロミナンス（Ｃｂ）およびクロミナンス（Ｃｒ）に分離することから成る。
【０００７】
本発明の別の態様では、サブサンプルするステップは、副画像のサイズの１／４にサブサンプルすることから成る。
本発明の別の態様では、サブサンプルするステップは、副画像の画素を、４つの互いに隣接する画素の複数のサブサンプル集合体に集合化するステップと、サブサンプル集合体の各々において１つの画素を保持するステップとを含む。
【０００８】
本発明の別の態様では、保持した各画素が、サブサンプル集合体の各々において同じ位置を占める。
本発明の別の態様では、変換コード化するステッは、離散コサイン変換（ＤＣＴ）を用いて変換コード化を行なうことから成る。
【０００９】
本発明の別の態様では、変換コード化するステップは、ウェーブレット変換を用いて変換コード化を行なうことから成る方法。
本発明の別の態様では、変換コード化するステップは、４：１ないし１２：１の圧縮比で変換を行なうことから成る。
【００１０】
本発明の別の態様では、画像は、第１量子化テーブルを有するＪＰＥＧ圧縮画像であり、変換コード化ステップは、画像の第１量子化テーブルのサイズ以下のサイズを有する第２量子化テーブルを用いて変換を行なうことから成る方法。
【００１１】
本発明の別の態様では、正方形集合体の各々において画素の値を予測するステップは、正方形集合体における画素の内３つの値が中央値よりも大きく、正方形集合体における第４の画素の値が中央値よりも小さい場合、３つの画素の値の平均に予測値を設定するステップと、３つの画素値が中央値よりも小さく、正方形集合体における第４の画素の値が中央値よりも大きい場合、３つの画素の値の平均に、予測値を設定するステップと、正方形集合体における対角線上で対向する２つの画素の値間の絶対差がスレシホルド未満であり、正方形内の他の２つの画素の値間の絶対差がスレシホルド以上である場合、対角線上で対向する２つの画素の平均値に、予測値を設定するステップと、予測値を設定ステップのいずれでも設定しない場合、予測値を正方形集合体内の画素全ての平均に設定するステップとを含む。
【００１２】
本発明の別の態様では、中央値は１２８である。
本発明の別の態様では、判定するステップは、予測誤差が最大値よりも大きく、最小値よりも小さい場合、予測誤差を破棄することを含む方法。
【００１３】
本発明の別の態様では、最大値が２３０であり、最小値は２０である。
本発明の別の態様では、判定するステップは、正方形集合体における各２つの画素間の絶対差が第１スレシホルド以下である場合、予測誤差を破棄することを含む。
【００１４】
本発明の別の態様では、第１スレシホルドは８である。
本発明の別の態様では、コード化するステップは、正方形集合体における各２つの画素間の絶対差が第２スレシホルド以下である場合、ハフマン・コード（Ｈｕｆｆｍａｎ  ｃｏｄｅ）を用いてコード化を行なうことを含む。
【００１５】
本発明の別の態様では、第１スレシホルドは１６である。
本発明の別の態様では、コード化ステップは、正方形集合体における各２つの画素間の絶対差が第２スレシホルドよりも大きい場合、ハフマン・コードを用いてエントロピ・コード化（ｅｎｔｒｏｐｙ  ｃｏｄｉｎｇ）を行なうことを含む。
【００１６】
本発明の別の態様では、コード化するステップは、４の量子化係数を用いて予測誤差を量子化することを含む。
本発明の別の態様では、菱形状集合の各々において画素の値を予測するステップは、菱形状集合体における画素の大部分の値が中央値よりも大きく、菱形状集合体における少なくとも１つの残りの画素の値が中央値よりも小さい値を有する場合、画素の大部分の平均に予測値を設定するステップと、菱形状集合体における画素の大部分の値が中央値よりも小さく、菱形状集合体における少なくとも１つの残りの画素の値が中央値よりも大きい値を有する場合、画素の大部分の平均に予測値を設定するステップとを含む。
【００１７】
本発明の別の態様では、本方法は、更に、設定ステップのいずれにおいても予測値を設定しない場合、菱形状集合体における水平方向に対向する２つの画素の値間の絶対差がスレシホルドよりも小さく、菱形状集合体における垂直方向に対向する２つの画素間の絶対差がスレシホルド以上であるのであれば、菱形状集合体における水平方向に対向する２つの画素の平均に、予測値を設定するステップと、垂直方向に対向する画素の値間の絶対差がスレシホルドよりも小さく、菱形状集合体における水平方向に対向する２つの画素間の絶対差がスレシホルド以上である場合、菱形状集合体における垂直方向に対向する２つの画素の平均に、予測値を設定するステップとを含む。
【００１８】
請求項２２に係る本発明の別の態様では、更に、設定ステップのいずれにおいても予測値を設定しない場合、以下のようにして、６つの垂直方向に並んだ画素および６つの水平方向に並んだ画素から予測した値を有する、画素Ｚを包囲するチェッカーボード集合体を形成する。
【００１９】
【数２】
・・・・・・・・・・・・・・・・・・・
・・・・・・・・Ｖ1・Ｖ4・・・・・・
・・・・・・・Ｈ1・Ｈ2・Ｈ3・・・・
・・・・・・・・Ｖ2ＺＶ5・・・・・・
・・・・・・・Ｈ4・Ｈ5・Ｈ6・・・・
・・・・・・・・Ｖ3・Ｖ6・・・・・・
・・・・・・・・・・・・・・・・・・・
水平カウンタおよび垂直カウンタを０に初期化し、Ｈ１およびＨ２間の差の絶対値がスレシホルドより小さい場合、水平カウンタを増分し、Ｈ２およびＨ３間の差の絶対値がスレシホルドより小さい場合、水平カウンタを増分し、Ｈ４およびＨ５間の差の絶対値がスレシホルドより小さい場合、水平カウンタを増分し、Ｈ３およびＨ５間の差の絶対値がスレシホルドより小さい場合、水平カウンタを増分し、Ｖ１およびＶ２間の差の絶対値がスレシホルドより小さい場合、垂直カウンタを増分し、Ｖ２およびＶ３間の差の絶対値がスレシホルドより小さい場合、垂直カウンタを増分し、Ｖ４およびＶ５間の差の絶対値がスレシホルドより小さい場合、垂直カウンタを増分し、Ｖ３およびＶ５間の差の絶対値がスレシホルドより小さい場合、垂直カウンタを増分し、水平カウンタが垂直カウンタより大きい場合、画素Ｚと接し垂直方向に並んだ画素の平均に、予測値を設定し、垂直カウンタが水平カウンタよりも大きい場合、画素Ｚと接し水平方向に並んだ画素の平均に、予測値を設定する。
【００２０】
本発明の別の態様では、本方法は、更に、設定ステップのいずれにおいても予測値を設定しない場合、菱形集合体における画素全ての平均に予測値を設定するステップを含む。
【００２１】
本明細書において述べる特許、特許出願、およびその他の刊行物全ての開示内容、ならびにこの中で引用する特許、特許出願およびその他の刊行物の開示内容は、この言及により本願にも含まれるものとする。
【００２２】
本発明は、添付図面に関連付けた以下の詳細な説明から、一層深く理解することができよう。
【００２３】
【発明の実施の形態】
これより、本発明の好適な実施形態にしたがって動作する画像圧縮方法の簡略フローチャートを２枚一組で示す図１および図２、ならびに図１および図２の方法の種々の段階を理解する際に有用な、画像ファイルの一部を示す簡略図である図３Ａないし図３Ｅを参照する。図１および図２の方法では、カラーまたはグレースケール・ファイルを、ＲＧＢカラー空間における赤（Ｒ）、緑（Ｇ）および青（Ｇ）、あるいはＹＣｂＣｒカラー空間における輝度（Ｙ）、クロミナンス（Ｃｂ）およびクロミナンス（Ｃｒ）のような、別個のカラー・チャネル副画像に分離する（ステップ１００）。対象の画像ファイルがＪＰＥＧのような圧縮フォーマットで格納されている場合、カラー分離に先立って画像をデコードしておくことが好ましい。次に、図１および図２の方法の後続ステップを、カラー・チャネル副画像毎に別々に実行する。「画像」と言う場合、現在処理されている画像の特定のカラー成分に言及するものとして理解するとよい。次に、画像は、元の画像サイズの１／４にサブサンプルする（ステップ１１０）。図３Ａに、サブサンプリング方法の１つを示す。ここでは、画像部分１０の画素を、破線で示すように、Ｘ１４およびＯ１６で表す４つの画素集合体１２に集合化してある。各集合体の左上角にあるＸ画素１４のように、各集合体１２において１つの画素のみを保持するが、保持する各画素が各画素集合体において同じ位置を占めるのであれば、各集合体１２においてどの画素を保持してもよい。サブサンプルされた画像の表現は、図３Ｂを参照すれば、見ることができる。
【００２４】
次に、離散コサイン変換（ＤＣＴ）またはウェーブレット変換技法を用いて、サブサンプル画像を変換する（ステップ１２０）。高画質を維持するために、好ましくは、ダウンサンプル画像に対して所望の圧縮比は、４：１ないし１２：１の範囲としてしかるべきである。ソース・ファイルが圧縮ＪＰＥＧファイルである場合、用いる量子化テーブルは、ＪＰＥＧファイルの元の量子化テーブルのサイズを超過してはならない。次に、従来の技法を用いて変換コード化画像をデコードし、近似サブサンプル画像を形成する（ステップ１３０）。
【００２５】
図３Ｃに示すように、次に、各サブサンプル画素Ｘを、それに最も近い３つの近隣画素と集合化して、破線で示す、正方形集合体１８を形成する（ステップ１４０）。各正方形集合体１８の中央における画素２０の値は、文字Ｙで表され、以下のように予測する（ステップ１５０）。
【００２６】
・３つのＸ画素の各々が中央値（例えば、画素が０〜２５５の値を有する場合、中央値＝１２８）よりも大きい値を有し、４番目のＸ画素が中央値より小さい値を有する場合、画素Ｙの値は、中央値よりも大きな値を有する３つのＸ画素の平均に設定する。
【００２７】
・３つのＸ画素の各々が中央値より小さい値を有し、４番目のＸ画素が中央値よりも大きな値を有する場合、画素Ｙの値は、中央値より小さい値を有する３つのＸ画素の平均に設定する。
【００２８】
上述の条件のいずれも満たさない場合、対角線上で対向する２つのＸ画素の値間の絶対差がスレシホルド（例えば、スレシホルド＝８）未満であり、他の対角線上で対向する２つのＸ画素の値間の絶対差がスレシホルド以上である場合、画素Ｙの値は、絶対差がスレシホルド未満である対角線上で対向する２つのＸ画素の平均に設定する。
【００２９】
以上の条件をいずれも満たさない場合、画素Ｙの値は、正方形集合体１８における４つのＸ画素全ての平均に設定する。同様に、画像内の各Ｙ画素の値は、参照番号２２で示すように重複する正方形集合体を形成することによって、決定する。
【００３０】
一旦Ｙ画素値を予測したなら、そして典型的に画像内のＹ画素値全てを予測したなら、次のようにしてその予測誤差を判定し、量子化する。予測誤差を判定するには、画素Ｙの実際値をその予測値から減算する（ステップ１６０）。次に、最少および最大スレシホルド値を設定し、Ｙの値が最大値（例えば２３０）を超過するか、あるいは最小値（例えば、２０）未満である場合、予測誤差を破棄するようにする（ステップ１７０）。Ｙの値が最少および最大スレシホルド以内にある場合、その予測誤差を量子化する（ステップ１８０）。量子化係数を４にすると、高画質を得るのには十分であると考えられ、量子化予測誤差は、次のように計算することができる。
【００３１】
量子化予測誤差＝（予測誤差／４）の概数
所与の画素Ｙを予測するために用いた正方形集合体における各２つのＸ画素間の絶対差が第１スレシホルド（例えば、８）以下である場合、予測誤差は比較的小さく、この予測誤差を破棄する（ステップ１９０）。所与の画素Ｙを予測するために用いた正方形集合体における各２つのＸ画素間の絶対差が第２スレシホルド（例えば、１６）以下である場合、予測誤差は中程度であり、ハフマン・コードを用いてエンコードする（ステップ２００）。ハフマン・コードは、予測誤差の統計に基づいて作成することが好ましい。このような統計は、所与のスレシホルドについて、誤差が非常に異なる分布を有することを示す。正方形集合体におけるいずれか２つのＸ画素間の絶対差が第２スレシホルドよりも大きい場合、ハフマン・コードを用いて、予測誤差のエントロピ・コード化を行なう（ステップ２１０）。
【００３２】
図３Ｄに示すように、文字Ｚで示す、予測していない残りの画素２４の各々を、それに最も近いＸおよびＹ画素と一緒に集合化し、破線で示す菱形集合体２６を形成する（ステップ２２０）。Ｚ画素が画像ファイルのエッジ上に位置する場合、参照番号２８および３０で示すように、部分的な菱形集合体が形成される場合がある。また、参照番号３２で示すように、菱形集合体が別の菱形集合体と重複する場合もある。次に、以下のようにして画素Ｚの値を予測する（ステップ２３０）。
【００３３】
・ＸおよびＹ画素の大部分が中央値（例えば、画素が０ないし２５５の値を取り得る場合、中央値＝１２８）よりも大きい値を有し、少なくとも１つの残りのＸまたはＹ画素が中央値よりも小さい値を有する場合、画素Ｚの値は、中央値よりも大きな値を有するＸおよびＹ画素の大部分の平均に設定する。
【００３４】
・ＸおよびＹ画素の大部分が中央値（例えば、画素が０ないし２５５の値を取り得る場合、中央値＝１２８）よりも小さい値を有し、少なくとも１つの残りのＸまたはＹ画素が中央値よりも大きい値を有する場合、画素Ｚの値は、中央値よりも小さな値を有するＸおよびＹ画素の大部分の平均に設定する。
【００３５】
上述の条件のいずれも真でない場合、２つのＸ画素値間の絶対差がスレシホルド（例えば、スレシホルド＝８）未満であり、２つのＹ画素値間の絶対差がスレシホルド以上であれば、画素Ｚの値を２つのＸ画素の平均に設定する。２つのＹ画素間の絶対差がスレシホルド（例えば、スレシホルド＝８）未満であり、２つのＸ画素値間の絶対差がスレシホルド以上である場合、画素Ｚの値を２つのＹ画素の平均に設定する。画像のエッジにおけるように、２つのＸ画素および２つのＹ画素が得られない場合、上述の条件を満たすことができず、したがって前述の予測式を適用することができない。
【００３６】
前述の条件のいずれも満たさない場合、画素Ｚを取り囲み、６つの縦に並んだ最も近い画素および６つの横に並んだ最も近い画素から、図３Ｅに示すような、チェッカーボード集合体３４を形成するとよい。これらの画素を、Ｖ１〜Ｖ６およびＨ１〜Ｈ６で示す。画像のエッジにおけるように、図３Ｅのチェッカーボード集合体を構築できない場合、ステップ２２０ないし２３０は実行されず、したがって、予測値は、現存する全ての取り囲む画素の平均値として得られる。水平カウンタおよび垂直カウンタを０に初期化し、スレシホルドを（例えば、８に）設定する。水平および垂直カウンタを次のように増分する。
【００３７】
・ａｂｓ（Ｈ２−Ｈ１）＜スレシホルドの場合、水平カウンタを増分する。
・ａｂｓ（Ｈ２−Ｈ３）＜スレシホルドの場合、水平カウンタを増分する。
・ａｂｓ（Ｈ５−Ｈ４）＜スレシホルドの場合、水平カウンタを増分する。
【００３８】
・ａｂｓ（Ｈ５−Ｈ３）＜スレシホルドの場合、水平カウンタを増分する。
・ａｂｓ（Ｖ２−Ｖ１）＜スレシホルドの場合、垂直カウンタを増分する。
・ａｂｓ（Ｖ２−Ｖ３）＜スレシホルドの場合、垂直カウンタを増分する。
【００３９】
・ａｂｓ（Ｖ５−Ｖ４）＜スレシホルドの場合、垂直カウンタを増分する。
・ａｂｓ（Ｖ５−Ｖ３）＜スレシホルドの場合、垂直カウンタを増分する。
水平カウンタが垂直カウンタよりも大きい場合、画素Ｚの値を、画素Ｚに隣接する垂直に並んだ画素の平均に設定する。垂直カウンタが水平カウンタよりも大きい場合、画素Ｚの値を、画素Ｚに隣接する水平方向に並んだ画素の平均に設定する。
【００４０】
ステップ２４０〜２９０に示されるように、前述の条件のいずれも満たさない場合、画素Ｚの値を菱形集合体２６内の全画素の平均に設定する。一旦Ｚ画素値を予測したなら、そして典型的に画像内のＺ画素値全てを予測したなら、その予測誤差を判定し、量子化し、コード化することは、Ｙ画素値について前述したのと同様に行うことができる。
【００４１】
単一の圧縮画像ファイルの場合、従来の技法を用いて、元の画像ファイルの変換コード化したサブサンプル・カラー成分を、先に判定したコード化予測誤差と組み合わせることによって構成することができる（ステップ３００）。好ましくは、変換コード化部分のサイズは、元の画像ファイル・サイズの３５％ないし４０％から成り、ファイル・サイズの残りの１０％ないし１５％がコード化予測誤差から成るようにすべきである。
【００４２】
尚、ここに記載した方法のいずれでも、１つ以上のステップを省略したり、示した順序以外の順序で実行してもよく、その場合も本発明の真の精神や範囲を逸脱することにはならないことは認められよう。
【００４３】
ここに開示した方法および装置を説明した際、特定のハードウエアまたはソフトウエアを参照してもしなくてもよかったが、豊富な経験がなくとも従来の技法を用いて本発明の実施形態のいずれを実施に移すために、必要に応じて、当業者が市販のハードウエアおよびソフトウエアを容易に適合化することができるように、方法および装置について説明した。
【００４４】
以上いくつかの具体的な実施形態を参照しながら本発明の説明を行なったが、この説明は全体として本発明を例示することを意図するのであって、提示した実施形態に本発明を限定するものとして解釈してはならない。当業者には種々の変更が想起されようが、ここに具体的に示さなかったものの、本発明の真の精神および範囲に該当するもととすることは認められよう。
【図面の簡単な説明】
【図１】図２と共に、本発明の好適な実施形態にしたがって動作する、画像圧縮方法の簡略フローチャートである。
【図２】図１と共に、本発明の好適な実施形態にしたがって動作する、画像圧縮方法の簡略フローチャートである。
【図３】図３Ａは、図１および図２の方法の種々の段階を理解する際に有用な、画像ファイルの一部を示す簡略図である。
図３Ｂは、図１および図２の方法の種々の段階を理解する際に有用な、画像ファイルの一部を示す簡略図である。
図３Ｃは、図１および図２の方法の種々の段階を理解する際に有用な、画像ファイルの一部を示す簡略図である。
図３Ｄは、図１および図２の方法の種々の段階を理解する際に有用な、画像ファイルの一部を示す簡略図である。
図３Ｅは、図１および図２の方法の種々の段階を理解する際に有用な、画像ファイルの一部を示す簡略図である。
【符号の説明】
１０    画素部分
１２    画素集合体
１４    Ｘ画素
１６    Ｏ画素
１８    正方形集合体
２０    中央画素
２２    重複正方形集合体
２４    未予測画素
２６    菱形集合体
２８，３０    部分的菱形集合体
３２    重複菱形集合体
【図１】
0004287078.tif 000002
【図２】
0004287078.tif 000003
【図３】
0004287078.tif 000004