説明

三次元形状測定装置、三次元形状測定方法及びコンピュータプログラム

【課題】少ない投影パターン数で、形状変化が急激な計測対象や不連続な計測対象の高精度な形状計測を可能とする。
【解決手段】三次元形状計測装置は、明るさ変化を有するパターンを計測空間に投影するパターン投影手段と、パターンが投影された計測空間を撮影する撮像手段とを備え、計測空間に存在する計測対象の三次元形状を計測する三次元形状計測装置であって、撮影手段により得られた撮影画像のパターンの明るさ変化からパターンの局所的な配置情報を算出する局所配置情報算出手段と、撮影画像におけるパターンのボケ量を算出するボケ量算出手段と、局所配置情報とボケ量とに基づき、計測対象の三次元形状を算出する三次元形状算出手段とをさらに備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、三次元形状測定装置、三次元形状測定方法及びコンピュータプログラムに関する。
【背景技術】
【0002】
三次元形状計測法としては種々の手法が提案されている。大まかに分類すると、照明装置を用いずに撮像装置だけで形状計測を行うパッシブ型と、照明装置と撮像装置を組み合わせて用いるアクティブ型がある。アクティブ型はパッシブ型に比べ、計測対象に対するロバスト性が高く、高精度な距離計測が可能である。アクティブ型では、計測対象の表面テクスチャ情報が少ない場合でも投影された照明パターンを手がかりにして形状計測を行うため、表面テクスチャ情報に影響されにくい。アクティブ型の代表例として、三角測量に基づく手法、位相情報変化に基づく手法、投影パターンのデフォーカス情報に基づく手法がある。
【0003】
このうち、パターンの位相情報変化を利用した手法は、縞パターン投影法と呼ばれ、代表的手法の1つにフーリエ変換法(非特許文献1を参照)がある。しかし、この方法は、計測できる位相変化が特定範囲に限定されるため、範囲外の形状変化が起こると位相の折り返しが生じ、位相接続をする必要がある。よって、滑らかな形状をした計測対象であれば、位相の連続性を用いて位相接続は比較的容易に実現できるが、形状変化が急激な計測対象や不連続な計測対象の場合、位相接続が困難になる。
【0004】
また、投影パターンのデフォーカス情報に基づく手法として、撮像光学系によるデフォーカスを利用した形状計測手法(特許文献1を参照)や投影光学系によるデフォーカスを利用した形状計測手法(非特許文献2を参照)がある。後者では、撮像光学系がパンフォーカスである場合、投影光学系の焦点位置からのずれ量に比例してボケ量が大きくなる。このボケを画像上でのパターンの広がりとして評価し形状を計測する。具体的には、矩形状の投影パターンを細かくシフトさせた24種類のパターンを投影し、撮像する。デフォーカス量は、画像の各画素の輝度値をパターンごとに時系列的に並べて輝度値の変動で算出する。この手法では、奥行きの絶対値が算出可能なものの、パターンの投影数を多くする必要があるため、実時間の計測には向かない。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特許第3481631号公報
【非特許文献】
【0006】
【非特許文献1】M.Takeda and K.Mutoh, "Fourier transform profilometry for automatic measurement of 3-D object shapes," Appl.Opt. Vol. 22, No. 24, P. 3977〜3982(1983).
【非特許文献2】Li Zhang and Shree Nayar, "Projection defocus analysis for scene capture and image display," ACM Trans. on Graphics, Vol. 25, 3, P. 907〜915 (July 2006).
【発明の概要】
【発明が解決しようとする課題】
【0007】
上述のように、形状変化が急激な計測対象や不連続な計測対象を少ない投影パターン数で詳細な形状まで計測可能な三次元形状計測技術は提案されていない。そこで、本発明は、少ない投影パターン数で、形状変化が急激な計測対象や不連続な計測対象の高精度な形状計測を可能とすることを目的とする。
【課題を解決するための手段】
【0008】
上記課題を解決するための本発明は、明るさ変化を有するパターンを計測空間に投影するパターン投影手段と、前記パターンが投影された計測空間を撮影する撮像手段とを備え、前記計測空間に存在する計測対象の三次元形状を計測する三次元形状計測装置であって、前記撮影手段により得られた撮影画像の前記パターンの明るさ変化から前記パターンの局所的な配置情報を算出する局所配置情報算出手段と、前記撮影画像における前記パターンのボケ量を算出するボケ量算出手段と、前記局所配置情報と前記ボケ量とに基づき、前記計測対象の三次元形状を算出する三次元形状算出手段とをさらに備える。
【発明の効果】
【0009】
本発明によれば、少ない投影パターン数で、形状変化が急激な計測対象や不連続な計測対象の高精度な形状計測が可能になる。
【図面の簡単な説明】
【0010】
【図1】実施形態1の三次元形状計測装置100の構成例を示す図。
【図2】実施形態1のパターン投影部1の投影パターン例を示す図。
【図3】パターン投影部1にパターンを表示せずにシーン撮影した例を示す図。
【図4】図3の状況でパターン投影した場合の撮影画像の一例を示す図。
【図5】投影パターンのデフォーカス量を説明するための図。
【図6】キャリブレーションを行う場合の装置の構成例を示す図。
【図7】キャリブレーションボードの一例を示す図。
【図8】キャリブレーション処理の一例を示すフローチャート。
【図9】パターン投影されたキャリブレーションボードの撮影例を示す図。
【図10】コントラスト値と撮影部2からの奥行き値の対応例を示すグラフ。
【図11】詳細なキャリブレーションを行う場合の構成例を示す図。
【図12】実施形態1における三次元形状計測処理の一例を示すフローチャート。
【図13】フーリエ変換法の原理を説明するための図。
【図14】折りたたまれた位相φ(x、y)の算出結果例を示す図。
【図15】コントラスト値及び標準偏差値の算出結果の一例を示す図。
【図16】位相情報φ(x、y)算出の過程を説明するための図。
【図17】位相情報の補正方法を説明するための図。
【図18】実施形態2の三次元形状計測装置200の構成例を示す図。
【図19】実施形態2のパターン投影部1の投影パターン例を示す図。
【図20】実施形態2における三次元形状計測処理の一例を示すフローチャート。
【図21】位相シフト法による位相算出の原理を説明するための図。
【図22】実施形態3の投影パターンと、位相φw(x、y)の算出結果を示す図。
【図23】実施形態4の投影パターンと、位相φw(x、y)の算出結果を示す図。
【図24】実施形態5の三次元形状計測装置300の構成例を示す図。
【図25】実施形態5の投影パターン、および、局所配置情報の算出方法を示す図。
【発明を実施するための形態】
【0011】
以下、添付図面を参照して、本発明の好適な実施の形態について説明する。なお、各図において、同一の部材については同一の参照番号を付し、重複する説明は省略する。
【0012】
[実施形態1]
図1に本発明の実施形態1に係る形状計測装置100の概略上面図を示す。撮影部2の光学中心Oが世界座標系(X、Y、Z)の原点になるように配置している。また、Z軸を撮影部2の光軸と一致させ、水平方向右向きにX軸を、鉛直方向下向きにY軸をとる。実施形態1ではパターン投影部1の光軸と撮影部2の光軸が平行になるように配置する。パターン投影部1の光学中心Cは撮影部2の光学中心OからX軸上で距離Dだけ離れた位置に配置される。パターン投影部1の水平半画角をθ、垂直半画角をθとした。また、撮影部2の水平半画角をψ、垂直半画角をψとした。図1において、計測対象は撮影部2の光学中心Oから距離Z1の位置にある円柱41と、撮影部の光学中心Oから距離Z2の距離にある角柱42である。
【0013】
パターン投影部1は画像表示素子11、投影光学系12を含む。パターン投影部1には液晶プロジェクターなどの特定の位置に、周期性を有するパターンを結像可能な、結像光学系を有する投影装置を用いる。パターン投影部1の焦点はシーンの基準面3に合わせている。パターン投影部1の光学中心Cから基準面3の距離はLである。基準面3は計測範囲の最も後方に設定することが望ましい。これは、基準面よりも手前と奥の両方に計測対象が存在する場合、投影パターンのボケが合焦位置より手前にあるために生じたのか、奥にあるために生じたのかを見分けることができなくなるためである。奥行き計測可能な計測空間はパターン投影部1の投影範囲、撮影部2の撮影範囲、基準面よりも撮影部側の3つの範囲が重なる太実線で示した範囲40で規定される。ただし、物体によるオクルージョンが発生する部位は範囲内であっても計測可能ではない。
【0014】
パターン投影部1で投影するパターンの一例を図2に示す。図2(a)に示すように、投影パターンは、照明の強度が正弦波状に最大強度Imaxと最小強度Iminとの間で変動するような周期性を有するパターンである。実施形態1では、パターン投影部1が1種類のパターンを投影する場合を説明する。基準面3上でピッチがpとなるよう調整されている。基準面3からずれた位置での正弦波状のパターンの例は図2(b)に示す通りである。投影光学系の焦点位置である基準面3からの位置ずれの影響により、ボケが発生する。ボケの発生量はデフォーカス量に依存するため、実施形態1では、ボケ量の基準量としてデフォーカス量を用い、ボケ量算出のためにデフォーカス量を算出する。デフォーカスの発生により、最大強度Imaxが低下し、最小強度Iminが増加する。すなわち、以下の式(1)で記述されるコントラストCが低下する。
C=(Imax - Imin)/(Imax+Imin)・・・式(1)
また、デフォーカスの発生量が大きいほど、投影パターンはグレーに近づくため、画像輝度の標準偏差も小さくなる。標準偏差SDは以下の式(2)で記述される。

ここで、Nはある画像領域内における画素の総数、Iaveはある画像領域内での画像輝度の平均値、Iは画像領域内の各画素の輝度である。
【0015】
図1の説明に戻り、撮影部2は撮像素子21、撮影レンズ22を含む。撮像素子21にはCMOSセンサやCCDなどの光電変換素子を用いることができる。撮影レンズ22の焦点距離をFcとする。歪曲収差などの各種カメラパラメータは予めキャリブレーションしてあるものとする。パターン投影部1の投影光学系によるデフォーカスと撮影部2の撮像光学系によるデフォーカスを分離するため、撮像光学系のデフォーカスを無視できるような条件で撮影する必要がある。具体的には、撮影部2の絞りを十分に絞り、被写界深度を深くしておく必要がある。ただし、絞りを絞りすぎると回折の影響により、像は逆にボケてしまうため注意が必要である。
【0016】
撮影部2の前方被写界深度と後方被写界深度はそれぞれ以下の式(3)と式(4)から計算される。
φr×Fno×Zs2/(Fc2+φr×Fno×Zs)・・・式(3)
φ×Fno×Zs2/(Fc2−φr×Fno×Zs)・・・式(4)
ここで、φrは許容錯乱円径、FnoはF値(絞り値)、Zsは被写体距離、Fcは撮像光学系の焦点距離である。前方被写界深度と後方被写界深度の和が撮像光学系の被写界深度である。
【0017】
例えば、1/2インチ、VGA、焦点距離16mmのレンズからなるカメラを用いて、1m離れた30cmの奥行き範囲のシーンを撮影する場合を考える。許容錯乱円径φrが撮像素子のピクセルピッチが0.01mmであるとすると、F値は4よりも大きく設定する必要がある。一方、回折によるボケの限界は以下のエアリーの式(5)で計算される。
1.22×λ×Fno・・・式(5)
ここでλは光の波長である。可視光において最も長波長だと言われる780nmで計算すると、撮像素子のピクセルピッチが0.01mmであればF値はF11よりも小さくすれば回折による影響はなくなる。つまり、上記条件ではF値をF4〜F8の間に設定する必要がある。
【0018】
パターン投影部1にパターンを表示せずに、円柱41、角柱42からなるシーンを撮影すると図3の撮影画像60のようになる。画像60は円柱61、角柱62を含む。画像座標のx軸は基準面3に向かって右方向、y軸は同様に下方向にとる。また、画像座標の原点oは左上とする。
【0019】
次に、パターン投影部1により、図2のパターンを投影すると図4の画像63に示すようになる。画像63は円柱64、角柱65を含む。ただし、図4ではパターン投影部1の光学系によるデフォーカスは考慮していない。また、正弦波状の強度変動も簡略化して2値で示している。実際には投影光学系のデフォーカスにより、パターンのコントラストは低下する。
【0020】
ここで、パターン投影部1により投影された投影パターンのデフォーカス量は、焦点位置からの位置ずれ量と、投影光学系の開口径に依存する。これを図5を用いて説明する。図5(a)に開口径がA1、図5(b)に開口径がA2であるときの投影光学系と投影像の模式図を示す。A1とA2の関係はA1>A2である。図5(a)において、画像表示素子11の実像が13である。簡単のために、投影光学系12は一つのレンズで示した。投影光学系12の焦点距離をFp、画像表示素子11と投影光学系12との距離をdとした。以下の式(6)で表される結像公式を変形した式(7)により、レンズから結像面Pfまでの距離diが導かれる。
1/Fp=1/d+1/di・・・式(6)
di=d・Fp/(d−Fp)・・・式(7)
結像面Pfよりもαだけ手前の平面P1では像が広がる。開口径をAとするとこの像の広がりBは幾何光学的に以下の式(8)で記述される。
【0021】
B=α・A/di・・・式(8)
結像位置からの位置ずれ量αが大きいほど、像の広がりB、すなわち、デフォーカス量が増大することがわかる。簡単のために幾何光学的に算出される関係を記述した。しかし、波動光学的に考えると像の広がりは回折の影響を考慮する必要があるが、ここでは省略する。つまり、パターン投影部1による投影パターンのデフォーカス量を評価することで基準面3からの計測対象までの距離を推定できる。一方、式(8)から開口径Aが大きくなる程、デフォーカス量も増加することがわかる。図5(a)に開口径A1のときの像の広がりB1を、図5(b)に開口径A2のときの像の広がりB2を示したが、B1>B2である。
【0022】
開口径が大きい程、位置ずれに対するデフォーカス変化が大きくなるため、距離の推定精度が向上する。ただし、デフォーカス量がある一定量を超えると、位置ずれによる変化分を算出することができなくなるため、デフォーカス量を推定可能な距離範囲には制限がある。この距離範囲は開口径が小さい程広い。したがって、計測可能な距離範囲を広くとりたい場合には、開口径をある程度小さくする必要がある。ただし、距離範囲を広くとると位置ずれに対するデフォーカス量変化が小さくなるため感度が下がり、物体の詳細な形状を計測することはできなくなる。
【0023】
実施形態1の形状計測装置100では形状計測を行う前に、デフォーカス量と奥行き位置の関係を取得するためのキャリブレーションが必要になる。まず、図6乃至図10を用いて簡易なキャリブレーションの方法を述べる。図6(a)にキャリブレーションを行うための装置の概略上面図を、図6(b)に概略側面図を示す。パターン投影部1の焦点は図1の構成と同様、基準面3に合わせる。撮影部2から撮影可能範囲の最近点までの距離をZoとする。キャリブレーションボード50はキャリブレーション用に使用するボードであって、図7に示すように平面板でできており、一定間隔でドットが描かれている。また、キャリブレーションボード50は図6(b)に示すように傾いて配置されており、各ドットの世界座標値(X、Y、Z)は既知であるものとする。これは公知のカメラキャリブレーション手法を用いることで実現される。
【0024】
図8を参照して、形状計測装置100におけるキャリブレーション処理を説明する。まず、S01では、パターン投影部1がパターン投影を行う。具体的に、図2に示すような正弦波的に強度が変化するパターンをキャリブレーションボード50に投影する。次にS02では、撮影部2がパターンが投影されたキャリブレーションボード50を撮影する。このとき、例えば図9に示すような撮影画像51が得られる。画像51は、キャリブレーションボード50を含む。図9では簡単のために、パターンの本数を少なく描いたが、撮影部2に近い画像の下部ほど、投影パターンのデフォーカスが大きくなる。次にS03では、デフォーカス量算出部8が投影パターンのデフォーカス量を算出する。デフォーカス量の算出にはコントラスト値、または、標準偏差値を使用する。
【0025】
まず、コントラスト値の計算方法について説明する。キャリブレーションボード50を図6(b)に示すように配置しているため、画像の同一y座標での奥行き値は等しいと考えられる。そこで画像51中の領域53Aのような複数周期のパターンを含む領域を考える。その領域の中で画像輝度から上記式(1)によりコントラストCを計算する。式(1)でImaxは画像領域内での最大輝度、Iminは画像領域内での最低輝度である。例えば画像領域53Bのように領域をy方向にシフトさせながら全てのy座標に対して計算を行う。ただし、画像領域中にキャリブレーションボードのドットを含む場合にはノイズの原因となるため、その領域が除外した方が良い。
【0026】
次に標準偏差値の計算方法について説明する。コントラスト値と同様、領域53Aのような複数周期のパターンを含む領域を考える。標準偏差値の場合は、その領域の中で上記式(2)により、SD値を計算する。この領域をy方向にシフトさせながら全てのy座標に対して計算を行う。
【0027】
図8の説明に戻り、S04では奥行き補間処理を行う。具体的には、キャリブレーションボード50が平面であると仮定し、ドット間の奥行き値を補間処理により算出する。キャリブレーションボード50が略平面であれば、線形補間で算出可能である。多少の歪みがある場合には、非線形な補間の方が好適な場合もある。次に、S05では、奥行き値とデフォーカス量のテーブル作成を行う。具体的に、S03で算出したデフォーカス量と、補間処理により求めたキャリブレーションボード50の奥行き値の対応関係を求める。例えば、基準面3に近い奥行きでは撮影画像のコントラスト値Cは高く、撮影部2に近づくにつれて、撮影画像のコントラスト値は低下するため、図10に示す曲線が描かれる。図10では、デフォーカス量としてコントラスト値を用いた場合を示している。曲線は最小二乗法などを用いて関数近似しても良い。
【0028】
この手法では画像の画面全体でデフォーカスが変動しないという仮定を置いている。この過程が成立するのは、プロジェクターの収差による影響が小さく、投影パターンの位置に応じたデフォーカス量の変動が無視できる場合である。像面湾曲の影響が大きい場合には、投影画像の中心部と周辺部でデフォーカス量が変わるため、厳密なキャリブレーションが必要になることもある。厳密にキャリブレーションするためには、画像のピクセルごとに個別にデフォーカス量と奥行き値の関係を求める必要がある。
【0029】
図11を用いてこれを説明する。この手法ではキャリブレーションボード50をY軸方向に動かすため、図11に示すようにキャリブレーションボード移動部54が必要になる。キャリブレーションボード50を動作させる幅がYs、シフトさせる回数をN回とすると、シフトピッチSpは以下の式(9)で記述される。
Sp=Ys/N・・・式(9)
キャリブレーションボード50のシフトピッチSpが小さいほど、キャリブレーションの精度は向上する。この場合の厳密なキャリブレーションの処理では、図8に示したフローに対応する処理の前後に追加の処理を行う。まず、S01のパターン撮影の前にキャリブレーションボード50を初期位置に移動する。その後、図8のS01からS05を実行する。厳密なキャリブレーションの場合、撮影回数をカウントしておき、S05の処理が完了するたびに撮影回数がキャリブレーションを終了すべき所定回数N回に達したかどうかを判定する。もし、撮影回数が所定回数N回に満たなければ、キャリブレーションボード50をシフトピッチSpだけ移動させた後、S01乃至S06を繰り返す。撮影回数が所定回数N回となった場合は、キャリブレーションを終了する。このような処理に寄れば、画像の全画素に対してデフォーカス量と奥行き位置の対応関係が求まるため、キャリブレーションの精度が向上する。
【0030】
次に、実施形態1の形状計測装置100による形状計測の手順を説明する。形状計測は図12に示すフローチャートに沿って行われる。該フローチャートに対応する処理は、パターン投影部1、撮影部2、位相情報算出部7、デフォーカス量算出部8及び三次元形状算出部9が、対応する処理プログラムを実行することにより実現される。
【0031】
まず、S10では、パターン投影(S11)と画像撮影(S12)からなる画像撮影工程が実施される。S10のパターン投影ではパターン投影部1により撮影対象シーンにパターンを投影する。S12では撮影部2により撮影対象シーンを画像撮影する。続いて、S20では、フーリエ変換(S21)、基本周波数成分抽出(S22)、原点へのシフト(S23)、逆フーリエ変換(S24)、位相情報抽出(S25)からなる位相情報算出工程が位相情報算出部7により実施される。
【0032】
実施形態1の位相情報の算出はフーリエ変換法に基づいている。そのため、非特許文献1で開示されるフーリエ変換法の原理について図13を参照して説明する。図13では、パターン投影部1と撮影部2が平行な場合の光学的な配置を示す。パターン投影部1の光軸CからLだけ離れた位置に基準面3がある。また、パターン投影部1の光軸CからZだけ離れた位置に物体面Mがあるとする。基準面3から物体面Mまでの距離をHとする。投影部により、基準面上にはピッチpで周期的に変動する正弦波状のパターンが投影される。撮像面上での観察される像gB(x,y)はフーリエ級数で式(10)のように表現される。

ここでf0は観察される縞パターンの基本周波数であり、以下の式(11)で記述される。
=1/p・・・式(11)
pは基準面上でのパターンのピッチ、Aは強度の最大振幅である。シーンに計測対象がある場合、基準面から計測対象までの距離に応じて観測される縞の位相は変化する。例えば、基準面上ではBの位置に投影され、像面に結像される点があるとする。ここで、物体が基準面から距離Hだけ離れているとすると、点Mに投影されるため、像面上では距離Sだけずれた状態で観測される。この距離はxとyに依存して変化するため、式(10)は以下の式(12)のように修正される。

ここで、φ(x,y) = 2πf0S(x,y) である。また、物体表面の反射率r(x、y)の変動も考慮する必要がある。したがって、式(12)は以下の式(13)のように変形される。

式(13)で与えられる歪んだパターン像は、次のように解釈することができる。位相φ(x、y)と振幅r(x、y)と空間搬送周波数nfoを有する多次元信号である。位相が三次元形状の情報を有しているため、不均一な反射振幅r(x、y)を分離して、φ(x、y)をいかにして求めるかという問題になる。
式(13)を以下の式(14)のように書き直す。

ここで、qn(x,y) = Anr(x,y)・exp(inφ(x,y))である。FFTアルゴリズムにより、yを固定にして、式(14)の1次元のフーリエ変換を計算すると以下の式(15)になる。

ここで、G(f、y)とQn(f、y)は、g(x、y)とqn(x、y)のyを固定して変数xに関するそれぞれフーリエスペクトルである。ほとんどの場合、すべてのスペクトルQn(f−nf、y)は基本周波数fによって互いに分離される。
そこで、n=1のときのスペクトル成分Q(f−nfy)を選び、逆フーリエ変換を行い、以下の式(16)で記述される複素信号を得る。

また、基準面上での複素信号は式(10)より、以下で与えられる。

式(16)、式(17)から以下の式(18)が与えられる。

ここで、*は複素共役を表す。式(18)の|A|r(x、y)は実関数であるため、複素ロガリズムを計算すると、以下の式(19)になる。

このような演算により、不要な成分である物体表面の反射率r(x、y)と抽出すべき位相情報φ(x、y)を分離することができる。
【0033】
次に抽出した位相情報から高さに変換する方法について述べる。図13の△BCOと△BMB’の相似の関係から、以下の式(20)の関係が成り立つ。
M=D・H/(H+Zs)・・・式(20)
また、式(12)のφ(x、y)=2πf0S(x、y)に式(20)を代入すると、以下の式(21)が成り立つ。
H=Zφ(x、y)/{2πfD−φ(x、y)}・・・式(21)
ただし、観測できる位相情報は−π〜+πに折りたたまれているφw(x、y)である。位相の連続性を利用するなどして、位相接続を実施する必要がある。これは以下の式(21)の次数mを決定することに対応する。
φ(x、y) = 2π・m + φw(x、y)・・・式(21)
通常の位相接続では形状の連続性を仮定して行う。しかし、図1に示すように複数物体が存在するシーンでは、物体の形状が不連続であるため、その仮定が成り立たず、正しく位相接続を行うことができない。以上が、フーリエ変換法による位相情報の算出と奥行き計測の原理である。
【0034】
上記、フーリエ変換法の原理に基づく位相情報算出工程(S20)の処理を説明する。S21のフーリエ変換では、撮影した画像を走査線毎にフーリエ変換する。S22の基本周波数成分抽出では、フーリエ変換後のデータのうち周波数領域で基本周波数f0付近のデータのみをフィルタリングにより抽出する。基本周波数f0は投影した縦縞のパターンの基準面上でのピッチpから式(11)で求める。S23の原点へのシフトでは、抽出したf付近のデータを原点へシフトさせる。原点シフトさせたf付近のデータをS24で逆フーリエ変換し、S25の位相情報抽出で位相情報を抽出する。
【0035】
図5のパターン投影された撮影画像63をもとにして、折りたたまれた位相情報φw(x、yi)を算出した結果の例を図14に示す。画像の走査線yi上のデータからの位相情報を下のグラフに示した。円柱64と角柱65の位相情報からは詳細な形状変化が得られているが、物体の位置が不連続であるため、位相を接続することができないことがわかる。
【0036】
次に、S30では、デフォーカス量算出(S31)、デフォーカス量信頼度算出(S32)からなるデフォーカス量算出工程を実行する。S31のデフォーカス量算出では、デフォーカス量の算出には、注目画素の近傍領域内のコントラスト値、または、標準偏差値を用いる。
【0037】
図15(a)にコントラスト値の場合の算出方法と結果を示す。注目画素近傍の所定範囲内の領域66がコントラスト値の計算領域の例である。このデフォーカス量計算領域内で式(1)のコントラスト値を計算する。計算領域をラスタ走査していき画像の全領域内でコントラスト値を算出する。ただし、コントラストの計算領域は基準面における投影パターンピッチpよりも広い範囲で行う必要がある。上記条件を満たさないと領域内に輝度の最大値、輝度の最小値を含まない可能性があるため正しくコントラストを評価できないためである。図15(a)では、画像のy座標がyiの位置でのコントラストの計算結果を下のグラフに記述した。合焦領域である基準面上ではパターンが結像関係にあるため、コントラストは高くなる。手前にある角柱64とさらに手前にある円柱64ではデフォーカスが発生するため、コントラストが低下する。手前にある円柱64の方がパターンのデフォーカスが大きいため、コントラスト値はより低くなる。
【0038】
一方、図15(b)に標準偏差値の場合の算出方法と結果を示す。図中の注目画素近傍の所定範囲内の領域67が標準偏差値の計算領域である。この標準偏差値計算領域内で式(2)の標準偏差値を計算する。計算領域をラスタ走査していき画像の全領域内で標準偏差値を算出する。ただし、標準偏差値の計算領域は基準面における投影パターンピッチpよりも広い範囲で行う必要がある。上記条件を満たさないと領域内の輝度のばらつきを正しく評価できない可能性があるためである。標準偏差値の計算結果を下のグラフに記述した。合焦領域である基準面上ではパターンが結像関係にあるため、画像輝度のばらつきは大きくなり、標準偏差値は高くなる。手前にある角柱65とさらに手前にある円柱64ではデフォーカスが発生するため、画像輝度のばらつきは小さくなり、標準偏差値は低下する。手前にある円柱64の方がデフォーカス量が大きいため、標準偏差値はより低くなる。
【0039】
コントラスト値と標準偏差値いずれを用いる場合でも物体と物体の境界、あるいは、表面の方向が急激に変わる部分ではコントラスト値と標準偏差値が本来の奥行きに対応する値よりも高くなる。この原因は3つ考えられる。1つ目は物体の表面方向の違いに起因する反射率の違い、2つ目は投影部から物体までの距離の違い、3つ目は物体から撮影部2までの距離の違いである。
【0040】
まず、第一の理由である物体の表面方向の違いに起因する反射率の違いについて述べる。投影部からの光の物体への入射方向と撮影部2の方向が正反射角に近いほど表面は明るくなる。逆に、正反射方向から遠いほど表面は暗くなる。物体表面が完全拡散であればこのようなことは起きないが、それ以外の表面ではこの現象が発生する。次に投影部から物体までの距離の違いについて述べる。投影部からの光の強度は距離に比例して減衰する。このため、投影部から物体までの距離が小さいほど、入射光強度が高いため、物体表面は明るくなる。逆に、投影部から物体までの距離が大きいほど、入射光強度が低いため、物体表面は暗くなる。
【0041】
次に物体から撮影部2までの距離の違いについて述べる。物体からの反射光強度も距離に比例して減衰する。物体から撮影部2までの距離が小さいほど、物体表面は明るくなる。一方、物体から撮影部2までの距離が大きいほど、物体表面は暗くなる。
実際のシーンではこれら3つの現象が複合して発生する。このような部分はデフォーカス量の算出結果の信頼性が低いと考えられる。そこで、S32のデフォーカス量信頼度算出において信頼度の評価を行う。
【0042】
デフォーカス量信頼度P(x、y)の算出は以下の式(22)を用いる。
P(x、y)=Df(x、y)−Df(x−1、y)・・・式(22)
Df(x、y)はx=x、y=yにおけるデフォーカス値が格納されている。上記式(22)はデフォーカス値の差分(微分)をとることに対応する。すなわち、デフォーカス値の変化量が大きいところはP(x、y)の絶対値が大きくなる。P(x、y)の絶対値が所定の閾値以下ならば信頼性が高いとし、デフォーカス量をそのまま用いる。一方、閾値よりも大きければ信頼性が低いとし、補正処理を行う。以下では、この閾値をPtで表し、信頼性を評価する基準となる。補正処理はS40の位相接続工程の位相情報補正(S43)で行う。詳細は後で記述する。
【0043】
図16(b)、(c)に画像63におけるデフォーカス値Dfの算出結果とデフォーカス信頼度P(x、y)の算出結果をグラフ化したものを示す。デフォーカス値の変化が大きい領域では、デフォーカス信頼度の絶対値が大きくなり、デフォーカス値の信頼性は下がる。
【0044】
S40では、位相の次数算出(S41)、位相接続(S42)、位相情報補正(S43)からなる位相接続工程を三次元形状算出部9が実行する。S41の位相の次数算出では、まず事前に実施したキャリブレーションの結果からデフォーカス量Df(x、y)を奥行き値Z(x、y)に変換する。奥行き値Z(x、y)から式(21)を変形した以下の式(23)を用いて位相φ(x、y)を求める(Z=L−Hの関係を用いた)。
φ(x、y)=2πfD(1−Z(x、y)/L)・・・式(23)
求めたφ(x、y)から以下の式(24)を用いて次数mを算出する。
m=Int[φ(x、y)/2π]・・・式(24)
ここで、Int[]は少数点以下を切り捨てることを意味する。図16(d)に算出した次数mをグラフ化したものを示す。デフォーカス値の信頼性が基準よりも低い領域は、位相の次数は算出しない。グラフでは斜線で示す領域である。S42の位相接続では算出した位相の次数mと、S25における位相情報抽出の結果φw(x、y)に基づき、位相を接続する。具体的には以下の式(25)を用いる。
φ(x、y) = 2π・m + φ(x、y)・・・式(25)
式(25)は式(21)と同じ形だが、デフォーカス値の信頼性が基準よりも低い領域を含むため、本来のφ(x、y)とは異なる。区別するために、デフォーカス値の信頼性が基準よりも低い領域を含む場合の位相をφ(x、y)と表記した。
【0045】
図16(e)にφ(x、y)の算出結果をグラフ化したものを示す。デフォーカス値の信頼性が基準よりも低い領域を斜線で示した。S43の位相情報補正ではφ(x、y)のデフォーカス値の信頼性が基準よりも低い領域の欠落した情報を補正して本来のφ(x、y)を求める。欠落情報の補正は接続前の位相φの連続性を用いる。なお、図16(f)は、図16(e)に次数mを反映させて示したグラフである。
【0046】
次に、補正方法を、図17を用いて具体的に説明する。図17(a)は、図16(e)に対応する接続前の位相を示すグラフである。図17(b)には、位相φ(x、yi)と、位相φ(x、yi)の微分値(差分値)であるdφw(x、yi)/dxのグラフを示す。位相の微分値の絶対値が大きい位置、x=xV1、xV2、xV3では位相の不連続が発生する。また、位相の微分値の正負が逆転する位置x=xI1では面の傾きが変化する。これらの点を位相変化の特異点と呼ぶことにする。
【0047】
位相変化が小さい特異点以外の領域では位相の不連続が生じないため、形状の連続性は保証される。したがって、φm(x、yi)の欠落した領域を位相φw(x、yi)の連続性を利用して補正することが可能になる。図17(c)のφm(x、yi)のグラフではデフォーカス値の信頼性が基準よりも低い領域のグラフを描かなかったので空白になっている。このような場合、空白の近傍から特異点に向かってφwの連続性を利用して補正する。具体的には図中の矢印方向に特異点と交わるまでこの操作を続ける。補正後の位相を図17(d)に補正した位相φ(x、yi)として示す。
【0048】
最後にS50の形状算出工程で、三次元形状算出部9が形状の算出を行う。形状算出工程は形状情報算出(S51)からなる。S51の形状情報算出では式(23)を変形した以下の式(26)に基づき、位相情報φ(x、y)を奥行き情報Z(x、y)に変換する。
Z(x、y)=L(1−φ(x、y)/(2πfD))・・・式(26)
図17(e)に最終的に計算された形状情報を示す。不連続な奥行きにある物体に対しても1回のパターン投影のみで詳細な形状計測が可能になることがわかる。以上のようにして、本実施形態では、形状情報を算出することができる。
【0049】
[実施形態2]
図18に発明の実施形態2に係る形状計測装置200の概略図を示す。図1に示した実施形態1の構成と比較して投影パターン切換部14が追加された構成である。実施形態2では位相情報の取得に位相シフト法を用いる。位相シフト法では図2に示す正弦波状のパターンの位相をずらしながら3種類以上投影する必要がある。実施形態2では、正弦波状のパターンをπ/2ずつ位相をずらしながら4種類投影することにする。
【0050】
この4種類のパターンの例は図19に示す通りである。図19では、位相シフト量が0、π/2、π、3π/2の場合をそれぞれ示している。このような位相の異なる4種類のパターンを投影することで、対象のテクスチャに影響されにくい位相情報の取得が可能になるという効果が得られる。さらに、デフォーカス量算出部8におけるデフォーカス量の算出では、信頼性の高いデフォーカス量算出が可能になる。ただし、投影するパターンが4種類であるため、パターンを切り換えて撮影している最中に被写体が動く可能性がある。したがって、動きの速い被写体に対応するためには、高速にパターンの切り換えが可能な投影部と、フレームレートが高速な撮影部2が必要になる。
【0051】
高速にパターンの切り換えが可能な投影部としては、DMDを表示素子として用いたプロジェクター、高速応答性のある液晶表示素子を用いたプロジェクターなどが考えられる。フレームレートが高速な撮影部2としては、市販されている高速カメラを用いればよい。高速カメラを用いれば100fpsや1000fpsでの画像取得も可能である。また、フーリエ変換法と同様に観測できる位相は0〜2πであるため、それを超える位相変化が発生した場合には位相接続が必要になる。事前のキャリブレーションは実施形態1の形状計測装置100と同様の操作をするため説明を省略する。デフォーカス量と奥行き位置の関係はキャリブレーションにより、取得されているものとする。
【0052】
実施形態2の形状計測装置200による形状計測の手順を説明する。形状計測は図26に示すフローチャートに沿って行われる。該フローチャートに対応する処理は、パターン投影部1、撮影部2、位相情報算出部7、デフォーカス量算出部8、三次元形状算出部9及び投影パターン切換部14が、対応する処理プログラムを実行することにより実現される。
【0053】
S10’の画像撮影工程は、パターン投影(S11)、画像撮影(S12)、撮影枚数判定(S13)、パターン位相のπ/2シフト(S14)からなる。S10’の画像撮影工程は実施形態1の画像撮影工程と比較して、S13における撮影枚数判定、S14のパターン位相のπ/2シフトが追加された点で異なる。
【0054】
S11では投影部1により、基準となる位相パターンを投影する。S12の画像撮影では撮影部2により撮影対象シーンを画像撮影する。S13では撮影枚数が4枚未満か否かの判定を行う。撮影枚数が4枚以上であれば、次の位相情報算出工程(S20’)とデフォーカス量算出工程(S30’)に進む。撮影枚数が4枚未満であれば、S14に進む。S14では、投影パターン切換部14を用いてパターンの位相をπ/2シフトさせる。その後、S11におけるパターン投影とS12の画像撮影とを行う。このようにしてS10’の画像撮影工程では、投影パターンの位相がπ/2ずつ異なる画像が4枚得られる。
【0055】
続いて行うS20’の位相情報算出工程は、位相シフト画像による位相情報算出(S26)からなる。S26で行う処理を図21を用いて説明する。図21は横軸に位相を縦軸に画像輝度値をとったものである。ここでは、位相シフト量が0、π/2、π、3π/2の各撮影画像について同一座標位置(x、y)の画素の輝度値を抽出し、対応する位置にプロットする。画像座標が(x、y)のときの0、π/2、π、3π/2のときの輝度値をそれぞれI0(x、y)、Iπ/2(x、y)、Iπ(x、y)I3π/2(x、y)とする。このとき、画像座標(x、y)の位置での位相情報φw(x、y)は以下の式(27)で算出することができる。
φw(x、y)=tan-1{I3π/2(x、y)−Iπ/2(x、y)}/{I(x、y)−Iπ(x、y)}・・・式(27)
フーリエ変換法では注目画素の投影パターンの変化に応じた輝度変動のみで処理が完結するため、対象のテクスチャの変動に強い位相算出が可能になる。
【0056】
続くS30’では、デフォーカス量算出(S31)、デフォーカス量信頼度算出(S32)、処理枚数判定(S33)、画像変更(S34)、結果統合(S35)からなるのデフォーカス量算出工程が、デフォーカス量算出部8により実施される。S31のデフォーカス量算出工程では、実施形態1と同様、デフォーカス量の算出に注目画素の近傍領域内のコントラスト値、または、標準偏差値を用いるので説明は省略する。S32のデフォーカス量信頼度算出も実施形態1と同様、デフォーカス値の差分(微分)を算出するので説明は省略する。
【0057】
S33の処理枚数判定S33では、処理枚数が4枚未満か否かの判定を行う。処理枚数が4枚以上の場合には、S35の結果統合に進む。処理枚数が4枚未満の場合、S34の画像変更に進む。S34では処理の対象をデフォーカス量算出を実施していない投影パターンの撮影画像に変更する。S35では異なる投影パターンで実施したデフォーカス量の算出結果と、デフォーカス信頼度の算出結果を統合する。
【0058】
ここでは、位相シフト量が0の画像を初期画像とし、デフォーカス信頼度が基準よりも低い領域を抽出する。位相シフト量が異なる画像でこの領域のデフォーカス信頼度が基準以上の場合には、そのときのデフォーカス値を初期画像の結果に上書きする。これを位相シフト量が異なる画像に対して繰り返して、デフォーカス信頼度が基準以上のデフォーカス量を統合することで、デフォーカス信頼度が基準よりも低い領域が小さくなる。複数パターンの撮影画像の結果を統合することで、デフォーカス信頼度の高い領域のデータを選定することができるため、精度の高いデフォーカス量算出が可能になる。なお、S40の位相接続工程とS50の形状情報算出工程に関しては実施形態1と同様の操作をするため説明を省略する。
【0059】
以上の実施形態2により、撮影枚数が4枚に増加するものの、テクスチャの変動に強い位相算出と、信頼度の高いデフォーカス量算出が可能になる。
【0060】
[実施形態3]
発明の実施形態3に係る形状計測装置は図18に示した実施形態2と同様の構成を有する。パターン投影部1で投影するパターンは図22(a)、(b)に示す2種類の矩形波パターンである。矩形波パターンの周期をpとし、図22(a)の矩形波を基準位相とすると、図22(b)のパターンはp/2だけ位相をずらしたものである。投影パターン切換部14でパターン投影部1で投影するパターンを切り替えながら、撮像部2でそれぞれのパターンが投影された撮影対象シーンの画像を撮像する。
【0061】
デフォーカス量算出部8では、撮影画像の各画素におけるデフォーカス量を式(1)で示したコントラスト値、式(2)で示した標準偏差値等を用いて計算する。
【0062】
次に、本実施形態における位相情報算出部7による、図20のS20'における位相情報の算出方法について説明する。ここでは、図22(a)のパターンを投影し、撮影したときの画像をIRp(x、y)、図22(b)のパターンを投影し、撮影したときの画像をIRn(x、y)とする。
【0063】
まず、IRp(x、y)とIRn(x、y)の大小比較をし、2値化画像B(x、y)を生成する。IRp(x、y)>=IRn(x、y)のときB(x、y)=1とし、IRp(x、y)<IRn(x、y)のときB(x、y)=0とする。図22(c)に2値化画像B(x、y)の生成例を示す。
【0064】
次に2値化画像B(x、y)から以下の式(28)により、エッジ画像Eを生成する。
【0065】
E(x、y)=B(x、y)―B(x+1、y)・・・式(28)
式(28)の計算により、エッジ位置には1、または、−1の値が与えられる。次に注目画素xの両端のエッジ位置を探索する。これはエッジ画像E上で、最も近接する1、または、−1の値を探索することにより成される。探索された左側のエッジ位置をE、右側のエッジ位置をEとすると、位相φ(x、y)は以下の式(29)で計算される。
【0066】
φ(x)=2π・(x―E)/(E―E)―π・・・式(29)
これを全てのy座標に対して計算することで位相情報φ(x、y)が求められる。
【0067】
三次元形状算出部9では、デフォーカス量算出部8で算出されたデフォーカス量を基に式(24)により位相次数mを決定する。さらに、式(25)により位相情報算出部7で算出した位相情報φ(x、y)を接続し、接続位相φ(x、y)を求める。必要に応じて位相補正を行い、式(26)を用いて奥行き情報Z(x、y)を計算し、被写体の三次元形状情報を求める。
【0068】
以上の実施形態3により、撮影枚数が2枚に増加するものの、被写体が有するテクスチャ変動に強い位相算出が可能になる。
【0069】
[実施形態4]
発明の実施形態4に係る形状計測装置は図18に示した実施形態2と同様の構成を有する。但し、本実施形態においてパターン投影部1が投影するパターンは図23(a)、(b)に示す2種類の三角波である。図23(b)の三角波は図23(a)の明るさを反転させたものである。投影パターン切換部14でパターン投影部1で投影するパターンを切り替えながら、撮像部2でそれぞれのパターンが投影された撮影対象シーンの画像を撮像する。
【0070】
デフォーカス量算出部8では、撮影画像の各画素におけるデフォーカス量を式(1)で示したコントラスト値、式(2)で示した標準偏差値などを用いて計算する。
【0071】
次に、本実施形態における位相情報算出部7による、図20のS20'における位相情報の算出方法について説明する。ここでは、図23(a)のパターンで撮影したときの撮影画像をITp(x、y)、図23(b)のパターンで撮影したときの撮影画像をITn(x、y)とする。このとき強度比画像Iratioは以下の式(30)で計算される。
【0072】
ratio=ITp(x、y)/ITn(x、y)・・・式(30)
強度比画像Iratioの計算結果を図23(c)に示す。三角波の周期をpとすると位相情報φ(x、y)は以下の式(31)で計算される。
【0073】
φ(x、y)=2π・Iratio・(1−x/p−int(x/p))−π・・・式(31)
ここでint()は小数点以下を切り捨てるという演算を意味する。式(31)により強度比画像Iratioの値が−π〜πの間で線形に変化するように正規化される。φ(x、y)の計算結果の例を図23(d)に示す。三次元形状算出部9では、デフォーカス量算出部8で算出されたデフォーカス量を基に式(24)により位相次数mを決定する。さらに、式(25)により位相情報算出部7で算出した位相情報φ(x、y)を接続し、接続位相φ(x、y)を求める。
【0074】
必要に応じて位相補正を行い、式(26)を用いて奥行き情報Z(x、y)を計算し、被写体の三次元形状情報を求める。
【0075】
以上の実施形態4により、撮影枚数が2枚に増加するものの、被写体が有するテクスチャ変動に強い位相算出が可能になる。
【0076】
[実施形態5]
発明の実施形態5に係る形状計測装置300の概略上面図を図24に示す。図1で示した実施形態1の構成との違いは、位相情報算出部7の代わりに、撮影画像のパターンの明るさ変化からパターンの局所的な配置情報を算出する局所配置情報算出部71が使われる点である。
【0077】
パターン投影部1で投影するパターンは図25に示すランダム性を有するパターン(ランダムパターン)である。撮像部2で図25(a)に示すランダム性を有するパターンが投影された撮影対象シーンの画像を撮像する。このときの撮影画像をIRand(x、y)とする。
【0078】
局所配置情報算出部71では、2値化処理、符号化処理、相関演算処理、候補選択処理という4つの処理が行われる。2値化処理では、撮影画像IRand(x、y)が画像の明暗に応じた閾値処理により2値化される。符号化処理では、2値化処理の結果に基づいて符合化画像Code(x、y)が生成される。明部に対して符合「1」が、暗部に対して符号「0」がそれぞれ割り与えられる。相関演算処理では、まず、図25(b)に示すように符号化画像の注目画素近傍の所定範囲(−Rc〜+Rc)が切り出される。そして、以下の式(32)により、切り出された領域に対してランダムパターンRandCode(x)との相関演算が行われる。

上記演算式によれば、相関値Corre(x)が小さいほど、相関が高くなることを意味する。図25(c)に相関演算の結果の一例を示す。候補選択処理では、相関演算結果に基づいて複数の候補を選択する。図25(c)に示す例ではMin1、Min2という2つ候補が選択される。このような場合には、複数の候補が選択されたため、奥行きを一意に求めることができない。
【0079】
そこで、候補を絞り込むために、デフォーカス量算出部8により求められたデフォーカス量を用いる。デフォーカス量算出部8では、撮影画像の各画素におけるデフォーカス量を式(1)で示したコントラスト値、式(2)で示した標準偏差値等を用いて計算する。撮影画像上の位置とデフォーカス量、投影パターン上の位置の関係は事前のキャリブレーションにより求められている。そのため、図25(c)に示す例では、点線枠で囲んだ領域Candに絞られる。これにより、2つの候補から1つの候補Min1を選択し、奥行きを求める。上記処理を画像の全範囲に対して実施することで、撮影対象シーンの奥行き情報Z(x、y)を計算する。
【0080】
以上の実施形態5により、投影するパターンが周期的なパターンでなくても被写体の三次元形状計測が可能となる。
【0081】
[実施形態6]
発明の実施形態6に係る形状計測装置の構成は、実施形態1の構成である図1と同一である。実施形態1乃至5ではパターン投影部1の焦点を基準面3に合わせ、投影光学系12によるボケを利用してデフォーカス量を算出した。しかし、実施形態6では撮像部2の結像光学系を用いて焦点を基準面3に合わせ、撮像光学系によるボケを利用してデフォーカス量を算出する。
【0082】
撮像部2の撮像光学系によるデフォーカスと、パターン投影部1の投影光学系によるデフォーカスを分離するために、投影光学系のデフォーカスを無視できるような条件で投影する必要がある。具体的にはパターン投影部1の絞りを十分に絞り、被写界深度を深くしておく必要がある。計測範囲に応じて、被写界深度の計算式(3)、(4)、および、回折によるボケの限界の算出式(5)を使用して投影光学系のF値を適切に設定する。
【0083】
撮像部2の焦点を基準面3に合わせたので、基準面から手前に離れるほど、デフォーカス量は大きくなる。デフォーカス量算出部8では、撮影画像の各画素におけるデフォーカス量を式(1)で示したコントラスト値、式(2)で示した標準偏差値などを用いて計算する。位相情報算出部7では実施形態1と同様に正弦波が投影された被写体の撮影画像から、フーリエ変換法により位相情報φ(x、y)を算出する。
【0084】
三次元形状算出部9では、デフォーカス量算出部8で算出されたデフォーカス量を基に式(24)により位相次数mを決定する。さらに、式(25)により位相情報算出部7で算出した位相φ(x、y)を接続し、接続位相φ(x、y)を求める。本実施形態6では投影パターンとして正弦波を1パターン投影し、フーリエ変換法により、位相を算出する方法を例に挙げて説明した。しかし、構成を実施形態5と同一にし、ランダムパターンを投影する方法も用いることができる。また、パターン切換部を追加した実施形態2乃至4と同一の構成にして、位相の異なる複数の正弦波を投影する方法、矩形波を投影する方法、三角波を投影する方法なども用いることができる。
【0085】
以上の実施形態6により、撮像光学系がパンフォーカス条件を満たさなくても三次元形状計測が可能になる。
【0086】
[実施形態7]
発明の実施形態7に係る形状計測装置の構成は、実施形態1の構成である図1と同一である。実施形態1乃至5ではパターン投影部1の焦点を基準面3に合わせ、投影光学系12によるボケを利用してデフォーカス量を算出した。また、実施形態6では撮像部2の焦点を基準面3に合わせ、撮像レンズ22によるボケを利用してデフォーカス量を算出した。しかし、実施形態7では、パターン投影部1の投影光学系によるボケと撮像部2の撮像光学系によるボケの両者を合わせた複合ボケを利用してデフォーカス量を算出する。
【0087】
パターン投影部1と撮像部2の焦点は基準面3、または、基準面3よりも後方に合わせる。このようにすることで、基準面から手前に離れるほど、複合ボケは大きくなるため、パターン投影部1と撮像部2のボケを分離してデフォーカス量を算出する必要がなくなる。デフォーカス量算出部8では、撮影画像の各画素におけるデフォーカス量を式(1)で示したコントラスト値、式(2)で示した標準偏差値などを用いて計算する。位相情報算出部7では実施形態1と同様に正弦波が投影された被写体の撮影画像から、フーリエ変換法により位相情報φ(x、y)を算出する。
【0088】
三次元形状算出部9では、デフォーカス量算出部8で算出されたデフォーカス量を基に式(24)により位相次数mを決定する。さらに、式(25)により位相情報算出部7で算出した位相情報φ(x、y)を接続し、接続位相φ(x、y)を求める。本実施形態7では投影パターンとして正弦波を1パターン投影し、フーリエ変換法により、位相を算出する方法を例に挙げて説明した。しかし、構成を実施形態5と同一にし、ランダムパターンを投影する方法も用いることができる。また、パターン切換部を追加した実施形態2乃至4と同一の構成にして、位相の異なる複数の正弦波を投影する方法、矩形波を投影する方法、三角波を投影する方法なども用いることができる。
【0089】
以上の実施形態7により、撮像光学系、および、投影光学系がパンフォーカス条件を満たさなくても三次元形状計測が可能になる。
【0090】
本発明による三次元形状計測装置は様々な応用に利用できる。CGなどの分野では実在する物体のモデリングを行うことができる。これにより従来は手動で実施していたモデリングを自動化することができ、CG製作の効率化が期待できる。少ないパターン数で精度の高い距離算出が可能なため、高速な応答が要求されるロボットハンド用のビジョンとして用いることもできる。また、比較的少ないパターンでの形状計測が可能なため、動いている被写体に対しても形状計測を実施できる。小型のプロジェクターと組み合わせれば、ディジタルカメラなどの小型の撮像デバイスにも搭載でき、三次元形状を用いた高度な処理のための入力情報として用いることができる。
【0091】
また、本発明は、実施形態1乃至7と同等の処理を、コンピュータプログラムでも実現できる。この場合、図1及び図18のブロック7乃至9及び14等の構成要素の各々は関数、もしくはCPUが実行するサブルーチンで機能させれば良い。また、通常、コンピュータプログラムは、CD−ROM等のコンピュータ可読記憶媒体に格納されており、それを、コンピュータが有する読取り装置(CD−ROMドライブ等)にセットし、システムにコピーもしくはインストールすることで実行可能になる。従って、かかるコンピュータ可読記憶媒体も本発明の範疇にあることは明らかである。
【0092】
(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。

【特許請求の範囲】
【請求項1】
明るさ変化を有するパターンを計測空間に投影するパターン投影手段と、
前記パターンが投影された計測空間を撮影する撮像手段とを備え、
前記計測空間に存在する計測対象の三次元形状を計測する三次元形状計測装置であって、
前記撮影手段により得られた撮影画像の前記パターンの明るさ変化から前記パターンの局所的な配置情報を算出する局所配置情報算出手段と、
前記撮影画像における前記パターンのボケ量を算出するボケ量算出手段と、
前記局所配置情報と前記ボケ量とに基づき、前記計測対象の三次元形状を算出する三次元形状算出手段と、
をさらに備えることを特徴とする三次元形状計測装置。
【請求項2】
前記パターン投影手段、あるいは、前記撮像手段の少なくとも一方は結像光学系を有し、
前記パターン投影手段、あるいは、前記撮像手段の少なくとも一方の前記結像光学系は、前記計測空間における基準面に合焦するように構成され、
前記計測空間は前記基準面、前記パターン投影手段の投影範囲及び前記撮影手段の撮影範囲により規定されることを特徴とする請求項1に記載の三次元形状計測装置。
【請求項3】
前記明るさ変化を有するパターンは周期性を有するパターンであり、
前記局所配置情報算出手段は周期性を有するパターンの位相情報を算出することを特徴とする請求項1または2に記載の三次元形状計測装置。
【請求項4】
前記三次元形状算出手段は、前記位相情報を補正する位相情報補正手段を備え、
該位相情報補正手段は、前記ボケ量を前記計測空間の奥行き情報に変換し、該奥行き情報に対応する位相の次数を算出し、該次数に基づいて位相情報を補正し、
前記三次元形状算出手段は、補正された位相情報に基づいて前記計測対象の三次元形状を算出する
ことを特徴とする請求項3に記載の三次元形状計測装置。
【請求項5】
前記ボケ量算出手段は、前記ボケ量の変化量を算出し、該変化量が閾値よりも高いボケ量を除外し、
前記位相情報補正手段は、該変化量が前記閾値以下であるボケ量を前記奥行き情報に変換することを特徴とする請求項4に記載の三次元形状計測装置。
【請求項6】
前記パターン投影手段により投影される前記パターンは、周期性を有する1種類のパターンであって、
前記局所配置情報算出手段は、前記撮影画像を走査線毎にフーリエ変換して、フーリエ変換後のデータから前記周期性を有するパターンの基本周波数の付近のデータを抽出し、抽出したデータを逆フーリエ変換して、前記位相情報を求める
ことを特徴とする請求項3乃至5のいずれか1項に記載の三次元形状計測装置。
【請求項7】
前記パターン投影手段により投影される前記パターンは、位相がシフトされた3種類以上の周期性を有するパターンであって、
前記撮像手段は、前記3種類以上の投影パターンのそれぞれについて撮像を行い、
前記局所配置情報算出手段は、前記3種類以上の投影パターンについて得られた撮影画像のそれぞれについて、同一座標位置における輝度値を取得し、取得した各輝度値と該輝度値に対応する位相のシフト量との関係に基づき、前記位相情報を算出する
ことを特徴とする請求項3乃至5のいずれか1項に記載の三次元形状計測装置。
【請求項8】
前記ボケ量算出手段は、前記3種類以上の投影パターンについて得られた撮影画像のそれぞれについて、前記ボケ量の変化量を算出し、該変化量が閾値以下のボケ量を統合し、
前記位相情報補正手段は、該統合されたボケ量を前記奥行き情報に変換することを特徴とする請求項4に記載の三次元形状計測装置。
【請求項9】
前記ボケ量算出手段は、前記撮影画像の注目画素近傍の所定範囲内におけるコントラスト値に基づき、前記ボケ量を算出することを特徴とする請求項1乃至8のいずれか1項に記載の三次元形状計測装置。
【請求項10】
前記ボケ量算出手段は、前記撮影画像の注目画素近傍の所定範囲内における標準偏差値に基づき、前記ボケ量を算出することを特徴とする請求項1乃至8のいずれか1項に記載の三次元形状計測装置。
【請求項11】
前記周期性を有するパターンが矩形波であることを特徴とする請求項3乃至8のいずれか1項記載の三次元形状計測装置。
【請求項12】
前記周期性を有するパターンが三角波であることを特徴とする請求項3乃至8のいずれか1項記載の三次元形状計測装置。
【請求項13】
前記明るさ変化を有するパターンがランダム性を有するパターンであることを特徴とする請求項1または2に記載の三次元形状計測装置。
【請求項14】
前記ボケ量はデフォーカス量を基準として算出するものであることを特徴とする請求項1乃至13のいずれか1項に記載の三次元形状計測装置。
【請求項15】
明るさ変化を有するパターンを計測空間に投影するパターン投影手段と、
前記パターンが投影された計測空間を撮影する撮像手段とを備え、
前記計測空間に存在する計測対象の三次元形状を計測する三次元形状計測装置による三次元形状計測方法であって、
局所配置情報算出手段が、前記撮影手段により得られた撮影画像の前記パターンの明るさ変化から前記パターンの局所的な配置情報を算出する工程と、
ボケ量算出手段が、前記撮影画像における前記パターンのボケ量を算出する工程と、
三次元形状算出手段が、前記局所配置情報と前記ボケ量とに基づき、前記計測対象の三次元形状を算出する工程と、
を備えることを特徴とする三次元形状計測方法。
【請求項16】
パターンを投影するパターン投影手段と、撮影手段とを備えるコンピュータを、請求項1乃至14のいずれか1項に記載の三次元形状計測装置の各手段として動作させるためのコンピュータプログラム。

【図1】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図17】
image rotate

【図18】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図24】
image rotate

【図25】
image rotate

【図2】
image rotate

【図9】
image rotate

【図15】
image rotate

【図16】
image rotate

【図19】
image rotate

【図23】
image rotate


【公開番号】特開2012−83233(P2012−83233A)
【公開日】平成24年4月26日(2012.4.26)
【国際特許分類】
【出願番号】特願2010−230098(P2010−230098)
【出願日】平成22年10月12日(2010.10.12)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】