(57)【要約】【課題】本発明は、電子文書内の画素塊に対応している文字の順序の乱れを低減させるようにした情報処理装置を提供する。【解決手段】情報処理装置のライン抽出手段は、電子文書内の画素塊の矩形に関する情報を用いて、該電子文書内の行又は列であるラインを抽出し、段落抽出手段は、前記ライン抽出手段によって抽出されたラインに応じて、前記電子文書内の段落を抽出し、段落順序付手段は、前記段落抽出手段によって抽出された段落を順序付けし、文字順序付手段は、前記段落順序付手段によって順序付けされた段落の順序であって、該段落に含まれるラインを順に検索し、ラインに含まれる文字を順に検索して、文字を順序付けする。【選択図】図１
2009251872.tif 000002
【特許請求の範囲】
【請求項１】
電子文書内の画素塊の矩形に関する情報を用いて、該電子文書内の行又は列であるラインを抽出するライン抽出手段と、
前記ライン抽出手段によって抽出されたラインに応じて、前記電子文書内の段落を抽出する段落抽出手段と、
前記段落抽出手段によって抽出された段落を順序付けする段落順序付手段と、
前記段落順序付手段によって順序付けされた段落の順序であって、該段落に含まれるラインを順に検索し、ラインに含まれる文字を順に検索して、文字を順序付けする文字順序付手段
を具備することを特徴とする情報処理装置。
【請求項２】
前記電子文書内の画素塊の矩形に関する情報として、該画素塊の矩形の高さ又は幅方向の位置を含み、
前記ライン抽出手段は、該画素塊の矩形の高さ若しくは幅、又は該画素塊の矩形の高さ若しくは幅方向の位置を用いて、該画素塊を含むラインである各行の高さ又は各列の幅を抽出する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記段落抽出手段は、前記ライン抽出手段によって抽出されたラインである各行の高さ又は各列の幅、及び該ラインの高さ又は幅方向の位置を用いて段落を抽出する
ことを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記段落抽出手段は、前記ライン抽出手段によって抽出されたラインと、処理対象としている段落との位置関係に基づいて段落を抽出する
ことを特徴とする請求項１から３のいずれか一項に記載の情報処理装置。
【請求項５】
前記段落抽出手段は、抽出した段落に関する情報として、該段落を囲む外接矩形の位置に関する情報を算出し、又は該段落の順序に関する情報を該段落に含まれる文字の出現順序に関する情報から算出する
ことを特徴とする請求項１から４のいずれか一項に記載の情報処理装置。
【請求項６】
前記段落抽出手段は、同一行又は同一列に属するラインが複数存在する場合には、該ラインを順序付けする
ことを特徴とする請求項１から５のいずれか一項に記載の情報処理装置。
【請求項７】
前記段落順序付手段は、前記段落に含まれる文字の出現順序に関する情報又は該段落の位置情報に基づいて、該段落を順序付けする
ことを特徴とする請求項１から６のいずれか一項に記載の情報処理装置。
【請求項８】
コンピュータを、
電子文書内の画素塊の矩形に関する情報を用いて、該電子文書内の行又は列であるラインを抽出するライン抽出手段と、
前記ライン抽出手段によって抽出されたラインに応じて、前記電子文書内の段落を抽出する段落抽出手段と、
前記段落抽出手段によって抽出された段落を順序付けする段落順序付手段と、
前記段落順序付手段によって順序付けされた段落の順序であって、該段落に含まれるラインを順に検索し、ラインに含まれる文字を順に検索して、文字を順序付けする文字順序付手段
として機能させることを特徴とする情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及び情報処理プログラムに関する。
【背景技術】
【０００２】
電子ドキュメントを記述できる電子ドキュメントフォーマットが存在する。例えば、ＰＤＦ（Ｐｏｒｔａｂｌｅ  Ｄｏｃｕｍｅｎｔ  Ｆｏｒｍａｔ）（登録商標）といわれるものがある。
このような電子ドキュメントでは、ＰＣ上で、その電子ドキュメントを表示することが行われる。
そして、その電子ドキュメントに記述されているテキスト情報を、操作者の操作に応じてＰＣ上で選択し、コピー＆ペースト等の処理が行われる。テキスト情報をＰＣ上で選択する（例えば、電子ドキュメントを表示しているディスプレイ上に表示されているテキスト位置でマウスを左クリックしながらテキスト位置を右に移動させる等の動作でテキスト情報を選択することができる）場合、選択したテキスト位置が反転して、どのテキストを選択しているかを示すようなビューワが存在している。
一方、画像を文字認識して、電子ドキュメントを生成することも行われている。
【０００３】
これに関連する技術として、例えば、特許文献１には、縦書き、横書き文書の文章領域を高精度に構造化して、正しい読み順を抽出することを目的とし、領域抽出手段は、２値画像から文字領域、図領域などの領域を抽出し、文章領域分別手段は、図題、表題、ヘッダ、フッタと、それ以外の本文領域に分類し、罫線情報生成手段は、抽出された罫線領域や、白領域の架空罫線、図領域の端部の架空罫線などを生成し、文章領域配置構造化手段は、本文領域の配置を構造化し、木グラフで表現し、読み順抽出手段は、このグラフ表現から読み順を決定することが開示されている。
【０００４】
また、例えば、特許文献２には、文書画像の傾き検出及び行と段の抽出機能を持つ文書画像認識装置に関し、横行と縦行が混在する文書画像の傾き検出及び行・段の抽出を高速かつ高精度に行うことができるようにすることを目的とし、文書画像傾き検出部は、文書画像を参照して文字を構成する成分の集合を抽出し、これをもとに横及び縦の行候補を抽出し、それらの各々の行候補に対して信頼度を推定し、推定した行信頼度に基づいて確度の高い行の集合を抽出し、その結果をもとに確度の高い行の集合の文字成分の配置を用いて傾きを推定し、レイアウト解析部は、文書画像を構成する基礎要素の集合から行方向の確定した行集合を抽出し、行同士の関連付けによる段抽出と段を制約とした行抽出とを相互に実行して行と段を抽出することが開示されている。
【０００５】
また、例えば、特許文献３には、文書処理において、文字間距離より行間距離の方が狭い特殊なレイアウトの原稿の場合においても、正しく行方向を判定し、文字領域を作成することを課題とし、水平方向と垂直方向の両方で行切り出しを行い、各々の場合において文字領域を作成し、判定対象の空白帯に文字行を挟んで他の空白帯がないか１つ存在する場合は、判定対象の空白帯を文字領域間のセパレータとし、ただし、判定対象の空白帯に文字行を挟んで一方に他の空白帯が存在し、他方に明確な区切り要素か空白セパレータがある場合は、判定対象の空白帯を文字領域間のセパレータとせず、空白帯の長手方向と文字領域の行方向とが同じで、かつ空白帯が文字領域を貫通している場合には、その文字領域を棄却せず、最終的に一方を選択して文書処理を行うことが開示されている。
【特許文献１】特開平０７−１９２０８４号公報
【特許文献２】特開平１１−２１９４０７号公報
【特許文献３】特開２００７−１６４４１３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ところで、電子文書内の画素塊に対応している文字を順序付けるような場合に、従来技術を用いると、その文字の順序が乱れてしまうことが多い。
本発明は、電子文書内の画素塊に対応している文字の順序の乱れを低減させるようにした情報処理装置及び情報処理プログラムを提供することを目的としている。
【課題を解決するための手段】
【０００７】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
請求項１の発明は、電子文書内の画素塊の矩形に関する情報を用いて、該電子文書内の行又は列であるラインを抽出するライン抽出手段と、前記ライン抽出手段によって抽出されたラインに応じて、前記電子文書内の段落を抽出する段落抽出手段と、前記段落抽出手段によって抽出された段落を順序付けする段落順序付手段と、前記段落順序付手段によって順序付けされた段落の順序であって、該段落に含まれるラインを順に検索し、ラインに含まれる文字を順に検索して、文字を順序付けする文字順序付手段を具備することを特徴とする情報処理装置である。
【０００８】
請求項２の発明は、前記電子文書内の画素塊の矩形に関する情報として、該画素塊の矩形の高さ又は幅方向の位置を含み、前記ライン抽出手段は、該画素塊の矩形の高さ若しくは幅、又は該画素塊の矩形の高さ若しくは幅方向の位置を用いて、該画素塊を含むラインである各行の高さ又は各列の幅を抽出することを特徴とする請求項１に記載の情報処理装置である。
【０００９】
請求項３の発明は、前記段落抽出手段は、前記ライン抽出手段によって抽出されたラインである各行の高さ又は各列の幅、及び該ラインの高さ又は幅方向の位置を用いて段落を抽出することを特徴とする請求項１又は２に記載の情報処理装置である。
【００１０】
請求項４の発明は、前記段落抽出手段は、前記ライン抽出手段によって抽出されたラインと、処理対象としている段落との位置関係に基づいて段落を抽出することを特徴とする請求項１から３のいずれか一項に記載の情報処理装置である。
【００１１】
請求項５の発明は、前記段落抽出手段は、抽出した段落に関する情報として、該段落を囲む外接矩形の位置に関する情報を算出し、又は該段落の順序に関する情報を該段落に含まれる文字の出現順序に関する情報から算出することを特徴とする請求項１から４のいずれか一項に記載の情報処理装置である。
【００１２】
請求項６の発明は、前記段落抽出手段は、同一行又は同一列に属するラインが複数存在する場合には、該ラインを順序付けすることを特徴とする請求項１から５のいずれか一項に記載の情報処理装置である。
【００１３】
請求項７の発明は、前記段落順序付手段は、前記段落に含まれる文字の出現順序に関する情報又は該段落の位置情報に基づいて、該段落を順序付けすることを特徴とする請求項１から６のいずれか一項に記載の情報処理装置である。
【００１４】
請求項８の発明は、コンピュータを、電子文書内の画素塊の矩形に関する情報を用いて、該電子文書内の行又は列であるラインを抽出するライン抽出手段と、前記ライン抽出手段によって抽出されたラインに応じて、前記電子文書内の段落を抽出する段落抽出手段と、前記段落抽出手段によって抽出された段落を順序付けする段落順序付手段と、前記段落順序付手段によって順序付けされた段落の順序であって、該段落に含まれるラインを順に検索し、ラインに含まれる文字を順に検索して、文字を順序付けする文字順序付手段として機能させることを特徴とする情報処理プログラムである。
【発明の効果】
【００１５】
請求項１の情報処理装置によれば、電子文書内の画素塊に対応している文字の順序の乱れを低減させることができる。
【００１６】
請求項２の情報処理装置によれば、予め定めた値ではなく、その電子文書内のラインに合わせて各行の高さ又は各列の幅を抽出することができる。
【００１７】
請求項３の情報処理装置によれば、予め定めた値ではなく、その電子文書内のラインに合わせて段落を抽出することができる。
【００１８】
請求項４の情報処理装置によれば、本構成を有していない場合に比較して、段落抽出の誤りを低減することができる。
【００１９】
請求項５の情報処理装置によれば、抽出した段落に関する情報を抽出することができる。
【００２０】
請求項６の情報処理装置によれば、同一行又は同一列に属するラインが複数存在する場合にも対応することができる。
【００２１】
請求項７の情報処理装置によれば、本構成を有していない場合に比較して、段落順序の誤りを低減することができる。
【００２２】
請求項８の情報処理プログラムによれば、電子文書内の画素塊に対応している文字の順序の乱れを低減させることができる。
【発明を実施するための最良の形態】
【００２３】
まず、本実施の形態が対象とする電子ドキュメントについて説明する。
例えば、図１５に示す例のように「美しい日本」という文字列が表示されている電子ドキュメント１５００の「美しい日本」のテキストをＰＣ上で選択すると、図１６に示す例のように「美しい日本」の部分が反転して（図１６に示す選択テキスト１６０１）、「美しい日本」が選択されたことをユーザに示すことができる。
あるいは、前述のようにテキストを選択した状態で、ＰＣ上でコピー＆ペーストを行うと、別のファイル上に「美しい日本」というテキスト情報をコピーすることが可能となる。図１７に示す例のように、ワードプロセッサ等のような別のアプリケーションファイル（図１７に示す電子ドキュメント１７００）上に、テキスト情報をペーストすることができる。
【００２４】
また電子ドキュメントでは、図１５に示す例のように「美しい日本」のような簡単な文字列だけではなく、図１８に示す例のような段組された文章の場合でも、文字列の場合と同様に文章全体を選択してＰＣ上でコピー＆ペーストを行うことができる。例えば、図１９に示す例のように、電子ドキュメント上の文章の文字順序（読み順）通りに別のアプリケーションファイル（図１９に示す電子ドキュメント１９００）上に、文章全体のテキスト情報をペーストすることができる。
これはＰＤＦのような電子ドキュメントは、表示あるいはプリントする場合に、同一のフォント情報を持っていない受け手側（ＰＣやプリンタ）で、電子ドキュメントを作成した作成者の意図通りの表示あるいはプリントがなされるように、電子ドキュメント内にフォント情報（文字形状や文字コード、文字順序など）を包含させることで実現している。
【００２５】
ＰＤＦのような電子ドキュメントは文書作成アプリケーションなどから直接生成される場合や、紙文書をスキャナでスキャンして、そのスキャンインしたラスタデータから電子ドキュメントを生成する場合などがある。後者の技術において、先に述べたように、電子ドキュメント内の文字を指定するために、文字認識技術を用いて得たフォント情報を利用する。また、ここで得たフォント情報に基づいて電子ドキュメントの受け手側（ＰＣやプリンタ）のデバイス情報に合わせて文字部分の解像度を上げたり、編集や再利用が可能なようにアウトライン化したりするなどの処理が行われる。ここで文字のアウトライン化とは、文字の輪郭形状をベジエのような曲線で近似して表す方法である。
このように、電子ドキュメント内の文字を指定するためのフォント情報を文字認識技術を用いて得る場合には、通常、電子ドキュメント内の文字順序はスキャンインしたラスタデータに対して文字認識した順にフォント情報内に埋め込まれる。例えば、先述の図１８で示された文書１８００がスキャンインしたラスタデータから生成した電子ドキュメントの場合には、文字認識技術による文字認識順序は図１９に示す例のような順序となり、正しい文字順序がフォント情報内に埋め込まれていることになる。
【００２６】
しかし、スキャンインしたラスタデータから電子ドキュメントを生成する場合には、スキャン条件や、スキャンする紙文書の品質、さらには文字認識技術の性能など様々な条件により、文字認識結果に伴う文字順序が、例えば文書作成アプリケーションで生成した同様の電子ドキュメントの文字順序とは異なってしまうという場合がある。
例えば、図１８で示された文書１８００をスキャンしたラスタデータに文字認識処理を行い、電子ドキュメントを作成し、その電子ドキュメント上で文章全体を選択して、別のアプリケーションにコピー＆ペーストした結果が図２０に示す例のような電子ドキュメント２０００になったと仮定する。この場合には、図１８で示された文書１８００の段組構造が抽出されずに、「世界の一員として豊かな自然と共」、「います。ビジネスを進めていく判断の」、「存し、世界の発展の礎である地球環」、・・・というように単純に上から下の順で文字認識が行われ、間違った文字順序情報（つまり文字認識が行われた順番）がフォント情報内に埋め込まれた。このことにより、図２０で示した電子ドキュメント２０００の文字順序は、図１９で示したものと異なったものになった（下線を付した行の文字順序が図１９とは異なっている）。
【００２７】
前述したことは、先に述べたようにスキャン条件や、文字認識技術の性能など様々な条件に起因して起こるが、このような問題を解決するには電子ドキュメント内に埋め込むフォント情報の文字順序情報を適切に修正すればよい。
つまり、本実施の形態は、フォント情報が埋め込まれた電子ドキュメントの文字列における文字順序の乱れを低減するものである。また、これに伴って、文章選択における文字順序の不整合を低減することにもなる。
【００２８】
次に、本実施の形態の概要について説明する。
本実施の形態では、電子ドキュメントに埋め込まれるフォント情報内の文字順序情報の修正を、例えば木グラフ情報に基づくのではなく、文字認識装置の出力情報をもとに簡便な手法で行う。つまり、文字の外接矩形情報から、行を認識し、その各行情報から段落を認識し、その段落の出現順序を補正し、その補正された段落の順序に基づいて、段落に含まれる文字情報データの文字順序を補正する。
【００２９】
より具体的には、横書きの電子ドキュメントの場合の例は以下のようにする。
（１）電子ドキュメント内の文字外接矩形情報（その電子ドキュメント内の絶対座標値及び矩形サイズ）を用いて行を認識する。
（２）行特徴情報（例えば、行中の全ての文字外接矩形が収まるような最小値、行矩形サイズ、行座標値など）を求める。
（３）複数の行からなる段落を行特徴情報に基づいて抽出し、その段落特徴を算出する。
（４）前記抽出された段落の探索順序を段落特徴から算出する。
（５）前記算出された段落の探索順序に基づいて段落を探索し、さらに該段落中の行、行に含まれる文字情報データを順に探索し、その探索順に文字順序を補正する。
【００３０】
また、縦書きの電子ドキュメントの場合の例は以下のようにする。
（１）電子ドキュメント内の文字外接矩形情報（その電子ドキュメント内の絶対座標値及び矩形サイズ）を用いて列を認識する。
（２）列特徴情報（例えば、列中の全ての文字外接矩形が収まるような最小値、列矩形サイズ、列座標値など）を求める。
（３）複数の列からなる段落を列特徴情報に基づいて抽出し、その段落特徴を算出する。
（４）前記抽出された段落の探索順序を段落特徴から算出する。
（５）前記算出された段落の探索順序に基づいて段落を探索し、さらに該段落中の列、列に含まれる文字情報データを順に探索し、その探索順に文字順序を補正する。
【００３１】
前述のように、本実施の形態では、文字認識装置から出力された電子ドキュメント内の文字外接矩形情報から、行又は列を認識し、その認識した行又は列に基づいて段落を認識し、さらに文字認識装置の出力情報を利用して段落の出現順序を補正し、その補正された段落の順序に基づいて、段落に含まれる文字情報データの文字順序を補正する。このようにすることで、スキャン条件やスキャン文書の品質、さらには文字認識装置の性能など様々な状況により、文字認識結果に伴う文字順序が崩れた場合でも文字順序を補正する。
【００３２】
以下、図面に基づき本発明を実現するにあたっての好適な一実施の形態の例を説明する。
図１は、本実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア（コンピュータ・プログラム）、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、コンピュータ・プログラム、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するの意である。また、モジュールは機能にほぼ一対一に対応しているが、実装においては、１モジュールを１プログラムで構成してもよいし、複数モジュールを１プログラムで構成してもよく、逆に１モジュールを複数プログラムで構成してもよい。また、複数モジュールは１コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって１モジュールが複数コンピュータで実行されてもよい。なお、１つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続（データの授受、指示、データ間の参照関係等）の場合にも用いる。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク（一対一対応の通信接続を含む）等の通信手段で接続されて構成されるほか、１つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。所定という用語は、予め定められたの意の他に、そのときの状況・状態に応じて、又はそれまでの状況・状態に応じての意を含めて用いる。
【００３３】
以下、行又は列をラインと称する。また、横書きの電子ドキュメントを対象とした場合を主に説明する。したがって、横書きの場合の行の高さ又は縦書きの場合の列の幅として、行の高さを主に例示して説明する。
また、画素塊とは、４連結又は８連結で連続する画素領域を少なくとも含み、これらの画素領域の集合をも含む。これらの画素領域の集合とは、４連結等で連続した画素領域が複数あり、その複数の画素領域は近傍にあるものをいう。ここで、近傍にあるものとは、例えば、互いの画素領域が距離的に近いもの、文章としての１行から１文字ずつ切り出すように縦又は横方向に射影し、空白地点で切り出した画像領域、又は所定間隔で切り出した画像領域等がある。例えば、文字認識処理を行って、１文字として認識された画像を１つの画素塊としてもよい。
なお、１つの画素塊として、１文字の画像となる場合が多い。以下、画素塊のことを文字又は文字画像ともいう。
【００３４】
本実施の形態は、図１に示すように、ライン認識処理モジュール１１０、ライン特徴算出モジュール１２０、段落認識処理モジュール１３０、段落順序補正モジュール１４０、文字順序補正モジュール１５０を有している。
【００３５】
ライン認識処理モジュール１１０は、ライン特徴算出モジュール１２０と接続されており、文字情報データを用いて、その電子ドキュメント内の行又は列であるラインを抽出し、その抽出したラインに関する情報をライン特徴算出モジュール１２０へ渡す。
【００３６】
ライン認識処理モジュール１１０について、より詳細に説明する。
ライン認識処理モジュール１１０は、文字情報データを受け付ける。ここでいう文字情報データとは、電子ドキュメント内の画素塊の矩形に関する情報を少なくとも含む。例えば、前述の文字外接矩形情報、フォント情報であってもよい。また、画素塊に対応している文字の認識順序に関する情報（文字認識装置によって認識順に順序付けられた番号）が含まれていてもよい。例えば、電子ドキュメント中における文字の座標（例えば、文字を囲む外接矩形の左上座標）、文字の大きさを表す外接矩形サイズ（外接矩形幅、高さ）、文字形状、文字コード、文字の順序情報、縦書き文字なのか横書き文字なのかを表す情報などである。本実施の形態では、これらの文字情報データを文字認識装置から受け取った場合について説明する。ただし、文字認識装置に限る必要はなく、文字の外接矩形を受け取って、同等の文字情報データを生成するようにしてもよい。
【００３７】
次にライン認識処理モジュール１１０は、受け付けた文字情報データに基づいて、電子ドキュメント内のラインを抽出する。例えば、外接矩形の高さ方向の位置（ｙ座標）を用いて、その外接矩形を含むラインである各行の高さを抽出し、外接矩形の幅方向の位置（ｘ座標）を用いて、その外接矩形を含むラインである各行の幅を抽出する。より詳細な例について、図２、図３に行抽出の手法を示す。
【００３８】
図２は、ライン認識処理モジュール１１０が外接矩形の座標値に基づいて行を認識する手法の例を示している。
ライン認識処理モジュール１１０は、図２（ａ）の例に示すように、注目文字情報データの外接矩形（注目外接矩形２１２）の左上ｙ座標（ｕｐｐｅｒ＿ｙ）が、その一つ前の文字情報データの外接矩形（注目外接矩形２１１）の左下ｙ座標（ｌｏｗｅｒ＿ｙ）より小さいときは（ｕｐｐｅｒ＿ｙ＜ｌｏｗｅｒ＿ｙ）、その注目文字情報データの外接矩形（注目外接矩形２１２）は、注目外接矩形２１１と同じ行であると認識する。なお、左上を原点（０，０）として、ｘ座標は右方向へ、ｙ座標は下方向へ向かうと数値が増える座標系である。
また、図２（ｂ）の例に示すように、注目文字情報データの外接矩形（注目外接矩形２２２）の左上ｙ座標（ｕｐｐｅｒ＿ｙ）が、その一つ前の文字情報データの外接矩形（注目外接矩形２２１）の左下ｙ座標（ｌｏｗｅｒ＿ｙ）より大きいときは（ｌｏｗｅｒ＿ｙ＞ｕｐｐｅｒ＿ｙ）、異なる行であると認識する。
そして、同じライン内にあると認識された文字情報データの列をライン特徴算出モジュール１２０へ渡す。
なお、受け付けた文字情報データは、文字画像の外接矩形の出現順序（例えば、横書きの場合は、左上から右へ走査し、次の行ではまた左から右へ走査した順番に並んでいる）となっているので、一つ前の文字情報データの外接矩形とは、出現順序で一つ前である。また、外接矩形の左上の座標を用いてソートしてもよい。
【００３９】
図３は、ライン認識処理モジュール１１０が外接矩形間の距離に基づいて行を認識する手法の例を示している。
ライン認識処理モジュール１１０は、図３（ａ）の例に示すように、注目文字情報データの外接矩形（注目外接矩形３０３）と、その一つ前の文字情報データの外接矩形（外接矩形３０２）との外接矩形間距離３１１（以下、現外接矩形間距離ともいう）が、現在処理している行において、既に同一行であると認識された各外接矩形間の距離の平均値（以下、平均外接矩形間距離ともいう）をα倍した値以下である場合は（つまり、現外接矩形間距離≦平均外接矩形間距離×αを満たす場合）、注目外接矩形３０３は外接矩形３０２と同じ行であると認識する。なお、αは、ライン認識パラメータであり、所定の値である。例えば、文字情報データに応じて定められる。
また、図３（ｂ）の例に示すように、注目文字情報データの外接矩形（注目外接矩形３２３）と、その一つ前の文字情報データの外接矩形（外接矩形３２２）との外接矩形間距離３３１が、現在処理している行における平均外接矩形間距離をα倍した値より大である場合は（現外接矩形間距離＞平均外接矩形間距離×α）、注目外接矩形３２３は外接矩形３２２とは異なる行であると認識する。
【００４０】
ライン特徴算出モジュール１２０は、ライン認識処理モジュール１１０、段落認識処理モジュール１３０と接続されており、行高列幅算出モジュール１２１、矩形間距離算出モジュール１２２を有している。ライン認識処理モジュール１１０により同じラインと認識された文字情報データを受け取り、そのラインに関する特徴を算出し、その算出したラインに関する情報を段落認識処理モジュール１３０へ渡す。行高列幅算出モジュール１２１は行の高さを算出し、矩形間距離算出モジュール１２２は矩形間の距離を算出する。
つまり、ライン認識処理モジュール１１０によって同じ行と認識された文字情報データ列から行高さ、行幅、行外接矩形座標、平均外接矩形間距離などのラインに関する特徴を算出する。
【００４１】
ライン特徴算出モジュール１２０は、同じ行に属する文字情報データの外接矩形を含む矩形を求める。例えば、図４の例に示すように、同一行内の外接矩形４０１から外接矩形４１９を囲む矩形である行外接矩形４５０を求める。そして、行外接矩形座標として、図４で示すように行外接矩形の左上（ｍｉｎ＿ｘ，  ｍｉｎ＿ｙ）、右下（ｍａｘ＿ｘ，  ｍａｘ＿ｙ）を求める。
また、行高列幅算出モジュール１２１は、行高さ（ｈ）を先に求めた行外接矩形座標を用いて、ｈ  ＝  ｍａｘ＿ｙ  −  ｍｉｎ＿ｙ  として求める。同様に、行幅（ｗ）を行外接矩形座標を用いて、ｗ  ＝  ｍａｘ＿ｘ  −  ｍｉｎ＿ｘ  として求める。これらの行高さ、行幅は、各外接矩形のサイズ（高さ、幅）又はその座標を用いて求める。
また、矩形間距離算出モジュール１２２は、平均文字外接矩形間距離を、同じ行に属する隣接する文字情報データの外接矩形間距離ｇ０，  ｇ１，  ……，  ｇｎの平均値として求める。なお、リストデータとしてｇ０，  ｇ１，  ……  ，  ｇｎのそれぞれの値も保持するようにしてもよい。
【００４２】
段落認識処理モジュール１３０は、ライン特徴算出モジュール１２０、段落順序補正モジュール１４０と接続されており、ライン認識処理モジュール１１０で認識された各行、それら各行についてライン特徴算出モジュール１２０で算出されたライン特徴量から、電子ドキュメント内の段落を抽出し、その段落情報を算出する。また、段落の抽出は、ライン認識処理モジュール１１０によって抽出された各行の高さ及びそのラインの座標を用いて行うようにしてもよい。また、ライン認識処理モジュール１１０によって抽出されたラインと、処理対象としている段落との位置関係に基づいて段落を抽出するようにしてもよい。また、その抽出した段落に関する情報として、その段落を囲む外接矩形の位置に関する情報を算出してもよく、又はその段落の順序に関する情報をその段落に含まれる文字の出現順序に関する情報から算出するようにしてもよい。また、同一行に属するラインが複数存在する場合には、そのラインを順序付けするようにしてもよい。段落を囲む外接矩形の位置に関する情報として、例えば、段落外接矩形の左上角の座標値、段落外接矩形の幅、高さ等がある。
【００４３】
図５は、本実施の形態による段落の認識処理例を示すフローチャートである。つまり、段落認識処理モジュール１３０が行う処理例を示すものである。
ステップＳ５０２では、まず初めにライン認識処理モジュール１１０で認識された行に関して、行外接矩形座標ｍｉｎ＿ｙで昇順にソートする。
ステップＳ５０４では、ステップＳ５０２でソートされた行を全て探索（ステップＳ５０６からステップＳ５１４までの処理）したかどうかを判定する。全て探索されていればステップＳ５１６に、探索が終了していなければステップＳ５０６に処理を移す。
ステップＳ５０６では、注目する行（以降は、現探索行ともいう）をソート順に選択する。
ステップＳ５０８では、現探索行に関して段落に登録されているかどうかを判定する。現探索行が段落に登録されているならば処理をステップＳ５０４に戻し、登録されていなければステップＳ５１０に処理を移す。
【００４４】
ステップＳ５１０では、現探索行が現段落における最初の登録行かどうかを判定する。現探索行が現段落における最初の登録行であれば処理をステップＳ５１４に移し、最初の登録行でなければステップＳ５１２に処理を移す。
ステップＳ５１２では、現段落に対して現探索行が登録できるかどうかを判定する。現探索行が現段落に登録可能ならば処理をステップＳ５１４に移し、登録できないならば処理をステップＳ５０４に戻す。なお、ステップＳ５１２における現探索行の登録可否処理の詳細は、図７を用いて後で詳しく説明する。
【００４５】
ステップＳ５１４では、現段落に対して、最初の登録行であるか、又は登録可能な行であると、それぞれステップＳ５１０又はステップＳ５１２で判定されている現探索行を現段落に登録し、段落情報を算出又は更新する。その後、処理をステップＳ５０４に移す。
ここで、図６に段落情報の具体的な例を示す。段落情報として、例えば、その段落の位置情報（例えば、左上座標及び右下座標）、段落順序値（その段落を読む際の順序）を含む。段落認識処理モジュール１３０は、図６の例に示すように、段落に登録されている行情報（登録行情報）を用いて、段落に登録された全ての行の行外接矩形（登録行０  ６００から登録行８  ６０８）を含む矩形を段落外接矩形６１０として、その左上座標（ｍｉｎ＿ｘ，  ｍｉｎ＿ｙ）及び右下座標（ｍａｘ＿ｘ，  ｍａｘ＿ｙ）を算出する。また図６には図示していないが、同一段落に登録された文字情報データ中で最も小さい文字認識順序の値ｍｉｎ＿ｏｒｄｅｒを算出し、段落順序値とする。
次に、段落情報の更新について説明する。段落認識処理モジュール１３０は、本ステップにおいて、現段落に新たな行を登録する場合は、先述の段落外接矩形座標及び段落順序値を更新する。図６に示す具体例では、新たに処理対象とする行を登録行８  ６０８とすると、その登録行８  ６０８の行外接矩形の幅は、現段落外接矩形座標の幅（ｍｉｎ＿ｘ，  ｍａｘ＿ｘ）内に収まっているので、ｍｉｎ＿ｘ及びｍａｘ＿ｘは更新せず、ｍａｘ＿ｙだけ更新する（図６では、更新前ｍａｘ＿ｙから更新後ｍａｘ＿ｙへ更新する）。さらに、現段落順序値と新たに登録される登録行８  ６０８中の全ての文字情報データの文字認識順序値を比較して、現段落順序値よりも小さい値がある場合には、段落順序値ｍｉｎ＿ｏｒｄｅｒをその小さい値（文字認識順序値）に更新する。
【００４６】
ステップＳ５１６では、ステップＳ５０４でソート順に行の探索を終了しているので、現段落に登録すべき行は全て登録しているとして現段落の抽出処理を終了する。
ステップＳ５１８では、全ての行が段落登録されたかを判定する。全ての行がいずれかの段落に登録されていれば段落抽出処理を終了する（ステップＳ５９９）。いずれの段落にも登録されていない行がある場合には、処理をステップＳ５０４に戻し、次の段落抽出処理を行う。
【００４７】
次に、図５の例に示したフローチャートのステップＳ５１２において、段落認識処理モジュール１３０が処理する現探索行の登録可否処理例の詳細について、図７の例に示すフローチャートを用いて説明する。
ステップＳ７０２において、現探索行が現段落の段落外接矩形に対して、右又は左にずれているかを判定する。つまり、現探索行の左端が現段落の右端より右にあるか否か、又は現探索行の右端が現段落の左端より左にあるか否かを判定する。例えば、図８（ａ）の例に示すように、現探索行８１２が現段落８１０より右にずれているかどうか、又は図８（ｂ）の例に示すように、現探索行８３２が現段落８３０よりも左にずれているかどうかを判定する。現探索行が図８の例のように右あるいは左にずれている場合には、現探索行は現段落に登録せず、図５の例に示したステップＳ５０４に処理を戻す。それ以外の場合は、処理をステップＳ７０４に移す。
【００４８】
ステップＳ７０４において、現探索行と現段落に登録された行の文字サイズ（行高さを含む）に基づいて、その現探索行を登録すべきか否かを判定する。つまり、現探索行が現段落内の登録行より文字サイズが大きいか小さいかを判定する。例えば、ステップＳ７０４における文字サイズの判定は、図９の例に示すように行高さを用いて行う。つまり、現段落９２０，９５０に既に登録された各行（行９００〜行９０８、行９３０〜行９３８）の平均行高さと現探索行９１０，９４０の行高さを比較して、図９（ａ）の例に示すように、現探索行９１０の行高さが平均行高さより所定量大きい場合、又は図９（ｂ）の例に示すように、現探索行９４０の行高さが平均行高さより所定量小さい場合は、現探索行９１０，９４０は現段落９２０，９５０に登録せず、図５の例に示したステップＳ５０４に処理を戻す。それ以外の場合は、処理をステップＳ７０６に移す。
【００４９】
ステップＳ７０６において、現探索行が現段落の段落外接矩形に対して、下にずれたかどうかを判定する。つまり、図６の例に示した現段落の段落外接矩形６１０のｍａｘ＿ｙ（図６では更新後ｍａｘ＿ｙ）と図４の例に示した現探索行の行外接矩形４５０のｍｉｎ＿ｙとを比較して、ｍａｘ＿ｙ  ≦  ｍｉｎ＿ｙなら処理をステップＳ７０８に移し、ｍａｘ＿ｙ  ＞  ｍｉｎ＿ｙなら図５の例に示したステップＳ５１４に処理を移して、現探索行を現段落に登録し、段落情報を更新する。
【００５０】
ステップＳ７０８において、ステップＳ７０４と同様に現段落に登録された各行の平均行高さと現探索行の行高さを比較して、現探索行の行高さが平均行高さより所定量大きい場合、又は現探索行の行高さが平均行高さより所定量小さい場合は、現探索行は現段落に登録せず、図５の例に示したステップＳ５０４に処理を戻す。それ以外の場合は、処理をステップＳ７１０に移す。
【００５１】
ステップＳ７１０において、現探索行と現段落の行間と現段落に既に登録された各行の行間とを比較する。つまり、現段落に既に登録された各行の行間の平均値と現探索行と現段落の段落外接矩形との距離（ｍｉｎ＿ｙ  −  ｍａｘ＿ｙ）を比較して、その差分が所定量より大きい場合は行間が広がったと判定して現探索行は現段落に登録せず、図５の例に示したステップＳ５０４に処理を戻す。前記差分が所定量より小さい場合は、行間は一定だと判定して、ステップＳ７１２に処理を移す。
【００５２】
ステップＳ７１２において、現探索行の一つ前の同一行に登録行が複数あるかどうかを判定し、同一行に複数登録行がある場合は、行外接矩形のｘ座標値であるｍｉｎ＿ｘ値で昇順にソートする。ここで、同一行とは、行外接矩形のｙ座標が現探索行のそれと所定内にある行であって、ライン認識処理モジュール１１０では別々の行であると認識されたが、段落認識処理モジュール１３０による現段落の生成過程において、現探索行よりも前に登録された行（複数の場合もあり得る）のことをいう。ここで、ｙ座標が所定内にあるとは、その段落において１行が存在するｙ座標の範囲内にあることをいう。同一行に複数登録行がない場合はそのまま図５の例に示したステップＳ５１４に処理を移して、現探索行を現段落に登録し、段落情報を更新する。図１０の例は、同一行上に３つの登録行（登録行１０１０、登録行１０１１、登録行１０１２）がある場合を表しており、この図１０の例では前記３つの登録行の行外接矩形の各ｘ座標値である、「ｍｉｎ＿ｘ」：登録行１０１０、「ｍｉｎ＿ｘ」：登録行１０１１、「ｍｉｎ＿ｘ」：登録行１０１２  を用いて昇順でソートを行う。ソート処理終了後、図５の例に示したステップＳ５１４に処理を移して、現探索行を現段落に登録し、段落情報を更新する。
【００５３】
段落順序補正モジュール１４０は、段落認識処理モジュール１３０、文字順序補正モジュール１５０と接続されており、段落認識処理モジュール１３０によって抽出された段落を順序付けする。また、段落順序補正モジュール１４０は、段落に含まれる文字の出現順序に関する情報又はその段落の位置情報に基づいて、その段落を順序付けする。この例では、段落順序補正モジュール１４０は、段落認識処理モジュール１３０で抽出した各段落の順序を補正する。
図１１に示す例は、段落認識処理モジュール１３０において抽出された段落の様子を図式的に表したものである。段落認識処理モジュール１３０では、図５のフローチャート例で示したように、ステップＳ５０２において各行をｙ座標で昇順にソートしてから段落抽出処理を行うため、抽出する段落の段落外接矩形の最小ｙ座標ｍｉｎ＿ｙが小さい順に段落が抽出される。図１１で示す例では、段落１１１０、１１１１・・・１１１５（図１１内では、「段落０」、「段落１」・・・「段落５」）の順に抽出される。通常、このままの段落順序では、オリジナルの電子ドキュメントやスキャン文章の読み順とは大きく異なるので、段落順序補正モジュール１４０によって、段落認識処理モジュール１３０で算出された段落情報の段落順序値ｍｉｎ＿ｏｒｄｅｒに基づいて段落順序を補正する。段落順序値ｍｉｎ＿ｏｒｄｅｒは、これまでは、段落中の文字情報データにおける、文字認識装置の認識順序の最小値を表しているので、抽出された各段落の段落順序を段落順序値で昇順にソートを行うことで、段落単位で順序を補正することが可能となる。
図１２に補正された段落順序の例を示す。つまり、各段落の段落順序値ｍｉｎ＿ｏｒｄｅｒを昇順にソートし、それに合わせて段落順序を補正した結果、段落１１１０、１１１１、１１１４、１１１５、１１１２、１１１３（図１２内では、「段落０」、「段落１」・・・「段落５」）の順となる。
【００５４】
また、ある２つの段落順序値ｍｉｎ＿ｏｒｄｅｒの差分値（差分の絶対値）が、相当する段落の登録文字情報データ数と比較して、明らかに小さい値の場合（例えば、差分値が登録文字情報データ数の所定範囲内にない場合）は、文字認識装置で文字認識が正しく処理されておらず、文字認識順序が正しくない可能性が大きい。その場合、段落順序補正モジュール１４０は、段落の段落外接矩形座標値を用いて、各段落の２次元的な配置に基づいて段落順序を補正する。例えば、段落外接矩形座標値の（ｍｉｎ＿ｘ、ｍｉｎ＿ｙ）を段落座標として、各段落の段落座標が左上から右下の順になるように並べ替えて段落順序を補正する。もちろん縦書き方向の段落では右上から左下の順になるように並べ替えて段落順序を補正する。この補正方法は、文字認識装置がない場合でも同等に行える。
【００５５】
文字順序補正モジュール１５０は、段落順序補正モジュール１４０と接続されており、段落順序補正モジュール１４０によって順序付けされた段落の順序であって、その段落に含まれるラインを順に検索し、ラインに含まれる文字を順に検索して、文字を順序付けする。
例えば、図１３の例に示すように、段落順序補正モジュール１４０で補正された段落順序（段落１１１０、１１１１、１１１４、１１１５、１１１２、１１１３）にしたがって段落を探索し、現探索段落に登録された登録行を登録順（図１３の例では、段落１１１１内に示した行順序）に探索し、現探索行中の文字情報データを順に探索し、その探索順序にしたがって文字情報データの文字順序を更新する。
【００５６】
図１４を参照して、本実施の形態のハードウェア構成例について説明する。図１４に示す構成は、例えばパーソナルコンピュータ（ＰＣ）などによって構成されるものであり、スキャナ等のデータ読み取り部１４１７と、プリンタなどのデータ出力部１４１８を備えたハードウェア構成例を示している。
【００５７】
ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１４０１は、前述の実施の形態において説明した各種のモジュール、すなわち、ライン認識処理モジュール１１０、ライン特徴算出モジュール１２０、段落認識処理モジュール１３０等の各モジュールの実行シーケンスを記述したコンピュータ・プログラムにしたがった処理を実行する制御部である。
【００５８】
ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１４０２は、ＣＰＵ１４０１が使用するプログラムや演算パラメータ等を格納する。ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１４０３は、ＣＰＵ１４０１の実行において使用するプログラムや、その実行において適宜変化するパラメータ等を格納する。これらはＣＰＵバスなどから構成されるホストバス１４０４により相互に接続されている。
【００５９】
ホストバス１４０４は、ブリッジ１４０５を介して、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ／Ｉｎｔｅｒｆａｃｅ）バスなどの外部バス１４０６に接続されている。
【００６０】
キーボード１４０８、マウス等のポインティングデバイス１４０９は、操作者により操作される入力デバイスである。ディスプレイ１４１０は、液晶表示装置又はＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）などからなり、各種情報をテキストやイメージ情報として表示する。
【００６１】
ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）１４１１は、ハードディスクを内蔵し、ハードディスクを駆動し、ＣＰＵ１４０１によって実行するプログラムや情報を記録又は再生させる。ハードディスクには、電子ドキュメント、文字情報データなどが格納される。さらに、その他の各種のデータ処理プログラム等、各種コンピュータ・プログラムが格納される。
【００６２】
ドライブ１４１２は、装着されている磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリ等のリムーバブル記録媒体１４１３に記録されているデータ又はプログラムを読み出して、そのデータ又はプログラムを、インタフェース１４０７、外部バス１４０６、ブリッジ１４０５、及びホストバス１４０４を介して接続されているＲＡＭ１４０３に供給する。リムーバブル記録媒体１４１３も、ハードディスクと同様のデータ記録領域として利用可能である。
【００６３】
接続ポート１４１４は、外部接続機器１４１５を接続するポートであり、ＵＳＢ、ＩＥＥＥ１３９４等の接続部を持つ。接続ポート１４１４は、インタフェース１４０７、及び外部バス１４０６、ブリッジ１４０５、ホストバス１４０４等を介してＣＰＵ１４０１等に接続されている。通信部１４１６は、ネットワークに接続され、外部とのデータ通信処理を実行する。データ読み取り部１４１７は、例えばスキャナであり、ドキュメントの読み取り処理を実行する。データ出力部１４１８は、例えばプリンタであり、ドキュメントデータの出力処理を実行する。
【００６４】
なお、図１４に示すハードウェア構成は、１つの構成例を示すものであり、本実施の形態は、図１４に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア（例えば特定用途向け集積回路（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ：ＡＳＩＣ）等）で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに図１４に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、複写機、ファックス、スキャナ、プリンタ、複合機（スキャナ、プリンタ、複写機、ファックス等のいずれか２つ以上の機能を有している画像処理装置）などに組み込まれていてもよい。
【００６５】
前記実施の形態においては、主に横書き電子ドキュメントの場合の行の高さを用いることを示したが、縦書きの場合は列の幅を同様に用いる。
なお、数式を用いて説明したが、数式には、その数式と同等のものを含めてもよい。同等のものとは、その数式そのものの他に、最終的な結果に影響を及ぼさない程度の数式の変形、又は数式をアルゴリズミックな解法で解くこと等が含まれる。
【００６６】
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通などのために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク（ＤＶＤ）であって、ＤＶＤフォーラムで策定された規格である「ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ、ＤＶＤ−ＲＡＭ等」、ＤＶＤ＋ＲＷで策定された規格である「ＤＶＤ＋Ｒ、ＤＶＤ＋ＲＷ等」、コンパクトディスク（ＣＤ）であって、読出し専用メモリ（ＣＤ−ＲＯＭ）、ＣＤレコーダブル（ＣＤ−Ｒ）、ＣＤリライタブル（ＣＤ−ＲＷ）等、光磁気ディスク（ＭＯ）、フレキシブルディスク（ＦＤ）、磁気テープ、ハードディスク、読出し専用メモリ（ＲＯＭ）、電気的消去及び書換可能な読出し専用メモリ（ＥＥＰＲＯＭ）、フラッシュ・メモリ、ランダム・アクセス・メモリ（ＲＡＭ）等が含まれる。
そして、前記のプログラム又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク（ＬＡＮ）、メトロポリタン・エリア・ネットワーク（ＭＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、あるいは無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して
記録されていてもよい。また、圧縮や暗号化など、復元可能であればどのような態様で記録されていてもよい。
【図面の簡単な説明】
【００６７】
【図１】本実施の形態の構成例についての概念的なモジュール構成図である。
【図２】ライン認識処理モジュールによるラインの抽出処理例を示す説明図である。
【図３】ライン認識処理モジュールによるラインの抽出処理例を示す説明図である。
【図４】ライン特徴算出モジュールによるライン特徴の抽出処理例を示す説明図である。
【図５】本実施の形態による段落の認識処理例を示すフローチャートである。
【図６】段落情報の更新に関する処理例を示す説明図である。
【図７】本実施の形態による段落登録の可否処理例を示すフローチャートである。
【図８】左右のずれによって段落登録が行われない場合の例を示す説明図である。
【図９】文字サイズによって段落登録が行われない場合の例を示す説明図である。
【図１０】同じ行に複数行がある状態例を示す説明図である。
【図１１】段落認識処理モジュールによる処理結果の例を示す説明図である。
【図１２】段落順序補正モジュールによる処理結果の例を示す説明図である。
【図１３】文字順序補正モジュールによる処理結果の例を示す説明図である。
【図１４】本実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。
【図１５】電子ドキュメントのテキストが表示されている例を示す説明図である。
【図１６】テキストを選択した状態の電子ドキュメントの表示例を示す説明図である。
【図１７】別のアプリケーションにテキストを複写した場合の別の電子ドキュメントの表示例を示す説明図である。
【図１８】電子ドキュメントのテキストが表示されている例を示す説明図である。
【図１９】別のアプリケーションに正しい文字順序でテキストを複写した場合の別の電子ドキュメントの表示例を示す説明図である。
【図２０】別のアプリケーションに間違った文字順序でテキストを複写した場合の別の電子ドキュメントの表示例を示す説明図である。
【符号の説明】
【００６８】
１１０…ライン認識処理モジュール
１２０…ライン特徴算出モジュール
１２１…行高列幅算出モジュール
１２２…矩形間距離算出モジュール
１３０…段落認識処理モジュール
１４０…段落順序補正モジュール
１５０…文字順序補正モジュール
【図１】
2009251872.tif 000003
【図２】
2009251872.tif 000004
【図３】
2009251872.tif 000005
【図４】
2009251872.tif 000006
【図５】
2009251872.tif 000007
【図６】
2009251872.tif 000008
【図７】
2009251872.tif 000009
【図８】
2009251872.tif 000010
【図９】
2009251872.tif 000011
【図１０】
2009251872.tif 000012
【図１１】
2009251872.tif 000013
【図１２】
2009251872.tif 000014
【図１３】
2009251872.tif 000015
【図１４】
2009251872.tif 000016
【図１５】
2009251872.tif 000017
【図１６】
2009251872.tif 000018
【図１７】
2009251872.tif 000019
【図１８】
2009251872.tif 000020
【図１９】
2009251872.tif 000021
【図２０】
2009251872.tif 000022