JPWO2016017253A1 - 情報処理装置、および情報処理方法、並びにプログラム - Google Patents

情報処理装置、および情報処理方法、並びにプログラム Download PDF

Info

Publication number
JPWO2016017253A1
JPWO2016017253A1 JP2016538184A JP2016538184A JPWO2016017253A1 JP WO2016017253 A1 JPWO2016017253 A1 JP WO2016017253A1 JP 2016538184 A JP2016538184 A JP 2016538184A JP 2016538184 A JP2016538184 A JP 2016538184A JP WO2016017253 A1 JPWO2016017253 A1 JP WO2016017253A1
Authority
JP
Japan
Prior art keywords
information
display
processing apparatus
information processing
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2016538184A
Other languages
English (en)
Other versions
JP6635037B2 (ja
Inventor
五十嵐 卓也
卓也 五十嵐
典史 吉川
典史 吉川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Publication of JPWO2016017253A1 publication Critical patent/JPWO2016017253A1/ja
Application granted granted Critical
Publication of JP6635037B2 publication Critical patent/JP6635037B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/44Receiver circuitry for the reception of television signals according to analogue transmission standards
    • H04N5/445Receiver circuitry for the reception of television signals according to analogue transmission standards for displaying additional information
    • H04N5/44504Circuit details of the additional information generator, e.g. details of the character or graphics signal generator, overlay mixing circuits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/63Control of cameras or camera modules by using electronic viewfinders
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/579Depth or shape recovery from multiple images from motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Graphics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)
  • Processing Or Creating Images (AREA)

Abstract

実3次元空間での実オブジェクトの位置に正確に対応付けて、登録情報設定ポイント(POI)を、情報処理装置の位置を原点とした座標系に変換し、情報処理装置の位置、方向に合わせて表示部に登録情報を表示する装置、方法を提供する。実オブジェクトを撮影した基準画像であるアンカー、およびアンカーと登録情報設定ポイントの仮想3次元空間座標での位置情報(位置、方向等)を記録した表示制御データを入力し、撮影画像からアンカーを検出し、仮想3次元空間での情報装置の位置を特定し、特定した3次元位置と、表示制御データに記録された登録情報設定ポイントの位置情報から、端末座標系での3次元位置、および、表示デバイスの2次元座標系での表示位置を算出してポイント位置を表示する。

Description

本開示は、情報処理装置、および情報処理方法、並びにプログラムに関する。さらに詳細には、情報処理装置の近傍に存在する実オブジェクトに関する情報を、情報装置の位置、方向に基づき表示部(ディスプレイ)に表示する情報処理装置、および情報処理方法、並びにプログラムに関する。
昨今、スマートホンやタブレット端末、あるいはグラス(眼鏡)型ディスプレイ等のウェアラブル端末等が普及し、多くのユーザがこれらの端末を利用している。
これらの端末の多くは、通信機能のみならず、カメラ機能を備え、撮影画像を表示部に表示することができる。また、表示部には撮影画像のみならず、例えばネットワークを介してアクセスされるWebページ等、ネットワークを介して受信する様々な情報の表示が可能である。
さらに、例えば、カメラの撮影画像に対する属性情報として設定されるGeo情報[経度緯度情報(Geostationary Earth Orbit)]や、携帯端末の有するGPS(Global Positioning System)機能によって取得される位置情報に従って、Webサイトから位置情報に対応付けられた情報を取得して表示する処理を可能とした端末もある。
なお、このような撮影画像に関連する情報を撮影画像に重畳させて表示する構成を開示した文献として、例えば特許文献1(特開2011−028763号公報)がある。
特開2011−028763号公報
GPSやGeo情報等の位置情報に基づき、撮影オブジェクトの関連情報を端末に重畳表示可能とした構成を示す従来技術は多々ある。
様々な施設の登録情報をその施設位置に正確に対応付けたデータを用いて、オブジェクトの撮影および表示を行うユーザ端末の位置や傾きを検出し、表示部におけるオブジェクトの移動に応じて関連情報も連動させて移動させる制御を行うことで登録情報を施設位置に合わせて重畳表示することが可能である。
しかし、実際にはGPSの位置情報の精度は10から100メートルであり、ユーザ端末の位置や傾きに合わせて正確に撮影オブジェクトの関連情報を表示することは困難である。リアルタイムの撮影画像を表示部に表示して、その撮影画像上に様々な登録情報を表示しようとすると、表示画像がユーザ端末の移動や傾きに従って移動してしまう。ジャイロや加速度センサなどを利用してGPS位置情報を補助する技術もあるが、いずれの場合も正確な位置を特定することは困難である。結果として、実オブジェクトが近接しているような状況では、表示情報が、撮影画像中のどの施設に対応した情報であるかが判別できなくなる場合がある。
例えば携帯端末のカメラによる撮影画像を表示部に表示し、レストランやトイレが10メートル内に近接していた場合は、その撮影画像上のどの位置にどのようなレストランがあるのか、画像のどの位置にトイレがあるのかといった情報を、撮影画像上のレストラン位置やトイレ位置に正確に対応付けて表示することは、従来技術の開示構成を適用しても実現することは困難である。
一方、IMES(Indoor MEsaging System)などの屋内測位技術を利用することにより数センチメートルの高精度にて測位を行うこともできるが、測位の為にインフラ設備を導入する必要があるため運用コストの問題ある。また、スマートホンやタブレット端末などのユーザ端末が新しい測位技術に対応する必要がある。
本開示は、例えば上記問題点に鑑みてなされたものであり、登録設定された実世界ポイント(POI:Point of Interest)に関する情報を、スマートホンなどのユーザ端末とそのポイント位置の位置関係に正確に対応付けてユーザ端末に表示することを可能とする。例えば、ユーザの動き等に応じてユーザ端末の位置、傾き変更された場合にも、その移動に応じてポイントに関する表示を更新して、ユーザが関心あるポイントの情報を正確に追随して表示可能とした情報処理装置、および情報処理方法、並びにプログラムを提供することを目的とする。
本開示の第1の側面は、
撮像部と、
前記撮像部の撮影画像を表示する表示部と、
撮影画像に含まれる実世界の登録情報設定ポイントを示す仮想オブジェクトを前記表示部に表示するデータ処理部を有し、
前記データ処理部は、
実世界での実オブジェクトを撮影した基準画像であるアンカーと、仮想3次元空間座標系での前記アンカーの位置情報と前記登録情報設定ポイントの位置情報を記録した仮想オブジェクト表示制御データを入力し、
前記撮像部の撮影画像からアンカーを検出し、検出したアンカーの仮想3次元空間座標での位置および方向から、前記撮像部の仮想3次元空間での位置を特定して、前記表示部の座標系である表示部座標系における前記登録情報設定ポイントの位置を算出し、算出位置に基づき、前記登録情報設定ポイントを示す仮想オブジェクトを表示する情報処理装置にある。
さらに、本開示の第2の側面は、
ビーコン送信装置近傍の実オブジェクト情報を含む仮想オブジェクト表示制御データを格納した記憶部と、
情報処理装置からの制御情報取得要求に応じて前記仮想オブジェクト表示制御データを送信する通信部を有する情報提供サーバであり、
前記仮想オブジェクト表示制御データは、
ビーコン送信装置近傍の実オブジェクトを撮影した基準画像と、該基準画像に含まれる実オブジェクトと、実オブジェクト近傍の登録情報設定ポイントとの仮想3次元空間での位置情報を記録した情報である情報提供サーバにある。
さらに、本開示の第3の側面は、
情報処理装置の受信したビーコンの転送信号を、該情報処理装置から受信する通信部と、
転送されたビーコンに基づいて、該ビーコンの送信装置近傍の実オブジェクトを含む基準画像と、前記実オブジェクトと前記登録情報設定ポイントとの仮想3次元空間座標での位置情報を記録した仮想オブジェクト表示制御データを取得するためのアクセス情報を前記情報処理装置に送信する処理を実行するデータ処理部を有する検索サーバにある。
さらに、本開示の第4の側面は、
情報処理装置において実行する情報処理方法であり、
前記情報処理装置は、撮像部と、前記撮像部の撮影画像を表示する表示部と、撮影画像に含まれる実世界の登録情報設定ポイントを示す仮想オブジェクトを前記表示部に表示するデータ処理部を有し、
前記データ処理部が、
実世界での実オブジェクトを撮影した基準画像であるアンカーと、仮想3次元空間座標系での前記アンカーの位置情報と前記登録情報設定ポイントの位置情報を記録した仮想オブジェクト表示制御データを入力し、
前記撮像部の撮影画像からアンカーを検出し、検出したアンカーの仮想3次元空間座標での位置および方向から、前記撮像部の仮想3次元空間での位置を特定して、前記表示部の座標系である表示部座標系における前記登録情報設定ポイントの位置を算出し、算出位置に基づき、前記登録情報設定ポイントを示す仮想オブジェクトを表示する情報処理方法にある。
さらに、本開示の第5の側面は、
情報処理装置において情報処理を実行させるプログラムであり、
前記情報処理装置は、撮像部と、前記撮像部の撮影画像を表示する表示部と、撮影画像に含まれる実世界の登録情報設定ポイントを示す仮想オブジェクトを前記表示部に表示するデータ処理部を有し、
前記プログラムは、前記データ処理部に、
実世界での実オブジェクトを撮影した基準画像であるアンカーと、仮想3次元空間座標系での前記アンカーの位置情報と前記登録情報設定ポイントの位置情報を記録した仮想オブジェクト表示制御データを入力させ、
前記撮像部の撮影画像からアンカーを検出し、検出したアンカーの仮想3次元空間座標での位置および方向から、前記撮像部の仮想3次元空間での位置を特定して、前記表示部の座標系である表示部座標系における前記登録情報設定ポイントの位置を算出し、算出位置に基づき、前記登録情報設定ポイントを示す仮想オブジェクトを表示させるプログラムにある。
なお、本開示のプログラムは、例えば、様々なプログラム・コードを実行可能な情報処理装置やコンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体によって提供可能なプログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、情報処理装置やコンピュータ・システム上でプログラムに応じた処理が実現される。
本開示のさらに他の目的、特徴や利点は、後述する本開示の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
本開示の一実施例の構成によれば、実3次元空間での実オブジェクトの位置に正確に対応付けて、登録情報設定ポイント(POI)を、情報処理装置の位置を原点とした座標系に変換し、情報処理装置の位置、方向に合わせて表示部に登録情報を表示する装置、方法が実現される。
具体的には、実オブジェクトを撮影した基準画像であるアンカー、およびアンカーと登録情報設定ポイントの仮想3次元空間座標での位置情報(位置、方向等)を記録した表示制御データを入力し、撮影画像からアンカーを検出し、仮想3次元空間での情報装置の位置を特定し、特定した3次元位置と、表示制御データに記録された登録情報設定ポイントの位置情報から、端末座標系での3次元位置、および、表示デバイスの2次元座標系での表示位置を算出してポイント位置を表示する。
本構成により、実3次元空間での実オブジェクトの位置に正確に対応付けて、登録情報設定ポイント(POI)を、情報処理装置の位置を原点とした座標系に変換し、情報処理装置の位置、方向に合わせて表示部に登録情報を表示する装置、方法が実現される。
なお、本明細書に記載された効果はあくまで例示であって限定されるものではなく、また付加的な効果があってもよい。
本開示の処理を実行する情報処理装置(ユーザ端末)を含むシステムの一構成例について説明する図である。 情報処理装置(ユーザ端末)の表示部の表示画像例について説明する図である。 情報処理装置(ユーザ端末)の表示部の表示画像例について説明する図である。 情報処理装置(ユーザ端末)の表示部の表示画像例について説明する図である。 本開示の処理を実行する情報処理装置(ユーザ端末)を含むシステムの各構成要素間の処理シーケンスについて説明する図である。 検索サーバの保持するデータの構成例について説明する図である。 情報提供サーバの提供するHTMLデータの一例について説明する図である。 基準実オブジェクトと登録情報設定ポイントについて説明する図である。 情報提供サーバの提供する表示制御プログラム(JavaScript(登録商標))一例について説明する図である。 仮想オブジェクト表示制御データの取得と仮想オブジェクト表示処理のシーケンスについ手説明するフローチャートを示す図である。 仮想オブジェクト表示制御データの取得と仮想オブジェクト表示処理のシーケンスについて説明するフローチャートを示す図である。 測位処理オブジェクト設定処理のシーケンスについて説明するフローチャートを示す図である。 仮想オブジェクト表示イベント検出に基づく仮想オブジェクト表示処理のシーケンスについて説明するフローチャートを示す図である。 仮想オブジェクト表示更新イベント検出および通知処理のシーケンスについて説明するフローチャートを示す図である。 仮想オブジェクト表示更新イベント検出および通知処理のシーケンスについて説明するフローチャートを示す図である。 仮想オブジェクトの具体的表示例を示す図である。 仮想オブジェクトの具体的表示例を示す図である。 情報処理装置の構成例について説明する図である。 情報処理装置の構成例について説明する図である。 サーバの構成例について説明する図である。
以下、図面を参照しながら本開示の情報処理装置、および情報処理方法、並びにプログラムの詳細について説明する。なお、説明は以下の項目に従って行なう。
1.本開示の情報処理装置と、情報処理装置を含むシステムの構成例について
2.通信処理および画像表示処理の詳細について
3.登録情報設定ポイント(POI)位置識別マークの表示位置を決定する処理について
4.情報処理装置の実行する各処理のシーケンスについて
4−1.仮想オブジェクト表示制御データの取得と仮想オブジェクト表示処理
4−2.測位処理オブジェクト設定処理
4−3.仮想オブジェクト表示イベント検出に基づく仮想オブジェクト表示処理
4−4.3次元位置測位処理
5.仮想オブジェクトの表示開始または表示更新処理のトリガとなるイベントについて
6.情報処理装置、およびサーバの構成例について
7.本開示の構成のまとめ
[1.本開示の情報処理装置と、情報処理装置を含むシステムの構成例について]
まず、図1を参照して本開示の情報処理装置と、情報処理装置を含むシステムの構成例について説明する。
図1は、本開示の情報処理装置を含む通信システムの一構成例を示す図である。
情報処理装置(ユーザ端末)10は、例えばスマートホンや、グラス(眼鏡)型端末等、ユーザが携帯可能な通信端末である。
情報処理装置(ユーザ端末)10は、通信部、カメラ(撮像部)、表示部を備え、カメラ撮影画像を表示部に表示し、通信部を介して受信した情報を撮影画像に重畳して表示部に表示する機能を備えた装置である。
情報処理装置10は、カメラの撮影画像を表示部に表示する。表示部の表示画像は、カメラによって現在撮影されているリアルタイムの撮影画像とする。なお、本開示の処理は、過去に撮影されメモリに格納済みの画像を読み出して、表示部に表示した場合にも適用可能であるが、以下に説明する実施例では、現時点の撮影画像を表示部に表示している場合の処理例について説明する。なお、撮影画像をメディア等の記憶部に記録するか否かは任意である。
情報処理装置10のカメラ(撮像部)および表示部は、それぞれ異なる装置で実現され、通信によって一体となった動作を行う構成としてもよい。
通信によって一体となった動作を行う構成の場合、例えば、頭部に装着したカメラ(撮像部)が撮像した動画、および位置・向き情報をスマートホン(表示部)にWi−Fiで送信する構成により可能になる。
本開示の処理は、情報処理装置10が物理的に一つの装置の構成であっても、通信を介して複数の装置で構成される場合においても適用可能である。
情報処理装置10は、撮影画像を表示部に表示しながら、例えば無線LANやブルーツゥース等のアクセスポイント(AP)等によって構成されるビーコン送信装置20の出力するビーコンを受信する。
ビーコンは、ビーコン送信装置20の識別子(ID)等を格納したパケットである。
情報処理装置10は、ビーコン送信装置20から受信したビーコンを、インターネット等のネットワーク30を介して検索サーバ40に転送する。
検索サーバ40は、情報処理装置10から転送されるビーコンを受信すると、受信ビーコンに含まれるビーコン送信装置識別子(ID)に基づいて、その識別子に対応して登録されたアクセス情報(URL)を取得して、情報処理装置10に送信する。
アクセス情報(URL)は、ビーコン送信装置20の近辺にある情報登録ポイントの位置情報や、登録情報等を含むデータを取得するためのアクセス情報である。
なお、例えばWebページなどの提供地図データでは、名所や、目印となる建物など、多くの人間の興味があると推定されるポイントとして登録情報設定ポイント(POI:Point of Interest)が設定されているが、上記アクセス情報(URL)は、例えばこの登録情報設定ポイント(POI)に関する位置情報と登録情報などを含む表示制御データを取得するためのアクセス情報である。
情報処理装置10は、このアクセス情報 (URL)を用いて情報提供サーバ50から表示制御データを取得して、取得された表示制御データに含まれる登録情報設定ポイント(POI)に対応する登録情報等を表示部に表示された撮影画像上に重畳して表示する。
すなわち、カメラ(撮像部)によって撮影され表示部に表示されている実オブジェクト上に、情報提供サーバ50から取得したPOIに関する位置情報や、登録情報を仮想オブジェクトとして重畳して表示する。
情報提供サーバ50は、各地域の様々な位置にある様々な施設の位置情報と、施設の案内情報等、POIの表示制御データを提供する。情報提供サーバ50は、登録情報を登録したデータベースを備えており、そのデータベース情報を基に表示制御データを生成する。情報提供サーバ50は、情報端末10からの要求に含まれるURLに従い該当する表示制御データを返信する。
情報処理装置10は、検索サーバ40が選択したアクセス情報(URL)を利用して、情報提供サーバ50からPOIの表示制御データを取得する。
情報処理装置10は、このPOIの表示制御データを用いて、ビーコン送信装置20の設置場所の近辺にある様々な施設等のPOIの位置や登録情報を表示部に表示されたカメラ撮影画像上に重畳して表示する。
図2以下を参照して。具体的な処理例について説明する。
図2は、情報処理装置(ユ―ザ端末)10によるカメラ撮影画像の表示部に対する表示例を示している。
なお、以下では、情報処理装置(ユ―ザ端末)10の一例としてスマートホンを用いた例を説明するが、以下に説明する実施例は、スマートホン以外の様々なユーザ端末、例えばタブレット端末、PC、グラス(眼鏡)型端末等においても同様に実行可能である。
図2(a)は実世界(Real World)のある景色を示す。ある観光地の城を含む景色である。情報処理装置(ユーザ端末)10を携帯したユーザが、この観光地の城を訪れて観光中であり、図2(a)に示す景色を眺めているものとする。
ユーザは、情報処理装置(ユーザ端末)10のカメラ機能を利用して(a)実世界の画像を撮り込み、撮影画像を表示部に表示する。
表示部に表示された撮影画像が図2(b)に示す表示画像である。
例えば、この状態において、先に図1を参照して説明した一連の処理が実行される。すなわち、以下の処理(S01〜S04)を実行する。
(S01)情報処理装置10は、図2(a)に示す実世界の近くにあるアクセスポイント(AP)等のビーコン送信装置20から受信したビーコンの識別情報(ID)を検索サーバ40に転送する。
(S02)検索サーバ40は、識別情報に基づき、ビーコン送信装置20の近辺の登録情報を含むデータを取得するためのアクセス情報(URL)を情報処理装置10に送信する。
(S03)情報処理装置10は、検索サーバ40から受信したアクセス情報(URL)を適用して情報提供サーバ50から、ビーコン送信装置20の近辺の施設の位置情報や登録情報の表示制御データを取得する。
(S04)情報処理装置10は、情報提供サーバ50から取得したビーコン送信装置20の近辺の施設の位置情報や登録情報の表示制御データを用いて、表示部に表示中の撮影画像上に施設の位置を示すマークや、登録情報を仮想オブジェクトとして重畳表示する。
これらの一連の処理を実行する。
上記一連の処理を実行した結果として、情報処理装置10の表示部に表示される画像の例が図3、図4に示す表示画像である。
図3(a)は、先に説明した図2と同様、実世界(Real World)のある景色であり、図3(b)は、上記一連の処理(S01〜S04)を実行した後に情報処理装置10の表示部に表示される表示画像である。
上記のステップS03において、情報提供サーバ50から取得したデータ、すなわち、ビーコン送信装置20の近辺の施設の位置情報と登録情報の表示制御データには、図3(a)実世界に示す以下の2つのポイントの情報が含まれているとする。
(1)登録情報設定ポイントA(POI−A)101の位置情報と登録情報
(2)登録情報設定ポイントB(POI−B)102の位置情報と登録情報
図3(b)の表示画像は、
(1)登録情報設定ポイントA(POI−A)101の位置情報と登録情報
この情報を選択して表示した表示画像である。
図3(b)表示画像は、撮影画像である実オブジェクト上に、情報提供サーバ50から取得した表示制御データに記述された仮想オブジェクトを重畳表示した画像である。
表示される仮想オブジェクトは以下のデータである。
(1)ポイントA(POI−A)位置識別マーク111、
(2)ポイントA(POI−A)対応登録情報112、
これらのデータを仮想オブジェクトとして表示している。
このように、図3(b)に示す表示画像は、撮影画像である実オブジェクト上に、情報提供サーバ50から取得した表示制御データに基づいて生成した仮想オブジェクトを重畳して表示した画像、いわゆる拡張現実(AR:Augumented Reality)画像である。
ポイントAは、チケットセンターであり、実オブジェクトである撮影画像のチケットセンター位置に、仮想オブジェクトとしてのポイントA(POI−A)位置識別マーク111が重畳して表示される。
このポイントA(POI−A)位置識別マーク111の表示位置は、実オブジェクトである撮影画像のチケットセンター画像上に設定する必要がある。この表示位置は、情報提供サーバから取得するデータを適用して情報処理装置10が決定する。なお、情報処理装置10に表示される画像はカメラのリアルタイム撮影画像であり、ユーザの動きに応じて変動する。ポイントA(POI−A)位置識別マーク111の表示位置も、表示撮影画像(実オブジェクト)の動きに応じて更新する必要がある。この表示位置制御も、情報処理装置10において実行する。
情報処理装置10の実行する表示制御によって、仮想オブジェクトであるポイントA(POI−A)位置識別マーク111の表示位置は、実オブジェクトである撮影画像のチケットセンター画像上に正確に位置するように制御される。
この表示制御の具体的処理については後述する。
さらに、もう1つの仮想オブジェクトであるポイントA(POI−A)対応登録情報112も、実オブジェクトである撮影画像上に重畳表示される。
ポイントA(POI−A)対応登録情報112には、登録情報設定ポイントAに対応するチケットセンターに関する様々な情報が含まれる。図に示すように、チケットセンターのオープン時間、料金等の情報が表示される。これらの情報は、情報提供サーバ50のデータベースに記録された情報であり、検索サーバ40の提供するURLに従って取得される表示制御データに含まれるか、もしくは、その表示制御データに基づく取得情報である。
図4は、もう1つのポイントBの情報、すなわち、
(2)登録情報設定ポイントB(POI−B)102の位置情報と登録情報
この情報を適用した表示画像例を示す図である。
図4(a)は実世界(Real World)の景色であり、図4(b)は、上記一連の処理(S01〜S04)を実行した後に情報処理装置10の表示部に表示される表示画像である。
図4(b)表示画像は、撮影画像である実オブジェクト上に、情報提供サーバ50から取得した表示データである仮想オブジェクトを重畳表示した画像である。
表示される仮想オブジェクトは以下のデータである。
(1)ポイントB(POI−B)位置識別マーク121、
(2)ポイントB(POI−B)対応登録情報122、
これらのデータを仮想オブジェクトとして表示している。
このように、図4(b)に示す表示画像は、撮影画像である実オブジェクト上に、情報提供サーバ50から取得したデータに基づいて生成した仮想オブジェクトを重畳して表示した画像、いわゆる拡張現実(AR:Augumented Reality)画像である。
ポイントBは、城のエントランス(入り口)であり、実オブジェクトである撮影画像のエントランス位置に、仮想オブジェクトとしてのポイントB(POI−B)位置識別マーク121を重畳して表示する。
このポイントB(POI−B)位置識別マーク121の表示位置は、実オブジェクトである撮影画像の城のエントランス画像上に設定する必要がある。この表示位置は、情報提供サーバから取得するデータを適用して情報処理装置10が決定し、制御を行う。すなわち、表示部に表示される撮影画像(実オブジェクト)の動きに応じて、ポイントB(POI−B)位置識別マーク121の表示位置も更新する。
この情報処理装置10の実行する表示制御によって、仮想オブジェクトであるポイントB(POI−B)位置識別マーク121の表示位置は、実オブジェクトである撮影画像のエントランス画像上に常に設定される。
この表示制御の具体的処理については後述する。
さらに、もう1つの仮想オブジェクトであるポイントB(POI−B)対応登録情報122も、実オブジェクトである撮影画像上に重畳表示される。
ポイントB(POI−B)対応登録情報122には、登録情報設定ポイントBに対応する城のエントランスに関する様々な情報が含まれる。図に示すように、エントランスのオープン時間、ガイド端末の貸し出し情報、トイレ位置情報等の情報が表示される。これらの情報は、情報提供サーバ50のデータベースに記録された情報であり、検索サーバ40の提供するURLに従って取得される情報である。
[2.通信処理および画像表示処理の詳細について]
図5は、図1に示した各装置間で実行する通信シーケンスと、情報処理装置(ユーザ端末)10において実行する拡張現実画像(実オブジェクトと仮想オブジェクトとの重畳画像)の表示処理シーケンスを説明するシーケンス図である。
図5には、左からビーコン送信装置20、情報処理装置(ユーザ端末)10、検索サーバ40、情報提供サーバ50を示している。
以下、各ステップの処理について、順次、説明する。
(ステップS101)
まず、ステップS101において、ビーコン送信装置20はビーコンを出力し、情報処理装置10がこのビーコンを受信する。前述したように、ビーコンは、ビーコン送信装置20の識別子(ID)等を格納したパケットである。
(ステップS102)
情報処理装置10は、ビーコン送信装置20から受信したビーコンを検索サーバ40に転送する。
(ステップS103)
検索サーバ40は、情報処理装置10から転送されたビーコンを受信し、ビーコンに含まれるビーコン送信装置20の識別子(ID)に基づいて、データベース検索を行い、ビーコン送信装置20の近辺の登録情報を含むデータを取得するためのアクセス情報(URL)を抽出する。
検索サーバ40のデータベースに格納されたデータ例を図6に示す。検索サーバ40は、データベース(記憶部)に、例えば図6に示すようなデータを格納している。
図6に示すデータは、
ビーコン送信装置識別子(ID)、
ビーコン送信装置近傍施設情報取得用URL
これらの2つのデータの対応リストによって構成される。
検索サーバ40は、情報処理装置10から転送されたビーコンを受信し、ビーコンに含まれるビーコン送信装置20の識別子(ID)に基づいて、例えば図6に示すデータ構成を持つリストを検索する。
このリスト検索によって、情報処理装置10から転送されたビーコンに含まれるビーコン送信装置20の識別子(ID)に対応付けられたアクセス情報(URL)を取得する。
このアクセス情報(URL)は、ビーコン送信装置20の近辺の登録情報を含むデータを取得するためのアクセス情報(URL)である。
(ステップS104)
次に、検索サーバ40は、ステップS104において、ステップS103の検索処理によって取得したアクセス情報(URL)を情報処理装置10に送信する。
(ステップS105)
情報処理装置10は、検索サーバ40から受信したアクセス情報(URL)を適用して情報提供サーバ50から、ビーコン送信装置20の近辺の施設の位置情報や登録情報を含むデータ(仮想オブジェクト表示制御データ)を取得する。
情報提供サーバ50が情報処理装置10に送信するデータは、情報処理装置10の表示部に表示された実オブジェクトであるカメラ撮影画像上に重畳表示するための仮想オブジェクトの実態データと、その表示制御情報を含むデータである。このデータを、仮想オブジェクト表示制御データと呼ぶ。
仮想オブジェクト表示制御データは、具台的には、以下のデータ等によって構成される。
(1)HTML(Hyper Text Markup Language)、
(2)CSS(Cascading Style Sheet)、
(3)JavaScript(登録商標)
HTMLは、情報処理装置10の表示部に表示する仮想オブジェクトの基本構造を示すデータである。HTMLデータには様々な種類があるが、例えばHTML5が利用可能である。
CSSは、HTMLによって規定される仮想オブジェクト構成データの表示形式や色、形などを規定するスタイルシートであり、情報処理装置10の表示部に表示する仮想オブジェクトのスタイルを規定するデータである。
JavaScript(登録商標)は、仮想オブジェクトの表示処理、表示更新処理、あるいは仮想オブジェクトの動きや更新処理を規定した表示制御プログラムである。例えばユーザによる表示オブジェクトに対するタッチ、クリックなどのイベント、あるいは所定時間の経過などの様々なコンテキスト(状況)に応じて検出されるイベントをトリガとして、仮想オブジャェクトの表示態様を変更するなど、表示情報に対する様々なアクションなどの表示制御を実行する表示制御プログラムである。
情報提供サーバ50は、このように、
(1)HTML(Hyper Text Markup Language)、
(2)CSS(Cascading Style Sheet)、
(3)JavaScript(登録商標)
これらのデータを有する仮想オブジェクト表示制御データを情報処理装置10に提供する。
この仮想オブジェクト表示制御データは、1つのURLによって取得されるデータであり、検索サーバ40がビーコン送信装置20のビーコンに含まれるビーコン送信装置識別子(ID)に基づいて選択されたアクセス情報(URL)によってHTMLが取得される。さらに、そのHTMLから参照されるCSS,JavaSciriptが取得可能となる。
すなわち、HTML、CSS、JavaScript(登録商標)を構成要素とする仮想オブジェクト表示制御データは、1つの特定のビーコン送信装置20の近辺の実世界3次元空間の様々な施設に関する位置情報や案内情報を含み、図3、図4を参照して説明したポイント(POI)位置識別マークや、ポイント対応登録情報等の仮想オブジェクトの表示、および表示制御を行うためのデータである。
このデータの詳細については後段で説明する。
(ステップS106)
情報処理装置10は、ステップS106において、URLに基づいて、情報提供サーバ50から取得したデータ(仮想オブジェクト表示制御データ)に記録された登録情報設定ポイントの位置情報と、カメラ撮影画像を適用して、表示画面上のポイント位置識別マークの表示位置を算出する。
すなわち、先に図3、図4を参照して説明したように、仮想オブジェクトであるポイント位置識別マークを、実オブジェクトである撮影画像上の登録情報設定ポイントとなるチケットセンターやエントランス等の実オブジェクト表示位置に一致させて表示するための表示位置決定処理を行う。
この表示位置決定処理には、情報提供サーバ50から取得したデータ(仮想オブジェクト表示制御データ)に記録された予め撮影済みの基準画像であるアンカーや登録情報設定ポイントとの仮想3次元空間での位置情報や、カメラ撮影画像を適用する。
この表示位置決定処理の具体的処理については、後述する。
(ステップS107)
最後に、情報処理装置10はステップS107において、ステップS106で算出した表示位置に、ポイント位置識別マークを表示し、さらに施設ポイント対応登録情報を表示する。
この表示結果が、例えば図3や図4を参照して説明した(b)表示画像である。
なお、上述した処理例では、検索サーバ40は、情報処理装置10から転送されるビーコンに基づいて、ビーコン装置20の近傍の情報を取得するためのアクセス情報(URL)を提供するものとして説明したが、ビーコン以外のデータを利用する構成としてもよい。
例えば、情報処理装置10が撮影した撮影画像の縮小画像であるサムネイルや画像特徴量データを検索サーバ40に送信し、検索サーバ40がサムネイルや画像特徴量データに対応する位置を特定して、その特定位置の近傍情報の表示制御データを取得するためのアクセス情報(URL)を提供する構成としてもよい。
この場合、検索サーバ40は、様々なロケーションの撮影画像とアクセス情報の対応リストを記憶部に格納した構成とする。また、撮影映像はロケーションに限定されるものだけでなく、本やポスターなどであってもよい。検索サーバ40は、情報処理装置10から受信するデータに基づいてそのデータに一致する画像を含む撮影画像を、記憶部の対応リストから選択して、その画像に対応して設定されたPOI表示制御データのアクセス情報(URL)を情報処理装置10に提供する。
あるいは、様々なロケーションの施設に記録されたマーカーやQRコード(登録商標)を情報処理装置10が読み取り、この読み取りデータを検索サーバ40に送信し、検索サーバ40が受信データに基づくデータベース検索を実行して、受信したマーカーやQRコード(登録商標)が記録された位置の近傍の情報を取得するためのアクセス情報(URL)を提供する構成としてもよい。
この場合、検索サーバ40は、様々なロケーションに記録されたマーカーやQRコード(登録商標)とアクセス情報の対応リストを記憶部に格納し、情報処理装置10から受信するマーカーやQRコード(登録商標)に基づくデータ検索を実行して、マーカーやQRコード(登録商標)に対応して記録されたアクセス情報(URL)を情報処理装置10に提供する。
[3.登録情報設定ポイント(POI)位置識別マークの表示位置を決定する処理について]
次に、登録情報設定ポイント(POI)位置識別マークの表示位置を決定する処理について説明する。
図5に示すシーケンス図を参照して説明したように、情報処理装置10は、検索サーバから通知されたアクセス情報(URL)に基づいて情報提供サーバ50から仮想オブジェクト表示制御データを取得する。さらに、この仮想オブジェクト表示制御データと、カメラ撮影画像を適用して、表示画面上のポイント位置識別マークの表示位置を算出する。
以下、情報処理装置10が実行するポイント位置識別マークの表示位置決定処理について説明する。
図7は、検索サーバから通知されたアクセス情報(URL)に基づいて情報提供サーバ50から取得されるデータ(仮想オブジェクト表示制御データ)に含まれるHTMLデータの一部を示す図である。
図7に示すHTMLデータは、情報処理装置10が実行するポイント位置識別マークの表示位置決定処理に適用するデータを含む。
図7に示すデータは、先に図3、図4を参照して説明した以下のポイント位置識別マークの表示位置を決定するために利用されるHTMLデータの一例である。
ポイントA(POI−A)位置識別マーク111、
ポイントB(POI−B)位置識別マーク121、
図7に示すHTMLデータには予め撮影済みの基準画像と、該基準画像に含まれる実オブジェクトと登録情報設定ポイントとの相対位置情報が記録されている。
図7に示すように、図7のHTMLデータには以下のデータが記録されている。
(1)第1基準実オブジェクト情報
(2)第2基準実オブジェクト情報
(3)ポイントA対応情報
(4)ポイントB対応情報
(1),(2)に示す基準実オブジェクト情報について、図8を参照して説明する。
基準実オブジェクトとは、実世界に存在する実オブジェクトであり、各登録情報設定ポイントの近くにある実オブジェクトである。この基準実オブジェクトは、登録情報設定ポイントの位置を算出するための基準位置となるオブジェクトでありアンカー(anchor)、またはアンカーオブジェクトと呼ばれる。基準オブジェクトを撮影した画像は、アンカー画像と呼ばれる。アンカー画像は位置の算出基準に利用されるだけなのでPOIと関連しなくても良いが、アンカー画像はPOIを含む場合もある。基準位置の検出精度を上げるには、実空間の特徴的なオブジェクトの画像が利用されるのが望ましい。また、実空間の様々な位置、方角の複数のアンカー画像を用いることで、さらに、位置基準の検出精度を上げることができ、ユーザ端末が移動、回転した場合でも位置検出が可能となる。
図8を参照して基準実オブジェクトの例について説明する。
図8には、実世界(Real World)に存在する城等の実オブジェクトを示している。
図に示す座標軸(XYZ)は、実世界の実オブジェクトの3次元位置での位置関係を規定する仮想3次元空間座標の座標軸である。GPSのような絶対的な位置座標ではなく、仮想3次元空間座標の原点の位置は任意なローカル座標である。
図8に示すように、第1基準実オブジェクト201は、城の上層部の領域からなる実オブジェクトである。
また、第2基準実オブジェクト202は、城のエントランスを含む領域からなる実オブジェクトである。
これらの基準実オブジェクトは、実世界の基準実オブジェクトが仮想3次元空間座標の位置に対応するかを特定し、且つ、ユーザ端末が仮想3次元空間座標を特定し、仮想3次元空間座標でのポイント位置識別マークの表示位置を決定するため利用されるオブジェクトである。
この基準実オブジェクトに関する情報は、情報提供サーバ50の提供するHTMLデータに予め登録されている。具体的には、基準実オブジェクト情報には以下の情報が含まれる。
(1)基準画像=基準実オブジェクトを撮影した画像(アンカー画像)(anchor.png)
(2)基準画像に含まれる基準実オブジェクトの位置情報(position:3次元実空間内の基準実オブジェクトの位置を示す3次元座標データ(X,Y,Z))
(3)基準画像に含まれる基準実オブジェクトの方向情報(rotation:基準実オブジェクトの姿勢を示す情報)であり、方向は一般的にはオイラー角で表わすことができるが、ここでは3Dグラフィックスで良く用いられるクオータニオン(四元数)(x,y,z;w)データで表す。
(4)基準画像の領域(ディメンション)情報(dimension:横の長さと縦の長さ)
(5)基準画像の仮想3次元空間での座標単位との実空間3D座標単位での変換(unit: メータやキロメータ)。
(1)基準画像=基準実オブジェクトを撮影した画像(anchor.png)は、例えば、図8(b)に示す画像201p,202pである。
(2)基準画像に含まれる基準実オブジェクトの位置情報(3次元実空間内の基準実オブジェクトの位置を示す3次元座標データ(X,Y,Z))に用いる座標は、例えばワールド座標系の座標であり、基準実オブジェクトの位置を示す座標と、ポイント対応情報の位置を示す座標は、同じ座標空間を用いた座標とする。
(3)基準画像に含まれる基準実オブジェクトの方向情報についても、基準実オブジェクトとポイント対応情報各々の方向情報については、同じ基準点からの方向情報とする。
図7に示すHTMLデータ中、第1基準実オブジェクト201に関する基準実オブジェクト情報(第1アンカー情報)は、以下のデータである。
<span typeof='anchor'>
<span property='unit' content='1m'/>
<span property='position' content='152,44,37'/>
<span property='rotation' content='63,44,99,3.3'/>
<span property='dimension' content='13,7'/>
<span property='src' content='anchor1.png'/>
</span>
上記データの意味は、以下の通りである。
<span property='unit' content='1m'/>
これは、データ単位を示し、以下に示す数値の単位が1m(メートル)であることを示す。
<span property='position' content='152,44,37'/>
これは、上述した(2)基準画像に含まれる基準実オブジェクトの位置情報(3次元実空間内の基準実オブジェクトの位置を示す3次元座標データ(X,Y,Z))である。
(X,Y,Z)=(152,44,37)であることを示している。これは、例えば、基準実オブジェクトの中心位置の座標に相当する。
<span property='rotation' content='63,44,99,3.3'/>
これは、上述した(3)基準画像に含まれる基準実オブジェクトの方向情報クオータニオン(x,y,z:w)である。(x,y,z:w)=(63,44,99,3.3)である。
<span property='dimension' content='13,7'/>
これは、上述した(4)基準画像の領域(ディメンション)情報(横の長さと縦の長さ)である。
具体的には、第1基準画像が横13m、縦7mの実世界の領域に対応する画像であることを示す。
<span property='src' content='anchor1.png'/>
これは、上述した(1)基準画像=基準実オブジェクトを撮影したアンカー画像(anchor1.png)である。
例えば、図8(b)に示す画像201pである。
図7に示すHTMLデータには、さらに、第2基準実オブジェクト202に関する基準実オブジェクト情報(第2アンカー情報)として、以下のデータが記録されている。
<span typeof='anchor'>
<span property='unit' content='1m'/>
<span property='position' content='173,43,44'/>
<span property='rotation' content='70,88,34,4.3'/>
<span property='dimension' content='13,7'/>
<span property='src' content='anchor2.png'/>
</span>
各データの意味は、第1基準実オブジェクト201に関する基準実オブジェクト情報(第1アンカー情報)において説明した意味と同様である。
なお、図7に示す例では、基準実オブジェクト情報(アンカー情報)を2つ有する設定としているが、これは一例であり、HTMLデータには任意の数の基準実オブジェクト情報(アンカー情報)が記録可能である。
さらに、図7に示すHTMLデータには、登録情報設定ポイントに関する情報、すなわち、図8に示す、以下の登録情報設定ポイント、
(a)登録情報設定ポイントA(POI−A)211、
(b)登録情報設定ポイントB(POI−B)212、
これらの登録情報設定ポイントに関する情報が記録されている。
具体的には、以下のポイント対応情報が登録されている。
(1)登録情報設定ポイントに対応付けらた登録情報
(2)登録情報設定ポイントの位置情報(3次元実空間内の登録情報設定ポイントの位置を示す3次元座標データ(X,Y,Z))
(3)登録情報設定ポイントの方向情報(特定の基準点、例えば基準画像を撮影したカメラからの登録情報設定ポイントの方向を示す情報)
(1)登録情報設定ポイントに対応付けらた登録情報とは、先に図3、図4を参照して説明したポイント対応登録情報112,122等の情報である。
図7に示すHTMLデータ中、例えば、登録情報設定ポイントA(POI−A)211に関するポイント対応情報は、以下のデータである。
<div typeof='poi' resource='#poi−a'>
<span property='unit' content='1m'/>
<span property='position' content="163,43,32'/>
<span property='rotation' content='34,73,45,4.43'/>
<!- html elements of poi−a −−−>
</div>
上記データの意味は、以下の通りである。
<span property='unit' content='1m'/>
これは、データ単位を示し、以下に示す数値の単位が1m(メートル)であることを示す。
<span property='position' content="163,43,32'/>
これは、上述した(2)登録情報設定ポイントの位置情報(3次元実空間内の登録情報設定ポイントの位置を示す3次元座標データ(X,Y,Z))である。
(X,Y,Z)=(163,43,32)であることを示している。これは、登録情報設定ポイントの3次元実空間の位置座標に相当する。
なお、前述したように、ここで用いる座標は例えばワールド座標系における座標であり、基準実オブジェクトの位置を示す座標と、ポイント対応情報の位置を示す座標は、同じ座標空間を用いた座標である。
<span property='rotation' content='34,73,45,4.43'/>
これは、上述した(3)登録情報設定ポイントの方向情報クオータニオン(x,y,z:w)である。(x,y,z:w)=(34,73,45,4.43)である。
なお、前述したように、基準実オブジェクトとポイント対応情報各々の方向情報は、同じ基準点からの方向情報である。
<!- html elements of poi−a −−−>
これは、上述した(1)登録情報設定ポイントに対応付けらた登録情報であり、先に図3、図4を参照して説明したポイント対応登録情報112,122等の情報である。
図7に示すHTMLデータには、さらに、登録情報設定ポイントB(POI−B)212に関するポイント対応情報として、以下のデータが記録されている。
<div typeof='poi' resource='#poi−b'>
<span property='unit' content='1m'/>
<span property='position' content="163,39,28'/>
<span property='rotation' content='34,70,41,4.53'/>
<!- html elements of poi−a −−−>
</div>
各データの意味は、登録情報設定ポイントA(POI−A)211に関するポイント対応情報において説明した意味と同様である。
なお、図7に示す例では、登録情報設定ポイント(POI)対応情報を2つ有する設定としているが、これは一例であり、HTMLデータには任意の数の登録情報設定ポイント(POI)対応情報を記録することができる。
このように、検索サーバから通知されたアクセス情報(URL)に基づいて情報提供サーバ50から取得されるHTMLデータ(仮想オブジェクト表示制御データ)は、予め撮影済みの基準画像と、該基準画像に含まれるアンカーオブジェクトと登録情報設定ポイントの仮想3次元空間での位置情報を記録している。
具体的には、以下のデータを含む。
基準実オブジェクトを撮影した基準画像データ、
基準画像データに含まれる基準実オブジェクトの位置、方向等の情報を含む3次元位置姿勢情報、
登録情報設定ポイントの位置、方向等の情報を含む3次元位置姿勢情報、
これらの情報を記録している。
これらの情報は、情報処理装置10が実行するポイント位置識別マークの表示位置決定処理に適用される。
図7に示す例では、HTMLにアンカーオブジェクト情報と登録設定ポイントの情報を記録しているが、HTMLの仮想オブジェクトと登録設定ポイント情報を対応づけてJavaScript(登録商標)に記録してもよい。もしくは、別データとしてJavaScript(登録商標)によって情報提供サーバ50から取得する設定としてもよい。従って、アンカーオブジェクト情報と登録ポイント情報をHTMLに記録することは必須ではない。
情報処理装置(ユーザ端末)10のデータ処理部の実行する処理は例えば以下の処理手順となる。
情報処理装置(ユーザ端末)10のデータ処理部は、HTMLデータ(仮想オブジェクト表示制御データ)、すなわち、予め撮影済みの基準画像と、該基準画像に含まれる実オブジェクトと登録情報設定ポイントの仮想3D空間座標における位置情報を記録したHTMLデータを情報提供サーバ50から入力する。
次に、表示部に表示された撮影画像から、基準画像に含まれる実オブジェクトと同じ実オブジェクト(アンカー)を検出する。検出した実オブジェクト(アンカー)の3次元位置情報と、仮想オブジェクト表示制御データに記録された相対位置情報を適用して、ユーザ端末の位置情報を特定する。なお、撮影画像と基準画像からユーザ端末の位置を特定するのは3次元位置姿勢情報解析処理が利用されこの処理については後述する。さらに、ユーザ端末を原点とした座標系おける各登録情報設定ポイントの3次元位置を算出する。
算出位置情報に基づいて表示部に表示された撮影画像上の登録情報設定ポイント表示位置を算出し、算出表示位置に仮想オブジェクトであるポイント位置識別マークを重畳表示する。仮想オブジェクトを重畳表示するにあたり、CSSの3次元TRANSFORMS機能を利用して3次元表示させることも可能である。
このような手順に従って撮影画像上の登録情報設定ポイントに一致させてポイント位置識別マークを表示する。
なお、これらの処理手順については、情報処理装置10が、情報提供サーバ50から取得するJavaScript(登録商標)に記録されている。
次に、図7に示すHTMLデータとともに、情報処理装置10が、情報提供サーバ50から取得する仮想オブジェクト表示制御データの構成要素の1つであるJavaScript(登録商標)データの構成例について、図9を参照して説明する。JavaScript(登録商標)は、仮想オブジェクトの表示制御プログラムとして利用される。
図9は、検索サーバから通知されたアクセス情報(URL)に基づいて情報提供サーバ50から取得されるJavaScript(登録商標)データの一部である。
図9に示すJavaScript(登録商標)は、情報処理装置10において、ポイント位置識別マークの表示位置を決定するための処理手順を記録した処理プログラムに相当する。
情報処理装置10のデータ処理部が、図9に示すJavaScript(登録商標)に基づいて実行する処理について、図9に示す処理ステップ(S201〜S209)に従って、順次、説明する。
(ステップS201)
まず、情報処理装置10のデータ処理部は、情報処理装置のカメラによって撮影している撮影画像入力ストリームを入力する。
この撮影画像は、カメラ部を介して現在入力されている画像データである。この撮影画像は表示部に継続的に表示される。なお、ここで説明する撮影画像は、カメラ機能によって撮り込まれている画像を意味し、記憶部に対する記録処理は実行してもしなくてもよい。
(ステップS202)
次に、情報処理装置10のデータ処理部は、ステップS202において、第1基準実オブジェクト情報(第1アンカー情報)を入力する。
この第1基準実オブジェクト情報(第1アンカー情報)は、先に図7を参照して説明したHTMLデータに記録された第1基準実オブジェクト情報(第1アンカー情報)である。
すなわち、第1基準実オブジェクト(第1アンカー)に関する以下の情報である。
(1)基準画像=基準実オブジェクトを撮影した画像(anchor1.png)
(2)基準画像に含まれる基準実オブジェクトの位置情報(3次元実空間内の基準実オブジェクトの位置を示す3次元座標データ(X,Y,Z))
(3)基準画像に含まれる基準実オブジェクトの方向情報を表したクオータニオン(x,y,z:w)である。
(4)基準画像の領域(ディメンション)情報(横の長さと縦の長さ)
情報処理装置10のデータ処理部は、HTMLデータからこれらの第1基準実オブジェクト情報(第1アンカー情報)を読み込む。
(ステップS203)
次に、情報処理装置10のデータ処理部は、ステップS203において、第2基準実オブジェクト情報(第2アンカー情報)を入力する。
この第2基準実オブジェクト情報(第2アンカー情報)も、先に図7を参照して説明したHTMLデータに記録された第2基準実オブジェクト情報(第2アンカー情報)である。
なお、図9に示す例では、基準実オブジェクト情報(アンカー情報)を2つ読み込む設定としているが、これは一例であり、HTMLデータに記録された全ての基準実オブジェクト情報(アンカー情報)の読み取りを行う設定とする。
(ステップS204)
次に、情報処理装置10のデータ処理部は、ステップS204において、登録情報設定ポイントA(POI−A)対応情報を入力する。
この登録情報設定ポイントA(POI−A)対応情報は、先に図7を参照して説明したHTMLデータに記録されたポイントA対応情報である。
すなわち、登録情報設定ポイントA(POI−A)に関する以下の情報である。
(1)登録情報設定ポイントに対応付けらた登録情報
(2)登録情報設定ポイントの位置情報(3次元実空間内の登録情報設定ポイントの位置を示す3次元座標データ(X,Y,Z))
(3)登録情報設定ポイントの方向情報を示したクオータニオン(x,y,z:w)である。
情報処理装置10のデータ処理部は、HTMLデータからこれらのポイントA(POI−A)対応情報を読み込む。
(ステップS205)
次に、情報処理装置10のデータ処理部は、ステップS205において、登録情報設定ポイントB(POI−B)対応情報を入力する。
この登録情報設定ポイントB(POI−B)対応情報は、先に図7を参照して説明したHTMLデータに記録されたポイントB対応情報である。
なお、図9に示す例では、登録情報設定ポイント(POI)対応情報を2つ読み込む設定としているが、これは一例であり、HTMLデータに記録された全ての登録情報設定ポイント(POI)対応情報の読み取りを行う設定とする。
(ステップS206)
次に、情報処理装置10のデータ処理部は、ステップS206において、基準画像からユーザ端末のカメラ位置を測位する処理(3次元位置解析処理)によって算出した結果をJavaScript(登録商標)の関数(イベント処理関数)として登録する。
このステップS206が実行される前に行われる測位処理は、ステップS202〜S205において取得した下記情報、すなわち、
(1)基準実オブジェクトを撮影した基準画像データと、基準画像データに含まれる基準実オブジェクトの位置、方向等の情報を含む3次元位置姿勢情報、
(2)登録情報設定ポイントの位置、方向等の情報を含む3次元位置姿勢情報、
これらの情報と、
ステップS201において入力する、
(3)撮影画像
これらのデータを用いて実行される。
なお、測位処理(3次元位置姿勢情報解析処理)は、例えば、SLAM(simultaneous localization and mapping)を適用した処理として行われる。SLAMは、カメラの撮影画像に含まれる様々な実オブジェクトから特徴点を選択し、選択した特徴点の位置とカメラの位置姿勢を併せて検出する処理である。なお、SLAMについては、本出願人による先行特許出願である特許5380789号)に記載されている。
情報処理装置10のデータ処理部は、SLAMを適用した処理に際して、情報処理装置の表示部(ディスプレイ)とカメラ各々の位置(position)、方向(rotation)、領域(dimention)など、必要なパラメータを入力して利用する。
SLAMを適用した3次元位置姿勢解析処理の概要は以下の通りである。
まず、カメラ撮影画像から、基準実オブジェクトに一致する実オブジェクトを検出する。これは、HTMLデータから取得した基準実オブジェクトを撮影した基準画像データと撮影画像との特徴点比較処理(特徴点マッチング)によって実行される。
次に、基準画像に含まれるオブジェクトと、カメラ撮影画像に含まれるオブジェクトの差分に基づいて、カメラ撮影画像から検出した撮影オブジェクトの3次元位置姿勢を解析する。
基準画像を撮影したカメラの位置と、現在の画像撮影位置(情報処理装置(ユーザ端末のカメラ位置)とは一致せず、基準画像に含まれるオブジェクトと、カメラ撮影画像に含まれるオブジェクトでは方向や大きさが異なるものとなる。
これらの差分を解析して、カメラ撮影画像から検出した基準オブジェクトに対応する撮影オブジェクトを基準として実空間上でのカメラの3次元位置姿勢を解析する。
なお、これらの解析処理に際しては、情報処理装置のカメラのレンズ倍率、位置や方向情報、アングル情報などのカメラ設定情報を用いる。
次に、HTMLデータに記録された基準実オブジェクトの位置、方向、大きさ等の情報と実空間上でのカメラの3次元位置姿勢情報、撮影画像に含まれる登録情報設定ポイント(POI)の仮想3次元空間でのカメラの位置、方向を算出する。
なお、上記処理で算出されるカメラの位置は例えばワールド座標系における3次元位置camaraPositionの座標(Xw,Yw,Zw)となる。また、カメラの方向を示すcamaraRotationおよびカメラの画角を示すCameraViewAngleはクォータリオンにて示される。
(ステップS207)
次に、情報処理装置10のデータ処理部は、ステップS207において、登録情報設定ポイントA(POI−A)と、登録情報設定ポイントB(POI−B)各々の3次元位置座標をカメラ座標に変換する。
カメラ座標は、カメラ視点(撮像部)をcameraPosition, cameraRotationを原点としてカメラの向きに応じてXYZ座標軸を設定した座標系である。
ステップS207では、S206の3次元測位で得られたワールド座標系のカメラの位置、向きから、HTMLデータに記録された登録情報設定ポイントA(POI−A)と、登録情報設定ポイントB(POI−B)各々のワールド座標系の座標(Xw,Yw,Zw)をカメラ座標系の座標(Xc,Yc,Zc)に変換する。
(ステップS208)
次に、情報処理装置10のデータ処理部は、ステップS208において、登録情報設定ポイントA(POI−A)と、登録情報設定ポイントB(POI−B)各々のカメラ座標を表示部(ディスプレイ)座標に変換する。
表示部座標は、例えば表示部の左上隅を原点として、右向きにX軸、左下にY軸を設定した座標系である。この処理においてカメラの視界から外れた位置になる登録設定ポイントは表示以下の表示の処理では使用されない。
ステップS208では、ステップS207で算出した登録情報設定ポイントA(POI−A)と、登録情報設定ポイントB(POI−B)各々のカメラ座標系の座標(Xc,Yc,Zc)を表示部座標(Xd,Yd)に変換する。
なお、3次元画像表示を実行する場合は、左眼用表示部と、右眼用表示部各々に対する表示部座標を算出する。すなわち、左眼用表示部対応の表示部座標(Xdl,Ydl)と、右眼用表示部に対する表示部座標(Xdr,Ydr)である。
なお、この処理に際しては、カメラ座標系におけるZ軸(距離)の値に応じて、左眼用画像と右眼用画像に視差を持つ画像を設定することが必要であり、水平方向の座標、例えば、Xdl,Xdrの座標値を視差に応じた差分を設定する。
なお、これらの処理は、従来からの3次元画像の生成処理アルゴリズムに従って実行される。
(ステップS209)
次に、情報処理装置10のデータ処理部は、ステップS209において、登録情報設定ポイントA(POI−A)の表示部(ディスプレイ)座標位置に、ポイントA(POI−A)位置識別マークを表示し、登録情報設定ポイントB(POI−B)の表示部(ディスプレイ)座標位置に、ポイントB(POI−B)位置識別マークを表示しする。
これらのポイント(POI)位置識別マークは、先に図3、図4を参照して説明した表示画像に表示されるポイント(POI)位置識別マークである。
このように、情報処理装置10は、検索サーバから通知されたアクセス情報(URL)に基づいて情報提供サーバ50から取得するHTMLデータ、およびJavaScript(登録商標)データを利用して、3次元測位処理によりカメラの位置、方向を特定し、その結果を基に撮影画像に含まれる登録情報設定ポイント(POI)の表示部(ディスプレイ)における座標位置を算出して、その座標位置にポイント(POI)位置識別マークを表示する。
さらに、ポイント(POI)位置識別マークを表示した登録情報設定ポイントに関する登録情報については、ポイント(POI)位置識別マークの表示位置の近傍に表示する。
登録情報の表示位置や、登録情報およびポイント(POI)位置識別マークの表示態様、例えば、色、文字、角度等は、情報提供サーバ50からHTML、JavaScript(登録商標)とともに受領するスタイルシートであるCSSの規定に従って決定することができる。
[4.情報処理装置の実行する各処理のシーケンスについて]
次に、情報処理装置(ユーザ端末)10の実行する各処理のシーケンスについて図10以下に示すフローチャートを参照して説明する。
情報処理装置10の実行する以下の各処理について、順次、説明する。
(1)仮想オブジェクト表示制御データの取得と仮想オブジェクト表示処理、ユーザのタッチ等のイベント処理(図10〜図11)
(2)3次元測位処理ための設定(図12)
(3)3次元測位の結果によるイベント検出に基づく、仮想オブジェクト表示処理(図13)
(4)基準アンカーオブジェクトからの3次元測位処理、並びに測位結果のイベント通知処理(図14〜図15)
なお、これらの処理は、いずれも情報処理装置10のデータ処理部において実行される。情報処理装置10の記憶部に格納されたプログラムに従って、プログラム実行機能を有するCPUを備えたデータ処理部において実行される。
なお、情報処理装置10の記憶部に格納されたプログラムの一部には、情報提供サーバ50から受信したプログラム、例えばJavaScript(登録商標)が含まれる。
[4−1.仮想オブジェクト表示制御データの取得と仮想オブジェクト表示処理]
まず、図10〜図11に示すフローチャートを参照して、仮想オブジェクト表示制御データの取得と仮想オブジェクト表示処理のシーケンスについて説明する。
以下、図10、図11に示すフローの各ステップの処理について、順次、説明する。
(ステップS301)
まず、情報処理装置は、ステップS301において、ビーコン送信装置からのビーコンが受信されたか否かのビーコン検出を行う。
ビーコンが検出されると、ステップS302に進む。
(ステップS302)
ビーコンが検出されると、情報処理装置は、ステップS302において、検索サーバに対して、ビーコン送信装置に対応付けられた仮想オブジェクト表示制御データの取得用アドレス(URL)を要求する。
情報処理装置は、この要求処理に際して、ビーコンに含まれるビーコンIDと、端末のサポートする3次元測位方法(Localization方法)の識別情報(ID)を検索サーバに送信する。
(ステップS303)
次に、情報処理装置は、ステップS303において、検索サーバから、ビーコン送信装置対応の仮想オブジェクト表示制御データ取得用アドレス(URL)を受信する。
(ステップS304)
次に、情報処理装置は、ステップS304において、検索サーバから受信したビーコン送信装置対応の仮想オブジェクト表示制御データ取得用アドレス(URL)を表示部に表示する。検索サーバは、URL以外にも表示制御データを表すタイトルなどの属性情報を送信し、情報処理装置はURLの代わりにタイトルなどユーザが理解しやすい情報を表示部に表示してもよい。
(ステップS305)
次に、情報処理装置は、ステップS305において、表示部に表示された仮想オブジェクト表示制御データ取得用アドレス(URL)ならびにタイトルなどに属性表示に対するユーザ表示指示を行なったかを否かを判定する。
検出された場合は、ステップS306に進む。検出されない場合はステップS301に戻る。
(ステップS306)
次に、情報処理装置は、ステップS306において、Webブラウザを起動し、ユーザによって指定URLに従ってアクセスされる仮想オブジェクト表示制御データを情報提供サーバから取得する。
なお、前述したように、情報提供サーバから取得する仮想オブジェクト表示制御データは、具台的には、以下のデータ等によって構成される。
(1)HTML(Hyper Text Markup Language)、
(2)CSS(Cascading Style Sheet)、
(3)JavaScript(登録商標)
HTMLは、情報処理装置の表示部に表示する仮想オブジェクトの基本構造を示すデータである、例えばHTML5を適用する。
CSSは、HTMLによって規定される仮想オブジェクト構成データの表示形式や色、形などを規定するスタイルシートであり、情報処理装置の表示部に表示する仮想オブジェクトのスタイルを規定するデータである。
JavaScript(登録商標)は、仮想オブジェクトの表示処理、表示更新処理、あるいは仮想オブジェクトの動きや更新処理を規定する表示制御プログラムであり、例えばユーザによる表示オブジェクトに対するタッチ、クリックなどのイベント、あるいは所定時間の経過などの様々なイベントをトリガとして、仮想オブジャェクトの表示態様を変更するなどの様々なアクションの制御を実行する。
この仮想オブジェクト表示制御データは、1つのURLによって取得されるデータであり、検索サーバがビーコン送信装置のビーコンに含まれるビーコン送信装置識別子(ID)に基づいて選択されたアクセス情報(URL)によって取得可能となる。
すなわち、HTML、CSS、JavaScript(登録商標)を構成要素とする仮想オブジェクト表示制御データは、1つの特定のビーコン送信装置の近辺の様々な施設に関する位置情報や案内情報を含み、図3、図4を参照して説明したポイント(POI)位置識別マークや、ポイント対応登録情報等の仮想オブジェクトの表示、および表示制御を行うためのデータである。
(ステップS307)
次に、情報処理装置は、ステップS307において、情報提供サーバから取得した仮想オブジェクト表示制御データを利用して、仮想オブジェクトの表示位置や表示態様を決定して表示部に表示する。なお。この処理には、例えば、Webレンダリングプログラムと、Webページ表示御プログラム(JavaScript(登録商標))が使用される。
なお、表示部に表示する仮想オブジェクトは、例えば先に図3、図4を参照して説明した登録情報設定ポイント(POI)位置識別マークや、登録情報設定ポイント(POI)に対応付けられた登録情報である。
これらの仮想オブジェクトは、情報提供サーバから取得した仮想オブジェクト表示制御データに含まれるHTMLデータに基本情報が記録されている。これらの仮想オブジェクトの表示態様は、同様に情報提供サーバから取得した仮想オブジェクト表示制御データに含まれるCSSに従って設定することがきる。
(ステップS308)
次に、情報処理装置は、ステップS308において、表示部に表示された仮想オブジェクトの表示更新を行うトリガとなるイベントの検出有無を判定する。
この仮想オブジェクトの表示更新を行うトリガとなるイベントとしては、例えばユーザによる表示部のタッチ処理や、仮想オブジェクトの表示開始から所定時間の経過、あるいは、表示画面の移動など、様々な種類のイベントがある。
どのようなイベントの検出に基づいて表示更新を実行するかについては、情報提供サーバの提供するJavaScript(登録商標)に記述され、この記述に従って実行する。
なお、情報提供サーバの提供するJavaScript(登録商標)のみならず、情報処理装置が保持する表示制御プログラムに従ってイベント検出を実行して、検出イベントに応じて表示更新を実行する構成としてもよい。
ステップS308において、表示部に表示された仮想オブジェクトの表示更新を行うトリガとなるイベントが検出された場合は、ステップS309に進む。
(ステップS309)
次に、情報処理装置は、ステップS309において、Webレンダリングプログラムと、Webページ表示制御プログラム(JavaScript(登録商標)等)に基づいて、イベント対応の処理として表示データ(仮想オブジェクト)の更新を実行する。
[4−2.測位処理アンカー情報設定処理]
次に、図12に示すフローチャートを参照して、測位処理のアンカー情報設定処理のシーケンスについて説明する。図12に示すフローチャートはJavaScript(登録商標)のプログラムによる処理であり、例えば、図9に示すJavaScript(登録商標)のプログラムのステップS201からS206において実行される。図12におけるオブジェクトとはJavaScript(登録商標)で処理されるオブジェクトのことを示す。
以下、図12に示すフローの各ステップの処理について、順次、説明する。
(ステップS401)
まず、情報処理装置は、ステップS401において、情報提供サーバから受信したHTMLデータに記述された基準画像を含むアンカーオブジェクトを取得する。HTMLデータはDOM(ドキュメントオブジェクトモデル)オブジェクトとしてJavaScript(登録商標)のプログラムから取得できる。
先に図7を参照して説明したように、HTMLデータに記述されたアンカー情報ジェクトには、以下の各データが含まれる。
(1)基準画像=アンカーとなる基準画像(anchor1.png)
(2)基準画像に含まれるアンカーの位置情報(仮想3次元実空間内のアンカー位置を示す3次元座標データ(X,Y,Z))
(3)基準画像に含まれるアンカーの方向情報(仮想3次元空間内の方位を示すクオータニオン(x, y, z: w))
(4)基準画像の領域(ディメンション)情報(横の長さと縦の長さ)
(ステップS402)
次に、情報処理装置は、ステップS402において、情報処理装置のカメラ機能を利用して撮影される映像キャプチャーのオブジェクトからの動画ストリームオブジェクトを取得する。
(ステップS403)
次に、情報処理装置は、ステップS403において、3次元位置測位処理(Spacelocalization)オブジェクトを取得する。
(ステップS404)
次に、情報処理装置は、ステップS404において、ステップS402にて取得した動画ストリームオブジェクトを3次元位置算出処理(Spacelocalization)用オブジェクトに設定する。S402からS404の処理により、情報処理装置はカメラにて撮影された映像の動画ストリームを3次元位置測位処理にて処理することが可能になる。
(ステップS405)
次に、情報処理装置は、ステップS405において、ステップS404で設定した3次元位置測位処理(Spacelocalization)用撮影オブジェクトに、S401にて取得したアンカーオブジェクトを設定し、アンカーIDを設定して登録(記憶部に格納)する。これにより3次元位置算出処理に、HTMLデータとして記述されていたアンカー情報が入力されることになる。
(ステップS406)
次に、情報処理装置は、ステップS406において、空間位置測位処理用オブジェクトにすべてのアンカーを対応づける処理が完了したか否かを判定する。
完了していない場合は、ステップS405に戻り、未処理データに対するアンカーオブジェクトの設定を行う。
空間位置算出処理用オブジェクトにアンカーオブジェクトを対応づける処理が完了したと判定すると、ステップS407に進む。
(ステップS407)
次に、情報処理装置は、ステップS407において、3次元位置測位処理(Spacelocalization)用オブジェクトにイベント(3次元位置得意イベント)処理関数を登録する。
なお、このイベント処理関数は、アンカー情報に含まれる基準画像とカメラで撮影された動画ストリームから3次元位置測位によりカメラの仮想3次元空間での位置、方位が算出された結果の処理開始トリガとなるイベントである。
具体的には、ユーザの移動やカメラの撮影方向の移動などにより、情報処理装置の撮影部で撮影された画像の所定量(予め設定した規定値)以上の移動発生し仮想3次元空間でのカメラの位置、方位が変化した検出された場合に発生されるイベント処理関数であり、ステップS407にてイベント処理関数が登録されたことにより、3次元位置算出処理(Spacelocalization)オブジェクトを用いて、カメラの3次元位置の算出処理が開始される。
なお、どのくらいの所定量の移動によりイベントが発生するかの精度、つまり、イベントの頻度は情報提供サーバから受信するJavaScript(登録商標)に記録されており、イベント処理関数の登録時に設定され、3次元位置測位処理部に入力される。
[4−3.仮想オブジェクト表示イベント検出に基づく仮想オブジェクト表示処理]
次に、図13に示すフローチャートを参照して、仮想オブジェクト表示イベント検出に基づく仮想オブジェクト表示処理のシーケンスについて説明する。このフローチャートの処理はJavaScript(登録商標)プログラムによる処理であり、例えば、図9に示すJavaScript(登録商標)のプログラムのS207からS209の3次元測位処理イベント関数内で実行される。
以下、図13に示すフローの各ステップの処理について、順次、説明する。
(ステップS501)
まず、情報処理装置は、ステップS501において、3次元位置測位処理(Spacelocalization)用オブジェクトのイベントが発生したか否かを判定する。これは前記図12のS407に登録されたイベント処理関数の呼び出しが起こったか否かに対応する。
ステップS501において、3次元位置算出処理のイベントがイベントが発生したと判定した場合は、ステップS502に進む。
(ステップS502)
ステップS501において、仮想オブジェクトの表示、更新イベントが発生したと判定すると、情報処理装置は、ステップS502において、端末表示部(ディスプレイ)の位置、方向、領域(ディメンション)、カメラの位置、方向、アングルを取得する。これステップは図12において登録したイベント処理関数の引数としてこれらの情報が渡されることに相当する。
(ステップS503)
次に、情報処理装置は、ステップS503において、HTMLデータに記述された登録情報設定ポイント(POI)対応情報(座標、方向等の3次元位置姿勢情報)を取得する。図12のS401で示したように、HTMLデータに記録されたアンカー情報の取得同様に、HTMLデータに記録された登録情報設定ポイント(POI)情報はDOMオブジェクトとしてJavaScript(登録商標)のプログラムで取得することができる。
(ステップS504)
次に、情報処理装置は、ステップS504において、ステップS503で情報提供サーバから受信したHTMLデータから取得した登録情報設定ポイント(POI)の座標、方向等の3次元位置姿勢情報を、端末の表示部(ディスプレイ)座標系の座標に変換し、POIリストに保存する。
この変換処理には、登録情報設定ポイント(POI)の位置、姿勢をユーザ端末(カメラ)を原点としたユーザ端末座標系にPOIの座標を変換する処理と、変換された端末座標系のPOIの座標から、さらに表示デバイスの座標系へ変換する2段の変換が行われる。
ユーザ端末座標系から表示デバイス座標系へ変換するには、仮想3次元空間でのカメラ位置、方位ならびに端末表示部(ディスプレイ)の位置、方位が必要であり、S502で取得された情報が利用される。特に、カメラ方位とディスプレイの方位が一致しないユーザ端末の場合は、それらの方位の差を考慮して、ディスプレイ座標系でのPOIの表示位置を算出する必要がある。
(ステップS505)
次に、情報処理装置は、ステップS505において、全POIの座標変換とリスト登録を完了したか否かを判定する。
完了していない場合は、ステップS503に戻り、未処理POIについて、ステップS503〜S504の処理を実行する。
全POIの座標変換とリスト登録処理が完了したと判定した場合は、ステップS506に進む。
(ステップS506)
全POIの座標変換とリスト登録処理が完了したと判定した場合は、情報処理装置は、ステップS506において、生成したPOIリストから、順にPOIを選択する。
(ステップS507)
次に、情報処理装置は、ステップS507において、リストから選択した選択POIの座標(表示部座標系の座標)が、表示部の表示範囲内にあるか否かを判定する。表示範囲内にあるか否かは、仮想3次元空間でのカメラ位置、方位ならびに端末表示部(ディスプレイ)の位置、方位の情報から判断し、特に、情報処理装置が表示部の一部分に撮影部からの映像が表示する場合は、撮影映像の表示位置に合わせてPOIの表示位置を算出することで、撮影映像に移された実オブジェクトの位置にPOIを重畳することが可能である。
POIの座標が表示部の表示範囲内にない場合は、そのPOIの処理を停止し、ステップS506に戻り、POIリストから次のPOIを選択する。
ステップS507において、リストから選択した選択POIの座標(表示部座標系の座標)が、表示部の表示範囲内にあると判定した場合はステップS508に進む。
(ステップS508)
リストから選択した選択POIの座標(表示部座標系の座標)が、表示部の表示範囲内にあると判定した場合、情報処理装置は、ステップS508において、選択POIのポイント位置識別マークと、登録情報を表示する。なお、これらの仮想オブジェクトの表示態様は、例えばCSS等を利用して設定する。
(ステップS509)
次に、情報処理装置は、ステップS509において、すべてのPOIの処理が完了したか否かを判定する。
未処理のPOIがある場合は、ステップS506に戻り、POIリストから次の未処理POIを選択してステップS507以下の処理を実行する。
ステップS509において、すべてのPOIの処理が完了したと判定した場合は、処理を終了する。
[4−4.3次元位置測位処理]
次に、図14〜図15に示すフローチャートを参照して、カメラの3次元位置測位処理シーケンスについて説明する。これらのフローチャートは、例えば、情報提供サーバ50から提供される表示制御データのJavaScript(登録商標)ではなく、情報処理装置の記録部に記録されたプログラムによって実行される。このためJavaScript(登録商標)のプログラムにより3次元位置測位のアルゴリズムが公開される問題を回避でき、また、情報処理装置のハードウェアの高速処理などを使って3次元位置測位の高速、高精度、且つ、低消費に処理を行うことができる。
以下、図14〜図15に示すフローの各ステップの処理について、順次、説明する。
(ステップS601)
まず、情報処理装置のデータ処理部は、ステップS601において、カメラ撮影画像の解像度、カメラのレンズ倍率を取得する。これらは情報処理装置のカメラ制御部のメモリに記録されたカメラ設定情報の取得によって実行される。
(ステップS602)
次に、情報処理装置は、ステップS602において、情報処理装置に付属する動きセンサを初期化する。すなわち、過去に計測されたデータをリセットし、現在位置や傾き(方向)を初期値に設定する初期化処理を実行する。動きセンサはジャイロや加速度センサなど情報処理装置の位置、姿勢を特定するのに用いられる。
(ステップS603)
次に、情報処理装置は、ステップS603において、情報提供サーバから取得したHTMLデータ(図7参照)に記述された基準実オブジェクト情報(アンカー情報)、つまり、図12のステップS405にて3次元位置測位処理に設定された(アンカー情報)に含まれる基準画像から特徴点を抽出する。
(ステップS604)
次に、情報処理装置は、ステップS604において、図12のステップS405にて3次元位置測位処理に設定された全ての基準実オブジェクト情報(アンカー情報)対応の基準画像からの特徴点抽出処理が完了したか否かを判定する。
未処理の基準画像がある場合は、ステップS603に戻り、未処理の基準画像からの特徴点抽出を実行する。
情報提供サーバから取得したHTMLデータ(図7参照)に記述された全ての基準実オブジェクト情報(アンカー情報)対応の基準画像からの特徴点抽出処理が完了したと判定した場合は、ステップS605に進む。
(ステップS605)
情報提供サーバから取得したHTMLデータ(図7参照)に記述された全ての基準実オブジェクト情報(アンカー情報)対応の基準画像からの特徴点抽出処理が完了すると、情報処理装置のデータ処理部は、ステップS605において、カメラの撮影画像入力を開始する。
(ステップS606)
次に、情報処理装置のデータ処理部は、ステップS606において、カメラ撮影画像の各フレームから、特徴点を抽出する。
(ステップS607)
次に、情報処理装置のデータ処理部は、ステップS607において、動きセンサの観測値を取得する。
(ステップS608)
次に、情報処理装置のデータ処理部は、ステップS608において、基準画像(アンカー画像)の特徴点と、カメラ撮影画像の特徴点とのマッチング処理により、実空間のカメラの位置、方向を含む3次元位置姿勢情報を算出する。この処理は、例えば前述したSLAM技術を適用して実行する。
(ステップS609)
次に、情報処理装置は、ステップS609において、全基準画像(アンカー画像)についての特徴点と、カメラ撮影画像の特徴点とのマッチング処理によるカメラの3次元位置姿勢情報算出処理が完了したか否かを判定する。
未処理の基準画像がある場合は、ステップS608に戻り未処理基準画像に対する処理を実行する。
すべての基準画像に対する処理が完了したと判定した場合は、ステップS610に進む。
(ステップS610)
次に、情報処理装置は、ステップS610において、全基準画像とカメラ撮影画像との特徴点マッチング結果に基づいて、実空間のカメラの位置、方向の最終的な3次元位置姿勢情報を算出する。
ステップS608では、1つの基準画像(アンカー画像)毎に各基準画像対応のカメラの3次元位置姿勢情報が算出され、複数の基準画像各々について、異なるカメラの3次元位置姿勢情報が算出される。
ステップS610では、例えば、これらの複数の値を平均化する等の処理を実行して最終的な実空間のカメラの位置、方向を含む3次元位置姿勢情報を算出する。複数のアンカーの基準画像を利用して3次元位置姿勢を測位することで、ユーザが移動したり、カメラの方向が移動した場合でも測位が可能であり、また、カメラ映像に複数のアンカーが検出された場合は、測位精度を上げることが可能である。さらには、端末のモーションセンサーを組み合わせることでアンカーが撮影映像から検出されていない場合でも、カメラの位置、方向を推定することも可能である。
(ステップS611)
次に、情報処理装置は、ステップS611において、前フレームで特定したカメラの3次元位置姿勢と現在のフレームから算出した次元位置姿勢との変化量を検出する。モーションセンサーの検出したカメラ自体の移動によるフレーム映像のブレなどの補完もこの検出には利用されるが、カメラ姿勢情報とともにフレーム映像のブレの補正情報も含めてイベント処理関数に渡すことで、JavaScript(登録商標)に従った制御によってカメラ撮影映像に重畳する場合の表示ずれを補正することができる。
(ステップS612)
次に、情報処理装置は、ステップS612において、ステップS611で検出した変化量が既定閾値以上変化したか否かを判定する。
閾値は、図12のステップS407にて表示制御データのJavaScript(登録商標)プログラムから予め設定された値であり、記録部に保存された値である。
表示部に表示された画像位置が、既定閾値以上変化したと判定した場合、ステップS613に進む。
(ステップS613)
カメラの3次元位置姿勢が既定閾値以上変化したと判定した場合、情報処理装置は、ステップS613において、3次元測位姿勢の結果として、表示部の位置、方向、領域(ディメンション)、カメラの位置、方向、アングル情報を設定して、イベント処理関数の処理を開始する。
なお、情報処理装置のデータ処理部は、仮想オブジェクトの表示更新処理の開始に伴い、先に図13を参照して説明したフローに従った処理を実行して仮想オブジェクトの表示、更新処理を実行することになる。
[5.仮想オブジェクトの表示開始または表示更新処理のトリガとなるイベントについて]
上述した実施例では、表示部に表示する仮想オブジェクトである登録情報設定ポイント(POI)位置識別子や、登録情報設定ポイント(POI)対応の登録情報の表示処理、あるいは表示更新処理のトリガとなるイベントの例として、ユーザ端末(カメラ)の位置姿勢の変化がの既定閾値以上の移動などを説明した。
しかし、これらの仮想オブジェクトの表示処理、あるいは表示更新処理のトリガとなるイベントーザ端末(カメラ)の位置姿勢の変化に合わせて、カメラで撮影した映像に移される実オブジェ事にPOIの位置を合わせて重畳して表示するに限らず、JavaScript(登録商標)のプログラムにより様々な表示処理、表示トリガをJavaScript(登録商標)で実現することが可能である。また、HTML,CSSの表示制御の機能を利用して、単に、POIを文字表示するだけでなく、多様な表示方法を情報提供者は提示することができる。
情報処理装置(ユーザ端末)10のデータ処理部は、情報処理装置の近傍の登録情報設定ポイントに関する登録情報の表示処理、または表示更新処理を予め規定した様々なコンテキスト(状況)の変化に応じたイベント検出をトリガとして実行する。
具体的には、例えば、以下のような情報に基づくイベント検出をトリガとして仮想オブジェクトの表示を開始、または更新する処理を行なってもよい。
(1)情報処理装置(ユーザ端末)の位置
(2)時間
(3)情報処理装置(ユーザ端末)を保有するユーザの行動履歴
(4)情報処理装置、あるいはサーバに登録されたユーザの予定情報
(5)ユーザの身体情報(心拍、脈拍等)
(6)店舗等のセール情報
(7)情報処理装置(ユーザ端末)の設定情報、
(8)情報処理装置(ユーザ端末)を保有するユーザの属性(年齢、性別、興味等)
(9)情報処理装置(ユーザ端末)を保持するユーザの視線
(1)情報処理装置(ユーザ端末)の位置に基づくイベント検出をトリガとした仮想オブジェクトの表示開始や表示更新処理の具体例について説明する。この処理の1つの具体例としては、例えば以下の処理がある。
ユーザが情報処理装置(ユーザ端末)を保持して移動している場合、情報処理装置(ユーザ端末)と登録情報設定ポイント(POI)までの距離が既定距離(3m)以内となったことをイベントとして検出して、仮想オブジェクトの表示開始や表示更新処理を実行する。この場合、基準実オブジェクト情報(アンカー情報)から3次元位置測位処理により実世界の情報端末の位置、方位をトラッキングできていた状態ではは、情報処理装置(ユーザ端末)と登録情報設定ポイント(POI)の位置計測は3次元位置測位処理にて行われ、必ずしも、登録情報設定ポイント(POI)が撮影映像に映されている必要はない。
なお、この処理を行なう場合、例えばJavaScript(登録商標)等の表示制御プログラムには、
(a)情報処理装置(ユーザ端末)と登録情報設定ポイント(POI)までの距離計測処理、
(b)計測距離と既定閾値との比較処理、
(c)計測距離が既定閾値以下になった場合にイベント発生と判定する、
これらの一連の処理を実行するプログラムを規定する。
(2)時間に基づくイベント検出をトリガとした仮想オブジェクトの表示開始や表示更新処理の具体例について説明する。この処理の1つの具体例としては、例えば以下の処理がある。
例えば、あるレストランの開店時間である午前11:00になったとき、情報処理装置(ユーザ端末)を保持しているユーザが、レストランの近所にいる場合に、そのレストランの位置と、レストランの提供メニュー等を仮想オブジェクトとして表示する。
なお、この処理を行なう場合、例えばJavaScript(登録商標)等の表示制御プログラムには、
(a)情報処理装置(ユーザ端末)と登録情報設定ポイント(POI)までの距離計測処理、
(b)計測距離と既定閾値との比較処理、
(c)現在時刻取得処理
(d)計測距離が既定閾値以下になり、かつ時間が登録情報設定ポイント(POI)(例えばレストラン)の開店時間になった場合にイベント発生と判定する、
これらの一連の処理を実行するプログラムを規定する。
また、情報提供サーバは、レストランの提供メニュー等を含む登録情報設定ポイント対応登録情報を仮想オブジェクトとして情報処理装置に提供する。
(3)情報処理装置(ユーザ端末)を保有するユーザの行動履歴に基づくイベント検出をトリガとした仮想オブジェクトの表示開始や表示更新処理の具体例について説明する。この処理の1つの具体例としては、例えば以下の処理がある。
情報処理装置(ユーザ端末)を保持しているユーザの移動状態(歩行、ランニング、車、電車等による高速移動)を解析し、解析情報に応じた最適な情報を仮想オブジェクトとして表示する。
例えば歩行している場合、移動位置や速度に応じた経路情報、名所案内情報、トイレの場所情報等を仮想オブジェクトとして表示する。
なお、この処理を行なう場合、例えばJavaScript(登録商標)等の表示制御プログラムには、
(a)情報処理装置(ユーザ端末)と登録情報設定ポイント(POI)までの距離計測処理、
(b)計測距離と既定閾値との比較処理、
(c)計測距離が既定閾値以下になった場合にイベント発生と判定する、
これらの一連の処理を実行するプログラムを規定する。
また、情報提供サーバは、経路情報、名所案内情報、トイレの場所情報等を仮想オブジェクトとして情報処理装置に提供する。
(4)情報処理装置、あるいはサーバに登録されたユーザの予定情報に基づくイベント検出をトリガとした仮想オブジェクトの表示開始や表示更新処理の具体例について説明する。この処理の1つの具体例としては、例えば以下の処理がある。
この処理を実行する場合、ユーザの予定情報を予め情報処理装置のメモリ、あるいは情報提供サーバに登録しておく。
ある登録済みの予定プランの開始時間、あるいは開始時間の一定時間前になった場合、情報処理装置(ユーザ端末)に、予定プランの集合位置や、予定情報等を仮想オブジェクトとして表示する。
なお、この処理を行なう場合、例えばJavaScript(登録商標)等の表示制御プログラムには、
(a)登録済みの予定情報取得処理
(b)現在時刻取得処理
(c)時間が登録済み予定情報の設定時間、あるいはその一定時間前になった場合にイベント発生と判定する、
これらの一連の処理を実行するプログラムを規定する。
また、情報提供サーバからは、予定プランの集合位置や、予定情報等を仮想オブジェクトとして情報処理装置に提供する。
(5)ユーザの身体情報(心拍、脈拍等)に基づくイベント検出をトリガとした仮想オブジェクトの表示開始や表示更新処理の具体例について説明する。この処理の1つの具体例としては、例えば以下の処理がある。
この処理を実行する場合、ユーザの身体情報を計測するセンサの検出情報を情報処理装置が入力する構成を設定することが必要である。
センサは、ユーザの心拍や脈拍等を計測し、計測情報を情報処理装置に出力する。
具体的には例えばユーザがマラソンを行っている場合、ユーザの保持する情報処理装置のデータ処理部は、ユーザの心拍や脈拍の状態に応じた情報、例えば、深呼吸を促す情報や、休息を促す情報、あるいは近隣の休憩所等の案内情報を仮想オブジェクトとして表示する。
なお、この処理を行なう場合、例えばJavaScript(登録商標)等の表示制御プログラムには、
(a)センサからのユーザの身体情報の取得処理、
(b)入力する身体情報に応じたイベント検出処理、
これらの一連の処理を実行するプログラムを規定する。
また、情報提供サーバからは、ユーザの心拍や脈拍の状態に応じた情報、例えば、深呼吸を促す情報や、休息を促す情報、あるいは近隣の休憩所等の案内情報を仮想オブジェクトとして情報処理装置に提供する。
(6)店舗等のセール情報に基づくイベント検出をトリガとした仮想オブジェクトの表示開始や表示更新処理の具体例について説明する。この処理の1つの具体例としては、例えば以下の処理がある。
例えば、ある店舗のセール開始時間である午前10:00になったとき、情報処理装置(ユーザ端末)を保持しているユーザが、その店舗の近所にいる場合に、その店舗の位置と、店舗のセール内容等を仮想オブジェクトとして表示する。
なお、この処理を行なう場合、例えばJavaScript(登録商標)等の表示制御プログラムには、
(a)情報処理装置(ユーザ端末)と登録情報設定ポイント(POI)までの距離計測処理、
(b)計測距離と既定閾値との比較処理、
(c)現在時刻取得処理
(d)計測距離が既定閾値以下になり、かつ時間が登録情報設定ポイント(POI)(例えば店舗)の開店時間になった場合にイベント発生と判定する、
これらの一連の処理を実行するプログラムを規定する。
また、情報提供サーバは、店舗のセール内容等を含む登録情報設定ポイント対応登録情報を仮想オブジェクトとして情報処理装置に提供する。
(7)情報処理装置(ユーザ端末)の設定情報に基づくイベント検出をトリガとした仮想オブジェクトの表示開始や表示更新処理の具体例について説明する。この処理の1つの具体例としては、例えば以下の処理がある。
情報処理装置(ユーザ端末)の設定情報とは、例えば、表示言語の設定、音声出力の有無等の設定である。
例えば、表示言語を日本語にしている場合は、日本語情報からなる登録情報を仮想オブジェクトとして提供し、英語設定にしている場合は英語情報からなる登録情報を提供する。また、音声出力をONに設定している場合は、音声出力を持つ登録情報を出力する構成としてもよい。
なお、この処理を行なう場合、例えばJavaScript(登録商標)等の表示制御プログラムには、上述した実施例に従った登録情報設定ポイント(POI)の検出処理の他、
(a)情報処理装置(ユーザ端末)の設定情報取得処理を実行するプログラムを規定する。
また、情報提供サーバは、情報処理装置(ユーザ端末)の設定情報に応じた言語、表示用データ、または音声データを情報処理装置に提供する。
(8)情報処理装置(ユーザ端末)を保有するユーザの属性(年齢、性別、興味等)に基づくイベント検出をトリガとした仮想オブジェクトの表示開始や表示更新処理の具体例について説明する。この処理の1つの具体例としては、例えば以下の処理がある。
この処理を実行する場合、ユーザの年齢、性別、興味等のユーザ属性情報を予め情報処理装置のメモリ、あるいは情報提供サーバに登録しておく。
情報処理装置は、登録済みのユーザ属性に応じた最適な提供情報を含む仮想オブジェクトの表示を行う。
なお、この処理を行なう場合、例えばJavaScript(登録商標)等の表示制御プログラムには、上述した実施例に従った登録情報設定ポイント(POI)の検出処理の他、
(a)登録済みのユーザ属性情報の取得処理を実行するプログラムを規定する。
また、情報提供サーバは、情報処理装置(ユーザ端末)の設定情報に応じた最適な提供情報を含む仮想オブジェクトを情報処理装置に提供する。
仮想オブジェクトの具体的表示例を図16、図17を参照して説明する。
図16は、年齢が30〜50代の中年男性でアルコール好きというユーザ属性情報が登録されている場合の仮想オブジェクト表示例である。
例えば、複数の同じ属性(30〜50代の中年男性でアルコール好き)を持つユーザが連れ立って個別に情報処理装置を保持して歩いている場合の例を想定する。
この場合、各自の情報処理装置には、図16に示すような仮想オブジェクトが表示される。
すなわち居酒屋等のアルコール提供店舗の位置を示すポイント(POI)位置識別マーク301と、ポイント(POI)対応登録情報302が次々と表示される。
図17は、年齢が20〜30代の女性でショッピング好きというユーザ属性情報が登録されている場合の仮想オブジェクト表示例である。
この場合、情報処理装置には、図17に示すような仮想オブジェクトが表示される。
すなわち20〜30代の女性が好むアイテムを販売している供店舗の位置を示すポイント(POI)位置識別マーク321と、ポイント(POI)対応登録情報322が次々と表示される。
(9)情報処理装置(ユーザ端末)を保持するユーザの視線に基づくイベント検出をトリガとした仮想オブジェクトの表示開始や表示更新処理の具体例について説明する。この処理の1つの具体例としては、例えば以下の処理がある。
この処理を実行する場合、ユーザの視線を計測するセンサの検出情報を情報処理装置が入力する構成を設定することが必要である。
センサは、ユーザの視線方向を検出し、検出情報を情報処理装置に出力する。
情報処理装置のデータ処理部は、ユーザの視線方向にある登録情報設定ポイント(POI)に関連する登録情報を優先的に表示する処理を実行する。
なお、この処理を行なう場合、例えばJavaScript(登録商標)等の表示制御プログラムには、上述した実施例に従った登録情報設定ポイント(POI)の検出処理の他、
(a)ユーザの視線方向検出結果を入力して、表示オブジェクトを決定するプログラムを規定する。
このように、仮想オブジェクトの表示処理、あるいは表示更新処理のトリガとなるイベントとして、様々なイベントの設定が可能である。
[6.情報処理装置、およびサーバの構成例について]
次に、情報処理装置(ユーザ端末)、および情報提供サーバ、検索サーバの構成例について説明する。
図18は、情報処理装置(ユーザ端末)10の一構成例を示すブロック図である。
情報処理装置10は、図18に示すように、ビーコン検出部501、データ処理部(制御部)502、動きセンサ503、記憶部504、カメラ(撮像部)505、入力部506、出力部(表示部)507、通信部508、各種センサ509、タイマ510を有する。
ビーコン検出部501は、ビーコン送信装置20の送信するビーコンを検出する。
データ処理部(制御部)502は、情報処理装置10の実行する各種のデータ処理を実行する。具体的には、上述した例えばフローチャートに従った処理を実行する。データ処理部(制御部)502はプログラム実行機能を有するCPUを有し、例えば、記憶部504に格納されたプログラムに従った処理を実行する。
動きセンサ503は、情報処理装置の動きを検出するセンサである。移動の方向や傾き、加速度などを検出する様々なセンサによって構成される。
記憶部504は、たとえばRAM、ROM、HDD、その他のメディアによって構成され、データ処理部5602の実行するプログラム、各種パラメータ等を記憶し、さらに、データ処理部の実行するデータ処理のワークエリアとしても利用される。
カメラ(撮像部)505は、画像撮影を実行する。なお、前述したように3次元画像を撮影する構成の場合は、離間位置に2つの撮像部を備えた構成を持つ。2次元画像を撮影する構成の場合は1つの撮像部となる。
入力部506は、ユーザ操作部であり、ユーザによる様々な指示入力が実行される。なお、表示部がタッチパネルとして構成されている場合、表示部も入力部として機能することになる。
出力部507は、表示部、音声出力部等から構成される。表示部は、前述した処理に従って、カメラの撮影画像てある実オブジェクトを表示するとともに、情報提供サーバから取得する仮想オブジェクトとしてのポイント(POI)位置識別マークや、ポイント(POI)対応登録情報が重畳して表示される。
通信部508は、情報提供サーバや検索サーバ、そのたの外部装置との通信処理を行なう通信部である。
各種センサ509は、例えば視線センサ、心拍数センサ等の様々なユーザ状況などを計測するセンサである。
データ処理部502は、これらのセンサ検出情報に応じて仮想オブジェクトの表示更新を実行することができる。
タイマ510は、現在時間の検出、所定タイミングからの経過時間の計測等を実行する。
図19は、様々な処理を実行するデータ処理部502において実行するデータ処理プログラムのレイヤ構成を説明する階層図である。
データ処理部502は、OS(Operating System)レイヤ上で様々なアプリケーションを実行する。
図に示す通信処理アプリケーションは、ビーコン検出、URL取得、URLに基づきWebページを表示処理装置へ指示するアプリケーションである。図10のS301からS306までの処理を実行する。
表示処理アプリケーションは、カメラによって撮影された画像の表示処理や、情報提供サーバから提供される仮想オブジェクトの表示処理等を実行する。
また、表示処理アプリケーションは、表示制御データの表示ならびに様々なイベントをトリガとして仮想オブジェクトの表示更新処理を実行する。
なお、表示処理アプリケーションによる表示情報の出力あるいは更新処理は、図19の表示処理アプリケーションの下位に示す3D空間測位ライブラリ、表示制御ライブラリ、Webページ表示ライブラリの処理を伴って実行される。
3D空間測位ライブラリは、カメラを介して撮影されるオブジェクトと基準画像を基に情報処理装置自身の3次元位置、方向(傾き)等を算出する3次元測位処理を実行する。具体的には前述したようにSLAM技術等を利用した3次元測位処理を実行する。
表示制御ライブラリは、WebKit、JavaScript(登録商標)の実行部であり、表示部への仮想オブジェクトの表示ならびに、ユーザの操作などのイベントをトリガとした表示の更新処理等を実行する。
Webページ表示アプリケーションは、WebKit WebCore等によって構成され、Webページの表示処理を実行する。
これらのアプリケーションならびにライブラリはOSレイヤ上で動作可能であり、OSレイヤは、各アプリケーションの実行する処理の全体的な制御や、ハードウェア(HW)レイヤに設定された様々な処理部とアプリケーションレイヤ間のコマンド、パラメータ等の入出力制御などを行う。
図20は、情報提供サーバや検索サーバとして適用可能な通信装置のハードウェア構成例を示している。
CPU(Central Processing Unit)701は、ROM(Read Only Memory)702、または記憶部708に記憶されているプログラムに従って各種の処理を実行するデータ処理部として機能する。例えば、上述した実施例において説明したシーケンスに従った処理を実行する。RAM(Random Access Memory)703には、CPU701が実行するプログラムやデータなどが記憶される。これらのCPU701、ROM702、およびRAM703は、バス704により相互に接続されている。
CPU701はバス704を介して入出力インタフェース705に接続され、入出力インタフェース705には、各種スイッチ、キーボード、マウス、マイクロホンなどよりなる入力部706、ディスプレイ、スピーカなどよりなる出力部707が接続されている。CPU701は、入力部706から入力される指令に対応して各種の処理を実行し、処理結果を例えば出力部707に出力する。
入出力インタフェース705に接続されている記憶部708は、例えばハードディスク等からなり、CPU701が実行するプログラムや各種のデータを記憶する。通信部709は、インターネットやローカルエリアネットワークなどのネットワークを介したデータ通信の送受信部として機能し、外部の装置と通信する。
入出力インタフェース705に接続されているドライブ710は、磁気ディスク、光ディスク、光磁気ディスク、あるいはメモリカード等の半導体メモリなどのリムーバブルメディア711を駆動し、データの記録あるいは読み取りを実行する。
[7.本開示の構成のまとめ]
以上、特定の実施例を参照しながら、本開示の実施例について詳解してきた。しかしながら、本開示の要旨を逸脱しない範囲で当業者が実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本開示の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
なお、本明細書において開示した技術は、以下のような構成をとることができる。
(1) 撮像部と、
前記撮像部の撮影画像を表示する表示部と、
撮影画像に含まれる実世界の登録情報設定ポイントを示す仮想オブジェクトを前記表示部に表示するデータ処理部を有し、
前記データ処理部は、
実世界での実オブジェクトを撮影した基準画像であるアンカーと、仮想3次元空間座標系での前記アンカーの位置情報と前記登録情報設定ポイントの位置情報を記録した仮想オブジェクト表示制御データを入力し、
前記撮像部の撮影画像からアンカーを検出し、検出したアンカーの仮想3次元空間座標での位置および方向から、前記撮像部の仮想3次元空間での位置を特定して、前記表示部の座標系である表示部座標系における前記登録情報設定ポイントの位置を算出し、算出位置に基づき、前記登録情報設定ポイントを示す仮想オブジェクトを表示する情報処理装置。
(2) 前記データ処理部は、
ビーコン送信装置から受信するビーコンを検索サーバに送信し、
検索サーバから、ビーコン送信装置近傍の実オブジェクトを撮影した基準画像であるアンカーと、前記実オブジェクトと前記登録情報設定ポイントとの相対位置情報を記録した仮想オブジェクト表示制御データを取得するためのアクセス情報を受信し、
受信したアクセス情報を適用して、情報提供サーバから前記ビーコン送信装置近傍の実オブジェクト情報を含む仮想オブジェクト表示制御データを受信する前記(1)に記載の情報処理装置。
(3)前記仮想オブジェクト表示制御データは、前記登録情報設定ポイントに対応する登録情報を含み、
前記データ処理部は、
前記表示部に表示された撮影画像上に、ポイント位置識別マークとともに、前記登録情報を重畳表示する前記(1)または(2)に記載の情報処理装置。
(4)前記仮想オブジェクト表示制御データは、前記実オブジェクトを撮影した基準画像であるアンカーと前記登録情報設定ポイントとの3次元空間での位置情報を記録したHTML(Hyper Text Markup Language)データを含み、
前記データ処理部は、HTMLデータを適用して、前記登録情報設定ポイントの表示部座標系における位置算出処理を実行する前記(1)〜(3)いずれかに記載の情報処理装置。
(5)前記仮想オブジェクト表示制御データは、前記登録情報設定ポイントの情報処理装置の位置を基準とした位置の算出処理の手順を記録したプログラムを含み、
前記データ処理部は、前記プログラムを適用して、前記登録情報設定ポイント表示位置の算出処理を実行する前記(1)〜(4)いずれかに記載の情報処理装置。
(6) 前記データ処理部は、
前記アンカーの基準画像からの情報処理装置のの3次元位置算出処理を、SLAM(simultaneous localization and mapping)を適用して実行する前記(1)〜(5)いずれかに記載の情報処理装置。
(7) 前記情報処理装置は、
情報処理装置自身の動きを検出する動きセンサを有し、
前記データ処理部は、
前記動きセンサの入力情報と、撮影画像から検出される実オブジェクト(アンカー)を適用して、情報処理装置自身の3次元位置算出処理を実行する前記(1)〜(6)いずれかに記載の情報処理装置。
(8) 前記データ処理部は、
前記表示部に表示された撮影画像の動きに応じて、前記登録情報設定ポイントの情報装置を基準とした置を新たに算出し、新たに算出した位置に前記ポイントを表示する表示更新処理を実行する前記(1)〜(7)いずれかに記載の情報処理装置。
(9) 前記データ処理部は、
仮想オブジェクト表示制御データに記録されたイベント検出に応じて、前記仮想オブジェクトの表示、または表示更新処理を実行する前記(1)〜(8)いずれかに記載の情報処理装置。
(10) 前記表示部は、3次元画像を表示可能な表示部であり、
前記データ処理部は、左眼用画像と右眼用画像の各々について、登録情報設定ポイント表示位置を算出し、算出表示位置に仮想オブジェクトであるポイント位置識別マークを重畳表示する前記(1)〜(9)いずれかに記載の情報処理装置。
(11) ビーコン送信装置近傍の実オブジェクト情報を含む仮想オブジェクト表示制御データを格納した記憶部と、
情報処理装置からの制御情報取得要求に応じて前記仮想オブジェクト表示制御データを送信する通信部を有する情報提供サーバであり、
前記仮想オブジェクト表示制御データは、
ビーコン送信装置近傍の実オブジェクトを撮影した基準画像と、該基準画像に含まれる実オブジェクトと、実オブジェクト近傍の登録情報設定ポイントとの仮想3次元空間での位置情報を記録した情報である情報提供サーバ。
(12) 前記仮想オブジェクト表示制御データは。
前記実オブジェクトと前記登録情報設定ポイントと仮想3次元空間座標での位置情報を記録したHTML(Hyper Text Markup Language)データと、
前記情報処理装置の表示部に対する前記登録情報設定ポイントの表示位置算出処理の手順を記録したプログラムを含む前記(11)に記載の情報提供サーバ。
(13) 情報処理装置の受信したビーコンの転送信号を、該情報処理装置から受信する通信部と、
転送されたビーコンに基づいて、該ビーコンの送信装置近傍の実オブジェクトを含む基準画像と、前記実オブジェクトと前記登録情報設定ポイントとの仮想3次元空間座標での位置情報を記録した仮想オブジェクト表示制御データを取得するためのアクセス情報を前記情報処理装置に送信する処理を実行するデータ処理部を有する検索サーバ。
(14) 情報処理装置において実行する情報処理方法であり、
前記情報処理装置は、撮像部と、前記撮像部の撮影画像を表示する表示部と、撮影画像に含まれる実世界の登録情報設定ポイントを示す仮想オブジェクトを前記表示部に表示するデータ処理部を有し、
前記データ処理部が、
実世界での実オブジェクトを撮影した基準画像であるアンカーと、仮想3次元空間座標系での前記アンカーの位置情報と前記登録情報設定ポイントの位置情報を記録した仮想オブジェクト表示制御データを入力し、
前記撮像部の撮影画像からアンカーを検出し、検出したアンカーの仮想3次元空間座標での位置および方向から、前記撮像部の仮想3次元空間での位置を特定して、前記表示部の座標系である表示部座標系における前記登録情報設定ポイントの位置を算出し、算出位置に基づき、前記登録情報設定ポイントを示す仮想オブジェクトを表示する情報処理方法。
(15) 情報処理装置において情報処理を実行させるプログラムであり、
前記情報処理装置は、撮像部と、前記撮像部の撮影画像を表示する表示部と、撮影画像に含まれる実世界の登録情報設定ポイントを示す仮想オブジェクトを前記表示部に表示するデータ処理部を有し、
前記プログラムは、前記データ処理部に、
実世界での実オブジェクトを撮影した基準画像であるアンカーと、仮想3次元空間座標系での前記アンカーの位置情報と前記登録情報設定ポイントの位置情報を記録した仮想オブジェクト表示制御データを入力させ、
前記撮像部の撮影画像からアンカーを検出し、検出したアンカーの仮想3次元空間座標での位置および方向から、前記撮像部の仮想3次元空間での位置を特定して、前記表示部の座標系である表示部座標系における前記登録情報設定ポイントの位置を算出し、算出位置に基づき、前記登録情報設定ポイントを示す仮想オブジェクトを表示させるプログラム。
また、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。例えば、プログラムは記録媒体に予め記録しておくことができる。記録媒体からコンピュータにインストールする他、LAN(Local Area Network)、インターネットといったネットワークを介してプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
以上、説明したように、本開示の一実施例の構成によれば、実3次元空間での実オブジェクトの位置に正確に対応付けて、登録情報設定ポイント(POI)を、情報処理装置の位置を原点とした座標系に変換し、情報処理装置の位置、方向に合わせて表示部に登録情報を表示する装置、方法が実現される。
具体的には、実オブジェクトを撮影した基準画像であるアンカー、およびアンカーと登録情報設定ポイントの仮想3次元空間座標での位置情報(位置、方向等)を記録した表示制御データを入力し、撮影画像からアンカーを検出し、仮想3次元空間での情報装置の位置を特定し、特定した3次元位置と、表示制御データに記録された登録情報設定ポイントの位置情報から、端末座標系での3次元位置、および、表示デバイスの2次元座標系での表示位置を算出してポイント位置を表示する。
本構成により、実3次元空間での実オブジェクトの位置に正確に対応付けて、登録情報設定ポイント(POI)を、情報処理装置の位置を原点とした座標系に変換し、情報処理装置の位置、方向に合わせて表示部に登録情報を表示する装置、方法が実現される。
10 情報処理装置(ユーザ端末)
20 ビーコン送信装置
30 ネットワーク
40 検索サーバ
50 情報提供サーバ
101,102 登録情報設定ポイント(POI)
111,121 ポイント(POI)位置識別マーク
121,122 ポイント(POI)対応登録情報
201,202 基準実オブジェクト
211,212 登録情報設定ポイント(POI)
301 ポイント(POI)位置識別マーク
302 ポイント(POI)対応登録情報
321 ポイント(POI)位置識別マーク
322 ポイント(POI)対応登録情報
501 ビーコン検出部
502 データ処理部(制御部)
503 動きセンサ
504 記憶部
505 カメラ
506 入力部
507 出力部(表示部等)
508 通信部
509 各種センサ
510 タイマ
701 CPU
702 ROM
703 RAM
704 バス
705 入出力インタフェース
706 入力部
707 出力部
708 記憶部
709 通信部
710 ドライブ
711 リムーバブルメディア

Claims (15)

  1. 撮像部と、
    前記撮像部の撮影画像を表示する表示部と、
    撮影画像に含まれる実世界の登録情報設定ポイントを示す仮想オブジェクトを前記表示部に表示するデータ処理部を有し、
    前記データ処理部は、
    実世界での実オブジェクトを撮影した基準画像であるアンカーと、仮想3次元空間座標系での前記アンカーの位置情報と前記登録情報設定ポイントの位置情報を記録した仮想オブジェクト表示制御データを入力し、
    前記撮像部の撮影画像からアンカーを検出し、検出したアンカーの仮想3次元空間座標での位置および方向から、前記撮像部の仮想3次元空間での位置を特定して、前記表示部の座標系である表示部座標系における前記登録情報設定ポイントの位置を算出し、算出位置に基づき、前記登録情報設定ポイントを示す仮想オブジェクトを表示する情報処理装置。
  2. 前記データ処理部は、
    ビーコン送信装置から受信するビーコンを検索サーバに送信し、
    検索サーバから、ビーコン送信装置近傍の実オブジェクトを撮影した基準画像であるアンカーと、前記実オブジェクトと前記登録情報設定ポイントとの相対位置情報を記録した仮想オブジェクト表示制御データを取得するためのアクセス情報を受信し、
    受信したアクセス情報を適用して、情報提供サーバから前記ビーコン送信装置近傍の実オブジェクト情報を含む仮想オブジェクト表示制御データを受信する請求項1に記載の情報処理装置。
  3. 前記仮想オブジェクト表示制御データは、前記登録情報設定ポイントに対応する登録情報を含み、
    前記データ処理部は、
    前記表示部に表示された撮影画像上に、ポイント位置識別マークとともに、前記登録情報を重畳表示する請求項1に記載の情報処理装置。
  4. 前記仮想オブジェクト表示制御データは、前記実オブジェクトを撮影した基準画像であるアンカーと前記登録情報設定ポイントとの3次元空間での位置情報を記録したHTML(Hyper Text Markup Language)データを含み、
    前記データ処理部は、HTMLデータを適用して、前記登録情報設定ポイントの表示部座標系における位置算出処理を実行する請求項1に記載の情報処理装置。
  5. 前記仮想オブジェクト表示制御データは、前記登録情報設定ポイントの情報処理装置の位置を基準とした位置の算出処理の手順を記録したプログラムを含み、
    前記データ処理部は、前記プログラムを適用して、前記登録情報設定ポイント表示位置の算出処理を実行する請求項1に記載の情報処理装置。
  6. 前記データ処理部は、
    前記アンカーの基準画像からの情報処理装置のの3次元位置算出処理を、SLAM(simultaneous localization and mapping)を適用して実行する請求項1に記載の情報処理装置。
  7. 前記情報処理装置は、
    情報処理装置自身の動きを検出する動きセンサを有し、
    前記データ処理部は、
    前記動きセンサの入力情報と、撮影画像から検出される実オブジェクト(アンカー)を適用して、情報処理装置自身の3次元位置算出処理を実行する請求項1に記載の情報処理装置。
  8. 前記データ処理部は、
    前記表示部に表示された撮影画像の動きに応じて、前記登録情報設定ポイントの情報装置を基準とした置を新たに算出し、新たに算出した位置に前記ポイントを表示する表示更新処理を実行する請求項1に記載の情報処理装置。
  9. 前記データ処理部は、
    仮想オブジェクト表示制御データに記録されたイベント検出に応じて、前記仮想オブジェクトの表示、または表示更新処理を実行する請求項1に記載の情報処理装置。
  10. 前記表示部は、3次元画像を表示可能な表示部であり、
    前記データ処理部は、左眼用画像と右眼用画像の各々について、登録情報設定ポイント表示位置を算出し、算出表示位置に仮想オブジェクトであるポイント位置識別マークを重畳表示する請求項1に記載の情報処理装置。
  11. ビーコン送信装置近傍の実オブジェクト情報を含む仮想オブジェクト表示制御データを格納した記憶部と、
    情報処理装置からの制御情報取得要求に応じて前記仮想オブジェクト表示制御データを送信する通信部を有する情報提供サーバであり、
    前記仮想オブジェクト表示制御データは、
    ビーコン送信装置近傍の実オブジェクトを撮影した基準画像と、該基準画像に含まれる実オブジェクトと、実オブジェクト近傍の登録情報設定ポイントとの仮想3次元空間での位置情報を記録した情報である情報提供サーバ。
  12. 前記仮想オブジェクト表示制御データは。
    前記実オブジェクトと前記登録情報設定ポイントと仮想3次元空間座標での位置情報を記録したHTML(Hyper Text Markup Language)データと、
    前記情報処理装置の表示部に対する前記登録情報設定ポイントの表示位置算出処理の手順を記録したプログラムを含む請求項11に記載の情報提供サーバ。
  13. 情報処理装置の受信したビーコンの転送信号を、該情報処理装置から受信する通信部と、
    転送されたビーコンに基づいて、該ビーコンの送信装置近傍の実オブジェクトを含む基準画像と、前記実オブジェクトと前記登録情報設定ポイントとの仮想3次元空間座標での位置情報を記録した仮想オブジェクト表示制御データを取得するためのアクセス情報を前記情報処理装置に送信する処理を実行するデータ処理部を有する検索サーバ。
  14. 情報処理装置において実行する情報処理方法であり、
    前記情報処理装置は、撮像部と、前記撮像部の撮影画像を表示する表示部と、撮影画像に含まれる実世界の登録情報設定ポイントを示す仮想オブジェクトを前記表示部に表示するデータ処理部を有し、
    前記データ処理部が、
    実世界での実オブジェクトを撮影した基準画像であるアンカーと、仮想3次元空間座標系での前記アンカーの位置情報と前記登録情報設定ポイントの位置情報を記録した仮想オブジェクト表示制御データを入力し、
    前記撮像部の撮影画像からアンカーを検出し、検出したアンカーの仮想3次元空間座標での位置および方向から、前記撮像部の仮想3次元空間での位置を特定して、前記表示部の座標系である表示部座標系における前記登録情報設定ポイントの位置を算出し、算出位置に基づき、前記登録情報設定ポイントを示す仮想オブジェクトを表示する情報処理方法。
  15. 情報処理装置において情報処理を実行させるプログラムであり、
    前記情報処理装置は、撮像部と、前記撮像部の撮影画像を表示する表示部と、撮影画像に含まれる実世界の登録情報設定ポイントを示す仮想オブジェクトを前記表示部に表示するデータ処理部を有し、
    前記プログラムは、前記データ処理部に、
    実世界での実オブジェクトを撮影した基準画像であるアンカーと、仮想3次元空間座標系での前記アンカーの位置情報と前記登録情報設定ポイントの位置情報を記録した仮想オブジェクト表示制御データを入力させ、
    前記撮像部の撮影画像からアンカーを検出し、検出したアンカーの仮想3次元空間座標での位置および方向から、前記撮像部の仮想3次元空間での位置を特定して、前記表示部の座標系である表示部座標系における前記登録情報設定ポイントの位置を算出し、算出位置に基づき、前記登録情報設定ポイントを示す仮想オブジェクトを表示させるプログラム。
JP2016538184A 2014-08-01 2015-05-25 情報処理装置、および情報処理方法、並びにプログラム Expired - Fee Related JP6635037B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2014158132 2014-08-01
JP2014158132 2014-08-01
PCT/JP2015/064894 WO2016017253A1 (ja) 2014-08-01 2015-05-25 情報処理装置、および情報処理方法、並びにプログラム

Publications (2)

Publication Number Publication Date
JPWO2016017253A1 true JPWO2016017253A1 (ja) 2017-05-18
JP6635037B2 JP6635037B2 (ja) 2020-01-22

Family

ID=55217158

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016538184A Expired - Fee Related JP6635037B2 (ja) 2014-08-01 2015-05-25 情報処理装置、および情報処理方法、並びにプログラム

Country Status (5)

Country Link
US (1) US10462406B2 (ja)
EP (1) EP3176757A4 (ja)
JP (1) JP6635037B2 (ja)
CN (1) CN106663338A (ja)
WO (1) WO2016017253A1 (ja)

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105988776B (zh) * 2015-01-27 2019-11-26 阿里巴巴集团控股有限公司 信息卡处理方法及装置
JP6790417B2 (ja) * 2016-03-31 2020-11-25 ソニー株式会社 情報処理装置及び情報処理サーバ
JP6801259B2 (ja) * 2016-06-28 2020-12-16 富士通株式会社 電子機器及びシステム
CN107979628B (zh) * 2016-10-24 2020-04-21 腾讯科技(深圳)有限公司 获取虚拟物品的方法、装置及系统
CN107392961B (zh) * 2017-06-16 2019-12-06 华勤通讯技术有限公司 基于增强现实的空间定位方法及装置
GB201714349D0 (en) * 2017-09-06 2017-10-18 Xyz Reality Ltd A method and equipment for setting out a construction site
JP2019061590A (ja) * 2017-09-28 2019-04-18 富士ゼロックス株式会社 情報処理装置、情報処理システム及びプログラム
CN108197621A (zh) * 2017-12-28 2018-06-22 北京金堤科技有限公司 企业信息获取方法及系统和信息处理方法及系统
US10779791B2 (en) * 2018-03-16 2020-09-22 General Electric Company System and method for mobile X-ray imaging
CN108682036B (zh) * 2018-04-27 2022-10-25 腾讯科技(深圳)有限公司 位姿确定方法、装置及存储介质
JP7254464B2 (ja) 2018-08-28 2023-04-10 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、及びプログラム
CN109558870A (zh) * 2018-11-30 2019-04-02 歌尔科技有限公司 一种可穿戴设备及障碍物提示方法
CN109907741B (zh) * 2019-03-06 2022-04-01 智美康民(珠海)健康科技有限公司 三维脉波的显示方法、装置、计算机设备及存储介质
CN110287872A (zh) * 2019-06-25 2019-09-27 清华大学 一种基于移动终端的兴趣点视线方向识别方法及装置
CN110286768B (zh) * 2019-06-27 2022-05-17 Oppo广东移动通信有限公司 虚拟物体显示方法、终端设备及计算机可读存储介质
CN110275977B (zh) * 2019-06-28 2023-04-21 北京百度网讯科技有限公司 一种信息展示方法及装置
CN110413719A (zh) * 2019-07-25 2019-11-05 Oppo广东移动通信有限公司 信息处理方法及装置、设备、存储介质
JP7303711B2 (ja) * 2019-09-18 2023-07-05 五洋建設株式会社 画像表示システム
JP7484929B2 (ja) * 2019-10-28 2024-05-16 ソニーグループ株式会社 情報処理装置、情報処理方法およびプログラム
CN110926334B (zh) * 2019-11-29 2022-02-22 深圳市商汤科技有限公司 测量方法、装置、电子设备及存储介质
CN113409385B (zh) * 2020-03-16 2023-02-24 上海哔哩哔哩科技有限公司 特征图像识别定位方法及系统
JP6889304B1 (ja) * 2020-03-31 2021-06-18 株式会社博報堂Dyホールディングス 拡張現実表示システム、拡張現実表示方法、及びコンピュータプログラム
JP7376191B2 (ja) * 2020-06-15 2023-11-08 Necソリューションイノベータ株式会社 ガイド装置、ガイドシステム、ガイド方法、プログラム、及び、記録媒体
JP7355467B2 (ja) * 2020-06-15 2023-10-03 Necソリューションイノベータ株式会社 ガイド装置、ガイドシステム、ガイド方法、プログラム、及び、記録媒体
JP7215752B2 (ja) * 2020-07-19 2023-01-31 プレティア・テクノロジーズ株式会社 コンテンツ提供システム及びコンテンツ提供方法
CN112148122A (zh) * 2020-08-25 2020-12-29 中国电子科技集团公司第三十八研究所 面向穿戴式增强/混合现实设备的第三方视角实现方法
JP6975489B1 (ja) * 2020-12-18 2021-12-01 株式会社Gatari 情報処理システム、情報処理方法および情報処理プログラム
JP7167207B2 (ja) * 2021-02-12 2022-11-08 株式会社ポケモン プログラム、方法、情報処理装置、システム
WO2022176450A1 (ja) * 2021-02-22 2022-08-25 ソニーグループ株式会社 情報処理装置、情報処理方法、およびプログラム
KR20220152736A (ko) * 2021-05-10 2022-11-17 삼성전자주식회사 시청자 환경 기반 ar 서비스 제공 방법 및 장치
CN115543065A (zh) * 2021-06-29 2022-12-30 富联国基(上海)电子有限公司 一种扩增实境环境中物件的展示方法与系统
CN113900517B (zh) * 2021-09-30 2022-12-20 北京百度网讯科技有限公司 线路导航方法和装置、电子设备、计算机可读介质
US11933621B2 (en) * 2021-10-06 2024-03-19 Qualcomm Incorporated Providing a location of an object of interest
CN114935977B (zh) * 2022-06-27 2023-04-07 北京五八信息技术有限公司 空间锚点处理方法、装置、电子设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011055250A (ja) * 2009-09-02 2011-03-17 Sony Corp 情報提供方法及び装置、情報表示方法及び携帯端末、プログラム、並びに情報提供システム
JP2012128779A (ja) * 2010-12-17 2012-07-05 Panasonic Corp 仮想物体表示装置
WO2013027628A1 (ja) * 2011-08-24 2013-02-28 ソニー株式会社 情報処理装置、情報処理方法及びプログラム
JP2015069319A (ja) * 2013-09-27 2015-04-13 株式会社ダスキン 情報検索装置、情報検索方法、及び情報検索プログラム

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4631987B2 (ja) 1998-10-19 2011-02-16 ソニー株式会社 情報処理端末、情報処理システム及び情報処理方法
GB2411532B (en) * 2004-02-11 2010-04-28 British Broadcasting Corp Position determination
US20060190812A1 (en) * 2005-02-22 2006-08-24 Geovector Corporation Imaging systems including hyperlink associations
US9001252B2 (en) * 2009-11-02 2015-04-07 Empire Technology Development Llc Image matching to augment reality
JP5725296B2 (ja) 2011-07-29 2015-05-27 セイコーエプソン株式会社 運動情報生成装置、運動情報生成プログラム及び記録媒体
US20150070347A1 (en) * 2011-08-18 2015-03-12 Layar B.V. Computer-vision based augmented reality system
WO2013029674A1 (en) * 2011-08-31 2013-03-07 Metaio Gmbh Method of matching image features with reference features
US8891907B2 (en) * 2011-12-06 2014-11-18 Google Inc. System and method of identifying visual objects
JP6056178B2 (ja) * 2012-04-11 2017-01-11 ソニー株式会社 情報処理装置、表示制御方法及びプログラム
KR101356192B1 (ko) * 2012-04-26 2014-01-24 서울시립대학교 산학협력단 영상매칭 기반의 스마트폰의 위치자세 결정 방법 및 시스템
US8743224B2 (en) * 2012-07-13 2014-06-03 Intel Corporation Context based management for secure augmented reality applications
US10127724B2 (en) * 2013-01-04 2018-11-13 Vuezr, Inc. System and method for providing augmented reality on mobile devices
CN103971400B (zh) * 2013-02-06 2018-02-02 阿里巴巴集团控股有限公司 一种基于标识码的三维交互的方法和系统
US9699375B2 (en) * 2013-04-05 2017-07-04 Nokia Technology Oy Method and apparatus for determining camera location information and/or camera pose information according to a global coordinate system
US9183583B2 (en) * 2013-05-13 2015-11-10 A9.Com, Inc. Augmented reality recommendations
US20150098616A1 (en) * 2013-10-03 2015-04-09 Qualcomm Incorporated Object recognition and map generation with environment references
JP6237326B2 (ja) * 2014-02-25 2017-11-29 富士通株式会社 姿勢推定装置、姿勢推定方法及び姿勢推定用コンピュータプログラム
WO2015167515A1 (en) * 2014-04-30 2015-11-05 Longsand Limited Augmented reality without a physical trigger

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011055250A (ja) * 2009-09-02 2011-03-17 Sony Corp 情報提供方法及び装置、情報表示方法及び携帯端末、プログラム、並びに情報提供システム
JP2012128779A (ja) * 2010-12-17 2012-07-05 Panasonic Corp 仮想物体表示装置
WO2013027628A1 (ja) * 2011-08-24 2013-02-28 ソニー株式会社 情報処理装置、情報処理方法及びプログラム
JP2015069319A (ja) * 2013-09-27 2015-04-13 株式会社ダスキン 情報検索装置、情報検索方法、及び情報検索プログラム

Also Published As

Publication number Publication date
US10462406B2 (en) 2019-10-29
JP6635037B2 (ja) 2020-01-22
WO2016017253A1 (ja) 2016-02-04
EP3176757A1 (en) 2017-06-07
EP3176757A4 (en) 2018-02-28
CN106663338A (zh) 2017-05-10
US20170201708A1 (en) 2017-07-13

Similar Documents

Publication Publication Date Title
JP6635037B2 (ja) 情報処理装置、および情報処理方法、並びにプログラム
JP6683127B2 (ja) 情報処理装置、および情報処理方法、並びにプログラム
US20210131790A1 (en) Information processing apparatus, information processing method, and recording medium
TWI574223B (zh) 運用擴增實境技術之導航系統
EP2915140B1 (en) Fast initialization for monocular visual slam
JP6296056B2 (ja) 画像処理装置、画像処理方法及びプログラム
US9280851B2 (en) Augmented reality system for supplementing and blending data
US10733798B2 (en) In situ creation of planar natural feature targets
JP4743818B2 (ja) 画像処理装置、画像処理方法、コンピュータプログラム
JP6180647B2 (ja) クラウドポイントを利用した屋内地図構築装置および方法
KR101413011B1 (ko) 위치 정보 기반 증강현실 시스템 및 제공 방법
US20240087157A1 (en) Image processing method, recording medium, image processing apparatus, and image processing system
KR101253644B1 (ko) 위치 정보를 이용한 증강 현실 콘텐츠 출력 장치 및 방법
KR20180068483A (ko) 도로표지판의 위치정보 데이터베이스 구축 시스템 및 그 방법과 이를 이용한 차량의 위치 추정 장치 및 그 방법
WO2019127320A1 (zh) 信息处理方法、装置、云处理设备及计算机程序产品
JP6959305B2 (ja) 生成装置、生成方法、および生成プログラム
JP5357966B2 (ja) 情報システム、サーバ装置、端末装置、情報処理方法、およびプログラム
US9870514B2 (en) Hypotheses line mapping and verification for 3D maps
US10735902B1 (en) Method and computer program for taking action based on determined movement path of mobile devices
JP7039535B2 (ja) 生成装置、生成方法、および生成プログラム
KR20190048738A (ko) 증강현실용 컨텐츠 제공 장치 및 방법
Etzold et al. MIPos: towards mobile image positioning in mixed reality web applications based on mobile sensors
CN114966749A (zh) 视觉测量方法及rtk接收机

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180507

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190528

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190610

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190806

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190925

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20191119

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191202

R151 Written notification of patent or utility model registration

Ref document number: 6635037

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees