(57)【特許請求の範囲】
【請求項１】
第１の画像と第２の画像からそれぞれその画像を構成する領域を抽出する領域抽出手段と、
前記領域抽出手段によって抽出された領域を順序付けする領域順序付手段と、
前記領域抽出手段によって抽出された領域から部分画像を抽出する部分画像抽出手段と、
前記部分画像抽出手段によって抽出された部分画像を、それぞれの前記画像内における該部分画像の位置に基づいて、順序付けを行う部分画像順序付手段と、
前記領域順序付手段による順序付け結果と前記部分画像順序付手段による順序付け結果に基づいて、前記第１の画像と前記第２の画像内における前記部分画像の順序付けを行う順序付手段と、
前記順序付手段によって順序付けされた部分画像の順序に基づいて該部分画像間の比較を行い、比較結果が一致しない場合は、前記第１の画像の部分画像及び該第１の画像の部分画像に続く複数の部分画像からなる第１の部分画像列が前記第２の画像の部分画像以降の複数の部分画像からなる部分画像列と一致するかを照合して一致するものがあった場合は挿入と判定し、該第２の画像の部分画像と該第２の画像の部分画像に続く複数の部分画像からなる第２の部分画像列が前記第１の画像の部分画像以降の複数の部分画像からなる部分画像列と一致するかを照合して一致するものがあった場合は削除と判定し、いずれでもない場合は変更と判定することによって、該第１の画像と該第２の画像の差異を抽出する差異抽出手段
を具備することを特徴とする画像処理装置。
【請求項２】
前記第１の画像及び第２の画像は、それぞれ複数のページを有しており、
前記順序付手段は、それぞれの前記画像のページに基づいて、前記部分画像の複数ページに渡る順序付けを行う
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記差異抽出手段は、前記第１の画像内における部分画像の特徴量と前記第２の画像内における部分画像の特徴量を用いて個々の部分画像の比較を行う
ことを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
第１の画像を構成する領域を抽出し、該領域を順序付けし、該領域から抽出された部分画像の位置に基づいて順序付けし、該領域の順序付け結果と該部分画像の順序付け結果に基づいて、該第１の画像内における該部分画像が順序付けされており、該第１の画像内における順序付けされた該部分画像に関する情報を記憶する記憶手段と、
第２の画像を構成する領域を抽出する領域抽出手段と、
前記領域抽出手段によって抽出された領域を順序付けする領域順序付手段と、
前記領域抽出手段によって抽出された領域から部分画像を抽出する部分画像抽出手段と、
前記部分画像抽出手段によって抽出された前記第２の画像内における部分画像を、該第２の画像内における該部分画像の位置に基づいて、順序付けを行う部分画像順序付手段と、
前記領域順序付手段による順序付け結果と前記部分画像順序付手段による順序付け結果に基づいて、前記第２の画像内における前記部分画像の順序付けを行う順序付手段と、
前記記憶手段に記憶されている第１の画像内の部分画像に関する情報及び前記順序付手段によって順序付けされた部分画像の順序に基づいて該部分画像間の比較を行い、比較結果が一致しない場合は、前記第１の画像の部分画像及び該第１の画像の部分画像に続く複数の部分画像からなる第１の部分画像列が前記第２の画像の部分画像以降の複数の部分画像からなる部分画像列と一致するかを照合して一致するものがあった場合は挿入と判定し、該第２の画像の部分画像と該第２の画像の部分画像に続く複数の部分画像からなる第２の部分画像列が前記第１の画像の部分画像以降の複数の部分画像からなる部分画像列と一致するかを照合して一致するものがあった場合は削除と判定し、いずれでもない場合は変更と判定することによって、該第１の画像と該第２の画像の差異を抽出する差異抽出手段
を具備することを特徴とする画像処理装置。
【請求項５】
前記第１の画像及び第２の画像は、それぞれ複数のページを有しており、
前記記憶手段は、前記第１の画像の複数ページに渡る順序付けされた部分画像に関する情報を記憶しており、
前記順序付手段は、前記第２の画像のページに基づいて、前記第２の画像内における部分画像の複数ページに渡る順序付けを行う
ことを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記記憶手段は、前記第１の画像内における部分画像に関する情報として、該部分画像の順序及び該部分画像の特徴量を記憶しており、
前記差異抽出手段は、前記記憶手段に記憶された第１の画像内における部分画像の特徴量と前記第２の画像内における部分画像の特徴量を用いて個々の部分画像の比較を行う
ことを特徴とする請求項４又は５に記載の画像処理装置。
【請求項７】
前記差異抽出手段によって抽出された差異のある部分画像の位置に基づいて、前記第１の画像又は前記第２の画像を加工する画像加工手段
をさらに具備することを特徴とする請求項１から６のいずれか一項に記載の画像処理装置。
【請求項８】
コンピュータを、
第１の画像と第２の画像からそれぞれその画像を構成する領域を抽出する領域抽出手段と、
前記領域抽出手段によって抽出された領域を順序付けする領域順序付手段と、
前記領域抽出手段によって抽出された領域から部分画像を抽出する部分画像抽出手段と、
前記部分画像抽出手段によって抽出された部分画像を、それぞれの前記画像内における該部分画像の位置に基づいて、順序付けを行う部分画像順序付手段と、
前記領域順序付手段による順序付け結果と前記部分画像順序付手段による順序付け結果に基づいて、前記第１の画像と前記第２の画像内における前記部分画像の順序付けを行う順序付手段と、
前記順序付手段によって順序付けされた部分画像の順序に基づいて該部分画像間の比較を行い、比較結果が一致しない場合は、前記第１の画像の部分画像及び該第１の画像の部分画像に続く複数の部分画像からなる第１の部分画像列が前記第２の画像の部分画像以降の複数の部分画像からなる部分画像列と一致するかを照合して一致するものがあった場合は挿入と判定し、該第２の画像の部分画像と該第２の画像の部分画像に続く複数の部分画像からなる第２の部分画像列が前記第１の画像の部分画像以降の複数の部分画像からなる部分画像列と一致するかを照合して一致するものがあった場合は削除と判定し、いずれでもない場合は変更と判定することによって、該第１の画像と該第２の画像の差異を抽出する差異抽出手段
として機能させることを特徴とする画像処理プログラム。
【請求項９】
コンピュータを、
第１の画像を構成する領域を抽出し、該領域を順序付けし、該領域から抽出された部分画像の位置に基づいて順序付けし、該領域の順序付け結果と該部分画像の順序付け結果に基づいて、該第１の画像内における該部分画像が順序付けされており、該第１の画像内における順序付けされた該部分画像に関する情報を記憶する記憶手段と、
第２の画像を構成する領域を抽出する領域抽出手段と、
前記領域抽出手段によって抽出された領域を順序付けする領域順序付手段と、
前記領域抽出手段によって抽出された領域から部分画像を抽出する部分画像抽出手段と、
前記部分画像抽出手段によって抽出された前記第２の画像内における部分画像を、該第２の画像内における該部分画像の位置に基づいて、順序付けを行う部分画像順序付手段と、
前記領域順序付手段による順序付け結果と前記部分画像順序付手段による順序付け結果に基づいて、前記第２の画像内における前記部分画像の順序付けを行う順序付手段と、
前記記憶手段に記憶されている第１の画像内の部分画像に関する情報及び前記順序付手段によって順序付けされた部分画像の順序に基づいて該部分画像間の比較を行い、比較結果が一致しない場合は、前記第１の画像の部分画像及び該第１の画像の部分画像に続く複数の部分画像からなる第１の部分画像列が前記第２の画像の部分画像以降の複数の部分画像からなる部分画像列と一致するかを照合して一致するものがあった場合は挿入と判定し、該第２の画像の部分画像と該第２の画像の部分画像に続く複数の部分画像からなる第２の部分画像列が前記第１の画像の部分画像以降の複数の部分画像からなる部分画像列と一致するかを照合して一致するものがあった場合は削除と判定し、いずれでもない場合は変更と判定することによって、該第１の画像と該第２の画像の差異を抽出する差異抽出手段
として機能させることを特徴とする画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置及び画像処理プログラムに関する。
【背景技術】
【０００２】
媒体が紙である文書にユーザが記入した追記等を検出したり、セキュリティ文書が改竄されていないかどうかを検証したりする等の、文書に対する追加や削除などの変更箇所を明らかにしたいというニーズがある。このニーズに対応するために、原本と紙文書（原本と比較したい文書、つまり、追記等が行われている可能性のある文書）をスキャナで読み込んで、両者の画像を比較して差分を抽出する処理が行われる。
【０００３】
これに関連する技術として、例えば、特許文献１には、差分処理後における引き残しの発生を防止することができ、加筆画像の抽出精度を向上させることができる加筆画像抽出装置を提供することを課題とし、第一領域識別手段により識別された電子文書の原稿画像の各々の領域と第二領域識別手段により識別された加筆重畳画像の各々の領域とについてのそれぞれの位置ズレ量を画像位置検出手段によって検出し、この検出した位置ズレ量に基づいて画像差分処理手段で位置を補正して差分処理を行い、これにより、電子文書の原稿画像と加筆重畳画像との間でズレが発生した場合であっても、位置ズレを補正してから差分処理を行うことで、差分処理後における引き残しの発生を防止することができるので、加筆画像の抽出精度が向上することが開示されている。
【０００４】
また、例えば、特許文献２には、電子文書と加筆重畳画像とからの加筆抽出の際に、加筆情報が存在しない領域での引き残しの発生を抑制でき、かつ、より精度の高い加筆抽出を行うことができる加筆抽出装置及び加筆抽出方法を提供することを課題とし、加筆抽出装置は、電子文書の原稿画像と電子文書を紙へ出力した後に手書きの加筆が重畳した状態でスキャナ等の画像読取装置で再び電子化された画像とから、文字認識を用いて所望の領域を小領域に分割して小領域毎に加筆抽出操作の必要性の有無を判定する領域分割部と、これによって分割され差分計算が必要と判定された小領域に対して差分計算を行う画像差分部と、これによって差分処理された画像に対して補間処理を行う画像補間部と、を有し、これにより、加筆抽出の精度が向上することが開示されている。
【０００５】
また、例えば、特許文献３には、電子文書ファイル及び画像ファイルの更新に伴う作業を効率的にし、ファイルの保存領域の容量を有効に利用できることを課題とし、元の電子文書ファイルを画像化した画像データ（元文書画像データ）の黒画素に対して画像膨張部により膨張処理を行い、位置合わせの際の誤差を補正し、次に、加筆された印刷物をイメージスキャナで読み取った画像データ（加筆画像データ）と、元文書画像データとに対し、部分領域分割部によって各々画像データ領域の分割を行い、その後、矩形抽出部により矩形情報を取得し、矩形比較・位置合わせ部で画像データ同士の位置合わせを行い、論理計算部により画素単位での排他的論理和を算出し、差分情報を抽出し、抽出した差分情報と、元文書画像データとを保存することでデータ領域の節約をすることが開示されている。
【特許文献１】特開２００４−２８７６８２号公報
【特許文献２】特開２００４−２１３２３０号公報
【特許文献３】特開２００４−３４１９１４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
従来技術では、画像全体の位置合わせを必要とし、また、その位置合わせができたとしても、行間隔や文字間隔が変化した場合はその内容が変化していない（例えば、文字の変更等が行われていない）にもかかわらず、画像としての差分を抽出してしまう。
本発明は、複数の画像間で比較を行う場合に、画像全体の位置合わせを不要とし、部分画像の位置が異なっているにもかかわらず、両者の画像間の差異を抽出するようにした画像処理装置及び画像処理プログラムを提供することを目的としている。
【課題を解決するための手段】
【０００７】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
請求項１の発明は、第１の画像と第２の画像からそれぞれその画像を構成する領域を抽出する領域抽出手段と、前記領域抽出手段によって抽出された領域を順序付けする領域順序付手段と、前記領域抽出手段によって抽出された領域から部分画像を抽出する部分画像抽出手段と、前記部分画像抽出手段によって抽出された部分画像を、それぞれの前記画像内における該部分画像の位置に基づいて、順序付けを行う部分画像順序付手段と、前記領域順序付手段による順序付け結果と前記部分画像順序付手段による順序付け結果に基づいて、前記第１の画像と前記第２の画像内における前記部分画像の順序付けを行う順序付手段と、前記順序付手段によって順序付けされた部分画像の順序に基づいて該部分画像間の比較を行い、比較結果が一致しない場合は、前記第１の画像の部分画像及び該第１の画像の部分画像に続く複数の部分画像からなる第１の部分画像列が前記第２の画像の部分画像以降の複数の部分画像からなる部分画像列と一致するかを照合して一致するものがあった場合は挿入と判定し、該第２の画像の部分画像と該第２の画像の部分画像に続く複数の部分画像からなる第２の部分画像列が前記第１の画像の部分画像以降の複数の部分画像からなる部分画像列と一致するかを照合して一致するものがあった場合は削除と判定し、いずれでもない場合は変更と判定することによって、該第１の画像と該第２の画像の差異を抽出する差異抽出手段を具備することを特徴とする画像処理装置である。
【０００８】
請求項２の発明は、前記第１の画像及び第２の画像は、それぞれ複数のページを有しており、前記順序付手段は、それぞれの前記画像のページに基づいて、前記部分画像の複数ページに渡る順序付けを行うことを特徴とする請求項１に記載の画像処理装置である。
【０００９】
請求項３の発明は、前記差異抽出手段は、前記第１の画像内における部分画像の特徴量と前記第２の画像内における部分画像の特徴量を用いて個々の部分画像の比較を行うことを特徴とする請求項１又は２に記載の画像処理装置である。
【００１０】
請求項４の発明は、第１の画像を構成する領域を抽出し、該領域を順序付けし、該領域から抽出された部分画像の位置に基づいて順序付けし、該領域の順序付け結果と該部分画像の順序付け結果に基づいて、該第１の画像内における該部分画像が順序付けされており、該第１の画像内における順序付けされた該部分画像に関する情報を記憶する記憶手段と、第２の画像を構成する領域を抽出する領域抽出手段と、前記領域抽出手段によって抽出された領域を順序付けする領域順序付手段と、前記領域抽出手段によって抽出された領域から部分画像を抽出する部分画像抽出手段と、前記部分画像抽出手段によって抽出された前記第２の画像内における部分画像を、該第２の画像内における該部分画像の位置に基づいて、順序付けを行う部分画像順序付手段と、前記領域順序付手段による順序付け結果と前記部分画像順序付手段による順序付け結果に基づいて、前記第２の画像内における前記部分画像の順序付けを行う順序付手段と、前記記憶手段に記憶されている第１の画像内の部分画像に関する情報及び前記順序付手段によって順序付けされた部分画像の順序に基づいて該部分画像間の比較を行い、比較結果が一致しない場合は、前記第１の画像の部分画像及び該第１の画像の部分画像に続く複数の部分画像からなる第１の部分画像列が前記第２の画像の部分画像以降の複数の部分画像からなる部分画像列と一致するかを照合して一致するものがあった場合は挿入と判定し、該第２の画像の部分画像と該第２の画像の部分画像に続く複数の部分画像からなる第２の部分画像列が前記第１の画像の部分画像以降の複数の部分画像からなる部分画像列と一致するかを照合して一致するものがあった場合は削除と判定し、いずれでもない場合は変更と判定することによって、該第１の画像と該第２の画像の差異を抽出する差異抽出手段を具備することを特徴とする画像処理装置である。
【００１１】
請求項５の発明は、前記第１の画像及び第２の画像は、それぞれ複数のページを有しており、前記記憶手段は、前記第１の画像の複数ページに渡る順序付けされた部分画像に関する情報を記憶しており、前記順序付手段は、前記第２の画像のページに基づいて、前記第２の画像内における部分画像の複数ページに渡る順序付けを行うことを特徴とする請求項４に記載の画像処理装置である。
【００１２】
請求項６の発明は、前記記憶手段は、前記第１の画像内における部分画像に関する情報として、該部分画像の順序及び該部分画像の特徴量を記憶しており、前記差異抽出手段は、前記記憶手段に記憶された第１の画像内における部分画像の特徴量と前記第２の画像内における部分画像の特徴量を用いて個々の部分画像の比較を行うことを特徴とする請求項４又は５に記載の画像処理装置である。
【００１３】
請求項７の発明は、前記差異抽出手段によって抽出された差異のある部分画像の位置に基づいて、前記第１の画像又は前記第２の画像を加工する画像加工手段をさらに具備することを特徴とする請求項１から６のいずれか一項に記載の画像処理装置である。
【００１４】
請求項８の発明は、コンピュータを、第１の画像と第２の画像からそれぞれその画像を構成する領域を抽出する領域抽出手段と、前記領域抽出手段によって抽出された領域を順序付けする領域順序付手段と、前記領域抽出手段によって抽出された領域から部分画像を抽出する部分画像抽出手段と、前記部分画像抽出手段によって抽出された部分画像を、それぞれの前記画像内における該部分画像の位置に基づいて、順序付けを行う部分画像順序付手段と、前記領域順序付手段による順序付け結果と前記部分画像順序付手段による順序付け結果に基づいて、前記第１の画像と前記第２の画像内における前記部分画像の順序付けを行う順序付手段と、前記順序付手段によって順序付けされた部分画像の順序に基づいて該部分画像間の比較を行い、比較結果が一致しない場合は、前記第１の画像の部分画像及び該第１の画像の部分画像に続く複数の部分画像からなる第１の部分画像列が前記第２の画像の部分画像以降の複数の部分画像からなる部分画像列と一致するかを照合して一致するものがあった場合は挿入と判定し、該第２の画像の部分画像と該第２の画像の部分画像に続く複数の部分画像からなる第２の部分画像列が前記第１の画像の部分画像以降の複数の部分画像からなる部分画像列と一致するかを照合して一致するものがあった場合は削除と判定し、いずれでもない場合は変更と判定することによって、該第１の画像と該第２の画像の差異を抽出する差異抽出手段として機能させることを特徴とする画像処理プログラムである。
【００１５】
請求項９の発明は、コンピュータを、第１の画像を構成する領域を抽出し、該領域を順序付けし、該領域から抽出された部分画像の位置に基づいて順序付けし、該領域の順序付け結果と該部分画像の順序付け結果に基づいて、該第１の画像内における該部分画像が順序付けされており、該第１の画像内における順序付けされた該部分画像に関する情報を記憶する記憶手段と、第２の画像を構成する領域を抽出する領域抽出手段と、前記領域抽出手段によって抽出された領域を順序付けする領域順序付手段と、前記領域抽出手段によって抽出された領域から部分画像を抽出する部分画像抽出手段と、前記部分画像抽出手段によって抽出された前記第２の画像内における部分画像を、該第２の画像内における該部分画像の位置に基づいて、順序付けを行う部分画像順序付手段と、前記領域順序付手段による順序付け結果と前記部分画像順序付手段による順序付け結果に基づいて、前記第２の画像内における前記部分画像の順序付けを行う順序付手段と、前記記憶手段に記憶されている第１の画像内の部分画像に関する情報及び前記順序付手段によって順序付けされた部分画像の順序に基づいて該部分画像間の比較を行い、比較結果が一致しない場合は、前記第１の画像の部分画像及び該第１の画像の部分画像に続く複数の部分画像からなる第１の部分画像列が前記第２の画像の部分画像以降の複数の部分画像からなる部分画像列と一致するかを照合して一致するものがあった場合は挿入と判定し、該第２の画像の部分画像と該第２の画像の部分画像に続く複数の部分画像からなる第２の部分画像列が前記第１の画像の部分画像以降の複数の部分画像からなる部分画像列と一致するかを照合して一致するものがあった場合は削除と判定し、いずれでもない場合は変更と判定することによって、該第１の画像と該第２の画像の差異を抽出する差異抽出手段として機能させることを特徴とする画像処理プログラムである。
【発明の効果】
【００１６】
請求項１の画像処理装置によれば、複数の画像間で比較を行う場合に、画像全体の位置合わせを不要とし、部分画像の位置が異なっているにもかかわらず、両者の画像間の差異を抽出できる。
【００１７】
請求項２の画像処理装置によれば、複数のページを有する複数の画像間においても、両者の画像間の差異を抽出できる。
【００１８】
請求項３の画像処理装置によれば、本構成を有していないものに比較して、部分画像間の比較のための処理量を削減することができる。
【００１９】
請求項４の画像処理装置によれば、複数の画像間で比較を行う場合に、画像全体の位置合わせを不要とし、部分画像の位置が異なっているにもかかわらず、両者の画像間の差異を抽出できる。
【００２０】
請求項５の画像処理装置によれば、複数のページを有する複数の画像間においても、両者の画像間の差異を抽出できる。
【００２１】
請求項６の画像処理装置によれば、本構成を有していないものに比較して、部分画像間の比較のための処理量を削減することができる。
【００２２】
請求項７の画像処理装置によれば、両者の画像間の差異を他と異ならせて提示することができる。
【００２３】
請求項８の画像処理プログラムによれば、複数の画像間で比較を行う場合に、画像全体の位置合わせを不要とし、部分画像の位置が異なっているにもかかわらず、両者の画像間の差異を抽出できる。
【００２４】
請求項９の画像処理プログラムによれば、複数の画像間で比較を行う場合に、画像全体の位置合わせを不要とし、部分画像の位置が異なっているにもかかわらず、両者の画像間の差異を抽出できる。
【発明を実施するための最良の形態】
【００２５】
以下、図面に基づき本発明を実現するにあたっての好適な一実施の形態の例を説明する。
図１は、本実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア（コンピュータ・プログラム）、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、コンピュータ・プログラム、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するの意である。また、モジュールは機能にほぼ一対一に対応しているが、実装においては、１モジュールを１プログラムで構成してもよいし、複数モジュールを１プログラムで構成してもよく、逆に１モジュールを複数プログラムで構成してもよい。また、複数モジュールは１コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって１モジュールが複数コンピュータで実行されてもよい。なお、１つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続（データの授受、指示、データ間の参照関係等）の場合にも用いる。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク（一対一対応の通信接続を含む）等の通信手段で接続されて構成されるほか、１つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。また、所定という用語は、予め定められたの意の他に、そのときの状況・状態に応じて、又はそれまでの状況・状態に応じての意を含めて用いる。
【００２６】
比較する画像として、複数の画像間であればよいが、以下、２つの画像（１ページ又は２ページ以上も含む）を対象とし、１つの比較される画像（いわゆる原本の画像、以下「画像Ａ」ともいう）と１つの比較する画像（変更が施された可能性のある画像、以下「画像Ｂ」ともいう）を例示して説明する。また、ここでは、画像として、文書を例示するが、部分画像（以下、サブ画像ともいう）を有している画像であればよい。部分画像として、文字の画像を例示するが、文字に限る必要はなく、文字の一部分、逆に複数の文字、図形等であってもよい。また、画像の内容として、ビジネス用に用いられる文書、広告宣伝用のパンフレット等であってもよい。
【００２７】
本実施の形態は、図１に示すように、画像受付モジュール１００、前処理モジュール１１０、領域抽出モジュール１２０、領域順序付モジュール１３０、サブ画像抽出モジュール１４０、サブ画像順序付モジュール１５０、全体順序付モジュール１６０、照合モジュール１７０、加工モジュール１８０、出力モジュール１９０を有している。
【００２８】
画像受付モジュール１００は、前処理モジュール１１０と接続されており、画像を受け付けて、その画像を前処理モジュール１１０へ渡す。画像を受け付けるとは、スキャナで画像を読み込むこと、ファックスで画像を受信すること、画像データベース等から画像を読み出すこと等が含まれる。その画像は、１枚であってもよいし、複数枚であってもよい。また、受け付ける画像は必ずしも紙媒体のものの画像である必要はなく、電子ドキュメント（つまり、印刷する前の電子ドキュメントであり、例えば、文書作成ソフトウェアによって生成されたテキスト主体の電子ドキュメント等）を受け付け、それから印刷用の画像を生成するようにしてもよい。
【００２９】
前処理モジュール１１０は、画像受付モジュール１００、領域抽出モジュール１２０と接続されており、前処理モジュール１１０から画像を受け取り、その画像に対して前処理を行い、その前処理を行った画像を領域抽出モジュール１２０へ渡す。前処理として、例えば、受け取った画像が多値画像（カラー画像を含む）であれば、２値画像に変換すること、画像に対して正立処理を行うこと、スキュー（ｓｋｅｗ）補正を行うこと、ノイズ除去を行うこと等がある。なお、正立処理とは、画像の向きを一般的な読める向きにすることである。例えば、４方向に画像を回転させながら文字認識処理を行い、最も認識率の高い方向に回転させる等があり、既存の技術を用いてもよい。また、スキュー補正とは、傾き補正を行うことである。例えば、スキャナ等で読み込んだ場合に傾きが発生し、その画像に対して、ハフ変換で直線の傾きを求め、それが垂直又は水平になるように回転させる等があり、既存の技術を用いてもよい。
【００３０】
領域抽出モジュール１２０は、前処理モジュール１１０、領域順序付モジュール１３０と接続されており、前処理モジュール１１０から画像を受け取り、その画像を構成する領域（例えば、文字領域、図形領域、写真等の領域）を抽出し、その領域に関する情報を領域順序付モジュール１３０へ渡す。例えば、画像内で文字が記載されている部分をブロック（矩形の領域）として抽出するものであり、文字とイメージとの分離技術や文字認識処理における前処理である文字領域抽出技術等の既存の技術を用いてもよい。
【００３１】
領域順序付モジュール１３０は、領域抽出モジュール１２０、サブ画像抽出モジュール１４０と接続されており、領域抽出モジュール１２０から領域に関する情報を受け取り、その中で対象とする領域に対して、順序付けを行い、その順序付けした領域に関する情報をサブ画像抽出モジュール１４０へ渡す。例えば、横書き（左から右へ文字が書かれている場合）文書の場合、文字領域に対して、その画像の上にあるものから順に順序を付ける。そして、上下の位置として所定範囲内にあって、横に並んで文字領域がある場合は、左から右へ順序を付ける。また、縦書き文書の場合は、その画像の右にあるものから順に順序を付ける。そして、左右の位置として所定範囲内にあって、縦に並んで文字領域がある場合は、上から下へ順序を付ける。なお、領域順序付モジュール１３０が、横書き、縦書きの判断を行い、順序付けを行うようにしてもよい。つまり、一般的な読み順になるように順序付けを行うが、必ずしも正確な読み順になる必要はない。ただし、比較する画像間では同じ順序付けの規則に基づいて、領域の順序付けを行う。
【００３２】
サブ画像抽出モジュール１４０は、領域順序付モジュール１３０、サブ画像順序付モジュール１５０と接続されており、領域順序付モジュール１３０から順序付けされた領域に関する情報を受け取り、その領域内の画像からサブ画像を抽出し、サブ画像に関する情報をサブ画像順序付モジュール１５０へ渡す。例えば、概ね１文字単位のサブ画像を抽出する。その際、抽出したページ、位置を記憶しておく。文字認識技術の前処理である文字抽出技術等の既存の技術を用いてもよい。
【００３３】
サブ画像順序付モジュール１５０は、サブ画像抽出モジュール１４０、全体順序付モジュール１６０と接続されており、サブ画像抽出モジュール１４０によって抽出されたサブ画像を、画像内におけるそのサブ画像の位置に基づいて、順序付けを行い、その順序付けしたサブ画像に関する情報を全体順序付モジュール１６０へ渡す。例えば、横書き文書の場合、サブ画像に対して、その画像の上にあるものから順に順序を付ける。そして、上下の位置として所定範囲内にあって、横に並んでサブ画像がある場合は、左から右へ順序を付ける。また、縦書き文書の場合は、その画像の右にあるものから順に順序を付ける。そして、左右の位置として所定範囲内にあって、縦に並んで文字領域がある場合は、上から下へ順序を付ける。なお、領域順序付モジュール１３０が、横書き、縦書きの判断を行い、順序付けを行うようにしてもよい。つまり、一般的な読み順になるように順序付けを行うが、必ずしも正確な読み順になる必要はない。ただし、比較する画像間では同じ順序付けの規則に基づいて、サブ画像の順序付けを行う。
【００３４】
全体順序付モジュール１６０は、サブ画像順序付モジュール１５０、照合モジュール１７０と接続されており、サブ画像順序付モジュール１５０から領域内で順序付けされたサブ画像に関する情報を受け取り、そのサブ画像に画像全体を通した順序付けを行い、その順序付けしたサブ画像に関する情報を照合モジュール１７０へ渡す。つまり、画像内に文字領域が複数あった場合は、領域順序付モジュール１３０によって順序付けされた領域に沿って、サブ画像に順序を付ける。画像が複数ページを有している場合は、そのページを通した順序である。２ページ以降にあるサブ画像は、前のページにあるサブ画像の後になるように順序付けを行う。つまり、３段階でソート（順序付け）を行い、そのソート順位は、第一優先としてページの順序、第二優先としてそのページ内の文字領域の順序、第三優先としてその文字領域内のサブ画像の順序となる。
【００３５】
なお、前処理モジュール１１０から全体順序付モジュール１６０までの処理は、画像Ａと画像Ｂに対してそれぞれ処理を行う。ただし、それぞれのモジュールが画像Ａに対する処理を行った後に画像Ｂに対する処理を行うという順序である必要はなく、画像Ａに対する処理を前処理モジュール１１０から全体順序付モジュール１６０によって順次行い、その結果を全体順序付モジュール１６０が記憶装置に記憶させておき、その後に、画像Ｂに対する処理を行うようにしてもよい。つまり、この記憶装置は、画像Ａから抽出されたサブ画像の位置に基づいて順序付けされた画像Ａ内におけるサブ画像に関する情報を記憶する。また、画像Ａが複数ページを有している場合は、その複数ページに渡る順序付けされたサブ画像に関する情報を記憶する。また、画像Ａに対しては、照合モジュール１７０によるサブ画像に対する特徴抽出までを行うようにしてもよい。そして、サブ画像に関する情報として、そのサブ画像の順序及びサブ画像の特徴量を記憶していてもよい。
サブ画像に関する情報を記憶装置に記憶させる場合、比較する画像が複数ある場合は、画像Ａに対する処理は１回で済むことになる。
【００３６】
照合モジュール１７０は、全体順序付モジュール１６０、加工モジュール１８０と接続されており、全体順序付モジュール１６０によって順序付けされたサブ画像の順序に基づいて、画像Ａと画像Ｂとの間で対応するそのサブ画像間の比較を行い、画像Ａと画像Ｂの差異を抽出し、その抽出した差異に関する情報を加工モジュール１８０へ渡す。また、照合モジュール１７０は、画像Ａ内におけるサブ画像の特徴量と画像Ｂ内におけるサブ画像の特徴量を用いて個々のサブ画像の比較を行い、その比較の順序は、全体順序付モジュール１６０によって順序付けされたサブ画像の順序に基づいて行うようにしてもよい。
また、全体順序付モジュール１６０によって記憶装置に画像Ａ内のサブ画像に関する情報が記憶されている場合は、照合モジュール１７０は、その記憶装置内のサブ画像に関する情報及び全体順序付モジュール１６０によって順序付けされた画像Ｂ内におけるサブ画像の順序に基づいて、画像Ａと画像Ｂとの間で対応するそのサブ画像間の比較を行い、画像Ａと画像Ｂの差異を抽出する。また、記憶装置に記憶された画像Ａ内におけるサブ画像の特徴量と画像Ｂ内におけるサブ画像の特徴量を用いて個々のサブ画像の比較を行い、その比較の順序は、記憶装置に記憶されている画像Ａ内のサブ画像の順序及び全体順序付モジュール１６０による画像Ｂ内のサブ画像の順序付けに基づいて行うようにしてもよい。
また、抽出する差異として、例えば、サブ画像の削除、挿入、変更がある。この場合、画像Ａと画像Ｂのサブ画像を順次比較し、一致しなかった後に、画像Ａのサブ画像を固定して画像Ｂのサブ画像を探索して一致するものがあった場合は「挿入」と判定し、画像Ｂのサブ画像を固定して画像Ａのサブ画像を探索して一致するものがあった場合は「削除」と判定し、いずれでもない場合は「変更」と判定するようにしてもよい。また、一致しなかった後に行う探索は、連続する複数のサブ画像に対して行うようにしてもよい。
【００３７】
加工モジュール１８０は、照合モジュール１７０、出力モジュール１９０と接続されており、照合モジュール１７０によって抽出された差異のあるサブ画像の位置に基づいて、画像Ａ又は画像Ｂを加工し、その加工した画像を出力モジュール１９０へ渡す。例えば、照合モジュール１７０で異なると判断されたサブ画像の位置に当たる画像Ａ又は画像Ｂに、異なることが判別できるように加工を施す。加工には、「記号（例えば、◆等）」などの印を付ける、文字を太くする／色を変える／背景色を変えるなどがある。また、画像自体を加工してもよいし、画像に付箋（アノテーション）を貼り付けてもよい。また、画像をディスプレイ等に表示する場合は、該当するサブ画像をブリンクする等を行うようにしてもよい。
出力モジュール１９０は、加工モジュール１８０と接続されており、加工モジュール１８０から加工された画像を受け取り、その画像を出力する。なお、画像を出力するとは、プリンタによって印刷すること、ディスプレイに画像を表示すること、ファックスで画像を送信すること、画像データベース等へ画像を格納すること等が含まれる。
【００３８】
図２は、本実施の形態による処理例を示すフローチャートである。
ステップＳ２１０からステップＳ２２４までの処理は画像Ａに対する処理であり、ステップＳ２３０からステップＳ２４４に対する処理は画像Ｂに対する処理である。両者は、同じ処理であるので、画像Ａに対する処理（ステップＳ２１０からステップＳ２２４までの処理）について説明し、画像Ｂに対する処理については説明を省略する。
【００３９】
ステップＳ２１２では、前処理モジュール１１０が、画像Ａに対して正立処理を行う。
ステップＳ２１４では、前処理モジュール１１０が、画像Ａに対してスキュー補正を行う。
ステップＳ２１６では、領域抽出モジュール１２０が、ステップＳ２１２、ステップＳ２１４で前処理された画像Ａの各ページから文字領域を抽出する。なお、文字領域だけでなく、図形領域等を抽出するようにしてもよい。
【００４０】
ここで、図４を用いて、文字領域等の抽出結果を格納する領域データテーブル４００について説明する。領域データテーブル４００は、Ｎｏ．欄４０１、左上ｘ座標欄４０２、左上ｙ座標欄４０３、幅欄４０４、高さ欄４０５、ページ欄４０６、領域欄４０７、領域順序欄４０８、サブ画像欄４０９を有している。サブ画像欄４０９は、最初欄４１０、最後欄４１１を有している。
Ｎｏ．欄４０１は、抽出した領域を一意に識別する符号を記憶する。
左上ｘ座標欄４０２、左上ｙ座標欄４０３、幅欄４０４、高さ欄４０５は、その領域を特定するためのものであり、それぞれは、そのページ内における矩形の領域の左上角のｘ座標、ｙ座標、領域の幅、高さを記憶する。これに限る必要はなく、左上座標と右下座標等であってもよい。
ページ欄４０６は、その画像におけるページ順序を記憶する。
領域欄４０７は、領域の種類（文字領域、図形領域等）を記憶する。ステップＳ２１８以降では、文字領域のみを対象として処理を行う。
領域順序欄４０８は、ステップＳ２１８による文字領域に対する順序付けの結果を記憶する。
サブ画像欄４０９は、その領域内にあるサブ画像を記憶する。最初欄４１０は、その領域内の先頭にあるサブ画像の図５の例に示すサブ画像データテーブル５００のＮｏ．欄５０１の符号を記憶する。最後欄４１１は、同様に、その領域内の最後尾にあるサブ画像の図５の例に示すサブ画像データテーブル５００のＮｏ．欄５０１の符号を記憶する。
【００４１】
ステップＳ２１８では、領域順序付モジュール１３０が、画像Ａの各ページ内における文字領域の順序付けを行う。この結果を領域データテーブル４００の領域順序欄４０８に記憶する。
ステップＳ２２０では、サブ画像抽出モジュール１４０が、画像Ａの各ページ（の文字領域）内からサブ画像を抽出する。
【００４２】
ここで、図５を用いて、サブ画像の抽出結果を格納するサブ画像データテーブル５００について説明する。サブ画像データテーブル５００は、Ｎｏ．欄５０１、左上ｘ座標欄５０２、左上ｙ座標欄５０３、幅欄５０４、高さ欄５０５、領域内順序欄５０６、ページ内順序欄５０７、全体順序欄５０８、フラグ欄５０９、サブ画像欄５１０を有している。
Ｎｏ．欄５０１は、抽出したサブ画像を一意に識別する符号を記憶する。
左上ｘ座標欄５０２、左上ｙ座標欄５０３、幅欄５０４、高さ欄５０５は、そのサブ画像を特定するためのものであり、それぞれは、そのページ内における矩形の領域の左上角のｘ座標、ｙ座標、領域の幅、高さを記憶する。これに限る必要はなく、左上座標と右下座標等であってもよい。
領域内順序欄５０６は、ステップＳ２２２による結果（その文字領域内のサブ画像の順序）を記憶する。
ページ内順序欄５０７、全体順序欄５０８は、ステップＳ２２４による結果（その画像内のサブ画像の順序）を記憶する。
フラグ欄５０９は、ステップＳ２６０、ステップＳ２６８、ステップＳ２７０による結果を記憶する。
サブ画像欄５１０は、そのサブ画像を記憶する。記憶する内容は、サブ画像そのものであってもよいし、サブ画像を記憶している場所へのリンクであってもよい。
【００４３】
ステップＳ２２２では、サブ画像順序付モジュール１５０が、サブ画像のその文字領域内における順序付けを行う。この結果をサブ画像データテーブル５００の領域内順序欄５０６に記憶する。
ステップＳ２２４では、全体順序付モジュール１６０が、サブ画像の画像Ａ内における順序付けを行う。つまり、複数の文字領域がある場合は、ステップＳ２１８での順序付けにしたがってサブ画像の順序付けを行い、複数ページである場合は、そのページ順にしたがってサブ画像の順序付けを行う。この結果をサブ画像データテーブル５００のページ内順序欄５０７、全体順序欄５０８に記憶する。
【００４４】
ステップＳ２５０からステップＳ２７０までの処理は、照合モジュール１７０が行う。
ステップＳ２５０では、画像Ａ及び画像Ｂ内のサブ画像に対して、ステップＳ２２４、ステップＳ２４４でそれぞれソートされた結果にしたがって、未照合のサブ画像を順次照合する。つまり、サブ画像のそれぞれの画像内における順序にしたがって、そのサブ画像間の照合を行う。常に同じ順序同士を照合するわけではないが、それぞれの順序で照合する。そして、すべてのサブ画像に対して照合が終了したときは、ステップＳ２７２へ進む。照合処理の詳細については図３を用いて後述する。
【００４５】
ステップＳ２５２では、ステップＳ２５０の照合処理の結果、２つのサブ画像が同一であるか否かを判断する。かかる判断において、同一であると判断した場合（Ｙ）はステップＳ２５０へ戻り、それ以外の場合（Ｎ）はステップＳ２５４へ進む。ただし、ここで同一とは、サブ画像間で差がないこと以外に、その差が所定範囲内にあることも含む（以下、同様）。
【００４６】
ステップＳ２５４では、画像Ａの一致しなかったサブ画像とそれに続く計Ｎ個（Ｎは０以上の整数）のサブ画像列に着目する。つまり、このサブ画像列をステップＳ２５６での固定した照合対象とする。
ステップＳ２５６では、画像Ｂのサブ画像で、一致しなかったサブ画像以降から、ステップＳ２５４の着目サブ画像列に一致するサブ画像列を照合する。
【００４７】
ステップＳ２５８では、ステップＳ２５６の照合処理の結果、２つのサブ画像列（画像Ａの着目サブ画像列と画像Ｂのサブ画像列）が一致するものがあるか否かを判断する。かかる判断において、一致するものがあると判断した場合（Ｙ）はステップＳ２６０へ進む、それ以外の場合（Ｎ）はステップＳ２６２へ進む。ただし、ここで一致とは、サブ画像列間で差がないこと以外に、その差が所定範囲内にあることも含む（以下、同様）。
ステップＳ２６０では、画像Ｂのサブ画像で、一致位置までのサブ画像列に「挿入」フラグを付ける。つまり、画像Ａの着目サブ画像列と同じものが、画像Ｂ内にあることが判明したので、それまでの間の画像Ｂのサブ画像は画像Ａと比べると挿入されたものである。この結果をサブ画像データテーブル５００のフラグ欄５０９に記憶する。
【００４８】
ステップＳ２６２、ステップＳ２６４は、ステップＳ２５４、ステップＳ２５６の逆の処理である。つまり、ステップＳ２５４、ステップＳ２５６は、画像Ａのサブ画像を固定して照合したが、ステップＳ２６２、ステップＳ２６４では画像Ｂのサブ画像を固定して照合する。
ステップＳ２６２では、画像Ｂの一致しなかったサブ画像とそれに続く計Ｎ個のサブ画像列に着目する。つまり、このサブ画像列をステップＳ２６４での固定した照合対象とする。
ステップＳ２６４では、画像Ａのサブ画像で、一致しなかったサブ画像以降から、ステップＳ２６２の着目サブ画像列に一致するサブ画像列を照合する。
【００４９】
ステップＳ２６６では、ステップＳ２６４の照合処理の結果、２つのサブ画像列（画像Ａのサブ画像列と画像Ｂの着目サブ画像列）が一致するものがあるか否かを判断する。かかる判断において、一致するものがあると判断した場合（Ｙ）はステップＳ２６８へ進む、それ以外の場合（Ｎ）はステップＳ２７０へ進む。
ステップＳ２６８では、画像Ａのサブ画像で、一致位置までのサブ画像列に「削除」フラグを付ける。つまり、画像Ｂの着目サブ画像列と同じものが、画像Ａ内にあることが判明したので、それまでの間の画像Ａのサブ画像は画像Ｂと比べると削除されたものである。この結果をサブ画像データテーブル５００のフラグ欄５０９に記憶する。
【００５０】
ステップＳ２７０では、画像Ａ、画像Ｂの着目サブ画像列の最初の１つに、それぞれ「変更」フラグを付ける。つまり、いずれの着目サブ画像も他方の画像内には存在しなかったことが判明したので、着目サブ画像列の最初のものは変更されたものである。この結果をサブ画像データテーブル５００のフラグ欄５０９に記憶する。
ステップＳ２７２では、加工モジュール１８０が、ステップＳ２５０からステップＳ２７０までの処理で、「削除」、「挿入」、「変更」と判断されたサブ画像の位置を加工する。つまり、サブ画像データテーブル５００のフラグ欄５０９に基づいて、該当するサブ画像の位置（サブ画像データテーブル５００の左上ｘ座標欄５０２から高さ欄５０５）を加工する。
【００５１】
図３は、本実施の形態によるサブ画像の照合処理例を示すフローチャートである。つまり、図２に示すフローチャート内のステップＳ２５０の照合処理についてであり、照合モジュール１７０が行う処理である。
ステップＳ３１０では画像Ａのサブ画像を受け取り、ステップＳ３２０では画像Ｂのサブ画像を受け取る。つまり、比較すべき両者のサブ画像を受け取る。
【００５２】
ステップＳ３３０では、両者のサブ画像の特徴量１（例えば、サブ画像の外接矩形の大きさ、より具体的にはサブ画像データテーブル５００の幅欄５０４と高さ欄５０５）を比較する。
ステップＳ３３２では、ステップＳ３３０での比較の結果、つまり差が所定範囲内であるか否かを判断する。かかる判断において所定範囲内である場合（Ｙ）はステップＳ３３４へ進み、それ以外の場合（Ｎ）はステップＳ３４８へ進む。
【００５３】
ステップＳ３３４では、両者のサブ画像の特徴量２（例えば、サブ画像の黒画素数）を比較する。
ステップＳ３３６では、ステップＳ３３４での比較の結果、つまり差が所定範囲内であるか否かを判断する。かかる判断において所定範囲内である場合（Ｙ）はステップＳ３３８へ進み、それ以外の場合（Ｎ）はステップＳ３４８へ進む。
【００５４】
ステップＳ３３８では、両者のサブ画像の特徴量３（例えば、サブ画像を細線化した後の黒画素数）を比較する。なお、ここで、細線化したものを対象とするのは、書体に左右されないようにするため、又はスキャナで読み込んだ場合の濃度の影響を少なくするためである。
ステップＳ３４０では、ステップＳ３３８での比較の結果、つまり差が所定範囲内であるか否かを判断する。かかる判断において所定範囲内である場合（Ｙ）はステップＳ３４２へ進み、それ以外の場合（Ｎ）はステップＳ３４８へ進む。
【００５５】
ステップＳ３４２では、両者のサブ画像の特徴量４（例えば、サブ画像間でのパターンマッチング後の相関係数値、より具体的には２つのサブ画像間のＥＯＲ演算後の１の画素数）を比較する。
ステップＳ３４４では、ステップＳ３４２での比較の結果、つまり差が所定範囲内であるか否かを判断する。かかる判断において所定範囲内である場合（Ｙ）はステップＳ３４６へ進み、それ以外の場合（Ｎ）はステップＳ３４８へ進む。
【００５６】
ステップＳ３４６では、対象としている画像Ａのサブ画像と画像Ｂのサブ画像は一致していると判定する。つまり、図２に示すフローチャートでは、ステップＳ２５２でＹの場合である。
ステップＳ３４８では、対象としている画像Ａのサブ画像と画像Ｂのサブ画像は不一致と判定する。つまり、図２に示すフローチャートでは、ステップＳ２５２でＮの場合である。
なお、図３に示す処理例は、比較処理負荷が少ないものから順に４段階の比較を行っている。これは、不一致のものは負荷の大きな処理をしないで済むようにするためである。比較の段階数については、より多くの比較を行ってもよいし（例えば、文字認識処理に用いられる特徴抽出と同等の処理を行い、その結果を比較する等を追加）、少ない比較であってもよい。また、比較する特徴量はこれらに示した例に限られず、他の特徴量を用いてもよい。
【００５７】
図６、図７、図８は、本実施の形態によるケース１の処理例を示す説明図である。
図６（ａ１）、（ｂ１）は、画像Ａとして画像６１０を例示し、画像Ｂとして画像６２０を例示したものである。つまり、画像６２０は、画像６１０の行間を変更し、文字の一部分が変更されたものである。この場合、画像６１０と画像６２０とで全体の位置合わせを行い、画像として差異を抽出するようにした場合、行間が異なっているので、「提案内容」以降のものはすべて異なっていると判定してしまう。
図６（ａ２）、（ｂ２）に示す画像６１０、画像６２０は、領域抽出モジュール１２０による抽出結果を示したものである。つまり、画像６１０は、文字領域６１１、文字領域６１２を有しており、画像６２０は、文字領域６２１、文字領域６２２、文字領域６２３を有していると判定される。これは、画像６１０と画像６２０は、行間が異なるためである。
そして、領域順序付モジュール１３０によって、領域順序は画像６１０が文字領域６１１、６１２であり、画像６２０が文字領域６２１、６２２、６２３となる。
【００５８】
図７は、画像６１０、画像６２０に対して、サブ画像抽出モジュール１４０、サブ画像順序付モジュール１５０、全体順序付モジュール１６０及び照合モジュール１７０による処理結果を示したものである。つまり、サブ画像抽出モジュール１４０によって抽出されたサブ画像（文字）を矩形で囲んで示しており、サブ画像順序付モジュール１５０、全体順序付モジュール１６０によって順序付けされた順序にサブ画像を並べたもの（サブ画像７０１ａからサブ画像７３３ａ、サブ画像７０１ｂからサブ画像７３３ｂ）である。つまり、文字領域が２つに分かれたとしても、サブ画像の順序は領域を通した順序になる。この順序付けされたサブ画像を照合モジュール１７０によって照合する。つまり、それぞれのサブ画像の順序にしたがって、対応するサブ画像間（例えば、サブ画像７０１ａとサブ画像７０１ｂ、・・・）の比較を行い、その結果、サブ画像７０１ａからサブ画像７１５ａとサブ画像７０１ｂからサブ画像７１５ｂはそれぞれ一致すると判定される。つまり、図２に示すフローチャートでは、ステップＳ２５０、ステップＳ２５２が繰り返される。そして、サブ画像７１６ａ「ろ」とサブ画像７１６ｂ「ｘ」では不一致と判定され、ステップＳ２５４、Ｓ２５６、Ｓ２５８、Ｓ２６２、Ｓ２６４、Ｓ２６６、Ｓ２７０の処理が行われ、サブ画像７１６ａは変更されてサブ画像７１６ｂになったと判定される。同様に、サブ画像７１７ａ「わ」とサブ画像７１７ｂ「ｘ」、サブ画像７２９ａ「か」とサブ画像７２９ｂ「ｘ」、サブ画像７３０ａ「き」とサブ画像７３０ｂ「ｘ」が「変更」と判定される。
【００５９】
図８は、加工モジュール１８０が画像６２０（画像Ｂ）に対して、「変更」と判定されたサブ画像（サブ画像７１６ｂ、７１７ｂ、７２９ｂ、７３０ｂ）の位置に加工を施した例を示したものである。例えば、図８（ａ）に示す画像８１０は、その位置にあるサブ画像（文字８１１、８１２、８１３、８１４）を太字にしている。また、図８（ｂ）に示す画像８２０は、その位置にあるサブ画像（加工文字８２１、８２２、８２３、８２４）の背景を着色している。
【００６０】
図９から図１５は、本実施の形態によるケース２の処理例を示す説明図である。このケース２は、それぞれの画像が複数ページであり、挿入、削除が行われている場合を示している。
図９（ａ１）、（ａ２）は、画像Ａとして画像９１１、９２１を例示し、図９（ｂ１）、（ｂ２）は、画像Ｂとして画像９５１、９７１を例示したものである。つまり、画像Ｂは、文字が挿入等され、画像９７１に前ページの文字列の一部がはみ出したものである。
図９（ａ３）、（ａ４）、（ｂ３）、（ｂ４）に示す画像９１１、９２１、画像９５１、９７１は、領域抽出モジュール１２０による抽出結果を示したものである。つまり、画像９１１は、文字領域９３１、９３２を有しており、画像９２１は、文字領域９３３から文字領域９３７を有しており、画像９５１は、文字領域９８１、９８２を有しており、画像９７１は、文字領域９８３から文字領域９８８を有していると判定される。
そして、領域順序付モジュール１３０によって、領域順序は画像９１１が文字領域９３１、９３２であり、画像９２１が文字領域９３３、９３４、９３５、９３６、９３７であり、画像９５１が文字領域９８１、９８２であり、画像９７１が文字領域９８３、９８４、９８５、９８６、９８７、９８８となる。
【００６１】
図１０（ａ）、（ｂ）は、画像９１１、９２１の画像Ａ、画像９５１、９７１の画像Ｂに対して、サブ画像抽出モジュール１４０、サブ画像順序付モジュール１５０及び全体順序付モジュール１６０による処理結果を示したものである。つまり、サブ画像抽出モジュール１４０によって抽出されたサブ画像（文字）を矩形で囲んで示しており、サブ画像順序付モジュール１５０、全体順序付モジュール１６０によって順序付けされた順序にサブ画像を並べたもの（画像Ａは６０個、画像Ｂは６６個のサブ画像）である。つまり、複数ページ、複数領域であったとしても、サブ画像の順序はページ、領域を通した順序になる。
【００６２】
図１１（ａ）、（ｂ）は、照合モジュール１７０による処理の途中（図２に示したフローチャートにおいてステップＳ２５０からステップＳ２５８）を表したものである。つまり、ステップＳ２５０、Ｓ２５２で、互いに１２個のサブ画像までは一致すると判定する。そして、図２に示したフローチャートにおいてステップＳ２５４でＮを１とした場合、つまり画像Ａの２個のサブ画像列（「い」と「う」）を着目サブ画像列とし、それを画像Ｂ内のその後のサブ画像列（１３個目のサブ画像以降）から探索する（ステップＳ２５６）。この場合、一致するものはないのでステップＳ２６２へ進む。なお、図１１から図１４では、比較の結果、一致するものは点線の矢印、不一致のものは実線の矢印で示している。
【００６３】
図１２（ａ）、（ｂ）は、照合モジュール１７０による処理の途中（図２に示したフローチャートにおいてステップＳ２５０からステップＳ２６８、つまり「挿入」と「削除」を判定する処理）を表したものである。ステップＳ２６２で画像Ｂの２個のサブ画像列（「わ」と「を」）を着目サブ画像列とし、それを画像Ａ内のその後のサブ画像列（１３個目のサブ画像以降）から探索する（ステップＳ２６４）。この場合、一致するものが１７個目のサブ画像の列（「わ」と「を」）であるのでステップＳ２６８へ進む。ステップＳ２６８では、互いに一致しないと判定された画像Ａ内のサブ画像（１３個目）から画像Ｂの着目サブ画像列と一致すると判定されたサブ画像の直前までのサブ画像（１６個目）までを削除サブ画像１２０１とする。
そして、この後、画像Ａの１７個目（「わ」）から２８個目（「ろ」）までと画像Ｂの１３個目（「わ」）から２４個目（「ろ」）までは、互いに一致するのでステップＳ２５０、Ｓ２５２による処理を繰り返す。
そして、画像Ａの２９個目のサブ画像（「か」）と画像Ｂの２５個目のサブ画像（「の」）は不一致であるので、画像Ａの２９個目と３０個目のサブ画像列（「か」と「き」）を着目サブ画像列とし、それを画像Ｂ内のその後のサブ画像列（２６個目のサブ画像以降）から探索する。この場合、一致するものが３０個目のサブ画像の列（「か」と「き」）であるのでステップＳ２６０へ進む。ステップＳ２６０では、互いに一致しないと判定された画像Ｂ内のサブ画像（２５個目）から画像Ａの着目サブ画像列と一致すると判定されたサブ画像の直前までのサブ画像（２９個目）までを挿入サブ画像１２０２とする。
そして、その後、画像Ａの３１個目のサブ画像と画像Ｂの３２個目のサブ画像は一致すると判定され、処理が続く。
【００６４】
図１３（ａ）、（ｂ）は、同様に処理を繰り返して、画像Ｂから挿入サブ画像１３０１を判定し、その後、画像Ａの着目サブ画像列（「の」と「は」）と一致するものを画像Ｂのその後のサブ画像列から発見できていない状態を示したものである。
図１４（ａ）、（ｂ）は、同様の処理を繰り返して、画像Ａから削除サブ画像１４０１を判定し、画像Ｂから挿入サブ画像１４０２を判定した結果を示したものである。
まとめると、画像Ａと画像Ｂの差異として、削除サブ画像１２０１、１４０１、挿入サブ画像１２０２、１３０１、１４０２を判定している。
【００６５】
図１５は、加工モジュール１８０が画像９５１、９７１（画像Ｂ）に対して、「削除」、「挿入」と判定されたサブ画像（削除サブ画像１２０１、１４０１、挿入サブ画像１２０２、１３０１、１４０２）の位置に加工を施した例を示したものである。
例えば、図１５（ａ１）、（ａ２）に示すものは、「削除」部分は、そのサブ画像の前後各１つずつのサブ画像を太線化して色を変更したものである（文字１５１１と１５２２、文字１５２３と１５２４）。そして、「挿入」部分は、太線化して色を変更したもの（「削除」とは異なる色）である（文字１５１３から１５１７、文字１５１８から１５２２、文字１５２５から１５２７）。
また、図１５（ｂ１）、（ｂ２）に示すものは、「削除」部分は、そのサブ画像の前後各１つずつのサブ画像を太線化して背景色を変更したものである（加工文字１５３１、加工文字１５３４）。そして、「挿入」部分は、太線化して背景色を変更したもの（「削除」とは異なる色）である（加工文字１５３２、加工文字１５３３、加工文字１５３５）。
また、図１５（ｃ１）、（ｃ２）に示すものは、「削除」部分に当たる位置に記号（◆）を付したものである（加工画像１５４１、１５５２）。そして、「挿入」部分は、太線化して色を変更したもの（「削除」の記号とは異なる色）である（文字１５４２から１５４６、文字１５４７から１５５１、文字１５５３から１５５５）。
【００６６】
図１６を参照して、本実施の形態のハードウェア構成例について説明する。図１６に示す構成は、例えばパーソナルコンピュータ（ＰＣ）などによって構成されるものであり、スキャナ等のデータ読み取り部１６１７と、プリンタなどのデータ出力部１６１８を備えたハードウェア構成例を示している。
【００６７】
ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１６０１は、前述の実施の形態において説明した各種のモジュール、すなわち、領域抽出モジュール１２０、領域順序付モジュール１３０、サブ画像抽出モジュール１４０、サブ画像順序付モジュール１５０、全体順序付モジュール１６０、照合モジュール１７０等の各モジュールの実行シーケンスを記述したコンピュータ・プログラムにしたがった処理を実行する制御部である。
【００６８】
ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１６０２は、ＣＰＵ１６０１が使用するプログラムや演算パラメータ等を格納する。ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１６０３は、ＣＰＵ１６０１の実行において使用するプログラムや、その実行において適宜変化するパラメータ等を格納する。これらはＣＰＵバスなどから構成されるホストバス１６０４により相互に接続されている。
【００６９】
ホストバス１６０４は、ブリッジ１６０５を介して、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ／Ｉｎｔｅｒｆａｃｅ）バスなどの外部バス１６０６に接続されている。
【００７０】
キーボード１６０８、マウス等のポインティングデバイス１６０９は、操作者により操作される入力デバイスである。ディスプレイ１６１０は、液晶表示装置又はＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）などから成り、各種情報をテキストやイメージ情報として表示する。
【００７１】
ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）１６１１は、ハードディスクを内蔵し、ハードディスクを駆動し、ＣＰＵ１６０１によって実行するプログラムや情報を記録又は再生させる。ハードディスクには、受け付けられた画像や加工モジュール１８０によって加工された画像などが格納される。さらに、その他の各種のデータ処理プログラム等、各種コンピュータ・プログラムが格納される。
【００７２】
ドライブ１６１２は、装着されている磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリ等のリムーバブル記録媒体１６１３に記録されているデータ又はプログラムを読み出して、そのデータ又はプログラムを、インタフェース１６０７、外部バス１６０６、ブリッジ１６０５、及びホストバス１６０４を介して接続されているＲＡＭ１６０３に供給する。リムーバブル記録媒体１６１３も、ハードディスクと同様のデータ記録領域として利用可能である。
【００７３】
接続ポート１６１４は、外部接続機器１６１５を接続するポートであり、ＵＳＢ、ＩＥＥＥ１３９４等の接続部を持つ。接続ポート１６１４は、インタフェース１６０７、及び外部バス１６０６、ブリッジ１６０５、ホストバス１６０４等を介してＣＰＵ１６０１等に接続されている。通信部１６１６は、ネットワークに接続され、外部とのデータ通信処理を実行する。データ読み取り部１６１７は、例えばスキャナであり、ドキュメントの読み取り処理を実行する。データ出力部１６１８は、例えばプリンタであり、ドキュメントデータの出力処理を実行する。
【００７４】
なお、図１６に示すハードウェア構成は、１つの構成例を示すものであり、本実施の形態は、図１６に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア（例えば特定用途向け集積回路（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ：ＡＳＩＣ）等）で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに図１６に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、複写機、ファックス、スキャナ、プリンタ、複合機（スキャナ、プリンタ、複写機、ファックス等のいずれか２つ以上の機能を有している画像処理装置）などに組み込まれていてもよい。
【００７５】
前述の実施の形態においては、図２に示すフローチャートにおいて、ステップＳ２５０以下の処理で、「挿入」、「削除」、「変更」を判定する処理例を示したが、予め「変更」のみであると判明している場合又は挿入、削除も変更として判定する場合（つまり、挿入、削除あった以降はすべて変更）は、ステップＳ２５０以降の処理を、ステップＳ２２４、ステップＳ２４４でソートされた順に両者のサブ画像を照合し、異なるサブ画像にフラグを付け、その異なると判定されたサブ画像の位置を加工するようにしてもよい。
また、前述の実施の形態では、加工モジュール１８０は、画像Ｂを基にして加工を行っている例を示したが、画像Ａを基にして加工するようにしてもよい。また、両方の画像に加工を施すようにしてもよい。すなわち、画像Ａには削除部分についての加工を行い、画像Ｂには挿入部分の加工を行うようにしてもよい。なお、変更部分についてはいずれか一方又は両方の画像に加工を行うようにしてもよい。
また、照合モジュール１７０が行う照合処理については、前述のもの以外に文字列（テキスト列）に用いられている照合処理を適用してもよい。
【００７６】
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通などのために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク（ＤＶＤ）であって、ＤＶＤフォーラムで策定された規格である「ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ、ＤＶＤ−ＲＡＭ等」、ＤＶＤ＋ＲＷで策定された規格である「ＤＶＤ＋Ｒ、ＤＶＤ＋ＲＷ等」、コンパクトディスク（ＣＤ）であって、読出し専用メモリ（ＣＤ−ＲＯＭ）、ＣＤレコーダブル（ＣＤ−Ｒ）、ＣＤリライタブル（ＣＤ−ＲＷ）等、光磁気ディスク（ＭＯ）、フレキシブルディスク（ＦＤ）、磁気テープ、ハードディスク、読出し専用メモリ（ＲＯＭ）、電気的消去及び書換可能な読出し専用メモリ（ＥＥＰＲＯＭ）、フラッシュ・メモリ、ランダム・アクセス・メモリ（ＲＡＭ）等が含まれる。
そして、前記のプログラム又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク（ＬＡＮ）、メトロポリタン・エリア・ネットワーク（ＭＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、あるいは無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して
記録されていてもよい。また、圧縮や暗号化など、復元可能であればどのような態様で記録されていてもよい。
【図面の簡単な説明】
【００７７】
【図１】本実施の形態の構成例についての概念的なモジュール構成図である。
【図２】本実施の形態による処理例を示すフローチャートである。
【図３】本実施の形態によるサブ画像の照合処理例を示すフローチャートである。
【図４】領域データテーブルのデータ構造例を示す説明図である。
【図５】サブ画像データテーブルのデータ構造例を示す説明図である。
【図６】本実施の形態によるケース１の処理例を示す説明図である。
【図７】本実施の形態によるケース１の処理例を示す説明図である。
【図８】本実施の形態によるケース１の処理例を示す説明図である。
【図９】本実施の形態によるケース２の処理例を示す説明図である。
【図１０】本実施の形態によるケース２の処理例を示す説明図である。
【図１１】本実施の形態によるケース２の処理例を示す説明図である。
【図１２】本実施の形態によるケース２の処理例を示す説明図である。
【図１３】本実施の形態によるケース２の処理例を示す説明図である。
【図１４】本実施の形態によるケース２の処理例を示す説明図である。
【図１５】本実施の形態によるケース２の処理例を示す説明図である。
【図１６】本実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。
【符号の説明】
【００７８】
１００…画像受付モジュール
１１０…前処理モジュール
１２０…領域抽出モジュール
１３０…領域順序付モジュール
１４０…サブ画像抽出モジュール
１５０…サブ画像順序付モジュール
１６０…全体順序付モジュール
１７０…照合モジュール
１８０…加工モジュール
１９０…出力モジュール
【図１】
0004539756.tif 000002
【図２】
0004539756.tif 000003
【図３】
0004539756.tif 000004
【図４】
0004539756.tif 000005
【図５】
0004539756.tif 000006
【図６】
0004539756.tif 000007
【図７】
0004539756.tif 000008
【図８】
0004539756.tif 000009
【図９】
0004539756.tif 000010
【図１０】
0004539756.tif 000011
【図１１】
0004539756.tif 000012
【図１２】
0004539756.tif 000013
【図１３】
0004539756.tif 000014
【図１４】
0004539756.tif 000015
【図１５】
0004539756.tif 000016
【図１６】
0004539756.tif 000017