(57)【特許請求の範囲】
【請求項１】
対象とする画像の色空間における色軸に応じた副画像に対して、文字領域と背景部を比較して該文字領域の一部を該背景部と区別し得るように２値化画像を生成する２値化生成手段と、
前記２値化生成手段によって２値化された第１の画像と第２の画像の違いを検出するための論理演算を行う論理演算手段と、
前記論理演算手段によって論理演算された結果の画像の連結画素数を算出する画素数算出手段と、
前記画素数算出手段によって算出された連結画素数に応じて、前記画像が単色であるか否かを判定する色判定手段
を具備し、
前記第１の画像は、対象とする画像の色空間における色軸に応じた副画像の１つに対して、前記２値化生成手段によって生成された２値化画像であり、
前記第２の画像は、前記第１の画像の副画像とは異なる副画像に対して、前記２値化生成手段によって生成された２値化画像である
ことを特徴とする画像処理装置。
【請求項２】
対象とする画像の色空間における色軸に応じた副画像に対して、文字領域と背景部を比較して該文字領域の一部を該背景部と区別し得るように２値化画像を生成する２値化生成手段と、
前記２値化生成手段によって生成された第１の画像と第２の画像の違いを検出するための論理演算を行う第１の論理演算手段と、
前記２値化生成手段によって生成された第１の画像と第３の画像の違いを検出するための論理演算を行う第２の論理演算手段と、
前記２値化生成手段によって生成された第２の画像と第３の画像の違いを検出するための論理演算を行う第３の論理演算手段と、
前記第１の論理演算手段によって論理演算された結果の画像の連結画素数を算出する第１の画素数算出手段と、
前記第２の論理演算手段によって論理演算された結果の画像の連結画素数を算出する第２の画素数算出手段と、
前記第３の論理演算手段によって論理演算された結果の画像の連結画素数を算出する第３の画素数算出手段と、
前記第１の画素数算出手段、前記第２の画素数算出手段、前記第３の画素数算出手段によって算出された連結画素数に応じて、前記画像が単色であるか否かを判定する色判定手段
を具備し、
前記第１の画像は、対象とする画像の色空間における色軸に応じた副画像の１つに対して、前記２値化生成手段によって生成された２値化画像であり、
前記第２の画像は、前記第１の画像の副画像とは異なる副画像に対して、前記２値化生成手段によって生成された２値化画像であり、
前記第３の画像は、前記第１の画像の副画像及び前記第２の画像の副画像とは異なる副画像に対して、前記２値化生成手段によって生成された２値化画像である
ことを特徴とする画像処理装置。
【請求項３】
対象とする画像の色空間における色軸に応じた３つの副画像に対して、文字領域と背景部を比較して該文字領域の一部を該背景部と区別し得るようにそれぞれ２値化画像を生成する２値化生成手段と、
前記２値化生成手段によって生成された３つの２値化画像のうち第１の２値化画像を膨張した第１の膨張画像と３つの２値化画像のうち第２の２値化画像の違いを検出するための論理演算を行い、
該第１の膨張画像と該２値化生成手段によって生成された３つの２値化画像のうち第３の２値化画像の違いを検出するための論理演算を行う第１の論理演算手段と、
前記第１の膨張画像と前記第２の２値化画像を膨張した第２の膨張画像の違いを検出するための論理演算を行い、
該第１の膨張画像と前記第３の２値化画像を膨張した第３の膨張画像の違いを検出するための論理演算を行う第２の論理演算手段と、
前記第２の膨張画像と前記第３の膨張画像の違いを検出するための論理演算を行う第３の論理演算手段と、
前記第１の論理演算手段によって論理演算された結果の画像の連結画素数を算出する第１の画素数算出手段と、
前記第２の論理演算手段によって論理演算された結果の画像の連結画素数を算出する第２の画素数算出手段と、
前記第３の論理演算手段によって論理演算された結果の画像の連結画素数を算出する第３の画素数算出手段と、
前記第１の画素数算出手段、前記第２の画素数算出手段、前記第３の画素数算出手段によって算出された連結画素数に応じて、前記画像が単色であるか否かを判定する色判定手段
を具備することを特徴とする画像処理装置。
【請求項４】
前記２値化生成手段は、前記第１の２値化画像を、３つの軸によって表色される色空間における第１の軸の副画像を２値化して生成し、前記第２の２値化画像を、第２の軸の副画像を２値化して生成し、前記第３の２値化画像を、第３の軸の副画像を２値化して生成し、
さらに、
前記２値化生成手段によって生成された第１の２値化画像を膨張させて、前記第１の膨張画像を生成する第１の膨張画像生成手段と、
前記２値化生成手段によって生成された第２の２値化画像を膨張させて、前記第２の膨張画像を生成する第２の膨張画像生成手段と、
前記２値化生成手段によって生成された第３の２値化画像を膨張させて、前記第３の膨張画像を生成する第３の膨張画像生成手段と、
を具備し、
前記第１の論理演算手段は、前記第１の膨張画像生成手段によって生成された第１の膨張画像と前記２値化生成手段によって生成された第２の２値化画像の違いを検出するための論理演算を行い、前記第１の膨張画像と前記２値化生成手段によって生成された第３の２値化画像の違いを検出するための論理演算を行い、
前記第１の画素数算出手段は、前記第１の論理演算手段によって第１の膨張画像と第２の２値化画像を論理演算した結果の画像の連結画素数、及び前記第１の論理演算手段によって第１の膨張画像と第３の２値化画像を論理演算した結果の画像の連結画素数を算出し、
前記第２の論理演算手段は、前記第１の膨張画像と前記第２の膨張画像生成手段によって生成された第２の膨張画像の違いを検出するための論理演算を行い、前記第１の膨張画像と前記第３の膨張画像生成手段によって生成された第３の膨張画像の違いを検出するための論理演算を行い、
前記第２の画素数算出手段は、前記第１の膨張画像と前記第２の膨張画像を論理演算した結果の画像の連結画素数、及び前記第１の膨張画像と前記第３の膨張画像を論理演算した結果の画像の連結画素数を算出し、
前記第３の論理演算手段は、前記第２の膨張画像と前記第３の膨張画像の違いを検出するための論理演算を行う
ことを特徴とする請求項３に記載の画像処理装置。
【請求項５】
コンピュータを、
対象とする画像の色空間における色軸に応じた副画像に対して、文字領域と背景部を比較して該文字領域の一部を該背景部と区別し得るように２値化画像を生成する２値化生成手段と、
前記２値化生成手段によって２値化された第１の画像と第２の画像の違いを検出するための論理演算を行う論理演算手段と、
前記論理演算手段によって論理演算された結果の画像の連結画素数を算出する画素数算出手段と、
前記画素数算出手段によって算出された連結画素数に応じて、前記画像が単色であるか否かを判定する色判定手段
として機能させ、
前記第１の画像は、対象とする画像の色空間における色軸に応じた副画像の１つに対して、前記２値化生成手段によって生成された２値化画像であり、
前記第２の画像は、前記第１の画像の副画像とは異なる副画像に対して、前記２値化生成手段によって生成された２値化画像である
ことを特徴とする画像処理プログラム。
【請求項６】
コンピュータを、
対象とする画像の色空間における色軸に応じた副画像に対して、文字領域と背景部を比較して該文字領域の一部を該背景部と区別し得るように２値化画像を生成する２値化生成手段と、
前記２値化生成手段によって生成された第１の画像と第２の画像の違いを検出するための論理演算を行う第１の論理演算手段と、
前記２値化生成手段によって生成された第１の画像と第３の画像の違いを検出するための論理演算を行う第２の論理演算手段と、
前記２値化生成手段によって生成された第２の画像と第３の画像の違いを検出するための論理演算を行う第３の論理演算手段と、
前記第１の論理演算手段によって論理演算された結果の画像の連結画素数を算出する第１の画素数算出手段と、
前記第２の論理演算手段によって論理演算された結果の画像の連結画素数を算出する第２の画素数算出手段と、
前記第３の論理演算手段によって論理演算された結果の画像の連結画素数を算出する第３の画素数算出手段と、
前記第１の画素数算出手段、前記第２の画素数算出手段、前記第３の画素数算出手段によって算出された連結画素数に応じて、前記画像が単色であるか否かを判定する色判定手段
として機能させ、
前記第１の画像は、対象とする画像の色空間における色軸に応じた副画像の１つに対して、前記２値化生成手段によって生成された２値化画像であり、
前記第２の画像は、前記第１の画像の副画像とは異なる副画像に対して、前記２値化生成手段によって生成された２値化画像であり、
前記第３の画像は、前記第１の画像の副画像及び前記第２の画像の副画像とは異なる副画像に対して、前記２値化生成手段によって生成された２値化画像である
ことを特徴とする画像処理プログラム。
【請求項７】
コンピュータを、
対象とする画像の色空間における色軸に応じた３つの副画像に対して、文字領域と背景部を比較して該文字領域の一部を該背景部と区別し得るようにそれぞれ２値化画像を生成する２値化生成手段と、
前記２値化生成手段によって生成された３つの２値化画像のうち第１の２値化画像を膨張した第１の膨張画像と３つの２値化画像のうち第２の２値化画像の違いを検出するための論理演算を行い、
該第１の膨張画像と該２値化生成手段によって生成された３つの２値化画像のうち第３の２値化画像の違いを検出するための論理演算を行う第１の論理演算手段と、
前記第１の膨張画像と前記第２の２値化画像を膨張した第２の膨張画像の違いを検出するための論理演算を行い、
該第１の膨張画像と前記第３の２値化画像を膨張した第３の膨張画像の違いを検出するための論理演算を行う第２の論理演算手段と、
前記第２の膨張画像と前記第３の膨張画像の違いを検出するための論理演算を行う第３の論理演算手段と、
前記第１の論理演算手段によって論理演算された結果の画像の連結画素数を算出する第１の画素数算出手段と、
前記第２の論理演算手段によって論理演算された結果の画像の連結画素数を算出する第２の画素数算出手段と、
前記第３の論理演算手段によって論理演算された結果の画像の連結画素数を算出する第３の画素数算出手段と、
前記第１の画素数算出手段、前記第２の画素数算出手段、前記第３の画素数算出手段によって算出された連結画素数に応じて、前記画像が単色であるか否かを判定する色判定手段
として機能させることを特徴とする画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置及び画像処理プログラムに関する。
【背景技術】
【０００２】
文字、線画、自然画像等を含んだ画像をＪＰＥＧ等の変換符号化で圧縮すると、文字部や線画部にモスキートノイズと呼ばれる画像劣化が生じることがある。この画像劣化を低減させるために、文字部や線画部と自然画像部の領域を分割し、自然画像部はＪＰＥＧ圧縮を行い、文字部や線画部の領域は２値画像とその文字部や線画部の色を示す色情報を加えて１つの層としてＭＭＲ圧縮して、伸張時に自然画像に上書きするような多層構造の符号化方式が提案されている。
具体的には、画像から黒の文字や線画を抜き出して２値データを作成する。また、画像から赤の文字や線画を抜き出して２値データを作成する。さらに、画像から、前記黒や赤の文字や線画を除去した多値画像データを作成する。黒の文字や線画を抜き出して作成した２値データは、２値データ用の圧縮方式で圧縮する。また、この画像の色は黒であるという情報を別途付与する。同様に、赤の文字や線画を抜き出して作成した２値データは、２値データ用の圧縮方式で圧縮する。また、この画像の色は赤であるという情報を別途付与する。さらに、画像から前記の文字部や線画部を除去した後のバックグラウンド画像は、ＪＰＥＧ等の多値画像用の圧縮方式で符号化する。
【０００３】
これに関連する技術として、例えば、特許文献１には、文書をスキャナで入力した画像データや、コンピュータ上の文書作成ソフトウェアで作成された文書データを、一般的な圧縮画像データとして、高画質かつ高圧縮率で圧縮することができる画像処理装置及び画像処理方法を提供することを課題とし、入力された文書データについての多値画像について、縮小・二値化部で二値画像が生成される。この二値画像に基づいて文字領域検出部において文字領域が抽出され、文字領域座標が得られ、また、抽出された文字領域内の文字領域代表色が文字色抽出部で抽出され、文字部塗りつぶし部において多値画像から下地多値画像が生成され、さらに、文字領域画像が文字領域画像圧縮部で圧縮されて圧縮コードが生成され、下地画像が下地画像圧縮部で圧縮されて圧縮コードが生成されることが開示されている。
【０００４】
また、例えば、特許文献２には、良好な復元画像を生成することでき、かつ圧縮対象の画像品位を低下させない画像圧縮を行うことができる画像圧縮装置、画像伸長装置及びそれらの方法、プログラムを提供することを課題とし、２値化部で多値画像を２値化し、２値画像中の文字領域の位置を領域特定部で特定し、領域特定部で、文字領域中の単位文字領域の位置を特定し、代表色部抽出部で、単位文字領域の位置情報と多値画像とに基づいて、単位文字領域の代表色を抽出し、文字領域穴埋め部で、文字領域の位置情報に基づいて、文字領域をその周辺色で穴埋めし、縮小部で、穴埋め多値画像を縮小し、ＪＰＥＧ圧縮部で、縮小多値画像を圧縮し、ＭＭＲ圧縮部で、文字領域に対応する部分２値画像を圧縮し、位置情報と、各圧縮部で生成された圧縮コードと、単位文字領域の代表色情報を含む圧縮データを出力することが開示されている。
【０００５】
また、例えば、特許文献３には、画質を保ちながら効率良く画像を圧縮することができる画像処理装置を提供することを課題とし、文字領域代表色抽出手段により抽出された第１文字領域代表色、線画領域代表色抽出手段により抽出された第１線画領域代表色、背景領域代表色抽出手段により抽出された第１背景領域代表色から、最適な、第２文字領域代表色、第２線画領域代表色及び第２背景領域代表色を判定する代表色判定手段を備えることが開示されている。
【０００６】
また、例えば、特許文献４には、任意かつ複数の背景色を有する画像から文字認識に好適な２値画像を生成する画像処理装置、画像処理方法、画像処理プログラム及び記録媒体を提供することを課題とし、原画像から圧縮画像を生成し、同色とみなせる画素をランとして抽出し、それらの連結成分を色ごとに求め、この連結成分を文字候補とみなして近接する連結成分同士を統合して文字行を生成し、その後抽出された文字行から、過抽出部分を排除して文字行を出力し、こうして得られた行領域データをもとに、文字認識に好適な２値画像を生成することが開示されている。
【特許文献１】特開２００３−２４４４４７号公報
【特許文献２】特開２００４−１２８８８０号公報
【特許文献３】特開２００７−３３５９８３号公報
【特許文献４】特開２００４−１９９６２２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
ところで、画像に対する処理によって色変化が生じるような場合に、従来技術を用いると、その色変化による影響を受け、その画像が単色であるか否かの判定は困難である。
本発明は、画像に対する処理による色変化の影響があったとしても、その画像が単色であるか否かの判定の誤りを削減させるようにした画像処理装置及び画像処理プログラムを提供することを目的としている。
【課題を解決するための手段】
【０００９】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
請求項１の発明は、対象とする画像の色空間における色軸に応じた副画像に対して、文字領域と背景部を比較して該文字領域の一部を該背景部と区別し得るように２値化画像を生成する２値化生成手段と、前記２値化生成手段によって２値化された第１の画像と第２の画像の違いを検出するための論理演算を行う論理演算手段と、前記論理演算手段によって論理演算された結果の画像の連結画素数を算出する画素数算出手段と、前記画素数算出手段によって算出された連結画素数に応じて、前記画像が単色であるか否かを判定する色判定手段を具備し、前記第１の画像は、対象とする画像の色空間における色軸に応じた副画像の１つに対して、前記２値化生成手段によって生成された２値化画像であり、前記第２の画像は、前記第１の画像の副画像とは異なる副画像に対して、前記２値化生成手段によって生成された２値化画像であることを特徴とする画像処理装置である。
【００１０】
請求項２の発明は、対象とする画像の色空間における色軸に応じた副画像に対して、文字領域と背景部を比較して該文字領域の一部を該背景部と区別し得るように２値化画像を生成する２値化生成手段と、前記２値化生成手段によって生成された第１の画像と第２の画像の違いを検出するための論理演算を行う第１の論理演算手段と、前記２値化生成手段によって生成された第１の画像と第３の画像の違いを検出するための論理演算を行う第２の論理演算手段と、前記２値化生成手段によって生成された第２の画像と第３の画像の違いを検出するための論理演算を行う第３の論理演算手段と、前記第１の論理演算手段によって論理演算された結果の画像の連結画素数を算出する第１の画素数算出手段と、前記第２の論理演算手段によって論理演算された結果の画像の連結画素数を算出する第２の画素数算出手段と、前記第３の論理演算手段によって論理演算された結果の画像の連結画素数を算出する第３の画素数算出手段と、前記第１の画素数算出手段、前記第２の画素数算出手段、前記第３の画素数算出手段によって算出された連結画素数に応じて、前記画像が単色であるか否かを判定する色判定手段を具備し、前記第１の画像は、対象とする画像の色空間における色軸に応じた副画像の１つに対して、前記２値化生成手段によって生成された２値化画像であり、前記第２の画像は、前記第１の画像の副画像とは異なる副画像に対して、前記２値化生成手段によって生成された２値化画像であり、前記第３の画像は、前記第１の画像の副画像及び前記第２の画像の副画像とは異なる副画像に対して、前記２値化生成手段によって生成された２値化画像であることを特徴とする画像処理装置である。
【００１１】
請求項３の発明は、対象とする画像の色空間における色軸に応じた３つの副画像に対して、文字領域と背景部を比較して該文字領域の一部を該背景部と区別し得るようにそれぞれ２値化画像を生成する２値化生成手段と、前記２値化生成手段によって生成された３つの２値化画像のうち第１の２値化画像を膨張した第１の膨張画像と３つの２値化画像のうち第２の２値化画像の違いを検出するための論理演算を行い、該第１の膨張画像と該２値化生成手段によって生成された３つの２値化画像のうち第３の２値化画像の違いを検出するための論理演算を行う第１の論理演算手段と、前記第１の膨張画像と前記第２の２値化画像を膨張した第２の膨張画像の違いを検出するための論理演算を行い、該第１の膨張画像と前記第３の２値化画像を膨張した第３の膨張画像の違いを検出するための論理演算を行う第２の論理演算手段と、前記第２の膨張画像と前記第３の膨張画像の違いを検出するための論理演算を行う第３の論理演算手段と、前記第１の論理演算手段によって論理演算された結果の画像の連結画素数を算出する第１の画素数算出手段と、前記第２の論理演算手段によって論理演算された結果の画像の連結画素数を算出する第２の画素数算出手段と、前記第３の論理演算手段によって論理演算された結果の画像の連結画素数を算出する第３の画素数算出手段と、前記第１の画素数算出手段、前記第２の画素数算出手段、前記第３の画素数算出手段によって算出された連結画素数に応じて、前記画像が単色であるか否かを判定する色判定手段を具備することを特徴とする画像処理装置である。
【００１２】
請求項４の発明は、前記２値化生成手段は、前記第１の２値化画像を、３つの軸によって表色される色空間における第１の軸の副画像を２値化して生成し、前記第２の２値化画像を、第２の軸の副画像を２値化して生成し、前記第３の２値化画像を、第３の軸の副画像を２値化して生成し、さらに、前記２値化生成手段によって生成された第１の２値化画像を膨張させて、前記第１の膨張画像を生成する第１の膨張画像生成手段と、前記２値化生成手段によって生成された第２の２値化画像を膨張させて、前記第２の膨張画像を生成する第２の膨張画像生成手段と、前記２値化生成手段によって生成された第３の２値化画像を膨張させて、前記第３の膨張画像を生成する第３の膨張画像生成手段と、を具備し、前記第１の論理演算手段は、前記第１の膨張画像生成手段によって生成された第１の膨張画像と前記２値化生成手段によって生成された第２の２値化画像の違いを検出するための論理演算を行い、前記第１の膨張画像と前記２値化生成手段によって生成された第３の２値化画像の違いを検出するための論理演算を行い、前記第１の画素数算出手段は、前記第１の論理演算手段によって第１の膨張画像と第２の２値化画像を論理演算した結果の画像の連結画素数、及び前記第１の論理演算手段によって第１の膨張画像と第３の２値化画像を論理演算した結果の画像の連結画素数を算出し、前記第２の論理演算手段は、前記第１の膨張画像と前記第２の膨張画像生成手段によって生成された第２の膨張画像の違いを検出するための論理演算を行い、前記第１の膨張画像と前記第３の膨張画像生成手段によって生成された第３の膨張画像の違いを検出するための論理演算を行い、前記第２の画素数算出手段は、前記第１の膨張画像と前記第２の膨張画像を論理演算した結果の画像の連結画素数、及び前記第１の膨張画像と前記第３の膨張画像を論理演算した結果の画像の連結画素数を算出し、前記第３の論理演算手段は、前記第２の膨張画像と前記第３の膨張画像の違いを検出するための論理演算を行うことを特徴とする請求項３に記載の画像処理装置である。
【００１４】
請求項５の発明は、コンピュータを、対象とする画像の色空間における色軸に応じた副画像に対して、文字領域と背景部を比較して該文字領域の一部を該背景部と区別し得るように２値化画像を生成する２値化生成手段と、前記２値化生成手段によって２値化された第１の画像と第２の画像の違いを検出するための論理演算を行う論理演算手段と、前記論理演算手段によって論理演算された結果の画像の連結画素数を算出する画素数算出手段と、前記画素数算出手段によって算出された連結画素数に応じて、前記画像が単色であるか否かを判定する色判定手段として機能させ、前記第１の画像は、対象とする画像の色空間における色軸に応じた副画像の１つに対して、前記２値化生成手段によって生成された２値化画像であり、前記第２の画像は、前記第１の画像の副画像とは異なる副画像に対して、前記２値化生成手段によって生成された２値化画像であることを特徴とする画像処理プログラムである。
【００１５】
請求項６の発明は、コンピュータを、対象とする画像の色空間における色軸に応じた副画像に対して、文字領域と背景部を比較して該文字領域の一部を該背景部と区別し得るように２値化画像を生成する２値化生成手段と、前記２値化生成手段によって生成された第１の画像と第２の画像の違いを検出するための論理演算を行う第１の論理演算手段と、前記２値化生成手段によって生成された第１の画像と第３の画像の違いを検出するための論理演算を行う第２の論理演算手段と、前記２値化生成手段によって生成された第２の画像と第３の画像の違いを検出するための論理演算を行う第３の論理演算手段と、前記第１の論理演算手段によって論理演算された結果の画像の連結画素数を算出する第１の画素数算出手段と、前記第２の論理演算手段によって論理演算された結果の画像の連結画素数を算出する第２の画素数算出手段と、前記第３の論理演算手段によって論理演算された結果の画像の連結画素数を算出する第３の画素数算出手段と、前記第１の画素数算出手段、前記第２の画素数算出手段、前記第３の画素数算出手段によって算出された連結画素数に応じて、前記画像が単色であるか否かを判定する色判定手段として機能させ、前記第１の画像は、対象とする画像の色空間における色軸に応じた副画像の１つに対して、前記２値化生成手段によって生成された２値化画像であり、前記第２の画像は、前記第１の画像の副画像とは異なる副画像に対して、前記２値化生成手段によって生成された２値化画像であり、前記第３の画像は、前記第１の画像の副画像及び前記第２の画像の副画像とは異なる副画像に対して、前記２値化生成手段によって生成された２値化画像であることを特徴とする画像処理プログラムである。
【００１６】
請求項７の発明は、コンピュータを、対象とする画像の色空間における色軸に応じた３つの副画像に対して、文字領域と背景部を比較して該文字領域の一部を該背景部と区別し得るようにそれぞれ２値化画像を生成する２値化生成手段と、前記２値化生成手段によって生成された３つの２値化画像のうち第１の２値化画像を膨張した第１の膨張画像と３つの２値化画像のうち第２の２値化画像の違いを検出するための論理演算を行い、該第１の膨張画像と該２値化生成手段によって生成された３つの２値化画像のうち第３の２値化画像の違いを検出するための論理演算を行う第１の論理演算手段と、前記第１の膨張画像と前記第２の２値化画像を膨張した第２の膨張画像の違いを検出するための論理演算を行い、該第１の膨張画像と前記第３の２値化画像を膨張した第３の膨張画像の違いを検出するための論理演算を行う第２の論理演算手段と、前記第２の膨張画像と前記第３の膨張画像の違いを検出するための論理演算を行う第３の論理演算手段と、前記第１の論理演算手段によって論理演算された結果の画像の連結画素数を算出する第１の画素数算出手段と、前記第２の論理演算手段によって論理演算された結果の画像の連結画素数を算出する第２の画素数算出手段と、前記第３の論理演算手段によって論理演算された結果の画像の連結画素数を算出する第３の画素数算出手段と、前記第１の画素数算出手段、前記第２の画素数算出手段、前記第３の画素数算出手段によって算出された連結画素数に応じて、前記画像が単色であるか否かを判定する色判定手段として機能させることを特徴とする画像処理プログラムである。
【発明の効果】
【００１８】
請求項１の画像処理装置によれば、色空間における色軸に応じた副画像を用いて、画像に対する処理による色変化の影響があったとしても、本構成を有していない場合に比較して、その画像が単色であるか否かの判定の誤りをより削減することができる。
【００１９】
請求項２の画像処理装置によれば、色空間における３つの色軸に応じた副画像を用いて、画像に対する処理による色変化の影響があったとしても、本構成を有していない場合に比較して、その画像が単色であるか否かの判定の誤りをより削減することができる。
【００２０】
請求項３の画像処理装置によれば、色空間における３つの色軸に応じた副画像を用いて、画像に対する処理による色変化の影響があったとしても、本構成を有していない場合に比較して、その画像が単色であるか否かの判定の誤りをより削減することができる。
【００２１】
請求項４の画像処理装置によれば、雑音による影響を削減し、本構成を有していない場合に比較して、その画像が単色であるか否かの判定の誤りをより削減することができる。
【００２３】
請求項５の画像処理プログラムによれば、色空間における色軸に応じた副画像を用いて、画像に対する処理による色変化の影響があったとしても、本構成を有していない場合に比較して、その画像が単色であるか否かの判定の誤りをより削減することができる。
【００２４】
請求項６の画像処理プログラムによれば、色空間における３つの色軸に応じた副画像を用いて、画像に対する処理による色変化の影響があったとしても、本構成を有していない場合に比較して、その画像が単色であるか否かの判定の誤りをより削減することができる。
【００２５】
請求項７の画像処理プログラムによれば、色空間における３つの色軸に応じた副画像を用いて、画像に対する処理による色変化の影響があったとしても、本構成を有していない場合に比較して、その画像が単色であるか否かの判定の誤りをより削減することができる。
【発明を実施するための最良の形態】
【００２６】
まず、本実施の形態を説明する前に、その前提となる多層構造の符号化方式及び画像に対する処理によって色変化が生じる場合を説明する。この前提の説明は、本実施の形態を理解を容易にすることを目的とするものである。
図１５の例に示されるように、赤色で描画された文字（「ＡＢＣ」、赤色文字１５０１）と、黒色で描画された文字（「ＤＥＦ」、黒色文字１５０２）と、非文字線画部（家が描かれたの画像部分、家画像１５０３）からなる画像１５００が存在する場合、赤色文字の「ＡＢＣ」のみを抽出した２値画像１５０５と、黒色文字の「ＤＥＦ」のみを抽出した２値画像１５０６と、残りの部分である多値画像１５０７とに分割し、それぞれの画像を独立に符号化する。また、「ＡＢＣ」を抽出した２値画像１５０５の色が赤であり、「ＤＥＦ」を抽出した２値画像１５０６の色が黒であるという情報を別途付与する。
【００２７】
なお、本実施の形態が対象とする部分画像とは、４連結又は８連結で連続する画素領域を少なくとも含み、これらの画素領域の集合をも含む。これらの画素領域の集合とは、４連結等で連続した画素領域が複数あり、その複数の画素領域は近傍にあるものをいう。ここで、近傍にあるものとは、例えば、互いの画素領域が距離的に近いもの、文章としての１行から１文字ずつ切り出すように縦又は横方向に射影し、空白地点で切り出した画像領域、又は一定間隔で切り出した画像領域等がある。
なお、１つの画素領域として、１文字の画像となる場合が多い。ただし、実際に人間が文字として認識できる画素領域である必要はない。文字の一部分、文字を形成しない画素領域等もあり、何らかの画素の塊であればよい。例えば、円や線のような図形であってもよい。以下、「文字」又は「文字部画像」という場合は、特に断りがない限り「画素塊」の意で用いる。
【００２８】
例えば、文字を構成する画素の色情報（その色を特定する情報）を、文字の細線化画像の画素上の色情報から求め、仮にその色の分散値が所定閾値以上なら複数色の文字であると判定し、２値の層構造の圧縮対象からは外すことでその文字の色変わりを回避する方式がある。
【００２９】
例えば、この分散値を用いた方式を実現するための判定装置の構成例について、図１６を用いて説明する。この判定装置は、２値化処理モジュール１６１０、文字部切出モジュール１６２０、分散値算出モジュール１６３０、閾値処理モジュール１６４０を有している。なお、この構成は、抜き出した文字が複数色かどうかを判定する部分を示したものである。
２値化処理モジュール１６１０は、文字部切出モジュール１６２０と接続されており、受け付けた画像を２値化処理して２値化画像を生成し、その２値化画像を文字部切出モジュール１６２０へ渡す。
文字部切出モジュール１６２０は、２値化処理モジュール１６１０、分散値算出モジュール１６３０と接続されており、２値化処理モジュール１６１０から２値化画像を受け取り、その画像内から文字部画像を切り出し、その文字部画像を分散値算出モジュール１６３０へ渡す。
【００３０】
分散値算出モジュール１６３０は、文字部切出モジュール１６２０、閾値処理モジュール１６４０と接続されており、文字部切出モジュール１６２０から文字部画像を受け取り、その文字部画像の色情報を元の画像から求め、その色情報を閾値処理モジュール１６４０へ渡す。例えばＲＧＢコンポーネント毎にその色の分散値を色情報として算出する。なお、ＲＧＢコンポーネントとは、ＲＧＢ色空間におけるＲ軸、Ｇ軸、Ｂ軸に応じた副画像のことをいう。つまり、画像がＲＧＢの３色で表されている場合、Ｒの部分のみの副画像、Ｇの部分のみの副画像、Ｂの部分のみの副画像をいう。以下、色空間における色軸に応じた副画像をコンポーネント画像ともいう。
閾値処理モジュール１６４０は、分散値算出モジュール１６３０と接続されており、分散値算出モジュール１６３０から受け取った分散値が所定閾値以上であれば、その文字は複数色であると判定する。
【００３１】
図１６の例に示した判定装置では、切り出した文字が複数色で構成される場合、文字の色の分散値だけで複数色かどうかの判定を行うことは非常に困難である。
このことについて、以下、順番に説明する。
複数色で構成される文字において、複数色だと判定されない場合は、図１７の例に示すように色変わりが生じてしまう。つまり、図１７（ａ）の例に示すオリジナル文字部画像１７０１が黒と赤（図では斜め格子柄）の２色で塗り分けられている場合、そのオリジナル文字部画像１７０１をスキャナで読み取り、そのＲＧＢコンポーネント毎の色の分散値は低いので複数色とは判定されず、単色と判定されてしまう。したがって、オリジナル文字部画像１７０１の再現画像１７０２（図１７（ｂ））の色は、黒と赤の中間色である茶色となってしまう。
【００３２】
一方、一般的に色付き文字を含む画像をスキャナで読み取った場合は、図１８の例に示すように、その読み取りに伴うＭＴＦ（Ｍｏｄｕｌａｔｉｏｎ  Ｔｒａｎｓｆｅｒ  Ｆａｃｔｏｒ）の劣化やＪＰＥＧ圧縮等によって局所的な色変化が文字部のエッジ部に生じてしまう。つまり、図１８（ａ）の例に示すオリジナル文字部画像１８０１が赤一色であったとしても、スキャナで読み取った場合にＭＴＦの劣化等により、図１８（ｂ）の例に示すスキャン文字部画像１８０２のようにエッジ部に色変化が生じてしまう。
【００３３】
また、図１９（ａ）、（ｃ）の例に示すように、オリジナル文字部画像１７０１、１８０１はそれぞれ複数色、単色であるにもかかわらず、ＭＴＦの劣化、ＪＰＥＧ圧縮等によって局所的な色変化が生じることにより（図１９（ｂ）、（ｄ））、スキャン文字部画像１９０２、１９１２の色の分散値は近い値となり、これを所定の閾値によって明確に区別することは困難である。
以上のように、特に多層構造の符号化方式では、文字部に対するＭＴＦ劣化、ＪＰＥＧ圧縮等による局所的な色変化の影響を受けないように、単色か否かの判定を行う必要がある。
【００３４】
以下、図面に基づき本発明を実現するにあたっての好適な各種の実施の形態の例を説明する。後述する実施の形態は、画像から切り出した部分画像（文字や線画）が単色であるか否かの判定（複数色であるか否かの判定と同値であり、「単色であるか否かの判定」には複数色であるか否かの判定を含む）に関するものである。特に、画像から、部分画像を切り出して、２値画像符号化プレーンと、多値画像符号化プレーンに分離して画像符号化を行う方式に用いるのに適している。
以下に示す各種の実施の形態の概要は、次の通りである。
（１）類似する色として連結されている画素数が閾値以下である場合は、その画素がスキャンや圧縮等に起因する局所的な色変化によるものであるとして複数色ではないと判定し、閾値以上となる類似する色の連結画素数が２色以上ある場合は複数色であると判定する。
（２）また、類似する色として連結されている画素数を算出するために、限定色化処理を行うか、又はカラー画像の各コンポーネントの２値化画像間で画素毎の論理演算を行う。
【００３５】
図１は、第１の実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア（コンピュータ・プログラム）、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、コンピュータ・プログラム、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するの意である。また、モジュールは機能にほぼ一対一に対応しているが、実装においては、１モジュールを１プログラムで構成してもよいし、複数モジュールを１プログラムで構成してもよく、逆に１モジュールを複数プログラムで構成してもよい。また、複数モジュールは１コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって１モジュールが複数コンピュータで実行されてもよい。なお、１つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続（データの授受、指示、データ間の参照関係等）の場合にも用いる。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク（一対一対応の通信接続を含む）等の通信手段で接続されて構成されるほか、１つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。所定という用語は、予め定められたの意の他に、そのときの状況・状態に応じて、又はそれまでの状況・状態に応じての意を含めて用いる。
【００３６】
第１の実施の形態は、図１に示すように、文字部切出モジュール１１０、限定色化処理モジュール１２０、連結画素数算出モジュール１３０、閾値設定モジュール１４０、閾値処理モジュール１５０を有している。
【００３７】
文字部切出モジュール１１０は、限定色化処理モジュール１２０、閾値設定モジュール１４０と接続されており、対象とする画像から部分画像である文字部画像を切り出す。その切り出した文字部画像を限定色化処理モジュール１２０へ渡し、文字部画像の形状に関する情報を閾値設定モジュール１４０へ渡す。文字形状情報として、例えば、文字領域の画素数などがある。
限定色化処理モジュール１２０は、文字部切出モジュール１１０、連結画素数算出モジュール１３０と接続されており、文字部切出モジュール１１０から渡された文字部画像を限定色化し、その限定色化された画像を連結画素数算出モジュール１３０へ渡す。なお、限定色化のアルゴリズムは特に限定されず一般的な限定色化処理であってもよい。
連結画素数算出モジュール１３０は、限定色化処理モジュール１２０、閾値処理モジュール１５０と接続されている。限定色化処理モジュール１２０によって限定色化された文字部画像内の色毎の連結画素数を算出し、限定色毎の連結画素数を閾値処理モジュール１５０へ渡す。ここでは例えば、後段の処理から、限定された色とその色で連結される画素数の情報として、連結している画素数が多い上位の色（例えば２色）の連結数を渡してもよい。
【００３８】
閾値設定モジュール１４０は、文字部切出モジュール１１０、閾値処理モジュール１５０と接続されており、文字部切出モジュール１１０から文字形状情報を受け取り、その文字形状情報に応じて正規化した閾値を算出し、その正規化閾値を閾値処理モジュール１５０へ渡す。例えば、文字領域の面積（画素数）に対する所定の比率から、限定色化された文字画像の画素数に対する正規化閾値を算出する。
閾値処理モジュール１５０は、連結画素数算出モジュール１３０、閾値設定モジュール１４０と接続されている。連結画素数算出モジュール１３０によって算出された連結画素数を閾値設定モジュール１４０から渡された正規化閾値と比較して、文字部画像が単色であるか否かを判定し、その判定結果を出力する。例えば、連結画素数算出モジュール１３０から連結画素数の多い上位の色（例えば２色）の連結画素数を受け取った場合、それぞれの連結画素数を正規化閾値と比較し、１色の連結画素数が正規化閾値を超えた場合は単色の文字と判定し、２色の連結画素数とも正規化閾値を超えた場合は複数色の文字と判定してもよい。
【００３９】
図１９に示した例に対する第１の実施の形態による処理例を図２、３に示す。
スキャン文字部画像２０１、３０１は、文字部切出モジュール１１０によって切り出された文字部画像であり、スキャン文字部画像２０１は、図１９（ａ）の例に示したオリジナル文字部画像１７０１（２色からなるカラー画像）をスキャナで読み取った画像（つまりスキャン文字部画像１９０２）から切り出したものであり、スキャン文字部画像３０１は、図１９（ｃ）の例に示したオリジナル文字部画像１８０１（単色のカラー画像）をスキャナで読み取った画像（つまりスキャン文字部画像１９１２）から切り出したものである。
限定色化画像２０２、３０２は、それぞれスキャン文字部画像２０１、３０１に対して、限定色化処理モジュール１２０によって限定色化された文字部画像である。
連結領域２０３、２０４は、限定色化画像２０２に対して、連結画素数算出モジュール１３０によって算出された連結画素数が多い上位の２つの領域である。同様に、連結領域３０３、３０４は、限定色化画像３０２に対して、連結画素数算出モジュール１３０によって算出された連結画素数が多い上位の２つの領域である。
また、文字部切出モジュール１１０は、スキャン文字部画像２０１の画素数を計数し、閾値設定モジュール１４０は、その画素数に基づいて閾値を設定し、閾値処理モジュール１５０は、設定された閾値と連結領域２０３、２０４のそれぞれの画素数とを比較して、単色か否かを判定する。同様に、文字部切出モジュール１１０は、スキャン文字部画像３０１の画素数を計数し、閾値設定モジュール１４０は、その画素数に基づいて閾値を設定し、閾値処理モジュール１５０は、設定された閾値と連結領域３０３、３０４のそれぞれの画素数とを比較して、単色か否かを判定する。この場合、スキャン文字部画像２０１とスキャン文字部画像３０１の画素数はほぼ同じであるので閾値もほぼ同じになり、連結領域２０３、２０４（つまり２色）の画素数が閾値を超えているので、スキャン文字部画像２０１は複数色の文字部画像であると判定する。連結領域３０３の画素数が閾値を超えていないで、連結領域３０４の画素数が閾値を超えているので、スキャン文字部画像３０１は単色の文字部画像であると判定する。
【００４０】
図４は、第２の実施の形態の構成例についての概念的なモジュール構成図を示している。
第２の実施の形態は、第１の実施の形態における限定色化処理を簡易的に行うため、まずカラーコンポーネント毎で文字の中央部分（幹部分）の色が１となるような２値化を行う。次に、コンポーネント間で画素単位に論理演算処理（例えばＸＯＲ処理）することで、コンポーネント間で文字の幹領域で違う色の画素が１となりやすくなる。最後に論理演算処理画像の最大連結画素数、つまり異なる色画素の塊が閾値以上のときは複数色文字と判定する。
【００４１】
第２の実施の形態は、図４に示すように、文字部切出モジュール４１０、２値化処理モジュール４２１、２値化処理モジュール４２２、論理演算モジュール４２５、連結画素数算出モジュール４３０、閾値設定モジュール４４０、閾値処理モジュール４５０を有している。なお、第１の実施の形態と同等のものは、第１の実施の形態のモジュールを挙げて説明する。
【００４２】
文字部切出モジュール４１０は、２値化処理モジュール４２１、２値化処理モジュール４２２、閾値設定モジュール４４０と接続されており、文字部切出モジュール１１０と同等のものであり、切り出した文字のコンポーネント画像の一つを２値化処理モジュール４２１へ渡し、その他のコンポーネント画像を２値化処理モジュール４２２へ渡す。なお、例えばコンポーネント画像として、ＹＣｂＣｒ画像を示す。
２値化処理モジュール４２１、４２２は、文字部切出モジュール４１０、論理演算モジュール４２５と接続されており、文字部切出モジュール４１０から受け取ったコンポーネント画像に対して２値化処理を行って２値化画像を生成する。そして、それぞれが生成した２値化画像を論理演算モジュール４２５へ渡す。例えば、２値化処理の閾値を文字領域の平均値とし、背景部の平均値と比較して文字部の幹の領域が１となるようにしてもよい。
【００４３】
論理演算モジュール４２５は、２値化処理モジュール４２１、２値化処理モジュール４２２、連結画素数算出モジュール４３０と接続されている。２値化処理モジュール４２１、４２２から２値化されたコンポーネント画像を受け取り、そのコンポーネント画像間に対して画素毎の論理演算を行う。そして、論理演算画像を連結画素数算出モジュール４３０に渡す。なお、この論理演算とは、ＡＮＤ、ＯＲ、ＮＯＴ、ＸＯＲ等を指す。例えば、２つのコンポーネント画像間で異なった画素を「１」とする２値化画像を生成する。この場合の論理演算としてはＸＯＲである。
連結画素数算出モジュール４３０は、論理演算モジュール４２５、閾値処理モジュール４５０と接続されており、連結画素数算出モジュール１３０と同様に、論理演算モジュール４２５によって論理演算された結果の画像（論理演算画像）の連結画素数を算出する。そして、連結画素数が最も多いものの画素数を閾値処理モジュール４５０に渡す。前述の例では、「１」となる画素の連結する数をカウントして、その最大値を出力するものである。
【００４４】
閾値設定モジュール４４０は、文字部切出モジュール４１０、閾値処理モジュール４５０と接続されており、閾値設定モジュール１４０と同等の処理を行う。
閾値処理モジュール４５０は、連結画素数算出モジュール４３０、閾値設定モジュール４４０と接続されており、連結画素数算出モジュール４３０によって算出された連結画素数に応じて、文字部切出モジュール４１０によって切り出された文字部画像が単色であるか否かを判定する。例えば、最大連結画素数と正規化閾値とを比較し、正規化閾値を超えた場合は複数色文字と判定し、正規化閾値を超えない場合は単色文字と判定してもよい。
【００４５】
図１９に示した例に対する第２の実施の形態による処理例を図５、６に示す。
スキャン文字部画像２０１、３０１は、文字部切出モジュール４１０によって切り出された文字部画像である。
Ｙ画像５０２、６０２は、それぞれスキャン文字部画像２０１、３０１から、文字部切出モジュール４１０によってＹＣｒＣｂ空間のＹ軸に応じたコンポーネント画像である。同様に、Ｃｒ画像５１２、６１２は、Ｃｒ軸に応じたコンポーネント画像である。
２値化画像５０３、５１３、６０３、６１３は、それぞれＹ画像５０２、Ｃｒ画像５１２、Ｙ画像６０２、Ｃｒ画像６１２に対して、２値化処理モジュール４２１、４２２によって２値化処理された２値化画像である。
図５（ｄ）の例に示すＸＯＲ処理画像５０４ａ、５０４ｂは、論理演算モジュール４２５による２値化画像５０３と２値化画像５１３とのＸＯＲ処理画像である。同様に、図６（ｄ）の例に示すＸＯＲ処理画像６０４ａ〜６０４ｃは、論理演算モジュール４２５による２値化画像６０３と２値化画像６１３とのＸＯＲ処理画像である。
また、文字部切出モジュール４１０は、スキャン文字部画像２０１の画素数を計数し、閾値設定モジュール４４０は、その画素数に基づいて閾値を設定し、閾値処理モジュール４５０は、設定された閾値とＸＯＲ処理画像５０４ａ、５０４ｂのうちの最大の連結画素数とを比較して、単色か否かを判定する。同様に、文字部切出モジュール４１０は、スキャン文字部画像３０１の画素数を計数し、閾値設定モジュール４４０は、その画素数に基づいて閾値を設定し、閾値処理モジュール４５０は、設定された閾値とＸＯＲ処理画像６０４ａ〜６０４ｃのうちの最大の連結画素数とを比較して、単色か否かを判定する。この場合、スキャン文字部画像２０１とスキャン文字部画像３０１の画素数はほぼ同じであるので閾値もほぼ同じになり、ＸＯＲ処理画像５０４ａの画素数が閾値を超えているので、スキャン文字部画像２０１は複数色の文字部画像であると判定する。ＸＯＲ処理画像６０４ａ〜６０４ｃのうちの最大の連結画素数が閾値を超えていないで、スキャン文字部画像３０１は単色の文字部画像であると判定する。
【００４６】
第３の実施の形態は、図７に示すように、文字部切出モジュール７１０、分散値算出モジュール７２１、平均値算出モジュール７２２、２値化処理モジュール７２３、Ｃ１−Ｃ２間論理演算モジュール７２４、Ｃ１−Ｃ３間論理演算モジュール７２５、Ｃ２−Ｃ３間論理演算モジュール７２６、連結画素数算出モジュール７３１、連結画素数算出モジュール７３２、連結画素数算出モジュール７３３、比較方法決定モジュール７４１、閾値設定モジュール７４２、複数色判定モジュール７５０を有している。
【００４７】
文字部切出モジュール７１０は、分散値算出モジュール７２１、平均値算出モジュール７２２、２値化処理モジュール７２３、閾値設定モジュール７４２と接続されており、対象とする画像から部分画像である文字部画像を切り出す。その切り出した文字部画像を分散値算出モジュール７２１、平均値算出モジュール７２２、２値化処理モジュール７２３へ渡し、文字部画像の形状に関する情報を閾値設定モジュール７４２、分散値算出モジュール７２１、平均値算出モジュール７２２へ渡す。文字形状情報として、例えば、文字領域の画素数、文字部画像の２値化画像などがある。
【００４８】
分散値算出モジュール７２１は、文字部切出モジュール７１０、比較方法決定モジュール７４１と接続されており、文字部切出モジュール７１０から受け取った文字部画像及び文字形状情報を用いて、各コンポーネント毎に文字部画像の分散値を算出し、その分散値を比較方法決定モジュール７４１へ渡す。
平均値算出モジュール７２２は、文字部切出モジュール７１０、２値化処理モジュール７２３と接続されており、文字部切出モジュール７１０から受け取った文字部画像及び文字形状情報を用いて、各コンポーネント毎に文字領域の画像の画素平均値を算出し、その平均値を２値化処理モジュール７２３へ渡す。また、背景領域の平均値を算出するようにしてもよい。
【００４９】
２値化処理モジュール７２３は、文字部切出モジュール７１０、平均値算出モジュール７２２、Ｃ１−Ｃ２間論理演算モジュール７２４、Ｃ１−Ｃ３間論理演算モジュール７２５、Ｃ２−Ｃ３間論理演算モジュール７２６と接続されている。文字部切出モジュール７１０から受け取った文字部画像の色空間における色軸に応じた副画像の２値化画像を生成する。つまり、各コンポーネント画像毎の文字部画像に対して、平均値算出モジュール７２２によって算出された平均値を閾値に２値化処理を行って、２値化画像を生成する。その２値化画像を後段のＣ１−Ｃ２間論理演算モジュール７２４、Ｃ１−Ｃ３間論理演算モジュール７２５、Ｃ２−Ｃ３間論理演算モジュール７２６へ渡す。２値化処理では、文字領域の平均値と背景領域の平均値とを比較して、背景部に近い方を「０」とすることで、文字の幹部分に相当する画素を「１」とするようにする。ここでは、コンポーネント画像が３つの例であり、２値化されたコンポーネント画像をＣ１、Ｃ２、Ｃ３という。ここでは、２値化処理モジュール７２３は、Ｃ１、Ｃ２をＣ１−Ｃ２間論理演算モジュール７２４に渡し、Ｃ１、Ｃ３をＣ１−Ｃ３間論理演算モジュール７２５に渡し、Ｃ２、Ｃ３をＣ２−Ｃ３間論理演算モジュール７２６に渡す。
【００５０】
Ｃ１−Ｃ２間論理演算モジュール７２４は、２値化処理モジュール７２３、連結画素数算出モジュール７３１と接続されており、Ｃ１−Ｃ３間論理演算モジュール７２５は、２値化処理モジュール７２３、連結画素数算出モジュール７３２と接続されており、Ｃ２−Ｃ３間論理演算モジュール７２６は、２値化処理モジュール７２３、連結画素数算出モジュール７３３と接続されている。これらは、２値化処理モジュール７２３から受け取ったそれぞれ各コンポーネント画像間で画素毎に論理演算処理をし、その処理画像（２値化画像）をそれぞれ連結画素数算出モジュール７３１、７３２、７３３へ出力する。ここで論理演算は、色の違いを検出するためにＸＯＲを用いてもよい。またコンポーネント画像の分散値が所定の閾値より低い場合は、分散値の小さいコンポーネントが「１」で比較対象のコンポーネントが「０」の場合に「１」としてもよい。
【００５１】
連結画素数算出モジュール７３１は、Ｃ１−Ｃ２間論理演算モジュール７２４、複数色判定モジュール７５０と接続されており、連結画素数算出モジュール７３２は、Ｃ１−Ｃ３間論理演算モジュール７２５、複数色判定モジュール７５０と接続されており、連結画素数算出モジュール７３３は、Ｃ２−Ｃ３間論理演算モジュール７２６、複数色判定モジュール７５０と接続されている。これらは、Ｃ１−Ｃ２間論理演算モジュール７２４等によって論理演算された処理画像内で最大連結画素数を算出し、その画素数を複数色判定モジュール７５０へ渡す。
比較方法決定モジュール７４１は、分散値算出モジュール７２１、複数色判定モジュール７５０と接続されており、各コンポーネント画像の分散値によってどのコンポーネント間の比較方法を行うかを決定し、決定した比較方法を比較情報として複数色判定モジュール７５０へ渡す。また後述する複数色判定モジュール７５０において、前述のＣ１−Ｃ２間論理演算モジュール７２４、Ｃ１−Ｃ３間論理演算モジュール７２５、Ｃ２−Ｃ３間論理演算モジュール７２６を経て、連結画素数算出モジュール７３１、７３２、７３３によって算出される画素数が最大のものを判定に用いる場合には、比較方法決定モジュール７４１は必要ない。
【００５２】
閾値設定モジュール７４２は、文字部切出モジュール７１０、複数色判定モジュール７５０と接続されており、文字形状情報によって正規化された閾値を、複数色判定モジュール７５０に設定する。
複数色判定モジュール７５０は、連結画素数算出モジュール７３１、連結画素数算出モジュール７３２、連結画素数算出モジュール７３３、比較方法決定モジュール７４１、閾値設定モジュール７４２と接続されており、比較方法決定モジュール７４１から受け取った比較情報によって比較する最大連結画素数を選択し、その値が正規化された閾値を超えていればその文字部画像は複数色とし、閾値を超えていなければ単色の文字部画像と判定し、その判定結果を出力する。
【００５３】
第４の実施の形態は、図８に示すように、文字部切出モジュール８１０、分散値算出モジュール８２１、平均値算出モジュール８２２、２値化処理モジュール８２３、第１演算モジュール８２４、第２演算モジュール８２５、第３演算モジュール８２６、連結画素数算出モジュール８３１、連結画素数算出モジュール８３２、連結画素数算出モジュール８３３、比較方法決定モジュール８４１、閾値設定モジュール８４２、複数色判定モジュール８５０を有している。なお、第３の実施の形態と同等のものは、第３の実施の形態のモジュールを挙げて説明する。文字部切出モジュール８１０、分散値算出モジュール８２１、平均値算出モジュール８２２、閾値設定モジュール８４２は、それぞれ第３の実施の形態の文字部切出モジュール７１０、分散値算出モジュール７２１、平均値算出モジュール７２２、閾値設定モジュール７４２と同等である。コンポーネント画像として、Ｙ画像、Ｃｂ画像、Ｃｒ画像を用いる。
【００５４】
２値化処理モジュール８２３は、文字部切出モジュール８１０、平均値算出モジュール８２２、第１演算モジュール８２４、第２演算モジュール８２５、第３演算モジュール８２６と接続されている。２値化処理モジュール７２３と同等の処理を行う。ただし、文字部切出モジュール８１０から受け取った文字部画像のＹＣｂＣｒ色空間におけるＹ軸、Ｃｂ軸、Ｃｒ軸に応じたコンポーネント画像の２値化画像を生成する。つまり、各コンポーネント画像毎の文字部画像に対して、平均値算出モジュール７２２によって算出された平均値を閾値にして２値化処理を行って、２値化画像を生成する。生成したＹコンポーネント２値化画像を第１演算モジュール８２４、第２演算モジュール８２５へ渡し、Ｃｂコンポーネント２値化画像、Ｃｒコンポーネント２値化画像を第１演算モジュール８２４、第２演算モジュール８２５、第３演算モジュール８２６へ渡す。
【００５５】
第１演算モジュール８２４は、２値化処理モジュール８２３、連結画素数算出モジュール８３１と接続されており、第２演算モジュール８２５は、２値化処理モジュール８２３、連結画素数算出モジュール８３２と接続されており、第３演算モジュール８２６は、２値化処理モジュール８２３、連結画素数算出モジュール８３３と接続されている。それぞれは、２値化処理モジュール８２３によって生成された複数のコンポーネント２値化画像間の論理演算を行う。その処理画像（２値化画像）をそれぞれ連結画素数算出モジュール８３１、８３２、８３３へ出力する。詳細については、図９、１０、１１を用いて後述する。
連結画素数算出モジュール８３１は、第１演算モジュール８２４、複数色判定モジュール８５０と接続されており、連結画素数算出モジュール８３２は、第２演算モジュール８２５、複数色判定モジュール８５０と接続されており、連結画素数算出モジュール８３３は、第３演算モジュール８２６、複数色判定モジュール８５０と接続されている。これらは、それぞれ第１演算モジュール８２４等によって論理演算された処理画像内の連結画素数を算出し、その画素数を複数色判定モジュール８５０へ渡す。詳細については、図９、１０、１１を用いて後述する。
比較方法決定モジュール８４１は、分散値算出モジュール８２１、複数色判定モジュール８５０と接続されており、分散値算出モジュール８２１によって算出された各コンポーネントの分散値によって比較方法を決定し、決定した比較方法を比較情報として複数色判定モジュール８５０へ渡す。
【００５６】
複数色判定モジュール８５０は、連結画素数算出モジュール８３１、連結画素数算出モジュール８３２、連結画素数算出モジュール８３３、比較方法決定モジュール８４１、閾値設定モジュール８４２と接続されており、比較方法決定モジュール８４１から受け取った比較情報によって比較する連結画素数を選択し、その値が正規化された閾値を超えていればその文字部画像は複数色とし、閾値を超えていなければ単色の文字部画像と判定し、その判定結果を出力する。
より詳細に説明する。まず連結画素数を比較情報によって選択する。３つの比較条件のうち２つに当てはまる場合もあるので、優先順位を付けて選択する。例えば、最初にＹが低分散値であれば、第３演算モジュール８２６の演算処理結果を用いて、それに当てはまらない場合は、Ｃｂ及びＣｒの分散値が閾値以上であれば、第２演算モジュール８２５の演算処理結果を用い、以上の２つの条件に当てはまらない場合は、第１演算モジュール８２４の演算処理結果を用いることとする。次に、その演算結果の値が閾値を超えていればその文字部画像は複数色と判定し、閾値を超えていなければ単色文字と判定し、その判定結果を出力する。
【００５７】
Ｃｂ、Ｃｒの分散値が閾値より低い場合の処理（つまり、第１演算モジュール８２４と連結画素数算出モジュール８３１による処理）について説明する。
Ｃｂ、Ｃｒの分散値が低い場合は、一般的に文字部画像において、色の違う画素が少ないか、色差が小さいかのどちらかになる。この画像を文字領域の平均値によって２値化すると、ダイナミックレンジの小さい雑音をそのまま２値化するため、２値化画像の形状には多くの雑音が反映されたものとなる。
このため、この影響を少なくするため、ＹとＣｂ及びＹとＣｒの演算処理を行う場合は、Ｙコンポーネント２値化画像をｎ回（ｎは０以上の整数）膨張させ、さらに分散が小さいコンポーネント画像（Ｃｂ、Ｃｒ）が１となる場合だけＸＯＲ処理を行うこととする。つまり膨張処理をしたＹの２値化画像からＣｂ、Ｃｒの２値化画像がはみ出た画素だけ出力する。
【００５８】
これを図９を用いて説明する。第１演算モジュール８２４は、膨張処理モジュール９１０、Ｃｂ−Ｙ間ＸＯＲ処理モジュール９２１、Ｃｒ−Ｙ間ＸＯＲ処理モジュール９２２を有している。
膨張処理モジュール９１０は、Ｃｂ−Ｙ間ＸＯＲ処理モジュール９２１、Ｃｒ−Ｙ間ＸＯＲ処理モジュール９２２と接続されており、Ｙコンポーネント２値化画像を受け取り、ｎ回膨張させる。その膨張させたＹコンポーネント２値化画像をＣｂ−Ｙ間ＸＯＲ処理モジュール９２１、Ｃｒ−Ｙ間ＸＯＲ処理モジュール９２２に渡す。
【００５９】
Ｃｂ−Ｙ間ＸＯＲ処理モジュール９２１は、膨張処理モジュール９１０、連結画素数算出モジュール８３１と接続されており、膨張処理モジュール９１０から膨張されたＹコンポーネント２値化画像、２値化処理モジュール８２３からＣｂコンポーネント２値化画像を受け取り、その両者間の論理演算を行って、その論理演算結果である処理画像を連結画素数算出モジュール８３１へ渡す。論理演算として、例えば、Ｃｂコンポーネント２値化画像が１となる場合だけＸＯＲ処理を行う。
Ｃｒ−Ｙ間ＸＯＲ処理モジュール９２２は、膨張処理モジュール９１０、連結画素数算出モジュール８３１と接続されており、膨張処理モジュール９１０から膨張されたＹコンポーネント２値化画像、２値化処理モジュール８２３からＣｒコンポーネント２値化画像を受け取り、その両者間の論理演算を行って、その論理演算結果である処理画像を連結画素数算出モジュール８３１へ渡す。論理演算として、例えば、Ｃｒコンポーネント２値化画像が１となる場合だけＸＯＲ処理を行う。
連結画素数算出モジュール８３１は、Ｃｂ−Ｙ間ＸＯＲ処理モジュール９２１、Ｃｒ−Ｙ間ＸＯＲ処理モジュール９２２と接続されている。前述の処理後に、連結画素数算出モジュール８３１が各連結画素の画素数をカウントし、Ｙコンポーネント２値化画像とＣｂコンポーネント２値化画像、Ｙコンポーネント２値化画像とＣｒコンポーネント２値化画像の両者の論理演算の結果のうち最大連結画素数を出力する。
【００６０】
Ｃｂ、Ｃｒの分散値が閾値より高い場合の処理（つまり、第２演算モジュール８２５と連結画素数算出モジュール８３２による処理）について説明する。
Ｃｂ、Ｃｒの分散値が高い場合は、一般的に文字部画像において、色の違う画素が多いか、色差が大きいかのどちらかになる。このため、Ｃｂ、Ｃｒが低分散値である時と違って、平均値による２値化画像の形状には、安定的に色の違いが現われる。
このため、ＹとＣｂ及びＹとＣｒのＸＯＲ処理を行う場合は、Ｙ、Ｃｂ、Ｃｒのコンポーネント２値化画像を雑音除去の目的からｍ回（ｍは０以上の整数）膨張させ、一般的なＸＯＲ処理を行うこととする。つまり膨張処理をしたＹコンポーネント２値化画像とＣｂ、Ｃｒのコンポーネント２値化画像の異なる画素だけを出力する。
【００６１】
これを図１０を用いて説明する。第２演算モジュール８２５は、膨張処理モジュール１０１２、膨張処理モジュール１０１３、Ｃｂ−Ｙ間ＸＯＲ処理モジュール１０２１、Ｃｒ−Ｙ間ＸＯＲ処理モジュール１０２２を有している。
膨張処理モジュール１０１１は、Ｃｂ−Ｙ間ＸＯＲ処理モジュール１０２１、Ｃｒ−Ｙ間ＸＯＲ処理モジュール１０２２と接続されており、膨張処理モジュール１０１２は、Ｃｂ−Ｙ間ＸＯＲ処理モジュール１０２１と接続されており、膨張処理モジュール１０１３は、Ｃｒ−Ｙ間ＸＯＲ処理モジュール１０２２と接続されている。それぞれは、２値化処理モジュール８２３からＹコンポーネント２値化画像、Ｃｂコンポーネント２値化画像、Ｃｒコンポーネント２値化画像を受け取り、ｍ回膨張させる。その膨張させたＹコンポーネント２値化画像をＣｂ−Ｙ間ＸＯＲ処理モジュール１０２１、Ｃｒ−Ｙ間ＸＯＲ処理モジュール１０２２へ渡し、膨張させたＣｂコンポーネント２値化画像をＣｂ−Ｙ間ＸＯＲ処理モジュール１０２１へ渡し、膨張させたＣｒコンポーネント２値化画像をＣｒ−Ｙ間ＸＯＲ処理モジュール１０２２へ渡す。なお、膨張処理モジュール１０１１、１０１２、１０１３は、それぞれ異なる回数だけ膨張するようにしてもよい。
【００６２】
Ｃｂ−Ｙ間ＸＯＲ処理モジュール１０２１は、膨張処理モジュール１０１１、膨張処理モジュール１０１２、連結画素数算出モジュール８３２と接続されており、膨張処理モジュール１０１１から膨張されたＹコンポーネント２値化画像、膨張処理モジュール１０１２から膨張されたＣｂコンポーネント２値化画像を受け取り、その両者間の論理演算を行って、その論理演算結果である処理画像を連結画素数算出モジュール８３２へ渡す。論理演算として、例えば、ＸＯＲ処理を行う。
Ｃｒ−Ｙ間ＸＯＲ処理モジュール１０２２は、膨張処理モジュール１０１１、膨張処理モジュール１０１３、連結画素数算出モジュール８３２と接続されており、膨張処理モジュール１０１１から膨張されたＹコンポーネント２値化画像、膨張処理モジュール１０１３から膨張されたＣｒコンポーネント２値化画像を受け取り、その両者間の論理演算を行って、その論理演算結果である処理画像を連結画素数算出モジュール８３２へ渡す。論理演算として、例えば、ＸＯＲ処理を行う。
連結画素数算出モジュール８３２は、Ｃｂ−Ｙ間ＸＯＲ処理モジュール１０２１、Ｃｒ−Ｙ間ＸＯＲ処理モジュール１０２２と接続されている。前述の処理後に、連結画素数算出モジュール８３２が各連結画素の画素数をカウントし、Ｙコンポーネント２値化画像とＣｂコンポーネント２値化画像、Ｙコンポーネント２値化画像とＣｒコンポーネント２値化画像の両者の論理演算の結果のうち最大連結画素数を出力する。
【００６３】
Ｙの分散値が閾値より低い場合の処理（つまり、第３演算モジュール８２６と連結画素数算出モジュール８３３による処理）について説明する。さらに、ＣｂとＣｒの分散が閾値より大きい場合という条件を設けてもよい。
Ｙの分散値が閾値より低くＣｂとＣｒの分散値が閾値より大きい場合は、輝度変化は少ないが、色差がある程度違う画素が存在する。このため、ＣｂとＣｒの２値化画像のみの比較を行う。
したがって、雑音除去の目的からＣｂ及びＣｒの２値化画像をｋ回（ｋは０以上の整数）膨張させ、一般的なＸＯＲ処理を行う。つまり膨張処理をしたＣｂとＣｒの２値化画像の異なる画素だけ出力する。
【００６４】
これを図１１を用いて説明する。第３演算モジュール８２６は、膨張処理モジュール１１１１、膨張処理モジュール１１１２、Ｃｂ−Ｃｒ間ＸＯＲ処理モジュール１１２０を有している。
膨張処理モジュール１１１１は、Ｃｂ−Ｃｒ間ＸＯＲ処理モジュール１１２０と接続されており、膨張処理モジュール１１１２は、Ｃｂ−Ｃｒ間ＸＯＲ処理モジュール１１２０と接続されている。それぞれは、２値化処理モジュール８２３からＣｂコンポーネント２値化画像、Ｃｒコンポーネント２値化画像を受け取り、ｋ回膨張させる。その膨張させたＣｂコンポーネント２値化画像、Ｃｒコンポーネント２値化画像をＣｂ−Ｃｒ間ＸＯＲ処理モジュール１１２０へ渡す。なお、膨張処理モジュール１１１１、１１１２は、それぞれ異なる回数だけ膨張するようにしてもよい。
【００６５】
Ｃｂ−Ｃｒ間ＸＯＲ処理モジュール１１２０は、膨張処理モジュール１１１１、膨張処理モジュール１１１２、連結画素数算出モジュール８３３と接続されており、膨張処理モジュール１１１１から膨張されたＣｂコンポーネント２値化画像を受け取り、膨張処理モジュール１１１２から膨張されたＣｒコンポーネント２値化画像を受け取り、その両者間の論理演算を行って、その論理演算結果である処理画像を連結画素数算出モジュール８３３へ渡す。論理演算として、例えば、ＸＯＲ処理を行う。
連結画素数算出モジュール８３３は、Ｃｂ−Ｃｒ間ＸＯＲ処理モジュール１１２０と接続されている。前述の処理後に、連結画素数算出モジュール８３３が各連結画素の画素数をカウントし、最大連結画素数を出力する。
【００６６】
図１９に示した例に対する第４の実施の形態による処理例を図１２、１３に示す。
オリジナルの文字部画像の例として、図１２に示す例は複数色からなる文字部画像、図１３に示す例は単色の文字部画像を取り上げる。スキャナで読み取って細線化した画像の色情報をみると、両者の分散値が近い場合に、図１６に示した構成例では判定が難しかった。
【００６７】
スキャン文字部画像２０１は、文字部切出モジュール８１０によって切り出された文字部画像である。
コンポーネント画像１２０２、１２１２、１２２２は、２値化処理モジュール８２３が２値化処理の対象とするＹ、Ｃｒ、Ｃｂのコンポーネント画像である。これらに対して、２値化処理モジュール８２３によってコンポーネント画像毎に平均値を使って２値化処理された画像が、コンポーネント２値化画像１２０３、１２１３、１２２３である。次に、Ｃｒ−Ｙ間ＸＯＲ処理モジュール９２２又はＣｒ−Ｙ間ＸＯＲ処理モジュール１０２２によって論理演算処理された画像は、論理演算処理画像１２０４ａ〜１２０４ｂであり、Ｃｂ−Ｙ間ＸＯＲ処理モジュール９２１又はＣｂ−Ｙ間ＸＯＲ処理モジュール１０２１によって論理演算処理された画像は、論理演算処理画像１２１４ａ〜１２１４ｅであり、Ｃｂ−Ｃｒ間ＸＯＲ処理モジュール１１２０によって論理演算処理された画像は、論理演算処理画像１２２４ａ〜１２２４ｄである。
そして、比較方法決定モジュール８４１によって、コンポーネント画像の分散値からＣｂ、Ｃｒが高い分散値であると判定される。これによって、連結画素数算出モジュール８３２の算出結果が採用される。このことは、Ｃｂ−Ｙ間ＸＯＲ処理モジュール１０２１とＣｒ−Ｙ間ＸＯＲ処理モジュール１０２２の処理結果（Ｙ−Ｃｂの２値化画像間（つまり、コンポーネント２値化画像１２０３とコンポーネント２値化画像１２２３）及びＹ−Ｃｒの２値化画像間（つまり、コンポーネント２値化画像１２０３とコンポーネント２値化画像１２１３）のＸＯＲ処理の処理結果）に対して、両者のＸＯＲ処理画像で「１」の画素が色が変わった画素に相当する。さらに連結画素数算出モジュール８３２によって両者の最大連結画素成分の画素数を算出する。
これが文字部画像の中で色が違っている箇所の中で最大面積になるため、最大連結画素数が閾値（文字で許容できる色変化の割合）を超えていれば複数色の文字とし、超えていなければ単色とする。図１２に示す例では、最大画素数となる論理演算処理画像１２０４ａが閾値を超えているので、スキャン文字部画像２０１は複数色からなる文字と判定される。
なお、図１２の論理演算処理画像１２２４ａ〜１２２４ｄに示すように、比較対象と判定されないＣｂ−Ｃｒ２値化画像間（つまり、コンポーネント２値化画像１２１３とコンポーネント２値化画像１２２３）の比較を行うと、単色という判定になってしまう。
【００６８】
スキャン文字部画像３０１は、文字部切出モジュール８１０によって切り出された文字部画像である。
コンポーネント画像１３０２、１３１２、１３２２は、２値化処理モジュール８２３が２値化処理の対象とするＹ、Ｃｒ、Ｃｂのコンポーネント画像である。これらに対して、２値化処理モジュール８２３によってコンポーネント画像毎に平均値を使って２値化処理された画像が、コンポーネント２値化画像１３０３、１３１３、１３２３である。次に、Ｃｒ−Ｙ間ＸＯＲ処理モジュール９２２又はＣｒ−Ｙ間ＸＯＲ処理モジュール１０２２によって論理演算処理された画像は、ＸＯＲ処理画像１３０４ａ〜１３０４ｃであり、Ｃｂ−Ｙ間ＸＯＲ処理モジュール９２１又はＣｂ−Ｙ間ＸＯＲ処理モジュール１０２１によって論理演算処理された画像は、ＸＯＲ処理画像１３１４ａ〜１３１４ｆであり、Ｃｂ−Ｃｒ間ＸＯＲ処理モジュール１１２０によって論理演算処理された画像は、ＸＯＲ処理画像１３２４ａ〜１３２４ｅである。
そして、比較方法決定モジュール８４１によって、コンポーネント画像の分散値からＣｂ、Ｃｒが高い分散値であると判定される。これによって、連結画素数算出モジュール８３２の算出結果が採用される。このことは、Ｃｂ−Ｙ間ＸＯＲ処理モジュール１０２１とＣｒ−Ｙ間ＸＯＲ処理モジュール１０２２の処理結果（Ｙ−Ｃｂの２値化画像間（つまり、コンポーネント２値化画像１３０３とコンポーネント２値化画像１３２３）及びＹ−Ｃｒの２値化画像間（つまり、コンポーネント２値化画像１３０３とコンポーネント２値化画像１３１３）のＸＯＲ処理の処理結果）に対して、両者のＸＯＲ処理画像で「１」の画素が色が変わった画素に相当する。さらに連結画素数算出モジュール８３２によって両者の最大連結画素成分の画素数を算出する。
これが文字部画像の中で色が違っている箇所の中で最大面積になるため、最大連結画素数が閾値（文字で許容できる色変化の割合）を超えていれば複数色の文字とし、超えていなければ単色とする。図１３に示す例では、最大画素数となるＸＯＲ処理画像１３１４ｂが閾値を超えていないので、スキャン文字部画像３０１は単色の文字と判定される。
なお、図１３のＸＯＲ処理画像１３２４ａ〜１３２４ｅに示すように、比較対象と判定されないＣｂ−Ｃｒ２値化画像間（つまり、コンポーネント２値化画像１３１３とコンポーネント２値化画像１３２３）の比較を行っても、単色という判定になる。
【００６９】
図１４を参照して、前述の実施の形態のハードウェア構成例について説明する。図１４に示す構成は、例えばパーソナルコンピュータ（ＰＣ）などによって構成されるものであり、スキャナ等のデータ読み取り部１４１７と、プリンタなどのデータ出力部１４１８を備えたハードウェア構成例を示している。
【００７０】
ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１４０１は、前述の実施の形態において説明した各種のモジュール、すなわち、文字部切出モジュール１１０、限定色化処理モジュール１２０、連結画素数算出モジュール１３０、閾値設定モジュール１４０、閾値処理モジュール１５０等の各モジュールの実行シーケンスを記述したコンピュータ・プログラムにしたがった処理を実行する制御部である。
【００７１】
ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１４０２は、ＣＰＵ１４０１が使用するプログラムや演算パラメータ等を格納する。ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１４０３は、ＣＰＵ１４０１の実行において使用するプログラムや、その実行において適宜変化するパラメータ等を格納する。これらはＣＰＵバスなどから構成されるホストバス１４０４により相互に接続されている。
【００７２】
ホストバス１４０４は、ブリッジ１４０５を介して、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ／Ｉｎｔｅｒｆａｃｅ）バスなどの外部バス１４０６に接続されている。
【００７３】
キーボード１４０８、マウス等のポインティングデバイス１４０９は、操作者により操作される入力デバイスである。ディスプレイ１４１０は、液晶表示装置又はＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）などからなり、各種情報をテキストやイメージ情報として表示する。
【００７４】
ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）１４１１は、ハードディスクを内蔵し、ハードディスクを駆動し、ＣＰＵ１４０１によって実行するプログラムや情報を記録又は再生させる。ハードディスクには、対象とするカラー画像、２値化画像などが格納される。さらに、その他の各種のデータ処理プログラム等、各種コンピュータ・プログラムが格納される。
【００７５】
ドライブ１４１２は、装着されている磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリ等のリムーバブル記録媒体１４１３に記録されているデータ又はプログラムを読み出して、そのデータ又はプログラムを、インタフェース１４０７、外部バス１４０６、ブリッジ１４０５、及びホストバス１４０４を介して接続されているＲＡＭ１４０３に供給する。リムーバブル記録媒体１４１３も、ハードディスクと同様のデータ記録領域として利用可能である。
【００７６】
接続ポート１４１４は、外部接続機器１４１５を接続するポートであり、ＵＳＢ、ＩＥＥＥ１３９４等の接続部を持つ。接続ポート１４１４は、インタフェース１４０７、及び外部バス１４０６、ブリッジ１４０５、ホストバス１４０４等を介してＣＰＵ１４０１等に接続されている。通信部１４１６は、ネットワークに接続され、外部とのデータ通信処理を実行する。データ読み取り部１４１７は、例えばスキャナであり、ドキュメントの読み取り処理を実行する。データ出力部１４１８は、例えばプリンタであり、ドキュメントデータの出力処理を実行する。
【００７７】
なお、図１４に示すハードウェア構成は、１つの構成例を示すものであり、前述の実施の形態は、図１４に示す構成に限らず、前述の実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア（例えば特定用途向け集積回路（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ：ＡＳＩＣ）等）で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに図１４に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、複写機、ファックス、スキャナ、プリンタ、複合機（スキャナ、プリンタ、複写機、ファックス等のいずれか２つ以上の機能を有している画像処理装置）などに組み込まれていてもよい。
【００７８】
前述の実施の形態では表色系における色空間として、ＹＣｂＣｒによる色空間を用いたが、この他に、ＸＹＺ、ＣＩＥＬＡＢ（Ｌ＊ａ＊ｂ＊）、ＣＩＥＬＵＶ（Ｌ＊ｕ＊ｖ＊）、ＮＴＳ  ＣＲＧＢ、ＲＧＢ、ＹＭＣＫ等で表現される色空間を用いてもよい。
【００７９】
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通などのために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク（ＤＶＤ）であって、ＤＶＤフォーラムで策定された規格である「ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ、ＤＶＤ−ＲＡＭ等」、ＤＶＤ＋ＲＷで策定された規格である「ＤＶＤ＋Ｒ、ＤＶＤ＋ＲＷ等」、コンパクトディスク（ＣＤ）であって、読出し専用メモリ（ＣＤ−ＲＯＭ）、ＣＤレコーダブル（ＣＤ−Ｒ）、ＣＤリライタブル（ＣＤ−ＲＷ）等、光磁気ディスク（ＭＯ）、フレキシブルディスク（ＦＤ）、磁気テープ、ハードディスク、読出し専用メモリ（ＲＯＭ）、電気的消去及び書換可能な読出し専用メモリ（ＥＥＰＲＯＭ）、フラッシュ・メモリ、ランダム・アクセス・メモリ（ＲＡＭ）等が含まれる。
そして、前記のプログラム又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク（ＬＡＮ）、メトロポリタン・エリア・ネットワーク（ＭＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、あるいは無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して
記録されていてもよい。また、圧縮や暗号化など、復元可能であればどのような態様で記録されていてもよい。
【図面の簡単な説明】
【００８０】
【図１】第１の実施の形態の構成例についての概念的なモジュール構成図である。
【図２】第１の実施の形態による処理例を示す説明図である。
【図３】第１の実施の形態による処理例を示す説明図である。
【図４】第２の実施の形態の構成例についての概念的なモジュール構成図である。
【図５】第２の実施の形態による処理例を示す説明図である。
【図６】第２の実施の形態による処理例を示す説明図である。
【図７】第３の実施の形態の構成例についての概念的なモジュール構成図である。
【図８】第４の実施の形態の構成例についての概念的なモジュール構成図である。
【図９】第１演算モジュール内の構成例についての概念的なモジュール構成図である。
【図１０】第２論理演算モジュール内の構成例についての概念的なモジュール構成図である。
【図１１】第３論理演算モジュール内の構成例についての概念的なモジュール構成図である。
【図１２】第４の実施の形態による処理例を示す説明図である。
【図１３】第４の実施の形態による処理例を示す説明図である。
【図１４】第１〜４の実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。
【図１５】従来例を示す説明図である。
【図１６】分散値を用いた判定装置の構成例についての概念的なモジュール構成図である。
【図１７】複数色だと判定されない場合に色変化が生じた画像例を示す説明図である。
【図１８】スキャン等によって色変化が生じた画像例を示す説明図である。
【図１９】スキャン等によって色変化が生じた画像例を示す説明図である。
【符号の説明】
【００８１】
１１０、４１０、７１０、８１０…文字部切出モジュール
１２０…限定色化処理モジュール
１３０、４３０、７３１、７３２、７３３、８３１、８３２、８３３…連結画素数算出モジュール
１４０、４４０、７４２、８４２…閾値設定モジュール
１５０、４５０…閾値処理モジュール
４２１、４２２、７２３、８２３…２値化処理モジュール
４２５…論理演算モジュール
７２１、８２１…分散値算出モジュール
７２２、８２２…平均値算出モジュール
７２４…Ｃ１−Ｃ２間論理演算モジュール
７２５…Ｃ１−Ｃ３間論理演算モジュール
７２６…Ｃ２−Ｃ３間論理演算モジュール
７４１、８４１…比較方法決定モジュール
７５０、８５０…複数色判定モジュール
８２４…第１演算モジュール
８２５…第２演算モジュール
８２６…第３演算モジュール
９１０、１０１１、１０１２、１０１３、１１１１、１１１２…膨張処理モジュール
９２１、１０２１…Ｃｂ−Ｙ間ＸＯＲ処理モジュール
９２２、１０２２…Ｃｒ−Ｙ間ＸＯＲ処理モジュール
１１２０…Ｃｂ−Ｃｒ間ＸＯＲ処理モジュール
１６１０…２値化処理モジュール
１６２０…文字部切出モジュール
１６３０…分散値算出モジュール
１６４０…閾値処理モジュール
【図１】
0004770863.tif 000002
【図２】
0004770863.tif 000003
【図３】
0004770863.tif 000004
【図４】
0004770863.tif 000005
【図５】
0004770863.tif 000006
【図６】
0004770863.tif 000007
【図７】
0004770863.tif 000008
【図８】
0004770863.tif 000009
【図９】
0004770863.tif 000010
【図１０】
0004770863.tif 000011
【図１１】
0004770863.tif 000012
【図１２】
0004770863.tif 000013
【図１３】
0004770863.tif 000014
【図１４】
0004770863.tif 000015
【図１５】
0004770863.tif 000016
【図１６】
0004770863.tif 000017
【図１７】
0004770863.tif 000018
【図１８】
0004770863.tif 000019
【図１９】
0004770863.tif 000020