(57)【要約】【課題】画像の文字潰れなどにより文字列に接触成分が生じていたとしても、文字切り出しを正しく行えるようにする。【解決手段】実施形態の文字切り出し装置１０Ａは、文字列を含む２値画像Ｄ１を取得する２値画像取得部１１と、２値画像Ｄ１から接触成分を検出する接触成分検出部１２と、接触成分を構成する黒画素を白画素に補正して補正２値画像Ｄ３を生成する補正２値画像生成部１３と、補正２値画像Ｄ３から文字境界を検出する文字境界検出部１４と、文字境界を用いて、文字列を構成する個別文字の画像である個別文字画像Ｄ５を生成する個別文字画像生成部１５と、個別文字画像Ｄ５を出力する出力部１６と、を備える。【選択図】図２
2018022423.tif 000002
【特許請求の範囲】
【請求項１】
文字列を含み、該文字列が第１の値で表現され、該文字列の背景が第２の値で表現された２値画像を取得する２値画像取得部と、
前記２値画像に含まれる領域であって、前記文字列の文字並び方向と直交する第１の方向の一方の端部の前記第１の方向における位置の変化量と、前記第１の方向の他方の端部の前記第１の方向における位置の変化量とがともに第１の閾値以下であるという第１の条件と、前記文字並び方向に沿った第２の方向における一方の端部に隣接する領域外の画素と、前記第２の方向の他方の端部に隣接する領域外の画素とがともに前記第１の値であるという第２の条件とを満たす領域を、２つの文字が接触している接触成分として検出する接触成分検出部と、
前記接触成分を構成する前記第１の値の画素を前記第２の値に補正して、補正２値画像を生成する補正２値画像生成部と、
前記補正２値画像から文字境界を検出する文字境界検出部と、
前記文字境界を用いて、前記文字列を構成する個別文字の画像である個別文字画像を生成する個別文字画像生成部と、
前記個別文字画像を出力する出力部と、を備える文字切り出し装置。
【請求項２】
前記接触成分検出部は、前記第２の方向の長さが予め定めた最小値以上であるという第３の条件をさらに満たす領域を前記接触成分として検出する、請求項１に記載の文字切り出し装置。
【請求項３】
前記接触成分検出部は、前記第２の方向の長さが予め定めた最大値以下であるという第４の条件をさらに満たす領域を前記接触成分として検出する、請求項１または２に記載の文字切り出し装置。
【請求項４】
前記接触成分検出部は、前記接触成分に含まれる前記第２の値の画素の塊を孔としたときに、画素数が第２の閾値以上となる前記孔を含まないという第５の条件をさらに満たす領域を前記接触成分として検出する、請求項１乃至３のいずれか一項に記載の文字切り出し装置。
【請求項５】
前記接触成分検出部は、前記接触成分に含まれる前記第２の値の画素の塊を孔としたときに、所定数以上の前記孔を含まないという第６の条件をさらに満たす領域を前記接触成分として検出する、請求項１乃至４のいずれか一項に記載の文字切り出し装置。
【請求項６】
予め定めた文字サイズの最小値に基づいて、前記接触成分の前記第２の方向の端部の位置を調整する接触成分調整部をさらに備え、
前記補正２値画像生成部は、前記第２の方向の端部の位置が調整された前記接触成分を構成する前記第１の値の画素を前記第２の値に補正して、前記補正２値画像を生成する、請求項１乃至５のいずれか一項に記載の文字切り出し装置。
【請求項７】
前記個別文字画像に対して前記接触成分を付加した候補文字画像を生成する候補文字画像生成部をさらに備え、
前記出力部は、前記個別文字画像と前記候補文字画像との組み合わせを出力する、請求項１乃至６のいずれか一項に記載の文字切り出し装置。
【請求項８】
文字列を含み、該文字列が第１の値で表現され、該文字列の背景が第２の値で表現された２値画像を取得するステップと、
前記２値画像に含まれる領域であって、前記文字列の文字並び方向と直交する第１の方向の一方の端部の前記第１の方向における位置の変化量と、前記第１の方向の他方の端部の前記第１の方向における位置の変化量とがともに第１の閾値以下であるという第１の条件と、前記文字並び方向に沿った第２の方向における一方の端部に隣接する領域外の画素と、前記第２の方向の他方の端部に隣接する領域外の画素とがともに前記第１の値であるという第２の条件とを満たす領域を、２つの文字が接触している接触成分として検出するステップと、
前記接触成分を構成する前記第１の値の画素を前記第２の値に補正して、補正２値画像を生成するステップと、
前記補正２値画像から文字境界を検出するステップと、
前記文字境界を用いて、前記文字列を構成する個別文字の画像である個別文字画像を生成するステップと、
前記個別文字画像を出力するステップと、を含む文字切り出し方法。
【請求項９】
コンピュータに、
文字列を含み、該文字列が第１の値で表現され、該文字列の背景が第２の値で表現された２値画像を取得する機能と、
前記２値画像に含まれる領域であって、前記文字列の文字並び方向と直交する第１の方向の一方の端部の前記第１の方向における位置の変化量と、前記第１の方向の他方の端部の前記第１の方向における位置の変化量とがともに第１の閾値以下であるという第１の条件と、前記文字並び方向に沿った第２の方向における一方の端部に隣接する領域外の画素と、前記第２の方向の他方の端部に隣接する領域外の画素とがともに前記第１の値であるという第２の条件とを満たす領域を、２つの文字が接触している接触成分として検出する機能と、
前記接触成分を構成する前記第１の値の画素を前記第２の値に補正して、補正２値画像を生成する機能と、
前記補正２値画像から文字境界を検出する機能と、
前記文字境界を用いて、前記文字列を構成する個別文字の画像である個別文字画像を生成する機能と、
前記個別文字画像を出力する機能と、を実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、文字切り出し装置、文字切り出し方法およびプログラムに関する。
【背景技術】
【０００２】
文字切り出しとは、文字列を含む画像を解析して文字列を個別文字に分離する処理である。一般的な文字認識は、文字切り出しにより生成された個別文字画像を用いて個々の文字に対する認識処理を行う。この際、文字切り出しを誤ると個別文字の形状が本来の形から変形し、文字認識の認識率が低下する。文字認識を精度よく行うためには、文字切り出しを正しく行うことが重要である。
【０００３】
文字切り出しを誤る要因の一つとして、画像のいわゆる文字潰れによって隣り合う２つの文字同士が接触し、本来は文字ではない画素の塊（以下、「接触成分」と呼ぶ）によって２つの文字が連結してしまうことが挙げられる。特にカメラ画像を処理対象とする場合は、解像度不足や光量不足、動きぶれ、デフォーカスなどの理由から文字の鮮明性が十分でない場合が多く、画像を２値化する際に文字間に接触成分が発生し易い。
【０００４】
文字列に接触成分が含まれる場合、従来の文字切り出し方法では、例えば、文字の輪郭の幅の変化や文字を表す画素の射影ヒストグラムなどを手掛かりとして接触成分を含む文字列の切断位置を決定し、この切断位置で文字列を個別文字に分離して個別文字画像を生成している。しかし、この方法では、接触成分の射影値や上下輪郭の差分が文字と同程度か文字以上になると有効ではなくなる。また、分離された個別文字の少なくとも一方は接触成分により文字形状が変化するため、文字認識の認識率低下に繋がる。文字列自体が意味を持つ場合は、一方の文字が正しく認識されていれば、他方の文字の誤認識を知識処理により修正できる場合がある。しかし、例えば数字の羅列など、文字列自体が意味を持たない場合は、知識処理により文字認識の結果を修正できない。このため、画像の文字潰れなどにより文字列に接触成分が生じていたとしても、文字の切り出しを正しく行って、文字認識を精度よく行えるようにすることが求められている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特公平３−０１０１４５号公報
【特許文献２】特開２０１４−２３８８２９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明が解決しようとする課題は、画像の文字潰れなどにより文字列に接触成分が生じていたとしても、文字切り出しを正しく行うことができる文字切り出し装置、文字切り出し方法およびプログラムを提供することである。
【課題を解決するための手段】
【０００７】
実施形態の文字切り出し装置は、２値画像取得部と、接触成分検出部と、補正２値画像生成部と、文字境界検出部と、個別文字画像生成部と、出力部と、を備える。２値画像取得部は、文字列を含み、該文字列が第１の値で表現され、該文字列の背景が第２の値で表現された２値画像を取得する。接触成分検出部は、前記２値画像に含まれる領域であって、前記文字列の文字並び方向と直交する第１の方向の一方の端部の前記第１の方向における位置の変化量と、前記第１の方向の他方の端部の前記第１の方向における位置の変化量とがともに第１の閾値以下であるという第１の条件と、前記文字並び方向に沿った第２の方向における一方の端部に隣接する領域外の画素と、前記第２の方向の他方の端部に隣接する領域外の画素とがともに前記第１の値であるという第２の条件とを満たす領域を、２つの文字が接触している接触成分として検出する。補正２値画像生成部は、前記接触成分を構成する前記第１の値の画素を前記第２の値に補正して、補正２値画像を生成する。文字境界検出部は、前記補正２値画像から文字境界を検出する。個別文字画像生成部は、前記文字境界を用いて、前記文字列を構成する個別文字の画像である個別文字画像を生成する。出力部は、前記個別文字画像を出力する。
【図面の簡単な説明】
【０００８】
【図１】図１は、実施形態の概要を説明する図である。
【図２】図２は、第１の実施形態に係る文字切り出し装置の機能的な構成例を示すブロック図である。
【図３】図３は、文字切り出し装置による一連の動作を説明するフローチャートである。
【図４】図４は、接触成分検出処理の概要を示すフローチャートである。
【図５】図５は、黒画素連結成分の上端部および下端部の一例を示す図である。
【図６】図６は、接触成分の左端部および右端部の一例を示す図である。
【図７】図７は、上端部および下端部の検出処理の一例を示すフローチャートである。
【図８】図８は、条件判定処理の一例を示すフローチャートである。
【図９】図９は、第２の実施形態に係る文字切り出し装置の機能的な構成例を示すブロック図である。
【図１０】図１０は、第２の実施形態の概要を説明する図である。
【図１１】図１１は、接触成分調整部による処理手順の一例を示すフローチャートである。
【図１２】図１２は、第３の実施形態に係る文字切り出し装置の機能的な構成例を示すブロック図である。
【図１３】図１３は、黒画素連結成分の一例を示す図である。
【図１４】図１４は、図１３に示す黒画素連結成分から生成される個別文字画像と候補文字画像のすべての組み合わせを説明する図である。
【図１５】図１５は、実施形態の文字切り出し装置のハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【０００９】
以下、実施形態の文字切り出し装置、文字切り出し方法およびプログラムを、図面を参照して詳細に説明する。以下では、文字列が黒画素で表現され、背景（文字列以外）が白画素で表現された２値画像を処理対象とすることを想定する。したがって、黒画素を表す画素値が特許請求の範囲に記載の「第１の値」に相当し、白画素を表す画素値が特許請求の範囲に記載の「第２の値」に相当する。文字列が白画素で表現された２値画像を処理対象とする場合は、以下の説明において、黒画素を白画素、白画素を黒画素と置き換えて考えればよい。
【００１０】
また、以下では、２値画像に含まれる文字列は文字が横方向に並んだ文字列（横文字列）であるものとする。したがって、２値画像における横方向が特許請求の範囲に記載の「第２の方向」に相当し、２値画像における縦方向が特許請求の範囲に記載の「第１の方向」に相当する。文字が縦方向に並んだ文字列を扱う場合は、以下の説明において、横方向を縦方向、縦方向を横方向と置き換えて考えればよい。
【００１１】
＜実施形態の概要＞
まず、図１を参照して実施形態の概要を説明する。本実施形態は、文字列を含む２値画像を取得して文字切り出しを行い、文字列を構成する個別文字の画像である個別文字画像を生成して出力する。２値画像は、例えば文字列を含むカメラ画像などを２値化することにより得られる。ここで、カメラ画像における文字の鮮明性が十分でない場合、２値化の際の文字潰れにより文字間に接触成分が生じ、隣り合う文字同士が連結してしまう場合がある（図１（ａ）参照）。そして、このような接触成分が文字列に含まれている場合、文字切り出しを誤ることが多い。
【００１２】
そこで、本実施形態では、文字切り出しを行う前に、２値画像から所定の条件に当てはまる領域を接触成分として検出し、接触成分を構成する黒画素を白画素に補正することにより接触成分を除去する（図１（ｂ）参照）。そして、接触成分が除去された補正２値画像に対して文字切り出しを行う。具体的には、補正２値画像から個別文字の文字境界（開始座標と終了座標）を検出し、検出した文字境界を用いて、文字列を構成する個別文字の画像である個別文字画像を生成する（図１（ｃ）参照）。なお、文字切り出しの具体的な方法としては、例えば、黒画素の縦方向射影ヒストグラムを取り、射影値が所定の閾値を下回る位置を文字境界として個別文字画像を生成する方法など、公知の方法を利用することができる。
【００１３】
このように、本実施形態では、文字列に含まれる接触成分を除去した上で文字切り出しを行うようにしているので、画像の文字潰れなどにより文字列に接触成分が生じていたとしても、文字の切り出しを正しく行うことができる。以下では、実施形態をより具体的に説明する。
【００１４】
＜第１の実施形態＞
図２は、第１の実施形態に係る文字切り出し装置１０Ａの機能的な構成例を示すブロック図である。図２に示すように、本実施形態の文字切り出し装置１０Ａは、２値画像取得部１１と、接触成分検出部１２と、補正２値画像生成部１３と、文字境界検出部１４と、個別文字画像生成部１５と、出力部１６と、記憶部１７とを備える。
【００１５】
２値画像取得部１１は、文字列を含む２値画像Ｄ１を取得する機能である。２値画像Ｄ１は、例えばカメラ画像を２値化することにより得られる。２値画像取得部１１は、カメラ画像を受け取り、このカメラ画像に対して２値化処理を行うことで２値画像Ｄ１を取得してもよいし、すでに２値化処理された２値画像Ｄ１を受け取ってもよい。２値画像取得部１１が取得した２値画像Ｄ１は、記憶部１７に格納される。本実施形態では、上述したように、横文字列が黒画素で表現された２値画像を想定する。
【００１６】
接触成分検出部１２は、２値画像取得部１１が取得した２値画像Ｄ１から接触成分を検出する機能である。接触成分検出部１２は、記憶部１７から２値画像Ｄ１を読み出して、この２値画像Ｄ１から、以下に示す条件を満たす領域を、隣り合う２つの文字が接触している接触成分として検出する。
第１の条件：領域の上端部の縦方向における位置の変化量と、領域の下端部の縦方向における位置の変化量がともに第１の閾値以下である。
第２の条件：領域の右端部に隣接する領域外の画素（隣接画素）と、領域の左端部に隣接する領域外の画素（隣接画素）がすべて黒画素である。
第３の条件：領域の横方向の長さが予め定めた最小値以上である。
第４の条件：領域の横方向の長さが予め定めた最大値以上である。
第５の条件：領域内に画素数が第２の閾値以上の孔（白画素の塊）が含まれていない。
第６の条件：領域内に所定数以上の孔（白画素の塊）が含まれていない。
【００１７】
なお、上記の条件のうち、第１の条件および第２の条件は必須の条件であり、第３の条件、第４の条件、第５の条件、および第６の条件は、用途や要求される精度などに応じて付加されるオプショナルな条件である。
【００１８】
接触成分検出部１２は、２値画像Ｄ１から接触成分を検出すると、検出した接触成分の左端部の位置を示す開始座標および右端部の位置を示す終了座標のペアを、接触成分座標Ｄ２として記憶部１７に格納する。
【００１９】
補正２値画像生成部１３は、２値画像Ｄ１から接触成分を除去して補正２値画像Ｄ３を生成する機能である。補正２値画像生成部１３は、記憶部１７から２値画像Ｄ１および接触成分座標Ｄ２を読み出して、２値画像Ｄ１に含まれる接触成分を構成する黒画素を白画素に補正することにより接触成分を除去し、補正２値画像Ｄ３を生成する。そして、補正２値画像生成部１３は、生成した補正２値画像Ｄ３を記憶部１７に格納する。
【００２０】
文字境界検出部１４は、補正２値画像Ｄ３から文字境界を検出する機能である。文字境界検出部１４は、記憶部１７から補正２値画像Ｄ３を読み出して、この補正２値画像Ｄ３から個別文字の文字境界を検出する。そして、文字境界検出部１４は、各文字の左側の境界位置を示す開始座標と右側の境界位置を示す終了座標とのペアを、文字座標Ｄ４として記憶部１７に格納する。なお、文字境界を検出する方法は、上述した射影ヒストグラムを用いる方法など、公知の方法をいずれも利用可能であるため、詳細な説明を省略する。
【００２１】
個別文字画像生成部１５は、文字境界を用いて、補正２値画像Ｄ３から個別文字画像Ｄ５を生成する機能である。個別文字画像生成部１５は、記憶部１７から補正２値画像Ｄ３および文字座標Ｄ４を読み出して、文字座標Ｄ４を用いて、補正２値画像Ｄ３から個別文字画像Ｄ５を生成する。例えば、補正２値画像Ｄ３から各文字の開始座標と終了座標との間の領域を切り出すことにより、個別文字画像Ｄ５を生成する。そして、個別文字画像生成部１５は、生成した個別文字画像Ｄ５を記憶部１７に格納する。なお、補正２値画像Ｄ３から文字境界がすでに検出されているため、接触成分を含む２値画像Ｄ１から個別文字画像Ｄ５を生成するようにしてもよい。
【００２２】
出力部１６は、個別文字画像Ｄ５を出力する機能である。出力部１６は、個別文字画像生成部１５により生成された個別文字画像Ｄ５を記憶部１７から読み出して出力する。ここで出力とは、文字切り出し装置１０Ａが文字認識装置から独立して構成されている場合は、例えば、文字認識装置に送信したり、外部のストレージなどに格納したりすることを意味する。また、文字切り出し装置１０Ａが文字認識装置の一機能として実現される場合は、文字認識を行う処理部にデータを受け渡すことを意味する。
【００２３】
次に、以上のように構成される文字切り出し装置１０Ａの動作について説明する。図３は、文字切り出し装置１０Ａによる一連の動作を説明するフローチャートである。文字切り出し装置１０Ａの動作が開始されると、まず、２値画像取得部１１が２値画像Ｄ１を取得する（ステップＳ１０１）。次に、接触成分検出部１２が、２値画像Ｄ１を対象として接触成分検出処理を行う（ステップＳ１０２）。接触成分検出処理の詳細は後述する。
【００２４】
ステップＳ１０２の接触成分検出処理によって２値画像Ｄ１から接触成分が検出された場合は（ステップＳ１０３：Ｙｅｓ）、次に、補正２値画像生成部１３が、２値画像Ｄ１に含まれる接触成分を除去した補正２値画像Ｄ３を生成する（ステップＳ１０４）。そして、文字境界検出部１４が、補正２値画像Ｄ３から文字境界を検出する（ステップＳ１０５）。ステップＳ１０２の接触成分検出処理によって２値画像Ｄ１から接触成分が検出されない場合は（ステップＳ１０３：Ｎｏ）、文字境界検出部１４は、２値画像Ｄ１から文字境界を検出する（ステップＳ１０５）。
【００２５】
次に、個別文字画像生成部１５が、ステップＳ１０５で検出された文字境界を用いて、補正２値画像Ｄ３または２値画像Ｄ１から、個別文字画像Ｄ５を生成する（ステップＳ１０６）。そして、出力部１６が、ステップＳ１０６で生成された個別文字画像Ｄ５を出力し（ステップＳ１０７）、文字切り出し装置１０Ａによる一連の動作が終了する。
【００２６】
図４は、図３のステップＳ１０２の接触成分検出処理の概要を示すフローチャートである。接触成分検出処理が開始されると、接触成分検出部１２は、まず、２値画像Ｄ１に含まれる黒画素連結成分（周囲が白画素で囲まれた黒画素の塊）を１つ取り出す（ステップＳ２０１）。そして、接触成分検出部１２は、ステップＳ２０１で取り出した黒画素連結成分に対し、上端部および下端部の検出処理を行う（ステップＳ２０２）。黒画素連結成分の上端部および下端部の一例を図５に示す。なお、上端部および下端部の検出処理の詳細は後述する。
【００２７】
次に、接触成分検出部１２は、ステップＳ２０１で取り出した黒画素連結成分に対し、ステップＳ２０２で検出した上端部および下端部を用いて条件判定処理を行う（ステップＳ２０３）。これにより、ステップＳ２０１で取り出した黒画素連結成分に接触成分が含まれている場合は、その接触成分が検出される。接触成分は、ステップＳ２０２で検出した上端部および下端部の一部を上端部および下端部とし、縦方向にフラットな左端部および右端部を持つ、２値画像Ｄ１内の領域である。接触成分の左端部および右端部の一例を図６に示す。なお、条件判定処理の詳細は後述する。
【００２８】
次に、接触成分検出部１２は、２値画像Ｄ１に含まれるすべての黒画素連結成分を取り出したか否かを判定する（ステップＳ２０４）。そして、取り出していない黒画素連結成分があれば（ステップＳ２０４：Ｎｏ）、ステップＳ２０１に戻って以降の処理を繰り返す。一方、すべての黒画素連結成分を取り出していれば（ステップＳ２０４：Ｙｅｓ）、接触成分検出処理を終了する。
【００２９】
図７は、図４のステップＳ２０２の上端部および下端部の検出処理の一例を示すフローチャートである。以下では、画像の左上を原点とする座標系における位置で画像中の画素を表すものとする。つまり、（ｉ，ｊ）は横方向の位置がｉ、縦方向の位置がｊの画素を表す。
【００３０】
上端部および下端部の検出処理が開始されると、接触成分検出部１２は、最初に、図４のステップＳ２０１で取り出した黒画素連結成分の左端位置をｉとする（ステップＳ３０１）。そして、横方向の位置がｉである黒画素連結成分内のすべての画素のうち、縦方向の位置ｊの値が最も小さい画素（ｉ，ｊＴ）を上端画素とし（ステップＳ３０２）、縦方向の位置ｊの値が最も大きい画素（ｉ，ｊＢ）を下端画素とする（ステップＳ３０３）。なお、ｊＴとｊＢが同じ値の場合、つまり、横方向の位置がｉである画素が１つしかない場合は、その画素を上端画素および下端画素とする。
【００３１】
次に、接触成分検出部１２は、ｉの値をインクリメント（＋１）する（ステップＳ３０４）。そして、ｉが黒画素連結成分外か否か、つまりｉの値が黒画素連結成分の右端位置の値よりも大きいか否かを判定する（ステップＳ３０５）。ここで、ｉが黒画素連結成分内であれば（ステップＳ３０５：Ｎｏ）、接触成分検出部１２は、ステップＳ３０２に戻って以降の処理を繰り返す。一方、ｉが黒画素連結成分外であれば（ステップＳ３０５：Ｙｅｓ）、接触成分検出部１２は、それまでに検出した上端画素（ｉ，ｊＴ）の集合を黒画素連結成分の上端部、下端画素（ｉ，ｊＢ）の集合を黒画素連結成分の下端部として登録し（ステップＳ３０６）、上端部および下端部の検出処理を終了する。
【００３２】
図８は、図４のステップＳ２０３の条件判定処理の一例を示すフローチャートである。条件判定処理が開始されると、接触成分検出部１２は、最初に、図４のステップＳ２０１で取り出した黒画素連結成分の左端位置をｉとする（ステップＳ４０１）。そして、ｉを仮の開始位置ｉＳとする（ステップＳ４０２）。
【００３３】
次に、接触成分検出部１２は、開始位置ｉＳを基準として、上端部または下端部の縦方向変化量が第１の閾値Ｔｈ１を超える位置ｉＸを探索する（ステップＳ４０３）。そして、ｉＸが検出された場合（ステップＳ４０４：Ｙｅｓ）、ｉＸ−１を仮の終了位置ｉＥとする（ステップＳ４０５）。ｉＸが検出されない場合は（ステップＳ４０４：Ｎｏ）、ｉの値をインクリメント（＋１）し（ステップＳ４１２）、ステップＳ４０２に戻って以降の処理を繰り返す。なお、ｉＸが検出されずに開始位置ｉＳが黒画素連結成分の右端位置となった場合は、図４のステップＳ２０１で取り出した黒画素連結成分に対する条件判定処理を終了する。
【００３４】
ステップＳ４０３におけるｉＸの探索は、例えば以下のように行うことができる。すなわち、注目する横方向の位置（以下、「注目位置ｉＮ」と呼ぶ）を開始位置ｉＳから右側に１つずつシフトしながら、開始位置ｉＳの上端画素（ｉＳ，ｊＴ）と注目位置ｉＮの上端画素（ｉＮ，ｊＴ）との間のｊＴの差分ΔｊＴ、および、開始位置ｉＳの下端画素（ｉＳ，ｊＢ）と注目位置ｉＮの下端画素（ｉＮ，ｊＢ）との間のｊＢの差分ΔｊＢをそれぞれ算出する。そして、ΔｊＴとΔｊＢのいずれかが第１の閾値Ｔｈ１を超えた場合に、そのときの注目位置ｉＮをｉＸとし、ｉＸ−１を仮の終了位置ｉＥとする。第１の閾値Ｔｈ１は、予め定めた固定の値であってもよいし、２値画像Ｄ１の画素数などに応じて変更される可変の値であってもよいが、接触成分の平坦性に鑑みて十分に小さい値に設定される。なお、上記のステップＳ４０２からステップＳ４０５において仮の開始位置ｉＳおよび仮の終了位置ｉＥを求める処理が、上述した第１の条件を満たす領域を検出する処理に相当する。
【００３５】
次に、接触成分検出部１２は、（ｉＳ−１，ｊＴ）から（ｉＳ−１，ｊＢ）がすべて黒画素、かつ、（ｉＥ＋１，ｊＴ）から（ｉＥ＋１，ｊＢ）がすべて黒画素であるか否かを判定する（ステップＳ４０６）。すなわち、仮の開始位置ｉＳを横方向の位置とする黒画素連結内の画素に対して左方向に隣接する隣接画素がすべて黒画素であり、かつ、仮の終了位置ｉＥを横方向の位置とする黒画素連結内の画素に対して右方向に隣接する隣接画素がすべて黒画素であるか否かを判定する。このステップＳ４０６の判定は、上述した第２の条件を満たすか否かの判定に相当する。
【００３６】
そして、（ｉＳ−１，ｊＴ）から（ｉＳ−１，ｊＢ）がすべて黒画素、かつ、（ｉＥ＋１，ｊＴ）から（ｉＥ＋１，ｊＢ）がすべて黒画素である場合（ステップＳ４０６：Ｙｅｓ）、接触成分検出部１２は、次に、仮の開始位置ｉＳと仮の終了位置ｉＥとの間の長さ（ｉＥ−ｉＳ）が予め定めた最小値ＬＭＩＮ以上であるか否かを判定する（ステップＳ４０７）。このステップＳ４０７の判定は、上述した第３の条件を満たすか否かの判定に相当する。
【００３７】
そして、ｉＥ−ｉＳがＬＭＩＮ以上である場合（ステップＳ４０７：Ｙｅｓ）、接触成分検出部１２は、次に、仮の開始位置ｉＳと仮の終了位置ｉＥとの間の長さ（ｉＥ−ｉＳ）が予め定めた最大値ＬＭＡＸ以下であるか否かを判定する（ステップＳ４０８）。このステップＳ４０８の判定は、上述した第４の条件を満たすか否かの判定に相当する。
【００３８】
そして、ｉＥ−ｉＳがＬＭＡＸ以下である場合（ステップＳ４０８：Ｙｅｓ）、接触成分検出部１２は、次に、仮の開始位置ｉＳと仮の終了位置ｉＥとの間の領域内に、画素数が第２の閾値Ｔｈ２以上となる孔（白画素の塊）がないかどうかを判定する（ステップＳ４０９）。このステップＳ４０９の判定は、上述した第５の条件を満たすか否かの判定に相当する。
【００３９】
そして、画素数が第２の閾値Ｔｈ２以上となる孔が領域内にない場合（ステップＳ４０９：Ｙｅｓ）、接触成分検出部１２は、次に、仮の開始位置ｉＳと仮の終了位置ｉＥとの間の領域内に、所定数以上の孔がないかどうかを判定する（ステップＳ４１０）。このステップＳ４１０の判定は、上述した第６の条件を満たすか否かの判定に相当する。
【００４０】
そして、所定数以上の孔が領域内にない場合（ステップＳ４１０：Ｙｅｓ）、つまり、ステップＳ４０６からステップＳ４１０までの判定結果がすべてＹｅｓの場合、接触成分検出部１２は、仮の開始位置ｉＳを開始座標、仮の終了位置ｉＥを終了座標とする接触成分座標Ｄ２を記憶部１７に格納する（ステップＳ４１１）。一方、ステップＳ４０６からステップＳ４１０のいずれかで判定結果がＮｏの場合は、ｉの値をインクリメント（＋１）し（ステップＳ４１２）、ステップＳ４０２に戻って以降の処理を繰り返す。
【００４１】
ステップＳ４１１で接触成分座標Ｄ２を記憶部１７に格納した場合、接触成分検出部１２は、次に、接触成分の終了座標ｉＥの右隣りの位置ｉＸをｉとし（ステップＳ４１３）、ｉが黒画素連結成分外か否か、つまりｉの値が黒画素連結成分の右端位置の値よりも大きいか否かを判定する（ステップＳ４１４）。ここで、ｉが黒画素連結成分内であれば（ステップＳ４１４：Ｎｏ）、接触成分検出部１２は、ステップＳ４０２に戻って以降の処理を繰り返す。一方、ｉが黒画素連結成分外であれば（ステップＳ４１４：Ｙｅｓ）、条件判定処理を終了する。
【００４２】
なお、図８に例示する条件判定処理は、上述した第１の条件から第６の条件をすべて満たす領域を接触成分として検出する場合の例を示している。第３の条件から第６の条件のいずれかを考慮しない場合は、その条件に対応するステップの判定を省略すればよい。
【００４３】
以上、具体的な例を挙げながら詳細に説明したように、本実施形態の文字切り出し装置１０Ａは、２値画像Ｄ１から接触成分を検出して、この接触成分を除去した補正２値画像Ｄ３を生成する。そして、補正２値画像Ｄ３から文字境界を検出し、個別文字画像Ｄ５を生成して出力する。したがって、本実施形態によれば、画像の文字潰れなどにより文字列に接触成分が生じていたとしても、文字の切り出しを正しく行うことができる。例えば、２値画像Ｄ１に含まれる文字列が数字の羅列などのように意味を持たず、知識処理などの後処理によって個別文字の誤認識を修正できない場合に、本実施形態は特に有効である。
【００４４】
＜第２の実施形態＞
図９は、第２の実施形態に係る文字切り出し装置１０Ｂの機能的な構成例を示すブロック図である。図９に示すように、本実施形態の文字切り出し装置１０Ｂは、図２に示した第１の実施形態に係る文字切り出し装置１０Ａの構成に対して、接触成分調整部１８が追加された構成である。以下では、第１の実施形態と異なる部分についてのみ説明する。
【００４５】
接触成分調整部１８は、予め定めた文字幅（文字サイズ）の最小値ＷＭＩＮに基づいて、接触成分検出部１２により検出された接触成分の開始座標または終了座標を調整する機能である。接触成分調整部１８は、記憶部１７から文字座標Ｄ４を読み出し、各文字の開始座標と終了座標とから文字幅を算出する。そして、文字幅が最小値ＷＭＩＮに満たない文字があれば、その文字に隣接する接触成分の文字側の端部の位置（開始座標または終了座標）を、文字幅が最小値ＷＭＩＮに達するように調整して、記憶部１７に格納された接触成分座標Ｄ２を更新する。
【００４６】
接触成分調整部１８により接触成分座標Ｄ２が更新された場合、補正２値画像生成部１３は、更新後の接触成分座標Ｄ２を用いて補正２値画像Ｄ３を新たに生成し、記憶部１７に格納された補正２値画像Ｄ３を更新する。そして、文字境界検出部１４は、この新たに生成された補正２値画像Ｄ３から文字境界を検出し、記憶部１７に格納された文字座標Ｄ４を更新する。これにより、文字の一部を接触成分として誤検出することにより文字切り出しを誤る不都合を有効に抑制できる。
【００４７】
図１０は、第２の実施形態の概要を説明する図であり、数字の「０」と「４」が接触成分により連結されている場合の例を示している。図１０（ａ）の黒画素連結成分から接触成分を検出して除去した結果、図１０（ｂ）に示すように、「４」の左側の一部が接触成分として過度に除去されてしまう場合がある。このような場合、文字境界として検出される「４」の開始座標が本来の位置から右側にシフトするため、図１０（ｃ）に示すように、文字幅が最小値より小さくなる。本実施形態では、このような場合に、図１０（ｄ）に示すように「４」の文字幅が最小値に達するまで「４」に隣接する接触成分の終了座標を調整する。これにより、「４」の開始座標を本来の位置に近づくように修正することができる。
【００４８】
図１１は、接触成分調整部１８による処理手順の一例を示すフローチャートである。この図１１に示す接触成分調整部１８による処理は、文字境界検出部１４により補正２値画像Ｄ３から個別文字の文字境界が検出され、記憶部１７に文字座標Ｄ４が格納された後に実施される。
【００４９】
図１１に示す処理が開始されると、接触成分調整部１８は、まず、記憶部１７から文字座標Ｄ４（すべての文字の開始座標および終了座標）と接触成分座標Ｄ２（すべての接触成分の開始座標および終了座標）を読み出す（ステップＳ５０１）。そして、接触成分調整部１８は、文字座標Ｄ４で示される文字を１つ取り出す（ステップＳ５０２）。
【００５０】
次に、接触成分調整部１８は、ステップＳ５０２で取り出した文字の開始座標Ｓと終了座標Ｅから文字幅Ｗ＝Ｅ−Ｓを算出する（ステップＳ５０３）。そして、接触成分調整部１８は、ステップＳ５０３で算出した文字幅Ｗが予め定めた文字幅の最小値ＷＭＩＮ未満であるか否かを判定する（ステップＳ５０４）。ここで、ＷがＷＭＩＮ以上であれば（ステップＳ５０４：Ｎｏ）、ステップＳ５１１に進む。
【００５１】
一方、ＷがＷＭＩＮ未満である場合（ステップＳ５０４：Ｙｅｓ）、接触成分調整部１８は、Ｓ−１を終了座標とする接触成分Ｌ、すなわちステップＳ５０２で取り出した文字の左側に隣接する接触成分Ｌがあるか否かを判定する（ステップＳ５０５）。そして、接触成分Ｌがある場合は（ステップＳ５０５：Ｙｅｓ）、さらにＥ＋１を開始座標とする接触成分Ｒ、すなわちステップＳ５０２で取り出した文字の右側に隣接する接触成分Ｒがあるか否かを判定する（ステップＳ５０６）。
【００５２】
ここで、接触成分Ｒがある場合（ステップＳ５０６：Ｙｅｓ）、接触成分調整部１８は、接触成分Ｌの横方向長さと接触成分Ｒの横方向長さとを比較し（ステップＳ５０７）、接触成分Ｌの横方向長さの方が長ければ（ステップＳ５０７：Ｙｅｓ）、文字の開始座標ＳをＳ−（ＷＭＩＮ−Ｗ）とし、接触成分Ｌの終了座標Ｓ−１を変更して（ステップＳ５０８）、ステップＳ５１１に進む。また、ステップＳ５０６において接触成分Ｒがないと判定した場合も（ステップＳ５０６：Ｎｏ）、ステップＳ５０８において、文字の開始座標ＳをＳ−（ＷＭＩＮ−Ｗ）とし、接触成分Ｌの終了座標Ｓ−１を変更して、ステップＳ５１１に進む。
【００５３】
また、ステップＳ５０５において接触成分Ｌがないと判定した場合、接触成分調整部１８は、接触成分Ｒがあるか否かを判定する（ステップＳ５０９）。ここで、接触成分Ｒがなければ（ステップＳ５０９：Ｎｏ）、ステップＳ５１１に進む。一方、接触成分Ｒがあれば（ステップＳ５０９：Ｙｅｓ）、文字の終了座標ＥをＳ＋（ＷＭＩＮ−Ｗ）とし、接触成分Ｒの開始座標Ｓ＋１を変更して（ステップＳ５１０）、ステップＳ５１１に進む。また、ステップＳ５０７において接触成分Ｒの横方向長さの方が長いと判定した場合も（ステップＳ５０７：Ｎｏ）、ステップＳ５１０において、文字の終了座標ＥをＳ＋（ＷＭＩＮ−Ｗ）とし、接触成分Ｒの開始座標Ｓ＋１を変更して、ステップＳ５１１に進む。
【００５４】
次に、接触成分調整部１８は、文字座標Ｄ４により示されるすべての文字を取り出したか否かを判定する（ステップＳ５１１）。そして取り出していない文字があれば（ステップＳ５１１：Ｎｏ）、ステップＳ５０２に戻って以降の処理を繰り返す。一方、すべての文字を取り出していれば（ステップＳ５１１：Ｙｅｓ）、図１１に示す一連の処理を終了する。
【００５５】
以上、具体的な例を挙げながら説明したように、本実施形態の文字切り出し装置１０Ｂは、補正２値画像Ｄ３から検出した文字境界で示される文字幅が最小値に満たない場合に、その文字の文字幅が最小値に達するように隣接する接触成分の端部の位置を調整する。そして、このような接触成分の調整を行った場合は、補正２値画像Ｄ３を新たに生成して文字境界の検出を再度行う。したがって、本実施形態によれば、文字の一部を接触成分として誤検出することにより文字切り出しを誤る不都合を有効に抑制できる。
【００５６】
＜第３の実施形態＞
図１２は、第３の実施形態に係る文字切り出し装置１０Ｃの機能的な構成例を示すブロック図である。図１２に示すように、本実施形態の文字切り出し装置１０Ｃは、図２に示した第１の実施形態に係る文字切り出し装置１０Ａの構成に対して、候補文字画像生成部１９が追加され、出力部１６が出力部１６Ｃに変更された構成である。以下では、第１の実施形態と異なる部分についてのみ説明する。
【００５７】
候補文字画像生成部１９は、個別文字画像生成部１５が生成した個別文字画像Ｄ５に対して、接触成分検出部１２が検出した接触成分を付加した候補文字画像Ｄ６を生成する機能である。候補文字画像生成部１９は、記憶部１７から、２値画像Ｄ１、接触成分座標Ｄ２、文字座標Ｄ４、および個別文字画像Ｄ５を読み出す。そして、接触成分座標Ｄ２に基づいて、２値画像Ｄ１から接触成分に相当する画像を切り出す。また、接触成分座標Ｄ２と文字座標Ｄ４とに基づいて、接触成分の左右の個別文字を特定する。そして、接触成分の左右の個別文字を表す個別文字画像Ｄ５に対して接触成分に相当する画像をそれぞれ付加することで候補文字画像Ｄ６を生成し、生成した候補文字画像Ｄ６を記憶部１７に格納する。
【００５８】
出力部１６Ｃは、個別文字画像Ｄ５と候補文字画像Ｄ６との組み合わせを出力する機能である。出力部１６Ｃは、記憶部１７から個別文字画像Ｄ５と候補文字画像Ｄ６とをすべて読み出し、すべての個別文字画像Ｄ５と候補文字画像Ｄ６との組み合わせを生成して出力する。
【００５９】
本実施形態の概要を図１３および図１４を用いて説明する。図１３は、２値画像Ｄ１に含まれる黒画素連結成分の一例を示す図であり、図１４は、図１３に示す黒画素連結成分から生成される個別文字画像Ｄ５と候補文字画像Ｄ６のすべての組み合わせを説明する図である。なお、以下では、接触成分と文字を（開始座標，終了座標）で表現するものとする。
【００６０】
図１３に例示する黒画素連結成分は、数字の「６」と「４」と「３」が左から順に並んだ文字列を表し、左側の「６」と中央の「４」、中央の「４」と右側の「３」がそれぞれ接触成分により連結されている例である。ここで、接触成分検出部１２により、接触成分（ｌ２，ｌ３）と、接触成分（ｌ４，ｌ５）が検出されたものとする。また、文字境界検出部１４の処理によって、文字（ｌ１，ｌ２）と、文字（ｌ３，ｌ４）と、文字（ｌ５，ｌ６）が検出されたとする。
【００６１】
この場合、候補文字画像生成部１９は、接触成分（ｌ２，ｌ３）の画像を文字（ｌ１，ｌ２）の個別文字画像Ｄ５の右側に付加することにより、文字（ｌ１，ｌ３）の候補文字画像Ｄ６を生成する。また、候補文字画像生成部１９は、接触成分（ｌ２，ｌ３）の画像を文字（ｌ３，ｌ４）の個別文字画像Ｄ５の左側に付加することにより、文字（ｌ２，ｌ４）の候補文字画像Ｄ６を生成する。また、候補文字画像生成部１９は、接触成分（ｌ４，ｌ５）の画像を文字（ｌ３，ｌ４）の個別文字画像Ｄ５の右側に付加することにより、文字（ｌ３，ｌ５）の候補文字画像Ｄ６を生成する。また、候補文字画像生成部１９は、接触成分（ｌ２，ｌ３）の画像を文字（ｌ３，ｌ４）の個別文字画像Ｄ５の左側に付加するとともに、接触成分（ｌ４，ｌ５）の画像を文字（ｌ３，ｌ４）の個別文字画像Ｄ５の右側に付加することにより、文字（ｌ２，ｌ４）の候補文字画像Ｄ６を生成する。また、候補文字画像生成部１９は、接触成分（ｌ４，ｌ５）の画像を文字（ｌ５，ｌ６）の個別文字画像Ｄ５の左側に付加することにより、文字（ｌ４，ｌ６）の候補文字画像Ｄ６を生成する。
【００６２】
個別文字画像生成部１５に生成された３つの個別文字画像Ｄ５に対し、候補文字画像生成部１９により生成された上記の５つの候補文字画像Ｄ６を組み合わせると、図１４（ａ）および図１４（ｂ）」に示すように、その組み合わせは９通りになる。出力部１６Ｃは、このような個別文字画像Ｄ５と候補文字画像Ｄ６との９通りの組み合わせを生成して出力する。
【００６３】
以上、具体的な例を挙げながら説明したように、本実施形態の文字切り出し装置１０Ｃは、個別文字画像Ｄ５に対して接触成分を付加した候補文字画像Ｄ６を生成し、個別文字画像Ｄ５と候補文字画像Ｄ６との組み合わせを出力するようにしている。したがって、本実施形態によれば、文字の一部を接触成分として誤検出した場合でも、後段の文字認識処理において候補文字画像Ｄ６も用いることができるので、接触成分の誤検出に起因する認識精度の低下を有効に抑制することができる。
【００６４】
＜補足説明＞
以上説明した各実施形態の文字切り出し装置１０Ａ，１０Ｂ，１０Ｃ（以下、「文字切り出し装置１０」と総称する）の機能的な構成要素（２値画像取得部１１、接触成分検出部１２、補正２値画像生成部１３、文字境界検出部１４、個別文字画像生成部１５、出力部１６、記憶部１７、接触成分調整部１８、候補文字画像生成部１９）は、一例として、ハードウェアと協働して動作するソフトウェア（プログラム）での実装が可能である。上記の機能的な構成要素をソフトウェアで実装する場合、文字切り出し装置１０は、例えば図１５に示すように、ＣＰＵ（Central  Processing  Unit）１０１などのハードウェアプロセッサ、ＲＯＭ（Read  Only  Memory）１０２やＲＡＭ（Random  Access  Memory）１０３などの記憶装置、表示パネルや各種操作デバイスが接続される入出力Ｉ／Ｆ１０４、ネットワークに接続して通信を行う通信Ｉ／Ｆ１０５、各部を接続するバス１０６などを備えた、通常のコンピュータを利用したハードウェア構成とすることができる。
【００６５】
文字切り出し装置１０で実行されるプログラムは、例えば、インストール可能な形式または実行可能な形式のファイルでＣＤ−ＲＯＭ（Compact  Disk  Read  Only  Memory）、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ（Compact  Disk  Recordable）、ＤＶＤ（Digital  Versatile  Disc）などのコンピュータで読み取り可能な記録媒体に記録されてコンピュータプログラムプロダクトとして提供される。
【００６６】
また、文字切り出し装置１０で実行されるプログラムを、インターネットなどのネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、文字切り出し装置１０で実行されるプログラムをインターネットなどのネットワーク経由で提供または配布するように構成してもよい。また、文字切り出し装置１０で実行されるプログラムを、ＲＯＭ１０２等に予め組み込んで提供するように構成してもよい。
【００６７】
文字切り出し装置１０で実行されるプログラムは、文字切り出し装置１０の機能的な構成要素を含むモジュール構成となっており、実際のハードウェアとしては、例えば、ＣＰＵ１０１（ハードウェアプロセッサ）が上記記録媒体からプログラムを読み出して実行することにより、上述した構成要素がＲＡＭ１０３（主記憶）上にロードされ、上述した各構成要素がＲＡＭ１０３（主記憶）上に生成されるようになっている。なお、文字切り出し装置１０は、上述した機能的な構成要素の一部または全部を、ＣＰＵ１０１のような汎用のプロセッサではなく、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field-Programmable  Gate  Array）などの専用のハードウェアを用いて実現することも可能である。
【００６８】
以上、本発明の実施形態を説明したが、ここで説明した実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。ここで説明した新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。ここで説明した実施形態やその変形は、発明の範囲や要旨に含まれるとともに、請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００６９】
１０Ａ，１０Ｂ，１０Ｃ  文字切り出し装置
１１  ２値画像取得部
１２  接触成分検出部
１３  補正２値画像生成部
１４  文字境界検出部
１５  個別文字画像生成部
１６  出力部
１７  記憶部
１８  接触成分調整部
１９  候補文字画像生成部
Ｄ１  ２値画像
Ｄ２  接触成分座標
Ｄ３  補正２値画像
Ｄ４  文字座標
Ｄ５  個別文字画像
【図１】
2018022423.tif 000003
【図２】
2018022423.tif 000004
【図３】
2018022423.tif 000005
【図４】
2018022423.tif 000006
【図５】
2018022423.tif 000007
【図６】
2018022423.tif 000008
【図７】
2018022423.tif 000009
【図８】
2018022423.tif 000010
【図９】
2018022423.tif 000011
【図１０】
2018022423.tif 000012
【図１１】
2018022423.tif 000013
【図１２】
2018022423.tif 000014
【図１３】
2018022423.tif 000015
【図１４】
2018022423.tif 000016
【図１５】
2018022423.tif 000017