以下、図面を用いて、本発明の実施形態について説明する。
<<実施形態の概略>>
<全天球パノラマ画像の生成方法>
図1乃至図7を用いて、全天球パノラマ画像の生成方法について説明する。
まず、図1を用いて、撮影装置1の外観を説明する。撮影装置1は、全天球(360°)パノラマ画像の元になる撮影画像を得るためのデジタルカメラである。なお、図1(a)は撮影装置の左側面図であり、図1(b)は撮影装置の正面図であり、図1(c)は撮影装置の平面図である。
図1(a)に示されているように、撮影装置1は、人間が片手で持つことができる大きさである。また、図1(a),(b),(c)に示されているように、撮影装置1の上部には、正面側(前側)に撮像素子103a及び背面側(後側)に撮像素子103bが設けられている。また、図1(b)に示されているように、撮影装置1の正面側には、シャッターボタン等の操作部115が設けられている。
次に、図2を用いて、撮影装置1の使用状況を説明する。なお、図2は、撮影装置の使用イメージ図である。撮影装置1は、図2に示されているように、ユーザが手に持ってユーザの周りの被写体を撮影するために用いられる。この場合、図1に示されている撮像素子103a及び撮像素子103bによって、それぞれユーザの周りの被写体が撮像されることで、2つの半球画像を得ることができる。
次に、図3及び図4を用いて、撮影装置1で撮影された画像から全天球パノラマ画像が作成されるまでの処理の概略を説明する。なお、図3(a)は撮影装置で撮影された半球画像(前側)、図3(b)は撮影装置で撮影された半球画像(後側)、図3(c)はメルカトル図法により表された画像(以下、「メルカトル画像」という)を示した図である。図4(a)はメルカトル画像で球を被う状態を示した概念図、図4(b)は全天球パノラマ画像を示した図である。
図3(a)に示されているように、撮像素子103aによって得られた画像は、後述の魚眼レンズ102aによって湾曲した半球画像(前側)となる。また、図3(b)に示されているように、撮像素子103bによって得られた画像は、後述の魚眼レンズ102bによって湾曲した半球画像(後側)となる。そして、半球画像(前側)と、180度反転された半球画像(後側)とは、撮影装置1によって合成され、図3(c)に示されているように、メルカトル画像が作成される。
そして、OpenGL ES(Open Graphics Library for Embedded Systems)が利用されることで、図4(a)に示されているように、メルカトル画像が球面を覆うように貼り付けられ、図4(b)に示されているような全天球パノラマ画像が作成される。このように、全天球パノラマ画像は、メルカトル画像が球の中心を向いた画像として表される。なお、OpenGL ESは、2D(2-Dimensions)および3D(3-Dimensions)のデータを視覚化するために使用するグラフィックスライブラリである。なお、全天球パノラマ画像は、静止画であっても動画であってもよい。
以上のように、全天球パノラマ画像は、球面を覆うように貼り付けられた画像であるため、人間が見ると違和感を持ってしまう。そこで、全天球パノラマ画像の一部の所定領域(以下、「所定領域画像」という)を湾曲の少ない平面画像として表示することで、人間に違和感を与えない表示をすることができる。これに関して、図5及び図6を用いて説明する。
なお、図5は、全天球パノラマ画像を3次元の立体球とした場合の仮想カメラ及び所定領域の位置を示した図である。仮想カメラICは、3次元の立体球として表示されている全天球パノラマ画像に対して、その画像を見るユーザの視点の位置に相当するものである。また、図6(a)は図5の立体斜視図、図6(b)はディスプレイに表示された場合の所定領域画像を表す図である。また、図6(a)では、図4に示されている全天球パノラマ画像が、3次元の立体球CSで表わされている。このように生成された全天球パノラマ画像が、立体球CSであるとすると、図5に示されているように、仮想カメラICが全天球パノラマ画像の外部に位置している。全天球パノラマ画像における所定領域Tは、この全天球パノラマ画像における仮想カメラICの位置の所定領域情報によって特定される。この所定領域情報は、例えば、座標x(rH)、座標y(rV)、及び画角α(angle)によって示される。所定領域Tのズームは、画角αの範囲(円弧)を広げたり縮めたりすることで表現することができる。また、所定領域Tのズームは、仮想カメラICを全天球パノラマ画像に近づいたり、遠ざけたりすることで表現することもできる。
そして、図6(a)で示されているように、全天球パノラマ画像における所定領域Tの画像は、図6(b)に示されているように、所定のディスプレイに、所定領域画像として表示される。図6(b)に示されている画像は、初期設定(デフォルト)された所定領域情報(x,y,α)によって表された画像である。
ここで、図7を用いて、所定領域情報と所定領域画像の関係について説明する。なお、図7は、所定領域情報と所定領域画像の関係との関係を示した図である。図7に示されているように、仮想カメラICの画角αによって表される所定領域Tの対角線画角を2Lとした場合の中心点CPが、所定領域情報の(x,y)パラメータとなる。fは仮想カメラICから所定領域Tの中心点CPまでの距離である。そして、図7では、一般的に以下の式(1)で示される三角関数が成り立つ。
Lf=tan(α/2)・・・(式1)
<画像通信システムの概略>
続いて、図8を用いて、本実施形態の画像通信システムの構成の概略について説明する。図8は、本実施形態の画像通信システムの構成の概略図である。
図8に示されているように、本実施形態の画像通信システムは、撮影装置1、通信端末3、無線ルータ9a、画像管理システム5、及び通信端末7によって構成されている。
このうち、撮影装置1は、上述のように、全天球(360°)パノラマ画像を得るためのデジタルカメラである。なお、この撮影装置1は、一般的なデジタルカメラであっても良く、通信端末3にカメラが付いている場合は、通信端末3がデジタルカメラとなりうる。本実施形態では、説明を分かりやすくするために全天球パノラマ画像を得るためのデジタルカメラとして説明を行う。通信端末3は、撮影装置1への充電やデータ送受信を行なうクレードル(Cradle)の一例である。また、通信端末3は、接点を介して撮影装置1とデータ通信を行なうことができると共に、無線ルータ9a及び通信ネットワーク9を介して画像管理システム5とデータ通信を行なうことができる。なお、通信ネットワーク9は、例えば、インターネットである。
また、画像管理システム5は、例えば、サーバコンピュータであり、通信ネットワーク9を介して、通信端末3,7とデータ通信を行なうことができる。画像管理システム5には、OpenGL ESがインストールされており、全天球パノラマ画像を作成する。また、画像管理システム5は、全天球パノラマ画像の一部の画像(所定領域画像)のサムネイルデータを作成し、通信端末7にサムネイルデータ及び撮影画像データを提供する。なお、画像管理システム5は、単一のサーバコンピュータによって構成されてもよいし、複数のサーバコンピュータによって構成されてもよい。
また、通信端末7は、例えば、ノートPC(Personal Computer)であり、通信ネットワーク9を介して、画像管理システム5とデータ通信を行なうことができる。なお、通信端末7は、ノートPCだけでなく、デスクトップ型のPC等のパーソナルコンピュータであってもよく、更に、スマートフォン、タブレット型端末、又はスマートウォッチであってもよい。
更に、撮影装置1、通信端末3、及び無線ルータ9aは、衣服等の各販売拠点で設置者Xによって所定の位置に設置される。通信端末7は、各販売拠点を統括する本社等に設置され、画像管理システム5を介して送られて来る各拠点の状況を表した画像を表示することで、閲覧者Yが各拠点の状況を表した画像(以下、「拠点状況画像」と示す)を閲覧することができる。画像管理システム5は、各拠点の通信端末3から送られて来た撮影画像データに基づいてサムネイルデータを作成したり、通信端末7にサムネイルデータや撮影画像データを提供したりするサービスを行なうサービス会社等に設置されている。
<実施形態のハードウェア構成>
次に、図9乃至図11を用いて、本実施形態の撮影装置1、通信端末3,7、及び画像管理システム5のハードウェア構成を詳細に説明する。
まず、図9を用いて、撮影装置1のハードウェア構成を説明する。なお、図9は、撮影装置のハードウェア構成図である。以下では、撮影装置1は、2つの撮像素子を使用した全方位撮影装置とするが、撮像素子は3つ以上いくつでもよい。また、必ずしも全方位撮影専用の装置である必要はなく、通常のデジタルカメラやスマートフォン等に後付けの全方位撮影ユニットを取り付けることで、実質的に撮影装置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によって構成されている。
このうち、撮像ユニット101は、各々半球画像を結像するための180°以上の画角を有する広角レンズ(いわゆる魚眼レンズ)102a,102bと、各広角レンズに対応させて設けられている2つの撮像素子103a,103bを備えている。撮像素子103a,103bは、魚眼レンズによる光学像を電気信号の画像データに変換して出力するCMOS(Complementary Metal Oxide Semiconductor)センサやCCD(Charge Coupled Device)センサなどの画像センサ、この画像センサの水平又は垂直同期信号や画素クロックなどを生成するタイミング生成回路、この撮像素子の動作に必要な種々のコマンドやパラメータなどが設定されるレジスタ群などを有している。
撮像ユニット101の撮像素子103a,103bは、各々、画像処理ユニット104とはパラレルI/Fバスで接続されている。一方、撮像ユニット101の撮像素子103a,103bは、撮像制御ユニット105とは別に、シリアルI/Fバス(I2Cバス等)で接続されている。画像処理ユニット104及び撮像制御ユニット105は、バス110を介してCPU111と接続される。さらに、バス110には、ROM112、SRAM113、DRAM114、操作部115、ネットワークI/F116、通信部117、及び電子コンパス118なども接続される。
画像処理ユニット104は、撮像素子103a,103bから出力される画像データをパラレルI/Fバスを通して取り込み、それぞれの画像データに対して所定の処理を施した後、これらの画像データを合成処理して、図3(c)に示されているようなメルカトル画像のデータを作成する。
撮像制御ユニット105は、一般に撮像制御ユニット105をマスタデバイス、撮像素子103a,103bをスレーブデバイスとして、I2Cバスを利用して、撮像素子103a,103bのレジスタ群にコマンド等を設定する。必要なコマンド等は、CPU111から受け取る。また、該撮像制御ユニット105は、同じくI2Cバスを利用して、撮像素子103a,103bのレジスタ群のステータスデータ等を取り込み、CPU111に送る。
また、撮像制御ユニット105は、操作部115のシャッターボタンが押下されたタイミングで、撮像素子103a,103bに画像データの出力を指示する。撮影装置によっては、ディスプレイによるプレビュー表示機能や動画表示に対応する機能を持つ場合もある。この場合は、撮像素子103a,103bからの画像データの出力は、所定のフレームレート(フレーム/分)によって連続して行われる。
また、撮像制御ユニット105は、後述するように、CPU111と協働して撮像素子103a,103bの画像データの出力タイミングの同期をとる同期制御手段としても機能する。なお、本実施形態では、撮影装置には表示部が設けられていないが、表示部を設けてもよい。
マイク108は、音を音(信号)データに変換する。音処理ユニット109は、マイク108から出力される音データをI/Fバスを通して取り込み、音データに対して所定の処理を施す。
CPU111は、撮影装置1の全体の動作を制御すると共に必要な処理を実行する。ROM112は、CPU111のための種々のプログラムを記憶している。SRAM113及びDRAM114はワークメモリであり、CPU111で実行するプログラムや処理途中のデータ等を記憶する。特にDRAM114は、画像処理ユニット104での処理途中の画像データや処理済みのメルカトル画像のデータを記憶する。
操作部115は、種々の操作ボタンや電源スイッチ、シャッターボタン、表示と操作の機能を兼ねたタッチパネルなどの総称である。ユーザは操作ボタンを操作することで、種々の撮影モードや撮影条件などを入力する。
ネットワークI/F116は、SDカード等の外付けのメディアやパーソナルコンピュータなどとのインターフェース回路(USBI/F等)の総称である。また、ネットワークI/F116としては、無線、有線を問わずにネットワークインタフェースである場合も考えられる。DRAM114に記憶されたメルカトル画像のデータは、このネットワークI/F116を介して外付けのメディアに記録されたり、必要に応じてネットワークI/FとなるネットワークI/F116を介して通信端末3等の外部装置に送信されたりする。
通信部117は、撮影装置1に設けられたアンテナ117aを介して、WiFi(wireless fidelity)やNFC等の短距離無線技術によって、通信端末3等の外部装置と通信を行う。この通信部117によっても、メルカトル画像のデータを通信端末3の外部装置に送信することができる。
電子コンパス118は、地球の磁気から撮影装置1の方位及び傾き(Roll回転角)を算出し、方位・傾き情報を出力する。この方位・傾き情報はExifに沿った関連情報(メタデータ)の一例であり、撮影画像の画像補正等の画像処理に利用される。なお、関連情報には、画像の撮影日時、及び画像データのデータ容量の各データも含まれている。
次に、図10を用いて、通信端末3のハードウェア構成を説明する。なお、図10は、
無線通信機能を有したクレードルの場合の通信端末3のハードウェア構成図である。
図10に示されているように、通信端末3は、通信端末3全体の動作を制御するCPU301、基本入出力プログラムを記憶したROM302、CPU301のワークエリアとして使用されるRAM(Random Access Memory)303、CPU301の制御にしたがってデータの読み出し又は書き込みを行うEEPROM(Electrically Erasable and Programmable ROM)304、CPU301の制御に従って被写体を撮像し画像データを得る撮像素子としてのCMOSセンサ305を備えている。
なお、EEPROM304には、CPU301が実行するオペレーティングシステム(OS)、その他のプログラム、及び、種々データが記憶されている。また、CMOSセンサ305の代わりにCCDセンサを用いてもよい。
更に、通信端末3は、アンテナ313a、このアンテナ313aを利用して無線通信信号により、無線ルータ9a等と通信を行う通信部313、GPS(Global Positioning Systems)衛星又は屋内GPSとしてのIMES(Indoor MEssaging System)によって通信端末3の位置情報(緯度、経度、および高度)を含んだGPS信号を受信するGPS受信部314、及び、上記各部を電気的に接続するためのアドレスバスやデータバス等のバスライン310を備えている。
図11を用いて、画像管理システム5及びノートPCの場合の通信端末7のハードウェア構成を説明する。なお、図11は、画像管理システム5及び通信端末7のハードウェア構成図である。画像管理システム5、及び通信端末7は、ともにコンピュータであるため、以下では、画像管理システム5の構成について説明し、通信端末7の構成の説明は省略する。
画像管理システム5は、画像管理システム5全体の動作を制御するCPU501、IPL等のCPU501の駆動に用いられるプログラムを記憶したROM502、CPU501のワークエリアとして使用されるRAM503、画像管理システム5用のプログラム等の各種データを記憶するHD504、CPU501の制御にしたがってHD504に対する各種データの読み出し又は書き込みを制御するHDD(Hard Disk Drive)505、フラッシュメモリ等の記録メディア506に対するデータの読み出し又は書き込み(記憶)を制御するメディアI/F507、カーソル、メニュー、ウィンドウ、文字、又は画像などの各種情報を表示するディスプレイ508、通信ネットワーク9を利用してデータ通信するためのネットワークI/F509、文字、数値、各種指示などの入力のための複数のキーを備えたキーボード511、各種指示の選択や実行、処理対象の選択、カーソルの移動などを行うマウス512、着脱可能な記録媒体の一例としてのCD−ROM(Compact Disc Read Only Memory)513に対する各種データの読み出し又は書き込みを制御するCD−ROMドライブ514、及び、上記各構成要素を図11に示されているように電気的に接続するためのアドレスバスやデータバス等のバスライン510を備えている。
<実施形態の処理の概略>
次に、図12を用いて、本実施形態の処理の概略について説明する。図12は、本実施形態の処理の概略を示した図である。
まず、通信端末3が撮影装置1から、撮影画像データ、所定領域情報、及び関連情報を取得する(ステップS1)。そして、通信端末3は、画像管理システム5に対して、撮影画像データ、所定領域画像、及び関連情報を送信する(ステップS2)。画像管理システム5は、所定領域画像に基づいて、サムネイルデータを作成する(ステップS3)。通信端末7は、撮影装置1を示す装置IDを画像管理システム5へ送信する(ステップS4)。画像管理システム5は、通信端末7から送られてきた装置IDの撮影装置1によって撮影された画像の撮影画像データ、所定領域画像、関連情報、及びサムネイルデータを通信端末7へ送信する(ステップS5)。
<<実施形態の機能構成>>
本実施形態の機能構成について説明する。図13は、本実施形態の画像通信システムの一部を構成する、撮影装置1、通信端末3、画像管理システム5、及び通信端末7の各機能ブロック図である。図13では、画像管理システム5が、通信ネットワーク9を介して、通信端末3及び通信端末7とデータ通信することができる。
<撮影装置1の機能構成>
図13に示されているように、撮影装置1は、受付部12、撮像部13、集音部14、接続部18、及び記憶・読出部19を有している。これら各部は、図9に示されている各構成要素のいずれかが、SRAM113からDRAM114上に展開された撮影蔵置用のプログラムに従ったCPU111からの命令によって動作することで実現される機能又は手段である。
また、撮影装置1は、図9に示されているROM112、SRAM113、及びDRAM114によって構築される記憶部1000を有している。
(撮影装置1の各機能構成)
次に、図9及び図13を用いて、撮影装置1の各機能構成について更に詳細に説明する。
撮影装置1の受付部12は、主に、図9に示されている操作部115及びCPU111の処理によって実現され、利用者(図8では、設置者X)からの操作入力を受け付ける。
撮像部13は、主に、図9に示されている撮像ユニット101、画像処理ユニット104、及び撮像制御ユニット105、並びにCPU111の処理によって実現され、風景等を撮像し、撮影画像データを得る。
集音部14は、図9に示されている108及び音処理ユニット109、並びにCPU111の処理によって実現され、撮影装置1の周囲の音を収音する。
接続部18は、主に、電気接点、及びCPU111の処理によって実現され、通信端末3からの電源供給を受けると共に、データ通信を行う。
記憶・読出部19は、主に、図9に示されているCPU111の処理によって実現され、記憶部1000に各種データ(または情報)を記憶したり、記憶部1000から各種データ(または情報)を読み出したりする。
<通信端末3の機能構成>
図13に示されているように、通信端末3は、送受信部31、接続部38、及び記憶・読出部39を有している。これら各部は、図10に示されている各構成要素のいずれかが、EEPROM304からRAM303上に展開された通信端末3用プログラムに従ったCPU301からの命令によって動作することで実現される機能又は手段である。
また、通信端末3は、図10に示されているROM302、RAM303、及びEEPROM304によって構築される記憶部3000を有している。
(通信端末3の各機能構成)
次に、図10及び図13を用いて、通信端末3の各機能構成について更に詳細に説明する。
通信端末3の送受信部31は、主に、図10に示されている通信部313及びCPU301の処理によって実現され、無線ルータ9a及び通信ネットワーク9を介して、画像管理システム5と各種データ(または情報)の送受信を行う。
接続部38は、主に、電気接点、及びCPU301の処理によって実現され、通信端末3に電源供給すると共に、データ通信を行う。
記憶・読出部39は、主に、図10に示されているCPU301の処理によって実現され、記憶部3000に各種データ(または情報)を記憶したり、記憶部3000から各種データ(または情報)を読み出したりする。
なお、上記各プログラムが記憶されたCD−ROM等の記録媒体、並びに、これらプログラムが記憶されたHD504は、いずれもプログラム製品(Program Product)として、国内又は国外へ提供されることができる。
<画像管理システムの機能構成>
画像管理システム5の各機能構成について説明する。画像管理システム5は、送受信部51、算出部53、生成部54、検索部55、及び記憶・読出部59を有している。これら各部は、図11に示されている各構成要素のいずれかが、HD504からRAM503上に展開された画像管理システム5用プログラムに従ったCPU501からの命令によって動作することで実現される機能又は手段である。
また、画像管理システム5は、図11に示されているRAM503、及びHD504によって構築される記憶部5000を有している。この記憶部5000には、拠点管理DB5001、端末管理DB5002、画像管理DB5004、サムネイル管理DB5005、及び画像グループ管理DB5006が構築されている。このうち、拠点管理DB5001は、後述の拠点管理テーブルによって構成されている。端末管理DB5002は、後述の端末管理テーブルによって構成されている。画像管理DB5004は、後述の画像管理テーブルによって構成されている。サムネイル管理DB5005は、サムネイル管理テーブルによって構成されている。
(拠点管理テーブル)
図14の(A)は、拠点管理テーブルを示す概念図である。この拠点管理テーブルでは、地域ID、地域名、拠点ID、拠点名、拠点のレイアウトマップのファイル名、及び、装置IDが関連付けて管理されている。このうち、地域IDは、地域を識別するための地域識別情報の一例である。拠点IDは、拠点を識別するための拠点識別情報の一例である。拠点名は、渋谷店等の店舗名や、渋谷会場等の会場名等を示す。レイアウトマップは、図33に示されているように、2次元座標で拠点内の位置を特定可能に各拠点のレイアウトを示す。なお、図33は、レイアウトマップの概念図である。装置IDは、撮影装置1を識別するための装置識別情報の一例である。レイアウトマップのデータは、記憶部5000に記憶されている。
(端末管理テーブル)
図14の(B)は、端末管理テーブルを示す概念図である。この端末管理テーブルでは、装置ID毎に、所定領域情報が関連付けて管理されている。所定領域情報は、図7で説明した所定領域情報である。
(画像管理テーブル)
図14の(C)は、画像管理テーブルを示す概念図である。この画像管理テーブルでは、装置ID毎に、撮影画像データの画像ID、撮影画像データのファイル名、撮影日時、撮影位置を示す位置情報が関連付けて管理されている。このうち、画像IDは、撮影画像データを識別するための画像識別情報の一例である。撮影画像データのファイル名は、この関連付けられている画像IDで示される撮影画像データのファイル名である。撮影日時は、この関連付けられている撮影画像データが装置IDで示される撮影装置1で撮影された日時である。位置情報は撮影画像データに含まれるGPSの位置情報である。撮影画像データは、記憶部5000に記憶されている。
(サムネイル管理テーブル)
図14の(D)は、サムネイル管理テーブルを示す概念図である。サムネイル管理テーブルでは、画像ID毎に、サムネイルデータのサムネイルID、サムネイルデータのファイル名、撮影日時、位置情報、及び所定領域情報が関連付けて管理されている。このうち、サムネイルIDは、画像データに基づいて作成されたサムネイルデータを識別するためのサムネイル識別情報の一例である。サムネイルデータのファイル名は、サムネイルデータのファイル名である。所定領域情報は、元の撮影画像データにおけるサムネイルデータが作成された領域を示す。例えば、図6(a)の全天球パノラマ画像における所定領域Tの画像が、図6(b)に示されているが、サムネイルデータが作成される場合、この所定領域Tの画像である図6(b)のサムネイルデータが作成される。
(画像グループ管理テーブル)
図14の(E)は、画像グループ管理テーブルを示す概念図である。この画像グループ管理テーブルでは、画像のグループを示す画像グループID、画像を撮影した撮影装置1の装置ID、撮影位置が含まれる拠点の拠点ID、このグループに属する一以上の撮影画像の画像IDが含まれる画像IDリスト、及びグループ名が関連付けられて管理されている。
(画像管理システムの各機能構成)
次に、図11及び図13を用いて、画像管理システム5の各機能構成について詳細に説明する。
画像管理システム5の送受信部51は、主に、図11に示されているネットワークI/F509及びCPU501の処理によって実現され、通信ネットワーク9を介して通信端末3、又は通信端末7と各種データ(または情報)の送受信を行う。
画像管理システム5の算出部53は、主に、図11に示されているCPU501の処理によって実現され、撮影画像データから特徴点を算出する処理等を行う。
画像管理システム5の生成部54は、主に、図11に示されているCPU501の処理によって実現され、撮影画像データからサムネイルデータを作成する処理等を行う。
画像管理システム5の検索部55は、主に、図11に示されているCPU501の処理によって実現され、一の撮影画像データに係る全天球パノラマ画像と類似する他の撮影画像データに係る全天球パノラマ画像を検索する処理等を行う。
記憶・読出部59は、主に、図11に示されているHDD505、及びCPU501の処理によって実現され、記憶部5000に各種データ(または情報)を記憶したり、記憶部5000から各種データ(または情報)を読み出したりする。
<通信端末7の機能構成>
次に、図11及び図13を用いて、通信端末7の機能構成について詳細に説明する。通信端末7は、送受信部71、受付部72、表示制御部73、及び、記憶・読出部79を有している。これら各部は、図11に示されている各構成要素のいずれかが、HD504からRAM503上に展開された通信端末7用プログラムに従ったCPU501からの命令によって動作することで実現される機能又は手段である。
また、通信端末7は、図11に示されているRAM503、及びHD504によって構築される記憶部7000を有している。
(通信端末7の各機能構成)
次に、図13を用いて、通信端末7の各機能構成について詳細に説明する。
通信端末7の送受信部71は、主に、図11に示されているネットワークI/F509及びCPU501の処理によって実現され、通信ネットワーク9を介して画像管理システム5と各種データ(または情報)の送受信を行う。
受付部72は、主に、図11に示されているキーボード511及びマウス512、並びにCPU501の処理によって実現され、利用者(図8では、閲覧者Y)からの操作入力を受け付ける。
表示制御部73は、主に、図11に示されているCPU501の処理によって実現され、通信端末7のディスプレイ508に各種画像を表示させるための制御を行なう。
記憶・読出部79は、主に、図11に示されているHDD505、及びCPU501の処理によって実現され、記憶部7000に各種データ(または情報)を記憶したり、記憶部7000から各種データ(または情報)を読み出したりする。
<<実施形態の処理>>
続いて、本実施形態の処理について説明する。まず、図15を用いて、撮影画像をアップロードする処理について説明する。図15は、撮影画像をアップロードする処理の一例を示すシーケンス図である。
設置者Xは、定点観測する店舗等の拠点において、撮影装置1の設置位置を決定するために、拠点の異なる位置で撮影装置1により全天球パノラマ画像を撮影する。全天球パノラマ画像が撮影されると、撮影装置1の記憶・読出部19は、撮影画像に係る撮影画像データ、関連情報、所定領域情報、及び撮影装置1の装置IDを記憶部1000に記録する。関連情報は、撮影日時等を示す。所定領域情報は、撮影装置1の工場出荷時に予め定められた視点方向を示している。
設置者Xは、撮影後、撮影装置1を通信端末3に接続する。これにより、通信端末3の接続部38は、撮影装置1の接続を検出する。通信端末3の接続部38は、撮影装置1の記憶部1000へアクセスして、撮影装置1から通信端末3へ、撮影画像データ、関連情報、所定領域情報、及び撮影装置1の装置IDを転送させる(ステップS21)。
次に、通信端末3の送受信部31は、画像管理システム5に対して、画像の登録要求を送信する(ステップS22)。この画像の登録要求には、ステップS21で通信端末3へ転送された装置ID、撮影画像データ、関連情報、所定領域情報、及び撮影装置1の装置IDが含まれている。これにより。画像管理システム5の送受信部51は、画像の登録要求を受信する。画像管理システム5の記憶・読出部59は、受信されたそれぞれの撮影画像データに対して、画像IDを割り当てて記憶部5000において管理する(ステップS23)。
画像管理システム5の算出部53は、受信された撮影画像データによって示される全天球パノラマ画像から特徴量を算出する(ステップS24)。特徴量を算出方法は、特に限定されないが、例えば、Harrisのコーナー検出法、SURF(Speeded Up Robust Features)、又はSIFT(Scale Invariant Feature Transform)等の任意のアルゴリズムを用いた方法が挙げられる。
図16、及び図17は全天球パノラマ画像又はメルカトル画像上の特徴点を示す概念図である。特徴量の算出方法の一例として、算出部53は、まず、全天球パノラマ画像(図16の(A)参照)の両極を結ぶ半円周S1を辺として展開したメルカトル画像(図16の(B)参照)から特徴量を算出する。図16の(B)のメルカトル画像の特徴量の算出から、半円周S1上の特徴点F1,F2を検出することはできない。続いて、算出部53は、全天球パノラマ画像(図16の(C)参照)の両極を結ぶ他の半円周S2を辺として展開したメルカトル画像(図16の(D)参照)から特徴量を算出する。なお、半円周S2は、半円周S1に対向している。図16の(D)のメルカトル画像の特徴量の算出から、特徴点F2は検出されるが、特徴点F1は検出されない。
続いて、算出部53は、全天球パノラマ画像(図17の(A)参照)の赤道上の半円周S3を辺として展開したメルカトル画像(図17の(B)参照)から特徴量を算出する。図17の(B)のメルカトル画像の特徴量の算出から、特徴点F1は検出されるが、特徴点F2は検出されない。続いて、算出部53は、全天球パノラマ画像(図17の(C)参照)の赤道上の他の半円周S4を辺として展開したメルカトル画像(図17の(D)参照)から特徴量を算出する。なお、半円周S4は、半円周S3に対向したものである。図17の(D)のメルカトル画像の特徴量の算出から、特徴点F1,F2は検出される。複数のパターンで展開されたメルカトル画像から得られた特徴量は、撮影画像データの画像IDに関連付けられて、記憶・読出部59によって、記憶部5000に記憶される。
上記のように、算出部53は、全天球パノラマ画像を複数のパターンで展開したメルカトル画像から特徴量を算出することで、全天球パノラマ画像の極、及び赤道を含む任意の位置の特徴点を検出することができる。なお、全天球パノラマ画像を展開するパターンの数は4つに限定されず、2つ以上の任意の数であっても良い。
ステップS24で撮影画像データごとに、複数のメルカトル画像から特徴量が算出されると、検索部55は、一の撮影画像データから算出された特徴量と、記憶部5000に記憶されている他の撮影画像データから算出された特徴量とを比較する。これにより、検索部55は、一の撮影画像データに係る全天球パノラマ画像と類似する他の撮影画像データに係る全天球パノラマ画像を検索する(ステップS25)。なお、類似画像の検索方法としては、任意の画像検索方法が用いられる。
ステップS24で、一の撮影画像データに係る全天球パノラマ画像に類似する他の撮影画像データに係る全天球パノラマ画像が検索された場合、記憶・読出部59は、画像グループ管理テーブル(図14の(E)参照)において、他の撮影画像データの画像IDが登録されている画像IDリストに、一の撮影画像データの画像IDを追加する(ステップS26)。これにより、一の撮影画像データ、及び他の撮影画像データが共通の画像グループIDに関連付けられることになる。
ステップS24で、一の撮影画像データに係る全天球パノラマ画像に類似する他の撮影画像データに係る全天球パノラマ画像が検索されなかった場合、記憶・読出部59は、新たな画像グループID、及びグループ名を生成し、生成した画像グループID、及びグループ名に関連付けて、一の撮影画像データに係る装置ID、及び拠点ID、並びに画像IDリストとして一の撮影画像データの画像IDを関連付けてグループ管理テーブルに登録する(ステップS26)。
続いて、記憶・読出部59は、各管理テーブルに対してその他の情報を記録する(ステップS28)。具体的には、記憶・読出部59は、端末管理テーブル(図14の(B)参照)に、ステップS22で受信された装置ID、及び所定領域情報を記録する。また、記憶・読出部59は、画像管理テーブル(図14の(C)参照)に、新たなレコードとして、受信された撮影画像データに係る装置ID、ステップS23で割り当てられた画像ID、撮影画像データのファイル名、撮影日時、及び撮影画像データから抽出されるGPSの位置情報を関連付けて記録する。
続いて、生成部54は、ステップS22で受信された所定領域情報に基づいて、撮影画像データから所定領域のサムネイルデータを作成する(ステップS29)。記憶・読出部59は、生成されたサムネイルデータに対して、サムネイルIDを割り当て、サムネイルデータに関連付けて記憶部5000に記録する。
記憶・読出部59は、サムネイル管理テーブル(図14の(D)参照)に、新たなレコードとして、サムネイルデータの元の撮影画像データを示す画像ID、サムネイルデータのサムネイルID、サムネイルデータのファイル名を関連付けて記録する(ステップS30)。記憶・読出部59は、元の撮影画像データの位置情報、撮影日時、及び所定領域情報をサムネイルIDに関連付けて記録する。これにより、元の撮影画像データの情報を含むサムネイルデータに関する情報が、サムネイル管理テーブルで一元管理される。
続いて、通信端末7が撮影装置1によって撮影された画像を要求する処理について説明する。図18は、撮影画像を要求する処理の一例を示すシーケンス図である。一実施形態において、通信端末7の記憶部7000は、拠点名、拠点ID、及びその拠点に設置される撮影装置1の装置IDを管理している。
通信端末7の表示制御部73は、記憶部7000において管理されている拠点名、及びその拠点に設置される撮影装置1の装置IDが含まれた選択画面をディスプレイ508へ出力する。図19の(A)は、選択画面の一例を示す図である。通信端末7の受付部72は、閲覧者Yの操作に基づいて、どの拠点の撮影画像を要求するか、又はどの撮影装置1による撮影画像を要求するかの選択を受け付ける(ステップS31)。
通信端末7の送受信部71は、受付部72によって受け付けられた拠点名に対応する拠点ID、又は受付部72によって受け付けられた装置IDを含むサムネイルの要求を画像管理システム5へ送信する(ステップS32)。
画像管理システム5の送受信部51は、通信端末7によって送信されたサムネイルの要求を受信する。サムネイルの要求に拠点IDが含まれている場合、画像管理システム5の記憶・読出部59は、サムネイルの要求に含まれる拠点IDを検索キーとして拠点管理テーブル(図14の(A)参照)を検索し、対応する装置IDを読み出す。例えば、サムネイルの要求に含まれる拠点IDが「s001」である場合、拠点管理テーブルからは、装置ID「t0001,t0002」が読み出される。サムネイルの要求に拠点IDが含まれていなく、装置IDが含まれている場合、この処理は実行されない。
サムネイルの要求に含まれる拠点IDに基づいて、対応する装置IDが読み出された場合、画像管理システム5の記憶・読出部59は、この装置IDを検索キーとして画像管理テーブル(図14の(C)参照)を検索する。或いは、サムネイルの要求に装置IDが含まれていた場合、画像管理システム5の記憶・読出部59は、この装置IDを検索キーとして画像管理テーブルを検索する。上記のいずれかの処理により、記憶・読出部59は、装置IDに対応する撮影画像の画像IDを読み出す(ステップS33)。この処理で、例えば、装置ID「t0001」を検索キーとした検索により画像ID「i11, i12, i13」が読み出され、装置ID「t0002」を検索キーとした検索により画像ID「i21, i22, i23」が読み出される。
続いて、画像管理システム5の記憶・読出部59は、ステップS33で読み出された画像IDを検索キーとして、サムネイル管理テーブル(図14の(D)参照)を検索し、対応するサムネイル画像のサムネイルID、及び撮影日時を読み出す(ステップS34)。この処理で、例えば、画像ID「i11, i12, i13, i21, i22, i23」を検索キーとした検索により、各画像IDに対応する6つのサムネイルID、及び撮影日時が読み出される。
更に、記憶・読出部59は、ステップS33で読み出された画像IDを検索キーとして、画像グループ管理テーブル(図14の(E)参照)の画像IDリストのフィールドを検索し、対応する画像グループID、及びグループ名を読み出す(ステップS35)。この処理で、例えば、画像ID「i11」を検索キーとした検索により画像グループID「v00001」及びグループ名「場所1」が読み出され、画像ID「i12, i13」を検索キーとした検索により画像グループID「v00002」及びグループ名「場所2」が読み出される。更に、画像ID「i21」を検索キーとした検索により画像グループID「v00003」及びグループ名「場所3」が読み出され、画像ID「i22, i23」を検索キーとした検索により画像グループID「v00004」及びグループ名「場所4」が読み出される。
画像管理システム5の送受信部51は、ステップS33で読み出された画像ID、ステップS34で読み出されたサムネイルID、このサムネイルIDに対応するサムネイルデータ、ステップS35で読み出された画像グループID、及びグループ名をサムネイルの要求元の通信端末7へ送信する(ステップS36)。ステップS33で読み出された画像IDが複数ある場合、画像IDごとに、対応するサムネイルID、サムネイルデータ、画像グループID、及びグループ名を通信端末7へ送信する。
通信端末7の送受信部71は、画像管理システム5によって送信された画像ID、サムネイルID、サムネイルデータ、画像グループID、及びグループ名を受信する。通信端末7の表示制御部73は、画像管理システム5から送られてきたサムネイルデータ、及びグループ名を対応付けてディスプレイ508から出力する(ステップS37)。図19の(B)は、ステップS37におけるディスプレイの表示例である。例えば、ステップS36でグループ名が「場所2」である2つのサムネイルデータが受信され、グループ名が「場所4」である2つのサムネイルデータが受信された場合、ステップS37では、図19の(B)のように、グループ名「場所2」又は「場所4」に対応付けられてそれぞれ2つのサムネイルが表示されることになる。
閲覧者Yが、ディスプレイ508に表示されているサムネイルの中から任意のサムネイルを選択すると、通信端末7の受付部72はサムネイルの元画像の要求の入力を受け付ける(ステップS38)。通信端末7の送受信部71は、選択されたサムネイルのサムネイルIDを含む元画像の要求を画像管理システム5へ送信する(ステップS39)。
画像管理システム5の送受信部51は、通信端末7によって送信される元画像の要求を受信する。画像管理システム5の記憶・読出部59は、元画像の要求に含まれるサムネイルIDを検索キーとしてサムネイル管理テーブルを検索し、対応する画像IDを読み出す。更に、記憶・読出部59は、読み出された画像IDを検索キーとして、画像管理テーブルを検索し、対応する撮影画像データのファイル名を特定する。更に、記憶・読出部59は、特定されたファイル名の撮影画像データを記憶部5000から読み出す(ステップS40)。画像管理システム5の送受信部51は、ステップS40で読み出された元画像の撮影画像データを通信端末7へ送信する(ステップS41)。
通信端末7の送受信部71は、画像管理システム5によって送信された元画像の撮影画像データを受信する。通信端末7の表示制御部73は、画像管理システム5から送られてきた元画像の撮影画像データをディスプレイ508から出力する(ステップS42)。図20は、ステップS42におけるディスプレイの表示例である。ディスプレイ508には、元画像の全天球パノラマ画像の一部が表示される。通信端末7の表示制御部73は、閲覧者Yによる操作に応じて、全天球パノラマ画像における所定の表示領域の画像をディスプレイ508から出力させる。
続いて、グループ名を変更する処理について説明する。図21は、グループ名を変更する処理の一例を示すシーケンス図である。通信端末7の受付部72は、閲覧者Yによる操作に応じて、グループ名の変更画面の要求の入力を受け付ける。この要求に応じて、通信端末7の表示制御部73は、グループ名の変更画面をディスプレイ508から出力する。図22は、グループ名の変更画面の一例を示す図である。図22の変更画面において、表示制御部73は、グループ名ごとに変更を受け付けるためのボタンBを表示させる。閲覧者によってボタンBが選択されると、表示制御部73は、そのグループの変更後のグループ名を入力するための入力欄Iを表示させる。閲覧者によって入力欄Iに変更後のグループ名が入力されると、受付部72は、変更後のグループ名を受け付ける(ステップS51)。通信端末7の送受信部71は、変更するグループの画像グループID、及び入力された変更後のグループ名を含むグループ名の変更要求を画像管理システム5へ送信する(ステップS52)。
画像管理システム5の送受信部51は、通信端末7によって送信されたグループ名の変更要求を受信する。画像管理システム5の記憶・読出部59は、画像グループ管理テーブル(図14の(E)参照)において、グループ名の変更要求に含まれる画像グループIDに対応するグループ名を、グループ名の変更要求に含まれる変更後のグループ名に更新する(ステップS53)。これにより、以後、画像管理システム5から通信端末7へグループ名が送信されるときには、変更後のグループ名が送信されることになる。
続いて、画像を削除する処理について説明する。図23は、画像を削除する処理の一例を示すシーケンス図である。通信端末7の受付部72は、閲覧者Yによる操作に応じて、画像の削除操作の画面の要求の入力を受け付ける。この要求に応じて、通信端末7の表示制御部73は、画像の削除操作の画面をディスプレイ508から出力する。図24は、画像の削除操作の画面の一例を示す図である。図24の変更画面において、表示制御部73は、画像毎に画像の削除を受け付けるためのチェックボックスCを表示させる。
閲覧者Yの操作によりチェックボックスCが選択されると、受付部72は、削除対象の画像の選択を受け付ける(ステップS61)。通信端末7の送受信部71は、削除対象の画像の画像IDを含む画像の削除要求を画像管理システム5へ送信する(ステップS62)。
画像管理システム5の送受信部51は、通信端末7によって送信された画像の削除要求を受信する。画像管理システム5の記憶・読出部59は、画像の削除要求に含まれる画像IDの撮影画像データを、記憶部5000から削除する(ステップS63)。また、記憶・読出部59は、画像管理テーブル(図14の(C)参照)から、画像の削除要求に含まれる画像IDと同じ画像IDが記録されたレコードを削除する(ステップS64)。また、画像管理システム5の記憶・読出部59は、サムネイル管理テーブル(図14の(D)参照)から、画像の削除要求に含まれる画像IDと同じ画像IDが記録されたレコードを削除する(ステップS65)。更に、画像管理システム5の記憶・読出部59は、画像グループ管理テーブル(図14の(E)参照)の画像IDリストから、画像の削除要求に含まれている画像IDと同じ画像IDを削除する(ステップS66)。この削除の処理により、画像グループ管理テーブルの画像IDリストが空値となった場合、その画像IDが記録されていたレコードを削除する。これにより、画像IDに対応するグループID及びグループ名も削除されることになる。
<<実施形態の変形例A>>
続いて実施形態の変形例Aについて、上記の実施形態と異なる点を説明する。図25は、変形例Aにおける撮影画像を要求する処理の一例を示すシーケンス図である。変形例Aにおいて、通信端末7の記憶部7000には、拠点名、拠点を示す拠点ID、及びその拠点における画像の撮影日が記録されている。
通信端末7の表示制御部73は、記憶部7000において管理されている拠点名、及びその拠点における画像の撮影日が含まれた選択画面をディスプレイ508へ出力する。図26は、選択画面の一例を示す図である。これにより、通信端末7の受付部72は、どの拠点のどの撮影日の画像を要求するかの選択を受け付ける(ステップS31A)。
通信端末7の送受信部71は、受付部72によって受け付けられた拠点名に対応する拠点ID、及び撮影日を含むサムネイルの要求を画像管理システム5へ送信する(ステップS32A)。画像管理システム5の送受信部51は、通信端末7によって送信されたサムネイルの要求を受信する。
画像管理システム5の記憶・読出部59は、サムネイルの要求に含まれる拠点IDを検索キーとして拠点管理テーブル(図14の(A)参照)を検索し、対応する装置IDを読み出す。更に、画像管理システム5の記憶・読出部59は、上記の処理で読み出された装置IDを検索キーとして、画像管理テーブル(図14の(C)参照)を検索する。これにより、記憶・読出部59は、装置IDに対応する撮影画像の画像ID、及び撮影日時を読み出す(ステップS33A)。
続いて、画像管理システム5の記憶・読出部59は、ステップS33Aで読み出された画像IDのうち対応する撮影日がサムネイルの要求に含まれる撮影日と一致する画像IDを検索キーとして、サムネイル管理テーブル(図14の(D)参照)を検索し、対応するサムネイル画像のサムネイルIDを読み出す(ステップS34A)。
更に、記憶・読出部59は、ステップS33Aで読み出された画像IDのうち対応する撮影日がサムネイルの要求に含まれる撮影日と一致する画像IDを検索キーとして、画像グループ管理テーブル(図14の(E)参照)の画像IDリストのフィールドを検索し、対応する画像グループID、及びグループ名を読み出す(ステップS35A)。
サムネイルID、画像グループID、及びグループ名が読み出されてからの処理は、上記実施形態のステップS36乃至S42と同様である。但し、ステップS42で通信端末7の表示制御部73がサムネイルを表示させる際に、サムネイルに関連付けて撮影日を表示しても良い。これにより、閲覧者はサムネイルの画像の撮影日を把握することができる。
<<実施形態の変形例B>>
続いて実施形態の変形例Bについて、上記の実施形態と異なる点を説明する。図27は、変形例Bにおける撮影画像を要求する処理の一例を示すシーケンス図である。通信端末7の受付部72は、撮影画像の要求を受け付けるときに、どの拠点の撮影画像を要求するか、又はどの撮影装置1による撮影画像を要求するかの選択を受け付けるかの指定に加え、グループごとに1枚の画像を出力する要求を受け付けることができる(ステップS31B)。
通信端末7の送受信部71は、受付部72によって受け付けられた拠点名に対応する拠点ID、又は受付部72によって受け付けられた装置IDを含むサムネイルの要求を画像管理システム5へ送信する(ステップS32B)。ここで、上記のグループごとに1枚の画像を出力する要求が受け付けられた場合には、送受信部71は、グループごとに1枚の画像を出力する要求を示すフラグをサムネイルの要求に含めて画像管理システム5へ送信する。画像管理システム5の送受信部51は、通信端末7によって送信されたサムネイルの要求を受信する。
画像管理システム5の記憶・読出部59は、上記実施形態のステップS33の処理と同様にして、撮影画像の画像IDを読み出す。続いて、画像管理システム5の記憶・読出部59は、ステップS33で読み出された画像IDを検索キーとして、サムネイル管理テーブル(図14の(D)参照)を検索し、対応するサムネイル画像のサムネイルID、及び撮影日時を読み出す(ステップS34B)。ただし、ステップS33で読み出された画像IDのうち、画像グループ管理テーブル(図14の(E)参照)において共通のグループに対応付けられている複数の画像IDがある場合、複数の画像IDのうち一の画像IDをステップS34Bにおける検索キーとして用いる。
更に、記憶・読出部59は、ステップS34Bの検索キーの画像IDを用いて、画像グループ管理テーブル(図14の(E)参照)のグループに属する画像IDリストのフィールドを検索し、対応する画像グループID、及びグループ名を読み出す(ステップS35B)。
以後の処理は上記実施形態のステップS36乃至S42の処理と同様である。ただし、変形例Bではグループごとに一のサムネイルだけが画像管理システム5から通信端末7へ送信される。これにより、ステップS37では、グループごとに一のサムネイルだけが表示されるので、サムネイルの選択が容易になる。図28は、変形例BのステップS37におけるディスプレイの表示例である。
<<実施形態の変形例C>>
続いて実施形態の変形例Cについて、上記の実施形態と異なる点を説明する。図29は、撮影画像をアップロードする処理の一例を示すシーケンス図である。図29の処理において、類似画像を検索する処理までは、上記実施形態のステップS21乃至S25と同様である。
ステップS25で類似する全天球パノラマ画像が検索された場合、算出部53は、類似する複数の全天球パノラマ画像に対し、撮影位置が相対的に高いものから撮影位置が相対的に低いものに並べたときの順序を決定する(ステップS26C1)。順序の決定方法は、特に限定されないが、複数の全天球パノラマ画像の共通の特徴点間の距離として、例えば、天井の梁のコーナー間の距離を算出し、距離が大きい順に並べる方法が挙げられる。
記憶・読出部59は、画像グループ管理テーブル(図14の(E)参照)の画像IDリストにおいて、画像IDを記録するときに、ステップS26C1で決定された順序を示す情報を含める(ステップS26C2)。順序を示す情報を含める方法は特に限定されないが、例えば、画像ID「i12」の順序が「1」であり、画像ID「i13」の順序が「2」である場合に、「i12, 1, i13,2」のように、画像IDの後に順序を示す情報を含めて、記憶・読出部19が画像IDリストに記録する方法が挙げられる。
続いて、生成部54は、ステップS25で画像の撮影画像データからサムネイルデータを作成する際に、ステップS26C1で決定された順序に応じてサムネイルにする領域を調整する(ステップS29C)。例えば、生成部54は、順序が小さい、すなわち、撮影位置が相対的に高い全天球パノラマ画像の撮影画像データからサムネイルを作成するときに、順序が大きい、すなわち、撮影位置が相対的に低い全天球パノラマ画像の撮影画像データからサムネイルを作成するときよりも、全天球パノラマ画像における低緯度の領域を用いる。これにより、撮影位置が異なる撮影画像データからサムネイルを作成する場合でも、概ね同じ視点のサムネイルを作成することが可能になる。
以後、ステップS36の処理で、画像管理システム5から通信端末7へサムネイルに対応する画像IDを送信する際に、上記の順序を示す情報を対応づけて送信しても良い。これにより、ステップS37で通信端末7の表示制御部73がサムネイルを表示させるときに、順序を示す情報に基づいてサムネイルを撮影位置の高さ順に並べて表示することもできる。図30は変形例Cにおけるディスプレイの表示例である。変形例Cによると、サムネイルの視点を揃えられるので、サムネイルの画像を比較しやすくなる。
<<実施形態の変形例D>>
続いて実施形態の変形例Dについて、上記の実施形態と異なる点を説明する。図31は、変形例Dにおける撮影画像を要求する処理の一例を示すシーケンス図である。
以下、画像管理システム5が、通信端末7によるサムネイルの要求に応じて、ステップS33乃至S35の処理を実行してからの処理について説明する。画像管理システム5の記憶・読出部59は、拠点管理テーブル(図14の(A))を参照して、サムネイルの要求に含まれる拠点ID、又は装置IDに対応するレイアウトマップのファイルを特定する。画像管理システム5の送受信部51は、特定されたレイアウトマップのファイルを通信端末7へ送信する(ステップS36D1)。
画像管理システム5の送受信部51は、ステップS33で読み出された画像ID、この画像IDを検索キーとしてステップS34で読み出されたサムネイルID、このサムネイルIDに対応するサムネイルデータ、並びに、この画像IDを検索キーとしてステップS35で読み出された画像グループID、及びグループ名を、サムネイルの要求元の通信端末7へ送信する(ステップS36D2)。このとき、送受信部51は、サムネイルごとに、サムネイルの元画像の撮影画像データからGPSの位置情報を抽出して、通信端末7へ送信する。
通信端末7の送受信部71は、画像管理システム5によって送信された画像ID、サムネイルID、サムネイルのファイル、画像グループID、グループ名、及びGPSの位置情報を受信する。通信端末7の表示制御部73は、画像管理システム5から送られてきたサムネイルのファイル、及びサムネイルに対応するグループ名をディスプレイ508に表示させる(ステップS37D)。また、表示制御部73は、画像管理システム5から送られてきたレイアウトマップをディスプレイ508に表示させる。更に、表示制御部73は、画像管理システム5から送られてきたグループ名、及びこのグループのサムネイルに対応するGPSの位置情報に基づいて、レイアウトマップ上の対応する位置にグループ名を表示する。図32は、ステップS37Dにおけるディスプレイの表示例である。変形例Dによると、閲覧者Yは、レイアウトマップにより撮影位置の把握が容易になる。
<<本実施形態の主な効果>>
以上説明したように本実施形態の画像管理方法によれば、画像管理システム5の生成部54(生成手段の一例)は、撮影装置1によって撮影される全天球パノラマ画像のサムネイルを生成する(生成処理の一例)。画像管理システム5の算出部53(算出手段の一例)は、全天球パノラマ画像が複数のパターンで展開された展開画像から特徴量を算出する(算出処理の一例)。画像管理システム5の検索部55(検索手段の一例)は、一の全天球パノラマ画像の複数の展開画像から算出される特徴量、及び他の全天球パノラマ画像の複数の展開画像から算出される特徴量に基づいて、一の全天球パノラマ画像に類似する他の全天球パノラマ画像を検索する(検索処理の一例)。画像管理システム5の送受信部51(出力手段の一例)は、撮影装置1によって撮影された画像の要求に応じて、生成部54によって生成される全天球パノラマ画像のサムネイル、及び全天球パノラマ画像のグループ名(属性情報の一例)を要求元に送信(出力の一例)する(出力処理の一例)。このとき、送受信部51は、一の全天球パノラマ画像、及び一の全天球パノラマ画像に類似する他の全天球パノラマ画像に対して同じグループ名を出力する。これにより、閲覧者Yは、サムネイルの元となる全天球パノラマ画像が類似しているか判断しやすくなる。
画像管理システム5の送受信部51は、グループ名として、撮影位置の名称を出力する。これにより、閲覧者Yは、撮影装置1の設置位置を決定しやすくなる。
画像管理システム5の記憶部5000(管理手段の一例)の拠点管理テーブルは、拠点ID、及び拠点に設置される撮影装置1の装置IDを関連付けて管理する。画像管理システム5の送受信部51は、所定の拠点で撮影された画像の要求に応じて、拠点管理テーブルにおいて、所定の拠点の拠点IDに関連付けられている装置IDの撮影装置1で撮影された全天球パノラマ画像から生成部54によって生成されるサムネイルを出力する。これにより、画像管理システム5は、拠点の指定を受け付けることで、その拠点で撮影された画像を出力することができる。
画像管理システム5の記憶部5000の画像管理テーブルは、全天球パノラマ画像の撮影日時(撮影時期の一例)を示す情報を管理する。画像管理システム5の送受信部51は、所定の時期に撮影された画像の要求に応じて、画像管理テーブルにおいて管理されている撮影時期を示す情報に基づいて、所定の時期に撮影された全天球パノラマ画像から前記生成部54によって生成されるサムネイルを出力する。これにより、画像管理システム5は、撮影時期の指定を受け付けることで、その撮影時期に撮影された画像を出力することができる。
画像管理システム5の送受信部51(受付手段の一例)は、グループ名の変更要求を受け付ける。画像管理システム5の送受信部51は、変更要求に応じて変更されたグループ名を出力する。画像管理システム5は、変更要求に応じたグループ名を出力することで、変更要求元の撮影位置の把握が容易になる。
画像管理システム5の送受信部51は、グループごとに一の画像の要求を示すフラグの受信に応じて、グループ名が共通するサムネイルに対し一のサムネイルを出力する。これにより、閲覧者Y側では、類似する複数のサムネイルを確認しなくても良くなる。
画像管理システム5の算出部53(決定手段の一例)は、一の全天球パノラマ画像の複数の展開画像から算出される特徴量、及び他の全天球パノラマ画像の複数の展開画像から算出される特徴量に基づいて、一の全天球パノラマ画像の撮影位置、及び他の全天球パノラマ画像の撮影位置の相対的な高さを決定する。画像管理システム5の送受信部51は、決定された高さを示す情報を出力する。これにより、サムネイルの閲覧者Y側では、撮影装置1の設置位置の高さを決定しやすくなる。
画像管理システム5の生成部54は、全天球パノラマ画像から、撮影位置の高さを示す情報に基づいて全天球パノラマ画像からサムネイルにする領域を調整する。これにより、画像管理システム5は、略同一の視点のサムネイルを作成することができる。
画像管理システム5の送受信部51は、全天球パノラマ画像のサムネイルごとに、撮影画像データから抽出されるGPSの位置情報を示す情報(絶対位置を示す情報の一例)を出力する。これにより、閲覧者Y側では、グループごとの絶対的な位置関係を、レイアウトマップ上で出力することが可能になる。
画像管理システム5の記憶・読出部59(削除手段の一例)は、所定の全天球パノラマ画像の削除の要求に応じて、記憶部5000において管理されている所定の全天球パノラマ画像を削除する。これにより、画像管理システム5は、削除要求元の要求に基づいて、全天球パノラマ画像を削除することができる。
画像管理システム5の記憶部5000の画像グループ管理テーブルは、グループ名に関連付けて、全天球パノラマ画像の画像IDを管理する。画像管理システム5の記憶・読出部59による全天球パノラマ画像の削除に伴って、画像グループ管理テーブルにおいて、グループ名に関連付けられる全天球パノラマ画像が無くなるときに、記憶・読出部59は、画像グループ管理テーブルからグループ名を削除する。これにより、画像管理システム5は、管理しなくても良くなるグループ名を削除することができる。