(57)【要約】【課題】計算処理時間を長くすることなく圧縮処理を実施することが可能で、画質を向上させることができる画像圧縮装置を提供する。【解決手段】画像全体をｎ×ｍ画素（ｎ，ｍは４以上の自然数）のブロックに切り分けるブロック分割手段と、ブロックの外縁部分のみの画素値から、該外縁部分を近似する第１の斜面を特定するパラメータを求める第１斜面算出手段と、第１の斜面とブロック内の各画素値との差分を算出することでｎ×ｍ個の誤差量を算出する誤差量算出手段と、誤差量が所定のしきい値を超える画素値が存在する場合に、誤差量が所定のしきい値を超える画素値のみから第２の斜面を特定するパラメータを求める第２斜面算出手段と、第１及び第２の斜面を特定するパラメータを可逆符号化する符号化手段とを備える。【選択図】    図１
2004266366.tif 000002
【特許請求の範囲】
【請求項１】
画像全体をｎ×ｍ画素（ｎ，ｍは４以上の自然数）のブロックに切り分けるブロック分割手段と、
前記ブロックの画素値から、該ブロックを近似する第１の斜面を特定するパラメータを求める第１斜面算出手段と、
前記第１の斜面と前記ブロック内の各画素値との差分を算出することでｎ×ｍ個の誤差量を算出する誤差量算出手段と、
前記誤差量が所定のしきい値を超える画素値が存在する場合に、誤差量が所定のしきい値を超える画素値のみから第２の斜面を特定するパラメータを求める第２斜面算出手段と、
前記第１及び第２の斜面を特定するパラメータを可逆符号化する符号化手段と
を備えたことを特徴とする画像圧縮装置。
【請求項２】
前記第１斜面算出手段は、前記ブロックの外縁部分のみの画素値から斜面を特定するパラメータを求めることを特徴とする請求項１に記載の画像圧縮装置。
【請求項３】
画像データを非可逆圧縮する画像圧縮方法であって、
画像全体をｎ×ｍ画素（ｎ，ｍは４以上の自然数）のブロックに切り分けるブロック分割過程と、
前記ブロックの画素値から、該ブロックを近似する第１の斜面を特定するパラメータを求める第１斜面算出過程と、
前記第１の斜面と前記ブロック内の各画素値との差分を算出することでｎ×ｍ個の誤差量を算出する誤差量算出過程と、
前記誤差量が所定のしきい値を超える画素値が存在する場合に、誤差量が所定のしきい値を超える画素値のみから第２の斜面を特定するパラメータを求める第２斜面算出過程と、
前記第１及び第２の斜面を特定するパラメータを可逆符号化する符号化過程と
を有することを特徴とする画像圧縮方法。
【請求項４】
前記第１斜面算出過程は、前記ブロックの外縁部分のみの画素値から斜面を特定するパラメータを求めることを特徴とする請求項３に記載の画像圧縮方法。
【請求項５】
画像データを非可逆圧縮する画像圧縮プログラムであって、
画像全体をｎ×ｍ画素（ｎ，ｍは４以上の自然数）のブロックに切り分けるブロック分割処理と、
前記ブロックの画素値から、該ブロックを近似する第１の斜面を特定するパラメータを求める第１斜面算出処理と、
前記第１の斜面と前記ブロック内の各画素値との差分を算出することでｎ×ｍ個の誤差量を算出する誤差量算出処理と、
前記誤差量が所定のしきい値を超える画素値が存在する場合に、誤差量が所定のしきい値を超える画素値のみから第２の斜面を特定するパラメータを求める第２斜面算出処理と、
前記第１及び第２の斜面を特定するパラメータを可逆符号化する符号化処理と
をコンピュータに行わせることを特徴とする画像圧縮プログラム。
【請求項６】
前記第１斜面算出処理は、前記ブロックの外縁部分のみの画素値から斜面を特定するパラメータを求めることを特徴とする請求項５に記載の画像圧縮プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像の圧縮を行う画像圧縮装置、画像圧縮方法及び画像圧縮プログラムに関する。
【０００２】
【従来の技術】
画像データはデータ量が多く、圧縮せずに蓄積した場合、データ利用時の速度、データの蓄積効率のすべてにおいて性能が低下する。このため画像データを蓄積、利用する再には高効率の圧縮を行うことが必須となっている。このような画像圧縮を行う手法としてＪＰＥＧ（Ｊｏｉｎｔ  Ｐｈｏｔｏｇｒａｐｈｉｃ  Ｅｘｐｅｒｔ  Ｇｒｏｕｐ  ／．ＩＳＯ  ｌＥＣ  １０９１８−１）が知られている。ＪＰＥＧによる画像圧縮は、以下に示す手順で圧縮処理が行われる。
（１）画像を８×８画素のブロックに切り分ける。
（２）符号化にＤＣＴ変換（Ｄｉｓｃｒｅｔｅ  Ｃｏｓｉｎｅ  Ｔｒａｎｓｆｏｒｍ：離散コサイン変換）を用いｘ方向、ｙ方向各８要素づつ、合計６４要素の周波数成分Ｑｉｊ、および、直流成分ＤＣに変換する。
（３）量子化では本来実数であるＱｉｊに（乗算の結果が−１２８〜１２７の範囲におさまるように求めた）定数を乗算し、絶対値が小さくなるように切り捨てる等、一定の法則に基づいた正規化によって整数データに変換する。さらに、ジグザグにＱｉｊ拾い上げてデータ列にする。（ただし、０を見つけたらそれ以降のデータを０とみなす。）
（４）Ｑｉｊの系列ＤＣ成分についてエントロピー符号化の一種であるハフマン符号化を行い圧縮データとする。
（５）圧縮データやパラメータを所定の順番で多重化する。
【０００３】
また、これ以外にもブロックを符号化する方法として特許文献１に記載されたＢＴＣ（Ｂｌｏｃｋ  Ｔｒｕｎｃａｔｉｏｎ  Ｃｏｄｉｎｇ）法が知られている。この手法は、符号化対象となっているブロック内の各画素色がブロック平均値以上になるか、少ないかを示したパターン情報、さらに、ブロック平均値、そして、パターンによって変化する階調の大きさを示す（たとえば、ブロック中の画素値の分散値などの）値、の３種類のパラメータでブロックを表現する符号化方法である。
【０００４】
ところで、ＪＰＥＧのように離散コサイン変換でブロックのデータを符号化した場合には、ブロック内のエッジにそって歪（周波数成分を合成した場合特有のＤＣＴノイズ）が発生することが良く知られている。一方、ＢＴＣはエッジを忠実に再現する符号化方法であり離散コサイン変換より高速に処理できる手法であるが、発色する色数を増やすと圧縮率が極端に落ちるため、高効率の圧縮を行う際には色数が限定されてしまい、グラデーションを再現する際に段々畑状になり色の境目が目立つことになる。さらに、離散コサイン変換、ＢＴＣの両者においても、ブロック内で圧縮しているため中心に多く発生している色合いがあれは、外縁部の微妙な色合いまで中心の色に近くなってしまい、ブロックとブロックの境目で色の違いが目立ってしまう。
【０００５】
このような歪みが発生するという問題を解決するために、これらの手法についての改良方法などもいくつか提案されている。例えば、特許文献２に記載された離散コサイン変換とＢＴＣを併用して画質を向上させる手法が提案されている。この手法は、以下に示す手順で処理される。
（１）画像をブロックに分ける。
（２）各ブロックごとにエッジ抽出を行う。
（３）エッジ部にはＢＴＣ符号化とＢＴＣ復号を行い、エッジを打ち消した画像を用意する。
（４）エッジを打ち消した画像に対し離散コサイン変換を行う。
この手法を用いれば、ブロック内に現れるグラディエーションに対してでもエッジに対してでも誤差が少ない符号化が可能となる。
【０００６】
【特許文献１】
特開昭６０−０８７５９６号公報
【特許文献２】
特開平３−１９２８７６号公報
【０００７】
【発明が解決しようとする課題】
しかしながら、人間が画像を理解しようとする際には「色の境界エッジ」や「背景とライン組み合わせ」、そして「グラデーション」といった人間が特徴として認識し注目する部分の再現性に問題があると、画像を間違って認識してしまったり、誤差が目立って画質の低下を強く感じるなどの問題が発生する可能性が高くなるという問題がある。
【０００８】
従来から用いられているＪＰＥＧなどの圧縮アルゴリズムを置き換えることを考えると、ＪＰＥＧで符号化する際の計算量（これが増加すると通信回線で伝送できる画像の枚数が減少するなど問題が発生する）と同等程度に収まる計算量である必要があることが前提となるが、その前提を満たしながら画像を蓄積、もしくは、伝送して再生するために用いる画像圧縮として重要な上記３つの特徴のいずれもが良好な再現性を持った圧縮を行うことが難しいという問題もある。
【０００９】
本発明は、このような事情に鑑みてなされたもので、計算処理時間を長くすることなく圧縮処理を実施することが可能で、画質を向上させることができる画像圧縮装置、画像圧縮方法及び画像圧縮プログラムを提供することを目的とする。
【００１０】
【課題を解決するための手段】
請求項１に記載の発明は、画像全体をｎ×ｍ画素（ｎ，ｍは４以上の自然数）のブロックに切り分けるブロック分割手段と、前記ブロックの画素値から、該ブロックを近似する第１の斜面を特定するパラメータを求める第１斜面算出手段と、前記第１の斜面と前記ブロック内の各画素値との差分を算出することでｎ×ｍ個の誤差量を算出する誤差量算出手段と、前記誤差量が所定のしきい値を超える画素値が存在する場合に、誤差量が所定のしきい値を超える画素値のみから第２の斜面を特定するパラメータを求める第２斜面算出手段と、前記第１及び第２の斜面を特定するパラメータを可逆符号化する符号化手段とを備えたことを特徴とする。
【００１１】
請求項２に記載の発明は、前記第１斜面算出手段は、前記ブロックの外縁部分のみの画素値から斜面を特定するパラメータを求めることを特徴とする。
【００１２】
請求項３に記載の発明は、画像データを非可逆圧縮する画像圧縮方法であって、画像全体をｎ×ｍ画素（ｎ，ｍは４以上の自然数）のブロックに切り分けるブロック分割過程と、前記ブロックの画素値から、該ブロックを近似する第１の斜面を特定するパラメータを求める第１斜面算出過程と、前記第１の斜面と前記ブロック内の各画素値との差分を算出することでｎ×ｍ個の誤差量を算出する誤差量算出過程と、前記誤差量が所定のしきい値を超える画素値が存在する場合に、誤差量が所定のしきい値を超える画素値のみから第２の斜面を特定するパラメータを求める第２斜面算出過程と、前記第１及び第２の斜面を特定するパラメータを可逆符号化する符号化過程とを有することを特徴とする。
【００１３】
請求項４に記載の発明は、前記第１斜面算出過程は、前記ブロックの外縁部分のみの画素値から斜面を特定するパラメータを求めることを特徴とする。
【００１４】
請求項５に記載の発明は、画像データを非可逆圧縮する画像圧縮プログラムであって、画像全体をｎ×ｍ画素（ｎ，ｍは４以上の自然数）のブロックに切り分けるブロック分割処理と、前記ブロックの画素値から、該ブロックを近似する第１の斜面を特定するパラメータを求める第１斜面算出処理と、前記第１の斜面と前記ブロック内の各画素値との差分を算出することでｎ×ｍ個の誤差量を算出する誤差量算出処理と、前記誤差量が所定のしきい値を超える画素値が存在する場合に、誤差量が所定のしきい値を超える画素値のみから第２の斜面を特定するパラメータを求める第２斜面算出処理と、前記第１及び第２の斜面を特定するパラメータを可逆符号化する符号化処理とをコンピュータに行わせることを特徴とする。
【００１５】
請求項６に記載の発明は、前記第１斜面算出処理は、前記ブロックの外縁部分のみの画素値から斜面を特定するパラメータを求めることを特徴とする。
【００１６】
【発明の実施の形態】
以下、本発明の一実施形態による画像圧縮装置を図面を参照して説明する。図１は同実施形態の構成を示すブロック図である。この図において、符号１は、圧縮対象の画像データを入力する画像入力部であり、入力した画像データは内部に保持される。画像入力部１内に保持される画像データは、標本化・量子化されたデータである。以下の説明においては、各画素を８ビットの輝度値（以下、「画素の輝度値」を「画素値」と称する）で表現する画像データであるものとする。符号２は、画像入力部１に保持されている画像ブロックに分割するブロック分割部である。符号３は、分割されたブロックの外縁部分の画素値に基づいて、斜面を算出する第１斜面算出部である。符号４は、第１斜面算出部３で得られた斜面とブロック内の各画素値との差から誤差量を算出する誤差量算出部である。符号５は、誤差量算出部４において算出された誤差量が予め決められたしきい値を超える場合に、このしきい値を超える画素のみによって新たな斜面を算出する第２斜面算出部である。符号６は、第１斜面算出部３で得られた斜面と、誤差量算出部４で得られた誤差量と、第２斜面算出部５で得られた斜面とを符号化する符号化部である。符号７は、各ブロックの符号化されたデータを多重化することにより圧縮画像データを出力する画像出力部である。
【００１７】
次に、図２を参照して、図１に示す画像圧縮装置の動作を説明する。図２は、図１に示す画像圧縮装置の画像圧縮動作を示すフローチャートである。まず、画像入力部１は、画像データを入力し、内部に保持する（ステップＳ１）。画像入力部１内に保持される画像データは、ビデオ信号等を標本化し、量子化したデータなどであり、画素の位置（ｘ，ｙ）と輝度値（０〜２５５）で表現されている。
【００１８】
次に、ブロック分割部２は、画像入力部１に画像データが保持されたことを受けて、入力画像をブロックに分割する（ステップＳ２）。ここでは、説明を簡単にするために、４×４画素のブロックに分割するものとして説明する。この分割処理によって、例えば３２×３２画素の入力画像であれば、６４個のブロックに分割されることとなる。入力画像の分割結果は、ブロック分割部２内に保持される。なお、ブロックのＸ方向の画素数とＹ方向の画素数は同数である必要はなく、画像全体の画素数に基づいて決定すればよい。
【００１９】
次に、第１斜面算出部３は、ブロック分割部２において分割されたブロックのうち１つのブロック内の画素値を読み出す。そして、読み出したブロックの外縁部分の画素値から斜面を算出する（ステップＳ３）。ここでいう斜面とは、水平面を含む平面である。また、外縁部分とは、図３に示すように、ブロックの上端から縦方向の画素数の２５％、ブロックの左端から横方向の画素数の２５％、ブロックの下端から縦方向の画素数の２５％、ブロックの右端から横方向の画素数の２５％とし、縦横方向ともに、外縁部分と外縁部分に囲まれる中央部分の画素数が同じになるように設定する。例えば、コマ撮りを行う警備用ビデオのように計算能力が大きく更新レートが低いアプリケーションに用いる場合は、この値（画素数の２５％）を適用する。一方、計算能力が大きいとはいえない携帯端末や、高い更新レートの画像を圧縮する高速度の計測装置など、装置の性能に比して処理量が多いアプリケーションについては画像の精度に比べ計算量を減らす能力に重点をおき、ブロックの大きさに関係なく上下、左右の端から全て１画素ずつを外縁部分とする。
【００２０】
ここで、第１斜面算出部３が斜面を算出する方法について説明する。例えば、４×４画素のブロック内の画素値を模式図で表現すると図４のようになる。そして、中心部分の４画素を除く外縁部分の画素値のみに注目し、これらの画素値から斜面を求めると、図５に示すような斜面を求められる。斜面は、斜面の中心値、Ｘ方向の傾き及びＹ方向の傾きで表す。Ｘ方向の傾きは図６（ａ）に示すように、ブロックの左端に沿った外縁部分（「＋」が記入してある部分）の平均値から、ブロックの右端に沿った外縁部分（「−」が記入してある部分）の平均値を減算した値（小数点以下切り捨て）とする。また、Ｙ方向の傾きも同様に図６（ｂ）に示す「＋」が記入してある外縁部分の平均値から、「−」が記入してある外縁部分の平均値を減算した値（小数点以下切り捨て）とする。また、傾斜の中心値は、外縁部分の画素値の平均値（小数点以下四捨五入）で求める。
【００２１】
次に、具体例を挙げて、斜面の中心値、Ｘ方向の傾き及びＹ方向の傾きを求める算出方法を説明する。図７に分割したブロックの一例を示す。図７に示す数値は、各画素の画素値である。まず左端の外縁部分の平均値を求めると、（２４＋２１＋１４＋１１）／４＝１７．５となる。次に、右端の外縁部分の平均値を求めると、（５４＋５１＋４４＋４１）／４＝４７．５となる。この２つの平均値からＸ方向の傾きを求めると、１７．５−４７．５＝−３０となる。同様に、上端、下端の平均値を求めると、それぞれ（２４＋３６＋４４＋５４）／４＝３９．５、（１１＋１０＋２９＋４１）＝２２．７５となり、Ｙ方向の傾きは３９．５−２２．７５＝１６（小数点以下切り捨て）となる。一方、傾斜面の中心値  （２４＋３６＋４４＋５４＋２１＋５１＋１４＋４４＋１１＋１０＋２９＋４１）／１２＝３２（小数点以下四捨五入）となる。
この結果、Ｘ方向傾き−３０、Ｙ方向傾き１６、斜面の中心値３２が斜面を示すパラメータとなる。
なお、斜面算出方法は、周知の平面算出方法で求めてもよく、例えば、最小二乗法等で求めた平面を定義するパラメータを用いるようにしてもよい。
【００２２】
続いて、先に求めたパラメータに基づく斜面をブロック内において表現した場合の各画素の値を求める。各画素値を計算する計算式を図８に示す。図８において、ｍは、斜面の中心値（この例では３２）、ｄｘは、Ｘ方向の傾き／ブロックのＸ方向の画素数（この例では−７．５）、ｄｙは、Ｙ方向の傾き／ブロックのＹ方向の画素数（この例では４）である。図８に示す計算式によって各画素値を求めた結果（小数点以下四捨五入）を図９に示す。この処理によって、外縁部分から斜面が求められたこととなる。
【００２３】
なお、斜面を定義する方法として、図１０に示すように、最も傾斜が大きくなる方向（図１０に示す太い矢印の水平回転角度）を探し出し、その方向にそって傾斜を計算し、傾斜面の中心（平均値）ｍと傾斜方向ｒと傾斜量ｄを求める方法を用いてもよい。
【００２４】
次に、第１斜面算出部３が斜面を求めたのを受けて、誤差量算出部４は、各画素の誤差量を算出する（ステップＳ４）。ここでいう誤差量とはブロック内の実際の画素値と先に求めた斜面との差を意味する値のことであり、図７に示す実際の画素値から図９に示す斜面の画素値を減算した結果の値である。すなわち、ブロック中の実際の値をＢ（ｘ，ｙ）、斜面に基づく値をＳ（ｘ，ｙ）、誤差量をＲ（ｘ，ｙ）とすると、Ｒ（ｘ，ｙ）＝Ｂ（ｘ，ｙ）−Ｓ（ｘ，ｙ）によって誤差量を算出する。ここで、ｘ、ｙはブロック内の画素位置であり１〜４の整数となる。この計算式によって求めた各誤差量を図１１に示す。この処理によってブロック内の各画素の斜面との誤差量が求められたこととなる。
【００２５】
次に、誤差量算出部４が誤差量を求めたのを受けて、第２斜面算出部５は、求めた誤差量のそれぞれについて、各誤差量の絶対値が予め決められたしきい値を超える画素があるかを判定する（ステップＳ５）。ここで用いるしきい値は、誤差量の絶対値の平均値（誤差量の絶対値を全て加算し、ブロック内の画素数１６で除算した値）と、画素値を量子化する場合のビット数で表現できる値の２．５％の値（８ビットの場合、２５５×０．０２５＝６）とのいずれか大きい値とする。この２．５％という値は必要な画像の精度に応じて、詳細画質が必要な場合ほど小さくなるように１／２〜２倍の間で変化させて用いてもよい。この変化量は人間が変化のある画像中において見つけ出すことのできる最低画像変化量が１．２５％であり、人間が無視できない画面中の構造の画素値変化量が５％であことから、２．５×１／２〜２．５×２までを許容範囲とし、その指数的中間値である２．５を標準的な値とした。
【００２６】
図１１に示す例では、誤差量の絶対値の平均値は、４．３となり、８ビットで表現できる値の２．５％は６であるので、しきい値は６となる。この判定の結果、しきい値を超える画素がない場合は、ステップＳ７へ進む。図１１に示す誤差量に基づいて判定することにより、しきい値を超える画素を判定すると図１２に示す画素が抽出される。しきい値を超える画素がある場合、第２斜面算出部５は、誤差量がしきい値を超える画素値のみに基づいて、新たな斜面を算出する（ステップＳ６）。斜面の算出方法は、周知の方法で算出すればよく、例えば、最小二乗法を用いて算出する。このとき、第２の斜面を算出するための画素値の数が２以下、もしくは直線にならんでしまった場合には最も離れている２画素でＸ座標の差とＹ座標の差を求め、その差が小さい方向には傾斜が無いと仮定して、距離の差が大きい座標軸へのみの傾きを持った平面としてパラメータを求める。さらには、属さない画素数が１の場合には傾き０の平面としてパラメータを求める。
【００２７】
次に、第２斜面算出部５は、ここで求めた斜面をブロック内において表現した場合の各画素の値を求める。４つの画素値に基づいて求めた斜面をブロック内において表現した場合の各画素の値を図１３に示す。この斜面を定義するためのパラメータは、先に説明した斜面と同様に、Ｘ方向傾き、Ｙ方向傾き、斜面の中心値とする。
以上の処理動作によって、ブロックの外縁部分の画素値から算出した斜面（これを第１の斜面という）と誤差量がしきい値を超える画素値から算出した斜面（これを第２の斜面という）の２つの斜面（図９、図１３に示す斜面）が得られたこととなる。
【００２８】
なお、前述した説明においては、２つの斜面を用いて、ブロック内の画素値を近似するものとして説明したが、さらに第２の斜面との誤差量を求め、所定のしきい値を超える画素がある場合は、第３の斜面を算出するようにしてもよい。このとき、幾つの斜面を算出するかを決定するする必要がある場合は、誤差量が所定のしきい値を超える画素の個数が所定の個数以下になった場合に処理の続行を止めるようにしてもよい。これは、ブロック内の画素数が多くなった場合において有効である。
【００２９】
次に、２つの斜面が求められたことを受けて、符号化部６は、２つの斜面の符号化することにより、ブロック内の画素値を符号化する（ステップＳ７）。符号化は、先に求めた２つの斜面をそれぞれ符号化してもよいが、より正確な近似データを求めるため、各画素がいずれの斜面に属するかを決定する。所属する斜面の判定は、｜画素値−第１の斜面の値｜≦｜画素値−第２の斜面の値｜であれば、この画素は第１の斜面に属するものとし、｜画素値−第１の斜面の値｜＞｜画素値−第２の斜面の値｜であれば、この画素は第２の斜面に属するものとする。そして、第１の斜面に属する画素を「０」、第２の斜面に属する画素を「１」として、所属斜面マップを作成する。この所属斜面マップの一例を図１４に示す。なお、近似に用いる斜面の数が３以上である場合は、所属斜面マップの値を斜面数に応じた多値とすればよい。
【００３０】
次に、符号化部６は、先に求めた２つの斜面（第１の斜面と第２の斜面）のそれぞれを表現するパラメータ（この例では、Ｘ方向傾き、Ｙ方向傾き、斜面の中心値）と斜面の数（この例では２）と所属斜面マップをエントロピー符号化することにより可逆圧縮を行う。エントロピー符号化にはハフマン符号化、算術符号化、レンジコーダ法などが使用可能である。また、データ毎にこれらの方法を使いわけても良い。
【００３１】
次に、１つのブロックに対する符号化処理を全てのブロックに対して施す（ステップＳ８）ことにより、画像全体の符号化がされる。そして、画像出力部７は、各符号化データを多重化して出力する（ステップＳ９）。
なお、エントロピー符号化の前段階にデータを蓄積するバッファを設け一括でエントロピー符号化を行う方法やブロック符号化する方法、量子化によりデータが出力されるたびに逐次にエントロピー符号化を行いその結果を蓄積する方法等を用いてもよい。
【００３２】
次に、前述した方法で符号化した画像データを復号化する動作を簡単に説明する。まず、エントロピー復号化によって、第一の傾斜面及び第２の斜面を表すパラメータ、斜面の数、所属斜面マップを復元する。そして、斜面のパラメータに基づいて斜面を復元すると、図９、図１３に示す斜面を復元することができる。この２つの斜面のデータと所属斜面マップを参照して、ブロック内の画素値を復元すると、図１５に示す画素値が復元できる。
【００３３】
結果として得られた画像（図１５に示す画素値）は、元画像（図７に示す画素値）と比べると誤差が含まれている。しかし、全体的な傾き具合（右上に向かって輝度が大きくなる）が保存され、大きな画像の一部として見た場合には良く似た画像として認識される。また、４×４画素といった小さい範囲でこの例に示されたほど変化するデータは実際の画像ではまれであり、このような場合でも視覚的特長が保存されていることが分かる。
【００３４】
このように、グラデーションの部分について傾斜した画素値にいくらかの揺らぎがあるような原画像（図１６（ａ））を画像圧縮した場合、図１６（ｂ）に示すようにグラデーションにフィットする傾斜面のパラメータを取り出し、画像の復元時にはその傾斜面として再現するようにしたため、グラデーションに含まれる斜面からの揺らぎ部分については人間が認識できない程度の変化となるため、グラデーション部分は感覚的に再現性が高い画像とすることができる。
【００３５】
また、図１７（ａ）のように色の境界によるエッジにおいても、図１７（ｂ）に示すように境界で区切られた両側の領域の色変化にそれぞれフィットする色の斜面のパラメータを求め、また、各画素ごとにどちらの領域に属するかを示す情報と併せて画像を表現するようにしたため、復元時には２つの色斜面を再現しておき、それぞれの画素は対応する所属情報が示す色の斜面として塗り分けることができる（図１７（ｃ））。色の境界でもグラデーションと同様に色境界で区切られたそれぞれの領域の中にいくらかの揺らぎがあるが、人間はエッジのような強い変化に注目するため小さな揺らぎは気づきにくいため、再現性が高い画像とすることができる。
【００３６】
また、図１８（ａ）のように背景に別の色のラインが重なっている画像では、背景にフィットする色（画素値）の斜面のパラメータとラインにフィットする色（画素値）の傾斜面のパラメータを求め、さらに、各画素毎にどちらの斜面に属するかを示す所属情報を得てブロックの画像を示すパラメータとしたため、復元時には２つの色斜面を再現しておき、それぞれの画素は対応する所属情報が示す色の斜面として塗り分けることができる（図１８（ｃ））。人間はラインと背景の境目やラインの形状などに注目し、ラインの中の色の小さな変化などには気づきにくいため、画像の背景とラインの重なり部分は感覚的に再現性が高い画像とすることができる。
【００３７】
また、大きなサイズの画像を一度に処理する場合には以上の画像パターンが複合して存在する場合にも対処できる必要があるが、本発明では小さなサイズのブロック内で独立に処理をするため、各処理中に複数の認識パターンは混在しにくく、以上のパターンをブロック内で個々に再現する機能を有することで、画像中の構造を抽出するような複雑な計算なしで上記３つの特徴について人間の感覚的に高い再現性を得ることが可能となる。
【００３８】
以上のように本発明では、人間が画像を認識する際に着目する３つの特徴について高い再現性を残しながら画像を圧縮する機能をもつことにより、見た目の画質低下、画像内容の判別しやすさの低下が少ない非可逆圧縮を行うことが可能となる。また、外縁部分を近似する斜面を基準にすることで、強い傾斜をもったブロックが連続してもブロックの継ぎ目で色が急激に変化することがないため、ブロック境界ノイズが発生しなくなり画質を向上させることが可能となる。
【００３９】
なお、図１における各処理部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより画像圧縮処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、ホームページ提供環境（あるいは表示環境）を備えたＷＷＷシステムも含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（ＲＡＭ）のように、一定時間プログラムを保持しているものも含むものとする。
【００４０】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【００４１】
【発明の効果】
以上説明したように、この発明によれば、人間が画像を認識する際に着目する特徴について高い再現性を残しながら画像を圧縮する機能をもつことにより、見た目の画質低下、画像内容の判別しやすさの低下が少ない非可逆圧縮を行うことが可能になるという効果が得られる。また、外縁部分を近似する斜面を基準にすることで、強い傾斜をもったブロックが連続してもブロックの継ぎ目で色が急激に変化することがないため、ブロック境界ノイズが発生しなくなり画質を向上させることが可能になるという効果も得られる。
【図面の簡単な説明】
【図１】本発明の一実施形態の構成を示すブロック図である。
【図２】図１に示す装置の動作を示すフローチャートである。
【図３】ブロックの外縁部分を示す説明図である。
【図４】画素値を模式図で示した説明図である。
【図５】求める斜面を示す説明図である。
【図６】傾きの算出方法を示す説明図である。
【図７】ブロックデータの一例を示す説明図である。
【図８】画素毎の計算式を示す説明図である。
【図９】第１の斜面の各画素値を示す説明図である。
【図１０】斜面の他の定義方法を示す説明図である。
【図１１】誤差量を示す説明図である。
【図１２】第２の斜面を算出する対象の画素値を示す説明図である。
【図１３】第２の斜面の各画素値を示す説明図である。
【図１４】所属斜面マップの一例を示す説明図である。
【図１５】復元画像の画素値を示す説明図である。
【図１６】本発明による画像圧縮方法の効果を示す説明図である。
【図１７】本発明による画像圧縮方法の効果を示す説明図である。
【図１８】本発明による画像圧縮方法の効果を示す説明図である。
【符号の説明】
１・・・画像入力部
２・・・ブロック分割部
３・・・第１斜面算出部
４・・・誤差量算出部
５・・・第２斜面算出部
６・・・符号化部
７・・・画像出力部
【図１】
2004266366.tif 000003
【図２】
2004266366.tif 000004
【図３】
2004266366.tif 000005
【図４】
2004266366.tif 000006
【図５】
2004266366.tif 000007
【図６】
2004266366.tif 000008
【図７】
2004266366.tif 000009
【図８】
2004266366.tif 000010
【図９】
2004266366.tif 000011
【図１０】
2004266366.tif 000012
【図１１】
2004266366.tif 000013
【図１２】
2004266366.tif 000014
【図１３】
2004266366.tif 000015
【図１４】
2004266366.tif 000016
【図１５】
2004266366.tif 000017
【図１６】
2004266366.tif 000018
【図１７】
2004266366.tif 000019
【図１８】
2004266366.tif 000020