(57)【要約】【課題】文字認識における行切り出しにおいて、過分割された行を適切な基準で統合し、正しい行切り出し結果を得る。【解決手段】第２の行切り出し部３は、第１の行切り出し部２が切り出した行の中から基準となる基準行を抽出し、隣りあう複数の行を統合した行内の黒画素連結矩形数が所定の数以下で、隣りあう複数の行を統合した行高さが概ね前記基準行の高さに等しいか、あるいは低い場合、これら複数行を１つの行に統合する。【選択図】      図１
2004151781.tif 000002
【特許請求の範囲】
【請求項１】
文字認識装置における文書画像中の行を切り出す行切り出し装置であって、文書画像中の行を切り出して行情報を作成する第１の行切り出し手段と、第１の行切り出し手段が切り出した行の行情報を修正する第２の行切り出し手段とを備えたことを特徴とする行切り出し装置。
【請求項２】
前記第２の行切り出し手段は、隣りあう複数の行を統合して行情報を修正することを特徴とする請求項１記載の行切り出し装置。
【請求項３】
前記第２の行切り出し手段は、前記第１の行切り出し手段が切り出した行の中から基準となる基準行を抽出し、該抽出された基準行の行情報を用いて前記切り出された行の行情報を修正することを特徴とする請求項１または２記載の行切り出し装置。
【請求項４】
前記第２の行切り出し手段は、隣りあう複数の行を統合した行高さが概ね前記基準行の高さに等しいか、あるいは低い場合、前記複数行を１つの行に統合することを特徴とする請求項３記載の行切り出し装置。
【請求項５】
前記第２の行切り出し手段は、隣りあう複数の行を統合した行の位置が概ね基準行の行頭位置である場合、前記複数行を１つの行に統合することを特徴とする請求項３記載の行切り出し装置。
【請求項６】
前記第２の行切り出し手段は、隣りあう複数の行を統合した行内の黒画素連結矩形数が所定の数以下の場合、前記複数行を１つの行に統合することを特徴とする請求項１または２記載の行切り出し装置。
【請求項７】
前記第２の行切り出し手段は、隣りあう複数の行を統合した行内の文字数が所定の数以下の場合、前記複数行を１つの行に統合することを特徴とする請求項１または２記載の行切り出し装置。
【請求項８】
前記第２の行切り出し手段は、隣りあう複数の行を統合した行内の黒画素連結矩形数が所定の数以下で、隣りあう複数の行を統合した行高さが概ね前記基準行の高さに等しいか、あるいは低い場合、前記複数行を１つの行に統合することを特徴とする請求項３記載の行切り出し装置。
【請求項９】
文字認識装置における文書画像中の行を切り出す行切り出し方法であって、文書画像中の行を切り出して行情報を作成する行切り出しステップと、該行切り出しステップが切り出した行の中から基準となる基準行を抽出するステップと、隣りあう複数の行を統合した行情報を求めるステップと、該行情報を前記基準行の行情報と比較し、所定の条件を満たした時、前記複数の行を１つの行に統合すべく前記複数の行の行情報を修正するステップとを備えたことを特徴とする行切り出し方法。
【請求項１０】
文字認識装置における文書画像中の行を切り出す行切り出しプログラムであって、コンピュータを、文書画像中の行を切り出して行情報を作成する第１の行切り出し手段と、第１の行切り出し手段が切り出した行の行情報を修正する第２の行切り出し手段として機能させることを特徴とする行切り出しプログラム。
【請求項１１】
前記第２の行切り出し手段は、隣りあう複数の行を統合して行情報を修正することを特徴とする請求項１０記載の行切り出しプログラム。
【請求項１２】
前記第２の行切り出し手段は、前記第１の行切り出し手段が切り出した行の中から基準となる基準行を抽出し、該抽出された基準行の行情報を参照して前記切り出された行の行情報を修正することを特徴とする請求項１０または１１記載の行切り出しプログラム。
【請求項１３】
前記第２の行切り出し手段は、隣りあう複数の行を統合した行高さが概ね前記基準行の高さに等しいか、あるいは低い場合、前記複数行を１つの行に統合することを特徴とする請求項１２記載の行切り出しプログラム。
【請求項１４】
前記第２の行切り出し手段は、隣りあう複数の行を統合した行の位置が概ね基準行の行頭位置である場合、前記複数行を１つの行に統合することを特徴とする請求項１２記載の行切り出しプログラム。
【請求項１５】
前記第２の行切り出し手段は、隣りあう複数の行を統合した行内の黒画素連結矩形数が所定の数以下の場合、前記複数行を１つの行に統合することを特徴とする請求項１０または１１記載の行切り出しプログラム。
【請求項１６】
前記第２の行切り出し手段は、隣りあう複数の行を統合した行内の文字数が所定の数以下の場合、前記複数行を１つの行に統合することを特徴とする請求項１０または１１記載の行切り出しプログラム。
【請求項１７】
前記第２の行切り出し手段は、隣りあう複数の行を統合した行内の黒画素連結矩形数が所定の数以下で、隣りあう複数の行を統合した行高さが概ね前記基準行の高さに等しいか、あるいは低い場合、前記複数行を１つの行に統合することを特徴とする請求項１２記載の行切り出しプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、文字認識装置における行切出しに関する。
【０００２】
【従来の技術】
文字認識装置における行切出しの一手法として、黒画素の連結成分を順次統合していく手法がある（例えば特許２８９５１２２号公報）、この方法は射影を用いる方法（例えば特開２０００−１１３１０８公報）などと比較すると、画像（原稿）の傾き（スキュー）に対して頑強であるという利点がある。
【特許文献１】特許２８９５１２２号公報
【特許文献２】特開２０００−１１３１０８公報
【０００３】
【発明が解決しようとする課題】
しかしながら、黒画素の連結成分を順次統合していく手法では、行内の文字数が少ない場合に、行内の文字が上下／左右分離文字（例えば横書きなら「う」、「え」など、縦書きなら「い」、「り」など）であると、本来１つの行として扱われるべき行が複数の行に分割されてしまうことがあった。その例を図を用いて説明する。図９および図１０は行の過剰分割を示す図で、図９には行矩形および文字矩形が示されている。また図１０には、行の分割がわかり易いように、文字矩形を除いた行矩形のみが示されている。この例では、２行目の「う。」の行の「う」の上の点が分離して、２つの行に分割された行切り出し結果となっている。また、縦書きの場合では、「い」、「り」などの文字では同様のことがおこる。
図１１および図１２は行が適正に分割された例を示す図で、図９および図１０と同様に、図１１には行矩形および文字矩形が、また図１２には行の分割がわかり易いように、文字矩形を除いた行矩形のみが示されている。
本発明は、図９および図１０のように過分割された行を、適切な基準で統合し、図１１および図１２に示すような正しい行切り出し結果を得ることを目的とする。
【０００４】
【課題を解決するための手段】
上記の課題を解決するために、本発明の請求項１は、文字認識装置における文書画像中の行を切り出す行切り出し装置であって、文書画像中の行を切り出して行情報を作成する第１の行切り出し手段と、第１の行切り出し手段が切り出した行の行情報を修正する第２の行切り出し手段とを備えたことを特徴とする。
また、本発明の請求項２は、請求項１記載の行切り出し装置において、前記第２の行切り出し手段は、隣りあう複数の行を統合して行情報を修正することを特徴とする。
即ち、第１の行切り出し手段で過分割がある場合、第２の行切り出し手段で過分割された行を統合して、行情報の修正を行うことにより適正な行切り出し結果を得る。
また、本発明の請求項３は、請求項１または２記載の行切り出し装置において、前記第２の行切り出し手段は、前記第１の行切り出し手段が切り出した行の中から基準となる基準行を抽出し、該抽出された基準行の行情報を用いて前記切り出された行の行情報を修正することを特徴とする。
即ち、第１の行切り出し手段が切り出した行の中から基準となる基準行を抽出して、標準的な行の高さ、行頭位置等の情報を参照して行統合を行い適正な行切り出し結果を得る。
また、本発明の請求項４は、請求項３記載の行切り出し装置において、前記第２の行切り出し手段は、隣りあう複数の行を統合した行高さが概ね前記基準行の高さに等しいか、あるいは低い場合、前記複数行を１つの行に統合することを特徴とする。
即ち、統合したと仮定した行の高さが基準行より高い場合は、統合してはならない、本来は別の行である可能性が高いが、過分割された行は統合すると概ね基準行の高さになるので、行統合を行い適正な行切り出し結果を得ることができる。
【０００５】
また、本発明の請求項５は、請求項３記載の行切り出し装置において、前記第２の行切り出し手段は、隣りあう複数の行を統合した行の位置が概ね基準行の行頭位置である場合、前記複数行を１つの行に統合することを特徴とする。
また、本発明の請求項６は、請求項１または２記載の行切り出し装置において、前記第２の行切り出し手段は、隣りあう複数の行を統合した行内の黒画素連結矩形数が所定の数以下の場合、前記複数行を１つの行に統合することを特徴とする。
また、本発明の請求項７は、請求項１または２記載の行切り出し装置において、前記第２の行切り出し手段は、隣りあう複数の行を統合した行内の文字数が所定の数以下の場合、前記複数行を１つの行に統合することを特徴とする。
また、本発明の請求項８は、請求項３記載の行切り出し装置において、前記第２の行切り出し手段は、隣りあう複数の行を統合した行内の黒画素連結矩形数が所定の数以下で、隣りあう複数の行を統合した行高さが概ね前記基準行の高さに等しいか、あるいは低い場合、前記複数行を１つの行に統合することを特徴とする。
即ち、１行中の文字数が少ないとき、分離文字が行頭にきて行が過分割されていると考えられ、これらの行統合を行うことにより適正な行切り出し結果を得ることができる。
また、本発明の請求項９は、文字認識装置における文書画像中の行を切り出す行切り出し方法であって、文書画像中の行を切り出して行情報を作成する行切り出しステップと、該行切り出しステップが切り出した行の中から基準となる基準行を抽出するステップと、隣りあう複数の行を統合した行情報を求めるステップと、該行情報を前記基準行の行情報と比較し、所定の条件を満たした時、前記複数の行を１つの行に統合すべく前記複数の行の行情報を修正するステップとを備えたことを特徴とする。
即ち、過分割された行を統合した時の行情報を、基準行の行情報と比較することにより、誤った行の統合を回避でき、適正な行切り出し結果を得ることができる。
【０００６】
また、本発明の請求項１０は、文字認識装置における文書画像中の行を切り出す行切り出しプログラムであって、コンピュータを、文書画像中の行を切り出して行情報を作成する第１の行切り出し手段と、第１の行切り出し手段が切り出した行の行情報を修正する第２の行切り出し手段として機能させることを特徴とする。
また、本発明の請求項１１は、請求項１０記載の行切り出しプログラムにおいて、前記第２の行切り出し手段は、隣りあう複数の行を統合して行情報を修正することを特徴とする。
また、本発明の請求項１２は、請求項１０または１１記載の行切り出しプログラムにおいて、前記第２の行切り出し手段は、前記第１の行切り出し手段が切り出した行の中から基準となる基準行を抽出し、該抽出された基準行の行情報を参照して前記切り出された行の行情報を修正することを特徴とする。
また、本発明の請求項１３は、請求項１２記載の行切り出しプログラムにおいて、前記第２の行切り出し手段は、隣りあう複数の行を統合した行高さが概ね前記基準行の高さに等しいか、あるいは低い場合、前記複数行を１つの行に統合することを特徴とする。
また、本発明の請求項１４は、請求項１２記載の行切り出しプログラムにおいて、前記第２の行切り出し手段は、隣りあう複数の行を統合した行の位置が概ね基準行の行頭位置である場合、前記複数行を１つの行に統合することを特徴とする。
また、本発明の請求項１５は、請求項１０または１１記載の行切り出しプログラムにおいて、前記第２の行切り出し手段は、隣りあう複数の行を統合した行内の黒画素連結矩形数が所定の数以下の場合、前記複数行を１つの行に統合することを特徴とする。
また、本発明の請求項１６は、請求項１０または１１記載の行切り出しプログラムにおいて、前記第２の行切り出し手段は、隣りあう複数の行を統合した行内の文字数が所定の数以下の場合、前記複数行を１つの行に統合することを特徴とする。
また、本発明の請求項１７は、請求項１２記載の行切り出しプログラムにおいて、前記第２の行切り出し手段は、隣りあう複数の行を統合した行内の黒画素連結矩形数が所定の数以下で、隣りあう複数の行を統合した行高さが概ね前記基準行の高さに等しいか、あるいは低い場合、前記複数行を１つの行に統合することを特徴とする。
【０００７】
【発明の実施の形態】
以下、図面を参照して、本発明の実施の形態を説明する。
図１は、本発明の行切出し装置の機能構成を示すブロック図である。図１において、画像入力部１はスキャナ等で構成され、原稿から画像データを読取る部分である。画像入力部１においては、画像データを第１の行切出し部２へ入力する際、画像データと共に認識対象領域のデータを与えても良い。認識対象領域が与えられた場合には、与えられた領域内のみを行切出しの対象とすれば良い。
第１の行切出し部２は、画像入力部１で得た画像データを解析して行切出しを行う部分で、従来提案されている手法で行を切り出す。射影を用いる方法などさまざまな手法が提案されているが、ここでは特許２８９５１２２号公報に示されている手法を用いて行を切り出すものとする。特許２８９５１２２号公報に示された手法で行の切出しを行った場合、行矩形の座標と、行内の矩形（黒画素連結成分の外接矩形）の座標が第１の行切出し部２から出力され、第２の行切出し部３に送られる。第１の行切出し部２はコンピュータプログラムで実現する。
第２の行切出し部３は、第１の行切出し部２が切り出した行情報を修正する部分である。第１の行切出し部２と同様にコンピュータプログラムで実現する。
行出力部４は修正された行情報等を、ここでは図示しない文字認識装置の文字切り出し部に渡す部分である。この行出力部４もコンピュータプログラムで実現する。なお、画像入力部１もスキャナの制御や原稿の画像化処理等はコンピュータプログラムで実現している。
次に、第２の行切出し部３が行う基準行の選択について説明する。基準行は過剰に分割された行を統合するための処理において、その判断基準を与える上で重要である。基準行の選択にあたっては、まず全ての行矩形からその最大幅と最大高さを求める。図２は最大行高さ／行幅を説明する図である。
【０００８】
次に、図３に示すメンバシップ関数を用いて、各行の評価値を算出する。評価値の算出方法は図４に示ように、ここでは行高さのメンバシップ関数から求まる評価値と、行幅のメンバシップ関数から求まる評価値との和を各行の評価値として、評価値最大の行を基準行として選択する。図４の上部は図２と重複するが、各行それぞれの高さおよび幅に対応する評価値は、図４下部のグラフ縦軸のように求まる。
メンバシップ関数の特徴は
・  行幅が広いほど評価値が高い
・  行高さが低いほど評価値が高い
ように設定されている。ただし、行高さについては誤って線分のみの行やノイズのみの微小行を選択しないように、所定のしきい値より小さい場合には評価値が０となるようにしている。また、メンバシップ関数の連続性を考慮して、最大行高さの半分の高さで評価値が最大としている。
【０００９】
次に第２の行切り出し装置３における行の統合処理の説明を行う。図５は行の統合処理の実施例を示すフローチャートである。まず、行インデックスＮを１に初期設定し（ステップ１００）、隣り合う２つの行（Ｎ番目とＮ＋１番目の行）を統合した場合の行高さＨを求める（ステップ１１０）。この演算は、単に行間のスペースも含めた２行が統合された時の行の高さを求めれば良い。そして、その行高さＨと基準行の行高さＨｓを比較し（ステップ１２０）、行高さＨが基準行の行高さＨｓよりも小さい場合に隣り合う２つの行を統合する（ステップ１３０）。そしてＮには統合された次の行を指し示すべく２が加えられる（ステップ１４０）。一方、統合しなかった場合（ステップ１２０でＮｏのとき）は、統合されなかった行を指し示すべくＮに１が加えられる（ステップ１５０）。そして未処理の行の有無を調べ（ステップ１６０）、残っていればステップ１１０から繰り返し、残りがなければ処理を終える。
最終的に、第２の行切り出し部３で判定（修正）された結果を、後段の文字切り出し部などに行出力部４から出力する。
次に、行内矩形数および行内文字数に基づく行統合処理について説明する。ここでは行内矩形数に基づく処理の例を示すが、切り出された行に対して文字切り出し処理を施し、その結果得られる文字数を、行内矩形数の変わりに用いても良い。文字切り出しの方法については非常に数多く提案されているので、ここでの説明は割愛する。
【００１０】
図６は行の統合処理の他の実施例を示すフローチャートである。図５と同じ処理をするブロックには図５と同一の番号が付してある。本実施例は隣り合う２つの行を統合した場合の、行内の矩形数により行の統合を判断するものである。即ち、Ｎ番目とＮ＋１番目の行を統合した行の矩形数Ｒを算出し（ステップ１１１）、矩形数Ｒと閾値Ｔｈとを比較し（ステップ１２１）、矩形数Ｒが閾値Ｔｈより小さい場合には、２つの行を統合して１つの行とする（ステップ１３０）。
ここで、行内矩形数とは、第１の行切出し部２が行として切り出した行に含まれる矩形の数である。前に参照した図９を例に説明すると、２行目（人間が通常に文字行と認識する３行あるうちの２行目）の「う。」は、同図のごとく「う」の点の部分が１行、そして、「う」の下の部分と「。」の部分が同一の行として、それぞれ１行別々の行として認識されている。行内矩形数は、黒画素連結成分と外接する矩形の数であるから、上の１行には「う」の点の部分の矩形が１つ、下の行には「う」の下の部分と「。」の部分の２つの矩形が含まれている。そして統合した場合の矩形数は単純に加えて３ということになる。
Ｔｈは対象とする言語などにより調整する必要があるが、日本語の場合、４〜５程度が適当と思われる。これは文字の形（独立点の数が多いとか）、英語のように単語としてまとまって表記されるか否か、特定の文字が連続して現れる可能性が大きいか等で変わってくる。なお、統合前の各行には必ず１個の矩形は含まれるので、矩形数は２以上となり、４〜５という数値はかなり少ない数値であることを示している。
また、統合した行に対して文字切り出し処理を施して、行内の文字数を推定してＲの代わりに用いることで、より高精度な判定が可能である。この場合の統合の条件としては、行内文字数＜３、つまり日本語では２文字以内の場合に統合するのが適当と思われる。
【００１１】
次に、行内矩形の位置に基づく行統合処理について説明する。図７は行の統合処理の他の実施例を示すフローチャートである。図５と同じ処理をするブロックには図５と同一の番号が付してある。本実施例では隣り合う２つの行を統合した場合の統合行の位置により行の統合を判断する。なお、統合行の位置（先頭座標）とは、統合された行内に含まれる行内矩形の最も左側（横書きの場合）の座標である。
ステップ１１２では上述したように統合行の先頭座標Ｐを算出し、統合した行の先頭座標Ｐと基準行の先頭座標Ｐｓとを比較する（ステップ１２２）。そして先頭座標Ｐが、基準行の先頭座標Ｐｓとほぼ同じ場合には、２つの行を統合して１つの行とする。
Ｔｐは対象により適宜定める必要があるが、例えば基準行の高さとすることで、フォントのサイズが変わらない場合には、１文字はずれていないことが判定できるので、統合の条件としては適当であろう。
【００１２】
次に、これまで説明したいくつかの処理を組み合わせた実施例を説明する。図８は行の統合処理の他の実施例を示すフローチャートである。図５〜図７と同じ処理をするブロックには図５〜図７と同一の番号が付してある。本実施例ではまず、隣り合う２つの行を統合した場合の行内の矩形数により行の統合を判断する（ステップ１１１）。統合した行の矩形数がＴｈより小さい場合には統合の候補とし（ステップ１２１のＹｅｓ側）、それ以外の場合には統合を行わずに次の行の処理に移る（ステップ１２１のＮｏ側）。
矩形数がＴｈより小さい場合には、２つの行を統合した場合の行高さＨを求め（ステップ１１０）、基準行の高さＨｓと比較する（ステップ１２０）。ＨがＨｓよりも低い場合には、２つの行を統合して１つの行とする（ステップ１３０）。それ以外の場合には統合せずに次の行の処理に移る。
本実施例では、行内矩形数と行高さを組み合わせた例を示したが、同様に他の実施例を組み合わせる方法でも良く、対象によっては効果的な場合がある。
また、本明細書では、黒画素連結矩形等、モノクロ画像を対象とした記述になっているが、カラー画像についても同様に処理可能であることは言うまでもない。
【００１３】
【発明の効果】
以上説明したように本発明によれば、１行中の文字数が少ない場合でもノイズなどの影響を受けない適切な行切り出し処理が可能となる。
【図面の簡単な説明】
【図１】本発明の行切出し装置の機能構成を示すブロック図である。
【図２】最大行高さ／行幅を説明する図である。
【図３】メンバシップ関数を説明する図である。
【図４】評価値の算出方法を説明する図である。
【図５】行の統合処理の実施例を示すフローチャートである。
【図６】行の統合処理の他の実施例を示すフローチャートである。
【図７】行の統合処理の他の実施例を示すフローチャートである。
【図８】行の統合処理の他の実施例を示すフローチャートである。
【図９】行の過剰分割の例を示す図である。
【図１０】行の過剰分割の例を示す図である。
【図１１】適切な行切り出し結果の例を示す図である。
【図１２】適切な行切り出し結果の例を示す図である。
【符号の説明】
１  画像入力部
２  第１の行切出し部
３  第２の行切出し部
４  行出力部
【図１】
2004151781.tif 000003
【図２】
2004151781.tif 000004
【図３】
2004151781.tif 000005
【図４】
2004151781.tif 000006
【図５】
2004151781.tif 000007
【図６】
2004151781.tif 000008
【図７】
2004151781.tif 000009
【図８】
2004151781.tif 000010
【図９】
2004151781.tif 000011
【図１０】
2004151781.tif 000012
【図１１】
2004151781.tif 000013
【図１２】
2004151781.tif 000014