(57)【要約】【課題】画像データの転送量及びメモリの使用量等を低減することができる画像処理装置、並びにこの画像処理装置を搭載した画像読取装置及び画像形成装置を提供する。【解決手段】入力画像データ中の隣接する画素の画素値の差分が、画像の主走査方向及び／又は副走査方向に増加から減少へ又は減少から増加へ転じる反転回数を反転回数カウント処理部６１にて算出する。入力画像データの各画素について算出された反転回数が閾値を超えるか否かを平坦判定処理部６２にて判定し、判定結果に基づいて領域判定処理部６３が入力画像データを変化領域及び平坦領域に分離する。画像データフォーマット変換部６４は、変化領域の解像度を低減すると共に、変化領域及び平坦領域の情報をヘッダ情報として付与した画像データを生成して出力する。【選択図】図３
2010074300.tif 000002
【特許請求の範囲】
【請求項１】
入力画像データを画素値の変化が大きい変化領域及び変化が小さい平坦領域に分離する分離手段と、
該分離手段により分離された平坦領域の解像度を低減する解像度低減手段と、
前記分離手段により分離された変化領域、及び前記解像度低減手段により解像度を低減された平坦領域に係るヘッダ情報を生成するヘッダ情報生成手段と、
該ヘッダ情報生成手段が生成したヘッダ情報、前記分離手段により分離された変化領域、及び前記解像度低減手段により解像度を低減された平坦領域を含む画像データを生成する画像データ生成手段と、
該画像データ生成手段が生成した画像データを記憶するメモリと、
前記画像データ生成手段が生成した画像データに画像処理を施す画像処理手段と、
前記メモリ及び前記画像処理手段の間の画像データの転送を行う画像データ転送手段と
を備え、
前記画像データ転送手段は、
前記メモリから読み出した画像データを、ヘッダ情報に基づいて平坦領域の解像度を変化領域と同じ解像度へ変換して、前記画像処理手段へ与え、
前記画像処理手段が画像処理を施した画像データを、前記分離手段、解像度低減手段、ヘッダ情報生成手段及び画像データ生成手段により平坦領域の解像度を低減した画像データに変換して、前記メモリへ与えるようにしてあること
を特徴とする画像処理装置。
【請求項２】
入力画像データから注目画素及び該注目画素を含む所定範囲の画素領域を決定する決定手段と、
該決定手段が決定した画素領域にて、隣接する画素の画素値の差分が、画像の主走査方向及び／又は副走査方向に増加から減少へ又は減少から増加へ転じる回数を計数する計数手段と、
該計数手段が計数した回数が所定値未満の場合に、前記注目画素が平坦領域に含まれる画素であると判定する判定手段と
を更に備え、
前記分離手段は、前記判定手段が平坦領域に含まれる画素であると判定した画素で構成された領域を、平坦領域に分離するようにしてあること
を特徴とする請求項１に記載の画像処理装置。
【請求項３】
入力画像データから注目画素及び該注目画素を含む所定範囲の画素領域を決定する決定手段と、
該決定手段が決定した画素領域にて、最大画素値及び最小画素値の差分を算出する算出手段と、
該算出手段が算出した差分が所定値未満の場合に、前記注目画素が平坦領域に含まれる画素であると判定する判定手段と
を更に備え、
前記分離手段は、前記判定手段が平坦領域に含まれる画素であると判定した画素で構成された領域を、平坦領域に分離するようにしてあること
を特徴とする請求項１又は請求項２に記載の画像処理装置。
【請求項４】
画像データから文字又は線画を含む前景画像を抽出する抽出手段を更に備え、
前記分離手段は、前記抽出手段が抽出した前景画像の画像データを分離するようにしてあること
を特徴とする請求項１から請求項３までのいずれか１つに記載の画像処理装置。
【請求項５】
前記画像データ生成手段が生成した画像データから、同じ又は近似する画素値を有する画素に同一のインデックスを付す処理を行うインデックス化処理手段と、
前記インデックス及び画素値の対応を記憶したテーブルを生成するテーブル生成手段と
を更に備えること
を特徴とする請求項１から請求項４までのいずれか１つに記載の画像処理装置。
【請求項６】
請求項１から請求項５までのいずれか１つに記載の画像処理装置と、
原稿を読み取って生成した画像データを出力する読取手段と
を備え、
前記画像処理装置は、前記読取手段が出力した画像データに画像処理を施すようにしてあること
を特徴とする画像読取装置。
【請求項７】
請求項１から請求項５までのいずれか１つに記載の画像処理装置と、
該画像処理装置が画像処理を施した画像データに基づく画像形成を行う画像形成手段と
を備えることを特徴とする画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データのデータ量を低減することができる画像処理装置、並びにこの画像処理装置を搭載した画像読取装置及び画像形成装置に関する。
【背景技術】
【０００２】
従来、電子写真方式又はインクジェット方式等により画像形成を行う複写機又は複合機等の画像形成装置が広く普及している。また近年の複合機は高機能化が進められており、スキャナにより読み取った文書を電子データとして保存し、保存した文書ファイルを管理する機能、及び文書データを電子メールとして送信する機能等が求められている。スキャナにより読み取った文書は画像データとして保存されるが、この画像データは一般的に容量が大きいため、画像データを蓄積又は送信する場合にはデータ量を低減する画像の圧縮技術などが必要不可欠である。
【０００３】
高圧縮率を実現するための画像の圧縮技術の１つにレイヤ−分離による圧縮技術がある。図３０は、レイヤ−分離による圧縮技術を説明するための模式図である。この圧縮技術は、入力された画像データに係る画像（図３０（ａ）参照）を前景レイヤ（同図（ｂ）参照）及び背景レイヤ（同図（ｃ）参照）の２つの画像データに分離し、各レイヤに適した画像データの圧縮を行うことによって、最終的な圧縮画像の圧縮率を高めることができる。
【０００４】
前景レイヤは、文字又は線画（以下、文字等という）による画像であり、ＪＢＩＧ（Joint Bi-level Image experts Group）、ＭＭＲ（Modified Modified Read）又はＬＺＷ（Lempel Ziv Welch）等の可逆圧縮方式による圧縮が適している。また背景レイヤは、文字又は線画以外の画像であり、ＪＰＥＧ（Joint Photographic Experts Group）などの非可逆圧縮方式による圧縮が適している。非可逆圧縮方式は、圧縮率の制御が容易であるため、画像データの用途などに応じて、データ量を優先して圧縮率を高めたり、又は、画質を優先して圧縮率を低減したりすることができる。これに対して可逆圧縮方式は、圧縮率を制御することは容易でない。
【０００５】
図３１は、前景レイヤの圧縮率を高める方法の一例を説明するための模式図である。入力画像データから分離した前景レイヤ（図３１（ａ）参照）を、文字等の画素及びそれ以外の画素に２値化したマスク（同図（ｂ）参照）と、文字等の色に係る情報を抽出した色情報（同図（ｃ）参照）とに更に分離する。分離により得られたマスクを可逆圧縮方式により圧縮し、色情報を可逆圧縮方式又は非可逆圧縮方式のいずれかにより圧縮することによって、前景レイヤを直接的に圧縮する方法と比較して、圧縮率を向上することができる。
【０００６】
また、圧縮率を向上するための技術として、カラー画像の画素値（カラー値）に対応付けてインデックスを付与し、このカラー画像の各画素をインデックスに変換するインデックス化を行うと共に、画素値毎の画素数などの情報を含むカラー情報、及びこの情報から生成した背景色情報等から、複数のインデックスを１つのインデックスに統合する技術がある。インデックスの統合によって画像データのデータ量が低減される。
【０００７】
このような画像データを圧縮するための画像処理を行う場合、複合機などの内部においては、複数の画像処理部の間で、又は画像データを記憶するメモリと画像処理部との間で、画像データの転送を行う必要がある。画像データの転送は１ページ分のデータを順に転送する方法が一般的であるが、複合機などが扱う画像の高画質化が求められることによって、転送する画像データのデータ量は増大するという問題がある。また、データ量の多い画像データを記憶するためには大容量のメモリを複合機などに搭載する必要がある。
【０００８】
特許文献１においては、第１メモリに記憶された画像データを矩形領域毎に分割して読み出すためのアドレス情報を生成するアドレス生成部と、アドレス情報に基づいて画像データを矩形領域単位で第１メモリから第２メモリへ転送する転送部と、第２メモリに記憶された矩形領域単位の画像データに対する画像処理を設定された画像処理モードに応じて実行する画像処理部とを備えて、アドレス生成部が複数の画像処理モード毎に異なる矩形領域となるようにアドレス情報を生成する構成とすることにより、画像処理モードに適した画像処理を実行することができる画像処理装置が提案されている。この画像処理装置は、１ページ分の画像データを複数の矩形領域に分割することによって、ラインバッファの最大主走査画素数への依存をなくすことができるため、画像の主走査幅又は解像度等を変更した場合であっても、ラインバッファの容量の増加によることなく、これに対応することができる。
【特許文献１】特開２００６−１３９８０３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら特許文献１に記載の画像処理装置は、ラインバッファの容量の増加によることなく、画像の主走査幅又は解像度等の変更に対応することを目的とするものであり、画像データの矩形領域毎に転送を行っても、通常の画像データの転送の場合と比較して、転送する画像データの容量は同じである。また、画像データ自体の容量が変わらないため、この画像データを記憶するためのメモリの使用容量も同じである。
【００１０】
本発明は、斯かる事情に鑑みてなされたものであって、その目的とするところは、画像データを変化領域及び平坦領域に分離し、平坦領域の解像度を低減した画像データを生成する構成とすることにより、画像データの転送容量及びメモリへの記憶容量等を低減することができる画像処理装置、並びにこの画像処理装置を搭載した画像読取装置及び画像形成装置を提供することにある。
【課題を解決するための手段】
【００１１】
本発明に係る画像処理装置は、入力画像データを画素値の変化が大きい変化領域及び変化が小さい平坦領域に分離する分離手段と、該分離手段により分離された平坦領域の解像度を低減する解像度低減手段と、前記分離手段により分離された変化領域、及び前記解像度低減手段により解像度を低減された平坦領域に係るヘッダ情報を生成するヘッダ情報生成手段と、該ヘッダ情報生成手段が生成したヘッダ情報、前記分離手段により分離された変化領域、及び前記解像度低減手段により解像度を低減された平坦領域を含む画像データを生成する画像データ生成手段と、該画像データ生成手段が生成した画像データを記憶するメモリと、前記画像データ生成手段が生成した画像データに画像処理を施す画像処理手段と、前記メモリ及び前記画像処理手段の間の画像データの転送を行う画像データ転送手段とを備え、前記画像データ転送手段は、前記メモリから読み出した画像データを、ヘッダ情報に基づいて平坦領域の解像度を変化領域と同じ解像度へ変換して、前記画像処理手段へ与え、前記画像処理手段が画像処理を施した画像データを、前記分離手段、解像度低減手段、ヘッダ情報生成手段及び画像データ生成手段により平坦領域の解像度を低減した画像データに変換して、前記メモリへ与えるようにしてあることを特徴とする。
【００１２】
また、本発明に係る画像処理装置は、入力画像データから注目画素及び該注目画素を含む所定範囲の画素領域を決定する決定手段と、該決定手段が決定した画素領域にて、隣接する画素の画素値の差分が、画像の主走査方向及び／又は副走査方向に増加から減少へ又は減少から増加へ転じる回数を計数する計数手段と、該計数手段が計数した回数が所定値未満の場合に、前記注目画素が平坦領域に含まれる画素であると判定する判定手段とを更に備え、前記分離手段は、前記判定手段が平坦領域に含まれる画素であると判定した画素で構成された領域を、平坦領域に分離するようにしてあることを特徴とする。
【００１３】
また、本発明に係る画像処理装置は、入力画像データから注目画素及び該注目画素を含む所定範囲の画素領域を決定する決定手段と、該決定手段が決定した画素領域にて、最大画素値及び最小画素値の差分を算出する算出手段と、該算出手段が算出した差分が所定値未満の場合に、前記注目画素が平坦領域に含まれる画素であると判定する判定手段とを更に備え、前記分離手段は、前記判定手段が平坦領域に含まれる画素であると判定した画素で構成された領域を、平坦領域に分離するようにしてあることを特徴とする。
【００１４】
また、本発明に係る画像処理装置は、画像データから文字又は線画を含む前景画像を抽出する抽出手段を更に備え、前記分離手段は、前記抽出手段が抽出した前景画像の画像データを分離するようにしてあることを特徴とする。
【００１５】
また、本発明に係る画像処理装置は、前記画像データ生成手段が生成した画像データから、同じ又は近似する画素値を有する画素に同一のインデックスを付す処理を行うインデックス化処理手段と、前記インデックス及び画素値の対応を記憶したテーブルを生成するテーブル生成手段とを更に備えることを特徴とする。
【００１６】
また、本発明に係る画像読取装置は、上述のいずれか１つの画像処理装置と、原稿を読み取って生成した画像データを出力する読取手段とを備え、前記画像処理装置は、前記読取手段が出力した画像データに画像処理を施すようにしてあることを特徴とする。
【００１７】
また、本発明に係る画像形成装置は、上述のいずれか１つの画像処理装置と、該画像処理装置が画像処理を施した画像データに基づく画像形成を行う画像形成手段とを備えることを特徴とする。
【００１８】
本発明においては、入力された画像データを画素値の変化が大きい変化領域と変化が小さい変化領域とに分離し、平坦領域の解像度を低減することによって、画像データの画質の劣化を抑制しつつ、データ量を低減する。更に、これら変化領域及び平坦領域に係る情報を含むヘッダ情報を生成し、変化領域、平坦領域及びヘッダ情報による画像データを生成する。これにより、平坦領域の解像度を低減した画像データをメモリに記憶して、メモリの使用量を低減することができる。
また、メモリから画像処理用ＩＣ（Integrated Circuit）などの画像処理手段へ画像データを転送する際には、メモリから読み出した画像データの平坦領域の解像度をヘッダ情報を基に変化領域と同じ解像度に変換して画像処理手段へ与える。これにより、画像処理手段は元の入力画像データと同じ解像度の画像データに対して画像処理を行うことができる。画像処理手段が画像処理を施した画像データは、平坦領域の解像度を低減してメモリに記憶する。これらにより、メモリと画像処理手段との間で転送される画像データを、平坦領域の解像度が低減された画像データとすることができ、データ転送量を低減できる。
【００１９】
また、本発明においては、入力画像データの注目画素を含む所定範囲の画素領域にて、隣接する画素の画素値の差分が、画像の主走査方向及び／又は副走査方向に増加から減少へ又は減少から増加へ転じる回数を計数し、この回数が所定値未満の場合に注目画素が平坦領域に含まれる画素であると判定する。画素値の比較と反転回数の計数との簡単な演算のみで、変化領域と平坦領域との分離を容易に行うことができる。
【００２０】
画像データ中のサイズの大きな文字などは上述の反転回数が少ない場合があり、平坦領域と判定される虞がある。そこで本発明においては、入力画像データの注目画素を含む所定範囲の画素領域にて、最大画素値及び最小画素値の差分を算出し、この差分が所定値未満の場合に注目画素が平坦領域に含まれる画素であると判定する。これにより、大きな文字などの領域は変化領域と判定されるため、大きな文字などの解像度を低減することがなく、画質劣化を防止できる。
【００２１】
また、本発明においては、入力画像データを文字又は線画を含む前景画像を抽出してそれ以外の背景画像と分離し、前景画像の平坦領域の解像度を低減する。これにより、平坦領域が多い前景画像のデータ量を効率的に低減でき、写真画像などを含む背景画像はＪＰＥＧなどの最適な圧縮方式によりデータ量を低減できる。よって、入力画像データのデータ量をより効率的に低減できる。
【００２２】
また、本発明においては、画像データ中の同じ又は近似する画素値を有する画素に対して同一のインデックスを付して画像データのインデックス化を行う。これにより、画像データのデータ量をより低減することができる。また、インデックスと画素値とを対応付けて記憶したテーブルを生成しておくことにより、インデックス化された画像データを元の画像データに戻すことができ、適切な画像処理を行うことができる。
【００２３】
また、本発明においては、スキャナなどの原稿を読み取って画像データを出力する画像読取装置に、上述の画像処理装置を搭載する。これにより、読み取った画像データの平坦領域の解像度を低減して、画質の劣化を抑制しつつ画像データのデータ量を低減することができるため、読み取った画像データによるメモリの使用量及び画像データの転送量等を低減することができる。
【００２４】
また、本発明においては、プリンタなどの画像形成装置に上述の画像処理装置を搭載し、画像処理装置にて画像処理が施された画像データの画像形成を行う。これにより画像形成に伴う画像処理にて、画質の劣化を抑制しつつメモリの使用量及び画像データの転送量等を低減することができる。
【発明の効果】
【００２５】
本発明による場合は、入力された画像データを変化領域及び平坦領域に分離し、平坦領域の解像度を低減すると共に、これら変化領域及び平坦領域に係る情報を含むヘッダ情報を生成し、変化領域、平坦領域及びヘッダ情報による画像データを生成する構成とすることにより、入力画像データの画質の劣化を抑制しつつ、データ量が低減された画像データを生成することができる。ヘッダ情報に基づいてデータ量が低減された画像データに対する画像処理を行うことができるため、画像データの記憶のためのメモリ使用量を低減することができ、メモリ及び画像処理手段等の間で行う画像データの転送量を低減することができる。
【発明を実施するための最良の形態】
【００２６】
（実施の形態１）
以下、本発明をその実施の形態を示す図面に基づき具体的に説明する。なお本実施の形態においては、原稿の読み取りを行う原稿読取装置としての機能及び画像の形成を行う画像形成装置としての機能を兼ね備えるデジタルカラー複合機（以下、ＭＦＰ（MultiFunction Peripheral）という）を例に説明を行う。
【００２７】
なおＭＦＰはカラーコピー機能、カラープリント機能及びカラースキャナ機能等の種々の機能を有しているが、本発明の技術はカラー原稿を読み取ることにより得られるカラー画像を圧縮する処理を行う場合などに適用可能であり、例えばＭＦＰのカラーコピー機能及びカラースキャナ機能に好適である。またＭＦＰのカラースキャナ機能には、カラー原稿を読み取って得られたカラー画像データを圧縮して他の装置へ送信するデータ送信機能、及びカラー画像データを圧縮してＭＦＰ内部のメモリなどに記憶する保存機能等があるが、本発明の技術はこれらの機能における画像データの圧縮処理を行う場合に適用可能である。
【００２８】
図１は、本発明の実施の形態１に係るＭＦＰの構成を示すブロック図である。本実施の形態に係るＭＦＰは、画像入力装置１１、画像出力装置１２、送信装置１３、操作パネル１５及び画像処理装置２０等を備えて構成されている。操作パネル１５は、ＭＦＰの動作モードなどを設定する設定ボタン及びテンキー、処理の開始指示などを受け付けるスタートキー、並びに電源キー及び各種のファンクションキー等の種々のハードウェアキーを有している。また操作パネル１５は、ＭＦＰの動作状態、ユーザへの警告メッセージ及びユーザの操作を補助する各種のメニュー等を表示するディスプレイを有している。なお、ユーザの操作を受け付けるハードウェア機に代えて、ディスプレイ上にタッチパネルを設ける構成としてもよい。操作パネル１５は、受け付けた指示又は設定等を画像入力装置１１、画像出力装置１２、送信装置１３及び画像処理装置２０へ与え、これにより各装置は受け付けた指示又は設定等に応じた処理を行うことができる。
【００２９】
画像入力装置１１は、原稿に光を照射する光源、及びＣＣＤ（Charge Coupled Device）などのイメージセンサが並設された受光部等を備えるスキャナにて構成されている。画像入力装置１１は、光源から原稿へ光を照射すると共に、受光部を一方向へ移動させて、原稿からの反射光をＲ（赤）Ｇ（緑）Ｂ（青）の３つの色成分に分解して受光部で読み取り、ＲＧＢのアナログ信号として画像処理装置２０へ与える。
【００３０】
画像処理装置２０は、Ａ／Ｄ変換部２１、シェーディング補正部２２、入力階調補正部２３、領域分離処理部２４、色補正部２５、黒生成下色除去部２６、空間フィルタ処理部２７、出力階調補正部２８、階調再現処理部２９、圧縮処理部３０及び記憶部３１等を備えている。画像入力装置１１から入力されたＲＧＢのアナログ信号は、画像処理装置２０のＡ／Ｄ変換部２１〜階調再現処理部２９の各部にて画像処理が施されて画像出力装置１２へ出力されるか、又は、画像処理装置２０のＡ／Ｄ変換部２１〜領域分離処理部２４、圧縮処理部３０の各部にて画像処理が施されて送信装置１３へ出力される。
【００３１】
Ａ／Ｄ変換部２１は、画像入力装置１１から与えられたＲＧＢのアナログ信号を例えば各８ビットのデジタルの画像信号に変換するものであり、変換したＲＧＢの画像信号をシェーディング補正部２２に与える。シェーディング補正部２２は、Ａ／Ｄ変換部２１から与えられたデジタルのＲＧＢの画像信号に対して、画像入力装置１１の照明系、結像系及び撮像系等において生じる各種の歪みを取り除くシェーディング処理を行い、シェーディング処理後のＲＧＢの画像信号を入力階調補正部２３へ与える。
【００３２】
入力階調補正部２３は、シェーディング補正部２２にて歪みが取り除かれたＲＧＢの画像信号（ＲＧＢの反射率信号）に対して、カラーバランスの調整及びコントラストの調整等の処理を行うと共に、濃度信号など画像処理装置２０の各部の処理に適した信号形式に変換し、処理後のＲＧＢの画像信号を領域分離処理部２４へ与える。
【００３３】
領域分離処理部２４は、入力階調補正部２３から与えられたＲＧＢの画像信号に係る画像の各画素が、文字により構成される文字領域、網点画像により構成される網点領域又は写真で構成される写真領域のいずれに属する画素であるかを判定することによって、各画素を分離する。領域分離処理部２４は、処理結果として各画素がいずれの領域に属しているかを示す情報を、領域分離信号として黒生成下色除去部２６、空間フィルタ処理部２７及び階調再現処理部２９へ与えると共に、入力階調補正部２３から与えられたＲＧＢの画像信号をそのまま色補正部２５及び圧縮処理部３０へ与える。
【００３４】
色補正部２５は、領域分離処理部２４から与えられたＲＧＢの画像信号を、Ｃ（シアン）Ｍ（マゼンタ）Ｙ（イエロー）の色空間の画像信号に変換すると共に、画像出力装置１２での色再現の忠実化実現のために、ＣＭＹの各色成分に色補正処理を行う。色補正処理は、具体的には、不要吸収成分をそれぞれ含むＣＭＹのトナー又はインク等の分光特性に基づいた色濁りを、ＣＭＹの各色成分から取り除く処理である。色補正部２５は、変換したＣＭＹの画像信号を黒生成下色除去部２６へ与える。
【００３５】
黒生成下色除去部２６は、領域分離処理部２４から与えられる領域分離信号、及び色補正部２５から与えられるＣＭＹの画像信号の各色成分に基づいて、Ｋ（黒）の色成分を生成する黒生成処理を行うと共に、元のＣＭＹの各色成分から黒生成処理にて生成されたＫ成分を差し引いて新たなＣＭＹ信号を生成する処理を行う。これにより、色補正部２５から与えられたＣＭＹの画像信号は、ＣＭＹＫの４つの色成分を有する画像信号に変換される。
【００３６】
例えば、スケルトンブラックによる黒生成処理を行う場合に、スケルトンカーブの入出力特性をｙ＝ｆ（ｘ）とし、入力される画像の画素値をＣ、Ｍ、Ｙとし、出力される画素値をＣ'、Ｍ'、Ｙ'、Ｋ'とし、ＵＣＲ（Under Color Removal、下色除去）率をα（０＜α＜１）とすると、黒生成下色除去処理は以下の式で表される。黒生成下色除去部２６の黒生成下色除去処理により変換されたＣＭＹＫの画像信号は、空間フィルタ処理部２７へ与えられる。
Ｋ'  ＝  ｆ｛ｍｉｎ（Ｃ、Ｍ、Ｙ）｝
Ｃ'  ＝  Ｃ−αＫ'
Ｍ'  ＝  Ｍ−αＫ'
Ｙ'  ＝  Ｙ−αＫ'
【００３７】
空間フィルタ処理部２７は、領域分離処理部２４から与えられる領域分離信号に基づいて、黒生成下色除去部２６から与えられたＣＭＹＫの画像信号に係る画像に対して、デジタルフィルタによる空間フィルタ処理を行う。これにより、画像の空間周波数特性が補正され、画像出力装置１２が出力する画像にぼやけ又は粒状性劣化等を生じることが防止される。空間フィルタ処理部２７にて空間フィルタ処理が施された画像に係るＣＭＹＫの画像信号は、出力階調補正部２８にて画像出力装置１２の出力特性に基づく出力階調補正処理が施された後に、階調再現処理部２９へ与えられる。
【００３８】
階調再現処理部２９は、領域分離処理部２４から与えられる領域分離信号に応じて、出力階調補正部２８から与えられたＣＭＹＫの画像信号に対して、階調再現処理を行う。階調再現処理は、画像信号に係る画像を複数の画素に分類して中間調を再現できるようにする処理であり、二値又は多値のディザ法又は誤差拡散法等を用いることができる。
【００３９】
例えば、領域分離処理部２４にて文字領域に分離された領域には、特に黒文字又は色文字の再現性を高めることを目的として、空間フィルタ処理部２７が鮮鋭強調のフィルタ処理を施して高周波成分を強調する。階調再現処理部２９は、領域分離処理部２４にて文字領域に分離された領域に対して、特に黒文字又は色文字の再現性を高めることを目的とし、画像出力装置１２の高域周波数成分の再現に適した高解像度のスクリーンでの二値化処理又は多値化処理を施す。
【００４０】
また、例えば領域分離処理部２４にて網点領域に分離された領域には、空間フィルタ処理部２７がローパスフィルタ処理を施して入力網点成分を除去し、フィルタ処理が施された画像を階調再現処理部２９が画素に分離してそれぞれの階調を再現できるように中間階調処理を施す。
【００４１】
また、例えば領域分離処理部２４にて写真領域に分離された領域には、階調再現処理部２９が、画像出力装置１２における階調再現性を重視したスクリーンでの二値化処理又は多値化処理を施す。
【００４２】
階調再現処理部２９による処理が施されたＣＭＹＫの画像信号は、図示しない画像メモリなどの記憶手段に一時的に蓄積された後、画像形成のタイミングに合わせて記憶手段から読み出されて画像出力装置１２へ与えられる。画像出力装置１２は、与えられた画像信号に係る画像を紙などの記録媒体上に出力するものであり、電子写真方式又はインクジェット方式等のプリンタである。例えば、電子写真方式の場合には、画像出力装置１２は、感光体ドラムを所定の電位に帯電する帯電器、与えられた画像信号に応じてレーザ光を発して感光体ドラム表面に静電潜像を生成するレーザ書込器、感光体ドラム表面に生成された静電潜像にトナーを供給して顕像化する現像器及び感光体ドラム表面に形成されたトナー像を紙上に転写する転写器等を備える。なお、画像出力装置１２は、ディスプレイなどの表示装置であってもよい。
【００４３】
画像処理装置２０の圧縮処理部３０は、領域分離処理部２４から与えられたＲＧＢの画像信号、即ち画像データに対して、データ量を低減する圧縮処理を行い、圧縮した画像データ（圧縮画像）を記憶部３１へ蓄積する。記憶部３１はハードディスク又はフラッシュメモリ等の大容量の記憶素子で構成されており、記憶部３１に蓄積された画像データは送信装置１３へ与えられる。
【００４４】
送信装置１３は、ネットワークカード又はモデム等の一又は複数の通信用ハードウェアを有し、これらの通信手段により他の装置へ画像データの送信を行う。例えば、操作パネル１５にてＭＦＰの動作モードが電子メール送信に設定されている場合、送信装置１３は、記憶部３１に蓄積された画像データを電子メールに添付して予め設定された宛先へ送信する。また例えばファクシミリ通信を行う場合には、通信装置１３は、指定された相手先との送信手続をモデムにて行って送信可能な状態が確保された後、画像入力装置１１にて読み取られて所定の形式で圧縮された画像データを記憶部３１から読み出し、圧縮形式の変更などのファクシミリ通信に必要な処理を施して、相手先に通信回線を介して順次送信する。
【００４５】
また、図示は省略するが、送信装置１３は、他の装置からファクシミリ通信により送信された画像データを受信する受信装置としての機能を有していてもよい。この場合、送信装置１３は、通信手続を行いながら、相手先から送信された画像データを受信して画像処理装置２０へ与える。画像処理装置２０は、受信した画像データに伸長処理を施し、伸長した画像データに対して必要に応じて回転処理又は解像度変換処理等の画像処理を施し、出力階調補正部２８による階調補正処理及び階調再現処理部２９による階調再現処理を施して画像出力装置１２へ出力する。これにより、ファクシミリ通信により送信装置１３にて受信された画像データに係る画像が形成されて出力される。
【００４６】
また、送信装置１３は、ネットワークカード及びネットワークケーブル等により、ＬＡＮ（Local Area Network）などのネットワークに接続された他のコンピュータ又はＭＦＰ等の通信機能を有する装置との間でデータ通信を行うことができる。これにより、ＭＦＰは画像入力装置１１にて読み取った画像データを他の装置へ与えて保存することができ、他の装置から与えられた画像データを画像出力装置１２から出力することができる。
【００４７】
なお、上述の画像形成処理及び画像送信処理等の種々の処理は、ＭＦＰに搭載されたＣＰＵ（Central Processing Unit）８１（図２１参照）によって各部が制御されることにより行われる。
【００４８】
図２は、画像処理装置２０の圧縮処理部３０の構成を示すブロック図である。圧縮処理部３０は、前景マスク生成処理部５１、フォーマット変換処理部５２、前景色インデックス化処理部５３、背景レイヤ生成処理部５４、２値画像生成処理部５５及び画像圧縮部５６等を備えて構成されている。
【００４９】
前景マスク生成処理部５１は、入力画像データ（図中においては単に入力画像と記す）から文字又は線画（以下、文字等という）の画素を表す前景マスクを抽出する画像処理を行う。前景マスク生成処理部５１は、例えば領域分離処理部２４による領域分離結果を取得して、入力画像データの各画素が文字等であるか否かを判定することにより、前景マスクの生成を行うことができる。領域分離処理部２４においては、例えば入力画像データの輝度値に対して微分処理を行うことによって、輝度が明るく変化するエッジ部分と、暗く変化するエッジ部分とを検知し、検知したエッジ部分に基づいて画素を文字等又はそれ以外に分離して２値化を行うことにより、画像から文字領域を分離することができる（詳しくは、正方向の微分値が出現してから、負方向の微分値が出現するまでの範囲を文字等の画素として文字領域を抽出することができる）。前景マスク生成処理部５１は、領域分離処理部２４の領域分離結果に基づいて、入力画像データから前景レイヤを抽出し（図３０参照）、前景レイヤから前景マスク及び色情報を生成する（図３１参照）。前景マスク生成処理部５１は、生成した前景マスク（及び色情報）と、入力画像データとをフォーマット変換処理部５２へ出力する。
【００５０】
フォーマット変換処理部５２は、入力画像データのデータ形式（フォーマット）を変換することによって、入力画像データのデータ量を低減する処理を行う。フォーマット変換処理部５２は、入力画像データにおいて画素値が変化する変化領域と、画素値が変化しない平坦領域とを分離し、平坦領域の解像度を低減することによってデータ量を低減する。図３は、フォーマット変換処理部５２の構成を示すブロック図である。フォーマット変換処理部５２は、反転回数カウント処理部６１、平坦判定処理部６２、領域判定処理部６３及び画像データフォーマット変換部６４を有しており、前景マスク生成処理部５１から入力された前景マスク及び色情報を入力画像データとし、入力画像データに対して各部にて順に画像処理を施すことによりフォーマット変換を行う。以下に、フォーマット変換処理部５２の各部が行う処理を図４〜図１４を参照して説明する。
【００５１】
図４及び図５は、フォーマット変換処理部５２へ与えられる入力画像データの一例を示す模式図であり、前景マスク生成処理部５１が生成した前景マスク及び色情報に基づく前景レイヤの一例を示してある。図示の入力画像データは、主走査方向（水平方向）に１６画素且つ副走査方向（垂直方向）に２０画素を有する１６×２０の画像であり、１つの画素はＲＧＢの各色について８ビット（０〜２５５）の画素値を有している。なお、図４及び図５において、画素値が同じ画素、即ち同じ色の画素については、同じハッチングを付してある。
【００５２】
フォーマット変換処理部５２の反転回数カウント処理部６１は、入力画像データから一の画素（注目画素）を決定し、注目画素を中心とした７画素×７画素の画素領域（以下、７×７領域という）について、主走査方向及び副走査方向に隣接する２つの画素の画素値の差分が、増加から減少へ又は減少から増加へ転じる回数を反転回数としてカウントする処理を行う。図６及び図７は、反転回数カウント処理部６１による反転回数のカウント方法を説明するための模式図である。なお、図６及び図７においては、入力画像データのＲ成分について、注目画素（ハッチングを付して示してある）及びこれを含む７×７領域を図示してあり、Ｒ成分についての反転回数をカウントする例を示してある。入力画像データのＧ成分及びＢ成分については図示を省略する。
【００５３】
反転回数カウント処理部６１は、まず、前景レイヤから注目画素を含む７×７領域を抽出し、この７×７領域の主走査方向の１つのラインについて、隣り合う２つの画素の差分を算出する。次いで、反転回数カウント処理部６１は、算出した差分の絶対値が閾値を超えており、その差分が正の値であれば”＋１”を判定結果（図６においてrev_h0_??と記す）として出力し、その差分が負の値であれば”−１”を判定結果として出力し、差分の絶対値が閾値を超えていなければ”０”を判定結果として出力する。
【００５４】
例えば、図６において７×７領域の最上ラインの７画素の画素値が、左から２５５、１２８、６４、１２８、１２９、２５５、２５５であるとすると、隣接する画素の画素値の差分は左から−１２７、−６４、６４、１、１２６、０であり、閾値を１０として差分と比較した場合、判定結果rev_h0_01〜rev_h0_56は左から−１、−１、１、０、１、０となる。
【００５５】
次いで、反転回数カウント処理部６１は、主走査方向から判定結果rev_h0_01〜rev_h0_56の符号が反転する回数をカウントする。上記の例では、rev_h0_01及びrev_h0_23にて符号が反転するためカウント結果rev_h0は２回となる。同様にして、反転回数カウント処理部６１は、７×７領域の残りの６つのラインについて反転回数をカウントし、７つのカウント結果rev_h0〜rev_h6の合計値を算出する。この合計値が、注目画素のＲ成分についての主走査方向の反転回数である。
【００５６】
更に、反転回数カウント処理部６１は、Ｒ成分についての副走査方向の反転回数を算出する。このときの算出方法は主走査方向の場合と同様であり、反転回数カウント処理部６１は、副走査方向の１つのラインについて隣接する画素の画素値の差分が閾値を超えたか否かに応じた判定結果rev_v0_01〜rev_v0_56を算出し、この判定結果の符号が反転する回数をライン毎にカウントした結果rev_v0〜rev_v6の合計値を算出すればよい。
【００５７】
同様にして、反転回数カウント処理部６１は、Ｇ成分についての主走査方向及び副走査方向の反転回数と、Ｂ成分についての主走査方向及び副走査方向の反転回数とを算出し、ＲＧＢの各色の主走査方向及び副走査方向の反転回数を合計した値を、注目画素の反転回数とする。更に反転回数カウント処理部６１は、入力画像データの全ての画素について上述の処理を行うことにより反転回数を算出し、全画素の反転回数を平坦判定処理部６２へ出力する。
【００５８】
フォーマット変換処理部５２の平坦判定処理部６２は、反転回数カウント処理部６１から与えられた各画素の反転回数が、予め定められた閾値を超えるか否かを判定することによって、入力画像データの各画素が平坦領域に含まれる画素であるか、又は、変化領域に含まれる画素であるかを判定する。平坦判定処理部６２は、各画素が平坦領域又は変化領域のいずれに含まれるかの判定結果を領域判定処理部６３へ出力する。
【００５９】
なお、図８は、平坦判定処理部６２による平坦判定処理の結果の一例を示す模式図であり、図４及び図５に示した入力画像データに対して反転回数カウント処理部６１及び平坦判定処理部６２による処理を施した結果を示してある。なお、図８の処理結果は、平坦判定処理部６２が閾値を２６として各画素の反転回数を判定した結果であり、平坦領域を”０”とし、変化領域を”１”として判定結果を図示してある。
【００６０】
フォーマット変換処理部５２の領域判定処理部６３は、平坦判定処理部６２から与えられた判定結果に基づいて、入力画像データを以下の３種の領域に分割する。
領域Ａ）主走査方向に平坦なライン（平坦領域の画素のみで構成されるライン）が、副走査方向に所定ライン数以上続く領域
領域Ｂ）領域Ａ以外であり、副走査方向に平坦なライン（平坦領域の画素のみで構成されるラインであるが、領域Ａで分断される場合には別ラインとする）が、主走査方向に所定ライン数以上続く領域
領域Ｃ）領域Ａ及びＢ以外の領域
なお、領域Ａ、Ｂ及びＣは重複することはなく、領域Ａ及びＢはできるだけ大きな矩形となるように入力画像データを分割する。領域判定処理部６３は、入力画像データを領域Ａ、Ｂ及びＣに分割した結果を画像データフォーマット変換部６４へ出力する。
【００６１】
図９は、領域判定処理部６３による領域判定の結果の一例を示す模式図であり、図８に示した平坦判定処理の処理結果に対して領域判定の処理を施した結果を図示してある。平坦判定処理の処理結果から、主走査方向に平坦なラインは、副走査方向の０番目、９番目〜１２番目の５つのラインであり、所定ライン数（例えば４ライン）以上続くのは９番目〜１２番目の４つのラインである。よって、主走査方向０〜１５且つ副走査方向９〜１２の１６×４の領域を、上記の領域Ａと判定することができる。
【００６２】
また、領域Ａ以外の領域において、副走査方向に平坦なラインは、領域Ａより上側の主走査方向の１２番目〜１５番目の４つのラインである。領域Ｂの判定のための所定ライン数を４ラインとすると、この４つのライン、即ち主走査方向１２〜１５且つ副走査方向０〜８の４×９の領域を、上記の領域Ｂと判定することができる。また、領域Ａ及びＢ以外の領域は、領域Ｃと判定することができる。
【００６３】
フォーマット変換処理部５２の画像データフォーマット変換部６４は、領域判定処理部６３の処理結果に基づいて、入力画像データの解像度を低減することによりデータ量を低減する。解像度の低減は領域判定処理部６３にて判定された領域Ａ、Ｂ及びＣについて以下の方法で個別に行う。
領域Ａ）主走査方向及び副走査方向の両方向について解像度を低減する
領域Ｂ）主走査方向についてのみ解像度を低減する
領域Ｃ）解像度の低減は行わない
【００６４】
図１０は、領域Ａ〜Ｃに分割した入力画像データの一例を示す模式図であり、図４及び図５に示した入力画像データに図９に示した各領域を重ね合わせて図示したものである。なお図１０においては、入力画像データの各画素についてＲＧＢの画素値の表示を省略し、同じ画素値の画素には同じハッチングを付して示してある。また、図１０にて各画素に付したハッチングは、図４及び図５にて画素値に応じて各画素に付したハッチングと同じである。
【００６５】
画像データフォーマット変換部６４は、例えば領域Ａの解像度を主走査方向及び副走査方向の両方向について２５％に低減すると共に、領域Ｂの解像度を主走査方向について２５％に低減する処理を行う。図１１は、解像度を低減した画像データの一例を示す模式図であり、図１０に示した入力画像データの領域Ａ及びＢの解像度を低減した場合を図示してある。この例においては、主走査方向０〜１５且つ副走査方向９〜１２の１６×４の領域Ａが、主走査方向及び副走査方向の両方向について解像度が低減されて、４×１の領域に変換されている。また、主走査方向１２〜１５且つ副走査方向０〜８の４×９の領域Ｂが、主走査方向について解像度が低減されて、１×９の領域に変換されている。なお、解像度を低減する方法としては、公知のニアレストネイバー、バイリニア又はバイキュービック等の補間方法を用いればよい。
【００６６】
次いで、画像データフォーマット変換部６４は、解像度を低減した画像データのヘッダ情報を作成するために、画像データの各領域に番号付けを行う。番号付けは以下の手順にて行う。
手順１）画像データの副走査方向に、領域Ａから領域Ｂ、Ｃへ又は領域Ｂ、Ｃから領域Ａへ切り替わる都度、領域Ａ又は領域Ｂ、Ｃをそれぞれ副走査領域とし、副走査方向へ順に副走査領域０、１…のように番号付けを行う。
手順２）各副走査領域において、主走査方向に領域が切り替わる都度、各領域Ａ、Ｂ、Ｃをそれぞれ主走査領域とし、主走査方向へ順に主走査領域Ｘ０、Ｘ１…のように番号付けを行う。なお、主走査領域の番号Ｘは、この主走査領域を含む副走査領域の番号である。
【００６７】
図１２は、各領域に番号付けを行った画像データの一例を示す模式図であり、図１１に示した解像度低減後の画像データの各領域Ａ、Ｂ、Ｃに番号付けを行った結果を示してある。画像データフォーマット変換部６４は、画像データの副走査方向について、領域が切り替わる個所を調べる。図１１に示した画像データでは副走査方向の８及び９と１２及び１３とにおいて領域が切り替わるため、画像データフォーマット変換部６４は、副走査方向０〜８の領域を副走査領域０とし、副走査方向９〜１２の領域を副走査領域１とし、副走査方向１３〜１９の領域を副走査領域２とした番号付けを行う。
【００６８】
次いで、画像データフォーマット変換部６４は、副走査領域０が主走査方向の１１及び１２において領域が切り替わるため、主走査方向０〜１１の領域を主走査領域００とし、主走査方向１２〜１５の領域を主走査領域０１とした番号付けを行う。また画像データフォーマット変換部６４は、副走査領域１においては主走査方向に領域が切り替わることがないため、副走査領域１の全体を主走査領域１０とした番号付けを行う。同様に画像データフォーマット変換部６４は、副走査領域２においては主走査方向に領域が切り替わることがないため、副走査領域２の全体を主走査領域２０とした番号付けを行う。
【００６９】
画像データフォーマット変換部６４は、解像度を低減した画像データをＭＦＰのメモリに格納するが、このときに画像データのデータ構造などの情報を有するヘッダ情報を作成し、画像データと共にヘッダ情報をメモリに格納する。これにより、メモリから画像データを読み出したその他の画像処理手段は、ヘッダ情報を参照して画像データの復元を行うことができる。図１３は、画像データフォーマット変換部６４が生成する画像データのヘッダ情報の一例を示す模式図である。また図１４は、ヘッダ情報に含まれる情報を説明するための模式図であり、図１２に示した画像データと図１３に示したヘッダ情報との対応を示したものである。
【００７０】
画像データフォーマット変換部６４が生成するヘッダ情報には、”ヘッダサイズ（HDSIZE）”及び”副走査領域数（VNUM）”が含まれている。”ヘッダサイズ”には、ヘッダ情報のサイズがバイト単位で記憶されている。副走査領域数には、画像データに含まれる副走査領域の数が記憶されており、図１２に示した画像データの場合には副走査領域数は３である。
【００７１】
また、ヘッダ情報には副走査領域数に応じた数の副走査領域情報が含まれており、本例では３つの副走査領域情報０〜２が含まれている。各副走査領域情報には、”データ領域開始アドレス（VSA）”、”主走査領域数（HNUM）”、”主走査オフセットサイズ（OFT）”、”副走査ライン数（L）”及び少なくとも１つの主走査領域情報がそれぞれ含まれている。更に、各主走査領域情報には、”解像度変換倍率（ZM）”及び”主走査画素数（W）”がそれぞれ含まれている。各情報の内容は以下の通りである。
【００７２】
データ領域開始アドレス）
画像データをメモリに格納した場合の副走査領域の開始アドレスである。
主走査領域数）
副走査領域に含まれる主走査領域の数である。
主走査オフセットサイズ）
副走査領域の主走査方向のバイトサイズである。
副走査ライン数）
副走査領域の副走査方向のライン数である。
【００７３】
解像度変換倍率）
画像データの解像度を低減した場合の倍率であり、解像度を低減しない場合が１００％となる。
主走査画素数）
主走査領域の主走査方向の画素数であり、解像度を低減する前の画素数である。
【００７４】
図示の例においては、ヘッダ情報は最初の情報としてヘッダサイズを有している。上記のようにヘッダサイズはヘッダ情報全体のサイズを示すものであり、画像データの主走査領域数及び副走査領域数に応じて変化する。例えばヘッダサイズ（HDSIZWE）及びデータ領域開始アドレス（VSA0〜2）を４バイトの情報とし、それ以外を２バイトの情報とした場合、ヘッダサイズ及びデータ領域開始アドレスの４つの項目で４×４＝１６バイトのデータ量であり、それ以外の１８の項目で２×１８＝３６バイトのデータ量であるため、ヘッダ情報全体としては１６＋３６＝５２バイトのデータ量である（HDSIZE=52）。
【００７５】
ヘッダ情報は、次の情報として副走査領域数を有している。上記のように副走査領域数は画像データに含まれる副走査領域の数を示すものであり、ヘッダ情報には副走査領域数に等しい副走査領域情報が含まれている。本例ではヘッダ情報の副走査領域数は３であるため（VNUM=3）、ヘッダ情報には３つの副走査領域情報０〜２が含まれている。
【００７６】
例えば、副走査領域０のデータがメモリアドレス0x00000000から開始する場合、ヘッダ情報の副走査領域情報０に含まれるデータ領域開始アドレスにはこのメモリアドレスが記憶される（VSA0=0x00000000）。本例においては、副走査領域０に主走査領域００及び０１の２つが含まれているため、副走査領域情報０の主走査領域数には２が記憶される（HNUM0=2）。主走査領域００の主走査方向の画素数は１２であり、主走査領域０１の主走査方向の画素数は１であるから、副走査領域０の主走査方向の画素数は１３であり、各画素はＲＧＢの３バイトであることから、副走査領域情報０の主走査オフセットサイズには１３×３＝３９バイトが記憶される（OFT0=39）。また、副走査領域０の副走査方向のライン数は９であるから、副走査領域情報０の副走査ライン数には９が記憶される（L0=9）。
【００７７】
副走査領域情報０には２つの主走査領域情報００及び０１が含まれている。主走査領域００は、解像度の低減は行われていないため、主走査領域情報００の解像度変換倍率には１００％が記憶され（ZM00=100%）、主走査方向の画素数は１２画素であるため、主走査画素数には１２が記憶される（W00=12）。主走査領域０１は、解像度が２５％に低減されているため、主走査領域情報０１の解像度変換倍率には２５％が記憶され（ZM01=25%）、解像度低減前の主走査方向の画素数は４画素であるため、主走査画素数には４が記憶される（W01=4）。
【００７８】
副走査領域情報０に次いで、ヘッダ情報には副走査領域情報１が記憶されている。副走査領域１のデータはメモリアドレス0x0000015F（=VSA0+OFT0*L0）から開始するため、副走査領域情報１のデータ領域開始アドレスにはこのメモリアドレスが記憶される（VSA1=0x0000015F）。また、副走査領域１には１つの主走査領域１０が含まれているため、主走査領域数には１が記憶される（HNUM1=1）。副走査領域１の主走査方向の画素数は４であり、各画素はＲＧＢの３バイトであることから、副走査領域情報１の主走査オフセットサイズには１２バイトが記憶される（OFT1=12）。また、副走査領域１の副走査方向のライン数は、解像度低減前において４ラインであるから、副走査領域情報１の副走査ライン数には４が記憶される（L1=4）。
【００７９】
副走査領域情報１には１つの主走査領域情報１０が含まれている。主走査領域１０は、解像度が２５％に低減されているため、主走査領域情報１０の解像度変換倍率には２５％が記憶され（ZM10=25%）、解像度低減前の主走査方向の画素数は１６画素であるため、主走査画素数には１６が記憶される（W10=16）。
【００８０】
副走査領域情報１に次いで、ヘッダ情報には副走査領域情報２が記憶されている。副走査領域２のデータはメモリアドレス0x0000016B（=VSA1+OFT1*(L1/4)）から開始するため、副走査領域情報２のデータ領域開始アドレスにはこのメモリアドレスが記憶される（VSA2=0x0000016B）。また、副走査領域２には１つの主走査領域２０が含まれているため、主走査領域数には１が記憶される（HNUM2=1）。副走査領域２の主走査方向の画素数は１６であり、各画素はＲＧＢの３バイトであることから、副走査領域情報２の主走査オフセットサイズには４８が記憶される（OFT2=48）。また、副走査領域２の副走査方向のライン数は７ラインであるから、副走査領域情報２の副走査ライン数には７が記憶される（L2=7）。
【００８１】
副走査領域情報２には１つの主走査領域情報２０が含まれている。主走査領域２０は、解像度は低減されていないため、主走査領域情報２０の解像度変換倍率には１００％が記憶され（ZM20=100%）、主走査方向の画素数は１６画素であるため、主走査画素数には１６が記憶される（W20=16）。
【００８２】
画像データフォーマット変換部６４は、入力画像データの平坦領域の解像度を低減すると共に、上記のようなヘッダ情報を生成し、解像度低減後の画像データにヘッダ情報を付したデータを新たな画像データとして出力する。これにより、フォーマット変換処理部５２は、入力画像データのデータ量を低減した新たな画像データを生成し、前景色インデックス化処理部５３へ与えることができる。
【００８３】
なお、図４及び図５に示した入力画像データのデータ量は、主走査方向の画素数が１６であり、各画素がＲＧＢの３バイトで構成され、且つ、副走査方向のライン数が２０であるため、１６×３×２０＝９６０バイトである。これに対してフォーマット変換処理部５２が出力する画像データ（図１１参照）のデータ量は、画像のデータが（OFT0*L0+OFT1*(L1/4)+OFT2*L2）＝６９９バイトであり、ヘッダ情報が５２バイトであることから、６９９＋５２＝７５１バイトである。よって、画像データのデータ量がフォーマット変換処理部５２の処理によって低減され、画像データによるメモリの使用量及び画像データの転送に伴うデータ転送量等を低減することができる。
【００８４】
ＭＦＰの前景色インデックス化処理部５３は、入力画像データの前景レイヤ（前景マスク及び色情報）に対してインデックス化処理を施すことによって、入力画像データのデータ量を低減する。詳しくは、前景レイヤの画素色（画素値）をインデックス化したインデックス画像と、インデックスに対する画素色及び画素数等の情報を記憶した前景インデックスカラーテーブルと、各インデックスの領域（各画素色の領域）の最大座標及び最小座標を記憶した座標テーブルとを前景色インデックス化処理部５３が生成して背景レイヤ生成処理部５４へ出力する。
【００８５】
図１５は、前景色インデックス化処理部５３の構成を示すブロック図である。前景色インデックス化処理部５３は、仮インデックス画像生成処理部７１、インデックス統合処理部７２及びインデックス画像補正処理部７３を有しており、フォーマット変換処理部５２から与えられた画像データを入力画像データとし、入力画像データに対して各部にて順に画像処理を施すことにより、画像データのインデックス化を行う。以下に、前景色インデックス化処理部５３の各部が行う処理を図１６〜図１８を参照して説明する。
【００８６】
前景色インデックス化処理部５３の仮インデックス画像生成処理部７１は、入力画像データの前景レイヤの画素色に対して仮インデックスを付し、前景レイヤの各画素を仮インデックスに置き換えた仮インデックス画像を生成する。また、仮インデックス画像生成処理部７１は、仮インデックスと画素色とを対応付けた前景色インデックスカラーテーブルを生成する。図１６は、仮インデックス画像の一例を示す模式図であり、図４及び図５に示した入力画像データを基に仮インデックス画像生成処理部７１が仮インデックス画像を生成した例を示してある。また、図１７は、前景インデックスカラーテーブルの一例を示す模式図である。
【００８７】
仮インデックス画像生成処理部７１は、例えば画素色ＲＧＢ＝（２５５、２５５、２５５）に仮インデックス０を付し、入力画像データ中のこの画素色の画素の画素値を仮インデックス０に置き換える。同様にして、他の画素色についても仮インデックスをそれぞれ付し、入力画像データの画素値を仮インデックスに置き換える。これにより、入力画像データ中の同じ画素色の画素は同じ仮インデックスに置き換えられ、仮インデックス画像が生成される。図１６に示す例においては、入力画像データの各画素の画素値は仮インデックス０〜６に置き換えられるため、画像データのデータ量は低減される。
【００８８】
また、仮インデックス画像生成処理部７１は、仮インデックス画像の各画素の仮インデックスと、置き換えた画素色とを対応付けた前景インデックスカラーテーブルを生成する（図１７（ａ）参照）。なお、仮インデックス画像生成処理部７１が生成する前景インデックスカラーテーブルには、仮インデックスに置き換えられた入力画像データの画素数が記憶されており、この画素数は後段の処理で用いられる。
【００８９】
なお、本例においては入力画像データの一の画素色に対して一の仮インデックスを付したが、これに限るものではない。例えばＲＧＢの各色成分が８ビットの情報を有している場合に、各色成分の情報を３ビット又は２ビット等に低減し、情報量を低減した各色成分に対して仮インデックスを付す、即ち所定の色範囲に対して一の仮インデックスを付す構成とすることができる。ＲＧＢのビット数は、ＭＦＰのその他の画像処理において色判定などをどの程度の精度で行うかに応じて任意に設定することができる。
【００９０】
仮インデックス画像生成処理部７１にて生成された仮インデックス画像及び前景インデックスカラーテーブルは、インデックス統合処理部７２へ与えられる。インデックス統合処理部７２は、前景インデックスカラーテーブルに記憶された複数のインデックスを１つに統合することによって、画像データのデータ量を更に低減する処理を行う。インデックス統合処理部７２は、同色及び近似色の判定を行って中間調の画素色を近似の画素色に統合することにより、前景インデックスカラーテーブルに含まれる仮インデックスを最終的なインデックスに統合する。
【００９１】
例えば、図１７（ａ）に示した前景インデックスカラーテーブルにおいて、仮インデックス２及び６の画素色が近似しており、仮インデックス２の画素の画素数は仮インデックス６の画素の画素数より多いため、インデックス統合処理部７２は仮インデックス６を仮インデックス２に統合することができる。このようにして、インデックス統合処理部７２は複数の仮インデックスを一の仮インデックスに統合し、空きが生じた仮インデックスを詰めることによって各画像色に最終的なインデックスを付した前景インデックスカラーテーブルを生成する（図１７（ｂ）参照）。
【００９２】
インデックス補正処理部７３は、インデックス統合処理部７２により生成された前景インデックスカラーテーブルに基づいて、仮インデックス画像生成処理部７１が生成した仮インデックス画像の補正を行う。即ち、インデックス補正処理部７３は、仮インデックス画像の仮インデックスを、インデックス統合処理部７２にて統合されたインデックスに変換したインデックス画像を生成する処理を行う。
【００９３】
図１８は、インデックス画像の一例を示す模式図であり、図１６に示した仮インデックス画像を図１７（ｂ）に示した前景インデックスカラーテーブルに基づいてインデックス画像に変換した例である。図１７（ｂ）の前景インデックスカラーテーブルでは仮インデックス６がインデックス２に統合されているため、インデックス補正処理部７３は、仮インデックス６が付された画素に対して、インデックスを２に変換することによって、インデックス画像を生成することができる。
【００９４】
以上により、前景色インデックス化処理部５３は、入力画像データの前景レイヤをインデックス化したインデックス画像と、インデックス及び画素色の対応が記憶された前景インデックスカラーテーブルとを生成し、インデックス画像及び前景インデックスカラーテーブルを出力画像データとして背景レイヤ生成処理部５４へ与える。
【００９５】
背景レイヤ生成処理部５４は、入力画像データから前景レイヤに含まれる前景画素を取り除くことによって、背景レイヤを生成する処理を行う。また、背景レイヤ生成処理部５４は、後段での背景レイヤの圧縮率を向上するために、背景レイヤから取り除かれる前景画素部分を、前景画素周辺の背景画素を参照し、この背景画素の画素値の平均値を用いて穴埋めする。このときに、近傍に背景画素が存在しない場合には、背景レイヤ生成処理部５４は、近傍の穴埋め処理の結果を用いて穴埋めを行えばよい。背景レイヤ生成処理部５４が生成した背景レイヤは、インデックス化された前景レイヤ及び前景インデックスカラーテーブル等と共に２値画像生成処理部５５へ与えられる。
【００９６】
２値画像生成処理部５５は、与えられた前景レイヤ及び前景インデックスカラーテーブルを用いて、前景インデックスカラーテーブルの各インデックスについての２値化画像を生成する処理を行う。図１９は、２値化画像の一例を示す模式図であり、図１８に示したインデックス画像を基に生成した２値化画像である。２値画像生成処理部５５は、例えばインデックス画像のインデックス２の画素のみを１とし、その他の画素を０とした２値化処理を行うことによって、インデックス２の２値画像を生成することができる。２値画像生成処理部５５は、前景インデックスカラーテーブルに含まれる全てのインデックスについて２値画像を生成し、前景レイヤ及び背景レイヤ等の他のデータと共に、生成した２値画像を画像圧縮部５６へ与える。
【００９７】
画像圧縮部５６は、与えられた前景レイヤ及び背景レイヤに適切な圧縮処理を施すことによって画像データのデータ量を低減する処理を行う。画像圧縮部５６は、前景レイヤを例えば可逆圧縮方式のＭＭＲにより圧縮し、背景レイヤを例えば非可逆圧縮方式のＪＰＥＧにより圧縮する。なお、ＭＭＲ及びＪＰＥＧ等の圧縮方式は既知の技術であるため、詳細な説明は省略する。画像圧縮部５６による圧縮方式を前景レイヤ及び背景レイヤでそれぞれ１つに定めることによって、画像圧縮部５６が複数の圧縮方式に対応する必要がなく、複数の圧縮フォーマットの管理及び処理等が必要ない。これにより、画像圧縮部５６をハードウェア化する場合に回路規模を削減することができる。また、画像圧縮部５６は、前景レイヤ及び背景レイヤと共に、前景インデックスカラーテーブル等のデータの圧縮を行う。
【００９８】
ＭＦＰの圧縮処理部３０は、画像圧縮部５６により前景レイヤ及び背景レイヤがそれぞれ圧縮された画像データを出力する。圧縮処理部３０にて圧縮された画像データは、ＭＦＰの記憶部３１に蓄積され、送信装置１３により電子メール又はファクシミリ通信等の手段により他の装置へ送信される。
【００９９】
図２０は、ＭＦＰの圧縮処理部３０が行う圧縮処理の手順を示すフローチャートである。まず圧縮処理部３０は、文字等の画素を表す前景マスクを入力画像データから生成する処理を前景マスク生成処理部５１にて行う（ステップＳ１）。次いで、圧縮処理部３０は、フォーマット変換処理部５２にて、入力画像データの前景マスク及び色情報、即ち前景レイヤのフォーマットを変換することによって（ステップＳ２）、画像データのデータ量を低減する。
【０１００】
次いで、圧縮処理部３０は、フォーマット変換された画像データの前景レイヤに対して、前景色インデックス化処理部５３の仮インデックス画像生成処理部７１にて、画素色毎に仮インデックスを付し、前景レイヤの各画素を仮インデックスに置き換えた仮インデックス画像を生成すると共に（ステップＳ３）、仮インデックス、画素色及び画素数を対応付けた前景インデックスカラーテーブルを生成する（ステップＳ４）。また圧縮処理部３０は、インデックス統合処理部７２にて、前景インデックスカラーテーブルの近似する画素色の仮インデックスを統合し、且つ、インデックス補正処理部７３にて、前景レイヤの各画素の仮インデックスを統合したインデックスに補正することによって、インデックス画像を生成する（ステップＳ５）。
【０１０１】
次いで、圧縮処理部３０は、背景レイヤ生成処理部５４にて、入力画像データから前景レイヤに含まれる前景画素を取り除くことによって、背景レイヤを生成し（ステップＳ６）、２値画像生成処理部５５にて、前景レイヤ及び前景インデックスカラーテーブルを用いて、前景インデックスカラーテーブルの各インデックスについての２値化画像を生成する（ステップＳ７）。その後、圧縮処理部３０は、画像圧縮部５６にて、前景レイヤ及び背景レイヤに適切な圧縮方式をそれぞれ用いて画像データの圧縮処理を行い（ステップＳ８）、処理を終了する。
【０１０２】
上記の処理を行うことによって、圧縮処理部３０は、画像入力装置１１にて読み取った画像データを圧縮してデータ量を低減することができ、送信装置１３によるデータ送信量を低減することができる。圧縮処理部３０内の各処理部は、ソフトウェアとして実現してもよく、ハードウェアとして実現してもよいが、以下においては圧縮処理部３０をハードウェアとして実現した場合の構成について説明する。
【０１０３】
図２１は、圧縮処理部３０をハードウェア化した場合の一構成例を示すブロック図である。本例では、圧縮処理部３０の前景マスク生成処理部５１〜画像圧縮部５６の各処理部をそれぞれ独立したＩＣ（Integrated Circuit）などとし、バスを介して各処理部をＣＰＵ８１に接続する構成とする。また、画像データを記憶するためのメモリ８２が、メモリ制御部８３を介してバスに接続されている。
【０１０４】
ＣＰＵ８１は、ＭＦＰの各部、特に圧縮処理部３０の各処理部の制御及び種々の演算処理等を行うＩＣである。メモリ８２はＳＲＡＭ（Static Random Access Memory）又はＤＲＡＭ（Dynamic Random Access Memory）等の記憶素子で構成され、画像データなどの種々のデータの記憶することができる。なおＭＦＰの記憶部３１は、このメモリ８２を利用するものであってよい。メモリ制御部８３は、メモリ８２へのデータの書き込み及び読み出しの制御を行うと共に、ＣＰＵ８１及び各処理部へのデータ送出、並びにＣＰＵ８１及び各処理部からのデータ受信を行う。
【０１０５】
また、圧縮処理部３０の前景色インデックス化処理部５３は、上述のように仮インデックス画像生成処理部７１及びインデックス画像補正処理部７３を有しているが、仮インデックス画像生成処理部７１及びインデックス画像補正処理部７３は読出ＤＭＡ（Direct Memory Access）８４及び書込ＤＭＡ８５を介してメモリ８２に対するデータの読み出し及び書き込みを行う。
【０１０６】
読出ＤＭＡ８４は、メモリ８２から読み出すデータの開始アドレス及びデータサイズを指定して、メモリ８２にデータ読出要求を与えることにより、メモリ８２からデータを読み出す。メモリ８２からデータを読み出した読出ＤＭＡ８４は、このデータ（画像データ）を仮インデックス画像生成処理部７１又はインデックス画像補正処理部７３へ与える。書込ＤＭＡ８５は、メモリ８２へ書き込むデータの開始アドレス及びデータサイズを指定して、メモリ８２にデータ書込要求を与えることにより、仮インデックス画像生成処理部７１又はインデックス画像補正処理部７３が出力した画像データをメモリ８２へ書き込む。
【０１０７】
仮インデックス画像生成処理部７１又はインデックス画像補正処理部７３は、読出ＤＭＡ８４が読み出した画像データに対して仮インデックス画像生成処理又はインデックス画像補正処理を行うことができ、この処理結果を書込ＤＭＡ８５へ与えることによって、処理結果の画像データをメモリ８２へ書き込むことができる。また、前景色インデックス化処理部５３は、ＣＰＵ８１の指示に応じて、仮インデックス画像生成処理部７１又はインデックス画像補正処理部７３を動作させる。
【０１０８】
本実施の形態に係るＭＦＰは、圧縮処理部３０にフォーマット変換処理部５２を有しており、上述のように平坦領域の解像度が低減された画像データをメモリ８２に記憶することができる。前景色インデックス化処理部５３の仮インデックス画像生成処理部７１は、メモリ８２から画像データを読み出して仮インデックス画像生成処理を行うが、このときに平坦領域の解像度が低減された画像データを、元のサイズの画像データに戻す必要がある。そこで、本実施の形態においては、読出ＤＭＡ８４がメモリ８２から読み出した画像データを元のサイズに戻す変換処理を行い、変換処理後の画像データを仮インデックス画像生成処理部７１へ与える構成とする。
【０１０９】
図２２及び図２３は、読出ＤＭＡ８４が行う画像データの変換処理の手順を示すフローチャートである。なお、図示の手順においては、変換処理を行うためにvcnt、lcnt、hcnt及びpcntの４つの整数型の変数を利用するが、これらの変数は読出ＤＭＡ８４のレジスタ、ＣＰＵ８１のレジスタ又はメモリ８２等にて実現することができる。読出ＤＭＡ８４は、メモリ８２から読み出した画像データのヘッダ情報からHDSIZE及びVNUMを取得し（ステップＳ２１）、変数vcntの値を０に初期化する（ステップＳ２２）。次いで読出ＤＭＡ８４は、変数vcntの値がVNUMの値に等しいか否かを判定し（ステップＳ２３）、変数vcntの値がVNUMの値に等しい場合（Ｓ２３：ＹＥＳ）、処理を終了する。
【０１１０】
変数vcntの値がVNUMの値に等しくない場合（Ｓ２３：ＮＯ）、読出ＤＭＡ８４は、画像データのヘッダ情報からHNUM{vcnt}及びL{vcnt}を取得し（ステップＳ２４）、変数lcntの値を０に初期化する（ステップＳ２５）。なお、HNUM{vcnt}とは、変数vcntの値が例えば１であれば、HNUM1であることを示している（その他についても同様である）。次いで、読出ＤＭＡ８４は、変数lcntの値がL{vcnt}の値に等しいか否かを判定し（ステップＳ２６）、変数lcntの値がL{vcnt}の値に等しい場合（Ｓ２６：ＹＥＳ）、変数vcntの値に１を加算して（ステップＳ２７）、ステップＳ２３へ戻る。
【０１１１】
変数lcntの値がL{vcnt}の値に等しくない場合（Ｓ２６：ＮＯ）、読出ＤＭＡ８４は、変数hcntの値を０に初期化する（ステップＳ２８）。次いで、読出ＤＭＡ８４は、変数hcntの値がHNUM{vcnt}の値に等しいか否かを判定し（ステップＳ２９）、変数hcntの値がHNUM{vcnt}の値に等しい場合（Ｓ２９：ＹＥＳ）、変数lcntの値に１を加算して（ステップＳ３０）、ステップＳ２６へ戻る。
【０１１２】
変数hcntの値がHNUM{vcnt}の値に等しくない場合（Ｓ２９：ＮＯ）、読出ＤＭＡ８４は、画像データのヘッダ情報からW{vcnt}{hcnt}及びZM{vcnt}{hcnt}を取得して（ステップＳ３１）、変数pcntの値を０に初期化する（ステップＳ３２）。次いで、読出ＤＭＡ８４は、変数pcntの値がW{vcnt}{hcnt}に等しいか否かを判定し（ステップＳ３３）、変数pcntの値がW{vcnt}{hcnt}の値に等しい場合（Ｓ３３：ＹＥＳ）、変数hcntの値に１を加算して（ステップＳ３４）、ステップＳ２９へ戻る。
【０１１３】
変数pcntの値がW{vcnt}{hcnt}の値に等しくない場合（Ｓ３３：ＮＯ）、読出ＤＭＡ８４は、メモリ８２から読み出した画像データの１画素を仮インデックス画像生成処理部７２へ出力する（ステップＳ３５）。このとき読出ＤＭＡ８４は、ステップＳ３１にて取得したZM{vcnt}{hcnt}の値に基づいて、解像度が低減された画像データの場合には、解像度を復元した後に１画素を出力する。次いで、読出ＤＭＡ８４は、変数pcntの値に１を加算して（ステップＳ３６）、ステップＳ３３へ戻る。
【０１１４】
以上の処理を行うことによって、読出ＤＭＡ８４は、解像度が低減された画像データをメモリ８２から読み出し、読み出した画像データのヘッダ情報を基に解像度を復元して仮インデックス画像生成処理部７２へ与えることができる。例えば図１３に示したヘッダ情報に基づいて上記の処理を行った場合、読出ＤＭＡ８４は、まず、ヘッダ情報からHDSIZE=52及びVNUM=3を取得し（ステップＳ２１）、変数vcnt=0の初期化を行う（ステップＳ２２）。この時点においてはvcnt==VNUMが成立しないため（Ｓ２３：ＮＯ）、読出ＤＭＡ８４は、ヘッダ情報からHNUM0=2及びL0=9を取得し（ステップＳ２４）、変数lcnt=0の初期化を行う（ステップＳ２５）。この時点においてはlcnt==L0が成立しないため（Ｓ２６：ＮＯ）、読出ＤＭＡ８４は、変数hcnt=0の初期化を行う（ステップＳ２８）。この時点においてはhcnt==HNUM0が成立しないため（Ｓ２９：ＮＯ）、読出ＤＭＡ８４は、ヘッダ情報からW00=12及びZM00=100%を取得し（ステップＳ３１）、変数pcnt=0の初期化を行う（ステップＳ３２）。
【０１１５】
次いで、読出ＤＭＡ８４は、pcnt==W00が成立するまで、メモリ８２から読み出した画像データの１画素の出力（ステップＳ３５）、及び変数pcntのインクリメント（ステップＳ３６）を繰り返し行う。なお、ZM00=100%であるため、メモリ８２から読み出したデータの解像度を復元する必要はない。その後、pcnt==W00が成立した場合（Ｓ３３：ＹＥＳ）、主走査領域００の１ライン目の処理が終了したため、読出ＤＭＡ８４は、変数hcntをインクリメントして（ステップＳ３４）、ステップＳ２９へ戻る。
【０１１６】
この時点において変数hcnt=1であり、hcnt==HNUM0は成立しないため（Ｓ２９：ＮＯ）、読出ＤＭＡ８４は、ヘッダ情報からW01=4及びZM01=25%を取得し（ステップＳ３１）、変数pcnt=0の初期化を行う（ステップＳ３２）。次いで、読出ＤＭＡ８４は、pcnt==W01が成立するまで、メモリ８２から読み出した画像データの１画素の出力（ステップＳ３５）、及び変数pcntのインクリメント（ステップＳ３６）を繰り返し行う。このとき、ZM01=25%であり、解像度が低減されているため、読出ＤＭＡ８４は、解像度の復元を行った後で画像データの１画素の出力を行う。その後、pcnt==W00が成立した場合（Ｓ３３：ＹＥＳ）、主走査領域０１の１ライン目の処理が終了したため、読出ＤＭＡ８４は、変数hcntをインクリメントして（ステップＳ３４）、ステップＳ２９へ戻る。
【０１１７】
この時点において変数hcnt=2であり、hcnt==HNUM0が成立し（Ｓ２９：ＹＥＳ）、副走査領域０の１ライン目の処理が終了したため、読出ＤＭＡ８４は、変数lcntをインクリメントし（ステップＳ３０）、ステップＳ２６へ戻る。これらの処理をlcnt=L0が成立するまで繰り返し行うことによって、読出ＤＭＡ８４は、副走査領域０の全ての画素を出力することができる（ステップＳ２８〜Ｓ３６）。
【０１１８】
その後、lcnt==L0が成立し（Ｓ２６：ＹＥＳ）、副走査領域０の処理が終了した場合、読出ＤＭＡ８４は、変数vcntをインクリメントして（ステップＳ２７）、ステップＳ２３へ戻る。この時点においてvcnt=1であり、vcnt==VNUMは成立しないため（Ｓ２３：ＮＯ）、読出ＤＭＡ８４は、副走査領域０の場合と同様に、副走査領域１の処理を行う（ステップＳ２４〜Ｓ３６）。ただし、副走査領域１（即ち、主走査領域１０）はZM10=25%であるため、主走査方向及び副走査方向の解像度を復元した後で、画像データの１画素の出力を行う。
【０１１９】
なお、画像データの解像度を復元する場合、主走査方向及び副走査方向の両方について解像度を復元するか、又は、主走査方向のみ解像度を復元するかは、副走査領域数HNUMの値が１であるか否かに応じて判断することができる。即ち、解像度変換倍率ZMの値が１００％でない場合において、読出ＤＭＡ８４は、HNUMの値が１であれば主走査方向及び副走査方向の両方について解像度を復元し、HNUMの値が１でなければ主走査方向のみ解像度を復元すればよい。
【０１２０】
副走査領域１の画像データの出力処理を終了した後、読出ＤＭＡ８４は、変数vcntをインクリメントして（ステップＳ２７）、ステップＳ２３へ戻る。この時点においてvcnt=2であり、vcnt==VNUMは成立しないため（Ｓ２３：ＮＯ）、読出ＤＭＡ８４は、副走査領域０及び１の場合と同様に、副走査領域２の処理を行う（ステップＳ２４〜Ｓ３６）。副走査領域２の画像データの出力処理を終了した後、読出ＤＭＡ８４は、変数vcntをインクリメントして（ステップＳ２７）、ステップＳ２３へ戻る。この時点においてvcnt=3であり、vcnt==VNUMが成立するため（Ｓ２３：ＹＥＳ）、読出ＤＭＡ８４は画像データの出力を完了し、処理を終了する。
【０１２１】
読出ＤＭＡ８４により解像度が復元された画像データを与えられた仮インデックス画像生成処理部７１は、画像データを仮インデックス画像に変換し、変換後の画像データを書込ＤＭＡ８５へ出力する。書込ＤＭＡ８５は、画像データのヘッダ情報に基づいて、仮インデックス画像生成処理部７１から与えられた画像データの平坦領域の解像度を低減する処理を行い、画像データをメモリ８２へ書き込む。ただし、仮インデックス画像生成処理部７１から与えられる画像データは、各画素の画素値がＲＧＢの３バイトのデータからインデックスの１バイトのデータに変換されたものであるため、ヘッダ情報は図１３に示したものとは異なる値となる。そこで、書込ＤＭＡ８５は、インデックス化される前の画像データのヘッダ情報を、インデックス化された画像データに適合するように変換する。
【０１２２】
図２４は、インデックス化された画像データのヘッダ情報の一例を示す模式図であり、図１３に示すヘッダ情報に基づいて書込ＤＭＡ８５が変換したヘッダ情報である。書込ＤＭＡ８５は、ヘッダ情報のデータ領域開始アドレスVSA0を、メモリ８２の空き領域（読出ＤＭＡ８４が読み出した画像データの記憶領域と重複しない領域）から適宜に選択することで、例えば0x00010000に変更する。また書込ＤＭＡ８５は、ヘッダ情報の主走査オフセットサイズOFT0〜2の値をそれぞれ１／３に減らすと共に、残りのデータ領域開始アドレスVSA1及びVSA2を各副走査領域のサイズに合わせて変更する。
【０１２３】
ヘッダ情報を変換した書込ＤＭＡ８５は、このヘッダ情報に基づいて、仮インデックス画像生成処理部７１から与えられた画像データの平坦部分の解像度を低減する変換処理を行い、変換処理後の画像データをメモリ８２へ書き込む。書込ＤＭＡ８５が行うこの変換処理は、図２２及び図２３に示した読出ＤＭＡ８４の変換処理と略同じ手順で行うことができる。
【０１２４】
図２５及び図２６は、書込ＤＭＡ８５が行う画像データの変換処理の手順を示すフローチャートである。書込ＤＭＡ８５は、変換したヘッダ情報からHDSIZE及びVNUMを取得し（ステップＳ４１）、変数vcntの値を０に初期化する（ステップＳ４２）。次いで書込ＤＭＡ８５は、変数vcntの値がVNUMの値に等しいか否かを判定し（ステップＳ４３）、変数vcntの値がVNUMの値に等しい場合（Ｓ４３：ＹＥＳ）、処理を終了する。変数vcntの値がVNUMの値に等しくない場合（Ｓ４３：ＮＯ）、書込ＤＭＡ８５は、画像データのヘッダ情報からHNUM{vcnt}及びL{vcnt}を取得し（ステップＳ４４）、変数lcntの値を０に初期化する（ステップＳ４５）。次いで、書込ＤＭＡ８５は、変数lcntの値がL{vcnt}の値に等しいか否かを判定し（ステップＳ４６）、変数lcntの値がL{vcnt}の値に等しい場合（Ｓ４６：ＹＥＳ）、変数vcntの値に１を加算して（ステップＳ４７）、ステップＳ４３へ戻る。
【０１２５】
変数lcntの値がL{vcnt}の値に等しくない場合（Ｓ４６：ＮＯ）、書込ＤＭＡ８５は、変数hcntの値を０に初期化する（ステップＳ４８）。次いで、書込ＤＭＡ８５は、変数hcntの値がHNUM{vcnt}の値に等しいか否かを判定し（ステップＳ４９）、変数hcntの値がHNUM{vcnt}の値に等しい場合（Ｓ４９：ＹＥＳ）、変数lcntの値に１を加算して（ステップＳ５０）、ステップＳ４６へ戻る。変数hcntの値がHNUM{vcnt}の値に等しくない場合（Ｓ４９：ＮＯ）、書込ＤＭＡ８５は、画像データのヘッダ情報からW{vcnt}{hcnt}及びZM{vcnt}{hcnt}を取得して（ステップＳ５１）、変数pcntの値を０に初期化する（ステップＳ５２）。次いで、書込ＤＭＡ８５は、変数pcntの値がW{vcnt}{hcnt}に等しいか否かを判定し（ステップＳ５３）、変数pcntの値がW{vcnt}{hcnt}の値に等しい場合（Ｓ５３：ＹＥＳ）、変数hcntの値に１を加算して（ステップＳ５４）、ステップＳ４９へ戻る。
【０１２６】
変数pcntの値がW{vcnt}{hcnt}の値に等しくない場合（Ｓ５３：ＮＯ）、書込ＤＭＡ８５は、仮インデックス画像生成処理部７１から与えられた画像データの１画素をメモリ８２へ出力して（ステップＳ５５）、画像データの書き込みを行う。このとき書込ＤＭＡ８５は、ステップＳ５１にて取得したZM{vcnt}{hcnt}の値に基づいて、解像度を低減する必要がある場合には、解像度を低減した後に１画素を出力する。次いで、書込ＤＭＡ８５は、変数pcntの値に１を加算して（ステップＳ５６）、ステップＳ５３へ戻る。
【０１２７】
以上の処理を行うことによって、書込ＤＭＡ８５は、仮インデックス画像生成処理部７１から与えられた画像データのヘッダ情報を変更し、画像データの解像度を低減して、メモリ８２へ書き込むことができる。ここで、画像データのヘッダ情報の変更を書込ＤＭＡ８５が行う構成としたが、ＣＰＵ８１がヘッダ情報を変更してメモリ８２に記憶し、書込ＤＭＡ８５がメモリ８２に記憶された変更後のヘッダ情報を参照する構成としてもよい。また、前景色インデックス化処理部５３においては、仮インデックス画像生成処理部７１と同様に、インデックス画像補正処理部７３が読出ＤＭＡ８４及び書込ＤＭＡ８５を介してメモリ８２に対する画像データの読み出し及び書き込みを行うが、この場合についても読出ＤＭＡ８４及び書込ＤＭＡ８５は図２２及び図２３並びに図２５及び図２６に示したフローチャートの手順で処理を行うことができる。ただし、インデックス画像補正処理部７３への画像データを読み出す読出ＤＭＡ８４は、仮インデックス画像生成処理部７１にてインデックス化された画像データを読み出すため、この画像データのヘッダ情報は図２４に示したものとなる。また、インデックス画像補正処理部７３からの画像データを書き込む書込ＤＭＡ８５は、ヘッダ情報のデータ領域開始アドレスVSAのみを変更すればよく、主走査オフセットサイズOFTの値は変更しなくてよい。
【０１２８】
以上の構成のＭＦＰにおいては、画像入力装置１１にて読み取った画像データを圧縮処理部３０のフォーマット変換処理部５２にて変化領域及び平坦領域に分離し、平坦領域の解像度を低減すると共に、これらの情報をヘッダ情報として付与した画像データを生成する構成とすることにより、画像データのデータ量を低減することができるため、ＭＦＰのメモリ８２の使用量を低減することができ、画像処理を行うＩＣなどの間での画像データの転送量を低減することができる。また、入力画像データの隣接する画素の画素値の差分が、画像の主走査方向及び／又は副走査方向に増加から減少へ又は減少から増加へ転じる反転回数を算出し、反転回数に基づいて平坦領域に含まれる画素の判定を行う構成とすることにより、画素値の比較及び反転回数のカウントによる簡単な演算で変化領域及び平坦領域の分離を行うことができる。
【０１２９】
また、メモリ８２に記憶された画像データを読出ＤＭＡ８４が読み出し、ヘッダ情報を基に画像データの解像度を戻して仮インデックス画像生成処理部７１及びインデックス画像補正処理部７３等の画像処理手段へ与えると共に、画像処理手段が画像処理を施した画像データを書込ＤＭＡ８５がヘッダ情報を基に解像度を低減してメモリ８２へ書き込む構成とすることにより、メモリ８２と画像処理手段との間のデータ転送量を低減することができ、各画像処理部は画像データの解像度を変更する処理を行う必要がない。
【０１３０】
なお、本実施の形態においては、ＭＦＰがカラーの画像データを扱う構成としたが、これに限るものではなく、モノクロームの画像データを扱うＭＦＰについても本発明を適用することができる。また、前景色インデックス化処理部５３の仮インデックス画像生成処理部７１及びインデックス画像補正処理部７３のみが読出ＤＭＡ８４及び書込ＤＭＡ８５を介して画像データの読み出し及び書き込みを行う構成としたが、これに限るものではなく、前景マスク生成処理部５１、背景レイヤ生成処理部５４及び２値画像生成処理部５５等のその他の画像処理部についても同様に読出ＤＭＡ８４及び書込ＤＭＡ８５を介して画像データの読み出し及び書き込みを行う構成としてもよい。また、本発明の適用についてはＭＦＰに限るものではなく、画像データに対する画像処理を行う画像処理装置であれば本発明を適用することができる。特に、本発明は画像データを前景レイヤ及び背景レイヤに分離し、各レイヤに対する圧縮処理を行う画像処理装置に適している。
【０１３１】
（実施の形態２）
上述の実施の形態１に係るＭＦＰは、フォーマット変換処理部５２にて入力画像データを変化領域及び平坦領域に分離するために、隣接する画素の画素値の差分を算出して、差分の増減の反転回数をカウントし、この反転回数に基づいて平坦領域の判定を行う構成である。しかしながら、反転回数を７×７領域にて行う構成であるため、この領域より大きな文字などのエッジ部分では反転回数が少なく、変化領域と判定できない場合がある。これにより、大きな文字が平坦領域として解像度を低減されるため、解像度を戻す変換を行った場合に文字のエッジ部分にジャギーが発生する虞がある。
【０１３２】
そこで、実施の形態２に係るＭＦＰは、７×７領域における最大画素値及び最小画素値の差分を算出し、反転回数が少ない場合であっても、最大画素値及び最小画素値の差分が所定の閾値以上であれば、変化領域と判定する構成とする。図２７は、実施の形態２に係るフォーマット変換処理部１５２の構成を示すブロック図である。実施の形態２に係るフォーマット変換処理部１５２は、反転回数カウント処理部６１、平坦判定処理部６２、領域判定処理部６３及び画像データフォーマット変換部６４を有すると共に、最大・最小画素値差算出処理部１６５を有している。
【０１３３】
最大・最小画素値差算出処理部１６５は、入力画像データから注目画素を決定し、注目画素を中心とした７×７領域について、画素値の最大値及び最小値を取得し、この差分を算出する処理を行う。最大・最小画素値差算出処理部１６５は、入力画像データの全ての画素についてこの差分の算出を行い、算出結果を平坦判定処理部６２へ与える。
【０１３４】
平坦判定処理部６２は、反転回数カウント処理部６１から入力画像データの各画素について算出された反転回数が与えられると共に、最大・最小画素値差算出処理部１６５から入力画像データの各画素について算出された最大画素値及び最小画素値の差分が与えられている。平坦判定処理部６２は、各画素について算出された反転回数及び差分をそれぞれ閾値と比較し、反転回数が閾値を超えず、且つ、最大画素値及び最小画素値の差分が閾値を超えない場合に、この画素が平坦領域に含まれる画素であると判定する。よって、平坦判定処理部６２は、反転回数が閾値以上、又は、最大画素値及び最小画素値の差分が閾値以上の場合に、この画素が変化領域に含まれる画素であると判定する。
【０１３５】
図２８は、実施の形態２に係るフォーマット変換処理部１５２による変化領域及び平坦領域の判定を説明するための模式図である。例えば入力画像データ（図２８（ａ）参照）に７×７領域（図中にα及びβで示す）より十分に大きい文字が含まれている場合、反転回数カウント処理部６１により算出された反転回数は閾値を超えない虞がある。
【０１３６】
図２８（ａ）に示す入力画像データは、白色の背景に大きな文字「Ａ」が配された画像であり、背景の画素値はＲＧＢ＝（０、０、０）であり、文字の画素値はＲＧＢ=(２５５、２５５、２５５）であるとする。この入力画像データにおいて、７×７領域αには文字の画素が含まれていないため、最大画素値及び最小画素値の差分は０である。しかし、７×７領域βには文字の画素が含まれているため、最大画素値及び最小画素値の差分は２５５である。
【０１３７】
例えば、平坦判定処理部６２が閾値を１００として最大画素値及び最小画素値の差分を判定した場合、変化領域及び平坦領域の判定結果は図２８（ｂ）のようになる。なお、図２８（ｂ）においては、変化領域の画素を黒色で示し、平坦領域の画素を白色で示してある。図示のように、平坦判定処理部６２は、文字のエッジ部分を変化領域と判定することができるため、入力画像データに含まれる大きな文字の解像度が低下されて画質が悪化することを防止できる。
【０１３８】
なお、実施の形態２に係るＭＦＰのその他の構成は、実施の形態１に係るＭＦＰの構成と同様であるため、同様の箇所には同じ符号を付して詳細な説明を省略する。
【０１３９】
（実施の形態３）
実施の形態１及び２においては、本発明をＭＦＰに適用した例を示したが、これに限るものではない。実施の形態３においては、本発明をフラットヘッドスキャナ（画像読取装置）に適用する例を示す。図２９は、本発明の実施の形態３に係るフラットヘッドスキャナの構成をしめすブロック図である。実施の形態３に係るフラットヘッドスキャナは、画像入力装置１１、操作パネル１５及び画像処理装置３２０等を備えて構成されている。
【０１４０】
操作パネル１５は、ユーザの操作を受け付ける種々のキー及び警告メッセージなどを表示するディスプレイ等で構成される。画像入力装置１１は、原稿に光を照射する光源、及びＣＣＤ（Charge Coupled Device）などのイメージセンサが並設された受光部等を有し、光源から原稿へ光を照射すると共に、受光部を一方向へ移動させて、原稿からの反射光をＲ（赤）Ｇ（緑）Ｂ（青）の３つの色成分に分解して受光部で読み取り、ＲＧＢのアナログ信号として画像処理装置２０へ与える。なお、画像入力装置１１は、デジタルカメラ等の装置であってもよい。
【０１４１】
画像処理装置３２０は、Ａ／Ｄ変換部２１、シェーディング補正部２２、入力階調補正部２３、領域分離処理部２４及び圧縮処理部３０を有しており、画像入力装置１１にて読み取った画像データに対してＡ／Ｄ変換部２１〜領域分離処理部２４にて画像処理を施し、圧縮処理部３０にて画像データを圧縮して出力する。圧縮処理部３０は、実施の形態１に係るＭＦＰと同様に、入力画像データを変化領域及び平坦領域に分離し、平坦領域の解像度を低減することでデータ量を低減するフォーマット変換処理部５２を備えている。これにより、実施の形態３に係るフラットヘッドスキャナは、画像データによるメモリの使用量を低減することができ、圧縮処理部３０内の画像処理手段の間での画像データ転送量を低減することができる。
【０１４２】
なお、実施の形態３に係るフラットヘッドスキャナのその他の構成は、実施の形態１に係るＭＦＰの構成と同様であるため、同様の箇所には同じ符号を付して詳細な説明を省略する。
【図面の簡単な説明】
【０１４３】
【図１】本発明の実施の形態１に係るＭＦＰの構成を示すブロック図である。
【図２】画像処理装置の圧縮処理部の構成を示すブロック図である。
【図３】フォーマット変換処理部の構成を示すブロック図である。
【図４】フォーマット変換処理部へ与えられる入力画像データの一例を示す模式図である。
【図５】フォーマット変換処理部へ与えられる入力画像データの一例を示す模式図である。
【図６】反転回数カウント処理部による反転回数のカウント方法を説明するための模式図である。
【図７】反転回数カウント処理部による反転回数のカウント方法を説明するための模式図である。
【図８】平坦判定処理部による平坦判定処理の結果の一例を示す模式図である。
【図９】領域判定処理部による領域判定の結果の一例を示す模式図である。
【図１０】領域Ａ〜Ｃに分割した入力画像データの一例を示す模式図である。
【図１１】解像度を低減した画像データの一例を示す模式図である。
【図１２】各領域に番号付けを行った画像データの一例を示す模式図である。
【図１３】画像データフォーマット変換部が生成する画像データのヘッダ情報の一例を示す模式図である。
【図１４】ヘッダ情報に含まれる情報を説明するための模式図である。
【図１５】前景色インデックス化処理部の構成を示すブロック図である。
【図１６】仮インデックス画像の一例を示す模式図である。
【図１７】前景インデックスカラーテーブルの一例を示す模式図である。
【図１８】インデックス画像の一例を示す模式図である。
【図１９】２値化画像の一例を示す模式図である。
【図２０】ＭＦＰの圧縮処理部が行う圧縮処理の手順を示すフローチャートである。
【図２１】圧縮処理部をハードウェア化した場合の一構成例を示すブロック図である。
【図２２】読出ＤＭＡが行う画像データの変換処理の手順を示すフローチャートである。
【図２３】読出ＤＭＡが行う画像データの変換処理の手順を示すフローチャートである。
【図２４】インデックス化された画像データのヘッダ情報の一例を示す模式図である。
【図２５】書込ＤＭＡが行う画像データの変換処理の手順を示すフローチャートである。
【図２６】書込ＤＭＡが行う画像データの変換処理の手順を示すフローチャートである。
【図２７】実施の形態２に係るフォーマット変換処理部の構成を示すブロック図である。
【図２８】実施の形態２に係るフォーマット変換処理部による変化領域及び平坦領域の判定を説明するための模式図である。
【図２９】本発明の実施の形態３に係るフラットヘッドスキャナの構成をしめすブロック図である。
【図３０】レイヤ−分離による圧縮技術を説明するための模式図である。
【図３１】前景レイヤの圧縮率を高める方法の一例を説明するための模式図である。
【符号の説明】
【０１４４】
１１  画像入力装置（読取手段）
１２  画像出力装置（画像形成手段）
１３  送信装置
１５  操作パネル
２０  画像処理装置
２１  Ａ／Ｄ変換部
２２  シェーディング補正部
２３  入力階調補正部
２４  領域分離処理部
２５  色補正部
２６  黒生成下色除去部
２７  空間フィルタ処理部
２８  出力階調補正部
２９  階調再現処理部
３０  圧縮処理部
３１  記憶部
５１  前景マスク生成処理部（抽出手段）
５２  フォーマット変換処理部
５３  前景色インデックス化処理部（画像処理手段、インデックス化処理手段、テーブル生成手段）
５４  背景レイヤ生成処理部
５５  ２値画像生成処理部
５６  画像圧縮部
６１  反転回数カウント処理部（決定手段、計数手段）
６２  平坦判定処理部（判定手段）
６３  領域判定処理部（分離手段）
６４  画像データフォーマット変換部（解像度低減手段、ヘッダ情報生成手段、画像データ生成手段）
７１  仮インデックス画像生成処理部（画像処理手段）
７２  インデックス統合処理部
７３  インデックス画像補正処理部（画像処理手段）
８１  ＣＰＵ
８２  メモリ
８３  メモリ制御部
８４  読出ＤＭＡ（画像データ転送手段）
８５  書込ＤＭＡ（画像データ転送手段）
１５２  フォーマット変換処理部
１６５  最大・最小画素値差算出処理部（決定手段、算出手段）
３２０  画像処理装置
【図１】
2010074300.tif 000003
【図２】
2010074300.tif 000004
【図３】
2010074300.tif 000005
【図４】
2010074300.tif 000006
【図５】
2010074300.tif 000007
【図６】
2010074300.tif 000008
【図７】
2010074300.tif 000009
【図８】
2010074300.tif 000010
【図９】
2010074300.tif 000011
【図１０】
2010074300.tif 000012
【図１１】
2010074300.tif 000013
【図１２】
2010074300.tif 000014
【図１３】
2010074300.tif 000015
【図１４】
2010074300.tif 000016
【図１５】
2010074300.tif 000017
【図１６】
2010074300.tif 000018
【図１７】
2010074300.tif 000019
【図１８】
2010074300.tif 000020
【図１９】
2010074300.tif 000021
【図２０】
2010074300.tif 000022
【図２１】
2010074300.tif 000023
【図２２】
2010074300.tif 000024
【図２３】
2010074300.tif 000025
【図２４】
2010074300.tif 000026
【図２５】
2010074300.tif 000027
【図２６】
2010074300.tif 000028
【図２７】
2010074300.tif 000029
【図２８】
2010074300.tif 000030
【図２９】
2010074300.tif 000031
【図３０】
2010074300.tif 000032
【図３１】
2010074300.tif 000033