(57)【特許請求の範囲】
【請求項１】
スキャニング装置であって、
制御部と、
スキャニング処理により原稿等から画像を読み取ってスキャニングデータを生成する画像読取部と、
生成された前記スキャニングデータを格納することが可能な格納部と、
表示部と、
操作部と、
を備え、
前記制御部は、
（ｉ）前記スキャニング処理が中断した場合に、前記スキャニング処理の開始から中断までの間に生成された前記スキャニングデータのうち、所定のページのデータに基づき、前記ページについてのサムネイル画像を生成し、生成された前記サムネイル画像のデータを前記格納部に保存すると共に、前記スキャニングデータの全部または一部を、前記サムネイル画像に対応する退避データとして前記格納部に保存し、
（ｉｉ）前記格納部に前記退避データが存在する場合に、前記格納部に保存されている前記サムネイル画像のデータに基づいて、前記サムネイル画像を前記表示部に表示させ、
（ｉｉｉ）前記表示部に表示された前記サムネイル画像の中から、前記操作部を介して所望のサムネイル画像が選択されなかった場合に、前記スキャニング処理開始後に生成された前記スキャニングデータの一部を、前記格納部に保存されている各退避データと、それぞれ比較し、比較の結果、生成された前記スキャニングデータの一部と一致する退避データが存在する場合に、一致する前記退避データに、生成された前記スキャニングデータを結合する
ことを特徴とするスキャニング装置。
【請求項２】
請求項１に記載のスキャニング装置において、
前記制御部は、前記表示部に表示された前記サムネイル画像の中から、前記操作部を介して所望のサムネイル画像が選択された場合に、前記格納部に保存されている退避データのうち、選択された前記サムネイル画像に対応する退避データに、前記スキャニング処理開始後に生成された前記スキャニングデータを結合することを特徴とするスキャニング装置。
【請求項３】
請求項１または請求項２に記載のスキャニング装置において、
前記制御部は、一致する前記退避データに、生成された前記スキャニングデータを結合する際、一致する部分が重複しないように結合することを特徴とするスキャニング装置。
【請求項４】
格納部と表示部と操作部とを備えるスキャニング装置におけるスキャニング管理方法であって、
（ａ）スキャニング処理により原稿等から画像を読み取ってスキャニングデータを生成する工程と、
（ｂ）前記スキャニング処理が中断した場合に、前記スキャニング処理の開始から中断までの間に生成された前記スキャニングデータのうち、所定のページのデータに基づき、前記ページについてのサムネイル画像を生成する工程と、
（ｃ）生成された前記サムネイル画像のデータを前記格納部に保存すると共に、前記スキャニングデータの全部または一部を、前記サムネイル画像に対応する退避データとして前記格納部に保存する工程と、
（ｄ）前記格納部に前記退避データが存在する場合に、前記格納部に保存されている前記サムネイル画像のデータに基づいて、前記サムネイル画像を前記表示部に表示させる工程と、
（ｅ）前記表示部に表示された前記サムネイル画像の中から、前記操作部を介して所望のサムネイル画像が選択されなかった場合に、前記スキャニング処理開始後に生成された前記スキャニングデータの一部を、前記格納部に保存されている各退避データと、それぞれ比較し、比較の結果、生成された前記スキャニングデータの一部と一致する退避データが存在する場合に、一致する前記退避データに、生成された前記スキャニングデータを結合する工程と、
を備えるスキャニング管理方法。
【請求項５】
格納部と表示部と操作部とを備えるコンピュータにおいて実行されるコンピュータプログラムであって、
スキャニング処理により原稿等から画像を読み取ってスキャニングデータを生成する機能と、
前記スキャニング処理が中断した場合に、前記スキャニング処理の開始から中断までの間に生成された前記スキャニングデータのうち、所定のページのデータに基づき、前記ページについてのサムネイル画像を生成する機能と、
生成された前記サムネイル画像のデータを前記格納部に保存すると共に、前記スキャニングデータの全部または一部を、前記サムネイル画像に対応する退避データとして前記格納部に保存する機能と、
前記格納部に前記退避データが存在する場合に、前記格納部に保存されている前記サムネイル画像のデータに基づいて、前記サムネイル画像を前記表示部に表示させる機能と、
前記表示部に表示された前記サムネイル画像の中から、前記操作部を介して所望のサムネイル画像が選択されなかった場合に、前記スキャニング処理開始後に生成された前記スキャニングデータの一部を、前記格納部に保存されている各退避データと、それぞれ比較し、比較の結果、生成された前記スキャニングデータの一部と一致する退避データが存在する場合に、一致する前記退避データに、生成された前記スキャニングデータを結合する機能と、
を前記コンピュータに実現させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、スキャナ等のスキャニング装置においてスキャニング処理が中断された場合の対処技術に関するものである。
【背景技術】
【０００２】
一般に、原稿などの紙からの画像の読み取りは、スキャナに接続されるコンピュータにおいて連携ソフトウェアを実行させ、その連携ソフトウェアによる制御の下で、スキャナにおいてスキャニング処理を実行させることにより、行われる。スキャナにおいて、スキャニング処理が中断される要因としては、スキャナ側でエラーが発生した場合（例えば、オートドキュメントフィーダでの紙詰まりなど）や、ソフトウェア側でエラーが発生した場合や、スキャナ側でユーザがマニュアル操作で処理の中止を選択した場合などが挙げられる。
【０００３】
なお、このような処理が中断された場合の対処技術として、従来では、例えば、下記の特許文献に記載のものが知られている。
【０００４】
【特許文献１】特開平５−３２８０７８号公報
【特許文献２】特開２０００−５９５８２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来では、スキャナにおいてスキャニング処理が中断された場合、ページ途中で途切れたデータについては、破棄されていた。また、複数枚の原稿について、連続して画像の読み取り行い、そのスキャニング処理により得られたデータをページ単位でコンピュータ内に保持するような場合でも、保持していたデータについては、全て破棄されていた。
【０００６】
このため、スキャニング処理を再開する場合には、画像の読み取りを最初からやり直さなければならず、ユーザは無駄な時間と労力を要した。
【０００７】
従って、本発明の目的は、上記した従来技術の課題を解決し、スキャニング処理を再開する場合でも、ユーザの時間と労力を節約することができる技術を提供することにある。
【課題を解決するための手段】
【０００８】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態又は適用例として実現することが可能である。
【０００９】
［適用例１］
スキャニング装置であって、
制御部と、
スキャニング処理により原稿等から画像を読み取ってスキャニングデータを生成する画像読取部と、
生成された前記スキャニングデータを格納することが可能な格納部と、
を備え、
前記制御部は、前記スキャニング処理が中断した場合に、前記スキャニング処理の開始から中断までの間に生成された前記スキャニングデータのうち、所定のページのデータに基づき、前記ページについてのサムネイル画像を生成し、生成された前記サムネイル画像のデータを前記格納部に保存すると共に、前記スキャニングデータの全部または一部を、前記サムネイル画像に対応する退避データとして前記格納部に保存することを特徴とするスキャニング装置。
【００１０】
このように、適用例１のスキャニング装置では、スキャニング処理が中断した場合に、それまでに生成されたスキャニングデータのうち、最終ページなど、所定のページのデータに基づき、そのページについてのサムネイル画像を生成し、そのサムネイル画像のデータを保存すると共に、生成された上記スキャニングデータの全部または一部を、サムネイル画像に対応する退避データとして保存するようにしている。
【００１１】
従って、適用例１のスキャニング装置によれば、スキャニング処理を再開するに当たり、スキャニング装置において退避データが残っているため、画像の読み取りを最初からやり直さなくてもよく、それ以降のデータが得られるように、画像の読み取りを再開すればよい。従って、ユーザの時間と労力を節約することができる。
【００１２】
［適用例２］
適用例１に記載のスキャニング装置において、
前記スキャニング装置は、表示部をさらに備え、
前記制御部は、前記格納部に前記退避データが存在する場合に、前記格納部に保存されている前記サムネイル画像のデータに基づいて、前記サムネイル画像を前記表示部に表示させることを特徴とするスキャニング装置。
【００１３】
従って、表示されるサムネイル画像は保存されている退避データとそれぞれ対応しているので、ユーザは、退避データとしてどのようなデータが退避されているかを知ることができ、また、ユーザが、複数の退避データの中から、再開させたいデータを選択しようとする際に、容易に選択することができる。
【００１４】
［適用例３］
適用例２に記載のスキャニング装置において、
前記スキャニング装置は、操作部をさらに備え、
前記制御部は、前記表示部に表示された前記サムネイル画像の中から、前記操作部を介して所望のサムネイル画像が選択された場合に、前記格納部に保存されている退避データのうち、選択された前記サムネイル画像に対応する退避データに、前記スキャニング処理開始後に生成された前記スキャニングデータを結合することを特徴とするスキャニング装置。
【００１５】
従って、スキャニングを再開するに当たり、ユーザが再開したいデータに対応するサムネイル画像を選択するだけで、そのサムネイル画像に対応する退避データに、再開後に得られるスキャニングデータが結合されるため、結合して得られるデータとしては、中断なく正常に処理がなされた場合のデータと同じものを得ることができる。
【００１６】
［適用例４］
適用例２に記載のスキャニング装置において、
前記スキャニング装置は、操作部をさらに備え、
前記制御部は、前記表示部に表示された前記サムネイル画像の中から、前記操作部を介して所望のサムネイル画像が選択されなかった場合に、前記スキャニング処理開始後に生成された前記スキャニングデータの一部を、前記格納部に保存されている各退避データと、それぞれ比較し、比較の結果、生成された前記スキャニングデータの一部と一致する退避データが存在する場合に、一致する前記退避データに、生成された前記スキャニングデータを結合することを特徴とするスキャニング装置。
【００１７】
このように、スキャニングを再開するに当たり、ユーザによってサムネイル画像が選択されなかった場合でも、再開後に得られたスキャニングデータの一部を、各退避データとそれぞれ比較して、一致する退避データが存在する場合には、その退避データに再開後に得られたスキャニングデータを結合するようにしているため、結合して得られるデータとしては、中断なく正常に処理がなされた場合のデータと同じものを得ることができる。また、ユーザはサムネイル画像の選択を行わなくても、再開後のスキャニングデータの適正な退避データへの結合がなされるため、ユーザは時間と労力を節約することができる。
【００１８】
［適用例５］
適用例４に記載のスキャニング装置において、
前記制御部は、一致する前記退避データに、生成された前記スキャニングデータを結合する際、一致する部分が重複しないように結合することを特徴とするスキャニング装置。
【００１９】
このようにデータを結合する場合、一致する部分がある場合、そのまま単純に結合すると、重複する部分が出てくるので、それを回避する必要があるからである。例えば、一方のデータの一部（一致する部分）を、他方のデータの一部（一致する部分）で置き換えるようにすればよい。
【００２０】
［適用例６］
格納部を備えるスキャニング装置におけるスキャニング管理方法であって、
（ａ）スキャニング処理により原稿等から画像を読み取ってスキャニングデータを生成する工程と、
（ｂ）前記スキャニング処理が中断した場合に、前記スキャニング処理の開始から中断までの間に生成された前記スキャニングデータのうち、所定のページのデータに基づき、前記ページについてのサムネイル画像を生成する工程と、
（ｃ）生成された前記サムネイル画像のデータを前記格納部に保存すると共に、前記スキャニングデータの全部または一部を、前記サムネイル画像に対応する退避データとして前記格納部に保存する工程と、
を備えるスキャニング管理方法。
このように、適用例６のスキャニング管理方法によれば、適用例１と同様の効果を奏することができる。
【００２１】
［適用例７］
格納部を備えるコンピュータにおいて実行されるコンピュータプログラムであって、
スキャニング処理により原稿等から画像を読み取ってスキャニングデータを生成する機能と、
前記スキャニング処理が中断した場合に、前記スキャニング処理の開始から中断までの間に生成された前記スキャニングデータのうち、所定のページのデータに基づき、前記ページについてのサムネイル画像を生成する機能と、
生成された前記サムネイル画像のデータを前記格納部に保存すると共に、前記スキャニングデータの全部または一部を、前記サムネイル画像に対応する退避データとして前記格納部に保存する機能と、
を前記コンピュータに実現させるためのコンピュータプログラム。
このように、適用例７のコンピュータプログラムによれば、適用例１と同様の効果を奏することができる。
【００２２】
なお、本発明は、上記したスキャニング装置などの装置発明の態様や、スキャニング管理方法などの方法発明の態様や、それら方法や装置を構築するためのコンピュータプログラムとしての態様に限ることなく、そのようなコンピュータプログラムを記録した記録媒体としての態様など、種々の態様で実現することも可能である。
【発明を実施するための最良の形態】
【００２３】
以下、本発明の実施の形態を実施例に基づいて以下の順序で説明する。
Ａ．第１の実施例：
Ａ−１．実施例の構成：
Ａ−２．実施例の動作：
Ａ−３．実施例の効果：
Ａ−４．第１の実施例に対する変形例：
Ｂ．第２の実施例：
Ｂ−１．実施例の構成：
Ｂ−２．実施例の動作：
Ｂ−３．実施例の効果：
Ｂ−４．第２の実施例に対する変形例：
Ｃ．変形例：
【００２４】
Ａ．第１の実施例：
Ａ−１．実施例の構成：
図１は本発明の第１の実施例としてのスキャニングシステムの概略構成を示すブロック図である。
【００２５】
図１に示すとおり、本実施例のスキャニングシステムは、スキャナ１００と、サーバ２００と、クライアントＰＣ（パーソナルコンピュータ）３００と、で構成されており、各構成要素は、イーサネット（登録商標）などのネットワーク４００を介して、互いに接続されている。
【００２６】
このうち、スキャナ１００は、プログラムを実行することにより種々の処理や制御を行うＣＰＵ１０２と、プログラムを格納したり、各種データや情報を一時的に格納したりするためのメモリ１０４と、ネットワーク４００を介して他の装置との間で各種データや情報などの伝送を行う通信部１０６と、タッチパネルなどから成り、ユーザからの指示などを入力するための操作部１０８と、液晶パネルなどから成り、各種データや情報などを表示するための表示部１１０と、イメージセンサなどから成り、原稿などの紙から画像などを読み取るための画像読取部１１２と、を主として備えている。
【００２７】
また、サーバ２００は、連携ソフトウェアなどのプログラムを実行することにより種々の処理や制御を行うＣＰＵ２０２と、連携ソフトウェアなどのプログラムを格納したり、各種データや情報を一時的に格納したりするためのメモリ２０４と、ネットワーク４００を介して他の装置との間で各種データや情報などの伝送を行う通信部２０６と、ハードディスクドライブや半導体メモリデバイスなどから成り、各種データや情報を記憶するための外部記憶デバイス２１２と、を主として備えている。このうち、メモリ２０４は、データや情報として、後述する中止ＩＤ管理テーブル２３２などを格納することが可能である。また、外部記憶デバイス２１２は、後述するように、画像データである退避データ２３４などを記憶することが可能である。上記構成要素以外にも、キーボードやポインティングデバイスなどの操作部やモニタなどの表示部などを備えているが、図では省略されている。
【００２８】
さらに、クライアントＰＣ３００も、サーバ２００と同様に、ＣＰＵやメモリなど、各種構成要素を備えているが、図では省略されている。なお、装置同士は、ケーブルなど有線で接続される代わりに、いわゆる無線ＬＡＮや、ブルートゥースや、赤外線など、無線で接続されてもよい。
【００２９】
Ａ−２．実施例の動作：
図２は図１のスキャニングシステムにおける正常時の処理手順を示すフローチャートである。図２を用いて、正常時の処理について説明する。まず、スキャナ１００のユーザが、スキャナ１００の操作部１０８を操作して、スキャニングの設定（例えば、解像度や原稿サイズなど）及びスキャンデータ（すなわち、スキャニング処理より得られる画像データ）の格納先などを指定する（ステップＳ１０２）。格納先としては、例えば、クライアントＰＣ３００内の所望のフォルダを指定する。これに対し、スキャナ１００では、ＣＰＵ１０２が、指定された設定及び格納先などの情報を、通信部１０６からネットワーク４００を介してサーバ２００に送信する（ステップＳ１０４）。
【００３０】
一方、サーバ２００では、ＣＰＵ２０２が、送信された設定及び格納先などの情報を、通信部２０６を介して受信して、メモリ２０４に一時的に格納する。次に、ＣＰＵ２０２は、外部記憶デバイス２１２内に、退避データ２３４が存在するか否かを確認し（ステップＳ１３２）、退避データが存在しない場合には、そのまま待機する（ステップＳ１３４）。なお、退避データの内容及びその退避データが存在する場合の処理については後ほど説明する。
【００３１】
その後、スキャナ１００のユーザが、操作部１０８を操作してスキャニング処理の開始を指示すると、スキャナ１００のＣＰＵ１０２は、画像読取部１１２を制御して、画像読取部１１２によって原稿などの紙から画像の読み取りを開始させる（ステップＳ１０８）。そして、ＣＰＵ１０２は、画像読取部１１２から出力されるスキャニングデータ（例えば、ＲＡＷデータ）を、通信部１０６からサーバ２００に送信する（ステップＳ１１０）。
【００３２】
一方、サーバ２００では、ＣＰＵ２０２は、送信されたスキャニングデータを、通信部２０６を介して受信する。そして、ＣＰＵ２０２は、そのスキャニングデータを、１ページ毎に、指定されたファイルフォーマットに変換する（ステップＳ１３６）。例えば、スキャニングデータを、ＲＡＷデータからＰＤＦ（Portable Document Format）データに変換する。
【００３３】
その後、サーバ２００において、全てのスキャニングデータの受信が完了し（ステップＳ１３８）、変換が完了したら、ＣＰＵ２０２は、先にメモリ２０４に格納していた格納先の情報を読み出し、その情報に基づいて、それら全てのスキャニングデータを、通信部２０６からネットワーク４００を介してクライアントＰＣ３００に送信する（ステップＳ１４０）。そして、クライアントＰＣ３００において、送信された全てのスキャニングデータの受信が完了したら、図２に示す一連の処理が終了する。
【００３４】
図３は図１のスキャニングシステムにおける中止時の処理手順を示すフローチャートである。図３を用いて、スキャナ１００のユーザが、途中でスキャニング処理の中止を選択した場合の処理について説明する。図３において、ステップＳ２０２からステップＳ２１０までの処理、及び、ステップＳ２３２からステップＳ２３６までの処理は、図２で示したステップＳ１０２からステップＳ１１０までの処理、及び、ステップＳ１３２からステップＳ１３６までの処理と同様であるので、それら処理についての説明は省略する。
【００３５】
スキャナ１００において、スキャニング処理が行われている最中に、スキャナ１００のユーザが、操作部１０８を操作してスキャニング処理の中止を指示すると、スキャナ１００のＣＰＵ１０２は、中止命令を、通信部１０６を介してサーバ２００に送信する（ステップＳ２１４）。
【００３６】
これに対し、サーバ２００では、ＣＰＵ２０２が、送信された中止命令を、通信部２０６を介して受け取ると、それまで受信していたスキャニングデータから、退避データ２３４を生成する。スキャナ１００では、複数枚の原稿をスキャニングした際に、スキャニングデータとして、ページ単位の中間生成物（ＲＡＷデータ）が作られ、それらがサーバ２００に送信されるので、サーバ２００では、それら送信されたページ単位のＲＡＷデータを退避するデータの対象とする。なお、スキャニング中のであったページ途中のデータについては、退避するデータの対象としない。すなわち、ページ単位でスキャニングが完了しているデータのみ、退避するデータの対象とする。
【００３７】
次に、ＣＰＵ２０２は、今回の中止を特定するための中止ＩＤを発行する（ステップＳ２４４）。後に行われるスキャニング処理の再開の際に、今回の中止の「続き」であることを照合するために、今回の中止を特定する必要があるからである。中止ＩＤとしては、アルファベットと数字との組み合わせのようなユニークな構成にすることで、ある程度、重複を防ぐことが可能である。
【００３８】
中止ＩＤは、後述するように、スキャナ１００のユーザが操作部１０８を操作して入力する必要がある。具体的には、操作部１０８に、複合機の操作パネルのように、専用の文字入力パネルなどを保持させることによって、ユーザからの文字入力が可能となる。その際、入力の簡易さから、中止ＩＤとしては、例えば、以下の各２桁を組み合わせて、４桁のＩＤを用いるようにすればよい。
【００３９】
例）
アプリケーションID（2桁）：00〜FF（16進数でカウントアップする）
インデックス（2桁）      ：00〜FF（16進数でカウントアップする）
【００４０】
次に、ＣＰＵ２０２は、生成した退避データ２３４を外部記憶デバイス２１２に保存すると共に、発行した中止ＩＤを、退避データ２３４の格納先（すなわち、格納先フォルダ）と、を対応付けて、メモリ２０４内の中止ＩＤ管理テーブル２３２に保存する（ステップＳ２４６）。
【００４１】
図４は図１のメモリ２０４内における中止ＩＤ管理テーブル２３２の一例を示す説明図である。図４に示すように、各中止ＩＤは、それぞれ、その中止の際に退避したデータの格納先と、対応付けられている。なお、退避データの格納先のフォルダは、ＣＰＵ２０２が、一定の規則の下で、任意に指定する。
【００４２】
さらに、ＣＰＵ２０２は、発行した中止ＩＤを、通信部２０６からネットワーク４００を介してスキャナ１００に送信する（ステップＳ２４８）。
【００４３】
これに対し、スキャナ１００では、ＣＰＵ１０２が、送信された中止ＩＤを、通信部１０６を介して受信すると、その中止ＩＤを表示部１１０に表示させる（ステップＳ２１６）。この結果、スキャナ１００のユーザは、その表示を見て、今回の中止で発行された中止ＩＤを認識し、その中止ＩＤを覚えておくようにする。こうして、図３に示す、中止時における一連の処理が終了する。
【００４４】
図５は図１のスキャニングシステムにおける再開時の処理手順を示すフローチャートである。図５を用いて、スキャニング処理中止後に、スキャナ１００のユーザが、スキャニング処理の再開を指示した場合の処理について説明する。図５において、ステップＳ３０２からステップＳ３０４まで処理は、図２で示したステップＳ１０２からステップＳ１０４までの処理と同様であるので、それら処理についての説明は省略する。
【００４５】
サーバ２００では、ＣＰＵ２０２が、送信された設定及び格納先などの情報を、通信部２０６を介して受信すると、メモリ２０４に一時的に格納すると共に、外部記憶デバイス２１２内に、退避データ２３４が存在するか否かを確認する（ステップＳ３３２）。今回は、スキャニング処理中止後であるため、外部記憶デバイス２１２内に、退避データ２３４が存在する。そこで、ＣＰＵ２０２は、外部記憶デバイス２１２内に退避データ２３４が存在することを確認すると、通信部２０６を介してスキャナ１００に、再開確認を要求する（ステップＳ３５２）。
【００４６】
これに対し、スキャナ１００では、ＣＰＵ１０２が、通信部１０６を介して、この再開確認要求を受け取ると、表示部１１０に、以前のスキャニング処理の中止により退避データがある旨を表示して（ステップＳ３１８）、スキャナ１００のユーザに、その中止の続きとして、スキャニング処理の再開を行うか否かを選択させる。
【００４７】
そこで、ユーザが、操作部１０８を操作して、スキャニング処理の再開を指示する（ステップＳ３２０）と、次に、ＣＰＵ１０２は、表示部１１０に、中止ＩＤの入力を促すメッセージを表示する（ステップＳ３２２）。
【００４８】
これに対し、ユーザが、操作部１０８を操作して、先に覚えた中止ＩＤを入力する（ステップＳ３２４）と、ＣＰＵ１０２は、その入力された中止ＩＤを、通信部１０６を介して２００に送信する（ステップＳ３２６）。サーバ２００では、ＣＰＵ２０２が、通信部２０６を介して、この中止ＩＤを受信すると、メモリ２０４内の中止ＩＤ管理テーブル２３２を参照して、受信した中止ＩＤと同じＩＤが、中止ＩＤ管理テーブル２３２内にあるか否かを判断して、受信した中止ＩＤについて照合を行う（ステップＳ３５４）。
【００４９】
そして、ＣＰＵ２０２は、その照合の結果、受信した中止ＩＤと同じＩＤが、中止ＩＤ管理テーブル２３２にある場合には、スキャナ１００に対して、スキャニング処理再開許可の指示を出す。さらに、ＣＰＵ２０２は、その中止ＩＤに対応する退避データ２３４の格納先の情報を、中止ＩＤ管理テーブル２３２から読み出し、その格納先（格納先フォルダ）から、中止ＩＤに対応した退避データ２３４を取得する（ステップＳ３５６）。
【００５０】
一方、スキャナ１００では、ＣＰＵ１０２が、通信部１０６を介して、スキャニング処理再開許可の指示を受け取ると、画像読取部１１２を制御して、画像読取部１１２により画像の読み取りを開始させる（ステップＳ３０８）。そして、ＣＰＵ１０２は、画像読取部１１２から出力されるスキャニングデータ（ＲＡＷデータ）を、通信部１０６からサーバ２００に送信する（ステップＳ３１０）。
【００５１】
なお、照合の結果、受信した中止ＩＤと同じＩＤが、中止ＩＤ管理テーブル２３２にない場合には、ＣＰＵ２０２が、スキャナ１００に対して、中止ＩＤの再入力要求を出し、スキャナ１００において、ＣＰＵ１０２が、その再入力要求を受け取ると、表示部１１０に、中止ＩＤの再入力を促すメッセージを表示するようにしてもよい。
【００５２】
さて、スキャナ１００からスキャニングデータが送信された場合、サーバ２００では、ＣＰＵ２０２は、そのスキャニングデータ（ＲＡＷデータ）を、通信部２０６を介して受信する。そして、ＣＰＵ２０２は、そのスキャニングデータ（ＲＡＷデータ）を、格納先から取得した退避データ（ＲＡＷデータ）とマージしながら（ステップＳ３５８）、１ページ毎に、指定ファイルフォーマット（この場合、ＰＤＦ）に変換する（ステップＳ３３６）。このとき、退避データは、前述したとおり、ページ単位のＲＡＷデータであるため、マージする際には、退避データの後に、スキャニングデータ（ＲＡＷデータ）をそのまま付加されることになる。
【００５３】
その後の処理は、図２で示したステップＳ１３８からステップＳ１４０までの処理と同様であるので、それら処理についての説明は省略する。こうして、図５に示す、再開時における一連の処理が終了する。
【００５４】
ところで、上記した説明では、スキャナ１００のユーザがスキャニング処理の中止を選択したことによって、スキャニング処理が中断される場合を例として説明したが、例えば、エラーが発生したことによって、スキャニング処理が中断される場合もあり得る。
【００５５】
例えば、スキャナ１００側でエラーが発生した場合には、スキャナ１００のＣＰＵ１０２が、図３のステップ２１４の処理（中止命令の送信）に代えて、そのエラーの発生をサーバ２００に通知するようにする。これに対し、サーバ２００では、ＣＰＵ２０２が、この通知を受け取ると、ステップ２４２の処理と同様に、それまで受信していたスキャニングデータから、退避データ２３４を生成するようにする。それ以降の処理は、図３に示した処理と同様となる。
【００５６】
一方、サーバ２００（連携ソフトウェア）側でエラーが発生した場合には、サーバ２００のＣＰＵ２０２は、そのエラーの発生をスキャナ１００に通知すると共に、ステップ２４２の処理と同様に、それまで受信していたスキャニングデータから、退避データ２３４を生成する。また、スキャナ１００では、ＣＰＵ１０２が、その通知を受け取ると、スキャニングを中止して待機するようにする。それ以降の処理は、図３に示した処理と同様となる。このようにして、エラーが発生したことによって、スキャニング処理が中断される場合にも、上記した処理と同等の処理を実現することができる。
【００５７】
Ａ−３．実施例の効果：
以上説明したように、本実施例によれば、スキャナ１００のユーザがスキャニング処理の中止を選択したり、エラーが発生したりして、スキャニング処理が中断された場合に、サーバ２００において、中止ＩＤを発行し、その中止ＩＤと退避データとを対応付けて管理するようにしている。そのため、スキャニング処理を再開するに当たり、退避データが残っているため、ユーザは、スキャニング処理を最初からやり直さなくてもよく、それ以降のデータが得られるように、スキャニング処理を再開すればよい。しかも、ユーザがスキャナ１００に中止ＩＤを入力するだけで、その中止ＩＤに対応する退避データに、再開後に得られたスキャニングデータがマージされるため、マージして得られるデータとしては、中断なく正常に処理がなされた場合のデータと同じものを得ることができる。従って、スキャニング処理を再開する場合でも、ユーザは時間と労力を節約することができる。
【００５８】
Ａ−４．第１の実施例に対する変形例：
上記した実施例では、中止ＩＤを、サーバ２００側で発行するようにしていたが、スキャナ１００側で発行するようにしてもよい。
【００５９】
また、上記した実施例では、ユーザに中止ＩＤを知らせるために、その中止ＩＤをスキャナ１００側で表示するようにしていたが、他の手段でユーザに知らせるようにしてもらい。例えば、中止ＩＤを電子メールに記載して、クライアントＰＣ３００に送信するようにしてもよい。この場合、ユーザは、クライアントＰＣ３００におけるモニタの表示画面で中止ＩＤを知ることができる。また、中止ＩＤをサーバ２００（連携ソフトウェア）が管理しているログに記録し、ユーザは、サーバ２００におけるモニタの表示画面で中止ＩＤを知ることができる。
【００６０】
Ｂ．第２の実施例：
Ｂ−１．実施例の構成：
図６は本発明の第２の実施例としてのスキャニングシステムの概略構成を示すブロック図である。
【００６１】
図６に示すとおり、本実施例のスキャニングシステムは、スキャナ５００と、サーバ６００と、クライアントＰＣ７００と、で構成されており、各構成要素は、イーサネット（登録商標）などのネットワーク８００を介して、互いに接続されている。
【００６２】
このうち、スキャナ５００は、図１に示したスキャナ１００と一部構成が異なっている。すなわち、スキャナ５００は、主として、プログラムを実行することにより種々の処理や制御を行うＣＰＵ５０２と、プログラムを格納したり、各種データや情報を一時的に格納したりするためのメモリ５０４と、ネットワーク８００を介して他の装置との間で各種データや情報などの伝送を行う通信部５０６と、タッチパネルなどから成り、ユーザからの指示などを入力するための操作部５０８と、液晶パネルなどから成り、各種データや情報などを表示するための表示部５１０と、イメージセンサなどから成り、原稿などの紙から画像などを読み取るための画像読取部５１２と、を備えている他、ハードディスクドライブや半導体メモリデバイスなどから成り、各種データや情報を記憶するための外部記憶デバイス５１４を備えている。なお、外部記憶デバイス５１４は、後述するように、サムネイル画像データ５３２や退避データ５３４などを記憶することが可能である。
【００６３】
また、サーバ６００及びクライアントＰＣ７００は、ＣＰＵやメモリなど、各種構成要素を備えているが、図では省略されている。なお、装置同士は、有線で接続される代わりに、無線で接続されてもよい。
【００６４】
なお、本実施例において、スキャナ５００は、請求項におけるスキャニング装置に、ＣＰＵ５０２は、請求項における制御部に、メモリ５０４は、請求項における格納部に、それぞれ相当する。
【００６５】
Ｂ−２．実施例の動作：
図７は図６のスキャニングシステムにおける正常時の処理手順を示すフローチャートである。図７を用いて、正常時の処理について説明する。なお、図７において、Ａ及びＢは、後述する図９におけるＡ及びＢにそれぞれ接続される。
【００６６】
図７において、第１の実施例の場合と同様に、まず、スキャナ５００のユーザが、スキャナ５００の操作部５０８を操作して、スキャニングの設定及びスキャンデータの格納先などを指定する（ステップＳ５０２）。これに対し、スキャナ５００では、ＣＰＵ５０２が、指定された設定及び格納先などの情報を、通信部５０６からネットワーク８００を介してサーバ６００に送信する（ステップＳ５０４）。
【００６７】
その後、ユーザが、操作部５０８を操作してスキャニング処理の開始を指示すると、ＣＰＵ５０２は、外部記憶デバイス５１４内に、退避データ５３４が存在するか否かを判定する（ステップＳ５０７）。なお、退避データの内容については後ほど説明する。判定の結果、退避データ５３４が存在しない場合には、ＣＰＵ５０２は、画像読取部５１２を制御して、画像読取部５１２によって原稿などの紙から画像の読み取りを開始させる（ステップＳ５０８）。そして、ＣＰＵ５０２は、画像読取部５１２から出力されるスキャニングデータを、メモリ５０４または外部記憶デバイス５１４に順次蓄積させる（ステップＳ５１０）。その後、画像読取部５１２において、全ての紙（原稿など）から画像を読み取ったら、ＣＰＵ５０２は、スキャニング処理を完了し（ステップＳ５１２）、蓄積していた全てのスキャニングデータをサーバ６００に送信する（ステップＳ５１４）。サーバ６００では、それら送信されたスキャニングデータを受信して、先に送信された格納先の情報に基づいて、それら全てのスキャニングデータをさらにクライアントＰＣ７００に送信する。こうして、図７に示す、正常における一連の処理が終了する。なお、退避データ５３４が存在する場合の処理については後ほど説明する。
【００６８】
図８は図６のスキャニングシステムにおける中止時の処理手順を示すフローチャートである。図８を用いて、スキャナ５００のユーザが、途中でスキャニング処理の中止を選択した場合の処理について説明する。図８において、ステップＳ６０２からステップＳ６１０までの処理は、図７で示したステップＳ１０２からステップＳ１１０までの処理と同様であるので、それら処理についての説明は省略する。なお、図８において、Ａは、後述する図９におけるＡに接続される。
【００６９】
スキャナ５００において、スキャニング処理が行われている最中に、スキャナ５００のユーザが、操作部５０８を操作してスキャニング処理の中止を指示すると（ステップＳ６１２）、ＣＰＵ５０２は、画像読取部５１２を制御して、スキャニング処理を中止させる。そして、その時までに得られているスキャニングデータのうち、最終ページのデータに基づき、その最終ページについてのサムネイル画像を作成し、そのサムネイル画像のデータ５３２を、外部記憶デバイス５１４に保存する（ステップＳ６１４）。従って、例えば、スキャニング処理を中止した際、スキャニングがページの途中であった場合でも、そのページを最終ページとして、サムネイル画像の作成が行われる。
【００７０】
さらに、ＣＰＵ５０２は、それまで蓄積していたスキャニングデータを、退避データ５３４として外部記憶デバイス５１４に保存する（ステップＳ６１６）。こうして、図８に示す、中止時における一連の処理が終了する。
【００７１】
図９及び図１０はそれぞれ図６のスキャニングシステムにおける再開時の処理手順の主要部分を示すフローチャートである。これら図を用いて、スキャニング処理中止後に、スキャナ１００のユーザが、スキャニング処理の再開を指示した場合の処理について説明する。なお、図９におけるＡ及びＢは、図７または図８におけるＡ及びＢに、それぞれ接続される。また、図９におけるＣ及びＤは、図１０におけるＣ及びＤに、それぞれ接続される。
【００７２】
スキャニング処理中止後に、図７に示したステップＳ５０２からＳ５０４の処理を経た後、スキャナ５００のユーザが、操作部５０８を操作してスキャニング処理の開始を指示すると（ステップＳ５０６）、ＣＰＵ５０２は、外部記憶デバイス５１４内に、退避データ５３４が存在するか否かを判定する（ステップＳ５０７）。今回は、スキャニング処理の中止後であって、外部記憶デバイス５１４内には、退避データ５３４が存在するため、ＣＰＵ５０２は、外部記憶デバイス５１４内に退避データ５３４が存在すると判定する。
【００７３】
そこで、処理は図７のＡから図９のＡに移り、ＣＰＵ５０２は、外部記憶デバイス５１４から、保存されている全てのサムネイル画像データを取得し（ステップＳ７０２）、それらサムネイル画像データに基づいて、表示部５１０に、サムネイル画像の一覧を表示させる（ステップＳ７０４）。この結果、表示部５１０には、現在保存されている全ての退避データ５３４に関して、その最終ページの画像がそれぞれ表示されることになる。
【００７４】
そこで、ユーザは、そのサムネイル画像の一覧を見て、それらサムネイル画像の中から、スキャニング処理を再開したい退避データ５３４に関して、その退避データ５３４に対応するサムネイル画像を、操作部５０８を操作することにより、選択する。これに対し、ＣＰＵ５０２が、ユーザによりサムネイル画像が選択されたことを認識すると（ステップＳ７０６）、画像読取部５１２を制御して、画像読取部５１２によって画像の読み取りを開始させる（ステップＳ７０８）。そして、ＣＰＵ５０２は、その選択されたサムネイル画像に基づき、そのサムネイル画像に対応する退避データ５３４を外部記憶デバイス５１４内から見い出し、その退避データ５３４の後に、画像読取部５１２から出力されるスキャニングデータを蓄積させる（ステップＳ７１０）。その後、処理は図９のＢから図７のＢに移り、画像読取部５１２において、全ての紙（原稿など）から画像を読み取ったら、ＣＰＵ５０２は、スキャニング処理を完了し（ステップＳ５１２）、蓄積していた全てのスキャニングデータをサーバ６００に送信する（ステップＳ５１４）。
【００７５】
一方、表示部５１０にサムネイル画像の一覧を表示させた際に、ユーザによって、何れのサムネイル画像も選択されなかった場合には（ステップＳ７０６）、処理が図９のＣから図１０のＣに移り、ＣＰＵ５０２は、画像読取部５１２を制御して、画像読取部５１２によって画像の読み取りを開始させる（ステップＳ８０２）。そして、ＣＰＵ５０２は、画像読取部５１２から出力されるスキャニングデータのうち、最初のページのデータを取得する（ステップＳ８０４）。
【００７６】
次に、ＣＰＵ５０２は、外部記憶デバイス５１４に保存されている全ての退避データ５３４について、その退避データ５３４から得られる最終ページのデータと、ステップＳ８０４で取得したスキャニングデータと、を順次比較し（ステップＳ８０６）、取得したスキャニングデータと一致する最終ページのデータが存在するか否かを判定する（ステップＳ８１０）。具体的には、ＣＰＵ５０２は、取得した最初のページのデータについて、傾き補正を行った後、その補正後の最初のページのデータと、最終ページのデータと、で、一定のデータ量毎に比較を行い（すなわち、バイナリィデータ同士での比較を行い）、比較の結果、両者の差が所定の閾値範囲以内であれば、一致していると判断する。
【００７７】
判定の結果、一致する最終ページのデータが存在する場合には、ＣＰＵ５０２は、その最終ページのデータが属する退避データ５３４を、外部記憶デバイス５１４内から見い出し、その退避データ５３４における最終ページのデータを、ステップＳ８０４で取得したスキャニングデータと交換する（ステップＳ８１２）。さらに、ＣＰＵ５０２は、画像読取部５１２からその後出力されるスキャニングデータを、交換後のデータの後に、順次蓄積させていく（ステップＳ８１４）。その後、処理は図１０のＤから図９のＤに移り、以降の処理は前述したとおりであるので、説明は省略する。
【００７８】
また、ステップＳ８１０における判定の結果、一致する最終ページのデータが存在しない場合には、ＣＰＵ５０２は、ステップＳ８０６で取得したスキャニングデータをメモリ５０４または外部記憶デバイス５１４に蓄積させると共に、そのスキャニングデータの後に、画像読取部５１２からその後出力されるスキャニングデータを順次蓄積させていく（ステップＳ８１６）。その後、処理は図１０のＤから図９のＤに移り、以降の処理は前述したとおりであるので、説明は省略する。こうして、図９及び図１０並びに図７に示す、再開時における一連の処理が終了する。
【００７９】
なお、上記した説明では、再開時において、どのページからスキャニングを開始させたらよいかについては、特に言及しなかった。しかし、最終的に蓄積されたスキャニングデータ（中止前に得られたデータ（退避データ）と再開後に得られたデータとを含む）が、ページとして連続するようにするためには、以下に述べるようなページからスキャニングが開始されるように、ユーザは原稿をセットする必要がある。
【００８０】
ユーザがサムネイル画像を選択した場合において、その選択したサムネイル画像（すなわち、最終ページ）が、ページの途中で切れたような不完全な画像である場合には、そのページからスキャニングが開始されるようにする必要がある。このようにすると、図９のステップＳ７１８の処理では、不完全な画像である最終ページは廃棄され、その前のページに、スキャニング処理開始後の最初のページがつながり、ページとしての連続性が保たれることになる。
【００８１】
また、ユーザがサムネイル画像を選択した場合において、その選択したサムネイル画像（すなわち、最終ページ）が、ページ途中で切れておらず、完全な画像である場合には、その次のページからスキャニングが開始されるようにする必要がある。このようにすると、図９のステップＳ７１８の処理において、完全な画像である最終ページに、スキャニング処理開始後の最初のページがつながり、ページとしての連続性が保たれることになる。
【００８２】
なお、選択したサムネイル画像（すなわち、最終ページ）が完全な画像であるか不完全な画像であるかは、ユーザが見て判断してもよいし、スキャナ１００のＣＰＵ１０２が、そのサムネイル画像を解析して判断し、ユーザに提示するようにてもよい。例えば、選択されたサムネイル画像の縦横のビット数をカウントして、所定の閾値に達していれば、完全な画像であると判定し、達していなければ、不完全な画像であると判断する。
【００８３】
一方、ユーザがサムネイル画像を選択しなかった場合には、最終ページが完全であるか、不完全であるかに関わらず、そのページからスキャニングが開始されるようにする必要がある。このようにすると、図１０のステップＳ８１２の処理において、最終ページは、スキャニング処理開始後の最初のページに置き換えられるため、ページとしての連続性が保たれることになる。
【００８４】
ところで、上記した説明では、スキャナ５００のユーザがスキャニング処理の中止を選択したことによって、スキャニング処理が中断される場合を例として説明したが、例えば、エラーが発生したことによって、スキャニング処理が中断される場合もあり得る。
【００８５】
すなわち、スキャナ１００側でエラーが発生した場合や、サーバ６００側でエラーが発生した場合や、ネットワーク８００においてエラーが発生した場合には、ＣＰＵ５０２が、それを検知し、画像読取部５１２を制御して、スキャニング処理を中止させ、ステップＳ６１４以降の処理を実行するようにすればよい。このようにして、エラーが発生したことによって、スキャニング処理が中断される場合にも、上記した処理と同等の処理を実現することができる。
【００８６】
Ｂ−３．実施例の効果：
以上説明したように、本実施例によれば、スキャナ５００のユーザがスキャニング処理の中止を選択したり、エラーが発生したりして、スキャニング処理が中断された場合に、スキャナ５００では、最終ページのサムネイル画像を作成し、そのデータを保存すると共に、それまで蓄積していたスキャニングデータを、退避データ５３４として保存するようにしている。そのため、ユーザがスキャニング処理を再開するに当たり、退避データが残っているため、スキャニング処理を最初からやり直さなくてもよく、それ以降のデータが得られるように、スキャニング処理を再開すればよい。
【００８７】
また、スキャニング処理を再開する際には、保存している全てのサムネイル画像の一覧を表示するようにしている。従って、ユーザは、退避データとしてどのようなデータが退避されているかを知ることができ、また、複数の退避データの中から、再開させたいデータを容易に選択することができる。さらに、その選択されたサムネイル画像に対応する退避データの後に、スキャニング処理再開後のスキャニングデータを蓄積するようしているため、最終的に蓄積されたスキャニングデータとしては、中断なく正常に処理がなされた場合のデータと同じものを得ることができる。従って、スキャニング処理を再開する場合でも、ユーザは時間と労力を節約することができる。
【００８８】
また、ユーザがサムネイル画像を選択しない場合には、スキャニング処理開始後の最初のページのデータと、退避データにおける最終ページのデータと、を順次比較して、一致する退避データ（すなわち、今回のスキャニングデータがつながるべき先の退避データ）を自動的に検出するようにしている。そして、一致する退避データが検出された場合、その退避データにおける最終ページのデータに、スキャニング処理開始後の最初のページのデータを置き換えて、さらにその後に、その後得られたスキャニングデータを蓄積するようにしているため、最終的に蓄積されたスキャニングデータとしては、中断なく正常に処理がなされた場合のデータと同じものを得ることができる。従って、この場合も、ユーザがスキャニング処理を再開する場合でも、時間と労力を節約することができる。
【００８９】
Ｂ−４．第２の実施例に対する変形例：
上記した実施例では、スキャニングデータを退避データ５３４として退避するようにしていたが、スキャニング処理を行う際にユーザに関して認証処理を行う、いわゆる認証スキャンの場合は、ユーザに関する情報も退避すべく保存するようにしてもよい。
【００９０】
Ｃ．変形例：
なお、本発明は上記した実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様にて実施することが可能である。
【００９１】
上記した各実施例においては、スキャニング装置として、単機能のスキャナを用いるようにしたが、スキャニング機能だけでなく、印刷機能やコピー機能などを備えた複合機を用いても良いし、印刷機能や通信機能などを備えたファクシミリ装置を用いるようにしてもよい。
【図面の簡単な説明】
【００９２】
【図１】本発明の第１の実施例としてのスキャニングシステムの概略構成を示すブロック図である。
【図２】図１のスキャニングシステムにおける正常時の処理手順を示すフローチャートである。
【図３】図１のスキャニングシステムにおける中止時の処理手順を示すフローチャートである。
【図４】図１のメモリ２０４内における中止ＩＤ管理テーブル２３２の一例を示す説明図である。
【図５】図１のスキャニングシステムにおける再開時の処理手順を示すフローチャートである。
【図６】本発明の第２の実施例としてのスキャニングシステムの概略構成を示すブロック図である。
【図７】図６のスキャニングシステムにおける正常時の処理手順を示すフローチャートである。
【図８】図６のスキャニングシステムにおける中止時の処理手順を示すフローチャートである。
【図９】図６のスキャニングシステムにおける再開時の処理手順の主要部分を示すフローチャートである。
【図１０】図６のスキャニングシステムにおける再開時の処理手順の主要部分を示すフローチャートである。
【符号の説明】
【００９３】
１００…スキャナ
１０２…ＣＰＵ
１０４…メモリ
１０６…通信部
１０８…操作部
１１０…表示部
１１２…画像読取部
２００…サーバ
２０２…ＣＰＵ
２０４…メモリ
２０６…通信部
２１２…外部記憶デバイス
２３２…中止ＩＤ管理テーブル
２３４…退避データ
３００…クライアントＰＣ
４００…ネットワーク
５００…スキャナ
５０２…ＣＰＵ
５０４…メモリ
５０６…通信部
５０８…操作部
５１０…表示部
５１２…画像読取部
５１４…外部記憶デバイス
５３２…サムネイル画像データ
５３４…退避データ
６００…サーバ
７００…クライアントＰＣ
８００…ネットワーク
【図１】
0004924509.tif 000002
【図２】
0004924509.tif 000003
【図３】
0004924509.tif 000004
【図４】
0004924509.tif 000005
【図５】
0004924509.tif 000006
【図６】
0004924509.tif 000007
【図７】
0004924509.tif 000008
【図８】
0004924509.tif 000009
【図９】
0004924509.tif 000010
【図１０】
0004924509.tif 000011