(57)【要約】【課題】  多重反射の影響を軽減し、距離を精度よく計測する。【解決手段】  対象物体にパターン光を投影する少なくとも一つの投影手段と、前記パターン光が投影された対象物体を撮像する少なくとも一つの撮像手段と、前記撮像手段で撮像される画像に基づいて、前記撮像手段で撮像される画像に基づいて、前記投影手段または前記撮像手段から前記計測対象物体までの距離を計測することが困難な計測困難領域を取得する取得手段と、前記撮像手段で撮像される画像に基づいて、前記投影手段または前記撮像手段からの前記計測対象物体までの距離を導出する導出手段と、前記導出される距離が有効であるかを判断する判断手段と、前記取得される計測困難領域に投影されるパターン光の輝度と、前記判断手段によって距離が有効であると判断される領域に投影されるパターン光の輝度を、消光または減光させる制御手段とを備える。【選択図】  図１
2014115107.tif 000002
【特許請求の範囲】
【請求項１】
対象物体にパターン光を投影する少なくとも一つの投影手段と、
前記パターン光が投影された対象物体を撮像する少なくとも一つの撮像手段と、
前記撮像手段で撮像される画像に基づいて、前記投影手段または前記撮像手段から前記計測対象物体までの距離を計測することが困難な計測困難領域を取得する取得手段と、
前記撮像手段で撮像される画像に基づいて、前記投影手段または前記撮像手段からの前記計測対象物体までの距離を導出する導出手段と、
前記導出される距離が有効であるかを判断する判断手段と、
前記投影されるパターン光のうち、前記取得される計測困難領域に投影されるパターン光の輝度と、前記判断手段によって距離が有効であると判断される領域に投影されるパターン光の輝度とを、消光または減光させる制御手段とを備えることを特徴とする距離計測装置。
【請求項２】
前記計測困難領域は、前記撮像手段または前記投影手段から前記計測対象物体を観察した場合に前記計測対象物体が遮蔽される、オクルージョン領域、または、前記撮像される画像における輝度値が飽和しているサチュレーション領域のうち、少なくともいずれか一方であることを特徴とする請求項１に記載の距離計測装置。
【請求項３】
前記取得手段は、前記撮像手段で撮像された画像に基づいて、前記導出手段で導出される距離に対する信頼度を取得し、該信頼度に基づいて、前記計測困難領域を取得することを特徴とする請求項１または２に記載の距離計測装置。
【請求項４】
前記投影手段と前記撮像手段とのうち、いずれかまたは両方を複数備え、
前記導出手段は、前記投影手段と前記撮像手段とのうち、いずれかまたは両方を複数用いて撮像した画像ごとに、前記投影手段または前記撮像手段から、前記計測対象物体までの距離を導出し、
前記判断手段は、前記計測された複数の距離が一致しているかどうかに基づいて、前記計測された距離が有効であるかを判断することを特徴とする請求項２に記載の距離計測装置。
ことを特徴とする請求項１乃至３のいずれか１項に記載の距離計測装置。
【請求項５】
更に、請求項１に記載の各手段による処理を１回実行した後に、予め定められた終了判定条件を満たすかどうかを判定する終了判定手段を備え、前記終了判定手段によって終了判定条件を満たさないと判定された場合に、前記投影手段、前記撮像手段、前記取得手段、前記導出手段、前記判断手段、前記制御手段、の一連の処理を少なくとも１回繰り返して実行することを特徴とする請求項１乃至４のいずれか１項に記載の距離計測装置。
【請求項６】
前記制御手段は、前記投影手段、前記撮像手段、前記取得手段、前記導出手段、前記判断手段、前記制御手段、の一連の処理を複数回繰り返して実行する場合に、前記投影されるパターン光のうち、前記取得される計測困難領域に投影されるパターン光の輝度と、前記判断手段によって距離が有効であると判断される領域に投影されるパターン光の輝度とを、一時的に消光または減光させることを特徴とする請求項５に記載の距離計測装置。
【請求項７】
前記終了判定手段は、前記投影手段、前記撮像手段、前記取得手段、前記計測手段、前記判断手段、前記制御手段、により行われる一連の処理の繰り返し回数に基づいて、判定を行うことを特徴とする請求項５または６に記載の距離計測装置。
【請求項８】
前記終了判定手段は、前記投影手段、前記撮像手段、前記取得手段、前記計測手段、前記判断手段、前記制御手段、により行われる一連の処理に要する時間に基づいて、判定を行うことを特徴とする請求項５または６に記載の距離計測装置。
【請求項９】
前記終了判定手段は、前記投影手段、前記撮像手段、前記取得手段、前記計測手段、前記判断手段、前記制御手段、により行われる処理の結果に基づいて、判定を行うことを特徴とする請求項５または６に記載の距離計測装置。
【請求項１０】
前記終了判定手段は、前記投影手段、前記撮像手段、前記取得手段、前記計測手段、前記判断手段、前記制御手段、により行われた過去の計測結果と、今回の計測結果とに基づいて、判定を行うことを特徴とする請求項５または６に記載の距離計測装置。
【請求項１１】
投影手段が、対象物体にパターン光を投影する投影工程と、
撮像手段が、前記パターン光が投影された対象物体を撮像する撮像工程と、
取得手段が、前記撮像手段で撮像される画像に基づいて、前記投影手段または前記撮像手段から前記計測対象物体までの距離を計測することが困難な計測困難領域を取得する取得工程と、
導出手段が、前記撮像手段で撮像される画像に基づいて、前記投影手段または前記撮像手段からの前記計測対象物体までの距離を導出する導出工程と、
判断手段が、前記導出される距離が有効であるかを判断する判断工程と、
制御手段が、前記取得工程で取得される計測困難領域に投影されるパターン光の輝度と、前記判断手段によって距離が有効であると判断される領域とに投影されたパターン光の輝度を、消光または減光させる制御工程とを備えることを特徴とする距離計測方法。
【請求項１２】
請求項１１に記載の距離計測方法を実現するためのプログラム。
【請求項１３】
請求項１１に記載の距離計測方法を実現するためのプログラムを記録した記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、対象物体の３次元形状を計測する技術に関する。
【背景技術】
【０００２】
工業製品の部品等の物体の三次元計測を行う技術は従来から様々な手法が提案されており、その中の一つとして、計測対象物に所定の投影パターン（縞模様や格子模様）を投影して計測対象物を撮影し、その撮影画像から各画像位置（画素）と、投影パターンにおける縞の位置との対応を求め、三角測量に基づいて計測対象物の高さを算出し、計測対象物の三次元形状を計測するものが高精度で安定した計測法である。
【０００３】
このような三次元計測手法において、計測対象物が金属部品などの光沢を有する場合、計測対象物の形状によっては、他の面に投影されたパターン光が計測対象物間で複数回の反射、すなわち、多重反射が起こる。計測対象物の表面で一度反射した光を１次反射、計測対象物の表面で一度反射した光が再度対象物で反射されるのを２次反射、さらにもう一度対象物で反射されたものは３次反射とよばれ、２次以上の反射のことを多重反射と言う。多重反射は計測対象物間で相互に発生するため、相互反射とも呼ばれる。多重反射が起こると計測対象物中に本来は存在しないはずの映り込みが生じる。このような撮影画像に基づいて、三次元計測処理を適用すると、映り込みがノイズとして作用するため、計測精度が低下するおそれがある。
【０００４】
映り込み対策としては特許文献１にあるように、被検物の表面で多重反射して撮像される投影パターンの一部を減光もしくは消光させる手法が提案されている。具体的には、２種類の異なるパターン光を投影し、それぞれから三次元形状を求め、２つの三次元計測結果に乖離がある領域を、多重反射が発生した領域であると見なし、光線追跡によって多重反射を引き起こす原因となっている面を見つけ出し、その面に対応する投影パターンを消光し、新たに消光したパターンを計測対象物に投影して得られた撮影画像に基づいて、三次元計測結果を補正している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００８−３０９５５１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１による方法では、投影パターンの一部を減光もしくは消灯させる点は良いが、多重反射の原因となっている投影パターン部分を見つけ出すために光線追跡を行っており、処理が複雑で時間がかかってしまう。また、相互反射した領域に対応する投影パターンは消光するため、相互反射した領域は、計測が行えないという問題もある。さらに、多重反射していない計測対象物体の一部の領域が遮蔽される被遮蔽（オクルージョン）領域、若しくは、撮像された画像中の輝度値が飽和するサチュレーション領域に対しては、消光されないため、精度のよい計測が行えないという課題もある。
【０００７】
本発明は、以上の課題に鑑みてなされたものであり、簡単な処理の繰り返しによって、多重反射の影響を低減し計測精度を向上させることを目的とする。
【課題を解決するための手段】
【０００８】
上記の目的を達成するために、本発明による計測装置は例えば、対象物体にパターン光を投影する少なくとも一つの投影手段と、前記撮像手段で撮像される画像に基づいて、前記投影手段または前記撮像手段から前記計測対象物体までの距離を計測することが困難な計測困難領域を取得する取得手段と、前記撮像手段で撮像される画像に基づいて、前記投影手段または前記撮像手段からの前記計測対象物体までの距離を導出する導出手段と、前記導出される距離が有効であるかを判断する判断手段と、前記投影されるパターン光のうち、前記オクルージョン領域または前記サチュレーション領域のうちの少なくともいずれか一方に対応する前記パターン光の輝度と、前記判断手段によって距離が有効であると判断される領域に投影されたパターン光の輝度を、消光または減光させる制御手段とを備える。
【発明の効果】
【０００９】
本発明により、多重反射の影響を低減し、距離を精度よく計測する。
【図面の簡単な説明】
【００１０】
【図１】第１の実施形態の距離計測装置の構成を示す図である。
【図２】第１の実施形態の相補パターン投影法を説明する図およびサチュレーションが起こる例を説明する図である。
【図３】第１の実施形態の位相シフト法を説明する図およびサチュレーションが起こる例を説明する図である。
【図４】第１の実施形態の計測対象物が多重反射の影響を受けた例を示す図である。
【図５】第１の実施形態の多重反射光による計測誤差発生メカニズムの説明する図である。
【図６】第１の実施形態のパターンの一部を消光して投影した例を示す図である。
【図７】第１の実施形態の計測対象物にオクルージョンがある例を示す図である。
【図８】第１の実施形態のオクルージョンがある時のパターン更新の例を示す図である。
【図９】第１の実施形態の多重反射の影響を受ける画素の輝度値の例を示す図である。
【図１０】第１の実施形態の距離計測装置におけるオクルージョンがある時の処理の流れを示すフローチャートである。
【図１１】第１の実施形態の距離計測装置におけるサチュレーションがある時の処理の流れを示すフローチャートである。
【図１２】第２の実施形態の距離計測装置の構成を示す図である。
【図１３】第２の実施形態の計測対象物にオクルージョンがある例を示す図である。
【図１４】第３の実施形態の多重反射の影響を受ける画素の輝度値の例を示す図である。
【図１５】第３の実施形態の距離計測装置の処理の流れを示すフローチャートである。
【図１６】第４の実施形態の距離計測装置の処理の流れを示すフローチャートである。
【図１７】第４の実施形態の相補パターン投影法で距離計測信頼度を説明する図である。
【発明を実施するための形態】
【００１１】
［第１の実施形態］
第１の実施形態では、計測対象物にパターン光を投影するパターン投影部（プロジェクタ）とパターン光が投影された計測対象物を撮影する撮像部（カメラ）を用いて、計測対象物の三次元計測を行う。第１の実施形態では、ある領域における距離計測値の判断手段として、２つの撮像部と１つの投影部を用いて三次元計測を行い、計測された領域の距離が有効か計測困難かあるいは無効かを判断する。ここで、距離計測値が有効であるとは、計測された距離値が多重反射や画像ノイズによる影響が小さく、基準としている撮像部または投影部から計測した領域までの距離値として許容できることを示す。計測困難とは、オクルージョンやサチュレーションにより正確な距離計測が困難であることを示す。無効とは、多重反射等の影響により、距離計測結果が正確でないことを示す。
【００１２】
距離計測は、投影部の有する画素ごとに行われる。そのため、有効であるかの判断は、１画素ごとに行われる。本実施形態では、投影部の表示素子の１画素ごとに、含まれる計測対象物体の距離計測値の有効性を判断するが、本発明は、これに限定されない。例えば、投影部の表示素子の複数の画素ごとに、含まれる計測対象物体の距離計測値の有効性を判断してもよい。また、撮像部の表示素子の１画素または複数の画素ごとに、含まれる計測対象物体の距離計測値の有効性を判断してもよい。
【００１３】
また、本実施形態では、有効であると判断された領域に対応する投影部の表示素子の１画素ごとに、消光または減光を行うが、本発明はこれに限定されない。例えば、投影部の表示素子の複数の画素ごとに、消光または減光を行ってもよい。
【００１４】
図１は、本実施形態における距離計測装置の構成を示している。同図に示すように、本実施形態における構成では、投影部１、撮像部２Ａおよび２Ｂ、制御・計算処理部３からなる。つまり、撮像部を複数備えている。
【００１５】
投影部１は、パターン光、例えばラインパターン光を計測対象物４に投影する。撮像部２はパターン光が投影された計測対象物４を撮像する。制御・計算処理部３は、投影部１と撮像部２とを制御し、撮像された画像データを計算処理して計測対象物４までの距離を計測する。
【００１６】
投影部１は、光源１１と、照明光学系１２と、表示素子１３と、投影光学系１４とを備える。光源１１は、例えばハロゲンランプ、ＬＥＤなど各種の発光素子である。照明光学系１２は、光源１１から出射された光を表示素子１３へと導く機能を有する。光源から出射された光が表示素子１３に入射する際に、入射輝度が均一である方がよい。そのため、照明光学系１２には、例えば、ケーラー照明や拡散板など輝度の均一化に適した光学系が用いられる。表示素子１３は、例えば透過型ＬＣＤや反射型のＬＣＯＳ・ＤＭＤなどである。表示素子１３は、照明光学系１２からの光を投影光学系１４に導く際に、透過率、または、反射率を空間的に制御する機能を有する。投影光学系１４は、表示素子１３を計測対象物４の特定位置に結像させるように構成された光学系である。このような構成を満たす例として、ＤＬＰプロジェクタや回折タイプのプロジェクタを利用してもよい。本実施形態では表示素子と投影光学系とを備える投影装置の構成を示したが、スポット光と２次元走査光学系とを備える投影装置を用いることも可能である。
【００１７】
撮像部２Ａおよび２Ｂはそれぞれ、撮像レンズ２１と、撮像素子２２とを備える。撮像レンズ２１は、計測対象物４の特定位置を撮像素子２２上に結像させるよう構成された光学系である。撮像素子２２は、例えばＣＭＯＳセンサ、ＣＣＤセンサなど各種光電変換素子である。
【００１８】
制御・計算処理部３は、投影パターン制御部３１と、画像取得部３２と、距離算出部３３と、判断部３４と、繰り返し制御部３５と、パラメータ記憶部３６とを備える。制御・計算処理部３のハードウェアは、ＣＰＵ、メモリ、ハードディスクなどの記憶装置、入出力用の各種インタフェース等を具備する汎用のコンピュータ（ハードウェア）から構成される。また、制御・計算処理部３のソフトウェアは、本発明に係る距離計測方法をコンピュータに実行させる距離計測プログラムを備える。
【００１９】
ＣＰＵが距離計測プログラムを実行することにより、投影パターン制御部３１、画像取得部３２、距離算出部３３、判断部３４、繰り返し制御部３５およびパラメータ記憶部３６の各部を実現している。
【００２０】
投影パターン制御部３１は、後述する投影パターン（プロジェクタにより投影されるパターン光のパターン）を生成して、記憶装置に予め記憶する。また、必要に応じて記憶した投影パターンのデータおよび後述する判断結果を読み出し、例えば、ＤＶＩのような汎用的なディスプレイ用インタフェースを介して投影パターンデータを投影部１に伝送する。さらにＲＳ２３２ＣやＩＥＥＥ４８８などの汎用の通信インタフェースを介して投影部１の動作を制御する機能を有する。なお、投影部１では、伝送された投影パターンデータに基づいて表示素子１３に投影パターンを表示する。投影する計測用のパターンの例としては、空間符号化法によるグレイコードや、位相シフト法による正弦波パターンなどが挙げられる。
【００２１】
画像取得部３２は、撮像部２で標本化ならびに量子化されたデジタルの画像信号を取り込む。さらに、取り込んだ画像信号から各画素の輝度（濃度値）で表される画像データを取得してメモリに記憶する機能を有する。なお、画像取得部３２は、ＲＳ２３２ＣやＩＥＥＥ４８８などの汎用の通信インタフェースを介して撮像部２の動作（撮像のタイミングなど）を制御する機能を有する。
【００２２】
画像取得部３２と投影パターン制御部３１とは互いに連携して動作する。表示素子１３へのパターン表示が完了すると、投影パターン制御部３１は、画像取得部３２に信号を送信する。画像取得部３２は、投影パターン制御部３１から信号を受信すると撮像部２を動作させ、画像撮像を実施する。画像撮像が完了すると、画像取得部３２は投影パターン制御部３１に信号を送信する。投影パターン制御部３１は画像取得部３２から信号を受信すると、表示素子１３に表示する投影パターンを次の投影パターンに切り替える。これを順次繰り返すことで、全ての投影パターンの撮像を実施する。
【００２３】
距離算出部３３では、距離計測用パターンの撮像画像、パラメータ記憶部３６に格納されているパラメータ、判断部３４での判断結果、を用いて計測対象物４までの距離を算出（導出）する。
【００２４】
判断部３４は、距離算出部３３で算出された領域の距離が正しく信頼性があり有効であるかを各領域ごとに判断する。判断の方法については後述する。
【００２５】
また、２つの撮像部のうち、一方の撮像部で計測対象物４を撮像した画像を用いて領域が、もう一方の撮像部からは計測対象物４が隠れているオクルージョン領域（被遮蔽領域）であるかを各領域ごとに判断する。
【００２６】
また、２つの撮像部のうち、一方の撮像部で計測対象物４を撮像した画像を用いて領域が、もう一方の撮像部で計測対象物４を撮像した画像の輝度値が飽和していている（サチュレーション）領域であるかを各領域ごと（各画素、または複数の画素）に判断する。
【００２７】
本実施形態では、オクルージョン領域とサチュレーション領域とを計測困難領域とするが、これ以外の原因により計測が困難となる領域を計測困難領域として特定してもよい。
【００２８】
さらに、本実施形態では、オクルージョン領域やサチュレーション領域は、実際に距離を算出することなく、撮像された画像に基づいて、取得されるが、もちろん、距離算出部３３で算出された結果に基づいて、取得しても構わない。
【００２９】
判断結果をパラメータ記憶部３６に送り、これを用いて投影するパターンの更新を行う。
【００３０】
繰り返し制御部３５は、計測対象物にパターンを投影し、それを撮像した撮像画像から、計測困難領域を特定し、撮像画像から距離算出を行い、距離算出結果が有効であるか、を判断し、前記計測困難領域と、前記有効であると判断された領域に基づいて投影パターンを更新する一連の流れを、終了条件を満たすまで繰り返し行うように制御する。第１の実施形態ではユーザが指定した任意回数を繰り返したら終了するものとする。
【００３１】
パラメータ記憶部３６は、三次元的な距離を算出するのに必要なパラメータを格納する。パラメータとしては、投影部１と撮像部２Ａおよび２Ｂとの機器パラメータ、投影部１と撮像部２Ａおよび２Ｂとの内部パラメータ、投影部１と撮像部２Ａおよび２Ｂとの外部パラメータ、投影パターンのパラメータがある。また、パラメータ記憶部３６は判断部３４で得られた判断結果を格納し、投影パターン制御部３１で投影パターンを更新する際に用いる。
【００３２】
投影部１と撮像部２Ａおよび２Ｂとの機器パラメータは、表示素子の画素数、撮像素子の画素数である。投影部１と撮像部２Ａおよび２Ｂとの内部パラメータは、焦点距離、画像中心、ディストーションによる画像歪みの係数などである。投影部１と撮像部２Ａおよび２Ｂとの外部パラメータは、投影部１と撮像部２Ａおよび２Ｂとの相対位置関係を表す並進行列と回転行列である。投影パターンのパラメータは、距離計測用パターン、消灯・減光用マスクパターンに関する情報である。判断結果は表示素子の画素に対して有効か計測困難領域かを格納したデータである。
【００３３】
本実施形態では、投影部１、撮像部２Ａおよび２Ｂともにピンホールカメラモデルで近似されるものとして説明する。ただし、本発明が適用できるカメラモデルはピンホールカメラに限られるものではない。
【００３４】
次に、投影する計測用のパターンが空間符号化法で用いられるコードである場合について説明する。図２は、空間符号化法における相補パターン投影法を説明するための模式図である。まず、空間符号化法について説明する。空間符号化法は複数本のライン光から成るパターン光を測定対象物に投影し、空間内を時間方向の符号化を用いてライン番号を識別する方法である。事前にパターン光の出斜角と撮像素子への入射角との対応関係をキャリブレーションしておき、三角測量の原理から距離計測を行う。複数本のライン光のライン番号は、例えば、グレイコード法等を用いて識別する。図２（ａ）はグレイコード法のパターンを表す図であり、左から１ｂｉｔ、２ｂｉｔ及び３ｂｉｔのグレイコードパターンを表している。４ｂｉｔ以降のグレイコードパターンについては省略する。
【００３５】
空間符号化法では、図２（ａ）のグレイコードパターンを順番に測定対象物に投影しながら画像撮像を行う。そして、撮像画像から各ビットでバイナリ値を算出する。具体的には、各ビットで撮像画像の画像輝度が閾値以上である場合、その領域のバイナリ値を１とする。一方、撮像画像の画像輝度が閾値未満である場合、その領域のバイナリ値を０とする。各ビットでのバイナリ値を順に並べ、その領域のグレイコードとする。そして、グレイコードを空間コードに変換し、距離計測を行う。
【００３６】
閾値の決定方法としては、例えば、相補パターン投影法が用いられる。図２（ａ）のグレイコードパターン（ポジパターンと呼ぶ）に対し、白黒が反転している図２（ｂ）のネガパターンを測定対象物に投影し、画像撮像を行う。そして、ネガパターンの画像輝度値を閾値とする手法である。
【００３７】
投影する計測用のパターンが位相シフト法で用いられるパターンである場合について説明する。図３は位相シフト法についての説明図である。図３（ａ）は照射するパターンのタイミングを表し、図３（ｂ）は撮像するタイミングでの撮像画像の輝度値を表している。位相シフト法では、明度が正弦波状に変化する縞パターン光を測定対象物に照射し、縞パターン光の位相をπ／２ずつ、ずらして撮像部で撮像する。これを、位相が２πになるまで計４枚撮像する。４枚の画像上の同じ位置での輝度をＡ０、Ｂ０、Ｃ０、Ｄ０とすると、その位置でのパターンの位相αは、
【００３８】
【数１】
2014115107.tif 000003
【００３９】
で表される。この位相を基に三角測量の原理により距離計測する。
【００４０】
第１の実施形態では、撮像部であるカメラが２台ある場合を想定しているが、投影部１と撮像部２Ａおよび２Ｂのそれぞれに対して三角測量法に基づく距離計測を行う。また撮像部２Ａと２Ｂ間における三角測量法に基づいて距離計測を行うことができるため、投影部１と撮像部２Ａ、投影部１と撮像部２Ｂ、撮像部２Ａと撮像部２Ｂの合計３つの距離計測結果を得ることができる。ただし、２つの撮像部間のピクセルの対応は、例えば、投影部との対応を介して取ることができる。ただし、これに限るものではなく、以下の文献に示すような二眼ステレオにおける様々なマッチング手法を用いて撮像部２Ａと２Ｂ間の対応を求めてもよい。
【００４１】
Ｄ．  Ｓｃｈａｒｓｔｅｉｎ  ａｎｄ  Ｒ．  Ｓｚｅｌｉｓｋｉ，  “Ａ  ｔａｘｏｎｏｍｙ  ａｎｄ  ｅｖａｌｕａｔｉｏｎ  ｏｆ  ｄｅｎｓｅ  ｔｗｏ−ｆｒａｍｅ  ｓｔｅｒｅｏ  ｃｏｒｒｅｓｐｏｎｄｅｎｃｅ  ａｌｇｏｒｉｔｈｍｓ，”ＩＪＣＶ，  ｖｏｌ．  ４７，  ｎｏ．  １，  ２００２
多重反射光が発生しない、あるいは、発生しても影響が顕在化しない場合には、上述の三角測量法で計測対象物の距離計測を行うことができる。
【００４２】
しかし、多重反射光が発生して影響が顕在化すると計測誤差を生じる。例えば図４に示すように、計測対象物４に対して、パターン光Ｐｔ１を投影した場合、撮像部ではＯ１のように観測され、Ｒ１の部分に多重反射の影響が見られる。
【００４３】
図５を参照して、多重反射光による計測誤差発生のメカニズムを説明する。図５では、簡単のためにＸ軸とＺ軸の２次元断面図の形式で説明する。
【００４４】
投影部１のレンズ中心Ｃｐから画像平面Ｉｐ上の点ｕｐ１を通過する方向に出射した光線Ｌ１は計測対象物４上の点Ｐ１に入射する。点Ｐ１で反射された光は撮像部２の画像座標と点ｕｃ１で交わり、レンズ中心Ｃｃへと入射する。
【００４５】
投影部１のレンズ中心Ｃｐから画像平面Ｉｐ上の点ｕｐ２を通過する方向に出射した光線Ｌ２は計測対象物４上の点Ｐ２に入射する。点Ｐ２で反射された光は点Ｐ１で２次反射される。その後、撮像部２の画像座標上の点ｕｃ１で交わり、撮像部１のレンズ中心Ｃｃへと入射する。２次反射が起こると、本来は投影部１のレンズ中心Ｃｐから出射した光が、点Ｐ２から出射したかのように振舞う。
【００４６】
計測対象物の光沢性が低く、多重反射の影響が少ない場合には、撮像部２で観測される輝度はＬ１による反射光が支配的となる。ピクセル座標値がｕｐ１であると正しく検出されるため、距離計測結果も正しいＺｔとなる。
【００４７】
一方、計測対象物の光沢性が高く、入射角と反射角が等しくなるような正反射方向で反射光が観測され、多重反射の影響が大きい場合には、Ｌ２による反射光が支配的となる。このとき、ピクセル座標値がｕｐ２であると誤検出されるため、計測点がＰｅにあるものとして計測されてしまう。距離計測結果はＺｅとなり、ΔＺ＝Ｚｔ−Ｚｅだけの誤差を生じる。
【００４８】
実際には、図５で示した２次反射光だけでなく、３次以上の反射光も存在し、より複雑な計測誤差が発生することある。以上が多重反射光による計測誤差発生のメカニズムの説明である。
【００４９】
次に、撮像部から計測対象物が隠れている領域に対応する投影部の表示素子の位置を検出する方法について説明する。説明を簡略化するために、例えば、投影する計測用のパターンが空間符号化法で用いられるコードである場合で説明する、撮像部から計測対象物が隠れていない場合には、投影部から計測用のパターン群が投影され、撮像部で撮像することにより、計測対象物に一意にコードが割り振られたことになる。撮像部から計測対象物が隠れている場合には、隠れている領域に投影部から投影されたパターン群が撮影できないために、撮影画像上にコードが不連続になる部分が存在する。この不連続になるコード部分が撮像部から計測対象物が隠れている領域に対応する投影部の表示素子の位置となる。
【００５０】
本実施形態では、判断部によって多重反射の影響を受けず、有効であると判断された領域およびオクルージョン領域であると判断された領域に対応する投影パターン部分を消光または減光する。そして、更新したパターンで投影・撮像・距離計測・判断を繰り返し行うことで、多重反射の発生を低減させながら計測できる領域を拡大していく。
【００５１】
判断部３４によって有効と判断される具体例を図６に示す。Ｖ１は図４に示した観測画像Ｏ１などを用いて三次元計測を行い、判断部によって、有効であると判断した領域を表している。一方Ｖ２は多重反射などの影響により、無効であると判断した領域を表している。投影パターンの更新は、図４のＰｔ１に対して、計測対象物の有効であると判断されたＶ１の領域を消光または減光し、図６のＰｔ２にパターンにすることである。Ｐｔ２のような更新された投影パターン群を用いて、再び投影、撮像することによって、Ｏ２のような観測画像を得ることができ、結果として多重反射の影響を受けない三次元計測が可能となる。
【００５２】
判断部３４によって計測困難領域と判断される具体例を図７に示す。投影部１、撮像部２Ａ、２Ｂで計測対象物４を計測する際に、遮蔽物５により撮像部２Ｂから計測対象物４の一部が隠れるオクルージョン領域Ｏｃ１がある例である。オクルージョン領域Ｏｃ１の計測点ｍ１については、投影部１で投影したパターンは撮像部２Ａでは撮像できるが、撮像部２Ｂでは撮像できない。そのため、計測点ｍ１は投影部１と撮像部２Ａとでしか三角測量に基づく距離計測を行うことができないため判断部によって、オクルージョン領域として判断される。そして、計測点ｍ１に投影するパターンを消光または減光する。この判断部による判断を計測領域全体に対して行い、オクルージョン領域Ｏｃ１に投影するパターンを消光または減光する。
【００５３】
さらに、判断部３４は、多重反射等の影響により、それぞれの距離計測結果が一致しない領域を無効と判断する。ここでいう、無効領域とは、上記のオクルージョン領域をの次いた領域を指す。無効と判断された領域に対しては、消光、または減光の処理を行わない。
【００５４】
投影するパターンの更新について図８を用いて説明する。図８（ａ）に投影部１から見た計測対象物４と遮蔽物５を表す。投影部１からは計測対象物４の全体が見えているが、図７で示した通り、投影部１の右側にある撮像部２Ｂからは遮蔽物５により計測対象物４の約半分が遮蔽されている。計測対象物４に通常のパターン光Ｐｔ１を投影したのを表したのが図８（ｂ）である。撮像部２Ｂでパターン光Ｐｔ１のうち撮像できない領域を判断部で計測困難領域と判断し、消光または減光し、更新したパターン光が図８（ｃ）のＰｔ３である。このように投影パターンを更新して繰り返し距離計測を行っても判断部で有効と判断することができずに消光または減光することができない領域を消光または減光することができる。
【００５５】
次に、図７の計測点ｍ１で多重反射が起こる場合について説明する。図７において投影部１から計測点ｍ１に投影したパターンが多重反射を起こし、計測点ｍ０に映り込んでいるとする。図９（ａ）は、図７の計測点ｍ１で起こる多重反射の影響による撮像画像の輝度値を表した図である。計測点ｍ０には投影部１からパターンＰ０が投影されている。
【００５６】
さらに計測点ｍ０には投影部１から計測点ｍ１に投影されるパターン光が多重反射したパターンＰ１ｒが映り込んでいる。
【００５７】
したがって撮影した画像で計測点ｍ０の位置に当たる画素ｘ０の輝度値は、計測点ｍ０に投影されるパターンＰ０による輝度成分Ｉ０と計測点ｍ１に投影されるパターン光が多重反射したパターンＰ１ｒによる輝度成分Ｉ１ｒとの和Ｉｘ０となる。
【００５８】
このように、投影部１から投影されたパターン光を撮像した画像の輝度値が大きく変化してしまうため、計測点ｍ０について投影部１と撮像部２Ａとで誤って距離計測を行ってしまう。計測点ｍ０について投影部１と撮像部２Ｂとで距離計測が正しく行われていたとしても、距離計測値が一致しないために判断部で有効と判断されない。
【００５９】
一方、計測点ｍ１については投影部１と撮像部２Ａとで距離計測が行えるが、投影部１と撮像部２Ｂとで距離計測が行えず、判断部で有効と判断されない。しかも、計測点ｍ１は投影パターンの更新を繰り返し行っても距離計測値が１つしか得られないために有効と判断されない。
【００６０】
そこで判断部３４で計測困難領域として判断することによりオクルージョン領域Ｏｃ１にある計測点ｍ１へのパターン光を消光または減光すると、計測点ｍ１での多重反射がなくなる。したがって、図９（ｂ）に示すように、撮影した画像で計測点ｍ０の位置に当たる画素ｘ０の輝度値は、計測点ｍ０に投影されるパターンＰ０による輝度成分Ｉ０のみで輝度値Ｉｘ０’となり、計測点ｍ０の距離計測を誤計測なく行うことが可能となる。
【００６１】
図１０のフローチャートを参照して、第１の実施形態に係る多重反射領域の計測までの全体の流れを説明する。
【００６２】
（ステップＳ１００１）
ステップＳ１００１では、投影部１から計測対象物４に対して計測用のパターン群を投影し、撮像部２Ａおよび撮像部２Ｂによって計測対象物４を撮影する。各撮像部で撮影が完了すると、計測用の次のパターンが投影されて撮影する。計測用のパターン群が全て投影・撮影されるまで繰り返される。計測用のパターンは例えばグレイコードが挙げられるが、これに限られるものではない。撮影されたデータは画像取得部３２に送られる。
【００６３】
（ステップＳ１００２）
ステップＳ１００２では、投影部１からは計測対象物に投影されているが、撮像部２Ａもしくは２Ｂから観察すると、計測対象物の一部が遮蔽されているオクルージョン領域（被遮蔽領域）を検出する。ステップＳ１００１で、計測用のパターン群が投影・撮影され、投影部１の表示素子と撮像部２Ａおよび２Ｂの撮像素子との対応が取れるため、オクルージョン領域を検出することができる。例えば、距離計測用のパターンが空間符号化法で用いられるコードである場合には、計測する空間が一意に符号化され、撮像部で撮影されないパターンが判るため検出することができる。
【００６４】
（ステップＳ１００３）
ステップＳ１００３では、距離算出部３３において、撮影画像に基づいて、上述した三角測量法を用いて、領域ごとに投影部１と撮像部２Ａ、投影部１と撮像部２Ｂ、撮像部２Ａと撮像部２Ｂの合計３つの距離計測結果が算出される。
【００６５】
（ステップＳ１００４）
ステップＳ１００４では、判断部３４において、３つの距離計測結果に基づいて、各領域における距離計測結果が有効であるかオクルージョン領域であるか無効であるかを判断する。各領域における３つの距離計測値が一致していれば、多重反射による影響などがなく、有効な距離計測結果であると判断することができる。光沢性が高い計測対象物の多重反射の影響は、観測する視点の方向において異なるため、異なる撮像部（異なる視点）で観測すれば、多重反射の影響の有無が判別できるためである。
【００６６】
また、本実施形態では、距離を計測することなく、ステップＳ１００２で、表示素子と撮像素子との対応をとり、輝度がない領域を取得し、該領域をオクルージョン領域とした。しかし、ステップＳ１００４で、距離を計測することによって、オクルージョン領域を取得してもかまわない。つまり、撮像部からの遮蔽が原因で距離計測結果が１つしか得られない領域をオクルージョン領域として取得する。
【００６７】
また多重反射以外の影響、例えばランダムに発生した画像ノイズなどで、３つの距離計測値が一致しない場合は、距離計測結果が判別不能であると見なす。
【００６８】
ただし、たとえ多重反射や画像ノイズなどの影響が全く無い場合でも複数の距離計測系において距離計測値が完全には一致しないことがある。なぜなら理想状態（シミュレーション）でない場合、事前にキャリブレ―ションによって求める投影部や撮像部の内部・外部パラメータが、僅かな誤差を含む可能性があるためである。投影部や撮像部の内部・外部パラメータを用いて距離値を算出するため、内部・外部パラメータの誤差が距離計測値の誤差として現れてしまう。
【００６９】
キャリブレーションの誤差はキャリブレーションをやり直す以外に、誤差を取り除いたり補正したりすることは難しい。そこで、キャリブレーションの誤差による複数の距離計測系における距離計測値の不一致への対策として、ある投影部と撮像部（例えば投影部１と撮像部２Ａ）の位置姿勢をキャリブレーションの基準として定め、そこからの許容範囲を設定することで解決する。ただし、この基準は真値とは異なる可能性があるが、キャリブレーションの誤差を取り除いたり補正したりできないため、距離計測値の一致不一致を判定する方法としては最善であると考えられる。
【００７０】
具体的には、求めた内部・外部パラメータを用いて、キャリブレーション用のデータに対して再投影を行い、キャリブレーションによる距離計測結果の誤差を算出し、それに基づいて距離計測値が一致していると見なせる基準からの許容範囲を定める。また、この場合領域の距離が一つの計測値に定まらないため、基準とする系の値を代表値とする。ただし、これに限るものではなく、代表値を平均値や中央値で定めてもよい。
【００７１】
（ステップＳ１００５）
ステップＳ１００５では、繰り返し制御部３５において、ステップＳ１００４における判断結果に基づいて、投影パターンのうち、距離計測値が有効であると見なされた領域に対応する部分を、消光または減光するように投影パターン群を更新する。距離計測値が有効である領域に関しては、所望の距離計測値が得られているため、以降の繰り返し処理の中では処理を行う必要はない。そしてその領域を照らしている光を消光または減光することによって、その領域で反射した光が計測対象物内の他の面を照らす多重反射の原因となっていた場合には、次の繰り返し処理で更新した投影パターンを投影することで、その多重反射の影響を取り除くことができる。
【００７２】
（ステップＳ１００６）
ステップＳ１００６では、判断結果に基づいて、投影パターンのうち、ステップＳ１００２で検出された、投影部１からは計測対象物に投影されているが撮像部２Ａもしくは２Ｂからは計測対象物が隠れているオクルージョン領域に対応するパターン光のパターンの領域を、消光または減光するように投影パターン群を更新する。
【００７３】
被遮蔽領域は、距離計測値が複数得られないため判断部３４によって有効であると判断ができず、繰り返し距離計測を行っても消光または減光することができずに残ってしまう。
【００７４】
しかし、オクルージョン領域を照らしている光を消光または減光することによって、被遮蔽領域で反射した光が計測対象物内の他の面を照らす多重反射の原因となっていた場合には、次の繰り返し処理で更新した投影パターンを投影することで、その多重反射の影響を取り除くことができる。
【００７５】
ただし、ステップＳ１００５およびステップＳ１００６における投影パターンの更新方法は消光や減光に限らず、有効であると見なされた領域を照らす光の影響が相対的に弱まる方法でありさえすればよい。例えば、有効でも無効でもなく判別不能と見なされた領域に対応する投影パターン部を増光させてもよい。
【００７６】
（ステップＳ１００７）
ステップＳ１００１〜ステップＳ１００６までの工程を１回実行した後、ステップＳ１００７では、繰り返し制御部３５において、終了条件を満たすかどうかを判定し、満たす場合はステップＳ１００８へ進む。
【００７７】
満たさない場合はステップＳ１００１へ戻り、ステップＳ１００５で更新した投影パターンを用いて処理を少なくとも１回繰り返す。第１実施形態では終了判定条件を任意の指定回数Ｎ回繰り返していることとする。よって繰り返し回数がＮ−１回以下の場合はステップＳ１００１へ戻り、Ｎ回の場合はステップＳ１００８へ進む。
【００７８】
複数回繰り返し処理を行うことによって、３次以上の多重反射の影響を取り除いたり、画像ノイズなどの影響を受けにくくしたりすることが可能である。また任意の回数に指定できるため、現場のタクトタイムに合わせて処理を行うことができる。
【００７９】
なお、終了判定条件としては、所定の回数繰り返していること、の他にも様々な条件が考えられる。例えば、ステップＳ１００１〜ステップＳ１００６までの一連の処理に要する時間に基づいて、終了判定を行ってもよい。また、Ｓ１００５およびＳ１００６の処理の結果に基づいて、終了判定を行ってもよい。また、過去の計測結果と、今回の計測結果とに基づいて、終了判定を行ってもよい。
【００８０】
繰り返してステップＳ１００１へ戻った場合は、ステップＳ１００５で更新された投影パターン群を投影して撮影を行い、ステップＳ１００１〜ステップＳ１００６の処理を同様に行い、ステップＳ１００７の終了条件を満たすかどうか判定し、終了条件を満たすまで繰り返す。
【００８１】
（ステップＳ１００８）
ステップＳ１００８では、距離計測結果の統合を行う。繰り返し処理を行っている間、新たに有効であると見なされた領域における距離計測値が得られるので、その値を保持しておく。一度有効であると見なされた領域は、その距離計測値を保持して対応付けられた後、繰り返しの間に処理が行われることはない。
【００８２】
よってｉ番目の繰り返しの際に新たに有効であると見なされた領域の距離計測値を保持しておけば、ステップＳ１００８では、Ｎ個の距離計測値のデータを統合すれば、計測対象物の距離計測結果が得られる。ただし、本発明はこれに限られるものではなく、繰り返し処理の間（例えばステップＳ１００７の終了条件を判定する時など）に、新たに有効であると見なされた領域の距離計測値を距離計測結果のデータに加えていってもよく、その場合は、ステップＳ１００８に進んだ時点で距離計測結果は既に統合済みとなっている。
【００８３】
以上で処理が終了する。
【００８４】
以上のように、距離計測値が有効と判断された投影パターンの領域と、オクルージョン領域に対応する投影パターンの領域とを消光または減光することで、多重反射の影響を低減しながら、繰り返し処理によって有効な距離計測値が得られる領域を増やしていくことができる。
【００８５】
次に、他の実施形態について説明をする。
【００８６】
例えば、距離計測用のパターンが空間符号化法で用いられるコードである場合では、通常、最下位ビットの幅の分だけ位置の曖昧さを有する。しかし、バイナリ値が０から１、あるいは、バイナリ値が１から０に切り替わる境界位置を撮像画像上で検出することで、ビット幅よりも曖昧さを低下させることができ、距離計測精度は高まる。
【００８７】
図２（ｃ）はバイナリ値が切り替わる境界位置における輝度変化を表す図である。理想的には輝度の立ち上がり、立ち下がりはインパルス的に起こるが、パターン光のボケや被写体（測定対象物）の反射率等の影響により、なだらかな直線または曲線を描く。図２（ｃ）において、ポジパターンＰＰとネガパターンＮＰが交わる前後のｘ座標をそれぞれｘＬ、ｘＲとする。さらに、ポジパターンＰＰのｘＬ画素の輝度値がｘＰＬ、ポジパターンＰＰのｘＲ画素の輝度値がｘＰＲ、ネガパターンＮＰのｘＬ画素の輝度値がｘＮＬ、ネガパターンＮＰのｘＲ画素の輝度値がｘＮＲとする。また、輝度値の飽和レベルをＩｓとする。そして、ポジパターンＰＰとネガパターンＮＰの交点位置をｘｃ１とする。この時、バイナリ値が切り替わる位置に当たるｘｃ１を精度良く求めることが重要となる。
【００８８】
図２（ｄ）はポジパターンＰＰとネガパターンＮＰの一部が飽和レベルＩｓに達した場合を表す図である。この図においてポジパターンＰＰのｘＬ画素の輝度値ｘＰＬが飽和レベルＩｓに達している。そして、ポジパターンＰＰのｘＲ画素の輝度値ｘＰＲ、ネガパターンＮＰのｘＬ画素の輝度値ｘＮＬ、ネガパターンＮＰのｘＲ画素の輝度値ｘＮＲは飽和レベルＩｓに達していないため、ポジパターンＰＰとネガパターンＮＰの輝度変化は点線ではなく実線のようになり、交点位置はｘｃ２となる。つまり、ポジパターンＰＰのｘＬ画素の輝度値ｘＰＬが飽和レベルＩｓに達すると、バイナリ値が切り替わる境界位置がｘｃ１からｘｃ２となり、符号値を誤ることが発生し、結果的にそれらを基に算出した距離計測結果が正しくなくなる。
【００８９】
また他の例として、距離計測用のパターンが位相シフト法で用いられるパターンである場合では、図３（ｃ）のように点線から実線で示したようにパターンの一部がＡ１、Ｃ１と飽和レベルＩｓに達すると、位相の計算を誤ることが発生し、結果的にそれらを基に算出した距離計測結果が正しくなくなる。
【００９０】
仮に投影部と１つの撮像部で距離を正しく計測できたとしても、投影部ともう１つの撮像部では輝度値が飽和することにより距離が正しく計測できないとすると、当該領域は判断部で有効であると判断できず、繰り返し距離計測を行っても消光または減光することができずに残ってしまう。
【００９１】
しかし、上記の領域を照らしている光を消光または減光することによって、上記の領域で反射した光が計測対象物内の他の面を照らす多重反射の原因となっていた場合には、次の繰り返し処理で更新した投影パターンを投影することで、その多重反射の影響を取り除くことができる。
【００９２】
この実施形態では、投影部１により計測対象物にパターン光を投影し、撮像部２Ａ、２Ｂによって該計測対象物を撮像する。
【００９３】
撮像された画像において、輝度値が飽和している領域を、判断部によってサチュレーション領域であると判断する。
【００９４】
そして、輝度飽和領域に対応するパターン光の領域の画素を消光または減光する。距離計測装置の構成は図１と同様であるため省略する。
【００９５】
この実施形態のフローチャートは図１０とほぼ同様であるため、同様の処理に関しては説明を省略し、図１１のフローチャートを参照して、差異があるステップＳ１１０２およびステップＳ１１０６に関して説明する。
【００９６】
（ステップＳ１１０２）
ステップＳ１１０２では、ステップＳ１１０１において撮像した画像からサチュレーション領域を検出する。サチュレーション領域の検出は、撮像画像の画素が表現できる階調の上限値に達しているかどうかで行われる。例えば、８ｂｉｔ画像であれば２５６階調で表現できるので輝度値が２５６に達しているところを検出すればよい。
【００９７】
（ステップＳ１１０６）
ステップＳ１１０６では、投影パターンのうち、ステップＳ１１０２で検出された撮像画像のサチュレーション領域に対応する部分を、消光または減光するように投影パターン群を更新する。
【００９８】
以上のように、距離計測値が有効と判断された投影パターンの領域と、サチュレーション領域に対応する投影パターンの領域とを消光または減光することで、多重反射の影響を低減しながら、繰り返し処理によって有効な距離計測値が得られる領域を増やしていくことができる。
【００９９】
第１の実施形態では、判断部において、オクルージョンが発生している領域と、サチュレーションが発生している領域とを判断する例を個別に説明したが、もちろん、オクルージョン領域とサチュレーション領域の両方を判断してもよい。
【０１００】
また第１の実施形態では、撮像部を２つ用いる実施例について説明した。本発明はこの例に限られるものではなく、撮像部を任意の複数用いてもよい。その場合は、３つ以上の距離計測結果が得られるが、投影部と撮像部の全ての組合せによって距離計測結果を算出する必要はなく、任意のＭ通りの組合せで三角測量法による距離計測を行ってもよい（複数導出する）。また、ステップＳ１００４やステップＳ１１０４の判断において、Ｍ通り全ての距離計測値が一致する必要はなく、一定の個数または割合で一致すれば、それを有効な距離計測値として見なしてよい。また、ステップＳ１００４やステップＳ１１０４の判断において、複数の撮像部においてオクルージョンやサチュレーションが発生することにより、投影部１つと撮像部１つの一対でのみ得られる距離計測結果を無効な距離計測値と見なしてよい。
【０１０１】
［第２の実施形態］
第２の実施形態では、投影部２つと撮像部１つを用いて三次元計測を行い、計測された領域の距離が有効か無効かあるいは判別不能かを判断する。
【０１０２】
図１２は、第２の実施形態に係る距離計測装置の概略構成である。第１の実施形態で説明した図１とほぼ同様であるが、本実施形態では、投影部を２つ（投影部１Ａおよび１Ｂ）、撮像部を１つ（撮像部２）を用いる点が異なる。第２の実施形態のフローチャートは、第１の実施形態で説明した図１０とほぼ同様であるため、同様の処理に関しては説明を省略し、差異があるステップＳ１００１およびステップＳ１００２に関して説明する。
【０１０３】
（ステップＳ１００１）
第２の実施形態におけるステップＳ１００１では投影部１Ａおよび１Ｂから計測対象物４に対して計測用のパターン群を投影し、撮像部２によって計測対象物４を撮影する。この時、投影部１Ａと１Ｂがそれぞれ投影したパターンを撮像部で混同しないように、１つずつ順番に投影を行い撮像する。ただし、これに限らず、パターンを混同しないように、光源の多重化を行い、例えば投影部１Ａと１Ｂから投影するパターン光を別の色にするなどしてもよい。
【０１０４】
そして、投影部１Ａおよび１Ｂと撮像部２のそれぞれに対して三角測量法に基づく距離計測を行う。また、撮像部に対応するピクセル座標の代わりに、もう一方の投影部のピクセル座標との対応関係を考えることによって、投影部１Ａと１Ｂ間における三角測量法に基づいて距離計測を行うことができるため、投影部１Ａと撮像部２、投影部１Ｂと撮像部２、投影部１Ａと投影部１Ｂの合計３つの距離計測結果を得ることができる。ただし、２つの投影部間のピクセルの対応は、例えば、撮像部との対応を介して取ることができる。
【０１０５】
（ステップＳ１００２）
第２の実施形態におけるステップＳ１００２では投影部で投影しても撮像部で測定対象物を撮像した時に投影パターンが測定対象物に当たらない領域を検出する。図１３を用いて説明する。まず、投影部１Ｂで全点灯し撮像部２で撮像する。次に、投影部１Ｂで全消灯し撮像部２で撮像する。２枚の画像を比較すると、遮蔽物５で隠れて投影部１Ｂから光が当たらない投影不可能領域Ｏｃ１’の計測点ｍ１’では、輝度値の変化がなく全消灯時の輝度値と全点灯時の輝度値が同じとなる。このような領域を検出することによりオクルージョン領域を検出可能となる。ただし、オクルージョン領域を検出する方法については、この方法に限られるものではなく、他の方法で検出してもよい。
【０１０６】
第２の実施形態では、投影部を２つ用いる例を紹介した。本発明はこの例に限られるものではなく、第１の実施形態で述べたのと同様に、投影部を任意の複数個用いてもよい。
【０１０７】
以上が、本発明の第２の実施形態に係る距離計測装置の説明である。
【０１０８】
［第３の実施形態］
第３の実施形態では、１回目のパターン更新時には、投影部からは計測対象物に投影されているが、撮像部からは計測対象物が隠れている領域に対応する部分を、消光または減光し、２回目以降のパターン更新時には、当該部分の消光または減光を止めてパターンを点灯または増光する。つまり、第３の実施形態では、オクルージョン領域やサチュレーション領域のような計測困難領域に対応するパターン光のパターンの領域を一時的に消光または減光する。距離計測装置の構成は第１の実施形態で説明した図１と同様であるため省略する。
【０１０９】
本実施形態では、第１の実施形態において投影部からは計測対象物に投影されているが撮像部からは計測対象物が隠れているために判断部で有効であると判断できずに残ってしまうオクルージョン領域が、他の領域の多重反射により影響を受ける場合に適用する。まず１回目のパターン更新時に消光または減光し、このオクルージョン領域からの多重反射の発生を低減させることにより、距離計測できる領域を拡大させる。次に１回目のパターン更新時に消光または減光したオクルージョン領域に対して２回目のパターン更新時に消光または減光を止めてパターンを点灯または増光する。その結果、１回目のパターン更新時にオクルージョン領域からの多重反射の発生を低減させることにより距離計測できて２回目のパターン更新時に消光または減光された領域からの多重反射の影響を受けずにオクルージョン領域の距離計測を行うことができる。オクルージョン領域は判断部で有効と判断できないが、パターン更新を繰り返した結果、片方の撮像部からのオクルージョン領域をもう一方の撮像部から撮像された画像の輝度値が低下していれば正しく距離計測が行われたと判断することができる。
【０１１０】
具体例を図７の計測点ｍ２と計測点ｍ３との両方で多重反射が起こる場合について説明する。図７において投影部１から計測点ｍ２に投影したパターンが多重反射を起こし、計測点ｍ３に映り込んでいるとする。
【０１１１】
また、投影部１から計測点ｍ３に投影したパターンが多重反射を起こし、計測点ｍ２に映り込んでいるとする。図１４（ａ）は、図７の計測点ｍ２と計測点ｍ３とで起こる多重反射の影響による撮像画像の輝度値を表した図である。計測点ｍ２には投影部１からパターンＰ２が投影されている。さらに計測点ｍ２には投影部１から計測点ｍ３に投影されるパターン光が多重反射したパターンＰ３ｒが映り込んでいる。
【０１１２】
したがって撮影した画像で計測点ｍ２の位置に当たる画素ｘ２の輝度値は、計測点ｍ２に投影されるパターンＰ２による輝度成分Ｉ２と計測点ｍ３に投影されるパターン光が多重反射したパターンＰ３ｒによる輝度成分Ｉ３ｒとの和Ｉｘ２となる。
【０１１３】
そのため、計測点ｍ２について投影部１と撮像部２Ａとで誤って距離計測を行ってしまう。一方、計測点ｍ３には投影部１からパターンＰ３が投影されている。さらに計測点ｍ３には投影部１から計測点ｍ２に投影されるパターン光が多重反射したパターンＰ２ｒが映り込んでいる。したがって撮影した画像で計測点ｍ３の位置に当たる画素ｘ３の輝度値は、計測点ｍ３に投影されるパターンＰ３による輝度成分Ｉ３と計測点ｍ２に投影されるパターン光が多重反射したパターンＰ２ｒによる輝度成分Ｉ２ｒとの和Ｉｘ３となる。そのため、計測点ｍ３について投影部１と撮像部２Ａとで誤って距離計測を行ってしまう。
【０１１４】
まず、オクルージョン領域Ｏｃ１にある計測点ｍ３へのパターン光を消光または減光することにより１回目のパターン更新を行うと、計測点ｍ３での多重反射がなくなる。その結果、図１４（ｂ）に示すように、撮影した画像で計測点ｍ２の位置に当たる画素ｘ２の輝度値は、計測点ｍ２に投影されるパターンＰ２による輝度成分Ｉ２のみで輝度値Ｉｘ２’となり、計測点ｍ２の距離計測を誤計測なく行うことが可能となる。
【０１１５】
このとき、計測点ｍ３については計測点ｍ３に投影されるパターン光が消光または減光され、計測点ｍ２に投影されるパターン光が多重反射したパターンＰ２ｒによる輝度成分Ｉ２ｒのみで輝度値Ｉｘ３’となるが、パターン光を消光または減光している領域は距離計測を行わない。
【０１１６】
次に、計測点ｍ２の距離計測が正しく行われたため、この点に対して判断部で有効と判断することにより２回目のパターン更新を行い、照射している光を消光または減光すると、計測点ｍ２での多重反射がなくなる。
【０１１７】
そして、２回目のパターン更新として計測点ｍ３へのパターン光を消光または減光するのを止めて点灯または増光する。その結果、図１４（ｃ）に示すように、撮影した画像で計測点ｍ３の位置に当たる画素ｘ３の輝度値は、計測点ｍ３に投影されるパターンＰ３による輝度成分Ｉ３のみで輝度値Ｉｘ３”となり、計測点ｍ３の距離計測を誤計測なく行うことが可能となる。
【０１１８】
図１５のフローチャートを参照して、第３の実施形態に係る多重反射領域の計測までの全体の流れを説明する。（ステップＳ１５０１〜Ｓ１５０５）
ステップＳ１５０１〜ステップＳ１５０５の処理は第１の実施形態の図１０とほぼ同じように行うことができるため、説明を省略する。
【０１１９】
（ステップＳ１５０６）
ステップＳ１５０６では、投影パターンの更新が１回目かどうかを判定し、１回目の場合はステップＳ１５０７に進み、１回目ではない場合はステップＳ１５０８に進む。
【０１２０】
（ステップＳ１５０７）
ステップＳ１５０７の処理は、第１の実施形態の図１０のステップＳ１００６とほぼ同じように行うことができるため、説明を省略する。
【０１２１】
（ステップＳ１５０８）
ステップＳ１５０８では、ステップＳ１５０７において消光または減光した領域のパターン光を点灯または増光する。
【０１２２】
（ステップＳ１５０９、Ｓ１５１０）
ステップＳ１５０９およびステップＳ１５１０の処理は、第１の実施形態の図１０のステップＳ１００７およびステップＳ１００８とほぼ同じように行うことができるため、説明を省略する。
【０１２３】
第３の実施形態によれば、投影部からは計測対象物に投影されているが撮像部からは計測対象物が隠れているために判断部で有効であると判断できずに残ってしまう領域が、他の領域の多重反射により影響を受ける場合にも、投影パターン部分を消光または減光することで、多重反射の影響を低減しながら、繰り返し処理によって有効な距離計測値が得られる領域を増やしていくことができる。
【０１２４】
第３の実施形態では、２回目のパターン更新以降ではステップＳ１５０８において点灯または増光された領域はパターン更新されず消光または減光されない。しかしステップＳ１５０６において投影パターンの更新が２回目かどうかを判定し、２回目のパターン更新時のみ点灯または増光する処理にして、２回目のパターン更新以降は消光または減光するとしてもよい。この場合は２回目のパターン更新以降の繰り返し処理においてこの領域に投影されるパターン光の影響をさらに低減させることができる。
【０１２５】
以上が、本発明の第３の実施形態に係る距離計測装置の説明である。
【０１２６】
［第４の実施形態］
第４の実施形態では、判断手段として、撮像画像から、計測信頼度を算出し、計測信頼度が第一の閾値以上である領域に対応するパターン光のパターンの領域を、消光または減光する判断を行う。また計測信頼度が第二の閾値以下である領域に対応する部分を、消光または減光する判断を行う。
【０１２７】
距離計測装置の構成は第１の実施形態で説明した図１と同様であるため省略する。第４の実施形態のフローチャートは第１の実施形態で説明した図１０とほぼ同様であるため、同様の処理に関しては説明を省略し、図１６のフローチャートを参照して、差異がある工程に関して説明する。
【０１２８】
（ステップＳ１６０１）
ステップＳ１６０１の処理は第１の実施形態の図１０とほぼ同じように行うことができるため、説明を省略する。
【０１２９】
（ステップＳ１６０２）
ステップＳ１６０２では、撮像画像を用いて、距離計測の信頼度を算出する。距離計測の信頼度とは距離計測の精度を決める要因を基に算出される数値である。本実施形態では、実際に距離算出を行わずに、以下のように、撮像画像の輝度値を用いて、信頼度を算出洲する。
【０１３０】
例えば、距離計測用のパターンが空間符号化法で用いられるコードである場合について説明する。図１７は、空間符号化法における相補パターン投影法の符号化の境界について説明するための模式図である。空間符号化法ではコードのバイナリ値が切り替わる境界位置では撮像画像の輝度値がある閾値を基準として変化するところに当たる。図１７（ａ）は空間符号化法における相補パターン投影法によりバイナリ値が切り替わる境界位置における輝度変化を表す図であり、各記号は図２（ｃ）で説明したものと同様である。図１７（ｂ）は図１７（ａ）に対し撮像画像の輝度変化が小さい場合を表す図である。パターンの交わる交点の輝度差ＩｄはポジパターンのｘＬ画素の輝度値ｘＰＬとネガパターンのｘＬ画素の輝度値ｘＮＬとの差と、ネガパターンのｘＲ画素の輝度値ｘＮＲとポジパターンのｘＲ画素の輝度値ｘＰＲ、との差の和である
【０１３１】
【数２】
2014115107.tif 000004
【０１３２】
で表される。輝度差Ｉｄは隣り合う１画素の輝度差であるとして、図１７（ａ）における輝度差とパターン交点位置との関係を図１７（ｃ）で表す。このとき、輝度値の量子化誤差を加味すると輝度差ｘＰＬ−ｘＮＬと輝度差ｘＮＲ−ｘＰＲとは最大で輝度値２の曖昧さを有するため、平行四辺形ａｂｃｄで表される範囲での曖昧さが生じる。
【０１３３】
この曖昧さの載った輝度差を基に計算した１画素以内でのパターンの交点の位置はｘｃＬ１とｘｃＲ１との間となりサブピクセル推定誤差ｅ１の誤差を生じる。図１７（ｂ）における輝度差とパターン交点位置との関係を図１７（ｄ）で表すと、同様の計算からパターンの交点の位置はｘｃＬ２とｘｃＲ２との間となりｅ１より大きいサブピクセル推定誤差ｅ２の誤差を生じる。以上より、画素間の輝度値の変化が大きい場合に比べ小さい場合には符号化の境界位置をサブピクセル精度で推定する誤差が大きくなり、それらを基に算出した距離計測の精度が悪くなる。したがって、画素間の輝度値の変化の大きさを距離計測の信頼度として利用することができる。（ステップＳ１６０３〜Ｓ１６０５）
ステップＳ１６０３〜ステップＳ１６０５の処理は、第１の実施形態の図１０とほぼ同じように行うことができるため、説明を省略する。（ステップＳ１６０６）
ステップＳ１６０６では、投影パターンのうち、ステップＳ１６０４で算出された距離計測の信頼度が第一の閾値以上である領域に対応する部分を、消光または減光するように投影パターン群を更新する。また、距離計測の信頼度が第二の閾値以下である領域に対応する部分を、消光または減光するように投影パターン群を更新する。
【０１３４】
距離計測の信頼度が第一の閾値以上である場合は、正しく距離計測される可能性が高いため、所望の距離計測結果が得られるであろうと見なし、以降の繰り返し処理の中では処理を行わない。
【０１３５】
一方、距離計測の信頼度が第二の閾値以下である場合は、正しく距離計測されない可能性が高いため、所望の距離計測結果が得られないであろうと見なし、以降の繰り返し処理の中では処理を行わない。
【０１３６】
よって、いずれの場合も、上記の領域を照らしている光を消光または減光することによって、上記の領域で反射した光が計測対象物内の他の面を照らす多重反射の原因となっていた場合には、次の繰り返し処理で更新した投影パターンを投影することで、その多重反射の影響を取り除くことができる。
【０１３７】
（ステップＳ１６０７、Ｓ１６０８）
ステップＳ１６０７およびステップＳ１６０８の処理は、第１の実施形態の図１０とほぼ同じように行うことができるため、説明を省略する。
【０１３８】
第４の実施形態によれば、距離計測の信頼度が第一の閾値以上であり有効な距離計測値が得られた領域に対応する投影パターン部分と、距離計測の信頼度が第二の閾値以下であるために判断部で有効であると判断できずに残ってしまう領域に対応する投影パターン部分を消光または減光することで、多重反射の影響を低減しながら、繰り返し処理によって有効な距離計測値が得られる領域を増やしていくことができる。
【０１３９】
第４の実施形態では、撮像部を２つ用いる例を紹介したが、第１実施形態と同様にこの例に限られるものではなく、撮像部を任意の複数個用いてもよい。また、第２実施形態と同様にこの例に限られるものではなく、投影部２つと撮像部１つを用いてもよいし、投影部を任意の複数個用いてもよい。
【０１４０】
また、第４の実施形態では、第二の閾値以下である領域に対応する部分は、一旦パターンを消光または減光したら以降のパターン更新時もそのまま消光または減光したままであるが、第３実施形態と同様に２回目以降のパターン更新時に消光または減光を止めてパターンを点灯または増光してもよい。その他にも、２回目のパターン更新時のみ点灯または増光するようにしてもよい。
【０１４１】
以上が、本発明の第４の実施形態に係る距離計測装置の説明である。
【０１４２】
尚、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。また、そのプログラムをコンピュータ読み取り可能な記録媒体に記録して提供してもよい。
【図１】
2014115107.tif 000005
【図２】
2014115107.tif 000006
【図３】
2014115107.tif 000007
【図５】
2014115107.tif 000008
【図７】
2014115107.tif 000009
【図８】
2014115107.tif 000010
【図９】
2014115107.tif 000011
【図１０】
2014115107.tif 000012
【図１１】
2014115107.tif 000013
【図１２】
2014115107.tif 000014
【図１３】
2014115107.tif 000015
【図１４】
2014115107.tif 000016
【図１５】
2014115107.tif 000017
【図１６】
2014115107.tif 000018
【図１７】
2014115107.tif 000019
【図４】
2014115107.tif 000020
【図６】
2014115107.tif 000021