以下、本実施形態をもって説明するが、実施形態は、後述する実施形態に限定されるものではない。なお、以下に説明する実施形態では、撮像装置として全天球撮像装置110を一例に説明し、画像表示システムとして、全天球撮像装置110と無線通信装置150と表示装置180とを含む全天球画像表示システム100を一例として説明する。しかしながら、撮像装置および画像表示システムは、以下に説明する特定の実施形態に限定されるものではない。
図1は、本実施形態による全天球画像表示システム100の概略構成を示す。図1に示す全天球画像表示システム100は、全天球画像を撮像する全天球撮像装置110と、全天球撮像装置110と通信する無線通信装置150と、無線通信装置150に接続される表示装置180とを含み構成される。
説明する実施形態において、全天球撮像装置110は、それぞれ結像光学系および撮像素子から構成される2つの撮像光学系を備え、撮像光学系毎に各方向から撮影して撮像画像を生成する。上記撮像光学系は、180度(=360度/n;n=2)より大きい全画角を有し、好適には、185度以上の全画角を有し、より好適には、190度以上の全画角を有する。全天球撮像装置110は、複数の撮像光学系を通してそれぞれ撮像された撮像画像をつなぎ合わせて合成し、立体角4πステラジアンの画像(以下「全天球画像」と参照する。)を生成する。全天球画像は、撮影地点から見渡すことのできる全ての方向を撮影したものとなる。
全天球撮像装置110により撮像された画像は、一例として専用の画像ビューア・アプリケーションなどを備えた外部装置を用いて閲覧することができる。外部装置とは、例えばパーソナル・コンピュータ、スマートフォン、タブレット・コンピュータなどである。本実施形態による全天球撮像装置110は、さらに、撮像画像をディスプレイで表示するための画像ビューア機能を備えている。一方で、全天球撮像装置110は、画像を確認するのに充分な解像度を有するディスプレイを備えていない場合や、ディスプレイ自体を備えていない場合もある。
そこで、本実施形態による全天球撮像装置110は、無線映像通信機能を備えており、全天球撮像装置110が生成した画像ビューアの操作画面を、無線通信により外部装置へ送信するよう構成されている。なお、操作画面に含まれるデータの一部(例えば背景画面など)はあらかじめ全天球撮像装置110に保存しておいてもよい。そして、全天球撮像装置110と外部装置が通信を開始する際に、あらかじめ保存されているデータを読み出し、カーソル情報などを重畳させて操作画面を生成し、外部装置へ送信してもよい。さらにあらかじめ保存されているデータは、全天球撮像装置110の無線装置により接続される外部記憶装置に保存させておいて、そこから取得してもよいし、さらには無線装置からインターネット経由で配信しても良い。
無線通信装置150は、無線映像通信機能を備えており、全天球撮像装置110から画像ビューアの操作画面を受信する。そして、無線通信装置150は、無線通信装置150に接続された表示装置180へ操作画面を映像出力する。表示装置180は、無線通信装置150から入力された映像を、LCD(Liquid Crystal Display)やOLED(Organic Light Emitting Diode)などのディスプレイ・パネルで表示する。なお、無線通信装置150は、映像、静止画、動画、ならびに音等を全天球撮像装置110から受信し、表示装置180へ出力が可能である。
図1に示す実施形態において、全天球撮像装置110および無線通信装置150は、無線LAN(Local Area Network)などの無線接続により接続することができる。好ましくは、全天球撮像装置110および無線通信装置150の間の接続は、Miracast(商標または登録商標)やAirPlay(商標または登録商標)やChromecast(商標または登録商標)といった、無線通信により映像を伝送する無線映像伝送規格に準拠するものとすることができる。
また、無線通信装置150および表示装置180間の接続は、典型的には、HDMI(High-Definition Multimedia Interface,HDMIは商標または登録商標)、DisplayPort(商標または登録商標)、Thunderbolt(商標または登録商標)などの映像出力インタフェースを介して行うことができる。
全天球撮像装置110で生成された画像ビューアの操作画面Sは、無線通信により、映像として無線通信装置150へ伝送され、無線通信装置150から表示装置180へ映像として出力されて、表示装置180上で表示される。
このとき、表示装置180上に表示された画像ビューアの操作画面Sを、マウスやキーボードや他の情報端末などの追加のハードウェアなしで操作可能であることが望ましい。
図1には、本実施形態による全天球撮像装置110における操作の態様が併せて示されている。説明する実施形態において、全天球撮像装置110は、図1に図示されるように、ユーザの手Hによって把持可能に構成されている。そして、ユーザは、手Hで持って全天球撮像装置110を動かすことにより、表示装置180上に表示された、全天球撮像装置110の画像ビューアの操作画面S上で、画像に関連して各種操作を行うことができる。
例えば、ユーザは、全天球撮像装置110を表示装置180に向かって上または下に向けるように動かすことにより、表示装置180に表示された操作画面S上のポインタPの位置をそれぞれ上方向または下方向に移動させることができる。また、ユーザは、全天球撮像装置110を表示装置180に向かって左または右に振ることにより、操作画面S上のポインタPをそれぞれ左方向または右方向に移動させることができる。ユーザは、操作画面S上でポインタPを所定の位置に移動させ、全天球撮像装置110が筐体に備えるハードウェアボタンBなどのハードウェア操作手段を押下することにより、所望の処理内容を全天球撮像装置110に指示することができる。
このように、本実施形態による全天球画像表示システム100においては、無線通信装置150を介して全天球撮像装置110から表示装置180へ、画像ビューアの操作画面Sが伝送される。ユーザは、表示装置180に表示される操作画面Sを見ながら、全天球撮像装置110を物理的に動かすことによって、操作画面上で所望の操作を行うことになる。
以下、図2および図3を参照しながら、まず、画像ビューアの操作画面提供機能を実現するための全天球撮像装置110および無線通信装置150のハードウェア構成について説明する。
図2は、本実施形態による全天球撮像装置110のハードウェア構成を示す。なお、図2に示す全天球撮像装置110は、180度より大きい全画角を有する2つの光学系を組み合わせた2眼の全天球撮像装置として構成されている。
全天球撮像装置110は、CPU(Central Processing Unit)112と、ROM(Read Only Memory)114と、画像処理ブロック116と、動画ブロック118と、DRAM(Dynamic Random Access Memory)インタフェース120を介して接続されるDRAM132と、外部センサインタフェース124を介して接続される加速度センサ/ジャイロセンサ/地磁気センサ(加速度センサ、ジャイロセンサおよび地磁気センサの少なくとも1つを含む。)136とを含み構成される。
CPU112は、全天球撮像装置110の各部の動作および全体動作を制御する。ROM114は、CPU112が解読可能なコードで記述された制御プログラムや各種パラメータを格納する。
全天球撮像装置110は、CCD(Charge Coupled Device)センサやCMOS(Complementary Metal Oxide Semiconductor)センサなどの2つの撮像素子130A,130Bと2つの光学系131A,131Bとを有する。なお、説明する実施形態では、光学系は、魚眼レンズを含み、ここで、魚眼レンズは、広角レンズや、超広角レンズと呼ばれるものを含むものとする。画像処理ブロック116は、2つの撮像素子130A,130Bと接続され、それぞれで撮像された画像の画像信号が入力される。画像処理ブロック116は、ISP(Image Signal Processor)などを含み構成され、撮像素子130から入力された画像信号に対し、シェーディング補正、ベイヤー補間、ホワイト・バランス補正、ガンマ補正などを行う。
本実施形態において、2つの撮像素子130A,130Bでそれぞれ撮像された画像は、画像処理ブロック116で、重複部分を基準として合成処理されて、これにより、立体角4πステラジアンの全天球画像が生成される。光学系が180度を超える全画角を有するため、撮像した各撮影画像の180度を超えた部分の撮影範囲が重複する。合成処理の際には、この重複領域が同一像を表す基準データとして参照されて、全天球画像が生成される。そして、全天球画像の連続するフレームにより、全天球動画が構成される。
ここで、説明する実施形態では、撮影地点から見渡すことのできる全ての方向を撮影した全天球映像を生成するものとして説明するが、他の実施形態では、水平面のみ360度を撮影した、いわゆるパノラマ映像であってもよい。また、説明する実施形態では、2つの撮像光学系を含み構成されるものとして説明するが、撮像光学系の数は、特に限定されるものではない。他の実施形態では、全天球撮像装置110は、3つ以上の魚眼レンズを光学系に含む撮像体を備えるとともに、3つ以上の光学系で撮像された複数の撮像画像に基づいて全天球画像を生成する機能を備えていてもよい。さらに他の実施形態では、全天球撮像装置110は、単一の魚眼レンズを光学系に含む撮像体を備え、単一の魚眼レンズで異なる方位で撮像された複数の撮像画像に基づいて全天球画像を生成する機能を備えていてもよい。
動画ブロック118は、MPEG(Moving Picture Experts Group)−4 AVC(Advanced Video Coding)/H.264/H.265などの動画圧縮および伸張を行うコーデック・ブロックである。DRAM132は、各種信号処理および画像処理を施す際にデータを一時的に保存する記憶領域を提供する。加速度センサ/ジャイロセンサ/地磁気センサ136は、速度、加速度、角速度、角加速度、磁気方位などの全天球撮像装置110の動きに起因した物理量を計測するものである。計測された物理量は、全天球画像の天頂補正を施す際に、および、画像ビューアの操作画面に対する処理内容を判断する際に用いることができる。
全天球撮像装置110は、さらに、外部ストレージインタフェース122を含み構成される。外部ストレージインタフェース122には、外部ストレージ134が接続される。外部ストレージインタフェース122は、メモリカードスロットに挿入されたメモリカードなどの外部ストレージ134に対する読み書きを制御する。
全天球撮像装置110は、さらに、USB(Universal Serial Bus)インタフェース126を含み構成される。USBインタフェース126には、USBコネクタ138が接続される。USBインタフェース126は、USBコネクタ138を介して接続されるパーソナル・コンピュータやスマートフォンやタブレット・コンピュータなどの外部装置とのUSB通信を制御する。
全天球撮像装置110は、さらに、シリアルブロック128を含み構成される。シリアルブロック128は、外部装置とのシリアル通信を制御し、無線通信インタフェース140が接続される。説明する実施形態では、全天球撮像装置110は、無線通信インタフェース140を用いて、Miracast(商標または登録商標)などの無線映像伝送プロトコルにより、無線通信装置150といった外部装置と接続する。そして、外部装置が備えるディスプレイ、または、接続されるディスプレイ上に全天球撮像装置110の操作画面が表示される。
USBコネクタ138や無線通信インタフェース140を介して外部のパーソナル・コンピュータやスマートフォンやタブレット・コンピュータ等の外部装置と接続し、外部装置が備えるディスプレイ、または、接続されるディスプレイ上に映像を表示してもよい。全天球撮像装置110は、図1に示すもののほか、HDMI(商標または登録商標)などの映像出力インタフェースを有していてもよい。その場合、映像出力インタフェースを介してディスプレイなどの外部の表示装置に直接接続され、映像を表示することができる。
電源スイッチの操作によって電源がオン状態になると、ROM114などから制御プログラムがメインメモリにロードされる。CPU112は、メインメモリに読み込まれたプログラムに従って、装置各部の動作を制御するとともに、制御に必要なデータをメモリ上に一時的に保存する。これにより、画像ビューアの操作画面提供機能に関する全天球撮像装置110の各機能部および処理が実現される。
図3は、本実施形態による無線通信装置150のハードウェア構成を示す。無線通信装置150は、CPU152と、ROM154と、RAM156と、動画ブロック158と、無線通信インタフェース160と、映像出力インタフェース162とを含み構成される。
CPU152は、無線通信装置150の各部の動作および全体動作を制御する。ROM154は、CPU152が解読可能なコードで記述された制御プログラムや各種パラメータを格納する。RAM156は、各種信号処理および画像処理を施す際にデータを一時的に保存する記憶領域を提供する。動画ブロック158は、MPEG(Moving Picture Experts Group)−4 AVC(Advanced Video Coding)/H.264/H.265などの動画圧縮および伸張を行うコーデック・ブロックである。
無線通信インタフェース160は、全天球撮像装置110などの外部装置との無線通信を制御する。説明する実施形態では、無線通信インタフェース160を用いたMiracast(商標または登録商標)などの無線映像伝送規格に基づいて、全天球撮像装置110などの外部装置と接続し、その外部装置から伝送される映像を受信する。映像出力インタフェース162は、HDMI(商標または登録商標)などの映像出力インタフェースである。映像出力インタフェースを介して外部の表示装置180に直接接続することにより、外部の表示装置180に映像を表示させることができる。
電源が投入されると、ROM154などから制御プログラムがRAM156にロードされる。CPU152は、RAM156に読み込まれたプログラムに従って、装置各部の動作を制御するとともに、制御に必要なデータをRAM156上に一時的に保存する。これにより、無線通信装置150の後述する各機能部および処理が実現される。
以下、図4〜図9を参照しながら、本実施形態による全天球撮像装置110が備える画像ビューアの操作画面提供機能について説明する。
図4は、本実施形態による全天球撮像装置110上で実現される画像ビューアの操作画面提供機能に関連する主要な機能ブロック210を示す。なお、図4には、全天球撮像装置110の外部構成として、無線通信装置150の機能ブロック250が併せて示されている点に留意されたい。
図4に示すように、全天球撮像装置110の機能ブロック210としては、撮像画像記憶部212と、センサ計測部214と、無線映像送信部216と、操作画面制御部220とが含まれる。
撮像画像記憶部212は、全天球撮像装置110の光学系131A,131Bを通して撮像された画像を記憶する。撮像画像記憶部212は、典型的には、外部ストレージ134の記憶領域として提供される。撮像画像記憶部212は、本実施形態による記憶手段を構成する。
ここで、撮像画像記憶部212に記憶される画像は、2つの光学系131A,131Bそれぞれを介して撮像されたそれぞれの魚眼画像であってもよいし、これら2つの魚眼画像を接合したデュアル魚眼画像であってもよいし、これら2つの魚眼画像から正距円筒図法などの投影法に基づいて合成された全天球フォーマットの全天球画像であってもよい。撮像画像記憶部212に記憶される画像は、また、静止画であってもよいし、動画であってもよいし、動画や静止画の解像度も2K、4K、他の解像度など如何なるものとすることができる。静止画のフォーマットとしても、JPEG形式、GIF形式、PNG形式、ビットマップ形式などの如何なる画像フォーマットであってよい。動画のフォーマットとしても、MPEG4形式、H.264形式、H.265形式など如何なる動画フォーマットであってよい。
さらに、動画は、1チャンネルや4チャンネル(3D音響)の音声データを有していてもよい。なお、音声データごとに音量が異なる場合が考えられるため、全天球撮像装置110は、動画の音声のボリュームを操作する機能を備えていることが好ましい。表示装置180側の音量設定は変更せずに、全天球撮像装置110の本体操作により音量を変更可能に構成することにより、ユーザビリティが向上することができる。さらに、3D音響データについては、表示装置180側が3D音響に対応していない場合も想定されるので、再生時に2チャンネルまたは1チャンネル音声に変換する処理を、全天球撮像装置110で行ったり、無線通信装置150で行ったりしてもよい。
センサ計測部214は、図2に示す加速度センサ/ジャイロセンサ/地磁気センサ136を用いて全天球撮像装置110の動きに起因した物理量を計測する。センサ計測部214により計測される物理量としては、全天球撮像装置110の位置変化、姿勢変化および回転の少なくとも1つを示す、速度、加速度、角速度、角加速度、磁気方位またはこれらの組み合わせを挙げることができる。センサ計測部214は、本実施形態による計測手段を構成する。
なお、センサ計測部214が用いるセンサの組み合わせは、特に限定されるものではない。例えば、センサ計測部214は、ジャイロセンサが搭載される場合に、ジャイロセンサを用いて全天球撮像装置110の動きを検出することができる。このジャイロセンサは、3軸センサであっても6軸センサであってもよく、特に限定されるものではない。ジャイロセンサと組み合わせて、またはジャイロセンサに代えて、加速度センサおよび地磁気センの一方または両方を用いることもできる。複数のセンサを組み合わせることで、全天球撮像装置110の向きを固定せずに検出可能とすることができる。このとき、磁気センサが不安定な場合は、さらにフィルタをかけることができる。加速度センサにより、全天球撮像装置110の傾き(ピッチとロール)が検知できるので、検知された傾きに基づいてジャイロセンサの計測値を補正することもできる。ジャイロセンサなどを単体で使用する場合にも、ミディアンフィルタ、ローパスフィルタ、およびそれらの組み合わせなどを用いて平滑化することもできる。
操作画面制御部220は、全天球撮像装置110の画像ビューア機能に関する操作画面の生成および操作画面間の遷移を制御する。操作画面制御部220は、全天球撮像装置110のファームウェアの機能として提供されてもよいし、ファームウェア上で追加される拡張アプリケーションとして提供されてもよい。操作画面制御部220は、例えば、全天球撮像装置110の筐体に設けられる特定のハードウェアボタンの長押しなどの特定の動作に応答して、または、全天球撮像装置110と外部の無線通信装置150との接続が確立するなどの特定の状態になったことに応答して起動される。
図4に示すように、操作画面制御部220は、操作画面の出力処理を担う画面出力処理部222と、操作画面に対する入力処理を担う画面入力処理部224と、操作画面を介して要求される処理を実行する処理実行部230とを含み構成される。
画面出力処理部222は、現在表示対象となる操作画面を生成し、生成した操作画面を出力する。画面出力処理部222は、説明する実施形態では、撮像画像記憶部212に記憶された1または複数の撮像画像に関し、一覧表示する画像一覧画面、そのうちの選択された特定の画像を表示する画像閲覧画面、設定画面などの各種操作画面を生成することができる。画面出力処理部222は、本実施形態における生成手段を構成する。なお、具体的な操作画面や操作画面間の遷移の仕方については、図6〜図9を参照しながら後述する。
画面入力処理部224は、センサ計測部214により計測された物理量に応じて、現在出力している操作画面上で、ユーザが意図している、撮像画像に関連した処理内容を特定する。画面入力処理部224は、本実施形態における特定手段を構成する。より詳細には、画面入力処理部224は、ポインタ位置管理部226と、処理内容判定部228とを含み構成される。
ポインタ位置管理部226は、センサ計測部214により計測された物理量に基づいて、現在表示中の操作画面上で対象を指し示すポインタの位置を指示部の状態として管理する。ポインタ位置管理部226は、典型的には、センサ136による検出結果を用いて、全天球撮像装置110の移動方向、姿勢方向および向きを検出し、ポインタ移動情報に変換することができる。なお、説明する実施形態では、指示部の一例としてポインタを説明するが、指示部としては、例えば、操作画面上のコントロールに対するフォーカスを用いてもよい。この場合、フォーカスの選択状態が管理される。ポインタ位置管理部226は、本実施形態における管理手段を構成する。
なお、メニュー選択時は、平面環境に対して上下左右の2次元動作を検知することができればよい。この場合は、特に限定されるものではないが、表示デバイスに正対する平面座標(ディスプレイ画面と平行な位置関係)で動くと直感的に分かりやすいので、初期位置および初期姿勢でキャリブレーションすることができる。さらに、上下左右の2次元に加えて、奥行きを含めた3次元の動作を検知することができる場合は、前後方向の移動量を別操作に割り当てることもできる。例えば、押し込む動きで、選択中のコントロールの押下に相当する操作を検知してもよい。このように、全天球撮像装置110をどの向きにしても地面に対して横や縦移動することで、画面のポインタを横または縦に移動させることができる。また、シャッターボタンを上面とするなどの全天球撮像装置110のボタン位置などを指定することで、ユーザによる全天球撮像装置110の持ち方に制約を与えることもできる。
処理内容判定部228は、操作画面上でのポインタの位置と、必要に応じて全天球撮像装置110に対して行われた追加操作とに基づいて、操作画面上での処理内容を決定する。追加操作は、全天球撮像装置110の筐体に備えられるハードウェアボタンで受け付けた入力に基づく操作とすることができる。操作画面上には、所定の処理内容に関連付けられた、ボタンやアイコンなどの複数のコントロールが含まれている。そして、ポインタによりいずれかのコントロールが選択された状態で追加操作が行われることにより、選択されたコントロールに関連付けられた所定の処理内容が決定される。処理内容判定部228は、本実施形態における決定手段を構成する。
処理実行部230は、処理内容判定部228によって特定された処理内容を実行する。処理内容は、所定の操作画面の呼び出し、画像表示に関連する各種操作や画像編集に関する各種操作を含むことができる。
より具体的には、処理内容は、操作画面上での静止画の表示、静止画の非表示、動画の再生開始、動画の再生一時停止、動画の早送り、動画の巻き戻し、動画の再生停止、静止画や動画の回転、静止画や動画の表示範囲の拡大、静止画や動画の表示範囲の縮小、静止画や動画の視点移動を含むことができる。さらに、処理内容は、画像の選択、画像の削除、画像の形式の変換、動画からの静止画の切り出し、画像の解像度変換、動画の分割または動画での再生音量の変更を含むことができる。ここで、画像の形式の変換には、デュアル魚眼画像から全天球画像への変換が含まれてもよい。処理実行部230は、本実施形態における実行手段を構成する。
無線映像送信部216は、図2に示した無線通信インタフェース140を用いて、無線通信により、処理実行部230が実行した処理内容の結果が反映された操作画面を映像として外部装置へ送信する。無線映像送信部216は、本実施形態における出力手段を構成する。
無線通信装置150は、表示装置180と接続されている。無線通信装置150は、全天球撮像装置110の無線映像送信部216により送信された操作画面を表示装置180に表示させる。なお、説明する実施形態では、無線通信装置150は、表示装置180と外部接続されているものとして説明したが、これに限定されるものではなく、無線通信装置150自体が表示装置を備える構成としてもよい。
また、全天球撮像装置110は、充分な解像度を有するディスプレイを備えない場合もあり、ディスプレイ自体を備えていない場合もある。そのため、全天球撮像装置110から無線通信装置150と接続するために機器登録しようとする場合、ユーザに煩雑な作業を強いてしまう可能性がある。
そこで、好ましい実施形態では、無線通信装置150の機能ブロック250は、さらに、自己情報発信部252を含むことができる。全天球撮像装置110の無線映像送信部216は、好ましい実施形態では、探索処理部218を含むことができる。
自己情報発信部252は、ユーザからの所定のボタンの押下といった機器登録開始操作に応答して、一定時間、無線通信装置150のSSIDなどのデバイス名を特殊な名前に変更して、その特殊な名前を発信する。ここで、特殊な名前とは、機器登録が開始されていない通常の名前と識別可能であり、機器登録モードにあることを表す特定の文字列パターンを含むものである。例えば、通常のデバイス名が「display001」であったとした場合に、「display001_ON」といった文字列「_ON」を追加したものを挙げることができる。自己情報発信部252は、本実施形態における変更手段を構成する。
これに対し、探索処理部218は、表示装置180側の無線通信装置150との無線通信を開始するために、文字列検索により特殊な名前を有する無線通信装置を相手方の候補として探索する。なお、相手方の候補の探索方法は、これに限定されるものではなく、事前登録されたMAC(Media Access Control)アドレスを有する無線通信装置を相手方の候補として探索してもよいし、最初に発見される無線通信装置を相手方の候補として探索してもよい。また、いずれか1つの探索方法を指定して、接続する相手方を決定することもできるし、複数の方法それぞれに事前に設定された優先度に基づいて、すべての見つかった候補の中から最も優先度の高いものを接続する相手方として決定してもよい。探索処理部218は、本実施形態における探索手段を構成する。
以下、図5を参照しながら、本実施形態による全天球撮像装置110が実行する相手方との接続方法について、より詳細に説明する。図5は、本実施形態による全天球撮像装置110が実行する相手方の無線通信装置150との接続方法を示すフローチャートである。
図5に示す処理は、例えば、全天球撮像装置110の筐体に設けられる特定のハードウェアボタンの長押しといった、特定の動作に応答して、ステップS100から開始される。ステップS101では、全天球撮像装置110は、画像ビューアの操作画面提供機能を有効化する。ステップS102では、全天球撮像装置110は、探索モードの設定に基づいて処理を分岐させる。探索モードの設定は、デフォルトとして設定されていてもよいし、ユーザにより別の手段で設定されていてもよい。
ステップS102で、MACアドレスに基づく探索モードが有効であった場合(MACアドレスベース)は、ステップS103へ処理が進められる。ステップS103では、全天球撮像装置110は、探索処理部218により、事前登録されたMACアドレスに該当する無線通信装置を探索し、発見されたものを相手方の候補とし、ステップS106へ処理を進める。
一方、ステップS102で、特殊な名前に基づく探索モードが有効であった場合(デバイス名ベース)は、ステップS104へ処理が進められる。ステップS104では、全天球撮像装置110は、探索処理部218により、所定の文字列パターンを有するデバイス名を有するものを探索し、発見されたものを相手方の候補とし、ステップS106へ処理を進める。ここで、無線通信装置150の機器登録開始のハードウェアボタンが押下され、デバイス名が特殊な名前に変更されている場合は、無線通信装置150が、この検索で発見されることになる。
一方、ステップS102で、発見順に基づく探索モードが有効であった場合(発見順ベース)は、ステップS105へ処理が進められる。ステップS105では、全天球撮像装置110は、ネットワーク上で無線通信装置を探索し、最初に発見されたものを相手方の候補とし、ステップS106へ処理を進める。
なお、ステップS103〜ステップS105の処理は、事前設定に基づいて行われるが、これらのうち複数のステップが並列または順次行われてもよい。例えば、すべてのモードでの探索が有効である場合に、ステップS103〜ステップS105のすべての処理が、並列にまたは順次実行されてもよい。
ステップS106では、全天球撮像装置110は、ステップS103〜ステップS105の探索により、少なくとも1つの候補が発見されたか否かを判定する。ステップS106で、少なくとも1つ発見されたと判定された場合(YES)は、ステップS107へ処理が進められる。
ステップS107では、全天球撮像装置110は、発見された優先度が最上位である無線通信装置との通信を開始する。ここで、優先度は、MACアドレスベース、デバイス名ベースおよび発見順ベースのうちの複数で候補が発見された場合に、いずれの候補を優先するかを決める順位である。単一のモードのみが指定される場合は、その指定されたモードが最上位のものとなる。
ステップS108以降、操作画面の画像表示が行われ、全天球撮像装置110の本体を用いた操作が開始される。
一方、ステップS106で、1つも候補が発見されなかったと判定された場合(NO)は、ステップS109へ処理が進められる。ステップS109では、全天球撮像装置110は、操作画面提供機能を無効化し、ステップS110で本処理を終了させる。この際に、全天球撮像装置110のランプやスピーカから、候補となる無線通信装置が見つからなかった旨の通知を行ってもよい。
なお、一度接続が確立された以降は、表示装置180上で接続状況や他の接続可能なデバイスを表示することができるので、その表示装置180に表示された操作画面上で、接続する相手方を切替できるように構成してもよい。また、ハードウェアボタンが押下されている無線通信装置が複数存在する場合も想定されるので、最初の接続対象を決定する際に、Bluetooth(商標または登録商標)通信などを利用してもよい。
以下、図6に示すフローチャートを参照しながら、図5に示すステップS109以降に行われる、本実施形態による全天球撮像装置110が実行する操作方法について、より詳細に説明する。図6は、本実施形態による全天球撮像装置110が実行する、外部の表示装置180を用いた操作方法を示すフローチャートである。
図6に示す処理は、図5に示したステップS108に処理が進められたことに応答して、ステップS200から開始される。ステップS201では、全天球撮像装置110は、キャリブレーション処理を実行する。ここで、キャリブレーション処理では、例えば、ユーザに全天球撮像装置110の先端で画面中央などの所定の方向を指し示すように案内がなされる。そして、センサ計測部214により初期姿勢や初期位置が計測されて、計測された初期状態に対応付けてポインタの位置が画面中央に初期化される。
ステップS202では、全天球撮像装置110は、画面出力処理部222により、撮像画像に関する操作画面を生成し、生成した操作画面を出力する。以降、ステップS203〜ステップS206では、全天球撮像装置110の動きに基づいて、出力された操作画面上での撮像画像に関連した処理内容が特定される。
ステップS203では、全天球撮像装置110は、センサ計測部214により、全天球撮像装置110の動きに起因した物理量を計測する。ステップS204では、全天球撮像装置110は、ポインタ位置管理部226により、センサ計測部214で計測された物理量に基づいて、表示中の操作画面上で対象を指し示すポインタの位置を更新する。ステップS205では、全天球撮像装置110は、追加操作が行われたか否かを判定する。ここで、追加操作は筐体表面に設けられたハードウェアボタンの押下などである。
ステップS205で、追加操作が行われていないと判定された場合(NO)は、ステップS203へ戻される。一方、ステップS205で、追加操作が行われたと判定された場合(YES)は、ステップS206へ処理が進められる。ステップS206では、全天球撮像装置110は、処理内容判定部228により、出力中の操作画面、ポインタ位置情報および追加操作に基づいて、処理内容を特定する。
ステップS207では、全天球撮像装置110は、処理実行部230により、ステップS206で特定された処理内容を実行する。ステップS208では、処理実行の結果、遷移が必要であるか否かを判定する。ステップS208で、遷移が必要であると判定された場合(YES)は、ステップS210へ処理が分岐される。ステップS210では、操作画面を遷移させて、ステップS202へ処理をループさせる。この場合、ステップS202で、遷移後の操作画面が生成され、出力されることになる。
一方、ステップS208で、遷移が不要であると判定された場合(NO)は、ステップS209へ処理が分岐される。ステップS209では、ステップ207での処理内容の実行を操作画面に反映させて、ステップS203へ処理をループさせる。この場合、処理の実行が反映された操作画面が、無線映像送信部216を介して外部出力され、引き続き、出力中の操作画面について処理が継続する。
図6を参照して説明したように、本実施形態においては、ユーザは、外部出力された操作画面Sを見ながら、全天球撮像装置110を物理的に動かすことによって、所望の位置へポインタを移動させて、操作画面上で所望の操作を行うことになる。
以下、図7〜図9を参照しながら、本実施形態における操作画面および操作画面間の遷移について、より具体的に説明する。図7は、本実施形態による全天球撮像装置110が提供する操作画面間の遷移を説明する。図8および図9は、本実施形態による全天球撮像装置110が提供する操作画面を例示する。
図7に示すように、本全天球撮像装置110の画像ビューアの操作画面は、例えば、ロゴの表示などの初期画面300から始まる。例えば、初期画面300を表示してから一定時間経過すると、図6に示したステップ202で、タイムライン一覧画面310が生成および出力される。
図8(A)は、タイムライン一覧画面310を例示する。図7を参照すると、タイムライン一覧画面310からは、タイムライン一覧選択画面320および画像一覧画面330への遷移が存在する。図8(A)に示すタイムライン一覧画面310は、タイムライン一覧選択画面320へ切り替えるための選択ボタン312と、画像一覧画面330へ切り替える切替ボタン314とを含む。
ここで、図8(A)に示すタイムライン一覧画面310を一例として説明する。全天球撮像装置110を動かすことにより選択ボタン312や切替ボタン314の位置にポインタが置かれる。また、全天球撮像装置110のハードウェアボタンの押下などの追加操作がなされると、ステップS206では、タイムライン一覧選択画面320や画像一覧画面330の呼び出しが処理内容として特定される。この場合、ステップS208では遷移要と判定されることになる。
図8(B)は、タイムライン一覧選択画面320を例示する。図8(B)に示すタイムライン一覧選択画面320は、タイムライン一覧画面310へ戻るための戻るボタン322と、一覧表示された画像から処理を適用する対象を選択するためのチェックボックス324と、選択された画像を削除するための削除ボタン326とを含む。
ここで、図8(B)に示すタイムライン一覧選択画面320を一例として説明する。全天球撮像装置110を動かすことによりチェックボックス324にチェックが入れられた状態で、削除ボタン326の位置にポインタが置かれ、ハードウェアボタンの押下などの追加操作がなされると、ステップS206では、選択された画像の削除処理が処理内容として特定される。
図8(C)は、画像一覧画面330を例示する。図7を参照すると、画像一覧画面330からは、タイムライン一覧画面310、画像一覧選択画面340、設定画面350、全天球静止画閲覧画面360および全天球動画閲覧画面370への遷移がある。図8(C)に示す画像一覧画面330は、画像一覧選択画面340へ切り替えるための選択ボタン332と、タイムライン一覧画面310へ切り替える切り替えボタン334と、サムネイル画像336と、設定画面を呼び出すための設定ボタン338とを含む。
なお、サムネイル画像は、例えばリトルプラネットと称されるような全天球画像の表示形式のものを用いることができる。このようなサムネイルは、全天球撮像装置110のアイドル時間を検出してバックグラウンドで作成されてもよいし、画像一覧画面330の下にポインタを持ってくるなどの再表示のタイミングで更新しても良い。
また、画像一覧画面330上に明確なコントロールが配置されているわけではないが、例えば、画像一覧画面330の上側や下側にポインタを持ってきて、一定時間その位置で保持していた場合に、スクロールが行われるように構成してもよい。また、その際に、図8(C)に示す画像一覧画面330において多数の画像を一覧表示する場合、好ましい実施形態では、一覧表示する画像の数によって、高速なスクロールを行う手段を設けることができる。例えば、表示対象画像の数によって、少ない場合はスクロール速度を一定速とし、例えば1画面に入らない場合には一定時間経過後にスクロール速度を速めるようにすることができる。
なお、一覧表示するファイルについては、表示可能なファイルだけを一覧表示してもよいし、フォルダに記録されているファイルを全て一覧表示することとしてもよい。また、一覧表示において、ポインタで自由に所望のサムネイル画像を指して所望の画像を選べるようにしてもよい。あるいは、ファイルリストやサムネイル画像を自動的にスクロールさせ、ハードウェアボタンなどで追加操作が行われたタイミングで、ポインタにより指示されているサムネイル画像に対応する画像を選択することとしてもよい。
図8(D)は、画像一覧選択画面340を例示する。図8(D)に示す画像一覧選択画面340は、図8(B)に示したタイムライン一覧選択画面320と概ね同様な構成となっており、戻るボタン342と、削除ボタン344とを含んでいる。
図9(A)は、設定画面350を例示する。図9(A)に示す設定画面350は、各種設定内容示しており、さらに、画像一覧画面330へ切り替えるための切り替えボタン352を含む。また、この設定画面350において、現在使用中の接続先から、別の無線通信装置へ接続先を切り替えるための設定画面があってもよい。
ここで、図8(C)に示す画像一覧画面330を一例として説明を加える。所定のサムネイル画像336の位置にポインタが置かれ、ハードウェアボタンの押下などの追加操作がなされると、ステップS206では、図9(B)に示す全天球静止画閲覧画面360や、図9(C)に示す全天球動画閲覧画面370の呼び出しが、処理内容として特定される。この場合、ステップS208では遷移要と判定されることになる。
図9(B)は、全天球静止画閲覧画面360を例示する。図9(B)に示す画面360は、ポインタが位置するサムネイル画像に対応する画像が静止画である場合に呼び出される。図9(B)に示す全天球静止画閲覧画面360は、全天球静止画の表示領域362と、各種コントロール374とを含み構成される。
図9(C)は、全天球動画閲覧画面370を例示する。図9(C)に示す画面370は、ポインタが位置するサムネイル画像に対応する画像が動画である場合に呼び出される。図9(C)に示す全天球動画閲覧画面370は、全天球動画の表示領域372と、各種コントロール374と、動画の再生指示を受け付ける再生ボタン376とを含み構成される。
例えば、図9(C)に示す再生前の全天球動画閲覧画面370において、再生ボタン376の押下に相当する操作が行われた場合は、図9(D)に示すように、同一の操作画面内で、表示領域372で再生が開始され、コントロール374に変化が反映される。なお、この場合は、ステップS208では、遷移が不要と判定される。
図9(B)〜図9(D)で示す全天球画像の閲覧画面においては、全天球撮像装置110を動かすことにより、ポインタの位置を変化させて、そのポインタの位置に応じて、全天球撮像装置110の操作画面における画像表示を拡大、縮小、回転、視点移動などすることができる。そして、その操作に応じて、表示されている操作画面に変更が反映される。例えば、図1に示すように、全天球撮像装置110本体から上下左右に傾けて、ポインタを上下左右の端の領域に移動させ、その場所で、ボタンを押したり、一定時間待つことによって、視点移動などの動作を行うことができる。さらに、ハードウェアボタンを押した状態で画面に本体の頭を向けた状態で本体を上下左右に動かすことで視点移動をしたり、ハードウェアボタンを離した状態で本体を上下左右に動かすことでカーソル移動をしたり、あるいは、画面上の拡大アイコンまたは縮小アイコンにカーソルを合わせてハードウェアボタンを押すことで倍率を変えたり、メニュー上で拡大・縮小を選択し、本体を上下に動かすことにより倍率選択などの操作を行うこともできる。
以上、図7〜図9を参照しながら、具体的な操作画面を例示して説明してきた。しかしながら、操作画面は、図7〜図9に示した具体例に限定されるものではない。操作画面は、全天球撮像装置110を手で持って動かし、センサに動きを検知させることによって操作を行うことになる。このため、好ましくは、操作画面は、各処理内容に対応付けたタイル、ボタン、アイコンなどのコントロール並べて選択させるよう構成することができ、これにより、操作性を向上することができる。また、所定のハードウェアボタンが押されている間だけ、ポインタのそばにメニューを表示するように構成することもできる。さらに、メニューのそばにポインタがある間だけ、その領域を拡大表示するなどとしても良い。
以上説明した実施形態によれば、撮像装置を動かすことにより画像に関する処理内容を実行させるための操作画面を出力することが可能な、撮像装置、画像表示システム、操作方法およびプログラムを提供することができる。
なお、上記機能部は、アセンブラ、C、C++、C#、Java(登録商標)などのレガシープログラミング言語やオブジェクト指向プログラミング言語などで記述されたコンピュータ実行可能なプログラムにより実現でき、ROM、EEPROM、EPROM、フラッシュメモリ、フレキシブルディスク、CD−ROM、CD−RW、DVD−ROM、DVD−RAM、DVD−RW、ブルーレイディスク、SDカード、MOなど装置可読な記録媒体に格納して、あるいは電気通信回線を通じて頒布することができる。また、上記機能部の一部または全部は、例えばフィールド・プログラマブル・ゲート・アレイ(FPGA)などのプログラマブル・デバイス(PD)上に実装することができ、あるいはASIC(特定用途向集積)として実装することができ、上記機能部をPD上に実現するためにPDにダウンロードする回路構成データ(ビットストリームデータ)、回路構成データを生成するためのHDL(Hardware Description Language)、VHDL(VHSIC(Very High Speed Integrated Circuits) Hardware Description Language))、Verilog−HDLなどにより記述されたデータとして記録媒体により配布することができる。
これまで本発明の実施形態について説明してきたが、本発明の実施形態は上述した実施形態に限定されるものではなく、他の実施形態、追加、変更、削除など、当業者が想到することができる範囲内で変更することができ、いずれの態様においても本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。