(57)【要約】【課題】測定対象物の表面の色の明暗に依存することなく、測定対象物の全表面の形状を測定することができるようにする。【解決手段】２値化投影パターンを投影された測定対象物からの反射光画像を撮像し、該撮像した反射光画像を用いて空間コード画像を生成する空間コード化法により上記測定対象物の３次元形状を測定する３次元形状測定方法において、２値化投影パターンを投影された測定対象物からの反射光画像を異なる露光時間で撮像し、該異なる露光時間で撮像した反射光画像を合成して多重シャッタースピード画像を生成し、該多重シャッタースピード画像に基づいて空間コード画像を生成する。【選択図】        図５
2007315864.tif 000002
【特許請求の範囲】
【請求項１】
２値化投影パターンを投影された測定対象物からの反射光画像を撮像し、該撮像した反射光画像を用いて空間コード画像を生成する空間コード化法により前記測定対象物の３次元形状を測定する３次元形状測定方法において、
２値化投影パターンを投影された測定対象物からの反射光画像を異なる露光時間で撮像し、該異なる露光時間で撮像した反射光画像を合成して多重シャッタースピード画像を生成し、該多重シャッタースピード画像に基づいて空間コード画像を生成する
ことを特徴とする３次元形状測定方法。
【請求項２】
２値化投影パターンを投影された測定対象物からの反射光画像を撮像し、該撮像した反射光画像を用いて空間コード画像を生成する空間コード化法により前記測定対象物の３次元形状を測定する３次元形状測定方法において、
所定の２値化投影パターンを測定対象物に対して所定の移動量でシフトしながら前記測定対象物に投影し、該所定の２値化投影パターンを投影された前記測定対象物からの反射光画像を該シフト毎に異なる露光時間で撮像し、該シフト毎に異なる露光時間で撮像した反射光画像を合成して該シフト毎の多重シャッタースピード画像を生成し、該シフト毎の多重シャッタースピード画像を合成した位相シフト画像を生成し、
それぞれ異なる複数の２値化投影パターンを前記測定対象物にそれぞれ投影し、該それぞれ異なる複数の２値化投影パターンを投影された前記測定対象物からの反射光画像を該それぞれ異なる複数の２値化投影パターン毎に異なる露光時間で撮像し、該それぞれ異なる複数の２値化投影パターン毎に異なる露光時間で撮像した反射光画像を合成して該それぞれ異なる複数の２値化投影パターン毎の多重シャッタースピード画像を生成し、該それぞれ異なる複数の２値化投影パターン毎の多重シャッタースピード画像を合成した空間コード画像を生成し、
該位相シフト画像と該空間コード画像とに基づいて前記測定対象物の３次元形状を測定する
ことを特徴とする３次元形状測定方法。
【請求項３】
測定対象物に２値化投影パターンを投影する投影手段と、
前記投影手段により投影された２値化投影パターンを投影された測定対象物からの反射光画像を撮像する撮像手段と、
前記撮像手段が撮像した反射光画像を用いて空間コード画像を生成する生成手段と
を有し、
前記生成手段により生成された空間コード画像を用いた空間コード化法により前記測定対象物の３次元形状を測定する３次元形状測定装置において、
前記撮像手段は、２値化投影パターンを投影された前記測定対象物からの反射光画像を異なる露光時間で撮像し、
前記生成手段は、前記撮像手段が異なる露光時間で撮像した反射光画像を合成して多重シャッタースピード画像を生成し、該多重シャッタースピード画像に基づいて空間コード画像を生成する
ことを特徴とする３次元形状測定装置。
【請求項４】
２値化投影パターンを投影された測定対象物からの反射光画像を撮像し、該撮像した反射光画像を用いて空間コード画像を生成する空間コード化法により前記測定対象物の３次元形状を測定する３次元形状測定装置において、
所定の２値化投影パターンを測定対象物に対して所定の移動量でシフトしながら前記測定対象物に投影し、該所定の２値化投影パターンを投影された前記測定対象物からの反射光画像を該シフト毎に異なる露光時間で撮像し、該シフト毎に異なる露光時間で撮像した反射光画像を合成して該シフト毎の多重シャッタースピード画像を生成し、該シフト毎の多重シャッタースピード画像を合成した位相シフト画像を生成する第１の手段と、
それぞれ異なる複数の２値化投影パターンを前記測定対象物にそれぞれ投影し、該それぞれ異なる複数の２値化投影パターンを投影された前記測定対象物からの反射光画像を該それぞれ異なる複数の２値化投影パターン毎に異なる露光時間で撮像し、該それぞれ異なる複数の２値化投影パターン毎に異なる露光時間で撮像した反射光画像を合成して該それぞれ異なる複数の２値化投影パターン毎の多重シャッタースピード画像を生成し、該それぞれ異なる複数の２値化投影パターン毎の多重シャッタースピード画像を合成した空間コード画像を生成する第２の手段と、
前記第１の手段により取得された位相シフト画像と前記第２の手段により取得された空間コード画像とを合成する合成手段と、
前記合成手段により合成された合成結果に基づいて、前記測定対象物の三次元形状を取得する三次元形状取得手段と
を有することを特徴とする３次元形状測定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、３次元形状測定方法およびその装置に関し、さらに詳細には、２値化投影パターンにより空間に対し絶対的なコード値を生成する空間コード化法を用いた３次元形状測定方法およびその装置に関する。
【背景技術】
【０００２】
一般に、光を用いて測定対象物の３次元形状を非接触で計測する技術としては、受動的測定法と能動的測定法とがある。
【０００３】
ここで、受動的測定法とは、ステレオ法に代表されるように、測定機器側は投光手段を持たずに、環境光を利用して計測するという手法である。
【０００４】
一方、能動的測定法とは、測定機器側の投光手段から測定対象物に向けて光を照射して、その反射光を計測するという手法である。
【０００５】
また、こうした能動的測定法のなかで、三角測量の原理を用いるものとしては、スリット光投影法や空間コード化法などが知られている。
【０００６】
ここで、空間コード化法とは、測定対象物に対して光透過領域と光非透過領域とよりなるストライプ状の光パターンたる２値化投影パターン（以下、「２値化投影パターン」を「スリットパターン」と適宜に称する。）を何種類も投影することにより、当該ストライプ状の光パターンを投影された測定対象物上の１点を観察していると、その観察している１点に投影される光線が点滅して符号（コード）を形成するようになるが、そのコードを利用して測定対象物の３次元形状を測定するという手法である。
【０００７】
なお、図１（ａ）（ｂ）（ｃ）（ｄ）には、空間コード化法で使用する各種の２値化投影パターン、即ち、スリットパターンの例が示されている。
【０００８】
これら２値化投影パターンは、それぞれ一定の幅Ｗを有するとともに幅Ｗ方向と直交する所定の方向に延長するスリット状の光透過領域１００ａとスリットの枠に相当する光非透過領域１００ｂとが、交互に連続するようにして形成されている。光透過領域１００ａと光非透過領域１００ｂとの幅Ｗは、任意の大きさに設定することができる。
【０００９】
また、図１（ａ）（ｂ）（ｃ）（ｄ）に示す２値化投影パターンにおいては、幅Ｗが最も狭い２値化投影パターンは図１（ｄ）に示すものである。このように、それぞれ異なる複数の２値化投影パターンの中で幅Ｗが最も狭い２値化投影パターンを「ＬＳＢパターン」と一般に称する。
【００１０】
なお、こうした２値化投影パターンは、従来より周知の技術であるためその詳細な説明は省略する。
【００１１】
こうした空間コード化法においては、コードが示す値（空間コード値）と光線の方向とは一対一の関係で対応しており、測定対象物上における光点の位置から観察位置の視線の方向が判り、また、その光点の空間コード値から光線の方向が判るので、三角測量の原理により測定対象物上における全ての光点までの距離を求めることができ、これにより測定対象物の３次元形状を非接触で計測することができるようになるものである。
【００１２】
一般に、上記した空間コード化法を用いた３次元形状測定装置は、コンピュータによりその全体の動作を制御するように構成されており、コンピュータの制御により測定対象物へ複数の２値化投影パターンを投影する投影手段としてのプロジェクタと、プロジェクタにより２値化投影パターンを投影された測定対象物を撮像するＣＣＤなどの撮像素子を備えて構成される撮像手段としてのカメラとを有して構成されている。
【００１３】
即ち、３次元測定装置においては、プロジェクタはコンピュータに接続されていて、測定対象物の表面に、コンピュータで生成される各種の２値化投影パターンを投影することができるように配置にされている。また、カメラは、プロジェクタの投影方向とは異なる方向から測定対象物の表面を撮影することができるように配置されており、カメラで撮影された画像は、デジタル化されてコンピュータに取り込まれるようになされている。
【００１４】
そして、カメラで撮影されデジタル化されてコンピュータに取り込まれた画像を処理することによって、３次元測定装置から測定対象物までの距離を計測し、こうして計測された距離に基づいて測定対象物の表面の３次元形状を測定するものである。
【００１５】
しかしながら、上記したような空間コード化法を用いた３次元形状測定装置により、表面の色（以下、測定対象物の表面の色を「表面色」と適宜に称する。）に黒色と白色とのような輝度値の差が大きい色が混在する測定対象物を測定しようとする際には、全ての色の表面の形状を同時に測定することができないという問題点があった。以下、この問題点について、図２に示す表面に輝度値の差が大きい黒色と白色とが混在する測定対象物Ａを例にとって説明する。
【００１６】
この測定対象物Ａに２値化投影パターンをプロジェクタにより投影してその反射光をカメラで撮像する場合に、まず、白色のような表面の色が明るい部分に投影されている２値化投影パターンの輝度差を得られるようにするためには、カメラの露光時間を短くする必要がある。ところが、カメラの露光時間を短くすると、表面が黒色の部分では投影された２値化投影パターンの輝度差がほとんど得られず（図３（ａ）参照）、結果として、表面の色が明るい部分の表面の３次元形状のみしか測定することができないものであった（図３（ｂ）参照）。
【００１７】
一方、上記とは逆に、黒色のような表面の色が暗い部分に投影された２値化投影パターンの輝度差を得られるようにするためには、カメラの露光時間を長くする必要がある。ところが、カメラの露光時間を長くすると、表面が白色の部分では投影された２値化投影パターンがハレーションを起こして輝度差が得られず（図４（ａ）参照）、結果として、表面の色が暗い部分の表面形状しか測定することができないものであった（図４（ｂ）参照）。
【００１８】
なお、上記した問題点は、撮像手段を構成する撮像素子の入力光に対するダイナミックレンジが、人間の目のそれと比べて狭いことに起因するものである。
【００１９】
なお、本願出願人が特許出願時に知っている先行技術は、上記において説明したようなものであって文献公知発明に係る発明ではないため、記載すべき先行技術情報はない。
【発明の開示】
【発明が解決しようとする課題】
【００２０】
本発明は、上記したような従来の技術の有する種々の問題点に鑑みてなされたものであり、その目的とするところは、測定対象物の表面の色の明暗に依存することなく、測定対象物の全表面の形状を測定することができるようにした３次元形状測定方法およびその装置を提供しようとするものである。
【課題を解決するための手段】
【００２１】
上記目的を達成するために、本発明は、撮像手段が同一の２値化投影パターンを投影された測定対象物からの反射光画像を異なるシャッタースピード（露光時間）で取得するようにして、こうして取得した画像に基づいて空間コード画像を得るようにしたものである。
【００２２】
即ち、本発明は、例えば、以下に示す（１）〜（４）の処理を行うようにしたものである。
【００２３】
（１）同一の２値化投影パターンを投影した様子を露光時間を様々に変えて複数撮影する。
【００２４】
（２）上記（１）で撮影した複数の撮影画像を合成して１つの画像（多重シャッタースピード画像）を生成する。これにより、撮像素子のダイナミックレンジを仮想的に広げることができ、測定対象物の表面の色の明暗に依存することなく、測定対象物の全表面の形状を測定することが可能となる。
【００２５】
（３）空間コード化法では、例えば、８ビット分の２値化投影パターンを投影するが、各ビット分毎に上記（１）（２）の処理を行って８ビット分の多重シャッタースピード画像を生成する。
【００２６】
（４）得られた８ビット分の多重シャッタースピード画像を用いて、従来の空間コード化法による処理と同様にして空間コード画像を生成し、生成した空間コード画像に基づいて３次元形状を復元する。
【００２７】
こうした本発明のうち請求項１に記載の発明は、２値化投影パターンを投影された測定対象物からの反射光画像を撮像し、該撮像した反射光画像を用いて空間コード画像を生成する空間コード化法により上記測定対象物の３次元形状を測定する３次元形状測定方法において、２値化投影パターンを投影された測定対象物からの反射光画像を異なる露光時間で撮像し、該異なる露光時間で撮像した反射光画像を合成して多重シャッタースピード画像を生成し、該多重シャッタースピード画像に基づいて空間コード画像を生成するようにしたものである。
【００２８】
また、本発明のうち請求項２に記載の発明は、２値化投影パターンを投影された測定対象物からの反射光画像を撮像し、該撮像した反射光画像を用いて空間コード画像を生成する空間コード化法により上記測定対象物の３次元形状を測定する３次元形状測定方法において、所定の２値化投影パターンを測定対象物に対して所定の移動量でシフトしながら上記測定対象物に投影し、該所定の２値化投影パターンを投影された上記測定対象物からの反射光画像を該シフト毎に異なる露光時間で撮像し、該シフト毎に異なる露光時間で撮像した反射光画像を合成して該シフト毎の多重シャッタースピード画像を生成し、該シフト毎の多重シャッタースピード画像を合成した位相シフト画像を生成し、それぞれ異なる複数の２値化投影パターンを上記測定対象物にそれぞれ投影し、該それぞれ異なる複数の２値化投影パターンを投影された上記測定対象物からの反射光画像を該それぞれ異なる複数の２値化投影パターン毎に異なる露光時間で撮像し、該それぞれ異なる複数の２値化投影パターン毎に異なる露光時間で撮像した反射光画像を合成して該それぞれ異なる複数の２値化投影パターン毎の多重シャッタースピード画像を生成し、該それぞれ異なる複数の２値化投影パターン毎の多重シャッタースピード画像を合成した空間コード画像を生成し、該位相シフト画像と該空間コード画像とに基づいて上記測定対象物の３次元形状を測定するようにしたものである。
【００２９】
また、本発明のうち請求項３に記載の発明は、測定対象物に２値化投影パターンを投影する投影手段と、上記投影手段により投影された２値化投影パターンを投影された測定対象物からの反射光画像を撮像する撮像手段と、上記撮像手段が撮像した反射光画像を用いて空間コード画像を生成する生成手段とを有し、上記生成手段により生成された空間コード画像を用いた空間コード化法により上記測定対象物の３次元形状を測定する３次元形状測定装置において、上記撮像手段は、２値化投影パターンを投影された上記測定対象物からの反射光画像を異なる露光時間で撮像し、上記生成手段は、上記撮像手段が異なる露光時間で撮像した反射光画像を合成して多重シャッタースピード画像を生成し、該多重シャッタースピード画像に基づいて空間コード画像を生成するようにしたものである。
【００３０】
また、本発明のうち請求項４に記載の発明は、２値化投影パターンを投影された測定対象物からの反射光画像を撮像し、該撮像した反射光画像を用いて空間コード画像を生成する空間コード化法により上記測定対象物の３次元形状を測定する３次元形状測定装置において、所定の２値化投影パターンを測定対象物に対して所定の移動量でシフトしながら上記測定対象物に投影し、該所定の２値化投影パターンを投影された上記測定対象物からの反射光画像を該シフト毎に異なる露光時間で撮像し、該シフト毎に異なる露光時間で撮像した反射光画像を合成して該シフト毎の多重シャッタースピード画像を生成し、該シフト毎の多重シャッタースピード画像を合成した位相シフト画像を生成する第１の手段と、それぞれ異なる複数の２値化投影パターンを上記測定対象物にそれぞれ投影し、該それぞれ異なる複数の２値化投影パターンを投影された上記測定対象物からの反射光画像を該それぞれ異なる複数の２値化投影パターン毎に異なる露光時間で撮像し、該それぞれ異なる複数の２値化投影パターン毎に異なる露光時間で撮像した反射光画像を合成して該それぞれ異なる複数の２値化投影パターン毎の多重シャッタースピード画像を生成し、該それぞれ異なる複数の２値化投影パターン毎の多重シャッタースピード画像を合成した空間コード画像を生成する第２の手段と、上記第１の手段により取得された位相シフト画像と上記第２の手段により取得された空間コード画像とを合成する合成手段と、上記合成手段により合成された合成結果に基づいて、上記測定対象物の三次元形状を取得する三次元形状取得手段とを有するようにしたものである。
【発明の効果】
【００３１】
本発明は、以上説明したように構成されているので、測定対象物の表面の色の明暗に依存することなく、測定対象物の全表面の形状を測定することができるようになるという優れた効果を奏する。
【発明を実施するための最良の形態】
【００３２】
以下、添付の図面を参照しながら、本発明による３次元形状測定方法およびその装置の実施の形態の一例を詳細に説明するものとする。
【００３３】
図５には、本発明による３次元形状測定装置の実施の形態の一例を表す概略構成説明図が示されている。
【００３４】
即ち、本発明の実施の形態の一例による３次元形状測定装置１０は、バス１２ａを介して接続された中央処理装置（ＣＰＵ）１２ｂ、ＣＰＵ１２ｂが実行するプログラムなどを格納したリードオンリメモリ（ＲＯＭ）１２ｃ、データ信号を一時記憶するバッファメモリやＣＰＵ１２ｂによるプログラムの実行時に必要な各種レジスタなどが設定されたワーキングエリアとしてのランダムアクセスメモリ（ＲＡＭ）１２ｄ、キーボードやマウスなどの各種の入力装置１２ｅならびにＣＰＵ１２ｂの処理結果などを出力して表示する表示装置１２ｆなどを有して構成されるコンピュータ１２によりその全体の動作を制御するように構成されており、コンピュータ１２の制御により測定対象物１４へ複数の２値化投影パターンを投影する投影手段としての投影機（プロジェクター）１６と、投影機１６により２値化投影パターンを投影された測定対象物１４を撮像する撮像素子を備えて構成される撮像手段としての撮影機（カメラ）１８とを有して構成されている。なお、撮像素子としては、例えば、ＣＣＤやＣＭＯＳなどを用いることができる。
【００３５】
そして、この３次元形状測定装置１０においては、投影機１６はコンピュータ１２に接続されていて、測定対象物１４の表面に、コンピュータ１２で生成される各種の２値化投影パターンを投影することができるように配置にされている。また、撮影機１８は、投影機１６の投影方向とは異なる方向から測定対象物１４の表面を撮影することができるように配置されており、撮影機１８で撮影された画像は、デジタル化されてコンピュータ１２に取り込まれるようになされている。
【００３６】
そして、この３次元形状測定装置１０においては、撮影機１８が同一の２値化投影パターンを投影された測定対象物からの反射光画像を異なるシャッタースピード（露光時間）で撮像するようにして、コンピュータ１２はこうして撮影した複数の撮影画像を合成して１つの画像（多重シャッタースピード画像）を生成し、多重シャッタースピード画像に基づいて空間コード画像（後述する。）ならびに位相シフト画像（後述する。）を得るようにしている。
【００３７】
なお、２値化投影パターンとしては、上記において図１（ａ）（ｂ）（ｃ）（ｄ）を参照しながら説明したものと同様なものを用いることができるものであるので、その詳細な説明は省略する。
【００３８】
次に、図６には、コンピュータ１２により実現される３次元形状測定装置１０の制御システムのブロック構成説明図が示されている。
【００３９】
この制御システムは、投影機１６で投影する処理に使用する複数の２値化投影パターンを決定して、当該決定した複数の２値化投影パターンを測定対象物１４の表面に投影するとともに、当該決定した複数の２値化投影パターンの中のいずれか１つを幅Ｗ方向に所定の移動量だけシフト（移動）させながら測定対象物１４の表面に投影するための制御を行う２値化投影パターン投影手段２０と、撮影機１８が撮影した画像をデジタル化して画像処理手段２４（後述する。）へ送る画像入力手段２２と、画像入力手段２２から送られた画像を処理して測定対象物１４の三次元情報を抽出する画像処理手段２４とを有して構成されている。
【００４０】
ここで、２値化投影パターン投影手段２０は、図１（ａ）（ｂ）（ｃ）（ｄ）に示すような２値化投影パターンを生成する２値化投影パターン生成部２０ａと、２値化投影パターン生成部２０ａにおいて生成された２値化投影パターンを測定対象物１４へ投影するように投影機１６を制御する２値化投影パターン投影制御部２０ｂとを有して構成されている。
【００４１】
即ち、この２値化投影パターン投影手段２０においては、２値化投影パターン生成部２０ａで所定の幅Ｗの光透過領域１００ａと光非透過領域１００ｂとからなる複数の２値化投影パターンを生成する。
【００４２】
そして、空間コード画像生成処理（後述する。）を行う場合には、２値化投影パターン投影制御部２０ｂが投影機１６を制御して、２値化投影パターン生成部２０ａが生成した種類の異なる複数の２値化投影パターンを測定対象物１４の表面にそれぞれ投影する。この際には、２値化投影パターン投影制御部２０ｂは、測定対象物１４の表面に投影する２値化投影パターンを幅Ｗ方向へシフトしない。
【００４３】
一方、位相シフト画像生成処理（後述する。）を行う場合には、２値化投影パターン投影制御部２０ｂが投影機１６を制御して、２値化投影パターン生成部２０ａが生成した複数の２値化投影パターンのいずれか１つを測定対象物１４の表面に投影する。この際には、２値化投影パターン投影制御部２０ｂは、測定対象物１４の表面に投影する２値化投影パターンを幅Ｗ方向に所定の移動量ずつ順次にシフトさせながら投影する。
【００４４】
この移動量は任意であり、幅Ｗよりも小さくてもよいし大きくてもよいが、この移動量が、測定対象物１４における３次元形状の形状計測の測定分解能に関する最小分解能となる。
【００４５】
次に、画像入力手段２２は、測定対象物１４の表面に投影された２値化投影パターンを撮影機１８により撮影し、当該撮影により得られた画像をデジタル化して画像処理手段２４へ入力するものである。
【００４６】
この際に、撮影機１８は、ある２値化投影パターンを投影された測定対象物からの反射光画像を撮像する際にそれぞれ異なるシャッタースピード（露光時間）で撮像し、当該２値化投影パターンを投影された測定対象物からの反射光画像の多重シャッタースピード画像を生成可能とする。
【００４７】
さらに、画像処理手段２４は、画像入力手段２２から送られた画像を処理して測定対象物１４の三次元情報を抽出するものであり、２値化投影パターン生成部２０ａが生成した種類の異なる複数の２値化投影パターンを測定対象物１４の表面にそれぞれ投影し、撮影機１８により２値化投影パターンを投影された測定対象物１４の表面を、当該種類の異なる複数の２値化投影パターン毎に異なるシャッタースピード（露光時間）で撮影した画像を画像入力手段２２から送られて、当該種類の異なる複数の２値化投影パターン毎に当該送られた画像を合成した１つの画像（多重シャッタースピード画像）を生成し、当該種類の異なる複数の２値化投影パターン毎に生成した多重シャッタースピード画像を合成した画像（以下、「空間コード画像」と適宜に称する。）を生成する空間コード画像処理を行う空間コード画像生成手段２４ａと、２値化投影パターン生成部２０ａが生成したいずれか１つの２値化投影パターンを幅Ｗ方向に所定の移動量だけ順次にシフトさせながら測定対象物１４の表面に投影し、撮影機１８により２値化投影パターンを投影された測定対象物１４の表面を、当該シフト毎に異なるシャッタースピード（露光時間）で撮影した画像を画像入力手段２２から送られて、当該シフト毎に当該送られた画像を合成した１つの画像（多重シャッタースピード画像）を生成し、当該シフト毎に生成した多重シャッタースピード画像を合成した画像（以下、「位相シフト画像」と適宜に称する。）を生成する位相シフト画像生成処理を行う位相シフト画像生成手段２４ｂと、空間コード画像生成手段２４ａにより得られた空間コード画像（空間コード値）と位相シフト画像生成手段２４ｂにより得られた位相シフト画像（シフトコード値）とを合成した画像たる位相シフト空間コード画像を生成する位相シフト空間コード画像生成手段２４ｃと、位相シフト空間コード画像生成手段２４ｃにより得られた位相シフト空間コード画像から測定対象物１４の３次元形状情報を得る３次元形状情報取得手段２４ｄとを有して構成されている。
【００４８】
そして、３次元形状情報取得手段２４ｄにより取得された測定対象物１４の３次元形状情報は、表示装置１２ｆなどへ出力されて利用に供される。
【００４９】
なお、位相シフト空間コード画像生成手段２４ｃにより得られた画像たる位相シフト空間コード画像は空間コード画像であるので、３次元形状情報取得手段２４ｄは、空間コード化法のアルゴリズムのままで測定対象物１４の３次元形状情報を取得することができる。換言すれば、３次元形状情報取得手段２４ｄは、従来より公知の技術により構築することができ、従来より公知の技術を利用して３次元形状情報が得られる。
【００５０】
以上の構成において、図７に示すフローチャートを参照しながら、３次元形状測定装置１０の動作について説明する。
【００５１】
即ち、この３次元形状測定装置１０において測定対象物１４の３次元形状情報を得るには、まず、空間をコード化するために、所定の幅Ｗがそれぞれ異なる複数の２値化投影パターンを生成する（ステップＳ７０２）。
【００５２】
ここで、空間を分割するためのスリットの数をｎとすると、ｌｏｇ２ｎ枚の異なる２値化投影パターンを用意しなければならない。
【００５３】
次に、ステップＳ７０２で生成された２値化投影パターンの中で任意の一つを選択して、位相シフト画像を生成する位相シフト画像生成処理を行う（ステップＳ７０４）。即ち、投影機１６により、選択した２値化投影パターンを幅Ｗ方向に所定の移動量だけ順次にシフトさせながら測定対象物１４の表面に投影し、撮影機１８により２値化投影パターンを投影された測定対象物１４の表面を、当該シフト毎に異なるシャッタースピード（露光時間）で撮影した画像を画像入力手段２２から送られて、当該シフト毎に当該送られた画像を合成した１つの画像たる多重シャッタースピード画像を生成し、当該シフト毎に生成した多重シャッタースピード画像を合成した位相シフト画像を生成する。
【００５４】
つまり、位相シフト画像生成処理においては、後述する空間コード画像生成処理に必要な２値化投影パターンのうちの任意の一つ選択して用いるものであり、この位相シフト画像生成処理で用いる２値化投影パターンを「シフトパターン」と適宜に称することとする。
【００５５】
シフトパターンとしては、原理的にはいずれの２値化投影パターンを用いてもよく、いずれの２値化投影パターンでも同様の効果を得ることが可能であるが、シフト数を考慮すると最も幅Ｗの狭い２値化投影パターン、即ち、ＬＳＢパターンを用いることが好ましいものである。
【００５６】
即ち、シフトパターンとしては、原理的にはいずれの２値化投影パターンを用いても同様な作用効果を得ることができるが、位相シフト画像生成処理においてはシフト毎に２値化投影パターンを投影された測定対象物１４の画像を撮影するため、撮影枚数が最も少なくなる、換言すれば、シフト回数が最も少なくなるＬＳＢパターンを用いてそれをシフトすることが好ましい。
【００５７】
また、シフトパターンをシフトする際のシフト毎の移動量（以下、「シフトピッチ」と適宜に称する。）は、測定装置１０のユーザーが希望する測定分解能のピッチでよく、このシフトピッチが最小分解能となる。なお、投影機１６の最小ドットピッチを採用すると、投影機１６の解像度に影響を受けることなく最も測定分解能が高くすることができる。
【００５８】
また、シフトパターンは、そのパターンの１周期以内で複数回シフトするものとする。即ち、シフトパターンのシフト幅は、例えば、ＬＳＢパターンの光透過領域１００ａと光非透過領域１００ｂとの位置が入れ替わる１／２位相反転する範囲までシフトする。
【００５９】
ここで、測定対象物１４の表面をシフト毎に撮影して生成した多重シャッタースピード画像を合成して位相シフト画像を生成する際には、シフト毎に生成した各多重シャッタースピード画像をそれぞれに重み無く（または、同一の重みでもよい。）足し込むことで、シフトピッチを最小分解能とする空間コード画像たる位相シフト画像を生成する。
【００６０】
なお、位相シフト画像は、２値化投影パターンのストライプ幅間隔である幅Ｗ間隔でコード値が繰り返され、生成される位相シフト画像中に同一コード値が複数存在するようになる。このため、位相シフト画像生成処理においては、撮影空間に対して絶対的なコード値は生成されない。
【００６１】
また、後述するように、２値化投影パターンに「グレイコード」を採用した場合には、足し込みの前にＢｉｔ演算をすることが望ましい。
【００６２】
上記したステップＳ７０４の処理を終了すると、ステップＳ７０６の処理へ進み、ステップＳ７０２で生成された所定の幅Ｗがそれぞれ異なる複数の２値化投影パターンを用いて、空間コード画像を生成する空間コード画像生成処理を行う。即ち、投影機１６により、種類の異なる複数の２値化投影パターンを測定対象物１４の表面にそれぞれ投影し、撮影機１８により２値化投影パターンを投影された測定対象物１４の表面を、当該種類の異なる複数の２値化投影パターン毎に異なるシャッタースピード（露光時間）で撮影した画像を画像入力手段２２から送られて、当該種類の異なる複数の２値化投影パターン毎に当該送られた画像を合成した１つの画像たる多重シャッタースピード画像を生成し、当該種類の異なる複数の２値化投影パターン毎に生成した多重シャッタースピード画像を合成した空間コード画像を生成する。
【００６３】
つまり、空間コード画像生成処理においては、例えば、シフトパターンとしてＬＳＢパターンを選択したならば、シフトさせる前のＬＳＢパターンも含めた２値化投影パターンを測定対象物１４の表面に投影して各２値化投影パターンの多重シャッタースピード画像を生成し、生成した各２値化投影パターンの多重シャッタースピード画像を用いて、従来より公知の空間コード画像を生成する手法により、所謂、空間コード画像を生成する。
【００６４】
この空間コード画像の分解能はＬＳＢパターンのストライプ幅であるが、撮影空間に対して絶対的なコードとなる。
【００６５】
次に、ステップＳ７０４で生成した位相シフト画像とステップＳ７０６で生成した空間コード画像とを合成して、位相シフト空間コード画像を生成する位相シフト空間コード画像生成処理を行う（ステップＳ７０８）。この位相シフト空間コード画像は、撮影空間に対して相対的なコード値の画像たる位相シフト画像と撮影空間に対して絶対的なコード値の画像たる空間コード画像との合成であるため、これにより生成された位相シフト空間コード画像は、シフトピッチを測定分解能とし、かつ、撮影空間に対して絶対的なコード値の画像となる。即ち、シフトピッチまで細分化（高分解能化）された絶対的なコード画像（コード値）が生成される。
【００６６】
ステップＳ７０８の処理を終了すると、ステップＳ７１０の処理へ進み、ステップＳ７０８で生成された位相シフト空間コード画像に基づいて、測定対象物１４の３次元形状情報を取得する３次元形状情報取得処理を行う。即ち、位相シフト空間コード画像は空間コード画像であるため、位相シフト空間コード画像を空間コード画像として扱い、従来より公知の技術を用いて測定対象物１４の３次元形状情報を取得する。
【００６７】
そして、ステップＳ７１０の３次元形状情報取得処理により取得された測定対象物１４の３次元形状情報は、表示装置１２ｆなどへ出力されて各種の利用に供される。
【００６８】
次に、シフトパターンをシフトしながら各シフト毎における測定対象物１４の表面へ投影された２値化投影パターン画像を撮影する手法の原理について、以下により詳細に説明することする。
【００６９】
まず、図８（ａ）（ｂ）（ｃ）には、光非透過領域（図８（ａ）（ｂ）（ｃ）においてハッチングで示す領域）が、１６分割したシフトピッチ幅で図上左側から右側へシフトパターンをシフトして、光透過領域（図８（ａ）（ｂ）（ｃ）においてハッチングされていない領域）と光非透過領域とが反転する位置までシフトしたときにおける、各シフトパターンのシフト状態と各シフトピッチに対応するコード値とが示されている。なお、図８（ａ）（ｂ）（ｃ）において、黒１〜ｎは、シフトパターンをシフトしたことで光非透過領域がシフトパターンを含めて何回であったかを示している。
【００７０】
ここで、図８（ａ）は、シフトピッチを分解能とした空間に分割するものであり、シフトパターンを撮影した画像と、シフトごとに撮影した各画像の中の同一画素の２値化された値を単純に加算することによって空間を分割する。
【００７１】
例えば、図８（ｂ）に示すように、シフトパターンを予め二分割しておけばシフト回数は１／２になり、撮影枚数ならびに撮影時間ともに１／２となる。
【００７２】
同様に、図８（ｃ）に示すように、シフトパターンを４分割にすれば、シフト回数は１／４になり、さらに分割していけば同様にシフト回数が減り、撮影枚数ならびに撮影時間も短縮することができる。
【００７３】
このことから、シフトパターンとしては、２値化投影パターンの中で最もストライプ幅の小さい、即ち、分割数の多いＬＳＢパターンを選択することがより効率的である。
【００７４】
また、図８（ｂ）および図８（ｃ）に示すように、位相シフト画像は、２値化投影パターンのストライプの幅Ｗの間隔でコード値が繰り返され、生成される位相シフト画像中に同一コード値が複数存在することになる。このため、撮影空間に対して絶対的なコード値は生成されない。
【００７５】
しかしながら、シフトパターンをシフトさせることによって得られた同一コード値は、シフトパターンの光透過領域と光非透過領域という２値化された値の中では、複数回発生しないという特徴を備えている。
【００７６】
例えば、図８（ｃ）において、「光非透過領域｜光透過領域｜光非透過領域｜光透過領域」という２値化投影パターンで４分割されたパターンをシフトパターンとした場合、「黒１」というコード値は４カ所に発生している。
【００７７】
しかしながら、シフトパターンの中の「光透過領域」の中には１カ所しか発生しない。同様に、シフトパターンの中の「光非透過領域」の中にも「黒１」というコード値は１カ所しかない。
【００７８】
ここで、シフトさせる前のシフトパターンも含めた２値化投影パターンを投影および撮影し空間コード画像を生成すると、当該空間コード画像の分解能はＬＳＢパターンのストライプ幅であるが、撮影空間に対して絶対的なコード値となる。
【００７９】
即ち、図９に示すように、シフトパターンの「右側の光透過領域」は「空間コード０」、「左側の光非透過領域」は「空間コード３」というように撮影空間を一意にコード化できる。
【００８０】
従って、図１０に示すように、撮影空間に対して相対的なコード値を持つ位相シフト画像と、絶対的なコード値を持つ空間コード画像との複雑な演算システムを必要としない足し合わせによる合成により、シフトピッチを分解能とし撮影空間に対して絶対的なコード値を持つ位相シフト空間コード画像を生成することができる。
【００８１】
これにより、例えば空間を１６分割するのに１６回のシフトを行わずにシフト回数を減少させ、撮影枚数ならびに撮影時間を短縮することができるようになる。
【００８２】
なお、上記においては、バイナリコードを用いた場合について説明したが、一般に用いられているグレイコードでも原理は同じである。
【００８３】
ここで、グレイコードで表現した２値化投影パターンを使用し、位相シフト空間コード画像を公知の表計算ソフトウェアを用いて処理した結果を図１１に示す。
【００８４】
なお、図１１において、光透過領域は「１」、光非透過領域は「０」で表され、空間コード値は実際は２５５までであるが、３５までのみが表示されている。
【００８５】
また、投影機の解像度が、２値化投影パターンにおけるＬＳＢパターンのストライプの幅の４倍であるとしてシフトさせているため、バイナリコードであれば４回のシフトとなるが、グレイコードのため７回シフトとなっている。
【００８６】
Ｇ３２〜Ｇ１はグレイコードで表現した２値化投影パターンを示し、Ｓ１〜Ｓ７はＧ１（ＬＳＢ）を位相シフトしたパターンを示す。
【００８７】
足し合わせの覧には、位相シフトを単純に足し込みをした値を示している。ここで、足し合わせを行った位相シフト画像は「０〜３」までの変化でなくてはならないものが、「０〜７」「７〜０」と大きさと変化の方向が一定でなくなっている。
【００８８】
このままでも空間コード画像との合成は可能であるが、三次元情報抽出時の演算が複雑になってしまうので、空間コード画像との合成の前に図１２に示すＢｉｔ演算を行うことで大きさと変化の方向をバイナリコードから生成された空間コード画像に合わせる値で示した。
【００８９】
変換データの覧には、Ｇ３２〜Ｇ１のグレイコードパターンをバイナリコードパターンに変換した値を示す。バイナリ空間コードはバイナリコードから生成された空間コード画像を示す。
【００９０】
Ｂｉｔ演算によりグレイコードからバイナリコードに変換された位相シフト画像とバイナリコードから生成された空間コード画像を合成した位相シフト空間コード画像は、図１３に示すように、グラフの傾きが階段状になっているバイナリコードから生成された空間コード画像に対し、位相シフト空間コード画像ではグラフの傾きが直線状となり分解能が向上したことがわかる。
【００９１】
上記した３次元形状測定装置１０においては、シフトパターンをシフトする機能および位相シフト画像と空間コード画像とを合成する機能以外の特別な構成を必要とせずに、従来の空間コード化法で用いる構成を用いて、撮影画像の合成だけで高解像度の空間コード画像が生成でき、これにより測定対象物１４の３次元形状計測の分解能を向上することができる。
【００９２】
また、上記した３次元形状測定装置１０においては、測定分解能はシフトピッチに依存し、２値化投影パターンのストライプの幅Ｗとは独立しているため、ＬＳＢパターンのストライプの幅Ｗは、投影機１６や撮影機１８の解像度に応じてＬＳＢパターンのストライプが識別が可能な幅とすることができる。
【００９３】
次に、撮影機１８により同一の２値化投影パターンを投影された測定対象物からの反射光画像を異なるシャッタースピード（露光時間）で撮像する点について説明する。
【００９４】
ここで、撮影機１８を構成するＣＭＯＳやＣＣＤなどの撮像素子は、人間の目と比較すると入力光に対するダイナミックレンジが狭い。そのため、撮像素子においては、明るい部分の輝度差を認識するために光の感度を調整すると暗い部分を認識することができなくなり、また、暗い部分の輝度差を認識するために光の感度を調整すると明るい部分を認識することができなくなるものであった。
【００９５】
そこで、様々な光の感度で画像を撮影し、それらの画像の中から２値化投影パターン（スリットパターン）を認識できる画素を抽出して１枚の画像に合成する。そうすると、この画像からは、物体表面の輝度差によらず、全域のスリットパターンを認識できるようになる。これは、撮像素子における入射する光エネルギー量に関するダイナミックレンジを仮想的に広げることを意味する。  
撮像素子の感度を変化させる方法としては、レンズの絞りを調節する方法とシャッタースピード（撮像素子に電荷をためる時間）を調節する方法とがある。ここで、レンズの絞りを調節する方法では、被写界深度が変わり撮影画像のぼけ具合に影響を及ぼすようになるため、シャッタースピードを調節する方法を採用することが好ましい。
【００９６】
そして、そのような調節を行いつつ撮影した画像から、有効な画素を抽出して１つに合成する。なお、複数のシャッタースピードで撮影された画像から有効な画素を抽出して１つに合成して得られる画像は、上記したように一般に「多重シャッタースピード画像」と称されている（文献１「京都大学  学術メディアセンター，“多重画像の統合による多機能高精度画像計測”，メディア情報処理専修コース「コンピュータビジョン（画像計測の基礎と３次元形状復元）」セミナー資料・演習資料，Ｍａｙ  ２００５」および文献２「松山隆司，久野義徳，井宮  淳，“コンピュータビジョン（技術評論と将来展望）”，新技術コミュニケーションズ，１９９８」を参照する。）。
【００９７】
次に、撮影機１８が同一の２値化投影パターンを投影された測定対象物からの反射光画像を異なるシャッタースピード（露光時間）で撮像して多重シャッタースピード画像を生成する手法の詳細について説明する。
【００９８】
まず、はじめに、露光時間と画素値（見た目の明るさ）と真の明るさとの関係について説明する（文献１参照）。
【００９９】
撮影された画像のある点は、露光時間が長くなるほど画素値が大きくなる。即ち、撮像素子のダイナミックレンジ内であれば、露光時間と画素値との関係には線形性がある。図１４を参照しながら具体的に説明すると、例えば、露光時間が２ｍｓｅｃの時の画素値が１２８である場合には、もし露光時間が２ｍｓｅｃの半分の１ｍｓｅｃになると、画素値は半分の６４と暗くなる。
【０１００】
即ち、露光時間をｅとし、また、露光時間ｅで撮影された画像のある点の画素値をｏ（画素値ｏは、０〜２５５の値をとるものとする。）とすると、画素値ｏをそれを撮影したときの露光時間値ｅで割った値ｉ（＝ｏ／ｅ）は、露光時間によらず一定である。本願明細書においては、上記により得られたｉを、露光時間による画素値への影響が除去された「真の明るさ」と称することとする。
【０１０１】
ここで、真の明るさの選択基準について説明するが、撮像素子への入射光のエネルギーがダイナミックレンジを超える場合は、撮影画像上の画素値ｏは２５５を超えるかまたは０を下回ることになる。その場合の画素値を使って上記したように真の明るさを計算しようとしても、正しい値は得られない。これを含め、一般的に撮影画像の画素値には、以下の（ａ）〜（ｄ）に示す特性が見られる（文献１参照）。
【０１０２】
（ａ）撮影時の信号レベルが低いところはノイズの影響が大きい
（ｂ）撮影時の信号レベルが高いところは入出力の線形性が乱れている
（ｃ）撮影時の信号レベルが飽和（＞２５５）しているデータは使えない
（ｄ）露光時間が短いほど精度は低い
この実施の形態においては、上記した特性を踏まえて、以下の（１）〜（４）に示すアルゴリズムにより真の明るさの決定し、この真の明るさをもった画素を有効な画素として複数のシャッタースピードで撮影された画像から抽出し、抽出した画素を１つの画像として合成して多重シャッタースピード画像を生成する。なお、当然のことながら、抽出した有効な画素を用いて画像を合成するため、有効な画素の抽出は撮影された画像の全ての画素に関して行うものである。
【０１０３】
（１）画素値の有効範囲の上限、即ち、上限画素値を設定する
一般には、画素値の有効範囲の上限、即ち、上限画素値は、上記（ｂ）（ｃ）よ        り２４０〜２５０程度とされているが、この実施の形態においては「２５０」と        した、
（２）画素輝度値の有効範囲の下限、即ち、下限画素値を設定する
この実施の形態においては、下限画素値を「５」とした、
（３）上記（１）（２）で定めた範囲内において最大の画素値を持つ画素を採用して、        その画素値ｏと撮影時の露光時間ｅから、ｉ＝ｏ／ｅにより真の明るさｉを決定        する、
（４）もし、全ての露光時間での撮影画像について画素値が上限画素値を超える場合は
、最短露光時間でも上限画素値を上回ったということであるので、真の明るさｉ        として「上限画素値／最短露光時間」により得られた値を採用する、  
逆に、全ての露光時間での撮影画像について画素値が下限画素値を下回る場合は
、最長露光時間でも下限画素値を下回ったということであるので、真の明るさｉ        値として「下限輝度値／最長露光時間」により得られた値を採用する、
これにより、真の明るさｉとして、上限画素値または下限画素値付近で正常に求        められた真の明るさに近い値を求めることができる、
その結果、上限画素値または下限画素値付近での明るさの変化が滑らかになる。
【０１０４】
次に、真の明るさを可視化する手法について説明すると、上記した（１）〜（４）に示すアルゴリズムでは、基本的に真の明るさが大きいほど、その時の露光時間は短くなっていく。ここで、露光時間が短くなるほど画素値の精度は悪くなっていくので、真の明るさが大きいほど精度が悪くなるということになる。そこで、上記において求めた真の明るさの値に対して対数スケール（ｌｏｇ１０（ｉ））をとることとし、これを画像化する。具体的には、例えば、全ての座標の画素に対してその画素値を計算し、それらの最小値が０、最大値が２５５になるようにスケーリングすればよい。
【０１０５】
次に、実際の２値化投影パターン（スリットパターン）を投影した画像での適用について説明する。
【０１０６】
まず、同一の２値化投影パターンを投影された測定対象物からの反射光画像を異なるシャッタースピード、即ち、露光時間を変えて撮影する。
【０１０７】
ここで、表面色として黒色と白色とが混在するような測定対象物を撮影する場合には、ユーザは以下の（ア）〜（オ）に示す条件を満たすように実際に２値化投影パターンを試しに投影して、その投影の反射光画像の状態を見て露光時間のパターンを設定する。
【０１０８】
（ア）黒色の部分に当たっているスリットパターンを視認できるような露光時間を最長        の露光時間にする、
（イ）白色の部分に当たっているスリットパターンを視認できるような露光時間を最短        の露光時間にする、
（ウ）上記（ア）（イ）により求められた最長露光時間の値と最短露光時間の値との間        に、等時間間隔で２〜３段階程度で露光時間を設定する、
（エ）それらすべての露光時間について、スリットパターンを投影して、その投影の反        射光画像を撮影する、
（オ）上記（エ）で撮影した反射光画像を用いて、上記において説明した手法により各        反射光画像の各画素の真の明るさを計算し、複数のシャッタースピードで撮影さ        れた画像から有効な画素を抽出し、抽出した画像を１つに合成して多重シャッタ        ースピード画像を生成する。
【０１０９】
ここで、真の明るさを計算してその最大値と最小値とを求めるときは、同じ空間コードのポジ・ネガ相補パターンを通じて行う。その目的は、空間コード化法ではスリットのポジ・ネガパターンの輝度差より２値画像を生成するが（文献３「井口征士，佐藤宏介，“三次元画像計測”，昭晃堂，１９９０」を参照する。）、それを正確に生成できるようにするためである。
【０１１０】
もしポジとネガとで個別に真の明るさの最大と最小値を求めると、それらは異なってしまい、真の明るさを可視化する処理でスケーリングされる範囲も異なってしまう。そうすると、例えば、本来ポジ画像のほうが明るくネガ画像のほうが暗い画素では、その関係が逆転してしまう可能性がある。こうした場合には、正確な２値画像を得ることができなくなる。
【０１１１】
このため、真の明るさから作る同じビットのポジ・ネガ画像の基準輝度は、一致させる必要がある。
【０１１２】
次に、本願発明者による実験結果について説明すると、図１５（ａ）（ｂ）（ｃ）（ｄ）には実際に撮影された画像が示されている。
【０１１３】
即ち、図１５（ａ）（ｂ）（ｃ）（ｄ）には、露光時間を４０ｍｓｅｃ（図１５（ａ））、２７．３ｍｓｅｃ（図１５（ｂ））、１４．７ｍｓｅｃ（図１５（ｃ））、２ｍｓｅｃ（図１５（ｄ））というように、４０ｍｓｅｃから２ｍｓｅｃまで４段階の等間隔時間で変化させて撮影した画像が示されている。また、図１６には、それらから合成された多重シャッタースピード画像が示されている。
【０１１４】
最も露光時間が長い図１５（ａ）に示す画像では、測定対象物の表面色が黒色の部分ではスリットパターンの輝度差を認識できるが、測定対象物の表面色が白色の部分では白飛びを起こして認識できない。逆に、最も露光時間が短い図１５（ｄ）に示す画像では、測定対象物の表面色が白色の部分ではスリットパターンを認識できるが、測定対象物の表面色が黒色の部分は潰れて認識できない。
【０１１５】
しかしながら、図１６に示す多重シャッタースピード画像では、図１５（ａ）ならびに図１５（ｄ）で潰れていたスリットパターンもはっきりと現れている。
【０１１６】
ここで、図１６に示す多重シャッタースピード画像を生成するに際しては、露光パターンとして図１５（ａ）（ｂ）（ｃ）（ｄ）に示す４段階の露光時間のパターン、即ち、４パターンを用いたが、そのパターンの最適な数について検討する実験を行ったのでそれについて説明する。
【０１１７】
図１７（ａ）には、露光パターンとして最長の４０ｍｓｅｃと最短の２ｍｓｅｃとの２パターンを用い、露光時間４０ｍｓｅｃの図１５（ａ）に示す画像と露光時間２ｍｓｅｃの図１５（ｄ）に示す画像とのみを用いて生成した多重シャッタースピード画像が示されている。一方、図１７（ｂ）には、露光パターンとして４０ｍｓｅｃ、２７．３ｍｓｅｃ、１４．７ｍｓｅｃ、２ｍｓｅｃとの４パターンを用い、図１５（ａ）（ｂ）（ｃ）（ｄ）に示す画像を用いて生成した多重シャッタースピード画像が示されている。
【０１１８】
これら図１７（ａ）に示す多重シャッタースピード画像と図１７（ｂ）に示す多重シャッタースピード画像とを比較すると、パターン数が２つの図１７（ａ）の多重シャッタースピード画像では、矢印で示した箇所などで明度の変化が不連続な部分があることがわかる。
【０１１９】
この理由は、画像合成時において最長露光時間の画像で輝度が上限を超えている画素を除くと、次に採用されるのは中間の露光時間の画像ではなく、急に最短露光時間の画像になり、合成された画素間の連続性が悪くなるためである。
【０１２０】
このように不要な輝度差が発生する可能性があると、その画像を元にして空間コード化法で必要な２値画像を生成する際に、その結果が不正確になる可能性があるので、２パターンのみという使用は避けることが望ましい。
【０１２１】
次に、図１８（ａ）には露光パターン数が２の場合の３次元形状復元結果を示す画像（シェーディング表示）が示されており、図１８（ｂ）には露光パターン数が３の場合の３次元形状復元結果を示す画像（シェーディング表示）が示されており、図１８（ｃ）には露光パターン数が４の場合の３次元形状復元結果を示す画像（シェーディング表示）が示されており、図１８（ｄ）には露光パターン数が５の場合の３次元形状復元結果を示す画像（シェーディング表示）が示されている。
【０１２２】
これら図１８（ａ）（ｂ）（ｃ）（ｄ）に示す３次元形状復元結果を比較すると、露光パターン数が２パターンまたは３パターンの場合には、露光パターン数が４パターンの場合に比べて矢印で示した箇所などで若干形状が欠落している部分がある。また、露光パターン数が５パターンの場合では、露光パターン数が４パターンの場合と比較して視覚上の差は見られなかった。
【０１２３】
従って、上記した事例においては、少なくとも４パターンの露光パターンで撮影を行うことが好ましい。
【０１２４】
以上において説明したように、複数の露光時間パターンで２値化投影パターンの投影画像を撮影してそれらの画像を合成することにより、測定対象物の表面に輝度値の差が大きい色が混在する場合でも、スリットパターンの輝度差を画像全域で得られるようになり、その結果、測定対象物の表面色の輝度差に依存しない安定した計測結果を得ることができるようになる。
【０１２５】
ここで、図１９（ａ）（ｂ）には、多重シャッタースピード画像を用いない場合の３次元形状復元結果を示されており、図１９（ａ）は短い露光時間で画像撮影を行った場合の３次元形状復元結果であり、図１９（ｂ）は長い露光時間で画像撮影を行った場合の３次元形状復元結果である。一方、図１９（ｃ）には、本発明による多重シャッタースピード画像を用いた場合の３次元形状復元結果が示されている。
【０１２６】
これら図１９（ａ）（ｂ）（ｃ）に示す３次元形状復元結果を比較すると、図１９（ｃ）では、死角などの理由で元々撮像できない部分を除いて、図１９（ａ）（ｂ）において復元できなかった箇所の形状が復元されていることがわかる。
【０１２７】
なお、上記した実施の形態は、以下の（１）乃至（４）に説明するように変形してもよい。
【０１２８】
（１）上記した実施の形態においては、空間コード化法として位相シフト空間コード化法を用いたが、これに限られることなしに、従来より知られた空間コード化法を用いるようにしてもよく、その場合にも空間コード画像の撮影を多重シャッタースピード画像で求めればよい。
【０１２９】
（２）上記した実施の形態においては、位相シフト画像生成処理を行った後に空間コード画像生成処理を行うようにしたが、これに限られるものではないことは勿論であり、両者の処理の順番を逆にして、空間コード画像生成処理を行った後に位相シフト画像生成処理を行うようにしてもよい。
【０１３０】
（３）上記した実施の形態においては、２値化投影パターンを生成するようにしたが、これに限られるものではないことは勿論であり、記憶手段に幅Ｗがそれぞれ異なる複数の２値化投影パターンを予め記憶しておき、当該記憶手段に記憶されている２値化投影パターンを適宜に読み出すようにしてもよい。
【０１３１】
（４）上記した実施の形態ならびに上記（１）乃至（３）に示す変形例は、適宜に組み合わせるようにしてもよい。
【産業上の利用可能性】
【０１３２】
本発明は、工業デザインでの形状取得、人体の形状取得あるいは建築物の形状取得などに利用することができる。
【図面の簡単な説明】
【０１３３】
【図１】図１（ａ）（ｂ）（ｃ）（ｄ）は、各種の２値化投影パターンの例を示す説明図である。
【図２】図２は、表面に輝度値の差が大きい黒色と白色とが混在する測定対象物の一例を示す説明図である。
【図３】図３（ａ）（ｂ）は、カメラの露光時間が短い場合における説明図であり、図３（ａ）は、２値化投影パターンを投影された図２に示す測定対象物を露光時間の短いカメラで撮像した場合の反射光画像の説明図であり、図３（ｂ）は、図３（ａ）に示す反射光画像を用いて得られる３次元形状の測定結果を示す画像である。
【図４】図４（ａ）（ｂ）は、カメラの露光時間が長い場合における説明図であり、図４（ａ）は、２値化投影パターンを投影された図２に示す測定対象物を露光時間の長いカメラで撮像した場合の反射光画像の説明図であり、図４（ｂ）は、図４（ａ）に示す反射光画像を用いて得られる３次元形状の測定結果を示す画像である。
【図５】図５には、本発明による３次元形状測定装置の実施の形態の一例を表す概略構成説明図である。
【図６】図６は、本発明による３次元形状測定装置の制御システムのブロック構成説明図である。
【図７】図７は、本発明による３次元形状測定装置の動作を示すフローチャートである。
【図８】図８（ａ）（ｂ）（ｃ）は、本発明による３次元形状測定装置の動作原理を示す説明図である。
【図９】図９は、本発明による３次元形状測定装置の動作原理を示す説明図である。
【図１０】図１０は、本発明による３次元形状測定装置の動作原理を示す説明図である。
【図１１】図１１は、グレイコードで表現した２値化投影パターンを使用し、位相シフト空間コード画像を公知の表計算ソフトウェアを用いて処理した結果を示す表である。
【図１２】図１２は、Ｂｉｔ演算の演算内容を示すものである。
【図１３】図１３は、Ｂｉｔ演算によりグレイコードからバイナリコードに変換された位相シフト画像とバイナリコードから生成された空間コード画像を合成した位相シフト空間コード画像を示すグラフである。
【図１４】図１４は、露光時間と画素値（見た目の明るさ）と真の明るさとの関係を示す説明図である。
【図１５】図１５（ａ）（ｂ）（ｃ）（ｄ）は、本願発明者による実験結果を示す画像（８ビット目の空間コード）である。
【図１６】図１６は、図１５（ａ）（ｂ）（ｃ）（ｄ）に示す画像から合成された多重シャッタースピード画像である。
【図１７】図１７（ａ）は、露光パターンとして最長の４０ｍｓｅｃと最短の２ｍｓｅｃとの２パターンを用い、露光時間４０ｍｓｅｃの図１５（ａ）に示す画像と露光時間２ｍｓｅｃの図１５（ｄ）に示す画像とのみを用いて生成した多重シャッタースピード画像（全投影画像）であり、また、図１７（ｂ）は、露光パターンとして４０ｍｓｅｃ、２７．３ｍｓｅｃ、１４．７ｍｓｅｃ、２ｍｓｅｃとの４パターンを用い、図１５（ａ）（ｂ）（ｃ）（ｄ）に示す画像を用いて生成した多重シャッタースピード画像（全投影画像）である。
【図１８】図１８（ａ）は露光パターン数が２の場合の３次元形状復元結果を示す画像（シェーディング表示）であり、図１８（ｂ）は露光パターン数が３の場合の３次元形状復元結果を示す画像（シェーディング表示）であり、図１８（ｃ）は露光パターン数が４の場合の３次元形状復元結果を示す画像（シェーディング表示）であり、図１８（ｄ）は露光パターン数が５の場合の３次元形状復元結果を示す画像（シェーディング表示）である。
【図１９】図１９（ａ）（ｂ）は、多重シャッタースピード画像を用いない場合の３次元形状復元結果（テクスチャマッピング表示）を示し、図１９（ａ）は短い露光時間で画像撮影を行った場合の３次元形状復元結果（テクスチャマッピング表示）であり、図１９（ｂ）は長い露光時間で画像撮影を行った場合の３次元形状復元結果（テクスチャマッピング表示）であり、図１９（ｃ）は、本発明による多重シャッタースピード画像を用いた場合の３次元形状復元結果（テクスチャマッピング表示）を示す。
【符号の説明】
【０１３４】
１０      三次元形状の測定装置
１２      コンピュータ
１２ａ    バス
１２ｂ    中央処理装置（ＣＰＵ）
１２ｃ    リードオンリメモリ（ＲＯＭ）
１２ｄ    ランダムアクセスメモリ（ＲＡＭ）
１２ｅ    入力装置
１２ｆ    表示装置
１４      測定対象物
１６      プロジェクタ
１８      カメラ
２０      ２値化投影パターン投影手段
２０ａ    ２値化投影パターン生成部
２０ｂ    ２値化投影パターン投影制御部
２２      画像入力手段
２４      画像処理手段
２４ａ    空間コード画像生成手段
２４ｂ    位相シフト画像生成手段
２４ｃ    位相シフト空間コード画像生成手段
２４ｄ    ３次元形状情報取得手段
Ａ      測定対象物
【図１】
2007315864.tif 000003
【図５】
2007315864.tif 000004
【図６】
2007315864.tif 000005
【図７】
2007315864.tif 000006
【図８】
2007315864.tif 000007
【図９】
2007315864.tif 000008
【図１０】
2007315864.tif 000009
【図１１】
2007315864.tif 000010
【図１２】
2007315864.tif 000011
【図１３】
2007315864.tif 000012
【図１４】
2007315864.tif 000013
【図２】
2007315864.tif 000014
【図３】
2007315864.tif 000015
【図４】
2007315864.tif 000016
【図１５】
2007315864.tif 000017
【図１６】
2007315864.tif 000018
【図１７】
2007315864.tif 000019
【図１８】
2007315864.tif 000020
【図１９】
2007315864.tif 000021