(57)【特許請求の範囲】
【請求項１】
文字と罫線が混在した画像より文字線と交差、接触した部分の罫線を消去する罫線消去方法であって、
罫線と垂直方向に交わる黒ランを検出するステップと、
前記罫線と前記黒ランの重心のずれを検出するステップと、
前記黒ランの中で、罫線の太さより十分大きな閾値より小さい長さを持ち、前記重心のずれが所定の閾値より大きい黒ランについて、該黒ランの長さから罫線の太さを引いた基準値を求め、重心のずれた方向の端から前記基準値に相当する長さ部分を保存し、残りの部分を消去するステップと、
を有することを特徴とする罫線消去方法。
【請求項２】
文字と罫線が混在した画像より文字線と交差、接触した部分の罫線を消去する罫線消去方法であって、
罫線と垂直方向に交わる黒ランを検出するステップと、
前記罫線と前記黒ランの重心のずれを検出するステップと、
前記黒ランについて、罫線の太さより所定の若干量だけ大きなほぼ一定の長さを持つ黒ランが連続し、前または後に罫線の太さより十分に大きな所定値以上の長さを持つ黒ランが存在する区間を検出し、該区間内の黒ランについて、該黒ランの長さから罫線の太さを引いた基準値を求め、重心のずれた方向の端から前記基準値に相当する長さ部分を保存し、残りの部分を消去するステップと、
を有することを特徴とする罫線消去方法。
【請求項３】
文字と罫線が混在した画像より文字線と交差、接触した部分の罫線を消去する罫線消去方法であって、
罫線と垂直方向に交わる黒ランを検出するステップと、
前記罫線と前記黒ランの重心のずれを検出するステップと、
前記黒ランについて、罫線の太さより十分大きな閾値より小さい長さを持ち、前記重心のずれが所定の閾値より大きい黒ランについては、該黒ランの長さから罫線の太さを引いた基準値を求め、重心のずれた方向の端から前記基準値に相当する長さ部分を保存し、残りの部分を消去するステップと、
前記黒ランについて、罫線の太さより所定の若干量だけ大きなほぼ一定の長さを持つ黒ランが連続し、前または後に罫線の太さより十分に大きな所定値以上の長さを持つ黒ランが存在する区間を検出し、該区間内の黒ランについては、該黒ランの長さから罫線の太さを引いた基準値を求め、重心のずれた方向の端から前記基準値に相当する長さ部分を保存し、残りの部分を消去するステップと、
を有することを特徴とする罫線消去方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は画像処理に係り、とくに、文字認識装置の前処理部等において、文字と罫線が混在した帳票等の画像より、文字を保存しつつ罫線を消去する技術に関する。
【０００２】
【従来の技術】
罫線を多く含む帳票のような画像を文字認識装置で処理する場合、罫線と文字との近接（接触、交差、重複）が大きな問題となる。高精度の文字認識を実現するには、そのような近接した文字を罫線と分離して認識しなければならず、その一つの方法として、前処理段階で帳票画像より罫線だけを消去する方法がある。
【０００３】
このような罫線の消去を実現する手段として、ＦｏｒｍＯｕｔ！（イスラエル国、ＴｉＳ社）なる商品名のソフトウエアが知られている。このソフトウエアは、記入欄が未記入の帳票（見本）を読み取って、その定型情報（罫線、文字、図形）を学習する。その後、記入欄が記入された同種の帳票を読み取り、その画像より、学習した定型情報を除去し、記入欄に記入された文字等の変動情報だけの画像を出力する。
【０００４】
【発明が解決しようとする課題】
上記ソフトウエアは、「見本」が存在すること、それを予め学習すること、学習済みの見本と同種の帳票を処理することを前提としており、見本のない帳票類や学習したことのない種類の帳票類の処理に利用できない。また、罫線と文字の接触にはある程度対応が可能なようであるが、罫線との交差、特に斜め線との交差や重複の場合には、文字を復元できるほどの性能は期待できないようである。
【０００５】
本発明の目的は、見本を利用することなく、任意の種類の帳票等の画像より、文字を保存しつつ、文字線と交差、接触した部分の罫線を高精度に消去する方法を提供することにある。
【０００６】
【課題を解決するための手段】
本発明による罫線消去方法は、一実施形態では、見本を利用することなく、帳票等の画像より、罫線と近接した文字線を保存しつつ罫線を消去するため、罫線の直交部分を認識するステップ、認識された直交部分を消去するステップ、及び、罫線の重心の付近を垂直に横切る黒ランの中で、罫線の太さを超えない長さを持つ黒ランを消去するステップを含む。本発明は特に、罫線に文字線が斜めに交差した部分に罫線の未消去部分を残さないために、罫線の重心の付近を垂直に横切る黒ランで、罫線の太さより大きく、かつ、罫線の太さより十分大きな閾値より小さい長さを持つ黒ランであって、その重心が罫線の重心より所定値以上ずれた黒ランについて、該黒ランの長さから罫線の太さを引いた基準値を求め、重心のずれた方向の端から前記基準値に相当する長さ部分を保存し、残りの部分を消去するステップを有することを特徴とする。また、本発明は、罫線と文字線との重複もしくは接触した部分に罫線の未消去部分を残さないために、罫線の重心付近を垂直に横切る黒ランであって、罫線の太さより所定の若干量だけ大きなほぼ一定の長さを持つ黒ランが連続し、前又は後に罫線の太さより十分に大きな所定値以上の長さを持つ黒ランが存在する区間を検出し、その区間内の黒ランについて、該黒ランの長さから罫線の太さを引いた基準値を求め、重心のずれた方向の端から前記基準値に相当する長さ部分を保存し、残りの部分を消去するステップを有することを特徴とする。
【０００７】
【発明の実施の形態】
以下、図面を参照し、本発明の実施の形態を説明する。
【０００８】
本発明は、例えば図１に示すような一般的な構成のコンピュータシステム１０においてソフトウエアにより実施することができる。図１において、１２は各構成部の相互接続のためのバス、１４は中央演算処理装置（ＣＰＵ）、１６はシステムメモリである。２０はプリンタ等の外部装置であって、パラレルポート２２を介しバス１２に接続される。２４はディスプレイであってディスプレイアダプター２６を介してバス１２に接続され、３８はポインティングデバイスのマウスでシリアルポート２８によりバス１２に接続される。３０はキーボード、３２は固定ディスク装置、３３はフロッピーディスクドライブである。３４はイメージスキャナであり、外部インターフェイス３６によりバス１２に接続される。
【０００９】
処理の対象となる画像は、例えば、イメージスキャナ３４によって原稿より読み取られて入力され、あるいは、フロッピーディスク３３Ａに一旦記録された後にフロッピーディスクドライブ３３を介して入力される。入力された画像データは固定ディスクドライブ３２に一旦保存され、処理実行時にシステムメモリ１６の特定領域に読み込まれるか、あるいは直接的にシステムメモリ１６の特定領域に読み込まれる。処理途中の画像データや最終的な結果としての画像データ、その他のデータはシステムメモリ１６の特定領域に一時的に記憶される。最終結果の画像データは、固定ディスクドライブ３０に保存され、必要な時に外部装置２０やフロッピーディスク３３Ａに出力される。また、入力された画像データや処理途中の画像データはディスプレイ２４に表示させることができる。ユーザは、罫線の指定や他の情報の入力を、マウス３８やキーボード３０を操作することにより行うことができる。後記実施例に関連して詳細に説明する罫線消去処理のためのプログラムは、固定ディスクドライブ３２又はフロッピーティスク３３Ａよりシステムメモリ１６にロードされ、中央演算処理装置１４によって実行される。
【００１０】
以下、本発明による罫線消去処理について具体的に説明するが、図１に示すコンピュータシステム１０の構成との関連は自明であろうから説明を省略する。
【００１１】
図２は本発明の第１の実施例による処理の流れを示すフローチャートである。図２において、まず、文字と罫線を含む文書等の画像データが入力され（ステップ２００）、次にその画像データの２値化処理を行う（ステップ２０１）。この２値化処理後の画像データに対し画像圧縮を施す（ステップ２０２）。この画像圧縮後の画像データが後述の処理の対象となる。なお、入力された画像データが２値化済みの場合には、ステップ２０１の２値化処理は不要である。また、ステップ２０２の画像圧縮は、画像データの記憶に必要なメモリ量の削減と処理時間の短縮を目的としており、その必要がなければ省いてよい。
【００１２】
次に、画像データ中の罫線を認識する（ステップ２０３）。罫線の自動認識は、例えば水平、垂直方向の長い黒ランを統合し、その外接矩形を罫線として抽出する方法や、水平、垂直方向に黒画素の射影をとって、ピークをもっている領域を罫線として抽出する方法によって行うことが可能である。求める罫線の情報は、例えば罫線の位置、長さ、太さである。そのような方法で認識される罫線は、水平方向と垂直方向の罫線であるが、ベクトル解析による罫線認識方法を採用すれば、斜め罫線も認識可能である。
【００１３】
おな、システム上で予め罫線の位置情報が与えられるようにしてもよい。具体的には、罫線のテンプレートを使って罫線の位置情報を与え、あるいは、画像データをディスプレイ２４に画面表示し、その画面上でマウス３８又はキーボード３０を利用して罫線の位置を指定し位置情報を与える方法を採用してもよい。
【００１４】
次に、水平、垂直方向の罫線の直交部分を認識する（ステップ２０４）。ベクトル解析の方法により斜め罫線も認識した場合には、斜め罫線相互の直交部分も認識する。図３（ａ）に示すように、垂直方向の罫線の矩形１０１の左上頂点の座標を（Ｖxs，Ｖys）、右下頂点の座標を（Ｖxe，Ｖye）とし、これと直交する水平方向の罫線の矩形１００の左上頂点の座標を（Ｈxs，Ｈys）、右下頂点の座標を（Ｈxe，Ｈye）とすると、直交部分１０２は、左上頂点の座標が（Ｖxs，Ｈys）、右下頂点の座標が（Ｖxe，Ｈye）の四角形領域として求まる。
【００１５】
このようにして求められた罫線の直交部分の黒画素を白画素に置き換える（ステップ２０５）。かくして、罫線と罫線の直交部分が画像より消去される。消去される部分は罫線相互の直交する部分に限定され、罫線と文字との直交部分は消去されることはない。
【００１６】
このようにして罫線の直交部分を消去した画像データに対し、ステップ２０６〜２１２の処理ループで罫線の未消去部分を消去する。ステップ２０６で罫線を１つ選び、その罫線の消去をステップ２０７〜２１１の処理ループで行う。この処理は、罫線の始点より終点へ向かって１画素単位で処理位置を変えながら繰り返し実行され、罫線の終端まで処理した段階でループを抜ける。
【００１７】
処理内容は次のとおりである。処理位置において、罫線の重心付近を横切る、罫線のベクトル方向に垂直な方向の黒ランの長さを検出する（ステップ２０８）。例えば、図３（ｂ）に示す水平方向の罫線の矩形１００の場合、（Ｈxs，(Ｈys＋Ｈye)／２）と（Ｈxe，(Ｈys＋Ｈye)／２）の２点を結ぶ直線１１１の周辺で、それを縦方向に横切る黒ランの長さを、左端から右端まで処理位置を順次移しながら検出する。検出した黒ランの長さと罫線の太さを比較し（ステップ２０９）、黒ランの長さが罫線の太さ以下ならば、その黒ランの黒画素を白画素に置き換える（ステップ２１０）。ここで、罫線の太さとは、予めシステムにおいて指定されるかユーザに指定された罫線の平均太さのことである。なお、このような静的な閾値処理に代えて、注目した黒ランと直前の黒ランとの長さの差分が小さい場合に、注目した黒ランを消去すると判断するような動的な閾値処理を用いることも可能である。
【００１８】
一つの罫線の消去処理が終わると、ステップ２０６に戻って、別の１つの罫線を選び、同様の罫線消去処理を行う。最後の罫線まで処理したとステップ２１２で判断すると、罫線消去処理は完了し、罫線処理済みの画像データが出力される（ステップ２１３）。
【００１９】
この第１実施例によれば、罫線と近接（接触、交差、重複）した文字線を保存しつつ罫線を消去することができる。しかし反面、罫線の文字線が近接した部分の消去が不完全になる。例えば、図４（ａ）に示す文字線１２１が罫線１２２に斜めに交差した部分１２０の場合、図４（ｂ）に黒領域として表した罫線１２２の部分１２３は、その黒ランの長さが罫線太さより大きいため消去されず、ノイズとして残ってしまう。このような消去漏れ部分の面積が十分に小さければ許容できるが、その面積が無視できない大きさであると、罫線消去後の画像に対する文字認識等に悪影響がある。次に説明する本発明の第２の実施例によれば、文字線が斜めに交差する部分の罫線の消去漏れを大幅に減らすことができる。
【００２０】
図５は、本発明の第２の実施例の処理の流れを示すフローチャートである。図５において、画像データの入力のステップ３００、罫線認識のステップ３０１、罫線直交部分の認識のステップ３０２、罫線直交部分の消去のステップ３０３は、図２のステップ２００，２０３，２０４，２０５と同様である。なお、入力される画像データが２値化されていない場合には、その２値化処理が必要となる。また、使用メモリ量の削減や処理時間の短縮のために、画像データの圧縮処理を追加してもよい。
【００２１】
罫線の直交部分を消去した後の画像データに対し、ステップ３０５〜３１８の処理ループによって、罫線の未消去部分の消去を行う。まず、未処理の罫線を一つ選び（ステップ３０５）、初期フラグをオフし（ステップ３０６）、当該罫線のベクトル方向に１画素単位で処理位置をずらしながら、未消去部分を順次に消去する（ステップ３０７〜３１７）。
【００２２】
処理位置において、罫線の重心付近を横切る、罫線のベクトル方向に垂直な方向の黒ランの長さを検出する（ステップ３０８）。これは図２のステップ２０８と同様である（図３（ｂ）参照）。検出した黒ランの長さと罫線の太さとの大小判定を行う（ステップ３０９）。黒ランの長さが罫線の太さ以下ならば、その黒ランは罫線を構成している黒ランとみなし、その黒画素を白画素に置き換え（ステップ３１０）、初期フラグをオフする（ステップ３１１）。そして、処理位置が罫線の終端まで達していなければ、ステップ３１７よりステップ３０７に戻り、処理位置を一つ進めて処理を続ける。
【００２３】
検出された黒ランの長さが罫線太さより大きいとステップ３０９で判断された場合、その黒ランの長さと、罫線太さや文字太さ（システムにより予め指定されるかユーザ指定される）より十分に大きく選ばれた閾値との大小判定を行う（ステップ３１２）。黒ランの長さが閾値以上であると判定された場合、罫線と直交した文字線と判断されるので、その黒ランを消去しないで、次の処理位置の処理に進む。例えば、図６（ａ）に示すような文字線１３２と罫線１３１の交差部分１３０においては、黒ランの長さは罫線太さ及び文字太さより遥かに大きくなるため、消去しない。したがって、図６（ｂ）に拡大して示すように、罫線１３１の文字線１３２との交差部分を除いた部分だけが消去され、文字線１３２は保存される。
【００２４】
ステップ３１２において、黒ランの長さが閾値より小さいと判定された場合、黒ランの重心（中点）と罫線の重心（太さ方向の中点）とのずれを検出し（ステップ３１３）、そのずれが所定の閾値より大きいか否かを判定し（ステップ３１４）、ずれが閾値より大きいときには黒ラン消去のためのステップ３１５に進むが、そうでないときには処理位置を１つ進めて処理を続ける。
【００２５】
ステップ３１３，３１４，３１５に関して図７により具体的に説明する。図７（ａ）において、１４０は罫線、１４１は罫線１４０と交差した文字線である。１４２は罫線の太さ方向の重心を結んだ線であり、１４３は罫線１４０のベクトル方向に垂直な方向の黒ランの重心を結んだ線である。罫線１４０の先頭から文字線と交差するＰ１位置の直前までは、その黒ランはステップ３１０によって消去される。しかし、Ｐ１位置では、閾値を超える長い黒ランが検出されるためステップ３１３に進み、重心のずれ（線１４２と線１４３のずれ）が検出される。そして、図７（ａ）に示す例のように、重心のずれが大きい場合には、ステップ３１５に進む。
【００２６】
このステップ３１５において、初めは初期フラグはオフであるので、当該処理位置での黒ランの長さｈから罫線の太さｂを引いた基準値Ｘを求める（ステップ３１５Ａ）。図７（ｂ）は、この基準値Ｘの求め方を説明している。そして初期フラグをオンにし（ステップ３１５Ｂ）、当該処理位置の黒ランの、その重心のずれた方向の端から基準値Ｘに相当する長さ分を保存し、残りの部分を消去する（ステップ３１５Ｃ）。図７（ａ）の例では、Ｐ１位置の黒ランの下端より基準値Ｘに相当する長さ分を保存し、残りの上の部分の黒画素を白画素に置き換えることになる。
【００２７】
処理位置を順に右に進めながら、同様の黒ランの部分消去を行っていく。重心のずれが閾値より小さくなるＰ２位置まで黒ランの部分消去が行われる。Ｐ２位置からは、重心のずれが閾値より小さくなるため黒ランの部分消去（ステップ３１５）は行われない。その結果、図７（ｃ）に示すように罫線１４０の文字線１４１より上側の三角形状の部分１４５が消去される。
【００２８】
重心のずれが閾値を超えるＰ３位置の直前まではステップ３１５に進むことなく処理位置が進められるが、Ｐ３位置に達するとステップ３１５に進む。この時点では初期フラグはオンの状態であるので、基準値Ｘは再計算されず、Ｐ１位置で求められた基準値ｘが用いられ、黒ランの重心のずれた側の端より基準値Ｘの長さを超えた部分が消去される（ステップ３１５Ｃ）。図７（ａ）の例では、黒ランの下端側部分が消去される。この部分消去はＰ４位置まで順次行われる。その結果、図７（ｃ）に示すように罫線１４０の文字線１４１より下側の三角形状の部分１４６が消去される。このようにして、前記第１実施例では消去できなかった文字線等と斜めに交差した罫線部分が消去される。Ｐ４位置の次の処理位置からは黒ランの長さが罫線太さ以下となるので、ステップ３１０によって消去される。
【００２９】
図８は、重心のずれが小さくなる例を示している。１５０は罫線、１５１はその重心を結んだ線、１５２及び１５３は罫線１５０と交差した文字線等の線、１５４は罫線太さ方向の黒ランの重心を結んだ線である。この例のような線の交差部分については、ステップ３１５の部分消去の対象から外されるので、交差線分と接触した罫線の部分（図８の斜線領域１５５，１５６）はノイズとして残ってしまう。
【００３０】
このようにして、ステップ３０７〜３１７の処理ループにより１つの罫線の消去が終了すると、ステップ３０５に戻って次の罫線を一つ選び、その消去処理を実行する。最後の罫線まで消去処理が終わると、ステップ３１８で処理ループを抜け、罫線処理後の画像データが出力され（ステップ３１９）、これが終わると処理は完了する。
【００３１】
図９及び図１０は、本発明の第３の実施例による処理の流れを示すフローチャートである。本実施例は、罫線の文字線との重複もしくは接触部分の消去漏れを減らすことができる。
【００３２】
図９において、画像データ入力のステップ４００、罫線認識のステップ４０１、罫線直交部分の認識のステップ４０２、罫線直交部分の消去のステップ４０３は、図２のステップ２００，２０３，２０４，２０５と同様である。なお、入力される画像データが２値化されていない場合には、その２値化処理が必要となる。また、使用メモリ量の削減や処理時間の短縮のために、画像データの圧縮処理を追加してもよい。
【００３３】
罫線の直交部分を消去した後の画像データに対し、ステップ４０５〜４１３の処理ループによって、罫線の未消去部分と思われる黒ラン消去領域を作成する。実際の消去は図１０に示すステップ４１５〜４２４の処理ループで行う。
【００３４】
まず、未処理の罫線を一つ選び（ステップ４０５）、その罫線のベクトル方向に１画素単位で処理位置をずらしながら、未消去部分と思われる黒ラン消去領域を作成する（ステップ４０６〜４１２）。処理位置において、罫線の重心付近を横切る、罫線のベクトル方向に垂直な方向の黒ランの長さを検出する（ステップ４０７）。これは図２のステップ２０８と同様である（図３（ｂ）参照）。検出した黒ランの長さと罫線の太さとの大小判定を行う（ステップ４０８）。黒ランの長さが罫線の太さ以下ならば、その黒ランは罫線を構成している黒ランである可能性が高いので、ステップ４０９に進む。このステップ４０９では、ステップ４０８で罫線の構成黒ランである可能性が高いと判断された連続した黒ランを統合した黒ラン消去領域の作成、更新を行う。そして、処理位置が罫線の終端まで達していなければ、ステップ４１２よりステップ４０６に戻り、処理位置を一つ進めて処理を続ける。
【００３５】
検出された黒ランの長さが罫線太さより大きいとステップ４０８で判断された場合、その黒ランの長さと、罫線太さや文字太さより十分に大きく選ばれた閾値との大小判定を行う（ステップ４１０）。黒ランの長さが閾値以上であると判定された場合、交差した文字の黒ランであるとみなされ、その黒ランは消去対象から除外され、ステップ４１２よりステップ４０６に戻り、次の処理位置の処理に進む。ステップ４１０において、黒ランの長さが閾値より小さいと判定された場合には、ステップ４１１に進む。このステップ４１１では、ステップ４１０で長さが閾値より小さいと判定された連続した黒ランを含む黒ラン消去領域の作成、更新を行う（ステップ４１１）。そして、ステップ４１２よりステップ４０６に戻り、次の処理位置の処理を続ける。
【００３６】
注目した罫線の終端まで処理が終わると、ステップ４０６〜４１２の処理ループを抜け、ステップ４０５に戻り、次の未処理の罫線に対する処理を始める。最後の罫線の処理が終わると、ステップ４０５〜４１３の処理ループを抜け、ステップ４１５〜４２４の処理ループに入る。
【００３７】
一つの黒ラン消去領域を選び（ステップ４１５）、その大きさ（罫線の長さ方向の大きさ）を所定の閾値より小さいか調べる（ステップ４１６）。その閾値より大きさが小さい場合、黒ラン消去領域は罫線ではないとみなされ、消去の対象から外され、ステップ４２４よりステップ４１５に戻り、次の黒ラン消去領域の処理に進む。
【００３８】
黒ラン消去領域が所定の閾値より大きい場合、その黒ラン消去領域内の黒ランの長さの分布（太さの分布）、及び、図７に関連して説明した黒ランの重心と罫線の重心とのずれを求める（ステップ４１７）。
【００３９】
求めた黒ラン長分布を参照し、領域全体にわたって、黒ラン長がほぼ一定であり、かつ、黒ラン長が罫線太さを超えないか調べる（ステップ４１８）。この条件が満たされる場合、その黒ラン消去領域は罫線と判断できるので、領域内の黒ランの全画素を白画素に置き換え、黒ランを全体的に消去し（ステップ４１９）、当該黒ラン消去領域に対する処理を終わる。
【００４０】
ステップ４１８の条件が不成立の場合、罫線太さより若干大きく、かつ、変化の小さい黒ラン長が連続し、前及び／又は後に罫線太さよりかなり大きな黒ラン長が存在する区間があるか調べる（ステップ４２０）。そのような区間がある場合、その区間は文字と罫線との重複もしくは接触がある部分と考えられるので、文字線に相当する部分を残すように当該区間内の黒ランを部分的に消去し（ステップ４２１）、その後にステップ４２２に進む。
【００４１】
この部分消去について図１１により説明する。図１１（ａ）は罫線１６０に文字１６１が重複もしくは接触した例を示している。その重複もしくは接触した部分１６２を図１１（ｂ）に拡大して示す。図１１（ｂ）に示す区間１６３がステップ４２０で見つけられる。この例では、区間１６３の黒ランの重心が罫線の重心に対し上側にずれている。したがって、区間１６３内の黒ランの上端より基準値に相当する長さ分だけを残し、それにより下端側の部分を消去する。基準値としては、システムにより予め与えられる、又はユーザにより指定される文字の太さを用いることができる。このような部分消去の結果は図１１（ｃ）のようになる。図１１（ｃ）において、網掛け部分が消去された部分である。なお、罫線１６０の区間１６４及び区間１６５の部分はそれぞれ別個の黒ラン消去領域として抽出され、それぞれステップ４１９により消去される。
【００４２】
次に、ステップ４１７で取得した重心ずれの情報を参照し、黒ランの重心と罫線の重心とのずれが所定の閾値より大きい部分があるか調べる（ステップ４２２）。この閾値は図５のステップ３１４で用いる閾値と同様の値でよい。重心のずれが大きい部分がある場合、罫線に文字線が斜めに交差した部分であると考えられるので、ステップ４２３において、図５のステップ３１５と同様に、斜めに交差した文字線と罫線とのなす三角形状の領域の黒画素を白画素に置き換え、それがノイズとして残らないようにする処理を行う。
【００４３】
このようにして、黒ラン消去領域を１つずつ処理し、最後の黒ラン消去領域の処理を終わるとステップ４２４で処理ループから抜ける。そして、消去処理後の画像データを出力し（ステップ４２５）、処理を完了する。
【００４４】
【発明の効果】
以上の説明から明らかなように、本発明によれば、見本を用いることなく、任意の帳票等の画像より、罫線と近接した文字線を保存しつつ、罫線を消去することができる。特に、罫線に文字線が斜めに交差した部分に罫線の未消去部分を残さない精密な罫線消去が可能である。また、罫線と文字線との重複もしくは接触部分に罫線の未消去部分を残さない精密な罫線消去が可能である。
【図面の簡単な説明】
【図１】  本発明をソフトウエアにより実施する場合に利用できるコンピュータシステムの一例を示すブロック図である。
【図２】  本発明の第１の実施例による罫線消去処理のフローチャートである。
【図３】  （ａ）罫線の直交部の検出を説明するための図である。
（ｂ）罫線の黒ランの長さの検出を説明するための図である。
【図４】  （ａ）罫線に文字線が斜めに交差する例を示す図である。
（ｂ）罫線と文字線が斜めに交差する部分における罫線消去漏れによるノイズを説明するための拡大図である。
【図５】  本発明の第２の実施例による罫線消去処理のフローチャートである。
【図６】  （ａ）罫線に文字線が直交する例を示す図である。
（ｂ）罫線と文字線との直交部に対する処理を説明するための拡大図である。
【図７】  罫線に文字線が斜めに交差した部分における罫線の重心と黒ランの重心のずれ、及び罫線消去処理を説明するための図である。
【図８】  罫線と文字線の斜め交差の例と、その部分における罫線の重心と黒ランの重心のずれを示す図である。
【図９】  本発明の第３の実施例による罫線消去処理のフローチャートの前半部分である。
【図１０】  本発明の第３の実施例による罫線消去処理のフローチャートの後半部分である。
【図１１】  （ａ）罫線と文字線との重複もしくは接触の例を示す図である。
（ｂ）罫線と文字線との重複もしくは接触部分に対する罫線消去処理を説明するための拡大図である。
（ｃ）罫線と文字線との重複もしくは接触部分に対する罫線消去処理の結果を示す拡大図である。
【符号の説明】
１４  中央演算処理装置
１６  システムメモリ
２４  ディスプレイ
３０  キーボード
３２  固定ディスクドライブ
３３  フロッピーディスクドライブ
３３Ａ  フロッピーディスク
３４  イメージスキャナ
１００，１０１  罫線の矩形
１０２  罫線の直交部分
１２１  文字線
１２２  罫線
１３１  罫線
１３２  文字線
１４０  罫線
１４１  文字線
１４２  罫線の重心を結んだ線
１４３  黒ランの重心を結んだ線
１５０  罫線
１５１  罫線の重心を結んだ線
１５２，１５３  文字線
１５４  黒ランの重心を結んだ線
１５５，１５６  罫線の未消去部分
１６０  罫線
１６１  文字線
１６３  文字線と罫線の重複もしくは接触部分
【図１】
0003846752.tif 000002
【図２】
0003846752.tif 000003
【図３】
0003846752.tif 000004
【図４】
0003846752.tif 000005
【図５】
0003846752.tif 000006
【図６】
0003846752.tif 000007
【図７】
0003846752.tif 000008
【図８】
0003846752.tif 000009
【図９】
0003846752.tif 000010
【図１０】
0003846752.tif 000011
【図１１】
0003846752.tif 000012