(57)【特許請求の範囲】
【請求項１】
原画像に対して圧縮処理を行う画像圧縮装置であって、
原画像に含まれる文字領域の位置を特定する文字領域特定手段と、
前記文字領域特定手段により特定された位置の文字領域内を予め定められた色で埋めることで下地画像を生成する下地画像生成手段と、
前記文字領域特定手段により特定された位置の文字領域内の色のパレットを生成するパレット生成手段と、
前記文字領域特定手段により特定された位置の文字領域のうち、注目文字領域内において前記パレット生成手段が生成したパレット数が単数の場合、前記注目文字領域内の２値画像を前記注目文字領域内の減色画像として生成し、
前記注目文字領域内において前記パレット生成手段が生成したパレット数が複数の場合、前記注目文字領域内の２値画像内の予め定められた値を有する画素に対応する前記原画像内の画素の値を、パレットを特定する値に振り分けることで、前記注目文字領域内の減色画像を生成する前記減色画像生成手段とを備え、
前記減色画像と、前記下地画像とに対して異なる圧縮を行うことを特徴とする画像圧縮装置。
【請求項２】
前記文字領域特定手段は、前記原画像を２値化することで２値画像を生成する２値画像生成手段を有し、
前記２値画像内で予め定められた値をとる画素の集合を文字領域とみなすことで、当該文字領域の位置を特定することを特徴とする請求項１に記載の画像圧縮装置。
【請求項３】
前記２値画像生成手段は、前記原画像の各画素の値が予め定められた値を超えているか否かに応じて、前記原画像を２値化することを特徴とする請求項２に記載の画像圧縮装置。
【請求項４】
前記２値画像生成手段は、前記原画像に対して微分フィルタを掛け、前記原画像を構成する全ての画素に対して近隣の画素とのエッジ量を算出し、算出された当該エッジ量を２値化することを特徴とする請求項２に記載の画像圧縮装置。
【請求項５】
前記下地画像生成手段は、前記原画像を予め定められたサイズを有するブロックに分割する分割手段と、
前記分割手段により分割されたブロック内に文字領域が存在するか否かを判断する判断手段とを有し、
前記判断手段により注目ブロック内に文字領域が存在すると判断された場合、当該注目ブロック内で文字領域外の領域の色の平均を算出し、算出した平均の色を前記予め定められた色として用いることを特徴とする請求項１乃至４のいずれか１項に記載の画像圧縮装置。
【請求項６】
圧縮された前記減色画像と、圧縮された前記下地画像とに加えて更に、前記文字領域特定手段により特定された文字領域の位置と、前記パレット生成手段により生成されたパレットを含む圧縮データを生成することを特徴とする請求項１乃至５のいずれか１項に記載の画像圧縮装置。
【請求項７】
前記下地画像を縮小する縮小手段を更に有し、当該縮小手段による前記下地画像の縮小画像に対して圧縮を行うことで、前記下地画像の圧縮画像を生成することを特徴とする請求項１乃至６のいずれか１項に記載の画像圧縮装置。
【請求項８】
前記縮小手段は、前記下地画像に対して、予め定められたサイズを有するブロック毎に直交変換を行うことで、前記下地画像に含まれる周波数成分量を求め、求めた当該周波数成分量に応じた縮小率で前記下地画像に対して縮小処理を行うことを特徴とする請求項７に記載の画像圧縮装置。
【請求項９】
前記縮小画像に対する圧縮はＪＰＥＧ圧縮であることを特徴とする請求項７又は８に記載の画像圧縮装置。
【請求項１０】
前記減色画像生成手段が生成した減色画像は、注目文字領域内において前記パレット生成手段が生成したパレット数が単数の場合、ＭＭＲ圧縮され、注目文字領域内において前記パレット生成手段が生成したパレット数が複数の場合、可逆圧縮されることを特徴とする請求項１乃至９のいずれか１項に記載の画像圧縮装置。
【請求項１１】
請求項１に記載の画像圧縮装置が生成した圧縮データを伸長することで、当該圧縮データに含まれる下地画像と減色画像を復元する画像伸長装置であって、
前記圧縮データに含まれる、前記下地画像上における文字領域のパレットの数に基づいて、当該文字領域内の画像を復元する画像復元手段と、
前記圧縮データに含まれる前記下地画像上の文字領域の位置に、前記画像復元手段により復元された前記画像を合成する合成手段と
を備えることを特徴とする画像伸長装置。
【請求項１２】
前記画像復元手段は、前記下地画像内の文字領域のパレットの数が単数であった場合、当該文字領域内で予め定められた値をとる画素に対して前記パレットを用い、
前記下地画像内の文字領域のパレットの数が複数であった場合、当該文字領域内の各画素値に応じたパレットを用いることで前記文字領域内の画像を復元することを特徴とする請求項１１に記載の画像伸長装置。
【請求項１３】
原画像に対して圧縮処理を行う画像圧縮方法であって、
原画像に含まれる文字領域の位置を特定する文字領域特定工程と、
前記文字領域特定工程で特定された位置の文字領域内を予め定められた色で埋めることで下地画像を生成する下地画像生成工程と、
前記文字領域特定工程で特定された位置の文字領域内の色のパレットを生成するパレット生成工程と、
前記文字領域特定工程で特定された位置の文字領域のうち、注目文字領域内において前記パレット生成工程で生成したパレット数が単数の場合、前記注目文字領域内の２値画像を前記注目文字領域内の減色画像として生成し、
前記注目文字領域内において前記パレット生成工程で生成したパレット数が複数の場合、前記注目文字領域内の２値画像内の予め定められた値を有する画素に対応する前記原画像内の画素の値を、パレットを特定する値に振り分けることで、前記注目文字領域内の減色画像を生成する前記減色画像生成工程とを備え、
前記減色画像と、前記下地画像とに対して異なる圧縮を行うことを特徴とする画像圧縮方法。
【請求項１４】
請求項１３に記載の画像圧縮方法によって生成した圧縮データを伸長することで、当該圧縮データに含まれる下地画像と減色画像を復元する画像伸長方法であって、
前記圧縮データに含まれる、前記下地画像上における文字領域のパレットの数に基づいて、当該文字領域内の画像を復元する画像復元工程と、
前記圧縮データに含まれる前記下地画像上の文字領域の位置に、前記画像復元工程で復元された前記画像を合成する合成工程と
を備えることを特徴とする画像伸長方法。
【請求項１５】
コンピュータに請求項１３に記載の画像圧縮方法を実行させるためのプログラム、を格納したコンピュータ読み取り可能な記憶媒体。
【請求項１６】
コンピュータに請求項１４に記載の画像伸長方法を実行させるためのプログラム、を格納したコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、原画像に対して圧縮処理を行う画像圧縮装置、当該画像圧縮装置が生成した圧縮データを伸長することで、当該圧縮データに含まれる下地画像と減色画像を復元する画像伸長装置、及びその方法、並びに記憶媒体に関するものである。
【０００２】
【従来の技術】
近年、スキャナの普及により文書の電子化が進んでいる。電子化された文書をフルカラーで所有すると３００ｄｐｉでＡ４サイズの場合約２４Ｍバイトになり、保有するにもメモリを逼迫するし、メイル添付などで他人に送信できるサイズではない。フルカラー画像圧縮にはＪＰＥＧが知られている。ＪＰＥＧは写真などの自然画像を圧縮するには非常に効果も高く、画質も良いが、文字部などの高周波部分をＪＰＥＧ圧縮するとモスキートノイズと呼ばれる画像劣化が発生し、圧縮率も悪い。そこで領域分割を行い、文字領域を抜いた下地部分のＪＰＥＧ圧縮と、色情報付き文字領域部分のＭＭＲ圧縮を作成し、伸長時は白部分はＪＰＥＧ画像を透過し、黒部分は代表文字色を載せて表現する方法があった。
【０００３】
【発明が解決しようとする課題】
しかし、上記方法では例えば、黒文字の文章中の赤で示した強調文字の情報が欠落してしまう等、２色以上を用いた文字部を含む画像を上記圧縮方法で圧縮し、この圧縮した画像を伸長した場合、伸長後の画像に含まれる文字部は１色とされてしまう。
【０００４】
本発明は上述の問題点に対して鑑みてなされたものであり、画像中の文字領域内の色を損なうことなく圧縮、伸長を行うことを目的とする。
【０００５】
【発明を解決するための手段】
本発明の目的を達成するために、例えば、本発明の画像圧縮装置は以下の構成を備える。
即ち、原画像に対して圧縮処理を行う画像圧縮装置であって、
原画像に含まれる文字領域の位置を特定する文字領域特定手段と、
前記文字領域特定手段により特定された位置の文字領域内を予め定められた色で埋めることで下地画像を生成する下地画像生成手段と、
前記文字領域特定手段により特定された位置の文字領域内の色のパレットを生成するパレット生成手段と、
前記文字領域特定手段により特定された位置の文字領域のうち、注目文字領域内において前記パレット生成手段が生成したパレット数が単数の場合、前記注目文字領域内の２値画像を前記注目文字領域内の減色画像として生成し、
前記注目文字領域内において前記パレット生成手段が生成したパレット数が複数の場合、前記注目文字領域内の２値画像内の予め定められた値を有する画素に対応する前記原画像内の画素の値を、パレットを特定する値に振り分けることで、前記注目文字領域内の減色画像を生成する前記減色画像生成手段とを備え、
前記減色画像と、前記下地画像とに対して異なる圧縮を行うことを特徴とする。
【０００６】
本発明の目的を達成するために、例えば、本発明の画像伸長装置は以下の構成を備える。
即ち、上記画像圧縮装置が生成した圧縮データを伸長することで、当該圧縮データに含まれる下地画像と減色画像を復元する画像伸長装置であって、
前記圧縮データに含まれる、前記下地画像上における文字領域のパレットの数に基づいて、当該文字領域内の画像を復元する画像復元手段と、
前記圧縮データに含まれる前記下地画像上の文字領域の位置に、前記画像復元手段により復元された前記画像を合成する合成手段と
を備えることを特徴とする。
【０００７】
【発明の実施の形態】
以下添付図面に従って、本発明を好適な実施形態に従って詳細に説明する。
【０００８】
［第１の実施形態］
以下、複数の色を有する文字領域を含む画像に対して圧縮を行う画像圧縮装置、この圧縮された画像に対して伸長処理を行う画像伸長装置について説明する。
【０００９】
まず始めに本実施形態における画像圧縮装置について、当該画像圧縮装置の概略構成を示す図１を用いて説明する。
【００１０】
１０１は原画像である。１０２は原画像を入力し、画像の最適２値化を行う画像２値化部である。１０３は画像２値化部により２値化された２値画像である。１０４は２値画像１０３を入力して文字領域を検出し、文字領域座標１１２を作成する文字領域検出部である。
【００１１】
１０５は文字領域座標１１２を入力し、２値画像１０３の黒の領域を特定すると共に、２値画像１０３の黒の領域に該当する原画像中の領域を抜いて、抜いた領域を黒の領域の周囲の色で塗りつぶし、画像Ａを作成する文字部塗りつぶし部である。１０６は画像Ａを入力し、縮小して画像Ｂを作成する縮小部である。１０７は画像Ｂを入力し、ＪＰＥＧ圧縮して圧縮コードＸ１１３を作成するＪＰＥＧ圧縮部である。
【００１２】
１０８は文字領域座標１１２を入力し、その座標の原画像と２値画像１０３を参照しながら、２値画像の黒の領域に該当する原画像の領域の色を算出し、複数のパレット１１４を作成する文字色抽出部１０８である。また文字色抽出部１０８は、更に内部に減色部１０８２を有し、当該減色部１０８２は、前記パレット１１４に従って、原画像に対して減色処理を行う。１０９は文字色抽出部１０８が有する減色部１０８２により減色された、原画像１０１が有する複数の文字領域の減色画像である。１１０は減色画像１０９が１ビットであるときに、減色画像１０９を入力し、ＭＭＲ圧縮して夫々の減色画像１０９に応じた複数の圧縮コードＹ１１５を作成するＭＭＲ圧縮部である。１１１は減色画像１０９が２ビット以上であるときに、減色画像１０９を入力し、可逆圧縮（例えばＺＩＰ圧縮）して夫々の減色画像１０９に応じた複数の圧縮コードＺ１１６を作成する可逆圧縮部である。
【００１３】
以上の各部により生成される１Ａでまとめた１１２から１１６までのデータが結合して、これが圧縮データとなる。なお、文字領域が全て１ビットで表現されている場合、圧縮コードＺ１１６は生成されない。また文字領域そのものが存在しない場合、圧縮データ１Ａに含まれるデータは圧縮コードＸ１１３のみとなる。
【００１４】
画像２値化部１０２に原画像１０１が入力され、文字領域検出部１０４が文字領域座標１１２を出力するまでの各処理のフローチャートを図３に示す。なお本フローチャートに従ったプログラムコードは、本実施形態における画像圧縮装置内の不図示のＲＯＭやＲＡＭなどのメモリ内に格納され、不図示のＣＰＵにより読み出され実行されるものとする。
【００１５】
ステップＳ３０１にて原画像１０１（カラー画像）を入力し、間引いて解像度を落しながら輝度変換を行い、輝度画像Ｊを作成する。たとえば原画像がＲＧＢ２４ビット３００ｄｐｉだとすると、縦方向、横方向とも４画素ごとに
Ｙ＝０．２９９Ｒ＋０．５８７Ｇ＋０．１１４Ｂ
の演算を行い、その結果生成された輝度画像ＪはＹ８ビット７５ｄｐｉの画像となる。
【００１６】
ステップＳ３０２にて輝度データのヒストグラムを取り、２値化閾値Ｔを算出する。この算出方法はここでは特には限定しないが、例えばヒストグラムの中間値となる輝度値をこの閾値Ｔとしてもよい。
【００１７】
ステップＳ３０３にて２値化閾値Ｔを用いて輝度画像Ｊを２値化し、２値画像１０３を作成する。
【００１８】
ステップＳ３０４にて２値画像中の黒画素の輪郭線追跡を行い、すべての黒領域に対してラベル付けする。
【００１９】
ステップＳ３０５にてステップＳ３０４でラベル付けされた黒領域を検索し、黒領域中の文字らしい領域を判定する。
【００２０】
ステップＳ３０６にて形や位置から結合するものを結合する。
【００２１】
ここで図３に示したフローチャートに従った処理の一例を示す。たとえば図４に示すカラー原稿（原画像１０１）を入力し、間引いて輝度変換したもののヒストグラムを取ると図５のようになる。このヒストグラムから平均、分散、などのデータを利用して閾値Ｔ＝１５０を算出し、算出された閾値Ｔを用いて図４に示したカラー原稿（原画像１０１）を２値化した画像（２値画像１０３）は図６のようになる。図６の黒画素の輪郭線追跡を行い、すべてをラベリングして、たとえば、横幅が閾値以下、または高さが閾値以下の黒画素の集まりのみ文字として許すと図７に示す黒画素の集まりが文字領域となる。これらの文字領域の座標データが文字領域座標１１２として不図示のＲＡＭに格納される。
【００２２】
必要ならばこれらの黒画素の集まりを位置の近さや横幅、高さの一致からグループ化していくと、図８に示すような１６個の文字領域が検出できる。この文字領域も必要ならば不図示のＲＡＭに格納しても良い。
【００２３】
次に、２値画像１０３を利用した文字部塗りつぶし部１０４の処理の一例を図１０に示した原画像例を用いて、図１１に示した同処理のフローチャートを用いて説明する。なお本フローチャートに従ったプログラムコードは、本実施形態における画像圧縮装置内の不図示のＲＯＭやＲＡＭなどのメモリ内に格納され、不図示のＣＰＵにより読み出され実行されるものとする。
【００２４】
図１０（ａ）は原画像である。この原画像から図１０（ｂ）のような１つの文字領域の２値画像を得たとする。本実施形態では原画像１０１を３２×３２毎の領域(以下、パーツ)に分割し（ステップＳ１１０１）、パーツごとに処理をおこなう。図１０（ｃ）にパーツごとに分けた様子を示す。００から１０までの６つのパーツはステップＳ１１０３の分岐により文字領域がないのでなにも処理が行われない。１１のパーツにて、ステップＳ１１０３の分岐によりステップＳ１１０４にすすみ、２値画像１０３において１１のパーツに対応する箇所を参照し、当該箇所の白部分（白画素）に対応する原画像１０１のＲＧＢ値（またはＹＵＶでもなんでも良い）の平均値ａｖｅ＿ｃｏｌｏｒを算出する（ステップＳ１１０４）。
【００２５】
ステップＳ１１０５にて、今度は２値画像１０３において１１のパーツに対応する箇所を参照し、当該箇所中の黒部分（黒画素）に対応する原画像１０１の部分のカラー値を、上記ａｖｅ＿ｃｏｌｏｒとする。
【００２６】
以上の処理を文字領域の存在するパーツ１２，１３，２１，２２，２３に対して繰り返し行う。他のパーツは文字領域がないので何も処理が行われない。このようにして、文字の存在した部分に当該文字の周囲の画素の平均値を埋めることが出来る。本フローチャートの処理により、文字塗りつぶし部１０５は画像Ａを生成する。
【００２７】
次に、この画像Ａは縮小部１０６において縮小される。本実施形態ではこの縮小処理方法として単純間引きとする。ちなみに、この縮小と文字部塗りつぶし処理は順番を逆にしても構わない。その場合２値画像１０３と原画像１０１の位置のずれに気を付ける必要がある。
【００２８】
一方、減色部１０８２を含む文字色抽出部１０８における処理のフローチャートを図１２に示す。
【００２９】
ステップＳ１２０１では、抽出された色数を表すカウンタｎｕｍを０にリセットする。抽出されたすべての文字領域ごとに処理を行うので、
ステップＳ１２０２では、未処理の文字座標があるかどうかチェックし、あったらステップＳ１２０２にすすみ、無かったら本処理を終了する。
【００３０】
ステップＳ１２０３では、２値画像１０３において未処理の文字座標に位置する部分の細線化処理を行い、スキャナ読み込み時の下地から文字部への変化部にあたる黒を減らしていき、新しい２値画像ｎｅｗｂｉを作成する。
【００３１】
次にステップＳ１２０４にてｎｅｗｂｉの黒画素に対応する原画像のＲＧＢの３次元ヒストグラムを取る。この際、普通にヒストグラムをとると、たとえば入力画像がＲＧＢ各８ビットだとすると、２５６×２５６×２５６のヒストグラムが必要になる。文字部に必要なのは解像度であり、階調は必要ないこと、また、スキャナによる読み込み時のばらつきを押さえながら代表色を算出するには多少の画素値の違いは無視した方が良いこと、などを鑑みると、これほどの細かなヒストグラムは必要ない。これらのことから本実施形態ではＲＧＢ８ビット中上位５ビットのＲＧＢ３次元ヒストグラムをとる。このヒストグラムをとる際は、その文字領域に存在する黒画素の総数ｐｉｘｅｌｎｕｍも算出する。
【００３２】
また、本実施形態ではＲＧＢ空間を利用したが、ＹＵＶなど他の色空間でも構わない。また本実施形態では３次元ヒストグラムをとったが、各色それぞれの１次元ヒストグラムを３つとってもかまわない。
【００３３】
次にステップＳ１２０５では、ＲＧＢ３次元ヒストグラムから最大値を算出する。本実施形態ではすでに上位５ビットのみのＲＧＢ３次元ヒストグラムを取り、スキャナのばらつきによるノイズを押さえたが、さらに、ヒストグラムの隣り合った値の合計の最大値をとることにより、図１３に示すような２つのヒストグラムにまたがる本来の最大値を検出することが可能となる。具体的にいうと、３次元ヒストグラムなので、注目点と、Ｒ方向で隣り合った２つ、Ｇ方向で隣り合った２つ、Ｂ方向で隣り合った２つの計７つのヒストグラム値の合計値の最大値を検出するなどが考えられる。このように検出された最大値をｃｏｌＲ［ｎｕｍ］，ｃｏｌＧ［ｎｕｍ］，ｃｏｌＢ［ｎｕｍ］に代入する。
【００３４】
ステップＳ１２０６では、ステップＳ１２０５にて検出された最大値を中心に、例えば３ステップずつ広げた正方形内を設定し、後述する処理の後この正方形内に位置するヒストグラム値を０にする。正方形の説明を図１５に図示する。図１５はＲＧＢ３次元ヒストグラムの様子で、黒点で示したものがｃｏｌＲ［ｎｕｍ］，ｃｏｌＧ［ｎｕｍ］，ｃｏｌＢ［ｎｕｍ］とする。その点を中心に３ステップずつ広げた合計７×７×７が前述の正方形である。ここで３ステップというと、上位５ビットのヒストグラムなので元のＲＧＢの８ビット（２５６階調）で２４ステップに値する。そしてこの正方形内のヒストグラム値をｐｉｘｅｌｎｕｍから引いたあと、この正方形内のヒストグラム値に０を代入する。
【００３５】
ステップＳ１２０７ではｎｕｍを１つインクリメントする。
【００３６】
ステップＳ１２０８では、ｐｉｘｅｌｎｕｍがあらかじめ決められたｔｈｒｅ１以上かどうかチェックし、ｔｈｒｅ１以上であればステップＳ１２０５に進み、未満であれば１２０２に進む。
【００３７】
以上の処理をすべての文字座標に繰り返すことにより、すべての文字領域のパレット１１４が作成される。なお、このパレットのデータ中にはそのパレットがどの文字領域のパレットであるかを特定するコードが記載されている。
【００３８】
そして減色部１０８２は、この領域のパレット数が１であったらば、入力された２値画像１０３の文字領域部分を切り抜き、１部分２値画像を作成する。それがその文字領域の減色画像となる。
【００３９】
一方、この領域のパレット数が２以上である場合、減色部１０８２は原画像と２値画像から、文字領域内の２値画像が黒である画素に対応する原画像の画素値をパレットの値に振り分け、減色画像を作成する。割り振られるビット数は、２値画像の白の部分として透過を示すデータが必要となるので、パレット数が３のときは透過データの分を１つプラスして４となるので２ビット。パレット数が４のときは透過データの分を１つプラスして５となるので３ビットとなる。このビット数は最終的に適応される画像フォーマットで表現出来るビット数に準じる。
【００４０】
この際たとえばパレット数が著しく多く、多色化による画質向上、圧縮率向上の効果が見られないと判断できる場合には多色化はやめ、下地画像として保存することも考えられる。その場合は文字領域座標１１２からその文字領域を削除しなくてはならない。また、文字部塗りつぶし部１０５の処理が行われる前に文字領域座標１１２から削除しなければならない。
【００４１】
次に上述の各フローチャート（図３，１１，１２）に従った処理以降の処理である、圧縮データ１Ａを生成するフローチャートを図２０に示す。なお本フローチャートに従ったプログラムコードは、本実施形態における画像圧縮装置内の不図示のＲＯＭやＲＡＭなどのメモリ内に格納され、不図示のＣＰＵにより読み出され実行されるものとする。
【００４２】
上述の通り作成された減色画像１０９が１ビットの場合はこの減色画像１０９を文字色抽出部１０８からＭＭＲ圧縮部１１０に出力し（ステップＳ２００１）、このＭＭＲ圧縮部１１０においてＭＭＲ圧縮し、圧縮コードＹ１１５を作成する（ステップＳ２００３）。また、減色画像１０９が２ビット以上の場合は可逆圧縮部１１１にて可逆圧縮し、圧縮コードＺ１１６を作成する。
【００４３】
一方、ＪＰＥＧ圧縮部１０７は縮小画像Ｂ１０５に対してＪＰＥＧ圧縮を行い、圧縮コードＸ１１３を作成する（ステップＳ２００４）。なお、ステップＳ２００１〜Ｓ２００３の処理と、ステップＳ２００４の処理は順番は逆でも良い。
【００４４】
そして、文字領域座標１１２、パレット１１４、圧縮コードＸ１１３、圧縮コードＹ１１５、圧縮コードＺ１１６のうち少なくとも一つ以上をまとめたフォーマットを作成し、圧縮データ１Ａを作成する（ステップＳ２００５）。この圧縮データ１Ａのフォーマットはここでは特には限定せず、単純に連結したデータ列をまとめて圧縮データ１Ａとしてもよい。
【００４５】
以上の説明により、本実施形態の画像圧縮装置及びその方法は、複数の色を有する文字領域を含む画像に対して圧縮を行った際、当該文字領域に複数の色を許容して、圧縮データを生成することができる。
【００４６】
次に本実施形態における画像伸長装置について、本実施形態における画像圧縮装置により上述の通り作成された圧縮データを伸長する前記画像伸長装置の概略構成を、図２を用いて説明する。又、同時に本実施形態における画像伸長装置が行う画像伸長処理のフローチャートを図１６に示す。なお本フローチャートに従ったプログラムコードは、本実施形態における画像伸長装置内の不図示のＲＯＭやＲＡＭなどのメモリ内に格納され、不図示のＣＰＵにより読み出され実行されるものとする。
【００４７】
２０１は圧縮コードＸ１１３を入力し、ＪＰＥＧ伸長処理を行い、（多値）画像Ｅを作成する（ステップＳ２１０１）ＪＰＥＧ伸長部である。２０２は画像Ｅを入力し、拡大処理を行うことで、画像Ｆ２０３を生成する（ステップＳ２１０２）拡大部である。２０３は拡大部２０２により拡大された画像Ｆである。
【００４８】
２０４は圧縮コードＹ１１５を入力し、ＭＭＲ伸長処理を行い、２値画像Ｇ２０５を作成する（ステップＳ２１０３）ＭＭＲ伸長部である。２０６は圧縮コードＺ１１６を入力し、（多色）画像Ｈ２０７を作成する（ステップＳ２１０４）伸長部である。２０８は文字領域座標１１２とそれに対応するパレット１１４および２値画像Ｇ２０５または多色画像Ｈ２０７を入力し、２値画像または多色画像の画素データが透過をあらわす場合は画像Ｆ２０３の画素の色を、それ以外のときは対応するパレット色を選択し最終的な画像である画像Ｉ２０９を作成する合体部である。
【００４９】
図１４に合体部２０８における処理例を示す。まず図１４（ａ）にＪＰＥＧ伸長部２０１による圧縮コードＸ１１３のＪＰＥＧ伸長結果を示す。なお、本実施形態では文字領域は図１４（ｂ）のように、２値画像１ビットで表現されていて、そのパレットはＲ＝２０、Ｇ＝３０、Ｂ＝２２５とする。図１４（ｂ）の２値画像を参照して、黒画素に対応する画像（図１４（ａ））上にパレット色（２０、３０、２５５）を有するデータをのせることで、最終的に図１４（ｃ）のような画像が出来上がる（ステップＳ２１０５，ステップＳ２１０７）。これが伸長画像Ｉ２０９となる。
【００５０】
一方、文字領域が多色画像の場合はパレット数が変わり（ステップＳ２１０５）、たとえば２ビットなら００，０１，１０，１１の４つの画素値に割り当てられたパレットを選択し、当てはめていく（ステップＳ２１０６）。そのうち１つは透過を示し、たとえば００とすると、００の値をもつ画素は画像（図１４（ａ））の画素を選択する。
【００５１】
以上の説明により、本実施形態の画像伸長装置及びその方法は、本実施形態の画像符号装置が圧縮した圧縮データを伸長し画像を復元すると共に、当該画像に含まれる文字領域が元々複数の色を有していた場合、当該文字領域に対して複数の色を与えることができる。
【００５２】
［第２の実施形態］
第１の実施形態では文字領域検出部１１２においてカラー画像の２値化を行ったがその他にも、原画像に微分フィルタをかけ、すべての画素の近隣の画素とのエッジ量を算出し、そのエッジ量を２値化することにより得られた２値画像を同様に輪郭線追跡をして文字領域を検出する方法がある。この場合、画像圧縮装置の概略構成は図１７のようになる。
【００５３】
本実施形態では、２値画像は文字部塗りつぶし部１７０７、文字色抽出部１７１０では使用できないので、文字領域ごとに２値画像を作成する。この２値画像は例えば文字領域検出部１７０４にて算出した（第１の実施形態と同様の）閾値Ｔにて第１の実施形態と同様にして２値化しても良いし、文字領域ごとにヒストグラムを取ってその文字領域により最適な２値化閾値を算出しても良い。図５に示した全面のヒストグラムと比較して、文字領域一部分の輝度ヒストグラムは図９のようなシンプルな形が期待できるので、閾値の決定は容易である。９０１は下地色の集合であり、９０２は文字色の集合である。
【００５４】
また、第１の実施形態では輝度の低い下地に含まれる輝度の高い文字(反転文字)の処理が不可能であるが、この微分処理により文字領域を検出する領域分割は反転文字領域の検出も可能となる。１７０２は微分処理部であり、図１８に示しような微分フィルタを注目画素を中心にかけ、その絶対値が閾値を超えたら黒、超えなかったら白というように２値化していく。図１８（ａ）は１次微分フィルタであり、上は横線を検出することが出来、下は縦線を検出することが出来る。２つのフィルタの絶対値の合計を利用すると斜め線を検出することが出来る。また、斜め線用フィルタを利用しても良い。図１８（ｂ）は二次微分フィルタで全方向に対応した物である。二次微分フィルタも横方向、縦方向、と作成することも可能である。このようなフィルタを全画素にかけ、微分２値画像１７０３を作成する。間引きながらフィルタをかけることによって同時に解像度を落すことも可能である。以上のように作成された２値画像に図３のステップＳ３０４以降の処理を行えば、反転文字も含んだ文字領域座標を検出することが出来る。
【００５５】
また、２値化部１７０５も反転文字に対応しなければならない。また図９のヒストグラムを有するパターン以外にも、反転文字領域も文字領域として抽出出来る本実施形態における画像圧縮装置の場合、図１９の３パターンのヒストグラムを有するパターンが主に入ってくることになる。（ｂ）は（ａ）に対する反転画像（反転文字を有する）のヒストグラムであり、（ｃ）がグレー下地上に黒文字と白文字の２色が存在する場合の画像のヒストグラムである。これらの３パタンを考えて２値化部１７０５ではＡ点とＢ点を検出し、ＡとＢに挟まれた領域は白、その他は黒の二値化処理を行うと良い。または、（ｃ）のケースは考えずに、下地と文字部を分ける１つの閾値を検出し、反転パタンであれば反転する処理を行えば良い。
【００５６】
このように反転文字領域も対応すればＪＰＥＧ圧縮される画像上には第１の実施形態では残ってしまっていた反転文字領域も文字部塗りつぶしによりスムージングされるので、圧縮効率も良く、またその反転文字部も解像度やモスキートノイズの劣化なしに圧縮することが可能となる。
【００５７】
また第１の実施形態及び本実施形態では文字領域抽出処理は２値画像を利用して行ったがその限りでなく、多値画像自体の画素値を参照して文字領域を推測してもよい。
【００５８】
また、第１の実施形態では縮小部１０６における画像Ａの縮小の程度はどの画像も一定とした。しかしその限りでなく、たとえば縮小パラメータ（たとえば、２分の１、４分の１など）を決定する縮小パラメータ決定手段を設けても良い。この実現方法としては、例えば画像Ａ全体に対して８×８毎に直交変換を行い、直交変換結果の高周波部の係数が大きい領域が閾値以上存在したら、縮小は２分の１、閾値以下であったら縮小は４分の１など調整することが可能となる。このパラメータは２段階とは限らず、たとえば３段階（縮小しない、２分の１、４分の１）にすることも可能である。これにより、高周波部分の極端な縮小が避けられ、画質劣化を防ぐ効果がある。この縮小パラメータ決定には、画像に微分フィルタをかけ、その絶対値の総和から切り替える方法も考えられる。たとえば、隣り合った画素値の差の総和が閾値ｍ以上であれば、縮小しない、ｎ以上であれば、２分の１、ｎ未満なら４分の１などにすることが考えられる。
【００５９】
［その他の実施形態］
さらに、本発明は上記実施の形態を実現するための装置及び方法のみに限定されるものではなく、上記システム又は装置内のコンピュータ（CPUあるいはMPU）に、上記実施の形態を実現するためのソフトウエアのプログラムコードを供給し、このプログラムコードに従って上記システムあるいは装置のコンピュータが上記各種デバイスを動作させることにより上記実施の形態を実現する場合も本発明の範疇に含まれる。
【００６０】
またこの場合、前記ソフトウエアのプログラムコード自体が上記実施の形態の機能を実現することになり、そのプログラムコード自体、及びそのプログラムコードをコンピュータに供給するための手段、具体的には上記プログラムコードを格納した記憶媒体は本発明の範疇に含まれる。
【００６１】
この様なプログラムコードを格納する記憶媒体としては、例えばフロッピーディスク、ハードディスク、光ディスク、光磁気ディスク、CD-ROM、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。
【００６２】
また、上記コンピュータが、供給されたプログラムコードのみに従って各種デバイスを制御することにより、上記実施の形態の機能が実現される場合だけではなく、上記プログラムコードがコンピュータ上で稼働しているOS(オペレーティングシステム)、あるいは他のアプリケーションソフト等と共同して上記実施の形態が実現される場合にもかかるプログラムコードは本発明の範疇に含まれる。
更に、この供給されたプログラムコードが、コンピュータの機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに格納された後、そのプログラムコードの指示に基づいてその機能拡張ボードや機能格納ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって上記実施の形態が実現される場合も本発明の範疇に含まれる。
【００６３】
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明した（図３、及び／又は図１１，及び／又は図１２，及び又は図１６、及び又は図２０に示す）フローチャートに対応するプログラムコードが格納されることになる。
【００６４】
【発明の効果】
以上説明したように本発明によれば、画像中の文字領域内の色を損なうことなく圧縮、伸長を行うことができる。
【図面の簡単な説明】
【図１】本発明の第１の実施形態における画像圧縮装置の概略構成を示すブロック図である。
【図２】本発明の第１の実施形態における画像伸長装置の概略構成を示すブロック図である。
【図３】画像２値化部１０２に原画像１０１が入力され、文字領域検出部１０４が文字領域座標１１２を出力するまでの各処理のフローチャートである。
【図４】カラー画像（原画像１０１）を示す図である。
【図５】図４に示す原画像１０１を間引いて高度変換したもののヒストグラムを示す図である。
【図６】図４に示した原画像１０１を閾値Ｔを用いて２値化した際の画像を示す図である。
【図７】図６に示した画像の黒画素の輪郭線追跡を行い、すべてをラベリングしたときに、横幅が閾値以下、または高さが閾値以下の黒画素の集まりのみ文字として許した場合の文字領域を示す図である。
【図８】検出される文字領域を示す図である。
【図９】文字領域一部分の輝度ヒストグラムを示す図である。
【図１０】（ａ）は２値画像１０３を利用した文字部塗りつぶし部１０４の処理の一例を説明する為に用意された原画像でを示す図で、（ｂ）は１つの文字領域の２値画像を示す図で、（ｃ）は（ａ）に示した画像をパーツに分けた様子を示す図である。
【図１１】２値画像１０３を利用した文字部塗りつぶし部１０４の処理のフローチャートである。
【図１２】減色部１０８２を含む文字色抽出部１０８における処理のフローチャートである。
【図１３】２つのヒストグラムにまたがる本来の最大値を示す図である。
【図１４】（ａ）はＪＰＥＧ伸長部２０１における圧縮コードＸ１１３のＪＰＥＧ伸長結果を示す図で、（ｂ）は文字領域の画像を示す図で、（ｃ）は最終的に合成部２０８から出力される伸長画像Ｉ２０９を示す図である。
【図１５】ステップＳ１２０５似て検出された最大値を中心として各方向に３ステップ広げた際に生成される正方形を示す図である。
【図１６】本発明の第１の実施形態における画像伸長装置が行う画像伸長処理のフローチャートである。
【図１７】本発明の第２の実施形態における画像圧縮装置の概略構成を示すブロック図である。
【図１８】（ａ）は１次微分フィルタを示す図で、（ｂ）は２次微分フィルタを示す図である。
【図１９】本発明の第２の実施形態における画像圧縮装置に主に入力される３パターンの画像のヒストグラムを示す図である。
【図２０】圧縮データ１Ａを生成する処理のフローチャートである。
【図１】
0004250316.tif 000002
【図２】
0004250316.tif 000003
【図３】
0004250316.tif 000004
【図４】
0004250316.tif 000005
【図５】
0004250316.tif 000006
【図６】
0004250316.tif 000007
【図７】
0004250316.tif 000008
【図８】
0004250316.tif 000009
【図９】
0004250316.tif 000010
【図１０】
0004250316.tif 000011
【図１１】
0004250316.tif 000012
【図１２】
0004250316.tif 000013
【図１３】
0004250316.tif 000014
【図１４】
0004250316.tif 000015
【図１５】
0004250316.tif 000016
【図１６】
0004250316.tif 000017
【図１７】
0004250316.tif 000018
【図１８】
0004250316.tif 000019
【図１９】
0004250316.tif 000020
【図２０】
0004250316.tif 000021