(57)【要約】【課題】  高速かつ高品質な補正を可能とするシェーディング補正装置、方法及びプログラムを提供する。【解決手段】  上記課題を解決するために、撮像対象であるワーク１と、ワークを撮像する撮像手段２と、撮像手段２で生成した原画像データから背景画像データを生成する背景画像データ生成手段３と、背景画像データを用いて原画像データの輝度ムラを補正する補正処理手段４と、を備える。【選択図】図１
2007013231.tif 000002
【特許請求の範囲】
【請求項１】
物体を撮像して画像データを生成する撮像手段と、
該画像データの濃淡を平滑化し、該平滑化された画像データの前記物体と背景との境界領域をシフトして背景画像データを生成する背景画像データ生成手段と、
該背景画像データを使用して前記画像データに対してシェーディング補正処理を行なう補正処理手段と、
を備えるシェーディング補正装置。
【請求項２】
前記背景画像データ生成手段は、
前記画像データを縮小して第１の縮小画像データを生成する縮小処理手段と、
該第１の縮小画像データに対して膨張処理を行なって前記境界領域をシフトさせ第２の縮小画像データを生成するフィルタ処理手段と、
該第２の縮小画像データを前記画像データのサイズに拡大して前記背景画像データを生成する拡大処理手段と、
を備えることを特徴とする請求項１に記載のシェーディング補正装置。
【請求項３】
前記膨張処理は、
前記画像データに対して所定の領域を画するＭａｘフィルタによって画された領域の輝度値の最大値を検出し、該検出した最大値を前記Ｍａｘフィルタの所定位置の輝度値と置き換える処理を、前記画像データの全領域に対して実施するＭａｘフィルタ処理である、
ことを特徴とする請求項２に記載のシェーディング補正装置。
【請求項４】
物体を撮像して画像データを生成する撮像処理と、
該画像データの濃淡を平滑化し、該平滑化された画像データに生じる前記物体と背景との境界領域をシフトして背景画像データを生成する背景画像データ生成処理と、
該背景画像データを使用して前記画像データに対してシェーディング補正処理を行なう補正処理と、
を情報処理装置に実行させることを特徴とするシェーディング補正方法。
【請求項５】
物体を撮像して画像データを生成する撮像処理と、
該画像データの濃淡を平滑化し、該平滑化された画像データに生じる前記物体と背景との境界領域をシフトして背景画像データを生成する背景画像データ生成処理と、
該背景画像データを使用して前記画像データに対してシェーディング補正処理を行なう補正処理と、
を情報処理装置に実行させることを特徴とするシェーディング補正のためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、物体を撮像して得られる画像の輝度ムラを補正するシェーディング補正装置、方法及びプログラムに関する。
【背景技術】
【０００２】
工場等の生産ラインで製造される製造物等の品質を管理するために、例えば、製造工程において、製造物の外観をカメラ等で撮像し、画像データを解析することによって、製造物の欠陥の有無を検査することは一般的に行なわれている。
【０００３】
しかし、カメラ等で撮像した画像の多くは照明ムラやレンズ特性により画像中心部から周辺にかけて輝度ムラが発生するため、画像データを解析する時に誤検出や誤判定を引き起こす場合が多い。このため、通常は画像データに生じる輝度ムラを補正している（以下、この補正を「シェーディング補正」という）。
【０００４】
シェーディング補正の方法としては、画像データから輝度ムラ情報のみを抽出した背景画像を用意し、画像データを背景画像で除算して正規化することで画像データの輝度ムラ成分を除去する補正方法が多く用いられる。
【０００５】
この背景画像は、予め生成して用意しおく場合と補正処理をする際に原画像から生成する場合とがある。
予め用意しておく場合は、例えば、撮像対象と同一または類似の材料の平面部分を撮像した画像データや、予め撮像対象を撮像して得た画像データを加工して得た画像データを背景画像として使用するが、生産ラインで生産される製造物等の表面は個々にバラツキがあるため輝度ムラにもバラツキが生じて良好なシェーディング補正は難しい。そこで、一般には、補正処理をする際に原画像から背景画像を生成してシェーディング補正を行なっている。
【０００６】
撮像対象である製造物等の個々の原画像から背景画像を生成する場合は、原画像に対しローパスフィルタ等を用いたデジタルフィルタ処理を行い、背景画像を生成している。
しかし、デジタルフィルタ処理を行なう原画像のサイズが大きくなる程、多くの演算量を必要とするため背景画像を生成する処理に時間がかかってしまうという問題があった。
【０００７】
上述の問題を解決するために、特許文献１には、ＣＣＤカメラで撮像した画像データを圧縮して得る３２０×２５６×１４ビット階調の画像データを背景画像として使用するシェーディング補正方法について開示されている。
【０００８】
また、特許文献２には、カメラからの画像データを縮小・拡大することによって背景画像を生成してシェーディング補正を行なうシェーディング補正回路について開示されている。
【特許文献１】特開平０９−００５０５７号公報
【特許文献２】特開２００３−１５３１３２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
ここで、図１３に、ノートＰＣの筐体上面の外観をＣＣＤカメラで撮像した原画像データを示し、図１４に、この原画像データに対して縮小・拡大処理のみを実施して背景画像データを生成した背景画像データを示す。
【００１０】
図１４に示す白線は、図１３に示した原画像データに撮像されているノートＰＣ筐体の境界線ｂを示している。
図１４に示す境界線ｂ付近では、境界線ｂの内側から外側（又は外側から内側に）にグラデーション（濃淡）が生じている。すなわち、境界線ｂの内側の輝度が実際より低い背景画像データとなっている。したがって、この背景画像データを使用して原画像データに対してシェーディング補正を行なうと、境界線ｂの内側の輝度を過剰に補正してしまうこととなる。
【００１１】
なお、境界線ｂの外側についても、輝度値が実際より高くなっているのでシェーディング補正を行なうと輝度を過剰に補正してしまうが、背景部分なので問題としない。
図１５は、図１４に示した背景画像データを用いてシェーディング補正した修正後画像データを示している。ノートＰＣの筐体は、背景画像との境界付近が白く過剰補正されていることが分かる。例えば、図１３のａに比べて図１５のｃは、ノートＰＣの筐体と背景との境界が白く過剰補正されている。
【００１２】
以上に説明したように、背景画像の生成処理の高速化は図れるものの、原画像の明暗境界等では過剰な補正により、かえって余分な輝度ムラを生じさせてしまうという問題があった。
【００１３】
本発明は、上述した問題に鑑みてなされたものであり、その解決しようとする課題は、高速かつ高品質な補正を可能とするシェーディング補正装置、方法及びプログラムを提供することである。
【課題を解決するための手段】
【００１４】
上記課題を解決するために、本発明に係るシェーディング補正装置は、物体を撮像して画像データを生成する撮像手段と、該画像データの濃淡を平滑化し、該平滑化された画像データに生じる前記物体と背景との境界領域をシフトして背景画像データを生成する背景画像データ生成手段と、該背景画像データを使用して前記画像データに対してシェーディング補正処理を行なう補正処理手段と、を備える。
【００１５】
本発明によると、背景画像データ生成手段は、撮像手段で撮像した画像データの濃淡を平滑化した後、この画像データに撮像されている物体の輪郭の外側に、記物体と背景との境界領域をシフトするので、当該濃淡の境界領域を原因としたシェーディング補正による過剰補正を防止することが可能となる。
【発明の効果】
【００１６】
以上のように、本発明によると、高速かつ高品質な補正を可能とするシェーディング補正装置、方法及びプログラムを提供することが可能となる。
【発明を実施するための最良の形態】
【００１７】
以下、本発明の実施形態について図１〜図１２に基づいて説明する。
図１は、本発明に係るシェーディング補正装置の原理を示す図である。
図１に示すシェーディング補正装置は、撮像対象であるワーク１を撮像する撮像手段２と、撮像手段２で生成した画像データ（以下、「原画像データ」という）から背景画像データを生成する背景画像データ生成手段３と、背景画像データを用いて原画像データの輝度ムラを補正する補正処理手段４と、を備えている。
【００１８】
ワーク１は、例えば、工場等の生産ラインで製造される製造物であり、撮像して得る画像データを解析することによって欠陥の有無が判別される。
撮像手段２は、ワーク１を撮像する手段であり、例えば、ＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅｓ）等の撮像素子を用いてワーク１の原画像データを生成するＣＣＤカメラである。
【００１９】
背景画像データ生成手段３は、撮像手段２で生成した原画像データの濃淡を平滑化し、さらに、ワーク１と背景との境界領域に生じるグラデーションをシフトさせることによって背景画像データを生成する。
【００２０】
ここで、ワーク１と背景との境界領域とは、ワーク１と背景との境界線を跨って生じたグラデーションの領域であって、当該領域の輝度値を用いてシェーディング補正を行なうと過剰補正となってしまう輝度値を有する領域のことをいう。
【００２１】
また、原画像データの濃淡を平滑化するために、本実施例ではダウン・サンプリング法や平均操作法などを用いて原画像データを所定のサイズに縮小している（以下、この時の原画像データを「第１の縮小画像データ」という）。
【００２２】
さらに、背景画像データ生成手段３は、第１の縮小画像データの淡色部を膨張（又は収縮）するように、ワーク１と背景との境界領域に生じるグラデーションをシフトする（以下、この時の画像データを「第２の縮小画像データ」という）。
【００２３】
そして、直線補間法などを用いて第２の縮小画像データを原画像データのサイズに拡大することによって背景画像データを生成している。
補正処理手段４は、原画像データを背景画像データで除算して正規化することで原画像データの輝度ムラ成分を除去する補正処理を行なう。又は、原画像データを背景画像データで減算することによって輝度ムラ成分を除去してもよい。
【００２４】
図２は、本発明に係るシェーディング補正装置を使用した検査システムの構成例を示している。
図２に示す検査システムは、ワーク１に対して光を照射する照明装置２０と、この照明装置２０からの光を反射してワーク１に照射し、ワーク１から反射される光を透過するハーフミラー２１と、ハーフミラー２１を透過した光を入力としてワーク１を撮像して原画像データを生成するカメラ２２と、原画像データに対してシェーディング補正を行ない画像解析のための画像データを生成し、当該画像データを解析して検査を行なう画像処理装置２３と、少なくとも備えている。
【００２５】
以上の説明において、撮像手段２は、カメラ２２で実現される。また、背景画像データ生成手段３及び補正処理手段４は、画像処理装置２３で実現される。
そこで、図３に、本実施例に係る画像処理装置２３の機能ブロック図を示す。
【００２６】
図３に示す画像処理装置２３は、カメラ２２から原画像データを入力する画像入力部３０と、画像データ等を表示する画像表示部３１と、原画像データから背景画像を生成する等の画像処理を行なう画像処理部３２と、画像データ等を記憶する画像記憶部３３と、外部装置とのインターフェースである外部入出力部３４と、画像処理装置２３全体の制御を行なう制御部３５と、を少なくとも備えている。
【００２７】
画像入力部３０は、カメラ２２と接続されるインターフェースであって、カメラ２２で撮像したワーク１の原画像データが入力される。また、画像表示部３１は、例えば、ＣＲＴやＬＣＤ等であり、制御部３５の命令に応じて画像データ等を表示する。
【００２８】
画像処理部３２は、画像入力部３０に入力された原画像データに画像処理を施すことによって背景画像データを生成し、この背景画像データを用いて原画像データに対してシェーディング補正を行なう。
【００２９】
また、画像処理部３２は、シェーディング補正後の原画像データを解析することにより原画像データに対応するワーク１に傷がないかなどの品質検査を行なう。
画像記憶部３３は、制御部３５の命令に応じて、カメラ２２から取得した原画像データ、画像処理部３２で生成した背景画像データ、シェーディング補正後の原画像データ等を記憶する。
【００３０】
なお、画像記憶部３３には、揮発性メモリ（例えば、ＲＡＭ）や不揮発性メモリ（例えば、ＲＯＭ、ＥＥＰＲＯＭ）、磁気記憶装置等が使用される。
外部入出力部３４は、例えば、キーボードやマウス等の入力手段と、ネットワーク接続装置等の出力装置と、を備えている。
【００３１】
なお、以上に説明した画像処理部３２及び制御部３５は、画像処理装置２３に備わる図示しない記憶装置に格納されたプログラムを、画像処理装置２３に備わる図示しないＣＰＵが読み出して、当該プログラムに記載された命令を実行することによって実現される。
【００３２】
以下、図４に示すフローチャート及び図５〜図１０に基づいて本実施例に係る検査システムの処理を説明する。
図４は、本発明の実施例に係るシェーディング補正装置を使用した検査システムの主要な処理を示すフローチャートである。
【００３３】
ステップＳ４０１において、制御部３５は、カメラ２２を使用してワーク１を撮像し、原画像データを生成する。そして、生成した原画像データを、画像入力部３０を介して画像記憶部３３に記憶し、処理をステップＳ４０２に移行する。
【００３４】
ステップＳ４０２において、画像処理部３２は、画像記憶部３３に記憶された原画像データを読み出して所定のサイズに縮小し、縮小画像データ（以下、「第１の縮小画像データ」という）を生成する。
【００３５】
ここで、原画像データから第１の縮小画像データを生成するには、ダウン・サンプリング法や平均操作法を使用すればよい。ダウン・サンプリング法及び平均操作法については、それぞれ図５、図６で説明する。
【００３６】
ステップＳ４０２において、第１の縮小画像データの生成が完了すると、画像処理部３２は、処理をステップＳ４０３に移行する。そして、第１の縮小画像データに対して膨張処理（又は収縮処理）を実行し、第１の縮小画像データで表されるワーク１と背景との境界領域をシフトさせて第２の縮小画像データを生成する。
【００３７】
ここで、第１の縮小画像データから第２の縮小画像データを生成するには、必要に応じてＭａｘ（Ｍａｘｉｍｕｍ）フィルタ処理又はＭｉｎ（Ｍｉｎｉｍｕｍ）フィルタ処理を第１の縮小画像データに施せばよい。例えば、図１３に示したようにワーク１に対して背景の輝度が小さい場合には、Ｍａｘフィルタ処理（膨張処理）を実施し、ワーク１に対して背景の輝度が大きい場合には、Ｍｉｎフィルタ処理（収縮処理）を実施すればよい。Ｍａｘフィルタ処理とＭｉｎフィルタ処理とは原理が同じため、Ｍａｘフィルタ処理について、図７及び図８で説明する。
【００３８】
ステップＳ４０３において、第２の縮小画像データの生成が完了すると、画像処理部３２は、処理をステップＳ４０４に移行し、第２の縮小画像データを原画像データのサイズに拡大して背景画像データを生成する。
【００３９】
ここで、第２の縮小画像データを拡大して背景画像データを生成するために、本実施例では直線補間法を使用している。直線補間法については、図９及び図１０で説明する。
ステップＳ４０４において、背景画像データの生成が完了すると、画像処理部３２は、処理をステップＳ４０５に移行する。そして、原画像データの輝度値を背景画像データの輝度値で除算することにより原画像データの輝度ムラ成分を除去するシェーディング補正処理を行なう。
【００４０】
なお、本実施例では、原画像データの輝度値を背景画像データの輝度値で除算することにより原画像データの輝度ムラ成分を除去しているが、原画像データの輝度値と背景画像データの輝度値とを減算することにより原画像データの輝度ムラ成分を除去してもよい。
【００４１】
以上に説明したステップＳ４０２〜Ｓ４０５の処理によって、原画像データに対するシェーディング補正が完了すると、画像処理部３２は、処理をステップＳ４０６に移行し、シェーディング補正後の画像データ（以下、「補正後画像データ」という）を用いて欠陥の有無を検査する画像処理を行なう。
【００４２】
ステップＳ４０６において、画像処理部３２は、予め用意されているワーク（以下、「基準ワーク」という）の画像データと、補正後画像データと、を比較することにより補正後画像データに撮像されているワーク１の位置を特定する。
【００４３】
例えば、基準ワークの画像データのうち濃淡の差が明確な部分の画像データ（以下、「比較用画像データ」という）を複数用意しておき、それぞれの比較用画像データと補正後画像データとを比較する。
【００４４】
そして、補正後画像データと一致した比較用画像データの位置と基準ワークの形状から、補正後画像データに撮像されているワーク１の位置を特定することができる。
ステップＳ４０６において、補正後画像データに撮像されているワーク１の位置を特定すると、画像処理部３２は、処理をステップＳ４０７に移行する。そして、基準ワークの形状を読み出し、この基準ワークの形状とステップＳ４０６で特定したワーク１の位置とから補正後画像データに撮像されているワーク１の像の範囲（以下、「ワークエリア」という）を特定する。
【００４５】
ステップＳ４０７において、ワークエリアを特定すると、画像処理部３２は、処理をステップＳ４０８に移行し、補正後画像データにおけるワークエリア以外の部分の輝度値を低輝度値（例えば、輝度値０）に変換して検査に使用する画像データを生成する。
【００４６】
以後、情報処理装置２３は、ステップＳ４０８で生成した画像データを用いて画像解析を行ない、欠陥の有無を検査することとなる。
以下、図５及び図６に基づいてダウン・サンプリング法及び平均操作法について説明する。図５は、ダウン・サンプリング法の概念図を示し、図６は、平均操作法の概念図を示している。
【００４７】
図５に示す原画像データは、縦×横が９×９画素の画像データを示している。また、黒丸及び白丸はそれぞれ１つの画素データを表し、黒丸は抽出した画素データを表している。
【００４８】
ダウン・サンプリング法では、この原画像データを所定の領域（図５では３×３画素）に分割し、各分割領域の所定の位置（図５では各分割領域の左上）にある画素データのみを抽出して３×３画素の第１の縮小画像データを生成する。
【００４９】
図６に示す原画像データも、縦×横が９×９画素の画像データを示している。また、黒丸及び白丸はそれぞれ１つの画素データを表し、黒丸は抽出した画素データを表している。
【００５０】
平均操作法では、この原画像データを所定の領域（図６では３×３画素）に分割し、各分割領域の画素データの輝度値（又はＲＧＢ値）の平均値を算出する。そして、算出した画素データを抽出して、３×３画素の第１の縮小画像データを生成する。
【００５１】
以上に説明した方法によって、原画像データの１／９倍のサイズを持つ画像データ（第１の縮小画像データ）が生成されることとなる。なお、上述したダウン・サンプリング法及び平均操作法は、一般的に知られる公知技術なので詳細な説明は省略する。
【００５２】
なお、図５及び図６では、原画像データを分割する処理の領域のサイズを３×３画素としているが、本実施例に係るダウン・サンプリング法又は平均操作法で使用する領域のサイズを３×３画素に限定する趣旨ではない。
【００５３】
以下、図７及び図８に基づいてＭａｘフィルタ処理について説明する。
図７は、Ｍａｘフィルタ処理のフローチャートを示す。図７に示すＭａｘフィルタ処理は、Ｍａｘフィルタのサイズ（縦×横）が３×３画素の場合について説明しているが、Ｍａｘフィルタのサイズを限定する趣旨ではない。
【００５４】
また、このＭａｘフィルタの領域は、任意のＸＹ座標（Ｘ０，Ｙ０）を基準とすると、「（Ｘ０，Ｙ０）−（Ｘ０＋３，Ｙ０）かつ（Ｘ０，Ｙ０）−（Ｘ０，Ｙ０＋３）」の領域と表すことができる。以下の説明では、この座標（Ｘ０，Ｙ０）を「Ｍａｘフィルタ位置」という。
【００５５】
図４において、ステップＳ４０３に処理が移行すると、画像処理部３２は、Ｍａｘフィルタの位置を、第１の縮小画像データにおけるＸＹ座標（０，０）に初期化する（ステップＳ８０１）。
【００５６】
Ｍａｘフィルタの位置を初期化すると、画像処理部３２は、処理をステップＳ８０２に移行してＭａｘフィルタ演算を行なう。Ｍａｘフィルタ演算については、図８で説明する。
【００５７】
Ｍａｘフィルタ演算が完了すると、画像処理部３２は、処理をステップＳ８０３に移行する。そして、Ｍａｘフィルタ位置のＸ座標が最大となる位置にあるか否かをチェックする。
【００５８】
Ｍａｘフィルタ位置のＸ座標が最大となる位置にない場合には、処理をステップＳ８０４に移行する。そして、画像処理部３２は、Ｍａｘフィルタ位置をＸ座標方向に１画素だけシフト（インクリメント）して、処理をステップＳ８０２に移行する。そして、Ｍａｘフィルタ位置のＸ座標が最大となる位置まで、ステップＳ８０２〜Ｓ８０４の処理を繰返す。
【００５９】
また、Ｍａｘフィルタ位置のＸ座標が最大となる位置にある場合には、処理をステップＳ８０５に移行する。そして、Ｍａｘフィルタ位置のＹ座標が最大となる位置にあるか否かをチェックする。
【００６０】
Ｍａｘフィルタ位置のＹ座標が最大となる位置にない場合には、処理をステップＳ８０６に移行する。そして、画像処理部３２は、Ｍａｘフィルタ位置をＹ座標方向に１画素だけシフト（インクリメント）して、処理をステップＳ８０２に移行する。そして、Ｍａｘフィルタ位置のＹ座標が最大となる位置まで、ステップＳ８０２〜Ｓ８０６の処理を繰返す。
【００６１】
また、Ｍａｘフィルタ位置のＹ座標が最大となる位置にある場合には、Ｍａｘフィルタ演算が完了したと判断して、処理を図４に示すＳ４０４に移行する。
図８に、Ｍａｘフィルタ演算の概念図を示す。図８には、第１の縮小画像データ８０ａ、８０ｂ、Ｍａｘフィルタ８１、及び第２の縮小画像データ８２を示している。また、第１の縮小画像データ８０ａ、８０ｂ、及び第２の縮小画像データ８２の枠内の数値は個々の画素の輝度値を示している。
【００６２】
今、Ｍａｘフィルタ８１が第１の縮小画像データ８０ａのように設定されているとすると、画像処理部３２は、Ｍａｘフィルタ８１の中から最大輝度値「１２０」を検出する。
最大輝度値を検出すると、画像処理部３２は、Ｍａｘフィルタ８１の中央画素の値を最大輝度値「１２０」に置き換えて第１の縮小画像データ８０ｂを生成する。
【００６３】
Ｍａｘフィルタ位置を順次シフトさせ、同様の処理を、第１の縮小画像データ８０ａの全領域に対して行なうことによって第２の縮小画像データ８２を得ることができる。
第２の縮小画像データ８２は、輝度値が大きい領域（例えば、輝度値「１２０」の領域）が拡大（膨張）していることが分かる。
【００６４】
以上にＭａｘフィルタ処理について説明したが、Ｍｉｎフィルタ処理も原理は同じである。例えば、Ｍａｘフィルタ８１の中から最小輝度値「３０」を検出して、中央画素の値を最小輝度値「３０」に置き換えて第１の縮小画像データ８０ｂを生成すればよい。
【００６５】
以下、図９及び図１０に基づいて直線補間法について説明する。図９及び図１０は、直線補間法の概念を示す図である。
図９に示す第２の縮小画像データは、３×３画素の画像データである。また、背景画像データは、９×９画素の画像データである。また、黒丸及び白丸はそれぞれ１つの画素データを表し、白丸は画像処理部３２が直線補間法によって補完した画素データを表している。
【００６６】
直線補間法では、第２の縮小画像データの各画素データの配置間隔を所定の間隔（本実施例では３倍）に拡大し、各画素データ間の輝度値が滑らかに遷移するように画素データを補間する。
【００６７】
図１０には、図９に示した背景画像データの一部のデータ列ａの画素データの位置と輝度値との関係を示している。
図９での説明のように、直線補間法では、補間後の各画素データ間が滑らかに遷移するように、第２の縮小画像データの画素データ間を結ぶ直線で結び、この直線上に配置するように等間隔に画素データを補間する。
【００６８】
以上に説明した方法によって、第２の縮小画像データの９倍のサイズを持つ画像データ（背景画像データ）が生成されることとなる。なお、上述した直線補間法は、一般的に知られる公知技術なので詳細な説明は省略する。
【００６９】
なお、本実施例に係る直線補間法では、第２の縮小画像データの各画素データの配置間隔を３倍に拡大しているが、これに限定する趣旨ではなく、必要に応じた倍率を使用すればよい。
【００７０】
以下、図１１〜１２に基づいて本実施例に係るシェーディング補正装置の効果を示す。
図１１は、本実施例に係るシェーディング補正装置によって生成した背景画像データを示している。図１１に示す白線は、図１３に示した原画像データに撮像されているノートＰＣ筐体の境界線ｄを示している。
【００７１】
図１１に示す背景画像データは、図７及び８に示したＭａｘフィルタ処理（膨張処理）を施した結果、グラデーションが境界線ｄの外側で生じるようになっている。すなわち、境界領域が境界線ｄの外側にシフトしている。したがって、この背景画像データを使用して原画像データに対してシェーディング補正を行なっても、境界線ｄの内側の輝度を過剰に補正しない。
【００７２】
図１２は、図１１に示した背景画像データを用いてシェーディング補正した修正後画像データを示している。ノートＰＣの筐体は、背景画像との境界付近においても過剰に補正されていないことが分かる。例えば、図１３のａと図１２のｅとを比較しても、ノートＰＣの筐体と背景との境界が白く過剰補正されていることはなく、輝度ムラ以外の補正は施されていない。
【００７３】
以上に説明したように、本実施例に係るシェーディング補正装置によって、シェーディング補正による過剰な輝度ムラ補正を防止して高品質な補正が可能となる。
また、本実施例に係るシェーディング補正装置は、縮小した原画像データに対してＭａｘフィルタ処理を施すことにより、当該フィルタ処理を高速に実施できるので、背景画像データを高速に生成することが可能となる。その結果、シェーディング補正処理を高速かつ高品質に実施することが可能となる。
【００７４】
（付記１）  物体を撮像して画像データを生成する撮像手段と、該画像データの濃淡を平滑化し、該平滑化された画像データに生じる前記物体と背景との境界領域をシフトして背景画像データを生成する背景画像データ生成手段と、該背景画像データを使用して前記画像データに対してシェーディング補正処理を行なう補正処理手段と、を備えるシェーディング補正装置。
（付記２）  前記背景画像データ生成手段は、前記画像データを縮小して第１の縮小画像データを生成する縮小処理手段と、該第１の縮小画像データに対して膨張処理を行なって前記境界領域をシフトさせ第２の縮小画像データを生成するフィルタ処理手段と、該第２の縮小画像データを前記画像データのサイズに拡大して前記背景画像データを生成する拡大処理手段と、を備えることを特徴とする付記１に記載のシェーディング補正装置。
（付記３）  前記膨張処理は、前記画像データに対して所定の領域を画するＭａｘフィルタによって画された領域の輝度値の最大値を検出し、該検出した最大値を前記Ｍａｘフィルタの所定位置の輝度値と置き換える処理を、前記画像データの全領域に対して実施するＭａｘフィルタ処理である、ことを特徴とする付記２に記載のシェーディング補正装置。
（付記４）  物体を撮像して画像データを生成する撮像処理と、該画像データの濃淡を平滑化し、該平滑化された画像データに生じる前記物体と背景との境界領域をシフトして背景画像データを生成する背景画像データ生成処理と、該背景画像データを使用して前記画像データに対してシェーディング補正処理を行なう補正処理と、を情報処理装置に実行させることを特徴とするシェーディング補正方法。
（付記５）  前記背景画像データ生成処理は、前記画像データを縮小して第１の縮小画像データを生成する縮小処理と、該第１の縮小画像データに対して膨張処理を行なって前記境界領域をシフトさせ第２の縮小画像データを生成するフィルタ処理と、該第２の縮小画像データを前記画像データのサイズに拡大して前記背景画像データを生成する拡大処理と、を情報処理装置に実行させることを特徴とする付記４に記載のシェーディング補正方法。
（付記６）  前記膨張処理は、前記画像データに対して所定の領域を画するＭａｘフィルタによって画された領域の輝度値の最大値を検出し、該検出した最大値を前記Ｍａｘフィルタの所定位置の輝度値と置き換える処理を、前記画像データの全領域に対して実施するＭａｘフィルタ処理である、ことを特徴とする付記５に記載のシェーディング補正方法。
（付記７）  物体を撮像して画像データを生成する撮像処理と、該画像データの濃淡を平滑化し、該平滑化された画像データに生じる前記物体と背景との境界領域をシフトして背景画像データを生成する背景画像データ生成処理と、該背景画像データを使用して前記画像データに対してシェーディング補正処理を行なう補正処理と、を情報処理装置に実行させることを特徴とするシェーディング補正のためのプログラム。
（付記８）  前記背景画像データ生成処理は、前記画像データを縮小して第１の縮小画像データを生成する縮小処理と、該第１の縮小画像データに対して膨張処理を行なって前記境界領域をシフトさせ第２の縮小画像データを生成するフィルタ処理と、該第２の縮小画像データを前記画像データのサイズに拡大して前記背景画像データを生成する拡大処理と、を情報処理装置に実行させることを特徴とする付記７に記載のシェーディング補正のためのプログラム。
（付記９）  前記膨張処理は、前記画像データに対して所定の領域を画するＭａｘフィルタによって画された領域の輝度値の最大値を検出し、該検出した最大値を前記Ｍａｘフィルタの所定位置の輝度値と置き換える処理を、前記画像データの全領域に対して実施するＭａｘフィルタ処理である、ことを特徴とする付記８に記載のシェーディング補正のためのプログラム。
【図面の簡単な説明】
【００７５】
【図１】本発明に係るシェーディング補正装置の原理を示す図である。
【図２】本発明に係るシェーディング補正装置を使用した検査システムの構成例を示す図である。
【図３】図２に示した画像処理装置が実現する検査システムのブロック図を示す図である。
【図４】本発明の実施例に係るシェーディング補正装置を使用した検査システムの主要な処理を示すフローチャートである。
【図５】本実施例に係るダウン・サンプリング法の概念を示す図である。
【図６】本実施例に係る平均操作法の概念を示す図である。
【図７】本実施例に係るＭａｘフィルタ処理を示すフローチャートである。
【図８】本実施例に係るＭａｘフィルタ演算の概念を示す図である。
【図９】直線補間法の概念を示す図である。
【図１０】直線補間法の概念を示す図である。
【図１１】本実施例に係るシェーディング補正装置によって生成した背景画像データを示す図である。
【図１２】図１１に示した背景画像データを用いてシェーディング補正した修正後画像データを示す図である。
【図１３】ノートＰＣの筐体上面の外観をＣＣＤカメラで撮像した原画像データを示す図である。
【図１４】原画像データに対して縮小・拡大処理のみを実施して背景画像データを生成する従来技術で生成した背景画像データを示す図である。
【図１５】図１４に示した背景画像データを用いてシェーディング補正した修正後画像データを示す図である。
【符号の説明】
【００７６】
１      ワーク
２      撮像手段
３      背景画像データ生成手段
４      補正処理手段
【図３】
2007013231.tif 000003
【図４】
2007013231.tif 000004
【図５】
2007013231.tif 000005
【図６】
2007013231.tif 000006
【図７】
2007013231.tif 000007
【図９】
2007013231.tif 000008
【図１０】
2007013231.tif 000009
【図１】
2007013231.tif 000010
【図２】
2007013231.tif 000011
【図８】
2007013231.tif 000012
【図１１】
2007013231.tif 000013
【図１２】
2007013231.tif 000014
【図１３】
2007013231.tif 000015
【図１４】
2007013231.tif 000016
【図１５】
2007013231.tif 000017