(57)【特許請求の範囲】
【請求項１】
画像に対してストローク幅変換を実行することでＳＷＴ領域を該画像から抽出する第１抽出部であって、該ＳＷＴ領域が、エッジが連続しかつストローク幅が設定の範囲内である領域である、該第１抽出部と、
前記画像に対して画素値に基づくクラスタリングを実行することで単色領域を該画像から抽出する第２抽出部であって、該単色領域が、画素値が設定の範囲内でありかつ連続して存在する複数の画素で構成される領域である、該第２抽出部と、
前記単色領域の画素数に対する、前記ＳＷＴ領域および前記単色領域の重複部分の画素数の割合が第１の基準値以上または該第１の基準値より大きい場合に、少なくとも該単色領域に基づいて、文字領域候補に含まれる画素群を特定する特定部と
を備える画像処理装置。
【請求項２】
前記特定部が、前記割合が第２の基準値未満である場合に、前記ＳＷＴ領域および前記単色領域から文字領域候補を特定しない、
請求項１に記載の画像処理装置。
【請求項３】
前記第１の基準値と前記第２の基準値とが等しく、
前記第２抽出部が複数の前記単色領域を抽出した場合に、前記特定部が、前記ＳＷＴ領域との重複部分の画素数が最大の前記単色領域を選択し、選択された単色領域の画素数に対する、前記ＳＷＴ領域および該選択された単色領域の重複部分の画素数の割合が前記第１の基準値以上である場合には、前記文字領域候補に含まれる画素群を該ＳＷＴ領域および該選択された単色領域に基づいて特定し、該割合が該第１の基準値未満である場合には前記文字領域候補を特定しない、
請求項２に記載の画像処理装置。
【請求項４】
前記第２抽出部が、前記第１抽出部により抽出されたＳＷＴ領域に基づいて前記画像の一部をクラスタリング対象領域として設定し、該クラスタリング対象領域から前記単色領域を抽出する、
請求項１〜３のいずれか一項に記載の画像処理装置。
【請求項５】
前記特定部が、前記ＳＷＴ領域の欠落部分を前記単色領域の画素で補完することで、前記文字領域候補に含まれる画素群を特定する、
請求項１〜４のいずれか一項に記載の画像処理装置。
【請求項６】
前記特定部が、前記ＳＷＴ領域および前記単色領域の論理和を前記文字領域候補に含まれる画素群として特定する、
請求項５に記載の画像処理装置。
【請求項７】
前記特定部が、前記単色領域の画素のうち前記ＳＷＴ領域のエッジの外側に位置する画素を用いることなく、該単色領域の他の画素を用いて前記欠落部分を補完する、
請求項５に記載の画像処理装置。
【請求項８】
前記第１抽出部が第１のエッジ閾値を用いて前記ストローク幅変換を実行し、
前記特定部が、
前記単色領域のうち前記ＳＷＴ領域と重複しない領域に対して、前記第１のエッジ閾値よりも低い第２のエッジ閾値を用いてストローク幅変換を実行することで追加のエッジを探索し、該追加のエッジを用いて該ＳＷＴ領域を拡張し、
前記単色領域の画素のうち拡張後のＳＷＴ領域のエッジの外側に位置する画素を用いることなく、該単色領域の他の画素を用いて該拡張後のＳＷＴ領域の欠落部分を補完する、
請求項７に記載の画像処理装置。
【請求項９】
前記第２抽出部が、カラー・クラスタリングを実行することで前記単色領域を抽出する、
請求項１〜８のいずれか一項に記載の画像処理装置。
【請求項１０】
プロセッサを備えた画像処理装置により実行される画像処理方法であって、
画像に対してストローク幅変換を実行することでＳＷＴ領域を該画像から抽出する第１抽出ステップであって、該ＳＷＴ領域が、エッジが連続しかつストローク幅が設定の範囲内である領域である、該第１抽出ステップと、
前記画像に対して画素値に基づくクラスタリングを実行することで単色領域を該画像から抽出する第２抽出ステップであって、該単色領域が、画素値が設定の範囲内でありかつ連続して存在する複数の画素で構成される領域である、該第２抽出ステップと、
前記単色領域の画素数に対する、前記ＳＷＴ領域および前記単色領域の重複部分の画素数の割合が第１の基準値以上または該第１の基準値より大きい場合に、少なくとも該単色領域に基づいて、文字領域候補に含まれる画素群を特定する特定ステップと
を含む画像処理方法。
【請求項１１】
画像に対してストローク幅変換を実行することでＳＷＴ領域を該画像から抽出する第１抽出部であって、該ＳＷＴ領域が、エッジが連続しかつストローク幅が設定の範囲内である領域である、該第１抽出部と、
前記画像に対して画素値に基づくクラスタリングを実行することで単色領域を該画像から抽出する第２抽出部であって、該単色領域が、画素値が設定の範囲内でありかつ連続して存在する複数の画素で構成される領域である、該第２抽出部と、
前記単色領域の画素数に対する、前記ＳＷＴ領域および前記単色領域の重複部分の画素数の割合が第１の基準値以上または該第１の基準値より大きい場合に、少なくとも該単色領域に基づいて、文字領域候補に含まれる画素群を特定する特定部と
してコンピュータを機能させるための画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の一側面は、画像処理装置、画像処理方法、および画像処理プログラムに関する。
【背景技術】
【０００２】
画像から文字領域を抽出するための従来技術として、エッジ間の幅、すなわちストローク幅が一定の領域を文字領域候補として抽出するストローク幅変換（Ｓｔｒｏｋｅ  Ｗｉｄｔｈ  Ｔｒａｎｓｆｏｒｍ（ＳＷＴ））がある（下記非特許文献１参照）。また、エッジを辿って、安定的な閉曲線で囲まれる領域を特定する最大安定極値領域（Ｍａｘｉｍａｌｌｙ  Ｓｔａｂｌｅ  Ｅｘｔｅｒｍａｌ  Ｒｅｇｉｏｎｓ（ＭＳＥＲ））をＳＷＴと組み合わせる手法もある。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】B. Epshtein, E. Ofek and Y. Wexler, “Detecting Text in NaturalScenes with Stroke Width Transform,” IEEE Conference on Computer Vision andPattern Recognition, 2010, pp. 1-8.
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、ＳＷＴおよびＭＳＥＲのような、エッジに基づいて文字領域候補を抽出する技術では、最初のエッジ検出に失敗すると文字領域の抽出の精度が低下してしまう。例えば、文字領域の背景に複数の色が含まれていて文字領域と背景領域との間のエッジが弱い部分があると、ＳＷＴおよびＭＳＥＲの双方を用いてもその弱いエッジを検出できず、結果として文字領域を抽出できないおそれがある。そこで、より確実に画像から文字領域を抽出することが望まれている。
【課題を解決するための手段】
【０００５】
本発明の一側面に係る画像処理装置は、画像に対してストローク幅変換を実行することでＳＷＴ領域を該画像から抽出する第１抽出部であって、該ＳＷＴ領域が、エッジが連続しかつストローク幅が設定の範囲内である領域である、該第１抽出部と、画像に対して画素値に基づくクラスタリングを実行することで単色領域を該画像から抽出する第２抽出部であって、該単色領域が、画素値が設定の範囲内でありかつ連続して存在する複数の画素で構成される領域である、該第２抽出部と、単色領域の画素数に対する、ＳＷＴ領域および単色領域の重複部分の画素数の割合が第１の基準値以上または該第１の基準値より大きい場合に、少なくとも該単色領域に基づいて、文字領域候補に含まれる画素群を特定する特定部とを備える。
【０００６】
本発明の一側面に係る画像処理方法は、プロセッサを備えた画像処理装置により実行される画像処理方法であって、画像に対してストローク幅変換を実行することでＳＷＴ領域を該画像から抽出する第１抽出ステップであって、該ＳＷＴ領域が、エッジが連続しかつストローク幅が設定の範囲内である領域である、該第１抽出ステップと、画像に対して画素値に基づくクラスタリングを実行することで単色領域を該画像から抽出する第２抽出ステップであって、該単色領域が、画素値が設定の範囲内でありかつ連続して存在する複数の画素で構成される領域である、該第２抽出ステップと、単色領域の画素数に対する、ＳＷＴ領域および単色領域の重複部分の画素数の割合が第１の基準値以上または該第１の基準値より大きい場合に、少なくとも該単色領域に基づいて、文字領域候補に含まれる画素群を特定する特定ステップとを含む。
【０００７】
本発明の一側面に係る画像処理プログラムは、画像に対してストローク幅変換を実行することでＳＷＴ領域を該画像から抽出する第１抽出部であって、該ＳＷＴ領域が、エッジが連続しかつストローク幅が設定の範囲内である領域である、該第１抽出部と、画像に対して画素値に基づくクラスタリングを実行することで単色領域を該画像から抽出する第２抽出部であって、該単色領域が、画素値が設定の範囲内でありかつ連続して存在する複数の画素で構成される領域である、該第２抽出部と、単色領域の画素数に対する、ＳＷＴ領域および単色領域の重複部分の画素数の割合が第１の基準値以上または該第１の基準値より大きい場合に、少なくとも該単色領域に基づいて、文字領域候補に含まれる画素群を特定する特定部としてコンピュータを機能させる。
【０００８】
このような側面においては、ＳＷＴによるＳＷＴ領域の抽出だけでなく、そのＳＷＴとは独立に、画素値に基づくクラスタリングによる単色領域の抽出も実行される。そして、ＳＷＴ領域および単色領域の重複部分が単色領域に対して一定以上の割合を示す場合に、文字領域候補に含まれる画素群が特定される。このように、エッジではなく画素値に基づく手法をＳＷＴと併用して、これら二つの手法から得られた２種類の領域を利用することで、エッジに基づく手法の短所を補って、より確実に画像から文字領域を抽出することが可能になる。
【発明の効果】
【０００９】
本発明の一側面によれば、より確実に画像から文字領域を抽出することができる。
【図面の簡単な説明】
【００１０】
【図１】実施形態における文字領域候補の抽出の概念を示す図である。
【図２】実施形態に係る画像処理装置のハードウェア構成を示す図である。
【図３】実施形態に係る画像処理装置の機能構成を示すブロック図である。
【図４】ストローク幅変換（ＳＷＴ）を説明するための図である。
【図５】ＳＷＴ領域を抽出する例を示す図である。
【図６】（ａ），（ｂ）は、クラスタリング対象領域を設定する例を示す図である。
【図７】単色領域を抽出する例を示す図である。
【図８】ＳＷＴ領域と単色領域との重複の一例を示す図である。
【図９】ＳＷＴ領域と単色領域との重複の別の例を示す図である。
【図１０】ＳＷＴ領域と単色領域との重複の別の例を示す図である。
【図１１】ＳＷＴ領域と単色領域との重複の別の例を示す図である。
【図１２】ＳＷＴ領域を補完する一例を示す図である。
【図１３】ＳＷＴ領域を補完する別の例を示す図である。
【図１４】ＳＷＴ領域を補完する別の例を示す図である。
【図１５】実施形態に係る画像処理装置の動作を示すフローチャートである。
【図１６】文字領域候補の画素群を特定する処理を示すフローチャートである。
【図１７】実施形態に係る画像処理プログラムの構成を示す図である。
【図１８】実施形態に係る画像処理の効果を説明する図である。
【発明を実施するための形態】
【００１１】
以下、添付図面を参照しながら本発明の実施形態を詳細に説明する。なお、図面の説明において同一又は同等の要素には同一の符号を付し、重複する説明を省略する。
【００１２】
図１〜１４を用いて、実施形態に係る画像処理装置１０の機能及び構成を説明する。画像処理装置１０は、画像データから文字領域候補を抽出するコンピュータ・システムである。
【００１３】
本明細書における「画像」とは、人の視覚で捉えることができるように対象物を媒体に定着させた像である。また、「画像データ」とは、コンピュータでの処理が可能な、画像を示すデータである。したがって、本明細書における画像は、メモリなどの記憶装置に記録され、プロセッサの処理によりモニタなどの出力装置に出力されることで、視認可能となる。画像は静止画でもよいし、動画を構成する個々のフレームでもよい。静止画の例としては写真や絵画などがあり、動画の例としてはビデオ映像やアニメーションなどがあるが、画像の種類はこれらに限定されない。画像はカメラやスキャナなどの電子機器により得られたものでもよいし、コンピュータ・グラフィックスにより作成されたものでもよい。
【００１４】
本明細書における「文字領域候補」とは、画像中において文字が表されていると推定される領域である。本明細書における「文字」は、任意の形状のマークや絵なども含む概念である。
【００１５】
画像処理装置１０の処理結果は、それに続く様々な処理に用いることができる。例えば、多数の種類の商品を取り扱う仮想商店街で用いられている大量の商品画像データの判定にその処理結果を適用することができる。一般に、仮想商店街で用いられる商品画像の中には、商品そのもののみが写っている画像（商品写真）と、商品写真に文字が重畳された画像との双方が存在する。商品写真内に描画される文字の例としては、「送料無料」などの宣伝文句や、価格、店名などが挙げられる。文字は、画像編集ソフトにより挿入されていてもよいし、主たる被写体とともに撮影されていてもよい。仮想商店街の管理者としては、文字が描画または撮影されている画像（文字有り画像（ｔｅｘｔ  ｉｍａｇｅ））を排除して、文字が描画も撮影もされていない画像（文字無し画像（ｎｏｎ−ｔｅｘｔ  ｉｍａｇｅ））だけを使いたい場合がある。例えば、管理者は、一つの商品についての各仮想店舗での販売価格をＷｅｂページ上で見せたい場合に、その商品の代表画像として、文字無し画像（例えば、商品そのもののみを写した画像）を使いたい場合がある。
【００１６】
このような要求に応える前提として、確実に文字領域候補を画像データから抽出することが望まれる。図１は、そのような高精度の抽出を実現するための本実施形態の概念を示す図である。画像処理装置１０は一つの画像データに対してストローク幅変換（Ｓｔｒｏｋｅ  Ｗｉｄｔｈ  Ｔｒａｎｓｆｏｒｍ（ＳＷＴ））を実行することで、その画像データから１以上のＳＷＴ領域を抽出する。また、画像処理装置１０は、その画像データに対して画素値に基づくクラスタリングを実行することで該画像データから１以上の単色領域を抽出する。画像処理装置１０は、このように二つの手法を独立に適用することで得たＳＷＴ領域および単色領域に基づいて最終的な文字領域候補を抽出する。ＳＷＴ領域および単色領域の詳細は後で述べるが、この２種類の領域は、最終的な文字領域候補の画素群を特定するために用いられる。
【００１７】
画像処理装置１０の一般的なハードウェア構成を図２に示す。画像処理装置１０は、オペレーティングシステムやアプリケーション・プログラムなどを実行するＣＰＵ（プロセッサ）１０１と、ＲＯＭおよびＲＡＭで構成される主記憶部１０２と、ハードディスクやフラッシュメモリなどで構成される補助記憶部１０３と、ネットワークカードあるいは無線通信モジュールで構成される通信制御部１０４と、キーボードやマウスなどの入力装置１０５と、ディスプレイやプリンタなどの出力装置１０６とを備える。
【００１８】
後述する画像処理装置１０の各機能要素は、ＣＰＵ１０１または主記憶部１０２の上に所定のソフトウェアを読み込ませ、ＣＰＵ１０１の制御の下で通信制御部１０４や入力装置１０５、出力装置１０６などを動作させ、主記憶部１０２または補助記憶部１０３におけるデータの読み出しおよび書き込みを行うことで実現される。処理に必要なデータやデータベースは主記憶部１０２または補助記憶部１０３内に格納される。
【００１９】
なお、画像処理装置１０は１台のコンピュータで構成されていてもよいし、複数台のコンピュータで構成されていてもよい。複数台のコンピュータを用いる場合には、これらのコンピュータはインターネットやイントラネットなどの通信ネットワークを介して接続される。
【００２０】
図３に示すように、画像処理装置１０は機能的構成要素として受付部１１、第１抽出部１２、第２抽出部１３、および特定部１４を備える。
【００２１】
受付部１１は、文字領域候補を特定する対象となる画像データを受け付ける機能要素である。画像データの取得方法は限定されず、例えば、受付部１１はユーザ操作により入力された画像データを受け付けてもよいし、他の情報処理装置から通信ネットワークを介して送られてきた画像データを受信してもよい。受付部１１は画像データを第１抽出部１２に出力する。
【００２２】
第１抽出部１２は、画像データに対してＳＷＴを実行することでその画像データからＳＷＴ領域を抽出する機能要素である。ＳＷＴそのものは上記非特許文献１に記載されているように周知技術であり、文字のストローク幅が一般的には当該文字内でほぼ一定であるという観察に基づく手法である。なお、本明細書における「ストローク幅」とは、文字を構成する線の幅（線幅）である。
【００２３】
第１抽出部１２は、入力された画像をグレースケールで示された画像（モノクロ画像）に変換し、文字領域と他の領域（背景領域）との境界であるエッジをキャニー法（Ｃａｎｎｙ  ｍｅｔｈｏｄ）により推定して、エッジのペアを見つける。まず、第１抽出部１２は予め設定されたエッジ閾値Ｔａを用いて個々のエッジを特定する。続いて、第１抽出部１２は、ある一つのエッジの画素を起点として、その画素の勾配方向（ｇｒａｄｉｅｎｔ  ｄｉｒｅｃｔｉｏｎ）を含む所定の範囲（例えば勾配方向±π／６）において探索を行うことで、起点と同じエッジ強度を持ちかつエッジの向きが起点とは逆である反対側のエッジの画素を見つける。続いて、第１抽出部１２はそれら２個の画素と、探索での走査線に沿って当該２個の画素の間に存在する１以上の画素とのそれぞれに対してストローク幅を記録する。第１抽出部１２は、エッジを構成するすべての画素についてその一連の処理を実行することで、それらの画素にストローク幅を記録する。なお、複数の走査線がある一つのエッジを通るためにそのエッジに複数種類のストローク幅が記録され得る場合には、第１抽出部１２はそのエッジに対してストローク幅の最小値を記録する。
【００２４】
図４はストローク幅を記録する例を示す。この図では、エッジとして特定された画素をハッチングを用いて表している。この例では、第１抽出部１２はエッジの画素ｂｐを起点として走査線Ａに沿って探索することで反対側のエッジの画素ｂｑを見つけ、ペアのエッジ画素ｂｐ，ｂｑと、走査線Ａ上に沿ってそのペアの間に位置する３個のエッジとにストローク幅「５」を記録している。
【００２５】
画像データ内の少なくとも一部の画素にストローク幅を記録すると、第１抽出部１２は、エッジが連続しかつストローク幅が設定の範囲内である領域をＳＷＴ領域として抽出する。ＳＷＴ領域とは、勾配方向が互いに逆向きであるエッジ間の距離であるストローク幅が設定の範囲内である連続した領域である。「ストローク幅が設定の範囲内である」とは、ストローク幅がほぼ一定であることを意味し、この条件を満たすか否かを判定するための「設定の範囲」は任意に定めてよい。用語「設定の範囲」における「設定」のタイミング、すなわち、範囲が設定される時期は限定されず、その範囲はＳＷＴ領域を抽出する処理の前に予め定められていてもよいし、その処理中に設定されてもよい。例えば、第１抽出部１２は、エッジが連続し、かつストローク幅の誤差が−２〜＋２の範囲内である領域をＳＷＴ領域として抽出してもよい。第１抽出部１２は１以上のＳＷＴ領域を抽出し得る。
【００２６】
図５は、画像Ｇ（画像データ）から抽出された複数のＳＷＴ領域ｅ１〜ｅ６の例を示す。この例では、ＳＷＴ領域ｅ１，ｅ２は、ヒトが文字であると認識する部分「ｂｄ」「Ｄ」をほぼ忠実に表している。その一方で、ＳＷＴ領域ｅ３のように、ヒトが文字であると認識する部分「ｙ」に対応してはいるものの、ストローク幅の条件を満たさない部分が欠落したＳＷＴ領域が抽出される場合もある。ＳＷＴ領域ｅ３では文字「ｙ」におけるストロークの連結部分が欠けているが、これはＳＷＴの一つの傾向である。また、図５には示さないが、ＳＷＴの他の傾向として、角の部分（例えば「Ｌ」という文字における角の部分）が欠けてしまう点も挙げられる。このように連結部分や角が欠落するのは、これらの部分においてストローク幅が一定の範囲内に収まらなくなるからである。さらに、これも図５には示さないが、文字と背景とで画素値が近いために一部のエッジを特定できず、本来は１文字に対応する部分が２以上のＳＷＴ領域に分離されて検出される場合もある。また、ＳＷＴ領域ｅ４〜ｅ６にように、ヒトが背景であると認識する部分がＳＷＴ領域として抽出される場合もある。例えば、エッジ間の距離がほぼ一定である領域が一つの文字内に（例えばＳＷＴ領域ｅ４）または二つの文字の間に（例えばＳＷＴ領域ｅ５，ｅ６）存在すると、その領域がストロークと判定され得る。
【００２７】
このように、第１抽出部１２により抽出されるＳＷＴ領域が常に正確であるとはいえないが、いずれにしても、第１抽出部１２は１以上のＳＷＴ領域を抽出すると、各ＳＷＴ領域のそれぞれについてのコンポーネントデータを生成する。一つのＳＷＴ領域を示すコンポーネントデータは以下のデータ項目を含む。
・ＳＷＴ領域の外接矩形の基準座標（Ｘｅ，Ｙｅ）
・外接矩形の幅Ｗｅ
・外接矩形の高さＨｅ
・ＳＷＴ領域に含まれる各画素ｐｅｉの座標およびストローク幅（ｘｅｉ，ｙｅｉ，ｗｉ）
例えば、ＳＷＴ領域が２０個の画素ｐｅ１〜ｐｅ２０で構成される場合には、コンポーネントデータは（ｘｅ１，ｙｅ１，ｗ１），（ｘｅ２，ｙｅ２，ｗ２），…，（ｘｅ２０，ｙｅ２０，ｗ２０）を含む。
【００２８】
図５では、各ＳＷＴ領域の外接矩形を一点鎖線で示している。ＳＷＴ領域の外接矩形の基準座標として、例えばその外接矩形の左上の頂点の座標が設定されるが、外接矩形の位置を特定できるのであれば他の座標を基準座標に設定してもよい。
【００２９】
上述したように、一つのＳＷＴ領域におけるストローク幅には一定の範囲が設定され得るので、一つのＳＷＴ領域のコンポーネントデータにおいてストローク幅ｗｉがすべて同じとは限らない。
【００３０】
第１抽出部１２は、１以上のＳＷＴ領域のコンポーネントデータを画像データとともに第２抽出部１３に出力する。
【００３１】
第２抽出部１３は、画像データに対して画素値に基づくクラスタリングを実行することでその画像データから単色領域を抽出する機能要素である。単色領域とは、画素値が設定の範囲内でありかつ連続して存在する複数の画素で示される領域である。画素値が設定の範囲である一の画素に隣接する画素（隣接する方向は縦でも横でも斜めでもよい）の画素値もその設定の範囲内であれば、これらの２画素は連続して存在するとみなされる。画素値に基づくクラスタリングにおいても、用語「設定の範囲」における「設定」のタイミング、すなわち、範囲が設定される時期は限定されず、その範囲は単色領域を抽出する処理の前に予め定められていてもよいし、その処理中に設定されてもよい。
【００３２】
まず、第２抽出部１３は、第１抽出部１２から入力されたＳＷＴ領域のコンポーネントデータを参照して、画素値に基づくクラスタリングを実行する対象となる１以上の領域をクラスタリング対象領域として決定する。第２抽出部１３はすべてのＳＷＴ領域がいずれかのクラスタリング対象領域に含まれるように個々のクラスタリング対象領域を決定する。例えば、第２抽出部１３は各クラスタリング対象領域が少なくとも、一つのＳＷＴ領域と該ＳＷＴ領域のマージンとを加えた領域を含むように個々のクラスタリング対象領域を決定してもよい。マージンの大きさは任意に定めてよく、例えば、ＳＷＴ領域の外接矩形と、その外接矩形の高さおよび幅の２５％の領域とがマージンとして設定されてもよい。
【００３３】
図６は、クラスタリング対象領域の例を示す図である。図６（ａ）は、図５に示すＳＷＴ領域ｅ１〜ｅ６のすべてと各ＳＷＴ領域のマージンとを含むクラスタリング対象領域Ｒ１を示す。図６（ｂ）は、ＳＷＴ領域ｅ１，ｅ２，ｅ４〜ｅ６とこれら５個のＳＷＴ領域領域のマージンとを含むクラスタリング対象領域Ｒ２ａと、ＳＷＴ領域ｅ３およびそのマージンを含むクラスタリング対象領域Ｒ２ｂを示す。このように、クラスタリング対象領域の設定方法は一つに限定されないが、いずれにしても、クラスタリング対象領域の総和は入力された画像の一部である。
【００３４】
画素値に基づくクラスタリングは、文字列または個々の文字が一般的には同一色で描画されるという観察に基づく手法である。画素値に基づくクラスタリングの例として、３次元色空間における色を用いるカラー・クラスタリング（ｃｏｌｏｒ  ｃｌｕｓｔｅｒｉｎｇ）と、１次元色空間（グレースケール）を用いるグレー・クラスタリング（ｇｒａｙ  ｃｌｕｓｔｅｒｉｎｇ）が挙げられる。グレー・クラスタリングを用いるのであれば、第２抽出部１３はそのクラスタリングを実行する前に、入力された画像をグレースケールで示された画像（モノクロ画像）に変換する。
【００３５】
第２抽出部１３は色数（色に関する情報量）を削減した上で画素値に基づくクラスタリングを実行する。例えば、第２抽出部１３はｋ−平均法（ｋ−ｍｅａｎｓ  ｍｅｔｈｏｄ）を用いたクラスタリングを実行してもよい。この手法では、第２抽出部１３は、クラスタリングのためにｋ−平均法を用いてカラー数を削減した上でクラスタリングを実行し、そのクラスタリングの後に各カラー・クラスタ（ｃｏｌｏｒ  ｃｌｕｓｔｅｒ）に対してトポロジ解析に基づく領域分割を行う。第２抽出部１３はこの処理により、色がほぼ同じであり且つ連続して存在する複数の画素を一つの単色領域として特定する。
【００３６】
あるいは、第２抽出部１３は下記参考文献１に記載されたクラスタリングの手法を用いてもよい。参考文献１の手法では、第２抽出部１３は、情報量を削減した色空間に基づいて作成した色値のヒストグラムの各ビン（色クラスタ）の中央値を求め、似た色のクラスタ同士を統合することで、複数の代表クラスタ（ｒｅｐｒｅｓｅｎｔａｔｉｖｅ  ｃｌｕｓｔｅｒ）を生成する。そして、第２抽出部１３は、二値画像処理の基本的な技術である結合性解析（ｃｏｎｎｅｃｔｉｖｉｔｙ  ａｎａｌｙｓｉｓ）を用いて、同じ代表クラスタに対応しかつ連続して存在する複数の画素を一つの単色領域として特定する。
（参考文献１）仙田修司，美濃導彦，池田克夫、“文字列の単色性に着目したカラー画像からの文字パタン抽出法”、電子情報通信学会技術研究報告．ＰＲＵ，パターン認識・理解  ９４（２４２），１７−２４，１９９４年９月２２日
【００３７】
このように、画素値に基づくクラスタリングの具体的な手法は限定されず、第２抽出部１３は任意の手法によりクラスタリング対象領域から単色領域を抽出してよい。一つの単色領域に対応する色クラスタは一つであるが、一つの色クラスタは複数の画素値を含み得るので、一つの単色領域を構成する個々の画素値が必ずしもすべて同じになるわけではないことに留意されたい。
【００３８】
図７は、画像Ｇ（画像データ）から抽出された複数の単色領域ｃ１〜ｃ７の例を示す。この例では、単色領域ｃ１は画像Ｇの背景の全体を示しているが、当然ながら、クラスタの設定によっては、背景部分は複数の単色領域に分割され得る。単色領域ｃ２〜ｃ４はそれぞれ文字「ｂｄ」「Ｄ」「ｙ」に対応している。その一方で、単色領域ｃ５〜ｃ７のように、ヒトが背景であると認識する部分が単色領域として抽出される場合もある。
【００３９】
このように、第２抽出部１３により抽出される単色領域が常に正確であるとはいえないが、いずれにしても、第２抽出部１３は１以上の単色領域を抽出すると、各単色領域のそれぞれについてのコンポーネントデータを生成する。一つの単色領域を示すコンポーネントデータは以下のデータ項目を含む。
・単色領域の外接矩形の基準座標（Ｘｃ，Ｙｃ）
・外接矩形の幅Ｗｃ
・外接矩形の高さＨｃ
・単色領域に含まれる各画素ｐｃｉの座標および色番号（ｘｃｉ，ｙｃｉ，ｃｉ）
例えば、単色領域が２０個の画素ｐｃ１〜ｐｃ２０で構成される場合には、コンポーネントデータは（ｘｃ１，ｙｃ１，ｃ１），（ｘｃ２，ｙｃ２，ｃ２），…，（ｘｃ２０，ｙｃ２０，ｃ２０）を含む。
【００４０】
図７では、各単色領域の外接矩形を一点鎖線で示している。ＳＷＴ領域の場合と同様に、外接矩形の基準座標をどこに設定するかは限定されない。
【００４１】
色番号はクラスタの色（代表的な色）を示す数値であり、画素の元々の色を示す画素値とは異なる。一つの単色領域のコンポーネントデータにおける画素ｐｃｉの色番号はすべて同じである。
【００４２】
第２抽出部１３は、１以上の単色領域のコンポーネントデータをＳＷＴ領域のコンポーネントデータとともに特定部１４に出力する。
【００４３】
特定部１４は、ＳＷＴ領域および単色領域のコンポーネントデータを参照して、文字領域候補に含まれる画素群を特定する機能要素である。本明細書における「画素群」とは、１以上の画素の集合である。
【００４４】
特定部１４が各ＳＷＴ領域に対して実行する処理を説明する。まず、特定部１４は処理対象の一つのＳＷＴ領域の外接矩形と、入力された個々の単色領域の外接矩形とを比較して、外接矩形の少なくとも一部がＳＷＴ領域の外接矩形と重なる単色領域を選択する。図５，７の例を参照すると、現在の処理対象がＳＷＴ領域ｅ２であれば、外接矩形がＳＷＴ領域ｅ２と重なり合うものは単色領域ｃ１，ｃ３，ｃ７であり、第２抽出部１３はこれら３個の単色領域のみを選択する。図８に示すＳＷＴ領域ｅ２と単色領域ｃ４との関係のように、外接矩形同士の重なりが生じない他の単色領域はこの時点で除外される。
【００４５】
もし、外接矩形同士が重なる単色領域が一つも存在しない場合には、特定部１４は現在のＳＷＴ領域を廃棄して次のＳＷＴ領域についての処理に移る。ＳＷＴ領域が廃棄されるということは、そのＳＷＴ領域に基づいて文字領域候補が特定されないことを意味する。
【００４６】
一方、１以上の単色領域を選択できた場合には、特定部１４は選択した単色領域のそれぞれについて処理対象のＳＷＴ領域との重複部分の画素数Ａｉを求めてその値Ａｉの降順にその単色領域を並べる。続いて、特定部１４は、重複部分の画素数Ａｉが最大の単色領域をその並べ替えにより特定し、該単色領域に含まれる画素数Ａｃを求め、値Ａｃに対する画素数Ａｉの割合Ｒが基準値Ｒｔ以上であるか否かを調べる。ここで、あるＳＷＴ領域とある単色領域との「重複部分」とは、そのＳＷＴ領域および単色領域の双方に含まれる部分のことをいう。「重複」とは、ある画素がそのＳＷＴ領域の構成要素であると共にその単色領域の構成要素でもあるという状況を意味する。
【００４７】
この基準値Ｒｔは、画像の背景内で抽出されてしまったＳＷＴ領域を廃棄して、ＳＷＴ領域と形状および大きさが近い単色領域を特定することを目的に設定される。基準値Ｒｔは例えば０．８と設定してもよいし、０．７と設定してもよいし、その目的に適う他の値に設定してもよい。なお、特定部１４は割合Ｒが基準値Ｒｔより大きいか否かを判定してもよい。特定部１４は、割合Ｒと基準値Ｒｔとの大小関係を比較する際に「以上」「以下」「未満」「よりも大きい」のいずれを用いてもよい。
【００４８】
図９の例では背景内にＳＷＴ領域ｅ５が存在し、このＳＷＴ領域ｅ５は文字領域候補として処理されるべきではない。本実施形態では、背景に相当する単色領域ｃ１がそのＳＷＴ領域ｅ５に比べて非常に大きいので、仮にＳＷＴ領域ｅ５の全体が単色領域ｃ１と重なったとしても、Ａｉ／Ａｃは非常に低い値になって基準値Ｒｔを下回る。この場合、特定部１４はこの時点でＳＷＴ領域ｅ５に対する処理を終了するが、このことは、特定部１４がＳＷＴ領域ｅ５を廃棄してそのＳＷＴ領域ｅ５から文字領域候補を特定しないことを意味する。
【００４９】
これに対して、図１０の例では単色領域ｃ４はＳＷＴ領域ｅ３とほぼ同じ大きさであり、それら２領域は多くの部分で重なるので、Ａｉ／Ａｃは大きい値をとり基準値Ｒｔ以上になり得る。実際にＡｉ／Ａｃ≧Ｒｔであれば、特定部１４はＳＷＴ領域ｅ３を文字領域候補として残す。
【００５０】
重複部分の画素数Ａｉが最大の単色領域に関してＲ＝Ａｉ／Ａｃ≧Ｒｔが成立すれば、特定部１４は現在のＳＷＴ領域を文字領域候補として残し、そのＳＷＴ領域において欠落していると推定される部分の画素を単色領域の画素を用いて埋める。このようにＳＷＴ領域の欠落を埋める処理は、画素値が空値（ｎｕｌｌ）である部分を単色領域の画素値で更新することを意味する。本明細書ではこのように画素を埋める処理を「補完」ともいう。図１０の例では、特定部１４は、ＳＷＴ領域ｅ３では欠けているストロークの連結部分および一部の縁を単色領域ｃ４の画素で補完する。この補完により、文字領域候補に含まれる画素群が特定される。なお、ＳＷＴ領域が完全にまたはほぼ完全に文字領域を表す場合には、単色領域の画素による補完が実際には為されないことがあり得るが、この場合でも、特定部１４は文字領域候補に含まれる画素群を特定したといえる。
【００５１】
選択された単色領域が複数存在する場合には、特定部１４はその補完を終えると、他の単色領域についても同様の処理を実行する。すなわち、特定部１４は、他の単色領域についてもＲ＝Ａｉ／Ａｃ≧Ｒｔが成立するか否かを判定し、その条件を満たす場合には、該単色領域の画素を用いてＳＷＴ領域をさらに補完する。画像データの解像度などの影響により、ＳＷＴでは複数の文字が一つのＳＷＴ領域に含まれる一方で、画素値に基づくクラスタリングでは文字毎に単色領域が得られる場合が生じ得る。図１１は、「ｖｅｌ」という文字列に対して、一つのＳＷＴ領域ｅ１０と３個の単色領域ｃ１１，ｃ１２，ｃ１３とが得られた例を示す。この例において、特定部１４が３個の単色領域を重複部分の画素数Ａｉの降順に単色領域ｃ１３，単色領域ｃ１２，単色領域ｃ１１と並べたとすると、特定部１４はまず単色領域ｃ１３についてＲ＝Ａｉ／Ａｃ≧Ｒｔが成立するか否かを判定し、その条件が成立すればＳＷＴ領域ｅ１０を単色領域ｃ１３の画素で補完する。さらに、特定部１４は単色領域ｃ１１についてＲ＝Ａｉ／Ａｃ≧Ｒｔが成立すればＳＷＴ領域ｅ１０を単色領域ｃ１１の画素で補完し、単色領域ｃ１２についてＲ＝Ａｉ／Ａｃ≧Ｒｔが成立すればＳＷＴ領域ｅ１０を単色領域ｃ１２の画素で補完する。
【００５２】
一方、重複部分の画素数Ａｉが最大の単色領域に関してＲ＝Ａｉ／Ａｃ＜Ｒｔであれば、特定部１４は更なる処理を実行することなく現在のＳＷＴ領域を廃棄して、次のＳＷＴ領域についての処理に移る。一つのＳＷＴ領域と重複する複数の単色領域が抽出された場合に、重複部分の画素数が最大の単色領域について上記の割合が基準値未満であれば、その単色領域は背景領域であると考えられる。したがって、特定部１４はそのＳＷＴ領域が文字ではなく背景の一部であると推定して、他の単色領域について処理することなくそのＳＷＴ領域の処理を終えることができる。このように、重複部分の画素数が最大の単色領域についてまず最初に判断することで、無駄な処理を省くことができる。
【００５３】
特定部１４は入力されたＳＷＴ領域のすべてについて以上の処理を実行する。その結果、入力されたＳＷＴ領域は、文字領域候補として特定されたものと廃棄されたものとに分かれる。文字領域候補として特定されたＳＷＴ領域の中には、単色領域の画素を用いて補完されたものが存在し得る。特定部１４は、Ｒ＝Ａｉ／Ａｃ≧Ｒｔの条件を満たし、かつ必要に応じて画素が補完されたＳＷＴ領域を最終的な文字領域候補として出力する。なお、文字領域候補の出力方法は限定されない。例えば特定部１４はその文字領域候補に関する情報をモニタ上に表示してもよいし、プリンタに出力してもよいし、任意のデータベースに格納してもよいし、通信ネットワークを介して他の情報処理装置に送信してもよい。
【００５４】
ところで、補完の具体的な方法はいくつか考えられる。一例として、特定部１４はＳＷＴ領域および単色領域の単純な論理和を計算することでその補完を行ってもよい。この論理和による補完は、ＳＷＴ領域または単色領域の少なくとも一方に属する画素の集合を文字領域候補として設定する処理である。あるいは、特定部１４は単色領域そのものを文字領域候補として設定することで、ＳＷＴ領域を用いることなく、単色領域を構成する画素群を文字領域候補に含まれる画素群として特定してもよい。
【００５５】
あるいは、特定部１４は単色領域の画素のうち、ＳＷＴ領域のエッジより外側に位置する画素を用いることなく、該単色領域の残りの画素を用いて該ＳＷＴ領域を補完してもよい。文字領域の色とそれに隣接する背景領域の色とのコントラストが小さくてエッジが弱い場合には、単色領域ではなくＳＷＴ領域の方が正確なエッジを得る場合がある。この場合に単に論理和を用いてしまうと、本来は補完が不要な部分まで単色領域により補完されてしまい、却って文字領域候補の形状に誤りが生ずる。そこで、特定部１４は文字領域候補に含まれる画素をより正確に特定するために、単色領域の画素のうちＳＷＴ領域のエッジより外側に位置する画素を用いずに残りの画素のみを用いて補完してもよい。この処理を実現するためには、どの画素がエッジを形成するかが分かる必要がある。一例として、第１抽出部１２が、ＳＷＴ領域のコンポーネントデータの各画素の情報に、該画素がエッジか否かを示すフラグを付加すればよい。すなわち、ＳＷＴ領域に含まれる各画素ｐｅｉの情報が、ｐｅｉの座標、ストローク幅、およびエッジフラグ（ｘｅｉ，ｙｅｉ，ｗｉ，ｆｉ）で示されればよい。例えば、その画素がエッジであればｆｉ＝１と設定され、エッジでなければｆｉ＝０と設定される。
【００５６】
このようなＳＷＴ領域のエッジに基づく補完の例を図１２，１３を参照しながら説明する。図１２の例において、ＳＷＴ領域ｅ２０の境界に位置する画素がすべてエッジとして判定されたものとする。また、ＳＷＴ領域ｅ２０に対応して、画素値に基づくクラスタリングにより単色領域ｃ２０が得られたとする。この場合にこれら２領域の単純な論理和を求めると、単色領域ｃ２０におけるこぶのような膨らみｃ２０ａまでが文字領域候補の画素として特定されてしまうが、ＳＷＴにおいて判定されたエッジそのものは無視せずにそのまま用いた方が良いかもしれない。したがって、特定部１４はＳＷＴ領域ｅ２０のエッジよりも外側に位置する膨らみｃ２０ａの画素を用いることなく、単色領域ｃ２０の他の画素のみを用いてＳＷＴ領域ｅ２０を補完する。なお、図１２の例では結果的に、補完により画素値がｎｕｌｌから有意な値に更新される画素はない。
【００５７】
図１３では、ＳＷＴ領域ｅ３０の境界部分のうち、ＳＷＴによりエッジとして判定された部分を実線で示し、エッジとは判定されなかったが結果的に境界となった部分を破線で示している。一方、そのＳＷＴ領域ｅ３０に対応して、画素値に基づくクラスタリングにより単色領域ｃ３０が得られたとする。この場合に、その単色領域ｃ３０の画素の中で、ＳＷＴ領域ｅ３０のエッジよりも外側に位置するものは存在しない。したがって、特定部１４は単色領域ｃ３０の画素を用いてＳＷＴ領域ｅ３０の欠落部分（角、およびストロークの連結部分）を補完する。
【００５８】
なお、図１０における例は図１３と同様に考えることができる。すなわち、ＳＷＴ領域ｅ３のストローク連結部分の欠落を画する境界はＳＷＴによりエッジとは判定されないので、特定部１４は単色領域ｃ４の画素を用いてその欠落部分を補完する。ＳＷＴ領域ｅ３の縁の補完についていうと、特定部１４は、単色領域ｃ４の画素のうち、ＳＷＴ領域ｅ３のエッジ（より具体的には、エッジと判定された画素）よりも外側に位置するものを用いず、該エッジよりも内側に位置する画素を用いてＳＷＴ領域ｅ３を補完する。
【００５９】
あるいは、特定部１４は、単色領域に含まれるがＳＷＴ領域には含まれない領域（差分領域）を求め、その差分領域で追加のエッジを求めることでそのＳＷＴ領域を拡張し、拡張後のＳＷＴ領域における欠落部分を単色領域の画素で補完してもよい。具体的には、特定部１４はＳＷＴ領域（これを「元のＳＷＴ領域」という）と単色領域との差分を取ることで差分領域を求める。続いて、特定部１４は、その差分領域に含まれ、かつ元のＳＷＴ領域とストローク幅の範囲が同じ他のＳＷＴ領域が存在するか否かを判定し、そのような他のＳＷＴ領域が存在した場合には該他のＳＷＴ領域を拡張部分の候補とする。続いて、特定部１４は、第１抽出部１２によるＳＷＴで用いたエッジ閾値Ｔａよりも小さいエッジ閾値Ｔｂを用いてＳＷＴを実行することで、その差分領域内に存在しかつ元のＳＷＴ領域とストローク幅の範囲が同じ追加領域が存在するか否かを判定する。もし、そのような追加領域が存在する場合には、特定部１４は、元のＳＷＴ領域と、追加領域と、もしあれば更に他のＳＷＴ領域とを接続することで元のＳＷＴ領域を拡張する。そして、特定部１４は拡張後のＳＷＴ領域における欠落部分を単色領域の画素で補完する。このとき、特定部１４は単色領域の画素のうち、拡張されたＳＷＴ領域のエッジの外側に位置する画素を用いることなく、該単色領域の残りの画素のみを用いて該ＳＷＴ領域を補完する。一方、追加領域が存在しない場合には、特定部１４は元のＳＷＴ領域を拡張することなく、そのＳＷＴ領域の欠落部分を単色領域の画素で補完する。
【００６０】
このようなＳＷＴ領域の拡張を伴う補完の例を図１４に示す。この例において、ＳＷＴ領域ｅ４０に対応して、画素値に基づくクラスタリングにより単色領域ｃ４０が得られ、この２領域の間で、補完を行う前提となるＲ＝Ａｉ／Ａｃ≧Ｒｔという条件が満たされたとする。この場合、特定部１４は元のＳＷＴ領域ｅ４０と単色領域ｃ４０とから得られる差分領域内にある他のＳＷＴ領域ｅ４１を拡張部分の候補とする。また、特定部１４はエッジ閾値Ｔｂを用いたＳＷＴを実行することで、エッジｇ４０で示される追加領域を得る。そして、特定部１４は二つのＳＷＴ領域ｅ４０，ｅ４１とその追加領域とをつなげることで元のＳＷＴ領域ｅ４０を拡張する。そして、特定部１４は拡張されたＳＷＴ領域のエッジよりも外側に位置する膨らみｃ４０ａの画素を用いることなく、単色領域ｃ４０の他の画素のみを用いて、拡張されたＳＷＴ領域を補完する。なお、図１４の例では結果的に、補完により画素値がｎｕｌｌから有意な値に更新される画素はない。
【００６１】
なお、特定部１４は文字領域候補の画素群を特定した後に、その文字領域候補のエッジを微調整する処理を行ってもよい。例えば、特定部１４はエッジの周囲の画素値に応じて周囲の画素を文字領域候補に含めてもよいし、エッジを滑らかにする処理を行ってもよい。
【００６２】
次に、図１５，１６を用いて、画像処理装置１０の動作を説明するとともに本実施形態に係る画像処理方法について説明する。
【００６３】
図１５は本実施形態に係る画像処理方法の全体の流れを示す。まず、受付部１１が画像データを受け付ける（ステップＳ１１）。続いて、第１抽出部１２がＳＷＴによりその画像データから１以上のＳＷＴ領域を抽出する（ステップＳ１２、第１抽出ステップ）。続いて、第２抽出部１３がそれらのＳＷＴ領域に基づいて画像上のクラスタリング対象領域を決定し（ステップＳ１３）、画素値に基づくクラスタリングによりそのクラスタリング対象領域から１以上の単色領域を特定する（ステップＳ１４、第２抽出ステップ）。続いて、特定部１４がこれらのＳＷＴ領域および単色領域に基づいて、文字領域候補に含まれる画素群を特定し（ステップＳ１５、特定ステップ）、特定した結果を出力する（ステップＳ１６）。この一連の処理により、画像中で文字が描画されていると推定される部分が抽出される。
【００６４】
図１６を用いて、文字領域候補の画素群を特定する処理（ステップＳ１５）の詳細を説明する。特定部１４は処理しようとする一つのＳＷＴ領域を選択し（ステップＳ１５１）、外接矩形の少なくとも一部がそのＳＷＴ領域の外接矩形と重なる単色領域を選択する（ステップＳ１５２）。
【００６５】
もしそのような単色領域を１以上選択できた場合には（ステップＳ１５３；「１以上」）、特定部１４はＳＷＴ領域との重複部分の画素数Ａｉが最大の単色領域を選択し、該単色領域の画素数Ａｃに対するその値Ａｉの割合を求める（ステップＳ１５４）。そして、その割合が基準値Ｒｔ以上であれば（ステップＳ１５５；ＹＥＳ）、特定部１４はそのＳＷＴ領域を文字領域候補として残し、単色領域の画素を用いてそのＳＷＴ領域を補完する（ステップＳ１５６）。ステップＳ１５３において複数の単色領域を選択できた場合には、特定部１４はステップＳ１５４で選択しなかった他の単色領域を用いた補完を試みる（ステップＳ１５７）。具体的には、特定部１４は単色領域の画素数Ａｃに対する、該単色領域およびＳＷＴ領域の重複部分の画素数Ａｉの割合が基準値Ｒｔ以上であれば、特定部１４はその単色領域も用いてＳＷＴ領域をさらに補完する。
【００６６】
一方、外接矩形がＳＷＴ領域の外接矩形と重なる単色領域が存在しない場合には（ステップＳ１５３；「０」）、特定部１４はステップＳ１５１で選択したＳＷＴ領域を廃棄する（ステップＳ１５８）。また、重複部分の画素数Ａｉが最大の単色領域に関してＲ＝Ａｉ／Ａｃ＜Ｒｔである場合にも（ステップＳ１５５；ＮＯ）、特定部１４は選択したＳＷＴ領域を廃棄する（ステップＳ１５８）。
【００６７】
特定部１４は、処理対象のＳＷＴ領域のすべてについてステップＳ１５１〜Ｓ１５８の処理を実行する（ステップＳ１５９参照）。
【００６８】
次に、図１７を用いて、コンピュータを画像処理装置１０として機能させるための画像処理プログラムＰ１を説明する。
【００６９】
画像処理プログラムＰ１は、メインモジュールＰ１０、受付モジュールＰ１１、第１抽出モジュールＰ１２、第２抽出モジュールＰ１３、および特定モジュールＰ１４を備える。
【００７０】
メインモジュールＰ１０は、画像処理の機能を統括的に制御する部分である。受付モジュールＰ１１、第１抽出モジュールＰ１２、第２抽出モジュールＰ１３、および特定モジュールＰ１４を実行することにより実現される機能はそれぞれ、上記の受付部１１、第１抽出部１２、第２抽出部１３、および特定部１４の機能と同様である。
【００７１】
画像処理プログラムＰ１は、例えば、ＣＤ−ＲＯＭやＤＶＤ−ＲＯＭ、半導体メモリ等の有形の記録媒体に固定的に記録された上で提供されてもよい。あるいは、画像処理プログラムＰ１は、搬送波に重畳されたデータ信号として通信ネットワークを介して提供されてもよい。
【００７２】
以上説明したように、本発明の一側面に係る画像処理装置は、画像に対してストローク幅変換を実行することでＳＷＴ領域を該画像から抽出する第１抽出部であって、該ＳＷＴ領域が、エッジが連続しかつストローク幅が設定の範囲内である領域である、該第１抽出部と、画像に対して画素値に基づくクラスタリングを実行することで単色領域を該画像から抽出する第２抽出部であって、該単色領域が、画素値が設定の範囲内でありかつ連続して存在する複数の画素で構成される領域である、該第２抽出部と、単色領域の画素数に対する、ＳＷＴ領域および単色領域の重複部分の画素数の割合が第１の基準値以上または該第１の基準値より大きい場合に、少なくとも該単色領域に基づいて、文字領域候補に含まれる画素群を特定する特定部とを備える。
【００７３】
本発明の一側面に係る画像処理方法は、プロセッサを備えた画像処理装置により実行される画像処理方法であって、画像に対してストローク幅変換を実行することでＳＷＴ領域を該画像から抽出する第１抽出ステップであって、該ＳＷＴ領域が、エッジが連続しかつストローク幅が設定の範囲内である領域である、該第１抽出ステップと、画像に対して画素値に基づくクラスタリングを実行することで単色領域を該画像から抽出する第２抽出ステップであって、該単色領域が、画素値が設定の範囲内でありかつ連続して存在する複数の画素で構成される領域である、該第２抽出ステップと、単色領域の画素数に対する、ＳＷＴ領域および単色領域の重複部分の画素数の割合が第１の基準値以上または該第１の基準値より大きい場合に、少なくとも該単色領域に基づいて、文字領域候補に含まれる画素群を特定する特定ステップとを含む。
【００７４】
本発明の一側面に係る画像処理プログラムは、画像に対してストローク幅変換を実行することでＳＷＴ領域を該画像から抽出する第１抽出部であって、該ＳＷＴ領域が、エッジが連続しかつストローク幅が設定の範囲内である領域である、該第１抽出部と、画像に対して画素値に基づくクラスタリングを実行することで単色領域を該画像から抽出する第２抽出部であって、該単色領域が、画素値が設定の範囲内でありかつ連続して存在する複数の画素で構成される領域である、該第２抽出部と、単色領域の画素数に対する、ＳＷＴ領域および単色領域の重複部分の画素数の割合が第１の基準値以上または該第１の基準値より大きい場合に、少なくとも該単色領域に基づいて、文字領域候補に含まれる画素群を特定する特定部としてコンピュータを機能させる。
【００７５】
このような側面においては、ＳＷＴによるＳＷＴ領域の抽出だけでなく、そのＳＷＴとは独立に、画素値に基づくクラスタリングによる単色領域の抽出も実行される。そして、ＳＷＴ領域および単色領域の重複部分が単色領域に対して一定以上の割合を示す場合に、文字領域候補に含まれる画素群が特定される。このように、エッジではなく画素値に基づく手法をＳＷＴと併用して、これら二つの手法から得られた２種類の領域を利用することで、エッジに基づく手法の短所を補って、より確実に画像から文字領域を抽出することが可能になる。その結果、文字列の認識などの後続処理の精度を高めることも可能になる。
【００７６】
ＳＷＴは文字領域を抽出するための強力な手法の一つである。しかし、上述した通り、ストロークの角または連結部分で画素の欠落が生じたり、背景の一部がストロークとして抽出されたりすることがある。また、ＳＷＴは文字のエッジが検出できることを前提とするが、文字と背景との画素値が近いなどの理由で文字のエッジが弱いとそのエッジを抽出することができず、したがって文字領域も抽出できなくなる。
【００７７】
このＳＷＴを補うための手法としてＭＳＥＲがある。しかし、このＭＳＥＲもＳＷＴと同様にエッジに基づいて文字領域を抽出する技術なので、やはり、画像内に弱いエッジが存在するとそのエッジを検出できず、したがって文字領域を抽出できない。
【００７８】
一方、エッジを考慮しない、画素値に基づくクラスタリングを用いると、ＳＷＴ領域の欠落部分を抽出できる可能性がある。したがって、ＳＷＴと画素値に基づくクラスタリングとを併用することでＳＷＴでは抽出しきれない領域を単色領域として抽出し、その単色領域の画素を用いてＳＷＴ領域を補完すれば、従来よりも正確に文字領域候補を抽出することができる。
【００７９】
この効果を図１８の例を用いて示す。図１８に示す画像Ｇｘには、文字領域として抽出したい前景Ｆと、その前景Ｆと似た色を持つ、背景としての水玉Ｄとが描かれている（同図の上段を参照）。前景Ｆと水玉Ｄとが接する部分のエッジが弱くてＳＷＴでその部分のエッジを抽出できないと、前景Ｆは二つのＳＷＴ領域ｅ５０，ｅ５１に分離されてしまう（図１８の中段左を参照）。このような画像Ｇｘに対してＭＳＥＲを適用したとしても、閉曲線を見つけることができないので、結局、二つのＳＷＴ領域ｅ５０，ｅ５１の間を補うことはできない。これに対して、画素値に基づくクラスタリングを用いた場合には、クラスタリングで用いられる色の設定によっては前景Ｆの全体が単色領域ｃ５０として抽出され得るので（図１８の中段右を参照）、その欠落部分が補完されて前景Ｆを文字領域候補として特定することが可能になる（同図の下段を参照）。
【００８０】
図７に示す単色領域ｃ１のように、画素値に基づくクラスタリングでは、実際には文字ではない部分も単色領域として抽出され得る。しかし、単色領域の画素数に対する、ＳＷＴ領域および単色領域の重複部分の画素数の割合を考慮することで、実際に文字が描画された箇所を文字領域候補として確実に特定することが可能になる。
【００８１】
他の側面に係る画像処理装置では、特定部が、割合が第２の基準値未満である場合に、ＳＷＴ領域および単色領域から文字領域候補を特定しなくてもよい。ＳＷＴ領域と重なる単色領域の画素数が重複部分の画素数に比べてかなり多いために上記の割合が小さくなる場合には、そのＳＷＴ領域が実際には文字ではなく背景に位置している可能性が高い。そこで、割合が基準値未満である場合には文字領域候補を特定しないことで、背景の一部を文字として検出してしまう状況をより確実に防ぐことが可能になる。
【００８２】
他の側面に係る画像処理装置では、第１の基準値と第２の基準値とが等しく、第２抽出部が複数の単色領域を抽出した場合に、特定部が、ＳＷＴ領域との重複部分の画素数が最大の単色領域を選択し、選択された単色領域の画素数に対する、ＳＷＴ領域および該選択された単色領域の重複部分の画素数の割合が第１の基準値以上である場合には、文字領域候補に含まれる画素群を該ＳＷＴ領域および該選択された単色領域に基づいて特定し、該割合が該第１の基準値未満である場合には文字領域候補を特定しなくてもよい。
【００８３】
一つのＳＷＴ領域に対して複数の単色領域が抽出された場合には、まず、ＳＷＴ領域との重複部分の画素数が最大の単色領域に基づいて判断することで、文字領域候補として特定すべきかそうでないかを即時に判断することができる。例えば、重複部分の画素数が最大の単色領域について上記の割合が基準値未満であれば、その時点でそのＳＷＴ領域が文字領域候補になり得ないと判定できるので、他の単色領域について処理することなくそのＳＷＴ領域についての処理を終えることができる。これは、処理時間の短縮につながる。
【００８４】
他の側面に係る画像処理装置では、第２抽出部が、第１抽出部により抽出されたＳＷＴ領域に基づいて画像の一部をクラスタリング対象領域として設定し、該クラスタリング対象領域から単色領域を抽出してもよい。一般に、画素値に基づくクラスタリングは処理の負荷が高い。文字が描画されていると推定されるクラスタリング対象領域に絞ってそのクラスタリングを実行することで単色領域の探索範囲が限定されるので、その分だけ画像処理の負荷を低減することができる。
【００８５】
他の側面に係る画像処理装置では、特定部が、ＳＷＴ領域の欠落部分を単色領域の画素で補完することで、文字領域候補に含まれる画素群を特定してもよい。ＳＷＴ領域では抽出できなかった部分を単色領域の画素で補完することで、文字領域候補の画素群を正確に特定することができる。
【００８６】
他の側面に係る画像処理装置では、特定部が、ＳＷＴ領域および単色領域の論理和を文字領域候補に含まれる画素群として特定してもよい。論理和という単純な処理で文字領域候補の画素群を特定することで、簡易にかつ高速に文字領域候補を特定することができる。
【００８７】
他の側面に係る画像処理装置では、特定部が、単色領域の画素のうちＳＷＴ領域のエッジの外側に位置する画素を用いることなく、該単色領域の他の画素を用いて欠落部分を補完してもよい。ＳＷＴにより特定されたエッジは実際に文字と背景との境界を示している確率が高い。したがって、そのエッジを消すことなく他の欠落部分を補完することで、文字領域候補の画素群を正確に特定することができる。
【００８８】
他の側面に係る画像処理装置では、第１抽出部が第１のエッジ閾値を用いてストローク幅変換を実行し、特定部が、単色領域のうちＳＷＴ領域と重複しない領域に対して、第１のエッジ閾値よりも低い第２のエッジ閾値を用いてストローク幅変換を実行することで追加のエッジを探索し、該追加のエッジを用いて該ＳＷＴ領域を拡張し、単色領域の画素のうち拡張後のＳＷＴ領域のエッジの外側に位置する画素を用いることなく、該単色領域の他の画素を用いて該拡張後のＳＷＴ領域の欠落部分を補完してもよい。
【００８９】
文字と背景との画素値の関係によっては、ＳＷＴと画素値に基づくクラスタリングとの双方を用いても本来の文字のエッジを特定できない場合がある。例えば、文字色と背景色とが部分的に近いためにエッジの一部が弱い場合には、文字の一部のみがＳＷＴ領域として抽出される一方で画素値に基づくクラスタリングでも弱いエッジの部分を認識できない可能性がある。このような場合に、最初のＳＷＴよりもエッジ閾値を低くして再度ＳＷＴを実行することで、その弱いエッジが検出される可能性が生ずる。そして、その弱いエッジを含むＳＷＴ領域、すなわち拡張後のＳＷＴ領域に対して、特定されたエッジを消すことなく他の欠落部分を補完することで、文字領域候補の画素群を正確に特定することができる。
【００９０】
他の側面に係る画像処理装置では、第２抽出部が、カラー・クラスタリングを実行することで単色領域を抽出してもよい。グレー・クラスタリングでは画像をグレースケール（１次元の情報）に変換するので色に関する情報が欠落してしまうが、カラー・クラスタリングではそのような欠落が起こらないので、クラスタリングをより正確に行うことができる。
【００９１】
一方で、グレー・クラスタリングでは色情報が削減されるので、その分だけ処理を高速に実行することができる。
【００９２】
以上、本発明をその実施形態に基づいて詳細に説明した。しかし、本発明は上記実施形態に限定されるものではない。本発明は、その要旨を逸脱しない範囲で様々な変形が可能である。
【００９３】
上記実施形態では、第２抽出部１３がクラスタリング対象領域を決定した上で単色領域を抽出したが、第２抽出部１３はクラスタリング対象領域を決定することなく、画像全体から直接的に単色領域を抽出してもよい。すなわち、上記ステップＳ１３の処理は省略可能である。例えば、ＣＰＵなどのハードウェア性能が高くて単色領域を高速に抽出できるのであれば、クラスタリング対象領域を決定する処理は省略可能である。また、クラスタリング対象領域を決めないのであれば、画素値に基づくクラスタリングを行う際にＳＷＴ領域のコンポーネントデータを参照する必要がないので、単色領域を抽出する前にＳＷＴ領域を抽出しなくてもよい。すなわち、画像処理装置１０はステップＳ１２およびステップＳ１４を並列処理してもよいし、ステップＳ１４を実行した後にステップＳ１２を実行してもよい。
【００９４】
上記実施形態では特定部１４がＳＷＴ領域の外接矩形と単色領域の外接矩形との重なりを調べることで単色領域を選択したが、特定部１４はこの処理（ステップＳ１５２の処理）に代えて、ＳＷＴ領域と単色領域との重複部分の画素数Ａｉを求めてその画素数Ａｉが１以上である単色領域を選択してもよい。ただし、外接矩形の重なりを調べることで、簡易にかつ高速に単色領域を選択することができる。
【００９５】
上記実施形態では、単色領域の画素数に対する、ＳＷＴ領域および単色領域の重複部分の画素数の割合が基準値未満である場合に、そのＳＷＴ領域を廃棄した。この処理は主に、背景の一部から抽出されたＳＷＴ領域を除外することを目的とするが、このようなＳＷＴ領域の除去は他の手法により為されてもよい。例えば、受付部１１または特定部１４が、画像の縁の色と同色でかつその縁から連続する領域を背景領域として特定し、その背景領域に含まれるＳＷＴ領域を廃棄してもよい。
【００９６】
上記実施形態では、特定部１４が、単色領域の画素数に対する、ＳＷＴ領域および単色領域の重複部分の画素数の割合Ｒを一種類の基準値Ｒｔと比較したが、特定部はその割合Ｒを二種類の基準値（第１の基準値および第２の基準値）と比較してもよい。この場合には、第２の基準値は第１の基準値よりも小さい。例えば、特定部は、その割合Ｒが第１の基準値以上であれば、ＳＷＴ領域または単色領域の少なくとも一方に属する画素の集合を文字領域候補として特定する。その割合Ｒが第１の基準値未満でありかつ第２の基準値以上であれば、特定部は、単色領域の画素のうち、ＳＷＴ領域のエッジより外側に位置する画素を用いることなく、該単色領域の残りの画素を用いて該ＳＷＴ領域を補完する。その割合Ｒが第２の基準値未満であれば、特定部はＳＷＴ領域および単色領域から文字領域候補を特定しない。すなわち、特定部はそのＳＷＴ領域を廃棄する。このように、特定部は、割合Ｒが第１の基準値以上であれば第１の補完を実行することで文字領域候補の画素群をを特定し、割合Ｒが第１の基準値未満でありかつ第２の基準値以上であれば第２の補完を実行して文字領域候補の画素群を特定し、割合Ｒが第２の基準値未満であれば文字領域候補を特定しなくもてよい。
【００９７】
この変形例と比較した場合には、上記実施形態は、第１の基準値と第２の基準値とが等しい場合の処理、すなわち、基準値Ｒｔが第１の基準値でもあり第２の基準値でもある場合の処理であるといえる。
【００９８】
画像処理装置内で二つの数値の大小関係を比較する際には、「以上」「以下」「未満」「よりも大きい」のいずれの基準が用いられてもよい。上記実施形態では特定部１４が割合Ｒと基準値Ｒｔとを比較する場面で同様の説明を行ったが、大小関係の比較方法が任意であることは、その場面に限定されるものではない。
【符号の説明】
【００９９】
１０…画像処理装置、１１…受付部、１２…第１抽出部、１３…第２抽出部、１４…特定部、Ｐ１…画像処理プログラム、Ｐ１０…メインモジュール、Ｐ１１…受付モジュール、Ｐ１２…第１抽出モジュール、Ｐ１３…第２抽出モジュール、Ｐ１４…特定モジュール。
【要約】
【課題】より確実に画像から文字領域を抽出すること。
【解決手段】一実施形態に係る画像処理装置は第１抽出部、第２抽出部、および特定部を備える。第１抽出部は、画像に対してストローク幅変換を実行することでＳＷＴ領域を該画像から抽出する。ＳＷＴ領域は、エッジが連続しかつストローク幅が設定の範囲内である領域である。第２抽出部は、画像に対して画素値に基づくクラスタリングを実行することで単色領域を該画像から抽出する。単色領域は、画素値が設定の範囲内でありかつ連続して存在する複数の画素で構成される領域である。特定部は、単色領域の画素数に対する、ＳＷＴ領域および単色領域の重複部分の画素数の割合が第１の基準値以上または該第１の基準値より大きい場合に、少なくとも該単色領域に基づいて、文字領域候補に含まれる画素群を特定する。
【選択図】図３【図１】
0005695257.tif 000002
【図２】
0005695257.tif 000003
【図３】
0005695257.tif 000004
【図４】
0005695257.tif 000005
【図５】
0005695257.tif 000006
【図６】
0005695257.tif 000007
【図７】
0005695257.tif 000008
【図８】
0005695257.tif 000009
【図９】
0005695257.tif 000010
【図１０】
0005695257.tif 000011
【図１１】
0005695257.tif 000012
【図１２】
0005695257.tif 000013
【図１３】
0005695257.tif 000014
【図１４】
0005695257.tif 000015
【図１５】
0005695257.tif 000016
【図１６】
0005695257.tif 000017
【図１７】
0005695257.tif 000018
【図１８】
0005695257.tif 000019