画像合成装置と画像合成方法およびプログラム
【課題】画像の合成を制御して高品質である広画角の合成画像を容易に生成できるようにする。
【解決手段】被写体領域決定部293は、撮像時に測距を行って生成された複数点の被写体距離情報に基づき、撮像画像における近接被写体の領域を決定する。合成処理部294は、決定された近接被写体の領域の位置に基づき、撮像画像から画像を切り出して繋ぎ合わせて合成画像を生成する。したがって、近接被写体の領域を分割しないように画像を切り出して繋ぎ合わせることで、繋ぎ目に上書きする画像の選択操作や選択した画像を繋ぎ目に上書きする処理を行う必要がなく、高品質である広画角の合成画像を容易に生成できる。
【解決手段】被写体領域決定部293は、撮像時に測距を行って生成された複数点の被写体距離情報に基づき、撮像画像における近接被写体の領域を決定する。合成処理部294は、決定された近接被写体の領域の位置に基づき、撮像画像から画像を切り出して繋ぎ合わせて合成画像を生成する。したがって、近接被写体の領域を分割しないように画像を切り出して繋ぎ合わせることで、繋ぎ目に上書きする画像の選択操作や選択した画像を繋ぎ目に上書きする処理を行う必要がなく、高品質である広画角の合成画像を容易に生成できる。
【発明の詳細な説明】
【技術分野】
【0001】
この技術は、画像合成装置と画像合成方法およびプログラムに関する。詳しくは、画像の合成を制御して高品質である広画角の合成画像を容易に生成できるようにする。
【背景技術】
【0002】
従来、撮像装置をスイングまたは平行移動しながら複数回の撮像を行うことにより得られた撮像画像を合成することで、1回の撮像で得られる画像よりも広画角であるパノラマ画像を生成することが行われている。例えば特許文献1では、画像の特徴点を抽出して、この特徴点が一致するように画像を繋ぎ合わせることで、パノラマ画像が生成されている。
【0003】
また、特徴点が一致するように画像を繋ぎ合わせる場合、ユーザの意図とは無関係に画像の繋ぎ目の位置が決定されて、例えば主要な被写体の位置に繋ぎ目が生じてしまうおそれがある。このため、特許文献2では、ユーザが意図する部分に画像合成による繋ぎ目が生じた場合、ユーザが選択した画像を繋ぎ目に上書きすることが可能とされている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開平11−282100号公報
【特許文献2】特開2008ー176430号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、ユーザが選択した画像をパノラマ画像の繋ぎ目に上書きする場合、上書きする画像を選択する操作が必要となり、ユーザが意図する部分に画像合成による繋ぎ目が生じていないパノラマ画像を自動的に生成することができない。
【0006】
そこで、この技術では複数の画像を合成して合成画像を生成する場合に、画像の合成を制御して高品質である広画角の合成画像を容易に生成できる画像合成装置と画像合成方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
この技術の第1の側面は、撮像時に測距を行って生成された複数点の被写体距離情報に基づき、撮像画像における近接被写体の領域を決定する被写体領域決定部と、前記決定した近接被写体の領域の位置に基づき前記撮像画像から画像の切り出しを行い、切り出した画像を繋ぎ合わせて合成画像を生成する合成処理部とを備える画像合成装置にある。
【0008】
この技術においては、撮像時に測距を行って生成された複数点の被写体距離情報と予め設定されている閾値が比較されて、比較結果に基づき近接被写体の領域が決定される。近接被写体の領域が決定された場合には、近接被写体の領域を分割しないように画像の切り出し、近接被写体の領域が決定されていない場合には、中央部分の画像の切り出しが行われる。また、近接被写体の領域が複数の画像で重複する場合には、画像を繋ぎ合わせる方向において、より中央に位置する撮像画像から、近接被写体の領域の画像の切り出しが行われて、画像が連続するように繋ぎ合わされて合成画像が生成される。また、被写体距離情報の相関を検出して、検出結果に基づき画像間の重複領域が推定されて、推定された重複領域における被写体距離情報の差分に応じて、画像の拡大または縮小が行われる。さらに、被写体距離情報に基づいて連続する2つの画像間の移動ベクトルが検出されて、近接被写体の領域の位置や移動ベクトルに基づき、拡大または縮小された画像から切り出した画像が繋ぎ合わされて合成画像が生成される。
【0009】
この技術の第2の側面は、撮像時に測距を行って生成された複数点の被写体距離情報に基づき、撮像画像における近接被写体の領域を決定する工程と、前記決定した近接被写体の領域の位置に基づき前記撮像画像から画像の切り出しを行い、切り出した画像を繋ぎ合わせて合成画像を生成する工程とを含む画像合成方法にある。
【0010】
この技術の第3の側面は、複数の撮像画像から広画角の合成画像を生成する画像合成をコンピュータで実行させるプログラムであって、撮像時に測距を行って生成された複数点の被写体距離情報に基づき、撮像画像における近接被写体の領域を決定する手順と、前記決定した近接被写体の領域の位置に基づき前記撮像画像から画像の切り出しを行い、切り出した画像を繋ぎ合わせて合成画像を生成する手順とを前記コンピュータで実行させるプログラム。
【0011】
なお、本技術のコンピュータ・プログラムは、例えば、様々なプログラム・コードを実行可能な汎用コンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体、例えば、光ディスクや磁気ディスク、半導体メモリなどの記憶媒体、あるいは、ネットワークなどの通信媒体によって提供可能なコンピュータ・プログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、コンピュータ・システム上でプログラムに応じた処理が実現される。
【発明の効果】
【0012】
この技術によれば、撮像時に測距を行って生成された複数点の被写体距離情報に基づき、撮像画像における近接被写体の領域が決定される。また、決定した近接被写体の領域の位置に基づき撮像画像から画像の切り出しを行い、切り出した画像を繋ぎ合わせて合成画像が生成される。したがって、繋ぎ目に上書きする画像の選択操作や選択した画像を繋ぎ目に上書きする処理を行う必要がなく、また、近接被写体の領域の位置に基づき画像が切り出されて合成されるので、高品質である広画角の合成画像を容易に生成できる。
【図面の簡単な説明】
【0013】
【図1】撮像装置の構成を示す図である。
【図2】位相差画素を有するCMOS固体撮像素子の構成を示す図である。
【図3】A系列とB系列の像との間に生じるシフト量と、デフォーカス量との関係を例示した図である。
【図4】合成処理部の構成を示している。
【図5】撮像装置のパノラマ撮像動作を示すフローチャートである。
【図6】撮像画像の保存例を示す図である。
【図7】撮像画像と被写体距離情報を例示した図である。
【図8】合成画像の保存例を示す図である。
【図9】合成画像の生成処理を示すフローチャートである。
【図10】合成画像の生成処理を例示した図である。
【図11】移動ベクトルと拡大縮小処理を例示した図である。
【発明を実施するための形態】
【0014】
以下、本技術を実施するための形態について説明する。なお、説明は以下の順序で行う。
1.画像処理装置を用いた撮像装置の構成
2.画像処理装置を用いた撮像装置の動作
【0015】
<1.画像処理装置を用いた撮像装置の構成>
図1は、本技術の画像処理装置を用いた撮像装置10の構成を例示している。撮像装置10は、撮像レンズ部11、撮像素子12、撮像素子駆動部13、前処理部14、カメラDSP部20、メモリ部41、表示部42、記録媒体43、システム制御部50、操作部51を有している。
【0016】
撮像レンズ部11は、被写体光を撮像素子12に導くための撮像光学系として機能するものである。撮像レンズ部11は、撮像素子12の撮像面上に結像される光学像の焦点の調節を行うためのフォーカスレンズや、光学像の変倍を行うためのズームレンズ等が含まれている。
【0017】
撮像素子12は、CMOS(Complementary Metal-Oxide Semiconductor)やCCD(Charge Coupled Device)等の固体撮像素子を用いて構成されている。撮像素子12は、撮像レンズ部11によって受光面に結像された光学像に応じた撮像信号を生成して前処理部14に出力する。
【0018】
撮像素子駆動部13は、駆動信号を生成して撮像素子12に供給することで、撮像信号を撮像素子12で生成して出力させる。
【0019】
前処理部14は、撮像素子12から供給される撮像信号に対して相関二重サンプリング処理(CDS:Correlated Double Sampling)やアナログ増幅処理、A/D変換処理等を行い、画像データを生成してカメラDSP(Digital Signal Processing)部20に出力する。
【0020】
カメラDSP部20は、後述するシステム制御部50の制御のもとで、前処理部5から出力される画像データの記録や再生および画像データに基づく画像表示等に係る処理、広画角の合成画像の生成等を行う。なお、カメラDSP部20にはメモリ部41が接続されており、メモリ部41は、カメラDSP部20で種々の処理を行うための作業用領域として用いられる。
【0021】
カメラDSP部20は、カメラ信号処理部21、メモリ制御部22、レンズ制御部23、解像度変換部24、表示制御部25、コーデック部26、メディア制御部27、被写体距離計測部28、合成処理部29を有している。また、カメラDSP部20の各部は、内部バス30を介して接続されている。
【0022】
カメラ信号処理部21は、前処理部14から供給される画像データに対してホワイトバランス調整処理、ガンマ補正処理等を行う。また、カメラ信号処理部21は、画像データから絞り補正、オートフォーカス調整に必要な情報を検出し、検出した情報をレンズ制御部23に出力する。
【0023】
メモリ制御部22は、メモリ部41に対するデータの書き込みや書き込まれているデータの読み出しを制御する。メモリ制御部22は、カメラDSP部20の各部から供給される画像データや符号化データをメモリ部41に書き込み、またメモリ部41に書き込まれている画像データや符号化データを読み出してカメラDSP部20の各部に出力する。
【0024】
レンズ制御部23は、カメラ信号処理部21から得られる情報や、後述するシステム制御部50からの制御信号に基づき、撮像レンズ部11を駆動して、オートフォーカス制御やズーム制御、絞り制御等を行う。
【0025】
解像度変換部24は、メモリ部41に格納された画像データ、またはカメラ信号処理部21から出力される画像データの解像度を変換する。例えば、解像度変換部24は、カメラ信号処理が行われた画像データを表示部42の表示解像度に対応した画像データに変換する。また、解像度変換部24は、ユーザにより指示された解像度に変換して、記録媒体43に記録できるようにする。また、撮像画像の一部領域を切り出してこの解像度の変換処理に係る処理を実行して、電子ズームや再生ズームの処理が行われた画像データを生成する。
【0026】
表示制御部25は、解像度変換部24から供給された画像データやメモリ部41に格納された画像データにより表示部42を駆動して、撮像動作時におけるモニタ画像やメモリ部41に記録されている画像、および記録媒体43に記録されている画像の表示を行う。また、表示制御部25は、撮像装置10に搭載される機能を選択するためのメニュー表示や撮像装置10の設定状態を示す設定状態表示等を、表示部42で表示させる。
【0027】
コーデック部26は、画像データのデータ圧縮処理を行い、得られた符号化データをメモリ制御部22やメディア制御部27に出力して、メモリ部41や記録媒体43に記録させる。また、メモリ部41や記録媒体43から読み出された符号化データのデータ伸長処理を行い、得られた画像データをメモリ制御部22や表示制御部25等に出力する。なおこのデータ圧縮、伸長は、静止画にあってはJPEG(Joint Photographic Coding Experts Group)の手法が適用され、動画にあっては、ISO/IEC JTC1/SC29WG11のMPEG1(Motion Picture Experts Group 1)、MPEG2(Motion Picture Experts Group 2)、MPEG4(Motion Picture Experts Group 4)、ITU−TのH.263、H.264/MPEG4−AVC(Advanced Video Coding)等、動きベクトルを用いたデータ圧縮手法が適用される。
【0028】
メモリ制御部22は、メモリ部41に対するデータの書き込みや書き込まれているデータの読み出しを制御する。メモリ制御部22は、カメラDSP部20の各部から供給される画像データや符号化データをメモリ部41に書き込み、またメモリ部41に書き込まれている画像データや符号化データを読み出してカメラDSP部20の各部に出力する。
【0029】
メディア制御部27は、記録媒体43に対するデータの書き込みや書き込まれているデータの読み出しを制御する。メディア制御部27は、カメラDSP部20の各部から供給される画像データや符号化データを記録媒体43に書き込み、また記録媒体43に書き込まれている画像データや符号化データを読み出してカメラDSP部20の各部に出力する。
【0030】
被写体距離計測部28は、撮像時に撮像範囲内の複数点で被写体までの距離を計測して、計測結果に応じた距離情報(以下「被写体距離情報」という)を生成する。被写体距離計測部28は、生成した被写体距離情報を合成処理部29に出力する。または、被写体距離計測部28は、生成した被写体距離情報を撮像画像の画像データと関連付けてメモリ部41や記録媒体43に供給する。
【0031】
被写体距離計測部28としては、例えば特開2010−169709号公報に示されているように、被写体光を瞳分割して焦点検出するための位相差画素を有するCMOS固体撮像素子を用いることができる。図2は、位相差画素を有するCMOS固体撮像素子の構成を示している。撮像素子12は、フォトダイオードを用いて構成される複数の画素がマトリクス状に2次元配置されている。各画素の受光面には、それぞれ分光特性の異なる例えばR(赤)、G(緑)、B(青)のカラーフィルタが1:2:1の比率で配設されて、R画素121、G画素122およびB画素123が形成されている。また、被写体光を瞳分割して焦点検出するための位相差画素のペア(以下「AF(AutoFocus)画素対」という)12fが設けられている。なお、R画素121、G画素122、B画素123およびAF画素対12fで示す破線は、集光レンズとして機能するマイクロレンズを示している。
【0032】
瞳分割機能を持たない画素は、G画素122とR画素121とが水平方向に交互に配置されて水平ラインL1を形成しており、B画素123とG画素122とが水平方向に交互に配置されて水平ラインL2を形成している。この水平ラインL1と水平ラインL2とが垂直方向に交互に配置されることでベイヤー配列が構成される。
【0033】
AF画素対12fは、水平方向に沿って繰り返し配列されてAFラインLfを形成している。なお、斜線の領域は遮光部LSである。このように構成されたAFラインLfは、垂直方向に所定ライン数の配置間隔をもって複数設けられている。また、AF画素対12fの第1AF画素12f-aで得られる受光データをA系列のデータ、第2AF画素12f-bで得られる受光データをB系列のデータとする。
【0034】
A系列の像とB系列の像を比較すると、デフォーカス量が大きいほど、A系列の像とB系列の像との間に生じるAFラインLf(水平方向)方向のシフト量(ズレ量)が増大する。図3は、A系列とB系列の像との間に生じるシフト量と、デフォーカス量との関係を例示している。なお、図3においては、縦軸がA系列の像の重心位置に対するB系列の像の重心位置の差(画素ピッチ)を示し、縦軸がデフォーカス量(μm)を示している。なお、各像の重心位置Xgは、式(1)により求められる。なお、式(1)において、X1〜Xnは、例えばAFラインLfにおける左端からの画素位置を表し、Y1〜Ynは、各位置X1〜Xnの第1AF画素12f-a、第2AF画素12f-bからの出力値を表している。
【数1】
【0035】
図3に示すように一対の像における重心位置の差(ピッチ)とデフォーカス量(μm)との関係は、比例関係となっている。この関係について、デフォーカス量をDF(μm)とし重心位置の差をC(μm)として数式で表現すると、次の式(2)のようになる。なお、式(2)の係数kは、傾きGk(破線で図示)を表しており、工場試験等によって事前に取得できるものである。
【数2】
【0036】
このように、AFラインLfのAF画素対12fから得られるA系列のデータとB系列のデータに関する重心位置の差(位相差)Cを算出して、さらに式(2)の演算を行うことでデフォーカス量DFが算出できる。このようにして算出したデフォーカス量DFに基づき、被写体までの距離被写体までの距離を算出する。また、AF画素対12fは、撮像面に分散して設けられていることから、撮像範囲内の複数点で被写体までの距離を計測できる。
【0037】
なお、被写体距離計測部28は、撮像範囲内の複数点で被写体までの距離に応じた被写体距離情報を生成できれば、位相差画素を有するCMOS固体撮像素子を用いる場合に限られない。例えば、被写体距離計測部28は、赤外光または超音波等を利用した測距センサからのセンサ信号に基づき、被写体までの距離を判別して、被写体距離情報を生成してもよい。
【0038】
図1に戻り、合成処理部29は、カメラ信号処理部21やメモリ部41から読み出された画像データ、またはコーデック部26から供給された画像データを用いて撮像画像の画像合成を行い、合成画像の画像データを生成する。また、合成処理部29は、画像合成において、複数点の被写体距離情報に基づき近接被写体の領域を決定して、決定した近接被写体の領域の位置に基づき撮像画像から画像の切り出しを行い、切り出した画像を繋ぎ合わせる。
【0039】
図4は、合成処理部29の構成を示している。合成処理部29は、移動ベクトル検出部291と拡大縮小部292と被写体領域決定部293および合成処理部294を有している。
【0040】
移動ベクトル検出部291は、被写体距離情報の相関に基づき、連続する2つの撮像画像間の移動ベクトルを検出する。拡大縮小部292は、連続する2つの撮像画像間において重複部分の被写体距離情報に基づき画像の拡大縮小を行い、連続する画像において同一被写体の画像サイズを一致させる。また、拡大縮小部292は、拡大縮小処理後の画像に対応させて被写体距離情報を補正する。
【0041】
被写体領域決定部293は、被写体距離情報に基づき、近接被写体の領域を決定する。被写体領域決定部293は、予め設定されている閾値と被写体距離情報を比較して、閾値よりも被写体距離情報が小さい座標位置を近接被写体の領域と決定する。
【0042】
合成処理部294は、被写体領域の検出結果に基づき画像を切り出して、移動ベクトル検出部291で検出された移動ベクトルに基づき位置を調整して合成することで、繋ぎ目部分の画像が連続している合成画像を生成する。合成処理部294は、被写体領域の検出結果で近接被写体が示されている場合、画像の繋ぎ目が近接被写体の位置とならないように画像の切り出しを行う。また、合成処理部294は、被写体領域の検出結果で近接被写体が示されていない場合、撮像レンズ部11等による画像歪みの影響の少ない中央部分の画像を切り出す。例えば、画像を繋ぎ合わせる方向において、より中央に位置する撮像画像から、近接被写体の領域の画像の切り出しを行う。さらに、画像の切り出しは、被写体領域の検出結果と移動ベクトルに基づき、繋ぎ目部分で画像のブレンドを行うことができるように、繋ぎ目部分の被写体が重複するように切り出しを行うようにしてもよく、繋ぎ目部分で一方の画像から他方の画像に切り替わり、繋ぎ目部分の被写体の画像が連続するように切り出しを行うようにしてもよい。合成処理部294は、切り出した画像を順に繋ぎ合わせて広画角の合成画像すなわちパノラマ画像を生成する。
【0043】
また、合成処理部294は、被写体距離情報に基づき撮像画像間の近接被写体の領域の重複を判別して、近接被写体の領域が重複する場合には、近接被写体の領域がより中央に位置する画像すなわち画像歪みの影響の少ない近接被写体の領域の画像の切り出しを行う。
【0044】
図1に戻り、表示部42は、液晶表示素子や有機EL等の平面表示素子を用いて構成されている。表示部42は、表示制御部25の制御の下で、撮像装置10に搭載される機能を選択するためのメニュー表示や撮像装置10の設定状態を示す設定状態表示、撮像画像や再生画像等の表示を行う。
【0045】
記録媒体43は、半導体メモリカードまたは磁気や光を用いて記録再生を行うディスク状記録媒体等が用いられる。記録媒体43は、コーデック部26で生成された符号化データ等を記録する。
【0046】
システム制御部50には、操作部51が接続されている。操作部51は、撮像装置10に設けられた操作スイッチや操作ボタン、表示部42の表示画面に設けられたタッチパネル等を用いて構成されており、ユーザによる操作に応じた操作信号をシステム制御部50に出力する。
【0047】
システム制御部50は、CPU(Central Processing Unit)やROM(Read Only Memory)およびRAM(Random Access Memory)等を用いて構成されている。システム制御部50は、ROMに記憶されているプログラムを読み出してCPUで実行して、操作信号に基づき撮像装置10の動作がユーザ操作に応じた動作となるように各部の動作を制御する。なお、プログラムは、事前に、撮像装置10にインストールされて提供されるものの、このような事前のインストールによる提供に代えて、インターネット等のネットワークを介したインストールによる提供するようにしてもよい。さらに、メモリカード、光ディスク、磁気ディスク等の各種記録媒体により提供するようにしてもよい。
【0048】
<2.画像処理装置を用いた撮像装置の動作>
図5は、本技術の画像処理装置を用いた撮像装置のパノラマ撮像動作を示すフローチャートである。ステップST1で撮像装置10は、1フレーム撮像処理を行う。撮像装置10は、1フレーム撮像処理を行い1フレーム分の撮像画像の画像データを生成する。また、撮像装置10は、被写体距離計測部28によって、撮像画像内の被写体までの距離を算出して被写体距離情報を生成する。さらに、撮像装置10は、撮像画像の画像データと被写体距離情報を例えばメモリ部41に保存してステップST2に進む。
【0049】
図6は、メモリ部41における画像データと被写体距離情報の保存例を示している。各フレームの画像データは、被写体距離情報が関連付けられて保存されている。また、各フレームの画像データに対して、撮像情報や現像用パラメータも関連付けて保存されている。被写体距離情報は、例えばフレーム画像上に設定した複数の座標の位置における被写体までの距離を識別可能とする情報である。
【0050】
図7の(A)は撮像画像、図7の(B)は図7の(A)に示す撮像画像に対する被写体距離情報を例示している。被写体距離情報は、撮像画像上に設定した複数の座標の位置における被写体までの距離に応じた値を示しており、被写体までの距離が短い場合には小さい値、被写体までの距離が長い場合には大きな値とされている。例えば図7では、座標の位置が撮像画像における手前の地面の位置である場合「10」、座標の位置が撮像画像における空の位置である場合「99」としている。
【0051】
図6に示す撮像情報は、撮影日時、露出制御値、ズーム倍率などのカメラ設定値、レンズ情報などの様々な情報である。また、現像用パラメータは、RAWデータを現像するためのホワイトバランス値やγ値等である。
【0052】
図5に戻り、ステップST2で撮像装置10は、撮像終了であるか判別する。撮像装置10は、撮像動作を継続する場合にはステップST1に戻り、撮像動作を終了する場合にはステップST3に進み、撮像動作を継続する場合にはステップST1に戻る。撮像装置10は、撮像終了操作が行われるまで撮像動作を継続して、撮像終了操作が行われた場合に撮像動作を終了する。また、撮像装置10は、例えば所定フレーム数分の撮像画像を生成した場合や、パノラマ画像の生成のために行われた撮像装置10のスイング動作または平行移動動作が終了した場合に撮像動作の終了としてもよい。
【0053】
ステップST3で撮像装置10は、合成処理を行う。撮像装置10は、メモリ部41に保存されている複数枚の撮像画像から画像を切り出して繋ぎ合わせることで、広画角の合成画像を生成してステップST4に進む。また、撮像装置10は、被写体距離情報に基づき、高品質の合成画像を生成できるように、画像の合成を制御する。
【0054】
ステップST4で撮像装置10は、合成画像保存処理を行う。撮像装置10は、生成した合成画像の画像データを、メモリ部41や記録媒体43に記録して、合成画像を保存する。例えば、図8に示すように、合成画像の画像データに対して、合成画像における被写体距離情報や、撮像情報、現像用パラメータ、機種情報等を関連付けて保存する。
【0055】
図9は、合成処理を示すフローチャートである。ステップST11で撮像装置10の合成処理部29は、画像データと被写体距離情報の取得を行う。合成処理部29は、メモリ部41に保存されている画像データと被写体距離情報から合成する画像データと、この画像データに関係付けられている被写体距離情報を取得してステップST12に進む。
【0056】
ステップST12で合成処理部29は、移動ベクトルの検出を行う。合成処理部29は、連続する画像の被写体距離情報に基づいて画像間の移動ベクトルを検出する。例えば、時刻の早い撮像画像における撮像装置移動方向の端部側領域の被写体距離情報と、時刻の遅い撮像画像の被写体距離情報との相関検出を行い、相関が最も高くなる位置を求めることで移動ベクトルの検出を行う。また、被写体距離情報に基づいて画像間の移動ベクトルを検出する場合、被写体距離情報の数が少ないと、高い精度で移動ベクトルを検出することができない。したがって、合成処理部29は、被写体距離情報に基づいて画像間の移動ベクトルの第1の検出を行い、第1の検出結果に基づき探索範囲を設定して、探索範囲の画像データを用いて移動ベクトルの第2の検出を行うようにしてもよい。すなわち、被写体距離情報に基づいて移動ベクトルの粗検出を行い、粗検出結果に基づき探索範囲を設定して、探索範囲の画像データの詳細検出を行う。このように、移動ベクトルの検出を行えば、画像データのみを用いる場合に比べて、移動ベクトルの検出が容易となる。また、被写体距離情報のみを用いる場合に比べて、移動ベクトルの検出精度を高めることができる。
【0057】
ステップST13で合成処理部29は、拡大縮小処理を行う。合成処理部29は、被写体距離情報に基づいて撮像画像間の重複領域を推定して、推定した重複領域における被写体距離情報の差分に応じて、画像の拡大または縮小を行う。例えば被写体距離情報が小さい被写体は近接していることから画像サイズが大きく、被写体距離情報が大きい被写体は離れていることから画像サイズが小さい。すなわち同一被写体で被写体距離情報が異なると、画像サイズの相違が生じていると想定される。したがって、合成処理部29は、拡大縮小処理を行うことにより、連続する画像において同一被写体の画像サイズを一致させてステップST14に進む。なお、被写体距離情報と画像サイズは、撮像レンズ部11のズーム倍率等によって相違する。したがって、被写体距離情報の差分に応じて、画像の拡大または縮小を行う場合は、撮像情報に含まれているカメラ設定値やレンズ情報に基づき拡大倍率や縮小倍率を決定すればよい。
【0058】
ステップST14で合成処理部29は、被写体領域を決定する。合成処理部29は、被写体距離情報に基づき撮像画像における近接被写体の領域を決定する。例えば、近接している被写体では被写体距離情報の値が小さく、離れている被写体では被写体距離情報の値が大きくなるとする。この場合、合成処理部29は、被写体距離情報の値が予め設定されている閾値よりも小さい領域を近接被写体の領域としてステップST15に進む。また、撮像画像において、近接した被写体と離れた被写体との境界では、被写体距離情報の差分が大きくなる。したがって、周辺の被写体距離情報との差分を利用して、近接被写体の領域を判別してもよい。さらに、被写体距離情報だけでなく画像処理による被写体検出結果を用いて所望の近接被写体を検出してもよい。例えば、被写体距離情報から近接被写体の領域を検出して、検出された近接被写体の領域の画像を用いて顔認識を行うことで、近接する人物をより確実に検出することができる。なお、人物が後ろを向いている場合には顔を認識することができないが、被写体距離情報によって近接被写体であるかを判別することができる。
【0059】
ステップST15で合成処理部29は、近接被写体が含まれているか判別する。合成処理部29は、近接被写体が含まれていると判別した場合にはステップST16に進み、近接被写体が含まれていないと判別した場合にはステップST17に進む。
【0060】
ステップST16で合成処理部29は、近接被写体領域を分割しないように画像の切り出しを行う。合成処理部29は、ステップST14で検出した近接被写体領域が画像の切り出しで分割されることがなく、画像を合成したとき繋ぎ目の画像が連続するように切り出し位置や切り出し幅(合成画像の長手方向に対応するサイズ)を決定する。なお、切り出し位置や切り出し幅の決定において、検出されている移動ベクトルを用いれば、画像を合成したとき繋ぎ目の画像が連続するように切り出し位置や切り出し幅を容易に決定できる。このようにして、合成処理部29は、撮像画像から合成処理に用いる画像を切り出してステップST18に進む。また、合成処理部29は、被写体距離情報に基づき撮像画像間の近接被写体の領域の重複を判別して、領域が重複する場合には、近接被写体の領域がより中央に位置する撮像画像から画像の切り出しを行う。すなわち、画像歪みの影響の少ない近接被写体の領域の画像の切り出しを行う。近接被写体の領域の重複は、近接被写体の領域に対応する被写体距離情報の相関を検出して、検出結果に基づき判別する。例えば、近接被写体の領域が一致すると、近接被写体の領域に対応する被写体距離情報の相関が高くなる。したがって、被写体距離情報の相関に基づき近接被写体の領域の重複を判別できる。なお、相関検出は後述の移動ベクトルの検出と同様に行えばよい。
【0061】
ステップST17で合成処理部29は、中央部分の画像の切り出しを行う。合成処理部29は、撮像レンズ部11等によって生じる歪みの少ない中央部分から合成処理に用いる画像を切り出してステップST18に進む。また、合成処理部29は、画像を合成したとき繋ぎ目の画像が連続するように切り出し位置や切り出し幅を決定する。
【0062】
ステップST18で合成処理部29は、画像の合成を行う。合成処理部29は、ステップST16やステップST17で切り出した画像を、ステップST12で検出した移動ベクトルに基づき位置を調整して合成することで、繋ぎ目部分の画像が連続している合成画像を生成してステップST19に進む。
【0063】
ステップST19で合成処理部29は、被写体距離情報を合成画像に関連付ける。合成処理部29は、画像の拡大または縮小に応じて補正されている被写体距離情報を合成画像に関連付けてステップST20に進む。また、画像合成では、移動ベクトルに基づき画像の切り出しや合成が行われるため、合成の画像における測距点の間隔が繋ぎ目で短くなってしまう場合が想定される。したがって、間隔が一様とされた測距点に対応する被写体距離情報を線形補間演算等によって算出して、合成画像に関連付けてもよい。なお、ステップST19の処理は、ステップST20で合成処理が終了したと判断された後に行うようにしてもよい。また、ステップST19の処理を行うことなく、合成画像の生成のみを行うようにしてもよい。
【0064】
ステップST20で合成処理部29は、最後の画像の合成が終了したか判別する。合成処理部29は、上述の処理に用いられていない画像が残っている場合にはステップST11に戻り、全ての画像を用いて上述の処理が終了している場合には合成処理を終了する。
【0065】
図10は、合成画像の生成処理を例示している。図10の(A)は複数枚の撮像画像P1〜P5、図10の(B)は合成画像を示している。
【0066】
合成処理部29は、撮像画像の画像データと被写体距離情報を取得して、被写体領域検出処理を行う。例えば、被写体領域検出処理によって、撮像画像P1では被写体OB1,OB2の領域、撮像画像P2では被写体OB2,OB3の領域、撮像画像P3では被写体OB3の領域が近接被写体の領域と判別されたとする。
【0067】
合成処理部29は、移動ベクトルの検出と拡大縮小処理を行う。なお、移動ベクトルの検出と拡大縮小処理については、図11を用いて後述する。
【0068】
合成処理部29は、近接被写体が含まれている場合、近接被写体領域が画像の切り出しで分割されることがなく、画像を合成したとき繋ぎ目に近接被写体領域の画像が存在しないように切り出し位置や切り出し幅を決定して、合成処理に用いる画像を切り出す。また、合成処理部29は、被写体距離情報に基づき撮像画像間の近接被写体の領域の重複を判別して、近接被写体の領域が重複する場合には、近接被写体の領域がより中央に位置する画像の切り出しを行う。ここで、撮像画像P1では近接被写体として被写体OB1,OB2、撮像画像P2では近接被写体として被写体OB2,OB3、撮像画像P3では近接被写体として被写体OB3が検出されているとする。また、撮像画像P1と撮像画像P2では被写体OB2が重複しており、撮像画像P2と撮像画像P3では被写体OB3が重複しているとする。さらに、被写体OB2が中央に位置する画像は撮像画像P2であり、被写体OB3が中央に位置する画像は撮像画像P3とする。この場合、合成処理部29は、重複する近接被写体の領域が、画像を繋ぎ合わせる方向において、より中央に位置する撮像画像から、近接被写体の領域の画像の切り出しを行う。すなわち、撮像画像P1に含まれる被写体OB2の画像は、撮像画像P2以降の画像から切り出すようにして、撮像画像P1の被写体OB1の領域が分割されないように切り出し領域AR1を設定して画像の切り出しを行う。また、合成処理部29は、撮像画像P2に含まれる被写体OB3の画像は撮像画像P3以降の画像から切り出すようにして、撮像画像P2の被写体OB2の領域が分割されないように切り出し領域AR2を設定して画像の切り出しを行う。
【0069】
合成処理部29は、画像合成を行い切り出した領域AR1,AR2の画像を繋ぎ合わせることで、合成画像を生成する。
【0070】
また、撮像画像P3と撮像画像P4では被写体OB3が重複しており、被写体OB3が画像を繋ぎ合わせる方向において、より中央に位置する画像は撮像画像P3である。したがって、合成処理部29は、撮像画像P3に含まれる被写体OB3の領域が分割されないように切り出し領域AR3を設定して画像の切り出しを行う。また、合成処理部29は、画像合成を行い切り出した領域AR3の画像を合成画像に繋ぎ合わせることで、広画角の合成画像を生成する。
【0071】
以下同様な処理を時間順の最後の撮像画像まで繰り返し行うことで、図10の(B)に示すように、広画角の合成画像PGを生成できる。なお、図10では、繋ぎ目部分で一方の画像から他方の画像に切り替わるように画像を切り出しているが、繋ぎ目部分でお互いの画像が重複するように切り出してもよい。
【0072】
図11は、移動ベクトルと拡大縮小処理を例示した図である。図11の(A)は移動ベクトルの算出と拡大縮小処理に用いる連続する2つの撮像画像、例えば撮像画像P1と撮像画像P2を示している。図11の(B)は、撮像画像P1と撮像画像P2の被写体距離情報を示している。
【0073】
合成処理部29は、例えば撮像画像P1と撮像画像P2の移動ベクトルを検出する場合、時刻の早い撮像画像P1における撮像装置移動方向の端部側領域DLaの被写体距離情報と、時刻の遅い撮像画像P2の被写体距離情報との相関を検出して、相関が最も高くなる位置を求める。ここで、撮像画像P2の被写体距離情報における領域DLbで相関が最も高くなる場合には、端部側領域DLaと領域DLbから図11の(C)に示すように、撮像画像P1と撮像画像P2との移動ベクトルMVを容易に検出できる。また、領域DLbを基準として探索範囲を設定して、端部側領域DLa内の画像と探索範囲内の画像の相関検出を行えば、被写体距離情報が少ない場合すなわち測距が行われた点が少ない場合でも、精度よく移動ベクトルを検出できる。
【0074】
また、合成処理部29は、被写体距離情報に基づいて撮像画像間の重複領域を推定して、推定した重複領域における被写体距離情報の差分に応じて、画像の拡大または縮小を行う。合成処理部29は、例えば被写体距離情報の相関検出を行い、相関が高い領域を重複領域と判別する。上述のように、移動ベクトルの検出では、被写体距離情報との相関検出を行い、相関が最も高くなる位置を求めることで移動ベクトルを検出している。すなわち、移動ベクトルの検出では、撮像画像間の重複領域を検出していることから、検出された重複領域における被写体距離情報の差分に応じて、画像の拡大または縮小を行えばよい。すなわち、撮像画像P1における端部側領域DLaの被写体距離情報と、撮像画像P2における領域DLbの被写体距離情報の差分に応じて画像の拡大または縮小を行う。なお、図11では、端部側領域DLaの被写体距離情報に比べて領域DLbの被写体距離情報の値が小さい。すなわち、撮像画像P2は撮像画像P1に比べて被写体に近接して撮像が行われたと判別して、撮像画像P2を縮小させる。また、縮小倍率は、カメラ設定値やレンズ情報に基づき決定する。このように被写体距離情報に基づいて拡大縮小処理を行えば、例えば被写体から離れる方向に移動しながらスイング動作を行い、複数の撮像画像を生成して画像合成を行った場合でも、繋ぎ目を連続した画像とすることが可能となる。
【0075】
また、移動ベクトルに基づき画像の切り出しと合成を行うと、移動ベクトルが合成画像の長手方向に対して傾きを有している場合、図11の(C)に示すように、合成画像は矩形状の画像とならない場合が生じる。したがって、合成処理部29は、合成画像から矩形状にトリミングすることで、トリミング後の画像PHを合成画像として保存する。
【0076】
また、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させる。または、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。
【0077】
例えば、プログラムは記録媒体としてのハードディスクやROM(Read Only Memory)に予め記録しておくことができる。あるいは、プログラムはフレキシブルディスク、CD−ROM(Compact Disc Read Only Memory),MO(Magneto optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリカード等のリムーバブル記録媒体に、一時的または永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウェアとして提供することができる。
【0078】
また、プログラムは、リムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトからLAN(Local Area Network)やインターネット等のネットワークを介して、コンピュータに無線または有線で転送してもよい。コンピュータでは、そのようにして転送されてくるプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
【0079】
ハードウェアやソフトウェア、または両者の複合構成によって一連の処理を実行する場合、記録媒体から撮像画像の画像データと撮像画像に対応する被写体距離情報を読み出すようにしてもよく、ネットワークを介して他の機器から取得するようにしてもよい。さらに、他の機器からネットワーク等を介して画像データと被写体距離情報を取得して、撮像装置で合成画像を生成するようにしてもよい。
【0080】
このように、本技術によれば、近接被写体の画像が分割されることなく切り出されて画像合成に用いられるので、上書きする画像の選択操作や繋ぎ目に選択した画像を上書きする処理を行う必要がなく、高品質である広画角の合成画像を容易に生成できる。また、近接被写体が複数枚の撮像画像に含まれる場合や、近接被写体が含まれていない場合には、歪みの少ない部分から画像が切り出されるので、高品質の合成画像を生成できる。さらに、重複部分の被写体距離情報の差分に応じて拡大縮小処理が行われて同一被写体の画像サイズが等しくされるので、撮像時に撮像画像間で被写体までの距離が変化しても繋ぎ目部分を連続した画像とすることができる。また、被写体距離情報を用いることで移動ベクトルの検出が容易となる。
【0081】
なお、本技術は上述した技術の実施の形態に限定して解釈されるべきではない。例えば、上述の実施の形態では、矩形状に画像を切り出す場合について説明したが、近接被写体の形状に応じて画像を切り出すようにしてもよい。また、切り出した画像に対して拡大縮小処理を行うようにしても、繋ぎ目部分を連続した画像とすることができる。この技術の実施の形態は、例示という形態で本技術を開示しており、本技術の要旨を逸脱しない範囲で当業者が実施の形態の修正や代用をなし得ることは自明である。すなわち、本技術の要旨を判断するためには、特許請求の範囲を参酌すべきである。
【0082】
また、本技術は以下のような構成も取ることができる。
(1)撮像時に測距を行って生成された複数点の被写体距離情報に基づき、撮像画像における近接被写体の領域を決定する被写体領域決定部と、
前記決定した近接被写体の領域の位置に基づき前記撮像画像から画像の切り出しを行い、切り出した画像を繋ぎ合わせて合成画像を生成する合成処理部と
を備える画像合成装置。
【0083】
(2)前記合成処理部は、前記近接被写体の領域が決定されている場合には、前記近接被写体の領域を分割しないように画像の切り出しを行う前記(1)に記載の画像合成装置。
【0084】
(3)前記合成処理部は、前記近接被写体の領域が決定されていない場合には、中央部分の画像の切り出しを行う前記(1)または前記(2)に記載の画像合成装置。
【0085】
(4)前記合成処理部は、前記被写体距離情報に基づき画像間の前記近接被写体の領域の重複を判別して、前記近接被写体の領域が重複する場合には、該重複する近接被写体の領域がより中央に位置する撮像画像から、前記近接被写体の領域の画像の切り出しを行う前記(1)乃至前記(3)の何れかに記載の画像合成装置。
【0086】
(5)前記合成処理部は、前記重複する近接被写体の領域が、画像を繋ぎ合わせる方向において、より中央に位置する撮像画像から、前記近接被写体の領域の画像の切り出しを行う前記(1)乃至前記(4)の何れかに記載の画像合成装置。
【0087】
(6)前記合成処理部は、前記検出された近接被写体の領域に対応する被写体距離情報の相関を検出して、検出結果に基づき画像間における前記近接被写体の領域の重複を判別する前記(1)乃至前記(5)の何れかに記載の画像合成装置。
【0088】
(7)前記被写体距離情報に基づいて画像間の重複領域を推定して、該推定した重複領域における前記被写体距離情報の差分に応じて、画像の拡大または縮小を行う拡大縮小部をさらに備え、
前記画像合成部は、前記被写体距離情報の差分に応じて拡大または縮小された画像の繋ぎ合わせを行う前記(1)乃至前記(6)の何れかに記載の画像合成装置。
【0089】
(8)前記拡大縮小部は、前記被写体距離情報の相関を検出して、検出結果に基づき画像間の重複領域を推定する前記(7)に記載の画像合成装置。
【0090】
(9)前記被写体距離情報に基づいて、連続する2つの撮像画像間の移動ベクトルを検出する移動ベクトル検出部をさらに備え、
前記画像合成部は、前記検出した移動ベクトルに基づいて前記合成画像の生成を行う前記(1)乃至前記(8)の何れかに記載の画像合成装置。
【0091】
(10)前記移動ベクトルは、前記被写体距離情報に基づいて画像間の移動ベクトルの第1の検出を行い、第1の検出結果に基づき探索範囲を設定して、該探索範囲の画像データを用いて前記移動ベクトルの第2の検出を行う前記(9)に記載の画像合成装置。
【0092】
(11)前記被写体領域決定部は、予め設定されている閾値と前記被写体距離情報を比較して、比較結果に基づき前記近接被写体の領域を決定する前記(1)乃至前記(10)の何れかに記載の画像合成装置。
【産業上の利用可能性】
【0093】
この技術の画像合成装置と画像合成方法およびプログラムでは、撮像時に測距を行って生成された複数点の被写体距離情報に基づき、撮像画像における近接被写体の領域が決定される。また、決定した近接被写体の領域の位置に基づき撮像画像から画像の切り出しを行い、切り出した画像を繋ぎ合わせて合成画像が生成される。したがって、繋ぎ目に上書きする画像の選択操作や選択した画像を繋ぎ目に上書きする処理を行う必要がなく、また、近接被写体の領域の位置に基づき画像が切り出されて合成されるので、高品質である広画角の合成画像を容易に生成できる。このため、撮像装置や画像の編集装置等に適している。
【符号の説明】
【0094】
10・・・撮像装置、11・・・撮像レンズ部、12・・・撮像素子、12f・・・AF画素対、12f-a・・・第1AF画素、12f-b・・・第2AF画素、13・・・撮像素子駆動部、14・・・前処理部、20・・・カメラDSP部、21・・・カメラ信号処理部、22・・・メモリ制御部、23・・・レンズ制御部、24・・・解像度変換部、25・・・表示制御部、26・・・コーデック部、27・・・メディア制御部、28・・・被写体距離計測部、29・・・合成処理部、30・・・内部バス、41・・・メモリ部、42・・・表示部、43・・・記録媒体、50・・・システム制御部、51・・・操作部、121・・・R画素、122・・・G画素、123・・・B画素、291・・・移動ベクトル検出部、292・・・拡大縮小部、293・・・被写体領域決定部、294・・・合成処理部
【技術分野】
【0001】
この技術は、画像合成装置と画像合成方法およびプログラムに関する。詳しくは、画像の合成を制御して高品質である広画角の合成画像を容易に生成できるようにする。
【背景技術】
【0002】
従来、撮像装置をスイングまたは平行移動しながら複数回の撮像を行うことにより得られた撮像画像を合成することで、1回の撮像で得られる画像よりも広画角であるパノラマ画像を生成することが行われている。例えば特許文献1では、画像の特徴点を抽出して、この特徴点が一致するように画像を繋ぎ合わせることで、パノラマ画像が生成されている。
【0003】
また、特徴点が一致するように画像を繋ぎ合わせる場合、ユーザの意図とは無関係に画像の繋ぎ目の位置が決定されて、例えば主要な被写体の位置に繋ぎ目が生じてしまうおそれがある。このため、特許文献2では、ユーザが意図する部分に画像合成による繋ぎ目が生じた場合、ユーザが選択した画像を繋ぎ目に上書きすることが可能とされている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開平11−282100号公報
【特許文献2】特開2008ー176430号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、ユーザが選択した画像をパノラマ画像の繋ぎ目に上書きする場合、上書きする画像を選択する操作が必要となり、ユーザが意図する部分に画像合成による繋ぎ目が生じていないパノラマ画像を自動的に生成することができない。
【0006】
そこで、この技術では複数の画像を合成して合成画像を生成する場合に、画像の合成を制御して高品質である広画角の合成画像を容易に生成できる画像合成装置と画像合成方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
この技術の第1の側面は、撮像時に測距を行って生成された複数点の被写体距離情報に基づき、撮像画像における近接被写体の領域を決定する被写体領域決定部と、前記決定した近接被写体の領域の位置に基づき前記撮像画像から画像の切り出しを行い、切り出した画像を繋ぎ合わせて合成画像を生成する合成処理部とを備える画像合成装置にある。
【0008】
この技術においては、撮像時に測距を行って生成された複数点の被写体距離情報と予め設定されている閾値が比較されて、比較結果に基づき近接被写体の領域が決定される。近接被写体の領域が決定された場合には、近接被写体の領域を分割しないように画像の切り出し、近接被写体の領域が決定されていない場合には、中央部分の画像の切り出しが行われる。また、近接被写体の領域が複数の画像で重複する場合には、画像を繋ぎ合わせる方向において、より中央に位置する撮像画像から、近接被写体の領域の画像の切り出しが行われて、画像が連続するように繋ぎ合わされて合成画像が生成される。また、被写体距離情報の相関を検出して、検出結果に基づき画像間の重複領域が推定されて、推定された重複領域における被写体距離情報の差分に応じて、画像の拡大または縮小が行われる。さらに、被写体距離情報に基づいて連続する2つの画像間の移動ベクトルが検出されて、近接被写体の領域の位置や移動ベクトルに基づき、拡大または縮小された画像から切り出した画像が繋ぎ合わされて合成画像が生成される。
【0009】
この技術の第2の側面は、撮像時に測距を行って生成された複数点の被写体距離情報に基づき、撮像画像における近接被写体の領域を決定する工程と、前記決定した近接被写体の領域の位置に基づき前記撮像画像から画像の切り出しを行い、切り出した画像を繋ぎ合わせて合成画像を生成する工程とを含む画像合成方法にある。
【0010】
この技術の第3の側面は、複数の撮像画像から広画角の合成画像を生成する画像合成をコンピュータで実行させるプログラムであって、撮像時に測距を行って生成された複数点の被写体距離情報に基づき、撮像画像における近接被写体の領域を決定する手順と、前記決定した近接被写体の領域の位置に基づき前記撮像画像から画像の切り出しを行い、切り出した画像を繋ぎ合わせて合成画像を生成する手順とを前記コンピュータで実行させるプログラム。
【0011】
なお、本技術のコンピュータ・プログラムは、例えば、様々なプログラム・コードを実行可能な汎用コンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体、例えば、光ディスクや磁気ディスク、半導体メモリなどの記憶媒体、あるいは、ネットワークなどの通信媒体によって提供可能なコンピュータ・プログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、コンピュータ・システム上でプログラムに応じた処理が実現される。
【発明の効果】
【0012】
この技術によれば、撮像時に測距を行って生成された複数点の被写体距離情報に基づき、撮像画像における近接被写体の領域が決定される。また、決定した近接被写体の領域の位置に基づき撮像画像から画像の切り出しを行い、切り出した画像を繋ぎ合わせて合成画像が生成される。したがって、繋ぎ目に上書きする画像の選択操作や選択した画像を繋ぎ目に上書きする処理を行う必要がなく、また、近接被写体の領域の位置に基づき画像が切り出されて合成されるので、高品質である広画角の合成画像を容易に生成できる。
【図面の簡単な説明】
【0013】
【図1】撮像装置の構成を示す図である。
【図2】位相差画素を有するCMOS固体撮像素子の構成を示す図である。
【図3】A系列とB系列の像との間に生じるシフト量と、デフォーカス量との関係を例示した図である。
【図4】合成処理部の構成を示している。
【図5】撮像装置のパノラマ撮像動作を示すフローチャートである。
【図6】撮像画像の保存例を示す図である。
【図7】撮像画像と被写体距離情報を例示した図である。
【図8】合成画像の保存例を示す図である。
【図9】合成画像の生成処理を示すフローチャートである。
【図10】合成画像の生成処理を例示した図である。
【図11】移動ベクトルと拡大縮小処理を例示した図である。
【発明を実施するための形態】
【0014】
以下、本技術を実施するための形態について説明する。なお、説明は以下の順序で行う。
1.画像処理装置を用いた撮像装置の構成
2.画像処理装置を用いた撮像装置の動作
【0015】
<1.画像処理装置を用いた撮像装置の構成>
図1は、本技術の画像処理装置を用いた撮像装置10の構成を例示している。撮像装置10は、撮像レンズ部11、撮像素子12、撮像素子駆動部13、前処理部14、カメラDSP部20、メモリ部41、表示部42、記録媒体43、システム制御部50、操作部51を有している。
【0016】
撮像レンズ部11は、被写体光を撮像素子12に導くための撮像光学系として機能するものである。撮像レンズ部11は、撮像素子12の撮像面上に結像される光学像の焦点の調節を行うためのフォーカスレンズや、光学像の変倍を行うためのズームレンズ等が含まれている。
【0017】
撮像素子12は、CMOS(Complementary Metal-Oxide Semiconductor)やCCD(Charge Coupled Device)等の固体撮像素子を用いて構成されている。撮像素子12は、撮像レンズ部11によって受光面に結像された光学像に応じた撮像信号を生成して前処理部14に出力する。
【0018】
撮像素子駆動部13は、駆動信号を生成して撮像素子12に供給することで、撮像信号を撮像素子12で生成して出力させる。
【0019】
前処理部14は、撮像素子12から供給される撮像信号に対して相関二重サンプリング処理(CDS:Correlated Double Sampling)やアナログ増幅処理、A/D変換処理等を行い、画像データを生成してカメラDSP(Digital Signal Processing)部20に出力する。
【0020】
カメラDSP部20は、後述するシステム制御部50の制御のもとで、前処理部5から出力される画像データの記録や再生および画像データに基づく画像表示等に係る処理、広画角の合成画像の生成等を行う。なお、カメラDSP部20にはメモリ部41が接続されており、メモリ部41は、カメラDSP部20で種々の処理を行うための作業用領域として用いられる。
【0021】
カメラDSP部20は、カメラ信号処理部21、メモリ制御部22、レンズ制御部23、解像度変換部24、表示制御部25、コーデック部26、メディア制御部27、被写体距離計測部28、合成処理部29を有している。また、カメラDSP部20の各部は、内部バス30を介して接続されている。
【0022】
カメラ信号処理部21は、前処理部14から供給される画像データに対してホワイトバランス調整処理、ガンマ補正処理等を行う。また、カメラ信号処理部21は、画像データから絞り補正、オートフォーカス調整に必要な情報を検出し、検出した情報をレンズ制御部23に出力する。
【0023】
メモリ制御部22は、メモリ部41に対するデータの書き込みや書き込まれているデータの読み出しを制御する。メモリ制御部22は、カメラDSP部20の各部から供給される画像データや符号化データをメモリ部41に書き込み、またメモリ部41に書き込まれている画像データや符号化データを読み出してカメラDSP部20の各部に出力する。
【0024】
レンズ制御部23は、カメラ信号処理部21から得られる情報や、後述するシステム制御部50からの制御信号に基づき、撮像レンズ部11を駆動して、オートフォーカス制御やズーム制御、絞り制御等を行う。
【0025】
解像度変換部24は、メモリ部41に格納された画像データ、またはカメラ信号処理部21から出力される画像データの解像度を変換する。例えば、解像度変換部24は、カメラ信号処理が行われた画像データを表示部42の表示解像度に対応した画像データに変換する。また、解像度変換部24は、ユーザにより指示された解像度に変換して、記録媒体43に記録できるようにする。また、撮像画像の一部領域を切り出してこの解像度の変換処理に係る処理を実行して、電子ズームや再生ズームの処理が行われた画像データを生成する。
【0026】
表示制御部25は、解像度変換部24から供給された画像データやメモリ部41に格納された画像データにより表示部42を駆動して、撮像動作時におけるモニタ画像やメモリ部41に記録されている画像、および記録媒体43に記録されている画像の表示を行う。また、表示制御部25は、撮像装置10に搭載される機能を選択するためのメニュー表示や撮像装置10の設定状態を示す設定状態表示等を、表示部42で表示させる。
【0027】
コーデック部26は、画像データのデータ圧縮処理を行い、得られた符号化データをメモリ制御部22やメディア制御部27に出力して、メモリ部41や記録媒体43に記録させる。また、メモリ部41や記録媒体43から読み出された符号化データのデータ伸長処理を行い、得られた画像データをメモリ制御部22や表示制御部25等に出力する。なおこのデータ圧縮、伸長は、静止画にあってはJPEG(Joint Photographic Coding Experts Group)の手法が適用され、動画にあっては、ISO/IEC JTC1/SC29WG11のMPEG1(Motion Picture Experts Group 1)、MPEG2(Motion Picture Experts Group 2)、MPEG4(Motion Picture Experts Group 4)、ITU−TのH.263、H.264/MPEG4−AVC(Advanced Video Coding)等、動きベクトルを用いたデータ圧縮手法が適用される。
【0028】
メモリ制御部22は、メモリ部41に対するデータの書き込みや書き込まれているデータの読み出しを制御する。メモリ制御部22は、カメラDSP部20の各部から供給される画像データや符号化データをメモリ部41に書き込み、またメモリ部41に書き込まれている画像データや符号化データを読み出してカメラDSP部20の各部に出力する。
【0029】
メディア制御部27は、記録媒体43に対するデータの書き込みや書き込まれているデータの読み出しを制御する。メディア制御部27は、カメラDSP部20の各部から供給される画像データや符号化データを記録媒体43に書き込み、また記録媒体43に書き込まれている画像データや符号化データを読み出してカメラDSP部20の各部に出力する。
【0030】
被写体距離計測部28は、撮像時に撮像範囲内の複数点で被写体までの距離を計測して、計測結果に応じた距離情報(以下「被写体距離情報」という)を生成する。被写体距離計測部28は、生成した被写体距離情報を合成処理部29に出力する。または、被写体距離計測部28は、生成した被写体距離情報を撮像画像の画像データと関連付けてメモリ部41や記録媒体43に供給する。
【0031】
被写体距離計測部28としては、例えば特開2010−169709号公報に示されているように、被写体光を瞳分割して焦点検出するための位相差画素を有するCMOS固体撮像素子を用いることができる。図2は、位相差画素を有するCMOS固体撮像素子の構成を示している。撮像素子12は、フォトダイオードを用いて構成される複数の画素がマトリクス状に2次元配置されている。各画素の受光面には、それぞれ分光特性の異なる例えばR(赤)、G(緑)、B(青)のカラーフィルタが1:2:1の比率で配設されて、R画素121、G画素122およびB画素123が形成されている。また、被写体光を瞳分割して焦点検出するための位相差画素のペア(以下「AF(AutoFocus)画素対」という)12fが設けられている。なお、R画素121、G画素122、B画素123およびAF画素対12fで示す破線は、集光レンズとして機能するマイクロレンズを示している。
【0032】
瞳分割機能を持たない画素は、G画素122とR画素121とが水平方向に交互に配置されて水平ラインL1を形成しており、B画素123とG画素122とが水平方向に交互に配置されて水平ラインL2を形成している。この水平ラインL1と水平ラインL2とが垂直方向に交互に配置されることでベイヤー配列が構成される。
【0033】
AF画素対12fは、水平方向に沿って繰り返し配列されてAFラインLfを形成している。なお、斜線の領域は遮光部LSである。このように構成されたAFラインLfは、垂直方向に所定ライン数の配置間隔をもって複数設けられている。また、AF画素対12fの第1AF画素12f-aで得られる受光データをA系列のデータ、第2AF画素12f-bで得られる受光データをB系列のデータとする。
【0034】
A系列の像とB系列の像を比較すると、デフォーカス量が大きいほど、A系列の像とB系列の像との間に生じるAFラインLf(水平方向)方向のシフト量(ズレ量)が増大する。図3は、A系列とB系列の像との間に生じるシフト量と、デフォーカス量との関係を例示している。なお、図3においては、縦軸がA系列の像の重心位置に対するB系列の像の重心位置の差(画素ピッチ)を示し、縦軸がデフォーカス量(μm)を示している。なお、各像の重心位置Xgは、式(1)により求められる。なお、式(1)において、X1〜Xnは、例えばAFラインLfにおける左端からの画素位置を表し、Y1〜Ynは、各位置X1〜Xnの第1AF画素12f-a、第2AF画素12f-bからの出力値を表している。
【数1】
【0035】
図3に示すように一対の像における重心位置の差(ピッチ)とデフォーカス量(μm)との関係は、比例関係となっている。この関係について、デフォーカス量をDF(μm)とし重心位置の差をC(μm)として数式で表現すると、次の式(2)のようになる。なお、式(2)の係数kは、傾きGk(破線で図示)を表しており、工場試験等によって事前に取得できるものである。
【数2】
【0036】
このように、AFラインLfのAF画素対12fから得られるA系列のデータとB系列のデータに関する重心位置の差(位相差)Cを算出して、さらに式(2)の演算を行うことでデフォーカス量DFが算出できる。このようにして算出したデフォーカス量DFに基づき、被写体までの距離被写体までの距離を算出する。また、AF画素対12fは、撮像面に分散して設けられていることから、撮像範囲内の複数点で被写体までの距離を計測できる。
【0037】
なお、被写体距離計測部28は、撮像範囲内の複数点で被写体までの距離に応じた被写体距離情報を生成できれば、位相差画素を有するCMOS固体撮像素子を用いる場合に限られない。例えば、被写体距離計測部28は、赤外光または超音波等を利用した測距センサからのセンサ信号に基づき、被写体までの距離を判別して、被写体距離情報を生成してもよい。
【0038】
図1に戻り、合成処理部29は、カメラ信号処理部21やメモリ部41から読み出された画像データ、またはコーデック部26から供給された画像データを用いて撮像画像の画像合成を行い、合成画像の画像データを生成する。また、合成処理部29は、画像合成において、複数点の被写体距離情報に基づき近接被写体の領域を決定して、決定した近接被写体の領域の位置に基づき撮像画像から画像の切り出しを行い、切り出した画像を繋ぎ合わせる。
【0039】
図4は、合成処理部29の構成を示している。合成処理部29は、移動ベクトル検出部291と拡大縮小部292と被写体領域決定部293および合成処理部294を有している。
【0040】
移動ベクトル検出部291は、被写体距離情報の相関に基づき、連続する2つの撮像画像間の移動ベクトルを検出する。拡大縮小部292は、連続する2つの撮像画像間において重複部分の被写体距離情報に基づき画像の拡大縮小を行い、連続する画像において同一被写体の画像サイズを一致させる。また、拡大縮小部292は、拡大縮小処理後の画像に対応させて被写体距離情報を補正する。
【0041】
被写体領域決定部293は、被写体距離情報に基づき、近接被写体の領域を決定する。被写体領域決定部293は、予め設定されている閾値と被写体距離情報を比較して、閾値よりも被写体距離情報が小さい座標位置を近接被写体の領域と決定する。
【0042】
合成処理部294は、被写体領域の検出結果に基づき画像を切り出して、移動ベクトル検出部291で検出された移動ベクトルに基づき位置を調整して合成することで、繋ぎ目部分の画像が連続している合成画像を生成する。合成処理部294は、被写体領域の検出結果で近接被写体が示されている場合、画像の繋ぎ目が近接被写体の位置とならないように画像の切り出しを行う。また、合成処理部294は、被写体領域の検出結果で近接被写体が示されていない場合、撮像レンズ部11等による画像歪みの影響の少ない中央部分の画像を切り出す。例えば、画像を繋ぎ合わせる方向において、より中央に位置する撮像画像から、近接被写体の領域の画像の切り出しを行う。さらに、画像の切り出しは、被写体領域の検出結果と移動ベクトルに基づき、繋ぎ目部分で画像のブレンドを行うことができるように、繋ぎ目部分の被写体が重複するように切り出しを行うようにしてもよく、繋ぎ目部分で一方の画像から他方の画像に切り替わり、繋ぎ目部分の被写体の画像が連続するように切り出しを行うようにしてもよい。合成処理部294は、切り出した画像を順に繋ぎ合わせて広画角の合成画像すなわちパノラマ画像を生成する。
【0043】
また、合成処理部294は、被写体距離情報に基づき撮像画像間の近接被写体の領域の重複を判別して、近接被写体の領域が重複する場合には、近接被写体の領域がより中央に位置する画像すなわち画像歪みの影響の少ない近接被写体の領域の画像の切り出しを行う。
【0044】
図1に戻り、表示部42は、液晶表示素子や有機EL等の平面表示素子を用いて構成されている。表示部42は、表示制御部25の制御の下で、撮像装置10に搭載される機能を選択するためのメニュー表示や撮像装置10の設定状態を示す設定状態表示、撮像画像や再生画像等の表示を行う。
【0045】
記録媒体43は、半導体メモリカードまたは磁気や光を用いて記録再生を行うディスク状記録媒体等が用いられる。記録媒体43は、コーデック部26で生成された符号化データ等を記録する。
【0046】
システム制御部50には、操作部51が接続されている。操作部51は、撮像装置10に設けられた操作スイッチや操作ボタン、表示部42の表示画面に設けられたタッチパネル等を用いて構成されており、ユーザによる操作に応じた操作信号をシステム制御部50に出力する。
【0047】
システム制御部50は、CPU(Central Processing Unit)やROM(Read Only Memory)およびRAM(Random Access Memory)等を用いて構成されている。システム制御部50は、ROMに記憶されているプログラムを読み出してCPUで実行して、操作信号に基づき撮像装置10の動作がユーザ操作に応じた動作となるように各部の動作を制御する。なお、プログラムは、事前に、撮像装置10にインストールされて提供されるものの、このような事前のインストールによる提供に代えて、インターネット等のネットワークを介したインストールによる提供するようにしてもよい。さらに、メモリカード、光ディスク、磁気ディスク等の各種記録媒体により提供するようにしてもよい。
【0048】
<2.画像処理装置を用いた撮像装置の動作>
図5は、本技術の画像処理装置を用いた撮像装置のパノラマ撮像動作を示すフローチャートである。ステップST1で撮像装置10は、1フレーム撮像処理を行う。撮像装置10は、1フレーム撮像処理を行い1フレーム分の撮像画像の画像データを生成する。また、撮像装置10は、被写体距離計測部28によって、撮像画像内の被写体までの距離を算出して被写体距離情報を生成する。さらに、撮像装置10は、撮像画像の画像データと被写体距離情報を例えばメモリ部41に保存してステップST2に進む。
【0049】
図6は、メモリ部41における画像データと被写体距離情報の保存例を示している。各フレームの画像データは、被写体距離情報が関連付けられて保存されている。また、各フレームの画像データに対して、撮像情報や現像用パラメータも関連付けて保存されている。被写体距離情報は、例えばフレーム画像上に設定した複数の座標の位置における被写体までの距離を識別可能とする情報である。
【0050】
図7の(A)は撮像画像、図7の(B)は図7の(A)に示す撮像画像に対する被写体距離情報を例示している。被写体距離情報は、撮像画像上に設定した複数の座標の位置における被写体までの距離に応じた値を示しており、被写体までの距離が短い場合には小さい値、被写体までの距離が長い場合には大きな値とされている。例えば図7では、座標の位置が撮像画像における手前の地面の位置である場合「10」、座標の位置が撮像画像における空の位置である場合「99」としている。
【0051】
図6に示す撮像情報は、撮影日時、露出制御値、ズーム倍率などのカメラ設定値、レンズ情報などの様々な情報である。また、現像用パラメータは、RAWデータを現像するためのホワイトバランス値やγ値等である。
【0052】
図5に戻り、ステップST2で撮像装置10は、撮像終了であるか判別する。撮像装置10は、撮像動作を継続する場合にはステップST1に戻り、撮像動作を終了する場合にはステップST3に進み、撮像動作を継続する場合にはステップST1に戻る。撮像装置10は、撮像終了操作が行われるまで撮像動作を継続して、撮像終了操作が行われた場合に撮像動作を終了する。また、撮像装置10は、例えば所定フレーム数分の撮像画像を生成した場合や、パノラマ画像の生成のために行われた撮像装置10のスイング動作または平行移動動作が終了した場合に撮像動作の終了としてもよい。
【0053】
ステップST3で撮像装置10は、合成処理を行う。撮像装置10は、メモリ部41に保存されている複数枚の撮像画像から画像を切り出して繋ぎ合わせることで、広画角の合成画像を生成してステップST4に進む。また、撮像装置10は、被写体距離情報に基づき、高品質の合成画像を生成できるように、画像の合成を制御する。
【0054】
ステップST4で撮像装置10は、合成画像保存処理を行う。撮像装置10は、生成した合成画像の画像データを、メモリ部41や記録媒体43に記録して、合成画像を保存する。例えば、図8に示すように、合成画像の画像データに対して、合成画像における被写体距離情報や、撮像情報、現像用パラメータ、機種情報等を関連付けて保存する。
【0055】
図9は、合成処理を示すフローチャートである。ステップST11で撮像装置10の合成処理部29は、画像データと被写体距離情報の取得を行う。合成処理部29は、メモリ部41に保存されている画像データと被写体距離情報から合成する画像データと、この画像データに関係付けられている被写体距離情報を取得してステップST12に進む。
【0056】
ステップST12で合成処理部29は、移動ベクトルの検出を行う。合成処理部29は、連続する画像の被写体距離情報に基づいて画像間の移動ベクトルを検出する。例えば、時刻の早い撮像画像における撮像装置移動方向の端部側領域の被写体距離情報と、時刻の遅い撮像画像の被写体距離情報との相関検出を行い、相関が最も高くなる位置を求めることで移動ベクトルの検出を行う。また、被写体距離情報に基づいて画像間の移動ベクトルを検出する場合、被写体距離情報の数が少ないと、高い精度で移動ベクトルを検出することができない。したがって、合成処理部29は、被写体距離情報に基づいて画像間の移動ベクトルの第1の検出を行い、第1の検出結果に基づき探索範囲を設定して、探索範囲の画像データを用いて移動ベクトルの第2の検出を行うようにしてもよい。すなわち、被写体距離情報に基づいて移動ベクトルの粗検出を行い、粗検出結果に基づき探索範囲を設定して、探索範囲の画像データの詳細検出を行う。このように、移動ベクトルの検出を行えば、画像データのみを用いる場合に比べて、移動ベクトルの検出が容易となる。また、被写体距離情報のみを用いる場合に比べて、移動ベクトルの検出精度を高めることができる。
【0057】
ステップST13で合成処理部29は、拡大縮小処理を行う。合成処理部29は、被写体距離情報に基づいて撮像画像間の重複領域を推定して、推定した重複領域における被写体距離情報の差分に応じて、画像の拡大または縮小を行う。例えば被写体距離情報が小さい被写体は近接していることから画像サイズが大きく、被写体距離情報が大きい被写体は離れていることから画像サイズが小さい。すなわち同一被写体で被写体距離情報が異なると、画像サイズの相違が生じていると想定される。したがって、合成処理部29は、拡大縮小処理を行うことにより、連続する画像において同一被写体の画像サイズを一致させてステップST14に進む。なお、被写体距離情報と画像サイズは、撮像レンズ部11のズーム倍率等によって相違する。したがって、被写体距離情報の差分に応じて、画像の拡大または縮小を行う場合は、撮像情報に含まれているカメラ設定値やレンズ情報に基づき拡大倍率や縮小倍率を決定すればよい。
【0058】
ステップST14で合成処理部29は、被写体領域を決定する。合成処理部29は、被写体距離情報に基づき撮像画像における近接被写体の領域を決定する。例えば、近接している被写体では被写体距離情報の値が小さく、離れている被写体では被写体距離情報の値が大きくなるとする。この場合、合成処理部29は、被写体距離情報の値が予め設定されている閾値よりも小さい領域を近接被写体の領域としてステップST15に進む。また、撮像画像において、近接した被写体と離れた被写体との境界では、被写体距離情報の差分が大きくなる。したがって、周辺の被写体距離情報との差分を利用して、近接被写体の領域を判別してもよい。さらに、被写体距離情報だけでなく画像処理による被写体検出結果を用いて所望の近接被写体を検出してもよい。例えば、被写体距離情報から近接被写体の領域を検出して、検出された近接被写体の領域の画像を用いて顔認識を行うことで、近接する人物をより確実に検出することができる。なお、人物が後ろを向いている場合には顔を認識することができないが、被写体距離情報によって近接被写体であるかを判別することができる。
【0059】
ステップST15で合成処理部29は、近接被写体が含まれているか判別する。合成処理部29は、近接被写体が含まれていると判別した場合にはステップST16に進み、近接被写体が含まれていないと判別した場合にはステップST17に進む。
【0060】
ステップST16で合成処理部29は、近接被写体領域を分割しないように画像の切り出しを行う。合成処理部29は、ステップST14で検出した近接被写体領域が画像の切り出しで分割されることがなく、画像を合成したとき繋ぎ目の画像が連続するように切り出し位置や切り出し幅(合成画像の長手方向に対応するサイズ)を決定する。なお、切り出し位置や切り出し幅の決定において、検出されている移動ベクトルを用いれば、画像を合成したとき繋ぎ目の画像が連続するように切り出し位置や切り出し幅を容易に決定できる。このようにして、合成処理部29は、撮像画像から合成処理に用いる画像を切り出してステップST18に進む。また、合成処理部29は、被写体距離情報に基づき撮像画像間の近接被写体の領域の重複を判別して、領域が重複する場合には、近接被写体の領域がより中央に位置する撮像画像から画像の切り出しを行う。すなわち、画像歪みの影響の少ない近接被写体の領域の画像の切り出しを行う。近接被写体の領域の重複は、近接被写体の領域に対応する被写体距離情報の相関を検出して、検出結果に基づき判別する。例えば、近接被写体の領域が一致すると、近接被写体の領域に対応する被写体距離情報の相関が高くなる。したがって、被写体距離情報の相関に基づき近接被写体の領域の重複を判別できる。なお、相関検出は後述の移動ベクトルの検出と同様に行えばよい。
【0061】
ステップST17で合成処理部29は、中央部分の画像の切り出しを行う。合成処理部29は、撮像レンズ部11等によって生じる歪みの少ない中央部分から合成処理に用いる画像を切り出してステップST18に進む。また、合成処理部29は、画像を合成したとき繋ぎ目の画像が連続するように切り出し位置や切り出し幅を決定する。
【0062】
ステップST18で合成処理部29は、画像の合成を行う。合成処理部29は、ステップST16やステップST17で切り出した画像を、ステップST12で検出した移動ベクトルに基づき位置を調整して合成することで、繋ぎ目部分の画像が連続している合成画像を生成してステップST19に進む。
【0063】
ステップST19で合成処理部29は、被写体距離情報を合成画像に関連付ける。合成処理部29は、画像の拡大または縮小に応じて補正されている被写体距離情報を合成画像に関連付けてステップST20に進む。また、画像合成では、移動ベクトルに基づき画像の切り出しや合成が行われるため、合成の画像における測距点の間隔が繋ぎ目で短くなってしまう場合が想定される。したがって、間隔が一様とされた測距点に対応する被写体距離情報を線形補間演算等によって算出して、合成画像に関連付けてもよい。なお、ステップST19の処理は、ステップST20で合成処理が終了したと判断された後に行うようにしてもよい。また、ステップST19の処理を行うことなく、合成画像の生成のみを行うようにしてもよい。
【0064】
ステップST20で合成処理部29は、最後の画像の合成が終了したか判別する。合成処理部29は、上述の処理に用いられていない画像が残っている場合にはステップST11に戻り、全ての画像を用いて上述の処理が終了している場合には合成処理を終了する。
【0065】
図10は、合成画像の生成処理を例示している。図10の(A)は複数枚の撮像画像P1〜P5、図10の(B)は合成画像を示している。
【0066】
合成処理部29は、撮像画像の画像データと被写体距離情報を取得して、被写体領域検出処理を行う。例えば、被写体領域検出処理によって、撮像画像P1では被写体OB1,OB2の領域、撮像画像P2では被写体OB2,OB3の領域、撮像画像P3では被写体OB3の領域が近接被写体の領域と判別されたとする。
【0067】
合成処理部29は、移動ベクトルの検出と拡大縮小処理を行う。なお、移動ベクトルの検出と拡大縮小処理については、図11を用いて後述する。
【0068】
合成処理部29は、近接被写体が含まれている場合、近接被写体領域が画像の切り出しで分割されることがなく、画像を合成したとき繋ぎ目に近接被写体領域の画像が存在しないように切り出し位置や切り出し幅を決定して、合成処理に用いる画像を切り出す。また、合成処理部29は、被写体距離情報に基づき撮像画像間の近接被写体の領域の重複を判別して、近接被写体の領域が重複する場合には、近接被写体の領域がより中央に位置する画像の切り出しを行う。ここで、撮像画像P1では近接被写体として被写体OB1,OB2、撮像画像P2では近接被写体として被写体OB2,OB3、撮像画像P3では近接被写体として被写体OB3が検出されているとする。また、撮像画像P1と撮像画像P2では被写体OB2が重複しており、撮像画像P2と撮像画像P3では被写体OB3が重複しているとする。さらに、被写体OB2が中央に位置する画像は撮像画像P2であり、被写体OB3が中央に位置する画像は撮像画像P3とする。この場合、合成処理部29は、重複する近接被写体の領域が、画像を繋ぎ合わせる方向において、より中央に位置する撮像画像から、近接被写体の領域の画像の切り出しを行う。すなわち、撮像画像P1に含まれる被写体OB2の画像は、撮像画像P2以降の画像から切り出すようにして、撮像画像P1の被写体OB1の領域が分割されないように切り出し領域AR1を設定して画像の切り出しを行う。また、合成処理部29は、撮像画像P2に含まれる被写体OB3の画像は撮像画像P3以降の画像から切り出すようにして、撮像画像P2の被写体OB2の領域が分割されないように切り出し領域AR2を設定して画像の切り出しを行う。
【0069】
合成処理部29は、画像合成を行い切り出した領域AR1,AR2の画像を繋ぎ合わせることで、合成画像を生成する。
【0070】
また、撮像画像P3と撮像画像P4では被写体OB3が重複しており、被写体OB3が画像を繋ぎ合わせる方向において、より中央に位置する画像は撮像画像P3である。したがって、合成処理部29は、撮像画像P3に含まれる被写体OB3の領域が分割されないように切り出し領域AR3を設定して画像の切り出しを行う。また、合成処理部29は、画像合成を行い切り出した領域AR3の画像を合成画像に繋ぎ合わせることで、広画角の合成画像を生成する。
【0071】
以下同様な処理を時間順の最後の撮像画像まで繰り返し行うことで、図10の(B)に示すように、広画角の合成画像PGを生成できる。なお、図10では、繋ぎ目部分で一方の画像から他方の画像に切り替わるように画像を切り出しているが、繋ぎ目部分でお互いの画像が重複するように切り出してもよい。
【0072】
図11は、移動ベクトルと拡大縮小処理を例示した図である。図11の(A)は移動ベクトルの算出と拡大縮小処理に用いる連続する2つの撮像画像、例えば撮像画像P1と撮像画像P2を示している。図11の(B)は、撮像画像P1と撮像画像P2の被写体距離情報を示している。
【0073】
合成処理部29は、例えば撮像画像P1と撮像画像P2の移動ベクトルを検出する場合、時刻の早い撮像画像P1における撮像装置移動方向の端部側領域DLaの被写体距離情報と、時刻の遅い撮像画像P2の被写体距離情報との相関を検出して、相関が最も高くなる位置を求める。ここで、撮像画像P2の被写体距離情報における領域DLbで相関が最も高くなる場合には、端部側領域DLaと領域DLbから図11の(C)に示すように、撮像画像P1と撮像画像P2との移動ベクトルMVを容易に検出できる。また、領域DLbを基準として探索範囲を設定して、端部側領域DLa内の画像と探索範囲内の画像の相関検出を行えば、被写体距離情報が少ない場合すなわち測距が行われた点が少ない場合でも、精度よく移動ベクトルを検出できる。
【0074】
また、合成処理部29は、被写体距離情報に基づいて撮像画像間の重複領域を推定して、推定した重複領域における被写体距離情報の差分に応じて、画像の拡大または縮小を行う。合成処理部29は、例えば被写体距離情報の相関検出を行い、相関が高い領域を重複領域と判別する。上述のように、移動ベクトルの検出では、被写体距離情報との相関検出を行い、相関が最も高くなる位置を求めることで移動ベクトルを検出している。すなわち、移動ベクトルの検出では、撮像画像間の重複領域を検出していることから、検出された重複領域における被写体距離情報の差分に応じて、画像の拡大または縮小を行えばよい。すなわち、撮像画像P1における端部側領域DLaの被写体距離情報と、撮像画像P2における領域DLbの被写体距離情報の差分に応じて画像の拡大または縮小を行う。なお、図11では、端部側領域DLaの被写体距離情報に比べて領域DLbの被写体距離情報の値が小さい。すなわち、撮像画像P2は撮像画像P1に比べて被写体に近接して撮像が行われたと判別して、撮像画像P2を縮小させる。また、縮小倍率は、カメラ設定値やレンズ情報に基づき決定する。このように被写体距離情報に基づいて拡大縮小処理を行えば、例えば被写体から離れる方向に移動しながらスイング動作を行い、複数の撮像画像を生成して画像合成を行った場合でも、繋ぎ目を連続した画像とすることが可能となる。
【0075】
また、移動ベクトルに基づき画像の切り出しと合成を行うと、移動ベクトルが合成画像の長手方向に対して傾きを有している場合、図11の(C)に示すように、合成画像は矩形状の画像とならない場合が生じる。したがって、合成処理部29は、合成画像から矩形状にトリミングすることで、トリミング後の画像PHを合成画像として保存する。
【0076】
また、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させる。または、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。
【0077】
例えば、プログラムは記録媒体としてのハードディスクやROM(Read Only Memory)に予め記録しておくことができる。あるいは、プログラムはフレキシブルディスク、CD−ROM(Compact Disc Read Only Memory),MO(Magneto optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリカード等のリムーバブル記録媒体に、一時的または永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウェアとして提供することができる。
【0078】
また、プログラムは、リムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトからLAN(Local Area Network)やインターネット等のネットワークを介して、コンピュータに無線または有線で転送してもよい。コンピュータでは、そのようにして転送されてくるプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
【0079】
ハードウェアやソフトウェア、または両者の複合構成によって一連の処理を実行する場合、記録媒体から撮像画像の画像データと撮像画像に対応する被写体距離情報を読み出すようにしてもよく、ネットワークを介して他の機器から取得するようにしてもよい。さらに、他の機器からネットワーク等を介して画像データと被写体距離情報を取得して、撮像装置で合成画像を生成するようにしてもよい。
【0080】
このように、本技術によれば、近接被写体の画像が分割されることなく切り出されて画像合成に用いられるので、上書きする画像の選択操作や繋ぎ目に選択した画像を上書きする処理を行う必要がなく、高品質である広画角の合成画像を容易に生成できる。また、近接被写体が複数枚の撮像画像に含まれる場合や、近接被写体が含まれていない場合には、歪みの少ない部分から画像が切り出されるので、高品質の合成画像を生成できる。さらに、重複部分の被写体距離情報の差分に応じて拡大縮小処理が行われて同一被写体の画像サイズが等しくされるので、撮像時に撮像画像間で被写体までの距離が変化しても繋ぎ目部分を連続した画像とすることができる。また、被写体距離情報を用いることで移動ベクトルの検出が容易となる。
【0081】
なお、本技術は上述した技術の実施の形態に限定して解釈されるべきではない。例えば、上述の実施の形態では、矩形状に画像を切り出す場合について説明したが、近接被写体の形状に応じて画像を切り出すようにしてもよい。また、切り出した画像に対して拡大縮小処理を行うようにしても、繋ぎ目部分を連続した画像とすることができる。この技術の実施の形態は、例示という形態で本技術を開示しており、本技術の要旨を逸脱しない範囲で当業者が実施の形態の修正や代用をなし得ることは自明である。すなわち、本技術の要旨を判断するためには、特許請求の範囲を参酌すべきである。
【0082】
また、本技術は以下のような構成も取ることができる。
(1)撮像時に測距を行って生成された複数点の被写体距離情報に基づき、撮像画像における近接被写体の領域を決定する被写体領域決定部と、
前記決定した近接被写体の領域の位置に基づき前記撮像画像から画像の切り出しを行い、切り出した画像を繋ぎ合わせて合成画像を生成する合成処理部と
を備える画像合成装置。
【0083】
(2)前記合成処理部は、前記近接被写体の領域が決定されている場合には、前記近接被写体の領域を分割しないように画像の切り出しを行う前記(1)に記載の画像合成装置。
【0084】
(3)前記合成処理部は、前記近接被写体の領域が決定されていない場合には、中央部分の画像の切り出しを行う前記(1)または前記(2)に記載の画像合成装置。
【0085】
(4)前記合成処理部は、前記被写体距離情報に基づき画像間の前記近接被写体の領域の重複を判別して、前記近接被写体の領域が重複する場合には、該重複する近接被写体の領域がより中央に位置する撮像画像から、前記近接被写体の領域の画像の切り出しを行う前記(1)乃至前記(3)の何れかに記載の画像合成装置。
【0086】
(5)前記合成処理部は、前記重複する近接被写体の領域が、画像を繋ぎ合わせる方向において、より中央に位置する撮像画像から、前記近接被写体の領域の画像の切り出しを行う前記(1)乃至前記(4)の何れかに記載の画像合成装置。
【0087】
(6)前記合成処理部は、前記検出された近接被写体の領域に対応する被写体距離情報の相関を検出して、検出結果に基づき画像間における前記近接被写体の領域の重複を判別する前記(1)乃至前記(5)の何れかに記載の画像合成装置。
【0088】
(7)前記被写体距離情報に基づいて画像間の重複領域を推定して、該推定した重複領域における前記被写体距離情報の差分に応じて、画像の拡大または縮小を行う拡大縮小部をさらに備え、
前記画像合成部は、前記被写体距離情報の差分に応じて拡大または縮小された画像の繋ぎ合わせを行う前記(1)乃至前記(6)の何れかに記載の画像合成装置。
【0089】
(8)前記拡大縮小部は、前記被写体距離情報の相関を検出して、検出結果に基づき画像間の重複領域を推定する前記(7)に記載の画像合成装置。
【0090】
(9)前記被写体距離情報に基づいて、連続する2つの撮像画像間の移動ベクトルを検出する移動ベクトル検出部をさらに備え、
前記画像合成部は、前記検出した移動ベクトルに基づいて前記合成画像の生成を行う前記(1)乃至前記(8)の何れかに記載の画像合成装置。
【0091】
(10)前記移動ベクトルは、前記被写体距離情報に基づいて画像間の移動ベクトルの第1の検出を行い、第1の検出結果に基づき探索範囲を設定して、該探索範囲の画像データを用いて前記移動ベクトルの第2の検出を行う前記(9)に記載の画像合成装置。
【0092】
(11)前記被写体領域決定部は、予め設定されている閾値と前記被写体距離情報を比較して、比較結果に基づき前記近接被写体の領域を決定する前記(1)乃至前記(10)の何れかに記載の画像合成装置。
【産業上の利用可能性】
【0093】
この技術の画像合成装置と画像合成方法およびプログラムでは、撮像時に測距を行って生成された複数点の被写体距離情報に基づき、撮像画像における近接被写体の領域が決定される。また、決定した近接被写体の領域の位置に基づき撮像画像から画像の切り出しを行い、切り出した画像を繋ぎ合わせて合成画像が生成される。したがって、繋ぎ目に上書きする画像の選択操作や選択した画像を繋ぎ目に上書きする処理を行う必要がなく、また、近接被写体の領域の位置に基づき画像が切り出されて合成されるので、高品質である広画角の合成画像を容易に生成できる。このため、撮像装置や画像の編集装置等に適している。
【符号の説明】
【0094】
10・・・撮像装置、11・・・撮像レンズ部、12・・・撮像素子、12f・・・AF画素対、12f-a・・・第1AF画素、12f-b・・・第2AF画素、13・・・撮像素子駆動部、14・・・前処理部、20・・・カメラDSP部、21・・・カメラ信号処理部、22・・・メモリ制御部、23・・・レンズ制御部、24・・・解像度変換部、25・・・表示制御部、26・・・コーデック部、27・・・メディア制御部、28・・・被写体距離計測部、29・・・合成処理部、30・・・内部バス、41・・・メモリ部、42・・・表示部、43・・・記録媒体、50・・・システム制御部、51・・・操作部、121・・・R画素、122・・・G画素、123・・・B画素、291・・・移動ベクトル検出部、292・・・拡大縮小部、293・・・被写体領域決定部、294・・・合成処理部
【特許請求の範囲】
【請求項1】
撮像時に測距を行って生成された複数点の被写体距離情報に基づき、撮像画像における近接被写体の領域を決定する被写体領域決定部と、
前記決定した近接被写体の領域の位置に基づき前記撮像画像から画像の切り出しを行い、切り出した画像を繋ぎ合わせて合成画像を生成する合成処理部と
を備える画像合成装置。
【請求項2】
前記合成処理部は、前記近接被写体の領域が決定されている場合には、前記近接被写体の領域を分割しないように画像の切り出しを行う請求項1記載の画像合成装置。
【請求項3】
前記合成処理部は、前記近接被写体の領域が決定されていない場合には、中央部分の画像の切り出しを行う請求項1記載の画像合成装置。
【請求項4】
前記合成処理部は、前記被写体距離情報に基づき画像間の前記近接被写体の領域の重複を判別して、前記近接被写体の領域が重複する場合には、該重複する近接被写体の領域がより中央に位置する撮像画像から、前記近接被写体の領域の画像の切り出しを行う請求項1記載の画像合成装置。
【請求項5】
前記合成処理部は、前記重複する近接被写体の領域が、画像を繋ぎ合わせる方向において、より中央に位置する撮像画像から、前記近接被写体の領域の画像の切り出しを行う請求項4記載の画像合成装置。
【請求項6】
前記合成処理部は、前記決定された近接被写体の領域に対応する被写体距離情報の相関を検出して、検出結果に基づき画像間における前記近接被写体の領域の重複を判別する請求項4記載の画像合成装置。
【請求項7】
前記被写体距離情報に基づいて画像間の重複領域を推定して、該推定した重複領域における前記被写体距離情報の差分に応じて、画像の拡大または縮小を行う拡大縮小部をさらに備え、
前記画像合成部は、前記被写体距離情報の差分に応じて拡大または縮小された画像を用いて前記合成画像の生成を行う請求項1記載の画像合成装置。
【請求項8】
前記拡大縮小部は、前記被写体距離情報の相関を検出して、検出結果に基づき画像間の重複領域を推定する請求項7記載の画像合成装置。
【請求項9】
前記被写体距離情報に基づいて、連続する2つの撮像画像間の移動ベクトルを検出する移動ベクトル検出部をさらに備え、
前記画像合成部は、前記検出した移動ベクトルに基づいて前記合成画像の生成を行う請求項1記載の画像合成装置。
【請求項10】
前記移動ベクトルは、前記被写体距離情報に基づいて画像間の移動ベクトルの第1の検出を行い、第1の検出結果に基づき探索範囲を設定して、該探索範囲の画像データを用いて前記移動ベクトルの第2の検出を行う請求項9記載の画像合成装置。
【請求項11】
前記被写体領域決定部は、予め設定されている閾値と前記被写体距離情報を比較して、比較結果に基づき前記近接被写体の領域を決定する請求項1記載の画像合成装置。
【請求項12】
撮像時に測距を行って生成された複数点の被写体距離情報に基づき、撮像画像における近接被写体の領域を決定する工程と、
前記決定した近接被写体の領域の位置に基づき前記撮像画像から画像の切り出しを行い、切り出した画像を繋ぎ合わせて合成画像を生成する工程と
を含む画像合成方法。
【請求項13】
複数の撮像画像から広画角の合成画像を生成する画像合成をコンピュータで実行させるプログラムであって、
撮像時に測距を行って生成された複数点の被写体距離情報に基づき、撮像画像における近接被写体の領域を決定する手順と、
前記決定した近接被写体の領域の位置に基づき前記撮像画像から画像の切り出しを行い、切り出した画像を繋ぎ合わせて合成画像を生成する手順と
を前記コンピュータで実行させるプログラム。
【請求項1】
撮像時に測距を行って生成された複数点の被写体距離情報に基づき、撮像画像における近接被写体の領域を決定する被写体領域決定部と、
前記決定した近接被写体の領域の位置に基づき前記撮像画像から画像の切り出しを行い、切り出した画像を繋ぎ合わせて合成画像を生成する合成処理部と
を備える画像合成装置。
【請求項2】
前記合成処理部は、前記近接被写体の領域が決定されている場合には、前記近接被写体の領域を分割しないように画像の切り出しを行う請求項1記載の画像合成装置。
【請求項3】
前記合成処理部は、前記近接被写体の領域が決定されていない場合には、中央部分の画像の切り出しを行う請求項1記載の画像合成装置。
【請求項4】
前記合成処理部は、前記被写体距離情報に基づき画像間の前記近接被写体の領域の重複を判別して、前記近接被写体の領域が重複する場合には、該重複する近接被写体の領域がより中央に位置する撮像画像から、前記近接被写体の領域の画像の切り出しを行う請求項1記載の画像合成装置。
【請求項5】
前記合成処理部は、前記重複する近接被写体の領域が、画像を繋ぎ合わせる方向において、より中央に位置する撮像画像から、前記近接被写体の領域の画像の切り出しを行う請求項4記載の画像合成装置。
【請求項6】
前記合成処理部は、前記決定された近接被写体の領域に対応する被写体距離情報の相関を検出して、検出結果に基づき画像間における前記近接被写体の領域の重複を判別する請求項4記載の画像合成装置。
【請求項7】
前記被写体距離情報に基づいて画像間の重複領域を推定して、該推定した重複領域における前記被写体距離情報の差分に応じて、画像の拡大または縮小を行う拡大縮小部をさらに備え、
前記画像合成部は、前記被写体距離情報の差分に応じて拡大または縮小された画像を用いて前記合成画像の生成を行う請求項1記載の画像合成装置。
【請求項8】
前記拡大縮小部は、前記被写体距離情報の相関を検出して、検出結果に基づき画像間の重複領域を推定する請求項7記載の画像合成装置。
【請求項9】
前記被写体距離情報に基づいて、連続する2つの撮像画像間の移動ベクトルを検出する移動ベクトル検出部をさらに備え、
前記画像合成部は、前記検出した移動ベクトルに基づいて前記合成画像の生成を行う請求項1記載の画像合成装置。
【請求項10】
前記移動ベクトルは、前記被写体距離情報に基づいて画像間の移動ベクトルの第1の検出を行い、第1の検出結果に基づき探索範囲を設定して、該探索範囲の画像データを用いて前記移動ベクトルの第2の検出を行う請求項9記載の画像合成装置。
【請求項11】
前記被写体領域決定部は、予め設定されている閾値と前記被写体距離情報を比較して、比較結果に基づき前記近接被写体の領域を決定する請求項1記載の画像合成装置。
【請求項12】
撮像時に測距を行って生成された複数点の被写体距離情報に基づき、撮像画像における近接被写体の領域を決定する工程と、
前記決定した近接被写体の領域の位置に基づき前記撮像画像から画像の切り出しを行い、切り出した画像を繋ぎ合わせて合成画像を生成する工程と
を含む画像合成方法。
【請求項13】
複数の撮像画像から広画角の合成画像を生成する画像合成をコンピュータで実行させるプログラムであって、
撮像時に測距を行って生成された複数点の被写体距離情報に基づき、撮像画像における近接被写体の領域を決定する手順と、
前記決定した近接被写体の領域の位置に基づき前記撮像画像から画像の切り出しを行い、切り出した画像を繋ぎ合わせて合成画像を生成する手順と
を前記コンピュータで実行させるプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2012−191486(P2012−191486A)
【公開日】平成24年10月4日(2012.10.4)
【国際特許分類】
【出願番号】特願2011−54033(P2011−54033)
【出願日】平成23年3月11日(2011.3.11)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】
【公開日】平成24年10月4日(2012.10.4)
【国際特許分類】
【出願日】平成23年3月11日(2011.3.11)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】
[ Back to top ]