JP2014120832A - 画像処理装置及び画像処理プログラム - Google Patents
画像処理装置及び画像処理プログラム Download PDFInfo
- Publication number
- JP2014120832A JP2014120832A JP2012272989A JP2012272989A JP2014120832A JP 2014120832 A JP2014120832 A JP 2014120832A JP 2012272989 A JP2012272989 A JP 2012272989A JP 2012272989 A JP2012272989 A JP 2012272989A JP 2014120832 A JP2014120832 A JP 2014120832A
- Authority
- JP
- Japan
- Prior art keywords
- vector
- image
- binary image
- module
- binary
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012545 processing Methods 0.000 title claims abstract description 95
- 239000013598 vector Substances 0.000 claims abstract description 216
- 238000004364 calculation method Methods 0.000 claims abstract description 78
- 238000012937 correction Methods 0.000 claims description 99
- 238000000926 separation method Methods 0.000 claims description 87
- 238000013461 design Methods 0.000 claims description 8
- 230000008859 change Effects 0.000 description 110
- 238000000605 extraction Methods 0.000 description 54
- 238000000034 method Methods 0.000 description 38
- 230000008569 process Effects 0.000 description 33
- 239000000284 extract Substances 0.000 description 19
- 238000004891 communication Methods 0.000 description 12
- 238000001514 detection method Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 11
- 238000006467 substitution reaction Methods 0.000 description 8
- 238000004590 computer program Methods 0.000 description 6
- 238000009826 distribution Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000010365 information processing Effects 0.000 description 2
- 239000003086 colorant Substances 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000009792 diffusion process Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
Images
Landscapes
- Color, Gradation (AREA)
- Image Processing (AREA)
- Facsimile Image Signal Circuits (AREA)
Abstract
【課題】2値画像を文字領域又は絵柄領域に分離して階調補正する場合にあって、網点を構成するベクトルとして予め定められた条件を満たしていないベクトルが算出された場合に、そのベクトルを用いて文字領域又は絵柄領域に分離することを防止するようにした画像処理装置を提供する。
【解決手段】画像処理装置の画像取得手段は、2値画像を取得し、算出手段は、2値画像内の網点を構成する画素塊間の関係によって定義されるベクトルを算出し、判定手段は、ベクトルが網点を構成するベクトルとして予め定められた条件を満たしているか否かを判定し、分離手段は、条件を満たしていないと判定された場合は、過去に判定手段によって条件を満たしていると判定された場合におけるベクトルに基づいて、2値画像内を文字領域又は絵柄領域に分離し、補正手段は、分離手段による処理結果に基づいて、2値画像に対して階調補正を行う。
【選択図】図1
【解決手段】画像処理装置の画像取得手段は、2値画像を取得し、算出手段は、2値画像内の網点を構成する画素塊間の関係によって定義されるベクトルを算出し、判定手段は、ベクトルが網点を構成するベクトルとして予め定められた条件を満たしているか否かを判定し、分離手段は、条件を満たしていないと判定された場合は、過去に判定手段によって条件を満たしていると判定された場合におけるベクトルに基づいて、2値画像内を文字領域又は絵柄領域に分離し、補正手段は、分離手段による処理結果に基づいて、2値画像に対して階調補正を行う。
【選択図】図1
Description
本発明は、画像処理装置及び画像処理プログラムに関する。
特許文献1には、入力される2値画像データが有する網点成分を保持しつつ色補正の補正結果を精度よく反映した2値画像を出力することを課題とし、画像処理装置は2値画像データを受け取り、この2値画像データを基に多値画像データを生成し、この多値画像データに対して色補正を施した色補正画像データを生成し、画像処理装置は、2値画像データにおける注目画素の値と、注目画素に隣接する画素の値とに基づいて、2値画像データ又は色補正画像データに誤差拡散を施して2値化した再2値化画像データのいずれを出力するか選択し、選択結果にしたがって、2値画像データ又は再2値化画像データのいずれかを出力することが開示されている。
特許文献2には、画像に使用されているスクリーンの線数と角度を抽出するにあたって、本構成を有していない場合に比較して、処理量を削減するようにした画像処理装置を提供することを課題とし、画像処理装置の分離手段は、画像内の画素が連結している領域を分離し、代表点決定手段は、前記分離手段によって分離された領域を代表する代表点を決定し、ベクトル算出手段は、前記代表点決定手段によって決定された代表点に基づいて、2つの代表点で構成されるベクトルを算出し、スクリーン線数角度抽出手段は、前記ベクトル算出手段によって算出されたベクトルの分布に基づいて、前記画像内に使用されているスクリーンの線数と角度を抽出することが開示されている。
本発明は、2値画像を文字領域又は絵柄領域に分離して階調補正する場合にあって、網点を構成するベクトルとして予め定められた条件を満たしていないベクトルが算出された場合に、そのベクトルを用いて文字領域又は絵柄領域に分離することを防止するようにした画像処理装置及び画像処理プログラムを提供することを目的としている。
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
請求項1の発明は、2値画像を取得する画像取得手段と、前記画像取得手段によって取得された2値画像内の網点を構成する画素塊間の関係によって定義されるベクトルを算出する算出手段と、前記算出手段によって算出されたベクトルが網点を構成するベクトルとして予め定められた条件を満たしているか否かを判定する判定手段と、前記判定手段によって条件を満たしていないと判定された場合は、過去に前記判定手段によって条件を満たしていると判定された場合における前記算出手段によって算出されたベクトルに基づいて、前記2値画像内を文字領域又は絵柄領域に分離する分離手段と、前記分離手段による処理結果に基づいて、前記画像取得手段によって取得された2値画像に対して階調補正を行う補正手段を具備することを特徴とする画像処理装置である。
請求項1の発明は、2値画像を取得する画像取得手段と、前記画像取得手段によって取得された2値画像内の網点を構成する画素塊間の関係によって定義されるベクトルを算出する算出手段と、前記算出手段によって算出されたベクトルが網点を構成するベクトルとして予め定められた条件を満たしているか否かを判定する判定手段と、前記判定手段によって条件を満たしていないと判定された場合は、過去に前記判定手段によって条件を満たしていると判定された場合における前記算出手段によって算出されたベクトルに基づいて、前記2値画像内を文字領域又は絵柄領域に分離する分離手段と、前記分離手段による処理結果に基づいて、前記画像取得手段によって取得された2値画像に対して階調補正を行う補正手段を具備することを特徴とする画像処理装置である。
請求項2の発明は、前記判定手段が判定に用いる予め定められた条件として、予め定められた2値画像の解像度、網点の線数、網点の角度であることを特徴とする請求項1に記載の画像処理装置である。
請求項3の発明は、前記判定手段が判定に用いる予め定められた条件として、前記算出手段によって算出されたベクトル間の角度が予め定められた値であることを特徴とする請求項1に記載の画像処理装置である。
請求項4の発明は、2値画像を取得する画像取得手段と、前記画像取得手段によって取得された2値画像内の網点を構成する画素塊間の関係によって定義されるベクトルを算出する算出手段と、前記算出手段によって算出されたベクトルが網点を構成するベクトルとして予め定められた条件を満たしているか否かを判定する判定手段と、前記算出手段によって算出されたベクトルに基づいて、前記2値画像内を文字領域又は絵柄領域に分離する分離手段と、前記判定手段によって条件を満たしていないと判定された場合は、前記分離手段による処理結果を修正する修正手段と、前記分離手段による処理結果又は前記修正手段による修正結果に基づいて、前記画像取得手段によって取得された2値画像に対して階調補正を行う補正手段を具備することを特徴とする画像処理装置である。
請求項5の発明は、2値画像を取得する画像取得手段と、前記画像取得手段によって取得された2値画像内の網点を構成する画素塊間の関係によって定義されるベクトルを算出する算出手段と、前記算出手段によって算出されたベクトルが網点を構成するベクトルとして予め定められた条件を満たしているか否かを判定する判定手段と、前記算出手段によって算出されたベクトルに基づいて、前記2値画像内を文字領域又は絵柄領域に分離する分離手段と、前記判定手段によって条件を満たしていないと判定された場合は、予め定められた文字領域又は絵柄領域である分離結果に基づいて、前記画像取得手段によって取得された2値画像に対して階調補正を行い、前記判定手段によって条件を満たしていると判定された場合は、前記分離手段による処理結果に基づいて、前記画像取得手段によって取得された2値画像に対して階調補正を行う補正手段を具備することを特徴とする画像処理装置である。
請求項6の発明は、コンピュータを、2値画像を取得する画像取得手段と、前記画像取得手段によって取得された2値画像内の網点を構成する画素塊間の関係によって定義されるベクトルを算出する算出手段と、前記算出手段によって算出されたベクトルが網点を構成するベクトルとして予め定められた条件を満たしているか否かを判定する判定手段と、前記判定手段によって条件を満たしていないと判定された場合は、過去に前記判定手段によって条件を満たしていると判定された場合における前記算出手段によって算出されたベクトルに基づいて、前記2値画像内を文字領域又は絵柄領域に分離する分離手段と、前記分離手段による処理結果に基づいて、前記画像取得手段によって取得された2値画像に対して階調補正を行う補正手段として機能させるための画像処理プログラムである。
請求項7の発明は、コンピュータを、2値画像を取得する画像取得手段と、前記画像取得手段によって取得された2値画像内の網点を構成する画素塊間の関係によって定義されるベクトルを算出する算出手段と、前記算出手段によって算出されたベクトルが網点を構成するベクトルとして予め定められた条件を満たしているか否かを判定する判定手段と、前記算出手段によって算出されたベクトルに基づいて、前記2値画像内を文字領域又は絵柄領域に分離する分離手段と、前記判定手段によって条件を満たしていないと判定された場合は、前記分離手段による処理結果を修正する修正手段と、前記分離手段による処理結果又は前記修正手段による修正結果に基づいて、前記画像取得手段によって取得された2値画像に対して階調補正を行う補正手段として機能させるための画像処理プログラムである。
請求項8の発明は、コンピュータを、2値画像を取得する画像取得手段と、前記画像取得手段によって取得された2値画像内の網点を構成する画素塊間の関係によって定義されるベクトルを算出する算出手段と、前記算出手段によって算出されたベクトルが網点を構成するベクトルとして予め定められた条件を満たしているか否かを判定する判定手段と、前記算出手段によって算出されたベクトルに基づいて、前記2値画像内を文字領域又は絵柄領域に分離する分離手段と、前記判定手段によって条件を満たしていないと判定された場合は、予め定められた文字領域又は絵柄領域である分離結果に基づいて、前記画像取得手段によって取得された2値画像に対して階調補正を行い、前記判定手段によって条件を満たしていると判定された場合は、前記分離手段による処理結果に基づいて、前記画像取得手段によって取得された2値画像に対して階調補正を行う補正手段として機能させるための画像処理プログラムである。
請求項1の画像処理装置によれば、2値画像を文字領域又は絵柄領域に分離して階調補正する場合にあって、網点を構成するベクトルとして予め定められた条件を満たしていないベクトルが算出された場合に、そのベクトルを用いて文字領域又は絵柄領域に分離することを防止することができる。
請求項2の画像処理装置によれば、予め定められた2値画像の解像度、網点の線数、網点の角度を予め定められた条件として判定することができる。
請求項3の画像処理装置によれば、ベクトル間の角度が予め定められた値を予め定められた条件として判定することができる。
請求項4の画像処理装置によれば、2値画像を文字領域又は絵柄領域に分離して階調補正する場合にあって、網点を構成するベクトルとして予め定められた条件を満たしていないベクトルが算出された場合に、文字領域又は絵柄領域の分離結果を修正することができる。
請求項5の画像処理装置によれば、2値画像を文字領域又は絵柄領域に分離して階調補正する場合にあって、網点を構成するベクトルとして予め定められた条件を満たしていないベクトルが算出された場合に、予め定められた文字領域又は絵柄領域である分離結果に基づいて、その2値画像に対して階調補正を行うことができる。
請求項6の画像処理プログラムによれば、2値画像を文字領域又は絵柄領域に分離して階調補正する場合にあって、網点を構成するベクトルとして予め定められた条件を満たしていないベクトルが算出された場合に、そのベクトルを用いて文字領域又は絵柄領域に分離することを防止することができる。
請求項7の画像処理プログラムによれば、2値画像を文字領域又は絵柄領域に分離して階調補正する場合にあって、網点を構成するベクトルとして予め定められた条件を満たしていないベクトルが算出された場合に、文字領域又は絵柄領域の分離結果を修正することができる。
請求項8の画像処理プログラムによれば、2値画像を文字領域又は絵柄領域に分離して階調補正する場合にあって、網点を構成するベクトルとして予め定められた条件を満たしていないベクトルが算出された場合に、予め定められた文字領域又は絵柄領域である分離結果に基づいて、その2値画像に対して階調補正を行うことができる。
以下、図面に基づき本発明を実現するにあたっての好適な各種の実施の形態の例を説明する。
<第1の実施の形態>
図1は、第1の実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア(コンピュータ・プログラム)、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、それらのモジュールとして機能させるためのコンピュータ・プログラム(コンピュータにそれぞれの手順を実行させるためのプログラム、コンピュータをそれぞれの手段として機能させるためのプログラム、コンピュータにそれぞれの機能を実現させるためのプログラム)、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するの意である。また、モジュールは機能に一対一に対応していてもよいが、実装においては、1モジュールを1プログラムで構成してもよいし、複数モジュールを1プログラムで構成してもよく、逆に1モジュールを複数プログラムで構成してもよい。また、複数モジュールは1コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって1モジュールが複数コンピュータで実行されてもよい。なお、1つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続(データの授受、指示、データ間の参照関係等)の場合にも用いる。「予め定められた」とは、対象としている処理の前に定まっていることをいい、本実施の形態による処理が始まる前はもちろんのこと、本実施の形態による処理が始まった後であっても、対象としている処理の前であれば、そのときの状況・状態に応じて、又はそれまでの状況・状態に応じて定まることの意を含めて用いる。「予め定められた値」が複数ある場合は、それぞれ異なった値であってもよいし、2以上の値(もちろんのことながら、全ての値も含む)が同じであってもよい。また、「Aである場合、Bをする」という意味を有する記載は、「Aであるか否かを判断し、Aであると判断した場合はBをする」の意味で用いる。ただし、Aであるか否かの判断が不要である場合を除く。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク(一対一対応の通信接続を含む)等の通信手段で接続されて構成されるほか、1つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。もちろんのことながら、「システム」には、人為的な取り決めである社会的な「仕組み」(社会システム)にすぎないものは含まない。
また、各モジュールによる処理毎に又はモジュール内で複数の処理を行う場合はその処理毎に、対象となる情報を記憶装置から読み込み、その処理を行った後に、処理結果を記憶装置に書き出すものである。したがって、処理前の記憶装置からの読み込み、処理後の記憶装置への書き出しについては、説明を省略する場合がある。なお、ここでの記憶装置としては、ハードディスク、RAM(Random Access Memory)、外部記憶媒体、通信回線を介した記憶装置、CPU(Central Processing Unit)内のレジスタ等を含んでいてもよい。
<第1の実施の形態>
図1は、第1の実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア(コンピュータ・プログラム)、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、それらのモジュールとして機能させるためのコンピュータ・プログラム(コンピュータにそれぞれの手順を実行させるためのプログラム、コンピュータをそれぞれの手段として機能させるためのプログラム、コンピュータにそれぞれの機能を実現させるためのプログラム)、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するの意である。また、モジュールは機能に一対一に対応していてもよいが、実装においては、1モジュールを1プログラムで構成してもよいし、複数モジュールを1プログラムで構成してもよく、逆に1モジュールを複数プログラムで構成してもよい。また、複数モジュールは1コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって1モジュールが複数コンピュータで実行されてもよい。なお、1つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続(データの授受、指示、データ間の参照関係等)の場合にも用いる。「予め定められた」とは、対象としている処理の前に定まっていることをいい、本実施の形態による処理が始まる前はもちろんのこと、本実施の形態による処理が始まった後であっても、対象としている処理の前であれば、そのときの状況・状態に応じて、又はそれまでの状況・状態に応じて定まることの意を含めて用いる。「予め定められた値」が複数ある場合は、それぞれ異なった値であってもよいし、2以上の値(もちろんのことながら、全ての値も含む)が同じであってもよい。また、「Aである場合、Bをする」という意味を有する記載は、「Aであるか否かを判断し、Aであると判断した場合はBをする」の意味で用いる。ただし、Aであるか否かの判断が不要である場合を除く。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク(一対一対応の通信接続を含む)等の通信手段で接続されて構成されるほか、1つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。もちろんのことながら、「システム」には、人為的な取り決めである社会的な「仕組み」(社会システム)にすぎないものは含まない。
また、各モジュールによる処理毎に又はモジュール内で複数の処理を行う場合はその処理毎に、対象となる情報を記憶装置から読み込み、その処理を行った後に、処理結果を記憶装置に書き出すものである。したがって、処理前の記憶装置からの読み込み、処理後の記憶装置への書き出しについては、説明を省略する場合がある。なお、ここでの記憶装置としては、ハードディスク、RAM(Random Access Memory)、外部記憶媒体、通信回線を介した記憶装置、CPU(Central Processing Unit)内のレジスタ等を含んでいてもよい。
第1の実施の形態である画像処理装置は、2値画像を文字領域又は絵柄領域に分離して階調補正するものであって、図1の例に示すように、2値画像取得モジュール110、ベクトル値算出モジュール120、不正判定モジュール130、記憶モジュール140、2値絵柄文字分離モジュール150、2値階調補正モジュール160、出力モジュール170を有している。
2値画像取得モジュール110は、ベクトル値算出モジュール120、2値階調補正モジュール160と接続されている。2値画像取得モジュール110は、2値画像を取得する。ここでの2値画像は、いわゆる中間調領域がスクリーンによって表現されている画像であって、1画素が1ビットで表現されている。ただし、2値画像として、複数色版の2値画像からなるカラー画像であってもよい。また、取得した画像が網点処理(以下、スクリーン処理ともいう)され、紙等の記録媒体上に記録された画像をスキャナ等の撮像装置にて読み込んだ多値画像(カラー画像を含む)である場合は、その画像に2値化処理を施して2値画像に変換するようにしてもよい。そして2値画像は、全体に網点処理が施されていてもよいし、網点処理が行われている領域と網点処理が行われていない領域が混在していてもよいし、網点処理は行われていない画像であってもよい。網点処理は、マルチスクリーン処理であってもよい。対象とするスクリーンとしては、例えば、ドット集中型ディザスクリーン、ラインスクリーン等がある。ドット集中型ディザスクリーンとしては、チェーンドットスクリーン(スクエアドットを斜めに変形させたもので、菱形のドットがチェーン状につながった網目となるスクリーン)がある。ラインスクリーンとは、略直線を色版内で同角度かつ略同間隔で並べるものであり、万線スクリーンとも呼ばれる。画像を取得するとは、例えば、スキャナ、カメラ等で画像を読み込むこと、ファックス等で通信回線を介して外部機器から画像を受信すること、ハードディスク(コンピュータに内蔵されているものの他に、ネットワークを介して接続されているもの等を含む)等に記憶されている画像を読み出すこと等が含まれる。受け付ける画像は、1枚であってもよいし、複数枚であってもよい。また、画像の内容として、ビジネスに用いられる文書、広告宣伝用のパンフレット等であってもよい。画像の解像度は限定しないが、例えば2400dpi等がある。
ベクトル値算出モジュール120は、2値画像取得モジュール110、不正判定モジュール130、記憶モジュール140、2値絵柄文字分離モジュール150と接続されている。ベクトル値算出モジュール120は、2値画像取得モジュール110によって取得された2値画像内の網点を構成する画素塊間の関係によって定義されるベクトルを算出する。ベクトルとは、対象とする網点の画素塊Aを定め、その画素塊Aに近い2つの網点の画素塊B、画素塊Cを抽出し、画素塊Aと画素塊Bを通るベクトルX、画素塊Aと画素塊Cを通るベクトルYのことである。そして、ベクトルXの長さ(画素塊Aと画素塊Bとの間の距離)、ベクトルYの長さ(画素塊Aと画素塊Cとの間の距離)、ベクトルXとベクトルYによって構成される角度によって網点の情報(線数、角度)を抽出することができる。その他のベクトル値算出モジュール120の構成例、処理内容例については、図3〜8を用いて後述する。
不正判定モジュール130は、ベクトル値算出モジュール120、記憶モジュール140と接続されている。不正判定モジュール130は、ベクトル値算出モジュール120によって算出されたベクトルが網点を構成するベクトルとして予め定められた条件を満たしているか否かを判定する。
不正判定モジュール130が判定に用いる予め定められた条件として、予め定められた2値画像の解像度、網点の線数、網点の角度としてもよい。予め定められた2値画像の解像度、網点の線数、網点の角度とは、ある範囲を持った値であってもよい。この条件については、図9を用いて後述する。
また、不正判定モジュール130が判定に用いる予め定められた条件として、ベクトル値算出モジュール120によって算出されたベクトル間の角度が予め定められた値としてもよい。予め定められた値として、例えば、90度がある。もちろんのことながら、ある範囲を持った値であってもよい。この条件については後述する。
不正判定モジュール130が判定に用いる予め定められた条件として、予め定められた2値画像の解像度、網点の線数、網点の角度としてもよい。予め定められた2値画像の解像度、網点の線数、網点の角度とは、ある範囲を持った値であってもよい。この条件については、図9を用いて後述する。
また、不正判定モジュール130が判定に用いる予め定められた条件として、ベクトル値算出モジュール120によって算出されたベクトル間の角度が予め定められた値としてもよい。予め定められた値として、例えば、90度がある。もちろんのことながら、ある範囲を持った値であってもよい。この条件については後述する。
記憶モジュール140は、ベクトル値算出モジュール120、不正判定モジュール130、2値絵柄文字分離モジュール150と接続されている。記憶モジュール140は、不正判定モジュール130によって条件を満たしていると判定された場合におけるベクトル値算出モジュール120によって算出されたベクトルを記憶する。例えば、不正判定モジュール130によって条件を満たしていると判定された場合における直近のベクトルを記憶するようにしてもよい。
2値絵柄文字分離モジュール150は、ベクトル値算出モジュール120、記憶モジュール140、2値階調補正モジュール160と接続されている。2値絵柄文字分離モジュール150は、不正判定モジュール130によって条件を満たしていないと判定された場合は、記憶モジュール140に記憶されているベクトル(過去に不正判定モジュール130によって条件を満たしていると判定された場合におけるベクトル値算出モジュール120によって算出されたベクトル)に基づいて、2値画像内を文字領域又は絵柄領域に分離する。また、2値絵柄文字分離モジュール150は、不正判定モジュール130によって条件を満たしていると判定された場合は、ベクトル値算出モジュール120によって算出されたベクトルに基づいて、2値画像内を文字領域又は絵柄領域に分離する。分離処理は、例えば、算出されたベクトル内(ベクトルの距離内)に画素があるか否かを判定し、画素がある場合は絵柄領域(中間調領域)として分離し、画素がない場合は文字領域として分離する。また、既存の技術を用いてもよい。
2値絵柄文字分離モジュール150は、ベクトル値算出モジュール120、記憶モジュール140、2値階調補正モジュール160と接続されている。2値絵柄文字分離モジュール150は、不正判定モジュール130によって条件を満たしていないと判定された場合は、記憶モジュール140に記憶されているベクトル(過去に不正判定モジュール130によって条件を満たしていると判定された場合におけるベクトル値算出モジュール120によって算出されたベクトル)に基づいて、2値画像内を文字領域又は絵柄領域に分離する。また、2値絵柄文字分離モジュール150は、不正判定モジュール130によって条件を満たしていると判定された場合は、ベクトル値算出モジュール120によって算出されたベクトルに基づいて、2値画像内を文字領域又は絵柄領域に分離する。分離処理は、例えば、算出されたベクトル内(ベクトルの距離内)に画素があるか否かを判定し、画素がある場合は絵柄領域(中間調領域)として分離し、画素がない場合は文字領域として分離する。また、既存の技術を用いてもよい。
2値階調補正モジュール160は、2値画像取得モジュール110、2値絵柄文字分離モジュール150、出力モジュール170と接続されている。2値階調補正モジュール160は、2値絵柄文字分離モジュール150による処理結果に基づいて、2値画像取得モジュール110によって取得された2値画像に対して階調補正を行う。領域の種類(文字領域、絵柄領域)に応じて階調補正処理を行う。例えば、文字領域に対して階調補正は行わずに、絵柄領域に対してだけ階調補正を行う。階調補正の処理自体は、既存の技術を用いればよい。
出力モジュール170は、2値階調補正モジュール160と接続されている。出力モジュール170は、2値階調補正モジュール160によって階調補正された画像を受け取り、その画像を出力する。画像を出力するとは、例えば、プリンタ等の印刷装置で印刷すること、ディスプレイ等の表示装置に表示すること、ファックス等の画像送信装置で画像を送信すること、画像データベース等の画像記憶装置へ画像を書き込むこと、メモリーカード等の記憶媒体に記憶すること、他の情報処理装置へ渡すこと等が含まれる。
出力モジュール170は、2値階調補正モジュール160と接続されている。出力モジュール170は、2値階調補正モジュール160によって階調補正された画像を受け取り、その画像を出力する。画像を出力するとは、例えば、プリンタ等の印刷装置で印刷すること、ディスプレイ等の表示装置に表示すること、ファックス等の画像送信装置で画像を送信すること、画像データベース等の画像記憶装置へ画像を書き込むこと、メモリーカード等の記憶媒体に記憶すること、他の情報処理装置へ渡すこと等が含まれる。
なお、本実施の形態(後述する実施の形態を含む)におけるベクトル値算出モジュール120、2値絵柄文字分離モジュール150等は、予め定められた領域毎に処理を行うようにしてもよい。領域として、本実施の形態の処理をハードウェアで実現する場合には、例えばライン(行)毎とする。具体的には、2値絵柄文字分離モジュール150は、対象となる行のベクトル値が不正(予め定められた条件を満たしていないとする判定)だった場合、一つ上の行におけるベクトル値を利用して、その行を文字領域と絵柄領域に分離する。
図2は、第1の実施の形態による処理例を示すフローチャートである。
ステップS202では、2値画像取得モジュール110が、2値画像を取得する。
ステップS204では、ベクトル値算出モジュール120が、ライン毎に2値画像のベクトル値を算出する。
ステップS206では、不正判定モジュール130が、ベクトル値が不正かどうかを判定し、不正である場合はステップS208へ進み、不正ではない場合はステップS210へ進む。
ステップS208では、2値絵柄文字分離モジュール150が、記憶モジュール140に記憶されているひとつ前の行のベクトル値を利用して絵柄文字分離を実施する。
ステップS210では、2値絵柄文字分離モジュール150が、そのラインにおけるベクトル値を利用して絵柄文字分離を実施する。
ステップS212では、2値階調補正モジュール160が、絵柄文字分離の結果を利用して階調補正を実施する。
ステップS214では、出力モジュール170が、階調補正された2値画像を出力する。
ステップS202では、2値画像取得モジュール110が、2値画像を取得する。
ステップS204では、ベクトル値算出モジュール120が、ライン毎に2値画像のベクトル値を算出する。
ステップS206では、不正判定モジュール130が、ベクトル値が不正かどうかを判定し、不正である場合はステップS208へ進み、不正ではない場合はステップS210へ進む。
ステップS208では、2値絵柄文字分離モジュール150が、記憶モジュール140に記憶されているひとつ前の行のベクトル値を利用して絵柄文字分離を実施する。
ステップS210では、2値絵柄文字分離モジュール150が、そのラインにおけるベクトル値を利用して絵柄文字分離を実施する。
ステップS212では、2値階調補正モジュール160が、絵柄文字分離の結果を利用して階調補正を実施する。
ステップS214では、出力モジュール170が、階調補正された2値画像を出力する。
ベクトル値算出モジュール120は、画像に使用されているラインスクリーンの線数と角度を抽出するものであって、図3の例に示すように、画像受付モジュール310、変化点抽出モジュール340A、変化点抽出モジュール340B、特徴点抽出モジュール350A、特徴点抽出モジュール350B、特徴点選定モジュール360、ベクトル算出モジュール370、ピーク検出モジュール380、出力モジュール390を有している。
画像受付モジュール310は、変化点抽出モジュール340A、変化点抽出モジュール340Bと接続されている。画像受付モジュール310は、対象となる画像を受け付けて、その画像を変化点抽出モジュール340A、変化点抽出モジュール340Bへ渡す。
変化点抽出モジュール340Aは、画像受付モジュール310、特徴点抽出モジュール350Aと接続されている。変化点抽出モジュール340Aは、画像受付モジュール310が受け付けた画像の主走査方向の画素値が変化(黒画素が白画素に変化)する箇所を変化点として抽出する。
変化点抽出モジュール340Bは、画像受付モジュール310、特徴点抽出モジュール350Bと接続されている。変化点抽出モジュール340Bは、画像受付モジュール310が受け付けた画像の主走査方向の画素値が変化(白画素が黒画素に変化)する箇所を変化点として抽出する。
なお、変化点抽出モジュール340A、変化点抽出モジュール340Bは、主走査方向への走査によって、変化点を抽出しているが、画像受付モジュール310が受け付けた画像とその画像を1画素右又は左にずらした画像との排他的論理和(EOR)処理を施すことによって、変化点を抽出してもよい。その場合、変化点は、黒画素が白画素に変化したものであるか、白画素が黒画素に変化したものであるかについては、その変化点における画素値によって判断することができる。例えば、1画素右にずらした画像との排他的論理和処理の場合は、元の画像における変化点の位置にある画素値が黒(例えば1)である場合は、白画素が黒画素に変化したものであり、元の画像における変化点の位置にある画素値が白(例えば0)である場合は、黒画素が白画素に変化したものである。
また、変化点抽出モジュール340A、変化点抽出モジュール340Bは、画像受付モジュール310が受け付けた画像の副走査方向において予め定められた間隔で主走査方向の変化点を抽出するようにしてもよい。つまり、主走査ライン毎に変化点を抽出するのではなく、間隔をおいた主走査ラインで変化点を抽出するようにしてもよい。
また、変化点抽出モジュール340A、変化点抽出モジュール340Bは、画像受付モジュール310が受け付けた画像の副走査方向において予め定められた間隔で主走査方向の変化点を抽出するようにしてもよい。つまり、主走査ライン毎に変化点を抽出するのではなく、間隔をおいた主走査ラインで変化点を抽出するようにしてもよい。
特徴点抽出モジュール350Aは、変化点抽出モジュール340A、特徴点選定モジュール360と接続されている。特徴点抽出モジュール350Aは、変化点抽出モジュール340Aによって抽出された変化点Aとその変化点Aから主走査方向にある変化点Bとの中点を特徴点として抽出する。
特徴点抽出モジュール350Bは、変化点抽出モジュール340B、特徴点選定モジュール360と接続されている。特徴点抽出モジュール350Bは、変化点抽出モジュール340Bによって抽出された変化点Cとその変化点Cから主走査方向にある変化点Dとの中点を特徴点として抽出する。
「変化点A(C)から主走査方向にある変化点B(D)の例」の具体例としては、変化点A(C)から主走査方向にあって、その変化点A(C)から最も近くにある別の変化点B(D)がある。
また、変化点B(D)は、変化点A(C)とは逆の変化であるものを選択するようにしてもよい。変化点A(C)が黒画素から白画素への変化点である場合は、変化点B(D)は白画素から黒画素への変化点であり、変化点A(C)が白画素から黒画素への変化点である場合は、変化点B(D)は黒画素から白画素への変化点である。なお、この場合、特徴点抽出モジュール350A、特徴点抽出モジュール350Bは、変化点抽出モジュール340A、変化点抽出モジュール340Bから変換点の情報を受け取ることになる。
なお、中点(特徴点)とは、変化点A(C)と変化点B(D)の中間にある点であり、x座標(主走査方向)において、(変化点A(C)のx座標)+(変化点B(D)のx座標)/2で算出できる。中点の位置の算出において、小数部は統一されていれば切り捨て・切り上げ・四捨五入いずれでもよい。
また、特徴点抽出モジュール350A、特徴点抽出モジュール350Bは、画像受付モジュール310が受け付けた画像の副走査方向において予め定められた間隔で特徴点を抽出するようにしてもよい。つまり、主走査ライン毎に特徴点を抽出するのではなく、間隔をおいた主走査ラインで特徴点を抽出するようにしてもよい。
特徴点抽出モジュール350Bは、変化点抽出モジュール340B、特徴点選定モジュール360と接続されている。特徴点抽出モジュール350Bは、変化点抽出モジュール340Bによって抽出された変化点Cとその変化点Cから主走査方向にある変化点Dとの中点を特徴点として抽出する。
「変化点A(C)から主走査方向にある変化点B(D)の例」の具体例としては、変化点A(C)から主走査方向にあって、その変化点A(C)から最も近くにある別の変化点B(D)がある。
また、変化点B(D)は、変化点A(C)とは逆の変化であるものを選択するようにしてもよい。変化点A(C)が黒画素から白画素への変化点である場合は、変化点B(D)は白画素から黒画素への変化点であり、変化点A(C)が白画素から黒画素への変化点である場合は、変化点B(D)は黒画素から白画素への変化点である。なお、この場合、特徴点抽出モジュール350A、特徴点抽出モジュール350Bは、変化点抽出モジュール340A、変化点抽出モジュール340Bから変換点の情報を受け取ることになる。
なお、中点(特徴点)とは、変化点A(C)と変化点B(D)の中間にある点であり、x座標(主走査方向)において、(変化点A(C)のx座標)+(変化点B(D)のx座標)/2で算出できる。中点の位置の算出において、小数部は統一されていれば切り捨て・切り上げ・四捨五入いずれでもよい。
また、特徴点抽出モジュール350A、特徴点抽出モジュール350Bは、画像受付モジュール310が受け付けた画像の副走査方向において予め定められた間隔で特徴点を抽出するようにしてもよい。つまり、主走査ライン毎に特徴点を抽出するのではなく、間隔をおいた主走査ラインで特徴点を抽出するようにしてもよい。
特徴点選定モジュール360は、特徴点抽出モジュール350A、特徴点抽出モジュール350B、ベクトル算出モジュール370と接続されている。特徴点選定モジュール360は、特徴点抽出モジュール350A、特徴点抽出モジュール350Bによって抽出された特徴点から注目特徴点を設定し、その注目特徴点の周辺領域を探索して、注目特徴点と同種の特徴点を複数選定する。
「注目特徴点の周辺領域を探索」とは、例えば、注目特徴点から主走査方向に走査した場合に最初に発見した特徴点(つまり、注目特徴点に主走査方向で最も近い特徴点)であり、注目特徴点と同種のものであってもよいし、注目特徴点から副走査方向(斜め下又は斜め上を含む)に探索して、注目特徴点に最も近い特徴点であり、注目特徴点と同種のものであってもよい。
「注目特徴点と同種の特徴点」とは、注目特徴点が、黒画素から白画素への変化点(以下、黒白変化点ともいう)を左側として、白画素から黒画素への変化点(以下、白黒変化点ともいう)を右側とした場合の中点の場合は、黒白変化点を左側として、白黒変化点を右側とした場合の中点(特徴点)をいい、注目特徴点が、白黒変化点を左側として、黒白変化点を右側とした場合の中点の場合は、白黒変化点を左側として、黒白変化点を右側とした場合の中点(特徴点)をいう。もちろんのことながら、注目特徴点が、白黒変化点を左側として、白黒変化点を右側とした場合の中点の場合は、白黒変化点を左側として、白黒変化点を右側とした場合の中点(特徴点)をいい、注目特徴点が、黒白変化点を左側として、黒白変化点を右側とした場合の中点の場合は、黒白変化点を左側として、黒白変化点を右側とした場合の中点(特徴点)をいう。
選定する複数の特徴点としては、2つの特徴点であり、主走査方向にある特徴点と、斜め下又は斜め上を含む副走査方向にある特徴点である。つまり、注目特徴点と選定した特徴点とによって2つのベクトルを生成できるようにする。
「注目特徴点の周辺領域を探索」とは、例えば、注目特徴点から主走査方向に走査した場合に最初に発見した特徴点(つまり、注目特徴点に主走査方向で最も近い特徴点)であり、注目特徴点と同種のものであってもよいし、注目特徴点から副走査方向(斜め下又は斜め上を含む)に探索して、注目特徴点に最も近い特徴点であり、注目特徴点と同種のものであってもよい。
「注目特徴点と同種の特徴点」とは、注目特徴点が、黒画素から白画素への変化点(以下、黒白変化点ともいう)を左側として、白画素から黒画素への変化点(以下、白黒変化点ともいう)を右側とした場合の中点の場合は、黒白変化点を左側として、白黒変化点を右側とした場合の中点(特徴点)をいい、注目特徴点が、白黒変化点を左側として、黒白変化点を右側とした場合の中点の場合は、白黒変化点を左側として、黒白変化点を右側とした場合の中点(特徴点)をいう。もちろんのことながら、注目特徴点が、白黒変化点を左側として、白黒変化点を右側とした場合の中点の場合は、白黒変化点を左側として、白黒変化点を右側とした場合の中点(特徴点)をいい、注目特徴点が、黒白変化点を左側として、黒白変化点を右側とした場合の中点の場合は、黒白変化点を左側として、黒白変化点を右側とした場合の中点(特徴点)をいう。
選定する複数の特徴点としては、2つの特徴点であり、主走査方向にある特徴点と、斜め下又は斜め上を含む副走査方向にある特徴点である。つまり、注目特徴点と選定した特徴点とによって2つのベクトルを生成できるようにする。
ベクトル算出モジュール370は、特徴点選定モジュール360、ピーク検出モジュール380と接続されている。ベクトル算出モジュール370は、注目特徴点と特徴点選定モジュール360によって選定された特徴点との距離及び方向を表すベクトルを算出する。例えば、注目特徴点を原点とした場合のベクトルの長さ、傾きが該当する。
ピーク検出モジュール380は、ベクトル算出モジュール370、出力モジュール390と接続されている。ピーク検出モジュール380は、ベクトル算出モジュール370によって算出されたベクトルの分布に基づいて、画像受付モジュール310が受け付けた画像内に使用されているラインスクリーンの線数と角度を抽出する。
また、ピーク検出モジュール380は、その抽出したスクリーンの線数又は角度と予め定められた線数又は角度との差が予め定められた関係にある場合は、その抽出したスクリーンの線数又は角度を該予め定められた線数又は角度として抽出するようにしてもよい。
「予め定められた線数又は角度」とは、記憶装置に記憶された値であり、一般的に用いられているスクリーンの線数又は角度をいう。例えば、線数として100線、150線、200線等、角度として0度、45度、90度等がある。また、予め定められた線数又は角度は、それぞれ複数あってもよい。
予め定められた関係とは、その差が予め定められた閾値以下又は未満である場合である。
抽出したスクリーンの線数又は角度と予め定められた線数又は角度との関係としては、(1)抽出したスクリーンの線数と予め定められた線数、(2)抽出したスクリーンの角度と予め定められた角度、(3)抽出したスクリーンの線数と予め定められた線数及び抽出したスクリーンの角度と予め定められた角度の関係がある。
また、ピーク検出モジュール380は、その抽出したスクリーンの線数又は角度と予め定められた線数又は角度との差が予め定められた関係にある場合は、その抽出したスクリーンの線数又は角度を該予め定められた線数又は角度として抽出するようにしてもよい。
「予め定められた線数又は角度」とは、記憶装置に記憶された値であり、一般的に用いられているスクリーンの線数又は角度をいう。例えば、線数として100線、150線、200線等、角度として0度、45度、90度等がある。また、予め定められた線数又は角度は、それぞれ複数あってもよい。
予め定められた関係とは、その差が予め定められた閾値以下又は未満である場合である。
抽出したスクリーンの線数又は角度と予め定められた線数又は角度との関係としては、(1)抽出したスクリーンの線数と予め定められた線数、(2)抽出したスクリーンの角度と予め定められた角度、(3)抽出したスクリーンの線数と予め定められた線数及び抽出したスクリーンの角度と予め定められた角度の関係がある。
出力モジュール390は、ピーク検出モジュール380と接続されている。出力モジュール390は、ピーク検出モジュール380によって抽出されたラインスクリーンの線数と角度を出力する。出力するとは、例えば、画像データベース等の画像記憶装置へ画像受付モジュール310が受け付けた画像に対応させて(例えば、その画像の属性として)書き込むこと、メモリーカード等の記憶媒体に記憶すること、他の情報処理装置へ渡すこと等が含まれる。スクリーンの線数と角度を受け取った他の画像処理装置では、例えば、画像受付モジュール310が受け取った2値画像を多値化する処理、文字領域とスクリーン処理が施された領域(例えば、写真等)に分離する処理等を行う。
図4は、第1の実施の形態(ベクトル値算出モジュール120)による処理例を示すフローチャートである。
ステップS402では、画像受付モジュール310が、対象とする画像を受け付ける。例えば、図5(a)の例に示す画像が、画像受付モジュール310が受け付けた画像の一部分である。この例では、16×16のブロック毎に処理していることを示している。
ステップS408では、変化点抽出モジュール340A、変化点抽出モジュール340Bが、変化点を抽出する。例えば、図5(b)の例に示すように、斜線が施されている画素は黒画素から白画素への変化点を示しており、黒画素は白画素から黒画素への変化点を示している。この例では、各主走査ライン毎に変化点を抽出している。
ステップS402では、画像受付モジュール310が、対象とする画像を受け付ける。例えば、図5(a)の例に示す画像が、画像受付モジュール310が受け付けた画像の一部分である。この例では、16×16のブロック毎に処理していることを示している。
ステップS408では、変化点抽出モジュール340A、変化点抽出モジュール340Bが、変化点を抽出する。例えば、図5(b)の例に示すように、斜線が施されている画素は黒画素から白画素への変化点を示しており、黒画素は白画素から黒画素への変化点を示している。この例では、各主走査ライン毎に変化点を抽出している。
ステップS410では、特徴点抽出モジュール350A、特徴点抽出モジュール350Bが、特徴点を抽出する。例えば、図5(c)の例に示すように、斜線が施されている画素は、左側に黒白変化点があり右側に白黒変化点がある特徴点を示しており、黒画素は左側に白黒変化点があり右側に黒白変化点がある特徴点を示している。
ステップS412では、特徴点選定モジュール360が、探索領域内での特徴点を選定する。図6の例を用いて説明する。まず、特徴点選定モジュール360が、特徴点606を注目特徴点として設定する。そして、特徴点606を最上ラインの中央とし、高さを特徴点抽出時(ステップS410)の副走査方向の間隔としたブロック(図6の例における画素からなる矩形)を設定する。このブロックの横幅は、本実施の形態が処理可能な線数の範囲の下限に基づいて定めればよく、ブロックの高さについては後述する。また、このブロックにおいて最下ラインにおいて特徴点606(注目特徴点)の左側を探索領域(図6の例では探索範囲690の特徴点606のx座標から左側)とし、その右側を探索領域(図6の例では探索範囲690の特徴点606のx座標から右側)とし、ブロックの最上ラインの右側を探索領域(図6の例では探索範囲680)とし、特徴点606(注目特徴点)と同種の特徴点で、特徴点606(注目特徴点)に最も近い特徴点を選定する。図6の例では、最下ラインでは特徴点614、最上ラインでは特徴点610が選定される。つまり、1つの注目特徴点(特徴点606)に対して、2つの特徴点(特徴点614、特徴点610)が選定されることになる。
なお、ステップS412での選定は、注目特徴点と同じライン上にある特徴点と、注目特徴点が含まれるラインと隣にあるラインに含まれており注目特徴点とは同じ主走査ライン上にある特徴点を選定すればよい。
ステップS414では、特徴点選定モジュール360が、領域内の探索が終了したか否かを判断し、終了した場合はステップS416へ進み、それ以外の場合はステップS412へ戻る。対象としている画像内の領域全体での処理が終了したか否かの判断をしている。
なお、ステップS412での選定は、注目特徴点と同じライン上にある特徴点と、注目特徴点が含まれるラインと隣にあるラインに含まれており注目特徴点とは同じ主走査ライン上にある特徴点を選定すればよい。
ステップS414では、特徴点選定モジュール360が、領域内の探索が終了したか否かを判断し、終了した場合はステップS416へ進み、それ以外の場合はステップS412へ戻る。対象としている画像内の領域全体での処理が終了したか否かの判断をしている。
ステップS416では、ベクトル算出モジュール370が、注目特徴点から選定特徴点への距離・方向を示すベクトルを算出する。図6の例では、特徴点606(注目特徴点)を原点として、選定された特徴点614による第1ベクトルとして(x1,y1)、選定された特徴点610による第2ベクトルとして(x3,0)が算出される。
ステップS418では、ピーク検出モジュール380が、ベクトルのヒストグラムのピーク値を検出する。なお、ブロックの高さは一定なので、ベクトルのx座標をヒストグラム化すればよい。
図7は、第1の実施の形態(ベクトル値算出モジュール120)によるピークを決定する処理例を示す説明図である。
図7は、1位の値と2位の値とを用いたピークを決定する処理例を示す説明図である。図7に示すヒストグラム例は、横軸に座標位置、縦軸に分布数を示す。図7(a)のヒストグラム例は、1位の値と2位の値との差が閾値以上であり、ピークと判断したものである。図7(b)のヒストグラム例は、1位の値と2位の値との差が閾値未満であり、ピークとは判断できなかったものである。このように、ピークを抽出できなかった場合は、ラインスクリーンを検出できなかったと判断するようにしてもよい。そして、その旨を出力モジュール390が出力するようにしてもよい。なお、1位の値と2位の値との差が閾値未満であり、2位の値と3位の値との差が閾値以上である場合は、1位と2位をピークとして判断してもよい。
ステップS418では、ピーク検出モジュール380が、ベクトルのヒストグラムのピーク値を検出する。なお、ブロックの高さは一定なので、ベクトルのx座標をヒストグラム化すればよい。
図7は、第1の実施の形態(ベクトル値算出モジュール120)によるピークを決定する処理例を示す説明図である。
図7は、1位の値と2位の値とを用いたピークを決定する処理例を示す説明図である。図7に示すヒストグラム例は、横軸に座標位置、縦軸に分布数を示す。図7(a)のヒストグラム例は、1位の値と2位の値との差が閾値以上であり、ピークと判断したものである。図7(b)のヒストグラム例は、1位の値と2位の値との差が閾値未満であり、ピークとは判断できなかったものである。このように、ピークを抽出できなかった場合は、ラインスクリーンを検出できなかったと判断するようにしてもよい。そして、その旨を出力モジュール390が出力するようにしてもよい。なお、1位の値と2位の値との差が閾値未満であり、2位の値と3位の値との差が閾値以上である場合は、1位と2位をピークとして判断してもよい。
ステップS420では、出力モジュール390が、ステップS418で検出したラインスクリーンの線数、角度を不正判定モジュール130、2値絵柄文字分離モジュール150に出力する。
図8は、第1の実施の形態(ベクトル値算出モジュール120)によるベクトル算出の処理例を示す説明図である。ここでは、図6の例に示したベクトル(特徴点606を原点とした特徴点614と特徴点610による2つのベクトル、図8の例に示すベクトル810、ベクトル812)がステップS418でピークであったとして説明する。
この場合、ラインスクリーンの線数と角度は、以下の(1)式によって算出する。
角度θ = tan−1(y1 / x1)
線数I = 解像度 / {x3 × cos(θ)} ・・・ (1)
つまり、角度θは、特徴点606からの垂線とベクトル810がなす角度である。また、線数Iは、解像度とベクトル812の長さと角度θによって算出される。
図8は、第1の実施の形態(ベクトル値算出モジュール120)によるベクトル算出の処理例を示す説明図である。ここでは、図6の例に示したベクトル(特徴点606を原点とした特徴点614と特徴点610による2つのベクトル、図8の例に示すベクトル810、ベクトル812)がステップS418でピークであったとして説明する。
この場合、ラインスクリーンの線数と角度は、以下の(1)式によって算出する。
角度θ = tan−1(y1 / x1)
線数I = 解像度 / {x3 × cos(θ)} ・・・ (1)
つまり、角度θは、特徴点606からの垂線とベクトル810がなす角度である。また、線数Iは、解像度とベクトル812の長さと角度θによって算出される。
図9は、第1の実施の形態(不正判定モジュール130)による処理例を示す説明図である。
ベクトルが予め定められた条件を満たしていない場合について、以下に2例を挙げて説明する。図9の例に示すように、対象としている網点中心902と網点中心904に構成されるベクトルv1:951、対象としている網点中心902と網点中心906に構成されるベクトルv2:952を用いて説明する。そして、ベクトル値として、網点中心902を原点とした場合において、網点中心904の座標をベクトルv1:951のベクトル値、網点中心906の座標をベクトルv2:952のベクトル値とする。
(1)予め定められた解像度及び線数以外で発生するベクトル値の場合。
具体的には、v1=(0,0),v2=(0,0)などが該当する。例えば、2値画像取得モジュール110が取得した2値画像が2400dpiの場合に、一つの網点の中心から隣の網点の中心までの距離は、133線であれば400/133≒18(ドット)、230線であれば2400/230≒10(ドット)である。したがって、0度で133線であれば、v1=(0,18)、v2=(18,0)、230線であれば、v1=(0,10)、v2=(10,0)となる。このように、解像度、線数、角度から、取りうるベクトル値は算出可能である。したがって、その範囲を逸脱したようなベクトル値、例えば、v1=(0,0)、v2=(0,0)などのベクトル値が算出された場合は、それは「予め定められた条件を満たしていない(不正なベクトル値)」であると判定する。
(2)2つのベクトル値が直交していない場合
通常のディザスクリーンであれば、ベクトルv1:951とベクトルv2:952は直交するように生成される。したがって、例えば、v1=(x1,y1)、v2=(x2,y2)のときに、|x1|≠|y2|あるいは、|x2|≠|y1|であれば、直行ではないので、「予め定められた条件を満たしていない(不正なベクトル値)」であると判定する。また、2つのベクトルの内積を求めるようにしてもよい。
ベクトルが予め定められた条件を満たしていない場合について、以下に2例を挙げて説明する。図9の例に示すように、対象としている網点中心902と網点中心904に構成されるベクトルv1:951、対象としている網点中心902と網点中心906に構成されるベクトルv2:952を用いて説明する。そして、ベクトル値として、網点中心902を原点とした場合において、網点中心904の座標をベクトルv1:951のベクトル値、網点中心906の座標をベクトルv2:952のベクトル値とする。
(1)予め定められた解像度及び線数以外で発生するベクトル値の場合。
具体的には、v1=(0,0),v2=(0,0)などが該当する。例えば、2値画像取得モジュール110が取得した2値画像が2400dpiの場合に、一つの網点の中心から隣の網点の中心までの距離は、133線であれば400/133≒18(ドット)、230線であれば2400/230≒10(ドット)である。したがって、0度で133線であれば、v1=(0,18)、v2=(18,0)、230線であれば、v1=(0,10)、v2=(10,0)となる。このように、解像度、線数、角度から、取りうるベクトル値は算出可能である。したがって、その範囲を逸脱したようなベクトル値、例えば、v1=(0,0)、v2=(0,0)などのベクトル値が算出された場合は、それは「予め定められた条件を満たしていない(不正なベクトル値)」であると判定する。
(2)2つのベクトル値が直交していない場合
通常のディザスクリーンであれば、ベクトルv1:951とベクトルv2:952は直交するように生成される。したがって、例えば、v1=(x1,y1)、v2=(x2,y2)のときに、|x1|≠|y2|あるいは、|x2|≠|y1|であれば、直行ではないので、「予め定められた条件を満たしていない(不正なベクトル値)」であると判定する。また、2つのベクトルの内積を求めるようにしてもよい。
図10〜13は、第1の実施の形態(不正判定モジュール130)による処理例を示す説明図である。
ひとつ前の行までは正確なベクトル値が算出されていたのに、対象としている現在の行で不正なベクトル値が算出される場合について、図10〜13の例を用いて説明する。
・文字領域1020と網点領域である絵柄領域1010が横に配置されているような画像の場合(図10の例参照)
ライン単位でベクトル値を算出している場合、例えばx行目までは、右側の絵柄領域1010に存在する網点を利用して正しいベクトル値が算出される。絵柄領域1010の左側には文字がないからである。ここで、x+1行目になると、左側に文字がある文字領域1020をも対象にしなければならなくなる。文字の一部が網点の中心として検知され、本来の網点の中心と中心の距離ではない値が検出される。それが、そのラインの統計値に影響されて、正しいベクトル値が算出できない場合がある。
・白い領域の場合(図11の例参照)
余白は網点がない、つまり網点の中心がないので、統計値が出ないことになる。図11の例では、y行目までは絵柄領域1110で正しいベクトル値が算出されていたのに、y+1行目では対象とする網点がない。したがって、正しいベクトル値が算出できない場合がある。
・低濃度領域、太い文字の一部を対象とした場合(図12の例参照)
ベクトル値を算出するために、ヒストグラムをとって最大ピーク値の値で判定しているが、カウントすべき点が少なすぎて、最大ピーク値が予め定められた閾値まで達さない。したがって、正しいベクトル値が算出できない場合がある。図12の例では、z行目からz+1行目のように絵柄領域1210がグラデーションなどで濃いところから薄いところに移る場合などに、このような現象が発生し得る。
・網点形状が壊れてしまっている場合(図13の例参照)
図13(a)の例に示すような網点形状であるものが、解像度変換などの影響で、図13(b)の例に示すように、2つ以上の網点が接触してしまい網点の中心として適正な値を算出することができずに、正しいベクトル値が算出できない場合がある。
ひとつ前の行までは正確なベクトル値が算出されていたのに、対象としている現在の行で不正なベクトル値が算出される場合について、図10〜13の例を用いて説明する。
・文字領域1020と網点領域である絵柄領域1010が横に配置されているような画像の場合(図10の例参照)
ライン単位でベクトル値を算出している場合、例えばx行目までは、右側の絵柄領域1010に存在する網点を利用して正しいベクトル値が算出される。絵柄領域1010の左側には文字がないからである。ここで、x+1行目になると、左側に文字がある文字領域1020をも対象にしなければならなくなる。文字の一部が網点の中心として検知され、本来の網点の中心と中心の距離ではない値が検出される。それが、そのラインの統計値に影響されて、正しいベクトル値が算出できない場合がある。
・白い領域の場合(図11の例参照)
余白は網点がない、つまり網点の中心がないので、統計値が出ないことになる。図11の例では、y行目までは絵柄領域1110で正しいベクトル値が算出されていたのに、y+1行目では対象とする網点がない。したがって、正しいベクトル値が算出できない場合がある。
・低濃度領域、太い文字の一部を対象とした場合(図12の例参照)
ベクトル値を算出するために、ヒストグラムをとって最大ピーク値の値で判定しているが、カウントすべき点が少なすぎて、最大ピーク値が予め定められた閾値まで達さない。したがって、正しいベクトル値が算出できない場合がある。図12の例では、z行目からz+1行目のように絵柄領域1210がグラデーションなどで濃いところから薄いところに移る場合などに、このような現象が発生し得る。
・網点形状が壊れてしまっている場合(図13の例参照)
図13(a)の例に示すような網点形状であるものが、解像度変換などの影響で、図13(b)の例に示すように、2つ以上の網点が接触してしまい網点の中心として適正な値を算出することができずに、正しいベクトル値が算出できない場合がある。
<第2の実施の形態>
第2の実施の形態である画像処理装置は、2値画像を文字領域又は絵柄領域に分離して階調補正するものであって、図14の例に示すように、2値画像取得モジュール110、ベクトル値算出モジュール120、不正判定モジュール130、2値絵柄文字分離モジュール1440、修正モジュール1450、2値階調補正モジュール160、出力モジュール170を有している。なお、前述の実施の形態と同種の部位には同一符号を付し重複した説明を省略する(以下、同様)。
第2の実施の形態である画像処理装置は、2値画像を文字領域又は絵柄領域に分離して階調補正するものであって、図14の例に示すように、2値画像取得モジュール110、ベクトル値算出モジュール120、不正判定モジュール130、2値絵柄文字分離モジュール1440、修正モジュール1450、2値階調補正モジュール160、出力モジュール170を有している。なお、前述の実施の形態と同種の部位には同一符号を付し重複した説明を省略する(以下、同様)。
ベクトル値算出モジュール120は、2値画像取得モジュール110、不正判定モジュール130、2値絵柄文字分離モジュール1440と接続されている。
不正判定モジュール130は、ベクトル値算出モジュール120、修正モジュール1450と接続されている。
2値絵柄文字分離モジュール1440は、ベクトル値算出モジュール120、修正モジュール1450と接続されている。2値絵柄文字分離モジュール1440は、ベクトル値算出モジュール120によって算出されたベクトルに基づいて、2値画像内を文字領域又は絵柄領域に分離する。つまり、第1の実施の形態とは異なり、ベクトル値算出モジュール120による算出結果をそのまま用いて分離処理を行う。その後に、修正モジュール1450が修正する。
不正判定モジュール130は、ベクトル値算出モジュール120、修正モジュール1450と接続されている。
2値絵柄文字分離モジュール1440は、ベクトル値算出モジュール120、修正モジュール1450と接続されている。2値絵柄文字分離モジュール1440は、ベクトル値算出モジュール120によって算出されたベクトルに基づいて、2値画像内を文字領域又は絵柄領域に分離する。つまり、第1の実施の形態とは異なり、ベクトル値算出モジュール120による算出結果をそのまま用いて分離処理を行う。その後に、修正モジュール1450が修正する。
修正モジュール1450は、不正判定モジュール130、2値絵柄文字分離モジュール1440、2値階調補正モジュール160と接続されている。修正モジュール1450は、不正判定モジュール130によって条件を満たしていないと判定された場合は、2値絵柄文字分離モジュール1440による処理結果を修正する。ここでの修正は、具体的には、過去に不正判定モジュール130によって条件を満たしていると判定された場合における2値絵柄文字分離モジュール1440による処理結果にすることである。例えば、ライン単位で2値絵柄文字分離モジュール1440が分離処理を行い、対象となるラインのベクトル値が不正だった場合、一つ上のラインにおける分離結果をそのままコピーする。もちろんのことながら、不正判定モジュール130によって条件を満たしていると判定された場合は、修正は不要であり、その分離結果を記憶装置に記憶させておく。次のラインにおいてベクトル値が不正だった場合、記憶装置に記憶されている分離結果を読み出すこととなる。
2値階調補正モジュール160は、2値画像取得モジュール110、修正モジュール1450、出力モジュール170と接続されている。
2値階調補正モジュール160は、2値画像取得モジュール110、修正モジュール1450、出力モジュール170と接続されている。
図15は、第2の実施の形態による処理例を示すフローチャートである。
ステップS1502では、2値画像取得モジュール110が、2値画像を取得する。
ステップS1504では、ベクトル値算出モジュール120が、ライン毎に2値画像のベクトル値を算出する。
ステップS1506では、2値絵柄文字分離モジュール1440が、ベクトル値を利用して絵柄文字分離を実施する。
ステップS1508では、不正判定モジュール130が、ベクトル値が不正かどうかを判定し、不正である場合はステップS1510へ進み、不正ではない場合はステップS1514へ進む。
ステップS1510では、修正モジュール1450が、ひとつ前の絵柄文字分離の結果をそのままコピーする
ステップS1512では、2値階調補正モジュール160が、修正した絵柄文字分離の結果を利用して階調補正を実施する。
ステップS1514では、2値階調補正モジュール160が、絵柄文字分離の結果を利用して階調補正を実施する。
ステップS1516では、出力モジュール170が、階調補正された2値画像を出力する。
ステップS1502では、2値画像取得モジュール110が、2値画像を取得する。
ステップS1504では、ベクトル値算出モジュール120が、ライン毎に2値画像のベクトル値を算出する。
ステップS1506では、2値絵柄文字分離モジュール1440が、ベクトル値を利用して絵柄文字分離を実施する。
ステップS1508では、不正判定モジュール130が、ベクトル値が不正かどうかを判定し、不正である場合はステップS1510へ進み、不正ではない場合はステップS1514へ進む。
ステップS1510では、修正モジュール1450が、ひとつ前の絵柄文字分離の結果をそのままコピーする
ステップS1512では、2値階調補正モジュール160が、修正した絵柄文字分離の結果を利用して階調補正を実施する。
ステップS1514では、2値階調補正モジュール160が、絵柄文字分離の結果を利用して階調補正を実施する。
ステップS1516では、出力モジュール170が、階調補正された2値画像を出力する。
<第3の実施の形態>
第3の実施の形態である画像処理装置は、2値画像を文字領域又は絵柄領域に分離して階調補正するものであって、図16の例に示すように、2値画像取得モジュール110、ベクトル値算出モジュール120、不正判定モジュール130、2値絵柄文字分離モジュール1640、固定値代入モジュール1650、2値階調補正モジュール160、出力モジュール170を有している。
第3の実施の形態である画像処理装置は、2値画像を文字領域又は絵柄領域に分離して階調補正するものであって、図16の例に示すように、2値画像取得モジュール110、ベクトル値算出モジュール120、不正判定モジュール130、2値絵柄文字分離モジュール1640、固定値代入モジュール1650、2値階調補正モジュール160、出力モジュール170を有している。
ベクトル値算出モジュール120は、2値画像取得モジュール110、不正判定モジュール130、2値絵柄文字分離モジュール1640と接続されている。
不正判定モジュール130は、ベクトル値算出モジュール120、2値階調補正モジュール160と接続されている。
2値絵柄文字分離モジュール1640は、ベクトル値算出モジュール120と接続されており、スイッチを介して2値階調補正モジュール160と接続され得る。2値絵柄文字分離モジュール1640は、ベクトル値算出モジュール120によって算出されたベクトルに基づいて、2値画像内を文字領域又は絵柄領域に分離する。この分離結果が2値階調補正モジュール160によって用いられるか否かについては、不正判定モジュール130の判定結果による。
固定値代入モジュール1650は、スイッチを介して2値階調補正モジュール160と接続され得る。2値絵柄文字分離モジュール1640の代わりに分離結果としての予め定められた値(予め定められた文字領域又は絵柄領域である分離結果)を記憶している。不正判定モジュール130の判定結果によっては、固定値代入モジュール1650が記憶している値が2値階調補正モジュール160によって用いられる。例えば、行全体が絵柄領域であることを示す値、行全体が文字領域であることを示す値等を記憶している。
不正判定モジュール130は、ベクトル値算出モジュール120、2値階調補正モジュール160と接続されている。
2値絵柄文字分離モジュール1640は、ベクトル値算出モジュール120と接続されており、スイッチを介して2値階調補正モジュール160と接続され得る。2値絵柄文字分離モジュール1640は、ベクトル値算出モジュール120によって算出されたベクトルに基づいて、2値画像内を文字領域又は絵柄領域に分離する。この分離結果が2値階調補正モジュール160によって用いられるか否かについては、不正判定モジュール130の判定結果による。
固定値代入モジュール1650は、スイッチを介して2値階調補正モジュール160と接続され得る。2値絵柄文字分離モジュール1640の代わりに分離結果としての予め定められた値(予め定められた文字領域又は絵柄領域である分離結果)を記憶している。不正判定モジュール130の判定結果によっては、固定値代入モジュール1650が記憶している値が2値階調補正モジュール160によって用いられる。例えば、行全体が絵柄領域であることを示す値、行全体が文字領域であることを示す値等を記憶している。
2値階調補正モジュール160は、2値画像取得モジュール110、不正判定モジュール130、出力モジュール170と接続されており、スイッチを介して2値絵柄文字分離モジュール1640又は固定値代入モジュール1650のいずれかと接続され得る。2値階調補正モジュール160は、不正判定モジュール130によって条件を満たしていないと判定された場合は、固定値代入モジュール1650が記憶している分離結果に基づいて、2値画像取得モジュール110によって取得された2値画像に対して階調補正を行い、不正判定モジュール130によって条件を満たしていると判定された場合は、2値絵柄文字分離モジュール1640による処理結果に基づいて、2値画像取得モジュール110によって取得された2値画像に対して階調補正を行う。例えば、ライン単位で2値絵柄文字分離モジュール1640が分離処理を行い、対象となる行のベクトル値が不正だった場合、その行の絵柄文字分離は全部固定値(たとえば絵柄)として階調補正処理を行う。
図17は、第3の実施の形態による処理例を示すフローチャートである。
ステップS1702では、2値画像取得モジュール110が、2値画像を取得する。
ステップS1704では、ベクトル値算出モジュール120が、ライン毎に2値画像のベクトル値を算出する。
ステップS1706では、不正判定モジュール130が、ベクトル値が不正かどうかを判定し、不正である場合はステップS1708へ進み、不正ではない場合はステップS1710へ進む。
ステップS1708では、固定値代入モジュール1650が、対象としている行の絵柄文字分離の結果を予め定められた値(例えば絵柄)とする。
ステップS1710では、2値絵柄文字分離モジュール1640が、ベクトル値を利用して絵柄文字分離を実施する。
ステップS1712では、2値階調補正モジュール160が、絵柄文字分離の結果を利用して階調補正を実施する。
ステップS1714では、出力モジュール170が、階調補正された2値画像を出力する。
ステップS1702では、2値画像取得モジュール110が、2値画像を取得する。
ステップS1704では、ベクトル値算出モジュール120が、ライン毎に2値画像のベクトル値を算出する。
ステップS1706では、不正判定モジュール130が、ベクトル値が不正かどうかを判定し、不正である場合はステップS1708へ進み、不正ではない場合はステップS1710へ進む。
ステップS1708では、固定値代入モジュール1650が、対象としている行の絵柄文字分離の結果を予め定められた値(例えば絵柄)とする。
ステップS1710では、2値絵柄文字分離モジュール1640が、ベクトル値を利用して絵柄文字分離を実施する。
ステップS1712では、2値階調補正モジュール160が、絵柄文字分離の結果を利用して階調補正を実施する。
ステップS1714では、出力モジュール170が、階調補正された2値画像を出力する。
図18を参照して、本実施の形態の画像処理装置のハードウェア構成例について説明する。図18に示す構成は、例えばパーソナルコンピュータ(PC)などによって構成されるものであり、スキャナ等のデータ読み取り部1817と、プリンタなどのデータ出力部1818を備えたハードウェア構成例を示している。
CPU(Central Processing Unit)1801は、前述の実施の形態において説明した各種のモジュール、すなわち、2値画像取得モジュール110、ベクトル値算出モジュール120、不正判定モジュール130、2値絵柄文字分離モジュール150、2値階調補正モジュール160、出力モジュール170、2値絵柄文字分離モジュール1440、修正モジュール1450、2値絵柄文字分離モジュール1640、固定値代入モジュール1650等の各モジュールの実行シーケンスを記述したコンピュータ・プログラムにしたがった処理を実行する制御部である。
ROM(Read Only Memory)1802は、CPU1801が使用するプログラムや演算パラメータ等を格納する。RAM(Random Access Memory)1803は、CPU1801の実行において使用するプログラムや、その実行において適宜変化するパラメータ等を格納する。これらはCPUバスなどから構成されるホストバス1804により相互に接続されている。
ホストバス1804は、ブリッジ1805を介して、PCI(Peripheral Component Interconnect/Interface)バスなどの外部バス1806に接続されている。
キーボード1808、マウス等のポインティングデバイス1809は、操作者により操作される入力デバイスである。ディスプレイ1810は、液晶表示装置又はCRT(Cathode Ray Tube)などがあり、各種情報をテキストやイメージ情報として表示する。
HDD(Hard Disk Drive)1811は、ハードディスクを内蔵し、ハードディスクを駆動し、CPU1801によって実行するプログラムや情報を記録又は再生させる。ハードディスクには、2値画像取得モジュール110が受け付けた画像、ベクトル値算出モジュール120が算出したベクトル値、2値絵柄文字分離モジュール150による処理結果、2値階調補正モジュール160によって処理された画像などが格納される。さらに、その他の各種のデータ処理プログラム等、各種コンピュータ・プログラムが格納される。
ドライブ1812は、装着されている磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリ等のリムーバブル記録媒体1813に記録されているデータ又はプログラムを読み出して、そのデータ又はプログラムを、インタフェース1807、外部バス1806、ブリッジ1805、及びホストバス1804を介して接続されているRAM1803に供給する。リムーバブル記録媒体1813も、ハードディスクと同様のデータ記録領域として利用可能である。
接続ポート1814は、外部接続機器1815を接続するポートであり、USB、IEEE1394等の接続部を持つ。接続ポート1814は、インタフェース1807、及び外部バス1806、ブリッジ1805、ホストバス1804等を介してCPU1801等に接続されている。通信部1816は、通信回線に接続され、外部とのデータ通信処理を実行する。データ読み取り部1817は、例えばスキャナであり、ドキュメントの読み取り処理を実行する。データ出力部1818は、例えばプリンタであり、ドキュメントデータの出力処理を実行する。
なお、図18に示す画像処理装置のハードウェア構成は、1つの構成例を示すものであり、本実施の形態は、図18に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア(例えば特定用途向け集積回路(Application Specific Integrated Circuit:ASIC)等)で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに図18に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、複写機、ファックス、スキャナ、プリンタ、複合機(スキャナ、プリンタ、複写機、ファックス等のいずれか2つ以上の機能を有している画像処理装置)などに組み込まれていてもよい。
なお、前述の各種の実施の形態を組み合わせてもよく(例えば、ある実施の形態内のモジュールを他の実施の形態内に追加する、入れ替えをする等も含む)、また、各モジュールの処理内容として背景技術で説明した技術を採用してもよい。
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通などのために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク(DVD)であって、DVDフォーラムで策定された規格である「DVD−R、DVD−RW、DVD−RAM等」、DVD+RWで策定された規格である「DVD+R、DVD+RW等」、コンパクトディスク(CD)であって、読出し専用メモリ(CD−ROM)、CDレコーダブル(CD−R)、CDリライタブル(CD−RW)等、ブルーレイ・ディスク(Blu−ray Disc(登録商標))、光磁気ディスク(MO)、フレキシブルディスク(FD)、磁気テープ、ハードディスク、読出し専用メモリ(ROM)、電気的消去及び書換可能な読出し専用メモリ(EEPROM(登録商標))、フラッシュ・メモリ、ランダム・アクセス・メモリ(RAM)、SD(Secure Digital)メモリーカード等が含まれる。
そして、前記のプログラム又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク(LAN)、メトロポリタン・エリア・ネットワーク(MAN)、ワイド・エリア・ネットワーク(WAN)、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、あるいは無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して
記録されていてもよい。また、圧縮や暗号化など、復元可能であればどのような態様で記録されていてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通などのために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク(DVD)であって、DVDフォーラムで策定された規格である「DVD−R、DVD−RW、DVD−RAM等」、DVD+RWで策定された規格である「DVD+R、DVD+RW等」、コンパクトディスク(CD)であって、読出し専用メモリ(CD−ROM)、CDレコーダブル(CD−R)、CDリライタブル(CD−RW)等、ブルーレイ・ディスク(Blu−ray Disc(登録商標))、光磁気ディスク(MO)、フレキシブルディスク(FD)、磁気テープ、ハードディスク、読出し専用メモリ(ROM)、電気的消去及び書換可能な読出し専用メモリ(EEPROM(登録商標))、フラッシュ・メモリ、ランダム・アクセス・メモリ(RAM)、SD(Secure Digital)メモリーカード等が含まれる。
そして、前記のプログラム又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク(LAN)、メトロポリタン・エリア・ネットワーク(MAN)、ワイド・エリア・ネットワーク(WAN)、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、あるいは無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して
記録されていてもよい。また、圧縮や暗号化など、復元可能であればどのような態様で記録されていてもよい。
ベクトル値算出モジュール120については、以下のような発明として捉えてもよい。
(A) 画像の主走査方向の画素値が変化する箇所を変化点として抽出する変化点抽出手段と、
前記変化点抽出手段によって抽出された変化点と該変化点から主走査方向にある変化点との中点を特徴点として抽出する特徴点抽出手段と、
前記特徴点抽出手段によって抽出された特徴点から注目特徴点を設定し、該注目特徴点の周辺領域を探索して、注目特徴点と同種の特徴点を複数選定する特徴点選定手段と、
前記注目特徴点と前記特徴点選定手段によって選定された特徴点との距離及び方向を表すベクトルを算出する算出手段と、
前記ベクトル算出手段によって算出されたベクトルの分布に基づいて、前記画像内に使用されているラインスクリーンの線数と角度を抽出するスクリーン線数角度抽出手段
を具備することを特徴とする画像処理装置。
(B) 前記変化点抽出手段は、前記画像の副走査方向において予め定められた間隔で主走査方向の変化点を抽出する、
又は、前記特徴点抽出手段は、前記画像の副走査方向において予め定められた間隔で特徴点を抽出する
ことを特徴とする(A)に記載の画像処理装置。
(C) 前記画像から副走査方向において予め定められた間隔で主走査方向の変化点の間隔を検出する間隔検出手段と、
前記間隔検出手段で検出された変化点の間隔に基づいて、副走査方向における間隔を決定する間隔決定手段
を具備し、
前記変化点抽出手段は、前記画像の副走査方向において前記間隔決定手段によって決定された間隔で、主走査方向の変化点を抽出する
ことを特徴とする(A)に記載の画像処理装置。
(D) 前記間隔検出手段は、変化点の間隔から水平線を検出し、
前記間隔決定手段は、前記間隔検出手段によって水平線が検出された場合は、主走査方向における間隔を決定し、
前記変化点抽出手段は、前記間隔検出手段によって水平線が検出された場合は、前記画像の主走査方向において前記間隔決定手段によって決定された間隔で、副走査方向の変化点を抽出し、
前記特徴点抽出手段は、前記間隔検出手段によって水平線が検出された場合は、前記変化点抽出手段によって抽出された変化点と該変化点から副走査方向にある変化点との中点を特徴点として抽出する
ことを特徴とする(C)に記載の画像処理装置。
(E) 前記スクリーン線数角度抽出手段は、前記抽出したスクリーンの線数又は角度と予め定められた線数又は角度との差が予め定められた関係にある場合は、該抽出したスクリーンの線数又は角度を該予め定められた線数又は角度として抽出する
ことを特徴とする(A)から(D)のいずれか一項に記載の画像処理装置。
(F) コンピュータを、
画像の主走査方向の画素値が変化する箇所を変化点として抽出する変化点抽出手段と、
前記変化点抽出手段によって抽出された変化点と該変化点から主走査方向にある変化点との中点を特徴点として抽出する特徴点抽出手段と、
前記特徴点抽出手段によって抽出された特徴点から注目特徴点を設定し、該注目特徴点の周辺領域を探索して、注目特徴点と同種の特徴点を複数選定する特徴点選定手段と、
前記注目特徴点と前記特徴点選定手段によって選定された特徴点との距離及び方向を表すベクトルを算出する算出手段と、
前記ベクトル算出手段によって算出されたベクトルの分布に基づいて、前記画像内に使用されているラインスクリーンの線数と角度を抽出するスクリーン線数角度抽出手段
として機能させるための画像処理プログラム。
(A) 画像の主走査方向の画素値が変化する箇所を変化点として抽出する変化点抽出手段と、
前記変化点抽出手段によって抽出された変化点と該変化点から主走査方向にある変化点との中点を特徴点として抽出する特徴点抽出手段と、
前記特徴点抽出手段によって抽出された特徴点から注目特徴点を設定し、該注目特徴点の周辺領域を探索して、注目特徴点と同種の特徴点を複数選定する特徴点選定手段と、
前記注目特徴点と前記特徴点選定手段によって選定された特徴点との距離及び方向を表すベクトルを算出する算出手段と、
前記ベクトル算出手段によって算出されたベクトルの分布に基づいて、前記画像内に使用されているラインスクリーンの線数と角度を抽出するスクリーン線数角度抽出手段
を具備することを特徴とする画像処理装置。
(B) 前記変化点抽出手段は、前記画像の副走査方向において予め定められた間隔で主走査方向の変化点を抽出する、
又は、前記特徴点抽出手段は、前記画像の副走査方向において予め定められた間隔で特徴点を抽出する
ことを特徴とする(A)に記載の画像処理装置。
(C) 前記画像から副走査方向において予め定められた間隔で主走査方向の変化点の間隔を検出する間隔検出手段と、
前記間隔検出手段で検出された変化点の間隔に基づいて、副走査方向における間隔を決定する間隔決定手段
を具備し、
前記変化点抽出手段は、前記画像の副走査方向において前記間隔決定手段によって決定された間隔で、主走査方向の変化点を抽出する
ことを特徴とする(A)に記載の画像処理装置。
(D) 前記間隔検出手段は、変化点の間隔から水平線を検出し、
前記間隔決定手段は、前記間隔検出手段によって水平線が検出された場合は、主走査方向における間隔を決定し、
前記変化点抽出手段は、前記間隔検出手段によって水平線が検出された場合は、前記画像の主走査方向において前記間隔決定手段によって決定された間隔で、副走査方向の変化点を抽出し、
前記特徴点抽出手段は、前記間隔検出手段によって水平線が検出された場合は、前記変化点抽出手段によって抽出された変化点と該変化点から副走査方向にある変化点との中点を特徴点として抽出する
ことを特徴とする(C)に記載の画像処理装置。
(E) 前記スクリーン線数角度抽出手段は、前記抽出したスクリーンの線数又は角度と予め定められた線数又は角度との差が予め定められた関係にある場合は、該抽出したスクリーンの線数又は角度を該予め定められた線数又は角度として抽出する
ことを特徴とする(A)から(D)のいずれか一項に記載の画像処理装置。
(F) コンピュータを、
画像の主走査方向の画素値が変化する箇所を変化点として抽出する変化点抽出手段と、
前記変化点抽出手段によって抽出された変化点と該変化点から主走査方向にある変化点との中点を特徴点として抽出する特徴点抽出手段と、
前記特徴点抽出手段によって抽出された特徴点から注目特徴点を設定し、該注目特徴点の周辺領域を探索して、注目特徴点と同種の特徴点を複数選定する特徴点選定手段と、
前記注目特徴点と前記特徴点選定手段によって選定された特徴点との距離及び方向を表すベクトルを算出する算出手段と、
前記ベクトル算出手段によって算出されたベクトルの分布に基づいて、前記画像内に使用されているラインスクリーンの線数と角度を抽出するスクリーン線数角度抽出手段
として機能させるための画像処理プログラム。
110…2値画像取得モジュール
120…ベクトル値算出モジュール
130…不正判定モジュール
140…記憶モジュール
150…2値絵柄文字分離モジュール
160…2値階調補正モジュール
170…出力モジュール
1440…2値絵柄文字分離モジュール
1450…修正モジュール
1640…2値絵柄文字分離モジュール
1650…固定値代入モジュール
120…ベクトル値算出モジュール
130…不正判定モジュール
140…記憶モジュール
150…2値絵柄文字分離モジュール
160…2値階調補正モジュール
170…出力モジュール
1440…2値絵柄文字分離モジュール
1450…修正モジュール
1640…2値絵柄文字分離モジュール
1650…固定値代入モジュール
Claims (8)
- 2値画像を取得する画像取得手段と、
前記画像取得手段によって取得された2値画像内の網点を構成する画素塊間の関係によって定義されるベクトルを算出する算出手段と、
前記算出手段によって算出されたベクトルが網点を構成するベクトルとして予め定められた条件を満たしているか否かを判定する判定手段と、
前記判定手段によって条件を満たしていないと判定された場合は、過去に前記判定手段によって条件を満たしていると判定された場合における前記算出手段によって算出されたベクトルに基づいて、前記2値画像内を文字領域又は絵柄領域に分離する分離手段と、
前記分離手段による処理結果に基づいて、前記画像取得手段によって取得された2値画像に対して階調補正を行う補正手段
を具備することを特徴とする画像処理装置。 - 前記判定手段が判定に用いる予め定められた条件として、予め定められた2値画像の解像度、網点の線数、網点の角度である
ことを特徴とする請求項1に記載の画像処理装置。 - 前記判定手段が判定に用いる予め定められた条件として、前記算出手段によって算出されたベクトル間の角度が予め定められた値である
ことを特徴とする請求項1に記載の画像処理装置。 - 2値画像を取得する画像取得手段と、
前記画像取得手段によって取得された2値画像内の網点を構成する画素塊間の関係によって定義されるベクトルを算出する算出手段と、
前記算出手段によって算出されたベクトルが網点を構成するベクトルとして予め定められた条件を満たしているか否かを判定する判定手段と、
前記算出手段によって算出されたベクトルに基づいて、前記2値画像内を文字領域又は絵柄領域に分離する分離手段と、
前記判定手段によって条件を満たしていないと判定された場合は、前記分離手段による処理結果を修正する修正手段と、
前記分離手段による処理結果又は前記修正手段による修正結果に基づいて、前記画像取得手段によって取得された2値画像に対して階調補正を行う補正手段
を具備することを特徴とする画像処理装置。 - 2値画像を取得する画像取得手段と、
前記画像取得手段によって取得された2値画像内の網点を構成する画素塊間の関係によって定義されるベクトルを算出する算出手段と、
前記算出手段によって算出されたベクトルが網点を構成するベクトルとして予め定められた条件を満たしているか否かを判定する判定手段と、
前記算出手段によって算出されたベクトルに基づいて、前記2値画像内を文字領域又は絵柄領域に分離する分離手段と、
前記判定手段によって条件を満たしていないと判定された場合は、予め定められた文字領域又は絵柄領域である分離結果に基づいて、前記画像取得手段によって取得された2値画像に対して階調補正を行い、前記判定手段によって条件を満たしていると判定された場合は、前記分離手段による処理結果に基づいて、前記画像取得手段によって取得された2値画像に対して階調補正を行う補正手段
を具備することを特徴とする画像処理装置。 - コンピュータを、
2値画像を取得する画像取得手段と、
前記画像取得手段によって取得された2値画像内の網点を構成する画素塊間の関係によって定義されるベクトルを算出する算出手段と、
前記算出手段によって算出されたベクトルが網点を構成するベクトルとして予め定められた条件を満たしているか否かを判定する判定手段と、
前記判定手段によって条件を満たしていないと判定された場合は、過去に前記判定手段によって条件を満たしていると判定された場合における前記算出手段によって算出されたベクトルに基づいて、前記2値画像内を文字領域又は絵柄領域に分離する分離手段と、
前記分離手段による処理結果に基づいて、前記画像取得手段によって取得された2値画像に対して階調補正を行う補正手段
として機能させるための画像処理プログラム。 - コンピュータを、
2値画像を取得する画像取得手段と、
前記画像取得手段によって取得された2値画像内の網点を構成する画素塊間の関係によって定義されるベクトルを算出する算出手段と、
前記算出手段によって算出されたベクトルが網点を構成するベクトルとして予め定められた条件を満たしているか否かを判定する判定手段と、
前記算出手段によって算出されたベクトルに基づいて、前記2値画像内を文字領域又は絵柄領域に分離する分離手段と、
前記判定手段によって条件を満たしていないと判定された場合は、前記分離手段による処理結果を修正する修正手段と、
前記分離手段による処理結果又は前記修正手段による修正結果に基づいて、前記画像取得手段によって取得された2値画像に対して階調補正を行う補正手段
として機能させるための画像処理プログラム。 - コンピュータを、
2値画像を取得する画像取得手段と、
前記画像取得手段によって取得された2値画像内の網点を構成する画素塊間の関係によって定義されるベクトルを算出する算出手段と、
前記算出手段によって算出されたベクトルが網点を構成するベクトルとして予め定められた条件を満たしているか否かを判定する判定手段と、
前記算出手段によって算出されたベクトルに基づいて、前記2値画像内を文字領域又は絵柄領域に分離する分離手段と、
前記判定手段によって条件を満たしていないと判定された場合は、予め定められた文字領域又は絵柄領域である分離結果に基づいて、前記画像取得手段によって取得された2値画像に対して階調補正を行い、前記判定手段によって条件を満たしていると判定された場合は、前記分離手段による処理結果に基づいて、前記画像取得手段によって取得された2値画像に対して階調補正を行う補正手段
として機能させるための画像処理プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012272989A JP2014120832A (ja) | 2012-12-14 | 2012-12-14 | 画像処理装置及び画像処理プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012272989A JP2014120832A (ja) | 2012-12-14 | 2012-12-14 | 画像処理装置及び画像処理プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2014120832A true JP2014120832A (ja) | 2014-06-30 |
Family
ID=51175348
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012272989A Pending JP2014120832A (ja) | 2012-12-14 | 2012-12-14 | 画像処理装置及び画像処理プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2014120832A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020188424A (ja) * | 2019-05-17 | 2020-11-19 | コニカミノルタ株式会社 | 画像処理装置、画像形成装置及び画像領域判別方法。 |
JP2021077985A (ja) * | 2019-11-08 | 2021-05-20 | コニカミノルタ株式会社 | 画像処理装置および画像形成装置 |
-
2012
- 2012-12-14 JP JP2012272989A patent/JP2014120832A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020188424A (ja) * | 2019-05-17 | 2020-11-19 | コニカミノルタ株式会社 | 画像処理装置、画像形成装置及び画像領域判別方法。 |
JP7167848B2 (ja) | 2019-05-17 | 2022-11-09 | コニカミノルタ株式会社 | 画像処理装置、画像形成装置及び画像領域判別方法。 |
JP2021077985A (ja) * | 2019-11-08 | 2021-05-20 | コニカミノルタ株式会社 | 画像処理装置および画像形成装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5887770B2 (ja) | 画像処理装置及び画像処理プログラム | |
US8306325B2 (en) | Text character identification system and method thereof | |
JP2014092899A (ja) | 画像処理装置及び画像処理プログラム | |
KR20080006112A (ko) | 경계 영역의 선명도를 개선하는 하프토닝 방법 및 장치 | |
JP4380733B2 (ja) | 原稿の複写履歴を管理する装置及びその方法 | |
US20180225541A1 (en) | Image processing apparatuses and non-transitory computer readable medium | |
JP4140519B2 (ja) | 画像処理装置、プログラムおよび記録媒体 | |
US11430235B2 (en) | Image processing apparatus, image processing method, and storage medium | |
JP2008271110A (ja) | 画像処理装置、その制御方法、制御プログラムおよび記憶媒体 | |
US8977044B2 (en) | Image processing apparatus for area separation of images, image processing method, and computer readable medium | |
JP2014120832A (ja) | 画像処理装置及び画像処理プログラム | |
JP2016063507A (ja) | 画像処理装置及び画像処理プログラム | |
JP5742283B2 (ja) | 画像処理装置及び画像処理プログラム | |
JP5742367B2 (ja) | 画像処理装置及び画像処理プログラム | |
JP2017174031A (ja) | 画像処理装置及び画像処理プログラム | |
JP5919979B2 (ja) | 画像処理装置及び画像処理プログラム | |
JP4840388B2 (ja) | 画像処理装置及び画像処理プログラム | |
JP4552757B2 (ja) | 画像処理装置、画像処理方法、および画像処理プログラム | |
JP5434273B2 (ja) | 画像処理装置及び画像処理プログラム | |
JP2013161158A (ja) | 画像処理装置及び画像処理プログラム | |
US20220343666A1 (en) | Image processing apparatus, image processing method, and storage medium | |
JP2009060216A (ja) | 画像処理装置及び画像処理プログラム | |
JP2009033448A (ja) | 画像処理システム及び画像処理プログラム | |
JP6573124B2 (ja) | 画像処理装置 | |
US20110096984A1 (en) | Image processing device, method for image processing, and image forming apparatus |