(57)【要約】【課題】原稿の側辺を高精度に検出可能な技術を提供する。【解決手段】読取システムでは、読取装置が搬送装置により副走査方向に搬送されて、支持面上の原稿が読み取られる。読取システムの制御装置は、搬送装置に読取装置を副走査方向に搬送させながら、読取装置に主走査方向の読取動作を繰り返し実行させる読取制御処理を実行する。制御装置は、読取制御処理の実行時に、読取装置の副走査方向への移動に伴って順に得られる読取画像データのそれぞれに関して、読取画像データにおける第一影領域及び第二影領域の主走査方向の長さの和が無原稿状態での和未満であるか否かを判定することにより（Ｓ５１０，Ｓ５２０）、対応する副走査方向の位置に、原稿の側辺が存在するか否かを判定する（Ｓ５３０，Ｓ５４０）。【選択図】図９
2020162036.tif 000002
【特許請求の範囲】
【請求項１】
矩形状の原稿を支持するように構成される透明な矩形状の支持面と、
前記支持面上の前記原稿を主走査方向に読み取るように構成される読取装置と、
前記読取装置を、前記支持面の下で副走査方向に搬送するように構成される搬送装置と、
前記支持面との間に前記原稿を挟みつつ前記支持面を上から覆うように構成される矩形状の白い原稿押さえを備えるカバーと、
前記搬送装置に前記読取装置を前記副走査方向に搬送させながら、前記読取装置に前記主走査方向の読取動作を繰り返し実行させる読取制御処理を実行することにより、前記主走査方向の読取画像データを前記読取装置から取得するように構成される制御装置と、
前記カバーが閉じられた状態であって前記原稿押さえと前記支持面との間に前記原稿が存在しない無原稿状態で、前記支持面の前記副走査方向に延びる第一辺及び第二辺に沿って存在する前記支持面上の前記原稿押さえによって覆われない影領域の前記主走査方向の長さの和に対応する基準値を記憶するように構成される記憶装置と、
を備え、
前記支持面の前記第一辺が、前記原稿を位置合わせするための辺として定められており、
前記制御装置は、前記原稿を読み取るための前記読取制御処理の実行時に、前記読取装置の前記副走査方向への移動に伴って順に得られる前記読取画像データのそれぞれに関して、前記読取画像データにおける前記第一辺側に存在する第一影領域及び前記第二辺側に存在する第二影領域の前記主走査方向の長さの和が前記無原稿状態での和未満であるか否かを、前記基準値に基づき判定することにより、対応する前記副走査方向の位置に、前記原稿の側辺が存在するか否かを判定する読取システム。
【請求項２】
請求項１記載の読取システムであって、
前記記憶装置は、前記基準値として、前記副走査方向における複数の位置のそれぞれに対応する個別基準値を記憶し、前記個別基準値は、対応する前記副走査方向の位置での前記無原稿状態における前記影領域の前記主走査方向の長さの和に対応する読取システム。
【請求項３】
請求項１又は請求項２記載の読取システムであって、
前記制御装置は、前記第一影領域及び前記第二影領域の前記主走査方向の長さの和が前記無原稿状態での和未満ではないと判定された場合には、前記読取画像データにおける前記第一影領域より前記第二辺側の領域において、前記原稿の側辺を探索することにより、対応する前記副走査方向の位置に、前記原稿の側辺が存在するか否かを判定する読取システム。
【請求項４】
請求項１〜請求項３のいずれか一項記載の読取システムであって、
前記制御装置は、前記順に得られる前記読取画像データのうち、前記第一影領域及び前記第二影領域の前記主走査方向の長さの和が前記無原稿状態での和未満ではないと判定された読取画像データ、及び、当該読取画像データに対応する前記副走査方向の位置より下流の読取画像に係る読取画像データのそれぞれに関しては、前記第一影領域より前記第二辺側の領域において、前記原稿の側辺を探索することにより、対応する前記副走査方向の位置に、前記原稿の側辺が存在するか否かを判定する読取システム。
【請求項５】
請求項３又は請求項４記載の読取システムであって、
前記制御装置は、前記読取画像データにおける前記第一影領域より前記第二辺側の領域では、前記原稿の側辺として、前記第一辺側に位置する前記原稿の第一の側辺と平行に延びる前記原稿の第二の側辺を探索する読取システム。
【請求項６】
請求項１〜請求項５のいずれか一項記載の読取システムであって、
前記制御装置は、
前記基準値と、前記読取画像データにおける前記第二影領域の前記主走査方向の長さとに基づき、前記無原稿状態における前記第一影領域の前記主走査方向の長さを算出し、
前記読取画像データにおける前記第一影領域の前記主走査方向の長さが前記算出した長さ未満であるか否かを判定することにより、前記第一影領域及び前記第二影領域の前記主走査方向の長さの和が前記無原稿状態での和未満であるか否かを判定する読取システム。
【請求項７】
請求項１〜請求項６のいずれか一項記載の読取システムであって、
前記制御装置は、前記第一影領域及び前記第二影領域の前記主走査方向の長さの和が前記無原稿状態での和未満であると判定した場合には、前記読取画像データにおける前記第一影領域と、前記主走査方向において前記第一影領域に隣接する領域と、の境界を、前記原稿の側辺に対応する位置として検出する読取システム。
【請求項８】
矩形状の原稿を支持するように構成される透明な矩形状の支持面と、
前記支持面上の前記原稿を主走査方向に読み取るように構成される読取装置と、
前記読取装置を、前記支持面の下で副走査方向に搬送するように構成される搬送装置と、
前記支持面との間に前記原稿を挟みつつ前記支持面を上から覆うように構成される矩形状の白い原稿押さえを備えるカバーと、
を備え、前記副走査方向に延びる前記支持面の第一辺が、前記原稿を位置合わせするための辺として定められた読取システムにおいて前記原稿を読み取るための読取方法であって、
前記搬送装置に前記読取装置を前記副走査方向に搬送させながら、前記読取装置に前記主走査方向の読取動作を繰り返し実行させる読取制御処理を実行することにより、前記主走査方向の読取画像データを前記読取装置から取得することと、
前記カバーが閉じられた状態であって前記原稿押さえと前記支持面との間に前記原稿が存在しない無原稿状態で、前記支持面の前記副走査方向に延びる前記第一辺及び第二辺に沿って存在する前記支持面上の前記原稿押さえによって覆われない影領域の前記主走査方向の長さの和に対応する基準値を記憶する記憶装置から、前記基準値を取得することと、
前記読取制御処理の実行時に、前記読取装置の前記副走査方向への移動に伴って順に得られる前記読取画像データのそれぞれに関して、前記読取画像データにおける前記第一辺側に存在する第一影領域及び前記第二辺側に存在する第二影領域の前記主走査方向の長さの和が前記無原稿状態での和未満であるか否かを、前記基準値に基づき判定することにより、対応する前記副走査方向の位置に、前記原稿の側辺が存在するか否かを判定することと、
を含む読取方法。
【請求項９】
矩形状の原稿を支持するように構成される透明な矩形状の支持面と、
前記支持面上の前記原稿を主走査方向に読み取るように構成される読取装置と、
前記読取装置を、前記支持面の下で副走査方向に搬送するように構成される搬送装置と、
前記支持面との間に前記原稿を挟みつつ前記支持面を上から覆うように構成される矩形状の白い原稿押さえを備えるカバーと、
を備え、前記副走査方向に延びる前記支持面の第一辺が、前記原稿を位置合わせするための辺として定められた読取システムのコンピュータに、
前記搬送装置に前記読取装置を前記副走査方向に搬送させながら、前記読取装置に前記主走査方向の読取動作を繰り返し実行させる読取制御処理を実行することにより、前記主走査方向の読取画像データを前記読取装置から取得することと、
前記カバーが閉じられた状態であって前記原稿押さえと前記支持面との間に前記原稿が存在しない無原稿状態で、前記支持面の前記副走査方向に延びる前記第一辺及び第二辺に沿って存在する前記支持面上の前記原稿押さえによって覆われない影領域の前記主走査方向の長さの和に対応する基準値を記憶する記憶装置から、前記基準値を取得することと、
前記読取制御処理の実行時に、前記読取装置の前記副走査方向への移動に伴って順に得られる前記読取画像データのそれぞれに関して、前記読取画像データにおける前記第一辺側に存在する第一影領域及び前記第二辺側に存在する第二影領域の前記主走査方向の長さの和が前記無原稿状態での和未満であるか否かを、前記基準値に基づき判定することにより、対応する前記副走査方向の位置に、前記原稿の側辺が存在するか否かを判定することと、
を実行させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、読取システム及び読取方法に関する。
【背景技術】
【０００２】
原稿を読み取るためのシステムとして、フラットベッド型の画像読取システムが既に知られている。原稿の読取中に、部分的な読取画像データに基づいて、原稿の頂点及び辺の位置を推定する技術も既に知られている（例えば、特許文献１参照）。この技術は、例えば、読取が必要な原稿の終端である原稿下端を速やかに特定するために使用される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−２９９９７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
読取過程における原稿の辺の検出は、原稿の傾きや原稿下端を推定するに役立つ。しかしながら、フラットベッド型の画像読取システムでは、プラテンガラス上の原稿を上から押さえる白い原稿押さえが、原稿の側辺の正確な検出を難しくする。
【０００５】
すなわち、従来では、原稿押さえの下に位置する原稿の側辺を、白い原稿押さえと白い原稿との境界にできる微小な影に基づいて検出していた。しかしながら、微小な影に基づく側辺の検出は、多くの失敗を生じさせていた。
【０００６】
そこで、本開示の一側面によれば、従来よりも高精度に、原稿の側辺を検出可能な技術を提供できることが望ましい。
【課題を解決するための手段】
【０００７】
本開示の一側面に係る読取システムは、透明な矩形状の支持面と、読取装置と、搬送装置と、カバーと、制御装置と、記憶装置と、を備える。支持面は、矩形状の原稿を支持するように構成される。
【０００８】
読取装置は、支持面上の原稿を主走査方向に読み取るように構成される。搬送装置は、読取装置を、支持面の下で副走査方向に搬送するように構成される。カバーは、矩形状の白い原稿押さえを備える。原稿押さえは、支持面との間に原稿を挟みつつ支持面を上から覆うように構成される。
【０００９】
制御装置は、読取制御処理を実行することにより、主走査方向の読取画像データを読取装置から取得するように構成される。読取制御処理は、搬送装置に読取装置を副走査方向に搬送させながら、読取装置に主走査方向の読取動作を繰り返し実行させる処理に対応する。
【００１０】
記憶装置は、基準値を記憶するように構成される。基準値は、無原稿状態で、支持面の第一辺及び第二辺に沿って存在する支持面上の原稿押さえによって覆われない影領域の主走査方向の長さの和に対応する。無原稿状態は、原稿押さえと支持面との間に原稿が存在しない状態でカバーが閉じられた状態に対応する。
【００１１】
支持面の第一辺及び第二辺は、支持面の副走査方向に延びる辺に対応する。本開示の一側面に係る読取システムでは、支持面の第一辺が、原稿を位置合わせするための辺として定められる。
【００１２】
制御装置は、原稿を読み取るための読取制御処理の実行時に、読取装置の副走査方向への移動に伴って順に得られる読取画像データのそれぞれに関して、読取画像データにおける第一影領域及び第二影領域の主走査方向の長さの和が無原稿状態での和未満であるか否かを、基準値に基づき判定する。これにより、制御装置は、対応する副走査方向の位置に、原稿の側辺が存在するか否かを判定する。第一影領域は、読取画像データにおいて支持面の第一辺側に存在する影領域であり、第二影領域は、読取画像データにおいて支持面の第二辺側に存在する影領域である。
【００１３】
上述した読取システムによれば、読取画像データにおける第一影領域及び第二影領域の主走査方向の長さの和と、無原稿状態での影領域の主走査方向の長さの和に対応する基準値とに基づき、原稿の側辺が存在するか否かが判定される。
【００１４】
従って、本開示の一側面に係る読取システムによれば、白い原稿押さえの下に位置する原稿の側辺を、白い原稿押さえと白い原稿との境界にできる微小な影に基づいて検出する従来システムと比較して、高精度に、原稿の側辺を検出することができる。
【００１５】
本開示の一態様によれば、読取方法が提供されてもよい。読取方法は、読取システムにおいて原稿を読み取るための方法であってもよい。読取システムは、透明な矩形状の支持面と、読取装置と、搬送装置と、カバーと、を備え得る。
【００１６】
支持面は、矩形状の原稿を支持するように構成され得る。読取装置は、支持面上の原稿を主走査方向に読み取るように構成され得る。搬送装置は、読取装置を、支持面の下で副走査方向に搬送するように構成され得る。カバーは、矩形状の白い原稿押さえを備え得る。読取システムでは、副走査方向に延びる支持面の第一辺が、原稿を位置合わせするための辺として定められ得る。
【００１７】
読取方法は、搬送装置に読取装置を副走査方向に搬送させながら、読取装置に主走査方向の読取動作を繰り返し実行させる読取制御処理を実行することにより、主走査方向の読取画像データを読取装置から取得することを含み得る。
【００１８】
読取方法は更に、記憶装置から、基準値を取得することを含み得る。記憶装置は、無原稿状態で、支持面の副走査方向に延びる第一辺及び第二辺に沿って存在する支持面上の原稿押さえによって覆われない影領域の主走査方向の長さの和に対応する基準値を記憶し得る。
【００１９】
読取方法は更に、読取制御処理の実行時に、読取装置の副走査方向への移動に伴って順に得られる読取画像データのそれぞれに関して、読取画像データにおける第一影領域及び第二影領域の主走査方向の長さの和が無原稿状態での和未満であるか否かを、基準値に基づき判定することにより、対応する副走査方向の位置に、原稿の側辺が存在するか否かを判定することを含み得る。
【００２０】
この読取方法によれば、本開示の一側面に係る読取システムと同様に、高精度に、原稿の側辺を検出することができる。本開示の一側面によれば、上述の読取方法をコンピュータに実行させるためのコンピュータプログラムが提供されてもよい。コンピュータプログラムは、コンピュータ読取可能な一時的でない記録媒体に記録されてもよい。
【図面の簡単な説明】
【００２１】
【図１】読取システムの内部構造を示す断面図である。
【図２】読取システムの電気的構成を表すブロック図である。
【図３】原稿押さえ及び原稿の支持面に対する配置に関する説明図である。
【図４】原稿が支持面に配置されたときの無原稿状態からの影領域の変化を説明した図である。
【図５】基準値を定義するテーブルの構成を表す図である。
【図６】メインコントローラが実行するメイン処理を表すフローチャートである。
【図７】メインコントローラが実行する解析処理を表すフローチャートである。
【図８】メインコントローラが実行する先端解析処理を表すフローチャートである。
【図９】メインコントローラが実行する影領域検出処理を表すフローチャートである。
【図１０】メインコントローラが実行する主エッジ検出処理を表すフローチャートである。
【図１１】メインコントローラが実行する第一エッジ検出処理を表すフローチャートである。
【図１２】原稿が傾いて支持面上に配置された状態を説明した図である。
【図１３】メインコントローラが実行する第二エッジ検出処理を表すフローチャートである。
【図１４】変形例の影領域検出処理を表すフローチャートである。
【発明を実施するための形態】
【００２２】
以下に、本開示の例示的実施形態を、図面を参照しながら説明する。
図１に示す本実施形態の読取システム１は、フラットベッド型のスキャナ装置として構成される。この読取システム１は、装置本体１０と、装置本体１０に対して開閉可能に設けられた本体カバー２０と、を備え、装置本体１０の上面が本体カバー２０により被覆されるように構成される。
【００２３】
装置本体１０は、読取システム１の主要な電気的及び／又は機械的要素を収容する筐体１１を備える。筐体１１は、装置本体１０の上面に対応する位置に、透明なプラテンガラス１３により覆われた窓を有する。
【００２４】
プラテンガラス１３は、筐体１１の内側から、筐体１１の窓を覆うように筐体１１に取り付けられる。これにより、プラテンガラス１３の一部は、装置本体１０の上面に露出するように配置される。プラテンガラス１３の露出した表面は、原稿Ｑを支持する支持面１５として機能する。支持面１５は、Ａ３又はＡ４サイズの原稿Ｑよりも大きな面積を有する矩形状の面である。
【００２５】
本体カバー２０は、支持面１５上に載置された原稿Ｑを、支持面１５との間に挟みつつ、支持面１５を上から覆うように構成された矩形板状の白い原稿押さえ２５を備える。原稿押さえ２５は、本体カバー２０が閉じられたときに装置本体１０の上面と対向する本体カバー２０の下面の一部に設けられる。
【００２６】
原稿押さえ２５は、本体カバー２０が閉じられたときに、支持面１５と、筐体１１の支持面１５の周囲を囲む部分とにより形作られる凹部に収容され、支持面１５と接触して、支持面１５の大半を上から覆う。
【００２７】
図２に示すように、読取システム１は、メインコントローラ３０と、ラインセンサ４０と、搬送装置５０と、読取コントローラ６０と、駆動コントローラ７０と、ユーザインタフェース８０と、通信インタフェース９０と、を更に装置本体１０に備える。
【００２８】
メインコントローラ３０は、ＣＰＵ３１と、ＲＯＭ３３と、ＲＡＭ３５と、ＮＶＲＡＭ３７とを備え、読取システム１の全体を統括制御するように構成される。ＣＰＵ３１は、ＲＯＭ３３に記録されたコンピュータプログラムに従う処理を実行するように構成される。
【００２９】
ＲＯＭ３３は、コンピュータプログラムを記憶する。ＲＡＭ３５は、ＣＰＵ３１による処理実行時に作業用メモリとして使用される。ＮＶＲＡＭ３７は、例えばＥＥＰＲＯＭ又はフラッシュメモリ等の、電気的にデータ書換可能な半導体製記憶装置で構成される。
【００３０】
ＮＶＲＡＭ３７には、各種データが記憶される。以下において説明するメインコントローラ３０が実行する処理は、詳細には、ＣＰＵ３１がＲＯＭ３３に記録されたコンピュータプログラムに従って実行すると理解されてよい。
【００３１】
ラインセンサ４０は、図１に示すように、筐体１１内でプラテンガラス１３の下方に配置され、支持面１５上に載置された原稿Ｑを主走査方向に光学的に読み取るように構成される。具体的に、ラインセンサ４０は、複数の受光素子が主走査方向に配列された構成にされる。主走査方向は、図１の紙面法線方向に対応する。
【００３２】
搬送装置５０は、プラテンガラス１３の下方で、ラインセンサ４０を支持面１５に沿って、副走査方向に搬送するように構成にされる。副走査方向は、支持面１５に平行な方向であって、主走査方向に直交する方向である。具体的に、搬送装置５０は、ラインセンサ４０が搭載されるキャリッジ５１と、一対のプーリ５３，５５と、ベルト５７と、モータ５９とを備える。
【００３３】
搬送装置５０において、ベルト５７は、プーリ５３，５５に巻回される。プーリ５５は、モータ５９の回転軸に設けられ、モータ５９の回転に伴って、回転する。プーリ５５が回転することにより、ベルト５７は回転し、それにより、ベルト５７に固定されたキャリッジ５１が副走査方向に移動する。
【００３４】
キャリッジ５１の移動により、ラインセンサ４０は、プラテンガラス１３の下方で、支持面１５に沿って、副走査方向に移動する。このように搬送装置５０は、ベルト機構により、ラインセンサ４０を副走査方向に搬送するように構成される。
【００３５】
読取コントローラ６０は、メインコントローラ３０からの指令を受けて、ラインセンサ４０の読取動作を制御するように構成される。読取コントローラ６０は更に、ラインセンサ４０からの入力信号をディジタル信号に変換して、主走査方向の読取画像データを、メインコントローラ３０に入力するように構成される。以下では、主走査方向に１ライン分の読取画像データのことを、ライン画像データとも表現する。
【００３６】
駆動コントローラ７０は、メインコントローラ３０からの指令を受けて、モータ５９を制御することにより、キャリッジ５１の副走査方向における位置及び移動速度を制御するように構成される。駆動コントローラ７０は、例えば、モータ５９の回転軸に設けられたロータリエンコーダ（図示せず）からの入力信号に基づき、キャリッジ５１の位置及び速度をフィードバック制御する。
【００３７】
ユーザインタフェース８０は、ユーザ向けの情報を表示可能、及び、ユーザからの操作を受付可能に構成される。ユーザインタフェース８０は、ユーザ向けの情報を表示するディスプレイ及びユーザからの操作を受け付ける入力装置を備えることができる。
【００３８】
通信インタフェース９０は、パーソナルコンピュータ等の外部装置と通信可能に構成される。通信インタフェース９０は、例えば、メインコントローラ３０からの指令に従って原稿Ｑの読取画像データを外部装置に送信したり、外部装置からの指令をメインコントローラ３０に入力したりするように構成される。
【００３９】
ところで、本実施形態の読取システム１では、原稿押さえ２５が支持面１５よりも若干小さい。このため、本体カバー２０が閉じられた状態であって、原稿Ｑが支持面１５に載置されていない無原稿状態では、支持面１５の四辺の近くに、原稿押さえ２５によって覆われない非被覆領域が現れる。この非被覆領域は、図３においてハッチングされた領域として例示される。
【００４０】
非被覆領域は、支持面１５の下方に位置するラインセンサ４０からは暗い影領域として見える。従って、ラインセンサ４０が支持面１５の下方から支持面１５を読み取ることにより生成されるライン画像データにおいては、非被覆領域に対応する画像領域が、黒い影領域として現れる。
【００４１】
例えば、支持面１５の副走査方向に沿う第一辺１５１と原稿押さえ２５の副走査方向に沿う第一辺２５１との間に対応するライン画像データ内の画像領域には、第一影領域が現れる。同様に、支持面１５の副走査方向に沿う第二辺１５２と原稿押さえ２５の副走査方向に沿う第二辺２５２との間に対応するライン画像データ内の画像領域には、第二影領域が現れる。以下では、ライン画像データの一群において、支持面１５の第一辺１５１に沿って現れる影領域のことを第一影領域と表現し、支持面１５の第二辺１５２に沿って現れる影領域のことを第二影領域と表現する。
【００４２】
ライン画像データの一群における第一影領域の主走査方向の長さは、図３において破線で囲まれた位置に原稿Ｑが配置され、その状態で本体カバー２０が閉じられたときに小さくなる。
【００４３】
図４には、支持面１５上に原稿Ｑが配置されたときの、第一影領域の主走査方向の長さＬ１２を示す。更に、比較対象として、無原稿状態であるときの第一影領域の主走査方向の長さＬ１１を示す。図４における直線Ｃ１は、原稿押さえ２５の第一辺２５１上に位置する。図４の例によれば、支持面１５上に原稿Ｑが配置されたときの第一影領域の長さＬ１２は、無原稿状態であるときの第一影領域の長さＬ１１よりも短い。
【００４４】
第一影領域の長さが短くなるのは、原稿押さえ２５によって覆われない支持面１５上の非被覆領域の一部が、原稿Ｑによって覆われるためである。本実施形態では、支持面１５の第一辺１５１の副走査方向上流側の端点が、原稿Ｑの位置合わせ用の基準角ＰＡとして定められている。このため、通常の使用において、読取システム１のユーザは、基準角ＰＡに、原稿Ｑの角を位置合わせするように、支持面１５上に原稿Ｑを配置する。
【００４５】
この位置合わせにより、支持面１５の第一辺１５１近くの原稿押さえ２５によって覆われない非被覆領域の一部は、原稿Ｑによって覆われる。原稿Ｑは通常白く、原稿Ｑによって覆われた支持面１５上の領域は、影領域を構成しなくなる。このため、第一影領域の長さは、無原稿状態よりも短くなる。
【００４６】
本実施形態では、このように、原稿Ｑが支持面１５上に載置されている場合には、第一影領域の長さが、無原稿状態での長さよりも短くなることを利用して、副走査方向の各位置における原稿Ｑの側辺の有無を判定する。
【００４７】
上記判定のために、メインコントローラ３０のＮＶＲＡＭ３７には、無原稿状態での第一及び第二影領域の長さの和Ｌｓを示すテーブルＴＢが記録される。
【００４８】
テーブルＴＢは、読取システム１に対応する製品の出荷前に生成され、ＮＶＲＡＭ３７に記録される。出荷前には、読取システム１において、無原稿状態での第一及び第二影領域の長さの和Ｌｓが、副走査方向における複数の位置において計測される。テーブルＴＢは、副走査方向における複数の位置のそれぞれでの、上記計測された無原稿状態での第一及び第二影領域の長さの和Ｌｓを表す。
【００４９】
図５は、テーブルＴＢが、副走査方向におけるＮ個の位置Ｙ［１］，Ｙ［２］，…，Ｙ［Ｎ］のそれぞれに対し、対応する位置での無原稿状態における第一及び第二影領域の長さの和Ｌｓ［１］，Ｌｓ［２］，…，Ｌｓ［Ｎ］の情報を有することを示している。以下においてテーブルＴＢが記憶する和Ｌｓのことを、基準値Ｌｓと表現する。テーブルＴＢは、例えばラインセンサ４０により読み取られるライン毎に個別の基準値Ｌｓを有し得る。メインコントローラ３０は、ＮＶＲＡＭ３７に記憶されたテーブルＴＢを参照して、上述の原理で原稿Ｑの側辺の有無を判定する。
【００５０】
続いて、メインコントローラ３０が実行する処理の詳細を説明する。メインコントローラ３０は、図６に示すメイン処理を繰り返し実行するように構成される。メインコントローラ３０がメイン処理を実行することにより、読取指示に基づく原稿Ｑの読取動作が実現される。
【００５１】
メイン処理において、メインコントローラ３０は、読取指示が入力されるまで待機する（Ｓ１１０）。読取指示は、ユーザインタフェース８０を通じてユーザから入力される。あるいは、読取指示は、通信インタフェース９０を通じて外部装置から入力される。
【００５２】
読取指示が入力されると（Ｓ１１０でＹｅｓ）、メインコントローラ３０は、読取制御処理を開始する（Ｓ１２０）。読取制御処理は、搬送装置５０にラインセンサ４０を副走査方向に搬送させながら、ラインセンサ４０に主走査方向の読取動作を繰り返し実行させる処理である。メインコントローラ３０は、駆動コントローラ７０を通じて搬送装置５０の搬送動作を制御し、読取コントローラ６０を通じてラインセンサ４０の読取動作を制御することができる。
【００５３】
読取制御処理の開始により、ラインセンサ４０は、副走査方向に移動しながら、主走査方向の読取動作を繰り返し実行する。これにより、読取コントローラ６０からメインコントローラ３０へは、読取動作毎に生成される各ラインのライン画像データが、ラインセンサ４０の副走査方向への移動に応じて読取対象領域の先頭ラインから順に入力される。メインコントローラ３０は、読取制御処理において、読取動作毎に読取コントローラ６０から入力されるライン画像データを、順次ＲＡＭ３５に格納する。
【００５４】
メインコントローラ３０は、読取制御処理の開始後、更に解析処理を開始する（Ｓ１３０）。解析処理では、ライン画像データの一群が解析される。メインコントローラ３０は、読取制御処理及び解析処理の開始後、原稿Ｑの下端までの読取動作が完了するまで読取制御処理を継続実行する（Ｓ１４０）。原稿Ｑの下端は、原稿Ｑの副走査方向の最下流地点に対応する。
【００５５】
メインコントローラ３０は、原稿Ｑの下端までの読取動作が完了すると、読取制御処理を終了して（Ｓ１５０）、メイン処理を終了する。メインコントローラ３０は、メイン処理の実行によって得られたライン画像データの一群に基づき、整形した原稿全体の読取画像データを生成及び出力する。整形は、原稿Ｑの傾き補正や原稿画像の抽出を含む。メインコントローラ３０は、整形した読取画像データを、例えば、通信インタフェース９０を通じて外部装置に出力する。あるいは、メインコントローラ３０は、ＮＶＲＡＭ３７に読取画像データを保存する。メインコントローラ３０は、上述のメイン処理を繰り返し実行することにより、読取指示毎に、原稿Ｑの読取制御を行う。
【００５６】
続いて、解析処理の詳細を、図７を用いて説明する。メインコントローラ３０は、Ｓ１３０で解析処理を開始すると、第一に図８に示す先端解析処理を実行する（Ｓ２１０）。
【００５７】
先端解析処理において、メインコントローラ３０は、支持面１５上の先端領域の読取が完了するまで待機し、先端領域の読取が完了すると、先端領域のライン画像データ群である先端画像データをＲＡＭ３５から読み出す（Ｓ３１０）。
【００５８】
先端領域は、支持面１５上の読取対象領域のうち、先頭ラインから所定ライン数、副走査方向下流に離れたラインまでの領域である。先端領域は、先端画像データに原稿Ｑの上辺及び側辺の一部が含まれるように定められる。例えば、先端領域は、先頭ラインから副走査方向に３ｃｍ離れた位置までの領域に定められる。
【００５９】
その後、メインコントローラ３０は、先端画像データを解析して、支持面１５上の原稿Ｑの傾き及び幅を算出する（Ｓ３２０）。ここでいう幅は、原稿Ｑの主走査方向に沿う辺の長さである。先端画像データを用いた原稿Ｑの傾き及び幅の算出方法は、出願人がこれまでに開示した技術に基づいて行うことができる。例えば、メインコントローラ３０は、先端画像データをエッジ画像データに変換し、エッジ画像データにおけるエッジ点群に対する近似直線を求めることにより、原稿Ｑの上辺の傾き及び幅を算出することができる。
【００６０】
Ｓ３２０での処理を終えると、メインコントローラ３０は、ＲＡＭ３５から基準ラインＣ２のライン画像データを処理対象データとして読み出す（Ｓ３３０）。基準ラインＣ２は、先端領域内に定められる。その後、メインコントローラ３０は、処理対象データに対する影領域検出処理を実行する（Ｓ３４０）。影領域検出処理の詳細は、図９に示される。
【００６１】
影領域検出処理を開始すると、メインコントローラ３０は、処理対象データにおける第一及び第二影領域の主走査方向の長さの和を算出する（Ｓ５１０）。基準ラインＣ２における和は、図４に示す長さＬ１２及び長さＬ１３の和である。
【００６２】
メインコントローラ３０は、処理対象データにおいて画素値が閾値未満の暗い領域を影領域と判別することができる。第一及び第二影領域は、支持面１５の第一辺１５１と原稿押さえ２５の第一辺２５１と間、及び、支持面１５の第二辺１５２と原稿押さえ２５の第二辺２５２との間に存在する。従って、メインコントローラ３０は、処理対象データにおいて予め定められた領域の画素値のみを参照して、第一影領域及び第二影領域を判別することができる。
【００６３】
Ｓ５１０での和の算出後、メインコントローラ３０は、算出された和が、処理対象データに対応する副走査方向の位置に対してテーブルＴＢが示す基準値Ｌｓ未満であるか否かを判断する（Ｓ５２０）。
【００６４】
メインコントローラ３０は、算出された和が基準値Ｌｓ未満であると判断すると（Ｓ５２０でＹｅｓ）。第一影領域の境界に原稿Ｑの側辺があると判定して（Ｓ５３０）、当該影領域検出処理を終了する。算出される和が基準値Ｌｓ未満であることは、影領域が無原稿状態から減ったことを意味し、それは、通常原稿Ｑに起因する。
【００６５】
メインコントローラ３０は、算出された和が基準値Ｌｓ未満ではないと判断すると（Ｓ５２０でＮｏ）、第一影領域の境界に原稿Ｑの側辺がないと判定して（Ｓ５４０）、当該影領域検出処理を終了する。
【００６６】
本実施形態では、上述したように、第一影領域及び第二影領域の長さの和を基準に、原稿Ｑの側辺の有無を判定する。この理由は、本体カバー２０を閉じる度に、原稿押さえ２５が微小に変位する可能性を考慮しているためである。
【００６７】
原稿押さえ２５が変位すると、無原稿状態でも、第一影領域の主走査方向の長さ、第二影領域の主走査方向の長さは変動する。これに対して、第一及び第二影領域の主走査方向の長さの和は、原稿押さえ２５及び支持面１５の寸法によって定まり、原稿押さえ２５の変位に依存しない。この理由で、本実施形態では、「和」と基準値Ｌｓとの比較により、原稿Ｑの側辺の有無を判定している。
【００６８】
Ｓ３４０での影領域検出処理を終了すると、メインコントローラ３０は、影領域検出処理において原稿Ｑの側辺があると判定したか否かに応じたモード選択を行う。すなわち、メインコントローラ３０は、原稿Ｑの側辺があると判定した場合には（Ｓ３５０でＹｅｓ）、原稿Ｑの側辺に対応するエッジ画素の検出モードとして、第一検出モードを選択する（Ｓ３６０）。原稿Ｑの側辺がないと判定した場合には（Ｓ３５０でＮｏ）、第二検出モードを選択する（Ｓ３７０）。
【００６９】
Ｓ３６０又はＳ３７０でのモード選択後、メインコントローラ３０は、エッジ検出対象領域先頭のライン画像データを、処理対象データとして読み出す（Ｓ３８０）。エッジ検出対象領域は、例えば、基準ラインＣ２より副走査方向下流の領域に定められる。
【００７０】
Ｓ３８０での読み出し後、メインコントローラ３０は、Ｓ３９０に移行し、図１０に示す主エッジ検出処理を実行する。主エッジ検出処理を開始すると、メインコントローラ３０は、選択された検出モードが第一検出モードであるか否かを判断する（Ｓ６１０）。メインコントローラ３０は、選択された検出モードが第一検出モードであると判断すると（Ｓ６１０でＹｅｓ）、Ｓ６２０に移行し、第二検出モードであると判断すると（Ｓ６１０でＮｏ）、Ｓ６６０に移行する。
【００７１】
Ｓ６２０において、メインコントローラ３０は、処理対象データに対する上述の影領域検出処理を実行する。この影領域検出処理において原稿Ｑの側辺があると判定された場合（Ｓ６３０でＹｅｓ）、メインコントローラ３０は、Ｓ６４０に移行し、原稿Ｑの側辺がないと判定された場合（Ｓ６３０でＮｏ）、Ｓ６５０に移行する。
【００７２】
Ｓ６４０において、メインコントローラ３０は、図１１に示す第一エッジ検出処理を実行する。第一エッジ検出処理において、メインコントローラ３０は、処理対象データにおける支持面１５の第一辺１５１側の端点である第一端点から、第二辺１５２側の端点である第二端点に向けて、順に画素を参照する。この参照により、メインコントローラ３０は、エッジ画素として、画素値が黒に対応する画素値から白に対応する画素値に切り替わる境界に対応する画素を探索する（Ｓ７１０）。
【００７３】
エッジ画素は、原稿Ｑの第一側辺に対応する。原稿Ｑの第一側辺は、原稿Ｑが有する副走査方向に沿う二つの側辺のうち、支持面１５の第一辺１５１側に位置する側辺である。メインコントローラ３０は、画素値と閾値との比較により、対応する画素がエッジ画素であるか否かを判断することができる。ここでは、エッジ画素を検出するための閾値として、影領域検出処理（Ｓ６２０）での閾値と同じ値を用いることができる。この場合、メインコントローラ３０は、処理対象データにおける第一影領域と、その隣接領域との境界を、エッジ画素として検出することができる。
【００７４】
メインコントローラ３０は、上記探索によりエッジ画素が検出されると（Ｓ７２０でＹｅｓ）、検出されたエッジ画素の位置を、原稿Ｑの第一側辺の位置として保存する（Ｓ７３０）。その後、第一エッジ検出処理を終了する。本実施形態においては、第一エッジ検出処理で上記エッジ画素が検出されない事象は基本的に発生しない。
【００７５】
Ｓ６５０に移行すると、メインコントローラ３０は、検出モードを、第一検出モードから、第二検出モードに切り替える。この切り替えは、例えば、図１２に示すように、原稿Ｑが傾いて配置されている場合に起こる。
【００７６】
図１２に示すように原稿Ｑが傾いている場合には、基準角ＰＡに近くにおいて、原稿Ｑの第一側辺が、原稿押さえ２５の第一辺２５１よりも支持面１５の第一辺１５１に近い位置にある。このため、Ｓ３５０では、原稿Ｑの側辺があると判定され、第一検出モードが選択される（Ｓ３６０）。
【００７７】
しかしながら、原稿Ｑの第一側辺は、その傾きにより、副走査方向下流において、原稿押さえ２５の第一辺２５１と交差する。更に下流において、原稿Ｑの第一側辺は、原稿押さえ２５の第一辺２５１よりも、原稿押さえ２５の内側に配置される。
【００７８】
従って、上記交差が生じる交差ラインＣ３より下流では、影領域検出処理（Ｓ６２０）において原稿Ｑの側辺がないと判定される。この判定に応じて、メインコントローラ３０は、Ｓ６５０に移行し、検出モードを、第一検出モードから第二検出モードに切り替える。
【００７９】
検出モードの切替後、メインコントローラ３０は、図１３に示す第二エッジ検出処理を実行する（Ｓ６６０）。第二エッジ検出処理において、メインコントローラ３０は、支持面１５の第二辺１５２側に位置する処理対象データの第二端点から第一端点に向けて、処理対象データの各画素を順に参照して、エッジ画素を探索する（Ｓ８１０）。
【００８０】
Ｓ８１０において、メインコントローラ３０は、エッジ画素として、画素値が白から黒に対応する値に切り替わった後、更に黒から白に対応する値に切り替わった地点に対応する画素を検出する。
【００８１】
Ｓ８１０では、黒と識別する画素値を、第一エッジ検出処理よりも、輝度の高い画素値に定めることができる。なぜなら、第二エッジ検出処理で黒と識別すべき画素は、白い原稿押さえ２５の下で原稿Ｑの第二側辺の近傍にできる微小な影に対応し、この微小な影が比較的明るいためである。ここでいう原稿Ｑの第二側辺は、原稿Ｑが有する副走査方向に沿う二つの側辺のうち、支持面１５の第二辺１５２側に位置する側辺である。
【００８２】
メインコントローラ３０は、Ｓ８１０における上記探索によりエッジ画素が検出されると（Ｓ８２０でＹｅｓ）、検出されたエッジ画素の位置を、原稿Ｑの第二側辺の位置として保存する（Ｓ８３０）。その後、第二エッジ検出処理を終了する。
【００８３】
メインコントローラ３０は、処理対象データにおいて、第二端点より所定画素数、第一端点側に進んだ画素まで参照してもエッジ画素が検出されない場合（Ｓ８２０でＮｏ）、エッジ画素の探索を終了する。そして、対応する副走査方向の位置に原稿Ｑの側辺がないと判定して（Ｓ８４０）、第二エッジ検出処理を終了する。
【００８４】
メインコントローラ３０は、Ｓ６４０における第一エッジ検出処理又はＳ６６０における第二エッジ検出処理を実行すると、主エッジ検出処理を終了する。第一エッジ検出処理及び第二エッジ検出処理において保存される原稿Ｑの側辺の位置は、ライン画像データの一群から、原稿Ｑの画像を抽出するのに利用される。
【００８５】
Ｓ３９０において上記主エッジ検出処理を終了すると、メインコントローラ３０は、Ｓ４００に移行し、エッジ画素の検出に成功したか否かを判断する（Ｓ４００）。そして、エッジ画素の検出に成功したと判断すると（Ｓ４００でＹｅｓ）、先端領域の最終ラインまでの主エッジ検出処理が終了したか否かを判断する（Ｓ４１０）。
【００８６】
Ｓ４１０において否定判断すると、メインコントローラ３０は、処理対象データを、副走査方向下流に隣接する次ラインのライン画像データに切り替えて、Ｓ３９０に移行する。すなわち、次ラインのライン画像データを処理対象データとしてＲＡＭ３５から読み出し（Ｓ４２０）、この処理対象データに対する主エッジ検出処理を実行する（Ｓ３９０）。
【００８７】
このようにして、メインコントローラ３０は、エッジ検出対象領域の先頭ラインから先端領域の終了ラインまでの各ラインに対する主エッジ検出処理を実行し、検出されたエッジ画素の位置を保存する。そして、先端領域の最終ラインまでの主エッジ検出処理を終了した場合（Ｓ４１０でＹｅｓ）、先端解析処理を終了する。
【００８８】
メインコントローラ３０は、主エッジ検出処理においてエッジ画素の検出に失敗した場合（Ｓ４００でＮｏ）、原稿Ｑのサイズを規定サイズに確定し（Ｓ４３０）、先端解析処理を終了する。
【００８９】
すなわち、メインコントローラ３０は、エッジ画素の検出に失敗した場合、それより下流のエッジ画素の検出を止めて、Ｓ３２０で算出した原稿Ｑの幅に対応する規格サイズの原稿Ｑが支持面１５に載置されているとみなし（Ｓ４３０）、先端解析処理を終了する。
【００９０】
Ｓ４３０の処理を実行するケースでは、原稿Ｑが規格サイズであるとの仮定下で、副走査方向における原稿Ｑの下端位置が推定され、推定された下端位置にラインセンサ４０が移動するまで、原稿Ｑの読取動作が繰返し実行される。
【００９１】
メインコントローラ３０は、Ｓ２１０において先端解析処理を終了すると、続くＳ２２０において、主エッジ検出処理の終了条件が満足されたか否かを判断する（Ｓ２２０）。先端解析処理においてＳ４３０の処理を実行した場合、メインコントローラ３０は、Ｓ２２０で肯定判断する。
【００９２】
この他、メインコントローラ３０は、Ｓ２４０で実行される主エッジ検出処理において、エッジ画素が検出されなくなり（Ｓ８２０でＮｏ）、原稿Ｑの側辺がないと判定されると（Ｓ８４０）、原稿Ｑの下端までの読取動作が完了したとみなし、Ｓ２２０で肯定判断する。Ｓ２２０で肯定判断すると、メインコントローラ３０は、図７における解析処理を終了する。
【００９３】
メインコントローラ３０は、Ｓ２２０において否定判断すると、前回の主エッジ検出処理（Ｓ３９０，Ｓ２４０）の処理対象データに対応するラインの次ラインのライン画像データを、ＲＡＭ３５から新たな処理対象データとして読み出す（Ｓ２３０）。そして、当該新たな処理対象データに対する主エッジ検出処理を実行する（Ｓ２４０）。
【００９４】
このようにして、メインコントローラ３０は、終了条件が満足されるまで、ライン毎に主エッジ検出処理を実行し（Ｓ２３０，Ｓ２４０）、終了条件が満足されると（Ｓ２２０でＹｅｓ）、解析処理を終了する。
【００９５】
以上に、本実施形態の読取システム１について説明した。本実施形態によれば、上述したように、ライン毎に、対応するライン画像データにおける第一影領域及び第二影領域の主走査方向の長さの和と基準値Ｌｓとの比較に基づき、対応する副走査方向の位置に、原稿Ｑの側辺が存在するか否かが判定される（Ｓ５３０，Ｓ５４０）。
【００９６】
従来では、白い原稿押さえ２５の下に位置する原稿Ｑの側辺を、白い原稿押さえ２５と白い原稿Ｑとの境界にできる微小な影に基づいて検出していた。しかしながら、この方法では、影の薄さにより側辺が検出されない可能性、及び、側辺を誤検出する可能性が高かった。
【００９７】
これに対して、本実施形態のように第一及び第二影領域の和に基づいて原稿Ｑの側辺の有無を判定する手法によれば、従来のような誤検出や未検出が生じにくく、良好に原稿Ｑの側辺の有無を判定することができる。
【００９８】
勿論、上述した手法は、原稿Ｑが支持面１５の基準角ＰＡや第一辺１５１に位置合わせされ、原稿Ｑの第一側辺が原稿押さえ２５の第一辺２５１よりも支持面１５の第一辺１５１側にある場合にのみ有効である。しかしながら、このように限られた条件でも高精度に原稿Ｑの側辺の有無を判定し、高精度に原稿Ｑの側辺の位置を検出できることは、非常に有意義である。
【００９９】
本実施形態では、特に、原稿押さえ２５のサイズ及び形状に個体差があるがあることも考慮して、ＮＶＲＡＭ３７には、副走査方向における複数の位置のそれぞれに対応する基準値Ｌｓを記憶する。従って、基準値Ｌｓに基づく原稿Ｑの側辺の有無の判定を、高精度に行うことができる。
【０１００】
この他、本実施形態では、和が基準値Ｌｓ以上であるときには、第二エッジ検出処理を実行することにより、原稿Ｑの第二側辺に対応するエッジ画素を探索し、検出されたエッジ画素の位置を、原稿Ｑの側辺の位置として保存する。
【０１０１】
第二エッジ検出処理によってもエッジ画素が検出されなかった場合には、原稿Ｑの下端までの読取が完了し、対応するラインには原稿Ｑの側辺がないと判定する。この判定は、原稿Ｑの読取動作の終了の契機となる。従って、本実施形態では、原稿Ｑの下端より下流の不要な読取動作を実行せずに、迅速に原稿Ｑの読取動作を完了することができる。
【０１０２】
本実施形態では、影領域検出処理によって原稿Ｑの側辺がないと判定されたラインでは、検出モードを第二検出モードに切り替えて（Ｓ６５０）、そのラインよりも副走査方向下流のラインにおいては、影領域検出処理（Ｓ６２０）を実行せずに、第二エッジ検出処理（Ｓ６６０）を実行することも有意義である。すなわち、本実施形態では、原稿Ｑの配置に応じて効率よく原稿Ｑの側辺に対応するエッジ画素を検出することができる。
【０１０３】
本開示が、上述した実施形態に限定されるものではなく、種々の態様を採り得ることは言うまでもない。例えば、メインコントローラ３０は、図９に示す影領域検出処理に代えて、図１４に示す影領域検出処理を実行してもよい。
【０１０４】
メインコントローラ３０は、図１４に示す影領域検出処理を開始すると、処理対象データの各画素を、第二端点から第一端点側に順に参照して、Ｓ９１１〜Ｓ９１５の処理を実行する。
【０１０５】
Ｓ９１１において、メインコントローラ３０は、処理対象データにおける第二影領域の主走査方向の長さを算出する。Ｓ９１３では、無原稿状態における第一影領域の主走査方向の長さを推定する。具体的に、メインコントローラ３０は、処理対象データに対応する基準値ＬｓをＮＶＲＡＭ３７から読み出し、基準値ＬｓからＳ９１１で算出した長さを減算することにより、第一影領域の主走査方向の長さを推定する。
【０１０６】
Ｓ９１５において、メインコントローラ３０は、処理対象データにおける第一影領域の主走査方向の長さを算出する。その後、メインコントローラ３０は、Ｓ９１５で算出した長さが、Ｓ９１３での推定値未満であるか否かを判断する（Ｓ９２０）。
【０１０７】
メインコントローラ３０は、Ｓ９２０で肯定判断すると、第一影領域の境界に原稿Ｑの側辺があると判定して（Ｓ９３０）、影領域検出処理を終了する。一方、Ｓ９２０で否定判断すると、第一影領域の境界に原稿Ｑの側辺がないと判定して（Ｓ９４０）、影領域検出処理を終了する。
【０１０８】
すなわち、図１４に示す例では、Ｓ９２０での判断により、処理対象データにおける第一及び第二影領域の主走査方向の長さの和が基準値Ｌｓ未満であるか否かを判断する。図１４に示す例によっても、上述した実施形態と同様の効果を得ることができる。
【０１０９】
本開示の技術は、スキャナ機能を有するディジタル複合機に適用されてもよい。上記実施形態における１つの構成要素が有する機能は、複数の構成要素に分散して設けられてもよい。複数の構成要素が有する機能は、１つの構成要素に統合されてもよい。上記実施形態の構成の一部は、省略されてもよい。上記実施形態の構成の少なくとも一部は、他の上記実施形態の構成に対して付加又は置換されてもよい。特許請求の範囲に記載の文言から特定される技術思想に含まれるあらゆる態様が本開示の実施形態である。
【符号の説明】
【０１１０】
１…読取システム、１０…装置本体、１１…筐体、１３…プラテンガラス、１５…支持面、２０…本体カバー、２５…原稿押さえ、３０…メインコントローラ、３１…ＣＰＵ、３３…ＲＯＭ、３５…ＲＡＭ、３７…ＮＶＲＡＭ、４０…ラインセンサ、５０…搬送装置、６０…読取コントローラ、７０…駆動コントローラ、８０…ユーザインタフェース、９０…通信インタフェース、ＰＡ…基準角、Ｑ…原稿、ＴＢ…テーブル。
【図１】
2020162036.tif 000003
【図２】
2020162036.tif 000004
【図３】
2020162036.tif 000005
【図４】
2020162036.tif 000006
【図５】
2020162036.tif 000007
【図６】
2020162036.tif 000008
【図７】
2020162036.tif 000009
【図８】
2020162036.tif 000010
【図９】
2020162036.tif 000011
【図１０】
2020162036.tif 000012
【図１１】
2020162036.tif 000013
【図１２】
2020162036.tif 000014
【図１３】
2020162036.tif 000015
【図１４】
2020162036.tif 000016