(57)【特許請求の範囲】
【請求項１】
異なる位置から撮影された複数の画像を入力し、各画像から切り出した短冊領域を連結して合成画像を生成する画像合成部を有し、
前記画像合成部は、
各画像に設定した左目用画像短冊の連結合成処理により３次元画像表示に適用する左目用合成画像を生成し、
各画像に設定した右目用画像短冊の連結合成処理により３次元画像表示に適用する右目用合成画像を生成する構成であり、
前記画像合成部は、前記左目用合成画像と右目用合成画像の撮影位置間の距離に相当する基線長をほぼ一定とするように画像の撮影条件に応じて前記左目用画像短冊と右目用画像短冊の短冊間距離である短冊間オフセット量を変更して前記左目用画像短冊と右目用画像短冊の設定処理を行なう画像処理装置。
【請求項２】
前記画像合成部は、
画像の撮影条件としての画像撮影時の画像処理装置の回転半径および焦点距離に応じて前記短冊間オフセット量を調整する処理を行う請求項１に記載の画像処理装置。
【請求項３】
前記画像処理装置は、
画像撮影時の画像処理装置の回転運動量を取得または算出する回転運動量検出部と、
画像撮影時の画像処理装置の並進運動量を取得または算出する並進運動量検出部を有し、
前記画像合成部は、
前記回転運動量検出部から受領する回転運動量と、前記並進運動量検出部から取得する並進運動量を適用して画像撮影時の画像処理装置の回転半径を算出する処理を実行する請求項２に記載の画像処理装置。
【請求項４】
前記回転運動量検出部は、
画像処理装置の回転運動量を検出するセンサである請求項３に記載の画像処理装置。
【請求項５】
前記並進運動量検出部は、
画像処理装置の並進運動量を検出するセンサである請求項３に記載の画像処理装置。
【請求項６】
前記回転運動量検出部は、
撮影画像の解析により画像撮影時の回転運動量を検出する画像解析部である請求項３に記載の画像処理装置。
【請求項７】
前記並進運動量検出部は、
撮影画像の解析により画像撮影時の並進運動量を検出する画像解析部である請求項３に記載の画像処理装置。
【請求項８】
前記画像合成部は、
前記回転運動量検出部から受領する回転運動量θと、前記並進運動量検出部から取得する並進運動量ｔを適用して画像撮影時の画像処理装置の回転半径Ｒを、
Ｒ＝ｔ（２ｓｉｎ（θ／２））
上記式に従って算出する処理を実行する請求項３に記載の画像処理装置。
【請求項９】
撮像部と、請求項１〜８いずれかに記載の画像処理を実行する画像処理部を備えた撮像装置。
【請求項１０】
画像処理装置において実行する画像処理方法であり、
画像合成部が、異なる位置から撮影された複数の画像を入力し、各画像から切り出した短冊領域を連結して合成画像を生成する画像合成ステップを実行し、
前記画像合成ステップは、
各画像に設定した左目用画像短冊の連結合成処理により３次元画像表示に適用する左目用合成画像を生成し、
各画像に設定した右目用画像短冊の連結合成処理により３次元画像表示に適用する右目用合成画像を生成する処理を含み、
さらに、前記左目用合成画像と右目用合成画像の撮影位置間の距離に相当する基線長をほぼ一定とするように画像の撮影条件に応じて前記左目用画像短冊と右目用画像短冊の短冊間距離である短冊間オフセット量を変更して前記左目用画像短冊と右目用画像短冊の設定処理を行なうステップである画像処理方法。
【請求項１１】
画像処理装置において画像処理を実行させるプログラムであり、
画像合成部に、異なる位置から撮影された複数の画像を入力し、各画像から切り出した短冊領域を連結して合成画像を生成させる画像合成ステップを実行させ、
前記画像合成ステップにおいては、
各画像に設定した左目用画像短冊の連結合成処理により３次元画像表示に適用する左目用合成画像の生成処理と、
各画像に設定した右目用画像短冊の連結合成処理により３次元画像表示に適用する右目用合成画像の生成処理を実行させ、
さらに、前記左目用合成画像と右目用合成画像の撮影位置間の距離に相当する基線長をほぼ一定とするように画像の撮影条件に応じて前記左目用画像短冊と右目用画像短冊の短冊間距離である短冊間オフセット量を変更して前記左目用画像短冊と右目用画像短冊の設定処理を行なわせるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、撮像装置、および画像処理方法、並びにプログラムに関する。さらに詳細には、カメラを移動させながら撮影した複数の画像を利用して３次元画像（３Ｄ画像）表示用の画像の生成処理を行う画像処理装置、撮像装置、および画像処理方法、並びにプログラムに関する。
【背景技術】
【０００２】
３次元画像（３Ｄ画像またはステレオ画像とも呼ばれる）を生成するためには、異なる視点からの画像、すなわち左目用画像と右目用画像を撮影することが必要となる。これらの異なる視点からの画像を撮影する方法は大別すると２通りに区分できる。
第１の手法は、複数のカメラユニットを用いて同時に異なる視点から被写体を撮像する、いわゆる多眼式カメラを用いた手法である。
第２の手法は、単一のカメラユニットを用いて撮像装置を移動させて、異なる視点からの画像を連続的に撮像する、いわゆる単眼式カメラを用いた手法である。
【０００３】
例えば、上記第１の手法に利用される多眼式カメラシステムは離間した位置にレンズを備え、異なる視点からの被写体を同時に撮影可能とした構成を持つ。しかし、このような多眼式カメラシステムは、複数のカメラユニットが必要なためカメラシステムが高価となるという問題がある。
【０００４】
これに対して、上記第２の手法に利用される単眼式カメラシステムは、従来型のカメラと同様の１つのカメラユニットを備えた構成でよい。１つのカメラユニットを備えたカメラを移動させて異なる視点からの画像を連続的に撮影し、複数の撮影画像を利用して３次元画像を生成するものである。
このように、単眼式カメラシステムを利用する場合、従来型のカメラと同様の１つのカメラユニットのみでよく比較的安価なシステムとして実現できる。
【０００５】
なお、単眼式カメラを移動しながら撮影した画像から被写体の距離情報を得る手法を開示した従来技術として、非特許文献１［「全方位視野の距離情報獲得」（電子情報通信学会論文誌，Ｄ−ＩＩ，Ｖｏｌ．Ｊ７４−Ｄ−ＩＩ，Ｎｏ．４，１９９１）］がある。なお、非特許文献２［「Ｏｍｎｉ−Ｄｉｒｅｃｔｉｏｎａｌ  Ｓｔｅｒｅｏ」ＩＥＥＥ  Ｔｒａｎｓａｃｔｉｏｎ  Ｏｎ  Ｐａｔｔｅｒｎ  Ａｎａｌｙｓｉｓ  Ａｎｄ  Ｍａｃｈｉｎｅ  Ｉｎｔｅｌｌｉｇｅｎｃｅ，ＶＯＬ．１４，Ｎｏ．２，Ｆｅｂｒｕａｒｙ  １９９２］にも非特許文献１と同一の内容の報告が記載されている。
【０００６】
これらの非特許文献１，２は、カメラを回転台上の回転中心から一定距離、離間した円周上に固定して設置し、回転台を回転させながら連続的に画像を撮影して２本の垂直スリットを通して得られる２つの画像を用いて被写体の距離情報を得る手法を開示している。
【０００７】
また特許文献１（特開平１１−１６４３２６号公報）は、非特許文献１，２の構成と同様、カメラを回転台上の回転中心から一定距離おいて設置して回転させながら画像を撮影し、２本のスリットを通して得られる２つの画像を用いることで、３次元画像表示に適用する左目用のパノラマ画像と右目用のパノラマ画像を取得する構成を開示している。
【０００８】
このように、複数の従来技術において、カメラを回転させてスリットを通して得られる画像を用いることで、３次元画像表示に適用する左目用の画像と右目用の画像を取得することが可能であることが開示されている。
【０００９】
一方、カメラを移動させながら画像を撮影して、複数の撮影画像を連結することでパノラマ画像、すなわち２次元の横長画像を生成する手法が知られている。例えば特許文献２（特許第３９２８２２２号公報）や、特許文献３（特許第４２９３０５３号公報）などにパノラマ画像の生成手法が開示されている。
このように２次元のパノラマ画像の生成に際してもカメラの移動による複数の撮影画像が利用される。
【００１０】
上記非特許文献１，２や上記特許文献１は、パノラマ画像の生成処理と同様の撮影処理によって撮影された複数の画像を適用して、所定領域の画像を切り出して連結することで３次元画像としての左目用画像と右目用画像が得られる原理について説明している。
【００１１】
しかし、例えばユーザが手に持ったカメラを振り回す動作によってカメラを移動させて撮影した複数の撮影画像を適用して所定領域画像の切り出し連結により３次元画像としての左目用画像と右目用画像を生成する場合、回転半径Ｒや、焦点距離ｆの変動により、最終的に生成される左目用画像と右目用画像を適用した３次元画像表示を行った場合に奥行き感が不安定になるという問題が発生する。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】特開平１１−１６４３２６号公報
【特許文献２】特許第３９２８２２２号公報
【特許文献３】特許第４２９３０５３号公報
【非特許文献】
【００１３】
【非特許文献１】「全方位視野の距離情報獲得」（電子情報通信学会論文誌，Ｄ−ＩＩ，Ｖｏｌ．Ｊ７４−Ｄ−ＩＩ，Ｎｏ．４，１９９１）
【非特許文献２】「Ｏｍｎｉ−Ｄｉｒｅｃｔｉｏｎａｌ  Ｓｔｅｒｅｏ」ＩＥＥＥ  Ｔｒａｎｓａｃｔｉｏｎ  Ｏｎ  Ｐａｔｔｅｒｎ  Ａｎａｌｙｓｉｓ  Ａｎｄ  Ｍａｃｈｉｎｅ  Ｉｎｔｅｌｌｉｇｅｎｃｅ，ＶＯＬ．１４，Ｎｏ．２，Ｆｅｂｒｕａｒｙ  １９９２
【発明の概要】
【発明が解決しようとする課題】
【００１４】
本発明は、例えば、上述の問題点に鑑みてなされたものであり、様々な設定の撮影装置や撮影条件において、カメラを移動させて撮影した複数の画像から３次元画像表示に適用する左目用画像と右目用画像を生成する構成において、カメラ撮影条件が変動した場合でも安定した奥行き感を持つ３次元画像データを生成することを可能とした画像処理装置、撮像装置、および画像処理方法、並びにプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１５】
本発明の第１の側面は、
異なる位置から撮影された複数の画像を入力し、各画像から切り出した短冊領域を連結して合成画像を生成する画像合成部を有し、
前記画像合成部は、
各画像に設定した左目用画像短冊の連結合成処理により３次元画像表示に適用する左目用合成画像を生成し、
各画像に設定した右目用画像短冊の連結合成処理により３次元画像表示に適用する右目用合成画像を生成する構成であり、
前記画像合成部は、前記左目用合成画像と右目用合成画像の撮影位置間の距離に相当する基線長をほぼ一定とするように画像の撮影条件に応じて前記左目用画像短冊と右目用画像短冊の短冊間距離である短冊間オフセット量を変更して前記左目用画像短冊と右目用画像短冊の設定処理を行なう画像処理装置にある。
【００１６】
さらに、本発明の画像処理装置の一実施態様において、前記画像合成部は、画像の撮影条件としての画像撮影時の画像処理装置の回転半径および焦点距離に応じて前記短冊間オフセット量を調整する処理を行う。
【００１７】
さらに、本発明の画像処理装置の一実施態様において、前記画像処理装置は、画像撮影時の画像処理装置の回転運動量を取得または算出する回転運動量検出部と、画像撮影時の画像処理装置の並進運動量を取得または算出する並進運動量検出部を有し、前記画像合成部は、前記回転運動量検出部から受領する回転運動量と、前記並進運動量検出部から取得する並進運動量を適用して画像撮影時の画像処理装置の回転半径を算出する処理を実行する。
【００１８】
さらに、本発明の画像処理装置の一実施態様において、前記回転運動量検出部は、画像処理装置の回転運動量を検出するセンサである。
【００１９】
さらに、本発明の画像処理装置の一実施態様において、前記並進運動量検出部は、画像処理装置の並進運動量を検出するセンサである。
【００２０】
さらに、本発明の画像処理装置の一実施態様において、前記回転運動量検出部は、撮影画像の解析により画像撮影時の回転運動量を検出する画像解析部である。
【００２１】
さらに、本発明の画像処理装置の一実施態様において、前記並進運動量検出部は、撮影画像の解析により画像撮影時の並進運動量を検出する画像解析部である。
【００２２】
さらに、本発明の画像処理装置の一実施態様において、前記画像合成部は、前記回転運動量検出部から受領する回転運動量θと、前記並進運動量検出部から取得する並進運動量ｔを適用して画像撮影時の画像処理装置の回転半径Ｒを、
Ｒ＝ｔ（２ｓｉｎ（θ／２））
上記式に従って算出する処理を実行する。
【００２３】
さらに、本発明の第２の側面は、
撮像部と、請求項１〜８いずれかに記載の画像処理を実行する画像処理部を備えた撮像装置にある。
【００２４】
さらに、本発明の第３の側面は、
画像処理装置において実行する画像処理方法であり、
画像合成部が、異なる位置から撮影された複数の画像を入力し、各画像から切り出した短冊領域を連結して合成画像を生成する画像合成ステップを実行し、
前記画像合成ステップは、
各画像に設定した左目用画像短冊の連結合成処理により３次元画像表示に適用する左目用合成画像を生成し、
各画像に設定した右目用画像短冊の連結合成処理により３次元画像表示に適用する右目用合成画像を生成する処理を含み、
さらに、前記左目用合成画像と右目用合成画像の撮影位置間の距離に相当する基線長をほぼ一定とするように画像の撮影条件に応じて前記左目用画像短冊と右目用画像短冊の短冊間距離である短冊間オフセット量を変更して前記左目用画像短冊と右目用画像短冊の設定処理を行なうステップである画像処理方法にある。
【００２５】
さらに、本発明の第４の側面は、
画像処理装置において画像処理を実行させるプログラムであり、
画像合成部に、異なる位置から撮影された複数の画像を入力し、各画像から切り出した短冊領域を連結して合成画像を生成させる画像合成ステップを実行させ、
前記画像合成ステップにおいては、
各画像に設定した左目用画像短冊の連結合成処理により３次元画像表示に適用する左目用合成画像の生成処理と、
各画像に設定した右目用画像短冊の連結合成処理により３次元画像表示に適用する右目用合成画像の生成処理を実行させ、
さらに、前記左目用合成画像と右目用合成画像の撮影位置間の距離に相当する基線長をほぼ一定とするように画像の撮影条件に応じて前記左目用画像短冊と右目用画像短冊の短冊間距離である短冊間オフセット量を変更して前記左目用画像短冊と右目用画像短冊の設定処理を行なわせるプログラムにある。
【００２６】
なお、本発明のプログラムは、例えば、様々なプログラム・コードを実行可能な情報処理装置やコンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体によって提供可能なプログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、情報処理装置やコンピュータ・システム上でプログラムに応じた処理が実現される。
【００２７】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【発明の効果】
【００２８】
本発明の一実施例の構成によれば、複数の画像から切り出した短冊領域を連結して基線長をほぼ一定にした３次元画像表示用の左目用合成画像と右目用合成画像を生成する装置および方法が提供される。複数画像から切り出した短冊領域を連結して３次元画像表示用の左目用合成画像と右目用合成画像を生成する。画像合成部は、各撮影画像に設定した左目用画像短冊の連結合成処理により３次元画像表示に適用する左目用合成画像を生成し、各撮影画像に設定した右目用画像短冊の連結合成処理により３次元画像表示に適用する右目用合成画像を生成する。画像合成部は、左目用合成画像と右目用合成画像の撮影位置間の距離に相当する基線長をほぼ一定とするように画像の撮影条件に応じて左目用画像短冊と右目用画像短冊の短冊間距離である短冊間オフセット量を変更して左目用画像短冊と右目用画像短冊の設定処理を行なう。この処理により、基線長をほぼ一定にした３次元画像表示用の左目用合成画像と右目用合成画像を生成することが可能となり、違和感のない３次元画像表示が実現される。
【図面の簡単な説明】
【００２９】
【図１】パノラマ画像の生成処理について説明する図である。
【図２】３次元（３Ｄ）画像表示に適用する左目用画像（Ｌ画像）と右目用画像（Ｒ画像）の生成処理について説明する図である。
【図３】３次元（３Ｄ）画像表示に適用する左目用画像（Ｌ画像）と右目用画像（Ｒ画像）の生成原理について説明する図である。
【図４】仮想撮像面を用いた逆モデルについて説明する図である。
【図５】パノラマ画像（３Ｄパノラマ画像）の撮影処理のモデルについて説明する図である。
【図６】パノラマ画像（３Ｄパノラマ画像）の撮影処理において撮影される画像と左目用画像および右目用画像の短冊の設定例について説明する図である。
【図７】短冊領域の連結処理と、３Ｄ左目用合成画像（３ＤパノラマＬ画像）および３Ｄ右目用合成画像（３ＤパノラマＲ画像）の生成処理例について説明する図である。
【図８】画像撮影時のカメラの回転半径Ｒと、焦点距離ｆと、基線長Ｂについて説明する図である。
【図９】様々な撮影条件に応じて変化するカメラの回転半径Ｒと、焦点距離ｆと、基線長Ｂについて説明する図である。
【図１０】本発明の画像処理装置の一実施例である撮像装置の構成例について説明する図である。
【図１１】本発明の画像処理装置の実行する画像撮影および合成処理シーケンスについて説明するフローチャートを示す図である。
【図１２】カメラの回転運動量θと並進運動量ｔと、回転半径Ｒとの対応関係について説明する図である。
【図１３】基線長Ｂと回転半径Ｒの相関を説明するグラフを示す図である。
【図１４】基線長Ｂと焦点距離ｆとの相関を説明するグラフを示す図である。
【発明を実施するための形態】
【００３０】
以下、図面を参照しながら、本発明の画像処理装置、撮像装置、および画像処理方法、並びにプログラムについて説明する。説明は以下の項目順に行う。
１．パノラマ画像の生成と３次元（３Ｄ）画像生成処理の基本構成について
２．カメラ移動により撮影した複数画像の短冊領域を利用した３Ｄ画像生成における問題点
３．本発明の画像処理装置の構成例について
４．画像撮影および画像処理シーケンスについて
５．回転運動量検出部と、並進運動量検出部の具体的構成例について
６．短冊間オフセットＤの算出処理の具体例について
【００３１】
［１．パノラマ画像の生成と３次元（３Ｄ）画像生成処理の基本構成について］
本発明は、撮像装置（カメラ）を移動させながら連続的に撮影した複数の画像を用い、各画像から短冊状に切り出した領域（短冊領域）を連結して３次元（３Ｄ）画像表示に適用する左目用画像（Ｌ画像）と右目用画像（Ｒ画像）を生成する処理に関する。
【００３２】
なお、カメラを移動させながら連続的に撮影した複数の画像を用いて２次元のパノラマ画像（２Ｄパノラマ画像）を生成することを可能としたカメラは、すでに実現され利用されている。まず、２次元合成画像として生成されるパノラマ画像（２Ｄパノラマ画像）の生成処理について図１を参照して説明する。図１には、
（１）撮影処理
（２）撮影画像
（３）２次元合成画像（２Ｄパノラマ画像）
これらを説明する図を示している。
【００３３】
ユーザは、カメラ１０をパノラマ撮影モードにして、カメラ１０を手に持ち、シャッターを押して図１（１）に示すように左（Ａ点）から右（Ｂ点）にカメラを移動させる。カメラ１０はパノラマ撮影モード設定下でユーザによるシャッター押下を検出すると、連続的な画像撮影を実行する。例えば、数１０〜１００枚程度の画像を連続的に撮影する。
【００３４】
これらの画像が図１（２）に示す画像２０である。これら複数の画像２０は、カメラ１０を移動させながら連続撮影した画像であり、異なる視点からの画像となる。例えば１００枚の異なる視点から撮影された画像２０がメモリ上に順次記録される。カメラ１０のデータ処理部は、図１（２）に示す複数画像２０をメモリから読み出して、各画像からパノラマ画像を生成するための短冊領域を切り出して、切り出した短冊領域を連結する処理を実行して図１（３）に示す２Ｄパノラマ画像３０を生成する。
【００３５】
図１（３）に示す２Ｄパノラマ画像３０は、２次元（２Ｄ）の画像であり、単に、撮影画像の一部を切り出して連結することで横長にした画像である。図１（３）に示す点線が画像の連結部を示している。各画像２０の切り出し領域を短冊領域と呼ぶ。
【００３６】
本発明の画像処理装置あるいは撮像装置は、この図１に示すと同様の画像撮影処理、すなわち、図１（１）に示すようにカメラを移動させながら連続撮影した複数の画像を利用して３次元（３Ｄ）画像表示に適用する左目用画像（Ｌ画像）と右目用画像（Ｒ画像）を生成する。
【００３７】
この左目用画像（Ｌ画像）と右目用画像（Ｒ画像）を生成する処理の基本構成について図２を参照して説明する。
図２（ａ）には、図１（２）に示すパノラマ撮影において撮影された１枚の画像２０を示している。
【００３８】
３次元（３Ｄ）画像表示に適用する左目用画像（Ｌ画像）と右目用画像（Ｒ画像）は、図１を参照して説明した２Ｄパノラマ画像の生成処理と同様、この画像２０から所定の短冊領域を切り出して連結することで生成する。
ただし、切り出し領域とする短冊領域は、左目用画像（Ｌ画像）と右目用画像（Ｒ画像）とでは異なる位置とする。
【００３９】
図２（ａ）に示すように、左目用画像短冊（Ｌ画像短冊）５１と、右目用画像短冊（Ｒ画像短冊）５２は、切り出し位置が異なっている。図２には１つの画像２０についてのみ示しているが、図１（２）に示すカメラを移動させて撮影した複数の画像各々について、異なる切り出し位置の左目用画像短冊（Ｌ画像短冊）と、右目用画像短冊（Ｒ画像短冊）を各々設定する。
【００４０】
その後、左目用画像短冊（Ｌ画像短冊）のみを集めて連結することで、図２（ｂ１）３Ｄ左目用パノラマ画像（３ＤパノラマＬ画像）を生成することができる。
また、右目用画像短冊（Ｒ画像短冊）のみを集めて連結することで、図２（ｂ２）３Ｄ右目用パノラマ画像（３ＤパノラマＲ画像）を生成することができる。
【００４１】
このように、カメラを移動させながら撮影した複数画像各々からの切り出し位置を異ならせて設定した短冊を連結することで、３次元（３Ｄ）画像表示に適用する左目用画像（Ｌ画像）と右目用画像（Ｒ画像）を生成することが可能となる。図３を参照してこの原理について説明する。
【００４２】
図３には、カメラ１０を移動させて２つの撮影地点（ａ），（ｂ）において被写体８０を撮影した状況を示している。（ａ）地点では被写体８０の画像は、カメラ１０の撮像素子７０の左目用画像短冊（Ｌ画像短冊）５１に左側から見た画像が記録される。次に、カメラ１０が移動した（ｂ）地点では被写体８０の画像は、カメラ１０の撮像素子７０の右目用画像短冊（Ｒ画像短冊）５２に右側から見た画像が記録される。
【００４３】
このように、同一被写体に対する異なる視点からの画像が撮像素子７０の所定領域（短冊領域）に記録される。
これらを個別に抽出、すなわち、左目用画像短冊（Ｌ画像短冊）のみを集めて連結することで、図２（ｂ１）３Ｄ左目用パノラマ画像（３ＤパノラマＬ画像）が生成され、右目用画像短冊（Ｒ画像短冊）のみを集めて連結することで、図２（ｂ２）３Ｄ右目用パノラマ画像（３ＤパノラマＲ画像）が生成される。
【００４４】
なお、図３では、理解を容易にするためカメラ１０が被写体８０の左側から右側に被写体をクロスする移動の設定として示しているが、このようにカメラ１０が被写体８０をクロスする移動を行うことは必須ではない。カメラ１０の撮像素子７０の所定領域に異なる視点からの画像が記録できれば、３Ｄ画像表示に適用する左目用画像と右目用画像を生成することができる。
【００４５】
次に、図４を参照して、以下の説明において適用する仮想撮像面を用いた逆モデルについて説明する。図４には、
（ａ）画像撮影構成
（ｂ）順モデル
（ｃ）逆モデル
これらの各図を示している。
【００４６】
図４（ａ）に示す画像撮影構成は、図３を参照して説明したと同様のパノラマ画像の撮影時の処理構成を示す図である。
図４（ｂ）は、図４（ａ）に示す撮影処理において実際にカメラ１０内の撮像素子７０に撮り込まれる画像の例を示している。
撮像素子７０には、図４（ｂ）に示すように左目用画像７２、右目用画像７３が上下反転して記録される。このような反転した画像を利用して説明すると混乱しやすいため、以下の説明では、図４（ｃ）に示す逆モデルを利用して説明する。
なお、この逆モデルは撮像装置の画像の解説等においては頻繁に利用されるモデルである。
【００４７】
図４（ｃ）に示す逆モデルは、カメラの焦点に対応する光学中心１０２の前方に仮想撮像素子１０１を設定し、この仮想撮像素子１０１に被写体像が撮り込まれるものと想定している。図４（ｃ）に示すように仮想撮像素子１０１には、カメラ前方左側の被写体Ａ９１が左側、カメラ前方右側の被写体Ｂ９２が右側に撮り込まれ、上下も反転しない設定となり、実際の被写体の位置関係をそのまま反映している。すなわち、仮想撮像素子１０１上の画像は、実際の撮影画像と同じ画像データである。
【００４８】
以下の説明では、この仮想撮像素子１０１を用いた逆モデルを適用して説明を行う。
ただし、図４（ｃ）に示すように、仮想撮像素子１０１上では、左目用画像（Ｌ画像）１１１は、仮想撮像素子１０１上の右側に撮り込まれ、右目用画像（Ｒ画像）１１２は仮想撮像素子１０１上の左側に撮り込まる。
【００４９】
［２．カメラ移動により撮影した複数画像の短冊領域を利用した３Ｄ画像生成における問題点］
次に、カメラ移動により撮影した複数画像の短冊領域を利用した３Ｄ画像生成における問題点について説明する。
【００５０】
パノラマ画像（３Ｄパノラマ画像）の撮影処理のモデルとして、図５に示す撮影モデルを想定する。図５に示すように、カメラ１００の光学中心１０２が回転中心である回転軸Ｐから距離Ｒ（回転半径）だけ離れた位置に設定されるようにカメラ１００を置く。
仮想撮像面１０１は光学中心１０２から、焦点距離ｆだけ回転軸Ｐから外側に設定される。
このような設定で、カメラ１００を回転軸Ｐ回りに右回り（ＡからＢ方向）に回転させて、連続的に複数枚の画像を撮影する。
【００５１】
各撮影ポイントにおいて、左目用画像短冊１１１、右目用画像短冊１１２の各画像が仮想撮像素子１０１上に記録される。
記録画像は例えば図６に示すような構成となる。
図６は、カメラ１００によって撮影された画像１１０を示している。なお、この画像１１０は仮想撮像面１０１上の画像と同じである。
画像１１０に対して、図６に示すように画像中心部から左にオフセットさせて短冊状に切り抜いた領域（短冊領域）を右目用画像短冊１１２とし、右にオフセットさせて短冊状に切り抜いた領域（短冊領域）を左目用画像短冊１１１とする。
【００５２】
なお、図６には、参考として２次元（２Ｄ）パノラマ画像生成時に利用する２Ｄパノラマ画像用短冊１１５を示している。
図６に示すように、２次元合成画像用の短冊である２Ｄパノラマ画像短冊１１５と左目用画像短冊１１１との距離、および２Ｄパノラマ画像短冊１１５と右目用画像短冊１１２との距離を、
「オフセット」、または「短冊オフセット」＝ｄ１，ｄ２
と定義する。
さらに、左目用画像短冊１１１と右目用画像短冊１１２との距離を、
「短冊間オフセット」＝Ｄ
と定義する。
なお、
短冊間オフセット＝（短冊オフセット）×２
Ｄ＝ｄ１＋ｄ２
となる。
【００５３】
短冊幅ｗは、２Ｄパノラマ画像短冊１１５と、左目用画像短冊１１１と、右目用画像短冊１１２ともすべて共通の幅ｗとなる。この短冊幅は、カメラの移動速度等によって変化する。カメラの移動速度が早い場合は短冊幅ｗが広くなり、遅い場合は狭くなる。この点については後段でさらに説明する。
【００５４】
短冊オフセットや短冊間オセットは様々な値に設定可能である。例えば短冊オフセットを大きくすれば、左目用画像と右目用画像の視差がより大きくなり、短冊オフセットを小さくすれば、左目用画像と右目用画像の視差が小さくなる。
【００５５】
短冊オフセット＝０とした場合は、
左目用画像短冊１１１＝右目用画像短冊１１２＝２Ｄパノラマ画像短冊１１５
となる。
この場合は、左目用画像短冊１１１を合成して得られる左目用合成画像（左目用パノラマ画像）と、右目用画像短冊１１２を合成して得られる右目用合成画像（右目用パノラマ画像）は全く同じ画像、すなわち、２Ｄパノラマ画像短冊１１５を合成して得られる２次元パノラマ画像と同じ画像となり、３次元画像表示には利用できなくなる。
なお、以下の説明では、短冊幅ｗや、短冊オフセット、短冊間オフセットの長さは画素数（ｐｉｘｅｌ）によって規定される値として説明する。
【００５６】
カメラ１００内のデータ処理部は、カメラ１００を移動させながら連続撮像された画像間の動きベクトルを求め、前述した短冊領域の絵柄が繋がるように位置あわせをしながら、各画像から切り出す短冊領域を順次決定し、各画像から切り出した短冊領域を連結する。
【００５７】
すなわち各画像から左目用画像短冊１１１のみを選択して連結合成して左目用合成画像（左目用パノラマ画像）を生成し、右目用画像短冊１１２のみを選択して連結合成して右目用合成画像（右目用パノラマ画像）を生成する。
【００５８】
図７（１）は短冊領域の連結処理例を示す図である。各画像の撮影時間間隔をΔｔとして、撮影時間：Ｔ＝０〜ｎΔｔの間にｎ＋１枚の画像を撮影したことを想定している。これらｎ＋１枚の各画像から取り出した短冊領域を連結する。
【００５９】
ただし、３Ｄ左目用合成画像（３ＤパノラマＬ画像）を生成する場合は、左目用画像短冊（Ｌ画像短冊）１１１のみを抽出して連結する。また、３Ｄ右目用合成画像（３ＤパノラマＲ画像）を生成する場合は、右目用画像短冊（Ｒ画像短冊）１１２のみを抽出して連結する。
【００６０】
このように左目用画像短冊（Ｌ画像短冊）１１１のみを集めて連結することで、図７（２ａ）３Ｄ左目用合成画像（３ＤパノラマＬ画像）が生成される。
また、右目用画像短冊（Ｒ画像短冊）１１２のみを集めて連結することで、図７（２ｂ）３Ｄ右目用合成画像（３ＤパノラマＲ画像）が生成される。
【００６１】
図６、図７を参照して説明したように、
画像１００の中心から右側にオフセットした短冊領域をつなぎ合わせて、図７（２ａ）３Ｄ左目用合成画像（３ＤパノラマＬ画像）が生成される。
画像１００の中心から左側にオフセットした短冊領域をつなぎ合わせて、図７（２ｂ）３Ｄ右目用合成画像（３ＤパノラマＲ画像）が生成される。
【００６２】
これら２枚の画像には、先に図３を参照して説明したように、基本的に同じ被写体が写っているが、同じ被写体でも互いに異なる位置から撮像されているので、視差が生じている。これら視差を有する２つの画像を３Ｄ（ステレオ）画像を表示可能な表示装置に表示することで、撮像対象の被写体を立体的に表示することができる。
【００６３】
なお、３Ｄ画像の表示方式には様々な方式がある。
例えば、偏光フィルタや、色フィルタにより左右の眼各々によって観察する画像を分離するパッシブ眼鏡方式に対応する３Ｄ画像表示方式、あるいは、液晶シャッターを左右交互に開閉して観察する画像を左右の眼交互に時間的に分離するアクティブ眼鏡方式に対応する３Ｄ画像表示方式などがある。
上述した短冊連結処理によって生成された左目用画像、右目用画像は、これらの各方式に適用可能である。
【００６４】
上述したようにカメラを移動させながら連続撮像された複数の画像の各々から短冊領域を切り出して左目用画像と右目用画像を生成することで、異なる視点、すなわち左目位置と右目位置から観察した左目用画像、右目用画像を生成することができる。
【００６５】
先に、図６を参照して説明したように、短冊オフセットを大きくすれば、左目用画像と右目用画像の視差がより大きくなり、短冊オフセットを小さくすれば、左目用画像と右目用画像の視差が小さくなる。
【００６６】
視差は、左目用画像と右目用画像の撮影位置間の距離である基線長に対応する。先に図５を参照して説明した１つのカメラを移動させて画像の撮影を行うシステムにおける基線長（仮想基線長）は図８に示す距離Ｂに対応する。
【００６７】
仮想基線長Ｂは、近似的に以下の式（式１）で求められる。
Ｂ＝Ｒ×（Ｄ／ｆ）・・・（式１）
ただし、
Ｒはカメラの回転半径（図８参照）
Ｄは短冊間オフセット（図８参照）（左目用画像短冊と右目用画像短冊との距離）
ｆは焦点距離（図８参照）
である。
【００６８】
例えばユーザが手に持ったカメラを移動させて撮影した画像を利用して左目用画像と右目用画像を生成する場合、上記の各パラメータ、すなわち回転半径Ｒや、焦点距離ｆは変化する値となる。すなわち、ズーム処理やワイド画像撮影処理等のユーザ操作により焦点距離ｆが変更される。ユーザがカメラ移動として行う振り回し動作が小振りの場合、大振りの場合で回転半径Ｒが異なる。
従って、これらＲ，ｆが変化すると、仮想基線長Ｂは、撮影毎に変動し最終的なステレオ画像の奥行き感を安定して提供することができなくなる。
【００６９】
上記式（式１）から理解されるように、カメラの回転半径Ｒが大きくなれば仮想基線長Ｂも比例して大きくなる。一方、焦点距離ｆが大きくなれば、仮想基線長Ｂは反比例して小さくなる。
【００７０】
カメラの回転半径Ｒと焦点距離ｆが異なる場合における仮想基線長Ｂの変化例を図９に示す。
図９には、
（ａ）回転半径Ｒ、焦点距離ｆが小さい場合の仮想基線長Ｂ
（ｂ）回転半径Ｒ、焦点距離ｆが大きい場合の仮想基線長Ｂ
これらのデータ例を示している。
前述したように、カメラの回転半径Ｒと仮想基線長Ｂは比例、一方、焦点距離ｆと仮想基線長Ｂは反比例の関係にあり、例えばユーザの撮影動作の中で、これらのＲ，ｆが変化すると、仮想基線長Ｂは様々な長さに変化してしまう。
このような様々な基線長を持つ画像を用いて左目用画像と右目用画像を生成すると、ある特定の距離にある被写体の距離間が前後に変動する不安定な画像となってしまうという問題点がある。
【００７１】
本発明は、このような撮影処理において撮影条件が変動しても、基線長の変動を防止または抑制し、安定した距離間の得られる左目用画像と右目用画像を生成する構成を提供する。以下、この処理の詳細について説明する。
【００７２】
［３．本発明の画像処理装置の構成例について］
まず、本発明の画像処理装置の一実施例である撮像装置の構成例について図１０を参照して説明する。
図１０に示す撮像装置２００は、先に図１を参照して説明したカメラ１０に相当し、例えばユーザが手に持ち、パノラマ撮影モードで複数の画像を連続撮影することが可能な構成を持つ。
【００７３】
被写体からの光はレンズ系２０１を経て撮像素子２０２に入射する．撮像素子２０２は例えばＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅ）やＣＭＯＳ（Ｃｏｍｐｌｅｍｅｎｔａｒｙ  Ｍｅｔａｌ  Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）センサによって構成される。
【００７４】
撮像素子２０２に入射した被写体像は、撮像素子２０２によって電気信号に変換される。なお、図示しないが、撮像素子２０２は所定の信号処理回路を有し、信号処理回路において変換された電気信号をさらにデジタル画像データに変換して、画像信号処理部２０３に供給する。
【００７５】
画像信号処理部２０３では、ガンマ補正や輪郭強調補正等の画像信号処理を行い、信号処理結果としての画像信号を表示部２０４に表示する。
さらに、画像信号処理部２０３の処理結果としての画像信号は、
合成処理に適用するための画像メモリである画像メモリ（合成処理用）２０５、
連続撮影された各画像間の移動量を検出するための画像メモリである画像メモリ（移動量検出用）２０６、
各画像間の移動量を算出する移動量算出部２０７、
これらの各部に提供される。
【００７６】
移動量検出部２０７は、画像信号処理部２０３から供給される画像信号とともに、画像メモリ（移動量検出用）２０６に保存された１フレーム前の画像を取得し、現在の画像と１フレーム前の画像の移動量を検出する。例えば連続して撮影された２つの画像を構成する画素間のマッチング処理、すなわち同一被写体の撮影領域を判別するマッチング処理を実行して、各画像間での移動した画素数を算出するものである。なお、基本的には被写体は静止していると仮定した処理を行う。移動被写体が存在する場合は、画像全体の動きベクトルと異なる動きベクトルが検出されるが、これらの移動被写体に対応する動きベクトルは検出対象外として処理を行う。すなわち、カメラ移動に伴って発生する画像全体の動きに対応する動きベクトル（ＧＭＶ：グローバルモーションベクトル）を検出する。
【００７７】
なお移動量は例えば移動画素数として算出する。画像ｎの移動量は、画像ｎと、先行画像ｎ−１との比較により実行し、検出された移動量（画素数）を画像ｎに対応する移動量として移動量メモリ２０８に格納する。
【００７８】
なお、画像メモリ（合成処理用）２０５には、連続撮影された画像の合成処理、すなわちパノラマ画像を生成するための画像を保存するメモリである。この画像メモリ（合成処理用）２０５は、パノラマ撮影モードで撮影された例えばｎ＋１枚の画像のすべての画像を保存する構成としてもよいが、例えば画像の端部を切り落とし、パノラマ画像の生成に必要となる短冊領域を確保できるような画像の中央領域のみを選択して保存しておく設定としてもよい。このような設定とすることで、必要とするメモリ容量を削減することが可能となる。
【００７９】
また、画像メモリ（合成処理用）２０５は、撮影画像データのみならず、焦点距離［ｆ］等の撮影パラメータ等も画像の属性情報として画像に対応づけて記録される。これ等のパラメータは画像データとともに画像合成部２２０に提供される。
【００８０】
回転運動量検出部２１１、並進運動量検出部２１２は、例えばそれぞれ撮像装置２００に備えられたセンサ、あるいは撮影画像の解析を行う画像解析部として公正される。
【００８１】
センサとして構成される場合、回転運動量検出部２１１は、カメラのピッチ／ロール／ヨーといったカメラの姿勢を検出する姿勢検出センサである。並進運動量検出部２１２は、カメラの移動情報として世界座標系に対する動きを検出する動き検出センサである。回転運動量検出部２１１の検出情報と、並進運動量検出部２１２の検出情報は、ともに画像合成部２２０に提供される。
【００８２】
なお、これらの回転運動量検出部２１１の検出情報と、並進運動量検出部２１２の検出情報は、画像の撮影時に撮影画像とともに撮影画像の属性情報として画像メモリ（合成処理用）２０５に格納し、画像メモリ（合成処理用）２０５から画像合成部２２０に合成対象の画像とともに検出情報を入力する構成としてもよい。
【００８３】
また、回転運動量検出部２１１と、並進運動量検出部２１２は、センサではなく画像解析処理を実行する画像解析部によって構成してもよい。回転運動量検出部２１１と、並進運動量検出部２１２は、撮影画像の解析によってセンサ検出情報と同様の情報を取得して、取得情報を画像合成部２２０に提供する。この場合、回転運動量検出部２１１と、並進運動量検出部２１２は、画像メモリ（移動量検出用）２０６から画像データを入力して画像解析を実行する。これらの処理の具体例については後段で説明する。
【００８４】
撮影終了後、画像合成部２２０は、画像メモリ（合成処理用）２０５から画像を取得し、さらにその他の必要情報を取得して、画像メモリ（合成処理用）２０５から取得した画像から短冊領域を切り出して連結する画像合成処理を実行する。この処理により、左目用合成画像と、右目用合成画像を生成する。
【００８５】
画像合成部２２０は、撮影終了後に、画像メモリ(合成処理用)２０５から撮影中に保存された複数の画像（あるいは部分画像）とともに、移動量メモリ２０８に保存された各画像対応の移動量、さらに回転運動量検出部２１１と、並進運動量検出部２１２の検出情報（センサ検出またはむ画像解析によって取得された情報）を入力する。
【００８６】
画像合成部２２０は、これらの入力情報を用いて連続して撮影された画像に左目用画像短冊と右目用画像短冊を設定し、これらを切り出して連結合成する処理を実行して左目用合成画像（左目用パノラマ画像）と、右目用合成画像（右目用パノラマ画像）を生成する。さらに、各画像についてＪＰＥＧ等の圧縮処理を行った後、記録部（記録メディア）２２１に記録する。
なお、画像合成部２２０の具体的構成例と処理については後段で詳細に説明する。
【００８７】
記録部（記録メディア）２２１は、画像合成部２２０において合成された合成画像、すなわち、左目用合成画像（左目用パノラマ画像）と、右目用合成画像（右目用パノラマ画像を保存する。
記録部（記録メディア）２２１は、デジタル信号を記録可能な記録媒体であれば、どのような記録媒体でも良く、例えばハードディスク、光磁気ディスク、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）、ＭＤ（Ｍｉｎｉ  Ｄｉｓｋ  ）、半導体メモリ、磁気テープといった記録媒体を用いることができる。
【００８８】
なお、図１０には示していないが、図１０に示す構成以外に撮像装置２００はユーザによる操作の可能なシャッターや、ズーム設定、モード設定処理などの各種入力を行なうための入力操作部、さらに、撮像装置２００において実行される処理の制御を行う制御部や、他の各構成部での処理のプログラム、パラメータを記録した記憶部（メモリ）等を有する。
【００８９】
図１０に示す撮像装置２００の各構成部の処理やデータ入出力は、撮像装置２００内の制御部の制御に従って行われる。制御部は、撮像装置２００内のメモリに予め格納されたプログラムを読み出して、プログラムに従って、撮影画像の取得、データ処理、合成画像の生成、生成した合成画像の記録処理、あるいは表示処理等、撮像装置２００において実行される処理の全般的な制御を実行する。
【００９０】
［４．画像撮影および画像処理シーケンスについて］
次に、図１１に示すフローチャートを参照して本発明の画像処理装置の実行する画像撮影および合成処理シーケンスの一例について説明する。
図１１に示すフローチャートに従った処理は、例えば図１０に示す撮像装置２００内の制御部の制御のもとに実行される。
図１１に示すフローチャートの各ステップの処理について説明する。
まず、画像処理装置（例えば撮像装置２００）は電源ＯＮにより、ハードウェアの診断や初期化を行った後、ステップＳ１０１へ移行する。
【００９１】
ステップＳ１０１では、各種の撮影パラメータを計算する。このステップＳ１０１では、例えば露出計により識別された明るさに関する情報を取得し、絞り値やシャッター速度等の撮影パラメータを計算する。
【００９２】
次にステップＳ１０２へ移行し、制御部は、ユーザによるシャッター操作が行われたか否かを判定する。なお、ここでは、既に３Ｄ画像パノラマ撮影モードに設定されているものとする。
３Ｄ画像パノラマ撮影モードではユーザのシャッター操作により複数毎の画像を連続撮影し、撮影画像から左目用画像短冊と右目用画像短冊を切り出して３Ｄ画像表示に適用可能な左目用合成画像（パノラマ画像）と右目用合成画像（パノラマ画像）を生成して記録する処理が実行される。
【００９３】
ステップＳ１０２において、制御部がユーザによるシャッター操作の検出がなされない場合は、ステップＳ１０１に戻る。
一方、ステップＳ１０２において、制御部がユーザによるシャッター操作があったことを検出するとステップＳ１０３に進む。
ステップＳ１０３において、制御部は、ステップＳ１０１において計算したパラメータに基づく制御を行い撮影処理を開始する。具体的には、例えば、図１０に示すレンズ系２０１の絞り駆動部の調整等を実行して、画像の撮影を開始する。
【００９４】
画像の撮影処理は、連続的に複数の画像を撮影する処理として行われる。図１０に示す撮像素子２０２から連続撮影画像各々に対応する電気信号が、順次読み出されて画像信号処理部２０３においてガンマ補正や輪郭強調補正等の処理が実行され、処理結果が表示部２０４に表示されるとともに、各メモリ２０５，２０６、移動量検出部２０７に順次、供給される。
【００９５】
次にステップＳ１０４に移行し、画像間移動量を算出する。この処理は、図１０に示す移動量検出部２０７の処理である。
移動量検出部２０７は、画像信号処理部２０３から供給される画像信号とともに、画像メモリ（移動量検出用）２０６に保存された１フレーム前の画像を取得し、現在の画像と１フレーム前の画像の移動量を検出する。
【００９６】
なお、ここで算出する移動量は、前述したように例えば連続して撮影された２つの画像を構成する画素間のマッチング処理、すなわち同一被写体の撮影領域を判別するマッチング処理を実行して、各画像間での移動した画素数を算出するものである。なお、基本的には被写体は静止していると仮定した処理を行う。移動被写体が存在する場合は、画像全体の動きベクトルと異なる動きベクトルが検出されるが、これらの移動被写体に対応する動きベクトルは検出対象外として処理を行う。すなわち、カメラ移動に伴って発生する画像全体の動きに対応する動きベクトル（ＧＭＶ：グローバルモーションベクトル）を検出する。
【００９７】
なお移動量は例えば移動画素数として算出する。画像ｎの移動量は、画像ｎと、先行画像ｎ−１との比較により実行し、検出された移動量（画素数）を画像ｎに対応する移動量として移動量メモリ２０８に格納する。
この移動利用保存処理がステップＳ１０５の保存処理に対応する。ステップＳ１０５では、ステップＳ１０４で検出した画像間の移動量を各連写画像のＩＤと関連付けて、図１０に示す移動量メモリ２０８に保存する。
【００９８】
次に、ステップＳ１０６に移行し、ステップＳ１０３において撮影され、画像信号処理部２０３において処理された画像を図１０に示す画像メモリ（合成処理用）２０５に格納する。なお、前述したように、画像メモリ（合成処理用）２０５は、パノラマ撮影モード（または３Ｄ画像パノラマ撮影モード）で撮影された例えばｎ＋１枚の画像のすべての画像を保存する構成としてもよいが、例えば画像の端部を切り落とし、パノラマ画像（３Ｄパノラマ画像）の生成に必要となる短冊領域を確保できるような画像の中央領域のみを選択して保存しておく設定としてもよい。このような設定とすることで、必要とするメモリ容量を削減することが可能となる。なお、画像メモリ（合成処理用）２０５には、ＪＰＥＧ等の圧縮処理を行った後、保存する構成としてもよい。
【００９９】
次にステップＳ１０７に移行し、制御部は、ユーザによるシャッターの押圧が継続しているか否を判定する。すなわち、撮影終了のタイミングを判別する。
ユーザによるシャッターの押圧が継続している場合は、撮影を継続させるべくステップＳ１０３へ戻り、被写体の撮像を繰り返す。
一方、ステップＳ１０７において、シャッターの押圧が終了していると判断すると、撮影の終了動作へ移行すべくステップＳ１０８へ進む。
【０１００】
パノラマ撮影モードでの連続画像撮影が終了すると、ステップＳ１０８に進む。
ステップＳ１０８において、画像合成部２２０は、３Ｄ画像とする左目用画像と右目用画像の短冊領域のオフセット量、すなわち左目用画像と右目用画像の短冊領域間の距離（短冊間オフセット）：Ｄを算出する。
【０１０１】
なお、先に図６を参照して説明したように、本明細書においては、２次元合成画像用の短冊である２Ｄパノラマ画像短冊１１５と左目用画像短冊１１１との距離、および２Ｄパノラマ画像短冊１１５と右目用画像短冊１１２との距離を、
「オフセット」、または「短冊オフセット」＝ｄ１，ｄ２とし、
左目用画像短冊１１１と右目用画像短冊１１２との距離を、
「短冊間オフセット」＝Ｄ
と定義している。
なお、
短冊間オフセット＝（短冊オフセット）×２
Ｄ＝ｄ１＋ｄ２
となる。
【０１０２】
ステップＳ１０８における左目用画像と右目用画像の短冊領域間の距離（短冊間オフセット）：Ｄの算出処理は以下のように実行される。
【０１０３】
先に図８、および式（式１）を用いて説明したように、基線長（仮想基線長）は図８に示す距離Ｂに対応し、仮想基線長Ｂは、近似的に以下の式（式１）で求められる。
Ｂ＝Ｒ×（Ｄ／ｆ）・・・（式１）
ただし、
Ｒはカメラの回転半径（図８参照）
Ｄは短冊間オフセット（図８参照）（左目用画像短冊と右目用画像短冊との距離）
ｆは焦点距離（図８参照）
である。
【０１０４】
ステップＳ１０８における左目用画像と右目用画像の短冊領域間の距離（短冊間オフセット）：Ｄの算出処理に際しては、仮想基線長Ｂを固定または変動幅を小さくするように調整した値を算出する。
【０１０５】
前述したように、カメラの回転半径Ｒ、および焦点距離ｆは、ユーザによるカメラの撮影条件に従って変更されるパラメータである。
ステップＳ１０８では、画像撮影時におけるカメラの回転半径Ｒ、および焦点距離ｆの変化した場合にも、仮想基線長Ｂの値が変化しない短冊間オフセットＤ＝ｄ１＋ｄ２の値、あるいは変化量を小さくするように短冊間オフセットＤ＝ｄ１＋ｄ２の値を算出する。
【０１０６】
前述した関係式、すなわち、
Ｂ＝Ｒ×（Ｄ／ｆ）・・・（式１）
上記式に従えば、
Ｄ＝Ｂ（ｆ／Ｒ）・・・（式２）
ステップＳ１０８では、上記式（式２）において、例えばＢを固定値として、画像撮影時の撮影条件から得られる焦点距離ｆ、回転半径Ｒを入力または算出して短冊間オフセットＤ＝ｄ１＋ｄ２を算出する。
【０１０７】
なお、焦点距離ｆは、例えば撮影画像の属性情報として、画像メモリ（合成処理用）２０５から画像合成部２２０へ入力される。
また、半径Ｒは、回転運動量検出部２１１、並進運動量検出部２１２の検出情報に基づいて画像合成部２２０において算出する。あるいは、回転運動量検出部２１１、並進運動量検出部２１２において算出し、算出値を画像属性情報として画像メモリ（合成処理用）２０５に格納し、画像メモリ（合成処理用）２０５から画像合成部２２０へ入力する設定としてもよい。なお、半径Ｒの算出処理の具体例については後述する。
【０１０８】
ステップＳ１０８において、左目用画像と右目用画像の短冊領域間の距離である短冊間オフセットＤの算出が完了すると、ステップＳ１０９に進む。
【０１０９】
ステップＳ１０９では、撮影画像を利用した第１画像合成処理を行う。さらに、ステップＳ１１０に進み、撮影画像を利用した第２画像合成処理を行う。
これらステップＳ１０９〜Ｓ１１０の画像合成処理は、３Ｄ画像表示に適用する左目用合成画像と右目用合成画像の生成処理である。合成画像は例えばパノラマ画像として生成される。
【０１１０】
前述したように、左目用合成画像は、左目用画像短冊のみを抽出して連結する合成処理により生成される。右目用合成画像は、右目用画像短冊のみを抽出して連結する合成処理により生成される。これらの合成処理の結果、例えば図７（２ａ），（２ｂ）に示す２つのパノラマ画像が生成されることになる。
【０１１１】
ステップＳ１０９〜Ｓ１１０の画像合成処理は、ステップＳ１０２のシャッター押下判定がＹｅｓとなってからステップＳ１０７でシャッター押下終了が確認されるまでの連続画像撮影中に画像メモリ（合成処理用）２０５に保存された複数の画像（または部分画像）を利用して実行される。
【０１１２】
この合成処理に際して、画像合成部２２０は、複数の画像各々に関連づけられた移動量を移動量メモリ２０８から取得し、さらに、ステップＳ１０８において算出した短冊間オフセットＤ＝ｄ１＋ｄ２の値を入力する。短冊間オフセットＤは、画像撮影時の撮影条件から得られる焦点距離ｆ、回転半径Ｒに基づいて決定した値である。
【０１１３】
例えばステップＳ１０９では、オフセットｄ１を適用して左目用画像の短冊位置を決定し、ステップＳ１１０では、フセットｄ１を適用して左目用画像の短冊位置を決定する。
なお、ｄ１＝ｄ２としてもよいが、必ずしもｄ１＝ｄ２とする必要はない。
Ｄ＝ｄ１＋ｄ２の条件を満足すればもｄ１，ｄ２の値は異なっていてもよい。
【０１１４】
画像合成部２２０は、移動量および、焦点距離ｆ、回転半径Ｒに基づいて算出した短冊間オフセットＤ＝ｄ１＋ｄ２に基づいて各画像の切り出し領域としての短冊領域を決定する。
すなわち、左目用合成画像を構成するための左目画像用短冊と右目用合成画像を構成するための右目画像用短冊の各短冊領域を決定する。
左目用合成画像を構成するための左目画像用短冊は、画像中央から右側へ所定量オフセットした位置に設定する。
右目用合成画像を構成するための右目画像用短冊は、画像中央から左側へ所定量オフセットした位置に設定する。
【０１１５】
画像合成部２２０は、この短冊領域の設定処理に際して、３Ｄ画像として成立する左目用画像と右目用画像の生成条件を満たすオフセット条件を満たすように短冊領域を決定する。
【０１１６】
画像合成部２２０は、各画像について左目用および右目用画像短冊を切り出して連結することで画像合成を行い、左目用合成画像と右目用合成画像を生成する。
なお、画像メモリ（合成処理用）２０５に保存された画像（または部分画像）がＪＰＥＧ等で圧縮されたデータである場合は、処理速度の高速化を図るため、ステップＳ１０４で求められた画像間の移動量に基づいて、ＪＰＥＧ等の圧縮を解凍する画像領域を、合成画像として利用する短冊領域のみに設定する適応的な解凍処理を実行する構成としてもよい。
【０１１７】
ステップＳ１０９、Ｓ１１０の処理によって、３Ｄ画像表示に適用する左目用合成画像と右目用合成画像が生成される。
最後に、次にステップＳ１１１に移行し、ステップＳ１０９、Ｓ１１０で合成された画像を適切な記録フォーマット（例えば、ＣＩＰＡ  ＤＣ−００７  Ｍｕｌｔｉ−Ｐｉｃｔｕｒｅ  Ｆｏｒｍａｔ等）に従って生成し、記録部（記録メディア）２２１に格納する。
【０１１８】
以上のようなステップを実行すれば、３Ｄ画像表示に適用するための左目用、および右目用の２枚の画像が合成できる。
【０１１９】
［５．回転運動量検出部と、並進運動量検出部の具体的構成例について］
次に、回転運動量検出部２１１と、並進運動量検出部２１２の具体的構成の具体例について説明する。
【０１２０】
回転運動量検出部２１１はカメラの回転運動量を検出し、並進運動量検出部２１２はカメラの並進運動量を検出する。
これらの各検出部における検出構成の具体例として以下の３つの例について説明する。
（例１）センサによる検出処理例
（例２）画像解析による検出処理例
（例３）センサと画像解析の併用による検出処理例
以下、これらの処理例について順次説明する。
【０１２１】
（例１）センサによる検出処理例
まず、回転運動量検出部２１１と、並進運動量検出部２１２をセンサとして構成する例について説明する。
カメラの並進運動は、例えば加速度センサを用いることで検知することができる。あるいは、人工衛星からの電波を用いたＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）により緯度経度から算出することが可能である。なお、加速度センサを適用した並進運動量の検出処理については例えば特開２０００−７８６１４に開示されている。
【０１２２】
また、カメラの回転運動（姿勢）に関しては、地磁気センサを用いて、地磁気の方向を基準として方角を測定する方法や、重力の方向を基準として加速度計を応用して傾斜角を検出する方法や、振動ジャイロと加速度センサを組み合わせた角度センサを用いる方法や、角速度センサを用いて初期状態の基準となる角度から比較を行い算出する方法がある。
【０１２３】
このように、回転運動量検出部２１１としては地磁気センサ、加速度計、振動ジャイロ、加速度センサ、角度センサ、角速度センサ、これらのセンサまたは各センサの組み合わせによって構成することができる。
また、並進運動量検出部２１２は、加速度センサ、ＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）によって構成することが可能である。
これらのセンサの検出情報としての回転運動量と、並進運動量が直接、あるいは画像メモリ（合成処理用）２０５を介して画像合成部２１０に提供され、画像合成部２１０においてこれ等の検出値に基づいて合成画像の生成対象となる画像の撮影時における回転半径Ｒを算出する。
回転半径Ｒの算出処理については後述する。
【０１２４】
（例２）画像解析による検出処理例
次に、回転運動量検出部２１１と、並進運動量検出部２１２をセンサではなく、撮影画像を入力して画像解析を実行する画像解析部として構成する例について説明する。
【０１２５】
本例は、図１０の回転運動量検出部２１１と、並進運動量検出部２１２は、画像メモリ（移動量検出用）２０５から合成処理対象となる画像データを入力して入力画像の解析を実行して、その画像が撮影された時点におけるカメラの回転成分と並進成分を取得する。
【０１２６】
具体的には、まず、合成対象となる連続撮影された画像からハリスコーナー検出器等を用いて特徴量を抽出する。さらに各画像の特徴量間のマッチングや、各画像を等間隔分割して分割領域単位のマッチング（ブロックマッチング）を用いることで、各画像間のオプティカルフローを算出する。さらにカメラモデルが透視投影像であることを前提として、非線形方程式を繰り返し法により解き、回転成分と並進成分を抽出することができる。なお、この手法については、例えば以下の文献に詳細が記載され、この手法を適用することが可能である。
（"Multi View Geometry in Computer Vision", Richard Hartley and Andrew Zisserman, Cambridge University Press）。
【０１２７】
あるいは、より簡便には、被写体を平面と仮定することで、オプティカルフローからホモグラフィー（Ｈｏｍｏｇｒａｐｈｙ）を算出し、回転成分と並進成分を算出する方法を適用してもよい。
【０１２８】
本処理例を実行する場合は、図１０の回転運動量検出部２１１と、並進運動量検出部２１２はセンサではなく画像解析部として構成される。回転運動量検出部２１１と、並進運動量検出部２１２は、画像メモリ（移動量検出用）２０５から合成処理対象となる画像データを入力して入力画像の解析を実行して画像撮影時におけるカメラの回転成分と並進成分を取得する。
【０１２９】
（例３）センサと画像解析の併用による検出処理例
次に、回転運動量検出部２１１と、並進運動量検出部２１２がセンサ機能と、画像解析部としての両機能を備え、センサ検出情報と画像解析情報の両者を取得する処理例について説明する。
ではなく、撮影画像を入力して画像解析を実行する画像解析部として構成する例について説明する。
【０１３０】
角速度センサにより得られた角速度データを基に角速度が０になるように連写画像を補正処理により並進運動だけを含む連写画像とし、加速度センサにより得られた加速度データと補正処理後の連写画像から並進運動を算出することができる。なお、この処理については、例えば特開２０００−２２２５８０号公報に開示されている
【０１３１】
本処理例は、回転運動量検出部２１１と、並進運動量検出部２１２中、並進運動量検出部２１２については角速度センサと画像解析部を備えた構成とし、これらの構成により、上記特開２０００−２２２５８０号公報に開示された手法を適用して画像撮影時の並進運動量を算出するものである。
【０１３２】
回転運動量検出部２１１については、上記（例１）センサによる検出処理例、または、（例２）画像解析による検出処理例、これらの知り例において説明したいずれかのセンサ構成、または画像解析部構成とする。
【０１３３】
［６．短冊間オフセットＤの算出処理の具体例について］
次に、カメラの回転運動量と並進運動量からの短冊間オフセットＤ＝ｄ１＋ｄ２の算出処理について説明する。
【０１３４】
画像合成部２２０は上述した回転運動量検出部２１１と、並進運動量検出部２１２における処理によって取得または算出された画像撮影時の撮像装置(カメラ)の回転運動量と並進運動量から左目用画像と右目用画像を生成する短冊切り出し位置を決定するための短冊間オフセットＤ＝ｄ１＋ｄ２を算出する。
【０１３５】
カメラの回転運動量と並進運動量が求まると、次式(式３)を用いてカメラの回転半径Ｒを算出することが可能となる。
Ｒ＝ｔ／（２ｓｉｎ（θ／２））・・・（式３）
ただし、
ｔ：並進運動量
θ：回転運動量
である。
【０１３６】
図１２に並進運動量ｔと、回転運動量θの例を示す。図１２に示す２つのカメラ位置において撮影された２つの画像を合成対象として利用して左目用画像と右目用画像を生成する場合、並進運動量ｔと、回転運動量θは、図１２に示すデータとなる。これらのデータｔ，θに基づいて上記の式（式３）を計算することで、図１２に示すカメラ位置において撮影された画像において適用する左目用画像と右目用画像間の短冊間オフセットＤ＝ｄ１＋ｄ２を算出する。
【０１３７】
上記式（式３）によって算出した短冊間オフセットＤは合成対象とする撮影画像単位で変化するが、その結果、先に説明した式（式１）によって算出される基線長Ｂ、すなわち、
Ｂ＝Ｒ×（Ｄ／ｆ）・・・（式１）
上記仮想基線長Ｂの値はほぼ一定とすることができる。
従ってこの処理によって得られる左目用画像と右目用画像の仮想基線長はすべての合成画像においてほぼ一定に保持されることになり、安定した距離間を持つ３次元画像表示用データを生成することができる。
【０１３８】
このように、本発明に従えば、上記式（式３）に従って求まる回転半径Ｒとカメラの撮影画像の属性情報として画像に対応付けて記録されるパラメータである焦点距離ｆに基づいて、基線長Ｂを一定にした画像を生成することが可能となる。
【０１３９】
図１３に基線長Ｂと回転半径Ｒの相関を示すグラフ、
図１４に基線長Ｂと焦点距離ｆとの相関を示すグラフ、
これらの図を示す。
【０１４０】
図１３に示すように、基線長Ｂと回転半径Ｒとは比例関係にあり、図１４に示すように、基線長Ｂと焦点距離ｆとは反比例の関係にある。
本発明の処理では、基線長Ｂを一定にするための処理として、回転半径Ｒや焦点距離ｆが変更された場合に短冊オフセットＤを変更する処理を実行する。
【０１４１】
図１３は、焦点距離ｆを固定とした場合の基線長Ｂと回転半径Ｒの相関を示すグラフである。
例えば出力する合成画像の基線長を図１３に横ラインとして示す７０ｍｍとして設定したとする。
この場合、回転半径Ｒに応じて短冊間オフセットＤは、図１３に示す（ｐ１）〜（ｐ２）の間で示される１４０〜８０ｐｉｘｅｌの各値に設定することで、基線長Ｂを一定に保持することが可能となる。
【０１４２】
図１４は短冊間オフセットＤ＝９８ｐｉｘｅｌとして固定した場合の基線長Ｂと焦点距離ｆとの相関を示すグラフである。回転半径けＲ＝１００〜６００ｍｍの場合の基線長Ｂと焦点距離ｆとの相関を示している。
【０１４３】
例えば回転半径Ｒ＝１００ｍｍで、焦点距離ｆ＝２．０ｍｍの点（ｑ１）の条件で撮影された場合には短冊間オフセットＤ＝９８ｍｍとすることが、基線長を７０ｍｍに維持するための条件となる。
同様に、回転半径Ｒ＝６０ｍｍで、焦点距離ｆ＝９０ｍｍの点（ｑ２の条件で撮影された場合には短冊間オフセットＤ＝９８ｍｍとすることが、基線長を７０ｍｍに維持するための条件となる。
【０１４４】
このように、本発明の構成では、ユーザが様々な条件で撮影した画像を合成して３Ｄ画像としての左目用画像と右目用画像を生成する構成において、短冊間オフセットを適宜調整することで基線長をほぼ一定に保持した画像生成することが可能となる。
このような処理を実行することで、３Ｄ画像表示に適用できる視点の異なる位置からの画像である左目用合成画像と右目用合成画像を、観察した場合に距離間が変動しない安定した画像として生成することが可能となる。
【０１４５】
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
【０１４６】
また、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。例えば、プログラムは記録媒体に予め記録しておくことができる。記録媒体からコンピュータにインストールする他、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネットといったネットワークを介してプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
【０１４７】
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【産業上の利用可能性】
【０１４８】
以上、説明したように、本発明の一実施例の構成によれば、複数の画像から切り出した短冊領域を連結して基線長をほぼ一定にした３次元画像表示用の左目用合成画像と右目用合成画像を生成する装置および方法が提供される。複数画像から切り出した短冊領域を連結して３次元画像表示用の左目用合成画像と右目用合成画像を生成する。画像合成部は、各撮影画像に設定した左目用画像短冊の連結合成処理により３次元画像表示に適用する左目用合成画像を生成し、各撮影画像に設定した右目用画像短冊の連結合成処理により３次元画像表示に適用する右目用合成画像を生成する。画像合成部は、左目用合成画像と右目用合成画像の撮影位置間の距離に相当する基線長をほぼ一定とするように画像の撮影条件に応じて左目用画像短冊と右目用画像短冊の短冊間距離である短冊間オフセット量を変更して左目用画像短冊と右目用画像短冊の設定処理を行なう。この処理により、基線長をほぼ一定にした３次元画像表示用の左目用合成画像と右目用合成画像を生成することが可能となり、違和感のない３次元画像表示が実現される。
【符号の説明】
【０１４９】
１０  カメラ
２０  画像
２１  ２Ｄパノラマ画像用短冊
３０  ２Ｄパノラマ画像
５１  左目用画像短冊
５２  右目用画像短冊
７０  撮像素子
７２  左目用画像
７３  右目用画像
１００  カメラ
１０１  仮想撮像面
１０２  光学中心
１１０  画像
１１１  左目用画像短冊
１１２  右目用画像短冊
１１５  ２Ｄパノラマ画像用短冊
２００  撮像装置
２０１  レンズ系
２０２  撮像素子
２０３  画像信号処理部
２０４  表示部
２０５  画像メモリ（合成処理用）
２０６  画像メモリ（移動量検出用）
２０７  移動量検出部
２０８  移動量メモリ
２１１  回転運動量検出部
２１２  並進運動量検出部
２２０  画像合成部
２２１  記録部
【図１】
0005510238.tif 000002
【図２】
0005510238.tif 000003
【図３】
0005510238.tif 000004
【図４】
0005510238.tif 000005
【図７】
0005510238.tif 000006
【図１０】
0005510238.tif 000007
【図１１】
0005510238.tif 000008
【図１３】
0005510238.tif 000009
【図１４】
0005510238.tif 000010
【図５】
0005510238.tif 000011
【図６】
0005510238.tif 000012
【図８】
0005510238.tif 000013
【図９】
0005510238.tif 000014
【図１２】
0005510238.tif 000015