(57)【要約】【課題】  重なり部分のない複数の静止画像から、静止画像を繋げ合わせたパノラマ画像を生成する画像処理装置、撮像装置、画像処理方法、画像処理プログラムおよび画像処理プログラムを記録した記録媒体を提供すること。【解決手段】  画像処理装置１は、画像ファイルを複数選択し、静止画像を取得する画像選択部３０と、静止画像とは別のサンプル画像から被写体の写った領域を抽出して、オブジェクト画像を取得する画像抽出部３１と、静止画像Ｆを配置する画像配置部３２と、配置した静止画像の間の領域に対する処理を判断する予測部３３と、静止画像およびオブジェクト画像を合成して、パノラマ画像を生成する画像生成部３４と、を備える。画像配置部３２は、配置した静止画像の間に位置する未表示領域に対してオブジェクト画像を配置することにより、静止画像の表示領域が繋がって見えるパノラマ画像を生成する。【選択図】      図１
2006033353.tif 000002
【特許請求の範囲】
【請求項１】
撮影装置により撮影した複数の静止画像から、前記静止画像より大きいパノラマ画像を生成する画像処理装置であって、
前記静止画像を記録した画像ファイルを複数選択する画像選択部と、
選択した複数の前記静止画像を所定の位置関係で座標平面上に配置し、
配置された前記静止画像間においていずれの前記静止画像も配置されていない未表示領域に、任意の画像であるオブジェクト画像を配置する画像配置部と、
配置した前記静止画像および前記オブジェクト画像を繋ぎ合わせて前記パノラマ画像を生成する画像生成部と、を備えたことを特徴とする画像処理装置。
【請求項２】
請求項１に記載の画像処理装置において、
前記画像選択部は、前記撮影装置の撮影状態を表す撮影情報を前記静止画像と併せて記録した複数の画像ファイルを選択し、
前記画像配置部は、選択した複数の前記画像ファイルにそれぞれ記録された前記静止画像を、前記撮影情報に基づいて配置することを特徴とする画像処理装置。
【請求項３】
請求項１または２に記載の画像処理装置において、
前記未表示領域に隣接する前記静止画像に基づいて、前記未表示領域の画素情報を予測可能か否かを判断し、前記未表示領域を予測可能な予測可能領域と予測不可能な予測不可能領域とに区分けする予測部、を更に備えたことを特徴とする画像処理装置。
【請求項４】
請求項３に記載の画像処理装置において、
前記予測部は、前記未表示領域に隣接し、対向して位置する２つの前記静止画像について、各静止画像の対向する辺の近傍に位置する画素の画素情報を用いて、前記画素情報の差の絶対値が所定の閾値の値より小さいときに予測可能と判断し、所定の閾値より大きい場合に予測不可能と判断することを特徴とする画像処理装置。
【請求項５】
請求項３または４に記載の画像処理装置において、
前記画像配置部は、前記予測不可能領域に任意の前記オブジェクト画像を配置し、
前記画像生成部は前記オブジェクト画像と前記静止画像とを繋ぎ合わせて前記パノラマ画像を生成することを特徴とする画像処理装置。
【請求項６】
請求項３ないし５のいずれかの一項に記載の画像処理装置において、
前記画像生成部は、前記予測可能領域に対して、前記未表示領域に隣接し、対向して位置する２つの前記静止画像の画素情報から、前記未表示領域の画素情報を推定して取得することを特徴とする画像処理装置。
【請求項７】
請求項３ないし６のいずれか一項に記載の画像処理装置において、
前記予測部は、前記２つの静止画像の対応する画素を結ぶ距離が所定の値より小さいときに、前記未表示領域に対して前記オブジェクト画像を配置する、または前記未表示領域の画素情報を推定することを特徴とする画像処理装置。
【請求項８】
請求項１ないし７のいずれか一項に記載の画像処理装置において、
前記撮影情報は、撮影方向の方位角、撮影方向の仰角、撮影方向に対する撮影装置の回転を示す回転角および撮影装置の画角のうち少なくとも一つからなることを特徴とする画像処理装置。
【請求項９】
請求項１ないし８のいずれか一項に記載の画像処理装置において、
多数の前記オブジェクト画像を記憶しているデータベース部を更に備え、
前記画像配置部は、前記データベース部に記憶されている多数の前記オブジェクト画像から任意の前記オブジェクト画像を選択し、選択した前記オブジェクト画像を前記未表示領域上に配置することを特徴とする画像処理装置。
【請求項１０】
請求項１ないし９のいずれか一項に記載の画像処理装置において、
前記オブジェクト画像から被写体の写っている領域を抽出して、抽出した領域を前記オブジェクト画像として取得する画像抽出部、を更に備えたことを特徴とする画像処理装置。
【請求項１１】
請求項１ないし１０のいずれか一項に記載の画像処理装置において、
前記画像ファイルは、前記静止画像の撮影位置を表す位置情報を有し、
前記画像選択部は、複数の前記画像ファイルから前記位置情報に基づいて同じ位置で撮影された画像ファイルを複数選択することを特徴とする画像処理装置。
【請求項１２】
請求項１ないし１１のいずれか一項に記載の画像処理装置において、
前記位置情報は、撮影時の緯度および経度からなることを特徴とする画像処理装置。
【請求項１３】
請求項１ないし１２のいずれか一項に記載の画像処理装置において、
前記画像配置部は、前記未表示領域の大きさに合わせて、前記オブジェクト画像を変換して配置することを特徴とする画像処理装置。
【請求項１４】
請求項１ないし１３のいずれか一項に記載の画像処理装置を備えた撮影装置。
【請求項１５】
撮影装置により撮影した複数の静止画像から、前記静止画像より大きいパノラマ画像を生成する画像処理方法であって、
前記静止画像を記録した画像ファイルを複数選択する画像選択ステップと、
選択した複数の前記静止画像を所定の位置関係で座標平面上に配置し、
配置された前記静止画像間においていずれの前記静止画像も配置されていない未表示領域に、任意の画像であるオブジェクト画像を配置する画像配置ステップと、
配置した前記静止画像および前記オブジェクト画像を繋ぎ合わせて前記パノラマ画像を生成する画像生成ステップと、を備えたことを特徴とする画像処理装置。
【請求項１６】
撮影装置により撮影した複数の静止画像から、前記静止画像より大きいパノラマ画像を生成する画像処理プログラムであって、
コンピュータを、
前記静止画像を記録した画像ファイルを複数選択する画像選択部、
選択した複数の前記静止画像を所定の位置関係で座標平面上に配置し、
配置された前記静止画像間においていずれの前記静止画像も配置されていない未表示領域に、任意の画像であるオブジェクト画像を配置する画像配置部、
配置した前記静止画像および前記オブジェクト画像を繋ぎ合わせて前記パノラマ画像を生成する画像生成部、として機能させることを特徴とする画像処理装置。
【請求項１７】
請求項１６に記載の画像生成プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の静止画像を繋ぎ合わせて、パノラマ画像を生成する画像処理装置、撮像装置、画像処理方法、画像処理プログラムおよび画像処理プログラムを記録した記録媒体に関する。
【背景技術】
【０００２】
近年、銀塩カメラに替わってデジタルスチルカメラが広く普及し、静止画像の撮像装置として日常の様々な撮像シーンにおいて使用されている。デジタルスチルカメラは所定の画角をもち、画角内の撮影範囲内にある被写体を写した静止画像を得ることができる。しかし、より大きな被写体を収めることができるように、より広角な画角をもち広域を写した静止画像を撮影することが求められる場合がある。このような場合、被写体の異なる部分を写すようにして所定の画角をもつ画像を複数撮影し、得られた画像を複数繋ぎ合わせることにより、より広角に被写体を写した１枚のパノラマ画像が作られていた。しかし、静止画像を繋ぎ合わせたとしても、違和感のない自然なパノラマ画像を得るためには、画像間の相対的位置関係、撮影倍率の違いおよび色の違いなどの各種パラメータを調整する必要がある。これらの作業を手動で行うには、ユーザーに多大な負荷を強いることになると共に、高度な技術が要求されていた。こうしたことから、パノラマ画像を生成するために必要な作業をコンピュータが自動的に行うようにして、誰でも容易にパノラマ画像を得ることのできる技術が求められている。
【０００３】
特許文献１には、複数撮影した静止画像の重なり部分について、重なり部分がもつ特徴点を合わせるように静止画像を重ね合わせて、静止画像間の相対的な位置関係を定めることによりパノラマ画像を得ることのできる技術が開示されている。しかし、この技術によると、静止画像間の表示領域に重なり合う領域がないときには、共通した特徴点が得られないので、パノラマ画像を生成することができない。そこで、特許文献１では、静止画像を撮影しながら、複数の静止画像の相対位置を表示部に表示し、重なり合う領域があるようにユーザーが確認しながら撮影を行うことによって、確実にパノラマ画像を得ることができるようにしている。
【０００４】
【特許文献１】特開平９−３２２０６０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、この方法によっても、結局、静止画像間に重なり合う領域がないときには、パノラマ画像を得ることはできない。また、同じ撮影位置から複数の静止画像の撮影を行っていても、静止画像の重なりを意識せずに撮影された静止画像を、後から繋ぎ合わせてパノラマ画像を得ようとしても、パノラマ画像を得ることができない。
【０００６】
本発明は、このような課題に解決する為になされたものであり、画像の重なりを意識することなく撮影され、重なり部分のない静止画像であっても、静止画像を繋ぎ合わせたパノラマ画像を生成することのできる画像処理装置、撮像装置、画像処理方法、画像処理プログラムおよびその画像処理プログラムを記録した記録媒体を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明の画像処理装置では、撮影装置により撮影した複数の静止画像から、静止画像より大きいパノラマ画像を生成する画像処理装置であって、静止画像を記録した画像ファイルを複数選択する画像選択部と、選択した複数の静止画像を所定の位置関係で座標平面上に配置し、配置された静止画像間においていずれの静止画像も配置されていない未表示領域に、任意の画像であるオブジェクト画像を配置する画像配置部と、配置した静止画像およびオブジェクト画像を繋ぎ合わせてパノラマ画像を生成する画像生成部と、を備えたことを要旨とする。
【０００８】
この構成によれば、未表示領域には任意の画像であるオブジェクト画像を配置し、静止画像およびオブジェクト画像を繋ぎ合わせるので、静止画像間に重なり部分がなくとも、オブジェクト画像を介して個々の静止画像が繋がってみえるパノラマ画像を得ることができる。したがって、個々の静止画像が互いに繋がっておらず孤立して見えることがないので、これを見た者に自然な印象を与えるパノラマ画像を得ることができる。
【０００９】
ここで、画像選択部は、撮影装置の撮影状態を表す撮影情報を静止画像と併せて記録した複数の画像ファイルを選択し、画像配置部は、選択した複数の画像ファイルにそれぞれ記録された静止画像を、撮影情報に基づいて配置することが好ましい。
【００１０】
このようにすれば、撮影情報に基づいて複数の静止画像を配置したパノラマ画像を得ることができる。したがって、静止画像間に重なり部分がなくても、撮影時の撮影範囲の位置関係を忠実に再現するように静止画像を配置したパノラマ画像を得ることができる。したがって、パノラマ画像の作る際に、静止画像間の重なり部分の有無に影響されることがない。例えば、ユーザーが静止画像の撮影時に画像の重なりを意識することなく自由に撮影したときであっても、確実にパノラマ画像を得ることができる。なお、配置した静止画像間に重なり部分があるときは、周知の画像処理手法により重なり部分が目立たないように合成する処理を行うと良い。
【００１１】
ここで、未表示領域に隣接する静止画像に基づいて、未表示領域の画素情報を予測可能か否かを判断し、未表示領域を予測可能な予測可能領域と予測不可能な予測不可能領域とに区分けする予測部、を更に備えることが好ましい。
【００１２】
このようにすれば、未表示領域の画素情報を予測できるか否かを判断し、判断結果により、オブジェクト画像を配置する必要があるか否かを判断することができる。すなわち、画素情報が予測できるときは、周知の推定手法により画素情報を取得することができるので、オブジェクト画像を配置する必要がなくなる。したがって、未表示領域に対して適切な処理を使い分けすることができる。
【００１３】
ここで、予測部は、未表示領域に隣接し、対向して位置する２つの静止画像について、各静止画像の対向する辺の近傍に位置する画素の画素情報を用いて、画素情報の差の絶対値が所定の閾値の値より小さいときに予測可能と判断し、所定の閾値より大きい場合に予測不可能と判断することが好ましい。
【００１４】
このようにすれば、２つの静止画像の画素情報から、未表示領域の画素情報を予測できるか否かを容易に判断することができる。したがって、オブジェクト画像を配置する必要があるか否かを容易に判断することができる。
【００１５】
ここで、画像配置部は、予測不可能領域に任意のオブジェクト画像を配置し、画像生成部はオブジェクト画像と静止画像とを繋ぎ合わせてパノラマ画像を生成することが好ましい。
【００１６】
このようにすれば、予測部が予測不可能と判断した場合には、静止画像とは別に、任意のオブジェクト画像を配置してパノラマ画像を生成することができる。したがって、予測不可能領域であっても、画像に繋がりのある合成画像を得ることができる。
【００１７】
ここで、画像生成部は、予測可能領域に対して、未表示領域に隣接し、対向して位置する２つの静止画像の画素情報から、未表示領域の画素情報を推定して取得することが好ましい。
【００１８】
このようにすれば、予測部が予測可能と判断した場合には、未表示領域に対向して位置する２つの静止画像の画素情報から、未表示領域の画素情報を推定して取得することができる。したがって、適切な画素情報を有した自然なパノラマ画像を得ることができる。なお、未表示領域の画素情報を推定する手法としては、隣接する２つの静止画像の画素情報から内挿して画素情報を取得することが望ましい。
【００１９】
ここで、予測部は、２つの静止画像の対応する画素を結ぶ距離が所定の値より小さいときに、未表示領域に対してオブジェクト画像を配置する、または未表示領域の画素情報を推定することが好ましい。
【００２０】
このようにすれば、２つの静止画像の対応する画素を結ぶ距離が所定の値より小さいときに、未表示領域に対してオブジェクト画像を配置、または未表示領域に画素情報の推定を行う。すなわち、未表示領域が所定の値より大きいときには、オブジェクト画像の配置および画素情報の推定を行わない。したがって、静止画像間が所定の値より大きく離れている場合に、無理に静止画像を繋げる処理を行うことによって、不自然なパノラマ画像が生成されることを防ぐことができる。
【００２１】
ここで、撮影情報は、撮影方向の方位角、撮影方向の仰角、撮影方向に対する撮影装置の回転を示す回転角および撮影装置の画角のうち少なくとも一つからなることが好ましい。
【００２２】
このようにすれば、画像配置部は、水平方向の撮影方向を示す方位角、鉛直方向の撮影方向を示す仰角、鉛直軸に対する撮影装置の傾きを示す回転角および撮影装置の画角に基づいて、静止画像を配置することができる。したがって、複数の静止画像について撮影時の互いの位置関係を忠実に再現して並べたパノラマ画像を容易に得ることができる。
【００２３】
なお、複数の静止画像について各画角が異なっているときには、画角に基づいて各静止画像を拡大または縮小する処理を行うことが望ましい。このようにすれば、静止画像間の撮影倍率の違いを補正するので、被写体が等倍率で写っている自然なパノラマ画像を得ることができる。
【００２４】
ここで、多数のオブジェクト画像を記憶しているデータベース部を更に備え、画像配置部は、データベース部に記憶されている多数のオブジェクト画像から任意のオブジェクト画像を選択し、選択したオブジェクト画像を未表示領域上に配置することが好ましい。
【００２５】
このようにすれば、データベース部のもつ多数のオブジェクト画像の中からオブジェクト画像を取得するので、未表示領域に配置するオブジェクト画像を選択して容易に取得することができる。したがって、オブジェクト画像を介して静止画像の繋がったパノラマ画像を容易に得ることができる。
【００２６】
ここで、オブジェクト画像から被写体の写っている領域を抽出して、抽出した領域をオブジェクト画像として取得する画像抽出部、を更に備えることが好ましい。
【００２７】
このようにすれば、被写体の写っている領域のみを抽出しオブジェクト画像とするので、被写体以外の背景部分が写ることのないオブジェクト画像を得ることができる。したがって、オブジェクト画像を未表示領域に配置しても、不必要な背景部分が写ることがないので、自然に繋がっているパノラマ画像を生成することができる。
【００２８】
ここで、画像ファイルは、静止画像の撮影位置を表す位置情報を有し、画像選択部は、複数の画像ファイルから位置情報に基づいて同じ位置で撮影された画像ファイルを複数選択することが好ましい。
【００２９】
このようにすれば、同じ位置から撮影された静止画像を選択して、選択した静止画像のみを用いて処理を行うことができる。すなわち、撮影場所の違いにより静止画像が不自然に繋ぎ合わされることがない。したがって、同じ位置から撮影された静止画像から自然なパノラマ画像を容易に得ることができる。
【００３０】
ここで、位置情報は、撮影時の緯度および経度からなることが好ましい。
【００３１】
このようにすれば、緯度および経度からなる位置情報に基づいて、確実に同じ位置から撮影した静止画像を合成することができる。したがって、確実に同じ位置から撮影されている画像ファイルからパノラマ画像を生成するので、自然なパノラマ画像が得ることができる。
【００３２】
ここで、画像配置部は、未表示領域の大きさに合わせて、オブジェクト画像を変換して配置することが好ましい。
【００３３】
このようにすれば、未表示領域の大きさに合わせて変換したオブジェクト画像を配置するので、未表示領域に対してオブジェクト画像を適切に配置することができる。
【００３４】
ここで、本発明は画像処理装置を備えた撮影装置とすることもできる。
【００３５】
このようにすれば、撮影した静止画像から、撮影装置がパノラマ画像を生成することができる。したがって、静止画像の撮影からパノラマ画像の生成を一貫して撮影装置で行うことができるので、パノラマ画像を容易に得ることができる。
【００３６】
本発明の画像処理方法は、撮影装置により撮影した複数の静止画像から、静止画像より大きいパノラマ画像を生成する画像処理方法であって、静止画像を記録した画像ファイルを複数選択する画像選択ステップと、選択した複数の静止画像を所定の位置関係で座標平面上に配置し、配置された静止画像間においていずれの静止画像も配置されていない未表示領域に、任意の画像であるオブジェクト画像を配置する画像配置ステップと、配置した静止画像およびオブジェクト画像を繋ぎ合わせてパノラマ画像を生成する画像生成ステップと、を備えたことを要旨とする。
【００３７】
また、本発明は、画像処理プログラムまたはその画像処理プログラムを記録したコンピュータ読み取り可能な記録媒体としてもよい。すなわち、撮影装置により撮影した複数の静止画像から、静止画像より大きいパノラマ画像を生成する画像処理プログラムであって、コンピュータを、静止画像を記録した画像ファイルを複数選択する画像選択部、選択した複数の静止画像を所定の位置関係で座標平面上に配置し、配置された静止画像間においていずれの静止画像も配置されていない未表示領域に、任意の画像であるオブジェクト画像を配置する画像配置部、配置した静止画像およびオブジェクト画像を繋ぎ合わせてパノラマ画像を生成する画像生成部、として機能させることを要旨とする。プログラムの記録媒体としては、フレキシブルディスクなどの磁気ディスク、ＣＤ−Ｒなどの光ディスク、ＭＯなどの光磁気ディスクなどのコンピュータが読み取り可能な種々の記録媒体を利用することができる。
【発明を実施するための最良の形態】
【００３８】
以下、本発明の第１の実施形態について図面を用いて説明する。
【００３９】
（第１の実施形態）
図１は、本実施形態における画像処理装置１の構成を示している。この画像処理装置１は、汎用のコンピュータ２を中心に構成されており、コンピュータ２に情報を入力する機器としてキーボード３、マウス４およびＣＤ−Ｒ／ＲＷドライブ５、情報を出力する装置として液晶ディスプレイ６を備えている。また、画像処理装置１の外部には液晶表示部７を有するデジタルスチルカメラ８が備えられており、ＵＳＢ接続ケーブルを介してコンピュータ２と接続されている。そして、コンピュータ２内部に備わるＣＰＵ２４によりこれらの装置の動作を制御している。したがって、デジタルスチルカメラ８により撮像した静止画像Ｆは、ＵＳＢ接続ケーブルを通してコンピュータ２に取り込まれ、コンピュータ２内部に備わる画像処理装置１により処理された画像を得ることができる。
【００４０】
図２は、コンピュータ２およびデジタルスチルカメラ８の内部の構成を示した図である。図に示すように、デジタルスチルカメラ８は、ＧＰＳ１０と、方位センサ１１と、重力センサ１２とを備えている。ＧＰＳ１０は、デジタルスチルカメラ８の位置情報を取得する。方位センサ１１は、デジタルスチルカメラ８の撮影方向の方位角を撮影情報として取得し、重力センサ１２は、デジタルスチルカメラ８の鉛直方向に対する傾きを表す仰角、および撮影方向を軸としてデジタルスチルカメラ８本体の回転量を表す回転角を撮影情報として取得する。デジタルスチルカメラ８内部に備わるＧＰＳ１０により取得された位置情報と、方位センサ１１および重力センサ１２により取得された撮影情報は、共にＥｘｉｆ（登録商標）形式の画像ファイルに記録するようにしている。
【００４１】
コンピュータ２は、デジタルスチルカメラ８より画像ファイルを取得する入力インターフェイス部２０と、取得した画像ファイルを記憶するハードディスク２１と、情報を記憶するＲＡＭ２２と、液晶ディスプレイ６に表示させる画像を出力する出力インターフェイス部２３と、これらの各装置の動作を制御し画像処理を行うＣＰＵ２４と、を備えている。したがって、コンピュータ２は、デジタルスチルカメラ６で撮影した画像ファイルを、入力インターフェイス部２０から取得することにより撮像時のデジタルスチルカメラ８の位置情報および撮影情報を得ることができる。また、生成した画像は、出力インターフェイス部２３を介して、液晶ディスプレイ６に表示させることができる。なお、ハードディスク２１の記憶領域上には、ユーザーが任意に選択した複数のサンプル画像Ｆｓを記憶しているデータベース部２５が形成されている。
【００４２】
コンピュータ２は、所定のオペレーションシステムの管理下で、静止画像Ｆに対して画像処理を行う画像処理プログラムをコンピュータ２内部に備わるハードディスク２１から読み出し、コンピュータ２内部に備わるＲＡＭ２２に記憶させて、実行する。画像処理プログラムを実行すると、画像処理アプリケーションが起動し、コンピュータ２は、ユーザーが行うキーボード３またはマウス４から入力する命令に従って、画像処理を行う画像処理装置１として機能する。
【００４３】
なお、画像処理プログラムは、ＣＤ−ＲＯＭに記録された状態でユーザーに供給され、ＣＤ−Ｒ／ＲＷドライブ５より読み出して、コンピュータ２内部に備わるハードディスク２１に記録するようにしている。もっとも、インターネットなどのネットワーク回線を通じて、画像処理プログラムをコンピュータ２に供給するようにしてもよい。
【００４４】
この画像処理装置１は、画像ファイルを複数選択し、複数の静止画像Ｆを取得する画像選択部３０と、サンプル画像Ｆｓからオブジェクト画像Ｆｏを抽出して取得する画像抽出部３１と、静止画像Ｆを配置する画像配置部３２と、配置した静止画像Ｆ間の隙間部分の処理方法を判断する予測部３３と、配置した静止画像Ｆおよびオブジェクト画像Ｆｏを合成する画像生成部３４と、を備えている。このように、本画像処理装置１は、複数の画像ファイルから取得した複数の静止画像Ｆを配置し、オブジェクト画像Ｆｏと合成を行うことにより、パノラマ画像Ｆｐの生成を行う。なお、これらの構成は、コンピュータ２のＣＰＵ２４が中心となって、ＲＡＭ２２およびハードディスク２１と連動しながら処理を行うことにより、その機能を果たしている。
【００４５】
ここで、デジタルスチルカメラ８で撮影された画像ファイルについて説明する。図３は、デジタルスチルカメラ８で撮影された画像ファイルに記録された撮影情報および位置情報を説明する図である。上述したように、画像ファイルは静止画像Ｆの画像情報に加えて、撮影時の位置情報と撮影情報とを有するＥｘｉｆ形式の画像ファイルとなっている。そして、図３に示すように、デジタルスチルカメラ８で撮影された位置を示す位置情報として、緯度αと経度βの情報を有し、撮影情報としては、方位角γ、仰角δ、回転角εおよび画角ηについての情報を有している。なお、以下では、図３に見られる３つの静止画像Ｆを合成するものとし、この３つの静止画像ＦをＦ１〜Ｆ３と呼び、説明を行うものとする。また、静止画像Ｆ１〜Ｆ３のそれぞれに対応する位置情報として、緯度α１〜α３および経度β１〜β３を有している。撮影情報としては、方位角γ１〜γ３、仰角δ１〜δ３、回転角ε１〜ε３および画角η１〜η３を有している。
【００４６】
次に、撮影を行った時の、緯度、経度、方位角および画角について説明する。図４は、静止画像Ｆ１〜Ｆ３を撮影した時の様子を示した図である。図に示すように、撮影者１３は、同じ位置を中心として撮影する方位を変えるようにして３枚の静止画像Ｆ１〜Ｆ３を撮影している。したがって、このとき、静止画像Ｆ１〜Ｆ３の位置情報については、緯度についてα１＝α２＝α３、経度についてβ１＝β２＝β３が成り立つ。ここで、例えば、緯度αおよび経度βの情報が、小数点以下の桁が１０-4〜１０-6程度の精度で同一となっていれば、同じ位置を中心として撮影が行われたとみなしてよい。もっとも、撮影する被写体と撮影者との距離の大小に対応して、同じ位置とみなす位置情報の精度を変更するようにすることもできる。
【００４７】
撮影方向については、図４に示すように、それぞれが異なる撮影方向に向けて静止画像Ｆ１〜Ｆ３が撮影されている。このとき、静止画像Ｆ１〜Ｆ３の各撮影方向は方位基準（ここでは、北方向）に対して、それぞれ方位角γ１〜γ３（γ１≠γ２≠γ３）を有している。また、静止画像Ｆ１〜Ｆ３のそれぞれは、撮影対象を臨むようにして撮影者１３（より正確にはデジタルスチルカメラ８）を中心として所定の画角の内部にある撮影対象を写すようにして撮影される。ここで、静止画像Ｆ１〜Ｆ３のそれぞれについての画角をη１〜η３とする。
【００４８】
次に、撮影を行った時の、仰角および回転角について説明する。図５は、静止画像Ｆを撮影した時の様子を示している図である。図５（ａ）は、静止画像Ｆの撮影を横方向より見た様子を示している。図にあるように、撮影時に水平方向に対して撮影装置の撮影方向が傾いている角度を、水平方向を基準にして仰角δとして表す。また、静止画像Ｆ１〜Ｆ３のそれぞれがもつ仰角δを、仰角δ１〜δ３と表すことにする。図５（ｂ）は、デジタルスチルカメラ８が写している静止画像の撮影領域を示している。このとき、写している画像が傾くのは、デジタルスチルカメラ８が傾いて撮影されたことによる。このように、撮影方向を軸としてデジタルスチルカメラ８が回転している角度を、回転角εとして表す。また、静止画像Ｆ１〜Ｆ３のそれぞれがもつ回転角εを、回転角ε１〜ε３と表すことにする。
【００４９】
なお、静止画像Ｆは、所定の階調数のうちいずれかの階調値を有した多数の画素をマトリクス状に配列することにより構成されている。本実施形態では、この各画素は、Ｒ（レッド）、Ｇ（グリーン）、Ｂ（ブルー）の各々について階調数をもつＲＧＢデータで表現されている。以下の説明では、ＲＧＢデータのうちいずれかの値を示す画素値（画素情報）を用いて説明を行っているが、実際にはＲＧＢ各々のデータについて以下に説明する処理を行うこととなる。もっとも、処理に用いるデータとしては、Ｙ（輝度）、Ｃｂ（ブルーの色差）、Ｃｒ（レッドの色差）の各々について階調数をもつＹＣｂＣｒデータであっても良く、Ｙ，Ｃｂ，Ｃｒのいずれかの値を以下に説明する画素値として用いても良い。静止画像Ｆの各画素値のもつ階調数はＲＧＢそれぞれに２５６階調としているが、これに限られるものではなく、５１２階調、１０２４階調などの他の階調数をもたせても良い。
【００５０】
次に、画像処理装置１の各構成の働きについて説明する。
画像選択部３０は、デジタルスチルカメラ８により撮影した複数の画像ファイルから同じ位置で撮影された複数の画像ファイルを選択する。すなわち、複数の画像ファイルの各々がもつ位置情報（緯度αおよび経度β）を参照し、緯度αおよび経度βにそれぞれ同一の値をもつ画像ファイルを複数選択する。なお、上述したように、以下の説明では複数のファイルから、位置情報に基づいて静止画像Ｆ１〜Ｆ３をそれぞれ記録した画像ファイルが選択されたものとする。すなわち、緯度α１＝α２＝α３、経度β１＝β２＝β３が成り立ち、同じ位置から撮影されたものとして静止画像Ｆ１〜Ｆ３が選択されたものとする。
【００５１】
画像抽出部３１は、ユーザーの操作に対応して、多数のサンプル画像Ｆｓを記憶しているハードディスク２１内部の記憶領域に形成されるデータベース部２５からサンプル画像Ｆｓを読み出して、取得する。そして、サンプル画像Ｆｓから被写体が写っている領域を抽出して、オブジェクト画像Ｆｏを取得する。
【００５２】
画像配置部３２は、画像選択部３０が選択した画像ファイルの静止画像Ｆを、撮影情報（方位γ、仰角δ、回転角εおよび画角η）に基づいて同一平面上に配置する。
【００５３】
予測部３３は、配置した静止画像Ｆ間の隙間部分であり、いずれの静止画像Ｆも配置されていない未表示領域に対して行う処理方法を判断する。このときの処理方法としては、未表示領域にオブジェクト画像Ｆｏを配置する方法と、未表示領域に隣接する静止画像Ｆから未表示領域の画素値を推定する方法と、がある。また、未表示領域の大きさによっては適切な処理を行うことができないとして処理を行わないとする選択肢も持たせている。そして、これら３つの処理方法のうち、いずれの処理方法が適切であるかを判断するのである。すなわち、予測部３３は、隣接する静止画像Ｆから未表示領域の画素値が推定可能か否かという判断と、未表示領域に何らかの処理を行うことが適当か否かという判断と、を行う。そして、推定可能なときは、隣接する静止画像Ｆから画素情報の推定を行う。推定不可能なときは画像配置部３２によりオブジェクト画像Ｆｏを未表示領域に配置する。また、未表示領域に何らかの処理を行うことが不適当と判断したときは、未表示領域に対して処理を行わないようにする。
【００５４】
画像生成部３４は、予測部３３の判断が推定不可能であったときには、配置した静止画像Ｆおよびオブジェクト画像Ｆｏを繋ぎ合わせて、１枚のパノラマ画像Ｆｐを生成する。予測部３３の判断が推定可能であったときには、隣接する静止画像Ｆから推定して未表示領域の画素値を取得するようにして、繋ぎあったパノラマ画像Ｆｐを取得する。
【００５５】
以上、本画像生成装置１の各構成について主な働きを述べた。次に、フローチャートおよび図を用いて本画像処理アプリケーションを実現する画像処理プログラムによる処理について、詳細な説明を行う。
【００５６】
図６は、画像処理プログラムの処理全体の流れを示すフローチャートである。なお、上述した画像選択部３０がステップＳ１〜Ｓ２を、画像配置部３２がステップＳ３を、予測部３３がステップＳ４〜５を、画像生成部３４がステップＳ７〜９の処理を行う。また、ステップＳ６は、画像抽出部３１、画像配置部３２および画像生成部３４が行う処理である。
【００５７】
画像処理アプリケーションを起動すると、コンピュータ２が図６のフローチャートで示される画像処理プログラムを実行する。
【００５８】
始めに、ステップＳ１では、処理を行う静止画像Ｆの指定を行う。すなわち、複数の画像ファイルから、コンピュータ２（画像選択部３０）は画像ファイルがもつ位置情報（緯度α、経度β）を参照し、緯度αおよび経度βのそれぞれについて同一の情報をもつ画像ファイルを複数選択する。本実施形態では、ユーザーがキーボード３およびマウス４により指定した所定の静止画像Ｆに対して、同じくユーザーが指定した複数の画像ファイルから同一の位置情報をもつ静止画像Ｆをすべて選択し、取得するようにしている。
【００５９】
次に、ステップＳ２では、取得した静止画像Ｆのうち、いずれか２つの静止画像Ｆを組として選択する。なお、ここでは静止画像Ｆ１およびＦ２が選択されたものとして以下に説明する。
【００６０】
次に、ステップＳ３では、選択した静止画像Ｆ間の相対的な位置関係を計算し、ＸＹ座標平面上に配置を行う（配置処理）。ここでは、撮影情報（方位角γ、仰角δ、回転角εおよび画角η）に基づき、配置処理を行う。
【００６１】
以下、画像配置部３２が行う配置処理について、図７のフローチャートおよび、静止画像Ｆを配置した様子を示している図８、を用いて説明する。そして、図８に示すように撮影した２枚の静止画像Ｆ１およびＦ２について、静止画像Ｆ１の位置を基準にして、静止画像Ｆ２を配置する配置処理について説明を行っている。また、ここで、配置処理を行うにあたり、横方向をＸ方向、縦方向をＹ方向としたＸＹ座標平面を設定し、この座標平面上に静止画像Ｆを配置することとする。また、静止画像Ｆ１のＸ方向寸法およびＹ方向寸法をそれぞれａ，ｂとする（図８参照）。ここでいう寸法とは、実際にはＸ方向寸法およびＹ方向に並んだ画素数に基づく値を示している。
【００６２】
配置処理を開始すると、まず、ステップＳ３１において、方位角の補正を行う。方位角の補正は、基準となる静止画像Ｆ１がもつ方位角γ１および画角η１、静止画像Ｆ２がもつ方位角γ２を用いてＸ方向の相対位置を求めることにより行う。静止画像Ｆ１の画角η１に静止画像Ｆ１の幅方向寸法ａが対応するものとして、静止画像Ｆ１に対する静止画像Ｆ２のＸ方向の変位量ｕ２は以下の式で表すことができる。
ｕ２＝（γ１−γ２）／η１×ａ  …（１）
こうして、静止画像Ｆ１に対する静止画像Ｆ２の相対的なＸ座標が定まる。
【００６３】
次に、ステップＳ３２において仰角の補正を行う。仰角δの補正は、変位量をｖａ（ａは静止画像の番号）と表すとすると、静止画像Ｆ１がもつ仰角δ１、静止画像Ｆ２がもつ仰角δ２を用いてＹ方向の相対位置を求めることにより行う。静止画像Ｆの画角η１に静止画像Ｆ１の幅方向寸法ａが対応し、静止画像Ｆ１に対する静止画像Ｆ２のＹ方向の変位量ｖ２は以下の式で表される。
ｖ２＝（δ１−δ２）／η１×ａ  …（２）
こうして、静止画像Ｆ１に対する静止画像Ｆ２の相対的なＹ座標が定まる。
【００６４】
次に、ステップＳ３３では、画角の補正を行う。画角の補正は、基準となる静止画像Ｆ１がもつ画角η１、と静止画像Ｆ２がもつ画角η２に基づいて、静止画像Ｆ２がもつ寸法を変換することにより行う。すなわち、ここでは、画角ηに基づいて静止画像Ｆ２の倍率変換を行う。また、このとき、画角の補正を行った静止画像Ｆ２の中心がステップＳ３１〜Ｓ３２で定めたＸ・Ｙ座標に位置するようにして、静止画像Ｆ２の大きさを変化させることにより倍率変換（画角の補正）を行えば良い。
【００６５】
次に、ステップＳ３４では、回転角の補正を行う。回転角εの補正は、静止画像Ｆの中心に対して、回転角εだけ静止画像Ｆを回転させるように変換すればよい。すなわち、図８に示すように、静止画像Ｆの各画素について、静止画像Ｆの中心周りに回転させる座標変換することにより行う。回転角の補正を終えると、配置処理を終了する。
【００６６】
以上のようにして、方位角γ、仰角δ、画角ηおよび回転角εに基づいて、静止画像Ｆを配置することができる。
【００６７】
なお、静止画像Ｆの発色に差異（色差）が見られるような場合では、配置処理を行う前に、各静止画像Ｆの色を補正すると良い。すなわち、各静止画像Ｆごとに色がずれているときは、各静止画像に対してＲＧＢ各色の画素値ごとに調整を行うようにする。この色補正を行うには、デジタルスチルカメラ８が撮影時に行うホワイトバランス調整用の調整データを画像ファイルに記録し、この調整データに基づいて色補正を行う方法や、静止画像Ｆごとに対応する位置の画素値を検出し、ＲＧＢデータの各々について、対応する画素値の差分が小さくなる補正を、各静止画像Ｆに対して行うことにより色差を抑える方法、などを用いると良い。
【００６８】
次に、図６に戻り、ステップＳ４では、配置された静止画像Ｆの表示領域に重なり部分があるか否かを判断する。重なり部分がない場合（Ｎｏ）にはステップＳ５へ進む。重なり部分がある場合（Ｙｅｓ）には、ステップＳ７へ進む。
【００６９】
次に、ステップＳ５では、２つの静止画像Ｆ間に重なり部分がない場合に、配置した静止画像Ｆ間の間隔が所定の値より小さいか否かを判断する。所定の値より小さい場合（Ｙｅｓ）は、ステップＳ６へ進み隙間を埋める処理を行う。所定の値より大きい場合（Ｎｏ）は、隙間（未表示領域）を自然に埋めることができないと判断し、未表示領域を埋める処理を行わないこととして、ステップＳ８へ進む。
【００７０】
なお、本実施形態では、ステップＳ５における閾値の値としては、２つの静止画像Ｆ間の間隔が、ステップＳ１でユーザーが指定した静止画像Ｆの幅の２０％より小さいか否かを判断するようにしている。また、配置した２つの静止画像Ｆが傾いていることにより、間隔が一定の値とならない場合には、その間隔が最も小さくなる値を用いて判断すると良い。もっとも、閾値に用いる値としてはこの値に限られることなく、ユーザーが任意に閾値を指定するようにしても良い。
【００７１】
次に、ステップＳ６では、静止画像Ｆ間の隙間を埋める処理を行う。この隙間を埋める処理の詳細については、後述する。処理を終えるとステップＳ８へ進む。
【００７２】
ステップＳ７では、静止画像間に重なり部分があるので、この重なり部分に対して所定の処理を行うことによりパノラマ画像Ｆｐを合成する。このとき、静止画像Ｆ間の位置関係はステップＳ３により既に定まっているので、重なり部分については２枚の静止画像Ｆについて周知の画像処理を行うことにより、２枚の静止画像Ｆを繋ぎ合わせる。この重なり部分の処理としては、例えば、重なり部分の内部については２枚の静止画像Ｆのいずれかの画素値を選択し、重なり部分の境界部分に対しては、境界を目立たなくする処理を行うと良い。具体的には、境界付近にある画素値を平均するなどの方法により行うと良い。処理を終えるとステップＳ８へ進む。
【００７３】
ステップＳ８では、ステップＳ１で取得した静止画像Ｆのうち、すべての組について２つの静止画像Ｆについて、ステップＳ３〜Ｓ７の処理が行われたか否かを判断する。すべての組について処理が行われていた場合（Ｙｅｓ）、ステップＳ９へ進む。すべての組について処理が行われていなかった場合（Ｎｏ）、ステップＳ２へ戻り、再度２つの静止画像Ｆからなる組を選択する。このようにして、ステップＳ１で取得したすべての静止画像Ｆから選択してなる２つの静止画像Ｆのすべての組について、ステップＳ２〜Ｓ７の処理を行うようにして、すべての静止画像Ｆ間の未表示領域に対して処理を行う。
【００７４】
ステップＳ９では、以上のステップで得られたパノラマ画像Ｆｐに対してトリミング処理を行う。ここでは、ステップＳ６の処理により埋めることのできないパノラマ画像Ｆｐの周辺部の未表示領域を除去するようにしてトリミングを行い、パノラマ画像Ｆｐを取得する（図１６参照）。この処理を終えると図６のステップＳ１より始まる一連の処理を終了する。
【００７５】
次に、ステップＳ６で行う隙間を埋める処理について詳細に説明する。
本実施形態は、図６に示した処理方法により同一平面上に配置した静止画像Ｆの間に隙間（未表示領域）がある場合でも、画像が繋がって見えるパノラマ画像Ｆｐを得ることができるとするものである。しかし、ここまでの処理では未表示領域に当たる領域の画素値が得られないので何らかの手法によりこの未表示領域を埋めて画像を繋ぎ合わせる処理を行わなければならない。このような場合に、複数の静止画像Ｆを繋ぎ合わせて、パノラマ画像Ｆｐを生成する方法について、図を用いて以下に説明する。
【００７６】
図９は撮影した静止画像Ｆを撮影情報に従って配置し、パノラマ画像Ｆｐを生成する過程を示した図である。図９上段には、空を背景にして、複数の山が連なっている風景を撮影した様子を示している。同図に示すように、それぞれの撮影範囲６０〜６２について静止画像Ｆ１〜Ｆ３の撮影を行ったものとして、この静止画像Ｆ１〜Ｆ３からパノラマ画像を生成する方法について、以下に説明する。なお、このとき、静止画像Ｆを撮影した時の撮影情報（方位角γ、仰角δ、回転角εおよび画角η）および位置情報（緯度αおよび経度β）が画像ファイルに記録されている。
【００７７】
図９中段では、図９上段にある撮影範囲６０〜６２を撮影して得られた３枚の静止画像Ｆ１〜Ｆ３を表している。同図に示すように、静止画像Ｆ１〜Ｆ３には、それぞれ撮影した山の風景の一部分しか写っていないので、風景の全体としての様子を知ることはできない。
【００７８】
次に、図９下段では、上述したように撮影情報（方位角γ、仰角δ、回転角εおよび画角η）に基づいてこれらの静止画像Ｆ１〜Ｆ３を配置して得られるパノラマ画像Ｆｐを示している。撮影情報を用いて静止画像Ｆを配置することにより、撮影時の静止画像Ｆの相対的な位置関係を忠実に再現している。すなわち、図９上段に示した静止画像Ｆ間の位置関係を忠実に再現したパノラマ画像Ｆｐを得ることができている。
【００７９】
しかし、図９下段に示すパノラマ画像Ｆｐに見られるように、２つの静止画像Ｆに挟まれながら重なっていない領域、およびパノラマ画像Ｆｐの周辺部の領域には、図の網掛け部に示されるように、何かしらの画像も表示されていない未表示領域が残されている。このように、撮影情報に基づいて静止画像Ｆを配置しただけでは、撮影時の静止画像Ｆ間の位置関係を再現して配置することができていても、静止画像Ｆ間の隙間に当たる部分については画像情報を有していない。したがって、未表示領域があることにより個々の静止画像Ｆが分断され、あたかも個々の静止画像Ｆが孤立したかのように写っているパノラマ画像Ｆｐが得られるので、ユーザーに不自然かつ中途半端な印象を与えることとなり、パノラマ画像Ｆｐとしては不完全である。
【００８０】
そこで、本実施形態では静止画像Ｆ間の隙間にある未表示領域を何らかの画像で埋めて、表示をさせる処理（隙間を埋める処理）を行うようにする。このため、上述したように、未表示領域の画素値を、未表示領域周辺の画素値から予測できるか否かの判断に従い、未表示領域を予測可能領域と予測不可能領域とに領域分けを行うようにする。そして、予測可能領域に対しては、未表示領域を挟んで位置する２つの静止画像Ｆの画素値に基づいて、未表示領域の画素値を推定する。予測不可能領域に対しては、任意のオブジェクト画像Ｆｏを配置する処理を行う。このようにして、未表示領域の隙間を埋める処理を行っている。
【００８１】
以下に、静止画像Ｆ間の隙間を埋める処理について、図１０のフローチャートに従って説明する。
【００８２】
静止画像Ｆ間の隙間を埋める処理を開始すると、始めに、ステップＳ６０において、未表示領域を予測可能領域と予測不可能領域とに区分けして領域設定を行う。
【００８３】
予測可能／不可能領域の領域設定について、図１１および図１２を用いて説明する。
図１１は予測可能／不可能領域を設定する処理を説明する図である。図１１（ａ）には、ｐ×ｑの画素から構成される２つの静止画像Ｆ１およびＦ２を配置したときについて、静止画像Ｆ１の右側および静止画像Ｆ２の左側に位置する未表示領域の周辺の様子が示されている。また、以下では配置処理の説明と同様に静止画像Ｆ１を基準にして、静止画像Ｆ２について処理を行うものとし、ｘｙ座標の原点は、静止画像Ｆ１の左下の頂点にあるとして、静止画像Ｆ１およびＦ２の座標（ｘ，ｙ）にある画素の画素値をそれぞれｆ１（ｘ，ｙ）、ｆ２（ｘ，ｙ）と表す。図にあるように、ここでは、静止画像Ｆ１およびＦ２を並べてｘ方向に繋ぎ合わせる場合について説明するものとする。すなわち、静止画像Ｆ１およびＦ２に左右を挟まれた未表示領域を埋める処理を行うものとする。
【００８４】
図１２は、予測可能／不可能領域に分ける処理の流れを示したフローチャートである。
この処理を開始すると、始めに、ステップＳ６００において、未表示領域に隣接する辺を構成する静止画像Ｆ２の画素群から、未表示領域に隣接する静止画像Ｆ１の辺を構成する画素に対応して位置する画素を決定する。本実施形態では、図１１（ａ）に示すように静止画像Ｆ１の画素４０を通り、静止画像Ｆ１に対して水平に延長した延長線と、未表示領域に隣接する静止画像Ｆ２の画素列の交点に位置した画素を、静止画像Ｆ２上の対応する画素４１とする。このとき、静止画像Ｆ１の画素４０の画素値はｆ１（ｐ，ｙ１）（但し、０≦ｙ１≦ｐ）となり、静止画像Ｆ２上の対応画素４１の画素値はｆ２（ｒ，ｙ１）とする。また、このとき、図１１（ａ）に示すように、０≦ｙ１≦ｙ２の範囲にある静止画像Ｆ１の画素について、静止画像Ｆ２側に対応する画素を設定することができる。
【００８５】
ステップＳ６０１では、ステップＳ６００で決めた対応する画素、すなわち、ｆ１（ｐ，ｙ１）およびｆ２（ｒ，ｙ１）の画素値の差を求める。ここでは、図１１（ｂ）に示すように静止画像Ｆ１側の対応点の画素値ｆ１（ｐ，ｙ１）と、静止画像Ｆ２側の対応点の画素値ｆ２（ｒ，ｙ１）とを差分した値の絶対値をΔｆとして取得する。すなわち、以下の式でΔｆ（ｐ，ｙ１）を求めることができる。
Δｆ（ｐ，ｙ１）＝｜ｆ１（ｐ，ｙ１）−ｆ２（ｒ，ｙ１）｜  …（３）
【００８６】
次に、ステップＳ６０２では、図１１（ｃ）に示すように、求めたΔｆが所定の閾値Ｒより大きいか否かに基づいて、予測可能領域および予測不可能領域の設定を行う。すなわち、閾値Ｒより小さくなるｙの範囲内では、静止画像Ｆ１と静止画像Ｆ２の画素値の差が比較的小さいといえるので、静止画像Ｆ１側の対応点の画素値ｆ１（ｐ，ｙ１）および静止画像Ｆ２側の対応点の画素値ｆ２（ｒ，ｙ１）から未表示領域の画素値が予測可能であり予測可能領域と判断する。閾値Ｒより大きくなるｙの範囲内では、画素値の差が比較的大きいので、適切に画素値を推定することが困難であり予測不可能領域であると判断する。このようにして、予測可能領域および予測不可能領域の設定が行われる。
【００８７】
次に、ステップＳ６１において、予測可能領域について処理を行う。予測可能領域は、２つの静止画像Ｆにそれぞれ接する辺の輝度差が閾値Ｒより小さいため、内挿処理を行うことにより適切な画素値を取得できると考えられる。したがって、未表示領域を挟んだ静止画像Ｆの画素値から内挿するようにして画素値を取得する。
【００８８】
ここで、内挿する方法としては、未表示領域に対向するようにして隣接する、２つの静止画像Ｆが接する辺の画素の画素値に基づいて行う。今、画素値を求めようとする注目画素があるとして、この注目画素から各静止画像Ｆの画素への距離を重みとして、それぞれの画素値の重みつき平均を求めることにより求められる。そして、予測可能領域の全画素について、この内挿を行う。このようにすれば、２つの静止画像間の予測可能領域を、一定のグラデーションがかかった画像で埋めることができる。
【００８９】
次に、ステップＳ６２において、予測不可能領域について処理を行う。予測不可能領域に対しては、静止画像Ｆとは別の画像を選択して予測不可能領域に挿入する画像（本実施形態ではオブジェクト画像Ｆｏ）を取得し、配置を行う。この予測不可能領域に対する詳細な処理は、後述することにする。
【００９０】
次に、ステップＳ６３において、ステップＳ６０〜Ｓ６２において配置された画像を合成し、１枚のパノラマ画像Ｆｐを取得する。このようにして、重なり部分のない静止画像Ｆを複数用いて合成する場合であっても、各静止画像Ｆを繋げて表示されているパノラマ画像Ｆｐを得ることができる。以上で、図１０に示す隙間を埋める処理を終了する。
【００９１】
ここで、ステップＳ６２で行う予測不可能領域にオブジェクト画像Ｆｏを配置する処理について説明する。
【００９２】
配置する画像を取得する方法について、図１３、および図１４に示したフローチャートを用いて説明する。なお、本実施形態の画像生成装置１は、ハードディスク２１の内部の記憶領域上に、多数のサンプル画像Ｆｓを記憶したデータベース部２５を備えている。ユーザーは、キーボード３またはマウス４を操作することにより、このサンプル画像Ｆｓのうちのいずれかを選択することができるようにしている。
【００９３】
処理を開始すると、始めに、ステップＳ６２０では、ユーザーの操作に従って、データベース部２５に記憶された多数のサンプル画像Ｆｓから任意のサンプル画像Ｆｓを選択する。
【００９４】
次に、ステップＳ６２１では、選択したサンプル画像Ｆｓよりオブジェクトに対応する領域の認識を行う。例えば、図１３上段に示したように、人物像５０の写ったサンプル画像Ｆｓに対して、フラクタル輪郭抽出法など周知のオブジェクト抽出手法を用いてオブジェクト領域の設定を行う。
【００９５】
次に、ステップＳ６２２では、サンプル画像Ｆｓよりオブジェクトに対応する領域の画像を抽出し、抽出した画像をオブジェクト画像Ｆｏとして取得する。こうして得られたオブジェクト画像ＦｏはステップＳ６３において、予測不可能領域に配置するようにして用いられる。このようにして、オブジェクト画像Ｆｏが取得され、図１３下段に示されたように、オブジェクトのみが写っており、背景部分のないオブジェクト画像Ｆｏを得ることができる。
【００９６】
以上に述べた方法により、パノラマ画像Ｆｐを取得する動作について説明する。図１５は、図９にあるパノラマ画像Ｆｐから、静止画像Ｆ１〜Ｆ３を繋ぎ合わせたパノラマ画像Ｆｐを取得する様子を示している。図１５上段に見られるように、撮影情報（方位角γ、仰角δ、回転角εおよび画角η）に基づいて静止画像Ｆを配置しただけのパノラマ画像Ｆｐには、静止画像Ｆの間およびパノラマ画像Ｆｐの周辺部に未表示領域が存在している。
【００９７】
次に、上述した予測領域を分ける処理を行うと、図１５中段に示すように、予測可能領域と予測不可能領域とが得られる。図の例の場合では、空が写っている部分は２つの静止画像Ｆの対応する画素の画素値の差が小さくなり予測可能領域と判断されている。一方、山が写っている領域は２つの静止画像Ｆの対応する画素の画素値の差が大きく予測不可能領域と判断されている。このように２つの静止画像Ｆの対応する画素について、その画素値の差から容易に予測領域・予測不可能領域の設定を行っている。
【００９８】
次に、予測可能領域に対しては、上述したように画素値を内挿する処理を行う一方で、予測不可能領域に対してはオブジェクト画像Ｆｏを配置する処理を行うと、図１５下段に示すようなパノラマ画像Ｆｐが得られる。このパノラマ画像Ｆｐでは、予測可能領域（空の部分）および予測不可能領域（山の部分）に対して、各々対応する手法で画素値を取得している。したがって、画像の表示領域に未表示領域がなく、静止画像Ｆが繋がって見えるパノラマ画像Ｆｐが得られる。
【００９９】
なお、オブジェクト画像Ｆｏを配置するときには、オブジェクト画像Ｆｏの中心が予測不可能領域の中心に重なるように配置すればよい。また、オブジェクト画像Ｆｏが未表示領域の全体を確実に覆うことができるように、オブジェクト画像Ｆｏに対して拡大・縮小処理を行って、未表示領域の大きさよりやや大きめのオブジェクト画像Ｆｏを用いるようにするとよい。
【０１００】
ここで、以上のようにして得られたパノラマ画像Ｆｐは、その周辺部に依然として未表示領域が残っている（図１５下段および図１６上段参照、図の網点部）。そこで、ステップＳ９の処理により、パノラマ画像Ｆｐに対して周辺の未表示領域を除去するように適宜トリミング処理を行っている。こうして得られたパノラマ画像Ｆｐには周辺の未表示領域が残っていないので、これを見たユーザーがより自然な印象を受けるパノラマ画像Ｆｐを得ることができる（図１６下段参照）。
【０１０１】
本実施形態によれば、以下に示す効果が得られる。
【０１０２】
（１）配置したいずれの静止画像Ｆも存在していない未表示領域に対して、予測可能領域・予測不可能領域のいずれであるかを判断して、オブジェクト画像Ｆｏを配置し繋ぎ合せる方法と、静止画像Ｆから予測して画素値を内挿する方法と、を使い分けるので、適切な処理により静止画像Ｆを繋ぎ合わせたパノラマ画像Ｆｐを得ることができる。
【０１０３】
（２）予測不可能領域にはオブジェクト画像Ｆｏを配置することにより、静止画像Ｆおよびオブジェクト画像Ｆｏを繋ぎ合わせているので、静止画像Ｆ間に重なり部分がなくとも、オブジェクト画像Ｆｏを介して個々の静止画像Ｆが繋がって見えるパノラマ画像Ｆｐを得ることができる。例えば、ユーザーの姿が写ったオブジェクト画像Ｆｏを選択し、風景写真と合成することにより、ユーザーがそこにいたかのように写っているバーチャルなパノラマ画像Ｆｐを得ることができる。
【０１０４】
（３）予測可能領域には、その領域に隣接する静止画像Ｆから内挿して画素値を取得しているので、画像の繋ぎ目の目立たない、自然なパノラマ画像Ｆｐを得ることができる。
【０１０５】
（４）パノラマ画像Ｆｐにトリミング処理を行っているので、周辺部にある未表示領域を除去したパノラマ画像Ｆｐを得ることができる。したがって、パノラマ画像全体に、画像が表示され、迫力あるパノラマ画像を得ることができる。
【０１０６】
（５）静止画像間の距離が所定の値（本実施形態では２０％）より大きいときには、未表示領域に対して隙間を埋める処理を行わないようにしている。したがって、静止画像Ｆ間の未表示領域が大きい場合に、無理にオブジェクト画像Ｆｏを繋ぎ合わせたり、画素値を内挿するといったことがないので、パノラマ画像Ｆｐが不自然になることがない。
【０１０７】
（６）画像選択部３０は、画像ファイルに記録した位置情報に基づいて同じ位置で撮影が行われた静止画像Ｆを選択して、パノラマ画像Ｆｐの生成に用いるようにしている。したがって、ユーザーはパノラマ画像Ｆｐの生成に用いる静止画像Ｆを選択する必要がない。また、確実に同じ位置から撮影された静止画像Ｆを用いてパノラマ画像Ｆｐを生成することができるので、撮影位置が異なることによりパノラマ画像Ｆｐが不自然になってしまうことを防止することができる。
【０１０８】
（第２の実施形態）
また、第２の実施形態として、デジタルスチルカメラ８に本発明の画像処理装置１を備えても良い。図１７に示すように、本実施例にあるデジタルスチルカメラ８は、画像を表示する液晶表示部７と、その内部にはパノラマ画像Ｆｐの生成を行う画像処理装置１と、を備えている。画像処理装置１は、静止画像Ｆを選択する画像選択部３０と、画像抽出部３１と、選択した静止画像Ｆを配置する画像配置部３２と、隙間の領域に行う処理を判断する予測部３３と、パノラマ画像Ｆｐを生成する画像生成部３４と、を有している。また、デジタルスチルカメラ８は、その位置情報（緯度αおよび経度γ）を取得するＧＰＳ１０と、デジタルスチルカメラ８の方位角を撮影情報として取得する方位センサ１１と、デジタルスチルカメラ８の鉛直方向に対する傾きを表す回転角および仰角を撮影情報として取得する重力センサ１２とを備えている。
【０１０９】
この場合のデジタルスチルカメラ８では、撮像時の撮影情報および位置情報を、画像ファイルを介することなくＧＰＳ１０および方位センサ１１から直接取得し、パノラマ画像を生成する。もっとも、撮影情報および位置情報を静止画像Ｆと共に記録した画像ファイルを生成して、デジタルスチルカメラ８内部に備えた記憶媒体に記憶し、必要なときにデジタルスチルカメラ８がこの画像ファイルを読み出してパノラマ画像を生成するようにしてもよい。
【０１１０】
第２の実施形態によれば、前記第１の実施形態で述べた効果（１）〜（６）に加えて以下に示す効果が得られる。
【０１１１】
（７）ユーザーは、撮像したその場で、液晶表示部７を見ながら生成したパノラマ画像Ｆｐを確認することができる。また、生成されるパノラマ画像Ｆｐを確認しながら撮影することができるので、パノラマ画像Ｆｐを撮影しようとする際に、カメラの利便性が向上する。
【０１１２】
（８）デジタルスチルカメラ８の液晶表示部７を見ながら傾き補正、トリミング、台紙パターンとの画像の合成を行うことができるので、例えばデジタルスチルカメラ８を直接プリンタに接続して印刷できる機能を持てば、デジタルスチルカメラ８で適切に補正されたパノラマ画像Ｆｐをプリンタから直接印刷することができる。
【０１１３】
また、本発明は前述した実施形態に限定されず以下のような変形例としても良い。
【０１１４】
（変形例１）前記実施形態では、任意のサンプル画像Ｆｓを用いて、オブジェクト画像Ｆｏを取得するようにしている。第１の変形例として、パノラマ画像Ｆｐの生成に用いる静止画像Ｆの表示領域の一部からオブジェクト画像Ｆｏを取得するようにしても良い。例えば、静止画像Ｆに類似した被写体（例えば、青空、雲、山、海面など）がいくつも繰り返し写っているとき、この繰り返し領域を抽出してオブジェクト画像Ｆｏとして取得しても良い。
【０１１５】
（変形例２）前記実施形態では、予測可能領域の判断を行う際に、２つの静止画像Ｆ間の画素値の差と所定の閾値Ｒとを比較して、領域の設定を行っている。しかし、こうした場合、２つの静止画像Ｆ間に多数の予測可能領域／予測不可能領域が交互に設定される可能性がある。すなわち、図１８（ａ）に示すように静止画像Ｆの画素値が、所定の閾値Ｒの近辺で細かく変化を繰り返している場合などがこれにあたる。こうした場合、小さな予測不可能領域と小さな予測可能領域とが繰り返し設定されることになり、これに合わせて小さいオブジェクト画像を多数配置されるので煩雑なパノラマ画像Ｆｐが得られる可能性がある。こうした場合に対処するため、第２の変形例として、図１８（ｂ）に示すように予測不可能領域が所定の大きさより小さくなったときには、これに隣接する予測可能領域と結合して、より大きな予測可能領域を再設定するようにしても良い。また、図１８（ｃ）に示したように、閾値Ｒの大小を変化させ、予測可能領域／予測不可能領域が、例えば各々１つずつに収まるように調整するとしても良い。
【０１１６】
（変形例３）前記実施形態では、データベース部２５に記憶されている多数のサンプル画像Ｆｓからユーザーが選択した任意のサンプル画像Ｆｓを用いて、オブジェクト画像Ｆｏを取得するようにしている。第３の変形例として、ユーザーが他から取得した画像を自由に選択してサンプル画像Ｆｓとして用いるようにしても良い。
【０１１７】
（変形例４）前記実施形態では、複数の静止画像をＸ方向（水平方向）に繋げてパノラマ画像Ｆｐを取得する処理を行った。しかし、同様の手法を用いて、Ｙ方向にも繋げるようにしてパノラマ画像Ｆｐを得るようにしても良い。
【０１１８】
（変形例５）前記実施形態では、画像選択部３０において同じ撮影位置（緯度、経度）で撮影された静止画像Ｆを選択して、パノラマ画像Ｆｐを生成している。第５の変形例として、画像ファイルに撮影時刻の時間情報をさらに記録するようにして、画像選択部３０は撮影時間情報に基づいて、ほぼ同時刻に撮影した画像を選択してパノラマ画像Ｆｐを生成するようにしても良い。
【０１１９】
（変形例６）前記実施形態では、オブジェクト画像Ｆｏを未表示領域にそのまま配置して合成している。しかし、未表示領域の大きさ・形状に合わせて、オブジェクト画像Ｆｏを拡大または縮小する処理を行ってから配置するようにしても良い。
【図面の簡単な説明】
【０１２０】
【図１】本発明に係る第１の実施形態である画像処理装置の構成を示した模式図。
【図２】画像処理装置およびデジタルスチルカメラの内部の構成を示した図。
【図３】画像ファイルに記録された撮影情報および位置情報を説明する図。
【図４】静止画像を撮影した時の様子を上から示した模式図。
【図５】静止画像を撮影した時の様子を示している図、（ａ）は撮影の様子を横方向より示した模式図、（ｂ）は撮影装置から撮影方向を向けて写った撮影領域を示した模式図。
【図６】画像処理プログラムの処理全体の流れを示すフローチャート。
【図７】配置処理の処理の流れを示すフローチャート。
【図８】配置処理を説明する模式図。
【図９】静止画像を配置し、パノラマ画像を生成する様子を示す模式図。
【図１０】画像の隙間を埋める処理の流れを示すフローチャート。
【図１１】予測可能／不可能領域の領域分けを行う処理を説明する模式図、（ａ）は２つの静止画像Ｆ１、Ｆ２を配置した図、（ｂ）は配置した画像のｙ＝ｙ１上の画素値の分布を示した図、（ｃ）は予測可能／不可能領域の領域分けを示した図。
【図１２】予測可能／不可能領域の領域分けを行う処理の流れを示すフローチャート。
【図１３】画像抽出処理を説明する模式図。
【図１４】画像抽出処理の処理の流れを示すフローチャート。
【図１５】合成処理を説明する模式図。
【図１６】トリミング処理を説明する模式図。
【図１７】本発明に係る第２の実施形態である画像処理装置を備えたデジタルスチルカメラの構成を示す模式図。
【図１８】第２の変形例を説明する模式図、（ａ）は複数の予測可能／不可能領域に区分けされた様子を示す図、（ｂ）は予測不可能領域を隣接する予測可能領域と結合した様子を示す図、（ｃ）は閾値を変化させた様子を示す図。
【符号の説明】
【０１２１】
１…画像処理装置、２…コンピュータ、８…デジタルスチルカメラ、Ｆ…静止画像、１０…ＧＰＳ、１１…方位センサ、１２…重力センサ、２５…データベース部、３０…画像選択部、３１…画像抽出部、３２…画像配置部、３３…予測部、３４…画像生成部、Ｆ…静止画像、Ｆｓ…サンプル画像、Ｆｏ…オブジェクト画像、Ｆｐ…パノラマ画像、α…緯度、β…経度、γ…方位角、δ…仰角、ε…回転角、η…画角。
【図１】
2006033353.tif 000003
【図２】
2006033353.tif 000004
【図３】
2006033353.tif 000005
【図４】
2006033353.tif 000006
【図５】
2006033353.tif 000007
【図６】
2006033353.tif 000008
【図７】
2006033353.tif 000009
【図８】
2006033353.tif 000010
【図９】
2006033353.tif 000011
【図１０】
2006033353.tif 000012
【図１１】
2006033353.tif 000013
【図１２】
2006033353.tif 000014
【図１３】
2006033353.tif 000015
【図１４】
2006033353.tif 000016
【図１５】
2006033353.tif 000017
【図１６】
2006033353.tif 000018
【図１７】
2006033353.tif 000019
【図１８】
2006033353.tif 000020