(57)【要約】【課題】ステレオマッチング処理により視差データを生成する際の処理量と使用メモリ量の増大を抑えることができること。【解決手段】複数の撮像部と、複数の撮像部のうち、少なくとも２つの撮像部が撮影した映像から対応画素を探索するステレオマッチング処理により視差データを算出する視差算出部とを備えた多眼撮像装置であって、視差算出部は、２つの撮像部の全視差範囲より小さい範囲の対応画素を探索して視差データを算出する小範囲対応画素探索部と、小範囲対応画素探索部が探索する範囲を制御する探索範囲制御部とを備えることを特徴とする多眼撮像装置。【選択図】図３
2012060512.tif 000002
【特許請求の範囲】
【請求項１】
複数の撮像部と、前記複数の撮像部のうち、少なくとも２つの撮像部が撮影した映像から対応画素を探索するステレオマッチング処理により視差データを算出する視差算出部とを備えた多眼撮像装置であって、
前記視差算出部は、
前記２つの撮像部の全視差範囲より小さい範囲の対応画素を探索して視差データを算出する小範囲対応画素探索部と、
前記小範囲対応画素探索部が探索する範囲を制御する探索範囲制御部と
を備えること
を特徴とする多眼撮像装置。
【請求項２】
前記小範囲対応画素探索部は、予め設定された画素数を探索し、
前記探索範囲制御部は、前記全視差範囲を探索可能な回数だけ、前記小範囲対応画素探索部を実行させること
を特徴とする請求項１に記載の多眼撮像装置。
【請求項３】
前記探索範囲制御部は、前記撮像部のフレームレートに基づき、リアルタイムに処理できるように探索する範囲を決定し、前記決定に従い、前記小範囲対応画素探索部を制御すること
を特徴とする請求項１に記載の多眼撮像装置。
【請求項４】
前記探索範囲制御部は、前記撮像部の焦点位置情報に基づき、探索する範囲を決定し、前記決定に従い、前記小範囲対応画素探索部を制御すること
を特徴とする請求項１に記載の多眼撮像装置。
【請求項５】
前記探索範囲制御部は、前記撮像部の焦点位置情報に基づき、前記撮像部の被写界深度に対応する範囲を、探索する範囲として決定し、前記決定に従い、前記小範囲対応画素探索部を制御すること
を特徴とする請求項４に記載の多眼撮像装置。
【請求項６】
前記探索範囲制御部は、ユーザが設定した撮影モードに基づき、探索する範囲を決定し、前記決定に従い、前記小範囲対応画素探索部を制御すること
を特徴とする請求項１に記載の多眼撮像装置。
【請求項７】
複数の撮像部を備えた多眼撮像装置のコンピュータを
前記複数の撮像部のうち、少なくとも２つの撮像部が撮影した映像から対応画素を探索するステレオマッチング処理により視差データを算出する視差算出部
として機能させるプログラムであって、
前記視差算出部は、
前記２つの撮像部の全視差範囲より小さい範囲の対応画素を探索して視差データを算出する小範囲対応画素探索部と、
前記小範囲対応画素探索部が探索する範囲を制御する探索範囲制御部と
を備えることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、多眼撮像装置およびプログラムに関する。
【背景技術】
【０００２】
近年、映像の迫力や臨場感を高めるために立体映像装置の開発が盛んである。立体画像を生成する技術としては、特許文献１のように左チャンネル（Ｌ）用と右チャンネル（Ｒ）用の２台のカメラを左右に配置し、被写体を同時に撮影する技術が知られている。また、立体画像を表示する技術としては、左チャンネル（Ｌ）の画像と右（Ｒ）チャンネルの画像を一つの表示画面上に１画素毎に交互に表示すると共に、かまぼこ型のレンズを所定の間隔で並べたレンチキュラーレンズや、細かいスリットを所定の間隔で並べたでパララックスバリアや、微細偏光素子を規則正しく配列させたパターニング位相差板などの特殊な光学系を用いて鑑賞者の左目と右目で見える領域を調整して、鑑賞者の左目には左チャンネル（Ｌ）の画像のみが、右目には右チャンネル（Ｒ）の画像のみが見えるようにする技術が知られている。
【０００３】
２台のカメラで被写体を同時に撮影した映像は、立体映像として表示できる他にも、被写体までの距離を測定することも可能である。被写体までの距離はステレオマッチングと呼ばれる方法で求められる。ステレオマッチングは複数の撮影画像の対応画素を求めてそのズレ量である視差（距離）情報を算出する技術である。撮影した画素毎にステレオマッチングを行うことにより、各撮影画素の視差（距離）情報が算出できる。この視差（距離）データを画面毎に表したものは「視差マップ」或いは「デプスマップ」と呼ばれている。
【０００４】
この視差マップは、これまで単一カメラの撮影では取得することができなかった被写体の３次元情報を示すものであり、様々な活用が検討されている。例えば、上記の立体画像を表示する際に、視差マップをもとに画像処理をすることによって立体感の調整が可能である。更に、特許文献２のように複数のカメラを用いて高精細な映像を生成する技術において、複数のカメラ映像を高精細化合成処理する時に、左映像のどの画素と右映像のどの画素を合成するかの判断材料として視差マップが必要不可欠となる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−２５１６１３号公報
【特許文献２】特表２００７−５２０１６６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら上述のステレオマッチング処理は画素単位で対応画素探索を行うため、非常に多くの処理量と使用メモリ量を必要とするという問題がある。近年、撮像デバイスの画素数が格段に増加していること、動画撮影のためにはリアルタイム処理が必要なことなどの理由から、この問題が顕著になってきた。
【０００７】
本発明はこのような課題に鑑みてなされたもので、その目的は、ステレオマッチング処理により視差データを生成する際の処理量と使用メモリ量の増大を抑えることができる多眼撮像装置およびプログラムを提供することにある。
【課題を解決するための手段】
【０００８】
（１）この発明は上述した課題を解決するためになされたもので、本発明の多眼撮像装置は、複数の撮像部と、前記複数の撮像部のうち、少なくとも２つの撮像部が撮影した映像から対応画素を探索するステレオマッチング処理により視差データを算出する視差算出部とを備えた多眼撮像装置であって、前記視差算出部は、前記２つの撮像部の全視差範囲より小さい範囲の対応画素を探索して視差データを算出する小範囲対応画素探索部と、前記小範囲対応画素探索部が探索する範囲を制御する探索範囲制御部とを備えることを特徴とする。
【０００９】
（２）また、本発明の多眼撮像装置は、上述の多眼撮像装置であって、前記小範囲対応画素探索部は、予め設定された画素数を探索し、前記探索範囲制御部は、前記全視差範囲を探索可能な回数だけ、前記小範囲対応画素探索部を実行させることを特徴とする。
【００１０】
（３）また、本発明の多眼撮像装置は、上述の多眼撮像装置であって、前記探索範囲制御部は、前記撮像部のフレームレートに基づき、リアルタイムに処理できるように探索する範囲を決定し、前記決定に従い、前記小範囲対応画素探索部を制御することを特徴とする。
【００１１】
（４）また、本発明の多眼撮像装置は、上述の多眼撮像装置であって、前記探索範囲制御部は、前記撮像部の焦点位置情報に基づき、探索する範囲を決定し、前記決定に従い、前記小範囲対応画素探索部を制御することを特徴とする。
【００１２】
（５）また、本発明の多眼撮像装置は、上述の多眼撮像装置であって、前記探索範囲制御部は、前記撮像部の焦点位置情報に基づき、前記撮像部の被写界深度に対応する範囲を、探索する範囲として決定し、前記決定に従い、前記小範囲対応画素探索部を制御すること  を特徴とする。
【００１３】
（６）また、本発明の多眼撮像装置は、上述の多眼撮像装置であって、前記探索範囲制御部は、ユーザが設定した撮影モードに基づき、探索する範囲を決定し、前記決定に従い、前記小範囲対応画素探索部を制御することを特徴とする。
【００１４】
（７）また、本発明のプログラムは、複数の撮像部を備えた多眼撮像装置のコンピュータを前記複数の撮像部のうち、少なくとも２つの撮像部が撮影した映像から対応画素を探索するステレオマッチング処理により視差データを算出する視差算出部として機能させるプログラムであって、前記視差算出部は、前記２つの撮像部の全視差範囲より小さい範囲の対応画素を探索して視差データを算出する小範囲対応画素探索部と、前記小範囲対応画素探索部が探索する範囲を制御する探索範囲制御部とを備えることを特徴とする。
【発明の効果】
【００１５】
この発明によれば、ステレオマッチング処理により視差データを生成する際の処理量と使用メモリ量の増大を抑えることができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の第１の実施形態に係る多眼撮像装置１０の概観を示す外観図である。
【図２】同実施形態における多眼撮像装置１０の機能構成を示す概略ブロック図である。
【図３】同実施形態における視差算出部２１の機能構成を示す概略ブロック図である。
【図４】同実施形態におけるエピポーラライン平行化後の参照画像ＲＧを示す図である。
【図５】同実施形態におけるエピポーラライン平行化後の基準画像ＢＧを示す図である。
【図６】同実施形態における参照注目ブロックＲＢを示す図である。
【図７】同実施形態における基準注目ブロックＢＢを示す図である。
【図８】同実施形態における探索範囲制御部３４による制御の例を示す図である。
【図９】同実施形態における探索範囲制御部３４による制御の他の例を示す図である。
【図１０】同実施形態における探索範囲制御部３４による制御の他の例を示す図である。
【図１１】同実施形態における探索範囲制御部３４による制御の他の例を示す図である。
【図１２】同実施形態における探索範囲制御部３４および小範囲対応点探索部３３の処理を説明するフローチャートである。
【図１３】同実施形態における探索範囲制御部３４および小範囲対応点探索部３３の処理の別の例を説明するフローチャートである。
【図１４】同実施形態における映像合成処理部２０の機能構成を示す概略ブロック図である。
【図１５】同実施形態における高解像度合成処理部４０３の機能構成を示す概略ブロック図である。
【図１６】本発明の第２の実施形態に係る多眼撮像装置１０ａの機能構成を示す概略ブロック図である。
【図１７】同実施形態における視差算出部２１ａの機能構成を示す概略ブロック図である。
【図１８】同実施形態における探索範囲制御部３４ａによる制御の例を説明する図である。
【図１９】同実施形態における探索範囲制御部３４ａによる制御の他の例を説明する図である。
【図２０】本発明の第３の実施形態に係る多眼撮像装置１０ｂの機能構成を示す概略ブロック図である。
【図２１】同実施形態における視差算出部２１ｂの機能構成を示す概略ブロック図である。
【図２２】同実施形態における探索範囲制御部３４ｂによる制御の例を説明する図である。
【図２３】同実施形態における探索範囲制御部３４ｂによる制御の他の例を説明する図である。
【図２４】同実施形態における探索範囲制御部３４ｂによる制御の他の例を説明する図である。
【図２５】同実施形態における探索範囲制御部３４ｂによる制御の他の例を説明する図である。
【図２６】本発明の第４の実施形態に係る視差算出部２１ｃの機能構成を示す概略ブロック図である。
【図２７】同実施形態における探索範囲制御部３４ｃによる制御の例を説明する図である。
【発明を実施するための形態】
【００１７】
［第１の実施形態］
本発明の第１の実施形態について、図面を参照して詳細に説明する。図１は、本発明の第１の実施形態に係る多眼撮像装置１０の概観を示す外観図である。図１に示すように、本実施形態における多眼撮像装置１０は、４系統の撮像部１０１、１０２、１０３、１０４を含んで構成される。撮像部１０１は、多眼撮像装置１０の正面に向かって、左側上段に配置されている。撮像部１０２は、右側上段に配置されている。撮像部１０３は、左側下段に配置されている。撮像部１０４は、右側下段に配置されている。なお、撮像部１０１、１０２、１０３、１０４の間の横方向および上下方向の距離は同じ、すなわち、撮像部１０１、１０２、１０３、１０４は正方形の各頂点に配置されている。
【００１８】
図２は、多眼撮像装置１０の機能構成を示す概略ブロック図である。多眼撮像装置１０は、撮像部１０１、１０２、１０３、１０４、映像合成処理部２０、視差算出部２１、イメージセンサ制御部２２、ＡＦ（Auto Focus）制御部２３、撮影モード設定部２４を含んで構成される。撮像部１０１、１０２、１０３、１０４の各々は、フォーカス機能を有する撮像レンズ群１１と、撮像レンズ群１１により、撮像面に結像したイメージを光電変換して映像信号として出力するイメージセンサ１２（例えばＣＭＯＳ（Complementary Metal Oxide Semiconductor）イメージセンサなど）を備える。なお、撮像部１０１は、映像信号ＲＵを出力し、撮像部１０２は、映像信号ＬＵを出力し、撮像部１０３は、映像信号ＲＤを出力し、撮像部１０４は、映像信号ＬＤを出力する。
【００１９】
撮像レンズ群１１は光軸方向に移動可能に配置されており、撮像レンズ群１１が光軸方向に移動することによって、撮像部の焦点を調整し、被写体からの光をイメージセンサ１２上に結像する。なお、撮像部１０１、１０２、１０３、１０４の各々は、図示していないモータを搭載しており、その動力で撮像レンズ群１１を移動させる。
撮影モード設定部２４は、ユーザの設定入力に従い、風景撮影、人物ポートレイト撮影、接写撮影（マクロ撮影）などの撮影モードを、設定する。イメージセンサ制御部２２は、撮影モード設定部２４からの撮影モードの設定に基づき、各撮像部１０１、１０２、１０３、１０４のイメージセンサ１２の撮影画素数やフレームレートの設定を行い、設定した画素数やフレームレートなどのイメージセンサ制御情報を視差算出部２１に出力する。
【００２０】
ＡＦ制御部２３は、入力された撮像部１０１の映像信号ＲＵの輝度情報からコントラスト値を算出し、コントラスト値が増加する方向に撮像レンズ群１１を所定量ずつ移動して、コントラスト値が増加しなくなる位置、即ち、コントラスト値が最大となる位置に撮像レンズ群１１を自動調整する。なお、ＡＦ制御部２３は、撮影モード設定部２４からの撮影モードの設定に基づき、撮像レンズ群１１を移動させる際の基点や、移動させる範囲を決定する。また、各撮像部１０１、１０２、１０３、１０４には、ＡＦ制御部２３から同じ駆動信号が入力されるため、各撮像部１０１、１０２、１０３、１０４のフォーカス位置が全て同じになるように制御される。
尚、本実施形態のＡＦ制御部２３は、撮像した映像信号のコントラスト値を評価値としてＡＦ制御を行なうとして説明したが、その他に赤外線や超音波を照射してその射波が戻るまでの時間や照射角度により距離を検出する、所謂アクティブ方式によるＡＦ方式でＡＦ制御を行うようにしてもよい。
【００２１】
４つの撮像部１０１、１０２、１０３、１０４が出力した４系統の映像信号ＲＵ、ＬＵ、の全ては映像合成処理部２０に入力される。更に、２つの撮像部１０１と１０２で撮影された映像信号ＲＵ、ＬＵは視差算出部２１にも入力される。視差算出部２１は入力された２つの映像信号間の対応画素探索を行い、その探索結果から２つの撮像部間の視差データＤ（距離データと等価）を算出して映像合成処理部２０に出力する。映像合成処理部２０は入力された視差データＤに基づき、映像信号ＲＵ、ＬＵ、ＲＤ、ＬＤを合成処理して、縦方向および横方向の解像度が映像信号ＲＵなどの２倍の高精細映像を生成し、その映像信号である高精細映像信号Ｇを出力する。
【００２２】
図３は、視差算出部２１の機能構成を示す概略ブロック図である。視差算出部２１は、図２に示す撮像部１０１が出力した映像信号ＲＵが表す画像（以下、基準画像という）と、撮像部１０２が出力した映像信号ＬＵが表す画像（以下、参照画像という）から、視差データを算出する。視差算出部２１は、座標変換部３１、座標変換部３２、小範囲対応点探索部３３、探索範囲制御部３４を含んで構成される。２つの座標変換部３１、３２は、基準画像と参照画像の画像平面を同一平面上に乗せることを目的に、両方の画像を幾何学変換（座標変換）してエピポーララインを平行化する。なお、座標変換部３１が、基準画像、すなわち映像信号ＲＵの画像を変換し、座標変換部３２が、参照画像、すなわち映像信号ＬＵの画像を変換する。座標変換部３１は、カメラパラメータ記憶部３０−１を備える。カメラパラメータ記憶部３０−１は、撮像部１０１固有の焦点距離やレンズ歪みパラメータなどの内部パラメータ、および４つの撮像部１０１、１０２、１０３、１０４間の位置関係を表す外部パラメータを予め保持している。
【００２３】
同様に、座標変換部３２は、カメラパラメータ記憶部３０−２を備える。カメラパラメータ記憶部３０−２は、撮像部１０２固有のカメラパラメータ（内部パラメータ、外部パラメータ）を保持している。座標変換部３１、３２は、エピポーララインが平行となった基準画像と参照画像の映像信号を、小範囲対応画素探索部３３に出力する。小範囲対応画素探索部３３は、エピポーララインが平行となった基準画像の各画素に対応する参照画像中の画素を、探索範囲制御部３４に指定された画素から、小範囲対応画素探索部３３に予め設定された画素数αで決まる所定の範囲（探索範囲）を探索して検出する。小範囲対応画素探索部３３は、基準画像の各画素から、検出した対応する画素までの画像中の距離を、その基準画像の画素における視差データＤとして出力する。探索範囲制御部３４は、イメージセンサ制御部２２が出力したイメージセンサ制御情報Ｃと、撮影モード設定部２４が出力した撮影モードＭとに基づき、小範囲対応点探索部３３における探索処理にて探索する範囲を決定し、小範囲対応点探索部３３に出力する。なお、探索範囲制御部３４および小範囲対応点探索部３３の詳細については、後述する。
【００２４】
図４〜図７を用いて、小範囲対応画素探索部３３による対応画素の探索処理、すなわちステレオマッチング処理を説明する。図４は、エピポーラライン平行化後の参照画像ＲＧを示す図である。図５は、エピポーラライン平行化後の基準画像ＢＧを示す図である。基準画像ＢＧ上の画素に対応する参照画像ＲＧ上の画素（対応画素）を求めるための基準画像ＢＧ上の注目画素の移動方法について、図５を参照して説明する。小範囲対応画素探索部３３は、基準画像ＢＧ上の注目画素を中心とするブロック（以下、基準注目ブロックＢＢという）を画像左上端（開始ブロックＢＳ）からライン方向に右側へ１画素毎に移動させ、移動させた基準注目ブロックＢＢがラインの右端に到達した場合は、１ライン下の左端からライン方向に右側へ基準注目ブロックＢＢを移動させる。これを、基準注目ブロックＢＢが、基準画像ＢＧの右下端のブロック（終了ブロックＢＥ）に来るまで繰り返す。
【００２５】
次に、小範囲対応画素探索部３３が、図５に示す基準画像ＢＧのある１つの基準注目ブロックＢＢに類似する参照画像ＲＧ上のブロックを探索する処理動作について、図４を参照して説明する。小範囲対応画素探索部３３は、探索範囲制御部３４から指定された座標のブロック（探索開始ブロック）から、ライン方向に右側へ参照注目ブロックＲＢを１画素毎に移動させていき、探索開始ブロックＲＳから探索範囲だけライン方向に離れたブロックである探索終了ブロックＲＥまで繰り返す。この参照注目ブロックの探索を、小範囲対応画素探索部３３は、図５に示す基準注目ブロックＢＢの各々について行う。なお、図４では、探索開始ブロックＲＳは、図５に示す基準画像ＢＧ上の基準注目ブロックＢＢの座標（ｘ、ｙ）と同じ座標となる参照画像ＲＧ上のブロック（最小視差ブロック）となっている。
【００２６】
図４に示す最大視差探索範囲は、撮像部１０１〜１０４が撮影可能な（焦点が合う）距離の範囲である。図５の基準注目ブロックと同じ座標にある最小視差ブロックが最も遠い位置（無限遠）に対応し、図４の最大視差ブロックが最も近い距離に対応する。図４に示すように小範囲対応画素探索部３３の探索範囲は全視差探索範囲よりも小さい範囲となっている。探索する範囲は処理量とメモリ量に大きく関係しており、小範囲対応画素探索部３３のように探索範囲を小さく設定することによって、処理量とメモリ量を小さく抑えることが可能となる。
【００２７】
次に、基準注目ブロックと類似する参照注目ブロックの決定方法について図６および図７を参照して説明する。図７は、基準注目ブロックＢＢを示しており、基準画像ＢＧ上の注目画素を中心とする横Ｍ×縦Ｎのサイズのブロックである。図６は、参照注目ブロックＲＢを示しており、参照画像ＲＧ上の注目画素を中心とする横Ｍ×縦Ｎのサイズのブロックである。図６に示す参照注目ブロックＲＢおよび図７に示す基準注目ブロックＢＢ上の任意の画素を表すために、横方向をｉ、縦方向をｊとした時の座標（ｉ、ｊ）の画素値をそれぞれＲ（ｉ、ｊ）、Ｔ（ｉ、ｊ）とする。本実施形態では、類似度を求める方法として、一般的に多く用いられているＳＡＤ（Sum of Absolute Difference）を用いる。ＳＡＤは、（１）式に示す類似度判定式のようにＲ（ｉ、ｊ）とＴ（ｉ、ｊ）の差分の絶対値をブロックの全画素について求め、それを合計した値（ＳＳＡＤ）である。
【００２８】
【数１】
2012060512.tif 000003
【００２９】
小範囲対応画素探索部３３は、前述した図４に示す参照画像ＲＧ上の探索範囲内の各参照注目ブロックＲＢの中でＳＳＡＤの値が最も小さくなる参照注目ブロックを、基準注目ブロックＢＢと類似していると決定する。そして、小範囲対応画素探索部３３は、類似していると決定した参照注目ブロックＲＢの中心の画素を、基準注目ブロックＢＢの中心の画素（注目画素）に対応する画素とする。尚、本実施形態では、基準画像ＢＧ上の注目画素に類似する参照画像ＲＧ上の画素をＳＡＤの類似度評価関数で探索したが、この手法に限定されるものではなく、基準画像上と参照画像上の類似画素を探索する手法であればどのような手法を使用して、視差データを求めても良い。
【００３０】
この探索開始ブロックの座標は、探索範囲制御部３４により、小範囲対応画素探索部３３に設定される。図３及び図８を用いて探索範囲制御部３４による制御方法の例を説明する。図３に示すように、探索範囲制御部３４には、イメージセンサ制御情報Ｃが入力されている。探索範囲制御部３４は、入力されたイメージセンサ制御情報Ｃから得られる撮影映像の画素数から全視差探索範囲の画素数を算出する。全視差探索範囲の算出とは、最大視差が撮影画素何画素分に相当するかを算出することである。最大視差は、カメラの焦点距離（ＦＬ）、撮影できる最も近い距離（ＭＤ）、２台のカメラ間距離（ＣＩ）から決まり、最大視差＝ＦＬ×ＣＩ／ＭＤである。従って、イメージセンサの横幅がＷで、撮影画素は６４０×４８０画素の場合、全視差探索範囲＝最大視差×６４０画素／Ｗとなる。該画素数を小範囲対応画素探索部３３の探索範囲（予め設定された画素数α）で割り、全視差探索範囲（最小視差ブロックＳＤから最大視差ブロックＭＤ）を探索するには小範囲対応画素探索部３３を何回実行する必要があるかを算出する。
【００３１】
図８は、全視差探索に必要な小範囲対応画素探索部３３の実行回数が４回と算出された例を示すものである。図８に示すように探索する範囲をずらしながら、探索範囲１から４まで４回実行するように、探索範囲制御部３４は、小範囲対応画素探索部３３を制御する。小範囲対応画素探索部３３は、この４回の実行のうち、最もＳＳＡＤの値が最も小さくなる参照注目ブロックを、基準注目ブロックＢＢと類似していると決定する。この制御方法は、小範囲対応画素探索部３３による探索を複数回実行するため処理時間は長くなるが、実行１回当たりのメモリ使用量が少ないため、従来よりも少ない処理量で最も遠い距離から最も近い距離までの全ての視差を探索することが可能である。
【００３２】
また、全視差探索範囲の全てを探索するのではなく、撮影モード設定部２４が出力する撮影モードの情報に応じて、その一部分を探索するよう制御することも可能である。例えば、撮影モードが、遠景の撮影を対象としている風景モードであるときは、探索範囲制御部３４は、図９に示すように最小視差ブロックＳＤを探索開始ブロックに設定する。これにより、探索範囲制御部３４は、最小視差ブロックＳＤの位置から１回のみ探索するように小範囲対応画素探索部３３を設定することになる。このため、小範囲対応画素探索部３３は、小さい視差範囲（即ち遠い撮影距離にある被写体）のみを探索する。
【００３３】
また、例えば、撮影モードが、接写撮影など小さい物体に近づいて撮影する接写撮影モードであるときは、探索範囲制御部３４は、図１０に示すように、最大視差ブロックから予め設定された画素数αだけ左側のブロックを探索開始ブロックＲＳに設定する。これにより、探索範囲制御部３４は、全視差探索範囲の最大視差ブロックの位置まで１回のみ探索するように小範囲対応画素探索部３３を設定することになる。このため、小範囲対応画素探索部３３は、大きい視差範囲（即ち近い撮影距離にある被写体）のみを探索する。
【００３４】
また、例えば、撮影モードが、人物を撮影するポートレートモードなど、被写体が中間位置にあるモードであれば、探索範囲制御部３４は、図１１に示すように、全視差探索範囲の中心から、予め設定された画素数αの半分だけ左側のブロックを探索開始ブロックＲＳに設定する。これにより、探索範囲制御部３４は、全視差探索範囲の中心部分を１回だけ探索するように小範囲対応画素探索部３３を設定することになる。このため、小範囲対応画素探索部３３は、中間位置にある被写体のみを探索する。
【００３５】
探索範囲制御部３４および小範囲対応点探索部３３が１画面分の視差データを生成する流れを図１２に示す処理フローを参照して説明する。まず、探索範囲制御部３４は、小範囲対応点探索部３３の探索範囲と実行回数を決定する（ステップＳ９００）。ここでは図８〜図１１で説明したように、入力されるイメージセンサ制御情報の画素数や撮影モードを用いて、探索範囲と実行回数を決定する。続いて、決定した探索範囲と、基準注目ブロックの位置とに基づき、探索開始ブロックを設定して小範囲対応点探索部３３を実行させる（ステップＳ９０１）。小範囲対応点探索部３３は、この実行後、ＳＡＤ最小値と視差データを得て記憶する（ステップＳ９０２）。次に、探索範囲制御部３４は、ステップＳ９００で決定した回数だけ小範囲対応点探索部３３を実行したか否かを判定し（ステップＳ９０３）、実行していなければ小範囲対応点探索部３３に、次の探索開始ブロックを設定して（ステップＳ９０４）、ステップＳ９０２に戻る。
【００３６】
これらステップＳ９０２からステップＳ９０４を実行回数分繰り返した後、小範囲対応点探索部３３は、実行回数分記憶したＳＡＤ最小値の中から最小のＳＡＤ値を選択し、視差データＤとして出力する（ステップＳ９０５）。最後に、探索範囲制御部３４は、１画面分の処理が終了したか否かを判定する（ステップＳ９０６）。この判定の結果、終了していなければ、探索範囲制御部３４は、基準注目ブロックを１画素移動して（ステップＳ９０７）、ステップＳ９０１に戻る。ステップＳ９０６の判定の結果、終了している、すなわち基準注目ブロックが基準画像の終了ブロックとなっていたら、処理を衆力する。これにより、基準画像上の各画素の視差データを求める。
【００３７】
図１２のフローチャートでは、画素単位で探索範囲を変更しながら小範囲対応点探索部３３を複数回実行して視差値を算出する処理を説明したが、画面単位で探索範囲を変更するようにしてもよい。この場合の処理を、図１３のフローチャートを用いて説明する。尚、図１２と同じ処理ステップには同じ符号を用いる。Ｓ９００からＳ９０２までの処理は同じなので、説明を省略する。次に、探索範囲制御部３４は、１画面分の処理が終了したか否かの判定を行う（ステップＳ９０６）、終了していなければ基準注目ブロックと探索範囲を１画素移動して（ステップＳ１０１）、ステップＳ９０２に戻る。これらステップＳ９０２、Ｓ９０６、Ｓ１０１を１画面分の処理が終了するまで繰返した後、ステップＳ９００で決定した回数だけ小範囲対応点探索部３３を実行したか否かを、探索範囲制御部３４は判定する（ステップＳ９０３）。この判定の結果、決定した回数だけ実行していなければ、探索範囲制御部３４は、基準画像の注目ブロックを開始位置に戻し（ステップＳ１０２）、小範囲対応点探索部３３に次の探索範囲を設定して（ステップＳ９０４）、再度、Ｓ９０２、Ｓ９０６、Ｓ１０１の処理を１画面分行う。
【００３８】
実行回数分の繰り返した後、小範囲対応点探索部３３は、各画素で実行回数分のＳＡＤ最小値から最小のＳＡＤ値を選択して、視差データＤとして出力する（ステップＳ１０３）。本処理フローは、図１２の処理フローと比較して、探索範囲の設定をするステップＳ９０４の回数が少なくなる。ステップＳ９０４は探索範囲内の全画素値を読み込みなおす必要があるため処理量が多い。Ｓ９０４の回数を減らすことで処理量軽減が可能となる。尚、図２０では画面単位で探索範囲を更新する例を説明したが、画面単位の他に例えばライン単位や装置が搭載するメモリ単位などで探索範囲を更新する処理フローも可能である。
【００３９】
図１４は、映像合成処理部２０の機能構成を示す概略ブロック図である。映像合成処理部２０は、位置合わせ補正処理部４０１−１、位置合わせ補正処理部４０１−２、位置合わせ補正処理部４０１−３、位置合わせ補正処理部４０１−４、高解像度合成処理部４０３を含んで構成される。また、位置合わせ補正処理部４０１−１は、カメラパラメータ記憶部４０２−１を含んで構成される。位置合わせ補正処理部４０１−２は、カメラパラメータ記憶部４０２−２を含んで構成される。位置合わせ補正処理部４０１−３は、カメラパラメータ記憶部４０２−３を含んで構成される。位置合わせ補正処理部４０１−４は、カメラパラメータ記憶部４０２−４を含んで構成される。
【００４０】
位置合わせ補正処理部４０１−１、４０１−２、４０１−３、４０１−４は、視差算出部２１が出力する視差データＤと、各々が備えるカメラパラメータ記憶部４０２−１、４０２−２、４０２−３、４０２−４が記憶する各撮像部の向きや姿勢やレンズ歪の状態を示すに基づき、映像信号ＲＵ、ＬＵ、ＲＤ、ＬＤの画像間で、同一の座標位置の画素が同じ被写体位置を捕らえるように、映像信号ＲＵ、ＬＵ、ＲＤ、ＬＤの画像を変換する位置合わせを行う。高解像度合成処理部４０３は、４つの位置合わせ補正処理部４０１−１、４０１−２、４０１−３、４０１−４が位置合わせをした画像を用いて、高精細化合成を行い、合成結果の画像を表す高精細映像信号Ｇを出力する。
【００４１】
位置合わせ補正処理部４０１−１〜４０１−４の動作を説明する。カメラパラメータ記憶部４０２−１〜４０２−４が記憶し、各撮像部の向きや姿勢やレンズ歪の状態を示すカメラパラメータは、パターン形状が既知の市松模様チェッカーパターンを姿勢やアングルを変えながら数回撮像して、その撮影画像から算出するカメラキャリブレーションで求めることができる。カメラパラメータは外部パラメータと内部パラメータから構成され、外部パラメータはカメラの姿勢を示すヨー、ピッチ、ロールの３軸ベクトルと、平行移動成分を示す３軸の並進ベクトルの計６パラメータから構成される。また内部パラメータは、画像中心位置、イメージセンサ上で仮定した座標の角度とアスペクト比、焦点距離の５パラメータから構成される。
【００４２】
ここでは撮像部１０１を基準の撮像部として、他の撮像部１０２、１０３、１０４の映像を撮像部１０１の映像に合せるものとして説明する。被写体まで距離を表す視差データＤと、基準の撮像部１０１と、他の撮像部１０２、１０３、１０４との間隔（カメラ基線長）から算出されるシフト量をカメラパラメータの外部パラメータである並進量に加味したパラメータを用いて幾何学補正処理することで、位置合わせ補正処理部４０１−１〜４０１−４は、映像信号ＲＵ、ＬＵ、ＲＤ、ＬＤが表す画像が被写体の同じ点を同じ位置（画素）で捕らえるように位置を合わせることができる。なお、図１４に示すように、位置合わせ補正処理部４０１−１は、映像信号ＲＵを処理し、位置合わせ補正処理部４０１−２は、映像信号ＬＵを処理し、位置合わせ補正処理部４０１−３は、映像信号ＲＤを処理し、位置合わせ補正処理部４０１−４は、映像信号ＬＤを処理する。
【００４３】
次に、高解像度合成処理部４０３による合成処理の一例を図１５に示す。ここでは、４つの撮像部１０１、１０２、１０３、１０４の解像度がＶＧＡ（６４０×４８０画素）で、その４倍の画素数であるＱｕａｄ−ＶＧＡの画素（１２８０×９６０画素）への高解像度化する合成処理を行う場合で説明する。図１５に示すように、Ｑｕａｄ−ＶＧＡの画素（１２８０×９６０画素）の隣接する４つの画素に、異なる撮像部が出力した映像信号に基づく画像ＲＵ１、ＬＵ１、ＲＤ１、ＬＤ１の同一座標の画素を割り当てて合成することで高解像度の画像を得る。ここで、画像ＲＵ１は、位置合わせ補正処理部４０１−１が、映像信号ＲＵを処理して生成した画像である。同様に、画像ＬＵ１は、位置合わせ補正処理部４０１−２が、映像信号ＬＵを処理して生成した画像である。画像ＲＤ１は、位置合わせ補正処理部４０１−３が、映像信号ＲＤを処理して生成した画像である。画像ＬＤ１は、位置合わせ補正処理部４０１−４が、映像信号ＬＤを処理して生成した画像である。
【００４４】
このように、小範囲対応画素探索部３３の探索範囲は全視差探索範囲よりも小さい範囲となっている。探索する範囲は処理量と使用メモリ量に大きく関係しており、探索範囲を小さく設定しているので、ステレオマッチング処理の処理量と使用メモリ量を小さく抑えることができる。
【００４５】
［第２の実施形態］
本発明の第２の実施形態について、図面を参照して詳細に説明する。図１６は、本実施形態に係る多眼撮像装置１０ａの機能構成を示す概略ブロック図である。同図において図２の各部に対応する部分には同一の符号（１０１〜１０４、１１、１２、２０、２３）を付け、その説明を省略する。多眼撮像装置１０ａは、動画を撮像する装置である。多眼撮像装置１０ａは、撮像部１０１、１０２、１０３、１０４、映像合成処理部２０、視差算出部２１ａ、イメージセンサ制御部２２ａ、ＡＦ制御部２３を含んで構成される。イメージセンサ制御部２２ａは、図２のイメージセンサ制御部２２が出力するイメージセンサ制御情報Ｃに、撮像部１０１〜１０４のイメージセンサ１２のフレームレートを示す情報を加えたイメージセンサ制御情報Ｃ’を視差算出部２１aに出力する。視差算出部２１ａは、このイメージセンサ制御情報Ｃ’を用いて、視差データを算出する。
【００４６】
図１７は、視差算出部２１ａの機能構成を示す概略ブロック図である。同図において図３の各部に対応する部分には同一の符号（３０−１、３０−２、３１〜３３）を付け、その説明を省略する。視差算出部２１ａは、座標変換部３１、３２、小範囲対応点探索部３３、探索範囲制御部３４ａを含んで構成される。探索範囲制御部３４ａは、イメージセンサ制御情報Ｃ’に基づき、小範囲対応点探索部３３を制御する。
【００４７】
図１８は、探索範囲制御部３４ａによる小範囲対応点探索部３３の制御方法の例を説明する図である。探索範囲制御部３４ａは、入力されたイメージセンサ制御情報Ｃ’からフレームレートを取得して、１フレーム当たりの処理時間を算出する。その後、探索範囲制御部３４ａは、あらかじめ保持している小範囲対応画素探索部３３の１回当たり処理時間で、１フレーム当たりの処理時間を割って、１フレーム内に処理できる小範囲対応画素探索部３３の処理回数を算出する。更に、探索範囲制御部３４ａは、１フレーム内に処理できる処理回数を、イメージセンサ制御情報Ｃ’から得られる１フレームの画素数で割って、各画素当たりの処理可能な小範囲対応画素探索部３３の実行回数を算出する。
【００４８】
図１８は１画素当たりの処理回数が２回と算出された例を示すものである。この例では、探索範囲制御部３４ａは、全視差探索範囲の中心に探索範囲（探索範囲１、探索範囲２）を設定している。具体的には、探索範囲制御部３４ａは、予め設定された画素数αに処理回数を乗算し、さらに２で割る。探索範囲制御部３４ａは、この２で割った結果の画素数分、全視差探索範囲の中心から左側の位置を、探索範囲１の探索開始ブロックＲＳ１とうし、探索範囲１の探索終了ブロックの位置を、探索範囲２の探索開始ブロックＲＳ２とする。これにより、探索範囲制御部３４ａは、小範囲対応点探索部３３が、全視差探索範囲の中央部分を２回探索するように制御する。この制御方法は、全視差探索範囲すべてを探索することはできないが、撮影した映像の同じフレームレートの動画視差マップを、リアルタイムに出力することが可能となる。
【００４９】
図１９は、探索範囲制御部３４ａによる小範囲対応点探索部３３の制御方法の他の例を説明する図である。図１８では、１フレーム内に処理できる小範囲対応画素探索部３３の処理回数（２回）を連続した探索範囲に設定したが、図１９に示すように、全視差探索範囲で等間隔となるように分散して設定するようにしてもよい。図１９では１回目に小範囲対応画素探索部３３が探索する範囲（探索範囲１）を細線で、２回目に探索する範囲（探索範囲２）を太線で示している。この例では、探索範囲制御部３４ａは、全視差探索範囲を、算出された処理回数＋１個の領域に均等に分割し、領域の各境界から予め設定された画素数αの半分だけ左側の位置を、各探索範囲（探索範囲１、探索範囲２）の探索開始ブロックＲＳ１’、ＲＳ２’とする。このように探索範囲を等間隔に分散して設定することで、全視差探索範囲の大まかに探索した動画視差マップを出力することが可能となる。
【００５０】
視差データを利用する映像処理が動画のリアルタイム処理をする場合は、視差データ算出にもリアルタイム処理が必要になる。例えば、立体映像の立体感を調整しながら撮影を行う場合には、撮影映像の視差データをリアルタイムに算出して立体感調整映像処理を行う必要があり、本実施形態では、それが可能となる。
【００５１】
［第３の実施形態］
本発明の第３の実施形態について、図面を参照して詳細に説明する。図２０は、本実施形態に係る多眼撮像装置１０ｂの機能構成を示す概略ブロック図である。同図において図２の各部に対応する部分には同一の符号（１０１〜１０４、１１、１２、２０、２２）を付け、その説明を省略する。多眼撮像装置１０ｂは、撮像部１０１、１０２、１０３、１０４、映像合成処理部２０、視差算出部２１ｂ、イメージセンサ制御部２２、ＡＦ制御部２３ｂを含んで構成される。ＡＦ制御部２３ｂは、撮像レンズ群１１をフォーカスさせた位置、すなわちレンズとイメージセンサ間の距離を示す焦点位置情報Ｆを、視差算出部２１ｂに出力する。視差算出部２１ｂは、この焦点位置情報Ｆを用いて、視差データＤを算出する。
【００５２】
図２１は、視差算出部２１ｂの機能構成を示す概略ブロック図である。同図において図３の各部に対応する部分には同一の符号（３０−１、３０−２、３１〜３３）を付け、その説明を省略する。視差算出部２１ｂは、座標変換部３１、３２、小範囲対応点探索部３３、探索範囲制御部３４ｂを含んで構成される。探索範囲制御部３４ｂは、イメージセンサ制御情報Ｃおよび焦点位置情報Ｆに基づき、小範囲対応点探索部３３を制御する。
【００５３】
図２１に示すように、探索範囲制御部３４ｂにはＡＦ制御部２３ｂからの焦点位置情報Ｆが入力されている。探索範囲制御部３４は、入力された焦点位置情報Ｆ（焦点を合わせた注目被写体の距離）の視差値を計算する。具体的には、探索範囲制御部３４は、まず、撮像レンズ群１１の焦点距離ｆ（ｍｍ）、焦点位置情報Ｆであるレンズとイメージセンサ１２間の距離ｌ（ｍｍ）を用いて、被写体までの撮影距離Ｌ（ｍｍ）を以下の（１）式を用いて算出する。ここで、焦点位置情報Ｆが表すレンズとイメージセンサ１２間の距離は、レンズ群１１と光学的に等しい架空の凸レンズとイメージセンサ１２間の距離である。次に、探索範囲制御部３４は、算出した撮影距離Ｌと、撮像部１０１と１０２のカメラ間隔ｔ（ｍｍ）、及び焦点距離ｆ（ｍｍ）を用いて、視差値ｄ（ｍｍ）を以下の（２）式を用いて算出する。
【００５４】
【数２】
2012060512.tif 000004
【００５５】
【数３】
2012060512.tif 000005
【００５６】
そして、探索範囲制御部３４は、イメージセンサ１２のピクセルピッチから視差値ｄ（ｍｍ）をピクセル数に換算した視差値ｄｐ（画素）を求める。そして、図２２に示すようにその焦点位置の視差値ｄｐが中心となるように小範囲対応画素探索部３３の探索範囲を設定する。すなわち、探索範囲制御部３４は、視差値ｄｐから予め設定された画素数α（探索範囲）の半分を引いた画素数だけ、全視差探索範囲の左端（最小視差ブロックＳＤの位置）から右側の位置を、探索開始ブロックＲＳの位置とする。
【００５７】
この本実施形態における制御方法により、高精細化映像処理にとって、最も重要な視差データである焦点を合わせた注目被写体の付近の視差データを、少ない処理量と使用メモリ量で算出することができる。
【００５８】
焦点位置情報から得られる視差値を用いた他の制御方法例について、図２３、図２４、図２５を用いて示す。図２３は焦点位置の視差値ｄｐが探索する範囲の中心になるように２回の探索範囲を設定した例である。例えば、１フレーム内に処理できる小範囲対応画素探索部３３の処理回数が２回と計算された場合、図２３に示す制御が有効である。図２４は焦点位置の視差値ｄｐから最小視差ブロックＳＤ側を探索する範囲とするように設定した例である。図２４の例は焦点位置から遠い被写体について視差の探索を行うものであり、例えば風景をバックに撮影をした場合に有効な制御方法である。反対に図２５は焦点位置の視差値ｄｐから最大視差ブロックＭＤ側を探索する範囲とするように設定した例である。図２５の例は焦点位置から近い被写体について視差の探索を行うものであり、例えば手前に物を置きその後に人物を撮影した場合などに有効な制御方法である。
【００５９】
なお、これらの制御方法のいずれを選択するかを、第１の実施形態と同様に、ユーザが設定する撮影モードに応じて決定するようにしてもよい。
また、ＡＦ制御部２２ｂは、オートフォーカスにより焦点位置を調整し、その焦点位置を示す焦点位置情報Ｆを視差算出部２１ｂに出力するとして説明したが、マニュアルフォーカスにより調整された焦点位置を示す焦点位置情報を出力するようにしてもよい。
【００６０】
［第４の実施形態］
本発明の第４の実施形態について、図面を参照して詳細に説明する。本実施形態における多眼撮像装置１０ｃは、図２０に示す多眼撮像装置１０ｂと同様の構成であるが、視差算出部２１ｂに変えて、視差算出部２１ｃを有する点のみが異なる。図２６は、本実施形態に係る視差算出部２１ｃの機能構成を示す概略ブロック図である。同図において図２１の各部に対応する部分には同一の符号（３０−１、３０−２、３１〜３３）を付け、その説明を省略する。視差算出部２１ｃは、座標変換部３１、３２、小範囲対応点探索部３３、探索範囲制御部３４ｃを含んで構成される。
【００６１】
探索範囲制御部３４ｃは、撮影距離毎に、撮像レンズ群１１の光学仕様から得られる被写界深度の値をテーブルで保持している。探索範囲制御部３４ｃは、入力された焦点位置情報Ｆ（焦点を合わせた注目被写体の距離）を用いて、被写体までの撮影距離を算出し、テーブルを参照して被写界深度に応じた視差範囲を取得する。そして、図２７に示すようにその被写界深度の視差範囲を埋めるように、小範囲対応画素探索部３３の探索範囲を設定する。この制御方法は、焦点が合っている全ての被写体の視差を探索することができる。
【００６２】
なお、上述の各実施形態において、生成した視差データを用いる映像処理として高精細化合成処理（映像合成処理部２０）を挙げて説明したが、これに限らず、その他の映像処理であってもよい。
また、第１、第３、第４の各実施形態における多眼撮像装置は、静止画を撮像する装置であってもよいし、動画を撮像する装置であってもよい。
また、上述の各実施形態において、小範囲対応画素探索部３３は、予め設定された画素数αを探索範囲の幅とし、探索範囲制御部から探索の開始位置を設定されるとして説明したが、探索範囲制御部が、小範囲対応画素探索部３３が探索する開始位置と探索する幅とを制御するようにしてもよい。
【００６３】
また、各実施形態における視差算出部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより視差算出部の処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。
【００６４】
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【００６５】
以上、この発明の実施形態を図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計変更等も含まれる。
【産業上の利用可能性】
【００６６】
複数の撮像部を有するデジタルスチルカメラおよびデジタルビデオカメラに用いて好適であるが、これらに限定されない。
【符号の説明】
【００６７】
１０、１０ａ、１０ｂ、１０ｃ…多眼撮像装置
１０１、１０２、１０３、１０４…撮像部
１１…撮像レンズ群
１２…イメージセンサ
２０…映像合成処理部
２１、２１ａ、２１ｂ、２１ｃ…視差算出部
２２、２２ａ、…イメージセンサ制御部
２３、２３ｂ…ＡＦ制御
２４…撮影モード制御部
３０−１、３０−２…カメラパラメータ記憶部
３１、３２…座標変換部
３３…小範囲対応点探索部
３４、３４ａ、３４ｂ、３４ｃ…探索範囲制御部
【図１】
2012060512.tif 000006
【図２】
2012060512.tif 000007
【図３】
2012060512.tif 000008
【図４】
2012060512.tif 000009
【図５】
2012060512.tif 000010
【図６】
2012060512.tif 000011
【図７】
2012060512.tif 000012
【図８】
2012060512.tif 000013
【図９】
2012060512.tif 000014
【図１０】
2012060512.tif 000015
【図１１】
2012060512.tif 000016
【図１２】
2012060512.tif 000017
【図１３】
2012060512.tif 000018
【図１４】
2012060512.tif 000019
【図１５】
2012060512.tif 000020
【図１６】
2012060512.tif 000021
【図１７】
2012060512.tif 000022
【図１８】
2012060512.tif 000023
【図１９】
2012060512.tif 000024
【図２０】
2012060512.tif 000025
【図２１】
2012060512.tif 000026
【図２２】
2012060512.tif 000027
【図２３】
2012060512.tif 000028
【図２４】
2012060512.tif 000029
【図２５】
2012060512.tif 000030
【図２６】
2012060512.tif 000031
【図２７】
2012060512.tif 000032