(57)【特許請求の範囲】
【請求項１】
原稿を主走査方向に光学的に読み取り、読取画像を表す前記主走査方向に１ライン分の画素値を含むライン画像データを生成する読取ユニットと、
前記原稿を副走査方向の下流に搬送する搬送ユニットと、
前記読取ユニットによる前記原稿の読取地点より前記副走査方向の上流に設けられて、前記原稿の通過を検知する検知ユニットと、
前記検知ユニットによる検知結果に基づき、原稿エッジの検出に用いる前記ライン画像データの一群を決定する決定ユニットと、
前記決定ユニットにより決定された前記ライン画像データの一群に対するエッジ検出処理により、前記ライン画像データの一群に対応するエッジ画像データの一群を生成するエッジ画像生成ユニットと、
前記エッジ画像データの一群における先頭ラインのエッジ画像データにおいて、前記原稿エッジを表す画素を検出した場合には、前記エッジ画像データの一群に対しマスク領域を設定するマスク設定ユニットと、
前記エッジ画像データの一群における各画素を、前記先頭ラインの次ラインからライン順に参照することにより、前記原稿エッジを表す画素の位置座標を前記マスク領域外において検出するエッジ位置検出ユニットと、
を備え、
前記マスク設定ユニットは、前記先頭ラインのエッジ画像データにおいて前記原稿エッジを表す画素を検出した場合には、前記先頭ラインを基準に、前記エッジ画像データの一群における前記原稿エッジの検出が途切れるラインまでの領域をマスク領域に設定し、前記先頭ラインにおいて前記原稿エッジを表す画素を、前記先頭ラインにおける各画素を順に参照して検出することにより、前記マスク領域を、前記副走査方向に延びる所定基準線を境界として、前記エッジ画像データの一群における前記所定基準線から前記先頭ラインにおいて前記原稿エッジを表す画素を検出した側の区画で設定することを特徴とする画像読取装置。
【請求項２】
前記原稿エッジを表す画素の位置座標として、前記エッジ画像データの一群における前記主走査方向の各位置に対し、前記原稿エッジの前記副走査方向の位置を一つ記憶するための記憶ユニットを備え、
前記エッジ位置検出ユニットは、前記エッジ画像データの一群における各画素をライン順に参照することにより、前記主走査方向の各位置で現れた前記原稿エッジを表す画素についての前記副走査方向の位置を前記記憶ユニットに登録して、当該登録が完了した前記主走査方向の位置における前記位置座標の検出動作を完了し、
前記マスク領域は、前記記憶ユニットへの前記登録が禁止された領域であることを特徴とする請求項１記載の画像読取装置。
【請求項３】
前記エッジ位置検出ユニットは、
前記登録が完了したか否かを表す登録完了フラグを、前記主走査方向の各位置に対して記憶するフラグ記憶ユニットと、
前記エッジ画像データの一群における参照先の画素が前記原稿エッジを表す画素である場合に、この画素に対応する前記主走査方向の位置の前記登録完了フラグがセットされているか否かを判定する判定ユニットと、
前記判定ユニットにより前記登録完了フラグがセットされていないと判定された場合であって、この画素が前記マスク領域外である場合に、前記原稿エッジの前記副走査方向の位置を前記記憶ユニットに登録する登録ユニットと、
前記登録ユニットによる前記登録が完了する前記原稿エッジに対応する前記主走査方向の位置の前記登録完了フラグをセットするフラグ設定ユニットと、
を備えることを特徴とする請求項２記載の画像読取装置。
【請求項４】
前記マスク設定ユニットは、前記先頭ラインを基準に、前記区画において前記原稿エッジの検出が途切れるラインまでの領域を前記マスク領域に設定すること
を特徴とする請求項１〜請求項３のいずれか一項記載の画像読取装置。
【請求項５】
前記搬送ユニットは、前記読取地点より前記副走査方向の上流に配置されたローラの回転により、複数の原稿を順に前記副走査方向下流に搬送するように構成され、先行する原稿と後続する原稿との搬送間隔を、前記主走査方向の特定点で一定間隔に制御するように、前記複数の原稿を搬送し、
前記所定基準線は、前記特定点を通過する位置に定められること
を特徴とする請求項１〜請求項４のいずれか一項記載の画像読取装置。
【請求項６】
前記原稿エッジを表す画素は、前記主走査方向において連続する所定個の画素がエッジを表す画素値を有する画素の夫々であることを特徴とする請求項１〜請求項５のいずれか一項記載の画像読取装置。
【請求項７】
原稿を主走査方向に光学的に読み取り、読取画像を表す前記主走査方向に１ライン分の画素値を含むライン画像データを生成する読取ユニットと、
前記原稿を副走査方向の下流に搬送する搬送ユニットと、
前記読取ユニットによる前記原稿の読取地点より前記副走査方向の上流に設けられて、前記原稿の通過を検知する検知ユニットと、
前記検知ユニットによる検知結果に基づき、原稿エッジの検出に用いる前記ライン画像データの一群を決定する決定ユニットと、
前記決定ユニットにより決定された前記ライン画像データの一群に対する画像処理を実行することによって、前記ライン画像データの夫々に対する前記画像処理後の画像データとして、原稿エッジを表すエッジ画像データを生成するエッジ画像生成ユニットと、
前記エッジ画像生成ユニットによって生成される前記先頭ラインの前記エッジ画像データを参照し、前記先頭ラインの前記エッジ画像データにおいて原稿エッジを検出した場合には、その後、前記先頭ラインに続く各ラインの前記エッジ画像データをライン順に参照し、前記原稿エッジの検出が途切れるまで、各ラインに対応する後端検出信号を生成する後端検出信号生成ユニットと、
前記エッジ画像生成ユニットによって生成される前記先頭ラインに続く各ラインの前記エッジ画像データを、ライン順に参照し、前記参照した前記エッジ画像データにおいて原稿エッジを検出した場合には、当該検出した原稿エッジを表す画素の位置座標を、原稿先端の位置座標として記憶ユニットに登録する参照登録ユニットと、
前記エッジ画像データの一群における前記後端検出信号が生成されたラインに対応する領域では、前記参照登録ユニットによる前記原稿先端の位置座標の前記記憶ユニットへの登録を禁止する禁止ユニットと、
を備えることを特徴とする画像読取装置。
【請求項８】
前記記憶ユニットは、前記原稿先端の位置座標として、前記エッジ画像データの一群における前記主走査方向の各位置に対し、前記原稿エッジの前記副走査方向の位置を一つ記憶するように構成され、
前記参照登録ユニットは、前記原稿エッジが検出された画素の前記副走査方向の位置を、この画素の前記主走査方向の位置に対応する前記記憶ユニット内の記憶領域に書き込むことにより、前記原稿先端の位置座標を前記記憶ユニットに登録すること
を特徴とする請求項７記載の画像読取装置。
【請求項９】
前記登録が完了したか否かを表す登録完了フラグを、前記主走査方向の各位置に対して記憶するフラグ記憶ユニットと、
前記参照登録ユニットの動作により前記原稿先端の位置座標が登録された前記画素の前記主走査方向の位置に対応する前記登録完了フラグをセットするフラグ設定ユニットと、
を備え、
前記参照登録ユニットは、前記登録完了フラグがセットされた前記主走査方向の位置で検出された前記原稿エッジに関しては、この位置座標を登録する動作を実行しないこと
を特徴とする請求項７又は請求項８記載の画像読取装置。
【請求項１０】
前記禁止ユニットは、前記エッジ画像データの一群における、前記副走査方向に延びる所定基準線を境界とする、前記先頭ラインにおいて原稿エッジを表す画素が検出された側の区画であって、前記後端検出信号が生成されたラインに対応する領域において、前記参照登録ユニットによる前記原稿先端の位置座標の前記記憶ユニットへの登録を禁止すること
を特徴とする請求項７〜請求項９のいずれか一項記載の画像読取装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像読取装置に関する。
【背景技術】
【０００２】
原稿の自動送り機能を有した画像読取装置において、画像読取部が得た画像データに対するエッジ検出を行い、このエッジ検出結果に基づいて、原稿の重送有無を判断する画像読取装置が知られている（特許文献１参照）。この画像読取装置では、処理負荷を低減するために、１ページ分の画像データの原稿送り方向における上端から所定画素数の領域のみをエッジ検出処理の対象とする。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−５８３７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
画像読取部により生成された画像データに対してエッジ検出処理を行えば、原稿の先端エッジを検出することができる。この検出結果は、原稿サイズの推定や斜行補正等に役立てることができる。更に、エッジ検出対象を、原稿先端が写っていると推定される一部の画像データに限定すれば、エッジ検出に係る処理負荷が低減されることが期待される。
【０００５】
しかしながら、原稿の連続搬送を行う場合には、先行する原稿の後端エッジと、後続の原稿の先端エッジとが近い位置にある。また、原稿搬送に際しては、原稿が傾いた状態で搬送される斜行が発生する可能性がある。このために、原稿の後端エッジと後続の原稿の先端エッジとの位置関係に、斜行に伴う不確定な要素がある。その結果、上記一部の画像データに基づいて、原稿の先端エッジを検出する場合には、先行する原稿の後端エッジを、後続の原稿の先端エッジと間違えて検出してしまう可能性がある。
【０００６】
本発明は、原稿の先端エッジを高精度に検出可能な画像読取装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の一局面の画像読取装置は、読取ユニットと、搬送ユニットと、検知ユニットと、決定ユニットと、エッジ画像生成ユニットと、マスク設定ユニットと、エッジ位置検出ユニットとを備える。
【０００８】
読取ユニットは、原稿を主走査方向に光学的に読み取り、読取画像を表す主走査方向に１ライン分の画素値を含むライン画像データを生成する。搬送ユニットは、原稿を副走査方向の下流に搬送する。検知ユニットは、読取ユニットによる原稿の読取地点より副走査方向の上流に設けられて、原稿の通過を検知する。
【０００９】
決定ユニットは、検知ユニットによる検知結果に基づき、原稿エッジの検出に用いるライン画像データの一群を決定する。エッジ画像生成ユニットは、決定ユニットにより決定されたライン画像データの一群に対するエッジ検出処理により、これらライン画像データの一群に対応するエッジ画像データの一群を生成する。
【００１０】
マスク設定ユニットは、エッジ画像データの一群における先頭ラインのエッジ画像データにおいて、原稿エッジを表す画素を検出した場合には、上記エッジ画像データの一群に対しマスク領域を設定する。具体的に、マスク設定ユニットは、先頭ラインを基準に、上記エッジ画像データの一群における原稿エッジの検出が途切れるラインまでの領域をマスク領域に設定する。
【００１１】
エッジ位置検出ユニットは、このエッジ画像データの一群における各画素を、先頭ラインの次ラインからライン順に参照することにより、原稿エッジを表す画素の位置座標をマスク領域外において検出する。
【００１２】
決定ユニットにより決定される上記ライン画像データの一群は、原稿の先端エッジが通常写る上記ライン画像データの一群に決定されるが、そこには、先行する原稿の後端エッジが含まれる可能性がある。特に斜行が発生したときには、上記ライン画像データの一群に、先行する原稿の後端エッジが含まれやすい。
【００１３】
先行する原稿と、それに続く原稿との搬送間隔が広ければ、上記ライン画像データの一群に、先行する原稿の後端エッジが含まれる可能性を抑えることができる。しかしながら、そうすると、複数の原稿を連続して読み取る際の読取速度が低下する。
【００１４】
そこで、本発明では、先頭ラインのエッジ画像データにおいて原稿エッジを表す画素を検出した場合には、上記マスク領域を設定する。先行する原稿の後端エッジがエッジ画像データの一群に写っている場合には、先頭ラインに、先行する原稿のエッジが写っているはずである。
【００１５】
一方、原稿の先端エッジが、先頭ラインに写らないようにすることは、検知ユニットによる検知結果に基づき、原稿エッジの検出に用いる上記ライン画像データの一群を決定することで、比較的容易に行うことができる。
【００１６】
従って、本発明の画像読取装置によれば、上述した構成によって、先行する原稿の後端エッジを、目的とする原稿の先端エッジと誤って検出するのを抑えて、原稿の先端エッジを高精度に検出することができる。
【００１７】
ところで、画像読取装置は、原稿エッジを表す画素の位置座標として、エッジ画像データの一群における主走査方向の各位置に対し、原稿エッジの副走査方向の位置を一つ記憶するための記憶ユニットを備えた構成にされ得る。
【００１８】
この場合、エッジ位置検出ユニットは、エッジ画像データの一群における各画素をライン順に参照することにより、主走査方向の各位置で現れた原稿エッジを表す画素についての副走査方向の位置を上記記憶ユニットに登録し、当該登録により、この登録が完了した主走査方向の位置における上記位置座標の検出動作を完了する構成にされ得る。こうした構成を採用したとき、上記マスク領域は、記憶ユニットへの登録が禁止された領域に対応する。
【００１９】
例えば、エッジ検出ユニットは、マスク領域では原稿エッジを検出した場合でも、この画素の位置座標を上記記憶ユニットに登録しないことにより、位置座標の検出動作を完了せず、この画素と主走査方向の位置が同一の別の画素であって、マスク領域外の画素に関して、原稿エッジを表す画素の位置座標を登録する構成にされ得る。
【００２０】
また、マスク設定ユニットは、先頭ラインにおける各画素を順に参照することにより原稿エッジを表す画素を検出し、原稿エッジを表す画素を検出した場合には、副走査方向に延びる所定基準線を境界として、エッジ画像データの一群における所定基準線から当該原稿エッジを表す画素を検出した側の区画でマスク領域を設定する構成にされ得る。具体的に、マスク設定ユニットは、先頭ラインを基準に、上記区画において原稿エッジの検出が途切れるラインまでの領域をマスク領域に設定する構成にされ得る。
【００２１】
通常原稿は矩形状で原稿エッジは直線的である。従って、決定ユニットにより決定された上記ライン画像データの一群に、先行する原稿の後端エッジが写る場合には、先頭ラインに写る後端エッジの位置から原稿の左右の端側に向けて、後端エッジが連続して写っていると考えられる。従って、先頭ラインにおいて検出された原稿エッジを表す画素を検出した側の区画にマスク領域を設定することにより、後端エッジが写る領域に対して適切にマスク領域を設定することができる。上記所定基準線は、例えば、原稿の主走査方向中心に対応するように定められ得る。
【００２２】
また、搬送ユニットは、複数の原稿を順に副走査方向の下流に搬送する構成にされ得る。付言すれば、搬送ユニットは、読取地点より副走査方向の上流に配置されたローラの回転により、複数の原稿を順に副走査方向下流に搬送するように構成され得る。
【００２３】
更に言えば、搬送ユニットは、先行する原稿と後続する原稿との搬送間隔を、主走査方向の特定点で、一定間隔に制御する構成にされ得る。このように搬送ユニットが搬送間隔を制御する場合、上記所定基準線は、上記特定点を通過する位置に定めることができる。
【００２４】
原稿エッジの検出に際しては、エッジ画像データにおけるエッジ点の主走査方向における連続性の有無を判断することができる。即ち、上述した原稿エッジを表す画素は、主走査方向において連続する所定個の画素がエッジを表す画素値を有する画素の夫々であり得る。
【００２５】
この他、本発明の別局面の画像読取装置は、次に説明する読取ユニットと、搬送ユニットと、検知ユニットと、決定ユニットと、エッジ画像生成ユニットと、後端検出信号生成ユニットと、参照登録ユニットと、禁止ユニットとを備える。
【００２６】
読取ユニットは、原稿を主走査方向に光学的に読み取り、読取画像を表す主走査方向に１ライン分の画素値を含むライン画像データを生成する。搬送ユニットは、原稿を副走査方向の下流に搬送する。検知ユニットは、読取ユニットによる原稿の読取地点より副走査方向の上流に設けられて、原稿の通過を検知する。決定ユニットは、検知ユニットによる検知結果に基づき、原稿エッジの検出に用いるライン画像データの一群を決定する。
【００２７】
エッジ画像生成ユニットは、決定ユニットにより決定されたライン画像データの一群に対する画像処理を実行することによって、これらライン画像データの夫々に対する画像処理後の画像データとして、原稿エッジを表すエッジ画像データを生成する。
【００２８】
後端検出信号生成ユニットは、エッジ画像生成ユニットによって生成される先頭ラインのエッジ画像データを参照し、先頭ラインのエッジ画像データにおいて原稿エッジを検出した場合には、その後、先頭ラインに続く各ラインのエッジ画像データをライン順に参照し原稿エッジの検出が途切れるまで、各ラインに対応する後端検出信号を生成する。
【００２９】
参照登録ユニットは、エッジ画像生成ユニットによって生成される先頭ラインに続く各ラインのエッジ画像データを、ライン順に参照し、参照したエッジ画像データにおいて原稿エッジを検出した場合には、当該検出した原稿エッジを表す画素の位置座標を、原稿先端の位置座標として記憶ユニットに登録する。禁止ユニットは、上記エッジ画像データの一群における後端検出信号が生成されたラインに対応する領域では、参照登録ユニットによる原稿先端の位置座標の記憶ユニットへの登録を禁止する。
【００３０】
この画像読取装置によっても、先行する原稿の後端エッジを、目的とする原稿の先端エッジと誤って検出することを抑え、原稿の先端エッジを高精度に検出及び登録することができる。
【００３１】
この画像読取装置における記憶ユニットは、原稿先端の位置座標として、エッジ画像データの一群における主走査方向の各位置に対し、原稿エッジの副走査方向の位置を一つ記憶するように構成され得る。この場合、参照登録ユニットは、原稿エッジが検出された画素の副走査方向の位置を、この画素の主走査方向の位置に対応する記憶ユニット内の記憶領域に書き込むことにより、原稿先端の位置座標を記憶ユニットに登録する構成にされ得る。
【００３２】
また、この画像読取装置は、登録が完了したか否かを表す登録完了フラグを、主走査方向の各位置に対して記憶するフラグ記憶ユニットと、参照登録ユニットの動作により原稿先端の位置座標が登録された画素の主走査方向の位置に対応する登録完了フラグをセットするフラグ設定ユニットと、を備えた構成にされ得る。参照登録ユニットは、登録完了フラグが既にセットされた主走査方向の位置で検出された原稿エッジに関しては、この位置座標を登録する動作を実行しない構成にされ得る。
【００３３】
また、上記禁止ユニットは、エッジ画像データの一群における、副走査方向に延びる所定基準線を境界とする、上記先頭ラインにおいて原稿エッジを表す画素が検出された側の区画であって、後端検出信号が生成されたラインに対応する領域において、参照登録ユニットによる原稿先端の位置座標の記憶ユニットへの登録を禁止する構成にされ得る。こうした禁止動作によれば、後端エッジが写る領域で検出された原稿エッジについての位置座標の記憶ユニットへの登録を適切に禁止することができる。
【図面の簡単な説明】
【００３４】
【図１】画像読取装置の概略断面図である。
【図２】画像読取装置の電気的構成を概略的に表すブロック図である。
【図３】図３（Ａ）は、メインユニットが実行する主搬送制御処理を表すフローチャートであり、図３（Ｂ）は、メインユニットが実行する読取設定処理を表すフローチャートである。
【図４】データ処理部の概略構成を表すブロック図である。
【図５】図５（Ａ）は、非斜行時の原稿エッジ検出領域と原稿との位置関係を表す図であり、図５（Ｂ）は、非斜行時の原稿エッジ検出領域に写る原稿エッジを太線で示す図である。
【図６】図６（Ａ）は、エッジ画像データ群の参照順を説明した図であり、図６（Ｂ）は、原稿エッジをＸＹ座標系で示す図であり、図６（Ｃ）は、ＳＲＡＭが記憶する位置に対応する原稿エッジ検出領域内の地点を太線で示す図であり、図６（Ｄ）は、主走査方向の各画素に対応する位置毎に、原稿の先端エッジの副走査方向位置を記憶するための記憶領域を備えるＳＲＡＭを示す図である。
【図７】図７（Ａ）は、斜行時の原稿エッジ検出領域と原稿との位置関係を表す図であり、図７（Ｂ）は、原稿エッジ検出領域内のマスク領域を表す図である。
【図８】原稿先端検出回路内の構成を表すブロック図である。
【図９】図９（Ａ）は、後端エッジ検出部の概略構成を表すブロック図であり、図９（Ｂ）は、マスク信号生成部の概略構成を表すブロック図であり、図９（Ｃ）は、先端エッジ検出部の概略構成を表すブロック図である。
【図１０】更新判定部の概略構成を表すブロック図である。
【発明を実施するための形態】
【００３５】
以下に本発明の実施例について、図面と共に説明する。図１に示す本実施例の画像読取装置１は、ドキュメントスキャナとして構成される。この画像読取装置１は、読取対象の原稿Ｐを原稿トレイ１０から一枚ずつ分離して、ラインセンサ２０による読取地点に搬送し、ラインセンサ２０を用いて原稿Ｐを読み取る。この画像読取装置１は、外部装置５（図２参照）からの要求に従って上述の処理を行い、原稿Ｐの読取画像を表す読取画像データを外部装置５に提供する。
【００３６】
画像読取装置１は、原稿Ｐを搬送するための機構として、分離機構３０と、搬送機構４０とを備える。分離機構３０は、原稿トレイ１０の下端に、分離ローラ３１を備える。分離ローラ３１は、回転により、原稿トレイ１０に積層された原稿Ｐの内、分離ローラ３１に接触する最下層の原稿Ｐを一枚分離し、これを下流に搬送する。分離機構３０には、原稿Ｐを適切に一枚ずつ分離するための周知の構造を設けることができる。
【００３７】
分離機構３０の下流に配置される搬送機構４０は、搬送ローラ４１及び従動ローラ４２から構成される第一のローラ対と、排紙ローラ４５及び従動ローラ４６から構成される第二のローラ対と、を備える。これらのローラ対は、原稿Ｐの搬送経路上に設けられ、原稿Ｐを回転により下流に搬送する。
【００３８】
原稿Ｐは、搬送ローラ４１と従動ローラ４２との間、及び／又は、排紙ローラ４５と従動ローラ４６との間に挟持された状態で、搬送ローラ４１及び／又は排紙ローラ４５の回転により、排紙トレイ５０へと搬送される。
【００３９】
ラインセンサ２０は、周知のＣＩＳイメージセンサとして構成される。ラインセンサ２０は、搬送ローラ４１と排紙ローラ４５との間の原稿Ｐの搬送経路に設けられる。ラインセンサ２０は、ＡＳＩＣ８０（図２参照）により制御されて、原稿Ｐを主走査方向に光学的に読み取り、読取画像を表す主走査方向に１ライン分の画素値を含むライン画像データを生成する。ここで言う主走査方向は、搬送ローラ４１の軸方向であり、図１における紙面法線方向に対応する。副走査方向は、主走査方向に垂直な方向であって、原稿Ｐの搬送方向に対応する。本明細書では、原稿トレイ１０から排紙トレイ５０への原稿Ｐの流れを基準に用語「上流」及び「下流」を用いる。
【００４０】
詳述すると、画像読取装置１は、図２に示すように、ラインセンサ２０と、分離機構３０と、搬送機構４０と、駆動デバイス６０と、動力伝達機構６５と、原稿センサ７０と、ＡＳＩＣ８０と、メインユニット９０と、通信インタフェース９９と、を備える。
【００４１】
駆動デバイス６０は、動力伝達機構６５を介して、分離ローラ３１、搬送ローラ４１及び排紙ローラ４５を回転駆動する。動力伝達機構６５は、駆動デバイス６０からの動力を分離ローラ３１、搬送ローラ４１及び排紙ローラ４５に伝達する。
【００４２】
駆動デバイス６０は、一つ以上の電動モータを備える。駆動デバイス６０は、例えば、分離ローラ３１、搬送ローラ４１及び排紙ローラ４５に対して個別のモータを備える。別例として、駆動デバイス６０は、分離ローラ３１、搬送ローラ４１及び排紙ローラ４５に共通する一つのモータを備える。この他、駆動デバイス６０は、分離ローラ３１を回転駆動するための一つのモータと、搬送ローラ４１及び排紙ローラ４５を回転駆動するための一つのモータと、を備えた構成にされ得る。
【００４３】
分離ローラ３１、搬送ローラ４１及び排紙ローラ４５は、駆動デバイス６０からの動力を、動力伝達機構６５を介して受けて、互いに独立して又は連動して回転する。
駆動デバイス６０は、上記電動モータとして直流モータを備える場合、分離ローラ３１、搬送ローラ４１及び排紙ローラ４５の回転量を検出するための一つ以上のロータリエンコーダを備えた構成にされ得る。ロータリエンコーダからの出力信号は、回転位置信号として、ＡＳＩＣ８０に入力される。この回転位置信号は、ＡＳＩＣ８０において分離ローラ３１、搬送ローラ４１及び排紙ローラ４５の回転量を特定するために用いられる。
【００４４】
原稿センサ７０は、ラインセンサ２０より上流における原稿Ｐの搬送経路上に設けられて、その搬送経路上の地点に原稿Ｐが存在する場合に、そのことを示す検出信号をＡＳＩＣ８０に入力する。この検出信号は、読取地点に進入する原稿Ｐの副走査方向位置を特定するために用いられる。
【００４５】
原稿センサ７０は、主走査方向全域ではなく、主走査方向における特定地点で原稿Ｐを検出する。原稿センサ７０は、例えば、原稿Ｐの搬送経路における主走査方向の中心地点で原稿Ｐを検出するように配置される。この場合、画像読取装置１は、原稿Ｐの搬送経路における主走査方向の中心地点を原稿Ｐの中心が通過するように構成され得る。
【００４６】
ＡＳＩＣ８０は、読取制御部８１と、データ処理部８３と、搬送制御部８７と、を備える。読取制御部８１は、メインユニット９０からの指令に従って、ラインセンサ２０の読取動作を制御することによって、原稿Ｐが１ライン分副走査方向に搬送される度に、ラインセンサ２０に原稿１ライン分のライン画像データを生成させる。
【００４７】
データ処理部８３は、ラインセンサ２０から入力されるアナログ信号としてのライン画像データを、ディジタルサンプリングし、ディジタルのライン画像データに変換する。データ処理部８３は、このライン画像データを、黒補正したり、シェーディング補正したり、斜行補正したりする。データ処理部８３の詳細構成については後述する。データ処理部８３は、上記したような補正を加えて、ラインセンサ２０にて生成されたライン画像データ群から、原稿Ｐの読取画像データを生成し、これをメインユニット９０に提供する。
【００４８】
この他、搬送制御部８７は、駆動デバイス６０を制御することにより、分離ローラ３１、搬送ローラ４１及び排紙ローラ４５の回転を制御する。駆動デバイス６０が直流モータを備える場合、搬送制御部８７は、駆動デバイス６０からの上記回転位置信号に基づき、分離ローラ３１、搬送ローラ４１及び排紙ローラ４５の回転をフィードバック制御する。例えば、搬送制御部８７は、原稿Ｐがラインセンサ２０により読み取られる過程では、原稿Ｐが定速搬送されるように、搬送ローラ４１及び排紙ローラ４５の、回転量又は回転速度をフィードバック制御する。
【００４９】
また、メインユニット９０は、ＣＰＵ９１と、ＲＯＭ９３と、ＲＡＭ９５と、ＮＶＲＡＭ９７とを備える。ＣＰＵ９１は、ＲＯＭ９３に記憶されたプログラムに従う処理を実行する。ＲＡＭ９５は、ＣＰＵ９１による処理実行時に作業領域として使用される。ＮＶＲＡＭ９７は、電気的にデータ書換可能な不揮発性メモリであり、各種データを記憶する。メインユニット９０は、ＣＰＵ９１での各種処理の実行により、画像読取装置１を統括制御し、画像読取装置１に必要な機能を実現する。
【００５０】
メインユニット９０は、例えば、通信インタフェース９９を介して外部装置５と通信する。そして、外部装置５からの読取要求を受信すると、この要求に基づく原稿Ｐの読取動作が実行されるように、ＡＳＩＣ８０に対して指令入力する。
【００５１】
メインユニット９０は、原稿Ｐの読取動作によって生成された原稿Ｐの読取画像を表す画像データを、通信インタフェース９９を介して、外部装置５に提供する。外部装置５は、例えばパーソナルコンピュータであり、ユーザに操作されて画像読取装置１に対し読取要求を入力する。
【００５２】
メインユニット９０は、通信インタフェース９９を介して外部装置５から読取要求を受信すると、具体的に図３（Ａ）に示す主搬送制御処理及び図３（Ｂ）に示す読取設定処理を実行する。
【００５３】
主搬送制御処理を開始すると、メインユニット９０は、一枚の原稿Ｐについての給紙から排紙までの搬送制御を実行させるための指令を、ＡＳＩＣ８０に入力する（Ｓ１１０）。指令入力を受けて、ＡＳＩＣ８０の搬送制御部８７は、駆動デバイス６０を制御し、分離機構３０に原稿トレイ１０から原稿Ｐを一枚分離させ、これを搬送ローラ４１によるニップ位置まで供給させる。また、搬送機構４０に、ニップ位置から排紙トレイ５０までの原稿Ｐの搬送動作を実行させる。
【００５４】
この指令を入力した後、メインユニット９０は、次の原稿Ｐが原稿トレイ１０に存在するか否かを判断し（Ｓ１２０）、次の原稿Ｐが存在すると判断した場合には（Ｓ１２０でＹｅｓ）、次の原稿Ｐの給紙タイミングが到来するまで待機する（Ｓ１３０）。図示しないが画像読取装置１は、原稿トレイ１０に原稿Ｐが載置されていることを検知するためのセンサを備えた構成にされ得る。メインユニット９０は、次の原稿Ｐの給紙タイミングが到来すると（Ｓ１３０でＹｅｓ）、Ｓ１４０に移行し、次の原稿Ｐについての給紙から排紙までの搬送制御を実行させるための指令を、ＡＳＩＣ８０に入力する。
【００５５】
例えば、メインユニット９０は、次の原稿Ｐが分離ローラ３１の回転により搬送ローラ４１のニップ位置に到達した時点以降において、この原稿Ｐと先行する原稿Ｐ０（図５（Ａ）参照）との搬送間隔Ｌが、予め定められた一定間隔Ｌｃとなるようなタイミングで、上記指令をＡＳＩＣ８０に入力する（Ｓ１４０）。
【００５６】
ここで、分離ローラ３１は、搬送ローラ４１と同じ速度で回転されてもよいし、搬送ローラ４１よりも遅い速度で回転されてもよい。分離ローラ３１の回転速度が搬送ローラ４１の回転速度が遅い場合には、次の原稿Ｐが搬送ローラ４１のニップ位置に到達するまでの過程で、先行する原稿Ｐ０と次の原稿Ｐとの間隔が、分離ローラ３１の回転速度と搬送ローラ４１の回転速度との速度差に応じて広がる。
【００５７】
従って、予め適切な速度差を設定しておくことで、メインユニット９０は、先行する原稿Ｐ０の後端エッジが分離ローラ３１を抜けたタイミングでＳ１４０に移行して上記指令をＡＳＩＣ８０に入力することができる。速度差の設定により、次の原稿Ｐが搬送ローラ４１のニップ位置に到達する時点で、先行する原稿Ｐ０との搬送間隔Ｌが一定間隔Ｌｃとなるように、分離機構３０は、次の原稿Ｐを搬送し得る。
【００５８】
この原稿Ｐは、搬送ローラ４１のニップ位置まで到達した後、先行する原稿Ｐ０と共に搬送機構４０により下流に搬送される。これにより、次の原稿Ｐは、搬送ローラ４１と排紙ローラ４５との間の搬送経路上でも、先行する原稿Ｐ０との搬送間隔Ｌが一定間隔Ｌｃとなるように搬送される。
【００５９】
分離ローラ３１が上記原稿Ｐの搬送経路における主走査方向の中心地点を基準に、当該中心地点から両側に所定の長さを有するように配置される場合、上記搬送間隔Ｌは、分離ローラ３１の配置位置に対応する主走査方向の中心地点から副走査方向に延びる線上で、およそ一定間隔Ｌｃに制御される。
【００６０】
別例として、メインユニット９０は、先行する原稿Ｐ０の後端エッジが、原稿センサ７０による検出地点を通過したことをＡＳＩＣ８０からの入力信号に基づき検知して、この検知を条件に、Ｓ１３０で肯定判断し、Ｓ１４０に移行することができる。Ｓ１４０では、分離機構３０が次の原稿Ｐを搬送ローラ４１によるニップ位置まで供給するように、ＡＳＩＣ８０に指令を入力することができる。
【００６１】
この例によれば、次の原稿Ｐは、搬送ローラ４１のニップ位置まで高速搬送される。この原稿Ｐは、その後、先行する原稿Ｐ０に追従するようにして、先行する原稿Ｐ０と共に、搬送機構４０により下流に搬送される。次の原稿Ｐは、このような分離機構３０及び搬送機構４０の動作により、搬送ローラ４１と排紙ローラ４５との間の搬送経路上では、先行する原稿Ｐ０との搬送間隔Ｌが一定間隔Ｌｃとなるように搬送される。即ち、搬送間隔Ｌは、原稿センサ７０が原稿Ｐを検出する主走査方向における特定地点（主走査方向の中心地点）から副走査方向に延びる線上で、一定間隔Ｌｃに制御される。
【００６２】
駆動デバイス６０及び動力伝達機構６５が、搬送ローラ４１を停止させた状態で、排紙ローラ４５を回転駆動可能に構成されている場合、メインユニット９０は、先行する原稿Ｐ０の後端エッジが搬送ローラ４１によるニップ位置を通過した後、搬送ローラ４１が停止した状態で、分離機構３０に次の原稿Ｐの供給動作を実行させるように、ＡＳＩＣ８０に対して指令入力してもよい（Ｓ１４０）。こうした供給動作により、ニップ位置では、次の原稿Ｐの斜行が改善される。
【００６３】
この場合、搬送制御部８７は、次の原稿Ｐが搬送ローラ４１によるニップ位置に到達した後、先行する原稿Ｐ０との搬送間隔Ｌが一定間隔Ｌｃとなるタイミングで、搬送ローラ４１を回転駆動させて、ニップ位置からの次の原稿Ｐの搬送制御を行う構成にされ得る。このタイミングは、先行する原稿Ｐ０の後端のニップ位置からの距離に基づいて判断することができる。この距離は、原稿センサ７０の検出結果や、先行する原稿Ｐ０の搬送量から特定され得て、搬送量は、駆動デバイス６０の動作量、又は、駆動デバイス６０からの回転位置信号に基づいて特定可能である。
【００６４】
メインユニット９０は、このようにしてＳ１４０での処理を終えるとＳ１２０に移行し次の原稿Ｐが存在しないと判断した場合には（Ｓ１２０でＮｏ）、主搬送制御処理を終了する。
【００６５】
続いて、メインユニット９０が実行する読取設定処理について説明する。メインユニット９０は、外部装置５からの読取要求を受けると、その要求に基づいて原稿トレイ１０から原稿Ｐが下流に供給される度に、図３（Ｂ）に示す読取設定処理を実行する。
【００６６】
この読取設定処理を開始すると、メインユニット９０は、原稿Ｐの先端エッジが原稿センサ７０による検出地点を通過したことをＡＳＩＣ８０からの入力信号に基づき検知するまで待機する（Ｓ２１０）。
【００６７】
そして、原稿Ｐの先端エッジの通過を検知すると（Ｓ２１０でＹｅｓ）、先端エッジの通過が検知された原稿Ｐに対する読取制御部８１及びデータ処理部８３の動作を定義付けるパラメータ群を、ＡＳＩＣ８０に設定し、このパラメータ群に基づくラインセンサ２０の読取動作、及び、データ処理部８３のよるデータ処理動作を実行させるように、ＡＳＩＣ８０に対して指令入力する（Ｓ２２０）。その後、当該読取設定処理を終了する。
【００６８】
続いて、データ処理部８３の詳細構成を説明する。図４に示すように、データ処理部８３は、スキャン回路１１０と、バイパス回路１２０と、原稿エッジ検出回路１３０と、ＳＲＡＭ１４０と、斜行補正回路１５０と、画像処理回路１６０と、を備える。
【００６９】
スキャン回路１１０は、サンプリング部１１１と、黒補正部１１３と、シェーディング補正部１１５と、を備える。サンプリング部１１１は、ラインセンサ２０から入力されるアナログ信号としてのライン画像データを、ディジタルのライン画像データに変換する。黒補正部１１３は、サンプリング部１１１から得られるライン画像データを、黒基準データに基づき、画素間の輝度ばらつきを抑えるように黒補正する。シェーディング補正部１１５は、黒補正部１１３から得られたライン画像データを、白基準データに基づきシェーディング補正する。
【００７０】
シェーディング補正後のライン画像データは、スキャン回路１１０において更に必要な処理を受けた後、斜行補正回路１５０に入力される。この他、シェーディング補正部１１５からのライン画像データは、バイパス回路１２０に入力される。
【００７１】
バイパス回路１２０は、エッジ検出処理に対する前処理としてスキャン回路１１０からのライン画像データに対し、解像度変換等の処理を行う。
原稿エッジ検出回路１３０は、エッジ検出処理回路１３１及び原稿先端検出回路１３３を備える。
【００７２】
エッジ検出処理回路１３１は、バイパス回路１２０から入力されるライン画像データ群に対し、エッジ検出処理を実行する。エッジ検出処理としては、微分フィルタを用いたものが知られている。エッジ検出処理回路１３１は、例えば、バイパス回路１２０から入力されるライン画像データ群に対し微分フィルタを作用させることで、ライン画像データ毎に、原稿エッジが強調されたエッジ画像データを生成する。エッジ検出処理回路１３１は、このエッジ画像データを二値化し、二値化処理後のエッジ画像データを原稿先端検出回路１３３に順に入力する。
【００７３】
原稿先端検出回路１３３は、エッジ検出処理回路１３１からのエッジ画像データに基づき、原稿Ｐの先端エッジの位置座標を、ＳＲＡＭ１４０に記憶する。ＳＲＡＭ１４０に記憶された原稿Ｐの先端エッジの位置座標は、斜行補正回路１５０に提供されて斜行補正に利用される。又は、この位置座標は、メインユニット９０で、原稿Ｐのサイズ及び傾きの検出に用いられる。
【００７４】
斜行補正回路１５０は、この位置座標の情報に基づいて、又は、原稿Ｐの傾きの情報に基づいて、スキャン回路１１０から入力されるライン画像データ群に対し斜行補正を行う。即ち、斜行補正回路１５０は、ライン画像データ群に対して原稿Ｐの傾きに応じた回転補正を加える。
【００７５】
斜行補正回路１５０による斜行補正後のライン画像データ群は、画像処理回路１６０に入力されて、その他の画像処理を受けた後、原稿Ｐの読取画像データとして、メインユニット９０に提供される。メインユニット９０に提供された読取画像データは、ＲＡＭ９５又はＮＶＲＡＭ９７に記憶される。画像処理回路１６０は、画像処理の一つとして、画像圧縮処理を実行することができ、原稿Ｐの読取画像データとして、圧縮ファイルを生成することができる。画像圧縮方式としては、例えばＪＰＥＧ方式が知られている。
【００７６】
続いて、原稿先端検出回路１３３の機能及び動作の概略を、図５（Ａ）、図５（Ｂ）、図６（Ａ）、図６（Ｂ）、図６（Ｃ）、図６（Ｄ）、図７（Ａ）及び図７（Ｂ）を用いて説明する。図５（Ａ）は、先行する原稿Ｐ０とそれに続く原稿Ｐとが斜行なしで正常に副走査方向下流に搬送されるケースにおける原稿Ｐ０，Ｐの位置関係を示す図であり、破線により原稿エッジ検出領域を示した図である。正常な状態において、原稿Ｐ０，Ｐの搬送間隔Ｌは、上述したように一定間隔Ｌｃである。
【００７７】
原稿先端検出回路１３３は、エッジ検出処理回路１３１から入力されるライン毎のエッジ画像データの内、予め設定された上記原稿エッジ検出領域内のエッジ画像データ群に基づいて、原稿Ｐの先端エッジの位置座標を検出する。
【００７８】
原稿エッジ検出領域は、上述したＳ２２０でメインユニット９０から原稿先端検出回路１３３に対し設定される。エッジ検出処理回路１３１及び原稿先端検出回路１３３は、Ｓ２２０でメインユニット９０により初期化される。Ｓ２２０において、メインユニット９０から原稿先端検出回路１３３へは、原稿エッジ検出領域を定義するパラメータとして、原稿エッジ検出領域の開始ライン及び終了ラインの位置を指定するパラメータが設定される。
【００７９】
エッジ検出処理回路１３１は、Ｓ２２０での初期化を契機に、ライン毎のエッジ画像データの生成処理を開始し、生成したエッジ画像データを、ライン毎に原稿先端検出回路１３３に入力する。
【００８０】
原稿先端検出回路１３３は、原稿センサ７０による検出地点を原稿Ｐの先端エッジが通過した時点から、エッジ画像データが入力される度にラインカウント値を更新する。このラインカウント値は、およそ、原稿センサ７０による検出地点を原稿Ｐの先端エッジが通過した時点からの原稿Ｐの副走査方向への搬送量と比例する。以下では、原稿Ｐの先端エッジ（端縁）の内、原稿センサ７０によって検出される点（例えば先端エッジの中心点）を、原稿Ｐの基準点と表現する。
【００８１】
上述した原稿エッジ検出領域の開始ライン及び終了ラインの位置は、このラインカウント値で設定される。図５（Ａ）に示す例によれば、原稿エッジ検出領域における開始ラインのエッジ画像データは、原稿Ｐの基準点がラインセンサ２０による読取地点から副走査方向上流に距離Ｄ１遡った地点に位置するときに、ラインセンサ２０の読取動作により生成されるライン画像データに対応する。また、終了ラインのエッジ画像データは、原稿Ｐの基準点が、ラインセンサ２０による読取地点から副走査方向下流に距離Ｄ２進行した地点に位置するときに、ラインセンサ２０の読取動作により生成されるライン画像データに対応する。
【００８２】
原稿センサ７０による検出地点からラインセンサ２０による読取地点までの副走査方向の距離がＭであるとき、原稿エッジ検出領域の開始ラインの位置は、距離（Ｍ−Ｄ１）に対応するラインカウント値に設定され、原稿エッジ検出領域の終了ラインの位置は、距離（Ｍ＋Ｄ２）に対応するラインカウント値に設定される。
【００８３】
この原稿エッジ検出領域は、距離Ｄ１が間隔Ｌｃよりも短くなるように設定される。これにより、斜行なしで正常に原稿Ｐ０，Ｐが搬送されているときには、原稿エッジ検出領域のエッジ画像データ群に、先行する原稿Ｐ０の後端は写らない。距離Ｄ１は、先端エッジの位置座標を検出する対象の原稿Ｐが斜行している場合でも、その先端エッジ全体が原稿エッジ検出領域内に含まれるように定められる。原稿先端検出回路１３３は、このような原稿エッジ検出領域内のエッジ画像データ群に基づき、原稿Ｐの先端エッジの位置座標を精度良く検出する。
【００８４】
図５（Ｂ）は、上述したように原稿エッジ検出領域が定められるケースにおいて原稿Ｐ０，Ｐに斜行が発生していない場合の、エッジ画像データ群が表すエッジ画像を概念的に示す。図５（Ｂ）に示す破線は、図５（Ａ）と同様に、原稿エッジ検出領域を表し、図５（Ｂ）に示す太線は、エッジ画像データ群に写る原稿Ｐのエッジを示す。図５（Ｂ）では、図５（Ａ）に対して原稿エッジ検出領域が拡大して表される。
【００８５】
エッジ画像データ群は、例えば、原稿エッジ（太線）に対応する画素が画素値「１」を示し、その他の領域の画素が画素値「０」を示すように構成にされる。以下では、エッジ画像データ群において値「１」を示す画素のことをエッジ点と表現する。
【００８６】
原稿先端検出回路１３３は、この原稿エッジ検出領域内のエッジ画像データ群を、図６（Ａ）に示すように、先頭ラインのエッジ画像データから、ライン毎に、及び、ライン番号（ラインカウント値）の若い順に参照する。そして、主走査方向の各画素に対応する位置毎に、副走査方向において最初に見つかった原稿エッジを表す画素の副走査方向位置（ラインカウント値）を、ＳＲＡＭ１４０に書き込む。
【００８７】
ＳＲＡＭ１４０には、図６（Ｄ）に示すように、主走査方向の各画素に対応する位置毎に、原稿Ｐの先端エッジの副走査方向位置を登録するための領域が予め用意される。原稿先端検出回路１３３は、原稿エッジを表す画素の副走査方向位置（ラインカウント値）を、この画素の主走査方向位置に対応するＳＲＡＭ１４０内の領域に書き込むことにより、原稿Ｐの先端エッジの位置座標を、ＳＲＡＭ１４０に登録する。
【００８８】
図６（Ｂ）に示す例によれば、原稿エッジ検出領域（エッジ画像データ群）において、主走査方向位置Ｘ＝Ｘ０からＸ＝Ｘａまでの領域及び主走査方向位置Ｘ＝ＸｂからＸ＝Ｘｎまでの領域には、原稿Ｐの先端エッジが写っておらず、主走査方向位置Ｘ＝ＸａからＸ＝Ｘｂまでの領域には、原稿Ｐの先端エッジが写っている。
【００８９】
ＳＲＡＭ１４０には、図６（Ｃ）において太線で示す地点の副走査方向位置Ｙが、主走査方向の各位置Ｘに対して登録されて、原稿Ｐの先端エッジの位置座標が登録される。即ち、主走査方向位置Ｘ＝ＸａからＸ＝Ｘｂまでの範囲に対応するＳＲＡＭ１４０内の領域に対しては、主走査方向位置Ｘ毎に、副走査方向位置Ｙ＝Ｙａが登録される。
【００９０】
ＳＲＡＭ１４０には、原稿Ｐの先端エッジが写っていない主走査方向位置Ｘ＝Ｘ０からＸ＝Ｘａまでの範囲及び主走査方向位置Ｘ＝ＸｂからＸ＝Ｘｎまでの範囲に対応する副走査方向位置Ｙとして、原稿エッジ検出領域における最終ラインの位置Ｙ＝Ｙｎが記憶される。
【００９１】
原稿Ｐの先端エッジが写っていない主走査方向位置Ｘに対応する副走査方向位置Ｙとして最終ラインの位置Ｙ＝Ｙｎが記憶されるのは、ＳＲＡＭ１４０が記憶する副走査方向位置Ｙの初期化時に、副走査方向位置Ｙが値Ｙｎに初期化されるためである。本実施例では、ＳＲＡＭ１４０が記憶する副走査方向位置Ｙが値Ｙｎを示す主走査方向の位置は、原稿Ｐの先端エッジが写っていない位置とみなされる。
【００９２】
ところで、先行する原稿Ｐ０に斜行が発生しているときには、図７（Ａ）に示すように、原稿エッジ検出領域内のエッジ画像データ群に、先行する原稿Ｐ０の後端が写ってしまう場合がある。この場合、上述した原理で、ＳＲＡＭ１４０に原稿Ｐの先端エッジを表す画素の位置座標を登録すると、図７（Ａ）に太線で示す部位が、原稿Ｐの先端エッジの位置座標として登録されてしまう。即ち、先行する原稿Ｐ０の後端エッジの位置座標が、目的とする原稿Ｐの先端エッジと誤ってＳＲＡＭ１４０に登録されてしまう。
【００９３】
このため、本実施例では、図７（Ｂ）に示すように、原稿エッジ検出領域内の先頭ラインのエッジ画像データにおいて、原稿エッジを表す画素を検出した場合には、原稿エッジ検出領域内の先頭ラインを基準とした領域であって、先頭ラインから原稿エッジの検出が途切れる地点Ｋまでの領域をマスク領域ＭＲに設定する。マスク領域ＭＲは、図７（Ｂ）においてハッチングされた領域に対応する。
【００９４】
そして、原稿先端検出回路１３３は、原稿エッジ検出領域内のエッジ画像データ群における各画素をライン順に参照して、各主走査方向位置Ｘで現れた原稿エッジを表す画素についての副走査方向位置ＹをＳＲＡＭ１４０に登録するが、マスク領域ＭＲでは原稿エッジを検出した場合でも、この画素の副走査方向位置ＹをＳＲＡＭ１４０に登録しないように動作する。
【００９５】
即ち、原稿先端検出回路１３３は、各主走査方向位置Ｘにおいて、副走査方向にライン順に画素を参照したときに、マスク領域ＭＲ外において最初に現れる原稿エッジを表す画素の副走査方向位置Ｙを、ＳＲＡＭ１４０に登録するように動作する。本実施例では、このようなマスク領域ＭＲの設定及び原稿先端検出回路１３３の動作により、ＳＲＡＭ１４０に、先行する原稿Ｐ０の後端エッジの位置座標が登録されるのを抑制する。
【００９６】
更に付言すると、図７（Ｂ）からも理解できるように、マスク領域ＭＲは、原稿エッジ検出領域内の先頭ラインにおいて検出された原稿エッジを表す画素の主走査方向位置と、副走査方向に平行な基準線Ｃとの位置関係に基づき、この基準線Ｃを境界として、この基準線Ｃから上記先頭ラインにおいて原稿エッジを表す画素を検出した側の区画内に定められる。基準線Ｃは、搬送間隔Ｌが一定間隔Ｌｃに制御される地点を副走査方向に通る線として定義される。搬送間隔Ｌが一定間隔Ｌｃに制御される地点は、例えば、原稿Ｐの搬送経路における主走査方向中心に対応する。
【００９７】
基準線Ｃに対応する位置では、間隔Ｌｃが、上述の距離Ｄ１より長いことから、先行する原稿Ｐ０の後端エッジが原稿エッジ検出領域内において基準線Ｃ上に現れることは基本的にない。
【００９８】
また、原稿Ｐ０，Ｐは、通常矩形状で原稿エッジは直線的である。従って、原稿エッジ検出領域内のエッジ画像データ群に、先行する原稿Ｐ０の後端エッジが写る場合には、先頭ラインに写る後端エッジの位置から原稿Ｐ０の左右の一端側に向けて、後端エッジが連続して写っていると考えられる。本実施例では、このような理由から、マスク領域ＭＲを、基準線Ｃを境界として左右片側に定め、精度良く原稿Ｐの先端エッジの位置座標を検出できるようにしている。
【００９９】
続いて、原稿先端検出回路１３３の詳細構成を説明する。図８に示すように原稿先端検出回路１３３は、入力制御部２１０、画素カウンタ２２０、ラインカウンタ２３０、バッファ２４０、後端エッジ検出部２５０、マスク信号生成部２６０、先端エッジ検出部２７０、更新判定部２８０、完了通知部２９０及びレジスタ３００を備える。
【０１００】
入力制御部２１０は、エッジ検出処理回路１３１から入力されるレディ信号に対してアック信号を用いて応答することで、原稿先端検出回路１３３における処理の進行に合わせて、エッジ検出処理回路１３１からのエッジ画像データの入力を制御する。具体的に、入力制御部２１０は、ライン単位より細かい画素単位でエッジ検出処理回路１３１からのエッジ画像データの入力を制御する。
【０１０１】
入力制御部２１０は、その制御により、エッジ検出処理回路１３１からエッジ画像データを構成する各画素の画素値（「０」又は「１」）が原稿先端検出回路１３３内に入力される度に、画素カウンタ２２０に対してカウントアップ信号を入力する。画素カウンタ２２０は、入力制御部２１０からカウントアップ信号が入力される度に、画素カウント値を１加算する。以下では、エッジ検出処理回路１３１から原稿先端検出回路１３３に入力される画素値に対応する画素のことを、「参照画素」とも表現し、画素値に対応するラインのことを「参照ライン」とも表現する。
【０１０２】
この画素カウント値は、原稿先端検出回路１３３に入力される画素値に対応する主走査方向位置Ｘ、換言すれば、参照画素の主走査方向位置Ｘを表す。画素カウンタ２２０が有する画素カウント値は、１ライン分の画素値が原稿先端検出回路１３３に入力される度に、入力制御部２１０によってゼロにリセットされる。
【０１０３】
エッジ検出処理回路１３１は、エッジ画像データを構成する各画素値を１ライン分入力する度に、ラインエンド信号を入力する。入力制御部２１０は、このラインエンド信号に基づき、画素カウント値をリセットする。
【０１０４】
ラインカウンタ２３０は、ラインエンド信号が入力される度に、ラインカウント値を１加算する。このラインカウント値は、エッジ検出処理回路１３１から入力されたエッジ画像データのライン数に対応し、１ライン目をゼロとした時の参照ラインのライン番号に対応する。
【０１０５】
バッファ２４０は、エッジ検出処理回路１３１から入力される画素値を時系列で複数画素分記憶する。バッファ２４０は、後端エッジ検出部２５０及び先端エッジ検出部２７０にてエッジ点の連続性を判定するために、複数画素分の画素値を記憶する。バッファ２４０内の画素値は、ラインエンド信号が入力される度に消去される。
【０１０６】
後端エッジ検出部２５０は、図９（Ａ）に示すように、ライン判定部２５１と、後端位置記憶部２５２と、連続性判定部２５３と、区画判別部２５４と、後端エッジ判定部２５５とを備える。
【０１０７】
ライン判定部２５１は、後端位置記憶部２５２が初期化されている状態では、ラインカウンタ２３０から入力されるラインカウント値と、レジスタ３００が記憶する原稿エッジ検出領域の開始ラインのラインカウント値と、に基づき、参照ラインが原稿エッジ検出領域の先頭ラインであるか否かを判定する。そして、参照ラインが先頭ラインであるときには、ライン有効フラグとして値「１」を後端エッジ判定部２５５に入力し、参照ラインが先頭ラインではないときには、ライン有効フラグとして値「０」を後端エッジ判定部２５５に入力する。
【０１０８】
Ｓ２２０の処理によって原稿先端検出回路１３３には、原稿エッジ検出領域の開始ラインに対応するラインカウント値が入力され、レジスタ３００に記憶される。また、Ｓ２２０の処理によって、後端位置記憶部２５２は初期化される。
【０１０９】
また、ライン判定部２５１は、後端エッジ判定部２５５からの後端エッジ検出フラグが値「１」であるとき、この時のラインカウント値を、後端位置記憶部２５２に記憶させる。
【０１１０】
この他、ライン判定部２５１は、後端位置記憶部２５２がラインカウント値を記憶するとき、ラインカウンタ２３０からのラインカウント値が、後端位置記憶部２５２が記憶するラインカウント値より１大きい値であるか否かを判定する。そして、ラインカウンタ２３０からのラインカウント値が、後端位置記憶部２５２が記憶するラインカウント値より１大きい値である場合には、ライン有効フラグとして値「１」を後端エッジ判定部２５５に入力し、それ以外の場合には、ライン有効フラグとして値「０」を後端エッジ判定部２５５に入力する。
【０１１１】
連続性判定部２５３は、参照画素、及び、この参照画素より前においてエッジ検出処理回路１３１から画素値の入力された同一ラインにおける所定画素数前までの各画素の画素値をバッファ２４０から読み込み、同一ラインにおいて、参照画素から所定画素数前までの各画素の画素値が連続して値「１」を示すか否かを判定する。
【０１１２】
レジスタ３００には、Ｓ２２０の処理により判定用閾値Ｈが設定される。連続性判定部２５３は、この判定用閾値Ｈに基づき、上記参照画素から所定画素数前までの各画素の画素値として、参照画素を基準に隣接するＨ個の画素の各画素値をバッファ２４０から読み込み、Ｈ個の画素が連続して画素値「１」を示すか否かを判定する。
【０１１３】
連続性判定部２５３は、これらＨ個の画素が連続して画素値「１」を示す場合には、参照画素が原稿エッジを表す画素であることを示す信号を、後端エッジ判定部２５５に入力し、それ以外の場合には、参照画素が原稿エッジを表す画素ではないことを示す信号を、後端エッジ判定部２５５に入力する。
【０１１４】
区画判別部２５４は、画素カウンタ２２０から入力される画素カウント値と、後述するマスク領域設定部２６１から入力される領域設定値と、に基づいて、参照画素が、原稿エッジ検出領域における左右区画の内、マスク領域ＭＲと同一区画に存在するか否かを判定する。マスク領域設定部２６１から入力される領域設定値は、マスク領域ＭＲの設定範囲を表す。原稿エッジ検出領域は、基準線Ｃを境界として左区画及び右区画の二区画に区画化される。
【０１１５】
具体的に、区画判別部２５４は、領域設定値が示すマスク領域ＭＲの主走査方向範囲に、参照画素の画素カウント値が含まれるか否かを判断することにより、参照画素がマスク領域ＭＲと同一区画に存在するか否かを判定する。
【０１１６】
そして、同一区間に存在する場合には、区画有効フラグとして値「１」を後端エッジ判定部２５５に入力し、同一区間に存在しない場合には、区画有効フラグとして値「０」を後端エッジ判定部２５５に入力する。
【０１１７】
この区画判別部２５４は、マスク領域設定部２６１によりマスク領域ＭＲが設定されていない場合には、画素カウント値によらず、区画有効フラグとして値「１」を後端エッジ判定部２５５に入力する。
【０１１８】
後端エッジ判定部２５５は、ライン判定部２５１からライン有効フラグとして値「１」が入力され、区画判別部２５４により区画有効フラグとして値「１」が入力され、且つ、連続性判定部２５３により、参照画素が原稿エッジを表す画素であると判定されている場合には、後端エッジ検出フラグとして値「１」をマスク信号生成部２６０及びライン判定部２５１に入力し、それ以外の場合には、後端エッジ検出フラグとして値「０」をマスク信号生成部２６０及びライン判定部２５１に入力する。後端エッジ検出フラグが値「１」であるとき、参照画素は、原稿の後端エッジであることを表す。
【０１１９】
尚、主走査方向の画素間隔は、原稿Ｐの主走査方向の幅に対して微小である。このため、斜行により原稿Ｐが想定される最大の傾きを示す場合でも、参照画素が原稿エッジである場合、その周辺には同一ラインにおいて主走査方向に連続するエッジ点が、上記判定用閾値Ｈよりも十分大きい画素数に渡って、エッジ画像データに表れる。
【０１２０】
また、マスク信号生成部２６０は、図９（Ｂ）に示すように、マスク領域設定部２６１と、マスク領域判定部２６３とを備える。マスク領域設定部２６１は、後端エッジ検出フラグとして値「１」が入力されたことを条件に、画素カウンタ２２０から入力される画素カウント値に基づき、マスク領域ＭＲを設定する。
【０１２１】
マスク領域設定部２６１は、参照画素の画素カウント値及びラインカウント値と、レジスタ３００が記憶する基準線Ｃの位置（画素カウント値）、原稿エッジ検出領域の開始ラインの位置（ラインカウント値）、及び、マスク機能のオン／オフ情報に基づき、マスク領域ＭＲを設定する。レジスタ３００が記憶するこれらの情報は、Ｓ２２０の処理で、メインユニット９０により書き込まれる。
【０１２２】
具体的に、マスク領域設定部２６１は、マスク領域ＭＲの開始ラインを、原稿エッジ検出領域の先頭ラインに決定し、マスク領域ＭＲの終了ラインを、参照ラインの次のラインに決定し、マスク領域ＭＲの主走査方向の範囲を、基準線Ｃより参照画素が存在する側の区画に決定することによりマスク領域ＭＲを設定する。マスク領域ＭＲの開始ライン及び終了ラインの位置は、ラインカウント値で定められ、マスク領域ＭＲの主走査方向の範囲は、画素カウント値で定められる。
【０１２３】
マスク領域設定部２６１は、このマスク領域ＭＲの範囲を表す領域設定値をマスク領域判定部２６３及び区画判別部２５４に入力する。
但し、マスク領域設定部２６１は、マスク機能のオン／オフ情報がオフを示す場合には、マスク領域ＭＲを設定しない。原稿Ｐの初回搬送時には、先行する原稿が存在しないため、メインユニット９０からはマスク機能のオン／オフ情報として、オフを示す値がレジスタ３００に書き込まれる。先行する原稿Ｐ０が存在する環境では、メインユニット９０から、マスク機能のオン／オフ情報として、オンを示す値がレジスタ３００に書き込まれる。マスク領域設定部２６１は、上述したマスク領域ＭＲの設定及び更新動作を、後端エッジ検出フラグが値「０」から値「１」に切り替わる度に実行する。
【０１２４】
尚、原稿エッジ検出領域の２ライン目以降においては、連続性判定部２５３により参照画素が原稿エッジを表す画素であると判定されても、参照画素の主走査方向位置がマスク領域ＭＲ内になければ、上述したように後端エッジ検出フラグが値「１」にならない。
【０１２５】
従って、参照ラインが原稿エッジ検出領域の２ライン目以降であるケースでは、マスク領域設定部２６１は、原稿エッジ検出領域における基準線Ｃを境界とする左右区画の内、先頭ラインにおいて検出された原稿Ｐの後端エッジと同一区画で、マスク領域ＭＲを設定することになる。
【０１２６】
先頭ラインにおいて検出された原稿Ｐの後端エッジが２ライン目以降にも続くとき、後端エッジ検出フラグは、後端エッジ判定部２５５の機能により、ライン毎に、マスク領域ＭＲと同一区間において主走査方向に連続するエッジ点（後端エッジ）が見つかる度に、値「０」から値「１」に変化する。
【０１２７】
そして、原稿Ｐの後端エッジが途切れると、ライン判定部２５１でのライン有効フラグが値「０」に固定される結果、それ以上後端エッジ検出フラグが値「１」に切り替わることがなくなり、マスク領域ＭＲの更新は停止する。
【０１２８】
マスク領域判定部２６３は、ラインカウンタ２３０から入力されるラインカウント値、画素カウンタ２２０から入力される画素カウント値、及び、マスク領域設定部２６１から入力される領域設定値に基づいて、参照画素がマスク領域ＭＲ内にあるか否かを判定する。そして、参照画素がマスク領域ＭＲ内にあるときには、マスク信号としてオン信号を先端エッジ検出部２７０及び更新判定部２８０に入力し、参照画素がマスク領域ＭＲ外にあるときには、マスク信号としてオフ信号を先端エッジ検出部２７０及び更新判定部２８０に入力する。マスク領域判定部２６３は、マスク領域設定部２６１によりマスク領域ＭＲが設定されていない場合、マスク信号としてオフ信号を先端エッジ検出部２７０及び更新判定部２８０に入力する。
【０１２９】
先端エッジ検出部２７０は、図９（Ｃ）に示すように、非先頭ライン判定部２７１と、連続性判定部２７３と、先端エッジ判定部２７５と、を備える。非先頭ライン判定部２７１は、ラインカウンタ２３０から入力されるラインカウント値と、レジスタ３００が記憶する原稿エッジ検出領域の開始ラインのラインカウント値と、に基づき、参照ラインが原稿エッジ検出領域の先頭ラインに続く２ライン目以降であるか否かを判定し、その判定結果を表す信号を先端エッジ判定部２７５に入力する。
【０１３０】
連続性判定部２７３は、後端エッジ検出部２５０が有する連続性判定部２５３と同様に動作して、参照画素が原稿エッジを表す画素であるか否かを表す信号を、先端エッジ判定部２７５に入力する。
【０１３１】
先端エッジ判定部２７５は、非先頭ライン判定部２７１の判定結果、連続性判定部２７３の判定結果、及びマスク信号に基づき、次の規則で、先端エッジ検出フラグとして値「０」又は値「１」を、更新判定部２８０に入力する。
【０１３２】
即ち、先端エッジ判定部２７５は、非先頭ライン判定部２７１により、参照ラインが原稿エッジ検出領域の２ライン目以降であると判定され、且つ、連続性判定部２７３により、参照画素が原稿エッジを表す画素であると判定され、且つ、参照画素がマスク領域ＭＲ外であることでマスク信号がオフ信号である場合に、先端エッジ検出フラグとして値「１」を、更新判定部２８０に入力し、それ以外の場合には、先端エッジ検出フラグとして値「０」を更新判定部２８０に入力する。
【０１３３】
但し、先端エッジ判定部２７５は、先端エッジ検出フラグを値「０」から値「１」に切り替えた後には、上記規則によらず、原稿エッジ検出領域の終了ラインまでの参照が完了するまで、更新判定部２８０に入力する先端エッジ検出フラグを値「１」に維持する。先端エッジ検出フラグを値「１」に維持する理由は、一度、原稿Ｐの先端エッジが検出された後には、連続して原稿Ｐの先端エッジが存在することが期待されるためである。
【０１３４】
更新判定部２８０は、図１０に示すように、画素カウント値変更部２８１と、セレクタ２８３と、書込制御部２８５と、書込完了フラグ管理部２８７と、許可判定部２８９と、を備える。画素カウント値変更部２８１、セレクタ２８３、書込制御部２８５、書込完了フラグ管理部２８７、及び、許可判定部２８９の夫々は、先端エッジ判定部２７５から入力される先端エッジ検出フラグが値「０」から値「１」に切り替わると動作を開始する。
【０１３５】
画素カウント値変更部２８１は、記録中フラグとして値「０」又は値「１」をセレクタ２８３及び入力制御部２１０に入力する。具体的に、画素カウント値変更部２８１は、先端エッジ判定部２７５から入力される先端エッジ検出フラグが値「０」から値「１」に切り替わると、記録中フラグとして値「１」をセレクタ２８３及び入力制御部２１０に入力する動作を開始する。
【０１３６】
更に、画素カウント値変更部２８１は、記録中フラグとして値「１」をセレクタ２８３に入力しているときには、画素カウンタ２２０から入力される画素カウント値Ｘ＝Ｘｃを、判定用閾値Ｈに基づいて、値Ｘｃ−（Ｈ−１），Ｘｃ−（Ｈ−２），…，Ｘｃ−１，Ｘｃと順に変更してセレクタ２８３に入力する。画素カウント値Ｘｃを、値Ｘｃ−（Ｈ−１）から値Ｘｃまで変更すると、画素カウント値変更部２８１は、記録中フラグを値「０」に切り替える。
【０１３７】
上述したように参照画素が原稿Ｐの先端エッジを表す画素であると判定される環境では、（Ｈ−１）個前の画素から参照画素までのＨ個の画素が連続して画素値「１」を示している。本実施例では、これらの画素も原稿Ｐの先端エッジを表す画素とみなして、この画素の副走査方向位置Ｙを、ＳＲＡＭ１４０に書き込むために、画素カウント値変更部２８１により、画素カウント値を上述したように変更する。
【０１３８】
この画素カウント値の変更は、エッジ検出処理回路１３１からの画素値の入力を一時的に止めて実行する必要がある。このため、記録中フラグは、入力制御部２１０に入力される。記録中フラグが値「１」であるとき、入力制御部２１０は、エッジ検出処理回路１３１からの画素値の入力を停止させ、記録中フラグが値「０」に切り替わると、エッジ検出処理回路１３１からの画素値の入力を再開させるように動作する。
【０１３９】
セレクタ２８３は、画素カウンタ２２０からの画素カウント値、及び、画素カウント値変更部２８１からの変更後の画素カウント値の一方を、書込制御部２８５及び書込完了フラグ管理部２８７に入力する。具体的に、セレクタ２８３は、記録中フラグが値「１」であるときには、画素カウント値変更部２８１からの画素カウント値を、書込制御部２８５及び書込完了フラグ管理部２８７に入力し、記録中フラグが値「０」であるときには、画素カウンタ２２０からの画素カウント値を、書込制御部２８５及び書込完了フラグ管理部２８７に入力する。
【０１４０】
書込制御部２８５は、許可判定部２８９から書込許可信号として値「０」が入力されているときには、原稿Ｐの先端エッジの位置座標をＳＲＡＭ１４０に登録する動作を実行せずに、書込許可信号として値「１」が入力されているときに、原稿Ｐの先端エッジの位置座標をＳＲＡＭ１４０に登録する動作を実行する。
【０１４１】
具体的に、書込制御部２８５は、上記書込許可信号として値「１」が入力されているとき、セレクタ２８３から入力される画素カウント値に対応するＳＲＡＭ１４０上の領域に、ラインカウンタ２３０から入力されるラインカウント値を、原稿Ｐの先端エッジの副走査方向位置Ｙとして書き込む。これにより、セレクタ２８３から入力される画素カウント値及びラインカウンタ２３０から入力されるラインカウント値に対応する画素の位置座標を、原稿Ｐの先端エッジを表す画素の位置座標としてＳＲＡＭ１４０に登録する。書込制御部２８５は、この登録動作があるときには、オン信号を書込完了フラグ管理部２８７に入力し、それ以外の時にはオフ信号を書込完了フラグ管理部２８７に入力する。
【０１４２】
書込完了フラグ管理部２８７は、書込制御部２８５からオン信号が入力されるときには、セレクタ２８３から入力される画素カウント値に対応する書込完了フラグを値「１」に設定するように動作する。書込完了フラグ管理部２８７は、主走査方向の各画素に対応する位置毎に、書込完了フラグを記憶するフラグ記憶部２８７Ａを備える。
【０１４３】
書込完了フラグは、対応する主走査方向位置Ｘに関して、原稿Ｐの先端エッジの副走査方向位置Ｙの登録動作が完了しているとき、値「１」を採り、登録動作が完了していないとき、値「０」を採る。これらの書込完了フラグは、Ｓ２２０の処理で原稿先端検出回路１３３が初期化されるとき、値「０」に初期化される。
【０１４４】
また、書込完了フラグ管理部２８７は、セレクタ２８３から入力される画素カウント値に対応する書込完了フラグの現在値を許可判定部２８９に入力する構成にされる。
許可判定部２８９は、先端エッジ検出フラグが値「０」から値「１」に切り替わった後において、エッジ検出処理回路１３１からの参照画素の画素値と、書込完了フラグ管理部２８７からの参照画素の書込完了フラグと、マスク信号生成部２６０からのマスク信号と、に基づき、書込許可信号として値「１」又は値「０」を書込制御部２８５に入力する。
【０１４５】
具体的に、許可判定部２８９は、参照画素の画素値が値「１」であり、参照画素の書込完了フラグが値「０」であり、且つ、マスク信号がオフ信号であるときに、書込許可信号として値「１」を書込制御部２８５に入力し、それ以外の場合には、書込許可信号として値「０」を書込制御部２８５に入力する。
【０１４６】
書込制御部２８５は、この書込許可信号に基づいてＳＲＡＭ１４０に対する原稿Ｐの先端エッジの登録動作を実行する。これによって、書込制御部２８５は、主走査方向の各画素に対応する位置毎に、原稿エッジ検出領域におけるマスク領域外において、原稿エッジ検出領域の先頭ラインから副走査方向に最も近い原稿エッジを表す画素の副走査方向位置Ｙを、原稿Ｐの先端エッジを表す画素の副走査方向位置Ｙとして、ＳＲＡＭ１４０に登録する。ＳＲＡＭ１４０には、副走査方向位置Ｙの初期値として、原稿エッジ検出領域の終了ラインの値Ｙｎを、Ｓ２２０で原稿先端検出回路１３３が初期化される際に、書き込んでおくことができる。
【０１４７】
完了通知部２９０は、ラインカウンタ２３０から入力されるラインカウント値と、レジスタ３００が記憶する原稿エッジ検出領域の終了ラインのラインカウント値とに基づいて、原稿エッジ検出領域内のエッジ画像データ群の参照が全て完了したか否かを判定する。そして、全て完了している場合には、メインユニット９０に対して完了通知信号を入力するように動作する。
【０１４８】
以上、本実施例の画像読取装置１について説明したが、この画像読取装置１によれば、原稿エッジ検出領域における先頭ラインのエッジ画像データにおいて原稿エッジを検出した場合には、後端エッジ検出部２５０が、後端エッジ検出フラグとして値「１」をマスク信号生成部２６０に入力する。その後、後端エッジ検出部２５０は、基準線Ｃを境界とする左右区画の内、先頭ラインと同じ区画において先頭ラインに続く各ラインで連続して原稿エッジが検出され続ける限り、各ラインで原稿エッジが検出される度に、マスク信号生成部２６０に入力する後端エッジ検出フラグを値「０」から値「１」に切り替える。
【０１４９】
マスク信号生成部２６０は、後端エッジ検出フラグとして値「１」が入力された場合には、原稿エッジ検出領域の内、先頭ラインで検出された原稿エッジと同じ区画において、現在の参照ラインの次ラインまでを、マスク領域ＭＲに設定する。既にマスク領域ＭＲが設定されている場合には、後端エッジ検出フラグとして値「１」が入力される度に、マスク領域ＭＲを、現在の参照ラインの次ラインまで拡張するように更新する。そして、マスク信号生成部２６０は、参照画素がマスク領域ＭＲ内にあるときには、マスク信号としてオン信号を出力する。これにより、マスク領域ＭＲ内で検出される原稿エッジについての位置座標のＳＲＡＭ１４０への登録を禁止する。
【０１５０】
従って、この画像読取装置１によれば、先行する原稿Ｐ０の後端エッジの位置座標を、目的とする原稿Ｐの先端エッジの位置座標と誤って検出し、ＳＲＡＭ１４０に登録してしまうのを抑制することができる。結果、ＳＲＡＭ１４０には、原稿Ｐの先端エッジの位置座標を表すものとして信頼性の高いデータを記憶させることができる。この信頼性の高いデータに基づけば、原稿Ｐのサイズや傾きを高精度に検出することができて、斜行補正処理や、その他の画像処理、例えば、原稿画像の抽出処理等を高精度に行うことができる。
【０１５１】
特に、本実施例によれば、原稿Ｐの搬送間隔Ｌが、基準線Ｃが通る地点で一定間隔Ｌｃに制御されること、及び、原稿Ｐが矩形状であり原稿エッジが直線状であることを利用して、マスク領域ＭＲを、主走査方向において上述したように左右区画の一方に限定するようにした。
【０１５２】
具体的には、基準線Ｃより、先頭ラインにおいて原稿エッジを表す画素を検出した側の区画にマスク領域ＭＲを設定するようにした。先行する原稿Ｐ０の後端エッジが原稿エッジ検出領域内にある場合には、原稿エッジ検出領域の先頭ラインに写る後端エッジの位置から原稿Ｐの左右の端側に向けて、後端エッジが連続して写っている可能性が非常に高い。従って、本実施例によれば、原稿Ｐの先端エッジがマスク領域内に入ってしまうのを抑えて、高精度に、原稿Ｐの先端エッジの位置座標を検出することができる。
【０１５３】
また、本実施例によれば、一度ＳＲＡＭ１４０に副走査方向位置Ｙを登録した主走査方向位置Ｘに関しては、参照画素が値「１」になっても、ＳＲＡＭ１４０での登録値を変更しないようにした。原稿Ｐ内には罫線や図形が存在する可能性があり、これらは、エッジ画像データにおいてエッジ点として現れる。従って、登録値を変更する場合には、原稿Ｐ内にある罫線等の影響を受けて、正しい原稿エッジの位置座標をＳＲＡＭ１４０に記憶することができなくなる。
【０１５４】
このように、本実施例によれば、原稿Ｐの先端エッジと誤検出される可能性のある先行する原稿Ｐ０の後端エッジ、及び、原稿Ｐの先端エッジと誤検出される可能性のある原稿Ｐ内の罫線等の影響を抑えて、高精度に原稿Ｐの先端エッジの位置座標を検出することができるので、非常に有用である。
【０１５５】
以上に、本発明の実施例について説明したが、本発明は上記実施例に限定されるものではなく、種々の態様を採ることができる。
例えば、先端エッジ判定部２７５は、先端エッジ検出フラグを値「０」から値「１」に切り替えた後において、値「１」を維持する構成にされなくてもよい。即ち、先端エッジ判定部２７５は、先端エッジ検出フラグを一度値「０」から値「１」に切り替えた後も、それまでと同様の上記規則で、先端エッジ検出フラグを値「０」と値「１」との間で切り替える構成にされてもよい。
【０１５６】
この場合、許可判定部２８９は、先端エッジ検出フラグが値「１」であり、且つ、参照画素の書込完了フラグが値「０」であるときに、書込許可信号として値「１」を書込制御部２８５に入力し、それ以外の場合には、書込許可信号として値「０」を書込制御部２８５に入力するように構成され得る。
【０１５７】
また、上記実施例では、原稿先端検出回路１３３の構成を、ハードウェア回路として詳細に説明したが、原稿先端検出回路１３３を含む原稿エッジ検出回路１３０によって実現される機能は、コンピュータによる情報処理によってソフトウェア的に実現することができる。特許請求の範囲に記載した文言のみによって特定される技術思想に含まれるあらゆる態様が本発明の実施形態である。
【０１５８】
最後に用語間の対応関係について説明する。ラインセンサ２０は、読取ユニットの一例に対応し、分離機構３０、搬送機構４０、駆動デバイス６０、動力伝達機構６５及び搬送制御部８７は、搬送ユニットの一例に対応する。原稿センサ７０は、検知ユニットの一例に対応し、メインユニット９０がＳ２２０において原稿エッジ検出領域の開始ライン及び終了ラインの位置を設定する動作は、決定ユニットの一例に対応する。エッジ検出処理回路１３１は、エッジ画像生成ユニットの一例に対応する。
【０１５９】
後端エッジ検出部２５０及びマスク信号生成部２６０は、マスク設定ユニットの一例に対応する。また、後端エッジ検出部２５０は、後端検出信号生成ユニットの一例に対応し、後端エッジ検出フラグは、後端検出信号の一例に対応し、マスク信号生成部２６０は、禁止ユニットの一例に対応する。
【０１６０】
この他、先端エッジ検出部２７０及び更新判定部２８０は、エッジ位置検出ユニット又は参照登録ユニットの一例に対応する。ＳＲＡＭ１４０は、記憶ユニットの一例に対応する。フラグ記憶部２８７Ａは、フラグ記憶ユニットの一例に対応し、許可判定部２８９は、判定ユニットの一例に対応し、書込制御部２８５は、登録ユニットの一例に対応し、書込完了フラグ管理部２８７は、フラグ設定ユニットの一例に対応する。
【符号の説明】
【０１６１】
１…画像読取装置、５…外部装置、２０…ラインセンサ、３０…分離機構、４０…搬送機構、４１…搬送ローラ、４５…排紙ローラ、６０…駆動デバイス、６５…動力伝達機構、７０…原稿センサ、８０…ＡＳＩＣ、８１…読取制御部、８３…データ処理部、８７…搬送制御部、９０…メインユニット、９９…通信インタフェース、１１０…スキャン回路、１２０…バイパス回路、１３０…原稿エッジ検出回路、１３１…エッジ検出処理回路、１３３…原稿先端検出回路、１４０…ＳＲＡＭ、１５０…斜行補正回路、１６０…画像処理回路、２１０…入力制御部、２２０…画素カウンタ、２３０…ラインカウンタ、２４０…バッファ、２５０…後端エッジ検出部、２５１…ライン判定部、２５２…後端位置記憶部、２５３…連続性判定部、２５４…区画判別部、２５５…後端エッジ判定部、２６０…マスク信号生成部、２６１…マスク領域設定部、２６３…マスク領域判定部、２７０…先端エッジ検出部、２７１…非先頭ライン判定部、２７３…連続性判定部、２７５…先端エッジ判定部、２８０…更新判定部、２８１…画素カウント値変更部、２８３…セレクタ、２８５…書込制御部、２８７…書込完了フラグ管理部、２８７Ａ…フラグ記憶部、２８９…許可判定部、２９０…完了通知部、３００…レジスタ、Ｃ…基準線、ＭＲ…マスク領域、Ｐ，Ｐ０…原稿。
【図１】
0006330506.tif 000002
【図２】
0006330506.tif 000003
【図３】
0006330506.tif 000004
【図４】
0006330506.tif 000005
【図５】
0006330506.tif 000006
【図６】
0006330506.tif 000007
【図７】
0006330506.tif 000008
【図８】
0006330506.tif 000009
【図９】
0006330506.tif 000010
【図１０】
0006330506.tif 000011