(57)【要約】【課題】対象画像内の文字画素を適切に特定する。【解決手段】画像処理装置は、対象画像データに含まれる複数個の画素の値に対応する複数個の対応値を含む第１の画像データを生成し、第１の画像データを用いて、第１値から第１値より大きな第２値へと変化するエッジの第１値側に位置する複数個の第１のエッジ画素を示す第１のエッジデータを生成し、第１の画像データを用いて、第１値から第２値へと変化するエッジの第２値側に位置する複数個の第２のエッジ画素を示す第２のエッジデータを生成し、第１のエッジデータと第２のエッジデータとを用いて、対象画像内の複数個の文字画素を特定する。第１の画像データは、対応する画素の値に含まれる複数個の成分値のうちの最大値または最小値に基づく値である。【選択図】  図２
2018174420.tif 000002
【特許請求の範囲】
【請求項１】
画像処理装置であって、
複数個の画素の値を含む対象画像データであって、前記複数個の画素の値のそれぞれは、複数個の成分値を含む色値である前記対象画像データを取得する画像データ取得部と、
前記対象画像データに含まれる前記複数個の画素の値に対応する複数個の対応値を含む第１の画像データを生成する第１の画像データ生成部であって、前記第１の画像データは、第１の成分データと第２の成分データとのうちの一方であり、前記第１の成分データに含まれる前記複数個の対応値のそれぞれは、対応する前記画素の値に含まれる前記複数個の成分値のうちの最大値に基づく値であり、前記第２の成分データに含まれる前記複数個の対応値のそれぞれは、対応する前記画素の値に含まれる前記複数個の成分値のうちの最小値に基づく値である、前記第１の画像データ生成部と、
前記第１の画像データを用いて、前記対応値が第１値から第１値より大きな第２値へと変化するエッジの前記第１値側に位置する複数個の第１のエッジ画素を示す第１のエッジデータを生成する第１のエッジデータ生成部と、
前記第１の画像データを用いて、前記対応値が前記第１値から前記第２値へと変化するエッジの前記第２値側に位置する複数個の第２のエッジ画素を示す第２のエッジデータを生成する第２のエッジデータ生成部と、
前記第１のエッジデータと前記第２のエッジデータとを用いて、前記対象画像データによって示される対象画像内の文字を示す領域に位置する複数個の文字画素を特定する文字画素特定部と、
を備える、画像処理装置。
【請求項２】
請求項１に記載の画像処理装置であって、さらに、
前記対象画像データを用いて、１種類の成分値で構成される第２の画像データを生成する第２の画像データ生成部であって、前記第２の画像データは、前記第１の画像データとは異なる処理を用いて生成される、前記第２の画像データ生成部と、
前記第２の画像データを用いて、前記成分値が第３値から前記第３値より大きな第４値へと変化するエッジの前記第３値側に位置する複数個の第３のエッジ画素を示す第３のエッジデータを生成する第３のエッジデータ生成部と、
前記第２の画像データを用いて、前記成分値が前記第３値から前記第４値へと変化するエッジの前記第４値側に位置する複数個の第４のエッジ画素を示す第４のエッジデータを生成する第４のエッジデータ生成部と、
前記文字画素特定部は、前記第１のエッジデータと前記第２のエッジデータと前記第３のエッジデータと前記第４のエッジデータとを用いて、前記対象画像内の前記複数個の文字画素を特定する、画像処理装置。
【請求項３】
請求項２に記載の画像処理装置であって、
前記第２の画像データは、前記第１の成分データと前記第２の成分データとのうちの前記第１の画像データとは異なる画像データである、画像処理装置。
【請求項４】
請求項２に記載の画像処理装置であって、
前記第２の画像データは、前記対象画像内の複数個の画素の輝度を示す輝度データである、画像処理装置。
【請求項５】
請求項２〜４のいずれかに記載の画像処理装置であって、さらに、
前記第１の画像データと、前記第２の画像データと、の少なくとも一方を用いて、前記対象画像内の前記文字を示す領域とは異なる特定領域に位置する複数個の特定画素を特定する、特定画素特定部を備える、画像処理装置。
【請求項６】
請求項５に記載の画像処理装置であって、
前記特定画素特定部は、前記第２の画像データを用いて、かつ、前記第１の画像データを用いずに、前記対象画像内の前記複数個の特定画素を特定し、
前記文字画素特定部は、前記第１の画像データを用いて生成される前記第１のエッジデータおよび前記第２のエッジデータと、前記第２の画像データを用いて生成される前記第３のエッジデータおよび前記第４のエッジデータと、の両方を用いて、前記対象画像内の前記複数個の文字画素を特定する、画像処理装置。
【請求項７】
請求項１に記載の画像処理装置であって、さらに、
前記第１のエッジデータと前記第２のエッジデータとを用いて、前記対象画像内の網点を示す網点領域に位置する複数個の網点画素を特定する網点画素特定部を備える、画像処理装置。
【請求項８】
請求項７に記載の画像処理装置であって、さらに、
前記対象画像データのうち、特定済みの前記複数個の文字画素の値に対して第１の画像処理を実行し、前記複数個の網点画素の値に対して前記第１の画像処理とは異なる第２の画像処理を実行して、処理済み画像データを生成する画像処理部を備える、画像処理装置。
【請求項９】
請求項８に記載の画像処理装置であって、さらに、
前記処理済み画像データを用いて、印刷データを生成する印刷データ生成部を備える、画像処理装置。
【請求項１０】
コンピュータプログラムであって、
複数個の画素の値を含む対象画像データであって、前記複数個の画素の値のそれぞれは、複数個の成分値を含む色値である前記対象画像データを取得する画像データ取得部と、
前記対象画像データに含まれる前記複数個の画素の値に対応する複数個の対応値を含む第１の画像データを生成する第１の画像データ生成部であって、前記第１の画像データは、第１の成分データと第２の成分データとのうちの一方であり、前記第１の成分データに含まれる前記複数個の対応値のそれぞれは、対応する前記画素の値に含まれる前記複数個の成分値のうちの最大値に基づく値であり、前記第２の成分データに含まれる前記複数個の対応値のそれぞれは、対応する前記画素の値に含まれる前記複数個の成分値のうちの最小値に基づく値である、前記第１の画像データ生成部と、
前記第１の画像データを用いて、前記対応値が第１値から第１値より大きな第２値へと変化するエッジの前記第１値側に位置する複数個の第１のエッジ画素を示す第１のエッジデータを生成する第１のエッジデータ生成部と、
前記第１の画像データを用いて、前記対応値が前記第１値から前記第２値へと変化するエッジの前記第２値側に位置する複数個の第２のエッジ画素を示す第２のエッジデータを生成する第２のエッジデータ生成部と、
前記第１のエッジデータと前記第２のエッジデータとを用いて、前記対象画像データによって示される対象画像内の文字を示す領域に位置する複数個の文字画素を特定する文字画素特定部と、
をコンピュータに実現させる、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書は、画像データによって示される画像内の文字を示す領域に位置する文字画素を特定するための画像処理に関する。
【背景技術】
【０００２】
特許文献１に開示された画像処理装置は、着目画素が低輝度から高輝度に変化する低輝度側の画像のエッジに位置するか否かを示す内エッジデータと、着目画素が低輝度から高輝度に変化する高輝度側の画像のエッジに位置するか否かを示す外エッジデータとを生成する。該画像処理装置は、内エッジデータと、外エッジデータと、を用いて、文字のエッジを特定する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−３１１８３６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記技術では、文字の色と背景の色とによっては、文字のエッジを特定できない可能性があった。
【０００５】
本明細書は、対象画像内の文字を示す領域に位置する文字画素を適切に特定できる技術を開示する。
【課題を解決するための手段】
【０００６】
本明細書に開示された技術は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の適用例として実現することが可能である。
【０００７】
［適用例１］画像処理装置であって、複数個の画素の値を含む対象画像データであって、前記複数個の画素の値のそれぞれは、複数個の成分値を含む色値である前記対象画像データを取得する画像データ取得部と、前記対象画像データに含まれる前記複数個の画素の値に対応する複数個の対応値を含む第１の画像データを生成する第１の画像データ生成部であって、前記第１の画像データは、第１の成分データと第２の成分データとのうちの一方であり、前記第１の成分データに含まれる前記複数個の対応値のそれぞれは、対応する前記画素の値に含まれる前記複数個の成分値のうちの最大値に基づく値であり、前記第２の成分データに含まれる前記複数個の対応値のそれぞれは、対応する前記画素の値に含まれる前記複数個の成分値のうちの最小値に基づく値である、前記第１の画像データ生成部と、前記第１の画像データを用いて、前記対応値が第１値から第１値より大きな第２値へと変化するエッジの前記第１値側に位置する複数個の第１のエッジ画素を示す第１のエッジデータを生成する第１のエッジデータ生成部と、前記第１の画像データを用いて、前記対応値が前記第１値から前記第２値へと変化するエッジの前記第２値側に位置する複数個の第２のエッジ画素を示す第２のエッジデータを生成する第２のエッジデータ生成部と、前記第１のエッジデータと前記第２のエッジデータとを用いて、前記対象画像データによって示される対象画像内の文字を示す領域に位置する複数個の文字画素を特定する文字画素特定部と、を備える、画像処理装置。
【０００８】
上記構成によれば、第１の画像データは、対応する画素の値に含まれる複数個の成分値のうちの最大値に基づく複数個の対応値を含む第１の成分データと、対応する画素の値に含まれる複数個の成分値のうちの最大値に基づく複数個の対応値を含む第２の成分データと、のうちの一方である。そして、第１の画像データを用いて生成される第１のエッジデータと第２のエッジデータとを用いて複数個の文字画素が特定される。これによって、例えば、輝度データを用いる場合には特定できない文字画素を特定し得る。この結果、対象画像内の文字を示す領域に位置する文字画素を適切に特定できる。
【０００９】
なお、本明細書に開示される技術は、種々の形態で実現することが可能であり、例えば、複合機、スキャナ、プリンタ、画像処理方法、これら装置の機能または上記方法を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体、等の形態で実現することができる。
【図面の簡単な説明】
【００１０】
【図１】実施例の画像処理装置としての複合機１００の構成を示すブロック図。
【図２】第１実施例の領域分離処理部１０３の構成を示すブロック図。
【図３】文字判定部１００３の構成を示すブロック図。
【図４】文字判定部の処理を説明するための図。
【図５】文字判定部の各処理の信号を示す図。
【図６】総合判定部１１０９が保持するテーブルの一例を示す図。
【図７】実施例における網点判定部１００４の構成を示すブロック図。
【図８】網点判定部の処理を説明するための図。
【図９】パターンマッチングの一例を示す第１の図。
【図１０】内エッジ信号と判定パターンとマッチングの結果の一例を示す図。
【図１１】ＯＲ処理部１２０７による処理の説明図。
【図１２】積算処理部１２０９と閾値判定部１２１１との構成を示すブロック図。
【図１３】閾値判定部１２１１と総合判定部１２１３との処理の一例を示す第１の図。
【図１４】閾値判定部１２１１と総合判定部１２１３との処理の一例を示す第２の図。
【図１５】閾値判定部１２１１と総合判定部１２１３との処理の一例を示す第３の図。
【図１６】網点内文字判定部１００５の構成を示すブロック図。
【図１７】適応的スムージング処理部２４０１の構成を示すブロック図。
【図１８】線判定に用いられる線パターンの一例を示す図。
【図１９】図１８の線パターン２６００を用いた判定の例を示す図。
【図２０】図１８の線パターン２６１０〜２６３０を用いた判定の例を示す図。
【図２１】適応的スムージング処理部による平滑化の周波数特性の一例を示す図。
【図２２】網点内文字判定部１００５による網点内文字判定の例を示す図。
【図２３】出力処理部１１０の構成を示すブロック図。
【図２４】スキャンデータの最小成分値と最大成分値の説明図。
【図２５】第２実施例の領域分離処理部１０３Ｂの構成を示すブロック図。
【図２６】第３実施例の領域分離処理部１０３Ｃの構成を示すブロック図。
【発明を実施するための形態】
【００１１】
Ａ．第１実施例：
Ａ−１．複合機１００の構成
次に、実施の形態を実施例に基づき説明する。図１は、実施例の画像処理装置としての複合機１００の構成を示すブロック図である。
【００１２】
複合機１００は、制御部１２０と、読取実行部１３０と、印刷実行部１４０と、通信インタフェース（通信ＩＦ）１５０と、図示しない液晶ディスプレイなどの表示部と、図示しないタッチパネルやボタンを含む操作部と、を備えている。
【００１３】
制御部１２０は、メインプロセッサ１０１と、複数個の画像処理部１０２〜１１０と、ＤＲＡＭなどの複数個の揮発性メモリ１１１〜１１６と、フラッシュメモリなどの不揮発性メモリ１１７と、を備えている。
【００１４】
メインプロセッサ１０１は、不揮発性メモリ１１７に格納されるコンピュータプログラムＰＧを実行することによって、読取実行部１３０や印刷実行部１４０、および、画像処理部１０２〜１１０を含む複合機１００の全体を制御するＣＰＵである。
【００１５】
複数個の画像処理部１０２〜１１０は、メインプロセッサ１０１の制御に従って動作するＡＳＩＣなどのハードウェア回路である。揮発性メモリ１１１〜１１６は、メインプロセッサ１０１や画像処理部１０２〜１１０によって利用されるメモリである。これら画像処理部やメモリを用いた処理の概要は後述する。
【００１６】
不揮発性メモリ１１７には、上述のコンピュータプログラムＰＧが格納されている。コンピュータプログラムＰＧは、メインプロセッサ１０１に複合機１００の制御を実現させる制御プログラムである。コンピュータプログラムＰＧは、複合機１００の製造時に、不揮発性メモリ１１７に予め格納される形態で提供される。これに代えて、コンピュータプログラムＰＧは、サーバからダウンロードされる形態で提供されても良く、ＤＶＤ−ＲＯＭなどに格納される形態で提供されてもよい。
【００１７】
読取実行部１３０は、メインプロセッサ１０１の制御に従って、一次元イメージセンサを用いて原稿を光学的に読み取ることによってスキャンデータを生成する。スキャンデータは、複数個の画素の値を含み、複数個の画素の値のそれぞれは、画素の色をＲＧＢ表色系の色値（ＲＧＢ値とも呼ぶ）で表す。すなわち、スキャンデータは、ＲＧＢ画像データである。１個の画素のＲＧＢ値は、例えば、赤色（Ｒ）と緑色（Ｇ）と青色（Ｂ）との３個の色成分の値（以下、Ｒ値、Ｇ値、Ｂ値とも呼ぶ）を含んでいる。本実施例では、各成分値の階調数は、２５６階調である。
【００１８】
印刷実行部１４０は、メインプロセッサ１０１の制御に従って、複数種類のトナー、具体的には、シアン（Ｃ）、マゼンタ（Ｍ）、イエロ（Ｙ）、ブラック（Ｋ）のトナーを、色材として用いて、レーザ方式で用紙などの印刷媒体に画像を印刷する。なお、変形例では、印刷実行部１４０は、色材としてのインクを吐出して、用紙上に画像を形成するインクジェット方式の印刷実行部であっても良い。
【００１９】
通信ＩＦ１５０は、ユーザの端末装置（図示省略）などの外部装置と通信を行うためのインタフェース、例えば、イーサネット（登録商標）規格に従うネットワークインタフェースである。
【００２０】
Ａ−２．複合機１００の処理の概要
複合機１００によって実行されるコピー処理、すなわち、読取実行部１３０を用いて、原稿を示すスキャンデータを生成し、該スキャンデータを用いて原稿を示す画像を印刷する処理の概要を説明する。なお、本実施例の原稿は、例えば、複合機１００、あるいは、図示しないプリンタによって画像が印刷された印刷物である。
【００２１】
利用者は、複写すべき原稿を読取実行部１３０のシートフィーダにセットし、複写の開始指示を図示しない操作部を介して入力する。読取実行部１３０は、開始指示に応じて、原稿を１枚ずつ読み取ることによって、対象画像データとしてのスキャンデータを生成する。生成されたスキャンデータは、第１入力処理部１０２に出力される。
【００２２】
第１入力処理部１０２は、読取実行部１３０から出力されるスキャンデータに対して、シェーディング補正、色補正など、周知の画像処理を行って、画像処理済みのスキャンデータを領域分離処理部１０３に送信する。
【００２３】
領域分離処理部１０３は、第１入力処理部１０２から出力されるスキャンデータに対して、領域分離処理を行う。領域分離処理部１０３は、スキャンデータによって示されるスキャン画像の画素ごとに写真（自然画）領域、文字領域、網点領域、網点内の文字領域といった画像の特徴を検出して、領域ごとの属性を表すフラグデータを、後述する文字フラグ１００７、網点フラグ１００８、網点内文字フラグ１００９として生成する。該フラグデータは、第２入力処理部１０４に出力されるとともに、第１フラグメモリ１１２に格納される。
【００２４】
第２入力処理部１０４は、第１入力処理部１０２から出力されるスキャンデータに対して、領域分離処理部１０３から出力されるフラグデータに基づき、領域ごとに適正な画像処理を行なって、処理済画像データを生成する。処理済画像データは、第１画像メモリ１１１に格納される。例えば、第２入力処理部１０４は、文字領域に対して、画像の高周波成分を強調して文字の鮮鋭度を強調する処理を行い、網点領域に対して、ローパスフィルタ処理を行う。ローパスフィルタ処理によって、スキャン画像に含まれるいわゆるモアレ成分が除去される。これらの処理の切り替えは、領域分離処理部１０３で生成したフラグデータに基づいて、画素単位で行われる。
【００２５】
第１画像メモリ１１１に１ページ分の処理済画像データが格納されると、データ圧縮部１０７は、該処理済画像データを、例えば、非可逆圧縮方式（例えば、ＪＰＥＧ方式）を用いて圧縮し、圧縮済みの処理済画像データを、メインメモリ１１３に格納する。
【００２６】
第１フラグメモリ１１２に１ページ分のフラグデータが格納されると、データ圧縮部１０７は、該フラグデータを、可逆圧縮方式（例えば、ＺＩＰ方式）を用いて圧縮し、圧縮済みのフラグデータを、メインメモリ１１３に格納する。
【００２７】
上記の処理を行なって、メインメモリ１１３には各原稿の圧縮済みの処理済画像データおよび圧縮済みのフラグデータが蓄積されていく。この蓄積処理と並行して、データ復号部１０９は、メインメモリ１１３から圧縮済みの処理済画像データおよび圧縮済みのフラグデータを取得し、復号処理を行なう。このとき、解像度変換部１０８は、必要に応じて、復号された処理済画像データに対して、該処理済画像データの解像度を変換する解像度変換を行なう。
【００２８】
復号および解像度が変換された処理済画像データは、第２画像メモリ１１６に格納され、復号されたフラグデータは、第２フラグメモリ１１５に格納される。
【００２９】
出力処理部１１０は、第２画像メモリ１１６に格納された処理済画像データ（ＲＧＢ値）に対して、色変換処理やハーフトーン処理を含む生成処理を実行して、印刷データを生成する。出力処理部１１０は、印刷データを生成する過程において、第２フラグメモリ１１５に格納されたフラグデータを参照して、各画素が属する領域の属性を認識し、領域ごとに適した画像処理を実行することができる。これによって、適切な印刷データが生成される。生成される印刷データは、印刷実行部１４０に出力される。この結果、印刷実行部１４０によって、用紙上に原稿を示す画像が印刷される。
【００３０】
上記は、コピー処理についてのものであったが、複合機１００は、ユーザの端末装置などの端末装置から送信される印刷ジョブを、通信ＩＦを介して受信し、該印刷ジョブに基づいて画像を印刷する、いわゆるネットワークプリンタとしても機能する。
【００３１】
この場合には、通信ＩＦ１５０を介して受信される印刷ジョブは、ＰＤＬ形式の画像データを含む。該印刷ジョブは、インタープリタ１０６に供給される。インタープリタ１０６は、受信した印刷ジョブに含まれるＰＤＬ形式の画像データを解釈し、ＲＩＰ１０５が解釈可能な描画コマンド（中間データ）に変換する。ＲＩＰ１０５は、この描画コマンドに基づき描画処理（ラスタライズ処理）を行なって、ＲＧＢ画像データを生成する。このＲＧＢ画像データは、第１画像メモリ１１１に格納される。ＲＩＰ１０５は、フラグデータを生成して、第１フラグメモリ１１２に格納する。ＰＤＬ形式の印刷データでは、文字、写真（自然画）、網点等は、印刷コマンドで定義されているので、ＲＩＰ１０５は、フラグデータを容易に生成することができる。
【００３２】
Ａ−３．領域分離処理部１０３による処理
領域分離処理部１０３によって実行される処理について説明する。図２は、第１実施例の領域分離処理部１０３の構成を示すブロック図である。
【００３３】
最小成分データ生成部１００２には、第１入力処理部１０２から出力されるスキャンデータの各画素の値を示す画素単位の入力信号１００１が、画素ごとに入力される。入力信号１００１は、スキャンデータの各画素のＲＧＢ値を示す信号である。最小成分データ生成部１００２は、入力信号１００１によって示されるＲＧＢ値に基づいて、最小成分値Ｖｍｉｎを示す信号を、属性判定用の画素単位の判定信号として生成する。最小成分値Ｖｍｉｎは、ＲＧＢ値に含まれる複数個の成分値（Ｒ値、Ｇ値、Ｂ値）のうちの最小値である。最小成分データ生成部１００２は、入力されるスキャンデータの画素ごとに、当該画素を構成する複数個の成分値の最小値を、最小成分値Ｖｍｉｎとして生成する回路である、と言うことができる。
【００３４】
最小成分データ生成部１００２にて生成された最小成分値Ｖｍｉｎを示す判定信号は、文字判定部１００３と、網点判定部１００４と、網点内文字判定部１００５と、にそれぞれ出力される。文字判定部１００３と、網点判定部１００４と、網点内文字判定部１００５とは、入力される判定信号を用いて、文字判定、網点判定、網点内文字判定を、それぞれ、実行し、判定結果を示す結果信号を、属性フラグ生成部１００６に出力する。
【００３５】
属性フラグ生成部１００６は、各判定部１００３〜１００５からの結果信号を用いて、属性フラグを生成する。実施例では、文字フラグ１００７、網点フラグ１００８、網点内文字フラグ１００９が生成される。文字フラグ１００７は、スキャンデータ内の対応する画素が、文字領域を構成する文字画素であるか否かを示すフラグである。網点フラグ１００８は、スキャンデータ内の対応する画素が、網点領域を構成する網点画素であるか否かを示すフラグである。網点内文字フラグ１００９は、スキャンデータ内の対応する画素が、網点内文字領域を構成する網点内文字画素であるか否かを示すフラグである。これらの属性フラグを基に、スキャン画像に含まれる画像の特徴に応じて最適な画像処理を施すことが可能になる。以下、文字判定部１００３、網点判定部１００４、網点内文字判定部１００５について、より詳しく説明する。
【００３６】
Ａ−３−１．文字判定部１００３の説明
図３は、文字判定部１００３の構成を示すブロック図である。
【００３７】
エッジ強調部１１０２には、最小成分データ生成部１００２からの判定信号（最小成分値Ｖｍｉｎ）が入力される。エッジ強調部１１０２は、該判定信号に対してエッジ強調処理を行ない、エッジ強調信号を出力する。このエッジ強調処理は、最小成分データの所望の周波数成分を、強調・抽出するフィルタ処理が行われる。本実施例では、ラプラシアンフィルタなどの２次微分フィルタが用いられる。このために、エッジ強調部１１０２は、フィルタ処理に必要な、最小成分データの複数個の画素の最小成分値Ｖｍｉｎを示す複数個の判定信号を記憶するためのバッファメモリを備える。
【００３８】
エッジ強調部１１０２から出力されたエッジ強調信号は、エッジ強調信号によって示される値と、閾値と、の比較を行う閾値判定部１１０３、１１０４に入力される。閾値判定部１１０３には正の値の閾値が、閾値判定部１１０４には負の値の閾値が設定されている。
【００３９】
図４は、文字判定部の処理を説明するための図である。エッジ強調処理において２次微分フィルタを用いた場合、エッジ強調信号によって示される画素の値は、正の値である場合と、負の値である場合がある。図４（Ａ）において、エッジ境界部１５０１は、下地１５０３（例えば白色）にある文字１５０２（例えば、黒色）と、下地１５０３と、のエッジを表している。図４（Ｂ）には、エッジ境界部１５０１の断面１５１０に対応する最小成分データ（すなわち、判定信号）１５０４が示されている。この例では、文字１５０２の部分における最小成分データの値（最小成分値Ｖｍｉｎ）は、比較的小さな値１５０５であり、下地１５０３の部分における最小成分データの値は、比較的大きな値１５０６である。図４（Ｃ）には、図４（Ｂ）の最小成分データ１５０４に対して、２次微分フィルタを用いエッジ強調処理を行って得られるエッジ抽出データ１５０７（すなわち、エッジ強調信号によって示されるデータ）が示されている。エッジ抽出データ１５０７は、文字１５０２側では正の値１５０８となり、下地１５０３側では負の値１５０９となる。閾値判定部１１０３は、エッジ強調信号によって示される値が、正の閾値を超えた場合に、「１」を示す内エッジ信号を出力し、正の閾値以下である場合に、「０」を示す内エッジ信号を出力する。「１」を示す内エッジ信号は、対応する画素が、最小成分データにおいて、比較的小さな値から比較的大きな値へと変化するエッジを構成する小さな値側の画素（内エッジ画素）であることを示す。図４の例では、文字１５０２と下地１５０３とのエッジを構成する文字側の画素が、内エッジ画素である。閾値判定部１１０４は、エッジ強調信号によって示される値が、負の閾値を下回った場合に、「１」を示す外エッジ信号を出力し、負の閾値以上である場合に、「０」を示す外エッジ信号を出力する。「１」を示す外エッジ信号は、対応する画素が、最小成分データにおいて、比較的小さな値から比較的大きな値へと変化するエッジを構成する大きな値側の画素（外エッジ画素とも呼ぶ）であることを示す。図４の例では、文字１５０２と下地１５０３とのエッジを構成する下地側の画素が、外エッジ画素である。
【００４０】
閾値判定部１１０３から出力された内エッジ信号は、エリア積算部１１０５へ、閾値判定部１１０４から出力された外エッジ信号は、エリア積算部１１０６へ、それぞれ出力される。エリア積算部１１０５は、注目画素を中心とする縦３画素×横３画素の周辺範囲内の画素に対応する９個の内エッジ信号を積算した積算信号を、画素ごとに出力する。エリア積算部１１０６は、注目画素の上記周辺範囲内の画素に対応する９個の外エッジ信号を積算した積算信号を、画素ごとに出力する。したがって、エリア積算部１１０５、１１０６から出力される積算信号は、対応する画素の周辺範囲内に存在する内エッジ画素の個数、外エッジ画素の個数を、それぞれ示す。したがって、積算信号が示す値は０以上９以下の範囲となる。
【００４１】
閾値判定部１１０７、１１０８は、エリア積算部１１０５および１１０６から出力される積算信号が示す値と、閾値と、を比較して、その結果を示す積算判定信号を出力する。例えば、閾値としてそれぞれ「２」という値が設定されている。このために、閾値判定部１１０７から出力される積算判定信号は、対応する画素の上記周辺範囲内に、内エッジ画素が２個以上ある場合に、肯定的な値（例えば、「１」）を示す。閾値判定部１１０８から出力される積算判定信号は、対応する画素の上記周辺範囲内に、外エッジ画素が２個以上ある場合に、肯定的な値（例えば、「１」）を示す。
【００４２】
処理の具体例を、図５を用いて説明する。図５は、文字判定部の各処理の信号を示す図である。図５（Ａ）には、最小成分データによって示される最小成分画像内に現れる下地上の文字のエッジの一部１３０１が示されている。
【００４３】
図５（Ｂ）は、判定信号（すなわち、最小成分値Ｖｍｉｎを示す信号）をエッジ強調部１１０２によってエッジ強調し、閾値判定部１１０４によって処理した結果、すなわち、外エッジ画素の特定結果を示している。図示のように、領域１３０２は、文字のエッジの外側の領域（外エッジ領域）を表わしている。
【００４４】
図５（Ｃ）は、閾値判定部１１０４からの外エッジ信号をエリア積算部１１０６によって処理し、エリア積算部１１０６からの積算信号を閾値判定部１１０８によって処理した結果、すなわち、外エッジのエリア積算の判定結果を示している。図示のように、領域１３０４は、外エッジ領域１３０２の拡張した結果となる。
【００４５】
図５（Ｄ）は、判定信号（すなわち、最小成分値Ｖｍｉｎを示す信号）をエッジ強調部１１０２によってエッジ強調し、閾値判定部１１０３によって処理した結果、すなわち、内エッジ画素の特定結果を示している。図示のように、領域１３０３は、文字のエッジの内側の領域（内エッジ領域）を表わしている。
【００４６】
図５（Ｅ）は、閾値判定部１１０３からの内エッジ信号をエリア積算部１１０５によって処理し、エリア積算部１１０５からの積算信号を閾値判定部１１０７によって処理した結果、すなわち、内エッジのエリア積算の判定結果を示している。図示のように、領域１３０５は、内エッジ領域１３０３の拡張した結果となる。
【００４７】
総合判定部１１０９には、閾値判定部１１０３、１１０７、１１０８から出力される３種類の信号、すなわち、内エッジ信号と、内エッジの積算判定信号と、外エッジの積算判定信号と、が入力される。総合判定部１１０９は、文字判定部１００３の判定結果を示す結果信号である文字判定信号１１１０を生成する。図５（Ｆ）には、文字判定信号によって文字である示される領域１３０６が示されている。
【００４８】
総合判定部１１０９は、内エッジ信号と、内エッジの積算判定信号と、外エッジの積算判定信号と、に基づいて、決められた論理に従って文字判定信号１１１０を出力する。例えば、文字判定信号１１１０は、以下のような論理で、文字であることを示す信号（本実施例では「１」）、または、文字でないことを示す信号（本実施例では「０」）に決定される。
（１）対応する画素が内エッジである。→「１」
（２）対応する画素が外エッジであり、かつ、上記縦３画素×縦３画素の周辺範囲に外エッジが２個以上ある。→「０」
（３）上記（１）、（２）のいずれにも該当せず、かつ、上記縦３画素×縦３画素の周辺範囲に内エッジが２個以上ある。→「１」
（４）上記（１）〜（３）のいずれにも該当しない。→「０」
図６は、総合判定部１１０９が保持するテーブルの一例を示す図である。上記を実現するためには、総合判定部１１０９は、図６のテーブルを参照する。図示の如く、入力される内エッジ信号、内エッジの積算判定信号、外エッジの積算判定信号の結果に応じて、文字判定信号１１１０が決定される。以上のように行うことで、文字を好適に抽出することができる。
【００４９】
Ａ−３−２．網点判定部１００４の説明
図７は、実施例における網点判定部１００４の構成を示すブロック図である。
【００５０】
エッジ強調部１２０２には、最小成分データ生成部１００２からの判定信号（最小成分値Ｖｍｉｎ）が入力される。エッジ強調部１２０２は、判定信号に対してエッジ強調処理を行ない、エッジ強調信号を出力する。エッジ強調部１２０２によるエッジ強調処理は、図３のエッジ強調部１１０２によるエッジ強調処理と同様の処理であり、例えば、ラプラシアンフィルタなどの２次微分フィルタを用いたフィルタ処理である。
【００５１】
エッジ強調部１２０２から出力されたエッジ強調信号は、エッジ強調信号によって示される値と、閾値と、の比較を行う閾値判定部１２０３、１２０４に入力される。閾値判定部１２０３には正の値の閾値が、閾値判定部１２０４には負の値の閾値が設定されている。
【００５２】
図８は、網点判定部の処理を説明するための図である。エッジ強調処理において２次微分フィルタを用いた場合、上述したように、エッジ強調信号によって示される画素の値は、正の値である場合と、負の値である場合がある。図８（Ａ）において、エッジ境界部１６０１は、下地１６０３（例えば、白色）にある１個の網点１６０２と、下地１６０３と、のエッジを表している。図８（Ｂ）には、網点エッジ境界部１６０１の断面１６１０に対する最小成分データ（すなわち、判定信号）１６０４が示されている。この例では、網点１６０２の部分における最小成分データの値（最小成分値Ｖｍｉｎ）は、比較的小さな値１６０５であり、下地１６０３の部分における最小成分データの値は、比較的大きな値１６０６である。図８（Ｃ）には、図８（Ｂ）の最小成分データ１６０４に対して、２次微分フィルタを用いエッジ強調処理を行って得られるエッジ抽出データ１６０７が示されている。エッジ抽出データ１６０７は、網点１６０２側では正の値１６０８となり、下地１６０３側では負の値１６０９となる。閾値判定部１２０３は、図３の閾値判定部１１０３と同様に、内エッジ信号を出力する。閾値判定部１２０４は、図３の閾値判定部１１０４と同様に、外エッジ信号を出力する。図６の例では、網点１６０２と下地１６０３とのエッジを構成する網点側の画素が、内エッジ画素である。また、網点１６０２と下地１６０３とのエッジを構成する下地側の画素が、外エッジ画素である。
【００５３】
閾値判定部１２０３から出力される内エッジ信号は、孤立量判定部１２０５に入力される。閾値判定部１２０４から出力される外エッジ信号は、孤立量判定部１２０６に入力される。
【００５４】
孤立量判定部１２０５は、閾値判定部１２０３からの内エッジ信号についてパターンマッチング処理を行う。原稿に含まれる網点には、比較的単位面積当たりの線数が少ないものから比較的単位面積あたりの線数が多いものまであるため、原稿によって網点のサイズや間隔は異なる。そのため、どのような線数の網点でも検出できるように、パターンマッチングは複数のパターンにて行う。少線数の網点に対しては、比較的大きなパターンにてマッチングを行い、網点かどうかを判定する。多線数の網点に対しては、比較的小さなパターンにてマッチングを行い、網点かどうかを判定する。また、網点は、原稿上で表現すべき濃度によっても形状が変化するので、それに対応できるよう、マッチングの際に、複数の判定レベルを用いる。
【００５５】
図９は、パターンマッチングの一例を示す第１の図である。図９（Ａ）は、閾値判定部１２０３の結果の例である。図９（Ａ）には、縦４画素×横４画素の範囲でパターンマッチングする例を説明するため、当該範囲内の内エッジ信号１７００を示している。その中で、閾値判定部１２０３で、「１」を示す内エッジ信号が出力された画素（内エッジ画素）が、ハッチングされた領域１７０２の４画素である。「０」を示す内エッジ信号が出力された画素（非内エッジ画素）は、ハッチングされていない領域１７０３の画素である。マッチングの対象となる注目画素は画素１７０１である。
【００５６】
次に、同サイズの判定パターンの一例を図９（Ｂ）に示す。図示の判定パターン１７１０において、４個の黒画素１７１２は、該パターンにおいて、内エッジ画素であるべき画素である。８個の白画素１７１３は、非内エッジ画素であるべき画素である。４隅の画素は、内エッジ画素でも非内エッジ画素でも構わない任意画素１７１４である。これを基本パターンとして、黒画素１７１２と白画素１７１３のそれぞれに、複数の一致レベルを持たせて、判定レベルを調整する。
【００５７】
図１０は、内エッジ信号と、図９（Ｂ）の判定パターン１７１０と、マッチングの結果の一例を示す図である。
【００５８】
判定パターン１７１０における黒画素１７１２と、内エッジ信号における内エッジ画素と、が、４画素のうちＮ１画素（Ｎ１は、１以上３以下の整数）以上一致した場合は、黒画素判定を有効とする。判定パターン１７１０における白画素１７１３と、内エッジ信号における非エッジ画素と、が８画素のうちＮ２画素以上（Ｎ２は、１以上７以下の整数）一致した場合は、白画素判定を有効とする。黒画素判定と白画素判定との両方が有効である場合に限って、注目画素１８０１の判定結果を示す孤立量判定信号を、「１」とする。Ｎ１とＮ２の値を調整することで、判定レベルを任意に調整できる。本実施例では、Ｎ１＝３、Ｎ２＝６とする。
【００５９】
図１０（Ａ）の内エッジ信号１８１０の場合、黒画素判定は有効（一致数＝４）であり、かつ、白画素判定は有効（一致数＝８）であるので、孤立量判定信号は「１」となる。
【００６０】
図１０（Ｂ）の内エッジ信号１８２０の場合、黒画素判定は有効（一致数＝４）であり、かつ、白画素判定は有効（一致数＝７）であるので、孤立量判定信号は「１」となる。
【００６１】
図１０（Ｃ）の内エッジ信号１８３０の場合、黒画素判定は有効（一致数＝３）であり、かつ、白画素判定は有効（一致数＝８）であるので、孤立量判定信号は「１」となる。
【００６２】
図１０（Ｄ）の内エッジ信号１８４０の場合、黒画素判定は無効（一致数＝２）であり、かつ、白画素判定は有効（一致数＝８）であるので、孤立量判定信号は「０」となる。
【００６３】
このようなパターンマッチングを複数のサイズの判定パターンを用いて行う。実施例では、内エッジ信号について説明したが、外エッジ信号についても同様のパターンマッチングを行う。その際、判定パターンや判定レベルの調整値は任意に設定できる。
【００６４】
さて、孤立量判定部１２０５、１２０６から出力される孤立量判定信号は、図７のＯＲ処理部１２０７に入力される。ＯＲ処理部１２０７では、縦３画素×横３画素の範囲内で孤立量判定信号の論理和をとり、該範囲内に孤立量判定信号が「１」である画素があるか否かを判定する。ＯＲ処理部１２０７は、判定の結果、孤立量判定信号が「１」である画素が、該範囲内に１個以上あれば、判定対象の注目画素のＯＲ処理信号を「１」とし、孤立量判定信号が「１」である画素が、該範囲内に１個もなければ、判定対象の注目画素のＯＲ処理信号を「０」とする。
【００６５】
図１１は、ＯＲ処理部１２０７による処理の説明図である。図１１（Ａ）の例では、縦３画素×横３画素の範囲のうち、中心の注目画素の孤立量判定信号だけが「１」である。従って、出力されるＯＲ処理信号は、「１」である。図１１（Ｂ）の例では、中心の注目画素の孤立量判定信号は「０」であるが、縦３画素×横３画素の範囲内の右上の画素の孤立量判定信号は、「１」である。従って、出力されるＯＲ処理信号は、「１」である。図１１（Ｃ）の例では、中心の注目画素の孤立量判定信号は「０」であるが、その周囲の８個の画素の孤立量判定信号は、「１」である。従って、出力されるＯＲ処理信号は、「１」である。
【００６６】
ＯＲ処理部１２０７から出力されるＯＲ処理信号は、積算処理部１２０９に入力される。図１２は、積算処理部１２０９と、閾値判定部１２１１と、の構成を示すブロック図である。
【００６７】
積算処理部１２０９は、注目画素を中心とする複数種類のサイズの積算範囲内の画素に対応する複数個のＯＲ処理信号を積算した積算信号を、画素ごとに出力する。ＯＲ処理信号の信号を複数の積算範囲を用いて積算する。例えば、第１積算部２０１１は、積算範囲として、縦９画素×横９画素の範囲を用いる。したがって、第１積算部２０１１から出力される積算判定信号は、０以上８１以下の範囲となる。第２積算部２０１２、第３積算部２０１３は、積算範囲として、それぞれ、縦１５画素×横１５画素の範囲、縦２１画素×横２１画素の範囲を用いる。したがって、第２積算部２０１２、第３積算部２０１３から出力される積算信号は、それぞれ、０以上２２５以下の範囲、０以上４４１以下の範囲となる。第１積算部２０１１、第２積算部２０１２、第３積算部２０１３から出力される積算信号は、それぞれ、閾値判定部１２１１の第１判定部２０２１、第２判定部２０２２、第３判定部２０２３に、入力される。
【００６８】
第１判定部２０２１、第２判定部２０２２、第３判定部２０２３は、それぞれに入力される積算信号が示す値と、閾値と、を比較して、その結果を示す積算判定信号を出力する。を行う。具体的には、第１判定部２０２１、第２判定部２０２２、第３判定部２０２３から出力される積算判定信号は、積算信号が示す値が、設定された閾値以上である場合には、「１」とされ、該閾値未満である場合には、「０」とされる。第１判定部２０２１、第２判定部２０２２、第３判定部２０２３で用いられる閾値は、互いに異なる値であり、本実施例では、それぞれ、「５」、「１２」、「２３」に設定されている。これによって、各判定部２０２１、２０２２、２０２３は、積算信号が示す値が、積算範囲内の画素数の約５％を超える場合に、「１」を示す積算判定信号を出力し、積算信号が示す値が、積算範囲内の画素数の約５％以下である場合に、「０」を示す積算判定信号を出力する。
【００６９】
第１判定部２０２１、第２判定部２０２２、第３判定部２０２３から出力される積算判定信号は、総合判定部１２１３（図７、図１２）に入力される。総合判定部１２１３は、入力される３個の積算判定信号に基づいて、網点判定部１００４の判定結果を示す結果信号である網点判定信号１２１５を生成する。網点判定信号１２１５は、注目画素が網点画素であることを示す値「１」と、注目画素が網点画素でないことを示す値「０」と、のいずれかである。
【００７０】
図１３〜図１５は、閾値判定部１２１１と、総合判定部１２１３と、の処理の一例を示す図である。図１３（Ａ）には、ＯＲ処理部１２０７によって出力されるＯＲ処理信号２１００が概念的に図示されている。このＯＲ処理信号２１００は、比較的低い濃度を示す網点を含む領域を処理した場合の例である。クロスハッチングされた画素は、対応するＯＲ処理信号が「１」である画素を示し、クロスハッチングされていない画素は、対応するＯＲ処理信号が「０」である画素を示す。図には、注目画素２１０１を中心とした、縦９画素×横９画素の積算範囲２１０２と、縦１５画素×横１５画素の積算範囲２１０３と、縦２１画素×横２１画素の積算範囲２１０４と、がそれぞれ示されている。それぞれの積算範囲での積算結果、すなわち、第１積算部２０１１、第２積算部２０１２、第３積算部２０１３から出力される積算信号の値が、図１３（Ｂ）に示されている。第１積算部２０１１（９×９）の積算結果は、１２画素であり、第２積算部２０１２（１５×１５）の積算結果は、４０画素であり、第３積算部２０１３の積算結果は、７６画素である。
【００７１】
したがって、図１３（Ｂ）に示すように、第１積算部２０１１（９×９）の積算結果の「１２」は閾値「５」以上であるので、第１判定部２０２１（９×９）が出力する積算判定信号は、「１」（網点）になる。同様に、第２積算部２０１２（１５×１５）の積算結果の「４０」も閾値「１２」以上であり、第３積算部２０１３（２１×２１）の積算結果の「７６」も閾値「２３」以上であるので、対応する第２判定部２０２２、第３判定部２０２３が出力する積算判定信号は、両方とも「１」になる。
【００７２】
総合判定部１２１３は、上記３種類の結果を元に、注目画素が最終的に網点かどうかを判定し、該判定結果を示す網点判定信号１２１５を生成する。本実施例では、総合判定部１２１３は、図１３（Ｃ）に示すように、３種類の結果から二組のペアを作る。例えば、第１判定部２０２１と第２判定部２０２２との積算判定信号で第１のペアを作り、第２判定部２０２２と第３判定部２０２３との積算判定信号で第２のペアを作る。総合判定部１２１３は、それぞれの組の積算判定信号の論理積（ＡＮＤ）を算出する。第１のペアの論理積は、「１」（網点）であり、第２のペアの論理積も「１」（網点）である。総合判定部１２１３は、さらに、第１のペアの論理積と、第２のペアの論理積と、の論理和を、網点判定信号１２１５として生成する。図１３の例では、いずれの論理積も「１」であるので、注目画素の網点判定信号１２１５は、「１」（網点）になる。
【００７３】
図１４（Ａ）には、図１３と同程度の濃度を示す網点を含み、かつ、文字のエッジ２２０５を含む領域に対応するＯＲ処理信号２２００が概念的に図示されている。図示のように、文字のエッジ２２０５がある場合は、該エッジ近傍には、孤立したドットが発生しないため、文字エッジ近傍のＯＲ処理信号は「０」になる。この場合には、図１４（Ｂ）に示すように、第１積算部２０１１（９×９）の積算結果は、４画素であり、第２積算部２０１２（１５×１５）の積算結果は、３２画素であり、第３積算部２０１３の積算結果は、６０画素である。
【００７４】
したがって、図１４（Ｂ）に示すように、第１積算部２０１１（９×９）の積算結果の「４」は閾値「５」未満であるので、第１判定部２０２１（９×９）が出力する積算判定信号は、「０」（非網点）になる。第２積算部２０１２（１５×１５）の積算結果の「３２」は閾値「１２」以上であり、第３積算部２０１３（２１×２１）の積算結果の「６０」も、閾値「２３」以上であるので、対応する第２判定部２０２２、第３判定部２０２３が出力する積算判定信号は、両方とも「１」（網点）になる。
【００７５】
図１４（Ｃ）に示すように、第１のペアの論理積は、「０」（非網点）であり、第２のペアの論理積は「１」（網点）である。第１のペアの論理積と、第２のペアの論理積と、の論理和は、すなわち、注目画素の網点判定信号１２１５は、「１」（網点）になる。このように、文字のエッジを含むために、１つの積算範囲の積算結果が、非網点を示しても、最終的には、網点と判定される。このように、複数の積算範囲と、複数個の閾値を用いることで、網点として適切に検出できる。
【００７６】
図１５（Ａ）には、図１３（Ａ）と同程度の濃度を示す網点を含む領域の縁の外側に注目画素がある場合のＯＲ処理信号２３００が概念的に図示されている。この場合には、図１５（Ｂ）に示すように、第１積算部２０１１（９×９）の積算結果は、０画素であり、第２積算部２０１２（１５×１５）の積算結果は、１２画素であり、第３積算部２０１３の積算結果は、２０画素である。
【００７７】
したがって、図１５（Ｂ）に示すように、第１積算部２０１１（９×９）の積算結果の「０」は閾値「５」未満であるので、第１判定部２０２１（９×９）が出力する積算判定信号は、「０」（非網点）になる。第２積算部２０１２（１５×１５）の積算結果の「１２」は閾値「１２」以上であるので、第２判定部２０２２（１５×１５）が出力する積算判定信号は、「１」（網点）になる。第３積算部２０１３（２１×２１）の積算結果の「２０」は閾値「２３」未満であるので、第３判定部２０２３（２１×２１）が出力する積算判定信号は、「０」（非網点）になる。
【００７８】
図１５（Ｃ）に示すように、第１のペアの論理積は、「０」（非網点）であり、第２のペアの論理積も「０」（非網点）である。第１のペアの論理積と、第２のペアの論理積と、の論理和は、すなわち、注目画素の網点判定信号１２１５は、「０」（非網点）になる。このように、複数の積算範囲と、複数個の閾値を用いることで、網点の縁の外側の画素を、非網点として適切に検出できる。
【００７９】
ここで説明した積算処理の組み合わせは一例に過ぎず、これに限るものではない。目的に応じて自由に組み合わせを構成できる。また、説明では３種類の積算処理の結果を用いたため二組の論理積を用いたが、これに限るものではない。入力数とその論理演算部は自由に構成できるものである。さらに、論理積と論理輪の組み合わせも一例に過ぎず、これに限るものではない。論理積や論理和を自由に組み合わせることができる。
【００８０】
Ａ−３−２．網点内文字判定部１００５の説明
図１６は、網点内文字判定部１００５の構成を示すブロック図である。
【００８１】
適応的スムージング処理部２４０１は、最小成分データ生成部１００２からの判定信号を入力し、適応的なスムージング処理を行なう。ここでは、適応的に文字／細線を除外しつつ、スキャンデータの所望の周波数成分を平滑化するデジタルフィルタ処理が行われる。
【００８２】
適応的スムージング処理部２４０１から出力されたスムージング信号は、エッジ強調部２４０２に入力される。エッジ強調部２４０２は、スムージング信号に対して、エッジ強調処理を行い、エッジ強調信号を出力する。エッジ強調部２４０２によるエッジ強調処理は、図３のエッジ強調部１１０２によるエッジ強調処理と同様の処理であり、例えば、ラプラシアンフィルタなどの２次微分フィルタを用いたフィルタ処理である。
【００８３】
エッジ強調部２４０２から出力されたエッジ強調信号は、閾値判定部２４０３に入力される。閾値判定部２４０３には正の値の閾値が設定されている。
【００８４】
図４を参照して説明したように、エッジ強調処理において２次微分フィルタを用いた場合、エッジ強調信号によって示される画素の値は、正の値である場合と、負の値である場合がある。図４（Ｂ）に示すように、２次微分フィルタを用いエッジ強調処理を行って得られるエッジ抽出データ１５０７（すなわち、エッジ強調信号によって示されるデータ）は、文字１５０２側では正の値１５０８となり、下地１５０３側では負の値１５０９となる。
【００８５】
網点内文字判定では、網点領域内の文字自体を抽出することを目的としているため、文字の外エッジは網点領域とみなし、文字の内エッジを抽出することで網点内文字としている。このために、閾値判定部２４０３は、エッジ強調信号によって示される値が、正の閾値を超えた場合に、「１」を示す内エッジ信号を出力し、正の閾値以下である場合に、「０」を示す内エッジ信号を出力する。以下、上記処理を更に詳しく説明する。
【００８６】
図１７は、適応的スムージング処理部２４０１の構成を示すブロック図である。最小成分データ生成部１００２からの判定信号２５０１（最小成分値Ｖｍｉｎ）は、３つに分岐され、平滑化処理部２５０２と、セレクタ２５０４と、線判定部２５０３と、にそれぞれ入力される。
【００８７】
平滑化処理部２５０２は、判定信号２５０１に対して、処理対象の注目画素を中心とする縦Ｍ画素×横Ｍ画素（Ｍは、２以上の整数）のフィルタ範囲内の複数個の画素の値を用いて平滑化処理を実行する。平滑化処理は、特定周波数帯域の感度を落とすことを目的とする処理であり、例えば、ガウシアンフィルタを用いた処理であっても良いし、平均値フィルタを用いた処理であっても良い。処理部２５０２は、平滑化処理の結果を示す平滑化信号を、セレクタ２５０４に供給する。
【００８８】
セレクタ２５０４に入力される判定信号２５０１は、平滑化処理部２５０２による処理の処理ライン数に応じた画像遅延に対応するために、図示しない遅延メモリを経由することで、遅延された後に、セレクタ２５０４に入力される。
【００８９】
線判定部２５０３は、平滑化処理部２５０２による処理のＭ本のライン分の処理バッファを利用して、縦Ｎ画素×横Ｌ画素（Ｌ、Ｎは、２以上の整数、Ｎ≦Ｍが好ましい）の処理領域にて、注目画素について、縦線、横線、斜め線上の画素であるか否かの判定を行う。線判定部２５０３は、これらの線についての判定結果に応じて、セレクタ２５０４に対して切替信号を出力する。線判定部２５０３は、注目画素が、これらの線上の画素（線画素とも呼ぶ）であると判定した場合には、「１」を示す切替信号を出力し、注目画素が線画素でないと判定した場合には、「１」を示す切替信号を出力する。
【００９０】
セレクタ２５０４は、線判定部２５０３から出力される切替信号に基づき、平滑化処理部２５０２から出力される平滑化信号と、フィルタ処理されていない判定信号２５０１と、のいずれかを出力する。セレクタ２５０４は、切替信号が「１」である場合、すなわち、線判定部２５０３にて、注目画素が線画素であると判定されたときは、フィルタ処理されない判定信号２５０１を出力する。セレクタ２５０４は、切替信号が「０」である場合、すなわち、注目画素が線画素でないと判定されたときは、平滑化信号を出力する。
【００９１】
線判定部２５０３について説明する。図１８は、線判定に用いられる線パターンの一例を示す図である。線判定部２５０３は、図１８（Ａ）〜（Ｄ）に示すような線パターンを用いて、注目画素が線画素であるか否かを判定する。線パターンのサイズは、上述した縦Ｎ画素×横Ｌ画素のサイズである。図１８の例では、Ｎ＝５、Ｌ＝７である。縦方向（副走査方向）の画素数Ｎは、平滑化処理部２５０２による処理のフィルタ範囲の副走査方向の画素数Ｍより小さい方がメモリを共有する観点から好ましいが、それに限られない。横方向（主走査方向）の画素数Ｌは、Ｍより大きくても構わない。
【００９２】
図１８（Ａ）の線パターン２６００は縦線について判定するための線パターンを示し、図１８（Ｂ）の線パターン２６１０は、横線について判定するための線パターンを示す。図１８（Ｃ）、（Ｄ）の線パターン２６２０、２６３０は、斜め線について判定するための線パターンを表している。ここでは、線パターン２６００を用いて、縦線についての判定方法を説明する。
【００９３】
パターン２６００は縦５画素×横７画素のサイズを有する。線パターン２６００は、縦５画素×横１画素の画素ブロック２６０２、２６０３、２６０４を含む。線判定部２５０３は、それぞれの画素ブロックについて、判定信号２５０１によって示される値の総和（ＡＬＬ）、最大値（ＭＡＸ）、最小値（ＭＩＮ）を算出する。すなわち、それぞれの画素ブロックについて、画素ブロック内の画素の最小成分値Ｖｍｉｎの総和、最大値、最小値が、算出される。
【００９４】
線判定部２５０３は、以下の条件式を評価する。
（１）ＭＡＸ（２６０２）−  ＭＩＮ（２６０２）  ≦  閾値１
（２）ＭＡＸ（２６０３）−  ＭＩＮ（２６０３）  ≦  閾値１
（３）ＡＬＬ（２６０３）≦  ＡＬＬ（２６０２）−  閾値２
条件（１）は、画素ブロック２６０２内の５画素について、画素の値の差がないことを評価する。条件（２）は、画素ブロック２６０３内の５画素について、画素の値の差がないことを評価する。条件（３）は、画素ブロック２６０２内の画素の値の総和と、画素ブロック２６０３内の画素の値の総和と、を比較し、画素ブロック２６０３が画素ブロック２６０２に対して、画素の値が相対的に低いことを評価する。条件（１）〜（３）が全て満たされる場合には、画素ブロック２６０３は、縦線を構成すると判定される。
【００９５】
線判定部２５０３は、以下の条件式を評価する。
（４）ＭＡＸ（２６０４）−  ＭＩＮ（２６０４）  ≦  閾値１
（５）ＭＡＸ（２６０３）−  ＭＩＮ（２６０３）  ≦  閾値１
（６）ＡＬＬ（２６０３）≦  ＡＬＬ（２６０４）−  閾値２
条件（４）は、画素ブロック２６０４内の５画素について、画素の値の差がないことを評価する。条件（５）は、画素ブロック２６０３内の５画素について、画素の値の差がないことを評価する。条件（６）は、画素ブロック２６０４内の画素の値の総和と、画素ブロック２６０３内の画素の値の総和と、を比較し、画素ブロック２６０３が画素ブロック２６０４に対して、画素の値が相対的に低いことを評価する。条件（４）〜（６）が全て満たされる場合には、画素ブロック２６０３は、縦線を構成すると判定される。
【００９６】
条件（１）〜（３）、または、条件（４）〜（６）を評価した結果、いずれか一方において、画素ブロック２６０３は縦線を構成すると判定された場合には、線判定部２５０３は、注目画素は、縦線上に位置する線画素である、と判定する。
【００９７】
図１９は、図１８（Ａ）の線パターン２６００を用いた判定の例を示す図である。図１９（Ａ）〜（Ｃ）には、線パターン２６００に対応する縦５画素×横７画素領域内の判定信号（最小成分値Ｖｍｉｎ）２７００、２７１０、２７２０が示されている。判定信号２７００は、白地に縦線がある部分の画像を示す。ハッチングされた複数個の画素は、縦線を構成している。説明の便宜上、判定信号が、０〜２５５の２５６階調の値を示す場合に、白の画素は、対応する判定信号の値が「２５５」であり、シングルハッチングされた画素は、対応する判定信号の値が「１２８」であり、クロスハッチングされた画素は、対応する判定信号の値が「０」であるとする。また、上記条件（１）〜（６）の閾値１は２０であり、閾値２は２００であるとする。
【００９８】
判定信号２７００に上記条件（１）〜（６）を適用して、真偽を判定した結果は、以下の通りである。
（１）ＭＡＸ（２７０２）−  ＭＩＮ（２７０２）  ≦  閾値１
１２８−１２８  ≦  ２０  →  真
（２）ＭＡＸ（２７０３）−  ＭＩＮ（２７０３）  ≦  閾値１
０−０  ≦  ２０  →  真
（３）ＡＬＬ（２７０３）≦  ＡＬＬ（２７０２）−  閾値２
０×５  ≦  １２８×５  −  ２００  →  真
（４）ＭＡＸ（２７０４）−  ＭＩＮ（２７０４）  ≦  閾値１
１２８−１２８  ≦  ２０  →  真
（５）ＭＡＸ（２７０３）−  ＭＩＮ（２７０３）  ≦  閾値１
０−０  ≦  ２０  →  真
（６）ＡＬＬ（２７０３）≦  ＡＬＬ（２７０４）−  閾値２
０×５  ≦  １２８×５  −  ２００  →  真
このように、条件（１）〜（３）がすべて真のため、注目画素は、縦線上に位置する線画素であると判定される。また、条件（４）〜（６）もすべて真であるので、こちらの条件からも、注目画素は、縦線上に位置する線画素であると判定される。
【００９９】
図１９（Ｂ）の判定信号２７１０は、白地に横線がある部分の画像を示す。判定信号２７１０に上記条件（１）〜（６）を適用して、真偽を判定した結果は、以下の通りである。（１）偽、（２）偽、（３）偽、（４）偽、（５）偽、（６）偽
この結果、注目画素は、縦線上に位置する線画素でないと判定される。
【０１００】
図１９（Ｃ）の判定信号２７２０は、白地に斜め線がある部分の画像を示す。判定信号２７２０に上記条件（１）〜（６）を適用して、真偽を判定した結果は、以下の通りである。
（１）偽、（２）偽、（３）真、（４）偽、（５）偽、（６）真
この結果、注目画素は、縦線上に位置する線画素でないと判定される。
【０１０１】
図２０は、図１８（Ｂ）〜（Ｄ）の線パターン２６１０〜２６３０を用いた判定の例を示す図である。図２０（Ａ）の判定信号２８１０は、白地に横線がある部分の画像を示す。図２０（Ｂ）、（Ｃ）の判定信号２８２０、２８３０は、白地に斜め線がある部分の画像を示す。図２０（Ａ）〜（Ｃ）の例では、詳細は省略するが、注目画素は、いずれも線画素であると判定される。
【０１０２】
線の太さによっては、本手法では判定できない場合もある。ある程度の太さを有する線分上の注目画素は、図１８（Ａ）〜（Ｄ）に示すいずれのパターンによっても線画素であると判定されない。しかしながら、この場合には、適応的スムージング処理部２４０１以降の処理で、該太い線分が、検出されるため問題とはならない。このような太い線分は、平滑化処理された画像信号がエッジ強調部２４０２で強調され、その後、閾値判定部２４０３で閾値処理されたときに検出される。線判定部２５０３による判定は、高周波の極細い線が、平滑化処理部２５０２によって平滑化されることを避けることを目的としている。
【０１０３】
図２１は、適応的スムージング処理部２４０１による平滑化の周波数特性２９００の一例を示す図である。横軸は空間周波数特性を示し、縦軸はそれに対応する周波数応答を示す。高周波の帯域になればなるほど周波数応答が小さくなり、ある空間周波数以上（２９０２）では応答はない。このような平滑化の周波数特定を有する適応的スムージング処理部２４０１による処理を含む、網点内文字判定を行ったときの例を、図２２を用いて説明する。
【０１０４】
図２２は、網点内文字判定部１００５による網点内文字判定の例を示す図である。図２２（Ａ）の画像３０００は、網点画像の一部を抽出したものである。この網点の出力線数は高く、図２１に示すフィルタの周波数特性で言えば、空間周波数が２９０３の位置にあるような特性を持つ網点である。よって、網点画像３０００に図２１の空間周波数特性を持つフィルタにてフィルタ処理を施すと、網点の周期構造は消滅し、平滑化画像３０１０を得る。
【０１０５】
同じ線数の網点内に文字がある場合を図２２（Ｂ）で説明する。網点画像３０２０内には文字が印字されていて、この画像に対して適応的スムージング処理部２４０１による処理を実施すると、平滑化画像３０３０が得られる。網点部は平滑化されて網点の周期構造が消滅し、文字部は適応処理により平滑化が除外され、文字領域３０３１が明瞭に残る。この画像をエッジ強調部２４０２にてエッジ強調すると図２２（Ｃ）の画像３０４０が得られる。画像３０４０では、文字のエッジが強調される。エッジ強調された画像を閾値判定部２４０３にて閾値判定処理すると、網点内文字判定信号２４０４（図１６）によって示される画像３０５０を得る。黒い部分が網点内文字として判定された領域である。実施例では細い文字を例に示したため、文字全体を網点内文字として抽出している。図示しないが、文字サイズが大きくなると、文字全体ではなく、文字のエッジ部（輪郭）を抽出するようになる。
【０１０６】
Ａ−３−４．属性フラグ生成部１００６の説明
属性フラグ生成部１００６は、文字判定部１００３から入力される文字判定信号と、網点判定部１００４から入力される網点判定信号と、網点内文字判定部１００５から入力される網点内文字判定信号と、に基づいて、画素ごとに属性フラグを生成する。生成される属性フラグは、次のようにして決定される。
（１）網点判定信号が「１」であり、かつ、文字判定信号が「０」であり、かつ、網点内文字判定信号が「０」である場合に、属性フラグは「網点」を示す値に決定され、網点フラグ１００８が「１」となり、文字フラグ１００７と網点内文字フラグ１００９は「０」となる。
（２）網点判定信号が「０」であり、かつ、文字判定信号が「１」である場合には、属性フラグは、「文字」を示す値に決定され、文字フラグ１００７が「１」となり、網点フラグ１００８と網点内文字フラグ１００９は「０」となる。
（３）網点判定信号が「１」であり、かつ、網点内文字判定信号が「１」である場合には、属性フラグは、「網点内文字」を示す値に決定され、網点内文字フラグ１００９が「１」となり、文字フラグ１００７と網点フラグ１００８は「０」となる。
（４）上記以外の場合には、属性フラグは、「自然画、写真画、階調画像」を示す値に決定され、文字フラグ１００７と網点フラグ１００８と網点内文字フラグ１００９は全て「０」となる。
【０１０７】
このように画素ごとの属性フラグを示すフラグデータが生成されるので、該フラグデータを用いることで、画素ごとの属性に応じて、エッジ強調量、色再現方法、画像形成方法などの種々の画像処理方法を制御することができる。
【０１０８】
Ａ−３−５．印刷処理の説明
以上を踏まえて、具体的な印刷処理について説明する。上述したように、第２入力処理部１０４によってスキャンデータから生成される処理済データと、領域分離処理部１０３によって生成されるフラグデータとは、圧縮されてメインメモリ１１３に格納される。ここで説明するのは、圧縮済みの処理済画像データおよび圧縮済みのフラグデータ用いて実行される印刷処理である。
【０１０９】
データ復号部１０９は、印刷実行部１４０の印刷可能になったタイミングに合わせて、メインメモリ１１３に格納された圧縮済みの処理済画像データおよび圧縮済みのフラグデータを読出し、復号処理を行なう。復号された処理済画像データは、第２画像メモリ１１６に格納され、復号されたフラグデータについては、第２フラグメモリ１１５に格納される。
【０１１０】
出力処理部１１０は、第２画像メモリ１１６に格納された処理済画像データと、第２フラグメモリ１１５に格納されたフラグデータと、を用いて、印刷データを生成し、印刷実行部１４０に出力する。
【０１１１】
図２３は、出力処理部１１０の構成を示すブロック図である。第２画像メモリ１１６および第２フラグメモリ１１５に、印刷可能となる予め設定されたデータ量の処理済画像データおよびフラグデータが格納されると、該処理済画像データおよびフラグデータは、出力処理部１１０に転送される。
【０１１２】
第２画像メモリ１１６から転送された処理済画像データ（ＲＧＢ画像データ）は、ＲＧＢ→ＣＭＹＫ変換部６０１、６０２にて、ＣＭＹＫ画像データに変換される。ＣＭＹＫ画像データは、印刷に用いられる色材に対応する色成分を含む表色系、本実施例では、Ｃ（シアン）、Ｍ（マゼンタ）、Ｙ（イエロ）、およびＫ（ブラック）の成分を含むＣＭＹＫ表色系の色値（ＣＭＹＫ値とも呼ぶ）で、各画素の色を示す画像データである。ＲＧＢ→ＣＭＹＫ変換部６０１と６０２の違いは、前者が文字画像用の変換を行い、後者が写真画、網点用の変換を行なう点である。
【０１１３】
通常、原稿中に印刷された文字の色は、黒単色か、せいぜい数色の程度である。そこで実施例では、このＲＧＢ→ＹＭＣＫ変換部６０１は、予め定義された色（Ｃ、Ｍ、Ｙ、Ｋ）のパターンのうち、最も近似する色に変換する。例えば、Ｒ≒Ｇ≒Ｂ≒０の場合には、着目画素が黒であると判定してよいので、Ｃ＝Ｍ＝Ｙ＝０、Ｋ＝２５５というパターンに変換する。ＲＧＢ→ＹＭＣＫ変換部６０１は、入力したＲ、Ｇ、Ｂが８ビットで表現されている場合、それぞれの上位数ビット（２ビット程度で良いであろう）を入力し、ＣＭＹＫ（各８ビット）のデータを出力するルックアップテーブル（ＬＵＴ）を用いて行われる。
【０１１４】
ＲＧＢ→ＹＭＣＫ変換部６０２は、高い精度でＲＧＢ→ＹＭＣＫへの変換を行なう。この変換は、例えば、マトリクス演算で行われる。あるいは、ＲＧＢの計２４ビットアドレス入力、ＹＭＣＫの３２ビット出力のＬＵＴを用いて行われる。
【０１１５】
合成部６０３は、第２フラグメモリ１１５からの転送されるフラグデータに基づき、上記２つの変換部６０１、６０２から出力されるＣＭＹＫ画像データを合成する。具体的には、フラグデータに含まれる注目画素の属性フラグが「文字」を示す場合には、ＲＧＢ→ＣＭＹＫ変換部６０１から出力された注目画素のＣＭＹＫ値を選択し、出力する。また、注目画素の属性フラグが、「自然画」、または、「網点」を示す場合には、ＲＧＢ→ＣＭＹＫ変換部６０２から出力された注目画素のＣＭＹＫ値を選択し、出力する。そして、注目画素の属性フラグが、「網点内文字」を示す場合には、２つの変換部６０１、６０２から出力される２個のＣＭＹＫ値を、所定の重みに従って合成して得られる値（例えば、平均値）を生成し、出力する。
【０１１６】
合成部６０３から出力された各画素のＣＭＹＫ値を示す信号は、フィルタ処理部６０４〜６０６に供給される。これらフィルタ処理部６０４〜６０６は、内部に数ライン分のバッファを有し、２次元フィルタ処理を行なう。フィルタ処理部６０４〜６０６の違いは、フィルタ処理のエッジ強調の度合を決定する係数が異なる点である。
【０１１７】
フィルタ処理部６０４は、「文字」に適したフィルタ処理を行なう。フィルタ処理部６０５は、「網点内文字」に適したフィルタ処理を行なう。フィルタ処理部６０６は、「写真画」又は「網点」に適したフィルタ処理を行なう。各フィルタ処理部のエッジ強調の度合は、フィルタ処理部６０４＞フィルタ処理部６０５＞フィルタ処理部６０６の順である。ただし、上記エッジ強調の度合は一例に過ぎず、必ずしもこれに限るものではない。
【０１１８】
上記は、平滑化処理の強度が、フィルタ処理部６０４＜フィルタ処理部６０５＜フィルタ処理部６０６の順であると言い換えることもできる。
【０１１９】
セレクタ６０７は、注目画素の属性フラグが「文字」を示す場合に、フィルタ処理部６０４から出力された処理済みのＣＭＹＫ値を選択し、出力する。セレクタ６０７は、注目画素の属性フラグが「網点内文字」を示す場合に、フィルタ処理部６０５からから出力された処理済みのＣＭＹＫ値を選択し、出力する。セレクタ６０７は、注目画素の属性フラグが「写真」又は「網点」を示す場合に、フィルタ処理部６０６からから出力された処理済みのＣＭＹＫ値を選択し、出力する。
【０１２０】
セレクタ６０７から出力された処理済みのＣＭＹＫ値は、ガンマ補正部６０８、６１０に入力される。ガンマ補正部６０８は、「文字」、「網点内文字」に適した補正を行ない、ガンマ補正部６１０は「網点」、「写真画」に適した補正を行なう。
【０１２１】
ガンマ補正部６０８から出力される補正済みのＣＭＹＫ値は、誤差拡散処理部６０９に入力される。誤差拡散処理部６０９は、入力されるＣＭＹＫ値を、誤差拡散法に従うハーフトーン処理によって、ドットの形成状態を示すドット値に変換し、出力する。文字の場合には、印刷時に生成されるドットが分散されにくいことが望ましいので、ハーフトーン処理には、誤差拡散法が用いられることが好ましい。
【０１２２】
ガンマ補正部６１０から出力される補正済みのＣＭＹＫ値は、ディザ処理部６１１に入力される。ディザ処理部６１１は、入力されるＣＭＹＫ値を、ディザマトリクスを用いるディザ法に従うハーフトーン処理によって、ドットの形成状態を示すドット値に変換し、出力する。写真画、網点の場合には、階調性が重視されるので、ハーフトーン処理には、ディザ法が用いられることが好ましい。
【０１２３】
セレクタ６１２は、注目画素の属性フラグが「文字」または「網点内文字」を示す場合には、誤差拡散処理部６０９から出力されるドット値を選択し、印刷実行部１４０に出力する。また、セレクタ６１２は、注目画素の属性フラグが「写真」または「網点」を示す場合には、ディザ処理部６１１から出力されるドット値を選択し、印刷実行部１４０に出力する。
【０１２４】
以上のように、文字、網点、および、網点内文字の領域を適切に抽出することで、その属性に応じた画像処理を実施可能となる。従って、文字は鮮明に、写真は滑らかな再現をすることが可能となる。特に、網点を含む原稿内で、網点と文字とを識別し、文字に平滑化処理を施すことなく、網点を平滑化することが可能なため、好適なモアレ除去が可能となる。その結果、網点を含む原稿内の写真にはスムージング処理を施し、モアレ除去した上でディザ処理を実施することで階調性の高い画像を印刷できる。また、網点を含む原稿内の文字には、エッジ強調処理を施した上で誤差拡散系の処理を実施することで、くっきりとした読みやすい文字を印刷できる。
【０１２５】
以上説明した第１実施例によれば、最小成分データ生成部１００２（図１）は、スキャンデータに含まれる複数個の画素のＲＧＢ値に対応する複数個の最小成分値Ｖｍｉｎを画素ごとに生成する。すなわち、最小成分データ生成部１００２は、複数個の最小成分値Ｖｍｉｎを含む最小成分データを生成する。図３のエッジ強調部１１０２と閾値判定部１１０３とは、最小成分値Ｖｍｉｎを示す判定信号を用いて、内エッジ信号を画素ごとに生成する。すなわち、図３のエッジ強調部１１０２と閾値判定部１１０３とは、最小成分データを用いて、複数個の内エッジ画素を示す内エッジデータを生成する。図３のエッジ強調部１１０２と閾値判定部１１０４とは、最小成分値Ｖｍｉｎを示す判定信号を用いて、外エッジ信号を画素ごとに生成する。すなわち、図３のエッジ強調部１１０２と閾値判定部１１０４とは、最小成分データを用いて、複数個の外エッジ画素を示す外エッジデータを生成する。そして、図３のエリア積算部１１０５、１１０６、閾値判定部１１０７との全体は、内エッジ信号と外エッジ信号とに基づいて、各画素が文字画素であるか否かを画素ごとに判定する。すなわち、エリア積算部１１０５、１１０６、閾値判定部１１０７、１１０８、総合判定部１１０９との全体は、内エッジデータと外エッジデータとを用いて、スキャンデータによって示されるスキャン画像内の文字を示す領域に位置する複数個の文字画素を特定する。
【０１２６】
この結果、例えば、最小成分データをもＣＭＹＫを用いることによって、輝度データを用いる場合には特定できない文字画素を特定し得る。この結果、スキャン画像内の文字を示す領域に位置する複数個の文字画素を適切に特定できる。
【０１２７】
より詳しく説明する。図２４は、スキャンデータの最小成分値と最大成分値の説明図である。図２４（Ａ）〜図２４（Ｅ）には、ＲＧＢ値の一例として、シアン（Ｃ）、マゼンタ（Ｍ）、イエロ（Ｙ）、黒（Ｋ）、白（Ｗ）のＲＧＢ値が、棒グラフで図示されている。図５に示すように、Ｃ、Ｍ、Ｙ、Ｋ、ＷのＲＧＢ値（Ｒ、Ｇ、Ｂ）は、それぞれ、（０、２５５、２５５）、（２５５、０、２５５）、（２５５、２５５、０）、（０、０、０）、（２５５、２５５、２５５）である。
【０１２８】
これらのＲＧＢ値に対応する輝度値Ｙは、例えば、Ｙ＝０．２９９×Ｒ＋０．５８７×Ｇ＋０．１１４×Ｂの式を用いて算出できる。Ｃ、Ｍ、Ｙ、Ｋ、Ｗの輝度値（０〜２５５の値で表す）は、約１８６、１１３、２２６、０、２５５であり、それぞれに異なる値となる（図２４）。これに対して、Ｃ、Ｍ、Ｙ、Ｋ、Ｗの最小成分値Ｖｍｉｎは、図５に示すように、０、０、０、０、２５５となり、白（Ｗ）を除いて同じ値となる。
【０１２９】
印刷物である原稿では、文字の色と背景の色とは、一方が濃い色を有し、他方が薄い色を有する場合が多い。このために、文字と背景のうち、一方は、用紙の地色（白）を示す部分を比較的多く含み、他方は、Ｃ、Ｍ、Ｙ、Ｋのドットを示す部分を比較的多く含む場合が多い。図２４に示すように、最小成分データでは、Ｃ、Ｍ、Ｙ、Ｋの画素の値と、白を示す部分の画素の値と、の間で、大きな差がある。このために、最小成分データを用いて、文字のエッジを特定すると、文字のエッジを構成する内エッジ画素や外エッジ画素を、適切に特定できる可能性が高い。特に、イエロ（Ｙ）は、Ｃ、Ｍ、Ｋと比較して濃度が低い（輝度が高い）。このために、用紙の地色（白）の背景に、イエロの文字がある場合には、仮に輝度データを二値化すると、該イエロの文字のエッジを構成する内エッジ画素や外エッジ画素を、適切に特定できない場合がある。本実施例では、このような場合でも該イエロの文字のエッジを構成する内エッジ画素や外エッジ画素を、適切に特定できる。したがって、本実施例によれば、複数個の文字画素を適切に特定できる。
【０１３０】
さらに、第１実施例では、網点判定部１００４は、最小成分データ生成部１００２から入力される最小成分値Ｖｍｉｎを示す判定信号を用いて、注目画素が網点であるか否かを示す網点判定信号１２１５を出力する（図７）。すなわち、網点判定部１００４は、最小成分データを用いて、スキャン画像内の文字を示す領域とは異なる領域である網点領域に位置する複数個の網点画素を特定する。この結果、本実施例によれば、文字画素に加えて、複数個の網点画素を適切に特定することができる。
【０１３１】
より具体的には、図７の網点判定部１００４のエッジ強調部１２０２と閾値判定部１２０３とは、複数個の内エッジ画素を示す内エッジデータを生成する。図７の網点判定部１００４のエッジ強調部１２０２と閾値判定部１２０４とは、複数個の外エッジ画素を示す外エッジデータを生成する。そして、孤立量判定部１２０５、１２０６、ＯＲ処理部１２０７、積算処理部１２０９、閾値判定部１２１１、総合判定部１２１３は、内エッジデータと外エッジデータとを用いて、網点領域に位置する複数個の網点画素を特定する。上述したように、最小成分データでは、Ｃ、Ｍ、Ｙ、Ｋの画素の値と、白を示す部分の画素の値と、の間で、大きな差がある。この結果、網点が白い下地上に、形成されている場合には、上述したように、Ｃ、Ｍ、Ｙ、Ｋのいずれかの色を有する網点１６０２と白の下地１６０３（図８）とエッジを構成する内エッジ画素や外エッジ画素を適切に特定できる。この結果、スキャン画像内の複数個の文字画素に加えて、複数個の網点画素を適切に特定できる。
【０１３２】
また、上記第１実施例によれば、第２入力処理部１０４（図１）は、スキャンデータのうち、特定済みの複数個の文字画素の値に対して第１の画像処理（具体的には、文字の鮮鋭度を強調する処理）を実行し、複数個の網点画素の値に対して第１の画像処理とは異なる第２の画像処理（例えば、ローパスフィルタ処理）を実行して、処理済み画像データを生成する。このように、文字画素の値と、網点画素の値と、に対して、互いに異なる画像処理が実行されるので、スキャンデータに対する適切な画像処理を実現できる。
【０１３３】
さらに、図２３に示すように、出力処理部１１０は、処理済み画像データを用いて、印刷実行部１４０に印刷を実行させるための印刷データを生成する。この結果、適切な印刷データを生成することができる。例えば、印刷データの生成過程において、上述したように、文字画素と網点画素とで異なるハーフトーン処理を適用でき、また、異なる補正処理を適用できるので、適切な印刷データを生成できる。
【０１３４】
Ｂ．第２実施例
図２５は、第２実施例の領域分離処理部１０３Ｂの構成を示すブロック図である。領域分離処理部１０３Ｂは、図２の第１実施例の領域分離処理部１０３が備える最小成分データ生成部１００２と、３個の判定部１００３〜１００５と、属性フラグ生成部１００６と、に加えて、反転最小成分データ生成部１００２Ｂと、文字判定部１００３Ｂと、網点判定部１００４Ｂと、網点内文字判定部１００５Ｂと、３個のＯＲ処理部１０１１Ｂ〜１０１３Ｂと、を備える。これらの判定部１００３Ｂ〜１００５Ｂは、同名の判定部１００３〜１００５と同一である。３個のＯＲ処理部１０１１Ｂ〜１０１３Ｂは、それぞれ、入力される２個の信号の論理和を生成して、出力する回路である。
【０１３５】
反転最小成分データ生成部１００２Ｂには、最小成分データ生成部１００２と同様に、第１入力処理部１０２から出力されるスキャンデータの各画素の値（ＲＧＢ値）を示す画素単位の入力信号１００１が、画素ごとに入力される。反転最小成分データ生成部１００２Ｂは、入力信号１００１によって示されるＲＧＢ値に基づいて、反転最小成分値ＶＲｍｉｎを示す信号を、属性判定用の画素単位の判定信号として生成する。
【０１３６】
反転最小成分値ＶＲｍｉｎは、以下のように生成される。先ず、反転最小成分データ生成部１００２Ｂは、入力信号１００１によって示されるＲＧＢ値に含まれる複数個の成分値（Ｒ値、Ｇ値、Ｂ値）が反転された反転済みの色値（反転済みのＲＧＢ値）を生成する。反転前のＲＧＢ値を（Ｒｉｎ、Ｇｉｎ、Ｂｉｎ）とすると、反転済みのＲＧＢ値（Ｒｏｕｔ、Ｇｏｕｔ、Ｂｏｕｔ）は、以下の式（１）〜（３）で表される。
【０１３７】
Ｒｏｕｔ＝Ｒｍａｘ−Ｒｉｎ          …（１）
Ｇｏｕｔ＝Ｇｍａｘ−Ｇｉｎ          …（２）
Ｂｏｕｔ＝Ｂｍａｘ−Ｂｉｎ          …（３）
【０１３８】
ここで、Ｒｍａｘ、Ｇｍａｘ、Ｂｍａｘは、それぞれ、Ｒ値、Ｇ値、Ｂ値が取り得る値の最大値であり、本実施例では、Ｒｍａｘ＝Ｇｍａｘ＝Ｂｍａｘ＝２５５である。反転最小成分データ生成部１００２Ｂは、反転済みのＲＧＢ値から、反転最小成分値ＶＲｍｉｎを取得する。反転最小成分値ＶＲｍｉｎは、該反転済みのＲＧＢ値に含まれる複数個の成分値（Ｒ値、Ｇ値、Ｂ値）のうちの最小値である。
【０１３９】
ここで、入力信号１００１によって示されるＲＧＢ値に含まれる複数個の成分値（Ｒ値、Ｇ値、Ｂ値）のうちの最大値を最大成分値Ｖｍａｘとする。反転最小成分値ＶＲｍｉｎは、最大成分値Ｖｍａｘの反転値である（ＶＲｍｉｎ＝（２５５−Ｖｍａｘ））。このために、反転最小成分値ＶＲｍｉｎは、スキャンデータの画素の値に含まれる複数個の成分値のうちの最大値に基づく値である、とも言うことができる。
【０１４０】
反転最小成分データ生成部１００２Ｂにて生成された反転最小成分値ＶＲｍｉｎを示す判定信号は、文字判定部１００３Ｂと、網点判定部１００４Ｂと、網点内文字判定部１００５Ｂと、にそれぞれ出力される。したがって、文字判定部１００３Ｂと、網点判定部１００４Ｂと、網点内文字判定部１００５Ｂとは、入力される判定信号（反転最小成分値ＶＲｍｉｎ）を用いて、第１実施例にて説明した文字判定、網点判定、網点内文字判定を、それぞれ、実行し、判定結果を示す結果信号（文字判定信号、網点判定信号、網点内文字判定信号）を出力する。
【０１４１】
ＯＲ処理部１０１１Ｂには、最小成分値Ｖｍｉｎを用いて判定を行う文字判定部１００３から出力される第１文字判定信号と、反転最小成分値ＶＲｍｉｎを用いて判定を行う文字判定部１００３Ｂから出力される第２文字判定信号と、が入力される。ＯＲ処理部１０１１Ｂは、第１文字判定信号と、第２文字判定信号と、の論理和を生成して、合成文字判定信号として出力する。
【０１４２】
ＯＲ処理部１０１２Ｂには、最小成分値Ｖｍｉｎを用いて判定を行う網点判定部１００４から出力される第１網点判定信号と、反転最小成分値ＶＲｍｉｎを用いて判定を行う網点判定部１００４Ｂから出力される第２網点判定信号と、が入力される。ＯＲ処理部１０１２Ｂは、第１網点判定信号と、第２網点判定信号と、の論理和を生成して、合成網点判定信号として出力する。
【０１４３】
ＯＲ処理部１０１３Ｂには、最小成分値Ｖｍｉｎを用いて判定を行う網点内文字判定部１００５から出力される第１網点内文字判定信号と、反転最小成分値ＶＲｍｉｎを用いて判定を行う網点内文字判定部１００５Ｂから出力される第２網点内文字判定信号と、が入力される。ＯＲ処理部１０１３Ｂは、第１網点内文字判定信号と、第２網点内文字判定信号と、の論理和を生成して、合成網点内文字判定信号として出力する。
【０１４４】
属性フラグ生成部１００６は、入力される合成文字判定信号と、合成網点判定信号と、合成網点内文字判定信号と、に基づいて、第１実施例と同様に、画素ごとに属性フラグを生成する。
【０１４５】
以上説明した第２実施例では、反転最小成分データ生成部１００２Ｂは、スキャンデータに含まれる複数個の画素のＲＧＢ値に対応する複数個の反転最小成分値ＶＲｍｉｎを画素ごとに生成する。すなわち、反転最小成分データ生成部１００２Ｂは、複数個の反転最小成分値ＶＲｍｉｎを含む反転最小成分データを生成する。反転最小成分データは、最小成分データ生成部１００２によって生成される最小成分データとは異なる処理を用いて生成されるデータである。
【０１４６】
図２５の文字判定部１００３Ｂは、図２、図３の文字判定部１００３と同一であるので、文字判定部１００３Ｂは、反転最小成分データを用いて、複数個の内エッジ画素を示す内エッジデータを生成し、反転最小成分データを用いて、複数個の外エッジ画素を示す外エッジデータを生成する。そして、文字判定部１００３Ｂは、該内エッジデータと該外エッジデータとを用いて、第２文字判定信号を生成する。以上のことから、文字判定部１００３と、文字判定部１００３Ｂと、ＯＲ処理部１０１１Ｂと、の全体は、最小成分データ（最小成分値Ｖｍｉｎ）に基づく内エッジデータおよび外エッジデータと、反転最小成分データ（反転最小成分値ＶＲｍｉｎ）に基づく内エッジデータおよび外エッジデータと、からなる４個のエッジデータを用いて、複数個の文字画素を特定していることが解る。この結果、これらの４個のエッジデータを用いて、スキャン画像内の文字画素を、さらに、適切に特定することができる。
【０１４７】
例えば、反転最小成分データを用いることによって、最小成分データのみを用いる場合には特定できない文字画素を特定し得る。この結果、スキャン画像内の複数個の文字画素を適切に特定できる。例えば、図２４に示すように、Ｃ、Ｍ、Ｙ、Ｋ、Ｗの最大成分値Ｖｍａｘは、２５５、２５５、２５５、０、２５５となり、黒（Ｋ）を除いて同じ値となる。上述したように、反転最小成分値ＶＲｍｉｎは、最大成分値Ｖｍａｘの反転値である（ＶＲｍｉｎ＝（２５５−Ｖｍａｘ））ので、Ｃ、Ｍ、Ｙ、Ｋ、Ｗの反転最小成分値ＶＲｍｉｎも、同様に、黒（Ｋ）を除いて同じ値となる。一方で、Ｃ、Ｍ、Ｙ、Ｋ、Ｗの最小成分値Ｖｍｉｎは、白（Ｗ）を除いて同じ値となる。このために、例えば、文字の背景が黒であり、文字がＣ、Ｍ、Ｙのいずれかである場合には、当該文字を構成する文字画素は、最小成分データ（最小成分値Ｖｍｉｎ）を用いる場合には、特定することが困難である。このような文字を構成する文字画素は、反転最小成分データ（反転最小成分値ＶＲｍｉｎ）を用いる場合には、容易に特定することができる。
【０１４８】
また、反転最小成分データ（反転最小成分値ＶＲｍｉｎ）のみを用いる場合には、地色（白）の背景に、Ｃ、Ｍ、Ｙの文字がある場合には、該文字を特定することが困難である。最小成分データを用いる場合には、該文字を容易に特定することができる。
【０１４９】
以上のことから解るように、第２実施例では、最小成分データと、反転最小成分データと、を併用することで、様々な色の背景上にある様々な色の文字を構成する文字画素を適切に特定することができる。
【０１５０】
文字と同様に、網点や網点内文字についても、最小成分データのみでは、特定できない網点を、最小成分データを用いることによって、特定し得る。第２実施例では、網点判定部１００４と、網点判定部１００４Ｂと、ＯＲ処理部１０１２Ｂと、の全体は、最小成分データ（最小成分値Ｖｍｉｎ）と、反転最小成分データ（反転最小成分値ＶＲｍｉｎ）と、を用いて、スキャン画像内の網点画素を、さらに、適切に特定することができる。また、網点内文字判定部１００５と、網点内文字判定部１００５Ｂと、ＯＲ処理部１０１３Ｂと、の全体は、最小成分データ（最小成分値Ｖｍｉｎ）と、反転最小成分データ（反転最小成分値ＶＲｍｉｎ）と、を用いて、スキャン画像内の網点内文字画素を、さらに、適切に特定することができる。
【０１５１】
Ｃ．第３実施例
図２６は、第３実施例の領域分離処理部１０３Ｃの構成を示すブロック図である。領域分離処理部１０３は、最小成分データ生成部１００２と、輝度データ生成部１００２Ｃと、を備えている。最小成分データ生成部１００２は、第１実施例の図２の最小成分データ生成部１００２と同一である。領域分離処理部１０３Ｃは、２個の文字判定部１００３、１００３Ｃと、１個の網点判定部１００４Ｃと、１個の網点内文字判定部１００５Ｃと、を備えている。これらの判定部１００３、１００３Ｃ、１００４Ｃ、１００５Ｃは、第１実施例の同名の判定部１００３〜１００５と同一である。また、領域分離処理部１０３Ｃは、図２５のＯＲ処理部１０１１Ｂと同一のＯＲ処理部１０１１Ｃと、属性フラグ生成部１００６と、を備える。
【０１５２】
輝度データ生成部１００２Ｃには、最小成分データ生成部１００２と同様に、第１入力処理部１０２から出力されるスキャンデータの各画素の値（ＲＧＢ値）を示す画素単位の入力信号１００１が、画素ごとに入力される。輝度データ生成部１００２Ｃは、入力信号１００１によって示されるＲＧＢ値に基づいて、対応する画素の輝度を示す輝度値Ｙを示す信号を、属性判定用の画素単位の判定信号として生成する。輝度値Ｙは、上述したように、例えば、Ｙ＝０．２９９×Ｒ＋０．５８７×Ｇ＋０．１１４×Ｂの式を用いて算出できる。
【０１５３】
最小成分データ生成部１００２によって生成される判定信号（最小成分値Ｖｍｉｎ）は、文字判定部１００３にのみ出力される。文字判定部１００３は、第１実施例にて説明した文字判定を実行し、判定結果を示す文字判定信号を、属性フラグ生成部１００６Ｃに出力する。
【０１５４】
輝度データ生成部１００２Ｃにて生成された輝度値Ｙを示す判定信号は、文字判定部１００３Ｃと、網点判定部１００４Ｃと、網点内文字判定部１００５Ｃと、にそれぞれ出力される。したがって、文字判定部１００３Ｃと、網点判定部１００４Ｃと、網点内文字判定部１００５Ｃとは、入力される判定信号（輝度Ｙ）を用いて、第１実施例にて説明した文字判定、網点判定、網点内文字判定を、それぞれ、実行し、判定結果を示す結果信号（文字判定信号、網点判定信号、網点内文字判定信号）を出力する。
【０１５５】
ＯＲ処理部１０１１Ｃには、最小成分値Ｖｍｉｎを用いて判定を行う文字判定部１００３から出力される第１文字判定信号と、輝度値Ｙを用いて判定を行う文字判定部１００３Ｃから出力される第３文字判定信号と、が入力される。ＯＲ処理部１０１１Ｃは、第１文字判定信号と、第３文字判定信号と、の論理和を生成して、合成文字判定信号として出力する。
【０１５６】
輝度値Ｙを用いて判定を行う網点判定部１００４Ｃから出力される第３網点判定信号と、輝度値Ｙを用いて判定を行う網点内文字判定部１００５Ｃから出力される第３網点内文字判定信号と、は、属性フラグ生成部１００６に入力される。
【０１５７】
属性フラグ生成部１００６は、入力される合成文字判定信号と、第３網点判定信号と、第３網点内文字判定信号と、に基づいて、第１実施例と同様に、画素ごとに属性フラグを生成する。
【０１５８】
以上説明した第３実施例では、輝度データ生成部１００２Ｃは、領域分離処理部１０３Ｃは、スキャンデータに含まれる複数個の画素のＲＧＢ値に対応する複数個の輝度値Ｙを画素ごとに生成する。すなわち、輝度データ生成部１００２Ｃは、複数個の輝度値Ｙを含む輝度データを生成する。輝度データは、最小成分データ生成部１００２によって生成される最小成分データとは異なる処理を用いて生成されるデータである。
【０１５９】
図２６の文字判定部１００３Ｃは、図２、図３の文字判定部１００３と同一であるので、文字判定部１００３Ｃは、輝度データを用いて、複数個の内エッジ画素を示す内エッジデータを生成し、輝度データを用いて、複数個の外エッジ画素を示す外エッジデータを生成する。そして、文字判定部１００３Ｃは、該内エッジデータと該外エッジデータとを用いて、第３文字判定信号を生成する。以上のことから、文字判定部１００３と、文字判定部１００３Ｃと、ＯＲ処理部１０１１Ｃと、の全体は、最小成分データ（最小成分値Ｖｍｉｎ）に基づく内エッジデータおよび外エッジデータと、輝度データ（輝度値Ｙ）に基づく内エッジデータおよび外エッジデータと、からなる４個のエッジデータを用いて、複数個の文字画素を特定していることが解る。この結果、これらの４個のエッジデータを用いて、スキャン画像内の文字画素を、さらに、適切に特定することができる。
【０１６０】
例えば、輝度データを用いることによって、最小成分データのみを用いる場合には特定できない文字画素を特定し得る。この結果、スキャン画像内の複数個の文字画素を適切に特定できる。例えば、図２４に示すように、Ｃ、Ｍ、Ｙ、Ｋ、Ｗの最小成分値Ｖｍｉｎは、白（Ｗ）を除いて同じ値となる。このために、例えば、文字の背景がシアン（Ｃ）であり、文字がマゼンタ（Ｍ）やイエロ（Ｙ）である場合には、当該文字を構成する文字画素は、最小成分データ（最小成分値Ｖｍｉｎ）を用いる場合には、特定することが困難である。Ｃ、Ｍ、Ｙでは、輝度が異なるために、このような文字は、輝度データ（輝度値Ｙ）を用いる場合には、特定し得る。
【０１６１】
また、輝度データのみを用いる場合には、上述したように、地色（白）の背景に、イエロの文字がある場合には、該文字を特定することが困難である。最小成分データを用いる場合には、該文字を容易に特定することができる。
【０１６２】
以上のことから解るように、第３実施例では、最小成分データと、輝度データと、を併用することで、様々な色の背景上にある様々な色の文字を構成する文字画素を適切に特定することができる。
【０１６３】
また、第３実施例では、網点や網点内文字については、輝度データのみを用いて特定するので、第２実施例と比較して、領域分離処理部１０３Ｃの構成を簡素化することができる。例えば、領域分離処理部１０３Ｃを構成する部品点数を削減することができる。
【０１６４】
Ｄ．変形例
【０１６５】
（１）第２実施例の反転最小成分データ生成部１００２Ｂに代えて、最大成分データ生成部を備えても良い。最大成分データ生成部は、スキャンデータに含まれる複数個の画素のＲＧＢ値に対応する最大成分値Ｖｍａｘを画素ごとに生成する。最大成分値Ｖｍａｘは、上述したように、ＲＧＢ値に含まれる複数個の成分値（Ｒ値、Ｇ値、Ｂ値）のうちの最大値である。すなわち、最大成分データ生成部は、複数個の最大成分値Ｖｍａｘを含む最大成分データを生成する。反転最小成分データと、最大成分データと、は、両方とも、スキャンデータの各画素の値に含まれる複数個の成分値のうちの最大値に基づく値（最大値の反転値、あるいは、最大値そのもの）を、画素の値とする画像データである。
【０１６６】
（２）第１実施例の最小成分データ生成部１００２に代えて、例えば、第２実施例の反転最小成分データ生成部１００２Ｂを備えても良い。この場合には、例えば、黒色の背景上に位置する白やＣ、Ｍ、Ｙの文字を構成する文字画素を適切に特定することができる。また、最小成分データ生成部１００２に代えて、変形例（１）の最大成分データ生成部を備えても良い。
【０１６７】
（３）第２実施例では、最小成分データと、反転最小成分データと、を用いているが、さらに、輝度データを用いても良い。例えば、図２５の領域分離処理部１０３Ｂは、図２６の輝度データ生成部１００２Ｃと、文字判定部１００３Ｃと、網点判定部１００４Ｃと、網点内文字判定部１００５Ｃと、を、さらに、備えても良い。この場合には、ＯＲ処理部１０１１Ｂは、第１文字判定信号と、第２文字判定信号と、文字判定部１００３Ｃから出力される第３文字判定信号と、の論理和を生成して、合成文字判定信号として出力する。また、ＯＲ処理部１０１２Ｂは、第１網点判定信号と、第２網点判定信号と、網点判定部１００４Ｃから出力される第３網点判定信号と、の論理和を生成して、合成網点判定信号として出力する。ＯＲ処理部１０１３Ｂは、第１網点内文字判定信号と、第２網点内文字判定信号と、網点内文字判定部１００５Ｃから出力される第３網点内文字判定信号と、の論理和を生成して、合成網点内文字判定信号として出力する。
【０１６８】
同様に、第２実施例では、最小成分データと、輝度データと、に加えて、さらに、反転最小成分データと、を用いてもよい。例えば、図２６の領域分離処理部１０３Ｃは、図２５の反転最小成分データ生成部１００２Ｂと、文字判定部１００３Ｂと、を、さらに備えてもよい。この場合には、ＯＲ処理部１０１１Ｃは、第１文字判定信号と、第３文字判定信号と、文字判定部１００３Ｂから出力される第２文字判定信号と、の論理和を生成して、合成文字判定信号として出力する。
【０１６９】
（４）上記第１実施例において、領域分離処理部１０３は、網点内文字判定部１００５を備えなくても良い。この場合には、属性フラグ生成部１００６は、文字判定部１００３から出力される文字判定信号と、網点判定部１００４から出力される網点判定信号と、に基づいて、属性フラグを生成する。例えば、属性フラグ生成部１００６は、文字判定信号が「１」である画素の属性フラグを、「文字」を示す値に決定し、文字判定信号が「０」であり、かつ、網点判定信号が「１」である画素の属性フラグを、「網点」を示す値に決定し、それ以外の画素の属性フラグを「その他」を示す値に決定しても良い。
【０１７０】
また、第１実施例において、領域分離処理部１０３は、網点内文字判定部１００５と網点内文字判定部１００５と属性フラグ生成部１００６とを備えなくてもよい。この場合には、領域分離処理部１０３は、文字判定部１００３から出力される文字判定信号をそのまま属性フラグとして出力する。この場合には属性フラグは、「文字」を示す値と、「その他」を示す値と、の２種類である。
【０１７１】
第２実施例や第３実施例においても領域分離処理部１０３Ｂ、１０３Ｃにおいて、網点内文字判定部や網点判定部は、適宜に省略されても良い。
【０１７２】
（５）上記第１実施例において、文字判定部１００３が、内エッジデータと、外エッジデータと、を用いて、文字画素を特定する方法は、一例であり、これに限られない。例えば、文字判定部１００３は、内エッジデータと、外エッジデータと、の論理和を算出することによって、複数個のエッジ画素を示す合成エッジデータを生成する。文字判定部１００３は、合成エッジデータに対して、エッジを膨張させる膨張処理と、エッジを収縮させる収縮処理と、を所定回数繰り返す、いわゆるモフォロジー処理する。モフォロジー処理後の合成エッジデータによって特定される画素が、文字画素として特定される。モフォロジー処理によって、これによって、文字や細線などの連続性のあるエッジが、途切れて特定されることを防止することができる。また、どのエッジによって囲まれた文字の内部の画素も特定できる。さらに、外エッジデータと内エッジデータとの論理和を取る場合には、文字や細線が本来より太く特定される。このために、文字判定部１００３は、例えば、合成エッジデータに対して、最後に収縮処理を行うことで、文字や細線が本来より太く特定されることを低減しても良い。
【０１７３】
あるいは、文字判定部１００３は、合成エッジデータによって特定される複数個のエッジ画素のうち、所定個数以上、上下左右に連続している画素群を特定し、該画素群を文字画素として特定し、所定個数以上連続していない画素、すなわち、孤立している画素は、文字画素として特定しなくても良い。第２実施例、第３実施例の文字判定部１００３Ｂ、１００３Ｃについても同様である。
【０１７４】
（６）上記第１実施例において、網点判定部１００４が、内エッジデータと、外エッジデータと、を用いて、網点画素を特定する方法は、一例であり、これに限られない。網点判定部１００４は、内エッジデータと、外エッジデータと、の論理和を算出することによって、複数個のエッジ画素を示す合成エッジデータを生成する。そして、網点判定部１００４は、合成エッジデータによって特定される複数個のエッジ画素のうち、所定個数以上、上下左右に連続していない画素、すなわち、孤立している画素を特定する。そして、網点判定部１００４は、孤立している画素を、単位面積当たりに所定の割合以上含む領域を特定し、該領域内の複数個の画素を網点画素として特定しても良い。第２実施例、第３実施例の網点判定部１００４Ｂ、１００４Ｃについても同様である。
【０１７５】
（７）上記各実施例では、処理済画像データは、印刷実行部１４０によって、処理済画像を印刷するために用いられている（図２３）。これに限らず、処理済画像データは、処理済画像を液晶ディスプレイなどの表示部に表示するために用いられても良い。
【０１７６】
（８）上記各実施例では、入力信号１００１（図１）は、ＲＧＢ値である。これに代えて、他の表色系の色値が用いられても良い。例えば、スキャンデータの各画素の値は、ＣＭＹ表色系の色値に変換された後に、入力信号１００１として、領域分離処理部１０３に入力されても良い。
【０１７７】
（９）上記各実施例の領域分離処理部１０３に含まれる各部、例えば、文字判定部１００３、網点判定部１００４、網点内文字判定部１００５が実行する具体的な処理は、一例であり、適宜に変更される。例えば、図３のエリア積算部１１０５、１１０６が用いる縦３画素×横３画素の周辺範囲は、他のサイズの範囲、例えば、縦３画素×横５画素あるいは縦５画素×横５画素の範囲であっても良い。また、図１２の積算処理部１２０９は、３種類の積算範囲を用いているが、これらの積算範囲のサイズや種類数は、適宜に変更され得る。また、閾値判定部１２１１が、積算結果を判定するための閾値は、用いる積算範囲のサイズ等によって適宜に調整される。図１２の総合判定部１２１３が、これらの閾値判定部１２１１によって積算範囲ごとに出力される複数個の判定結果を用いて、網点判定信号を生成する際には、例えば、論理和、論理積の論理演算を、どのように組み合わせるかは、適宜に変更され得る。
【０１７８】
（１０）出力処理部１１０が、印刷データを生成する処理（図２３）は、一例であり適宜に変更され得る。例えば、出力処理部１１０は、ハーフトーン処理として、誤差拡散法、ディザ法を採用する例を示したがこれに限られない。例えば、誤差拡散法のみを用いる場合、文字（網点内文字を含む）と写真（網点を含む）とでは、前者の誤差拡散マトリクスサイズを小さくし、後者の誤差拡散マトリクスサイズを大きくすることが好ましい。また、ディザ処理のみを用いる場合には、文字と写真とで異なるディザマトリクスパターンを採用しても良い。また、ハーフトーン処理の方法として、これ以外の方法を採用しても構わない。
【０１７９】
（１１）上記実施例では、対象画像データは、スキャンデータであるが、これに限られない。対象画像データは、印刷物などの原稿を、２次元イメージセンサを備えるデジタルカメラによって光学的に撮影して生成される撮像画像データであっても良い。また、対象画像データは、文書やイラストなどを作成するためのワードプロセッサなどのアプリケーションプログラムを用いて生成された画像データであってもよい。
【０１８０】
（１２）図２の複合機１００が実行する処理、例えば、領域分離処理部１０３や第２入力処理部１０４や出力処理部１１０が実行する処理の全部または一部は、複合機１００に限らず、種々の装置によって実行されても良い。例えば、スキャナやデジタルカメラが、自身で生成された対象画像データを用いて、領域分離処理部１０３や第２入力処理部１０４が実行する処理を実行しても良い。また、例えば、スキャナやプリンタと通信可能な接続される端末装置（図示省略）やサーバ（図示省略）が、スキャナから取得したスキャンデータを用いて、領域分離処理部１０３や第２入力処理部１０４および出力処理部１１０が実行する処理を実行しても良い。そして、その結果生成される印刷データがプリンタに供給されても良い。また、ネットワークを介して互いに通信可能な複数個のコンピュータ（例えば、クラウドサーバ）が、領域分離処理部１０３や第２入力処理部１０４および出力処理部１１０が実行する処理を一部ずつ分担して、全体として、画像処理を実行してもよい。この場合、複数個のコンピュータの全体が、画像処理装置の例である。
【０１８１】
なお、上記各実施例では、領域分離処理部１０３や第２入力処理部１０４および出力処理部１１０が実行する処理の全部または一部は、これらのハードウエア回路によって実行されるが、ＣＰＵであるメインプロセッサ１０１によって実行されても良い。この場合には、領域分離処理部１０３や第２入力処理部１０４や出力処理部１１０が実行する処理のうち、メインプロセッサ１０１が実行する処理のためのプログラムは、コンピュータプログラムＰＧに含まれる。例えば、第１実施例では、メインプロセッサ１０１は、領域分離処理部１０３によって実行される最小成分画像データを生成する処理と、最小成分画像データを用いて内エッジデータを生成する処理と、最小成分画像データを用いて外エッジデータを生成する処理と、内エッジデータと外エッジデータとを用いて、スキャン画像内の複数個の文字画素を特定する処理と、を、コンピュータプログラムＰＧを実行することによって、実現しても良い。
【０１８２】
このように、上記各実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部あるいは全部をハードウェアに置き換えるようにしてもよい。
【０１８３】
以上、実施例、変形例に基づき本発明について説明してきたが、上記した発明の実施の形態は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明は、その趣旨並びに特許請求の範囲を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物が含まれる。
【符号の説明】
【０１８４】
１００…複合機、１０１…メインプロセッサ、１０２…画像処理部、１０２…第１入力処理部、１０３…領域分離処理部、１０３Ｂ…領域分離処理部、１０３Ｃ…領域分離処理部、１０４…第２入力処理部、１０６…インタープリタ、１０７…データ圧縮部、１０８…解像度変換部、１０９…データ復号部、１１０…出力処理部、１１１…第１画像メモリ、１１２…第１フラグメモリ、１１３…メインメモリ、１１５…第２フラグメモリ、１１６…第２画像メモリ、１１７…不揮発性メモリ、１２０…制御部、１３０…読取実行部、１４０…印刷実行部、１５０…通信ＩＦ、６０１…変換部、６０３…合成部、６０４…フィルタ処理部、６０５…フィルタ処理部、６０６…フィルタ処理部、６０７…セレクタ、６０８…ガンマ補正部、６０９…誤差拡散処理部、６１０…ガンマ補正部、６１１…ディザ処理部、６１２…セレクタ、１００１…入力信号、１００２…最小成分データ生成部、１００２Ｂ…反転最小成分データ生成部、１００２Ｃ…輝度データ生成部、１００３…文字判定部、１００３Ｂ…文字判定部、１００３Ｃ…文字判定部、１００４…網点判定部、１００４Ｂ…網点判定部、１００４Ｃ…網点判定部、１００５…網点内文字判定部、１００５Ｂ…網点内文字判定部、１００５Ｃ…網点内文字判定部、１００６…属性フラグ生成部、１００６Ｃ…属性フラグ生成部、１００７…文字フラグ、１００８…網点フラグ、１００９…網点内文字フラグ、１１０２…エッジ強調部、１１０３…閾値判定部、１１０４…閾値判定部、１１０５…エリア積算部、１１０６…エリア積算部、１１０７…閾値判定部、１１０８…閾値判定部、１１０９…総合判定部、１１１０…文字判定信号、１２０２…エッジ強調部、１２０３…閾値判定部、１２０４…閾値判定部、１２０５…孤立量判定部、１２０６…孤立量判定部、１２０９…積算処理部、１２１１…閾値判定部、１２１３…総合判定部、１２１５…網点判定信号、２０１１…第１積算部、２０１２…第２積算部、２０１３…第３積算部、２０２１…第１判定部、２０２２…第２判定部、２０２３…第３判定部、２１０２…積算範囲、２１０３…積算範囲、２１０４…積算範囲、２４０１…適応的スムージング処理部、２４０３…閾値判定部、２５０２…平滑化処理部、２５０３…線判定部、２５０４…セレクタ、Ｖｍｉｎ…最小成分値、ＶＲｍｉｎ…反転最小成分値、Ｖｍａｘ…最大成分値、Ｙ…輝度、ＰＧ…コンピュータプログラム
【図１】
2018174420.tif 000003
【図２】
2018174420.tif 000004
【図３】
2018174420.tif 000005
【図４】
2018174420.tif 000006
【図５】
2018174420.tif 000007
【図６】
2018174420.tif 000008
【図７】
2018174420.tif 000009
【図８】
2018174420.tif 000010
【図９】
2018174420.tif 000011
【図１０】
2018174420.tif 000012
【図１１】
2018174420.tif 000013
【図１２】
2018174420.tif 000014
【図１３】
2018174420.tif 000015
【図１４】
2018174420.tif 000016
【図１５】
2018174420.tif 000017
【図１６】
2018174420.tif 000018
【図１７】
2018174420.tif 000019
【図１８】
2018174420.tif 000020
【図１９】
2018174420.tif 000021
【図２０】
2018174420.tif 000022
【図２１】
2018174420.tif 000023
【図２２】
2018174420.tif 000024
【図２３】
2018174420.tif 000025
【図２４】
2018174420.tif 000026
【図２５】
2018174420.tif 000027
【図２６】
2018174420.tif 000028