(57)【特許請求の範囲】
【請求項１】
白レベル制御を行う白レベル制御部を備える画像読取装置において、
前記白レベル制御部が、
注目画素についての画像データ及び同一の主走査線においてその前後に連続する複数個の画素についての画像データに対して、予め定められたマトリクスを用いて行列演算を行う行列演算部と、
前記行列演算部における演算結果が予め定められたスライス値以上である場合に前記注目画素についての白レベルを更新せず、前記演算結果が前記スライス値より小さい場合に前記注目画素についての白レベルを更新する更新処理部とを備える
ことを特徴とする画像読取装置。
【請求項２】
白レベル制御を行う白レベル制御部を備える画像読取装置において、
前記白レベル制御部が、
注目画素についての白レベル及び同一の主走査線においてその前後に連続する複数個の画素についての白レベルの中から、その最大値及び最小値を算出する最大最小演算部と、
前記注目画素についての白レベルが前記最大値に等しい場合に前記注目画素についての白レベルを所定の値だけ小さくし、当該白レベルが前記最小値と等しい場合に前記注目画素についての白レベルを所定の値だけ大きくする更新処理部とを備える
ことを特徴とする画像読取装置。
【請求項３】
当該画像読取装置が、更に、
予め用意された白基準を読み取ることにより得た白レベルを格納する白レベルメモリと、
シェーディング処理を行うシェーディング処理部と、
前記白レベルメモリとは別に設けられ、前記白レベル制御により更新される白レベルを格納する更新用メモリとを備え、
前記シェーディング処理部が、前記白レベルメモリに格納された白レベルを用いて、第１のシェーディング処理を行い、
前記白レベル制御部が、前記第１のシェーディング処理により得られた画像データについて前記白レベル制御を行って、これにより前記更新用メモリの白レベルを更新し、
前記シェーディング処理部が、前記白レベル制御後に、当該更新された前記更新用メモリに格納された白レベルを用いて、第２のシェーディング処理を行う
ことを特徴とする請求項１又は請求項２に記載の画像読取装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像読取装置に関し、特に、白レベルを正確に制御することができる画像読取装置に関する。
【０００２】
【従来の技術】
複写機やスキャナ等の画像読取装置においては、いわゆる白レベル制御処理が行われる。即ち、媒体としての用紙（原稿）の地色（画像以外の部分、即ち、画像の背景の部分）が、上質紙や新聞紙等の用紙の種類に依存して、様々に異なる。そこで、どのような地色の用紙を読み取った場合でも読取画像のコントラストを向上できるようにするために、白レベル制御処理が行われる。特に、新聞紙、再生紙、漂白されていない用紙、有色（青色）のコピー紙等を読み取った場合に、白レベル制御が必要となる。
【０００３】
白レベル制御処理は、例えば、背景技術説明図である図１２に示すように行われる。即ち、最初に、読み取った用紙の領域を、個々の画像データの値とこれに対応する白レベルの値との比（割合、％）に基づいて、画像部分と地色部分とに判別し、複数の処理区分とする。この割合（％）は、（画像データの値）／（白レベルの値）×１００により求まる。次に、各処理区分毎に、当該区分についての前記割合に応じて定まるパラメータを用いて、白レベルの値についての演算を行い、個々の白レベルを変更する。
【０００４】
例えば、図１２（Ａ）に示すように、処理区分▲１▼における前記割合が１００％以上であれば、当該画像は地色の部分であって、当該画像が現在の白レベルよりも白いのであるから、白レベルをより高い値に変更する必要がある。そこで、この割合の場合の変更量が例えば「＋５」とされ、これを用いて現在の白レベルの値が＋５だけ大きくされる。処理区分▲２▼における前記割合が１００％〜８０％であれば、当該画像は地色の部分であって、これを現在の白レベルに近似した値として検出しているので、白レベルを変更しないように変更量が例えば「０」とされる。処理区分▲３▼における前記割合が８０％〜３３％であれば、当該画像は地色の部分であるにもかかわらず、これを現在の白レベルよりも相当黒レベル側に偏った値として検出しているので、白レベルをより低い値に変更する必要がある。そこで、この割合の場合の変更量が例えば「−２」とされ、これを用いて現在の白レベルの値が−２だけ小さくされる。一方、処理区分▲４▼における前記割合が３３％以下であれば、当該画像は文字等の画像部分であると判別し、白レベルを変更しないように変更量が例えば「０」とされる。
【０００５】
なお、この明細書において、例えば数値「５」は、アナログ信号として読み取った画像データを例えば２５６階調のデジタルデータに変換した場合における、「５」階調分に相当する信号レベルを表す。画像データを「＋５」又は「−５」するとは、当該画像データの値（デジタル信号）に「５」階調分に相当する信号レベルを加えること又は差し引くことをいう。
【０００６】
このような白レベル制御処理は、主走査方向において、１ピクセル（又は画素）毎に１ライン単位で行われる。従って、ラインセンサによる読取りは、ラインセンサに対応して設けられたラインメモリに格納された白レベルの値を逐次更新しながら行われる。
【０００７】
【発明が解決しようとする課題】
前述した白レベル制御処理を、縦線が存在する用紙に適用する場合、以下のような問題がある。
【０００８】
即ち、図１２（Ｂ）に示すように、縦線が存在する用紙においては、地色部分の白レベルは更新されるが、縦線部分の白レベルは更新されない。これは、当該縦線部分についての画像データが、地色ではなく、画像であると判断されるためである。この結果、読取が進行していく（ラインセンサ１１Ａが用紙の下方向（副走査方向）に移動する）につれて、白レベルに段差が生じる。従って、正確に白レベルを制御することができない場合がある。このため、当該縦線が切れた（無くなった）位置から、白レベルに生じている段差に基づいて、本来存在しない（白い）縦線が出力画像に現れやすくなる。
【０００９】
具体的に説明すると、以下のようである。図１２（Ｂ）において、同図の上段の状態のラインセンサ１１Ａが検出している文字「Ｔ」の画像データ及び白レベルは、同図の中段に示すようになる。なお、文字「Ｔ」は黒く塗り潰されているとする（斜線で示す）。また、ラインセンサ１１Ａの延びる方向が、主走査線の方向（横線の方向）である。これに前述の処理区分を当てはめると、文字「Ｔ」の縦線の左右は処理区分▲１▼又は▲２▼であり、また、縦線の部分は処理区分▲４▼であり、共に白レベルは変更されない。ところが、両者の間の文字と地色との境界部分は、種々の理由から画像データの値が緩やかに変化する（中段参照）ため、処理区分▲３▼となり、白レベルはこれを小さくするように変更される。読み取りが進んでラインセンサ１１Ａが副走査方向に１ラインづつ移動していくにつれて、前記境界部分の白レベルについて処理区分▲３▼が繰り返される。この結果、白レベルは、同図の下段に示すようになる。この状態で、ラインセンサ１１Ａが図の点線で示す位置（上段参照）に移動すると、文字「Ｔ」の縦線が無くなる。従って、画像データは同図の下段に示すようになる。しかし、白レベルは前記境界部分で極小値をとるように変更されているので、相対的に画像データの方が白レベルより大きな値となる。この結果、当該境界部分により白い縦線が生じてしまう。
【００１０】
なお、本発明者は、前述したように主走査方向に１ピクセル毎の白レベルを設定する制御方法ではなく、主走査方向における全ピクセルの平均値と白レベルの平均値とを比較して、この結果に基づいて白レベルを１ライン単位で更新する制御方法についても検討した。しかし、この制御方法によると、当該１ラインのピクセルの数（即ち、主走査の幅）が大きくなると、平均値を求めるための計算処理が増加する。また、平均値で白レベルを制御するために、ランプの特性の影響を受けてしまう。即ち、一般にランプの出力は画像の両端において小さくなるので、この影響により、正確に白レベルを制御することができない。
【００１１】
本発明は、正確に白レベルを制御することができる画像読取装置を提供することを目的とする。
【００１２】
【課題を解決するための手段】
本発明による画像読取装置は白レベル制御を行う白レベル制御部を備え、白レベル制御部は行列演算部と更新処理部とを備える。行列演算部は、注目画素についての画像データ及び同一の主走査線においてその前後に連続する複数個の画素についての画像データに対して、予め定められたマトリクスを用いて行列演算を行う。更新処理部は、行列演算部における演算結果が予め定められたスライス値以上である場合に注目画素についての白レベルを更新せず、演算結果が前記スライス値より小さい場合に注目画素についての白レベルを更新する。
【００１３】
本発明の画像読取装置によれば、基本的には画素毎に白レベル制御を行いながら、注目画素の前後の複数の画素の画像データを用いて当該注目画素の白レベルを修正している。従って、注目画素の白レベルが用紙の当該部分の白レベルの本来の値と異なる値とされていても、これを周囲の画素の画像データに基づいて修正することができる。これにより、縦線が存在する用紙においても、当該縦線が切れた（無くなった）位置で白レベルに生じている段差を小さくすることができる。従って、本来存在しない（白い）縦線が出力画像に現れることを防止することができる。
【００１４】
また、本発明による他の画像読取装置は白レベル制御を行う白レベル制御部を備え、白レベル制御部は最大最小演算部と更新処理部とを備える。最大最小演算部は、注目画素についての白レベル及び同一の主走査線においてその前後に連続する複数個の画素についての白レベルの中から、その最大値及び最小値を算出する。更新処理部は、注目画素についての白レベルが最大値に等しい場合に注目画素についての白レベルを所定の値だけ小さくし、当該白レベルが最小値と等しい場合に注目画素についての白レベルを所定の値だけ大きくする。
【００１５】
本発明の他の画像読取装置によれば、基本的には画素毎に白レベル制御を行いながら、注目画素の前後の複数の画素の白レベルに基づいて当該注目画素の白レベルを修正している。従って、前述と同様にして、注目画素の白レベルを周囲の画素の白レベルに基づいて修正することができるので、前記縦線が切れた位置で白レベルに生じている段差を小さくして、本来存在しない当該縦線が出力画像に現れることを防止することができる。
【００１８】
【発明の実施の形態】
図１及び図３は画像読取装置説明図であり、本発明による画像読取装置の構成を示す。この画像読取装置は、例えば複写機からなり、読取処理部１、白レベル制御部２、シェーディング処理部３を備える。
【００１９】
読取処理部１は用紙（原稿又は媒体）１００の画像を読み取る。読取処理部１は、読取部１１、増幅器１２、ＡＤ変換器１３を備え、また、画像メモリ４、白レベルメモリ５を備える。
【００２０】
読取部１１は、周知の構成を有し、ＣＣＤ（電荷結合素子）からなるラインセンサ１１Ａ、駆動モータ、ランプ、反射鏡等の光学系、及びこれらの制御部を含む。読取部１１は、ラインセンサ１１Ａにより、用紙１００又は白基準２７の画像を読み取る。用紙１００は、図３（Ａ）に示すように、当該複写機の筐体５１の上部に嵌め込まれたプラテンガラス５２上に載置される。白基準２７は、図３に示すように、筐体５１の上部の内側（裏側）表面に予め設けられ、白色のシートからなる。白基準２７は、副走査方向（図３（Ｂ）に示す矢印方向）において、プラテンガラス５２より上流側に設けられるので、用紙１００の読み取りに先立って、読み取られる。なお、主走査方向は、図３（Ｂ）において、副走査方向と直交する方向である。また、図３（Ａ）は当該複写機の断面の概略を示し、図３（Ｂ）は当該複写機の筐体５１の上部の内側（裏側）表面の概略を示す。
【００２１】
ラインセンサ１１Ａの（アナログ）出力は、増幅器１２において増幅され、ＡＤ変換器１３により例えば２５６階調のデジタルデータにＡＤ変換される。ＡＤ変換器１３（即ち、読取部１１）のデジタル出力は、画像メモリ（ラインメモリ）４又は白レベルメモリ５に格納される。即ち、用紙１００を読み取った場合に画像メモリ４に格納され、白基準２７を読み取った場合に白レベルメモリ５に格納される。
【００２２】
画像メモリ４は、用紙１００（の画像）を読取処理部１により読み取ることにより得た画像データを格納する。この画像データは、読取部１１のラインセンサ１１Ａの１ライン（１主走査線又は１ラスタ）分のデータである。白レベルメモリ５は、予め用意された白基準２７を読取処理部１により読み取ることにより得た白レベルを格納する。この白レベルのデータも、ラインセンサ１１Ａの１ライン分のデータである。この白レベルのデータは、この例では、更新されることはない（固定である）。
【００２３】
白レベル制御部２は白レベル制御を行う。白レベル制御部２は、行列演算部２１と更新処理部２２とを備え、また、更新用メモリ６、マトリクス格納部７、スライス値格納部８とを備える。
【００２４】
行列演算部２１は、注目画素についての画像データ及び同一の主走査線においてその前後に連続する複数個の画素についての画像データに対して、予め定められたマトリクスを用いて行列演算を行う。マトリクスは、予め与えられ、マトリクス格納部７に格納される。マトリクス格納部７に格納されたマトリクスの一例を、図２（Ｂ）に示す。
【００２５】
例えば、注目画素（現在、白レベル制御の処理の対象である画素）がｐ４であるとすると、画像データｄ１乃至ｄ７が行列演算部２１における処理の対象とされる。即ち、今、注目画素ｐ４の画像データがｄ４であるとする（以下、同様に表す）。この場合、図２（Ａ）に示すように、画像データｄ４に加えて、同一の主走査線においてその前及び後に連続する各々３個の画素ｐ１乃至ｐ３及びｐ５乃至ｐ７の画像データｄ１乃至ｄ３及びｄ５乃至ｄ７が処理の対象とされる。即ち、１×ｎ１（ｎ１＝７）の行列である。従って、マトリクス格納部７に格納されたマトリクスも、同様に、ｎ１×１（ｎ１＝７）の行列である。
【００２６】
行列演算部２１における行列演算の結果は、（結果）＝｜（ｄ１＊ｆ１＋ｄ２＊ｆ２＋ｄ３＊ｆ３＋ｄ４＊ｆ４＋ｄ５＊ｆ５＋ｄ６＊ｆ６＋ｄ７＊ｆ７）／７｜で与えられる。ここで、ｆ１乃至ｆ７は、図２（Ｂ）に示すように、マトリクスの各要素である。ｆ１乃至ｆ７の値は、例えば図２（Ｂ）に示すような値とされる。ｆ１乃至ｆ７は奇数個とされ、その中心の値ｆ４を中心に対象とされる。即ち、｜ｆ１｜＝｜ｆ７｜、｜ｆ２｜＝｜ｆ６｜、｜ｆ３｜＝｜ｆ５｜、・・・とされる。なお、処理対象である画像データの個数ｎ１は奇数であればよく、ｎ１の値「７」は、一例であって、これに限られない。ｎ１の値は、当該複写機の解像度に応じて定められる。解像度が高い場合、ｎ１の値も大きくされる。
【００２７】
更新処理部２２は、行列演算部２１における演算結果とスライス値とを比較し、演算結果が予め定められたスライス値以上である場合に当該注目画素についての白レベルを更新せず、演算結果がスライス値より小さい場合に注目画素についての白レベルを更新する。更新される白レベルは、例えば、更新用メモリ６に格納される。更新用メモリ６は、白レベルメモリ５とは別に設けられ、白レベルメモリ５と同様の構成とされ、白レベル制御により更新される白レベルを格納する。スライス値は、予め与えられ、スライス値格納部８に格納される。スライス値は経験的に定まる。
【００２８】
これにより、演算結果がスライス値以上である場合、画像データの当該部分に所定の傾き以上の傾きがある（エッジである）ことが検出できる。この場合、前述の図１２の例において、文字「Ｔ」の縦線とその両側の地色の部分の境界部分では、画像データの当該部分の傾きが検出され、白レベルの更新が行われない。一方、演算結果がスライス値より小さい場合、画像データの当該部分に所定の傾き以上の傾きはない（小さい傾きがあるか又は平坦である、即ち、エッジでない）ことが検出できる。この場合、前述の図１２の例に従って、白レベルが更新される。即ち、文字「Ｔ」の縦線部分及びとその両側の地色の部分では、個々の画像データの値と白レベルの値との割合（％）が求められ、これに応じてその処理区分▲１▼乃至▲４▼が定まり、当該処理区分における当該変更量を用いて個々の白レベルの値が変更される。
【００２９】
具体的には、前述の図１２の例において、文字「Ｔ」の縦線の両側の地色の部分では、白レベルが更新され、より地色に近づく。文字「Ｔ」の縦線の部分では、白レベルが更新されない。両者の境界部分では、エッジが検出されたりされなかったりすることを繰り返す結果、グレー色に白レベルが追従し、その値が次第に小さくされる。
【００３０】
なお、演算結果がスライス値より大きい場合に当該注目画素についての白レベルを更新せず、演算結果がスライス値以下である場合に注目画素についての白レベルを更新するようにしてもよい。
【００３１】
シェーディング処理部３はシェーディング処理（又はシェーディング補正処理）を行う。この例においては、シェーディング処理は第１及び第２のシェーディング処理からなる。具体的には、シェーディング処理部３は、白レベル制御前に、白レベルメモリ５に格納された白レベルを用いて、第１のシェーディング処理を行う。第１のシェーディング処理は白レベル制御のための処理又は本発明の白レベル制御の一部（主走査線単位での白レベル制御）である。また、シェーディング処理部３は、白レベル制御後に、更新された更新用メモリ６に格納された白レベルを用いて、第２のシェーディング処理を行う。
【００３２】
図４（Ａ）に示すように、白レベルメモリ５に格納された白レベルや画像メモリ４の画像データも、ランプの特性等の影響を受けて、主走査方向の両端において、データの値（レベル）が低下する特性を示し、更に、実際には、図４（Ａ）に示す滑らかな線ではなく、地色のムラ、画像の濃度ムラ、ゴミ等の影響でかなりばらついた（雑音を含む）値をとる。そこで、この例では、シェーディング処理部３が、白レベル制御に先立って、各々の主走査線毎に、白レベルメモリ５に格納された白レベル（固定）を用いて、図４（Ａ）に示す値をとる画像メモリ４の画像データについて、第１のシェーディング処理を行う。即ち、図４（Ｂ）に示すように、画像データの値（レベル）を平坦化する。従って、第１のシェーディング処理の後の画像データは、ランプの特性等の影響が除かれ、図４（Ｂ）に示すように平坦化される。第１のシェーディング処理の後の画像データの値が、その後の当該主走査線についての白レベル制御及び第２のシェーディング処理に用いられる画像データの値である。なお、平坦化された画像データは、画像メモリ４に上書きして格納しても、他に用意された更新用画像メモリ（図示せず）に格納してもよい。
【００３３】
一方、第２のシェーディング処理のための白レベルは、当該第２のシェーディング処理に先立って、更新用メモリ６に予め与えられる。即ち、最初の主走査線（後述するＹ座標の値＝０）についての第２のシェーディング処理においては、（更新用）白レベルの初期値が用いられる。この初期値は、白レベル制御部２により、更新用メモリ６に格納される。この初期値の格納処理は、用紙１００の読取処理に先立って、例えば白基準２７の読取処理（後述するステップＳ２）に並行して行われる。２番目以降の主走査線（Ｙ座標の値＝１以降）についての第２のシェーディング処理においては、直前の主走査線についての白レベル制御の結果得られた（更新された）白レベルが用いられる。この白レベルは、直前の主走査線についての白レベル制御の終了の時点で更新用メモリ６に得られ、更に、当該主走査線についての白レベル制御により更新される。
【００３４】
更新用メモリ６に格納される白レベルの初期値は、図４（Ｂ）に示すように、主走査線の方向において、平坦で比較的低い値（レベル）とされる。即ち、主走査線の方向において、一定の値とされ、かつ、比較的低い値（例えば、白レベルと黒レベルの中間の値）とされる。これにより、当該初期値を、図４（Ｂ）に示すように、殆どの用紙１００の地色の画像データに対して十分に小さな値とすることができ、これを白レベル制御により図中点線で示すより大きな値に更新することができる。
【００３５】
なお、実際には、第１及び第２のシェーディング処理のために、図４（Ａ）に示すように、黒レベルも用いられる。即ち、白基準２７と同様に、プラテンガラス５２の副走査方向の上流側に設けられた黒基準（図示せず）を読み取ることにより、黒レベルを得る。黒レベルは黒レベルメモリ（図示せず）に格納される。具体的には、シェーディングの結果は（（Ｄ−Ｂ）／（Ｗ−Ｂ））×ｎにより得られる。ここで、Ｄは画像データ、Ｂは黒レベル、Ｗは白レベル、ｎは階調である。但し、前述したように、第１のシェーディング処理における白レベルＷは白レベルメモリ５に格納された白レベル（固定）であり、第２のシェーディング処理における白レベルＷは更新用メモリ６に格納された白レベル（更新用）である。また、第１のシェーディング処理における画像データＤは画像メモリ４に格納された画像データ（図４（Ａ）の画像データ）であり、第２のシェーディング処理における画像データＤは第１のシェーディング処理により平坦化された画像データ（図４（Ｂ）の画像データ）である。
【００３６】
従って、この例では、白レベル制御部２は、第１のシェーディング処理の後に、当該処理により得られた（平坦化された）画像データについて更新用メモリ６の白レベルを用いて白レベル制御を行って、これにより更新用メモリ６の白レベルを更新する。この白レベル制御後に、シェーディング処理部３が、平坦化された画像データについて当該更新された更新用メモリ６の白レベルを用いて、第２のシェーディング処理を行う。
【００３７】
なお、従来は、公知の白レベル制御後に（のみ）、白基準２７を読み取った白レベル（図４（Ａ）の白レベル）及び画像メモリ４内の画像データ（図４（Ａ）の画像データ）を用いた１回のシェーディング処理（のみ）が行われていた。このため、実際には、白レベル制御の時点においては、ランプの特性、ＣＣＤの特性等の種々の原因により、白レベル制御に用いる画像データ及び白レベルのデータ自体も雑音等を含んでいた。従って、正確な白レベル制御が行い難かったが、この例においては、このような影響が除去されるので、より正確な白レベル制御が可能となる。
【００３８】
図５は画像読取装置説明図であり、本発明による他の画像読取装置の構成を示し、図１に対応する。この例は、図１の画像読取装置において、白レベル制御を行列演算によらず、白レベルの最大値及び最小値を用いて行う。このために、この画像読取装置の白レベル制御部２は、最大最小演算部２３と更新処理部２４とを備える。なお、読取処理部１における読取部１１等の図示は省略する（図６においても同様である）。
【００３９】
図５（Ａ）に示すように、最大最小演算部２３は、注目画素についての白レベル及び同一の主走査線においてその前後に連続する複数個の画素についての白レベルの中から、その最大値及び最小値を算出する。
【００４０】
例えば、注目画素がｐ６であるとすると、白レベル（のデータ）ｗ０乃至ｗ１２が最大最小演算部２３における処理の対象とされる。即ち、今、注目画素ｐ６の白レベルのデータがｗ６であるとする（以下、同様に表す）。この場合、図５（Ｂ）に示すように、白レベルのデータｗ６に加えて、同一の主走査線においてその前及び後に連続する各々６個の画素ｐ０乃至ｐ５及びｐ７乃至ｐ１２の白レベルのデータｗ０乃至ｗ５及びｗ７乃至ｗ１２が処理の対象とされる。そして、これらの中から、最大値Max(w0〜w12)及び最小値Min(w0〜w12)が算出（抽出）される。
【００４１】
なお、処理対象である白レベルのデータの個数ｎ２は奇数であればよく、ｎ２の値「１３」は、一例であって、これに限られない。ｎ２の値は、当該複写機の解像度に応じて定められる。解像度が高い場合、ｎ２の値も大きくされる。
【００４２】
更新処理部２４は、注目画素についての白レベルが最大値に等しい場合に当該注目画素についての白レベルを所定の値（例えば、１）だけ小さくし、当該白レベルが最小値と等しい場合に注目画素についての白レベルを所定の値（例えば、１）だけ大きくする。この減少及び増加の幅は、経験的に求まり、予め定められ、例えば白基準２７の白レベルの値に比べ極めて小さい値（例えば、２５６階調の１階調分）とされる。即ち、当該白レベルの周囲の１個（又は、下記のように複数）の白レベルの値をスライス値として用いる。
【００４３】
例えば、前述の白レベルのデータｗ６が最大値Max(w0〜w12)に等しい場合、当該白レベルのデータｗ６を例えば−１（即ち、ｗ６−１と）する。また、白レベルのデータｗ６が最小値Min(w0〜w12)に等しい場合、当該白レベルのデータｗ６を例えば＋１（即ち、ｗ６＋１と）する。
【００４４】
これにより、注目画素の白レベルが最大値に等しい場合、当該白レベルが当該領域では周囲の値から大きな値の方向へ突出している（極大値である）ことが検出できる。この場合、当該白レベルを少し（所定の値）だけ小さくすることができる。一方、注目画素の白レベルが最小値に等しい場合、当該白レベルが当該領域では周囲の値から小さな値の方向へ突出している（極小値である）ことが検出できる。この場合、当該白レベルを少し（所定の値）だけ大きくすることができる。
【００４５】
具体的には、前述の図１２の例において、文字「Ｔ」の縦線の両側の地色の部分では、白レベルが更新され、より地色に近づく。文字「Ｔ」の縦線の部分では、白レベルが更新されない。両者の境界部分では、注目画素の白レベルが最小値に等しいことが多くなる結果、グレー色に白レベルが追従し、その値が次第に小さくされる。
【００４６】
なお、白レベル（のデータ）がｉ番目（例えば、２番目又は３番目）に大きい値に等しいか又はより大きい場合に白レベルの値を減少させてもよく、ｉ番目に小さい値に等しいか又はより小さい場合に白レベルの値を増加させてもよい。ここで、ｉはｎ２の１／２よりも小さい値である。
【００４７】
図６は画像読取装置説明図であり、本発明による更に他の画像読取装置の構成を示し、図１に対応する。この例は、図１の画像読取装置において、白レベル制御を行列演算によらず、白レベルのデータの特徴を用いて行う。このために、この画像読取装置の白レベル制御部２は、区分処理部２５と更新処理部２６とを備える。
【００４８】
図６（Ａ）に示すように、区分処理部２５は、同一の主走査線における画素の各々について、その画像データの値と当該白レベルの値との割合（比）を求め、当該割合に基づいて画素の各々を複数の処理区分に区分する。この割合（％）は、（画像データの値）／（白レベルの値）×１００により求まる。処理区分としては、例えば、図６（Ｂ）に示す処理区分▲１▼乃至▲４▼を用いる。この区分処理の結果、１ラインの画素の数が、例えば２５６個であるとすると、処理区分▲１▼である画素が２４０個、処理区分▲２▼である画素が１０個、処理区分▲３▼である画素が６個、処理区分▲４▼である画素が０個のように、各区分ごとの画素の数が求まる。なお、処理区分はより細かい区分を用いてもよい。例えば、１００％〜３３％の範囲を、２区分ではなく、当該割合に応じて、３区分又は４区分等の複数に区分してもよい。
【００４９】
更新処理部２６は、区分処理部２５における区分結果に基づいて、最も画素の数の多い処理区分について予め定められた白レベル制御を、当該同一の主走査線における画素の各々について行う。即ち、当該区分についての変更量を用いて、当該同一の主走査線における画素の白レベルの値についての演算を行い、白レベルを変更する。白レベルの変更量としては、例えば、図１２（Ａ）に示す変更量を用いる。例えば、前述の例によると、処理区分▲１▼が、区分された画素が２４０個で最も多い。そこで、処理区分▲１▼についての変更量例えば「＋５」を用いて、当該同一の主走査線における画素の各々についての現在の白レベルの値が＋５だけ大きくされる。
【００５０】
次に、本発明の複写機における白レベル制御処理フローについて、図７乃至図１１を参照して説明する。本発明の複写機は、実際には、図１乃至図６に示す構成の各々を備え、これらによる白レベル制御を組み合わせて実行する。これにより、複雑な白レベル制御を行って、より正確に白レベルを設定している。
【００５１】
図７は、本発明の複写機の実行する複写処理フローを示す。
【００５２】
読取処理部１が、所定の指示入力に従って、用紙１００の画像の読み取り動作（処理）を開始する（ステップＳ１）。
【００５３】
読取処理部１が、最初に、白基準２７を読み取る（ステップＳ２）。これにより、白レベルメモリ５に白レベル（固定）が得られる。これと並行して、更新用メモリ６に、白レベル（更新用）の初期値が設定される。
【００５４】
読取処理部１が、次に、用紙１００の１ライン（即ち、１ラスタ）を読み取る（ステップＳ３）。これにより、画像メモリ４に画像データが得られる。
【００５５】
シェーディング処理部３が、白レベルメモリ５の白レベル（固定）及び黒レベルを用いて、第１のシェーディング処理を行う（ステップＳ４）。これにより、処理対象の１ライン分の画像データが、主走査線方向に平坦化される。
【００５６】
白レベル制御部２が白レベル制御を行うと共に、シェーディング処理部３が、更新用メモリ６の白レベル（更新用）及び黒レベルを用いて、第２のシェーディング処理を行う（ステップＳ５）。これについては、図８及び図１０を参照して後述する。即ち、図８に示す画素毎の白レベル制御と図１０に示す主走査線毎の白レベル制御とが独立して並行に行われる。
【００５７】
この後、読み取りの１ライン毎に、最終ラインまで、ステップＳ３乃至ステップＳ５が繰り返される。
【００５８】
図８は、白レベル制御処理及びシェーディング処理フローを示す。
【００５９】
シェーディング処理部３が、白レベルメモリ５の白レベル（固定）及び黒レベルを用いて、そのラスタ（即ち主走査線）の画像メモリ４の画像データについて、第１のシェーディング処理を行い、画像データを平坦化する（ステップＳ６）。なお、このステップＳ６は、図７のステップＳ４及び後述する図１０のステップＳ２０と同一の処理であり、説明のために繰り返し示したものである。
【００６０】
白レベル制御部２が、平坦化された画像データと更新用メモリ６の白レベル（更新用）を用いて、白レベル制御を行う（ステップＳ７）。これにより、更新用メモリ６の白レベル（更新用）が更新される。これについては、図９を参照して後述する。
【００６１】
シェーディング処理部３が、ステップＳ７（及びステップＳ２３）で当該更新された白レベル（更新用）及び黒レベルを用いて、そのラスタの平坦化された画像データについて、第２のシェーディング処理を行う（ステップＳ８）。
【００６２】
読取処理部１が、Ｙ座標を１だけ加算する（ステップＳ９）。即ち、注目ラスタ（現在、白レベル制御の処理の対象であるラスタ）を１個だけ下側（副走査方向）へずらす。このステップＳ９は、後述するステップＳ２５と同時に行われる。なお、Ｙ座標は副走査方向におけるピクセルの座標であり、プラテンガラス５２の副走査方向における上流側の端（辺）、即ち、図３（Ｂ）中におけるプラテンガラス５２の左端が基点（Ｙ座標の値＝０）とされる。
【００６３】
読取処理部１が、注目ラスタが下端（Ｙ座標の値＝その最大値）か否かを調べる（ステップＳ１０）。注目ラスタが下端の場合、処理を終了する。下端でない場合、ステップＳ６以下を繰り返す。
【００６４】
図９は、白レベル制御部２が実行する白レベル制御処理フローを示す。
【００６５】
当該主走査線における最も左端（Ｘ座標の値＝０）のピクセルについて、注目画素の周辺の画像データから、エッジ判定を行う（ステップＳ１１）。即ち、行列演算部２１において前記行列演算を行い、その演算結果とスライス値とを比較する。
【００６６】
注目画素がエッジか否かを調べる（ステップＳ１２）。注目画素がエッジである（演算結果がスライス値以上である）場合、ステップＳ１５に進む。従って、この場合、以下のステップＳ１３及びＳ１４（画像データに基づく画素単位での（個別の）白レベル制御処理）においては、白レベルは更新されない。
【００６７】
注目画素がエッジでない（演算結果がスライス値より小さい）場合、図１２の例により画像データと白レベルの割合の計算処理を行う（ステップＳ１３）。
【００６８】
求めた割合に応じて図１２の例により処理区分▲１▼乃至▲４▼を定め、当該区分に基づいて白レベルの変更量を決定する（ステップＳ１４）。従って、この場合、白レベルは画像データに基づいて、更新される（ことになる）。処理区分が▲２▼及び▲４▼である場合には、変更量は０であり、白レベルは変化しない。この変更量は白レベル制御部２が備える作業領域（図示せず）に一時的に保持される。従って、ステップＳ１４においては、更新用メモリ６の内容は変更されない。
【００６９】
注目画素の周辺の白レベルを確認する（ステップＳ１５）。即ち、最大最小演算部２３における処理の対象である白レベルのデータ（例えば、ｗ０乃至ｗ１２）が、最大最小演算部２３に取り込まれる。
【００７０】
白レベルの変更量を更新する（ステップＳ１６）。即ち、最大最小演算部２３において前述の最大値及び最小値を抽出し、これと注目画素の白レベルとの比較結果に基づいて白レベルの変更量を求め、この値を用いて前記作業領域に保持された白レベルの変更量を更新する。従って、白レベルは周囲の白レベルに基づいて、更新される（ことになる）。注目画素の白レベルが最大値及び最小値以外の場合には、変更量は０であり、白レベルは変化しない。なお、ステップＳ１６においては、更新用メモリ６の内容は変更されない。
【００７１】
注目画素の白レベルに、ステップＳ１６において更新した白レベルの変更量を適用して、新たな白レベルを求める（ステップＳ１７）。即ち、更新用メモリ６の当該注目画素の白レベルを、前記作業領域に保持された白レベルの変更量を用いて変更し、これを当該注目画素の白レベルの新たな値として、更新用メモリ６の元の位置に格納する。従って、各画素に対応する個々の白レベルは、画像データに基づく白レベル制御処理の結果と、周囲の白レベルに基づく画素単位での（個別の）白レベル制御処理（ステップＳ１５及びＳ１６）の結果との双方に基づいて、更新される。
【００７２】
Ｘ座標（主走査方向の座標）を１だけ加算する（ステップＳ１８）。即ち、注目ピクセルを１個だけ右側へずらす。このステップＳ１８は、後述するステップＳ２９と同時に行われる。なお、Ｘ座標は主走査方向におけるピクセルの座標であり、プラテンガラス５２の主走査方向における上流側の端（辺）、即ち、図３（Ｂ）中におけるプラテンガラス５２の下端が基点（Ｘ座標の値＝０）とされる。
【００７３】
注目ピクセルが右端（Ｘ座標の値＝その最大値）か否かを調べる（ステップＳ１９）。注目ピクセルが右端の場合、処理を終了する。右端でない場合、ステップＳ１１以下を繰り返す。
【００７４】
図１０は、白レベル制御処理及びシェーディング処理フローを示し、図８に対応する。即ち、図７に示す処理が実行され、図１０はそのステップＳ３及びステップＳ４に相当する。
【００７５】
シェーディング処理部３が、白レベルメモリ５の白レベル（固定）及び黒レベルを用いて、そのラスタの画像メモリ４の画像データについて、第１のシェーディング処理を行う（ステップＳ２０）。前述したように、ステップＳ２０は、図７のステップＳ４及び図８のステップＳ６と同一である。
【００７６】
白レベル制御部２が白レベル制御を行う（ステップＳ２１）。これについては、図１１を参照して後述する。なお、このステップＳ２１においては、区分処理部２５において処理区分に属する画素の数がカウントされるのみで、更新用メモリ６の内容は変更されない。画像データに基づく主走査線単位での（一律の）白レベル制御処理（ステップＳ２１乃至Ｓ２２）の結果は、ステップＳ２３において白レベル（更新用）に反映される。
【００７７】
白レベル制御部２が、カウントが最大値の処理区分に基づいて、その変更量を決定する（ステップＳ２２）。
【００７８】
白レベル制御部２が、決定した変更量を一律に用いて、当該主走査線における各画素に対応する白レベルの全てに変更量を適用する（ステップＳ２３）。即ち、更新用メモリ６に格納された白レベルのデータの各々について、当該変更量を一律に加えるか又は減じる。なお、ステップＳ１８とＳ２９とが同時に行われるので、この時点で、図９に示す各画素に対応する個々の白レベルの更新（画像データに基づく白レベル制御処理及び周囲の白レベルに基づく画素単位での白レベル制御処理）は、終了している。従って、画素単位での白レベルの更新後の更新用メモリ６の白レベルが、更に、一律に変更される。
【００７９】
シェーディング処理部３が、ステップＳ２３（及びステップＳ７）で当該更新された白レベル（更新用）及び黒レベルを用いて、そのラスタの平坦化された画像データについて、第２のシェーディング処理を行う（ステップＳ２４）。
【００８０】
読取処理部１が、Ｙ座標（副走査方向の座標）を１だけ加算する（ステップＳ２５）。即ち、注目ラスタを１個だけ下側へずらす。このステップＳ２５は、前述するステップＳ９と同時に行われる。
【００８１】
読取処理部１が、注目ラスタが下端か否かを調べる（ステップＳ２６）。注目ラスタが下端の場合、処理を終了する。下端でない場合、ステップＳ２０以下を繰り返す。
【００８２】
図１１は、白レベル制御部２が実行する白レベル制御処理フローを示し、図９に対応する。
【００８３】
当該主走査線における最も左端のピクセルについて、当該画像データと白レベルとの割合を計算する（ステップＳ２７）。
【００８４】
求めた割合に応じて、複数に区分した処理区分の中の該当する区分における画素（又はピクセル）の数として、カウント（＋１）する（ステップＳ２８）。なお、カウンタ（図示せず）のカウント値は、図７のステップＳ１において、リセットされる（０とされる）。
【００８５】
Ｘ座標を１だけ加算する（ステップＳ２９）。即ち、注目ピクセルを１個だけ右側へずらす。このステップＳ２９は、前述するステップＳ１８と同時に行われる。
【００８６】
注目ピクセルが右端か否かを調べる（ステップＳ３０）。注目ピクセルが右端の場合、処理を終了する。右端でない場合、ステップＳ２７以下を繰り返す。
【００８７】
以上、本発明をその実施態様により説明したが、本発明はその主旨の範囲内において種々の変形が可能である。
【００８８】
例えば、図１、図４、図５、図６に示す白レベル制御の実施態様及びその変形を、各々、独立して実施してもよい。これにより、より簡単で比較的正確な白レベル制御を行うことができる。また、図１、図４、図５、図６に示す白レベル制御の実施態様及びその変形を、任意の組み合わせで実施してもよい。即ち、これらの白レベル制御は、前述の説明から判るように、互いに影響をあたえることなく独立に実行できるので、自由に組み合わせて実施できる。一例を示すと、図４に示す第１のシェーディング処理を省略して、その上で、図１、図５、図６に示す実施態様を組み合わせてもよい。この場合、更新用メモリ６を設けることを省略してもよい。即ち、白レベルメモリ５内の白レベルを更新するようにしてもよい。
【００８９】
【発明の効果】
以上説明したように、本発明によれば、画像読取装置において、基本的には画素毎に白レベル制御を行いながら、注目画素の前後の複数の画素についての画像データ又は白レベルを用いる等により当該注目画素の白レベルを修正することにより、注目画素の白レベルが用紙の当該部分の白レベルの本来の値と異なる値とされていてもこれを周囲の画素の白レベルに基づいて修正することができるので、縦線が存在する用紙において当該縦線が切れた位置で白レベルに生じている段差を小さくすることができ、従って、本来存在しない白い縦線が出力画像に現れることを防止することができる。
【図面の簡単な説明】
【図１】画像読取装置説明図である。
【図２】画像読取装置説明図である。
【図３】画像読取装置説明図である。
【図４】画像読取装置説明図である。
【図５】画像読取装置説明図である。
【図６】画像読取装置説明図である。
【図７】複写処理フローである。
【図８】白レベル制御処理及びシェーディング処理フローである。
【図９】白レベル制御処理フローである。
【図１０】白レベル制御処理及びシェーディング処理フローである。
【図１１】白レベル制御処理フローである。
【図１２】背景技術説明図である。
【符号の説明】
１    読取処理部
２    白レベル制御部
３    シェーディング処理部
４    画像メモリ
５    白レベルメモリ
６    更新用メモリ
７    マトリクス格納部
８    スライス値格納部
【図１】
0003828703.tif 000002
【図２】
0003828703.tif 000003
【図３】
0003828703.tif 000004
【図４】
0003828703.tif 000005
【図５】
0003828703.tif 000006
【図６】
0003828703.tif 000007
【図７】
0003828703.tif 000008
【図８】
0003828703.tif 000009
【図９】
0003828703.tif 000010
【図１０】
0003828703.tif 000011
【図１１】
0003828703.tif 000012
【図１２】
0003828703.tif 000013