(57)【要約】【課題】ステレオマッチングにより距離画像を生成する際に、立体撮像装置から被写体までの距離が大きくても、距離画像を精度良く生成する。【解決手段】第１の距離画像生成部３０において、撮像部２Ａが取得した距離画像用のデータから距離画像Ｄ１を生成する。基線長変更手段３８が、第１の距離画像に基づいて被写体までの距離である被写体距離を算出し、被写体距離が大きいほど撮像部２Ｂ，２Ｃ間の距離である基線長を大きくするよう変更する。基線長の変更後、撮像部２Ｂ，２Ｃが取得した基準画像および参照画像からステレオマッチング部３１が対応点を検出し、第２の距離画像生成部３２が距離画像Ｄ２を生成する。【選択図】図１３
2009047496.tif 000002
【特許請求の範囲】
【請求項１】
測距光を被写体に照射し、該被写体による前記測距光の反射光を撮像して、前記被写体の立体形状を表す距離画像用のデータを取得する第１の撮像手段と、
前記距離画像用のデータに基づいて、前記被写体の立体形状を表す第１の距離画像を生成する第１の距離画像生成手段と、
前記被写体を撮像することにより、第２の距離画像の算出のための該被写体の基準画像を取得する第２の撮像手段と、
前記第２の撮像手段と異なる位置から前記被写体を撮像することにより、前記第２の距離画像の算出のための該被写体の参照画像を取得する少なくとも１つの第３の撮像手段と、
前記基準画像および前記参照画像間における画素の対応点を探索する対応点探索手段と、
該探索した対応点に基づいて前記被写体の立体形状を表す前記第２の距離画像を生成する第２の距離画像生成手段と、
前記第１の距離画像に基づいて前記被写体までの距離である被写体距離を算出し、該被写体距離が大きいほど前記第２の撮像手段および前記第３の撮像手段間の距離である基線長を大きくするよう変更する基線長変更手段とを備え、
前記第２の撮像手段、前記第３の撮像手段、前記対応点探索手段、および前記第２の距離画像生成手段は、前記基線長の変更後に、前記基準画像の取得、前記参照画像の取得、前記対応点の探索、および前記第２の距離画像の生成を行う手段であることを特徴とする立体撮像装置。
【請求項２】
前記基線長変更手段は、前記基線長の変更に伴い、前記基準画像および前記参照画像の少なくとも一方に含まれる前記被写体が、該各画像の周囲近傍の所定領域に含まれることとなる場合には、前記基線長の変更を禁止する手段であることを特徴とする請求項１記載の立体撮像装置。
【請求項３】
前記基線長変更手段は、前記被写体距離が所定距離より大きいか否かを判定し、該判定が肯定された場合に前記基線長を変更する手段であることを特徴とする請求項１または２記載の立体撮像装置。
【請求項４】
測距光を被写体に照射し、該被写体による前記測距光の反射光を撮像して、前記被写体の立体形状を表す距離画像用のデータを取得する第１の撮像手段と、
前記距離画像用のデータに基づいて、前記被写体の立体形状を表す第１の距離画像を生成する第１の距離画像生成手段と、
前記被写体を撮像することにより、第２の距離画像の算出のための該被写体の基準画像を取得する第２の撮像手段と、
前記第２の撮像手段と異なる位置から前記被写体を撮像することにより、前記第２の距離画像の算出のための該被写体の参照画像を取得する少なくとも１つの第３の撮像手段と、
前記基準画像および前記参照画像間における画素の対応点を探索する対応点探索手段と、
該探索した対応点に基づいて前記被写体の立体形状を表す前記第２の距離画像を生成する第２の距離画像生成手段と、
前記第１の距離画像に基づいて前記被写体までの距離である被写体距離を算出し、該被写体距離が大きいほど前記第２の撮像手段および前記第３の撮像手段のズーム倍率を大きくするよう変更するズーム倍率変更手段とを備え、
前記第２の撮像手段、前記第３の撮像手段、前記対応点探索手段、および前記第２の距離画像生成手段は、前記ズーム倍率の変更後に、前記基準画像の取得、前記参照画像の取得、前記対応点の探索、および前記第２の距離画像の生成を行う手段であることを特徴とする立体撮像装置。
【請求項５】
前記ズーム倍率変更手段は、前記ズーム倍率の変更に伴い、前記基準画像および前記参照画像の少なくとも一方に含まれる前記被写体が、該各画像の周囲近傍の所定領域に含まれることとなる場合には、前記ズーム倍率の変更を禁止する手段であることを特徴とする請求項４記載の立体撮像装置。
【請求項６】
前記ズーム倍率変更手段は、前記被写体距離が所定距離より大きいか否かを判定し、該判定が肯定された場合に前記ズーム倍率を変更する手段であることを特徴とする請求項４または５記載の立体撮像装置。
【請求項７】
測距光を被写体に照射し、該被写体による前記測距光の反射光を撮像して、前記被写体の立体形状を表す距離画像用のデータを取得する第１の撮像手段と、
前記距離画像用のデータに基づいて、前記被写体の立体形状を表す第１の距離画像を生成する第１の距離画像生成手段と、
前記被写体を撮像することにより、第２の距離画像の算出のための該被写体の基準画像を取得する第２の撮像手段と、
前記第２の撮像手段と異なる位置から前記被写体を撮像することにより、前記第２の距離画像の算出のための該被写体の参照画像を取得する少なくとも１つの第３の撮像手段と、
前記基準画像および前記参照画像間における画素の対応点を探索する対応点探索手段と、
該探索した対応点に基づいて前記被写体の立体形状を表す前記第２の距離画像を生成する第２の距離画像生成手段とを備えた立体撮像装置の制御方法であって、
前記第１の距離画像に基づいて前記被写体までの距離である被写体距離を算出し、
該被写体距離が大きいほど前記第２の撮像手段および前記第３の撮像手段間の距離である基線長を大きくするよう変更し、
前記基線長の変更後に、前記基準画像の取得、前記参照画像の取得、前記対応点の探索、および前記第２の距離画像の生成を行うことを特徴とする立体撮像装置の制御方法。
【請求項８】
測距光を被写体に照射し、該被写体による前記測距光の反射光を撮像して、前記被写体の立体形状を表す距離画像用のデータを取得する第１の撮像手段と、
前記距離画像用のデータに基づいて、前記被写体の立体形状を表す第１の距離画像を生成する第１の距離画像生成手段と、
前記被写体を撮像することにより、第２の距離画像の算出のための該被写体の基準画像を取得する第２の撮像手段と、
前記第２の撮像手段と異なる位置から前記被写体を撮像することにより、前記第２の距離画像の算出のための該被写体の参照画像を取得する少なくとも１つの第３の撮像手段と、
前記基準画像および前記参照画像間における画素の対応点を探索する対応点探索手段と、
該探索した対応点に基づいて前記被写体の立体形状を表す前記第２の距離画像を生成する第２の距離画像生成手段とを備えた立体撮像装置の制御方法であって、
前記第１の距離画像に基づいて前記被写体までの距離である被写体距離を算出し、
該被写体距離が大きいほど前記第２の撮像手段および前記第３の撮像手段のズーム倍率を大きくするよう変更し、
前記ズーム倍率の変更後に、前記基準画像の取得、前記参照画像の取得、前記対応点の探索、および前記第２の距離画像の生成を行うことを特徴とする立体撮像装置の制御方法。
【請求項９】
測距光を被写体に照射し、該被写体による前記測距光の反射光を撮像して、前記被写体の立体形状を表す距離画像用のデータを取得する第１の撮像手段と、
前記距離画像用のデータに基づいて、前記被写体の立体形状を表す第１の距離画像を生成する第１の距離画像生成手段と、
前記被写体を撮像することにより、第２の距離画像の算出のための該被写体の基準画像を取得する第２の撮像手段と、
前記第２の撮像手段と異なる位置から前記被写体を撮像することにより、前記第２の距離画像の算出のための該被写体の参照画像を取得する少なくとも１つの第３の撮像手段と、
前記基準画像および前記参照画像間における画素の対応点を探索する対応点探索手段と、
該探索した対応点に基づいて前記被写体の立体形状を表す前記第２の距離画像を生成する第２の距離画像生成手段とを備えた立体撮像装置の制御方法をコンピュータに実行させるためのプログラムであって、
前記第１の距離画像に基づいて前記被写体までの距離である被写体距離を算出する手順と、
該被写体距離が大きいほど前記第２の撮像手段および前記第３の撮像手段間の距離である基線長を大きくするよう変更する手順と、
前記基線長の変更後に、前記基準画像の取得、前記参照画像の取得、前記対応点の探索、および前記第２の距離画像の生成を行う手順とを有することを特徴とするプログラム。
【請求項１０】
測距光を被写体に照射し、該被写体による前記測距光の反射光を撮像して、前記被写体の立体形状を表す距離画像用のデータを取得する第１の撮像手段と、
前記距離画像用のデータに基づいて、前記被写体の立体形状を表す第１の距離画像を生成する第１の距離画像生成手段と、
前記被写体を撮像することにより、第２の距離画像の算出のための該被写体の基準画像を取得する第２の撮像手段と、
前記第２の撮像手段と異なる位置から前記被写体を撮像することにより、前記第２の距離画像の算出のための該被写体の参照画像を取得する少なくとも１つの第３の撮像手段と、
前記基準画像および前記参照画像間における画素の対応点を探索する対応点探索手段と、
該探索した対応点に基づいて前記被写体の立体形状を表す前記第２の距離画像を生成する第２の距離画像生成手段とを備えた立体撮像装置の制御方法をコンピュータに実行させるためのプログラムであって、
前記第１の距離画像に基づいて前記被写体までの距離である被写体距離を算出する手順と、
該被写体距離が大きいほど前記第２の撮像手段および前記第３の撮像手段のズーム倍率を大きくするよう変更する手順と、
前記ズーム倍率の変更後に、前記基準画像の取得、前記参照画像の取得、前記対応点の探索、および前記第２の距離画像の生成を行う手順とを有することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、被写体の立体形状を表す距離画像を取得する立体撮像装置および立体撮像装置の制御方法並びに立体撮像装置の制御方法をコンピュータに実行させるためのプログラムに関するものである。
【背景技術】
【０００２】
被写体を撮像して画像を取得する撮像装置において、被写体に向けて出射した近赤外線等の測距光が被写体により反射して戻ってくるまでの時間を計測することにより、撮像装置から被写体までの距離を測定して、被写体の立体形状を表す距離画像を生成することが行われている。このように光の反射を用いて被写体までの距離の測定（測距）を行う方式はＴＯＦ（Time Of Flight）方式と称され、ＴＯＦ方式を用いた測距を行うための種々の手法が提案されている。
【０００３】
また、異なる位置に設けられた少なくとも２台以上のカメラを用いて被写体を撮像し、これにより取得された複数の画像（基準カメラによる基準画像および参照カメラによる参照画像）の間で対応する画素を探索し（ステレオマッチング）、互いに対応する基準画像上の画素と、参照画像上の画素との位置の差（視差）に三角測量の原理を適用することにより、基準カメラまたは参照カメラから当該画素に対応する被写体上の点までの距離を計測して、被写体の立体形状を表す距離画像を生成する手法も提案されている。
【０００４】
ここで、ステレオマッチングを行う際には、図７に示すように、基準画像Ｇ１上のある点Ｐａに写像される実空間上の点は、点Ｐ１，Ｐ２，Ｐ３というように点Ｏ２からの視線上に複数存在するため、実空間上の点Ｐ1 ，Ｐ２ ，Ｐ３ 等の写像である直線（エピポーラ線）上に、点Ｐａに対応する参照画像Ｇ２上の点Ｐａ′が存在することに基づいて対応点が探索される。なお、図７において点Ｏ２は基準カメラの視点、点Ｏ３は参照カメラの視点である。このようにステレオマッチングを行う際には、エピポーラ線上のすべての画素について対応点を求める必要があるため、対応点の探索に長時間を要するものとなっている。
【０００５】
このため、２台のカメラ（ステレオカメラとする）にこれらと別の位置に配置されたもう１台のカメラを追加し、追加したカメラにより取得した画像から被写体のシルエットを作成し、ステレオカメラにおいて取得した画像から特徴点を検出し、被写体のシルエットの範囲においてのみ、特徴点に基づいて対応点の探索を行うことにより、対応点の探索時間を短縮する手法が提案されている（特許文献１参照）。
【０００６】
また、ステレオカメラおよびミリ波レーダを使用し、ミリ波レーダにより障害物が検出され、ステレオカメラにより取得した画像に障害物が検出されない場合、ミリ波レーダによる検出結果に基づいて、ステレオカメラにより取得した画像における対応点の探索範囲を限定することにより、障害物の検出精度の向上および対応点の探索時間を短縮する手法が提案されている（特許文献２参照）。
【０００７】
また、赤外カメラではあるが、一方のステレオカメラにより取得した第１の画像から被写体の領域を抽出し、抽出した領域と他方のステレオカメラにより取得した第２の画像との相関値に基づいて、第２の画像から被写体領域を抽出し、被写体領域の範囲において対応点を探索して被写体までの距離を算出して距離画像を生成する際に、算出した距離に応じて探索範囲を狭くすることにより、対応点の誤対応を防止する手法も提案されている（特許文献３参照）。
【特許文献１】特開２０００−３３１１６０号公報
【特許文献２】特開２００６−２３４５１３号公報
【特許文献３】特開２００３−３２２５２１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
ところで、ステレオマッチングにより距離画像を生成する際に被写体が立体撮像装置から離れていると、対応点の探索を精度良く行うことができず、その結果、距離画像を精度良く生成することができない。
【０００９】
本発明は上記事情に鑑みなされたものであり、ステレオマッチングにより距離画像を生成する際に、立体撮像装置から被写体までの距離が大きくても、距離画像を精度良く生成することを目的とする。
【課題を解決するための手段】
【００１０】
本発明による第１の立体撮像装置は、測距光を被写体に照射し、該被写体による前記測距光の反射光を撮像して、前記被写体の立体形状を表す距離画像用のデータを取得する第１の撮像手段と、
前記距離画像用のデータに基づいて、前記被写体の立体形状を表す第１の距離画像を生成する第１の距離画像生成手段と、
前記被写体を撮像することにより、第２の距離画像の算出のための該被写体の基準画像を取得する第２の撮像手段と、
前記第２の撮像手段と異なる位置から前記被写体を撮像することにより、前記第２の距離画像の算出のための該被写体の参照画像を取得する少なくとも１つの第３の撮像手段と、
前記基準画像および前記参照画像間における画素の対応点を探索する対応点探索手段と、
該探索した対応点に基づいて前記被写体の立体形状を表す前記第２の距離画像を生成する第２の距離画像生成手段と、
前記第１の距離画像に基づいて前記被写体までの距離である被写体距離を算出し、該被写体距離が大きいほど前記第２の撮像手段および前記第３の撮像手段間の距離である基線長を大きくするよう変更する基線長変更手段とを備え、
前記第２の撮像手段、前記第３の撮像手段、前記対応点探索手段、および前記第２の距離画像生成手段は、前記基線長の変更後に、前記基準画像の取得、前記参照画像の取得、前記対応点の探索、および前記第２の距離画像の生成を行う手段であることを特徴とするものである。
【００１１】
なお、本発明による第１の立体撮像装置においては、前記基線長変更手段を、前記基線長の変更に伴い、前記基準画像および前記参照画像の少なくとも一方に含まれる前記被写体が、該各画像の周囲近傍の所定領域に含まれることとなる場合には、前記基線長の変更を禁止する手段としてもよい。
【００１２】
また、本発明による第１の立体撮像装置においては、前記基線長変更手段を、前記被写体距離が所定距離より大きいか否かを判定し、該判定が肯定された場合に前記基線長を変更する手段としてもよい。
【００１３】
本発明による第２の立体撮像装置は、測距光を被写体に照射し、該被写体による前記測距光の反射光を撮像して、前記被写体の立体形状を表す距離画像用のデータを取得する第１の撮像手段と、
前記距離画像用のデータに基づいて、前記被写体の立体形状を表す第１の距離画像を生成する第１の距離画像生成手段と、
前記被写体を撮像することにより、第２の距離画像の算出のための該被写体の基準画像を取得する第２の撮像手段と、
前記第２の撮像手段と異なる位置から前記被写体を撮像することにより、前記第２の距離画像の算出のための該被写体の参照画像を取得する少なくとも１つの第３の撮像手段と、
前記基準画像および前記参照画像間における画素の対応点を探索する対応点探索手段と、
該探索した対応点に基づいて前記被写体の立体形状を表す前記第２の距離画像を生成する第２の距離画像生成手段と、
前記第１の距離画像に基づいて前記被写体までの距離である被写体距離を算出し、該被写体距離が大きいほど前記第２の撮像手段および前記第３の撮像手段のズーム倍率を大きくするよう変更するズーム倍率変更手段とを備え、
前記第２の撮像手段、前記第３の撮像手段、前記対応点探索手段、および前記第２の距離画像生成手段は、前記ズーム倍率の変更後に、前記基準画像の取得、前記参照画像の取得、前記対応点の探索、および前記第２の距離画像の生成を行う手段であることを特徴とするものである。
【００１４】
なお、本発明による第２の立体撮像装置においては、前記ズーム倍率変更手段を、前記ズーム倍率の変更に伴い、前記基準画像および前記参照画像の少なくとも一方に含まれる前記被写体が、該各画像の周囲近傍の所定領域に含まれることとなる場合には、前記ズーム倍率の変更を禁止する手段としてもよい。
【００１５】
また、本発明による第２の立体撮像装置においては、前記ズーム倍率変更手段を、前記被写体距離が所定距離より大きいか否かを判定し、該判定が肯定された場合に前記ズーム倍率を変更する手段としてもよい。
【００１６】
本発明による第１の立体撮像装置の制御方法は、測距光を被写体に照射し、該被写体による前記測距光の反射光を撮像して、前記被写体の立体形状を表す距離画像用のデータを取得する第１の撮像手段と、
前記距離画像用のデータに基づいて、前記被写体の立体形状を表す第１の距離画像を生成する第１の距離画像生成手段と、
前記被写体を撮像することにより、第２の距離画像の算出のための該被写体の基準画像を取得する第２の撮像手段と、
前記第２の撮像手段と異なる位置から前記被写体を撮像することにより、前記第２の距離画像の算出のための該被写体の参照画像を取得する少なくとも１つの第３の撮像手段と、
前記基準画像および前記参照画像間における画素の対応点を探索する対応点探索手段と、
該探索した対応点に基づいて前記被写体の立体形状を表す前記第２の距離画像を生成する第２の距離画像生成手段とを備えた立体撮像装置の制御方法であって、
前記第１の距離画像に基づいて前記被写体までの距離である被写体距離を算出し、
該被写体距離が大きいほど前記第２の撮像手段および前記第３の撮像手段間の距離である基線長を大きくするよう変更し、
前記基線長の変更後に、前記基準画像の取得、前記参照画像の取得、前記対応点の探索、および前記第２の距離画像の生成を行うことを特徴とするものである。
【００１７】
本発明による第２の立体撮像装置の制御方法は、測距光を被写体に照射し、該被写体による前記測距光の反射光を撮像して、前記被写体の立体形状を表す距離画像用のデータを取得する第１の撮像手段と、
前記距離画像用のデータに基づいて、前記被写体の立体形状を表す第１の距離画像を生成する第１の距離画像生成手段と、
前記被写体を撮像することにより、第２の距離画像の算出のための該被写体の基準画像を取得する第２の撮像手段と、
前記第２の撮像手段と異なる位置から前記被写体を撮像することにより、前記第２の距離画像の算出のための該被写体の参照画像を取得する少なくとも１つの第３の撮像手段と、
前記基準画像および前記参照画像間における画素の対応点を探索する対応点探索手段と、
該探索した対応点に基づいて前記被写体の立体形状を表す前記第２の距離画像を生成する第２の距離画像生成手段とを備えた立体撮像装置の制御方法であって、
前記第１の距離画像に基づいて前記被写体までの距離である被写体距離を算出し、
該被写体距離が大きいほど前記第２の撮像手段および前記第３の撮像手段のズーム倍率を大きくするよう変更し、
前記ズーム倍率の変更後に、前記基準画像の取得、前記参照画像の取得、前記対応点の探索、および前記第２の距離画像の生成を行うことを特徴とするものである。
【００１８】
なお、本発明による第１および第２の立体撮像装置の制御方法をコンピュータに実行させるためのプログラムとして提供してもよい。
【発明の効果】
【００１９】
本発明の第１の立体撮像装置およびその制御方法によれば、第１の距離画像から被写体距離を算出し、被写体距離が大きいほど第２の撮像手段および第３の撮像手段間の距離である基線長を大きくするよう変更するようにしたものである。ここで、基線長を大きくすると、立体撮像装置から離れた位置にある被写体についての距離算出の精度を向上させることができる。このため、基準画像および参照画像を用いての第２の距離画像の生成の精度を向上させることができる。
【００２０】
なお、基線長を変更することにより、基準画像および参照画像内において被写体の位置が移動するが、画像はその端に近いほど歪みが大きくなる。このため、基準画像および参照画像の少なくとも一方に含まれる被写体が、各画像の周囲近傍の所定領域に含まれることとなる場合には基線長の変更を禁止することにより、画像に含まれる被写体が歪むことを防止でき、その結果、より精度良く第２の距離画像を生成することができる。
【００２１】
また、被写体距離が所定距離より大きいか否かを判定し、この判定が肯定された場合にのみ基線長を変更することにより、基線長を無駄に変更してしまうことを防止できる。
【００２２】
本発明の第２の立体撮像装置およびその制御方法によれば、第１の距離画像から被写体距離を算出し、被写体距離が大きいほど第２の撮像手段および第３の撮像手段間のズーム倍率を大きくするよう変更するようにしたものである。ここで、ズーム倍率を大きくすると、立体撮像装置から離れた位置にある被写体についての、距離算出の精度を向上させることができる。このため、基準画像および参照画像を用いての第２の距離画像の生成の精度を向上させることができる。
【００２３】
なお、ズーム倍率を変更することにより、基準画像および参照画像内において被写体の位置が移動するが、画像はその端に近いほど歪みが大きくなる。このため、基準画像および参照画像の少なくとも一方に含まれる被写体が、各画像の周囲近傍の所定領域に含まれることとなる場合にはズーム倍率の変更を禁止することにより、画像に含まれる被写体が歪むことを防止でき、その結果、より精度良く第２の距離画像を生成することができる。
【００２４】
また、被写体の距離が所定距離より大きいか否かを判定し、この判定が肯定された場合にのみズーム倍率を変更することにより、ズーム倍率を無駄に変更してしまうことを防止できる。
【発明を実施するための最良の形態】
【００２５】
以下、図面を参照して本発明の実施形態について説明する。図１は本発明の第１の実施形態による立体撮像装置の外観構成を示す前面側斜視図、図２はその背面側斜視図である。図１，２に示すように、第１の実施形態による立体撮像装置１は、その前面側に、第１から第３の撮像部２Ａ，２Ｂ，２Ｃを備える。第１の撮像部２Ａは立体撮像装置１の前面の略中央位置に配設されており、測距光を被写体に照射することに基づいて第１の距離画像Ｄ１を取得するための撮像を行うものである。また、第１の撮像部２Ａの上下の位置には、被写体に向けて赤外光からなる測距光を照射するためのＬＥＤ等の測距光照射部３が設けられている。
【００２６】
第２および第３の撮像部２Ｂ，２Ｃは、第１の撮像部２Ａの左右の位置に配設されており、ステレオマッチングを行って第２の距離画像Ｄ２を生成するために必要な基準画像Ｇ１および参照画像Ｇ２を取得するための撮像を行うものである。
【００２７】
また、立体撮像装置１の上面には、撮像を行うためのレリーズボタン４が設けられている。また、背面には、撮像により取得した画像を含む各種表示を行うモニタ５が設けられている。
【００２８】
このような立体撮像装置１により被写体を撮像する場合、撮像部２Ａ，２Ｂ，２Ｃによる撮像範囲は図３に示すものとなる。なお、図３において、点Ｏ１〜Ｏ３はそれぞれ撮像部２Ａ，２Ｂ，２Ｃの視点である。また、撮像部２Ｂの光軸をｚ軸、紙面の上下方向をｘ軸、垂直方向をｙ軸としている。なお、Ｈは被写体である。
【００２９】
図４は第１の撮像部２Ａ、図５は第２および第３の撮像部２Ｂ，２Ｃの内部構成を示す概略ブロック図である。
【００３０】
第１から第３の撮像部２Ａ，２Ｂ，２Ｃは、レンズ１０Ａ，１０Ｂ，１０Ｃ、絞り１１Ａ，１１Ｂ，１１Ｃ、シャッタ１２Ａ，１２Ｂ，１２Ｃ、ＣＣＤ１３Ａ，１３Ｂ，１３Ｃ、アナログフロントエンド（ＡＦＥ）１４Ａ，１４Ｂ，１４ＣおよびＡ／Ｄ変換部１５Ａ，１５Ｂ，１５Ｃをそれぞれ備える。
【００３１】
レンズ１０Ａ，１０Ｂ，１０Ｃは、被写体にピントを合わせるためのフォーカスレンズ、ズーム機能を実現するためのズームレンズ等の複数の機能別レンズにより構成され、不図示のレンズ駆動部によりその位置が調整される。
【００３２】
絞り１１Ａ，１１Ｂ，１１Ｃは、不図示の絞り駆動部により、ＡＥ処理により得られる絞り値データに基づいて絞り径の調整が行われる。
【００３３】
シャッタ１２Ａ，１２Ｂ，１２Ｃはメカニカルシャッタであり、不図示のシャッタ駆動部により、ＡＥ処理により得られるシャッタスピードに応じて駆動される。
【００３４】
ＣＣＤ１３Ａ，１３Ｂ，１３Ｃは、多数の受光素子を２次元的に配列した光電面を有しており、被写体光がこの光電面に結像して光電変換されてアナログ撮像信号が取得される。また、ＣＣＤ１３Ｂ，１３Ｃの前面にはＲ，Ｇ，Ｂ各色のフィルタが規則的に配列されたカラーフィルタが配設されている。
【００３５】
ＡＦＥ１４Ａ，１４Ｂ，１４Ｃは、ＣＣＤ１３Ａ，１３Ｂ，１３Ｃから出力されるアナログ撮像信号に対して、アナログ撮像信号のノイズを除去する処理、およびアナログ撮像信号のゲインを調節する処理（以下アナログ処理とする）を施す。
【００３６】
Ａ／Ｄ変換部１５Ａ，１５Ｂ，１５Ｃは、ＡＦＥ１４Ａ，１４Ｂ，１４Ｃによりアナログ処理が施されたアナログ撮像信号をデジタル信号に変換する。なお、撮像部２Ｂ，２ＣのＣＣＤ１３Ｂ，１３Ｃにおいて取得され、デジタル信号に変換されることにより得られる画像データは、画素毎にＲ，Ｇ，Ｂの濃度値を持つデータである。なお、撮像部２Ｂにより取得される画像データにより表される画像が基準画像Ｇ１であり、撮像部２Ｃにより取得される画像データにより表される画像が参照画像Ｇ２である。
【００３７】
また、撮像部２Ａは、測距光照射部３が発光する測距光を変調するための変調部１８を備える。また、ＣＣＤ１３Ａ、ＡＦＥ１４Ａおよび変調部１８の駆動を制御するための駆動制御部１９を備える。具体的には、駆動制御部１９は、ＣＰＵ３３からの指示により、変調部１８に変調の指示を行って測距光照射部３を変調発光させ、これとタイミングを合わせて撮像部２Ａの各部を駆動して、距離画像用のデータを取得させる。
【００３８】
図６は第１の実施形態による立体撮像装置１の内部構成を示す概略ブロック図である。立体撮像装置１は、撮像制御部２２、画像処理部２３、圧縮／伸長処理部２４、フレームメモリ２５、メディア制御部２６、内部メモリ２７、および表示制御部２８を備える。
【００３９】
撮像制御部２２は、ＡＦ処理部およびＡＥ処理部からなる。ＡＦ処理部はレリーズボタン４の半押し操作により撮像部２Ｂ，２Ｃが取得した画像（プレ基準画像、プレ参照画像）に基づいてレンズ１０Ａ，１０Ｂ，１０Ｃの焦点距離を決定し、撮像部２Ａ，２Ｂ，２Ｃに出力する。ＡＥ処理部は、プレ画像に基づいて絞り値とシャッタ速度とを決定し、撮像部２Ａ，２Ｂ，２Ｃに出力する。
【００４０】
画像処理部２３は、撮像部２Ｂ，２Ｃが取得したデジタルの画像データに対して、ホワイトバランスを調整する処理、階調補正、シャープネス補正、および色補正等の画像処理を施す。なお、画像処理部２３における処理後の基準画像および参照画像についても、処理前の参照符号Ｇ１，Ｇ２を用いるものとする。
【００４１】
圧縮／伸長処理部２４は、画像処理部２３によって画像処理が施された基準画像Ｇ１および参照画像Ｇ２を表す画像データ並びに後述するように生成された距離画像の画像データに対して、例えば、ＪＰＥＧ等の圧縮形式で圧縮処理を行い、画像ファイルを生成する。この画像ファイルには、Ｅｘｉｆフォーマット等に基づいて、撮影日時等の付帯情報が格納されたタグが付加される。
【００４２】
フレームメモリ２５は、撮像部２Ａが取得した距離画像用のデータ、および撮像部２Ｂ，２Ｃが取得した基準画像Ｇ１および参照画像Ｇ２を表す画像データに対して、前述の画像処理を含む各種処理を行う際に使用する作業用メモリである。
【００４３】
メディア制御部２６は、記録メディア２９にアクセスして距離画像等の画像ファイルの書き込みと読み込みの制御を行う。
【００４４】
内部メモリ２７は、立体撮像装置１において設定される各種定数、およびＣＰＵ３３が実行するプログラム等を記憶する。
【００４５】
表示制御部２８は、フレームメモリ２５に格納された画像データをモニタ５に表示させたり、記録メディア２９に記録されている画像をモニタ５に表示させたりするためのものである。
【００４６】
また、立体撮像装置１は、第１の距離画像生成部３０、ステレオマッチング部３１、第２の距離画像生成部３２、およびＣＰＵ３３を備える。
【００４７】
第１の距離画像生成部３０は、撮像部２Ａが取得した距離画像用のデータを用いて被写体上の各点の立体撮像装置１からの距離を算出して距離画像を生成する。具体的には、被写体により反射された測距光の反射光を撮像することにより得られた距離画像用のデータから、測距光照射部３の発光光と反射光との位相差を算出し、この位相差に基づいて撮像部２Ａから被写体までの距離を算出する。そして算出された距離をＣＣＤ１３Ａの各画素と対応づけて第１の距離画像Ｄ１を生成する。なお、第１の距離画像Ｄ１の各画素の画素値が撮像部２Ａから被写体までの距離を表すものとなる。
【００４８】
ステレオマッチング部３１は、図７に示すように、基準画像Ｇ１上のある点Ｐａに写像される実空間上の点は、点Ｐ１，Ｐ２，Ｐ３というように点Ｏ２からの視線上に複数存在するため、実空間上の点Ｐ1 ，Ｐ２ ，Ｐ３ 等の写像である直線（エピポーラ線）上に、点Ｐａに対応する参照画像Ｒ上の点Ｐａ′が存在するということに基づいて、基準画像Ｇ１と参照画像Ｇ２との対応点を参照画像Ｇ２上において探索する。なお、図７において点Ｏ２は基準カメラとなる撮像部２Ｂの視点、点Ｏ３は参照カメラとなる撮像部２Ｃの視点である。ここで、視点とはＣＣＤの中心である。
【００４９】
また、ステレオマッチング部３１は、対応点の探索を行う際に、基準画像Ｇ１および参照画像Ｇ２において、距離画像Ｄ１上においてあらかじめ定められた距離を基準とした所定の距離範囲内にある領域を、対応点の探索範囲に設定する。以下、対応点の探索範囲の設定について詳細に説明する。
【００５０】
図８は撮像部２Ｂ，２Ｃの関係を説明するための図である。なお、ここでは、撮像部２Ｂ，２Ｃの光軸と基準画像Ｇ１および参照画像Ｇ２が得られる面となる画像面との交点である視点Ｏ２，Ｏ３を原点とし、画像面上における撮像部２Ｂ，２Ｃの座標系をそれぞれ（ｕ，ｖ）、（ｕ′，ｖ′）とする。また、撮像部２Ｂ，２Ｃの光軸は平行であり、画像面におけるｕ軸およびｕ′軸が同一直線上において同一方向を向いているものとする。また、撮像部２Ｂ，２Ｃの焦点距離をｆ、基線長をｂとする。なお、焦点距離ｆおよび基線長ｂはキャリブレーションパラメータとしてあらかじめ算出されて内部メモリ２７に記憶されている。
【００５１】
このとき、３次元空間上における位置（Ｘ，Ｙ，Ｚ）は、撮像部２Ｂの座標系を基準とすると、下記の式（１）〜（３）により表される。
【００５２】
Ｘ＝ｂ・ｕ／（ｕ−ｕ′）      （１）
Ｙ＝ｂ・ｖ／（ｕ−ｕ′）      （２）
Ｚ＝ｂ・ｆ／（ｕ−ｕ′）      （３）
ここでｕ−ｕ′は、撮像部２Ｂ，２Ｃの画像面上における投影点の横方向のずれ量（視差）である。また、式（３）より、奥行きである距離Ｚは視差に反比例することが分かる。
【００５３】
図９は探索範囲の設定を説明するための図である。ここで、距離画像Ｄ１上においてあらかじめ定められた距離をＬａとし、距離Ｌａを基準とした所定の距離範囲をＬ０〜Ｌ１とする。具体的には、例えば距離範囲Ｌ０〜Ｌ１は、距離Ｌａを基準とした前後１０ｃｍ程度の値を用いることができる。なお、あらかじめ定められた距離Ｌａは、ユーザがあらかじめ設定した値であってもよく、距離画像Ｄ１の全体または中央部分の領域における距離の平均値等の代表値を用いてもよい。
【００５４】
ここで、撮像部２Ｂの画面上における対応点探索の対象となる対象点Ｐｔの座標のｕ軸方向の値がｕｔであったとすると、撮像部２Ｃの画像面上における対象点Ｐｔの対応点Ｐ１は、ｕ′軸上にあることとなる。本実施形態においては、距離Ｌａを基準とした距離範囲Ｌ０〜Ｌ１において対応点を探索する。このため、距離Ｌ０，Ｌ１に対応する撮像部２Ｃの画像面におけるｕ′座標ｕ０，ｕ１をそれぞれ求める。すなわち、上記式（３）より、
Ｌ０＝ｂ・ｆ／（ｕｔ−ｕ０）      （４）
Ｌ１＝ｂ・ｆ／（ｕｔ−ｕ１）      （５）
であるため、
ｕ０＝−ｂ．ｆ／Ｌ０＋ｕｔ      （６）
ｕ１＝−ｂ．ｆ／Ｌ１＋ｕｔ      （７）
として座標ｕ０，ｕ１を求めることができる。したがって、ステレオマッチング部３１は、参照画像Ｇ２上において、式（６）、（７）により算出したｕ０〜ｕ１の範囲を対応点の探索範囲に設定する。
【００５５】
第２の距離画像生成部３２は、ステレオマッチング部３１が求めた対応点を用いて、上記式（１）〜（３）により、撮像部２Ｂ，２Ｃから被写体までの距離を算出し、算出された距離をＣＣＤ１３Ｂ，１３Ｃの各画素と対応づけて第２の距離画像Ｄ２を生成する。なお、第２の距離画像Ｄ２の各画素の画素値が撮像部２Ｂ，２Ｃから被写体までの距離を表すものとなる。生成された距離画像Ｄ２は記録メディア２９に記録される。
【００５６】
なお、距離画像Ｄ２を生成する際に参照画像Ｇ２上において対応点が見つからない場合がある。このような場合、第２の距離画像生成部３２は、距離画像Ｄ２上において対応点が見つからなかった未対応画素に対して、距離画像Ｄ１における対応する画素の画素値（すなわち距離）を適用して、第３の距離画像Ｄ３を生成する。この場合、記録メディア２９には第３の距離画像Ｄ３が記録される。
【００５７】
ＣＰＵ３３は、レリーズボタン４を含む入力部３４からの信号に応じて立体撮像装置１の各部を制御する。
【００５８】
データバス３５は、立体撮像装置１を構成する各部およびＣＰＵ３３に接続されており、立体撮像装置１における各種データおよび各種情報のやり取りを行う。
【００５９】
次いで、第１の実施形態において行われる処理について説明する。図１０は第１の実施形態において行われる処理を示すフローチャートである。なお、レリーズボタン４の半押し操作に基づく撮像制御部２２におけるＡＦ処理およびＡＥ処理はすでに行われているものとし、ここではレリーズボタン４が全押しされて撮像の指示が行われた以降の処理について説明する。
【００６０】
レリーズボタン４が全押しされることによりＣＰＵ３３が処理を開始し、撮像部２ＡがＣＰＵ３３からの指示により測距光照射部３から測距光を被写体に向けて照射し（ステップＳＴ１）、さらに測距光の被写体による反射光を撮像して、距離画像用のデータを取得する（ステップＳＴ２）。そして、第１の距離画像生成部３０が距離画像用のデータから第１の距離画像Ｄ１を生成する（ステップＳＴ３）。
【００６１】
一方、撮像部２Ｂ，２ＣがＣＰＵ３３からの指示により被写体を撮像し、さらに取得した画像データに画像処理部２３が画像処理を施して基準画像Ｇ１および参照画像Ｇ２を取得する（ステップＳＴ４）。なお、ステップＳＴ１〜３およびステップＳＴ４の処理は並列に行ってもよく順次行ってもよい。本実施形態においては並列に行うものとする。
【００６２】
次いで、ステレオマッチング部３１が、距離画像Ｄ１上においてあらかじめ定められた距離Ｌａを基準とした所定の距離範囲Ｌ０〜Ｌ１内にある領域を、対応点の探索範囲に設定し（ステップＳＴ５）、設定した探索範囲において対応点を探索する（ステップＳＴ６）。なお、ステップＳＴ５の処理は、距離画像Ｄ１が生成されるまで行うことができないため、基準画像Ｇ１および参照画像Ｇ２を取得した時点において距離画像Ｄ１が生成されていない場合には、距離画像Ｄ１の生成が完了するまでステップＳＴ５の処理を待つ必要がある。
【００６３】
そして、第２の距離画像生成部３２が、探索した対応点に基づいて第２の距離画像Ｄ２を生成する（ステップＳＴ７）。さらに、距離画像Ｄ２上において対応点が見つからなかった画素があるか否かを判定し（ステップＳＴ８）、ステップＳＴ８が肯定されると、距離画像Ｄ２における対応点が見つからなかった画素の画素値に対して、距離画像Ｄ１における対応する画素の画素値を適用して第３の距離画像Ｄ３を生成する（ステップＳＴ９）。ステップＳＴ８が否定されるとステップＳＴ１０に進む。
【００６４】
そして、ＣＰＵ３３からの指示によりメディア制御部２６が基準画像Ｇ１、参照画像Ｇ２および距離画像Ｄ２またはＤ３を記録メディア２９に記録し（画像記録：ステップＳＴ１０）、処理を終了する。
【００６５】
このように、第１の実施形態においては、第１の距離画像Ｄ１上におけるあらかじめ定められた距離Ｌａを基準とした所定の距離範囲Ｌ０〜Ｌ１内にある領域を対応点の探索範囲に設定して、対応点を探索するようにしたものである。このように、第１の距離画像Ｄ１を対応点の探索範囲の設定に使用しているため、撮像しようとする被写体の大きさに依存することなく、基準画像Ｇ１および参照画像Ｇ２におけるあらかじめ定められた距離範囲にある領域のみを対応点の探索範囲に設定することができる。したがって、対応点の探索範囲を確実に狭くすることができ、その結果、対応点探索のための演算時間を短縮することができる。また、探索範囲は基準画像Ｇ１および参照画像Ｇ２上の画素単位で設定することができるため、対応点の探索を精度良く行うことができる。
【００６６】
また、第２の距離画像Ｄ２において対応点が見つからなかった画素については、第１の距離画像Ｄ１における対応する画素の画素値を適用して第３の距離画像Ｄ３を生成するようにしたため、精度良く距離画像を生成することができる。
【００６７】
次いで、本発明の第２の実施形態について説明する。図１１は本発明の第２の実施形態による立体撮像装置の外観構成を示す前面側斜視図である。なお、第２の実施形態において第１の実施形態と同一の構成については同一の参照番号を付与し、詳細な説明は省略する。第２の実施形態による立体撮像装置１Ａは、撮像部２Ｂ，２Ｃが立体撮像装置１Ａの左右にスライド可能なマウント６Ｂ，６Ｃに取付けられており、マウント６Ｂ，６Ｃを図１２に示すように左右にスライドさせることにより、撮像部２Ｂ，２Ｃの基線長を変更可能とした点が第１の実施形態と異なる。
【００６８】
図１３は第２の実施形態による立体撮像装置の内部構成を示す概略ブロック図である。図１３に示すように第２の実施形態による立体撮像装置１Ａは、マウント６Ｂ，６Ｃをスライドさせるための駆動機構３６と、駆動機構３６の駆動を制御するマウント駆動制御部３７とを備えた点が第１の実施形態による立体撮像装置１とは異なる。なお、駆動機構３６およびマウント駆動制御部３７が基線長変更手段に対応する。
【００６９】
駆動機構３６は、不図示のモータおよびスライド機構を有し、マウント駆動制御部３７からの指示により撮像部２Ｂ，２Ｃの基線長を変更するようにマウント６Ｂ，６Ｃをスライドさせる。なお、撮像部２Ｂ，２Ｃの基線長の変更は、自動または手動のいずれかにより行うことができる。手動の場合はユーザが入力部３４を操作することにより基線長を変更する。また、撮像部２Ｂ，２Ｃの基線長を自動で変更するか手動で変更するかは、あらかじめユーザにより設定されているものとする。
【００７０】
なお、マウント駆動制御部３７の機能については、以下の第２の実施形態において行われる処理において説明する。
【００７１】
図１４は第２の実施形態において行われる処理を示すフローチャートである。なお、レリーズボタン４の半押し操作に基づく撮像制御部２２におけるＡＦ処理およびＡＥ処理はすでに行われているものとし、ここではレリーズボタン４が全押しされて撮像の指示が行われた以降の処理について説明する。
【００７２】
レリーズボタン４が全押しされることによりＣＰＵ３３が処理を開始し、撮像部２Ｂ，２Ｃの現在の基線長である基線長初期値を内部メモリ２７に記憶する（ステップＳＴ２１）。次いで、レリーズボタン４が全押しされると、撮像部２ＡがＣＰＵ３３からの指示により測距光照射部３から測距光を被写体に向けて照射し（ステップＳＴ２２）、さらに測距光の被写体による反射光を撮像して、距離画像用のデータを取得する（ステップＳＴ２３）。そして、第１の距離画像生成部３０が距離画像用のデータから第１の距離画像Ｄ１を生成する（ステップＳＴ２４）。
【００７３】
一方、撮像部２Ｂ，２ＣがＣＰＵ３３からの指示により被写体を撮像して、さらに取得した画像データに画像処理部２３が画像処理を施して基準画像Ｇ１および参照画像Ｇ２を取得する（ステップＳＴ２５）。なお、ステップＳＴ２２〜２４およびステップＳＴ２５の処理は並列に行ってもよく順次行ってもよい。本実施形態においては並列に行うものとする。
【００７４】
そして、マウント駆動制御部３７が基線長変更処理を行う（ステップＳＴ２６）。なお、基線長変更処理は、距離画像Ｄ１が生成されるまで行うことができないため、基準画像Ｇ１および参照画像Ｇ２を取得した時点において距離画像Ｄ１が生成されていない場合には、距離画像Ｄ１の生成が完了するまでステップＳＴ２６の処理を待つ必要がある。
【００７５】
図１５は基線長変更処理のフローチャートである。まず、マウント駆動制御部３７は、距離画像Ｄ１に基づいて、立体撮像装置１Ａから被写体までの距離である被写体距離および距離画像Ｄ１における被写体が含まれる範囲である被写体範囲を算出する（ステップＳＴ４１）。具体的には、距離画像Ｄ１を複数の領域（例えば３×３）に分割し、中央の領域における距離の平均値等の代表値を被写体距離として算出する。そして、距離画像Ｄ１において、算出した被写体距離を基準とした例えば±１０％の距離範囲にある画素からなる領域を被写体領域として算出する。
【００７６】
なお、距離画像Ｄ１をモニタ５に表示し、ユーザに被写体領域を選択させ、さらに選択させた被写体領域内の距離の平均値等の代表値を被写体距離として算出するようにしてもよい。
【００７７】
次いで、マウント駆動制御部３７は、算出した被写体距離があらかじめ定められた所定距離ＴＬ１より大きいか否かを判定する（ステップＳＴ４２）。なお、所定距離ＴＬ１はあらかじめユーザにより設定され内部メモリ２７に記憶されている。ステップＳＴ４２が肯定されると、基線長を自動で変更する設定となっているか否かを判定する（ステップＳＴ４３）。ステップＳＴ４３が否定されると、ユーザによる入力部３４を用いての基線長の変更の操作を受け付ける（ステップＳＴ４４）。そして、あらかじめ設定した制限範囲まで基線長を変更したか否かを判定する（ステップＳＴ４５）。
【００７８】
図１６（ａ）は基線長の変更前の基準画像Ｇ１および参照画像Ｇ２を、図１６（ｂ）は基線長を変更した際の基準画像Ｇ１および参照画像Ｇ２を示す図である。図１６（ａ）に示すように基準画像Ｇ１および参照画像Ｇ２の略中央に位置している被写体Ｈは、基線長を大きくするように変更することにより、徐々に基準画像Ｇ１および参照画像Ｇ２の端部に移動する。ここで、基準画像Ｇ１および参照画像Ｇ２の端部は、撮像部２Ｂ，２Ｃのレンズの歪みおよびＣＣＤ１３Ｂ，１３Ｃの歪み等により、画像が歪んでいることが多い。このため、第２の実施形態においては、基準画像Ｇ１および参照画像Ｇ２の周囲における所定範囲内の領域（図１６（ｂ）に示す斜線部）に被写体Ｈが位置しないように、基線長の変更範囲を制限している。
【００７９】
したがって、マウント駆動制御部３７は、基準画像Ｇ１および参照画像Ｇ２から被写体を検出し、検出した被写体が基準画像Ｇ１および参照画像Ｇ２の周囲における所定範囲内の領域に位置するか否かを判定することにより、ステップＳＴ４５の処理を行う。
【００８０】
そして、ステップＳＴ４５が否定されると、ユーザによる基線長の変更の操作終了指示がなされたか否かを判定する（ステップＳＴ４６）。なお、この判定は、例えば「基線長の変更を終了しますか」の問い合わせ表示をモニタ５に行い、問い合わせ表示に対するＹＥＳの入力がユーザにより行われたか否かを判定することにより行う。ステップＳＴ４６が否定されるとステップＳＴ４４に戻ってステップＳＴ４４以降の処理を繰り返す。ステップＳＴ４６が肯定されると、その位置においてマウント６Ｂ，６Ｃを固定し（ステップＳＴ４７）、図１４のステップＳＴ２２，２５の処理に進む。また、ステップＳＴ４５が肯定された場合もステップＳＴ４７の処理に進む。
【００８１】
一方、ステップＳＴ４３が肯定されると、マウント駆動制御部３７が駆動機構３６を駆動して、あらかじめ設定した制限範囲まで基線長を大きくするよう変更し（ステップＳＴ４８）、ステップＳＴ４７の処理に進む。
【００８２】
また、ステップＳＴ４２が否定されると、基線長が初期値と異なるか否かを判定する（ステップＳＴ４９）。ステップＳＴ４９が肯定されると、現在の基線長に基づいてキャリブレーションパラメータを変更し（ステップＳＴ５０）、図１４に示すステップＳＴ２７の処理に進む。また、ステップＳＴ４９が否定された場合もステップＳＴ２７の処理に進む。
【００８３】
図１４に戻り、ＣＰＵ３３はステップＳＴ２７〜ステップＳＴ３２の処理を行い、処理を終了する。なお、ステップＳＴ２７〜ステップＳＴ３２の処理は、第１の実施形態におけるステップＳＴ５〜ステップＳＴ１０の処理と同一であるため、ここでは詳細な説明は省略する。
【００８４】
このように、第２の実施形態においては、被写体距離が所定距離ＴＬ１より大きい場合に、撮像部２Ｂ，２Ｃ間の距離である基線長を大きくするよう変更するようにしたものである。ここで、基線長を大きくすると、撮像部２Ｂ，２Ｃから離れた位置にある被写体についての距離算出の精度を向上させることができる。このため、基準画像Ｇ１および参照画像Ｇ２を用いての距離画像Ｄ２の生成の精度を向上させることができる。
【００８５】
なお、上記第２の実施形態においては、基線長の変更前に、ステップＳＴ２５の処理により撮像部２Ｂ，２Ｃに撮像を行わせて基準画像Ｇ１および参照画像Ｇ２を取得しているが、基線長を変更する前は、撮像部２Ａにのみ撮像を行わせ、撮像部２Ｂ，２Ｃにより撮像を行わせないようにしてもよい。
【００８６】
次いで、本発明の第３の実施形態について説明する。なお、第３の実施形態による立体撮像装置の外観構成は、第１の実施形態による立体撮像装置１の外観構成と同一であるため、ここでは詳細な説明は省略する。図１７は第３の実施形態による立体撮像装置の内部構成を示す概略ブロック図である。図１７に示すように第３の実施形態による立体撮像装置１Ｂは、撮像部２Ｂ，２Ｃのレンズ１０Ｂ，１０Ｃのズームレンズの駆動を制御するズーム倍率変更部３８を備えた点が第１の実施形態による立体撮像装置１とは異なる。
【００８７】
なお、ズーム倍率変更部３８の機能については、以下の第３の実施形態において行われる処理において説明する。
【００８８】
図１８は第３の実施形態において行われる処理を示すフローチャートである。なお、レリーズボタン４の半押し操作に基づく撮像制御部２２におけるＡＦ処理およびＡＥ処理はすでに行われているものとし、ここではレリーズボタン４が全押しされて撮像の指示が行われた以降の処理について説明する。
【００８９】
レリーズボタン４が全押しされることによりＣＰＵ３３が処理を開始し、撮像部２Ｂ，２Ｃのレンズ１０Ｂ，１０Ｃのズームレンズの現在のズーム位置であるズーム初期値を内部メモリ２７に記憶する（ステップＳＴ６１）。次いで、レリーズボタン４が全押しされると、撮像部２ＡがＣＰＵ３３からの指示により測距光照射部３から測距光を被写体に向けて照射し（ステップＳＴ６２）、さらに測距光の被写体による反射光を撮像して、距離画像用のデータを取得する（ステップＳＴ６３）。そして、第１の距離画像生成部３０が距離画像用のデータから第１の距離画像Ｄ１を生成する（ステップＳＴ６４）。
【００９０】
さらに、撮像部２Ｂ，２ＣがＣＰＵ３３からの指示により被写体を撮像して、さらに取得した画像データに画像処理部２３が画像処理を施して基準画像Ｇ１および参照画像Ｇ２を取得する（ステップＳＴ６５）。なお、ステップＳＴ６２〜６４およびステップＳＴ６５の処理は並列に行ってもよく順次行ってもよい。本実施形態においては並列に行うものとする。
【００９１】
そして、ズーム倍率変更部３８がズーム倍率変更処理を行う（ステップＳＴ６６）。なお、ズーム倍率変更処理は、距離画像Ｄ１が生成されるまで行うことができないため、基準画像Ｇ１および参照画像Ｇ２を取得した時点において距離画像Ｄ１が生成されていない場合には、距離画像Ｄ１の生成が完了するまでステップＳＴ６６の処理を待つ必要がある。
【００９２】
図１９はズーム倍率変更処理のフローチャートである。まず、ズーム倍率変更部３８は、第２の実施形態におけるマウント駆動制御部３７と同様に、距離画像Ｄ１に基づいて立体撮像装置１Ａから被写体までの距離である被写体距離および距離画像Ｄ１における被写体が含まれる範囲である被写体範囲を算出する（ステップＳＴ８１）。
【００９３】
次いで、ズーム倍率変更部３８は、算出した被写体距離があらかじめ定められた所定距離ＴＬ２よりも大きいか否かを判定する（ステップＳＴ８２）。なお、所定距離ＴＬ２はあらかじめユーザにより設定され内部メモリ２７に記憶されている。ステップＳＴ８２が肯定されると、ズーム倍率を自動で変更する設定となっているか否かを判定する（ステップＳＴ８３）。ステップＳＴ８３が否定されると、ユーザによる入力部３４を用いてのズーム倍率の変更の操作を受け付ける（ステップＳＴ８４）。そして、あらかじめ設定した制限範囲までズーム倍率を変更したか否かを判定する（ステップＳＴ８５）。具体的には、上記第２の実施形態と同様に、基準画像Ｇ１および参照画像Ｇ２から被写体を検出し、検出した被写体が基準画像Ｇ１および参照画像Ｇ２の周囲における所定範囲内の領域に位置するか否かを判定することにより、ステップＳＴ８５の処理を行う。
【００９４】
そして、ステップＳＴ８５が否定されると、ユーザによるズーム倍率の変更の操作終了指示がなされたか否かを判定する（ステップＳＴ８６）。なお、この判定は、例えば「ズーム倍率の変更を終了しますか」の問い合わせ表示をモニタ５に行い、問い合わせ表示に対するＹＥＳの入力がユーザにより行われたか否かを判定することにより行う。ステップＳＴ８６が否定されるとステップＳＴ８４に戻ってステップＳＴ８４以降の処理を繰り返す。ステップＳＴ８６が肯定されると、ズームをその位置に固定し（ステップＳＴ８７）、図１８に示すステップＳＴ６２，６５の処理に進む。また、ステップＳＴ８５が肯定された場合もステップＳＴ８７の処理に進む。
【００９５】
一方、ステップＳＴ８３が肯定されると、ズーム倍率変更部３８が制限範囲までズーム倍率を大きくするよう変更し（ステップＳＴ８８）、ステップＳＴ８７の処理に進む。
【００９６】
また、ステップＳＴ８２が否定されると、ズーム倍率が初期値と異なるか否かを判定する（ステップＳＴ８９）。ステップＳＴ８９が肯定されると、現在のズーム倍率に基づいてキャリブレーションパラメータを変更し（ステップＳＴ９０）、図１８に示すステップＳＴ６７の処理に進む。また、ステップＳＴ８９が否定された場合もステップＳＴ６７の処理に進む。
【００９７】
図１８に戻り、ＣＰＵ３３はステップＳＴ６７〜ステップＳＴ７２の処理を行い、処理を終了する。なお、ステップＳＴ６７〜ステップＳＴ７２の処理は、第１の実施形態におけるステップＳＴ５〜ステップＳＴ１０の処理と同一であるため、ここでは詳細な説明は省略する。
【００９８】
このように、第３の実施形態においては、被写体距離が所定距離ＴＬ２よりも大きい場合に、撮像部２Ｂ，２Ｃのズーム倍率を大きくするよう変更するようにしたものである。ここで、ズーム倍率を大きくすると、撮像部２Ｂ，２Ｃから離れた位置にある被写体についての、距離算出の精度を向上させることができる。このため、基準画像Ｇ１および参照画像Ｇ２を用いての距離画像Ｄ２の生成の精度を向上させることができる。
【００９９】
なお、上記第３の実施形態においては、ズーム倍率の変更前に、ステップＳＴ６５の処理により撮像部２Ｂ，２Ｃに撮像を行わせて基準画像Ｇ１および参照画像Ｇ２を取得しているが、ズーム倍率を変更する前は、撮像部２Ａにのみ撮像を行わせ、撮像部２Ｂ，２Ｃにより撮像を行わせないようにしてもよい。
【０１００】
次いで、本発明の第４の実施形態について説明する。なお、第４の実施形態による立体撮像装置の外観構成は、第１の実施形態による立体撮像装置１の外観構成と同一であるため、ここでは詳細な説明は省略する。図２０は第４の実施形態による立体撮像装置の内部構成を示す概略ブロック図である。図２０に示すように第４の実施形態による立体撮像装置１Ｃは、顔検出部３９を備え、撮像部２Ａ〜２Ｃのすべてにより撮像を行う前に、撮像部２Ｂ，２Ｃにより被写体を撮像してプレ基準画像およびプレ参照画像を取得し、プレ基準画像およびプレ参照画像に人物の顔が含まれるか否かを判定し、顔が含まれる場合には、撮像部２Ａを用いての撮像を禁止するようにした点が第１の実施形態と異なる。なお、プレ基準画像およびプレ参照画像は、基準画像Ｇ１および参照画像Ｇ２よりも画素数を少なくすることにより、顔が含まれるか否かの判定を迅速に行うことができる。
【０１０１】
顔検出部３９は、テンプレートマッチングによる手法や、顔の多数のサンプル画像を用いてマシンラーニング学習により得られた顔判別器を用いる手法等により、プレ基準画像およびプレ参照画像上における顔を囲む所定範囲の領域を顔領域として検出する。なお、顔領域の検出結果は、プレ基準画像およびプレ参照画像に顔が含まれるか否かを表す情報、顔が含まれる場合の顔の数およびプレ基準画像およびプレ参照画像上における顔領域の位置を表す座標値を含む。
【０１０２】
次いで、第４の実施形態において行われる処理について説明する。図２１は第４の実施形態において行われる処理を示すフローチャートである。立体撮像装置１Ｃの電源をオンとすることによりＣＰＵ３３が処理を開始し、レリーズボタン４が半押しされたか否かの監視を開始する（ステップＳＴ１０１）。ステップＳＴ１０１が肯定されると、ＣＰＵ３３からの指示により撮像部２Ｂ，２Ｃが被写体を撮像してプレ基準画像およびプレ参照画像を取得する（ステップＳＴ１０２）。次いで、顔検出部３９がプレ基準画像およびプレ参照画像から顔領域を検出して検出結果を生成し、検出結果を内部メモリ２７に記憶する（ステップＳＴ１０３）。なお、撮像制御部２２が、プレ基準画像およびプレ参照画像の少なくとも一方に基づいて、ＡＦ処理およびＡＥ処理を行う。続いて、レリーズボタン４が全押しされたか否かを判定し（ステップＳＴ１０４）、ステップＳＴ１０４が否定されると、ステップＳＴ１０１に戻り、ステップＳＴ１０１以降の処理を繰り返す。
【０１０３】
ステップＳＴ１０４が肯定されると、ＣＰＵ３３は顔検出部３９の検出結果に基づいて、プレ基準画像およびプレ参照画像に顔領域が含まれるか否かを判定する（ステップＳＴ１０５）。ステップＳＴ１０５が否定されると、撮像部２Ａ〜２Ｃを用いての距離画像Ｄ２またはＤ３の生成処理を行い（ステップＳＴ１０６）、処理を終了する。なお、ステップＳＴ１０６の処理は、上記第１の実施形態におけるステップＳＴ１〜ステップＳＴ１０の処理と同一であるため、ここでは詳細な説明は省略する。
【０１０４】
一方、ステップＳＴ１０５が肯定されると、ＣＰＵ３３からの指示により、撮像部２Ｂ，２Ｃのみが被写体を撮像して、さらに取得した画像データに画像処理部２３が画像処理を施して基準画像Ｇ１および参照画像Ｇ２を取得する（ステップＳＴ１０７）。次いで、ステレオマッチング部３１が、基準画像Ｇ１および参照画像Ｇ２に含まれる顔領域同士の対応関係を検出する（ステップＳＴ１０８）。なお、基準画像Ｇ１および参照画像Ｇ２の顔領域の位置は、プレ基準画像およびプレ参照画像についての顔領域の検出結果を用いてもよく、顔検出部３９に顔領域を検出させることにより取得してもよい。
【０１０５】
図２２は顔領域の対応関係を説明するための図である。図２２（ａ）に示すように、基準画像Ｇ１および参照画像Ｇ２にそれぞれ１つの顔領域Ｆ１，Ｆ２のみが含まれる場合には、基準画像Ｇ１および参照画像Ｇ２の顔領域Ｆ１，Ｆ２がそれぞれ対応づけられる。一方、図２２（ｂ）に示すように、基準画像Ｇ１および参照画像Ｇ２に複数の顔領域が含まれる場合には、サイズが等しい顔領域同士が対応づけられる。具体的には、基準画像Ｇ１の顔領域Ｆ１１が参照画像Ｇ２の顔領域Ｆ１２と、基準画像Ｇ１の顔領域Ｆ１３が参照画像Ｇ２の顔領域Ｆ１４とそれぞれ対応づけられる。また、図２２（ｃ）に示すように、基準画像Ｇ１および参照画像Ｇ２に複数の顔領域が含まれ、かつ複数の顔領域のサイズが同一の場合には、顔領域の位置関係に基づいて顔領域同士が対応づけられる。具体的には、基準画像Ｇ１の顔領域Ｆ２１が参照画像Ｇ２の顔領域Ｆ２２と、基準画像Ｇ１の顔領域Ｆ２３が参照画像Ｇ２の顔領域Ｆ２４と、基準画像Ｇ１の顔領域Ｆ２５が参照画像Ｇ２の顔領域Ｆ２６とそれぞれ対応づけられる。
【０１０６】
次いで、ステレオマッチング部３１が、図２３に示すように、基準画像Ｇ１および参照画像Ｇ２における顔領域の中心線Ｃ１，Ｃ２を設定し、中心線Ｃ１，Ｃ２のずれを視差ｄとして算出するとともに、視差ｄを用いて立体撮像装置１Ｃから顔領域の中心線Ｃ１，Ｃ２までの距離を算出する（ステップＳＴ１０９）。そして、算出した距離を基準とした所定の距離範囲内にある領域を対応点の探索範囲に設定し（ステップＳＴ１１０）、設定した探索範囲において対応点を探索する（ステップＳＴ１１１）。なお、この場合の距離範囲としては、顔の中心線は人物の鼻の近傍を通るため、顔全体が距離範囲に収まるように、算出した距離の手前５ｃｍ〜後２０ｃｍ程度を距離範囲とすることが好ましい。なお、ステップＳＴ１０９において算出した視差ｄの範囲を対応点の探索範囲として設定してもよい。
【０１０７】
そして、第２の距離画像生成部３２が、探索した対応点に基づいて第２の距離画像Ｄ２を生成する（ステップＳＴ１１２）。そして、ＣＰＵ３３からの指示によりメディア制御部２６が、基準画像Ｇ１、参照画像Ｇ２および距離画像Ｄ２を記録メディア２９に記録し（画像記録：ステップＳＴ１１３）、処理を終了する。
【０１０８】
このように、第４の実施形態においては、プレ基準画像およびプレ参照画像から顔領域が検出された場合に、撮像部２Ａを用いての撮像を行わないようにしたものである。このため、人物に測距光が照射されることがなくなり、その結果、被写体である人物が測距光により煩わしい思いをすることを防止することができる。
【０１０９】
なお、上記第４の実施形態においてはプレ基準画像およびプレ参照画像から顔領域を検出しているが、検出する被写体としては顔に限定されるものではない。
【０１１０】
また、上記第４の実施形態においては、検出した顔領域の中心線のずれを視差ｄとして算出し、算出した視差ｄを用いて距離画像Ｄ２を生成しているが、基準画像Ｇ１および参照画像Ｇ２の対応点を探索し、探索した対応点に基づいて距離画像Ｄ２を生成するようにしてもよい。
【０１１１】
ところで、上述したように生成した距離画像Ｄ２，Ｄ３は、ステレオマッチングに固有の問題のために、画素の誤対応が生じる場合がある。画素の誤対応が生じる原因としては、撮像部２Ｂ，２Ｃがそれぞれ異なる位置において同一の被写体を撮像しているため、撮像部２Ｂからは臨むことができるが、撮像部２Ｃからは臨むことができない隠れ点が発生することによるもの、および被写体が単純な色の場合に対応点が複数発生してしまうことによるもの等が挙げられる。このように誤対応が生じると、距離画像Ｄ２またはＤ３を精度良く生成することができない。以下、この問題を解決するための実施形態を第５の実施形態として説明する。
【０１１２】
図２４は第５の実施形態による立体撮像装置の内部構成を示す概略ブロック図である。図２４に示すように第５の実施形態による立体撮像装置１Ｄは、画素値変更部４０を備えた点が第１の実施形態と異なる。なお、画素値変更部４０の機能については、以下の第５の実施形態において行われる処理において説明する。
【０１１３】
図２５は第５の実施形態において行われる処理を示すフローチャートである。なお、第５の実施形態においては、距離画像Ｄ２または距離画像Ｄ３の生成までの処理は、第１の実施形態におけるステップＳＴ１〜ステップＳＴ９の処理と同一であるため、ここでは第１の実施形態におけるステップＳＴ９以降の処理についてのみ説明する。
【０１１４】
ステップＳＴ９の処理に続いて、画素値変更部４０が、距離画像Ｄ１および距離画像Ｄ２またはＤ３の対応する画素の画素値の差分値の絶対値を算出する（ステップＳＴ１２１）。そして、算出した差分値の絶対値が所定のしきい値Ｔｈ１以上となる画素が存在するか否かを判定する（ステップＳＴ１２２）。
【０１１５】
ステップＳＴ１２２が否定されると、距離画像Ｄ２または距離画像Ｄ３には画素の誤対応はないものとして、基準画像Ｇ１、参照画像Ｇ２および距離画像Ｄ２またはＤ３を記録メディア２９に記録し（画像記録：ステップＳＴ１２３）、処理を終了する。
【０１１６】
一方、ステップＳＴ１２２が肯定されると、差分値の絶対値がしきい値Ｔｈ１以上となった画素を誤対応画素として画素値変更処理を行う（ステップＳＴ１２４）。ここで、画素値変更処理は、誤対応画素の画素値を削除する処理、誤対応画素の画素値を距離画像Ｄ１の対応する画素の画素値と置換する処理、および誤対応画素の周囲の画素の画素値により誤対応画素の画素値を補間する処理のいずれかの処理を行う。
【０１１７】
そして、ＣＰＵ３３からの指示によりメディア制御部２６が、画素値変更処理が施された距離画像（Ｄ４とする）を基準画像Ｇ１および参照画像Ｇ３とともに記録メディア２９に記録し（ステップＳＴ１２５）、処理を終了する。
【０１１８】
このように、第５の実施形態においては、距離画像Ｄ１および距離画像Ｄ２またはＤ３における対応する画素の画素値の差分値の絶対値を算出し、差分値の絶対値がしきい値Ｔｈ１を超える誤対応画素を検出し、誤対応画素の画素値を所定の画素値に変更するようにしたため、誤対応画素の画素値を補正して、精度良く距離画像Ｄ４を生成することができる。
【０１１９】
なお、上記第５の実施形態においては、第１の実施形態におけるステップＳＴ９の処理の後に画素値変更処理を行っているが、第２から第４の実施形態においても画素値変更処理を行うことができることはもちろんである。
【０１２０】
また、上記第１から第５の実施形態においては、参照画像Ｇ２を取得するための第３の撮像部２Ｃを１つのみ設けているが、第３の撮像部２Ｃを複数設け、複数の参照画像を取得して第２の距離画像Ｄ２を生成するようにしてもよい。
【０１２１】
以上、本発明の実施形態に係る立体撮像装置１，１Ａ，１Ｂ，１Ｃ，１Ｄについて説明したが、コンピュータを、上記の第１の距離画像生成部３０、ステレオマッチング部３１、第２の距離画像生成部３２、マウント駆動制御部３７、ズーム倍率変更部３８、顔検出部３９および画素値変更部４０に対応する手段として機能させ、図１０，１４，１５，１８，１９，２１，２５に示すような処理を行わせるプログラムも、本発明の実施形態の１つである。また、そのようなプログラムを記録したコンピュータ読取り可能な記録媒体も、本発明の実施形態の１つである。
【図面の簡単な説明】
【０１２２】
【図１】本発明の第１の実施形態による立体撮像装置の外観構成を示す前面側斜視図
【図２】本発明の第１の実施形態による立体撮像装置の外観構成を示す背面側斜視図
【図３】第１から第３の撮像部の撮像範囲を示す図
【図４】第１の撮像部の内部構成を示す図
【図５】第２および第３の撮像部の内部構成を示す図
【図６】第１の実施形態による立体撮像装置の内部構成を示す概略ブロック図
【図７】ステレオマッチングを説明するための図
【図８】第２および第３の撮像部の関係を説明するための図
【図９】探索範囲の設定を説明するための図
【図１０】第１の実施形態において行われる処理を示すフローチャート
【図１１】本発明の第２の実施形態による立体撮像装置の外観構成を示す前面側斜視図（その１）
【図１２】本発明の第２の実施形態による立体撮像装置の外観構成を示す前面側斜視図（その２）
【図１３】第２の実施形態による立体撮像装置の内部構成を示す概略ブロック図
【図１４】第２の実施形態において行われる処理を示すフローチャート
【図１５】第２の実施形態における基線長変更処理を示すフローチャート
【図１６】基線長変更の制限範囲を説明するための図
【図１７】第３の実施形態による立体撮像装置の内部構成を示す概略ブロック図
【図１８】第３の実施形態において行われる処理を示すフローチャート
【図１９】第３の実施形態におけるズーム倍率変更処理を示すフローチャート
【図２０】第４の実施形態による立体撮像装置の内部構成を示す概略ブロック図
【図２１】第４の実施形態において行われる処理を示すフローチャート
【図２２】顔領域の対応関係を説明するための図
【図２３】第４の実施形態における視差の算出を説明するための図
【図２４】第５の実施形態による立体撮像装置の内部構成を示す概略ブロック図
【図２５】第５の実施形態において行われる処理を示すフローチャート
【符号の説明】
【０１２３】
１，１Ａ，１Ｂ，１Ｃ，１Ｄ    立体撮像装置
２Ａ，２Ｂ，２Ｃ    撮像部
３    測距光照射部
４    レリーズボタン
５    モニタ
１３Ａ，１３Ｂ，１３Ｃ    ＣＣＤ
３０    第１の距離画像生成部
３１    ステレオマッチング部
３２    第２の距離画像生成部
３３    ＣＰＵ
３６    駆動機構
３７    マウント駆動制御部
３８    ズーム倍率変更部
３９    顔検出部
４０    画素値変更部
【図１】
2009047496.tif 000003
【図２】
2009047496.tif 000004
【図３】
2009047496.tif 000005
【図４】
2009047496.tif 000006
【図５】
2009047496.tif 000007
【図６】
2009047496.tif 000008
【図７】
2009047496.tif 000009
【図８】
2009047496.tif 000010
【図９】
2009047496.tif 000011
【図１０】
2009047496.tif 000012
【図１１】
2009047496.tif 000013
【図１２】
2009047496.tif 000014
【図１３】
2009047496.tif 000015
【図１４】
2009047496.tif 000016
【図１５】
2009047496.tif 000017
【図１６】
2009047496.tif 000018
【図１７】
2009047496.tif 000019
【図１８】
2009047496.tif 000020
【図１９】
2009047496.tif 000021
【図２０】
2009047496.tif 000022
【図２１】
2009047496.tif 000023
【図２２】
2009047496.tif 000024
【図２３】
2009047496.tif 000025
【図２４】
2009047496.tif 000026
【図２５】
2009047496.tif 000027