(57)【特許請求の範囲】
【請求項１】
複数の原稿を連続して搬送する搬送機構と、
搬送された原稿を読み取るセンサーと、
前記センサーが読み取った読取画像に対して補正値を用いて補正を行う制御部と、を備えたスキャナーであって、
Ｎ番目（Ｎは自然数）の原稿が前記センサーを通過してから（Ｎ＋１）番目の原稿が前記センサーに到達するまでの間に前記センサーが基準領域を読み取った結果であるＮ番目の補正レベルと、Ｍ番目（ＭはＮ以外の自然数）の原稿が前記センサーを通過してから（Ｍ＋１）番目の原稿が前記センサーに到達するまでの間に前記センサーが黒基準を読み取った結果であるＭ番目の前記補正レベルと、を組み合わせて前記補正値を算出する算出部を備え、
前記算出部は、Ｎ番目の前記補正レベルが正常であり、かつ、Ｍ番目の前記補正レベルが異常である場合、
Ｌ番目（ＬはＭおよびＮよりも大きい自然数）の原稿が前記センサーを通過してから（Ｌ＋１）番目の原稿が前記センサーに到達するまでの間に前記センサーが黒基準を読み取った結果であるＬ番目の前記補正レベルが正常であるか否かを判定し、
Ｌ番目の前記補正レベルが正常である場合、Ｎ番目の前記補正レベルとＬ番目の前記補正レベルとを組み合わせて前記補正値を算出する、
スキャナー。
【請求項２】
複数の原稿を連続して搬送する搬送工程と、
搬送された原稿をセンサーで読み取った読取画像に対して補正値を用いて補正を行う補正工程と、
補正後の読取画像に基づいて画像を出力する出力工程と、
を含む画像生産方法であって、
Ｎ番目（Ｎは自然数）の原稿が前記センサーを通過してから（Ｎ＋１）番目の原稿が前記センサーに到達するまでの間に前記センサーが基準領域を読み取った結果であるＮ番目の補正レベルと、Ｍ番目（ＭはＮ以外の自然数）の原稿が前記センサーを通過してから（Ｍ＋１）番目の原稿が前記センサーに到達するまでの間に前記センサーが黒基準を読み取った結果であるＭ番目の前記補正レベルと、を組み合わせて前記補正値を算出する算出工程を含み、
前記算出工程は、Ｎ番目の前記補正レベルが正常であり、かつ、Ｍ番目の前記補正レベルが異常である場合、
Ｌ番目（ＬはＭおよびＮよりも大きい自然数）の原稿が前記センサーを通過してから（Ｌ＋１）番目の原稿が前記センサーに到達するまでの間に前記センサーが黒基準を読み取った結果であるＬ番目の前記補正レベルが正常であるか否かを判定し、
Ｌ番目の前記補正レベルが正常である場合、Ｎ番目の前記補正レベルとＬ番目の前記補正レベルとを組み合わせて前記補正値を算出する、
画像生産方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、スキャナーおよび画像生産方法に関する。
【背景技術】
【０００２】
原稿の読み取りに先立ってシェーディング補正を行うための補正データを得ておく技術が知られている（特許文献１、参照）。具体的に、白基準板を読み取ることにより得た白基準画像データに基づいて補正データが得られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−２００５９９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、シェーディング補正の補正データを得るためには、白基準板のように基準の被写体を読み取る必要があり、原稿を連続して読み取っている間にはシェーディング補正の補正値を更新することができないという問題があった。従って、原稿を連続して読み取っている間にセンサー等の特性が変化した場合には、スキャンした画像の画質が低下していた。
本発明は、このような問題を解決するために創作されたものであって、スキャンした画像の画質を向上させる技術の提供を目的の一つとする。
【課題を解決するための手段】
【０００５】
前記課題を解決するため、本発明のスキャナーは、複数の原稿を連続して搬送する搬送機構と、搬送された原稿を読み取るセンサーと、センサーが読み取った読取画像に対して補正値を用いて補正を行う制御部と、を備えたスキャナーであって、Ｎ番目（Ｎは自然数）の原稿がセンサーを通過してから（Ｎ＋１）番目の原稿がセンサーに到達するまでの間にセンサーが基準領域を読み取った結果であるＮ番目の補正レベルと、Ｍ番目（ＭはＮ以外の自然数）の原稿がセンサーを通過してから（Ｍ＋１）番目の原稿がセンサーに到達するまでの間にセンサーが黒基準を読み取った結果であるＭ番目の補正レベルと、を組み合わせて補正値を算出する算出部を備える。
【０００６】
前記の構成において、Ｎ番目の原稿がセンサーを通過してから（Ｎ＋１）番目の原稿がセンサーに到達するまでの間（以下、Ｎ番目の無原稿期間）にセンサーが基準領域を読み取った結果であるＮ番目の補正レベルと、Ｍ番目の原稿がセンサーを通過してから番目の原稿がセンサーに到達するまでの間（以下、Ｍ番目の無原稿期間）にセンサーが黒基準を読み取った結果であるＭ番目の補正レベルとに基づいて補正値を算出でき、連続して原稿を読み取る期間においても補正値を更新できる。また、１回の無原稿期間だけでは十分な量の補正レベルを取得できない場合でも、複数回の無原稿期間で得た補正レベルを組み合わせることにより黒補正値を算出できる。
【０００７】
なお、請求項に記載された各部の機能は、構成自体で機能が特定されるハードウェア資源、プログラムにより機能が特定されるハードウェア資源、またはそれらの組み合わせにより実現される。また、これら各手段の機能は、各々が物理的に互いに独立したハードウェア資源で実現されるものに限定されない。さらに、本発明は、スキャンシステムや、スキャン方法やスキャンプログラムやスキャンプログラムの記録媒体としても成立する。むろん、その記録媒体は、磁気記録媒体であってもよいし光磁気記録媒体であってもよいし、今後開発されるいかなる記録媒体であってもよい。
【図面の簡単な説明】
【０００８】
【図１】図１Ａはスキャナーのブロック図、図１Ｂ，図１Ｃはスキャナーの断面模式図である。
【図２】連続スキャン処理のフローチャートである。
【図３】図３Ａ，図３Ｂは連続スキャン処理のタイミングチャートである。
【図４】図４Ａ，図４Ｂは第２実施形態の連続スキャン処理のタイミングチャートである。
【図５】第３実施形態の連続スキャン処理のフローチャートである。
【図６】図６Ａ，図６Ｂは第３実施形態の連続スキャン処理のタイミングチャートである。
【発明を実施するための形態】
【０００９】
ここでは、下記の順序に従って本発明の実施の形態について説明する。
（１）スキャナーの構成および処理：
（２）スキャナーの動作タイミング：
（３）第２実施形態：
（４）第３実施形態：
（５）他の実施形態：
【００１０】
（１）スキャナーの構成および処理：
図１Ａは、本発明の一実施例にかかるスキャナー１のブロック図である。スキャナー１は、コントローラー１０とイメージセンサー２０と照明部３０と搬送機構４０とを備える。コントローラー１０は、図示しない記録媒体と、当該記録媒体からプログラムを読み出して実行する汎用プロセッサーと、特定の処理を実行するように構成された半導体回路であるＡＳＩＣ等の専用回路とを含む。
【００１１】
イメージセンサー２０は、主走査方向の線状のリニアイメージセンサーであり、搬送された原稿を読み取るセンサーである。イメージセンサー２０は受光した受光強度に応じた大きさの電流を生成する多数の受光素子を備えており、当該受光素子が主走査方向において配列されている。本実施形態において、イメージセンサー２０の位置は一定であることとする。照明部３０は、原稿の照明光を生成する光源と、当該照明光を原稿に導光する光学系と、を備えている。原稿にて反射した照明光はイメージセンサー２０の各受光素子にて受光され、当該照明光の受光強度に応じた大きさの電流を各受光素子が出力する。イメージセンサー２０は、照明光の受光強度に応じて出力された電流を増幅する回路やＡ／Ｄ変換する回路を含むＡＥＦ（アナログフロントエンド）２０ａを備えている。イメージセンサー２０は、受光素子に対応する画素ごとに、照明光の受光強度の階調値を示す読取画像をコントローラー１０に出力する。
【００１２】
搬送機構４０は、主走査方向に直交する方向である副走査方向に原稿を搬送するオートシートフィーダーであり、複数の原稿を連続して搬送する。搬送機構４０は、複数の原稿が重ねて置かれた原稿台から原稿を１枚ずつピックアップし、原稿を搬送している間に次の原稿を搬送し始める。そして、複数の原稿が１枚ずつ連続してイメージセンサー２０上を通過するように原稿を搬送する。図示しないが、搬送機構４０は、光学式の原稿端センサーを備えている。コントローラー１０は、原稿端センサーの検出信号と搬送機構４０の駆動量とに基づいて原稿の先頭や末尾の搬送位置を検出する。
【００１３】
図１Ｂ，図１Ｃは、スキャナー１の断面模式図であり、スキャナー１の断面を主走査方向から見た図である。図１Ｂ，図１Ｃに示すように、主走査方向（紙面に垂直な方向）に直交する方向である副走査方向（左から右）に原稿が搬送される。イメージセンサー２０の受光面は紙面上方向とする。原稿とイメージセンサー２０の受光面との間には照明光が透過するプラテンガラス６０が存在する。コントローラー１０は、イメージセンサー２０上において原稿を搬送させながら、予め決められた撮像周期でイメージセンサー２０に繰り返して撮像を行わせることにより、副走査方向における位置ごとの読取画像を得る。コントローラー１０は、副走査方向の位置ごとの読取画像を並べることにより、２次元の読取画像を得る。コントローラー１０は、読取画像の各画素の階調値に黒補正と白補正とを行う。その結果、階調値が最小階調（０）であることは黒であることを意味し、階調値が最大階調であることは白であることを意味するように読取画像が補正されることとなる。なお、スキャナー１はＲＧＢチャネルごとに階調値を取得するカラースキャンを行ってもよいが、説明の簡略化のためグレースケールスキャンを行う場合を例に挙げて説明する。
【００１４】
図１Ｂに示すように、Ｎ番目の原稿の末尾がイメージセンサー２０上を通過してから（Ｎ＋１）番目の原稿の先頭がイメージセンサー２０上に到達するまでの間に、イメージセンサー２０上にいずれの原稿も存在していない期間（以下、Ｎ番目の無原稿期間）が生じることとなる。Ｎは、原稿の搬送順序を表す自然数である。例えば、図１Ｃに示すように、（Ｎ＋１）番目の原稿の末尾がイメージセンサー２０上を通過してから（Ｎ＋２）番目の原稿の先頭がイメージセンサー２０上に到達するまでの間には、（Ｎ＋１）番目の無原稿期間が生じることとなる。これらの無原稿期間においては、原稿カバー５０がイメージセンサー２０の受光面に対面することとなる。原稿カバー５０のうちイメージセンサー２０に対面する領域である基準領域は、反射率がほぼ１００％の一様な白色部材で形成されている。照明光を照射した状態において基準領域をイメージセンサー２０で撮像することは白基準を撮像することを意味し、照明光を照射していない状態において基準領域をイメージセンサー２０で撮像することは黒基準を撮像することを意味する。
【００１５】
図２は、連続スキャンの開始が指示されることで開始する連続スキャン処理のフローチャートである。以下、フローチャートにしたがってコントローラー１０の各機能構成１１〜１３の処理を説明する。まず、コントローラー１０は、キャリブレーションを行う（ステップＳ１００）。キャリブレーションとは、照明部３０の点灯時間やＡＥＦ２０ａにおける増幅ゲイン等を調整する処理である。
【００１６】
次に、コントローラー１０は、初期の黒補正値を用意する（ステップＳ１１０）。ステップＳ１１０では、照明光を照射することなく、イメージセンサー２０によって規定の回数だけ原稿カバー５０の基準領域の撮像が行われる。算出部１２は、複数の読取画像の各画素が示す階調値である黒レベル（補正レベル）を画素ごとに平均することにより初期の黒補正値を算出する。記憶部１３は、記憶領域Ｒ１に各画素の黒補正値を記憶する。黒補正値は、照明光を受光していない状態において受光素子が出力する電流値に対応する階調値であり、いずれの画素も最小階調であることが理想である。しかしながら、受光素子の温度特性や製造ばらつき等によって最小階調でない値が黒補正値として得られることとなる。特に発熱しやすいＡＥＦ２０ａ付近の受光素子に対応する画素においては黒補正値が変化しやすい。
【００１７】
次に、コントローラー１０は、白補正値を用意する（ステップＳ１２０）。ステップＳ１２０では、照明光を照射しながらイメージセンサー２０によって、規定の回数だけ原稿カバー５０の基準領域の撮像が行われる。算出部１２は、複数の読取画像の各画素が示す階調値である白レベルを画素ごとに平均することにより白補正値を算出する。記憶部１３は、図示しない記憶領域に各画素の白補正値を記憶する。白補正値は、白色板を撮像した状態で受光素子が出力する電流値に対応する階調値であり、いずれの画素も最大階調であることが理想である。しかしながら、受光素子の製造ばらつき等によって最大階調でない値が白補正値として得られることとなる。また、コントローラー１０は、ステップＳ１１０における黒レベルとステップＳ１２０における白レベルに基づいて異常な受光素子を検出し、異常な受光素子を特定する情報を記憶する。当該撮像画素に対応する画素の黒補正値と白補正値として特定値を記憶するようにしてもよい。例えば、コントローラー１０は、黒レベルと白レベルとが同一値である場合に撮像画素が異常であると判定する。コントローラー１０は、異常な受光素子に対応する画素についての黒補正値として特定値を記憶する。特定値とは、通常の黒補正値と識別可能な階調値であればよく、例えば本来は白を意味する最大階調が特定値として記憶されてもよい。
【００１８】
次に、スキャナー１は原稿のスキャンを行う（ステップＳ１３０）。以下、Ｎ番目の原稿のスキャンを行う場合を例に説明する。搬送機構４０は、Ｎ番目の原稿の先頭から末尾までがイメージセンサー２０上を通過するように原稿を搬送する。このとき、照明部３０が照明光を照射するとともに、イメージセンサー２０が予め決められた撮像周期で繰り返して原稿の撮像を行う。本実施形態において撮像周期は一定であり、コントローラー１０は、原稿の搬送速度を小さくすることにより副走査方向におけるスキャン解像度を大きくする。
【００１９】
Ｎ番目の原稿の読取画像が得られると、制御部１１は、黒補正値で黒補正を行う（ステップＳ２００）。例えば、ある画素の階調値が２０であり、かつ、黒補正値が２０であったとすると、制御部１１は当該画素の階調値を０に補正する。これにより、当該画素が黒を示すように補正することができる。制御部１１は、２個の記憶領域Ｒ１，Ｒ２のうち、読出対象として切り替えられている記憶領域Ｒ１，Ｒ２に記憶されている黒補正値を黒補正に使用する。読出対象の記憶領域Ｒ１，Ｒ２は、後述する処理において制御部１１が切り替えている。また、黒補正値として特定値が記憶された画素については、イメージセンサー２０から得られた階調値を破棄するとともに、例えば周辺の画素による画素補間によって導出した階調値を対応付ける。
【００２０】
図示しないが、制御部１１は、黒補正のほかに、読取画像に各種の画像処理（白補正、γ補正、画素補間等）をステップＳ２００で行って最終的な読取画像を生成する。そして、全ての原稿についての最終的な読取画像を出力する。ステップＳ２００の処理は、後述するステップＳ１４０，Ｓ３２０〜Ｓ３６０と並行して行われる。
【００２１】
Ｎ番目の原稿の末尾がイメージセンサー２０上を通過すると、コントローラー１０は、黒基準を撮像して黒レベルを取得して図示しない記憶領域Ｒ０（記憶領域Ｒ１，Ｒ２のうち読出対象ではない側であってもよい）に蓄積する（ステップＳ１４０）。詳しくは、蓄積開始前に０にリセットした上で、黒レベルを取得するたびに、イメージセンサー２０の各画素の出力値を記憶領域Ｒ０の各画素に対応する位置に加算していく。図１Ｂに示すように、Ｎ番目の原稿の末尾がイメージセンサー２０上を通過してから（Ｎ＋１）番目の原稿の先頭がイメージセンサー２０上に到達するまでの期間であるＮ番目の無原稿期間において、黒基準を撮像して黒レベルを取得する。本実施形態において、１回の無原稿期間において黒基準をＸ回撮像（Ｘ＝３２）することとする。従って、コントローラー１０は、各画素が黒レベルを示す３２個の黒基準の撮像画像を得る。なお、搬送方向における原稿間の距離を搬送速度で除算することにより無原稿期間が得られ、この無原稿期間よりも、撮像周期にＸを乗算した期間が小さくなるようにＸが設定されればよい。
【００２２】
黒レベルを取得すると、コントローラー１０は、次の原稿があるか否かを判定する（ステップＳ１５０）。次の原稿があると判定した場合（ステップＳ１５０：Ｙ）、コントローラー１０は、ステップＳ１３０に戻り、次の原稿をスキャンする。一方、次の原稿があると判定しなかった場合（ステップＳ１５０：Ｎ）、コントローラー１０は、連続スキャン処理を終了する。ステップＳ１４０の前にステップＳ１５０の判定を行い、次の原稿があると判定した場合にステップＳ１４０の黒レベル取得を行ってステップＳ１３０に戻り、次の原稿があると判定しなかった場合にはステップＳ１４０を行わずに終了してもよい。
【００２３】
ステップＳ１４０にて黒レベルを取得すると、次の原稿のスキャンが行われるが、次の原稿のスキャンと並行して当該黒レベルについての処理（ステップＳ３２０〜Ｓ３６０）が実行される。まず、算出部１２は、黒レベルの蓄積が完了したか否かを判定する（ステップＳ３２０）。具体的に、算出部１２は、規定数Ｙ（＝Ｘ×ｓ）だけ黒基準の撮像画像が蓄積されたか否かを判定する。つまり、各画素についてＹ個の黒レベルが蓄積されているか否かが判定される。ｓは黒レベルの蓄積に要する無原稿期間の回数を意味する自然数であり、本実施形態ではｓ＝２（Ｙ＝６４）であることとする。本実施形態において、無原稿期間が２回到来するごとに、黒レベルの蓄積が完了することとなる。黒レベルの蓄積開始の無原稿期間がＮ番目の無原稿期間であるとすると、Ｎ番目の無原稿期間においてイメージセンサー２０が読み取ったＮ番目の黒レベルと、Ｍ番目（Ｍ＝Ｎ＋１）の無原稿期間においてイメージセンサー２０が読み取ったＭ番目の黒レベルとが蓄積された段階で、黒レベルの蓄積が完了することとなる。むろん、ｓは２以外の自然数であってもよい。
【００２４】
黒レベルの蓄積が完了したと判定しなかった場合（ステップＳ３２０：Ｎ）、算出部１２は、ステップＳ３２０に戻る。一方、黒レベルの蓄積が完了したと判定した場合（ステップＳ３２０：Ｙ）、算出部１２は、黒補正値を算出する（ステップＳ３３０）。すなわち、算出部１２は、Ｎ番目（Ｎは自然数）の原稿がイメージセンサー２０を通過してから（Ｎ＋１）番目の原稿がイメージセンサー２０に到達するまでの間（Ｎ番目の無原稿期間）にセンサーが基準領域を読み取った結果であるＮ番目の黒レベルに基づいて黒補正値を算出する。ただし、１回の無原稿期間だけではＹ個の黒レベルの蓄積が完了しない場合には、算出部１２は、Ｎ番目の黒レベルと、Ｍ番目（Ｍ＝Ｎ＋１）の原稿がセンサーを通過してから（Ｍ＋１）番目の原稿がセンサーに到達するまでの間にセンサーが黒基準を読み取った結果であるＭ番目の黒レベルとを組み合わせて黒補正値を算出することとなる。
【００２５】
具体的に、算出部１２は、各画素について蓄積されているＹ個の黒レベルの合計値をＹで除算することで平均値を黒補正値として算出する。なお、黒補正値は、黒レベルを取得するたびにその値を区別可能に記憶していれば、必ずしも黒レベルの平均値でなくてもよく、例えば最頻値であってもよいし、中央値であってもよい。
【００２６】
次に、記憶部１３は、算出された黒補正値を読出対象でない記憶領域Ｒ１，Ｒ２に記憶する（ステップＳ３４０）。すなわち、記憶部１３は、黒補正値が算出されると、複数の記憶領域Ｒ１，Ｒ２のいずれかに黒補正値を順次記憶する。具体的に、２個の記憶領域Ｒ１，Ｒ２のうち、現在、読出対象として切り替えられていない記憶領域Ｒ１，Ｒ２に算出された黒補正値を記憶する。また、記憶部１３は、読出対象でない記憶領域Ｒ１，Ｒ２に黒補正値を記憶する際に、現在、読出対象の記憶領域Ｒ１，Ｒ２に特定値が記憶されている画素を特定し、当該画素については黒補正値として特定値を記憶する。すなわち、異常な受光素子に対応する画素については、特定値が黒補正値として記憶領域Ｒ１，Ｒ２間でコピーされ続けることとなる。従って、読出対象の記憶領域Ｒ１，Ｒ２が切り替わっても異常な受光素子から得られた黒補正値に基づいて黒補正が行われることを防止できる。
【００２７】
次に、記憶部１３は、算出された黒補正値が正常であるか否かを判定する（ステップＳ３５０）。記憶部１３は、算出されたｉ個の画素の黒補正値の統計値（全画素の中の最大値ＨR，全画素の中の最小値ＬR，全画素の合計値ＳR）を導出する。同様に、記憶部１３は、黒補正に使用している各画素の黒補正値の統計値（全画素の中の最大値ＨU，全画素の中の最小値ＬU，全画素の合計値ＳU）を導出する。なお、統計値を予め記憶しておいてもよく、記憶してある統計値を読み出してもよい。ここで、算出された黒補正値が記憶領域Ｒ１に記憶されていれば、黒補正に使用している黒補正値はもう一方の記憶領域Ｒ２に記憶されていることとなる。反対に、算出された黒補正値が記憶領域Ｒ２に記憶されていれば、黒補正に使用している黒補正値はもう一方の記憶領域Ｒ１に記憶されていることとなる。なお、統計値の算出において特定値は除外される。記憶部１３は、下記の式（１）〜（３）をすべて満足する場合に、算出された黒補正値が正常であると判断する。
ＨR≦ＨU＋Ｅ    ・・（１）
ＬR≧ＬU−Ｅ    ・・（２）
ＳU−Ｅ×ｉ／２≦ＳR≦ＳU＋Ｅ×ｉ／２    ・・（３）
【００２８】
ここで、Ｅは予め決められた値である。ここでは、Ｅとして全ての式で同じ値を用いているが、式ごとに異なる値を用いてもよい。式（１）によれば、算出された黒補正値の最大値ＨRが黒補正に使用している黒補正値の最大値ＨUに許容誤差（＝Ｅ）を加えた値以下であることを保証できる。式（２）によれば、算出された黒補正値の最小値ＬRが黒補正に使用している黒補正値の最小値ＬUから許容誤差（＝Ｅ）を減じた値以上であることを保証できる。式（３）によれば、算出された黒補正値の合計値ＳRが黒補正に使用している黒補正値の合計値ＳUに許容誤差（＝Ｅ×ｉ／２）を加えた値以下であり、かつ、算出された黒補正値の合計値ＳRが黒補正に使用している黒補正値の合計値ＳUから許容誤差（＝Ｅ×ｉ／２）を減じた値以上であることを保証できる。
【００２９】
上記の式（１）〜（３）をすべて満足することで、算出された黒補正値が正常であると判定された場合、制御部１１は、読出対象の記憶領域Ｒ１，Ｒ２を切り替える（ステップＳ３６０）。すなわち、制御部１１は、算出された黒補正値が記憶されている記憶領域Ｒ１，Ｒ２を読出対象の記憶領域Ｒ１，Ｒ２に切り替えることにより、算出された黒補正値が黒補正に使用されるようにする。なお、上記の式（１）〜（３）をいずれかを満足しなかった場合、ステップＳ３５０で算出された黒補正値が異常であると判定する。この場合、現在黒補正に使用している各画素の黒補正値の使用を継続し、次の黒レベルの蓄積を待ち（ステップＳ３２０）、次の黒レベルの蓄積に基づいて黒補正値の算出を行う（ステップＳ３３０）。
【００３０】
以上説明した本実施形態において、制御部１１は、算出された黒補正値の記憶が完了すると、黒補正に用いる黒補正値を読み出す記憶領域Ｒ１，Ｒ２を、当該算出された黒補正値を記憶した記憶領域Ｒ１，Ｒ２に切り替える。この構成において、複数の記憶領域Ｒ１，Ｒ２のいずれかに黒補正値を記憶できるため、制御部１１が黒補正値を読み出している記憶領域Ｒ１，Ｒ２とは別の記憶領域Ｒ１，Ｒ２に黒補正値を記憶できる。従って、連続して原稿を読み取って黒補正を行う場合のように、短い無原稿期間においても黒補正値の更新が可能であり、当該更新された黒補正値に基づいて読取画像の黒補正を行うことができる。
【００３１】
以上のように、記憶部１３は、算出された黒補正値が正常であるか否かを判定し、当該算出された黒補正値が正常である場合に、黒補正に用いる黒補正値を読み出す記憶領域Ｒ１，Ｒ２を、当該算出された黒補正値を記憶した記憶領域に切り替えている。これにより、正常でない黒補正値を使用して黒補正が行われる可能性を抑制できる。
【００３２】
また、記憶部１３は、黒補正値が算出されると、当該算出された黒補正値（ＨR，ＬR，ＳR）と、黒補正に用いる黒補正値を読み出す記憶領域Ｒ１，Ｒ２に記憶されている黒補正値（ＨU，ＬU，ＳU）との比較に基づいて、当該算出された黒補正値が正常であるか否かを判定する。これにより、算出された黒補正値が過去の黒補正値に対して基準よりも大きく変化した場合に、算出された黒補正値が異常であると判定できる。
【００３３】
さらに、記憶部１３は、黒補正値から複数種の統計値（ＨR、ＬR、ＳR）を導出し、当該複数種の統計値（ＨR，ＬR，ＳR）のそれぞれが所定値（ＨU，ＬU，ＳU）から許容誤差（Ｅ，Ｅ，Ｅ×ｉ／２）以上乖離していないか否かを判定することにより、当該算出された黒補正値が正常であるか否かを判定している。これにより、統計値の種類に適した許容誤差で黒補正値が正常であるか否かを判定できる。
【００３４】
また、算出部１２は、Ｎ番目の黒レベルと、Ｍ番目（Ｍ＝Ｎ＋１）の黒レベルとを組み合わせて黒補正値を算出している。これにより、１回の無原稿期間だけでは十分な量の黒レベルを取得できない場合でも、Ｎ番目の黒レベルとＭ番目の黒レベルとを組み合わせて黒補正値を算出できる。
【００３５】
（２）スキャナーの動作タイミング：
図３Ａ，図３Ｂは、連続スキャン処理におけるスキャナー１の動作タイミングを示すタイミングチャートである。図３Ａ，図３Ｂの横軸は時刻を意味する。図３Ａに示すように、Ｎ番目の原稿と（Ｎ＋１）番目の原稿を読み取る間のＮ番目の無原稿期間と、Ｍ（＝Ｎ＋１）番目の原稿と（Ｍ＋１）番目の原稿を読み取る間のＭ番目の無原稿期間とにおいて、イメージセンサー２０が読み取った黒レベルが蓄積された段階で、黒補正値（Ｎ，Ｎ＋１）の算出が行われる。黒補正値（Ｎ，Ｎ＋１）の算出が完了すると、当該算出された黒補正値（Ｎ，Ｎ＋１）が記憶領域Ｒ２に記憶される。黒補正値（Ｎ，Ｎ＋１）の算出が完了した段階で、記憶領域Ｒ１が読出対象となっており、記憶領域Ｒ１に記憶された黒補正値（Ｎ−１，Ｎ−２）を使用して制御部１１が黒補正を行っている。そのため、算出された黒補正値（Ｎ，Ｎ＋１）は、読出対象でない記憶領域Ｒ２に記憶されることとなる。
【００３６】
そして、算出された黒補正値（Ｎ，Ｎ＋１）が正常であると判定された段階で、記憶領域Ｒ２が読出対象として切り替えられ、以降は算出された黒補正値（Ｎ，Ｎ＋１）が黒補正に使用されることとなる。図３Ａの場合、記憶領域Ｒ２が読出対象として切り替えられるタイミングは、（Ｎ＋２）番目の原稿の読み取りが完了するよりも前であるため、（Ｎ＋２）番目の原稿の読取画像に対して黒補正値（Ｎ，Ｎ＋１）よる黒補正が行われることとなる。
【００３７】
図３Ｂは、算出された黒補正値（Ｎ，Ｎ＋１）が正常であると判定されなかった場合のタイミングチャートである。算出された黒補正値（Ｎ，Ｎ＋１）が正常であると判定されなかった場合、記憶領域Ｒ２が読出対象として切り替えられることなく、記憶領域Ｒ１が読出対象として維持されることとなる。従って、記憶領域Ｒ１に記憶された黒補正値（Ｎ−１，Ｎ−２）を使用して制御部１１が黒補正を行う状態が継続することとなる。以上説明したように、無原稿期間においてイメージセンサー２０が読み取った黒レベルに基づいて黒補正値を算出するため、黒補正値を高い頻度で更新することができ、イメージセンサー２０の温度変化等に迅速に対応できる。本実施形態において、黒補正値が正常であると判定され続ければ、２枚の原稿を読み取るごとに黒補正値を更新することができる。
【００３８】
（３）第２実施形態：
図４Ａ，図４Ｂは、第２実施形態にかかる連続スキャン処理におけるスキャナー１の動作タイミングを示すタイミングチャートである。図３Ａ，図３Ｂに示すように、１回の無原稿期間において黒レベルの蓄積が完了する点で第１実施形態と相違している。例えば、第１実施形態よりも、Ｙの値が小さくてもよいし、原稿の搬送速度が小さくてもよいし、イメージセンサー２０の撮像周期が短くてもよい。図４Ａ，図４Ｂに示すように、１回の無原稿期間が終了するごとに黒レベルの蓄積が完了し、算出部１２は、１回の無原稿期間が終了するごとに黒補正値の算出を行う。そして、算出された黒補正値が正常な状態が続けば、無原稿期間が到来する周期と同一の長さの周期で、読出対象の記憶領域Ｒ１，Ｒ２が切り替えられることとなる。
【００３９】
図４Ａの場合、Ｎ番目の黒補正値が正常であるか否かの判定が終了し、記憶領域Ｒ２が読出対象として切り替えられるタイミングは、（Ｎ＋１）番目の原稿の読み取りが完了するよりも前である。従って、（Ｎ＋１）番目の原稿の読取画像に対してＮ番目の黒補正値よる黒補正が行われることとなる。すなわち、Ｎ番目の黒レベルに基づいて算出された黒補正値をＮ番目の黒補正値とすると、制御部１１は、（Ｎ＋１）番目の原稿を読み取った読取画像に対してＮ番目の黒補正値を用いて黒補正を行うこととなる。つまり、黒レベルを得た無原稿期間の次の期間で読み取った原稿の読取画像に対して当該黒レベルに基づく黒補正値を適用することができ、受光素子の特性の急激な変化にも迅速に対応できる。
【００４０】
図４Ｂの場合、Ｎ番目の黒補正値が正常であるか否かの判定が終了し、記憶領域Ｒ２が読出対象として切り替えられるタイミングは、（Ｎ＋１）番目の原稿の読み取りが完了するよりも後、かつ、（Ｎ＋２）番目の原稿の読み取りが完了するよりも前である。従って、（Ｎ＋２）番目の原稿の読取画像に対して初めてＮ番目の黒補正値よる黒補正が行われることとなる。すなわち、制御部１１は、（Ｎ＋２）番目以降の原稿を読み取った読取画像に対して初めてＮ番目の黒補正値を用いて黒補正を行うこととなる。すなわち、必ずしもＮ番目の黒補正値を、（Ｎ＋１）番目の原稿を読み取った読取画像に適用しなくてもよい。
【００４１】
多数の黒レベルを高速で取得できる場合に、図４Ａ，図４Ｂのように１回の無原稿期間ごとに黒補正値を算出できる。このような動作タイミングを実現するために、無原稿期間にて黒レベルを取得する機能構成を汎用プロセッサーではなくＡＳＩＣで実現してもよい。さらに、黒補正値を算出する期間と黒補正値が正常であるか否かを判定する期間が短い場合に、図４Ａのように黒レベルを得た無原稿期間の次の期間で読み取った原稿の読取画像に対して当該黒レベルに基づく黒補正値を適用することができる。このような動作タイミングを実現するために、黒補正値を算出する機能構成と黒補正値が正常であるか否かを判定する機能構成とを汎用プロセッサーではなくＡＳＩＣで実現してもよい。
【００４２】
また、１回の無原稿期間において黒基準を撮像する回数Ｘは固定値であってもよいし、可変値であってもよい。例えば、コントローラー１０は、Ｘをスキャンモードに応じて設定してもよく、無原稿期間が長くなるほどＸを大きい値に設定してもよい。原稿の搬送速度が小さいほど無原稿期間が長くなるため、例えば解像度が大きいスキャンモードであるほどＸを大きい値に設定してもよい。また、モノクロモードよりもカラーモードの方がイメージセンサー２０の処理期間が長くなるため、グレースケールモードよりもカラーモードにおいてＸを大きい値に設定してもよい。さらに、Ｘは予め設定された値でなくてもよい。例えば、コントローラー１０は、次の原稿の先頭がイメージセンサー２０に対して規定の距離以内まで接近した場合に黒基準の撮像を停止してもよい。この場合、Ｘは、無原稿期間が開始してから撮像を停止するまでに撮像を行った回数となる。この構成によれば、原稿間の間隔の大きさがばらつく場合でも、原稿間の間隔に応じた数の黒レベルを得ることができる。
【００４３】
（４）第３実施形態：
図５は、第３実施形態における連続スキャン処理のフローチャートである。本実施形態において、算出部１２は、無原稿期間において黒レベルが取得されるごとに、或いは黒レベルを蓄積している途中で、当該黒レベルが正常であるか否かを判定する（ステップＳ３００）。判定の手法は種々採用できる。例えば、算出部１２は、取得した黒レベルが過去の黒レベルから所定の基準以上乖離していないことをもって取得した黒レベルが正常であると判定してもよい。
【００４４】
取得した黒レベルが正常であると判定しなかった場合（ステップＳ３００：Ｎ）、算出部１２は、取得した黒レベルを蓄積することなく、次の無原稿期間にて黒レベルが取得されるのを待機する。すなわち、算出部１２は、取得した黒レベルが正常でない場合、当該取得した黒レベルを破棄する。
【００４５】
一方、取得した黒レベルが正常であると判定した場合（ステップＳ３００：Ｙ）、算出部１２は、取得した黒レベルを蓄積する（ステップＳ３１０）。取得した黒レベルを蓄積すると、算出部１２は、黒レベルの蓄積が完了したか否かを判定する（ステップＳ３２０）。黒レベルの蓄積が完了したと判定しなかった場合（ステップＳ３２０：Ｎ）、算出部１２は、次の無原稿期間にて黒レベルが取得されるのを待機する。例えば、第１実施形態と同様にＹ個の黒レベルが蓄積されたことをもって黒レベルの蓄積が完了してもよい。一方、取得した黒レベルが正常であると判定した場合（ステップＳ３２０：Ｙ）、算出部１２は、黒補正値を算出する（ステップＳ３３０）。すなわち、算出部１２は、予め正常であると判定された黒レベルに基づいて黒補正値を算出する。そのため、算出される黒補正値も正常な値となることが保証できる。
【００４６】
次に、記憶部１３は、算出された黒補正値を読出対象でない記憶領域Ｒ１，Ｒ２に記憶する（ステップＳ３４０）。そして、制御部１１は、算出された黒補正値が記憶されている記憶領域Ｒ１，Ｒ２を読出対象の記憶領域Ｒ１，Ｒ２に切り替える（ステップＳ３５０）。
【００４７】
図６Ａ，図６Ｂは、第３実施形態にかかる連続スキャン処理におけるスキャナー１の動作タイミングを示すタイミングチャートである。図６Ａ，図６Ｂに示すように、Ｎ番目の原稿と（Ｎ＋１）番目の原稿を読み取る間のＮ番目の無原稿期間にて黒レベルが取得されると、当該取得された黒レベルが正常であるか否かが判定される。
【００４８】
図６Ａにおいては、Ｎ番目の無原稿期間にて取得した黒レベルと、（Ｎ＋１）番目の無原稿期間にて取得した黒レベルとが双方とも正常である。そのため、（Ｎ＋１）番目の無原稿期間にて取得した黒レベルが正常であると判定されると、正常な黒レベルの蓄積が完了し、当該蓄積が完了した黒レベルに基づいて黒補正値（Ｎ，Ｎ＋１）が算出されることとなる。次に、算出された黒補正値（Ｎ，Ｎ＋１）が記憶領域Ｒ２に記憶される。当該算出された黒補正値（Ｎ，Ｎ＋１）は正常であるため、制御部１１は、そのまま記憶領域Ｒ２を読出対象とするように切り替えることとなる。
【００４９】
一方、図６Ｂにおいては、Ｎ番目の無原稿期間にて取得した黒レベルが正常であり、（Ｎ＋１）番目の無原稿期間にて取得した黒レベルが正常でない。そのため、（Ｎ＋１）番目の無原稿期間にて取得した黒レベルが正常であると判定されないと、次の（Ｎ＋２）番目（Ｎ＋２＝Ｌとする）の無原稿期間にて（Ｎ＋２）番目の黒レベルが取得されるまで待機することとなる。この場合、（Ｎ＋１）番目の黒レベルは破棄される。そして、（Ｎ＋２）番目の黒レベルが正常である場合、（Ｎ＋２）番目の黒レベルが蓄積されることをもって黒レベルの蓄積が完了することとなる。そして、Ｎ番目の黒レベルと（Ｎ＋２）番目の黒レベルとを組み合わせて黒補正値が算出されることとなる。
【００５０】
すなわち、第３実施形態において、算出部１２は、Ｎ番目の黒レベルが正常であり、かつ、Ｍ番目（Ｍ＝Ｎ＋１）の黒レベルが異常である場合、Ｌ番目（Ｌ＝Ｎ＋２＝Ｍ＋１）の原稿がイメージセンサー２０を通過してから（Ｌ＋１）番目の原稿がイメージセンサー２０に到達するまでの間にイメージセンサー２０が黒基準を読み取った結果であるＬ番目の黒レベルが正常であるか否かを判定し、Ｌ番目の黒レベルが正常である場合、Ｎ番目の黒レベルとＬ番目の黒レベルとを組み合わせて黒補正値を算出する。以上のように、黒補正値を算出するために必要なＹ個の黒レベル全体で正常か否かの判定を行うのではなく、Ｙ個よりも小さいＸ個の黒レベルごとに正常か否かの判定を行うため、Ｘ個単位で黒レベルを破棄でき、無駄に取得される黒レベルの数を抑制することができる。
【００５１】
（５）他の実施形態：
さらに、記憶部１３は、イメージセンサー２０を分割した分割領域ごとに、当該算出された黒補正値が正常であるか否かを判定してもよい。例えば、ＡＦＥ２０ａからの距離が閾値以下となる第１分割領域と、ＡＦＥ２０ａからの距離が閾値よりも大きくなる第２分割領域とにイメージセンサー２０が分割されてもよい。そして、記憶部１３は、第１分割領域内の受光素子に対応する画素について黒補正値の統計値（ＨR、ＬR、ＳR，ＨU，ＬU，ＳU）を導出し、当該統計値（ＨR、ＬR、ＳR，ＨU，ＬU，ＳU）に基づいて第１分割領域の黒補正値が正常であるか否かを判定してもよい。同様に、記憶部１３は、第２分割領域内の受光素子に対応する画素について黒補正値の統計値（ＨR、ＬR、ＳR，ＨU，ＬU，ＳU）を導出し、当該統計値（ＨR、ＬR、ＳR，ＨU，ＬU，ＳU）に基づいて第２分割領域の黒補正値が正常であるか否かを判定してもよい。さらに、記憶部１３は、第１分割領域と第２分割領域とで許容誤差の大きさ（第１実施形態のＥの大きさ）を異なる値に設定してもよい。例えば、記憶部１３は、第２分割領域よりも温度が変動しやすい第１分割領域の許容誤差を規定するＥを、第２分割領域の許容誤差を規定するＥよりも大きく設定してもよい。このようにすることにより、イメージセンサー２０の部分ごとで黒補正値の特性が異なる場合でも、当該特性に適した判定条件で黒補正値が正常であるか否かを判定できる。
【００５２】
なお、本発明の技術的範囲は、上述した実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。例えば、スキャナー１は、黒補正値や黒レベルが正常であるか否かを判定する処理を行わないようにしてもよい。また、黒補正値の代わりにまたは黒補正値に加えて白補正値を算出する際に本発明が適用されてもよい。この場合、無原稿期間において照明部３０は照明光を照射するようにすればよい。また、カラースキャンの場合に適用し、各色成分ごとに上述した補正値の取得と適用を行ってもよいし、原稿の両面にイメージセンサーを配置して、原稿の両面を同時にスキャンする場合に、イメージセンサーごとに上述した補正値の取得と適用を行ってもよい。さらに、スキャナー１は他の機能（印刷機能、ファクシミリ機能等）を備えた複合装置に組み込まれてもよい。さらに、本発明の構成要素の一部がスキャナー１と通信可能に接続されたコンピューター上において実現されてもよい。
【符号の説明】
【００５３】
１…スキャナー、１０…コントローラー、１１…制御部、１２…算出部、１３…記憶部、２０…イメージセンサー、３０…照明部、４０…搬送機構、５０…原稿カバー、６０…プラテンガラス、Ｅ…許容誤差を規定する値、Ｒ１，Ｒ２…記憶領域
【図１】
0006642038.tif 000002
【図２】
0006642038.tif 000003
【図３】
0006642038.tif 000004
【図４】
0006642038.tif 000005
【図５】
0006642038.tif 000006
【図６】
0006642038.tif 000007