(57)【特許請求の範囲】
【請求項１】
文書画像内の位置の指定を受け付け、
前記文書画像から、文字候補領域を抽出し、
抽出した前記文字候補領域のうち、前記指定を受け付けた位置に対応する文字候補領域の色数を抽出し、
前記指定を受け付けた位置に対応する文字候補領域に連なる文字候補領域のうち、文字候補領域の色数が、抽出した前記色数以下の文字候補領域を特定し、
前記指定を受け付けた位置に対応する文字候補領域と、前記特定した文字候補領域と、を選択範囲にする、
処理をコンピュータに実行させることを特徴とする範囲指定プログラム。
【請求項２】
前記特定する処理は、前記色数以下の文字候補領域を特定したことに応じて、前記色数を、特定した前記文字候補領域の色数に基づいて更新し、更新した前記色数以下の文字候補領域を特定することを特徴とする請求項１に記載の範囲指定プログラム。
【請求項３】
前記特定する処理は、前記指定を受け付けた位置に対応する文字候補領域に連なる文字候補領域のうち、文字候補領域の色数が、前記色数以下であり、かつ、文字候補領域の複雑度または文字候補領域内の線の線幅が所定の条件を満たす文字候補領域を特定することを特徴とする請求項１または２に記載の範囲指定プログラム。
【請求項４】
前記特定する処理は、前記色数が２である場合、色数が３以下の文字候補領域を特定することを特徴とする請求項１〜３のいずれか一項に記載の範囲指定プログラム。
【請求項５】
文書画像内の位置の指定を受け付け、
前記文書画像から、文字候補領域を抽出し、
抽出した前記文字候補領域のうち、前記指定を受け付けた位置に対応する文字候補領域の色数を抽出し、
前記指定を受け付けた位置に対応する文字候補領域に連なる文字候補領域のうち、文字候補領域の色数が、抽出した前記色数以下の文字候補領域を特定し、
前記指定を受け付けた位置に対応する文字候補領域と、前記特定した文字候補領域と、を選択範囲にする、
処理をコンピュータが実行することを特徴とする範囲指定方法。
【請求項６】
文書画像内の位置の指定を受け付け、
前記文書画像から、文字候補領域を抽出し、
抽出した前記文字候補領域のうち、前記指定を受け付けた位置に対応する文字候補領域の色数を抽出し、
前記指定を受け付けた位置に対応する文字候補領域に連なる文字候補領域のうち、文字候補領域の色数が、抽出した前記色数以下の文字候補領域を特定し、
前記指定を受け付けた位置に対応する文字候補領域と、前記特定した文字候補領域と、を選択範囲にする、
処理部を有することを特徴とする範囲指定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、範囲指定プログラム、範囲指定方法および範囲指定装置に関する。
【背景技術】
【０００２】
従来、ＰＣ（パーソナル・コンピュータ）、タブレット端末や、スマートフォンに表示される文章の中に調べたい文字列があった場合など、画面に表示された文字列をコピーして利用したい場合がある。このため、表示された文字列を選択する技術がある。
【０００３】
先行技術としては、例えば、ユーザが文書データの位置を指定すると、指定位置を含む文字属性を獲得し、獲得した文字属性と同じ属性の文字を選択範囲とする技術がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平０８−１３７８６７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来技術では、文書画像から文字列を選択する際、文字以外の部分を文字と誤って選択する場合がある。例えば、文書が写った画像である文書画像の場合、文書画像中の文書中の文字は、文字属性を有しないため、文字属性に基づいて文字を選択することはできない。一方、ユーザが指定した位置の領域と同じ大きさの領域を文字と選択すると、アイコンなどの大きさが文字と近似する領域も文字と誤って選択される。
【０００６】
一つの側面では、本発明は、文書画像から文字列を選択する際、文字以外の部分を文字と誤って選択することを軽減する範囲指定プログラム、範囲指定方法および範囲指定装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の一側面によれば、文書画像内の位置の指定を受け付け、文書画像から、文字候補領域を抽出し、抽出した文字候補領域のうち、指定を受け付けた位置に対応する文字候補領域の色数を抽出し、指定を受け付けた位置に対応する文字候補領域に連なる文字候補領域のうち、文字候補領域の色数が、抽出した色数以下の文字候補領域を特定し、指定を受け付けた位置に対応する文字候補領域と、特定した文字候補領域と、を選択範囲にする範囲指定プログラム、範囲指定方法および範囲指定装置が提案される。
【発明の効果】
【０００８】
本発明の一態様によれば、文書画像から文字列を選択する際、文字以外の部分を文字と誤って選択することを軽減するという効果を奏する。
【図面の簡単な説明】
【０００９】
【図１】図１は、実施の形態にかかる範囲指定方法の一実施例を示す説明図である。
【図２】図２は、画像による色数の違いを示す説明図である。
【図３】図３は、範囲指定装置１０１のハードウェア構成例を示すブロック図である。
【図４】図４は、範囲指定装置１０１の機能的構成例を示すブロック図である。
【図５】図５は、範囲指定装置１０１の範囲指定処理手順の一例を示すフローチャートである。
【図６】図６は、範囲指定装置１０１の文字候補領域抽出処理手順の一例を示すフローチャートである。
【図７】図７は、範囲指定装置１０１の文字画像色数抽出処理手順の一例を示すフローチャートである。
【図８】図８は、範囲指定装置１０１の文字領域探索処理手順の一例を示すフローチャートである。
【図９】図９は、文字画像の線幅を示す説明図である。
【図１０】図１０は、文字候補領域の探索を示す説明図である。
【図１１】図１１は、文字列領域の座標生成を示す説明図である。
【図１２】図１２は、連結成分の近接領域の統合を示す説明図である。
【図１３】図１３は、文字候補領域の位置関係を示す説明図である。
【発明を実施するための形態】
【００１０】
以下に図面を参照して、本発明にかかる範囲指定プログラム、範囲指定方法および範囲指定装置の実施の形態を詳細に説明する。
【００１１】
（実施の形態）
図１は、実施の形態にかかる範囲指定方法の一実施例を示す説明図である。図１の範囲指定装置１０１は、文書画像内の位置の指定を受け付けると、指定を受け付けた位置に対応する文字を含む文字領域を選択する装置である。具体的に、範囲指定装置１０１は、ＰＣ、タブレット端末等のコンピュータである。
【００１２】
ここで、文書画像とは、文書が写った画像である。例えば、文書画像は、ＰＤＦ（Ｐｏｒｔａｂｌｅ  Ｄｏｃｕｍｅｎｔ  Ｆｏｒｍａｔ）等のＰＣの画面上に表示された電子文書、スキャナで取得した紙文書の画像、またはデジタルカメラで撮影された文書を含む写真である。また、位置の指定とは、文書画像内の一点を決めることである。例えば、範囲指定装置１０１は、文書画像に座標軸を設定し、座標により位置を指定することができる。また、文字領域とは、文書の中で文字が連なった領域である。具体的には、例えば、文字領域は、文字が並んだ文字列の領域のことである。
【００１３】
従来、ＰＣ、タブレット端末や、スマートフォンに表示される文字列の中に調べたい単語があった場合など、画面に表示した文字列をコピーして利用したい場合がある。このため、表示される文字列を選択する技術がある。
【００１４】
例えば、表示している文書が、文書中に文字コードが格納されている電子文書であれば、目的とする単語の始点にカーソルを合わせてマウスでドラッグし、単語の文字列をコピーすることができる。
【００１５】
一方、文書画像に表示される文書や、文字コードのコピーを許さないアプリケーションの画面に表示される文書の場合には、文字コードを利用することができない。このため、例えば、ユーザは、文字列を囲む領域の頂点を２箇所指定することで、選択したい文字列を含む領域を画像に基づいて選択することができる。この場合、ユーザは、領域の頂点を２箇所指定するため、ユーザ操作が煩雑になる。また、スマートフォン等の小さな画面を指で操作する場合、ユーザが文字列を囲む領域の２頂点を指定するという操作は困難である。
【００１６】
このため、２頂点を指定するのではなく、ユーザが指定した文書データの位置の属性を獲得して、獲得した文字の属性と同じ属性の文字を選択範囲とする技術がある。ここで、文字の属性とは、文字に、文字の性質や設定などを示す付加的な情報である。例えば、文字の属性は、ゴシック体や明朝体等の文字のフォントの属性、アンダーライン等の文字の設定などがある。
【００１７】
しかしながら、文書画像の場合、文字属性は存在しないため、文字属性で文字を判断することができない。このため、例えば、文字の領域を、ユーザが指定した領域と近似する大きさの領域と判断することができる。しかし、この場合、アイコンが同じような大きさであると、アイコンなどの文字以外の領域も文字として誤って認識されてしまう。
【００１８】
そこで、実施の形態では、範囲指定装置１０１は、文書画像から文字領域を選択する際、指定された文字候補領域に連なり、当該文字候補領域の色数以下の文字候補領域を選択する。これにより、範囲指定装置１０１は、文書画像から文字を選択する際、文字以外の部分を文字と誤って選択することを軽減することができる。このため、文字コードを含まない、また、文字の属性を抽出することができない場合でも、ユーザは、文書画像内の１点を指定することで、文字領域を選択することができる。
【００１９】
以下、実施の形態にかかる範囲指定装置１０１の一実施例について説明する。図１の例では、範囲指定装置１０１は、文書画像１１０の文字列「ｆｉｌｅ１」の範囲を指定する例である。
【００２０】
（１）範囲指定装置１０１は、文書画像１１０内の位置の指定を受け付ける。例えば、範囲指定装置１０１は、ユーザが文書画像１１０の一点を、指でタッチクリックする操作で、位置の指定を受け付ける。
【００２１】
図１の例では、アイコンと文字列「ｆｉｌｅ１」が文書画像１１０に表示され、範囲指定装置１０１は、文書画像１１０内の「ｌ」が表示されている領域と最も距離が短い位置の指定を受け付ける。
【００２２】
（２）範囲指定装置１０１は、文書画像１１０から、文字候補領域を抽出する。ここで、文字候補領域とは、文書画像１１０の中で文字が存在する可能性のある領域のことである。例えば、範囲指定装置１０１は、文書画像１１０の画素の連結成分を生成し、近接する連結成分を統合した領域の大きさに基づいて、文字候補領域を抽出する。
【００２３】
図１の例では、範囲指定装置１０１は、文書画像１１０から、文字候補領域１１１〜文字候補領域１１６を抽出する。ここでは、範囲指定装置１０１は、アイコンの領域の大きさが文字の領域と近似するため、アイコンの領域も文字候補領域１１１として抽出する。
【００２４】
（３）範囲指定装置１０１は、文字候補領域のうち、指定を受け付けた位置に対応する文字候補領域の色数を抽出する。
【００２５】
図１の例では、範囲指定装置１０１は、文字候補領域１１１〜文字候補領域１１６とユーザから指定された位置との距離を算出して、距離が最も短い文字候補領域１１４を特定し、文字候補領域１１４の色数を抽出する。図１では、ハッチングで文字候補領域１１４が特定されたことを示す。ここで、文字候補領域１１４は、白画素と黒画素から構成されているため、文字候補領域１１４の色数として２を抽出する。
【００２６】
（４）範囲指定装置１０１は、指定を受け付けた位置に対応する文字候補領域に連なる文字候補領域のうち、文字候補領域の色数が、抽出した前記色数以下の文字候補領域を特定する。ここで、指定を受け付けた位置に対応する文字候補領域に連なる文字候補領域とは、指定を受け付けた位置に対応する文字候補領域から近接して続いている文字候補領域のことである。
【００２７】
ここで、範囲指定装置１０１は、文字候補領域に文字がある場合と、文字候補領域に文字がない場合とでは、色数が異なることを利用して、文字候補領域に文字があるか否かを判断する。
【００２８】
図２は、画像による色数の違いを示す説明図である。図２（ａ）は、外接矩形領域で囲まれた二色の画素で構成される文字画像である。ここで、外接矩形領域とは、文字画像を囲む矩形の領域である。また、文字画像とは、文書画像の文書に含まれる文字を含む画像のことである。文字画像は、文字本体を表す前景画素と背景を表す背景画素とを有する。前景画素は単一色であることが多い。また、背景画素に様々な色が使われていると文字が読みづらいため、背景画素も単一色であることが多い。このため、文字画像は、二色の画素を有することが多い。
【００２９】
図２（ｂ）は、外接矩形領域で囲まれた三色の画素を有する文字画像である。ここで、文字には影などの飾り表現が用いられることがある。このため、文字が影を含む二色の画素を有する場合がある。図２（ｂ）において、第一前景画素は通常の文字画素であり、第二前景画素が影を表す画素を示す。この場合、文字画像には、背景画素も含めると三色の画素が用いられている。
【００３０】
これに対して、文字画像以外の画像は、文字画像の色数よりも多くの色数が用いられていることが多い。例えば、図２（ｃ）は、ファイル名の前に置かれたアイコンを拡大した図である。アイコンは、ユーザが文字と区別できるように多色で目立つようになっている。例えば、図２（ｃ）に示すように、背景画素にグラデーションがかかっているため、背景画素は、濃い領域と薄い領域に分かれている。このため、背景画素は、複数の色が用いられている。
【００３１】
以上のように、特殊なデザインの文字を除けば、文字画像は、黒文字、赤文字、青文字のように、文字は一色で表現される。さらに影付きの場合でも文字は二色で表現される。このように、文字画像は背景を含めて二色または三色で表現される。
【００３２】
一方、アイコンなどの文字ではない画像は、一色で表現されることは少なく、文字画像より多くの色数が使われることが多い。これは、画像が例えば、色彩成分の無いグレイ画像である場合でも同様である。文字画像では二種類または三種類の明度値が使われるのに対して、文字でない画像では複数の明度値の画素が使われるという点で、カラー画像と同様である。
【００３３】
ここで、図１に戻ると、図１の例では、範囲指定装置１０１は、指定を受け付けた位置に対応する文字候補領域１１４に連なる文字候補領域１１１〜１１３、１１５、１１６の色数を求める。ここで、文字候補領域１１１は、アイコンであり背景にグラデーションが使用されているため、色数は二色より多くなる。一方、文字候補領域１１２、１１３、１１５、１１６は、文字であるため、色数は２である。このため、範囲指定装置１０１は、文字候補領域１１４の色数以下の文字候補領域１１２、１１３、１１５、１１６を特定する。図１では、ハッチングで文字候補領域１１２、１１３、１１５、１１６が特定されたことを示す。
【００３４】
（５）範囲指定装置１０１は、指定を受け付けた位置に対応する文字候補領域と、特定した文字候補領域とを選択範囲にする。また、範囲指定装置１０１は、指定を受け付けた位置に対応する文字候補領域と、特定した文字候補領域とを含む領域を選択範囲にすることができる。
【００３５】
図１の例では、範囲指定装置１０１は、指定を受け付けた位置に対応する文字候補領域１１４と、特定した文字候補領域１１２、１１３、１１５、１１６を含む領域１１７を選択範囲とする。
【００３６】
以上説明したように、範囲指定装置１０１は、文書画像１１０内の位置の指定を受け付け、文書画像１１０から、文字候補領域１１１〜１１６を抽出し、文字候補領域１１１〜１１６のうち、指定を受け付けた位置に対応する文字候補領域１１４の色数を抽出する。この後、範囲指定装置１０１は、指定を受け付けた位置に対応する文字候補領域１１４に連なる文字候補領域１１１〜１１３、１１５、１１６のうち、文字候補領域の色数が、抽出した色数以下の文字候補領域１１２、１１３、１１５、１１６を特定する。最後に、範囲指定装置１０１は、指定を受け付けた位置に対応する文字候補領域１１４と、特定した文字候補領域１１２、１１３、１１５、１１６と、を選択範囲にする。
【００３７】
これにより、範囲指定装置１０１は、文書画像中の文字列をマウスや指などによる指定によって簡単に選択することができ、従来と比較して文字ではない領域を誤って選択することによる不適切な領域選択を軽減することができる。
【００３８】
このため、ユーザは、文書画像内の１点を指定することで、文字領域を選択することができる。ユーザは、スマートフォン等の小さな画面を指で操作する場合でも、文字領域を選択することが容易になる。
【００３９】
（範囲指定装置１０１のハードウェア構成例）
図３は、範囲指定装置１０１のハードウェア構成例を示すブロック図である。図３において、範囲指定装置１０１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３０１と、メモリ３０２と、Ｉ／Ｆ（Ｉｎｔｅｒｆａｃｅ）３０３と、ディスクドライブ３０４と、ディスク３０５と、ディスプレイ３０６と、入力装置３０７と、を有する。また、各構成部は、バス３００によってそれぞれ接続される。
【００４０】
ここで、ＣＰＵ３０１は、範囲指定装置１０１の全体の制御を司る。メモリ３０２は、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）およびフラッシュＲＯＭなどを有する。具体的には、例えば、フラッシュＲＯＭやＲＯＭが各種プログラムを記憶し、ＲＡＭは記憶部としてＣＰＵ３０１のワークエリアとして使用される。メモリ３０２に記憶されるプログラムは、ＣＰＵ３０１にロードされることで、コーディングされている処理をＣＰＵ３０１に実行させる。
【００４１】
Ｉ／Ｆ３０３は、通信回線を通じてＬＡＮ、ＷＡＮ、インターネットなどのネットワーク３１０に接続され、ネットワーク３１０を介して他のコンピュータに接続される。そして、Ｉ／Ｆ３０３は、ネットワーク３１０と内部のインターフェースを司り、他のコンピュータからのデータの入出力を制御する。Ｉ／Ｆ３０３には、例えば、モデムやＬＡＮアダプタなどを採用することができる。
【００４２】
ディスクドライブ３０４は、ＣＰＵ３０１の制御に従ってディスク３０５に対するデータのリード／ライトを制御する。ディスク３０５は、ディスクドライブ３０４の制御で書き込まれたデータを記憶する。ディスク３０５としては、例えば、磁気ディスク、光ディスクなどが挙げられる。
【００４３】
ディスプレイ３０６は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。ディスプレイ３０６は、例えば、液晶ディスプレイ、有機ＥＬ（Ｅｌｅｃｔｒｏｌｕｍｉｎｅｓｃｅｎｃｅ）ディスプレイなどを採用することができる。
【００４４】
入力装置３０７は、文字、数字、各種指示などの入力のためのキーを有し、データの入力を行う。入力装置３０７は、キーボードやマウスなどであってもよく、また、タッチパネル式の入力パッドやテンキーなどであってもよい。
【００４５】
なお、範囲指定装置１０１は、上述した構成部のうち、例えば、ディスクドライブ３０４、ディスク３０５などを有さないことにしてもよい。また、範囲指定装置１０１は、上述した構成部のほか、例えば、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）、スキャナ、プリンタなどを有することにしてもよい。
【００４６】
（範囲指定装置１０１の機能的構成例）
図４は、範囲指定装置１０１の機能的構成例を示すブロック図である。図４において範囲指定装置１０１は、抽出部４０１と、属性抽出部４０２と、特定部４０３と、生成部４０４と、を含む構成である。抽出部４０１と、属性抽出部４０２と、特定部４０３と、生成部４０４と、を含む制御部は、具体的には、例えば、図３に示したメモリ３０２などの記憶装置に記憶されたプログラムをＣＰＵ３０１に実行させることにより、その機能を実現する。各機能部の処理結果は、例えば、図３に示したメモリ３０２などの記憶装置に記憶される。
【００４７】
抽出部４０１は、入力された画像から文字候補領域を抽出する機能を有する。例えば、抽出部４０１は、入力装置３０７から文書画像を入力し、ディスプレイ３０６に表示し、入力装置３０７から座標の指定を受け付ける。また、抽出部４０１は、Ｉ／Ｆ３０３を介してネットワーク３１０から文書画像を入力することも可能である。抽出部４０１は、画像から文字候補領域を抽出する。ここで、抽出部４０１は、文書画像内に部分領域を設定して、部分領域から文字候補領域を抽出することもできる。また、範囲指定装置１０１が入力して処理する画像は、文書画像であるため、これ以降の記載では文書画像を画像と略することもある。
【００４８】
例えば、抽出部４０１は、画像を二値化して、連結成分を生成し、連結成分の画像属性を抽出する。抽出部４０１は、画像属性により、連結成分が文字部分領域であるか否かの判定を行い、文字部分領域である連結成分の近接領域を統合する。ここで、文字部分領域とは、文字の部分が存在する可能性のある領域のことである。また、近接領域について、図１２を用いて詳しく後述する。
【００４９】
例えば、抽出部４０１は、統合した領域が文字候補領域であるか否かを判断し、文字候補領域であると判断した統合した領域を抽出する。
【００５０】
属性抽出部４０２は、抽出部４０１が抽出した文字候補領域から文字候補領域に含まれる画像の属性を抽出する機能を有する。例えば、属性抽出部４０２は、代表の文字候補領域を選択し、選択した文字候補領域から属性を抽出する。また、例えば、属性抽出部４０２は、属性として、文字候補領域の色数、文字サイズ、黒画素濃度、線幅または複雑度を抽出する。ここで、属性抽出部４０２は、抽出部４０１が画像を二値化する処理を行う前の画像を用いて、属性を抽出する。
【００５１】
属性抽出部４０２は、抽出した画像の属性のなかで、入力装置３０７から受け付ける座標の位置に対応する文字候補領域に含まれる画像の属性を代表属性とする。ここで、例えば、属性抽出部４０２は、入力装置３０７から受け付ける座標の位置に最も近い文字候補領域に含まれる画像の属性を代表属性とする。
【００５２】
例えば、属性抽出部４０２は、文字候補領域内の文字画像を切り出し、切り出した文字画像内の画素を色クラスタリングによって分類し、文字画像のノイズを除去して、色数をカウントする。
【００５３】
特定部４０３は、属性抽出部４０２が抽出した属性に基づいて、文字候補領域が文字領域であるか否かを決定する機能を有する。ここで、文字領域とは、文字を含む文字候補領域である。
【００５４】
例えば、特定部４０３は、文字候補領域の相対的な位置関係に基づいて隣接する文字候補領域を順に探索し、文字列を構成する文字領域を特定する。また、特定部４０３は、文字列が縦書きか横書きかを判定して、検索方向を決定する。特定部４０３は、文字列が縦書きの場合、上方向および下方向に探索し、横書きの場合、右方向および左方向に探索する。
【００５５】
また、例えば、特定部４０３は、探索で隣接領域が検索された場合、隣接領域に含まれる画像が文字であるか文字でないかの判定を行う。ここで、隣接領域とは、所定の隣接条件を満たす領域のことである。具体的には、隣接領域は、同一の文字列に属する可能性のある文字を含む領域である。
【００５６】
例えば、特定部４０３は、隣接領域の属性と代表属性とを比較することにより、隣接領域に含まれる画像が文字であるか文字でないかの判定を行う。ここで、属性が色数である場合、特定部４０３は、隣接領域の色数が代表属性の色数以下である場合、隣接領域に含まれる画像が文字であると判定する。
【００５７】
また、例えば、特定部４０３は、代表属性の色数が二色であった場合は、隣接領域の色数が三色である場合、隣接領域に含まれる画像が文字であると判定することもできる。
【００５８】
また、例えば、特定部４０３は、文字と判定された文字候補領域を文字領域と特定する。この後、特定部４０３は、文字と判定された文字候補領域の属性を用いて、代表属性を更新することもできる。
【００５９】
生成部４０４は、特定部４０３が決定した文字領域から文字列座標を生成する機能を有する。例えば、生成部４０４は、特定された文字候補領域の外接矩形を全て囲む矩形領域を生成し、矩形領域の左上の座標と右下の座標を生成する。
【００６０】
（範囲指定処理手順の一例）
図５は、範囲指定装置１０１の範囲指定処理手順の一例を示すフローチャートである。図５において、まず、範囲指定装置１０１は、画像を入力し、表示する（ステップＳ５０１）。例えば、範囲指定装置１０１は、スキャナでスキャンした画像や、デジタルカメラで撮影した画像を入力装置３０７またはＩ／Ｆ３０３から入力し、ディスプレイ３０６に表示する。
【００６１】
次に、範囲指定装置１０１は、画像内の座標を受け付ける（ステップＳ５０２）。例えば、範囲指定装置１０１は、入力装置３０７から画像内の座標を受け付ける。具体的には、入力装置３０７がマウス等のポインティングデバイスである場合、範囲指定装置１０１は、表示した画像内の１点をユーザがクリックする操作で画像内の座標を受け付ける。また、入力装置３０７がディスプレイ３０６と一体となったタッチパネルである場合、範囲指定装置１０１は、表示した画像内の１点をユーザがタッチクリックする操作で画像内の座標を受け付ける。
【００６２】
次に、範囲指定装置１０１は、文字候補領域を抽出する（ステップＳ５０３）。ここで、範囲指定装置１０１による文字候補領域抽出処理手順については、図６を用いて後述する。
【００６３】
また、範囲指定装置１０１は、文字候補領域を抽出する前に部分領域を設定することもできる。ここで、部分領域とは、画像内の事前に設定した範囲内の領域である。例えば、画像内で、受け付けた座標から所定の距離内にある領域を部分領域とすることができる。この場合、例えば、範囲指定装置１０１は、これ以降の処理を部分領域内で行うため、範囲指定処理を高速に行うことができる。
【００６４】
次に、範囲指定装置１０１は、文字画像の属性を抽出する（ステップＳ５０４）。ここで、文字画像とは、抽出した文字候補領域に含まれる文字を含む画像のことである。また、範囲指定装置１０１は、ステップＳ５０３の中で行われる画像を二値化する処理を行う前の画像を用いて、属性を抽出する。また、範囲指定装置１０１による文字画像の属性として色数を抽出する処理は、図７を用いて後述する。
【００６５】
さらに、範囲指定装置１０１は、文字画像の属性として、文字サイズ、黒画素濃度、線幅および複雑度をさらに、抽出することもできる。例えば、範囲指定装置１０１は、文字サイズを文字候補領域の縦横のサイズから算出することができる。また、例えば、範囲指定装置１０１は、黒画素濃度を、文字候補領域の二値画像の白画素と黒画素の数を数えることで算出することができる。
【００６６】
また、例えば、範囲指定装置１０１は、文字候補領域の二値画像を縦横にスキャンして、黒画素が連続する長さ（ｒｕｎ  ｌｅｎｇｔｈ）の平均値を求めることで、線幅を求めることができる。これは、太字と細字の文字は線幅に応じて異なった値を示すので、線幅は、文字か否かを判定するための情報とすることができる。
【００６７】
図９は、文字画像の線幅を示す説明図である。図９（ａ）は、横方向に二値画像をスキャンして、黒画素が連続する長さを求める例であり、図９（ｂ）は、縦方向に二値画像をスキャンして、黒画素が連続する長さを求める例である。ここで、線幅の詳細は、下記参考文献１に記載されている。
（参考文献１：電子情報通信学会論文誌  Ｖｏｌ．Ｊ９６−Ｄ  Ｎｏ．４  ｐｐ１０２９−１０３８）
【００６８】
また、例えば、範囲指定装置１０１は、文字候補領域の二値画像を縦横にスキャンして、黒画素から白画素に変化する回数および白画素から黒画素に変化する回数に基づいて、文字候補領域の複雑度を求めることができる。
【００６９】
次に、範囲指定装置１０１は、代表属性を抽出する（ステップＳ５０５）。例えば、範囲指定装置１０１は、ユーザから受け付けた座標から最も近い文字候補領域から得られた文字画像属性を代表属性とする。ここで、ユーザから受け付けた座標を（ｘｒ，ｙｒ）として、一つの文字候補領域の矩形座標を左上角と右下角の座標で表して（ｘ１，ｙ１）−（ｘ２，ｙ２）とする。
【００７０】
この場合、範囲指定装置１０１は、矩形の中心座標（ｘｃ，ｙｃ）を、
ｘｃ＝（ｘ１＋ｘ２）／２，ｙｃ＝（ｙ１＋ｙ２）／２
で求めることができる。範囲指定装置１０１は、受け付けた座標と文字候補領域との距離ｄを
ｄ＝√（（ｘｃ−ｘｒ）2＋（ｙｃ−ｙｒ）2）
から算出して、距離ｄが最も小さい文字候補領域の文字画像属性を代表属性とすることができる。
【００７１】
次に、範囲指定装置１０１は、文字領域を探索する（ステップＳ５０６）。ここで、文字領域の探索は、範囲指定装置１０１が文字候補領域の相対的な位置関係に基づいて隣接する文字候補領域を順に探索し、文字列を構成する文字領域を特定する処理である。例えば、範囲指定装置１０１は、文字列が縦書きか横書きかを判定して、検索方向を決定することができる。ここで、文字列が縦書きか横書きかを判定する方法の詳細は、下記参考文献２に記載されている。
（参考文献２：特開平０６−０８９３３０号公報）
【００７２】
図１０は、文字候補領域の探索を示す説明図である。図１０（ａ）に示すように、範囲指定装置１０１は、最初、文字候補領域の指定を受け付ける。次に、図１０（ｂ）に示すように、範囲指定装置１０１は、最初、右方向に文字候補領域を探索する。ここで、図１０（ｂ）の一番左の文字候補領域は、図１３で後述する隣接領域でないため、範囲指定装置１０１は探索を行わない。図１０（ｂ）では、文字候補領域と探索された領域は、太い線の四角で表されている。次に、図１０（ｃ）に示すように、範囲指定装置１０１は、左方向に文字候補領域を探索する。ここで、範囲指定装置１０１は、最初右から探索を行ったが、最初に左から行ってもよい。
【００７３】
範囲指定装置１０１による文字候補を右方向に探索する処理は、図８を用いて後述する。ここで、図８では、文字候補を右方向に探索する処理を説明しているが、文字候補を左方向、上方向および下方向に探索する処理は、右方向に探索する処理と同様に行うことができる。
【００７４】
最後に、範囲指定装置１０１は、文字列領域の座標を生成する（ステップＳ５０７）。例えば、範囲指定装置１０１は、特定された文字領域の外接矩形の座標を生成する。また、例えば、範囲指定装置１０１は、特定された文字領域の外接矩形を全て囲む矩形領域の座標を生成する。例えば、範囲指定装置１０１は、矩形領域の左上の座標と右下の座標を生成する。
【００７５】
図１１は、文字列領域の座標生成を示す説明図である。ここで、四角で表される領域が、文字候補領域であり、太い線の四角が特定された文字候補領域である。範囲指定装置１０１は、太い線の四角を含む点線の矩形領域の座標を生成する。
【００７６】
これにより、本フローチャートにおける一連の処理は終了する。本フローチャートを実行することで、範囲指定装置１０１は、受け付けた座標に対応する文字列領域の座標を生成することができる。
【００７７】
（文字候補領域抽出処理手順の一例）
図６は、範囲指定装置１０１の文字候補領域抽出処理手順の一例を示すフローチャートである。まず、範囲指定装置１０１は、画像を二値化する（ステップＳ６０１）。具体的には、範囲指定装置１０１は、画像内の画素を白画素と黒画素のいずれかに分類する。ここで、画像に部分領域が設定されている場合、範囲指定装置１０１は、画像内の部分領域を二値化することができる。
【００７８】
次に、範囲指定装置１０１は、連結成分を生成する（ステップＳ６０２）。具体的には、範囲指定装置１０１は、黒画素が４近傍（上下左右）で隣接しているものを連結成分としてグループ化する。
【００７９】
次に、範囲指定装置１０１は、連結成分の画像属性を抽出する（ステップＳ６０３）。例えば、範囲指定装置１０１は、連結成分の外接矩形領域において、矩形サイズや黒画素の濃度などの画像属性を求める。ここで、外接矩形領域とは、例えば、連結成分を含む最小の矩形の領域である。また、矩形サイズは、外接矩形領域の高さおよび幅の大きさである。
【００８０】
次に、範囲指定装置１０１は、すべての連結成分に対して、文字部分領域であるか否か判定する（ステップＳ６０４）。例えば、範囲指定装置１０１は、連結成分の画像属性が一定の範囲内にあるものを文字または文字の一部を構成する要素として、文字部分領域であると判断する。
【００８１】
次に、範囲指定装置１０１は、文字部分領域であると判定した連結成分の近接領域を統合する（ステップＳ６０５）。例えば、範囲指定装置１０１は、外接矩形領域が重なっているものや近接しているものを統合する。
【００８２】
図１２は、連結成分の近接領域の統合を示す説明図である。図１２の例では、図１２（ａ）は、外接矩形領域が近接しているものを統合した例であり、図１２（ｂ）は、外接矩形領域が重なっているものを統合した例である。
【００８３】
次に、範囲指定装置１０１は、統合した領域が文字候補領域であるか否かを判断する（ステップＳ６０６）。例えば、範囲指定装置１０１は、統合した領域の大きさで文字候補領域であるか否かを判定する。具体的には、範囲指定装置１０１は、文字サイズを縦がＨ画素、横がＷ画素のように事前に決めておき、「高さ＝０．２×Ｈ〜２×Ｈ画素」、「幅＝０．１×Ｗ〜２×Ｗ画素」の両方の条件に合致したものを文字候補領域と判定する。ここで、文字サイズとは、矩形の縦横の画素数のことである。
【００８４】
統合した領域が文字候補領域であると判定した場合（ステップＳ６０６：Ｙｅｓ）、範囲指定装置１０１は、統合した領域を文字候補領域として抽出する（ステップＳ６０７）。統合した領域が文字候補領域でないと判定した場合（ステップＳ６０６：Ｎｏ）、範囲指定装置１０１の処理は、ステップＳ６０８に進む。
【００８５】
次に、範囲指定装置１０１は、統合した領域すべてに対して判定が終了したか否かを判断する（ステップＳ６０８）。統合した領域すべてに対して判定が終了しない場合（ステップＳ６０８：Ｎｏ）、範囲指定装置１０１の処理は、ステップＳ６０６に戻る。統合した領域すべてに対して判定が終了した場合（ステップＳ６０８：Ｙｅｓ）、範囲指定装置１０１の処理は、終了する。
【００８６】
これにより、本フローチャートにおける一連の処理は終了する。本フローチャートを実行することで、範囲指定装置１０１は、画像から文字候補領域を抽出する。ここで、文字候補領域抽出処理の詳細は、上述した参考文献２に記載されている。
【００８７】
（文字画像色数抽出処理手順の一例）
図７は、範囲指定装置１０１の文字画像色数抽出処理手順の一例を示すフローチャートである。まず、範囲指定装置１０１は、文字候補領域内の文字画像を切り出す（ステップＳ７０１）。
【００８８】
次に、範囲指定装置１０１は、切り出した文字画像内の画素を色クラスタリングによって分類する（ステップＳ７０２）。例えば、範囲指定装置１０１は、文字画像内で同一色とみなすことができる色のグループを作成する。
【００８９】
次に、範囲指定装置１０１は、文字画像のノイズを除去する（ステップＳ７０３）。例えば、範囲指定装置１０１は、色のグループごとに属する画素数をカウントし、一定の画素数に満たないグループを削除することによってノイズを除去する。ここで、一定の画素数は、例えば総画素数の５％とすることができる。これにより、範囲指定装置１０１は、文字画像のボケや色ズレなどによる局所的な変動によるノイズを削除することができる。
【００９０】
次に、範囲指定装置１０１は、文字画像の色数をカウントする（ステップＳ７０４）。例えば、範囲指定装置１０１は、ノイズを除去した後に残った色のグループの数を、文字画像の色数としてカウントする。
【００９１】
次に、範囲指定装置１０１は、すべての文字候補領域の色数を抽出したか否かを判断する（ステップＳ７０５）。すべての文字候補領域の色数を抽出しない場合（ステップＳ７０５：Ｎｏ）、範囲指定装置１０１の処理は、ステップＳ７０１に戻る。すべての文字候補領域の色数を抽出した場合（ステップＳ７０５：Ｙｅｓ）、範囲指定装置１０１の処理は、終了する。
【００９２】
これにより、本フローチャートにおける一連の処理は終了する。本フローチャートを実行することで、範囲指定装置１０１は、文字候補領域内の文字画像の色数を抽出する。ここで、画素を色クラスタリングによって分類する方法の詳細は、下記参考文献３に記載されている。
（参考文献３：特開２００２−０４２０５５号公報）
【００９３】
（文字領域探索処理手順の一例）
図８は、範囲指定装置１０１の文字領域探索処理手順の一例を示すフローチャートである。まず、範囲指定装置１０１は、現在文字領域を設定する（ステップＳ８０１）。例えば、範囲指定装置１０１は、現在文字領域として、代表属性を抽出した文字候補領域を設定する。
【００９４】
次に、範囲指定装置１０１は、右方向に隣接領域を探索する（ステップＳ８０２）。ここで、隣接領域とは、同一の文字列に属する可能性のある文字を含む領域である。具体的には、隣接領域は、現在文字領域と、以下に説明する隣接条件を満たす文字候補領域である。
【００９５】
図１３は、文字候補領域の位置関係を示す説明図である。図１３を用いて、隣接条件を説明する。図１３において、ｄを文字候補領域間の間隔、ｖを文字候補領域の重なり範囲の長さ、ｈ１を左側の文字候補領域の高さ、ｈ２を右側の文字候補領域の高さとし、ｈを２つの文字候補領域の高さの平均（ｈ＝（ｈ１＋ｈ２）／２）とする。この場合、現在文字領域と隣接条件を満たす文字候補領域とは、ｄ＜ｈかつｖ＞ｈ／２を満たす文字候補領域である。
【００９６】
次に、範囲指定装置１０１は、隣接領域が探索されたか否かを判断する（ステップＳ８０３）。隣接領域が探索されない場合（ステップＳ８０３：Ｎｏ）、範囲指定装置１０１の処理は、終了する。
【００９７】
隣接領域が探索された場合（ステップＳ８０３：Ｙｅｓ）、範囲指定装置１０１は、文字非文字の判定を行う（ステップＳ８０４）。ここで、範囲指定装置１０１は、探索された隣接領域に含まれる画像が文字であるか文字でないかの判定を行う。
【００９８】
例えば、範囲指定装置１０１は、隣接領域の属性と代表属性とを比較することにより、隣接領域に含まれる画像が文字であるか文字でないかの判定を行う。例えば、属性が色数である場合、範囲指定装置１０１は、隣接領域の色数が代表属性の色数以下である場合、隣接領域に含まれる画像が文字であると判定する。
【００９９】
また、例えば、範囲指定装置１０１は、代表属性の色数が二色であった場合は、隣接領域の色数が二色または三色である場合、隣接領域に含まれる画像が文字であると判定することもできる。これは、代表属性の色数が二色であった場合は、文字の影による色数も考慮して、範囲指定装置１０１は、二色または三色の文字候補領域を文字だと判定する。また、代表属性の色数が三色であった場合は、同様にして、範囲指定装置１０１は、二色または三色の文字候補領域を文字だと判定する。また、代表属性の色数が四色以上の場合、範囲指定装置１０１は、代表属性の色数以下の文字候補領域を文字だと判定することができる。
【０１００】
これをまとめると、下記のようになる。
代表属性の色数：二色→文字と判定する色数：二色〜三色
代表属性の色数：三色→文字と判定する色数：二色〜三色
代表属性の色数：Ｎ色→文字と判定する色数：二色〜Ｎ色
【０１０１】
また、例えば、範囲指定装置１０１は、色数の条件を満たす隣接領域に含まれる画像に対して、文字サイズ、黒画素濃度、線幅および複雑度等の属性を使用して、さらに、隣接領域に含まれる画像が文字であるか文字でないかの判定を行うこともできる。
【０１０２】
非文字の判定が行われた場合（ステップＳ８０４：非文字）、範囲指定装置１０１の処理はステップＳ８０２に戻る。文字の判定が行われた場合（ステップＳ８０４：文字）、範囲指定装置１０１は、隣接領域を文字領域として特定する（ステップＳ８０５）。
【０１０３】
次に、範囲指定装置１０１は、現在文字領域を更新する（ステップＳ８０６）。例えば、範囲指定装置１０１は、ステップＳ８０５で特定された文字領域を現在文字領域にする。
【０１０４】
次に、範囲指定装置１０１は、代表属性を更新する（ステップＳ８０７）。例えば、範囲指定装置１０１は、特定した文字候補領域の属性値の平均や中央値を求め、平均や中央値で代表属性を更新する。この場合、最初に受け付けた文字候補領域の属性が特殊なものであった場合でも、文字列探索を行うにつれて、適正な代表属性へと次第に近づくことができる。この後、範囲指定装置１０１の処理は、ステップＳ８０２に戻り、隣接領域が探索されなくなると、範囲指定装置１０１の処理は、終了する。
【０１０５】
これにより、本フローチャートにおける一連の処理は終了する。本フローチャートを実行することで、範囲指定装置１０１は、画像の文字候補領域を探索して、文字領域を特定することができる。
【０１０６】
以上説明したように、範囲指定装置１０１は、文書画像内の位置の指定を受け付け、文書画像から、文字候補領域を抽出し、文字候補領域のうち、指定を受け付けた位置に対応する文字候補領域の色数を抽出する。この後、範囲指定装置１０１は、指定を受け付けた位置に対応する文字候補領域に連なる文字候補領域のうち、文字候補領域の色数が、抽出した色数以下の文字候補領域を特定する。最後に、範囲指定装置１０１は、指定を受け付けた位置に対応する文字候補領域と、特定した文字候補領域と、を選択範囲にする。
【０１０７】
これにより、範囲指定装置１０１は、文書画像中の文字列をマウスや指などによる指定によって簡単に選択することができ、従来と比較して文字ではない領域を誤って選択することによる不適切な領域選択を軽減することができる。
【０１０８】
このため、範囲指定装置１０１は、ユーザがＰＣやスマートフォンなどの画面に表示された文字列を簡単な操作で選択する機能を実現できる。また、範囲指定装置１０１は、色数の比較だけで、文字を選択できるため、範囲指定装置１０１の負荷を上げることなく、文字の選択を行うことができる。ここで、範囲指定装置１０１が選択した文字列は、文字認識機能によってテキストに変換することが容易にできるので、例えば、調べたい単語をカメラで撮影してワンタッチで認識とＷｅｂ検索を実行することができる。さらに、範囲指定装置１０１により、外国人旅行者がガイドブックや看板、メニューなどの文字列の意味や発音を簡単に知ることができ実世界の文字画像情報の有効活用が可能になる。
【０１０９】
ここで、範囲指定装置１０１は、最初に文字候補領域を抽出し、当該文字候補領域の色数を、指定を受け付けた位置に対応する文字候補領域から抽出した色数と比較する。このため、指定を受け付けた位置に対応する文字候補領域に連なる文字候補領域のなかにノイズがあって、抽出した色数を超える文字候補領域があったとしても、その先の文字候補領域を文字として選択することができる。
【０１１０】
また、範囲指定装置１０１は、色数以下の文字候補領域を特定したことに応じて、抽出した色数を、特定した文字候補領域の色数に基づいて更新することもできる。
【０１１１】
これにより、最初に受け付けた文字候補領域の色数が特殊なものであった場合でも、範囲指定装置１０１は、文字列探索を行うにつれて、色数を適正な代表属性の色数へと次第に近づけることができる。
【０１１２】
また、範囲指定装置１０１は、文字候補領域の色数が、抽出した色数以下であり、かつ、文字候補領域の複雑度または文字候補領域内の線の線幅が所定の条件を満たす文字候補領域を特定することができる。
【０１１３】
これにより、範囲指定装置１０１は、複雑度または線幅を用いることで、文字候補領域が、文字領域であるか否かを、より正確に判断することができる。
【０１１４】
また、範囲指定装置１０１は、抽出した色数が２である場合、色数が３以下の文字候補領域を特定することができる。
【０１１５】
これにより、範囲指定装置１０１は、最初に受け付けた文字候補領域の色数が２であっても、影等の装飾があり、色数が３以上の文字を特定することができる。
【０１１６】
なお、本実施の形態で説明した範囲指定方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本範囲指定プログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、本範囲指定プログラムは、インターネット等のネットワークを介して配布してもよい。
【０１１７】
上述した実施の形態に関し、さらに以下の付記を開示する。
【０１１８】
（付記１）文書画像内の位置の指定を受け付け、
前記文書画像から、文字候補領域を抽出し、
抽出した前記文字候補領域のうち、前記指定を受け付けた位置に対応する文字候補領域の色数を抽出し、
前記指定を受け付けた位置に対応する文字候補領域に連なる文字候補領域のうち、文字候補領域の色数が、抽出した前記色数以下の文字候補領域を特定し、
前記指定を受け付けた位置に対応する文字候補領域と、前記特定した文字候補領域と、を選択範囲にする、
処理をコンピュータに実行させることを特徴とする範囲指定プログラム。
【０１１９】
（付記２）前記特定する処理は、前記色数以下の文字候補領域を特定したことに応じて、前記色数を、特定した前記文字候補領域の色数に基づいて更新し、更新した前記色数以下の文字候補領域を特定することを特徴とする付記１に記載の範囲指定プログラム。
【０１２０】
（付記３）前記特定する処理は、前記指定を受け付けた位置に対応する文字候補領域に連なる文字候補領域のうち、文字候補領域の色数が、前記色数以下であり、かつ、文字候補領域の複雑度または文字候補領域内の線の線幅が所定の条件を満たす文字候補領域を特定することを特徴とする付記１または２に記載の範囲指定プログラム。
【０１２１】
（付記４）前記特定する処理は、前記色数が２である場合、色数が３以下の文字候補領域を特定することを特徴とする付記１〜３のいずれか一項に記載の範囲指定プログラム。
【０１２２】
（付記５）文書画像内の位置の指定を受け付け、
前記文書画像から、文字候補領域を抽出し、
抽出した前記文字候補領域のうち、前記指定を受け付けた位置に対応する文字候補領域の色数を抽出し、
前記指定を受け付けた位置に対応する文字候補領域に連なる文字候補領域のうち、文字候補領域の色数が、抽出した前記色数以下の文字候補領域を特定し、
前記指定を受け付けた位置に対応する文字候補領域と、前記特定した文字候補領域と、を選択範囲にする、
処理をコンピュータに実行させる範囲指定プログラムを記録したことを特徴とする前記コンピュータに読み取り可能な記録媒体。
【０１２３】
（付記６）文書画像内の位置の指定を受け付け、
前記文書画像から、文字候補領域を抽出し、
抽出した前記文字候補領域のうち、前記指定を受け付けた位置に対応する文字候補領域の色数を抽出し、
前記指定を受け付けた位置に対応する文字候補領域に連なる文字候補領域のうち、文字候補領域の色数が、抽出した前記色数以下の文字候補領域を特定し、
前記指定を受け付けた位置に対応する文字候補領域と、前記特定した文字候補領域と、を選択範囲にする、
処理をコンピュータが実行することを特徴とする範囲指定方法。
【０１２４】
（付記７）文書画像内の位置の指定を受け付け、
前記文書画像から、文字候補領域を抽出し、
抽出した前記文字候補領域のうち、前記指定を受け付けた位置に対応する文字候補領域の色数を抽出し、
前記指定を受け付けた位置に対応する文字候補領域に連なる文字候補領域のうち、文字候補領域の色数が、抽出した前記色数以下の文字候補領域を特定し、
前記指定を受け付けた位置に対応する文字候補領域と、前記特定した文字候補領域と、を選択範囲にする、
処理部を有することを特徴とする範囲指定装置。
【符号の説明】
【０１２５】
１０１  範囲指定装置
４０１  抽出部
４０２  属性抽出部
４０３  特定部
４０４  生成部
【図１】
0006503850.tif 000002
【図２】
0006503850.tif 000003
【図３】
0006503850.tif 000004
【図４】
0006503850.tif 000005
【図５】
0006503850.tif 000006
【図６】
0006503850.tif 000007
【図７】
0006503850.tif 000008
【図８】
0006503850.tif 000009
【図９】
0006503850.tif 000010
【図１０】
0006503850.tif 000011
【図１１】
0006503850.tif 000012
【図１２】
0006503850.tif 000013
【図１３】
0006503850.tif 000014