(57)【特許請求の範囲】
【請求項１】
原文書と該原文書を基にして作成された版文書によって構成されている文書群を記憶する文書群記憶手段と、
受け付けた文書に対応する文書群を前記文書群記憶手段から検索する文書群検索手段と、
前記文書群検索手段によって検索された文書群における前記受け付けた文書の版を判定する版判定手段と、
前記版判定手段によって判定された文書の版に基づいて、該文書を含めた前記文書群記憶手段内の前記文書群を更新する文書群更新手段
を具備し、
前記文書群は、前記原文書を根とし、前記版文書を子とした木構造であり、
前記文書群検索手段は、前記受け付けた文書と前記文書群内の予め定められた位置にある文書との類似度を算出し、類似する文書群を検索結果とし、
前記版判定手段は、前記検索結果の文書群の木構造を根から葉までの１次元の連とし、該連内での文書と前記受け付けた文書とを比較することによって、該連内での位置を決定し、該位置によって文書の版を判定する
ことを特徴とする画像処理装置。
【請求項２】
前記文書群更新手段は、文書群内の文書に対して新規又は改変された領域を前記受け付けた文書から抽出し、該抽出した領域を前記受け付けた文書として前記文書群記憶手段に記憶させる
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記版判定手段は、前記文書群記憶手段に記憶されている領域を合成した文書と前記受け付けた文書を比較することによって、該受け付けた文書の版を判定する
ことを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記版判定手段は、前記文書群記憶手段に記憶されている領域と前記受け付けた文書内の対応する領域を比較することによって、該受け付けた文書の版を判定する
ことを特徴とする請求項２に記載の画像処理装置。
【請求項５】
コンピュータを、
原文書と該原文書を基にして作成された版文書によって構成されている文書群を記憶する文書群記憶手段と、
受け付けた文書に対応する文書群を前記文書群記憶手段から検索する文書群検索手段と、
前記文書群検索手段によって検索された文書群における前記受け付けた文書の版を判定する版判定手段と、
前記版判定手段によって判定された文書の版に基づいて、該文書を含めた前記文書群記憶手段内の前記文書群を更新する文書群更新手段
として機能させ、
前記文書群は、前記原文書を根とし、前記版文書を子とした木構造であり、
前記文書群検索手段は、前記受け付けた文書と前記文書群内の予め定められた位置にある文書との類似度を算出し、類似する文書群を検索結果とし、
前記版判定手段は、前記検索結果の文書群の木構造を根から葉までの１次元の連とし、該連内での文書と前記受け付けた文書とを比較することによって、該連内での位置を決定し、該位置によって文書の版を判定する
ことを特徴とする画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置及び画像処理プログラムに関する。
【背景技術】
【０００２】
特許文献１には、電子文書と加筆重畳画像とからの加筆抽出の際に、加筆情報が存在しない領域での引き残しの発生を抑制でき、かつ、より精度の高い加筆抽出を行うことができる加筆抽出装置及び加筆抽出方法を提供することを課題とし、加筆抽出装置は、電子文書の原稿画像と電子文書を紙へ出力した後に手書きの加筆が重畳した状態でスキャナ等の画像読取装置で再び電子化された画像とから、文字認識を用いて所望の領域を小領域に分割して小領域毎に加筆抽出操作の必要性の有無を判定する領域分割部と、これによって分割され差分計算が必要と判定された小領域に対して差分計算を行う画像差分部と、これによって差分処理された画像に対して補間処理を行う画像補間部とを有し、これにより、加筆抽出の精度が向上することが開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−２１３２３０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明は、受け付けた文書を文書群内の版文書とすることができないという問題を解決するようにした画像処理装置及び画像処理プログラムを提供することを目的としている。
【課題を解決するための手段】
【０００５】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
請求項１の発明は、原文書と該原文書を基にして作成された版文書によって構成されている文書群を記憶する文書群記憶手段と、受け付けた文書に対応する文書群を前記文書群記憶手段から検索する文書群検索手段と、前記文書群検索手段によって検索された文書群における前記受け付けた文書の版を判定する版判定手段と、前記版判定手段によって判定された文書の版に基づいて、該文書を含めた前記文書群記憶手段内の前記文書群を更新する文書群更新手段を具備し、前記文書群は、前記原文書を根とし、前記版文書を子とした木構造であり、前記文書群検索手段は、前記受け付けた文書と前記文書群内の予め定められた位置にある文書との類似度を算出し、類似する文書群を検索結果とし、前記版判定手段は、前記検索結果の文書群の木構造を根から葉までの１次元の連とし、該連内での文書と前記受け付けた文書とを比較することによって、該連内での位置を決定し、該位置によって文書の版を判定することを特徴とする画像処理装置である。
【０００６】
請求項２の発明は、前記文書群更新手段は、文書群内の文書に対して新規又は改変された領域を前記受け付けた文書から抽出し、該抽出した領域を前記受け付けた文書として前記文書群記憶手段に記憶させることを特徴とする請求項１に記載の画像処理装置である。
【０００７】
請求項３の発明は、前記版判定手段は、前記文書群記憶手段に記憶されている領域を合成した文書と前記受け付けた文書を比較することによって、該受け付けた文書の版を判定することを特徴とする請求項２に記載の画像処理装置である。
【０００８】
請求項４の発明は、前記版判定手段は、前記文書群記憶手段に記憶されている領域と前記受け付けた文書内の対応する領域を比較することによって、該受け付けた文書の版を判定することを特徴とする請求項２に記載の画像処理装置である。
【０００９】
請求項５の発明は、コンピュータを、原文書と該原文書を基にして作成された版文書によって構成されている文書群を記憶する文書群記憶手段と、受け付けた文書に対応する文書群を前記文書群記憶手段から検索する文書群検索手段と、前記文書群検索手段によって検索された文書群における前記受け付けた文書の版を判定する版判定手段と、前記版判定手段によって判定された文書の版に基づいて、該文書を含めた前記文書群記憶手段内の前記文書群を更新する文書群更新手段として機能させ、前記文書群は、前記原文書を根とし、前記版文書を子とした木構造であり、前記文書群検索手段は、前記受け付けた文書と前記文書群内の予め定められた位置にある文書との類似度を算出し、類似する文書群を検索結果とし、前記版判定手段は、前記検索結果の文書群の木構造を根から葉までの１次元の連とし、該連内での文書と前記受け付けた文書とを比較することによって、該連内での位置を決定し、該位置によって文書の版を判定することを特徴とする画像処理プログラムである。
【発明の効果】
【００１０】
請求項１の画像処理装置によれば、受け付けた文書を文書群内の版文書とすることができる。
【００１１】
請求項２の画像処理装置によれば、受け付けた文書を全て記憶する場合に比較して、文書群記憶手段に記憶させる容量を減少させることができる。
【００１２】
請求項３の画像処理装置によれば、文書群記憶手段に記憶されている領域を用いた文書の比較ができる。
【００１３】
請求項４の画像処理装置によれば、文書全体を比較する場合に比較して、版判定に要する比較処理を減少させることができる。
【００１４】
請求項５の画像処理プログラムによれば、受け付けた文書を文書群内の版文書とすることができる。
【図面の簡単な説明】
【００１５】
【図１】本実施の形態の構成例についての概念的なモジュール構成図である。
【図２】本実施の形態が取り扱う文書群の木構造の例を示す説明図である。
【図３】類似する文書群の判定処理例を示すフローチャートである。
【図４】特徴テーブルのデータ構造例を示す説明図である。
【図５】履歴判定処理例を示すフローチャートである。
【図６】文書群Ａの根から葉までの一連の文書群の例を示す説明図である。
【図７】文書群Ｂの根から葉までの一連の文書群の例を示す説明図である。
【図８】履歴更新処理例を示すフローチャートである。
【図９】文書テーブルのデータ構造例を示す説明図である。
【図１０】本実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【００１６】
以下、図面に基づき本発明を実現するにあたっての好適な一実施の形態の例を説明する。
図１は、本実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア（コンピュータ・プログラム）、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、コンピュータ・プログラム、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するの意である。また、モジュールは機能に一対一に対応していてもよいが、実装においては、１モジュールを１プログラムで構成してもよいし、複数モジュールを１プログラムで構成してもよく、逆に１モジュールを複数プログラムで構成してもよい。また、複数モジュールは１コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって１モジュールが複数コンピュータで実行されてもよい。なお、１つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続（データの授受、指示、データ間の参照関係等）の場合にも用いる。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク（一対一対応の通信接続を含む）等の通信手段で接続されて構成されるほか、１つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。「予め定められた」とは、対象としている処理の前に定まっていることをいい、本実施の形態による処理が始まる前はもちろんのこと、本実施の形態による処理が始まった後であっても、対象としている処理の前であれば、そのときの状況・状態に応じて、又はそれまでの状況・状態に応じて定まることの意を含めて用いる。また、管理という用語を用いるが、これは文脈に応じて、制御する、マネジメントする、制御又はマネジメントするためのデータを記憶するの意で用い、その役割又は動作をさす。
【００１７】
なお、文書とは、テキストデータ、場合によっては画像、動画、音声等の電子データ、又はこれらの組み合わせであり、記憶、編集及び検索等の対象となり、システム又は利用者間で個別の単位として交換できるものをいい、これらに類似するものを含む。特に、文書としての画像には、紙文書をスキャナで読み取った画像が含まれる。以下、文書として、画像を主に例示して説明する。
【００１８】
本実施の形態である画像処理装置は、図１に示すように、文書受付モジュール１１０、文書検索モジュール１２０、文書ファイル記憶モジュール１３０、履歴判定モジュール１４０、履歴更新モジュール１５０を有している。
【００１９】
文書受付モジュール１１０は、文書検索モジュール１２０と接続されており、文書１００を受け付けて、その文書１００を文書検索モジュール１２０へ渡す。画像を受け付けるとは、例えば、スキャナ、カメラ等で画像を読み込むこと、ファックス等で通信回線を介して外部機器から画像を受信することハードディスク（コンピュータに内蔵されているものの他に、ネットワークを介して接続されているもの等を含む）等に記憶されている画像を読み出すこと等が含まれる。画像は、２値画像、多値画像（カラー画像を含む）であってもよい。受け付ける画像は、１枚であってもよいし、複数枚であってもよい。また、画像の内容として、限定することはないが、例えば、ビジネスに用いられる文書の他、広告宣伝用のパンフレット等であってもよい。
また、文書には、原文書（改定が施されていない初版（新規）の文書）の他に、手書きでの加筆など、順次改定された文書が含まれる。ただし、文書受付モジュール１１０が受け付ける文書の順番は、改定された文書の順番又は時系列に沿うとは限られず、途中で複数の版が生成される場合（いわゆる枝分かれ）もある。また、原文書であるか否かの指定、一連の版文書であるか否かの指定等もない。
【００２０】
文書ファイル記憶モジュール１３０は、文書検索モジュール１２０、履歴判定モジュール１４０、履歴更新モジュール１５０と接続されている。文書ファイル記憶モジュール１３０は、原文書とその原文書を基にして作成された版文書によって構成されている文書群を記憶する。いわゆる版管理された文書群を記憶する。なお、１つの文書群という場合は、１つの原文書から派生した版文書（原文書を含む）の集合である。
文書群には、ある版の文書を基にしてさらに生成された文書（いわゆる３版以降）を含んでいてもよいし、ある版の文書を基にして生成された２つ以上の文書を含んでいてもよい。例えば、具体的には、この文書群が木構造である場合、原文書が木構造における根の位置にあり、ある版の文書を基にして２つ以上の版が生成された場合とは、枝別れする場合であり、木構造における葉の位置にある文書は２つ以上となる。
【００２１】
図２は、本実施の形態の文書ファイル記憶モジュール１３０が取り扱う文書群の木構造の例を示す説明図である。図２（Ａ）は、文書Ａ（Ａ−１）を原文書として２つに枝分かれし、最終的には葉として４つの版文書（Ａ−１１１、Ａ−１２１、Ａ−１２２１、Ａ−１２３）ができている状態を示している。例えば、文書Ａ−１２１は文書Ａ−１２を基にして作成されたものであり、さらに文書Ａ−１２は文書Ａ−１を基にして作成されたものであることが表現されている。同様に、図２（Ｂ）は、文書Ｂ（Ｂ−１）を原文書として３つに枝分かれし、最終的には葉として５つの版文書（Ｂ−１１１１、Ｂ−１２１、Ｂ−１２２１、Ｂ−１３１１、Ｂ−１３１２）ができている状態を示している。
なお、文書ファイル記憶モジュール１３０は文書そのもののデータの他に、後述する履歴更新モジュール１５０によって抽出された文書内の領域、特徴テーブル４００、文書テーブル９００等を記憶している。
【００２２】
文書検索モジュール１２０は、文書受付モジュール１１０、文書ファイル記憶モジュール１３０、履歴判定モジュール１４０と接続されている。文書検索モジュール１２０は、文書１００に対応する文書群を文書ファイル記憶モジュール１３０から検索する。そして、検索した文書群を履歴判定モジュール１４０へ渡す。
例えば、具体的には、文書１００に類似する文書を文書ファイル記憶モジュール１３０から検索する。検索対象とする文書として、文書ファイル記憶モジュール１３０内の文書群内の全ての文書であってもよいが、文書群内の予め定められた文書（１つであってもよいし、複数であってもよい）、例えば、原文書、その木構造における葉の位置にある文書、最新の文書等としてもよい。
類似するか否かは、例えば、文書内の構造を解析し、その構造の類否によって判断するようにしてもよい。より具体的には、その文書内のタイトル、段落、図等の位置、大きさを構造解析によって抽出し、それらを比較する。また、文字領域については文字認識を行い、その結果を用いるようにしてもよい。
【００２３】
履歴判定モジュール１４０は、文書検索モジュール１２０、文書ファイル記憶モジュール１３０、履歴更新モジュール１５０と接続されている。履歴判定モジュール１４０は、文書検索モジュール１２０によって検索された文書群における文書１００の版を判定する。文書１００の版とは、その文書群における改変の履歴でもある。そして、判定した版を履歴更新モジュール１５０へ渡す。また、履歴判定モジュール１４０は、文書ファイル記憶モジュール１３０に記憶されている領域を合成した文書と文書１００を比較することによって、文書１００の版を判定するようにしてもよい。また、履歴判定モジュール１４０は、文書ファイル記憶モジュール１３０に記憶されている領域と文書１００内の対応する領域を比較することによって、文書１００の版を判定するようにしてもよい。
【００２４】
履歴更新モジュール１５０は、文書ファイル記憶モジュール１３０、履歴判定モジュール１４０と接続されている。履歴更新モジュール１５０は、履歴判定モジュール１４０によって判定された文書の版に基づいて、その文書を含めた文書ファイル記憶モジュール１３０内の文書群を更新する。また、履歴更新モジュール１５０は、文書群内の文書に対して新規又は改変された領域を文書１００から抽出し、その抽出した領域を文書１００として文書ファイル記憶モジュール１３０に記憶させるようにしてもよい。
【００２５】
図３は、類似する文書群の判定処理例を示すフローチャートである。
ステップＳ３０２では、文書受付モジュール１１０が、文書画像（文書１００）を受け付ける。
ステップＳ３０４では、文書検索モジュール１２０が、文書１００の構造を解析する。
ステップＳ３０６では、文書検索モジュール１２０が、版内の予め定められた対象文書を選択する。文書群内の代表的な文書として、前述のように、原文書、その木構造における葉の位置にある文書、最新の文書等を選択する。
【００２６】
ステップＳ３０８では、文書検索モジュール１２０が、文書１００とステップＳ３０６で選択した対象文書との類似度を算出する。
文書検索モジュール１２０は、文書ファイル記憶モジュール１３０が記憶している特徴テーブル４００を用いて類似度の算出を行う。つまり、ステップＳ３０４での構造解析結果と特徴テーブル４００内のデータとによって類似度を算出する。例えば、類似度としては、領域の数、ブロック位置、画素数、文字認識結果のそれぞれの差分、種別は同じか否か等を用いる。
【００２７】
図４は、特徴テーブル４００のデータ構造例を示す説明図である。特徴テーブル４００は、文書ＩＤ欄４１０、版欄４２０、ブロックＩＤ欄４３０、ブロック位置欄４４０、画素数欄４５０、種別欄４６０、文字認識結果欄４７０、新規欄４８０、改変有無欄４９０を有している。また、ブロック位置欄４４０は、Ｘ欄４４１、Ｙ欄４４２、Ｗ欄４４３、Ｈ欄４４４を有している。
【００２８】
文書ＩＤ欄４１０は、その文書を一意に識別する文書符号を記憶する。
版欄４２０は、文書群におけるその文書の版を記憶する。原文書の場合は版１となる。
ブロックＩＤ欄４３０は、その文書内に含まれている領域を一意に識別するブロック符号を記憶する。ブロックＩＤ欄４３０から文字認識結果欄４７０は、過去に文書検索モジュール１２０によって解析された構造解析の結果である。
ブロック位置欄４４０は、その領域の位置（Ｘ、Ｙ座標）、大きさ（幅、高さ）を記憶する。
画素数欄４５０は、その領域内に含まれている黒画素数を記憶する。多値画像の場合は、予め定められた値の画素数であってもよい。
【００２９】
種別欄４６０は、その領域の種別（文字領域、図形領域（さらに、図形の認識結果（例えば、直線、矩形等）を含めてもよい）、写真領域等）を記憶する。なお、文字領域であるか否か等は、既存の手法を用いる。例えば、その領域内の特徴を抽出して、予め定められた特徴辞書との距離を計算して判定する。
文字認識結果欄４７０は、その領域が文字領域である場合は、文書検索モジュール１２０が文字認識を行い、その結果を記憶する。
新規欄４８０は、その領域はその文書の基の文書（版が１つ前の文書）と比べて、新しく追加された領域であるか否かを示す符号を記憶する。なお、新規欄４８０、改変有無欄４９０は、履歴更新モジュール１５０による処理結果である。
改変有無欄４９０は、その領域はその文書の基の文書と比べて、改変（基の文書にもあるが内容が異なっている等）された領域であるか否かを示す符号を記憶する。
【００３０】
ステップＳ３１０では、文書検索モジュール１２０が、類似するものがあるか否かを判断する。ある場合はステップＳ３１２へ進み、それ以外の場合はステップＳ３１４へ進む。
ステップＳ３１２では、履歴判定モジュール１４０が、文書１００の版の判定処理を行う。つまり、文書１００を類似している文書が含まれている文書群の中に入れるために、その入れるべき位置である版を判定する。図５に例示するフローチャートを用いて後述する。
ステップＳ３１４では、履歴更新モジュール１５０が、文書１００を初版として文書ファイル記憶モジュール１３０に登録する。つまり、新たな文書群が生成される。
【００３１】
図５は、履歴判定モジュール１４０が行う履歴判定処理例を示すフローチャートである。ここで、文書群の木構造は、枝分かれする場合もあるので、木構造を１次元の連として表現する。図６は、図２（Ａ）に例示した文書群Ａの根から葉までの一連の文書群の例を示す説明図である。つまり、文書群Ａは、葉が４つあるので４つの連がある。例えば、図６（Ａ）に示す連は、根の位置にある文書Ａ−１から葉の位置にあるＡ−１１１まで辿った場合の３つの文書からなるものであり、同様に、図６（Ｂ）、（Ｃ）、（Ｄ）に示すような３つの連がある。また、同様に、図７は、図２（Ａ）に例示した文書群Ｂの根から葉までの一連の文書群の例を示す説明図である。つまり、文書群Ｂは、葉が５つあるので５つの連がある。例えば、図７（Ａ）に示す連は、根の位置にある文書Ｂ−１から葉の位置にあるＢ−１１１１まで辿った場合の４つの文書からなるものであり、同様に、図７（Ｂ）、（Ｃ）、（Ｄ）、（Ｅ）に示すような４つの連がある。
【００３２】
履歴判定モジュール１４０が行う履歴判定処理とは、このような連の中で文書１００は、どの位置にあるかを判定するものである。対象とする連を選び、連の中を根から順番付けする。根の順番をｍとし、葉の順番をｎとする。図６（Ａ）に例示した連では、文書Ａ−１は順番１であり、文書Ａ−１１１は順番３であるので、ｍ＝１、ｎ＝３となる。また、版を求めるべき文書（文書１００）をＸとし、連内の文書をＶｋとし、添え字ｋを連内の順番とする。
【００３３】
ステップＳ５０２では、変数ｆにｍを代入し、変数ｒにｎを代入する。
ステップＳ５０４では、変数ｋに「（ｆ+ｒ）／２」の計算結果を代入する。小数点以下は切り下げ、切り上げ、四捨五入のいずれでもよい。
ステップＳ５０６では、ｋが変化したか否かを判断する。つまり、前回のステップＳ５０４で算出されたｋと今回のｋとを比較する。変化した場合はステップＳ５０８へ進み、それ以外の場合はステップＳ５１８へ進む。
【００３４】
ステップＳ５０８では、文書Ｘ（文書１００）と文書Ｖｋ（連内のｋ番目の文書）を比較する。この比較において、文書Ｖｋは文書ファイル記憶モジュール１３０に記憶されている領域を合成して生成してもよい。また、文書ファイル記憶モジュール１３０に記憶されている領域と文書Ｘ内の対応する領域を比較するようにしてもよい。例えば、領域の数を比較し、文書Ｘの領域数が多い場合は文書Ｘが新しいと判断する。また、領域の数は同じであるが、文書Ｘの領域内の黒画素が予め定められた閾値よりも多い場合は文書Ｘが新しいと判断する。また、文書Ｘの領域内の文字認識結果の文字数が多い場合は文書Ｘが新しいと判断する。この判断に、文書１００の解析結果と特徴テーブル４００を用いるようにしてもよい。
【００３５】
ステップＳ５１０では、Ｘが新しいか否かを判断する。新しい場合はステップＳ５１２へ進み、同じ場合はステップＳ５１４へ進み、それ以外の場合はステップＳ５１６へ進む。
ステップＳ５１２では、変数ｆに変数ｋを代入する。つまり、対象としている連の中で後半の文書を対象とするものである。
ステップＳ５１４では、履歴更新モジュール１５０での更新処理を不要とする。つまり、文書Ｘと文書Ｖｋとは同じであるので、受け付けた文書１００（文書Ｘ）は既に文書ファイル記憶モジュール１３０内に版管理されていることとなるので、以下の処理を行う必要はない。
ステップＳ５１６では、変数ｒに変数ｋを代入する。つまり、対象としている連の中で前半の文書を対象とするものである。
ステップＳ５１８では、変数ｆと変数ｒを履歴更新モジュール１５０へ渡す。つまり、文書Ｖｆと文書Ｖｒの間に文書Ｘを入れるための処理を履歴更新モジュール１５０が行う。
【００３６】
図８は、履歴更新モジュール１５０が行う履歴更新処理例を示すフローチャートである。
ステップＳ８０２では、履歴判定モジュール１４０からｆとｒを受け取る。ステップＳ５１８に対応する処理である。
ステップＳ８０４では、文書群の中でｒ以下の版を更新する。つまり、ｒ以下の文書の版を１ずつ増やす。例えば、特徴テーブル４００の版欄４２０内の版番号を修正する。
ステップＳ８０６では、受付文書（文書受付モジュール１１０、図５に例示したフローチャートでは文書Ｘ）の版をｒとする。
ステップＳ８０８では、文書群内の文書に対して新規又は改変された領域を受付文書から抽出し、その抽出した領域を受付文書として文書ファイル記憶モジュール１３０内の文書テーブル９００に記憶させる。
【００３７】
図９は、文書テーブル９００のデータ構造例を示す説明図である。文書テーブル９００は、文書ＩＤ欄９１０、文書群ＩＤ欄９２０、ブロックＩＤ欄９３０、元版文書ＩＤ欄９４０、文書記憶アドレス欄９５０を有している。
文書ＩＤ欄９１０は、その文書の文書符号を記憶する。
文書群ＩＤ欄９２０は、その文書が含まれている文書群を一意に識別する文書群符号を記憶する。
ブロックＩＤ欄９３０は、その文書内に含まれており、新規又は改変された領域のブロック符号（該当の領域が複数ある場合は複数個）を記憶する。
【００３８】
元版文書ＩＤ欄９４０は、その文書よりも前の版の文書の文書符号を記憶する。
文書記憶アドレス欄９５０は、その文書を記憶している文書ファイル記憶モジュール１３０内のアドレス（例えば、ＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）等）を記憶する。２版以降の場合は、新規又は改変された領域を記憶しているアドレスである。
文書テーブル９００を用いて文書を再生する。つまり、元版文書ＩＤ欄９４０によって前の文書を抽出し、それに対してブロックＩＤ欄９３０の領域を追加又は置換することによってその文書を再生する。なお、文書記憶アドレス欄９５０内のアドレスが原文書に辿り着くまで再帰的に行う。
【００３９】
図１０を参照して、本実施の形態の画像処理装置のハードウェア構成例について説明する。図１０に示す構成は、例えばパーソナルコンピュータ（ＰＣ）などによって構成されるものであり、スキャナ等のデータ読み取り部１０１７と、プリンタなどのデータ出力部１０１８を備えたハードウェア構成例を示している。
【００４０】
ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１００１は、前述の実施の形態において説明した各種のモジュール、すなわち、文書検索モジュール１２０、履歴判定モジュール１４０、履歴更新モジュール１５０等の各モジュールの実行シーケンスを記述したコンピュータ・プログラムにしたがった処理を実行する制御部である。
【００４１】
ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１００２は、ＣＰＵ１００１が使用するプログラムや演算パラメータ等を格納する。ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１００３は、ＣＰＵ１００１の実行において使用するプログラムや、その実行において適宜変化するパラメータ等を格納する。これらはＣＰＵバスなどから構成されるホストバス１００４により相互に接続されている。
【００４２】
ホストバス１００４は、ブリッジ１００５を介して、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ／Ｉｎｔｅｒｆａｃｅ）バスなどの外部バス１００６に接続されている。
【００４３】
キーボード１００８、マウス等のポインティングデバイス１００９は、操作者により操作される入力デバイスである。ディスプレイ１０１０は、液晶表示装置又はＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）などがあり、各種情報をテキストやイメージ情報として表示する。
【００４４】
ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）１０１１は、ハードディスクを内蔵し、ハードディスクを駆動し、ＣＰＵ１００１によって実行するプログラムや情報を記録又は再生させる。ハードディスクには、受け付けた文書や文書群などが格納される。さらに、その他の各種のデータ処理プログラム等、各種コンピュータ・プログラムが格納される。
【００４５】
ドライブ１０１２は、装着されている磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリ等のリムーバブル記録媒体１０１３に記録されているデータ又はプログラムを読み出して、そのデータ又はプログラムを、インタフェース１００７、外部バス１００６、ブリッジ１００５、及びホストバス１００４を介して接続されているＲＡＭ１００３に供給する。リムーバブル記録媒体１０１３も、ハードディスクと同様のデータ記録領域として利用可能である。
【００４６】
接続ポート１０１４は、外部接続機器１０１５を接続するポートであり、ＵＳＢ、ＩＥＥＥ１３９４等の接続部を持つ。接続ポート１０１４は、インタフェース１００７、及び外部バス１００６、ブリッジ１００５、ホストバス１００４等を介してＣＰＵ１００１等に接続されている。通信部１０１６は、ネットワークに接続され、外部とのデータ通信処理を実行する。データ読み取り部１０１７は、例えばスキャナであり、ドキュメントの読み取り処理を実行する。データ出力部１０１８は、例えばプリンタであり、ドキュメントデータの出力処理を実行する。
【００４７】
なお、図１０に示す画像処理装置のハードウェア構成は、１つの構成例を示すものであり、本実施の形態は、図１０に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア（例えば特定用途向け集積回路（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ：ＡＳＩＣ）等）で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに図１０に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、複写機、ファックス、スキャナ、プリンタ、複合機（スキャナ、プリンタ、複写機、ファックス等のいずれか２つ以上の機能を有している画像処理装置）などに組み込まれていてもよい。
【００４８】
前述の実施の形態においては、文書として画像を例示したが、文書として、文書生成装置（例えば、ワープロ等）によって生成されたテキストデータを主とする文書であってもよい。その場合、履歴判定モジュール１４０による版の判定方法は、前述の方法に加えて、文書の作成日時等に基づいて行うようにしてもよい。
前記実施の形態においては、図２、図４、図９で示したデータ構造は、これらのデータ構造に限られず、他のデータ構造であってもよい。例えば、テーブル構造のものはリンク構造等であってもよい。また、データ項目は、これらに図示したものに限られず、他のデータ項目を有していてもよい。
また、前記実施の形態の説明において、予め定められた値との比較において、「以上」、「以下」、「より多い」、「より少ない（未満）」としたものは、その組み合わせに矛盾が生じない限り、それぞれ「より多い」、「より少ない（未満）」、「以上」、「以下」としてもよい。
【００４９】
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通などのために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク（ＤＶＤ）であって、ＤＶＤフォーラムで策定された規格である「ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ、ＤＶＤ−ＲＡＭ等」、ＤＶＤ＋ＲＷで策定された規格である「ＤＶＤ＋Ｒ、ＤＶＤ＋ＲＷ等」、コンパクトディスク（ＣＤ）であって、読出し専用メモリ（ＣＤ−ＲＯＭ）、ＣＤレコーダブル（ＣＤ−Ｒ）、ＣＤリライタブル（ＣＤ−ＲＷ）等、ブルーレイ・ディスク（Ｂｌｕ−ｒａｙ  Ｄｉｓｃ（登録商標））、光磁気ディスク（ＭＯ）、フレキシブルディスク（ＦＤ）、磁気テープ、ハードディスク、読出し専用メモリ（ＲＯＭ）、電気的消去及び書換可能な読出し専用メモリ（ＥＥＰＲＯＭ）、フラッシュ・メモリ、ランダム・アクセス・メモリ（ＲＡＭ）等が含まれる。
そして、前記のプログラム又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク（ＬＡＮ）、メトロポリタン・エリア・ネットワーク（ＭＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、あるいは無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して
記録されていてもよい。また、圧縮や暗号化など、復元可能であればどのような態様で記録されていてもよい。
【符号の説明】
【００５０】
１００…文書
１１０…文書受付モジュール
１２０…文書検索モジュール
１３０…文書ファイル記憶モジュール
１４０…履歴判定モジュール
１５０…履歴更新モジュール
【図１】
0005440043.tif 000002
【図２】
0005440043.tif 000003
【図３】
0005440043.tif 000004
【図４】
0005440043.tif 000005
【図５】
0005440043.tif 000006
【図６】
0005440043.tif 000007
【図７】
0005440043.tif 000008
【図８】
0005440043.tif 000009
【図９】
0005440043.tif 000010
【図１０】
0005440043.tif 000011