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