JP2019161430A - 画像読取装置 - Google Patents
画像読取装置 Download PDFInfo
- Publication number
- JP2019161430A JP2019161430A JP2018045127A JP2018045127A JP2019161430A JP 2019161430 A JP2019161430 A JP 2019161430A JP 2018045127 A JP2018045127 A JP 2018045127A JP 2018045127 A JP2018045127 A JP 2018045127A JP 2019161430 A JP2019161430 A JP 2019161430A
- Authority
- JP
- Japan
- Prior art keywords
- data
- line
- black
- pixels
- determined
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Image Input (AREA)
- Facsimile Scanning Arrangements (AREA)
- Facsimile Image Signal Circuits (AREA)
Abstract
【課題】黒データが飽和した場合に、外光の影響のない黒基準データを算出できない。【解決手段】 原稿台と、光源と、ラインデータを生成する読取部と、黒基準データに基づき黒補正する黒補正部と、制御部と、を備え、制御部は、飽和データを取得する飽和データ取得処理と、第1ライン周期で第1黒データを取得する第1黒データ取得処理と、第2ライン周期で第2黒データを取得する第2黒データ取得処理と、飽和データに基づき第2黒データが飽和しているか否かを判断する飽和判断処理と、第2ライン周期より短い第3ライン周期で第3黒データを取得する第3黒データ取得処理と、第2黒データが飽和していない場合に、第1黒データと第2黒データとに基づき黒基準データを決定し、飽和している場合に、第1黒データと第3黒データとに基づき黒基準データを決定する黒基準データ決定処理と、黒基準データに基づき黒補正させる読取処理とを実行する。【選択図】図8
Description
本発明は、画像読取装置に関する。
光源を消灯したときにラインセンサで読み取らせた画像データを黒基準データとして取得して黒補正する画像読取装置が知られている。この様な画像読取装置において、黒基準データを取得するときに装置外部から外光が入射すると、黒基準データが変動してしまう問題がある。
特許文献1に記載の画像処理装置は、短時間蓄積したときに取得した黒データと、長時間蓄積したときに取得した黒データと、短時間蓄積したときの蓄積時間と、長時間蓄積したときの蓄積時間とから外光の影響のない黒基準データを算出する。
しかしながら、長時間蓄積したときに取得した黒データが装置外部からの外光により飽和してしまうと、長時間蓄積したときに取得した黒データが、長時間蓄積したときの外光の影響が全く反映されていない飽和した黒データとなってしまうために、特許文献1に記載の画像処理装置は、精度良く外光の影響のない黒基準データを算出できない。
そこで、本発明は上述した事情に鑑みてなされ、長時間蓄積したときに取得した黒データが飽和する場合でも、外光の影響のない黒基準データを決定することができる画像読取装置を提供することを目的とする。
上記目的を達成するために、請求項1に記載の発明態様では、画像読取装置は、原稿を支持する原稿台と、光を照射する光源と、ライン周期の期間に入射される光を光電変換することにより主走査方向に沿った1ラインの複数の画素のラインデータを生成する読取部と、黒基準データに基づき前記ラインデータを黒補正する黒補正部と、制御部と、を備え、前記制御部は、前記読取部が生成する前記ラインデータの上限値である1ラインの飽和データを取得する飽和データ取得処理と、前記光源を消灯させて予め定められた第1ライン周期で前記読取部により生成させた前記ラインデータを1ラインの第1黒データとして取得する第1黒データ取得処理と、前記光源を消灯させて前記第1ライン周期より長い予め定められた第2ライン周期で前記読取部により生成させた前記ラインデータを1ラインの第2黒データとして取得する第2黒データ取得処理と、1ライン中の前記複数の画素の各画素において、前記飽和データに基づき前記第2黒データが飽和しているか否かを判断する飽和判断処理と、1ライン中の前記複数の画素のいずれかの画素において前記第2黒データが飽和していると判断された場合に、前記光源を消灯させて前記第1ライン周期より長く前記第2ライン周期より短い第3ライン周期で前記読取部により生成させた前記ラインデータを第3黒データとして取得する第3黒データ取得処理と、1ライン中の前記複数の画素のいずれの画素においても前記第2黒データが飽和していないと判断された場合に、前記第1黒データと前記第2黒データとに基づき黒基準データを決定し、1ライン中の前記複数の画素のいずれかの画素において前記第2黒データが飽和していると判断された場合に、前記第1黒データと前記第3黒データとに基づき黒基準データを決定する黒基準データ決定処理と、前記原稿台に支持された原稿へ前記光源から光を照射させて前記第1ライン周期で前記読取部により生成させた前記ラインデータを前記黒基準データ決定処理で決定した前記黒基準データに基づき黒補正させる読取処理とを実行する。
請求項2に記載の具体的態様では、前記第3黒データ取得処理は、1ライン中の前記複数の画素のいずれかの画素において前記第2黒データが飽和していると判断された場合に、1ライン中の前記複数の画素の全ての画素において前記光源を消灯させて前記第3ライン周期で前記読取部により生成させた前記ラインデータが前記飽和データより小さくなるように前記第3ライン周期を設定する周期設定処理を含む。
請求項3に記載の具体的態様では、前記黒基準データ決定処理は、1ライン中の前記複数の画素のいずれの画素においても前記第2黒データが飽和していないと判断された場合に、1ライン中の前記複数の画素の各画素において前記第2黒データから前記第1黒データを引き算することにより黒差分を算出し、1ライン中の前記複数の画素のいずれかの画素において前記第2黒データが飽和していると判断された場合に、1ライン中の前記複数の画素の各画素において前記第3黒データから前記第1黒データを引き算することにより黒差分を算出する黒差分算出処理と、1ライン中の前記複数の画素のいずれの画素においても前記第2黒データが飽和していないと判断された場合に、前記第2ライン周期から前記第1ライン周期を引き算することにより周期差分を算出し、1ライン中の前記複数の画素のいずれかの画素において前記第2黒データが飽和していると判断された場合に、前記第3ライン周期から前記第1ライン周期を引き算することにより周期差分を算出する周期差分算出処理と、1ライン中の前記複数の画素の各画素において前記黒差分を前記周期差分で割り算した値に前記第1ライン周期を掛け算し、掛け算した値を前記第1黒データから引き算することにより前記黒基準データを決定する黒基準データ算出処理とを含む。
請求項4に記載の具体的態様では、画像読取装置は、白色を有する基準部材と、前記読取部を主走査方向と直交する副走査方向に移動させる移動部と、を備え、前記飽和データ取得処理は、前記移動部により前記読取部を前記基準部材と対向する位置に移動させ、前記光源から最大光量の光で前記基準部材を照射させる最大照射処理と、前記最大光量の光で前記基準部材を照射させて前記第1ライン周期以上の長さである第4ライン周期で前記読取部により生成させた前記ラインデータを1ラインの第1データとして取得する第1データ取得処理と、前記最大光量の光で前記基準部材を照射させて前記第4ライン周期より長い第5ライン周期で前記読取部により生成させた前記ラインデータを1ラインの第2データとして取得する第2データ取得処理と、を含み、1ライン中の前記複数の画素の各画素において前記第1データが前記第2データと同じ値である場合に、前記第2データを前記飽和データとして取得し、1ライン中の前記複数の画素の各画素において前記第1データが前記第2データと同じ値でない場合に、前記第4ライン周期および前記第5ライン周期をより長く設定して、再度前記第1データ取得処理と前記第2データ取得処理とを実行させる。
請求項5に記載の具体的態様では、前記飽和判断処理は、1ライン中の前記複数の画素のいずれかの画素において前記第2黒データが前記飽和データと同じ値である場合に、前記第2黒データが飽和していると判断し、1ライン中の前記複数の画素のいずれの画素においても前記第2黒データが前記飽和データと同じ値でない場合に、前記第2黒データが飽和していないと判断する。
請求項6に記載の具体的態様では、前記制御部は、前記1ラインの第1黒データと前記1ラインの第2黒データとに基づき外光が入射したか否かを判断する外光判断処理を実行し、飽和判断処理は、外光が入射したと判断された場合に、1ライン中の前記複数の画素の各画素において前記飽和データに基づき前記第2黒データが飽和しているか否かを判断し、黒基準データ決定処理は、外光が入射していないと判断された場合に、前記1ラインの第1黒データを黒基準データとして決定し、1ライン中の前記複数の画素のいずれの画素においても前記第2黒データが飽和していないと判断された場合に、前記第1黒データと前記第2黒データとに基づき黒基準データを決定し、1ライン中の前記複数の画素のいずれかの画素において前記第2黒データが飽和していると判断された場合に、前記第1黒データと前記第3黒データとに基づき黒基準データを決定する。
請求項7に記載の具体的態様では、前記外光判断処理は、1ライン中の前記複数の画素の各画素において前記第2黒データから前記第1黒データを引き算し、引き算した各画素の値のうちで最も大きい値を最大差分として決定する最大差分算出処理を含み、前記最大差分が閾値以上である場合に、外光が入射したと判断し、前記最大差分が前記閾値より小さい場合に、外光が入射していないと判断し、前記閾値は、同じ光量の光が入射したときに前記読取部が生成する前記ラインデータが変動する下限値と上限値との差である変動値の1.5倍の値である。
請求項1に記載の発明態様では、第3黒データ取得処理は、第2黒データが飽和していると判断された場合に、光源を消灯させて第1ライン周期より長く第2ライン周期より短い第3ライン周期で読取部により生成させたラインデータを第3黒データとして取得する。黒基準データ決定処理は、第2黒データが飽和していないと判断された場合に、第1黒データと第2黒データとに基づき黒基準データを決定し、第2黒データが飽和していると判断された場合に、第1黒データと第3黒データとに基づき黒基準データを決定する。よって、黒基準データ決定処理は、第2黒データが飽和していないと判断された場合に、第1黒データと第2黒データとに基づき黒基準データを決定し、第2黒データが飽和していると判断された場合に、第1黒データと第3黒データとに基づき黒基準データを決定するため、第2黒データが飽和している場合でも、外光の影響のない黒基準データを決定することができる。
請求項2に記載の具体的態様では、周期設定処理は、第2黒データが飽和していると判断された場合に、光源を消灯させて第3ライン周期で読取部により生成させたラインデータが飽和データより小さくなるように第3ライン周期を設定する。よって、周期設定処理は、ラインデータが飽和データより小さくなるように第3ライン周期を設定するため、飽和していない第3黒データと第1黒データとに基づき外光の影響のない黒基準データを決定することができる。
請求項3に記載の具体的態様では、黒差分算出処理は、第2黒データが飽和していないと判断された場合に、第2黒データから第1黒データを引き算することにより黒差分を算出し、第2黒データが飽和していると判断された場合に、第3黒データから第1黒データを引き算することにより黒差分を算出する。周期差分算出処理は、第2黒データが飽和していないと判断された場合に、第2ライン周期から第1ライン周期を引き算することにより周期差分を算出し、第2黒データが飽和している判断された場合に、第3ライン周期から第1ライン周期を引き算することにより周期差分を算出する。黒基準データ算出処理は、黒差分を周期差分で割り算した値に第1ライン周期を掛け算し、掛け算した値を第1黒データから引き算することにより黒基準データを決定する。よって、黒基準データ算出処理は、黒差分を周期差分で割り算した値に第1ライン周期を掛け算し、掛け算した値を第1黒データから引き算するため、精度良く外光の影響のない黒基準データを決定することができる。
請求項4に記載の具体的態様では、飽和データ取得処理は、第1データが第2データと同じ値である場合に、第2データを飽和データとして取得し、第1データが第2データと同じ値でない場合に、第4ライン周期および第5ライン周期をより長く設定して、再度第1データ取得処理と第2データ取得処理とを実行させる。よって、第1データが第2データと同じ値である場合に、第2データを飽和データとして取得し、第1データが第2データと同じ値でない場合に、第4ライン周期および第5ライン周期をより長く設定して、再度第1データ取得処理と第2データ取得処理とを実行させるため、ラインデータの上限値である飽和データを精度良く取得することができる。
請求項5に記載の具体的態様では、飽和判断処理は、第2黒データが飽和データと同じ値である場合に、第2黒データが飽和していると判断し、第2黒データが飽和データと同じ値でない場合に、第2黒データが飽和していないと判断する。よって、第2黒データが飽和データと同じ値である場合に、第2黒データが飽和していると判断するため、精度良く第2黒データが飽和していると判断することができる。
請求項6に記載の具体的態様では、黒基準データ決定処理は、外光が入射していないと判断された場合に、第1黒データを黒基準データとして決定し、第2黒データが飽和していないと判断された場合に、第1黒データと第2黒データとに基づき黒基準データを決定し、第2黒データが飽和していると判断された場合に、第1黒データと第3黒データとに基づき黒基準データを決定する。よって、黒基準データ決定処理は、外光が入射していないと判断された場合に、第1黒データを黒基準データとして決定するため、外光が入射していない場合には、速く黒基準データを決定することができる。
請求項7に記載の具体的態様では、外光判断処理は、最大差分が閾値以上である場合に、外光が入射したと判断し、最大差分が閾値より小さい場合に、外光が入射していないと判断する。閾値は、同じ光量の光が入射したときに読取部が生成するラインデータが変動する下限値と上限値との差である変動値の1.5倍の値である。よって、最大差分が変動値の1.5倍の値である閾値以上である場合に、外光が入射したと判断するため、精度良く外光が入射したか否かを判断することができる。
<画像読取装置SMの構成>
図面を参照して本実施形態における画像読取装置SMの構成について説明する。図1は、画像読取装置SMの正面図を示す。図2は、原稿載置台DTを上から見た上面図を示す。以下の説明において、図1の右方向を副走査方向SDの下流、図2の下方向を主走査方向MDの下流、図2の右方向を副走査方向SDの下流として説明する。
図面を参照して本実施形態における画像読取装置SMの構成について説明する。図1は、画像読取装置SMの正面図を示す。図2は、原稿載置台DTを上から見た上面図を示す。以下の説明において、図1の右方向を副走査方向SDの下流、図2の下方向を主走査方向MDの下流、図2の右方向を副走査方向SDの下流として説明する。
画像読取装置SMは、原稿載置台DTと、原稿押え板CVと、を備える。原稿載置台DTは、本体MBと、透明板TPと、カバーセンサ39と、を備える。本体MBは、様々な部材(例えば、透明板TP、読取部20等)を収容するための筐体である。透明板TPは、図2に一点鎖線で示すように、本体MBに収容されており、本体MBに固定される。透明板TPは、読取対象の原稿GSを支持する。原稿押え板CVは、本体MBの奥側(図1の紙面に垂直方向の奥側、図2の上側)に回動軸28を備え、本体MBの手前側(図1の紙面に垂直方向の手前側、図2の下側)から開閉される。カバーセンサ39は、原稿押え板CVが原稿載置台DTを覆っている閉塞状態のときにオンし、原稿押え板CVが原稿載置台DTを覆っていない開放状態のときにオフする。
画像読取装置SMは、さらに、透明板TPの下方で本体MBに収容される読取部20を備える。読取部20は、本体MBに対して副走査方向SD(即ち図1の左右方向)に沿って移動可能である。読取部20は、透明板TPに支持される原稿GSの読取動作を実行する。読取部20は、CIS(Contact Image Sensorの略で、密着型イメージセンサ)で構成され、具体的には、光源21と、ロッドレンズ24と、受光部22と、を備える。光源21は、緑色の発光ダイオードなどで構成され、透明板TPに向けて、光を照射する。ロッドレンズ24は、主に光源21から照射される光の反射光を受光部22に結像する。
受光部22は、主走査方向MDに配列される2600個の光電変換素子23を含み、図示しないアナログシフトレジスタ、および増幅器を内蔵する。各光電変換素子23の出力は、主走査方向MDの各画素における受光量である。光電変換素子23の先頭画素は、受光量の信号が最初に出力され、図2に図示する主走査方向MDの最も上流に位置する画素である。光電変換素子23の最終画素は、受光量の信号が最後に出力され、図2に図示する主走査方向MDの最も下流に位置する画素である。本実施形態では、1ラインは、この主走査方向MDの先頭画素から最終画素までの画素で構成される画素群である。後述する画素番号PNは、出力される順番を示しており、先頭画素の画素番号PNは「1」であり、最終画素の画素番号PNは「2600」である。
図2において、原稿載置台DTの上面は、本体MBの上面と、透明板TPが原稿押え板CV側に露出した面とを有する。本体MBにおいて、回動軸28が主走査方向MDの上流側に配置される。透明板TPは、図2に一点鎖線で示すように、副走査方向SDに沿って伸びる長辺と、主走査方向MDに沿って伸びる短辺と、によって構成される矩形形状を有する。透明板TPの原稿押え板CV側に露出する面は、図2において実線で示される。原稿GSは、基準位置BPを基点として透明板TPに載置される。回動軸28は、原稿押え板CVを開閉するときに回動する軸であり、本体MBの主走査方向MDの上流側に2カ所配置される。
透明板TPの原稿押え板CV側に露出する面のうち主走査方向MDの最も上流の位置であり、且つ副走査方向SDの最も上流の位置が基準位置BPの位置である。透明板TPの原稿押え板CV側に露出する面のうち副走査方向の最も下流の位置が読取終了位置SRPである。画像読取装置SMは、副走査方向SDにおける基準位置BPから読取終了位置SRPまでの範囲を読取範囲として原稿GSの画像を読み取る。副走査方向SDにおける基準位置BPに対応する位置が先頭ラインの副走査方向SDの位置である。
画像読取装置SMは、さらに、透明板TPの上面に固定される基準部材BMを備える。基準部材BMは、透明板TPの副走査方向SDの上流側(即ち図2の左側)の端部に設けられる。基準部材BMは、主走査方向MDに沿って伸びる白色の基準濃度の部材である。基準部材BMは、後述する電源投入時処理における処理DA2、および処理DA5、および後述する読取メイン処理における処理R4において第1データDT1、第2データDT2、および白基準データWHDが取得されるときに、読み取られる。副走査方向SDにおいて、基準部材BM上の位置が、ホーム位置HPである。読取部20は、ホーム位置HPを基準として、副走査方向SDに沿って移動可能に構成される。
<画像読取装置SMの電気的構成>
画像読取装置SMの電気的構成について図3を参照して説明する。図3において、画像読取装置SMは、CPU30、ROM31、RAM32、フラッシュROM33、デバイス制御部34、アナログフロントエンド(以下、AFEという)35、画像処理部36、および駆動回路37を主な構成要素として備える。これらの構成要素は、バス38を介して、操作機構OM、表示機構DM、およびカバーセンサ39に接続される。操作機構OMは、開始ボタンおよび決定ボタン等の複数のキーによって構成される。ユーザは、操作機構OMを操作することによって、様々な指示を画像読取装置SMに入力することができる。表示機構DMは、様々な情報を表示するためのディスプレイである。カバーセンサ39は、原稿押え板CVが閉塞状態のときにオンし、開放状態のときにオフする。
画像読取装置SMの電気的構成について図3を参照して説明する。図3において、画像読取装置SMは、CPU30、ROM31、RAM32、フラッシュROM33、デバイス制御部34、アナログフロントエンド(以下、AFEという)35、画像処理部36、および駆動回路37を主な構成要素として備える。これらの構成要素は、バス38を介して、操作機構OM、表示機構DM、およびカバーセンサ39に接続される。操作機構OMは、開始ボタンおよび決定ボタン等の複数のキーによって構成される。ユーザは、操作機構OMを操作することによって、様々な指示を画像読取装置SMに入力することができる。表示機構DMは、様々な情報を表示するためのディスプレイである。カバーセンサ39は、原稿押え板CVが閉塞状態のときにオンし、開放状態のときにオフする。
ROM31は、後述する電源投入時処理、読取メイン処理、および各メイン処理中のサブルーチンの処理など、画像読取装置SMの各種動作を実行するためのプログラムを記憶する。CPU30は、ROM31から読み出されたプログラムに従って、各部の制御を行う。フラッシュROM33は、読み書き可能な不揮発性メモリであり、CPU30の制御処理により生成された各種のデータ、例えば初期化処理で設定する初期値などを記憶する。RAM32は、CPU30の制御処理により生成された算出結果などを一時的に記憶する。
デバイス制御部34は、読取部20に接続され、CPU30からの命令に基づいて、各種信号を送信する。具体的には、デバイス制御部34は、CPU30からの命令に基づいて、光源21の点灯又は消灯を制御する信号、および光源21に流れる電流値を制御する信号を光源21に送信する。デバイス制御部34は、CPU30からの命令に基づいて、多数の光電変換素子23の電気信号を同時にアナログシフトレジスタに転送するためのシリアルイン信号SIと、アナログシフトレジスタの電気信号を順番に出力させるためのクロック信号CLKとを受光部22に送信する。読取部20は、デバイス制御部34からこれらの信号を受け取ると、光源21を点灯させるとともに、受光部22が受光した受光量に応じたアナログ信号を先頭画素から最終画素まで順にAFE35に送信する。本実施形態において、ライン周期は、シリアルイン信号SIの周期である。
AFE35は、読取部20に接続され、CPU30からの命令に基づいて、読取部20から送信されるアナログ信号をデジタルデータDDに変換する。AFE35は、予め定められた入力レンジおよび分解能を有する。例えば、分解能は、10ビットであるならば、「0」から「1023」までの階調である。この場合、AFE35は、読取部20から送信されたアナログ信号をデジタルデータDDとして10ビット(0〜1023)の階調データに変換する。AFE35によって変換されたデジタルデータDDは、画像処理部36に送信されるとともに、RAM32に記憶される。本実施形態では、AFE35は、設定されたライン周期内で1ラインのアナログ信号を1ラインのデジタルデータDDに変換する。
画像処理部36は、画像処理用の専用ICであるASICから構成され、デジタルデータDDに黒補正処理、および白補正処理を施す。画像処理部36は、1ライン中の各画素においてデジタルデータDDから黒基準データBKDを引き算することにより黒補正処理を施し、1ライン中の各画素において黒補正処理を施した値に白基準データWHDに基づきシェーディング補正することにより白補正処理を施し、8ビットの階調値GVへ変換する。この階調値GVは、バス38を介してRAM32に記憶される。画像処理部36において、黒補正処理のために黒基準データBKDが設定され、白補正処理のために白基準データWHDが設定される。本実施形態では、画像処理部36は、設定されたライン周期内で1ラインのデジタルデータDDを1ラインの階調値GVに変換する。
駆動回路37は、搬送モータMTに接続され、CPU30から送信される駆動指令に基づいて搬送モータMTを駆動する。駆動回路37は、駆動指令により指令された回転量および回転方向に従って搬送モータMTを回転させる。搬送モータMTが所定量だけ回転すると、移動機構MMが所定角度回転し、読取部20が副走査方向SDに所定距離だけ搬送される。
<画像読取装置SMの動作>
次に、画像読取装置SMの動作について図面を参照して説明する。画像読取装置SMは、電源を投入したときに実行される電源投入時処理と、原稿GSを読み取る読取メイン処理とを主に実行する。図4に示す電源投入時処理中の処理D1〜処理D5、および図6に示す読取メイン処理中の処理R1〜処理R7は、CPU30が実行する処理である。
次に、画像読取装置SMの動作について図面を参照して説明する。画像読取装置SMは、電源を投入したときに実行される電源投入時処理と、原稿GSを読み取る読取メイン処理とを主に実行する。図4に示す電源投入時処理中の処理D1〜処理D5、および図6に示す読取メイン処理中の処理R1〜処理R7は、CPU30が実行する処理である。
(電源投入時処理)
図4に示す電源投入時処理は、画像読取装置SMの電源がオンとなったときに開始される。即ち、CPU30は、電源がオンとなったことを示す電源投入信号が入力されたときに、電源投入時処理を開始する。
図4に示す電源投入時処理は、画像読取装置SMの電源がオンとなったときに開始される。即ち、CPU30は、電源がオンとなったことを示す電源投入信号が入力されたときに、電源投入時処理を開始する。
CPU30は、原稿押え板CVが閉塞状態であるか否かを判断する(D1)。具体的には、CPU30は、カバーセンサ39がオンである場合(D1:Yes)に、原稿押え板CVが閉塞状態であると判断し、処理D3に進む。CPU30は、カバーセンサ39がオフである場合(D1:No)に、原稿押え板CVが閉塞状態でないと判断し、処理D2に進む。
CPU30は、ユーザに対して原稿押え板CVを閉塞状態にさせるための表示を表示機構DMに表示させる表示動作を実行する(D2)。具体的には、CPU30は、表示機構DMに表示指令を送信し、ユーザに対して原稿押え板CVを開放状態から閉塞状態へ閉じさせるための表示を表示させる表示動作を実行する。CPU30は、処理D2が終了すると、処理D1へ進む。
処理D1においてYesと判断されると、CPU30は、デバイス制御部34、AFE35、および駆動回路37を初期化する(D3)。具体的には、CPU30は、第1ライン周期LC1をデバイス制御部34、およびAFE35に設定する。CPU30は、第1対象画素TP1の設定値を削除する。CPU30は、駆動回路37に指令を送信し、読取部20をホーム位置HPに移動させる。本実施形態では、第1ライン周期LC1は、「1ms」である。
CPU30は、保存黒データSBKを取得する(D4)。具体的には、CPU30は、光源21を消灯して第1ライン周期LC1で読取部20に読み取らせ、読取部20からのアナログデータをAFE35で変換させ、変換された1ラインのデジタルデータDDを1ラインの保存黒データSBKとしてRAM32に記憶する。ここで、1ラインの保存黒データSBKは、1ラインの先頭画素から最終画素までの保存黒データSBKである。
図5に示す飽和データSTD取得処理D5が開始されると、CPU30は、光源21を最大光量MIで点灯させる指令をデバイス制御部34に送信する(DA1)。ここで、最大光量MIは、光源21に流すことが可能な最大の電流値と、光源21を点灯することが可能な最大の点灯期間とで点灯させたときの光量である。
CPU30は、第1データDT1を取得する(DA2)。具体的には、CPU30は、光源21の最大光量MIで基準部材BMを照射させ、その反射光を第1ライン周期LC1で読取部20に読み取らせ、読取部20からのアナログデータをAFE35で変換させ、変換された1ラインのデジタルデータDDを1ラインの第1データDT1として取得し、取得した1ラインの第1データDT1をRAM32に記憶する。ここで、1ラインの第1データDT1は、先頭画素から最終画素までの第1データDT1である。
CPU30は、先頭画素の画素番号PNである「1」を第1対象画素番号TPN1として設定する(DA3)。
CPU30は、飽和ライン周期SLCを設定する(DA4)。具体的には、CPU30は、飽和ライン周期SLCが設定されている場合に、設定されている飽和ライン周期SLCの2倍の長さのライン周期を飽和ライン周期SLCとしてデバイス制御部34、およびAFE35に設定する。CPU30は、飽和ライン周期SLCが設定されていない場合に、第1ライン周期LC1の2倍の長さのライン周期を飽和ライン周期SLCとしてデバイス制御部34、およびAFE35に設定する。
CPU30は、第2データDT2を取得する(DA5)。具体的には、CPU30は、光源21の最大光量MIで基準部材BMを照射させ、その反射光を飽和ライン周期SLCで読取部20に読み取らせ、読取部20からのアナログデータをAFE35で変換させ、変換された1ラインのデジタルデータDDを1ラインの第2データDT2として取得し、取得した1ラインの第2データDT2をRAM32に記憶する。ここで、1ラインの第2データDT2は、先頭画素から最終画素までの第2データDT2である。
処理DA5が終了するか、または処理DA9が終了すると、CPU30は、第1対象画素番号TPN1に対応する画素のデジタルデータDDが飽和したか否かを判断する(DA6)。具体的には、CPU30は、第1対象画素番号TPN1に対応する画素の第1データDT1が第1対象画素番号TPN1に対応する画素の第2データDT2と同じ値である場合(DA6:Yes)に、第1対象画素番号TPN1に対応する画素のデジタルデータDDが飽和したと判断し、処理DA8に進む。CPU30は、第1対象画素番号TPN1に対応する画素の第1データDT1が第1対象画素番号TPN1に対応する画素の第2データDT2と同じ値でない場合(DA6:No)に、第1対象画素番号TPN1に対応する画素のデジタルデータDDが飽和していないと判断し、処理DA7に進む。
CPU30は、1ラインの第2データDT1を1ラインの第1データDT1としてRAM32に記憶する(DA7)。CPU30は、処理DA7が終了すると、処理DA4に進む。
処理DA6においてYesと判断されると、CPU30は、第1対象画素番号TPN1が最終画素の画素番号PNであるか否かを判断する(DA8)。CPU30は、第1対象画素番号TPN1が最終画素の画素番号PNである場合(DA8:Yes)に、処理DA10に進み、第1対象画素番号TPN1が最終画素の画素番号PNでない場合(DA8:No)に、処理DA9に進む。本実施形態では、最終画素の画素番号PNは、「2600」である。
CPU30は、第1対象画素番号TPN1を設定する(DA9)。具体的には、CPU30は、設定されている第1対象画素番号TPN1に「1」を加算し、加算した値を第1対象画素番号TPN1として設定する。CPU30は、処理DA9が終了すると、処理DA6に進む。
処理DA8においてYesと判断されると、CPU30は、1ラインの第2データDT2を1ラインの飽和データSTDとしてRAM32に記憶する(DA10)。処理DA10が終了すると、飽和データSTD取得処理D5が終了する。処理D5が終了すると、電源投入時処理が終了する。
(読取メイン処理)
図6に示す読取メイン処理は、ユーザが原稿GSを透明板TPに載置し、原稿押え板CVを開放状態にし、操作機構OMの読取開始ボタンを押下することにより、開始される。即ち、CPU30は、カバーセンサ39がオフのときに、読取開始ボタンの押下を示す指令を受け取ることにより、読取メイン処理を開始する。
図6に示す読取メイン処理は、ユーザが原稿GSを透明板TPに載置し、原稿押え板CVを開放状態にし、操作機構OMの読取開始ボタンを押下することにより、開始される。即ち、CPU30は、カバーセンサ39がオフのときに、読取開始ボタンの押下を示す指令を受け取ることにより、読取メイン処理を開始する。
CPU30は、デバイス制御部34、AFE35、および駆動回路37を初期化する(R1)。具体的には、CPU30は、第2ライン周期LC2をデバイス制御部34、およびAFE35に設定する。CPU30は、飽和フラグSFGをオフにしてRAM32に記憶する。CPU30は、第2対象画素番号TPN2、および飽和対象画素番号STPNを削除する。CPU30は、第3ライン周期LC3として第2ライン周期LC2と同じ周期をRAM32に記憶する。CPU30は、駆動回路37に指令を送信し、読取部20をホーム位置HPに移動させる。本実施形態では、第2ライン周期LC2は、「2ms」である。
CPU30は、黒基準データBKDを取得する(R2)。詳細は後述するため、ここでは概説する。CPU30は、黒基準データBKDを決定し、画像処理部36に設定する。CPU30は、第1ライン周期LC1に対応する設定値をデバイス制御部34、AFE35、および画像処理部36に設定する。
CPU30は、光源21を読取光量DIで点灯させる指令をデバイス制御部34に送信する(R3)。ここで、読取光量DIは、予め調整された光量であり、処理R5から処理R7で実行される原稿GSを読み取る読取動作を実行するときに光源21に流す電流値と、光源21を点灯させる点灯期間とで点灯させたときの光量である。
CPU30は、白基準データWHDを取得する(R4)。具体的には、CPU30は、光源21の読取光量DIで基準部材BMを照射させ、その反射光を第1ライン周期LC1で読取部20に読み取らせ、読取部20からのアナログデータをAFE35で変換させ、変換された1ラインのデジタルデータDDを取得し、1ライン中の各画素において取得したデジタルデータDDから黒基準データBKDを引き算し、引き算することに算出した1ラインの白基準データWHDを画像処理部36に設定する。
CPU30は、読取動作を開始する(R5)。具体的には、CPU30は、駆動回路37に駆動指令を送信し、読取部20を基準位置BPに移動させる。CPU30は、駆動回路37とデバイス制御部34とに指令を送信し、基準位置BPから副走査方向SDに沿って下流へ読取部20を移動させながら第1ライン周期LC1で原稿GSを読み取る読取動作を開始させる。読取動作が開始されると、1ラインのデジタルデータDDがAFE35から画像処理部36へ送信され、画像処理部36において黒補正処理が黒基準データBKDに基づき、送信された1ラインのデジタルデータDDに実行され、白補正処理が白基準データWHDに基づき、黒補正処理された1ラインのデジタルデータDDに実行され、白補正処理された1ラインの階調値GVがRAM32に記憶される。
CPU30は、読取部20が読取終了位置SRPに位置するか否かを判断する(R6)。CPU30は、読取部20が読取終了位置SRPに位置する場合(R6:Yes)に、処理R7に進み、読取部20が読取終了位置SRPに位置しない場合(R6:No)に、読取動作を継続する。
CPU30は、読取動作を終了する(R7)。具体的には、CPU30は、駆動回路37とデバイス制御部34とに指令を送信し、原稿GSを読み取る読取動作を終了し、読取部20を駆動停止させた後に、読取部20をホーム位置HPに移動させる。処理R7が終了すると、読取メイン処理が終了する。
(黒基準データBKD取得処理R2)
図7に示す黒基準データBKD取得処理R2が開始されると、CPU30は、第2消灯データLOD2を取得する(RA1)。具体的には、CPU30は、光源21を消灯して第2ライン周期LC2で読取部20に読み取らせ、読取部20からのアナログデータをAFE35で変換させ、変換された1ラインのデジタルデータDDを1ラインの第2消灯データLOD2としてRAM32に記憶する。ここで、1ラインの第2消灯データLOD2は、1ラインの先頭画素から最終画素までの第2消灯データLOD2である。
図7に示す黒基準データBKD取得処理R2が開始されると、CPU30は、第2消灯データLOD2を取得する(RA1)。具体的には、CPU30は、光源21を消灯して第2ライン周期LC2で読取部20に読み取らせ、読取部20からのアナログデータをAFE35で変換させ、変換された1ラインのデジタルデータDDを1ラインの第2消灯データLOD2としてRAM32に記憶する。ここで、1ラインの第2消灯データLOD2は、1ラインの先頭画素から最終画素までの第2消灯データLOD2である。
CPU30は、第1ライン周期LC1をデバイス制御部34、AFE35、および画像処理部36に設定する(RA2)。本実施形態では、第1ライン周期LC1は、同様に「1ms」である。
CPU30は、第1消灯データLOD1を取得する(RA3)。具体的には、CPU30は、光源21を消灯して第1ライン周期LC1で読取部20に読み取らせ、読取部20からのアナログデータをAFE35で変換させ、変換された1ラインのデジタルデータDDを1ラインの第1消灯データLOD1としてRAM32に記憶する。ここで、1ラインの第1消灯データLOD1は、1ラインの先頭画素から最終画素までの第1消灯データLOD1である。
CPU30は、消灯差分LODdifを算出する(RA4)。具体的には、CPU30は、1ライン中の各画素において第2消灯データLOD2から第1消灯データLOD1を引き算し、引き算することにより算出した1ラインの消灯差分LODdifをRAM32に記憶する。本実施形態では、1ラインの消灯差分LODdifは、1ラインの先頭画素から最終画素までの消灯差分LODdifである。
CPU30は、最大差分MXdifを記憶する(RA5)。具体的には、CPU30は、1ラインの消灯差分LODdifのうちで最も大きい値を最大差分MXdifとしてRAM32に記憶する。
CPU30は、最大差分MXdifが閾値TH以上であるか否かを判断する(RA6)。CPU30は、最大差分MXdifが閾値TH以上である場合(RA6:Yes)に、処理RA7に進み、最大差分MXdifが閾値TH以上でない場合(RA6:No)に、処理RA10に進む。本実施形態では、閾値THは、同じ光量の光を受光部22が受光したときに変動するデジタルデータDDの下限値と上限値との差を1.5倍した値であり、「15」である。1.5倍は、様々なバラツキ要因によりデジタルデータDDが変化した場合を考慮して決定した値である。最大差分MXdifが閾値TH以上であるときは、画像読取装置SMに外光が入射している状態であることを示している。
CPU30は、第1消灯データLOD1が飽和データSTDと同じ値であるか否かを判断する(RA7)。CPU30は、1ライン中の各画素において第1消灯データLOD1が飽和データSTDと同じ値であるか否かを判断し、1ライン中のいずれかの画素において第1消灯データLOD1が飽和データSTDと同じ値である場合(RA7:Yes)に、処理RA9に進み、1ライン中のいずれの画素においても第1消灯データLOD1が飽和データSTDと同じ値でない場合(RA7:No)に、処理RA8に進む。ここで、第1消灯データLOD1が飽和データSTDと同じ値であることは、第1消灯データLOD1が飽和していることを示している。
CPU30は、黒基準データBKDを決定する(RA8)。詳細は後述するため、ここでは概説する。CPU30は、黒基準データBKDを算出し、算出することにより決定した黒基準データBKDを画像処理部36に設定する。処理RA8が終了すると、処理R2が終了する。
処理RA7においてYesと判断されると、CPU30は、1ラインの保存黒データSBKを1ラインの黒基準データBKDとして画像処理部36に設定する(RA9)。処理RA9が終了すると、処理R2が終了する。
処理RA6においてNoと判断されると、CPU30は、1ラインの第1消灯データLOD1を1ラインの黒基準データBKDとして画像処理部36に設定する(RA10)。処理RA10が終了すると、処理R2が終了する。
(黒基準データBKD決定処理RA8)
図8に示す黒基準データBKD決定処理RA8が開始されると、CPU30は、飽和判断処理を実行する(RB1)。詳細は後述するため、ここでは概説する。CPU30は、第2消灯データLOD2が飽和している場合に、第2消灯データLOD2が飽和している画素の画素番号PNを飽和画素番号SPNとしてRAM32に記憶し、飽和フラグSFGをオンにしてRAM32に記憶する。
図8に示す黒基準データBKD決定処理RA8が開始されると、CPU30は、飽和判断処理を実行する(RB1)。詳細は後述するため、ここでは概説する。CPU30は、第2消灯データLOD2が飽和している場合に、第2消灯データLOD2が飽和している画素の画素番号PNを飽和画素番号SPNとしてRAM32に記憶し、飽和フラグSFGをオンにしてRAM32に記憶する。
CPU30は、飽和フラグSFGがオンであるか否かを判断する(RB2)。CPU30は、飽和フラグSFGがオンである場合(RB2:Yes)に、処理RB3に進み、飽和フラグSFGがオフである場合(RB2:No)に、処理RB6に進む。
CPU30は、第3ライン周期LC3を決定する(RB3)。詳細は後述するため、ここでは概説する。CPU30は、第3ライン周期LC3を算出し、算出した第3ライン周期LC3に対応する設定値をデバイス制御部34、およびAFE35に設定する。CPU30は、1ラインの第3消灯データLOD3を取得する。
CPU30は、消灯差分LODdifを算出する(RB4)。具体的には、CPU30は、1ライン中の各画素において第3消灯データLOD3から第1消灯データLOD1を引き算し、引き算することにより算出した1ラインの消灯差分LODdifをRAM32に記憶する。本実施形態では、1ラインの消灯差分LODdifは、1ラインの先頭画素から最終画素までの消灯差分LODdifである。
CPU30は、ライン周期差分LCdifを算出する(RB5)。具体的には、CPU30は、第3ライン周期LC3から第1ライン周期LC1を引き算し、引き算することにより算出したライン周期差分LCdifをRAM32に記憶する。CPU30は、処理RB5が終了すると、処理RB7に進む。
処理RB2においてNoと判断されると、CPU30は、ライン周期差分LCdifを算出する(RB6)。具体的には、CPU30は、第2ライン周期LC2から第1ライン周期LC1を引き算し、引き算することにより算出したライン周期差分LCdifをRAM32に記憶する。
処理RB5が終了するか、または処理RB6が終了すると、CPU30は、黒基準データBKDを算出する(RB7)。具体的には、CPU30は、第1ライン周期LC1をライン周期差分LCdifで割り算し、割り算した値を1ラインの消灯差分LODdifに掛け算し、1ライン中の各画素において掛け算した値を第1消灯データLOD1から引き算し、引き算することにより算出した1ラインの黒基準データBKDを画像処理部36に設定する。処理RB7が終了すると、黒基準データBKD決定処理RA8が終了する。本実施形態では、第1ライン周期LC1は、処理R5〜処理R7で実行される読取動作において設定されているライン周期であり、「1ms」である。
(飽和判断処理RB1)
図9に示す飽和判断処理RB1が開始されると、CPU30は、第2対象画素番号TPN2を設定する(RC1)。具体的には、CPU30は、第2対象画素番号TPN2が設定されている場合に、設定されている第2対象画素番号TPN2に「1」を加算し、加算した値を第2対象画素番号TPN2としてRAM32に設定する。CPU30は、第2対象画素番号TPN2が設定されていない場合に、先頭画素の画素番号PNである「1」を第2対象画素番号TPN2としてRAM32に設定する。
図9に示す飽和判断処理RB1が開始されると、CPU30は、第2対象画素番号TPN2を設定する(RC1)。具体的には、CPU30は、第2対象画素番号TPN2が設定されている場合に、設定されている第2対象画素番号TPN2に「1」を加算し、加算した値を第2対象画素番号TPN2としてRAM32に設定する。CPU30は、第2対象画素番号TPN2が設定されていない場合に、先頭画素の画素番号PNである「1」を第2対象画素番号TPN2としてRAM32に設定する。
CPU30は、第2消灯データLOD2が飽和データSTDと同じ値であるか否かを判断する(RC2)。CPU30は、第2対象画素番号TPN2に対応する画素の第2消灯データLOD2が第2対象画素番号TPN2に対応する画素の飽和データSTDと同じ値である場合(RC2:Yes)に、処理RC3に進む。CPU30は、第2対象画素番号TPN2に対応する画素の第2消灯データLOD2が第2対象画素番号TPN2に対応する画素の飽和データSTDと同じ値でない場合(RC2:No)に、処理RC5に進む。本実施形態では、第2消灯データLOD2が飽和データSTDと同じ値であることは、第2消灯データLOD2が飽和していることを示している。
CPU30は、第2対象画素番号TPN2を飽和画素番号SPNとしてRAM32に記憶する(RC3)。
CPU30は、飽和フラグSFGをオンにしてRAM32に記憶する(RC4)。
処理RC2においてNoと判断されるか、または処理RC4が終了すると、CPU30は、第2対象画素番号TPN2が最終画素の画素番号PNであるか否かを判断する(RC5)。CPU30は、第2対象画素番号TPN2が最終画素の画素番号PNでない場合(RC5:No)に、処理RC1に進み、第2対象画素番号TPN2が最終画素の画素番号PNである場合(RC5:Yes)に、飽和判断処理RB1が終了する。本実施形態では、最終画素の画素番号PNは、「2600」である。
(第3ライン周期LC3決定処理RB3)
図10に示す第3ライン周期LC3決定処理RB3が開始されると、CPU30は、最も小さい飽和画素番号SPNを飽和対象画素番号STPNとして設定する(RD1)。
図10に示す第3ライン周期LC3決定処理RB3が開始されると、CPU30は、最も小さい飽和画素番号SPNを飽和対象画素番号STPNとして設定する(RD1)。
CPU30は、第3ライン周期LC3を設定する(RD2)。具体的には、CPU30は、設定されている第3ライン周期LC3を「2」で割り算し、割り算した商を第3ライン周期LC3としてデバイス制御部34、およびAFE35に設定する。
CPU30は、第3消灯データLOD3を取得する(RD3)。具体的には、CPU30は、光源21を消灯して第3ライン周期LC3で読取部20に読み取らせ、読取部20からのアナログデータをAFE35で変換させ、変換された1ラインのデジタルデータDDを1ラインの第3消灯データLOD3としてRAM32に記憶する。ここで、1ラインの第3消灯データLOD3は、1ラインの先頭画素から最終画素までの第3消灯データLOD3である。
処理RD6が終了するか、又は処理RD3が終了すると、CPU30は、第3消灯データLOD3が飽和データSTDと同じ値であるか否かを判断する(RD4)。CPU30は、1ライン中の各画素において第3消灯データLOD3が飽和データSTDと同じ値であるか否かを判断し、1ライン中のいずれかの画素において第3消灯データLOD3が飽和データSTDと同じ値である場合(RD4:Yes)に、処理RD2に進み、1ライン中のいずれの画素においても第3消灯データLOD3が飽和データSTDと同じ値でない場合(RD4:No)に、処理RD5に進む。本実施形態では、第3消灯データLOD3が飽和データSTDと同じ値であることは、第3消灯データLOD3が飽和していることを示している。
CPU30は、飽和対象画素番号STPNが最も大きい飽和画素番号SPNであるか否かを判断する(RD5)。CPU30は、飽和対象画素番号STPNが最も大きい飽和画素番号SPNである場合(RD5:Yes)に、処理RD7に進み、飽和対象画素番号STPNが最も大きい飽和画素番号SPNでない場合(RD5:No)に、処理RD6に進む。
CPU30は、設定されている飽和対象画素番号STPNの次に大きい飽和画素番号SPNを飽和対象画素番号STPNとして設定する(RD6)。CPU30は、処理RD6が終了すると、処理RD4に進む。
CPU30は、第1ライン周期LC1をデバイス制御部34、およびAFE35に設定する(RD7)。処理RD7が終了すると、第3ライン周期LC3決定処理RB3が終了する。
(具体例)
次に、図11を参照して画素番号PNが「1301」から「1305」までの画素における黒基準データBKDの決定過程について説明する。
次に、図11を参照して画素番号PNが「1301」から「1305」までの画素における黒基準データBKDの決定過程について説明する。
画像読取装置SMは、処理RA3において、光源21を消灯して第1ライン周期LC1で読取部20に読み取らせて取得したデジタルデータDDを第1消灯データLOD1として取得する。
第1消灯データLOD1は、第1ライン周期LC1として「1ms」が設定されたときのデジタルデータDDであり、画素番号PNが「1301」から「1305」までの5つの画素について、順に、「705」、「710」、「715」、「710」、「705」の値である。
画像読取装置SMは、処理RA1において、光源21を消灯して第2ライン周期LC2で読取部20に読み取らせて取得したデジタルデータDDを第2消灯データLOD2として取得する。
第2消灯データLOD2は、第2ライン周期LC2として「2ms」が設定されたときのデジタルデータDDであり、画素番号PNが「1301」から「1305」までの5つの画素について、順に、「941」、「942」、「943」、「942」、「943」の値である。
飽和データSTDは、飽和させたときのデジタルデータDDであり、画素番号PNが「1301」から「1305」までの5つの画素について、順に、「941」、「942」、「943」、「942」、「943」の値である。本具体例では、第2消灯データLOD2は、飽和データSTDと同じ値であるため、処理RC2においてYesと判断され、処理RD3において第3消灯データLOD3が取得される。
画像読取装置SMは、処理RD3において、光源21を消灯して第3ライン周期LC3で読取部20に読み取らせて取得したデジタルデータDDを第3消灯データLOD3として取得する。
第3消灯データLOD3は、第3ライン周期LC3として「1.5ms」が設定されたときのデジタルデータDDであり、画素番号PNが「1301」から「1305」までの5つの画素について、順に、「915」、「920」、「924」、「923」、「920」の値である。
画像読取装置SMは、処理RB4において、第3消灯データLOD3から第1消灯データLOD1を引き算することにより消灯差分LODdifを算出する。
画素番号PNが「1301」の画素の消灯差分LODdifは、第3消灯データLOD3である「915」から第1消灯データLOD1である「705」を引き算した「210」である。
画素番号PNが「1302」の画素の消灯差分LODdifは、第3消灯データLOD3である「920」から第1消灯データLOD1である「710」を引き算した「210」である。
画素番号PNが「1303」の画素の消灯差分LODdifは、第3消灯データLOD3である「924」から第1消灯データLOD1である「715」を引き算した「209」である。
画素番号PNが「1304」の画素の消灯差分LODdifは、第3消灯データLOD3である「923」から第1消灯データLOD1である「710」を引き算した「213」である。
画素番号PNが「1305」の画素の消灯差分LODdifは、第3消灯データLOD3である「920」から第1消灯データLOD1である「705」を引き算した「215」である。
画像読取装置SMは、処理RB5において、第3ライン周期LC3から第1ライン周期LC1を引き算することによりライン周期差分LCdifを算出する。
ライン周期差分LCdifは、第3ライン周期LC3である「1.5ms」から第1ライン周期LC1である「1ms」を引き算した「0.5ms」である。
画像読取装置SMは、処理RB7において、第1ライン周期LC1をライン周期差分LCdifで割り算し、割り算した値を消灯差分LODdifに掛け算し、掛け算した値を第1消灯データLOD1から引き算することにより黒基準データBKDを算出する。
画素番号PNが「1301」の画素の黒基準データBKDは、第1ライン周期LC1である「1ms」をライン周期差分LCdifである「0.5ms」で割り算し、割り算して算出した「2」を消灯差分LODdifである「210」に掛け算し、掛け算して算出した「420」を第1消灯データLOD1である「705」から引き算した「285」である。
画素番号PNが「1302」の画素の黒基準データBKDは、第1ライン周期LC1である「1ms」をライン周期差分LCdifである「0.5ms」で割り算し、割り算して算出した「2」を消灯差分LODdifである「210」に掛け算し、掛け算して算出した「420」を第1消灯データLOD1である「710」から引き算した「290」である。
画素番号PNが「1303」の画素の黒基準データBKDは、第1ライン周期LC1である「1ms」をライン周期差分LCdifである「0.5ms」で割り算し、割り算して算出した「2」を消灯差分LODdifである「209」に掛け算し、掛け算して算出した「418」を第1消灯データLOD1である「715」から引き算した「297」である。
画素番号PNが「1304」の画素の黒基準データBKDは、第1ライン周期LC1である「1ms」をライン周期差分LCdifである「0.5ms」で割り算し、割り算して算出した「2」を消灯差分LODdifである「213」に掛け算し、掛け算して算出した「426」を第1消灯データLOD1である「710」から引き算した「284」である。
画素番号PNが「1305」の画素の黒基準データBKDは、第1ライン周期LC1である「1ms」をライン周期差分LCdifである「0.5ms」で割り算し、割り算して算出した「2」を消灯差分LODdifである「215」に掛け算し、掛け算して算出した「430」を第1消灯データLOD1である「705」から引き算した「275」である。
<実施形態の効果>
本実施形態では、黒基準データBKD取得処理R2において、処理RA1は、1ラインの第2消灯データLOD2を取得する。処理RA3は、1ラインの第1消灯データLOD1を取得する。処理RA4は、第2消灯データLOD2から第1消灯データLOD1を引き算することにより1ラインの消灯差分LODdifを算出する。処理RC2は、第2消灯データLOD2が飽和データSTDと同じ値であるか否かを判断する。第2消灯データLOD2が飽和データSTDと同じ値である場合に、処理RC3は、第2対象画素番号TPN2を飽和画素番号SPNとして記憶し、処理RC4は、飽和フラグSFGをオンにする。処理RB2は、飽和フラグSFGがオンであるか否かを判断する。飽和フラグSFGがオンでない場合に、処理RB6は、第2ライン周期LC2から第1ライン周期LC1を引き算することによりライン周期差分LCdifを算出する。飽和フラグSFGがオンである場合に、処理RB3は、第3消灯データLOD3を取得し、処理RB4は、第3消灯データLOD3から第1消灯データLOD1を引き算することにより1ラインの消灯差分LODdifを算出し、処理RB5は、第3ライン周期LC3から第1ライン周期LC1を引き算することによりライン周期差分LCdifを算出する。処理RB7は、第1ライン周期LC1をライン周期差分LCdifで割り算し、割り算した値を1ラインの消灯差分LODdifに掛け算し、1ライン中の各画素において掛け算した値を第1消灯データLOD1から引き算することにより1ラインの黒基準データBKDを算出する。よって、第2消灯データLOD2が飽和データSTDと同じ値である場合に、第3消灯データLOD3に基づき算出した消灯差分LODdifと第3ライン周期LC3に基づき算出したライン周期差分LCdifとに基づき黒基準データBKDを算出し、第2消灯データLOD2が飽和データSTDを同じ値でない場合に、第2消灯データLOD2に基づき算出した消灯差分LODdifと第2ライン周期LC2に基づき算出したライン周期差分LCdifとに基づき黒基準データBKDを算出するため、第2消灯データLOD2が飽和データSTDと同じ値である場合でも、外光の影響のない黒基準データBKDを算出することができる。
本実施形態では、黒基準データBKD取得処理R2において、処理RA1は、1ラインの第2消灯データLOD2を取得する。処理RA3は、1ラインの第1消灯データLOD1を取得する。処理RA4は、第2消灯データLOD2から第1消灯データLOD1を引き算することにより1ラインの消灯差分LODdifを算出する。処理RC2は、第2消灯データLOD2が飽和データSTDと同じ値であるか否かを判断する。第2消灯データLOD2が飽和データSTDと同じ値である場合に、処理RC3は、第2対象画素番号TPN2を飽和画素番号SPNとして記憶し、処理RC4は、飽和フラグSFGをオンにする。処理RB2は、飽和フラグSFGがオンであるか否かを判断する。飽和フラグSFGがオンでない場合に、処理RB6は、第2ライン周期LC2から第1ライン周期LC1を引き算することによりライン周期差分LCdifを算出する。飽和フラグSFGがオンである場合に、処理RB3は、第3消灯データLOD3を取得し、処理RB4は、第3消灯データLOD3から第1消灯データLOD1を引き算することにより1ラインの消灯差分LODdifを算出し、処理RB5は、第3ライン周期LC3から第1ライン周期LC1を引き算することによりライン周期差分LCdifを算出する。処理RB7は、第1ライン周期LC1をライン周期差分LCdifで割り算し、割り算した値を1ラインの消灯差分LODdifに掛け算し、1ライン中の各画素において掛け算した値を第1消灯データLOD1から引き算することにより1ラインの黒基準データBKDを算出する。よって、第2消灯データLOD2が飽和データSTDと同じ値である場合に、第3消灯データLOD3に基づき算出した消灯差分LODdifと第3ライン周期LC3に基づき算出したライン周期差分LCdifとに基づき黒基準データBKDを算出し、第2消灯データLOD2が飽和データSTDを同じ値でない場合に、第2消灯データLOD2に基づき算出した消灯差分LODdifと第2ライン周期LC2に基づき算出したライン周期差分LCdifとに基づき黒基準データBKDを算出するため、第2消灯データLOD2が飽和データSTDと同じ値である場合でも、外光の影響のない黒基準データBKDを算出することができる。
処理RD2は、設定されている第3ライン周期LC3を「2」で割り算し、割り算した商を第3ライン周期LC3として設定する。処理RD3は、第3消灯データLOD3を取得する。処理RD4は、第3消灯データLOD3が飽和データSTDと同じ値であるか否かを判断する。第3消灯データLOD3が飽和データSTDと同じ値である場合に、処理RD2および処理RD3が再度実行される。よって、第3消灯データLOD3が飽和データと同じ値でないと判断されるまで、第3ライン周期LC3を短くして設定するため、飽和していない第3消灯データLOD3を取得することができる。
[実施形態と発明との対応関係]
画像読取装置SM、原稿載置台DT、および基準部材BMが、本発明の画像読取装置、原稿台、および基準部材の一例である。光源21が、本発明の光源の一例である。画像処理部36が、本発明の黒補正部の一例である。ロッドレンズ24、受光部22、およびAFE35が、本発明の読取部の一例である。駆動回路37、搬送モータMT、および移動機構MMが、本発明の移動部の一例である。CPU30が、本発明の制御部の一例である。
画像読取装置SM、原稿載置台DT、および基準部材BMが、本発明の画像読取装置、原稿台、および基準部材の一例である。光源21が、本発明の光源の一例である。画像処理部36が、本発明の黒補正部の一例である。ロッドレンズ24、受光部22、およびAFE35が、本発明の読取部の一例である。駆動回路37、搬送モータMT、および移動機構MMが、本発明の移動部の一例である。CPU30が、本発明の制御部の一例である。
処理D5が、本発明の飽和データ取得処理の一例である。処理RA3が、本発明の第1黒データ取得処理の一例である。処理RA1が、本発明の第2黒データ取得処理の一例である。処理RB1が、本発明の飽和判断処理の一例である。処理RD3が、本発明の第3黒データ取得処理の一例である。処理RB3から処理RB7までが、本発明の黒基準データ決定処理の一例である。処理R5から処理R7までに実行される読取動作を実行する処理が、本発明の読取処理の一例である。処理RD2および処理RD4が、本発明の周期設定処理の一例である。処理RB4および処理RA4が、本発明の黒差分算出処理の一例である。処理RB5および処理RB6が、本発明の周期差分算出処理の一例である。処理RB7が、本発明の黒基準データ算出処理の一例である。処理DA1が、本発明の最大照射処理の一例である。処理DA2、および処理DA10を実行する時点において最後から2番目に実行された処理DA5が、本発明の第1データ取得処理の一例である。処理DA10を実行する時点において最後に実行された処理DA5が、本発明の第2データ取得処理の一例である。処理RA5および処理RA6が、本発明の外光判断処理の一例である。処理RA5が、本発明の最大差分算出処理の一例である。
[変形例]
本発明は、本実施形態に限定されることなく、その趣旨を逸脱しない範囲において種々の変形が可能である。以下にその変形の一例を述べる。
本発明は、本実施形態に限定されることなく、その趣旨を逸脱しない範囲において種々の変形が可能である。以下にその変形の一例を述べる。
(1)本実施形態の画像読取装置SMは、プリンタ部を備えた複合機に適用されても良い。また、本実施形態では、読取部20が、CISで構成される場合について説明をしたが、CCD(Charge Coupled Device)を搭載し、副走査方向に移動するCCDユニットで構成されても良いし、CCD素子が固定されて光源とミラーとが副走査方向に移動する読取ユニットで構成されても良い。
(2)本実施形態では、処理RA7、処理RC2、および処理RD4において、飽和データSTDと同じ値であるか否かを判断することにより、各種データが飽和しているか否かを判断したが、異なる方法でも良い。画像読取装置SMの環境温度等により飽和データSTDが微小に変動する場合には、飽和データSTDから微小に変動する範囲内であれば、飽和データSTDと同じ値であると判断し、各種データが飽和していると判断しても良い。
(3)本実施形態では、処理DA6において、第1対象画素TP1における第1データDT1と第2データDT2とが同じ値であるときに、第1対象画素TP1が飽和したと判断したが、異なる方法でも良い。画像読取装置SMが環境温度等により第1データDT1および第2データDT2が微小に変動する場合には、第1データDT1から微小に変動する範囲内であれば、第1データDT1と同じ値であると判断し、第1対象画素TP1が飽和したと判断しても良い。
(4)本実施形態では、処理D5において飽和データSTDを取得したが、異なる方法でも良い。画像読取装置SMを工場から出荷する直前に、飽和データSTDを取得しておき、不揮発性メモリに保存しておいても良い。
(5)本実施形態では、処理RD2は、設定されている第3ライン周期LC3を「2」で割り算し、割り算した商を新たな第3ライン周期LC3として算出したが、異なる方法でも良い。設定されている第3ライン周期LC3から所定期間だけ徐々に短くなるように設定しても良い。
(6)本実施形態では、処理RB7は、第1ライン周期LC1をライン周期差分LCdifで割り算し、割り算した値を1ラインの消灯差分LODdifに掛け算し、掛け算した値を第1消灯データLOD1から引き算することにより1ラインの黒基準データBKDを算出したが、異なる方法でも良い。第1ライン周期LC1、第3ライン周期LC3、第1消灯データLOD1、および第3消灯データLOD3から外光による消灯データへのデータ変動量が時間に比例すると見做して外光のない黒基準データBKDを算出しても良い。
(7)本実施形態では、処理RA6は、最大差分MXdifが閾値TH以上であると判断する場合に、画像読取装置SMに外光が入射したと判断したが、異なる方法でも良い。第1消灯データLOD1または第2消灯データLOD2が、所定値以上である場合に、画像読取装置SMに外光が入射したと判断しても良い。
(8)本実施形態では、第2ライン周期LC2を第1ライン周期LC1の2倍の長さである「2ms」として説明したが、異なる長さでも良い。第1ライン周期LC1の3倍の長さでも良いし、第1ライン周期LC1よりも長い他の解像度のライン周期を設定しても良い。
SM…画像読取装置、OM…操作機構、CV…原稿押え板、MT…搬送モータ、MM…移動機構、20…読取部、21…光源、22…受光部、23…光電変換素子、24…ロッドレンズ、30…CPU、32…RAM、33…フラッシュROM、34…デバイス制御部、35…AFE、36…画像処理部、37…駆動回路、39…カバーセンサ
Claims (7)
- 原稿を支持する原稿台と、
光を照射する光源と、
ライン周期の期間に入射される光を光電変換することにより主走査方向に沿った1ラインの複数の画素のラインデータを生成する読取部と、
黒基準データに基づき前記ラインデータを黒補正する黒補正部と、
制御部と、を備え、
前記制御部は、
前記読取部が生成する前記ラインデータの上限値である1ラインの飽和データを取得する飽和データ取得処理と、
前記光源を消灯させて予め定められた第1ライン周期で前記読取部により生成させた前記ラインデータを1ラインの第1黒データとして取得する第1黒データ取得処理と、
前記光源を消灯させて前記第1ライン周期より長い予め定められた第2ライン周期で前記読取部により生成させた前記ラインデータを1ラインの第2黒データとして取得する第2黒データ取得処理と、
1ライン中の前記複数の画素の各画素において、前記飽和データに基づき前記第2黒データが飽和しているか否かを判断する飽和判断処理と、
1ライン中の前記複数の画素のいずれかの画素において前記第2黒データが飽和していると判断された場合に、前記光源を消灯させて前記第1ライン周期より長く前記第2ライン周期より短い第3ライン周期で前記読取部により生成させた前記ラインデータを第3黒データとして取得する第3黒データ取得処理と、
1ライン中の前記複数の画素のいずれの画素においても前記第2黒データが飽和していないと判断された場合に、前記第1黒データと前記第2黒データとに基づき黒基準データを決定し、1ライン中の前記複数の画素のいずれかの画素において前記第2黒データが飽和していると判断された場合に、前記第1黒データと前記第3黒データとに基づき黒基準データを決定する黒基準データ決定処理と、
前記原稿台に支持された原稿へ前記光源から光を照射させて前記第1ライン周期で前記読取部により生成させた前記ラインデータを前記黒基準データ決定処理で決定した前記黒基準データに基づき黒補正させる読取処理とを実行することを特徴とする画像読取装置。 - 前記第3黒データ取得処理は、
1ライン中の前記複数の画素のいずれかの画素において前記第2黒データが飽和していると判断された場合に、1ライン中の前記複数の画素の全ての画素において前記光源を消灯させて前記第3ライン周期で前記読取部により生成させた前記ラインデータが前記飽和データより小さくなるように前記第3ライン周期を設定する周期設定処理を含むことを特徴とする請求項1に記載の画像読取装置。 - 前記黒基準データ決定処理は、
1ライン中の前記複数の画素のいずれの画素においても前記第2黒データが飽和していないと判断された場合に、1ライン中の前記複数の画素の各画素において前記第2黒データから前記第1黒データを引き算することにより黒差分を算出し、1ライン中の前記複数の画素のいずれかの画素において前記第2黒データが飽和していると判断された場合に、1ライン中の前記複数の画素の各画素において前記第3黒データから前記第1黒データを引き算することにより黒差分を算出する黒差分算出処理と、
1ライン中の前記複数の画素のいずれの画素においても前記第2黒データが飽和していないと判断された場合に、前記第2ライン周期から前記第1ライン周期を引き算することにより周期差分を算出し、1ライン中の前記複数の画素のいずれかの画素において前記第2黒データが飽和していると判断された場合に、前記第3ライン周期から前記第1ライン周期を引き算することにより周期差分を算出する周期差分算出処理と、
1ライン中の前記複数の画素の各画素において前記黒差分を前記周期差分で割り算した値に前記第1ライン周期を掛け算し、掛け算した値を前記第1黒データから引き算することにより前記黒基準データを決定する黒基準データ算出処理とを含むことを特徴とする請求項1、又は請求項2に記載の画像読取装置。 - 白色を有する基準部材と、
前記読取部を主走査方向と直交する副走査方向に移動させる移動部と、を備え、
前記飽和データ取得処理は、
前記移動部により前記読取部を前記基準部材と対向する位置に移動させ、前記光源から最大光量の光で前記基準部材を照射させる最大照射処理と、
前記最大光量の光で前記基準部材を照射させて前記第1ライン周期以上の長さである第4ライン周期で前記読取部により生成させた前記ラインデータを1ラインの第1データとして取得する第1データ取得処理と、
前記最大光量の光で前記基準部材を照射させて前記第4ライン周期より長い第5ライン周期で前記読取部により生成させた前記ラインデータを1ラインの第2データとして取得する第2データ取得処理と、を含み、
1ライン中の前記複数の画素の各画素において前記第1データが前記第2データと同じ値である場合に、前記第2データを前記飽和データとして取得し、1ライン中の前記複数の画素の各画素において前記第1データが前記第2データと同じ値でない場合に、前記第4ライン周期および前記第5ライン周期をより長く設定して、再度前記第1データ取得処理と前記第2データ取得処理とを実行させることを特徴とする請求項1乃至請求項3のいずれかに記載の画像読取装置。 - 前記飽和判断処理は、1ライン中の前記複数の画素のいずれかの画素において前記第2黒データが前記飽和データと同じ値である場合に、前記第2黒データが飽和していると判断し、1ライン中の前記複数の画素のいずれの画素においても前記第2黒データが前記飽和データと同じ値でない場合に、前記第2黒データが飽和していないと判断することを特徴とする請求項1乃至請求項4のいずれかに記載の画像読取装置。
- 前記制御部は、
前記1ラインの第1黒データと前記1ラインの第2黒データとに基づき外光が入射したか否かを判断する外光判断処理を実行し、
飽和判断処理は、外光が入射したと判断された場合に、1ライン中の前記複数の画素の各画素において前記飽和データに基づき前記第2黒データが飽和しているか否かを判断し、
黒基準データ決定処理は、外光が入射していないと判断された場合に、前記1ラインの第1黒データを黒基準データとして決定し、1ライン中の前記複数の画素のいずれの画素においても前記第2黒データが飽和していないと判断された場合に、前記第1黒データと前記第2黒データとに基づき黒基準データを決定し、1ライン中の前記複数の画素のいずれかの画素において前記第2黒データが飽和していると判断された場合に、前記第1黒データと前記第3黒データとに基づき黒基準データを決定することを特徴とする請求項1乃至請求項5のいずれかに記載の画像読取装置。 - 前記外光判断処理は、
1ライン中の前記複数の画素の各画素において前記第2黒データから前記第1黒データを引き算し、引き算した各画素の値のうちで最も大きい値を最大差分として決定する最大差分算出処理を含み、
前記最大差分が閾値以上である場合に、外光が入射したと判断し、前記最大差分が前記閾値より小さい場合に、外光が入射していないと判断し、
前記閾値は、同じ光量の光が入射したときに前記読取部が生成する前記ラインデータが変動する下限値と上限値との差である変動値の1.5倍の値であることを特徴とする請求項6に記載の画像読取装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018045127A JP2019161430A (ja) | 2018-03-13 | 2018-03-13 | 画像読取装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018045127A JP2019161430A (ja) | 2018-03-13 | 2018-03-13 | 画像読取装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2019161430A true JP2019161430A (ja) | 2019-09-19 |
Family
ID=67995093
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018045127A Pending JP2019161430A (ja) | 2018-03-13 | 2018-03-13 | 画像読取装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2019161430A (ja) |
-
2018
- 2018-03-13 JP JP2018045127A patent/JP2019161430A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20100302605A1 (en) | Image Reading Apparatus | |
JP6554973B2 (ja) | 画像読取装置 | |
US8243351B2 (en) | Image reading apparatus, multifunction printer apparatus, and image processing method | |
JP6152819B2 (ja) | 画像読取装置 | |
JP6156746B2 (ja) | 画像読取装置 | |
JP6142815B2 (ja) | 画像読取装置 | |
US8237986B2 (en) | Image reading apparatus, multifunction printer apparatus, and image processing method | |
JP2019161430A (ja) | 画像読取装置 | |
JP2021158562A (ja) | 画像読取装置 | |
US8345331B2 (en) | Image reading apparatus, multifunction printer apparatus, and image processing method | |
JP2017059879A (ja) | 画像読取装置及び画像形成装置 | |
JP6658166B2 (ja) | 読取装置、読取方法、および読取プログラム | |
JP4933418B2 (ja) | 画像読取装置、マルチファンクションプリンタ装置、及び画像処理方法 | |
JP5817312B2 (ja) | 画像読取装置および画像形成装置 | |
JP2019165367A (ja) | 画像読取装置 | |
JP4142524B2 (ja) | 画像読取装置及び画像読取方法 | |
US10440225B2 (en) | Image scanner | |
JP6508573B2 (ja) | 画像読取装置 | |
JP6493807B2 (ja) | 画像読取装置 | |
JP6512005B2 (ja) | 画像読取装置 | |
KR100671553B1 (ko) | 자동으로 칼라를 보정하는 화상형성장치 및 그 방법 | |
JP5984856B2 (ja) | 画像読取装置、画像形成装置 | |
JP4876983B2 (ja) | 画像読取装置、その制御方法及びそのプログラム | |
JP6311576B2 (ja) | 画像読取装置 | |
US20190268505A1 (en) | Image scanner |