(57)【特許請求の範囲】
【請求項１】
文字行候補生成手段と、文字矩形生成手段と、文字行候補分割手段と、文字矩形接続手段とを備える文字行抽出装置において用いられ、文字行候補生成ステップと、文字矩形生成ステップと、文字行候補分割ステップと、文字矩形接続ステップとにより構成される文字行抽出方法であって、
文字行候補生成手段において用いられる文字行候補生成ステップが、
処理対象の画像データから画素の連結する成分の外接矩形を画素連結矩形として抽出する画素連結矩形生成ステップと、
前記画像データもしくは抽出された各画素連結矩形の構成から、主な文字行の方向を主方向、主方向に直交する方向を副方向として判定する文字行方向判定ステップと、
各画素連結矩形を相互の位置関係に応じて主方向又は副方向に接続することにより文字行候補を生成する画素連結矩形接続ステップとからなり、
文字矩形生成手段において用いられる文字矩形生成ステップが、
文字行候補内で、各画素連結矩形の相互の位置関係から文字を構成する画素連結矩形群を抽出し、これに外接する矩形を文字矩形として生成するステップであり、
文字行候補分割手段において用いられる文字行候補分割ステップが、
文字行候補内での文字矩形群の構成に応じて、文字行候補を分割するステップであり、
文字矩形接続手段において用いられる文字矩形接続ステップが、分割された文字行候補内で文字矩形を接続して文字行とするステップである、
文字行抽出方法。
【請求項２】
前記文字行抽出方法は、さらに、
処理対象の画像データから射影分布を生成する射影分布生成ステップと、
射影分布を所定の幅ごとにグループ化する射影グループ生成ステップと、
生成された各グループ内の射影分布の代表値を算出する射影グループ代表値算出ステップと、
隣接する前記射影分布のグループの代表値間の差の最も大きなグループ間の境界をグループ境界として求めるグループ境界抽出ステップと、
このグループ境界を挟む２つのグループ内の射影分布の差から文字領域と写真図形領域との境界を決定し、当該境界の接している射影分布の小さい側を文字領域として抽出する文字領域抽出ステップと
よりなる文字領域抽出方法を含むことを特徴とする請求項１に記載の文字行抽出方法。
【請求項３】
請求項１記載の文字行抽出方法における処理対象を請求項２記載の文字領域抽出方法により抽出された文字領域とした文字行抽出方法。
【請求項４】
前記画素連結矩形接続ステップが、
主方向に重なり、かつ、近接する画素連結矩形群を主方向に接続して主方向の部分文字行として生成する主方向部分文字行生成ステップと、
主方向部分文字行生成ステップで、接続されなかった画素連結矩形群で、所定の距離の範囲内にあるものを接続して、主方向以外の部分文字行として生成する非主方向部分文字行生成ステップと、
部分文字行のうち、縦横比から文字を構成する部分文字行を抽出する文字部分文字行抽出ステップと、
副方向に重なり、かつ、近接する文字を構成する部分文字行群を副方向に接続して、新たな副方向の部分文字行を生成する部分文字行接続第１ステップと、
副方向に重なり、かつ、近接する主方向の部分文字行群を接続して新たな主方向の部分文字行を生成する部分文字行接続第２ステップと、
主方向に重なる、主方向の部分文字行群を主方向に接続して新たな主方向の部分文字行を生成する部分文字行接続第３ステップと、
より生成された部分文字行を文字行候補とする請求項１記載の文字行抽出方法。
【請求項５】
前記文字行抽出方法は、さらに、
処理対象の画像データから画素の連結する成分の外接矩形を画素連結矩形として抽出し、この抽出した画素連結矩形を用いて処理対象の画像の主方向を抽出する方法であって、
処理対象の画像データの形状から仮の主方向を決定する仮主方向決定ステップと、
主方向に重なり、かつ、近接する画素連結矩形群を主方向に接続して主方向の部分文字行として生成する主方向部分文字行生成ステップと、
生成された各主方向の部分文字行の構成から、仮主方向決定ステップで決定した仮の主方向が正しいかどうかを判断する主方向判断ステップと、
主方向判断ステップで仮の主方向が正しいと判断されればその仮の主方向を主方向として抽出し、仮の主方向が正しくないと判断されればその仮の主方向に直交する方向を主方向として抽出する主方向抽出ステップと
を有する文字行主方向抽出方法を含むことを特徴とする請求項１に記載の文字行抽出方法。
【請求項６】
前記文字行候補生成ステップが、請求項５記載の文字行主方向抽出方法を用いて主方向を判定し、
前記主方向部分文字行生成ステップが、前記文字行主方向抽出方法の前記主方向判断ステップによって仮の主方向が正しくないと判断された場合のみ、主方向の部分文字行を生成する
請求項４記載の文字行抽出方法。
【請求項７】
前記部分文字行接続第２ステップにさらに、
副方向に重なり、かつ、準近接する主方向の部分文字行同士を抽出する準近接部分文字行抽出ステップと、
この準近接部分文字行抽出ステップで抽出された部分文字行同士間における各部分文字行に含まれる画素連結矩形の距離が所定の値以下であれば、当該部分文字行同士を接続し新たな主方向の部分文字行を生成する準近接部分文字行接続ステップと、
を設けた請求項４又は６記載の文字行抽出方法。
【請求項８】
請求項４、６又は７記載の文字行抽出方法において、主方向接続ステップの前にさらに、
処理対象の画像データの所定領域を予め定めておき、当該所定領域内において、副方向に重なり、かつ、近接する画素連結矩形群を副方向に接続して副方向の部分文字行として生成する特定領域部分文字行生成ステップを設けた文字行抽出方法。
【請求項９】
前記文字矩形生成ステップが、
文字行候補を被分割領域とし、この被分割領域を、主方向の被分割領域、副方向の被分割領域、その他の被分割領域に分類する被分割領域分類ステップと、
被分割領域分類ステップで、副方向の被分割領域であると分類された場合は、この被分割領域となっている文字行候補を文字行として抽出する副方向文字行抽出ステップと、
被分割領域分類ステップで、その他の被分割領域と分類された場合は、この被分割領域の外接矩形を文字矩形として作成する単体文字矩形作成ステップと、
被分割領域分類ステップで、主方向の被分割領域であると分類された場合は、この主方向の被分割領域に対して、主方向、副方向に射影をとり、射影間の空白部分が所定の長さを越える区間がある場合は、当該区間で被分割領域を分割してあらたな被分割領域とする被分割領域分割ステップと、
被分割領域分割ステップで、射影間の空白部分が所定の長さを越える区間がない場合に、当該被分割領域内で、各画素連結矩形の相互の位置関係から文字を構成する画素連結矩形群を抽出し、これに外接する矩形を文字矩形として生成する主方向文字矩形生成ステップと、
を有する請求項１、３、４、６〜８のいずれか１項に記載の文字行抽出方法。
【請求項１０】
前記文字行候補分割ステップが、
文字行候補内での文字矩形の大きさの平均値と分散値のいずれか又は両方により、文字行候補内での文字矩形の構成を判断する文字矩形構成判断ステップと、
文字矩形構成判断ステップにより、文字行候補内で文字矩形間に所定の差異を有すると判断された場合に、所定の差異がある文字矩形間で、文字行候補を分割する文字矩形間分割ステップと、
を有する請求項１、３、４、６〜９のいずれか１項に記載の文字行抽出方法。
【請求項１１】
前記文字矩形構成判断ステップが、
文字行候補内での文字矩形の一辺の長さの平均値が文字行候補の短辺の長さよりも小さく、かつ、文字矩形の一辺の長さの分散値が所定値よりも大きければ、文字行候補中に大小の文字矩形が存在するという判断を含み、
前記文字矩形間分割ステップが、
文字矩形判断ステップにより文字行候補中に大小の文字矩形が存在すると判断された場合に、大きい文字矩形と小さい文字矩形を挟む区間を検索する大小文字矩形間検索ステップと、
大小文字矩形間検索ステップで検索された区間で、文字行候補を分割する区間分割ステップと、
を有する請求項１、３、４、６〜１０のいずれか１項に記載の文字行抽出方法。
【請求項１２】
前記文字矩形構成判断ステップが、
文字行候補内での文字矩形の一辺の長さの平均値が文字行候補の短辺の長さとほぼ同じであれば、文字行候補中の文字矩形間に空白が存在するという判断を含み、
前記文字矩形間分割ステップが、
文字矩形判断ステップにより文字行候補中の文字矩形間に空白があると判断された場合に、空白がある区間を検索する文字矩形間空白検索ステップと、
文字矩形間空白検索ステップで検索された区間で、文字行候補を分割する区間分割ステップとを有する、
請求項１、３、４、６〜１１のいずれか１項に記載の文字行抽出方法。
【請求項１３】
前記文字矩形構成判断ステップが、
文字行候補の短辺の長さが文字行候補内での文字矩形の一辺の長さの平均値の２倍以上であれば、文字行候補中に文字列が２列以上混在するという判断を含み、
前記文字矩形間分割ステップが、
文字矩形判断ステップにより文字行候補中に文字列が２列以上混在すると判断された場合に、文字行間で段差を生じている区間を検索する文字行段差部検索ステップと、
文字行段差部検索ステップで検索された区間で、文字行候補を分割する区間分割ステップとを有する、
請求項１、３、４、６〜１２のいずれか１項に記載の文字行抽出方法。
【請求項１４】
請求項１３記載の文字行抽出方法において、
前記文字行段差部検索ステップで検索された区間に隣接する文字矩形が所定の特殊な文字矩形か否かを判断する特殊文字判定ステップと、
特殊文字判定ステップで所定の特殊な文字矩形であると判断された場合は、当該特殊な文字矩形を分割する、特殊文字分割ステップと、
をさらに有する請求項１３記載の文字行抽出方法。
【請求項１５】
前記文字行抽出方法は、さらに、画像データから画素の連結する成分の外接矩形を画素連結矩形として抽出し、抽出された各画素連結矩形の位置関係から文字を構成する部分を抽出して、これに外接する矩形を文字矩形として生成し、生成された各文字矩形を連結することによって文字行を抽出する方法であって、
所定の構成を有する文字矩形をルビ矩形として抽出する、ルビ矩形抽出ステップと、
ルビ矩形の近傍に存在する文字行を検索する親文字行検索ステップと、
このルビ矩形を含む、検索された文字行に対してルビが存在し得る範囲を決定するルビ存在可能範囲決定ステップと、
ルビが存在し得る範囲に存在するルビ矩形および文字行を連結することによって、ルビを構成する文字行を抽出するルビ文字行抽出ステップと、
を有する方法を含むことを特徴とする請求項１に記載の文字行抽出方法。
【請求項１６】
前記文字行抽出方法は、さらに、画像データから画素の連結する成分の外接矩形を画素連結矩形として抽出し、抽出された各画素連結矩形の位置関係から文字を構成する部分を抽出して、これに外接する矩形を文字矩形として生成し、生成された各文字矩形を連結することによって文字行を抽出する方法であって、
抽出された文字行内の画素連結矩形または文字矩形の数が定められた第１の閾値よりも大きければ、その文字行がノイズであると判断するノイズ文字行判断ステップと、
ノイズと判断された文字行を削除するノイズ文字行削除ステップと
を有する方法を含むことを特徴とする請求項１に記載の文字行抽出方法。
【請求項１７】
請求項１６記載の文字行抽出方法において、さらに、
抽出された文字行内の画素連結矩形または文字矩形の数が前記第１の閾値よりも小さく、第１の閾値よりも小さい定められた第２の閾値よりも大きければ、その文字行をノイズ文字行候補とするノイズ文字行候補判断ステップと、
ノイズ文字行候補内の画素連結矩形または文字矩形の大きさの平均値を算出し、この平均値が予め定められる所定の値以下であれば、そのノイズ文字行候補をノイズと判断するノイズ文字行候補検証ステップと
を設けた文字行抽出方法。
【請求項１８】
文字行候補生成手段と、文字矩形生成手段と、文字行候補分割手段と、文字矩形接続手段とにより構成される文字行抽出装置であって、
文字行候補生成手段が、
処理対象の画像データから画素の連結する成分の外接矩形を画素連結矩形として抽出する画素連結矩形生成手段と、
前記画像データもしくは抽出された各画素連結矩形の構成から、主な文字行の方向を主方向、主方向に直交する方向を副方向として判定する文字行方向判定手段と、
各画素連結矩形を相互の位置関係に応じて主方向又は副方向に接続することにより文字行候補を生成する画素連結矩形接続手段とからなり、
文字矩形生成手段が、
文字行候補内で、各画素連結矩形の相互の位置関係から文字を構成する画素連結矩形群を抽出し、これに外接する矩形を文字矩形として生成する手段であり、
文字行候補分割手段が、
文字行候補内での文字矩形群の構成に応じて、文字行候補を分割する手段であり、
文字矩形接続手段が、
分割された文字行候補内で文字矩形を接続して文字行とする手段である、
文字行抽出装置。
【請求項１９】
前記文字行抽出装置は、さらに、
処理対象の画像データから射影分布を生成する射影分布生成手段と、
射影分布を所定の幅ごとにグループ化する射影グループ生成手段と、
生成された各グループ内の射影分布の代表値を算出する射影グループ代表値算出手段と、
隣接する前記射影分布のグループの代表値間の差の最も大きなグループ間の境界をグループ境界として求めるグループ境界抽出手段と、
このグループ境界を挟む２つのグループ内の射影分布の差から文字領域と写真図形領域との境界を決定し、当該境界の接している射影分布の小さい側を文字領域として抽出する文字域抽出手段と
よりなる文字領域抽出手段を含むことを特徴とする請求項１に記載の文字行抽出装置。
【請求項２０】
前記画素連結矩形接続手段が、
主方向に重なり、かつ、近接する画素連結矩形群を主方向に接続して主方向の部分文字行として生成する主方向部分文字行生成手段と、
主方向部分文字行生成手段で、接続されなかった画素連結矩形群で、所定の距離の範囲内にあるものを接続して、主方向以外の部分文字行として生成する非主方向部分文字行生成手段と、
部分文字行のうち、縦横比から文字を構成する部分文字行を抽出する文字部分文字行抽出手段と、
副方向に重なり、かつ、近接する文字を構成する部分文字行群を副方向に接続して、新たな副方向の部分文字行を生成する文字副方向接続手段と、
副方向に重なり、かつ、近接する主方向の部分文字行群を接続して新たな主方向の部分文字行を生成する部分文字行副方向接続手段と、
主方向に重なる、主方向の部分文字行群を主方向に接続して新たな主方向の部分文字行を生成する部分文字行主方向接続手段と、
より生成された部分文字行を文字行候補とする請求項１８記載の文字行抽出装置。
【請求項２１】
前記文字行抽出装置は、さらに、
処理対象の画像データから画素の連結する成分の外接矩形を画素連結矩形として抽出し、この抽出した画素連結矩形を用いて処理対象の画像の主方向を抽出する文字行主方向抽出手段であって、
処理対象の画像データの形状から仮の主方向を決定する仮主方向決定手段と、
主方向に重なり、かつ、近接する画素連結矩形群を主方向に接続して主方向の部分文字行として生成する主方向部分文字行生成手段と、
生成された各主方向の部分文字行の構成から、仮主方向決定手段で決定した仮の主方向が正しいかどうかを判断する主方向判断手段と
主方向判断手段で仮の主方向が正しいと判断されればその仮の主方向を主方向として抽出し、仮の主方向が正しくないと判断されればその仮の主方向に直交する方向を主方向として抽出する主方向抽出手段と
を有する文字行主方向抽出手段を含むことを特徴とする請求項１に記載の文字行抽出装置。
【請求項２２】
前記文字行候補生成手段が、請求項２１記載の文字行主方向判断装置であり、
前記主方向部分文字行生成手段が、前記文字行主方向判断装置の前記主方向判断手段によって仮の主方向が正しくないと判断された場合のみ、主方向の部分文字行を生成する
請求項２０記載の文字行抽出装置。
【請求項２３】
前記部分文字行主方向接続手段にさらに、
副方向に重なり、かつ、準近接する主方向の部分文字行同士を抽出する準近接部分文字行抽出手段と、
この準近接部分文字行抽出手段で抽出された部分文字行同士間における各部分文字行に含まれる画素連結矩形の距離が所定の値以下であれば、当該部分文字行同士を接続し新たな主方向の部分文字行を生成する準近接部分文字行接続手段と、
を設けた請求項２０又は２２記載の文字行抽出装置。
【請求項２４】
請求項２０、２２又は２３記載の文字行抽出装置にさらに、
処理対象の画像データの予め定められた所定領域内において、副方向に重なり、かつ、近接する画素連結矩形群を副方向に接続して副方向の部分文字行として生成する特定領域部分文字行生成手段を設けた文字行抽出装置。
【請求項２５】
前記文字矩形生成手段が、
文字行候補を被分割領域とし、この被分割領域を、主方向の被分割領域、副方向の被分割領域、その他の被分割領域に分類する被分割領域分類手段と、
被分割領域分類手段で、副方向の被分割領域であると分類された場合は、この被分割領域となっている文字行候補を文字行として抽出する副方向文字行抽出手段と、
被分割領域分類手段で、その他の被分割領域と分類された場合は、この被分割領域の外接矩形を文字矩形として作成する単体文字矩形作成手段と、
被分割領域分類手段で、主方向の被分割領域であると分類された場合は、この主方向の被分割領域に対して、主方向、副方向に射影をとり、射影間の空白部分が所定の長さを越える区間がある場合は、当該区間で被分割領域を分割してあらたな被分割領域とする被分割領域分割手段と、
被分割領域分割手段で、射影間の空白部分が所定の長さを越える区間がない場合に、当該被分割領域内で、各画素連結矩形の相互の位置関係から文字を構成する画素連結矩形群を抽出し、これに外接する矩形を文字矩形として生成する主方向文字矩形生成手段と、
を有する請求項１８、２０、２２〜２４のいずれか１項に記載の文字行抽出装置。
【請求項２６】
文字行候補分割手段が、
文字行候補内での文字矩形の大きさの平均値と分散値のいずれか又は両方により、文字行候補内での文字矩形の構成を判断する文字矩形構成判断手段と、
文字矩形構成判断手段により、文字行候補内で文字矩形間に所定の差異を有すると判断された場合に、所定の差異がある文字矩形間で、文字行候補を分割する文字矩形間分割手段と、
を有する請求項１８、２０、２２〜２５のいずれか１項に記載の文字行抽出装置。
【請求項２７】
前記文字矩形構成判断手段が、
文字行候補内での文字矩形の一辺の長さの平均値が文字行候補の短辺の長さよりも小さく、かつ、文字矩形の一辺の長さの分散値が所定値よりも大きければ、文字行候補中に大小の文字矩形が存在するという判断を行い、
前記文字矩形間分割手段が、
文字矩形判断手段により文字行候補中に大小の文字矩形が存在すると判断された場合に、大きい文字矩形と小さい文字矩形を挟む区間を検索する大小文字矩形間検索手段と、
大小文字矩形間検索手段で検索された区間で、文字行候補を分割する区間分割手段と、
を有する請求項１８、２０、２２〜２６のいずれか１項に記載の文字行抽出装置。
【請求項２８】
前記文字矩形構成判断手段が、
文字行候補内での文字矩形の一辺の長さの平均値が文字行候補の短辺の長さとほぼ同じであれば、文字行候補中の文字矩形間に空白が存在するという判断を行い、
前記文字矩形間分割手段が、
文字矩形判断手段により文字行候補中の文字矩形間に空白があると判断された場合に、空白がある区間を検索する文字矩形間空白検索手段と、
文字矩形間空白検索手段で検索された区間で、文字行候補を分割する区間分割手段とを有する、
請求項１８、２０、２２〜２７のいずれか１項に記載の文字行抽出装置。
【請求項２９】
前記文字矩形構成判断手段が、
文字行候補の短辺の長さが文字行候補内での文字矩形の一辺の長さの平均値の２倍以上であれば、文字行候補中に文字列が２列以上混在するという判断を行い、
前記文字矩形間分割手段が、
文字矩形判断手段により文字行候補中に文字列が２列以上混在すると判断された場合に、文字行間で段差を生じている区間を検索する文字行段差部検索手段と、
文字行段差部検索手段で検索された区間で、文字行候補を分割する区間分割手段とを有する、
請求項１８、２０、２２〜２８のいずれか１項に記載の文字行抽出装置。
【請求項３０】
請求項２９記載の文字行抽出装置において、さらに、
前記文字行段差部検索手段で検索された区間に隣接する文字矩形が所定の特殊な文字矩形か否かを判断する特殊文字判定手段と、
特殊文字判定手段で所定の特殊な文字矩形であると判断された場合は、当該特殊な文字矩形を分割する、特殊文字分割手段と、
を設けた文字行抽出装置。
【請求項３１】
前記文字行抽出装置は、さらに、画像データから画素の連結する成分の外接矩形を画素連結矩形として抽出し、抽出された各画素連結矩形の位置関係から文字を構成する部分を抽出して、これに外接する矩形を文字矩形として生成し、生成された各文字矩形を連結することによって文字行を抽出する手段であって、
所定の構成を有する文字矩形をルビ矩形として抽出する、ルビ矩形抽出手段と、
ルビ矩形の近傍に存在する文字行を検索する親文字行検索手段と、
このルビ矩形を含む、検索された文字行に対してルビが存在し得る範囲を決定するルビ存在可能範囲決定手段と、
ルビが存在し得る範囲に存在するルビ矩形および文字行を連結することによって、ルビを構成する文字行を抽出するルビ文字行抽出手段と、
を有する手段を含むことを特徴とする請求項１に記載の文字行抽出装置。
【請求項３２】
前記文字行抽出装置は、さらに、画像データから画素の連結する成分の外接矩形を画素連結矩形として抽出し、抽出された各画素連結矩形の位置関係から文字を構成する部分を抽出して、これに外接する矩形を文字矩形として生成し、生成された各文字矩形を連結することによって文字行を抽出する手段であって、
抽出された文字行内の画素連結矩形または文字矩形の数が定められた第１の閾値よりも大きければ、その文字行がノイズであると判断するノイズ文字行判断手段と、
ノイズと判断された文字行を削除するノイズ文字行削除手段と
を有する手段を含むことを特徴とする請求項１に記載の文字行抽出装置。
【請求項３３】
請求項３２記載の文字行抽出装置において、さらに、
抽出された文字行内の画素連結矩形または文字矩形の数が前記第１の閾値よりも小さく、第１の閾値よりも小さい定められた第２の閾値よりも大きければ、その文字行をノイズ文字行候補とするノイズ文字行候補判断手段と、
ノイズ文字行候補内の画素連結矩形または文字矩形の大きさの平均値を算出し、この平均値が予め定められる所定の値以下であれば、そのノイズ文字行候補をノイズと判断するノイズ文字行候補検証手段と
を設けた文字行抽出装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、光学的文字読み取り装置（ＯＣＲ）等に用いる、文書から文字行を抽出する方法および装置に関する。
【０００２】
【従来の技術】
従来、ＯＣＲ等において文書から文字行を抽出する方法として、画像データから連結する画素成分を連結要素として抽出し、連結要素間の距離や重なりに応じて文書の文字行方向に、抽出した連結要素を接続することによって文字行を抽出する方法（特開平５−３４２４０７）があった。しかし、この方法では、連結要素と文字が必ずしも１対１に対応していないため、１文字がいくつかの連結要素に分かれていることがあり、このような文字が連続する文字行内や文字行付近においては、同じ文字行内に属する連結要素同士が正しく接続されなかったり、接続すべきでない隣り合った文字行の連結要素同士が接続されてしまう場合がある。また、この方法では、文書の文字行方向が１方向に決まっていることが前提であり、縦書き横書き混在の文書において、両方向の文字行を抽出することは困難である。
【０００３】
このような問題を解決する方法として、処理対象の文書の圧縮画像から連結する画素成分を連結要素として抽出し、連結要素の外接矩形の縦横比から圧縮による文字間の融合度合を推定し、融合度合に応じて接続パラメータを決定して連結要素を接続する方法（特開平７−７３２７１）が提案されている。
この方法によると、圧縮率が適切であれば１文字が複数の連結要素に分かれる頻度が減り、上記に述べたような連結要素と文字が１対１に対応していないためにおこる誤結合をある程度防ぐことができる。また、文書内に本文領域と呼ばれるような文字行が連続的に存在する領域があれば、本文領域の文字間や文字の大きさに応じて適切な接続パラメータが設定され、精度よく文字行を抽出することができ、本文文字行と異方向の文字行（縦書き文書におけるフッタやヘッダ等）の抽出も可能となる。
【０００４】
また、処理対象となる文書内に写真等の非文字領域が存在する場合、例えば、写真領域内に存在する連結要素の大きさが文字サイズ程度で、文字行と近接している場合など、文字認識処理を行なわずに写真領域内の連結要素と文字行との誤結合を防ぐことは困難である。これに対処するために先に文字領域と非文字領域を分離しておくと、その後の文字行抽出の精度が向上する場合がある。このような文字領域と非文字領域を分離する従来の技術として、画像データから射影分布を取得し、分布の谷部を検出し、検出された谷部で対象領域を分割する方法（特開平３−２９０７７４）が提案されている。
【０００５】
さらに、連結要素を接続する方法においては、文字行方向が不明な場合、文字行方向を先に判別しておく必要がある。かかる文字行方向の判別方法としては、画像データから文字要素を抽出し、相互に近接する文字要素毎に群分けし、文字要素群の外接矩形の長辺方向を文字行方向として判別する方法（特開平６−２４３２８６）が提案されている。
【０００６】
【発明が解決しようとする課題】
しかし、上記処理対象の文書の圧縮画像から連結する画素成分を連結要素として抽出して文字行を抽出する方法においては、例えば名刺のように文字の大きさやピッチの異なる別の文字行が近接していたり、文字の大きさが等しい別の文字行同士が１列に並んでいたり、文字の大きさが等しい２列の文字行の中間的な位置に文字行が存在していたりするような文書においては、適切な圧縮率や接続パラメータを設定することは困難である。そして、圧縮率が不適切な場合、行間の狭い文書では複数行が癒着してしまうこともある。
【０００７】
また、一般的に１文字行を構成する文字は文字間が近く、均等で文字の大きさもほぼそろっているのが普通であり、従来の文字行の抽出方法はこのことを前提としていた。ところが、名刺の氏名にふられるルビ等は、文字行内の個々の文字が極端に離れているため、従来の方法では１文字行と判断することは困難である。
【０００８】
さらに、対象処理対象の文書に散点状に描かれた絵や装飾等が存在する場合には、従来の文字行の抽出方法では、絵等を構成する点を文字と認識して文字行を構成しないにもかかかわらず、文字行として抽出してしまうおそれもある。
一方、上述した従来の文字領域と非文字領域を分離する方法では、２値化された写真画像には画素の多い部分と少ない部分が混在しているので、１写真領域内で複数の谷部が検出され、複数の領域に分割されてしまい、その後の統合処理が適当に行なわれない場合、やはり誤結合を招く可能性がある。例えば、図４３（ａ）のような画像データに対して、射影分布を取得すると図４３（ｂ）のようになるが、写真領域に一部画素の少ない領域があるため、分布を操作して検出された谷部Ｚで対象領域を分割すると図４３（ｃ）のように、写真領域が領域ａ１、領域ａ２に分かれてしまい、領域ａ２は文字行として誤って認識される恐れが高い。
【０００９】
また、上記従来の文字行方向の判別方法においては、文字要素群の外接矩形の長辺方向を文字行方向とするものであるので、行間が狭く、長さの短い文字行がかたまっている場合など、外接矩形の長辺が文字行方向と直交する方向となることもあり、文字行方向の判定を誤ってしまう可能性がある。
即ち、従来の文字行を抽出する方法では、文字の大きさやピッチの異なる文字行、行間の幅が狭い文字行、縦書き文字行や横書き文字行が混在する文書、写真等の非文字領域が存在する文書や文字行方向が不明な文書等、複雑なレイアウトの文書から正確に文字行を抽出することが容易にはできなかった。
【００１０】
そこで、本発明はこのような課題を解決し、雑多な構成要素をもつ複雑なレイアウトの文書から正確にかつ効率よく、文書データから文字行を抽出する方法および装置を提供することを目的とする。
【００１１】
【課題を解決するための手段】
上記課題を解決するために、本願発明の文字行抽出方法は文字行候補生成ステップと、文字矩形生成ステップと、文字行候補分割ステップと、文字矩形接続ステップとにより構成される。
文字行候補生成ステップは、処理対象の画像データから画素の連結する成分の外接矩形を画素連結矩形として抽出する画素連結矩形生成ステップと、前記画像データもしくは抽出された各画素連結矩形の構成から、主な文字行の方向を主方向、主方向に直交する方向を副方向として判定する文字行方向判定ステップと、各画素連結矩形を相互の位置関係に応じて主方向又は副方向に接続することにより文字行候補を生成する画素連結矩形接続ステップとよりなる。
【００１２】
そして、文字矩形生成ステップは、文字行候補内で、各画素連結矩形の相互の位置関係から文字を構成する画素連結矩形群を抽出し、これに外接する矩形を文字矩形として生成する。また、文字行候補分割ステップは、文字行候補内での文字矩形群の構成に応じて、文字行候補を分割する。さらに、文字矩形接続ステップは分割された文字行候補内で文字矩形を接続して文字行とする。
【００１３】
また、上記課題を解決するために本願発明に係る文字領域抽出方法は、処理対象の画像データから射影分布を生成する射影分布生成ステップと、射影分布を所定の幅ごとにグループ化する射影グループ生成ステップと、生成された各グループ内の射影分布の代表値を算出する射影グループ代表値算出ステップとを有し、さらに、隣接する前記射影分布のグループの代表値間の差の最も大きなグループ間の境界をグループ境界として求めるグループ境界抽出ステップと、このグループ境界を挟む２つのグループ内の射影分布の差から文字領域と写真図形領域との境界を決定し、当該境界の接している射影分布の小さい側を文字領域として抽出する文字領域抽出ステップとを有するものである。
【００１４】
そして、前記文字行抽出方法においては、この文字領域抽出方法により抽出された文字領域を処理対象とすることが望ましい。
さらに、前記文字行抽出方法において、文字行候補生成ステップ中の画素連結矩形接続ステップには、主方向に重なり、かつ、近接する画素連結矩形群を主方向に接続して主方向の部分文字行として生成する主方向部分文字行生成ステップと、主方向部分文字行生成ステップで、接続されなかった画素連結矩形群で、所定の距離の範囲内にあるものを接続して、主方向以外の部分文字行として生成する非主方向部分文字行生成ステップとを設け、さらに部分文字行のうち、縦横比から文字を構成する部分文字行を抽出する文字部分文字行抽出ステップと、副方向に重なり、かつ、近接する文字を構成する部分文字行群を副方向に接続して、新たな副方向の部分文字行を生成する部分文字行接続第１ステップと、副方向に重なり、かつ、近接する主方向の部分文字行群を接続して新たな主方向の部分文字行を生成する部分文字行接続第２ステップと、主方向に重なる、主方向の部分文字行群を主方向に接続して新たな主方向の部分文字行を生成する部分文字行接続第３ステップとを設け、これらの各ステップより生成された部分文字行を文字行候補とすることが望ましい。
【００１５】
そして、上記課題を解決するために本願発明に係る文字行主方向抽出方法は、処理対象の画像データから画素の連結する成分の外接矩形を画素連結矩形として抽出し、この抽出した画素連結矩形を用いる方法であり、処理対象の画像データの形状から仮の主方向を決定する仮主方向決定ステップと、主方向に重なり、かつ、近接する画素連結矩形群を主方向に接続して主方向の部分文字行として生成する主方向部分文字行生成ステップ、さらに、生成された各主方向の部分文字行の構成から、仮主方向決定ステップで決定した仮の主方向が正しいかどうかを判断する主方向判断ステップと、主方向判断ステップで仮の主方向が正しいと判断されればその仮の主方向を主方向として抽出し、仮の主方向が正しくないと判断されればその仮の主方向に直交する方向を主方向として抽出する主方向抽出ステップとにより構成される。
【００１６】
前記文字行抽出方法においては、文字行候補生成ステップ中の主方向部分文字行生成ステップは、上記の文字行主方向抽出方法を用いることが望ましく、この場合、前記主方向部分文字行生成ステップでは、文字行主方向判断方法中の主方向判断ステップで仮の主方向が正しくないと判断された場合のみ、主方向の部分文字行を生成するようにすれば足りる。
【００１７】
また、前記部分文字行接続第２ステップには、さらに、副方向に重なり、かつ、準近接する主方向の部分文字行同士を抽出する準近接部分文字行抽出ステップと、この準近接部分文字行抽出ステップで抽出された部分文字行同士間における各部分文字行に含まれる画素連結矩形の距離が所定の値以下であれば、当該部分文字行同士を接続し新たな主方向の部分文字行を生成する準近接部分文字行接続ステップとを設けると効果的である。なお、ここで準近接するとは部分文字行同士の間隔が近接しているとは判断できないが、かなり近いと認められる所定の距離範囲に入っている状態をいい、当該距離は予め定められる。
【００１８】
また、前記文字行抽出方法においては、前記主方向接続ステップの前には、さらに、処理対象の画像データの所定領域を予め定めておき、当該所定領域内において、副方向に重なり、かつ、近接する画素連結矩形群を副方向に接続して副方向の部分文字行として生成する特定領域部分文字行生成ステップを設けてもよい。
【００１９】
それから、前記文字矩形生成ステップには、文字行候補を被分割領域とし、この被分割領域に対して、主方向の被分割領域、副方向の被分割領域、その他の被分割領域に分類する被分割領域分類ステップを設け、被分割領域分類ステップで、副方向の被分割領域であると分類された場合は、この被分割領域となっている文字行候補を文字行として抽出する副方向文字行抽出ステップと、被分割領域分類ステップで、その他の被分割領域と分類された場合は、この被分割領域の外接矩形を文字矩形として作成する単体文字矩形作成ステップと、被分割領域分類ステップで、主方向の被分割領域であると分類された場合は、この主方向の被分割領域に対して、主方向、副方向に射影をとり、射影間の空白部分が所定の長さを越える区間がある場合は、当該区間で被分割領域を分割してあらたな被分割領域とする被分割領域分割ステップと、被分割領域分割ステップで、射影間の空白部分が所定の長さを越える区間がない場合に、当該被分割領域内で、各画素連結矩形の相互の位置関係から文字を構成する画素連結矩形群を抽出し、これに外接する矩形を文字矩形として生成する主方向文字矩形生成ステップとを設けると効果的である。
【００２０】
さらに、前記文字行候補分割ステップには、文字行候補内での文字矩形の大きさの平均値と分散値のいずれか又は両方により、文字行候補内での文字矩形の構成を判断する文字矩形構成判断ステップと、文字矩形構成判断ステップにより、文字行候補内で文字矩形間で所定の差異を有すると判断された場合に、所定の差異がある文字矩形間で、文字行候補を分割する文字矩形間分割ステップとを設けることが望ましい。
【００２１】
かかる文字行候補分割ステップの文字矩形構成判断ステップには、文字行候補内での文字矩形の一辺の長さの平均値が文字行候補の短辺の長さよりも小さく、かつ、文字矩形の一辺の長さの分散値が所定値よりも大きければ、文字行候補中に大小の文字矩形が存在するという判断を含ませ、文字矩形間分割ステップには、文字矩形判断ステップにより文字行候補中に大小の文字矩形が存在すると判断された場合に、大きい文字矩形と小さい文字矩形を挟む区間を検索する大小文字矩形間検索ステップと、大小文字矩形間検索ステップで検索された区間で、文字行候補を分割する区間分割ステップとを設けると好適である。
【００２２】
さらに、文字行候補分割ステップの文字矩形構成判断ステップには、文字行候補内での文字矩形の一辺の長さの平均値が文字行候補の短辺の長さとほぼ同じであれば、文字行候補中の文字矩形間に空白が存在するという判断を含ませ、文字矩形間分割ステップには、文字矩形判断ステップにより文字行候補中の文字矩形間に空白があると判断された場合に、空白がある区間を検索する文字矩形間空白検索ステップと、文字矩形間空白検索ステップで検索された区間で、文字行候補を分割する区間分割ステップとを設けてもよい。
【００２３】
同様に、文字行候補分割ステップの文字矩形構成判断ステップには、文字行候補の短辺の長さが文字行候補内での文字矩形の一辺の長さの平均値の２倍以上であれば、文字行候補中に文字列が２列以上混在するという判断を含ませ、前記文字行候補分割ステップには、文字矩形判断ステップにより文字行候補中に文字列が２列以上混在すると判断された場合に、文字行間で段差を生じている区間を検索する文字行段差部検索ステップと、文字行段差部検索ステップで検索された区間で、文字行候補を分割する区間分割ステップとを設けることができる。
【００２４】
また、かかる構成にさらに、前記文字行段差部検索ステップで検索された区間に隣接する文字矩形が所定の特殊な文字矩形か否かを判断する特殊文字判定ステップと、特殊文字判定ステップで所定の特殊な文字矩形であると判断された場合は、当該特殊な文字矩形を分割する、特殊文字分割ステップとを設けることもできる。
【００２５】
さらに、上記課題を解決するために本願発明に係る文字行抽出方法は、画像データから画素の連結する成分の外接矩形を画素連結矩形として抽出し、抽出された各画素連結矩形の位置関係から文字を構成する部分を抽出して、これに外接する矩形を文字矩形として生成し、生成された各文字矩形を連結することによって文字行を抽出する文字行抽出方法において、所定の構成を有する文字矩形をルビ矩形として抽出するルビ矩形抽出ステップと、ルビ矩形の近傍に存在する文字行を検索する親文字行検索ステップと、このルビ矩形を含む、検索された文字行に対してルビが存在し得る範囲を決定するルビ存在可能範囲決定ステップと、ルビが存在し得る範囲に存在するルビ矩形および文字行を連結することによって、ルビを構成する文字行を抽出するルビ文字行抽出ステップとを設けたものである。
【００２６】
また、本願発明に係る文字行抽出方法は、画像データから画素の連結する成分の外接矩形を画素連結矩形として抽出し、抽出された各画素連結矩形の位置関係から文字を構成する部分を抽出して、これに外接する矩形を文字矩形として生成し、生成された各文字矩形を連結することによって文字行を抽出する文字行抽出方法において、抽出された文字行内の画素連結矩形または文字矩形の数が定められた第１の閾値よりも大きければ、その文字行がノイズであると判断するノイズ文字行判断ステップと、ノイズと判断された文字行を削除するノイズ文字行削除ステップとを設けたものである。
【００２７】
さらに、この文字行抽出方法においては、抽出された文字行内の画素連結矩形または文字矩形の数が前記第１の閾値よりも小さく、第１の閾値よりも小さい定められた第２の閾値よりも大きければ、その文字行をノイズ文字行候補とするノイズ文字行候補判断ステップと、ノイズ文字行候補内の画素連結矩形または文字矩形の大きさの平均値を算出し、この平均値が予め定められる所定の値以下であれば、そのノイズ文字行候補をノイズと判断するノイズ文字行候補検証ステップとを設けることが望ましい。なお、この所定の値は計算値も含み、例えば、ノイズ文字行候補の短辺の長さに対して所定の割合を定めておき、この割合を予め計算することによって与えるようにしてもよい。
【００２８】
一方、上記課題を解決するために本願発明に係る文字行抽出装置は文字行候補生成手段と、文字矩形生成手段と、文字行候補分割手段と、文字矩形接続手段とにより構成される。
文字行候補生成手段は、処理対象の画像データから画素の連結する成分の外接矩形を画素連結矩形として抽出する画素連結矩形生成手段と、前記画像データもしくは抽出された各画素連結矩形の構成から、主な文字行の方向を主方向、主方向に直交する方向を副方向として判定する文字行方向判定手段と、各画素連結矩形を相互の位置関係に応じて主方向又は副方向に接続することにより文字行候補を生成する画素連結矩形接続手段とよりなる。
【００２９】
そして、文字矩形生成手段は、文字行候補内で、各画素連結矩形の相互の位置関係から文字を構成する画素連結矩形群を抽出し、これに外接する矩形を文字矩形として生成する。また、文字行候補分割手段は、文字行候補内での文字矩形群の構成に応じて、文字行候補を分割する。さらに、文字矩形接続手段は分割された文字行候補内で文字矩形を接続して文字行とする。
【００３０】
また、上記課題を解決するために本願発明に係る文字領域抽出装置は、処理対象の画像データから射影分布を生成する射影分布生成手段と、射影分布を所定の幅ごとにグループ化する射影グループ生成手段と、各グループ内の射影分布の代表値を算出する射影グループ代表値算出手段とを有し、さらに、隣接する前記射影分布のグループの代表値間の差の最も大きなグループ間の境界をグループ境界として求めるグループ境界抽出手段と、このグループ境界を挟む２つのグループ内の射影分布の差から文字領域と写真図形領域との境界を決定し、当該境界の接している射影分布の小さい側を文字領域として抽出する文字域抽出手段とを有するものである。
【００３１】
さらに、前記文字行抽出装置において、文字行候補生成手段中の画素連結矩形接続手段には、主方向に重なり、かつ、近接する画素連結矩形群を主方向に接続して主方向の部分文字行として生成する主方向部分文字行生成手段と、主方向部分文字行生成手段で、接続されなかった画素連結矩形群で、所定の距離の範囲内にあるものを接続して、主方向以外の部分文字行として生成する非主方向部分文字行生成手段とを設け、さらに部分文字行のうち、縦横比から文字を構成する部分文字行を抽出する文字部分文字行抽出手段と、副方向に重なり、かつ、近接する文字を構成する部分文字行群を副方向に接続して、新たな副方向の部分文字行を生成する文字副方向接続手段と、副方向に重なり、かつ、近接する主方向の部分文字行群を接続して新たな主方向の部分文字行を生成する部分文字行副方向接続手段と、主方向に重なる、主方向の部分文字行群を主方向に接続して新たな主方向の部分文字行を生成する部分文字行主方向接続手段とを設け、これらの各手段より生成された部分文字行を文字行候補とすることが望ましい。
【００３２】
そして、上記課題を解決するために本願発明に係る文字行主方向抽出装置は、処理対象の画像データから画素の連結する成分の外接矩形を画素連結矩形として抽出し、この抽出した画素連結矩形を用いて処理対象の画像の主方向を抽出する装置であり、処理対象の画像データの形状から仮の主方向を決定する仮主方向決定手段と、主方向に重なり、かつ、近接する画素連結矩形群を主方向に接続して主方向の部分文字行として生成する主方向部分文字行生成手段、さらに、生成された各主方向の部分文字行の構成から、仮主方向決定手段で決定した仮の主方向が正しいかどうかを判断する主方向判断手段と、主方向判断手段で仮の主方向が正しいと判断されればその仮の主方向を主方向として抽出し、仮の主方向が正しくないと判断されればその仮の主方向に直交する方向を主方向として抽出する主方向抽出手段とにより構成される。
【００３３】
前記文字行抽出装置においては、文字行候補生成手段中の主方向部分文字行生成手段は、上記の文字行主方向抽出装置を用いることが望ましく、この場合、前記主方向部分文字行生成手段では、文字行主方向判断装置中の主方向判断手段で仮の主方向が正しくないと判断された場合のみ、主方向の部分文字行を生成するようにすれば足りる。
【００３４】
また、前記部分文字行副方向接続手段には、さらに、副方向に重なり、かつ、準近接する主方向の部分文字行同士を抽出する準近接部分文字行抽出手段と、この準近接部分文字行抽出手段で抽出された部分文字行同士間における各部分文字行に含まれる画素連結矩形の距離が所定の値以下であれば、当該部分文字行同士を接続し新たな主方向の部分文字行を生成する準近接部分文字行接続手段とを設けると効果的である。
【００３５】
また、前記文字行抽出装置においては、前記主方向接続手段の前には、さらに、処理対象の画像データの所定領域を予め定めておき、当該所定領域内において、副方向に重なり、かつ、近接する画素連結矩形群を副方向に接続して副方向の部分文字行として生成する特定領域部分文字行生成手段を設けてもよい。
それから、前記文字矩形生成手段には、文字行候補を被分割領域とし、この被分割領域に対して、主方向の被分割領域、副方向の被分割領域、その他の被分割領域に分類する被分割領域分類手段を設け、被分割領域分類手段で、副方向の被分割領域であると分類された場合は、この被分割領域となっている文字行候補を文字行として抽出する副方向文字行抽出手段と、被分割領域分類手段で、その他の被分割領域と分類された場合は、この被分割領域の外接矩形を文字矩形として作成する単体文字矩形作成手段と、被分割領域分類手段で、主方向の被分割領域であると分類された場合は、この主方向の被分割領域に対して、主方向、副方向に射影をとり、射影間の空白部分が所定の長さを越える区間がある場合は、当該区間で被分割領域を分割してあらたな被分割領域とする被分割領域分割手段と、被分割領域分割手段で、射影間の空白部分が所定の長さを越える区間がない場合に、当該被分割領域内で、各画素連結矩形の相互の位置関係から文字を構成する画素連結矩形群を抽出し、これに外接する矩形を文字矩形として生成する主方向文字矩形生成手段とを設けると効果的である。
【００３６】
さらに、前記文字行候補分割手段には、文字行候補内での文字矩形の大きさの平均値と分散値のいずれか又は両方により、文字行候補内での文字矩形の構成を判断する文字矩形構成判断手段と、文字矩形構成判断手段により、文字行候補内で文字矩形間で所定の差異を有すると判断された場合に、所定の差異がある文字矩形間で、文字行候補を分割する文字矩形間分割手段とを設けることが望ましい。
【００３７】
かかる文字行候補分割手段の文字矩形構成判断手段は、文字行候補内での文字矩形の一辺の長さの平均値が文字行候補の短辺の長さよりも小さく、かつ、文字矩形の一辺の長さの分散値が所定値よりも大きければ、文字行候補中に大小の文字矩形が存在するという判断を行わせ、文字矩形間分割手段には、文字矩形判断手段により文字行候補中に大小の文字矩形が存在すると判断された場合に、大きい文字矩形と小さい文字矩形を挟む区間を検索する大小文字矩形間検索手段と、大小文字矩形間検索手段で検索された区間で、文字行候補を分割する区間分割手段とを設けると好適である。
【００３８】
さらに、文字行候補分割手段の文字矩形構成判断手段は、文字行候補内での文字矩形の一辺の長さの平均値が文字行候補の短辺の長さとほぼ同じであれば、文字行候補中の文字矩形間に空白が存在するという判断を行わせ、文字矩形間分割手段には、文字矩形判断手段により文字行候補中の文字矩形間に空白があると判断された場合に、空白がある区間を検索する文字矩形間空白検索手段と、文字矩形間空白検索手段で検索された区間で、文字行候補を分割する区間分割手段とを設けてもよい。
【００３９】
同様に、文字行候補分割手段の文字矩形構成判断手段には、文字行候補の短辺の長さが文字行候補内での文字矩形の一辺の長さの平均値の２倍以上であれば、文字行候補中に文字列が２列以上混在するという判断を行わせ、前記文字行候補分割手段には、文字矩形判断手段により文字行候補中に文字列が２列以上混在すると判断された場合に、文字行間で段差を生じている区間を検索する文字行段差部検索手段と、文字行段差部検索手段で検索された区間で、文字行候補を分割する区間分割手段とを設けることができる。
【００４０】
また、かかる構成にさらに、前記文字行段差部検索手段で検索された区間に隣接する文字矩形が所定の特殊な文字矩形か否かを判断する特殊文字判定手段と、特殊文字判定手段で所定の特殊な文字矩形であると判断された場合は、当該特殊な文字矩形を分割する、特殊文字分割手段とを設けることもできる。
さらに、上記課題を解決するために本願発明に係る文字行抽出装置は、画像データから画素の連結する成分の外接矩形を画素連結矩形として抽出し、抽出された各画素連結矩形の位置関係から文字を構成する部分を抽出して、これに外接する矩形を文字矩形として生成し、生成された各文字矩形を連結することによって文字行を抽出する文字行抽出装置において、所定の構成を有する文字矩形をルビ矩形として抽出するルビ矩形抽出手段と、ルビ矩形の近傍に存在する文字行を検索する親文字行検索手段と、このルビ矩形を含む、検索された文字行に対してルビが存在し得る範囲を決定するルビ存在可能範囲決定手段と、ルビが存在し得る範囲に存在するルビ矩形および文字行を連結することによって、ルビを構成する文字行を抽出するルビ文字行抽出手段とを設けたものである。
【００４１】
また、本願発明に係る文字行抽出装置は、画像データから画素の連結する成分の外接矩形を画素連結矩形として抽出し、抽出された各画素連結矩形の位置関係から文字を構成する部分を抽出して、これに外接する矩形を文字矩形として生成し、生成された各文字矩形を連結することによって文字行を抽出する文字行抽出装置において、抽出された文字行内の画素連結矩形または文字矩形の数が定められた第１の閾値よりも大きければ、その文字行がノイズであると判断するノイズ文字行判断手段と、ノイズと判断された文字行を削除するノイズ文字行削除手段とを設けたものである。
【００４２】
さらに、この文字行抽出装置においては、抽出された文字行内の画素連結矩形または文字矩形の数が前記第１の閾値よりも小さく、第１の閾値よりも小さい定められた第２の閾値よりも大きければ、その文字行をノイズ文字行候補とするノイズ文字行候補判断手段と、ノイズ文字行候補内の画素連結矩形または文字矩形の大きさの平均値を算出し、この平均値が予め定められる所定の値以下であれば、そのノイズ文字行候補をノイズと判断するノイズ文字行候補検証手段とを設けることが望ましい。なお、この所定の値も計算値も含むものであり、例えば、ノイズ文字行候補の短辺の長さに対して所定の割合を定めておき、この割合を予め計算することによって与えるようにしてもよい。
【００４３】
【発明の実施の形態】
以下、本発明の実施の形態について、図を用いて説明する。
図１は本発明に係る文字行抽出方法および文字行抽出装置を用いた文字認識装置の構成を示すブロック図である。かかる文字認識装置は、スキャナー等よりなる光学的手段により紙面に印字された文字画像等を画像データとして読み取る画像入力部１、画像データから文字領域を抽出する文字領域抽出部２、後に詳述する文字行を抽出する文字行抽出部３、文字行抽出部３で抽出されないルビ文字行を抽出するルビ文字行抽出部８、抽出された文字行がノイズである場合に除去するノイズ文字行削除部９、抽出された文字行を構成する文字を一文字づつ認識する文字認識部１０により構成される。この装置の文字領域抽出部２、文字行抽出部３、ルビ文字行抽出部８、ノイズ文字行削除部９、文字認識部１０の動作は汎用のコンピューターとこれに格納されるプログラムによっても達成することができ、このプログラムはフロッピーディスク等の記録媒体に記録することができる。
【００４４】
以下に、各構成部分の詳細をさらに説明する。まず、本願発明に係る文字領域抽出装置である文字領域抽出部２の構成を図２に示す。文字領域抽出部２中、射影分布生成部２１は処理対象の画像データから射影分布を生成する。射影分布とは処理対象の画像データの一方向における黒画素の総和をこの方向に直交する方向に沿って一定間隔ごとに分布をとったものであり、例えば、図３（ａ）に示すように画像データに対して、縦方向の射影分布を生成すると図３（ｂ）のようになる。
【００４５】
射影グループ生成部２２は射影分布を所定の幅ごとにグループ化する。この所定の幅は処理対象の文書内に表される写真や図形の大きさ等を統計し、実験により最も良い結果をもたらす値を導き出して使用する。次に、射影グループ代表値算出部２３は生成された各グループ内の射影分布の代表値を算出する。ここでは代表値としてグループ内の各射影の平均値を求める。図３（ｃ）に、図３（ｂ）の射影分布をグループ化して各グループを代表値によって表した図を示す。  グループ境界抽出部２４は隣接する前記射影分布のグループの代表値間の差の最も大きなグループ間の境界をグループ境界として求める。また、さらにグループ境界抽出部２４は、境界で分割してできるそれぞれの領域に属する全グループの射影の平均値の差や平均値の大きな方の値が所定の閾値を越えるか否か、さらには領域の幅が所定の値を越える否か等によって、当該境界が文書領域と写真図形領域のおおよその境界となり得るか否かを判断する。
【００４６】
文字域抽出部２５は、このグループ境界が文書領域と写真図形領域のおおよその境界となり得ると判断された場合に、このグループ境界を挟む２つのグループ内の射影分布の差から文字領域と写真図形領域との境界を決定し、当該境界の接している射影分布の小さい側を文字領域として抽出する。ここでは、射影分布の差から谷部分を検出し、当該谷部分を文字領域と写真図形領域との境界とする。ただし、射影分布が０の領域と０で出ない領域が隣接している所があれば、その隣接している境界を文字領域と写真図形領域との境界とする。また、グループ境界が文書領域と写真図形領域のおおよその境界となり得えないと判断された場合には対象領域全体を文字領域として抽出する。なお、ここでは対象画像の長辺方向に対して、文字行域と写真図形領域を分離するようにしているが、これは、短辺方向に対して同様の処理を行ってもよく、長辺方向と短辺方向の両方について同様の処理を行ってもよい。
【００４７】
次に、本願発明に係る文字抽出装置である文字行抽出部３の構成を説明する。文字行抽出部３は、図１に示すように、画像データから以降の処理の基本単位となる基本矩形を構成する画素の連結する成分を適宜接続して文字行候補を生成する文字行候補生成部４、画素の連結する成分の構成から文字を構成する領域を囲む文字矩形を生成する文字矩形生成部５、文字行候補生成部４により生成された文字行候補を、文字矩形の平均値、分散値等に基づいて分割する文字行候補分割部６、文字行候補分割部６により分割された領域内で文字矩形を適宜接続する文字矩形接続部７よりなる。
【００４８】
文字行候補生成部４の構成を図４に示す。文字行候補生成部４中、画素連結矩形生成部４１は画像入力部１から入力された画像デ−タの内、文字領域抽出部２により抽出された領域に対して、連続している画素連結成分に外接する矩形（画素連結矩形）を生成する。この画素連結矩形の生成はラベリングなどの公知の手法を用いて行われる。画素連結矩形の例を図５に示す。図５中の各矩形ａ、ａ、・・・が画素連結矩形である。図からもわかるように画素連結矩形は必ずしも一文字に対応するものではなく、一文字の部分である場合もある。
【００４９】
文字行方向判定部４２は、主な文字行の方向を主方向として判定抽出する部分であり、文字行方向判定部４２は、図に示すように仮主方向決定部４２ａ、主方向判断部４２ｂ、主方向抽出部４２ｃにより構成される。
仮主方向決定部４２ａは、画像データの外形から仮の主方向を設定する。例えば、処理対象が英文であれば画像データの外形の短辺方向を仮の主方向とし、処理対象が名刺ならば画像データの外形の長辺方向を仮の主方向とする。もっとも、主方向の決定は画素連結矩形の配列の構成から行の多い方向を主方向と定めてもよい。なお、ここでは「主方向」とは画像データに含まれる大多数の文字行の方向をいい、主方向に直交する方向を「副方向」と呼んでいる。例えば、図７の画像データについては、横方向が主方向であり、これに、直交する方向が副方向である。
【００５０】
主方向判断部４２ｂは、後に述べる主方向部分文字行生成部４３で画素連結矩形を主方向に接続して生成された各主方向の部分文字行の構成から仮主方向決定部４２ａで決定した主方向が正しかったかどうかを判断する。ここで、画素連結矩形群の接続とは、例えば、図６に示すように、図５のように作成された各画素連結矩形群ａ、ａ・・をその位置関係から、グル−プ化してこれに外接する領域ｂを作成することであり、この領域ｂが主方向への部分文字行となる。
【００５１】
仮主方向決定部４２ａで決定した仮の主方向が正しかったかどうかの判断は、所定の長さを越え、かつ、画素連結矩形が所定の割合以上に詰まっている部分文字行が所定数あれば仮主方向決定部４２ａで決定した仮の主方向が正しかったと判断し、この条件を満たさなければ決定した仮の主方向が誤っていたと判断する。例えば、主方向部分文字行生成部４３で、図８（ａ）に示すような主方向の部分文字行が生成されたならば、十分に長く文字の詰まった文字行が多数存在しているので、仮の主方向は正しかった判断されるが、主方向部分文字行生成部４３で、図８（ｂ）に示すような主方向の部分文字行が生成されたならば、上記条件を満たさず、仮の主方向は誤っていたと判断される。なお、上記の他に、所定長さ以下の部分文字行が所定数あることや、所定長さを越え、画素連結矩形が所定の割合以下の部分文字行が所定数あることをもって、仮主方向決定部４２ａで決定した仮の主方向は誤っていたと判断する等の条件も考えられる。
【００５２】
最後に、主方向抽出部４２ｃは、主方向判断部４２ｂで仮の主方向が正しいと判断されればその仮の主方向を主方向として抽出し、仮の主方向が正しくないと判断されればその仮の主方向に直交する方向を主方向として抽出する。なお、以上の構成を有する文字行方向判定部４２と次に説明する主方向部分文字行生成部４３が本願発明に係る文字行主方向抽出装置を構成する。
【００５３】
主方向部分文字行生成部４３は主方向に重なり、かつ、近接する画素連結矩形群を主方向に接続して主方向の部分文字行として生成する。主方向への画素連結矩形の接続は、画素連結矩形間の距離や重なり度合い等の位置関係、大きさの違いなどの接続条件により接続するかどうか判定し、注目矩形に被接続矩形を接続していくという公知の手法を用いる。主方向部分文字行生成部４３での処理の結果は上述したように文字行方向判定部４２へと戻され、仮の主方向が正しいが否かの判断がされ、真の主方向が抽出される。ここで、仮の主方向が誤っていれば主方向部分文字行生成部４３は、抽出された真の主方向に基づき主方向の部分文字行を生成しなおす。一方、仮の主方向が正しければ主方向部分文字行生成部４３は何もせず以前に生成した結果をそのまま出力する。
【００５４】
非主方向部分文字行生成部４４は、接続されなかった画素連結矩形群のうち、互いに一定範囲に存するもの同士を接続して部分文字行を作成する。
部分文字行分類部４５は、生成された部分文字行を、大きさや縦横の比率から主方向の部分文字行、副方向の部分文字行、文字の部分文字行、その他の部分文字行などの属性に分類し、各部分文字行に対して、分類された固有の属性を設定する。例えば、縦横比等から副方向に長い部分文字行は副方向の部分文字行に分類され、縦横比がほぼ等しく、大きさが所定の閾値以下であれば文字の部分文字行であると分類され、抽出される。また、主方向の部分文字行は主方向部分文字行生成部４３によって接続された領域が、そのまま主方向の部分文字行となる。
【００５５】
文字副方向接続部４６は、属性が文字である部分文字行のうち、互いに副方向に重なりが大きく、近接するもの同士を接続する。なお、ここで近接するとは所定の距離以下の範囲に互いに存することをいい、重なる場合も含む。部分文字行副方向接続部４７は副方向に重なりが大きく、近接する部分文字行同士を接続する。部分文字行主方向接続部４８は主方向に重なりが大きい、副方向以外の部分文字行同士を主方向に接続する。文字行候補生成部４で部分文字行および部分文字行を接続してできた領域を「文字行候補」とする。
【００５６】
続いて、文字矩形生成部５の構成を図９に示す。文字矩形生成部５中、被分割領域分類部５１は文字行候補生成部４によって生成された文字行候補を被分割領域とし、この被分割領域を主方向、副方向、文字、その他の属性に分類する。副方向文字行抽出部５２は、属性が副方向の被分割領域を副方向の文字行として抽出する。被分割領域分割部は、属性が主方向の被分割領域を、主方向及び副方向に射影を取得し、射影と射影の間の空白部分が所定の閾値を越えるところで文字行候補を分割する。なお、射影とは図１０のｓ、ｓ・・・で示すようなある方向からの投影光が画素連結矩形によって遮られる部分をいい、空白部分は図１０のＢ、Ｂ、・・・で示すような射影と射影の隙間をいう。また、射影間の空白部分が所定の閾値を越えるところを本願では「セパレータ」とよぶ。文字矩形抽出部５４は、セパレータとなる空白部分がなくなった主方向の被分割領域および、文字、その他の属性をもつ被分割領域について、被分割領域内の各画素連結矩形を相互の位置関係に応じて、これに外接する矩形を「文字矩形」として生成する。ここで「文字矩形」とは、図１１（ａ）のように重なりのある画素連結矩形群を文字を構成するものと判断して、図１１（ｂ）に示すように、この画素連結矩形群に外接するように形成された矩形をいう。
【００５７】
文字行候補分割部６の構成を図１２に示す。文字行候補分割部６中、文字矩形平均値算出部６１は文字矩形生成部５によって、文字矩形生成の完了した文字行候補内の各文字矩形の主方向の一辺の大きさを文字サイズとして、これら文字サイズの平均値を文字サイズ平均値として算出する。文字矩形分散値算出部６３は文字サイズの分散値を算出する。平均値比較部６２は文字行候補短辺の長さと文字サイズ平均値の大小を比較する。文字構成判定部６４は文字行候補の短辺の長さが文字サイズ平均値より小さければ、文字行候補内には１文字行のみが存在すると判定する。文字行候補の短辺の長さが文字サイズの平均値より小さい場合があり得るのは、文字行内の画素連結矩形群が主方向に近接しており、二つ以上の文字が一文字として文字矩形に含まれる場合であり、かかる場合は文字間が近接しており、文字間には空間が無いものと考える。さらに、文字構成判定部６４は、文字行候補の短辺の長さが文字サイズ平均値より小さくなく、文字サイズの分散値が大きければ、文字行候補内には文字サイズが異なる複数の文字行が存在すると判定し、文字サイズの分散値が大きくなく、文字行候補短辺の長さと文字サイズ平均値がほぼ等しければ文字行候補内に同じ文字サイズの文字行が１列のみ存在し、かつセパレータが存在すると判定し、文字サイズの分散値が大きくなく、文字行候補短辺の長さが文字サイズ平均値より大きければ、文字行候補内に同じ文字サイズの文字行が２列存在すると判定する。ここでは、文字行候補短辺の長さと文字サイズ平均の比が２倍程度であれば２列と判定するが、文字行候補短辺の長さと文字サイズ平均の比が、３倍程度であれば３列である等の判定ができるのは言うまでもない。
【００５８】
大小文字矩形間検索部６５は文字構成判定部６４が文字行候補内には文字サイズが異なる複数の文字行が存在すると判定した場合に、大きい文字矩形と小さい文字矩形を挟む区間（図２５（ａ）参照）を検索する。大きい文字矩形と小さい文字矩形を挟む区間を検索する方法は、まず、文字行候補の端に位置する文字矩形を取得し、基準文字とする。次に基準文字に隣接する文字矩形を取得し、これを比較文字とする。基準文字と比較文字の文字サイズを比較して、極端な差異がなければ現在の比較文字を基準文字とし、次の隣接する文字矩形を比較文字として、文字サイズを比較する。そして、文字サイズに極端な差異があれば、この基準文字と比較文字の間が大きい文字矩形と小さな文字矩形を挟む区間であると認定する。
【００５９】
文字矩形間空白検索部６６は文字構成判定部６４が文字行候補内に同じ文字サイズの文字行が１列のみ存在し、かつセパレータが存在すると判定した場合に、セパレータとなる区間（図２７参照）を検索する。セパレータとなる区間の検索の方法は、文字行候補内で文字行方向に垂直な方向に文字矩形の射影をとり、その射影値より得られた空白部分について、セパレータとなる極端に大きい空白部分が存在するかどうか判定することにより行う。空白部分がセパレータになりうる程度に極端に大きいかどうかは、例えば最も大きい空白部分と２番目に大きい空白部分との比が閾値以上であるかどうかなどにより判定する。
【００６０】
文字行段差部検索部６７は、文字構成判定部６４が文字行候補内に同じ文字サイズの文字行が２列以上存在すると判定した場合に、２列に並んだ文字行の中間的な位置に、段差をもって存在する文字行（図２９（ａ）参照）と２列の文字行の区間を検索する。なお、本願では、この中間的な位置に存在する文字行を「１／２改行文字行」と呼ぶ。この区間の検索の方法は、まず、１／２改行文字行の存在範囲を計算する。１／２改行文字行の存在範囲は例えば、短辺方向の中心が文字行候補と等しく、短辺方向の幅が平均文字サイズの値と等しい矩形内とする。次に、文字行候補の端に位置する文字矩形を取得し比較文字とする。比較文字が１／２改行文字行の存在範囲内に含まれていれば、現在の比較文字に隣接する文字矩形を次の比較文字とする。このような操作を順次行い、比較文字が１／２改行文字行の存在範囲外となったところで、当該比較文字の文字矩形と直前に比較文字であった文字矩形との間の区間を、１／２改行文字行と２列の文字行の間の区間であると認定する。なお、最初の比較文字が１／２改行文字行の存在範囲外である場合は、１／２改行文字行は存在しないとみなし分割は行なわない。
【００６１】
区間分割部６８は、大小文字矩形間検索部６５、文字矩形間空白検索部６６、文字行段差部検索部６７によって検索された区間で、文字行候補を分割する。
特殊文字判定部６９は、文字行段差部検索部６７で検索された区間に隣接する文字矩形が所定の特殊文字であるか否かを判定する。特殊文字とは、例えば、１／２改行文字行と２列の文字行の間に挿入される｛等の特殊な文字をいう（図２９（ｂ）参照）。特殊文字の判定は、１／２改行文字行を抽出した残りの領域内において、１／２改行文字行に最も近い最初の１文字が｛等の特殊文字であるかどうかにより行う。特殊文字であるかどうかは、文字矩形の形状が他の文字矩形に比べて極端に大きいかどうかなどにより判定する。そして、特殊文字分割部７０は特殊文字判定部６９で特殊文字が存在すると判定された場合に、当該特殊文字を分割する。
【００６２】
最後に、文字矩形接続部７について説明する。文字矩形接続部７は文字行候補分割部６による分割処理が終了した後、所定の接続条件を満たす文字行候補を分割した領域内の文字矩形群を主方向に接続する。文字矩形群の接続は、矩形間の距離や重なり度合い、大きさの違いなどの接続条件により接続するかどうか判定し、注目矩形に被接続矩形を接続していくという公知の手法を用いる。なお、文字行段差部検索部６７で生成された１／２改行文字行部分など、分割領域内に１文字行しか存在しないことがわかっている場合は、分割領域をそのまま文字行として抽出する。
【００６３】
以上の構成により文字行抽出部３は文字行を抽出することができるが、図１のブロック図では、さらに文字行を抽出した後に、ルビ文字行抽出部８、ノイズ文字行削除部９を設けて、ルビを構成する文字行の抽出と、ノイズ文字行の削除を行なっている。
まず、ルビ文字行抽出部８の構成を図１３に示す。ルビ文字行抽出部８中、ルビ矩形抽出部８１は文字行抽出部３によって抽出された文字行の領域を示す各矩形に注目し、ルビかどうかを判定する。注目した矩形がルビかどうかは、矩形の大きさと予め定められた閾値よりも小さいか否か等により判定する。親文字行検索部８２は、ルビ矩形抽出部８１によって、注目した矩形がルビと判定されたならば、当該ルビ矩形の近くにある可能性のある「親文字行」を検索する。なお、「親文字行」とは、ルビがふられている文字行をいう。親文字行が存在するかどうかは、注目した矩形の最近接文字行と注目した矩形の距離が近く、最近接文字行が十分大きければ、当該最近接文字行を親文字行とする等の方法で行う。ルビ存在可能範囲決定部８３は、親文字行検索部８２によって検索された親文字行を基準として、ルビの存在可能範囲を決定する。ルビの存在範囲は、例えば、親文字行の注目した矩形がある側に接し、長辺の長さが親文字行と等しく、短辺の長さが予め定められた閾値以内である領域内とする。ルビ文字行作成部８４は、ルビの存在可能範囲に含まれるすべての文字行の領域を表す矩形を注目矩形に接続することにより、ルビ文字行を抽出する。
【００６４】
次に、ノイズ文字行削除部９の構成を図１４に示す。ノイズ文字行削除部９中、ノイズ文字行判定部９１は抽出された各文字行がノイズであるかどうかを判断する。判断はその文字行に含まれる文字矩形の数が定められた第１の閾値よりも大きければ、その文字行がノイズであると判断する。ノイズ文字行候補判断部９２は各文字行内の文字矩形の数が前記第１の閾値よりも小さく、第１の閾値よりも小さい定められた第２の閾値よりも大きければ、その文字行をノイズ文字行候補と判断する。これら第１、第２の閾値は処理対象に応じて経験的に見出される値であり予め定められる。ここでは、第１の閾値として２００、第２の閾値として５と定めてある。ノイズ文字行候補検証部９３は、ノイズ文字行候補内の文字矩形の大きさの平均値を算出し、この平均値が予め定められる所定の値以下であれば、そのノイズ文字行候補をノイズと判断する。この所定の値は実験等によって得られ予め定められる。ここでは、この値を４００ｄｐｉの解像度で６ピクセル（原画像で０．４ｍｍ）としている。なお、上記の判断は文字矩形の数や大きさでなく、画素連結矩形の数や大きさによって行ってもよい。また、文字矩形や画素連結矩形の大きさは所定の位置方向の辺の長さを用いる。以上の動作の後、ノイズ文字行削除部９４はノイズと判定された文字行を削除する。
【００６５】
以上の構成を有する文字行抽出装置による文字行抽出方法の動作について、名刺画像から文字行を抽出する場合を例にとって以下に説明する。まず、文字領域抽出部２の操作について説明する。図１５に文字領域抽出部２の動作を表すフローチャートを示す。ここでは、図３に示す名刺から文字領域を抽出するものとする。
【００６６】
文字領域抽出部２の射影分布生成部２１は、画像入力部１から入力された名刺の画像データから、射影分布を生成し、平滑化する（ステップ１０１）。これにより図３（ａ）のような名刺画像の場合から、図３（ｂ）のような射影分布が得られる。
射影グループ生成部２２は、生成された射影分布を名刺画像に対応して予め定められれた所定の幅をもってグループ化し、射影グループ代表値算出部２３は生成された各グループ毎に射影分布の平均値を求める（ステップ１０２）。これにより、図３（ｂ）のような射影分布から、図３（ｃ）のような射影グループの分布が得られる。
【００６７】
グループ境界抽出部２４は、隣接する射影グループ間の平均値の差が最大となるグループ間の境界を射影グループの境界として抽出する（ステップ１０３）。この動作により図３（ｃ）に示す射影グループの分布の場合は、グループ境界ｌが抽出される。さらに、グループ境界抽出部２４は、このグループ境界によって分けられた各々の領域の射影グループの平均値および各々の領域の幅を算出し（ステップ１０４）、その平均値、領域の幅に基づき、当該グループ境界が文章領域と写真領域のおおよその境界となり得るか否かを判断する（ステップ１０５）。図３（ｃ）におけるグループ境界ｌの場合には、このグループ境界ｌによって分けられた各々の領域の射影グループ間の平均値の差が大きく、各々の領域の幅も妥当であるのでグループ境界ｌは文章領域と写真領域のおおよその境界となり得ると判断される。
【００６８】
ステップ１０５でグループ境界が文書領域と写真図形領域のおおよその境界となり得ると判断された場合には、文字域抽出部２５はこのグループ境界を挟む２つのグループ内の射影分布の差から文字領域と写真図形領域との境界を決定し、当該境界の接している射影分布の小さい側を文字領域として抽出する（ステップ１０６）。例えば、図３（ｃ）で射影グループの境界ｌが求まれば、これに隣接する射影グループＡ、Ａ内に含まれる図３（ｂ）中の射影分布領域から文字領域と写真図形領域との境界Ｌが求まる。そして、この境界Ｌに接している射影分布の小さい側、即ち、境界Ｌの右側の領域が文字領域と判断される。
【００６９】
また、ステップ１０５でグループ境界が文書領域と写真図形領域のおおよその境界となり得ると判断されなかった場合には、文字域抽出部２５は対象領域全体を文章領域と判断する。以上の動作により対象画像から文字領域が抽出される。なお、グループ境界抽出部２４は、隣接する射影グループの値の差が最大となる部分を、射影グループの境界位置として抽出する（ステップ１０３）だけにとどめ、ステップ１０４、１０５を省略することも可能である。
【００７０】
次に、文字行抽出部３の大まかな動作について、図１６を用いて説明する。図１６は文字行抽出部３の処理を示すフローチャートである。まず、文字行候補生成部４は、画像入力部１から取り込んだ画像データから文字行候補を生成する（ステップ２０１）。次に文字矩形生成部５は文字行候補を一つ取得し（ステップ２０２）、文字行候補内で、文字矩形を生成する（ステップ２０３）。そして、文字行候補分割部６は文字行候補内の文字矩形の構成に応じてこの文字行候補を分割する（ステップ２０４）。さらに、文字矩形接続部７は、文字行候補の分割により生成された分割領域を１つ取得し（ステップ２０５）、分割領域内で文字矩形の接続を行なう（ステップ２０６）。文字矩形接続部７は全ての分割領域について、同様の操作を繰り返す（ステップ２０７）。文字矩形生成部５、文字行候補分割部６、文字矩形接続部７は、以上の動作（ステップ２０２〜ステップ２０７）を文字行候補生成部４で生成された全ての文字行候補の処理がされるまで繰り返す（ステップ２０８）。
【００７１】
以下に、各構成部分の動作についてさらに詳細に説明する。まず、文字行候補生成部４の動作について図１７を用いて説明する。図１７は文字行候補生成部４の動作を示すフローチャートである。文字行候補生成部４の画素連結矩形生成部４１は、画像入力部１から入力された名刺の画像デ−タから、画素連結矩形を生成する（ステップ３０１）。次に、文字行方向判定部４２の仮主方向決定部４２ａは、名刺画像の形状から仮の主方向を決定する（ステップ３０２）。名刺の場合、ほとんどの場合が名刺画像の長辺と文字行は平行であるため、長辺方向を仮の主方向と設定する。次に、主方向部分文字行生成部４３は、各画素連結矩形群の位置関係等の情報から、生成された画素連結矩形群を主方向に接続して主方向の部分文字行を生成する（ステップ３０３）。それから、主方向判断部４２ｂが仮主方向決定部４２ａで決定した主方向が正しかったかどうかを判断する（ステップ３０４）。ここで、仮の主方向が誤っていたと判断されたときは主方向抽出部４２ｃは、仮の主方向と直交する方向を主方向として抽出し（ステップ３０５）、主方向部分文字行生成部４３は新たに主方向の部分文字行を生成する（ステップ３０６）。一方、主方向判断部４２ｂで仮の主方向が誤っていたと判断されたときは、主方向抽出部４２ｃは、仮の主方向主方向として抽出し（ステップ３０７）、主方向部分文字行生成部４３は何もしない。このような処理によって、例えば図８（ｂ）に示すような名刺であっても適切に主方向を抽出することができる。
【００７２】
つぎに、非主方向部分文字行生成部４４は主方向以外の部分文字行を作成する（ステップ３０８）。まず最初に主方向に画素連結矩形群を接続して主方向の部分文字行を生成し、それから主方向以外の部分文字行を作成するのは、文字行の多くは主方向の文字行であり、主方向の文字行が並列に並んでいる場合に、副方向に重なりのある文字同士が副方向の部分文字行と判断されることを避けるためである。
【００７３】
図１８に、ステップ３０１から３０８までを実行した結果の一例を示す。図に示すように、主方向への接続パラメータの一つである矩形間の距離の閾値を厳しく設定すると図１８（ａ）のように接続不十分な箇所が発生し、逆に緩く設定すると図１８（ｂ）のように重なり度合いの大きい副方向文字行の一部と接続してしまう。また、図１８（ｃ）のように画素連結矩形が上下に別れた文字が連続する文字行の場合、１文字行が上下に分離してしまうこともある。このようにステップ３０３や３０８による接続において、常に最適の接続パラメータを設定することは容易ではない。このように接続パラメータが適切でなかった場合に対応できるように文字行候補生成部４はさらに、以下の処理を行う。この処理手順を図１９を参照しながら説明する。
【００７４】
まず、部分文字行分類部４５は、各画素連結矩形群の位置関係、矩形の形状などの情報から、主方向の部分文字行、副方向の部分文字行、文字の部分文字行、その他の部分文字行などの属性に分類し、各部分文字行に対して、分類された固有の属性を設定する（ステップ３０９）。図１９（ａ）においては、「Ｍ」「ｉ」「Ｌ」「Ｈ」を囲む部分文字行の属性が文字であると設定され、その他の部分文字行は属性が主方向の部分文字行であると設定される。なお、「Ｍ」「ｉ」「Ｌ」「Ｈ」は互いに距離が離れているため、それぞれを囲む領域が部分文字行とされたが、距離の閾値を大きく設定していたなら、この四つの文字を囲む領域が副方向の部分文字行と判断されることもあり得る。文字副方向接続部４６により属性が文字である部分文字行のうち、互いに副方向に重なりが大きく、近接するもの同士を接続する（ステップ３１０）。この操作は主方向の接続（ステップ３０３等）では抽出できない副方向の部分文字行を抽出するために行う。例えば、図１９（ａ）において、属性が文字の部分文字行は「Ｍ」「ｉ」「Ｌ」「Ｈ」を囲む部分文字行であり、副方向に重なりが大きく、近接するので、図１９（ｂ）のハッチング部分に示すように副方向に接続される。さらに、部分文字行副方向接続部４７は、副方向に重なりが大きく、近接する部分文字行同士を接続する（ステップ３１１）。これは、図１８（ｃ）のような誤接続に対処するために行なう。例えば、図１９（ｂ）では、右下の二つの矩形で囲まれる部分文字行が、互いに副方向に重なり、近接しているので、図１９（ｃ）のハッチング部分に示すように副方向に接続される。最後に、部分文字行主方向接続部４８は、主方向に重なりが大きい、副方向以外の部分文字行同士を主方向に接続する（ステップ３１２）。これは図１８（ａ）または図１８（ｃ）のような誤接続に対処するために行なう。例えば、図１９（ｃ）では、下の二つの矩形で囲まれる部分文字行が主方向に重なりが大きいので、図１９（ｃ）のハッチング部分に示すように接続される。
【００７５】
ところで、以上の処理によっても、文字行候補生成部４の、主方向部分文字行生成部４３、文字副方向接続部４６、部分文字行副方向接続部４７、部分文字行主方向接続部４８における接続パラメータと、読み取る画像データの構成によっては、うまく文字行の抽出ができないことがある。例えば、主方向部分文字行生成部４３によって図２０（ａ）のように接続された後に、部分文字行副方向接続部４７によって図２０（ｂ）のように副方向文字行の全体を含んだ１つの文字行候補として統合されてしまうことがある。このような場合であっても以下の文字矩形生成部５の処理によって、副方向の文字行も１つの文字行として抽出できる。
【００７６】
文字矩形生成部５の動作について図２１を用いて説明する。図２１は文字矩形生成部５の動作を示すフローチャートである。この図において最初に入力されるのは、上記の文字行候補生成部４によって生成された文字行候補の任意の１つである。ここでは、図２２（ａ）に示す文字行候補が入力されたとする。まず、被分割領域分類部５１は文字行候補を最初の被分割領域とする（ステップ４０１）。そして、被分割領域に主方向、副方向、文字、その他のいずれかに分類して属性を設定する（ステップ４０３）。図２２（ａ）に示す被分割領域は主方向の属性に設定される。被分割領域の属性が副方向文字行または文字であれば何もせず（ステップ４０４）、それ以外であれば、被分割領域分割部５３が被分割領域内で画素連結矩形の射影を取得する（ステップ４０５）。セパレータとなる空白部分があれば（ステップ４０６）、セパレータとなる空白部分の前後で被分割領域を分割する（ステップ４０７）。図２２（ａ）において、主方向、副方向の両方向に射影をとると、まず縦に長い空白部分が見つかり、この空白部分をセパレータとして左右に分割した結果が図２２（ｂ）である。
【００７７】
次に、分割してできた領域それぞれを新たな被分割領域とし（ステップ４０８）、未処理の被分割領域が存在する間（ステップ４０９）、ステップ４０２から繰り返す。図２２（ｂ）では新たな被分割領域が左右にできるので、この新たな被分割領域に対して処理が繰り返される。左側の領域は縦に細長いため、属性が副方向であるとされ、これ以上分割されない。右側の領域は横に長く、適当な大きさがあるため、副方向文字行でも文字でもない。そして、右側の領域に射影をとると、今度は横に細長い空白部分がみつかり、これらの上下で分割すると図２２（ｃ）のようになる。ステップ４０６でセパレータとなる空白部分がなければ、文字矩形抽出部５４は被分割領域内の重なりのある画素連結矩形を統合することにより、文字矩形を生成する（ステップ４１０）。図２２（ｃ）では、上の２つの領域には、広い空白部分が存在しないので、文字矩形抽出部５４により文字矩形が生成される。一方、一番下の領域（「吉森亜依」の文字行）では、文字間に広い空白部分が存在するので、それぞれの左右で分割され図２２（ｄ）のようになる。分割により生じた領域は、縦横比が小さいことや長辺の長さが閾値以内であることから、属性が文字となるのでこれ以上分割されず、これらから文字矩形抽出部５４により文字矩形が生成される。なお、以上の動作はあくまで文字矩形を生成するためのものであり、文字行候補は分割されず、以上の動作によっても、もとの文字行候補生成部４で生成された図２２（ａ）の矩形の領域が文字行候補であることには変わりがない。
【００７８】
今度は、文字行候補分割部６について図２３を用いて説明する。図２３は文字行候補分割部６の動作を示すフローチャートである。まず、文字行候補分割部６は、文字矩形生成部５で文字矩形生成の完了した文字行候補を１つ取得する（ステップ５０１）。次に、文字矩形平均算出部６１により、文字行候補内の文字矩形の長辺の長さの平均値を算出する（ステップ５０２）。次に、平均値比較部６２により文字行候補の短辺の長さと文字サイズ平均値を比較する。文字構成判定部６４は文字行候補の短辺の長さが文字サイズ平均値より小さければ（ステップ５０３）、文字行候補内には１文字行のみが存在すると判定し、分割は行なわない。それ以外であれば、文字矩形分散値算出部６３により、文字サイズの分散値を算出する（ステップ５０４）。文字構成判定部６４は、文字サイズ分散値が大きければ（ステップ５０５）、文字行候補内には文字サイズが異なる複数の文字行が存在すると判定し、文字行候補の分割１の処理を行なう（ステップ５０６）。文字サイズの分散値が小さく、文字行候補短辺の長さと文字サイズ平均値がほぼ等しければ（ステップ５０７）、文字行候補内に同じ文字サイズの文字行が１列のみ存在し、かつセパレータが存在すると判定し、文字行候補の分割２の処理を行なう（ステップ５０８）。文字サイズの分散値が小さく、文字行候補短辺の長さが文字サイズの平均値より大きければ（ステップ５０９）、文字行候補内に同じ文字サイズの文字行が２列以上存在すると判定し、分割３の処理を行なう（ステップ５１０）。文字行候補の分割１、２、３については以下に述べる。
【００７９】
まず、文字行候補の分割１の処理を図２４を用いて説明する。図２４は文字行候補の分割１の処理のフローチャートである。文字行候補の分割１は、文字行候補を文字矩形の大きさが不連続な箇所で分割する処理である。まず、文字行候補内に文字サイズが異なる複数の文字行が存在すると判定されると、大小文字矩形間検索部６５は当該文字行候補の端に位置する文字矩形を取得し、基準文字とする（ステップ６０１）。次に基準文字に隣接する文字矩形を取得し、これを比較文字とする（ステップ６０２）。基準文字と比較文字の文字サイズに極端な差異があれば（ステップ６０３）、区間分割部６８により基準文字と比較文字の間で文字行候補を分割する（ステップ６０４）。極端な差異がなければ現在の比較文字を基準文字とし（ステップ６０５）、次の文字矩形が存在する間（ステップ６０６）、ステップ６０２より繰り返す。
【００８０】
かかる処理を、図２５を用いてさらに具体的に説明する。ｘｙ座標系で考えた場合、横に長い文字行候補においては矩形左辺のｘ座標の小さい順に処理を行なう。図２５（ａ）において、最初、文字矩形１を基準文字とし、文字矩形２を比較文字とする。文字矩形１と文字矩形２の大きさはほぼ等しいので、次に、文字矩形２を基準文字とし、文字矩形３を比較文字とする。このような処理を文字矩形の大きさに極端な差異が生じるまで進めていく。文字矩形４を基準文字とし、文字矩形５を比較文字としたところで、初めて文字矩形の大きさに極端な差異が生じるので、この文字矩形４と文字矩形５の区間が分割する区間とされる。このようにして文字行候補を分割しておくと、文字行方向に一列に並んだ、異なる文字行同士が誤接続されるのを防ぐことができる。また、図２５（ｂ）に示すように、分割領域内に列方向に複数の文字行が存在する場合は、その後、分割領域内において文字矩形同士を主方向に接続することにより、図２５（ｃ）のように正確に文字行が抽出される。
【００８１】
次に、文字行候補の分割２の処理について、図２６を用いて説明する。図２６は文字行候補の分割２の処理を示すフローチャートである。文字行候補の分割２の処理は、文字行候補をセパレータとなる空白部分の前後で分割する処理である。まず、文字行候補内に同じ文字サイズの文字行が１列のみ存在し、かつセパレータが存在すると判定されると、文字矩形間空白検索部６６は、当該文字行候補内で文字行方向に垂直な方向に文字矩形の射影をとる（ステップ７０１）。次に、その射影値より得られた空白部分について、セパレータとなる極端に大きい空白部分が存在するかどうか判定する（ステップ７０２）。セパレーターとなる空白部分が存在すると判定された場合には区間分割部６８は、セパレータとなる空白部分の前後で文字行候補を分割する（ステッ７０３）。このような文字行候補の分割２の処理によって、例えば図２７に示すような文字行方向に一列に並んだ、異なる文字行が含まれる文字行候補はセパレータから左右に分割され、これらの異なる文字行が互いに誤接続されるのを防ぐことができる。
【００８２】
最後に、文字行候補の分割３の処理について図２８を用いて説明する。図２８は文字行候補の分割３の処理を示すフローチャートである。文字行候補の分割３は、２列に並んだ文字行の中間的な位置に存在する１／２改行文字行部分と２列に並んだ文字行の部分に分割する処理である。まず、文字行候補内に同じ文字サイズの文字行が２列以上存在すると判定されると、文字行段差部検索部６７は１／２改行文字行の存在範囲を計算する（ステップ８０１）。次に、文字行候補の端に位置する文字矩形を取得し、比較文字とする（ステップ８０２）。比較文字が１／２改行文字行の存在範囲内に含まれていれば（ステップ８０３）、次の文字矩形が存在する間（ステップ８０４）、現在の比較文字に隣接する文字矩形を次の比較文字とし（ステップ８０５）、ステップ８０３より繰り返す。１／２改行文字行の存在範囲外の文字が最初の比較文字であれば（ステップ８０６）、１／２改行文字行は存在しないとみなす。全文字矩形が１／２改行文字行範囲に含まれる場合も同様である。１／２改行文字行の存在範囲外となった文字が最初の比較文字でなければ、区間分割部６８は、比較文字の前後で文字行候補を分割する（ステップ８０７）。これらの処理によって、図２９（ａ）上段に示すような文字行候補は、下段に示すように分割される。これにより、１／２改行文字行と残りの２列の文字行が誤接続されるのが防がれ、１／２改行文字行部分はそのまま文字行とし、残りの２列の文字行部分についてはその後、分割領域内において文字矩形同士を主方向に接続することにより、２列の文字行をそれぞれ抽出することができる。
【００８３】
さらに、文字行候補の分割３は図２９（ｂ）に示すような１／２改行文字行に続く２行が｛等の特殊文字でくくられている場合に、この特殊文字を分割する処理も行う。即ち、ステップ８０７による分割後、１／２改行文字行を抽出した残りの領域内において、１／２改行文字行に最も近い最初の１文字が｛等の特殊文字であるかどうか判定する（ステップ８０８）。特殊文字であれば、その文字と残りの部分の間で文字行候補を分割する（ステップ８０９）。かかる処理によって、図２９（ｂ）上段の右側の文字行候補は、図の下段に示すように、特殊文字と２列の文字行部分が分離され、これにより、｛の文字矩形の影響でこれらの２列の文字行を別々の行として抽出できないということを防ぐことができる。
【００８４】
そして、文字矩形接続部７は、文字行候補分割部６による文字行候補の分割処理が終了した後、所定の接続条件を満たす文字行候補の分割した領域内の文字矩形群を主方向に接続して文字行を抽出する。
次に、ルビ文字行抽出部８の動作について説明する。ルビ文字行抽出部８は、ルビを構成する文字行を抽出する。つまり、以上に述べた文字行抽出部３の処理によって文字行を抽出した後であっても、ルビを構成する文字群は大きさに比較して互いの距離が非常に離れているため、文字矩形接続部７によってはルビを構成する文字矩形は接続できない場合があるために、特にルビ文字行抽出部８を設けてルビを構成する文字行を抽出する。
【００８５】
図３０はルビ文字行抽出部８の動作を示すフローチャートである。図３０の入力状態は、文字行抽出部３によって文字行抽出がすべて完了された状態である。ここでは、例えば図３１（ａ）のような画像が入力されているとする。まず、ルビ矩形抽出部８１は生成した文字行のそれぞれを注目矩形とし、注目矩形がルビかどうか判定する（ステップ９０１）。図３１（ａ）では、例えば矩形の大きさ等から「よ」を囲む文字行がルビ矩形と判定される。注目矩形がルビと判定されたならば、親文字行検索部８２はルビ矩形の近傍において親文字行を検索する（ステップ９０２）。図３１（ａ）では、ルビ矩形からの距離や大きさ等から「吉森  亜  依」を囲む文字行が親文字行として認定される。親文字行が見つかった場合には、ルビ存在可能範囲決定部８３はルビの存在可能範囲を決定する（ステップ９０３）。図３１（ａ）のように「よ」がルビ矩形であり、「吉  森  亜依」を囲む文字行が親文字行とされた場合は、図３１（ｂ）のトーン部分がルビ文字行存在可能範囲と決定される。最後に、ルビ文字行作成部８４がルビの存在可能範囲に含まれるすべての矩形を注目矩形に接続することにより、ルビ文字行を抽出する（ステップ９０４）。この結果、図３１（ａ）のように離れていたルビを構成する文字行は、図３１（ｃ）のように統合されて、一つの文字行となる。
【００８６】
最後にノイズ文字行削除部９の動作について説明する。ノイズ文字行削除部９は、以上に述べた文字行抽出部３、ルビ文字行抽出部８の処理によって生成された各文字行について、その文字行を構成する文字矩形の数や大きさから、その文字行がノイズであるかを判断し、ノイズにより構成される文字行を削除する。
図３２はノイズ文字行削除部９の動作を示すフローチャートである。図３２の入力状態は、文字行抽出部３およびルビ文字行抽出部８によって文字行抽出がすべて完了された状態である。ノイズ文字行判定部９１は、抽出された各文字行から一つの文字行を取得し（ステップ１００１）、その文字行に含まれる文字矩形の数が予め定められた第１の閾値ａよりも大きいか否かを判断する（ステップ１００２）。ステップ１００２で文字矩形の数が第１の閾値よりも大きい場合は、その文字行はノイズであると判断され、ノイズ文字行削除部９４が、これを削除する（ステップ１００６）。
【００８７】
また、文字矩形の数が第１の閾値ａよりも大きくないときは、ノイズ文字行候補判断部９２が、文字矩形の数が第２の閾値ｂよりも大きいか否かについて判断する（ステップ１００３）。ここで文字矩形の数が第２の閾値ｂよりも小さければ、この文字行はノイズでないと判断する。一方、文字矩形の数が第２の閾値ｂよりも大きい場合はノイズの可能性があるのでノイズ文字行候補であると判断する。例えば、ここで図３３（ａ）（ｂ）のような文字行をノイズ文字行候補と判断したものとする。
【００８８】
ノイズ文字行候補に対し、ノイズ文字行候補検証部９３は、当該ノイズ文字行候補内の文字矩形の大きさの平均値を算出し（ステップ１００４）、この平均値が文字行の短辺の長さに対して所定の割合以下であるか否かを判断する（ステップ１００５）。ここで、所定の割合以下であると判断された場合は、当該文字行はノイズであると判断され、ノイズ文字行削除部９４がこれを削除する（ステップ１００６）。図３８（ｂ）に示すノイズ文字行候補は、文字矩形の大きさの平均値が文字行の短辺の大きさより十分小さいので、ノイズと判断されて削除される。一方、所定の割合以下でないと判断された場合は、当該文字行はノイズではないと判断される。図３８（ａ）に示すノイズ文字行候補は、文字矩形の大きさの平均値が文字行の短辺の長さに比較的近い値となり、ノイズではないと判断される。以上の動作（ステップ１００１〜ステップ１００６）を全ての文字行に対して行い（ステップ１００７）、ノイズを構成する文字行を削除は完了する。
【００８９】
なお、上記実施の形態において文字行候補生成部４では、主方向の文字行が並列に並んでいる場合に、副方向に重なりのある文字同士が副方向の部分文字行と判断されることを避けるため、最初に主方向の部分文字行を作成して、それからその他の部分文字行を作成した。しかし、処理対象の特定の領域に副方向の文字行が高い確率で現れることが経験的にわかっているときは、この特定の領域についてのみ先に副方向の文字行を作成しておくことが望ましい。例えば、上記実施の形態に基づく処理によって文字行候補生成部４が図３４（ａ）に示すような文字行候補を生成した場合、文字矩形生成部５において射影の取得を行っても副方向文字行「ａ」と他の主方向文字行の間が詰まっており、セパレータとなりうる空白部分が発生しない。したがって、副方向文字行「ａ」が独立して副方向の属性を与えられることはなく、図３４（ｂ）のように、単独で文字矩形として生成される。さらに、文字行候補分割部６、文字矩形接続部７の処理によって、結果として図３４（ｃ）のような文字行が抽出されてしまう。一方、対象画像が名刺であって主方向が長辺方向である場合は、図３５に示すような両短辺に沿う一定領域Ｘに副方向の文字行が現れる確率が高いことが知られている。このような場合には、このような領域における文字行を先に生成しておけば上述のような事態を防ぐことができる。
【００９０】
かかる目的を達成するためには、文字行候補生成部４において図３６に示すように、処理対象の画像データの予め定められた所定領域内において、副方向に重なり、かつ、近接する画素連結矩形群を副方向に接続して副方向の部分文字行として生成する特定領域部分文字行生成部４９を設ければよい。
特定領域部分文字行生成部４９を設けたときの部分文字行分類に至るまでの動作を表すフローチャートを図３７に示す。これ以下の動作は図１７に示すフローチャートと同じである。これに基づき図３８（i） に示す名刺画像を例にとって動作を説明すると、画素連結矩形生成部４１は名刺の画像データから画素連結矩形を生成し（ステップ１１０１）、文字行方向判定部４２の仮主方向決定部４２ａは仮の主方向を決定する（ステップ１１０２）。ここでは上述したように名刺画像の長辺方向が仮の主方向とされる。次に、特定領域部分文字行生成部４９が予め定められた特定の領域において、副方向の部分文字行を生成する（ステップ１１０３）。ここでは図３５のハッチングされた領域Ｘが予め定められた領域であるとする。すると、図３８（i） の名刺画像から図３８（ii）のように、「☆ａｎａｓｏｎｉｃ」の部分が副文字行として抽出される。
【００９１】
それから、上述した文字行候補生成部４の動作と同様にして、主方向部分文字行生成部４３が主方向の部分文字行が生成し（ステップ１１０４）、主方向判断部４２ｂが、領域Ｘ以外の領域において仮の主方向が正しいか否かを判断し（ステップ１１０５）、ここで正しいと判断された場合は主方向抽出部４２ｃがその方向を主方向として抽出する。一方、ステップ１１０５で正しくないと判断されたときは、主方向抽出部４２ｃが仮の主方向と直交する方向を主方向として抽出し（ステップ１１０７）、特定領域部分文字行生成部４９が、以前の特定領域における文字行の生成を取り消し、新たに特定領域の部分文字行を生成する（ステップ１１０８）。ただし、仮の主方向が変わることで通常は特定領域も変わるが、場合によっては仮の主方向が変わることによって特定の領域がなくなる場合もある。そのような場合には、特定領域部分文字行生成部４９での文字行の生成は行われない。今の場合は、名刺画像であるが主方向が短辺に平行な方向となった場合は、かかる特定領域は存在しなくなるので、ステップ１１０８では以前の特定領域を取り消すに留まる。ステップ１１０８、１１０９の後、非主方向部分文字行生成部４４がその他の部分文字行を生成する（ステップ１０１０）。この結果、文字行候補生成部４において図３８（i）の名刺画像からは図３８（iii）のよう文字行候補が生成される。これにより、以後の処理によっても副方向の文字行の一部が主方向の文字行に取り込まれることがなくなる。なお、特定領域において副方向を接続する際の接続条件は、特定領域に存在する主方向の部分文字行の一部を誤接続しないように、厳しく設定しておくことが望ましい。
【００９２】
さらに、上記実施の形態において、文字行候補生成部４の部分文字行副方向接続部４７は図１８（ｃ）に示すような１文字行が上下に分離してしまった属性が文字行である部分文字行を接合するために、副方向に重なりが大きく、近接する部分文字行同士を接続している。この際、近接するか否かは部分文字行を構成する矩形間の距離が所定の閾値よりも小さいか否かによって判断するが、画像が傾いて画像入力部１から取り込まれた場合は、この部分文字行を構成する矩形間の距離が実際よりも小さくなってしまう。例えば、図３９（ａ）の名刺画像の下方の電話番号とファクシミリ番号の文字行間の距離は、傾きなしに画像入力部１から取り込まれた場合はｄであるが、図３９（ｂ）に示すように角度θだけ傾いて取り込まれた場合は、両文字間の距離はｄ’になり、小さくなってしまう。この結果、部分文字行副方向接続部４７によって接続されるべきでない両文字行が接続されてしまう。そして、傾きが大きく両矩形間が一定距離以内となれば、文字矩形生成部５においてもこの間隔をセパレータと認識できず、個々の文字が文字矩形として生成されずに正しい文字行抽出が行われなくなることもあり得る。このことは部分文字行が長い場合に傾きによる移動量が大きくなるため顕著に現れる。
【００９３】
そこで、このように名刺画像が傾きをもって入力された場合に対処する手段として、部分文字行副方向接続部４７を図４０に示すような構成とすることができる。即ち、部分文字行副方向接続部４７に、副方向に重なり、かつ、準近接する主方向の部分文字行同士を抽出する準近接部分文字行抽出部４７ｂと、この準近接部分文字行抽出部４７ｂで抽出された部分文字行同士間における各部分文字行に含まれる画素連結矩形の距離が所定の値以下であれば、当該部分文字行同士を接続し新たな主方向の部分文字行を生成する準近接部分文字行接続部４７ｃを付加する。なお、近接部分文字行副方向接続部４７ａは、上述した実施の形態における部分文字行副方向接続部４７と同様のものであり、副方向に重なり、かつ、近接する主方向の部分文字行群を接続して新たな主方向の部分文字行を生成する。
【００９４】
このような構成を有する部分文字行副方向接続部４７の動作を図４１を用いて説明する。図４１は部分文字行副方向接続部４７の動作を示すフローチャートである。まず、近接部分文字行副方向接続部４７ａが部分文字行のペアを取得し（ステップ１２０１）、副方向に十分重なるか否か、ここでは長辺の短い方の１／２以上重なるか否かを判断する（ステップ１２０２）。ここで、十分に重ならないと判断した場合は、その部分文字行のペアについての処理は終了する。
【００９５】
十分に重なると判断された場合は、次に各部分文字行を構成する矩形間の距離が所定の近接していると言える距離の範囲、ここでは短辺の短い方の３０％以上重なっている距離の範囲にあるか否かを判断する（ステップ１２０３）。ここで、近接していると判断した場合は当該部分文字行同士を接続する（ステップ１２０７）。
【００９６】
近接していないと判断した場合は、準近接部分文字行抽出部４７ｂによって、各部分文字行を構成する矩形間の距離が所定の準近接していると言える距離の範囲、ここでは４００ｄｐｉの精度で１ピクセル（原画像における約０．０７ｍｍ）以内の範囲にあるか否かを判断する（ステップ１２０４）。このステップによって準近接していないと判断した場合は、この部分文字行のペアは接続されずに処理が終わる。ステップ１２０４で準近接していると判断した場合は、準近接部分文字行接続部４７ｃが、まず、部分文字行同士間における各部分文字行に含まれる画素連結矩形の副方向における距離を取得し平均値を算出する（ステップ１２０５）。そして、この平均値が、所定の近接しているといえるほどの値以内、ここでは４００ｄｐｉの精度で１ピクセル（原画像における約０．３ｍｍ）以内であるか否かを判断する（ステップ１２０６）。ここで、近接していると判断した場合は、当該部分文字行のペアを接続し（ステップ１２０７）。そうでなければ接続は行わない。以上の動作を全ての部分文字行のペアについて行う（ステップ１２０８）。
【００９７】
このように、上記構成を有する部分文字行副方向接続部４７では接続すべきか否かの判断が困難な部分文字行のペアについては、画素連結矩形間の距離を基準に判断するので、部分文字行が長くても傾きの影響を受けずに正確な判断が可能となる。例えば、図４２（ａ）および図４２（ｂ）の部分文字行のペアではステップ１２０４で準近接してるいるといる判断が下され、ステップ１２０５において画素連結矩形の距離ａ、ｂがそれぞれ求められ、これらの平均値が算出され、さらに、ステップ１２０６において画素連結矩形が近接しているか否かが判断される。図４２（ｂ）の場合は距離ｂの平均値が小さいので近接していると判断されて接続される。一方、図４２（ａ）の場合は距離ａの平均値が大きいので近接していないと判断される。そして、たとえ画像が傾いて入力されて部分文字行間が狭くなっていても、画素連結矩形間の距離にはあまり影響がないので同様の結果が得られる。なお、ここでは、準近接するときに最終的に接続する否かの判断を画素連結矩形間の距離の平均値によって行ったが、これは、画素連結矩形間の距離の小さいものから所定の順番目までのものが、所定の閾値以下であるか否かで判断してもよい。
【００９８】
ところで、以上の実施形態では、名刺から文字を抽出する場合を例に挙げており、画素連結成分の接続のパラメータや文字行候補の分割の際の閾値等の、任意に設定できる変数の値等は慣用されている名刺の文字の大きさやレイアウト等から経験的、または実験的に定めることができる。そして、この各種の変数の値は文字行を抽出する対象が変わることによって、例えば葉書から文字行を抽出する場合等は、名刺の場合と異なる値が採用できることは言うまでもない。
【００９９】
【発明の効果】
以上のように、まず、本願発明に係る文字行抽出方法および装置では、画像データから画素の連結する成分の外接矩形が画素連結矩形として生成され、文字行の主方向と副方向が判定され、生成された画素連結矩形群が、主方向、副方向に接続されて文字行候補を生成する。そして、文字行候補内で各画素連結矩形の相互の位置関係から文字を構成する画素連結矩形群が抽出され、これに外接する矩形が文字矩形として生成され、文字行候補内での文字矩形の構成に応じて、文字行候補が分割され、分割された文字行候補内で文字矩形を接続して文字行が抽出される。
【０１００】
このように、主方向、副方向の文字行候補を作成し、文字行候補の構成に応じて、文字行候補が分割されて文字矩形が接続されるので、従来の方法では抽出が困難であった、文字の大きさやピッチの異なる文字行、行間の幅が狭い文字行、縦書き文字行や横書き文字行が混在するような複雑なレイアウトの文書から、正確にかつ効率よく文字行を抽出することができ、文字認識率の向上を図ることができる。
【０１０１】
また、本願発明に係る文字領域抽出方法では、画像データから画素の射影分布を生成し、射影分布を一定の幅でグループ化し、各グループ内の射影分布の代表値を算出し、隣接するグループの代表値間の差の最も大きなグループ間の境界をグループ境界として求め、このグループ境界を挟む２つのグループ内の射影分布の差から文字領域と写真図形領域との境界を決定し、この境界の接している射影分布の小さい側を文字領域として抽出する。このようにして文字領域の抽出を行なうので、写真等が混在する文書においても、１写真領域が複数の領域に分割されて抽出されて、その一部が文字領域と誤って抽出されることがない。
【０１０２】
そして、上記文字行抽出方法において、この文字領域抽出方法および装置によって抽出された文字領域を処理対象とするようにすれば、写真領域を含む文書から文字行を抽出する際に、まず、文字領域が抽出されることになるので、写真領域の一部が文字行として抽出されることなく、容易にかつ正確に文字行を抽出することができる。
【０１０３】
また、上記文字行抽出方法および装置における画素連結矩形の接続では、主方向に重なり、かつ、近接する画素連結矩形群を主方向に接続して主方向の部分文字行として生成し、接続されなかった画素連結矩形群で、所定の距離の範囲内にあるものを接続して、主方向以外の部分文字行として生成し、部分文字行のうち、縦横比から文字を構成する部分文字行を抽出する。そして、副方向に重なり、かつ、近接する文字を構成する部分文字行群を副方向に接続して、新たな副方向の部分文字行を生成する。さらに、副方向に重なり、かつ、近接する主方向の部分文字行群を接続して新たな主方向の部分文字行を生成し、主方向に重なる、主方向の部分文字行群を主方向に接続して新たな主方向の部分文字行を生成する。
【０１０４】
以上のような動作により生成された部分文字行を文字行候補とすれば、副方向の部分文字行が正確に抽出でき、文字行が副方向に分離されるのを防ぐことができ、縦書き、横書き文字行が混在する文書において、両方向の文字行を容易に抽出することができる。
また、本願発明に係る文字行主方向抽出方法および装置では、処理対象の画像データの形状から仮の主方向を決定して主方向部分文字行を生成し、生成した主方向部分文字行の長さ、数、その基本矩形の配置等の構成から、仮の主方向が正しいかどうかを判断し、仮の主方向が正しいと判断されればその仮の主方向を主方向として抽出し、仮の主方向が正しくないと判断されればその仮の主方向に直交する方向を主方向として抽出する。
【０１０５】
このような動作により、例えば名刺画像において行間が狭く、長さの短い文字行がかたまっているような場合等、主方向が通常の経験で判断される方向と異なる場合でも正確に文字行方向を判定することができるだけでなく、仮の主方向が正しかった場合、生成した部分文字行をそのまま後の処理に用いることができるので効率がよい。
【０１０６】
即ち、この文字行主方向抽出方法および装置を、上記文字行抽出方法および装置の文字行候補の生成における主方向の判定に用いると、より正確な文字行の抽出が可能となり、効率も上がることとなる。
さらに、上記画素連結矩形の生成における部分文字行の生成で、副方向に重なり、かつ準近接する主方向の部分文字行同士を抽出し、抽出された部分文字行同士間に含まれる画素連結矩形の距離が所定の値以下であれば、当該部分文字行同士を接続して新たな主方向の部分文字行を生成するような構成を加えると、対象画像が傾いて入力された場合でも、画素連結矩形間の距離で接続するか否かを判断するので行間が狭く長い文字行同士も誤結合されることを防ぐことができる。
【０１０７】
さらに、上記部分文字行の生成において、処理対象の画像データの所定領域を予め定めておき、当該所定領域内において、副方向に重なり、かつ、近接する画素連結矩形群を副方向に接続して副方向の部分文字行として生成するようにしておけば、より精度よく、副方向文字行を抽出することが出来る。
また、本願発明に係る文字行抽出方法および装置における文字矩形の生成では、文字行候補を被分割領域とし、この被分割領域を、主方向の被分割領域、副方向の被分割領域、その他の被分割領域に分類する。そして、副方向の被分割領域に分類された場合は、この被分割領域となっている文字行候補を文字行として抽出し、その他の被分割領域と分類された場合は、この被分割領域の外接矩形を文字矩形として作成し、主方向の被分割領域であると分類された場合は、この主方向の被分割領域に対して、主方向、副方向に射影をとり、射影間の空白部分が所定の長さを越える区間がある場合は、当該区間で被分割領域を分割してあらたな被分割領域とする。それから、主方向の非分割領域で射影間の空白部分が所定の長さを越える区間がない場合に、当該被分割領域内で、各画素連結矩形の相互の位置関係から文字を構成する画素連結矩形群を抽出し、これに外接する矩形を文字矩形として生成する。このような構成を設ければ以下のような効果を奏する。
【０１０８】
つまり、副方向の文字行を抽出して文字行を確定するので、文字行候補の生成において、副方向の文字行が主方向の文字行と混在することとなっても、副方向の文字行の抽出ができ、縦書き、横書き文字行が混在する文書からも、より容易に両方向の文字行を抽出することができる。また、主方向の文字矩形を精度よく抽出することができることにより、文字行候補の構成も精度よく判定することができる。
【０１０９】
さらに、文字行候補の分割において、文字行候補内での文字矩形の大きさの平均値と分散値のいずれか又は両方により、文字行候補内での文字矩形の構成を判断し、文字行候補内で文字矩形間で所定の差異を有すると判断された場合に、所定の差異がある文字矩形間で、文字行候補を分割するようにすれば、一つの文字行候補内で、文字矩形の構成の異なるところで文字行候補が分離されるので、一つの文字行候補内に異なる文字行が含まれていても、これを分離することができる。
【０１１０】
さらに、上記のような文字行候補の分割で、文字行候補内での文字矩形の構成を判断する場合に、文字行候補内での文字矩形の一辺の長さの平均値が文字行候補の短辺の長さよりも小さく、かつ、文字矩形の一辺の長さの分散値が所定値よりも大きければ、文字行候補中に大小の文字矩形が存在するという判断を含み、文字行候補中に大小の文字矩形が存在すると判断された場合に、大きい文字矩形と小さい文字矩形を挟む区間を検索し、検索された区間で、文字行候補を分割することとすれば、特に、文字矩形の大きさが異なる文字行同士が近接している文書において、文字矩形の大きさが異なる文字行同士が誤結合されることなく、別々の文字行として抽出することができる。
【０１１１】
また、上記のような文字行候補の分割で、文字行候補内での文字矩形の構成を判断する場合に、文字行候補内での文字矩形の一辺の長さの平均値が文字行候補の短辺の長さとほぼ同じであれば、文字行候補中の文字矩形間に空白が存在するという判断を含み、文字行候補中の文字矩形間に空白があると判断された場合に、空白がある区間を検索し、検索された区間で、文字行候補を分割するようにすれば、特に、文字の大きさが等しい、異なる文字行同士が１列に並んでいる文書において、異なる文字行同士が誤結合されることなく、別々の文字行として抽出することができる。
【０１１２】
そして、上記のような文字行候補の分割で、文字行候補内での文字矩形の構成を判断する場合に、文字行候補の短辺の長さが文字行候補内での文字矩形の一辺の長さの平均値の２倍以上であれば、文字行候補中に文字列が２列以上混在するという判断を含み、文字行候補中に文字列が２列以上混在すると判断された場合に、文字行間で段差を生じている区間を検索し、検索された区間で、文字行候補を分割するようにすれば、特に、文字の大きさが等しい２列の文字行が存在し、さらに前記２列の中間的な位置に文字行が存在する文書において、中間的な位置に存在する文字行の影響により前記２列の文字行が誤結合されることなく、別々の文字行として抽出することができる。
【０１１３】
また、ここでさらに検索された区間に隣接する文字矩形が所定の特殊な文字矩形か否かを判断し、所定の特殊な文字矩形であると判断された場合に、当該特殊な文字矩形を分割するようにすれば、特に、２列以上の文字行の前に｛等の特殊文字が存在する文書において、特殊文字の影響により前記２列以上の文字行が誤結合されることなく、別々の文字行として抽出することができる。
【０１１４】
さらに、本願発明においては、画像データから画素の連結する成分の外接矩形を画素連結矩形として抽出し、抽出された各画素連結矩形の位置関係から文字を構成する部分を抽出して、これに外接する矩形を文字矩形として生成し、生成された各文字矩形を連結することによって文字行を抽出する場合に、所定の構成を有する文字矩形をルビ矩形として抽出し、ルビ矩形の近傍に存在する親文字行を検索し、このルビ矩形を含む、検索された親文字行に対してルビが存在し得る範囲を決定し、ルビが存在し得る範囲に存在するルビ矩形および文字行を連結することによって、ルビを構成する文字行を抽出することとしたので、文字間距離が極端に離れている文字行、例えば名刺の氏名にふられているルビを、他行の抽出精度に悪影響を及ぼすことなく、文字行として抽出することができる。
【０１１５】
そして、本願発明においては抽出された各文字行について、抽出された文字行内の画素連結矩形または文字矩形の数が定められた第１の閾値よりも大きければ、その文字行がノイズであると判断し、ノイズであると判断された文字行を削除するようにしたので、ノイズが誤って文字行として認識された場合もこれを削除することができ、文字認識率の向上を図ることができる。
【０１１６】
このノイズにより構成される文字行の削除に際してさらに、抽出された文字行内の画素連結矩形または文字矩形の数が前記第１の閾値よりも小さく、第１の閾値よりも小さい定められた第２の閾値よりも大きければ、その文字行をノイズ文字行候補とし、ノイズ文字行候補内の画素連結矩形または文字矩形の大きさの平均値を算出し、この平均値が当該ノイズ文字行候補の短辺の長さに対して所定の割合以下であれば、そのノイズ文字行候補をノイズと判断するようにすれば、画素連結矩形や文字矩形の数だけではノイズか否かの判断が困難な場合に、さらに詳細な判断を行うことが可能となり、より精度良くノイズによって構成される文字行を削除することができる。
【図面の簡単な説明】
【図１】本発明の文字行抽出方法を用いた文字認識装置の一例を示すブロック図である。
【図２】文字領域抽出部の構成を示すブロック図である。
【図３】画素の射影分布および射影グループの一例を示す図である。
【図４】文字行候補生成部の構成を示すブロック図である。
【図５】画素連結矩形の一例を示す図である。
【図６】画素連結矩形群を接続して部分文字行を生成したところを示す図である。
【図７】主方向、副方向の一例を示す図である。
【図８】（ａ）は仮の主方向が正しい状態を示す図であり、（ｂ）は仮の主方向が正しくない状態を示す図である。
【図９】文字矩形生成部の構成を示すブロック図である。
【図１０】画素連結矩形の射影の一例を示す図である。
【図１１】画素連結矩形群から文字矩形を生成したところを示す図である。
【図１２】文字行候補分割部の構成を示すブロック図である。
【図１３】ルビ文字行抽出部の構成を示すブロック図である。
【図１４】ノイズ文字行削除部の構成を示すブロック図である。
【図１５】文字領域抽出部の処理を示すフローチャートである。
【図１６】文字行抽出部の処理を示すフローチャートである。
【図１７】文字行候補生成部の処理を示すフローチャートである。
【図１８】部分文字行の生成結果の例を示す図である。
【図１９】文字行候補の生成過程の例を示す図である。
【図２０】文字行候補の生成過程の他の例を示す図である。
【図２１】文字矩形生成部の処理を示すフローチャートである。
【図２２】文字矩形の生成過程の例を示す図である。
【図２３】文字行候補分割部の処理を示すフローチャートである。
【図２４】図２３における文字行候補の分割１の処理を示すフローチャートである。
【図２５】文字サイズが異なる複数の文字行が存在する文字行候補の例を示す図である。
【図２６】図２３における文字行候補の分割２の処理を示すフローチャートである。
【図２７】同じ文字サイズの文字行が１列のみ存在し、かつセパレータとなる空白部分が存在する文字行候補の例を示す図である。
【図２８】図２３における文字行候補の分割３の処理を示すフローチャートである。
【図２９】（ａ）は同じ文字サイズの文字行が２列存在し、１／２改行文字行が存在する文字行候補の例を示す図であり、（ｂ）はさらに特殊文字が存在する文字行候補の例を示す図である。
【図３０】ルビ文字行抽出部の処理の例を示すフローチャートである。
【図３１】ルビ文字行抽出過程の例を示す図である。
【図３２】ノイズ文字行削除部の処理を示すフローチャートである。
【図３３】文字行とノイズ文字行との違いを示す図である。
【図３４】副方向文字行が含まれる文字行候補において、セパレータとなりうる空白部分が存在しない例を示す図である。
【図３５】長辺が主方向の名刺において、副方向の文字行が存在する確率の高い特定領域を示す図である。
【図３６】特定領域部分文字行生成部を設けた文字行候補生成部の構成を示すブロック図である。
【図３７】特定領域部分文字行生成部を設けた文字行候補生成部の処理を示すフローチャートである。
【図３８】特定領域部分文字行生成部を設けた文字行候補生成部による部分文字行の生成過程の例を示す図である。
【図３９】（ａ）は対象画像が適切に入力された状態を示す図であり、（ｂ）は対象画像が傾いて入力された状態を示す図である。
【図４０】部分文字行副方向接続部の他の構成を示す図である。
【図４１】部分文字行副方向接続部の処理を示すフローチャートである。
【図４２】部分文字行副方向接続部における画素連結矩形間距離の例を示す図である。
【図４３】従来の文字領域抽出方法による抽出過程を示す図である。
【符号の説明】
１  画像入力部
２  文字領域抽出部
３  文字行抽出部
４  文字行候補生成部
５  文字矩形生成部
６  文字行候補分割部
７  文字矩形接続部
８  ルビ文字行抽出部
９  ノイズ文字行削除部
１０  文字認識部
２１  射影分布生成部
２２  射影グループ生成部
２３  射影グループ代表値算出部
２４  グループ境界抽出部
２５  文字域抽出部
４１  画素連結矩形生成部
４２  文字行方向判定部
４２ａ  仮主方向決定部
４２ｂ  主方向判断部
４２ｃ  主方向抽出部
４３  主方向部分文字行生成部
４４  非主方向部分文字行生成部
４５  部分文字行分類部
４６  文字副方向接続部
４７  部分文字行副方向接続部
４７ａ  近接部分文字行副方向接続部
４７ｂ  準近接部分文字行抽出部
４７ｃ  準近接部分文字行接続部
４８  部分文字行主方向接続部
４９  特定領域部分文字行生成部
５１  被分割領域分類部
５２  副方向文字行抽出部
５３  被分割領域分割部
５４  文字矩形抽出部
６１  文字矩形平均算出部
６２  平均値比較部
６３  文字矩形分散算出部
６４  文字構成判定部
６５  大小文字矩形間検索部
６６  文字矩形間空白検索部
６７  文字行段差部検索部
６８  区間分割部
６９  特殊文字判定部
７０  特殊文字分割部
８１  ルビ矩形抽出部
８２  親文字行検索部
８３  ルビ存在可能範囲決定部
８４  ルビ文字行作成部
９１  ノイズ文字行判断部
９２  ノイズ文字行候補判断部
９３  ノイズ文字行候補検証部
９４  ノイズ文字行削除部
【図１】
0003837193.tif 000002
【図２】
0003837193.tif 000003
【図３】
0003837193.tif 000004
【図４】
0003837193.tif 000005
【図５】
0003837193.tif 000006
【図６】
0003837193.tif 000007
【図７】
0003837193.tif 000008
【図８】
0003837193.tif 000009
【図９】
0003837193.tif 000010
【図１０】
0003837193.tif 000011
【図１１】
0003837193.tif 000012
【図１２】
0003837193.tif 000013
【図１３】
0003837193.tif 000014
【図１４】
0003837193.tif 000015
【図１５】
0003837193.tif 000016
【図１６】
0003837193.tif 000017
【図１７】
0003837193.tif 000018
【図１８】
0003837193.tif 000019
【図１９】
0003837193.tif 000020
【図２０】
0003837193.tif 000021
【図２１】
0003837193.tif 000022
【図２２】
0003837193.tif 000023
【図２３】
0003837193.tif 000024
【図２４】
0003837193.tif 000025
【図２５】
0003837193.tif 000026
【図２６】
0003837193.tif 000027
【図２７】
0003837193.tif 000028
【図２８】
0003837193.tif 000029
【図２９】
0003837193.tif 000030
【図３０】
0003837193.tif 000031
【図３１】
0003837193.tif 000032
【図３２】
0003837193.tif 000033
【図３３】
0003837193.tif 000034
【図３４】
0003837193.tif 000035
【図３５】
0003837193.tif 000036
【図３６】
0003837193.tif 000037
【図３７】
0003837193.tif 000038
【図３８】
0003837193.tif 000039
【図３９】
0003837193.tif 000040
【図４０】
0003837193.tif 000041
【図４１】
0003837193.tif 000042
【図４２】
0003837193.tif 000043
【図４３】
0003837193.tif 000044