(57)【特許請求の範囲】
【請求項１】
載置された原稿を照明する光源と、原稿からの反射光もしくは透過光を１ラインずつ読み取る光電変換部と、前記光電変換部に原稿からの反射光もしくは透過光を導く光学系と、前記光電変換部を規定の方向に規定の周期で変位させ、１ライン毎に異なる位置で画像を読み取らせるアクチュエータと、読み取った画像中の復元すべき画素位置の周囲から２画素の組を複数組抽出する抽出手段と前記抽出された複数の組に対して各々の画素値の差分を求める差分算出手段とを有する中央処理装置と、を有し、前記中央処理装置は、求めた差分が最小となる組を選択し、選択された組の２画素の値を用いて、復元すべき画素の位置の画素値を決定する決定手段を有することを特徴とする画像読み取り装置。
【請求項２】
前記抽出手段は、復元すべき画素位置に対してライン方向に隣接した２画素の組および復元すべき画素位置に対してライン方向と直交する方向に隣接した２画素の組を抽出することを特徴とする請求項１に記載の画像読み取り装置。
【請求項３】
前記抽出手段は、復元すべき画素位置に対してライン方向に隣接した２画素の組および復元すべき画素位置に対してライン方向と直交する方向に隣接した２画素の組に加えて、復元すべき画素位置に隣接し、かつ前記ライン方向の線上および前記ライン方向に直交する方向の線上と同一線上には存在しない２画素の組を複数組抽出することを特徴とする請求項１に記載の画像読み取り装置。
【請求項４】
前記決定手段は、前記抽出手段により抽出された複数の組に関して、画素値の差分が小さいものから所定の数の組を選択し、選択された組の画素の値と過去に復元された画素の値に基づいて、復元すべき画素の位置の画素値を決定することを特徴とする請求項３に記載の画像読み取り装置。
【請求項５】
前記差分算出手段は、カラー画像を構成する複数の色プレーンのうち予め定められた１つの基準色プレーンを用いて、前記抽出された複数の組に対して各々の画素値の差分を求め、前記決定手段は、求めた差分が最小となる組を選択し、選択された組の２画素の値を用いて復元すべき画素の位置の画素値を決定すると共に、前記最小となる組の選択に基づき、復元すべき画素の値を決定することを特徴とする請求項１に記載の画像読み取り装置。
【請求項６】
前記アクチュエータは、読み取るべき最初のラインにおいて、前記光電変換部を規定の方向に変位させることを特徴とする請求項１に記載の画像読み取り装置。
【請求項７】
前記中央処理装置は、画像読み取り動作に中断が発生した場合、中断発生時点で前記光電変換部が変位されていた方向に基づいて、中断解除後の最初のラインを読み取る際に、前記光電変換部を変位させる変位手段を有することを特徴とする請求項１に記載の画像読み取り装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、原稿画像を読み取る画像読み取り装置に関する。
【０００２】
【従来の技術】
従来から、画像読み取り装置は、スキャナ、ファクシミリ、複写機等の画像入力部として用いられており、最近では高解像度化に対する要求が高まっている。画像読み取り装置の高解像度化には、レンズ系などの光学系の精度を上げると共に、光学情報を電気情報に変換する光電変換素子の画素を高密度化する方法があるが、この方法では材料費、加工費が非常に高額になってしまう。
【０００３】
一般的には得られた画像データを補間により水増しする方法がとられている。この方法は非常に簡単に実現できるため、多くの画像読み取り装置で採用されている。以降図２２を用いて従来の技術を説明する。
【０００４】
図２２は一般的な画像読み取り装置の概略を示す構成図である。図２２において、１は画像読み取り装置、２は読み取らせる原稿を載置する原稿ガラス、３は原稿を走査して読みとるキャリッジ、４はキャリッジを駆動する駆動源としてのステッピングモータ、５は駆動プーリ、６はタイミングベルト、７はベルト、８は従動プーリ、９は原稿ガラス２上に載置された原稿、１０は支持部１１によって開閉可能に支持されている原稿カバー、１２は原稿ガラス２上に白色の基準板が張り付けられている基準取得位置、ｐｏ１はキャリッジ３のホームポジションである。
【０００５】
このように構成された画像読み取り装置について、その機能を説明する。キャリッジ３は図示しないシャフト、レール等の支持部材により支持され、移動方向を一方向に規制されている。また駆動源４で発生した動力は、タイミングベルト６によって駆動プーリ５に伝達される。ベルト７は駆動プーリ５と従動プーリ８の間に張られ、駆動プーリ５の回転に伴ってキャリッジ３を方向ｄ１及びその逆方向に移動させる。原稿９はキャリッジ３の移動によりライン単位に読み取られる。画像読み取り装置が待機中の場合は、キャリッジ３は必ずホームポジションｐｏ１に位置している。
【０００６】
図２３は従来の画像読み取り装置のキャリッジの内部構造を示す断面図である。図２３において、１３は原稿を照射するランプ、１４は実質的に画像読み取り位置を特定するアパーチャ、１５ａ、１５ｂ、１５ｃは原稿からの反射光を反射する反射ミラー、１６は光学情報を電気信号に変換する光電変換部としてのイメージセンサ、１７はイメージセンサ１６上にイメージを結像させる結像レンズである。イメージセンサ１６はキャリッジ３の内部に固定されており、原稿９から反射され、反射ミラー１５及びレンズ１７により縮小されて結像した光学情報を、原稿面と一対一の関係で読み取る。
【０００７】
以上の様に構成された画像読み取り装置について、図２２及び図２３を用いてその動作を説明する。
【０００８】
装置の電源が投入されると、キャリッジ３は初期位置にかかわらず、ホームポジションｐｏ１に復帰する。その後、アパーチャ１４が白色基準板の直下となる基準取得位置１２に移動し、ランプ１３を点灯して白色基準板を実際に読み取り、イメージセンサ１６から出力されるアナログ信号に対する増幅率の決定、及び白黒レベルの補正（シェーディング補正）等を行なう。その後再度ホームポジションｐｏ１に復帰し、待機状態となる。
【０００９】
次に、従来の画像読み取り装置の読み取り動作について説明する。例えばパーソナルコンピーュータなどのホスト装置（図示せず、以下単に「ＰＣ」と略称する）より、読み取り解像度、読み取り範囲等の設定を行なった後、原稿の読み取り命令が出されると、ランプ１３を点灯すると共に駆動源４を回転し、タイミングベルト６、駆動プーリ５、ベルト７及び従動プーリ８を介して駆動力をキャリッジ３に伝達し、キャリッジ３を方向ｄ１に移動させる。ＰＣから設定された読み取り範囲に対応した領域の先頭にキャリッジ３が到達する直前に、ＰＣから予め設定された読み取り解像度に対応した速度に駆動速度を変更し、原稿ガラス２上に載置された原稿の読み取りを開始する。原稿９は、原稿ガラス２を通してランプ１３により照射され、原稿からの反射光は反射ミラー１５ａ、１５ｂ、１５ｃにより反射され、結像レンズ１７によりイメージセンサ１６上に縮小して結像され、電気信号に変換される。指定された読み取り範囲に対する読み取り動作が終了すると、キャリッジ３を方向ｄ１とは逆方向に移動させ、ホームポジションｐｏ１に復帰させる。
【００１０】
次に、従来の画像読み取り装置におけるデータ補間処理について図２４を用いて説明する。図２４は補間処理前の読み取り結果を示すデータ図である。実際の画像読み取り装置では、補間処理はハードウェアにより逐次処理されているが、ここでは説明を簡単にするため、一旦読み取った画像データを補間により水増しすると仮定して説明する。図２４において、１８は一画素のサイズ、１９はイメージセンサ１６の画素がライン状に連なる方向すなわち１ラインを読み取る場合のライン方向である主走査方向、２０はキャリッジ３が移動しながら各ラインを読み取る方向である副走査方向である。
【００１１】
一画素のサイズ１８は主にレンズ１７の性能により決定される。また、Ｌ１、Ｌ２、Ｌ３、Ｌ４、Ｌ５、Ｌ６はそれぞれ読み取りラインを、Ｐ１１、Ｐ１２、Ｐ１３、Ｐ１４は読み取りラインＬ１における読み取りデータを、Ｐ２１、Ｐ１２、Ｐ２３、Ｐ２４は読み取りラインＬ２における読み取りデータを、Ｐ３１、Ｐ３２、Ｐ３３、Ｐ３４は読み取りラインＬ３における読み取りデータを、Ｐ４１、Ｐ４２、Ｐ４３、Ｐ４４は読み取りラインＬ４における読み取りデータを、Ｐ５１、Ｐ５２、Ｐ５３、Ｐ５４は読み取りラインＬ５における読み取りデータを、Ｐ６１、Ｐ６２、Ｐ６３、Ｐ６４は読み取りラインＬ６における読み取りデータをそれぞれ示す。実際に読み取られる画素のサイズは、主走査方向、副走査方向とも一画素のサイズ１８と変わらないが、副走査方向ではキャリッジ３を一画素のサイズ１８の半分のピッチで駆動しながら読み取っているため、ライン間隔は一画素のサイズ１８の半分となっている。実際の光学系の解像度は一画素のサイズ１８で決まるため、副走査方向を一画素のサイズ１８より小さいピッチで分割して読み取っても分解能は単純に２倍にはならない。しかし原稿情報のエッジ成分は不完全ながらも取得することができるため、副走査方向の駆動ピッチを小さくすることで、原稿のディテールを読み取ることができる。
【００１２】
このようにして、ラインＬ１に対して読み取りデータＰ１１〜Ｐ１４が、ラインＬ２に対して読み取りデータＰ２１〜Ｐ２４が、ラインＬ３に対して読み取りデータＰ３１〜Ｐ３４が、ラインＬ４に対して読み取りデータＰ４１〜Ｐ４４が、ラインＬ５に対して読み取りデータＰ５１〜Ｐ５４が、ラインＬ６に対して読み取りデータＰ６１〜Ｐ６４が得られる。
【００１３】
次に、図２５、図２６を用いて補間処理の過程を説明する。図２５は従来例において得られた読み取りデータＰ１１〜Ｐ１４、Ｐ２１〜Ｐ２４、Ｐ３１〜Ｐ３４、Ｐ４１〜Ｐ４４、Ｐ５１〜Ｐ５４、Ｐ６１〜Ｐ６４を、主走査方向、副走査方向とも、図２４の一画素サイズ１８の２倍の解像度のメッシュで置き換えたとき、各画素の位置関係を示すデータ図である。また２１は補間処理後の一画素のサイズを示す。図２４における一画素のサイズ１８と比較すると補間処理後の一画素のサイズ２１は面積的に１／４となる。
【００１４】
図２６は図２５の位置関係に配置された各画素を補間により水増しする過程を示すデータ図である。図２６において、ι１〜ι３、κ１〜κ３、λ１〜λ３は夫々補間により生成された画素を示している。これらの画素は、主走査方向１９に隣接する画素の平均を取ることで補間生成される。即ち第一ライン目は、
ι１＝（Ｐ１１＋Ｐ１２）／２
ι２＝（Ｐ１２＋Ｐ１３）／２
ι３＝（Ｐ１３＋Ｐ１４）／２
・・・・・
第二ライン目は、
κ１＝（Ｐ２１＋Ｐ２２）／２
κ２＝（Ｐ２２＋Ｐ２３）／２
κ３＝（Ｐ２３＋Ｐ２４）／２
・・・・・
同様にして、第三ライン目は、
λ１＝（Ｐ３１＋Ｐ３２）／２
λ２＝（Ｐ３２＋Ｐ３３）／２
λ３＝（Ｐ３３＋Ｐ３４）／２
・・・・・
の演算により補間を行う。
【００１５】
【発明が解決しようとする課題】
このように、補間によるデータ水増しは、非常に簡単な公知のディジタルデータ処理により実現できるため、ほとんどの画像読み取り装置に採用されている。しかしながら、補間でデータを水増しする場合は、実際には取得していない読み取り位置の画素を単純な固定規則に基づいて増やすだけの処理であり、解像度を向上することは原理的に困難であるという問題点を有していた。一般的には補間演算として、上述してきた線形補間が用いられており、少なくとも実質的な解像度の尺度であるＭＴＦ（Modulation Transfer Function）を向上させることはできない。より具体的に言えば、例えば補間により生成されるべき画素位置にエッジが存在する場合など、エッジの情報を正しく再現することは困難であり、エッジの先鋭度は大きく劣化してしまう。
【００１６】
この画像読み取り装置では、読み取り画像のエッジ成分を忠実に復元することが要求されている。
【００１７】
本発明は、読み取り画像のエッジ成分を忠実に復元することができる画像読み取り装置を提供することを目的とする。
【００１８】
【課題を解決するための手段】
この課題を解決するために本発明の画像読み取り装置は、載置された原稿を照明する光源と、原稿からの反射光もしくは透過光を１ラインずつ読み取る光電変換部と、光電変換部に原稿からの反射光もしくは透過光を導く光学系と、光電変換部を規定の方向に規定の周期で変位させ、１ライン毎に異なる位置で画像を読み取らせるアクチュエータと、読み取った画像中の復元すべき画素位置の周囲から２画素の組を複数組抽出する抽出手段と抽出された複数の組に対して各々の画素値の差分を求める差分算出手段とを有する中央処理装置と、を有し、中央処理装置は、求めた差分が最小となる組を選択し、選択された組の２画素の値を用いて、復元すべき画素の位置の画素値を決定する決定手段を有する構成を備えている。
【００１９】
これにより、読み取り画像のエッジ成分を忠実に復元することができる画像読み取り装置が得られる。
【００２０】
【発明の実施の形態】
本発明の請求項１に記載の発明は、載置された原稿を照明する光源と、原稿からの反射光もしくは透過光を１ラインずつ読み取る光電変換部と、光電変換部に原稿からの反射光もしくは透過光を導く光学系と、光電変換部を規定の方向に規定の周期で変位させ、１ライン毎に異なる位置で画像を読み取らせるアクチュエータと、読み取った画像中の復元すべき画素位置の周囲から２画素の組を複数組抽出する抽出手段と抽出された複数の組に対して各々の画素値の差分を求める差分算出手段とを有する中央処理装置と、を有し、中央処理装置は、求めた差分が最小となる組を選択し、選択された組の２画素の値を用いて、復元すべき画素の位置の画素値を決定する決定手段を有することとしたものであり、補間データが忠実に再現され、従って読み取り画像のエッジ成分が忠実に復元されるという作用を有する。
【００２１】
請求項２に記載の発明は、請求項１に記載の発明において、抽出手段は、復元すべき画素位置に対してライン方向に隣接した２画素の組および復元すべき画素位置に対してライン方向と直交する方向に隣接した２画素の組を抽出することとしたものであり、主走査方向と副走査方向の画像エッジ成分が忠実に復元されるという作用を有する。
【００２２】
請求項３に記載の発明は、請求項１に記載の発明において、抽出手段は、復元すべき画素位置に対してライン方向に隣接した２画素の組および復元すべき画素位置に対してライン方向と直交する方向に隣接した２画素の組に加えて、復元すべき画素位置に隣接し、かつライン方向の線上およびライン方向に直交する方向の線上と同一線上には存在しない２画素の組を複数組抽出することとしたものであり、主走査方向と副走査方向の画像エッジ成分が忠実に復元されると共に、斜め方向の全てのエッジ成分が忠実に復元されるという作用を有する。
【００２３】
請求項４に記載の発明は、請求項３に記載の発明において、決定手段は、抽出手段により抽出された複数の組に関して、画素値の差分が小さいものから所定の数の組を選択し、選択された組の画素の値と過去に復元された画素の値に基づいて、復元すべき画素の位置の画素値を決定することとしたものであり、斜め方向のエッジの連続性が確実に復元されるという作用を有する。
【００２４】
請求項５に記載の発明は、請求項１に記載の発明において、差分算出手段は、カラー画像を構成する複数の色プレーンのうち予め定められた１つの基準色プレーンを用いて、抽出された複数の組に対して各々の画素値の差分を求め、決定手段は、求めた差分が最小となる組を選択し、選択された組の２画素の値を用いて復元すべき画素の位置の画素値を決定すると共に、最小となる組の選択に基づき、復元すべき画素の値を決定することとしたものであり、特に黒文字のエッジ部分の色にじみがほぼ完全に無くなるとともにハード構成が簡略化されるという作用を有する。
【００２５】
請求項６に記載の発明は、請求項１に記載の発明において、アクチュエータは、読み取るべき最初のラインにおいて、光電変換部を規定の方向に変位させることとしたものであり、画素値復元アルゴリズムが共通化されるという作用を有する。
【００２６】
請求項７に記載の発明は、請求項１に記載の発明において、中央処理装置は、画像読み取り動作に中断が発生した場合、中断発生時点で光電変換部が変位されていた方向に基づいて、中断解除後の最初のラインを読み取る際に、光電変換部を変位させる変位手段を有することとしたものであり、画像読み取りの中断が発生しても、画素値復元アルゴリズムの適用が可能になるという作用を有する。
【００２７】
以下、本発明の実施の形態について、図１〜図２２を用いて説明する。
（実施の形態１）
図１は本発明の実施の形態１による画像読み取り装置のキャリッジの内部構造を示す断面図である。
【００２８】
図１において、原稿ガラス２、キャリッジ３、原稿９、ランプ１３、アパーチャ１４、反射ミラー１５ａ、１５ｂ、１５ｃ、イメージセンサ１６、結像レンズ１７は図２３と同様のものなので、同一符号を付し、説明は省略する。２２はイメージセンサ１６を保持し、かつイメージセンサ１６を規定の振幅と規定の周波数でそのライン方向に振動させる、センサ変位部である。
【００２９】
次に、図２を用いてセンサ変位部２２を詳細に説明する。図２はセンサ変位部の詳細な構成を示す構成図である。図２は図１に示す方向ｄ２からイメージセンサ１６を見たｄ２矢視図であり、キャリッジ３の筐体や、ミラー１５、レンズ１７は省いている。
【００３０】
図２において、２３ａ、２３ｂは保持部材、２４ａ、２４ｂは板バネで構成されたプレート、２５ａ、２５ｂは支持部材、２６はアクチュエータとしての積層型ピエゾ素子である。保持部材２３ａ、２３ｂはキャリッジ３の基底部に固定され、プレート２４ａ、２４ｂは保持部材２３ａ、２３ｂにそれぞれ固定されている。支持部材２５ａ、２５ｂはイメージセンサ１６を支持する。アクチュエータ２６に規定の振幅で規定の周期信号を入力することで、アクチュエータ２６は方向ｄ３と方向ｄ４に周期的に振動する。
【００３１】
次に、本実施の形態による画像読み取り装置について、その電気系統を図３を用いて説明する。図３は本実施の形態１による画像読み取り装置の電気系統を示すブロック図である。
【００３２】
図３において、１６は図１に示すイメージセンサ、２６は図２に示すアクチュエータ、２７は増幅器及びＡ／Ｄ変換器、２８はシェーディング補正部、２９は画素値復元部、３０は画像処理部、３１はバッファ、３２はインタフェース、３３はＣＰＵ（中央処理装置）、３４は駆動波形生成部、３５はパターンメモリ、３６はアクチュエータドライバ、３７は読み取り基準信号生成部、３９はバッファ状態管理部、４０はモータ制御部、４１はステッピングモータである。なお、３８は読み取り基準信号生成部３７で生成されたパルス信号を示し、以降Ｈｓｙｎｃ３８と記述する。
【００３３】
このように構成された画像読み取り装置の電気系統の機能等を説明する。
増幅器及びＡ／Ｄ変換器２７は、イメージセンサ１６から出力されたアナログ信号ＲＧＢを規定の増幅率で増幅し、ディジタルデータＲＧＢに変換する。シェーディング補正部２８はディジタル化された画像データを白及び黒レベルの間で正規化する。画素復元部２９は入力された低解像度の画像データを高解像度データに復元する（詳細は後述する）。画像処理部３０は色補正処理や解像度変換処理などを行う。画像データは一旦バッファ３１に蓄えられた後に、画像読み取り装置から出力される。インタフェース３２はバッファ３１に蓄えられた画像データを外部の装置とネゴシエーションを取りながら出力する。ＣＰＵ３３は画像読み取り装置の全体動作を制御している。アクチュエータ駆動波形生成部３４はＣＰＵ３３に書き込まれた値に基づいた周期と振幅に基づきアクチュエータ２６を駆動するための制御波形を生成している。パターンメモリ３５には、アクチュエータ２６を駆動する波形情報がＣＰＵ３３により書き込まれている。アクチュエータドライバ３６は、アクチュエータ駆動波形生成部３４で生成された駆動波形を増幅し、アクチュエータ２６を駆動する。読み取り基準信号生成部３７はＣＰＵ３３によって予め書き込まれた値に応じて規定の周期でパルスを出力する。Ｈｓｙｎｃ３８は１ライン周期を与え、本画像読み取り装置では画像データ処理の１ライン開始信号として様々なモジュールで利用される。バッファ状態管理部３９は、バッファ３１の使用状況すなわちフルかエンプティかを監視し、ＣＰＵ３３に通知する。モータ制御部４０は、ステッピングモータ４１の駆動速度及び駆動にともなう位置（モータ駆動位置＝キャリッジ３の位置）の管理を行っている。
【００３４】
次に、図３と図４を用いてアクチュエータ２６の制御とＨｓｙｎｃ３８の関係について詳細に説明する。図４はパターンデータ及びアクチュエータドライバ３６から出力されるアクチュエータ駆動波形を示すタイミング図であり、ＣＰＵ３３の変位手段の動作説明図である。
【００３５】
アクチュエータ２６を駆動するにあたり、ＣＰＵ３３はまずパターンメモリ３５にパターンデータを書き込む。パターンデータは３２バイトで構成されており（パターン番号は０〜３１）、パターンメモリ３５の先頭から順に該当するアドレスに格納されている。パターンメモリ３５に格納されたパターンデータを規定の時間間隔で出力すれば正弦波が得られる。
【００３６】
次に、ＣＰＵ３３はアクチュエータ駆動波形生成部３４にパターンを更新する周期を書き込む。この周期は図４に示すδＴに相当している。更にＣＰＵ３３はアクチュエータ駆動波形生成部３４にパターンデータの更新開始アドレスを書き込む。本実施の形態では、図４に示すパターンデータ（番号）＝４を書き込む。次にＣＰＵ３３は読み取り基準信号生成部３７にＨｓｙｎｃ３８の生成周期を書き込む。この周期は図４に示すδＴ’に相当している。その後読み取り基準信号生成部３７の動作を開始する。これによりＨｓｙｎｃ３８の生成が開始される。一方ＣＰＵ３３はＨｓｙｎｃ３８を割り込みにより検出しており、Ｈｓｙｎｃ３８を検出したら、直ちにアクチュエータ駆動波形生成部３４の動作を開始する。さて上記δＴ（アクチュエータ駆動波形生成部３４におけるパターン更新周期）と、δＴ’（Ｈｓｙｎｃ３８の生成周期）は、アクチュエータ駆動とＨｓｙｎｃの同期を合わせるために、厳密な整数比をもつ必要がある。本発明にかかる画像読み取り装置では、この比を８としている。即ち、アクチュエータ駆動波形生成部３４がパターンデータを８回更新する毎にＨｓｙｎｃ３８が１回発生するようになっている。このようにすれば、パターンデータを３２回、即ちアクチュエータ駆動波形生成部３４に設定された、正弦波の一周期では、Ｈｓｙｎｃ３８は４回発生することになり、その位相関係は完全に同期が取られる。
【００３７】
動作を開始したアクチュエータ駆動波形生成部３４は、ＣＰＵ３３により設定されたパターンデータ更新開始アドレスに基づき、アドレスの内容を取りだし、Ｄ／Ａ変換を行い（Ｄ／Ａ変換器は図示せず）、アクチュエータドライバ３６に出力する。アクセスされたアドレスが先頭から３２バイトを越えた場合は、パターンデータのアドレスは、パターンメモリ３５の先頭アドレスにリセットされる。アクチュエータドライバ３６は入力されたレベル信号を規定の増幅率に従って増幅し、アクチュエータ２６に出力する。本実施の形態による画像読み取り装置では、アクチュエータドライバ３６は５０Ｖを中心とする±５０Ｖの信号をアクチュエータ２６に出力する。この信号はそのまま振幅レベルとなり、本実施の形態では、０Ｖと１００Ｖのときとでは、イメージセンサ１６上で、主走査方向に１／２画素分だけ読み取り位置が変位するようになっている。
【００３８】
以上の処理により、図４に示すようにＨｓｙｎｃ３８とパターンデータの更新は完全に同期をとることができる。更にＣＰＵ３３は任意の時点でＨｓｙｎｃ３８の生成を開始すると共に、Ｈｓｙｎｃ３８と同期したアクチュエータ２６の振動を開始することができる。こうしてアクチュエータ２６は主走査方向にスイング動作を行うが、スイング動作を行いながらの画像読み取りでは積分効果により画像がぼやけるのを防止するため、スイング速度が小さい図４に示す正弦波の２つの頂点付近で画像を読み取る必要がある。このため期間Ａ、期間Ｂ、期間Ｃ・・・のうち、期間Ａ及び期間Ｃに限って読み取りデータを有効としている。即ちＨｓｙｎｃ３８が示す全ラインのうち１／２のラインを有効ラインとする。これは例えばイメージセンサ１６の出力段にＨｓｙｎｃ３８の検出回数によるゲート手段を設けることで容易に実現できる。Ｈｓｙｎｃ３８は１ラインの先頭を示す同期信号だから、期間Ａと、期間Ｃの画像データを得ようとすると、図４に○で示した位置のＨｓｙｎｃ３８に基づいて、データ処理を実施すればよい。
【００３９】
以上述べてきたようにアクチュエータ２６は、有効な１ライン毎に振動（スイング）する。これによりイメージセンサ１６は有効な１ライン毎に一画素の半分のサイズ分だけ位相をずらして画像を読み取っていく。また、本実施の形態では、本来全てを有効にするＨｓｙｎｃ３８の１／２しか有効にしていない。これはある一定の副走査駆動速度で画像を読み取ると、副走査方向の読み取りライン数が半分になることを意味する。従って本実施の形態でイメージセンサ１６をスイング動作させて画像を読み取る場合には、スイング動作させない場合と比較して、副走査の読み取り速度（＝キャリッジの送り速度）を半分にして読み取っている。
【００４０】
次に、図５を用いて、イメージセンサ１６をスイング動作することによって得られる画像データの配置について説明する。図５はスイング動作を行いながら画像を読み取った場合の画素配置を示すデータ図である。図５において、４２は主走査方向、４３は副走査方向、４４は主にレンズの精度により決定される一画素のサイズ、４５はイメージセンサ１６の変位状態である。主走査方向４２はイメージセンサ１６の画素の配列方向であり、またアクチュエータ２６によりイメージセンサ１６がスイングする方向でもある。副走査方向４３は、キャリッジを駆動して読み取る各ラインが並ぶ方向である。以降簡単のため、レンズ系によって決定される一画素サイズは６００ｄｐｉ（Ｄｏｔ  Ｐｅｒ  Ｉｎｃｈ）とする。本実施の形態では、６００ｄｐｉの読み取りデータを１２００ｄｐｉに復元する。またＬ’１、Ｌ’２、Ｌ’３、Ｌ’４、Ｌ’５、Ｌ’６はそれぞれ読み取りラインを、Ｐ’１１、Ｐ’１２、Ｐ’１３、Ｐ’１４は読み取りラインＬ’１における読み取りデータを、Ｐ’２１、Ｐ’１２、Ｐ’２３、Ｐ’２４は読み取りラインＬ’２における読み取りデータを、Ｐ’３１、Ｐ’３２、Ｐ’３３、Ｐ’３４は読み取りラインＬ’３における読み取りデータを、Ｐ’４１、Ｐ’４２、Ｐ’４３、Ｐ’４４は読み取りラインＬ’４における読み取りデータを、Ｐ’５１、Ｐ’５２、Ｐ’５３、Ｐ’５４は読み取りラインＬ’５における読み取りデータを、Ｐ’６１、Ｐ’６２、Ｐ’６３、Ｐ’６４は読み取りラインＬ’６における読み取りデータをそれぞれ示す。
【００４１】
実際に読み取られる画素のサイズは、主走査方向４２、副走査方向４３とも６００ｄｐｉの一画素サイズ４４と変わらないが、副走査方向４３ではキャリッジ３（図１、図２２参照）を一画素のサイズ４４の１／４のピッチ（２４００ｄｐｉピッチ）で駆動し、かつＨｓｙｎｃ３８を間欠的に半分を有効にしながら読み取っているため、ライン間隔は６００ｄｐｉの一画素のサイズ４４の半分、即ち１２００ｄｐｉピッチとなっている。更に変位状態４５に示すように、有効な１ライン毎に主走査方向に画素を１／２ずつ変位させて読み取っているため、読み取りラインＬ’２、Ｌ’４、Ｌ’６に含まれる画素は、読み取りラインＬ’１、Ｌ’３、Ｌ’５に含まれる画素に対して１／２画素だけ、主走査方向にずれて読み取られる。実際の読み取り解像度は一画素のサイズ４４で決まるため、主走査方向並びに副走査方向を一画素のサイズ４４より小さい１／２ピッチで分割して読み取っても面積的な分解能は単純に４倍にはならない。しかし、原稿情報のエッジ成分は不完全ながらも取得することができるため、主走査方向並びに副走査方向のピッチを小さくすることで、原稿のディテールを読み取ることができる。
【００４２】
このようにして、ラインＬ’１に対して読み取りデータＰ’１１〜Ｐ’１４が、ラインＬ’２に対して読み取りデータＰ’２１〜Ｐ’２４が、ラインＬ’３に対して読み取りデータＰ’３１〜Ｐ’３４が、ラインＬ’４に対して読み取りデータＰ’４１〜Ｐ’４４が、ラインＬ’５に対して読み取りデータＰ’５１〜Ｐ’５４が、ラインＬ’６に対して読み取りデータＰ’６１〜Ｐ’６４が得られる。
【００４３】
次に、図６、図７、図８、図９を用いて画素復元処理の過程を説明する。図６は得られた読み取りデータＰ’１１〜Ｐ’１４、Ｐ’２１〜Ｐ’２４、Ｐ’３１〜Ｐ’３４、Ｐ’４１〜Ｐ’４４、Ｐ’５１〜Ｐ’５４、Ｐ’６１〜Ｐ’６４を、主走査方向、副走査方向とも図５の６００ｄｐｉの一画素サイズ４４の２倍の解像度のメッシュで置き換えたとき、各画素の位置関係を示すデータ図である。また、４６は画素復元処理後の一画素のサイズすなわち１２００ｄｐｉの一画素サイズを示す。図５と比較すると画素復元処理後の一画素のサイズは面積的に１／４となる。また各画素はスイング動作の結果千鳥状に配置されている。
【００４４】
次に、図７を用いて先頭ラインと先頭行の画像データ復元過程を説明する。図７は先頭ラインと先頭行の画素値を復元する過程を示すデータ図である。まず先頭行（主走査方向）の画素を復元する過程を説明する。復元すべき位置の画素をＸ１、Ｘ２、Ｘ３・・・とする。このとき、
Ｘ１＝（Ｐ’１１＋Ｐ’１２）／２
Ｘ２＝（Ｐ’１２＋Ｐ’１３）／２
Ｘ３＝（Ｐ’１３＋Ｐ’１４）／２
・・・・・
のように復元する。
【００４５】
次に先頭列（副走査方向）の画素を復元する過程を説明する。復元すべき位置の画素をＹ１、Ｙ２・・・とする。このとき、
Ｙ１＝（Ｐ’１１＋Ｐ’３１）／２
Ｙ２＝（Ｐ’３１＋Ｐ’５１）／２
・・・・・
のように復元する。
【００４６】
さて、以上の復元過程は単なる補間であるが、上述の過程により、先頭行と先頭列を除いた画素の復元を行うための前処理を確実に行うことができる。もし単純補間のデータの出力を禁止する必要があれば、例えば出力段に、ゲート回路を付与することで、簡単に実現できる。
【００４７】
次に、図８を用いて、ラインＬ’２の復元過程（中央処理装置３３の抽出手段および差分算出手段（図示せず）の動作）について説明する。図８はラインＬ’２の復元過程を示すデータ図である。図８において、４７ａは復元されるべき画素位置α１の画素値を求めるためのウィンドウであり、４７ｂは復元されるべき画素位置α２の画素値を求めるためのウィンドウであり、４７ｃは復元されるべき画素位置α３の画素値を求めるためのウィンドウである。説明を簡単にするために、まず復元されるべき画素位置α１の画素値の復元過程を説明する。α１と強連結関係にある画素は、Ｐ’１２、Ｐ’２１、Ｐ’２２、Ｐ’３２である。このなかから、α１に対して主走査方向に隣接するＰ’２１とＰ’２２の組と、α１に対して副走査方向に隣接するＰ’１２とＰ’３２の組を抽出する。
【００４８】
次に、Ｐ’２１とＰ’２２の組における差分ＤＩＦ１、及びＰ’１２とＰ’３２の組における差分ＤＩＦ２を次のように求める。
【００４９】
ＤＩＦ１＝｜Ｐ’２１−Ｐ’２２｜
ＤＩＦ２＝｜Ｐ’１２−Ｐ’３２｜
ここで、ＤＩＦ１＜ＤＩＦ２であればＰ’２１とＰ’２２の組を、それ以外の場合はＰ’１２とＰ’３２の組をα１の画素を計算するための画素の組として選定する。即ち抽出した組の差分を各々調べ、差分が小さい組を復元対象画素を算出するための組として選んでいる。選ばれた組の画素値を用いて、α１は次のように計算される。もしＤＩＦ１＜ＤＩＦ２が成立すれば、
α１＝（Ｐ’２１＋Ｐ’２２）／２
もしＤＩＦ１＜ＤＩＦ２が不成立であれば、
α１＝（Ｐ’１２＋Ｐ’３２）／２
このようにすることで、例えばＰ’１２→α１→Ｐ’３２にエッジが連続する場合は、エッジライン上の画素値は大きく変動しないので、Ｐ’１２とＰ’３２の値には大差がなく、結果としてＰ’１２とＰ’３２の組が選択され、この組から計算されるα１の値は妥当なものとなる。もしここでＰ’２１とＰ’２２の組が選択されてしまうと、通常エッジの前後では画素値が異なるため、補間によりエッジのラインはぼかされてしまう。このように算出するための組を選び、補間データ値を決定するのは中央処理装置３３の決定手段（図示せず）である。
【００５０】
以上のように、組となった２つの画素値の差分が小さい組を選択すれば、少なくとも主走査方向と副走査方向に連続するエッジ成分は保持されることになる。同様にして、ウィンドウ４７ｂにおいて復元すべき画素位置α２の画素に対して、２つの組の差分は、
ＤＩＦ１＝｜Ｐ’２２−Ｐ’２３｜
ＤＩＦ２＝｜Ｐ’１３−Ｐ’３３｜
のようになり、α２は次のように計算される。
【００５１】
もしＤＩＦ１＜ＤＩＦ２が成立すれば、
α２＝（Ｐ’２２＋Ｐ’２３）／２
もしＤＩＦ１＜ＤＩＦ２が不成立であれば、
α２＝（Ｐ’１３＋Ｐ’３３）／２
同様にして、ウィンドウ４７−３において復元すべき画素位置α３の画素に対して、
ＤＩＦ１＝｜Ｐ’２３−Ｐ’２４｜
ＤＩＦ２＝｜Ｐ’１４−Ｐ’３４｜
のようになり、α３は次のように計算される。
【００５２】
もしＤＩＦ１＜ＤＩＦ２が成立すれば、
α３＝（Ｐ’２３＋Ｐ’２４）／２
もしＤＩＦ１＜ＤＩＦ２が不成立であれば、
α３＝（Ｐ’１４＋Ｐ’３４）／２
次に，図９を用いて、ラインＬ’３の復元過程について説明する。図９はラインＬ’３の復元過程を示すデータ図である。
【００５３】
図９において、４８ａは復元されるべき画素位置β１の画素値を予測するためのウィンドウ、４８ｂは復元されるべき画素位置β２の画素値を予測するためのウィンドウ、４８ｃは復元されるべき画素位置β３の画素値を予測するためのウィンドウである。
【００５４】
説明を簡単にするために、まず復元されるべき画素位置β１の画素値の復元過程を説明する。β１と強連結関係にある画素は、Ｐ’２１、Ｐ’３１、Ｐ’３２、Ｐ’４１である。このなかから、β１に対して主走査方向に隣接するＰ’３１とＰ’３２の組と、β１に対して副走査方向に隣接するＰ’２１とＰ’４１の組を抽出する。
【００５５】
次に、Ｐ’３１とＰ’３２の組における差分ＤＩＦ１、及びＰ’２１とＰ’４１の組における差分ＤＩＦ２を次のように求める。
【００５６】
ＤＩＦ１＝｜Ｐ’３１−Ｐ’３２｜
ＤＩＦ２＝｜Ｐ’２１−Ｐ’４１｜
ここで、ＤＩＦ１＜ＤＩＦ２であればＰ’３１とＰ’３２の組を、それ以外の場合はＰ’２１とＰ’４１の組をβ１の画素を計算するための画素の組として選定する。即ち抽出した組の差分を各々調べ、差分が小さい組を復元対象画素を算出するための組として選んでいる。
【００５７】
選ばれた組の画素値を用いて、β１は次のように計算される。
もしＤＩＦ１＜ＤＩＦ２が成立すれば、
β１＝（Ｐ’３１＋Ｐ’３２）／２
もしＤＩＦ１＜ＤＩＦ２が不成立であれば、
β１＝（Ｐ’２１＋Ｐ’４１）／２
このようにすることで、例えばＰ’２１→β１→Ｐ’４１にエッジが連続する場合は、エッジライン上の画素値は大きく変動しないので、Ｐ’２１とＰ’４１の値には大差がなく、結果としてＰ’２１とＰ’４１の組が選択され、この組から計算されるβ１の値は妥当なものとなる。もしここでＰ’３１とＰ’３２の組が選択されてしまうと、通常エッジの前後では画素値が異なるため、補間によりエッジのラインはぼかされてしまう。
【００５８】
以上のように、組となった２つの画素値の差分が小さい組を選択すれば、少なくとも主走査方向と副走査方向に連続するエッジ成分は保持されることになる。同様にして、ウィンドウ４８ｂにおいて復元すべき画素位置β２の画素に対して、２つの組の差分は、
ＤＩＦ１＝｜Ｐ’３２−Ｐ’３３｜
ＤＩＦ２＝｜Ｐ’２２−Ｐ’４２｜
のようになり、β２は次のように計算される。
【００５９】
もしＤＩＦ１＜ＤＩＦ２が成立すれば、
β２＝（Ｐ’３２＋Ｐ’３３）／２
もしＤＩＦ１＜ＤＩＦ２が不成立であれば、
β２＝（Ｐ’２２＋Ｐ’４２）／２
同様にして、ウィンドウ４８−３において復元すべき画素位置β３の画素に対して、
ＤＩＦ１＝｜Ｐ’３３−Ｐ’３４｜
ＤＩＦ２＝｜Ｐ’２３−Ｐ’４３｜
のようになり、α３は次のように計算される。
【００６０】
もしＤＩＦ１＜ＤＩＦ２が成立すれば、
β３＝（Ｐ’３３＋Ｐ’３４）／２
もしＤＩＦ１＜ＤＩＦ２が不成立であれば、
β３＝（Ｐ’２３＋Ｐ’４３）／２
以上述べてきたように、画素値の復元は、復元すべき画素位置に対して主走査方向に隣接する２画素の組と、副走査方向に隣接する２画素の組を抽出し、各組の画素値の差分が小さい方の組を用いて、復元すべき画素位置の画素値を決定している。エッジが連続する方向では復元すべき画素位置に隣接する画素値の差分は小さく、エッジの前後では復元すべき画素位置に隣接する画素値の差分が大きくなることを利用して、結果的にエッジの方向に適応した補間を実施していることになる。これによりエッジ部分の劣化を最小限に抑制することが可能となる。例えば副走査方向に連続するエッジが読み取り画像に存在する場合、従来例の単純平均による補間では、エッジ情報は確実に鈍ってしまうが、本実施の形態で述べたアルゴリズムを使用すれば、エッジ情報は完全に保持される。このためエッジ部分は非常に滑らかに再現されることとなる。
【００６１】
以上の効果は主走査方向に連続するエッジでも同様であり、また全ての画素値が滑らかに変化する中間調画像の部分では、復元すべき画素位置に対して主走査方向に隣接する画素値の差分と、同副走査方向に隣接する画素値の差分は似たような値になる。従って中間調画像の濃度の連続性は損なわれることなく、ほとんど維持される。
【００６２】
以上の説明は、画像読み取り装置で読み取られる画像データのある１つの色プレーンに対する処理であるが、カラー画像を読み取る画像読み取り装置では、Ｒ（Ｒｅｄ）、Ｇ（Ｇｒｅｅｎ）、Ｂ（Ｂｌｕｅ）の３つの色プレーンが存在する。上述したアルゴリズムを、これら全てのプレーンに対して独立に適用することはもちろん可能であるが、視覚特性上のエッジ情報は、上記ＲＧＢプレーンのＧプレーンとの相関が高いことから、Ｇプレーンに対して、復元すべき画素位置に対して主走査方向に隣接する２画素の組と、副走査方向に隣接する２画素の組を抽出し、これら２組から計算される、復元すべき画素位置の画素値の候補に対して、各組の画素値の差分が小さい方の組を用いて、２つの候補から復元すべき画素位置の画素値を決定し、ＲプレーンとＢプレーンは、Ｇプレーンで２候補から選択した選択規則を用いて画素値を決定することができる。
【００６３】
次に、図３の画素値復元部２９の詳細な構成について、図１０を用いて説明する。図１０はＧプレーンにおける候補選択規則に基づく画素復元回路の構成を示すブロック図である。
【００６４】
図１０において、４９ａは第１の差分検出部、４９ｂは第２の差分検出部、５０ａは第１のＧ候補算出部、５０ｂは第２のＧ候補算出部、５２は比較器、５４、５７、６０はセレクタ、５６ａは第１のＢ候補算出部、５６ｂは第２のＢ候補算出部、５９ａは第１のＲ候補算出部、５９ｂは第２のＲ候補算出部である。また、５３は候補選択規則信号、５５はＧ復元画素値、５８はＢ復元画素値、６１はＲ復元画素値である。
【００６５】
まずＧプレーンの画像データに対する処理を説明する。
第１の差分検出部４９ａは、復元すべき画素位置に対して主走査方向に隣接する２画素の差分を検出する。第２の差分検出部４９ｂは、復元すべき画素位置に対して副走査方向に隣接する２画素の差分を検出する。第１のＧ候補算出部５０ａは、復元すべき画素位置の主走査方向に隣接する２つの画素の平均を算出する。第２のＧ候補算出部５０ｂは、復元すべき画素位置の副走査方向に隣接する２つの画素の平均を算出する。比較器５２は、第１の差分検出部４９ａと第２の差分検出部４９ｂの出力から小さい値を選択し、候補選択規則信号５３を出力する。候補選択規則信号５３はセレクタ５４に入力され、セレクタ５４は候補選択規則信号５３に基づき、第１のＧ候補算出部５０ａ、第２のＧ候補算出部５０ｂのいずれかの出力を選択する。セレクタ５４の出力がＧプレーンの復元画素値５５となる。
【００６６】
次にＢプレーンに対する処理を説明する。
第１のＢ候補算出部５６ａは、復元すべき画素位置の主走査方向に隣接する２つの画素の平均を算出する。第２のＢ候補算出部５６ｂは、復元すべき画素位置の副走査方向に隣接する２つの画素の平均を算出する。Ｇプレーンを参照して得られた候補選択規則信号５３はセレクタ５７にも入力され、セレクタ５７は候補選択規則信号５３に基づき、候補算出部５６ａ、候補算出部５６ｂのいずれかの出力を選択する。セレクタ５７の出力がＢプレーンの復元画素値５８となる。
【００６７】
次に、Ｒプレーンに対する処理を説明する。
第１のＲ候補算出部５９ａは、復元すべき画素位置の主走査方向に隣接する２つの画素の平均を算出する。第２のＲ候補算出部５９ｂは、復元すべき画素位置の副走査方向に隣接する２つの画素の平均を算出する。Ｇプレーンを参照して得られた候補選択規則信号５３はセレクタ６０にも入力され、セレクタ６０は候補選択規則信号５３に基づき、候補算出部５９ａ、候補算出部５９ｂのいずれかの出力を選択する。セレクタ６０の出力がＢプレーンの復元画素値６１となる。
【００６８】
以上述べてきたようなハードウェア構成を採用しても、エッジ情報はＧプレーンとの相関が最も高いため、フルカラー画像のエッジ情報はほとんど維持されており、全く問題なく画像を復元することができる。更に例えば画像読み取り装置のＲＧＢ各色のレジストレーションが微視的にずれ、出力画像で色ずれが発生していても、特に黒文字のエッジ部分などの色にじみを少なく再現できるという効果もある。更に上述したハードウェア構成では、各色独立して画素値を予測する場合と比較するとハードウェア規模を著しく減少させることができる。
【００６９】
これまで述べてきた画素復元過程は、入力された時点の画素配置が図６に示したように予め定められた配置でなければ適用できない。これは非常に重要な前提条件である。この前提条件から外れた場合を図１１と図１２を用いて説明する。図１１は先頭ラインを読み取った際のイメージセンサの変位位置を示すデータ図である。図１１では先頭行と先頭列を復元する過程まで説明する。
【００７０】
このような入力が与えられた場合の、先頭行の画素を復元する過程を説明する。復元すべき位置の画素をＸ１、Ｘ２、Ｘ３・・・とすると、このとき、
Ｘ１＝（Ｐ’１１＋Ｐ’１２）／２
Ｘ２＝（Ｐ’１２＋Ｐ’１３）／２
Ｘ３＝（Ｐ’１３＋Ｐ’１４）／２
のように復元される。
【００７１】
次に先頭列の画素を復元する過程を説明する。復元すべき位置の画素をＹ１、Ｙ２・・・とする。このとき、
Ｙ１＝（Ｐ’１１＋Ｐ’３１）／２
Ｙ２＝（Ｐ’３１＋Ｐ’５１）／２
のように復元される。
【００７２】
このようにしてＸ１、Ｘ２、Ｘ３・・・、Ｙ１、Ｙ２・・・、の値が決定される。
【００７３】
次に図１２を用いて、Ｌ’２行を復元する際の問題点を説明する。図１２はＬ’２行を復元する際の問題点を示すデータ図である。Ｌ’１行とＬ’２行の位相関係は、本来図８に示したものでなければならない。図８ではα１と強連結関係にある画素は、Ｐ’１２、Ｐ’２１、Ｐ’２２、Ｐ’３２である。ところが図１２では復元されるべき画素位置であるα’１の強連結関係にある画素はＰ’２１、Ｐ’２２、Ｐ’１１、Ｐ’３１であり、配置がずれてしまっている。
【００７４】
画素配置が図１２の場合に、前述した画素復元アルゴリズムを適用すると、まずα’１に対して主走査方向に隣接するＰ’２１とＰ’２２の組と、α’１に対して副走査方向に隣接する（はずの）Ｐ’１２とＰ’３２の組が抽出される。次にＰ’２１とＰ’２２の組における差分ＤＩＦ１、及びＰ’１２とＰ’３２の組における差分ＤＩＦ２を次のように求める。
【００７５】
ＤＩＦ１＝｜Ｐ’２１−Ｐ’２２｜
ＤＩＦ２＝｜Ｐ’１２−Ｐ’３２｜
ここで、ＤＩＦ１＜ＤＩＦ２であればＰ’２１とＰ’２２の組を、それ以外の場合はＰ’１２とＰ’３２の組をα’１の画素を計算するための画素の組として選定する。
【００７６】
選ばれた組の画素値を用いて、α’１は次のように計算される。
もしＤＩＦ１＜ＤＩＦ２が成立すれば、
α’１＝（Ｐ’２１＋Ｐ’２２）／２
もしＤＩＦ１＜ＤＩＦ２が不成立であれば、
α’１＝（Ｐ’１２＋Ｐ’３２）／２
復元されるべき画素位置（α’１）に対して、Ｐ’２１は６２ａに示す位置にあり、これと組になるＰ’２２は６２ｂに示す位置にある。これはα’１と主走査方向に隣接しており、イメージセンサの変位位置が正規の場合の逆相であってもなんら問題はない。
【００７７】
しかし、復元されるべき画素位置（α’１）に対して、Ｐ’１２は６３ａに示す位置にあり、これと組になるＰ’３２は６３ｂに示す位置にある。これはα’１と副走査方向に２画素も離間しており、復元されるべき画素位置（α’１）との相関は非常に小さい。このような状況で画素値が復元されると、エッジの連続性は破綻し、再現は不可能となる。
【００７８】
以上から画像読み取りに関して、先頭行を読み取った時のイメージセンサの変位位置が、想定された位置と逆相になった場合は、正常にアルゴリズムが機能しないことが分かる。即ち、先頭行の変位位置は厳密に管理されなければならない。
【００７９】
次に、図３、図１３、図１４、図２２を用いて画像読み取りに際して先頭行（読み取り開始ライン）を読み取る際にイメージセンサの変位位置を管理する方法について説明する。図１３は本実施の形態１による画像読み取り装置とこれを制御するホスト装置（ＰＣ）とを示す構成図である。また、図１４は読み取り開始時点のイメージセンサ位相管理方法を示す説明図である。図１３において、１は画像読み取り装置、６５は画像読み取り装置を制御し、画像データを受け取るホスト装置（ＰＣ）、６６は画像読み取り装置１とホスト装置６５を接続するケーブルである。
【００８０】
まず図１３を用いて、一般的な画像読み取り装置の使用形態について説明する。画像読み取り装置１とホスト装置６５の間は、一般にはＳＣＳＩ（ＳｍａｌｌＣｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍ  Ｉｎｔｅｒｆａｃｅ）を用いて接続されることが多い。ＳＣＳＩでは、ホスト装置６５は画像読み取り装置１に対して、主走査並びに副走査方向の読み取り解像度、主走査並びに副走査方向の読み取り開始位置、主走査並びに副走査方向の読み取り長などを指定することができる（これらは一般にＳｅｔ  Ｗｉｎｄｏｗコマンドによって指定される）。そしてホスト装置６５が読み取り開始指令（Ｓｃａｎコマンド）を画像読み取り装置１に対して発行すると、画像読み取り装置１は、図２２に示すキャリッジ３の方向ｄ１への駆動を開始し、予め指定された、主走査および副走査方向の読み取り解像度、主走査および副走査方向の読み取り開始位置、主走査および副走査方向の読み取り長などの設定パラメータに従って画像を読み取る。
【００８１】
一般にホスト装置６５では、最終的に取得したい画像データを得る前に、低解像度（表示装置の解像度を考慮し、およそ３０ｄｐｉ〜６０ｄｐｉ程度が指定されることが多い）で画像を読み取り（プレスキャン）、プレスキャン後に、領域や読み取り解像度を指定して、最終的な画像データを読み取る（本スキャン）。
【００８２】
次に、図３を用いて、画像読み取り装置１が、指定された読み取り開始位置から画像を読み取る過程を説明する。ＣＰＵ３３はインタフェース３２（より具体的にはＳＣＳＩ）を経由して、ホスト装置（ＰＣ）６５から副走査方向の読み取り開始位置情報を入手する。ＣＰＵ３３は、読み取り開始位置情報をモータ４１の駆動ステップ数に変換する。本実施の形態による画像読み取り装置１では、図２２に示すキャリッジ３の駆動源はステッピングモータ４であるから、移動距離をステッピングモータ４に出力するパルス数に簡単に置き換えることができる。ＣＰＵ３３はモータ制御部４０に対して、ステッピングモータ４を駆動する励磁パルス周期を設定し、モータ４１（つまりステッピングモータ４）の駆動を開始する。モータ制御部４０はモータ４１に対して励磁パルスを発行する毎にＣＰＵ３３に対して励磁パルス出力通知信号を出力する。この通知信号はＣＰＵ３３の割り込み要因となっておりＣＰＵ３３は、割り込み処理において、通知信号を計数することで、モータ４１の回転量、即ち図２２のキャリッジ３の移動量を正確に把握することができる。従ってＣＰＵ３３は、ホスト装置６５から指定された、副走査方向の読み取り開始位置をステッピングモータ４の励磁信号を計数することで把握できる。
【００８３】
次に、図３と図１４を用いて、キャリッジ３が読み取り開始位置に到達したときの処理について詳細に説明する。図１４において、６７はイメージセンサ変位である。ＰＡとＰＢはイメージセンサ１６の変位位置を示しており、ＰＡの位置で最初のラインを読み取った場合に、これまで述べてきた画素値復元が可能である。一方、ＰＢはＰＡと逆位置のイメージセンサ１６の変位位置であり、もしＰＢ位置で先頭ラインを読み取った場合は、これまで述べてきた画素値復元アルゴリズムの適用は不可能である。なお、３８は前述したＨｓｙｎｃである。
【００８４】
上述したようにＣＰＵ３３はモータ制御部４０から出力される通知信号を計数することで、副走査方向のキャリッジ位置を常に管理しているから、キャリッジ３が読み取り開始指定位置に到達したことを容易に検出できる。一方、既に図４を用いて説明したように、Ｈｓｙｎｃ３８とイメージセンサ変位６７は、キャリッジ３が読み取り開始位置に到達する前に同期をとっている。ＣＰＵ３３はＨｓｙｎｃ３８も割り込みとして検出しており、アクチュエータ駆動波形生成部３４にパターンデータの更新開始アドレスを書き込んだ時点にＨｓｙｎｃ４進カウント６８を０にクリアする。以降ＣＰＵ３３はＨｓｙｎｃ３８を検出する度にＨｓｙｎｃ４進カウント６８を０〜３の間でカウントする。
【００８５】
ＣＰＵ３３が読み取り開始指定位置に到達すると、それ以降のＨｓｙｎｃ３８検出では、Ｈｓｙｎｃ４進カウント６８の値をチェックし、読み取り開始指定位置到達以降、最初の０を検出した時点で、ハードウェアを起動する。ハードウェアは次に検出されたＨｓｎｙｃ３８（Ｈｓｙｎｃ４進カウント６８の値は１）から処理動作を開始するため、最初の読み取りラインではイメージセンサ変位６７は必ずＰＡの位置となる。以上の処理により、先頭ラインの読み取る際のイメージセンサ変位を確実に管理することができる。これにより既に述べた画素値復元アルゴリズムを正常に機能させることができる。
【００８６】
次に、読み取り動作中に画像読み取りが中断するケースについて、図２２、図３、図１３を用いて説明する。
【００８７】
画像読み取り装置１はホスト装置６５と接続することで、初めて画像を読み取る機能を発揮することができるが、ホスト装置６５の性能は様々であり、ホスト装置６５の性能によって、画像読み取り装置１からホスト装置６５へ画像データを転送する時間も大きく変化する。ホスト装置側の処理速度が遅く、画像読み取り装置１から画像データを出力することができなくなった場合、画像読み取り装置１は、画像をそれ以上読み取ることができず、画像読み取り動作を中断することになる。通常はこの中断を極力少なくするため、画像読み取り装置１には、図３に示すバッファ３１が設けられており、ホスト装置６５側が画像データを受け取れなくなっても（即ちインタフェース３２において画像データの転送が停止していても）、画像読み取り装置１は画像を読み取り続けることができる。
【００８８】
しかしながら、バッファ３１の容量にも限界があり、バッファ３１の容量を越えて画像データを保持し続けることは不可能である。このように画像読み取り装置１のバッファ３１が満杯状態になることをバッファフルと呼称する。バッファフルが発生すると、画像読み取り装置１は、画像読み取り動作を一時的に中断し、ホスト装置６５がバッファ３１に保持された画像データをインタフェース３２を介して吸い上げるのを待つ。即ち、バッファ３１に多量の画像データが残っている間は、読み取り動作を中断しておき、バッファ３１がある程度空になると（バッファエンプティ）、画像読み取り動作を再開する。この動作をリスタート動作と呼称する。
【００８９】
ＣＰＵ３３は、バッファ３１の状態を管理するバッファ状態管理部３９が発生する割り込み信号（バッファモニタ信号）によってバッファフル状態への移行を検出することができる。ＣＰＵ３３は、バッファフルを検出すると、キャリッジ３を微小量、読み取り方向と逆方向に駆動し、読み取り再開に備える。その後ＣＰＵ３３はバッファモニタ信号を定期的にチェックし、バッファフル状態の解除（バッファエンプティ）を検出すると、キャリッジ３を読み取り方向に、ホスト装置６５から指定された読み取り解像度に応じた速度で駆動し、バッファフルが発生した次のラインから読み取りを再開する。
【００９０】
以上の制御では、読み取りを再開するラインを実際に読み取る時点で、イメージセンサ変位６７の方向を確実に制御する必要がある。即ち、バッファフルが発生した時点のイメージセンサ変位６７の方向に応じて、読み取りを再開するラインにおけるイメージゼンサ変位６７の方向を確実にコントロールせねばならない。このコントロールが確実になされないと、リスタート動作が発生する毎に、場合によっては原稿上の直線が切れて読み取られたり、イメージセンサ変位６７の位相が正常に保たれなくなる結果、既に述べたように、画素値復元が困難になったりする。
【００９１】
次に、図３と図１５を用いてリスタート発生時点のイメージセンサ変位位置の制御について説明する。図１５は、図３におけるモータ制御部４０の詳細を示すブロック図である。図１５において、６９、７２、７５、８８はカウンタ、７０、７１、７３、７４、７６、７７、８９、９０はレジスタ、７８はクロック信号発生器、７９〜８３、９１は比較器、８４、８６、８７は出力制御部、８５はモータドライバ、９２は両エッジ検出部、９３はゲート回路である。また、図３に示したように、３３はＣＰＵ、３７は読み取り基準信号生成部、３９はバッファ状態管理部、４１はモータであり、３８はＨｓｙｎｃである。
【００９２】
このような構成のモータ制御部４０の機能等を説明する。
カウンタ６９は、予め定められた周期のクロック信号をカウントする。レジスタ７０は、ＣＰＵ３３から値が書き込まれる。レジスタ７１は、ＣＰＵ３３から値が書き込まれる。カウンタ７２は、カウンタ６９と同様に予め定められた周期のクロック信号をカウントする。レジスタ７３は、ＣＰＵ３３から値が書き込まれる。レジスタ７４は、ＣＰＵ３３から値が書き込まれる。カウンタ７５は、予め定められた周期のクロック信号をカウントする。レジスタ７６は、Ｈｓｙｎｃ３８が発生する毎にカウンタ７５のカウント値を読み込んで保持する。レジスタ７６はＣＰＵ３３からリード可能であり、ＣＰＵ３３はＨｓｙｎｃ３８による割り込みが発生する毎に、レジスタ７６に保持されたカウンタ７５のカウント値を入手することができる。レジスタ７７は、ＣＰＵ３３から値が書き込まれる。クロック信号発生器７８は、予め定められた周期のクロック信号を発生する。クロック信号発生器７８の出力は、カウンタ６９、カウンタ７２、カウンタ７５に入力されており、これらのカウンタは、クロック信号発生器７８で発生されたクロック信号をカウントする。比較器７９は、カウンタ６９のカウント値とレジスタ７０の値を比較し、両者が一致した場合は（コンペアマッチ）一致信号を発生する。また比較器７９から出力される一致信号はＣＰＵ３３に割り込みとして通知され、ＣＰＵ３３は一致信号の発生回数をカウントする（より詳しく説明すれば、ＣＰＵ３３は比較器７９から出力される一致信号をモータ４１の励磁パルスとみなして、この計数値をキャリッジ３の位置情報として使用する）。また比較器７９の一致信号はカウンタ６９、カウンタ７２、カウンタ７５に入力され、各カウンタは一致信号の入力により０にリセットされる。即ちカウンタ６９、カウンタ７２、カウンタ７５はカウンタ６９が特定の値に達したら一斉にリセットされる、いわゆる同期動作を行っている。比較器８０は、カウンタ６９のカウント値とレジスタ７１の値を比較し、両者が一致した場合は（コンペアマッチ）一致信号を発生する。
【００９３】
比較器８１は、カウンタ７２のカウント値とレジスタ７３の値を比較し、両者が一致した場合は（コンペアマッチ）一致信号を発生する。比較器８２は、カウンタ７２のカウント値とレジスタ７４の値を比較し、両者が一致した場合は（コンペアマッチ）一致信号を発生する。比較器８３は、カウンタ７５のカウント値とレジスタ７７の値を比較し、両者が一致した場合は（コンペアマッチ）一致信号を発生する。
【００９４】
出力制御部８４は、比較器７９から出力された一致信号と、比較器８０から出力された一致信号に基づき、モータ励磁信号（１相）を生成する。モータドライバ８５は、出力制御部８４から出力された１相の励磁信号に基づきステッピングモータ４１を駆動する。出力制御部８６は、比較器８１から出力された一致信号と、比較器８２から出力された一致信号に基づき、出力制御部８４の出力と位相が９０゜ずれた信号を発生する。出力制御部８７は、比較器８３から一致信号が入力される毎にＨｉｇｈとＬｏｗを交互に反転する、いわゆるトグル出力を行う。カウンタ８８は、出力制御部８４から出力された励磁信号と、出力制御部８６から出力された信号（出力制御部８４の出力と位相が９０゜ずれた信号）とを２相入力とする位相計数カウンタである。カウンタ８８では、ＣＰＵ３３の介在なしに、モータの回転量、即ちキャリッジの移動量が計測される。
【００９５】
レジスタ８９は、Ｈｓｙｎｃ３８が発生する毎にカウンタ８８のカウント値を読み込んで保持する。レジスタ８９はＣＰＵ３３からリード可能であり、ＣＰＵ３３はＨｓｙｎｃ３８による割り込みが発生する毎に、レジスタ８９に保持されたカウンタ８８のカウント値、即ちキャリッジの位置情報を入手することができる。レジスタ９０にはＣＰＵ３３から値が書き込まれる。比較器９１は、カウンタ８８のカウント値とレジスタ９０の値とを比較し、両者が一致した場合は（コンペアマッチ）一致信号を発生する。両エッジ検出部９２は、出力制御部８７から出力されるトグル信号の両エッジを検出し、両エッジ位置に対応したパルス信号を生成する。ゲート回路９３は、比較器９１が一致信号を発生した場合には両エッジ検出部９２の信号に基づき規定の幅を持つパルス信号を出力する。ゲート回路９３の出力はＣＰＵ３３に入力される。ＣＰＵ３３はゲート回路９３の出力を割り込みとして認識する。
【００９６】
以上のように構成されたモータ制御部４０の動作を、以降図１５と図１６を用いて詳細に説明する。図１６（ａ）〜（ｈ）はバッファフル発生前後におけるモータ制御部４０の動作を示すタイミング図である。
【００９７】
図１６（ａ）、（ｃ）、（ｆ）に示すカウンタ６９、カウンタ７２、カウンタ７５はクロック信号発生器７８が発生する予め定められたクロック信号によってカウントアップされている。レジスタ７０には設定値９４が設定されており、カウンタ６９のカウント値は設定値９４に達すると０にクリアされる。また比較器７９から出力される一致信号により、カウンタ６９と同時にカウンタ７２、カウンタ７５も同時に０にクリアされる。一方、レジスタ７１には設定値９５が設定されている。設定値９５の値は、設定値９４の１／２の値が設定されている。
【００９８】
比較器７９はカウンタ６９のカウント値と設定値９４とを比較し、値が一致すると一致信号を出力し、比較器８０はカウンタ６９のカウント値と設定値９５とを比較し、値が一致すると一致信号を出力するが、これらは出力制御部８４に入力されており、出力制御部８４では、比較器７９から一致信号を検出すると出力をＨｉｇｈにし、比較器８０から一致信号を検出すると出力をＬｏｗにする。こうして出力制御部８４の出力９６が得られる（図１６（ｂ））。出力制御部８４の出力９６はモータドライバ８５に入力されており、モータドライバ８５は、出力制御部８４の出力９６に基づいてモータ４１の回転を制御する。
【００９９】
さて、レジスタ７３には設定値９７が設定されており、レジスタ７４には設定値９８が設定されている。設定値９７は、
設定値９７＝（設定値９４＋設定値９５）／２
に、設定値９８は、
設定値９８＝設定値９５／２
にそれぞれ設定されている。
【０１００】
比較器８１はカウンタ７２のカウント値と設定値９７とを比較し、値が一致すると一致信号を出力し、比較器８２はカウンタ７２のカウント値と設定値９８とを比較し、値が一致すると一致信号を出力するが、これらは出力制御部８６に入力されており、出力制御部８６では、比較器８１から一致信号を検出すると出力をＨｉｇｈにし、比較器８２から一致信号を検出すると出力をＬｏｗにする。こうして出力制御部８６の出力９９が得られる（図１６（ｄ））。
【０１０１】
設定値９４、設定値９５、設定値９７、設定値９８を上述のように設定することで、出力制御部８６の出力９９と出力制御部８４の出力９６の位相差を制御することができる。図１６（ｂ）、（ｄ）に示すように、本実施の形態による画像読み取り装置では９０゜の位相差を設けている。
【０１０２】
出力制御部８４の出力９６と出力制御部８６の出力９９はカウンタ８８に入力されており、位相計数カウンタであるカウンタ８８は２つの入力の位相差に基づきアップまたはダウンカウンタとして機能する。カウンタ８８の計数値はＨｓｙｎｃ３８の入力の度にレジスタ８９に保持されており、ＣＰＵ３３はＨｓｙｎｃ３８により割り込みが発生すると、図１４で説明したＨｓｙｎｃ４進カウント値が０の場合に限り、レジスタ８９の値を読み取り、例えば過去２回の値を記憶している（粗位置情報１００としてのＰＯ１ＨとＰＯ２Ｈ（図１６（ｅ）））。ＰＯ１ＨとＰＯ２Ｈの値は、モータ駆動ステップ毎にカウントアップされる計数値であるから、Ｈｓｙｎｃ３８が発生した時のキャリッジ位置を粗く計測していることになる。
【０１０３】
一方、Ｈｓｙｎｃ３８の入力の度にカウンタ７５のカウント値がレジスタ７６に保持されており、ＣＰＵ３３はＨｓｙｎｃ３８により割り込みが発生すると、図１４で説明したＨｓｙｎｃ４進カウント値が０の場合に限り、レジスタ７６の値を読み取り、例えば過去２回の値を記憶している（微小位置情報１０１としてのＰＯ１ＬとＰＯ２Ｌ（図１６（ｆ）））。微小位置情報１０１はモータの駆動状況を直接反映するものではないが、モータに出力する駆動パルス間でモータは略等速で駆動され、モータの動力はベルト等を介在して伝達され、最終的に駆動されるキャリッジに至っては、ほぼ等速で駆動されているとみなせるので、微小位置情報１０１はモータ励磁パルス間のキャリッジ位置補間情報とみなすことができる。即ちＰＯ１ＬとＰＯ２ＬはＨｓｙｎｃ３８が発生した時のキャリッジ位置を微小に計測していることになる。
【０１０４】
本実施の形態による画像読み取り装置では、バッファフルの直前のＨｓｙｎｃ３８まで画像データが有効となるように、ハードウェアは設計されている。バッファフル発生は、バッファ状態管理部３９からＣＰＵ３３に入力されるが、ハードウェアはバッファフルが発生するとＣＰＵ３３の介在なしに、画像データの読み取り、即ちデータ処理を停止している。ＣＰＵ３３はバッファフルを検出すると、イメージセンサ変位６７を停止すると共に、直ちにモータ４１を停止し、出力制御部８６の信号発生ルールを変更し、カウンタ７２と設定値９７が一致することで出力される一致信号によりＬｏｗが、カウンタ７２と設定値９８とが一致することで出力される一致信号によりＨｉｇｈが出力されるようにした上で、モータ４１を読み取り方向とは逆の方向に回転させる。出力制御部８４の出力９６と出力制御部８６の出力９９の位相のずれ方向が逆になっているので、位相計数カウンタであるカウンタ８８はダウンカウンタとして機能する。
【０１０５】
ＣＰＵ３３はバッファフルが発生した際のＨｓｙｎｃ４進カウントの値を記憶する（図１６では”３”である）と共に、バッファフルが発生した時点から２つ前の、Ｈｓｙｎｃ４進カウント６８が０であった時点の粗位置情報１００（即ちＰＯ１Ｈ）と微小位置情報１０１（即ちＰＯ１Ｌ）を、バッファフルが解除された時のリスタート位置として記憶する。そしてＣＰＵ３３は、読み取り方向とは逆方向にモータを駆動し、キャリッジ位置がリＰＯ１ＨとＰＯ１Ｌを検出した位置よりも、上流（読み取り方向とは逆方向）になるまでキャリッジ３を駆動し、その後モータ４１を停止してバッファフルが解除されるのを待つ。なお、モータ逆転によるカウンタ８８のダウンカウントは、図１６に図示された数値より小さくなるまで行なわれる。
【０１０６】
次に、バッファフルが解除された時の動作について図１５と図１７を用いて説明する。図１７（ａ）〜（ｉ）はバッファフル解除時点のモータ制御部４０の動作を示すタイミング図である。
【０１０７】
バッファフルの解除はバッファ状態管理部３９からＣＰＵ３３に伝えられる。バッファフル解除をＣＰＵ３３が認識すると、ＣＰＵ３３はレジスタ９０にＰＯ１Ｈを設定値１０２として書き込み、更にレジスタ７７にＰＯ１Ｌを設定値１０４として書き込む（図１７（ｂ）、（ｄ））。そして読み取り方向とは逆の方向に戻っているモータ４１を、読み取り方向に駆動する。
【０１０８】
レジスタ７７に設定値１０４としてＰＯ１Ｌを書き込むことにより、比較器８３はモータ４１の駆動と共にアップカウントとリセットを繰り返すカウンタ７５とレジスタ７７の値とを比較し、一致が発生すると一致信号を出力制御部８７に出力する。出力制御部８７は、一致信号を受け取る度に、ＬｏｗとＨｉｇｈを交互に繰り返す、いわゆるトグル信号を出力する（図１７（ｅ）に示す出力制御部８７の出力１０５）。更に両エッジ検出部９２ではトグル信号の両エッジを検出し、両エッジ位置に応じたパルス信号を出力する（図１７（ｆ）に示す両エッジ検出部９２の出力１０６）。
【０１０９】
一方、レジスタ９０に設定値１０２としてＰＯ１Ｈを書き込むことにより、比較器９１は、モータ４１の駆動と共にアップカウントされるカウンタ８８の値とレジスタ９０に設定された値とを比較し、一致が発生すると一致信号をゲート回路９３に出力する（図１７（ｃ）に示す比較器９１の出力１０３）。ゲート回路９３では比較器９１の出力１０３が入力されると、次に発生した両エッジ検出部９２の出力１０６に基づきＣＰＵ３３に対して割り込み信号を生成する（図１７（ｇ）に示すゲート回路９３の出力１０７）。ＣＰＵ３３は、この割り込み信号を位置１０８に示す位置で検出すると、Ｈｓｙｎｃ３８をリセットすると共に、既に図４を用いて説明した方法でイメージセンサ変位６７をスタートする。イメージセンサ変位６７は変位のためのパターンデータを出力し始めた直後から、リアルタイムに応答するわけではないが、２サイクル分程度の時間があれば、正規の振幅で振動させることができる。
【０１１０】
さて、前述したように、ＣＰＵ３３はバッファフル発生位置を、Ｈｓｙｎｃ４進カウント値に基づき位置１０９として記憶している（図１７（ｉ））。バッファフルは有効な最後のラインで発生するから、次に読み取るべきラインは位置１０９から２つ後のＨｓｙｎｃからである（図１７（ｈ）において、○または△が記載されているＨｓｙｎｃのみが有効である）。従って、ＣＰＵ３３は、図１７（ｉ）の位置１１０のＨｓｙｎｃを検出した直後に、ハードウェアの動作を開始すれば、バッファフル発生ラインの次のラインから正確に画像データを読み取ることができる。
【０１１１】
以上のようにして、画像を読み取りながら、Ｈｓｙｎｃ４進カウント値の基準となる値に基づいて、キャリッジの正確な位置情報を測定しておき、バッファフル発生時には、キャリッジを微小距離リターンするとともに、測定したキャリッジ位置情報に基づき、Ｈｓｙｎｃをリセットし、更にイメージセンサ変位を制御することで、バッファフル解除後に読み取るべきライン位置にキャリッジが到達した時点で、イメージセンサ変位（及び振幅を）を正常な状態に復元することができる。これによりバッファフルが発生しても常に良好に画像を読み続けることが可能となる。
【０１１２】
以上のように本実施の形態によれば、中央処理装置３３は、読み取った画像中の復元すべき画素位置の周囲から２画素の組を複数組抽出する抽出手段と、抽出された複数の組に対して各々の画素値の差分を求める差分算出手段と、求めた差分が最小となる組を選択し、選択された組の２画素の値を用いて、復元すべき画素の位置の画素値を決定する決定手段とを有するようにしたので、補間データを忠実に再現することができ、従って読み取り画像のエッジ成分を忠実に復元することができる。また、上記抽出手段は、復元すべき画素位置に対してライン方向に隣接した２画素の組および復元すべき画素位置に対してライン方向と直交する方向に隣接した２画素の組を抽出するようにしたので、主走査方向と副走査方向の画像エッジ成分を忠実に復元することができる。さらに、上記差分算出手段は、カラー画像を構成する複数の色プレーンのうち予め定められた１つの基準色プレーンを用いて、抽出された複数の組に対して各々の画素値の差分を求め、決定手段は、求めた差分が最小となる組を選択し、選択された組の２画素の値を用いて復元すべき画素の位置の画素値を決定すると共に、最小となる組の選択に基づき、復元すべき画素の値を決定するようにしたので、特に黒文字のエッジ部分の色にじみをほぼ完全に無くすことができるとともにハード構成を簡略化することができる。さらに、アクチュエータは、読み取るべき最初のラインにおいて、光電変換部を規定の方向に変位させるようにしたので、画素値復元アルゴリズムを共通化することができる。さらに、中央処理装置３３は、画像読み取り動作に中断が発生した場合、中断発生時点で光電変換部が変位されていた方向に基づいて、中断解除後の最初のラインを読み取る際に、光電変換部を変位させる変位手段を有するようにしたので、画像読み取りの中断が発生しても、画素値復元アルゴリズムの適用が可能になる。
【０１１３】
（実施の形態２）
本発明の実施の形態による画像読み取り装置の構成は実施の形態１と同様であり、その説明は省略する。本実施の形態による画像読み取り装置における画素復元アルゴリズムは、実施の形態１で示した手法を拡張したものである。上述の画像読み取り装置の構成のみならず、イメージセンサの変位方法などは全て実施の形態１と同様であるので説明を省略する。また実施の形態１に示す図７の状況、即ちイメージセンサ変位により、千鳥状に配置された画素を取得し、更に先頭ラインと先頭行の画像データは、実施の形態１で示すアルゴリズムを用いて復元が終了している状態を前提とする。
【０１１４】
以下、本発明の実施の形態２による画像読み取り装置について、図面を参照しながら説明する。
【０１１５】
図１８は本発明の実施の形態２におけるラインＬ’２の復元過程に関して、復元されるべき画素位置γ１の周囲の画素の状態を示すデータ図である。図１８において、４２は主走査方向、４３は副走査方向、４６は一画素サイズ、１１１は復元されるべき画素位置γ１の画素値を求めるためのウィンドウである。
【０１１６】
図１９（ａ）〜（ｆ）は、図１８に示したウィンドウ１１１において、画素位置γ１の値を求める際に参照するγ１の周辺画素の組を示すデータ図である。図１９において、（ａ）の１１２ａはγ１に対して主走査方向に隣接するＰ’２１とＰ’２２の組（以降「組１」と呼称する）を、（ｂ）の１１２ｂはγ１に対して副走査方向に隣接するＰ’１２とＰ’３２の組（以降「組２」と呼称する）を、（ｃ）の１１２ｃはγ１に対して主走査方向右側に隣接するＰ’２２と副走査方向上側に隣接するＰ’１２の組（以降「組３」と呼称する）を、（ｄ）の１１２ｄはγ１に対して主走査方向左側に隣接するＰ’２１と副走査方向上側に隣接するＰ’１２の組（以降「組４」と呼称する）を、（ｅ）の１１２ｅはγ１に対して主走査方向左側に隣接するＰ’２１と副走査方向下側に隣接するＰ’３２の組（以降「組５」と呼称する）を、（ｆ）の１１２ｆはγ１に対して主走査方向右側に隣接するＰ’２２と副走査方向下側に隣接するＰ’３２の組（以降「組６」と呼称する）を示している。
【０１１７】
図２０は画素復元過程を示すフローチャートである。以降図１８、図１９を参照しながら、主に図２０を用いて、画素復元過程について説明する。以降簡単のために、図１８の画素位置γ１を復元する過程について説明する。
【０１１８】
まず、組１から組６の画素値の差分を求める（Ｓ１）。即ち、組１が示す位置の画素値の差分ＤＩＦ１を、
ＤＩＦ１＝｜Ｐ’２１−Ｐ’２２｜
組２が示す位置の画素値の差分ＤＩＦ２を、
ＤＩＦ２＝｜Ｐ’１２−Ｐ’３２｜
組３が示す位置の画素値の差分ＤＩＦ３を、
ＤＩＦ３＝｜Ｐ’２２−Ｐ’１２｜
組４が示す位置の画素値の差分ＤＩＦ４を、
ＤＩＦ４＝｜Ｐ’２１−Ｐ’１２｜
組５が示す位置の画素値の差分ＤＩＦ５を、
ＤＩＦ５＝｜Ｐ’２１−Ｐ’３２｜
組６が示す位置の画素値の差分ＤＩＦ６を、
ＤＩＦ６＝｜Ｐ’２２−Ｐ’３２｜
のように求める。
【０１１９】
次に、組１から組６の画素値の平均値を求めておく（Ｓ２）。即ち、組１が示す位置の画素値の平均ＡＶＥ１を、
ＡＶＥ１＝（Ｐ’２１＋Ｐ’２２）／２
組２が示す位置の画素値の差分ＡＶＥ２を、
ＡＶＥ２＝（Ｐ’１２＋Ｐ’３２）／２
組３が示す位置の画素値の差分ＡＶＥ３を、
ＡＶＥ３＝（Ｐ’２２＋Ｐ’１２）／２
組４が示す位置の画素値の差分ＡＶＥ４を、
ＡＶＥ４＝（Ｐ’２１＋Ｐ’１２）／２
組５が示す位置の画素値の差分ＡＶＥ５を、
ＡＶＥ５＝（Ｐ’２１＋Ｐ’３２）／２
組６が示す位置の画素値の差分ＡＶＥ６を、
ＡＶＥ６＝（Ｐ’２２＋Ｐ’３２）／２
のように求める。
【０１２０】
次に、各組の差分ＤＥＦ１、ＤＥＦ２、ＤＥＦ３、ＤＥＦ４、ＤＥＦ５、ＤＥＦ６の中で最小値をマークした組と、その次に差分が小さい値をマークした組を求める（Ｓ３）。以降差分が最小値をマークした組を一番組、次に差分が小さい値をマークした組を二番組と呼称する。
【０１２１】
次に、組１または組２が一番組でないかチェックする（Ｓ４）。もし組１または組２が一番組であればステップ５に進み、そうでなければステップ６に進む。
【０１２２】
ステップ５では一番組の平均値を用い、これを復元すべき画素位置の画素値とする。即ち、もし組１が一番組であれば、γ１＝ＡＶＥ１、もし組２が一番組であれば、γ１＝ＡＶＥ２とする。ステップ６では組３と組５が、共に一番組と二番組のいずれかであるかどうかをチェックする。もし真であればステップ７に進み、もし偽であればステップ８に進む。
【０１２３】
ステップ７では各組（組３と組５）の平均値と、復元すべき画素位置の右上、即ち、図１８に示すＸ１の画素値を比較し、差分が小さいほうの平均値をγ１の値とし、処理を終了する。ステップ８では組４と組６が、共に一番組と二番組のいずれかであるかどうかをチェックする。もし真であればステップ９に進み、もし偽であればステップ１０に進む。
【０１２４】
ステップ９では各組（組４と組６）の平均値と、復元すべき画素位置の左上、即ち、図１８に示すＸ２の画素値を比較し、差分が小さいほうの平均値をγ１の値とし、処理を終了する。ステップ１０では一番組の平均値を用い、これを復元すべき画素位置の画素値とする。γ１＝一番組の平均値として処理を終了する。
【０１２５】
次に、図２１を用いて、上述した復元過程を行う根拠を詳細に説明する。図２１（ａ）〜（ｄ）は、図１８に示したウィンドウ１１１を斜め４５゜方向に横切るエッジの状態を示すデータ図である。図２１の（ａ）、（ｂ）、（ｃ）、（ｄ）において、黒部分はオブジェクトのエッジもしくはその内部（濃度の高い部分）を示している。また白部分はオブジェクトの外部（濃度の低い部分）を示している。図２１の（ａ）では、オブジェクトのエッジはＰ’１２→Ｐ’２２に存在しているが、このとき組３（１１２ｃ）の差分と組５（１１２ｅ）の差分は、少なくともその他の組より確実に小さくなる。なぜならば他の組は全てエッジの内部と外部にまたがっており、各組の画素値の差分はエッジの内外差を必ず反映するからである。
【０１２６】
さて、復元すべき画素位置γ１はオブジェクトの外部であり、低濃度を示す値が復元されなければならないが（つまり組５（１１２ｅ）の差分が最小であってほしい）、前述した一番組のみに基づいて画素値を復元すると、場合によっては組３（１１２ｃ）の平均値が採用され、高濃度の値が復元されてしまうことがある。しかし、復元すべき画素位置の左上の画素位置にあるＸ１には、過去に復元された値が存在しているため、Ｘ１を参照することで、復元すべき画素位置の値をより正確に反映することができる。この過程は過去に復元した値に依存するため、理論的には過去の復元値が誤って復元されていた場合は、エラーが伝播する場合もあるが、画素値の微妙な差によるエッジ部のランダムな凹凸を抑制し、エッジの連続性を確実に保持することができる。このため特に細線画像やディテール感の強い透過原稿などを読み取った場合など、エッジをよりスムーズに再現することができる。
【０１２７】
図２１の（ｂ）では、オブジェクトのエッジはＸ１→γ１に存在しているが、上強い透過原稿などを読み取った場合など、エッジをよりスムーズに再現することができる。図２１の（ｂ）では、オブジェクトのエッジはＸ１→γ１に存在しているが、上述したのと同様な理由で、組３（１１２ｃ）の差分と組５（１１２ｅ）の差分は、少なくともその他の組より確実に小さくなる。復元すべき画素位置γ１はオブジェクトの内部であり、高濃度を示す値が復元されなければならないが（つまり組３（１１２ｃ）の差分が最小であってほしい）、前述した一番組のみに基づいて画素値を復元すると、場合によっては組５（１１２ｅ）の平均値が採用され、低濃度の値が復元されてしまうことがある。しかし、復元すべき画素位置の左上の画素位置にあるＸ１を参照することで、復元すべき画素位置の値をより正確に反映することができる。
【０１２８】
図２１の（ｃ）では、オブジェクトのエッジはＰ’１２→Ｐ’２１に存在しているが、上述したのと同様な理由で、組４（１１２ｄ）の差分と組６（１１２ｆ）の差分は、少なくともその他の組より確実に小さくなる。復元すべき画素位置γ１はオブジェクトの外部であり、低濃度を示す値が復元されなければならないが（つまり組６（１１２ｆ）の差分が最小であってほしい）、前述した一番組のみに基づいて画素値を復元すると、場合によっては組４（１１２ｄ）の平均値が採用され、高濃度の値が復元されてしまうことがある。しかし、復元すべき画素位置の右上の画素位置にあるＸ２を参照することで、復元すべき画素位置の値をより正確に反映することができる。
【０１２９】
図２１の（ｄ）では、オブジェクトのエッジはＸ２→γ１に存在しているが、上述したのと同様な理由で、組４（１１２ｄ）の差分と組６（１１２ｆ）の差分は、少なくともその他の組より確実に小さくなる。復元すべき画素位置γ１はオブジェクトの内部であり、高濃度を示す値が復元されなければならないが（つまり組４（１１２ｄ）の差分が最小であってほしい）、前述した一番組のみに基づいて画素値を復元すると、場合によっては組６（１１２ｆ）の平均値が採用され、低濃度の値が復元されてしまうことがある。しかし、復元すべき画素位置の右上の画素位置にあるＸ２を参照することで、復元すべき画素位置の値をより正確に反映することができる。
【０１３０】
更に図２１の全ての場合に対して、オブジェクトの内部と外部を入れ換えても、同様に画素値を復元できることはいうまでもない。
【０１３１】
以上のように本実施の形態によれば、復元すべき画素位置に対してライン方向に隣接した２画素の組および復元すべき画素位置に対してライン方向と直交する方向に隣接した２画素の組に加えて、復元すべき画素位置に隣接し、かつライン方向の線上およびライン走査方向に直交する方向の線上と同一線上には存在しない２画素の組を複数組抽出するようにしたので、主走査方向と副走査方向の画像エッジ成分を忠実に復元することができると共に、斜め方向の全てのエッジ成分を忠実に復元することができる。また、抽出された複数の組に関して、画素値の差分が小さいものから所定の数の組を選択し、選択された組の画素の値と過去に復元された画素の値に基づいて、復元すべき画素の位置の画素値を決定するようにしたので、斜め方向のエッジが連続している場合に、その連続性を確実に復元することができる。
【０１３２】
【発明の効果】
以上のように本発明の請求項１に記載の画像読み取り装置によれば、載置された原稿を照明する光源と、原稿からの反射光もしくは透過光を１ラインずつ読み取る光電変換部と、光電変換部に原稿からの反射光もしくは透過光を導く光学系と、光電変換部を規定の方向に規定の周期で変位させ、１ライン毎に異なる位置で画像を読み取らせるアクチュエータと、読み取った画像中の復元すべき画素位置の周囲から２画素の組を複数組抽出する抽出手段と抽出された複数の組に対して各々の画素値の差分を求める差分算出手段とを有する中央処理装置と、を有し、中央処理装置は、求めた差分が最小となる組を選択し、選択された組の２画素の値を用いて、復元すべき画素の位置の画素値を決定する決定手段を有することにより、補間データを忠実に再現することができるので、読み取り画像のエッジ成分を忠実に復元することができるという有利な効果が得られる。
【０１３３】
請求項２に記載の発明によれば、請求項１に記載の発明において、抽出手段は、復元すべき画素位置に対してライン方向に隣接した２画素の組および復元すべき画素位置に対してライン方向と直交する方向に隣接した２画素の組を抽出することにより、主走査方向と副走査方向の画像エッジ成分を忠実に復元することができるという有利な効果が得られる。
【０１３４】
請求項３に記載の発明によれば、請求項１に記載の発明において、抽出手段は、復元すべき画素位置に対してライン方向に隣接した２画素の組および復元すべき画素位置に対してライン方向と直交する方向に隣接した２画素の組に加えて、復元すべき画素位置に隣接し、かつライン方向の線上およびライン走査方向に直交する方向の線上と同一線上には存在しない２画素の組を複数組抽出することにより、主走査方向と副走査方向の画像エッジ成分を忠実に復元することができると共に、斜め方向の全てのエッジ成分を忠実に復元することができるという有利な効果が得られる。
【０１３５】
請求項４に記載の発明によれば、請求項３に記載の発明において、決定手段は、抽出手段により抽出された複数の組に関して、画素値の差分が小さいものから所定の数の組を選択し、選択された組の画素の値と過去に復元された画素の値に基づいて、復元すべき画素の位置の画素値を決定することにより、斜め方向のエッジが連続している場合に、その連続性を確実に復元することができるという有利な効果が得られる。
【０１３６】
請求項５に記載の発明によれば、請求項１に記載の発明において、差分算出手段は、カラー画像を構成する複数の色プレーンのうち予め定められた１つの基準色プレーンを用いて、抽出された複数の組に対して各々の画素値の差分を求め、決定手段は、求めた差分が最小となる組を選択し、選択された組の２画素の値を用いて復元すべき画素の位置の画素値を決定すると共に、最小となる組の選択に基づき、復元すべき画素の値を決定することにより、特に黒文字のエッジ部分の色にじみをほぼ完全に無くすことができるとともにハード構成を簡略化できるという有利な効果が得られる。
【０１３７】
請求項６に記載の発明によれば、請求項１に記載の発明において、アクチュエータは、読み取るべき最初のラインにおいて、光電変換部を規定の方向に変位させることにより、画素値復元アルゴリズムを共通化することができるという有利な効果が得られる。
【０１３８】
請求項７に記載の発明によれば、請求項１に記載の発明において、中央処理装置は、画像読み取り動作に中断が発生した場合、中断発生時点で光電変換部が変位されていた方向に基づいて、中断解除後の最初のラインを読み取る際に、光電変換部を変位させる変位手段を有することにより、画像読み取りの中断が発生しても、画素値復元アルゴリズムの適用が可能になるという有利な効果が得られる。
【図面の簡単な説明】
【図１】本発明の実施の形態１による画像読み取り装置のキャリッジの内部構造を示す断面図
【図２】センサ変位部の詳細な構成を示す構成図
【図３】本発明の実施の形態１による画像読み取り装置の電気系統を示すブロック図
【図４】パターンデータ及びアクチュエータドライバから出力されるアクチュエータ駆動波形を示すタイミング図
【図５】スイング動作を行いながら画像を読み取った場合の画素配置を示すデータ図
【図６】図５の６００ｄｐｉの一画素サイズの２倍の解像度のメッシュで置き換えたときの各画素の位置関係を示すデータ図
【図７】先頭ラインと先頭行の画素値を復元する過程を示すデータ図
【図８】ラインＬ’２の復元過程を示すデータ図
【図９】ラインＬ’３の復元過程を示すデータ図
【図１０】Ｇプレーンにおける候補選択規則に基づく画素復元回路の構成を示すブロック図
【図１１】先頭ラインを読み取った際のイメージセンサの変位位置を示すデータ図
【図１２】Ｌ’２行を復元する際の問題点を示すデータ図
【図１３】本発明の実施の形態１による画像読み取り装置とこれを制御するホスト装置とを示す構成図
【図１４】読み取り開始時点のイメージセンサ位相管理方法を示す説明図
【図１５】図３におけるモータ制御部の詳細を示すブロック図
【図１６】（ａ）バッファフル発生前後におけるモータ制御部の動作を示すタイミング図
（ｂ）バッファフル発生前後におけるモータ制御部の動作を示すタイミング図
（ｃ）バッファフル発生前後におけるモータ制御部の動作を示すタイミング図
（ｄ）バッファフル発生前後におけるモータ制御部の動作を示すタイミング図
（ｅ）バッファフル発生前後におけるモータ制御部の動作を示すタイミング図
（ｆ）バッファフル発生前後におけるモータ制御部の動作を示すタイミング図
（ｇ）バッファフル発生前後におけるモータ制御部の動作を示すタイミング図
（ｈ）バッファフル発生前後におけるモータ制御部の動作を示すタイミング図
【図１７】（ａ）バッファフル解除時点のモータ制御部の動作を示すタイミング図
（ｂ）バッファフル解除時点のモータ制御部の動作を示すタイミング図
（ｃ）バッファフル解除時点のモータ制御部の動作を示すタイミング図
（ｄ）バッファフル解除時点のモータ制御部の動作を示すタイミング図
（ｅ）バッファフル解除時点のモータ制御部の動作を示すタイミング図
（ｆ）バッファフル解除時点のモータ制御部の動作を示すタイミング図
（ｇ）バッファフル解除時点のモータ制御部の動作を示すタイミング図
（ｈ）バッファフル解除時点のモータ制御部の動作を示すタイミング図
（ｉ）バッファフル解除時点のモータ制御部の動作を示すタイミング図
【図１８】本発明の実施の形態２におけるラインＬ’２の復元過程に関して、復元されるべき画素位置γ１の周囲の画素の状態を示すデータ図
【図１９】（ａ）図１８に示したウィンドウにおいて、画素位置γ１の値を求める際に参照するγの周辺画素の組を示すデータ図
（ｂ）図１８に示したウィンドウにおいて、画素位置γ１の値を求める際に参照するγの周辺画素の組を示すデータ図
（ｃ）図１８に示したウィンドウにおいて、画素位置γ１の値を求める際に参照するγの周辺画素の組を示すデータ図
（ｄ）図１８に示したウィンドウにおいて、画素位置γ１の値を求める際に参照するγの周辺画素の組を示すデータ図
（ｅ）図１８に示したウィンドウにおいて、画素位置γ１の値を求める際に参照するγの周辺画素の組を示すデータ図
（ｆ）図１８に示したウィンドウにおいて、画素位置γ１の値を求める際に参照するγの周辺画素の組を示すデータ図
【図２０】画素復元過程を示すフローチャート
【図２１】（ａ）図１８に示したウィンドウを斜め４５°方向に横切るエッジの状態を示すデータ図
（ｂ）図１８に示したウィンドウを斜め４５°方向に横切るエッジの状態を示すデータ図
（ｃ）図１８に示したウィンドウを斜め４５°方向に横切るエッジの状態を示すデータ図
（ｄ）図１８に示したウィンドウを斜め４５°方向に横切るエッジの状態を示すデータ図
【図２２】一般的な画像読み取り装置の概略を示す構成図
【図２３】従来の画像読み取り装置のキャリッジの内部構造を示す断面図
【図２４】補間処理前の読み取り結果を示すデータ図
【図２５】図２４の一画素サイズの２倍の解像度のメッシュで置き換えたときの各画素の位置関係を示すデータ図
【図２６】図２５の位置関係に配置された各画素を補間により水増しする過程を示すデータ図
【符号の説明】
１  画像読み取り装置
２  原稿ガラス
３  キャリッジ
４  駆動源（ステッピングモータ）
５  駆動プーリ
６  タイミングベルト
７  ベルト
８  従動プーリ
９  原稿
１０  原稿カバー
１１  支持部
１２  基準取得位置
１３  ランプ
１４  アパーチャ
１５ａ、１５ｂ、１５ｃ  反射ミラー
１６  イメージセンサ（光電変換部）
１７  結像レンズ
２２  センサ変位部
２３ａ、２３ｂ  保持部材
２４ａ、２４ｂ  プレート
２５ａ、２５ｂ  支持部材
２６  アクチュエータ（積層型ピエゾ素子）
２７  増幅器及びＡ／Ｄ変換器
２８  シェーディング補正部
２９  画素値復元部
３０  画像処理部
３１  バッファ
３２  インタフェース
３３  ＣＰＵ（中央処理装置）
３４  アクチュエータ駆動波形生成部
３５  パターンメモリ
３６  アクチュエータドライバ
３７  読み取り基準信号生成部
３９  バッファ状態管理部
４０  モータ制御部
４１  モータ（ステッピングモータ）
４９  差分検出部
４９ａ  第１の差分検出部
４９ｂ  第２の差分検出部
５０  候補算出部
５０ａ  第１のＧ候補算出部
５０ｂ  第２のＧ候補算出部
５２  比較器
５３  候補選択規則
５４、５７、６０  セレクタ
５６ａ  第１のＢ候補算出部
５６ｂ  第２のＢ候補算出部
５９ａ  第１のＲ候補算出部
５９ｂ  第２のＲ候補算出部
６５  ホスト装置（ＰＣ）
６６  ケーブル
６９、７２、７５、８８  カウンタ
７０、７１、７３、７４、７６、７７、８９、９０  レジスタ
７８  クロック信号発生器
７９〜８３、９１  比較器
８４、８６、８７  出力制御部
８５  モータドライバ
９２  両エッジ検出部
９３  ゲート回路
【図１】
0003752821.tif 000002
【図２】
0003752821.tif 000003
【図３】
0003752821.tif 000004
【図４】
0003752821.tif 000005
【図５】
0003752821.tif 000006
【図６】
0003752821.tif 000007
【図７】
0003752821.tif 000008
【図８】
0003752821.tif 000009
【図９】
0003752821.tif 000010
【図１０】
0003752821.tif 000011
【図１１】
0003752821.tif 000012
【図１２】
0003752821.tif 000013
【図１３】
0003752821.tif 000014
【図１４】
0003752821.tif 000015
【図１５】
0003752821.tif 000016
【図１６】
0003752821.tif 000017
【図１７】
0003752821.tif 000018
【図１８】
0003752821.tif 000019
【図１９】
0003752821.tif 000020
【図２０】
0003752821.tif 000021
【図２１】
0003752821.tif 000022
【図２２】
0003752821.tif 000023
【図２３】
0003752821.tif 000024
【図２４】
0003752821.tif 000025
【図２５】
0003752821.tif 000026
【図２６】
0003752821.tif 000027