(57)【要約】【課題】データの転送とは無関係な通信負荷の発生や受信側の機器の改修を要することなくタイムアウトを抑止する。【解決手段】画像読取装置１は、原稿から画像を読み取るスキャナ１１と、スキャナ１１が読み取った画像を画像データ２０に変換するＣＰＵ１２と、画像データ２０を記憶する揮発メモリ１４と、を備え、ＣＰＵ１２は、スキャナ１１が画像の読み取りを休止している状態であるか否かを検知し、検知結果に基づいてサーバ２に対する転送レートを決定し、決定された転送速度で通信装置１６を介して画像データ２０をサーバ２に対して転送する。【選択図】図６
2010258639.tif 000002
【特許請求の範囲】
【請求項１】
画像を読み取る画像読取部と、
前記画像を記憶する記憶部と、
前記画像読取部が画像の読み取りを休止している状態であるか否かを検知し、検知の結果に基づいて外部機器に対する前記画像の転送速度を決定し、決定された転送速度で前記画像を前記外部機器へ転送する制御部と、
を備えることを特徴とする画像読取装置。
【請求項２】
前記画像読取部が画像の読み取りを休止している状態は、前記画像読取部がエラーを生じている状態であることを特徴とする請求項１に記載の画像読取装置。
【請求項３】
前記制御部は、前記画像読取部が画像の読み取りを休止している状態の場合、前記画像読取部が画像の読み取りを休止している状態でない場合に比して前記転送速度を低くすることを特徴とする請求項１又は２に記載の画像読取装置。
【請求項４】
画像を読み取る画像読取部と、
前記画像を記憶する記憶部と、
前記記憶部に記憶された前記画像のデータ量を取得し、前記データ量に基づいて外部機器に対する前記画像の転送速度を決定し、決定された転送速度で前記画像を前記外部機器へ転送する制御部と、
を備えることを特徴とする画像読取装置。
【請求項５】
画像を読み取る画像読取部と、
前記画像を記憶する記憶部と、
前記画像読取部が前記画像の読み取り以外の独立した動作を行っているか否かを判定し、判定の結果に基づいて外部機器に対する前記画像の転送速度を決定し、決定された転送速度で前記画像を前記外部機器へ転送する制御部と、
を備えることを特徴とする画像読取装置。
【請求項６】
前記画像の読み取り以外の独立した動作は、前記画像読取部のカラー調整動作であることを特徴とする請求項５に記載の画像読取装置。
【請求項７】
前記制御部は、前記記憶部に記憶された前記画像のデータ量を取得し、前記判定の結果及び前記データ量に基づいて前記転送速度を決定することを特徴とする請求項５又は６に記載の画像読取装置。
【請求項８】
前記制御部は、前記データ量と予め定められたデータ量との比較結果に基づいて前記転送速度を決定することを特徴とする請求項４又は７に記載の画像読取装置。
【請求項９】
前記予め定められたデータ量を設定するデータ量設定部を備えることを特徴とする請求項８に記載の画像読取装置。
【請求項１０】
前記制御部は、前記データ量が前記予め定められたデータ量より小さい場合、前記データ量が前記予め定められたデータ量以上である場合に比して前記転送速度を低くすることを特徴とする請求項８又は９に記載の画像読取装置。
【請求項１１】
前記制御部は、予め定められた転送速度に基づいて前記転送速度を低くすることを特徴とする請求項３又は１０に記載の画像読取装置。
【請求項１２】
前記予め定められた転送速度は、前記画像を転送するプロトコルと対応付けられることを特徴とする請求項１１に記載の画像読取装置。
【請求項１３】
前記制御部は、前記画像を前記外部機器へ転送した最終転送時刻を取得し、
前記画像の転送においてタイムアウトを生じた場合にタイムアウトを生じた時刻を取得し、
前記最終転送時刻及び前記タイムアウトを生じた時刻に基づいて新たな転送速度を算出し、
算出された新たな転送速度に基づいて前記予め定められた転送速度を変更することを特徴とする請求項１１又は１２に記載の画像読取装置。
【請求項１４】
コンピュータを、
画像を読み取る手段、
前記画像を記憶する手段、
前記画像の読み取りを休止している状態か否かを検知する手段、
検知の結果に基づいて外部機器に対する前記画像の転送速度を決定する手段、
決定された転送速度で前記画像を前記外部機器へ転送する手段、
として機能させることを特徴とするプログラム。
【請求項１５】
前記画像の読み取りを休止している状態は、画像の読み取りにエラーを生じている状態であることを特徴とする請求項１４に記載のプログラム。
【請求項１６】
画像の読み取りを休止している状態の場合、画像の読み取りを休止している状態でない場合に比して前記転送速度を低くすることを特徴とする請求項１４又は１５に記載のプログラム。
【請求項１７】
予め定められた転送速度に基づいて前記転送速度を低くすることを特徴とする請求項１６に記載のプログラム。
【請求項１８】
前記予め定められた転送速度は、前記画像を転送するプロトコルと対応付けられることを特徴とする請求項１７に記載のプログラム。
【請求項１９】
前記コンピュータを、
前記画像を前記外部機器へ転送した最終転送時刻を取得する手段、
前記画像の転送においてタイムアウトを生じた場合にタイムアウトを生じた時刻を取得する手段、
前記最終転送時刻及び前記タイムアウトを生じた時刻に基づいて新たな転送速度を算出する手段、
算出された新たな転送速度に基づいて前記予め定められた転送速度を変更する手段、
として機能させることを特徴とする請求項１７又は１８に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像読取装置及びプログラムに関する。
【背景技術】
【０００２】
スキャナ等の画像読取装置において、読み取った画像を外部機器で取り扱い可能なフォーマットのデータ（以下、単に「画像データ」と称する）に変換して外部機器に転送する機能を有する画像読取装置が知られている。例えば、画像データをFTP(File Transfer Protocol)等のネットワークプロトコルを用いて外部機器（例えばサーバ等）に転送する画像読取装置がある。
【０００３】
画像読取装置は、画像データを一時的にメモリへ記憶させ、メモリに記憶された画像データをサーバへ送信する。このとき、メモリの容量には限りがあり、一度の読み取り作業で生成された画像データの全てを一括してメモリに記憶させることができないことがある。
このため、メモリの容量を有効活用するための機能を備えている画像読取装置がある。例えば、複数ページに渡る画像データの場合に画像の読み取り及びデータ化を完了したページから順次サーバへ送信する機能を有する画像読取装置や、大容量の画像データの先頭部分から順次サーバへ送信する機能を有する画像読取装置がある。
【０００４】
データ化を完了したページやデータの先頭部分から順次サーバへ送信する画像読取装置では、紙詰まり等何らかの理由により画像の読み取りを休止する事態が生じると、転送する画像データの生成も休止される。画像データの生成が休止されたことによりサーバに対する画像データの転送が止まり、サーバの転送受付待ち時間を過ぎても画像データの転送を再開できない場合、転送処理のタイムアウト（以下、単に「タイムアウト」と称する）を生じて画像読取装置とサーバとの通信が切断されてしまう。この場合、それまで転送した画像データは破棄されてしまい、もう一度最初から画像の読み取り及び画像データの転送を行わなければならない。
【０００５】
そこで、タイムアウトを防ぐために、所定の時間間隔で送信側の機器から受診側の機器に対してコマンドを送信する構成が知られている（例えば特許文献１）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００８−１４１４８９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１に記載の構成において送信されるコマンドは、転送の対象となるデータとは無関係であり、該コマンドによってデータの転送とは無関係な通信負荷を生じさせる。加えて、該コマンドを受け付けるための仕組みを受信側にあらかじめ設ける必要があるため、特許文献１に記載の構成を採用する場合、あらかじめ受信側の機器の改修を要する。
【０００８】
本発明の課題は、データの転送とは無関係な通信負荷の発生や受信側の機器の改修を要することなくタイムアウトを抑止することである。
【課題を解決するための手段】
【０００９】
請求項１に記載の発明による画像読取装置は、画像を読み取る画像読取部と、前記画像を記憶する記憶部と、前記画像読取部が画像の読み取りを休止している状態であるか否かを検知し、検知の結果に基づいて外部機器に対する前記画像の転送速度を決定し、決定された転送速度で前記画像を前記外部機器へ転送する制御部と、を備えることを特徴とする。
【００１０】
請求項２に記載の発明は、請求項１に記載の画像読取装置であって、前記画像読取部が画像の読み取りを休止している状態は、前記画像読取部がエラーを生じている状態であることを特徴とする。
【００１１】
請求項３に記載の発明は、請求項１又は２に記載の画像読取装置であって、前記制御部は、前記画像読取部が画像の読み取りを休止している状態の場合、前記画像読取部が画像の読み取りを休止している状態でない場合に比して前記転送速度を低くすることを特徴とする。
【００１２】
請求項４に記載の発明による画像読取装置は、画像を読み取る画像読取部と、前記画像を記憶する記憶部と、前記記憶部に記憶された前記画像のデータ量を取得し、前記データ量に基づいて外部機器に対する前記画像の転送速度を決定し、決定された転送速度で前記画像を前記外部機器へ転送する制御部と、を備えることを特徴とする。
【００１３】
請求項５の記載の発明による画像読取装置は、画像を読み取る画像読取部と、前記画像を記憶する記憶部と、前記画像読取部が前記画像の読み取り以外の独立した動作を行っているか否かを判定し、判定の結果に基づいて外部機器に対する前記画像の転送速度を決定し、決定された転送速度で前記画像を前記外部機器へ転送する制御部と、を備えることを特徴とする。
【００１４】
請求項６に記載の発明は、請求項５に記載の画像読取装置であって、前記画像の読み取り以外の独立した動作は、前記画像読取部のカラー調整動作であることを特徴とする。
【００１５】
請求項７に記載の発明は、請求項５又は６に記載の画像読取装置であって、前記制御部は、前記記憶部に記憶された前記画像のデータ量を取得し、前記判定の結果及び前記データ量に基づいて前記転送速度を決定することを特徴とする。
【００１６】
請求項８に記載の発明は、請求項４又は７に記載の画像読取装置であって、前記制御部は、前記データ量と予め定められたデータ量との比較結果に基づいて前記転送速度を決定することを特徴とする。
【００１７】
請求項９に記載の発明は、請求項８に記載の画像読取装置であって、前記予め定められたデータ量を設定するデータ量設定部を備えることを特徴とする。
【００１８】
請求項１０に記載の発明は、請求項８又は９に記載の画像読取装置であって、前記制御部は、前記データ量が前記予め定められたデータ量より小さい場合、前記データ量が前記予め定められたデータ量以上である場合に比して前記転送速度を低くすることを特徴とする。
【００１９】
請求項１１に記載の発明は、請求項３又は１０に記載の画像読取装置であって、前記制御部は、予め定められた転送速度に基づいて前記転送速度を低くすることを特徴とする。
【００２０】
請求項１２に記載の発明は、請求項１１に記載の画像読取装置であって、前記予め定められた転送速度は、前記画像を転送するプロトコルと対応付けられることを特徴とする  。
【００２１】
請求項１３に記載の発明は、請求項１１又は１２に記載の画像読取装置であって、前記制御部は、前記画像を前記外部機器へ転送した最終転送時刻を取得し、前記画像の転送においてタイムアウトを生じた場合にタイムアウトを生じた時刻を取得し、前記最終転送時刻及び前記タイムアウトを生じた時刻に基づいて新たな転送速度を算出し、算出された新たな転送速度に基づいて前記予め定められた転送速度を変更することを特徴とする。
【００２２】
請求項１４に記載の発明によるプログラムは、コンピュータを、画像を読み取る手段、前記画像を記憶する手段、前記画像の読み取りを休止している状態か否かを検知する手段、検知の結果に基づいて外部機器に対する前記画像の転送速度を決定する手段、決定された転送速度で前記画像を前記外部機器へ転送する手段、として機能させることを特徴とする。
【００２３】
請求項１５に記載の発明は、請求項１４に記載のプログラムであって、前記画像の読み取りを休止している状態は、画像の読み取りにエラーを生じている状態であることを特徴とする。
【００２４】
請求項１６に記載の発明は、請求項１４又は１５に記載のプログラムであって、画像の読み取りを休止している状態の場合、画像の読み取りを休止している状態でない場合に比して前記転送速度を低くすることを特徴とする。
【００２５】
請求項１７に記載の発明は、請求項１６に記載のプログラムであって、予め定められた転送速度に基づいて前記転送速度を低くすることを特徴とする。
【００２６】
請求項１８に記載の発明は、請求項１７に記載のプログラムであって、前記予め定められた転送速度は、前記画像を転送するプロトコルと対応付けられることを特徴とする。
【００２７】
請求項１９に記載の発明は、請求項１７又は１８に記載のプログラムであって、前記コンピュータを、前記画像を前記外部機器へ転送した最終転送時刻を取得する手段、前記画像の転送においてタイムアウトを生じた場合にタイムアウトを生じた時刻を取得する手段、前記最終転送時刻及び前記タイムアウトを生じた時刻に基づいて新たな転送速度を算出する手段、算出された新たな転送速度に基づいて前記予め定められた転送速度を変更する手段、として機能させることを特徴とする。
【発明の効果】
【００２８】
本発明によれば、データの転送とは無関係な通信負荷の発生や受信側の機器の改修を要することなくタイムアウトを抑止することができる。
【図面の簡単な説明】
【００２９】
【図１】本発明の一実施形態である画像読取装置を含むネットワークシステムの主要構成図である。
【図２】画像読取装置の主要構成を示すブロック図である。
【図３】読み取り動作の設定及び読み取り動作開始指示に係る処理の流れを示すフローチャートである。
【図４】原稿の読み取り及び画像データ変換に係る処理の流れを示すフローチャートである。
【図５】画像データの転送に係る処理の流れを示すフローチャートである。
【図６】転送レートの決定における処理の流れを示すフローチャートである。
【図７】転送レートテーブルの内容の一例を示す説明図である。
【図８】転送レートテーブルの再計算に係る処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００３０】
以下、図を参照して本発明の実施の形態の例を詳細に説明する。
図１は、本発明の一実施形態である画像読取装置１を含むネットワークシステム１００の主要構成図である。
ネットワークシステム１００は、画像読取装置１、サーバ２及び回線３を備える。
画像読取装置１は、紙その他の読み取り対象となる媒体（以下「原稿」と称する）から画像を読み取り、当該画像を外部機器で取り扱い可能な形式の画像データ２０へ変換してサーバ２へ転送する。
サーバ２は、画像読取装置１から転送された画像データ２０を受信して記憶する。
回線３は、画像読取装置１とサーバ２とを通信可能に接続する。回線３は画像読取装置１とサーバ２とを通信可能に接続するものであれば有線、無線を問わず、画像読取装置１及びサーバ２が備える通信装置に応じて設けられる。
【００３１】
図２は、画像読取装置１の主要構成を示すブロック図である。
画像読取装置１は、スキャナ１１、ＣＰＵ１２、ＲＯＭ１３、揮発メモリ１４、不揮発メモリ１５、通信装置１６、操作パネル１７及びバス１８を備える。
【００３２】
スキャナ１１は、原稿から画像を読み取る。スキャナ１１は少なくとも、原稿をセットする原稿台と、原稿台にセットされた原稿へ光を照射する光源と、原稿によって反射した光の明暗を読み取って電気信号へ変換出力するイメージスキャナとを備え、スキャナ１１はイメージスキャナが出力した電気信号に基づいて画像（以下「スキャン画像」と称する）を生成する。
【００３３】
さらに、スキャナ１１は、複数の原稿を連続して読み取るための構成を備えており、本実施形態では該構成としてADF(Auto Document Feeder)を備える。原稿の種類に応じて、複数の原稿を連続して読み取るための構成として他の装置を用いてもよい。例えば、ネガフィルムを連続して読み込むためのホルダーや、本の各ページを連続して読み込むための自動ページめくり装置等が挙げられる。
【００３４】
ＣＰＵ１２は、画像読取装置１の各部の動作制御及び画像読取装置１が取り扱うデータの処理を行う。スキャン画像は、ＣＰＵ１２が行う処理によって画像データ２０に変換されて揮発メモリ１４に記憶される。
【００３５】
ＲＯＭ１３は、ＣＰＵ１２が行う各部の動作制御及びデータ処理において用いられる各種のプログラム等を記憶する。ＲＯＭ１３が記憶するプログラム等の例として、画像読取装置１のオペレーションシステム（ＯＳ）、スキャナ１１が読み取った画像を画像データ２０へ変換するための変換処理ソフトウェアその他の各種ソフトウェア及びデータ等が挙げられる。
【００３６】
揮発メモリ１４は、例えば半導体ＲＡＭ(Random Access Memory)等であり、画像データ２０を記憶する。また、揮発メモリ１４は、ＣＰＵ１２が行う各種処理に伴って一時的に生じるデータ、パラメータ等を記憶する。
不揮発メモリ１５は、例えばフラッシュメモリやハードディスク等であり、後述する転送レートテーブル２１や、内容の書き換えを生じうる各種ソフトウェア及びデータ等を記憶する。
ＣＰＵ１２は、ＲＯＭ１３又は不揮発メモリ１５から処理内容に応じたソフトウェア及びデータ等を読み込んで実行処理し、画像読取装置１の各部の動作制御及び画像読取装置１が取り扱うデータの処理を行う。
【００３７】
通信装置１６は、ＣＰＵ１２の制御に基づき回線３を介したサーバ２との通信を行うネットワーク・インターフェースである。通信のプロトコルはＣＰＵ１２が通信処理に用いるソフトウェア及びサーバ２の機能によって決定される。本実施形態では、画像読取装置１はFTPによる通信をサーバ２と行って画像データ２０を転送する。
【００３８】
操作パネル１７は、ユーザによる入力操作を行う為の入力装置として機能すると共に、画像読取装置１の動作に関する各種情報を表示する表示装置として機能する。操作パネル１７の表示内容はＣＰＵ１２によって制御される。
【００３９】
バス１８は、画像読取装置１の各構成を接続する。
【００４０】
次に、画像読取装置１による原稿の読み取り動作について説明する。
画像読取装置１による原稿の読み取り動作は、読み取り動作の設定及び読み取り動作開始指示を経て行われる。読み取り動作の設定及び読み取り動作開始指示は操作パネル１７を介したユーザの入力指示に基づいて行われる。
【００４１】
図３は、読み取り動作の設定及び読み取り動作開始指示に係る処理の流れを示すフローチャートである。
本実施形態における読み取り動作の設定及び読み取り動作開始指示に係る処理として、原稿の設定（ステップＳ１）、送信パラメータの設定（ステップＳ２）、読み取り指示（ステップＳ３）の工程があり、ステップＳ１、Ｓ２の設定後にステップＳ３の読み取り指示が行われると、画像読取装置１による原稿の読み取り動作（ステップＳ４）が行われる。ステップＳ１とステップＳ２は順不同であり、図３に示すフローチャートと逆の順序でもよい。
【００４２】
ステップＳ１の原稿の設定は、原稿の読み取りに関する各種の設定を行う工程である。原稿の設定における各種の設定として、例えば原稿の読み取り解像度、カラー設定、画像データ２０のフォーマット、画像サイズに関する設定、複数の原稿を連続して読み取るための各種設定等が挙げられ、この他状況に応じて必要とされる設定事項を設定してもよい。
複数の原稿を連続して読み取るための各種設定及び操作として、例えば連続スキャン、分割スキャン等が挙げられる。
【００４３】
連続スキャンは、複数回に分けてスキャナ１１に原稿をセットする作業を伴う読み取り作業である。連続スキャンを行う場合、ユーザは操作パネル１７を介して連続スキャンを行う旨の入力を行い、最初に読み込む分量の原稿をスキャナ１１へセットする。その後、ユーザが読み取り指示を行うと、スキャナ１１は最初に読み込む分量の原稿の読込の完了後に待機状態となる。その後、ユーザが引き続いて読み込む分量の原稿をスキャナ１１へセットし、操作パネル１７を介して読み取り再開を指示する旨の入力を行うと、スキャナ１１は引き続いて読み込む分量の原稿の読込を行う。以降、全ての原稿の読み取りを完了するまでスキャナ１１の待機、スキャナ１１に対する原稿のセット及び読み取り再開の指示入力が繰り返される。
連続スキャンは、例えばADFにセット可能な原稿の枚数よりも多くの原稿の読み取り作業を行う場合、ADFを用いた読み取りの途中でスキャナ１１に対する原稿の手差しを要する原稿を含む場合、ADFへセットできない原稿を一枚ずつ原稿台へセットする場合等に行われる。
【００４４】
分割スキャンは、一枚分のスキャン画像を生成するために複数回の原稿の読み取りを行う読み取り作業である。分割スキャンを行う場合、ユーザは操作パネル１７を介して分割スキャンを行う旨の入力を行い、最初に読み込む原稿をスキャナ１１へセットする。その後、ユーザが読み取り指示を行うと、スキャナ１１は最初に読み込む原稿の読込の完了後に待機状態となる。その後、ユーザが引き続いて読み込む原稿をスキャナ１１へセットし、操作パネル１７を介して読み取り再開を指示する旨の入力を行うと、スキャナ１１は引き続いて読み込む原稿の読込を行う。以降、一枚分のスキャン画像を生成するための全ての原稿の読み取りを完了するまでスキャナ１１の待機、スキャナ１１に対する原稿のセット及び読み取り再開の指示入力が繰り返される。
分割スキャンは、例えばスキャナ１１で読み取り可能な原稿のサイズよりも大きな原稿を読み取る場合等に行われる。
【００４５】
ステップＳ２の送信パラメータの設定は、画像読取装置１からサーバ２に対する画像データ２０の転送に関する各種の設定を行う工程である。送信パラメータの設定における各種の設定として、例えばサーバにアクセスするために必要な情報、画像データ２０のフォーマット、画像サイズ等が挙げられ、この他状況に応じて必要とされる設定事項を設定してもよい。サーバにアクセスするために必要な情報として、例えば転送に用いる通信のプロトコルを決定するための情報、ネットワーク上のサーバ名、ログインユーザ名、ログインパスワード、ポート番号、転送元及び転送先のディレクトリ名、プロキシ設定等が挙げられ、この他状況に応じて必要とされる設定事項を設定してもよい。
【００４６】
ステップＳ３の読み取り指示は、画像読取装置１による原稿の読み取りを開始させる指示を行う工程である。例えば、操作パネル１７に設けられたスタートボタン等、原稿の読み取りを開始させる指示を行うための入力インターフェースに対する操作をユーザが行うことで読み取り指示が行われる。
【００４７】
読み取り指示が行われると、ステップＳ４に示す画像読取装置１による原稿の読み取り動作が行われる。画像読取装置１による原稿の読み取り動作は、画像読取装置１は原稿の読み取り及び画像データ変換処理と、画像データの転送処理とを含む。
【００４８】
まず、原稿の読み取り及び画像データ変換処理について説明する。
図４は、原稿の読み取り及び画像データ変換に係る処理の流れを示すフローチャートである。
原稿の読み取り及び画像データ変換に係る処理として、メモリチェック（ステップＳ１１）、原稿のスキャン（ステップＳ１２）、スキャン画像のフォーマット変換（ステップＳ１３）、変換後画像データのメモリ保存（ステップＳ１４）、全原稿のスキャン完了チェック（ステップＳ１５）の工程がある。
【００４９】
ステップＳ１１のメモリチェックは、揮発メモリ１４の空き容量をチェックする工程である。ＣＰＵ１２は、揮発メモリ１４の空き容量が所定の空き容量以上であるか否かをチェックする。所定の空き容量は、ステップＳ１４の変換後画像データ２０のメモリ保存のために必要な揮発メモリ１４の空き容量に基づいて予め定められており、揮発メモリ１４の空き容量が所定の空き容量以上である場合（ステップＳ１１：ＹＥＳ）、ＣＰＵ１２はスキャナ１１の動作を制御して原稿のスキャン（ステップＳ１２）を行う。揮発メモリ１４の空き容量が所定の空き容量以上でない場合（ステップＳ１１：ＮＯ）、ＣＰＵ１２は揮発メモリ１４の空き容量が所定の空き容量以上となるまで待機する。
【００５０】
ステップＳ１２の原稿のスキャンは、スキャナ１１による原稿の読み取りを行いスキャン画像を得る工程である。得られたスキャン画像はＣＰＵ１２に入力される。
ステップＳ１２の原稿のスキャン後、ＣＰＵ１２はスキャン画像のフォーマット変換を行う（ステップＳ１３）。
【００５１】
ステップＳ１３のスキャン画像のフォーマット変換は、スキャン画像を画像データ２０に変換、即ちスキャン画像から画像データ２０を生成する工程である。ＣＰＵ１２は、ステップＳ１、Ｓ２において設定された画像データ２０のフォーマットに従いスキャナ１１から入力されたスキャン画像から該フォーマットの画像データ２０を生成する。
ステップＳ１３のスキャン画像のフォーマット変換後、ＣＰＵ１２は変換後画像データのメモリ保存を行う（ステップＳ１４）。
【００５２】
ステップＳ１４の変換後画像データのメモリ保存は、ステップＳ１３において生成された画像データ２０を揮発メモリ１４に記憶させる工程である。ＣＰＵ１２は、生成した画像データ２０を揮発メモリ１４に記憶させる。
ステップＳ１４の変換後画像データのメモリ保存後、ＣＰＵ１２は全原稿のスキャン完了チェックを行う（ステップＳ１５）。
【００５３】
ステップＳ１５の全原稿のスキャン完了チェックは、全ての原稿の読み取り及びスキャン画像の画像データ２０への変換を完了したか否かを判定する工程である。ＣＰＵ１２は、スキャナ１１の状態、ステップＳ１の原稿の設定及び操作パネル１７に対する入力操作内容に基づいて全ての原稿の読み取り及びスキャン画像の画像データ２０への変換を完了したか否かを判定する。全ての原稿の読み取り及びスキャン画像の画像データ２０への変換を完了した場合（ステップＳ１５：ＹＥＳ）、画像読取装置１は原稿の読み取り及び画像データ変換処理を終了し、全ての原稿の読み取り又はスキャン画像の画像データ２０への変換を完了していない場合（ステップＳ１５：ＮＯ）、ステップＳ１１の処理に戻る。なお、全ての原稿の読み取りを完了し、スキャン画像の画像データ２０への変換を完了していない場合にはステップＳ１２の原稿のスキャンを省略してスキャン画像のフォーマット変換及び変換後画像データのメモリ保存を行う。
【００５４】
次に、画像データの転送処理について説明する。
画像データの転送処理は、揮発メモリ１４に所定容量以上の画像データ２０が記憶された場合に開始される。本実施形態では、原稿１ページ分の画像データ２０が揮発メモリ１４に記憶された場合、ＣＰＵ１２は画像データの転送処理を開始する。画像データの転送処理の開始後、原稿の読み取り及び画像データ変換処理と画像データの転送処理は並行して行われる。
【００５５】
本実施形態で取り扱う画像データ２０は、画像データ２０の末尾部分が生成される前に画像データ２０のヘッダ及びファイルの一部分の内容を確定することができるフォーマットによる。例えば、ファイルの末尾部分が生成される前にファイルヘッダに含まれる情報を確定させ、ファイルヘッダに引き続き原稿の各ページに対応する画像データ２０を連続して生成することができるフォーマット（例えばPDF(Portable Document Format)等）や、次ページの先頭アドレスが確定した時点で該次ページの直前のページの画像データ２０の内容を確定させることができるフォーマット（例えばTIFF(Tagged Image File Format)等）が挙げられる。
【００５６】
図５は、画像データの転送に係る処理の流れを示すフローチャートである。
画像データの転送に係る処理として、転送レートの決定（ステップＳ２１）、画像データの転送（ステップＳ２２）、タイムアウト発生チェック（ステップＳ２３）、最終転送時刻の更新（ステップＳ２４）、全画像データの転送完了チェック（ステップＳ２５）、転送レートテーブル２１の再設定（ステップＳ２６）がある。
【００５７】
ステップＳ２１の転送レートの決定は、画像読取装置１からサーバ２へ転送される画像データ２０の転送速度（転送レート）を決定する工程である。
図６は、転送レートの決定における処理の流れを示すフローチャートである。
転送レートの決定は、全原稿のスキャン完了チェック（ステップＳ３１）、スキャナ状態の取得（ステップＳ３２）、スキャナのエラー状態チェック（ステップＳ３３）、揮発メモリ内の画像データ残容量の取得（ステップＳ３４）、カラー調整動作チェック（ステップＳ３５）、揮発メモリ内の画像データ残容量判定（ステップＳ３６、Ｓ３７）、低い転送レートの設定（ステップＳ３８）、高い転送レートの設定（ステップＳ３９）を含む。
【００５８】
ステップＳ３１の全原稿のスキャン完了チェックは、ステップＳ１５と同様の判定を行う処理である。全ての原稿のスキャナ１１による読み取り及びスキャン画像の画像データ２０への変換を完了した場合（ステップＳ３１：ＹＥＳ）、ＣＰＵ１２は転送レートを高く設定し（ステップＳ３９）、全ての原稿のスキャナ１１による読み取り及びスキャン画像の画像データ２０への変換を完了していない場合（ステップＳ３１：ＮＯ）、ＣＰＵ１２はスキャナ状態の取得を行う（ステップＳ３２）。
【００５９】
ステップＳ３２のスキャナ状態の取得は、スキャナ１１の状態をチェックする。ステップＳ３２でチェックされるスキャナ１１の状態を決定する要素として、例えばスキャナ１１が原稿の読み取り動作中であるか否か、スキャナ１１による原稿の読み取りが進行中でない即ちスキャナ１１が画像の読み取りを休止している状態である場合、休止の原因が何であるか、等がある。スキャナ１１が休止する原因として、ADFの紙詰まり、原稿のセット待ち及びその他の理由によるスキャナ１１のエラーや、「カラー調整動作」の割り込み等がある。
【００６０】
原稿のセット待ちとは、連続スキャン又は分割スキャン時において既にセットされた原稿の読み取りを完了して次の原稿のセット完了の入力指示があるまで待機している状態をさす。
【００６１】
「カラー調整動作」の割り込みとは、例えばキャリブレーション動作等、原稿の読み取りにおいてスキャナ１１のカラー認識精度を維持するためにスキャナ１１が行う動作であり、スキャナ１１が行う画像の読み取り以外の独立した動作である。スキャナ１１は原稿の読み取りを繰り返すうちに、カラー判定に用いる基準色（例えば白色等）の色値に誤差を生じることがある。このため、キャリブレーション動作等の「カラー調整動作」を割り込ませることで基準色の色値の補正やリセット等を行ってカラー認識精度を維持する。
【００６２】
「カラー調整動作」の割り込み中、スキャナ１１による原稿の読み取りは行われない。
「カラー調整動作」のために費やす時間は予め決まっており、ＣＰＵ１２は「カラー調整動作」の開始タイミングに基づいてカラー調整動作の終了予定時刻を算出することができる。
「カラー調整動作」の割り込みは、予め定められた枚数の原稿を読み取るたびに行うようにしてもよいし、基準色の色値の誤差を検出する誤差検出部を設けて該誤差を検出した場合に行うようにしてもよい。
【００６３】
スキャナ１１の状態について、ADFの紙詰まり、原稿のセット待ち及びその他のスキャナ１１のエラーを生じている場合、ＣＰＵ１２は、スキャナ１１が「エラー状態」であると判定する。スキャナ１１の状態について、ADFの紙詰まり、原稿のセット待ち及びその他のスキャナ１１のエラーを生じていない場合、ＣＰＵ１２は、スキャナ１１が「エラー状態」でないと判定する。
ステップＳ３２のスキャナ状態の取得後、ＣＰＵ１２はスキャナのエラー状態チェックを行う（ステップＳ３３）。
【００６４】
ステップＳ３３のスキャナのエラー状態チェックは、ステップＳ３２でチェックされたスキャナ１１の状態が「エラー状態」であるか否かを判定する工程である。
ＣＰＵ１２は、スキャナ１１の状態が「エラー状態」であるか否かを判定する。スキャナ１１の状態が「エラー状態」である場合（ステップＳ３３：ＹＥＳ）、ＣＰＵ１２は転送レートを低く設定し（ステップＳ３８）、スキャナ１１の状態が「エラー状態」でない場合（ステップＳ３３：ＮＯ）、ＣＰＵ１２は揮発メモリ内の画像データ残容量の取得を行う（ステップＳ３４）。
【００６５】
ステップＳ３４の揮発メモリ内の画像データ残容量の取得は、揮発メモリ１４に記憶されている画像データ２０の容量を取得する工程である。ＣＰＵ１２は、揮発メモリ１４に記憶されている画像データ２０の容量を取得する。
ステップＳ３４の揮発メモリ内の画像データ残容量の取得後、ＣＰＵ１２はカラー調整動作チェックを行う（ステップＳ３５）。
【００６６】
ステップＳ３５のカラー調整動作チェックは、ステップＳ３２でチェックされたスキャナ１１の状態が「カラー調整動作」の割り込み中であるか否かを判定する。ＣＰＵ１２は、スキャナ１１の状態が「カラー調整動作」であるか否かを判定し、「カラー調整動作」の割り込み中でない場合（ステップＳ３５：ＮＯ）、ステップＳ３６の揮発メモリ内の画像データ残容量判定を行い、「カラー調整動作」の割り込み中である場合（ステップＳ３５：ＹＥＳ）、ステップＳ３７の揮発メモリ内の画像データ残容量判定を行う。
【００６７】
ステップＳ３６の揮発メモリ内の画像データ残容量判定は、揮発メモリ１４に記憶されている画像データ２０の容量が、予め定められた容量（第一のデータ容量）以上であるか否かを判定する工程である。
ＣＰＵ１２は、ステップＳ３４において取得した揮発メモリ１４に記憶されている画像データ２０の容量を第一のデータ容量と比較し、第一のデータ容量以上であるか否かを判定する。
【００６８】
ここで、揮発メモリ１４に記憶されている画像データ２０の容量と、タイムアウトとの関係について説明する。
タイムアウトは、一定時間以上データの転送が滞った場合に生じる。一定時間以上データの転送が滞った場合、サーバ２は、画像読取装置１とサーバ２との間の通信に何らかのエラーを生じたものとみなして通信を切断する処理（タイムアウト処理）を行う。
【００６９】
翻せば、一定時間以上データの転送が滞る事態を生じなければタイムアウトは生じない。
仮に、画像データ２０の容量が予め定められた容量未満である場合に高い転送レートで画像データ２０の転送を行った場合、揮発メモリ１４に記憶された全ての画像データ２０の転送を短時間で完了してしまい、以後継続して転送する画像データ２０がないために一定時間以上データの転送が滞り、タイムアウトを生じてしまう可能性がある。そこで、揮発メモリ１４に記憶されている画像データ２０の容量が予め定められた容量未満である場合には転送レートを低く設定する。これによって、揮発メモリ１４に記憶されている画像データ２０の容量を小出しにして画像データ２０の転送に要する時間を長大とし、データの転送処理を長時間に渡って継続可能とする。転送レートが低くても転送処理そのものは継続しているので、サーバ２はタイムアウト処理を行わないことが期待される。
【００７０】
つまり、画像読取装置１は、揮発メモリ１４に画像データ２０の容量が予め定められた容量未満である場合、転送レートを低くしてデータの転送処理を継続させることでタイムアウトを抑止する機能を有する。
ＣＰＵ１２は、揮発メモリ１４に記憶されている画像データ２０の容量が第一のデータ容量未満である場合（ステップＳ３６：ＮＯ）、ＣＰＵ１２は転送レートを低く設定する（ステップＳ３８）。
【００７１】
一方、揮発メモリ１４に記憶されている画像データ２０の容量が予め定められた容量以上である場合、揮発メモリ１４に十分な容量の画像データ２０があるので、高い転送レートでの転送を行っても画像データ２０の転送を継続することができる。そこで、そこで、揮発メモリ１４に記憶されている画像データ２０の容量が予め定められた容量以上である場合には転送レートを高く設定する。これによって、サーバ２に対する画像データ２０の転送をスムーズに行うことができる。
ＣＰＵ１２は、揮発メモリ１４に記憶されている画像データ２０の容量が第一のデータ容量以上である場合（ステップＳ３６：ＹＥＳ）、ＣＰＵ１２は転送レートを高く設定する（ステップＳ３９）。
【００７２】
なお、ステップＳ３１において、全ての原稿をスキャナ１１によって読み取ったと判定された場合にＣＰＵ１２が転送レートを高く設定するのは、全ての原稿を読み取った後であれば、「まだスキャナ１１による原稿の読み取りを行っていない残りの原稿を画像データ化する前にタイムアウトを生じることで、画像データ２０の転送が中断されてしまう」事態を生じ得ないためである。つまり、全ての原稿を読み取った後であれば、揮発メモリ１４に記憶された残りの画像データ２０の転送を完了させることで画像読取装置１は原稿の読み取り動作を完了させることができるので、ＣＰＵ１２は、高い転送レートで迅速に画像データ２０の転送を完了させるための制御を行う。
【００７３】
また、ステップＳ３３において、スキャナ１１の状態が「エラー状態」である場合に、ＣＰＵ１２は転送レートを低く設定するのは、スキャナ１１の状態が「エラー状態」である場合、スキャナ１１による原稿の読み取りをいつ再開することができるのか不明であり、新たな画像データ２０が揮発メモリ１４に記憶されるタイミングを決定することができないためである。つまり、揮発メモリ１４に新たな画像データ２０の記憶が行われていない状態で高い転送レートによる画像データ２０の転送を継続した場合、揮発メモリ１４に記憶された全ての画像データ２０の転送を短時間で完了してしまい、以後継続して転送する画像データ２０がないために一定時間以上データの転送が滞り、タイムアウトを生じてしまう可能性が生じる。そこで、転送レートを低くすることで画像データ２０の転送を長時間維持可能とし、タイムアウトを抑止する。
【００７４】
ステップＳ３７の揮発メモリ内の画像データ残容量判定は、揮発メモリ１４に記憶されている画像データ２０の容量が、ステップＳ３６における予め定められた容量である第一のデータ容量とは異なる予め定められた容量（第二のデータ容量）以上であるか否かを判定する工程である。本実施形態では、ステップＳ３７における予め定められた容量は、ステップＳ３６における予め定められた容量よりも大きい。
第一のデータ容量及び第二のデータ容量の値は、ＲＯＭ１３又は不揮発メモリ１５から読み出される。第一のデータ容量及び第二のデータ容量は、ユーザの任意による設定を可能としてもよい。その場合、ユーザは操作パネル１７等の入力装置を介して第一のデータ容量、第二のデータ容量又はその両方の値を設定する。
【００７５】
ステップＳ３７の揮発メモリ内の画像データ残容量判定は、ステップＳ３２でチェックされたスキャナ１１の状態が「カラー調整動作」の割り込み中である場合に行なわれる。
前述のように、「カラー調整動作」の割り込み中、スキャナ１１による原稿の読み取りは行われない。このため、スキャン画像からの画像データ２０の生成が一時的に中断され、揮発メモリ１４に記憶される画像データ２０は増加しなくなる。この状態で無条件に高い転送レートを以って画像データ２０の転送を継続した場合、「カラー調整動作」の終了前に揮発メモリ１４に記憶された全ての画像データ２０の転送を完了してしまい、タイムアウトを生じる可能性がある。
一方、「カラー調整動作」のために費やす時間は予め決まっており、「カラー調整動作」の終了後にスキャナ１１による原稿の読み取り及び画像データ２０の生成は再開される。つまり、ＣＰＵ１２は、「カラー調整動作」に費やす時間中即ち画像データ２０の生成が再開されるまでの間、継続して高い転送レートによる画像データ２０の転送を行った場合にタイムアウトを生じるか否かを判定することができる。
【００７６】
ステップＳ３７において揮発メモリ１４に記憶されている画像データ２０の容量と比較される第二のデータ容量は、「カラー調整動作」のために費やす時間中、高い転送レートで画像データ２０の転送を行ったとしてもタイムアウトを生じ得ない十分な画像データ２０の容量を示すものである。
ステップＳ３７の処理内容は、予め定められた容量の差異を除いて、ステップＳ３６の処理に準ずる。
【００７７】
ＣＰＵ１２は、揮発メモリ１４に記憶されている画像データ２０の容量が第二のデータ容量以上である場合（ステップＳ３７：ＹＥＳ）、高い転送レートであってもタイムアウトを生じ得ないと判定して、ＣＰＵ１２は転送レートを高く設定する（ステップＳ３９）。一方、ＣＰＵ１２は、揮発メモリ１４に記憶されている画像データ２０の容量が第二のデータ容量未満である場合（ステップＳ３７：ＮＯ）、高い転送レートの場合にタイムアウトを生じる可能性があると判定して、ＣＰＵ１２は転送レートを低く設定する（ステップＳ３９）。
【００７８】
ステップＳ３８の低い転送レートの設定は、予め定められた転送レートを画像データ２０の転送レートとして設定する工程である。ステップＳ３８において設定される転送レートは、転送レートテーブル２１に記憶されている。
【００７９】
図７は、転送レートテーブル２１の内容の一例を示す説明図である。
図７に示すように、転送レートテーブル２１は、プロトコル及び転送レートの項目を有するテーブル形式のデータであり、不揮発メモリ１５に記憶されている。
プロトコルは、通信のプロトコル名を示す項目であり、プロトコル項目のレコードとして、例えばFTP、SMTP(Simple Mail Transfer Protocol)、WebDAV(Web-based Distributed Authoring and Versioning)その他の各種通信プロトコル名が設定される。
転送レートは、プロトコルの項目に設定された各種のプロトコルを用いた場合における「タイムアウトを生じさせないための転送レート」を設定する項目であり、単位はbpsである。図７に示す例では、転送レートはbps(bits per second)で表され、FTPの転送レートとして1000(bps)、SMTPの転送レートとして3000(bps)、WebDAVの転送レートとして1500(bps)が設定されている。図７には図示しないが、転送レートテーブル２１に他のプロトコルとその転送レートを設定してもよい。
【００８０】
ステップＳ３８の処理において、ＣＰＵ１２は、不揮発メモリ１５から転送レートテーブル２１を読み込み、画像データ２０の転送に用いるプロトコルに対して該転送レートテーブル２１によって設定されている転送レートを画像データ２０の転送レートとして設定する。
本実施形態では、転送レートテーブル２１の「FTP」の転送レートである「1000(bps)」を設定する。なお、図７及び前述の転送レートはあくまで一例であり、適宜変更可能である。
【００８１】
ステップＳ３９の高い転送レートの設定は、画像データ２０の転送のために割り当てることができる最大限の転送レートを画像データ２０の転送レートとして設定する工程である。最大限の転送レートとして、例えば通信装置１６の規格によって定められる最大限の転送レート、サーバ２との通信において割り当て可能な最大限の転送レートとして予め定められた転送レート、画像データ２０の転送のために割り当て可能な予め定められた転送レート等が挙げられ、画像データ２０の転送に要求される各種事項に応じて適宜設定可能である。
【００８２】
ステップＳ３８の処理によって設定される転送レートは、ステップＳ３９の処理によって設定される転送レートを上回ることはありえない。そして、ステップＳ３８の処理によって設定される転送レートは、ステップＳ３９で設定される最大限の転送レートより低い転送レートである。このことから、本実施形態においてステップＳ３８において設定される転送レートを「低い転送レート」、ステップＳ３９において設定される転送レートを「高い転送レート」と称する。
【００８３】
ＣＰＵ１２は、ステップＳ３８又はステップＳ３９の処理を行うことによって、転送レートを決定し、図６のフローチャートに示す処理を抜け、ステップＳ２１の転送レートの決定を完了させる。
ステップＳ２１の転送レートの決定後、ＣＰＵ１２は画像データの転送を行う（ステップＳ２２）。
【００８４】
ステップＳ２２の画像データの転送は、画像読取装置１からサーバ２へ画像データ２０の転送を行う工程である。ＣＰＵ１２は、揮発メモリ１４から画像データ２０を読み出し、通信装置１６及び回線３を介して画像データ２０をサーバ２へ転送する。
【００８５】
ステップＳ２３のタイムアウト発生チェックは、サーバ２によるタイムアウト処理が行われたか否かを判定する工程である。ＣＰＵ１２は、サーバ２との通信状態をチェックして、画像データ２０の転送の為の通信（本実施形態ではFTP接続）が維持されているかどうかを判定する。画像データ２０の転送の為の通信が維持されている場合、ＣＰＵ１２は最終転送時刻の更新を行い（ステップＳ２４）、画像データ２０の転送の為の通信が維持されていない即ちタイムアウト処理が行われた場合、ＣＰＵ１２は転送レートテーブル２１の再設定を行う（ステップＳ２６）。
【００８６】
ステップＳ２４の最終転送時刻の更新は、ステップＳ２２の画像データ２０の転送が行われた最終時刻（最終転送時刻）を記憶、更新する工程である。ＣＰＵ１２は、最終転送時刻を取得して、揮発メモリ１４に記憶させる。過去に記憶された最終転送時刻が既に揮発メモリ１４に記憶されている場合、ＣＰＵ１２は揮発メモリ１４に記憶された最終転送時刻を更新する。
ステップＳ２４の最終転送時刻の更新後、ＣＰＵ１２は全画像データの転送完了チェックを行う（ステップＳ２５）。
【００８７】
ステップＳ２５の全画像データの転送完了チェックは、揮発メモリ１４に記憶された画像データ２０の有無を判定する工程である。ＣＰＵ１２は、揮発メモリ１４に画像データ２０が記憶されているか否かをチェックする。揮発メモリ１４に画像データ２０が記憶されている場合（ステップＳ２５：ＹＥＳ）、ステップＳ２１の処理に戻る。揮発メモリ１４に画像データ２０が記憶されていない場合（ステップＳ２５：ＮＯ）、ＣＰＵ１２は画像データの転送処理を終了する。
【００８８】
ステップＳ２６の転送レートテーブル２１の再設定は、転送レートテーブル２１に設定された転送レートのうち、画像データ２０の転送に用いられた通信のプロトコルに設定された転送レートを再計算、再設定する工程である。
図８は、転送レートテーブル２１の再設定に係る処理の流れを示すフローチャートである。
転送レートテーブル２１の再設定に係る処理として、最終転送時刻の取得（ステップＳ４１）、タイムアウト発生時刻の取得（ステップＳ４２）、転送レートの再計算（ステップＳ４３）がある。ステップＳ４１とステップＳ４２の処理後にステップＳ４３の処理が行われる。ステップＳ４１とステップＳ４２は順不同であり、図８に示すフローチャートと逆の順序でもよい。
【００８９】
ステップＳ４１の最終転送時刻の取得は、揮発メモリ１４に記憶された最終転送時刻を取得する工程である。ＣＰＵ１２は、揮発メモリ１４に記憶された最終転送時刻を読み出して取得する。
【００９０】
ステップＳ４２のタイムアウト発生時刻の取得は、サーバ２のタイムアウト処理により画像データ２０の転送の為の通信が切断された時刻を取得する工程である。ＣＰＵ１２は、画像データ２０の転送の為の通信（本実施形態ではFTP接続）が切断された時刻を取得して、揮発メモリ１４に記憶させる。
【００９１】
ステップＳ４３の転送レートの再計算は、ステップＳ４１で得られた最終転送時刻及びステップＳ４２で得られたタイムアウト発生時刻に基づいて画像データ２０の転送に用いられた通信のプロトコルに設定された転送レートを再計算、再設定する工程である。
転送レートの再計算は、以下の式（１）に基づいて行われ、再計算によって算出された値が画像データ２０の転送に用いられた通信のプロトコル名（本実施形態では「FTP」）の転送レートとして再設定される。  
転送単位／（タイムアウト発生時刻−最終転送時刻）……（１） 
転送単位とは、画像データ２０の転送におけるデータの最小単位をさす。
【００９２】
例えば、サーバ２が「所定の転送レートを下回る転送レートでの通信が一定時間以上継続した場合にタイムアウト処理を行う」仕様で動作していた場合、転送レートテーブル２１に設定された転送レートの値によってはタイムアウトを生じることがある。そこで、ステップＳ４３の処理によって転送レートを再計算、再設定することによってこのような理由によるタイムアウトを抑止する。
【００９３】
一方、転送レートテーブル２１に設定された転送レートの値によっては、画像のスキャンの休止が長時間に渡った場合、低い転送レートによる画像データ２０の転送であっても全ての画像データ２０の転送を完了してしまい、タイムアウト処理に至ってしまうことがある。そこで、転送レートの値をより低く設定することでより長時間に渡る画像データ２０の転送の継続を可能とする。この場合、転送レートの値を低くしすぎることにより「所定の転送レートを下回る転送レートでの通信が一定時間以上継続した場合にタイムアウト処理を行う」サーバ２の仕様によってタイムアウトを生じてしまうことのないよう、過去に画像データ２０の転送の継続に成功した最小の転送レートの値を記憶しておき、該最小の転送レートの値に基づいて再設定を行うようにしてもよい。
【００９４】
ステップＳ４３の処理後、図８のフローチャートに示す処理を抜け、ステップＳ２６の転送レートテーブル２１の再設定を完了させる。
ステップＳ２６の転送レートテーブル２１の再設定後、ＣＰＵ１２は画像データの転送処理を終了する。
【００９５】
なお、ステップＳ２６の処理を経て画像データの転送処理を終了した場合、画像データの転送処理と並行して行われていた原稿の読み取り及び画像データ変換処理も同時に終了する。
原稿の読み取り及び画像データ変換処理及び画像データの転送処理の両方を終了すると、ＣＰＵ１２はステップＳ４の画像読取装置１による原稿の読み取り動作を終了する。
【００９６】
本実施形態によれば、ＣＰＵ１２はスキャナ１１が原稿からの画像の読み取りを休止しているか否かを検知し、その検知結果に基づいて転送レートを決定する。これによって、スキャナ１１が休止状態であるか否かに基づく転送レートの変更を行うことができる。つまり、スキャナ１１による原稿からの画像の読み取りが進行中である場合即ち高な転送レートで画像データ２０をサーバ２へ転送してもタイムアウトを生じない場合の転送レートと、スキャナ１１が画像の読み取りを休止しているために新たな画像データ２０の生成が行われない状態であることに基づいて長時間に渡り画像データ２０の転送を継続させてタイムアウトを抑止するための転送レートと、を切り替えることができ、タイムアウトを抑止する画像データ２０の転送を実現することができる。
本実施形態は、画像データ２０の転送レートの制御により画像データ２０の転送を継続させることでタイムアウトを抑止するので、データの転送とは無関係な通信や、該通信を受け付けるためのサーバの改修を必要としない。つまり、本実施形態の画像読取装置１を用いることで、データの転送とは無関係な通信負荷の発生や受信側の機器の改修を要することなくタイムアウトを抑止することができる。
【００９７】
さらに、画像の読み取りを休止している状態とは、スキャナ１１がエラーを生じている状態である。ADFの紙詰まり、原稿のセット待ち及びその他の理由によるスキャナ１１のエラーは、エラーの解消に手作業を要する場合が多く、エラーの解消及び原稿のスキャンの再開がいつになるのか不明確となりやすい。このため、スキャナ１１がエラーを生じた場合に転送レートを変更することにより、より確実にタイムアウトを抑止することができる。
【００９８】
さらに、スキャナ１１が画像の読み取りを休止している状態の場合、ＣＰＵ１２はスキャナ１１が画像の読み取りを休止している状態でない場合に比して転送レートを低くするので、スキャナ１１が画像の読み取りを休止する前に揮発メモリ１４に記憶された画像データ２０を小出しにして長時間に渡り画像データ２０の転送を継続させることでタイムアウトを抑止することができる。
【００９９】
さらに、ＣＰＵ１２は揮発メモリ１４に記憶された画像データ２０の容量を取得し、該画像データ２０の容量に基づいて転送レートを決定する。これによって、揮発メモリ１４に記憶された画像データ２０の容量に基づく転送レートの変更を行うことができる。つまり、揮発メモリに十分な容量の画像データ２０がある場合即ち高な転送レートで画像データ２０をサーバ２へ転送してもタイムアウトを生じない場合の転送レートと、揮発メモリ１４に記憶された画像データ２０の容量が十分でないことに基づいて長時間に渡り画像データ２０の転送を継続させてタイムアウトを抑止するための転送レートと、を切り替えることができ、タイムアウトを抑止する画像データ２０の転送を実現することができる。
本実施形態は、画像データ２０の転送レートの制御により画像データ２０の転送を継続させることでタイムアウトを抑止するので、データの転送とは無関係な通信や、該通信を受け付けるためのサーバの改修を必要としない。つまり、本実施形態の画像読取装置１を用いることで、データの転送とは無関係な通信負荷の発生や受信側の機器の改修を要することなくタイムアウトを抑止することができる。
【０１００】
さらに、ＣＰＵ１２はスキャナ１１が画像の読み取り以外の独立した動作を行っているか否かを判定し、その判定結果に基づいて転送レートを決定する。これによって、スキャナ１１が画像の読み取り以外の独立した動作を行っているか否かに基づく転送レートの変更を行うことができる。つまり、スキャナ１１が画像の読み取り以外の独立した動作を行っていない場合即ちスキャナ１１による画像の読み取りが継続中であり新たな画像データ２０が逐次生成されることに基づいて高な転送レートで画像データ２０をサーバ２へ転送してもタイムアウトを生じない場合の転送レートと、スキャナ１１が画像の読み取り以外の独立した動作を行っている場合即ちスキャナ１１による画像の読み取りが休止しており新たな画像データ２０が生成されないことに基づいて長時間に渡り画像データ２０の転送を継続させてタイムアウトを抑止するための転送レートと、を切り替えることができ、タイムアウトを抑止する画像データ２０の転送を実現することができる。
本実施形態は、画像データ２０の転送レートの制御により画像データ２０の転送を継続させることでタイムアウトを抑止するので、データの転送とは無関係な通信や、該通信を受け付けるためのサーバの改修を必要としない。つまり、本実施形態の画像読取装置１を用いることで、データの転送とは無関係な通信負荷の発生や受信側の機器の改修を要することなくタイムアウトを抑止することができる。
【０１０１】
さらに、スキャナ１１の画像の読み取り以外の独立した動作とは、スキャナ１１の「カラー調整動作」である。スキャナ１１が「カラー調整動作」を行う場合、スキャナ１１による原稿からの画像の読み取りが一定時間休止されるので、スキャナ１１が「カラー調整動作」を行っていると判定された場合に転送レートを変更することにより、より確実にタイムアウトを抑止することができる。
【０１０２】
さらに、ＣＰＵ１２は揮発メモリ１４に記憶された画像データ２０の容量と予め定められた容量との比較結果に基づいて転送レートを決定するので、転送レートを切り替える基準となる画像データ２０の容量を明確に定めることができる。
【０１０３】
さらに、操作パネル１７を介した入力によりユーザは予め定められた容量を手動で設定することができる。これによって、ＣＰＵ１２はユーザの任意による画像データ２０の容量を基準として転送レートを切り替えることができる。
【０１０４】
さらに、ＣＰＵ１２揮発メモリ１４に記憶された画像データ２０の容量が予め定められた容量未満である場合、揮発メモリ１４に記憶された画像データ２０の容量が予め定められた容量以上である場合に比して転送レートを低くするので、揮発メモリ１４に記憶された画像データ２０の容量が、高な転送レートによる画像データ２０の転送を継続させるのに十分な容量でない場合に揮発メモリ１４に記憶された画像データ２０を小出しにして長時間に渡り画像データ２０の転送を継続させることでタイムアウトを抑止することができる。
【０１０５】
さらに、ＣＰＵ１２は転送レートテーブル２１に設定された転送レートに基づいて、転送レートを低くする場合の転送レートを決定するので、転送レートを低くする場合に転送レートを算出するための処理負荷を軽減することができる。
加えて、過去にタイムアウトを生じなかった最小の転送レートを転送レートテーブル２１に設定することで、タイムアウトを生じさせない最小の転送レートを用いた画像データ２０の転送を行うことが可能となり、より確実にタイムアウトを抑止することができる。
【０１０６】
さらに、転送レートテーブル２１に設定された転送レートは、各通信のプロトコル名と対応付けられているので、ＣＰＵ１２は画像データ２０の転送に用いる通信のプロトコル名と対応付けられた転送レートを読み込んで転送レートを低くすることができる。
加えて、通信のプロトコル毎にタイムアウトを生じる転送レートが異なる場合等、画像データ２０の転送に用いるプロトコルに最適な転送レートを用いてタイムアウトを抑止するための低い転送レートによる画像データ２０の転送を行うことができる。
【０１０７】
さらに、ＣＰＵ１２は、最終転送時刻及びタイムアウト発生時刻を取得し、該最終転送時刻及び該タイムアウト発生時刻に基づいて転送レートの再計算を行い、転送レートテーブル２１に設定された転送レートを更新する。これによって、転送レートテーブル２１に基づいて設定された低い転送レートによる画像データ２０の転送においてタイムアウトを生じた場合、転送レートを更新することで次回以降の画像データ２０の転送において再計算された更新後の転送レートを用いることができるようになるので、タイムアウトを抑止する可能性を高めることができ、より確実にタイムアウトを抑止することができる。
【０１０８】
なお、本発明の実施の形態は、今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【０１０９】
例えば、スキャナ及び画像データの転送機能を有するプリンタやMFP(Multifunction Peripheral)等、本発明の実施に必要な構成以外の機能を有する機器等に対して本発明を適用することも可能である。
【０１１０】
転送レートは大小の二通りに限らず、三通り以上の転送レートを状況に応じて設定するようにしてもよい。また、状況に応じて最適な転送レートを算出して設定するようにしてもよい。
転送レートテーブルに設定された各プロトコルの転送レートを個別に手動設定可能としてもよい。その場合、操作パネル等の入力装置を介して転送レートを設定する。
【０１１１】
画像データの転送開始は、１ページ分の画像データの生成完了後に限らず、画像データの転送を開始することができるようになったタイミングから開始してよい。
【０１１２】
画像データの転送に用いる通信のプロトコルはFTPに限らず、他のプロトコルを用いてもよい。他のプロトコルとして例えば図７及び前述に示したSMTPやWebDAV、その他の通信の各種プロトコルが挙げられるが、ファイルを転送することができるプロトコルであればよく、現在用いられているプロトコルに限らず将来開発、規格化されるプロトコルであっても利用可能である。これによって、データの転送処理においてタイムアウトを生じうる場合にタイムアウトを良好に抑止することができる。
【０１１３】
本発明は通信によるデータの転送に限らず、他の接続形態によるデータの転送に応用してもよい。例えば画像読取装置と画像データを受信する外部機器（サーバ等）をシリアル又はパラレル接続の接続方式により接続し、該接続方式によるデータの転送経路を介してデータを転送する場合等が挙げられる。シリアル又はパラレル接続の接続方式の例として、例えばUSB(Universal Serial Bus)やIEEE1394等が挙げられるが、ファイルを転送することができる接続方式であればよく、現在用いられている接続方式に限らず将来開発、規格化される接続方式であっても利用可能である。これによって、データの転送処理においてタイムアウトを生じうる場合にタイムアウトを良好に抑止することができる。
【０１１４】
画像読取装置は、一つのサーバに限らず複数のサーバと通信可能であり、複数のサーバに対して順次又は同時に並行して画像データを転送することができる。この場合、サーバ毎に画像データの転送に用いるプロトコルが異なる場合があり、またプロトコルが同一であってもサーバ毎にタイムアウトの条件が異なる場合がある。そこで、複数のサーバについて各サーバに別個の転送レートテーブルを設けてもよい。これによって、低い転送レートによる画像データの転送を行う場合にサーバ毎に最適な転送レートによる画像データの転送の継続を行うことができる。
【０１１５】
スキャナ１１等の画像読取部が行う画像の読み取り以外の独立した動作は、キャリブレーション等の「カラー調整動作」に限らない。「カラー調整動作」以外の画像読取部が行う画像の読み取り以外の独立した動作として、例えば画像読取部が備えるモータの回転角度調整（脱調調整等）等が挙げられ、その他の画像読取部が行う画像の読み取り以外の独立した動作も含まれる。
【０１１６】
以上の説明では、本発明に係るプログラムのコンピュータ読み取り可能な媒体としてＲＯＭを使用した例を開示したが、この例に限定されない。その他のコンピュータ読み取り可能な媒体として、フラッシュメモリ等の不揮発性メモリ、ＣＤ-ＲＯＭ等の可搬型記録媒体を適用することが可能である。また、本発明に係るプログラムのデータを通信回線を介して提供する媒体として、キャリアウエーブ(搬送波)も本発明に適用される。
【符号の説明】
【０１１７】
１    画像読取装置
２    サーバ
３    回線
１１    スキャナ
１２    ＣＰＵ
１３    ＲＯＭ
１４    揮発メモリ
１５    不揮発メモリ
１６    通信装置
１７    操作パネル
１８    バス
２０    画像データ
２１    転送レートテーブル
【図１】
2010258639.tif 000003
【図２】
2010258639.tif 000004
【図３】
2010258639.tif 000005
【図４】
2010258639.tif 000006
【図５】
2010258639.tif 000007
【図６】
2010258639.tif 000008
【図７】
2010258639.tif 000009
【図８】
2010258639.tif 000010