(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6377025
(24)【登録日】2018年8月3日
(45)【発行日】2018年8月22日
(54)【発明の名称】文書画像における縦線および横線の検出および削除
(51)【国際特許分類】
H04N 1/387 20060101AFI20180813BHJP
G06T 7/60 20170101ALI20180813BHJP
G06K 9/34 20060101ALI20180813BHJP
【FI】
H04N1/387
G06T7/60 200G
G06K9/34
【請求項の数】16
【外国語出願】
【全頁数】13
(21)【出願番号】特願2015-148129(P2015-148129)
(22)【出願日】2015年7月27日
(65)【公開番号】特開2016-72958(P2016-72958A)
(43)【公開日】2016年5月9日
【審査請求日】2016年7月1日
(31)【優先権主張番号】14/502820
(32)【優先日】2014年9月30日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】507031918
【氏名又は名称】コニカ ミノルタ ラボラトリー ユー.エス.エー.,インコーポレイテッド
(74)【代理人】
【識別番号】110000671
【氏名又は名称】八田国際特許業務法人
(72)【発明者】
【氏名】ガーン ファーン
【審査官】
粕谷 満成
(56)【参考文献】
【文献】
特開平10−254991(JP,A)
【文献】
特開平03−233787(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 1/387
G06T 7/60
G06K 9/34
(57)【特許請求の範囲】
【請求項1】
二値文書画像から横線を削除するための方法であって、
前記二値画像の各画素に関連する線幅を取得するステップ(a)と、ここで、対象の画素に関連する前記線幅は、前記画素を含んで連続する前景画素の横方向および縦方向のランレングスのうち、より小さい方のランレングスとして定義され、
検出された横線を示すバウンディングボックスを取得するステップ(b)と、
前記横線の各横方向位置における最大線幅を計算するステップ(c)と、ここで、対象の横方向位置における前記最大線幅は、対象の横方向位置に位置する前記横線に属する全ての前景画素に関連する前記線幅の最大値として定義され、
前記バウンディングボックスに沿う横方向位置に位置する前景画素の各列に対して、対象の横方向位置における前記最大線幅が、対象の横方向位置に中心が位置する前記バウンディングボックスのウィンドウ内の、全ての横方向位置における最大線幅の平均値よりも小さい場合に、前記前景画素を削除するステップ(d)と、
前記ステップ(d)の後に残っている、前記バウンディングボックス内の全ての連結成分を抽出し、所定の値による前記バウンディングボックスの上の境界または下の境界のいずれも越えて延びない連結成分を削除するステップ(e)と、
前記ステップ(e)から生じた前記二値画像に対して、横線を構成要素として用いて、クロージング処理を実行するステップ(f)と、
を含む方法。
【請求項2】
前記ステップ(c)は、
前記バウンディングボックスを複数の横方向に配置されるウィンドウに分割するステップと、
各ウィンドウに対して、
ヒストグラムを生成するために、前記ウィンドウ内に画像の区画を横方向に射影すること、および前記ヒストグラムのピーク位置を縦方向の中心位置として取得することによって、前記ウィンドウ内の横線部分の前記縦方向の中心位置を取得するステップと、
前記ウィンドウの各横方向位置において、前記縦方向の中心位置における前記前景画素に接続される、全ての連続した前景画素を特定するステップと、
前記特定するステップにおいて特定された、前記連続した前景画素の全てに関連する前記線幅の最大値を計算するステップと、
を含む請求項1に記載の方法。
【請求項3】
前記ステップ(d)の前に、前記バウンディングボックスにおいて、前記横線の幅に対する長さの比率を判断するステップをさらに含み、
前記ステップ(d)、(e)および(f)は、前記幅に対する長さの比率が、所定の閾値よりも大きい場合にのみ実行される請求項1または請求項2に記載の方法。
【請求項4】
前記ステップ(c)の後に、前記判断するステップが実行され、前記幅に対する長さの比率は、前記横線の全ての横方向位置における前記最大線幅の平均値に対する前記バウンディングボックスの長さの比率である請求項3に記載の方法。
【請求項5】
前記ステップ(e)の後に、
前記上の境界および前記下の境界において、第2の所定の値により、前記バウンディングボックスを拡大するステップと、
前記拡大されたバウンディングボックスにおいて、前記バウンディングボックスの前記上の境界または前記下の境界のいずれにも接しない連結成分を削除するステップと、
をさらに含む請求項1〜4のいずれか一項に記載の方法。
【請求項6】
二値文書画像から縦線を削除するための方法であって、
前記二値画像の各画素に関連する線幅を取得するステップ(a)と、ここで、対象の画素に関連する前記線幅は、前記画素を含んで連続する前景画素の横方向および縦方向のランレングスのうち、より小さい方のランレングスとして定義され、
検出された縦線を示すバウンディングボックスを取得するステップ(b)と、
前記縦線の各縦方向位置における最大線幅を計算するステップ(c)と、ここで、対象の縦方向位置における前記最大線幅は、対象の縦方向位置に位置する前記縦線に属する全ての前景画素に関連する前記線幅の最大値として定義され、
前記縦線の幅に対する高さの比率を計算するステップ(d)と、
前記幅に対する高さの比率が、閾値の比率よりも大きいまたは閾値の比率と等しい場合、前記最大線幅が線幅の閾値よりも小さい前記縦線の部分を削除するステップ(e)と、
前記バウンディングボックス内の連結成分を抽出し、前記バウンディングボックスの左の境界または右の境界のいずれにも接しない、全ての連結成分を削除するステップ(f)と、
を含み、
前記ステップ(c)は、
前記バウンディングボックスを複数の縦方向に配置されるウィンドウに分割するステップと、
各ウィンドウに対して、
ヒストグラムを生成するために、前記ウィンドウ内に画像の区画を縦方向に射影すること、および前記ヒストグラムのピーク位置を横方向の中心位置として取得することによって、前記ウィンドウ内の縦線部分の前記横方向の中心位置を取得するステップと、
前記ウィンドウの各縦方向位置において、前記横方向の中心位置における前記前景画素に接続される、全ての連続した前景画素を特定するステップと、
前記特定するステップにおいて特定された、前記連続した前景画素の全てに関連する前記線幅の最大値を計算するステップと、
を含む方法。
【請求項7】
前記ステップ(d)は、
前記縦線の全ての縦方向位置における前記最大線幅の平均値を計算するステップと、
前記最大線幅の前記平均値に対する前記バウンディングボックスの高さの比率として定義される、前記縦線の前記幅に対する高さの比率を計算するステップと、を含み、
前記ステップ(e)において、前記線幅の閾値は、前記最大線幅の前記平均値の倍数である請求項6に記載の方法。
【請求項8】
情報処理装置を制御するためのコンピュータープログラムであって、当該コンピュータープログラムは、二値文書画像から横線を削除するための処理を前記情報処理装置に実行させるために構成され、
前記二値画像の各画素に関連する線幅を取得するステップ(a)と、ここで、対象の画素に関連する前記線幅は、前記画素を含んで連続する前景画素の横方向および縦方向のランレングスのうち、より小さい方のランレングスとして定義され、
検出された横線を示すバウンディングボックスを取得するステップ(b)と、
前記横線の各横方向位置における最大線幅を計算するステップ(c)と、ここで、対象の横方向位置における前記最大線幅は、対象の横方向位置に位置する前記横線に属する全ての前景画素に関連する前記線幅の最大値として定義され、
前記バウンディングボックスに沿う横方向位置に位置する前景画素の各列に対して、対象の横方向位置における前記最大線幅が、対象の横方向位置に中心が位置する前記バウンディングボックスのウィンドウ内の、全ての横方向位置における最大線幅の平均値よりも小さい場合に、前記前景画素を削除するステップ(d)と、
前記ステップ(d)の後に残っている、前記バウンディングボックス内の全ての連結成分を抽出し、所定の値による前記バウンディングボックスの上の境界または下の境界のいずれも越えて延びない連結成分を削除するステップ(e)と、
前記ステップ(e)から生じた前記二値画像に対して、横線を構成要素として用いて、クロージング処理を実行するステップ(f)と、
を含むコンピュータープログラム。
【請求項9】
前記ステップ(c)は、
前記バウンディングボックスを複数の横方向に配置されるウィンドウに分割するステップと、
各ウィンドウに対して、
ヒストグラムを生成するために、前記ウィンドウ内に画像の区画を横方向に射影すること、および前記ヒストグラムのピーク位置を縦方向の中心位置として取得することによって、前記ウィンドウ内の横線部分の前記縦方向の中心位置を取得するステップと、
前記ウィンドウの各横方向位置において、前記縦方向の中心位置における前記前景画素に接続される、全ての連続した前景画素を特定するステップと、
前記特定するステップにおいて特定された、前記連続した前景画素の全てに関連する前記線幅の最大値を計算するステップと、
を含む請求項8に記載のコンピュータープログラム。
【請求項10】
前記ステップ(d)の前に、前記バウンディングボックスにおいて、前記横線の幅に対する長さの比率を判断するステップをさらに含み、
前記ステップ(d)、(e)および(f)は、前記幅に対する長さの比率が、所定の閾値よりも大きい場合にのみ実行される請求項8または請求項9に記載のコンピュータープログラム。
【請求項11】
前記ステップ(c)の後に、前記判断するステップが実行され、前記幅に対する長さの比率は、前記横線の全ての横方向位置における前記最大線幅の平均値に対する前記バウンディングボックスの長さの比率である請求項10に記載のコンピュータープログラム。
【請求項12】
前記ステップ(e)の後に、
前記上の境界および前記下の境界において、第2の所定の値により、前記バウンディングボックスを拡大するステップと、
前記拡大されたバウンディングボックスにおいて、前記バウンディングボックスの前記上の境界または前記下の境界のいずれにも接しない連結成分を削除するステップと、
をさらに含む請求項8〜11のいずれか一項に記載のコンピュータープログラム。
【請求項13】
前記コンピュータープログラムは、二値文書画像から縦線を削除するための追加の処理を前記情報処理装置に実行させるために構成され、
前記二値画像の各画素に関連する線幅を取得するステップ(g)と、ここで、対象の画素に関連する前記線幅は、前記画素を含んで連続する前景画素の横方向および縦方向のランレングスのうち、より小さい方のランレングスとして定義され、
検出された縦線を示すバウンディングボックスを取得するステップ(h)と、
前記縦線の各縦方向位置における最大線幅を計算するステップ(i)と、ここで、対象の縦方向位置における前記最大線幅は、対象の縦方向位置に位置する前記縦線に属する全ての前景画素に関連する前記線幅の最大値として定義され、
前記縦線の幅に対する高さの比率を計算するステップ(j)と、
前記幅に対する高さの比率が、閾値の比率よりも大きいまたは閾値の比率と等しい場合、前記最大線幅が線幅の閾値よりも小さい前記縦線の部分を削除するステップ(k)と、
前記バウンディングボックス内の連結成分を抽出し、前記バウンディングボックスの左の境界または右の境界のいずれにも接しない、全ての連結成分を削除するステップ(l)と、
を含む請求項8〜12のいずれか一項に記載のコンピュータープログラム。
【請求項14】
前記ステップ(j)は、
前記縦線の全ての縦方向位置における前記最大線幅の平均値を計算するステップと、
前記最大線幅の前記平均値に対する前記バウンディングボックスの高さの比率として定義される、前記縦線の前記幅に対する高さの比率を計算するステップと、を含み、
前記ステップ(k)において、前記線幅の閾値は、前記最大線幅の前記平均値の倍数である請求項13に記載のコンピュータープログラム。
【請求項15】
前記ステップ(i)は、
前記バウンディングボックスを複数の縦方向に配置されるウィンドウに分割するステップと、
各ウィンドウに対して、
ヒストグラムを生成するために、前記ウィンドウ内に画像の区画を縦方向に射影すること、および前記ヒストグラムのピーク位置を横方向の中心位置として取得することによって、前記ウィンドウ内の縦線部分の前記横方向の中心位置を取得するステップと、
前記ウィンドウの各縦方向位置において、前記横方向の中心位置における前記前景画素に接続される、全ての連続した前景画素を特定するステップと、
前記特定するステップにおいて特定された、前記連続した前景画素の全てに関連する前記線幅の最大値を計算するステップと、
を含む請求項13または請求項14に記載のコンピュータープログラム。
【請求項16】
請求項8〜15のいずれか一項に記載のコンピュータープログラムを格納したコンピューター読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、文書画像の処理、特に文書画像における縦線および横線の検出および削除のための方法に関する。
【背景技術】
【0002】
文書画像とは一般的に、かなりの量のテキストを含む複数ページの文書を表すデジタル画像のことを言う。文書画像は、しばしば線を含み、たとえば表を構成する直線、テキストにおける下線などのように、特に縦線および横線を含む。一般的に、光学文字認識(OCR)や文書認証などの文書画像解析の焦点は、文字(文字およびその他の記号)であり、線を削除することがしばしば要求される。これらの線は、通常は一方向に長く、はっきりと削除されない場合には、後続する連結成分解析においてエラーや誤りが発生しかねない。これまでにも、たとえばハフ変換(Hough transform)、ランレングス符号化(run length coding)、モルフォロジー解析(morphology analysis)などの、線の検出および削除に関する様々な方法が提案されてきた。しかしながら、実際の文書に対してこれらの方法を適用すると、画質や、画像がどのくらい適切に二値化されているかということによって、しばしば影響される。さらに、既知の線の削除方法において、テキストの下線の削除が、下線と交差する文字の特徴を変化させることも頻繁にある。多くの既知の方法が、不完全な線の削除に悩まされている。
【発明の概要】
【発明が解決しようとする課題】
【0003】
本発明は、関連する技術の制限および不利益に起因する一つ以上の問題を十分に解決する、線の検出および削除方法ならびに関連する装置を対象とする。
【0004】
本発明の目的は、線を完全に削除し、かつ下線と交差する文字の特徴を保持することができる、線の検出および削除方法を提供することである。
【課題を解決するための手段】
【0005】
本発明の追加の特徴および利点は以下の説明に記載され、ある程度は説明から明らかであり、または本発明の実施により知ることができる。本発明の目的および他の利点は、それについて記載された明細書、特許請求の範囲および添付の図面において特に示された構造によって実現および達成される。
【0006】
これらの目的および/または他の目的を達成するために、具体的および広く記述されているように、本発明は、二値文書画像から横線を削除するための方法であって、前記二値画像の各画素に関連する線幅を取得するステップ(a)と、ここで、対象の画素に関連する前記線幅は、前記画素を含んで連続する前景画素の横方向および縦方向のランレングスのうち、より小さい方のランレングスとして定義され、検出された横線を示すバウンディングボックスを取得するステップ(b)と、前記横線の各横方向位置における最大線幅を計算するステップ(c)と、ここで、対象の横方向位置における前記最大線幅は、対象の横方向位置に位置する前記横線に属する全ての前景画素に関連する前記線幅の最大値として定義され、前記バウンディングボックスに沿う横方向位置に位置する前景画素の各列に対して、対象の横方向位置における前記最大線幅が、対象の横方向位置に中心が位置する前記バウンディングボックスのウィンドウ内の、全ての横方向位置における最大線幅の平均値よりも小さい場合に、前記前景画素を削除するステップ(d)と、前記ステップ(d)の後に残っている、前記バウンディングボックス内の全ての連結成分を抽出し、所定の値による前記バウンディングボックスの上の境界または下の境界のいずれも越えて延びな
い連結成分を削除するステップ(e)と、前記ステップ(e)から生じた前記二値画像に対して、横線を構成要素として用いて、クロージング処理を実行するステップ(f)と、を含む。
【0007】
他の態様において、本発明は、二値画像から縦線を削除するための方法であって、前記二値画像の各画素に関連する線幅を取得するステップ(a)と、ここで、対象の画素に関連する前記線幅は、前記画素を含んで連続する前景画素の横方向および縦方向のランレングスのうち、より小さい方のランレングスとして定義され、検出された縦線を示すバウンディングボックスを取得するステップ(b)と、前記縦線の各縦方向位置における最大線幅を計算するステップ(c)と、ここで、対象の縦方向位置における前記最大線幅は、対象の縦方向位置に位置する前記縦線に属する全ての前景画素に関連する前記線幅の最大値として定義され、前記縦線の幅に対する高さの比率を計算するステップ(d)と、前記幅に対する高さの比率が、閾値の比率よりも大きいまたは閾値の比率と等しい場合、前記最大線幅が線幅の閾値よりも小さい前記縦線の部分を削除するステップ(e)と、前記バウンディングボックス内の連結成分を抽出し、前記バウンディングボックスの左の境界または右の境界のいずれにも接しない、全ての連結成分を削除するステップ(f)と、を含
み、前記ステップ(c)は、前記バウンディングボックスを複数の縦方向に配置されるウィンドウに分割するステップと、各ウィンドウに対して、ヒストグラムを生成するために、前記ウィンドウ内に画像の区画を縦方向に射影すること、および前記ヒストグラムのピーク位置を横方向の中心位置として取得することによって、前記ウィンドウ内の縦線部分の前記横方向の中心位置を取得するステップと、前記ウィンドウの各縦方向位置において、前記横方向の中心位置における前記前景画素に接続される、全ての連続した前景画素を特定するステップと、前記特定するステップにおいて特定された、前記連続した前景画素の全てに関連する前記線幅の最大値を計算するステップと、を含む。
【0008】
他の態様において、本発明は、情報処理装置を制御するために、コンピュータープログラムおよびコンピュータープログラムを内部に格納したコンピューターが使用可能な非一時的媒体(たとえば、メモリーまたは記憶装置)を提供し、コンピュータープログラムは、情報処理装置に上記の方法を実行させるために構成される。
【0009】
前述の概要および以下の詳述は、いずれも典型例および説明を示すものであり、特許請求の範囲に記載された発明の仔細な説明を提供することを目的としている。
【図面の簡単な説明】
【0010】
【
図1】本発明の実施形態に係る縦線および横線を削除する方法を説明する概略図である。
【
図2】本発明の実施形態に係る縦線および横線を削除する方法を説明する概略図である。
【
図3】本発明の実施形態に係る縦線および横線を削除する方法を説明する概略図である。
【
図4A】本発明の実施形態に係る文書画像および横線の削除処理の様々なステップによる効果の一例を示す図である。
【
図4B】本発明の実施形態に係る文書画像および横線の削除処理の様々なステップによる効果の一例を示す図である。
【
図4C】本発明の実施形態に係る文書画像および横線の削除処理の様々なステップによる効果の一例を示す図である。
【
図4D】本発明の実施形態に係る文書画像および横線の削除処理の様々なステップによる効果の一例を示す図である。
【
図5】本発明の実施形態に係る方法が実装される情報処理装置の構成を示す概略図である。
【発明を実施するための形態】
【0011】
本発明の実施形態は、文書、特にテキスト文字の特徴を保持しながら、できる限り完全に縦線および横線を削除するように設計される、文書画像に対する縦線および横線の削除方法を提供する。縦線の削除について、本方法は、テキスト文字の縦線を保持するように設計される。横線の削除、特にテキストに対する横方向の下線の削除について、本方法は、横方向の下線と交差するテキスト文字の線を保持しながら横線を完全に削除するように設計される。線の削除は、線を削除する一方で文字の特徴を維持するように行われる線幅および成分解析に基づく。
【0012】
横線および縦線の検出および削除方法は、
図1〜3を参照して説明される。入力文書画像はグレースケール画像であって、各画素は、たとえば0から255のマルチビットの画素値を有する。元の画像(たとえば、スキャナーによって生成された画像)がカラー画像である場合は、初めにグレースケール画像に変換されるか、または、各カラーチャンネルがグレースケール画像として扱われる。
【0013】
図1に示すように、初めに、歪み補正、ノイズ除去、ダウンサンプリングなどを含む前処理が、グレースケールの入力画像に対して任意で適用される(ステップS11)。便宜上、前処理がなされたグレースケール画像についても、入力グレースケール画像と呼ぶ。画像内の縦線および横線を検出するために、入力グレースケール画像に対して、縦線および横線の検出処理が適用される(ステップS12)。線の検出処理は、検出された縦線または横線にそれぞれ対応する、バウンディングボックスのセットを生成する。線の検出のために、任意の適切な方法が使用されてもよい。特に、「Horizontal and Vertical Line Detection and Removal for Document Images」という名称の共有の特許出願(米国特許出願14/502,796に基づく日本特許出願)において記載される線の検出方法が使用されてもよい。
【0014】
入力グレースケール画像は、二値画像(1ビット画像)を生成するために二値化される(ステップS13)。本開示において、背景は画素値0の白であると仮定され、前景(テキスト、図など)は画素値1の黒であると仮定される。黒対白、およびテキスト対背景についての画素値の定義は、選択可能な事項であり、ここで説明される実装は、異なる画素値の定義に適応させるために容易に修正されうることに留意されたい。
【0015】
二値画像の各画素に関連する線幅を取得するために、線幅解析が実行される(ステップS14)。ここで、対象の画素に関連する線幅は、当該対象の画素を含み、横および縦方向において連続する黒画素のランレングスのうち、より小さい方のランレングスとして定義される。白画素(背景)の線幅は、ゼロである。黒画素が線または文字線の一部である場合、線幅は、文書における線または文字線の一般的な幅と同じオーダーになる傾向がある。黒画素が図の要素の一部である場合、その線幅は、かなり大きな値となる傾向がある。線幅は、以降の線の削除処理の様々なステップにおいて使用される。
【0016】
後述するステップS15からS18は縦線の削除に関連し、ステップS21からS25は横線の削除に関連する。
【0017】
ステップS12において特定された各縦線に対して実行される、次の一連のステップ(
図2に示すステップS151からS157、まとめてステップS15)は、幅に対する高さの比率が十分に大きい縦線を処理する。これらのステップは、そのような縦線のうち、横線または横に近い線との交点に位置しない部分を削除する。本開示において、画素を「削除する」とは、前景の画素値(たとえば1)から背景の画素値(たとえば0)に画素値を設定することを言う。
【0018】
ステップS151において、縦線のバウンディングボックスによって定義される二値画像の区画は、重なり合わず、縦方向に配置される(積み重ねられる)一連のより小さなウィンドウに分割される。一実施形態では、ウィンドウは高さ60画素であるが、30から200画素の間のような他のサイズが使用されてもよい。各ウィンドウに対して、縦方向射影ヒストグラムを生成するために画像が縦方向に射影され、ヒストグラムの最大値(ピーク)における横方向の画素の位置が、そのウィンドウにおける縦線部分の横方向の中心位置として取得される(ステップS152)。各縦方向位置において、縦線に属する黒画素は、横方向の中心位置から開始し、画素が白になるまで、またはウィンドウの左右の境界に到達するまで、左方向および右方向に引き延ばすことによって特定される(すなわち、横方向の中心位置において一つに繋がる、全ての連続した黒画素を特定する)(ステップS153)。全てのこれらの黒画素に対して、ステップS14において計算されたような、それらに関連する線幅が読み出され、これらの線幅の最大値が計算される(この縦方向位置における縦線の最大線幅と呼ばれる)(ステップS154)。
【0019】
ステップS151からS154はまとめて、縦線に関する全ての縦方向位置において、最大線幅を取得するステップである。各縦方向位置における横方向の中心位置を取得するため、すなわち、各縦方向位置における線に属する黒画素を特定するために、別の方法が使用されてもよい。たとえば、各縦方向位置における黒画素を取得するために、横方向ランレングスが使用されてもよい。
【0020】
縦線と、横線または横に近い線とが交点の内部に位置する画素については、関連する線幅はかなり大きくなりうることに留意されたい。したがって、特定の縦方向位置が、縦線と、横線または横に近い線とが交点の内部に位置する場合、この縦方向位置に関する最大線幅は、かなり大きくなるのである。
【0021】
ステップS152からS154が全てのウィンドウに対して繰り返された後、縦線に沿う各縦方向位置に関する最大線幅が取得される。そして、線の全ての縦方向位置における最大線幅の平均値が計算される(ステップS155)。全ての最大線幅の平均値に対するバウンディングボックスの高さの比率が計算される(ステップS156)。この比率が所定の閾値よりも大きい場合、バウンディングボックスは長い縦線であると判断され、処理はステップS157(線の削除処理)に進み、そうでない場合には、ステップS157は省略され、処理はステップS16に進む。一例では、ステップS156で使用される所定の閾値は20であるが、10と30の間のような他の値が使用されてもよい。好ましくは、テキスト文字の縦線が、削除される長い縦線と見なされないように、閾値は十分に大きくするべきである。
【0022】
ステップS156において線が長い縦線であると判断された場合、ステップS157において、線幅の閾値を取得するために、(ステップS155において計算された)全ての縦方向位置における最大線幅の平均値は、乗数によって乗算される。乗数は、線幅の閾値が実際の線幅よりもわずかに大きくなるように、たとえば2から3としてもよい。そして、(ステップ154において計算された)線の各縦方向位置における最大線幅が、線幅の閾値と比較される。最大線幅が線幅の閾値よりも小さい場合、その縦方向位置における画素は0に設定される(すなわち、削除される)(ステップS157)。ステップS157の結果として、横線と交点に位置しない長い縦線の部分は削除される。
【0023】
そして、ステップS15の後に残る比較的短い線である縦線のうち、自身の連結成分が、線のバウンディングボックスの左右の境界のいずれにも接しない縦線は、削除される(ステップS16)。具体的には、各縦線に対して、バウンディングボックス内の連結成分が抽出され、連結成分の左端がバウンディングボックスの左側の境界に接しない場合であって、かつ連結成分の右端がバウンディングボックスの右側の境界に接しない場合、縦線は削除される。そうでない場合、縦線は保持される。多くの場合、テキスト文字の縦線は、それらと交差する他の線を有するため、これらの縦線はステップS16において削除されないが、他の線と交差しない縦線は削除される。
【0024】
これで縦線の削除を完了し、処理はステップS21からS25(
図3)の横線の削除に続く。ステップS21からS25は、ステップS12において検出された各横線に対して繰り返される。
【0025】
縦線および横線の削除は互いに独立しており、二つの順序は重要ではないということに留意すべきである。
【0026】
横線は、テキストの下線という形で文書画像においてしばしば出現し、そのような下線は、テキスト文字の一部としばしば交差するため、横線の削除処理は、テキスト文字を崩すことなく横線を削除するように設計される。
【0027】
まず、ステップS12において特定された各横線に対して、その幅に対する長さの比率が分析され、比率が所定の閾値よりも小さい場合、その線は省略され(すなわち、実際の横線ではなく、残りのステップS22からS25は実行されない)、処理は次の横線に進む(ステップS21)。より具体的に言うと、バウンディングボックスの長さが線の長さとして使用され、横線の全ての横方向位置における最大線幅の平均値が、線幅として使用される。横線の横方向位置における最大線幅は、その横方向位置に位置する横線に属する、全ての黒画素に関連する線幅の最大値を参照する。横方向位置における最大線幅および全ての横方向位置における最大線幅の平均値は、ステップS151からS155と同様のステップにおいて、縦および横を入れ替え、左右を上下に変更したステップを用いて計算されうる。一例では、所定の閾値は20であるが、10と30の間のような他の値が使用されてもよい。
【0028】
線が省略されない場合は、横線に沿う各横方向位置に対して、その横方向位置に中心が位置する横線の小さな部分(バウンディングボックスにおける小さなウィンドウ)内の最大線幅の局所的な平均値が計算され、横方向位置における最大線幅が、小さなウィンドウに関する局所的な平均値よりも小さい場合、その横方向位置における横線の黒画素の列は削除される(ステップS22)。ステップS22は、ステップS21において計算された、各横方向位置における最大線幅を使用する。ステップS22は、横線に沿う全ての横方向位置に対して繰り返され、すなわち移動するウィンドウを使用する。本ステップの後、横線の多くの部分が残る一方で、多くの部分が削除される。
【0029】
図4Aは、二値文書画像の一部の一例として、下線付きのテキストの列を示す。
図4Bは、ステップS22の結果を示し、横方向の下線のほとんどの部分が削除される一方で、多くの断片がまだ残っているように見える。
【0030】
そして、横線のバウンディングボックス内に少なくとも一部分が位置する連結成分が抽出され、所定の値によるバウンディングボックスの上下の境界のいずれも越えて延びない連結成分が削除される(ステップS23)。所定の値は、たとえば10画素であってもよく、5から20画素のような他の値が使用されてもよい。ステップS22において削除されず、テキスト文字の線と交点に位置しない横線の断片については、連結成分がバウンディングボックスの上下の境界を越えて著しく延びることはなく、それゆえに、ステップS23において削除される。他方で、文字線と交点に位置する横線の断片については、連結成分は文字線を含み、それゆえに、バウンディングボックスの上および/または下の境界を越えて著しく延び得るので、これらの断片はステップ23において削除されない。
【0031】
あるテキスト文字に対して、前述した横線の削除の処理は、下線と交差する部分の崩れをもたらす可能性もある。
図4Cにおいて、文字「g」の下部が崩された一例が示されている。したがって、連結成分間に十分に小さな間隔を有する連結成分を結合するために、ステップ23から得られた文書画像に対して、クロージング処理が適用される(ステップ24)。クロージングは、膨張の後に収縮を伴い、同じ構成要素を使用するモルフォロジー演算である。クロージング処理の効果は、構成要素を内部にはめ込むことが可能な背景(ここでは白)の領域を保持し、他の背景の領域(たとえば、本例においては小さな間隔)を取り除く。ステップS24において、好ましくは、構成要素はたとえば20画素の長さを有する横線であり、10から30画素のような他の長さが使用されてもよい。同様に、他の適切な形状が使用されてもよい。ステップS24の結果として、崩れた文字線の断片が結合される。この効果は、
図4Dにおいて確認できる。
【0032】
最後に、横線のバウンディングボックスは、たとえば5画素ずつ、あるいは2から15画素のような他の値が使用されてもよいが、上下の境界においてわずかに拡大され、バウンディングボックス内にあり、バウンディングボックスの上下の境界のいずれにも接しない連結成分が削除される(ステップS25)。本ステップの効果は、前のステップによって削除されない横線の断片を削除することである。
【0033】
ここで説明される横線および縦線の検出および削除方法は、たとえば
図4に示すコンピューター120のような、情報処理システムに実装されうる。コンピューター120は、プロセッサー121、記憶装置(ハードディスクドライブなど)122および内部メモリー(RAMなど)123を含む。記憶装置122は、本方法を実行するためにRAM123に読み出され、プロセッサー121によって実行されるソフトウェアプログラムを格納する。
【0034】
一態様において、本発明は、情報処理システムによって実行される方法である。他の態様において、本発明は、本方法を実行する目的で情報処理装置を制御するための、コンピュータープログラムおよびコンピュータープログラムを内部に格納したコンピューターが使用可能な非一時的媒体である。さらに他の態様において、本発明は、情報処理システムにおいて具体化されている。
【0035】
本発明の思想または範囲から逸脱することなく、本発明に係る横線および縦線の検出および削除方法と、本発明に関連する装置とにおける様々な修正および変更が可能であることは、当業者にとって明らかである。このように、本発明は、添付された特許請求の範囲およびそれらの同等物に記載の範囲で行われる修正および変更も含む。