(57)【特許請求の範囲】
【請求項１】
読取原稿を読み取る読取部であって、当該読取部と相対的に移動する読取原稿を読み取る前記読取部と、
読取原稿を前記相対的に移動する方向に沿った副走査方向に搬送する原稿搬送部と、
前記読取部より前記搬送方向上流側に設けられ、前記読取原稿の前記搬送方向における後端を検出するための検出部と、
記憶部と、
制御部と、
を備え、
前記制御部は、
前記読取部を用いて、前記副走査方向における所定の読取位置で基準板を、前記副走査方向に直交する主走査方向に読み取る読み取り走査を実行し、前記読み取り走査により得られた読取データの異常値を検出する検出手段と、
前記検出手段により前記異常値が検出された場合、前記異常値が検出された前記主走査方向の位置を前記記憶部に記憶する位置記憶手段と、
前記原稿搬送部による読取原稿の前記副走査方向への搬送を開始する移動開始手段と、
前記移動開始手段により前記読取原稿の搬送が開始された後、当該搬送を継続させながら、前記読取原稿を、前記主走査方向に読み取る読み取り走査を実行する原稿読取手段と、
前記移動開始手段により前記読取原稿の搬送が開始された後、前記原稿読取手段による前記読取原稿の読み取り走査を、前記読取原稿の搬送方向における先端から、前記読取原稿を前記搬送方向に所定長さ分に亘って実行し、前記所定長さ分の読み取り走査により得られた読取データに基づいて、前記読取原稿の前記搬送方向における先端側の辺に直交する２辺のうち、いずれか一方の辺が前記記憶部に記憶される前記主走査方向の位置を通過するまでに要する搬送距離である所要距離を算出する算出手段と、
前記検出部により前記読取原稿の前記搬送方向における後端が未検出の状態で、前記所要距離から、前記移動開始手段による前記読取原稿の搬送が開始されてからの搬送距離を差し引いた距離が、前記検出部の、前記後端を検出するための検出位置から前記読取部による読取位置までの距離以下となった場合に、前記読取原稿が前記記憶部に記憶される前記主走査方向の位置を通過すると判断する第１判断手段と、
前記第１判断手段により前記読取原稿が前記主走査方向の位置を通過すると判断された場合、所定のエラー処理を実行する一方で、前記第１判断手段により前記読取原稿が前記主走査方向の位置を通過しないと判断された場合、前記原稿読取手段による前記読み取り走査を継続し、前記所定のエラー処理を実行することなく、前記読み取り走査により得られた読取データを前記読取原稿の読取データとする制御手段と、
を備えていることを特徴とする画像読取装置。
【請求項２】
前記エラー処理は、継続中である読み取り走査の実行を中止する処理であることを特徴とする請求項１記載の画像読取装置。
【請求項３】
前記エラー処理は、警告を出力する処理であることを特徴とする請求項１記載の画像読取装置。
【請求項４】
読取原稿を前記副走査方向に搬送する原稿搬送部と、
前記読取部を前記副走査方向に移動させる移動部と、を備え、
前記読取部は、前記副走査方向における一の位置で、前記原稿搬送部により搬送される読取原稿を読み取るものであり、
前記位置記憶手段は、前記異常値が検出された主走査方向の位置と副走査方向の位置とを前記記憶部に記憶し、
前記エラー処理は、前記原稿読取手段による前記読み取り走査を停止した後、前記移動部により前記読取部を移動させることにより、前記読取位置を、前記記憶部に記憶される前記副走査方向の位置を除く位置に移動する処理であることを特徴とする請求項１記載の画像読取装置。
【請求項５】
前記エラー処理は、前記原稿読取手段による前記読み取り走査により得られた読取データについて、前記記憶部に記憶される前記主走査方向の位置に応じて補正を施し、補正後の読取データを前記読取原稿の読取データとする処理であることを特徴とする請求項１記載の画像読取装置。
【請求項６】
読取原稿を前記副走査方向に搬送する原稿搬送部を備え、
前記移動開始手段は、前記原稿搬送部による読取原稿の前記副走査方向への搬送を開始するものであり、
前記記憶部は、規格された定型サイズの原稿について、前記定型サイズの原稿において隣接する第１辺および第２辺について各辺の長さの組を原稿サイズ情報として記憶し、
前記制御部は、
前記移動開始手段により前記読取原稿の搬送が開始された後、前記原稿読取手段による前記読取原稿の読み取り走査を、前記読取原稿の搬送方向における先端から、前記搬送方向に所定長さ分に亘って実行し、前記所定長さ分の読み取り走査により得られた読取データに基づいて、前記読取原稿の前記搬送方向における先端側の辺の長さである主走査長と、前記読取原稿の前記搬送方向における先端側の両角の座標を特定可能な位置特定情報と、前記搬送方向に対する前記読取原稿の傾きである斜行角度とを取得する先端情報取得手段と、
前記記憶部に記憶される原稿サイズ情報のうち、前記第１辺および前記第２辺のうち一方の辺が前記先端情報取得手段により取得された主走査長に相当する長さである原稿の原稿サイズ情報を取得するサイズ情報取得手段と、
を備え、
前記第１判断手段は、
前記サイズ情報取得手段により取得された前記原稿サイズ情報と、前記先端情報取得手段により取得された前記位置特定情報および前記斜行角度とに基づいて、前記読取原稿が前記記憶部に記憶される前記主走査方向の位置を通過するかを判断することを特徴とする請求項１記載の画像読取装置。
【請求項７】
前記サイズ情報取得手段は、
前記記憶部に記憶される原稿サイズ情報のうち、前記第１辺および前記第２辺のうち一方の辺が前記先端情報取得手段により取得された主走査長に相当する長さである原稿の原稿サイズ情報が２種類存在する場合、前記２種類の原稿サイズ情報のうち、前記主走査方向に相当する長さの辺とは異なる辺の長さが前記主走査長より短い原稿である横置き原稿の原稿サイズ情報を、第１原稿サイズ情報として取得する一方で、前記主走査方向に相当する長さの辺とは異なる辺の長さが前記主走査長より長い原稿である縦置き原稿の原稿サイズ情報を、第２原稿サイズ情報として取得し、
前記制御部は、
前記読取原稿が前記縦置き原稿であるか前記横置き原稿であるかを判断する第２判断手段を備え、
前記第１判断手段は、
前記第２判断手段により前記横置き原稿であると判断される前記読取原稿について、前記サイズ情報取得手段により取得された前記第１原稿サイズ情報と、前記先端情報取得手段により取得された前記位置特定情報および前記斜行角度とに基づいて、前記読取原稿が前記記憶部に記憶される前記主走査方向の位置を通過するかを判断する横置き判断手段と、
前記第２判断手段により前記縦置き原稿であると判断される前記読取原稿について、前記サイズ情報取得手段により取得された前記第２原稿サイズ情報と、前記先端情報取得手段により取得された前記位置特定情報および前記斜行角度とに基づいて、前記読取原稿が前記記憶部に記憶される前記主走査方向の位置を通過するかを判断する縦置き判断手段と、
を備えていることを特徴とする請求項６に記載の画像読取装置。
【請求項８】
前記第２判断手段は、
前記読取原稿の読み取り走査により得られる読取データに、前記第１原稿サイズ情報に対応する横置き原稿に相当する読取データよりも副走査方向に長い読取データが検出される場合に、前記読取原稿が前記縦置き原稿であると判断し、
前記横置き判断手段は、
前記縦置き判断手段による判断に先立って行われ、前記第１原稿サイズ情報と前記位置特定情報と前記斜行角度とに基づいて、前記読取原稿が前記主走査方向の位置を通過するかを判断し、
前記制御手段は、
前記横置き判断手段により、前記読取原稿が前記主走査方向の位置を通過すると判断された場合、前記エラー処理として、前記原稿読取手段による前記読み取り走査を中止する処理を実行し、
前記縦置き判断手段は、
前記横置き判断手段により、前記読取原稿が前記主走査方向の位置を通過しないと判断され、かつ、前記第２判断手段により前記縦置き原稿であると判断されたことを条件として、前記第２原稿サイズ情報と前記位置特定情報と前記斜行角度とに基づいて、前記読取原稿が前記主走査方向の位置を通過するかを判断し、
ることを特徴とする請求項７記載の画像読取装置。
【請求項９】
前記記憶部は、前記定型サイズの原稿について、サイズ毎に、前記定型サイズの原稿が前記横置き原稿である場合の前記主走査長と当該主走査長に対応する辺に直交する辺の長さである副走査長との組からなる横置きの原稿サイズ情報と、前記定型サイズの原稿が前記縦置き原稿である場合の前記主走査長と前記副走査長との組からなる縦置きの原稿サイズ情報とをそれぞれ記憶し、
前記サイズ情報取得手段は、
前記記憶部に記憶される原稿サイズ情報の中に、前記先端情報取得手段により取得された主走査長を含む前記横置きの原稿サイズ情報と、前記先端情報取得手段により取得された主走査長を含む前記縦置きの原稿サイズ情報とが存在する場合、前記横置きの原稿サイズ情報を前記第１原稿サイズ情報として取得する一方で、前記縦置きの原稿サイズ情報を前記第２原稿サイズ情報として取得することを特徴とする請求項７または８に記載の画像読取装置。
【請求項１０】
前記制御部は、
前記移動開始手段による前記読取原稿の搬送が開始された後、前記原稿読取手段による前記読取原稿の読み取り走査を、前記読取原稿の前記搬送方向における先端から、前記読取原稿を前記搬送方向に所定長さ分に亘って実行し、前記所定長さ分の読み取り走査により得られた読取データに基づいて、前記読取原稿の前記搬送方向における先端側の両角の座標を特定可能な位置特定情報と、前記搬送方向に対する前記読取原稿の傾きである斜行角度とを取得する先端情報取得手段と、
前記先端情報取得手段により取得された前記位置特定情報と前記斜行角度とに基づき、前記読取原稿が前記記憶部に記憶される前記主走査方向の位置を通過する可能性があるかを判断する第３判断手段と、
を備え、
前記第１判断手段は、
前記第３判断手段により、前記読取原稿が前記記憶部に記憶される前記主走査方向の位置を通過する可能性があると判断されたことを条件として、前記読取原稿が前記記憶部に記憶される前記主走査方向の位置を通過するかの判断を行うことを特徴とする請求項１から９のいずれかに記載の画像読取装置。
【請求項１１】
前記記憶部は、規格された定型サイズの原稿について、前記定型サイズの原稿において隣接する第１辺および第２辺について各辺の長さの組を原稿サイズ情報として記憶し、
前記先端情報取得手段は、
前記所定長さ分の読み取り走査により得られた読取データに基づいて、前記読取原稿の前記搬送方向における先端側の辺の長さである主走査長をさらに取得し、
前記制御部は、
前記記憶部に記憶される原稿サイズ情報のうち、前記第１辺および前記第２辺のうち一方の辺が前記先端情報取得手段により取得された主走査長に相当する長さである原稿の原稿サイズ情報があるかを判断する第４判断手段を備え、
前記第１判断手段は、
前記第４判断手段により、該当する前記原稿サイズ情報がないと判断された場合には、前記検出部により前記読取原稿の前記搬送方向における後端が未検出の状態で、前記所要距離から、前記移動開始手段による前記読取原稿の搬送が開始されてからの搬送距離を差し引いた距離が、前記検出部の、前記後端を検出するための検出位置から前記読取部による読取位置までの距離以下となった場合に、前記読取原稿が前記記憶部に記憶される前記主走査方向の位置を通過すると判断する一方で、
前記第４判断手段により、該当する前記原稿サイズ情報があると判断された場合には、前記該当する原稿サイズ情報と、前記先端情報取得手段により取得された前記位置特定情報および前記斜行角度とに基づいて、前記読取原稿が前記記憶部に記憶される前記主走査方向の位置を通過するかを判断することを特徴とする請求項１０記載の画像読取装置。
【請求項１２】
読取原稿を読み取る読取部であって、当該読取部と相対的に移動する読取原稿を読み取る前記読取部と、
読取原稿を前記相対的に移動する方向に沿った副走査方向に搬送する原稿搬送部と、
前記読取部より前記搬送方向上流側に設けられ、前記読取原稿の前記搬送方向における後端を検出するための検出部と、
記憶部と、
制御部と、
を備えた画像読取装置の、前記制御部が実行可能な画像読取プログラムであって、
前記読取部を用いて、前記副走査方向における所定の読取位置で基準板を、前記副走査方向に直交する主走査方向に読み取る読み取り走査を実行し、前記読み取り走査により得られた読取データの異常値を検出する検出手段と、
前記検出手段により前記異常値が検出された場合、前記異常値が検出された前記主走査方向の位置を前記記憶部に記憶する位置記憶手段と、
前記原稿搬送部による読取原稿の前記副走査方向への搬送を開始する移動開始手段と、
前記移動開始手段により前記読取原稿の搬送が開始された後、当該搬送を継続させながら、前記読取原稿を、前記主走査方向に読み取る読み取り走査を実行する原稿読取手段と、
前記移動開始手段により前記読取原稿の搬送が開始された後、前記原稿読取手段による前記読取原稿の読み取り走査を、前記読取原稿の搬送方向における先端から、前記読取原稿を前記搬送方向に所定長さ分に亘って実行し、前記所定長さ分の読み取り走査により得られた読取データに基づいて、前記読取原稿の前記搬送方向における先端側の辺に直交する２辺のうち、いずれか一方の辺が前記記憶部に記憶される前記主走査方向の位置を通過するまでに要する搬送距離である所要距離を算出する算出手段と、
前記検出部により前記読取原稿の前記搬送方向における後端が未検出の状態で、前記所要距離から、前記移動開始手段による前記読取原稿の搬送が開始されてからの搬送距離を差し引いた距離が、前記検出部の、前記後端を検出するための検出位置から前記読取部による読取位置までの距離以下となった場合に、前記読取原稿が前記記憶部に記憶される前記主走査方向の位置を通過すると判断する第１判断手段と、
前記第１判断手段により前記読取原稿が前記主走査方向の位置を通過すると判断された場合、所定のエラー処理を実行する一方で、前記第１判断手段により前記読取原稿が前記主走査方向の位置を通過しないと判断された場合、前記原稿読取手段による前記読み取り走査を継続し、前記所定のエラー処理を実行することなく、前記読み取り走査により得られた読取データを前記読取原稿の読取データとする制御手段として、
前記制御部を機能させることを特徴とする画像読取プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像読取装置および画像読取プログラムに関する。
【背景技術】
【０００２】
オート・ドキュメント・フィーダー（以下「ＡＤＦ」と称す）を搭載し、ＡＤＦを用いて原稿を搬送させながら、所定の読取位置に固定された読取部を用いて当該原稿の読み取るタイプのスキャナがある。このタイプのスキャナにおいて、読取部は、透明な原稿台を介して原稿の読み取りを行う。そのため、原稿台にゴミが付着している場合、読取部は、ＡＤＦにより搬送される原稿を読み取る間、原稿台上のゴミを連続して読み取ることになるので、出力画像には、原稿の搬送方向に筋状に延びる黒筋が生じる。これに対し、特許文献１には、ある原稿読み取り位置に配置された読取部で、読み取り走査を行い、読み取りデータに異常値が検出された場合には、その読み取り位置を所定の距離だけ変更させた上で、搬送される原稿を読み取る技術が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００２−１８５７０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に記載される技術は、読み取りデータに異常値が検出された場合には、読み取り対象の原稿がどのようなサイズであろうと、読取部の読み取り位置が変更される。そのため、例えば、原稿のサイズが小さく、異常値が検出された位置において原稿の読み取りが行われない場合には、読取部の読み取り位置を変更する必要がないにもかかわらず、読み取り位置が無駄に変更される。
【０００５】
本発明は、上述した事情を鑑みてなされたものであり、異常画像を生じさせる位置にて原稿が読み取られる状況が生じるか否かに応じて、原稿の読み取りを好適に制御する画像読取装置および画像読取プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
この目的を達成するために、本発明の画像読取装置は、読取原稿を読み取る読取部であって、当該読取部と相対的に移動する読取原稿を読み取る前記読取部と、読取原稿を前記相対的に移動する方向に沿った副走査方向に搬送する原稿搬送部と、前記読取部より前記搬送方向上流側に設けられ、前記読取原稿の前記搬送方向における後端を検出するための検出部と、記憶部と、制御部と、を備え、前記制御部は、前記読取部を用いて、前記副走査方向における所定の読取位置で基準板を、前記副走査方向に直交する主走査方向に読み取る読み取り走査を実行し、前記読み取り走査により得られた読取データの異常値を検出する検出手段と、前記検出手段により前記異常値が検出された場合、前記異常値が検出された前記主走査方向の位置を前記記憶部に記憶する位置記憶手段と、前記原稿搬送部による読取原稿の前記副走査方向への搬送を開始する移動開始手段と、前記移動開始手段により前記読取原稿の搬送が開始された後、当該搬送を継続させながら、前記読取原稿を、前記主走査方向に読み取る読み取り走査を実行する原稿読取手段と、前記移動開始手段により前記読取原稿の搬送が開始された後、前記原稿読取手段による前記読取原稿の読み取り走査を、前記読取原稿の搬送方向における先端から、前記読取原稿を前記搬送方向に所定長さ分に亘って実行し、前記所定長さ分の読み取り走査により得られた読取データに基づいて、前記読取原稿の前記搬送方向における先端側の辺に直交する２辺のうち、いずれか一方の辺が前記記憶部に記憶される前記主走査方向の位置を通過するまでに要する搬送距離である所要距離を算出する算出手段と、前記検出部により前記読取原稿の前記搬送方向における後端が未検出の状態で、前記所要距離から、前記移動開始手段による前記読取原稿の搬送が開始されてからの搬送距離を差し引いた距離が、前記検出部の、前記後端を検出するための検出位置から前記読取部による読取位置までの距離以下となった場合に、前記読取原稿が前記記憶部に記憶される前記主走査方向の位置を通過すると判断する第１判断手段と、前記第１判断手段により前記読取原稿が前記主走査方向の位置を通過すると判断された場合、所定のエラー処理を実行する一方で、前記第１判断手段により前記読取原稿が前記主走査方向の位置を通過しないと判断された場合、前記原稿読取手段による前記読み取り走査を継続し、前記所定のエラー処理を実行することなく、前記読み取り走査により得られた読取データを前記読取原稿の読取データとする制御手段と、を備えている。
【０００７】
なお、本発明は、画像読取装置を制御する制御装置、画像読取システム、画像読取方法、画像読取プログラム、画像読取プログラムを記録する記録媒体等の種々の態様で構成できる。
【発明の効果】
【０００８】
請求項１記載の画像読取装置によれば、副走査方向における所定の位置で基準板を主走査方向に読み取る読み取り走査により得られた読取データに異常値が検出された場合、当該異常値が検出された主走査方向の位置が、記憶部に記憶される。原稿搬送部による読取原稿の副走査方向への搬送が開始された後、当該搬送を継続させながら、読取原稿を主走査方向に読み取る読み取り走査が行われる。なお、「読取部と読取原稿との相対的な移動」には、副走査方向の位置が固定された読取部に対し、読取原稿を副走査方向に移動させる場合と、固定的に載置された読取部に対し、読取原稿を副走査方向に移動させる場合とが含まれる。
【０００９】
読取原稿の副走査方向への搬送が開始された後、搬送方向の先端から所定長さ分の読取データに基づいて、読取原稿の搬送方向における先端側の辺に直交する２辺のうち、いずれか一方の辺が記憶部に記憶される主走査方向の位置を通過するまでに要する搬送距離である所要距離が算出される。この所要距離を用いて、読取原稿が記憶部に記憶される主走査方向の位置を通過するかが判断される。読取原稿が該当位置を通過すると判断された場合、所定のエラー処理が実行される。一方、読取原稿が該当位置を通過しないと判断された場合、読み取り走査を継続し、所定のエラー処理を実行することなく、読み取り走査により得られた読取データが、読取原稿の読取データとされる。よって、規格されていない非定型サイズの読取原稿であっても、異常値が検出された位置、つまり、異常画像を生じさせる位置にて読取原稿が読み取られる状況が生じるか否かに応じて、読取原稿の読み取りを好適に制御できる。
【００１０】
請求項２記載の画像読取装置によれば、請求項１が奏する効果に加え、次の効果を奏する。読取原稿が、異常値が検出された位置を通過すると判断された場合には、エラー処理として、継続中である読み取り走査の実行を中止する処理が行われる。よって、異常画像を含む画像の出力を抑制できる。
【００１１】
請求項３記載の画像読取装置によれば、請求項１が奏する効果に加え、次の効果を奏する。読取原稿が、異常値が検出された位置を通過すると判断された場合には、エラー処理として、警告を出力する処理が行われる。よって、警告によって、異常値が生じる原因があることを報せることができる。
【００１２】
請求項４記載の画像読取装置によれば、請求項１が奏する効果に加え、次の効果を奏する。基準板に対する読み取り走査により得られた読取データに異常値が検出された場合、当該異常値が検出された主走査方向の位置と副走査方向の位置とが、記憶部に記憶される。読取原稿が、異常値が検出された位置を通過すると判断された場合には、エラー処理として、読み取り走査を停止した後に、読取位置を、異常値が検出された副走査方向の位置を除く位置に移動する処理が行われる。よって、異常画像を生じさせる位置にて読取原稿が読み取られる状況を回避できる。
【００１３】
請求項５記載の画像読取装置によれば、請求項１が奏する効果に加え、次の効果を奏する。読取原稿が、異常値が検出された位置を通過すると判断された場合には、エラー処理として、読み取り走査により得られた読取データについて、異常値が検出された主走査方向の位置に応じて補正を施し、補正後の読取データを読取原稿の読取データとする処理が行われる。よって、読み取り走査によって異常画像を含む画像が得られたとしても、異常画像部分が補正された画像を出力できる。
【００１４】
請求項６記載の画像読取装置によれば、請求項１が奏する効果に加え、次の効果を奏する。記憶部に記憶される、定型サイズに係る原稿サイズ情報の中から、搬送方向の先端から所定長さ分の読取データに基づいて取得された主走査長に応じた原稿サイズ情報が取得される。取得された原稿サイズ情報と、搬送方向の先端から所定長さ分の読取データに基づいて取得された位置特定情報および斜行角度とに基づいて、読取原稿が、記憶部に記憶される位置を通過するかが判断される。よって、搬送方向の先端から所定長さ分の読取データに基づいて、斜行角度を考慮して、定型サイズの読取原稿が異常画像を生じさせる位置にて読み取られる状況が生じるか否かを判断できる。
【００１５】
請求項７記載の画像読取装置によれば、請求項６が奏する効果に加え、次の効果を奏する。定型サイズに係る原稿サイズ情報のうち、第１辺および第２辺のうち一方の辺が、搬送方向の先端から所定長さ分の読取データに基づいて取得された主走査長に相当する長さである原稿の原稿サイズ情報が２種類存在する場合、一方が、横置き原稿の原稿サイズを示す第１原稿サイズ情報として取得され、他方が、縦置き原稿の原稿サイズを示す第２原稿サイズ情報として取得される。読取原稿が縦置き原稿と判断されたか横置き原稿であると判断されたかに応じて、第１原稿サイズ情報または第２原稿サイズ情報が用いられる。よって、読取原稿が縦置き原稿または横置き原稿のいずれであるかに応じて適切に読取原稿が記憶部に記憶される主走査方向の位置を通過するかを判断できる。
【００１６】
請求項８記載の画像読取装置によれば、請求項７が奏する効果に加え、次の効果を奏する。横置き判断手段による判断が、縦置き判断手段による判断に先立って行われる。縦置き原稿に比べて短い横置き原稿の副走査方向の長さが搬送される間に、読取原稿が、異常値が検出された位置を通過する場合、横置き原稿および縦置き原稿のいずれであっても、読取原稿が、異常値が検出された位置を通過する。よって、横置き判断手段による判断が、読取原稿が前記主走査方向の位置を通過すると判断された場合には、エラー処理として、原稿読取手段による読み取り走査を中止する処理が実行されるので、縦置き判断手段の実行を省くことができる。よって、その分、処理負荷を抑制できる。
【００１７】
請求項９記載の画像読取装置によれば、請求項７または８が奏する効果に加え、次の効果を奏する。記憶部には、サイズ毎に、横置きの原稿サイズ情報と、縦置きの原稿サイズ情報とが記憶されるので、搬送方向の先端から所定長さ分の読取データに基づいて取得された主走査長から、読取原稿が縦置き原稿または横置き原稿のいずれであるかを容易に特定できる。
【００１９】
請求項１０記載の画像読取装置によれば、請求項１から９のいずれかが奏する効果に加え、次の効果を奏する。読取原稿が記憶部に記憶される主走査方向の位置を通過する可能性があると判断されたことを条件として、所要距離を用いた判断が実行される。所要距離を用いた判断の実行は、読取原稿を搬送しながら随時行われる処理であるので、読取原稿が該当位置を通過するとの判断が得られるまでにはある程度の時間を要する。これに対し、当該判断の実行は、読取原稿が記憶部に記憶される主走査方向の位置を通過する可能性がある場合に限られるので、その分の処理が省略され、処理負荷を軽減できる。
【００２０】
請求項１１記載の画像読取装置によれば、請求項１０が奏する効果に加え、次の効果を奏する。搬送方向の先端から所定長さ分の読取データに基づいて原稿サイズ情報が取得された場合には、所要距離を用いた判断に係る処理を省くことができるので、処理負荷を軽減できる。
【００２１】
請求項１２記載の画像読取プログラムによれば、請求項１の画像読取装置と同様の効果を奏する。
【図面の簡単な説明】
【００２２】
【図１】（ａ）は、スキャナの電気的構成を示すブロック図であり、（ｂ）は、定型原稿テーブルを説明するための模式図である。
【図２】スキャナの一部を簡略化して示す模式図である。
【図３】ＡＤＦ読取処理を示すフローチャートである。
【図４】（ａ）および（ｂ）は、それぞれ、ゴミ位置座標記憶処理および原稿先端解析処理を示すフローチャートである。
【図５】（ａ）〜（ｃ）は、それぞれ、定型原稿後端推定処理、ゴミ影響判定処理／定型横置き、およびゴミ影響判定処理／定型縦置きを示すフローチャートである。
【図６】非定型原稿処理を示すフローチャートである。
【図７】ゴミ影響判定処理／非定型を示すフローチャートである。
【図８】定型原稿に対する本発明の適用例を示す図である。
【図９】非定型原稿に対する本発明の適用例を示す図である。
【発明を実施するための形態】
【００２３】
以下、本発明の好ましい実施形態について、添付図面を参照して説明する。図１（ａ）は、本発明の画像読取装置の一実施形態であるスキャナ１０の電気的構成を示すブロック図である。詳細は後述するが、本実施形態のスキャナ１０は、ＡＤＦ１９により搬送される原稿をＣＩＳ１７により読み取る場合に、当該原稿が異常画像を生じさせる位置にて読み取られる状況が生じるか否かに応じた制御を行うよう構成される。
【００２４】
スキャナ１０には、ＣＰＵ１１、ＲＯＭ１２、ＲＡＭ１３、ＥＥＰＲＯＭ１４、操作部１５、ＬＣＤ１６、ＣＩＳ１７、読取位置移動部１８、ＡＤＦ１９、リアセンサ２０、ＵＳＢインターフェイス（ＵＳＢ＿Ｉ／Ｆ）２１、ネットワークインターフェイス（ネットワークＩ／Ｆ）２２が主に設けられる。これらの各部１１〜２２は、バスライン２３を介して互いに接続される。
【００２５】
ＣＰＵ１１は、ＲＯＭ１２に記憶される固定値やプログラム、ＲＡＭ１３に記憶されているデータに従って、スキャナ１０の各部を制御する。ＲＯＭ１２は、読み出し専用のメモリである。
【００２６】
ＲＯＭ１２には、スキャナ１０の動作を制御する制御プログラム１２ａや、制御プログラム１２ａを実行する際に参照する定数やテーブルなどが格納される。後述する図３から図７のフローチャートに示す各処理は、ＣＰＵ１１が制御プログラム１２ａに従い実行する処理である。
【００２７】
ＲＡＭ１３は、ＣＰＵ１１の処理に必要な情報を一時的に記憶する書換可能な揮発性のメモリである。ＥＥＰＲＯＭ１４は、書換可能であるとともに、電源遮断後も内容を保持可能な不揮発性のメモリである。ＥＥＰＲＯＭ１４には、図１（ｂ）を参照して後述する定型原稿テーブル１４ａが設けられる。
【００２８】
操作部１５は、スキャナに設定値や指示など入力するためのものである。操作部１５としては、ＬＣＤ１６に重ねて設けられるタッチパネルや、メカニカルキーなどが例示される。ＬＣＤ１６は、各種画面を表示する液晶表示装置である。
【００２９】
ＣＩＳ１７は、コンタクトイメージセンサ（Ｃｏｎｔａｃｔ  Ｉｍａｇｅ  Ｓｅｎｓｏｒ）で原稿を読み取る読取部である。ＣＩＳ１７は、主走査方向に直線状に配列された複数の受光素子を有するリニアイメージセンサ、ＲＧＢ３色の発光ダイオードを有する光源、原稿で反射された反射光をイメージセンサの各受光素子に結像させるロッドレンズアレイなどを有する。
【００３０】
主走査方向とは、プラテンガラス４４，４５（図２参照）の面に平行な方向であり、かつ、読取位置移動部１８によるＣＩＳ１７の移動方向に直交する方向である。主走査方向は、ＡＤＦ１９によりプラテンガラス４４，４５上を搬送される原稿の搬送方向に直交する向きでもある。
【００３１】
読取位置移動部１８は、ＣＩＳ１７を副走査方向に移動させるためのものである。読取位置移動部１８は、ステッピングモータであるモータ、当該モータをステップ駆動するための駆動信号を生成するモータ駆動部などを含む。副走査方向とは、ＡＤＦ１９によりプラテンガラス４４，４５上を搬送される原稿の搬送方向に沿った方向であり、矢印Ｆ方向または矢印Ｂ方向（図２参照）である。
【００３２】
ＡＤＦ１９は、原稿トレイ５８（図２参照）にセットされた原稿を、搬送経路５７（図２参照）に沿ってＣＩＳ１７による読取位置まで搬送させるとともに、ＣＩＳ１７による読み取り後の原稿を排紙トレイ５９（図２参照）まで搬送させる。
【００３３】
リアセンサ２０は、ＡＤＦ１９により搬送される原稿を検出するためのセンサである。リアセンサ２０は、フォトセンサ等から構成される。リアセンサ２０は、リアセンサ２０が原稿を検出するか否かに応じて、出力レベルの異なる信号を出力する。本実施形態において、リアセンサ２０は、当該リアセンサ２０が原稿を検出しない場合にオフ信号を出力し、原稿を検出した場合にオン信号を出力する。スキャナ１０は、リアセンサ２０から出力される信号に基づいて、リアセンサ２０の位置における原稿の有無を検知できる。
【００３４】
ＵＳＢ＿Ｉ／Ｆ２１は、ＵＳＢプラグを介して、例えば、ＵＳＢメモリなどの記憶媒体や、パーソナルコンピュータやハードディスクなどの他の装置を通信可能に接続するための装置であり、周知の装置で構成される。ネットワークＩ／Ｆ２２は、スキャナ１０を、ＬＡＮやインターネットなどのネットワーク（図示せず）に接続するためのインターフェイスである。
【００３５】
図１（ｂ）は、ＥＥＰＲＯＭ１４に設けられる定型原稿テーブル１４ａを説明するための模式図である。定型原稿テーブル１４ａは、スキャナ１０が利用可能な定型サイズの原稿（以下「定型原稿」と称す）について、原稿の主走査方向および副走査方向の長さを各々格納したテーブルである。なお、「定型サイズ」とは、ＪＩＳ規格などの各種規格により標準化された用紙のサイズである。
【００３６】
定型原稿テーブル１４ａには、原稿サイズ１４ａ１に対し、主走査長１４ａ２と、副走査長１４ａ３とが関連付けられている。スキャナ１０が利用可能な定型サイズの各々が、原稿サイズ１４ａ１の値として格納される。原稿サイズ１４ａ１は、規格サイズが同じであっても、原稿トレイ５８にセットされる原稿の置き方に応じて区別される。つまり、同じＡ４サイズであっても、原稿の置き方が「縦置き」であるか「横置き」であるかに応じて異なる原稿サイズ１４ａ１として区別される。なお、「縦置き」は、原稿の長辺をＡＤＦ１９による搬送方向にする原稿の置き方である。「横置き」は、原稿の短辺をＡＤＦ１９による搬送方向にする原稿の置き方である。
【００３７】
主走査長１４ａ２には、斜行することなく搬送される原稿の主走査長、すなわち、主走査方向の長さが格納される。副走査長１４ａ３には、斜行することなく搬送される原稿の副走査長、すなわち、副走査方向の長さが格納される。原稿が「縦置き」である場合、主走査長１４ａ２には、原稿の短辺の長さが格納され、副走査長１４ａ３には、原稿の長辺の長さが格納される。一方、原稿が「横置き」である場合、主走査長１４ａ２には、原稿の長辺の長さが格納され、副走査長１４ａ３には、原稿の短辺の長さが格納される。
【００３８】
原稿が縦置きであるか横置きであるかに応じて、主走査長１４ａ２の値が同じである２種類の原稿サイズ１４ａ１が存在する場合がある。例えば、図１（ｂ）に示すように、定型原稿テーブル１４ａには、主走査長１４ａ２が２１０ｍｍである原稿サイズ１４ａ１として、縦置きのＡ４サイズと、横置きのＡ５サイズとが存在する。
【００３９】
図２は、スキャナ１０の一部を簡略化して示す模式図である。スキャナ１０の筐体４３は、概ね箱型に形成されており、上部に第１プラテンガラス４４と、第２プラテンガラス４５とが並設されている。
【００４０】
原稿カバー４６は、各プラテンガラス４４，４５を覆う閉姿勢と、各プラテンガラス４４，４５を開放する開姿勢とに回動可能に筐体４３に連結されている。原稿カバー４６には、ＡＤＦ１９、原稿トレイ５８、排紙トレイ５９などが設けられている。
【００４１】
ＡＤＦ１９の内部には、分離ローラ５０、分離ローラ５０を軸支する軸に基端側を軸支されたアーム５１の先端部に回転自在に設けられている吸入ローラ５２、複数の搬送ローラ５３，５４、排紙ローラ５５、これらに圧接する複数の従動ローラ５６が設けられている。原稿はこれらのローラに搬送されて搬送経路５７を搬送され、ＣＩＳ１７によって読み取られる位置を通過して、排紙トレイ５９に排紙される。
【００４２】
ＣＩＳ１７は、スキャナ１０の筐体４３の内部に収容されている。ＣＩＳ１７は、ＡＤＦ１９により搬送される原稿を読み取る場合、第２プラテンガラス４５の直下にて停止し、その位置を読取位置として、光源の色を順次切り替えながら、第２プラテンガラス４５を介して原稿を読み取る。一方、ＣＩＳ１７は、第１プラテンガラス４４上に載置される原稿を読み取る場合、読取位置移動部１８を用いて、ＣＩＳ１７を副走査方向（矢印Ｆ方向または矢印Ｂ方向）に一定速度で移動させつつ、光源の色を順次切り替えながら原稿を読み取る。
【００４３】
第２プラテンガラス４５を介してＣＩＳ１７に対向する側には、ＣＩＳ１７が第２プラテンガラス４５を介して読み取ることのできる白色の基準板６０が設けられている。本実施形態では、ＡＤＦ１９を用いた原稿の読み取りを行う場合、原稿の搬送開始に先立ち、ＣＩＳ１７が基準板６０を読み取ることにより、第２プラテンガラス４５上またはＣＩＳ１７を構成する受光素子上のゴミや傷など、異常画像を発生させる可能性の検出を行う。
【００４４】
リアセンサ２０は、ＣＩＳ１７による原稿の読み取り開始タイミングを計るためのセンサとして機能する。具体的に、スキャナ１０は、リアセンサ２０が原稿を検出したタイミングから、所定の搬送量だけ原稿が搬送されたタイミングで、ＣＩＳ１７による原稿の読み取りを開始する。また、リアセンサ２０は、ＣＩＳ１７による原稿の読み取り終了タイミングを計るためのセンサとして機能する。具体的に、スキャナ１０は、リアセンサ２０が原稿を検出しなくなったタイミングから、所定の搬送量だけ原稿が搬送されたタイミングで、ＣＩＳ１７による原稿の読み取りを終了する。
【００４５】
ところで、ＡＤＦ１９を用いた原稿の読み取りを行う場合、ＡＤＦ１９による原稿の搬送ずれなどが原因となって、原稿が斜行して搬送されることがある。原稿の斜行を考慮に入れた場合、同じゴミの位置であっても、ある斜行角度では、搬送される原稿が第２プラテンガラス４５に付着したゴミの上を通過する状況が生じないが、別の斜行角度では、上記状況が生じることがある。これに対し、本実施形態のスキャナ１０は、ＡＤＦ１９を用いた原稿の読み取りを行う場合に、原稿の斜行角度を考慮して、搬送される原稿が第２プラテンガラス４５に付着したゴミの上を通過する状況が生じるか否かを判断し、その判断結果に応じた制御を行う。
【００４６】
図３から図７を参照して、上記構成のスキャナ１０のＣＰＵ１１が制御プログラム１２ａに従って実行する各処理について説明する。なお、図３から図７に示す各フローチャートを説明する上で、必要に応じて、図８または図９を参照する。
【００４７】
図３は、ＡＤＦ読取処理を示すフローチャートである。本処理は、ＡＤＦ１９を用いて原稿を搬送しながら、当該原稿を読み取る処理である。本処理は、ＡＤＦ１９を用いた原稿の読取指示をＣＰＵ１１が受け付けたことに応じて開始する。
【００４８】
ＣＰＵ１１は、準備処理を実行する（Ｓ３０１）。具体的に、ＣＰＵ１１は、読取位置移動部１８を用いて、ＣＩＳ１７を、副走査方向に移動させ、所定の読取位置に配置する。また、ＣＰＵ１１は、光量の調整やシェーディング補正用データの取得などを行う。ＣＰＵ１１は、ゴミ位置座標記憶処理を実行する（Ｓ３０２）。詳細は図４（ａ）を参照して後述するが、ゴミ位置座標記憶処理（Ｓ３０２）は、第２プラテンガラス４５上のゴミや傷など、異常画像を発生させる可能性が検出された場合に、その位置の座標（Ｘｇ，Ｙｇ）をＲＡＭ１３に記憶する処理である。以下、「異常画像を発生させる可能性が検出された位置」を「ゴミ位置」と称する。また、本実施形態では、「異常画像を発生させる可能性」が、第２プラテンガラス４５上のゴミであるとする。
【００４９】
ＣＰＵ１１は、原稿トレイ５８にセットされている原稿の、ＡＤＦ１９による搬送を開始する（Ｓ３０３）。ＣＰＵ１１は、リアセンサ２０からオン信号が入力された後、原稿における搬送方向の先端（以下、単に「先端」と称す）がＣＩＳ１７の読取位置まで搬送されたかを判断する（Ｓ３０４）。つまり、ＣＰＵ１１は、リアセンサ２０が原稿の先端を検出してから、その先端がＣＩＳ１７の読取位置まで搬送されたかを判断する。当該判断は、所定のカウンタ（以下「搬送カウンタ」と称す）によりカウントされる、搬送ローラ５３，５４を駆動するモータ（図示せず）のステップ数に基づいて行われる。
【００５０】
具体的に、リアセンサ２０からオン信号が入力されてからのステップ数が、リアセンサ２０の検出位置からＣＩＳ１７の読取位置までの搬送距離に相当するステップ数に達した場合、ＣＰＵ１１は、Ｓ３０４の判断を肯定する。ＣＰＵ１１は、その判断が肯定されるまで、Ｓ３０４の判断を実行する（Ｓ３０４：Ｎｏ）。ＣＰＵ１１がＳ３０４の判断を肯定した場合（Ｓ３０４：Ｙｅｓ）、ＣＰＵ１１は、ＣＩＳ１７による原稿の読み取りを開始する（Ｓ３０５）。
【００５１】
ＣＰＵ１１は、原稿先端解析処理を実行する（Ｓ３０６）。詳細は図４（ｂ）を参照して後述するが、原稿先端解析処理（Ｓ３０６）は、原稿の先端側におけるエッジ画像に基づいて、当該原稿の主走査長Ｘｓｉｚｅを算出する処理である。ＣＰＵ１１は、定型原稿テーブル１４ａを参照して、主走査長１４ａ２が主走査長Ｘｓｉｚｅに一致する原稿サイズ１４ａ１があるかを判断する（Ｓ３０７）。
【００５２】
定型原稿テーブル１４ａに該当する原稿サイズ１４ａ１がないと判断した場合（Ｓ３０７：Ｎｏ）、ＣＰＵ１１は、搬送中の原稿が定型原稿でない、すなわち、非定型原稿であるとして、非定型原稿処理を実行し（Ｓ３２０）、本処理を終了する。非定型原稿処理（Ｓ３２０）の詳細については、図６を参照して後述する。
【００５３】
一方、定型原稿テーブル１４ａに該当する原稿サイズ１４ａ１があると判断した場合（Ｓ３０７：Ｙｅｓ）、ＣＰＵ１１は、搬送中の原稿が定型原稿であるとして、定型原稿後端推定処理を実行する（Ｓ３０８）。詳細は図５（ａ）を参照して後述するが、定型原稿後端推定処理（Ｓ３０８）は、主走査長が主走査長Ｘｓｉｚｅである定型原稿について、その後端座標を推定する処理である。主走査長１４ａ２が主走査長Ｘｓｉｚｅに一致する原稿サイズ１４ａ１が２つある場合、ＣＰＵ１１は、それら２つの原稿サイズについて、原稿の後端座標を推定する。
【００５４】
主走査長１４ａ２が主走査長Ｘｓｉｚｅに一致するとされた原稿サイズ１４ａ１が縦置きのものだけである場合（Ｓ３０９：Ｙｅｓ）、ＣＰＵ１１は、処理をＳ３１４に移行する。一方、主走査長１４ａ２が主走査長Ｘｓｉｚｅに一致するとされた原稿サイズ１４ａ１が縦置きに限らない場合（Ｓ３０９：Ｎｏ）、ＣＰＵ１１は、ゴミ影響判定処理／定型横置きを実行する（Ｓ３１０）。詳細は図５（ｂ）を参照して後述するが、ゴミ影響判定処理／定型横置き（Ｓ３１０）は、横置きであると判定された搬送中の原稿が、ＲＡＭ１３に記憶される座標（Ｘｇ，Ｙｇ）に位置するゴミの影響を受けるか否かを判定する処理である。
【００５５】
ゴミ影響判定処理／定型横置き（Ｓ３１０）において、搬送中の原稿がゴミの影響を受けると判定された場合（Ｓ３１１：Ｙｅｓ）、ＣＰＵ１１は、ＬＣＤ１６などを利用してエラーを報知し（Ｓ３２１）、ＣＰＵ１１は、ＣＩＳ１７による原稿の読み取りを終了する（Ｓ３１７）。Ｓ３１７の処理後、ＣＰＵ１１は、原稿が排紙トレイ５９に排紙されるのを待機する（Ｓ３１８：Ｎｏ）。ＣＰＵ１１は、原稿の排紙が完了すると（Ｓ３１８：Ｙｅｓ）、ＡＤＦ１９による搬送を終了し（Ｓ３１９）、本処理を終了する。よって、搬送中の原稿がゴミの影響を受けると判定された場合には、原稿の読み取りは中止され、以降の原稿の読み取りは行われない。なお、原稿の読み取りが中止された場合、それまでの読み取りによって得られた画像データは破棄される。
【００５６】
一方、搬送中の原稿がゴミの影響を受けないと判定された場合（Ｓ３１１：Ｎｏ）、ＣＰＵ１１は、リアセンサ２０からオフ信号が入力された後、原稿における搬送方向の後端（以下、単に「後端」と称す）がＣＩＳ１７の読取位置まで搬送されたかを判断する（Ｓ３１２）。つまり、ＣＰＵ１１は、リアセンサ２０が原稿を検出しなくなってから、原稿の後端がＣＩＳ１７の読取位置まで搬送されたかを判断する。当該判断もまた、Ｓ３０７と同様、搬送カウンタによりカウントされるモータ（図示せず）のステップ数に基づいて行われる。具体的に、リアセンサ２０からオフ信号が入力されてからのステップ数が、リアセンサ２０の検出位置からＣＩＳ１７の読取位置までの搬送距離に相当するステップ数に達した場合、ＣＰＵ１１は、Ｓ３１２の判断を肯定する。
【００５７】
ＣＰＵ１１がＳ３１２の判断を肯定した場合（Ｓ３１２：Ｙｅｓ）、搬送中の原稿の読み取りを終了すべきタイミングであることを示す。よって、かかる場合、ＣＰＵ１１は、ＣＩＳ１７による原稿の読み取りを終了する（Ｓ３１７）。一方、ＣＰＵ１１がＳ３１２の判断を肯定しない場合（Ｓ３１２：Ｎｏ）、ＣＰＵ１１は、横置きの原稿分の搬送が完了したかを判断する（Ｓ３１３）。当該判断もまた、Ｓ３０７およびＳ３１２と同様、搬送カウンタによりカウントされるモータのステップ数に基づいて行われる。具体的に、リアセンサ２０からオン信号が入力されてからのステップ数が、主走査長１４ａ２が主走査長Ｘｓｉｚｅに一致するとされた横置きの原稿サイズ１４ａ１の副走査長１４ａ３に相当するステップ数に達したことを条件として、ＣＰＵ１１は、Ｓ３１３の判断を肯定する。ＣＰＵ１１がＳ３１３の判断を肯定しない場合（Ｓ３１３：Ｎｏ）、ＣＰＵ１１は、Ｓ３１２の判断を実行する。
【００５８】
ＣＰＵ１１がＳ３１３の判断を肯定した場合（Ｓ３１３：Ｙｅｓ）、搬送中の原稿が、主走査長１４ａ２が主走査長Ｘｓｉｚｅに一致するとされた縦置きの原稿サイズ１４ａ１であることを示す。よって、かかる場合、ＣＰＵ１１は、ゴミ影響判定処理／定型縦置きを実行する（Ｓ３１４）。詳細は図５（ｃ）を参照して後述するが、ゴミ影響判定処理／定型縦置き（Ｓ３１４）は、縦置きであると判定された搬送中の原稿が、ＲＡＭ１３に記憶される座標（Ｘｇ，Ｙｇ）に位置するゴミの影響を受けるか否かを判定する処理である。
【００５９】
ゴミ影響判定処理／定型縦置き（Ｓ３１４）において、搬送中の原稿がゴミの影響を受けると判定された場合（Ｓ３１５：Ｙｅｓ）、ＣＰＵ１１は、Ｓ３２１と同様にエラーを報知し（Ｓ３２２）、ＣＰＵ１１は、ＣＩＳ１７による原稿の読み取りを終了する（Ｓ３１７）。よって、縦置きと判定された原稿についても、当該原稿がゴミの影響を受けると判定された場合には、原稿の読み取りは中止され、以降の原稿の読み取りは行われない。
【００６０】
一方、搬送中の原稿がゴミの影響を受けないと判定された場合（Ｓ３１５：Ｎｏ）、ＣＰＵ１１は、リアセンサ２０からオフ信号が入力された後、原稿の後端がＣＩＳ１７の読取位置まで搬送されたかを判断する（Ｓ３１６）。ＣＰＵ１１は、当該判断をＳ３１２と同様に行う。ＣＰＵ１１は、その判断が肯定されるまで、Ｓ３１６の判断を実行する（Ｓ３１６：Ｎｏ）。ＣＰＵ１１がＳ３１６の判断を肯定した場合（Ｓ３１６：Ｙｅｓ）、ＣＰＵ１１は、ＣＩＳ１７による原稿の読み取りを終了する（Ｓ３１７）。
【００６１】
上記ＡＤＦ読取処理において、搬送中の原稿が定型原稿であると判断された場合に実行されるＳ３０８〜Ｓ３１６の処理によれば、ゴミ影響判定処理／定型横置き（Ｓ３１０）にて、搬送中の原稿がゴミの影響を受けると判定された場合、搬送中の原稿が縦置きの原稿であったとしても、エラー処理（Ｓ３２２）が実行される。その理由としては、主走査長Ｘｓｉｚｅが同じである場合、縦置きの原稿の副走査長は、横置きの原稿の副走査長に比べて長いので、Ｓ３１０にて、横置きの原稿がゴミの影響を受けると判定された場合、縦置きの原稿であっても同様の判定結果が得られるからである。
【００６２】
このように、ゴミ影響判定処理／定型横置き（Ｓ３１０）が、ゴミ影響判定処理／定型縦置き（Ｓ３１４）に先立って実行されるので、搬送中の原稿が縦置きであるか否かが（Ｓ３１２，Ｓ３１３）にて判断される前であっても、原稿がゴミの影響を受けるかを早期に判定できる。また、搬送中の原稿が縦置きであっても、ゴミ影響判定処理／定型横置き（Ｓ３１０）の実行機会が限られることになるので、その分、制御負荷も軽減できる。
【００６３】
図４（ａ）は、上述したゴミ位置座標記憶処理（Ｓ３０２）を示すフローチャートである。ＣＰＵ１１は、ゴミ検知フラグに０を設定する（Ｓ４０１）。「ゴミ検知フラグ」は、異常画像を発生させる可能性が検出されたか否かを特定するフラグであり、ＲＡＭ１３に設けられる。ゴミ検知フラグに１が設定されている場合、異常画像を発生させる可能性（本実施形態では、第２プラテンガラス４５上のゴミ）が検出されたことを示す。一方、ゴミ検知フラグに０が設定されている場合、異常画像を発生させる可能性が検出されていないことを示す。
【００６４】
ＣＰＵ１１は、ＣＩＳ１７に、読取位置で、第２プラテンガラス４５を介してＣＩＳ１７に対向する位置に設けられている白色の基準板６０を１ライン分読み取らせる（Ｓ４０２）。なお、基準板６０は、白色の基準板に限らず、灰色の基準板などであってもよい。ＣＰＵ１１は、Ｓ４０２の読み取りによって得られた画像データにおける先頭の画素を対象画素に設定する（Ｓ４０３）。
【００６５】
ＣＰＵ１１は、対象画素の画素値が閾値を超えるかを判断する（Ｓ４０４）。対象画素の画素値が閾値を超えないと、ＣＰＵ１１が判断した場合（Ｓ４０４：Ｎｏ）、ＣＰＵ１１は、基準板６０を読み取った画像データに異常がある、すなわち、ゴミが検出されたとして、ゴミ検知フラグに１を設定し（Ｓ４０５）、処理をＳ４０６に移行する。一方、対象画素の画素値が閾値を越えると、ＣＰＵ１１が判断した場合（Ｓ４０４：Ｙｅｓ）、ＣＰＵ１１は、Ｓ４０５の処理をスキップして、処理をＳ４０６に移行する。
【００６６】
Ｓ４０６において、ＣＰＵ１１は、Ｓ４０２の読み取りによって得られた画像データを構成する全画素についてＳ４０４の判断を行ったかを判断する。ＣＰＵ１１がＳ４０６の判断を否定した場合（Ｓ４０６：Ｎｏ）、ＣＰＵ１１は、対象画素を次の画素に移動し（Ｓ４０９）、処理をＳ４０４に移行する。ＣＰＵ１１がＳ４０６の判断を肯定した場合（Ｓ４０６：Ｙｅｓ）、ＣＰＵ１１は、ゴミ検知フラグに１が設定されているかを判断する（Ｓ４０７）。ゴミ検知フラグに１が設定されていないと、ＣＰＵ１１が判断した場合（Ｓ４０７：Ｎｏ）、ＣＰＵ１１は、本処理を終了する。
【００６７】
一方、ゴミ検知フラグに１が設定されていると、ＣＰＵ１１が判断した場合（Ｓ４０７：Ｙｅｓ）、ＣＰＵ１１は、画素値が閾値を超えない画素の位置、すなわち、ゴミ位置の座標（Ｘｇ，Ｙｇ）をＲＡＭ１３に記憶する（Ｓ４０６）。本明細書において、座標（Ｘ、Ｙ）のＸは、主走査方向の位置（以下「主走査位置」と称す）を示し、Ｙは、副走査方向の位置（以下「副走査位置」と称す）を示す。なお、複数のゴミ位置が存在する場合、複数のゴミ位置について各々の座標（Ｘｇ，Ｙｇ）がＲＡＭ１３に記憶される。
【００６８】
図４（ｂ）は、上述した原稿先端解析処理（Ｓ３０６）を示すフローチャートである。ＣＰＵ１１は、原稿の先端から所定長さ分（本実施形態では、３ｃｍ分）の読み取りにより得られた画像データに基づき、原稿のエッジ画像を取得する（Ｓ４２１）。ＣＰＵ１１は、エッジ画像から、原稿における搬送方向の先端側となる辺（以下「上辺」と称す）を示す直線Ｌ１（図８，図９参照）の直線式を算出する（Ｓ４２２）。ＣＰＵ１１は、直線Ｌ１の傾きを斜行角度Ａとする。
【００６９】
なお、図８は、定型原稿に対する本発明の適用例を示す図であり、図９は、非定型原稿に対する本発明の適用例を示す図である。より詳細には、図８は、エッジ画像の読取分、すなわち、原稿の先端から所定長さ分の読み取りが行われた状態における、第２プラテンガラス４５に対する定型原稿Ｐ１の位置を示す模式図である。一方、図９は、エッジ画像の読取分の読み取りが行われた状態における、第２プラテンガラス４５に対する非定型原稿Ｐ２の位置を示す模式図である。
【００７０】
ＣＰＵ１１は、エッジ画像から、原稿の左辺および右辺をそれぞれ示す直線Ｌ２，Ｌ３（図８，図９参照）について、直線式をそれぞれ算出する（Ｓ４２３）。なお、「左辺」は、上辺に隣接する２辺のうち、第２プラテンガラス４５を臨む方向から見た場合に向かって上辺に対して左側に位置する辺である。一方、「右辺」は、上記左辺の対辺である。
【００７１】
ＣＰＵ１１は、図８，図９に示すように、直線Ｌ１と直線Ｌ２との交点、および、直線Ｌ１と直線Ｌ３との交点を、それぞれ、左上角座標（Ｘｕｌ，Ｙｕｌ）および右上角座標（Ｘｕｒ，Ｙｕｒ）として算出する（Ｓ４２４）。  ＣＰＵ１１は、左上角座標（Ｘｕｌ，Ｙｕｌ）および右上角座標（Ｘｕｒ，Ｙｕｒ）と、斜行角度Ａとから、三平方の定理や三角関数などを用いて、原稿の主走査長Ｘｓｉｚｅを算出し（Ｓ４２５）、本処理を終了する。
【００７２】
図５（ａ）は、上述した定型原稿後端推定処理（Ｓ３０８）を示すフローチャートである。ＣＰＵ１１は、定型原稿テーブル１４ａから、主走査長１４ａ２がＳ４２５にて算出された主走査長Ｘｓｉｚｅに一致する原稿サイズ１４ａ１を取得する（Ｓ５０１）。主走査長１４ａ２が主走査長Ｘｓｉｚｅに一致する原稿サイズ１４ａ１が、縦置きと横置きとで２つ存在する場合、ＣＰＵ１１は、それら２つの原稿サイズ１４ａ１を取得する。
【００７３】
ＣＰＵ１１は、直線Ｌ１の直線式と、Ｓ５０１にて取得した原稿サイズ１４ａ１に対応する副走査長１４ａ４の値とから、原稿における上辺に対向する辺（以下「下辺」と称す）を示す直線の直線式を算出する（Ｓ５０２）。より詳細には、図８に示すように、縦置きの原稿サイズ１４ａ１の下辺を示す直線を直線Ｌ４とし、横置きの原稿サイズ１４ａ１の下辺を示す直線を直線Ｌ５とする場合、ＣＰＵ１１は、直線Ｌ４および／または直線Ｌ５の直線式を算出する。
【００７４】
Ｓ５０１にて縦置きの原稿サイズ１４ａ１が取得された場合（Ｓ５０３：Ｙｅｓ）、ＣＰＵ１１は、図８に示すように、直線Ｌ４と直線Ｌ２との交点、および、直線Ｌ４と直線Ｌ３との交点を、それぞれ、左下角座標（Ｘｌｌｐ，Ｙｌｌｐ）および右下角座標（Ｘｌｒｐ，Ｙｌｒｐ）として算出する（Ｓ５０４）。一方、Ｓ５０１にて縦置きの原稿サイズ１４ａ１が取得されていない場合（Ｓ５０３：Ｎｏ）、ＣＰＵ１１は、Ｓ５０４の処理をスキップする。
【００７５】
Ｓ５０１にて横置きの原稿サイズ１４ａ１が取得された場合（Ｓ５０５：Ｙｅｓ）、ＣＰＵ１１は、図８に示すように、直線Ｌ５と直線Ｌ２との交点、および、直線Ｌ５と直線Ｌ３との交点を、それぞれ、左下角座標（Ｘｌｌｈ，Ｙｌｌｈ）および右下角座標（Ｘｌｒｈ，Ｙｌｒｈ）として算出し（Ｓ５０６）、本処理を終了する。一方、Ｓ５０１にて横置きの原稿サイズ１４ａ１が取得されていない場合（Ｓ５０５：Ｎｏ）、ＣＰＵ１１は、Ｓ５０６の処理をスキップする。
【００７６】
図５（ｂ）は、上述したゴミ影響判定処理／定型横置き（Ｓ３１０）を示すフローチャートである。ＣＰＵ１１は、斜行角度Ａ、すなわち、Ｓ４２２にて算出した直線Ｌ１の傾きが０以上であるかを判断する（Ｓ５２１）。
【００７７】
ＣＰＵ１１が斜行角度Ａ≧０°であると判断した場合（Ｓ５２１：Ｙｅｓ）、ＣＰＵ１１は、ＲＡＭ１３に記憶されるゴミ位置の座標（Ｘｇ，Ｙｇ）のうち、主走査位置Ｘｇが、Ｘｕｌ≦Ｘｇ≦Ｘｌｒｈを満たすかを判断する（Ｓ５２２）。つまり、Ｓ５２２では、ゴミの主走査位置Ｘｇが、図８の上段に示す主操作方向の範囲Ｗｈａの範囲内に位置するかの判断が行われる。なお、ＲＡＭ１３に複数のゴミ位置の座標が記憶されている場合、ＣＰＵ１１は、各ゴミ位置の主走査位置ＸｇについてＳ５２２の判断を実行する。
【００７８】
ＣＰＵ１１がＳ５２２の判断を肯定する場合、すなわち、Ｘｕｌ≦Ｘｇ≦Ｘｌｒｈが満たされる場合（Ｓ５２２：Ｙｅｓ）、ゴミの主走査位置Ｘｇが範囲Ｗｈａの範囲内に位置することを示す。かかる場合、搬送される原稿が第２プラテンガラス４５に付着したゴミの上を通過する状況が生じる。つまり、ＣＩＳ１７が第２プラテンガラス４５上のゴミを原稿に重ねて読み取る状況が生じるので、ＣＰＵ１１は、搬送中の原稿がゴミの影響を受けると判定し（Ｓ５２３）、本処理を終了する。ＲＡＭ１３に複数のゴミ位置の座標が記憶されている場合、少なくも１つのゴミ位置について、Ｘｕｌ≦Ｘｇ≦Ｘｌｒｈが満たされる場合に、ＣＰＵ１１は、Ｓ５２２の判断を肯定する。
【００７９】
一方、ＣＰＵ１１がＳ５２２の判断を否定する場合、すなわち、Ｘｕｌ≦Ｘｇ≦Ｘｌｒｈが満たされない場合（Ｓ５２２：Ｎｏ）、ゴミの主走査位置Ｘｇが範囲Ｗｈａの範囲内に位置しないことを示す。かかる場合、搬送される原稿が第２プラテンガラス４５に付着したゴミの上を通過する状況、すなわち、ＣＩＳ１７が第２プラテンガラス４５上のゴミを原稿に重ねて読み取る状況が生じないので、ＣＰＵ１１は、搬送中の原稿がゴミの影響を受けないと判定し（Ｓ５２６）、本処理を終了する。
【００８０】
Ｓ５２１において、ＣＰＵ１１が斜行角度Ａ≧０°でないと判断した場合（Ｓ５２１：Ｎｏ）、すなわち、斜行角度Ａ＜０°である場合、ＣＰＵ１１は、ＲＡＭ１３に記憶されるゴミ位置の座標（Ｘｇ，Ｙｇ）のうち、主走査位置Ｘｇが、Ｘｌｌｈ≦Ｘｇ≦Ｘｕｒを満たすかを判断する（Ｓ５２４）。つまり、Ｓ５２４では、ゴミの主走査位置Ｘｇが、図８の下段に示す主操作方向の範囲Ｗｈｂの範囲内に位置するかの判断が行われる。なお、ＲＡＭ１３に複数のゴミ位置の座標が記憶されている場合、ＣＰＵ１１は、各ゴミ位置の主走査位置ＸｇについてＳ５２４の判断を実行する。
【００８１】
ＣＰＵ１１がＳ５２４の判断を肯定する場合、すなわち、Ｘｌｌｈ≦Ｘｇ≦Ｘｕｒが満たされる場合（Ｓ５２４：Ｙｅｓ）、ゴミの主走査位置Ｘｇが範囲Ｗｈｂの範囲内に位置することを示す。かかる場合、ＣＰＵ１１は、搬送中の原稿がゴミの影響を受けると判定し（Ｓ５２５）、本処理を終了する。ＲＡＭ１３に複数のゴミ位置の座標が記憶されている場合、少なくも１つのゴミ位置について、Ｘｌｌｈ≦Ｘｇ≦Ｘｕｒが満たされる場合に、ＣＰＵ１１は、Ｓ５２４の判断を肯定する。
【００８２】
一方、ＣＰＵ１１がＳ５２４の判断を否定する場合、すなわち、Ｘｌｌｈ≦Ｘｇ≦Ｘｕｒが満たされない場合（Ｓ５２４：Ｎｏ）、ゴミの主走査位置Ｘｇが範囲Ｗｈｂの範囲内に位置しないことを示す。かかる場合、ＣＰＵ１１は、搬送中の原稿がゴミの影響を受けないと判定し（Ｓ５２６）、本処理を終了する。
【００８３】
図５（ｃ）は、上述したゴミ影響判定処理／定型縦置き（Ｓ３１４）を示すフローチャートである。ＣＰＵ１１は、斜行角度Ａが０以上であるかを判断する（Ｓ５４１）。ＣＰＵ１１が斜行角度Ａ≧０°であると判断した場合（Ｓ５４１：Ｙｅｓ）、ＣＰＵ１１は、ＲＡＭ１３に記憶されるゴミ位置の座標（Ｘｇ，Ｙｇ）のうち、主走査位置Ｘｇが、Ｘｕｌ≦Ｘｇ≦Ｘｌｒｐを満たすかを判断する（Ｓ５４２）。つまり、Ｓ５４２では、ゴミの主走査位置Ｘｇが、図８の上段に示す主操作方向の範囲Ｗｐａの範囲内に位置するかの判断が行われる。なお、ＲＡＭ１３に複数のゴミ位置の座標が記憶されている場合、ＣＰＵ１１は、各ゴミ位置の主走査位置ＸｇについてＳ５４２の判断を実行する。
【００８４】
ＣＰＵ１１がＳ５４２の判断を肯定する場合、すなわち、Ｘｕｌ≦Ｘｇ≦Ｘｌｒｐが満たされる場合（Ｓ５４２：Ｙｅｓ）、ゴミの主走査位置Ｘｇが範囲Ｗｐａの範囲内に位置することを示す。かかる場合、搬送される原稿が第２プラテンガラス４５に付着したゴミの上を通過する状況が生じる。つまり、ＣＩＳ１７が第２プラテンガラス４５上のゴミを原稿に重ねて読み取る状況が生じるので、ＣＰＵ１１は、搬送中の原稿がゴミの影響を受けると判定し（Ｓ５４３）、本処理を終了する。ＲＡＭ１３に複数のゴミ位置の座標が記憶されている場合、少なくも１つのゴミ位置について、Ｘｕｌ≦Ｘｇ≦Ｘｌｒｈが満たされる場合に、ＣＰＵ１１は、Ｓ５４２の判断を肯定する。
【００８５】
一方、ＣＰＵ１１がＳ５４２の判断を否定する場合、すなわち、Ｘｕｌ≦Ｘｇ≦Ｘｌｒｐが満たされない場合（Ｓ５４２：Ｎｏ）、ゴミの主走査位置Ｘｇが範囲Ｗｐａの範囲内に位置しないことを示す。かかる場合、搬送される原稿が第２プラテンガラス４５に付着したゴミの上を通過する状況が生じないので、ＣＰＵ１１は、搬送中の原稿がゴミの影響を受けないと判定し（Ｓ５４６）、本処理を終了する。
【００８６】
Ｓ５４１において、ＣＰＵ１１が斜行角度Ａ≧０°でない判断した場合（Ｓ５４１：Ｎｏ）、すなわち、斜行角度Ａ＜０°である場合、ＣＰＵ１１は、ＲＡＭ１３に記憶されるゴミ位置の座標（Ｘｇ，Ｙｇ）のうち、主走査位置Ｘｇが、Ｘｌｌｐ≦Ｘｇ≦Ｘｕｒを満たすかを判断する（Ｓ５４４）。つまり、Ｓ５４４では、ゴミの主走査位置Ｘｇが、図８の下段に示す主操作方向の範囲Ｗｐｂの範囲内に位置するかの判断が行われる。なお、ＲＡＭ１３に複数のゴミ位置の座標が記憶されている場合、ＣＰＵ１１は、各ゴミ位置の主走査位置ＸｇについてＳ５４４の判断を実行する。
【００８７】
ＣＰＵ１１がＳ５４４の判断を肯定する場合、すなわち、Ｘｌｌｈ≦Ｘｇ≦Ｘｕｒが満たされる場合（Ｓ５４４：Ｙｅｓ）、ゴミの主走査位置Ｘｇが範囲Ｗｐｂの範囲内に位置することを示す。かかる場合、ＣＰＵ１１は、搬送中の原稿がゴミの影響を受けると判定し（Ｓ５４５）、本処理を終了する。ＲＡＭ１３に複数のゴミ位置の座標が記憶されている場合、少なくも１つのゴミ位置について、Ｘｌｌｈ≦Ｘｇ≦Ｘｕｒが満たされる場合に、ＣＰＵ１１は、Ｓ５４４の判断を肯定する。
【００８８】
一方、ＣＰＵ１１がＳ５４４の判断を否定する場合、すなわち、Ｘｌｌｈ≦Ｘｇ≦Ｘｕｒが満たされない場合（Ｓ５４４：Ｎｏ）、ゴミの主走査位置Ｘｇが範囲Ｗｐｂの範囲内に位置しないことを示す。かかる場合、ＣＰＵ１１は、搬送中の原稿がゴミの影響を受けないと判定し（Ｓ５４６）、本処理を終了する。
【００８９】
図６は、上述した非定型原稿処理（Ｓ３２０）を示すフローチャートである。ＣＰＵ１１は、ゴミ影響判定処理／非定型を実行する（Ｓ６０１）。詳細は図７を参照して後述するが、ゴミ影響判定処理／非定型（Ｓ６０１）は、原稿の先端から所定長さ分のエッジ画像に基づいて、非定型原稿であると判定された搬送中の原稿が、ＲＡＭ１３に記憶される座標（Ｘｇ，Ｙｇ）に位置するゴミの影響を受けるか、受けないか、その可能性があるかを判定する処理である。
【００９０】
ゴミ影響判定処理／非定型（Ｓ６０１）において、搬送中の原稿がゴミの影響を受けると判定された場合（Ｓ６０２：ゴミ影響あり）、ＣＰＵ１１は、Ｓ３２１やＳ３２２と同様にエラーを報知し（Ｓ６０９）、ＣＰＵ１１は、ＣＩＳ１７による原稿の読み取りを終了する（Ｓ６０５）。Ｓ６０５の処理後、ＣＰＵ１１は、Ｓ３１８およびＳ３１９と同様、原稿の排紙後にＡＤＦ１９による搬送を終了し（Ｓ６０６，Ｓ６０７）、本処理を終了する。よって、非定型原稿であると判定された原稿であっても、当該原稿がゴミの影響を受けると判定された場合、原稿の読み取りは中止され、以降の原稿の読み取りは行われない。
【００９１】
ゴミ影響判定処理／非定型（Ｓ６０１）において、搬送中の原稿がゴミの影響を受けないと判定された場合（Ｓ６０２：ゴミ影響なし）、ＣＰＵ１１は、リアセンサ２０からオフ信号が入力された後、原稿の後端がＣＩＳ１７の読取位置まで搬送されたかを判断する（Ｓ６０８）。ＣＰＵ１１は、当該判断をＳ３１２やＳ３１６と同様に行う。ＣＰＵ１１は、その判断が肯定されるまで、Ｓ６０８の判断を実行する（Ｓ６０８：Ｎｏ）。ＣＰＵ１１がＳ６０８の判断を肯定した場合（Ｓ６０８：Ｙｅｓ）、ＣＰＵ１１は、ＣＩＳ１７による原稿の読み取りを終了する（Ｓ６０５）。よって、原稿がゴミの影響を受けないと判定された場合には、原稿の後端まで通常通りに原稿の読み取りが行われる。
【００９２】
一方、ゴミ影響判定処理／非定型（Ｓ６０１）において、搬送中の原稿がゴミの影響を受ける可能性があると判定された場合（Ｓ３０２：ゴミ影響可能性あり）、ＣＰＵ１１は、ゴミ影響距離Ｄから、現在までに原稿が搬送された距離を差し引いた距離が、リアセンサ２０の検出位置からＣＩＳ１７の読取位置までの距離以下であるかを判断する（Ｓ６０３）。なお、現在までに原稿が搬送された距離は、リアセンサ２０からオン信号が入力された後に、搬送カウンタによりカウントされたステップ数から算出される。
【００９３】
ゴミ影響距離Ｄは、後述するゴミ影響判定処理／非定型（Ｓ６０１）の中で算出される距離であり、図９に示すように、ゴミの主走査位置Ｘｇと、Ｘ＝Ｘｇと直線Ｌ３との交点Ｑ１、または、Ｘ＝Ｘｇと直線Ｌ２との交点Ｑ２との距離である。つまり、ゴミ影響距離Ｄから、現在までに原稿が搬送された距離を差し引いた距離は、搬送される原稿が第２プラテンガラス４５に付着したゴミの上を通過する状況が生じるまでに要する距離（以下「残り距離」と称す）である。
【００９４】
残り距離が、リアセンサ２０の検出位置からＣＩＳ１７の読取位置までの距離以下であることは、原稿の後端の読み取りが終了する前に、搬送される原稿が第２プラテンガラス４５に付着したゴミの上を通過する状況が生じることを示す。つまり、Ｓ６０３の判断は、搬送される原稿が第２プラテンガラス４５に付着したゴミの上を通過する状況の発生、つまり、原稿がゴミの影響を受けることが確定したかを判断するものである。
【００９５】
ゴミ影響距離Ｄから、現在までに原稿が搬送された距離を差し引いた距離、すなわち、残り距離が、リアセンサ２０の検出位置からＣＩＳ１７の読取位置までの距離以下であると、ＣＰＵ１１が判断した場合（Ｓ６０３：Ｙｅｓ）、原稿がゴミの影響を受けることが確定したことを示す。よって、かかる場合、ＣＰＵ１１は、エラーを報知し（Ｓ６０９）、ＣＰＵ１１は、ＣＩＳ１７による原稿の読み取りを終了する（Ｓ６０５）。
【００９６】
残り距離が、リアセンサ２０の検出位置からＣＩＳ１７の読取位置までの距離以下でないと、ＣＰＵ１１が判断した場合（Ｓ６０３：Ｎｏ）、ＣＰＵ１１は、ＣＰＵ１１は、リアセンサ２０からオフ信号が入力された後、原稿の後端がＣＩＳ１７の読取位置まで搬送されたかを判断する（Ｓ６０４）。ＣＰＵ１１は、当該判断をＳ６０８と同様に行う。ＣＰＵ１１がＳ６０４の判断を肯定しない場合（Ｓ６０４：Ｎｏ）、ＣＰＵ１１は、Ｓ６０４の判断を実行する。一方、ＣＰＵ１１がＳ６０４の判断を肯定した場合（Ｓ６０４：Ｙｅｓ）、搬送中の原稿の読み取りが終了したことを示す。よって、かかる場合、ＣＰＵ１１は、ＣＩＳ１７による原稿の読み取りを終了する（Ｓ６０５）。
【００９７】
Ｓ６０２〜Ｓ６０４の処理によれば、ゴミ影響判定処理／非定型（Ｓ６０１）において、搬送中の原稿がゴミの影響を受ける可能性があると判定された場合、原稿の搬送を継続しながら、原稿がゴミの影響を受けることが確定したことを条件として、読み取りを中止する。一方、原稿がゴミの影響を受けることが確定されなければ、最後まで原稿の読み取りが実行される。
【００９８】
上記非定型原稿処理によれば、ゴミ影響距離Ｄを用いて、原稿を搬送しながら随時実行されるＳ６０３の判断は、原稿の先端から所定長さ分のエッジ画像を基づいて行われる、ゴミ影響判定処理／非定型（Ｓ６０１）において、搬送中の原稿がゴミの影響を受ける可能性があると判定された場合に限って実行される。よって、Ｓ６０３の処理に先立ち、ゴミ影響判定処理／非定型（Ｓ６０１）を行うことにより、搬送中の非定型原稿とゴミ位置（Ｘｇ，Ｙｇ）との位置関係によっては、Ｓ６０３の処理を省くことができるので、その分、処理負荷を軽減できる。
【００９９】
図７は、上述したゴミ影響判定処理／非定型（Ｓ６０１）を示すフローチャートである。ＣＰＵ１１は、ＲＡＭ１３に記憶されるゴミ位置の座標（Ｘｇ，Ｙｇ）のうち、主走査位置Ｘｇが、Ｘｕｌ≦Ｘｇ≦Ｘｕｒを満たすかを判断する（Ｓ７０１）。つまり、Ｓ７０１では、ゴミの主走査位置Ｘｇが、図９に示す主操作方向の範囲Ｗ１の範囲内に位置するかの判断が行われる。なお、ＲＡＭ１３に複数のゴミ位置の座標が記憶されている場合、ＣＰＵ１１は、各ゴミ位置の主走査位置ＸｇについてＳ７０１の判断を実行する。
【０１００】
ＣＰＵ１１がＳ７０１の判断を肯定する場合、すなわち、Ｘｕｌ≦Ｘｇ≦Ｘｕｒが満たされる場合（Ｓ７０１：Ｙｅｓ）、ゴミの主走査位置Ｘｇが範囲Ｗ１の範囲内に位置することを示す。かかる場合、どのような斜行角度Ａの原稿であっても、搬送される原稿が第２プラテンガラス４５に付着したゴミの上を通過する状況が生じるので、ＣＰＵ１１は、搬送中の原稿がゴミの影響を受けると判定し（Ｓ７０２）、本処理を終了する。ＲＡＭ１３に複数のゴミ位置の座標が記憶されている場合、少なくも１つのゴミ位置について、Ｘｕｌ≦Ｘｇ≦Ｘｕｒが満たされる場合に、ＣＰＵ１１は、Ｓ７０１の判断を肯定する。
【０１０１】
一方、ＣＰＵ１１がＳ７０１の判断を否定する場合、すなわち、Ｘｕｌ≦Ｘｇ≦Ｘｌｒｈが満たされない場合（Ｓ７０２：Ｎｏ）、ＣＰＵ１１は、斜行角度Ａが０°であるかを判断する（Ｓ７０３）。ＣＰＵ１１が斜行角度Ａ＝０°であると判断した場合（Ｓ７０３：Ｙｅｓ）、搬送される原稿が第２プラテンガラス４５に付着したゴミの上を通過する状況が生じないことを示す。よって、かかる場合、ＣＰＵ１１は、搬送中の原稿がゴミの影響を受けないと判定し（Ｓ７０６）、本処理を終了する。
【０１０２】
ＣＰＵ１１が、斜行角度Ａが０°でないと判断した場合（Ｓ７０３：Ｎｏ）、斜行角度Ａが０より大きいかを判断する（Ｓ７０４）。ＣＰＵ１１が斜行角度Ａ＞０°であると判断した場合（Ｓ７０４：Ｙｅｓ）、ＣＰＵ１１は、主走査位置Ｘｇが、Ｘｇ＜Ｘｕｌを満たすかを判断する（Ｓ７０５）。つまり、Ｓ７０３では、ゴミの主走査位置Ｘｇが、図９の上段に示す主操作方向の範囲Ｗ２ａの範囲内に位置するかの判断が行われる。なお、ＲＡＭ１３に複数のゴミ位置の座標が記憶されている場合、ＣＰＵ１１は、各ゴミ位置の主走査位置ＸｇについてＳ７０５の判断を実行する。
【０１０３】
ＣＰＵ１１がＳ７０５の判断を肯定する場合、すなわち、Ｘｇ＜Ｘｕｌが満たされる場合（Ｓ７０５：Ｙｅｓ）、ゴミの主走査位置Ｘｇが範囲Ｗ２ａの範囲内に位置することを示す。かかる場合、搬送される原稿が第２プラテンガラス４５に付着したゴミの上を通過する状況が生じないので、ＣＰＵ１１は、搬送中の原稿がゴミの影響を受けないと判定し（Ｓ７０６）、本処理を終了する。ＲＡＭ１３に複数のゴミ位置の座標が記憶されている場合、全てのゴミ位置について、Ｘｇ＜Ｘｌｒｈが満たされる場合に、ＣＰＵ１１は、Ｓ７０５の判断を肯定する。
【０１０４】
一方、ＣＰＵ１１がＳ７０５の判断を否定する場合、すなわち、Ｘｇ＜Ｘｕｌが満たされない場合（Ｓ７０５：Ｎｏ）、ゴミの主走査位置Ｘｇが、図９の上段に示す主操作方向の範囲Ｗ３ａの範囲内に位置することを示す。かかる場合、搬送される原稿が第２プラテンガラス４５に付着したゴミの上を通過する可能性があるので、ＣＰＵ１１は、図９の上段に示すように、原稿における右辺の直線式Ｌ３と、Ｘ＝Ｘｇとの交点Ｑ１の座標を算出する（Ｓ７０８）。
【０１０５】
ＣＰＵ１１は、ゴミ影響距離Ｄを算出する（Ｓ７０８）。ゴミ影響距離Ｄは、図９に示すように、ゴミ位置と交点Ｑ１との距離である。ＣＰＵ１１は、ゴミ影響距離Ｄを、ゴミ位置の座標（Ｘｇ，Ｙｇ）と、Ｓ７０８にて算出した交点Ｑ１の座標とから算出する。ＣＰＵ１１は、搬送中の原稿がゴミの影響を受ける可能性があると判定し（Ｓ７０９）、本処理を終了する。
【０１０６】
Ｓ７０４において、ＣＰＵ１１が斜行角度Ａ＞０°でないと判断した場合（Ｓ７０４：Ｎｏ）、すなわち、斜行角度Ａ＜０°である場合、ＣＰＵ１１は、主走査位置Ｘｇが、Ｘｕｒ＜Ｘｇを満たすかを判断する（Ｓ７１１）。つまり、Ｓ７１１では、ゴミの主走査位置Ｘｇが、図９の下段に示す主操作方向の範囲Ｗ２ｂの範囲内に位置するかの判断が行われる。なお、ＲＡＭ１３に複数のゴミ位置の座標が記憶されている場合、ＣＰＵ１１は、各ゴミ位置の主走査位置ＸｇについてＳ７１１の判断を実行する。
【０１０７】
ＣＰＵ１１がＳ７１１の判断を肯定する場合、すなわち、Ｘｕｒ＜Ｘｇが満たされる場合（Ｓ７１１：Ｙｅｓ）、ゴミの主走査位置Ｘｇが範囲Ｗ２ｂの範囲内に位置することを示す。かかる場合、搬送される原稿が第２プラテンガラス４５に付着したゴミの上を通過する状況が生じないので、ＣＰＵ１１は、搬送中の原稿がゴミの影響を受けないと判定し（Ｓ７１２）、本処理を終了する。ＲＡＭ１３に複数のゴミ位置の座標が記憶されている場合、全てのゴミ位置について、Ｘｕｒ＜Ｘｇが満たされる場合に、ＣＰＵ１１は、Ｓ７１２の判断を肯定する。
【０１０８】
一方、ＣＰＵ１１がＳ７１１の判断を否定する場合、すなわち、Ｘｕｒ＜Ｘｇが満たされない場合（Ｓ７１１：Ｎｏ）、ゴミの主走査位置Ｘｇが、図９の下段に示す主操作方向の範囲Ｗ３ｂの範囲内に位置することを示す。かかる場合、搬送される原稿が第２プラテンガラス４５に付着したゴミの上を通過する可能性があるので、ＣＰＵ１１は、図９の下段に示すように、原稿における右辺の直線式Ｌ２と、Ｘ＝Ｘｇとの交点Ｑ２の座標を算出する（Ｓ７１３）。
【０１０９】
ＣＰＵ１１は、ゴミ影響距離Ｄを算出する（Ｓ７１４）。ゴミ影響距離Ｄは、図９に示すように、ゴミ位置と交点Ｑ２との距離である。ＣＰＵ１１は、ゴミ影響距離Ｄを、ゴミ位置の座標（Ｘｇ，Ｙｇ）と、Ｓ７１３にて算出した交点Ｑ２の座標とから算出する。ＣＰＵ１１は、搬送中の原稿がゴミの影響を受ける可能性があると判定し（Ｓ７１５）、本処理を終了する。
【０１１０】
本実施形態によれば、原稿の読み取りに先立って行った基準板６０の読み取りによりゴミ位置の座標（Ｘｇ，Ｙｇ）を取得し、原稿のエッジ画像に基づいて、搬送される原稿が第２プラテンガラス４５に付着したゴミの上を通過するか否かが判断される。そして、搬送される原稿がゴミの上を通過するか否かに応じて、原稿の読み取りが制御される。具体的に、搬送される原稿がゴミの上を通過すると判断された場合、原稿の読み取りが中止されるので、ゴミの読み取りによる異常画像を含む画像、つまり、筋状に延びる黒筋を含む画像の出力を抑制できる。また、原稿がゴミの影響を受けると判断された場合には、エラーが報知されるので、ユーザに、第２プラテンガラス４５上のゴミや傷など、異常画像を発生させる可能性の存在を報せることができる。これにより、ユーザは、第２プラテンガラス４５の清掃など、上記可能性を解消するために必要な適宜の対応を取ることができる。
【０１１１】
特に、本実施形態では、原稿サイズや原稿の斜行角度を考慮して、搬送される原稿がゴミの上を通過するか否かが判断されるので、どのような原稿であっても、どのように搬送される場合であっても、原稿の読み取りを適切に制御できる。
【０１１２】
本実施形態によれば、スキャナ１０が利用可能な定型原稿のサイズに関する情報が、定型サイズテーブル１４ａに準備されているので、原稿の先端から所定長さ分のエッジ画像から、読み取り対象の原稿が定型原稿であるか非定型原稿であるかを判断できる。よって、読み取り対象の原稿が定型原稿であるか否かに応じた方法で、搬送される原稿がゴミの上を通過するか否かの判断を行うことができる。定型原稿であると判断された場合には、原稿サイズに応じて取得された原稿の後端左右角の座標に基づいて、搬送される原稿がゴミの上を通過するか否かの判断を行うことができるので、当該判断を、非定型原稿の場合より早期に行うことができる。また、非定型原稿のように原稿の読み取りを行いながらの判断を行う必要もないので、当該判断に係る処理負荷も非定型原稿より低く抑えることができる。
【０１１３】
読み取り対象の原稿が定型原稿である場合、主走査長Ｘｓｉｚｅの長さが一致するが、原稿が縦置きであるか横置きであるかで異なる２種類の原稿サイズを各々考慮して、搬送される原稿がゴミの上を通過するか否かの判断を行うので、搬送される原稿がゴミの上を通過するか否かの判断を、原稿の置き方に応じて適切に判断できる。
【０１１４】
上記実施形態において、スキャナ１０が、画像読取装置の一例である。制御プログラム１２ａが、画像読取プログラムの一例である。ＣＰＵ１１が、制御部の一例である。ＣＩＳ１７が、読取部の一例である。ＲＡＭ１３，ＥＥＰＲＯＭ１４が、記憶部の一例である。ＡＤＦ１９が、原稿搬送部の一例である。読取位置移動部１８が、移動部の一例である。リアセンサ２０が、検出部の一例である。主走査長１４ａ２，副走査長１４ａ３が、原稿サイズ情報の一例である。
【０１１５】
Ｓ４０４の処理を実行するＣＰＵ１１が、検出手段の一例である。Ｓ４０８の処理を実行するＣＰＵ１１が、位置記憶手段の一例である。Ｓ３０３の処理を実行するＣＰＵ１１が、移動開始手段の一例である。Ｓ３０５の処理を実行するＣＰＵ１１が、原稿読取手段の一例である。Ｓ５２２，Ｓ５２４，Ｓ５４２，Ｓ５４４，Ｓ６０３，Ｓ７０１の処理を実行するＣＰＵ１１が、第１判断手段の一例である。Ｓ３１１，Ｓ３１５，Ｓ６０２，Ｓ６０３の処理を実行するＣＰＵ１１が、制御手段の一例である。原稿先端解析処理（Ｓ３０６）を実行するＣＰＵ１１が、先端情報取得手段の一例である。Ｓ５０１の処理を実行するＣＰＵ１１が、サイズ情報取得手段の一例である。Ｓ３１２，Ｓ３１３の処理を実行するＣＰＵ１１が、第２判断手段の一例である。Ｓ５２２，Ｓ５２４の処理を実行するＣＰＵ１１が、横置き判断手段の一例である。Ｓ５４２，Ｓ５４４の処理を実行するＣＰＵ１１が、縦置き判断手段の一例である。Ｓ７０７，Ｓ７０８，Ｓ７１３，Ｓ７１４の処理を実行するＣＰＵ１１が、算出手段の一例である。Ｓ７０５，Ｓ７１１の処理を実行するＣＰＵ１１が、第３判断手段の一例である。Ｓ３０７の処理を実行するＣＰＵ１１が、第４判断手段の一例である。
【０１１６】
以上、実施形態に基づき本発明を説明したが、本発明は上述した実施形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内で種々の改良変更が可能であることは容易に推察できるものである。
【０１１７】
例えば、ＣＩＳ１７を移動させながら第１プラテンガラス４４上に固定的に載置される原稿を読み取る場合についても、ＣＩＳ１７を構成する受光素子に付いたゴミや傷がある場合に、原稿の斜行角度に応じて、ゴミや傷のある受光素子を用いて原稿を読み取る状況、すなわち、ＣＩＳ１７が第２プラテンガラス４５上のゴミを原稿に重ねて読み取る状況が生じることがある。よって、上記実施形態では、ＡＤＦ１９により搬送される原稿を副走査位置が固定されたＣＩＳ１７により読み取る場合に、本発明を適用したが、ＣＩＳ１７を移動させながら第１プラテンガラス４４上に固定的に載置される原稿を読み取る場合であっても本発明を適用できる。後者の場合、ＣＩＳ１７を構成する受光素子に付いたゴミや傷が「異常画像を発生させる可能性」となる。
【０１１８】
よって、本発明の画像読取装置として、ＡＤＦ１９を有するスキャナ１０を例示したが、ＡＤＦを有さないフラットベッドスキャナであっても、本発明の画像処理装置として採用できる。また、原稿の読み取りを実行可能な装置であれば、スキャナ１０に限らず、多機能周辺装置など種々の装置を採用できる。
【０１１９】
上記実施形態では、原稿がゴミの影響を受けると判断された場合、エラーを報知するともに、原稿の読み取りを中止する構成を、特許請求の範囲に記載される「エラー処理」の一例として例示したが、当該エラー処理は、エラーの報知または読み取り中止のいずれか一方であってもよい。
【０１２０】
あるいは、原稿がゴミの影響を受けると判断された後も読み取りを通常通りに最後まで完了させ、当該読み取りにより得られた画像を、ＲＡＭ１３に記憶されるゴミ位置の座標（Ｘｇ，Ｙｇ）における主走査位置Ｘｇに応じて補正を施す処理を、エラー処理とする構成であってもよい。これにより、異常画像を含む画像データが得られたとしても、当該異常画像部分が補正された画像データを得ることができる。
【０１２１】
あるいは、原稿がゴミの影響を受けると判断された場合、原稿の読み取りを停止した後、読取位置移動部１８を用いて、ＣＩＳ１７の読取位置を、ＲＡＭ１３に記憶されるゴミ位置の座標（Ｘｇ，Ｙｇ）における副走査位置Ｙｇの位置を避けた副走査位置に移動させる処理を、エラー処理とする構成であってもよい。これにより、搬送される原稿が第２プラテンガラス４５に付着したゴミの上を通過する状況を回避できる。なお、上記「原稿の読み取りを停止する」は、上記実施形態のように、原稿がゴミの影響を受けると判断されたことに応じて読み取りを中止する場合と、原稿がゴミの影響を受けると判断された後も読み取りを通常通りに最後まで完了させて終了する場合との両方を含む。
【０１２２】
上記実施形態では、Ｓ４０８にて、ゴミ位置の座標（Ｘｇ，Ｙｇ）がＲＡＭ１３に記憶される構成としたが、主走査位置Ｘｇのみを記憶する構成としてもよい。また、ゴミ位置の座標（Ｘｇ，Ｙｇ）の記憶先をＥＥＲＯＭ１４としてもよい。本変形例では、基準板６０の読み取りに基づくゴミ位置の座標（Ｘｇ，Ｙｇ）の記憶を、読み取りの開始時に限らず、読み取りの終了後や、定期的に行うこともできる。ＥＥＲＯＭ１４にゴミ位置の座標（Ｘｇ，Ｙｇ）が記憶される場合、第２プラテンガラス４５を清掃した後など、異常画像を発生させる可能性が解消されたタイミングで、適宜消去する構成としてもよい。
【０１２３】
上記実施形態では、定型原稿テーブル１４ａにおいて、原稿サイズ１４ａ１を、規格サイズが同じであっても、原稿が縦置きか横置きかに応じて区別する構成としたが、原稿の置き方を区別しない構成としてもよい。つまり、１の規格サイズに対する１の原稿サイズ１４ａ１に対し、当該１の規格サイズの長辺と短辺とを関連付けて記憶する構成としてもよい。本変形例では、Ｓ４２５にて取得された主走査長Ｘｓｉｚｅを長辺または短辺とする原稿サイズ１４ａ１を特定し、主走査長Ｘｓｉｚｅに相当する辺が長辺または短辺のいずれであるかに応じて、縦置きまたは横置きを特定する。具体的に、主走査長Ｘｓｉｚｅに相当する辺が長辺であれば、横置きと特定できる。一方、主走査長Ｘｓｉｚｅに相当する辺が短辺であれば、縦置きと特定できる。あるいは、ユーザが原稿を縦置きまたは横置きのいずれを利用するかの指定を入力したことに応じて、縦置きまたは横置きを特定する構成としてもよい。
【０１２４】
上記実施形態では、原稿のエッジ画像から、原稿の上辺、右辺、および左辺の直線式を算出し、上辺の直線式と右辺または左辺の直線式との交点を、左上角座標および右上角座標として算出した。これに代えて、エッジ画像から左上角および右上角の位置を特定し、その位置の座標を左上角座標および右上角座標として取得してもよい。
【０１２５】
上記実施形態では、Ｓ５２１およびＳ５４１にて、ＣＰＵ１１が、斜行角度Ａ≧０°であるかの判断を行う構成としたが、斜行角度Ａ≦０°の判断を行う構成としてもよい。つまり、斜行角度Ａ＝０°の場合、Ｓ５２２またはＳ５２４のいずれか、あるいは、Ｓ５４２またはＳ５４４のいずれかにより、原稿がゴミの影響を受けるか否かを判断できる。
【０１２６】
上記実施形態では、定型原稿テーブル１４ａに、主走査長１４ａ２が主走査長Ｘｓｉｚｅに一致する原稿サイズ１４ａ１がある場合には、定型原稿に対する処理として、Ｓ３０８〜Ｓ３２２の処理を行い、該当する原稿サイズ１４ａ１がない場合には、非定型原稿に対する処理として、非定型原稿処理（Ｓ３２０）を実行する構成とした。非定型原稿処理（Ｓ３２０）は、定型原稿に対しても利用できる。よって、Ｓ３０６の処理後、Ｓ３０７〜Ｓ３２２を行うことなく、非定型原稿処理（Ｓ３２０）を実行する構成としてもよい。
【０１２７】
上記実施形態では、ＣＰＵ１１が、図３〜図７に記載される各処理を実行する構成として説明したが、これら各図に記載される各処理を、複数のＣＰＵが協同的に実行する構成としてもよい。また、ＡＳＩＣなどのＩＣが、単独で、または、複数によって協働的に、上記各図に記載される各処理を実行する構成してもよい。また、ＣＰＵ１１とＡＳＩＣなどのＩＣとが協同して、上記各図に記載される各処理を実行する構成してもよい。また、図３〜図７に示す各処理のうち、一部の処理を、特許請求の範囲における独立請求項から逸脱しない範囲で、省略または変更してもよい。また、上記実施形態により説明した各特徴や、上述した各変形例を適宜組み合わせて実施する構成としてもよい。
【符号の説明】
【０１２８】
１０：スキャナ，１２ａ：制御プログラム
【図１】
0006405797.tif 000002
【図２】
0006405797.tif 000003
【図３】
0006405797.tif 000004
【図４】
0006405797.tif 000005
【図５】
0006405797.tif 000006
【図６】
0006405797.tif 000007
【図７】
0006405797.tif 000008
【図８】
0006405797.tif 000009
【図９】
0006405797.tif 000010