(57)【特許請求の範囲】
【請求項１】
測距光を被写体に照射することにより該被写体による前記測距光の反射光を撮像して、前記被写体の立体形状を表す距離画像用のデータを取得する第１の撮像手段と、
前記第１の撮像手段とは異なる位置に配置された前記被写体の明暗を表す２次元画像を表す画像データを取得する第２の撮像手段と、
前記第１および前記第２の撮像手段の駆動を同期させて、前記距離画像用のデータおよび前記２次元画像を表す画像データを前記第１および前記第２の撮像手段に取得させる同期制御手段と、
前記距離画像用のデータに基づいて、前記被写体の立体形状を表す距離画像を生成する距離画像生成手段と、
前記距離画像上における画素と、前記２次元画像上における画素との対応関係を算出する対応関係算出手段と、
前記距離画像上の各画素について外向きの法線ベクトルを算出し、前記第２の撮像手段から前記距離画像上の各画素を見込む視線ベクトルを算出し、前記距離画像上の注目画素について、前記法線ベクトルと前記視線ベクトルとの内積が所定のしきい値以上となる場合に、前記注目画素を、前記被写体上において、前記第１の撮像手段からは臨むことができるが前記第２の撮像手段からは臨むことができない隠れ点として検出する隠れ点検出手段と、
前記対応関係に基づいて、前記２次元画像を前記距離画像にマッピングしてマッピング画像を生成し、該マッピング画像上において前記隠れ点をグレーでマッピングするか、または該隠れ点の明度を下げることにより、該隠れ点を視認可能とするマッピング手段とを備えたことを特徴とする立体撮像装置。
【請求項２】
測距光を被写体に照射することにより該被写体による前記測距光の反射光を撮像して、前記被写体の立体形状を表す距離画像用のデータを取得する第１の撮像手段と、
前記第１の撮像手段とは異なる位置に配置された前記被写体の明暗を表す２次元画像を表す画像データを取得する第２の撮像手段と、
前記第１および前記第２の撮像手段の駆動を同期させて、前記距離画像用のデータおよび前記２次元画像を表す画像データを前記第１および前記第２の撮像手段に取得させる同期制御手段と、
前記距離画像用のデータに基づいて、前記被写体の立体形状を表す距離画像を生成する距離画像生成手段と、
前記距離画像上における画素と、前記２次元画像上における画素との対応関係を算出する対応関係算出手段と、
前記第２の撮像手段から前記距離画像上の各画素を見込む視線ベクトルを算出し、前記距離画像上の注目画素について、該距離画像に該注目画素を見込む前記視線ベクトルを投影し、該距離画像上における前記投影された視線ベクトルに対応する投影線上において、前記視線ベクトルと前記投影線上における投影線対応画素との３次元空間における前記第２の撮像手段からの距離関係を求め、少なくとも１つの前記投影線対応画素が前記視線ベクトルよりも前記第２の撮像手段側にある場合、前記注目画素を、前記被写体上において、前記第１の撮像手段からは臨むことができるが前記第２の撮像手段からは臨むことができない隠れ点として検出する隠れ点検出手段と、
前記対応関係に基づいて、前記２次元画像を前記距離画像にマッピングしてマッピング画像を生成し、該マッピング画像上において前記隠れ点をグレーでマッピングするか、または該隠れ点の明度を下げることにより、該隠れ点を視認可能とするマッピング手段とを備えたことを特徴とする立体撮像装置。
【請求項３】
前記第１の撮像手段が前記距離画像用のデータを取得する測距モードと、前記被写体の明暗を表す２次元画像を取得するキャリブレーションモードとを切替可能な手段である場合において、前記第１の撮像手段がキャリブレーションモードに変更された場合、前記第１および前記第２の撮像手段に所定のチャートを撮像させ、該撮像により取得された第１および第２のチャート画像に基づいて、前記第１および前記第２の撮像手段の幾何学的情報を取得するキャリブレーション処理を行うキャリブレーション手段をさらに備えたことを特徴とする請求項１または２記載の立体撮像装置。
【請求項４】
前記第１の撮像手段が、前記測距光の波長域の光のみを透過するフィルタを、前記第１の撮像手段の光軸上に出し入れ可能に備えてなり、
前記キャリブレーション手段は、前記第１の撮像手段がキャリブレーションモードに変更されると、前記フィルタを前記光軸上から退避させる手段であることを特徴とする請求項３記載の立体撮像装置。
【請求項５】
第１の撮像手段により、測距光を被写体に照射することにより該被写体による前記測距光の反射光を撮像して、前記被写体の立体形状を表す距離画像用のデータを取得し、前記第１の撮像手段とは異なる位置に配置された第２の撮像手段により前記被写体の明暗を表す２次元画像を表す画像データを取得するに際し、前記第１および前記第２の撮像手段の駆動を同期させて前記距離画像用のデータおよび前記２次元画像を表す画像データを取得し、
前記距離画像用のデータに基づいて、前記被写体の立体形状を表す距離画像を生成し、
前記距離画像上における画素と、前記２次元画像上における画素との対応関係を算出し、
前記距離画像上の各画素について外向きの法線ベクトルを算出し、
前記第２の撮像手段から前記距離画像上の各画素を見込む視線ベクトルを算出し、
前記距離画像上の注目画素について、前記法線ベクトルと前記視線ベクトルとの内積が所定のしきい値以上となる場合に、前記注目画素を、前記被写体上において、前記第１の撮像手段からは臨むことができるが前記第２の撮像手段からは臨むことができない隠れ点として検出し、
前記対応関係に基づいて、前記２次元画像を前記距離画像にマッピングしてマッピング画像を生成し、
該マッピング画像上において前記隠れ点をグレーでマッピングするか、または該隠れ点の明度を下げることにより、該隠れ点を視認可能とすることを特徴とする立体撮像装置の制御方法。
【請求項６】
第１の撮像手段により、測距光を被写体に照射することにより該被写体による前記測距光の反射光を撮像して、前記被写体の立体形状を表す距離画像用のデータを取得し、前記第１の撮像手段とは異なる位置に配置された第２の撮像手段により前記被写体の明暗を表す２次元画像を表す画像データを取得するに際し、前記第１および前記第２の撮像手段の駆動を同期させて前記距離画像用のデータおよび前記２次元画像を表す画像データを取得し、
前記距離画像用のデータに基づいて、前記被写体の立体形状を表す距離画像を生成し、
前記距離画像上における画素と、前記２次元画像上における画素との対応関係を算出し、
前記第２の撮像手段から前記距離画像上の各画素を見込む視線ベクトルを算出し、
前記距離画像上の注目画素について、該距離画像に該注目画素を見込む前記視線ベクトルを投影し、
該距離画像上における前記投影された視線ベクトルに対応する投影線上において、前記視線ベクトルと前記投影線上における投影線対応画素との３次元空間における前記第２の撮像手段からの距離関係を求め、
少なくとも１つの前記投影線対応画素が前記視線ベクトルよりも前記第２の撮像手段側にある場合、前記注目画素を、前記被写体上において、前記第１の撮像手段からは臨むことができるが前記第２の撮像手段からは臨むことができない隠れ点として検出し、
前記対応関係に基づいて、前記２次元画像を前記距離画像にマッピングしてマッピング画像を生成し、
該マッピング画像上において前記隠れ点をグレーでマッピングするか、または該隠れ点の明度を下げることにより、該隠れ点を視認可能とすることを特徴とする立体撮像装置の制御方法。
【請求項７】
測距光を被写体に照射することにより該被写体による前記測距光の反射光を撮像して、前記被写体の立体形状を表す距離画像用のデータを取得する第１の撮像手段と、前記第１の撮像手段とは異なる位置に配置された前記被写体の明暗を表す２次元画像を表す画像データを取得する第２の撮像手段とを備えた立体撮像装置の制御方法をコンピュータに実行させるためのプログラムであって、
前記第１および前記第２の撮像手段の駆動を同期させて前記距離画像用のデータおよび前記２次元画像を表す画像データを取得する手順と、
前記距離画像用のデータに基づいて、前記被写体の立体形状を表す距離画像を生成する手順と、
前記距離画像上における画素と、前記２次元画像上における画素との対応関係を算出する手順と、
前記距離画像上の各画素について外向きの法線ベクトルを算出する手順と、
前記第２の撮像手段から前記距離画像上の各画素を見込む視線ベクトルを算出する手順と、
前記距離画像上の注目画素について、前記法線ベクトルと前記視線ベクトルとの内積が所定のしきい値以上となる場合に、前記注目画素を、前記被写体上において、前記第１の撮像手段からは臨むことができるが前記第２の撮像手段からは臨むことができない隠れ点として検出する手順と、
前記対応関係に基づいて、前記２次元画像を前記距離画像にマッピングしてマッピング画像を生成する手順と、
該マッピング画像上において前記隠れ点をグレーでマッピングするか、または該隠れ点の明度を下げることにより、該隠れ点を視認可能とする手順とをコンピュータに実行させることを特徴とするプログラム。
【請求項８】
測距光を被写体に照射することにより該被写体による前記測距光の反射光を撮像して、前記被写体の立体形状を表す距離画像用のデータを取得する第１の撮像手段と、前記第１の撮像手段とは異なる位置に配置された前記被写体の明暗を表す２次元画像を表す画像データを取得する第２の撮像手段とを備えた立体撮像装置の制御方法をコンピュータに実行させるためのプログラムであって、
前記第１および前記第２の撮像手段の駆動を同期させて前記距離画像用のデータおよび前記２次元画像を表す画像データを取得する手順と、
前記距離画像用のデータに基づいて、前記被写体の立体形状を表す距離画像を生成する手順と、
前記距離画像上における画素と、前記２次元画像上における画素との対応関係を算出する手順と、
前記第２の撮像手段から前記距離画像上の各画素を見込む視線ベクトルを算出する手順と、
前記距離画像上の注目画素について、該距離画像に該注目画素を見込む前記視線ベクトルを投影する手順と、
該距離画像上における前記投影された視線ベクトルに対応する投影線上において、前記視線ベクトルと前記投影線上における投影線対応画素との３次元空間における前記第２の撮像手段からの距離関係を求める手順と、
少なくとも１つの前記投影線対応画素が前記視線ベクトルよりも前記第２の撮像手段側にある場合、前記注目画素を、前記被写体上において、前記第１の撮像手段からは臨むことができるが前記第２の撮像手段からは臨むことができない隠れ点として検出する手順と、
前記対応関係に基づいて、前記２次元画像を前記距離画像にマッピングしてマッピング画像を生成する手順と、
該マッピング画像上において前記隠れ点をグレーでマッピングするか、または該隠れ点の明度を下げることにより、該隠れ点を視認可能とする手順とをコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、被写体の立体形状を表す距離画像、および被写体の明暗および／または色を表す２次元画像を同時に取得する立体撮像装置および立体撮像装置の制御方法並びに立体撮像装置の制御方法をコンピュータに実行させるためのプログラムに関するものである。
【背景技術】
【０００２】
被写体を撮影して画像を取得する撮影装置において、被写体に向けて出射した近赤外線等の測距光が被写体により反射して戻ってくるまでの時間を計測することにより、撮影装置から被写体までの距離を測定して、被写体の立体形状を表す距離画像を作成することが行われている。このように光の反射を用いて被写体までの距離の測定（測距）を行う方式はＴＯＦ（Time Of Flight）方式と称され、ＴＯＦ方式を用いた測距を行うための種々の手法が提案されている（特許文献１〜３参照）。
【０００３】
また、被写体にレーザ光を照射し、レーザ光が発射されてから反射光を検出するまでの飛行時間に基づいて距離画像を、反射光の強度に基づいて可視画像を取得する手法も提案されている（特許文献４参照）。
【０００４】
さらに、ＴＯＦ方式を用いて距離画像を取得するための撮像手段と、被写体の可視画像である２次元画像を取得するための撮像手段とを備え、距離画像に対して２次元画像をマッピングして立体形状モデルを表すマッピング画像を作成する手法も提案されている（特許文献５参照）。特許文献５に記載された手法は、２つの撮像手段の視差を考慮して距離画像上の各画素と２次元画像上の各画素との対応関係を求め、この対応関係に基づいて距離画像に２次元画像をマッピングしているため、被写体上における互いに対応する画素同士を重ねることができ、これにより、ずれを生じさせることなくマッピング画像を作成することができる。
【特許文献１】特表２００３−５１０５６１号公報
【特許文献２】特表２００３−５３２１２２号公報
【特許文献３】特開２００４−２９４４２０号公報
【特許文献４】特開２００３−２８１６８６号公報
【特許文献５】特開２００５−８７４６８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
特許文献５に記載されたように２つの撮像手段を用いて被写体を撮影する場合、２つの撮像手段の位置の違いにより、被写体上において、距離画像取得用の撮像手段からは臨むことができるが、２次元画像取得用の撮像手段からは臨むことができない隠れ点が生じる場合がある。このように隠れ点については、２次元画像を距離画像にマッピングする場合、２次元の濃淡情報（すなわち輝度情報）は存在しないはずである。
【０００６】
しかしながら、特許文献５に記載された手法においては、隠れ点を全く考慮していないため、２次元画像を距離画像にマッピングした際に、実際には対応しない画素の画素値が距離画像上にマッピングされてしまうこととなる。
【０００７】
このため、距離画像を取得する撮像手段の光路上にハーフミラーを配設して反射光を２つに分岐し、距離画像と２次元画像とを同時に取得することが考えられる。しかしながら、これを実現するためには、２つの撮像手段およびハーフミラーの精度良く位置決めして配置する必要があるため、その位置の調整が非常に困難なものとなる。
【０００８】
本発明は上記事情に鑑みなされたものであり、隠れ点を考慮して簡易に精度良くマッピング画像を取得できるようにすることを目的とする。
【課題を解決するための手段】
【０００９】
本発明による立体撮像装置は、測距光を被写体に照射することにより該被写体による前記測距光の反射光を撮像して、前記被写体の立体形状を表す距離画像用のデータを取得する第１の撮像手段と、
前記第１の撮像手段とは異なる位置に配置された前記被写体の明暗を表す２次元画像を表す画像データを取得する第２の撮像手段と、
前記第１および前記第２の撮像手段の駆動を同期させて、前記距離画像用のデータおよび前記２次元画像を表す画像データを前記第１および前記第２の撮像手段に取得させる同期制御手段と、
前記距離画像用のデータに基づいて、前記被写体の立体形状を表す距離画像を生成する距離画像生成手段と、
前記距離画像上における画素と、前記２次元画像上における画素との対応関係を算出する対応関係算出手段と、
前記被写体上において、前記第１の撮像手段からは臨むことができるが前記第２の撮像手段からは臨むことができない隠れ点を検出する隠れ点検出手段と、
前記対応関係に基づいて、前記隠れ点を視認可能に前記２次元画像を前記距離画像にマッピングしてマッピング画像を生成するマッピング手段とを備えたことを特徴とするものである。
【００１０】
なお、本発明による立体撮像装置においては、前記隠れ点検出手段を、前記距離画像上の各画素について外向きの法線ベクトルを算出し、前記第２の撮像手段から前記距離画像上の各画素を見込む視線ベクトルを算出し、前記距離画像上の注目画素について、前記法線ベクトルと前記視線ベクトルとの内積が所定のしきい値以上となる場合に、該注目画素を前記隠れ点として検出する手段としてもよい。
【００１１】
また、本発明による立体撮像装置においては、前記隠れ点検出手段を、前記第２の撮像手段から前記距離画像上の各画素を見込む視線ベクトルを算出し、前記距離画像上の注目画素について、該距離画像に該注目画素を見込む前記視線ベクトルを投影し、該距離画像上における前記投影された視線ベクトルに対応する投影線上において、前記視線ベクトルと前記投影線上における投影線対応画素との距離関係を求め、少なくとも１つの前記投影線対応画素が前記視線ベクトルよりも前記第２の撮像手段側にある場合、前記注目画素を前記隠れ点として検出する手段としてもよい。
【００１２】
また、本発明による立体撮像装置においては、前記第１の撮像手段の動作モードを前記第２の撮像手段と同様の動作モードに変更し、前記第１および前記第２の撮像手段に所定のチャートを撮像させ、該撮像により取得された第１および第２のチャート画像に基づいて、前記第１および前記第２の撮像手段の幾何学的情報を取得するキャリブレーション処理を行うキャリブレーション手段をさらに備えるものとしてもよい。
【００１３】
この場合、前記第１の撮像手段を、前記測距光の波長域の光のみを透過するフィルタを、前記第１の撮像手段の光軸上に出し入れ可能に備えてなるものとし、
前記キャリブレーション手段を、前記第１の撮像手段の動作モードを前記第２の撮像手段と同様の動作モードに変更すると、前記フィルタを前記光軸上から退避させる手段としてもよい。
【００１４】
本発明による立体撮像装置の制御方法は、第１の撮像手段により、測距光を被写体に照射することにより該被写体による前記測距光の反射光を撮像して、前記被写体の立体形状を表す距離画像用のデータを取得し、前記第１の撮像手段とは異なる位置に配置された第２の撮像手段により前記被写体の明暗を表す２次元画像を表す画像データを取得するに際し、前記第１および前記第２の撮像手段の駆動を同期させて前記距離画像用のデータおよび前記２次元画像を表す画像データを取得し、
前記距離画像用のデータに基づいて、前記被写体の立体形状を表す距離画像を生成し、
前記距離画像上における画素と、前記２次元画像上における画素との対応関係を算出し、
前記被写体上において、前記第１の撮像手段からは臨むことができるが前記第２の撮像手段からは臨むことができない隠れ点を検出し、
前記対応関係に基づいて、前記隠れ点を視認可能に前記２次元画像を前記距離画像にマッピングしてマッピング画像を生成することを特徴とするものである。
【００１５】
なお、本発明による立体撮像装置の制御方法をコンピュータに実行させるためのプログラムとして提供してもよい。
【発明の効果】
【００１６】
本発明によれば、第１の撮像手段および第２の撮像手段の駆動が同期されて距離画像用のデータおよび２次元画像を表す画像データが取得され、距離画像用のデータに基づいて被写体の立体形状を表す距離画像が生成される。そして、距離画像上における画素と２次元画像上における画素との対応関係が算出され、被写体上において、第１の撮像手段からは臨むことができるが第２の撮像手段からは臨むことができない隠れ点が検出される。そして、隠れ点が視認可能にマッピング画像が作成される。このため、装置の構成を複雑にすることなく、隠れ点を考慮して精度のよいマッピング画像を作成することができる。
【００１７】
また、距離画像上の各画素について外向きの法線ベクトルを算出し、第２の撮像手段から距離画像上の各画素を見込む視線ベクトルを算出し、距離画像上の注目画素について、法線ベクトルと視線ベクトルとの内積が正の値となる場合に、その注目画素を隠れ点として検出することにより、簡易に隠れ点を検出することができる。
【００１８】
また、第２の撮像手段から距離画像上の各画素を見込む視線ベクトルを算出し、距離画像上の注目画素について、距離画像に注目画素を見込む視線ベクトルを投影し、距離画像上における投影された視線ベクトルに対応する投影線上において、視線ベクトルと投影線上における投影線対応画素との距離関係を求め、少なくとも１つの投影線対応画素が視線ベクトルよりも第２の撮像手段側にある場合、注目画素を隠れ点として検出することにより、演算量は多くなるものの精度良く隠れ点を検出することができる。
【００１９】
また、第１の撮像手段の動作モードを第２の撮像手段と同様の動作モードに変更し、第１および第２の撮像手段に所定のチャートを撮像させ、撮像により取得された第１および第２のチャート画像に基づいて、第１および第２の撮像手段の幾何学的情報を取得するキャリブレーション処理を行うことにより、本発明の立体撮像装置において、第１および第２の撮像手段のキャリブレーションを行うことができる。
【００２０】
ここで、第１の撮像手段は、測距光の波長域の光のみを透過するフィルタを、第１の撮像手段の光軸上に出し入れ可能に備えるものとし、第１の撮像手段の動作モードを第２の撮像手段と同様の動作モードに変更すると、フィルタを光軸上から退避させることにより、第１の撮像手段において、キャリブレーションに必要な画像を容易に取得することができる。
【発明を実施するための最良の形態】
【００２１】
以下、図面を参照して本発明の実施形態について説明する。図１は本発明の実施形態による立体撮像装置の外観構成を示す前面側斜視図、図２はその背面側斜視図である。図１，２に示すように、本実施形態による立体撮像装置１は、その前面側に、第１の撮像部２Ａおよび第２の撮像部２Ｂを備える。第１の撮像部２Ａは距離画像を取得するための撮影を行うものであり、その周囲に被写体に向けて赤外光からなる測距光を照射するための多数のＬＥＤからなるＬＥＤ群３が設けられている。第２の撮像部２Ｂは通常の画像である２次元画像を取得するための撮影を行うものである。
【００２２】
また、立体撮像装置１の上面には、電源スイッチ４、測距／キャリブレーション切り替えスイッチ５および撮影を行うためのレリーズボタン６が設けられている。また、背面には、撮影により取得した２次元画像、マッピング画像および各種表示を行うための液晶等からなるモニタ７およびモニタ７の表示を切り替える表示切り替えスイッチ８が設けられている。
【００２３】
また、背面側から見た右側面には、外部のモニタと接続するための出力端子９、および撮影により取得した画像データを出力したり外部制御入力を行うためのＵＳＢ端子１０が設けられている。
【００２４】
図３は本実施形態による立体撮像装置の内部構成を示す概略ブロック図である。
【００２５】
第１および第２の撮像部２Ａ，２Ｂは、レンズ１０Ａ，１０Ｂ、絞り１１Ａ，１１Ｂ、シャッタ１２Ａ，１２Ｂ、ＣＣＤ１３Ａ，１３Ｂ、アナログフロントエンド（ＡＦＥ）１４Ａ，１４ＢおよびＡ／Ｄ変換部１５Ａ，１５Ｂをそれぞれ備える。
【００２６】
レンズ１０Ａ，１０Ｂは、被写体にピントを合わせるためのフォーカスレンズ、ズーム機能を実現するためのズームレンズ等の複数の機能別レンズにより構成され、不図示のレンズ駆動部によりその位置が調整される。
【００２７】
絞り１１Ａ，１１Ｂは、不図示の絞り駆動部により、ＡＥ処理により得られる絞り値データに基づいて絞り径の調整が行われる。
【００２８】
シャッタ１２Ａ，１２Ｂは、メカニカルシャッタであり、不図示のシャッタ駆動部により、ＡＥ処理により得られるシャッタスピードに応じて駆動される。
【００２９】
ＣＣＤ１３Ａ，１３Ｂは、多数の受光素子を２次元的に配列した光電面を有しており、被写体光がこの光電面に結像して光電変換されてアナログ撮影信号が取得される。また、ＣＣＤ１３Ｂの前面にはＲ，Ｇ，Ｂ各色のフィルタが規則的に配列されたカラーフィルタが配設されている。図４はＣＣＤの構成を示す図である。なお、ＣＣＤ１３Ａ，１３Ｂは同一の構成を有するため、ここではＣＣＤ１３Ａの構成についてのみ説明する。
【００３０】
図４に示すようにＣＣＤ１３Ａは、多数の受光素子４０が２次元的に配列されている。また、ＣＣＤ１３Ａには、各受光素子４０により得られた電気信号を垂直方向の１ライン分転送するための複数の垂直転送ＣＣＤからなる垂直転送路４１、各受光素子４０により得られた電気信号を水平方向の１ライン分転送するための複数の水平転送ＣＣＤからなる水平転送路４２、および信号電荷を読み出すための読出アンプ４３を備える。
【００３１】
各受光素子４０は、光電変換素子４４、主蓄積部４５、主蓄積部ゲート４６、副蓄積部４７、副蓄積部ゲート４８および転送路ゲート４９からなる。
【００３２】
主蓄積部４５は、光電変換素子４４が出力する信号電荷を主蓄積部ゲート４６から取得して一時的に保存するための蓄積部である。主蓄積部４５に蓄積された信号電荷は、不図示のパルス発生器により与えられる転送信号により、転送路ゲート４９を介して垂直転送路４１に転送される。
【００３３】
副蓄積部４７は、不要電荷を副蓄積部ゲート４８から取得して、一時的に保存するための蓄積部である。なお、副蓄積部４７に一時的に蓄積された信号電荷は、ＣＣＤ１３Ａのリセット時にＣＣＤ１３Ａの基板へ捨てられる。
【００３４】
なお、ＣＣＤ１３Ａ，１３Ｂの詳細な駆動については後述する。
【００３５】
ＡＦＥ１４Ａ，１４Ｂは、ＣＣＤ１３Ａ，１３Ｂから出力されるアナログ撮像信号に対して、アナログ信号のノイズを除去する処理、およびアナログ信号のゲインを調節する処理（以下アナログ処理とする）を施す。
【００３６】
Ａ／Ｄ変換部１５Ａ，１５Ｂは、ＡＦＥ１４Ａ，１４Ｂにより処理がなされたアナログ信号をデジタル信号に変換する。なお、撮像部２ＢのＣＣＤ１３Ｂにおいて取得され、デジタル信号に変換された画像データは、画素毎にＲ，Ｇ，Ｂの濃度値を持つデータである。
【００３７】
また、撮像部２Ａは、レンズ１０Ａの前面に可視光を除去し、赤外光の波長域の光を透過するための可視光除去フィルタ１６Ａを備える。可視光除去フィルタ１６Ａは、フィルタ駆動部１７により、撮像部２Ａの光軸上に出し入れ自在に配置されている。そして、立体撮像装置１の動作モードが測距モードに設定された場合には、可視光除去フィルタ１６Ａは光軸上に配置され、キャリブレーションモードに設定された場合には、可視光除去フィルタ１６Ａは光軸上から退避される。
【００３８】
また、撮像部２Ａは、ＬＥＤ群３を変調するための変調部１８を備える。また、ＣＣＤ１３Ａ、ＡＦＥ１４Ａ、フィルタ駆動部１７および変調部１８の駆動を制御するための駆動制御部１９を備える。駆動制御部１９は、後述するように立体撮像装置１の動作モードが測距モードおよびキャリブレーションモードに切り替えられた際に、ＣＣＤ１３Ａ、ＡＦＥ１４Ａ、フィルタ駆動部１７および変調部１８を切り替えられたモードに応じて制御する。
【００３９】
撮像部２Ｂは、レンズ１０Ｂの前面に可視光の波長域の光を透過し、赤外光の波長域の光を除去するための赤外光除去フィルタ１６Ｂを備える。なお、赤外光除去フィルタ１６Ｂは撮像部２Ｂの光軸上に固定されている。
【００４０】
本実施形態による立体撮像装置１は、距離画像および２次元画像を同時に取得するものであるため、同期制御部２０により撮像部２Ａ，２Ｂを同期させて被写体の撮影を行う。
【００４１】
また、立体撮像装置１は、撮影制御部２２、画像処理部２３、圧縮／伸長処理部２４、フレームメモリ２５、メディア制御部２６、内部メモリ２７、および表示制御部２８を備える。
【００４２】
撮影制御部２２は、ＡＦ処理部およびＡＥ処理部からなる。ＡＦ処理部はレンズ１０Ａ，１０Ｂの焦点距離を決定し、その指示を不図示のレンズ駆動部に出力する。ＡＥ処理部は、絞り値とシャッタ速度とを決定し、その指示を不図示の駆動部に出力する。
【００４３】
画像処理部２３は、撮像部２Ｂが取得した２次元画像を表すデジタルの画像データに対して、ホワイトバランスを調整する処理、階調補正、シャープネス補正、および色補正等の画質補正処理、ＣＣＤ−ＲＡＷデータを輝度信号であるＹデータと、青色色差信号であるＣｂデータおよび赤色色差信号であるＣｒデータとからなるＹＣデータに変換するＹＣ処理を行う。
【００４４】
圧縮／伸長処理部２４は、画像処理部２３によって補正・変換処理が行われた２次元画像の画像データおよび後述するように生成されたマッピング画像の画像データに対して、例えば、ＪＰＥＧ等の圧縮形式で圧縮処理を行い、画像ファイルを生成する。この画像ファイルには、Ｅｘｉｆフォーマット等に基づいて、撮影日時等の付帯情報が格納されたタグが付加される。
【００４５】
フレームメモリ２５は、撮像部２Ａが取得した距離画像用のデータ、および撮像部２Ｂが取得した２次元画像を表す画像データに対して、前述の各種画像処理を含む各種処理を行う際に使用する作業用メモリである。
【００４６】
メディア制御部２６は、記録メディア３７にアクセスして２次元画像およびマッピング画像等の画像ファイルの書き込みと読み込みの制御を行う。
【００４７】
内部メモリ２７は、立体撮像装置１において設定される各種定数、およびＣＰＵ３４が実行するプログラム等を格納する。
【００４８】
表示制御部２８は、フレームメモリ２５に格納された画像データをモニタ７に表示させたり、記録メディア３７に記録されている２次元画像およびマッピング画像をモニタ７に表示させたりするためのものである。
【００４９】
また、立体撮像装置１は、距離算出部２９、対応関係算出部３０、隠れ点検出部３１、マッピング部３２、キャリブレーション部３３およびＣＰＵ３４を備える。
【００５０】
距離算出部２９は、撮像部２Ａが取得した距離画像用のデータを用いて被写体上の各点の立体撮像装置１からの距離を算出して距離画像を生成する。距離画像の生成については後述する。
【００５１】
対応関係算出部３０は、距離画像上における各画素および２次元画像上における各画素の対応関係を撮像部２Ａ，２Ｂの視差に基づいて算出する。対応関係の算出については後述する。
【００５２】
隠れ点検出部３１は、被写体上において、撮像部２Ａからは臨むことができるが撮像部２Ｂからは臨むことができない隠れ点を検出する。隠れ点の検出についても後述する。
【００５３】
マッピング部３２は、対応関係算出部３０が算出した対応関係に基づいて、２次元画像を距離画像にマッピングして、立体形状モデルであるマッピング画像を生成する。
【００５４】
キャリブレーション部３３は、立体撮像装置１の動作モードがキャリブレーションモードに設定された場合に、撮像部２Ａおよび撮像部２Ｂの幾何学的情報を取得するキャリブレーション処理を行う。
【００５５】
ＣＰＵ３４は、レリーズボタン６を含む入力部３５からの信号に応じて立体撮像装置１の各部を制御する。
【００５６】
データバス３６は、立体撮像装置１を構成する各部およびＣＰＵ３４に接続されており、立体撮像装置１における各種データおよび各種情報のやり取りを行う。
【００５７】
次いで、本実施形態において行われる処理について説明する。図５は本実施形態において行われる処理を示すフローチャートである。なお、撮像部２Ａ，２Ｂのキャリブレーション処理は終了しており、撮像部２Ａ，２Ｂの幾何学的情報は内部メモリ２７に保存されているものとする。
【００５８】
ユーザが、測距／キャリブレーション切り替えスイッチ５を操作することにより立体撮像装置１の動作モードを測距モードに設定し、レリーズボタン６を操作して撮影の指示を行うことによりＣＰＵ３４が処理を開始し、ＣＰＵ３４からの指示により駆動制御部１９がフィルタ駆動部１７を駆動して、可視光除去フィルタ１６Ａを撮像部２Ａの光軸上に配置する（ステップＳＴ１）。なお、すでに可視光除去フィルタ１６Ａが撮像部２Ａの光軸上に配置されている場合には、ステップＳＴ１の処理は省略される。続いて、ＣＰＵ３４からの指示により同期制御部２０が撮像部２Ａ，２Ｂに同期信号を出力する（ステップＳＴ２）。これにより、撮像部２Ａ，２Ｂが撮影の動作を開始する。
【００５９】
図６は測距モードにおける撮像部２Ａ，２Ｂの動作のタイミングを示す図である。まず、撮像部２Ａの動作について説明する。同期信号が撮像部２Ａに入力されると、ＣＣＤ１３Ａがリセット信号によりリセットされ、変調部１８がＬＥＤ群３の変調発光を行う（ステップＳＴ３）。具体的には、図６に示すように位相が９０度ずつずれたあらかじめ定められた周波数の正弦波変調により、３回の変調発光を行う。なお、図６においてはＬＥＤ群３の変調発光をＬＥＤ発光と示している。ここで、３回の変調発光の期間をそれぞれ期間Ｔ１、期間Ｔ２、期間Ｔ３とする。また、期間Ｔ１，Ｔ２，Ｔ３の開始時にＣＣＤ１３Ａはリセット信号によりリセットされる。
【００６０】
ＬＥＤ群３の発光光は被写体により反射され、反射光が撮像部２Ａにより受光される。なお、立体撮像装置１から被写体までの距離に応じて、ＣＣＤ１３Ａの各受光素子において受光される反射光は発光光と位相差が生じる。なお、ＣＣＤ１３Ａに入射した反射光は、発光光の周期の前半おいてＣＣＤ１３Ａの主蓄積部ゲート４６が開いて主蓄積部４５に、後半においてＣＣＤ１３Ａの副蓄積部ゲート４８が開いて副蓄積部４７にそれぞれ蓄積される。ここで、変調発光の期間の開始時においては、リセット信号により副蓄積部４７に蓄積された信号電荷がＣＣＤ１３Ａの基板（不図示）に捨てられる。
【００６１】
なお、期間Ｔ１においては発光光の正弦波における０〜１８０度（０〜π）の期間の反射光の信号電荷が主蓄積部４５に蓄積され、期間Ｔ２においては発光光の正弦波における９０度〜２７０度（π／２〜３π／２）の期間の反射光の信号電荷が主蓄積部４５に蓄積され、期間Ｔ３においては発光光の正弦波における１８０度〜３６０度（π〜２π）の期間の反射光の信号電荷が主蓄積部４５に蓄積される。
【００６２】
そして、各期間Ｔ１，Ｔ２，Ｔ３において所定回数（図６においては４回、実際には１００〜１０００回）の蓄積後、蓄積された信号電荷が転送信号によりＡＦＥ１４ＡにＣＣＤ転送される。具体的には、主蓄積部４５に蓄積された信号電荷は転送路ゲート４９を介して垂直転送路４１に転送される。次いで、垂直転送路４１に転送された信号電荷が、１画素分ずつ水平転送路４２に転送される。そして、転送された信号電荷が水平転送路４２を介して読出アンプ４３に転送される。そして読出アンプ４３から信号電荷がＡＦＥ１４Ａに転送される。
【００６３】
ＡＦＥ１４Ａに転送された信号電荷はアナログ処理が施され、さらにＡ／Ｄ変換部１５Ａによりデジタルのデータに変換され、フレームメモリ２５に転送される。これにより、フレームメモリ２５には距離画像用のデータが保存される。以上、反射光の受光、転送およびデータのフレームメモリ２５への保存を、距離画像用のデータの生成とする（ステップＳＴ４）。
【００６４】
次に、撮像部２Ｂの動作について説明する。同期信号が撮像部２Ｂに入力されると、ＣＣＤ１３Ｂがリセット信号によりリセットされ、あらかじめ定められた時間の露光を行う。これにより、信号電荷がＣＣＤ１３Ｂの主蓄積部４５に蓄積される。そして、蓄積された信号電荷が転送信号によりＡＦＥ１４ＢにＣＣＤ転送される。
【００６５】
ＡＦＥ１４Ｂに転送された信号電荷はアナログ処理が施され、さらにＡ／Ｄ変換部１５Ｂによりデジタルの画像データに変換され、フレームメモリ２５に転送される。そして、画像データに対して画像処理部２３が必要な画像処理を施す。これにより、フレームメモリ２５には画像処理が施された２次元画像を表す画像データが保存される。以上、反射光の受光、転送および画像データのフレームメモリ２５への保存および画像処理を２次元画像の生成とする（ステップＳＴ５）。
【００６６】
なお、ステップＳＴ４およびステップＳＴ５の処理は並列に行うようにしてもよく、順次行うようにしてもよい。本実施形態においては並列に行うものとする。
【００６７】
ステップＳＴ４に続いて、距離算出部２９が画素毎に立体撮像装置１から被写体までの距離を算出し（ステップＳＴ６）、距離画像を生成する（ステップＳＴ７）。以下、距離の算出および距離画像の生成について説明する。図７は距離の算出および距離画像の生成を説明するための図である。
【００６８】
図７に示すように、ＬＥＤ群３からの発光光は正弦波変調されているため、その強度が曲線Ｋ１に示すように周期的に変化し、これにより、撮像部２ＡのＣＣＤ１３Ａが受光する反射光の光量も曲線Ｋ２に示すように周期的に変化する。また、ＬＥＤ群３からの発光光と、発光光の被写体による反射光とでは、立体撮像装置１から被写体までの距離に応じて位相の遅れ（位相差）がφ［ｒａｄ］が生じる。位相差φは光の飛行時間に相当するため、位相差φを求めることにより立体撮像装置１から被写体までの距離を求めることができる。
【００６９】
ここで、反射光が発光光より位相差φ遅れている場合、立体撮像装置１から被写体までの距離Ｌ［ｍ］は下記の式（１）により表される。
【００７０】
Ｌ＝ｃ・φ／（４πＦ）      （１）
但し、ｃ：光速、Ｆ：変調周波数［Ｈｚ］である。
【００７１】
位相差φは、上述した発光光の期間Ｔ１，Ｔ２，Ｔ３における受光光量を用いて算出することができる。ここで、期間Ｔ１においては発光光の正弦波における０〜１８０度（０〜π）の期間の反射光の信号電荷が、期間Ｔ２においては発光光の正弦波における９０度〜２７０度（π／２〜３π／２）の期間の反射光の信号電荷が、期間Ｔ３においては発光光の正弦波における１８０度〜３６０度（π〜２π）の期間の反射光の信号電荷が、それぞれ所定回数分蓄積されている。このため、各期間の受光光量は、期間Ｔ１，Ｔ２，Ｔ３においてそれぞれ取得した各画素の信号値に対応するものとなる。
【００７２】
ここで、曲線Ｋ１における０〜９０度、９０度〜１８０度、１８０度〜２７０度、２７０度〜３６０度の位相において求めた曲線Ｋ２の受光光量がｘ１，ｘ２，ｘ３，ｘ４であったとする。なお、図７においては説明のため、ＬＥＤ群３の発光光の１周期分においてのみ、期間Ｔ１，Ｔ２，Ｔ３および受光光量ｘ１，ｘ２，ｘ３，ｘ４を示すものとする。また、受光光量ｘ１，ｘ２，ｘ３，ｘ４を求める間に位相差φは変化せず（すなわち、被写体までの距離が変化せず）、かつ被写体の反射率および外光強度にも変化がないものとする。これにより、期間Ｔ１，Ｔ２，Ｔ３における受光光量［Ｔ１］，［Ｔ２］，［Ｔ３］は、受光光の振幅をＡ、外光強度をＢとして下記の式（２）〜（４）により表すことができる。
【００７３】
［Ｔ１］＝ｘ１＋ｘ２＝（２Ａ・ｃｏｓφ＋π・（Ａ＋Ｂ））／２πＦ      （２）
［Ｔ２］＝ｘ２＋ｘ３＝（２Ａ・ｓｉｎφ＋π・（Ａ＋Ｂ））／２πＦ      （３）
［Ｔ３］＝ｘ３＋ｘ４＝（−２Ａ・ｃｏｓφ＋π・（Ａ＋Ｂ））／２πＦ    （４）
これにより、下記の式（５）〜（７）の関係が成立する。
【００７４】
ｘ１−ｘ３＝［Ｔ１］−［Ｔ２］＝−２√２Ａ・ｓｉｎ（φ−π／４）／２πＦ（５）
ｘ２−ｘ４＝［Ｔ２］−［Ｔ３］＝２√２Ａ・ｃｏｓ（φ−π／４）／２πＦ  （６）
−｛（ｘ１−ｘ３）／（ｘ２−ｘ４）｝
＝｛（［Ｔ２］−［Ｔ１］）／（［Ｔ２］−［Ｔ３］）｝
＝ｔａｎ（φ−π／４）        （７）
したがって、位相差φは下記の式（８）により算出することができる。
【００７５】
φ＝ｔａｎ−１｛（［Ｔ２］−［Ｔ１］）／（［Ｔ２］−［Ｔ３］）｝＋π／４（８）
距離算出部２９は、式（１）および式（８）を用いることにより、ＣＣＤ１３Ａの画素毎に立体撮像装置１から被写体までの距離を算出する。そして、算出した距離を用いて被写体の立体形状を表す距離画像を作成する。なお、距離画像の各画素の画素値は、画像上の２次元の位置および距離という３次元の値を有するものとなる。
【００７６】
次いで、対応関係算出部３０が、距離画像上の各画素および２次元画像上の各画素の対応関係を算出する（ステップＳＴ８）。図８は対応関係の算出を説明するための図である。なお、撮像部２Ａ，２Ｂ（ａ）はピンホールカメラモデル（すなわち画像に歪み収差がない）を満たし、各撮像部２Ａ，２Ｂの画像面（すなわちＣＣＤ１３Ａ，１３Ｂの画像面）と、各撮像部２Ａ，２Ｂの焦点Ｏ１，Ｏ２とを結ぶ直線ｓ１，ｓ２が、各撮像部２Ａ，２Ｂの焦点Ｏ１，Ｏ２を結ぶ直線ｓ３と直交し、ＣＣＤ１３Ａ，１３Ｂの画像面の図８におけるｘ方向が直線ｓ３と平行であるものとする。
【００７７】
被写体上の点Ｐ０がＣＣＤ１３Ａの画像面上の点Ｇ１に、ＣＣＤ１３Ｂの画像面上の点Ｇ２にそれぞれ結像しているとすると、２次元画像上における点Ｇ２が距離画像における点Ｇ１に対応することとなる。点Ｇ２と点Ｇ１とのずれ、すなわち視差は、被写体上の点Ｐ０を臨む撮像部２Ａ，２Ｂの位置の相違に基づいて生じる。ここで、ＣＣＤ１３Ｂ上におけるＣＣＤ１３Ａの点Ｇ１に相当する位置を点Ｇ１′とすると、ＣＣＤ１３Ｂの画像面における点Ｇ１′の座標と点Ｇ２の座標との相違が視差Δｘとなる。Δｘは、基線長ｄ、撮像部２Ａ，２Ｂの焦点距離ｆおよび立体撮像装置１から被写体までの距離Ｌを用いて下記の式（９）により算出される。
【００７８】
Δｘ＝ｄ・ｆ／Ｌ      （９）
なお、基線長ｄおよび焦点距離ｆは後述するキャリブレーション処理により算出される。実際には、キャリブレーション処理により撮像部２Ａ，２ＢにおけるＣＣＤ１３Ａ，１３Ｂの歪み、位置および向き等の情報を正確に知ることができるため、これらの情報を用いて２次元画像上における各画素と、距離画像上における各画素との対応関係を求めることができる。
【００７９】
続いて、隠れ点検出部３１が、被写体上において、撮像部２Ａからは臨むことができるが撮像部２Ｂからは臨むことができない隠れ点を距離画像および２次元画像上において検出する（ステップＳＴ９）。
【００８０】
図９は隠れ点を説明するための図である。図９に示すように、被写体Ｈ上の点Ｐ０は、撮像部２Ａから臨むことができるが、撮像部２Ｂからは臨むことができない。このため、撮像部２Ｂが取得した２次元画像上における点Ｐ０に対応する点は、実際には被写体上の点Ｐ１に対応するものとなっている。したがって、後述するように距離画像上に２次元画像をマッピングすると、２次元画像上の点Ｐ１の画素値が距離画像上の点Ｐ０にマッピングされてしまうため、点Ｐ０の画素値が被写体の正しい濃淡を表さないものとなってしまう。
【００８１】
隠れ点検出部３１は、２次元画像上における隠れ点を検出するために、まず距離画像上の各画素における法線ベクトルｎを算出する。図１０は法線ベクトルの算出を説明するための図である。図１０に示すように、法線ベクトルｎを求める注目画素[i,j]の座標をＰｖ[i,j]とすると、法線ベクトルｎは注目画素の周囲の画素の座標を用いて下記の式（１０）により算出することができる。なお、Ｐｖ[i,j]は３次元の座標であるため、法線ベクトルｎは３次元のベクトルとなる。
【００８２】
ｎ＝（Ｐｖ[i+1,j]−Ｐｖ[i-1,j]）×（Ｐｖ[i,j+1]−Ｐｖ[i,j-1]）    （１０）
また、隠れ点検出部３１は、注目画素に対する撮像部２Ｂの視線ベクトルｖを算出する。視線ベクトルｖは、注目画素の座標Ｐｖ[i,j]と、キャリブレーション処理により得られる撮像部２Ｂの焦点座標とから算出することができる。なお、視線ベクトルも３次元のベクトルとなる。
【００８３】
そして、隠れ点検出部３１は、下記の式（１１）により、注目画素における法線ベクトルｎと視線ベクトルｖとの内積ＩＰを算出する。
【００８４】
ＩＰ＝（ｎ・ｖ）／（｜ｎ｜・｜ｖ｜）      （１１）
ここで、内積ＩＰが正の値となる場合、法線ベクトルｎと視線ベクトルｖとのなす角度は９０度未満となるため、法線ベクトルｎは視線ベクトルｖの方向を向いていることとなる。法線ベクトルｎが視線ベクトルｖの方向を向く場合、図９に示すように注目画素Ｐ０は隠れ点となる。一方、内積が負の値となる場合、法線ベクトルｎと視線ベクトルｖとのなす角度は９０度を超えるため、法線ベクトルは視線ベクトルｖとは反対の方向を向いていることとなる。このため、隠れ点検出部３１は、内積ＩＰをあらかじめ定めたしきい値Ｔｈ１（Ｔｈ１≧０、例えばＴｈ１＝０）と比較し、ＩＰ≧Ｔｈ１の場合に注目画素を隠れ点として検出する。
【００８５】
このような手法（第１の手法とする）を用いることにより、高速に隠れ点を検出することができる。しかしながら、第１の手法を用いた場合、図１１に示すように、内積ＩＰが正となる点Ｐ０を隠れ点として検出することができない。
【００８６】
以下、隠れ点の検出のための第２の手法について説明する。まず、隠れ点検出部３１は、２次元画像を取得する撮像部２Ｂの焦点Ｏ２から注目画素である点Ｐ０までの視線ベクトルＯ２Ｐ０を距離画像上に投影する。図１２は距離画像上への視線の投影を説明するための図である。なお、図１２の符号Ｏ２Ｐ０を付与した直線が、視線ベクトルの距離画像上の投影線である。続いて、隠れ点検出部３１は視線ベクトルＯ２Ｐ０の投影線の周囲の距離画像上における画素（図１２における斜線で示す画素、投影線対応画素とする）を抽出する。そして、撮像部２Ｂに近い投影線対応画素（図１２における右側の画素）から順に、視線ベクトルＯ２Ｐ０と投影線対応画素との撮像部２Ｂからの距離関係を求める。具体的には、視線ベクトルＯ２Ｐ０および投影線対応画素のどちらが撮像部２Ｂ側にあるかを判定する。そして、視線ベクトルＯ２Ｐ０よりも撮像部２Ｂ側に投影線対応画素があった場合、注目画素を隠れ点として検出する。
【００８７】
このような第２の手法は正確に隠れ点を検出することができるが、演算に長時間を要するものとなる。このため、精度および演算時間のいずれを重視するかに応じて、第１および第２の手法を切り替えて用いるようにすることが好ましい。
【００８８】
そして、マッピング部３２が、隠れ点を視認可能に２次元画像を距離画像にマッピングして、立体形状モデルであるマッピング画像を生成する（ステップＳＴ１０）。具体的には、対応関係算出部３０が算出した距離画像上の画素と２次元画像上の画素との対応関係に基づいて、距離画像上の各画素に２次元画像の対応する画素の画素値をマッピングすることによりマッピング画像を生成する。なお、この際、隠れ点については、正確な画素値をマッピングすることができないため、図１３に示すようにマッピング画像上における隠れ点をグレーでマッピングする。
【００８９】
なお、図１４に示すように対応関係に基づいてマッピングを行った後、隠れ点については他の部分よりも明度を下げるようにしてもよい。また、図１５に示すようにマッピング画像の背景に２次元画像を配置し、隠れ点については、２次元画像の対応する背景としてマッピングするようにしてもよい。
【００９０】
そして、ＣＰＵ３４は、生成したマッピング画像をモニタ７に表示する（ステップＳＴ１１）。さらに、ユーザによる記録の指示がなされたか否かを判定し（ステップＳＴ１２）、ステップＳＴ１２が否定されると、ステップＳＴ２に戻ってステップＳＴ２以降の処理を繰り返す。ステップＳＴ１２が肯定されると、マッピング画像を記録メディア３７に記録し（ステップＳＴ１３）、処理を終了する。なお、この際、マッピング画像とともに２次元画像を記録メディア３７に記録してもよい。
【００９１】
このように、本実施形態においては、撮像部２Ａ，２Ｂの駆動を同期して距離画像および２次元画像を取得し、距離画像上における画素と２次元画像上における画素との対応関係を算出し、さらに隠れ点を検出し、隠れ点を視認可能にマッピング画像を作成するようにしたものである。このため、装置の構成を複雑にすることなく、隠れ点を考慮して精度のよいマッピング画像を作成することができる。
【００９２】
次いで、キャリブレーション処理について説明する。図１６はキャリブレーション処理のフローチャートである。
【００９３】
ユーザが測距／キャリブレーション切り替えスイッチ５を操作して立体撮像装置１をキャリブレーションモードに設定し、キャリブレーション処理の指示を行うことによりＣＰＵ３４が処理を開始し、ＣＰＵ３４からの指示により駆動制御部１９がフィルタ駆動部１７を駆動して、可視光除去フィルタ１６Ａを撮像部２Ａの光軸上から退避させる（ステップＳＴ２１）。なお、すでに可視光除去フィルタ１６Ａが撮像部２Ａの光軸上から退避されている場合には、ステップＳＴ２１の処理は省略される。続いて、図１７に示すキャリブレーションチャートが立体撮像装置１の撮影範囲に移動され所定位置に配置される（ステップＳＴ２２）。なお、キャリブレーションチャートの移動および／または設置は自動で行ってもよく、手動で行ってもよい。
【００９４】
次いで、ＣＰＵ３４からの指示により同期制御部２０が撮像部２Ａ，２Ｂに同期信号を出力する（ステップＳＴ２３）。これにより、撮像部２Ａ，２Ｂが動作を開始する。
【００９５】
図１８はキャリブレーションモードにおける撮像部２Ａ，２Ｂの動作のタイミングを示す図である。まず、撮像部２Ａの動作について説明する。同期信号が撮像部２Ａに入力されると、ＣＣＤ１３Ａがリセット信号によりリセットされ、あらかじめ定められた時間の露光を行う。これにより、信号電荷がＣＣＤ１３Ａの主蓄積部４５に蓄積される。そして、蓄積された信号電荷が転送信号によりＡＦＥ１４ＡにＣＣＤ転送される。なお、キャリブレーションモードにおいては、撮像部２Ａにおいては、ＬＥＤ群３の発光、副蓄積部への蓄積は行われない
ＡＦＥ１４Ａに転送された信号電荷はアナログ処理が施され、さらにＡ／Ｄ変換部１５Ａによりデジタルの画像データに変換され、フレームメモリ２５に転送される。そして、画像データに対して画像処理部２３が必要な画像処理を施す。これにより、フレームメモリ２５にはキャリブレーションチャートの２次元画像であるチャート画像を表す画像データが保存される。以上、反射光の受光、転送および画像データのフレームメモリ２５への保存および画像処理を、第１のチャート画像の生成とする（ステップＳＴ２４）。なお、撮像部２ＡのＣＣＤ１３Ａにはカラーフィルタは配設されていないため、第１のチャート画像はグレーの画像となる。
【００９６】
次に、撮像部２Ｂの動作について説明する。同期信号が撮像部２Ｂに入力されると、ＣＣＤ１３Ｂがリセット信号によりリセットされ、あらかじめ定められた時間の露光を行う。これにより、信号電荷がＣＣＤ１３Ｂの主蓄積部４５に蓄積される。そして、蓄積された信号電荷が転送信号によりＡＦＥ１４ＢにＣＣＤ転送される。
【００９７】
ＡＦＥ１４Ｂに転送された信号電荷はアナログ処理が施され、さらにＡ／Ｄ変換部１５Ｂによりデジタルの画像データに変換され、フレームメモリ２５に転送される。そして、画像データに対して画像処理部２３が必要な画像処理を施す。これにより、フレームメモリ２５にはキャリブレーションチャートの２次元画像であるチャート画像を表す画像データが保存される。以上、反射光の受光、転送および画像データのフレームメモリ２５への保存および画像処理を、第２のチャート画像の生成とする（ステップＳＴ２５）。
【００９８】
なお、ステップＳＴ２４およびステップＳＴ２５の処理は並列に行うようにしてもよく、順次行うようにしてもよい。本実施形態においては順次行うものとする。
【００９９】
次いで、キャリブレーション部３３が、第１および第２のチャート画像の生成が、必要な回数行われたか否かを判定し（ステップＳＴ２６）、ステップＳＴ２６が否定されるとステップＳＴ２２に戻り、キャリブレーションチャートを移動し、ステップＳＴ２３以降の処理を繰り返す。
【０１００】
ステップＳＴ２６が肯定されると、第１および第２のチャート画像に基づいて、撮像部２Ａ，２Ｂの光学系歪みデータを生成し（ステップＳＴ２７）、さらにステレオキャリブレーションデータを生成する（ステップＳＴ２８）。具体的には、レンズ１０Ａ，１０Ｂ、ＣＣＤ１３Ａ，１３Ｂ等の歪みが光学系歪みデータとして生成され、撮像部２Ａ，２Ｂの基線長、焦点距離および向き等の情報がステレオキャリブレーションデータとして生成される。
【０１０１】
そして、キャリブレーション部３３は生成した光学系歪みデータおよびステレオキャリブレーションデータを内部メモリ２７に保存し（ステップＳＴ２９）、さらに可視光除去フィルタ１６Ａを光軸上に配置し（ステップＳＴ３０）、処理を終了する。
【０１０２】
このように、撮像部２Ａの動作モードを撮像部２Ｂと同様の動作モードに変更し、撮像部２Ａ，２Ｂにキャリブレーションチャートを撮像させ、撮像により取得された第１および第２の２次元画像に基づいてキャリブレーション処理を行うことにより、本実施形態による立体撮像装置１において、撮像部２Ａ，２Ｂのキャリブレーションを行うことができる。
【０１０３】
ここで、撮像部２Ａは、可視光除去フィルタ１６Ａを撮像部２Ａの光軸上に出し入れ可能に備えているため、可視光除去フィルタ１６Ａを光軸上から退避させることにより、撮像部２Ａにおいてキャリブレーションに必要なチャート画像を容易に取得することができる。
【０１０４】
なお、上記実施形態においては、隠れ点の表示の態様は図１３から図１５に示すものに限定されるものではなく、隠れ点であることが視認可能な任意の手法を用いることができる。
【０１０５】
以上、本発明の実施形態に係る立体撮像装置１について説明したが、コンピュータを、上記の距離算出部２９、対応関係算出部３０、隠れ点検出部３１、マッピング部３２、およびキャリブレーション部３３に対応する手段として機能させ、図５および図１６に示すような処理を行わせるプログラムも、本発明の実施形態の１つである。また、そのようなプログラムを記録したコンピュータ読取り可能な記録媒体も、本発明の実施形態の１つである。
【図面の簡単な説明】
【０１０６】
【図１】本発明の実施形態による立体撮像装置の外観構成を示す前面側斜視図
【図２】本発明の実施形態による立体撮像装置の外観構成を示す背面側斜視図
【図３】本実施形態による立体撮像装置の内部構成を示す概略ブロック図
【図４】ＣＣＤの構成を示す図
【図５】本実施形態において行われる処理を示すフローチャート
【図６】測距モードにおける撮像部２Ａ，２Ｂの動作のタイミングを示す図
【図７】距離の算出および距離画像の生成を説明するための図
【図８】対応関係の算出を説明するための図
【図９】隠れ点を説明するための図
【図１０】法線ベクトルの算出を説明するための図
【図１１】第１の手法により隠れ点の検出ができない場合を示す図
【図１２】距離画像上への視線の投影を説明するための図
【図１３】マッピング画像上における隠れ点の表示の態様を示す図（その１）
【図１４】マッピング画像上における隠れ点の表示の態様を示す図（その２）
【図１５】マッピング画像上における隠れ点の表示の態様を示す図（その３）
【図１６】キャリブレーション処理のフローチャート
【図１７】キャリブレーションチャートを示す図
【図１８】キャリブレーションモードにおける撮像部２Ａ，２Ｂの動作のタイミングを示す図
【符号の説明】
【０１０７】
１    立体撮像装置
２Ａ，２Ｂ    撮像部
３    ＬＥＤ群
７    モニタ
１３Ａ，１３Ｂ    ＣＣＤ
１６Ａ    可視光除去フィルタ
１６Ｂ    赤外光除去フィルタ
１７    フィルタ駆動部
１８    変調部
２９    距離算出部
３０    対応関係算出部
３１    隠れ点検出部
３２    マッピング部
３３    キャリブレーション部
３４    ＣＰＵ
【図１】
0005224319.tif 000002
【図２】
0005224319.tif 000003
【図３】
0005224319.tif 000004
【図４】
0005224319.tif 000005
【図５】
0005224319.tif 000006
【図６】
0005224319.tif 000007
【図７】
0005224319.tif 000008
【図８】
0005224319.tif 000009
【図９】
0005224319.tif 000010
【図１０】
0005224319.tif 000011
【図１１】
0005224319.tif 000012
【図１２】
0005224319.tif 000013
【図１６】
0005224319.tif 000014
【図１７】
0005224319.tif 000015
【図１８】
0005224319.tif 000016
【図１３】
0005224319.tif 000017
【図１４】
0005224319.tif 000018
【図１５】
0005224319.tif 000019