(57)【要約】【課題】２値画像を文字領域又は絵柄領域に分離して階調補正する場合にあって、網点を構成するベクトルとして予め定められた条件を満たしていないベクトルが算出された場合に、そのベクトルを用いて文字領域又は絵柄領域に分離することを防止するようにした画像処理装置を提供する。【解決手段】画像処理装置の画像取得手段は、２値画像を取得し、算出手段は、２値画像内の網点を構成する画素塊間の関係によって定義されるベクトルを算出し、判定手段は、ベクトルが網点を構成するベクトルとして予め定められた条件を満たしているか否かを判定し、分離手段は、条件を満たしていないと判定された場合は、過去に判定手段によって条件を満たしていると判定された場合におけるベクトルに基づいて、２値画像内を文字領域又は絵柄領域に分離し、補正手段は、分離手段による処理結果に基づいて、２値画像に対して階調補正を行う。【選択図】図１
2014120832.tif 000002
【特許請求の範囲】
【請求項１】
２値画像を取得する画像取得手段と、
前記画像取得手段によって取得された２値画像内の網点を構成する画素塊間の関係によって定義されるベクトルを算出する算出手段と、
前記算出手段によって算出されたベクトルが網点を構成するベクトルとして予め定められた条件を満たしているか否かを判定する判定手段と、
前記判定手段によって条件を満たしていないと判定された場合は、過去に前記判定手段によって条件を満たしていると判定された場合における前記算出手段によって算出されたベクトルに基づいて、前記２値画像内を文字領域又は絵柄領域に分離する分離手段と、
前記分離手段による処理結果に基づいて、前記画像取得手段によって取得された２値画像に対して階調補正を行う補正手段
を具備することを特徴とする画像処理装置。
【請求項２】
前記判定手段が判定に用いる予め定められた条件として、予め定められた２値画像の解像度、網点の線数、網点の角度である
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記判定手段が判定に用いる予め定められた条件として、前記算出手段によって算出されたベクトル間の角度が予め定められた値である
ことを特徴とする請求項１に記載の画像処理装置。
【請求項４】
２値画像を取得する画像取得手段と、
前記画像取得手段によって取得された２値画像内の網点を構成する画素塊間の関係によって定義されるベクトルを算出する算出手段と、
前記算出手段によって算出されたベクトルが網点を構成するベクトルとして予め定められた条件を満たしているか否かを判定する判定手段と、
前記算出手段によって算出されたベクトルに基づいて、前記２値画像内を文字領域又は絵柄領域に分離する分離手段と、
前記判定手段によって条件を満たしていないと判定された場合は、前記分離手段による処理結果を修正する修正手段と、
前記分離手段による処理結果又は前記修正手段による修正結果に基づいて、前記画像取得手段によって取得された２値画像に対して階調補正を行う補正手段
を具備することを特徴とする画像処理装置。
【請求項５】
２値画像を取得する画像取得手段と、
前記画像取得手段によって取得された２値画像内の網点を構成する画素塊間の関係によって定義されるベクトルを算出する算出手段と、
前記算出手段によって算出されたベクトルが網点を構成するベクトルとして予め定められた条件を満たしているか否かを判定する判定手段と、
前記算出手段によって算出されたベクトルに基づいて、前記２値画像内を文字領域又は絵柄領域に分離する分離手段と、
前記判定手段によって条件を満たしていないと判定された場合は、予め定められた文字領域又は絵柄領域である分離結果に基づいて、前記画像取得手段によって取得された２値画像に対して階調補正を行い、前記判定手段によって条件を満たしていると判定された場合は、前記分離手段による処理結果に基づいて、前記画像取得手段によって取得された２値画像に対して階調補正を行う補正手段
を具備することを特徴とする画像処理装置。
【請求項６】
コンピュータを、
２値画像を取得する画像取得手段と、
前記画像取得手段によって取得された２値画像内の網点を構成する画素塊間の関係によって定義されるベクトルを算出する算出手段と、
前記算出手段によって算出されたベクトルが網点を構成するベクトルとして予め定められた条件を満たしているか否かを判定する判定手段と、
前記判定手段によって条件を満たしていないと判定された場合は、過去に前記判定手段によって条件を満たしていると判定された場合における前記算出手段によって算出されたベクトルに基づいて、前記２値画像内を文字領域又は絵柄領域に分離する分離手段と、
前記分離手段による処理結果に基づいて、前記画像取得手段によって取得された２値画像に対して階調補正を行う補正手段
として機能させるための画像処理プログラム。
【請求項７】
コンピュータを、
２値画像を取得する画像取得手段と、
前記画像取得手段によって取得された２値画像内の網点を構成する画素塊間の関係によって定義されるベクトルを算出する算出手段と、
前記算出手段によって算出されたベクトルが網点を構成するベクトルとして予め定められた条件を満たしているか否かを判定する判定手段と、
前記算出手段によって算出されたベクトルに基づいて、前記２値画像内を文字領域又は絵柄領域に分離する分離手段と、
前記判定手段によって条件を満たしていないと判定された場合は、前記分離手段による処理結果を修正する修正手段と、
前記分離手段による処理結果又は前記修正手段による修正結果に基づいて、前記画像取得手段によって取得された２値画像に対して階調補正を行う補正手段
として機能させるための画像処理プログラム。
【請求項８】
コンピュータを、
２値画像を取得する画像取得手段と、
前記画像取得手段によって取得された２値画像内の網点を構成する画素塊間の関係によって定義されるベクトルを算出する算出手段と、
前記算出手段によって算出されたベクトルが網点を構成するベクトルとして予め定められた条件を満たしているか否かを判定する判定手段と、
前記算出手段によって算出されたベクトルに基づいて、前記２値画像内を文字領域又は絵柄領域に分離する分離手段と、
前記判定手段によって条件を満たしていないと判定された場合は、予め定められた文字領域又は絵柄領域である分離結果に基づいて、前記画像取得手段によって取得された２値画像に対して階調補正を行い、前記判定手段によって条件を満たしていると判定された場合は、前記分離手段による処理結果に基づいて、前記画像取得手段によって取得された２値画像に対して階調補正を行う補正手段
として機能させるための画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置及び画像処理プログラムに関する。
【背景技術】
【０００２】
特許文献１には、入力される２値画像データが有する網点成分を保持しつつ色補正の補正結果を精度よく反映した２値画像を出力することを課題とし、画像処理装置は２値画像データを受け取り、この２値画像データを基に多値画像データを生成し、この多値画像データに対して色補正を施した色補正画像データを生成し、画像処理装置は、２値画像データにおける注目画素の値と、注目画素に隣接する画素の値とに基づいて、２値画像データ又は色補正画像データに誤差拡散を施して２値化した再２値化画像データのいずれを出力するか選択し、選択結果にしたがって、２値画像データ又は再２値化画像データのいずれかを出力することが開示されている。
【０００３】
特許文献２には、画像に使用されているスクリーンの線数と角度を抽出するにあたって、本構成を有していない場合に比較して、処理量を削減するようにした画像処理装置を提供することを課題とし、画像処理装置の分離手段は、画像内の画素が連結している領域を分離し、代表点決定手段は、前記分離手段によって分離された領域を代表する代表点を決定し、ベクトル算出手段は、前記代表点決定手段によって決定された代表点に基づいて、２つの代表点で構成されるベクトルを算出し、スクリーン線数角度抽出手段は、前記ベクトル算出手段によって算出されたベクトルの分布に基づいて、前記画像内に使用されているスクリーンの線数と角度を抽出することが開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−０２７２７０号公報
【特許文献２】特開２０１２−１７５２２０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は、２値画像を文字領域又は絵柄領域に分離して階調補正する場合にあって、網点を構成するベクトルとして予め定められた条件を満たしていないベクトルが算出された場合に、そのベクトルを用いて文字領域又は絵柄領域に分離することを防止するようにした画像処理装置及び画像処理プログラムを提供することを目的としている。
【課題を解決するための手段】
【０００６】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
請求項１の発明は、２値画像を取得する画像取得手段と、前記画像取得手段によって取得された２値画像内の網点を構成する画素塊間の関係によって定義されるベクトルを算出する算出手段と、前記算出手段によって算出されたベクトルが網点を構成するベクトルとして予め定められた条件を満たしているか否かを判定する判定手段と、前記判定手段によって条件を満たしていないと判定された場合は、過去に前記判定手段によって条件を満たしていると判定された場合における前記算出手段によって算出されたベクトルに基づいて、前記２値画像内を文字領域又は絵柄領域に分離する分離手段と、前記分離手段による処理結果に基づいて、前記画像取得手段によって取得された２値画像に対して階調補正を行う補正手段を具備することを特徴とする画像処理装置である。
【０００７】
請求項２の発明は、前記判定手段が判定に用いる予め定められた条件として、予め定められた２値画像の解像度、網点の線数、網点の角度であることを特徴とする請求項１に記載の画像処理装置である。
【０００８】
請求項３の発明は、前記判定手段が判定に用いる予め定められた条件として、前記算出手段によって算出されたベクトル間の角度が予め定められた値であることを特徴とする請求項１に記載の画像処理装置である。
【０００９】
請求項４の発明は、２値画像を取得する画像取得手段と、前記画像取得手段によって取得された２値画像内の網点を構成する画素塊間の関係によって定義されるベクトルを算出する算出手段と、前記算出手段によって算出されたベクトルが網点を構成するベクトルとして予め定められた条件を満たしているか否かを判定する判定手段と、前記算出手段によって算出されたベクトルに基づいて、前記２値画像内を文字領域又は絵柄領域に分離する分離手段と、前記判定手段によって条件を満たしていないと判定された場合は、前記分離手段による処理結果を修正する修正手段と、前記分離手段による処理結果又は前記修正手段による修正結果に基づいて、前記画像取得手段によって取得された２値画像に対して階調補正を行う補正手段を具備することを特徴とする画像処理装置である。
【００１０】
請求項５の発明は、２値画像を取得する画像取得手段と、前記画像取得手段によって取得された２値画像内の網点を構成する画素塊間の関係によって定義されるベクトルを算出する算出手段と、前記算出手段によって算出されたベクトルが網点を構成するベクトルとして予め定められた条件を満たしているか否かを判定する判定手段と、前記算出手段によって算出されたベクトルに基づいて、前記２値画像内を文字領域又は絵柄領域に分離する分離手段と、前記判定手段によって条件を満たしていないと判定された場合は、予め定められた文字領域又は絵柄領域である分離結果に基づいて、前記画像取得手段によって取得された２値画像に対して階調補正を行い、前記判定手段によって条件を満たしていると判定された場合は、前記分離手段による処理結果に基づいて、前記画像取得手段によって取得された２値画像に対して階調補正を行う補正手段を具備することを特徴とする画像処理装置である。
【００１１】
請求項６の発明は、コンピュータを、２値画像を取得する画像取得手段と、前記画像取得手段によって取得された２値画像内の網点を構成する画素塊間の関係によって定義されるベクトルを算出する算出手段と、前記算出手段によって算出されたベクトルが網点を構成するベクトルとして予め定められた条件を満たしているか否かを判定する判定手段と、前記判定手段によって条件を満たしていないと判定された場合は、過去に前記判定手段によって条件を満たしていると判定された場合における前記算出手段によって算出されたベクトルに基づいて、前記２値画像内を文字領域又は絵柄領域に分離する分離手段と、前記分離手段による処理結果に基づいて、前記画像取得手段によって取得された２値画像に対して階調補正を行う補正手段として機能させるための画像処理プログラムである。
【００１２】
請求項７の発明は、コンピュータを、２値画像を取得する画像取得手段と、前記画像取得手段によって取得された２値画像内の網点を構成する画素塊間の関係によって定義されるベクトルを算出する算出手段と、前記算出手段によって算出されたベクトルが網点を構成するベクトルとして予め定められた条件を満たしているか否かを判定する判定手段と、前記算出手段によって算出されたベクトルに基づいて、前記２値画像内を文字領域又は絵柄領域に分離する分離手段と、前記判定手段によって条件を満たしていないと判定された場合は、前記分離手段による処理結果を修正する修正手段と、前記分離手段による処理結果又は前記修正手段による修正結果に基づいて、前記画像取得手段によって取得された２値画像に対して階調補正を行う補正手段として機能させるための画像処理プログラムである。
【００１３】
請求項８の発明は、コンピュータを、２値画像を取得する画像取得手段と、前記画像取得手段によって取得された２値画像内の網点を構成する画素塊間の関係によって定義されるベクトルを算出する算出手段と、前記算出手段によって算出されたベクトルが網点を構成するベクトルとして予め定められた条件を満たしているか否かを判定する判定手段と、前記算出手段によって算出されたベクトルに基づいて、前記２値画像内を文字領域又は絵柄領域に分離する分離手段と、前記判定手段によって条件を満たしていないと判定された場合は、予め定められた文字領域又は絵柄領域である分離結果に基づいて、前記画像取得手段によって取得された２値画像に対して階調補正を行い、前記判定手段によって条件を満たしていると判定された場合は、前記分離手段による処理結果に基づいて、前記画像取得手段によって取得された２値画像に対して階調補正を行う補正手段として機能させるための画像処理プログラムである。
【発明の効果】
【００１４】
請求項１の画像処理装置によれば、２値画像を文字領域又は絵柄領域に分離して階調補正する場合にあって、網点を構成するベクトルとして予め定められた条件を満たしていないベクトルが算出された場合に、そのベクトルを用いて文字領域又は絵柄領域に分離することを防止することができる。
【００１５】
請求項２の画像処理装置によれば、予め定められた２値画像の解像度、網点の線数、網点の角度を予め定められた条件として判定することができる。
【００１６】
請求項３の画像処理装置によれば、ベクトル間の角度が予め定められた値を予め定められた条件として判定することができる。
【００１７】
請求項４の画像処理装置によれば、２値画像を文字領域又は絵柄領域に分離して階調補正する場合にあって、網点を構成するベクトルとして予め定められた条件を満たしていないベクトルが算出された場合に、文字領域又は絵柄領域の分離結果を修正することができる。
【００１８】
請求項５の画像処理装置によれば、２値画像を文字領域又は絵柄領域に分離して階調補正する場合にあって、網点を構成するベクトルとして予め定められた条件を満たしていないベクトルが算出された場合に、予め定められた文字領域又は絵柄領域である分離結果に基づいて、その２値画像に対して階調補正を行うことができる。
【００１９】
請求項６の画像処理プログラムによれば、２値画像を文字領域又は絵柄領域に分離して階調補正する場合にあって、網点を構成するベクトルとして予め定められた条件を満たしていないベクトルが算出された場合に、そのベクトルを用いて文字領域又は絵柄領域に分離することを防止することができる。
【００２０】
請求項７の画像処理プログラムによれば、２値画像を文字領域又は絵柄領域に分離して階調補正する場合にあって、網点を構成するベクトルとして予め定められた条件を満たしていないベクトルが算出された場合に、文字領域又は絵柄領域の分離結果を修正することができる。
【００２１】
請求項８の画像処理プログラムによれば、２値画像を文字領域又は絵柄領域に分離して階調補正する場合にあって、網点を構成するベクトルとして予め定められた条件を満たしていないベクトルが算出された場合に、予め定められた文字領域又は絵柄領域である分離結果に基づいて、その２値画像に対して階調補正を行うことができる。
【図面の簡単な説明】
【００２２】
【図１】第１の実施の形態の構成例についての概念的なモジュール構成図である。
【図２】第１の実施の形態による処理例を示すフローチャートである。
【図３】第１の実施の形態（ベクトル値算出モジュール）の構成例についての概念的なモジュール構成図である。
【図４】第１の実施の形態（ベクトル値算出モジュール）による処理例を示すフローチャートである。
【図５】第１の実施の形態（ベクトル値算出モジュール）による変化点抽出処理、特徴点抽出処理の例を示す説明図である。
【図６】第１の実施の形態（ベクトル値算出モジュール）による特徴点選定処理の例を示す説明図である。
【図７】第１の実施の形態（ベクトル値算出モジュール）によるピークを決定する処理例を示す説明図である。
【図８】第１の実施の形態（ベクトル値算出モジュール）によるベクトル算出の処理例を示す説明図である。
【図９】第１の実施の形態（不正判定モジュール）による処理例を示す説明図である。
【図１０】第１の実施の形態（不正判定モジュール）による処理例を示す説明図である。
【図１１】第１の実施の形態（不正判定モジュール）による処理例を示す説明図である。
【図１２】第１の実施の形態（不正判定モジュール）による処理例を示す説明図である。
【図１３】第１の実施の形態（不正判定モジュール）による処理例を示す説明図である。
【図１４】第２の実施の形態の構成例についての概念的なモジュール構成図である。
【図１５】第２の実施の形態による処理例を示すフローチャートである。
【図１６】第３の実施の形態の構成例についての概念的なモジュール構成図である。
【図１７】第３の実施の形態による処理例を示すフローチャートである。
【図１８】本実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【００２３】
以下、図面に基づき本発明を実現するにあたっての好適な各種の実施の形態の例を説明する。
＜第１の実施の形態＞
図１は、第１の実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア（コンピュータ・プログラム）、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、それらのモジュールとして機能させるためのコンピュータ・プログラム（コンピュータにそれぞれの手順を実行させるためのプログラム、コンピュータをそれぞれの手段として機能させるためのプログラム、コンピュータにそれぞれの機能を実現させるためのプログラム）、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するの意である。また、モジュールは機能に一対一に対応していてもよいが、実装においては、１モジュールを１プログラムで構成してもよいし、複数モジュールを１プログラムで構成してもよく、逆に１モジュールを複数プログラムで構成してもよい。また、複数モジュールは１コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって１モジュールが複数コンピュータで実行されてもよい。なお、１つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続（データの授受、指示、データ間の参照関係等）の場合にも用いる。「予め定められた」とは、対象としている処理の前に定まっていることをいい、本実施の形態による処理が始まる前はもちろんのこと、本実施の形態による処理が始まった後であっても、対象としている処理の前であれば、そのときの状況・状態に応じて、又はそれまでの状況・状態に応じて定まることの意を含めて用いる。「予め定められた値」が複数ある場合は、それぞれ異なった値であってもよいし、２以上の値（もちろんのことながら、全ての値も含む）が同じであってもよい。また、「Ａである場合、Ｂをする」という意味を有する記載は、「Ａであるか否かを判断し、Ａであると判断した場合はＢをする」の意味で用いる。ただし、Ａであるか否かの判断が不要である場合を除く。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク（一対一対応の通信接続を含む）等の通信手段で接続されて構成されるほか、１つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。もちろんのことながら、「システム」には、人為的な取り決めである社会的な「仕組み」（社会システム）にすぎないものは含まない。
また、各モジュールによる処理毎に又はモジュール内で複数の処理を行う場合はその処理毎に、対象となる情報を記憶装置から読み込み、その処理を行った後に、処理結果を記憶装置に書き出すものである。したがって、処理前の記憶装置からの読み込み、処理後の記憶装置への書き出しについては、説明を省略する場合がある。なお、ここでの記憶装置としては、ハードディスク、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、外部記憶媒体、通信回線を介した記憶装置、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）内のレジスタ等を含んでいてもよい。
【００２４】
第１の実施の形態である画像処理装置は、２値画像を文字領域又は絵柄領域に分離して階調補正するものであって、図１の例に示すように、２値画像取得モジュール１１０、ベクトル値算出モジュール１２０、不正判定モジュール１３０、記憶モジュール１４０、２値絵柄文字分離モジュール１５０、２値階調補正モジュール１６０、出力モジュール１７０を有している。
【００２５】
２値画像取得モジュール１１０は、ベクトル値算出モジュール１２０、２値階調補正モジュール１６０と接続されている。２値画像取得モジュール１１０は、２値画像を取得する。ここでの２値画像は、いわゆる中間調領域がスクリーンによって表現されている画像であって、１画素が１ビットで表現されている。ただし、２値画像として、複数色版の２値画像からなるカラー画像であってもよい。また、取得した画像が網点処理（以下、スクリーン処理ともいう）され、紙等の記録媒体上に記録された画像をスキャナ等の撮像装置にて読み込んだ多値画像（カラー画像を含む）である場合は、その画像に２値化処理を施して２値画像に変換するようにしてもよい。そして２値画像は、全体に網点処理が施されていてもよいし、網点処理が行われている領域と網点処理が行われていない領域が混在していてもよいし、網点処理は行われていない画像であってもよい。網点処理は、マルチスクリーン処理であってもよい。対象とするスクリーンとしては、例えば、ドット集中型ディザスクリーン、ラインスクリーン等がある。ドット集中型ディザスクリーンとしては、チェーンドットスクリーン（スクエアドットを斜めに変形させたもので、菱形のドットがチェーン状につながった網目となるスクリーン）がある。ラインスクリーンとは、略直線を色版内で同角度かつ略同間隔で並べるものであり、万線スクリーンとも呼ばれる。画像を取得するとは、例えば、スキャナ、カメラ等で画像を読み込むこと、ファックス等で通信回線を介して外部機器から画像を受信すること、ハードディスク（コンピュータに内蔵されているものの他に、ネットワークを介して接続されているもの等を含む）等に記憶されている画像を読み出すこと等が含まれる。受け付ける画像は、１枚であってもよいし、複数枚であってもよい。また、画像の内容として、ビジネスに用いられる文書、広告宣伝用のパンフレット等であってもよい。画像の解像度は限定しないが、例えば２４００ｄｐｉ等がある。
【００２６】
ベクトル値算出モジュール１２０は、２値画像取得モジュール１１０、不正判定モジュール１３０、記憶モジュール１４０、２値絵柄文字分離モジュール１５０と接続されている。ベクトル値算出モジュール１２０は、２値画像取得モジュール１１０によって取得された２値画像内の網点を構成する画素塊間の関係によって定義されるベクトルを算出する。ベクトルとは、対象とする網点の画素塊Ａを定め、その画素塊Ａに近い２つの網点の画素塊Ｂ、画素塊Ｃを抽出し、画素塊Ａと画素塊Ｂを通るベクトルＸ、画素塊Ａと画素塊Ｃを通るベクトルＹのことである。そして、ベクトルＸの長さ（画素塊Ａと画素塊Ｂとの間の距離）、ベクトルＹの長さ（画素塊Ａと画素塊Ｃとの間の距離）、ベクトルＸとベクトルＹによって構成される角度によって網点の情報（線数、角度）を抽出することができる。その他のベクトル値算出モジュール１２０の構成例、処理内容例については、図３〜８を用いて後述する。
【００２７】
不正判定モジュール１３０は、ベクトル値算出モジュール１２０、記憶モジュール１４０と接続されている。不正判定モジュール１３０は、ベクトル値算出モジュール１２０によって算出されたベクトルが網点を構成するベクトルとして予め定められた条件を満たしているか否かを判定する。
不正判定モジュール１３０が判定に用いる予め定められた条件として、予め定められた２値画像の解像度、網点の線数、網点の角度としてもよい。予め定められた２値画像の解像度、網点の線数、網点の角度とは、ある範囲を持った値であってもよい。この条件については、図９を用いて後述する。
また、不正判定モジュール１３０が判定に用いる予め定められた条件として、ベクトル値算出モジュール１２０によって算出されたベクトル間の角度が予め定められた値としてもよい。予め定められた値として、例えば、９０度がある。もちろんのことながら、ある範囲を持った値であってもよい。この条件については後述する。
【００２８】
記憶モジュール１４０は、ベクトル値算出モジュール１２０、不正判定モジュール１３０、２値絵柄文字分離モジュール１５０と接続されている。記憶モジュール１４０は、不正判定モジュール１３０によって条件を満たしていると判定された場合におけるベクトル値算出モジュール１２０によって算出されたベクトルを記憶する。例えば、不正判定モジュール１３０によって条件を満たしていると判定された場合における直近のベクトルを記憶するようにしてもよい。
２値絵柄文字分離モジュール１５０は、ベクトル値算出モジュール１２０、記憶モジュール１４０、２値階調補正モジュール１６０と接続されている。２値絵柄文字分離モジュール１５０は、不正判定モジュール１３０によって条件を満たしていないと判定された場合は、記憶モジュール１４０に記憶されているベクトル（過去に不正判定モジュール１３０によって条件を満たしていると判定された場合におけるベクトル値算出モジュール１２０によって算出されたベクトル）に基づいて、２値画像内を文字領域又は絵柄領域に分離する。また、２値絵柄文字分離モジュール１５０は、不正判定モジュール１３０によって条件を満たしていると判定された場合は、ベクトル値算出モジュール１２０によって算出されたベクトルに基づいて、２値画像内を文字領域又は絵柄領域に分離する。分離処理は、例えば、算出されたベクトル内（ベクトルの距離内）に画素があるか否かを判定し、画素がある場合は絵柄領域（中間調領域）として分離し、画素がない場合は文字領域として分離する。また、既存の技術を用いてもよい。
【００２９】
２値階調補正モジュール１６０は、２値画像取得モジュール１１０、２値絵柄文字分離モジュール１５０、出力モジュール１７０と接続されている。２値階調補正モジュール１６０は、２値絵柄文字分離モジュール１５０による処理結果に基づいて、２値画像取得モジュール１１０によって取得された２値画像に対して階調補正を行う。領域の種類（文字領域、絵柄領域）に応じて階調補正処理を行う。例えば、文字領域に対して階調補正は行わずに、絵柄領域に対してだけ階調補正を行う。階調補正の処理自体は、既存の技術を用いればよい。
出力モジュール１７０は、２値階調補正モジュール１６０と接続されている。出力モジュール１７０は、２値階調補正モジュール１６０によって階調補正された画像を受け取り、その画像を出力する。画像を出力するとは、例えば、プリンタ等の印刷装置で印刷すること、ディスプレイ等の表示装置に表示すること、ファックス等の画像送信装置で画像を送信すること、画像データベース等の画像記憶装置へ画像を書き込むこと、メモリーカード等の記憶媒体に記憶すること、他の情報処理装置へ渡すこと等が含まれる。
【００３０】
なお、本実施の形態（後述する実施の形態を含む）におけるベクトル値算出モジュール１２０、２値絵柄文字分離モジュール１５０等は、予め定められた領域毎に処理を行うようにしてもよい。領域として、本実施の形態の処理をハードウェアで実現する場合には、例えばライン（行）毎とする。具体的には、２値絵柄文字分離モジュール１５０は、対象となる行のベクトル値が不正（予め定められた条件を満たしていないとする判定）だった場合、一つ上の行におけるベクトル値を利用して、その行を文字領域と絵柄領域に分離する。
【００３１】
図２は、第１の実施の形態による処理例を示すフローチャートである。
ステップＳ２０２では、２値画像取得モジュール１１０が、２値画像を取得する。
ステップＳ２０４では、ベクトル値算出モジュール１２０が、ライン毎に２値画像のベクトル値を算出する。
ステップＳ２０６では、不正判定モジュール１３０が、ベクトル値が不正かどうかを判定し、不正である場合はステップＳ２０８へ進み、不正ではない場合はステップＳ２１０へ進む。
ステップＳ２０８では、２値絵柄文字分離モジュール１５０が、記憶モジュール１４０に記憶されているひとつ前の行のベクトル値を利用して絵柄文字分離を実施する。
ステップＳ２１０では、２値絵柄文字分離モジュール１５０が、そのラインにおけるベクトル値を利用して絵柄文字分離を実施する。
ステップＳ２１２では、２値階調補正モジュール１６０が、絵柄文字分離の結果を利用して階調補正を実施する。
ステップＳ２１４では、出力モジュール１７０が、階調補正された２値画像を出力する。
【００３２】
ベクトル値算出モジュール１２０は、画像に使用されているラインスクリーンの線数と角度を抽出するものであって、図３の例に示すように、画像受付モジュール３１０、変化点抽出モジュール３４０Ａ、変化点抽出モジュール３４０Ｂ、特徴点抽出モジュール３５０Ａ、特徴点抽出モジュール３５０Ｂ、特徴点選定モジュール３６０、ベクトル算出モジュール３７０、ピーク検出モジュール３８０、出力モジュール３９０を有している。
【００３３】
画像受付モジュール３１０は、変化点抽出モジュール３４０Ａ、変化点抽出モジュール３４０Ｂと接続されている。画像受付モジュール３１０は、対象となる画像を受け付けて、その画像を変化点抽出モジュール３４０Ａ、変化点抽出モジュール３４０Ｂへ渡す。
【００３４】
変化点抽出モジュール３４０Ａは、画像受付モジュール３１０、特徴点抽出モジュール３５０Ａと接続されている。変化点抽出モジュール３４０Ａは、画像受付モジュール３１０が受け付けた画像の主走査方向の画素値が変化（黒画素が白画素に変化）する箇所を変化点として抽出する。
【００３５】
変化点抽出モジュール３４０Ｂは、画像受付モジュール３１０、特徴点抽出モジュール３５０Ｂと接続されている。変化点抽出モジュール３４０Ｂは、画像受付モジュール３１０が受け付けた画像の主走査方向の画素値が変化（白画素が黒画素に変化）する箇所を変化点として抽出する。
【００３６】
なお、変化点抽出モジュール３４０Ａ、変化点抽出モジュール３４０Ｂは、主走査方向への走査によって、変化点を抽出しているが、画像受付モジュール３１０が受け付けた画像とその画像を１画素右又は左にずらした画像との排他的論理和（ＥＯＲ）処理を施すことによって、変化点を抽出してもよい。その場合、変化点は、黒画素が白画素に変化したものであるか、白画素が黒画素に変化したものであるかについては、その変化点における画素値によって判断することができる。例えば、１画素右にずらした画像との排他的論理和処理の場合は、元の画像における変化点の位置にある画素値が黒（例えば１）である場合は、白画素が黒画素に変化したものであり、元の画像における変化点の位置にある画素値が白（例えば０）である場合は、黒画素が白画素に変化したものである。
また、変化点抽出モジュール３４０Ａ、変化点抽出モジュール３４０Ｂは、画像受付モジュール３１０が受け付けた画像の副走査方向において予め定められた間隔で主走査方向の変化点を抽出するようにしてもよい。つまり、主走査ライン毎に変化点を抽出するのではなく、間隔をおいた主走査ラインで変化点を抽出するようにしてもよい。
【００３７】
特徴点抽出モジュール３５０Ａは、変化点抽出モジュール３４０Ａ、特徴点選定モジュール３６０と接続されている。特徴点抽出モジュール３５０Ａは、変化点抽出モジュール３４０Ａによって抽出された変化点Ａとその変化点Ａから主走査方向にある変化点Ｂとの中点を特徴点として抽出する。
特徴点抽出モジュール３５０Ｂは、変化点抽出モジュール３４０Ｂ、特徴点選定モジュール３６０と接続されている。特徴点抽出モジュール３５０Ｂは、変化点抽出モジュール３４０Ｂによって抽出された変化点Ｃとその変化点Ｃから主走査方向にある変化点Ｄとの中点を特徴点として抽出する。
「変化点Ａ（Ｃ）から主走査方向にある変化点Ｂ（Ｄ）の例」の具体例としては、変化点Ａ（Ｃ）から主走査方向にあって、その変化点Ａ（Ｃ）から最も近くにある別の変化点Ｂ（Ｄ）がある。
また、変化点Ｂ（Ｄ）は、変化点Ａ（Ｃ）とは逆の変化であるものを選択するようにしてもよい。変化点Ａ（Ｃ）が黒画素から白画素への変化点である場合は、変化点Ｂ（Ｄ）は白画素から黒画素への変化点であり、変化点Ａ（Ｃ）が白画素から黒画素への変化点である場合は、変化点Ｂ（Ｄ）は黒画素から白画素への変化点である。なお、この場合、特徴点抽出モジュール３５０Ａ、特徴点抽出モジュール３５０Ｂは、変化点抽出モジュール３４０Ａ、変化点抽出モジュール３４０Ｂから変換点の情報を受け取ることになる。
なお、中点（特徴点）とは、変化点Ａ（Ｃ）と変化点Ｂ（Ｄ）の中間にある点であり、ｘ座標（主走査方向）において、（変化点Ａ（Ｃ）のｘ座標）＋（変化点Ｂ（Ｄ）のｘ座標）／２で算出できる。中点の位置の算出において、小数部は統一されていれば切り捨て・切り上げ・四捨五入いずれでもよい。
また、特徴点抽出モジュール３５０Ａ、特徴点抽出モジュール３５０Ｂは、画像受付モジュール３１０が受け付けた画像の副走査方向において予め定められた間隔で特徴点を抽出するようにしてもよい。つまり、主走査ライン毎に特徴点を抽出するのではなく、間隔をおいた主走査ラインで特徴点を抽出するようにしてもよい。
【００３８】
特徴点選定モジュール３６０は、特徴点抽出モジュール３５０Ａ、特徴点抽出モジュール３５０Ｂ、ベクトル算出モジュール３７０と接続されている。特徴点選定モジュール３６０は、特徴点抽出モジュール３５０Ａ、特徴点抽出モジュール３５０Ｂによって抽出された特徴点から注目特徴点を設定し、その注目特徴点の周辺領域を探索して、注目特徴点と同種の特徴点を複数選定する。
「注目特徴点の周辺領域を探索」とは、例えば、注目特徴点から主走査方向に走査した場合に最初に発見した特徴点（つまり、注目特徴点に主走査方向で最も近い特徴点）であり、注目特徴点と同種のものであってもよいし、注目特徴点から副走査方向（斜め下又は斜め上を含む）に探索して、注目特徴点に最も近い特徴点であり、注目特徴点と同種のものであってもよい。
「注目特徴点と同種の特徴点」とは、注目特徴点が、黒画素から白画素への変化点（以下、黒白変化点ともいう）を左側として、白画素から黒画素への変化点（以下、白黒変化点ともいう）を右側とした場合の中点の場合は、黒白変化点を左側として、白黒変化点を右側とした場合の中点（特徴点）をいい、注目特徴点が、白黒変化点を左側として、黒白変化点を右側とした場合の中点の場合は、白黒変化点を左側として、黒白変化点を右側とした場合の中点（特徴点）をいう。もちろんのことながら、注目特徴点が、白黒変化点を左側として、白黒変化点を右側とした場合の中点の場合は、白黒変化点を左側として、白黒変化点を右側とした場合の中点（特徴点）をいい、注目特徴点が、黒白変化点を左側として、黒白変化点を右側とした場合の中点の場合は、黒白変化点を左側として、黒白変化点を右側とした場合の中点（特徴点）をいう。
選定する複数の特徴点としては、２つの特徴点であり、主走査方向にある特徴点と、斜め下又は斜め上を含む副走査方向にある特徴点である。つまり、注目特徴点と選定した特徴点とによって２つのベクトルを生成できるようにする。
【００３９】
ベクトル算出モジュール３７０は、特徴点選定モジュール３６０、ピーク検出モジュール３８０と接続されている。ベクトル算出モジュール３７０は、注目特徴点と特徴点選定モジュール３６０によって選定された特徴点との距離及び方向を表すベクトルを算出する。例えば、注目特徴点を原点とした場合のベクトルの長さ、傾きが該当する。
【００４０】
ピーク検出モジュール３８０は、ベクトル算出モジュール３７０、出力モジュール３９０と接続されている。ピーク検出モジュール３８０は、ベクトル算出モジュール３７０によって算出されたベクトルの分布に基づいて、画像受付モジュール３１０が受け付けた画像内に使用されているラインスクリーンの線数と角度を抽出する。
また、ピーク検出モジュール３８０は、その抽出したスクリーンの線数又は角度と予め定められた線数又は角度との差が予め定められた関係にある場合は、その抽出したスクリーンの線数又は角度を該予め定められた線数又は角度として抽出するようにしてもよい。
「予め定められた線数又は角度」とは、記憶装置に記憶された値であり、一般的に用いられているスクリーンの線数又は角度をいう。例えば、線数として１００線、１５０線、２００線等、角度として０度、４５度、９０度等がある。また、予め定められた線数又は角度は、それぞれ複数あってもよい。
予め定められた関係とは、その差が予め定められた閾値以下又は未満である場合である。
抽出したスクリーンの線数又は角度と予め定められた線数又は角度との関係としては、（１）抽出したスクリーンの線数と予め定められた線数、（２）抽出したスクリーンの角度と予め定められた角度、（３）抽出したスクリーンの線数と予め定められた線数及び抽出したスクリーンの角度と予め定められた角度の関係がある。
【００４１】
出力モジュール３９０は、ピーク検出モジュール３８０と接続されている。出力モジュール３９０は、ピーク検出モジュール３８０によって抽出されたラインスクリーンの線数と角度を出力する。出力するとは、例えば、画像データベース等の画像記憶装置へ画像受付モジュール３１０が受け付けた画像に対応させて（例えば、その画像の属性として）書き込むこと、メモリーカード等の記憶媒体に記憶すること、他の情報処理装置へ渡すこと等が含まれる。スクリーンの線数と角度を受け取った他の画像処理装置では、例えば、画像受付モジュール３１０が受け取った２値画像を多値化する処理、文字領域とスクリーン処理が施された領域（例えば、写真等）に分離する処理等を行う。
【００４２】
図４は、第１の実施の形態（ベクトル値算出モジュール１２０）による処理例を示すフローチャートである。
ステップＳ４０２では、画像受付モジュール３１０が、対象とする画像を受け付ける。例えば、図５（ａ）の例に示す画像が、画像受付モジュール３１０が受け付けた画像の一部分である。この例では、１６×１６のブロック毎に処理していることを示している。
ステップＳ４０８では、変化点抽出モジュール３４０Ａ、変化点抽出モジュール３４０Ｂが、変化点を抽出する。例えば、図５（ｂ）の例に示すように、斜線が施されている画素は黒画素から白画素への変化点を示しており、黒画素は白画素から黒画素への変化点を示している。この例では、各主走査ライン毎に変化点を抽出している。
【００４３】
ステップＳ４１０では、特徴点抽出モジュール３５０Ａ、特徴点抽出モジュール３５０Ｂが、特徴点を抽出する。例えば、図５（ｃ）の例に示すように、斜線が施されている画素は、左側に黒白変化点があり右側に白黒変化点がある特徴点を示しており、黒画素は左側に白黒変化点があり右側に黒白変化点がある特徴点を示している。
【００４４】
ステップＳ４１２では、特徴点選定モジュール３６０が、探索領域内での特徴点を選定する。図６の例を用いて説明する。まず、特徴点選定モジュール３６０が、特徴点６０６を注目特徴点として設定する。そして、特徴点６０６を最上ラインの中央とし、高さを特徴点抽出時（ステップＳ４１０）の副走査方向の間隔としたブロック（図６の例における画素からなる矩形）を設定する。このブロックの横幅は、本実施の形態が処理可能な線数の範囲の下限に基づいて定めればよく、ブロックの高さについては後述する。また、このブロックにおいて最下ラインにおいて特徴点６０６（注目特徴点）の左側を探索領域（図６の例では探索範囲６９０の特徴点６０６のｘ座標から左側）とし、その右側を探索領域（図６の例では探索範囲６９０の特徴点６０６のｘ座標から右側）とし、ブロックの最上ラインの右側を探索領域（図６の例では探索範囲６８０）とし、特徴点６０６（注目特徴点）と同種の特徴点で、特徴点６０６（注目特徴点）に最も近い特徴点を選定する。図６の例では、最下ラインでは特徴点６１４、最上ラインでは特徴点６１０が選定される。つまり、１つの注目特徴点（特徴点６０６）に対して、２つの特徴点（特徴点６１４、特徴点６１０）が選定されることになる。
なお、ステップＳ４１２での選定は、注目特徴点と同じライン上にある特徴点と、注目特徴点が含まれるラインと隣にあるラインに含まれており注目特徴点とは同じ主走査ライン上にある特徴点を選定すればよい。
ステップＳ４１４では、特徴点選定モジュール３６０が、領域内の探索が終了したか否かを判断し、終了した場合はステップＳ４１６へ進み、それ以外の場合はステップＳ４１２へ戻る。対象としている画像内の領域全体での処理が終了したか否かの判断をしている。
【００４５】
ステップＳ４１６では、ベクトル算出モジュール３７０が、注目特徴点から選定特徴点への距離・方向を示すベクトルを算出する。図６の例では、特徴点６０６（注目特徴点）を原点として、選定された特徴点６１４による第１ベクトルとして（ｘ１，ｙ１）、選定された特徴点６１０による第２ベクトルとして（ｘ３，０）が算出される。
ステップＳ４１８では、ピーク検出モジュール３８０が、ベクトルのヒストグラムのピーク値を検出する。なお、ブロックの高さは一定なので、ベクトルのｘ座標をヒストグラム化すればよい。
図７は、第１の実施の形態（ベクトル値算出モジュール１２０）によるピークを決定する処理例を示す説明図である。
図７は、１位の値と２位の値とを用いたピークを決定する処理例を示す説明図である。図７に示すヒストグラム例は、横軸に座標位置、縦軸に分布数を示す。図７（ａ）のヒストグラム例は、１位の値と２位の値との差が閾値以上であり、ピークと判断したものである。図７（ｂ）のヒストグラム例は、１位の値と２位の値との差が閾値未満であり、ピークとは判断できなかったものである。このように、ピークを抽出できなかった場合は、ラインスクリーンを検出できなかったと判断するようにしてもよい。そして、その旨を出力モジュール３９０が出力するようにしてもよい。なお、１位の値と２位の値との差が閾値未満であり、２位の値と３位の値との差が閾値以上である場合は、１位と２位をピークとして判断してもよい。
【００４６】
ステップＳ４２０では、出力モジュール３９０が、ステップＳ４１８で検出したラインスクリーンの線数、角度を不正判定モジュール１３０、２値絵柄文字分離モジュール１５０に出力する。
図８は、第１の実施の形態（ベクトル値算出モジュール１２０）によるベクトル算出の処理例を示す説明図である。ここでは、図６の例に示したベクトル（特徴点６０６を原点とした特徴点６１４と特徴点６１０による２つのベクトル、図８の例に示すベクトル８１０、ベクトル８１２）がステップＳ４１８でピークであったとして説明する。
この場合、ラインスクリーンの線数と角度は、以下の（１）式によって算出する。
角度θ  ＝  ｔａｎ−１（ｙ１  ／  ｘ１）
線数Ｉ  ＝  解像度  ／  ｛ｘ３  ×  ｃｏｓ（θ）｝  ・・・  （１）
つまり、角度θは、特徴点６０６からの垂線とベクトル８１０がなす角度である。また、線数Ｉは、解像度とベクトル８１２の長さと角度θによって算出される。
【００４７】
図９は、第１の実施の形態（不正判定モジュール１３０）による処理例を示す説明図である。
ベクトルが予め定められた条件を満たしていない場合について、以下に２例を挙げて説明する。図９の例に示すように、対象としている網点中心９０２と網点中心９０４に構成されるベクトルｖ１：９５１、対象としている網点中心９０２と網点中心９０６に構成されるベクトルｖ２：９５２を用いて説明する。そして、ベクトル値として、網点中心９０２を原点とした場合において、網点中心９０４の座標をベクトルｖ１：９５１のベクトル値、網点中心９０６の座標をベクトルｖ２：９５２のベクトル値とする。
（１）予め定められた解像度及び線数以外で発生するベクトル値の場合。
具体的には、ｖ１＝（０，０），ｖ２＝（０，０）などが該当する。例えば、２値画像取得モジュール１１０が取得した２値画像が２４００ｄｐｉの場合に、一つの網点の中心から隣の網点の中心までの距離は、１３３線であれば４００／１３３≒１８（ドット）、２３０線であれば２４００／２３０≒１０（ドット）である。したがって、０度で１３３線であれば、ｖ１＝（０，１８）、ｖ２＝（１８，０）、２３０線であれば、ｖ１＝（０，１０）、ｖ２＝（１０，０）となる。このように、解像度、線数、角度から、取りうるベクトル値は算出可能である。したがって、その範囲を逸脱したようなベクトル値、例えば、ｖ１＝（０，０）、ｖ２＝（０，０）などのベクトル値が算出された場合は、それは「予め定められた条件を満たしていない（不正なベクトル値）」であると判定する。
（２）２つのベクトル値が直交していない場合
通常のディザスクリーンであれば、ベクトルｖ１：９５１とベクトルｖ２：９５２は直交するように生成される。したがって、例えば、ｖ１＝（ｘ１，ｙ１）、ｖ２＝（ｘ２，ｙ２）のときに、｜ｘ１｜≠｜ｙ２｜あるいは、｜ｘ２｜≠｜ｙ１｜であれば、直行ではないので、「予め定められた条件を満たしていない（不正なベクトル値）」であると判定する。また、２つのベクトルの内積を求めるようにしてもよい。
【００４８】
図１０〜１３は、第１の実施の形態（不正判定モジュール１３０）による処理例を示す説明図である。
ひとつ前の行までは正確なベクトル値が算出されていたのに、対象としている現在の行で不正なベクトル値が算出される場合について、図１０〜１３の例を用いて説明する。
・文字領域１０２０と網点領域である絵柄領域１０１０が横に配置されているような画像の場合（図１０の例参照）
ライン単位でベクトル値を算出している場合、例えばｘ行目までは、右側の絵柄領域１０１０に存在する網点を利用して正しいベクトル値が算出される。絵柄領域１０１０の左側には文字がないからである。ここで、ｘ＋１行目になると、左側に文字がある文字領域１０２０をも対象にしなければならなくなる。文字の一部が網点の中心として検知され、本来の網点の中心と中心の距離ではない値が検出される。それが、そのラインの統計値に影響されて、正しいベクトル値が算出できない場合がある。
・白い領域の場合（図１１の例参照）
余白は網点がない、つまり網点の中心がないので、統計値が出ないことになる。図１１の例では、ｙ行目までは絵柄領域１１１０で正しいベクトル値が算出されていたのに、ｙ＋１行目では対象とする網点がない。したがって、正しいベクトル値が算出できない場合がある。
・低濃度領域、太い文字の一部を対象とした場合（図１２の例参照）
ベクトル値を算出するために、ヒストグラムをとって最大ピーク値の値で判定しているが、カウントすべき点が少なすぎて、最大ピーク値が予め定められた閾値まで達さない。したがって、正しいベクトル値が算出できない場合がある。図１２の例では、ｚ行目からｚ＋１行目のように絵柄領域１２１０がグラデーションなどで濃いところから薄いところに移る場合などに、このような現象が発生し得る。
・網点形状が壊れてしまっている場合（図１３の例参照）
図１３（ａ）の例に示すような網点形状であるものが、解像度変換などの影響で、図１３（ｂ）の例に示すように、２つ以上の網点が接触してしまい網点の中心として適正な値を算出することができずに、正しいベクトル値が算出できない場合がある。
【００４９】
＜第２の実施の形態＞
第２の実施の形態である画像処理装置は、２値画像を文字領域又は絵柄領域に分離して階調補正するものであって、図１４の例に示すように、２値画像取得モジュール１１０、ベクトル値算出モジュール１２０、不正判定モジュール１３０、２値絵柄文字分離モジュール１４４０、修正モジュール１４５０、２値階調補正モジュール１６０、出力モジュール１７０を有している。なお、前述の実施の形態と同種の部位には同一符号を付し重複した説明を省略する（以下、同様）。
【００５０】
ベクトル値算出モジュール１２０は、２値画像取得モジュール１１０、不正判定モジュール１３０、２値絵柄文字分離モジュール１４４０と接続されている。
不正判定モジュール１３０は、ベクトル値算出モジュール１２０、修正モジュール１４５０と接続されている。
２値絵柄文字分離モジュール１４４０は、ベクトル値算出モジュール１２０、修正モジュール１４５０と接続されている。２値絵柄文字分離モジュール１４４０は、ベクトル値算出モジュール１２０によって算出されたベクトルに基づいて、２値画像内を文字領域又は絵柄領域に分離する。つまり、第１の実施の形態とは異なり、ベクトル値算出モジュール１２０による算出結果をそのまま用いて分離処理を行う。その後に、修正モジュール１４５０が修正する。
【００５１】
修正モジュール１４５０は、不正判定モジュール１３０、２値絵柄文字分離モジュール１４４０、２値階調補正モジュール１６０と接続されている。修正モジュール１４５０は、不正判定モジュール１３０によって条件を満たしていないと判定された場合は、２値絵柄文字分離モジュール１４４０による処理結果を修正する。ここでの修正は、具体的には、過去に不正判定モジュール１３０によって条件を満たしていると判定された場合における２値絵柄文字分離モジュール１４４０による処理結果にすることである。例えば、ライン単位で２値絵柄文字分離モジュール１４４０が分離処理を行い、対象となるラインのベクトル値が不正だった場合、一つ上のラインにおける分離結果をそのままコピーする。もちろんのことながら、不正判定モジュール１３０によって条件を満たしていると判定された場合は、修正は不要であり、その分離結果を記憶装置に記憶させておく。次のラインにおいてベクトル値が不正だった場合、記憶装置に記憶されている分離結果を読み出すこととなる。
２値階調補正モジュール１６０は、２値画像取得モジュール１１０、修正モジュール１４５０、出力モジュール１７０と接続されている。
【００５２】
図１５は、第２の実施の形態による処理例を示すフローチャートである。
ステップＳ１５０２では、２値画像取得モジュール１１０が、２値画像を取得する。
ステップＳ１５０４では、ベクトル値算出モジュール１２０が、ライン毎に２値画像のベクトル値を算出する。
ステップＳ１５０６では、２値絵柄文字分離モジュール１４４０が、ベクトル値を利用して絵柄文字分離を実施する。
ステップＳ１５０８では、不正判定モジュール１３０が、ベクトル値が不正かどうかを判定し、不正である場合はステップＳ１５１０へ進み、不正ではない場合はステップＳ１５１４へ進む。
ステップＳ１５１０では、修正モジュール１４５０が、ひとつ前の絵柄文字分離の結果をそのままコピーする
ステップＳ１５１２では、２値階調補正モジュール１６０が、修正した絵柄文字分離の結果を利用して階調補正を実施する。
ステップＳ１５１４では、２値階調補正モジュール１６０が、絵柄文字分離の結果を利用して階調補正を実施する。
ステップＳ１５１６では、出力モジュール１７０が、階調補正された２値画像を出力する。
【００５３】
＜第３の実施の形態＞
第３の実施の形態である画像処理装置は、２値画像を文字領域又は絵柄領域に分離して階調補正するものであって、図１６の例に示すように、２値画像取得モジュール１１０、ベクトル値算出モジュール１２０、不正判定モジュール１３０、２値絵柄文字分離モジュール１６４０、固定値代入モジュール１６５０、２値階調補正モジュール１６０、出力モジュール１７０を有している。
【００５４】
ベクトル値算出モジュール１２０は、２値画像取得モジュール１１０、不正判定モジュール１３０、２値絵柄文字分離モジュール１６４０と接続されている。
不正判定モジュール１３０は、ベクトル値算出モジュール１２０、２値階調補正モジュール１６０と接続されている。
２値絵柄文字分離モジュール１６４０は、ベクトル値算出モジュール１２０と接続されており、スイッチを介して２値階調補正モジュール１６０と接続され得る。２値絵柄文字分離モジュール１６４０は、ベクトル値算出モジュール１２０によって算出されたベクトルに基づいて、２値画像内を文字領域又は絵柄領域に分離する。この分離結果が２値階調補正モジュール１６０によって用いられるか否かについては、不正判定モジュール１３０の判定結果による。
固定値代入モジュール１６５０は、スイッチを介して２値階調補正モジュール１６０と接続され得る。２値絵柄文字分離モジュール１６４０の代わりに分離結果としての予め定められた値（予め定められた文字領域又は絵柄領域である分離結果）を記憶している。不正判定モジュール１３０の判定結果によっては、固定値代入モジュール１６５０が記憶している値が２値階調補正モジュール１６０によって用いられる。例えば、行全体が絵柄領域であることを示す値、行全体が文字領域であることを示す値等を記憶している。
【００５５】
２値階調補正モジュール１６０は、２値画像取得モジュール１１０、不正判定モジュール１３０、出力モジュール１７０と接続されており、スイッチを介して２値絵柄文字分離モジュール１６４０又は固定値代入モジュール１６５０のいずれかと接続され得る。２値階調補正モジュール１６０は、不正判定モジュール１３０によって条件を満たしていないと判定された場合は、固定値代入モジュール１６５０が記憶している分離結果に基づいて、２値画像取得モジュール１１０によって取得された２値画像に対して階調補正を行い、不正判定モジュール１３０によって条件を満たしていると判定された場合は、２値絵柄文字分離モジュール１６４０による処理結果に基づいて、２値画像取得モジュール１１０によって取得された２値画像に対して階調補正を行う。例えば、ライン単位で２値絵柄文字分離モジュール１６４０が分離処理を行い、対象となる行のベクトル値が不正だった場合、その行の絵柄文字分離は全部固定値（たとえば絵柄）として階調補正処理を行う。
【００５６】
図１７は、第３の実施の形態による処理例を示すフローチャートである。
ステップＳ１７０２では、２値画像取得モジュール１１０が、２値画像を取得する。
ステップＳ１７０４では、ベクトル値算出モジュール１２０が、ライン毎に２値画像のベクトル値を算出する。
ステップＳ１７０６では、不正判定モジュール１３０が、ベクトル値が不正かどうかを判定し、不正である場合はステップＳ１７０８へ進み、不正ではない場合はステップＳ１７１０へ進む。
ステップＳ１７０８では、固定値代入モジュール１６５０が、対象としている行の絵柄文字分離の結果を予め定められた値（例えば絵柄）とする。
ステップＳ１７１０では、２値絵柄文字分離モジュール１６４０が、ベクトル値を利用して絵柄文字分離を実施する。
ステップＳ１７１２では、２値階調補正モジュール１６０が、絵柄文字分離の結果を利用して階調補正を実施する。
ステップＳ１７１４では、出力モジュール１７０が、階調補正された２値画像を出力する。
【００５７】
図１８を参照して、本実施の形態の画像処理装置のハードウェア構成例について説明する。図１８に示す構成は、例えばパーソナルコンピュータ（ＰＣ）などによって構成されるものであり、スキャナ等のデータ読み取り部１８１７と、プリンタなどのデータ出力部１８１８を備えたハードウェア構成例を示している。
【００５８】
ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１８０１は、前述の実施の形態において説明した各種のモジュール、すなわち、２値画像取得モジュール１１０、ベクトル値算出モジュール１２０、不正判定モジュール１３０、２値絵柄文字分離モジュール１５０、２値階調補正モジュール１６０、出力モジュール１７０、２値絵柄文字分離モジュール１４４０、修正モジュール１４５０、２値絵柄文字分離モジュール１６４０、固定値代入モジュール１６５０等の各モジュールの実行シーケンスを記述したコンピュータ・プログラムにしたがった処理を実行する制御部である。
【００５９】
ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１８０２は、ＣＰＵ１８０１が使用するプログラムや演算パラメータ等を格納する。ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１８０３は、ＣＰＵ１８０１の実行において使用するプログラムや、その実行において適宜変化するパラメータ等を格納する。これらはＣＰＵバスなどから構成されるホストバス１８０４により相互に接続されている。
【００６０】
ホストバス１８０４は、ブリッジ１８０５を介して、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ／Ｉｎｔｅｒｆａｃｅ）バスなどの外部バス１８０６に接続されている。
【００６１】
キーボード１８０８、マウス等のポインティングデバイス１８０９は、操作者により操作される入力デバイスである。ディスプレイ１８１０は、液晶表示装置又はＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）などがあり、各種情報をテキストやイメージ情報として表示する。
【００６２】
ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）１８１１は、ハードディスクを内蔵し、ハードディスクを駆動し、ＣＰＵ１８０１によって実行するプログラムや情報を記録又は再生させる。ハードディスクには、２値画像取得モジュール１１０が受け付けた画像、ベクトル値算出モジュール１２０が算出したベクトル値、２値絵柄文字分離モジュール１５０による処理結果、２値階調補正モジュール１６０によって処理された画像などが格納される。さらに、その他の各種のデータ処理プログラム等、各種コンピュータ・プログラムが格納される。
【００６３】
ドライブ１８１２は、装着されている磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリ等のリムーバブル記録媒体１８１３に記録されているデータ又はプログラムを読み出して、そのデータ又はプログラムを、インタフェース１８０７、外部バス１８０６、ブリッジ１８０５、及びホストバス１８０４を介して接続されているＲＡＭ１８０３に供給する。リムーバブル記録媒体１８１３も、ハードディスクと同様のデータ記録領域として利用可能である。
【００６４】
接続ポート１８１４は、外部接続機器１８１５を接続するポートであり、ＵＳＢ、ＩＥＥＥ１３９４等の接続部を持つ。接続ポート１８１４は、インタフェース１８０７、及び外部バス１８０６、ブリッジ１８０５、ホストバス１８０４等を介してＣＰＵ１８０１等に接続されている。通信部１８１６は、通信回線に接続され、外部とのデータ通信処理を実行する。データ読み取り部１８１７は、例えばスキャナであり、ドキュメントの読み取り処理を実行する。データ出力部１８１８は、例えばプリンタであり、ドキュメントデータの出力処理を実行する。
【００６５】
なお、図１８に示す画像処理装置のハードウェア構成は、１つの構成例を示すものであり、本実施の形態は、図１８に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア（例えば特定用途向け集積回路（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ：ＡＳＩＣ）等）で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに図１８に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、複写機、ファックス、スキャナ、プリンタ、複合機（スキャナ、プリンタ、複写機、ファックス等のいずれか２つ以上の機能を有している画像処理装置）などに組み込まれていてもよい。
【００６６】
なお、前述の各種の実施の形態を組み合わせてもよく（例えば、ある実施の形態内のモジュールを他の実施の形態内に追加する、入れ替えをする等も含む）、また、各モジュールの処理内容として背景技術で説明した技術を採用してもよい。
【００６７】
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通などのために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク（ＤＶＤ）であって、ＤＶＤフォーラムで策定された規格である「ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ、ＤＶＤ−ＲＡＭ等」、ＤＶＤ＋ＲＷで策定された規格である「ＤＶＤ＋Ｒ、ＤＶＤ＋ＲＷ等」、コンパクトディスク（ＣＤ）であって、読出し専用メモリ（ＣＤ−ＲＯＭ）、ＣＤレコーダブル（ＣＤ−Ｒ）、ＣＤリライタブル（ＣＤ−ＲＷ）等、ブルーレイ・ディスク（Ｂｌｕ−ｒａｙ  Ｄｉｓｃ（登録商標））、光磁気ディスク（ＭＯ）、フレキシブルディスク（ＦＤ）、磁気テープ、ハードディスク、読出し専用メモリ（ＲＯＭ）、電気的消去及び書換可能な読出し専用メモリ（ＥＥＰＲＯＭ（登録商標））、フラッシュ・メモリ、ランダム・アクセス・メモリ（ＲＡＭ）、ＳＤ（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ）メモリーカード等が含まれる。
そして、前記のプログラム又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク（ＬＡＮ）、メトロポリタン・エリア・ネットワーク（ＭＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、あるいは無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して
記録されていてもよい。また、圧縮や暗号化など、復元可能であればどのような態様で記録されていてもよい。
【００６８】
ベクトル値算出モジュール１２０については、以下のような発明として捉えてもよい。
（Ａ）  画像の主走査方向の画素値が変化する箇所を変化点として抽出する変化点抽出手段と、
前記変化点抽出手段によって抽出された変化点と該変化点から主走査方向にある変化点との中点を特徴点として抽出する特徴点抽出手段と、
前記特徴点抽出手段によって抽出された特徴点から注目特徴点を設定し、該注目特徴点の周辺領域を探索して、注目特徴点と同種の特徴点を複数選定する特徴点選定手段と、
前記注目特徴点と前記特徴点選定手段によって選定された特徴点との距離及び方向を表すベクトルを算出する算出手段と、
前記ベクトル算出手段によって算出されたベクトルの分布に基づいて、前記画像内に使用されているラインスクリーンの線数と角度を抽出するスクリーン線数角度抽出手段
を具備することを特徴とする画像処理装置。
（Ｂ）  前記変化点抽出手段は、前記画像の副走査方向において予め定められた間隔で主走査方向の変化点を抽出する、
又は、前記特徴点抽出手段は、前記画像の副走査方向において予め定められた間隔で特徴点を抽出する
ことを特徴とする（Ａ）に記載の画像処理装置。
（Ｃ）  前記画像から副走査方向において予め定められた間隔で主走査方向の変化点の間隔を検出する間隔検出手段と、
前記間隔検出手段で検出された変化点の間隔に基づいて、副走査方向における間隔を決定する間隔決定手段
を具備し、
前記変化点抽出手段は、前記画像の副走査方向において前記間隔決定手段によって決定された間隔で、主走査方向の変化点を抽出する
ことを特徴とする（Ａ）に記載の画像処理装置。
（Ｄ）  前記間隔検出手段は、変化点の間隔から水平線を検出し、
前記間隔決定手段は、前記間隔検出手段によって水平線が検出された場合は、主走査方向における間隔を決定し、
前記変化点抽出手段は、前記間隔検出手段によって水平線が検出された場合は、前記画像の主走査方向において前記間隔決定手段によって決定された間隔で、副走査方向の変化点を抽出し、
前記特徴点抽出手段は、前記間隔検出手段によって水平線が検出された場合は、前記変化点抽出手段によって抽出された変化点と該変化点から副走査方向にある変化点との中点を特徴点として抽出する
ことを特徴とする（Ｃ）に記載の画像処理装置。
（Ｅ）  前記スクリーン線数角度抽出手段は、前記抽出したスクリーンの線数又は角度と予め定められた線数又は角度との差が予め定められた関係にある場合は、該抽出したスクリーンの線数又は角度を該予め定められた線数又は角度として抽出する
ことを特徴とする（Ａ）から（Ｄ）のいずれか一項に記載の画像処理装置。
（Ｆ）  コンピュータを、
画像の主走査方向の画素値が変化する箇所を変化点として抽出する変化点抽出手段と、
前記変化点抽出手段によって抽出された変化点と該変化点から主走査方向にある変化点との中点を特徴点として抽出する特徴点抽出手段と、
前記特徴点抽出手段によって抽出された特徴点から注目特徴点を設定し、該注目特徴点の周辺領域を探索して、注目特徴点と同種の特徴点を複数選定する特徴点選定手段と、
前記注目特徴点と前記特徴点選定手段によって選定された特徴点との距離及び方向を表すベクトルを算出する算出手段と、
前記ベクトル算出手段によって算出されたベクトルの分布に基づいて、前記画像内に使用されているラインスクリーンの線数と角度を抽出するスクリーン線数角度抽出手段
として機能させるための画像処理プログラム。
【符号の説明】
【００６９】
１１０…２値画像取得モジュール
１２０…ベクトル値算出モジュール
１３０…不正判定モジュール
１４０…記憶モジュール
１５０…２値絵柄文字分離モジュール
１６０…２値階調補正モジュール
１７０…出力モジュール
１４４０…２値絵柄文字分離モジュール
１４５０…修正モジュール
１６４０…２値絵柄文字分離モジュール
１６５０…固定値代入モジュール
【図１】
2014120832.tif 000003
【図２】
2014120832.tif 000004
【図３】
2014120832.tif 000005
【図４】
2014120832.tif 000006
【図５】
2014120832.tif 000007
【図６】
2014120832.tif 000008
【図７】
2014120832.tif 000009
【図８】
2014120832.tif 000010
【図９】
2014120832.tif 000011
【図１０】
2014120832.tif 000012
【図１１】
2014120832.tif 000013
【図１２】
2014120832.tif 000014
【図１３】
2014120832.tif 000015
【図１４】
2014120832.tif 000016
【図１５】
2014120832.tif 000017
【図１６】
2014120832.tif 000018
【図１７】
2014120832.tif 000019
【図１８】
2014120832.tif 000020