(57)【要約】【課題】画像データよりフレアの影響を補正させるフレア補正処理において、膨大な計算量が必要な状態から計算量を大幅に低減させる画像読取装置および画像読取プログラムを提供する。【解決手段】画像読取部５で読み取った原稿の画像データを、ＲＧＢ濃度均質化処理部９でＬａｂデータに処理し、Ｌａｂデータに処理された画像データをフレア低減処理部１０でフレア補正する。  フレア低減処理部１０では、平均濃度事前計算部１１で画像データの代表値を計算し、フレア補正計算部１２でフレア補正の計算を行う。【選択図】図１
2011109318.tif 000002
【特許請求の範囲】
【請求項１】
計算領域を特定の区間に区分する区分手段と、
原稿の画像データを読み取る画像データ読取手段と、
前記画像データ読取手段で読み取った画像データのフレア補正を行うフレア補正関数に基づき、前記区分手段で区分した前記区間中、前記画像データ読取手段で読み取った画像データの中の補正対象画素を含まない区間の補正値を算出する補正値算出手段と、
前記補正対象画素を含んで前記補正値算出手段で前記補正値が算出されない区間では、前記フレア補正関数を使用して前記補正対象画素のフレア補正を行い、前記補正値算出手段で前記補正値が算出された区間では当該補正値を使用して前記補正対象画素のフレア補正を行うフレア補正手段と
を具備する画像読取装置。
【請求項２】
前記画像データ読取手段で読み取った画像データに基づき、前記補正対象画素を含まない前記区間の代表値を算出する代表値算出手段
を更に具備し、
前記フレア補正手段は、
前記補正対象画素を含んで前記代表値算出手段で前記代表値が算出されない区間では、前記画像データ読取手段で読み取った画像データを使用してフレア補正を行い、前記代表値算出手段で前記代表値が算出された区間では前記代表値算出手段で算出した前記代表値を使用してフレア補正を行う
請求項１記載の画像読取装置。
【請求項３】
前記代表値算出手段は、
前記画像データ読取手段で読み取った画像データに基づき第１の代表値と前記第１の代表値に前記計算領域において隣接する第２の代表値とを算出し、前記第１の代表値と前記第２の代表値との線形計算により前記代表値を算出する
請求項２記載の画像読取装置。
【請求項４】
前記代表値算出手段は、
区間内の代表値を算出する為に各区間が分割された要素の数は、２ｎ（ｎは自然数）とする
請求項２または３記載の画像読取装置。
【請求項５】
前記区分手段は、
前記フレア補正関数の暫定区間内の平均と前記画像データ読取手段で読み取った画像データの値との差の二乗を累積して、その累積値が一定値を超える個所を区間の区切りとして前記計算領域の区分を行う
請求項１乃至４記載の画像読取装置。
【請求項６】
コンピュータを、
計算領域を特定の区間に区分する区分手段、
原稿の画像データを読み取る画像データ読取手段、
前記画像データ読取手段で読み取った画像データのフレア補正を行うフレア補正関数に基づき、前記区分手段で区分した前記区間中、前記画像データ読取手段で読み取った画像データの中の補正対象画素を含まない区間の補正値を算出する補正値算出手段、
前記補正対象画素を含んで前記補正値算出手段で前記補正値が算出されない区間では、前記フレア補正関数を使用して前記補正対象画素のフレア補正を行い、前記補正値算出手段で前記補正値が算出された区間では当該補正値を使用して前記補正対象画素のフレア補正を行うフレア補正手段
として機能させる為の画像読取プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像読取装置および画像読取プログラムに関する。
【背景技術】
【０００２】
従来より原稿の画像データを読み取る装置としてスキャナが存在する。
【０００３】
そして、スキャナには、原稿に反射した光をミラーで折り返しながらレンズに導き、撮像素子に結像させる縮小光学系の装置が一般に利用されている。
【０００４】
縮小光学系の装置ではその特性上、本来ＣＣＤ(Charge Coupled Devices)センサが読み取るべき領域以外で発生した原稿や筺体からの反射光もＣＣＤセンサに届くため、それらの影響によって読み取り結果が変化してしまう現象がある。
【０００５】
この現象は、部分的な黒画像が読み取られた際に、その黒画像の周りに薄っすらと暗い影ができ、また黒画像の中も白画像に近いほど薄くなる現象で、フレアと呼ばれる。
【０００６】
そこで、フレアの影響を受けた読み取り画像データから、フレアを補正する処理を行って、本来読み取るべき原稿の画像データを取得する補正技術が望まれる。
【０００７】
特許文献１の発明によれば、検査用原稿を読み取った中央黒領域の画素値と、フレアの影響が無いときの黒領域の画素値の差からフレア補正量を求めている迷光補正方法及び迷光補正装置及び画像読取装置が提案されている。そして、実際の原稿読み取りでは、ラインの平均値とそれに対応するフレア補正量を用いて、そのラインの各画素値が補正されている。
【０００８】
また、特許文献２の発明によれば、主走査方向の連続した所定濃度以上の画像幅を検出し、その画像幅から主走査方向のフレア幅を求め、その画像の先後端エッジ（先端：低濃度から高濃度に変化する領域、後端：高濃度から低濃度に変化する領域）から低濃度画像部を先ほどのフレア幅分所定値に置き換えることにより、高濃度部の低濃度に及ぼすフレアをキャンセルする画像読取装置が提案されている。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００７−０３６３７８号公報
【特許文献２】特開２００３−２９８８４４号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
この発明は、画像データよりフレアの影響を補正させるフレア補正処理において、膨大な計算量が必要な状態から計算量を大幅に低減させる画像読取装置および画像読取プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記目的を解決する為、請求項１の発明の画像読取装置は、計算領域を特定の区間に区分する区分手段と、原稿の画像データを読み取る画像データ読取手段と、前記画像データ読取手段で読み取った画像データのフレア補正を行うフレア補正関数に基づき、前記区分手段で区分した前記区間中、前記画像データ読取手段で読み取った画像データの中の補正対象画素を含まない区間の補正値を算出する補正値算出手段と、前記補正対象画素を含んで前記補正値算出手段で前記補正値が算出されない区間では、前記フレア補正関数を使用して前記補正対象画素のフレア補正を行い、前記補正値算出手段で前記補正値が算出された区間では当該補正値を使用して前記補正対象画素のフレア補正を行うフレア補正手段とを具備するように構成される。
【００１２】
また、請求項２の発明は、請求項１の発明において、前記画像データ読取手段で読み取った画像データに基づき、前記補正対象画素を含まない前記区間の代表値を算出する代表値算出手段を更に具備し、前記フレア補正手段は、前記補正対象画素を含んで前記代表値算出手段で前記代表値が算出されない区間では、前記画像データ読取手段で読み取った画像データを使用してフレア補正を行い、前記代表値算出手段で前記代表値が算出された区間では前記代表値算出手段で算出した前記代表値を使用してフレア補正を行うように構成される。
【００１３】
また、請求項３の発明は、請求項２の発明において、前記代表値算出手段は、前記画像データ読取手段で読み取った画像データに基づき第１の代表値と前記第１の代表値に前記計算領域において隣接する第２の代表値とを算出し、前記第１の代表値と前記第２の代表値との線形計算により前記代表値を算出するように構成される。
【００１４】
また、請求項４の発明は、請求項２または３の発明において、前記代表値算出手段は、区間内の代表値を算出する為に各区間が分割された要素の数は、２ｎ（ｎは自然数）とするように構成される。
【００１５】
また、請求項５の発明は、請求項１乃至４の発明において、前記区分手段は、前記フレア補正関数の暫定区間内の平均と前記画像データ読取手段で読み取った画像データの値との差の二乗を累積して、その累積値が一定値を超える個所を区間の区切りとして前記計算領域の区分を行うように構成される。
【００１６】
また、請求項６の発明の画像読取プログラムは、コンピュータを、計算領域を特定の区間に区分する区分手段、原稿の画像データを読み取る画像データ読取手段、前記画像データ読取手段で読み取った画像データのフレア補正を行うフレア補正関数に基づき、前記区分手段で区分した前記区間中、前記画像データ読取手段で読み取った画像データの中の補正対象画素を含まない区間の補正値を算出する補正値算出手段、前記補正対象画素を含んで前記補正値算出手段で前記補正値が算出されない区間では、前記フレア補正関数を使用して前記補正対象画素のフレア補正を行い、前記補正値算出手段で前記補正値が算出された区間では当該補正値を使用して前記補正対象画素のフレア補正を行うフレア補正手段として機能させる。
【発明の効果】
【００１７】
請求項１の発明によれば、本構成を有していない場合に比較して、フレア補正の為の計算速度が速くなるという効果を奏する。
【００１８】
請求項２の発明によれば、本構成を有していない場合に比較して、フレア補正の為の計算速度が速くなるという効果を奏する。
【００１９】
請求項３の発明によれば、本構成を有していない場合に比較して、フレア補正の為の計算速度が速くなるという効果を奏する。
【００２０】
請求項４の発明によれば、本構成を有していない場合に比較して、フレア補正の為の計算速度が速くなるという効果を奏する。
【００２１】
請求項５の発明によれば、本構成を有していない場合に比較して、フレア補正の為の計算速度が速くなるという効果を奏する。
【００２２】
請求項６の発明によれば、本構成を有していない場合に比較して、フレア補正の為の計算速度が速くなるという効果を奏する。
【図面の簡単な説明】
【００２３】
【図１】図１は画像読取装置１の構成を示す模式図である。
【図２】図２は画像読取装置１で行われる処理の流れを示す模式図である。
【図３】図３はPara(x)を示すグラフである。
【図４】図４は平均濃度事前計算部１１の構成を示す模式図である。
【図５】図５はフレア補正計算部１２の構成を示す模式図である。
【図６】図６はフレア低減処理部１０で行われる処理を示すフローチャートである。
【図７】図７はフレア低減処理部１０で行われる処理を示すフローチャートである。
【図８】図８はフレア低減処理部１０で行われる処理を示すフローチャートである。
【図９】図９は要素数を2n(n=1〜m)としたPara(x)を示す模式図である。
【図１０】図１０は各区間の閾値を決定する処理を示したフローチャートである。
【発明を実施するための形態】
【００２４】
以下、本発明の実施例について添付図面を参照して詳細に説明する。
【００２５】
まず、本発明に係る画像読取装置１について図１を参照して説明を行う。
【００２６】
図１は、画像読取装置１の構成を示す模式図である。
【００２７】
画像読取装置１は、図１に示すように、制御部２、ＲＡＭ（Random Access Memory）３、ＲＯＭ（Reed Only Memory）４、画像読取部５、画像処理部６、通信インタフェース（以下、通信Ｉ／Ｆと呼ぶ）７、ＦＡＸ通信部８、操作／表示部１４の各構成部がバス１３に接続されている。ただし、これら各構成部は、必ずしもバス１３に接続されている必要はないが、互いに通信可能に接続される必要がある。
【００２８】
制御部２は画像読取装置１の統括的な制御を行う。
【００２９】
ＲＡＭ３は、プログラムを動作させるための環境変数などのシステム変数や画像処理を行うために一時的にデータを記憶する。
【００３０】
ＲＯＭ４は、画像読取装置の制御、画像処理を行うための各種プログラムを記憶し、それらプログラムは制御部２からのプログラム実行命令などによって実行される。
【００３１】
画像読取部５は、ＣＣＤ（Charge Coupled Devices）等の撮像素子を有する縮小光学系の画像入力デバイスであり、配置された原稿の反射光を受光して、ＲＧＢ(Red Green Blue)成分を含む画像データに変換する。
【００３２】
画像処理部６は、画像読取部５で取得された画像データを画像処理する。
【００３３】
そして、画像処理部６は、ＲＧＢ濃度均質化処理部９、フレア低減処理部１０を有する。
【００３４】
ＲＧＢ濃度均質化処理部９は、画像読取部５より取得されたＲＧＢ成分を含む画像データをＬａｂ(Lab color space)データに変換する等の処理を行う。
【００３５】
フレア低減処理部１０は、縮小光学系である画像読取部５の性質上発生するフレアの影響を画像処理によって補正する。
【００３６】
またフレア低減処理部１０は、フレアを補正するための計算量を大幅に低減させる為に、平均濃度事前計算部１１とフレア背補遺計算部１２とを有する。
【００３７】
平均濃度事前計算部１１は、特定の区間内の事前に計算される定数を計算する等の処理をするものである。
【００３８】
フレア補正計算部１２は、ＲＧＢ濃度均質化処理部９より送られた画像データよりフレアの影響を補正させるために、平均濃度事前計算部１１で計算された定数を利用して計算を行う。
【００３９】
操作／表示部１４は、ユーザと情報の授受を行うユーザインタフェースである。
【００４０】
このように構成される画像読取装置１は、画像読取部５で取得した画像データに対して、フレア低減処理部１０でフレアの影響を低減させる補正処理を行う。  そして、補正処理された画像データは、ＦＡＸ通信部８より公衆回線網２１を利用したファクシミリ送信されたり、通信インタフェース（通信Ｉ／Ｆ）７より通信回線２０を介してパーソナルコンピュータ３２にスキャン画像として送信されたり、通信Ｉ／Ｆ７より通信回線２０を介して印刷装置３３に送られて複写処理されたりする。
【００４１】
次に、画像読取装置１で行われる処理の流れについて図２を参照して説明を行う。
【００４２】
図２は、画像読取装置１で行われる処理の流れを示す模式図である。
【００４３】
画像読取装置１にセットされた原稿の画像読み取りが画像読取部５で行われると（ステップ２０１）、画像読取部５より取得された画像データはＲＧＢ濃度均質化処理部９でＲＧＢ成分を含む画像データがＬａｂデータに変換され（ステップ２０２）、フレア低減処理部１０で画像データのフレアの影響を低減する画像処理が行われる（ステップ２０３）。
【００４４】
フレアの影響を補正する処理が行われた画像データは、操作／表示部１４が受付けたユーザの指示に基づき、ＦＡＸ通信部８より公衆回線網を介したファクシミリ通信の送信処理がされたり（ステップ２０４）、通信Ｉ／Ｆ７より通信回線２０を介してパーソナルコンピュータに送信されるスキャン画像処理が行われたり（ステップ２０５）、通信Ｉ／Ｆ７より通信回線２０を介して印刷装置３３に送信されて印刷される複写処理が行われたり（ステップ２０６）する。
【００４５】
次に、フレアの影響を補正する方法について図３を参照して説明する。
【００４６】
注目画素に対して補正計算を実施するためには、倍精度の浮動小数点演算を注目画素の主走査方向、両側の多数の画素を参照して、以下の数式１のように補正値の掛け算および、補正値の集計が必要となる。
【００４７】
説明を簡単にするために、以後は両側2000画素がフレアとして注目画素に影響を与える画像読取装置に関して効果を説明する。
【００４８】
【数１】
2011109318.tif 000003
【００４９】
このように数式１で示す注目画素に対するフレア補正計算が行われると、膨大な計算が必要となる。
【００５０】
例えば、数式１の計算を、600画素/インチの画素密度で読み取ったA4原稿の1走査線に対してそのまま適応すると、その計算量は、4960（画素/1Line）に対して数式１の計算が必要となる。数式１では加算4000回と乗算4000回が必要なため、１走査線の補正計算総量は3170万回程度となり、十分な動作速度を実現できる計算量とならない。
【００５１】
図３（ａ）は数式１で示した数式中のPara（x）を示すグラフである。
【００５２】
図３（ａ）に示すようにPara(x)は、注目画素からの距離が大きくなるにつれて、Para(x)の変化が小さくなることが分かる。
【００５３】
また、図３（ａ）に示すようにPara(x)は中心の補正対象画素から左右対称となる。
【００５４】
フレア低減処理部１０は、このPara(x)の特性を利用して計算量を大幅に低減する。
【００５５】
このPara(x)の特性を利用して数式１中のnを複数のブロックに分割して、Para(x)が一定以下の絶対値の領域は画素ごとに補正計算を実施せず、その分割区間でのAve(Para(x))（平均値）とAve(In(x))（平均値）とを代表値として計算を行い、計算量を大幅に低減する。  Ave(In(x))は、分割された各々の区間の幅に相当する。
【００５６】
まず、第一段階として、数式１の式が、nの閾値として例えば４つの値（a、b、c、d）を使用して分割されるとすると、以下の数式２となる。
【００５７】
【数２】
2011109318.tif 000004
【００５８】
さらに、Para(x)が中心を軸として左右対称であることを利用して、数式２は以下の数式３のように変形される。
【００５９】
【数３】
2011109318.tif 000005
【００６０】
数式３は、数式１で示される計算内容が、４つの閾値（a、b、c、d）を使って、±２０００の計算領域が７区分に分割されたものである。
【００６１】
また、図３（ｂ）は、数式３の計算内容を示すグラフである。
【００６２】
そして、数式３中の以下の３つの係数、
【数４】
2011109318.tif 000006
【００６３】
【数５】
2011109318.tif 000007
【００６４】
【数６】
2011109318.tif 000008
【００６５】
は、図３（ｂ）中に示すように、区間の代表値に置換されて、計算回数が低減される（数式４は参照番号３０１の点線の値に対応、数式５は参照番号３０２の点線の値に対応、数式６は参照番号３０３の点線の値に対応）。
【００６６】
数式４、数式５、数式６は、図３（ｂ）に示す各点線の値に対応しており、前述の代表値とされるAve(Para(x))（平均値）である。  つまり、区間b（-b≦x≦-a-1）、区間b'（a+1≦x≦b）ではAve(Para(x))として数式４が使用され、区間c（-c≦x≦-b-1）、区間c'（b+1≦x≦c）ではAve(Para(x))として数式５が使用され、区間d（-d≦x≦-c-1）、区間d'（c+1≦x≦d）ではAve(Para(x))として数式６が使用される。
【００６７】
図３（ｂ）や数式３に示すように、フレア補正の計算対象となる画素は、区間aに含まれ、図３（ｂ）に示す左右対称のグラフの中央に位置する。  
数式３に示すように、フレア補正の計算対象となる画素が含まれる区間a（-a≦x≦a）では、Ave(Para(x))（平均値）ではなく、補正関数であるPara(x)がフレア計算に使用される。
【００６８】
そして、フレア補正の計算対象となる画素が含まれない区間ｂ、区間ｃ、区間ｄではAve(Para(x))（平均値）がフレア計算に使用される。
【００６９】
このような数式３で行われる計算量は、600画素/インチの画素密度で読み取ったA4原稿の１走査線にそのまま適応すると、4960（画素/1Line）*（加算：4003回  乗算：区間aの要素数＋3回）となる。  この数式３での計算量は数式１で行われる計算量と比較すると、乗算の回数が減少する。
【００７０】
しかし、数式３での計算量は数式１と比較して、加算は以前として1500万回必要な状況に変化が無い。  それで、さらにIn(m)の集計を各補正計算ごとではなく、Lineごとに集約して計算量を減らすアプローチが必要となる。
【００７１】
数式３では、Para(x)の変化に応じて、分割した区間内（例えば、x：a+1<x<b  等）では、そのPara(x)は数式１と比較してAve(Para(x))（平均値）で代用している。
【００７２】
それで、更にIn(x)についても同様に、その注目画素位置に関わらず、各区間の要素数ごとに平均化したものを事前計算しておき、これをその区間のＳＵＭ（In(x：a+1<x<b)）で代用するようにした計算内容が、以下の数式７となる。
【００７３】
【数７】
2011109318.tif 000009
【００７４】
数式７での計算量は、4960（画素/1Line）*（加算：区間aの要素数+6回  乗算：区間aの要素数+3回）＝約4万回となり、数式１や数式３で行われる計算量より大幅に減らすことができる。
【００７５】
このように、数式７では、Para(x)が一定以下の絶対値の領域は画素ごとに補正計算が実施されず、その分割区間でのAve(Para(x))（平均値）とAve(In(x))（平均値）とを代表値として計算が行われ、計算量の大幅な低減が行われる。
【００７６】
数式７においても、数式３と同様に、数式７中の数式４が区間（-b≦x≦-a-1、a+1≦x≦b）でのAve(Para(x))として、数式７中の数式５が区間（-c≦x≦-b-1、b+1≦x≦c）ではAve(Para(x))として、数式７中の数式６が区間（-d≦x≦-c-1、c+1≦x≦d）でのAve(Para(x))として使用される。
【００７７】
以下、区間（-b≦x≦-a-1）を区間ｂ’、区間（a+1≦x≦b）を区間ｂ、区間（-c≦x≦-b-1）を区間ｃ’、区間（b+1≦x≦c）を区間ｃ、区間（-d≦x≦-c-1）を区間ｄ’、区間（c+1≦x≦d）を区間ｄ、そして、区間（-a≦x≦a）を区間ａとして説明を行う。
【００７８】
次に、フレア低減処理部１０の平均濃度事前計算部１１について図４を参照して説明を行う。
【００７９】
図４は、平均濃度事前計算部１１の構成について示した模式図である。
【００８０】
平均濃度事前計算部１１は、図４に示すように、区間決定部４１、区間ａ用の画像バッファ４２を備え、また、それぞれの区間（区間b/b'、区間c/c'・・・）毎に、区間要素数レジスタ４３、要素数カウンタ４４、画像濃度積算器４５、平均濃度計算手段４６、平均濃度バッファ４７を備える。
【００８１】
区間決定部４１は、画像読取装置１特有の値を記憶する記憶装置である。区間決定部４１には、フレア低減処理部１０での計算に使用される区間決定における閾値（上述の説明では、a、b、c、dに相当）を記憶する。
【００８２】
区間決定部４１に記憶される閾値は、画像読取装置１の機種毎に設定値として設定されてもよい。
【００８３】
また、区間決定部４１に記憶される閾値は、画像読取装置１の機器毎に生産時に設定されて記憶されるようにされてもよい。
【００８４】
区間ａ用の画像バッファ４２は、スキャン画像の１line分の画素をもつレジスタである。
【００８５】
区間要素数レジスタ４３、要素数カウンタ４４、画像濃度積算器４５、平均濃度計算手段４６、平均濃度バッファ４７については、区間b/b'を例に説明するが、予め区間決定手段に記憶される区間の数に応じて同じ構成要素が存在する（Para(x)は中心を軸として左右対称なので、区間bと区間b'とを1つの構成要素で計算させる）。
【００８６】
区間要素数レジスタ４３は、区間bと区間b'との要素数を区間決定手段から送られて保持する。
【００８７】
具体的には、区間b/b'に対応する区間要素数レジスタ４３は、区間bと区間b'の要素数である（b-a-1）を保持する。
【００８８】
要素数カウンタ４４は、画像濃度積算器４５で積算する要素数をカウントする。
【００８９】
画像濃度積算器４５は、ＲＧＢ濃度均質化処理部９より送られる画像データに基づき、
【数８】
2011109318.tif 000010
【００９０】
や
【数９】
2011109318.tif 000011
【００９１】
を計算する加算器である。
【００９２】
平均濃度計算手段４６は、画像濃度積算器４５で計算された積算値に対して区間要素数である（b-a-1）で除算する除算器である。
【００９３】
平均濃度バッファ４７は、平均濃度計算手段４６で計算された平均濃度を保持するバッファである。
【００９４】
そして、平均濃度バッファ４７には、区間bの平均濃度として、
【数１０】
2011109318.tif 000012
【００９５】
と、区間b'の平均濃度として、
【数１１】
2011109318.tif 000013
【００９６】
とが記憶される。
【００９７】
ここでは、区間b/b'の平均濃度がそれぞれ求められる（区間bの平均濃度と区間b'の平均濃度）構成の説明を行ったが、実際は、区間決定手段に記憶される区間に対応して、図４に示すように、それぞれの区間nの平均濃度と区間n'の平均濃度とが計算されて、その区間の計算用の平均濃度バッファ４７に計算された平均濃度が保持される。
【００９８】
次に、フレア補正計算部１２について、図５を参照して説明を行う。
【００９９】
図５は、フレア補正計算部１２の構成を示す模式図である。
【０１００】
フレア補正計算部１２は、画像バッファ５１、平均濃度バッファ５２、注目画素カウンタ、加算器５４、平均二乗計算手段５５、補正計算カウンタ５６、平均濃度選択手段５７、フレア補正関数保持手段５８、補正値演算器５９を有する。
【０１０１】
画像バッファ５１は、平均濃度事前計算部１１の画像バッファ４２が保持するスキャン画像の１line分の画素を、画像バッファ４２よりコピーして保持する。
【０１０２】
平均濃度バッファ５２は、平均濃度バッファ４７で保持される平均濃度を、平均濃度バッファ４７よりコピーして保持する。
【０１０３】
注目画素カウンタ５３は、注目画素をカウントする。
【０１０４】
加算器５４は、注目画素カウンタ５３で示される注目画素位置と補正計算カウンタ５６で示される処理画素位置（-2000〜+2000）とを加算する処理を行う。
【０１０５】
二乗平均計算手段５５は、平均濃度バッファ５２に保持される中心軸から互いに左右対称となる区間（例えばbとb'）の平均濃度に基づき二乗平均平方根を算出する。
【０１０６】
補正計算カウンタ５６は、処理画素位置を-2000から+2000までカウントする。
【０１０７】
平均濃度選択手段５７は、処理画素の位置に応じて、区間の平均濃度を選択する。
【０１０８】
フレア補正関数保持手段５８は、フレア補正関数であるPara(x)を保持する。
【０１０９】
Para(x)は、中央に対して左右対称が前提となり、中央を0として0〜1999のレジスタでフレア補正関数保持手段５８で保持される。
【０１１０】
また、Para(x)は、画像読取装置１の機器固有の値とするが、画像読取装置１の機種固有の値としてもよい。
【０１１１】
また、補正関数保持手段５８で保持される値は、区間aにおけるPara(x)の値と、区間bのAve(Para(x))に関わる値である
【数１２】
2011109318.tif 000014
【０１１２】
と、
区間cのAve(Para(x))に関わる値である
【数１３】
2011109318.tif 000015
【０１１３】
と、
区間dのAve(Para(x))に関わる値である
【数１４】
2011109318.tif 000016
【０１１４】
となるように構成してもよい。
【０１１５】
そのようにフレア補正関数保持手段５８でAve(Para(x))に関わる値が記憶されると、フレア補正関数保持手段５８でのPara(x)の保持レジスタは、4001個より、2a+1+4個に低減される。
【０１１６】
補正値演算器５９は、フレア補正関数保持手段５８に記憶されるPara(x)に関する数値と、平均濃度選択手段５７で選択される平均濃度とを演算して、注目画素位置の出力値を演算する。
【０１１７】
次に、フレア低減処理部１０で行われる処理について図６、図７、図８を参照して説明を行う。
【０１１８】
図６、図７、図８は、フレア低減処理部１０で行われる処理について示したフローチャートである。
【０１１９】
ここでは、フレア低減処理部１０で行われる1Lineの画像データの処理について説明を行う。
【０１２０】
ＲＧＢ濃度均質化処理部９で処理された画像データがフレア低減処理部１０に入力され（ステップ６０１）、区間a計算用の画像バッファ４２にデータが全て埋まると（ステップ６０２でＹＥＳ）、画像バッファ４２の内容が画像バッファ５１にコピーされ、また、各区間の平均濃度バッファ４７の値が平均濃度バッファ５２にそれぞれコピーされる（ステップ６０３）。
【０１２１】
ここで注目画素位置を0とし、出力を0とする（ステップ６０４）。
【０１２２】
そして、処理画素位置を-2000に設定する（ステップ６０５）。
【０１２３】
（注目画素位置＋処理画素位置）が0以上でなかったら（ステップ６０６でＮＯ）、結合子Ｂを介して、処理画素位置が1だけ増加される（ステップ６１２）。
【０１２４】
そして、Ｌ（処理画素位置）が+2000より下であれば、結合子Ａを介して、再度ステップ６０６の処理が行われる。
【０１２５】
（注目画素位置＋処理画素位置）が0以上であったら（ステップ６０６でＹＥＳ）、次に、（注目画素位置＋処理画素位置）が1Line画素の範囲内であるか否かが確認される（ステップ６０７でＹＥＳ）。
【０１２６】
そして、処理画素位置は区間dに存在する場合には（ステップ６０８でＹＥＳ）、結合子Ｄを介して、Pos=処理画素位置＋注目画素位置として（ステップ７０１）、Index=int(Pos÷区間dの画素数)とし、また、Ratio＝mod(Pos、区間dの画素数)÷区間dの要素数とする（ステップ７０２）。
【０１２７】
そして、出力=出力+Gd×(Ratio×BufferD(index+1) + (1-Ratio)×BufferD(index))とする（ステップ７０３）。  （Bufferは「バッファ」と同じ意味である）。  バッファDは、区間dの平均濃度バッファ５２に記憶される値である。  Gdは、区間dのAve(Para(x))に関わる値である。
【０１２８】
その後、処理画素位置を区間dの要素数分だけ足して新たに設定する（ステップ７０４）。
【０１２９】
それから結合子Ｇを介して、ステップ６１３に処理は移り、Ｌ（処理画素位置）が+2000より下か否かが確認される（ステップ６１３）。
【０１３０】
ステップ６１３でＹＥＳ（+2000より下）の場合には、結合子Ａを介して、ステップ６０６へ移り、再度、ステップ６０６、ステップ６０７、ステップ６０８の処理が行われ、ステップ６０８でＮＯの場合には、処理画素位置が区間cに存在するか否かが確認される（ステップ６０９）。
【０１３１】
処理画素位置が区間cに存在する場合には（ステップ６０９でＹＥＳ）、結合子Ｅを介して、Pos=処理画素位置＋注目画素位置として（ステップ７１１）、Index=int(Pos÷区間cの画素数)とし、また、Ratio=mod(Pos、区間cの画素数)÷区間cの要素数とする（ステップ７１２）。
【０１３２】
そして、出力=出力+ Gc×(Ratio×BufferC(index+1) + (1-Ratio)×BufferC(index))とする（ステップ７１３）。  バッファCは、区間cの平均濃度バッファ５２に記憶される値である。  Gcは、区間cのAve(Para(x))に関わる値である。
【０１３３】
その後、処理画素位置を区間cの要素数分だけ足して新たに設定する（ステップ７１４）。
【０１３４】
それから結合子Ｇを介して、ステップ６１３に処理は移り、Ｌ（処理画素位置）が+2000より下か否かが確認される（ステップ６１３）。
【０１３５】
ステップ６１３でＹＥＳ（+2000より下）の場合には、結合子Ａを介して、ステップ６０６へ移り、再度、ステップ６０６、ステップ６０７、ステップ６０８、ステップ６０９の処理が行われ、ステップ６０９でＮＯの場合には、処理画素位置が区間bに存在するか否かが確認される（ステップ６１０）。
【０１３６】
処理画素位置が区間bに存在する場合には（ステップ６１０でＹＥＳ）、結合子Ｆを介して、Pos=処理画素位置＋注目画素位置として（ステップ８０１）、Index=int(Pos÷区間bの画素数)とし、また、Ratio=mod(Pos、区間bの画素数)÷区間bの要素数とする（ステップ８０２）。
【０１３７】
そして、出力=出力+ Gb×(Ratio×BufferB(index+1) + (1-Ratio)×BufferB(index))とする（ステップ８０３）。  バッファBは、区間bの平均濃度バッファ５２に記憶される値である。  Gbは、区間bのAve(Para(x))に関わる値である。
【０１３８】
その後、処理画素位置を区間bの要素数分だけ足して新たに設定する（ステップ８０４）。
【０１３９】
それから結合子Ｇを介して、ステップ６１３に処理は移り、Ｌ（処理画素位置）が+2000より下か否かが確認される（ステップ６１３）。
【０１４０】
ステップ６１３でＹＥＳ（+2000より下）の場合には、結合子Ａを介して、ステップ６０６へ移り、再度、ステップ６０６、ステップ６０７、ステップ６０８、ステップ６０９、ステップ６１０の処理が行われ、ステップ６１０でＮＯの場合には、出力=出力+Buffer A(画素位置+L)*Para(L)とする（ステップ６１１）。  バッファAは、区間aの画像バッファ５１に記憶される値である。
【０１４１】
そして、処理画素位置が1だけ増加される（ステップ６１２）。
【０１４２】
それからステップ６１３に処理は移り、L（処理画素位置）が+2000より下か否かが確認される（ステップ６１３）。
【０１４３】
ステップ６１３でＹＥＳ（+2000より下）の場合には、結合子Ａを介して、ステップ６０６へ移り、再度、ステップ６０６、ステップ６０７、ステップ６０８、ステップ６０９、ステップ６１０、ステップ６１１、ステップ６１２の処理が行われる。
【０１４４】
そしてステップ６１３でＬ（処理画素位置）が+2000より下か否かが確認され、+2000より下でない場合には（ステップ６１３でＮＯ）、注目画素の位置が1だけ増加される（ステップ６１４）。
【０１４５】
そして、注目画素位置が1Lineの画素以下であるならば（ステップ６１５でＹＥＳ）、出力を補正値としてアウトプットし、出力を0に戻す（ステップ６１６）。
【０１４６】
その後、結合子Ｃを介して、ステップ６０５に移り、ステップ６０５からの処理を再度実行する。
【０１４７】
そして、再度ステップ６１５で、注目画素位置が1Lineの画素を超えた場合には（ステップ６１５でＮＯ）、1line分のフレア低減処理が終了する。
【０１４８】
ここで、区間dについてはステップ７０２とステップ７０３、区間cについてはステップ７１２とステップ７１３、区間bについてはステップ８０２と８０３における処理によって、Ave(In(x))である代表値の算出の処理が、隣接する代表値であるAve(In(x))とAve(In(x+1))をその注目画素位置より線形計算して算出される。
【０１４９】
次に、区間b以降の要素数を2n(n=1〜m)とすることについて図９を参照して説明を行う（nは自然数である）。
【０１５０】
図９は、区間b以降の要素数を2n(n=1〜m)としたPara(x)を示す模式図である。
【０１５１】
図９に示すように、区間bの要素数を2（参照番号９０１）、次の区間cの要素数を4（参照番号９０２）、その次の区間dの要素数を8（参照番号９０３）というように、区間b以降の要素数を2n(n=1〜m)とする。
【０１５２】
このように要素数を設定することで、区間c以降の平均濃度バッファ４７は、一つ前の区間の平均濃度バッファ４７の隣接する2要素の平均より算出され、バッファ算出構成の単純化が可能となる。
【０１５３】
次に、a、b、c、dの各区間の決定方法について、Para(x)に基づいて各区間を決定する閾値の決定するやり方について図１０を参照して説明する。
【０１５４】
図１０は各区間の閾値を決定する処理を示したフローチャートである。
【０１５５】
各区間の閾値を決定するやり方は、Para(x)に対して、Ave(Para(x))を算出する際に、同時にAve(Para(x))と区間内のIn(x)との差の二乗を累積して、これが一定値を超えたところを区間を決定する閾値として、Ave(Para(x))とその閾値とを出力する。
【０１５６】
このやり方は、図１０に示すように、まず、二乗差分累積閾値の設定値が操作／表示部１４より入力されるので、その設定値をＲＡＭ３上に二乗差分累積閾値として展開する（ステップ１００１）。
【０１５７】
ただし、二乗差分累積閾値は、画像読取装置１の機器毎或いは機種毎に決定されるPara(x)の生成と共に生成されて設定値としてＲＯＭ４に記憶されていてもよい。そして、その際には、ＲＯＭ４に記憶されるその設定値がＲＡＭ３上に二乗差分累積閾値として展開される（ステップ１００１）。
【０１５８】
そして、注目画素位置を0として、Ave(Para(x))の値をクリヤする（ステップ１００２）。
【０１５９】
ここで、係数を1に設定し、区間値(x)をクリヤし、区間を1に設定する（ステップ１００３）。
【０１６０】
また、区間累積値を0に設定し、区間要素数を0に設定する（ステップ１００４）。
【０１６１】
そして、差分を、差分=Para(注目画素位置)-Para(注目画素位置＋1)として算出する（ステップ１００５）。
【０１６２】
そうして算出された差分が、差分≧二乗差分累積値となっていなければ（ステップ１００６でＮＯ）、注目画素位置を1だけ増加させて（ステップ１００７）、再度差分を算出する（ステップ１００５）。
【０１６３】
そして、差分≧二乗差分累積値となっている場合に（ステップ１００６でＹＥＳ）、区間値(区間)を注目画素位置に設定する（ステップ１００８）。
【０１６４】
また、注目画素位置を1だけ増加させる（ステップ１００９）。
【０１６５】
また、区間の値を1だけ増加させる（ステップ１０１０）。
【０１６６】
そして、区間累積値を、区間累積値=区間累積値＋Para（注目画素位置）として算出する（ステップ１０１１）。
【０１６７】
そして、区間要素数を1だけ増加させる（ステップ１０１２）。
【０１６８】
また、差分を0として、差分位置を、差分位置=区間値（区間-1）として設定する（ステップ１０１３）。
【０１６９】
その後、差分を、差分=差分＋SQRT（（Para（差分位置）-区間累積値÷区間要素数） ）として算出する（ステップ１０１４）。
【０１７０】
また、差分位置を1だけ増加させる（ステップ１０１５）。
【０１７１】
そして、差分位置が注目画素位置より少ない場合には（ステップ１０１６でＹＥＳ）、ステップ１０１４とステップ１０１５との処理が再度実行される。
【０１７２】
また、ステップ１０１６で、差分位置が注目画素より少なくない場合には（ステップ１０１６でＮＯ）、結合子Ｉを介して、差分が二乗差分累積閾値以上であるか否かが確認される（ステップ１０１７）。
【０１７３】
ステップ１０１７で、差分が二乗差分累積閾値以上である場合には（ステップ１０１７でＹＥＳ）、注目画素位置の値が1増加され（ステップ１０１８）、その際に、注目画素位置が2000より下である場合には（ステップ１０１９でＹＥＳ）、ステップ１０１１からの処理が再度行われる。
【０１７４】
また、ステップ１０１７で、差分が二乗差分累積閾値以上でない場合や（ステップ１０１７でＮＯ）、ステップ１０１９で注目画素位置が2000より下でない場合には（ステップ１０１９でＮＯ）、区間値（区間）を注目画素位置として設定する（ステップ１０２０）。
【０１７５】
そして、区間の値が1だけ増加される（ステップ１０２１）。
【０１７６】
Ave(Para(係数))の値が、Ave(Para(係数))=区間累積値÷区間要素数として算出される（ステップ１０２２）。
【０１７７】
そして、係数の値が1だけ増加され（ステップ１０２３）、注目画素位置が1だけ増加され（ステップ１０２４）、区間累積値と区間要素数区間とが0に設定される（ステップ１０２５）。
【０１７８】
その後、注目画素位置が2000より下か否かが確認され（ステップ１０２６）、2000より下である場合には（ステップ１０２６でＮＯ）再度ステップ１０１１からの処理が行われる。
【０１７９】
また、ステップ１０２６で、注目画素位置が2000より下でない場合には（ステップ１０２６でＹＥＳ）、区間値（区間-1）=2000と設定して（ステップ１０２７）処理が終了する。
【産業上の利用可能性】
【０１８０】
この発明は、画像読取装置および画像読取プログラムにおいて利用可能である。
【０１８１】
また、上記実施の形態の機能を実現するためのソフトウェアのプログラムが記録されている記憶媒体を供給し、通信装置などで記憶媒体に格納されたプログラムを読み出し実行することによっても、上記実施の形態と同様の効果を奏する。  プログラムを供給するための記憶媒体としては、例えば、ＣＤ−ＲＯＭ（Compact Disk Read Only Memory）、ＤＶＤ（Digital Versatile Disk）、及びＳＤカード（Secure Digital memory card）などや、プログラムを供給するサーバなどであっても良い。
【符号の説明】
【０１８２】
１    画像読取装置
６    画像処理部
１０    フレア低減処理部
１１    平均濃度事前計算部
１２    フレア補正計算部
４１    区間決定部
４２    画像バッファ
４３    区間要素数レジスタ
４４    要素数カウンタ
４５    画像濃度積算器
４６    平均濃度計算手段
４７    平均濃度バッファ
５１    画像バッファ
５２    平均濃度バッファ
５３    注目画素カウンタ
５４    加算器
５５    二乗平均計算手段
５６    補正計算カウンタ
５７    平均濃度選択手段
５８    フレア補正関数保持手段
５９    補正値演算器
【図１】
2011109318.tif 000017
【図２】
2011109318.tif 000018
【図３】
2011109318.tif 000019
【図４】
2011109318.tif 000020
【図５】
2011109318.tif 000021
【図６】
2011109318.tif 000022
【図７】
2011109318.tif 000023
【図８】
2011109318.tif 000024
【図９】
2011109318.tif 000025
【図１０】
2011109318.tif 000026