(57)【要約】【課題】熱膨張等によりレンズと読取センサとの位置関係がずれたとしても、カラー画像か白黒画像かの自動検出を正確に行なうことができる画像読取装置を提供する。【解決手段】画像読取装置は、光源から原稿に照射された光の反射光を結像するレンズ、及びレンズで結像した反射光を受光して原稿の画像を読み取る読取センサを有し、レンズにおける原稿の読取に用いられる領域外にマークが設けられた読取手段１０４と、読取手段１０４による読取画像データからマーク位置を検出する基準位置検出手段１０７と、読取手段１０４による読取画像データがカラー画像か白黒画像かを判断するカラー白黒検出手段１１１と、基準位置検出手段１０７によって検出されたマーク位置と初期位置とを比較する比較手段１０１と、カラー白黒検出手段１１１でカラー画像か白黒画像かを判断する基準値を比較手段１０１による比較結果に基づいて決定する決定手段１０９とを備える。【選択図】図１
2010028646.tif 000002
【特許請求の範囲】
【請求項１】
光源から原稿に照射された光の反射光を結像するレンズ、及び該レンズで結像した反射光を受光することで原稿の画像を読み取る読取センサを有し、前記レンズにおける原稿の読取に用いられる領域の外側の位置にマークが設けられた読取手段と、
該読取手段により読み取られた画像データから前記マークの位置を検出する基準位置検出手段と、
前記読取手段により読み取られた画像データがカラー画像か白黒画像かを判断するカラー白黒検出手段と、
前記基準位置検出手段によって検出された前記マークの位置に対して、それ以前に検出された前記マークの位置又は予め設定された初期位置を比較する比較手段と、
前記カラー白黒検出手段においてカラー画像か白黒画像かを判断する基準値を前記比較手段による比較結果に基づいて決定する判断基準決定手段と、を備えることを特徴とする画像読取装置。
【請求項２】
前記判断基準決定手段は、前記基準位置検出手段によって検出された前記マークの位置に対する、それ以前に検出された前記マークの位置又は前記初期位置のずれ量に比例して前記基準値が大きくなるように該基準値を変更する、ことを特徴とする請求項１に記載の画像読取装置。
【請求項３】
光源から原稿に照射された光の反射光を結像するレンズ、及び該レンズで結像した反射光を受光することで原稿の画像を読み取る読取センサを有し、前記レンズにおける原稿の読取に用いられる領域の外側の位置にマークが設けられた読取手段を備える画像読取装置の制御方法であって、
前記読取手段により読み取られた画像データから前記マークの位置を検出する基準位置検出ステップと、
前記読取手段により読み取られた画像データがカラー画像か白黒画像かを判断するカラー白黒検出ステップと、
前記基準位置検出ステップで検出された前記マークの位置に対して、それ以前に検出された前記マークの位置又は予め設定された初期位置を比較する比較ステップと、
前記カラー白黒検出ステップにおいてカラー画像か白黒画像かを判断する基準値を前記比較ステップでの比較結果に基づいて決定する判断基準決定ステップと、を備えることを特徴とする画像読取装置の制御方法。
【請求項４】
光源から原稿に照射された光の反射光を結像するレンズ、及び該レンズで結像した反射光を受光することで原稿の画像を読み取る読取センサを有し、前記レンズにおける原稿の読取に用いられる領域の外側の位置にマークが設けられた読取手段を備える画像読取装置を制御するプログラムであって、
前記読取手段により読み取られた画像データから前記マークの位置を検出する基準位置検出ステップと、
前記読取手段により読み取られた画像データがカラー画像か白黒画像かを判断するカラー白黒検出ステップと、
前記基準位置検出ステップで検出された前記マークの位置に対して、それ以前に検出された前記マークの位置又は予め設定された初期位置を比較する比較ステップと、
前記カラー白黒検出ステップにおいてカラー画像か白黒画像かを判断する基準値を前記比較ステップでの比較結果に基づいて決定する判断基準決定ステップと、をコンピュータに実行させる、ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、原稿の画像がカラー画像か白黒画像かを自動で検出する機能を備えた画像読取装置、画像読取装置の制御方法及びプログラムに関する。
【背景技術】
【０００２】
近年、スキャナ等の画像読取装置おいて、白黒原稿とカラー原稿を混在してスキャンできるものがある。このような画像読取装置では、スキャンされた原稿画像が白黒かカラーかを自動検出して、白黒原稿は白黒画像で記憶され、カラー原稿はカラー画像で記憶されるので、ファイルサイズを小さくすることができる。
【０００３】
また、下地が色つきの原稿や白黒原稿は白黒画像と判断する画像読取装置（特許文献１）や、白黒原稿をカラーでスキャンしても白黒エッジ部の色ずれを生じさせないようにした画像読取装置（特許文献２）が提案されている。
【０００４】
ところで、原稿の画像をラインセンサ等の読取センサで読み取る画像読取装置では、光源の照明ムラ、ラインセンサ素子間の感度のバラツキ、レンズの光量ムラ等があり、例えば白無地の原稿を読み取った場合に読取手段からの出力が不均一になる。
【０００５】
特に、原稿からの反射光をレンズアレイで結像させてラインセンサに読み取らせる読取手段は、レンズの光量ムラが著しい。
【０００６】
即ち、図９に示すように、レンズアレイは、複数の小型レンズが主走査方向に並べられているため、隣接するレンズの光量分布が干渉して、レンズアレイとしての光量分布が不均一となる。
【０００７】
このため、均一の入射光をレンズアレイに照射したとしても、レンズアレイを透過した透過光は、レンズアレイの光量分布にしたがって不均一な光量分布となり、光量ムラが発生してしまう。
【０００８】
このため、従来から、白板や白無地の原稿等を用いることで、読取手段からの出力が均一に、かつ白色になるようにシェーディング補正等の画像処理を行っている。
【０００９】
一般的なシェーディング補正の方法として、黒基準データと白基準データとの差分データを用いて１画素単位に全画素補正データ（シェーディング補正データ）を作成し、そのデータを用いて画像処理をしている。
【００１０】
図１０及び図１１に、シェーディング補正の一例を示す。
【００１１】
図１１の黒基準データＶｂは、図１０（ａ）のように光源からの光の供給を停止してラインセンサで反射光を読み取ったときの出力信号である。
【００１２】
図１１の白基準データＶｗは、図１０（ｂ）のように光源から光を供給して、白板等の反射率が高い被写体からの反射光を読み取ったときのラインセンサの出力信号である。
【００１３】
図１１のセンサ出力Ｖ０は、図１０（ｃ）のように光源から光を供給して、原稿からの反射光を読み取ったときのラインセンサの出力信号である。
【００１４】
図１１のセンサ出力Ｖ０は、黒基準データＶｂから、原稿の反射率が上昇するにつれて直線的に上昇し、白板を用いたときに白基準データＶｗになる。
【００１５】
また、図１１のセンサ出力Ｖｒは、補正後のセンサ出力であり、Ｖｒは、センサ出力をＡ／Ｄ変換した後の例えば８ビットのデジタル信号により、黒基準データＶｂを００（Ｈ）、白基準データＶｗをＦＦ（Ｈ）とする補正を行った後の出力信号である。
【００１６】
以上のように、シェーディング補正データとして、この黒基準データＶｂと白基準データＶｗを、画素ごとに保存しておく。ここで、白基準データＶｗが、レンズアレイの光量分布に大きく左右される値になる。
【特許文献１】特開平５−２８４３７２号公報
【特許文献２】特開平４−２５２６６７号公報
【発明の開示】
【発明が解決しようとする課題】
【００１７】
ところで、光源を有する読取手段は、光源の発熱による温度上昇が避けられない。読取手段を構成する部品は、それぞれの熱膨張係数が異なることから、温度上昇による熱膨張のため、ひずみが生じてレンズアレイとラインセンサとの位置関係が若干ずれる現象が発生する。
【００１８】
ＲＧＢの各シェーディング補正データは、それぞれがセットで補正されることによって正しくシェーディング補正される。従って、たとえば、前述したように、レンズアレイとラインセンサとの位置関係がずれると、前述したレンズアレイの光量分布等によってセンサ出力が大きく変化してしまい、正確にシェーディング補正されない。この場合、白色の原稿等をスキャンしても色味がかった画像になってしまう。
【００１９】
このため、カラー原稿か白黒原稿かを自動で検出する機能を備える画像読取装置において、白色を色味がかった画像としてスキャンしてしまうと、白黒原稿にもかかわらずカラー原稿と誤判断してしまうという問題が発生する。
【００２０】
この問題を解決するために、読取手段を構成するすべての部品に、同じ熱膨張係数のものを用いて、レンズアレイとラインセンサとの位置関係がずれないようにすることが考えられるが、部品が限定されてしまい、すべての部品をそろえるのが困難である。
【００２１】
また、温度上昇しないように、読取手段に冷却用の部品を配置したり、読取手段の形状を大きくして熱を逃げやすくしたりすることなども考えられるが、高価で大型化するため実用的ではない。
【００２２】
また、スキャンするたびに、シェーディング補正データを取り直す方法が考えられるが、この場合、毎回シェーディング補正データを作成するなど、スキャン以外の動作をする必要が生じ、スキャンするまでの所要時間が長くなってしまう等の問題が残る。
【００２３】
そこで、本発明は、熱膨張等によりレンズと読取センサとの位置関係がずれたとしても、カラー画像が白黒画像かの自動検出を正確に行なうことができる画像読取装置、画像読取装置の制御方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００２４】
上記目的を達成するために、本発明の画像読取装置は、光源から原稿に照射された光の反射光を結像するレンズ、及び該レンズで結像した反射光を受光することで原稿の画像を読み取る読取センサを有し、前記レンズにおける原稿の読取に用いられる領域の外側の位置にマークが設けられた読取手段と、該読取手段により読み取られた画像データから前記マークの位置を検出する基準位置検出手段と、前記読取手段により読み取られた画像データがカラー画像か白黒画像かを判断するカラー白黒検出手段と、前記基準位置検出手段によって検出された前記マークの位置に対して、それ以前に検出された前記マークの位置又は予め設定された初期位置を比較する比較手段と、前記カラー白黒検出手段においてカラー画像か白黒画像かを判断する基準値を前記比較手段による比較結果に基づいて決定する判断基準決定手段と、を備える。
【００２５】
本発明の画像読取装置の制御方法は、光源から原稿に照射された光の反射光を結像するレンズ、及び該レンズで結像した反射光を受光することで原稿の画像を読み取る読取センサを有し、前記レンズにおける原稿の読取に用いられる領域の外側の位置にマークが設けられた読取手段を備える画像読取装置の制御方法であって、前記読取手段により読み取られた画像データから前記マークの位置を検出する基準位置検出ステップと、前記読取手段により読み取られた画像データがカラー画像か白黒画像かを判断するカラー白黒検出ステップと、前記基準位置検出ステップで検出された前記マークの位置に対して、それ以前に検出された前記マークの位置又は予め設定された初期位置を比較する比較ステップと、前記カラー白黒検出ステップにおいてカラー画像か白黒画像かを判断する基準値を前記比較ステップでの比較結果に基づいて決定する判断基準決定ステップと、を備えることを特徴とする。
【００２６】
本発明のプログラムは、光源から原稿に照射された光の反射光を結像するレンズ、及び該レンズで結像した反射光を受光することで原稿の画像を読み取る読取センサを有し、前記レンズにおける原稿の読取に用いられる領域の外側の位置にマークが設けられた読取手段を備える画像読取装置を制御するプログラムであって、前記読取手段により読み取られた画像データから前記マークの位置を検出する基準位置検出ステップと、前記読取手段により読み取られた画像データがカラー画像か白黒画像かを判断するカラー白黒検出ステップと、前記基準位置検出ステップで検出された前記マークの位置に対して、それ以前に検出された前記マークの位置又は予め設定された初期位置を比較する比較ステップと、前記カラー白黒検出ステップにおいてカラー画像か白黒画像かを判断する基準値を前記比較ステップでの比較結果に基づいて決定する判断基準決定ステップと、をコンピュータに実行させる、ことを特徴とする。
【発明の効果】
【００２７】
本発明によれば、熱膨張等によりレンズと読取センサとの位置関係がずれたとしても、カラー画像か白黒画像かの自動検出を正確に行なうことができる。
【発明を実施するための最良の形態】
【００２８】
以下、本発明の実施形態の一例を図面を参照して説明する。
【００２９】
図１は、本発明の実施形態の一例である画像読取装置を説明するためのブロック図である。
【００３０】
図１に示すように、本実施形態の画像読取装置は、ＣＰＵ１０１、ＲＡＭ１０２、ＲＯＭ１０３、読取手段１０４、画像記憶手段１０５、シェーディング補正データ作成手段１０６を備える。
【００３１】
また、本実施形態の画像読取装置は、基準位置検出手段１０７、シェーディング補正データ記憶手段１０８、判断基準決定手段１０９、データ転送手段１１０、カラー白黒検出手段１１１を備える。
【００３２】
ＣＰＵ１０１は、ＲＯＭ１０３に格納されたプログラムに従って、画像読取装置全体を制御する。ＲＡＭ１０２は、ＣＰＵ１０１の作業領域やデータの一時記憶領域として使用される。ＲＯＭ１０３は、プログラムや固定データを格納する。
【００３３】
読取手段１０４は、白色光の光源、レンズアレイ、及びラインセンサ（読取センサ）を備える。この読取手段１０４は、光源の白色光を原稿に照射してその反射光をレンズアレイで結像したのち、ラインセンサで受光してその受光光を電圧に変換して出力することで、原稿を画像データとして読み取る。
【００３４】
画像記憶手段１０５は、読取手段１０４で読み取った画像データを記憶する。シェーディング補正データ作成手段１０６は、ラインセンサの出力を均一にするための補正データを作成する。作成方法については、既に図１０〜図１２で説明した内容と同様である。
【００３５】
基準位置検出手段１０７は、読取手段１０４を構成するレンズアレイに付加したマーク位置を検出する。この検出方法については後述する。
【００３６】
シェーディング補正データ記憶手段１０８は、シェーディング補正データ作成手段１０６で作成したデータを記憶する。
【００３７】
判断基準決定手段１０９は、基準位置検出手段１０７によって検出された基準位置を基に、カラー白黒検出手段１１１に用いられる判断基準値を決定する。判断基準値の決定方法については後述する。
【００３８】
データ転送手段１１０は、画像記憶手段１０５に記憶された画像データを外部装置に送信すしたり、外部装置からデータを受信したりする。
【００３９】
カラー白黒検出手段１１１は、画像記憶手段１０５に記憶された画像データがカラー画像か白黒画像かを検出する。検出方法については後述する。
【００４０】
次に、図２及び図３を参照して、基準位置検出手段１０７によりレンズアレイのマーク位置を検出する方法について説明する。
【００４１】
図２に示すレンズアレイ５０１において、原稿搬送区間ＳＬ〜ＳＲの外側の位置には、光を吸収する黒マーク５０２，５０３が付加されている。黒マーク５０２，５０３を付加したレンズアレイ５０１に光源から光を照射すると、黒マーク５０２，５０３位置でのラインセンサの出力は小さくなる。
【００４２】
ここで、ラインセンサの左基準位置を求める。まず、センサ出力が閾値Ｖｏｔ以下となるときの左からの画素位置Ｓａ１（不図示）と、再びセンサ出力が閾値Ｖｏｔを超える直前の画素位置Ｓａ２（不図示）を記憶する。
【００４３】
そして、画素位置Ｓａ１と画素位置Ｓａ２との中間に位置する画素Ｓａ（不図示）を左基準位置にする。たとえば、図２の場合では、画素位置Ｓ４がＳａ１、画素位置Ｓ６がＳａ２、画素位置Ｓ４と画素位置Ｓ６の中間位置Ｓ５が画素Ｓａに相当する。
【００４４】
同様にして、ラインセンサの右基準位置を求める。まず、センサ出力が閾値Ｖｏｔ以下となるときの左からの画素位置Ｓｂ１（不図示）と、再びセンサ出力が閾値Ｖｏｔを超える直前の画素位置Ｓｂ２（不図示）を記憶する。
【００４５】
そして、画素位置Ｓｂ１と画素位置Ｓｂ２の中間に位置する画素Ｓｂを右基準位置にする。たとえば、図２の場合では、画素位置Ｓｎ−５がＳｂ１、画素位置Ｓｎ−３がＳｂ２、画素位置Ｓｎ−５と画素位置Ｓｎ−３との中間位置Ｓｎ−４が画素Ｓｂに相当する。
【００４６】
なお、左からの画素位置ＳＬから画素位置ＳＲまでの範囲は、原稿が搬送される可能性のある範囲であるので、この間の画素についてはそのライン出力を無視する。画素位置ＳＬおよび画素位置ＳＲは、あらかじめ決められている固定値である。
【００４７】
次に、図３を参照して、図２での処理の流れについて説明する。
【００４８】
図３において、比較器Ａ５１０は、図２の閾値Ｖｏｔ、各センサ出力Ｖｏ、及び左からの画素位置を示すＣＮＴが入力され、センサ出力Ｖｏと閾値Ｖｏｔとを比較してセンサ出力Ｖｏが閾値Ｖｏｔ未満であれば１を出力する。データＡ記憶手段５１１は、比較器Ａ５１０の今回の比較結果Ｎと前回の比較結果Ｐとを保持する。
【００４９】
比較器Ｂ５１２は、データＡ記憶手段５１１に保持された前回の比較結果Ｐと今回の比較結果Ｎとが入力される。そして、比較器Ｂ５１２は、前回の比較結果Ｐと今回の比較結果Ｎとを比較して、前回の結果Ｐが１で今回の結果Ｎが０のとき、つまり、センサ出力Ｖｏが閾値Ｖｏｔを下回った直後の画素位置をデータＢ記憶手段５１３に記憶する。
【００５０】
また、比較器Ｂ５１２は、前回の比較結果Ｐが０で今回の比較結果Ｎが１のとき、つまり、センサ出力Ｖｏが閾値Ｖｏｔを上回る直前の画素位置をデータＣ記憶手段５１４に記憶する。
【００５１】
データＢ記憶手段５１３、データＣ記憶手段５１４の画素位置データの更新は、それぞれ比較器Ｂ５１２からの出力Ｏ１とＯ３が１のとき、Ｏ２とＯ３が１のときに行なう。比較器Ｂ５１２の出力Ｏ３は、前回の比較結果Ｐと今回の比較結果Ｎが異なる場合に１になる。
【００５２】
計算機５１５は、不図示の加算器と不図示の除算器とを備え、データＢ記憶手段５１３及びデータＣ記憶手段５１４に記憶されているそれぞれの画素位置Ｓ及び画素位置Ｅが入力され、両者を加算器で加算後、除算器により２で割って中間位置を計算する。
【００５３】
以上のようにして、レンズアレイ５０１に付加した黒マーク５０２，５０３の基準位置をラインセンサの画素単位で検出する。
【００５４】
次に、図４を参照して、カラー白黒検出手段１１１の処理例について説明する。なお、図４でのカラー白黒検出手段１１１の各処理は、ＲＯＭ１０３等に記憶されたプログラムがＲＡＭ１０２にロードされて、ＣＰＵ１０１の制御により実行される。
【００５５】
まず、ステップＳ６００では、カラー白黒検出手段１１１は、主走査方向に連続するカラー画素数を格納する変数Ｗと、連続するカラーライン数を格納する変数Ｈとのそれぞれ値を０にして、ステップＳ６０１に進む。
【００５６】
ステップＳ６０１では、カラー白黒検出手段１１１は、画像記憶手段１０５からＲＧＢの画素データＤを取得し、ステップＳ６０２に進む。
【００５７】
ステップＳ６０２では、カラー白黒検出手段１１１は、取得したＲＧＢの画素データＤを明度Ｄｖ、彩度Ｄｓに変換し、ステップＳ６０３に進む。なお、ＲＧＢデータをＨＳＶに変換する方法は、既知の方法なのでここでは説明を省略する。
【００５８】
ステップＳ６０３では、カラー白黒検出手段１１１は、画素明度データＤｖが明度閾値の範囲内かどうか判断し、満たす場合はステップＳ６０４に進み、満たさない場合はステップＳ６１０に進む。
【００５９】
ステップＳ６０４では、カラー白黒検出手段１１１は、画素彩度データＤｓが彩度閾値Ｓｔを超えているか否かを判断し、超えている場合はステップＳ６０５に進み、超えていない場合はステップＳ６１０に進む。
【００６０】
ステップＳ６０５では、カラー白黒検出手段１１１は、変数Ｗをインクリメントし、ステップＳ６０６に進む。
【００６１】
ステップＳ６０６では、カラー白黒検出手段１１１は、変数Ｗが連続するカラー画素数の閾値Ｗｔを超えているか否かを判断し、超えている場合はステップＳ６０７に進み、超えていない場合はステップＳ６１０に進む。
【００６２】
ステップＳ６０７では、カラー白黒検出手段１１１は、該当ラインをカラーラインと判断して、変数Ｈをインクリメントし、ステップＳ６０８に進む。
【００６３】
ステップＳ６０８では、カラー白黒検出手段１１１は、変数Ｈが連続するカラーライン数の閾値Ｈｔを超えているか否かを判断し、超えている場合は、ステップＳ６０９でカラー画像と判断して処理を終了し、超えていない場合は、ステップＳ６１１に進む。
【００６４】
一方、ステップＳ６１０では、カラー白黒検出手段１１１は、ステップＳ６０１で取得した画素データが現在のラインの最終画素か否かを判断し、最終画素である場合はステップＳ６１１に進み、最終画素でない場合はステップＳ６０１に戻る。
【００６５】
ステップＳ６１１では、カラー白黒検出手段１１１は、現在のラインが最終ラインか否かを判断する。
【００６６】
そして、カラー白黒検出手段１１１は、最終ラインの場合は、ステップＳ６１２で白黒画像と判断して処理を終了し、最終ラインでない場合は、ステップＳ６１３でカラー画素数Ｗをリセットして０にした後、ステップＳ６０１に戻る。
【００６７】
以上のようにして、カラー白黒検出手段１１１は、画像データがカラー画像であるか白黒画像であるかを検出する。
【００６８】
ところで、図４の処理では、彩度閾値Ｓｔ、明度閾値Ｖｔ、連続するカラー画素数閾値Ｗｔ、連続するカラーライン数閾値Ｈｔの４つのパラメータを使用している。
【００６９】
これらのパラメータを変更することによって、画像データを、白黒画像に判定しやすくしたり、カラー画像に判定しやすくしたりすることができる。
【００７０】
一般的に、カラー白黒検出における閾値は、不図示のユーザインターフェイスを介して、ユーザに指定させるようにしていることが多い。たとえば、ユーザインターフェイスに１〜５の５段階の閾値を指定できるようにしておき、閾値の段階が５に近づくにつれて、画像データを白黒画像に判定しやすくしている。
【００７１】
しかし、前述したように、読取手段１０４の光源の発熱等による温度上昇に起因してレンズアレイとラインセンサとの位置関係がずれると、正しくシェーディング補正が行なわれず、画像データをカラー画像と判定しやすくなってしまう。
【００７２】
このため、たとえばユーザが画像データを白黒画像と判定しやすくするように閾値の段階を５に指定していたとしても、白黒画像と判定されず、カラー画像と判定されてしまうことがある。
【００７３】
そこで、本実施形態では、彩度閾値Ｓｔ、明度閾値Ｖｔ、連続するカラー画素数閾値Ｗｔ、連続するカラーライン数閾値Ｈｔの４つのパラメータを、基準位置検出手段１０７によって検出された基準位置を基に判断基準決定手段１０９によって決定する。
【００７４】
図５は、判断基準決定手段１０９によるパラメータの決定方法について説明するための説明図である。
【００７５】
図５では、レンズアレイ７０１と正常時のラインセンサ７０２との位置関係、及びレンズアレイ７０１と熱膨張等によるずれ発生時のラインセンサ７０３との位置関係を示している。
【００７６】
正常時のラインセンサ７０２は、左基準位置をＳａ、右基準位置をＳｂ、左基準位置Ｓａから右基準位置Ｓｂまでの長さをＷとする。また、画素Ｎａ，Ｎｂは、それぞれずれ発生時のラインセンサ７０３の左基準位置と右基準位置に相当する画素位置を示す。正常時の左基準位置Ｓａ、右基準位置Ｓｂは、工場出荷時等に予め設定してもよく、また、例えば電源投入時等に自動又はユーザ操作により初期位置を検出して設定されるようにしてもよい。
【００７７】
ずれ発生時のラインセンサ７０３は、左基準位置をＮａ、右基準位置をＮｂ、左基準位置Ｎａから右基準位置Ｎｂまでの長さをＷ′とする。
【００７８】
図５に示すように、正常時のラインセンサ７０２とずれ発生時のラインセンサ７０３との左基準位置のずれ量ΔＬは、｜Ｎａ−Ｓａ｜になる。
【００７９】
ここでは、ずれ発生時のラインセンサ７０３が正常時のラインセンサ７０２に比べてやや長くなる場合を説明しているが、実際はレンズアレイの膨張がラインセンサの膨張より大きくなる可能性があり、この場合の左基準位置のずれ量ΔＬは、Ｓａ−Ｎａになる。このため、ΔＬを絶対値としている。
【００８０】
同様に、正常時のラインセンサ７０２とずれ発生時のラインセンサ７０３との右基準位置のずれ量ΔＲは、｜Ｎｂ−Ｓｂ｜になる。
【００８１】
ここで、左基準位置ΔＬと右基準位置ΔＲの大きい方を全体の基準位置のずれ量ΔＤとする。
【００８２】
当然ながら、基準位置のずれ量ΔＤが大きいほど、レンズアレイの光量分布特性によりシェーディング補正が正しく行なえなくなる。つまり、基準位置のずれの大きさに比例して、白色を色味を帯びた画素データに補正してしまうことになる。
【００８３】
そこで、基準位置検出手段１０７によって検出された基準位置のずれ量を基に、判断基準決定手段１０９によって前述した彩度閾値Ｓｔ、明度閾値Ｖｔ、連続するカラー画素数閾値Ｗｔ、連続するカラーライン数閾値Ｈｔの４つのパラメータを決定する。
【００８４】
まず、図６を参照して、明度閾値Ｖｔと彩度閾値Ｓｔについて説明する。明度閾値Ｖｔは、Ｖｔ１，Ｖｔ２として説明する。
【００８５】
図６において、円錐体は、色相Ｈ，明度Ｖ，彩度Ｓの色空間を示し、Ｖｔ１，Ｖｔ２は、それぞれ有彩色領域の明度の上限閾値と下限閾値であり、Ｖｔ２＜Ｖ＜Ｖｔ１のとき有彩色の判定が可能な明度である。
【００８６】
また、Ｓｔ（Ｖｔ１），Ｓｔ（Ｖ０），Ｓｔ（Ｖｔ２）は、それぞれ明度がＶｔ１，Ｖ０，Ｖｔ２のときの彩度閾値である。彩度閾値Ｓｔは明度Ｖを変数にした関数Ｓｔ（Ｖ）とすることが好適であるが、明度Ｖによらず固定値であってもよい。ここでは彩度閾値Ｓｔは、Ｓｔ（Ｖ）として説明する。
【００８７】
図６の明度閾値Ｖｔの範囲内で、彩度閾値Ｓｔ（Ｖ）の外側の斜線領域が有彩色領域であり、カラー画素と判断する領域である。この領域を狭めることでカラー画素と判定する条件を厳しくすることができる。
【００８８】
次に、図７を参照して、カラー画像と判定するための２つの条件を規定する連続カラー画素数閾値Ｗｔと連続カラーライン数閾値Ｈｔの決定方法について説明する。
【００８９】
図７（ａ）において、画像データ８０１中にある連続したカラー画素が占める領域が斜線領域（横Ｗｔ、縦Ｈｔ）より大きな領域になればカラー白黒検出手段１１１はカラー画像を検出する。したがって、例えばこの領域を広くすることでカラー画像と判定する条件を厳しくすることができる。図７（ｂ）のように、主走査方向にずれて連続したカラー画素が存在する場合でもカラーラインが全てＷｔより長く、かつ連続してＨｔ以上のカラーラインが存在すればカラー画像を検出する。
【００９０】
以上より、たとえば次のようにして連続カラー画素数閾値Ｗｔと連続カラーライン数閾値Ｈｔとを決定する。
ΔＤ＝０のときは、Ｗｔ＝Ｗｔｄｅｆ、Ｈｔ＝Ｈｔｄｅｆ
ΔＤ＝１のときは、Ｗｔ＝Ｗｔｄｅｆ＊１．２、Ｈｔ＝Ｈｔｄｅｆ＊１．２
ΔＤ＝２のときは、Ｗｔ＝Ｗｔｄｅｆ＊１．４、Ｈｔ＝Ｈｔｄｅｆ＊１．４
ここで、Ｗｔｄｅｆ及びＨｔｄｅｆは、それぞれのパラメータのデフォルト値とする。
【００９１】
なお、ここでは、基準位置検出手段１０７によって検出された基準位置を基に連続するカラー画素数閾値Ｗｔと連続するカラーライン数閾値Ｈｔを変更するようにしたが、彩度閾値Ｓｔと明度閾値Ｖｔ１と明度閾値Ｖｔ２の少なくとも１つを変更してもよい。また、これらの変更とＷｔ，Ｈｔの変更を組み合わせてもよい。
【００９２】
また、本実施形態では、ΔＤに比例してＷｔ、Ｈｔを大きくしているが、ΔＤが大き過ぎると、スキャンした画像に帯状のすじが発生する。従って、たとえば、ある程度大きな値Ｎを定め、ΔＤ≧Ｎのときは、自動的にシェーディング補正データを取り直したり、エラー表示してシェーディング補正データを取り直すようにユーザに促すようにしてもよい。
【００９３】
また、本実施形態では、ΔＤに比例してＷｔ、Ｈｔの倍数を固定値にしているが、データ転送手段１１０を介して外部ＰＣ等から倍数を指定できるようにしてもよい。
【００９４】
また、本実施形態では、左基準位置のずれΔＬと右基準値のずれΔＲの大きい方をΔＤにしているが、これに限定されない。例えば、画像データの左半分に位置する画素に対してはΔＤ＝ΔＬ、画像データの右半分に位置する画素に対してはΔＤ＝ΔＲとして、彩度閾値Ｓｔと明度閾値Ｖｔを決定して、左右別々に閾値を決定するようにしてもよい。
【００９５】
次に、図８を参照して、本実施形態の画像読取装置の動作例について説明する。なお、図８での各処理は、ＲＯＭ１０３等に記憶されたプログラムがＲＡＭ１０２にロードされて、ＣＰＵ１０１により実行される。
【００９６】
まず、ステップＳ１では、ＣＰＵ１０１は、ユーザにより不図示のスタートボタンが押下されたか否かを判断し、押下された場合は、不図示の搬送手段を制御して、原稿の搬送を開始し、ステップＳ２に進む。
【００９７】
ステップＳ２では、ＣＰＵ１０１は、シェーディング補正データ作成手段１０６によって作成されたシェーディング補正データをシェーディング補正データ記憶手段１０８から読み出し、ステップＳ３に進む。
【００９８】
ステップＳ３では、ＣＰＵ１０１は、基準位置検出手段１０７によって検出された左右の基準位置を不図示の基準位置記憶手段から読み出し、ステップＳ４に進む。この左右の基準位置をＰ１、Ｐｒ番目の画素とする。
【００９９】
ステップＳ４では、ＣＰＵ１０１は、不図示の紙センサによって原稿が読取手段１０４に到達したことを検知されると、ステップＳ５に進む。
【０１００】
ステップＳ５では、ＣＰＵ１０１は、読取手段１０４によって原稿の画像データを１ラインごとに取得し、ステップＳ６に進む。
【０１０１】
ステップＳ６では、ＣＰＵ１０１は、原稿１ページ分の画像データを取得したか否かを判断し、取得した場合はステップＳ７に進み、取得しない場合はステップＳ５に戻る。
【０１０２】
ステップＳ７では、ＣＰＵ１０１は、基準位置検出手段１０７によって左右の基準位置を取得する。ここで取得した左右の基準位置をＤ１、Ｄｒ番目の画素とする。
【０１０３】
ここで、ＣＰＵ１０１は、今回取得した基準位置Ｄｌ、ＤｒとステップＳ３で読み出した前回（以前に取得した）の基準位置Ｐｌ、Ｐｒとを比較し、一致した場合、ラインセンサは位置ずれが発生していないと判断する。
【０１０４】
この場合、ΔＤ＝０なので、ステップＳ８において、ＣＰＵ１０１は、判断基準決定手段１０９を制御して、カラー白黒検出のためのパラメータ値としてＷｔ＝Ｗｔｄｅｆ、Ｈｔ＝Ｈｔｄｅｆを決定する。
【０１０５】
そして、ステップＳ９で、ＣＰＵ１０１は、カラー白黒検出手段１１１を制御して、Ｗｔ＝Ｗｔｄｅｆ、Ｈｔ＝Ｈｔｄｅｆを用いて読取画像データがカラー画像か白黒画像かを判断し、ステップＳ１０に進む。
【０１０６】
一方、ステップＳ７において、左基準位置Ｄｌと左基準位置Ｐｌとを比較して結果、左基準位置Ｄｌが左基準位置Ｐｌより２画素分左にシフトし、かつ右基準位置Ｄｒが右基準位置Ｐｒより２画素分右にシフトしていたとする。
【０１０７】
この場合、ΔＤ＝２なので、ステップＳ８では、ＣＰＵ１０１は、判断基準決定手段１０９を制御して、カラー白黒検出のためのパラメータ値としてＷｔ＝Ｗｔｄｅｆ＊１．４、Ｈｔ＝Ｈｔｄｅｆ＊１．４を決定する。
【０１０８】
そして、ステップＳ９で、ＣＰＵ１０１は、カラー白黒検出手段１１１を制御して、Ｗｔ＝Ｗｔｄｅｆ＊１．４、Ｈｔ＝Ｈｔｄｅｆ＊１．４を用いて読取画像データがカラー画像か白黒画像かを判断し、ステップＳ１０に進む。
【０１０９】
ステップＳ１０では、ＣＰＵ１０１は、カラー画像を検出したかどうか判断し、検出した場合は、ステップＳ１１に進み、検出しない場合は、ステップＳ１２に進む。
【０１１０】
ステップＳ１２では、ＣＰＵ１０１は、不図示の画像処理手段によって画像データを２値化し、ステップＳ１１に進む。
【０１１１】
ステップＳ１１では、ＣＰＵ１０１は、データ転送手段１１０を介して画像記憶手段１０５に記憶しているカラー画像または白黒画像を外部ＰＣに送信し、ステップＳ１３に進む。
【０１１２】
ステップＳ１３では、ＣＰＵ１０１は、次原稿があるか否かを判断し、次原稿があればステップＳ４に戻り、次原稿がなければ処理を終了する。
【０１１３】
以上説明したように、本実施形態では、読取手段１０４を構成するレンズアレイとラインセンサとの位置関係にずれが生じても、そのずれ量を考慮してカラー白黒検出の判断基準を変更するようにしている。これにより、カラー画像か白黒画像かの自動検出を正確に行うことができる。
【０１１４】
なお、本発明は、上記実施形態に例示したものに限定されるものではなく、本発明の要旨を逸脱しない範囲において適宜変更可能である。
【０１１５】
また、本発明の目的は、以下の処理を実行することによっても達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）が記憶媒体に格納されたプログラムコードを読み出す処理である。
【０１１６】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１１７】
また、プログラムコードを供給するための記憶媒体としては、次のものを用いることができる。例えば、フロッピー（登録商標）ディスク、ハードディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等である。または、プログラムコードをネットワークを介してダウンロードしてもよい。
【０１１８】
また、コンピュータが読み出したプログラムコードを実行することにより、上記実施の形態の機能が実現される場合も本発明に含まれる。加えて、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【０１１９】
更に、前述した実施形態の機能が以下の処理によって実現される場合も本発明に含まれる。即ち、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行う場合である。
【図面の簡単な説明】
【０１２０】
【図１】本発明の実施形態の一例である画像読取装置を説明するためのブロック図である。
【図２】基準位置検出手段によりレンズアレイのマーク位置を検出する方法について説明するための説明図である。
【図３】図２での処理の流れについて説明するためのブロック図である。
【図４】カラー白黒検出手段の処理例を説明するためのフローチャート図である。
【図５】レンズアレイと正常時のラインセンサとの位置関係、及びレンズアレイと熱膨張等によるずれ発生時のラインセンサとの位置関係を示す図である。
【図６】明度閾値と彩度閾値を説明するための説明図である。
【図７】連続カラー画素数閾値と連続カラーライン数閾値の決定方法について説明するための説明図である。
【図８】画像読取装置の動作例について説明するためのフローチャート図である。
【図９】レンズアレイの光量分布について説明するための説明図である。
【図１０】シェーディング補正の一例を説明するための図である。
【図１１】シェーディング補正の一例を説明するためのグラフ図である。
【図１２】シェーディング補正データの一例を示す図である。
【符号の説明】
【０１２１】
１０１  ＣＰＵ
１０２  ＲＡＭ
１０３  ＲＯＭ
１０４  読取手段
１０５  画像記憶手段
１０６  シェーディング補正データ作成手段
１０７  基準位置検出手段
１０８  シェーディング補正データ記憶手段
１０９  判断基準決定手段
１１０  データ転送手段
１１１  カラー白黒検出手段
５０１，７０１  レンズアレイ
７０２，７０３  ラインセンサ
５０２，５０３  黒マーク
５０４  原稿搬送区間
５１０，５１２  比較器
５１１，５１３，５１４，５１６  データ記憶手段
５１５  計算器
【図１】
2010028646.tif 000003
【図２】
2010028646.tif 000004
【図３】
2010028646.tif 000005
【図４】
2010028646.tif 000006
【図５】
2010028646.tif 000007
【図６】
2010028646.tif 000008
【図７】
2010028646.tif 000009
【図８】
2010028646.tif 000010
【図９】
2010028646.tif 000011
【図１０】
2010028646.tif 000012
【図１１】
2010028646.tif 000013
【図１２】
2010028646.tif 000014