図1を参照して、本実施形態に係る情報処理システムについて説明する。図1には、本実施形態に係る情報処理システムの構成の一例が示されている。
本実施形態に係る情報処理システムは、情報処理装置10と、1又は複数のセンサ12と、1又は複数の端末装置14とを含む。
情報処理装置10、センサ12及び端末装置14は、他の装置や他のセンサと通信する機能を有する。その通信は、ケーブルを利用する有線通信であってもよいし、無線通信であってもよい。つまり、各装置や各センサは、他の装置とケーブルによって物理的に接続されて、情報を互いに送受信してもよいし、無線通信によって互いに情報を送受信してもよい。無線通信として、例えば、近距離無線通信やWi-Fi(登録商標)等が用いられる。これら以外の規格の無線通信が用いられてもよい。近距離無線通信は、例えば、Bluetooth(登録商標)やRFID(Radio Frequency Identifier)やNFC等である。例えば、各装置は、LAN(Local Area Network)やインターネット等の通信経路Nを介して他の装置と通信してもよい。
本実施形態に係る情報処理システムにおいては、現在の状況を表す画像(以下、「第1画像」と称する)に、過去の状況におけるオブジェクトに関する画像(以下、「第2画像」と称する)が重ねられてディスプレイに表示される。
オブジェクトは、有体物であってもよいし、無体物であってもよい。
有体物は、例えば、現実の空間に配置される物理的な物体である。有体物は、特に限定されるものではなく、例えば、機器、工具、文房具、筆記具、家財道具、調理器具、スポーツ器具、医療器具、農具、漁具、実験器具、又は、その他の物理的な物である。機器は、特に限定されるものではなく、例えば、パーソナルコンピュータ(以下、「PC」と称する)、タブレットPC、スマートフォン、携帯電話、ロボット(人型ロボット、人以外の動物型ロボット、それら以外のロボット等)、プリンタ、スキャナ、複合機、プロジェクタ、液晶ディスプレイ等の表示装置、記録装置、再生装置、カメラ等の撮像装置、冷蔵庫、炊飯器、電子レンジ、コーヒーメーカー、掃除機、洗濯機、空調機、照明機器、時計、監視カメラ、自動車、二輪車、航空機(例えば無人航空機(いわゆるドローン))、ゲーム機、各種のセンシング機器(例えば温度センサ、湿度センサ、電圧センサ、電流センサ等)等の装置である。機器は、情報機器、映像機器、又は、音響機器であってもよい。
無体物は、例えば、ディスプレイに表示される画像(例えば静止画像や動画像)や文字列である。画像は、特に限定されるものではなく、カメラ等の撮影装置によって撮影することで生成された画像であってもよいし、特定の機能が紐付けられたアイコンであってもよいし、特定の操作に関する画像であってもよい。
情報処理装置10は、画像を管理するように構成されている装置である。例えば、センサ12や端末装置14やその他の装置によって撮影が行われることで画像が生成され、その画像が情報処理装置10に送信される。情報処理装置10は、その画像を管理する。別の例として、ディスプレイに表示されている画像が情報処理装置10に送信され、情報処理装置10は、その画像を管理する。例えば、情報処理装置10は、各画像を時系列に沿って管理する。
第2画像は、オブジェクトそのものを表す画像(例えば、物体を表す画像やアイコン等)であってもよいし、オブジェクトを案内する画像(例えば、物体やアイコンを指し示す矢印の画像等)であってもよい。例えば、センサ12や端末装置14等によって撮影することで生成された画像から、物体そのものを表す画像が抽出され、その抽出された画像が第2画像として管理されてもよい。また、ディスプレイに表示されている画像からアイコンが抽出され、その抽出されたアイコンが第2画像として管理されてもよい。
センサ12は、空間に配置される有体物を検知する機能を有する装置である。例えば、センサ12は、カメラ、赤外線センサ又は超音波センサ等である。例えば、空間内に配置された有体物がカメラによって撮影され、その撮影によって生成された静止画像や動画像が、カメラから情報処理装置10に送信されて情報処理装置10にて管理される。
なお、有体物が配置される空間は、閉じられた空間であってもよいし、開放された空間であってもよい。例えば、空間は、ブース、会議室、シェアルーム、シェアオフィス等のオフィス、教室、店舗、広場、又は、これら以外の区切られた場所等である。
端末装置14は、例えば、PC、タブレットPC、スマートフォン又は携帯電話等である。端末装置14は、ユーザに装着される装置(例えばウェアラブルデバイス)であってもよい。ウェアラブルデバイスは、メガネ型の装置であってもよいし、目に装着されるコンタクトレンズ型の装置であってもよいし、ヘッドマウントディスプレイ(HMD)であってもよいし、耳に装着される装置(例えばヒアラブルデバイス)であってもよい。
以下、図2を参照して、情報処理装置10のハードウェアの構成について説明する。図2には、情報処理装置10のハードウェアの構成の一例が示されている。
情報処理装置10は、例えば、通信装置16と、UI18と、メモリ20と、プロセッサ22とを含む。
通信装置16は、通信チップや通信回路等を有する通信インターフェースであり、他の装置に情報を送信する機能、及び、他の装置から送信されてきた情報を受信する機能を有する。通信装置16は、無線通信機能を有してもよいし、有線通信機能を有してもよい。通信装置16は、例えば近距離無線通信を利用することで他の装置と通信してもよいし、LANやインターネット等の通信経路を介して他の装置と通信してもよい。
UI18はユーザインターフェースであり、ディスプレイ及び操作装置の中の少なくとも1つを含む。ディスプレイは、液晶ディスプレイやELディスプレイ等の表示装置である。操作装置は、キーボードや入力キーや操作パネル等である。UI18は、ディスプレイと操作装置とを兼ね備えたタッチパネル等のUIであってもよい。なお、情報処理装置10は、UI18を含まなくてもよい。
メモリ20は、各種の情報を記憶する1又は複数の記憶領域を構成する装置である。メモリ20は、例えば、ハードディスクドライブ、各種のメモリ(例えばRAMやDRAMやROM等)、その他の記憶装置(例えば光ディスク等)、又は、それらの組み合わせである。1又は複数のメモリ20が情報処理装置10に含まれている。
メモリ20には、画像を管理するための画像管理情報が記憶されている。例えば、画像、当該画像が得られた日時を示す日時情報、当該画像が得られた場所を示す場所情報、及び、当該画像に表されているオブジェクトを識別するためのオブジェクト識別情報等が、画像管理情報に含まれている。
プロセッサ22は、情報処理装置10の各部の動作を制御するように構成されている。プロセッサ22は、メモリを有してもよい。
例えば、プロセッサ22は、画像を受けて、当該画像をメモリ20に記憶させて管理する。また、プロセッサ22は、第1画像に第2画像を重ねて表示する処理を実行する。例えば、プロセッサ22は、拡張現実技術(AR(Augmented Reality)技術)や複合現実技術(MR(Mixed Reality)技術)を用いることで、現実画像に過去画像を重ねて表示する。第1画像は、センサ12の一例であるカメラによる撮影によって生成されてもよいし、端末装置14による撮影によって生成されてもよい。
以下、図3を参照して、端末装置14のハードウェアの構成について説明する。図3には、端末装置14のハードウェアの構成の一例が示されている。
端末装置14は、例えば、通信装置24と、UI26と、カメラ28と、メモリ30と、プロセッサ32とを含む。
通信装置24は、通信チップや通信回路等を有する通信インターフェースであり、他の装置に情報を送信する機能、及び、他の装置から送信されてきた情報を受信する機能を有する。通信装置24は、無線通信機能を有してもよいし、有線通信機能を有してもよい。通信装置24は、例えば近距離無線通信を利用することで他の装置と通信してもよいし、LANやインターネット等の通信経路を介して他の装置と通信してもよい。
UI26はユーザインターフェースであり、ディスプレイ及び操作装置の中の少なくとも1つを含む。ディスプレイは、液晶ディスプレイやELディスプレイ等の表示装置である。操作装置は、キーボードや入力キーや操作パネル等である。UI26は、ディスプレイと操作装置とを兼ね備えたタッチパネル等のUIであってもよい。UI26は、マイクやスピーカを含んでもよい。
カメラ28は、撮影することで静止画像や動画像を生成する機能を有する撮影装置の一例である。
メモリ30は、各種の情報を記憶する1又は複数の記憶領域を構成する装置である。メモリ30は、例えば、ハードディスクドライブ、各種のメモリ(例えばRAMやDRAMやROM等)、その他の記憶装置(例えば光ディスク等)、又は、それらの組み合わせである。1又は複数のメモリ30が端末装置14に含まれている。
プロセッサ32は、端末装置14の各部の動作を制御するように構成されている。プロセッサ32は、メモリを有してもよい。
例えば、プロセッサ32は、画像をUI26のディスプレイに表示させる。プロセッサ32は、カメラ28やセンサ12による撮影によって生成された画像をディスプレイに表示させたり、第2画像をディスプレイに表示させたり、重ねられた状態の第1画像と第2画像をディスプレイに表示させたりする。また、プロセッサ32は、情報処理装置10のプロセッサ22によって行われる処理の一部又は全部を実行してもよい。例えば、プロセッサ32は、カメラ28によって撮影された第1画像に第2画像を重ねて表示する処理を実行してもよい。プロセッサ32は、AR技術やMR技術を用いることで、第1画像に第2画像を重ねて表示してもよい。
以下、図4を参照して、情報処理装置に記憶されている画像管理情報について詳しく説明する。図4には、画像データベースの一例が示されている。この画像データベースは画像管理情報の一例である。
画像データベースにおいては、画像毎に、当該画像が得られた日時を示す日時情報と、当該画像が得られた場所を示す場所情報と、当該画像に表されているオブジェクトを識別するためのオブジェクト識別情報と、当該画像と、備考情報とが紐付けられている。情報処理装置10のプロセッサ22は、センサ12や端末装置14や他の装置から画像を受け付けると、その画像を画像データベースに登録する。
ここでは一例として、オブジェクトは、現実の空間内に存在する有体物(図4中の存在物)である。状況管理データベースにて管理されている「場所」は、オブジェクトである有体物が配置されている場所である。状況管理データベースにて管理されている「画像」は、その場所にて、センサ12や端末装置14やその他の装置によって撮影することで生成された画像である。「存在物」は、その場所に存在し、その画像に表されている有体物である。状況管理データベースにて管理されている「日時」は、その画像が撮影された日時である。なお、図4に示す例では、有体物の状況が管理されているが、無体物の状況が管理されてもよい。
例えば、2020年5月13日の9時30分00秒に、場所αにて撮影が行われ、動画像Xが生成されて状況管理データベースに登録されている。また、動画像Xが撮影された日時とは別の日時(2021年4月10日の12時00分45秒)に、場所αにて撮影が行われ、動画像Yが生成されて状況管理データベースに登録されている。動画像X,Yにはそれぞれ、存在物の一例として、機器A、機器B、時計、机、椅子及び壁紙が表されている。このように、場所αの状況を表す動画像が、時系列に沿って管理されている。
ここでは一例として、端末装置14のカメラ28によって場所α内が撮影されることで、場所α内を表す動画像X,Yが生成されている。動画像Xと、その撮影の日時を示す日時情報は、端末装置14から情報処理装置10に送信されて状況管理データベースに登録される。動画像Yについても同様である。
端末装置14は、GPS(Global Positioning System)を利用することで端末装置14の位置情報を取得してもよい。例えば、端末装置14は、動画像Xが撮影されたときの端末装置14の位置情報を取得する。その位置情報は、動画像Xに付帯する情報として端末装置14から情報処理装置10に送信され、動画像Xに紐付けられて状況管理データベースに登録される。例えば、その位置情報は、場所αを示す場所情報に含まれる。なお、ユーザが端末装置14を操作することで、撮影が行われた場所αを示す場所情報を端末装置14に入力してもよい。この場合、ユーザによって入力された場所情報が端末装置14から情報処理装置10に送信されて、動画像Xに紐付けられて状況管理データベースに登録される。動画像Yについても同様である。
端末装置14は、加速度センサや角速度センサや地磁気センサ等のセンサを有し、端末装置14の向きや方位を示す方位情報を取得してもよい。例えば、端末装置14は、動画像Xが撮影されたときの端末装置14の方位情報を取得する。その方位情報は、動画像Xに付帯する情報として端末装置14から情報処理装置10に送信され、動画像Xに紐付けられて状況管理データベースに登録される。例えば、その方位情報は、場所αを示す場所情報に含まれる。動画像Yについても同様である。
存在物は、動画像X,Yのそれぞれから自動的に抽出されてもよいし、ユーザによって指定されてもよい。例えば、情報処理装置10のプロセッサ22は、動画像X,Yのそれぞれに対して公知の画像認識技術や画像抽出技術を適用することで、動画像X,Yのそれぞれに表されている存在物を認識する。例えば、認識対象の存在物が予め定められており、情報処理装置10のプロセッサ22は、予め定められた存在物を動画像X,Yのそれぞれから認識する。存在物の名称を示す情報や存在物が有する機能を示す情報等が、データベース等に予め登録されている場合、情報処理装置10のプロセッサ22は、動画像X,Yのそれぞれから認識した存在物の名称や機能を示す情報を当該データベース等から取得して、状況管理データベースに登録してもよい。なお、端末装置14のプロセッサ32が、動画像X,Yのそれぞれから存在物を認識してもよい。
ユーザが、存在物を指定してもよい。例えば、動画像Xの撮影時、又は、動画像Xの撮影後に、ユーザは端末装置14を操作することで、動画像Xに表されている1又は複数の有体物の中から、状況管理データベースに登録される存在物を指定する。具体的には、端末装置14のプロセッサ32は、動画像Xを端末装置14のディスプレイに表示させ、ユーザは、その表示された動画像X上にて、状況管理データベースに登録される存在物を指定する。ユーザによって指定された存在物を示す情報は、端末装置14から情報処理装置10に送信されて状況管理データベースに登録される。動画像Yについても同様である。
端末装置14のプロセッサ32は、動画像Xに対して画像認識技術や画像抽出技術等を適用することで、動画像Xに表されている1又は複数の有体物を認識してもよい。この場合、ユーザが端末装置14を操作することで、その認識された1又は複数の有体物の中から、状況管理データベースに登録される存在物を指定してもよい。ユーザによって指定された存在物を示す情報は、端末装置14から情報処理装置10に送信されて状況管理データベースに登録される。動画像Yについても同様である。
また、状況管理データベースには、備考情報が登録されている。備考情報は、例えば、場所内における存在物の位置を示す情報等を含む。例えば、予め定められた基準物の位置を基準として、その基準の位置からの相対的な位置を示す情報が、備考情報に含まれる。具体例を挙げて説明すると、機器Bは、基準物として定められた時計の30cm左斜め上に存在しており、機器Aは、その時計の5メートル奥の下方に存在していることを示す情報が、備考情報として動画X,Yにそれぞれ紐付けられている。基準物は、例えばユーザによって指定されてもよいし、ユーザによらずに予め定められていてもよい。
例えば、情報処理装置10のプロセッサ22又は端末装置14のプロセッサ32は、動画像Xを解析することで、基準物の位置からの各存在物の相対的な位置を特定してもよい。ユーザが端末装置14を操作することで、基準物の位置からの各存在物の相対的な位置を示す情報を入力してもよい。動画像Yについても同様である。
また、画像が撮影されたときに得られた周囲の音情報や、環境情報(例えば、気温、湿度、気圧等の情報)が測定され、これらの情報が備考情報に含まれてもよい。
以下、本実施形態に係る情報処理システムによる処理について詳しく説明する。
(オブジェクトが物体の場合の処理)
以下、オブジェクトが物体の場合の処理について説明する。
図5を参照して、過去の画像について説明する。図5には、過去の画像の一例が示されている。例えば、端末装置14のカメラ28によって、過去のある時点にて、空間36である場所α内が撮影され、場所α内を表す画像34が生成される。画像34は、静止画像であってもよいし動画像であってもよい。また、端末装置14は、画像34の撮影時における端末装置14の位置情報及び方位情報を取得し、それらの情報を画像34に紐付ける。ここでは一例として、場所αは部屋である。
例えば、カメラ38、壁紙40,42,44、時計46、机48、椅子50、及び、機器52,54が、場所α内に配置されており、画像34には、それらが表されている。なお、画像34が撮影された時点では、これらの物体(例えば機器52等)は外部から見えるように配置されているが、その後の時点では、カバー等が取り付けられることで外部から見えなくなってもよい。
画像34、画像34が撮影された日時を示す日時情報、及び、場所αを示す場所情報(画像34の撮影時における端末装置14の位置情報及び方位情報を含む情報)は、端末装置14から情報処理装置10に送信されて、画像データベースに登録される。例えば、場所α内に端末装置14がある場合(例えば、端末装置14を所持するユーザが場所α内にいる場合)、端末装置14の位置情報に基づいて、そのユーザがいる場所αが特定され、場所αの名称等を示す情報が、場所αを示す情報に含まれてもよい。例えば、位置情報と場所αの名称等を示す情報とが予め紐付けられて、情報処理装置10やサーバ等に管理されており、端末装置14の位置情報に基づいて場所αの名称等が特定される。その特定の処理は、例えば、情報処理装置10、端末装置14又はサーバ等によって行われる。ユーザが場所αの名称等を端末装置14に入力した場合、場所αの名称等を示す情報が、場所αを示す情報に含まれてもよい。
ここでは一例として、時計46が基準物として定められている。画像34が端末装置14のUI26のディスプレイに表示され、ユーザが、その表示された画像34上にて時計46を基準物として指定してもよい。別の例として、情報処理装置10のプロセッサ22又は端末装置14のプロセッサ32が、画像34から基準物である時計46を認識してもよい。指定又は認識された時計46は、基準物として画像34に紐付けられて画像データベースに登録される。
ユーザは、画像データベースに登録される存在物を指定してもよい。例えば、画像34が端末装置14のUI26のディスプレイに表示され、ユーザは、その表示された画像34上にて、登録される存在物を指定する。例えば、壁紙40,42,44、時計46、机48、椅子50、及び、機器52,54がユーザによって指定されると、指定されたこれらの存在物が、画像データベースに登録される。別の例として、情報処理装置10のプロセッサ22又は端末装置14のプロセッサ32が、状況管理データベースに登録される存在物として予め定められた存在物を画像34から抽出し、その抽出した存在物を画像データベースに登録してもよい。
機器52の画像は、過去の状況における当該機器52に関する第2画像の一例であり、場所αに過去の時点(つまり画像34が撮影された時点)で配置されていた当該機器52に関する第2画像の一例である。他の存在物の画像についても同様である。
例えば、情報処理装置10のプロセッサ22又は端末装置14のプロセッサ32は、画像34から機器52の画像を抽出する。他の存在物の画像についても同様である。画像抽出技術として、例えば公知の技術が用いられる。例えば、抽出される存在物が予め定められており、その予め定められた存在物が、画像34から抽出される。例えば、機器52が、抽出される存在物として定められ、机48及び椅子50が、抽出される存在物として定められていない場合、機器52の画像が抽出され、机48及び椅子50の画像は抽出されない。他の存在物についても同様である。
なお、上記の存在物の名称を示す情報や存在物が有する機能を示す情報等が、画像34に紐付けられて状況管理データベースに登録されてもよい。各存在物の名称や機能は、ユーザによって指定されてもよいし、データベース等に登録されている情報に基づいて特定されてもよい。
ユーザが端末装置14を操作して画像の登録の指示を与えた場合に、画像34が状況管理データベースに登録されてもよい。
別の例として、画像に表されている存在物に変化が生じた場合に、その変化後の画像が画像データベースに登録されてもよい。例えば、画像34が撮影された時点よりも更に過去の時点で場所α内が撮影され、その撮影によって生成された別の画像が画像データベースに登録されているものとする。この場合、情報処理装置10のプロセッサ22は、画像34を端末装置14から受けて、同じ場所α内を撮影することで生成された当該別の画像と画像34とを比較し、当該別の画像と画像34とを解析することで、画像34に表されている存在物に変化が生じたか否かを判断する。例えば、基準物の表示位置を基準として、画像34に表されている存在物の表示位置が、当該別の画像に表されている当該存在物の表示位置から変わっている場合、プロセッサ22は、当該存在物に変化が生じたと判断する。また、当該別の画像に表示されていた存在物が、画像34に表示されていない場合、プロセッサ22は、当該存在物に変化が生じたと判断する。また、当該別の画像に表示されていなかった存在物が、画像34に表示されている場合、プロセッサ22は、当該存在物に変化が生じたと判断する。このような場合、プロセッサ22は、変化後の画像である画像34を画像データベースに登録する。
以下、図6を参照して、現在の画像について説明する。図6には、現在の画像の一例が示されている。例えば、端末装置14のカメラ28によって、現在の時点にて場所α内が撮影され、場所α内を表す画像56が生成される。画像56は、静止画像であってもよいし、動画像であってもよい。また、端末装置14は、画像56の撮影時における端末装置14の位置情報及び方位情報を取得し、それらの情報を画像56に紐付ける。画像56は、現在の場所α内の状況を表す第1画像の一例である。画像56は、画像34と同様に、画像データベースに登録されてもよい。この場合、将来の時点にて撮影される画像(つまり、その将来の時点における画像)に対しては、画像56は過去の画像として扱われる。
上述したように、ユーザが登録の指示を与えた場合に、画像56が画像データベースに登録されてもよいし、過去の時点(例えば画像34が撮影された時点)から画像56に表されている存在物に変化が生じたい場合に、画像56が画像データベースに登録されてもよい。
例えば、カメラ38、壁紙58,60,62、時計46、机48、椅子50、及び、機器52,54が、場所α内に配置されており、画像56には、それらが表されている。図5に示されている画像34と比較すると、画像34の撮影時から、壁紙40,42,44が壁紙58,60,62に取り換えられている。
例えば、画像56は端末装置14のUI26のディスプレイに表示され、ユーザは、画像56に表されている有体物を認識することができる。
また、端末装置14のプロセッサ32は、場所αの過去の画像(例えば画像34)を情報処理装置10から取得し、画像56上にその画像34を重ねてディスプレイに表示させる。例えば、ユーザが端末装置14を操作して重ね合わせの指示を与えると、端末装置14のプロセッサ32は、画像56上に画像34を重ねてディスプレイに表示させる。つまり、プロセッサ32は、画像の表示の要求をユーザから受け付けた場合、画像34を表示する。情報処理装置10のプロセッサ22が、画像56を端末装置14から受け付け、その画像56上に画像34を重ねる処理を行い、その処理が施された状態の画像56と画像34を端末装置14に送信し、端末装置14のディスプレイに表示させてもよい。場所αに関する複数の過去の画像が画像データベースに登録されている場合、ユーザによって選択された過去の画像が、画像56上に重ねられてもよいし、すべての画像が、画像56上に重ねられてもよいし、予め定められた条件を満たす画像(例えば、直近の画像や、最も古い画像)が、画像56上に重ねられてもよい。
情報処理装置10のプロセッサ22又は端末装置14のプロセッサ32は、例えば、画像34,56にそれぞれ紐付けられている位置情報及び方位情報に基づいて、画像34,56がそれぞれ撮影されたときの端末装置14の位置及び方位を特定し、それらの位置と方位を一致させて、画像56上に画像34を重ねて表示する。例えば、AR技術又はMR技術が用いられることで、画像56上に画像34が重ねて表示される。
情報処理装置10のプロセッサ22又は端末装置14のプロセッサ32は、画像56上に画像34の全部又は一部を重ねてもよい。例えば、画像34から抽出された存在物(例えば機器52等)を表す第2画像が、画像56上に重ねられてもよい。
図7には、第1画像と第2画像とが重ね合わされた状態が示されている。ここでは一例として、画像34から抽出された存在物(例えば機器52等)を表す第2画像が、現在の画像56上に重ねて表示されている。壁紙40,42,44が壁紙58,60,62に取り換えられており、壁紙40,42,44の過去の画像も、現在の画像56に重ねて表示されている。図7中では、壁紙40,42,44の過去の画像(つまり画像34に表されている壁紙の画像)は、破線で示されており、壁紙58,60,62の現在の画像(つまり画像56に表されている壁紙の画像)は、実線で示されている。画像34から抽出された他の存在物(例えば機器52等)を表す第2画像も、同様に画像56上に重ねて表示される。
第2画像は、例えば、半透明な画像であってもよいし、存在物の輪郭のみを表す画像であってもよい。こうすることで、現在の画像56に第2画像が重ねて表示されている場合であっても、ユーザは、現在の画像56に表されている存在物を画像56上で視認することができる。つまり、ユーザは、現在の画像56に表されている存在物を画像56上で視認しつつ、その存在物の過去の状況を確認することができる。
図5から図7に示す例では、壁紙以外の存在物は変更されていない。そのため、図7に示すように、画像56には、現在の機器52が表されると共に、過去の画像34から抽出された機器52の画像も、画像56上に重ねて表示される。他の存在物についても同様である。
プロセッサ32は、現在の画像56上にて、場所α内にて機器52が配置されていた位置に対応する位置に、過去の画像34から抽出された機器52の過去の画像を表示する。機器52の位置は、例えば、基準物からの相対的な位置であってもよいし、GPS等によって特定される位置であってもよい。例えば、時計46が基準物として指定されている場合、プロセッサ32は、画像56に表されている時計46の位置を基準として、機器52の過去の画像が表示される位置を特定し、その特定した位置に機器52の過去の画像を表示する。他の存在物についても同様である。
プロセッサ32は、例えば、AR技術又はMR技術を適用することで、撮影された現在の画像56上に各存在物の過去の画像を重ねてディスプレイに表示させる。
画像56が撮影された時点では、機器52が壁紙62等によって覆われて、外から見えない状態であっても、画像56に第2画像が重ねて表示される。こうすることで、画像56に機器52が表されていない場合であっても、ユーザは、画像56を参照することで、過去の機器52を視認することができる。例えば、壁紙を変えたり、模様替えしたり、部屋を改修したりすることで、画像56が撮影された時点で、存在物の場所等が分からなくなることがある。第2画像を画像56上に重ねて表示することで、ユーザは、そのような存在物を認識することができる。
なお、現在の画像56上に、過去の画像34の全部が重ねて表示されてもよい。この場合、存在物以外の背景等を表す画像も、画像56上に重ねて表示される。この場合であっても、画像34は、半透明な画像であってもよい。
なお、プロセッサ32は、画像データベースに登録されている備考情報等を、現在の画像56上に重ねてディスプレイに表示させてもよい。例えば、「機器52が時計46の5m奥の下方に設置されている」という内容の文字列や、「機器54が時計46の30cm左斜め上に設置されている」という内容の文字列が、画像56上に重ねて表示されてもよい。また、プロセッサ32は、各存在物の機能や性能等を示す情報を、現在の画像56上に重ねてディスプレイに表示させてもよい。例えば、機器52の機能や性能等を示す情報が、機器52の画像に紐付けられて表示される。
図8には、別の表示例が示されている。図8に示す例では、第2画像は、存在物を案内する画像である。例えば、第2画像は、存在物を指し示す矢印等の画像である。
図8には、場所αの現在の状況を表す画像64が示されている。例えば、現在の画像64は、上記の画像56と同様に、場所αを撮影することで生成された画像である。
ここでは一例として、現在の画像64には、機器52,54が表されていない。例えば、壁紙62によって機器52が覆われており、壁紙58によって機器54が覆われている。そのため、機器52,54を視認することができず、画像64に機器52,54が表されていない。もちろん、機器52,54が壁紙によって覆われておらず、図6に示す例と同様に、現在の画像64に機器52,54が表されていてもよい。
図8中の画像66は、機器52を指し示す矢印の画像であり、画像68は、機器54を指し示す矢印の画像である。画像66,68は、第2画像の一例である。
例えば、プロセッサ32は、AR技術又はMR技術を適用することで、撮影された現在の画像68上に矢印の画像66,68を重ねてディスプレイに表示させる。例えば、プロセッサ32は、画像68に表されている基準物である時計46の位置を基準として、画像68上の機器52の位置を特定し、その特定した位置を指し示す画像66を表示する。他の存在物についても同様である。
プロセッサ32は、ユーザによって指定された存在物を指し示す画像を、現在の画像68上に重ねてディスプレイに表示させてもよい。図8に示す例では、機器52,54がユーザによって指定されており、プロセッサ32は、機器52を指し示す画像66と、機器54を指し示す画像68とを表示する。例えば、画像データベースに登録されている存在物の一覧が、端末装置14のディスプレイに表示される。ユーザが、その一覧の中から存在物を指定すると、その指定された存在物を指し示す画像が、現在の画像68上に重ねて表示される。
なお、図8に示す例では、矢印の画像が表示されるが、矢印の画像と共に、又は、矢印の画像に代えて、存在物(例えば機器52,54)そのものを表す過去の画像が表示されてもよい。
プロセッサ32は、過去の第1時点における存在物に関する第2画像と、過去の第2時点における当該存在物に関する第2画像とを、現在の第1画像に重ねてディスプレイに表示させてもよい。第2時点は、第1時点とは異なる時点である。つまり、過去の複数の時点での存在物に関する第2画像が、現在の第1画像に重ねて表示されてもよい。以下、図9を参照して、この表示例について説明する。図9には、第1画像と第2画像とが重ね合わされた状態が示されている。
図9に示されている画像70は、場所αの現在の状況を表す画像であり、例えば、上記の画像56と同様に、場所αを撮影することで生成された画像である。
図9に示す例では、画像70に、機器54の現在の画像が表されている。また、画像54A,54Bが、画像70に表されている。画像54Aは、過去の第1時点における機器54を表す画像である。画像54Bは、過去の第2時点における機器54を表す画像である。現在、第1時点及び第2時点のそれぞれの時点で、機器54は別々の場所に設置されている。従って、機器54の現在の画像、及び、画像54A,54Bは、画像70上にて、それぞれ別々の位置に表示される。このように、過去の複数の時点での機器54の画像を、現在の画像70に重ねて表示することで、ユーザは、各時点での機器54の設置場所を認識することができる。
また、プロセッサ32は、ユーザによって指定された時点における存在物に関する第2画像を現在の画像70上に重ねてディスプレイに表示させてもよい。例えば、場所αに関して画像データベースに登録されている日時の一覧が、端末装置14のディスプレイに表示され、プロセッサ32は、その一覧からユーザによって指定された日時に得られた画像(例えば、その指定された日時に撮影された画像)から抽出された第2画像を、現在の画像70上に重ねてディスプレイに表示させてもよい。別の例として、プロセッサ32は、直近の画像から得られた第2画像や、最も古い画像から得られた第2画像や、その他の条件を満たす過去の画像から得られた第2画像を、現在の画像70上に重ねてディスプレイに表示させてもよい。
上記の各実施形態において、プロセッサ32は、現在のオブジェクトの状況が過去のオブジェクトの状況から変わった場合、第1画像上に第2画像を重ねてディスプレイに表示させてもよい。
例えば、プロセッサ32は、現在の画像(つまり第1画像)と、画像データベースに登録されている過去の画像とを比較し、両画像の間に閾値以上の差異がある場合、第1画像上に第2画像を重ねてディスプレイに表示させる。
この処理について、図5及び図8を参照して詳しく説明する。図5に示すように、過去のある時点(つまり画像34が撮影された時点)では、機器52,54は壁紙によって覆われておらず、外部から視認することができる。一方、図8に示すように、現在(つまり画像64が撮影された時点)では、機器52,54は壁紙によって覆われており、外部から視認することができない。
プロセッサ32は、現在の画像64と過去の画像34とを比較し、両画像の間に閾値以上の差異がある場合、画像64上に第2画像(例えば、機器52,54そのものを表す画像や、機器52,54の設置位置を指し示す矢印の画像等)を重ねてディスプレイに表示させる。プロセッサ32は、両画像の間の差異が閾値未満である場合、画像64上に第2画像を重ねず、画像64をディスプレイに表示させる。
プロセッサ32は、過去の時点から変化していない基準物が撮影された場合、現在の第1画像上に第2画像を重ねてディスプレイに表示させてもよい。
図5及び図6を参照して、この処理について説明する。例えば、時計46が基準物として定められている。図5に示すように、過去の画像34に時計46が表されており、図6に示すように、現在の画像64にも時計46が表されている。このように、撮影された現在の画像64に時計46が表さている場合、プロセッサ32は、現在の画像64上に第2画像(例えば、存在物そのものを表す画像や、存在物の設置位置を指し示す矢印の画像等)を重ねてディスプレイに表示させる。
また、プロセッサ32は、現在の画像64に表されている各存在物の位置に基づいて、時計46と他の存在物との相対的な位置関係を算出し、過去の画像34に表されている各存在物の位置に基づいて、時計46と他の存在物との相対的な位置関係を算出してもよい。プロセッサ32は、現在の相対的な位置関係と過去の相対的な位置関係との差異が閾値以下である場合、現在の画像64上に第2画像を重ねてディスプレイに表示させてもよい。
以下、図10を参照して、過去の画像の表示の指示を与えるためのユーザインターフェースについて説明する。図10には、端末装置14に表示される画面76が示されている。ユーザは、この画面76にて、過去の画像の表示の指示を与えることができる。
例えば、画面76には、ユーザの要望を入力する欄が設けられている。例えば、その欄には、ユーザが探しているオブジェクトの名称等が入力される。図10に示す例では、機器の名称である文字列「機器A」がユーザによって入力されている。ここで入力された情報は、端末装置14から情報処理装置10に送信される。情報処理装置10のプロセッサ22は、存在物である機器Aの過去の画像を画像データベースから検索し、検索した過去の画像を端末装置14に送信する。その過去の画像は、端末装置14のディスプレイに表示される。例えば、端末装置14のカメラ28によって現在の画像が撮影されている場合、機器Aの過去の画像は、その現在の画像に重ねて表示される。
また、画面76にて、ユーザによって過去の時点が指定されてもよい。図10に示す例では、過去の時点として「去年」が指定されている。この場合、情報処理装置10のプロセッサ22は、去年撮影された画像を画像データベースから検索し、検索した去年の画像を端末装置14に送信する。例えば、ユーザが場所αにいる場合、場所αの去年の画像が検索され、その去年の画像が端末装置14のディスプレイに表示される。端末装置14のカメラ28によって場所αの現在の画像が撮影されている場合、去年の画像は現在の画像に重ねて表示される。例えば、機器Aの去年の画像が現在の画像に重ねて表示される。
なお、画面76にて入力される各情報は、音声によって入力されてもよい。この場合、画面76は表示されなくてもよい。
(オブジェクトが画像の場合の処理)
以下、オブジェクトが画像の場合の処理について説明する。
オブジェクトが画像の場合、第1画像は、ディスプレイに表示される現在の画像であり、第2画像は、過去の時点でディスプレイに表示されていた画像である。例えば、第2画像は、過去の時点でディスプレイに表示されていた操作に関する画像である。
第1画像及び第2画像は、例えば、操作画面、アイコン又はその他の画像等である。操作画面は、例えば、PCやスマートフォン等の装置のディスプレイに表示される操作画面(例えば、OS(Operating System)のデスクトップ画面や、各種のアプリケーションソフトウェアの操作画面等)や、その他の機器の操作画面等である。
例えば、第1画像は、現在の操作画面であり、第2画像は、その操作画面に表示されるアイコンである。第2画像としてのアイコンは、現在の操作画面上において、過去に表示されていた位置に表示される。
以下、図11を参照して、オブジェクトが画像の場合の処理について詳しく説明する。図11には、端末装置14のディスプレイに表示される画面78が示されている。画面78は、例えば、OSの現在のデスクトップ画面であり、第1画像の一例である。画面78には、アイコン80が表示されている。アイコン80は、例えば、特定のアプリケーションソフトウェアに紐付けられた画像であってもよいし、特定のデータ(例えば画像データや文書データ等)に紐付けられた画像であってもよい。アイコン80は、現在のデスクトップ画面上に表示されている画像である。
例えば、ユーザが端末装置14を操作して、現在のデスクトップ画面に過去のデスクトップ画面を重ねて表示することを指示すると、端末装置14のプロセッサ32は、画面78に過去のデスクトップ画面を重ねてディスプレイに表示させる。例えば、アイコン82は、現在のアイコン80と同じアイコンであり、過去のデスクトップ画面に表示されていた第2画像である。アイコン82は、現在の画面78上にて、過去のデスクトップ画面に表示されていた位置に表示される。過去の時点では、アイコン80は、アイコン82の表示位置に表示されていたことになる。プロセッサ32は、アイコン82の表示形態をアイコン80の表示形態と異ならせてもよい。例えば、プロセッサ32は、過去のアイコン82の色を現在のアイコン80の色と異なる色にしてアイコン82を表示してもよいし、過去のアイコン82を半透明にして表示してもよいし、過去のアイコン82の形状を現在のアイコン80の形状と異なる形状にしてアイコン82を表示してもよい。
ユーザは、現在の画面78上に表示された過去のアイコン82を参照することで、現在のアイコン80が過去の時点で表示されていた位置を認識することができる。
例えば、端末装置14のメモリ30には、過去のデスクトップ画面に関する情報(例えば、過去のデスクトップ画面に表示されていたアイコンを識別するための情報、そのアイコンが表示されていた位置を示す情報等)が記憶される。例えば、予め定められた時間毎に、デスクトップ画面に関する情報が記憶されてもよいし、デスクトップ画面に変化が生じたい場合に(例えば、アイコンの位置が変更された場合や、アイコンが削除や追加された場合等に)、その変化前のデスクトップ画面に関する情報が記憶されてもよいし、ユーザが記憶の指示を与えた場合に、そのときのデスクトップ画面に関する情報が記憶されてもよい。
過去の複数の時点におけるデスクトップ画面に関する情報が記憶されている場合、プロセッサ32は、各時点に表示されていたアイコンを現在の画面78上に表示してもよいし、ユーザによって指定された時点に表示されていたアイコンを現在の画面78上に表示してもよい。
過去のアイコン82は、ユーザが操作することができるアイコンであってもよいし、ユーザが操作することができないアイコンであってもよい。例えば、ユーザが過去のアイコン82を押した場合、そのアイコン82に紐付けられているアプリケーションソフトウェアが起動してもよい。
また、ユーザが端末装置14を操作して、過去の表示の設定を選択した場合、プロセッサ32は、アイコン80を現在の表示位置に表示せずに、アイコン80を過去の表示位置(つまり、アイコン82の表示位置)に表示してもよい。
以下、図12から図14を参照して、別の画面について説明する。図12から図14には、ある機器のディスプレイに表示される画面84が示されている。例えば、画面84は、複合機の操作パネルに表示されるメニュー画面である。画面84には、それぞれ機能が割り当てられたボタンA,B,C,D,E,Fが表示されている。複合機を例に挙げて説明すると、各ボタンには、プリントやスキャン等の機能が割り当てられている。ユーザは、画面84の設定を変更することができる。例えば、ユーザは、画面84上に表示されている各ボタンの表示位置を変更することができる。
図12には、過去の時点における画面84が示されており、図13には、現在の時点における画面84が示されている。現在の時点では、各ボタンの表示位置が過去の時点の表示位置から変更されている。
例えば、ユーザが、現在の画面と過去の画面とを重ねて表示することを指示すると、図14に示すように、機器のプロセッサは、画面84上に、各ボタンを現在の表示位置に表示すると共に、各ボタンを過去の表示位置に表示する。プロセッサは、各ボタンが完全に重ならないように各ボタンの表示位置をずらして表示してもよいし、過去の表示位置に表示される各ボタンの表示形態を現在の表示位置に表示される各ボタンの表示形態と異ならせてもよい。
ユーザが過去の画面の設定を選択した場合、プロセッサは、各ボタンを現在の表示位置に表示せずに、図12に示すように、各ボタンを過去の表示位置に表示してもよい。
図11から図14に示す画面は一例に過ぎず、各種の設定を行うための設定画面等に、上記の処理が適用されてもよい。
また、OSやアプリケーションソフトウェアのバージョンが変わったときに、そのOSやアプリケーションソフトウェアがインストールされている機器のプロセッサは、現在のバージョンのOSやアプリケーションソフトウェアに関する画面をディスプレイに表示させると共に、過去のバージョンのOSやアプリケーションソフトウェアに関する画面を、その現在の画面上に重ねてディスプレイに表示させてもよい。
上記各実施形態において、プロセッサとは広義的なプロセッサを指し、汎用的なプロセッサ(例えばCPU: Central Processing Unit、等)や、専用のプロセッサ(例えばGPU: Graphics Processing Unit、ASIC: Application Specific Integrated Circuit、FPGA: Field Programmable Gate Array、プログラマブル論理デバイス、等)を含むものである。また上記各実施形態におけるプロセッサの動作は、1つのプロセッサによって成すのみでなく、物理的に離れた位置に存在する複数のプロセッサが協働して成すものであってもよい。また、プロセッサの各動作の順序は上記各実施形態において記載した順序のみに限定されるものではなく、適宜変更してもよい。