3次元形状測定装置、3次元形状測定方法及びプログラム
【課題】複数のカメラ間やカメラとプロジェクタ間での煩雑なキャリブレーションを行うことなく、輝度変化が複雑な被写体においても簡便に被写体の3次元形状を測定する。
【解決手段】露光制御部110は、被写体102と撮像素子104との相対位置を変化させながら、所定の時系列パターンで撮像素子104への露光及び遮光を切り替えて撮像素子104に被写体102を撮像させる。ブレ検出部106は、撮像素子104により撮像された被写体102の画像データ内のブレを検出する。奥行き計算部107は、検出されたブレに基づいて、被写体102の3次元形状を測定する。
【解決手段】露光制御部110は、被写体102と撮像素子104との相対位置を変化させながら、所定の時系列パターンで撮像素子104への露光及び遮光を切り替えて撮像素子104に被写体102を撮像させる。ブレ検出部106は、撮像素子104により撮像された被写体102の画像データ内のブレを検出する。奥行き計算部107は、検出されたブレに基づいて、被写体102の3次元形状を測定する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、被写体の3次元形状を測定するための技術に関するものである。
【背景技術】
【0002】
今日、様々な方式によって物体形状の測定を行う3次元形状測定装置が開発されている。代表的な3次元形状測定装置としては、複数のカメラをステレオ配置し、撮像された各画像データ間で生じた視差と、カメラ同士の位置関係とから三角測量の原理で計測を行うステレオ方式が広く用いられている。しかし、このステレオ方式は、カメラ間の位置関係や撮像素子の受光特性のバラツキを、高い精度で測定して校正を行う必要があり、事前準備が非常に煩雑である。
【0003】
その他の3次元形状測定装置としては、カメラに対してオフセット配置されたプロジェクタから、特定の周期を持つパターン光を投影し、被写体表面に投影されたパターンの位相差から形状の計測を行う、位相シフト法と呼ばれる方法も広く用いられている。また、同様のプロジェクタから2値化されたパターン光を複数回投影することによって、被写体表面の3次元位置を一意に決定する空間符号化法も同様に用いられている。
【0004】
しかし、これらのプロジェクタによるパターン光を用いる方法においても、ステレオ方式と同様に、パターン光を投影するプロジェクタとカメラ間の位置関係の厳密な校正が必要であり、事前準備は同じく煩雑である。
【0005】
複数のカメラ間、もしくはカメラ−プロジェクタ間の厳密な校正が煩雑であるという課題に対して、単一のカメラのみによって簡便に3次元形状の計測を行う手法が提案されている。非特許文献1においては、カメラを露光時に直線運動させて、運動によって生じたブレ長からカメラと被写体との間の距離を計測し、形状を求める手法が開示されている。
【先行技術文献】
【非特許文献】
【0006】
【非特許文献1】H. Y. Lin and C.H. Chang: "Depth from motion and defocus blur", Optical Enginnering, Vol.45, No.12, 2006
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、非特許文献1に開示される手法では、撮像された画像データ内の輝度のグラデーション的な変化をブレとして検出している。そのため、被写体の輝度変化が複雑で、複数のブレ同士が重なるような条件下では、正確に各々のブレ長を検出することが困難となる。
【0008】
そこで、本発明の目的は、複数のカメラ間やカメラとプロジェクタ間での煩雑なキャリブレーションを行うことなく、輝度変化が複雑な被写体においても簡便に被写体の3次元形状を測定することにある。
【課題を解決するための手段】
【0009】
本発明の3次元形状測定装置は、被写体を撮像する撮像手段と、前記被写体と前記撮像手段との相対位置を変化させながら、所定の時系列パターンで前記撮像手段への露光及び遮光を切り替えて前記撮像手段に前記被写体を撮像させる制御手段と、前記撮像手段により撮像された前記被写体の画像データ内のブレを検出する検出手段と、前記検出手段により検出されたブレに基づいて、前記被写体の3次元形状を測定する測定手段とを有することを特徴とする。
【発明の効果】
【0010】
本発明によれば、複数のカメラ間やカメラとプロジェクタ間での煩雑なキャリブレーションを行うことなく、輝度変化が複雑な被写体においても簡便に被写体の3次元形状を測定することが可能となる。
【図面の簡単な説明】
【0011】
【図1】本発明の第1の実施形態に係る3次元形状測定装置の構成を示す図である。
【図2】シャッタ時系列パターン関数E(x)の例を示す図である。
【図3】ブレのない状態での被写体の画像データを示す図である。
【図4】画像データに対してシャッタ時系列パターン関数E(x)によって横方向にブレを付加した場合と、常時開放状態となる通常のシャッタ時系列パターンで撮像した場合との画像データを示す図である。
【図5】本発明の第1の実施形態に係る3次元形状測定装置の動作を示すフローチャートである。
【図6】ステップS510におけるブレ検出処理の詳細を示すフローチャートである。
【図7】簡単な被写体として点光源を設定し、撮像装置を移動距離xfだけ光軸に直交する方向に平行移動させたときの様子を示す図である。
【図8】撮像装置の移動方向を被写体に対して円弧を描くようにした様子を示す図である。
【図9】撮像装置を直線ステージによって往復移動させる様子を示す図である。
【図10】撮像装置を撮像レンズの光軸方向に対して平行な方向に移動させる様子を示す図である。
【図11】本発明の第2の実施形態に係る3次元形状測定装置の構成を示す図である。
【図12】本発明の第2の実施形態に係る3次元形状測定装置の動作を示すフローチャートである。
【発明を実施するための形態】
【0012】
以下、本発明を適用した好適な実施形態を、添付図面を参照しながら詳細に説明する。
【0013】
先ず、本発明の第1の実施形態について説明する。図1は、本発明の第1の実施形態に係る3次元形状測定装置の構成を示す図である。図1において、撮像装置101は、測定対象となる被写体102を撮像する。撮像装置101は、撮像光学系である撮像レンズ103を介して被写体102の投影像を撮像素子104で記録する。シャッタ105は、被写体102の投影像の撮像素子104への露光及び遮光を任意のタイミングで切り替える。図1において、シャッタ105は、撮像素子104の直前に配置されるフォーカルプレーンシャッタとしているが、撮像レンズ103に内蔵される形式のレンズシャッタ、もしくは撮像素子104の機能として実装されている電子シャッタ等を用いてもよい。ブレ検出部106は、撮像素子104で記録された画像データを取得し、画像データ内に存在するブレの位置を検出するとともに、そのブレ長を計測する。奥行き計算部107は、ブレ検出部106によって検出されたブレの位置及びブレ長から、撮像レンズ103と被写体102との間の奥行き、即ち被写体102の形状を計算する。直線ステージ108は、撮像装置101を直線移動させる相対位置制御手段であり、撮像される画像データにブレを生じさせる。直線ステージ108の内部には、撮像装置101の移動距離xを計測する位置変化計測手段であるエンコーダ109が搭載されている。
【0014】
露光制御部110は、直線ステージ108を用いて撮像装置101を移動させ、移動中に後述する所定のシャッタ時系列パターンに従ってシャッタ105の制御を行い、撮像素子104の画像データの記録期間中に露光及び遮光を切り替える。シャッタ時系列パターン保持部111は、露光制御部110がシャッタ105の露光及び遮光を時系列で切り替えるための所定のシャッタ時系列パターンを保持している。シャッタ時系列パターンは撮像装置101の原点からの位置xを入力として、露光時の出力を1、遮光時の出力を0とする関数E(x)(0≦x≦xf)で表される。本実施形態におけるシャッタ時系列パターンは、撮像される画像データにおいて、重畳したブレ同士の中から正確に1つのブレを検出するために、ブレを符号化する関数として作用する。そのため、関数E(x)は以下の式1、式2で示されるように、自己相関関数がインパルス状のδ関数に近い形状を持つと同時に、任意の関数A(x)との相互相関関数が0に近い性質を持つ必要がある。
【0015】
【数1】
【0016】
このとき、A(x)≠E(x)であり、A(x)は一般的な画像データを示す関数である。こうした特性を持つ関数はいくつか知られており、例えば擬似ランダム性を持つM系列や周波数変化が連続的なチャープ信号等をE(x)として用いることができる。但し、実際には式2において、あらゆるA(x)で常に0となるE(x)は存在しないため、可能な限り0に近いことが望ましい。もちろん、式1、式2を良好に満たす関数であれば、解析的に求めた関数でなく、数値的に求めた関数をE(x)として使用しても同様の効果を得ることができる。
【0017】
以上の条件によって作成されるシャッタ時系列パターン関数E(x)の例を図2に示す。図2において、横軸が原点からの位置x、縦軸の1がシャッタの露光、0が遮光を示す。図3は、ブレのない状態での被写体の画像データを示す図である。例えば、図3に示す画像データに対してシャッタ時系列パターン関数E(x)によって横方向にブレを付加した場合、図4(a)に示すようにブレによる輝度変化が階段状となる。なお、常時開放状態となる通常のシャッタ時系列パターンで撮像した場合には、図4(b)に示すように、ブレによる輝度変化が滑らかなグラデーション状となる。
【0018】
図5は、本発明の第1の実施形態に係る3次元形状測定装置の動作を示すフローチャートである。ステップS501において、露光制御部110は、直線ステージ108を制御して、撮像装置101を移動方向112の方向に移動させる。このときの移動は等速直線運動とする。移動方向は、撮像レンズ103の光軸に対して直交しており、撮像素子104の画素の格子配置に対して平行な方向とする。
【0019】
ステップS502において、露光制御部110は、撮像素子104のリセットを行い、画像データIの記録を開始する。このときの撮像装置101の位置xを原点とする。ステップS503において、露光制御部110は、エンコーダ109を読み取り、ステップS502における原点からの撮像装置101の移動距離xsを取得する。さらに露光制御部110は、シャッタ時系列パターン保持部111から、シャッタ時系列パターンE(xs)を参照する。
【0020】
ステップS504において、露光制御部110は、シャッタ時系列パターンE(xs)に従って、現在の撮像装置101の移動距離xsでは露光であるか、遮光であるかを判定する。露光であると判定された場合、処理はステップS505に移行する。一方、遮光であると判定された場合、処理はステップS506に移行する。
【0021】
ステップS505において、露光制御部110は、シャッタ105を開放し、撮像素子104の露光を行う。ステップS506において、露光制御部110は、シャッタ105を閉鎖し、撮像素子104の遮光を行う。
【0022】
ステップS507において、露光制御部110は、エンコーダ109を読み取り、ステップS502の時点からの撮像装置101の移動距離xsが、予め設定された到達距離xfに到達しているか否かを判定する。予め設定された到達距離xfに到達していなければ、処理はステップS503に戻る。一方、予め設定された到達距離xfに到達していれば、処理はステップS508に進む。
【0023】
ステップS508において、露光制御部110は、ステップS502で開始された撮像素子104における画像データIの記録を終了し、ブレ検出部106は、記録された画像データIを読み出す。ここで記録された画像データIは、図4(a)に示したように、シャッタ時系列パターンE(x)に基づくステップS505、S506の繰り返しによって、ブレが断続的となって符号化された画像データとなっている。
【0024】
ステップS509において、露光制御部110は、直線ステージ108を停止させ、撮像装置101の移動を終了する。ステップS510において、ブレ検出部106は、読み出した画像データI内の各ピクセルにおけるブレ長を検出する。
【0025】
図6は、ステップS510におけるブレ検出処理の詳細を示すフローチャートである。ステップS601において、ブレ検出部106は、先のステップS508において読み出した画像データIを走査し、ブレ検出の対象とする画像データI内の走査ピクセルiを選択する。ブレ検出部106は、ここで選択した走査ピクセルiを基点として発生しているブレを検出の対象とする。
【0026】
ステップS602において、ブレ検出部106は、走査ピクセル長nを、検出する最小のブレピクセル長nminに設定する。ブレ検出部106は、この最小のブレピクセル長nminから、検出する最大のブレピクセル長nmaxまでの範囲内にあるブレの検出を行う。ブレピクセル長は、被写体102と撮像レンズ103との距離によって変化するため、計測する距離範囲に応じて、nmin、nmaxをそれぞれ予め決定しておく。
【0027】
ステップS603において、ブレ検出部106は、走査ピクセル長nを持つブレカーネルK(m)(0≦m≦n)を生成する。ブレカーネルK(m)は、原点からの到達距離xf、シャッタ時系列パターン関数E(x)を用いて式3で表される。
【0028】
【数2】
【0029】
ステップS604において、ブレ検出部106は、画像データIから走査ピクセルiを基点としてブレの生じている方向に対して走査ピクセル長n個のピクセルをサンプリングしたサンプリング画像S(m)(0≦m≦n)を取得する。ブレ検出部106は、このサンプリング画像S(m)とブレカーネルK(m)との間で式4を用いて相関係数Cnを求める。
【0030】
【数3】
【0031】
但し、Sa、Kaはそれぞれサンプリング画像S(m)、ブレカーネルK(m)の0〜nの範囲における平均値である。
【0032】
ステップS605において、ブレ検出部106は、走査ピクセル長nが最大のブレピクセル長nmaxに等しいか否かを判定する。走査ピクセル長nが最大のブレピクセル長nmaxに等しくない場合、処理はステップS606に進む。一方、走査ピクセル長nが最大のブレピクセル長nmaxに等しければ、処理はステップS607に進む。
【0033】
ステップS606において、ブレ検出部106は、走査ピクセル長nに1を加える。その後、処理はステップS603に戻る。ステップS607において、ブレ検出部106は、nmin〜nmaxの範囲でCnが最大となるnを、走査ピクセルiにおける検出ブレピクセル長niと設定する。ステップS608において、ブレ検出部106は、走査ピクセルiが画像データIを全て走査したか否かを判定する。走査ピクセルiが画像データIを全て走査していなければ、処理はステップS601に戻り、画像データIの走査が継続され、全てのピクセルについて検出ブレピクセル長niが算出される。一方、走査ピクセルiが画像データIを全て走査していれば、ブレ検出の処理が終了する。
【0034】
再び図5の説明に戻る。ステップS511において、奥行き計算部107は、ブレ検出部106においてステップS510で検出された画像データI内の検出ブレピクセル長(ブレ長)niに基づいて、ピクセル単位で撮像レンズ103と被写体との間の奥行きを計算する。以下、ブレ長からの奥行きの計算方法について説明する。
【0035】
図7は、簡単な被写体として点光源701を設定し、撮像装置101を移動距離xfだけ光軸に直交する方向に平行移動させたときの様子を示す図である。撮像装置101内の撮像素子104では、点光源701の投影像が、平行移動の影響によりブレ702として撮像される。図7において、求める奥行きは点光源701と撮像レンズ103との光軸上の距離Diとなる。撮像素子104の各画素のドットピッチをε、ブレ702の検出ブレピクセル長niとすると、ブレ702のブレ長liは式5で表される。
【0036】
【数4】
【0037】
ブレ長liと、撮像レンズ103と撮像素子部104との距離d、移動距離xfから、距離Diは式6で表される。
【0038】
【数5】
【0039】
現実の被写体は点光源701の集合と考えることができるため、この距離Diを、画像データ内の全ての検出ブレピクセル長niに対して計算すると、ピクセル単位で被写体と撮像レンズ103の間の奥行きDiを取得し、形状計測を行うことができる。以上の流れにより、簡便に被写体の形状を求めることが可能となる。
【0040】
なお、ステップS601において画像データIを走査する前に、適切なフィルタを用いることで、より容易かつ正確にブレの検出を行うようにすることもできる。画像データ内の輝度変化を強調するフィルタとしては、ラプラシアンフィルタ等が知られており、例えばこのようなフィルタを画像データに適用し、符号化されたブレによる輝度変化をより明確することで、ブレの検出を容易にすることができる。また、バンドパスフィルタを適用することで、撮像画像からノイズが多く含まれる周波数成分を選択的に除去し、ブレの検出を容易にすることもできる。
【0041】
また、ステップS604における相関関数の計算は必ずしも単一のピクセル単位で行う必要はなく、複数のピクセルを一まとめにしたブロック単位の領域で算出してもよい。ブロック単位の領域で計算を行うことで、テクスチャの少ない被写体上での奥行きの推定も可能となる。
【0042】
また、ステップS604におけるサンプリング画像S(m)とブレカーネルK(m)との相関演算は、信号の類似性を検出するために行っているが、より検出精度を高めるために、カルバック・ライブラー情報量等、別の評価式を用いて類似性を判定してもよい。また、ステップS501における直線ステージ108による移動は、等速直線運動以外の移動も考えられる。例えば、図8に示すように、被写体102に対して円弧を描く移動方向801に従って撮像を行えば、被写体102の全周囲から観察した奥行きを計測することができる。また、図9に示すように、移動ステージ108の進行方向に対して、平行の向き901に移動している被写体102の走査ピクセルi上の速度viを併せて求める手法を用いてもよい。この手法では、撮像装置101を直線ステージ108によって往復移動させ、往路902と復路903とでそれぞれ1回ずつ撮像を行う。このとき、ステップS511におけるブレ702のブレ長liは、往路ブレピクセル長ngi、復路ブレピクセル長nbi、撮像レンズ103と撮像素子部104との距離d、撮像素子部104の各画素のドットピッチε、被写体102の走査ピクセルi上の速度vi、撮像装置101が原点から到達距離xfに到達するまでの到達時間t、距離Diを用いて式7、式8で表される。
【0043】
【数6】
【0044】
但し、式7、式8において、被写体102の速度vは、撮像装置101の往路における進行方向を正とする。また、式7、式8から、式9が導かれる。
【0045】
【数7】
【0046】
ステップS511において、奥行き計算部107は、式5に代わって式9を用いることで、距離Diを求めることができる。また、被写体102の走査ピクセルi上における速度viは、式7、式8から式10で表される。
【0047】
【数8】
【0048】
求められた距離Diを式10に代入することによって、被写体102の走査ピクセルi上における速度viを求めることができる。
【0049】
また、図10に示すように、撮像レンズ103の光軸方向に平行な方向1001に移動を行ってもよい。この手法では、ブレは画像データIの中心を原点として放射状に発生する。このため、ステップS604における、走査ピクセルiを基点としてブレの生じている方向に対して走査ピクセル長n個のピクセルのサンプリングは、画像データIの中心を原点とした極座標系に基づいて行う。
【0050】
次に、本発明の第2の実施形態について説明する。図11は、本発明の第2の実施形態に係る3次元形状測定装置の構成を示す図である。撮像装置1101によって、測定対象となる被写体1102を撮像する。撮像装置1101は、撮像光学系である撮像レンズ1103を介して被写体1102の投影像を撮像素子1104で記録する。シャッタ1105は、被写体1102の投影像の撮像素子1104への露光及び遮光を切り替える機能を持つ。撮像照明1106は、被写体1102に対して照明を行う機能を持ち、任意のタイミングで照射及び消灯を切り替えることができる。なお、本実施形態における撮像装置1101、被写体1102は何れも暗所に配置されており、撮像照明1106によってのみ被写体1102が照明される。ブレ検出部1107は、撮像素子1104で記録された画像データを取得し、画像データ内に存在するブレを検出し、ブレ長を計測する。奥行き計算部1108は、ブレ検出部1107によって検出されたブレの位置とブレ長とから、撮像レンズ1103と被写体1102との間の奥行き、即ち、被写体の形状を計算する。直線ステージ1109は、撮像装置1101を直線移動させる相対位置制御手段であり、撮像画像にブレを生じさせる。直線ステージ1109の内部には、撮像装置1101の移動距離xを計測する位置変化計測手段であるエンコーダ1110が搭載されている。
【0051】
露光制御部1111は、直線ステージ1109を用いて撮像装置1101を移動させ、移動中に後述する照明時系列パターンに従って撮像照明1106の制御を行い、撮像素子1104の画像の記録期間中に照明の点灯及び消灯を切り替える。
【0052】
照明時系列パターン保持部1112は、上記の露光制御部1111が撮像照明1106の点灯及び消灯を時系列で切り替えるための所定の照明時系列パターンを保持している。照明時系列パターンは撮像装置1101の移動距離xを入力として、照明時の出力を1、消灯時の出力を0とする関数E(x)(0≦x≦xf)で表される。この関数E(x)は、第1の実施形態におけるシャッタ時系列パターン関数E(x)と同様の特性を持つ。例えば、図3に示す画像データに対して照明時系列パターン関数E(x)によって横方向にブレを付加した場合、第1の実施形態と同様に図4(a)に示すようにブレによる輝度変化が階段状となる。
【0053】
図12は、第2の実施形態に係る3次元形状測定装置の動作を示すフローチャートである。以下、図12を参照しながら、第2の実施形態に係る3次元形状測定装置の動作について説明する。
【0054】
ステップS1201において、露光制御部1111は、直線ステージ1108を制御して、撮像装置1101を移動方向1113の方向に移動させる。このときの移動は等速直線運動とする。移動方向は、撮像レンズ1103の光軸に対して直交しており、撮像素子部1104の画素の格子配置に対して平行な方向とする。
【0055】
ステップS1202において、露光制御部1111は、撮像素子1104のリセットを行い、画像データIの記録を開始する。このときの撮像装置901の位置xを原点とする。ステップS1203において、露光制御部1111は、エンコーダ1109を読み取り、ステップS1102における原点からの撮像装置1101の移動距離xsを取得する。さらに露光制御部1111は、照明時系列パターン保持部111から、照明時系列パターンE(xs)を参照する。
【0056】
ステップS1204において、露光制御部1110は、照明時系列パターンE(xs)に従って、現在の撮像装置1101の移動距離xsでは照明点灯であるか、照明消灯であるかを判定する。照明点灯であると判定された場合、処理はステップS1205に移行する。一方、照明消灯であると判定された場合、処理はステップS1206に移行する。
【0057】
ステップS1205において、露光制御部1111は、撮像照明部1106を点灯し、被写体1102への照明を行う。ステップS1206において、露光制御部1111は、撮像照明部1106を消灯し、被写体1102を無照明の状態とする。
【0058】
ステップS1207において、露光制御部1110は、エンコーダ1109を読み取り、ステップS1202の時点からの撮像装置1101の移動距離xeが、予め設定された到達距離xfに到達しているか否かを判定する。予め設定された到達距離xfに到達していなければ、処理はステップS1203に戻る。一方、予め設定された到達距離xfに到達していれば、処理は次のステップS1208に進む。
【0059】
ステップS1208において、露光制御部1110は、ステップS1202で開始した撮像素子1104における画像データIの記録を終了し、ブレ検出部1107は、記録された画像データIを読み出す。ここで記録された画像データIは、図4(a)に示したように、照明時系列パターンE(x)に基づくステップS1205、S1206の繰り返しによって、ブレが断続的となって符号化された画像データとなっている。
【0060】
ステップS1209において、露光制御部1111は、直線ステージ1109を停止させ、撮像装置1101の移動を終了する。ステップS1210において、ブレ検出部1106は、読み出した画像データI内の各ピクセルにおけるブレ長を検出する。このブレ長の検出では、第1の実施形態における図6のステップS601〜S609に示した流れと同様の処理により、全てのピクセルについて検出ブレピクセル長niが算出される。
【0061】
ステップS1211において、奥行き計算部1107は、ブレ検出部1106においてステップS1210で検出された画像データI内の検出ブレピクセル長(ブレ長)niに基づいて、ピクセル単位で撮像レンズ1103と被写体の間の奥行きDiを計算する。本計算は、第1の実施形態におけるステップS511と同様の処理を行うことで、ピクセル単位で被写体と撮像レンズ1103の間の奥行きDiを取得し、形状計測を行うことができる。
【0062】
以上により、本実施形態を用いて簡便に被写体の形状を求めることが可能となる。なお、本実施形態において、撮像照明1106で行う照明は必ずしも空間的に均一である必要はない。例えば、擬似ランダム性を持つ空間パターンを照射すれば、テクスチャが不十分な被写体においても、照明によってテクスチャを付加することができるため、三次元形状の計測が可能となる。
【0063】
上述した実施形態によれば、複数のカメラ間やカメラとプロジェクタ間での煩雑なキャリブレーションを行うことなく、輝度変化が複雑な被写体においても簡便に被写体の3次元形状を測定することが可能となる。
【0064】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
【符号の説明】
【0065】
101、1101:撮像装置、102、1102:被写体、103、1103:撮像レンズ、104、1104:撮像素子、105、1105:シャッタ、106、1107:ブレ検出部、107、1108:奥行き計算部、108、1109:直線ステージ、109、1110:エンコーダ、110、1111:露光制御部、111:シャッタ時系列パターン保持部、112、1103:移動方向、1106:撮像照明、1112:照明時系列パターン保持部
【技術分野】
【0001】
本発明は、被写体の3次元形状を測定するための技術に関するものである。
【背景技術】
【0002】
今日、様々な方式によって物体形状の測定を行う3次元形状測定装置が開発されている。代表的な3次元形状測定装置としては、複数のカメラをステレオ配置し、撮像された各画像データ間で生じた視差と、カメラ同士の位置関係とから三角測量の原理で計測を行うステレオ方式が広く用いられている。しかし、このステレオ方式は、カメラ間の位置関係や撮像素子の受光特性のバラツキを、高い精度で測定して校正を行う必要があり、事前準備が非常に煩雑である。
【0003】
その他の3次元形状測定装置としては、カメラに対してオフセット配置されたプロジェクタから、特定の周期を持つパターン光を投影し、被写体表面に投影されたパターンの位相差から形状の計測を行う、位相シフト法と呼ばれる方法も広く用いられている。また、同様のプロジェクタから2値化されたパターン光を複数回投影することによって、被写体表面の3次元位置を一意に決定する空間符号化法も同様に用いられている。
【0004】
しかし、これらのプロジェクタによるパターン光を用いる方法においても、ステレオ方式と同様に、パターン光を投影するプロジェクタとカメラ間の位置関係の厳密な校正が必要であり、事前準備は同じく煩雑である。
【0005】
複数のカメラ間、もしくはカメラ−プロジェクタ間の厳密な校正が煩雑であるという課題に対して、単一のカメラのみによって簡便に3次元形状の計測を行う手法が提案されている。非特許文献1においては、カメラを露光時に直線運動させて、運動によって生じたブレ長からカメラと被写体との間の距離を計測し、形状を求める手法が開示されている。
【先行技術文献】
【非特許文献】
【0006】
【非特許文献1】H. Y. Lin and C.H. Chang: "Depth from motion and defocus blur", Optical Enginnering, Vol.45, No.12, 2006
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、非特許文献1に開示される手法では、撮像された画像データ内の輝度のグラデーション的な変化をブレとして検出している。そのため、被写体の輝度変化が複雑で、複数のブレ同士が重なるような条件下では、正確に各々のブレ長を検出することが困難となる。
【0008】
そこで、本発明の目的は、複数のカメラ間やカメラとプロジェクタ間での煩雑なキャリブレーションを行うことなく、輝度変化が複雑な被写体においても簡便に被写体の3次元形状を測定することにある。
【課題を解決するための手段】
【0009】
本発明の3次元形状測定装置は、被写体を撮像する撮像手段と、前記被写体と前記撮像手段との相対位置を変化させながら、所定の時系列パターンで前記撮像手段への露光及び遮光を切り替えて前記撮像手段に前記被写体を撮像させる制御手段と、前記撮像手段により撮像された前記被写体の画像データ内のブレを検出する検出手段と、前記検出手段により検出されたブレに基づいて、前記被写体の3次元形状を測定する測定手段とを有することを特徴とする。
【発明の効果】
【0010】
本発明によれば、複数のカメラ間やカメラとプロジェクタ間での煩雑なキャリブレーションを行うことなく、輝度変化が複雑な被写体においても簡便に被写体の3次元形状を測定することが可能となる。
【図面の簡単な説明】
【0011】
【図1】本発明の第1の実施形態に係る3次元形状測定装置の構成を示す図である。
【図2】シャッタ時系列パターン関数E(x)の例を示す図である。
【図3】ブレのない状態での被写体の画像データを示す図である。
【図4】画像データに対してシャッタ時系列パターン関数E(x)によって横方向にブレを付加した場合と、常時開放状態となる通常のシャッタ時系列パターンで撮像した場合との画像データを示す図である。
【図5】本発明の第1の実施形態に係る3次元形状測定装置の動作を示すフローチャートである。
【図6】ステップS510におけるブレ検出処理の詳細を示すフローチャートである。
【図7】簡単な被写体として点光源を設定し、撮像装置を移動距離xfだけ光軸に直交する方向に平行移動させたときの様子を示す図である。
【図8】撮像装置の移動方向を被写体に対して円弧を描くようにした様子を示す図である。
【図9】撮像装置を直線ステージによって往復移動させる様子を示す図である。
【図10】撮像装置を撮像レンズの光軸方向に対して平行な方向に移動させる様子を示す図である。
【図11】本発明の第2の実施形態に係る3次元形状測定装置の構成を示す図である。
【図12】本発明の第2の実施形態に係る3次元形状測定装置の動作を示すフローチャートである。
【発明を実施するための形態】
【0012】
以下、本発明を適用した好適な実施形態を、添付図面を参照しながら詳細に説明する。
【0013】
先ず、本発明の第1の実施形態について説明する。図1は、本発明の第1の実施形態に係る3次元形状測定装置の構成を示す図である。図1において、撮像装置101は、測定対象となる被写体102を撮像する。撮像装置101は、撮像光学系である撮像レンズ103を介して被写体102の投影像を撮像素子104で記録する。シャッタ105は、被写体102の投影像の撮像素子104への露光及び遮光を任意のタイミングで切り替える。図1において、シャッタ105は、撮像素子104の直前に配置されるフォーカルプレーンシャッタとしているが、撮像レンズ103に内蔵される形式のレンズシャッタ、もしくは撮像素子104の機能として実装されている電子シャッタ等を用いてもよい。ブレ検出部106は、撮像素子104で記録された画像データを取得し、画像データ内に存在するブレの位置を検出するとともに、そのブレ長を計測する。奥行き計算部107は、ブレ検出部106によって検出されたブレの位置及びブレ長から、撮像レンズ103と被写体102との間の奥行き、即ち被写体102の形状を計算する。直線ステージ108は、撮像装置101を直線移動させる相対位置制御手段であり、撮像される画像データにブレを生じさせる。直線ステージ108の内部には、撮像装置101の移動距離xを計測する位置変化計測手段であるエンコーダ109が搭載されている。
【0014】
露光制御部110は、直線ステージ108を用いて撮像装置101を移動させ、移動中に後述する所定のシャッタ時系列パターンに従ってシャッタ105の制御を行い、撮像素子104の画像データの記録期間中に露光及び遮光を切り替える。シャッタ時系列パターン保持部111は、露光制御部110がシャッタ105の露光及び遮光を時系列で切り替えるための所定のシャッタ時系列パターンを保持している。シャッタ時系列パターンは撮像装置101の原点からの位置xを入力として、露光時の出力を1、遮光時の出力を0とする関数E(x)(0≦x≦xf)で表される。本実施形態におけるシャッタ時系列パターンは、撮像される画像データにおいて、重畳したブレ同士の中から正確に1つのブレを検出するために、ブレを符号化する関数として作用する。そのため、関数E(x)は以下の式1、式2で示されるように、自己相関関数がインパルス状のδ関数に近い形状を持つと同時に、任意の関数A(x)との相互相関関数が0に近い性質を持つ必要がある。
【0015】
【数1】
【0016】
このとき、A(x)≠E(x)であり、A(x)は一般的な画像データを示す関数である。こうした特性を持つ関数はいくつか知られており、例えば擬似ランダム性を持つM系列や周波数変化が連続的なチャープ信号等をE(x)として用いることができる。但し、実際には式2において、あらゆるA(x)で常に0となるE(x)は存在しないため、可能な限り0に近いことが望ましい。もちろん、式1、式2を良好に満たす関数であれば、解析的に求めた関数でなく、数値的に求めた関数をE(x)として使用しても同様の効果を得ることができる。
【0017】
以上の条件によって作成されるシャッタ時系列パターン関数E(x)の例を図2に示す。図2において、横軸が原点からの位置x、縦軸の1がシャッタの露光、0が遮光を示す。図3は、ブレのない状態での被写体の画像データを示す図である。例えば、図3に示す画像データに対してシャッタ時系列パターン関数E(x)によって横方向にブレを付加した場合、図4(a)に示すようにブレによる輝度変化が階段状となる。なお、常時開放状態となる通常のシャッタ時系列パターンで撮像した場合には、図4(b)に示すように、ブレによる輝度変化が滑らかなグラデーション状となる。
【0018】
図5は、本発明の第1の実施形態に係る3次元形状測定装置の動作を示すフローチャートである。ステップS501において、露光制御部110は、直線ステージ108を制御して、撮像装置101を移動方向112の方向に移動させる。このときの移動は等速直線運動とする。移動方向は、撮像レンズ103の光軸に対して直交しており、撮像素子104の画素の格子配置に対して平行な方向とする。
【0019】
ステップS502において、露光制御部110は、撮像素子104のリセットを行い、画像データIの記録を開始する。このときの撮像装置101の位置xを原点とする。ステップS503において、露光制御部110は、エンコーダ109を読み取り、ステップS502における原点からの撮像装置101の移動距離xsを取得する。さらに露光制御部110は、シャッタ時系列パターン保持部111から、シャッタ時系列パターンE(xs)を参照する。
【0020】
ステップS504において、露光制御部110は、シャッタ時系列パターンE(xs)に従って、現在の撮像装置101の移動距離xsでは露光であるか、遮光であるかを判定する。露光であると判定された場合、処理はステップS505に移行する。一方、遮光であると判定された場合、処理はステップS506に移行する。
【0021】
ステップS505において、露光制御部110は、シャッタ105を開放し、撮像素子104の露光を行う。ステップS506において、露光制御部110は、シャッタ105を閉鎖し、撮像素子104の遮光を行う。
【0022】
ステップS507において、露光制御部110は、エンコーダ109を読み取り、ステップS502の時点からの撮像装置101の移動距離xsが、予め設定された到達距離xfに到達しているか否かを判定する。予め設定された到達距離xfに到達していなければ、処理はステップS503に戻る。一方、予め設定された到達距離xfに到達していれば、処理はステップS508に進む。
【0023】
ステップS508において、露光制御部110は、ステップS502で開始された撮像素子104における画像データIの記録を終了し、ブレ検出部106は、記録された画像データIを読み出す。ここで記録された画像データIは、図4(a)に示したように、シャッタ時系列パターンE(x)に基づくステップS505、S506の繰り返しによって、ブレが断続的となって符号化された画像データとなっている。
【0024】
ステップS509において、露光制御部110は、直線ステージ108を停止させ、撮像装置101の移動を終了する。ステップS510において、ブレ検出部106は、読み出した画像データI内の各ピクセルにおけるブレ長を検出する。
【0025】
図6は、ステップS510におけるブレ検出処理の詳細を示すフローチャートである。ステップS601において、ブレ検出部106は、先のステップS508において読み出した画像データIを走査し、ブレ検出の対象とする画像データI内の走査ピクセルiを選択する。ブレ検出部106は、ここで選択した走査ピクセルiを基点として発生しているブレを検出の対象とする。
【0026】
ステップS602において、ブレ検出部106は、走査ピクセル長nを、検出する最小のブレピクセル長nminに設定する。ブレ検出部106は、この最小のブレピクセル長nminから、検出する最大のブレピクセル長nmaxまでの範囲内にあるブレの検出を行う。ブレピクセル長は、被写体102と撮像レンズ103との距離によって変化するため、計測する距離範囲に応じて、nmin、nmaxをそれぞれ予め決定しておく。
【0027】
ステップS603において、ブレ検出部106は、走査ピクセル長nを持つブレカーネルK(m)(0≦m≦n)を生成する。ブレカーネルK(m)は、原点からの到達距離xf、シャッタ時系列パターン関数E(x)を用いて式3で表される。
【0028】
【数2】
【0029】
ステップS604において、ブレ検出部106は、画像データIから走査ピクセルiを基点としてブレの生じている方向に対して走査ピクセル長n個のピクセルをサンプリングしたサンプリング画像S(m)(0≦m≦n)を取得する。ブレ検出部106は、このサンプリング画像S(m)とブレカーネルK(m)との間で式4を用いて相関係数Cnを求める。
【0030】
【数3】
【0031】
但し、Sa、Kaはそれぞれサンプリング画像S(m)、ブレカーネルK(m)の0〜nの範囲における平均値である。
【0032】
ステップS605において、ブレ検出部106は、走査ピクセル長nが最大のブレピクセル長nmaxに等しいか否かを判定する。走査ピクセル長nが最大のブレピクセル長nmaxに等しくない場合、処理はステップS606に進む。一方、走査ピクセル長nが最大のブレピクセル長nmaxに等しければ、処理はステップS607に進む。
【0033】
ステップS606において、ブレ検出部106は、走査ピクセル長nに1を加える。その後、処理はステップS603に戻る。ステップS607において、ブレ検出部106は、nmin〜nmaxの範囲でCnが最大となるnを、走査ピクセルiにおける検出ブレピクセル長niと設定する。ステップS608において、ブレ検出部106は、走査ピクセルiが画像データIを全て走査したか否かを判定する。走査ピクセルiが画像データIを全て走査していなければ、処理はステップS601に戻り、画像データIの走査が継続され、全てのピクセルについて検出ブレピクセル長niが算出される。一方、走査ピクセルiが画像データIを全て走査していれば、ブレ検出の処理が終了する。
【0034】
再び図5の説明に戻る。ステップS511において、奥行き計算部107は、ブレ検出部106においてステップS510で検出された画像データI内の検出ブレピクセル長(ブレ長)niに基づいて、ピクセル単位で撮像レンズ103と被写体との間の奥行きを計算する。以下、ブレ長からの奥行きの計算方法について説明する。
【0035】
図7は、簡単な被写体として点光源701を設定し、撮像装置101を移動距離xfだけ光軸に直交する方向に平行移動させたときの様子を示す図である。撮像装置101内の撮像素子104では、点光源701の投影像が、平行移動の影響によりブレ702として撮像される。図7において、求める奥行きは点光源701と撮像レンズ103との光軸上の距離Diとなる。撮像素子104の各画素のドットピッチをε、ブレ702の検出ブレピクセル長niとすると、ブレ702のブレ長liは式5で表される。
【0036】
【数4】
【0037】
ブレ長liと、撮像レンズ103と撮像素子部104との距離d、移動距離xfから、距離Diは式6で表される。
【0038】
【数5】
【0039】
現実の被写体は点光源701の集合と考えることができるため、この距離Diを、画像データ内の全ての検出ブレピクセル長niに対して計算すると、ピクセル単位で被写体と撮像レンズ103の間の奥行きDiを取得し、形状計測を行うことができる。以上の流れにより、簡便に被写体の形状を求めることが可能となる。
【0040】
なお、ステップS601において画像データIを走査する前に、適切なフィルタを用いることで、より容易かつ正確にブレの検出を行うようにすることもできる。画像データ内の輝度変化を強調するフィルタとしては、ラプラシアンフィルタ等が知られており、例えばこのようなフィルタを画像データに適用し、符号化されたブレによる輝度変化をより明確することで、ブレの検出を容易にすることができる。また、バンドパスフィルタを適用することで、撮像画像からノイズが多く含まれる周波数成分を選択的に除去し、ブレの検出を容易にすることもできる。
【0041】
また、ステップS604における相関関数の計算は必ずしも単一のピクセル単位で行う必要はなく、複数のピクセルを一まとめにしたブロック単位の領域で算出してもよい。ブロック単位の領域で計算を行うことで、テクスチャの少ない被写体上での奥行きの推定も可能となる。
【0042】
また、ステップS604におけるサンプリング画像S(m)とブレカーネルK(m)との相関演算は、信号の類似性を検出するために行っているが、より検出精度を高めるために、カルバック・ライブラー情報量等、別の評価式を用いて類似性を判定してもよい。また、ステップS501における直線ステージ108による移動は、等速直線運動以外の移動も考えられる。例えば、図8に示すように、被写体102に対して円弧を描く移動方向801に従って撮像を行えば、被写体102の全周囲から観察した奥行きを計測することができる。また、図9に示すように、移動ステージ108の進行方向に対して、平行の向き901に移動している被写体102の走査ピクセルi上の速度viを併せて求める手法を用いてもよい。この手法では、撮像装置101を直線ステージ108によって往復移動させ、往路902と復路903とでそれぞれ1回ずつ撮像を行う。このとき、ステップS511におけるブレ702のブレ長liは、往路ブレピクセル長ngi、復路ブレピクセル長nbi、撮像レンズ103と撮像素子部104との距離d、撮像素子部104の各画素のドットピッチε、被写体102の走査ピクセルi上の速度vi、撮像装置101が原点から到達距離xfに到達するまでの到達時間t、距離Diを用いて式7、式8で表される。
【0043】
【数6】
【0044】
但し、式7、式8において、被写体102の速度vは、撮像装置101の往路における進行方向を正とする。また、式7、式8から、式9が導かれる。
【0045】
【数7】
【0046】
ステップS511において、奥行き計算部107は、式5に代わって式9を用いることで、距離Diを求めることができる。また、被写体102の走査ピクセルi上における速度viは、式7、式8から式10で表される。
【0047】
【数8】
【0048】
求められた距離Diを式10に代入することによって、被写体102の走査ピクセルi上における速度viを求めることができる。
【0049】
また、図10に示すように、撮像レンズ103の光軸方向に平行な方向1001に移動を行ってもよい。この手法では、ブレは画像データIの中心を原点として放射状に発生する。このため、ステップS604における、走査ピクセルiを基点としてブレの生じている方向に対して走査ピクセル長n個のピクセルのサンプリングは、画像データIの中心を原点とした極座標系に基づいて行う。
【0050】
次に、本発明の第2の実施形態について説明する。図11は、本発明の第2の実施形態に係る3次元形状測定装置の構成を示す図である。撮像装置1101によって、測定対象となる被写体1102を撮像する。撮像装置1101は、撮像光学系である撮像レンズ1103を介して被写体1102の投影像を撮像素子1104で記録する。シャッタ1105は、被写体1102の投影像の撮像素子1104への露光及び遮光を切り替える機能を持つ。撮像照明1106は、被写体1102に対して照明を行う機能を持ち、任意のタイミングで照射及び消灯を切り替えることができる。なお、本実施形態における撮像装置1101、被写体1102は何れも暗所に配置されており、撮像照明1106によってのみ被写体1102が照明される。ブレ検出部1107は、撮像素子1104で記録された画像データを取得し、画像データ内に存在するブレを検出し、ブレ長を計測する。奥行き計算部1108は、ブレ検出部1107によって検出されたブレの位置とブレ長とから、撮像レンズ1103と被写体1102との間の奥行き、即ち、被写体の形状を計算する。直線ステージ1109は、撮像装置1101を直線移動させる相対位置制御手段であり、撮像画像にブレを生じさせる。直線ステージ1109の内部には、撮像装置1101の移動距離xを計測する位置変化計測手段であるエンコーダ1110が搭載されている。
【0051】
露光制御部1111は、直線ステージ1109を用いて撮像装置1101を移動させ、移動中に後述する照明時系列パターンに従って撮像照明1106の制御を行い、撮像素子1104の画像の記録期間中に照明の点灯及び消灯を切り替える。
【0052】
照明時系列パターン保持部1112は、上記の露光制御部1111が撮像照明1106の点灯及び消灯を時系列で切り替えるための所定の照明時系列パターンを保持している。照明時系列パターンは撮像装置1101の移動距離xを入力として、照明時の出力を1、消灯時の出力を0とする関数E(x)(0≦x≦xf)で表される。この関数E(x)は、第1の実施形態におけるシャッタ時系列パターン関数E(x)と同様の特性を持つ。例えば、図3に示す画像データに対して照明時系列パターン関数E(x)によって横方向にブレを付加した場合、第1の実施形態と同様に図4(a)に示すようにブレによる輝度変化が階段状となる。
【0053】
図12は、第2の実施形態に係る3次元形状測定装置の動作を示すフローチャートである。以下、図12を参照しながら、第2の実施形態に係る3次元形状測定装置の動作について説明する。
【0054】
ステップS1201において、露光制御部1111は、直線ステージ1108を制御して、撮像装置1101を移動方向1113の方向に移動させる。このときの移動は等速直線運動とする。移動方向は、撮像レンズ1103の光軸に対して直交しており、撮像素子部1104の画素の格子配置に対して平行な方向とする。
【0055】
ステップS1202において、露光制御部1111は、撮像素子1104のリセットを行い、画像データIの記録を開始する。このときの撮像装置901の位置xを原点とする。ステップS1203において、露光制御部1111は、エンコーダ1109を読み取り、ステップS1102における原点からの撮像装置1101の移動距離xsを取得する。さらに露光制御部1111は、照明時系列パターン保持部111から、照明時系列パターンE(xs)を参照する。
【0056】
ステップS1204において、露光制御部1110は、照明時系列パターンE(xs)に従って、現在の撮像装置1101の移動距離xsでは照明点灯であるか、照明消灯であるかを判定する。照明点灯であると判定された場合、処理はステップS1205に移行する。一方、照明消灯であると判定された場合、処理はステップS1206に移行する。
【0057】
ステップS1205において、露光制御部1111は、撮像照明部1106を点灯し、被写体1102への照明を行う。ステップS1206において、露光制御部1111は、撮像照明部1106を消灯し、被写体1102を無照明の状態とする。
【0058】
ステップS1207において、露光制御部1110は、エンコーダ1109を読み取り、ステップS1202の時点からの撮像装置1101の移動距離xeが、予め設定された到達距離xfに到達しているか否かを判定する。予め設定された到達距離xfに到達していなければ、処理はステップS1203に戻る。一方、予め設定された到達距離xfに到達していれば、処理は次のステップS1208に進む。
【0059】
ステップS1208において、露光制御部1110は、ステップS1202で開始した撮像素子1104における画像データIの記録を終了し、ブレ検出部1107は、記録された画像データIを読み出す。ここで記録された画像データIは、図4(a)に示したように、照明時系列パターンE(x)に基づくステップS1205、S1206の繰り返しによって、ブレが断続的となって符号化された画像データとなっている。
【0060】
ステップS1209において、露光制御部1111は、直線ステージ1109を停止させ、撮像装置1101の移動を終了する。ステップS1210において、ブレ検出部1106は、読み出した画像データI内の各ピクセルにおけるブレ長を検出する。このブレ長の検出では、第1の実施形態における図6のステップS601〜S609に示した流れと同様の処理により、全てのピクセルについて検出ブレピクセル長niが算出される。
【0061】
ステップS1211において、奥行き計算部1107は、ブレ検出部1106においてステップS1210で検出された画像データI内の検出ブレピクセル長(ブレ長)niに基づいて、ピクセル単位で撮像レンズ1103と被写体の間の奥行きDiを計算する。本計算は、第1の実施形態におけるステップS511と同様の処理を行うことで、ピクセル単位で被写体と撮像レンズ1103の間の奥行きDiを取得し、形状計測を行うことができる。
【0062】
以上により、本実施形態を用いて簡便に被写体の形状を求めることが可能となる。なお、本実施形態において、撮像照明1106で行う照明は必ずしも空間的に均一である必要はない。例えば、擬似ランダム性を持つ空間パターンを照射すれば、テクスチャが不十分な被写体においても、照明によってテクスチャを付加することができるため、三次元形状の計測が可能となる。
【0063】
上述した実施形態によれば、複数のカメラ間やカメラとプロジェクタ間での煩雑なキャリブレーションを行うことなく、輝度変化が複雑な被写体においても簡便に被写体の3次元形状を測定することが可能となる。
【0064】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
【符号の説明】
【0065】
101、1101:撮像装置、102、1102:被写体、103、1103:撮像レンズ、104、1104:撮像素子、105、1105:シャッタ、106、1107:ブレ検出部、107、1108:奥行き計算部、108、1109:直線ステージ、109、1110:エンコーダ、110、1111:露光制御部、111:シャッタ時系列パターン保持部、112、1103:移動方向、1106:撮像照明、1112:照明時系列パターン保持部
【特許請求の範囲】
【請求項1】
被写体を撮像する撮像手段と、
前記被写体と前記撮像手段との相対位置を変化させながら、所定の時系列パターンで前記撮像手段への露光及び遮光を切り替えて前記撮像手段に前記被写体を撮像させる制御手段と、
前記撮像手段により撮像された前記被写体の画像データ内のブレを検出する検出手段と、
前記検出手段により検出されたブレに基づいて、前記被写体の3次元形状を測定する測定手段とを有することを特徴とする3次元形状測定装置。
【請求項2】
前記制御手段は、前記所定の時系列パターンでシャッタの開放及び閉鎖を切り替えることにより、前記所定の時系列パターンで前記撮像手段への露光及び遮光を切り替えることを特徴とする請求項1に記載の3次元形状測定装置。
【請求項3】
前記制御手段は、前記所定の時系列パターンで前記被写体に対する照明の点灯及び消灯を切り替えることにより、前記所定の時系列パターンで前記撮像手段への露光及び遮光を切り替えることを特徴とする請求項1に記載の3次元形状測定装置。
【請求項4】
3次元形状測定装置によって実行される3次元形状測定方法であって、
被写体と前記被写体を撮像する撮像手段との相対位置を変化させながら、所定の時系列パターンで前記撮像手段への露光及び遮光を切り替えて前記撮像手段に前記被写体を撮像させる制御ステップと、
前記撮像手段により撮像された前記被写体の画像データ内のブレを検出する検出ステップと、
前記検出ステップにより検出されたブレに基づいて、前記被写体の3次元形状を測定する測定ステップとを含むことを特徴とする3次元形状測定方法。
【請求項5】
被写体と前記被写体を撮像する撮像手段との相対位置を変化させながら、所定の時系列パターンで前記撮像手段への露光及び遮光を切り替えて前記撮像手段に前記被写体を撮像させる制御ステップと、
前記撮像手段により撮像された前記被写体の画像データ内のブレを検出する検出ステップと、
前記検出ステップにより検出されたブレに基づいて、前記被写体の3次元形状を測定する測定ステップとをコンピュータに実行させるためのプログラム。
【請求項1】
被写体を撮像する撮像手段と、
前記被写体と前記撮像手段との相対位置を変化させながら、所定の時系列パターンで前記撮像手段への露光及び遮光を切り替えて前記撮像手段に前記被写体を撮像させる制御手段と、
前記撮像手段により撮像された前記被写体の画像データ内のブレを検出する検出手段と、
前記検出手段により検出されたブレに基づいて、前記被写体の3次元形状を測定する測定手段とを有することを特徴とする3次元形状測定装置。
【請求項2】
前記制御手段は、前記所定の時系列パターンでシャッタの開放及び閉鎖を切り替えることにより、前記所定の時系列パターンで前記撮像手段への露光及び遮光を切り替えることを特徴とする請求項1に記載の3次元形状測定装置。
【請求項3】
前記制御手段は、前記所定の時系列パターンで前記被写体に対する照明の点灯及び消灯を切り替えることにより、前記所定の時系列パターンで前記撮像手段への露光及び遮光を切り替えることを特徴とする請求項1に記載の3次元形状測定装置。
【請求項4】
3次元形状測定装置によって実行される3次元形状測定方法であって、
被写体と前記被写体を撮像する撮像手段との相対位置を変化させながら、所定の時系列パターンで前記撮像手段への露光及び遮光を切り替えて前記撮像手段に前記被写体を撮像させる制御ステップと、
前記撮像手段により撮像された前記被写体の画像データ内のブレを検出する検出ステップと、
前記検出ステップにより検出されたブレに基づいて、前記被写体の3次元形状を測定する測定ステップとを含むことを特徴とする3次元形状測定方法。
【請求項5】
被写体と前記被写体を撮像する撮像手段との相対位置を変化させながら、所定の時系列パターンで前記撮像手段への露光及び遮光を切り替えて前記撮像手段に前記被写体を撮像させる制御ステップと、
前記撮像手段により撮像された前記被写体の画像データ内のブレを検出する検出ステップと、
前記検出ステップにより検出されたブレに基づいて、前記被写体の3次元形状を測定する測定ステップとをコンピュータに実行させるためのプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【公開番号】特開2012−127742(P2012−127742A)
【公開日】平成24年7月5日(2012.7.5)
【国際特許分類】
【出願番号】特願2010−278090(P2010−278090)
【出願日】平成22年12月14日(2010.12.14)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成24年7月5日(2012.7.5)
【国際特許分類】
【出願日】平成22年12月14日(2010.12.14)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]