以下、本発明の実施の形態について添付の図面を参照しつつ説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することによって重複した説明を省く。
(実施の形態1)
<撮像システム1000の構成>
実施の形態1に係る撮像システム1000の構成を説明する。図1は、実施の形態1に係る撮像システム1000の構成の一例を示す図である。図1に示すように、撮像システム1000は、撮像装置10と、端末20とを含む。本実施の形態では、撮像システム1000は、1つの撮像装置10と1つの端末20とを含むが、2つ以上の撮像装置10を含んでもよく、2つ以上の端末20を含んでもよい。
撮像装置10と端末20とは、互いに通信する。撮像装置10によって撮像された撮影画像が、画像データとして端末20に送られ、視聴者は、端末20において、送られた画像データを視ることができる。撮像装置10と端末20とは、通信網30を介して間接的に接続されてもよく、有線通信又は無線通信を介して直接的に接続されてもよい。本実施の形態では、撮像装置10と端末20とは、通信網30を介して互いに接続される。例えば、2つ以上の端末20が設けられる場合、撮像装置10は、撮像画像を、画像データとして2つ以上の端末20に同時に配信することができる。通信網30は、インターネット、有線LAN(Local Area Network)、無線LAN、モバイル通信網、電話回線通信網、又は、その他の有線若しくは無線通信を用いる通信網であってもよい。本実施の形態では、通信網30はインターネットである。
撮像装置10及び端末20はそれぞれ、1つ以上の装置で構成されてもよい。装置が2つ以上の装置で構成される場合、当該2つ以上の装置は、1つの機器内に配置されてもよく、分離した2つ以上の機器内に分かれて配置されてもよい。本明細書及び特許請求の範囲では、「装置」とは、1つの装置を意味し得るだけでなく、複数の装置からなるシステムも意味し得る。
撮像装置10は、デジタル画像である静止画及び/又は動画を撮像するカメラ等を含む撮像部11A(図2参照)を備え、撮像した画像を端末20に送信する。動画は、連続的に撮像された複数のフレームの画像で構成される連続的な動画であってもよく、間隔をあけて撮像された複数の静止画で構成されるタイムラプス動画であってもよい。本実施の形態では、撮像装置10は、連続的な動画を撮像し、動画を構成する複数のフレームの画像データを端末20に送信する。
以下において、1フレームの画像のことを、「画像フレーム」とも呼ぶ。また、本明細書及び特許請求の範囲において、「画像」とは、画像そのものを意味するだけでなく、画像を示すデータである画像データ及び画像を示す信号である画像信号をも意味し得る。そして、「画像フレーム」は、1フレームの画像そのものを意味するだけでなく、1フレームの画像を示すデータ、及び1フレームの画像を示す信号をも意味し得る。
撮像部11Aは、一般的な視野角の画像を撮像するカメラで構成されてもよく、180°程度までの視野角である広角な画像を撮像するカメラで構成されてもよく、180°超の視野角である超広角な画像を撮像するカメラで構成されてもよい。本実施の形態では、撮像部11Aは、全天球の視野を有する全天球型カメラであるとして説明するが、これに限定されない。
端末20は、通信機能を有し且つ画像を表示することができるコンピュータ装置である。端末20の例は、ノートPC(Personal Computer)、携帯電話、スマートフォン及びタブレット端末などのスマートデバイス、ゲーム機、PDA(Personal Digital Assistant)、ウェアラブルPC、デスクトップPC、テレビ会議端末、及びIWB(Interactive White Board:相互通信が可能な電子式の黒板機能を有する白板)等である。本実施の形態では、端末20は、ノートPCであるとして説明するが、これに限定されない。
<撮像装置10の構成>
撮像装置10の構成を説明する。図2は、実施の形態1に係る撮像装置10の一例を示す側面図である。図2に示すように、撮像装置10は、撮像部11Aと、筐体11Bとを備える。撮像部11Aは、カメラ11a及び11bと、コントローラ11cとを備える。筐体11Bは、カメラ11a及び11bと、コントローラ11cとを収容する。
カメラ11a及び11bはそれぞれ、半球超(画角が180°超)の視野を有する超広角なカメラである。カメラ11aは、結像光学系11aaと、第一撮像素子11abとを備え、カメラ11bは、結像光学系11baと、第二撮像素子11bbとを備える。
結像光学系11aa及び結像光学系11baはそれぞれ、入射する像を第一撮像素子11ab及び第二撮像素子11bbの受光面上に結像する。結像光学系11aa及び結像光学系11baはそれぞれ、レンズ、プリズム、フィルタ及び開口絞り等の光学素子を含む。レンズは、魚眼レンズ等の180°超の画角を有するレンズである。
結像光学系11aa及び結像光学系11baは、レンズへの光の入射方向が互いに反対向きになるように配置されている。結像光学系11aa及び結像光学系11baのレンズの光軸中心は、同じ光軸中心LAを構成する。結像光学系11aa及び結像光学系11baは、同一仕様のものであり、それぞれの光軸中心が合致するようにして、互いに逆向きに組み合わせられる。
第一撮像素子11ab及び第二撮像素子11bbは、アレイ状に配置された複数の受光素子を含む。受光素子は、受光する光の強度を示す画素値を出力する。画素値の例は、輝度値である。受光素子は、第一撮像素子11ab及び第二撮像素子11bbそれぞれにおける画像を撮像する複数の画素を構成する。第一撮像素子11ab及び第二撮像素子11bbはそれぞれ、結像光学系11aa及び結像光学系11baによって受光面上で結像された像の光分布を示す画像信号を、画像フレームとして順次コントローラ11cに出力する。
第一撮像素子11ab及び第二撮像素子11bbの例は、CCD(Charge Coupled Device)イメージセンサ及びCMOS(Complementary Metal Oxide Semiconductor)イメージセンサ等である。本実施の形態では、第一撮像素子11ab及び第二撮像素子11bbは、解像度及び撮像素子寸法が同じである同じイメージセンサであるが、これに限定されない。
コントローラ11cは、マイクロコンピュータ等で構成されるコンピュータ装置である。コントローラ11cは、第一撮像素子11ab及び第二撮像素子11bbによって撮像された2つの画像フレームを1つの画像フレームに合成処理し、立体角4πステラジアンの画像(以下、「全天球画像」とも呼ぶ)フレームを生成する。全天球画像は、撮像地点を中心とする全ての方向を写し出す画像である。例えば、全天球画像フレームは、正距円筒図法により球面が円筒に投影され且つ当該円筒を展開して形成される平面画像を示してもよい。そして、連続する全天球画像フレームにより、全天球動画が構成される。
ここで、結像光学系11aa及び結像光学系11baの光軸中心LAの方向を、X軸方向と定義する。細長い直方体状の筐体11Bの長手方向であり且つX軸に垂直である方向を、Z軸方向と定義する。X軸及びZ軸に垂直である方向を、Y軸方向と定義する。XYZ軸からなる3次元座標系は、撮像装置10のカメラ座標系を構成する。カメラ座標系は、撮像装置10に固定され、撮像装置10の姿勢変化に従って座標軸の向きを変える。
<撮像装置10のハードウェア構成>
撮像装置10のハードウェア構成を説明する。図3は、実施の形態1に係る撮像装置10のハードウェア構成の一例を示す図である。図3に示すように、撮像装置10は、CPU(Central Processing Unit)101と、ROM(Read Only Memory)102と、RAM(Random Access Memory)103と、動画圧縮ブロック104と、第一撮像素子11abと、第二撮像素子11bbと、画像処理ブロック106と、メモリ107と、外部ストレージインタフェース(I/F:Interface)108と、モーションセンサ109と、通信I/F110と、無線NIC(Network Interface Card)111とを構成要素として含む。なお、これら構成要素の全てが必須ではない。また、上記構成要素はそれぞれ、例えばバスを介して互いに接続されている。なお、上記構成要素は、有線通信及び無線通信のいずれを介して接続されてもよい。
CPU101はプロセッサ等で構成され、撮像装置10の各部の動作及び全体動作を制御する。例えば、CPU101は、図2のコントローラ11cを構成する。ROM102は不揮発性半導体記憶装置等で構成され、撮像装置10で動作する各種プログラム及び各種パラメータを記憶する。RAM(Random Access Memory)103は揮発性半導体記憶装置等で構成され、CPU101のワークエリアとして使用される。RAM103は、各種信号処理及び画像処理を施す際にデータを一時的に保存する記憶領域を提供する。メモリ107は、各種プログラムで利用されるデータ並びに第一撮像素子11ab及び第二撮像素子11bbによって撮像された画像等の種々の情報を記憶する。メモリ107は、揮発性又は不揮発性の半導体メモリ、HDD(Hard Disk Drive)又はSSD(Solid State Drive)等の記憶装置で構成される。なお、メモリ107が、ROM102及び/又はRAM103を含んでもよい。
プログラムは、ROM102又はメモリ107等に予め保持されている。プログラムは、CPU101によって、ROM102又はメモリ107等からRAM103に読み出されて展開される。CPU101は、RAM103に展開されたプログラム中のコード化された各命令を実行する。なお、プログラムは、ROM102及びメモリ107に限らず、例えば記録ディスク等の記録媒体に格納されていてもよい。また、プログラムは、有線ネットワーク、無線ネットワーク又は放送等を介して伝送され、RAM103に取り込まれてもよい。
なお、上述したCPU101によって実現される機能は、CPU101等のプログラム実行部によって実現されてもよく、回路によって実現されてもよく、プログラム実行部及び回路の組み合わせによって実現されてもよい。例えば、このような機能は、集積回路であるLSI(大規模集積回路:Large Scale Integration)によって実現されてもよい。このような機能は個別に1チップ化されてもよく、一部又は全てを含むように1チップ化されてもよい。LSIとして、LSI製造後にプログラムすることが可能なFPGA(Field Programmable Gate Array)、LSI内部の回路セルの接続及び/又は設定を再構成可能なリコンフィギュラブル・プロセッサ、又は、特定用途向けに複数の機能の回路が1つにまとめられたASIC(Application Specific Integrated Circuit)等が利用されてもよい。
画像処理ブロック106は、2つの第一撮像素子11ab及び第二撮像素子11bbと接続され、第一撮像素子11ab及び第二撮像素子11bbそれぞれによって撮像された画像の画像信号が入力される。画像処理ブロック106は、ISP(Image Signal Processor)等を含んで構成され、第一撮像素子11ab及び第二撮像素子11bbから入力された画像信号に対し、シェーディング補正、ベイヤー補間、ホワイト・バランス補正及びガンマ補正等の処理を行う。また、画像処理ブロック106は、第一撮像素子11ab及び第二撮像素子11bbそれぞれから取得される2つの画像フレームを合成し、全天球画像フレームを生成する。つまり、画像処理ブロック106は、同時刻又は近似する時刻に2つの撮像素子で撮像された2つの画像フレームを1つの全天球画像フレームに合成する。より具体的には、画像処理ブロック106では、平面画像として構成される各撮像画像から、まず、相補的な各半球部分を含む各全天球画像が生成される。 そして、各半球部分を含む2つの全天球画像が、重複領域のマッチングに基づいて位置合わせされ、画像合成され、全天球全体を含む全天球画像フレームが生成される。
動画圧縮ブロック104は、MPEG-4 AVC/H.H.265等の動画圧縮及び伸張を行うコーデック・ブロックである。動画圧縮ブロック104は、画像処理ブロック106によって生成された全天球画像フレームのデータを、動画形式のデータに圧縮する。
モーションセンサ109は、加速度センサと角速度センサ(「ジャイロセンサ」とも呼ばれる)と地磁気センサとを含む。加速度センサは、XYZ軸の3軸方向の加速度を検出する。角速度センサは、上記3軸周りの角速度を検出する。地磁気センサは、上記3軸方向の磁場を検出する。このようなモーションセンサ109は、9軸の姿勢センサを構成する。モーションセンサ109は、各センサの検出値を用いて、撮像装置10におけるX軸周りのロール角、Y軸周りのピッチ角、及びZ軸周りのヨー角を算出する。ロール角は、ローリング方向の撮像装置10の姿勢を示し、ピッチ角は、ピッチング方向の撮像装置10の姿勢を示し、ヨー角は、ヨーイング方向の撮像装置10の姿勢を示す。
モーションセンサ109は、画像フレームが撮像される度に、ロール角、ピッチ角及びヨー角を算出する。なお、モーションセンサ109は、画像フレーム間におけるロール角、ピッチ角及びヨー角を算出してもよく、撮像装置10の基準姿勢に対するロール角、ピッチ角及びヨー角を算出してもよい。モーションセンサ109は、各センサの検出値をCPU101に出力し、CPU101が、ロール角、ピッチ角及びヨー角を算出してもよい。モーションセンサ109は、少なくとも加速度センサ及び角速度センサを含むものであってもよい。
外部ストレージI/F108には、記憶媒体等の外部ストレージが接続される。例えば、外部ストレージI/F108は、メモリカードスロットに挿入された記憶媒体の一例であるメモリカード等の外部ストレージに対する読み書きを制御する。
通信I/F110は、他の装置又はデバイスと接続され、情報を送受信するためのインタフェースである。例えば、通信I/F110は、有線通信又は無線通信を介して他の装置と接続されてもよい。通信I/F110は、USB(Universal Serial Bus)コネクタ等を含んでもよい。
無線NIC111は、通信網30を介して端末20等の他の装置と通信するためのデバイスである。無線NIC111は、接続端子及び通信回路等を含んでもよい。
<端末20のハードウェア構成>
端末20のハードウェア構成を説明する。図4は、実施の形態1に係る端末20のハードウェア構成の一例を示す図である。図4に示すように、端末20は、CPU201と、ROM202と、RAM203と、入力装置204と、ディスプレイ205と、無線NIC206と、通信I/F207と、メモリ208と、外部ストレージI/F209とを構成要素として含む。なお、これら構成要素の全てが必須ではない。また、上記構成要素はそれぞれ、例えばバスを介して互いに接続されているが、有線通信及び無線通信のいずれを介して接続されてもよい。
CPU201、ROM202及びRAM203それぞれの構成は、CPU101、ROM102及びRAM103と同様である。CPU201は、端末20の各部の動作及び全体動作を制御する。ROM202は、端末20上で動作する各種プログラム等を記憶する。RAM203は、CPU201のワークエリアとして使用される。
メモリ208は、各種プログラムで利用されるデータ及び撮像装置10から取得された画像等の種々の情報を記憶する。メモリ208の構成は、メモリ107と同様である。
CPU201によって実現される機能は、CPU201等のプログラム実行部によって実現されてもよく、回路によって実現されてもよく、プログラム実行部及び回路の組み合わせによって実現されてもよい。
無線NIC206は、通信網30を介して、撮像装置10等の他の装置と通信するためのデバイスである。無線NIC206は、接続端子及び通信回路等を含んでもよい。
通信I/F207は、他の装置又はデバイスと接続され、情報を送受信するためのインタフェースである。例えば、通信I/F207は、有線通信又は無線通信を介して他の装置と接続されてもよい。通信I/F207は、USBコネクタ等を含んでもよい。
外部ストレージI/F209には、記憶媒体等の外部ストレージが接続される。外部ストレージI/F209は、接続された記憶媒体に対する読み書きを制御する。
入力装置204は、ユーザによる操作入力を受け付ける装置である。入力装置204は、ボタン、ダイヤル、キー、マウス、タッチパネル及び音声入力のためのマイク等の入力装置を含んでもよい。
ディスプレイ205は、CPU201の制御に従って種々の画面を表示する。ディスプレイ205は、液晶パネル、有機EL(Electroluminescence)及び無機EL等のディスプレイであってもよい。ディスプレイ205は、音声出力のためのスピーカを含んでもよい。ディスプレイ205は、入力装置204を兼ねたタッチパネルであってもよい。
<撮像装置10の機能的構成>
撮像装置10の機能的構成を説明する。図5は、実施の形態1に係る撮像装置10の機能的構成の一例を示すブロック図である。図5に示すように、撮像装置10は、撮像制御部11と、動画圧縮部12と、姿勢検出部13と、姿勢データ生成部14と、通信部15とを機能的構成要素として含む。
撮像制御部11の機能は、CPU101及び画像処理ブロック106等によって実現される。撮像制御部11は、第一撮像素子11ab及び第二撮像素子11bbを制御して撮像させ、第一撮像素子11ab及び第二撮像素子11bbによって撮像された画像フレームのデータを取得する。さらに、撮像制御部11は、第一撮像素子11ab及び第二撮像素子11bbによって同時刻又は近似する時刻に撮像された2つの画像フレームを合成し、全天球画像フレームを生成する。撮像制御部11は、生成された全天球画像フレームを動画圧縮部12に順次出力する。
動画圧縮部12の機能は、CPU101及び動画圧縮ブロック104等によって実現される。動画圧縮部12は、撮像制御部11から取得された全天球画像フレームを動画形式のデータに圧縮し、通信部15に出力する。ここで、動画圧縮部12は生成部の一例である。
姿勢検出部13の機能は、CPU101等によって実現される。姿勢検出部13は、モーションセンサ109を制御し、モーションセンサ109から撮像装置10の姿勢情報を取得する。つまり、姿勢検出部13は、撮像装置10の姿勢を検出する。姿勢情報は、モーションセンサ109の各検出値の時系列データであってもよい。時系列データは、検出値とその検出時刻とを対応付けて含むデータである。例えば、姿勢検出部13は、時系列データから、第一撮像素子11ab及び第二撮像素子11bbによって全天球画像フレームが撮像されたタイミングでモーションセンサ109によって検出された検出値を取得してもよい。上記タイミングは、全天球画像フレームの撮像時刻又はその近傍の時刻であってもよい。
姿勢データ生成部14の機能は、CPU101等によって実現される。姿勢データ生成部14は、姿勢検出部13から取得された姿勢情報を用いて、撮像装置10の姿勢を示す姿勢データとして、姿勢を示すパラメータを生成する。姿勢を示すパラメータの例は、ヨー角、ピッチ角及びロール角である。姿勢データ生成部14は、姿勢データを通信部15に出力する。
通信部15の機能は、CPU101及び無線NIC111等によって実現される。通信部15は、動画形式のデータと撮像装置10の姿勢データとを対応付け、通信網30を介して端末20に送信する。このとき、通信部15は、動画形式のデータに含まれる各時間のフレームと、姿勢データに含まれる各時間のパラメータとを、時間に基づき対応付けてもよい。ここで、通信部15は送信部の一例である。
<端末20の機能的構成>
端末20の機能的構成を説明する。図6は、実施の形態1に係る端末20の機能的構成の一例を示すブロック図である。図6に示すように、端末20は、通信部21と、動画展開部22と、表示用画像生成部23と、姿勢データ取得部24と、表示視点補正部25と、表示制御部26とを機能的構成要素として含む。
通信部21の機能は、CPU201及び無線NIC206等によって実現される。通信部21は、撮像装置10の通信部15によって送信される動画形式のデータと撮像装置10の姿勢データとを受信する、つまり取得する。通信部21は、動画形式のデータを動画展開部22に出力し、姿勢データを姿勢データ取得部24に出力する。ここで、通信部21は取得部の一例である。
動画展開部22の機能は、CPU201等によって実現される。動画展開部22は、圧縮されている動画形式のデータを、表示可能な画像フレームのデータに展開し、表示用画像生成部23に出力する。つまり、動画展開部22は、動画形式のデータを個別の画像フレームのデータに展開する。ここで、動画展開部22は展開部の一例である。
姿勢データ取得部24の機能は、CPU201等によって実現される。姿勢データ取得部24は、通信部21を介して、撮像装置10の姿勢データを取得し、表示視点補正部25に出力する。
表示用画像生成部23の機能は、CPU201等によって実現される。表示用画像生成部23は、動画形式のデータから展開された画像フレームのデータを、当該画像フレームを仮想的な球体表面に貼り付けた形のデータに変換する。つまり、表示用画像生成部23は、正距円筒図法で表現されている全天球画像フレームを、球面に貼り付けて三次元モデルに変換する。表示用画像生成部23は、球面に貼り付けた全天球画像フレームのデータを表示視点補正部25に出力する。
図7Aは、実施の形態1に係る表示用画像生成部23によって、全天球画像フレームから三次元モデルの球面に貼り付けた画像フレームに変換される一例を示す図である。図7Bは、図7Aの球面の全天球画像フレームにおける光軸中心LA上の画像の一例を示す図である。この画像の一例は、球面に貼り付けられた三次元モデルを、透視投影処理をすることにより得られる。
図7Aに示すように、動画形式のデータから展開された平面的な全天球画像フレームは、撮像装置10を中心とする仮想的な立体球CSの球面に貼り付けられた、つまり投影された球面の画像フレームに変換される。このとき、例えば、表示用画像生成部23は、撮像装置10に設定されたXYZ軸からなる3次元座標系(カメラ座標系)と、立体球CSに設定されたXsYsZs軸からなる3次元座標系とが対応する、つまり、各軸が一致するように、変換してもよい。XsYsZs軸からなる3次元座標系は、世界座標系である。世界座標系は、撮像装置10の姿勢に関係なく固定された座標系である。Zs軸方向は、重力方向つまり鉛直方向であり、Xs軸方向及びYs軸方向は、水平方向である。
このような球面の画像フレームにおいて、撮像装置10の光軸中心LAと球面との交点を中心とする領域T0の画像は、図7Bに示すような画像として表される。立体球CSの中心を通る全ての軸について、当該軸と球面との交点を中心とする領域の画像は、同様に表される。
表示視点補正部25の機能は、CPU201等によって実現される。表示視点補正部25は、姿勢データに基づき、球面の画像フレームにおける光軸中心の方向を補正する。さらに、表示視点補正部25は、補正後の光軸中心を中心として、球面の画像フレームを正距円筒図法等で展開した平面的な画像フレームである全天球画像フレームを形成し、表示制御部26に出力する。ここで、表示視点補正部25は補正部の一例である。
表示制御部26の機能は、CPU201等によって実現される。表示制御部26は、表示視点補正部25から取得された画像フレームをディスプレイ205に表示させる。例えば、表示制御部26は、動画を構成する複数の画像フレームを順に表示し、動画を表示する。ここで、表示制御部26は表示部の一例である。
表示視点補正部25の詳細を説明する。例えば、端末20のディスプレイ205に表示される撮像装置10が撮影した全天球画像の画面上において、ユーザによって、入力装置204を用いて点又は領域等の表示部分が指定される。このとき、表示視点補正部25は、画面上における表示部分の位置を維持する全天球画像を表示するように、球面の画像フレームを補正する。撮像装置10が回転されて光軸中心LAの方向が変化した場合でも、表示視点補正部25は、画面に表示される全天球画像に対する表示部分の位置を維持する。よって、表示視点補正部25は、表示部分への視点位置を維持する。なお、表示部分の指定方法は、点及び領域に限定されず、いかなる方法でもよい。
ディスプレイ205の画面上において表示部分として矩形状の指定領域Tが指定された場合を説明する。この場合、表示視点補正部25は、指定領域Tを図7Aに示すような立体球CSの球面に投影する。さらに、表示視点補正部25は、立体球CSの球面上において、投影された指定領域Tの中心点CPの位置を算出する。
図8は、実施の形態1に係る指定領域の一例を示す図である。図9は、実施の形態1に係る指定領域の中心点の一例を示す図である。図9は、立体球CS上の球面の画像フレームの一部を示す。
図8に示すように、指定領域Tを視野とし且つ立体球CSの中心に位置する仮想カメラICが、想定される。仮想カメラICの光軸IAと立体球CSの球面との交点が、指定領域Tの中心点CPとされる。具体的には、図9に示すように、指定領域Tの対角線画角2Lに対する仮想カメラICの視野角はαである。そして、中心点CPは、視野角αの二等分線である光軸IAと対角線画角2Lに対応する指定領域Tの対角線との交点である。
例えば、撮像装置10が移動することにより、撮像装置10の姿勢が、ロール角θr、ピッチ角θp及びヨー角θy変化した場合、撮像装置10の光軸中心LAの方向は、同様に変化する。変化後の光軸中心LAを光軸中心LA1とする。光軸IAの方向及び中心点CPの位置も、光軸中心LAと同様に変化する。変化後の光軸IAを光軸IA1とする。中心点CPは、光軸IA1と立体球CSとの交点CP1に移動する。
表示視点補正部25は、姿勢変化の前後で立体球CS上における中心点CPの位置が変化しないように、球面の画像フレームを立体球CS上で回転させる。具体的には、表示視点補正部25は、中心点CP1を中心点CPに移動させるように、姿勢変化後の球面の画像フレームを立体球CSの中心を中心として回転させる。このとき、表示視点補正部25は、光軸IA1を光軸IAと一致させてもよく、光軸中心LA1を光軸中心LAと一致させてもよい。
例えば、表示視点補正部25は、光軸IA1を光軸IAに移動させる座標変換を行うことによって、姿勢変化後の球面の画像フレームの各パラメータを補正する。座標変換後の球面の画像フレームにおいて、立体球CS上における中心点CP1の位置は、姿勢変化前の中心点CPと同じである。
このように、表示視点補正部25は、撮像装置10の姿勢変化を示すロール角θr、ピッチ角θp及びヨー角θyに基づく座標変換を、姿勢変化後の球面の画像フレームに行うことによって、立体球CS上での指定領域Tの位置を維持し、指定領域Tへの視線を維持する。よって、表示視点補正部25は、撮像装置10の姿勢の情報、つまり姿勢データと、表示部分である指定領域Tの情報とに基づき、姿勢変化後の球面の画像フレームを、表示部分が写し出されるように補正する。そして、表示視点補正部25は、撮像装置10の姿勢変化に関係なく、表示部分の位置を維持する。
例えば、図10は、実施の形態1に係る撮像装置10の姿勢変化前後における端末20の表示画像の一例を示す図である。図10に示すように、端末20が表示する画像20aにおいて、ユーザによって領域Tが指定される。その後、例えば、撮像装置10がZ軸を中心に回転された場合、端末20は、回転中及び回転後において、領域Tの中心点CPの位置が同じ位置に維持された画像20aを表示する。つまり、端末20は同じ視点の画像20aを表示し続ける。なお、ユーザによって点CPが指定されてもよい。この場合も、端末20は、回転中及び回転後において、点CPの位置が同じ位置に維持された画像20aを表示する。なお、同じ視点の画像とは、姿勢変化前後で、ユーザによって指定された領域Tが、画面上で互いの重複が少なくとも75%以上含まれていれば良いことを意味する。
<撮像システム1000の画像配信動作>
撮像システム1000において、撮像装置10が端末20に画像データを配信する動作を説明する。図11は、実施の形態1に係る撮像システム1000における画像データの配信動作の一例を示すシーケンス図である。以下において、端末20が、ディスプレイ205に表示している画像において、ユーザから表示部分として領域Tの指定を受けている場合を説明する。
図11に示すように、撮像装置10は、動画を撮像することで、各フレームの画像を取得する(ステップS1)。このとき、撮像装置10は、第一撮像素子11ab及び第二撮像素子11bbから取得される画像フレームを合成し、全天球画像フレームを生成する。
また、撮像装置10は、モーションセンサ109を介して撮像装置10の姿勢データを取得する(ステップS2)。例えば、撮像装置10は、時系列データである姿勢データから、各全天球画像フレームの撮像のタイミング(より具体的には、2つの撮像素子で取得された画像フレームのタイミング)で検出された姿勢データを取得し、当該姿勢データと当該全天球画像フレームとを関連付ける。つまり、撮像装置10は、同じタイミングで取得された全天球画像フレームと姿勢データとを関連付ける。全天球画像フレームと姿勢データとを関連付ける情報は、全天球画像フレームに含められてもよく、姿勢データに含められてもよく、両方に含められてもよい。なお、タイミングは、ある時刻と同じ時刻、及び当該時刻に近似する時刻を含む。
次いで、撮像装置10は、全天球画像フレームを動画形式のデータに圧縮するエンコードを行う(ステップS3)。次いで、撮像装置10は、動画形式のデータと姿勢データとを関連付けて、端末20に送信する、つまり配信する(ステップS4)。
次いで、端末20は、動画形式のデータ及び姿勢データを受信し、動画形式のデータを表示可能な画像フレームのデータに展開するデコードを行う(ステップS5)。さらに、端末20は、動画形式のデータから展開された画像フレームのデータを、三次元モデルの球面に貼り付ける画像フレームに変換する。
そして、端末20は、ディスプレイ205の画面に表示される画像上においてユーザによって指定された表示部分である視点の情報(視点位置や指定領域ともいう)を取得する(ステップS6)。視点の情報は、当該表示画像上において、ユーザによって指定された点又は領域の位置及び大きさを含み、世界座標系の座標値を含むデータとして示される、その他、全天球画像上の座標値であってもよい。本例では、領域Tが指定されている。指定は、画面上において入力装置204の一例であるマウスによるポイント・アンド・クリック又はドラッグ等により行われてもよい。
また、端末20は、姿勢データと指定領域Tの情報とに基づき、球面の画像フレームの表示領域を順次補正する(ステップS7)。具体的には、端末20は、姿勢データが示す撮像装置10の姿勢変化にかかわらず、端末20の表示画面内で表示される指定領域Tの位置が変化しないように、球面の画像フレームの光軸中心の向きを補正する。
次いで、端末20は、補正後の球面に貼り付けた全天球画像フレームを、透視投影変換の処理などの射影変換を実施して、平面的な全天球画像フレームに順次変換し、ディスプレイ205に表示させる(ステップ8)。
<撮像装置10の動作>
撮像装置10の動作を説明する。図12は、実施の形態1に係る撮像装置10の動作の一例を示すフローチャートである。以下において、1フレームの画像データに対する撮像装置10の処理を説明する。
図12に示すように、撮像装置10の第一撮像素子11ab及び第二撮像素子11bbは撮像を開始し、撮像制御部11は、第一撮像素子11ab及び第二撮像素子11bbそれぞれによって撮像された1フレーム分の画像データである画像フレームを取得する、つまり取り込む(ステップS101)。
次いで、撮像制御部11は、取得された画像データに対して画像処理を行う(ステップS102)。具体的には、撮像制御部11は、第一撮像素子11ab及び第二撮像素子11bbによって撮像された2つの画像フレームを合成し、全天球画像フレームを生成する。
次いで、姿勢検出部13は、撮像装置10の姿勢を検出する(ステップS103)。具体的には、姿勢検出部13は、モーションセンサ109の検出値から、全天球画像フレームが撮像されたタイミングに検出された検出値を取得する。さらに、姿勢データ生成部14は、姿勢検出部13によって取得された検出値を用いて、撮像装置10の姿勢を示すパラメータを姿勢データとして生成する。
次いで、動画圧縮部12は、1フレーム分の画像データを動画形式の画像データに圧縮する(ステップS104)。具体的には、動画圧縮部12は、全天球画像フレームを動画形式のデータに圧縮する。ここで、1フレーム毎に動画形式に画像データを圧縮しているが、所定のフレーム数毎に動画形式に圧縮する、または、撮影終了後に全てのフレームを動画形式に圧縮するなど、圧縮の方式や形態はいずれであってもよい。
次いで、通信部15は、動画形式の画像データを端末20に送信する(ステップS105)。
同様に、通信部15は、撮像装置10の姿勢データを端末20に送信する(ステップS106)。このとき、通信部15は、動画形式の画像データと、当該動画形式の画像データの撮像のタイミングで検出された姿勢データとを、関連付ける。通信部15は、動画形式の画像データと姿勢データとを関連付ける情報を、動画形式の画像データに含めてもよく、姿勢データに含めてもよく、両方に含めてもよい。その他に、動画形式の画像データのメタデータとして姿勢データを付加して、関連付けてもよい。また、メタデータとして姿勢データを付加する場合は、ステップS106のように姿勢データを端末20に送信することに代えて、ステップS104で動画形式データに圧縮する際に、それぞれの画像フレームに対応する姿勢データをメタデータとして付加し、動画形式データに圧縮してもよい。
次いで、撮像制御部11は、第一撮像素子11ab及び第二撮像素子11bbによる撮像が終了し、全ての画像フレームに対する処理が終了している場合(ステップS107でYes)、一連の処理を終了し、未処理の画像フレームがある場合(ステップS107でNo)、ステップS101に戻る。
<端末20の動作>
端末20の動作を説明する。図13は、実施の形態1に係る端末20の動作の一例を示すフローチャートである。以下において、撮像装置10から配信される画像を端末20がディスプレイ205に表示しているときに、ユーザによって入力装置204を介して視点位置(指定領域)が指定された後の端末20の動作を説明する。
図13に示すように、端末20は、表示している画像上において、ユーザから視点位置の指定を受け付ける(ステップS201)。例えば、視点位置は、入力装置204への入力を介して画像上で指定される点又は領域を世界座標系の座標値を含んで示される情報である。
次いで、通信部21は、撮像装置10から、動画形式のデータである1フレーム分の画像データを受信する(ステップS202)。
同様に、通信部21は、撮像装置10から撮像装置10の姿勢データを受信する(ステップS203)。なお、先に示したように、姿勢データを動画形式データのメタデータとして受信する場合は、当該ステップS203は省略される。そして、姿勢データ取得部24は、受信された姿勢データを取得する。
次いで、動画展開部22は、動画形式の1フレーム分の画像データをRAM103に展開する(ステップS204)。具体的には、動画展開部22は、動画形式の画像データを、表示可能な画像フレームのデータに展開する。
次いで、表示用画像生成部23は、表示可能な画像フレームのデータを、3次元モデルの球面に投影した画像フレームに変換する。つまり、表示用画像生成部23は、表示用の画像フレームを生成する(ステップS205)。ここで、例えば、全天球画像フレームを、平面画像に出力する際には、透視投影変換を実施する。
次いで、表示視点補正部25は、姿勢データに基づき、球面の画像フレームにおける表示視点を補正する(ステップS206)。このとき、表示視点補正部25は、姿勢データの検出タイミングと、球面の画像フレームを構成する画像の撮像タイミングとが同じである姿勢データ及び球面の画像フレームを関連付けて、補正を行う。そして、表示視点補正部25は、姿勢データが示す撮像装置10の姿勢の変化に起因して、ステップS201で指定された視点位置が端末20の画面上で変化しないように、球面の画像フレームの向き、つまり、光軸中心LAの向きを補正する。よって、表示視点補正部25は、撮像装置10の姿勢変化により変化し得る視点位置を、姿勢変化前の位置にするように補正する。さらに、表示視点補正部25は、補正後の光軸中心を中心として、3次元モデルの球面に全天球画像フレームを形成する。
次いで、表示制御部26は、表示視点補正部25から取得された補正後の画像フレームをディスプレイ205に表示させる。つまり、表示制御部26は、補正後の視点での領域Tを表示する(ステップS207)。よって、ディスプレイ205には、撮像装置10の姿勢が変化しても、同じ視点位置の画像が表示される。
次いで、表示制御部26は、撮像装置10から送信される全ての画像フレームのディスプレイ205への表示が終了すると(ステップS208でYes)、一連の処理を終了し、終了していない場合(ステップS208でNo)、ステップS201に戻る。
ステップS201では、端末20は、ユーザから視点位置の変更を受け付けると、変更後の視点位置を用いて、ステップS202以降の処理に進む。端末20は、ユーザから視点位置の変更を受け付けていない場合、現在設定されている視点位置を用いて、ステップS202以降の処理に進む。端末20は、ユーザから視点位置の取り消しを受け付けると、ステップS208に進む。
<効果等>
上述のような実施の形態1に係る撮像システム1000は、画像を撮像する撮像部11Aと、撮像部11Aの姿勢を検出する姿勢検出部13と、撮像部11Aの姿勢と、画像に指定される表示部分とに基づき、撮像部11Aによって撮像された画像を、当該表示部分を写し出すように補正する補正部としての表示視点補正部25と、補正後の画像を表示する表示部としての表示制御部26とを備える。
上記構成によると、撮像システム1000は、撮像部11Aの姿勢が変化しても、表示部分を写し出す画像を表示する。例えば、撮像部11Aの姿勢が変化し撮像方向が変化した場合であっても、撮像システム1000は、表示される画像に表示部分を写し出す。よって、撮像システム1000は、撮像部11Aの姿勢に依らず所望の表示対象を写し出すことができる。
また、実施の形態1に係る撮像システム1000において、表示視点補正部25は、撮像部11Aの姿勢の変化に関係なく、画像に対する表示部分の位置を維持するように、撮像部11Aによって撮像された画像を補正してもよい。上記構成によると、撮像システム1000は、表示される画像において、表示部分を同じ位置で写し出すことができる。これにより、ユーザは、画像において表示部分を探す必要がなく、視点を変えずに表示部分を視認することができる。よって、表示部分の視認が容易になる。
また、実施の形態1に係る撮像システム1000において、撮像部11Aの姿勢は、撮像部11Aのヨーイング、ピッチング及びローリングの方向の姿勢を含んでもよい。上記構成により、撮像部11Aの姿勢の検出精度が向上する。よって、撮像システム1000は、表示部分を写し出すための画像の補正を高精度で行うことができる。
また、実施の形態1に係る撮像システム1000は、撮像装置10と端末20とを備えてもよい。そして、撮像装置10は、撮像部11Aと、撮像部11Aによって撮像された複数の画像から動画データを生成する生成部としての動画圧縮部12と、姿勢検出部13と、動画データ及び撮像部11Aの姿勢を端末20に送る送信部としての通信部15とを有してもよい。また、端末20は、動画データを個別の画像に展開する展開部としての動画展開部22と、表示視点補正部25と、表示制御部26とを有してもよい。上記構成によると、撮像システム1000は、撮像装置10から端末20に動画を配信し、配信された動画において表示部分を写し出すことができる。
また、実施の形態1に係る端末20は、撮像部11Aによって撮像された画像及び撮像部11Aの姿勢の情報を取得する取得部としての通信部21と、撮像部11Aの姿勢と、画像に指定される表示部分とに基づき、通信部21によって取得された画像を、表示部分を写し出すように補正する表示視点補正部25と、補正後の画像を表示する表示制御部26とを備える。上記構成によると、端末20は、上記撮像システム1000と同様の効果を奏することができる。
(実施の形態2)
実施の形態2に係る撮像システムでは、ディスプレイ205に表示される画像に対する視点位置を保持するための処理が、実施の形態1と異なる。以下、実施の形態2について、実施の形態1と異なる点を中心に説明し、実施の形態1と同様の点の説明を適宜省略する。
実施の形態2に係る撮像装置及び端末のハードウェア構成及び機能的構成は、実施の形態1と同様であるため、その説明を省略する。さらに、実施の形態2において、各構成要素の符号は、実施の形態1と同じとする。
本実施の形態では、端末20のディスプレイ205に表示される画像上において、表示部分である視点の位置と画像の向きとが、ユーザによって入力装置204を介して指定される。指定方法は、視点の位置と画像の向きとを指定することができれば、いかなる指定方法であってもよい。例えば、視点の位置を示す点と画像の向きを示すラインとが、指定されてもよい。又は、多角形の枠を用いて領域が指定されてもよい。多角形の中心と1つの辺とから、視点の位置と画像の向きとの特定が可能である。
視点の位置を示す点と画像の向きを示すラインとが、指定されるケースを説明する。図14は、実施の形態2に係る指定点及び指定方向の一例を示す図である。図14は、図9と同様に、立体球CS上の球面の画像フレームの一部を示す。図14に示すように、点CPaが指定点として指定され、点CPaから延びるラインDaが指定方向を示すラインとして指定される。ラインDaにおける点CPaと反対側の点は、点CPbである。この指定された内容も世界座標系の座標値を含む形で指定されるが、その他、全天球画像上の座標値であってもよい。
そして、撮像装置10の姿勢が変化すると、点CPaとラインDaとが一緒に移動する。端末20の表示視点補正部25は、姿勢変化の前後で立体球CS上における点CPaの位置とラインDaの方向とが変化しないように、球面の画像フレームを立体球CS上で回転させることで、球面の画像フレームの各パラメータを補正する。
例えば、撮像装置10の姿勢が、ロール角θr、ピッチ角θp及びヨー角θy変化した場合、点CPaを通る仮想カメラICの光軸IAaは、光軸IAa1に変化し、点CPaは、光軸IAa1上の点CPa1に移動する。さらに、ラインDaの方向を示す方向ベクトルVaは、方向ベクトルVa1に変化する。方向ベクトルVaは、点CPaと点CPbとにより形成されるベクトルであってもよい。
よって、表示視点補正部25は、点CPa1を点CPaに移動させ且つ方向ベクトルVa1の方向を方向ベクトルVaの方向と一致させるように、姿勢変化後の球面の画像フレームを、立体球CSの中心を中心として回転させる。つまり、表示視点補正部25は、姿勢変化後の球面の画像フレームに対して、点CPa1を点CPaに移動させ且つ方向ベクトルVa1の方向を方向ベクトルVaの方向と一致させる座標変換を行う。座標変換後の球面の画像フレームにおいて、立体球CS上における点CPa1の位置は、点CPaと同じであり、方向ベクトルVa1は、方向ベクトルVaと平行である。
例えば、図15は、実施の形態2に係る撮像装置10の姿勢変化前後における端末20の表示画像の一例を示す図である。図15に示すように、端末20が表示する画像20aにおいて、ユーザによって点CPa及びラインDaが指定される。その後、例えば、撮像装置10がY軸を中心に回転された場合、端末20は、回転中及び回転後において、点CPaの位置が同じ位置に維持され且つラインDaの方向が同じ方向に維持された画像20aを表示する。つまり、端末20は同じ視点及び傾斜の画像20aを表示し続ける。
また、実施の形態2に係る撮像システムのその他の構成及び動作は、実施の形態1と同様であるため、その説明を省略する。そして、上述のような実施の形態2に係る撮像システムによると、実施の形態1と同様の効果が得られる。
さらに、実施の形態2に係る撮像システムにおいて、端末20の表示視点補正部25は、撮像部11Aの姿勢と、画像に指定される表示部分及び表示方向とに基づき、撮像部11Aによって撮像された画像を、当該表示方向で当該表示部分を写し出すように補正してもよい。上記構成によると、端末20は、撮像部11Aの姿勢が変化しても、指定された表示方向で表示部分を写し出す画像を表示することができる。よって、端末20は、撮像部11Aの姿勢に依らず所望の表示対象を所望の向きで写し出すことができる。
また、実施の形態2に係る撮像システムにおいて、端末20の表示視点補正部25は、撮像部11Aによって撮像された画像の鉛直方向軸が天頂方向となるように、撮像部11Aによって撮像された画像を補正してもよい。なお、撮像部11Aによって撮像された画像の鉛直方向軸は、撮像部11Aに設定される鉛直方向軸に対応してもよい。
例えば、撮像部11Aに設定される鉛直方向軸を、Z軸としてもよい。このとき、表示視点補正部25は、ユーザによって指定されるラインDaの代わりに、Z軸に対応する画像の鉛直方向軸を用いてもよい。そして、表示視点補正部25は、ユーザによって指定される点CPaと画像の鉛直方向軸とを用いて、点CPaの位置が同じ位置に維持され且つ画像の鉛直方向軸の方向が天頂方向に維持されるように、撮像部11Aによって撮像される画像を補正してもよい。天頂方向は、世界座標のZs軸方向である。撮像部11Aの姿勢から、Zs軸に対する撮像部11AのZ軸の傾斜方向及び傾斜角の検出が可能である。よって、表示視点補正部25は、実施の形態2において上述した処理と同様に、補正を行うことができる。
上記構成により、端末20は、実際の上下方向である天頂方向で、指定された表示部分を写し出す画像を表示することができる。
また、表示視点補正部25が、画像の鉛直方向軸が天頂方向となるように、画像を補正する天頂補正機能は、選択可能であってもよい。例えば、端末20の入力装置204を介して、ユーザによって、天頂補正機能の実行、つまり、ONの指令が入力されると、表示視点補正部25は、天頂補正を行ってもよい。さらに、入力装置204を介して、ユーザによって、天頂補正機能の停止、つまり、OFFの指令が入力されると、表示視点補正部25は、天頂補正を行わなくてもよい。
また、実施の形態2に係る撮像システムにおいて、端末20の表示視点補正部25は、撮像部11Aの姿勢と、画像で指定される表示方向(ユーザによって指定されるラインDa)とに基づき、撮像部11Aによって撮像された画像を、当該表示方向で写し出すように補正してもよい。これにより、端末20は、撮像部11Aの姿勢が変化しても、指定された表示方向で写し出す画像を表示することができ、撮像部11Aの姿勢に依らず所望の向きで写し出すことができる。
(その他の実施の形態)
以上、本発明の実施の形態の例について説明したが、本発明は、上記実施の形態に限定されない。すなわち、本発明の範囲内で種々の変形及び改良が可能である。例えば、各種変形を実施の形態に施したもの、及び、異なる実施の形態における構成要素を組み合わせて構築される形態も、本発明の範囲内に含まれる。
例えば、実施の形態に係る撮像システムにおいて、端末20の表示視点補正部25は、画像において指定される表示部分の一例である指定領域T又は点CPaの位置が、撮像装置10の姿勢の変化に依らず、画像上で同じ位置に維持されるように、全天球画像フレームを補正したが、これに限定されない。
例えば、表示視点補正部25は、撮像装置10の姿勢が変化しても、指定領域T又は点CPaが、画像上における所定の表示領域内に収まる場合、全天球画像フレームを補正せず、収まらない場合、全天球画像フレームを補正してもよい。例えば、所定の領域は、ユーザによって指定されたときの指定領域T又は点CPaの位置を中心とする領域であってもよい。これにより、ユーザは、視点を大きく変えずに、指定領域T又は点CPaを視認することができる。
又は、表示視点補正部25は、撮像装置10の姿勢が変化しても、指定領域T又は点CPaの位置を、画像の中心等の所定の位置に維持するように、全天球画像フレームを補正してもよい。画像の中心は、光軸中心の位置であってもよい。
また、実施の形態に係る撮像システムにおいて、端末20の表示視点補正部25は、指定領域T又は点CPa等の指定された表示部分について、撮像部11Aの姿勢の変化による画像上での表示部分の揺動を抑えるように、撮像部11Aによって撮像された画像を補正してもよい。
例えば、端末20の姿勢データ取得部24は、撮像装置10の姿勢データから、撮像装置10の姿勢が変化する方向が変わる周期(以下、「姿勢変化周期」とも呼ぶ)と、姿勢の変化方向それぞれでの撮像装置10の姿勢の変化量を検出してもよい。そして、表示視点補正部25は、姿勢変化周期が第一閾値以下であり且つ当該周期における姿勢の変化量が第二閾値以下である場合、画像における表示部分の位置を維持するように、画像を補正してもよい。この場合、撮像装置10が、撮像装置10を把持するユーザの手振れにより振動していると見なすことができる。また、表示視点補正部25は、姿勢変化周期が第一閾値超であり且つ当該周期における姿勢の変化量が第二閾値以下である場合、画像を補正しなくてもよい。また、表示視点補正部25は、姿勢変化周期における姿勢の変化量が第二閾値超である場合、画像における表示部分の位置を維持するように、画像を補正してもよい。
上記構成によると、端末20は、撮像装置10を把持するユーザの手振れ等に起因する画面の揺れを抑制しつつ、撮像装置10の姿勢に依らず所望の表示対象を写し出すことができる。
また、表示視点補正部25が、撮像部11Aの姿勢の変化による画像上での表示部分の揺動を抑えるように、画像を補正する揺動抑止機能は、選択可能であってもよい。例えば、端末20の入力装置204を介して、ユーザによって、揺動抑止機能の実行、つまり、ONの指令が入力されると、表示視点補正部25は、揺動を抑止する上記補正を行ってもよい。さらに、入力装置204を介して、ユーザによって、揺動抑止機能の停止、つまり、OFFの指令が入力されると、表示視点補正部25は、揺動を抑止する上記補正を行わなくてもよい。
また、実施の形態に係る撮像システムにおいて、撮像装置10の撮像制御部11は、第一撮像素子11ab及び第二撮像素子11bbによって撮像された2つの画像フレームを合成して全天球画像フレームを生成したが、これに限定されず、全天球画像フレームに合成しなくてもよい。例えば、撮像制御部11は、当該2つの画像フレームを合成せずに動画圧縮部12に出力し、動画圧縮部12は、当該2つの画像フレームそれぞれから2つの動画形式のデータを生成し、通信部15を介して端末20に送信してもよい。この場合、撮像装置10は、カメラ11a及び11bそれぞれに設定されている光軸中心の向き及び撮像方向等を含むカメラ情報を端末20に送信してもよい。そして、端末20は、2つの動画形式のデータそれぞれを展開して得られ且つ同時刻又は近似する時刻に撮像された画像フレームを、カメラ情報等に基づき合成し、全天球画像フレームを生成してもよい。又は、端末20は、2つの動画形式のデータそれぞれから得られる画像フレームを合成せず、2つの画像をディスプレイ205に表示してもよい。
さらにまた、実施の形態に係る撮像システムにおいて、撮像装置10の撮像制御部11は、第一撮像素子11ab及び第二撮像素子11bbによって撮像された2つの画像フレームを合成して全天球画像フレームを生成したが、これに限定されず、全天球画像フレームに合成しなくてもよい。例えば、撮像制御部11は、当該2つの画像フレームを、いわゆるデュアルフィッシュアイ画像として動画圧縮部12に出力し、動画圧縮部12は、当該デュアルフィッシュアイ画像を動画形式のデータを生成し、通信部15を介して端末20に送信してもよい。この場合、撮像装置10は、カメラ11a及び11bそれぞれに設定されている光軸中心の向き及び撮像方向等を含むカメラ情報を端末20に送信してもよい。そして、端末20は、デュアルフィッシュアイの動画形式のデータを展開して得られ且つ同時刻又は近似する時刻に撮像された画像フレームを、カメラ情報等に基づき合成し、全天球画像フレームを生成してもよい。又は、端末20は、2つの動画形式のデータそれぞれから得られる画像フレームを合成せず、2つの画像をディスプレイ205に表示してもよい。
また、実施の形態に係る撮像システムにおいて、撮像装置10によって撮像された画像は、通信網30を介して端末20に送信されていたが、これに限定されない。撮像装置10から端末20への画像の送信は、いかなる有線通信又は無線通信を介して行われてもよい。また、撮像装置10から記憶媒体に画像が記憶され、端末20が当該記憶媒体から画像を読み出すことで、端末20が画像を取得してもよい。記憶媒体は、メモリカード及びフラッシュメモリ等の不揮発性記憶媒体であってもよい。
また、実施の形態に係る撮像システムにおいて、端末20の表示用画像生成部23及び表示視点補正部25の機能は、撮像装置10に備えられてもよい。撮像装置10は、動画圧縮部12での処理の前に、表示用画像生成部23及び表示視点補正部25と同様の処理を行ってもよい。このとき、補正後の画像が、撮像装置10から端末20に送信される。
また、実施の形態に係る撮像システムは、通信網30に接続されたサーバ装置を備えてもよい。撮像装置10は、サーバ装置に画像を送信し、サーバ装置は、通信網30に接続された1つ以上の端末20に、画像を同時に配信する、つまりブロードキャストしてもよい。この場合、端末20の表示用画像生成部23及び表示視点補正部25の機能は、撮像装置10、サーバ装置、及び各端末20のいずれに備えられてもよい。
サーバ装置に備えられる場合、各端末20において指定される表示部分の指令は、当該端末20からサーバ装置に送信されてもよい。サーバ装置は、表示用画像生成部23及び表示視点補正部25と同様の処理を行うことで、各表示部分についての補正後の画像を生成し、各端末20に対して、指令された表示部分に対応する補正後の画像を配信してもよい。又は、サーバ装置は、各表示部分についての補正後の画像を集約した画像を生成し、集約後の画像を各端末20に配信してもよい。この場合、1つの画像に全ての表示部分の画像が含まれる。
また、撮像装置10に備えられる場合、各端末20の表示部分の指令は、当該端末20からサーバ装置に送信されてもよい。サーバ装置は、各端末20の表示部分の情報を集約して撮像装置10に送信してもよい。撮像装置10は、表示用画像生成部23及び表示視点補正部25と同様の処理を行うことで、各表示部分についての補正後の画像を生成し、サーバ装置に送信してもよい。そして、サーバ装置は、各端末20に対して、指令された表示部分に対応する補正後の画像を配信してもよい。又は、撮像装置10は、各表示部分についての補正後の画像を集約した画像を生成し、サーバ装置に送信してもよい。
また、各端末20に備えられる場合、撮像装置10によって撮像された画像は、サーバ装置を介して各端末20に送信されてもよい。各端末20は、当該端末20において指定される表示部分についての補正後の画像を生成してもよい。
また、実施の形態に係る撮像システムの端末20において、入力装置204を介して、ユーザによって1つの表示部分が指定され、表示視点補正部25は、当該1つの表示部分の位置が維持されるように、画像を補正したが、これに限定されない。例えば、入力装置204を介して、複数の表示部分が指定されてもよい。この場合、表示視点補正部25は、複数の表示部分それぞれについて、当該表示部分の位置が維持される複数の補正画像を生成してもよい。表示制御部26は、ディスプレイ205に、複数の補正画像を順番に表示させてもよく、複数の補正画像のうちの少なくとも2つを同時に表示させてもよい。
また、撮像装置10にGPS(Global Positioning System)が備えられていてもよい。GPSが備えられている場合は、端末20へ送信する画像データのメタデータ内にGPS情報が組み込まれ、端末20では、別途に設けられている地図情報と関連づけながら、画像データの表示と、地図上での位置を連動させて表示させてもよい。この構成によれば、視聴者は撮像装置10の位置も確認することができる。
また、本発明は、プログラムであってもよく、上記プログラムが記録された非一時的なコンピュータ読み取り可能な記録媒体であってもよい。また、上記プログラムは、インターネット等の伝送媒体を介して流通させることができるのは言うまでもない。
例えば、本発明の一実施形態に係るプログラムは、端末のコンピュータに実行させるプログラムであって、撮像部によって撮像された画像及び前記撮像部の姿勢の情報を取得する処理と、前記撮像部の姿勢と、画像に指定される表示部分とに基づき、取得された前記画像を、前記表示部分を写し出すように補正する処理と、補正後の前記画像を表示する処理とを含む。このプログラムによれば、上記端末20と同様の効果が得られる。
また、上記プログラムは、前記補正する処理では、前記撮像部の姿勢と、画像に指定される前記表示部分及び表示方向とに基づき、前記取得された画像を、前記表示方向で前記表示部分を写し出すように補正してもよい。
また、上記プログラムは、前記補正する処理では、前記取得された画像の鉛直方向軸が天頂方向となるように、前記取得された画像を補正し、前記鉛直方向軸は、前記撮像部に設定される鉛直方向軸に対応してもよい。
また、上記プログラムは、前記補正する処理では、前記撮像部の姿勢の変化による画像上での前記表示部分の揺動を抑えるように、前記取得された画像を補正してもよい。
また、上記プログラムは、前記補正する処理では、前記撮像部の姿勢の変化に関係なく、画像に対する前記表示部分の位置を維持するように、前記取得された画像を補正してもよい。
また、上記プログラムにおいて、前記撮像部の姿勢は、前記撮像部のヨーイング、ピッチング及びローリングの方向の姿勢を含んでもよい。
また、上記で用いた序数、数量等の数字は、全て本発明の技術を具体的に説明するために例示するものであり、本発明は例示された数字に制限されない。また、構成要素間の接続関係は、本発明の技術を具体的に説明するために例示するものであり、本発明の機能を実現する接続関係はこれに限定されない。
また、機能ブロック図におけるブロックの分割は一例であり、複数のブロックを一つのブロックとして実現する、一つのブロックを複数に分割する、及び/又は、一部の機能を他のブロックに移してもよい。また、類似する機能を有する複数のブロックの機能を単一のハードウェア又はソフトウェアが並列又は時分割に処理してもよい。