(57)【要約】【課題】拡散、鏡面反射を含む一般の表面反射特性をもつ対象物体に対し、画像の明るさ変化の影響を受けずに、安定に対象物体の表面勾配を求める方法を提供する。【解決手段】複数の異なる方向から照明を照射した時の対象物体の画像を複数撮像し、得られた画像における同一座標の画素の輝度と照明の照射方向から、対象物体の表面勾配を計測する方式において、既知の反射モデルを用いて構成された、画像の輝度と表面勾配の関係を表すＸ個の連立方程式について、新たに、輝度比をとる形のＸ−１個の連立方程式に変換し、このＸ−１個の方程式の最小２乗誤差が最小になる様に、対象物体の表面勾配を計算する。【選択図】        図３
2004279187.tif 000002
【特許請求の範囲】
【請求項１】
複数の異なる方向から照明を照射した時の対象物体の画像を複数撮像し、得られた画像における同一座標の画素の輝度と照明の照射方向から対象物体の表面勾配を計測する形状計測方法において、
表面反射モデルから導かれる画像の輝度と表面勾配の関係を表すＸ個の連立方程式を作成し、
作成された連立方程式を輝度比をとる形のＸ−１個の連立方程式に変換し、
このＸ−１個の連立方程式の最小２乗誤差が最小になる様に対象物体の表面勾配を計算する
ことを特徴とする形状計測方法。
【請求項２】
請求項１に記載の形状計測方法において、
前記Ｘ−１個の連立方程式に表面勾配を示す方向ベクトルの大きさが１であることを示す１個の方程式を追加して、全部でＸ個の連立方程式の最小２乗誤差が最小になる様に対象物体の表面勾配を計算する
ことを特徴とする形状計測方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、形状計測方法に関するものであり、特に、基板に実装された電子部品のモールド部分、はんだ付け部分等の形状計測に関するものである。
【０００２】
【従来の技術】
従来から被写体に対する光源の位置つまり照射方向を変えて撮像を行うことにより、同じ被写体について複数の原画像を取得し、取得された複数の原画像から被写体の３次元データ（表面勾配、高さなどの３次元情報）を求める方法、いわゆる照度差ステレオ法が提案されており、その例として、光源による照射方向を変えて被写体を撮像することにより複数の原画像を取得し、各原画像のデータによって画像行列を生成し、当該画像行列に因子分解を適用して被写体における面の向きを抽出し、抽出した面の向きに基づいて被写体の３次元データを生成する３次元データ生成方法であって、被写体を撮像する際に、立体チャートの表面の反射率の比及び面の向きが既知である少なくとも３つの面を被写体とともに撮像し、３つの面の反射率及び面の向きを用いて被写体の面の向きを絶対的な座標系に変換するものなどが開示されている（特許文献１参照）。
【０００３】
【特許文献１】
特開２００１−７４４１７号公報
【０００４】
【発明が解決しようとする課題】
しかしながら、従来の照度差ステレオ法を用いた発明は、物体表面が拡散反射特性をもつ場合しか考慮していない。また、撮像系の輝度ゲインや、絞りの変化などによる画像の輝度変化に対して計測結果が不安定であるという課題がある。
【０００５】
この発明は、上記の問題点を解決するためになされたものであり、拡散、鏡面反射を含む、一般の表面反射特性をもつ対象物体に対して、画像の明るさ変化の影響を受けずに安定して対象物体の表面勾配を求めることができる照度差ステレオの一手法である形状計測方法を提供することを目的とするものである。
【０００６】
【課題を解決するための手段】
この発明に係る形状計測方法は、複数の異なる方向から照明を照射した時の対象物体の画像を複数撮像し、得られた画像における同一座標の画素の輝度と照明の照射方向から対象物体の表面勾配を計測する形状計測方法において、表面反射モデルから導かれる画像の輝度と表面勾配の関係を表すＸ個の連立方程式を作成し、作成された連立方程式を輝度比をとる形のＸ−１個の連立方程式に変換し、このＸ−１個の連立方程式の最小２乗誤差が最小になる様に対象物体の表面勾配を計算することを特徴とするものである。
【０００７】
【発明の実施の形態】
実施の形態１．
図１は、この発明の実施の形態１による形状計測方法を説明するための図である。図１では、対象物体１０７を見下ろす形で、撮像手段であるＣＣＤカメラ１０１が配置されている。照明手段１０２ａ〜１０２ｃで構成される照明手段１０３は、図２に示すように、対象物体１０７に斜めの角度をもって光を照射する。図示している照明手段１０３は１０２ａ〜１０２ｃの３つであり、それぞれの高さが同じである様に記述したが、配置する照明の数は３つ以上であってもかまわないし、配置する高さが異なってもかまわない。特に、本実施の形態１では、基本的に照明の数は４つ以上とする。本実施の形態１では、制御手段１０４によって各照明手段１０３の点灯制御を行い、それぞれが点灯した時の画像をＣＣＤカメラ１０１によって撮像され、それらの画像から、画像処理手段１０５が対象物体１０７の形状（表面勾配）の計測を行い、計測結果を出力する。
【０００８】
図２は、本実施の形態１における座標系と記号の説明を示す。対象物体１０７を座標原点に設定し、撮像手段であるＣＣＤカメラ１０１の撮像面がｚ軸方向に垂直になる様に座標系を設定する。なお、図２ではＣＣＤカメラ１０１の撮像面のみ図示し、ＣＣＤカメラ１０１は省略されている。対象物体１０７の表面勾配を表面の単位法線ベクトルｎで表現することとし、
ｎ＝（ｐ、ｑ、ｒ）
とする。ｎは単位ベクトルなので、ｐ２＋ｑ２＋ｒ２＝１となる。
【０００９】
次に、照明に関するベクトルと行列に関して説明する。照明手段１０３を構成する照明手段１０２ａ〜１０２ｃについて、それぞれの照射方向の単位ベクトルをｍ１、ｍ２、ｍ３とする。ベクトルで表現する際は、ベクトルの方向を、光が照射される向きと逆方向にとり、原点から照明手段１０２ａ、照明手段１０２ｂ、照明手段１０２ｃに向かう方向にとることにする。今後、照明方向ベクトル（単位ベクトル）を一般的に指す場合は、ｍで表すことにする。
【００１０】
図３は、本実施の形態１による形状計測方法のフローを説明するフローチャートである。まず、制御手段１０４により、照明手段１０３のうちの１つの方向の照明手段を選択して照明する（ステップＳ１）。次に、画像処理手段１０５で制御される撮像手段１０１が、ステップＳ１で照明された対象物体１０７の画像を撮像する（ステップＳ２）。次に、別の照明手段を選択し、Ｘ枚の異なる方向の画像が撮像できるまで撮像を繰り返す（ステップＳ３）。ここで、Ｘ≧４とする。Ｘ枚の異なる方向の画像が撮像できると、画像処理手段１０５によって、Ｘ枚の画像の同一座標（ｉ、ｊ）の点について、それぞれ法線ベクトルｎ（ｉ、ｊ）、すなわち対象物体１０７の表面勾配を計算する（ステップＳ４）。
【００１１】
ここで、ステップＳ４の内部動作の簡単な説明は次の様になる。Ｘ枚の画像の同一座標（ｉ、ｊ）の輝度について、それぞれ、拡散反射と鏡面反射を同時に考慮できる表面反射モデルから導かれる画像の輝度と表面勾配の関係を表す方程式をＸ本連立させる（ステップＳ４ａ）。この方程式は次式（１）に示される。
【００１２】
【数１】
2004279187.tif 000003
【００１３】
なお、Ｉｋ（ｉ，ｊ）：スカラー値で、画像ｋの座標（ｉ，ｊ）の輝度（計測値）
Ｅ（ｉ，ｊ）：ｄ次元ベクトルで、対象物体の座標（ｉ，ｊ）の表面反射パラメータをまとめたベクトル（既知）
ｎ（ｉ，ｊ）：３次元ベクトルで対象物体の座標（ｉ，ｊ）の単位法線ベクトル（未知）
｜｜ｎ（ｉ，ｊ）｜｜＝１
ここで、｜｜ａ｜｜はベクトルａの大きさ（ノルム）
である。
【００１４】
次に、その方程式を輝度比をとる形に変形した次式（２）に示す（Ｘ−１）本の連立方程式を生成する（ステップＳ４ｂ）。
【００１５】
【数２】
2004279187.tif 000004
【００１６】
その連立方程式を次式（３）の条件で解き最小２乗誤差解として法線ベクトルを求める（ステップＳ４ｃ）。
【００１７】
【数３】
2004279187.tif 000005
【００１８】
最後に、次式（４）に従って法線ベクトルが単位ベクトルとなる様に大きさを正規化する（ステップＳ４ｄ）。
【００１９】
【数４】
2004279187.tif 000006
【００２０】
この処理を対象物体１０７上の各座標（ｉ、ｊ）に対して行い、対象物体１０７上のすべての座標点において単位法線ベクトルｎ（ｉ、ｊ）が計算できれば終了とする（ステップＳ４ｅ）。
【００２１】
以下では、上記のフローをさらに詳細に説明する。ステップＳ１〜Ｓ３までは前に説明した通りであるので、ステップＳ４以下について説明する。ステップＳ４以下では、異なる方向の照明から得られたＸ枚の画像を用いて、対象物体１０７の表面の法線ベクトルを表面上の各点毎に計算する。まず、画像輝度の方程式を作成する際に、表面反射モデルとして、拡散反射と鏡面反射を同時に考慮できるモデルを仮定する。本実施の形態１ではＰｈｏｎｇモデルを採用する。
【００２２】
Ｐｈｏｎｇモデルでは、物体の反射光（画像輝度）は、次式（５）に示すように拡散反射成分と鏡面反射成分の和で表現される。
Ｉ＝Ｃ｛（１−ｋ）（ｎ、ｍ）＋ｋ（ｖ、ｍ’）ｌ｝  （５）
この式（５）が、物体の各点で成立するとする。ここで、
Ｉ：  物体の反射光量（画像の輝度）
ｎ：  物体の法線ベクトル（３次元単位ベクトル）
ｍ：  照明の方向ベクトル（３次元単位ベクトル）
ｍ’：  照明光の正反射方向のベクトル（３次元単位ベクトル）
ｍ’＝２（ｎ、ｍ）ｎ−ｍ
ｖ：  カメラ方向ベクトル（３次元単位ベクトル）
図２の座標系で、ｖ＝（０，０，１）
Ｃ：Ｐｈｏｎｇモデルにおける反射パラメータ１
ｋ：Ｐｈｏｎｇモデルにおける反射パラメータ２（０≦ｋ≦１）
ｌ：Ｐｈｏｎｇモデルにおける反射パラメータ３（０≦ｌ）
（ａ、ｂ）：ベクトルａとベクトルｂの内積
である。
【００２３】
この式（５）の示すところは、Ｐｈｏｎｇモデルでは、拡散反射成分は、物体の法線方向と照明方向の内積で与えられ、鏡面反射成分は、視線方向（カメラ方向）と照明の正反射方向の内積のｌ乗で与えられるということである。ｌは鏡面反射成分のピーク幅（鋭さ）を表し、値が大きければ輝度の変化が大きくなる。また、物体の拡散反射成分と鏡面反射成分の含有比は、（１−ｋ）：ｋであり、Ｃはそのゲインを示す。このＣ、ｋ、ｌの３つのスカラー量がＰｈｏｎｇモデルの表面反射パラメータである。
【００２４】
なお、Ｐｈｏｎｇモデルの代わりに形の良く似たＢｌｉｎｎモデルを用いても良い。Ｂｌｉｎｎモデルは、
Ｉ＝Ｃ｛（ｌ−ｋ）（ｎ、ｍ）＋ｋ（ｎ、ｈ）ｌ｝  （６）
であり、ここで、
ｈ：ハーフベクトル（３次元単位ベクトル）
ｈ＝（ｍ＋ｖ）／‖ｍ＋ｖ‖
である。Ｐｈｏｎｇモデルと記号が同じものは同じ意味である。
【００２５】
以下では、Ｐｈｏｎｇモデルを仮定し、このパラメータの値が既知であるとする。Ｐｈｏｎｇモデルでは、表面反射パラメータは、Ｃ、ｋ、ｌの３つであるが、別の表面反射モデルを用いた場合は、表面反射パラメータの数は３つとは限らないため、一般に表面反射パラメータ数をｄとして、表面反射パラメータをｄ次元ベクトルＥであらわすことにする。すなわち、
Ｅ＝（ｅ１、  ｅ２、・・・、ｅｄ）
である。Ｐｈｏｎｇモデルの場合、ｄ＝３で、
Ｅ＝（Ｃ、ｋ、ｌ）
となる。
【００２６】
同様に、画像輝度の方程式も一般化しておく。輝度をＩとし、画像の輝度を出力とする関数をｆとすると、画像輝度の方程式は次の様になる。
Ｉ＝ｆ（Ｅ、ｎ、ｍ）                    （７）
ここで、Ｅは表面反射パラメータベクトル、ｎは対象物体の単位法線ベクトル、ｍは単位照明方向ベクトルとなる。
【００２７】
Ｐｈｏｎｇモデルでは、Ｅ＝（Ｃ、ｋ、ｌ）であり、
2004279187.tif 000007
となる。
【００２８】
ここで、対象物体の各点（各座標）の単位法線ベクトルを求めるため、座標（ｉ、ｊ）の法線ベクトルをｎ（ｉ、ｊ）、表面反射パラメータベクトルをＥ（ｉ、ｊ）とする。また、ｋ番目の照明を用いて得られた画像の（ｉ、ｊ）座標の輝度をＩｋ（ｉ、ｊ）とする。異なる照明方向からの照明で得られるＸ枚の画像の座標（ｉ、ｊ）で得られる輝度の方程式を、各照明毎に並べると、次式（８）となる。
【００２９】
【数５】
2004279187.tif 000008
【００３０】
ここで、ｆ（Ｅ、ｎ、ｍｋ）を、ｆｋ（Ｅ、ｎ）と表記した。ステップＳ４の内部処理であるステップＳ４ａでは、これらＸ本の方程式を作成する。
【００３１】
次に、同じく、ステップＳ４の内部処理であるステップＳ４ｂでは、画像の輝度比をとるように式（８）を変換し、式（９）を得る。すなわち、次式（９）に示す新たな方程式を作成する。
【００３２】
【数６】
2004279187.tif 000009
【００３３】
この方程式では輝度の絶対値の情報がなくなり、式（８）と全く異なる方程式になっている。また、輝度の絶対値情報がなくなった分、連立式の数はＸ本からＸ−１本になっている。また、式（９）は、次式（１０）と等価である。
【００３４】
【数７】
2004279187.tif 000010
【００３５】
ステップＳ４ｂでは、式（１０）を作成すると言ってもよい。
【００３６】
次に、同じくステップＳ４の内部処理であるステップＳ４ｃでは、式（１０）の連立方程式を解く。画像の輝度であるＩｋ（ｉ、ｊ）は、計測値として既知であり、仮定によりＥ（ｉ、ｊ）も既知である。従って、連立方程式である式（１０）から、対象物体の単位法線ベクトルｎ（ｉ、ｊ）を解くことになる。今回の実施の形態１では、Ｘ≧４であるので、式（１０）の連立方程式の式の本数は３本以上となる。一方、未知数である法線ベクトルの要素数は３であるので、数学的に解けることになる。しかしながら、画像の輝度は計測値であるので誤差を含むこと、式の数が求めたい未知数よりも多い場合があるということから、厳密解ではなく最小２乗解を求めることにする。この最小２乗解の尺度は、式（１０）各右辺の値をできるだけ０に近づける様にするというものであり、定式化すると、次式（１１）となる。
【００３７】
【数８】
2004279187.tif 000011
【００３８】
ステップＳ４ｃでは、こういった優決定系（方程式の数が未知数の数より多い）の場合の最小２乗解を得るために、例えば、数値計算法の１つであるＧａｕｓｓの反復法（Ｇａｕｓｓ−Ｎｅｗｔｏｎ法）や、修正版である改訂Ｇａｕｓｓ反復法などを用いて、高速に法線ベクトルｎを計算する。
【００３９】
ステップＳ４ｄでは、ステップＳ４ｃで得られた法線ベクトルｎを、大きさが１になるように正規化して、対象物体の座標（ｉ、ｊ）における単位法線ベクトルを得る。すなわち、ステップＳ４ｃで得られた法線ベクトルｎを、その大きさである‖ｎ‖で割って新しいｎとする。ここで‖ｎ‖はベクトルｎのノルムを示す。
【００４０】
このステップＳ４を対象物体上の各座標（ｉ、ｊ）に対して行い、対象物体上のすべての座標点において単位法線ベクトルｎ（ｉ、ｊ）が計算できれば終了とする。
【００４１】
従って、実施の形態１によれば、このように形状計測方法を、輝度比を元に対象物体の法線ベクトルを計算するようにしたため、画像の明るさ変化に対して頑強な計測を行うことができる。例えばカメラのレンズの絞りを若干変化させただけで画像の輝度は変わってしまう。この場合、既知の反射パラメータを用いる従来の方法では法線ベクトルの計算結果に狂いが生じる。この発明では、画像の輝度比を用いるために、画像の輝度自体が変わっても、各画像間での輝度比が変わらなければ影響を全く受けない。撮像手段であるＣＣＤカメラの画像出力回路のゲインを変更する場合も画像の輝度が変化するために、同様の効果を奏する。
【００４２】
また、従来の照度差ステレオ法では、対象物体の表面が拡散反射特性を持つ場合についてしか考慮されていなかった。この発明の計測方法においては、鏡面成分を含む、一般的な表面反射特性を有する物体に対しても表面勾配が計算できるという効果を有する。
【００４３】
実施の形態２．
別の実施の形態として、図４に示す計測フローを用いてこの発明の形状計測方法を実施することができる。この実施の形態２では、基本的に照明の数は３つ以上とする。ステップＳ１〜Ｓ４ａまでは、実施の形態１と同じであるので説明を省略する。実施の形態２のステップＳ４ｂ’では、実施の形態１のステップＳ４ｂに、もう一つの条件式である、
‖ｎ（ｉ、ｊ）‖＝１
を追加する。これは、ｎが単位ベクトルであるという要請である。まとめると、ステップＳ４ｂ’では、式（９）の代わりに、以下の式（９’）を作成する。
【００４４】
【数９】
2004279187.tif 000012
【００４５】
前述したものと同様に、この式（９’）は、次式（１０’）と等価である。
【００４６】
【数１０】
2004279187.tif 000013
【００４７】
同様に、ステップＳ４ｂ’では、式（１０’）を作成すると言ってもよい。
【００４８】
次に、ステップＳ４ｃ’では、式（１０’）の連立方程式を解く。実施の形態２では、Ｘ≧３であり、式（１０）の連立方程式の式の本数は、追加した（‖ｎ（ｉ、ｊ）‖―１＝０）の条件式を含めて３本以上となるため、数学的に解けることになる。実施の形態１と同様の理由で、厳密解ではなく最小２乗解を求めるが、この最小２乗解の尺度は、式（１１）と若干異なる。定式化すると、次式（１１’）となる。
【００４９】
【数１１】
2004279187.tif 000014
【００５０】
ここで、αはあらかじめ指定した重み係数である。αを導入した理由は、Ｉｋｆｋ＋１（Ｅ、ｎ）−Ｉｋ＋１ｆｋ（Ｅ、ｎ）という値と‖ｎ‖−１という値の単位が異なること（Ｉｋｆｋ＋１（Ｅ、ｎ）は輝度の２乗の単位であり、‖ｎ‖−１は無単位である）、ｎを単位ベクトルにする要請の重みを自由に変えられることである。
【００５１】
式（１１’）の場合の最小２乗解を得る場合にも実施の形態１と同様に、例えば、数値計算法の１つであるＧａｕｓｓの反復法（Ｇａｕｓｓ−Ｎｅｗｔｏｎ法）や、修正版である改訂Ｇａｕｓｓ反復法などを用いて、高速に法線ベクトルｎを計算することができる。この様に法線ベクトルｎの大きさを１に近づける様に計算しても、厳密には１にならないため、ステップＳ４ｄとして、求めた法線ベクトルｎの大きさを正規化して、対象物体の座標（ｉ、ｊ）における単位法線ベクトルを得る。
【００５２】
ステップＳ４ａ、ステップＳ４ｂ’、ステップＳ４ｃ’、ステップＳ４ｄで構成される処理を対象物体上の各座標（ｉ、ｊ）に対して行い、対象物体上のすべての座標点において単位法線ベクトルｎ（ｉ、ｊ）が計算できれば終了とする。
【００５３】
従って、実施の形態２によれば、‖ｎ‖−１＝０という条件を追加して計算するようにしたため、実施の形態１で得られる効果に加えて、照明手段の数が少ない（３つ）の場合でも形状計測を行うことが可能になるという効果がある。また、最小２乗計算を行う際にｎが単位ベクトルであることを考慮して計算するため、得られるｎの値の信頼性が向上するという効果がある。
【００５４】
【発明の効果】
以上のように、この発明によれば、対象物体に対して各方向から照明を照射した時の対象物体の画像を複数撮像し、得られた画像における同一座標の画素の輝度と照明の照射方向から、対象物体の表面勾配を計測する方法において、既知の反射モデルを用いて構成された、画像の輝度と表面勾配の関係を表すＸ個の連立方程式について、新たに、輝度比をとる形のＸ−１個の連立方程式に変換し、このＸ−１個の方程式の最小２乗誤差が最小になる様に、対象物体の表面勾配を計算するようにしたため、拡散、鏡面反射を含む、一般の表面反射特性をもつ対象物体に対して、画像の明るさ変化の影響を受けずに対象物体の表面勾配を求めることができる。
【図面の簡単な説明】
【図１】この発明による形状計測方法を説明するための図である。
【図２】この発明における座標系と記号の説明をするための図である。
【図３】この発明の実施の形態１による計測フローを説明するための図である。
【図４】この発明の実施の形態２による計測フローを説明するための図である。
【符号の説明】
１０１  撮像手段、１０２ａ〜１０２ｃ  照明手段、１０３  照明手段、１０４  制御手段、１０５  画像処理手段、１０６  計測結果、１０７  計測対象物体。
【図１】
2004279187.tif 000015
【図２】
2004279187.tif 000016
【図３】
2004279187.tif 000017
【図４】
2004279187.tif 000018