JP2962525B2 - テキストブロック認識方法 - Google Patents
テキストブロック認識方法Info
- Publication number
- JP2962525B2 JP2962525B2 JP2410697A JP41069790A JP2962525B2 JP 2962525 B2 JP2962525 B2 JP 2962525B2 JP 2410697 A JP2410697 A JP 2410697A JP 41069790 A JP41069790 A JP 41069790A JP 2962525 B2 JP2962525 B2 JP 2962525B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- rectangle
- block
- text block
- document
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Character Input (AREA)
Description
【0001】
【産業上の利用分野】本発明は、文書上のテキストブロ
ックを認識する(文書をテキストブロック毎に分割す
る)ためのテキストブロック認識方法に関する。
ックを認識する(文書をテキストブロック毎に分割す
る)ためのテキストブロック認識方法に関する。
【0002】
【従来の技術】例えば印刷文書の文字認識を行なう装置
またはシステムにおいては、文字認識の前処理として、
イメージスキャナにより読み取られて入力された文書画
像よりテキストブロックを認識し、各テキストブロック
より行と文字の切り出しを行なう必要がある。
またはシステムにおいては、文字認識の前処理として、
イメージスキャナにより読み取られて入力された文書画
像よりテキストブロックを認識し、各テキストブロック
より行と文字の切り出しを行なう必要がある。
【0003】従来、このようなテキストブロックの認識
の方式として、文書のビットイメージデータの横方向の
ビットライン毎に黒ビットの累積を求め、この累積黒ビ
ット数の分布(横方向の周辺分布)よりテキストブロッ
クを認識する方式が知られている。また、文書を縦方向
に分割し、分割領域毎に同様の累積黒ビット数分布を求
めてテキストブロックを認識する方法が知られている。
の方式として、文書のビットイメージデータの横方向の
ビットライン毎に黒ビットの累積を求め、この累積黒ビ
ット数の分布(横方向の周辺分布)よりテキストブロッ
クを認識する方式が知られている。また、文書を縦方向
に分割し、分割領域毎に同様の累積黒ビット数分布を求
めてテキストブロックを認識する方法が知られている。
【0004】なお、このような周辺分布を利用したブロ
ック認識に関する記述は、例えば「岩城,木田,荒
川:”文書認識アルゴリズムの一検討”画像電子学会
誌,第15巻,第4号(1986),第256頁から第
261頁」にみられる。
ック認識に関する記述は、例えば「岩城,木田,荒
川:”文書認識アルゴリズムの一検討”画像電子学会
誌,第15巻,第4号(1986),第256頁から第
261頁」にみられる。
【0005】
【発明が解決しようとする課題】文書画像を分割せずに
求めた累積黒ビット数分布によりテキストブロックを認
識する方式は、入力時の文書の傾きがあると、極端に分
布の波形が不明瞭になる結果、テキストブロックの認識
精度が悪化する。
求めた累積黒ビット数分布によりテキストブロックを認
識する方式は、入力時の文書の傾きがあると、極端に分
布の波形が不明瞭になる結果、テキストブロックの認識
精度が悪化する。
【0006】この問題点は、文書画像の分割領域毎の累
積黒ビット数分布を利用する方式によれば改善される
が、処理が煩雑化する。特に、ブロックが複雑に構成さ
れている場合、繰り返し同じ処理を施すことによって徐
々に細かくブロックを分割するので処理時間が増加す
る。
積黒ビット数分布を利用する方式によれば改善される
が、処理が煩雑化する。特に、ブロックが複雑に構成さ
れている場合、繰り返し同じ処理を施すことによって徐
々に細かくブロックを分割するので処理時間が増加す
る。
【0007】本発明は、文書の入力時に傾きがあっても
テキストブロックを精度よく認識可能で、かつ高速処理
が可能なテキストブロック認識方法を提供することを目
的とする。
テキストブロックを精度よく認識可能で、かつ高速処理
が可能なテキストブロック認識方法を提供することを目
的とする。
【0008】
【課題を解決するための手段】本発明によれば、文書の
ビットイメージデータから黒連結処理により得られた連
結黒点ビットを囲む矩形のデータを、特定方向の位置に
よってソートした順に読み込み、読み込んだ矩形のデー
タを拡大したデータと、それまでに認識されたテキスト
ブロックを代表するブロック矩形のデータとを比較する
ことにより矩形間重複を判定する。そして、重複がある
と判定されたときは、読み込んだ矩形を、それと重複し
たブロック矩形で代表されるテキストブロックに包含さ
れると認識して当該テキストブロックのブロック矩形の
データを更新するが、重複がないと判定されたときは、
読み込んだ矩形を新しいテキストブロックと認識すると
ともに当該テキストブロックを代表するブロック矩形の
データを生成する。このような処理を最後の矩形データ
まで繰り返すことにより、文書上のテキストブロックを
認識する。
ビットイメージデータから黒連結処理により得られた連
結黒点ビットを囲む矩形のデータを、特定方向の位置に
よってソートした順に読み込み、読み込んだ矩形のデー
タを拡大したデータと、それまでに認識されたテキスト
ブロックを代表するブロック矩形のデータとを比較する
ことにより矩形間重複を判定する。そして、重複がある
と判定されたときは、読み込んだ矩形を、それと重複し
たブロック矩形で代表されるテキストブロックに包含さ
れると認識して当該テキストブロックのブロック矩形の
データを更新するが、重複がないと判定されたときは、
読み込んだ矩形を新しいテキストブロックと認識すると
ともに当該テキストブロックを代表するブロック矩形の
データを生成する。このような処理を最後の矩形データ
まで繰り返すことにより、文書上のテキストブロックを
認識する。
【0009】
【作用】例えば横書き文書の場合、左から右へ向かって
ソートされた順に矩形のデータを読み取って順次処理す
ることにより、同一のテキストブロックを構成する矩形
群が一つのテキストブロックとして認識される。処理内
容が単純であるとともに、文書のビットイメージデータ
でなく矩形データを処理するので扱うデータ量も少ない
ため、高速処理が容易である。また、文書画像上の黒連
結矩形と認識されたテキストブロックを代表するブロッ
ク矩形との重複を順に調べてテキストブロックとの包含
関係を判断する処理の繰り返しであるので、入力文書の
傾きによる影響を本質的に受けにくい。
ソートされた順に矩形のデータを読み取って順次処理す
ることにより、同一のテキストブロックを構成する矩形
群が一つのテキストブロックとして認識される。処理内
容が単純であるとともに、文書のビットイメージデータ
でなく矩形データを処理するので扱うデータ量も少ない
ため、高速処理が容易である。また、文書画像上の黒連
結矩形と認識されたテキストブロックを代表するブロッ
ク矩形との重複を順に調べてテキストブロックとの包含
関係を判断する処理の繰り返しであるので、入力文書の
傾きによる影響を本質的に受けにくい。
【0010】
【実施例】本発明によるテキストブロック認識処理は、
例えば図1に示すようにイメージメモリ100、データ
メモリ101、CPU102、プログラムメモリ103
などからなる処理システムにより実行される。テキスト
ブロック認識処理の原始データたる文書のビットイメー
ジデータは、外部のイメージスキャナより入力されイメ
ージメモリ100に記憶される。このビットイメージデ
ータに対し、黒連結処理(連結した黒点ビットの範囲を
囲む矩形の抽出処理)と、これにより得られた矩形のデ
ータ(一つまたは複数の矩形データで一つの文字を形成
する)のソート処理が、プログラムメモリ103に格納
されているプログラムに従ってCPU102により実行
される。このソート後の矩形データは、本発明によるテ
キストブロック認識処理の入力データとしてデータメモ
リ101に格納される。
例えば図1に示すようにイメージメモリ100、データ
メモリ101、CPU102、プログラムメモリ103
などからなる処理システムにより実行される。テキスト
ブロック認識処理の原始データたる文書のビットイメー
ジデータは、外部のイメージスキャナより入力されイメ
ージメモリ100に記憶される。このビットイメージデ
ータに対し、黒連結処理(連結した黒点ビットの範囲を
囲む矩形の抽出処理)と、これにより得られた矩形のデ
ータ(一つまたは複数の矩形データで一つの文字を形成
する)のソート処理が、プログラムメモリ103に格納
されているプログラムに従ってCPU102により実行
される。このソート後の矩形データは、本発明によるテ
キストブロック認識処理の入力データとしてデータメモ
リ101に格納される。
【0011】テキストブロック認識処理は、プログラム
メモリ103に格納されているプログラムに従ってCP
U102により実行されるが、その処理内容を図2に示
すフローチャートに従って説明する。なお、図3は矩形
データの説明図、図4は処理の説明図であり、以下の説
明において必要に応じ参照する。
メモリ103に格納されているプログラムに従ってCP
U102により実行されるが、その処理内容を図2に示
すフローチャートに従って説明する。なお、図3は矩形
データの説明図、図4は処理の説明図であり、以下の説
明において必要に応じ参照する。
【0012】まずステップ1において、ソートされた矩
形データをソート順に一つずつ読み込む。ここで、矩形
データは、図3に示すように、連結した黒点ビットの範
囲を囲む矩形の左上隅の座標(xli,yli)と右下
隅の座標(xri,yri)からなる。iは読み込み順
(ソート順に等しい)に付けられる付番である。なお、
座標は、文書の左上隅を原点とし、縦方向をy軸、横方
向をx軸とした座標系で表現される。また、ここでは横
書き印刷文書を想定しており、矩形データは左上隅のx
座標値が小さい順にソートされている。
形データをソート順に一つずつ読み込む。ここで、矩形
データは、図3に示すように、連結した黒点ビットの範
囲を囲む矩形の左上隅の座標(xli,yli)と右下
隅の座標(xri,yri)からなる。iは読み込み順
(ソート順に等しい)に付けられる付番である。なお、
座標は、文書の左上隅を原点とし、縦方向をy軸、横方
向をx軸とした座標系で表現される。また、ここでは横
書き印刷文書を想定しており、矩形データは左上隅のx
座標値が小さい順にソートされている。
【0013】例えば図4の(a)は入力データとしての
矩形データ群の例を図的に示したものであるが、ここに
示した矩形データは、それぞれに付記された番号(=
i)の小さい順にソートされ、その順に読み込まれる。
矩形データ群の例を図的に示したものであるが、ここに
示した矩形データは、それぞれに付記された番号(=
i)の小さい順にソートされ、その順に読み込まれる。
【0014】ステップ2は読み込む矩形データが残って
いないときに、処理終了と判定する。
いないときに、処理終了と判定する。
【0015】ステップ3において、読み込んだ矩形デー
タを左右上下方向に拡大し、拡大後のデータを対象矩形
のデータと呼ぶ。対象矩形データの左上隅及び右下隅の
座標値は
タを左右上下方向に拡大し、拡大後のデータを対象矩形
のデータと呼ぶ。対象矩形データの左上隅及び右下隅の
座標値は
【数1】xli=xli−Wx
【数2】xri=xri+Wx
【数3】yli=yli−Wy
【数4】yri=yri+Wyにより計算される。ただ
し、Wxは予想される文字の横幅程度、Wyは予想され
る行間程度で、いずれも対象文書に依存した固定値であ
る。
し、Wxは予想される文字の横幅程度、Wyは予想され
る行間程度で、いずれも対象文書に依存した固定値であ
る。
【0016】ステップ4において、対象矩形データと、
これまでに認識された各テキストブロックを代表するブ
ロック右端矩形のデータとを比較し、矩形間に重複があ
るかを調べる。
これまでに認識された各テキストブロックを代表するブ
ロック右端矩形のデータとを比較し、矩形間に重複があ
るかを調べる。
【0017】(Xlj,Ylj)をブロック右端矩形の
左上隅の座標、(Xrj,Yrj)をブロック右端矩形
の右下隅の座標として、対象矩形データが Xrj>=xliかつ Ylj<=yli<=YrjまたはYlj<=yri<
=Yrj を満たすときは、重複があるとする。一つ以上のブロッ
ク右端矩形データとの重複があるときはステップ5bの
処理に進むが、重複がないときはステップ5aの処理に
進む。
左上隅の座標、(Xrj,Yrj)をブロック右端矩形
の右下隅の座標として、対象矩形データが Xrj>=xliかつ Ylj<=yli<=YrjまたはYlj<=yri<
=Yrj を満たすときは、重複があるとする。一つ以上のブロッ
ク右端矩形データとの重複があるときはステップ5bの
処理に進むが、重複がないときはステップ5aの処理に
進む。
【0018】ステップ5aに進んだということは、注目
している矩形を新しいテキストブロックと認識した場合
である。そこで、新しいラベルを注目している矩形のデ
ータに付けるなどの処理をするとともに、対象矩形デー
タそのものを当該新テキストブロックを代表するブロッ
ク右端矩形データとし(ブロック右端矩形データの生
成)、ステップ1の処理に戻る。
している矩形を新しいテキストブロックと認識した場合
である。そこで、新しいラベルを注目している矩形のデ
ータに付けるなどの処理をするとともに、対象矩形デー
タそのものを当該新テキストブロックを代表するブロッ
ク右端矩形データとし(ブロック右端矩形データの生
成)、ステップ1の処理に戻る。
【0019】ステップ5bに進んだということは、注目
している矩形が既に認識されたテキストブロックに包含
されると認識した場合であるので、必要なラベル付けと
ブロック右端矩形データの更新の処理を行ない、ステッ
プ1の処理に戻る。この場合を二つのケースに分けて説
明する。
している矩形が既に認識されたテキストブロックに包含
されると認識した場合であるので、必要なラベル付けと
ブロック右端矩形データの更新の処理を行ない、ステッ
プ1の処理に戻る。この場合を二つのケースに分けて説
明する。
【0020】まず、対象矩形が一つのブロック右端矩形
とのみ重複した場合であるが、当該ブロック右端矩形デ
ータにより代表されるテキストブロックに注目矩形が包
含されるということであるので、当該テキストブロック
と同一のラベルを注目矩形のデータに付ける処理をす
る。また、注目矩形を含めた当該テキストブロック内の
矩形群中で最も右側に位置する矩形の右端から、左側へ
距離L(5文字程度を包含するような距離として予め設
定される)の範囲内にある矩形の全てを包含する矩形を
ブロック右端矩形に設定しなおす。ただし、このような
ブロック右端矩形データの更新は、ステップ3によって
拡大された後の矩形データを用いて行なう。
とのみ重複した場合であるが、当該ブロック右端矩形デ
ータにより代表されるテキストブロックに注目矩形が包
含されるということであるので、当該テキストブロック
と同一のラベルを注目矩形のデータに付ける処理をす
る。また、注目矩形を含めた当該テキストブロック内の
矩形群中で最も右側に位置する矩形の右端から、左側へ
距離L(5文字程度を包含するような距離として予め設
定される)の範囲内にある矩形の全てを包含する矩形を
ブロック右端矩形に設定しなおす。ただし、このような
ブロック右端矩形データの更新は、ステップ3によって
拡大された後の矩形データを用いて行なう。
【0021】対象矩形が二つ以上のブロック右端矩形と
重複した場合、当該複数のブロック右端矩形データによ
り代表される複数のテキストブロックは実は一つのテキ
ストブロックに包含されるので、当該複数のテキストブ
ロックの中の一つのテキストブロックのラベルを他のテ
キストブロック内の矩形データに付け直し(ブロック統
合)、また、このラベルを注目矩形のデータに付ける。
そして、統合後のテキストブロック内の矩形群中で最も
右側にある矩形の右端から、左側へ距離Lの範囲内にあ
る矩形を全て包含する矩形をブロック右端矩形に設定し
直す。このブロック右端矩形データの更新に拡大後の矩
形データを用いることは同様である。
重複した場合、当該複数のブロック右端矩形データによ
り代表される複数のテキストブロックは実は一つのテキ
ストブロックに包含されるので、当該複数のテキストブ
ロックの中の一つのテキストブロックのラベルを他のテ
キストブロック内の矩形データに付け直し(ブロック統
合)、また、このラベルを注目矩形のデータに付ける。
そして、統合後のテキストブロック内の矩形群中で最も
右側にある矩形の右端から、左側へ距離Lの範囲内にあ
る矩形を全て包含する矩形をブロック右端矩形に設定し
直す。このブロック右端矩形データの更新に拡大後の矩
形データを用いることは同様である。
【0022】図4の(a)に示す最後(右端)の矩形の
データ(付番=36)が読み込まれた時点を考える。こ
の時点では既に、上3行の21個の矩形からなるテキス
トブロック1と、下2行の14個の矩形からなるテキス
トブロック2が認識されており、それぞれのテキストブ
ロックに対するブロック右端矩形は(b)に太線で示さ
れているような矩形となる。そして、(b)に斜線を施
して示した対象矩形(注目矩形の拡大矩形)は、テキス
トブロック1のブロック右端矩形とのみ重複するので、
注目矩形(付番36)はテキストブロック1に包含され
ると認識され、テキストブロック1のラベルを付けられ
る。また、テキストブロック1のブロック右端矩形は
(b)に破線で示すような矩形に更新される。そして、
読み込むべき矩形データは残っていないので処理は終了
する。
データ(付番=36)が読み込まれた時点を考える。こ
の時点では既に、上3行の21個の矩形からなるテキス
トブロック1と、下2行の14個の矩形からなるテキス
トブロック2が認識されており、それぞれのテキストブ
ロックに対するブロック右端矩形は(b)に太線で示さ
れているような矩形となる。そして、(b)に斜線を施
して示した対象矩形(注目矩形の拡大矩形)は、テキス
トブロック1のブロック右端矩形とのみ重複するので、
注目矩形(付番36)はテキストブロック1に包含され
ると認識され、テキストブロック1のラベルを付けられ
る。また、テキストブロック1のブロック右端矩形は
(b)に破線で示すような矩形に更新される。そして、
読み込むべき矩形データは残っていないので処理は終了
する。
【0023】なお、同一ラベルを付けられた矩形データ
群が一つのテキストブロックとして認識されるが、後の
処理のための必要に応じて、テキストブロックを構成す
る矩形群を囲む矩形の左上隅と右下隅の座標などが計算
されてデータメモリ101に記憶される。
群が一つのテキストブロックとして認識されるが、後の
処理のための必要に応じて、テキストブロックを構成す
る矩形群を囲む矩形の左上隅と右下隅の座標などが計算
されてデータメモリ101に記憶される。
【0024】また、以上は横書き文書を想定したが、縦
書き文書の場合には左右方向を上下方向に置き換えて同
様に処理することができる。
書き文書の場合には左右方向を上下方向に置き換えて同
様に処理することができる。
【0025】
【発明の効果】以上の説明から明らかなように、本発明
によれば、文書データをビットイメージデータでなく、
黒連結矩形データで処理することで、扱うデータ量が減
るとともに処理アルゴリズムも単純であるため、テキス
トブロック認識処理の高速化が容易であり、また入力文
書の傾きによる認識精度への影響を大幅に減らすことが
できる。
によれば、文書データをビットイメージデータでなく、
黒連結矩形データで処理することで、扱うデータ量が減
るとともに処理アルゴリズムも単純であるため、テキス
トブロック認識処理の高速化が容易であり、また入力文
書の傾きによる認識精度への影響を大幅に減らすことが
できる。
【図1】本発明によりテキストブロック認識の処理を実
行するための処理システムの一例を示すブロック図であ
る。
行するための処理システムの一例を示すブロック図であ
る。
【図2】本発明の一実施例におけるテキストブロック認
識処理のフローチャートである。
識処理のフローチャートである。
【図3】矩形データの説明図である。
【図4】テキストブロック認識処理の説明図である。
100 イメージメモリ 101 データメモリ 102 CPU 103 プログラムメモリ
Claims (1)
- 【請求項1】 文書のビットイメージデータから得られ
た連結黒点ビットを囲む矩形のデータを、特定方向の位
置によってソートした順に読み込み、読み込んだ矩形の
データを拡大したデータと、それまでに認識されたテキ
ストブロックを代表するブロック矩形のデータとを比較
することにより矩形間重複を判定し、重複があると判定
されたときは、読み込んだ矩形を、それと重複したブロ
ック矩形で代表されるテキストブロックに包含されると
認識して当該テキストブロックのブロック矩形のデータ
を更新し、重複がないと判定されたときは、読み込んだ
矩形を新しいテキストブロックと認識するとともに当該
テキストブロックを代表するブロック矩形のデータを生
成する、という処理の繰り返しにより、文書上のテキス
トブロックを認識することを特徴とするテキストブロッ
ク認識方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2410697A JP2962525B2 (ja) | 1990-12-14 | 1990-12-14 | テキストブロック認識方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2410697A JP2962525B2 (ja) | 1990-12-14 | 1990-12-14 | テキストブロック認識方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH06124363A JPH06124363A (ja) | 1994-05-06 |
JP2962525B2 true JP2962525B2 (ja) | 1999-10-12 |
Family
ID=18519817
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2410697A Expired - Fee Related JP2962525B2 (ja) | 1990-12-14 | 1990-12-14 | テキストブロック認識方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2962525B2 (ja) |
-
1990
- 1990-12-14 JP JP2410697A patent/JP2962525B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH06124363A (ja) | 1994-05-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5664027A (en) | Methods and apparatus for inferring orientation of lines of text | |
US5075895A (en) | Method and apparatus for recognizing table area formed in binary image of document | |
US5509092A (en) | Method and apparatus for generating information on recognized characters | |
JP3204259B2 (ja) | 文字列抽出方法、手書き文字列抽出方法、文字列抽出装置、および画像処理装置 | |
JPH0652354A (ja) | スキュー補正方法並びにスキュー角検出方法並びにドキュメントセグメンテーションシステムおよびスキュー角検出装置 | |
Kar et al. | A three-phase noise removal approach to achieve accuracy in line segmentation of Odia text | |
JP2006227824A (ja) | 図面認識方法および装置 | |
JP2962525B2 (ja) | テキストブロック認識方法 | |
JP2770582B2 (ja) | 図形塗潰し装置 | |
JP4087911B2 (ja) | 罫線作成装置および罫線作成方法 | |
JP3171626B2 (ja) | 文字認識の処理領域・処理条件指定方法 | |
JP2669539B2 (ja) | 文字出力方法および文字出力装置 | |
JP2000113106A (ja) | 文書画像処理装置 | |
JPH117493A (ja) | 文字認識処理装置 | |
JP2804651B2 (ja) | 輪郭塗り潰し方式 | |
JPH0830725A (ja) | 画像処理装置及び方法 | |
JPH08297718A (ja) | 文字切り出し装置及び文字認識装置 | |
JPH11143990A (ja) | 文字認識方法及び装置及びその方法を記録した記録媒体 | |
JP2755299B2 (ja) | 画像処理方法 | |
JP3164086B2 (ja) | 手書き文字フォント作成方法及びそれを適用した手書き文字情報処理装置 | |
JP2708604B2 (ja) | 文字認識方法 | |
JP2937607B2 (ja) | レイアウト作成装置 | |
JP3534997B2 (ja) | 罫線抽出装置および方法 | |
JP2582611B2 (ja) | マルチフオント辞書の作成法 | |
JP2827288B2 (ja) | 文字認識装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080806 Year of fee payment: 9 |
|
LAPS | Cancellation because of no payment of annual fees |