(57)【特許請求の範囲】
【請求項１】
複数の撮像部と、
同時撮像を行なう２つ以上の撮像部を備える第一の撮像部群と、同時撮像を行い前記第一の撮像部群に含まれない２つ以上の撮像部を備える第二の撮像部群と、を含む、前記複数の撮像部中の複数の撮像部群の撮像タイミングを制御する撮像タイミング制御部であって、前記第一の撮像部群は前記第二の撮像部群と異なるタイミングで撮像を行なう、撮像タイミング制御部と、
前記同時撮像によって得られた画像データから前記第一の撮像部群の撮像タイミングと前記第二の撮像部群の撮像タイミングとにおける被写体の距離情報を推定する距離推定部と、
前記複数の撮像部によって撮像された画像データと前記距離推定部で推定された距離情報とから仮想視点画像データを合成する仮想視点画像合成部と
を有することを特徴とする撮像装置。
【請求項２】
前記距離推定部で推定された距離情報に基づいて、前記第一の撮像部群及び前記第二の撮像部群の各撮像タイミングにおける前記複数の撮像部の位置を推定する位置推定部をさらに有し、
前記仮想視点画像合成部は、前記位置推定部で推定された位置に基づいて前記仮想視点画像データを合成することを特徴とする請求項１に記載の撮像装置。
【請求項３】
異なる動きを表す複数の被写体を前記距離推定部で推定された距離情報に応じて分類する分類部をさらに有し、
前記仮想視点画像合成部は、前記分類部で分類された前記複数の被写体に対応する複数の仮想視点画像データを合成することを特徴とする、請求項１または２に記載の撮像装置。
【請求項４】
前記複数の仮想視点画像データを統合することにより統合された画像データを生成する仮想視点画像統合部をさらに有することを特徴とする請求項３に記載の撮像装置。
【請求項５】
前記仮想視点画像合成部は、
前記第一の撮像部群によって撮像された画像データと、前記第一の撮像部群の撮像タイミングにおける被写体の前記距離情報とに基づいて、前記第一の撮像部群の撮像タイミングに対応する第一の仮想視点画像データを合成し、
前記第二の撮像部群によって撮像された画像データと、前記第二の撮像部群の撮像タイミングにおける前記被写体の前記距離情報とに基づいて、前記第二の撮像部群の撮像タイミングに対応する第二の仮想視点画像データを合成することを特徴とする請求項１から４のいずれか一項に記載の撮像装置。
【請求項６】
前記仮想視点画像合成部は、前記複数の撮像部の各々によって撮像された最新の画像データから前記仮想視点画像データを合成することを特徴とする請求項１から５のいずれか一項に記載の撮像装置。
【請求項７】
前記第一の撮像部群の撮像タイミングと前記第二の撮像部群の撮像タイミングとの間の撮像間隔は、前記第一の撮像部群及び前記第二の撮像部群に備えられている各カメラのフレーム間隔よりも短いことを特徴とする請求項１から６のいずれか一項に記載の撮像装置。
【請求項８】
前記仮想視点画像合成部によって合成される前記仮想視点画像データは、一定のサイズの開口を有する撮像部によって撮像された画像を表すことを特徴とする請求項１から７のいずれか一項に記載の撮像装置。
【請求項９】
第一のタイミングにおいて互いに異なる視点からの同時撮像を行なう複数の撮像部を備える第一の撮像部群と、
前記第一の撮像部群に含まれない複数の撮像部を備え、前記第一のタイミングと異なる第二のタイミングにおいて互いに異なる視点からの同時撮像を行なう第二の撮像部群と、
前記第一のタイミングにおいて前記第一の撮像部群によって同時撮像された複数の画像を含む第一の画像群を用いることによって前記第一のタイミングにおける被写体の距離を示す第一の距離情報を推定し、前記第二のタイミングにおいて前記第二の撮像部群によって同時撮像された複数の画像を含む第二の画像群を用いることによって前記第二のタイミングにおける前記被写体の距離を示す第二の距離情報を推定する、距離推定部と、
前記第一の距離情報及び前記第一の画像群を用いることによって前記第一のタイミングに対応する第一の仮想視点画像データを合成し、前記第二の距離情報及び前記第二の画像群を用いることによって前記第二のタイミングに対応する第二の仮想視点画像データを合成する、仮想視点画像合成部とを有し、
前記第一の撮像部群は前記第二の撮像部群と共に同時撮像を行なわず、かつ、前記第一の撮像部群と前記第二の撮像部群との間の撮像間隔は、前記第一の撮像部群及び前記第二の撮像部群に含まれる各撮像部の個々のフレーム間隔よりも短いことを特徴とする撮像装置。
【請求項１０】
複数の撮像部を制御する情報処理装置であって、
同時撮像を行なう２つ以上の撮像部を備える第一の撮像部群と、同時撮像を行い前記第一の撮像部群に含まれない２つ以上の撮像部を備える第二の撮像部群と、を含む、前記複数の撮像部中の複数の撮像部群の撮像タイミングを制御する撮像タイミング制御部であって、前記第一の撮像部群は前記第二の撮像部群と異なるタイミングで撮像を行なう、撮像タイミング制御部と、
前記同時撮像によって得られた画像データから前記第一の撮像部群の撮像タイミングと前記第二の撮像部群の撮像タイミングとにおける被写体の距離情報を推定する距離推定部と、
前記複数の撮像部によって撮像された画像データと前記距離推定部で推定された距離情報とから仮想視点画像データを合成する仮想視点画像合成部と
を有することを特徴とする情報処理装置。
【請求項１１】
複数の撮像部を有する撮像装置の制御方法であって、
同時撮像を行なう２つ以上の撮像部を備える第一の撮像部群と、同時撮像を行い前記第一の撮像部群に含まれない２つ以上の撮像部を備える第二の撮像部群と、を含む、前記複数の撮像部中の複数の撮像部群の撮像タイミングを制御する撮像タイミング制御
ステップであって、前記第一の撮像部群は前記第二の撮像部群と異なるタイミングで撮像を行なう、撮像タイミング制御ステップと、
前記同時撮像によって得られた画像データから前記第一の撮像部群の撮像タイミングと前記第二の撮像部群の撮像タイミングとにおける被写体の距離情報を推定する距離推定ステップと、
前記複数の撮像部によって撮像された画像データと前記距離推定ステップで推定された距離情報とから仮想視点画像データを合成する仮想視点画像合成ステップと
を有することを特徴とする撮像装置の制御方法。
【請求項１２】
コンピュータを請求項１から９のいずれか一項に記載の撮像装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の撮像部で撮像した画像を用いて、仮想視点画像を合成する撮像装置に関するものである。
【背景技術】
【０００２】
従来、デジタルカメラにおいて、取得できる画像の分解能、ボケ味、画角、視点などは、撮像に用いるカメラの光学系や撮像素子の特性と配置とによって、その取り得る範囲が制限されていた。ユーザーにとっては、１つの装置で様々な条件の画像の取得が可能であるほど利便性が高く、そのような特性を持った撮像装置は常に望まれている。
【０００３】
このような要求に対して、視点の異なる複数のカメラで撮像した画像を用いて、あたかも一つの仮想的なカメラで撮影したかのような画像を合成することで、個々のカメラにおける前述の制限を超えるような画像の取得を可能にする技術が存在する。このように仮想的なカメラで撮影したかのような画像を合成したものを、仮想視点画像という。非特許文献１では、複数のカメラで撮像した画像を用いて、仮想的な視点を有するカメラから撮像したかのような画像を合成する方法が開示されている。また、非特許文献２では、複数のパンフォーカスに近いカメラで撮像した画像から、一定の開口を有するカメラで撮像したかのような画像を合成する方法が開示されている。
【０００４】
一方、ビデオカメラなどの動画撮影装置では、取得できる映像のフレームレートも、撮像装置の特性を性格づける重要な要素である。非特許文献３では、複数のカメラでタイミングをずらしながら撮像を行い、被写体がカメラから一定の距離の平面上にあると仮定して幾何変換を行うことで、個々のカメラの性能を超えるフレームレートの映像を合成する技術が公開されている。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】Steven J. Gortler et al., “The lumigraph”, SIGGRAPH 96, pp 43-54, (1996)
【非特許文献２】A. Isaksen et. al., “Dynamically Reparameterized Light Fields”, ACM SIGGRAPH, pp. 297-306 (2000).
【非特許文献３】Wilburn et. al., “High-Speed Videography Using a Dense Camera Array”, CVPR’04
【非特許文献４】C.Harris and M.Stephens, "A combined corner and edge detector". Proceedings of the 4th Alvey Vision Conference. pp. 147-151. (1988)
【非特許文献５】David G. Lowe, “Distinctive Image Features from Scale-Invariant Keypoints”, International Journal of Computer Vision 60(2), pp.91-110, 2004
【発明の概要】
【発明が解決しようとする課題】
【０００６】
非特許文献１及び非特許文献２のような技術に基づいて、複数のカメラから仮想視点画像を生成する動画撮影系において、非特許文献３のようなタイミングずらしの撮像を行うことでフレームレート性能を向上させることが考えられる。非特許文献１及び非特許文献２のような技術はカメラの位置・姿勢が既知であることを前提としている。そのため、カメラの位置・姿勢が変化する手持ちカメラなどで非特許文献３のようにタイミングをずらして撮像を行う場合、カメラ間の位置・姿勢の関係を推定する必要がある。カメラ間の位置・姿勢の関係は射影幾何学における基礎行列を計算することで推定が可能であるが、画像間の対応点探索の誤りや動被写体の存在により推定精度が低下するという問題があった。
【課題を解決するための手段】
【０００７】
本発明に係る撮像装置は、複数の撮像部と、同時撮像を行なう２つ以上の撮像部を備える第一の撮像部群と、同時撮像を行い前記第一の撮像部群に含まれない２つ以上の撮像部を備える第二の撮像部群と、を含む、前記複数の撮像部中の複数の撮像部群の撮像タイミングを制御する撮像タイミング制御部であって、前記第一の撮像部群は前記第二の撮像部群と異なるタイミングで撮像を行なう、撮像タイミング制御部と、前記同時撮像によって得られた画像データから前記第一の撮像部群の撮像タイミングと前記第二の撮像部群の撮像タイミングとにおける被写体の距離情報を推定する距離推定部と、前記複数の撮像部によって撮像された画像データと前記距離推定部で推定された距離情報とから仮想視点画像データを合成する仮想視点画像合成部とを有することを特徴とする。
【発明の効果】
【０００８】
本発明は、複数の撮像部で撮像した画像を用いて、仮想視点映像を合成する動画撮影系において、各撮像部の位置・姿勢の推定精度を保ちながら、フレームレート性能を向上させる効果を奏する。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施形態１に係る複数のカメラからなる撮像装置の一例を表す模式図である。
【図２】本発明の実施形態１に係る撮像装置の構成の一例を表すブロック図である。
【図３】本発明の実施形態１に係る撮像部の構成の一例を表すブロック図である。
【図４】本発明の実施形態１に係るデジタル信号処理部の構成の一例を表すブロック図である。
【図５】本発明の実施形態１に係る撮像装置による撮像の手順の一例を表すフローチャートである。
【図６】本発明の実施形態１に係る撮像タイミング制御部が生成する撮像タイミングを説明する模式図である。
【図７】本発明の実施形態１の画像合成部の構成の一例を表すブロック図である。
【図８】本発明の実施形態１の画像合成処理の一例を表すフローチャートである。
【図９】本発明の実施形態に係る距離情報算出方法の一例を表すフローチャートである。
【図１０】本発明の実施形態に係る算出されるカメラの動きとカメラの関係を説明する模式図である。
【図１１】本発明の実施形態２の画像合成部の構成の一例を表すブロック図である。
【図１２】本発明の実施形態２の画像合成処理の一例を表すフローチャートである。
【図１３】本発明の実施形態に係る複数の剛体被写体からなるシーンの動き推定処理の一例を表すフローチャートである。
【図１４】本発明の実施形態３の画像合成部の構成の一例を表すブロック図である。
【図１５】本発明の実施形態３の画像合成処理の一例を表すフローチャートである。
【発明を実施するための形態】
【００１０】
＜＜実施形態１＞＞
＜撮像装置の全体構成＞
図１は、本発明における実施形態１に係る複数のカメラからなる撮像装置の模式図の一例である。撮像装置は、カメラボディ１０１を有する。図１（ａ）が撮像装置の前面の図であり図１（ｂ）が撮像装置の背面の図である。カメラ１０５〜１２０は、撮像装置の前面に格子状に配置されている。撮像装置は、撮影ボタン１０２、ディスプレイ１０３、操作ボタン１０４をさらに有する。操作ボタン１０４とディスプレイ１０３とを用いて設定を行い、撮影ボタン１０２を押下することで、カメラ１０５〜１２０による撮像が行われる。取得した画像を用いて画像合成を行った結果はディスプレイ１０３に表示される。以降このような複数のカメラからなる撮像装置を多眼カメラと呼ぶ。
【００１１】
図２は、図１の多眼カメラの各処理部を表している。バス２１７を介して、各処理部は相互に情報や信号の受け渡しを行う。
【００１２】
ＣＰＵ２２０は、各構成の処理全てに関わり、ＲＯＭ２１８やＲＡＭ２１９に格納された命令を順に読み込み、解釈し、その結果に従って処理を実行する。また、ＲＯＭ２１８とＲＡＭ２１９は、その処理に必要なプログラム、データ、作業領域などをＣＰＵ２２０に提供する。
【００１３】
操作部２２３は、ボタンやダイヤルなどが該当し、図１の操作ボタン１０４及び撮影ボタン１０２に相当する。撮像装置は、これらを介してユーザーの指示を受け取る。操作部２２３、ＲＯＭ２１８、ＲＡＭ２１９、ＣＰＵ２２０、後述の表示制御部２２１、表示部２２２、ＣＧ生成部２２６が連携することで、ユーザーインターフェースが実現される。撮像時の焦点距離、絞り、露光時間などのパラメータ設定や、撮像した画像の表示設定、ユーザーによる撮影の開始指示などは、ユーザーインターフェースを介して行われる。
【００１４】
撮像部２０１〜２１６は、図１のカメラ１０５〜１２０に相当し、撮像タイミング制御部２２９から発せられた撮像指示に基づいて撮像を行う。図３を用いて撮像部２０１〜２１６の詳細を説明する。撮像部２０１〜２１６のカメラ部分は、ズームレンズ３０１、フォーカスレンズ３０２、絞り３０３、シャッター３０４、光学ローパスフィルタ３０５、ＩＲカットフィルタ３０６、カラーフィルタ３０７、ＣＭＯＳやＣＣＤなどの撮像素子３０８などから構成される。撮像素子３０８は被写体の像の光量を電気信号に変換する。Ａ／Ｄ変換部３０９は、電気信号をデジタルデータに変換する。バッファ３１０はデジタルデータを一時的に保管する。制御部３１１は、ユーザーの設定した焦点距離、絞り値に従って、ズームレンズ３０１、フォーカスレンズ３０２、絞り３０３を制御する。また、撮像指示に従いシャッター３０４と撮像素子３０８を制御して撮像を行う。取得した画像データは一旦撮像部２０１〜２１６内で保持され、順次読み出される。
【００１５】
表示部２２２は一般的には液晶ディスプレイが広く用いられており、図１のディスプレイ１０３に相当する。表示部２２２は、表示制御部２２１により制御され、ＣＧ生成部２２６や後述の画像合成部２３０から受け取った文字や画像の表示を行う。
【００１６】
外部メモリ制御部２２４は、ＰＣその他メディア２２５（例えば、ハードディスク、メモリーカード、ＣＦカード、ＳＤカード、ＵＳＢメモリ）につなぐためのインターフェースである。外部メモリ制御部２２４は、ＣＰＵ２２０から出力指示を受け取ることで、ＲＡＭ２１９に格納されているデータなどを撮像装置の外部に出力する。
【００１７】
ＣＧ生成部２２６は、ユーザーインターフェースを実現するための文字やグラフィックなどを生成する。
【００１８】
デジタル信号処理部２２７はデジタル画像データに対して、ノイズ低減処理、ホワイトバランス処理、色変換処理、ガンマ処理を施す。デジタル信号処理部２２７の構成を図４に示す。デジタル信号処理部２２７は、ノイズ低減処理部４０１、ホワイトバランス処理部４０２、色変換部４０３、及びガンマ処理部４０４を含む。デジタル信号処理部２２７は、撮像部２０１〜２１６によって撮像された直後のデジタル画像データに対しては、画素値を輝度にリニアし、撮像素子依存のノイズを低減することで、物理的に忠実になるようデータの変換を施す。また、画像合成後の画像に対しては、好ましい画質になるよう画の調整を行う。
【００１９】
圧縮・伸張部２２８は、画像合成部２３０により生成した画像をＪｐｅｇやＭｐｅｇなどのファイルフォーマットに変換する処理を行う。
【００２０】
撮像タイミング制御部２２９は撮像部２０１〜２１６が撮像を行うタイミングを決定し、撮像の指示を出す。撮影中は、例えば撮像部２０１〜２１６のうちのいずれか２眼による同時撮像を、繰り返し行う。同時撮像の撮像間のインターバルは、撮像部に対して設定されたフレームレートに従って決められる。撮像タイミング算出の方法は後で詳述する。
【００２１】
画像合成部２３０は、撮像部２０１〜２１６で撮像した画像から、仮想視点画像を合成する。合成した画像は表示部２２２に表示されるとともに、圧縮・伸張部２２８で圧縮され、ＰＣその他メディア２２５に順次記録される。画像合成の方法は後で詳述する。
【００２２】
装置の構成要素は上記以外にも存在し得るが、本件発明の主眼ではないので、説明を省略する。本実施形態の撮像装置は、撮像タイミング制御部２２９、画像合成部２３０に特徴がある。
【００２３】
なお、本実施形態では撮像部を１６個としたが、本実施形態は撮像部の個数を限定するものではなく、３つ以上ならばいくつあっても構わない。すなわち、多視点での撮像が可能なように、同時撮像に用いる撮像部のセットが２セット以上用意できる構成であればいずれの個数の撮像部を用いてもよい。
【００２４】
＜撮影時の処理の流れ＞
図５は、多眼カメラによる撮影時の処理の流れを表した図である。以下で示す各処理は、例えばＲＯＭ２１８又はＲＡＭ２１９に格納された命令をＣＰＵ２２０が読み込み、解釈することによって、ＣＰＵ２２０によって実行される。以下で説明する他のフローチャートに記載の処理も同様である。図５では、まず、ステップＳ５０１にてユーザーにより焦点距離、絞り、露光時間などの撮像パラメータが設定される。撮像パラメータはＲＯＭ２１８、ＲＡＭ２１９、ＣＰＵ２２０、表示制御部２２１、表示部２２２、操作部２２３、ＣＧ生成部２２６が連携することで実現されるユーザーインターフェースを介して入力される。入力されたパラメータはバス２１７を介して、撮像部２０１〜２１６に伝達され、設定される。
【００２５】
ステップＳ５０２ではユーザーによる撮影開始の指示を受けとる。撮影開始の指示は操作部２２３を介してユーザーから受けとり、バス２１７を介して撮像タイミング制御部２２９に伝達される。
【００２６】
ステップＳ５０３〜Ｓ５１０は撮影が行われている間、繰り返されるループである。ステップＳ５０３では撮像を行うカメラと撮像のタイミングの決定が行われる。本実施形態においては１回の撮像につき２つのカメラによる同時撮像が行われる。同時撮像の撮像間のインターバルはカメラのフレームレートに基づいて定められる。（カメラ台数／２）回の撮像で、全てのカメラによる撮像が実行されるよう、撮像を行うカメラは選択される。撮像部２０１〜２１６それぞれの撮像タイミングは撮像タイミング制御部２２９によって決定され、バス２１７を介して撮像指示が撮像部２０１〜２１６に伝達される。撮像タイミング算出の方法は後で詳述する。
【００２７】
Ｓ５０４では２つのカメラによる同時撮像が実行される。ここではＳ５０３で撮像指示を受け取った撮像部が撮像を行う。
【００２８】
Ｓ５０５ではＳ５０４で撮像された２つの画像に対してデジタル信号処理を行う。デジタル信号処理部２２７は、撮像を行った撮像部から順次画像を読み出してデジタル信号処理し、画像合成部２３０に渡す。
【００２９】
ステップＳ５０６では各カメラで撮像した最新の画像から仮想視点画像の合成を行う。画像合成は画像合成部２３０がデジタル信号処理部２２７から画像を受け取り、画像合成を行った後に、ＲＡＭ２１９に合成した画像を格納することで行われる。画像合成方法については、後で詳述する。
【００３０】
ステップＳ５０７ではステップＳ５０６で合成した画像の表示を行う。画像の表示は、表示制御部２２１がＲＡＭ２１９より合成画像を読み出し、表示部２２２に表示させることで行われる。
【００３１】
ステップＳ５０８ではステップＳ５０６で合成した画像の圧縮を行う。画像の圧縮は圧縮・伸張部がＲＡＭ２１９より合成画像を読み出し、圧縮することで行われる。
【００３２】
圧縮した画像はステップＳ５０９で記録される。画像の記録は、外部メモリ制御部２２４が圧縮画像を受け取り、ＰＣその他メディア２２５に記録することで行われる。
【００３３】
ステップＳ５１０は終了の判定であり、ステップＳ５０３〜Ｓ５０９の処理中に、ユーザーより撮影終了の指示があった場合、撮影を終了する。終了の指示がなければ、ステップＳ５０３に戻って処理を繰り返す。ユーザーによる撮影終了の指示は、操作部２２３を介してユーザーから受け取る。
【００３４】
＜撮像タイミング算出の方法＞
撮像タイミング制御部で撮像タイミングを算出する方法を説明する。各カメラのフレームレートをｆ（フレーム／秒）としたとき、各カメラが１枚の画像を読み出すには、Ｔ＝１／ｆ（秒）の時間が必要となる。本実施形態では多眼カメラのうちの２眼で常に同時に撮像を行い、Ｔ（秒）のうちに全カメラを網羅するように２眼の組み合わせを変えながら、タイミングをずらして２眼同時撮像を行う。多眼カメラを構成するカメラがＮ個であった場合、同時撮像間のインターバルは２・Ｔ／Ｎとなる。実施形態１に対応する撮像タイミングの１例を図６に示す。左側の１列目は撮像部を示す番号である。図の上部の文字は時刻を示している。左から右にかけて時間は進行する。露光中の時刻を黒い四角で表している。実施形態１では撮像部が１６個あるので、同時撮像間のインターバルはＴ／８となる。露光時間はＴ以下ならいくらでも良く、適当な露出になるよう設定する。
【００３５】
なお、本実施形態は同時撮像の組み合わせを限定するものではなく、どのような組み合わせでも構わない。また、同時撮像の組み合わせを固定とせず、撮影中に変化させても構わない。また、２眼同時撮像ではなく、３眼以上の同時撮像を行う構成としても構わない。
【００３６】
＜画像合成部の構成＞
図７を用いて画像合成部２３０の構成について説明する。図７は画像合成部２３０の構成の一例を表すブロック図である。
【００３７】
バッファ７０１は画像を格納するバッファであり、同時撮像によって取得された２つの画像を、バス２１７を介して受け取り、保持する。
【００３８】
距離推定部７０２は、バッファ７０１に格納されている２つの画像間で対応点探索を行い、その結果から距離情報を算出する。対応点探索とは、２つの画像間の特徴点の対応を探し出す処理のことである。距離情報とは、特徴点に対応する被写体と撮像したカメラとの距離を示す情報のことである。距離情報を算出することにより、撮像したカメラの位置・姿勢の関係を推定することが可能となる。距離推定部７０２によって探索された対応点の組に対応する空間上の点の座標が、距離情報を表す処理結果としてバッファ７０３に送られる。また、距離推定部７０２は探索された対応点の組を識別するための特徴量も算出する。この特徴量も距離情報と関連付けられてバッファ７０３に送られる。距離推定にはカメラの内部パラメータ（画角、光学中心など）、外部パラメータ（位置、姿勢）が必要であるが、本実施形態ではそれらパラメータは設計値やキャリブレーション結果から既知となっているものとする。距離推定と特徴量の算出の方法は後で詳述する。
【００３９】
バッファ７０３は、距離推定部７０２で算出された距離情報と特徴量とを保持する。バッファ７０３は、連続する同時撮像２回分の情報を保持する。すなわち、２つのカメラによって撮像された１組の画像に対する情報を、２組分保持する。
【００４０】
距離情報マッチング部７０４は、バッファ７０３より連続する２回の同時撮像についての距離情報と特徴量とを読み込み、特徴量に基づいて２回の同時撮像間で距離情報の対応付けを行う。距離情報の対応付けにより、被写体の動きや、手振れなどにより生じるカメラの動き（すなわち、撮像装置全体の動き）などを推定することが可能となる。距離情報の対応付けの結果は動き推定部７０５に送られる。距離情報対応付けの方法は後で詳述する。
【００４１】
動き推定部７０５は、距離情報マッチング部７０４の対応付けの結果と、バッファ７０３に格納された距離情報とから、連続する２回の同時撮像間のカメラの動きを推定する。このカメラの動きは、例えば、手ぶれによって生じる動きである。推定したカメラの動きはバッファ７０６に送られる。動き推定の方法は後で詳述する。
【００４２】
バッファ７０６は、動き推定部７０５で推定されたカメラの動きを表す情報を保持する。以下、このカメラの動きを表す情報について、単に「カメラの動き」と称することとする。カメラの動きは、（カメラ台数／２）回の同時撮像の間にわたって保持される。すなわち、タイミングをずらしての２眼同時撮像が、一巡して同じカメラによる撮像が行われるまで保持される。
【００４３】
仮想視点画像合成部７０７はバッファ７０１に格納された画像と、バッファ７０６に格納されたカメラの動きとから、仮想視点画像を合成する。例えば、カメラの動きから、撮像時のカメラの位置を逆算することが可能となる。このように、カメラの動きを考慮することによって、多眼の同時撮像と同等の情報を得ることができる。例えば、本実施形態においては、１６個のカメラによって同時撮像された際に得られる情報と同等の情報を得ることができる。合成された仮想視点画像はバス２１７に出力される。
【００４４】
なお、本実施形態では同時撮像を２眼としたが、３眼以上で同時撮像を行う構成としても構わない。また、連続する２つの同時撮像から動き推定をするとしたが、３つ以上の同時撮像や連続しない同時撮像から動き推定を行っても構わない。なお、仮に２眼ではなく１眼で撮像する場合には、視差、カメラの動き、被写体の動きが混在して存在してしまう。そこで、少なくとも２眼以上で同時撮像することにより、距離情報を適切に求めることができ、カメラの動きを得ることができる。
【００４５】
＜画像合成処理の流れ＞
図８を用いて画像合成処理の流れについて説明する。図８は画像合成処理の流れを表すフローチャートである。
【００４６】
ステップＳ８０１では同時撮像された２つの画像を取得する。画像はバッファ７０１が受け取り、保持する。
【００４７】
ステップＳ８０２ではステップＳ８０１で取得した２つの画像を用いて距離推定を行う。距離推定はバッファ７０１に格納されている２つの画像に基づいて行われる。距離情報とともに距離情報が定義される点の特徴量も算出される。距離推定と特徴量算出の方法は後で詳述する。
【００４８】
ステップＳ８０３では、ステップＳ８０２で算出した距離情報と特徴量とが、バッファ７０３に保持される。ここでは、バッファ７０３が距離推定部７０２で算出された距離情報と特徴量とを受け取り、これらを関連付けて保持する。
【００４９】
ステップＳ８０４では、ステップＳ８０１からステップＳ８０３の処理が、画像合成処理開始以降初めて行ったものであるか判定する。ステップＳ８０５は２回分の距離推定結果を必要とするため、ステップＳ８０１からステップＳ８０３の処理が行われたのが初めてならば、処理はステップＳ８０１に戻る。そうでなければ処理はステップＳ８０５に進む。
【００５０】
ステップＳ８０５では、ステップＳ８０３で保持した連続する２回の同時撮像間で算出された距離情報の対応付けを行う。距離情報の対応付けは、距離情報と関連付けられて保持されている特徴量に基づいて行われる。対応付けの処理は、距離情報マッチング部７０４がバッファ７０３より距離情報と特徴量とを読み込んで行う。対応付けの結果は動き推定部７０５に送られる。対応付けの方法は後で詳述する。
【００５１】
ステップＳ８０６では連続する２回の同時撮像間でのカメラの動き推定を行う。動き推定は、動き推定部７０５がバッファ７０３に格納されている距離情報と、距離情報マッチングが求めた距離情報の対応付け結果と、に基づいて行われる。
【００５２】
ステップＳ８０７では、ステップＳ８０６で推定したカメラの動きを保持する。ここでは、バッファ７０６が動き推定部７０５の算出結果を読み込んで保持する。カメラの動きは、（カメラ台数／２）回の同時撮像の間にわたって保持される。
【００５３】
ステップＳ８０８では、画像合成処理開始以降、全カメラ（すなわち、撮像部２０１〜２１６の全て）に対して１回以上処理が行われているか、判定する。ステップＳ８０９は全カメラの画像を必要とするため、処理が行われていないカメラが残っていた場合、ステップＳ８０１に戻って処理を繰り返す。全カメラに対して１回以上処理が行われていれば、ステップＳ８０９に進む。
【００５４】
ステップＳ８０９ではステップＳ８０１で取得してあった画像と、ステップＳ８０７で保持したカメラの動きとから、仮想視点画像を合成する。画像合成は、仮想視点画像合成部７０７がバッファ７０６に格納されたカメラの動きと、バッファ７０１に格納されたが画像とに基づいて行う。
【００５５】
ステップＳ８１０では合成された画像を出力する。ここでは仮想視点画像合成部７０７が合成した画像をバス２１７に出力する。
【００５６】
ステップＳ８１１では終了判定を行う。ユーザーにより終了が指示されていれば終了し、指示されていなければステップＳ８０１に戻り処理を繰り返す。なお、上記の例では、ステップＳ８０８においては、全カメラに対して１回以上の処理が行われたか否かを判定している例を挙げているが、本実施形態はこの処理に限られるものではない。例えば、１６個の撮像部のうち、所定の組数の撮像部で処理が行われたか否かによってＳ８０８の判定が行われても良い。
【００５７】
＜距離情報と特徴量の算出方法＞
距離推定部７０２で対応点を探索する方法について説明する。図９は距離情報及び特徴量算出処理のフローチャートである。処理に用いる２つの入力画像のうち片方を基準画像とし、もう片方を対象画像と呼ぶものとする。ここでは、基準画像の特徴点を抽出し、抽出した特徴点に対応する対象画像上の点を求め、その結果から、その特徴点に対応する距離情報と特徴量とを求める方法について説明する。
【００５８】
ステップＳ９０１では、２つの入力画像を読み込み、基準画像と対象画像とを設定する。
【００５９】
ステップＳ９０２では、基準画像の特徴点を抽出する。特徴点抽出の方法としては、例えば非特許文献４記載のＨａｒｒｉｓ  Ｃｏｒｎｅｒ  Ｄｅｔｅｃｔｉｏｎなどの公知の手法を用いることができる。
【００６０】
ステップＳ９０３ではステップＳ９０２で求めた特徴点について対象画像上での対応する点を求める。対応点を求める方法として、例えばブロックマッチング法などの公知の手法を用いることができる。ブロックマッチング法では、マッチングの評価値としてブロック内の基準画像の画素値とブロック内の対象画像の画素値との差分絶対値和もしくは差分二乗和を用いる。ある特徴点を中心としたブロックを基準画像上で考え、基準画像と対象画像上の相対位置を順次ずらしながら評価値を求めていく。求めた評価値の中から最小の評価値を持つときの、処理対象画像上でのブロックの中心位置が、着目する特徴点の対応点である。また、相対位置と評価値との関係を、１次関数の絶対値もしくは２次関数でフィッティングし、得られた関数上で最小となる相対位置から対応点を求めることで高精度化することも可能である。また、本実施形態ではカメラの姿勢が既知であるものとしているので、探索する範囲をエピポーラ線上に限定することで、ロバスト性の向上と計算コストの低減を図ることができる。
【００６１】
なお、ステップＳ９０３で求めた対応点は、誤っている場合がある。ステップＳ９０４ではステップＳ９０３で求めた対応点が正しいか、判定を行う。判定の方法としては、例えばステップＳ９０３で求めた最小評価値が閾値以下であるかを調べ、閾値以下なら正しく、閾値以上なら誤りであると判定するなどの方法がある。
【００６２】
次に、ステップＳ９０５で全ての特徴点について処理が完了したかの判定を行う。完了していなければＳ９０３に戻り、未処理特徴点の処理を行い、完了していればステップＳ９０６に進む。
【００６３】
ステップＳ９０６では距離情報と特徴量の算出を行う。まず、距離情報の算出について述べる。基準画像、対象画像を撮像したカメラの内部パラメータをＡ，Ａ’と、特徴点の画像座標を（ｕ，ｖ），（ｕ’，ｖ’）と、それぞれ置き、基準画像を撮像したカメラから対象画像を撮像したカメラへのカメラ座標の座標変換行列Ｍを式（１）のように置く。
【００６４】
【数１】
0005725953.tif 000002
【００６５】
ここで、Ｒは回転を表す３×３の行列、Ｔは並進を表す３×１の行列である。（ｕ，ｖ）と（ｕ’，ｖ’）の関係は、式（２）のようになる。
【００６６】
【数２】
0005725953.tif 000003
【００６７】
ここでｚは特徴点に対応する空間上の点までの距離であり、ステップＳ９０３で１／ｚをパラメータとして変化させて対応点探索を行えば、直接１／ｚを求めることができる。特徴点に対応する空間上の点の３次元座標を（ｘ，ｙ，ｚ）とすると、式（３）が成り立つ。
【００６８】
【数３】
0005725953.tif 000004
【００６９】
本実施形態では（ｘ／ｚ，ｙ／ｚ，１／ｚ）を距離情報として算出する。
【００７０】
次に特徴量の算出について述べる。本実施形態では特徴量として（ｕ，ｖ）を中心としたブロックの画素値の分布を、ベクトル状の特徴量として用いる。
【００７１】
ステップＳ９０７では算出した距離情報と特徴量を出力する。
【００７２】
なお、本実施形態は対応点探索の方法と特徴量の算出方法を限定するものではなく、非特許文献５に開示されているSIFTアルゴリズムなどを用いても構わない。また、本実施形態は距離情報を、特徴点に対応する空間上の点の座標（ｘ，ｙ，ｚ）を用いて（ｘ／ｚ，ｙ／ｚ，１／ｚ）のように表現する形態に限定するものではなく、等価な情報を持つ形態ならばどのような値として距離情報を持っても構わない。
【００７３】
＜距離情報対応付けの方法＞
距離情報マッチング部７０４で、連続する２回の同時撮像間の距離情報を対応付ける方法について説明する。特徴点を介して、距離情報には特徴量が紐付いている。本実施形態では特徴量の一致度を用いて距離情報の対応付けを行う。
【００７４】
ここでは、連続する２回の同時撮像のうち、先に撮像された方を第一同時撮像、後に撮像された方を第二同時撮像と呼ぶものとする。
【００７５】
ここでは第一同時撮像を基準として考える。第一同時撮像の各特徴点に対して、最も特徴量の一致度が高くなる第二同時撮像の特徴点を探索する。特徴量として、特徴点近傍のブロックの画素値分布を用いるならば、一致度Ｊは式（４）のようにとれば良い。
【００７６】
【数４】
0005725953.tif 000005
【００７７】
このとき、ｐ1，ｐ2は第一同時撮像、第二同時撮像それぞれの、一致度を算出しようとしている特徴点の特徴量を表すベクトルである。第一同時撮像の各特徴点に対して、最も特徴量の一致度が高い第二同時撮像の特徴点を求めたら、それらを特徴点対応の候補とする。全特徴点対応の候補に対して一致度で閾値処理を行い、一定以上一致度の高い特徴点対応の候補を最終的な対応付けの組み合わせとする。
【００７８】
なお、本実施形態は距離情報の対応付け方を限定するものではなく、他の対応付け方法を用いても構わない。
【００７９】
＜動き推定の方法＞
動き推定部７０５で、連続する２回の同時撮像の間に生じた、被写体に対するカメラの動きを推定する方法について説明する。ここでは、連続する２回の同時撮像のうち、先に行った同時撮像を第一同時撮像、後に行った同時撮像を第二同時撮像と呼ぶものとする。
【００８０】
第一同時撮像のｎ番目の特徴点の距離情報を（ｘ1n／ｚ1n，ｙ1n／ｚ1n，１／ｚ1n）とし、対応する第二同時撮像の特徴点の距離情報を（ｘ2n／ｚ2n，ｙ2n／ｚ2n，１／ｚ2n）とする。ここでは、被写体が剛体運動するものとして、第一同時撮像の基準画像に対応するカメラから第二同時撮像の基準画像に対応するカメラへの座標変換行列Ｍを式（１）のようにおく。求めるべき動きのパラメータを（Ｒest，Ｔest）とするならば、距離情報と動きのパラメータの関係は、式（５）、式（６）のようになる。
【００８１】
【数５】
0005725953.tif 000006
【００８２】
【数６】
0005725953.tif 000007
【００８３】
ここで、Ｎはカメラの数を表す。λは不定性を表す係数である。（Ｒest，Ｔest）は式（５）、式（６）にＬｅｖｅｎｂｅｒｇ−Ｍａｒｑｕａｒｄｔ法などの非線形最適化を適用することで求めることができる。なお、通常は対応付けの誤りなどもおこるので、精度向上のためには、式（５）、式（６）から動きのパラメータを求めるだけでなく、最小メディアン法やＲＡＮＳＡＣなどのロバスト推定を組み合わせると良い。
【００８４】
なお、本実施形態は最適化方法を限定するものではなく、最急降下法や線形解法などその他の最適化方法を用いて動きを推定しても構わない。
【００８５】
＜仮想視点画像の合成方法＞
仮想視点画像合成部７０７における、仮想視点画像の合成方法について説明する。ここでは、あらかじめ設計値やキャリブレーションに基づいて既知となっている、多眼カメラの座標からｎ番目のカメラの座標への変換行列をＭ0nと表す。Ｍは式（１）で表されるような、３次元の斉次座標に対する変換行列である。また、別の時刻に撮像の行われたｎ番目のカメラからｍ番目のカメラへの座標変換行列をＭ’nmと表す。
【００８６】
図６のような組み合わせと順序で撮像を行った場合に、既知のＭ0nと動き推定で求めたＭ’nmとから得られる、座標変換行列と各撮像部のカメラの関係を図１０に示す。図１０から明らかなように各カメラ間の変換行列をたどって合成することで、任意のカメラから任意のカメラへの座標変換行列を算出することができる。例えば、同時撮像８の時の多眼カメラの座標から、ｎ番目のカメラの座標への座標変換行列を算出したければ、Ｍ’8nＭ08を計算すればよい。ここで、Ｍ’8nは変換行列の合成によって算出した、８番目のカメラである撮像部２０８のカメラから、ｎ番目のカメラへの座標変換行列である。
【００８７】
このようにして、既知のカメラ間の位置・姿勢の関係と、動き推定によって求めたカメラ間の位置・姿勢の関係とから、任意の同時撮像の時刻に合わせて、キャリブレーション済みの多眼カメラを再構築することができる。以上の方法で求めた位置・姿勢の情報と、各カメラで撮像した画像とを用いて、非特許文献２に開示されている方法などで仮想視点画像を生成することが可能である。
【００８８】
以上説明したように、実施形態１によれば、複数のカメラで撮像した画像を用いて各カメラの動きを考慮して仮想視点画像を生成する。これにより、仮想視点映像を合成する動画撮影系において、各カメラの位置・姿勢の推定精度を保ちながら、フレームレート性能を向上させる効果を奏する。
【００８９】
＜＜実施形態２＞＞
実施形態１では、カメラに対する被写体の動きが単一であるものとして、カメラ間の同時撮像間の動き推定を行う例について説明した。すなわち、実施形態１においては、例えば、被写体が静止しており、カメラ自身に動きが生じている例を説明した。実施形態２では、被写体が異なる動きをする複数の剛体である場合について説明する。すなわち、実施形態２では少なくとも１つの被写体が動いているような場合について説明する。
【００９０】
＜画像合成部の構成＞
実施形態２は実施形態１に対して画像合成部２３０の構成が異なる。以下、実施形態１と共通する部分の説明は省略し、相違する部分を中心に説明を行う。実施形態２の画像合成部２３０の構成を図１１に示す。実施形態２の画像合成部は実施形態１の画像合成部に対して、動き推定部１１０１、仮想視点画像合成部１１０５、バッファ１１０３の動作が変更され、画像分割部１１０２、バッファ１１０４、仮想視点画像統合部１１０６が追加されている。
【００９１】
動き推定部１１０１はロバスト推定により、複数の剛体被写体に対するカメラの動きを推定するとともに、距離情報を、それが属する剛体に従って分類する。例えば、ロバスト推定により、最も支配的な動き（すなわち、手ぶれによる背景の動き）が抽出される。この背景に属する動きも剛体被写体の動きとして抽出することができる。被写体自身に動きが生じている場合には、この背景に属する特徴点を除いて同一の動きをする各特徴点群を、それぞれ剛体被写体と扱うことができる。距離情報が、各剛体に従って分類されることにより、後述するように剛体の領域を特定して、その動きを追跡することが可能となる。動き推定部１１０１は、距離情報の分類と、距離情報が定義されている画像上の座標とを抽出し、画像分割部１１０２に渡す。推定された複数の動きはバッファ１１０３に渡される。ロバスト推定を用いた複数の剛体被写体に対するカメラの動き推定の方法は後で詳述する。動き推定部は、前々回の同時撮像と前回の同時撮像から求めた複数の剛体被写体と、前回の同時撮像と今回の同時撮像から求めた複数の剛体被写体との対応付けも行う。対応付けの方法は、前回の同時撮像に対して定義された距離情報を、属する距離情報としてより多く共有する剛体被写体に対応付けるなどの方法がある。
【００９２】
画像分割部１１０２は分類された距離情報に対応する画像上の座標から、バッファ７０１に格納された画像を、各剛体被写体に属する領域に分割し、バッファ１１０４に渡す。画像分割の方法については後で詳述する。
【００９３】
バッファ１１０３は動き推定部１１０１で推定された、複数の剛体被写体に対して推定されたそれぞれの動きを、撮像が全カメラに対して一巡するまで保持する。
【００９４】
バッファ１１０４は画像分割部１１０２で算出された、複数の剛体被写体のいずれかに属するよう分割された複数の画像を、撮像が全カメラに対して一巡するまで保持する。
【００９５】
仮想視点画像合成部１１０５は各剛体被写体に対応する動きと分割画像とを、バッファ１１０３及びバッファ１１０４からそれぞれ読み出し、各剛体被写体に対応する仮想視点画像を合成する。合成した仮想視点画像統合部１１０６に渡される。
【００９６】
仮想視点画像統合部１１０６は、各剛体被写体に対応した複数の仮想視点画像を仮想視点画像合成部１１０５から受け取り、足し合わせて１つの画像へと統合する。統合は複数枚の画像の平均化などにより行う。統合された画像はバス２１７に出力される。
【００９７】
＜画像合成処理の流れ＞
実施形態２は画像合成部２３０における画像合成処理が実施形態１と異なる。画像合成処理のフローチャートを図１２に示す。実施形態１に対して実施形態２は、ステップＳ８０６がステップＳ１２０１に、ステップＳ８０７がステップＳ１２０２に、ステップＳ８０９がステップＳ１２０６に変更されている。また、実施形態２では、ステップＳ１２０３、ステップＳ１２０４、ステップＳ１２０５、ステップＳ１２０７が追加されている点が異なる。
【００９８】
ステップＳ１２０１では、複数の剛体被写体に対してカメラの動き推定を行う。動き推定処理は、動き推定部１１０１が行う。複数の剛体被写体に対する動き推定の方法は後で詳述する。
【００９９】
ステップＳ１２０２では、ステップＳ１２０１で複数の剛体被写体に対して推定したカメラの動きを保持する。推定したカメラの動きの保持は、バッファ１１０３が動き推定部１１０１より推定結果を受け取り、格納することで行われる。
【０１００】
ステップＳ１２０３では、属する剛体被写体に従って距離情報を分類する。距離情報の分類は、動き推定部１１０１が動き推定と合わせて行う。距離情報の分類方法は、複数の剛体被写体に対する動き推定の方法と合わせて後で詳述する。
【０１０１】
ステップＳ１２０４では、分類された距離情報に従って、画像を複数に分割する。画像の分割は画像分割部１１０２が行う。
【０１０２】
ステップＳ１２０５では、ステップＳ１２０３で分類された距離情報に従って分割された画像を保持する。分割された画像の保持は、バッファ１１０４が画像分割部１１０２より画像を受け取り、格納することで行われる。
【０１０３】
ステップＳ１２０６では、分割された画像と複数の剛体被写体に対して推定されたカメラの動きとから、各剛体被写体の仮想視点画像を合成する。仮想視点画像の合成は仮想視点画像合成部１１０５が行う。
【０１０４】
ステップＳ１２０７ではステップＳ１２０６で合成された複数の画像を１つの画像に統合する。統合は複数枚の画像の平均化などにより行う。画像の統合は仮想視点画像統合部１１０６が行う。
【０１０５】
＜複数の剛体被写体を想定した動き推定の方法＞
動き推定部１１０１で行う、複数の剛体被写体を想定した動き推定と、距離情報の分類との方法について説明する。図１３は処理の方法を説明するフローチャートである。
【０１０６】
ステップＳ１３０１ではロバスト推定により動きを推定する、動き推定の方法は実施形態１と同様である。複数の剛体被写体がある場合、多くの距離情報が算出されている剛体被写体に対する動きがロバスト推定により推定される。
【０１０７】
ステップＳ１３０２では、図１１の距離情報マッチング部７０４、図１２のステップＳ８０５で対応付けられた複数の距離情報の組に対し、ステップＳ１３０１で推定した動きを適用し、誤差を算出する。動きの適用は式（５）に従って行い、誤差Ｅは式（７）に従って算出する。
【０１０８】
【数７】
0005725953.tif 000008
【０１０９】
ステップＳ１３０３では、誤差Ｅが閾値以下となるような距離情報の組を抽出する。
【０１１０】
ステップＳ１３０４では、ステップＳ１３０３で抽出された距離情報の組の数が、閾値以上か判定する。閾値以下なら、これ以上剛体の抽出ができないものとして、処理を終了する。閾値以上ならステップＳ１３０５に進む。
【０１１１】
ステップＳ１３０５では、ステップＳ１３０１で推定した動きを出力する。
【０１１２】
ステップＳ１３０６では、ステップＳ１３０３で抽出した距離情報の組を出力する。
【０１１３】
ステップＳ１３０７では、ステップＳ１３０３で抽出した距離情報の組を、ステップＳ１３０１のロバスト推定の候補から除外する。除外した後にステップＳ１３０１に戻り処理を繰り返す。
【０１１４】
以上の処理により、複数の剛体被写体を想定した動き推定と、距離情報の分類を行うことができる。
【０１１５】
＜分類された距離情報から画像を分割する方法＞
画像分割部１１０２で、分類された距離情報から画像を分割する方法について説明する。動き推定部１１０１で行われた、距離情報の分類処理によって、各剛体被写体に属する距離情報の、画像上に定義された点の座標を得ることができる。ある剛体被写体に属する領域を算出する方法としては、例えばドロネー三角形分割を用いる方法などがある。この方法では、距離情報と対応する点とに基づいて、三角形分割で画像上の領域を分割し、対象の剛体被写体に属する点に囲まれた三角形領域を、ある剛体被写体に属する領域としてみなす。ある領域に属する分割画像を生成する際、画像上のある剛体被写体に属する領域は、分割前の画像の当該領域をそのまま用い、それ以外の部分は画素値を０にすることで、分割画像を生成する。
【０１１６】
以上説明したように、実施形態２によれば、仮想視点映像を合成する動画撮影系において、複数の剛体被写体が異なる動きをするシーンに対しても、画像の劣化を抑制しながら、フレームレート性能を向上させる効果を奏する。
【０１１７】
＜＜実施形態３＞＞
実施形態２では、シーンが剛体被写体のみから構成されるものとして、動きの推定と仮想視点画像の合成を行った。実施形態３では、シーンが剛体以外の被写体を含む場合について説明する。すなわち、被写体自身が時間とともに変化するような被写体を含む場合について説明する。剛体以外の被写体に対して、他の時間軸で同時撮像された画像を合成して仮想視点画像を生成する場合には、被写体自身が変化してしまうので、その被写体部分については多視差の情報を作ることが困難である。そこで、本実施形態では、剛体以外の被写体についてはボケ画像を生成する例を説明する。
【０１１８】
実施形態３は実施形態２に対して画像合成部２３０が異なる。以下、実施形態２と共通する部分の説明は省略し、異なる部分を中心に説明する。実施形態３の画像合成部２３０の構成を図１４に示す。実施形態３の画像合成部は実施形態２の画像合成部に対して、画像分割部１４０１の動作が変更され、ボケ画像合成部１４０２が追加されている。
【０１１９】
実施形態２の画像分割部は、属する剛体被写体に従って画像を分割した。実施形態３の画像分割部は、剛体被写体に属さない領域も非剛体被写体領域として画像を抽出し出力する。例えば、図１３のステップＳ１３０３で誤差が閾値以下の距離情報の組ではない組を、非剛体被写体領域として抽出することができる。出力された画像はバッファ１１０４に渡され格納される。
【０１２０】
ボケ画像合成部１４０２は非剛体被写体領域に対する仮想視点画像として、距離によるボケをかけた画像を生成する。すなわち、前記距離推定部７０２が推定した距離情報から
非剛体被写体に対するボケ画像を仮想視点画像として生成する。ボケをかけた画像の生成方法については公知であるので、ここでの説明は省略する。距離情報はバッファ７０３に格納されているものを読み出して用いる。バッファ７０３は画像上のとびとびの位置にしか定義されていないので、ボケをかけるにあたっては、線形補間などを適用して、画像上の全域に距離が定義されるようにする。非剛体被写体領域の画像は仮想視点画像生成の基準となる時刻に対応するものを用いる。ボケの大きさは仮想視点画像合成部１１０５にて合焦距離として用いている距離に近くなれば小さくなり、遠くなれば大きくなるよう設定する。
【０１２１】
実施形態３の画像合成処理の流れを図１５のフローチャートに示す。実施形態２に対してステップＳ１５０１で行う処理が変更され、ステップＳ１５０２が追加されている。
【０１２２】
ステップＳ１５０１では実施形態２と同様の画像分割処理を行うが、非剛体被写体に属する領域に対しても分割画像を生成する点が異なる。ステップＳ１５０１では画像分割部１４０１が処理を行う。
【０１２３】
ステップＳ１５０２は、非剛体被写体領域に属する分割画像に対して、距離に基づいたボケをかける。ボケをかける処理はボケ画像合成部１４０２が行う。
【０１２４】
以上説明したように、実施形態３によれば、仮想視点映像を合成する動画撮影系において、非剛体の動被写体が存在するシーンに対しても、画像の劣化を抑制しながら、フレームレート性能を向上させる効果を奏する。
【０１２５】
＜その他の実施形態＞
なお、以上の各実施形態においては、撮像部がカメラに相当する例を挙げて、複数の撮像部として複数のカメラを用いる例を説明した。具体的には、図３に示す機構を複数のカメラ分有する例を説明した。そして、これらの複数のカメラから得られた画像を用いて仮想視点画像を生成する例を説明した。しかしながら、例えば、撮像部が図３に示す単一の撮像素子３０８に相当する場合であってもよい。すなわち、１つの撮像素子を複数の領域に分割し、その分割した領域に対応するレンズを設ける構成を採用してもよい。また、１つの撮像素子の表面に微小なレンズを配置したり、所定の空間周波数のパターンを配置したりする構成を採用してもよい。あるいは、レンズ側の絞り３０３を調整して部分的にレンズの開口部分を変更するような構成を採用してもよい。
【０１２６】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
0005725953.tif 000009
【図２】
0005725953.tif 000010
【図３】
0005725953.tif 000011
【図４】
0005725953.tif 000012
【図５】
0005725953.tif 000013
【図６】
0005725953.tif 000014
【図７】
0005725953.tif 000015
【図８】
0005725953.tif 000016
【図９】
0005725953.tif 000017
【図１０】
0005725953.tif 000018
【図１１】
0005725953.tif 000019
【図１２】
0005725953.tif 000020
【図１３】
0005725953.tif 000021
【図１４】
0005725953.tif 000022
【図１５】
0005725953.tif 000023