(57)【要約】【課題】パノラマ撮影の際に基準方向に対して撮像装置の光軸が傾いた状態で撮影が行われた場合でも、高品位のパノラマ画像を生成可能にすることを課題とする。【解決手段】映像信号処理回路（１１６）は撮影方向を順次変更しながら撮影された複数の画像を取得する。マイクロコンピュータ（１２３）は、複数の画像が順に撮影された際に隣接した撮影方向の間の移動量を算出し、複数の各画像が撮像された際の撮像装置の姿勢を基に、各画像に対する射影変換の係数を算出する。そして、映像信号処理回路（１１６）は、その係数を用いて、各画像の台形歪みを補正する射影変換を行い、また、移動量を基に、射影変換後の撮影方向が隣接した画像間で位置合わせを行い、さらに、位置合わせが行われた各画像を、撮影方向が変更された順に繋ぎ合わせるように合成する。【選択図】図１
2019033344.tif 000002
【特許請求の範囲】
【請求項１】
撮影方向を順次変更しながら撮影された複数の画像を取得する取得手段と、
前記複数の各画像が撮像された際の撮像装置の姿勢を検出する姿勢検出手段と、
前記複数の画像が順に撮影された際の、隣接した撮影方向の間の移動量を算出する移動量算出手段と、
前記各画像に対する射影変換の係数を算出する係数算出手段と、
前記係数を用いて、前記各画像に対する射影変換を行う変換手段と、
前記移動量を基に、前記射影変換がなされた後の前記撮影方向が隣接した画像間で、位置合わせを行う位置合わせ手段と、
前記位置合わせが行われた各画像を、前記撮影方向が変更された順に繋ぎ合わせるように合成する合成手段と、を有し、
前記係数算出手段は、前記画像ごとに前記検出された前記姿勢の情報を基に、前記各画像に対する前記係数を算出し、
前記変換手段は、前記姿勢の情報を基に算出された前記係数を用いて、前記各画像に生じている台形状の歪みを補正する射影変換を行うことを特徴とする画像処理装置。
【請求項２】
前記撮像された各画像を仮想円筒上に投影する円筒変換手段を有し、
前記変換手段は、前記円筒変換がなされた画像に対して前記射影変換を行うことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
撮影方向を順次変更しながら撮影された複数の画像を取得する取得手段と、
前記複数の各画像が撮像された際の撮像装置の姿勢を検出する姿勢検出手段と、
前記複数の画像が順に撮影された際の、隣接した撮影方向の間の移動量を算出する移動量算出手段と、
前記各画像を仮想の円錐台に投影する幾何変換の係数を算出する係数算出手段と、
前記係数を用いて、前記各画像を仮想の円錐台上に投影する幾何変換を行う変換手段と、
前記移動量を基に、前記幾何変換がなされた後の前記撮影方向が隣接した画像間で、位置合わせを行う位置合わせ手段と、
前記位置合わせが行われた各画像を、前記撮影方向が変更された順に繋ぎ合わせるように合成する合成手段と、を有し、
前記係数算出手段は、前記画像ごとに前記検出された前記姿勢の情報を基に、前記各画像を仮想の円錐台に投影する前記係数を算出することを特徴とする画像処理装置。
【請求項４】
前記姿勢検出手段は、前記撮像装置の姿勢の情報を基に、基準方向に対する撮影レンズの光軸の傾きを算出し、
前記係数算出手段は、前記傾きの情報を基に前記係数を算出することを特徴とする請求項１から３の何れか１項に記載の画像処理装置。
【請求項５】
前記係数算出手段は、前記光軸が前記基準方向に対して所定の方向の傾きである場合には、前記係数を算出しないか、又は、前記光軸が前記基準方向に対して前記所定の方向とは逆の方向の傾きである場合よりも小さい重み付けがなされた前記係数を算出することを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記係数算出手段は、前記光軸が前記基準方向に対して所定の方向の傾きである場合の傾きの角度に応じて、前記重み付けを変更することを特徴とする請求項５に記載の画像処理装置。
【請求項７】
前記姿勢検出手段は、前記各画像を撮像した撮像装置が有する撮影レンズに関する情報と、前記各画像を撮影した前記撮像装置の姿勢の情報とを基に、前記傾きを算出することを特徴とする請求項４から６の何れか１項に記載の画像処理装置。
【請求項８】
前記基準方向は水平方向であることを特徴とする請求項４から７の何れか１項に記載の画像処理装置。
【請求項９】
前記変換手段は、回転軸を中心として回転するように前記撮影方向が順次変更される撮影がなされた際の前記回転軸に対して、前記撮像装置の撮影レンズの光軸が直交していない場合に、前記変換を行うことを特徴とする請求項１から８の何れか１項に記載の画像処理装置。
【請求項１０】
撮影方向を順次変更しながら撮影された複数の画像を取得する取得工程と、
前記複数の各画像が撮像された際の撮像装置の姿勢を検出する姿勢検出工程と、
前記複数の画像が順に撮影された際の、隣接した撮影方向の間の移動量を算出する移動量算出工程と、
前記各画像に対する射影変換の係数を算出する係数算出工程と、
前記係数を用いて、前記各画像に対する射影変換を行う変換工程と、
前記移動量を基に、前記射影変換がなされた後の前記撮影方向が隣接した画像間で、位置合わせを行う位置合わせ工程と、
前記位置合わせが行われた各画像を、前記撮影方向が変更された順に繋ぎ合わせるように合成する合成工程と、を有し、
前記係数算出工程では、前記画像ごとに前記検出された前記姿勢の情報を基に、前記各画像に対する前記係数を算出し、
前記変換工程では、前記姿勢の情報を基に算出された前記係数を用いて、前記各画像に生じている台形状の歪みを補正する射影変換を行うことを特徴とする画像処理装置の画像処理方法。
【請求項１１】
撮影方向を順次変更しながら撮影された複数の画像を取得する取得工程と、
前記複数の各画像が撮像された際の撮像装置の姿勢を検出する姿勢検出工程と、
前記複数の画像が順に撮影された際の、隣接した撮影方向の間の移動量を算出する移動量算出工程と、
前記各画像を仮想の円錐台に投影する幾何変換の係数を算出する係数算出工程と、
前記係数を用いて、前記各画像を仮想の円錐台上に投影する幾何変換を行う変換工程と、
前記移動量を基に、前記幾何変換がなされた後の前記撮影方向が隣接した画像間で、位置合わせを行う位置合わせ工程と、
前記位置合わせが行われた各画像を、前記撮影方向が変更された順に繋ぎ合わせるように合成する合成工程と、を有し、
前記係数算出工程では、前記画像ごとに前記検出された前記姿勢の情報を基に、前記各画像を仮想の円錐台に投影する前記係数を算出することを特徴とする画像処理装置の画像処理方法。
【請求項１２】
コンピュータを、請求項１から９の何れか１項に記載の画像処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像を処理する画像処理装置、画像処理方法、及びプログラムに関する。
【背景技術】
【０００２】
従来、撮像装置の撮影方向を一定方向（例えば水平方向や垂直方向）に順次変更しながら撮影した複数の画像を繋ぎ合わせることでパノラマ画像を生成する技術が知られている。例えば特許文献１には、撮影方向を順次変更させながら撮像した各画像から、互いに重複領域が生ずるように所定サイズの画像領域を切り出し、それら画像領域の重複領域を重ね合わせつつ順次繋ぎ合わせてパノラマ画像を生成する技術が開示されている。
【０００３】
また、パノラマ撮影を行う場合、ユーザ（撮影者）は、地面に垂直に立って撮像装置を構えた状態で、自身を回転中心として回転するような撮影方法をとることが多いと考えられる。例えば特許文献２には、回転軸を中心として撮像装置の撮影方向を水平方向に移動（回転）させつつ撮影した各画像を、撮影焦点距離を半径とする仮想円筒面上に円筒写像変換してそれらを繋ぎ合わせることでパノラマ画像を生成する技術が開示されている。
【０００４】
その他、パノラマ画像の生成技術とは異なるが、特許文献３には、重力方向に対する撮像装置の保持角度と移動を検出し、撮像装置が移動している場合には、略水平方向に向いて撮影したように歪補正を行って表示する技術が開示されている。具体的には、撮影範囲内で略水平方向に該当する部分（例えば路面と地上の境界）を検出し、その略水平方向に該当する部分の画像の傾き（歪み）を補正することで、略水平方向に向いて撮影したようなライブビュー画像の表示を可能とする技術が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００５−３２８４９７号公報
【特許文献２】特開平１１−３３１６９６号公報
【特許文献３】特開２０１１−１８８３４０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、パノラマ撮影において、撮像装置の撮影方向を例えば水平方向に順次変更しながら複数の画像が撮影された際に、撮像装置が傾いた姿勢の状態（例えば光軸が水平方向に対して上又は下向きに傾けられた状態）で各画像が撮影されることがある。ここで、例えば地面の水平方向を基準方向とし、基準方向に対して垂直に建っている長方形の建物等を、基準方向に対して光軸が上又は下向きに傾いた状態の撮像装置で撮像した場合、長方形の建物等が台形に歪んで写った画像が取得されることになる。この場合、パノラマ撮影により取得された各画像から、それぞれ建物等が含まれた画像領域を切り出して繋ぎ合わせると、建物が湾曲したり繋ぎ目がずれたりした低品位のパノラマ画像が生成されてしまうという問題が生ずる。この問題は、特許文献２に記載の技術においても同様に生ずる。
【０００７】
なお、特許文献３に記載の技術によれば、台形状に歪んだ建物の画像を長方形に補正して表示することは可能ではある。ただし、この公報記載の技術は、ユーザが歩行等で移動している進行方向において、撮影範囲内で検出した略水平方向に該当する部分の画像の傾きを補正して、略水平方向に向いて撮影したようなライブビュー画像の表示を行うことを想定している。このため、パノラマ撮影のように、ユーザが回転中心となって回転することで撮像装置の撮影方向を水平方向に変更した各画像を撮影してそれら各画像を合成する場合において、特許文献３に記載の技術を適用しても高品位のパノラマ画像を得ることはできない。
【０００８】
そこで、本発明は、パノラマ撮影の際に撮像装置が傾いた姿勢の状態で撮影が行われた場合でも、高品位のパノラマ画像を生成可能にすることを目的とする。
【課題を解決するための手段】
【０００９】
本発明は、撮影方向を順次変更しながら撮影された複数の画像を取得する取得手段と、前記複数の各画像が撮像された際の撮像装置の姿勢を検出する姿勢検出手段と、前記複数の画像が順に撮影された際の、隣接した撮影方向の間の移動量を算出する移動量算出手段と、前記各画像に対する射影変換の係数を算出する係数算出手段と、前記係数を用いて、前記各画像に対する射影変換を行う変換手段と、前記移動量を基に、前記射影変換がなされた後の前記撮影方向が隣接した画像間で、位置合わせを行う位置合わせ手段と、前記位置合わせが行われた各画像を、前記撮影方向が変更された順に繋ぎ合わせるように合成する合成手段と、を有し、前記係数算出手段は、前記画像ごとに前記検出された前記姿勢の情報を基に、前記各画像に対する前記係数を算出し、前記変換手段は、前記姿勢の情報を基に算出された前記係数を基に、前記各画像に生じている台形状の歪みを補正する射影変換を行うことを特徴とする。
【発明の効果】
【００１０】
本発明によれば、パノラマ撮影の際に撮像装置が傾いた姿勢の状態で撮影が行われた場合でも、高品位のパノラマ画像を生成可能となる。
【図面の簡単な説明】
【００１１】
【図１】本実施形態の撮像装置の概略構成を示す図である。
【図２】通常の撮影動作の流れを示すフローチャートである。
【図３】パノラマ撮影時の光軸と回転軸との関係説明に用いる図である。
【図４】パノラマ撮影時に撮影される各画像とパノラマ合成の概念図である。
【図５】パノラマ撮影時に光軸が傾いた状態で順に撮影された画像の説明図である。
【図６】パノラマ撮影時の処理の流れを示すフローチャートである。
【図７】パノラマ撮影時のデータフローダイアグラムである。
【図８】光軸が傾いた場合の画像に対する円筒座標変換の説明に用いる図である。
【図９】加速度センサの検出軸を説明するための概念図である。
【発明を実施するための形態】
【００１２】
以下、本発明の好適な一実施形態について、図面を参照して詳細に説明する。
＜第１の実施形態＞
図１は、本実施形態の画像処理装置の一適用例としての撮像装置（例えばデジタルカメラ）の概略構成例を示すブロック図である。
図１において、撮影レンズ１０１は、フォーカスレンズやズームレンズを有し、被写体等の光学像を撮像センサ１１２の撮像面上に結像させる。撮影レンズ１０１は、撮像装置本体に着脱可能な交換レンズであってもよいし、撮像装置に固定されたレンズであってもよい。絞り１０３は、絞り駆動回路１０４により駆動され、撮影レンズ１０１を介した入射光量の調節を行う。絞り駆動回路１０４は、マイクロコンピュータ１２３により算出された絞り駆動量を基に、絞り１０３における光学的な絞り値を変化させる。ＡＦ（オートフォーカス）駆動回路１０２は、例えばＤＣモータやステッピングモータを有して構成され、マイクロコンピュータ１２３からのフォーカス制御信号を基に、撮影レンズ１０１のフォーカスレンズを駆動してピント合わせを行う。
【００１３】
主ミラー１０５は、撮影レンズ１０１から入射した光束を、ファインダ部側と撮像センサ１１２側とに切り替えるためのミラーである。主ミラー１０５は、常時はファインダ部側へと光束を反射させるように配されているが、撮像が行われる場合やライブビュー表示がなされる場合には、撮影レンズ１０１からの光束が撮像センサ１１２へと入射するように、上方に跳ね上げられる。この主ミラー１０５を跳ね上げる等のミラー駆動は、マイクロコンピュータ１２３による制御の下、ミラー駆動回路１０７により行われる。また、主ミラー１０５は、その中央部が光の一部を透過できるようにハーフミラーとなされている。
【００１４】
ペンタプリズム１０８はファインダ部の一部を構成しており、撮影レンズ１０１から入射して主ミラー１０５により反射した光束を不図示の接眼部に導くためのプリズムである。なお、不図示の接眼部は、それぞれ不図示のピント板、アイピースレンズなどが設けられて構成されている。
【００１５】
サブミラー１０６は、主ミラー１０５の中央部に設けられたハーフミラーを透過した光束を反射させて、不図示の焦点検出用のセンサや、露光量算出回路１０９に併設されている不図示の露光量検出用センサに導くためのミラーである。
【００１６】
露光量検出用のセンサは、主ミラー１０５の中央部のハーフミラーを透過してサブミラー１０６で反射されてきた入射光を光電変換して露光量算出回路１０９に送る。露光量算出回路１０９は、露光量検出用のセンサの検出出力から露光量を算出し、その算出した露光量の信号をマイクロコンピュータ１２３に出力する。マイクロコンピュータ１２３は、露光量の信号を基に、絞り駆動量、シャッタスピードや露光時間等を制御する。
【００１７】
焦点検出用のセンサは、主ミラー１０５の中央部のハーフミラーを透過してサブミラー１０６で反射されてきた光束を受光し、そのセンサ出力をマイクロコンピュータ１２３に送る。マイクロコンピュータ１２３は、そのセンサ出力からデフォーカス量を算出し、そのデフォーカス量を基にフォーカス演算を行ってフォーカス制御信号を生成し、そのフォーカス制御信号によりＡＦ駆動回路１０２を制御する。
【００１８】
フォーカルプレーンシャッタ１１０（以下、シャッタ１１０とする。）は、マイクロコンピュータ１２３による制御の下、シャッタ駆動回路１１１により駆動される。すなわち、シャッタ１１０の開口時間は、マイクロコンピュータ１２３により制御される。
【００１９】
撮像センサ１１２は、マイクロコンピュータ１２３により駆動制御がなされるＣＣＤやＣＭＯＳセンサなどであり、撮影レンズ１０１によって結像された被写体像を電気信号に変換する。Ａ／Ｄ変換器１１５は、マイクロコンピュータ１２３による制御の下、撮像センサ１１２からのアナログ出力信号をデジタル信号に変換する。Ａ／Ｄ変換器１１５から出力されたデジタル信号は、映像信号処理回路１１６に送られる。
【００２０】
映像信号処理回路１１６は、デジタル化された画像データに対し、フィルター処理、色変換処理、ガンマ処理などを行うと共に、ＪＰＥＧなどへの圧縮処理を行い、メモリコントローラ１１９に出力する。その際、映像信号処理回路１１６は、処理途中の画像データを、メモリコントローラ１１９を介してバッファメモリ１２２に一時的に蓄積させることも可能である。また、映像信号処理回路１１６は、撮像センサ１１２により撮像された画像データや、メモリコントローラ１１９から入力される画像データを、表示駆動回路１１７を通して表示部１１８に出力することも可能である。映像信号処理回路１１６におけるこれらの機能の切り替えはマイクロコンピュータ１２３の指示により行われる。また、映像信号処理回路１１６は、必要に応じて、撮像センサ１１２による撮像がなされた際の露出情報やホワイトバランスなどの情報を、マイクロコンピュータ１２３に出力することも可能である。それらの情報を基に、マイクロコンピュータ１２３は、ホワイトバランスやゲイン調整の指示を行う。
【００２１】
また後述するパノラマ撮影などの連続撮影動作が行われた場合、映像信号処理回路１１６は、メモリコントローラ１１９を介して、撮影された未処理画像データをバッファメモリ１２２に一旦格納させた後に読み出して画像処理や圧縮処理を行う。これらバッファメモリ１２２への格納と画像処理、圧縮処理は、パノラマ撮影などの連続撮影動作が行われている間、続けられる。なお、連像撮影が可能な枚数は、バッファメモリ１２２の容量や、パノラマ撮影の際に撮像される画像サイズに応じた枚数となる。
【００２２】
映像信号処理回路１１６は、ゲートアレイなどのロジックデバイスにより実現され、輝度調整回路１１６ａ、ガンマ補正回路１１６ｂ、現像回路１１６ｋ、圧縮・伸長回路１１６ｌなどを有する。また、映像信号処理回路１１６は、移動量算出回路１１６ｃ、位置合わせ回路１１６ｄ、幾何変換回路１１６ｅ、変倍回路１１６ｆ、トリミング回路１１６ｇ、合成回路１１６ｊなども有する。現像回路１１６ｋは、現像処理を行う。輝度調整回路１１６ａは、デジタルゲインによって明るさを調整する。ガンマ補正回路１１６ｂは、ガンマ特性によって輝度を調整する。圧縮・伸長回路１１６ｌは、ＪＰＥＧなどの一般的な画像形式への変換を行う。移動量算出回路１１６ｃは、複数枚の画像から移動量を求めてぶれ量を算出する。位置合わせ回路１１６ｄは、ぶれ量に応じて位置合わせを行う。幾何変換回路１１６ｅは、後述する撮影レンズ１０１の歪曲収差補正、アフィン変換、射影変換、円筒座標変換や円錐台座標変換などを行う。変倍回路１１６ｆは、画像のサイズを変倍する。トリミング回路１１６ｇは、画像の一部を切り出す。合成回路１１６ｊは、複数の画像を合成する。本実施形態の撮像装置においてパノラマ撮影が行われた際の移動量算出回路１１６ｃ、位置合わせ回路１１６ｄ、幾何変換回路１１６ｅ、変倍回路１１６ｆ、トリミング回路１１６ｇ、合成回路１１６ｊにおける動作の説明は後述する。
【００２３】
メモリコントローラ１１９は、メモリ１２０へのデータの書き込みと読み出し、バッファメモリ１２２への一時的なデータの蓄積等を制御する。なお、メモリ１２０は着脱可能なカード型等のメモリであってもよい。メモリコントローラ１１９は、映像信号処理回路１１６による処理がなされていない未処理の画像データをバッファメモリ１２２に格納し、映像信号処理回路１１６による処理済みのデジタル画像データをメモリ１２０に格納する。また、メモリコントローラ１１９は、バッファメモリ１２２やメモリ１２０から読み出した画像データを映像信号処理回路１１６に出力する。また、メモリコントローラ１１９は、メモリ１２０に記憶されている画像を、外部インターフェイス１２１を介してコンピュータ等の外部機器に出力することも可能となされている。
【００２４】
表示部１１８は、ＴＦＴや有機ＥＬなどの表示デバイスである。表示駆動回路１１７は、ＶＲＡＭとしても用いられるバッファメモリ１２２に格納された表示データを、メモリコントローラ１１９と映像信号処理回路１１６を介して受け取り、その表示データにより表示部１１８を駆動して画面上に画像等を表示させる。
【００２５】
操作部１２４は、各種のボタンやスイッチが接続されており、それらボタンやスイッチの状態を検知し、それら状態検知信号をマイクロコンピュータ１２３に伝える。マイクロコンピュータ１２３は、操作部１２４からの状態検知信号に応じて各部をコントロールする。
【００２６】
操作部１２４に接続された各種のスイッチのうち、スイッチ１２５（以後、ＳＷ１とする）とスイッチ１２６（以後、ＳＷ２とする）は、レリーズボタンの操作でオンオフするスイッチである。ＳＷ１のみがオンとなっている状態は、いわゆるレリーズボタン半押し状態である。このレリーズボタン半押し状態の時、マイクロコンピュータ１２３は、撮像装置のオートフォーカスの動作を開始させると共に測光動作を開始させる。ＳＷ１及びＳＷ２が共にオンとなっている状態は、いわゆるレリーズボタンの全押し状態である。このレリーズボタン全押し状態の時、マイクロコンピュータ１２３は、撮像装置の画像撮影と記録を行わせる。また、レリーズボタン全押し状態が続いている間、マイクロコンピュータ１２３は、撮像装置に連続撮影動作を行わせる。
【００２７】
また、操作部１２４には、不図示のボタンやスイッチとして、例えば、露出補正ボタン、絞りボタン、ＩＳＯ設定ボタン、メニューボタン、セットボタン、フラッシュ設定ボタン、単写／連写／セルフタイマー切り替えボタンなども接続されている。また操作部１２４に接続された不図示のボタン等には、例えば、メニューや再生画像移動のための移動＋（プラス）ボタンや移動−（マイナス）ボタン、表示画像拡大ボタン、表示画像縮小ボタン、再生スイッチ、消去ボタン、情報表示ボタンなども含まれる。なお、絞りボタンは、予め設定された絞り値にまで絞り１０３を絞り込ませる際に操作されるボタンである。消去ボタンは、撮影した画像を消去する際に操作されるボタンである。情報表示ボタンは、撮影や再生に関する情報表示を行う際に操作されるボタンである。また、操作部１２４には、例えば回転ダイアルが接続されていてもよい。例えば移動＋（プラス）ボタンや移動−（マイナス）ボタンの各機能は回転ダイアルが備えてもよい。回転ダイアルの回転操作によって、より軽快に数値や機能を選択することが可能となる。
【００２８】
液晶駆動回路１２７は、外部液晶表示部１２８やファインダ内液晶表示部１２９を駆動する。マイクロコンピュータ１２３は、液晶駆動回路１２７に対して表示内容を送り、液晶駆動回路１２７が外部液晶表示部１２８やファインダ内液晶表示部１２９を駆動させることで、撮像装置の動作状態やメッセージ等を文字や画像を用いて表示させる。また、ファインダ内液晶表示部１２９には、不図示のＬＥＤなどのバックライトが配置されており、そのＬＥＤも液晶駆動回路１２７により駆動される。
【００２９】
マイクロコンピュータ１２３は、撮影前に設定されているＩＳＯ感度、画像サイズ、画質に応じた、画像サイズの予測値データを基に、メモリコントローラ１１９を介してメモリ１２０の容量を確認した上で撮影可能残数を演算することができる。そして、マイクロコンピュータ１２３は、その撮影可能残数を表示部１１８に表示させる。また、マイクロコンピュータ１２３は、撮影可能残数を、必要に応じて外部液晶表示部１２８やファインダ内液晶表示部１２９に表示させることもできる。
【００３０】
不揮発性メモリ１３０は、ＥＥＰＲＯＭであり、撮像装置に電源が入れられていない状態でも、記憶内容を保存することができる。マイクロコンピュータ１２３の動作プログラムは、不揮発性メモリ１３０に格納されている。なお、後述するパノラマ撮影により取得された画像に対する画像処理がソフトウェア構成により実現される場合、本実施形態に係る画像処理プログラムも不揮発性メモリ１３０に格納され、マイクロコンピュータ１２３はその画像処理プログラムを実行する。
【００３１】
ジャイロセンサ１３３は、例えば２軸若しくは３軸のジャイロセンサであり、撮像装置における回転の角速度を検出し、その検出信号をマイクロコンピュータ１２３に出力する。
加速度センサ１３５は、例えば３軸の加速度センサであり、撮像装置の姿勢検出を行い、その姿勢検出信号をマイクロコンピュータ１２３に出力する。
温度計１３４は、温度を検出し、その検出信号をマイクロコンピュータ１２３に出力する。
【００３２】
外部インターフェイス１２１は、本実施形態の撮像装置と、コンピュータ等の外部機器とを接続する。
電源部１３１は、例えば着脱可能なバッテリを備えており、本実施形態の撮像装置の各部に必要な電力を供給する。
内部時計１３２は、時刻情報や撮像装置の動作に必要な時間情報を出力してマイクロコンピュータ１２３に出力する。マイクロコンピュータ１２３は、例えば内部時計１３２からの時刻情報に基づく撮影時刻データを、メモリ１２０に記録される画像ファイルに付加又は重畳することができる。
【００３３】
以下、図２フローチャートを用いて、本実施形態の撮像装置における通常の撮影動作を説明する。図２のフローチャートに示した撮影動作は、マイクロコンピュータ１２３が撮像装置の各部を制御することにより行われる。撮影動作が開始される前には、予め露光量算出回路１０９により露光量が算出され、絞り量、蓄積時間（シャッタスピード）、ＩＳＯ感度等が決定されているとする。なお、以下の説明では、図２のフローチャートの各処理ステップＳ４０１〜ステップＳ４０７をＳ４０１〜Ｓ４０７と略記する。
【００３４】
ユーザによりレリーズボタンが全押し状態となされてＳＷ１及びＳＷ２が共にオンの状態になると、Ｓ４０１として、マイクロコンピュータ１２３は、図２のフローチャートに示した撮影動作の制御を開始する。
【００３５】
撮影動作の制御を開始すると、マイクロコンピュータ１２３は、Ｓ４０２として、以下の一連の動作を行うように各部を制御する。先ず、マイクロコンピュータ１２３は、予め決められた絞り量を絞り駆動回路１０４に通知して、絞り１０３を目標の絞り量にする。また、マイクロコンピュータ１２３は、撮像センサ１１２、Ａ／Ｄ変換器１１５などを動作可能な状態にする撮影準備を行う。そして、マイクロコンピュータ１２３は、撮影準備が完了すると、ミラー駆動回路１０７を制御して主ミラー１０５を上方に跳ね上げさせ、またシャッタ駆動回路１１１を制御してシャッタ１１０の不図示の先幕を開けさせる。これにより、撮影レンズ１０１を介した被写体像が撮像センサ１１２上に結像されることになる。続いて、マイクロコンピュータ１２３は、シャッタ駆動回路１１１を制御して、予め設定された蓄積時間後にシャッタ１１０の不図示の後幕を閉じる。これにより、撮像センサ１１２には、蓄積時間の間だけ光が入ることになる。Ｓ４０２では、この一連の動作により、撮像センサ１１２の露光が行われる。
【００３６】
続いて、Ｓ４０３として、マイクロコンピュータ１２３は、撮像センサ１１２から出力されてＡ／Ｄ変換器１１５で変換された画像データを、映像信号処理回路１１６を介し、さらにメモリコントローラ１１９を介してバッファメモリ１２２に格納させる。さらに、Ｓ４０４として、マイクロコンピュータ１２３は、メモリコントローラ１１９を介してバッファメモリ１２２から読み出した画像データを映像信号処理回路１１６に送り、現像回路１１６ｋによる現像処理を行わせる。またＳ４０４において、マイクロコンピュータ１２３は、映像信号処理回路１１６を制御し、ホワイトバランス処理や、ガンマ補正回路１１６ｂで暗部にゲインをかける処理などの画像処理を行わせてもよい。
【００３７】
次に、Ｓ４０５として、マイクロコンピュータ１２３による制御の下、映像信号処理回路１１６は、画像処理が施された画像データを圧縮・伸長回路１１６ｌによりＪＰＥＧなどの汎用的なデータフォーマットへと変換して、メモリ１２０に記録させる。その後、マイクロコンピュータ１２３は、レリーズボタンが全押し状態でなければ、Ｓ４０７として、図２のフローチャートの撮影動作の制御を終了する。
【００３８】
なお、メモリ１２０に記録される画像データは、映像信号処理回路１１６での画像処理や現像処理が行われていないＲＡＷデータを、圧縮・伸長回路１１６ｌにより可逆圧縮したデータであってもよい。マイクロコンピュータ１２３は、操作部１２４を介したユーザからの指示を基に、メモリ１２０に記録する画像データをＪＰＥＧ等の画像データか又は可逆圧縮されたＲＡＷデータの何れにするかを決定する。
【００３９】
次に、本実施形態の撮像装置において、撮影したい全景が撮像装置の撮影画角よりも広い場合に行われるパノラマ撮影時の動作、及びパノラマ画像合成時の合成処理について説明する。
パノラマ撮影は、ユーザが撮像装置の撮影モードをパノラマ撮影モードに設定することで実行可能となる。パノラマ撮影では、撮像装置の撮影方向を一定方向（例えば水平方向や垂直方向）に順次変更しながら全景のそれぞれ一部を構成する複数の画像が順次撮像される。また、パノラマ撮影において各画像が撮影される際には、撮影方向が順次変更される一定方向において隣接する画角（隣接した撮影方向）内で互いに同被写体等の一部が重複（共通）するような撮影が行われる。これにより、パノラマ撮影により撮影された各画像は、撮影方向が順次変更された一定方向において隣接する画像間で互いに重複（共通）した画像領域が含まれた画像となる。なお、パノラマ撮影において撮像装置の撮影方向が順次変更される一定方向は、一般的には地面等と平行な水平方向となされるが、重力方向（垂直方向）となされる場合もある。以下の説明では、撮影方向が一般的な水平方向となされた場合のパノラマ撮影モードを例に挙げる。
【００４０】
そして、パノラマ画像の生成処理では、各画像の共通領域から特徴点を抽出し、その特徴点がどのくらい動いたかにより移動ベクトルが検出される。さらに、その移動ベクトルから例えばアフィン変換の係数が算出されてアフィン変換が行われ、共通領域の各特徴点が一致するように２枚の画像を重ね合わせることにより、共通領域以外の画像領域が水平方向に繋がった画像が生成される。このような処理が水平方向で隣り合う各画像について順次繰り返されることにより、パノラマ画像が生成される。
【００４１】
また、パノラマ撮影において撮影方向を水平方向に順次変更する場合、ユーザ２００は、例えば図３（ａ）のように撮像装置２０１を構えた状態（又は自動雲台等に設置した状態）で、ユーザ自身（又は自動雲台）が回転中心となって回転する動作を行う。以下の説明では、ユーザ自身（又は自動雲台）が回転中心となって回転することで撮像装置の撮影方向を順次変更することを「スイング」と呼ぶことにする。
【００４２】
図４は、パノラマ撮影時の全景７００（パノラマ撮影範囲）と撮影された画像７０１及び画像７０２と合成された画像７０３の一例を示している。撮像装置の撮影画角は、全景７００より狭いとする。パノラマ撮影では、撮像装置を水平方向にスイングしながら、その水平方向において隣り合う画角内で被写体等が共通した領域が得られるように複数の画像が順に撮像される。図４の例では、撮像装置を水平方向にスイングさせて撮影した１枚目の画像７０１と２枚目の画像７０２のみを示している。１枚目の画像７０１と２枚目の画像７０２との間には水平方向に共通領域が存在している。そして、パノラマ画像を生成する際には、１枚目の画像７０１と２枚目の画像７０２の共通領域（重複した画像領域）を重ね合わせて、それら２枚の画像を繋ぎ合わせるような画像合成が行われる。これにより、図４に合成結果として示す画像７０３が得られることになる。なお、図４の全景７００のパノラマ画像を生成する場合には、前述同様にして全景７００をカバーできる各画像が撮影され、それぞれ水平方向で隣接する各画像で互いに共通領域を重ね合わせて繋ぐような合成処理が行われる。
【００４３】
ここで、ユーザが撮像装置を構え、ユーザ自身を回転軸として撮像装置をスイングさせながらパノラマ撮影を行う場合において、ユーザの回転軸と撮像装置の光軸との関係としては、例えば図３（ｂ）〜図３（ｆ）のような五つのパターンが考えられる。なお、本実施形態の撮像装置の撮影レンズ１０１は、いわゆるチルト機能やシフト機能を備えておらず、その光軸が撮像センサ１１２の撮像面に対して垂直となされ、且つ光軸中心と撮像面中心とが一致しているとする。
【００４４】
図３（ｂ）は、パノラマ撮影時において、光軸２１１が水平方向と略々平行になるようにユーザ２００が撮像装置２０１を構え、また、その撮像装置２０１をスイングする際の回転軸２１０が水平方向に対して略々直交している状態を示している。
【００４５】
一方、図３（ｃ）は、水平方向に対して光軸２１１を上方向に傾けた状態でユーザ２００が撮像装置２０１を構え、その撮像装置２０１をスイングする際の回転軸２１０が水平方向に対して略々直交している状態を示している。例えば地面（水平方向）に垂直に建っている長方形の高い建物等を撮影する場合、ユーザ２００は、撮像装置２０１を上に向けて撮影することが多い。また、このときのユーザ２００は地面に垂直に立っているため、ユーザが撮像装置２０１をスイングする際の回転軸２１０は水平方向（地面）に対して直交している状態であることが多い。この場合、図３（ｃ）のように撮像装置２０１の光軸２１１と回転軸２１０とは直交していない状態になる。
【００４６】
また、図３（ｄ）は、水平方向に対して光軸２１１を下方向に傾けた状態でユーザ２００が撮像装置２０１を構え、その撮像装置２０１をスイングする際の回転軸２１０が水平方向に対して直交している状態を示している。例えば塔の上や高層ビルの高層階、山頂などから景色をパノラマ撮影するような場合、ユーザ２００は、撮像装置２０１を下に向けて撮影することが多く、またこのときのユーザ２００は地面（或いは建物の床）に垂直に立っている。この場合、図３（ｄ）のように撮像装置２０１の光軸２１１と回転軸２１０とは直交していない状態になる。
【００４７】
これに対し、図３（ｅ）は、水平方向に対して光軸２１１を上方向に傾けた状態でユーザ２００が撮像装置２０１を構えている一方で、撮像装置２０１をスイングする際の回転軸２１０が撮像装置２０１の光軸２１１に対して略々直交している状態を示している。
また、図３（ｆ）は、水平方向に対して光軸２１１を下方向に傾けた状態でユーザ２００が撮像装置２０１を構えている一方で、撮像装置２０１をスイングする際の回転軸２１０が撮像装置２０１の光軸２１１に対して略々直交している状態を示している。
【００４８】
すなわち、図３（ｂ）の状態は、ユーザ２００の回転軸２１０が水平方向に対して略々直交し、且つ、撮像装置２０１の光軸２１１とユーザ２００の回転軸２１０とが略々直交した関係を有している。一方、図３（ｃ）と図３（ｄ）の状態の場合、ユーザ２００の回転軸２１０は水平方向に対して略々直交しているが、撮像装置２０１の光軸２１１とユーザ２００の回転軸２１０とは直交していない関係を有している。これに対し、図３（ｅ）と図３（ｆ）の状態の場合、ユーザ２００の回転軸２１０は水平方向に対して直交していないが、撮像装置２０１の光軸２１１とユーザ２００の回転軸２１０とは略々直交した関係を有している。
【００４９】
ここで、例えば地面の水平方向を基準方向とし、その地面（基準方向）に垂直に建っている長方形の建物等を、基準方向に対して光軸が上又は下方向に傾けられた姿勢状態の撮像装置により撮像した場合について考察する。このように、地面（基準方向）に垂直に建っている長方形の建物等を、基準方向に対して光軸が傾けられた姿勢状態の撮像装置で撮像した場合、長方形の建物等が台形に歪んで写った画像が取得されることになる。すなわち例えば、図３（ｃ）と図３（ｄ）のように水平方向（基準方向）に対して撮像装置２０１の光軸２１１が傾けられている場合、地面に垂直に建っている長方形の建物を撮影すると、建物は台形状に歪んで写ることになる。図３（ｅ）と図３（ｆ）の場合も同様に、撮像装置２０１の光軸２１１が水平方向（基準方向）に対して傾けられているため、地面に垂直に建っている長方形の建物は台形状に歪んで写ることになる。
【００５０】
このような台形状の歪みは、パノラマ撮影の際に撮像装置２０１の光軸２１１が基準方向に対して傾けられた状態になっていた場合にも同様に生ずることになる。そして、これら台形に歪んだ建物等が写った複数の各画像を従来の技術のように単に繋ぎ合わせた場合には、建物が湾曲したり繋ぎ目がずれたりした低品位のパノラマ画像が生成されてしまうことになる。ただし、図３（ｅ）と図３（ｆ）のように、回転軸２１０が水平方向に対して傾けられた状態でパノラマ撮影が行われた場合に取得される各画像は、図４の全景７００のような水平方向の範囲を撮影した各画像ではなく、円弧状の範囲を撮影した各画像となる。このため本実施形態では、図３（ｅ）と図３（ｆ）の例は除外し、図３（ｃ）と図３（ｄ）の例のように、回転軸２１０が水平方向に対し垂直な状態で、且つ、光軸２１１が水平方向に対して傾いた状態で行われる水平方向のパノラマ撮影を例に挙げて説明する。
【００５１】
具体的に説明すると、例えば図３（ｃ）のように撮像装置２０１の光軸２１１が水平方向に対して上方向に傾いた状態でパノラマ撮影がなされたとする。このため、パノラマ撮影の１枚目の画像には、例えば図５（ａ）に示すような台形に歪んだ建物３００が写っているとする。パノラマ撮影では、図３（ｃ）のようにユーザ２００が回転軸２１０となって撮像装置２０１をスイングさせながら撮影がなされるため、２枚目に撮影された画像内の建物は、図５（ｂ）に示す建物３００のような形状に変化する。また、パノラマ画像の合成処理では、図５（ａ）の画像と図５（ｂ）の画像の共通領域から特徴点が抽出されて移動ベクトルが検出され、その移動ベクトルからアフィン変換の係数算出がなされてアフィン変換が行われる。ここで例えば建物３００の右側の壁に着目してアフィン変換が行われるとスイング時の回転成分が算出されてしまい、各画像が順次繋ぎ合わされていく度に、建物３００の画像が右上へと合成されてしまうようになる。また、合成結果を矩形にトリミングしようとすると、有効領域が小さくなってしまうという問題が生ずる。また、回転成分を除去してアフィン変換して合成していく方法も考えられるが、この場合は繋ぎ目がずれたりしてしまうようになる。このように、パノラマ撮影の際に撮像装置２０１の光軸２１１が水平方向（基準方向）に対して傾いた状態で撮影された各画像からパノラマ画像を生成しようとすると、建物が湾曲したり繋ぎ目がずれたりした低品位のパノラマ画像が生成されてしまう。
【００５２】
そこで、本実施形態の撮像装置は、後述するように、パノラマ撮影時の撮像装置の姿勢検出を行い、パノラマ撮影で取得した複数の各画像に対し、撮像装置の検出姿勢に応じた射影変換を施すことにより、高品位のパノラマ画像を生成可能にする。本実施形態において、撮像装置の姿勢は、撮像装置２０１の光軸２１１が回転軸２１０と直交していない場合において、撮像装置２０１の光軸２１１が基準方向に対して傾いた角度を表す情報として検出される。そして、本実施形態における射影変換は、撮像装置２０１の光軸２１１が回転軸２１０と直交していない場合に、撮像装置２０１の光軸２１１が基準方向に対して傾いている角度に基づく処理として行われる。
【００５３】
また、本実施形態では、撮像装置を水平方向にスイングさせてパノラマ撮影を行う例を挙げているため、基準方向を地面の水平方向とし、いわゆる縦台形の歪を補正する例を挙げて説明している。これに対し、例えば重力方向に撮像装置をスイングさせてパノラマ撮影を行う場合には基準方向が重力方向となる。重力方向が基準方向となされた場合、撮像装置の光軸が基準方向（重力方向）に対して右又は左方向に傾けられた場合、四角形の建物等はいわゆる横台形に歪むことになる。本実施形態では重力方向を基準方向とした場合の横台形の歪についても射影変換により補正可能である。
【００５４】
また、本実施形態の撮像装置は、パノラマ撮影で取得された各画像に対し、撮影レンズ１０１の焦点距離を半径とした仮想円筒上にマッピングする処理（以下、円筒座標変換と呼ぶ）をも行う。この場合、本実施形態の撮像装置は、その円筒座標変換を行った画像に対して前述した射影変換を行うようにする。
【００５５】
そして、本実施形態の撮像装置は、円筒座標変換と射影変換が施された各画像について、前述したように水平方向で隣り合う各画像で互いに共通領域を重ね合わせて繋ぐような合成処理を行うことによりパノラマ画像を生成する。詳細は後述するが、本実施形態の撮像装置は、円筒座標変換と射影変換が施された各画像の共通領域から特徴点を抽出し、その特徴点がどのくらい動いたかにより移動ベクトルを検出する。さらに、本実施形態の撮像装置は、その移動ベクトルから例えばアフィン変換の係数を算出してアフィン変換を行い、共通領域の各特徴点が一致するように２枚の画像を重ね合わせることにより、共通領域以外の画像領域が水平方向に繋がった画像を生成する。本実施形態の撮像装置では、このような処理を水平方向で隣り合う各画像について順次繰り返すことにより、パノラマ画像を生成する。
【００５６】
以下、本実施形態の撮像装置におけるパノラマ撮影時の画像撮像からパノラマ画像の生成及び保存までの動作について説明する。
マイクロコンピュータ１２３は、ユーザから操作部１２４を介してパノラマ撮影モードの設定指示が入力されると、撮像装置をパノラマ撮影モードに設定し、撮像センサ１１２とＡ／Ｄ変換器１１５に電源が供給されるよう制御すると共に初期設定を行う。また、マイクロコンピュータ１２３は、ミラー駆動回路１０７を制御して主ミラー１０５を上げさせるとともに、シャッタ駆動回路１１１を制御してシャッタ１１０を開き、撮影レンズ１０１による被写体像が撮像センサ１１２に結像されるようにする。これにより、撮像センサ１１２から読み出されてＡ／Ｄ変換器１１５にてデジタル変換された画像信号は映像信号処理回路１１６に送られる。さらに、マイクロコンピュータ１２３は、映像信号処理回路１１６を制御し、現像回路１１６ｋによる現像処理、輝度調整回路１１６ａ、ガンマ補正回路１１６ｂによる画像処理、変倍回路１１６ｆによる変倍処理を行わせる。変倍回路１１６ｆにより表示に適した画像サイズへと変倍された画像は、表示部１１８に送られて表示される。撮像装置では、このような撮像センサ１１２による撮像から表示部１１８の表示までの処理が、１秒間に２４回〜６０回繰り返して行われることにより、いわゆるライブビューの表示がなされる。
【００５７】
またパノラマ撮影モードの際には、例えば、ユーザに対し、表示部１１８のライブビュー表示を確認しながら、図４の全景７００のような広い範囲の中で所望の被写体に画角を合わせた上で撮像装置のＳＷ１を押下する操作が求められる。そして、ユーザによりＳＷ１が押下されると、マイクロコンピュータ１２３は、パノラマ撮影の準備のために、撮像装置の各部を制御し、画角内の被写体に対する適切な露光量の算出と、画角内の被写体に対する焦点合わせとを行わせる。例えばライブビュー表示がなされている場合、マイクロコンピュータ１２３は、映像信号処理回路１１６に含まれる不図示の露光量算出回路により最適な露光量を算出させて、その露光量の情報を取得する。また例えばライブビューの表示がなされていない場合、マイクロコンピュータ１２３は、サブミラー１０６にて反射された光を露光量算出回路１０９に受光させ、露光量算出回路１０９が算出した露光量の情報を取得する。そして、マイクロコンピュータ１２３は、その露光量を基に、絞り駆動回路１０４を介した絞り１０３の駆動制御、撮像センサ１１２の感度制御や蓄積時間の制御を行う。また、マイクロコンピュータ１２３は、ＡＦ駆動回路１０２を介して撮影レンズ１０１を駆動させることにより、画角内の被写体に対して焦点を合わせるように制御する。これらパノラマ撮影のための準備が終わると、マイクロコンピュータ１２３は、不図示のスピーカ等からブザー音を出力させて、パノラマ撮影の準備が完了したことをユーザに知らせる。
【００５８】
以下、図６のフローチャートと図７のデータフローダイアグラムを参照しながら、本実施形態の撮像装置におけるパノラマ撮影時の処理の流れについて説明する。図６のフローチャートに示した動作は、マイクロコンピュータ１２３が撮像装置の各部を制御することにより行われる。以下の説明では、図６のフローチャートの各処理ステップＳ５０１〜ステップＳ５１８をＳ５０１〜Ｓ５１８と略記する。なお、このフローチャートの処理は、ハードウェア構成により実行されてもよいし、一部がソフトウェア構成で残りがハードウェア構成により実現されてもよい。ソフトウェア構成により処理が実行される場合、例えば不揮発性メモリ１３０に記憶されているプログラムをマイクロコンピュータ１２３が実行することにより実現される。本実施形態に係るプログラムは、不揮発性メモリ１３０に予め用意されていてもよく、また着脱可能な半導体メモリ等から読み出されたり、不図示のインターネット等のネットワークからダウンロードされたりしてもよい。
【００５９】
パノラマ撮影時に撮り始めたい方向に撮像装置が向けられ、ユーザによりＳＷ２が押下されると、Ｓ５０１において、マイクロコンピュータ１２３は、撮像装置の各部を制御してパノラマ撮影を開始させる。
【００６０】
パノラマ撮影が開始されると、マイクロコンピュータ１２３は、先ずＳ５０２として、レンズ情報を取得する。レンズ情報には、後述する歪曲収差やレンズ周辺部の光量低下を補正するためのデータ、後述する円筒座標変換に使用する焦点距離、画角のデータなどが含まれる。歪曲収差やレンズ周辺部の光量低下を補正するためのデータは例えば不揮発性メモリ１３０に予め格納されているとする。また、焦点距離のデータは例えばＡＦ駆動回路１０２によるフォーカスレンズ駆動量、画角のデータはズームレンズの駆動量等の情報を基に取得されるとする。
【００６１】
次に、Ｓ５０３として、マイクロコンピュータ１２３は、撮像装置の各部を制御して１枚目の画像の撮影を行わせる。このときの撮像センサ１１２とＡ／Ｄ変換器１１５はライブビュー用の駆動に設定されているので、マイクロコンピュータ１２３は、これらを静止画撮影用の駆動に切り替える。また、マイクロコンピュータ１２３は、絞り駆動回路１０４を介して絞り１０３を先ほど決めた露光量になるように調整し、さらにシャッタ駆動回路１１１を介してシャッタ１１０を開閉させて、撮像センサ１１２に被写体像が結像されるようにする。これにより、撮像センサ１１２では静止画の撮影が行われ、撮像センサ１１２から読み出された画像信号はＡ／Ｄ変換器１１５でデジタル信号に変換される。そして、映像信号処理回路１１６では、Ａ／Ｄ変換器１１５からのデジタル信号に対し、不図示の回路により撮像センサ１１２のシェーディングを補正する補正処理のような最小限の画像処理を施す。この映像信号処理回路１１６による最小限の処理がなされた画像データは、１枚目のＲＡＷ画像のデータとして、メモリコントローラ１１９を介してバッファメモリ１２２に格納される。
【００６２】
また、Ｓ５０４において、マイクロコンピュータ１２３は、１枚目の画像の撮影から次の２枚目の画像の撮影が行われるまでに撮像装置がどのくらいスイング（回転）されたのかを検出可能にするために、ジャイロセンサ１３３を初期化（リセット）する。
【００６３】
Ｓ５０３においてバッファメモリ１２２に格納された１枚目のＲＡＷ画像データは、メモリコントローラ１１９により読み出されて映像信号処理回路１１６の現像回路１１６ｋに送られる。現像回路１１６ｋは、ＲＡＷ画像に対して現像処理を行って、輝度（Ｙ）と色差（ＵＶ）からなる１枚目のＹＵＶ画像に変換し、そのＹＵＶ画像データを変倍回路１１６ｆと幾何変換回路１１６ｅに送る。なお、Ｓ５０３で撮影された１枚目のＲＡＷ画像が、図７のデータフローダイアグラムのＮ枚目ＲＡＷ画像６０５であるとすると、１枚目のＹＵＶ画像は、図７のＮ枚目ＲＡＷ画像６０５を現像回路１１６ｋで現像したＮ枚目現像後画像６０６である。
【００６４】
映像信号処理回路１１６の変倍回路１１６ｆでは、１枚目のＹＵＶ画像に対し表示部１１８の画素数に応じた縮小処理が行われ、その縮小処理により得られた縮小画像がバッファメモリ１２２のＶＲＡＭ領域に格納される。なお、１枚目のＹＵＶ画像が図７のＮ枚目現像後画像６０６であるとすると、ＶＲＡＭ領域６０８には、Ｎ枚目現像後画像６０６を変倍回路１１６ｆで縮小処理した縮小画像が格納される。そして、ＶＲＡＭ領域から読み出された１枚目のＹＵＶ画像は表示駆動回路１１７を介して表示部１１８の画面上に表示される。この表示を見ることにより、ユーザはパノラマ撮影において１枚目に撮影された画像を確認できる。
【００６５】
また、映像信号処理回路１１６の幾何変換回路１１６ｅでは、Ｓ５０５の処理として、ＹＵＶ画像に対して撮影レンズ１０１の歪曲収差を補正する処理を施す。歪曲収差の補正処理は既存の技術であるためその説明は省略する。なお、１枚目のＹＵＶ画像が図７のＮ枚目現像後画像６０６であるとすると、図７のＮ枚目現像後画像６０６が幾何変換回路１１６ｅで歪曲収差補正された後の画像は、Ｎ枚目幾何変換後画像６０７である。このＮ枚目幾何変換後画像６０７はバッファメモリ１２２に格納され、次の画像が撮影されて後述する移動量算出回路１１６ｃでの移動量算出の際に、Ｎ−１枚目幾何変換後画像６０３としてバッファメモリ１２２から読み出されることになる。
【００６６】
次に、Ｓ５０６として、マイクロコンピュータ１２３は、撮像装置の各部を制御して２枚目の静止画撮影を行わせる。２枚目の画像撮影の場合も１枚目の画像撮影と同様に、マイクロコンピュータ１２３は、露光量の制御、シャッタ駆動の制御を行う。そして、撮像センサ１１２から読み出された２枚目の画像信号も１枚目と同様、Ａ／Ｄ変換器１１５でデジタル信号に変換され、映像信号処理回路１１６で最小限の画像処理が施され、２枚目のＲＡＷ画像のデータとしてバッファメモリ１２２に格納される。なお、２枚目のＲＡＷ画像が撮影された場合、この２枚目のＲＡＷ画像は、図７のデータフローダイアグラムではＮ枚目ＲＡＷ画像６０５となる。
【００６７】
また、Ｓ５０７において、マイクロコンピュータ１２３は、ジャイロセンサ１３３からジャイロ情報（図７のデータフローダイアグラムではジャイロ情報６０４）を取得する。ここで、ジャイロ情報としては、撮像装置のヨー（Ｙａｗ）方向、ピッチ（Ｐｉｔｃｈ）方向の２軸の情報を取得するが、光軸回りの回転であるロール（Ｒｏｌｌ）方向を加えた３軸の情報を取得することが好ましい。なお、ジャイロセンサ１３３からの出力そのものは角速度の情報であるが、パノラマ撮影では前回の撮影から今回の撮影までの間にどのくらいスイングされたかの検出が必要である。このため、マイクロコンピュータ１２３は、前回の撮影から今回の撮影までの間の角速度を積分し、２枚目以降の撮影時においてもそれぞれ前回からの回転角度を計算して不図示の内部メモリ等に記憶しておく。
【００６８】
そして、Ｓ５０８として、マイクロコンピュータ１２３は、Ｓ５０２で取得した焦点距離や画角と、撮像センサ１１２の画素数や画素ピッチの情報とを基に、Ｓ５０７で算出した回転角度を画素単位で表される移動量に変換する。このジャイロ情報を基に算出された移動量は、撮影方向を順次変更しながら各画像が撮影なされた際の、隣接した撮影方向（撮影画角）の間の移動量、つまり隣接した撮影方向の間で撮像装置がスイングされた際のスイング量に相当する。
【００６９】
ここで、実効焦点距離をｆ［ｍｍ］、撮像センサ１１２の有効撮像エリア幅をｗ［ｍｍ］とすると、一般に歪曲収差の無いレンズの画角α[°]（若しくは歪曲収差補正後の画角α）は、以下の式（１）により算出できる。
α[°]＝２×arctan（ｗ[ｍｍ]÷２÷ｆ[ｍｍ]）          式（１）
【００７０】
また、撮像センサ１１２の１画素当たりのサイズをｐ［μｍ］、ジャイロ情報に基づく撮像装置のスイング角をβ［°］とすると、スイング量に相当する画像内での移動量ｄ[pix]は、式（２）により算出できる。
ｄ[pix]＝tan（β[°]÷２）×ｆ[ｍｍ]／ｐ[μｍ]×１０００        式（２）
【００７１】
Ｓ５０６においてバッファメモリ１２２に格納された２枚目のＲＡＷ画像データも１枚目と同様、映像信号処理回路１１６の現像回路１１６により現像処理されて２枚目のＹＵＶ画像に変換される。なお、Ｓ５０６で撮影された２枚目のＲＡＷ画像が、図７のＮ枚目ＲＡＷ画像６０５であるとすると、２枚目のＹＵＶ画像は、図７のＮ枚目ＲＡＷ画像６０５を現像回路１１６ｋで現像したＮ枚目現像後画像６０６となる。そして、２枚目のＹＵＶ画像も１枚目と同様、映像信号処理回路１１６の変倍回路１１６ｆにより縮小処理が行われて、ＶＲＡＭ領域に格納された後、表示駆動回路１１７を介して表示部１１８の画面上に表示される。この表示を見ることにより、ユーザはパノラマ撮影において２枚目に撮影された画像を確認できる。
【００７２】
また、Ｓ５０９において、映像信号処理回路１１６の幾何変換回路１１６ｅでは、２枚目のＹＵＶ画像に対して１枚目と同様に歪曲収差を補正する処理が施される。
【００７３】
続いて、マイクロコンピュータ１２３は、Ｓ５１０として、映像信号処理回路１１６の幾何変換回路１１６ｅにより円筒座標変換を行わせる。ここで、円筒座標変換の仮想円筒は、撮影レンズ１０１の焦点距離にすることが好ましい。一般に、撮影画像の歪曲収差補正後の点（ｘ，ｙ）は、円筒座標変換を行うと（ｘ・ｃｏｓθ，ｙ・ｃｏｓθ）へと投影される。仮想円筒の半径をｒ[ｍｍ]とすると、θ[rad]は式（３）で表される。
θ[rad]＝arctan（ｘ・ｐ[μｍ]×１０００÷ｒ［ｍｍ］)      式（３）
【００７４】
本実施形態において、前述した円筒座標変換と歪曲収差補正とは共に幾何変換回路１１６ｅで行われる。このため、幾何変換回路１１６ｅは、それら円筒座標変換と歪曲収差補正を、前述した通り別に行ってもよいし、同時に行ってもよい。また、パノラマ撮影において各画像を撮影する際の撮影時間間隔が短く、例えば１枚目と２枚目の画像の差分が少ないような場合には円筒変換を省略することも可能である。なお、２枚目のＹＵＶ画像が図７のＮ枚目現像後画像６０６である場合、図７のＮ枚目現像後画像６０６が幾何変換回路１１６ｅで円筒座標変換及び歪曲収差補正された後の画像は、Ｎ枚目幾何変換後画像６０７となる。このＮ枚目幾何変換後画像６０７はバッファメモリ１２２に格納され、次の画像（３枚目の画像）が撮影されて移動量算出回路１１６ｃで移動量が算出される際に、Ｎ−１枚目幾何変換後画像６０３としてバッファメモリ１２２から読み出されることになる。
【００７５】
次に、マイクロコンピュータ１２３は、Ｓ５１１として、映像信号処理回路１１６の幾何変換回路１１６ｅに射影変換を行わせる。ただし、本実施形態の場合、射影変換は、パノラマ撮影において前述の図３（ｃ）や図３（ｄ）のように撮像装置２０１の光軸２１１が回転軸２１０と直交していない状態で撮像装置２０１がスイングされた場合に実施される。一方、例えば前述の図３（ａ）、図３（ｅ）や図３（ｆ）のように、撮像装置２０１の光軸２１１が回転軸２１０と直交している状態で撮像装置２０１がスイングされた場合には射影変換は行われない。撮像装置の光軸が回転軸に直交していない状態の場合に幾何変換回路１１６ｅで行われる射影変換の詳細な説明は後述する。
【００７６】
次に、Ｓ５１２として、映像信号処理回路１１６では、移動量算出回路１１６ｃにより、Ｎ枚目の幾何変換後画像６０７とＮ−１枚目の幾何変換後画像６０３とを用いて、移動ベクトルに相当する移動量を算出する。この移動量は、例えば画像から検出したエッジや抽出した特徴点を用いた既知の算出手法により求めることができる。本実施形態の移動量算出回路１１６ｃは、例えば画像内でエッジを検出し、また特徴点を幾つか抽出して、移動量を算出する。
【００７７】
また、移動量算出回路１１６ｃは、抽出された特徴点を標本化することでアフィン変換の係数算出を行う。なお、図７では、Ｎ−１枚目幾何変換後画像６０３とＮ枚目幾何変換後画像６０７を用いて、移動量算出回路１１６によりアフィン変換の係数６０９が算出される。
【００７８】
続いて、マイクロコンピュータ１２３は、Ｓ５１３として、映像信号処理回路１１６を制御し、移動量算出回路１１６ｃにて特徴点を用いて算出された移動量を基に、位置合わせ回路１１６ｄによりＮ枚目の画像とＮ−１枚目の画像の位置合わせを行う。本実施形態の場合、位置合わせ回路１１６ｄでは、例えばアフィン変換を用いて位置合わせを行う。なお、図７では、位置合わせ回路１１６ｄによる位置合わせ画像６１１が得られる。
【００７９】
ここでは基準となる特徴点の座標（ｘ，ｙ）が座標（ｕ，ｖ）に移動する場合を例に挙げると、この特徴点座標の移動は、以下の式（４）〜式（６）で表される。
【数１】
2019033344.tif 000003
【００８０】
式（４）の３×３行列若しくは係数ａ〜係数ｆのことをアフィン係数と呼ぶ。
例えば特徴点１が座標（ｘ１，ｙ１）から座標（ｕ１，ｖ１）に、特徴点２が座標（ｘ２，ｙ２）から（ｕ２，ｖ２）に、特徴点３が座標（ｘ３，ｙ３）から（ｕ３，ｖ３）にずれていたとする。この場合、式（４）から連立方程式を作ると式（５）、式（６）のようになる。この方程式を解くことでａ〜ｆのアフィン係数を算出することが可能である。
【数２】
2019033344.tif 000004
【００８１】
なお、４点以上の特徴点が抽出されている場合には、距離が近い特徴点を除外して最小二乗法を用いて正規化してもよい。また、移動量算出回路１１６ｃは、３点の特徴点を抽出できない場合や、抽出した３点の特徴点が直線状に並んでいる場合、３点の特徴点のうち２点が近い場合には、特徴点に基づく移動量の算出が失敗したと判断してもよい。
【００８２】
また、前述のようにして特徴点を用いて算出された移動量（アフィン係数）と、ジャイロ情報を基に算出された移動量とが大きく異なる場合には、画像に例えば繰り返しパターンや移動体が含まれていると考えられる。この場合、別の条件下で再度移動量を算出してもよい。また、このときの撮影画像を失敗画像とし、次の画像撮影の処理に戻してもよく、或いはパノラマ撮影自体が失敗したとして図６のフローチャートの処理を終了してもよい。
【００８３】
次に、Ｓ５１４として、映像信号処理回路１１６の合成回路１１６ｊは、前述したＳ５１２で特徴点を用いて算出された移動量（アフィン係数）を基に位置合わせがなされたＮ枚目の画像とＮ−１枚目の画像とを合成する。すなわち、映像信号処理回路１１６においてＮ枚目（Ｎ＞２）の画像の処理が行われている場合は、それ以前のＮ−１枚目までにおいて合成された合成画像６１０とＮ枚目における位置合わせ後の画像６１１との合成が行われる。この合成回路１１６ｊによる合成画像６１２が、前述した共通領域を重ね合わせて繋いだ合成画像に相当する。なお、パノラマ撮影される範囲に例えば水面など全体に亘って動きのある被写体が存在する場合には、合成結果の品位が落ちることがあるため、合成される画像の境界部分の合成比率を変えることで品位向上を図ってもよい。
【００８４】
次に、マイクロコンピュータ１２３は、Ｓ５１５において、パノラマ撮影によりパノラマ画像の生成に使用する全ての画像の撮影が終了したか否か判定する。例えば、マイクロコンピュータ１２３は、ＳＷ２の押下が続いていたならば、次の画像の撮影が行われると判定して、Ｓ５０６に処理を戻して、次の画像の撮影を行わせる。
【００８５】
一方、マイクロコンピュータ１２３は、Ｓ５１５においてＳＷ２の押下が解除されて画像撮影が終了したと判定した場合、Ｓ５１６として、合成画像６１２を圧縮・伸長回路１１６ｌでＪＰＥＧ等の汎用フォーマットへ圧縮する処理を行わせる。そして、マイクロコンピュータ１２３は、Ｓ５１７において、その圧縮された画像データを、メモリコントローラ１１９を介してメモリ１２０に保存させる。なお、圧縮する処理の前に、合成画像６１２の暗部を見易くするためにガンマ補正回路１１６ｂでγ補正を行ってもよく、また、画像全体の色調を統一するための色調補正を行ってもよい。また、合成画像のサイズが大きい場合には、予めユーザにより指定されたサイズになるように、変倍回路１１６ｆで変倍が行われてもよい。さらに、手ぶれなどを考慮し、最大内接矩形或いは予め決められた領域で、トリミング回路１１６ｇによる切り出しを行ってから保存するようになされてもよい。
【００８６】
以下、図６のＳ５１１において幾何変換回路１１６ｅが行う射影変換について説明する。本実施形態の場合、パノラマ撮影において、前述の図３（ｃ）や図３（ｄ）のように撮像装置２０１の光軸２１１が回転軸２１０に直交していない状態で撮像装置２０１がスイングされて撮影された画像に対して幾何変換回路１１６ｅの射影変換が行われる。
【００８７】
前述した図３（ｃ）や図３（ｄ）のように、撮像装置２０１の光軸２１１と回転軸２１０とが直交していない状態で撮像装置２０１をスイングさせて撮影が行われた場合、前述したアフィン変換の係数には回転成分が含まれることになる。このため、本実施形態の幾何変換回路１１６ｅでは、画像を回転させずに台形歪を補正するように射影変換を行う。
【００８８】
例えば、撮像装置の光軸が回転軸に対して直交している場合、円筒座標変換の際には、図８（ａ）に示すように、画像中心が円筒変換しても座標が変わらないように画像中心が円筒の真正面になるような円筒変換を行う。
これに対し、撮像装置２０１の光軸２１１と回転軸２１０とが直交していない場合には、図８（ｂ）のように、撮像装置２０１の光軸２１１と基準方向（水平方向）との間の角度に応じて、仮想円筒の投影面を上若しくは下にずらして（シフトさせて）投影する。すなわち、光軸２１１と基準方向との間の角度をψとした場合、式（７）によりシフト量ＳＶ[pix]を求め、そのシフト量ＳＶ[pix]分だけ中心座標をずらすようにして（シフトさせるように）投影する。なお、式（７）中のｆは撮影レンズ１０１の焦点距離、ｐは画素ピッチ（１画素あたりの長さ）である。
ＳＶ[pix]＝tanψｆ[ｍｍ]×１０００／ｐ[μｍ]        式（７）
【００８９】
そして、パノラマ撮影では、前述したように画像の中心部分を切り出して合成していくため、台形状の補正で近似することが可能である。このような補正は、アフィン変換では実現できないため、本実施形態では、式（８）で表される射影変換により実現している。
【数３】
2019033344.tif 000005
【００９０】
式（８）で表される射影変換では、元の座標（ｘ，ｙ）が座標（ｘ'，ｙ'）に幾何変換され、式中の係数ａ〜係数ｈは射影変換係数である。係数ａ〜係数ｆは、アフィン変換係数と等価であり、係数ｇと係数ｈが、台形状の補正に関する係数である。本実施形態のように、撮像装置２０１が横方向（水平方向）にスイングされる場合、すなわち台形の上底と下底が平行である台形歪を長方形に変換する場合には特に係数ｈが関わる。
【００９１】
ここで、係数ｈは撮影レンズ１０１の焦点距離と、光軸と回転軸との角度から算出される。また、光軸は加速度センサ１３５の出力から算出可能である。図９（ａ）と図９（ｂ）は加速度センサ１３５のｘ軸，ｙ軸，ｚ軸を表しており、撮像装置２０１のＺ軸（上下方向）とＸ軸（光軸方向）の加速度センサ１３５の値の比は、ａｒｃｔａｎを求めることで撮像装置のピッチ角（ψ）として求めることができる。
【００９２】
一方で、例えば１枚目撮影時と２枚目撮影時の加速度センサ１３５やジャイロセンサ１３３の出力から回転軸の角度を求めることは困難であることが多い。つまり、ユーザが撮像装置をスイングさせる際のスイング速度にもよるが、回転角度は通常０〜２０°程度であり、また撮影開始時はスイング速度が遅く、センサノイズなどを加味すると、正確に回転軸の角度を求めることは困難である。ただし、ユーザは一般に地面に対して垂直に立って撮影することが多いため、その回転軸を回転中心としたスイング方向は水平方向であると仮定できる。
【００９３】
このため、係数ｈは、例えば下記の式（９）により算出可能である。なお、式中のψは加速度センサ１３５から求めたピッチ方向の角度であり、ｆは撮影レンズ１０１の実効焦点距離である。
ｈ＝tan（ψ）／ｆ                式（９）
【００９４】
本実施形態では、上述のように回転軸を回転中心としたスイング方向が水平方向であると仮定して算出している。なお、パノラマ撮影が終わった後に各画像を合成する場合には、撮影毎に順次合成する場合とは異なり、撮影時に得られている複数のセンサ情報を予め解析しておくことが可能であるため、回転軸と光軸の角度から係数ｈを求めることも可能となる。
【００９５】
さらに、本実施形態では、加速度センサ１３５の出力などから係数ｈを算出しているが、式（８）、式（９）でアフィン係数を算出したのと同様に、少なくとも四つの移動ベクトルが算出できれば、係数ｇ、係数ｈを求めることが可能となる。
【００９６】
なお、ここでは、図９（ａ）のように撮像装置２０１を正位置（横位置）に構えた状態で横方向（水平方向）にスイングする例を示したが、画角を広げる目的で撮像装置を縦位置に構えた状態で横方向（水平方向）にスイングする場合も本実施形態に含まれる。一方、撮像装置を重力方向（縦方向）にスイングする場合は、回転軸と光軸が直交する関係になりやすいため、本実施形態が適用される場合は少ないと考えられる。また、撮像装置を重力方向（縦方向）にスイングする場合、スイングによって重力方向が撮影の度に異なるようになり、回転軸と光軸が直交する状態からどの程度ずれるのかの検出が困難であるため、この場合は、係数ｇ、係数ｈは画像から求めることとなる。
【００９７】
以上説明したように、本実施形態においては、撮像装置の光軸と撮像装置をスイングする際の回転軸とが直交していない姿勢び状態でパノラマ撮影がなされた場合に、台形歪を補正するように射影変換する。これにより、パノラマ画像合成時のずれ等が低減された高品位のパノラマ画像を生成することが可能となる。
【００９８】
＜第２の実施形態＞
次に、第２の実施形態について説明する。第１の実施形態では、円筒変換の後に台形補正のための射影変換を行ったが、第２の実施形態では円錐台上へ投影する幾何変換を行う場合について説明する。
【００９９】
パノラマ撮影の際の各画像の撮影間隔が短く、例えばＮ枚目とＮ＋１枚目とで画像に差が少ない場合には、第１の実施形態のように円筒の側面に投影する円筒変換と射影変換による台形歪み補正で近似が可能である。しかしながら、パノラマ撮影時の撮影間隔が長かったり、ユーザによるスイング速度が遅かったりして、Ｎ枚目とＮ＋１枚目の画像の差が大きい場合、円錐台の側面に投影する円錐台変換の幾何変換を行うことが望ましい。
【０１００】
したがって、第２の実施形態の場合、図６のフローチャートのＳ５１０とＳ５１１で行われる円筒座標変換及び台形状の歪を補正する射影変換を、円錐台の側面への投影する円錐台変換により実現する。ここで、円筒座標変換とは異なり、円錐台上への投影変換の場合は仮想円錐台の高さによってその投影半径が異なる。
【０１０１】
第２の実施形態の場合、撮像装置の光軸と基準方向（水平方向）との間の角度をψとし、撮影画像の歪曲収差補正後の点を（ｘ，ｙ）とすると、式（３）のｒは、以下の式（１０）で求めたｒ'（仮想円錐台の高さに応じた投影半径）となされる。なお、式（１０）のｆは撮影レンズ１０１の実効焦点距離である。
ｒ'＝ｆ−ｙ・ｔａｎψ            式（１０）
【０１０２】
以上説明したように、第２の実施形態によれば、円錐台上への投影変換を行うことで、第１の実施形態の円筒変換と台形状の歪み補正での近似よりも高精度に補正が可能となる。
【０１０３】
＜第３の実施形態＞
次に、第３の実施形態について説明する。
前述した第１の実施形態では回転軸と光軸が直交しない場合に射影変換を用いて台形歪を補正して合成時のずれ等を低減させている。しかしながら、例えば、被写体として地面に垂直に建っている建物と、地面や道路のようなに水平方向の被写体とが写っている場合、合成時のずれが目立つ場合がある。これは、建物のように地面に対して垂直な被写体の画像と、地面や道路のように水平方向の被写体の画像とでは、歪み補正の補正量が異なるからである。特に、水平方向の被写体は、基準方向の基準面（例えば地面等の水平面）からの高さによっても、その補正量が異なること、また、垂直なものとはその補正量が異なることから、両方を正確に補正することができないためである。
【０１０４】
そこで、第３の実施形態では、撮像装置の光軸と回転軸とが直交していない場合において、撮像装置の光軸が基準方向に対して所定の方向に傾いた状態か、或いは所定の方向とは逆の方向に傾いた状態かによって、補正量を異ならせるようにする。本実施形態において、所定の方向に傾いた状態とは、例えば撮像装置の光軸が基準方向に対して下方向に傾いた状態である。第３の実施形態の場合、撮像装置の光軸が基準方向に対して下方向に傾いている場合には、射影変換の係数（前述の式（９）の係数ｈ）を算出しないか、又は、光軸が基準方向に対して上方向に傾いている場合よりも弱めた射影変換の係数を算出する。具体的には、撮像装置の光軸が基準方向に対して下方向に傾いている場合には、前述の式（９）において係数ｈに０〜０．５倍などの重み付け係数を乗ずる。例えば、係数ｈに０倍の重み付け係数を乗じた場合には、歪み補正が行われないことになる。また、係数ｈに例えば０．５倍の重み付けの係数を乗じた場合では、光軸が基準方向に対して上方向（所定の方向に対する逆の方向）に傾いている場合（重み付けが例えば１倍）と比較して、弱い歪み補正が行われることになる。また、光軸が基準方向に対して下方向に傾いている場合において、傾きの角度が小さいときには誤差も少ないことから、下方向の傾きの角度が大きくなるほど、重み付けの係数を小さくするように設定してもよい。
【０１０５】
式（９）から判るように、撮影レンズ１０１の焦点距離（ｆ）が短い方が係数ｈは大きくなり影響が大きくなる。さらに焦点距離が短いほど画角は広くなり、被写体にもよるが、地面に垂直になっている長方形の建物の被写体と、地面や道路など水平方向の被写体とが混在する可能性が高くなる。したがって、第３の実施形態の場合、焦点距離に応じて係数ｈに乗ずる重み付けを変えるようにすることが望ましい。すなわち、第３の実施形態では、焦点距離が短くなるほど、係数ｈに乗ずる重み付けを大きくすることが望ましい。
【０１０６】
以下、第３の実施形態では、撮像装置の光軸と回転軸とが直交していない場合において、撮像装置の光軸と基準方向との間の角度に応じて、係数ｈに乗ずる重み付けを変える例を挙げて説明する。
例えば基準方向の基準面（地面）からの高さが０ｍの位置に撮像装置の光軸中心が来るようにユーザが撮像装置を配置した場合、画角内に入る地面と空や建物など地上部の割合は式（１１）により求められる。なお、式中のψは光軸と基準方向との間の角度、αは式（１）で求めた高さ方向の画角である。ただし、計算結果が負数になった場合は各割合を０、計算結果が１を超えた場合は各割合を１とする。
地面が写る割合  ＝｛tan(α＋tan(ψ)｝／｛２・tan(α)｝
地上部が写る割合＝｛tan(α−tan(ψ)｝／｛２・tan(α)｝      式（１１）
【０１０７】
また、撮像センサ１１２の有効撮像エリアのサイズが幅２２．３２ｍｍ、高さ１４．８８ｍｍのいわゆるＡＰＳ−Ｃサイズで、撮影レンズ１０１の焦点距離が１８ｍｍであった場合、式（１）から画角αは約４５°となる。したがって例えば、光軸と基準方向との間の角度が約２２．５°で下方向に傾いていた場合は全てが地面、すなわち基準面のみを写していることになる。逆に、上方向に２２．５°（ψ＝−２２．５°）に傾いていた場合には建物や空などの地上部が略々１００％写っていることになる。
【０１０８】
このため、式（９）にて求めた係数ｈに、この地上部が写る割合を補正係数として乗じた値を、実際に射影変換するときに用いる。また、このようにした場合、光軸と基準方向との間の角度が下方向の傾きであった場合には、殆ど台形状の歪補正がかからなくなるため、式（１１）で求めた地上部が写る割合に０〜０．５程度の数値を足した値を係数ｈに乗ずることも好ましい。この数値は、設計事項として適宜チューニング可能である。
【０１０９】
前述の例では、基準面（地面）からの高さが０ｍのところに撮像装置（光軸）が配されたと仮定しているが、パノラマ撮影では被写体が遠距離であることが多く、この仮定をもとに計算しても支障はない。また、より正確には垂直に建っているものと、水平のものとの比率を求めることが望ましく、その場合は、不図示の視差情報から距離マップを作成することで実施可能である。例えば、高層ビルから町並みを見下ろすようなシーンでは、小さな家やビルなどは高周波成分が多く、実際には合成時のずれが生じても目立たない場合が多い。逆に、水平線よりも上部に突出するような部分はずれが生じると目立ちやすい。これは水平線よりも上に突出している部分は、背景が空など低周波部分の中に被写体があるため、目立ちやすいからである。そのため、式（１１）で求めた地面が写る割合に、画像サイズ（高さ）を乗じて、画像内に含まれる水平線を求め、それよりも上部をブロック状に分割してエッジを抽出し、その積分結果を求めることで、空などの低周波以外の被写体が写っている量を求める。その量に応じて係数ｈに重み付けを行うことも好ましい様態の一つである。
【０１１０】
第３の実施形態では、第１の実施形態で説明した円筒変換後に台形状の歪補正を行う際に、光軸と基準方向との間の傾きが上方向か下方向かで補正量を異ならせる例を示した。第３の実施形態においても、前述の第２の実施形態のように円錐台上に投影する例への適用が可能であり、例えば下方向の傾きの場合にはｔａｎψに０〜０．８程度の重み付け係数を乗算することで実施可能となる。この場合も前述同様に、地面が写る割合や、水平線より上部に写る被写体の量に応じて重み付けの係数を乗算することも好ましい。
【０１１１】
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。本実施形態の画像処理装置は、例えば撮像センサ１１２や撮影レンズ１０１などを備えず、メモリカード等の外部メモリから、パノラマ撮影された角画像と撮影時のレンズ情報や姿勢情報を取得して、パノラマ合成を行う装置であってもよい。また、本実施形態の画像処理装置は、これらの処理をコンピュータ上で動作させるためのプログラム、それらが記録された記録媒体も含まれる。
【０１１２】
＜その他の実施形態＞
本実施形態の撮像装置は、デジタルカメラだけでなく、デジタルビデオカメラ、カメラ機能を備えたスマートフォンやタブレット端末等の各種携帯端末にも適用可能であり、さらには工業用カメラ、車載カメラ、医療用カメラ等にも適用可能である。
【０１１３】
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【０１１４】
上述の実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明は、その技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【０１１５】
１０１：撮影レンズ、１１２：撮像センサ、１１６：映像信号処理回路、１１６ｃ：移動量算出回路、１１６ｄ：位置合わせ回路、１１６ｅ：幾何変換回路、１１６ｆ：変倍回路、１１６ｊ：合成回路、１２３：マイクロコンピュータ、１３３：ジャイロセンサ、１３５：加速度センサ、２０１：撮像装置
【図１】
2019033344.tif 000006
【図２】
2019033344.tif 000007
【図３】
2019033344.tif 000008
【図４】
2019033344.tif 000009
【図５】
2019033344.tif 000010
【図６】
2019033344.tif 000011
【図７】
2019033344.tif 000012
【図８】
2019033344.tif 000013
【図９】
2019033344.tif 000014