(57)【特許請求の範囲】
【請求項１】
入力画像からエッジ画素を抽出するエッジ画素抽出部と、
前記エッジ画素毎の輝度値について第１ヒストグラムを生成する第１ヒストグラム生成部と、
前記エッジ画素毎の近傍画素における最小輝度値について第２ヒストグラムを生成する第２ヒストグラム生成部と、
前記第１ヒストグラムの分布率が最大となる輝度値と前記第２ヒストグラムの分布率が最大となる輝度値との間に静的閾値を求める静的閾値算出部と、
前記入力画像について前記静的閾値を用いて二値化処理を行う二値化処理部と、
を有することを特徴とする画像処理装置。
【請求項２】
前記エッジ画素毎に、当該エッジ画素の輝度値と当該エッジ画素の近傍画素における最小輝度値に基づいて動的閾値を求める動的閾値算出部をさらに有し、
前記二値化処理部は、前記エッジ画素及び前記近傍画素については対応する前記動的閾値を用いて二値化処理を行い、前記エッジ画素及び前記近傍画素以外の画素については前記静的閾値を用いて二値化処理を行う、請求項１に記載の画像処理装置。
【請求項３】
前記静的閾値算出部は、前記第１ヒストグラムの低輝度側の収束点の輝度値が前記第２ヒストグラムの高輝度側の収束点の輝度値以上である場合、前記第１ヒストグラムの低輝度側の収束点の輝度値と前記第２ヒストグラムの高輝度側の収束点の輝度値の平均値を前記静的閾値とする、請求項１または２に記載の画像処理装置。
【請求項４】
前記静的閾値算出部は、前記第１ヒストグラムの低輝度側の収束点の輝度値が前記第２ヒストグラムの高輝度側の収束点の輝度値未満である場合、前記第１ヒストグラムと前記第２ヒストグラムの交点の輝度値を前記静的閾値とする、請求項１から３の何れか一項に記載の画像処理装置。
【請求項５】
前記動的閾値算出部は、前記エッジ画素の輝度値と前記最小輝度値にそれぞれ所定の重み係数を乗じた値を合計することにより前記動的閾値を求める、請求項２に記載の画像処理装置。
【請求項６】
入力画像からエッジ画素を抽出するステップと、
前記エッジ画素毎の輝度値について第１ヒストグラムを生成するステップと、
前記エッジ画素毎の近傍画素における最小輝度値について第２ヒストグラムを生成するステップと、
前記第１ヒストグラムの分布率が最大となる輝度値と前記第２ヒストグラムの分布率が最大となる輝度値との間に静的閾値を求める静的閾値を求めるステップと、
前記入力画像について前記静的閾値を用いて二値化処理を行うステップと、
を含むことを特徴とする画像処理方法。
【請求項７】
入力画像からエッジ画素を抽出するステップと、
前記エッジ画素毎の輝度値について第１ヒストグラムを生成するステップと、
前記エッジ画素毎の近傍画素における最小輝度値について第２ヒストグラムを生成するステップと、
前記第１ヒストグラムの分布率が最大となる輝度値と前記第２ヒストグラムの分布率が最大となる輝度値との間に静的閾値を求める静的閾値を求めるステップと、
前記入力画像について前記静的閾値を用いて二値化処理を行うステップと、
をコンピュータに実行させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理方法及びコンピュータプログラムに関し、特に、入力画像を二値化する画像処理装置、画像処理方法及びコンピュータプログラムに関する。
【背景技術】
【０００２】
一般に、文書から文字等の情報を抽出して所定の処理を行う場合、その文書に表された画像について、文字部分と文字以外の背景部分を区別するために二値化処理が行われる。
【０００３】
例えば、特許文献１には、小切手等の文書の画像データから文字部分だけを抽出する小切手読取装置が提案されている。この小切手読取装置は、文書をスキャンして得た画像データの濃度分布のヒストグラムを作成し、高濃度範囲に存在する山と低濃度範囲に存在する山の間に二値化閾値を設定し、この二値化閾値を用いて二値化処理を行う。しかし、例えば、背景が所定領域毎に異なったり、グラデーション変化する等、背景部分の輝度が位置によって異なる文書では、画像データの濃度分布のヒストグラムにおいて高濃度範囲と低濃度範囲が明確に分離できず、二値化閾値を適切に設定できない場合があった。
【０００４】
そこで、特許文献２には、文書画像内の部分領域毎に異なる二値化閾値を用いるカラー文書画像認識装置が提案されている。このカラー文書画像認識装置は、文書画像から取得したグレースケール画像に対してエッジ抽出処理を実行し、その結果得られたエッジ画素の連結成分に基づいて部分領域を抽出する。そして、カラー文書画像認識装置は、部分領域毎に二値化閾値を求めて二値化処理を行う。このとき、カラー文書画像認識装置は、部分領域以外の領域は全て背景となるようにする。
【０００５】
また、特許文献３には、入力した画像を分割したブロック毎に異なる二値化閾値を求める画像二値化装置が提案されている。この画像二値化装置は、入力した画像を複数の部分画像に分割する。そして、画像二値化装置は、注目する部分画像とその部分画像に隣接する八つの隣接部分画像の明度のヒストグラムデータを予め学習されたニューラルネットワークに入力し、ニューラルネットワークの出力値を閾値としてその注目する部分画像の二値化を実施する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００７−２８３６２号公報
【特許文献２】特許第４０７７０９４号公報
【特許文献３】特開平６−１１３１３９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献２に記載されたカラー文書画像認識装置は、部分領域毎に二値化閾値を求めることにより、背景部分の輝度が位置によって異なる文書でも精度よく二値化処理を行うことができる。しかしながら、特許文献２に記載されたカラー文書画像認識装置は、二値化処理において部分領域以外の領域を全て背景とするため、エッジ画素として抽出できないような背景部分との輝度差が小さい文字部分を抽出できないおそれがあった。
【０００８】
また、特許文献３に記載された画像二値化装置も、所定のブロック毎に二値化閾値を求めることにより、背景部分の輝度が位置によって異なる文書でも精度よく二値化処理を行うことができる。しかしながら、特許文献３に記載された画像二値化装置は、予め学習された結果に基づいて閾値を予測するため、入力画像によっては閾値が適切にならない場合があった。
【０００９】
そこで、本発明の目的は、文字部分と背景部分を高精度に区別するように入力画像を二値化することが可能な画像処理装置、画像処理方法及びそのような画像処理方法をコンピュータに実行させるコンピュータプログラムを提供することにある。
【課題を解決するための手段】
【００１０】
本発明に係る画像処理装置は、入力画像からエッジ画素を抽出するエッジ画素抽出部と、エッジ画素毎の輝度値について第１ヒストグラムを生成する第１ヒストグラム生成部と、エッジ画素毎の近傍画素における最小輝度値について第２ヒストグラムを生成する第２ヒストグラム生成部と、第１ヒストグラム及び第２ヒストグラムに基づいて静的閾値を求める静的閾値算出部と、入力画像について静的閾値を用いて二値化処理を行う二値化処理部と、を有する。
【００１１】
さらに、本発明に係る画像処理装置において、エッジ画素毎に、当該エッジ画素の輝度値と当該エッジ画素の近傍画素における最小輝度値に基づいて動的閾値を求める動的閾値算出部をさらに有し、二値化処理部は、エッジ画素及び近傍画素については対応する動的閾値を用いて二値化処理を行い、エッジ画素及び近傍画素以外の画素については前記静的閾値を用いて二値化処理を行うことが好ましい。
【００１２】
さらに、本発明に係る画像処理装置において、静的閾値算出部は、第１ヒストグラムの低輝度側の収束点の輝度値が第２ヒストグラムの高輝度側の収束点の輝度値以上である場合、第１ヒストグラムの低輝度側の収束点の輝度値と第２ヒストグラムの高輝度側の収束点の輝度値の平均値を静的閾値とすることが好ましい。
【００１３】
さらに、本発明に係る画像処理装置において、静的閾値算出部は、第１ヒストグラムの低輝度側の収束点の輝度値が第２ヒストグラムの高輝度側の収束点の輝度値未満である場合、第１ヒストグラムと第２ヒストグラムの交点の輝度値を静的閾値とすることが好ましい。
【００１４】
さらに、本発明に係る画像処理装置において、動的閾値算出部は、エッジ画素の輝度値と最小輝度値にそれぞれ所定の重み係数を乗じた値を合計することにより動的閾値を求めることが好ましい。
【００１５】
また、本発明に係る画像処理方法は、入力画像からエッジ画素を抽出するステップと、エッジ画素毎の輝度値について第１ヒストグラムを生成するステップと、エッジ画素毎の近傍画素における最小輝度値について第２ヒストグラムを生成するステップと、第１ヒストグラム及び第２ヒストグラムに基づいて静的閾値を求めるステップと、入力画像について静的閾値を用いて二値化処理を行うステップと、を含む。
【００１６】
また、本発明に係るコンピュータプログラムは、入力画像からエッジ画素を抽出するステップと、エッジ画素毎の輝度値について第１ヒストグラムを生成するステップと、エッジ画素毎の近傍画素における最小輝度値について第２ヒストグラムを生成するステップと、第１ヒストグラム及び第２ヒストグラムに基づいて静的閾値を求めるステップと、入力画像について静的閾値を用いて二値化処理を行うステップと、をコンピュータに実行させる。
【発明の効果】
【００１７】
本発明によれば、文字部分と背景部分を高精度に区別するように入力画像を二値化することが可能な画像処理装置、画像処理方法及びそのような画像処理方法をコンピュータに実行させるコンピュータプログラムを提供することができる。
【図面の簡単な説明】
【００１８】
【図１】本発明を適用した画像処理システムの概略構成図である。
【図２】画像処理部の概略構成図である。
【図３】画像読取装置による二値化処理の動作を示すフローチャートである。
【図４】（ａ）〜（ｄ）は、エッジ画素の抽出処理を説明するための模式図である。
【図５】動的閾値の算出処理を説明するための模式図である。
【図６】（ａ）、（ｂ）は、異なる動的閾値で二値化した二値化画像である。
【図７】入力画像の一例である。
【図８】第１ヒストグラム及び第２ヒストグラムの例を示す図である。
【図９】入力画像の他の例である。
【図１０】第１ヒストグラム及び第２ヒストグラムの例を示す図である。
【図１１】図７に示す入力画像を二値化した二値化画像の例である。
【図１２】図９に示す入力画像を二値化した二値化画像の例である。
【図１３】画像処理部の他の例を示す概略構成図である。
【図１４】二値化処理の動作の他の例を示すフローチャートである。
【図１５】（ａ）、（ｂ）は、入力画像及びその二値化画像の他の例である。
【図１６】（ａ）、（ｂ）は、入力画像及びその二値化画像のさらに他の例である。
【図１７】他の画像処理システムの概略構成図である。
【発明を実施するための形態】
【００１９】
以下、本発明に係る画像処理装置、画像処理方法及びコンピュータプログラムについて図を参照しつつ説明する。但し、本発明の技術的範囲はそれらの実施の形態に限定されず、特許請求の範囲に記載された発明とその均等物に及ぶ点に留意されたい。
【００２０】
図１は、本発明を適用した画像処理システムの概略構成を示す図である。図１に示すように、画像処理システム１は、画像読取装置１０と、情報処理装置２０とを有する。画像読取装置１０は、例えばイメージスキャナ、デジタルカメラ等であり、情報処理装置２０は、例えば画像読取装置１０に接続して用いられるパーソナルコンピュータ等である。
【００２１】
画像読取装置１０は、画像入力部１１と、第１画像メモリ部１２と、第１インターフェース部１３と、第１記憶部１４と、第１中央処理部１５と、画像処理部１６とを有する。以下、画像読取装置１０の各部について詳細に説明する。
【００２２】
画像入力部１１は、撮像対象物である原稿、風景、人物等を撮像する撮像センサを有する。なお、以下では、撮像対象物が原稿であるものとして説明する。この撮像センサは、１次元又は２次元に配列されたＣＣＤ、ＣＭＯＳ等の撮像素子と、撮像素子に撮像対象物の像を結像する光学系を備え、各撮像素子は、ＲＧＢ各色に対応するアナログ値を出力する。そして、画像入力部１１は、撮像センサが出力した各アナログ値をデジタル値に変換して画素データを生成し、生成した各画素データから構成される画像データ（以下、ＲＧＢ画像と称する）を生成する。このＲＧＢ画像は、各画素データが、例えばＲＧＢ各色毎に８ｂｉｔで表される計２４ｂｉｔのＲＧＢ値からなるカラー画像データとなる。
【００２３】
そして、画像入力部１１は、ＲＧＢ画像の各画素のＲＧＢ値を輝度値及び色差値（ＹＵＶ値）に変換した画像（以下、入力画像と称する）を生成し、第１画像メモリ部１２に保存する。なお、ＹＵＶ値は、例えば以下の式により算出することができる。
Ｙ値＝  ０．３０×Ｒ値＋０．５９×Ｇ値＋０．１１×Ｂ値    （１）
Ｕ値＝−０．１７×Ｒ値−０．３３×Ｇ値＋０．５０×Ｂ値    （２）
Ｖ値＝  ０．５０×Ｒ値−０．４２×Ｇ値−０．０８×Ｂ値    （３）
【００２４】
第１画像メモリ部１２は、不揮発性半導体メモリ、揮発性半導体メモリ、磁気ディスク等の記憶装置を有する。第１画像メモリ部１２は、画像入力部１１と接続され、画像入力部１１により生成された入力画像を保存するとともに、画像処理部１６と接続され、画像処理部１６により入力画像に対して画像処理がなされた各種の処理画像を保存する。
【００２５】
第１インターフェース部１３は、例えばＵＳＢ等のシリアルバスに準じるインターフェース回路を有し、情報処理装置２０と電気的に接続して画像データ及び各種の情報を送受信する。また、第１インターフェース部１３にフラッシュメモリ等を接続して第１画像メモリ部１２に保存されている画像データを保存するようにしてもよい。
【００２６】
第１記憶部１４は、ＲＡＭ、ＲＯＭ等のメモリ装置、ハードディスク等の固定ディスク装置、又はフレキシブルディスク、光ディスク等の可搬用の記憶装置等を有する。また、第１記憶部１４には、画像読取装置１０の各種処理に用いられるコンピュータプログラム、データベース、テーブル等が格納される。
【００２７】
第１中央処理部１５は、画像入力部１１、第１画像メモリ部１２、第１インターフェース部１３、第１記憶部１４、及び画像処理部１６と接続され、これらの各部を制御する。第１中央処理部１５は、画像入力部１１の入力画像生成制御、第１画像メモリ部１２の制御、第１インターフェース部１３を介した情報処理装置２０とのデータ送受信制御、第１記憶部１４の制御、画像処理部１６による画像処理の制御等を行う。
【００２８】
画像処理部１６は、第１画像メモリ部１２に接続され、入力画像を二値化するための閾値を算出して二値化処理を行う。この画像処理部１６は、第１中央処理部１５に接続され、第１中央処理部１５からの制御により予め第１記憶部１４に記憶されているプログラムに基づいて動作する。あるいは、画像処理部１６は、独立した集積回路、マイクロプロセッサ、ファームウェア等で構成されてもよい。
【００２９】
情報処理装置２０は、第２インターフェース部２１と、第２画像メモリ部２２と、表示部２３と、入力部２４と、第２記憶部２５と、第２中央処理部２６とを有する。以下、情報処理装置２０の各部について詳細に説明する。
【００３０】
第２インターフェース部２１は、画像読取装置１０の第１インターフェース部１３と同様のインターフェース回路を有し、情報処理装置２０と画像読取装置１０とを接続する。
【００３１】
第２画像メモリ部２２は、画像読取装置１０の第１画像メモリ部１２と同様の記憶装置を有する。第２画像メモリ部２２には、第２インターフェース部２１を介して画像読取装置１０から受信した画像データが保存される。
【００３２】
表示部２３は、液晶、有機ＥＬ等から構成されるディスプレイ及びディスプレイに画像データを出力するインターフェース回路を有し、第２画像メモリ部２２と接続されて第２画像メモリ部２２に保存されている画像データをディスプレイに表示する。
【００３３】
入力部２４は、キーボード、マウス等の入力装置及び入力装置から信号を取得するインターフェース回路を有し、利用者の操作に応じた信号を第２中央処理部２６に出力する。
【００３４】
第２記憶部２５は、画像読取装置１０の第１記憶部１４と同様のメモリ装置、固定ディスク装置、可搬用の記憶装置等を有する。第２記憶部２５には、情報処理装置２０の各種処理に用いられるコンピュータプログラム、データベース、テーブル等が格納される。
【００３５】
第２中央処理部２６は、第２インターフェース部２１、第２画像メモリ部２２、表示部２３、入力部２４及び第２記憶部２５と接続され、これらの各部を制御する。第２中央処理部２６は、第２インターフェース部２１を介した画像読取装置１０とのデータ送受信制御、第２画像メモリ部２２の制御、表示部２３の表示制御、入力部２４の入力制御、第２記憶部２５の制御等を行う。
【００３６】
図２は、画像処理部１６の概略構成を示す図である。図２に示すように画像処理部１６は、エッジ画素抽出部１０１、動的閾値算出部１０２、第１ヒストグラム生成部１０３、第２ヒストグラム生成部１０４、静的閾値算出部１０５及び二値化処理部１０６等を有する。
【００３７】
図３は、画像読取装置１０による閾値算出処理及び二値化処理の動作を示すフローチャートである。以下、図３に示したフローチャートを参照しつつ、閾値算出処理及び二値化処理の動作を説明する。なお、以下に説明する動作のフローは、予め第１記憶部１４に記憶されているプログラムに基づき主に第１中央処理部１５により画像読取装置１０の各要素と協同して実行される。
【００３８】
最初に、画像入力部１１は、撮像対象物（原稿）を撮影した入力画像を生成し、第１画像メモリ部１２に保存する（ステップＳ３０１）。
【００３９】
次に、エッジ画素抽出部１０１は、第１画像メモリ部１２に保存された入力画像の輝度成分（以下、入力画像の輝度成分による画像を輝度画像と称する）を読み出し、輝度画像の各画素に対して二次差分フィルタ等のエッジ検出フィルタを適用してその出力値を画素値とするエッジ画像を生成する（ステップＳ３０２）。エッジ画素抽出部１０１が用いる二次差分フィルタの例を次式に示す。
【数１】
0005701182.tif 000002
【００４０】
なお、二次差分フィルタによる出力値はノイズの影響を強く受ける場合があるので、エッジ画素抽出部１０１は、エッジ画像の各画素に対して、さらに平均フィルタ、ガウシアンフィルタ等の平滑フィルタを適用してノイズの影響を低減するようにしてもよい。
【００４１】
次に、エッジ画素抽出部１０１は、エッジ画像を用いて輝度画像からエッジ画素を抽出する（ステップＳ３０３）。
【００４２】
図４（ａ）〜（ｄ）は、エッジ画素の抽出処理について説明するための図である。図４（ａ）、（ｃ）に示すグラフ４００、４２０は、エッジ画像において水平方向に隣接する画素の画素値を表し、図４（ｂ）、（ｄ）に示すグラフ４１０、４３０は、そのエッジ画像上の画素に対応する輝度画像上の画素の輝度値を表す。グラフ４００、４２０の横軸はエッジ画像上の水平位置を示し、縦軸は画素値を示す。また、グラフ４１０、４３０の横軸は輝度画像上の水平位置を示し、縦軸は輝度値を示す。
【００４３】
エッジ画素抽出部１０１は、まず、エッジ画像において水平方向に隣接する画素の画素値が正から負へ又は負から正へ符号変化する画素のうち、画素値が負である方の画素４０１、４２１を抽出する。次に、エッジ画素抽出部１０１は、抽出した画素４０１、４２１に対応する輝度画像上の画素４１１、４３１の水平方向の両隣の画素４１２及び４１３、画素４３２及び４３３の輝度値の差の絶対値（以下、隣接差分値と称する）４１４、４３４を算出する。そして、エッジ画素抽出部１０１は、算出した隣接差分値が閾値Wthを越えるか否かを判定し、隣接差分値が閾値Wthを越える場合、その輝度画像上の画素を水平エッジ画素とする。この閾値Wthは、例えば、人が画像上の輝度の違いを目視により判別可能な輝度値の差（例えば２０）に設定することができる。また、エッジ画素抽出部１０１は、エッジ画像及び輝度画像について垂直方向にも同様の処理を行い、垂直エッジ画素を抽出する。そして、エッジ画素抽出部１０１は、水平エッジ画素又は垂直エッジ画素の何れかとして抽出された画素をエッジ画素とする。あるいは、水平エッジ画素及び垂直エッジ画素の両方に抽出された画素をエッジ画素としてもよい。
【００４４】
次に、動的閾値算出部１０２は、輝度画像において、エッジ画素及びそのエッジ画素から所定範囲内にある画素（以下、近傍画素と称する）を二値化するための閾値（以下、動的閾値と称する）を算出する（ステップＳ３０４）。
【００４５】
入力画像において、背景部分の輝度が位置によって異なる場合、二値化処理で文字部分と背景部分を適切に区別するためには、文字部分の近傍領域毎、つまりエッジ画素及びその近傍画素毎に二値化閾値を定めることが好ましい。そこで、動的閾値算出部１０２は、エッジ画素及びその近傍画素毎に動的閾値を算出する。
【００４６】
図５は、動的閾値の算出処理について説明するための図である。図５に示すグラフ５００は、輝度画像において水平方向に隣接する画素の輝度値を表す。グラフ５００の横軸は輝度画像上の水平位置を示し、縦軸は輝度値を示す。グラフ５００では、画素５０１がエッジ画素として抽出されており、水平位置が右側の画素ほど輝度が低く（黒く）、左側の画素ほど輝度が高く（白く）なっている。この場合、エッジ画素５０１の近傍において文字部分と背景部分を正しく区別するためには、エッジ部分を形成する画素のうち十分に輝度の低い画素５０２とその画素より輝度の高い画素を区別できるように、画素５０２の輝度値とエッジ画素５０１の輝度値の間５０３に動的閾値を定めることが好ましい。そこで、動的閾値算出部１０２は、エッジ画素の輝度値と、そのエッジ画素の近傍画素のうち最も輝度値の低い画素の輝度値（以下、最小輝度値と称する）との間に動的閾値を定める。例えば、動的閾値算出部１０２は、エッジ画素の輝度値と、そのエッジ画素の近傍画素の最小輝度値の平均値を動的閾値とする。
【００４７】
あるいは、動的閾値算出部１０２は、エッジ画素の輝度値と、そのエッジ画素の近傍画素の最小輝度値にそれぞれ所定の重み係数を乗じた値を合計した値を動的閾値としてもよい。その場合、各重み係数は、例えば、予め利用者によって情報処理装置２０の入力部２４から入力されるようにする。情報処理装置２０の第２中央処理部２６は、入力された重み係数を、第２インターフェース部２１を介して画像読取装置１０に送信する。一方、画像読取装置１０の第１中央処理部１５は、第１インターフェース部１３を介して重み係数を受信すると、受信した重み係数を第１画像メモリ部１２に記憶し、動的閾値算出部１０２は、第１画像メモリ部１２に記憶された重み係数を用いて動的閾値を算出する。
【００４８】
図６（ａ）、（ｂ）は、異なる動的閾値で生成される二値化画像の違いを説明するための図である。図６（ａ）は、エッジ画素の近傍画素の最小輝度値の重みをエッジ画素の輝度値の重みより大きくしたときの二値化画像６００を表す。この場合、動的閾値はエッジ画素の近傍画素の最小輝度値に近くなり、動的閾値算出部１０２は、その動的閾値を用いて生成される二値化画像６００において文字部分を細くすることができる。一方、図６（ｂ）は、エッジ画素の輝度値の重みをエッジ画素の近傍画素の最小輝度値の重みより大きくしたときの二値化画像６１０を表す。この場合、動的閾値はエッジ画素の輝度値に近くなり、動的閾値算出部１０２は、その動的閾値を用いて生成される二値化画像６１０における文字部分を太くすることができる。
【００４９】
なお、近傍画素は、例えば、注目するエッジ画素を中心とする３×３画素のうちそのエッジ画素を除いた画素とする。あるいは、近傍画素は、注目するエッジ画素を中心とする５×５画素又は７×７画素のうちそのエッジ画素を除いた画素としてもよい。近傍画素の範囲が大きいほど、動的閾値の算出処理の負荷は増大するが、二値化処理で文字部分と背景部分を正しく区別できるようになる。
【００５０】
また、動的閾値算出部１０２は、あるエッジ画素、又はそのエッジ画素の近傍画素が、他のエッジ画素の近傍画素にもなる場合、それぞれのエッジ画素について算出された動的閾値の平均値をその画素の動的閾値とする。
【００５１】
次に、第１ヒストグラム生成部１０３は、各エッジ画素における輝度値のヒストグラム（以下、第１ヒストグラムと称する）を生成する（ステップＳ３０５）。
【００５２】
次に、第２ヒストグラム生成部１０４は、輝度画像において各エッジ画素毎にそのエッジ画素の近傍画素を抽出し、抽出した近傍画素の最小輝度値のヒストグラム（以下、第２ヒストグラムと称する）を生成する（ステップＳ３０６）。
【００５３】
第２ヒストグラム生成部１０４が抽出する近傍画素の範囲は、動的閾値算出部１０２が抽出する近傍画素の範囲と同じとする。あるいは、第２ヒストグラム生成部１０４が抽出する近傍画素の範囲は、動的閾値算出部１０２が抽出する近傍画素の範囲と変えてもよい。
【００５４】
図７は、入力画像の一例である。図７に示す入力画像７００では、単一な輝度で表された背景７０１に文字７０２が示される。
【００５５】
図８は、図７に示す入力画像７００から生成された第１ヒストグラム及び第２ヒストグラムの例を示す図である。図８の横軸は、各エッジ画素又は各エッジ画素の近傍画素の輝度値を示し、縦軸は、各ヒストグラムの分布値（分布数）の最大値が１になるように正規化したヒストグラムの分布率を示す。図８のグラフ８００では、グラフ８０１が第１ヒストグラムであり、グラフ８０２が第２ヒストグラムである。各エッジ画素について生成された第１ヒストグラムは灰色の背景７０１の輝度値と黒色の文字７０２の輝度値の間に分布し、各エッジ画素の近傍画素の最小輝度値について生成された第２ヒストグラムは黒色の文字７０２の輝度値付近に分布する。
【００５６】
図９は、入力画像の他の例である。図９に示す入力画像９００では、輝度がグラデーション変化する背景９０１に黒色文字９０２が示されるとともに、黒色背景９０３、灰色背景９０５に白色文字９０４、９０６が示される。
【００５７】
図１０は、図９に示す入力画像９００から生成された第１ヒストグラム及び第２ヒストグラムの例を示す図である。図１０の横軸は、各エッジ画素又は各エッジ画素の近傍画素の輝度値を示し、縦軸は、各ヒストグラムの分布値（分布数）の最大値が１になるように正規化したヒストグラムの分布率を示す。図１０のグラフ１０００では、グラフ１００１が第１ヒストグラムであり、グラフ１００２が第２ヒストグラムである。入力画像９００において文字の輝度値と背景の輝度値は組合せが多様であるため、グラフ１０００に示される第１ヒストグラム及び第２ヒストグラムは、図８のグラフ８００に示される第１ヒストグラム及び第２ヒストグラムと比較してそれぞれ広範囲に分布する。
【００５８】
次に、静的閾値算出部１０５は、エッジ画素及びそのエッジ画素の近傍画素以外の画素について二値化処理をするための閾値（以下、静的閾値と称する）を算出する（ステップＳ３０７）。
【００５９】
以下、静的閾値の算出について説明する。前述した通り、エッジ画素及びその近傍画素については、エッジ画素及びその近傍画素毎に、エッジ画素の輝度値とその近傍画素の最小輝度値との間に動的閾値を定める。一方、入力画像において、背景部分の輝度が位置により異なる場合、背景部分を適切に二値化するためには、エッジ画素及びその近傍画素以外の画素についても、エッジ部分を形成する画素のうち十分に輝度の低い画素の輝度値とそれらの画素より輝度の高い画素の輝度値との間に静的閾値を定めることが好ましい。そこで、静的閾値算出部１０５は、第１ヒストグラムの分布率が最大となる輝度値Ｘemaxと第２ヒストグラムの分布率が最大となる輝度値Ｘnmaxとの間に静的閾値を定める。
【００６０】
例えば、静的閾値算出部１０５は、第１ヒストグラムの分布率の低輝度側の収束点Ｐe0と第２ヒストグラムの分布率の高輝度側の収束点Ｐn1を求める。静的閾値算出部１０５は、例えば、それ以下の輝度値では第１ヒストグラムの分布率が比率Ｔｈ０以下となる点を収束点Ｐe0とし、それ以上の輝度値では第２ヒストグラムの分布率が比率Ｔｈ０以下となる輝度値の点を収束点Ｐn1とする。この比率Ｔｈ０は、例えば、０．０１とすることができる。そして、図８のグラフ８００のように収束点Ｐe0の輝度値Ｘe0が収束点Ｐn1の輝度値Ｘn1以上である場合、静的閾値算出部１０５は、輝度値Ｘe0と輝度値Ｘn1の平均値ＸTを静的閾値とする。あるいは、この場合、輝度値Ｘe0と輝度値Ｘn1の間の任意の点を静的閾値としてよく、例えば、輝度値Ｘe0と輝度値Ｘn1の重み付き平均値、輝度値Ｘe0又は輝度値Ｘn1のうちの何れかを静的閾値としてもよい。一方、図１０のグラフ１０００のように収束点Ｐe0の輝度値Ｘe0が収束点Ｐn1の輝度値Ｘn1未満である場合、静的閾値算出部１０５は、第１ヒストグラムと第２ヒストグラムの交点の輝度値ＸCを静的閾値とする。あるいは、この場合、輝度値ＸCと第２ヒストグラムの分布率が最大となる輝度値Ｘnmaxの間の任意の点を静的閾値としてよく、例えば、輝度値ＸCと輝度値Ｘnmaxの平均値、輝度値ＸCと輝度値Ｘnmaxの重み付き平均値又は輝度値Ｘnmaxのうちの何れかを静的閾値としてもよい。なお、文字部分は黒色で表される場合が多いため、静的閾値が第２ヒストグラムの分布率の高輝度側の収束点Ｐn1の輝度値に近いほど、二値化処理でより明確に文字部分とそれ以外の部分を区別できるようになる。
【００６１】
動的閾値算出部１０２により動的閾値が求められ、静的閾値算出部１０５により静的閾値が求められると、二値化処理部１０６は、第１画像メモリ部１２から輝度画像を読み出して輝度画像の二値化処理を行い、二値化処理を行った二値化画像を第１画像メモリ部１２に保存する（ステップＳ３０８）。
【００６２】
このとき、二値化処理部１０６は、輝度画像のうち、各エッジ画素及びその近傍画素については対応する動的閾値を用いて二値化処理を行い、エッジ画素及び近傍画素以外の画素については静的閾値を用いて二値化処理を行う。
【００６３】
図１１は、図７に示す入力画像７００を二値化した二値化画像の一例である。図１１は、背景７０１の輝度値と文字７０２の輝度値の間に静的閾値が設定されたときの二値化画像１１００を示す。この場合、二値化処理部１０６は、文字７０２の近傍については動的閾値を用いてエッジ部分を黒に、エッジ部分以外を白に二値化し、文字７０２の近傍以外の部分については静的閾値を用いて全て白に二値化する。
【００６４】
図１２は、図９に示す入力画像９００を二値化した二値化画像の一例である。図１２は、輝度がグラデーション変化する背景９０１のうち最も輝度の低い（黒色に近い）画素の輝度値と黒色文字９０２の輝度値との間に静的閾値が設定された二値化画像１２００を示す。この場合、二値化処理部１０６は、黒色文字９０２の近傍については動的閾値を用いてエッジ部分を黒に、エッジ部分以外を白に二値化し、背景９０１内の黒色文字９０２の周辺以外の部分については静的閾値を用いて全て白に二値化する。また、二値化処理部１０６は、白色文字９０４の近傍については動的閾値を用いてエッジ部分を黒に、エッジ部分以外を白に二値化し、黒色背景９０３内の白色文字９０４の近傍以外の部分については静的閾値を用いて全て黒に二値化する。さらに、二値化処理部１０６は、白色文字９０６の近傍については動的閾値を用いてエッジ部分を黒に、エッジ部分以外を白に二値化し、灰色背景９０５内の白色文字９０６の近傍以外の部分については静的閾値を用いて全て白に二値化する。
【００６５】
このように、二値化処理部１０６は、入力画像９００に輝度値がグラデーション変化する背景９０１、又は、輝度値の異なる複数の背景９０３、９０５が含まれる場合でも、精度よく文字部分のみを抽出することができる。
【００６６】
次に、第１中央処理部１５は、第１画像メモリ部１２に保存された入力画像及び二値化画像を第１インターフェース部１３を介して情報処理装置２０に送信し（ステップＳ３０９）、一連のステップを終了する。
【００６７】
一方、情報処理装置２０の第２中央処理部２６は、第２インターフェース部２１を介して画像読取装置１０から入力画像及び二値化画像を受信すると、受信した入力画像及び二値化画像を関連付けて第２画像メモリ部２２に保存する。そして、第２中央処理部２６は、利用者が目視確認できるように入力画像と二値化画像を関連付けて表示部２３に表示させる。
【００６８】
また、第２中央処理部２６は、二値化画像から文字を読み取り、文字データに変換してもよい。これにより、情報処理装置２０は、二値化画像から高精度に文字データを抽出できる。あるいは、情報処理装置２０の第２インターフェース部２１にＯＣＲ装置をさらに接続し、二値化画像をＯＣＲ装置に送信してもよい。これにより、外部のＯＣＲ装置で文字の読取処理等を実施することができる。
【００６９】
なお、ステップＳ３０５〜Ｓ３０７の第１ヒストグラムの生成処理、第２ヒストグラムの生成処理及び静的閾値の算出処理は、ステップＳ３０４の動的閾値算出処理より前に実施してもよい。また、画像読取装置１０が複数のＣＰＵを備えること等により、並列処理が可能な場合には、ステップＳ３０４の動的閾値算出処理と、ステップＳ３０５〜Ｓ３０７の第１ヒストグラムの生成処理、第２ヒストグラムの生成処理及び静的閾値の算出処理を並列に実施してもよい。
【００７０】
以上詳述したように、図３に示したフローチャートに従って動作することによって、画像読取装置１０は、文字部分と背景部分を精度よく区別できるように二値化閾値を定めることが可能となり、入力画像を高精度に二値化することが可能となった。
【００７１】
図１３は、画像処理部の他の例を示す概略構成図である。図１３に示す画像処理部１７は、図１に示す画像読取装置１０において、画像処理部１６の代りに用いることが可能である。図１３に示す画像処理部１７は、図２に示す画像処理部１６と異なり、動的閾値算出部１０２を有さない。
【００７２】
図１４は、図１３に示す画像処理部１７を用いる画像読取装置１０の二値化処理の動作の例を示すフローチャートである。以下、図１４に示したフローチャートを参照しつつ、二値化処理の動作の他の例を説明する。このフローチャートは、図１に示す画像読取装置１０において、前述した図３に示すフローチャートの代りに実行することが可能である。なお、以下に説明する動作のフローは、予め第１記憶部１４に記憶されているプログラムに基づき主に第１中央処理部１５により画像読取装置１０の各要素と協同して実行される。
【００７３】
図１４に示すフローチャートでは、図３に示すフローチャートと異なり、画像読取装置１０は、ステップＳ３０４の動的閾値の算出処理を実施せず、静的閾値のみを用いて二値化処理を行う。また、図１４に示すステップＳ１４０１〜Ｓ１４０３、Ｓ１４０４〜Ｓ１４０６、Ｓ１４０８の処理は、図３に示すステップＳ３０１〜Ｓ３０３、Ｓ３０５〜Ｓ３０７、Ｓ３０９の処理と同じであるため、説明を省略し、以下では、ステップＳ１４０７の処理についてのみ説明する。
【００７４】
ステップＳ１４０７において、二値化処理部１０６は、輝度画像の全画素に対して、静的閾値を用いて二値化処理を行う。
【００７５】
図９に示す入力画像９００を静的閾値のみを用いて二値化した場合、灰色背景９０５及び白色文字９０６の部分が全て白色になり、白色文字９０６による文字の情報が失われるおそれがある。しかし、図７に示す入力画像７００を静的閾値のみを用いて二値化した場合は、図３のステップＳ３０８のときと同様に、図１１に示す二値化画像１１００を生成することができる。
【００７６】
図１５（ａ）は、入力画像の他の例であり、図１５（ｂ）は、その入力画像について図１４に示すフローチャートに従って二値化した二値化画像である。図１５（ａ）に示す入力画像１５００は、輝度値がグラデーション変化する背景１５０１と、その背景１５０１の輝度値との差の小さい輝度値の文字１５０２から構成される。このような入力画像１５００に対して、静的閾値算出部１０５は、背景１５０１のうち最も輝度の低い（黒色に近い）輝度値と文字１５０２の輝度値との間に静的閾値を定める。これにより、二値化処理部１０６は、その静的閾値のみを用いて文字１５０２を抽出した二値化画像１５１０を生成できる。
【００７７】
図１６（ａ）は、入力画像のさらに他の例であり、図１６（ｂ）は、その入力画像について図１４に示すフローチャートに従って二値化した二値化画像である。図１６（ａ）に示す入力画像１６００は、輝度値の異なる複数の灰色背景１６０１〜１６０３及び黒色文字１６０４、並びに黒色背景１６０５及び白色文字１６０６から構成される。このような入力画像１６００に対して、静的閾値算出部１０５は、灰色背景１６０１〜１６０３のうち最も輝度の低い灰色背景１６０１の輝度値と黒色文字１６０４の輝度値との間に静的閾値を定める。これにより、二値化処理部１０６は、その静的閾値のみを用いて黒色文字１６０４及び白色文字１６０６を抽出した二値化画像１６１０を生成できる。
【００７８】
つまり、輝度画像において背景の輝度値の分布が広範囲にわたらないような場合（特に文字部分が黒色のみで表される場合）には、静的閾値のみを用いて二値化処理を行っても、文字部分と背景部分を適切に区別することができる。この場合、動的閾値の算出処理が不要になるため、処理負荷を低減することができる。
【００７９】
以上詳述したように、図１４に示したフローチャートに従って動作することによって、画像読取装置１０は、処理負荷を低減しつつ、入力画像を高精度に二値化することが可能となった。
【００８０】
図１７は、他の画像処理システム２の概略構成を示す図である。図１７に示す画像処理システム２と、図１に示す画像処理システム１との差異は、画像処理部を備える装置が異なる点である。すなわち、画像処理システム２では、画像読取装置３０ではなく、情報処理装置４０が画像処理部４７を有する。この画像処理部４７は、画像読取装置１０の画像処理部１６又は画像処理部１７と同様の機能を有する。
【００８１】
図１７に示す画像処理システム２では、前述した図３、１４に示す処理とほぼ同様の処理を実行することができる。以下、図３のフローチャートに示される判定処理についてどのように適応されるかを説明する。画像処理システム２では、ステップＳ３０１の処理は、予め第１記憶部３４に記憶されているプログラムに基づき主に第１中央処理部３５により画像読取装置３０の各要素と協同して実行され、ステップＳ３０２〜Ｓ３０８の処理は、予め第２記憶部４５に記憶されているプログラムに基づき主に第２中央処理部４６により情報処理装置４０の各要素と協同して実行される。
【００８２】
ステップＳ３０１において、画像読取装置３０の画像入力部３１が入力画像を生成して第１画像メモリ部３２に保存し、第１中央処理部３５がその入力画像を第１インターフェース部３３を介して情報処理装置４０に送信する。一方、情報処理装置４０の第２中央処理部４６は、第２インターフェース部４１を介して画像読取装置３０から入力画像を受信すると、受信した入力画像を第２画像メモリ部４２に保存する。
【００８３】
ステップＳ３０２〜Ｓ３０８の処理は、情報処理装置４０の画像処理部４７によって実行される。これらの処理の動作は、画像処理システム１について説明した画像読取装置１０の画像処理部１６によって実行される場合と同様である。なお、画像処理システム２では、情報処理装置４０の画像処理部４７において二値化処理が実行されるので、ステップＳ３０９における各画像の送信処理は省略される。
【００８４】
同様に、画像処理システム２に図１４のフローチャートに示される判定処理が適用される場合、ステップＳ１４０１の処理は、予め第１記憶部３４に記憶されているプログラムに基づき主に第１中央処理部３５により画像読取装置３０の各要素と協同して実行され、ステップＳ１４０２〜Ｓ１４０７の処理は、予め第２記憶部４５に記憶されているプログラムに基づき主に第２中央処理部４６により情報処理装置４０の各要素と協同して実行される。ステップＳ１４０１の処理の動作は、ステップＳ３０１の処理の動作と同様の動作となる。また、ステップＳ１４０２〜Ｓ１４０７の処理は情報処理装置４０の画像処理部４７によって実行され、ステップＳ１４０８の処理は省略される。
【００８５】
このように、情報処理装置４０が画像処理部４７を備えて閾値算出処理及び二値化処理を実行する場合も、画像読取装置が画像処理部を備えて閾値算出処理及び二値化処理を実行する場合と同様の効果を得ることができる。
【００８６】
以上、本発明の好適な実施形態について説明してきたが、本発明はこれらの実施形態に限定されるものではない。例えば、画像読取装置と情報処理装置の機能分担は、図１及び図１７に示す画像処理システムの例に限られず、画像処理部内の各部を含めて画像読取装置及び情報処理装置の各部を画像読取装置と情報処理装置の何れに配置するかは適宜変更可能である。あるいは、画像読取装置と情報処理装置を一つの装置で構成してもよい。
【００８７】
また、図１に示す画像処理システム１において、画像読取装置１０の第１インターフェース部１３と、情報処理装置２０の第２インターフェース部２１を直接接続するのではなく、例えばインターネット、電話回線網（携帯端末回線網、一般電話回線網を含む）、イントラネット等のネットワークを介して接続してもよい。その場合、第１インターフェース部１３及び第２インターフェース部２１に、接続するネットワークの通信インターフェース回路を備える。
【００８８】
同様に、図１７に示す画像処理システム２においても、画像読取装置３０の第１インターフェース部３３と、情報処理装置４０の第２インターフェース部４１をネットワークを介して接続してもよい。その場合、クラウドコンピューティングの形態で画像処理のサービスを提供できるように、ネットワーク上に複数の情報処理装置４０を分散して配置し、各情報処理装置４０が協同して、閾値算出処理、二値化処理、画像データの保存等を分担するようにしてもよい。これにより、画像処理システム２は、複数の画像読取装置３０が生成した入力画像について、効率よく二値化処理を実施できる。
【符号の説明】
【００８９】
１、２    画像処理システム
１０、３０    画像読取装置
１１、３１    画像入力部
１２、３２    第１画像メモリ部
１３、３３    第１インターフェース部
１４、３４    第１記憶部
１５、３５    第１中央処理部
１６、１７、４７    画像処理部
２０、４０    情報処理装置
２１、４１    第２インターフェース部
２２、４２    第２画像メモリ部
２３、４３    表示部
２４、４４    入力部
２５、４５    第２記憶部
２６、４６    第２中央処理部
１０１    エッジ画素抽出部
１０２    動的閾値算出部
１０３    第１ヒストグラム生成部
１０４    第２ヒストグラム生成部
１０５    静的閾値算出部
１０６    二値化処理部
【図１】
0005701182.tif 000003
【図２】
0005701182.tif 000004
【図３】
0005701182.tif 000005
【図４】
0005701182.tif 000006
【図５】
0005701182.tif 000007
【図６】
0005701182.tif 000008
【図８】
0005701182.tif 000009
【図１０】
0005701182.tif 000010
【図１１】
0005701182.tif 000011
【図１２】
0005701182.tif 000012
【図１３】
0005701182.tif 000013
【図１４】
0005701182.tif 000014
【図１７】
0005701182.tif 000015
【図７】
0005701182.tif 000016
【図９】
0005701182.tif 000017
【図１５】
0005701182.tif 000018
【図１６】
0005701182.tif 000019