以下、図面を用いて、本発明の実施形態について説明する。
〔実施形態の概要〕
以下、本実施形態の概要について説明する。
図1乃至図6を用いて、全天球画像の生成方法について説明する。
まず、図1を用いて、全天球撮影装置1の外観を説明する。全天球撮影装置1は、全天球(360°)パノラマ画像の元になる撮影画像を得るためのデジタルカメラである。なお、図1(a)は全天球撮影装置1の右側面図であり、図1(b)は全天球撮影装置1の正面図であり、図1(c)は全天球撮影装置1の上面図であり、図1(d)は全天球撮影装置1の底面図である。
図1(a),図1(b),図1(c),図1(d)に示されているように、全天球撮影装置1の上部には、正面側(前側)に魚眼レンズ102a及び背面側(後側)に魚眼レンズ102bが設けられている全天球撮影装置1の内部には、後述の撮像素子(画像センサ)103a,103bが設けられており、それぞれ魚眼レンズ102a、102bを介して被写体(風景を含む)を撮影することで、半球画像(画角180°以上)を得ることができる。全天球撮影装置1の正面側と反対側の面には、シャッターボタン115aが設けられている。また、全天球撮影装置1の側面には、電源ボタン115b、Wi−Fi(Wireless Fidelity)ボタン115c及び撮影モード切替ボタン115dが設けられている。シャッターボタン115a、電源ボタン115b及びWi−Fiボタン115cは、いずれも押下される度に、オンとオフが切り替えられる。また、撮影モード切替ボタン115dは、押下される度に、静止画の撮影モード、動画の撮影モード及び動画の配信モードが切り替えられる。なお、シャッターボタン115a、電源ボタン115b、Wi−Fiボタン115c及び撮影モード切替ボタン115dは、操作部115の一種であり、操作部115は、これらのボタンに限られない。
また、全天球撮影装置1の底部150の中央には、カメラ用三脚に全天球撮影装置1を取り付けるための三脚ねじ穴151が設けられている。また、底部150の左端側には、 Micro USB(Universal Serial Bus)端子152が設けられている。底部150の右端側には、HDMI(High-Definition Multimedia Interface)端子が設けられている。なお、HDMIは登録商標である。
次に、図2を用いて、全天球撮影装置1の使用状況を説明する。なお、図2は、全天球撮影装置1の使用イメージ図である。全天球撮影装置1は、図2に示されているように、例えば、利用者が手に持って利用者の周りの被写体を撮影するために用いられる。この場合、図1に示されている撮像素子103a及び撮像素子103bによって、それぞれ利用者の周りの被写体が撮像されることで、2つの半球画像を得ることができる。
次に、図3及び図4を用いて、全天球撮影装置1で撮影された画像から正距円筒射影画像EC及び全天球画像CEが作成されるまでの処理の概略を説明する。なお、図3(a)は全天球撮影装置1で撮影された半球画像(前側)、図3(b)は全天球撮影装置1で撮影された半球画像(後側)、図3(c)は正距円筒図法により表された画像(以下、「正距円筒射影画像」という)を示した図である。図4(a)は正距円筒射影画像で球を被う状態を示した概念図、図4(b)は全天球画像を示した図である。
図3(a)に示されているように、撮像素子103aによって得られた画像は、後述の魚眼レンズ102aによって湾曲した半球画像(前側)となる。また、図3(b)に示されているように、撮像素子103bによって得られた画像は、後述の魚眼レンズ102bによって湾曲した半球画像(後側)となる。そして、半球画像(前側)と、180度反転された半球画像(後側)とは、全天球撮影装置1によって合成され、図3(c)に示されているように、正距円筒射影画像ECが作成される。
そして、OpenGL ES(Open Graphics Library for Embedded Systems)が利用されることで、図4(a)に示されているように、正距円筒射影画像が球面を覆うように貼り付けられ、図4(b)に示されているような全天球画像CEが作成される。このように、全天球画像CEは、正距円筒射影画像ECが球の中心を向いた画像として表される。なお、OpenGL ESは、2D(2-Dimensions)および3D(3-Dimensions)のデータを視覚化するために使用されるグラフィックスライブラリである。なお、全天球画像CEは、静止画であっても動画であってもよい。本実施形態において、特段の説明がない限り、「画像」と示した場合には「静止画」と「動画」の両方が含まれる。
以上のように、全天球画像CEは、球面を覆うように貼り付けられた画像であるため、人間が見ると違和感を持ってしまう。そこで、全天球画像CEの一部の所定領域(以下、「所定領域画像」という)を湾曲の少ない平面画像として表示することで、人間に違和感を与えない表示をすることができる。これに関して、図5及び図6を用いて説明する。
なお、図5は、全天球画像を三次元の立体球とした場合の仮想カメラ及び所定領域の位置を示した図である。仮想カメラICは、三次元の立体球として表示されている全天球画像CEに対して、その画像を見る閲覧者の視点の位置に相当するものである。また、図6(a)は図5の立体斜視図、図6(b)はディスプレイに表示された場合の所定領域画像を表す図である。また、図6(a)では、図4に示されている全天球画像が、三次元の立体球CSで表わされている。このように生成された全天球画像CEが、立体球CSであるとすると、図5に示されているように、仮想カメラICは、全天球画像CEの内部に位置することになる。全天球画像CEにおける所定領域Tは、仮想カメラICの撮影領域であり、全天球画像CEを含む三次元の仮想空間における仮想カメラICの画角を含む位置座標(x(rH),y(rV),画角α(angle))を示す所定の領域情報によって特定される。なお、所定領域Tのズームは、画角αの範囲(円弧)を広げたり縮めたりすることで表現することができる。また、所定領域Tのズームは、仮想カメラICを全天球画像CEに近づいたり、遠ざけたりすることで表現することもできる。ここで、所定領域画像Qは、全天球画像CEにおける所定領域Tの画像である。
そして、図6(a)に示されている所定領域画像Qは、図6(b)に示されているように、所定のディスプレイに、仮想カメラICの撮影領域の画像として表示される。図6(b)に示されている画像は、初期設定(デフォルト設定)された所定の領域情報によって表された所定領域画像である。なお、所定領域画像は、所定の領域情報、仮想カメラICの位置座標ではなく、所定領域Tである仮想カメラICの撮影領域(X,Y,Z)によって示されてもよい。
図7は、部分画像パラメータの概略を説明する図である。ここでは、全天球画像の一部を指定する方法について説明する。全天球画像においては部分画像の中心点CPを、撮影するカメラ(ここでは、仮想カメラIC)の方向で表すことが可能である。全天球画像である全体画像の中心を全体画像正面として方位角を「aa」、仰角を「ea」とする。また、部分画像の範囲を表すために、例えば対角方向の画角である対角画角αを用いて表す。また、縦横方向の範囲を表すために、画像のアスペクト比(幅w÷高さh)で表すことが可能である。ここでは範囲を表すために対角画角とアスペクトを用いたが、縦画角と横画角や縦画角とアスペクト比などを用いてもよい。また、方位角、仰角のほか回転角も用いてもよい。
〔撮影システムの概略〕
まずは、図8を用いて、本実施形態の撮影システムの構成の概略について説明する。図8は、本実施形態の撮影システムの構成の概略図である。
図8に示されているように、本実施形態の撮影システムは、全天球撮影装置1、仲介端末3、スマートフォン5及び画像管理システム7によって構成されている。なお、本実施形態の撮影システムでは、例えば、スマートフォン5の利用者A(閲覧者又は操作者ともいう)の所定の操作によって、全天球撮影装置1が遠隔操作される形態を取っている。
これらのうち、全天球撮影装置1は、上述のように、被写体や風景等を撮影して全天球(パノラマ)画像の元になる2つの半球画像を得るための特殊なデジタルカメラである。この全天球撮影装置1は、本実施形態では広角画像を動画撮影して配信するストリーム動画配信サービスを行う撮影装置として機能することができる。また、全天球撮影装置1は、後述するようにスマートフォン5によって取得された静止画要求(所定の操作に基づく要求の一例)が画像管理システム7(画像管理装置の一例)に送信されると、画像管理システム7から送信された静止画データ要求に基づいて静止画データを生成し、画像管理システム7に送信する機能を有する。
仲介端末3は、インターネット等の通信ネットワーク100に直接通信できる通信端末の一例である。仲介端末3は、通信ネットワーク100に直接通信できない全天球撮影装置1と近距離無線通信を行うことで、全天球撮影装置1と画像管理システム7との通信を仲介する役割を果たす。近距離無線通信は、例えば、Wi−Fi、Bluetooth(登録商標)、NFC(Near Field Communication)等の技術を利用して行われる通信である。図8では、仲介端末3は全天球撮影装置1が設置されるドングルレシーバーのように使用されている。
スマートフォン5は、有線又は無線により、通信ネットワーク100を介して画像管理システム7と通信することができる。また、スマートフォン5では、自装置に設けられた後述のディスプレイ517に、全天球撮影装置1から取得した画像を表示することができる。
画像管理システム7は、コンピュータによって構築されており、スマートフォン5からの動画や静止画の要求を、仲介端末3を介して全天球撮影装置1に伝える。また、画像管理システム7は、全天球撮影装置1から仲介端末3を介して送られて来た動画データ及び静止画データを、スマートフォン5に送信する。
なお、図1では、全天球撮影装置1、仲介端末3の組が1つしか表されていないが、複数の組を用いてもよい。また、スマートフォン5も1つしか表されていないが、複数用いてもよい。スマートフォン5は、通信端末の一例である。通信端末には、スマートフォン5の他に、PC(Personal Computer)、スマートウォッチ、ゲーム機器、カーナビゲーション端末等も含まれる。更に、画像管理システム7は、単一だけでなく複数のコンピュータによって構築されていてもよい。
〔実施形態のハードウェア構成〕
次に、図9及び図12を用いて、本実施形態の全天球撮影装置1、仲介端末3、スマートフォン5及び画像管理システム7のハードウェア構成を詳細に説明する。
<全天球撮影装置のハードウェア構成>
まず、図9を用いて、全天球撮影装置1のハードウェア構成を説明する。図9は、全天球撮影装置のハードウェア構成図である。以下では、全天球撮影装置1は、2つの撮像素子を使用した4πラジアンの撮影が可能な全天球(全方位)撮影装置とするが、撮像素子は2つ以上いくつでもよい。また、必ずしも全方位撮影専用の装置である必要はなく、通常のデジタルカメラやスマートフォン等に後付けの全方位の撮像ユニットを取り付けることで、実質的に全天球撮影装置1と同じ機能を有するようにしてもよい。
図9に示されているように、全天球撮影装置1は、撮像ユニット101、画像処理ユニット104、撮像制御ユニット105、マイク108、音処理ユニット109、CPU(Central Processing Unit)111、ROM(Read Only Memory)112、SRAM(Static Random Access Memory)113、DRAM(Dynamic Random Access Memory)114、操作部115、ネットワークI/F116、通信部117、アンテナ117a、電子コンパス118、ジャイロセンサ119、加速度センサ120及び端子121によって構成されている。
このうち、撮像ユニット101は、各々半球画像を結像するための180°以上の画角を有する広角レンズ(いわゆる魚眼レンズ)102a,102bと、各広角レンズに対応させて設けられている2つの撮像素子103a,103bを備えている。撮像素子103a,103bは、魚眼レンズ102a,102bによる光学像を電気信号の画像データに変換して出力するCMOS(Complementary Metal Oxide Semiconductor)センサやCCD(Charge Coupled Device)センサなどの画像センサ、この画像センサの水平又は垂直同期信号や画素クロックなどを生成するタイミング生成回路、この撮像素子の動作に必要な種々のコマンドやパラメータなどが設定されるレジスタ群などを有している。
撮像ユニット101の撮像素子103a,103bは、各々、画像処理ユニット104とパラレルI/Fバスで接続されている。一方、撮像ユニット101の撮像素子103a,103bは、撮像制御ユニット105とは、シリアルI/Fバス(I2Cバス等)で接続されている。画像処理ユニット104、撮像制御ユニット105及び音処理ユニット109は、バス110を介してCPU111と接続される。さらに、バス110には、ROM112、SRAM113、DRAM114、操作部115、ネットワークI/F116、通信部117、電子コンパス118、ジャイロセンサ119、加速度センサ120及び端子121なども接続される。
画像処理ユニット104は、撮像素子103a,103bから出力される画像データをパラレルI/Fバスを通して取り込み、それぞれの画像データに対して所定の処理を施した後、これらの画像データを合成処理して、図3(c)に示されているような正距円筒射影画像のデータを作成する。
撮像制御ユニット105は、一般に撮像制御ユニット105をマスタデバイス、撮像素子103a,103bをスレーブデバイスとして、I2Cバスを利用して、撮像素子103a,103bのレジスタ群にコマンド等を設定する。必要なコマンド等は、CPU111から受け取る。また、撮像制御ユニット105は、同じくI2Cバスを利用して、撮像素子103a,103bのレジスタ群のステータスデータ等を取り込み、CPU111に送る。
また、撮像制御ユニット105は、操作部115のシャッターボタンが押下されたタイミングで、撮像素子103a,103bに画像データの出力を指示する。全天球撮影装置1によっては、ディスプレイ(例えば、スマートフォン5のディスプレイ517)によるプレビュー表示機能や動画表示に対応する機能を持つ場合もある。この場合は、撮像素子103a,103bからの画像データの出力は、所定のフレームレート(フレーム/秒)によって連続して行われる。
また、撮像制御ユニット105は、後述するように、CPU111と協働して撮像素子103a,103bの画像データの出力タイミングの同期をとる同期制御手段としても機能する。なお、本実施形態では、全天球撮影装置1にはディスプレイが設けられていないが、表示部を設けてもよい。
マイク108は、音を音(信号)データに変換する。音処理ユニット109は、マイク108から出力される音データをI/Fバスを通して取り込み、音データに対して所定の処理を施す。
CPU111は、全天球撮影装置1の全体の動作を制御すると共に必要な処理を実行する。なお、CPU111は、単一でも複数でもよい。ROM112は、CPU111のための種々のプログラムを記憶している。SRAM113及びDRAM114はワークメモリであり、CPU111で実行するプログラムや処理途中のデータ等を記憶する。特にDRAM114は、画像処理ユニット104での処理途中の画像データや処理済みの正距円筒射影画像のデータを記憶する。
操作部115は、シャッターボタン115aなどの操作ボタンの総称である。利用者は、操作部115を操作することで、種々の撮影モードや撮影条件などを入力する。
ネットワークI/F116は、SDカード等の外付けのメディアやパーソナルコンピュータなどとのインターフェース回路(USBI/F等)の総称である。また、ネットワークI/F116としては、無線、有線を問わない。DRAM114に記憶された正距円筒射影画像のデータは、このネットワークI/F116を介して外付けのメディアに記録されたり、必要に応じてネットワークI/F116を介してスマートフォン5等の外部端末(装置)に送信されたりする。
通信部117は、全天球撮影装置1に設けられたアンテナ117aを介して、Wi−Fi、NFC、Bluetooth等の近距離無線通信技術によって、スマートフォン5等の外部端末(装置)と通信を行う。この通信部117によっても、正距円筒射影画像のデータをスマートフォン5等の外部端末(装置)に送信することができる。
電子コンパス118は、地球の磁気から全天球撮影装置1の方位を算出し、方位情報を出力する。この方位情報はExifに沿った関連情報(メタデータ)の一例であり、撮影像の画像補正等の画像処理に利用される。なお、関連情報には、画像の撮影日時及び画像データのデータ容量の各データも含まれている。
ジャイロセンサ119は、全天球撮影装置1の移動に伴う角度の変化(Roll角、Pitch角、Yaw角)を検出するセンサである。角度の変化はExifに沿った関連情報(メタデータ)の一例であり、撮像画像の画像補正等の画像処理に利用される。
加速度センサ120は、3軸方向の加速度を検出するセンサである。全天球撮影装置1は、加速度センサ120が検出した加速度に基づいて、自装置(全天球撮影装置1)の姿勢(重力方向に対する角度)を算出する。全天球撮影装置1に、ジャイロセンサ119と加速度センサ120の両方が設けられることによって、画像補正の精度が向上する。
端子121は、例えば、Micro USB用の凹状の端子が使用される。
<仲介端末のハードウェア構成>
次に、図10を用いて、仲介端末3のハードウェア構成を説明する。なお、図10は、
無線通信機能を有したクレードルの場合の仲介端末3のハードウェア構成図である。
図10に示されているように、仲介端末3は、仲介端末3全体の動作を制御するCPU301、基本入出力プログラムを記憶したROM302、CPU301のワークエリアとして使用されるRAM303、CPU301の制御にしたがってデータの読み出し又は書き込みを行うEEPROM(Electrically Erasable and Programmable ROM)304、CPU301の制御に従って被写体を撮像し画像データを得る撮像素子としてのCMOSセンサ305を備えている。
なお、EEPROM304には、CPU301が実行するオペレーティングシステム(OS)、その他のプログラム及び種々データが記憶されている。また、CMOSセンサ305の代わりにCCDセンサを用いてもよい。
更に、仲介端末3は、アンテナ313a、このアンテナ313aを利用して無線通信信号により、通信ネットワーク100を介して画像管理システム7と通信を行う通信部313、GPS(Global Positioning Systems)衛星又は屋内GPSとしてのIMES(Indoor MEssaging System)によって仲介端末3の位置情報(緯度、経度、および高度)を含んだGPS信号を受信するGPS受信部314、及び上記各部を電気的に接続するためのアドレスバスやデータバス等のバスライン310を備えている。
<スマートフォンのハードウェア構成>
次に、図11を用いて、スマートフォンのハードウェアについて説明する。図11は、スマートフォンのハードウェア構成図である。図11に示されているように、スマートフォン5は、CPU501、ROM502、RAM503、EEPROM504、CMOSセンサ505、撮像素子I/F513a、加速度・方位センサ506、メディアI/F508、GPS受信部509を備えている。
これらのうち、CPU501は、スマートフォン5全体の動作を制御する。なお、CPU501は、単一でも複数でもよい。ROM502は、CPU501やIPL(Initial Program Loader)等のCPU501の駆動に用いられるプログラムを記憶する。RAM503は、CPU501のワークエリアとして使用される。EEPROM504は、CPU501の制御にしたがって、スマートフォン用プログラム等の各種データの読み出し又は書き込みを行う。CMOSセンサ505は、CPU501の制御に従って被写体(主に自画像)を撮影し画像データを得る。撮像素子I/F513aは、CMOSセンサ512の駆動を制御する回路である。加速度・方位センサ506は、地磁気を検知する電子磁気コンパスやジャイロコンパス、加速度センサ等の各種センサである。メディアI/F508は、フラッシュメモリ等の記録メディア507に対するデータの読み出し又は書き込み(
憶)を制御する。GPS受信部509は、GPS衛星からGPS信号を受信する。
また、スマートフォン5は、遠距離通信回路511、アンテナ511a、CMOSセンサ512、撮像素子I/F513b、マイク514、スピーカ515、音入出力I/F516、ディスプレイ517、外部機器接続I/F518、近距離通信回路519、近距離通信回路519のアンテナ519a及びタッチパネル521を備えている。
これらのうち、遠距離通信回路511は、インターネット等の通信ネットワークを介して、他の機器と通信する回路である。CMOSセンサ512は、CPU501の制御に従って被写体を撮影して画像データを得る内蔵型の撮像手段の一種である。撮像素子I/F513bは、CMOSセンサ512の駆動を制御する回路である。マイク514は、音声を入力する内蔵型の集音手段の一種である。音入出力I/F516は、CPU501の制御に従ってマイク514及びスピーカ515との間で音信号の入出力を処理する回路である。ディスプレイ517は、被写体の画像や各種アイコン等を表示する液晶や有機ELなどの表示手段の一種である。外部機器接続I/F518は、各種の外部機器を接続するためのインターフェースである。近距離通信回路519は、Wi−Fi、NFC、Bluetooth等の通信回路である。タッチパネル521は、利用者がディスプレイ517を押下することで、スマートフォン5を操作する入力手段の一種である。
また、スマートフォン5は、バスライン510を備えている。バスライン510は、CPU501等の各構成要素を電気的に接続するためのアドレスバスやデータバス等である。
<画像管理システムのハードウェア構成>
次に、図12を用いて、画像管理システムのハードウェア構成について説明する。図1
2は、画像管理システムのハードウェア構成図である。
図12は、画像管理システム7のハードウェア構成図である。図12に示されているように、画像管理システム7は、コンピュータによって構築されており、図12に示されているように、CPU701、ROM702、RAM703、HD704、HDD(Hard Disk Drive)コントローラ705、ディスプレイ708、メディアI/F707、ネットワークI/F709、バス710、キーボード711、マウス712及びDVD−RW(Digital Versatile Disk Rewritable)ドライブ714を備えている。
これらのうち、CPU701は、画像管理システム7全体の動作を制御する。ROM702は、IPL等のCPU701の駆動に用いられるプログラムを記憶する。RAM703は、CPU701のワークエリアとして使用される。HD704は、プログラム等の各種データを記憶する。HDDコントローラ705は、CPU701の制御にしたがってHD704に対する各種データの読み出し又は書き込みを制御する。ディスプレイ708は、カーソル、メニュー、ウィンドウ、文字又は画像などの各種情報を表示する。メディアI/F707は、フラッシュメモリ等の記録メディア706に対するデータの読み出し又は書き込み(記憶)を制御する。ネットワークI/F709は、通信ネットワーク100を利用してデータ通信をするためのインターフェースである。バス710は、図12に示されているCPU701等の各構成要素を電気的に接続するためのアドレスバスやデータバス等である。
また、キーボード711は、文字、数値、各種指示などの入力のための複数のキーを備えた入力手段の一種である。マウス712は、各種指示の選択や実行、処理対象の選択、カーソルの移動などを行う入力手段の一種である。DVD−RWドライブ714は、着脱可能な記録媒体の一例としてのDVD−RW713に対する各種データの読み出し又は書き込みを制御する。なお、DVD−RWに限らず、DVD−RやBlu-ray Disc(ブルーレイディスク)等であってもよい。
〔実施形態の機能構成〕
次に、図13乃至図16を用いて、本実施形態の機能構成について説明する。なお、仲介端末3は、全天球撮影装置1と画像管理システム7とも通信を仲介するための送受信部が主機能であるため、説明を省略する。
<全天球撮影装置の機能構成>
図13は、本実施形態の全天球撮影装置の機能ブロック図である。全天球撮影装置1は、送受信部11、部分画像パラメータ作成部12、撮像制御部13、撮像部14a,14b、画像処理部15、一時記憶部16、精細度変更部17、射影方式変換部18、結合部19、動画符号化部20a、静止画符号化部20b、受付部22、判断部25及び静止画記憶部29を有している。このうち、精細度変更部17は、低精細変更部17a及び低精細変更部17bを有している。低精細変更部17aは、一時記憶部16に記憶された超高精細な動画データに対して、精細度を低下させた全体動画(低精細)を生成する。一方、低精細変更部17bは、一時記憶部16に記憶された超高精細な動画データに対して、以下に説明する射影方式変換部18から送られた出力画像を低精細変更部17aよりも精細度を低下させる割合を少なくした(低精細変更部17aよりも相対的に高精細にした)部分動画(高精細)として生成する。なお、低精細変更部17aは第1の低精細変更部の一例であり、低精細変更部17bは第2の低精細変更部の一例である。射影方式変換部18は、一時記憶部16に記憶された超高精細な動画データに対して、射影方式変換させた部分静止画(超高精細)を生成する。これら各部は、図9に示されている各構成要素のいずれかが、SRAM113からDRAM114上に展開された全天球撮影装置用のプログラムに従ったCPU111からの命令によって動作することで実現される機能又は手段である。また、全天球撮影装置1は、SRAM113によって実現された閾値管理部1001を有している。上述したように、低精細変更部17a及び低精細変更部17bを含む精細度変換と射影方式変換部18で示される射影方式変換については、機能の配置を分けて記載しているが、これらは通常は一緒に行われるのが一般的であるため、同じブロック内に記載しても構わない。本実施例では、機能を明確に区別するために便宜上図13のように記載しているにすぎない。なお、図13に示した機能ブロック図で、点線は動画配信及び記録時において機能する各機能ブロックを示し、実線は動画再生時において機能する各ブロックを示し、太線は動画配信及び記録並びに動画再生の両方で機能する各ブロックを示すものとして便宜上書き分けている。
(水平垂直画角閾値情報)
閾値管理部1001には、図16(a)に示されているように、水平垂直画角閾値情報が、例えば工場出荷前から記憶されている。なお、図16(a)は水平垂直画角閾値情報の概念図、図16(b)は水平画角と垂直画角の説明図である。なお、図16(a)は、水平垂直画角閾値情報は、テーブル形式で表されているが、これに限らず、テーブル形式で表すようにしなくてもよい。
図16(a)に示されているように、水平垂直画角閾値情報は、全天球撮影装置1の最大撮影解像度(横W×縦H)の候補の列、利用者(閲覧者)によって設定されるスマートフォン5で表示可能な最大表示解像度(横W’×縦H’)の候補の列、全天球撮影装置1から画像管理システム7を介してスマートフォン5に送信するか否かの判断に使用される画像の水平画角(AH)×垂直画角(AV)の各閾値が関連付けて管理されている。
ここで、図16(b)を用いて、水平画角(AH)と垂直画角(AV)について説明する。なお、図16(b)において、中心点CP、方位角「aa」、仰角「ea」は、図7と同じであるため、説明を省略する。全天球画像(動画、静止画)においては矩形の部分画像(動画、静止画)の一フレーム全領域のサイズを、撮影するカメラ(ここでは、仮想カメラIC)の方向で表すことが可能である。部分画像の横の長さを仮想カメラICからの水平画角(AH)で表し、部分画像の縦の長さを仮想カメラICからの水平画角(AH)で表すことができる。
水平画角(AH)と垂直画角(AV)は変換元の解像度と変換後の解像度の差がなくなる画角で、判断部25の判断に用いられる。この画角は次の(式1)及び(式2)で求めることができる。
AH=(360/W)*W’ ・・・(式1)
AV=(180/H)*(H’/2) ・・・(式2)
なお、全天球撮影装置1の最大撮影解像度が(W:4000,H:2000)であっても、全天球撮影装置1は図16に示されている各設定パターンを示す水平垂直画角閾値情報を管理している。但し、この場合、全天球撮影装置1は、図16において、設定1と設定2のパターンしか参照しない。同じく、利用者によって設定されるスマートフォン5での最大表示解像度が(W’:1920,H’:1080)であっても、全天球撮影装置1は図16に示されている各設定パターンを示す水平垂直画角閾値情報を管理している。
例えば、全天球撮影装置1の最大撮影解像度の横×縦が4000×2000の場合であって、利用者によってスマートフォン5から全天球撮影装置1に対して、横×縦が1920×1080の解像度の画像(動画、静止画)のデータを要求するように設定されていた場合の条件(C1)下では、判断部25は、指示データによって要求された部分画像の画角が横172.8°かつ縦48.6°で示される閾値の未満の場合に、射影方式変換部18に超高精細な静止画像のデータへの射影方式変換を行わせないと判断する。
(全天球撮影装置の各機能構成)
次に、図13を用いて、全天球撮影装置1の各機能構成について更に詳細に説明する。
送受信部11は、全天球撮影装置1の外部に対して画像データを送信したり、外部からデータを受信したりする。例えば、画像データとしては、超高精細の部分静止画、高精細の部分動画、低精細の全体動画の各データがある。また、送受信部11は、後述の指示データを受信したり、後述の部分画像パラメータを送信したりする。
なお、本実施形態では、3段階の精細度の画像が取り扱われるため、最も精細度が高い画像、次に精細度が高い画像、最も精細度が低い画像について、便宜的にそれぞれ「超高精細」、「高精細」、「低精細」と示して区別する。よって、例えば、本実施形態の「超高精細」が、一般的な超高精細を意味するものではない。
部分画像パラメータ作成部12は、スマートフォン5から画像管理システム7を介して送られて来た指示データに基づいて部分画像パラメータを作成する。この指示データは、スマートフォン5の受付部52で利用者の操作によって受け付けられ、後述の重畳領域を特定するための指示を示すデータである。
撮像制御部13は、撮像部14a,14bの画像データの出力タイミングの同期をとる指示を出力する。また、撮像制御部13は、外部(例えば、GPS衛星)から取得した時刻情報を入力して、再生中の動画から静止画を生成する際のタイミング管理を行う機能も有している。このタイミング管理については、後述する部分静止画の生成に関するシーケンス図とあわせて説明する。
撮像部14a,14bは、それぞれ、撮像制御部13からの指示に従って被写体等を撮像し、例えば、図3(a),(b)に示されているように、全天球画像データの元になる半球画像データを出力する。
画像処理部15は、撮像部14a,14bで得られた2つの半球画像データを正距円筒射影方式の画像である正距円筒射影画像のデータに合成変換する。つまり、画像処理部15は、被写体を撮影して得た所定の精細度の動画データから全天球画像データを生成する全天球画像生成手段の一例である。
一時記憶部16は、画像処理部15で合成変換された正距円筒射影画像のデータを一時的に記憶するバッファの役割を果たす。なお、この状態の正距円筒射影画像は超高精細である。
精細度変更部17は、送受信部11で受信されたスマートフォン5からの指示データに従って、正距円筒射影画像を画像の縮小等により、超高精細画像(ここでは動画)から低精細画像(動画)及び低精細画像よりも相対的に高精細な画像(動画)に変更する。これにより、低精細な正距円筒射影画像(ここでは、全体動画)が生成される。なお、精細度変更部17は、変更手段の一例である。
射影方式変換部18は、送受信部11で受信した指示データ及び動画データ要求に従って、即ち、全体画像の一部分の画像である部分画像の方向、画角及びアスペクト、並びに画像管理システム7を介してスマートフォン5へ送信する画像データのサイズに従って、正距円筒射影方式を透視射影方式に射影方式変換する。これにより、超高精細な状態のままで部分画像(ここでは、部分動画)が生成される。このように、精細度変更部17から出力される全体画像データは、射影方式変換部18から出力される部分画像データよりも精細度(又は解像度)が低い。即ち、射影方式変換部18から出力される部分画像データは、精細度変更部17から出力される全体画像データよりも精細度(解像度)が高い。
更に、射影方式変換部18は、送受信部11で受信した指示データ及び静止画データ要求に従って、即ち、全体画像の一部分の画像である部分画像の方向、画角及びアスペクト、並びに画像管理システム7を介してスマートフォン5へ送信する画像データのサイズに従って、正距円筒射影方式を透視射影方式に射影方式変換する。これにより、超高精細な状態のままで部分画像(ここでは、部分静止画)が生成される。本実施形態では、射影方式変換部18によって生成される部分動画及び部分静止画の元になる画像は、同じく超高精細であるが、この射影方式変換部18で部分動画及び部分静止画の精細度を区別するように精細度を変えてもよい。
ここで、超高精細の画像として、例えば、2K、4K、8Kのいずれかの正距円筒射影画像が出力される場合について説明する。これらの超高精細の正距円筒射影画像のデータに基づき、射影方式変換部18から出力される部分画像データは、正距円筒射影画像の解像度(2K、4K、8Kのいずれか)のままで、所定の射影方式に変換されたデータである。一方、精細度変更部17から出力される全体画像データは、1K、2K、4Kなど、正距円筒射影画像よりも相対的に低精細(低解像度)のデータである。
結合部19は、精細度変更部17で変更された低精細な全体動画の各フレームと、射影方式変換部18で変換された超高精細な部分動画の各フレームを、図20に示されているように、縦の解像度を半分に圧縮することで、それぞれのフレームの精細度を下げて一フレームに結合する。これにより、部分動画は、全体動画よりは精細度が高いが、部分静画よりは精細度が低くなる。このように各フレームの精細度を下げて一フレームにすることで、データ通信量を抑制することができる。更に、結合される2つのフレームは、一時記憶部16に記憶されていた同じ正距円射影画像から生成されているため、結合される2つのフレームを関連付けるためのメタデータ等を利用しなくても、同じタイミングで撮影されて生成された2つのフレームを関連付けることができる。
動画符号化部20aは、結合部19によって結合された全体動画及び部分動画のフレームデータを符号化する。静止画符号化部20bは、部分静止画のデータを符号化する。なお、動画符号化部20aは、例えば、GPSの時計機能により得られる時刻情報を用いて全天球撮影装置1の時刻管理を行うことができる。
受付部22は、利用者が各種要求を行う際に全天球撮影装置の操作部115に対して行う操作を受け付ける。
判断部25は、全体動画の一部の領域である部分画像の一フレームの全領域が、閾値管理部1001で管理されている水平垂直画角閾値情報(図16参照)の所定の閾値で示される所定領域よりも小さいか否かを判断する。そして、小さい場合に、判断部25は、射影方式変換部18に超高精細な静止画のデータを射影方式変換させないようにする。また、大きい場合に、判断部25は、射影方式変換部18に超高精細な静止画のデータを射影方式変換させるようにする。
例えば、全天球撮影装置1の最大撮影解像度の横×縦が4000×2000の場合であって、利用者によってスマートフォン5から全天球撮影装置1に対して、スマートフォン5における最大表示解像度の横×縦が1920×1080に設定されていた場合の条件(C1)下で、指示データによって要求されている画像の横の画角が172.8°未満かつ縦の画角が48.6°未満の場合に、判断部25は、射影方式変換部18に超高精細な静止画のデータを射影方式変換させないと判断する。このように、スマートフォン5から要求された画像の解像度(精細度)が低い場合に、全天球撮影装置1は、高精細な部分動画のデータを送っても、又は超高精細な部分静止画のデータを送っても、利用者はスマートフォン5で高精細な部分動画と超高精細な部分静止画の区別を付けづらいため、全天球撮影装置1は、わざわざ超高精細な部分静止画のデータを送る必要はないからである。なお、閾値の範囲に示した「未満」は「以下」としてもよい。
一方、上記と同じ条件(C1)下で、指示データによって要求されている画像の横の画角が172.8°超又は縦の画角が48.6°超の場合に、判断部25は、射影方式変換部18に超高精細な静止画のデータを射影方式変換させると判断する。この場合、スマートフォン5が、高精細な部分動画を超高精細な静止画に切り替えて表示することで、利用者(閲覧者ともいう)は注目する領域をよりはっきりと(鮮明に)閲覧することができるため、入念に閲覧することができる。なお、閾値の範囲に示した「超」は「以上」としてもよい。
<スマートフォンの機能構成>
図14は、本実施形態のスマートフォンの機能ブロック図である。スマートフォン5は、送受信部51、受付部52、動画復号化部53a、静止画復号化部53b、重畳表示制御部63(重畳領域作成部54、画像作成部55、画像重畳部56、射影変換部57、表示制御部58)、再生時間管理部59、再生用フレーム抽出部60、重畳画像判断部61及び記憶制御部62を有している。これら各部は、図11に示されている各構成要素のいずれかが、EEPROM504からRAM503上に展開されたスマートフォン用プログラムに従ったCPU501からの命令によって動作することで実現される機能又は手段である。ここで、スマートフォン用プログラムに従ったCPU501からの命令によって機能する重畳表示制御部63は、動画に静止画を重畳させて表示する機能を備え、重畳表示制御手段の一例である。この重畳表示制御部63は、重畳領域作成部54、画像作成部55、画像重畳部56、射影変換部57及び表示制御部58を纏めた各機能を有している。なお、図14に示した機能ブロック図で、点線は動画配信及び記録時において機能する各機能ブロックを示し、実線は動画再生時において機能する各ブロックを示し、太線は動画配信及び記録並びに動画再生の両方で機能する各ブロックを示すものとして便宜上書き分けている。
(スマートフォンの各機能構成)
次に、図14を用いて、スマートフォン5の各機能構成について更に詳細に説明する。
送受信部51は、スマートフォン5の外部に対してデータを送信したり、外部からデータを受信したりする。例えば、送受信部51は、全天球撮影装置1の送受信部11から画像データを受信したり、画像管理システム7の受信部71a及び送信部71b又は全天球撮影装置1の送受信部11に対して指示データを送信したりする。つまり、送受信部51は、画像データ及び指示データに相当する所定の操作を示すデータを画像管理システム7に送受信する送信手段及び受信手段の一例である。また、送受信部51は、全天球撮影装置1の送受信部11から送られて来た画像データ(図20に示す全体動画のデータ及び部分動画データ)と部分画像パラメータとを分離する。
受付部52は、利用者から、部分画像の方向、画角及びアスペクト、並びにスマートフォン5で受信する画像データのサイズの指定操作を受け付ける。また、受付部52は、利用者から、スマートフォン5における最大表示解像度(図16の横W’×縦H’参照)の設定を受け付ける。この受付部52は、受付手段の一例である。
動画復号化部53aは、全天球撮影装置1の動画符号化部20aで符号化された低精細な全体動画及び高精細な部分動画の各データに対して、動画撮影開始時刻、対応時間情報等のメタデータとあわせた処理を行う後述の再生用フレーム抽出部60から出力された動画のデータを受信して低精細な全体動画のデータ及び高精細な部分動画のデータに復号化する。静止画復号化部53bは、全天球撮影装置1の静止画符号化部20bで符号化された超高精細な部分静止画のデータに対して、動画撮影開始時刻、対応時間情報等のメタデータとあわせた処理を行う後述の再生用フレーム抽出部60から出力された静止画のデータを受信して超高精細な部分静止画のデータに復号化する。
重畳領域作成部54は、記憶制御部62により読み出された部分画像パラメータ(メタデータ)を取得し、取得した部分画像パラメータにより指定された重畳領域を作成する。この重畳領域は、全体動画である全天球画像CE上において、部分動画(又は部分静止画)である重畳画像S及びマスク画像Mの重畳位置及び重畳範囲を示している。
画像作成部55は、重畳領域作成部54、動画復号化部53a、静止画復号化部53b、及び重畳画像判断部61から取得した各データとそれらの重畳領域に係る情報に従って、重畳画像S及びマスク画像を作成し、低精細な全体画像から全天球画像CEを作成する。
画像重畳部56は、画像作成部55で作成された重畳画像S及びマスク画像を取得して第1の画像に第2の画像を重畳する。例えば、画像重畳部56は、全天球画像CE上の重畳領域に対して、重畳画像S及びマスク画像Mを重畳することで、最終的な全天球画像CEを作成する。
射影変換部57は、画像重畳部56で作成された最終的な全天球画像CEを取得し、受付部52で受けられた利用者の指示に従って、最終的な全天球画像CEを透視射影方式の画像に変換する。この射影変換部57は、射影変換手段の一例である。
表示制御部58は、射影変換部57で変換された透視射影方式の画像を取得し、透視射影方式に変換後の画像をディスプレイ517等に表示させる制御を行う。例えば、表示制御部58は、画像重畳部56によって第1の画像に第2の画像が重畳された状態で表示する。
再生時間管理部59は、基準となる動画再生時間を管理して再生時刻を出力する。例えば、30fps(frames per second)の動画を再生したい場合は、メタデータから取得できる動画撮影開始時刻を開始時刻とし、1秒間に1/30秒ずつ時間を増加させた時刻を30回出力する。
再生用フレーム抽出部60は、再生時間管理部59が出力する再生時刻に基づいて、再生する動画データ及び静止画データを抽出して出力する。このとき動画データは再生時刻の受信タイミングでフレーム出力される。一方、静止画データはメタデータの対応時刻情報を用いて、再生時刻以前でかつ最新の静止画ファイルを検索して出力される。このようにして、動画及び静止画を撮影した時のタイミングの関係(出力条件)を維持して動画及び静止画を再生することができる。
重畳画像判断部61は、全天球撮影装置1により撮影された全体動画に対し、部分動画と部分静止画のどちらの画像を重畳表示するかを判断する。ここで重畳表示される重畳領域は、後述する全体動画及び部分動画の各データの生成及び再生の処理を示したシーケンス図に示した全体動画である全天球画像CE上において、部分動画(又は部分静止画)である重畳画像S及びマスク画像Mの重畳位置及び重畳範囲を示している。
記憶制御部62は、図11に示したROM502によって実現された記憶部5000に対して、動画撮影開始時刻、対応時刻情報及び部分画像パラメータ等から構成されるメタデータを含む各種データの記憶、管理を制御する。なお、メタデータは、画像管理システム7の記憶部7000にて記憶、管理されるようにしてもよい。
<画像管理システムの機能構成>
図15は、画像管理システムの機能ブロック図である。画像管理システム7は、受信部71a、送信部71b、動画再生用メタデータ作成部72、データ選択部73及び記憶制御部74を有している。受信部71a、送信部71b、動画再生用メタデータ作成部72、データ選択部73及び記憶制御部74は、図12に示されているネットワークI/F709が、HD704からRAM703上に展開された画像管理システム用プログラムに従ったCPU701からの命令によって動作することで実現される機能又は手段である。なお、受信部71aはシステム側受信部の一例であり、送信部71bは、システム側送信部の一例である。また、画像管理システム7は、HD704によって実現された記憶部7000を有している。
(画像管理システムの各機能構成)
次に、図15を用いて、画像管理システム7の各機能構成について更に詳細に説明する。
送信部71bは、画像管理システム7の外部に対してデータを送信し、受信部71aは、外部からデータを受信する。例えば、受信部71aは、全天球撮影装置1の送受信部11から仲介端末3を介して画像データを受信し、送信部71bは、全天球撮影装置1の送受信部11に対して仲介端末3を介して指示データを送信する。また、送信部71bは、全天球撮影装置1の送受信部11から仲介端末3を介して送られて来た画像データ(図20に示す全体動画のデータ及び部分動画のデータ)や部分画像パラメータをスマートフォン5に送信する。さらに、送信部71bは、全天球撮影装置1の送受信部11から仲介端末3を介して送られ、記憶部7000に一時的に記憶された超高精細な静止画のデータをスマートフォン5に送信する。
動画再生用メタデータ作成部72は、全天球撮影装置1で撮影された動画データに基づいて、後述する動画再生用メタデータを作成する。この動画再生用メタデータには、共通情報、動画情報及び少なくとも1以上の静止画情報によって構成されている。
データ選択部73は、記憶部7000に記憶された全体動画、部分静止画及び動画再生用メタデータを含む各種データについて、それぞれどのデータを送信部71bを介して出力するかを選択する機能部である。
記憶制御部74は、記憶部7000に対して、上述した全体動画、部分静止画及び動画再生用メタデータを含む各種データを含む各種データの記憶、管理を制御する。なお、図15に示した機能ブロック図で、点線は動画配信及び記録時において機能する各機能ブロックを示し、実線は動画再生時において機能する各ブロックを示し、太線は動画配信及び記録時並びに動画再生時の両方で機能する各ブロックを示すものとして便宜上書き分けている。
〔実施形態の処理又は動作〕
続いて、図17乃至図40を用いて、本実施形態の処理又は動作について説明する。本実施形態では、全天球撮影装置1で生成されてから配信される動画に係る全体動画及び部分動画をスマートフォン5で再生中に、閲覧者がある部分動画の1シーン又は注目する被写体をより高精細な(超高精細)な静止画で入念に閲覧する場合について説明する。これは、閲覧者にとって動画よりも静止画で確認する方がより入念に閲覧することができるためである。
本実施形態は、全天球撮影装置1から取得した広角動画を構成する広角画像及びその広角画像から生成した部分動画を構成する部分画像を同一のフレームに配置した動画像(動画)として記録する際に、撮影開始時刻をメタデータとして記録する。また、動画記録中に全天球撮影装置1から取得した動画よりも高解像度な部分静止画を記録する際にも、その撮影時刻をメタデータとして記録する。そして、利用者が動画と静止画を同時に(重畳させて)再生する際に、動画及び部分静止画に関するメタデータを参照してそれぞれの再生タイミングを制御することで、動画及び静止画の撮影時のタイミングの関係を維持して再生することを特徴とする。つまり、広角動画、部分動画及び部分静止画のそれぞれの撮影時刻をメタデータとして記録、管理して、動画再生時にそのメタデータを参照することで動画と静止画の再生タイミングを制御することを特徴とする。
<全体動画及び部分動画の生成及び再生>
まずは、図17を用いて、全体動画と部分動画の各データの生成及び再生の処理について説明する。図17は、全体動画及び部分動画の各データの生成及び再生の処理を示したシーケンス図である。
図17に示されているように、閲覧者(利用者)がスマートフォン5を操作することで、受付部22が動画の配信サービスを開始する要求を受け付ける(ステップS11)。これにより、次に、スマートフォン5の送受信部51は、画像管理システム7の受信部71aに動画データの要求を送信する(ステップS12)。この際、閲覧者が指定した部分画像パラメータも送信される。なお、送信開始のタイミングに関して、全天球撮影装置1の送受信部11が通信ネットワークの帯域制御などを行ってもよい。この帯域制御を行うことで、より安定してデータを送受信することが可能となる。
次に、画像管理システム7の送信部71bは、仲介端末3の送受信部に対して動画データの記録要求を転送する(ステップS13)。そして、仲介端末3の送受信部は、全天球撮影装置1の送受信部11に対して、動画データの記録要求を転送する(ステップS14)。
次に、全天球撮影装置1は、動画データの生成処理を行う(ステップS15)。このステップS15の処理は、後ほど詳細に説明する(図18乃至図20参照)。
次に、全天球撮影装置1の送受信部11は、仲介端末3の送受信部に対して、要求に応じた動画データを送信する(ステップS16)。この動画データには、低精細の全体動画及び高精細の部分動画の各データが含まれている。これにより、仲介端末3の送受信部は、画像管理システム7の受信部71aに動画データを転送する(ステップS17)。更に、画像管理システム7の送信部71bは、スマートフォン5の送受信部51に動画データを転送する(ステップS18)。
次に、スマートフォン5は、動画データの再生処理を行う(ステップS19)。このステップS19の処理は、後ほど詳細に説明する(図21乃至図40参照)。
<全天球撮影装置の動画データの生成処理>
次に、図18乃至図20を用いて、上述のステップS15で示した全天球撮影装置の動画データの生成処理について詳細に説明する。図19は、全天球撮影装置が行う画像処理の過程における画像の概念図である。
画像処理部15は、撮像部14a,14bで得られた2つの半球画像データを正距円筒射影方式の画像(ここでは、動画)である正距円筒射影画像のデータに合成変換する(ステップS120)。この変換後のデータは、一旦、高精細画像の状態のままで一時記憶部16に記憶される。
次に、部分画像パラメータ作成部12は、スマートフォン5から送られて来た指示データに基づいて部分画像パラメータを作成する(ステップS130)。
次に、精細度変更部17のうち低精細変更部17aは、送受信部11で受信されたスマートフォン5からの指示データに従って、超高精細画像から低精細画像に変更する(ステップS140)。これにより、低精細な正距円筒射影画像(ここでは、全体動画)が生成される。
更に、射影方式変換部18は、送受信部11で受信した指示データに従って、即ち、全体動画の各フレームの一部の領域である部分動画の方向、部分動画のフレームの画角及びアスペクト、並びにスマートフォン5へ送信する動画データのサイズに従って、正距円筒射影方式を透視射影方式に射影方式変換して低精細画像に変更する(ステップS150)。これにより、超高精細な状態のままで部分動画が生成される。
次に、結合部19は、低精細な全体動画、超高精細な部分動画の各データを結合する(ステップS160)。この結合の処理については、後ほど詳細に説明する(図20参照)。
ここで、図19及び図20を用いて、図18に示した処理を更に詳細に説明する。図19は、部分画像パラメータを説明する図である。
(部分画像パラメータ)
まずは、図19を用いて、部分画像パラメータについて詳細に説明する。図19(a)はステップS120による画像合成後の全体画像を示す。図19(b)は部分画像パラメータの一例を示す図である。図19(c)はステップS150により射影方式が変換された後の部分画像を示す。
図7で説明した方位角は図19(a)で示す正距方位図法では横方向(緯度λ)となり、図7で説明した仰角は正距円筒射影方式では縦方向(経度φ)となる。図7の対角画角及びアスペクト比を合わせて、図19(b)で示すパラメータが部分画像パラメータである。図19(c)は図19(a)の正距円筒図法上の枠で囲まれた部分を部分画像パラメータで切出した部分画像の例である。
ここで、射影方式の変換について説明する。図4(a)に示すように、正距円筒射影画像によって立体球を被うことで、全天球画像を作成している。よって、正距円筒射影画像の各画素データは、3次元の全天球画像の立体球の表面における各画素データに対応させることができる。そこで、射影方式変換部18による変換式は、正距円筒射影画像における座標を(緯度,経度)=(e,a)と表現し、3次元の立体球上の座標を直行座標(x,y,z)で表わすと、以下の(式3)で表わすことができる。
(x, y, z) = (cos(e) × cos(a), cos(e) × sin(a), sin(e)) ・・・(式3)
但し、このときの立体球の半径は1とする。
一方で、透視射影画像である部分画像は2次元画像であるが、これを2次元の極座標(動径,偏角)=(r,a)で表現すると、動径rは対角画角に対応し、取り得る範囲は0 ≦ r ≦ tan(対角画角/2)となる。また、部分画像を2次元の直交座標系(u,v)で表わすと、極座標(動径,偏角)=(r,a)との変換関係は、以下の(式4)で表わすことができる。
u = r × cos(a), v = r × sin(a) ・・・(式4)
次に、この(式3)を3次元の座標(動径,極角,方位角)に対応させることを考える。今、立体球CSの表面のみを考えているため、3次元極座標における動径は「1」である。また、立体球CSの表面に張り付けた正距円筒射影画像を透視射影変換する射影は、立体球の中心に仮想カメラがあると考えると、上述の2次元極座標(動径,偏角)=(r,a)を使うと、以下の(式5)、(式6)で表わすことができる。
r = tan(極角) ・・・(式5)
a = 方位角 ・・・(式6)
ここで極角をtとすると、t = arctan(r)となるため、3次元極座標(動径、極角、方位角)は、(動径、極角、方位角)=(1, arctan(r), a)と表現することができる。
また3次元極座標から、直行座標系(x,y,z)へ変換するための変換式は、以下の
(式7)で表わすことができる。
(x, y, z) = (sin(t) × cos(a), sin(t) × sin(a), cos(t)) ・・・(式7)
上記の(式7)により、正距円筒射影方式による全体画像と、透視射影方式による部分画像の相互変換ができるようになった。即ち、作成すべき部分画像の対角画角に対応する動径rを用いることで、部分画像の各画素が、正距円筒射影画像のどの座標に対応するかを表す変換マップ座標を算出でき、この変換マップ座標に基づいて、正距円筒射影画像から、透視射影画像である部分画像作成することができる。
ところで、上記射影方式の変換は、正距円筒射影画像の(緯度,経度)が(90°,0°)となる位置が、透視射影画像である部分画像の中心点となるような変換を示している。そこで、正距円筒射影画像の任意の点を注視点として透視射影変換をする場合は、正距円筒射影画像を貼り付けた立体球を回転させることで、注視点の座標(緯度、経度)が(90°,0°)の位置に配置されるような座標回転を行えばよい。
この立体球の回転に関する変換公式は、一般の座標回転公式であるため、説明を省略する。
(結合の処理)
次に、図20を用いて、結合部19が行うステップS160の結合の処理について説明する。図20は、全体動画と部分動画の各フレーム画像が結合された状態を示す概念図である。図20に示しているように、一枚のフレームの上部に全体画像、下部に部分画像が配置されるように結合されている。本実施形態では、一般的はHD等のアスペクトである16:9に合わせて配置されるがアスペクトは問わない。また、配置も上下に限らず左右でもよい。部分画像が複数あった場合は、例えば上半分に全体動画、下半分に部分動画個数分だけ分割して配置してもよい。全体動画と部分画像をフレーム毎に1つにまとめることにより、画像間の同期を保障することができる。また、全天球撮影装置1は、スマートフォン5に対して、全体動画データ及び部分動画データを別々に送信してもよい。
但し、全体動画及び部分動画は、縦を半分にするため、半分にしない場合に比べてそれぞれ解像度は半分に落ちる。即ち、一時記憶部16に記憶されていた超高精細画像よりは精細度が下がる。その結果、精細度は、高い順に、一時記憶部16に記憶された全体画像、射影方式変換部18によって変換された後に低精細変更部17bによって精細度変更された部分画像、及び、低精細変更部17aによって精細度変更された全体画像となる。
<スマートフォンの動画再生処理>
続いて、図21を用いて、スマートフォン5の動画データの再生処理について説明する。図21は、スマートフォンが行う画像処理の過程における画像の概念図である。図7に示された重畳領域作成部54は、図21で示されているように部分画像パラメータで指示された部分立体球PSを作成する(ステップS320)。
次に、画像作成部55は、部分立体球PSに対して、透視射影方式である部分画像を重畳することで、重畳画像Sを作成する(ステップS330)。また、画像作成部55は、部分立体球PSに基づいて、マスク画像Mを作成する(ステップS340)。更に、画像作成部55は、立体球CSに対して正距円筒射影方式である全体画像を貼り付けることで全天球画像CEを作成する(ステップS350)。そして、画像重畳部56は、全天球画像CEに対して重畳S及びマスク画像Mを重畳する(ステップS360)。これにより、境目が目立たないように高精細の重畳画像Sが重畳された低精細の全天球画像CEが完成する。
次に、射影変換部57は、予め定められた仮想カメラの視線方向と画角に基づいて、重畳画像Sが重畳された状態の全天球画像CEにおける所定領域をディスプレイ517で閲覧できるように射影変換を行う(ステップS370)。
図22は、部分平面から部分立体球の作成を説明する図である。通常、透視射影方式では平面に射影するため、図22(a)で示すように3次元空間上に平面で表すことが多い。本実施形態では、図22(b)のように全天球画像に合わせて球の一部である部分立体球とする。ここでは、平面から部分立体球への変換について説明する。
図22(a)で示すように適切な大きさ(画角)で配置された平面上の各点(X,Y,Z)を球面上への射影を考える。球面への射影は球の原点から各点(X,Y,Z)を通る直線と球面との交点となる。球面上の各点は原点からの距離が球の半径と等しい点である。よって球の半径を1とすると図22(b)で示される球面上の点(X’,Y’,Z’)は下記の(式8)で表される。
(X’,Y’,Z’)=(X,Y,Z)×1/√(X2+Y2+Z2)・・・(式8)
図23は、本実施形態の部分立体球作成を行わずに、全天球画像に部分画像を重畳した場合の二次元の概念図である。図24は、本実施形態の部分立体球作成を行って、全天球画像に部分画像を重畳した場合の二次元の概念図である。
図23(a)に示されているように、仮想カメラICが立体球CSの中心点に位置している場合を基準にすると、被写体P1は、全天球画像CE上で像P2として表され、重畳画像S上で像P3として表されている。図23(a)に示されているように、像P2及び像P3は、仮想カメラICと被写体P1とを結ぶ直線上に位置しているため、全天球画像CEに重畳画像Sが重畳された状態で表示されても、全天球画像CEと重畳画像Sにズレが生じない。しかし、図23(b)に示されているように、仮想カメラICが立体球CSの中心点から離れると(画角αを小さくすると)、仮想カメラICと被写体P1とを結ぶ直線上に、像P2は位置しているが、像P3はやや内側に位置している。このため、仮想カメラICと被写体P1とを結ぶ直線上における重畳画像S上の像を像P3’とすると、全天球画像CEと重畳画像Sに、像P3と像P3’との間のズレ量g分のズレが生じてしまう。これにより、全天球画像CEに対して重畳画像Sがずれて表示されてしまうが、このように、重畳した表示であってもよい。
これに対して、さらに、本実施形態では、部分立体球作成を行っているため、図24(a)、(b)に示されているように、重畳画像Sを全天球画像CEに沿って重畳することができる。これにより、図24(a)に示されているように、仮想カメラICが立体球CSの中心点に位置する場合だけでなく、図24(b)に示されているように、仮想カメラが立体球CSの中心点から離れた場合であっても、像P2及び像P3は、仮想カメラICと被写体P1とを結ぶ直線上に位置することになる。よって、全天球画像CEに重畳画像Sが重畳された状態で表示されても、全天球画像CEと重畳画像Sにズレが生じない。
図25(a)は重畳表示しない場合のワイド画像の表示例、図25(b)は重畳表示しない場合のテレ画像の表示例、図25(c)は重畳表示する場合のワイド画像の表示例、図25(d)は重畳表示する場合のテレ画像の表示例を示した概念図である。なお、図中の波線は、説明の便宜上表しただけであり、実際にディスプレイ517上には表示されてもよく、表示されなくてもよい。
図25(a)に示されているように、全天球画像CEに対して部分画像Pを重畳して表示しない場合、図25(a)における波線で示される領域まで拡大表示すると、図25(b)に示されているように、低精細の画像のままとなっており、利用者は鮮明でない画像を見ることになってしまう。これに対して、図25(c)に示されているように、全天球画像CEに対して部分画像Pを重畳して表示する場合、図25(c)における波線で示される領域まで拡大表示すると、図25(d)に示されているように、高精細の画像が表示され、利用者は鮮明な画像を見ることができる。特に、波線で示されている領域に、文字が描かれた看板等が表示されている場合、高精細な部分画像Pを重畳表示しなければ、拡大表示させても文字がぼやけてしまい、何が書かれてあるのか分からない。しかし、高精細な部分画像Pを重畳表示すれば、拡大表示させても文字が鮮明に見えるため、利用者は何が書かれているのかを把握することができる。
<メタデータの構成>
続いて、本実施形態で用いられる動画再生用メタデータの構成について図26を用いて説明する。図26に示すように、動画再生用メタデータは共通情報、動画情報及び少なくとも1以上の静止画情報によって構成されている。これらのうち、共通情報には注視点情報と注目領域画角情報があり、動画配信サービス利用中に閲覧者が指定した部分パラメータから算出することができる。これらの情報は、低精細な全体動画に対して高精細な部分動画若しくは超高精細な部分静止画を重畳表示する際に用いられる情報である。
動画情報における動画識別情報は、低精細な全体画像と高精細な部分画像を含む動画を識別するための画像識別情報である。図26では、動画識別情報の一例として画像のファイル名が示されているが、画像を一意に識別するための画像IDであってもよい。
動画情報における動画撮影開始時刻は、動画記録を開始するフレームが全天球撮影装置で撮影された時刻情報である。動画への時刻情報の付加は、例えば、H.264で符号化する場合はSEC(Supplemental Enhancement Information)のUser data unregisteredの領域を利用する。この情報は、低精細な全体動画を再生中に超高精細な部分静止画を重畳させるタイミングを決定するために用いられる。
静止画情報における静止画識別情報は、超高精細な部分画像である静止画を識別するための画像識別情報である。図26では、静止画識別情報の一例として画像のファイル名が示されているが、画像を一意に識別するための画像IDであってもよい。
静止画情報における対応時刻情報は、静止画が撮影されたときの時刻情報で画像記録フォーマットとして規格されている Exif(Exchangeable image file format)に格納されている情報である。この情報は、低精細な全体動画を再生中に超高精細な部分静止画を重畳させるタイミングを決定するために用いられる。また静止画情報は、動画記録中に撮影された静止画の枚数の分だけ格納される。
<動画記録及びメタデータファイルの作成>
図27は、動画記録及びメタデータの作成の処理を示したシーケンス図である。図27に示されているように、スマートフォン5による動画再生中に閲覧者(利用者)が任意のタイミングでスマートフォン5に対して動画記録要求を示す操作をすることで、受付部22が動画記録の開始要求を受け付ける(ステップS21)。これにより、スマートフォン5の送受信部51は、画像管理システム7の受信部71aに動画データの記録要求を送信する(ステップS22)。この際、閲覧者が指定した部分画像パラメータも送信される。なお、送信開始のタイミングに関して、全天球撮影装置1の送受信部11が通信ネットワークの帯域制御などを行ってもよい。この帯域制御を行うことで、より安定してデータを送受信することが可能となる。また、閲覧者のスマートフォン5に対する操作については、スマートフォン5のディスプレイ517への一般的な操作(画像等を選択するためのタップ操作、画像等を拡大するためのピンチアウト操作、等)や所定のキーに対するキー操作などでもよい。
なお、次のステップS23の全天球撮影装置1によって実行される動画生成処理及びその詳細、ステップS24で実行される動画データの仲介端末3への送信並びにステップS25で実行される動画データの画像管理システム7への送信の各処理は、図17の説明で上述したステップS15、S16及びS17の内容と対応しており、動画配信の際の同様の処理が行われるため、説明を省略する。つまり、動画配信は継続されたまま、閲覧者の任意のタイミングによって動画記録要求がされた時刻からその動画の記録(録画)が開始される。
続いて、画像管理システム7の記憶制御部74は、仲介端末3から受信部71aを介して動画データを受信すると、受信した動画データを記憶部7000に記憶する(ステップS26)。
さらに、画像管理システム7の記憶制御部74は、動画データの記憶開始時に重畳動画用のメタデータファイルを作成し、記憶部7000に記憶する(ステップS27)。この時点で作成されるメタデータには、前述したメタデータの構成のうち注視点情報、注目領域画角情報、動画識別情報及び動画撮影開始時刻が記憶される。また動画の記録は、閲覧者による動画記録の停止要求があるか、記憶部7000の記憶領域が不足するまで行われる。なお、記憶部7000の記憶領域が不足した場合、閲覧者や画像管理システム7の仕様、設定に応じて記憶部7000をリングバッファとして使用し、記憶した各種データを上書きするような制御がされてもよい。
なお、画像管理システム7からスマートフォン5に送信される動画データの送信処理(ステップS28)及びスマートフォン5で実行される動画再生処理(ステップS29)については、上述した図17のステップS18,S19の処理と同様のため、説明を省略する。
<部分静止画の生成及びメタデータ更新>
続いて、図28を用いて部分静止画のデータの生成及びメタデータの更新処理について説明する。図28は、静止画記録及びメタデータの更新の処理を示したシーケンス図である。
閲覧者(利用者)が図17に示されているステップS19によって、図25(c)に示されているような部分画像Pが重畳された動画を閲覧中に、更に高精細な(である)静止画として閲覧したい場合に、閲覧者(利用者)がスマートフォン5を操作することで、受付部22が部分静止画の配信サービスを開始する要求を受け付ける(ステップS31)。
(静止画の生成を要求するときの操作方法)
ステップS31で、静止画の生成を要求するときに閲覧者(利用者)がスマートフォン5に対して行う操作の具体例を図29を用いて説明する。図29は、静止画の生成を要求するときの操作方法の一例を示す図である。スマートフォン5における動画配信中に、閲覧者が注目する被写体が現れたタイミングでディスプレイ517(表示画面)に対してタップ操作の繰返しやピンチアウト操作が行われると(図29(A)又は(B))、受付部52及び重畳表示制御部63は、以下の処理を行う。まず、受付部52は、閲覧者によって行われる部分動画へのタップ操作の繰返しやピンチアウト操作が所定の条件DC(拡大範囲、タップ回数等)以上に達したか否かを判断する。その後、重畳表示制御部63のうちの画像作成部55及び画像重畳部56は、スマートフォン5のディスプレイ517に表示されている部分動画中で拡大等が行われた被写体の周辺を再生中の部分動画よりもさらに高精細な部分静止画として生成し、この部分静止画を部分動画に重畳させる。
なお、閲覧者によるディスプレイ517に対するタップ操作の繰返しやピンチアウト操作において、受付部52が判断する際に用いる所定の条件として以下の例が挙げられる。例えば、図29(A)のようにスマートフォン5の画面に対するタップ操作が行われる場合であれば、タップされた回数やタップされた累積時間等を判断の基準としてもよい。さらに、図29(B)のようにスマートフォン5の画面に対するピンチアウト操作が行われる場合であれば、ピンチアウトによって仮想的に生成される四辺形の一方の対の辺を形成するための水平画角又は他方の対の辺を形成するための垂直画角を所定の条件としてもよい(図16参照)。これらの画角の値は、図16(a)に示されるように予め複数の組合せを有する閾値管理テーブルとして設定されてもよい。さらに、スマートフォン5のディスプレイ517に対してタップ操作やピンチアウト操作が行われ、上記所定の条件DC以上に達した時点(時刻)を、送受信部51が部分静止画生成する要求を送信するタイミング(例えば、シャッターコマンドとしてのトリガ)としてもよい。なお、スマートフォン5のディスプレイ517上に表示される被写体に対する操作例は、タップ操作、ピンチアウト操作に限られず、その他の操作によって実現されるものであってもよい。
上述した方法により、スマートフォン5の送受信部51は、画像管理システム7の受信部71aに静止画データの要求を送信する(ステップS32)。このとき、閲覧者が指定した部分画像パラメータ及び静止画データを要求したときの時刻情報も画像管理システム7の受信部71aに送信される。この静止画データを要求したときの時刻情報は、例えば、図14に示すように外部から取得した時計の時刻情報を利用してもよい。具体的には、この時計を受付部52に入力させておき、静止画データを要求するときにその時計が示す時刻情報を取得して、受付部52から送受信部51を介して全天球撮影装置1まで出力されるようにしてもよい。
次に、画像管理システム7の送信部71bは、仲介端末3の送受信部に対して静止画データの要求を転送する(ステップS33)。そして、仲介端末3の送受信部は、全天球撮影装置1の送受信部11に対して、静止画データ要求、部分画像パラメータ及び静止画データを要求したときの時刻情報を転送する(ステップS34)。全天球撮影装置1は、ステップS34を実行した時刻に係る時刻情報とスマートフォン5から送信された時刻情報を比較することで、ステップS32、S33及びS34の各処理に要する時間の合計時間、すなわちΔtd1を求めることができる。このΔtd1については、後述にて詳細を説明する。
次に、全天球撮影装置1は、静止画データの生成処理を行う(ステップS35)。このステップS35の処理について、以下に説明する。
<全天球撮影装置の静止画の生成>
次に、上述のステップS35で示した全天球撮影装置の静止画データの生成処理について詳細に説明する。
全天球撮影装置1において静止画データの要求を受信した場合、静止画撮影判定を行う。これは部分画像の画角が比較的に狭い場合、元画像からの変換によって作成された部分静止画の解像度が送信中の部分動画の解像度との差がなくなるためである。この場合、図16に示されている水平垂直画角閾値情報の水平画角(AH)と垂直画角(AV)を最低画角とし、部分画像パラメータで指定された画角が、当該画角より広い場合は静止画生成処理を実行する(図18のステップS210)。
より具体的には、全天球撮影装置1の送受信部11が動画データの送信中に、静止画データの要求を受信した場合、射影方式変換部18は、部分動画のデータの生成と同様に、部分静止画のデータに対し、部分画像パラメータに従って正距円筒射影方式を透視射影方式に射影方式変換を行う。この場合、生成される静止画像のサイズは可変とし、超高精細画像の解像度を維持したまま変換を行う。超高精細画像の水平解像度をW、指定された水平画角をahとすると、生成される静止画の水平解像度Wpは以下のように求めることができる。
Wp=W/360*ah ・・・(式9)
ここでのWのサイズは、全天球撮影装置1の起動時に読み込まれた水平垂直画角閾値情報(図16(a)参照)のW列から取得される。
同様に指定された垂直画角をavとすると、生成される静止画の垂直解像度Hpは次で
求めることができる。
Hp=H/180*av ・・・(式10)
更に、静止画符号化部20bは、部分静止画のデータの符号化を行い、画像バッファに格納する。そして、送受信部11は、ステップS16,S17と同様に、上述した通信ネットワーク帯域の制御を行い、仲介端末3を介して画像管理システム7に部分静止画のデータを送信する。この場合も部分画像パラメータが送信される。
次に、静止画生成時の処理について説明する。図30は、全天球撮影装置1が行う動画撮影及び静止画生成時のタイミングチャートである。図28のステップS31の処理で、閲覧者がスマートフォン5のディスプレイ517上に表示された注目する被写体に対してタップ、ピンチアウト等の所定の処理を実行すると、静止画要求の受付がされ、部分静止画の生成処理が開始される。
(静止画撮影時に発生する遅延時間の吸収)
本実施形態の撮影システムにおいて、上述した部分静止画の生成で発生する遅延時間とその吸収方法について、図30及び図31を用いて以下に説明する。
図30において、全天球撮影装置1の撮像部14a及び撮像部14bは、時刻t1(例えば、図26のメタデータとして記憶された情報における動画撮影開始時刻t=10:00:00)から動画の撮影を開始する。その後、撮像制御部13は、Δta時間遅延後のt1+Δtaの時刻に閲覧者からの静止画要求を画像管理システム7及び仲介装置3を介して受け付けると、一時記憶部16に記憶された動画のデータから部分静止画の生成を実行する。なお、本実施形態において、撮像制御部13は、高精細な静止画を生成する際のタイミング管理手段としても機能する。
続いて、t1+Δtb時間遅延後に閲覧者からの静止画要求の受付があると、撮像制御部13は、t1+Δtbの時刻に静止画の撮影(生成)を実行し、さらに、t1+Δtc時間遅延後に閲覧者からの静止画要求の受付があると、t1+Δtcの時刻に静止画の撮影を実行する。なお、閲覧者からの静止画要求が行われるタイミングとして、0<Δta<Δtb<Δtcの関係があるものとする。
続いて、図31において、時刻t3のときに図30のタイミングで録画した部分動画の再生がスマートフォン5において開始されたとすると、(t3+Δta)の時刻から(t3+Δtb)の時刻までに静止画Aが再生される。同様に、(t3+Δtb)の時刻から(t3+Δtc)の時刻までにスマートフォン5において静止画Bが再生される。さらに同様に、(t3+Δtc)の時刻からt4の時刻までにスマートフォン5において静止画Cが再生される。なお、静止画A、B、Cは、次の静止画が再生されるタイミングで再生される静止画が切り替わってしまう。そのため、閲覧者が引き続き同じ静止画の再生を継続したい場合を考慮して、一般的な動画再生装置に設けられているような一時停止機能や巻き戻し機能をスマートフォン5に設けておいてもよい。
本実施形態において、実際には、静止画Aの生成には本実施形態におけるシステムの処理時間(例えば、図28のステップS32,S33,S34の各処理時間の加算分)だけ遅延したときの配信動画が静止画として撮影されることになる。つまり、静止画Aの静止画データは、全天球撮影装置1が要求情報を受信した時点(スマートフォン5が要求情報を送信してからステップS32,S33,S34の各処理時間の加算分である遅延時間=Δtd1だけずれたタイミング)で得られた被写体を含む画像のデータになる。この遅延時間については、静止画B及び静止画Cの再生時においても同様である。これは、上述のExifに沿った関連情報(メタデータ)の一例として撮影時刻に関する情報が管理された状態であっても、処理時間による遅延の影響で再生される静止画とその再生タイミングにずれが生じることになる。
そこで、遅延時間としてのΔtd1を吸収させるために、以下のような方法が考えられる。例えば、全天球撮影装置1の一時記憶部16は、その記憶領域をリングバッファとして使用して、記憶した動画データを上書きするような制御をする。この制御を前提とすれば、全天球撮影装置1の撮像制御部13は、閲覧者からの静止画要求の受付(図28のステップS31)があった任意の時刻を起点として、続くステップS32,S33及びS34に要する処理時間の合計(=Δtd1)だけ以前の時刻、すなわち、以下の式11で示される時刻、
(t1+Δta)−Δtd1・・・(式11)
まで遡った時刻(時点)の部分動画を静止画Aとして生成することが可能になる。なお、画像管理システム7の記憶制御部74が記憶部7000を用いて全天球撮影装置1の動画を管理するような撮影システムの場合は、記憶制御部74は、記憶部7000をリングバッファとして制御してもよい。
換言すれば、撮像制御部13は、閲覧者により受け付けられた操作が所定の条件を超えた時刻(例えば、閲覧者による被写体に対するピンチアウト操作によって拡大された領域が、所定の画角以上に到達した時刻)から画像管理システム7、仲介端末3及びスマートフォン5で実行される処理に要する時間だけ遡った時刻に配信されている動画を用いて静止画Aとして生成することが可能となる。但し、仲介端末3を必要としない撮影システムであれば、この仲介端末3における処理時間を無視することが可能である。上述した遅延時間の吸収に関する考え方は、静止画B及び静止画Cについても同様であり、閲覧者により注目された被写体を高精細な静止画として生成するときのタイミング遅延による影響を解消することができる。このとき、システムの時刻管理は、例えば、GPS衛星から取得した時刻情報をスマートフォン5、画像管理システム7、仲介端末3及び全天球撮影装置1にて共通使用するようにしておけば、さらに精度良くこの遅延時間の吸収処理が可能となる。
このような遅延時間を吸収する仕組みを全天球撮影装置1に設けておくことで、閲覧者が注目する被写体を静止画として撮影したいタイミングの静止画を正確に撮影し、閲覧者に再生することが可能になる。
なお、上述した制御は、スマートフォン5の再生時間管理部59で管理される基準となる動画再生時間(例えば、30fps)と、スマートフォン5(ステップS32)、画像管理システム7(ステップS33)及び仲介端末3(ステップS34)のそれぞれの処理における単位処理時間(例えば、クロック速度等)等の関係から、遅延時間Δtd1を無視するか、又は上述のような計算式に基づく遅延時間吸収処理を行うかを選択されるようにしてもよい。なお、図28に示したシーケンス図は一例であり、この処理に限定されるものではない。
次に、全天球撮影装置1の送受信部11は、仲介端末3の送受信部に対して、要求に応じた静止画データを送信する(ステップS36)。この静止画データは、超高精細の部分静止画のデータである。なお、静止画データの送信を開始するタイミングは、夜間などネットワークのトラフィック量が少ない時間帯や、遅延時間を測定し、所定の遅延時間より短くなる時に送信するようにしてもよい。これにより、仲介端末3の送受信部は、画像管理システム7の受信部71aに静止画データを転送する(ステップS37)。
次に、画像管理システム7の動画再生用メタデータ作成部72は、ステップS17で作成したメタデータファイルに静止画データを重畳して重畳表示用のメタデータを更新する(ステップS38)。このとき動画再生用メタデータ作成部72は、前述したメタデータの構成のうち静止画識別情報と静止画撮影時刻を記憶する。このステップS38の処理は、後ほど詳細に説明する。
次に、画像管理システム7の受信部71aが静止画データを受信した場合は、記憶制御部74は、記憶部7000に静止画データを記憶させる(ステップS39)。
なお、ステップS31乃至ステップS39の処理は閲覧者の指示により動画配信中に複数回実施されてもよい。また、本実施形態では閲覧者の要求毎に静止画の撮影を行っているが、一般的なデジタルカメラに搭載されているインターバル撮影機能を用いて一定時間毎に静止画の撮影を行ってもよい。さらに、ステップS38及びステップS39の処理は、互いにその順番を入れ替えて実行されてもよい。
そして、画像管理システム7の送信部71bは、スマートフォン5の送受信部51に静止画データを転送する(ステップS40)。この際、転送開始のタイミングに関しては、全天球撮影装置1から仲介端末3を介して画像管理システムへのデータ送信と同様、通信ネットワークの帯域制御などを行う。
次に、スマートフォン5の表示制御部58は、広角な部分動画上にこれまで重畳していた部分動画に代えて、超高精細な部分静止画を重畳してディスプレイ517上に表示させる(ステップS41)。このステップS41でスマートフォン5が行う部分静止画の表示タイミングについては、以下の2つの場合が考えられる。1つは、全天球撮影装置1が動画のライブ配信中に、スマートフォン5が配信されている動画に重畳させて超高精細な部分静止画を表示させる場合である。もう1つは、全天球撮影装置1によるライブ配信が終わり所定の時間が経過した後に、スマートフォン5がライブ配信された動画を再生し、ライブ配信中に表示されたタイミングと同じタイミングで超高精細な部分静止画を表示させる場合である。スマートフォン5の閲覧者は、これらの表示タイミングのいずれかにおいて、配信中の動画又は再生中の動画に超高精細な部分静止画を重畳させた表示画面を閲覧することが可能である。
なお、上記ステップS35において、判断部25が射影方式変換部18に超高精細な静止画のデータを射影方式変換させないと判断した場合に、上記ステップS36〜S37において、静止画データの代わりに、「静止画を送信しない」旨、「画角は不足している」旨等のメッセージを送信するようにしてもよい。この場合、ステップS41では、広角な部分動画上に狭角な部分動画が重畳されたままの状態で上記メッセージが表示されるようにしてもよい。
<メタデータの更新>
次に、上述したステップS38で示したメタデータの更新処理について詳細に説明する。
配信されている動画データの記録中に画像管理システム7の受信部71aが全天球撮影装置1から仲介装置3を介して静止画データを受信した場合、記憶制御部74は、受信した静止画データを記憶部7000に記憶する。次に、画再生用メタデータ作成部72は、ステップS27で作成したメタデータファイルに対して記憶部7000に新たに記憶された静止画データ情報を追加する。このとき、画再生用メタデータ作成部72は、上述したメタデータの構造のうち静止画識別情報と静止画撮影時刻をあわせて記憶する。
<スマートフォンにおける静止画の再生>
次に、上述のステップS41で示したスマートフォン5の静止画データの再生処理について詳細に説明する。
スマートフォン5では、送受信部51が全天球撮影装置1から送られてきた静止画データを部分静止画のデータと部分画像パラメータに分離する。静止画復号化部53bは、分離された後の部分静止画のデータを復号化する。
<動画データのダウンロード>
続いて、画像管理システム7に記憶、管理されている動画データをスマートフォン5にダウンロードする場合について図32を用いて説明する。まず閲覧者がスマートフォン5を操作することにより、全天球撮影装置1の受付部22が動画の再生要求を受け付ける(ステップS51)。これにより、スマートフォン5の送受信部51は画像管理システム7の受信部71aに記録データ要求を送信する(ステップS52)。
画像管理システム7の受信部71aは、記録データ要求を受信すると、記憶制御部74を介して記憶部7000から読み出された動画ファイル、静止画ファイル及び動画再生用メタデータをスマートフォン5の送受信部51に送信する(ステップS53)。
スマートフォン5の送受信部51が動画ファイル、静止画ファイル及び動画再生用メタデータを画像管理システム7から受信すると、記憶制御部62は、受信した動画ファイル、静止画ファイル及び動画再生用メタデータを記憶部5000に保存(ダウンロード)して、動画及び静止画の再生処理を行う(ステップS54)。
(動画及び静止画再生時の表示選択)
ステップS54で上述したように、各表示パターンは、例えば、撮影システムの使用環境及び各装置の仕様等から選択的に表示制御されるようにしてもよい。
図33は、選択ボタン及び決定ボタンの一例を示す図である。図33に示すように、全体動画選択ボタン551(広角動画)、部分動画選択ボタン552(狭角動画)及び部分静止画選択ボタン553(狭角静止画)並びに決定ボタン554は、スマートフォン5に設けられてもよい。以下、全体動画を広角動画、部分動画を狭角動画、及び、部分静止画を狭角静止画と呼ぶ。なお、上述した全体動画選択ボタン551(広角動画)、部分動画選択ボタン552(狭角動画)及び部分静止画選択ボタン553(狭角静止画)は、閲覧者がスマートフォン5のディスプレイ517を操作することで、受付手段の一例である受付部52が受け付ける操作ボタンである。これらの全体動画選択ボタン551、部分動画選択ボタン552、及び、部分静止画選択ボタン553は、広角動画、部分動画及び部分静止画に係る表示形態のうち、単独又は複数の組合せ、すなわち少なくとも一つ以上が選択されてもよい。例えば、広角動画と狭角動画をディスプレイ517に表示させる場合や、狭角動画と狭角静止画をディスプレイ517に表示させる場合など、閲覧者の所望する利用形態に応じて、複数の組合せで上述した各選択ボタンが選択されてもよい。
このような選択ボタンや決定ボタンを設けることで、動画再生中のビューアで閲覧者による被写体の拡大動作が続けられた場合の広角動画又は狭角動画の解像度に応じて、動画を優先させる(解像度を犠牲にする)か、解像度を優先させる(動画を犠牲にする)かの選択が可能なようにスマートフォン5が構成されてもよい。つまり、このような場合は、スマートフォン5は、受付部52に閲覧者が選択可能な選択部としての選択ボタンやアイコン等を設け、少なくとも1つ以上のボタンやアイコンの入力を受け付けるようにしてもよい。
また、決定ボタンを選択ボタンやアイコンの下部に設けることで、受付部52は、閲覧者により選択された機能及び機能の組合せの決定を受け付けることができる。なお、決定ボタンの操作による機能及び機能の組合せの決定以外にも、閲覧者により選択されたボタンやアイコンが所定時間表示されたら選択されたボタンやアイコンの機能を決定するようにして、閲覧者が決定ボタンの操作を省略できるように構成されてもよい。
(重畳表示方法のパターン)
次に、上述したステップS54で行われる再生処理において、広角動画に対する狭角動画及び狭角静止画のうちの少なくとも一つを重畳させて表示する具体例及びその表示パターンについて説明する。スマートフォン5の重畳領域作成部54、画像作成部55、画像重畳部56、射影変換部57及び表示制御部58は、広角動画を再生中にその広角動画に対して高精細な狭角動画及びその狭角動画よりもさらに高精細な狭角静止画のうち少なくとも一つを重畳させてスマートフォン5のディスプレイ517に表示させる。ここで、スマートフォン用プログラムに従ったCPU501からの命令によって、重畳領域作成部54、画像作成部55、画像重畳部56、射影変換部57及び表示制御部58を纏めて重畳表示制御部63として機能させてもよい。また、この重畳表示制御部63は、重畳表示制御手段の一例である。
また、動画及び静止画を重畳する制御を担う重畳画像判断部61は、上述したように広角動画に対して狭角動画と狭角静止画のどちらの画像を重畳表示するかを判断する。この重畳画像判断部61は、重畳画像判断手段の一例として機能する。なお、重畳表示に関する判断実行後の重畳や表示に関する処理は、ストリーミング配信における制御と同様のため説明を省略する。
続いて、重畳画像判断部61により判断される重畳(合成)画像を表示する表示方法のバリエーションについて以下に説明する。つまり、重畳画像判断部61は、受信した広角動画(全体動画)を構成する広角動画データ、狭角動画(部分動画)を構成する狭角動画データ及び狭角静止画(部分静止画)を構成する狭角静止画データのうち何れの組合せで合成するかを判断する重畳画像判断手段の機能を担う。
(表示方法1)
重畳画像判断部61は、閲覧者の指定する表示領域と予め指定された部分領域の情報を基に、広角動画に対し、狭角動画と狭角静止画のどちらの画像を重畳表示するかを判断する。重畳画像判断部61は、ディスプレイ517上の閲覧領域の縦の画素数をTh、部分領域の画素数をPh、閲覧領域の横の画素数をTw、部分領域の画素数をPwとすると、Ph>H’/2の場合もしくはPh>W’の場合は超高精細な静止画を重畳させ、それ以外の場合は動画を重畳させることで自動的に切り替えを行う。Ph、Pwは以下の式で近似することができる。
P=b/a*T・・・(式12)
なお、上記式のa,b,p及びtの各パラメータは、例えば、図34に示した表示領域と注目領域を示す二次元の概念図に基づいて与えられる。このように必要となる解像度(画素数)を算出し重畳画像の切り替えを自動で行うことにより、閲覧者は表示領域の指示を行うだけで、常に最適な解像度の画像を閲覧することができる。
(表示方法2)
一方で静止画を重畳させることで解像度が向上する条件においても動画のまま表示させた方が閲覧者にとって有益となることもある。そこで、本実施形態では、後述するように広角動画、狭角動画及び狭角静止画のうちいずれを再生させるかを選択する選択ボタン及びそれらの選択を決定する決定ボタンをスマートフォン5に設けてもよい。
閲覧者が解像度よりも動きを重視して閲覧したい場合は、重畳画像判断部61は、閲覧者の指示によって狭角動画と狭角静止画の表示を切り替えるように制御してもよい。
(表示方法3)
また、静止画が撮影された領域は、動画を再生する閲覧者にとっても特に詳細に見たい被写体や領域である可能性が高いため、動画の再生中に狭角静止画が存在した場合は、重畳画像判断部61は、重畳表示制御部63と連携してディスプレイ517の画面中央に静止画が表示されるよう視点を回転させてもよい。
(表示方法4)
また、撮影時にカメラが移動する場合は、再生時に部分静止画と全体動画がずれてしまうという課題がある。その場合は、静止画を重畳表示している期間は背景である動画も静止させて表示させてもよい。このように、静止画があるときは、重畳画像判断部61は、重畳表示制御部63と連携して静止画の方向を向いて静止画を所定時間(例えば、5秒間等の任意の設定時間又は次の静止画が表示されるまでの時間)だけ表示させるようにしてもよい。
(動画及び静止画の表示例)
図34は、表示領域と注目領域を示す二次元の概念図である。この二次元の概念図については、上述した表示パターン1で説明したとおりである。また、図35乃至図40は、再生動画中に重畳される部分動画及び静止画の表示例及びその表示例に対応する各表示パターンを示す例である。それぞれの動画及び静止画と各表示パターンの例について、以下に説明する。
まず、図35(a)は、スマートフォン5のディスプレイ517に広角動画が再生された状態である。すなわちこの状態は、低精細な広角動画が表示された状態である。この状態で、広角動画の一部(天守閣の周辺)が閲覧者のピンチアウト操作等によって拡大されたとき、すなわち低精細な広角動画の一部が拡大されたとき、画像作成部55は、拡大された広角動画をその広角動画よりも相対的に高精細な狭角動画を生成し、画像重畳部56は、生成した狭角動画を広角動画の天守閣の付近に重畳させる。すなわちこの状態は、低精細な狭角動画と高精細な狭角動画とが重畳された状態である。その後、表示制御部58は、画像重畳部56で広角動画に重畳させた狭角動画及び射影変換部57で射影変換されたそれぞれの動画をディスプレイ517に表示させる(図35(b))。なお、図35(b)では、表示制御部58は、広角動画に重畳させた部分動画の外枠四辺を点線で表示しているが、便宜上示すものであるので、この点線は実際のディスプレイ517上に表示させなくてもよい。
次に、閲覧者によってさらに拡大操作が続けられ狭角動画の領域が所定の条件(範囲)以上に達したら、画像作成部55は、狭角動画中で拡大された画像をその狭角動画よりもさらに高精細な狭角静止画として生成し、画像重畳部56は、画像重畳部56で広角動画の天守閣の付近に狭角静止画を重畳させる。その後、表示制御部58は、広角動画に重畳させた狭角静止画を表示させる(図35(c))。すなわちこの状態は、狭角動画と拡大後の超高精細な狭角静止画とが重畳された状態である。なお、図35(c)でも、広角動画に重畳させた超高精細な狭角静止画の外枠四辺を点線で示しているが、便宜上示すものであるので、表示制御部58は、この点線を実際のディスプレイ517上に表示させなくてもよい。さらに、表示制御部58は、重畳させた狭角静止画をスマートフォン5のディスプレイ517に所定時間表示するように制御してもよい。また、上述した所定時間とは、例えば、上述した動画再生及び静止画再生時のタイミングに係る図31においては静止画A,B,C等が表示される時間を示すが、その他の方法で算出された時間でもよい。
一方、表示制御部58は、図35(c)の状態から、広角動画が表示されていたディスプレイ517の表示領域全てに(広角動画に代えて)超高精細な狭角静止画を表示するようにしてもよい(図35(d))。すなわちこの状態は、拡大後の超高精細な狭角静止画がスマートフォン5のディスプレイ517の表示可能領域全体に表示された状態である。
以下、図36乃至図40に示した各表示パターンについて説明する。図36は、動画の拡大と動画に重畳された高精細な静止画の表示例に対応する表示パターンの一例である。図36(a)、(b)、(c)及び(d)は、図35(a)、(b)、(c)及び(d)の各表示パターンにそれぞれ対応する。詳細には、図36(a)は低精細な広角動画(広角動画WM。以下、単に広角動画という)がディスプレイ517の表示領域の全体に表示された状態の一例であり、図36(b)は低精細な広角動画と高精細な狭角動画(狭角動画NM。以下、単に狭角動画という)とが重畳された状態の一例であり、図36(c)は図36(b)の狭角動画を拡大したとき、低精細な広角動画と超高精細な狭角静止画(狭角静止画NS。以下、単に狭角静止画という)とが重畳された状態の一例である。さらに、図36(d)は、図36(b)の狭角動画を拡大したとき、超高精細な狭角静止画が狭角動画に置き換わってディスプレイ517の表示領域の全体に表示された状態の一例である。なお、低精細な広角動画が第1の画像の場合に、高精細な狭角動画又は超高精細な狭角静止画は第2の画像である。又は、高精細な狭角動画が第1の画像の場合に、超高精細な狭角静止画は第2の画像である。
図37は、動画の拡大と動画に重畳された高精細な静止画の表示例に関する他の表示例(表示パターン2)である。詳細には、図37(a)、(b)及び(d)は図36(a)、(b)及び(d)と同様である。図37(c)は高精細な狭角動画と超高精細な狭角静止画とが重畳された状態の一例である。
図38は、動画の拡大と動画に重畳された高精細な静止画の表示例に関する他の表示例(表示パターン3)である。詳細には、図38(a)、(b)及び(d)は図37(a)、(b)及び(d)と同様である。図38(c)は低精細な広角動画と高精細な狭角動画とが重畳され、さらに高精細な狭角動画と超高精細な狭角静止画とが重畳された状態の一例である。
図39は、動画の拡大と動画に重畳された高精細な静止画の表示例に関する他の表示例(表示パターン4)である。詳細には、図39(a)及び(b)は図38(a)及び(b)と同様である。図39(c)は高精細な狭角動画がディスプレイ517の表示領域の全体に表示された状態の一例であり、図39(d)は図39(b)の状態で高精細な狭角動画を拡大したとき、図39(c)のように高精細な狭角動画がディスプレイ517の表示領域の全体に表示された後、高精細な狭角動画と超高精細な狭角静止画とが重畳された状態の一例である。
図40は、動画の拡大と動画に重畳された高精細な静止画の表示例に関する他の表示例(表示パターン5)である。詳細には、図40(a)、(b)及び(c)は図39(a)、(b)及び(c)と同様である。図40(d)は図40(b)の状態で高精細な狭角動画を拡大したとき、ディスプレイ517の表示領域の全体に表示された後、超高精細な狭角静止画が高精細な狭角動画に置き換わってディスプレイ517の表示領域の全体に表示された状態の一例である。
重畳画像判断部61は、上述したような制御をすることで、例えば、閲覧者がスマートフォン5を利用する場合に、広角動画及び狭角動画の再生とそれらの動画に重畳される狭角静止画の生成及び再生に関して、閲覧者が望まないようなデータ通信量(高額な利用料)がかかることを抑制することも可能となる。
〔実施形態の主な効果〕
以上説明したように本実施形態によれば、全体画像等の広角動画及び部分画像等の狭角動画のデータ通信量を抑制しながらも、部分画像の精細度をできるだけ下げないようにして閲覧者がよりはっきりと注目する領域を閲覧することができるようになるという効果を奏する。
さらに、本実施形態によれば、通信量を減らすべく、全天球撮影装置1が、全天球画像の全体を縮小した低精細な全体画像と、全天球画像(全体画像)内の注目する領域である高精細な部分画像のデータとを配信し、受信側のスマートフォン5で全体画像に部分画像を重畳(合成)するだけでなく、低精細な全体画像と高精細な部分画像が異なる射影方式であっても、スマートフォン5で合成して表示可能であるため、射影方式に関する汎用性が高いという効果を奏する。
〔補足〕
上述した実施形態では、全天球撮影装置1の判断部25は、全体動画の一部の領域である部分画像の一フレームの全領域が、閾値管理部1001で管理されている水平垂直画角閾値情報(図16参照)の所定の閾値で示される所定領域よりも小さいか否かを判断する。そして、小さい場合に、判断部25は、射影方式変換部18に超高精細な静止画のデータを射影方式変換させないようにし、大きい場合に、判断部25は、射影方式変換部18に超高精細な静止画のデータを射影方式変換させるようにしたが、これに限るものではない。例えば、小さい場合に、送受信部11が静止画記憶部29に記憶されている射影方式変換後の部分静止画のデータをスマートフォン5側に送信させない処理を行い、大きい場合に、送受信部11が静止画記憶部29に記憶されている射影方式変換後の部分静止画のデータをスマートフォン5側に送信させる処理を行うようにしてもよい。この場合、判断部25が送受信部11に送信させるか否かを指示してもよいし、判断部25が静止画記憶部29に対して、全天球撮影装置1の記憶部に記憶されている射影方式変換後の部分静止画のデータを、送受信部11側に送信させるか否かを指示してもよい。
また、全天球撮影装置1は撮影装置の一例であり、撮影装置には、通常の平面画像を得るデジタルカメラやスマートフォン等も含まれる。通常の平面画像を得るデジタルカメラやスマートフォンの場合、全天球画像を得るのではなく、比較的広角な画像(広角画像)を得ることができる。
また、スマートフォン5は、通信端末又は画像処理装置の一例であり、通信端末又は画像処理装置には、タブレット型PC(Personal Computer:パーソナルコンピュータ)、ノートPC、デスクトップPC等のPCも含まれる。さらに、通信端末又は画像処理装置には、スマートウォッチ、ゲーム機器又は車両等に搭載するカーナビゲーション端末等も含まれる。
上記実施形態では、低精細画像として、全天球撮影装置1の撮像部14a,14bから得られた画像データの画像の全体領域である全体動画と、高精細画像として、全体領域の一部の領域である部分動画について説明したが、これに限るものではない。低精細画像は、撮像部14a,14bから得られた動画データの画像の全体領域の一部の領域A1の画像であってもよい。この場合、高精細画像は、一部の領域A1の更に一部の領域A2の画像となる。即ち、低精細な全体動画と高精細な部分動画との関係は、前者が全体動画としての広角動画であるのに対して後者が部分動画としての狭角動画である。なお、部分静止画についても、部分動画と同様の考えで、狭角静止画ということができる。なお、本実施形態において、広角画像(静止画、動画のいずれも含む)は、いわゆる広角レンズや魚眼レンズを備える撮影装置で撮影された画像の歪みが発生するような画像である。また、狭角画像(静止画、動画のいずれも含む)は、広角レンズや魚眼レンズを備える撮影装置で撮影された画像の一部で、画角が広角画像よりも狭い画角の画像である。
上記実施形態では、全天球画像に平面画像を重畳する場合について説明したが、重畳は、合成の一例である。合成には、重畳の他に、貼り付け、嵌め込み、重ね合わせ等も含まれる。また、画像の合成には、第1の画像に第2の画像を合成する場合と、第2の画像に第1の画像を合成する場合が含まれる。つまり、画像の合成は、第1の画像と第2の画像とが合成されることを含む。また、上記重畳画像は、合成画像の一例である。合成画像には、重畳画像の他に、貼り付け画像、嵌め込み画像、重ね合わせ画像等も含まれる。更に、画像重畳部56は、画像合成手段の一例である。
また、正距円筒射影画像ECと平面画像Pは、両方とも静止画の場合、両方とも動画のフレームの場合、一方が静止画で他方が動画のフレームの場合のいずれであってもよい。
更に、上記実施形態では、射影方式変換部18は、一時記憶部16から取得した高精細の画像データをそのままの精細度で射影方式を変換しているが、これに限るものではない。例えば、低精細変更部17aから出力される全体画像データよりも高い精細度であれば、射影方式変換部18は、射影方式を変換する際に一時記憶部16から取得した画像データの精細度を低くしてもよい。つまり、射影方式変換部18から出力される画像データは、低精細変更部17aから出力される画像データよりも相対的に精細度が高くなるように制御されれば、その方法は問わない。
図13乃至図15に示されている各機能構成は、ソフトウェア機能ユニットの形で実現し、且つ、独立製品として販売または使用する場合に、コンピュータ読取り可能な記憶媒体に記憶することができる。この場合に、本実施形態の技術方案は、本質的、または従来技術に貢献する部分若しくは上記技術方案の部分はコンピュータソフトウェア製品の形で表現される。上記コンピュータソフトウェア製品は、記憶媒体に記憶され、コンピュータ装置(パーソナルコンピュータ、サーバ、或はネットワークデバイスなど)に上記各実施形態にかかる上記方法の全部或は一部のステップを実行させる複数の指令を含む。なお、上述の記憶媒体は、USBメモリ、リムーバブルディスク、ROM、RAM、磁気ディスク、あるいは光ディスクなど、プログラムコードを格納できる様々な媒体を含む。
また、上記実施形態にかかる方法は、プロセッサに適用され、またはプロセッサによって実現される。プロセッサは信号を処理する能力を持つ集積回路基板である。上記各実形態の方法の各ステップはプロセッサにおけるハードウェアである集積論理回路又はソフトウェア形式の指令によって実現される。上記プロセッサは、例えば、汎用プロセッサ、デジタル信号プロセッサ(DSP)、専用集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)または他のプログラマブル論理デバイス、ディスクリートゲートまたはトランジスタ論理デバイス、ディスクリートハードウェア部品であり、上記各実施形態に開示される各方法、ステップ及び論理ボックスを実現又は実行可能なものである。汎用処理器はマイクロプロセッサ又は任意の一般処理器などである。上記各実施形態にかかる方法の各ステップは、ハードウェアであるデコーダにより実行されることで実現されてもよく、または、デコーダにおけるハードウェアとソフトウェアとの組み合わせによって実現されてもよい。ソフトウェアモジュールはランダムメモリ、フラッシュメモリ、読出し専用メモリ、プログラマブル読出し専用メモリ、あるいは電気的消去可能なプログラマブルメモリ、レジスタなど、本分野で成熟した記憶媒体に記憶される。このソフトウェアが記憶される記憶媒体を備えるメモリから、プロセッサは情報を読み取り、ハードウェアに合わせて上記方法のステップを実現させる。
以上に説明した実施形態は、ハードウェア、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、またはそれらの組み合わせで実現される。その中に、ハードウェアの実現に関して、処理ユニットは一つまたは複数の専用集積回路(ASIC)、デジタル信号処理プロセッサ(DSP)、デジタル信号プロセッサ(DSPD)、プログラマブルロジックデバイス(PLD)、フィールドプログラマブルゲートアレイ(FPGA)、汎用プロセッサ、コントローラ、マイクロコントローラ、マイクロプロセッサ、本発明の機能を実行する他の電子ユニット或いはその組合せにより実現される。また、ソフトウェアの実現に関しては、上述した機能を実現するモジュール(たとえばプロセス、関数など)により上記技術が実現される。ソフトウェアコードは、メモリに保存され、プロセッサによって実行される。なお、メモリはプロセッサの内部または外部で実現される。