(57)【要約】【課題】  画像処理装置を提供すること。【解決手段】  画像処理装置１１０は、少なくとも所定軸周りの角度座標を含む座標系で表される、連続した画像を含む動画を処理する。画像処理装置１１０は、動画データを取得する動画データ取得手段（２１２，２１４，２２０）と、動画データに対応するセンサデータを取得するセンサデータ取得手段（２１６，２１８，２２４，２２６）と、センサデータに基づいて、動画の複数のフレームにわたり画像の表示の基準が撮影中の特定方向に固定されるように、基準軸周りの回転変化を打ち消す補正を前記画像に施す回転補正手段２３０とを含む。【選択図】  図４
2020096349.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも所定軸周りの角度座標を含む座標系で表される、連続した画像を含む動画を処理する画像処理装置であって、
動画データを取得する動画データ取得手段と、
前記動画データに対応するセンサデータを取得するセンサデータ取得手段と、
前記センサデータに基づいて、前記動画の複数のフレームにわたり前記画像の表示の基準が撮影中の特定方向に固定されるように、基準軸周りの回転変化を打ち消す補正を前記画像に施す回転補正手段と
を含む、画像処理装置。
【請求項２】
所定時点の基準フレームでの前記動画を撮像するカメラの姿勢に基づく前記基準軸に垂直な平面内での方向が、前記撮影中の特定方向として定められ、前記回転変化の量は、基準フレームでの該姿勢に基づく方向と、補正対象フレームでの前記カメラの姿勢に基づく前記基準軸に垂直な平面内での方向との差分に基づく、請求項１に記載の画像処理装置。
【請求項３】
前記所定時点は、前記動画の撮影の開始時点または前記動画の撮影中の指示を受け付けた時点である、請求項２に記載の画像処理装置。
【請求項４】
前記複数のフレームに対応する一定期間は、前記動画の開始または固定の開始を指示された第１の時点から前記動画の終了または固定の終了を指示された第２の時点までの期間である、請求項２または３に記載の画像処理装置。
【請求項５】
前記基準軸に垂直な平面内での前記カメラが移動している進行方向を、前記撮影中の特定方向として決定する決定手段を含み、前記進行方向が前記特定方向として決定された場合、前記回転変化の量は、前記進行方向と、補正対象フレームでの前記カメラの姿勢に基づく前記基準軸に垂直な平面内での方向との差分に基づく、請求項１〜３のいずれか１項に記載の画像処理装置。
【請求項６】
前記決定手段は、前記センサデータに基づいて、規定数のフレームでの移動距離が所定の条件を満たす場合に、再度求めた進行方向を前記撮影中の特定方向として決定することを特徴とし、決定された前記撮影中の特定方向に対応した前記複数のフレームに対応する一定期間は、該決定から次回の決定までの期間である、請求項５に記載の画像処理装置。
【請求項７】
前記座標系は、前記所定軸に対する角度座標をさらに含み、前記画像処理装置は、
前記動画の各フレームでの前記基準軸に対する撮像時の傾き角に基づいて、前記動画の各フレームに対し、前記所定軸が前記基準軸に略一致するように天頂補正を施す天頂補正手段
をさらに含む、請求項１〜６のいずれか１項に記載の画像処理装置。
【請求項８】
前記動画は、２つの角度座標を含む座標系で表される全天球画像を各フレームとして含み、前記動画は、複数の撮像素子により撮像されたものであり、前記全天球画像は、前記複数の撮像素子で撮像された複数の部分画像を合成することで構成され、前記動画データは、各フレームとして、前記全天球画像または前記複数の部分画像を含み、前記補正は、前記全天球画像または前記複数の部分画像に対して施され、前記基準軸は、重力方向である、請求項１〜７のいずれか１項に記載の画像処理装置。
【請求項９】
前記動画に対応するセンサデータは、加速度センサが出力するデータ、角速度センサが出力するデータ、地磁気センサが出力するデータおよびこれらのセンサが出力するデータに基づいて算出される回転補正データのうちの少なくとも１つを含む、請求項１〜８のいずれか１項に記載の画像処理装置。
【請求項１０】
少なくとも所定軸周りの角度座標を含む座標系で表される、連続した画像を含む動画を撮像する撮像装置であって、
動画の各フレームを撮像する撮像手段と、
絶対座標系における該撮像装置の変位量を示すセンサデータを記録する記録手段と、
前記センサデータに基づいて、前記動画の複数のフレームにわたり前記画像の表示の基準が撮影中の特定方向に固定されるように、基準軸周りの回転変化を打ち消す補正を前記画像に施す回転補正手段と
を備える、撮像装置。
【請求項１１】
前記動画の撮影中に前記特定方向を指定する指示を受け付ける受付手段をさらに含む、請求項１０に記載の撮像装置。
【請求項１２】
少なくとも所定軸周りの角度座標を含む座標系で表される、連続した画像を含む動画を再生するための動画再生システムであって、
動画データを取得する動画データ取得手段と、
前記動画データに対応するセンサデータを取得するセンサデータ取得手段と、
前記センサデータに基づいて、前記動画の複数のフレームにわたり前記画像の表示の基準が撮影中の特定方向に固定されるように、基準軸周りの回転変化を打ち消す補正を前記画像に施す回転補正手段と、
前記補正が施された前記動画の画像の少なくとも一部を、表示手段に前記表示の基準に基づいて画面表示させる表示制御手段と
を含む、動画再生システム。
【請求項１３】
前記基準軸に対し垂直方向の平面座標系における撮影中の特定方向を算出する回転量計算手段をさらに含む、請求項１２に記載の動画再生システム。
【請求項１４】
前記動画データ取得手段は、動画の各フレームを撮像する撮像手段を含み、前記センサデータ取得手段は、前記撮像手段とともに備えられたセンサの出力データまたは該出力データから計算される補正データを、前記動画の各フレームに関連付けて記録する記録手段を含むか、または、
前記動画データ取得手段および前記センサデータ取得手段は、撮像手段により撮像された動画の各フレームとともに、該撮像手段とともに備えられたセンサの出力データまたは該出力データから計算される補正データを受信する受信手段を含む、
請求項１２または１３に記載の動画再生システム。
【請求項１５】
少なくとも所定軸周りの角度座標を含む座標系で表される、連続した画像を含む動画を処理するための方法であって、コンピュータが、
動画データを取得するステップと、
前記動画データに対応するセンサデータを取得するステップと、
前記センサデータに基づいて、前記動画の複数のフレームにわたり前記画像の表示の基準が撮影中の特定方向に固定されるように、基準軸周りの回転変化を打ち消す補正を前記画像に施すステップと
を実行する方法。
【請求項１６】
少なくとも所定軸周りの角度座標を含む座標系で表される、連続した画像を含む動画を処理する画像処理装置を実現するためのプログラムであって、コンピュータを、
動画データを取得する動画データ取得手段、
前記動画データに対応するセンサデータを取得するセンサデータ取得手段、および
前記センサデータに基づいて、前記動画の複数のフレームにわたり前記画像の表示の基準が撮影中の特定方向に固定されるように、基準軸周りの回転変化を打ち消す補正を前記画像に施す回転補正手段
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、画像処理装置、撮像装置、動画再生システム、方法およびプログラムに関する。
【背景技術】
【０００２】
近年、撮影地点の全方位を動画撮影できる全天球カメラが普及している。このような全天球カメラでは、固定した状態で撮像するほか、ユーザが手持ちで移動しながら動画を撮像する場合が想定される。その際に、全天球カメラの手振れや傾きを補正して、ぶれの少ない動画にする補正技術も知られている。
【０００３】
全天球カメラによって撮影された全天球動画には、通常、視聴者が全天球動画を視聴する際の初期の正面方向がある。一般的には、視聴する際の正面方向は、全天球カメラで撮影したときの全天球カメラの正面方向（例えば、二眼ある場合の一方のレンズの正面方向など）に追随する。しかしながら、視聴する際の正面方向が撮像時の全天球カメラの動きに追随する場合、撮影者の撮影条件に依って表示される映像が大きく変化し、視聴時に視聴者に酔いを生じさせる虞がある。
【０００４】
例えば撮影者が全天球カメラを頭部に固定して撮影を行う場合、視聴時の正面方向が撮像時の全天球カメラの動きに追随してしまうと、撮影者が首を振って周囲を見渡せば全天球動画が大きく回転し、視聴者に酔いを生じさせる要因となる。さらに、全天球動画が大きく回転することが、動画自体を非常に見難いものとしてしまう虞もある。また、全天球カメラを頭部に固定して撮影する場合の他、手持ちであっても、撮影中正面方向が大きく変化する場合は同様である。
【０００５】
特開２０１７−１４７６８２号公報（特許文献１）は、画像データについて、グローバル座標における水平面内での揺れは微小揺れ成分を除いた補正による座標変換を行って全天球画像を生成する構成を開示する。しかしながら、鉛直方向軸周りの回転について揺れの高周波成分が補正されるものの、撮影者が首を振って周囲を見渡すというような意図的な動作には追従してしまうため、視聴時に視聴者に酔いを生じさせてしまう点では充分なものではなかった。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本開示は、上記点に鑑みてなされたものであり、本開示は、動画の視聴時における撮影中の基準軸周りの回転によって生じる視聴者の酔いを抑えることができる画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本開示では、上記課題に対応するべく、下記特徴を有する、少なくとも所定軸周りの角度座標を含む座標系で表される、連続した画像を含む動画を処理する画像処理装置を提供する。本画像処理装置は、動画データを取得する動画データ取得手段と、動画データに対応するセンサデータを取得するセンサデータ取得手段とを含む。本画像処理装置は、さらに、センサデータに基づいて、動画の複数のフレームにわたり画像の表示の基準が撮影中の特定方向に固定されるように、基準軸周りの回転変化を打ち消す補正を画像に施す回転補正手段を含む。
【発明の効果】
【０００８】
上記構成により、動画の視聴時における撮影中の基準軸周りの回転によって生じる視聴者の酔いを抑えることができる。
【図面の簡単な説明】
【０００９】
【図１】本実施形態による全天球動画システムを構成する全天球カメラの断面図。
【図２】本実施形態による全天球カメラを頭部に固定する場合を説明する図。
【図３】本実施形態による全天球動画システムのハードウェア構成図。
【図４】本実施形態による全天球動画システム上に実現される全天球動画再生機能に関連する主要な機能ブロック図。
【図５】（Ａ）全天球画像の生成における画像データフロー図、および、全天球画像のデータ構造を（Ｂ）平面で表した場合および（Ｃ）球面で表した場合について説明する図。
【図６】本実施形態による全天球画像の天頂補正および回転補正について説明する図。
【図７】本実施形態による全天球画像の天頂補正および回転補正によって得られる全天球画像を説明する図。
【図８】特定の実施形態による全天球動画システムにおける動画の撮影から視聴するまでの処理を説明するシーケンス図。
【図９】他の特定の実施形態による全天球動画システムにおける動画の撮影から視聴するまでの処理を説明するシーケンス図。
【図１０】本実施形態による全天球動画システムを構成する全天球カメラが実行するフレーム合成データに対する回転処理を示すフローチャート。
【図１１】撮影者が頭部に全天球カメラを装着して移動した場合の進行方向と撮影正面方向の関係を、一例をもって説明する図。
【図１２】撮影者が図１１に示す動作をした場合の撮影された回転補正前の全天球画像および回転補正後の全天球画像を説明する図（１／２）。
【図１３】撮影者が図１１に示す動作をした場合の撮影された回転補正前の全天球画像および回転補正後の全天球画像を説明する図（２／２）。
【図１４】他の実施形態による全天球動画システムを構成する全天球カメラが実行する、フレーム合成データに対する回転処理を示すフローチャート。
【発明を実施するための形態】
【００１０】
以下、本実施形態について説明するが、実施形態は、以下に説明する実施形態に限定されるものではない。なお、以下の実施形態では、画像処理装置（および撮像装置）および動画再生システムの一例として、それぞれ、全天球カメラおよび全天球動画システムを用いて説明する。
【００１１】
以下、図１〜図３を参照しながら、本実施形態による全天球動画システムの全体構成について説明する。
【００１２】
図１は、本実施形態による全天球動画システムを構成する全天球カメラ１１０の断面図である。図１に示す全天球カメラ１１０は、撮像体１２と、上記撮像体１２、コントローラ１５およびバッテリ１６などの部品を保持する筐体１４と、上記筐体１４に設けられたシャッター・ボタン１８とを備える。
【００１３】
図１に示す撮像体１２は、２つの結像光学系２０Ａ，２０Ｂと、ＣＣＤ（Charge Coupled Device）センサやＣＭＯＳ（Complementary Metal Oxide Semiconductor）センサなどの２つの撮像素子２２Ａ，２２Ｂとを含み構成される。結像光学系２０各々は、例えば６群７枚の魚眼レンズとして構成されている。上記魚眼レンズは、図１に示す実施形態では、１８０度（＝３６０度／ｎ；光学系の数ｎ＝２）より大きい全画角を有し、好適には、１８５度以上の画角を有し、より好適には、１９０度以上の画角を有する。このような広角な結像光学系２０と撮像素子２２とを１個ずつ組み合わせたものを広角撮像光学系と参照する。なお、説明する実施形態では、光学系の数が２である場合を一例として説明するが、広角な領域を撮影可能なものであれば、光学系の数は、１であってもよいし、３以上であってもよい。また、魚眼レンズのような１８０度以上の画角を持つものに限られるものではない。
【００１４】
図１に示す実施形態では、結像光学系２０Ａ，２０Ｂは、同一仕様のものであり、それぞれの光軸が合致するようにして、互いに逆向きに組み合わせられる。撮像素子２２Ａ，２２Ｂは、受光した光分布を画像信号に変換し、コントローラ上の画像処理手段に順次、画像フレームを出力する。詳細は後述するが、撮像素子２２Ａ，２２Ｂでそれぞれ撮像された画像は、合成処理されて、これにより、立体角４πステラジアンの画像（以下「全天球画像」と参照する。）が生成される。全天球画像は、撮影地点から見渡すことのできる全ての方向を撮影したものとなる。そして、全天球画像の連続するフレームにより、全天球動画が構成される。
【００１５】
ここで、説明する実施形態では、全天球画像および全天球動画を生成するものとして説明するが、全天周画像や全天周動画、水平面のみ３６０度を撮影した、いわゆるパノラマ画像およびパノラマ動画であってもよいし、その他、１８０度の画角を撮影した半球の画像または半円筒の画像であってもよく、球面または円筒上の画像情報を持つ画像データであればよい。すなわち、本実施形態による動画およびそれに含まれる画像は、所定軸周りの角度座標を含む座標系で表される画像である。上記全天球画像・動画、半球画像・動画、部分的な球面の画像の場合は、動径を定数（例えば１）として、所定軸と動径とがなす角を表す角度座標および所定軸周りの角度座標を含む球面座標系で表される。上記パノラマ画像・動画またはその部分画像の場合は、動径を定数（例えば１）として、円筒の軸方向の座標および該軸周りの角度座標を含む円筒座標系で表される。
【００１６】
図２は、図１の全天球カメラ１１０を撮影者の頭部５０に固定する場合を説明する。図２は、帽子型の固定器具５２に、全天球カメラ１１０を固定している例である。このように撮影者の頭部５０に全天球カメラ１１０を装着することで、全天球カメラ１１０によって撮像される画像データの撮影正面方向は、撮影者の首振り運動Ｈに追従する形となる。撮影正面方向はあらかじめ設定されている方向であって、動画データを再生する際に表示される基準となる方向である。図２には、撮影者の進行方向Ｔも併せて示してある。撮影者は、辺りを見渡しながら進む場合があり、首振り運動Ｈによる撮影正面方向と、進行方向Ｔとは必ずしも一致しない。図２に示すように全天球カメラ１１０を帽子型の固定器具５２に固定して、頭部５０に装着する以外にも、全天球カメラ１１０自体が頭部５０に装着可能な形状のもの（全天球カメラの機能が埋め込まれたヘルメットや帽子）である場合もある。
【００１７】
図３（Ａ）は、本実施形態による全天球動画システムを構成する全天球カメラ１１０のハードウェア構成を示す。全天球カメラ１１０は、説明する実施形態における画像処理装置または撮像装置に対応する。
【００１８】
全天球カメラ１１０は、ＣＰＵ（Central Processing Unit）１１２と、ＲＯＭ（Read Only Memory）１１４と、画像処理ブロック１１６と、動画圧縮ブロック１１８と、ＤＲＡＭ（Dynamic Random Access Memory）インタフェース１２０を介して接続されるＤＲＡＭ１３２と、外部センサインタフェース１２４を介して接続されるセンサ１３６とを含み構成される。ここで、ＣＰＵ１１２、ＲＯＭ１１４、画像処理ブロック１１６および動画圧縮ブロック１１８は、図１に示したコントローラ１５上に搭載される。
【００１９】
ＣＰＵ１１２は、全天球カメラ１１０の各部の動作および全体動作を制御する。ＲＯＭ１１４は、ＣＰＵ１１２が解読可能なコードで記述された、オペレーティング・システム（ＯＳ）や制御プログラムや各種パラメータを格納する。画像処理ブロック１１６は、２つの撮像素子１３０Ａ，１３０Ｂ（図１における撮像素子２２Ａ，２２Ｂである。）と接続され、それぞれで撮像された画像の画像信号が入力される。画像処理ブロック１１６は、ＩＳＰ（Image Signal Processor）などを含み構成され、撮像素子１３０から入力された画像信号に対し、シェーディング補正、ベイヤー補間、ホワイト・バランス補正、ガンマ補正などを行う。
【００２０】
動画圧縮ブロック１１８は、ＭＰＥＧ−４  ＡＶＣ／Ｈ．２６４などの動画圧縮および伸張を行うコーデック・ブロックである。ＤＲＡＭ１３２は、各種信号処理および画像処理を施す際にデータを一時的に保存する記憶領域を提供する。
【００２１】
センサ１３６は、図３（Ａ）に示す実施形態では、角速度センサ１３６Ａおよび加速度センサ１３６Ｂを含み構成される。角速度センサ１３６Ａは、３軸の角速度成分を検出するセンサである。加速度センサ１３６Ｂは、３軸の加速度成分を検出するセンサである。検出された加速度成分および角速度成分は、後述するように、重力方向への全天球画像の天頂補正および重力方向周りの回転補正を施すために用いられる。センサ１３６としては、さらに、方位角などを求めるための地磁気センサ（電子コンパスともいう。）など他のセンサを備えてもよく、方位角を重力方向周りの回転補正を施すために用いてもよい。
【００２２】
全天球カメラ１１０は、さらに、外部ストレージインタフェース１２２と、ＵＳＢ（Universal Serial Bus）インタフェース１２６と、シリアルブロック１２８とを含み構成される。外部ストレージインタフェース１２２には、外部ストレージ１３４が接続される。外部ストレージインタフェース１２２は、メモリカードスロットに挿入されたメモリカードなどの外部ストレージ１３４に対する読み書きを制御する。ＵＳＢインタフェース１２６には、ＵＳＢコネクタ１３８が接続される。ＵＳＢインタフェース１２６は、ＵＳＢコネクタ１３８を介して接続されるスマートフォンなどの外部装置とのＵＳＢ通信を制御する。シリアルブロック１２８は、スマートフォンなどの外部装置とのシリアル通信を制御し、無線ＮＩＣ（Network Interface Card）１４０が接続される。
【００２３】
電源スイッチの操作によって電源がオン状態になると、上記ＯＳや制御プログラムがメインメモリにロードされる。ＣＰＵ１１２は、メインメモリに読み込まれたプログラムに従って、装置各部の動作を制御するとともに、制御に必要なデータをメモリ上に一時的に保存する。これにより、全天球カメラ１１０の後述する各機能部および処理が実現される。
【００２４】
図３（Ｂ）は、本実施形態による全天球動画システムを構成する情報端末１５０のハードウェア構成を示す。情報端末１５０は、説明する実施形態における情報処理装置に対応する。
【００２５】
図３（Ｂ）に示す情報端末１５０は、ＣＰＵ１５２と、ＲＡＭ１５４と、内部ストレージ１５６と、入力装置１５８と、外部ストレージ１６０と、ディスプレイ１６２と、無線ＮＩＣ１６４と、ＵＳＢコネクタ１６６とを含み構成される。
【００２６】
ＣＰＵ１５２は、情報端末１５０の各部の動作および全体動作を制御する。ＲＡＭ１５４は、ＣＰＵ１５２の作業領域を提供する。内部ストレージ１５６は、ＣＰＵ１５２が解読可能なコードで記述された、オペレーティング・システムや、本実施形態による情報端末１５０側の処理を担うアプリケーションなどの制御プログラムを格納する。ＣＰＵ１５２は、複数のＣＰＵによって成り立つものであっても良い。
【００２７】
入力装置１５８は、タッチスクリーンなどの入力装置であり、ユーザ・インタフェースを提供する。入力装置１５８は、全天球動画の補正など操作者による各種の指示を受け付ける。外部ストレージ１６０は、メモリカードスロットなどに装着された着脱可能な記録媒体であり、動画形式の画像データや静止画データなどの各種データを記録する。ディスプレイ１６２は、ユーザ操作に応答して補正された全天球動画を画面表示する。無線ＮＩＣ１６４は、全天球カメラ１１０などの外部機器との無線通信の接続を確立する。ＵＳＢコネクタ１６６は、全天球カメラ１１０などの外部機器とのＵＳＢ接続をする。
【００２８】
情報端末１５０に電源が投入され電源がオン状態になると、内部ストレージ１５６から制御プログラムが読み出され、ＲＡＭ１５４にロードされる。ＣＰＵ１５２は、ＲＡＭ１５４に読み込まれた制御プログラムに従って、装置各部の動作を制御するとともに、制御に必要なデータをメモリ上に一時的に保存する。これにより、情報端末１５０の後述する各機能部および処理が実現される。
【００２９】
以下、図４〜図９を参照しながら、本実施形態による全天球動画システムが備える全天球動画再生機能について説明する。
【００３０】
図４は、本実施形態による全天球動画システム上で実現される全天球動画再生機能に関連する主要な機能ブロック２００を示す。全天球カメラ１１０の機能ブロックは、図４に示すように、画像処理部２１０と、出力部２４０とを含み構成される。画像処理部２１０は、第１撮像部２１２と、第２撮像部２１４と、角速度検出部２１６と、加速度検出部２１８と、画像合成部２２０と、天頂補正量計算部２２２と、第１回転量計算部２２４と、第２回転量計算部２２６と、記憶部２２８と、画像回転部２３０とを含み構成される。各部の処理は、コントローラ１５が備えるＣＰＵ１１２や画像処理ブロック１１６が各種プログラムを実行することによって行われる。
【００３１】
これに対して、情報端末１５０の機能ブロックは、同じく図４に示すように、受信部２５２と、表示制御部２５４とを含み構成される。各部の処理は、情報端末１５０が備えるＣＰＵ１５２が各種プログラムを実行することによって行われる。
【００３２】
以下、まず、全天球カメラ１１０側の機能ブロックについて説明する。
【００３３】
第１撮像部２１２は、撮像素子１３０Ａを用いて順次撮像し、時系列的に連続した魚眼画像Ａを生成する。第２撮像部２１４は、撮像素子１３０Ｂを用いて順次撮像し、時系列的に連続した魚眼画像Ｂを生成する。画像合成部２２０は、時系列的に連続した魚眼画像Ａ（第１フレームデータ）および時系列的に連続した魚眼画像Ｂ（第２フレームデータ）に対してスティッチング処理を施し、フレーム合成データを作成する。フレーム合成データは、撮影を開始してから終了するまでのそれぞれ全天球動画を構成する複数のフレームを含んだ、全天球動画データの本体となる動画データである。魚眼画像Ａおよび魚眼画像Ｂは、全天球画像を構成するための部分画像であり、第１および第２フレームデータも、撮影を開始してから終了するまでのそれぞれ部分画像のフレームを含んだ、全天球動画を構成し得る動画データである。画像合成部２２０は、作成したフレーム合成データを画像回転部２３０に出力する。第１撮像部２１２、第２撮像部２１４および画像合成部２２０は、本実施形態における撮像手段を構成し得る。
【００３４】
以下、図５を参照しながら、全天球画像の生成および生成される全天球画像について説明する。図５（Ａ）は、全天球画像生成における各画像のデータ構造および画像のデータフローを説明する。まず、撮像素子１３０各々で直接撮像される画像は、概ね全天球のうちの半球を視野に収めた画像である。結像光学系に入射した光は、所定の射影方式に従って撮像素子１３０の受光領域に結像される。ここで撮像される画像は、受光領域が平面エリアを成す２次元の撮像素子で撮像されたものであり、平面座標系で表現された画像データとなる。また、典型的には、得られる画像は、図５（Ａ）において「魚眼画像Ａ」および「魚眼画像Ｂ」で示されるように、各撮影範囲が投影されたイメージサークル全体を含む魚眼画像として構成される。
【００３５】
この複数の撮像素子１３０で撮像された各フレームの複数の魚眼画像が、歪み補正および合成処理されて、各フレームに対応する１つの全天球画像が構成される。合成処理では、平面画像として構成される各魚眼画像から、まず、相補的な各半球部分を含む各半球画像が生成される。そして、各半球部分を含む２つの半球画像が、重複領域のマッチングに基づいてスティッチング（画像合成）され、全天球全体を含む全天球画像が生成される。
【００３６】
図５（Ｂ）は、本実施形態で用いられる全天球画像の画像データのデータ構造を平面で表して説明する図である。図５（Ｃ）は、全天球画像の画像データのデータ構造を球面で表して説明する図である。図５（Ｂ）に示すように、全天球画像の画像データは、所定の軸に対してなされる垂直角度φと、所定の軸周りの回転角に対応する水平角度θとを座標とした画素値の配列として表現される。垂直角度φは、０度〜１８０度（あるいは−９０度〜＋９０度）の範囲となり、水平角度θは、０度〜３６０度（あるいは−１８０度〜＋１８０度）の範囲となる。
【００３７】
全天球フォーマットの各座標値（θ，φ）は、図５（Ｃ）に示すように、撮影地点を中心とした全方位を表す球面上の各点と対応付けられており、全方位が全天球画像上に対応付けられる。魚眼レンズで撮影された魚眼画像の平面座標と、全天球画像の球面上の座標とは、所定の変換テーブルにて対応付けされる。変換テーブルは、それぞれのレンズ光学系の設計データ等に基づいて、所定の投影モデルに従い製造元等で予め作成されたデータであり、魚眼画像を全天球画像へ変換するデータである。
【００３８】
なお、説明する実施形態では、魚眼画像から全天球画像に変換し、スティッチング処理後のフレーム合成データに対して画像回転部２３０により回転処理を施す流れとなっている。しかしながら、変換処理、合成処理および回転処理の順序は、特に限定されるものではない。部分画像である魚眼画像Ａと魚眼画像Ｂ（それを変換した相補的な各半球部分を含む２つの半球画像）それぞれに対して画像回転部２３０で回転処理（補正）を施した後にスティッチング処理する流れとしてもよい。また、全天球フォーマットの画像に対して回転処理を施すほか、魚眼画像を全天球画像に変換する上記変換テーブルに回転処理を反映し、回転処理が反映された変換テーブルに基づいて、魚眼画像Ａおよび魚眼画像Ｂから回転処理後の全天球画像を得ることもできる。本実施形態において、動画に関し補正を施すとは、変換処理、合成処理および回転処理の順序にかかわらず、最終的に所定の補正が反映された画像を含む動画を得ることをいう。また、本実施形態においては２つの魚眼画像をスティッチングすることで全天球画像を作成しているが、これに限られず、他の実施形態では、例えば３つ以上の画像をスティッチングして全天球画像やパノラマ画像を作成するものであってもよい。
【００３９】
ここで、再び図４を参照する。角速度検出部２１６は、角速度センサ１３６Ａを含む角速度検出機構であり、撮影中、角速度センサ１３６Ａを用いて３軸方向の角速度成分を計測して得られる角速度データを出力する。角速度データは、撮影を開始してから終了するまでの全天球カメラ１１０（内の角速度センサ１３６Ａ）の３軸周りで生じた角速度の時系列データである。角速度データは、フレームに１対１に対応して記録されている必要はなく、典型的には、フレームレートよりも速いレートで記録することができる。この場合、タイムスタンプを手がかりとして、後で各フレームとの対応関係を求めることができる。あるいは、全天球動画の各フレームに１対１で対応して角速度が記録されてもよい。角速度検出部２１６は、本実施形態において、動画の各フレームに関連付けてセンサデータを記録する記録手段を構成し、角速度データは、本実施形態において、センサデータに含まれ得る。
【００４０】
加速度検出部２１８は、加速度センサ１３６Ｂを含む加速度検出機構であり、撮影中、加速度センサ１３６Ｂを用いて３軸方向の加速度成分を計測して得られる加速度データを出力する。加速度データは、撮影を開始してから終了するまでの全天球カメラ１１０（内の加速度センサ１３６Ｂ）の３軸の加速度の時系列データである。加速度データは、フレームに１対１に対応して記録されている必要はなく、典型的には、フレームレートよりも速いレートで記録することができる。この場合、タイムスタンプを手がかりとして、後で各フレームとの対応関係を求めることができる。あるいは、全天球動画の各フレームに１対１で対応して加速度が記録されてもよい。加速度検出部２１８は、本実施形態において、動画の各フレームに関連付けてセンサデータを記録する記録手段を構成し、加速度データは、本実施形態において、センサデータに含まれ得る。
【００４１】
なお、加速度センサ１１６Ｂや角速度センサ１３６Ａから直接得られる上述した加速度データおよび角速度データは、センサ座標系（あるいは全天球カメラ１１０の座標系）の３軸方向に基づくデータである。一方、加速度センサ１３６Ｂは、運動に基づく加速度と重力加速度との和を出力しており、上述した加速度データおよび角速度データは、重力加速度軸を基準とした絶対座標系に変換可能である。したがって、上述したセンサデータは、絶対座標系における変位量を示すものである。
【００４２】
天頂補正量計算部２２２は、加速度検出部２１８から出力される加速度データに基づいて、各フレームでの基準軸に対する撮像時の傾き角を計算し、天頂補正データを作成する。天頂補正データは、全天球動画の各フレームに関連付けて記録される、撮影を開始してから終了するまでの基準軸に対する全天球カメラ１１０の傾き角の時系列データである。基準軸に対する傾き角は、典型的には加速度の次元の値からなるベクトルとして構成される。基準軸は、典型的には、重力加速度が作用する重力方向に一致し、以下、基準軸が重力方向であるとして説明を続ける。加速度センサ１３６Ｂは、重力と慣性力とを区別しないので、加速度センサ１３６Ｂから得られた傾き角は、好ましくは角速度センサ１３６Ａで計測された信号に基づいて補正されてもよい。
【００４３】
第１回転量計算部２２４は、加速度検出部２１８から出力される加速度データおよび角速度検出部２１６から出力される角速度データに基づいて、全天球カメラ１１０の相対角度の変化量から、重力方向に対し垂直方向の平面（水平面）の座標系における全天球カメラ１１０の撮影正面方向のベクトルをフレーム毎に算出し、第１回転補正データを記録する。第１回転補正データは、全天球動画の各フレームに関連付けて記録される、撮影を開始してから終了するまでの基準値からの撮影正面方向の角度変化量の時系列データである。撮影正面方向の角度変化量は、基準フレームにおける全天球カメラ１１０の姿勢に基づく上記水平面内での撮影正面方向と、対象フレームにおける全天球カメラ１１０の姿勢に基づく上記水平面内での撮影正面方向との差分で表される。ここで、基準フレームは、例えば撮影開始時点のフレームや本補正を適用開始時点（撮影開始後に補正の適用を指示できる実施形態の場合）のフレームとすることができる。第１回転補正データは例えば、回転角度を数値化したものやベクトルで表される。第１回転補正データも、本実施形態において、センサデータに含まれ得て、第１回転量計算部２２４は、本実施形態において、動画の各フレームに関連付けてセンサデータを取得および記録するセンサデータ取得手段および記録手段を構成し得る。
【００４４】
第２回転量計算部２２６は、加速度検出部２１８から出力される加速度データおよび角速度検出部２１６から出力される角速度データに基づいて、重力方向に対し垂直方向の平面（水平面）の平面座標系における全天球カメラ１１０の進行方向のベクトルを規定フレーム数毎に計算し、第２回転補正データを生成する。撮影開始時のフレームにおける進行方向は、撮影開始時のフレームにおける全天球カメラ１１０の撮影正面方向に等しい。第２回転補正データは、全天球動画の各フレームないし各規定フレーム数分のフレームに関連付けて記録される、撮影を開始してから終了するまでの基準値からの進行方向の角度変化量の時系列データである。進行方向の角度変化量は、基準フレームにおける全天球カメラ１１０の上記水平面内での進行方向（撮影正面方向）と、対象フレームにおける全天球カメラ１１０の上記水平面内での進行方向との差分で表される。第２回転補正データは例えば、回転角度を数値化したものやベクトルである。第２回転補正データも、本実施形態において、センサデータに含まれ得て、第２回転量計算部２２６は、本実施形態において、動画の各フレームに関連付けてセンサデータを取得および記録するセンサデータ取得手段および記録手段を構成し得る。
【００４５】
進行方向の変化は、加速度データのうち、全天球カメラ１１０の特定方向の加速度が所定条件を満たす場合、そのときの特定方向を進行方向と判断する。所定条件とは、複数のフレームのベクトルを合成したときに、特定方向の加速度が所定の閾値を超えている場合などとすることができる。所定条件を満たさない場合、進行方向は前のフレームのデータを引き継ぐことができる。進行方向の定義としては、特に限定されるものではなく、撮影者の進行方向としてもよいし、カメラ自体の進行方向としてもよい。第２回転量計算部２２６は、また、本実施形態における決定手段としても機能し得る。
【００４６】
画像回転部２３０は、画像合成部２２０、天頂補正量計算部２２２、第１回転量計算部２２４および第２回転量計算部２２６により出力されたフレーム合成データ、天頂補正データ、第１回転補正データおよび第２回転補正データをそれぞれ取得する。画像回転部２３０は、取得したフレーム合成データの各フレームに対し、取得した天頂補正データ、第１回転補正データおよび第２回転補正データに基づいて回転処理（天頂補正および回転補正）を施し、補正された全天球フレームデータを出力する。
【００４７】
ここで、図６および図７を参照しながら、天頂補正および回転補正について説明する。図６は、本実施形態において行われる全天球画像の天頂補正および回転補正を説明する図である。図７は、本実施形態において行われる全天球画像の天頂補正および回転補正によって得られる全天球画像を説明する図である。図７（Ａ）は、天頂補正前の動画のフレームを示し、図７（Ｂ）は、天頂補正後の動画のフレームを示す。
【００４８】
上述したように、全天球画像フォーマットの画像データは、所定の軸ｚ０に対してなす垂直角度φと、上記所定の軸ｚ０周りの回転角に対応する水平角度θとを座標とした画素値の配列として表現される。ここで、所定の軸は、なんら補正がなされない場合は、全天球カメラ１１０を基準として定義される軸となる。例えば、図１に示す全天球カメラ１１０の撮像体１２側を頭部としてその反対側を底部として、底部から頭部へ筐体の中心を通る中心軸を、水平角度θおよび垂直角度φを定義する所定の軸ｚ０として全天球画像を定義することができる。また、例えば２つの結像光学系２０Ａ，２０Ｂのうちの一方の光学素子の光軸方向が水平角度θで中心に位置するように、全天球画像の水平角度θを定義することができる。
【００４９】
天頂補正とは、図６の左図のように実際には重力方向に対して中心軸ｚ０が傾いている状態で撮像された全天球画像（図７（Ａ））を、図６の右図のようにあたかも中心軸ｚ０が重力方向Ｚに一致した状態で撮影されたかのような全天球画像（図７（Ｂ））に補正する処理（Ｒｏｌｌ，Ｐｉｔｃｈ方向の補正）をいう。画像回転部２３０は、天頂補正データに含まれる各フレームでの重力方向に対する傾き角に基づいて、各フレームに対し、所定軸（中心軸）が重力方向に略一致するように天頂補正を施す天頂補正手段として機能する。
【００５０】
これに対して、回転補正とは、天頂補正により基準方向に中心軸ｚ０が一致するように補正された全天球画像において、さらに、重力方向Ｚ周りの角度変化（図７の水平角度θ方向の変化）を打ち消し、表示の基準（例えば全天球フォーマットにおける水平角度θでの中央であり、動画データ再生時にデフォルトで表示される基準位置）を撮影中の特定方向に固定する補正（Ｙａｗ方向の補正）をいう。デフォルトで表示される基準位置とは、ユーザが動画データに対して表示する方向を変更する操作をしない場合に、表示される全天球フォーマットにおける領域である。特定方向は、例えば全天球カメラ１１０の正面方向である。画像回転部２３０は、第１回転補正データおよび第２回転補正データに基づいて、基準軸（天頂補正により重力方向に一致させられている。）周りの回転変化を打ち消す補正を施す回転補正手段として機能する。
【００５１】
ここで、角度変化が打ち消されて表示の基準に固定される撮影中の特定方向は、上述した基準フレームにおける全天球カメラ１１０の上記水平面内での撮影正面方向であってよい。また、全天球カメラ１１０の進行方向が求められた以降は、上記特定方向は、全天球カメラ１１０の上記水平面内での進行方向であってよい。
【００５２】
画像回転部２３０は、より具体的には、第１回転補正データおよび第２回転補正データに基づいて、動画の各フレームに対し、少なくとも一定期間の複数のフレームにわたり、表示の基準が撮影中の特定方向に略一致するように基準軸周りの回転変化を打ち消す補正を施す。ここで、打ち消される回転変化の量は、基準軸に垂直な平面内での特定方向（例えば撮影開始時の撮影正面方向または進行方向）と、補正対象フレームでの基準軸に垂直な平面内での撮影正面方向との差分に基づくものとなる。また、当該特定方向に固定される期間は、当該特定方向が決定されたタイミングから、次回特定方向を決定するタイミングまでとなる。
【００５３】
なお、説明する実施形態では、開始当初は、基準フレームにおける全天球カメラ１１０の上記水平面内での撮影正面方向を特定方向として表示の基準（画像の中心）を固定し、全天球カメラ１１０の進行方向が求められた以降は、上記水平面内での進行方向を特定方向として決定し、該進行方向に表示の基準（画像の中心）を固定するものとして説明する。この場合、図２に示した首振り運動Ｈにかかわらず、最初は、開始時点の撮影正面方向が画像の中心に来るように回転補正され、次第に進行方向Ｔが定まると、その進行方向Ｔが画像の中心に来るように回転補正がされることになる。
【００５４】
しかしながら、特定方向の決定の仕方は、特に限定されるものではない。他の実施形態では、進行方向Ｔにかかわらず、基準フレームにおける全天球カメラ１１０の上記水平面内での撮影正面方向に常にデフォルトで表示される基準位置が固定されているように構成してもよい。そのような実施形態では、第２回転量計算部２２６および第２回転補正データを用いた回転補正を省略することができる。またこの場合、撮影中に進行方向の変化によって特定方向が更新されないため、当該特定方向に固定される期間は、動画の開始時点または固定の開始を指示された時点から動画の終了時点または固定の終了を指示された時点までの全期間となる。
【００５５】
記憶部２２８は、上述した第１フレームデータ、第２フレームデータ、フレーム合成データ、天頂補正および回転補正された補正済みフレーム合成データ、加速度データ、角速度データ、天頂補正データ、第１回転補正データおよび第２回転補正データを記憶するために用いられる。記憶部２２８は、図３（Ａ）に示したＤＲＡＭ１３２、外部ストレージ１３４や他のストレージなどの記憶領域の一部として与えられる。
【００５６】
なお、１度の撮影で取得した全天球動画は、例えば一つのファイルとして記憶部２２８に記録されてもよい。その場合、全天球動画の記録方法としては、種々の態様が想定される。
【００５７】
例えば、補正済みフレーム合成データを１つの全天球動画データとして記録することができる。その場合、加速度データ、角速度データ、天頂補正データ、第１回転補正データおよび第２回転補正データが任意にメタデータとして補正済みフレーム合成データとともに記録されてもよい。この実施形態では、補正後のデータが必要になった場合には、補正済みフレーム合成データを読み出せばよいということになる。
【００５８】
他の実施形態では、補正前のフレーム合成データを１つの全天球動画データとして記録することができる。その場合、加速度データ、角速度データ、天頂補正データ、第１回転補正データおよび第２回転補正データが所定の組み合わせでメタデータとして補正前のフレーム合成データとともに記録される。この他の実施形態では、補正後のデータが必要になった場合には、メタデータから、天頂補正データ、第１回転補正データおよび第２回転補正データが準備され（不足するデータが計算される。）、画像回転部２３０により補正前のフレーム合成データに画像回転が施される。例えば、加速度データおよび角速度データがあれば、天頂補正データ、第１回転補正データおよび第２回転補正データのうちの任意の不足するものを計算することができる。
【００５９】
画像回転部２３０により天頂補正および回転補正されたフレーム合成データは、出力部２４０に出力される。出力部２４０は、補正後のデータを、動画データとして、無線ＮＩＣ１４０やＵＳＢコネクタ１３８を介して外部の情報端末１５０に送信出力することができる。あるいは、出力部２４０は、補正後のデータを、動画データとして、所定のストレージにファイル出力することもできる。
【００６０】
なお、「動画」と参照するが、動画が再生可能であれば、いかなる形態で記録されてもよい。例えば、Ｈ．２６４／ＭＰＥＧ−４  ＡＶＣ（Advanced Video Coding）、Ｈ．２６５／ＨＥＶＣ（High Efficiency Video Coding）などの所定のコーデックで、複数のフレームを圧縮した動画データとして記録されていてもよい。また、Ｍｏｔｉｏｎ  ＪＰＥＧ（Joint Photographic Experts Group）は、連続した静止画として動画を表現する形式であるが、このように、複数のフレームの静止画像の連続した系列として動画データが記録されていてもよいし、複数のフレームの静止画像のファイルの集合として動画が記録されてもよい。出力部２４０は、適切なコーデックを備える。
【００６１】
以下、引き続き、情報端末１５０側の機能ブロックについて説明する。情報端末１５０は、全天球カメラ１１０と通信し、全天球画像を閲覧再生するためのアプリケーションがインストールされた端末装置である。情報端末１５０は、スマートフォンやタブレットコンピュータ、パーソナルコンピュータ、ヘッドマウントディスプレイ（ＨＭＤ）などであってよい。情報端末１５０は、アプリケーションを介して操作者から各種指示を受け付けて、全天球カメラ１１０に対し各種要求を発行する。例えば、情報端末１５０は、操作者からの指定の全天球動画の再生指示（例えば回転補正を適応した動画再生の指示）を受け付けたことに応答して、全天球カメラ１１０に対し、所定の全天球動画の補正後の動画データを求める要求を発行する。
【００６２】
情報端末１５０の受信部２５２は、全天球カメラ１１０から出力されてくる動画データを受信する。情報端末１５０の表示制御部２５４は、受信した動画データに基づいて、情報端末１５０が備えるディスプレイ１６２などの表示装置上に全天球動画を表示する。表示制御部２５４は、特定の実施形態では、補正が施された動画データの画像の少なくとも一部を、上述した表示の基準に基づいてディスプレイ１６２上に画面表示させる。また、表示制御部２５４は、ユーザの操作により全天球フォーマットにおいて表示される方向を変更し、ディスプレイ１６２上に表示されている領域を変更する。
【００６３】
なお、情報端末１５０側で、補正後の画像データに基づいてどのような画像が表示されるのかは任意である。例えば、表示制御部２５４は、全天球画像全体を表示装置上に表示してもよいし、全天球画像を球体オブジェクトに張り付けて、所定の位置から所定の視野角の仮想カメラで球体オブジェクトを観察した場合の画像をフレームとして動画表示してもよい。いずれの場合でも、全天球フォーマットでは、所定の表示の基準が定義され、その表示の基準に基づいて、特定の視野で画像が表示される。例えば、ディスプレイ１６２に全天球画像全体を表示する場合は、常にディスプレイ１６２の中央に特定方向が固定された状態で表示することができる。ディスプレイ１６２に仮想カメラで観察した場合の画像を表示する場合は、表示の基準に基づいて全天球画像が球体オブジェクトに張り付けられる。この場合、ディスプレイ１６２の中央に撮影中の特定方向が固定されるわけではないが、表示範囲（仮想カメラの位置や方向）を変更しなければ、所定の方向（例えば進行方向の左手など）が常にディスプレイ１６２の中央に固定されることになる。
【００６４】
なお、本実施形態では、情報端末１５０ではなく、全天球カメラ１１０側のリソースを用いて天頂補正および回転補正の実体的な処理を行い、情報端末１５０には補正結果を出力して表示させる構成を採用する。この構成により、全天球カメラ１１０側に充分なリソースを備えられる場合に、情報端末１５０が備える処理性能にかかわらず、天頂補正および回転補正を施しながらの動画再生を安定に行うことが可能となる。
【００６５】
なお、説明する実施形態では、出力の態様として、全天球動画の画像データを情報端末１５０へ送信するものとしているが、これに限定されるものではない。全天球カメラ１１０が表示装置を備える場合は、その表示装置上で表示する態様とすることもできる。
【００６６】
図４に示す実施形態では、全天球カメラ１１０の機能ブロックは、画像処理部２１０および出力部２４０に加えて、指示受付部２４２をさらに含み構成されてもよい。指示受付部２４２は、動画の撮影中に特定方向を指定する指示を受け付けることができる。上述した実施形態では、特定方向は、所定時点の撮影正面方向や進行方向であったが、指示受付部２４２を設けることにより、撮影中に任意のタイミングで画像の表示の基準に固定させたい方向（注目の被写体がある方向など）を指定することが可能となる。指示受付部２４２は、本実施形態における受付手段を構成する。
【００６７】
図８および図９は、種々の特定の実施形態における全天球動画システムで動画の撮影から視聴するまでの処理を説明するシーケンス図である。
【００６８】
図８（Ａ）は、図４に示す実施形態に対応するものである。図８（Ａ）に示す実施形態では、全天球カメラ１１０側で撮像、画像処理（画像合成、天頂補正および回転補正を含む。）が行われ、画像処理後の動画データが情報端末１５０に送信される。そして、情報端末１５０では、画像処理後の動画データに基づいてディスプレイ表示が行われる。より具体的には、図８（Ａ）の実施形態では、全天球カメラ１１０は、Ｓ１０で撮像プロセスにより動画データを取得し、Ｓ１１で動画データに対して画像処理を施し、Ｓ１２で、画像処理後の動画データを情報処理端末に送信する。Ｓ１３で情報処理端末は、ディスプレイ上に動画データを表示する。
【００６９】
図４および図８（Ａ）で示した実施形態では、全天球カメラ１１０が、それぞれ動画データ取得手段（第１撮像部２１２、第２撮像部２１４および必要に応じて画像合成部２２０）、センサデータ取得手段（角速度検出部２１６、加速度検出部２１８、第１回転量計算部２２４および第１回転量計算部２２４）および回転補正手段（画像回転部２３０）を備える画像処理装置として動作する。
【００７０】
図４および図８（Ａ）では、全天球カメラ１１０側のリソースを用いて画像処理（画像合成、天頂補正および回転補正を含む。）を行う例を説明したが、これに限るものではない。例えば、第１フレームデータ、第２フレームデータ、フレーム合成データ、角速度データ、加速度データ、天頂補正データ、第１回転補正データおよび第２回転補正データの一部または全部を情報端末１５０側に送り、画像処理の一部または全部を情報端末１５０側で行っても良い。その場合、情報端末１５０側で図４の機能ブロック図に示した全天球カメラ１１０側の一部機能を情報端末１５０側のＣＰＵ１５２が各種プログラムを実行することで行う。これにより、例えば画像合成部２２０による第１フレームデータ（魚眼画像Ａ）と第２フレームデータ（魚眼画像Ｂ）との合成処理のような負荷の大きい処理を、より処理速度の高いＣＰＵを用いて実行することが可能になり、画素数の多いデータであっても短時間またはリアルタイムで処理することが可能になる。
【００７１】
例えば、図８（Ｂ）に示す実施形態では、全天球カメラ１１０側で撮像のみが行われ（Ｓ３０）、画像処理前のフレームデータおよび回転パラメータが情報端末１５０に送信される（Ｓ３１）。ここで、回転パラメータとは、上述した加速度データ、角速度データ、天頂補正データ、第１回転補正データおよび第２回転補正データなど、フレームデータの補正に関するパラメータを総称するものである。そして、情報端末１５０では、受信したフレームデータに対し、受信した回転パラメータに基づいて天頂補正および回転補正などの画像処理が行われ（Ｓ３２）、画像処理後の動画データに基づいてディスプレイ表示が行われる（Ｓ３３）。
【００７２】
図８（Ｂ）で示した実施形態では、情報端末１５０が、それぞれ動画データ取得手段（受信部）、センサデータ取得手段（受信部）および回転補正手段（画像回転部２３０に対応する手段）を備える画像処理装置として動作する。
【００７３】
なお、画像合成は、この場合、全天球カメラ１１０および情報端末１５０のいずれで行われてもよい。全天球カメラ１１０側で画像合成をする場合は、全天球カメラ１１０から情報端末１５０に送信されるフレームデータは、フレーム合成データ（全天球フォーマット）である。情報端末１５０側で画像合成をする場合は、全天球カメラ１１０から情報端末１５０に送信されるフレームデータは、第１フレームデータ（魚眼画像Ａ）および第２フレームデータ（魚眼画像Ｂ）である。第１フレームデータおよび第２フレームデータは、それぞれに対応する動画データとして送信されてもよいし、または、２つの魚眼画像を接合した一つの接合画像の動画データ（魚眼画像Ａおよび魚眼画像Ｂを並べて接合して１つの画像とした場合の動画データ）が送信されていてもよい。この場合、情報端末１５０が動画データ取得手段として画像合成部２２０に対応する手段を備えることになる。
【００７４】
また、回転パラメータもいずれの段階でのデータが情報端末１５０に送信されるかは任意である。例えば、上述した加速度データおよび角速度データが回転パラメータとして情報端末１５０に送信されてもよい。この場合、加速度データおよび角速度データから、天頂補正データ、第１回転補正データおよび第２回転補正データが情報端末１５０側で計算されることになる。この場合、情報端末１５０が、センサデータ取得手段として第１回転量計算部２２４および第１回転量計算部２２４に対応する手段を備えることになる。あるいは、天頂補正データ、第１回転補正データおよび第２回転補正データが回転パラメータとして情報端末１５０に送信されてもよい。この場合、情報端末１５０は、天頂補正データ、第１回転補正データおよび第２回転補正データを受信する受信手段を備えればよいことになる。
【００７５】
また、上述した図４、図８（Ａ）および図８（Ｂ）を参照して説明した実施形態では、全天球動画システムは、全天球カメラ１１０および情報端末１５０の２つの装置から構成されていたが、これに限定されるものではない。
【００７６】
例えば、図９（Ａ）で示すように第１の情報端末１５０に接続される第２の情報端末１７０が含まれてもよい。ここで、第２の情報端末１７０は、例えばヘッドマウントディスプレイなどである。図９（Ａ）に示す実施形態では、全天球カメラ１１０側で撮像のみが行われ（Ｓ５０）、画像処理前のフレームデータおよび回転パラメータが第１の情報端末１５０に送信される（Ｓ５１）。第１の情報端末１５０では、受信したフレームデータに対し、天頂補正および回転補正などの画像処理が行われ（Ｓ５２）、画像処理後の動画データが、第２の情報端末１７０に送信される（Ｓ５３）。第２の情報端末１７０では、画像処理後の動画データに基づいてディスプレイ表示が行われる（Ｓ５４）。
【００７７】
図９（Ａ）で示した実施形態では、第１の情報端末１５０が、それぞれ動画データ取得手段（受信部）、センサデータ取得手段（受信部）および回転補正手段（画像回転部２３０に対応する手段）を備える画像処理装置として動作する。画像合成部２２０および第１回転量計算部２２４および第１回転量計算部２２４に対応する手段については、全天球カメラ１１０および第１の情報端末１５０のいずれに備えられていてもよい。
【００７８】
その他、図９（Ｂ）で示すように、全天球動画システムは、サーバ装置１９０を含んでいてもよい。図９（Ｂ）に示す実施形態では、全天球カメラ１１０側では撮像のみが行われ（Ｓ７０）、画像処理前のフレームデータおよび回転パラメータが情報端末１５０に送信される（Ｓ７１）。情報端末１５０では、受信したフレームデータおよび回転パラメータをサーバ装置１９０に転送し（Ｓ７２）、サーバ装置１９０に、フレームデータに対する天頂補正および回転補正などの画像処理を行わせる（Ｓ７３）。情報端末１５０は、画像処理後の動画データをサーバ装置１９０からダウンロードまたはストリーミング配信を受信し（Ｓ７４）、画像処理後の動画データに基づいてディスプレイ表示を行う（Ｓ７５）。また、サーバ装置１９０へのアクセスは情報端末１５０に限られるものではない。
【００７９】
図９（Ｂ）で示した実施形態では、サーバ装置１９０が、それぞれ動画データ取得手段（受信部）、センサデータ取得手段（受信部）および回転補正手段（画像回転部２３０に対応する手段）を備える画像処理装置として動作する。画像合成部２２０および第１回転量計算部２２４および第１回転量計算部２２４に対応する手段については、全天球カメラ１１０およびサーバ装置１９０のいずれに備えられていてもよい。
【００８０】
そのほか、全天球カメラ１１０が表示装置を備える場合は、全天球カメラ１１０単体で、全天球動画システムが構成されてもよい。その場合、全天球カメラ１１０が、自身が備える表示装置上で表示する態様とすることも可能である。
【００８１】
以下、図１０〜図１３を参照しながら、本実施形態における天頂補正および回転補正について、より詳細に説明する。図１０は、本実施形態による全天球動画システムを構成する全天球カメラ１１０（特定の実施形態では情報端末１５０やサーバ装置１９０であってもよい。）が実行するフレーム合成データに対する回転処理を示すフローチャートである。
【００８２】
図１０に示す処理は、全天球カメラ１１０が、補正された動画データを求める要求を受け付けたことに応答して、ステップＳ１００から開始される。
【００８３】
ステップＳ１０１では、全天球カメラ１１０は、フレーム合成データおよび回転パラメータを取得する。なお、ここでは、説明の便宜上、回転処理の開始時点で、第１フレームデータおよび第２フレームデータの記録、画像合成によるフレーム合成データの生成、角速度データおよび加速度データの記録が完了しているものとする。しかしながら、他の実施形態では、リアルタイム配信を行う場合などにおいて、第１フレームデータおよび第２フレームデータの記録、角速度データおよび加速度データの記録、画像合成によるフレーム合成データの生成を順次行いながら、図１０に示す回転処理を実行することもできる。またここでは、天頂補正データ、第１回転補正データおよび第２回転補正データは、未だ計算されていないものとして説明する。
【００８４】
ステップＳ１０２では、全天球カメラ１１０は、当該全天球カメラ１１０の撮影正面方向の初期値を記憶する。この開始時点の全天球カメラ１１０の撮影正面方向は、第１回転補正データおよび第２回転補正データの基準を計算する際に用いられる。また、ステップＳ１０２では、最初のフレームが処理対象とされて、ステップＳ１０３へ処理が進められる。
【００８５】
ステップＳ１０３では、全天球カメラ１１０は、天頂補正量計算部２２２により、少なくとも加速度データに基づいて、当該処理対象のフレームにおける重力方向に対する傾き角を計算し、天頂補正データに書き込む。
【００８６】
ステップＳ１０４では、全天球カメラ１１０は、第１回転量計算部２２４により、前フレームと比較した水平面内での回転角度の変化量を検出する。ステップＳ１０５では、全天球カメラ１１０は、第１回転量計算部２２４により、ステップＳ１０４で算出したフレーム間の角度変化量を積算して、初期値からの撮影正面方向の角度変化量を計算し、第１回転補正データを書き込む。第１回転補正データは、上述したように、水平面の座標系における、全天球カメラ１１０の撮影正面方向の初期値からの対象フレームでの撮影正面方向の角度変化量の時系列データである。
【００８７】
ステップＳ１０３〜ステップ１０５の処理は、フレーム毎に実行することができる。一方、ステップＳ１０６〜ステップＳ１０８の処理は、規定フレーム数毎に実行することができる。ここで、規定フレーム数は、任意の値に設定することが可能である。規定フレーム数を小さくすることで追従性を増すことが可能になるが、規定フレーム数が小さくなりすぎると進行時のブレ成分や静止時のブレ成分の影響が出やすい。そのため、１秒当たり６０フレームの動画（６０ｆｐｓ）であれば、規定フレーム数を、例えば１０〜３０フレーム程度となるように設定しておくとよい。
【００８８】
ステップＳ１０６では、全天球カメラ１１０は、第２回転量計算部２２６により、水平面の座標系の規定フレーム数内での全天球カメラ１１０の移動距離および進行方向ベクトルを算出する。なお、ここで計算の対象となる規定フレームは、保存された全天球動画データの再生であれば、中心フレームの前後の所定数分のフレームとしてよいし、リアルタイム配信であれば、先頭フレームから所定数分までのフレームとしてよい。
【００８９】
ステップＳ１０７では、全天球カメラ１１０は、第２回転量計算部２２６により、ステップＳ１０６で算出した移動距離が所定閾値以上であるか否かを判定する。ステップＳ１０７で移動距離が所定閾値以上であると判定された場合（ＹＥＳ）は、ステップＳ１０８へ処理を進める。ここで、移動距離とは、規定フレーム数において、水平面の座標系における最初のフレームの位置と最後のフレームの位置との差分を意味する。
【００９０】
ステップＳ１０８では、全天球カメラ１１０は、第２回転量計算部２２６により、初期値からのＳ１０５で算出した進行方向ベクトルの角度変化量を計算し、第２回転補正データを書き込む。ここで、第２回転補正データは、進行方向ベクトルの初期値（カメラ方向の初期値と等しい）と、上述したように規定フレーム数分の平均としての進行方向ベクトルとの差分の時系列データである。
【００９１】
一方、ステップＳ１０７で移動距離が閾値以下であると判定された場合（ＮＯ）は、ステップＳ１０９へ直接処理が進められる。
【００９２】
ステップＳ１０９では、全天球カメラ１１０は、画像回転部２３０により、天頂補正データ（その中の対象フレームの傾き角）に基づいて、フレーム合成データの対象フレームに対して天頂補正を施す。
【００９３】
ステップＳ１１０では、全天球カメラ１１０は、画像回転部２３０により、第１回転補正データおよび第２回転補正データに基づいて、対象フレームで打ち消すべき水平面内での回転変化量（回転補正量）を計算する。上述したように、第１回転補正データは、水平面内における、基準フレームの撮影正面方向の初期値と、対象フレームの時点の撮影正面方向との差分であり、第２回転補正データは、水平面内における、基準フレームの進行方向（撮影正面方向と等しい）の初期値と、対象フレームの時点の進行方向との差分である。このため、第１回転補正データおよび第２回転補正データを合算することで、最終的に打ち消すべき回転変化量を計算することができる。なお、特定方向が撮影正面方向の初期値である場合、第２回転補正データは移動距離が閾値以上となるまではデフォルトの値（ゼロ）であるため、回転変化量は、第１回転補正データで規定される通り、撮影正面方向の初期値と、補正対象フレームでの水平面内での撮影正面方向との差分に基づくものとなる。一方、特定方向が進行方向に決定されると、回転変化量は、進行方向と、補正対象フレームでの撮影正面方向との差分に基づくものとなる。
【００９４】
ステップＳ１１１では、全天球カメラ１１０は、計算された回転補正量に基づいて対象フレームに対し、回転補正を施す。
【００９５】
ステップＳ１１２では、全天球カメラ１１０は、次フレームがあるか否かを判定する。ステップＳ１１２で、次フレームがあると判定された場合（ＹＥＳ）は、ステップＳ１０３へループさせる。一方、ステップＳ１１２で次フレームがないと判定された場合（ＮＯ）は、ステップＳ１１３で、本回転処理を終了する。
【００９６】
上述した処理により、動画に対し、少なくとも一定期間の複数のフレームにわたり、表示の基準が撮影中の特定方向に略一致するように基準軸周りの回転変化を打ち消すような補正が施されることになる。
【００９７】
なお、以上説明した実施形態では、ステップＳ１１０で、第１回転補正データおよび第２回転補正データに基づいて打ち消すべき回転量を計算し、ステップＳ１１１でまとめて回転補正を施すものとして説明した。しかしながら、これに特に限定されるものではなく、他の実施形態では、第１回転補正データに基づく回転補正と、第２回転補正データに基づく回転補正とを順次適用してもよい。さらに、他の実施形態では、天頂補正データ、第１回転補正データおよび第２回転補正データに基づいてまとめて天頂補正および回転補正を施すものとしてもよい。
【００９８】
上記回転補正により、首振りなどによる低周波数の回転変化に関わらず、画像の表示の基準を初期のカメラの撮影正面方向や進行方向などの特定方向に固定することが可能となる。
【００９９】
以下、図１１〜図１３を参照しながら、進行方向と撮影正面方向の関係とおよびそのときの画像回転部による回転処理について説明する。図１１は、撮影者が頭部５０に全天球カメラ１１０を装着して移動した場合の進行方向Ｔと撮影正面方向Ｈの関係を、一例をもって説明する図である。図１２および図１３は、撮影者が図１１に示す動作をした場合の撮影された回転補正前の全天球画像（左側）および回転補正後の全天球画像（右側）を説明する図である。
【０１００】
図１１は、番号０、１、１’、１〜１０で時系列的に示した図であり、図１１には、番号で示す各時点での、撮影者の頭部５０に固定された全天球カメラ１１０の状態が、撮影者（全天球カメラ１１０）の進行方向Ｔと、首振り動作に応じた全天球カメラ１１０の撮影正面方向Ｈとともに模式的に示されている。
【０１０１】
図１１において、進行方向Ｔに注目すると、この例では、撮影者は、番号０〜５の期間において「北」へ向かって進行していることが示されている。また、図１１において撮影正面方向Ｈに注目すると、撮影者は、番号０〜１の時点では進行方向と同じ「北」を向いており、番号２〜４の時点で首振り動作によって周囲を見渡す動作が行われ、番号５の時点で進行方向左手の「西」を見ていることが示されている。なお、番号１，１’は、例えば、他者とすれ違う際に通路を譲る場合など、一旦右に平行移動した後に元の進路に戻った動作を表している。そして、撮影者は、「西」を見つつ、番号６〜７の間に「北」から「西」へ進行方向を転換し、番号７〜８の時点で、進行方向と同じ「西」を見ながら進んでいることが示される。また、番号９の時点では、「西」に進みながら進行方向左手の「南」を見ており、番号１０の時点で、さらに見ていた「南」に進行方向を転換した様子が示されている。なお、東西南北は、便宜上に描いているが、必ずしも東西南北が識別されるというものではない。
【０１０２】
図１２および図１３には、図１１で示した番号０、１、１’、１〜１０に対応した回転補正前の全天球画像（左側）３００および回転補正後の全天球画像（右側）３１０が模式的に示されている。また、回転補正後の全天球画像（右側）３１０中には、全天球画像の中央に設定された所定範囲３１６が、情報端末１５０の表示画面上に表示されていることを模式的に表している。
【０１０３】
番号０、１、１’、１〜５の期間において、撮影者は「北」に進んでいるが、図１２および図１３の左側に示すように、補正前の全天球画像３００では、撮影者の首振り動作に応じて画像が回転していることがわかる。より具体的には、番号０、１、１’、１〜５の期間において、撮影正面方向３０２が、「北」→「北西（北から左方向６０度）」→「北東（北から右方向６０度）」→「北西（北から左方向４５度）」→「西（北から左方向９０度）」へと変化している。一方、図１２および図１３の右側に示すように、補正後の全天球画像３１０では、番号０、１、１’、１〜５の各時点では、開始時点の撮影正面方向および進行方向である「北」に常に表示の基準３１４が固定されている。また、時点１，１’での平行移動では、全天球カメラ１１０の移動方向が瞬間的に変化するが、短時間の変化であるため、図１０に示したステップＳ１０７では、規定数分のフレームでの移動距離が閾値未満であると判定され、進行方向としては再決定されず、「北」のままとなっている。
【０１０４】
代表的な点を抜き出して回転補正について説明すると、図１１において番号２の時点では、撮影者が北に向かって進んでいる一方、全天球カメラ１１０は、左方向に６０度回転して、「北西」を向いている状態である。このとき、撮影者は、全天球カメラ１１０の撮影正面方向Ｈと進行方向Ｔとは異なる。ここで、図１１の番号２の時点の状態に撮影者が変化したときの画像回転部２３０の回転処理について説明する。番号１の時点から番号２の時点の状態に撮影者が首の向きを変えたとき、すなわち撮像装置の方向が６０度左方向に回転しているとき、画像回転部２３０は、第１回転補正データに基づいて全天球画像の回転が打ち消されるよう右方向に６０度回転させる回転処理を実行する。これにより、ディスプレイに表示されるデフォルトの方向を進行方向に固定することが可能になる。実際は時点１〜時点２の状態に変化するフレーム毎に、第１回転補正データに基づく回転処理が順次実行される。このとき、進行方向の変化は無いため、第２回転補正データに基づく回転処理は実行されない。なお、時点２〜時点３への変化、時点３〜時点４への変化、時点４〜時点５への変化についても同様である。
【０１０５】
番号５〜７では、撮影者は、見ている方向である「西」に徐々に進行方向を変えているが、図１３の左側に示すように、補正前の全天球画像３００では、撮影者の向きは常に「西」を見ており画像には変化がない。一方、図１３の右側に示すように、補正後の全天球画像３１０では、更新された進行方向である「北西（番号６）」および「西（番号７）」に表示の基準３１４がそれぞれ固定されている。ここでは、時点６の進行方向は、充分に長い間進行方向が一定となっており、再決定された「北西」に一旦固定する方向が変化している様子が示されている。
【０１０６】
ここで、図１１の番号５、６および７の時点の状態に撮影者が変化したときの画像回転部の回転処理について説明する。５の時点から６の時点の状態に撮影者が撮影正面方向Ｈを変えず進行方向Ｔを変えたとき、第１回転補正データに基づけば、全天球画像の撮影正面方向に対する回転が初期値から打ち消されるよう右方向に９０度回転させる回転処理を実行することになる。一方、第２回転補正データに基づけば、全天球画像の初期の進行方向（初期の撮影正面方向）からの進行方向の差分に基づいて左方向に４５度回転させる回転処理を実行することになる。そして、第１回転補正データおよび第２回転補正データを合算すると、右方向に４５度回転させる回転処理を実行することになる。
【０１０７】
また、番号７の時点の状態では、第１回転補正データに基づけば、全天球画像の撮影正面方向に対する回転が初期値から打ち消されるよう右方向に９０度回転させる回転処理を実行することになる。一方、第２回転補正データに基づけば、天球画像の初期の進行方向（初期の撮影正面方向）からの進行方向の差分に基づいて左方向に９０度回転させる回転処理を実行することになる。そして、第１回転補正データおよび第２回転補正データを合算すると、回転補正なしとなる。
【０１０８】
なお、進行方向の変化は、前の進行方向から次の進行方向へ滑らかに転換が起こるように補間されてもよい。つまり、時点５および時点６の期間、および時点６および時点７の期間の４５度分の角度変化を、これらの間の各フレームで補間した値を適用することができる。あるいは、進行方向の変化は、瞬時に変化したものとしてもよい。例えば、画面表示を一旦ブラックアウトして、従前の進行方向に表示の基準を固定した状態から新たな進行方向に表示の基準が固定された状態へ切り替えてもよい。
【０１０９】
一方、番号８から番号９への変化では、撮影者は、進行方向を変えず見ている方向を「西」から「南」へ変化させている。この場合、図１３の左側に示すように、時点８および時点９では、補正前の全天球画像３００では、撮影者の向きが「西」から「南」へ変化しているが、進行方向は「西」に固定されているため、図１３の右側に示すように表示の基準３１４が「西」に固定されている。一方、番号９〜１０では、撮影者は、見ている方向を変えず進行方向を「西」から「南」へ変化させている。この場合、図１３の左側に示すように、時点９および時点１０では、補正前の全天球画像３００では、撮影者の向きは常に「南」を見ているが、図１３の右側に示すように、進行方向は「西」から「南」へ表示の基準３１４が固定する方向が変化している。
【０１１０】
ここで、図１１の番号８、９および１０の時点の状態に撮影者が変化したときの画像回転部の回転処理について説明する。番号８の時点から番号９の時点の状態に撮影者が進行方向Ｔを変えず撮影正面方向Ｈを変えたとき、第１回転補正データに基づけば、全天球画像の撮影正面方向に対する回転が初期値から打ち消されるよう右方向に１８０度回転させる回転処理を実行することになる。一方、第２回転補正データに基づけば、全天球画像の初期の進行方向（初期の撮影正面方向）からの進行方向の差分に基づいて左方向に９０度回転させる回転処理を実行することになる。そして、第１回転補正データおよび第２回転補正データを合算すると、右方向に９０度回転させる回転処理を実行することになる。また、番号１０の時点の状態では、第１回転補正データに基づけば、全天球画像の撮影正面方向に対する回転が初期値から打ち消されるよう右方向に１８０度回転させる回転処理を実行することになる。一方、第２回転補正データに基づけば、全天球画像の初期の進行方向（初期の撮影正面方向）からの進行方向の差分に基づいて左方向に１８０度回転させる回転処理を実行することになる。そして、第１回転補正データおよび第２回転補正データを合算すると、回転補正なしとなる。
【０１１１】
このように、ディスプレイに表示されるデフォルトの方向を撮影開始時の撮影正面方向および進行方向のいずれかに固定することが可能になる。
【０１１２】
以下、図１４を参照しながら、他の実施形態における天頂補正および回転補正について、より詳細に説明する。図１４は、他の実施形態による全天球動画システムを構成する全天球カメラ１１０（特定の実施形態では情報端末１５０やサーバ装置１９０であってもよい。）が実行するフレーム合成データに対する回転処理を示すフローチャートである。なお、図１４は、進行方向の決定は行わず、常に、撮影開始時の撮影正面方向に表示の基準を固定する場合の実施形態を示す。
【０１１３】
図１４に示す処理は、全天球カメラ１１０が、補正された動画データを求める要求を受け付けたことに応答して、ステップＳ２００から開始される。
【０１１４】
ステップＳ２０１では、全天球カメラ１１０は、フレーム合成データおよび回転パラメータを取得する。図１０に示した実施形態と同様に、説明の便宜上、回転処理の開始時点で、第１フレームデータおよび第２フレームデータの記録、画像合成によるフレーム合成データの生成、角速度データおよび加速度データの記録が完了しているものとする。
【０１１５】
ステップＳ２０２では、全天球カメラ１１０は、当該全天球カメラ１１０の撮影正面方向の初期値を記憶する。ステップＳ２０３では、全天球カメラ１１０は、天頂補正量計算部２２２により、少なくとも加速度データに基づいて、当該処理対象のフレームにおける重力方向に対する傾き角を計算し、天頂補正データに書き込む。
【０１１６】
ステップＳ２０４では、全天球カメラ１１０は、第１回転量計算部２２４により、クロック毎の水平面の座標系の角度変化量を積算し、前フレームと比較した水平面内での回転角度の変化量を検出する。ステップＳ２０５では、全天球カメラ１１０は、第１回転量計算部２２４により、ステップＳ２０４で算出したフレーム間の角度変化量を積算して、初期値からの撮影正面方向の角度変化量を計算し、第１回転補正データを書き込む。
【０１１７】
ステップＳ２０６では、全天球カメラ１１０は、画像回転部２３０により、天頂補正データ（その中の対象フレームの傾き角）に基づいて、フレーム合成データの対象フレームに対して天頂補正を施す。
【０１１８】
ステップＳ２０７では、全天球カメラ１１０は、画像回転部２３０により、第１回転補正データに基づいて、対象フレームに対し、回転補正を施す。上述したように、第１回転補正データは、水平面内における、基準フレームの撮影正面方向の初期値と、対象フレームの時点の撮影正面方向との差分であり、対象フレームで打ち消すべき水平面内での回転変化量をそのまま表す。
【０１１９】
ステップＳ２０８では、全天球カメラ１１０は、次フレームがあるか否かを判定する。ステップＳ２０８で、次フレームがあると判定された場合（ＹＥＳ）は、ステップＳ２０３へループさせる。一方、ステップＳ２０８で次フレームがないと判定された場合（ＮＯ）は、ステップＳ２０９で、本回転処理を終了する。
【０１２０】
上記処理により、動画に対し、撮影を開始してから終了するまでの期間の複数のフレームにわたり、表示の基準が撮影開始時の撮影正面方向に略一致するように基準軸周りの回転変化を打ち消すような補正が施されることになる。
【０１２１】
以上示したように、本実施形態によれば、動画の視聴時における撮像時の基準軸周りの回転によって生じる視聴者の酔いを抑えることができる画像処理装置、撮像装置、動画再生システム、方法およびプログラムを提供することが可能となる。
【０１２２】
特定の実施形態では、撮影者の進行方向に視聴時の表示の基準が固定されるので、視聴者の酔いを抑えるとともに、視聴者が撮影者の見ている景色に近い臨場感を味わうことが可能となる。
【０１２３】
なお、上述した実施形態では、撮影者の頭部５０に全天球カメラ１１０が固定されるものとして説明した。本実施形態による回転補正機能は、このような場合に好適に適用できるが、適用のシーンは、特に限定されるものではなく、ユーザが手持ちで撮影するような場合にも適用可能であることは言うまでもない。
【０１２４】
また、上述した実施形態では、角速度センサ１３６Ａおよび加速度センサ１３６Ｂを用いて第１回転補正データおよび第２回転補正データを算出するものとして説明した。しかしながら、他の実施形態では、角度変化量を算出する際に、地磁気センサを用いて第１回転補正データおよび第２回転補正データを算出してもよい。その場合は、地磁気センサの初期値を記憶し、地磁気センサの初期値と対象フレームにおける地磁気センサが示す方向との差分に基づいて水平面の座標系の回転角度を算出し、第１回転補正データおよび第２回転補正データを算出することができる。また、上述した説明では、フレーム合成データ、加速度データおよび角速度データが事前に保存されているものとして説明したが、本回転補正機能は、保存された動画データ以外にも、リアルタイムに配信される動画データのストリームに対しても適用可能である。
【０１２５】
さらに、上述した実施形態では、座標系が２つの角度座標を含む球面座標系の動画に対して天頂補正を行うものとして説明した。しかしながら、実施形態によっては、天頂補正が必要なほどの重力方向の傾きが生じない場合があり、そのような場合に、天頂補正を省略することもできる。この場合、基準軸は、座標系が１つの角度座標を含む円筒座標系であれば、角度座標の軸としてよく、座標系が２つの角度座標を含む球面座標系であれば、二つの角度座標を与える軸としてよい。
【０１２６】
なお、上記機能部は、アセンブラ、Ｃ、Ｃ＋＋、Ｃ＃、Ｊａｖａ（登録商標）などのレガシープログラミング言語やオブジェクト指向プログラミング言語などで記述されたコンピュータ実行可能なプログラムにより実現でき、ＲＯＭ、ＥＥＰＲＯＭ、ＥＰＲＯＭ、フラッシュメモリ、フレキシブルディスク、ＣＤ−ＲＯＭ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ブルーレイディスク、ＳＤカード、ＭＯなど装置可読な記録媒体に格納して、あるいは電気通信回線を通じて頒布することができる。また、上記機能部の一部または全部は、例えばフィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）などのプログラマブル・デバイス（ＰＤ）上に実装することができ、あるいはＡＳＩＣ（特定用途向集積）として実装することができ、上記機能部をＰＤ上に実現するためにＰＤにダウンロードする回路構成データ（ビットストリームデータ）、回路構成データを生成するためのＨＤＬ（Hardware Description Language）、ＶＨＤＬ（Very High Speed Integrated Circuits Hardware Description Language）、Ｖｅｒｉｌｏｇ−ＨＤＬなどにより記述されたデータとして記録媒体により配布することができる。
【０１２７】
これまで本発明の実施形態について説明してきたが、本発明の実施形態は上述した実施形態に限定されるものではなく、他の実施形態、追加、変更、削除など、当業者が想到することができる範囲内で変更することができ、いずれの態様においても本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。
【符号の説明】
【０１２８】
１２…撮像体、１４…筐体、１８…シャッター・ボタン、２０…結像光学系、２２，１３０…撮像素子、１１０…全天球カメラ、１１２，１５２…ＣＰＵ、１１４…ＲＯＭ、１１６…画像処理ブロック、１１８…動画圧縮ブロック、１２０，１２６…インタフェース、１２２…外部ストレージインタフェース、１２４…外部センサインタフェース、１２６…ＵＳＢインタフェース、１２８…シリアルブロック、１３２…ＤＲＡＭ、１３４，１６０…外部ストレージ、１３６Ａ…角速度センサ、１３６Ｂ…加速度センサ、１３８，１６６…ＵＳＢコネクタ、１５０…情報端末、１５４…ＲＡＭ、１５６…内部ストレージ、１５８…入力装置、１６２…ディスプレイ、１６４…無線ＮＩＣ、２００…機能ブロック、２１２…第１撮像部、２１４…第２撮像部、２１６…角速度検知部、２１８…加速度検知部、２２０…画像合成部、２２２…天頂補正量計算部、２２４…第１回転量計算部、２２６…第２回転量計算部、２２８…記憶部、２３０…画像回転部、２４０…出力部、２４２…指示受付部、２５２…受信部、２５４…表示制御部
【先行技術文献】
【特許文献】
【０１２９】
【特許文献１】特開２０１７−１４７６８２号公報
【図１】
2020096349.tif 000003
【図２】
2020096349.tif 000004
【図３】
2020096349.tif 000005
【図４】
2020096349.tif 000006
【図５】
2020096349.tif 000007
【図６】
2020096349.tif 000008
【図７】
2020096349.tif 000009
【図８】
2020096349.tif 000010
【図９】
2020096349.tif 000011
【図１０】
2020096349.tif 000012
【図１１】
2020096349.tif 000013
【図１２】
2020096349.tif 000014
【図１３】
2020096349.tif 000015
【図１４】
2020096349.tif 000016