(57)【要約】【課題】テキストの回転角を決定する装置、方法及びコンピュータ可読記憶媒体。【解決手段】方法は、画像内のテキストに含まれる複数のオブジェクトの各オブジェクトに対して、最も近接するオブジェクトとの距離を計算することと、最も近接するオブジェクトとの距離の平均距離を計算することと、平均距離と、複数のオブジェクトの各々のフォント線幅の平均である平均フォント線幅との間の比を決定することと、比と閾値とを比較することによってテキストの回転角を決定することと、を備える。【選択図】図８
2018116647.tif 000002
【特許請求の範囲】
【請求項１】
画像内のテキストの回転角を決定する装置であって、回路を備え、
前記回路は、
前記テキストに含まれる複数のオブジェクトの各オブジェクトに対して、最も近接するオブジェクトとの距離を計算し、
前記最も近接するオブジェクトとの距離の平均距離を計算し、
前記平均距離と、前記複数のオブジェクトの各々のフォント線幅の平均である平均フォント線幅との間の比を決定し、
前記比と閾値とを比較することによって前記テキストの回転角を決定するように構成されている装置。
【請求項２】
前記回路は、各オブジェクトの外接矩形を決定するように更に構成され、前記外接矩形は、各オブジェクトを包囲するとともに各オブジェクトの最外部に接し、
前記回路は、各外接矩形と最も近接する外接矩形との距離を計算することによって前記最も近接するオブジェクトとの距離を計算する請求項１に記載の装置。
【請求項３】
前記回路は、
各オブジェクトに対して、前記画像内の各オブジェクトの印刷領域全体に対応するオブジェクト領域を決定し、
各オブジェクトに対して、各オブジェクトの外周に対応するオブジェクト外周を決定し、かつ、
前記オブジェクト領域を前記オブジェクト外周によって除算するとともに２を乗算することによって各オブジェクトのフォント線幅を計算するように更に構成されている請求項１に記載の装置。
【請求項４】
前記回路は、前記複数のオブジェクトのフォント線幅の和を前記複数のオブジェクトの総数によって除算することによって平均フォント線幅を計算するように構成されている請求項３に記載の装置。
【請求項５】
前記回路は、各オブジェクトに対して最も近接するオブジェクトとの距離を計算する前に、
前記画像内のテキストの一つ以上のテキストブロックを決定し、各テキストブロックは、複数のオブジェクトを含み、
各テキストブロックに対して、前記テキストブロックが縦向きと横向きのいずれであるかを決定し、かつ、
前記テキストブロックが縦向きであるという決定に応答して、テキストブロックの各オブジェクトに対して最も近接するオブジェクトとの距離を計算するように構成されている請求項１に記載の装置。
【請求項６】
画像内のテキストに含まれる複数のオブジェクトの各オブジェクトに対して、最も近接するオブジェクトとの距離を計算することと、
前記最も近接するオブジェクトとの距離の平均距離を計算することと、
前記平均距離と、前記複数のオブジェクトの各々のフォント線幅の平均である平均フォント線幅との間の比を決定することと、
前記比と閾値とを比較することによって前記テキストの回転角を決定することと、
を備える方法。
【請求項７】
各オブジェクトの外接矩形を決定することであって、前記外接矩形は、各オブジェクトを包囲するとともに各オブジェクトの最外部に接することを更に備え、
前記最も近接するオブジェクトとの距離を計算することは、各外接矩形と最も近接するオブジェクトとの距離を計算することによって行われる請求項６に記載の方法。
【請求項８】
各オブジェクトに対して、前記画像内の各オブジェクトの印刷領域全体に対応するオブジェクト領域を決定することと、
各オブジェクトに対して、各オブジェクトの外周に対応するオブジェクト外周を決定することと、
前記オブジェクト領域を前記オブジェクト外周によって除算するとともに２を乗算することによって各オブジェクトのフォント線幅を計算することと、
を更に備える請求項６に記載の方法。
【請求項９】
前記複数のオブジェクトのフォント線幅の和を前記複数のオブジェクトの総数によって除算することによって平均フォント線幅を計算することを更に備える請求項８に記載の方法。
【請求項１０】
各オブジェクトに対して最も近接するオブジェクトとの距離を計算する前に、
前記画像内のテキストの一つ以上のテキストブロックを決定することであって、各テキストブロックは、複数のオブジェクトを含むことと、
各テキストブロックに対して、前記テキストブロックが縦向きと横向きのいずれであるかを決定することと、
前記テキストブロックが縦向きであるという決定に応答して、テキストブロックの各オブジェクトに対して最も近接するオブジェクトとの距離を計算することと、
を更に備える請求項６に記載の方法。
【請求項１１】
前記テキストの回転角を決定した後に光学文字認識（ＯＣＲ）を行うことを更に備える請求項６に記載の方法。
【請求項１２】
コンピュータで実行されるときに、
画像内のテキストに含まれる複数のオブジェクトの各オブジェクトに対して、最も近接するオブジェクトとの距離を計算することと、
前記最も近接するオブジェクトとの距離の平均距離を計算することと、
前記平均距離と、前記複数のオブジェクトの各々のフォント線幅の平均である平均フォント線幅との間の比を決定することと、
前記比と閾値とを比較することによって前記テキストの回転角を決定することと、
を備える方法をコンピュータに実行させるコンピュータ実行可能命令を有する非一時的コンピュータ可読記憶媒体。
【請求項１３】
各オブジェクトの外接矩形を決定することであって、前記外接矩形は、各オブジェクトを包囲するとともに各オブジェクトの最外部に接することを更に備え、
前記最も近接するオブジェクトとの距離を計算することは、各外接矩形と最も近接するオブジェクトとの距離を計算することによって行われる請求項１２に記載の非一時的コンピュータ可読記憶媒体。
【請求項１４】
各オブジェクトに対して、前記画像内の各オブジェクトの印刷領域全体に対応するオブジェクト領域を決定することと、
各オブジェクトに対して、各オブジェクトの境界に対応するオブジェクト境界を決定することと、
前記オブジェクト領域を前記オブジェクト境界によって除算するとともに２を乗算することによって各オブジェクトのフォント線幅を計算することと、
を更に備える請求項１２に記載の非一時的コンピュータ可読記憶媒体。
【請求項１５】
前記複数のオブジェクトのフォント線幅の和を前記複数のオブジェクトの総数によって除算することによって平均フォント線幅を計算することを更に備える請求項１４に記載の非一時的コンピュータ可読記憶媒体。
【請求項１６】
各オブジェクトに対して最も近接するオブジェクトとの距離を計算する前に、
前記画像内のテキストの一つ以上のテキストブロックを決定することであって、各テキストブロックは、複数のオブジェクトを含むことと、
各テキストブロックに対して、前記テキストブロックが縦向きと横向きのいずれであるかを決定することと、
前記テキストブロックが縦向きであるという決定に応答して、テキストブロックの各オブジェクトに対して最も近接するオブジェクトとの距離を計算することと、
を更に備える請求項１２に記載の非一時的コンピュータ可読記憶媒体。
【請求項１７】
前記テキストの回転角を決定した後に光学文字認識（ＯＣＲ）を行うことを更に備える請求項１２に記載の非一時的コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、一般的にテキストの向きの分野に関する。
【発明の概要】
【発明が解決しようとする課題】
【０００２】
典型的には、文字が描かれている角度の推定は、光学文字認識（ＯＣＲ）プロセスを用いて行われる。このプロセスは、低速であり、リアルタイムＯＣＲアプリケーションに適さない。既存の解決は、そのような解決を無視すること又はユーザに対して角度を手動で指定するのを要求することであり、角度を手動で指定することは、特に、処理する必要があるテキストの量が多いときにはユーザにとって厄介である。
【課題を解決するための手段】
【０００３】
テキストの回転角を決定する装置、方法及びコンピュータ可読記憶媒体。方法は、画像内のテキストに含まれる複数のオブジェクトの各オブジェクトに対して、最も近接するオブジェクトとの距離を計算することと、最も近接するオブジェクトとの距離の平均距離を計算することと、平均距離と、複数のオブジェクトの各々のフォント線幅の平均である平均フォント線幅との間の比を決定することと、比と閾値とを比較することによってテキストの回転角を決定することと、を備える。
【０００４】
開示は、以下の記載を読むとともに添付図面を見ることによって更に良く理解されるであろう。これらの図面は、実施の形態の限定されない例としてのみ提供される。
【図面の簡単な説明】
【０００５】
【図１】一実施の形態による四つの異なる回転角を示す。
【図２】一実施の形態による縦向きテキストの例を示す。
【図３】一実施の形態によるテキストブロックが縦向きであるか横向きであるかを決定するプロセスのフローチャートを示す。
【図４】一実施の形態による（一つ以上の）縦向きブロックの回転角を決定するプロセスのフローチャートを示す。
【図５】一実施の形態によるオブジェクトを示す。
【図６】一実施の形態によるテキストブロックを示す。
【図７】一実施の形態によって実行されるプロセスの例を示す。
【図８】本開示の（一つ以上の）実施の形態を実現することができるコンピュータシステムを示す。
【発明を実施するための形態】
【０００６】
一実施の形態は、画像内のテキストの回転角を決定する装置であって、回路を備え、回路は、テキストに含まれる複数のオブジェクトの各オブジェクトに対して、最も近接するオブジェクトとの距離を計算し、最も近接するオブジェクトとの距離の平均距離を計算し、平均距離と、複数のオブジェクトの各々のフォント線幅の平均である平均フォント線幅との間の比を決定し、比と閾値とを比較することによってテキストの回転角を決定するように構成されている装置に注目する。
【０００７】
一実施の形態において、回路は、各オブジェクトの外接矩形を決定するように更に構成され、外接矩形は、各オブジェクトを包囲するとともに各オブジェクトの最外部に接し、回路は、各外接矩形と最も近接する外接矩形との距離を計算することによって最も近接するオブジェクトとの距離を計算する。
【０００８】
一実施の形態において、回路は、各オブジェクトに対して、画像内の各オブジェクトの印刷領域全体に対応するオブジェクト領域を決定し、各オブジェクトに対して、各オブジェクトの外周に対応するオブジェクト外周を決定し、かつ、オブジェクト領域をオブジェクト外周によって除算するとともに２を乗算することによって各オブジェクトのフォント線幅を計算するように更に構成されている。
【０００９】
一実施の形態において、回路は、複数のオブジェクトのフォント線幅の和を複数のオブジェクトの総数によって除算することによって平均フォント線幅を計算するように構成されている。
【００１０】
一実施の形態において、回路は、各オブジェクトに対して最も近接するオブジェクトとの距離を計算する前に、画像内のテキストの一つ以上のテキストブロックを決定し、各テキストブロックは、複数のオブジェクトを含み、各テキストブロックに対して、テキストブロックが縦向きと横向きのいずれであるかを決定し、かつ、テキストブロックが縦向きであるという決定に応答して、テキストブロックの各オブジェクトに対して最も近接するオブジェクトとの距離を計算するように構成されている。
【００１１】
一実施の形態は、画像内のテキストに含まれる複数のオブジェクトの各オブジェクトに対して、最も近接するオブジェクトとの距離を計算することと、最も近接するオブジェクトとの距離の平均距離を計算することと、平均距離と、複数のオブジェクトの各々のフォント線幅の平均である平均フォント線幅との間の比を決定することと、比と閾値とを比較することによって前記テキストの回転角を決定することと、を備える方法に注目する。
【００１２】
一実施の形態において、方法は、各オブジェクトの外接矩形を決定することであって、外接矩形は、各オブジェクトを包囲するとともに各オブジェクトの最外部に接することを更に備え、最も近接するオブジェクトとの距離を計算することは、各外接矩形と最も近接するオブジェクトとの距離を計算することによって行われる。
【００１３】
一実施の形態において、方法は、各オブジェクトに対して、画像内の各オブジェクトの印刷領域全体に対応するオブジェクト領域を決定することと、各オブジェクトに対して、各オブジェクトの外周に対応するオブジェクト外周を決定することと、オブジェクト領域をオブジェクト外周によって除算するとともに２を乗算することによって各オブジェクトのフォント線幅を計算することと、を更に備える。
【００１４】
一実施の形態において、方法は、複数のオブジェクトのフォント線幅の和を複数のオブジェクトの総数によって除算することによって平均フォント線幅を計算することを更に備える。
【００１５】
一実施の形態において、方法は、各オブジェクトに対して最も近接するオブジェクトとの距離を計算する前に、画像内のテキストの一つ以上のテキストブロックを決定することであって、各テキストブロックは、複数のオブジェクトを含むことと、各テキストブロックに対して、テキストブロックが縦向きと横向きのいずれであるかを決定することと、テキストブロックが縦向きであるという決定に応答して、テキストブロックの各オブジェクトに対して最も近接するオブジェクトとの距離を計算することと、を更に備える。
【００１６】
一実施の形態において、方法は、テキストの回転角を決定した後に光学文字認識（ＯＣＲ）を行うことを更に備える。
【００１７】
一実施の形態は、コンピュータで実行されるときに、画像内のテキストに含まれる複数のオブジェクトの各オブジェクトに対して、最も近接するオブジェクトとの距離を計算することと、最も近接するオブジェクトとの距離の平均距離を計算することと、平均距離と、複数のオブジェクトの各々のフォント線幅の平均である平均フォント線幅との間の比を決定することと、比と閾値とを比較することによってテキストの回転角を決定することと、を備える方法をコンピュータに実行させるコンピュータ実行可能命令を有する非一時的コンピュータ可読記憶媒体に注目する。
【００１８】
一実施の形態において、非一時的コンピュータ可読記憶媒体は、各オブジェクトの外接矩形を決定することであって、外接矩形は、各オブジェクトを包囲するとともに各オブジェクトの最外部に接することを更に備え、最も近接するオブジェクトとの距離を計算することは、各外接矩形と最も近接するオブジェクトとの距離を計算することによって行われる。
【００１９】
一実施の形態において、非一時的コンピュータ可読記憶媒体は、各オブジェクトに対して、前記画像内の各オブジェクトの印刷領域全体に対応するオブジェクト領域を決定することと、各オブジェクトに対して、各オブジェクトの外周に対応するオブジェクト外周を決定することと、オブジェクト領域をオブジェクト外周によって除算するとともに２を乗算することによって各オブジェクトのフォント線幅を計算することと、を更に備える。
【００２０】
一実施の形態において、非一時的コンピュータ可読記憶媒体は、複数のオブジェクトのフォント線幅の和を複数のオブジェクトの総数によって除算することによって平均フォント線幅を計算することを更に備える。
【００２１】
一実施の形態において、非一時的コンピュータ可読記憶媒体は、各オブジェクトに対して最も近接するオブジェクトとの距離を計算する前に、画像内のテキストの一つ以上のテキストブロックを決定することであって、各テキストブロックは、複数のオブジェクトを含むことと、各テキストブロックに対して、テキストブロックが縦向きと横向きのいずれであるかを決定することと、テキストブロックが縦向きであるという決定に応答して、テキストブロックの各オブジェクトに対して最も近接するオブジェクトとの距離を計算することと、を更に備える。
【００２２】
一実施の形態において、非一時的コンピュータ可読記憶媒体は、テキストの回転角を決定した後に光学文字認識（ＯＣＲ）を行うことを更に備える。
【００２３】
本開示は、縦方向に流れるテキストブロックの画像内に文字（例えば、表意文字）が書かれた角度を迅速に推定又は決定する方法に注目する。このように書かれる角度を回転角と称する。回転及び向きを本開示全体に亘って区別しないで用いることがあることに留意されたい。
【００２４】
図１に示すように、一実施の形態において、四つの異なる回転角が存在する。図１Ａは、０°の回転角の文字を示す。図１Ｂは、９０°の回転角の文字を示す。図１Ｃは、１８０°の回転角の文字を示す。図１Ｄは、２７０°の回転角の文字を示す。
【００２５】
横方向ではなく縦方向に流れるテキストを縦向きテキストと称する。図２は、縦向きテキストの四つの例を示す。図２Ａは、ラテン語から派生した言語のテキストが９０°回転している例を示す。図２Ｂは、ラテン語から派生した言語のテキストが２７０°回転している例を示す。図２Ｃは、文字を回転させずに（０°の回転）縦向きに書かれたラテン語から派生した言語のテキストの例を示し、図２Ｄは、文字を回転させずに縦向きに書かれた日本語テキストの例を示す。
【００２６】
テキストが（画像の左から右までの）画像の横軸に関連して横向きであると見なすともにテキストが（画像の上から下までの）画像の縦軸に関連して縦向きであると見なしていることに留意されたい。横向きテキストの向き及び縦向きテキストの向きを図１及び図２に示す。縦向きテキストは、画像の縦軸に平行な画像の（上から下までの）列において分類され、それに対し、横向きテキストは、画像の横軸に平行な画像の（左から右までの）行において分類される。
【００２７】
本開示は、文字の間隔の寸法及び書かれた文字の特性に基づく決定を行うことに注目する。
【００２８】
回転を決定するために一つの文字ごとにＯＣＲを行うのに所定の不都合がある。例えば、このプロセスは、低速であり、リアルタイムＯＣＲアプリケーションに適さない。上述したように、既存の解決は、そのようなテキストの回転角を無視すること又はユーザに対して回転角を手動で指定するのを要求することである。
【００２９】
上述したように、本実施の形態は、縦向きのテキストの回転角を迅速かつ自動的に推定する方法を説明する。本開示の実施の形態を、ＯＣＲプロセスを促進するために用いることができ、他のアプリケーションは、その精度をリアルタイムで向上させる。例えば、最初に、ここで説明する実施の形態を用い、その後、ＯＣＲは、（一つ以上の）文字を適切に認識するために結果を適用してもよい。換言すれば、最初に、テキストの回転角を、図３及び図４を参照しながら後に説明するようにして決定し、その後、ＯＣＲをテキストに適用してもよい。
【００３０】
図３は、一実施の形態によるテキストブロックが縦向きであるか横向きであるかを決定するプロセスを示す。所定の画像（例えば、走査した文書の画像）が、例えば、縦向きに描かれた（書かれた）テキスト及び横向きに描かれた（書かれた）テキストを有することに留意されたい。そのような画像は、広告面、新聞面、チラシ面等又は他のタイプの面（ｐａｇｅ）／文書を表してもよい。
【００３１】
したがって、一実施の形態において、先ず、ステップ１００において、画像内のオブジェクト（例えば、文字（ｃｈａｒａｃｔｅｒ  ｏｒ  ｌｅｔｔｅｒ））を検出する。本開示において、オブジェクト及び文字を区別しないで用いてもよいことに留意されたい。次に、ステップ１１０において、オブジェクトをブロックに分割する。ブロックを、例えば、文字の任意のグループ（例えば、文、段落等）としてもよい。ブロックを、ブロック間の距離が予め決定された距離より大きいか否かに基づいて他のブロックと区別してもよい。例えば、二つの段落の間の距離は、一語の二つの文字の間の距離より著しく大きくなる。したがって、そのような距離を、ブロックのサイズを決定する際に用いる。一実施の形態において、各ブロックが異なるサイズとなってもよいことに留意されたい。一実施の形態において、（一つ以上の）一部のブロックを同一サイズにしながら（一つ以上の）他のブロックを（一つ以上の）異なるサイズにしてもよいことに留意されたい。
【００３２】
一実施の形態において、ブロック間の最小距離を文字のサイズの２倍にするとともに文字の間の距離を文字のサイズの０．２倍以下にしてもよいことに留意されたい。これらの距離が画素であることに留意されたい。
【００３３】
次に、ステップ１２０において、各ブロックに対して、角度（ｏｒｉｅｎｔａｔｉｏｎ  ａｎｇｌｅ）（すなわち、０°、９０°、１８０°又は２７０°）を決定する。一実施の形態において、角度を、シュプリンガー（Ｓｐｒｉｎｇｅｒ−Ｖｅｒｌａｇ）の２０１０年１月１６日に刊行されたＢｅｕｓｅｋｏｍ等による“Ｃｏｍｂｉｎｅｄ  ｏｒｉｅｎｔａｔｉｏｎ  ａｎｄ  ｓｋｅｗ  ｄｅｔｅｃｔｉｏｎ  ｕｓｉｎｇ  ｇｅｏｍｅｔｒｉｃ  ｔｅｘｔ−ｌｉｎｅ  ｍｏｄｅｌｉｎｇ”で議論された方法を用いて決定してもよく、その全内容を参照によりここに組み込む。一実施の形態において、角度を、ＩＥＥＥの２０１０年１月に刊行された２０１０  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎＰａｔｔｅｒｎ  ＲｅｃｏｇｎｉｔｉｏｎからのＩｕｌｉｕ  Ｋｏｎｙａ等による“Ｆａｓｔ  ｓｅａｍｌｅｓｓ  ｓｋｅｗ  ａｎｄ  ｏｒｉｅｎｔａｔｉｏｎ  ｄｅｔｅｃｔｉｏｎ  ｉｎ  ｄｏｃｕｍｅｎｔ  ｉｍａｇｅｓ”で議論された方法を用いて決定してもよく、その全内容を参照によりここに組み込む。一実施の形態において、角度を、当業者に知られている（一つ以上の）他の方法によって決定してもよい。例えば、角度及び画像のスキュー角（ｓｋｅｗ  ａｎｇｌｅ）を検出することができる任意の方法を用いてもよい。
【００３４】
簡潔に要約するために、Ｂｅｕｓｅｋｏｍ等で議論した方法（以下、Ｂｅｕｓｅｋｏｍ）は、走査した文書からテキスト行を抽出するために幾何学的整合（ｇｅｏｍｅｔｒｉｃ  ｍａｔｃｈｉｎｇ）を用いる。一定のポイントに対するテキスト行モデルの整合の品質を与える品質関数が規定される。目的は、モデルに整合する境界ボックスの数を最大にするとともに最小二乗法のロバスト推定（ｒｏｂｕｓｔ  ｌｅａｓｔ  ｓｑｕａｒｅ  ｓｅｎｓｅ）において基準値からの各基準点の距離を最小にする文書画像の各テキスト行のパラメータの集合を見つけることである。Ｂｅｕｓｅｋｏｍの方法の極めて重要な考えは、モデリングディセンサー（ｍｏｄｅｌｉｎｇ  ｄｅｓｃｅｎｄｅｒｓ）と同じようにアセンダーモデリング（ａｓｃｅｎｄｅｒ  ｍｏｄｅｌｉｎｇ）を用いることである。
【００３５】
ｘライン（ｘ，ａ，ｃ等のようなアセンダーでない小文字（ｎｏｎ−ａｓｃｅｎｄｉｎｇ  ｌｏｗｅｒ  ｃａｓｅ  ｃｈａｒａｃｔｅｒ）の上を通過するライン）を直線としてモデル化し、アセンダーラインを、ｘラインより上で所定の距離を置きながらｘラインと平行となるラインとしてモデル化する。文書画像の連結部の境界ボックスの一番上のラインの真ん中をとることによって取得した基準点｛ｙ１、ｙ２、．．．，ｙｎ｝を考察する。テキスト行の検出の目的は、最大のセット幅を見つけることである。ラテン語から派生した言語において、スクリプトアセンダーはディセンダーより生じやすいので、構成要素は、ディセンダーラインよりアセンダーラインに整合しやすい。ディセンダー／アセンダーに整合する構成要素は、基準線／ｘラインに整合する構成要素に比べて少ないスコアを受け取る。したがって、一般的には、ディセンダーラインの総合的品質は、アセンダーラインの総合的品質より高くなる。この情報は、ページの上下方向を見つけるのに用いられる。
【００３６】
Ｂｅｕｓｅｋｏｍの方法において、ディセンダーモデルを用いてｎ個のベストライン（ｂｅｓｔ  ｌｉｎｅ）の総合的品質を計算し、その後、アセンダーモデルを用いてｎ個のベストラインの総合的品質を計算する。アセンダーモデルの品質がディセンダーモデルの品質より高い場合、ページは、上下逆（１８０°回転）と報告される。正確な向きの所定のページ画像のアセンダーモデルを計算することは、１８０°回転したページのディセンダーモデルを計算することに相当する。したがって、任意の画像に対して、元の画像のディセンダーモデル及び１８０°回転した画像のディセンダーモデルのみを計算する。更に良いディセンダー品質となる画像は、正確な向きの画像として報告される。
【００３７】
この概念は、検出される９０°の向きのページ及び２７０°の向きのページに容易に拡張される。横向きテキストラインモデルは、縦向きテキストラインに十分に適合せず、したがって、上下関係の正しい縦長書式（ｒｉｇｈｔ  ｓｉｄｅ  ｕｐ  ｐｏｒｔｒａｉｔ  ｐａｇｅ）に対して、縦向きのｎ個の最適ラインの総合的品質は、横向きのｎ個の最適ラインの総合的品質より著しく低くなる。したがって、ページを四つの全ての向きに回転させることによりディセンダー品質を計算することによって、ページの正確な向きを決定することができる。
【００３８】
図３に戻ると、ステップ１３０において、角度の結果に基づいて、各ブロックを、縦向きと横向きの何れかに分類する。特に、ブロックの向きが９０°又は２７０°のとき、ブロックは、縦向きであるものとして分類する。そうでない場合（すなわち、ブロックの向きが０°又は１８０°であるとき）、ブロックは、横向きであるものとして分類される。ブロックが横向きである場合、回転角が上述した角度（すなわち、例えば、Ｂｅｕｓｅｋｏｍで議論した方法を用いて決定した角度）であるので、更なる処理を必要としない。
【００３９】
ステップ１４０において、全てのブロックが分類されたか否かを決定する。まだ分類されていないブロックが存在する場合、処理は、ステップ１２０に戻り、全てのブロックが分類されるまで繰り返される。
【００４０】
ブロックが縦向きであるものとして分類された場合、次に、（図２Ｃに示すような）回転角度０°、（図２Ａに示すような）回転角度９０°又は（図２Ｂに示すような）回転角度２７０°を、図４を参照しながら決定する。したがって、ステップ２００において、テキストブロック内の各文字に対して、フォント線幅を、以下の式１を用いて計算する。
【００４１】
【数１】
2018116647.tif 000003
【００４２】
図５は、一実施の形態による文字“Ｌ”（オブジェクト３２０）のオブジェクト領域３００及びオブジェクト外周３１０を示す。オブジェクト領域３００は文字３２０の印刷領域（すなわち、文字が黒色で描かれる場合には文字の黒色部分）を意味することに留意されたい。オブジェクト外周３１０は、文字３２０の外周（すなわち、文字／印刷領域の輪郭）を意味する。換言すれば、オブジェクト領域３００は、フォアグラウンド画素の数に対応し、オブジェクト外周３１０は、外周輪郭に対応する。一例として、Ｃａｌｉｂｉｒｉ  １１のフォントサイズに対して、最大フォント線幅は、７画素である。
【００４３】
次に、ステップ２１０において、ブロックの全ての文字３２０の平均フォント線幅を、以下の式２を用いて計算する。
【００４４】
【数２】
2018116647.tif 000004
【００４５】
その後、ステップ２２０において、各オブジェクト３２０に対して、外接矩形３３０（すなわち、文字３２０を包囲するとともに文字の最外部に接するボックス）を計算する。オブジェクト“Ｌ”３２０の外接矩形３３０を図５に示す。一実施の形態において、外接矩形３３０は文字３２０に接しないが文字３２０を包囲するとともに文字３２０から所定の距離（例えば、１画素）にあってもよいことに留意されたい。
【００４６】
さらに、ステップ２３０において、各オブジェクト３２０に対して、最も近いオブジェクト３２０に対する間隔３４０の寸法を計算する（図６参照）。一実施の形態において、この寸法を一つのオブジェクト３２０の外接矩形３３０から他の（隣接する）オブジェクト３２０の外接矩形３３０まで計算することに留意されたい。図６に示すように、上述した間隔３４０は、最も近い隣接するオブジェクト３２０までのオブジェクト３２０の距離を表す。図６がオブジェクト３２０（すなわち、“Ｌ”，“Ｅ”，“Ａ”及び“Ｄ”の各々）が間隔３４０を有するテキストのブロックの一実施の形態を示すことに留意されたい。
【００４７】
次に、ステップ２４０において、全てのオブジェクト間隔３４０の寸法の平均を計算する。ステップ２５０において、平均間隔寸法と平均フォント線幅との間の比を、以下の式３を用いて決定する。
【００４８】
【数３】
2018116647.tif 000005
【００４９】
次に、ステップ２６０において、回転角を決定するために比を閾値Ｔと比較する。一実施の形態において、閾値Ｔを、特定の言語のほとんどの文字のフォントの太さに対応する予め決定された値としてもよい。例えば、一実施の形態において、Ｔを、ラテン語から派生した言語に対して３の値に設定してもよい。その理由は、（英語のような）ラテン語から派生した言語の文字が太いフォントで描かれるからである。値３がフォントの太さを構成する画素数を表すことに留意されたい。一実施の形態において、Ｔを、アジアの言語に対して５の値に設定してもよい。その理由は、（日本語のような）アジアの言語が（更に詳細に書くために）細いフォントで描かれるからである。
【００５０】
上述した閾値Ｔを（太字及び／又はイタリック体のテキストを含む）全てのスタイルのテキストに適用可能である。さらに、一実施の形態において、閾値を、適用される特定のアプリケーションに基づいて変更してもよい。例えば、ベイジアンのような学習フレームワーク（ｔｒａｉｎｉｎｇ  ｆｒａｍｅｗｏｒｋ）を、特定のアプリケーションに適合する閾値の値を推定するのに用いてもよい。そのような推定を、図８に示すシステムのようなシステムによって実行してもよい。
【００５１】
したがって、決定された比がＴ以上（すなわち、比≧Ｔ）である場合、テキストブロックは、０°又は１８０度の回転角を有する文字を含む縦向きであると決定される。そうでない場合（すなわち、決定された比がＴ未満である（比＜Ｔ）である場合）、テキストブロックは、図３のステップ１２０で決定されるように、推定された回転角に等しい回転角を有する縦向きであると考えられる。
【００５２】
本開示による一実施の形態を簡潔に要約するために、図７に示す文字を含むシート／ページをスキャナ又は同様な装置を用いて走査すると仮定する。一実施の形態において、先ず、走査した画像内のオブジェクト（例えば、一つ以上の文字）を検出する。一旦これらの文字を検出すると、これらのオブジェクトをブロックに分割する。例えば、処理は、図７の５個のブロック４００〜４４０を決定する。
【００５３】
次に、各ブロック４００〜４４０が横向きであるか縦向きであるかを決定する。この決定が各ブロックに対して行われるが各ブロック内の各オブジェクト（文字）に対して行われないことに留意されたい。図３に示す処理を実行する際に、ブロック４００及び４１０が画像（走査したページ）に対して横向きである（すなわち、横向きテキストである）と決定され、ブロック４２０，４３０及び４４０が画像（走査したページ）に対して縦向きである（すなわち、縦向きテキストである）と決定される。
【００５４】
次に、縦向きであると決定されたブロックに対して、図４に示す処理が適用される。この処理において、上述したように、ブロック４２０，４３０及び４４０の各オブジェクト（文字）を分析する。図４で述べた処理を行うことによって、ブロック４２０が９０°の回転角を有すること、ブロック４３０が０°の回転角を有する（すなわち、テキストが縦向きに描かれているがブロック内の文字が回転していない）こと及びブロック４４０が２７０°の回転角を有することが決定される。
【００５５】
次に、（一つ以上の）回転角を、精度を向上させるとともに認識する文字の計算時間を短縮するためにＯＣＲプロセスによって用いてもよい。テキストの特定のブロックの回転角の知識を有することによって、ＯＣＲプロセスは、テキストの特定のレイアウト（例えば、図２に示すレイアウトの一つ）を知り、文字が実際に回転したときに回転がないと仮定する文字の認識を試みる際に計算時間及び電力を浪費しない。これによって、計算時間の短縮及び節電が行われるとともに精度が向上するので上述した処理を実行する装置／マシンの性能を向上させる。
【００５６】
さらに、文字を適切に認識する際にＯＣＲを支援する及び／又は、例えば、テキストを含むシートが不適切に走査されたときに文字を回転させるために本開示の実施の形態を用いてもよいことに留意されたい。
【００５７】
本開示の実施の形態は、従来技術との違いを多く提供する。例えば、文字認識（例えば、ＯＣＲ）は、回転角を見つけるために用いられない。さらに、回転角を、テキストブロックごとに決定し、走査した画像全体に対して決定しない。換言すれば、一実施の形態によれば、処理は、図７のブロック４００が横向きであるので画像全体も横向きであると簡単に決定しない。それどころか、各ブロックの向きを正確に決定するために各ブロックを個別に調べる。テキストを回転すべき場合、テキストの各ブロックを、向きに基づいて個別に回転する。したがって、一実施の形態において、走査した画像全体を、検出したブロックの向きに基づいて回転させない。
【００５８】
また、本開示の実施の形態をラテン語から派生した言語、アジアの言語等に適用してもよい。さらに、本開示の実施の形態を、任意のフォント及びサイズのテキストに適用してもよい。
【００５９】
実施の形態で説明した機能／方法／処理の各々を、一つ以上の処理回路（又は回路）によって実現してもよい。例えば、図３及び図４に示す処理を、一つ以上の処理回路（又は回路）によって実現してもよい。処理回路は、回路を含むプロセッサのようなプログラムされたプロセッサ（例えば、図８のプロセッサ１２０３）を含む。処理回路は、特定用途向け集積回路（ＡＳＩＣ）及び列挙した機能を実行するように配置された従来の回路部品のような装置も含む。
【００６０】
図８は、本開示の（一つ以上の）実施の形態を実現することができるコンピュータシステム１２０１を示す。コンピュータシステム１２０１を、汎用コンピュータ又は特定の専用マシンとしてもよい。一実施の形態において、コンピュータシステム１２０１は、オブジェクト／テキストの回転角を決定するためにプロセッサ１２０３をプログラムするときに特定の専用マシンとなる。コンピュータシステム１２０１を、多機能周辺装置（ＭＦＰ）、一体型のプリンタ、スキャナ等として（又はその一部として）実施してもよい。
【００６１】
コンピュータシステム１２０１は、磁気ハードディスク１２０７及びリムーバブルメディアドライブ１２０８（例えば、フロッピーディスク（登録商標）ドライブ、読出し専用コンパクトディスクドライブ、読出し／書込みコンパクトディスクドライブ、コンパクトディスクジュークボックス、テープドライブ及びリムーバブル光磁気ドライブ）のような情報及び命令を格納する一つ以上の記憶装置を制御するためにバス１２０２に結合されたディスクコントローラ１２０６を含む。記憶装置を、適切なデバイスインタフェース（例えば、スモールコンピュータインタフェースシステム（ＳＣＳＩ）、集積電子機器（ｉｎｔｅｇｒａｔｅｄ  ｄｅｖｉｃｅ  ｅｌｅｃｔｒｏｎｉｃｓ）（ＩＤＥ）、エンハンストＩＤＥ（Ｅ−ＩＤＥ）、ダイレクトメモリアクセス（ＤＭＡ）又はウルトラＤＭＡ）を用いてコンピュータシステム１２０１に追加してもよい。
【００６２】
コンピュータシステム１２０１は、専用論理装置（例えば、ＡＳＩＣ）又はコンフィギュラブルロジックデバイス（例えば、シンプルプログラマブルロジックデバイス（ＳＰＬＤ）、コンプレックスプログラマブルロジックデバイス（ＣＰＬＤ）及びフィールドプログラマブルゲートアレイ（ＦＰＧＡ））も含んでもよい。
【００６３】
コンピュータシステム１２０１は、コンピュータユーザに情報を表示する液晶ディスプレイ（ＬＣＤ）とすることができるディスプレイ１２１０を制御するためにバス１２０２に結合されているディスプレイコントローラ１２０９も含んでもよい。ディスプレイ１２１０をタッチパネルディスプレイとしてもよいことに留意されたい。コンピュータシステムは、コンピュータユーザと情報をやりとりするとともに情報をプロセッサ１２０３に提供するキーボード１２１１及びポインティングデバイス１２１２のような入力装置を含む。ポインティングデバイス１２１２を、例えば、マウス、トラックボール、タッチスクリーンセンサに対する指、又は、指示情報及びコマンド選択をプロセッサ１２０３に送信するとともにディスプレイ１２１０の上のカーソル移動を制御するポインティングスティックとしてもよい。
【００６４】
コンピュータシステム１２０１は、主記憶１２０４のようなメモリに含まれる一つ以上の命令の一つ以上の列を実行するプロセッサ１２０３に応答して本開示の処理ステップの一部又は全てを実行する。そのような命令を、ハードディスク１２０７又はリムーバブルメディアドライブ１２０８のような他のコンピュータ可読媒体から主記憶１２０４に読み出してもよい。多重処理配置（ｍｕｌｔｉ−ｐｒｏｃｅｓｓｉｎｇ  ａｒｒａｎｇｅｍｅｎｔ）の一つ以上のプロセッサを、主記憶１２０４に含まれる命令列を実行するために用いてもよい。代替的な実施の形態において、配線回路を、ソフトウェア命令の代わりに又はソフトウェア命令と組み合わせて用いてもよい。したがって、実施の形態は、ハードウェア回路及びソフトウェアの任意の特定の組合せに限定されない。
【００６５】
上述したように、コンピュータシステム１２０１は、本開示の教示に従ってプログラムされた命令を保持するとともにデータ構造、テーブル、記録又はここで説明した他のデータを含む少なくとも一つのコンピュータ可読媒体又はメモリを含む。コンピュータ可読媒体の例は、コンパクトディスク、ハードディスク、フロッピーディスク（登録商標）、テープ、光磁気ディスク、ＰＲＯＭ（ＥＰＲＯＭ、ＥＥＰＲＯＭ、フラッシュＥＰＲＯＭ）、ＤＲＡＭ、ＳＲＡＭ、ＳＤＲＡＭ、他の任意の磁気媒体若しくはコンパクトディスク（例えば、ＣＤ−ＲＯＭ）、他の任意の光媒体、パンチカード、紙テープ、又は、孔のパターンを有する他の物理的な媒体である。
【００６６】
本開示は、コンピュータシステム１２０１を制御し、発明を実現するために一つ以上の装置を駆動し、かつ、コンピュータシステム１２０１がユーザと情報をやりとりするのを可能にするソフトウェアを含み、ソフトウェアは、コンピュータ可読媒体のいずれか一つ又はその組合せに格納される。そのようなソフトウェアは、デバイスドライバ、オペレーティングシステム及びアプリケーションソフトウェアを含むがそれに限定されない。そのようなコンピュータ可読媒体は、発明を実現する際に実行される処理の全て又は（処理が分散される場合には）一部を実行するための本開示のコンピュータプログラム製品を更に有する。
【００６７】
コンピュータコードデバイス（ｃｏｍｐｕｔｅｒ  ｃｏｄｅ  ｄｅｖｉｃｅ）を、スクリプト、解釈可能プログラム、ダイナミックリンクライブラリ（ＤＬＬ）、Ｊａｖａ（登録商標）のクラス及び完全な実行可能プログラムを含むがそれに限定されない任意の解釈可能又は実行可能コード機構としてもよい。さらに、本実施の形態の処理の一部を、更によい実行、信頼性及び／又はコストのために分散させてもよい。
【００６８】
ここで用いる用語「コンピュータ可読媒体」は、実行のためのプロセッサ１２０３への命令の提供に関与する任意の非一時的媒体を意味する。コンピュータ可読媒体は、不揮発性媒体又は揮発性媒体を含むがそれに限定されない多数の形態をとってもよい。不揮発媒体は、例えば、ハードディスク１２０７又はリムーバブルメディアドライブ１２０８のような光ディスク、磁気ディスク及び光磁気ディスクを含む。揮発性媒体は、主記憶１２０４のようなダイナミックメモリを含む。それに対し、伝送媒体は、バス１２０２を構成するワイヤを含み、同軸ケーブル、銅線及び光ファイバを含む。伝送媒体は、電波通信及び赤外線データ通信中に生じるような音波又は光波の形態をとってもよい。
【００６９】
コンピュータ可読媒体の種々の形態は、実行のためのプロセッサ１２０３への一つ以上の命令の一つ以上の列の実行に関してもよい。例えば、命令を、最初にリモートコンピュータの磁気ディスクで実行してもよい。リモートコンピュータは、本開示の全て又は一部をダイナミックメモリにおいて遠隔的に実現するための命令をロードするとともに命令をモデムにより電話線を通じて送信することができる。コンピュータシステム１２１０の近くのモデムは、電話線のデータを受信するとともにデータをバス１２０２に配置してもよい。バス１２０２は、主記憶１２０４にデータを送信し、プロセッサ１２０３は、主記憶１２０４から命令を読み出して実行する。主記憶１２０４によって受信した命令を、プロセッサ１２０３による実行前又は実行後に記憶装置１２０７に任意に格納してもよい。
【００７０】
コンピュータシステム１２０１は、バス１２０２に結合されている通信インタフェース１２０３も含む。通信インタフェース１２１３は、例えば、ローカルエリアネットワーク（ＬＡＮ）１２１５又はインターネットのような他の通信ネットワーク１２１６に接続されたネットワークリンク１２１４に結合する双方向データ通信を提供する。例えば、通信インタフェース１２１３を、任意のパケット交換ＬＡＮに取り付けるネットワークインタフェースとしてもよい。他の例として、通信インタフェース１２１３を、サービス総合デジタル網（ＩＳＤＮ）カードとしてもよい。無線リンクを実現してもよい。そのような実現において、通信インタフェース１２１３は、種々のタイプの情報を表すデジタルデータストリームを送信する電気信号、電磁信号又は光信号を送受信する。
【００７１】
ネットワークリンク１２１４は、典型的には、一つ以上のネットワークを通じた他のデータ装置へのデータ通信を提供する。例えば、ネットワークリンク１２１４は、ローカルネットワーク１２１５（例えば、ＬＡＮ）を通じた又は通信ネットワーク１２１６を通じて通信サービスを提供するサービスプロバイダによって操作される装置を通じた他のコンピュータとの接続を提供してもよい。ローカルネットワーク１２１４及び通信ネットワーク１２１６は、例えば、デジタルデータストリームを送信する電気信号、電磁信号又は光信号と、関連の物理層（例えば、ＣＡＴ５ケーブル、同軸ケーブル、光ファイバ等）と、を用いる。デジタルデータをコンピュータシステム１２０１に送信する及びデジタルデータをコンピュータシステム１２０１から送信する種々のネットワークを通じた信号及び通信インタフェース１２１３を通じるネットワークリンク１２１４の信号を、ベースバンド信号又は搬送波ベース信号（ｃａｒｒｉｅｒ  ｗａｖｅ  ｂａｓｅｄ  ｓｉｇｎａｌ）で実現してもよい。ベースバンド信号は、デジタルデータビットのストリームを記述している非変調電気パルスのようなデジタルデータを搬送し、この場合、用語「ビット」を、シンボルを意味するものと広く解釈すべきであり、各シンボルは、少なくとも一つ又はそれ以上の情報ビットを搬送する。デジタルデータを、例えば、導電媒体を通じて伝播される又は電磁波として伝搬媒体を通じて送信される振幅、パルス及び／又は周波数シフトキード信号によって搬送波を変調するのに用いてもよい。したがって、デジタルデータを、非変調ベースバンドデータとして「配線」通信チャネルを通じて送信してもよい、及び／又は、搬送波を変調することによりベースバンドと異なる予め決定された周波数帯域内で送信してもよい。コンピュータシステム１２０１は、（一つ以上の）ネットワーク１２１５，１２１６、ネットワークリンク１２１４及び通信インタフェース１２１３を通じて、プログラムコードを含むデータを送受信することができる。さらに、ネットワークリンク１２１４は、ＬＡＮ１２１５を通じた電子装置（例えば、モバイルデバイス）１２１７との接続を提供してもよい。
【００７２】
ここで説明する種々の素子、形態及び処理を互いに独立して又は種々の方法で組み合わせて用いてもよい。全てのあり得る組合せ及び部分的組合せが本開示の範囲内にあることを意図する。さらに、本開示において、（別段の指示がない限り）任意の特定の形態、素子、構成要素、特性、ステップ、モジュール、方法、処理、タスク又はブロックが必須である又は不可欠であることを意味することを意図しない。ここで説明するシステム及び構成要素の例を、説明したのと異なるように構成してもよい。例えば、素子又は構成要素を、開示した例に追加、開示した例から除去又は再配置してもよい。
【００７３】
ここで用いられるように、「一実施の形態」、「一部の実施の形態」又は「実施の形態」の言及は、実施の形態に関連して説明した特定の素子、形態、構造又は特性が少なくとも一つの実施の形態に含まれることを意味する。明細書の種々の場所での語句「一実施の形態の」の出現は、必ずしも全てが同一の実施の形態を言及するものではない。実施の形態の全てのあり得る組合せ及び部分的組合せが本開示の範囲内にあることを意味する。特に、「できる」、「してもよい」、「例えば」等のようなここで用いる条件付きの言葉は、特段の指示がない限り又は用いられる文脈内で理解されない限り、一般的には所定の実施の形態が所定の形態、素子及び／又はステップを含むのに対して他の実施の形態が所定の形態、素子及び／又はステップを含まないことを伝えることを意図する。さらに、本願及び添付した特許請求の範囲で用いられる「一つ」（ａｒｔｉｃｌｅｓ  “ａ”  ａｎｄ  “ａｎ”）を、特段の指示がない限り「一つ以上」又は「少なくとも一つ」を意味するものと解釈すべきである。
【図１】
2018116647.tif 000006
【図２】
2018116647.tif 000007
【図３】
2018116647.tif 000008
【図４】
2018116647.tif 000009
【図５】
2018116647.tif 000010
【図６】
2018116647.tif 000011
【図７】
2018116647.tif 000012
【図８】
2018116647.tif 000013
【外国語明細書】
2018116647000001.pdf