3D画像生成方法、3D画像生成プログラム、及び3D画像生成装置
【課題】動体の様子を1つの画像内で立体視することができる立体画像を生成する。
【解決手段】複眼カメラの左視点撮像部及び右視点撮像部で、時刻t0から時刻t4までの間、動体を一定時間毎に撮像する。この撮像により、時刻t0から時刻t4までの間の左視点画像及び右視点画像が得られる。これら左視点画像の中から、他の時刻の左視点画像と重ね合わせたときに動体が重なり合わない時刻t0、時刻t2、t4の左視点画像を特定の左視点画像として選択する。右視点画像についても、同様に特定の右視点画像を選択する。これら特定の左視点画像及び特定の右視点画像を合成することにより、動体の様子を1つの画像内で立体視することができる動体立体視化画像が生成される。
【解決手段】複眼カメラの左視点撮像部及び右視点撮像部で、時刻t0から時刻t4までの間、動体を一定時間毎に撮像する。この撮像により、時刻t0から時刻t4までの間の左視点画像及び右視点画像が得られる。これら左視点画像の中から、他の時刻の左視点画像と重ね合わせたときに動体が重なり合わない時刻t0、時刻t2、t4の左視点画像を特定の左視点画像として選択する。右視点画像についても、同様に特定の右視点画像を選択する。これら特定の左視点画像及び特定の右視点画像を合成することにより、動体の様子を1つの画像内で立体視することができる動体立体視化画像が生成される。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、被写体を立体視可能にする3D画像を生成する3D画像生成方法、3D画像生成プログラム、及び3D画像生成装置に関する。
【背景技術】
【0002】
1枚の写真内に、動く被写体(動体)の様子を表したストロボ写真が知られている。従来の撮像手段として広く用いられていたフィルムカメラでは、絞りを開放してフィルムを露光させた状態で、一定時間毎に複数回のストロボ発光を行うことによって、ストロボ写真を生成していた。このような従来のフイルムカメラに代わって、今日広く普及しているデジタルカメラでは、動体が動く間、連写撮影をすることによって得られる複数枚の画像をコンピュータで画像処理することによって、ストロボ写真のような画像を生成している(特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2010−166545号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
今日では、1つの撮像ユニットで撮像を行う単眼のデジタルカメラの他に、左目用と右目用の2つの撮像ユニットで被写体を撮像することによって、被写体の立体視が可能な3D画像を取得する立体撮像装置に対する需要が伸びてきている。このような立体撮像装置には、3Dの静止画や3Dの動画を取得する機能を備えているものは存在するが、動く被写体の様子を1つの画像内で立体視することができる立体画像を取得する3Dストロボ機能を備えているものは現時点では存在しない(特許文献1にも記載及び示唆は無い)。
【0005】
なお、立体撮像装置においても、連写撮像により得られる複数枚の左視点画像及び右視点画像を合成することで、ストロボ写真のような立体画像を得ることはできる。しかしながら、このように単に左視点画像及び右視点画像を合成しただけの立体画像は、動体の動きが遅い部分があると、その部分の動体が重複してしまうことがある。このように動体が重複してしまうと、部分的に動体の前後関係が分かり難くなるため、観察者は動体を立体視し難くなるおそれがある。
【0006】
本発明は、動体の様子を1つの画像内で立体視することができる立体画像を生成できる3D画像生成方法、3D画像生成プログラム、及び3D画像生成装置を提供することを目的とする。
【課題を解決するための手段】
【0007】
上記目的を達成するために、本発明の3D画像生成方法は、互いに異なる2つの視点から動く被写体である動体を同じタイミングで撮像する同時撮像を、連続して行うことによって得られる複数枚の第1の視点画像及び第2の視点画像を取得する画像取得ステップと、前記複数枚の第1の視点画像及び第2の視点画像の中から、他のタイミングで撮像された第1の視点画像を合成したときに動体が重なり合わない特定の第1の視点画像と、この特定の第1の視点画像と同時撮像され、且つ、他のタイミングで撮像された第2の視点画像を合成したときに動体が重なり合わない特定の第2の視点画像を選択する画像選択ステップと、選択された特定の第1の視点画像及び特定の第2の視点画像を合成することにより、動体の様子を1つの画像内で立体視可能な立体画像を生成する立体画像生成ステップとを有することを特徴とする。
【0008】
前記画像選択ステップは、各撮像タイミングにおける第1の視点画像中の動体の動き方向を検出するとともに、各撮像タイミングにおける第2の視点画像中の動体の動き方向を検出する第1の動き方向検出ステップと、前記複数枚の第1の視点画像及び第2の視点画像の中から、動き方向に関する動体の座標が所定の条件を満たす第1の視点画像を前記特定の第1の視点画像として選択し、この特定の第1の視点画像と同時撮像され、且つ、動き方向に関する動体の座標が所定の条件を満たす第2の視点画像を特定の第2の視点画像として選択する第1の選択ステップとを含むことが好ましい。
【0009】
前記画像選択ステップは、各撮像タイミングにおける第1の視点画像中の動体の動き方向を検出する第2の動体検出ステップと、前記複数枚の第1の視点画像の中から、動き方向に関する動体の座標が所定の条件を満たす特定の第1の視点画像を仮選択するとともに、前記複数枚の第2の視点画像の中から、仮選択された特定の第1の視点画像と同時撮像された第2の視点画像を選択する第2の選択ステップと、前記第2の選択ステップで選択された第2の視点画像中の動体の動き方向を検出する第3の動体検出ステップと、前記第2の選択ステップで選択された第2の視点画像の中から、動き方向に関する動体の座標が所定の条件を満たす特定の第2の視点画像を選択するとともに、仮選択された特定の第1の視点画像の中から、前記特定の第2の視点画像と同時撮像された特定の第1の視点画像を本選択する第3の選択ステップと、前記立体画像生成ステップは、前記第3の選択ステップで本選択された特定の第1の視点画像及び前記第3の選択ステップで選択された特定の第2の視点画像を合成することにより、立体画像を生成することが好ましい。
【0010】
前記所定の条件は、第1の撮像タイミングにおける動体の最小位置座標が、その第1の撮像タイミングの前の第2の撮像タイミングにおける動体の最大位置座標から設定された基準座標以上であることが好ましい。
【0011】
前記立体画像生成ステップは、特定の撮像タイミングにおける動体が他の撮像タイミングの動体よりも強調されるように、立体画像を生成することが好ましい。
【0012】
前記立体画像生成ステップは、前記選択された特定の第1の視点画像及び前記特定の第2の視点画像に加えて、前記特定の第1の視点画像として選択されなかった第1の視点画像の一部と、前記特定の第2の視点画像として選択されなかった第2の視点画像の一部とを合成することにより、立体画像を生成することが好ましい。
【0013】
前記立体画像生成ステップは、複数の動体の様子を1つの画像内で立体視可能な立体画像を生成することが好ましい。
【0014】
同時撮像された第1の視点画像及び第2の視点画像において同一の動体がどの程度離れているかを示す視差量が、予め設定された許容値を超えたか否かを判定する視差量判定ステップを有し、前記立体画像生成ステップは、前記選択された特定の第1の視点画像及び前記特定の第2の視点画像のうち視差量が許容値未満である画像のみを合成することにより、立体画像を生成することが好ましい。
【0015】
本発明の3D画像生成プログラムは、上記記載の本発明の3D画像生成方法における各ステップをコンピュータに実行させることを特徴とする。
【0016】
本発明の3D画像生成装置は、互いに異なる2つの視点から動く被写体である動体を同じタイミングで撮像する同時撮像を、連続して行うことによって得られる複数枚の第1の視点画像及び第2の視点画像を取得する画像取得手段と、前記複数枚の第1の視点画像及び第2の視点画像の中から、他のタイミングで撮像された第1の視点画像を合成したときに動体が重なり合わない特定の第1の視点画像と、この特定の第1の視点画像と同時撮像され、且つ、他のタイミングで撮像された第2の視点画像を合成したときに動体が重なり合わない特定の第2の視点画像を選択する画像選択手段と、選択された特定の第1の視点画像及び前記特定の第2の視点画像を合成することにより、動体の様子を1つの画像内で立体視可能な立体画像を生成する立体画像生成手段とを備えることを特徴とする。
【発明の効果】
【0017】
本発明によれば、動体の様子を1つの画像内で立体視することができる立体画像を生成することができる。この立体画像は、複数枚の第1の視点画像及び第2の視点画像の中から、他のタイミングで撮像された第1の視点画像を合成したときに動体が重なり合わない特定の第1の視点画像と、この特定の第1の視点画像と同時撮像され、且つ、他のタイミングで撮像された第2の視点画像を合成したときに動体が重なり合わない特定の第2の視点画像を選択した上で、これら選択された特定の第1の視点画像及び特定の第2の視点画像を用いて生成されているため、画質が顕著に劣化せず、また不自然な3D画像とならない。
【0018】
また、立体画像は特定の第1の視点画像及び特定の第2の視点画像のマルチフレーム合成により生成されるため、背景など動体が無い領域は高感度低ノイズの画質を得ることができる。また、上記特定の第1の視点画像及び特定の第2の視点画像の選択は、各撮像タイミングにおける第1の視点画像及び第2の視点画像中の動体の動き方向の座標を用いて行っているため、他の撮像タイミングの左視点画像及び右視点画像を合成したときの動体の重なり合い(多重化)を確実に回避することができる。
【図面の簡単な説明】
【0019】
【図1】正面側から見た複眼カメラの図である。
【図2】背面側から見た複眼カメラの図である。
【図3】複眼カメラの電気的構成を示す図である。
【図4】第2立体画像生成回路の各部を示す図である。
【図5】各時刻における動体の対応点を説明するための図である。
【図6】第1実施形態で行う特定の左視点画像及び特定の右視点画像の選択を説明するための図である。
【図7】第1実施形態の動体立体視化画像を示す図である。
【図8】左視点画像及び右視点画像の取得から動体立体視化画像の生成までの流れを示す図である。
【図9】図8のフローに従って得られる特定の左視点画像及び特定の右視点画像から動体立体視化画像を生成する手順を示す図である。
【図10】左視点画像及び右視点画像の取得から特定の右視点画像の仮選択を行うまでのフローを示す図である。
【図11】図10のフローに引き続いて動体立体視化画像を生成するまでのフローを示す図である。
【図12】図10及び図11のフローに従って得られる特定の左視点画像及び本選択された特定の右視点画像から動体立体視化画像を生成する手順を示す図である。
【図13】第2実施形態の動体立体視化画像を生成する手順を示す図である。
【図14】第2実施形態の動体立体視化画像を示す図である。
【図15】特定の左視点画像及び特定の右視点画像でない左視点画像及び右視点画像からその一部を切り取る処理を説明するための図である。
【図16】第3実施形態の動体立体視化画像を示す図である。
【図17】第4実施形態で行う特定の左視点画像及び特定の右視点画像の選択を説明するための図である。
【図18】第4実施形態の動体立体視化画像を示す図である。
【図19】第5実施形態で行う特定の左視点画像及び特定の右視点画像の選択と視差量の判定を説明するための図である。
【図20】第5実施形態の動体立体視化画像を示す図である。
【図21】本発明の動体立体視化画像生成プログラムがインストールされたPCを示す図である。
【発明を実施するための形態】
【0020】
図1に示すように、第1実施形態の複眼カメラ10は、カメラ本体11の前面に、左視点用12及び右視点用撮像部13とストロボ発光部14を、カメラ本体11の上面に、シャッタボタン15と電源スイッチ16を備えている。左視点用及び右視点用撮像部12,13は、互いの光軸が略平行となるように、所定間隔を隔てて設けられている。また、シャッタボタン15は半押し操作と全押し操作とが可能であり、半押し操作時にはオートフォーカスが行われ、全押し操作時には、その操作時点での撮像画像をメモリカード20(図2参照)に記録する。
【0021】
図2に示すように、カメラ本体11の背面には、モニタ18及び操作部19が設けられている。また、カメラ本体11の底面には、SDカードなどのメモリカード20が着脱自在に装填されるカードスロットと、このカードスロットの開口部を覆う開閉自在の装填蓋とが設けられている(いずれも図示省略)。
【0022】
モニタ18は、画像を表示するLCDとこのLCD上に貼り付けられたレンチキュラシート(いずれも図示省略)を備えており、LCDに表示された立体画像をレンチキュラシートを介して観察することで、画像を立体視することができる。操作部19は、各種モードの設定を行うモード切替スイッチ22と、モニタ18にメニュー画面や設定画面を表示させるメニューボタン23と、画面上のカーソルを移動させる十字キー24と、これらスイッチ等によって選択されるモード等を確定させる実行ボタン25とを備えている。
【0023】
本実施形態では、モード切替スイッチ22は、モニタ18上で静止状態の被写体を立体視可能にする立体画像を取得する静止画モードと、一定時間内に動く被写体(動体)の様子を1つの画像内で立体視可能にした立体画像である動体立体視化画像を取得するストロボモードとの間で、モードの切り替えが可能である。なお、静止画モードやストロボモードの他、動画モードなどを設けてもよい。
【0024】
図3に示すように、左視点用撮像部12は、被写体からの光が入射するレンズユニット37と、レンズユニット37によって結像される左視点画像を撮像して撮像信号を出力するCCD39と、CCD39から出力された撮像信号を所定の処理によって左視点画像信号(L画像信号)に変換し、変換したL画像信号を画像入力コントローラ45へと出力するAFE(Analog Front End)40と、CCD39及びAFE40に接続されており、CPU33からの指示に基づいて、画像入力コントローラ45への撮像信号の出力を制御する左視点用撮像制御部41を備えている。なお、被写体の撮像は、CCDに代えて、CMOS(Complementary Metal Oxide Semiconductor)で行ってもよい。
【0025】
右視点用撮像部13は、左視点用撮像部12と同様に、レンズユニット38、CCD48、AFE49、右視点用撮像制御部50を備えている。右視点用撮像部13では、右視点画像の撮像により得られる右視点画像信号(R画像信号)を画像入力コントローラ45へと出力する。
【0026】
CPU33は、カメラ本体11の内部に設けられており、複眼カメラ10の各部を電気的に制御する。このCPU33には、左視点用撮像制御部41及び右視点用撮像制御部50の両方を制御する統括撮像制御部33aが設けられている。統括撮像制御部33aは、静止画モードとストロボモードとで異なる制御を行う。静止画モードの場合、左視点用撮像部12及び右視点用撮像部13の両方で被写体を同時に撮像し、シャッタボタン15が全押し操作されたときに、メモリカード20に記録する左視点画像及び右視点画像の元となるL画像信号及びR画像信号を画像入力コントローラ45に出力する。
【0027】
一方、ストロボモードに設定されている場合には、時刻t0でシャッタボタン15を全押し操作してから、一定時間後の時刻tnで再度シャッタボタン15を全押し操作するまでの間、左視点用撮像部12及び右視点用撮像部13で被写体を同時に撮像するように制御する。撮像は、時刻t0から時刻tnの間、一定の時間間隔(t1―t0=t2−t1=・・・=tn―t(n−1))で連続的に行われる。即ち、連写撮影が行われる。これにより、左視差用撮像部12の撮像で得られる(n+1)枚分のL画像信号と、右視差用撮像部13の撮像で得られる(n+1)枚分のR画像信号が画像入力コントローラ45に出力される。
【0028】
画像入力コントローラ45は、所定容量のバッファを有しており、左視点用撮像部12及び右視点用撮像部13から出力されたL,R画像信号を一時的に蓄積するとともに、蓄積したL,R画像信号を信号処理回路56へと送信する。
【0029】
信号処理回路56は、画像入力コントローラ45からのL,R画像信号に対して階調変換、ホワイトバランス補正、γ補正処理、YC変換処理などの各種処理を施すことによって、L,R画像データを生成する。生成されたL,R画像データは、RAM34に格納される。RAM34に格納されたL,R画像データは、第1立体画像生成回路60及び第2立体画像生成回路61に読み出される。
【0030】
第1立体画像生成回路60は、静止画モードに設定されている場合に、RAM34から読み出したL,R画像データを合成することによって3D静止画像データを生成する。生成された3D静止画像データは表示回路59へ送信され、表示回路59は受信した3D静止画像データに基づいて、モニタ18に3D静止画像を表示する。そして、シャッタボタン15が全押し操作されたときには、静止画像データは、表示回路59及び圧縮伸張処理回路57に送信される。
【0031】
圧縮伸張処理回路57では、静止画像データに圧縮処理を行い、所定のファイル形式の圧縮合成画像データを生成する。生成された圧縮合成画像データは、メディアコントローラ58によってメモリカード20に記録される。また、表示回路59は、3D静止画像データに基づいて、モニタ18にシャッタボタン15全押し操作時点での3D静止画像を表示する。
【0032】
図4に示すように、第2立体画像生成回路61はストロボモード時に動体立体視化画像を生成する回路であり、左視点画像及び右視点画像の情報が含まれるL,R画像データから、動く被写体(動体)を検出する動体検出部70と、動体検出部70での検出結果に基づいて、全ての左視点画像及び右視点画像の中から、他の時刻の左視点画像及び右視点画像と合成したときに動体が重なり合わない特定の左視点画像及び右視点画像を選択する画像選択部71と、特定の左視点画像及び右視点画像から動体立体視化画像を生成する動体立体視化画像生成部72とを備えている。動体立体視化画像生成部72で生成された動体立体視化画像は、3D静止画像と同様に、モニタ18に表示されるとともに、動体立体視化画像データとして、メモリカード20に記録される。
【0033】
動体検出部70は、(n+1)枚分の左視点画像のそれぞれについて特徴点を抽出するととともに、各左視点画像間で互いに略共通する特徴点を対応点として特定する。例えば、図5の場合であれば、時刻t0の左視点画像上の特徴点Aの対応点は、時刻t1の左視点画像上では特徴点A1であり、時刻t2の左視点画像上ではA2となる。また、動体検出部70は、(n+1)枚分の右視点画像についても、同様にして特徴点を抽出し、各右視点画像間で互いに略共通する特徴点を対応点として特定する。
【0034】
そして、時刻t0を基準として、時刻t1、時刻t2・・・の順に各左視点画像及び右視点画像それぞれの対応点を比較することによって、動体を検出する。そして、時刻tk(kはn以下の自然数)で動体が検出されたら、対応点の位置情報とその周辺画素の輝度情報をRAM34に記録するとともに、動体の領域(大きさ)と動き方向X(図5参照)を推定する。そして、この推定結果から、時刻t0における動体の最大位置座標XmaxL0及び最小位置座標XminL0(いずれも動き方向Xに関する座標)を求めるとともに、時刻tkにおける動体の時刻tkにおける最大位置座標XmaxLk及び最小位置座標XminLk(いずれも動き方向Xに関する座標)を求める。動体検出部70では、動体の検出毎に、動体の領域と動き方向を推定し、その検出時点での動き方向に対する最大位置座標と最小位置座標を求める。
【0035】
画像選択部71は、時刻t0における動体の最大位置座標XmaxL0,XmaxR0を基準座標Ls,Rsとして設定した上で、動体検出時である時刻tkの左視点画像及び右視点画像において、動体の最小位置座標が基準座標Ls,Rs以上となるか否かを判定する。判定の結果、動体の最小位置座標XminLk, XminRkの両方が基準座標Ls,Rs以上でない場合は、時刻tkの左視点画像及び右視点画像は特定の左視点画像及び右視点画像画像として選択されない。
【0036】
一方、動体の最小位置座標XminLk, XminRkの両方が基準座標Ls,Rs以上と判定された場合には、時刻tkの左視点画像及び右視点画像を特定の左視点画像及び右視点画像画像として選択するとともに、基準座標Ls,Rsを時刻tkにおける最大位置座標XmaxLk,XmaxRkに変更する。以上の特定の左視点画像及び右視点画像画像の選択は、動体が検出される毎に行われる。
【0037】
例えば、図6に示すように、時刻t0から時刻t4までの間、被写体を連写撮影することによって、時刻t0から時刻t4までの5枚分の左視点画像及び5枚分の右視点画像が得られた場合における特定の左視点画像及び右視点画像画像の選択手順を、以下に示す。まず、時刻t0の左視点画像から動き方向Xに対する最大位置座標XmaxL0を基準座標Lsとして設定し、同様にして、時刻t0の右視点画像から動き方向Xに対する最大位置座標XmaxR0を基準座標Rsとして設定する。なお、図6では、動き方向Xの座標は、右側から左側に向かうほど大きくなる。
【0038】
次に、時刻t1の左視点画像中の動体の最小位置座標XminL1が基準座標Ls(XmaxL0)以上か否かを判定するとともに、時刻t1の右視点画像中の最小位置座標XminR1が基準座標Rs(XminR0)以上か否かを判定する。時刻t1においては、Ls(XmaxL0)>XminL1、且つRs(XmaxR0)>XminR1であるので、時刻t1の左視点画像及び右視点画像は特定の左視点画像及び右視点画像画像として選択されない。
【0039】
同様にして、次に、時刻t2の左視点画像において、動き方向Xに対する最小位置座標XminL2が基準座標Ls(XmaxL0)以上か否かを判定するとともに、時刻t2の右視点画像において、最小位置座標XminR2が基準座標Rs(XminR0)以上か否かを判定する。時刻t2においては、Ls(XmaxL0)≦XminL2、且つRs(XmaxR0)≦XminR2であるので、時刻t2の左視点画像及び右視点画像は特定の左視点画像及び右視点画像画像として選択される。また、基準座標LsはXmaxL2に、基準座標RsはXmaxR2に更新される。
【0040】
次に、時刻t3の左視点画像において、動き方向Xに対する最小位置座標XminL3が基準座標Ls(XmaxL2)以上か否かを判定するとともに、時刻t3の右視点画像において、最小位置座標XminR3が基準座標Rs(XminR2)以上か否かを判定する。時刻t3においては、Rs(XmaxR2)≦XminR3であるものの、Ls(XmaxL2)>XminL3であるので、時刻t3の左視点画像及び右視点画像は特定の左視点画像及び右視点画像画像として選択されない。
【0041】
次に、時刻t4の左視点画像において、動き方向Xに対する最小位置座標XminL4が基準座標Ls(XmaxL2)以上か否かを判定するとともに、時刻t4の右視点画像において、最小位置座標XminR4が基準座標Rs(XminR2)以上か否かを判定する。時刻t4においては、Ls(XmaxL2)≦XminL4、且つRs(XmaxR2)≦XminR4であるので、時刻t4の左視点画像及び右視点画像は特定の左視点画像及び右視点画像画像として選択される。
【0042】
以上から、時刻t0から時刻t4までの左視点画像及び右視点画像の中から、時刻t2、時刻t4の左視点画像及び右視点画像が合成対象画像として選択される。また、時刻t0の左視点画像及び右視点画像についても、他の時刻の左視点画像及び右視点画像と合成したときに動体が重なり合うことが無いので、特定の左視点画像及び右視点画像画像として選択される。
【0043】
動体立体視化画像生成部72は、特定の左視点画像を合成することにより左視点合成画像を生成するとともに、特定の右視点画像とを合成することにより右視点合成画像を生成する。そして、左視点合成画像と右視点合成画像を更に合成することによって、1つの画像内で動体の様子を立体視することができる動体立体視化画像が生成される。
【0044】
例えば、図6のように、時刻t0、時刻t2、時刻t4の左視点画像及び右視点画像が特定の左視点画像及び右視点画像画像として選択された場合には、図7に示すように、時刻t0、時刻t2、時刻t4の左視点画像の合成画像である左視点合成画像75と、時刻t0、時刻t2、時刻t4の右視点画像の合成画像である右視点合成画像76とを更に合成することによって、時刻t0から時刻t4間における動体の様子を立体視可能にした動体立体視化画像77が得られる。
【0045】
この動体立体視化画像77の生成には、特定の左視点画像及び右視点画像画像として選択された時刻t0、時刻t2、時刻t4の左視点画像及び右視点画像のみが使用され、特定の左視点画像及び右視点画像画像として選択されなかった時刻t1、時刻t3の左視点画像及び右視点画像は使用されない。仮に、この使用されなかった時刻t1の左視点画像及び右視点画像と時刻t0の左視点画像及び右視点画像と合成した場合には、それぞれの動体が重なり合ってしまう(動体の多重化)。また、同様にして、時刻t3の左視点画像を時刻t2の左視点画像に合成した場合にも、動体の多重化が発生する。
【0046】
したがって、動体立体視化画像は、このような動体の多重化が起こり得る左視点画像及び右視点画像を使用せずに生成されているため、画質破綻を起こすことなく、動体の様子を3D画像として確実に把握することができる。
【0047】
また、時刻t3のときのように、左視点画像又は右視点画像いずれか一方ののみ動体の多重化が起こり得る場合であっても、その時刻における左視点画像及び右視点画像は動体立体視化画像の生成に使用しないことで、画質劣化を引き起こすおそれがない。例えば、動体の多重化と両眼における視差とを混同してしまうことを防止することができる。
【0048】
また、動体が検出される毎に、動体の大きさや動き方向を検出しているため、途中で動体が異なる方向に移動したり、大きさが変形した場合であっても、画像を合成したときに動体が多重化を起こすか否かを正確に判定することができる。
【0049】
また、動体立体視化画像を生成する際には、特定の左視点画像をマルチフレーム合成処理した左視点合成画像と、同様にして特定の右視点画像をマルチフレーム合成処理した右視点合成画像とを用いていることから、背景などの動体以外の領域を高感度で低ノイズな画質にすることができる。
【0050】
次に、動体立体視化画像を生成するまでの流れを、図8及び図9のフローチャートに沿って説明する。まず、モード切替スイッチ22によってストロボモードに切り替える。そして、左視点用撮像部12及び右視点用撮像部13を被写体に向けた状態で、シャッタボタン15を全押し操作する(時刻t0)。この全押し操作と同時又は直後に、被写体を動かす。一定時間後に、動く被写体(動体)がモニタ18上からフレームアウトしたら、再度、シャッタボタン15を全押し操作する(時刻tn)。これにより、時刻t0〜時刻tn(nは1以上の自然数)間の左視点画像及び右視点画像が得られる。
【0051】
時刻t0〜時刻tn間の左視点画像及び右視点画像が得られたら、動体検出部70によって、全ての左視点画像及び右視点画像から特徴点を抽出する。次に、時刻t0の左視点画像及び右視点画像と時刻t1の左視点画像及び右視点画像との対応点を比較することによって、時刻t1の左視点画像及び右視点画像に動体が存在するか否かを検出する動体の検出処理を行う。動体が検出されない場合には、次の時刻t2の左視点画像及び右視点画像に対して、同様の処理を行う。この動体の検出処理は、各時刻の左視点画像及び右視点画像毎に行われ、動体が検出されるまで繰り返し行われる。
【0052】
そして、時刻tkの左視点画像及び右視点画像から動体が検出されたら、その対応点及びその周辺画素の輝度情報を利用して、動体の大きさと動き方向Xを推定する。また、画像選択部71において、時刻t0における動体の最大位置座標XmaxL0,XmaxR0を基準座標Ls,Rsに設定した上で、基準座標Ls,Rsと時刻tkにおける動体の最小位置座標XminLk,XminRkとを大小比較する。大小比較した結果、XminLk≧LsとXminRk≧Rsの両方を満たさない場合には、時刻tkの左視点画像及び右視点画像を特定の左視点画像及び右視点画像画像として選択せず、次の時刻t(k+1)について動体の検出処理を行う。
【0053】
一方、XminLk≧LsとXminRk≧Rsの両方を満たす場合には、時刻tkの左視点画像及び右視点画像を特定の左視点画像及び右視点画像画像として選択する。そして、基準座標Ls,Rsを時刻tkにおける動体の最大位置座標XmaxLk,XmaxRkに変更する。この基準座標の変更が完了したら、次の時刻t(k+1)について動体の検出処理を行う。
【0054】
全ての左視点画像及び右視点画像について、動体の検出と特定の左視点画像及び右視点画像画像か否かの判定が完了した後は、動体立体視化画像生成部72で動体立体視化画像生成処理を行う。動体立体視化画像生成部72では、特定の左視点画像を合成することによって、左視点合成画像を生成する。また、同様にして、特定の右視点画像を合成することによって、右視点合成画像を生成する。その上で、左視点合成画像と右視点合成画像とを更に合成することによって、動体立体視化画像を生成する。生成された動体立体視化画像は、モニタ18に表示されるとともに、動体立体視化画像データとして、メモリカード20に記録される。
【0055】
なお、第1実施形態では、全ての左視点画像及び右視点画像に対して動体の検出処理をし、動体が検出された左視点画像及び右視点画像の中で、特定の左視点画像及び右視点画像画像に該当するか否かの判定を行ったが、これに限る必要はない。
【0056】
例えば、図10に示すように、右視点画像のみ特徴点の抽出を行い、その抽出結果に基づいて、動体の検出処理を行う。検出の結果、時刻tkの右視点画像から動体が検出されたら、時刻tkにおける動体の最小位置座標XminRkと基準座標Rsとを大小比較する。大小比較の結果、XminRk≧Rsを満たす場合には、時刻tkの右視点画像を特定の右視点画像として仮選択する。なお、図10において、特徴点の抽出から基準座標の変更までのフローは、右視点画像のみ処理を行う点以外は、図8と同様であるので、詳細な説明を省略する。
【0057】
全ての右視点画像について動体の検出処理及び特定の右視点画像か否かの判定が完了したら、図11に示すように、全ての左視点画像の中から、仮選択した特定の右視点画像と同時刻に撮像した左視点画像を選択する。そして、これら選択された左視点画像(以下「選択左視点画像」とする)から特徴点を抽出し、抽出した特徴点を用いて各画像毎に動体の大きさ及び動き方向を推定する。そして、この推定結果を利用して、選択左視点画像の中から、他の時刻の選択左視点画像と合成したときに動体が重なり合わない特定の左視点画像を選択する。特定の左視点画像か否かの判定は、全ての選択左視点画像に対して行われる。
【0058】
なお、選択左視点画像の中から選択される特定の左視点画像は、上記実施形態と同様に、動き方向における動体の最小位置座標が基準座標以上である選択左視点画像とされる。また、特定の左視点画像の選択の際に行われる基準座標の設定及び最小位置座標と基準座標の大小比較については、上記実施形態と同様であるため、詳細な説明を省略する。
【0059】
そして、全ての選択左視点画像について特定の左視点画像か否かの判定が完了すると、仮選択された特定の右視点画像の中から、特定の左視点画像と同時刻に撮像された特定の右視点画像を本選択してから、動体立体視化画像生成処理を行う。
【0060】
図12に示すように、動体立体視化画像生成処理では、特定の左視点画像を合成することによって、左視点合成画像を生成する。また、本選択された特定の右視点画像を合成することによって、右視点合成画像を生成する。そして、これら生成された左視点合成画像及び右視点合成画像を更に合成することによって、動体立体視化画像を生成する。
【0061】
以上のように、動体立体視化画像を生成することで、この画像の生成に必要な処理を減らすことができ、また、処理時間を短くすることができる。なお、全ての右視点画像の中から特定の右視点画像を仮選択した上で、その仮選択した特定の右視点画像と同時刻に撮像した左視点画像の中から特定の左視点画像を選択したが、反対に、全ての左視点画像の中から特定の左視点画像を仮選択した上で、その仮選択した特定の左視点画像と同時刻の撮像した右視点画像の中から特定の右視点画像を選択してもよい。
【0062】
本発明の第2実施形態では、特定の左視点画像及び特定の右視点画像をマルチフレーム合成する際にいずれの時刻における動体も同等の輝度となるように合成する第1実施形態と異なり、特定の時刻における動体が、他の時刻における動体よりも強調されるように合成を行う。即ち、特定の時刻における動体の合成比率を、他の時刻における動体の合成比率よりも大きくする。第2実施形態では、特徴点の抽出から基準座標の変更まで(図8参照)は、第1実施形態と同様の処理を行う。
【0063】
そして、全ての左視点画像及び右視点画像について動体の検出及び特定の左視点画像及び右視点画像に該当するか否かの判定が完了したら、図13に示すように、動体の合成比率を高くする時刻txを、操作部19によって入力する。そして、図14に示すように、時刻txにおける動体100aの合成比率が他の時刻の動体の合成比率よりも高くなるように、特定の左視点画像をマルチフレーム合成して左視点合成画像100を生成する。また、右視点画像についても同様の処理を行うことによって、時刻txにおける動体101aの合成比率が高い右視点合成画像101を生成する。これら左視点合成画像と右視点合成画像を合成することによって、時刻tの動体102aが他の時刻の動体よりも強調された動体立体視化画像102が得られる。
【0064】
なお、第2実施形態では、動体立体視化画像において特定の時刻の動体のみを強調したが、これに限られない。例えば、モニタに動体立体視化画像を表示するときには、動体の動きの様子が分かるように、強調する動体を一定時間毎に変えてもよい。
【0065】
本発明の第3実施形態では、特定の左視点画像及び右視点画像のみ合成し、特定の左視点画像及び右視点画像でない左視点画像及び右視点画像については合成しなかった第1実施形態と異なり、特定の左視点画像及び右視点画像でない左視点画像及び右視点画像であっても、動体立体視化画像内で不自然な立体画像とならなければ、それらの一部を合成してもよい。
【0066】
例えば、図15では、時刻t2の左視点画像及び右視点画像については、特定の左視点画像及び右視点画像であるため、いずれも動体の最小位置座標XminL2,XminR2が基準座標Ls,Rsを超えている。これに対して、時刻t1の左視点画像及び右視点画像については、いずれも動体の最小位置座標XminL1,XminR1が基準座標Ls,Rs未満となっており、時刻t3の右視点画像については動体の最小位置座標XminR3が基準座標Lsを超えているものの、時刻t3の左視点画像については動体の最小位置座標XminL3が基準座標Rs未満となっている。
【0067】
そこで、動体の最小位置座標XminL1,XminR1がいずれも基準座標Ls,Rs未満となっている時刻t1の左視点画像及び右視点画像について、時刻t1の左視点画像のうち動き方向Xに関してLs(XminL0)を超える領域を切り取るとともに、時刻t1の右視点画像のうち動き方向Xに関してRs(XminR0)を超える領域を切り取る。
【0068】
そして、図16に示すように、時刻t0、時刻t2の特定の左視点画像及び特定の右視点画像と、時刻t1の左視点画像及び右視点画像から切り取られた領域部分(Ls(XminL0),Rs(XminR0)を超える領域部分)の画像とを合成することによって、左視点合成画像120が得られる。その際、上記の時刻t1の左視点画像及び右視点画像から切り取られた領域部分の合成比率は、他の画像よりも低くする。右視点画像についても同様の合成処理をすることによって、右視点合成画像121が得られる。そして、得られた左視点合成画像120と右視点合成画像121を更に合成することによって、動体立体視化画像122が得られる。
【0069】
動体立体視化画像122には、特定の左視点画像及び右視点画像でない画像中の動体の一部が合成されたことで、動体立体視化画像122上で動体のスピード感を表現することができる。また、その動体の一部の合成比率は他の画像よりも低くしているため、動体が見にくくなったりするなどの画質劣化が起こることが無い。
【0070】
なお、第3実施形態では、時刻t1のように、左視点画像及び右視点画像についていずれも動体の最小位置座標が基準座標未満の場合にのみ、それら画像中の動体の一部を動体立体視化画像に加えたが、時刻t3のように、左視点画像及び右視点画像のうちのいずれか一方のみが動体の最小位置座標が基準座標未満の場合にも、それら画像中の動体の一部を動体立体視化画像に加えてもよい。
【0071】
本発明の第4実施形態では、動体立体視化画像内で1つの動体の様子を立体視可能にした第1実施形態と異なり、2つ以上の動体の様子を1つの画像内で立体視可能にする動体立体視化画像を生成する。動体が2以上の場合であっても、各時刻における左視点画像及び右視点画像において、動体の大きさ及び動き方向を検出するとともに、検出された全ての動体について最小位置座標が基準座標以上か否かを判定する。そして、判定の結果、全ての動体について最小位置座標が基準座標以上のときに、その時刻の左視点画像及び右視点画像を特定の左視点画像及び右視点画像とする。
【0072】
例えば、図17に示すように、時刻t1の左視点画像及び右視点画像では、時刻t0の左視点画像及び右視点画像との対応点の比較から、右側から左側に向かう動き方向Xで移動する動体Z1と、左側から右側に向かう動き方向Yで移動する動体Z2が検出される。動体Z1については、左視点画像及び右視点画像ともに、最小位置座標XminL1,XminR1が基準座標XLs,XRsを下回っている。また、動体Z2についても、左視点画像及び右視点画像ともに、最小位置座標YminL1,YminR1が基準座標YLs,YRsを下回っている。したがって、いずれの動体Z1及びZ2についても最小位置座標が基準座標を下回っているため、左視点画像及び右視点画像は特定の左視点画像及び右視点画像とされない。なお、図17では、動き方向Yの座標は、左側から右側に向かうほど大きくなる。
【0073】
一方、時刻t2の左視点画像及び右視点画像については、動体Z1の最小位置座標XminL2,XminR2が基準座標XLs,XRsを超えており、また動体Z2の最小位置座標YminL2,YminR2が基準座標YLs,YRsを超えているため、左視点画像及び右視点画像は特定の左視点画像及び右視点画像とされる。そして、図18に示すように、時刻t0、時刻t2の特定の左視点画像を合成することにより左視点合成画像130を生成するとともに、初期時刻t0、時刻t2の特定の右視点画像を合成することにより右視点合成画像131を生成する。そして、これら左視点合成画像130と右視点合成画像131を更に合成することにより、2つの動体Z1及びZ2が1つの画像内で立体視可能な動体立体視化画像132が生成される。
【0074】
本発明の第5実施形態では、複眼カメラ10に対して接近する方向または離れる方向(奥行き方向)に動く被写体の動体立体視化画像を生成する。第5実施形態では、各時刻における左視点画像及び右視点画像が特定の左視点画像及び右視点画像に該当するか否かの判定には、各時刻における動体の最小位置座標が基準座標以上となるか否かの判定だけでなく、同時刻における左視点画像と右視点画像とで同一の動体がどの程度離れているかを示す視差量が許容範囲内に収まっているか否かの判定を利用する。
【0075】
例えば、図19に示すように、時刻t0から時刻t3までの間で、動体が複眼カメラ10に接近する方向に移動する場合について説明する。まず、時刻t0の左視点画像から動き方向Yに移動する動体の最大位置座標YmaxL0を基準座標Lsに設定するとともに、時刻t0の右視点画像から動き方向Xに移動する動体の最大位置座標XmaxR0を基準座標Rsに設定する。また、時刻t0の左視点画像及び右視点画像から、動体の視差量D0を求め、この求めた視差量D0から最大限許容される許容値Dmaxを求める。
【0076】
次に、各時刻の左視点画像及び右視点画像において、動体の最小位置座標が基準座標以上か否かを判定するとともに、動体の視差量が許容値を超えているか否かを判定する。時刻t1では、視差量D1は許容量Dmax未満である。しかしながら、時刻t1の左視点画像及び右視点画像のいずれも、動体の最小位置座標XminL1,XminR1は基準座標XLs,XRs未満であり、最小位置座標,YminL1,YminR1は基準座標YLs,YRs未満である。したがって、左視点画像及び右視点画像は特定の左視点画像及び右視点画像として選択されない。
【0077】
時刻t2の左視点画像及び右視点画像では、視差量D2は許容量Dmax未満である。また、時刻t2の左視点画像及び右視点画像のいずれも、動体の最小位置座標XminL2,XminR2は基準座標XLs,XRsを超えており、最小位置座標,YminL2,YminR2は基準座標YLs,YRsを超えている。したがって、時刻t2の左視点画像及び右視点画像は特定の左視点画像及び右視点画像として選択される。
【0078】
時刻t3左視点画像及び右視点画像については、動体の最小位置座標XminL3,XminR3は基準座標XLs,XRsを超えており、最小位置座標,YminL3,YminR3は基準座標YLs,YRsを超えている。しかしながら、視差量D3が許容量Dmaxを超えている。したがって、時刻t3の左視点画像及び右視点画像は特定の左視点画像及び右視点画像として選択されない。
【0079】
以上から、時刻t0から時刻t3までの左視点画像及び右視点画像の中から、時刻t2の左視点画像及び右視点画像が特定の左視点画像及び右視点画像として、また、他の時刻の左視点画像及び右視点画像と合成したときに動体が重なり合わない時刻t0の左視点画像及び右視点画像も、特定の左視点画像及び右視点画像として選択される。
【0080】
そして、図20に示すように、時刻t0、時刻t2の左視点画像を合成することにより左視点合成画像140が生成される。また、時刻t0、時刻t2の右視点画像を合成することにより右視点合成画像141が生成される。そして、これら左視点合成画像140と右視点合成画像141を更に合成することにより、複眼カメラ10に対して奥行き方向に移動する動体の様子を立体視することができる動体立体視化画像142が生成される。このように動体立体視化画像142を生成することで、複眼カメラ10から一定距離離れた平面内を移動する動体ではなく、奥行き方向に移動する動体の場合であっても、その動体の様子を3D画像として確実に把握することができる。
【0081】
なお、上記第1〜第5実施形態では、ストロボモード時に取得した左視点画像及び右視点画像を用いて、複眼カメラ10で動体立体視化画像を生成したが、これに代えて、図21に示すように、メモリカード20に記録したストロボモード時の左視点画像及び右視点画像をPC150のカードスロット150aを介して読み込み、その読み込んだ左視点画像及び右視点画像を用いて、PC150内の動体立体視化画像生成部151で動体立体視化画像を生成してもよい。生成された動体立体視化画像は、画像表示部にレンチキュラシート(いずれも図示省略)が設けられたディスプレイ152に表示される。
【0082】
なお、PC内は第2立体画像生成回路61と同様の機能を有する動体立体視化画像生成プログラムが格納された記憶部を備えており、3D画像ストロボ生成回路151はその動体立体視化画像生成プログラムを実行することによって、動体立体視化画像を生成する。
【符号の説明】
【0083】
10 複眼カメラ
12 左視点用撮像部
13 右視点用撮像部
61 第2立体画像生成回路
70 動体検出部
71 画像選択部
72 動体立体視化画像生成部
75,100,120,130,140 左視点合成画像
76,101,121,131,141 右視点合成画像
77,102,122,132,142 動体立体視化画像
【技術分野】
【0001】
本発明は、被写体を立体視可能にする3D画像を生成する3D画像生成方法、3D画像生成プログラム、及び3D画像生成装置に関する。
【背景技術】
【0002】
1枚の写真内に、動く被写体(動体)の様子を表したストロボ写真が知られている。従来の撮像手段として広く用いられていたフィルムカメラでは、絞りを開放してフィルムを露光させた状態で、一定時間毎に複数回のストロボ発光を行うことによって、ストロボ写真を生成していた。このような従来のフイルムカメラに代わって、今日広く普及しているデジタルカメラでは、動体が動く間、連写撮影をすることによって得られる複数枚の画像をコンピュータで画像処理することによって、ストロボ写真のような画像を生成している(特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2010−166545号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
今日では、1つの撮像ユニットで撮像を行う単眼のデジタルカメラの他に、左目用と右目用の2つの撮像ユニットで被写体を撮像することによって、被写体の立体視が可能な3D画像を取得する立体撮像装置に対する需要が伸びてきている。このような立体撮像装置には、3Dの静止画や3Dの動画を取得する機能を備えているものは存在するが、動く被写体の様子を1つの画像内で立体視することができる立体画像を取得する3Dストロボ機能を備えているものは現時点では存在しない(特許文献1にも記載及び示唆は無い)。
【0005】
なお、立体撮像装置においても、連写撮像により得られる複数枚の左視点画像及び右視点画像を合成することで、ストロボ写真のような立体画像を得ることはできる。しかしながら、このように単に左視点画像及び右視点画像を合成しただけの立体画像は、動体の動きが遅い部分があると、その部分の動体が重複してしまうことがある。このように動体が重複してしまうと、部分的に動体の前後関係が分かり難くなるため、観察者は動体を立体視し難くなるおそれがある。
【0006】
本発明は、動体の様子を1つの画像内で立体視することができる立体画像を生成できる3D画像生成方法、3D画像生成プログラム、及び3D画像生成装置を提供することを目的とする。
【課題を解決するための手段】
【0007】
上記目的を達成するために、本発明の3D画像生成方法は、互いに異なる2つの視点から動く被写体である動体を同じタイミングで撮像する同時撮像を、連続して行うことによって得られる複数枚の第1の視点画像及び第2の視点画像を取得する画像取得ステップと、前記複数枚の第1の視点画像及び第2の視点画像の中から、他のタイミングで撮像された第1の視点画像を合成したときに動体が重なり合わない特定の第1の視点画像と、この特定の第1の視点画像と同時撮像され、且つ、他のタイミングで撮像された第2の視点画像を合成したときに動体が重なり合わない特定の第2の視点画像を選択する画像選択ステップと、選択された特定の第1の視点画像及び特定の第2の視点画像を合成することにより、動体の様子を1つの画像内で立体視可能な立体画像を生成する立体画像生成ステップとを有することを特徴とする。
【0008】
前記画像選択ステップは、各撮像タイミングにおける第1の視点画像中の動体の動き方向を検出するとともに、各撮像タイミングにおける第2の視点画像中の動体の動き方向を検出する第1の動き方向検出ステップと、前記複数枚の第1の視点画像及び第2の視点画像の中から、動き方向に関する動体の座標が所定の条件を満たす第1の視点画像を前記特定の第1の視点画像として選択し、この特定の第1の視点画像と同時撮像され、且つ、動き方向に関する動体の座標が所定の条件を満たす第2の視点画像を特定の第2の視点画像として選択する第1の選択ステップとを含むことが好ましい。
【0009】
前記画像選択ステップは、各撮像タイミングにおける第1の視点画像中の動体の動き方向を検出する第2の動体検出ステップと、前記複数枚の第1の視点画像の中から、動き方向に関する動体の座標が所定の条件を満たす特定の第1の視点画像を仮選択するとともに、前記複数枚の第2の視点画像の中から、仮選択された特定の第1の視点画像と同時撮像された第2の視点画像を選択する第2の選択ステップと、前記第2の選択ステップで選択された第2の視点画像中の動体の動き方向を検出する第3の動体検出ステップと、前記第2の選択ステップで選択された第2の視点画像の中から、動き方向に関する動体の座標が所定の条件を満たす特定の第2の視点画像を選択するとともに、仮選択された特定の第1の視点画像の中から、前記特定の第2の視点画像と同時撮像された特定の第1の視点画像を本選択する第3の選択ステップと、前記立体画像生成ステップは、前記第3の選択ステップで本選択された特定の第1の視点画像及び前記第3の選択ステップで選択された特定の第2の視点画像を合成することにより、立体画像を生成することが好ましい。
【0010】
前記所定の条件は、第1の撮像タイミングにおける動体の最小位置座標が、その第1の撮像タイミングの前の第2の撮像タイミングにおける動体の最大位置座標から設定された基準座標以上であることが好ましい。
【0011】
前記立体画像生成ステップは、特定の撮像タイミングにおける動体が他の撮像タイミングの動体よりも強調されるように、立体画像を生成することが好ましい。
【0012】
前記立体画像生成ステップは、前記選択された特定の第1の視点画像及び前記特定の第2の視点画像に加えて、前記特定の第1の視点画像として選択されなかった第1の視点画像の一部と、前記特定の第2の視点画像として選択されなかった第2の視点画像の一部とを合成することにより、立体画像を生成することが好ましい。
【0013】
前記立体画像生成ステップは、複数の動体の様子を1つの画像内で立体視可能な立体画像を生成することが好ましい。
【0014】
同時撮像された第1の視点画像及び第2の視点画像において同一の動体がどの程度離れているかを示す視差量が、予め設定された許容値を超えたか否かを判定する視差量判定ステップを有し、前記立体画像生成ステップは、前記選択された特定の第1の視点画像及び前記特定の第2の視点画像のうち視差量が許容値未満である画像のみを合成することにより、立体画像を生成することが好ましい。
【0015】
本発明の3D画像生成プログラムは、上記記載の本発明の3D画像生成方法における各ステップをコンピュータに実行させることを特徴とする。
【0016】
本発明の3D画像生成装置は、互いに異なる2つの視点から動く被写体である動体を同じタイミングで撮像する同時撮像を、連続して行うことによって得られる複数枚の第1の視点画像及び第2の視点画像を取得する画像取得手段と、前記複数枚の第1の視点画像及び第2の視点画像の中から、他のタイミングで撮像された第1の視点画像を合成したときに動体が重なり合わない特定の第1の視点画像と、この特定の第1の視点画像と同時撮像され、且つ、他のタイミングで撮像された第2の視点画像を合成したときに動体が重なり合わない特定の第2の視点画像を選択する画像選択手段と、選択された特定の第1の視点画像及び前記特定の第2の視点画像を合成することにより、動体の様子を1つの画像内で立体視可能な立体画像を生成する立体画像生成手段とを備えることを特徴とする。
【発明の効果】
【0017】
本発明によれば、動体の様子を1つの画像内で立体視することができる立体画像を生成することができる。この立体画像は、複数枚の第1の視点画像及び第2の視点画像の中から、他のタイミングで撮像された第1の視点画像を合成したときに動体が重なり合わない特定の第1の視点画像と、この特定の第1の視点画像と同時撮像され、且つ、他のタイミングで撮像された第2の視点画像を合成したときに動体が重なり合わない特定の第2の視点画像を選択した上で、これら選択された特定の第1の視点画像及び特定の第2の視点画像を用いて生成されているため、画質が顕著に劣化せず、また不自然な3D画像とならない。
【0018】
また、立体画像は特定の第1の視点画像及び特定の第2の視点画像のマルチフレーム合成により生成されるため、背景など動体が無い領域は高感度低ノイズの画質を得ることができる。また、上記特定の第1の視点画像及び特定の第2の視点画像の選択は、各撮像タイミングにおける第1の視点画像及び第2の視点画像中の動体の動き方向の座標を用いて行っているため、他の撮像タイミングの左視点画像及び右視点画像を合成したときの動体の重なり合い(多重化)を確実に回避することができる。
【図面の簡単な説明】
【0019】
【図1】正面側から見た複眼カメラの図である。
【図2】背面側から見た複眼カメラの図である。
【図3】複眼カメラの電気的構成を示す図である。
【図4】第2立体画像生成回路の各部を示す図である。
【図5】各時刻における動体の対応点を説明するための図である。
【図6】第1実施形態で行う特定の左視点画像及び特定の右視点画像の選択を説明するための図である。
【図7】第1実施形態の動体立体視化画像を示す図である。
【図8】左視点画像及び右視点画像の取得から動体立体視化画像の生成までの流れを示す図である。
【図9】図8のフローに従って得られる特定の左視点画像及び特定の右視点画像から動体立体視化画像を生成する手順を示す図である。
【図10】左視点画像及び右視点画像の取得から特定の右視点画像の仮選択を行うまでのフローを示す図である。
【図11】図10のフローに引き続いて動体立体視化画像を生成するまでのフローを示す図である。
【図12】図10及び図11のフローに従って得られる特定の左視点画像及び本選択された特定の右視点画像から動体立体視化画像を生成する手順を示す図である。
【図13】第2実施形態の動体立体視化画像を生成する手順を示す図である。
【図14】第2実施形態の動体立体視化画像を示す図である。
【図15】特定の左視点画像及び特定の右視点画像でない左視点画像及び右視点画像からその一部を切り取る処理を説明するための図である。
【図16】第3実施形態の動体立体視化画像を示す図である。
【図17】第4実施形態で行う特定の左視点画像及び特定の右視点画像の選択を説明するための図である。
【図18】第4実施形態の動体立体視化画像を示す図である。
【図19】第5実施形態で行う特定の左視点画像及び特定の右視点画像の選択と視差量の判定を説明するための図である。
【図20】第5実施形態の動体立体視化画像を示す図である。
【図21】本発明の動体立体視化画像生成プログラムがインストールされたPCを示す図である。
【発明を実施するための形態】
【0020】
図1に示すように、第1実施形態の複眼カメラ10は、カメラ本体11の前面に、左視点用12及び右視点用撮像部13とストロボ発光部14を、カメラ本体11の上面に、シャッタボタン15と電源スイッチ16を備えている。左視点用及び右視点用撮像部12,13は、互いの光軸が略平行となるように、所定間隔を隔てて設けられている。また、シャッタボタン15は半押し操作と全押し操作とが可能であり、半押し操作時にはオートフォーカスが行われ、全押し操作時には、その操作時点での撮像画像をメモリカード20(図2参照)に記録する。
【0021】
図2に示すように、カメラ本体11の背面には、モニタ18及び操作部19が設けられている。また、カメラ本体11の底面には、SDカードなどのメモリカード20が着脱自在に装填されるカードスロットと、このカードスロットの開口部を覆う開閉自在の装填蓋とが設けられている(いずれも図示省略)。
【0022】
モニタ18は、画像を表示するLCDとこのLCD上に貼り付けられたレンチキュラシート(いずれも図示省略)を備えており、LCDに表示された立体画像をレンチキュラシートを介して観察することで、画像を立体視することができる。操作部19は、各種モードの設定を行うモード切替スイッチ22と、モニタ18にメニュー画面や設定画面を表示させるメニューボタン23と、画面上のカーソルを移動させる十字キー24と、これらスイッチ等によって選択されるモード等を確定させる実行ボタン25とを備えている。
【0023】
本実施形態では、モード切替スイッチ22は、モニタ18上で静止状態の被写体を立体視可能にする立体画像を取得する静止画モードと、一定時間内に動く被写体(動体)の様子を1つの画像内で立体視可能にした立体画像である動体立体視化画像を取得するストロボモードとの間で、モードの切り替えが可能である。なお、静止画モードやストロボモードの他、動画モードなどを設けてもよい。
【0024】
図3に示すように、左視点用撮像部12は、被写体からの光が入射するレンズユニット37と、レンズユニット37によって結像される左視点画像を撮像して撮像信号を出力するCCD39と、CCD39から出力された撮像信号を所定の処理によって左視点画像信号(L画像信号)に変換し、変換したL画像信号を画像入力コントローラ45へと出力するAFE(Analog Front End)40と、CCD39及びAFE40に接続されており、CPU33からの指示に基づいて、画像入力コントローラ45への撮像信号の出力を制御する左視点用撮像制御部41を備えている。なお、被写体の撮像は、CCDに代えて、CMOS(Complementary Metal Oxide Semiconductor)で行ってもよい。
【0025】
右視点用撮像部13は、左視点用撮像部12と同様に、レンズユニット38、CCD48、AFE49、右視点用撮像制御部50を備えている。右視点用撮像部13では、右視点画像の撮像により得られる右視点画像信号(R画像信号)を画像入力コントローラ45へと出力する。
【0026】
CPU33は、カメラ本体11の内部に設けられており、複眼カメラ10の各部を電気的に制御する。このCPU33には、左視点用撮像制御部41及び右視点用撮像制御部50の両方を制御する統括撮像制御部33aが設けられている。統括撮像制御部33aは、静止画モードとストロボモードとで異なる制御を行う。静止画モードの場合、左視点用撮像部12及び右視点用撮像部13の両方で被写体を同時に撮像し、シャッタボタン15が全押し操作されたときに、メモリカード20に記録する左視点画像及び右視点画像の元となるL画像信号及びR画像信号を画像入力コントローラ45に出力する。
【0027】
一方、ストロボモードに設定されている場合には、時刻t0でシャッタボタン15を全押し操作してから、一定時間後の時刻tnで再度シャッタボタン15を全押し操作するまでの間、左視点用撮像部12及び右視点用撮像部13で被写体を同時に撮像するように制御する。撮像は、時刻t0から時刻tnの間、一定の時間間隔(t1―t0=t2−t1=・・・=tn―t(n−1))で連続的に行われる。即ち、連写撮影が行われる。これにより、左視差用撮像部12の撮像で得られる(n+1)枚分のL画像信号と、右視差用撮像部13の撮像で得られる(n+1)枚分のR画像信号が画像入力コントローラ45に出力される。
【0028】
画像入力コントローラ45は、所定容量のバッファを有しており、左視点用撮像部12及び右視点用撮像部13から出力されたL,R画像信号を一時的に蓄積するとともに、蓄積したL,R画像信号を信号処理回路56へと送信する。
【0029】
信号処理回路56は、画像入力コントローラ45からのL,R画像信号に対して階調変換、ホワイトバランス補正、γ補正処理、YC変換処理などの各種処理を施すことによって、L,R画像データを生成する。生成されたL,R画像データは、RAM34に格納される。RAM34に格納されたL,R画像データは、第1立体画像生成回路60及び第2立体画像生成回路61に読み出される。
【0030】
第1立体画像生成回路60は、静止画モードに設定されている場合に、RAM34から読み出したL,R画像データを合成することによって3D静止画像データを生成する。生成された3D静止画像データは表示回路59へ送信され、表示回路59は受信した3D静止画像データに基づいて、モニタ18に3D静止画像を表示する。そして、シャッタボタン15が全押し操作されたときには、静止画像データは、表示回路59及び圧縮伸張処理回路57に送信される。
【0031】
圧縮伸張処理回路57では、静止画像データに圧縮処理を行い、所定のファイル形式の圧縮合成画像データを生成する。生成された圧縮合成画像データは、メディアコントローラ58によってメモリカード20に記録される。また、表示回路59は、3D静止画像データに基づいて、モニタ18にシャッタボタン15全押し操作時点での3D静止画像を表示する。
【0032】
図4に示すように、第2立体画像生成回路61はストロボモード時に動体立体視化画像を生成する回路であり、左視点画像及び右視点画像の情報が含まれるL,R画像データから、動く被写体(動体)を検出する動体検出部70と、動体検出部70での検出結果に基づいて、全ての左視点画像及び右視点画像の中から、他の時刻の左視点画像及び右視点画像と合成したときに動体が重なり合わない特定の左視点画像及び右視点画像を選択する画像選択部71と、特定の左視点画像及び右視点画像から動体立体視化画像を生成する動体立体視化画像生成部72とを備えている。動体立体視化画像生成部72で生成された動体立体視化画像は、3D静止画像と同様に、モニタ18に表示されるとともに、動体立体視化画像データとして、メモリカード20に記録される。
【0033】
動体検出部70は、(n+1)枚分の左視点画像のそれぞれについて特徴点を抽出するととともに、各左視点画像間で互いに略共通する特徴点を対応点として特定する。例えば、図5の場合であれば、時刻t0の左視点画像上の特徴点Aの対応点は、時刻t1の左視点画像上では特徴点A1であり、時刻t2の左視点画像上ではA2となる。また、動体検出部70は、(n+1)枚分の右視点画像についても、同様にして特徴点を抽出し、各右視点画像間で互いに略共通する特徴点を対応点として特定する。
【0034】
そして、時刻t0を基準として、時刻t1、時刻t2・・・の順に各左視点画像及び右視点画像それぞれの対応点を比較することによって、動体を検出する。そして、時刻tk(kはn以下の自然数)で動体が検出されたら、対応点の位置情報とその周辺画素の輝度情報をRAM34に記録するとともに、動体の領域(大きさ)と動き方向X(図5参照)を推定する。そして、この推定結果から、時刻t0における動体の最大位置座標XmaxL0及び最小位置座標XminL0(いずれも動き方向Xに関する座標)を求めるとともに、時刻tkにおける動体の時刻tkにおける最大位置座標XmaxLk及び最小位置座標XminLk(いずれも動き方向Xに関する座標)を求める。動体検出部70では、動体の検出毎に、動体の領域と動き方向を推定し、その検出時点での動き方向に対する最大位置座標と最小位置座標を求める。
【0035】
画像選択部71は、時刻t0における動体の最大位置座標XmaxL0,XmaxR0を基準座標Ls,Rsとして設定した上で、動体検出時である時刻tkの左視点画像及び右視点画像において、動体の最小位置座標が基準座標Ls,Rs以上となるか否かを判定する。判定の結果、動体の最小位置座標XminLk, XminRkの両方が基準座標Ls,Rs以上でない場合は、時刻tkの左視点画像及び右視点画像は特定の左視点画像及び右視点画像画像として選択されない。
【0036】
一方、動体の最小位置座標XminLk, XminRkの両方が基準座標Ls,Rs以上と判定された場合には、時刻tkの左視点画像及び右視点画像を特定の左視点画像及び右視点画像画像として選択するとともに、基準座標Ls,Rsを時刻tkにおける最大位置座標XmaxLk,XmaxRkに変更する。以上の特定の左視点画像及び右視点画像画像の選択は、動体が検出される毎に行われる。
【0037】
例えば、図6に示すように、時刻t0から時刻t4までの間、被写体を連写撮影することによって、時刻t0から時刻t4までの5枚分の左視点画像及び5枚分の右視点画像が得られた場合における特定の左視点画像及び右視点画像画像の選択手順を、以下に示す。まず、時刻t0の左視点画像から動き方向Xに対する最大位置座標XmaxL0を基準座標Lsとして設定し、同様にして、時刻t0の右視点画像から動き方向Xに対する最大位置座標XmaxR0を基準座標Rsとして設定する。なお、図6では、動き方向Xの座標は、右側から左側に向かうほど大きくなる。
【0038】
次に、時刻t1の左視点画像中の動体の最小位置座標XminL1が基準座標Ls(XmaxL0)以上か否かを判定するとともに、時刻t1の右視点画像中の最小位置座標XminR1が基準座標Rs(XminR0)以上か否かを判定する。時刻t1においては、Ls(XmaxL0)>XminL1、且つRs(XmaxR0)>XminR1であるので、時刻t1の左視点画像及び右視点画像は特定の左視点画像及び右視点画像画像として選択されない。
【0039】
同様にして、次に、時刻t2の左視点画像において、動き方向Xに対する最小位置座標XminL2が基準座標Ls(XmaxL0)以上か否かを判定するとともに、時刻t2の右視点画像において、最小位置座標XminR2が基準座標Rs(XminR0)以上か否かを判定する。時刻t2においては、Ls(XmaxL0)≦XminL2、且つRs(XmaxR0)≦XminR2であるので、時刻t2の左視点画像及び右視点画像は特定の左視点画像及び右視点画像画像として選択される。また、基準座標LsはXmaxL2に、基準座標RsはXmaxR2に更新される。
【0040】
次に、時刻t3の左視点画像において、動き方向Xに対する最小位置座標XminL3が基準座標Ls(XmaxL2)以上か否かを判定するとともに、時刻t3の右視点画像において、最小位置座標XminR3が基準座標Rs(XminR2)以上か否かを判定する。時刻t3においては、Rs(XmaxR2)≦XminR3であるものの、Ls(XmaxL2)>XminL3であるので、時刻t3の左視点画像及び右視点画像は特定の左視点画像及び右視点画像画像として選択されない。
【0041】
次に、時刻t4の左視点画像において、動き方向Xに対する最小位置座標XminL4が基準座標Ls(XmaxL2)以上か否かを判定するとともに、時刻t4の右視点画像において、最小位置座標XminR4が基準座標Rs(XminR2)以上か否かを判定する。時刻t4においては、Ls(XmaxL2)≦XminL4、且つRs(XmaxR2)≦XminR4であるので、時刻t4の左視点画像及び右視点画像は特定の左視点画像及び右視点画像画像として選択される。
【0042】
以上から、時刻t0から時刻t4までの左視点画像及び右視点画像の中から、時刻t2、時刻t4の左視点画像及び右視点画像が合成対象画像として選択される。また、時刻t0の左視点画像及び右視点画像についても、他の時刻の左視点画像及び右視点画像と合成したときに動体が重なり合うことが無いので、特定の左視点画像及び右視点画像画像として選択される。
【0043】
動体立体視化画像生成部72は、特定の左視点画像を合成することにより左視点合成画像を生成するとともに、特定の右視点画像とを合成することにより右視点合成画像を生成する。そして、左視点合成画像と右視点合成画像を更に合成することによって、1つの画像内で動体の様子を立体視することができる動体立体視化画像が生成される。
【0044】
例えば、図6のように、時刻t0、時刻t2、時刻t4の左視点画像及び右視点画像が特定の左視点画像及び右視点画像画像として選択された場合には、図7に示すように、時刻t0、時刻t2、時刻t4の左視点画像の合成画像である左視点合成画像75と、時刻t0、時刻t2、時刻t4の右視点画像の合成画像である右視点合成画像76とを更に合成することによって、時刻t0から時刻t4間における動体の様子を立体視可能にした動体立体視化画像77が得られる。
【0045】
この動体立体視化画像77の生成には、特定の左視点画像及び右視点画像画像として選択された時刻t0、時刻t2、時刻t4の左視点画像及び右視点画像のみが使用され、特定の左視点画像及び右視点画像画像として選択されなかった時刻t1、時刻t3の左視点画像及び右視点画像は使用されない。仮に、この使用されなかった時刻t1の左視点画像及び右視点画像と時刻t0の左視点画像及び右視点画像と合成した場合には、それぞれの動体が重なり合ってしまう(動体の多重化)。また、同様にして、時刻t3の左視点画像を時刻t2の左視点画像に合成した場合にも、動体の多重化が発生する。
【0046】
したがって、動体立体視化画像は、このような動体の多重化が起こり得る左視点画像及び右視点画像を使用せずに生成されているため、画質破綻を起こすことなく、動体の様子を3D画像として確実に把握することができる。
【0047】
また、時刻t3のときのように、左視点画像又は右視点画像いずれか一方ののみ動体の多重化が起こり得る場合であっても、その時刻における左視点画像及び右視点画像は動体立体視化画像の生成に使用しないことで、画質劣化を引き起こすおそれがない。例えば、動体の多重化と両眼における視差とを混同してしまうことを防止することができる。
【0048】
また、動体が検出される毎に、動体の大きさや動き方向を検出しているため、途中で動体が異なる方向に移動したり、大きさが変形した場合であっても、画像を合成したときに動体が多重化を起こすか否かを正確に判定することができる。
【0049】
また、動体立体視化画像を生成する際には、特定の左視点画像をマルチフレーム合成処理した左視点合成画像と、同様にして特定の右視点画像をマルチフレーム合成処理した右視点合成画像とを用いていることから、背景などの動体以外の領域を高感度で低ノイズな画質にすることができる。
【0050】
次に、動体立体視化画像を生成するまでの流れを、図8及び図9のフローチャートに沿って説明する。まず、モード切替スイッチ22によってストロボモードに切り替える。そして、左視点用撮像部12及び右視点用撮像部13を被写体に向けた状態で、シャッタボタン15を全押し操作する(時刻t0)。この全押し操作と同時又は直後に、被写体を動かす。一定時間後に、動く被写体(動体)がモニタ18上からフレームアウトしたら、再度、シャッタボタン15を全押し操作する(時刻tn)。これにより、時刻t0〜時刻tn(nは1以上の自然数)間の左視点画像及び右視点画像が得られる。
【0051】
時刻t0〜時刻tn間の左視点画像及び右視点画像が得られたら、動体検出部70によって、全ての左視点画像及び右視点画像から特徴点を抽出する。次に、時刻t0の左視点画像及び右視点画像と時刻t1の左視点画像及び右視点画像との対応点を比較することによって、時刻t1の左視点画像及び右視点画像に動体が存在するか否かを検出する動体の検出処理を行う。動体が検出されない場合には、次の時刻t2の左視点画像及び右視点画像に対して、同様の処理を行う。この動体の検出処理は、各時刻の左視点画像及び右視点画像毎に行われ、動体が検出されるまで繰り返し行われる。
【0052】
そして、時刻tkの左視点画像及び右視点画像から動体が検出されたら、その対応点及びその周辺画素の輝度情報を利用して、動体の大きさと動き方向Xを推定する。また、画像選択部71において、時刻t0における動体の最大位置座標XmaxL0,XmaxR0を基準座標Ls,Rsに設定した上で、基準座標Ls,Rsと時刻tkにおける動体の最小位置座標XminLk,XminRkとを大小比較する。大小比較した結果、XminLk≧LsとXminRk≧Rsの両方を満たさない場合には、時刻tkの左視点画像及び右視点画像を特定の左視点画像及び右視点画像画像として選択せず、次の時刻t(k+1)について動体の検出処理を行う。
【0053】
一方、XminLk≧LsとXminRk≧Rsの両方を満たす場合には、時刻tkの左視点画像及び右視点画像を特定の左視点画像及び右視点画像画像として選択する。そして、基準座標Ls,Rsを時刻tkにおける動体の最大位置座標XmaxLk,XmaxRkに変更する。この基準座標の変更が完了したら、次の時刻t(k+1)について動体の検出処理を行う。
【0054】
全ての左視点画像及び右視点画像について、動体の検出と特定の左視点画像及び右視点画像画像か否かの判定が完了した後は、動体立体視化画像生成部72で動体立体視化画像生成処理を行う。動体立体視化画像生成部72では、特定の左視点画像を合成することによって、左視点合成画像を生成する。また、同様にして、特定の右視点画像を合成することによって、右視点合成画像を生成する。その上で、左視点合成画像と右視点合成画像とを更に合成することによって、動体立体視化画像を生成する。生成された動体立体視化画像は、モニタ18に表示されるとともに、動体立体視化画像データとして、メモリカード20に記録される。
【0055】
なお、第1実施形態では、全ての左視点画像及び右視点画像に対して動体の検出処理をし、動体が検出された左視点画像及び右視点画像の中で、特定の左視点画像及び右視点画像画像に該当するか否かの判定を行ったが、これに限る必要はない。
【0056】
例えば、図10に示すように、右視点画像のみ特徴点の抽出を行い、その抽出結果に基づいて、動体の検出処理を行う。検出の結果、時刻tkの右視点画像から動体が検出されたら、時刻tkにおける動体の最小位置座標XminRkと基準座標Rsとを大小比較する。大小比較の結果、XminRk≧Rsを満たす場合には、時刻tkの右視点画像を特定の右視点画像として仮選択する。なお、図10において、特徴点の抽出から基準座標の変更までのフローは、右視点画像のみ処理を行う点以外は、図8と同様であるので、詳細な説明を省略する。
【0057】
全ての右視点画像について動体の検出処理及び特定の右視点画像か否かの判定が完了したら、図11に示すように、全ての左視点画像の中から、仮選択した特定の右視点画像と同時刻に撮像した左視点画像を選択する。そして、これら選択された左視点画像(以下「選択左視点画像」とする)から特徴点を抽出し、抽出した特徴点を用いて各画像毎に動体の大きさ及び動き方向を推定する。そして、この推定結果を利用して、選択左視点画像の中から、他の時刻の選択左視点画像と合成したときに動体が重なり合わない特定の左視点画像を選択する。特定の左視点画像か否かの判定は、全ての選択左視点画像に対して行われる。
【0058】
なお、選択左視点画像の中から選択される特定の左視点画像は、上記実施形態と同様に、動き方向における動体の最小位置座標が基準座標以上である選択左視点画像とされる。また、特定の左視点画像の選択の際に行われる基準座標の設定及び最小位置座標と基準座標の大小比較については、上記実施形態と同様であるため、詳細な説明を省略する。
【0059】
そして、全ての選択左視点画像について特定の左視点画像か否かの判定が完了すると、仮選択された特定の右視点画像の中から、特定の左視点画像と同時刻に撮像された特定の右視点画像を本選択してから、動体立体視化画像生成処理を行う。
【0060】
図12に示すように、動体立体視化画像生成処理では、特定の左視点画像を合成することによって、左視点合成画像を生成する。また、本選択された特定の右視点画像を合成することによって、右視点合成画像を生成する。そして、これら生成された左視点合成画像及び右視点合成画像を更に合成することによって、動体立体視化画像を生成する。
【0061】
以上のように、動体立体視化画像を生成することで、この画像の生成に必要な処理を減らすことができ、また、処理時間を短くすることができる。なお、全ての右視点画像の中から特定の右視点画像を仮選択した上で、その仮選択した特定の右視点画像と同時刻に撮像した左視点画像の中から特定の左視点画像を選択したが、反対に、全ての左視点画像の中から特定の左視点画像を仮選択した上で、その仮選択した特定の左視点画像と同時刻の撮像した右視点画像の中から特定の右視点画像を選択してもよい。
【0062】
本発明の第2実施形態では、特定の左視点画像及び特定の右視点画像をマルチフレーム合成する際にいずれの時刻における動体も同等の輝度となるように合成する第1実施形態と異なり、特定の時刻における動体が、他の時刻における動体よりも強調されるように合成を行う。即ち、特定の時刻における動体の合成比率を、他の時刻における動体の合成比率よりも大きくする。第2実施形態では、特徴点の抽出から基準座標の変更まで(図8参照)は、第1実施形態と同様の処理を行う。
【0063】
そして、全ての左視点画像及び右視点画像について動体の検出及び特定の左視点画像及び右視点画像に該当するか否かの判定が完了したら、図13に示すように、動体の合成比率を高くする時刻txを、操作部19によって入力する。そして、図14に示すように、時刻txにおける動体100aの合成比率が他の時刻の動体の合成比率よりも高くなるように、特定の左視点画像をマルチフレーム合成して左視点合成画像100を生成する。また、右視点画像についても同様の処理を行うことによって、時刻txにおける動体101aの合成比率が高い右視点合成画像101を生成する。これら左視点合成画像と右視点合成画像を合成することによって、時刻tの動体102aが他の時刻の動体よりも強調された動体立体視化画像102が得られる。
【0064】
なお、第2実施形態では、動体立体視化画像において特定の時刻の動体のみを強調したが、これに限られない。例えば、モニタに動体立体視化画像を表示するときには、動体の動きの様子が分かるように、強調する動体を一定時間毎に変えてもよい。
【0065】
本発明の第3実施形態では、特定の左視点画像及び右視点画像のみ合成し、特定の左視点画像及び右視点画像でない左視点画像及び右視点画像については合成しなかった第1実施形態と異なり、特定の左視点画像及び右視点画像でない左視点画像及び右視点画像であっても、動体立体視化画像内で不自然な立体画像とならなければ、それらの一部を合成してもよい。
【0066】
例えば、図15では、時刻t2の左視点画像及び右視点画像については、特定の左視点画像及び右視点画像であるため、いずれも動体の最小位置座標XminL2,XminR2が基準座標Ls,Rsを超えている。これに対して、時刻t1の左視点画像及び右視点画像については、いずれも動体の最小位置座標XminL1,XminR1が基準座標Ls,Rs未満となっており、時刻t3の右視点画像については動体の最小位置座標XminR3が基準座標Lsを超えているものの、時刻t3の左視点画像については動体の最小位置座標XminL3が基準座標Rs未満となっている。
【0067】
そこで、動体の最小位置座標XminL1,XminR1がいずれも基準座標Ls,Rs未満となっている時刻t1の左視点画像及び右視点画像について、時刻t1の左視点画像のうち動き方向Xに関してLs(XminL0)を超える領域を切り取るとともに、時刻t1の右視点画像のうち動き方向Xに関してRs(XminR0)を超える領域を切り取る。
【0068】
そして、図16に示すように、時刻t0、時刻t2の特定の左視点画像及び特定の右視点画像と、時刻t1の左視点画像及び右視点画像から切り取られた領域部分(Ls(XminL0),Rs(XminR0)を超える領域部分)の画像とを合成することによって、左視点合成画像120が得られる。その際、上記の時刻t1の左視点画像及び右視点画像から切り取られた領域部分の合成比率は、他の画像よりも低くする。右視点画像についても同様の合成処理をすることによって、右視点合成画像121が得られる。そして、得られた左視点合成画像120と右視点合成画像121を更に合成することによって、動体立体視化画像122が得られる。
【0069】
動体立体視化画像122には、特定の左視点画像及び右視点画像でない画像中の動体の一部が合成されたことで、動体立体視化画像122上で動体のスピード感を表現することができる。また、その動体の一部の合成比率は他の画像よりも低くしているため、動体が見にくくなったりするなどの画質劣化が起こることが無い。
【0070】
なお、第3実施形態では、時刻t1のように、左視点画像及び右視点画像についていずれも動体の最小位置座標が基準座標未満の場合にのみ、それら画像中の動体の一部を動体立体視化画像に加えたが、時刻t3のように、左視点画像及び右視点画像のうちのいずれか一方のみが動体の最小位置座標が基準座標未満の場合にも、それら画像中の動体の一部を動体立体視化画像に加えてもよい。
【0071】
本発明の第4実施形態では、動体立体視化画像内で1つの動体の様子を立体視可能にした第1実施形態と異なり、2つ以上の動体の様子を1つの画像内で立体視可能にする動体立体視化画像を生成する。動体が2以上の場合であっても、各時刻における左視点画像及び右視点画像において、動体の大きさ及び動き方向を検出するとともに、検出された全ての動体について最小位置座標が基準座標以上か否かを判定する。そして、判定の結果、全ての動体について最小位置座標が基準座標以上のときに、その時刻の左視点画像及び右視点画像を特定の左視点画像及び右視点画像とする。
【0072】
例えば、図17に示すように、時刻t1の左視点画像及び右視点画像では、時刻t0の左視点画像及び右視点画像との対応点の比較から、右側から左側に向かう動き方向Xで移動する動体Z1と、左側から右側に向かう動き方向Yで移動する動体Z2が検出される。動体Z1については、左視点画像及び右視点画像ともに、最小位置座標XminL1,XminR1が基準座標XLs,XRsを下回っている。また、動体Z2についても、左視点画像及び右視点画像ともに、最小位置座標YminL1,YminR1が基準座標YLs,YRsを下回っている。したがって、いずれの動体Z1及びZ2についても最小位置座標が基準座標を下回っているため、左視点画像及び右視点画像は特定の左視点画像及び右視点画像とされない。なお、図17では、動き方向Yの座標は、左側から右側に向かうほど大きくなる。
【0073】
一方、時刻t2の左視点画像及び右視点画像については、動体Z1の最小位置座標XminL2,XminR2が基準座標XLs,XRsを超えており、また動体Z2の最小位置座標YminL2,YminR2が基準座標YLs,YRsを超えているため、左視点画像及び右視点画像は特定の左視点画像及び右視点画像とされる。そして、図18に示すように、時刻t0、時刻t2の特定の左視点画像を合成することにより左視点合成画像130を生成するとともに、初期時刻t0、時刻t2の特定の右視点画像を合成することにより右視点合成画像131を生成する。そして、これら左視点合成画像130と右視点合成画像131を更に合成することにより、2つの動体Z1及びZ2が1つの画像内で立体視可能な動体立体視化画像132が生成される。
【0074】
本発明の第5実施形態では、複眼カメラ10に対して接近する方向または離れる方向(奥行き方向)に動く被写体の動体立体視化画像を生成する。第5実施形態では、各時刻における左視点画像及び右視点画像が特定の左視点画像及び右視点画像に該当するか否かの判定には、各時刻における動体の最小位置座標が基準座標以上となるか否かの判定だけでなく、同時刻における左視点画像と右視点画像とで同一の動体がどの程度離れているかを示す視差量が許容範囲内に収まっているか否かの判定を利用する。
【0075】
例えば、図19に示すように、時刻t0から時刻t3までの間で、動体が複眼カメラ10に接近する方向に移動する場合について説明する。まず、時刻t0の左視点画像から動き方向Yに移動する動体の最大位置座標YmaxL0を基準座標Lsに設定するとともに、時刻t0の右視点画像から動き方向Xに移動する動体の最大位置座標XmaxR0を基準座標Rsに設定する。また、時刻t0の左視点画像及び右視点画像から、動体の視差量D0を求め、この求めた視差量D0から最大限許容される許容値Dmaxを求める。
【0076】
次に、各時刻の左視点画像及び右視点画像において、動体の最小位置座標が基準座標以上か否かを判定するとともに、動体の視差量が許容値を超えているか否かを判定する。時刻t1では、視差量D1は許容量Dmax未満である。しかしながら、時刻t1の左視点画像及び右視点画像のいずれも、動体の最小位置座標XminL1,XminR1は基準座標XLs,XRs未満であり、最小位置座標,YminL1,YminR1は基準座標YLs,YRs未満である。したがって、左視点画像及び右視点画像は特定の左視点画像及び右視点画像として選択されない。
【0077】
時刻t2の左視点画像及び右視点画像では、視差量D2は許容量Dmax未満である。また、時刻t2の左視点画像及び右視点画像のいずれも、動体の最小位置座標XminL2,XminR2は基準座標XLs,XRsを超えており、最小位置座標,YminL2,YminR2は基準座標YLs,YRsを超えている。したがって、時刻t2の左視点画像及び右視点画像は特定の左視点画像及び右視点画像として選択される。
【0078】
時刻t3左視点画像及び右視点画像については、動体の最小位置座標XminL3,XminR3は基準座標XLs,XRsを超えており、最小位置座標,YminL3,YminR3は基準座標YLs,YRsを超えている。しかしながら、視差量D3が許容量Dmaxを超えている。したがって、時刻t3の左視点画像及び右視点画像は特定の左視点画像及び右視点画像として選択されない。
【0079】
以上から、時刻t0から時刻t3までの左視点画像及び右視点画像の中から、時刻t2の左視点画像及び右視点画像が特定の左視点画像及び右視点画像として、また、他の時刻の左視点画像及び右視点画像と合成したときに動体が重なり合わない時刻t0の左視点画像及び右視点画像も、特定の左視点画像及び右視点画像として選択される。
【0080】
そして、図20に示すように、時刻t0、時刻t2の左視点画像を合成することにより左視点合成画像140が生成される。また、時刻t0、時刻t2の右視点画像を合成することにより右視点合成画像141が生成される。そして、これら左視点合成画像140と右視点合成画像141を更に合成することにより、複眼カメラ10に対して奥行き方向に移動する動体の様子を立体視することができる動体立体視化画像142が生成される。このように動体立体視化画像142を生成することで、複眼カメラ10から一定距離離れた平面内を移動する動体ではなく、奥行き方向に移動する動体の場合であっても、その動体の様子を3D画像として確実に把握することができる。
【0081】
なお、上記第1〜第5実施形態では、ストロボモード時に取得した左視点画像及び右視点画像を用いて、複眼カメラ10で動体立体視化画像を生成したが、これに代えて、図21に示すように、メモリカード20に記録したストロボモード時の左視点画像及び右視点画像をPC150のカードスロット150aを介して読み込み、その読み込んだ左視点画像及び右視点画像を用いて、PC150内の動体立体視化画像生成部151で動体立体視化画像を生成してもよい。生成された動体立体視化画像は、画像表示部にレンチキュラシート(いずれも図示省略)が設けられたディスプレイ152に表示される。
【0082】
なお、PC内は第2立体画像生成回路61と同様の機能を有する動体立体視化画像生成プログラムが格納された記憶部を備えており、3D画像ストロボ生成回路151はその動体立体視化画像生成プログラムを実行することによって、動体立体視化画像を生成する。
【符号の説明】
【0083】
10 複眼カメラ
12 左視点用撮像部
13 右視点用撮像部
61 第2立体画像生成回路
70 動体検出部
71 画像選択部
72 動体立体視化画像生成部
75,100,120,130,140 左視点合成画像
76,101,121,131,141 右視点合成画像
77,102,122,132,142 動体立体視化画像
【特許請求の範囲】
【請求項1】
互いに異なる2つの視点から動く被写体である動体を同じタイミングで撮像する同時撮像を、連続して行うことによって得られる複数枚の第1の視点画像及び第2の視点画像を取得する画像取得ステップと、
前記複数枚の第1の視点画像及び第2の視点画像の中から、他のタイミングで撮像された第1の視点画像を合成したときに動体が重なり合わない特定の第1の視点画像と、この特定の第1の視点画像と同時撮像され、且つ、他のタイミングで撮像された第2の視点画像を合成したときに動体が重なり合わない特定の第2の視点画像を選択する画像選択ステップと、
選択された特定の第1の視点画像及び特定の第2の視点画像を合成することにより、動体の様子を1つの画像内で立体視可能な立体画像を生成する立体画像生成ステップとを有することを特徴とする3D画像生成方法。
【請求項2】
前記画像選択ステップは、
各撮像タイミングにおける第1の視点画像中の動体の動き方向を検出するとともに、各撮像タイミングにおける第2の視点画像中の動体の動き方向を検出する第1の動き方向検出ステップと、
前記複数枚の第1の視点画像及び第2の視点画像の中から、動き方向に関する動体の座標が所定の条件を満たす第1の視点画像を前記特定の第1の視点画像として選択し、この特定の第1の視点画像と同時撮像され、且つ、動き方向に関する動体の座標が所定の条件を満たす第2の視点画像を特定の第2の視点画像として選択する第1の選択ステップとを含むことを特徴とする請求項1記載の3D画像生成方法。
【請求項3】
前記画像選択ステップは、
各撮像タイミングにおける第1の視点画像中の動体の動き方向を検出する第2の動体検出ステップと、
前記複数枚の第1の視点画像の中から、動き方向に関する動体の座標が所定の条件を満たす特定の第1の視点画像を仮選択するとともに、前記複数枚の第2の視点画像の中から、仮選択された特定の第1の視点画像と同時撮像された第2の視点画像を選択する第2の選択ステップと、
前記第2の選択ステップで選択された第2の視点画像中の動体の動き方向を検出する第3の動体検出ステップと、
前記第2の選択ステップで選択された第2の視点画像の中から、動き方向に関する動体の座標が所定の条件を満たす特定の第2の視点画像を選択するとともに、仮選択された特定の第1の視点画像の中から、前記特定の第2の視点画像と同時撮像された特定の第1の視点画像を本選択する第3の選択ステップと、
前記立体画像生成ステップは、
前記第3の選択ステップで本選択された特定の第1の視点画像及び前記第3の選択ステップで選択された特定の第2の視点画像を合成することにより、立体画像を生成することを特徴とする請求項1記載の3D画像生成方法。
【請求項4】
前記所定の条件は、第1の撮像タイミングにおける動体の最小位置座標が、その第1の撮像タイミングの前の第2の撮像タイミングにおける動体の最大位置座標から設定された基準座標以上であることを特徴とする請求項2または3記載の3D画像生成方法。
【請求項5】
前記立体画像生成ステップは、特定の撮像タイミングにおける動体が他の撮像タイミングの動体よりも強調されるように、立体画像を生成することを特徴とする請求項1ないし4いずれか1項記載の3D画像生成方法。
【請求項6】
前記立体画像生成ステップは、前記選択された特定の第1の視点画像及び前記特定の第2の視点画像に加えて、前記特定の第1の視点画像として選択されなかった第1の視点画像の一部と、前記特定の第2の視点画像として選択されなかった第2の視点画像の一部とを合成することにより、立体画像を生成することを特徴とする請求項1ないし5いずれか1項記載の3D画像生成方法。
【請求項7】
前記立体画像生成ステップは、複数の動体の様子を1つの画像内で立体視可能な立体画像を生成することを特徴とする請求項1ないし6いずれか1項記載の3D画像生成方法。
【請求項8】
同時撮像された第1の視点画像及び第2の視点画像において同一の動体がどの程度離れているかを示す視差量が、予め設定された許容値を超えたか否かを判定する視差量判定ステップを有し、
前記立体画像生成ステップは、前記選択された特定の第1の視点画像及び前記特定の第2の視点画像のうち視差量が許容値未満である画像のみを合成することにより、立体画像を生成することを特徴とする請求項1ないし7いずれか1項記載の3D画像生成方法。
【請求項9】
請求項1ないし8いずれか1項記載の3D画像生成方法における各ステップをコンピュータに実行させることを特徴とする3D画像生成プログラム。
【請求項10】
互いに異なる2つの視点から動く被写体である動体を同じタイミングで撮像する同時撮像を、連続して行うことによって得られる複数枚の第1の視点画像及び第2の視点画像を取得する画像取得手段と、
前記複数枚の第1の視点画像及び第2の視点画像の中から、他のタイミングで撮像された第1の視点画像を合成したときに動体が重なり合わない特定の第1の視点画像と、この特定の第1の視点画像と同時撮像され、且つ、他のタイミングで撮像された第2の視点画像を合成したときに動体が重なり合わない特定の第2の視点画像を選択する画像選択手段と、
選択された特定の第1の視点画像及び前記特定の第2の視点画像を合成することにより、動体の様子を1つの画像内で立体視可能な立体画像を生成する立体画像生成手段とを備えることを特徴とする3D画像生成装置。
【請求項1】
互いに異なる2つの視点から動く被写体である動体を同じタイミングで撮像する同時撮像を、連続して行うことによって得られる複数枚の第1の視点画像及び第2の視点画像を取得する画像取得ステップと、
前記複数枚の第1の視点画像及び第2の視点画像の中から、他のタイミングで撮像された第1の視点画像を合成したときに動体が重なり合わない特定の第1の視点画像と、この特定の第1の視点画像と同時撮像され、且つ、他のタイミングで撮像された第2の視点画像を合成したときに動体が重なり合わない特定の第2の視点画像を選択する画像選択ステップと、
選択された特定の第1の視点画像及び特定の第2の視点画像を合成することにより、動体の様子を1つの画像内で立体視可能な立体画像を生成する立体画像生成ステップとを有することを特徴とする3D画像生成方法。
【請求項2】
前記画像選択ステップは、
各撮像タイミングにおける第1の視点画像中の動体の動き方向を検出するとともに、各撮像タイミングにおける第2の視点画像中の動体の動き方向を検出する第1の動き方向検出ステップと、
前記複数枚の第1の視点画像及び第2の視点画像の中から、動き方向に関する動体の座標が所定の条件を満たす第1の視点画像を前記特定の第1の視点画像として選択し、この特定の第1の視点画像と同時撮像され、且つ、動き方向に関する動体の座標が所定の条件を満たす第2の視点画像を特定の第2の視点画像として選択する第1の選択ステップとを含むことを特徴とする請求項1記載の3D画像生成方法。
【請求項3】
前記画像選択ステップは、
各撮像タイミングにおける第1の視点画像中の動体の動き方向を検出する第2の動体検出ステップと、
前記複数枚の第1の視点画像の中から、動き方向に関する動体の座標が所定の条件を満たす特定の第1の視点画像を仮選択するとともに、前記複数枚の第2の視点画像の中から、仮選択された特定の第1の視点画像と同時撮像された第2の視点画像を選択する第2の選択ステップと、
前記第2の選択ステップで選択された第2の視点画像中の動体の動き方向を検出する第3の動体検出ステップと、
前記第2の選択ステップで選択された第2の視点画像の中から、動き方向に関する動体の座標が所定の条件を満たす特定の第2の視点画像を選択するとともに、仮選択された特定の第1の視点画像の中から、前記特定の第2の視点画像と同時撮像された特定の第1の視点画像を本選択する第3の選択ステップと、
前記立体画像生成ステップは、
前記第3の選択ステップで本選択された特定の第1の視点画像及び前記第3の選択ステップで選択された特定の第2の視点画像を合成することにより、立体画像を生成することを特徴とする請求項1記載の3D画像生成方法。
【請求項4】
前記所定の条件は、第1の撮像タイミングにおける動体の最小位置座標が、その第1の撮像タイミングの前の第2の撮像タイミングにおける動体の最大位置座標から設定された基準座標以上であることを特徴とする請求項2または3記載の3D画像生成方法。
【請求項5】
前記立体画像生成ステップは、特定の撮像タイミングにおける動体が他の撮像タイミングの動体よりも強調されるように、立体画像を生成することを特徴とする請求項1ないし4いずれか1項記載の3D画像生成方法。
【請求項6】
前記立体画像生成ステップは、前記選択された特定の第1の視点画像及び前記特定の第2の視点画像に加えて、前記特定の第1の視点画像として選択されなかった第1の視点画像の一部と、前記特定の第2の視点画像として選択されなかった第2の視点画像の一部とを合成することにより、立体画像を生成することを特徴とする請求項1ないし5いずれか1項記載の3D画像生成方法。
【請求項7】
前記立体画像生成ステップは、複数の動体の様子を1つの画像内で立体視可能な立体画像を生成することを特徴とする請求項1ないし6いずれか1項記載の3D画像生成方法。
【請求項8】
同時撮像された第1の視点画像及び第2の視点画像において同一の動体がどの程度離れているかを示す視差量が、予め設定された許容値を超えたか否かを判定する視差量判定ステップを有し、
前記立体画像生成ステップは、前記選択された特定の第1の視点画像及び前記特定の第2の視点画像のうち視差量が許容値未満である画像のみを合成することにより、立体画像を生成することを特徴とする請求項1ないし7いずれか1項記載の3D画像生成方法。
【請求項9】
請求項1ないし8いずれか1項記載の3D画像生成方法における各ステップをコンピュータに実行させることを特徴とする3D画像生成プログラム。
【請求項10】
互いに異なる2つの視点から動く被写体である動体を同じタイミングで撮像する同時撮像を、連続して行うことによって得られる複数枚の第1の視点画像及び第2の視点画像を取得する画像取得手段と、
前記複数枚の第1の視点画像及び第2の視点画像の中から、他のタイミングで撮像された第1の視点画像を合成したときに動体が重なり合わない特定の第1の視点画像と、この特定の第1の視点画像と同時撮像され、且つ、他のタイミングで撮像された第2の視点画像を合成したときに動体が重なり合わない特定の第2の視点画像を選択する画像選択手段と、
選択された特定の第1の視点画像及び前記特定の第2の視点画像を合成することにより、動体の様子を1つの画像内で立体視可能な立体画像を生成する立体画像生成手段とを備えることを特徴とする3D画像生成装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【公開番号】特開2012−209872(P2012−209872A)
【公開日】平成24年10月25日(2012.10.25)
【国際特許分類】
【出願番号】特願2011−75670(P2011−75670)
【出願日】平成23年3月30日(2011.3.30)
【出願人】(306037311)富士フイルム株式会社 (25,513)
【Fターム(参考)】
【公開日】平成24年10月25日(2012.10.25)
【国際特許分類】
【出願日】平成23年3月30日(2011.3.30)
【出願人】(306037311)富士フイルム株式会社 (25,513)
【Fターム(参考)】
[ Back to top ]