(57)【要約】【課題】被写体が鏡面を有する場合であっても、３Ｄ計測に適した画像を撮像する【解決手段】本発明の一態様に係る撮像装置は、第１のプロジェクタと、第１のカメラとを含む。第１のプロジェクタは、複数の第１の投光素子を備え、複数の第１の投光素子によって投射された光が基準面上に結像するように校正され、基準面よりも手前側に配置された被写体に複数の第１の投光素子によって第１の計測用パターンを投射する。第１のカメラは、複数の第１の受光画素を備え、第１のプロジェクタによって投射され基準面上で鏡面反射した光が第１の受光画素に結像するように校正され、第１の計測用パターンを投射された被写体を撮像する。【選択図】      図５
2020122676.tif 000002
【特許請求の範囲】
【請求項１】
複数の第１の投光素子を備え、前記複数の第１の投光素子によって投射された光が基準面上に結像するように校正され、前記基準面よりも手前側に配置された被写体に前記複数の第１の投光素子によって第１の計測用パターンを投射する第１のプロジェクタと、
複数の第１の受光画素を備え、前記第１のプロジェクタによって投射され前記基準面上で鏡面反射した光が前記第１の受光画素に結像するように校正され、前記第１の計測用パターンを投射された前記被写体を撮像する第１のカメラと
を具備する、撮像装置。
【請求項２】
前記第１のカメラの位置姿勢は、マトリクス状に配置された前記複数の第１の投光素子の中心に配置された投光素子によって投射され前記基準面上で鏡面反射した光が、マトリクス状に配置された前記複数の第１の受光画素の中心に配置された受光画素に結像するように校正される、請求項１に記載の撮像装置。
【請求項３】
複数の第２の投光素子を備え、前記複数の第２の投光素子によって投射された光が前記基準面上に結像するように校正され、前記被写体に前記複数の第２の投光素子によって第２の計測用パターンを投射する第２のプロジェクタと、
複数の第２の受光画素を備え、前記第２のプロジェクタによって投射され前記基準面上で鏡面反射した光が前記第２の受光画素に結像するように校正され、前記第２の計測用パターンを投射された前記被写体を撮像する第２のカメラと
をさらに具備する、
請求項１または請求項２に記載の撮像装置。
【請求項４】
前記第２のカメラの位置姿勢は、マトリクス状に配置された前記複数の第２の投光素子の中心に配置された投光素子によって投射され前記基準面上で鏡面反射した光が、マトリクス状に配置された前記複数の第２の受光画素の中心に配置された受光画素に結像するように校正される、請求項３に記載の撮像装置。
【請求項５】
前記第１の計測用パターンは、第１の色成分を有し、
前記第２の計測用パターンは、前記第１の色成分とは異なる第２の色成分を有し、
前記第１の計測用パターンの投射時間の少なくとも一部は、前記第２の計測用パターンの投射時間の少なくとも一部と一致する、
請求項３または請求項４に記載の撮像装置。
【請求項６】
前記第１の計測用パターンおよび前記第２の計測用パターンは同一であって、
前記第１のプロジェクタは、第１の期間に亘って前記第１の計測用パターンを前記被写体に投射し、
前記第１のカメラは、前記第１の期間内に前記被写体を撮影し、
前記第２のプロジェクタは、前記第１の期間とは異なる第２の期間に亘って前記第２の計測用パターンを前記被写体に投射し、
前記第２のカメラは、前記第２の期間内に前記被写体を撮影する、
請求項３または請求項４に記載の撮像装置。
【請求項７】
請求項３乃至請求項６のいずれか１項に記載の撮像装置と、
前記第１のカメラが前記第１のプロジェクタによって前記第１の計測用パターンを投射された前記被写体を撮影して生成した画像と、前記第２のカメラが前記第２のプロジェクタによって前記第２の計測用パターンを投射された前記被写体を撮影して生成した画像とに基づいて、前記被写体の３Ｄ形状の少なくとも一部を推定する画像処理装置と
を具備する、３Ｄ計測装置。
【請求項８】
前記第１のプロジェクタ、前記第１のカメラ、前記第２のプロジェクタおよび前記第２のカメラは、前記被写体の周囲を移動する搬送機に載せられ、
前記第１のカメラは、前記搬送機が第１の位置にあるときに前記第１のプロジェクタによって前記第１の計測用パターンを投射された前記被写体を撮影して第１の画像を生成し、
前記第２のカメラは、前記搬送機が前記第１の位置にあるときに前記第２のプロジェクタによって前記第２の計測用パターンを投射された前記被写体を撮影して第２の画像を生成し、
前記画像処理装置は、前記第１の画像および前記第２の画像に基づいて、前記被写体の第１のデプスマップを生成し、
前記第１のカメラは、前記搬送機が前記第１の位置とは異なる第２の位置にあるときに前記第１のプロジェクタによって前記第１の計測用パターンを投射された前記被写体を撮影して第３の画像を生成し、
前記第２のカメラは、前記搬送機が前記第２の位置にあるときに前記第２のプロジェクタによって前記第２の計測用パターンを投射された前記被写体を撮影して第４の画像を生成し、
前記画像処理装置は、前記第３の画像および前記第４の画像に基づいて、前記被写体の第２のデプスマップを生成し、
前記画像処理装置は、前記第１の位置と、前記第１のデプスマップと、前記第２の位置と、前記第２のデプスマップとに基づいて、前記被写体の３Ｄ形状の少なくとも一部を推定する、
請求項７に記載の３Ｄ計測装置。
【請求項９】
前記被写体は、前記第１のプロジェクタ、前記第１のカメラ、前記第２のプロジェクタおよび前記第２のカメラの周囲を移動する搬送機に載せられ、
前記第１のカメラは、前記搬送機が第１の位置にあるときに前記第１のプロジェクタによって前記第１の計測用パターンを投射された前記被写体を撮影して第１の画像を生成し、
前記第２のカメラは、前記搬送機が前記第１の位置にあるときに前記第２のプロジェクタによって前記第２の計測用パターンを投射された前記被写体を撮影して第２の画像を生成し、
前記画像処理装置は、前記第１の画像および前記第２の画像に基づいて、前記被写体の第１のデプスマップを生成し、
前記第１のカメラは、前記搬送機が前記第１の位置とは異なる第２の位置にあるときに前記第１のプロジェクタによって前記第１の計測用パターンを投射された前記被写体を撮影して第３の画像を生成し、
前記第２のカメラは、前記搬送機が前記第２の位置にあるときに前記第２のプロジェクタによって前記第２の計測用パターンを投射された前記被写体を撮影して第４の画像を生成し、
前記画像処理装置は、前記第３の画像および前記第４の画像に基づいて、前記被写体の第２のデプスマップを生成し、
前記画像処理装置は、前記第１の位置と、前記第１のデプスマップと、前記第２の位置と、前記第２のデプスマップとに基づいて、前記被写体の３Ｄ形状の少なくとも一部を推定する、
請求項７に記載の３Ｄ計測装置。
【請求項１０】
前記被写体は、回転台に載せられ、
前記第１のカメラは、前記回転台の回転角が第１の角度であるときに前記第１のプロジェクタによって前記第１の計測用パターンを投射された前記被写体を撮影して第１の画像を生成し、
前記第２のカメラは、前記回転台の前記回転角が第１の角度であるときに前記第２のプロジェクタによって前記第２の計測用パターンを投射された前記被写体を撮影して第２の画像を生成し、
前記画像処理装置は、前記第１の画像および前記第２の画像に基づいて、前記被写体の第１のデプスマップを生成し、
前記第１のカメラは、前記回転台の回転角が前記第１の角度とは異なる第２の角度であるときに前記第１のプロジェクタによって前記第１の計測用パターンを投射された前記被写体を撮影して第３の画像を生成し、
前記第２のカメラは、前記回転台の回転角が前記第２の角度であるときに前記第２のプロジェクタによって前記第２の計測用パターンを投射された前記被写体を撮影して第４の画像を生成し、
前記画像処理装置は、前記第３の画像および前記第４の画像に基づいて、前記被写体の第２のデプスマップを生成し、
前記画像処理装置は、前記第１の角度と、前記第１のデプスマップと、前記第２の角度と、前記第２のデプスマップとに基づいて、前記被写体の３Ｄ形状の少なくとも一部を推定する、
請求項７に記載の３Ｄ計測装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、被写体に対する３Ｄ計測のための画像を撮像する技術に関する。
【背景技術】
【０００２】
従来、プロジェクタによって被写体に既定の計測用パターンを投射し、２台のカメラによって当該被写体を撮影し、２画像間のマッチング結果に基づいて視差／距離を計測する技術が知られている。これにより、外見的特徴の乏しい被写体であっても、既定のパターンを手かがりにマッチングを行うことが可能となる。
【０００３】
被写体に投射される計測用パターンは、典型的には明領域および暗領域の配置によって表現される。すなわち、一方の画像の局所領域における明暗パターンと他方の画像の局所領域における明暗パターンとのマッチングにより、当該局所領域に関する両画像の視差が推定可能となる。しかしながら、被写体が鏡面を有している場合には、当該鏡面において明領域の周囲にある暗領域がつぶれやすく、正確なマッチングが困難となるおそれがある。また、鏡面では拡散反射が生じにくいので、鏡面を有する被写体に投射された計測用パターンを撮影可能な視点が限られるという問題もある。
【０００４】
暗領域がつぶれる原因として、被写体からの反射光が強い場合に明領域周囲に対応するイメージセンサ出力が飽和して出力画像に滲みが生じること（ハレーション）、被写体からの鏡面反射により被写体の像がイメージセンサ上で結像せずにフレアーが生じること、などが考えられる。
【０００５】
特許文献１には、撮像した画像の明度に基づいて白飛びまたは黒つぶれの有無を判断することと、白飛びまたは黒つぶれがあると判断された場合に変更パターンを作成して被測定物に再投影することとが開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１０−１３３７３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明は、被写体が鏡面を有する場合であっても、３Ｄ計測に適した画像を撮像することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の一態様に係る撮像装置は、第１のプロジェクタと、第１のカメラとを含む。第１のプロジェクタは、複数の第１の投光素子を備え、複数の第１の投光素子によって投射された光が基準面上に結像するように校正され、基準面よりも手前側に配置された被写体に複数の第１の投光素子によって第１の計測用パターンを投射する。第１のカメラは、複数の第１の受光画素を備え、第１のプロジェクタによって投射され基準面上で鏡面反射した光が第１の受光画素に結像するように校正され、第１の計測用パターンを投射された被写体を撮像する。
【発明の効果】
【０００９】
本発明によれば、被写体が鏡面を有する場合であっても、３Ｄ計測に適した画像を撮像することができる。
【図面の簡単な説明】
【００１０】
【図１】実施形態に係る３Ｄ計測装置を例示するブロック図。
【図２】被写体が存在しない場合に、基準面上で散乱した光がどのようにセンサーに結像するかを例示する図。
【図３】鏡面を有しない被写体が存在する場合に、被写体の表面上で散乱した光がどのようにセンサーに結像するかを例示する図。
【図４】図２および図３の差異の説明図。
【図５】被写体が存在しない場合に、基準面上で鏡面反射した光がどのようにセンサーに結像するかを例示する図。
【図６】鏡面を有する被写体が存在する場合に、被写体の表面上で鏡面反射した光がどのようにセンサーに結像するかを例示する図。
【図７】図５および図６の差異の説明図。
【図８】被写体が存在しない場合に、基準面上で鏡面反射した光がどのようにセンサーに結像するかを例示する図。
【図９】鏡面を有する被写体が存在する場合に、被写体の表面上で鏡面反射した光がどのようにセンサーに結像するかを例示する図。
【図１０】図１中のステレオカメラの詳細を例示する図。
【図１１】図１０のステレオカメラを例示する図。
【図１２】図１０のステレオカメラを例示する図。
【図１３】図１０のステレオカメラを例示する図。
【図１４】図１の３Ｄ計測装置の視点を変更するための技法の説明図。
【図１５】図１の３Ｄ計測装置による被写体の３Ｄ形状を推定する技法の説明図。
【図１６】図１の３Ｄ計測装置の視点を変更するための技法の説明図。
【図１７】図１中の画像処理装置の詳細を例示するブロック図。
【図１８】図１の３Ｄ計測装置の動作を例示するフローチャート。
【図１９】図１８のステップＳ４１０の詳細を例示するフローチャート。
【発明を実施するための形態】
【００１１】
以下、図面を参照しながら実施形態の説明を述べる。なお、以降、説明済みの要素と同一または類似の要素には同一または類似の符号を付し、重複する説明については基本的に省略する。
【００１２】
（実施形態）  
実施形態に係る３Ｄ計測装置が、図１に例示される。この３Ｄ計測装置は、カメラ１０１と、カメラ１０２と、プロジェクタ２０１と、プロジェクタ２０２と、プロジェクタ／カメラ制御装置３００と、画像処理装置４００とを含む。このうち、カメラ１０１、カメラ１０２、プロジェクタ２０１、およびプロジェクタ２０２は、撮像装置と呼ぶこともできる。この撮像装置は、プロジェクタ／カメラ制御装置３００を含んでいてもよいし、含まなくてもよい。
【００１３】
具体的には、この３Ｄ計測装置は、例えばロボットビジョンを実現するためにロボット（ピックアップを行うロボットハンドを含む）に搭載されたり、移動しながら撮影を行うために移動体（ドローンなどの航空機、車両を含む）に搭載されたりし得る。
【００１４】
プロジェクタ２０１は、プロジェクタ／カメラ制御装置３００からの命令に従って、第１の計測用パターンを被写体２０に投射する。そして、カメラ１０１は、プロジェクタ／カメラ制御装置３００からの命令に従って、第１の計測用パターンが投射された被写体２０を撮影し、第１の画像を生成する。同様に、プロジェクタ２０２は、プロジェクタ／カメラ制御装置３００からの命令に従って、第２の計測用パターンを被写体２０に投射する。そして、カメラ１０２は、プロジェクタ／カメラ制御装置３００からの命令に従って、第２の計測用パターンが投射された被写体２０を撮影し、第２の画像を生成する。
【００１５】
カメラ１０１、カメラ１０２、プロジェクタ２０１、およびプロジェクタ２０２は、図１に示されてない種々の要素を含み得る。具体的には、カメラ１０１は、受光画素に相当する複数のセンサー１０３と、レンズ１０４とを含む。同様に、カメラ１０２は、複数のセンサー１０５と、レンズ１０６とを含む。また、プロジェクタ２０１は、第１の計測用パターンなどの光を投射する複数の変調素子（投光素子と呼ぶこともできる）２０３と、レンズ２０４とを含む。同様に、プロジェクタ２０２は、第２の計測用パターンなどの光を投射する複数の変調素子２０５と、レンズ２０６とを含む。
【００１６】
ここで、被写体２０は、鏡面を有しており、プロジェクタ２０１およびプロジェクタ２０２の校正の基準となる基準面１０よりも手前側、すなわち基準面１０よりもカメラ１０１、カメラ１０２、プロジェクタ２０１、およびプロジェクタ２０２との距離が小さくなる位置に配置される。具体的には、被写体２０は、例えば、ガラスもしくは金属の表面を有する物体、ペットボトルなどの半透明の物体、鏡面加工などの表面を滑らかにするための加工、例えば研磨もしくは塗装、が施された物体、など鏡面反射が生じる表面（鏡面）を有する任意の物体であり得る。基準面１０は、被写体２０の背景に相当する面であって、例えば、被写体２０を上方から撮影する場合には、当該被写体２０が載せられる台であり得る。
【００１７】
プロジェクタ２０１およびプロジェクタ２０２は、基準面１０上に結像するように校正される。好ましくは、基準面１０上で第１の計測用パターンおよび第２の計測用パターンの少なくとも中心付近の結像位置が互いに一致するように、プロジェクタ２０１およびプロジェクタ２０２は校正され得る。これにより、後述されるマッチングに基づく、視差の推定精度を向上させることができる。カメラ１０１は、プロジェクタ２０１によって投射され基準面１０上で鏡面反射した光がセンサー１０３に結像するように校正される。同様に、カメラ１０２は、プロジェクタ２０２によって投射され基準面１０上で鏡面反射した光がセンサー１０５に結像するように校正される。
【００１８】
なお、この３Ｄ計測装置に含まれるステレオカメラは、３眼以上の多眼カメラ、または単眼カメラに置き換えられてもよい。ただし、プロジェクタとカメラとは１対１対応させる必要があるので、プロジェクタの台数はカメラの台数以上にする必要があるし、その逆にカメラの台数はプロジェクタの台数以上にする必要がある。
【００１９】
このステレオカメラは、かかる校正、すなわち対応するプロジェクタによって投射された計測用パターンの基準面１０上での結像位置に応じた姿勢の調整を容易に実現するために、カメラ１０１およびカメラ１０２の他にも様々な要素を含み得る。具体的には図１０に例示されるように、このステレオカメラは、カメラ１０１と、カメラ１０２と、可動ミラー１１１と、可動ミラー１１２と、可動部材１２１と、可動部材１２２と、支持部材１３１と、支持部材１３２とを含み得る。また、後述されるように、このステレオカメラは、図１０には示されない要素として、ベース部材１４０、ギア１６１、ギア１６２、モーター１７１、およびモーター１７２、などを含み得る。
【００２０】
プロジェクタ／カメラ制御装置３００は、カメラ１０１、カメラ１０２、プロジェクタ２０１、およびプロジェクタ２０２を制御する。具体的には、プロジェクタ／カメラ制御装置３００は、プロジェクタ２０１に第１の計測用パターンの投射を命令する。それから、プロジェクタ／カメラ制御装置３００は、カメラ１０１に、第１の計測用パターンが投射された被写体２０の撮影を命令する。同様に、プロジェクタ／カメラ制御装置３００は、プロジェクタ２０２に第２の計測用パターンの投射を命令する。それから、プロジェクタ／カメラ制御装置３００は、カメラ１０２に、第２の計測用パターンが投射された被写体２０の撮影を命令する。
【００２１】
なお、第２の計測用パターンは、マッチングを効率的に行うために、第１の計測用パターンと同一の模様を有することが好ましい。ただし、第２の計測用パターンの色成分は、第１の計測用パターンの色成分と異なっていてもよい。これにより、後述されるように、第１の計測用パターンおよび第２の計測用パターンを同時、または少なくとも部分一致する期間に投射し、カメラ１０１およびカメラ１０２により同時、または少なくとも部分一致する期間に撮影を行うことができる。例えばカラーフィルタを用いて第１の画像および第２の画像から第２の計測用パターンおよび第１の計測用パターンに起因する色成分をそれぞれ除去することで、マッチングへの悪影響を抑制しながら短時間に第１の画像および第２の画像を取得することが可能となる。
【００２２】
他方、第１の計測用パターンおよび第２の計測用パターンは、その色成分を含めて同一であってもよい。かかる場合には、プロジェクタ２０１が第１の期間に亘って第１の計測用パターンを投射し、カメラ１０１が第１の期間内に被写体２０を撮影することになる。そして、プロジェクタ２０２が第１の期間とは異なる第２の期間に亘って第２の計測用パターンを投射し、カメラ１０２が第２の期間内に被写体２０を撮影することになる。
【００２３】
また、カメラ１０１および／またはカメラ１０２の校正は、手動で行われてもよいが、これから説明されるようにプロジェクタ／カメラ制御装置３００によってメカニカルな技法により行われてもよい。
【００２４】
例えば図１０の構成を前提とすると、プロジェクタ／カメラ制御装置３００は、これから説明するように、カメラ１０１およびカメラ１０２を直接駆動する代わりにこれらに比べて軽量な可動ミラー１１１および可動ミラー１１２を駆動し得る。
【００２５】
プロジェクタ／カメラ制御装置３００は、可動部材１２１および可動部材１２２の少なくとも回転角を制御する。具体的には、プロジェクタ／カメラ制御装置３００は、例えばモーターなどの小型のアクチュエーターに所望の制御値を示す制御信号を与え、可動部材１２１および可動部材１２２を必要なだけ回転させる。
【００２６】
ここで、可動部材１２１は、軸部と突起部とを有し、その軸部に可動ミラー１１１を取り付けられる。可動部材１２１は、カメラ１０１およびカメラ１０２（を固定する支持部材）ならびに可動部材１２２とは独立して（すなわち連動することなく）回転が可能である。同様に、可動部材１２２は、軸部と突起部とを有し、その軸部に可動ミラー１１２を取り付けられる。可動部材１２２は、カメラ１０１およびカメラ１０２ならびに可動部材１２１とは独立して（すなわち連動することなく）回転が可能である。
【００２７】
可動ミラー１１１の回転角は、可動部材１２１の回転に連動して変化する。同様に、可動ミラー１１２の回転角は、可動部材１２２の回転に連動して変化する。
【００２８】
ここで、図１０の例では、可動部材１２１は可動ミラー１１１の背面の中心付近に取り付けられ、可動部材１２２は可動ミラー１１２の背面の中心付近に取り付けられる。しかしながら、これは実装例の１つに過ぎない。可動部材１２１および可動部材１２２の取り付け位置は、可動ミラー１１２の背面の後方側（図１０の例ではＺ座標が大きくなる側）に取り付けられてよい。可動部材１２１および可動部材１２２をこのように取り付けることで、可動ミラー１１１および可動ミラー１１２の背面の中心付近に取り付けた場合に比べて、可動部材１２１および可動部材１２２の回転によるカメラ１０１およびカメラ１０２の仮想的なカメラ位置の動きを抑制することができる。すなわち、カメラ１０１およびカメラ１０２の光軸間隔をあまり変化させずに、輻輳角または視野方向を変化させることが可能となる。
【００２９】
カメラ１０１は、光学レンズと、受光画素と、ＡＤＣ（Ａｎａｌｏｇ−ｔｏ−Ｄｉｇｉｔａｌ  Ｃｏｎｖｅｒｔｅｒ）とを含む撮像ユニットである。カメラ１０１は、さらにカラーフィルタを含んでもよい。カメラ１０２の構成は、カメラ１０１と同一または類似であり得る。
【００３０】
カメラ１０１は、後述される第１の導光系からの入射光をレンズにより受光画素に結像し、アナログ／デジタル変換を行って、第１の画像を生成する。カメラ１０１は、第１の画像を画像処理装置４００へ送る。同様に、カメラ１０２は、後述される第２の導光系からの入射光をレンズにより受光画素に結像し、アナログ／デジタル変換を行って、第２の画像を生成する。カメラ１０２は、第２の画像を画像処理装置４００へ送る。
【００３１】
第１の画像および第２の画像は、例えばＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）ケーブル、光ファイバケーブル、ＨＤＭＩ（登録商標）（Ｈｉｇｈ−Ｄｅｆｉｎｉｔｉｏｎ  Ｍｕｌｔｉｍｅｄｉａ  Ｉｎｔｅｒｆａｃｅ）ケーブル、などの有線通信Ｉ／Ｆを介して、または例えばＢｌｕｅｔｏｏｔｈ（登録商標）、Ｗｉ−Ｆｉ（登録商標）などの無線通信技術を利用する無線通信Ｉ／Ｆを介して送信され得る。
【００３２】
カメラ１０１は、例えばその背面（光学レンズの備え付けられた面に対する裏面）が支持部材１３１に固定されており、可動部材１２１および可動部材１２２の回転による影響は実質的に受けない。すなわち、カメラ１０１の現実の位置および姿勢が、可動部材１２１および可動部材１２２の回転角により変化することはない。同様に、カメラ１０２は、例えばその背面が支持部材１３２に固定されており、可動部材１２１および可動部材１２２の回転による影響は実質的に受けない。すなわち、カメラ１０２の現実の位置および姿勢が、可動部材１２１および可動部材１２２の回転角により変化することはない。
【００３３】
図１０の例では、カメラ１０１およびカメラ１０２は、互いに背中合わせとなるように支持部材１３１および支持部材１３２にそれぞれ固定されているが、カメラ１０１の背面とカメラ１０２の背面との間に、プロジェクタ２０１およびプロジェクタ２０２が配置されてもよい。これにより、カメラ１０１およびカメラ１０２、ならびにプロジェクタ２０１およびプロジェクタ２０２を同一の筐体に収容することができる。他方、カメラ１０１およびカメラ１０２を収容する筐体をコンパクト化する観点から、カメラ１０１およびカメラ１０２、ならびにプロジェクタ２０１および２０２を別々の筐体に収容してもよい。
【００３４】
第１の導光系は、少なくとも１枚のミラーである第１のミラー群を含み、カメラ１０１へ第１の光線を含む入射光を導く。可動ミラー１１１は、この第１のミラー群に含まれる。同様に、第２の導光系は、少なくとも１枚のミラーである第２のミラー群を含み、カメラ１０２へ第２の光線を含む入射光を導く。可動ミラー１１２は、この第２のミラー群に含まれる。
【００３５】
カメラ１０１の仮想的なカメラ位置および／または姿勢は、第１の導光系の構成、例えば第１の導光系に含まれる１枚以上の可動ミラーの回転角に依存する。具体的には、カメラ１０１の仮想的なカメラ位置および／または姿勢は、第１のミラー群のうち第１の光線の光路上でカメラ１０１から最も遠いミラー（図１０の例では可動ミラー１１１）における入射光としての第１の光線を仮想的に延長した直線に基づいて決まる。同様に、カメラ１０２の仮想的なカメラ位置および／または姿勢は、第２の導光系の構成、例えば第２の導光系に含まれる１枚以上の可動ミラーの回転角に依存する。具体的には、カメラ１０２の仮想的なカメラ位置および／または姿勢は、第２のミラー群のうち第２の光線の光路上でカメラ１０２から最も遠いミラー（図１０の例では可動ミラー１１２）における入射光としての第２の光線を仮想的に延長した直線に基づいて決まる。
【００３６】
可動ミラー１１１の回転角が変化すると、カメラ１０１の仮想的なカメラ位置および／または姿勢は変化する。同様に、可動ミラー１１２の回転角が変化すると、カメラ１０２の仮想的なカメラ位置および／または姿勢は変化する。
【００３７】
次に、図１１、図１２および図１３にステレオカメラのＸＺ平面（正面）、ＹＺ平面（側面）およびＸＹ平面（底面）の様子をそれぞれ示す。図１１および図１２において、Ｚ軸方向が鉛直方向に相当する。すなわち、図１１乃至図１３の例では、カメラ１０１およびカメラ１０２の下方に被写体２０が配置されていることになる。しかしながら、これは実装例の１つに過ぎず、図１１が底面図かつ図１３が正面図である、すなわち被写体２０およびカメラ１０１およびカメラ１０２は鉛直方向上で重なり合っていない、と解することもできる。
【００３８】
図１１乃至図１３の例では、カメラ１０１およびカメラ１０２は、図１０において説明した要素に加えて、ベース部材１４０と、ギア１６１と、ギア１６２と、モーター１７１と、モーター１７２とを含む。
【００３９】
ベース部材１４０は、第１の面と、第２の面と、第１の面および第２の面の間を貫く複数の孔とを有する。図１１では、第１の面が描かれているものの、第２の面は第１の面の反対側の面であるため、また孔は可動部材１２１、可動部材１２２、ギア１６１およびギア１６２によって遮蔽されているため、描かれていない。可動部材１２１および可動部材１２２は、それぞれベース部材１４０の孔を貫通するように配置されている。
【００４０】
なお、ベース部材１４０は、可動部材１２１およびギア１６１が貫通する２つの孔を有する第１のベース部材と、可動部材１２２およびギア１６２が貫通する２つの孔を有する第２のベース部材とで構成されてもよい。また、図１３では、ベース部材１４０は、それぞれ複数の孔を有する２つの板状部材と当該２つの板状部材を接続する接続部材とで構成されているが、ベース部材１４０は断面がＨ字型の柱状部材として形成されてもよい。
【００４１】
可動部材１２１は、その長手方向の一端に周方向へ突出したギア状の突起部を有している。ここで、可動部材１２１の長手方向は、Ｙ軸に沿っている。可動部材１２１は、この突起部をベース部材１４０の第１の面に掛けた状態で、当該可動部材１２１の一部が第２の面から露出するように孔を貫通している。また、可動部材１２１の突起部は、ギア１６１と噛み合うように配置される。故に、可動部材１２１は、この突起部がベース部材１４０の第１の面に掛かった状態で、支持部材１３１および支持部材１３２ならびに可動部材１２２と独立して、ギア１６１の回転に連動して当該可動部材１２１の長手方向を軸とした、すなわちＹ軸周りの回転が可能である。
【００４２】
同様に、可動部材１２２は、その長手方向の一端に周方向へ突出したギア状の突起部を有している。ここで、可動部材１２２の長手方向は、Ｙ軸に沿っている。可動部材１２２は、この突起部をベース部材１４０の第１の面に掛けた状態で、当該可動部材１２２の一部が第２の面から露出するように孔を貫通している。また、可動部材１２２の突起部は、ギア１６２と噛み合うように配置される。故に、可動部材１２２は、この突起部がベース部材１４０の第１の面に掛かった状態で、支持部材１３１および支持部材１３２ならびに可動部材１２１と独立して、ギア１６２の回転に連動して当該可動部材１２２の長手方向を軸とした、すなわちＹ軸周りの回転が可能である。
【００４３】
ギア１６１は、モーター１７１のシャフトの先端に取り付けられ、可動部材１２１の突起部と噛み合うように、ベース部材１４０の第１の面上に配置される。同様に、ギア１６２は、モーター１７２のシャフトの先端に取り付けられ、可動部材１２２の突起部と噛み合うように、ベース部材１４０の第１の面上に配置される。
【００４４】
モーター１７１は、そのシャフトの先端の一部がベース部材１４０の第１の面から露出するように孔を貫通しており、その露出部分にはギア１６１が取り付けられる。モーター１７１は、電気信号を受け取り、その電気的エネルギーを力学的エネルギーに変換し、この力学的エネルギーによってギア１６１をＹ軸周りに回転駆動する。すなわち、モーター１７１は、ギア１６１を介して可動部材１２１に伝えられ、最終的に可動ミラー１１１に伝えられる回転駆動力を発生する。なお、モーター１７１は、第１の光線を含むカメラ１０１への入射光の光路を妨げないように配置され得る。例えば、モーター１７１は、カメラ１０１との間に第１の導光系が収まるように配置され得る。
【００４５】
同様に、モーター１７２は、そのシャフトの先端の一部がベース部材１４０の第１の面から露出するように孔を貫通しており、その露出部分にはギア１６２が取り付けられる。モーター１７２は、電気信号を受け取り、その電気的エネルギーを力学的エネルギーに変換し、この力学的エネルギーによってギア１６２をＹ軸周りに回転駆動する。すなわち、モーター１７２は、ギア１６２を介して可動部材１２２に伝えられ、最終的に可動ミラー１１２に伝えられる回転駆動力を発生する。モーター１７２は、第２の光線を含むカメラ１０２への入射光の光路を妨げないように配置され得る。例えば、モーター１７２は、カメラ１０２との間に第２の導光系が収まるように配置され得る。
【００４６】
モーター１７１およびモーター１７２は、互いに独立の電気信号により制御され得る。これらの電気信号は、プロジェクタ／カメラ制御装置３００から供給され得る。図１１乃至図１３に例示されるステレオカメラによれば、電気的な制御により、可動ミラー１１１および可動ミラー１１２のＹ軸周りの回転角、すなわちカメラ１０１およびカメラ１０２の仮想的な位置および／または姿勢を、所望の状態に調整することができる。
【００４７】
なお、図１の３Ｄ計測装置に含まれるステレオカメラにおける各種構造部品、具体的には、可動部材１２１、可動部材１２２、支持部材１３１、支持部材１３２、ギア１６１、およびギア１６２の一部または全部には、例えばマグネシウムなどの軽金属、またはＰＰＳ（Ｐｏｌｙｐｈｅｎｙｌｅｎｅ  ｓｕｌｆｉｄｅ）などの樹脂、といった軽量性および強度に優れた素材が用いられ得る。かかる素材を適切に用いることで、ステレオカメラを実用的な強度を維持しながらも軽量に構成することが可能である。
【００４８】
以下、図２乃至図９を用いて、鏡面を有する被写体２０に投射された第１の計測用パターンおよび第２の計測用パターンを効率的に撮影するために、カメラ１０１およびカメラ１０２をどのように校正すべきかについて説明する。なお、以降の説明では、基準面１０上では光は鏡面反射および拡散反射の両方が生じることとする。
【００４９】
図２は、変調素子２０３から投射された光がレンズ２０４を通って、基準面１０上で散乱（拡散反射）し、レンズ１０４を通ってセンサー１０３においてどのように結像するか、および変調素子２０５から投射された光がレンズ２０６を通って、基準面１０上で散乱し、レンズ１０６を通ってセンサー１０５においてどのように結像するか、を示している。
【００５０】
図２において実線は、マトリクス状に配置された変調素子２０３および変調素子２０５それぞれの中心に配置された変調素子によって投射された光がそれぞれ、同じくマトリクス状に配置されたセンサー１０３およびセンサー１０５のうちのどこに配置されたセンサーに結像するかを示している。他方、図２において破線は、変調素子２０３および変調素子２０５それぞれの中心よりも右側に配置された変調素子によって投射された光がそれぞれ、センサー１０３およびセンサー１０５のうちのどこに配置されたセンサーに結像するかを示している。
【００５１】
図３は、変調素子２０３から投射された光がレンズ２０４を通って、鏡面を有しない、すなわち散乱面を有する被写体２１の表面上で散乱し、レンズ１０４を通ってセンサー１０３においてどのように結像するか、および変調素子２０５から投射された光がレンズ２０６を通って、被写体２１の表面上で散乱し、レンズ１０６を通ってセンサー１０５においてどのように結像するか、を示している。
【００５２】
図３において実線は、変調素子２０３および変調素子２０５それぞれの中心に配置された変調素子によって投射された光がそれぞれ、センサー１０３およびセンサー１０５のうちのどこに配置されたセンサーに結像するかを示している。他方、図３において破線は、変調素子２０３および変調素子２０５それぞれの中心よりも右側に配置された変調素子によって投射された光がそれぞれ、センサー１０３およびセンサー１０５のうちのどこに配置されたセンサーに結像するかを示している。
【００５３】
図２および図３から読み取れるように、第１の計測用パターンおよび第２の計測用パターンは、被写体２１の有無に関わらずその画素配置を保ったままセンサー１０３およびセンサー１０５において結像する。故に、拡散反射光に関して、後述するマッチングにおいて矛盾は生じない。
【００５４】
図４では、図２の実線が破線として、図３の実線が実線のままとして描かれている。図４から読み取れるように、第１の計測用パターンおよび第２の計測用パターンは、被写体２１が有る場合と無い場合とでは、同一の画素に対応する光が、センサー１０３およびセンサー１０５の異なる位置において結像することになる。
【００５５】
具体的には、図３の例では、図２の例に比べて、センサー１０３およびセンサー１０５にとっての光源の位置が、基準面１０から被写体２０の表面までの距離だけ近づいている。なお、かかる距離は、カメラ１０１およびカメラ１０２が被写体２０の上方から撮像を行う場合には被写体２０の高さに相当し、カメラ１０１およびカメラ１０２が被写体２０の横方向から撮像を行う場合には被写体の奥行きまたは幅に相当し得る。
【００５６】
ただし、図３から読み取れるように、変調素子２０３および変調素子２０５によって投射された光は、鏡面を有しない被写体２１の表面上で正反射の他にも種々の方向に拡散反射するので、被写体２１の表面上での反射光は、被写体２１の周囲の様々な視点から撮影することが可能である。故に、カメラ１０１およびカメラ１０２が前述のようには校正されていなかったとしても、当該被写体２１に投射された第１の計測用パターンおよび第２の計測用パターンを撮影することは可能である。換言すれば、かかる被写体２１を撮影する場合に、カメラ１０１およびカメラ１０２の姿勢はあまり考慮する必要がない。
【００５７】
他方、図５および図８は、変調素子２０３から投射された光がレンズ２０４を通って、基準面１０上で鏡面反射し、レンズ１０４を通ってセンサー１０３においてどのように結像するか、および変調素子２０５から投射された光がレンズ２０６を通って、基準面１０上で鏡面反射し、レンズ１０６を通ってセンサー１０５においてどのように結像するか、を示している。
【００５８】
図５および図８において実線は、変調素子２０３および変調素子２０５それぞれの中心に配置された変調素子によって投射された光がそれぞれ、センサー１０３およびセンサー１０５のうちのどこに配置されたセンサーに結像するかを示している。他方、図５において破線は、変調素子２０３および変調素子２０５それぞれの中心よりも右側に配置された変調素子によって投射された光がそれぞれ、センサー１０３およびセンサー１０５のうちのどこに配置されたセンサーに結像するかを示している。
【００５９】
図６および図９は、変調素子２０３から投射された光がレンズ２０４を通って、被写体２０の表面上で鏡面反射し、レンズ１０４を通ってセンサー１０３においてどのように結像するか、および変調素子２０５から投射された光がレンズ２０６を通って、被写体２０の表面上で鏡面反射し、レンズ１０６を通ってセンサー１０５においてどのように結像するか、を示している。図６および図９において実線は、変調素子２０３および変調素子２０５それぞれの中心に配置された変調素子によって投射された光がそれぞれ、センサー１０３およびセンサー１０５のうちのどこに配置されたセンサーに結像するかを示している。他方、図６において破線は、変調素子２０３および変調素子２０５それぞれの中心よりも右側に配置された変調素子によって投射された光がそれぞれ、センサー１０３およびセンサー１０５のうちのどこに配置されたセンサーに結像するかを示している。また、図９において、破線は、図８においてレンズ１０４の中心を通る実線を表す。
【００６０】
図５および図６から読み取れるように、第１の計測用パターンおよび第２の計測用パターンは、被写体２０の有無に関わらずその画素配置を保ったままセンサー１０３およびセンサー１０５において結像する。故に、鏡面反射光に関しても、後述するマッチングにおいて矛盾は生じない。
【００６１】
ただし、図６および図９の例では、前述の図３の例とは異なり、被写体２０の表面における反射光は主に鏡面反射光であって、これを撮影可能な視点は限られる。故に、鏡面反射光を捉えられるようにカメラ１０１およびカメラ１０２を校正しなければ、被写体２０に投射された第１の計測用パターンおよび第２の計測用パターンを撮影することは困難である。カメラ１０１およびカメラ１０２が前述のように校正されていたならば、センサー１０３には変調素子２０３によって投射され基準面１０上で鏡面反射した光が結像し、センサー１０５には変調素子２０５によって投射され基準面１０上で鏡面反射した光が結像する。すなわち、カメラ１０１は、プロジェクタ２０１によって投射され基準面１０上で鏡面反射した光を捉え、カメラ１０２は、プロジェクタ２０２によって投射され基準面１０条で鏡面反射した光を捉えることができる。
【００６２】
図７では、図５の実線が破線として、図６の実線が実線のままとして描かれている。図７、および図９から読み取れるように、第１の計測用パターンおよび第２の計測用パターンは、被写体２０が有る場合と無い場合とでは、同一の画素に対応する光が、センサー１０３およびセンサー１０５の異なる位置において結像することになる。具体的には、図６および図９の例では、図５および図８の例に比べて、センサー１０３およびセンサー１０５にとっての光源の位置が、上記距離の２倍分近づいている。
【００６３】
しかしながら、かかる光源の位置のずれに起因する、センサー１０３およびセンサー１０５における結像位置のずれの影響は限定的であり、前述のようにカメラ１０１およびカメラ１０２が基準面１０上での鏡面反射光を捉えるように校正がなされていれば、被写体２０の形状に関わらず、当該被写体２０の表面上で反射した第１の計測用パターンおよび第２の計測用パターンの大部分を依然として撮影することができる。
【００６４】
一例として、カメラ１０１の位置姿勢を、マトリクス状に配置された複数の変調素子２０３の中心に配置された投光素子によって投射され基準面１０上で鏡面反射した光が、マトリクス状に配置された複数のセンサー１０３の中心に配置されたセンサー（受光画素）に結像するように校正することができる。同様に、カメラ１０２の位置姿勢を、マトリクス状に配置された複数の変調素子２０５の中心に配置された投光素子によって投射され基準面１０上で鏡面反射した光が、マトリクス状に配置された複数のセンサー１０５の中心に配置されたセンサー（受光画素）に結像するように校正することができる。かかる校正によれば、前述の光源の位置のずれに起因する結像位置のずれが生じたとしても、被写体２０の表面上で反射した第１の計測用パターンおよび第２の計測用パターンの中心付近を撮影することができる。
【００６５】
なお、図７から読み取れるように、被写体２０が存在する場合には、そうでない場合に比べて、カメラ１０１およびカメラ１０２における結像位置はそれぞれ対応するプロジェクタ２０１およびプロジェクタ２０２から離れる方向に、上記距離に依存する量だけずれることになる。すなわち、結像位置のずれる方向は既知である。故に、例えば、カメラ１０１の位置姿勢は、マトリクス状に配置された複数の変調素子２０３の中心に配置された投光素子によって投射され基準面１０上で鏡面反射した光が、マトリクス状に配置された複数のセンサー１０３の中心よりもプロジェクタ２０１から離れる方向にオフセットさせた位置に配置されたセンサー（受光画素）に結像するように校正されてもよい。同様に、カメラ１０２の位置姿勢は、マトリクス状に配置された複数の変調素子２０５の中心に配置された投光素子によって投射され基準面１０上で鏡面反射した光が、マトリクス状に配置された複数のセンサー１０５の中心よりもプロジェクタ２０２から離れる方向にオフセットさせた位置に配置されたセンサーに結像するように校正されてもよい。適切なオフセット量が設定されれば、被写体２０からの鏡面反射光を、センサー１０３およびセンサー１０５のより中心に近い位置で捉えることが可能となる。なお、このオフセット量は経験的に定められ得るが、例えば被写体２０の想定サイズが参照可能である場合には、当該想定サイズに基づいて決定されてよい。
【００６６】
画像処理装置４００は、カメラ１０１から第１の画像を取得し、カメラ１０２から第２の画像を取得し、種々の画像処理を行う。例えば、画像処理装置４００は、画素毎に第１の画像と第２の画像との間で画素ブロックレベルでのマッチングを行う。そして、画像処理装置４００は、かかるマッチング結果に基づいて当該画素におけるカメラ１０１およびカメラ１０２の視差を推定し、さらにカメラ１０１およびカメラ１０２から被写体２０における当該画素に対応する点までの距離を推定する。
【００６７】
さらに、画像処理装置４００は、画像全体または画像の一部に含まれる各画素に対応する点までの距離の推定結果に基づいてデプスマップ（および／または点群データ）を生成する。そして、画像処理装置４００は、後述されるように、異なる複数の視点において得られた複数組の第１の画像および第２の画像に基づいて複数のデプスマップを生成し、これらを統合することで被写体２０の少なくとも一部の３Ｄ形状を推定する。
【００６８】
画像処理装置４００は、入出力制御、通信制御、および種々の画像処理（例えば、第１の画像および第２の画像の間のマッチング、視差、距離および被写体の３Ｄ形状の推定、デプスマップ（および／または点群データ）の生成、など）を行うプロセッサを含む。ここで、プロセッサは、典型的にはＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）および／またはＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）であるが、マイコン、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）、またはその他の汎用または専用のプロセッサなどであってもよい。
【００６９】
画像処理装置４００は、さらに、かかる処理を実現するためにプロセッサによって実行されるプログラムおよび当該プログラムによって使用されるデータ、例えば画像データ、視差データ、距離データ、デプスマップデータ、点群データ、３Ｄデータ、などを一時的に格納するメモリを含んでいる。メモリは、かかるプログラム／データが展開されるワークエリアを有するＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）を含み得る。
【００７０】
画像処理装置４００は、さらに、カメラ１０１およびカメラ１０２に接続するための通信インタフェース（Ｉ／Ｆ）を利用可能である。通信Ｉ／Ｆは、画像処理装置４００に内蔵されていてもよいし、画像処理装置４００に外付けされていてもよい。
【００７１】
通信Ｉ／Ｆは、例えば、カメラ１０１およびカメラ１０２から第１の画像および第２の画像をそれぞれ受け取る。通信Ｉ／Ｆは、例えば光ファイバケーブル、ＨＤＭＩケーブル、などの有線通信Ｉ／Ｆであってもよいし、例えばＢｌｕｅｔｏｏｔｈ（登録商標）、Ｗｉ−Ｆｉ（登録商標）などの無線通信技術を利用する無線通信Ｉ／Ｆであってもよい。
【００７２】
図１７は、画像処理装置４００の一例を示す。図１７の画像処理装置４００は、撮影画像取得部４０１と、対応ブロック探索部４０２と、視差推定部４０３と、距離推定部４０４と、デプスマップ生成部４０５と、デプスマップ記憶部４０６と、３Ｄ形状推定部４０７とを含む。
【００７３】
撮影画像取得部４０１は、カメラ１０１およびカメラ１０２からそれぞれ第１の画像および第２の画像を取得する。撮影画像取得部４０１は、取得した第１の画像および第２の画像を対応ブロック探索部４０２へ送る。撮影画像取得部４０１は、例えば前述のプロセッサおよび通信Ｉ／Ｆに相当し得る。
【００７４】
対応ブロック探索部４０２は、撮影画像取得部４０１から第１の画像および第２の画像を受け取る。対応ブロック探索部４０２は、第１の画像および第２の画像の画素ブロックレベルでのマッチングを行う。そして、対応ブロック探索部４０２は、マッチング結果を視差推定部４０３へ送る。対応ブロック探索部４０２は、前述のプロセッサに相当し得る。
【００７５】
対応ブロック探索部４０２は、まず、第１の画像における画素の１つを注目画素として決定する。なお、以降の説明では、第１の画像、すなわちカメラ１０１による撮影画像から注目画素を決定することとするが、第２の画像、すなわちカメラ１０２による撮影画像から注目画素を決定することも可能である。後者の場合には、以降の説明において「第１の画像」および「第２の画像」の用語を適宜読み替えれば良い。
【００７６】
対応ブロック探索部４０２は、決定した注目画素を含む第１の画素ブロックを第１の画像から抽出する。それから、対応ブロック探索部４０２は、第１の画素ブロックに対応する第２の画素ブロックを第２の画像から探索する。
【００７７】
対応ブロック探索部４０２は、注目画素を変更しながら第１の画像の各画素について上記探索処理を繰り返す。これにより、第１の画像内の各画素について、第２の画像とのマッチングが行われる。そして、対応ブロック探索部４０２は、マッチング結果を、視差推定部４０３へ送る。マッチング結果は、例えば第１の画像の各画素（マッチングに成功した画素）の座標（位置）と、第２の画像において当該画素に対応するとして探索された画素の座標とを含み得る。なお、対応ブロック探索部４０２は、１つの画素について探索が終わる毎にマッチング結果を視差推定部４０３へ送ってもよいし、全ての画素について探索が終わってからマッチング結果をまとめて視差推定部４０３へ送ってもよい。
【００７８】
視差推定部４０３は、対応ブロック探索部４０２からマッチング結果を受け取る。視差推定部４０３は、マッチング結果に基づいて、第１の画像内の各画素（マッチングに成功した画素）に関するカメラ１０１およびカメラ１０２の推定視差を算出する。視差推定部４０３は、推定視差を表す視差データを距離推定部４０４へ送る。視差データは、例えば第１の画像の各画素の座標と当該画素に関する視差ベクトルとを含み得る。また、視差推定部４０３は、視差データを図示されない外部装置へ送ってもよい。視差推定部４０３は、例えば前述のプロセッサ（および通信Ｉ／Ｆ）に相当し得る。
【００７９】
距離推定部４０４は、視差推定部４０３から視差データを受け取る。距離推定部４０４は、視差データに基づいて、第１の画像内の画素（マッチングに成功した画素）毎に、カメラ１０１およびカメラ１０２から被写体２０における当該画素に対応する点までの推定距離、すなわち推定デプスを算出する。距離推定部４０４は、推定距離を表す距離データをデプスマップ生成部４０５へ送る。距離データは、例えば第１の画像の各画素の座標と当該画素の距離（デプス）とを含み得る。また、距離推定部４０４は、距離データを図示されない外部装置へ送ってもよい。距離推定部４０４は、例えば前述のプロセッサ（および通信Ｉ／Ｆ）に相当し得る。
【００８０】
デプスマップ生成部４０５は、距離推定部４０４から距離データを受け取る。デプスマップ生成部４０５は、距離データを例えば画像化し、デプスマップ（データ）を生成する。デプスマップは、例えば画像データであって、各画素がその対応する距離に比例する画素値を有する。また、デプスマップ生成部４０５は、デプスマップに加えて、またはデプスマップの代わりに被写体２０の点群データを生成してもよい。点群データは、被写体２０の表面の多数の点の３Ｄ位置データを含み得る。
【００８１】
デプスマップ生成部４０５は、デプスマップ（および／または点群データ）をデプスマップ記憶部４０６に書き込む。なお、デプスマップは、カメラ１０１およびカメラ１０２が撮影を行った視点により区別され得る。視点は、カメラ１０１およびカメラ１０２の位置姿勢によって決まる。デプスマップ生成部４０５は、デプスマップを、当該デプスマップのベースとなった撮影画像の視点を識別する識別子、または視点を表すデータに対応付けて、デプスマップ記憶部４０６に書き込み得る。また、デプスマップ生成部４０５は、デプスマップを図示されない外部装置へ送ってもよい。デプスマップ生成部４０５は、例えば前述のプロセッサ（および通信Ｉ／Ｆ）に相当し得る。
【００８２】
デプスマップ記憶部４０６は、デプスマップ（および／または点群データ）を視点の識別子、または視点を表すデータに対応付けて保存する。デプスマップは、デプスマップ生成部４０５によってデプスマップ記憶部４０６に書き込まれ得る。また、デプスマップは、３Ｄ形状推定部４０７によってデプスマップ記憶部４０６から読み出され得る。デプスマップ記憶部４０６は、例えば前述のメモリに相当し得る。
【００８３】
３Ｄ形状推定部４０７は、デプスマップ記憶部４０６から、複数の視点に対応する複数のデプスマップ（および／または点群データ）を読み出す。３Ｄ形状推定部４０７は、読み出した複数のデプスマップをそれぞれ対応する視点に基づいて変換し、これらを合成することで被写体２０の推定３Ｄ形状を算出する。３Ｄ形状推定部４０７は、推定３Ｄ形状を表す３Ｄデータを図示されない外部装置へ送る。３Ｄ形状推定部４０７は、例えば前述のプロセッサおよび通信Ｉ／Ｆに相当し得る。
【００８４】
具体的には、デプスマップ記憶部４０６に保存された各デプスマップ（および／または点群データ）は、対応する視点から見た、被写体２０の一部分の３Ｄ形状を表す。特に、被写体２０が鏡面を有する場合には、鏡面反射（およびこれに近い反射成分）を除いて、画像から計測用パターンを検出することは困難である。すなわち、かかる場合には、デプスマップは、被写体２０のごく一部の３Ｄ形状を表しているに過ぎない。そこで、３Ｄ形状推定部４０７は、かかる部分的な３Ｄデータを合成することで、図１５に例示されるように、被写体２０のより大きな部分（全体であってもよい）の３Ｄデータを得ることができる。
【００８５】
なお、視点の移動は、例えば図１４に例示されるように、３Ｄ計測装置（特に、カメラ１０１、カメラ１０２、プロジェクタ２０１およびプロジェクタ２０２）を搬送機によって物理的に移動させることにより実現可能である。ここで、搬送機は、コンベア、車両、ドローンなどであり得る。搬送機は、３Ｄ計測装置を載せて、被写体２０の周囲を平行移動してもよいし、例えば円弧などの曲線を描くように移動してもよい。
【００８６】
或いは逆に、被写体２０を搬送機によって物理的に移動させることにより、視点の移動を実現することもできる。搬送機は、基準面１０および被写体２０を載せて、３Ｄ計測装置（特に、カメラ１０１、カメラ１０２、プロジェクタ２０１およびプロジェクタ２０２）の周囲を平行移動してもよいし、例えば円弧などの曲線を描くように移動してもよい。
【００８７】
また、被写体２０そのものの位置を移動させずとも、例えば図１６に示されるように被写体２０を回転台３０に載せて回転させることでも視点の移動は実現可能である。ここで、回転台３０はターンテーブルであり得る。
【００８８】
なお、視点が変更される毎に、カメラ１０１、カメラ１０２、プロジェクタ２０１およびプロジェクタ２０２の校正が行われてもよい。
【００８９】
従来、例えば３Ｄスキャナを用いて３Ｄデータが生成されてきた。しかしながら、３Ｄスキャナによれば、異なる視点に亘る一連の撮影が完了した後に全画像データを処理することにより立体モデルが生成される。故に、立体モデルを生成するまでに、大量の画像データを保存しておかなければならないので大容量のメモリが必要となるうえに、処理時間も長い。他方、図１の３Ｄ計測装置によれば、１回の撮影で１視点分の３Ｄデータ（すなわち、デプスマップおよび／または点群データ）を生成することができる。故に、この３Ｄ計測装置によれば、１視点分の３Ｄデータを生成する毎に当該視点における画像データを削除してメモリ使用量を節約することが可能である。また、この３Ｄ計測装置によれば、視点、すなわちカメラ１０１およびカメラ１０２と被写体２０との位置関係は、搬送機の位置データ、回転台３０の回転角データなどから容易に把握することができるので、複数視点に亘る３Ｄデータを短時間で合成することができる。
【００９０】
以下、図１８および図１９を用いて、図１の３Ｄ計測装置の動作を説明する。  
まず、カメラ１０１およびカメラ１０２の初期視点が決定される（ステップＳ５０１）。例えば、搬送機の初期位置、または回転台３０の初期回転角を設定することで、カメラ１０１およびカメラ１０２の初期視点が決定される。
【００９１】
次に、カメラ１０１、カメラ１０２、プロジェクタ２０１およびプロジェクタ２０２が、基準面１０に関して校正される（ステップＳ５０２）。具体的には、プロジェクタ２０１およびプロジェクタ２０２は、基準面１０上に結像するように校正される。それから、カメラ１０１は、プロジェクタ２０１によって投射され基準面１０上で鏡面反射した光を捉えることができるように校正される。同様に、カメラ１０２は、プロジェクタ２０２によって投射され基準面１０上で鏡面反射した光を捉えることができるように校正される。
【００９２】
例えば、カメラ１０１は、マトリクス状に配置された複数の変調素子２０３の中心に配置された変調素子によって投射されレンズ２０４を通過し、基準面１０上で鏡面反射した光が、レンズ１０４を通過して、マトリクス状に配置された複数のセンサー１０３の中心となるセンサー（受光画素）に結像するように校正され得る。かかる校正を実現するために、例えば、プロジェクタ／カメラ制御装置３００によって、カメラ１０１に対応する駆動機構、例えば前述の可動ミラー１１１、可動部材１２１、ギア１６１、およびモーター１７１が制御され、カメラ１０１の姿勢は変更されてもよい。同様に、カメラ１０２は、マトリクス状に配置された複数の変調素子２０５の中心に配置された変調素子によって投射されレンズ２０６を通過し、基準面１０上で鏡面反射した光が、レンズ１０６を通過して、マトリクス状に配置された複数のセンサー１０５の中心となるセンサーに結像するように校正され得る。かかる校正を実現するために、例えば、プロジェクタ／カメラ制御装置３００によって、カメラ１０２に対応する駆動機構、例えば前述の可動ミラー１１２、可動部材１２２、ギア１６２、およびモーター１７２が制御され、カメラ１０２の姿勢は変更されてもよい。
【００９３】
次に、被写体２０が設置され（ステップＳ５０３）、処理はステップＳ５０５へ進む。例えば、被写体２０は、基準面１０に相当する固定の台、搬送機もしくは回転台３０の上に載せられ、または固定の台、搬送機または回転台３０の上に基準面１０を背にして載せられる。
【００９４】
次に、プロジェクタ２０１は被写体２０に第１の計測用パターンを投射し（ステップＳ５０５）、カメラ１０１は第１の計測用パターンを投射された被写体２０を撮影して第１の画像を生成する（ステップＳ５０６）。
【００９５】
他方、プロジェクタ２０２は被写体２０に第２の計測用パターンを投射し（ステップＳ５０７）、カメラ１０２は第２の計測用パターンを投射された被写体２０を撮影して第２の画像を生成する（ステップＳ５０８）。
【００９６】
ここで、ステップＳ５０５およびステップＳ５０６と、ステップＳ５０７およびステップＳ５０８とは、図１８とは逆の順序で行われてもよいし、並列的に行われてもよい。例えば前述のように、第１の計測用パターンおよび第２の計測用パターンの色成分を互いに異ならせることで、これらが同時に投射されたとしても、カメラ１０１による撮影画像から第２の計測用パターンの色を取り除くカラーフィルタを適用し、逆にカメラ１０２による撮影画像から第１の計測用パターンの色を取り除くカラーフィルタを適用することで、撮影の所要時間を短縮しながらも後段のマッチングへの悪影響を緩和することができる。
【００９７】
ステップＳ５０５乃至ステップＳ５０８の終了後に、処理はステップＳ５１０へ進む。ステップＳ５１０では、画像処理装置４００は、ステップＳ５０６およびステップＳ５０８において生成された第１の画像および第２の画像に基づいて画像処理を行い、現在の視点に対応する被写体２０の３Ｄデータ（デプスマップおよび／または点群データ）を生成する。ステップＳ５１０の詳細は、図１９を用いて後述される。なお、ステップＳ５１０の終了後に、第１の画像データおよび第２の画像データは、カメラ１０１、カメラ１０２、および／または画像処理装置４００のメモリから削除されてよい。
【００９８】
ステップＳ５１０の終了後に、全ての視点での撮影が完了しているか否かが判定される（ステップＳ５２１）。全ての視点での撮影が完了している場合には処理はステップＳ５２３へ進み、そうでなければ処理はステップＳ５２２へ進む。
【００９９】
ステップＳ５２２においてカメラ１０１およびカメラ１０２の視点が変更され、処理はステップＳ５０５に戻る。例えば、カメラ１０１、カメラ１０２、プロジェクタ２０１およびプロジェクタ２０２を載せた搬送機、または被写体２０を載せた搬送機の位置が変更されたり、被写体２０を載せた回転台３０の回転角が変更されたりする。
【０１００】
ステップＳ５２３において、画像処理装置４００（の３Ｄ形状推定部４０７）は、過去に複数回に亘ってステップＳ５１０を実行することで得られた、複数視点に亘る被写体２０の３Ｄデータを合成することで、被写体２０の少なくとも一部の３Ｄ形状を推定する。ステップＳ５２３の終了とともに図１８の動作は終了する。
【０１０１】
次に、図１９を用いて、ステップＳ５１０の詳細を説明する。  
まず、撮影画像取得部４０１は、ステップＳ５０６およびステップＳ５０８において生成された第１の画像および第２の画像を取得する（ステップＳ５１１）。ステップＳ５１１の後に、処理はステップＳ５１２へと進む。
【０１０２】
ステップＳ５１２において、対応ブロック探索部４０２は、第１の画像（または第２の画像）から注目画素を選択する。なお、注目画素は、第１の画像全体から選択されてもよいし、第１の画像の一部である探索範囲から選択されてもよい。
【０１０３】
対応ブロック探索部４０２は、ステップＳ５１２において選択した注目画素を中心とする画素ブロックとマッチする画素ブロックを、第２の画像（または第１の画像）から探索する（ステップＳ５１３）。
【０１０４】
視差推定部４０３は、ステップＳ５１２において選択された注目画素の座標と、ステップＳ５１３において探索されたブロックの座標とに基づいて、当該注目画素に関するカメラ１０１およびカメラ１０２の視差を推定する（ステップＳ５１４）。
【０１０５】
距離推定部４０４は、ステップＳ５１４において推定された視差に基づいて、この注目画素に対応する被写体２０の点からカメラ１０１およびカメラ１０２までの距離を推定する（ステップＳ５１５）。
【０１０６】
ステップＳ５１５の終了後に、第１の画像（もしくは第２の画像）、またはその探索範囲内の全ての画素が選択済みであるか否かが判定される（ステップＳ５１６）。未選択の画素が残存する場合には処理はステップＳ５１２に戻り、そうでなければ処理はステップＳ５１７へ進む。
【０１０７】
ステップＳ５１７において、デプスマップ生成部４０５は、第１の画像（もしくは第２の画像）、またはその探索範囲内の各画素に関する推定距離に基づいて、現在の視点での被写体２０のデプスマップおよび／または点群データを生成する。ステップＳ５１７の終了によりステップＳ５１０も終了する。
【０１０８】
以上説明したように、実施形態に係る撮像装置は、１対１対応するカメラおよびプロジェクタの組を含んでおり、各カメラは、その対応するプロジェクタによって投射され、被写体の背景に相当する基準面上で鏡面反射した光を捉えることができるように校正される。故に、この撮像装置によれば、被写体が鏡面を有する場合であっても、当該被写体に投射され、当該鏡面上で鏡面反射した計測用パターンの大部分を捉えることができるので、当該被写体に対する３Ｄ計測に適した撮影画像を得ることができる。
【０１０９】
（変形例）  
実施形態では、カメラおよびプロジェクタが２組である例を説明したが、カメラおよびプロジェクタは１組であってもよい。かかる場合にも、多数の視点で撮影を行うことで、実施形態と同一または類似の効果を得ることができる。
【０１１０】
上述の実施形態は、本発明の概念の理解を助けるための具体例を示しているに過ぎず、本発明の範囲を限定することを意図されていない。実施形態は、本発明の要旨を逸脱しない範囲で、様々な構成要素の付加、削除または転換をすることができる。
【０１１１】
上述の実施形態では、いくつかの機能部を説明したが、これらは各機能部の実装の一例に過ぎない。例えば、１つの装置に実装されると説明された複数の機能部が複数の別々の装置に亘って実装されることもあり得るし、逆に複数の別々の装置に亘って実装されると説明された機能部が１つの装置に実装されることもあり得る。
【０１１２】
上記各実施形態において説明された種々の機能部は、回路を用いることで実現されてもよい。回路は、特定の機能を実現する専用回路であってもよいし、プロセッサのような汎用回路であってもよい。
【０１１３】
上記各実施形態の処理の少なくとも一部は、例えば汎用のコンピュータに搭載されたプロセッサを基本ハードウェアとして用いることでも実現可能である。上記処理を実現するプログラムは、コンピュータで読み取り可能な記録媒体に格納して提供されてもよい。プログラムは、インストール可能な形式のファイルまたは実行可能な形式のファイルとして記録媒体に記憶される。記録媒体としては、磁気ディスク、光ディスク（ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＤＶＤ等）、光磁気ディスク（ＭＯ等）、半導体メモリなどである。記録媒体は、プログラムを記憶でき、かつ、コンピュータが読み取り可能であれば、何れであってもよい。また、上記処理を実現するプログラムを、インターネットなどのネットワークに接続されたコンピュータ（サーバ）上に格納し、ネットワーク経由でコンピュータ（クライアント）にダウンロードさせてもよい。
【符号の説明】
【０１１４】
１０・・・基準面
２０，２１・・・被写体
３０・・・回転台
１０１，１０２・・・カメラ
１０３，１０５・・・センサー
１０４，１０６，２０４，２０６・・・レンズ
１１１，１１２・・・可動ミラー
１２１，１２２・・・可動部材
１３１，１３２・・・支持部材
１４０・・・ベース部材
１６１，１６２・・・ギア
１７１，１７２・・・モーター
２０１，２０２・・・プロジェクタ
２０３，２０５・・・変調素子
３００・・・プロジェクタ／カメラ制御装置
４００・・・画像処理装置
４０１・・・撮影画像取得部
４０２・・・対応ブロック探索部
４０３・・・視差推定部
４０４・・・距離推定部
４０５・・・デプスマップ生成部
４０６・・・デプスマップ記憶部
４０７・・・３Ｄ形状推定部
【図１】
2020122676.tif 000003
【図２】
2020122676.tif 000004
【図３】
2020122676.tif 000005
【図４】
2020122676.tif 000006
【図５】
2020122676.tif 000007
【図６】
2020122676.tif 000008
【図７】
2020122676.tif 000009
【図８】
2020122676.tif 000010
【図９】
2020122676.tif 000011
【図１０】
2020122676.tif 000012
【図１１】
2020122676.tif 000013
【図１２】
2020122676.tif 000014
【図１３】
2020122676.tif 000015
【図１４】
2020122676.tif 000016
【図１５】
2020122676.tif 000017
【図１６】
2020122676.tif 000018
【図１７】
2020122676.tif 000019
【図１８】
2020122676.tif 000020
【図１９】
2020122676.tif 000021