(57)【特許請求の範囲】
【請求項１】
文書画像から複数の文字領域を抽出する抽出ステップと、
単語とその類義語と類似度とが対応付けられて登録されている類義語辞書を用いて、前記抽出された文字領域間の類似度を判断する判断ステップと、
前記判断ステップで判断された文字領域間の類似度に基づいて、前記抽出された文字領域を分類する分類ステップと、を有する画像処理方法であって、
前記判断ステップにおいて、前記抽出ステップで抽出された文字領域のうちの第１の文字領域と第２の文字領域との間の類似度を求める際は、当該第１の文字領域に含まれる単語の類義語を当該第２の文字領域が含んでいるか判断し、当該含んでいると判断された類義語に対応づけられて前記類義語辞書に登録されている類似度を用いて、当該第１の文字領域と当該第２の文字領域との文字領域間の類似度を求めることを特徴とする画像処理方法。
【請求項２】
更に、前記分類ステップで分類されたグループ毎に、各文字領域の順序をつける順序付けステップを有することを特徴とする請求項１に記載の画像処理方法。
【請求項３】
前記判断ステップでの文字領域間の類似度の判断は、類似度を判断する文字領域の画像情報を認識して得た文字列に基づいて行うことを特徴とする請求項１に記載の画像処理方法。
【請求項４】
前記判断ステップにおいて、前記抽出ステップで抽出された文字領域のうちの第１の文字領域と第２の文字領域との間の類似度を求める際は、当該第１の文字領域に含まれる単語の類義語を当該第２の文字領域が含んでいるか判断し、当該含んでいると判断された類義語に対応づけられて前記類義語辞書に登録されている類似度と当該含んでいると判断された類義語の数とを用いて、当該第１の文字領域と当該第２の文字領域との文字領域間の類似度を求めることを特徴とする請求項１に記載の画像処理方法。
【請求項５】
単語とその類義語と類似度とが対応付けられて登録されている類義語辞書と、
文書画像から複数の文字領域を抽出する抽出手段と、
前記類義語辞書を用いて、前記抽出された文字領域間の類似度を判断する判断手段と、
前記判断手段で判断された文字領域間の類似度に基づいて、前記抽出された文字領域を分類する分類手段と、を有する画像処理装置であって、
前記判断手段において、前記抽出手段で抽出された文字領域のうちの第１の文字領域と第２の文字領域との間の類似度を求める際は、当該第１の文字領域に含まれる単語の類義語を当該第２の文字領域が含んでいるか判断し、当該含んでいると判断された類義語に対応づけられて前記類義語辞書に登録されている類似度を用いて、当該第１の文字領域と当該第２の文字領域との文字領域間の類似度を求めることを特徴とする画像処理装置。
【請求項６】
更に、前記分類手段で分類されたグループ毎に、各文字領域の順序をつける順序付け手段を有することを特徴とする請求項５に記載の画像処理装置。
【請求項７】
前記判断手段での文字領域間の類似度の判断は、類似度を判断する文字領域の画像情報を認識して得た文字列に基づいて行うことを特徴とする請求項５に記載の画像処理装置。
【請求項８】
前記判断手段において、前記抽出手段で抽出された文字領域のうちの第１の文字領域と第２の文字領域との間の類似度を求める際は、当該第１の文字領域に含まれる単語の類義語を当該第２の文字領域が含んでいるか判断し、当該含んでいると判断された類義語に対応づけられて前記類義語辞書に登録されている類似度と当該含んでいると判断された類義語の数とを用いて、当該第１の文字領域と当該第２の文字領域との文字領域間の類似度を求めることを特徴とする請求項５に記載の画像処理装置。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、画像を解析して分類する画像処理方法に関するものである。
【０００２】
本発明は、ＯＣＲ（光学的文字認識）装置、複写機、ファクシミリ、ＤＴＰ（デスクトップパブリッシング）等の電子装置において、画像から抽出される文字領域を分類する画像処理方法に関するものである。
【０００３】
【従来の技術】
従来、画像から抽出される複数の文字領域を、縦書きの場合は右から左方向に順序を付け、同様に上下方向に関しては、上から下方向に順序を付けていくもの等がある。
【０００４】
【発明が解決しようとしている課題】
しかしながら、上述の従来技術では新聞記事等、原稿の中に複数の記事が存在する場合に、複数の記事の本文が入り組んでしまい正しく読み順を付けることができず、修正等が必要となるという問題点があった。
【０００５】
本出願の目的は、原稿の中に複数の記事が存在する場合でも正しく順序をつけ、修正の手間を減らすことである。
【０００６】
【課題を解決するための手段】
上記課題を解決するために、本発明の画像処理方法は、文書画像から複数の文字領域を抽出する抽出ステップと、単語とその類義語と類似度とが対応付けられて登録されている類義語辞書を用いて、前記抽出された文字領域間の類似度を判断する判断ステップと、前記判断ステップで判断された文字領域間の類似度に基づいて、前記抽出された文字領域を分類する分類ステップと、を有する画像処理方法であって、前記判断ステップにおいて、前記抽出ステップで抽出された文字領域のうちの第１の文字領域と第２の文字領域との間の類似度を求める際は、当該第１の文字領域に含まれる単語の類義語を当該第２の文字領域が含んでいるか判断し、当該含んでいると判断された類義語に対応づけられて前記類義語辞書に登録されている類似度を用いて、当該第１の文字領域と当該第２の文字領域との文字領域間の類似度を求めることを特徴とする。
【０００７】
上記課題を解決するために、本発明の画像処理装置は、単語とその類義語と類似度とが対応付けられて登録されている類義語辞書と、文書画像から複数の文字領域を抽出する抽出手段と、前記類義語辞書を用いて、前記抽出された文字領域間の類似度を判断する判断手段と、前記判断手段で判断された文字領域間の類似度に基づいて、前記抽出された文字領域を分類する分類手段と、を有する画像処理装置であって、前記判断手段において、前記抽出手段で抽出された文字領域のうちの第１の文字領域と第２の文字領域との間の類似度を求める際は、当該第１の文字領域に含まれる単語の類義語を当該第２の文字領域が含んでいるか判断し、当該含んでいると判断された類義語に対応づけられて前記類義語辞書に登録されている類似度を用いて、当該第１の文字領域と当該第２の文字領域との文字領域間の類似度を求めることを特徴とする。
【００２０】
【実施例】
図２２は本実施例における装置の構成を表わすブロック図である。１は本装置全体の処理を実行するＣＰＵであって、ＲＯＭ２に格納されている制御プログラムに従って判断及び処理を制御する。２はＲＯＭであり、本実施例において説明するフローチャートの制御プログラム、或いは処理に用いる予め定まっているパラメータ等のデータを記憶している。３はＲＡＭであり、ＣＰＵ１００１での処理中のデータを記憶するワーキングメモリエリアを備える。４はスキャナであり、原稿画像を光学的に読み込む。読み込まれた画像データはＲＡＭ１００３に記憶できる。５はキーボードであり、各種コードの入力、オペレータの指示が入力できる。６はポインティングデバイスであり、表示器１００７の表示画面上の所望の位置を指示でき、また、ボタンをクリックすることにより選択、取消の指示を入力することもできる。７は表示器であり、ＣＲＴ或いは液晶表示器からなる。８は例えばＬＢＰ、インクジェット式等のプリンタ、９は例えばＦＤなどの外部記憶装置、１０はこれら各構成間でのデータの授受を行なう為のデータバスである。
【００２１】
図１は、本実施例の順序付け処理を表すフローチャートである。各処理ステップについて説明する。
【００２２】
まず原稿画像を入力する。例えば、スキャナー４等から画像を入力する。入力した画像を解析して領域分割を行い、文字、セパレータ、図等の領域を画像から抽出する。
【００２３】
次に画像から抽出された文字、セパレータ、図等の各領域を内容毎に分かれる複数のグループに分割する（ステップＳ１０２）。ここでは、内容毎に分かれるグループを「記事」と定義して説明する。また、本実施例では、グループ化に際して、グループを６階層からなる階層的なグループに分けた例について説明する。「記事」グループは、そのうちの１階層である。
【００２４】
ステップＳ１０２において、複数のグループに分割されたら各グループ別に、当該グループに属する複数の領域の順序付けをする。また更に、入力画像内のグループ相互間の配置からグループの順序を付ける（ステップＳ１０３）。
【００２５】
以下ステップＳ１０２のグループ化について更に詳細に説明する。図２は、画像から抽出された領域を入力画像全体（ＲＯＯＴ）、記事、段組、同一段グループ、段落（同一行グループ）、行という６階層の木構造にグループ分けしたところを示した図である。
【００２６】
２０１は、階層０即ち画像全体である。２０２は、複数の記事グループからなる階層１内の記事１である。２０３は、同じ階層内において更に幾つかあることを示している。階層内のグループの個数は、階層０は１個のみ、階層１〜４は１個以上、階層５は０個以上存在する。各グループは、それぞれ一段上の階層のグループに属している。２０４は、複数の段組グループからなる階層２内の段組１であり、記事１（２０２）に属している。２０５は、複数の同一段グループのグループからなる階層３内の同一段グループ１であり、段組１（２０４）に属している。２０６は、複数の段落グループからなる階層４内の段落１であり、同一段グループ１（２０５）に属している。段落１は、行からなるグループ階層５を持っていない。２０７は、階層４内の段落２は、すなわち階層５内の行１、行２からなる同一行グループであり、同一段グループ１（２０５）に属している。２０８は、複数の行グループからなる階層５内の行１であり、段落２（２０７）に属している。
【００２７】
図４は、入力画像の例であり、領域分割によって抽出された文字領域、セパレータ領域、図領域、グループ化（ステップＳ１０２）によってできた記事、段組、同一段グループ、同一行グループの一部を示している。
【００２８】
図４において、４０１はスキャナー等から入力した縦書きの原稿画像である。４１３、４４３は抽出した文字領域、特に見出し領域かつ記事、同一段グループ、段落でもある。４２６、４２７は抽出した文字領域、特に見出し領域かつ行である。４１４、４１６、４３０、４４４は抽出した文字領域かつ同一段グループである。４２８、４２９は抽出した文字領域かつ段落である。４１５、４４５、４４６は抽出したセパレータ領域である。４２５は抽出した図領域である。４１１、４２１、４４１はセパレータ４４６及び図領域４２５によって分割した記事領域である。４１２、４２２、４４２は段組である。４２３は同一段グループである。
【００２９】
図５はステップＳ３０１についての詳細なフローチャートである。図６はステップＳ３０４についての詳細なフローチャートである。図７はステップＳ３０２についての詳細なフローチャートである。図８は図４の入力画像から抽出された領域を画像全体、記事、段組、同一段グループ、段落（同一行グループ）、行という６階層にグループ分けしたところを示した図である。図９はステップＳ１０４についての詳細なフローチャートである。図１０はステップＳ９０１についての詳細なフローチャートである。図１１はステップＳ９０２についての詳細なフローチャートである。図１２はステップＳ９０３についての詳細なフローチャートである。図１３はステップＳ９０４についての詳細なフローチャートである。図１４はステップＳ９０５についての詳細なフローチャートである。図１５はステップＳ３０５についての詳細なフローチャートである。図１６は図４の画像から抽出された文字領域４２６である。
【００３０】
図１６において、１６０１は、文字領域４２６の黒画素のＹ方向（縦方向）のヒストグラムである。１６０２は、ヒストグラム１６０１から求めた黒画素の幅である。
【００３１】
図１８は、ステップＳ５０３についての詳細なフローチャートである。図１９は、類義語辞書の内容の一部を示す図である。図２０は、画像内の文字領域間の類似度の出し方を説明するための図である。図２０において、２２０１は、スキャナー等から入力した縦書きの原稿画像である。２２０２、２２０３は、画像から抽出された文字領域である。２２０４は、文字領域２２０３内から取り出した単語を示す下線である。
【００３２】
図３のフローチャートに従って、ステップＳ１０３を説明する。
【００３３】
入力画像から抽出された各文字領域内の文字または文章または画像を解析して文字領域間の類似度を求め、類似度の高い領域を集めて一つの「記事」とする（ステップＳ３０１）。図２０及び図５のフローチャートに従ってステップＳ３０１の文字領域間の類似度を求める処理を詳細に説明する。まず、ステップＳ５０１では、図１の領域分割処理ステップＳ１０２によって抽出された文字領域のうち、どの記事にも属していない文字領域を一つ選択し、取り出す。
【００３４】
図２０の例では、文字領域２２０２をまず取り出し、記事のまず１つ目の文字領域とする。次にステップＳ５０２で、先のステップＳ５０１で選択した文字領域とは異なり、どの記事にもまだ属していない一つの文字領域を取り出し、比較文字領域とする。図２０の例では、文字領域２２０３を取り出し、比較文字領域とする。
【００３５】
ステップＳ５０３で、記事内の文字領域（２２０２）と比較文字領域（２２０３）内の文字または文章または画像を解析して領域間の類似度Ｓを出す。
【００３６】
類似度を文字または文章を解析して出すステップＳ５０３の方法について、図１８に従って説明する。
【００３７】
まず、ステップＳ２０１で、変数Ｓａｌｌ、変数Ｔｏｔａｌにそれぞれ０を代入して初期化する。変数Ｓａｌｌは、比較文字領域内にある単語の類似度の合計値を示している。また、変数Ｔｏｔａｌは、比較文字領域内にある総単語数を示している。ステップＳ２００２で、比較文字領域内の一つの単語を取り出しＴｏｔａｌに１加える。
【００３８】
図２０の例では、比較文字領域２２０３から、「半導体」という単語を取り出し、Ｔｏｔａｌに１を加え、Ｔｏｔａｌ＝１となる。ステップＳ２００３で、取り出した単語の類義語を類義語辞書から類似度が高い方から一つ取り出す。
【００３９】
図２０の例では、図１９に示す類義語辞書から初めに類義語「半導体」という単語を取り出す。ステップＳ２００４で、記事内に取り出した類義語があるか判定する。ある場合は、ステップＳ２００５に進む。無い場合は、ステップＳ２００６に進む。
【００４０】
図２０の例では、記事２２０２内に「半導体」という単語が存在するので、ステップＳ２００５に進む。ステップＳ２００５では、取り出した類義語の類似度を類義語辞書から取り出す。
【００４１】
図２０の例では、類似度は１．０である。
【００４２】
また、ステップＳ２００６では、取り出した単語の類義語を類義語辞書からすべて取り出したか判定する。全て取り出した場合は、ステップＳ２００７に進み、取り出した単語の類似度を０として、ステップＳ２００８に進む。また、取り出した単語の類義語が残っている場合は、ステップＳ２００３に戻って処理を続ける。ステップＳ２００８では、類似度をＳａｌｌに加える。
【００４３】
図２０の例では、類似度をＳａｌｌに加えると、Ｓａｌｌ＝１．０となる。
【００４４】
ステップＳ２００９では、比較文字領域内の全ての単語を処理したか判定する。全て処理した場合は、ステップＳ２０１０に進む。単語が残っている場合は、ステップＳ２００２に戻って処理を続ける。
【００４５】
図２０の例では、比較文字領域２２０３内の単語「需要」に関して処理を続ける。
【００４６】
同様に「低迷」、「単に」、…「指摘」と処理を続け、Ｓａｌｌ＝８．８、Ｔｏｔａｌ＝２０となる。
【００４７】
ステップＳ２０１０では、以下の式で類似度を求める。
【００４８】
Ｓ＝Ｓａｌｌ÷Ｔｏｔａｌ
【００４９】
図２０の例では、Ｓ＝８．８÷２０＝０．４４と求まる。これで、ステップＳ５０３の処理を終わりステップＳ５０４に進む。
【００５０】
ステップＳ５０４で、類似度Ｓと閾値αを比較する。
【００５１】
Ｓ≧α…（１）
【００５２】
式（１）を充たせば、ステップＳ５０５に進む充たさない場合は、ステップＳ５０６に進む。
【００５３】
図２０の例では、式（１）を充たすので、ステップＳ５０５に進む。ただし、ここで閾値αは０．２とする。ステップＳ５０５では、比較文字領域を記事に含める。
【００５４】
図２０の例では、比較文字領域２２０３は同じ記事の一部と判定され記事２２０２に含まれる。ステップＳ５０６では、全ての文字領域を処理したか判定する。全て処理していれば、ステップＳ５０７に進む。残った文字領域があれば、ステップＳ５０１に戻って処理を続ける。
【００５５】
図２０の例では、全ての文字領域を処理したので、ステップＳ５０７に進む。ステップＳ５０７では、各々の記事にＩＤ番号をつける。
【００５６】
図２０の例では、一つの記事しか存在しないので、記事１のみ存在する。
【００５７】
以上で、ステップＳ３０１の処理を終了し、ステップＳ３０２に進む。
【００５８】
同様に図４の例では、それぞれ記事４１１、記事４２１、記事４４１と分割する。
【００５９】
◎ステップＳ３０２
文字領域の中で一行のみからなる領域が並んでいる場合には、それらを合わせて同一行グループとし、各々の領域を行とする。
【００６０】
図４及び図７のフローチャートに従って詳細に説明する。
【００６１】
まずステップＳ７０１で、一つの記事を取り出す。図４及び図１６の例では、記事ＩＤ２の記事４２１を取り出して説明する。
【００６２】
次にステップＳ７０２で、記事内の文字領域を一つ取り出す。ステップＳ７０３で、取り出した領域が一行のみからなる文字領域か判定する。一行のみからなる文字領域であれば、ステップＳ７０４に進む。一行のみからなる文字領域ではない場合は、ステップＳ７０５に進む。
【００６３】
取り出した文字領域が何行からなるかを調べる方法を図１６に従って示す。文字領域４２６の組方向が縦書きであることは、ステップＳ１０１の原稿データ入力の結果から分かっている。縦書きの時は、文字領域４２６の黒画素の縦方向のヒストグラムを取る。横書きの時は同様に横方向のヒストグラムを取る。
【００６４】
図１６の例では、縦方向のヒストグラムを取った結果ヒストグラム１６０１である。ヒストグラム１６０１を横方向に見ることによって、黒画素の存在が連続する箇所が何か所あるか数え、それが求める行数となる。ヒストグラム１６０１の例では黒画素の存在が連続する箇所が１か所なので、文字領域４２６の行数は１行である。１行なので、ステップＳ７０４へ進む。
【００６５】
ステップＳ７０４では、文字領域の組方向と同じ方向に隣り合って一行のみからなる文字領域があり、かつ間にセパレータや図がなく、文字の大きさがほぼ同じ、かつ組方向が同じで、隙間も大きくないならば同一行グループとする。
【００６６】
図４の記事４２１の文字領域４２６の例では、ステップＳ７０３で文字領域４２６が一行のみからなると判定され、縦書きなので縦方向に１行のみからなる文字領域がないか捜す。文字領域４２７が文字領域４２６と縦方向に並んでいて、しかも１行のみからなっていることが分かる。
【００６７】
また、文字領域４２６と文字領域４２７の間にセパレータや図がないことは明白である。詳しく述べると２つの文字領域が縦方向に並んでいるので、並んでいる上の領域、この場合は文字領域４２６の下底と、並んでいる下の領域、この場合は文字領域４２７の上底から構成される平行四辺形の中にセパレータまたは図の一部または全部が含まれているか調べる。横並びの時は、同様に右辺と左辺により構成される平行四辺形内にセパレータまたは図が含まれるか調べる。
【００６８】
次に文字の大きさを調べる。
【００６９】
図１６の例で説明すると、ヒストグラム１６０１の幅１６０２を簡易的に文字の大きさとする。つまり、おおよその文字幅を文字大きさとする。ヒストグラムを取った時に黒画素の連続する領域が数カ所に分かれている時、つまり文字領域内に複数行が存在する時は、それらの幅の平均を取って文字大きさとする。文字領域４２６と文字領域４２７の文字大きさを比較して、大きい方をＣｂｉｇ、小さい方をＣｓｍａｌｌとする。
【００７０】
Ｃｓｍａｌｌ÷Ｃｂｉｇ≧α２…（２）
を充たせば、文字大きさが同じとする。ただし、α２は閾値でここでは０．９とする。文字領域４２６と文字領域４２７の場合は、式（２）を充たすので文字大きさが同じと判定する。次に組方向が同じか調べる。
【００７１】
前述した様に文字領域４２６は縦書きであり、文字領域４２７も縦書きであるので、組方向は共に同じと判定する。
【００７２】
次に隙間が大きくないか調べる。
【００７３】
文字領域４２６と文字領域４２７の間の隙間をＧ、文字大きさの小さい方をＣｓｍａｌｌとすると、
Ｇ÷Ｃｓｍａｌｌ≦α３…（３）
を充たせば、文字領域４２６と文字領域４２７の隙間は大きくないと判定する。ただし、α３は閾値でここでは１０とする。従って、文字領域４２６と文字領域４２７を、あわせて同一行グループ４２４とする。また、文字領域４２６と文字領域４２７を、それぞれ行と判定する。
【００７４】
ステップＳ７０５では、すべての文字領域に関して処理したか判定する。すべてを処理したのであれば、ステップＳ７０６に進む。処理していない文字領域があればステップＳ７０２に戻って、同一行グループの判定を行う。文字領域４２８、４２９、４３０は複数行からなるので行にはならない。ステップＳ７０６では、行に各々ＩＤ番号を付ける。
【００７５】
ステップＳ７０７では、すべての記事に関して処理したか判定する。すべてを処理したのであれば、ステップＳ３０２を終了してステップＳ３０３に進む。処理していない記事があればステップＳ７０１に戻って、同一行グループの判定を行う。
【００７６】
◎ステップＳ３０３
ここでは、「行」以外の文字領域をそのまま段落としてＩＤ番号を付ける。ただし、ステップＳ３０２で生成された同一行グループが存在すれば同様に段落とし、ＩＤ番号をつける。ステップＳ３０２で行となった文字領域は段落とはしない。図４の例では、文字領域４２６と文字領域４２７から生成した同一行グループ４２４も段落として扱う。
【００７７】
◎ステップＳ３０４
ここでは、段組の一つの段となる段落を、「同一段グループ」とする。図４の例では、段落４１３、段落４１４、段落４１６、段落（同一行グループ）４２４、段落４３０、段落４４３、段落４４４はそれぞれ一つの領域のみで同一段グループを形成する。段落４２８、段落４２９は共に同じ同一段グループに属する。
【００７８】
図６のフローチャートに従って記事４２１に関して説明する。
【００７９】
ステップＳ６０１で、一つの記事を取り出す。ここでは、記事４２１を取り出す例を示す。ステップＳ６０２で、記事の組方向を判定する。
【００８０】
図４の記事４２１の例では、記事４２１に属する文字領域の全てが縦書きであることはステップＳ１０１の原稿データの結果で分かっているので、記事４２１の組方向は縦書きである分かる。仮に縦書きと横書きの文字領域が混在していた場合は、各々の面積を求めて大きい方の組方向とする。または、各々の個数の大きい方の組方向とする。
【００８１】
縦書きなのでステップＳ６０３に進む。横書きの場合はステップＳ６０９に進む。
【００８２】
ステップＳ６０３で、記事内の段落を高さの大きい順に並べる。ステップＳ６０４で、どの同一段グループにも属していない一つの段落を並べた順に取り出し基本同一段グループとする。ステップＳ６０５で、どの同一段グループにも属していない他の段落を並べた順に取り出し比較段落とすると共に、基本同一段グループと比較して、文字の大きさがほぼ等しく、あいだに記事の組方向と逆方向のセパレータや他の同一段グループに属する段落がなく、領域が記事の組方向と逆方向に重なっていて、隙間も余り大きく開いていないなら、比較段落を基本同一段グループと同じ同一段グループとして結合する。どの同一段グループにも属していない他の段落を比較段落として繰り返す。
【００８３】
図４の記事４２１の例では、まず段落（同一行グループ）４２４が基本同一段グループ４２４となるが、文字の大きさが他の段落と違うため、単独で同一段グループを形成する。
【００８４】
次に段落４２８が基本段落となる。比較段落４２９とのあいだで、式（２）を充たし、文字の大きさが等しいと判定する。
【００８５】
また、間に記事の組方向と逆方向（つまり横方向）のセパレータや他の同一段グループに属する段落もない。判定の仕方は、ステップＳ７０４で述べた方法と同じである。
【００８６】
次に基本同一グループと比較段落の記事の組方向と逆方向（つまり横方向）の重なり具合を判定する。基本段落と比較段落の高さ（横書きの時は幅）の小さい方はＨｓｍａｌｌ、横方向に重なっている長さをＫとすると、
Ｋ÷Ｈｓｍａｌｌ≧α４…（４）
を充たせば、重なっていると判定する。ただし、α４は閾値でここでは０．８とする。基本同一段グループ４２８と比較段落４２９は式（４）を充たす。
【００８７】
次に隙間を調べる。
【００８８】
基本同一段グループ４２８と比較段落４２９の間の隙間は式（３）を充たすので隙間は大きくないと判定する。よって比較段落４２９を基本同一段グループと４２８と同じ同一段グループとし結合して一つの基本同一段グループとする。同様に、段落４３０を比較段落として調べる。領域が横方向に式（４）を充たさないので同一段グループとはしない。故に、段落４２８と段落４２９のみが同一段落となり、合わせて同一段グループ４２３を作る。
【００８９】
ステップＳ６０６で全ての段落がいずれかの同一段グループに属したか調べる。図４の記事４２１の例では、まだ段落４３０が残っているので、ステップＳ６０４に進む。段落４３０は基本同一段グループとなるが、ステップＳ６０５で比較段落がないので、段落４３０単独で同一段グループを形成する。全ての段落が同一段グループに属したので、ステップＳ６０７に進む。
【００９０】
ステップＳ６０７では、同一段グループに各々ＩＤ番号を付ける。段落４２４を同一段グループ１、同一段グループ４２３を同一段グループ２に、段落４３０を同一段グループ３とする。
【００９１】
ステップＳ６０８で、全ての記事を処理したか判定する。全ての記事を処理したらステップＳ３０４を終了し、ステップＳ３０５に進む。処理していない記事が残っていればステップＳ６０１に戻って処理を続ける。
【００９２】
◎ステップＳ３０５
ここでは、同じ段組となる同一段グループをまとめて「段組」とする。図４の記事４１１、記事４２１、記事４４１の例では、同一段グループ４１３、４２４、４４３はそれぞれ一つの同一段グループのみで段組を形成する。同一段グループ４１４、４１６は段組４１２を形成する。同様に記事４２１では、同一段グループ４２３、４３０は段組４２２を形成する。
【００９３】
図１５のフローチャートに従って記事４２１に関して説明する。ステップＳ１５０１で、一つの記事を取り出す。ここでは、記事４２１を取り出すことにする。
【００９４】
ステップＳ１５０２で、記事の組方向を判定する。これは、ステップＳ６０２と同様である。ここでは記事の組方向は縦書きである。縦書きなのでステップＳ１５０３に進む。同様に横書きの場合はステップＳ１５０９に進む。
【００９５】
ステップＳ１５０３で、記事内の同一段グループを右から順に並べる。
【００９６】
ステップＳ１５０４で、どの段組にも属していない一つの同一段グループを並べた順に取り出し基本段組とする。
【００９７】
ステップＳ１５０５で、どの段組にも属していない他の同一段グループを並べた順に取り出し比較同一段グループとすると共に、基本段組と比較して、文字の大きさがほぼ等しく、隣り合って領域が組方向と同じ方向に重なっていて、隙間も余り大きく開いていないなら、比較同一段グループを基本段組と同じ段組として結合する。どの段組にも属していない他の同一段グループを比較同一段グループとして繰り返す。
【００９８】
図４の記事４２１の例では、まず同一段グループ２４が基本段組４２４となるが、文字の大きさが他の段組と違うため、単独で基本段組を形成する。
【００９９】
次に同一段グループ４２３が基本段組４２３となる。比較同一段グループ４３０とのあいだで、式（２）を充たし、文字の大きさが等しいと判定する。
【０１００】
次に基本段組と比較同一段グループの記事の組方向と同じ方向の重なり具合を判定する。
【０１０１】
基本段組と比較同一段グループの幅の小さい方をＨｓｍａｌｌ、縦方向に重なっている長さをＫとすると、式（４）を充たしているので、重なっていると判定する。また隣り合っていることは明白である。調べ方は、ステップＳ７０４で述べたのと同様に、間に他の同一段グループがないか調べる。
【０１０２】
次に隙間を調べる。
【０１０３】
基本段組４２３と比較同一段グループ４３０の間の隙間は式（３）を充たすので隙間は大きくないと判定する。よって比較同一段グループ４３０を基本段組４２３と同じ段組として、基本段組に結合して、段組４２２を形成する。他に比較同一段グループとすべき同一段グループはないのでステップＳ１５０５を終了し、ステップＳ１５０６に進む。
【０１０４】
ステップＳ１５０６で全ての同一段グループがいずれかの段組に属したか調べる。全ての同一段グループが段組に属したら、ステップＳ１５０７に進む。
【０１０５】
ステップＳ１５０７では、段組に各々ＩＤ番号を付ける。段組４２４を段組１、段組４２２を段組２とする。
【０１０６】
ステップＳ１５０８で、全ての記事を処理したか判定する。全ての記事を処理したらステップＳ３０５を終了し、グループ化が完了する。処理していない記事が残っていればステップＳ１５０１に戻って処理を続ける。
【０１０７】
以上でステップＳ１０２を終了する。
【０１０８】
図４の例で、ステップＳ１０２でグループ化した結果を階層的に示した図が図８である。図８で、各番号は図４の番号に対応している。異なる階層で同じ番号がついているものがあるが、それは単独で一つの段落や同一段グループを構成しているためである。例えば、記事１の段組１は単独の同一段グループ１から構成されており、更に単独の段落１、即ち文字領域４１３から構成されているので、全て同じ番号の４１３となる。
【０１０９】
以下、グループ別順序付けについて詳細に説明する。
【０１１０】
図９はステップＳ１０３についての詳細なフローチャートである。図１０はステップＳ９０１についての詳細なフローチャートである。図１１はステップＳ９０２についての詳細なフローチャートである。図１２はステップＳ９０３についての詳細なフローチャートである。図１３はステップＳ９０４についての詳細なフローチャートである。図１４はステップＳ９０５についての詳細なフローチャートである。図１７はステップＳ９０６についての詳細なフローチャートである。
【０１１１】
図９のフローチャートに従って、ステップＳ１０４を説明する。
【０１１２】
◎ステップＳ９０１
全ての同一行グループ内の行にそれぞれ順序付けをする。
【０１１３】
図４及び図１０のフローチャートに従って説明する。
【０１１４】
ステップＳ１００１で一つの同一行グループを取り出す。図４の例では、同一行グループは同一行グループ４２４のみである。
【０１１５】
ステップＳ１００２で同一グループの組方向は横書きか判定する。横書きならステップＳ１００３へ進む。縦書きならステップＳ１００４に進む。組方向の判定方法は、ステップＳ６０２と同様である。同一行グループ４２４は、縦書きの行４２６、行４２７からなるので、縦書きと判定し、ステップＳ１００４に進む。
【０１１６】
ステップＳ１００４では、同一行グループの中に含まれる行に上から順に番号をつける。行４２６と行４２７では、行４２６が上なので、行４２６、行４２７の順に順番を付ける。
【０１１７】
ステップＳ１００５で、すべての同一行グループを処理したか判定する。全て処理していればステップＳ９０１を終了しステップＳ９０２に進む。残っていれば、ステップＳ１００１に戻って処理を続ける。図４の例では、全て処理したのでステップＳ９０１を終了して、ステップＳ９０２に進む。
【０１１８】
◎ステップＳ９０２
全ての同一段グループ内の段落及び同一行グループにそれぞれ順序付けをする。図４及び図１のフローチャートに従って詳細に説明する。
【０１１９】
ステップＳ１１０１で一つの同一段グループを取り出す。図４の例では、複数の段落から構成する同一段グループは同一段グループ４２３のみであるので、同一段グループ４２３を中心に説明する。
【０１２０】
ステップＳ１１０２で同一段グループの組方向は横書きか判定する。横書きならステップＳ１１０３へ進む。縦書きならステップＳ１１０４に進む。組方向の判定方法は、ステップＳ６０２と同様である。同一段グループ４２３は、縦書きの段落４２８、段落４２９からなるので、縦書きと判定し、ステップＳ１１０４に進む。
【０１２１】
ステップＳ１１０４では、同一段グループの中に含まれる段落及び同一行グループに右から順に番号をつける。段落４２８と段落４２９では、段落４２８が右なので、段落４２８、段落４２９の順に番号を付ける。
【０１２２】
ステップＳ１１０５で、すべての同一段グループを処理したか判定する。全て処理していればステップＳ９０２を終了してステップＳ９０３に進む。残っていれば、ステップＳ１１０１に戻って処理を続ける。
【０１２３】
◎ステップＳ９０３
全ての記事内の同一段グループにそれぞれ順序付けをする。図４及び図１２のフローチャートに従って詳細に説明する。
【０１２４】
ステップＳ１２０１で一つの段組を取り出す。図４の例では、段組４２２に関して説明する。
【０１２５】
ステップＳ１２０２で段組の組方向は横書きか判定する。横書きならステップＳ１２０３へ進む。縦書きならステップＳ１２０４に進む。組方向の判定方法は、ステップＳ６０２と同様である。段組４２２は、縦書きの同一段グループ４２３、同一段グループ４３０からなるので、縦書きと判定し、ステップＳ１２０４に進む。
【０１２６】
ステップＳ１２０４では、段組の中に含まれる同一段グループを上から順に番号をつける。同一段グループ４２３と同一段グループ４３０では、同一段グループ４２３が上なので、同一段グループ４２３、同一段グループ４３０の順に順番を付ける。
【０１２７】
ステップＳ１２０５で、すべての段組を処理したか判定する。全て処理していればステップＳ９０３を終了してステップＳ９０４に進む。残っていれば、ステップＳ１２０１に戻って処理を続ける。
【０１２８】
◎ステップＳ９０４
全ての記事内の段組にそれぞれ順序付けをする。図４及び図１３のフローチャートに従って詳細に説明する。
【０１２９】
ステップＳ１３０１で一つの記事を取り出す。図４の例では、記事４２１に関して説明する。
【０１３０】
ステップＳ１３０２で記事の組方向は横書きか判定する。横書きならステップＳ１３０３へ進む。縦書きならステップＳ１３０４に進む。組方向の判定方法は、ステップＳ６０２と同様である。記事４２１は、縦書きの段組４２４、段組４２２からなるので、縦書きと判定し、ステップＳ１３０４に進む。
【０１３１】
ステップＳ１３０４では、記事の中に含まれる段組に右から順に番号をつける。段組４２４と段組４２２では、段組４２４が右なので、段組４２４、段組４２２の順に番号を付ける。
【０１３２】
ステップＳ１３０５で、すべての記事を処理したか判定する。全て処理していればステップＳ９０４を終了してステップＳ９０５に進む。残っていれば、ステップＳ１３０１に戻って処理を続ける。
【０１３３】
◎ステップＳ９０５
記事にそれぞれ順序付けをする。図４及び図１のフローチャートに従って詳細に説明する。
【０１３４】
ステップＳ１４０１で画像全体の組方向は横書きか判定する。横書きならステップＳ１４０２へ進む。縦書きならステップＳ１４０３に進む。組方向の判定方法は、ステップＳ６０２と同様である。画像４０１は、縦書きの記事４１１、記事４２１、記事４４１からなるので、縦書きと判定し、ステップＳ１４０３に進む。
【０１３５】
ステップＳ１４０３では、画像全体の中に含まれる記事に右から順に番号をつけてステップＳ９０５を終了してステップＳ９０６に進む。記事４１１、次期４２１、記事４４１の順に順番を付ける。
【０１３６】
◎ステップＳ９０６
画像全体に関して全ての文字領域に全体としての順序付けをする。図４及び図１７のフローチャートに従って詳細に説明する。
【０１３７】
ステップＳ１７０１で、変数ＯＲＤＥＲに１と代入する（初期化）。この変数値が文字領域の画像全体に関する順番となる。
【０１３８】
ステップＳ１７０２で、記事を番号の小さい順に一つ取り出す。ここで番号とは、ステップＳ９０１からステップＳ９０５で付けた各々のＩＤ番号をさす。
【０１３９】
ステップＳ１７０３で、ステップＳ１７０２で取り出した記事内の段組を番号の小さい順に一つ取り出す。
【０１４０】
ステップＳ１７０４で、ステップＳ１７０３で取り出した段組内の同一段グループを番号の小さい順に一つ取り出す。
【０１４１】
ステップＳ１７０５で、ステップＳ１７０４で取り出した同一段グループ内の段落を番号の小さい順に一つ取り出す。
【０１４２】
ステップＳ１７０６で、ステップＳ１７０５で取り出した段落は同一行グループか判定する。同一行グループであれば、ステップ１７０７に進む。同一行グループでなければ、ステップＳ１７０８に進む。
【０１４３】
ステップＳ１７０７で、ステップＳ１７０５で取り出した段落内の行を番号の小さい順に一つ取り出す。
【０１４４】
ステップＳ１７０９で、行に変数ＯＲＤＥＲの順番を付け、ＯＲＤＥＲに１加える。
【０１４５】
ステップＳ１７１０では、全ての行を処理したか判定する。全ての行を処理していればステップＳ１７１１に進む。残っていれば、ステップＳ１７０７に戻って処理を続ける。
【０１４６】
また、ステップＳ１７０８では、段落に変数ＯＲＤＥＲの順番を付け、ＯＲＤＥＲに１加える。
【０１４７】
ステップＳ１７１１では、すべての段落を処理したか判定する。全ての段落を処理していればステップＳ１７１２に進む。残っていれば、ステップＳ１７０５に戻って処理を続ける。
【０１４８】
ステップＳ１７１２では、すべての同一グループを処理したか判定する。全ての同一段グループを処理していればステップＳ１７１３に進む。残っていれば、ステップＳ１７０４に戻って処理を続ける。
【０１４９】
ステップＳ１７１３では、すべての段組を処理したか判定する。全ての段組を処理していればステップＳ１７１４に進む。残っていれば、ステップＳ１７０３に戻って処理を続ける。
【０１５０】
ステップＳ１７１４では、すべての記事を処理したか判定する。全ての記事を処理していればステップＳ９０６を終了する。残っていれば、ステップＳ１７０２に戻って処理を続ける。
【０１５１】
尚、本実施例では、図１８のフローチャートで示す通り、図５のステップＳ５０３の文字領域間の類似度を出す処理において、図２０の下線２２０４で示すように、単語の取り出しにあたって、漢字またはカタカナで始まる単語のみを取り出しているが、ひらがなで始まる単語を取り出しても良い。例えば、「とまと」などのひらがなからなる単語である。
【０１５２】
尚、本実施例では、図１のステップＳ１０２のグループ化の処理において、図３のステップＳ３０１で示すように、「記事」のグループ化のみで文字領域間の類似度を用いているが、その他のいずれのグループ化で文字領域間の類似度を用いても良い。例えば、ステップＳ３０５の段組のグループ化である。
【０１５３】
尚、本実施例では、図１のステップＳ１０２のグループ化の処理において、文字領域内の文字について特に記述していないが、図２１のフローチャートのステップＳ２３０１のように文字領域の画像を文字認識することによって求めても良い。
【０１５４】
ステップＳ２３０１の処理について述べると、まず初めに文字領域内の画像から一つ一つの文字を切り出す。これは例えば、縦書きの文字領域であれば、縦方向のヒストグラムを取り、黒画素の切れめから行を取り出すことができ、取り出した行に対して横方向のヒストグラムを取り出すことによって、文字を切り出すことができる。切り出した文字パターンから幾何学的特徴を抽出し、認識用辞書に格納されている標準パターンと照合して、最も近い文字を文字認識結果としている。
【０１５５】
この文字認識結果をステップＳ３０１では解析して、文字領域間の類似度を求め、類似度の高い領域を集めて、「記事」としている。ステップＳ２３０１以外の処理は先に述べた通りである。
【０１５６】
尚、本実施例では、図１８のフローチャートで示すように、文字領域間の類似度は、比較文字領域内の単語に対して類義語辞書に存在する、記事内の最も類似度の高い単語を捜して、存在すればその類似度を類義語辞書から求めて、そのままＳａｌｌに加えて、総類似度を出したが、比較文字領域内の単語に対して記事内の最も類似度の高い単語を捜して、存在すればその類似度を類義語辞書から求めて、（類似度）×（記事内に存在する類義語数）をＳａｌｌに加えて、総類似度を出しても良い。ここでは、ステップＳ５０４の閾値αは０．５とする。
【０１５７】
図２０の例では、比較文字領域２２０３内の単語「半導体」に関して、記事２２０２には「半導体」という単語が２か所存在するので、第一の実施例ではＳａｌｌに１．０だけ加えたが本実施例では、
１．０×２＝２．０
をＳａｌｌに加える。
【０１５８】
尚、本実施例では、図１８のフローチャートで示すように、文字領域間の類似度は、比較文字領域内の単語に対して類義語辞書に存在する、記事内の最も類似度の高い単語を捜して、存在すればその類似度を類義語辞書から求めて、そのままＳａｌｌに加えて、総類似度を出したが、比較文字領域内の単語に対して記事内及び類義語辞書に存在する単語をすべて捜して、存在すればその類似度を類義語辞書から求めて、（各類義語の類似度）の総和をＳａｌｌに加えて、総類似度を出しても良い。ここでは、ステップＳ５０４の閾値αは０．５とする。
【０１５９】
図２０の例では、比較文字領域２２０３内の単語「低迷」に関して、記事２２０２には「低迷」、「下方」の２単語が存在するので、第一の実施例ではＳａｌｌに「低迷」の１．０だけ加えたが本実施例では、
１．０＋０．０６＝１．０６
をＳａｌｌに加える。
【０１６０】
尚、本実施例では、図１８のフローチャートで示すように、文字領域間の類似度は、比較文字領域内の単語に対して類義語辞書に存在する、記事内の最も類似度の高い単語を捜して、存在すればその類似度を類義語辞書から求めて、そのままＳａｌｌに加えて、総類似度を出したが、比較文字領域内の単語に対して記事内及び類義語辞書に存在する単語をすべて捜して、存在すればその類似度を類義語辞書から求めて、（各類義語の類似度）×（記事内に存在する各類義語数）の総和をＳａｌｌに加えて、総類似度を出しても良い。
【０１６１】
ここでは、ステップＳ５０４の閾値αは０．９とする。
【０１６２】
図２０の例では、比較文字領域２２０３内の単語「半導体」に関して、記事２２０２には「半導体」という単語が２か所存在し、同じく「低迷」に関して、記事２２０２には「低迷」が１か所、「下方」が１か所の２単語が存在するので、第一の実施例ではＳａｌｌに類似度の高い「半導体」の１．０だけ加えたが、本実施例ではこの２単語に関して、
１．０×２＋１．０×１＋０．０６×１＝３．０６
をＳａｌｌに加える。同様に他の単語に関してもＳａｌｌに加えていく。
【０１６３】
尚、本実施例では、図１８のフローチャートで示すように、文字領域間の類似度は、類義語の存在によって類似度を出しているが、類似度は、文字表現の丁寧さ等の文章表現の類似度を用いても良い。例えば、尊敬語、謙譲語、丁寧語の辞書を持ち、記事内の文章に存在するそれらの割合Ｘと、比較文字領域内に存在するそれらの割合Ｙを求めて、記事と比較文字領域間の類似度Ｓを以下の式で求める。
【０１６４】
Ｓ＝１．０−（ＸとＹの差）…（５）
この求めた類似度Ｓが、閾値αよりも大きければ、比較文字領域は記事と同じグループであると判定され、同じ記事に入る。
【０１６５】
具体的に考えると記事内の尊敬語、謙譲語、丁寧語の割合が０．２５、比較文字領域内の尊敬語、謙譲語、丁寧語の割合が０．３とすると類似度Ｓは、
Ｓ＝１．０−（０．３−０．２５）＝０．９５
である。これは、閾値αよりも大きいので比較文字領域は同じ記事と判定する。ただし、ここで閾値αは０．８とする。
【０１６６】
尚、本実施例では、図１８のフローチャートで示すように、文字領域間の類似度は、類義語の存在によって類似度を出しているが、類似度は、文章表現の行末表現等の文章表現の類似度を用いても良い。例えば、記事と比較文字領域内の文章から、行末表現が「ですます体」である割合をそれぞれ出し、式（５）によって文字領域間の類似度を出しても良い。
【０１６７】
この求めた類似度Ｓが、閾値αよりも大きければ、比較文字領域は記事と同じグループであると判定され、同じ記事に入る。
【０１６８】
具体的に考えると記事内の「ですます体」の割合が０．５比較文字領域内の「ですます体」の割合が０．４とすると類似度Ｓは、
Ｓ＝１．０−（０．５−０．４）＝０．９
である。これは、閾値αよりも大きいので比較文字領域は同じ記事と判定する。ただし、ここで閾値αは０．８とする。
【０１６９】
尚、本実施例では、図１８のフローチャートで示すように、文字領域間の類似度は、類義語の存在によって類似度を出しているが、類似度は、文章表現の待遇表現等の文章表現の類似度を用いても良い。
【０１７０】
ここで、待遇表現とは、話題の人物に対する話し手の、尊敬・親愛・軽侮などの態度を表す言語表現をさす。例えば、記事と比較文字領域内の文章から、待遇表現の割合をそれぞれ出し、式（５）によって文字領域間の類似度を出しても良い。
【０１７１】
この求めた類似度Ｓが、閾値αよりも大きければ、比較文字領域は記事と同じグループであると判定され、同じ記事に入る。
【０１７２】
具体的に考えると記事内の待遇表現の割合が０．２、比較文字領域内の待遇表現の割合が０．３とすると類似度Ｓは、
Ｓ＝１．０−（０．３−０．２）＝０．９
である。これは、閾値αよりも大きいので比較文字領域は同じ記事と判定する。ただし、ここで閾値αは０．８とする。
【０１７３】
尚、本実施例では、図１８のフローチャートで示すように、文字領域間の類似度は、類義語の存在によって類似度を出しているが、類似度は、文字領域内の、漢字、ひらがな、カタカナ、記号、数字、英字等のジャンル毎の構成割合を用いて求めても良い。例えば、記事と比較文字領域内の文章から、総文字数に対する漢字の割合をそれぞれ出し、式（５）によって文字領域間の類似度を出しても良い。
【０１７４】
この求めた類似度Ｓが、閾値αよりも大きければ、比較文字領域は記事と同じグループであると判定され、同じ記事に入る。
【０１７５】
具体的に考えると記事内の漢字の割合が０．４、比較文字領域内の漢字の割合が０．３とすると類似度Ｓは、
Ｓ＝１．０−（０．４−０．３）＝０．９
である。これは、閾値αよりも大きいので比較文字領域は同じ記事と判定する。ただし、ここで閾値αは０．８とする。
【０１７６】
尚、本実施例では、総文字数に対する漢字の割合のみを用いて類似度を出しているが、他のジャンルでももちろん良い。また、幾つかのジャンルを組み合わせても良い。
【０１７７】
尚、本実施例では、図１８のフローチャートで示すように、文字領域間の類似度は、類義語の存在によって類似度を出しているが、類似度は、文字領域内の文字画像から求めた、文字大きさ、行長さ、文字ピッチ、文字間の隙間、を用いて求めても良い。
【０１７８】
例えば、記事と比較文字領域内の文字画像から、文字大きさの平均をそれぞれ出し、Ｘ、Ｙとすると類似度Ｓは、
Ｓ＝１．０−（ＸとＹの差）÷β…（６）
【０１７９】
この求めた類似度Ｓが、閾値αよりも大きければ、比較文字領域は記事と同じグループであると判定され、同じ記事に入る。式（６）で、βは定数である。
【０１８０】
具体的に考えると記事内の文字大きさの平均が６４．５ドット、比較文字領域内の文字大きさの平均が５９．３ドットとすると類似度Ｓは、
Ｓ＝１．０−（６４．５−５９．３）÷１００＝０．９５
である。これは、閾値αよりも大きいので比較文字領域は同じ記事と判定する。ただし、ここで閾値αは０．９、定数βは１００とする。
【０１８１】
尚、本実施例では、文字大きさを用いて文字領域間の類似度を出しているが、行長さ、文字ピッチ、文字間の隙間を用いてももちろん良い。また、それらのいくつかを組み合わせても良い。
【０１８２】
尚、本実施例では、図１８のフローチャートで示すように、文字領域間の類似度は、類義語の存在によって類似度を出しているが、類似度は、文字領域間の文字画像から求めたフォントの違いを用いて求めても良い。例えば、記事と比較文字領域内の文字画像から、総文字数に対する明朝体の文字数の割合をそれぞれ出し、式（５）によって文字領域間の類似度を求めても良い。
【０１８３】
この求めた類似度Ｓが、閾値αよりも大きければ、比較文字領域は記事と同じグループであると判定され、同じ記事に入る。
【０１８４】
具体的に考えると記事内の明朝体の割合が０．９、比較文字領域内の明朝体の割合が０．９１とすると類似度Ｓは、
Ｓ＝１．０−（０．９１−０．９）＝０．９９
である。これは、閾値αよりも大きいので比較文字領域は同じ記事と判定する。ただし、ここで閾値αは０．９とする。
【０１８５】
尚、本実施例では、総文字数に対する明朝体の文字数の割合を用いて文字領域間の類似度を出しているが、例えば記事に使われているフォントは、ゴシックＢＢＢ体であり、比較文字領域に使われているフォントは、標準幅ゴシック体であるから、類似度０として、比較文字領域は同じ記事に属さないと判定しても良い。
【０１８６】
尚、本実施例では、総文字数に対する明朝体の文字数の割合を用いて文字領域間の類似度を出しているが、明朝体の代わりにゴシック体、教科書体はもちろん、斜体や細明朝体、太明朝体等の文字としても良い。
【０１８７】
尚、本実施例では、図１８のフローチャートで示すように、文字領域間の類似度は、類義語の存在によって類似度を出しているが、類似度は、文字領域内の文字画像から求めた文字の傾斜の違いを用いて求めても良い。例えば、記事と比較文字領域内の文字画像から、傾斜角度をそれぞれ出し、式（６）によって文字領域間の類似度を求めても良い。
【０１８８】
この求めた類似度Ｓが、閾値αよりも大きければ、比較文字領域は記事と同じグループであると判定され、同じ記事に入る。
【０１８９】
具体的に考えると記事の傾斜角度が０．１度、比較文字領域の傾斜角度が０．４度とすると類似度Ｓは、
Ｓ＝１．０−（０．４−０．１）÷９０＝０
である。これは、閾値αよりも大きいので比較文字領域は同じ記事と判定する。ただし、ここで閾値αは０．９定数βは９０とする。
【０１９０】
尚、本実施例では、図１８のフローチャートで示すように、文字領域間の類似度は、類義語の存在によって類似度を出しているが、類似度は、文字領域内の文字画像から求めた組方向の違いを用いて求めても良い。例えば、記事と比較文字領域内の文字画像から、総文字数に対する縦書きの文字数の割合をそれぞれ出し、式（５）によって文字領域間の類似度を求めても良い。
【０１９１】
この求めた類似度Ｓが、閾値αよりも大きければ、比較文字領域は記事と同じグループであると判定され、同じ記事に入る。
【０１９２】
具体的に考えると記事内の縦書きの割合が０．９、比較文字領域内の縦書きの割合が０．９１とすると類似度Ｓは、
Ｓ＝１．０−（０．９１−０．９）＝０．９９
である。これは、閾値αよりも大きいので比較文字領域は同じ記事と判定する。ただし、ここで閾値αは０．９とする。
【０１９３】
尚、本実施例では、総文字数に対する縦書きの文字数の割合を用いて文字領域間の類似度を出しているが、例えば記事の組方向は、縦書きであり、比較文字領域の組方向は、横書きであるから、類似度０として、比較文字領域は同じ記事に属さないと判定しても良い。
【０１９４】
尚、本実施例では、総文字数に対する縦書きの文字数の割合を用いて文字領域間の類似度を出しているが、総行数に対する縦書きの行数の割合を用いても良い。
【０１９５】
尚、本実施例では、ステップＳ１０１の例として、スキャナー等から画像入力し、領域分割手法を用いて、画像中の文字領域、図領域、セパレータ領域等を取り出しているが、複数の文字領域を持つＤＴＰ等のデータでも良い。
【０１９６】
尚、本実施例では、ステップＳ１０３のグループ化にあたって、ステップＳ３０１で示すように、文字領域間の類似度を用いて、記事を求めているが、初めに長いセパレータや図、表等文字領域以外の領域によって画像を分割してから、分割してできた一つ一つの領域に属する文字領域の中から、類似度を用いて記事を求めるようにしても良い。
【０１９７】
尚、本実施例では、ステップＳ１０３のグループ化にあたって、ステップＳ３０１で示すように、文字領域間の類似度を用いて、記事を求めているが、初めに長いセパレータや図、表等文字領域以外の領域によって画像を分割する際に、セパレータの延長線上に属する文字領域等どちらに含めて良いか判断がつかない場合に、類似度を用いて記事を求めるようにしても良い。
【０１９８】
【発明の効果】
以上説明したように、本発明によれば、画像から抽出された複数の領域の類似度により文字領域を分類するので、内容に関連性のある複数の文字領域が複雑な構成で配置されていても、オペレータの手を煩わすことなく関連性のある文字領域を判断することができる。
【０１９９】
以上説明したように、本発明によれば、グループの基準情報と画像情報から抽出された文字領域の類似度により、抽出された文字領域がそのグループに属するか否か判断するので、より正確に文字領域の内容的な関連性を判断することができる。
【０２００】
以上説明したように、本発明によれば、グループの基準情報を画像情報とするので、抽出された文字領域との類似度の判断が容易となる。
【０２０１】
以上説明したように、本発明によれば、入力画像から抽出された文字領域同志で類似度を判断するので、より内容的に関連性のある文字領域の判定を容易とすることができる。
【０２０２】
以上説明したように、本発明によれば、文字領域の画像情報を認識して類似度を判断するので、より文章的に関連のある文字領域を判断することができる。
【０２０３】
以上説明したように、本発明によれば、文字領域に共通に存在する単語を基準に文字領域間の類似度を判断するので、より文章的に関連のある文字領域を判断することができる。
【０２０４】
以上説明したように、本発明によれば、文字領域の文章表現である丁寧さ、行末表現、待遇表現を基準に文字領域かんの類似度を判断するので、より文章的に関連のある文字領域を判断することができる。
【０２０５】
以上説明したように、本発明によれば、文字領域の文字種である漢字、ひらがな、カタカナ、記号、数字、英字を基準に文字領域間の類似度を判断するので、より文章的に関連のある文字領域を判断することができる。
【０２０６】
以上説明したように、本発明によれば、文字領域の文章の構成であるフォント、文字サイズ、行長さ、文字ピッチ、傾き、文字間の隙間、組方向を基準に文字領域間の類似度を判断するので、より文章的に関連のある文字領域を判断することができる。
【図面の簡単な説明】
【図１】本実施例の順序付け方法を表すフローチャート。
【図２】画像から抽出された領域を６階層にグループ分けした図。
【図３】ステップＳ１０３についての詳細なフローチャート。
【図４】領域分割によって抽出された領域。
【図５】ステップＳ３０１についての詳細なフローチャート。
【図６】ステップＳ３０４についての詳細なフローチャート。
【図７】ステップＳ３０２についての詳細なフローチャート。
【図８】図４の画像から抽出された領域を６階層にグループ分けした図。
【図９】ステップＳ１０４についての詳細なフローチャート。
【図１０】ステップＳ９０１についての詳細なフローチャート。
【図１１】ステップＳ９０２についての詳細なフローチャート。
【図１２】ステップＳ９０３についての詳細なフローチャート。
【図１３】ステップＳ９０４についての詳細なフローチャート。
【図１４】ステップＳ９０５についての詳細なフローチャート。
【図１５】ステップＳ３０５についての詳細なフローチャート。
【図１６】図４の画像から抽出された文字領域４２６を示す図。
【図１７】ステップＳ９０６についての詳細なフローチャート。
【図１８】ステップＳ５０３についての詳細なフローチャート。
【図１９】類義語辞書の内容の一部を示す図。
【図２０】画像内の文字領域間の類似度の出し方を説明するための図。
【図２１】ステップＳ１０３の詳細なフローチャート。
【図２２】実施例の装置の構成を示すブロック図。
【図１】
0003651946.tif 000002
【図２】
0003651946.tif 000003
【図３】
0003651946.tif 000004
【図４】
0003651946.tif 000005
【図５】
0003651946.tif 000006
【図６】
0003651946.tif 000007
【図７】
0003651946.tif 000008
【図８】
0003651946.tif 000009
【図９】
0003651946.tif 000010
【図１０】
0003651946.tif 000011
【図１１】
0003651946.tif 000012
【図１２】
0003651946.tif 000013
【図１３】
0003651946.tif 000014
【図１４】
0003651946.tif 000015
【図１５】
0003651946.tif 000016
【図１６】
0003651946.tif 000017
【図１７】
0003651946.tif 000018
【図１８】
0003651946.tif 000019
【図１９】
0003651946.tif 000020
【図２０】
0003651946.tif 000021
【図２１】
0003651946.tif 000022
【図２２】
0003651946.tif 000023