JP7486180B2 - Information processing system, information processing device, information processing method, and program - Google Patents
Information processing system, information processing device, information processing method, and program Download PDFInfo
- Publication number
- JP7486180B2 JP7486180B2 JP2020162850A JP2020162850A JP7486180B2 JP 7486180 B2 JP7486180 B2 JP 7486180B2 JP 2020162850 A JP2020162850 A JP 2020162850A JP 2020162850 A JP2020162850 A JP 2020162850A JP 7486180 B2 JP7486180 B2 JP 7486180B2
- Authority
- JP
- Japan
- Prior art keywords
- coordinate system
- information processing
- processing device
- space
- information
- 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.)
- Active
Links
- 230000010365 information processing Effects 0.000 title claims description 307
- 238000003672 processing method Methods 0.000 title claims description 8
- 238000000034 method Methods 0.000 claims description 40
- 230000008569 process Effects 0.000 claims description 30
- 230000003190 augmentative effect Effects 0.000 claims description 9
- 238000004891 communication Methods 0.000 description 28
- 230000006870 function Effects 0.000 description 14
- 239000003550 marker Substances 0.000 description 12
- 238000003384 imaging method Methods 0.000 description 10
- 238000012545 processing Methods 0.000 description 9
- 230000009466 transformation Effects 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 239000011159 matrix material Substances 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000004807 localization Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
Landscapes
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- User Interface Of Digital Computer (AREA)
- Processing Or Creating Images (AREA)
- Digital Computer Display Output (AREA)
Description
本開示は、情報処理システム、情報処理装置、情報処理方法、及びプログラムに関する。 This disclosure relates to an information processing system, an information processing device, an information processing method, and a program.
従来、携帯端末等の情報処理装置において、拡張現実(AR;Augmented Reality)を利用したゲーム等の各種情報処理の実行が可能となっている(例えば特許文献1参照)。 Conventionally, information processing devices such as mobile terminals have been capable of executing various types of information processing, such as games that utilize augmented reality (AR) (see, for example, Patent Document 1).
しかしながら、近年、複数人が複数の携帯端末のそれぞれを用いて、ARを利用したゲームの実行等をしたいという要求がなされているが、特許文献1を含め従来の技術では、このような要望に十分に応えることができない状況である。
However, in recent years, there has been a demand for multiple people to use multiple mobile devices to play games that utilize AR, but conventional technologies, including those described in
本開示は上記問題点に鑑みてなされたものであり、その目的は、複数の情報処理装置がARを利用したゲーム等の各種情報処理を適切に実行できるようにすることが可能な情報処理システム、情報処理装置、情報処理方法、及びプログラムを提供することである。 The present disclosure has been made in consideration of the above problems, and its purpose is to provide an information processing system, information processing device, information processing method, and program that enable multiple information processing devices to appropriately execute various types of information processing, such as games that use AR.
本開示によれば、第1の情報処理装置と、前記第1の情報処理装置と通信可能に接続される第2の情報処理装置とを備え、
前記第1の情報処理装置は、
第1の仮想空間に第1の座標系を設定する座標系設定手段と、
前記第1の座標系における前記第1の情報処理装置の第1の位置を決定する自分位置決定手段と、
前記第1の位置を前記第2の情報処理装置に送信する送信手段と、
前記第2の情報処理装置から第2の位置を受信する受信手段と、
前記第1の座標系上での前記第2の位置を前記第2の情報処理装置の位置として決定する相手位置決定手段と、を有し、
前記第2の情報処理装置は、
第2の仮想空間に第2の座標系を設定するとともに、前記第2の座標系の原点から離れた位置に第3の座標系の原点が位置するように前記第3の座標系を設定する座標系設定手段と、
前記第3の座標系における前記第2の情報処理装置の第3の位置を決定する自分位置決定手段と、
前記第3の位置を前記第2の位置として前記第1の情報処理装置に送信する送信手段と、
前記第1の情報処理装置から前記第1の位置を受信する受信手段と、
前記第3の座標系上での前記第1の位置を前記第1の情報処理装置の位置として決定する相手位置決定手段と、を有することを特徴とする情報処理システムが提供される。
According to the present disclosure, a first information processing device and a second information processing device communicably connected to the first information processing device are provided,
The first information processing device,
a coordinate system setting means for setting a first coordinate system in a first virtual space;
a self-position determining means for determining a first position of the first information processing device in the first coordinate system;
a transmitting means for transmitting the first location to the second information processing device;
receiving means for receiving a second position from the second information processing device;
a counterpart position determining means for determining the second position on the first coordinate system as a position of the second information processing device,
The second information processing device is
a coordinate system setting means for setting a second coordinate system in a second virtual space and setting a third coordinate system so that the origin of the third coordinate system is located at a position away from the origin of the second coordinate system;
a self-position determining means for determining a third position of the second information processing device in the third coordinate system;
a transmitting means for transmitting the third location as the second location to the first information processing device;
a receiving means for receiving the first position from the first information processing device;
and a partner position determining means for determining the first position on the third coordinate system as the position of the first information processing device.
また、本開示によれば、他情報処理装置との間で情報の授受を行う情報処理装置であって、
所定空間に主座標系を設定するとともに、該主座標系の原点から離れた位置に副座標系の原点が位置するように前記所定空間に該副座標系を設定する座標系設定手段と、
前記他情報処理装置から受け取った前記他情報処理装置の位置を示す位置情報に基づいて、前記所定空間における前記副座標系上での前記他情報処理装置の位置を決定する相手位置決定手段と、を備える情報処理装置が提供される。
According to the present disclosure, there is also provided an information processing device that transmits and receives information to and from another information processing device,
a coordinate system setting means for setting a main coordinate system in a predetermined space and setting a secondary coordinate system in the predetermined space so that the origin of the secondary coordinate system is located at a position away from the origin of the main coordinate system;
An information processing device is provided that includes a partner position determination means that determines the position of the other information processing device on the sub-coordinate system in the specified space based on position information indicating the position of the other information processing device received from the other information processing device.
また、本開示によれば、他情報処理装置との間で情報の授受を行う情報処理装置であって、
所定空間に主座標系を設定するとともに、該主座標系の原点から離れた位置に副座標系の原点が位置するように前記所定空間に該副座標系を設定する座標系設定手段と、
前記所定空間における前記副座標系上の前記情報処理装置の位置を取得する自分位置決定手段と、
前記副座標系上の位置を前記情報処理装置の位置として前記他情報処理装置に送信する送信手段と、を備える情報処理装置が提供される。
According to the present disclosure, there is also provided an information processing device that transmits and receives information to and from another information processing device,
a coordinate system setting means for setting a main coordinate system in a predetermined space and setting a secondary coordinate system in the predetermined space so that the origin of the secondary coordinate system is located at a position away from the origin of the main coordinate system;
a self-position determining means for acquiring a position of the information processing device on the sub-coordinate system in the predetermined space;
There is provided an information processing device comprising: a transmitting means for transmitting the position on the sub coordinate system to the other information processing device as the position of the information processing device.
また、本開示によれば、他情報処理装置との間で情報の授受を行う情報処理装置が実行する情報処理方法において、
所定空間に主座標系を設定するとともに、該主座標系の原点から離れた位置に副座標系の原点が位置するように前記所定空間に該副座標系を設定する座標系設定ステップと、
前記他情報処理装置から受け取った前記他情報処理装置の位置を示す位置情報に基づいて、前記所定空間における前記副座標系上での前記他情報処理装置の位置を決定する相手位置決定ステップと、を含む情報処理方法が提供される。
According to the present disclosure, there is also provided an information processing method executed by an information processing device that transmits and receives information to and from another information processing device, comprising:
a coordinate system setting step of setting a main coordinate system in a predetermined space and setting a secondary coordinate system in the predetermined space such that the origin of the secondary coordinate system is located at a position away from the origin of the main coordinate system;
An information processing method is provided that includes a partner position determination step of determining the position of the other information processing device on the sub-coordinate system in the specified space based on position information indicating the position of the other information processing device received from the other information processing device.
また、本開示によれば、他情報処理装置との間で情報の授受を行う情報処理装置を制御するコンピュータに、
所定空間に主座標系を設定するとともに、該主座標系の原点から離れた位置に副座標系の原点が位置するように前記所定空間に該副座標系を設定する座標系設定ステップと、
前記他情報処理装置から受け取った前記他情報処理装置の位置を示す位置情報に基づいて、前記所定空間における前記副座標系上での前記他情報処理装置の位置を決定する相手位置決定ステップと、を含む制御処理を実行させるプログラムが提供される。
According to the present disclosure, a computer that controls an information processing device that transmits and receives information to and from another information processing device includes:
a coordinate system setting step of setting a main coordinate system in a predetermined space and setting a secondary coordinate system in the predetermined space such that the origin of the secondary coordinate system is located at a position away from the origin of the main coordinate system;
A program is provided for executing a control process including a partner position determination step for determining the position of the other information processing device on the sub-coordinate system in the specified space based on position information indicating the position of the other information processing device received from the other information processing device.
本開示によれば、複数の情報処理装置がARを利用したゲーム等の各種情報処理を適切に実行できるようになる。 This disclosure enables multiple information processing devices to appropriately execute various types of information processing, such as games that use AR.
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。 A preferred embodiment of the present disclosure will be described in detail below with reference to the attached drawings. Note that in this specification and drawings, components having substantially the same functional configuration are designated by the same reference numerals to avoid redundant description.
図1は、本開示の情報処理装置1に係る一実施形態のハードウェア構成を示すブロック図である。
Figure 1 is a block diagram showing the hardware configuration of one embodiment of the
情報処理装置1は、例えば通信機能及び撮影機能を備えるスマートフォン等の携帯端末とすることができる。情報処理装置1は、CPU(Central Processing Unit)21と、ROM(Read Only Memory)22と、RAM(Random Access Memory)23と、バス24と、入出力インターフェース25と、タッチ操作入力部26と、表示部27と、撮像部28と、記憶部29と、通信部30と、ドライブ31と、を備えている。
The
CPU21は、ROM22に記録されているプログラム、又は、記憶部29からRAM23にロードされたプログラムに従って各種の処理を実行する。RAM23は、CPU21が各種の処理を実行する上において必要なデータ等を適宜記憶することができる。
The
CPU21、ROM22及びRAM23は、バス24を介して相互に接続されている。また、バス24には入出力インターフェース25も接続されている。入出力インターフェース25は、タッチ操作入力部26、表示部27、撮像部28、記憶部29、通信部30及びドライブ31に接続されている。
The
タッチ操作入力部26は、例えば表示部27に積層される静電容量式又は抵抗膜式(感圧式)の位置入力センサにより構成され、タッチ操作がなされた位置の座標を検出する。
The touch
ここで、タッチ操作とは、タッチ操作入力部26に対する物体の接触又は近接の操作をいう。タッチ操作入力部26に対して接触又は近接する物体は、例えばプレイヤーの指やタッチペン等である。
Here, a touch operation refers to an operation of bringing an object into contact with or into proximity with the touch
表示部27は、液晶等のディスプレイ(表示装置)により構成され、ゲームに関する画像等、各種画像を表示する。上記のように、本実施形態では、タッチ操作入力部26と表示部27とにより、タッチパネルが構成されている。
The
撮像部28は、プレイヤーの指示操作に応じて被写体を撮像し、その結果得られる撮像画像のデータを出力する。
The
記憶部29は、DRAM(Dynamic Random Access Memory)等で構成され、各種データを記憶する。
The
通信部30は、インターネットを含むネットワーク(図示省略)を介して、他の装置(図示せぬサーバや図示せぬ他のプレイヤー端末(他情報処理装置)等)との間で行う通信(情報の送受信)を制御する。
The
ドライブ31は、必要に応じて設けられる。ドライブ31には、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリ等よりなる、リムーバブルメディア32が適宜装着される。ドライブ31によってリムーバブルメディア32から読み出されたプログラムは、必要に応じて記憶部29にインストールされる。また、リムーバブルメディア32は、記憶部29に記憶されている各種データも、記憶部29と同様に記憶することができる。
The
このような図1の情報処理装置1の各種ハードウェアと各種ソフトウェアとの協働により、2台以上の情報処理装置1の間でARを利用したオンラインでのゲーム等の各種情報処理の実行が可能になる。これにより、2台以上の情報処理装置1間で(ネットワークを介する等して)情報の授受が可能な環境であれば、距離の離れた遠隔地であっても、2台以上の情報処理装置1間でARを利用したオンラインでのゲーム等が可能になる。
The cooperation of the various hardware and software of the
このように、本開示の一実施形態に係る複数の情報処理装置1を備える拡張現実システムは、実空間を撮影した現実画像に、仮想空間の画像を重畳させた拡張現実(AR;Augmented Reality)を提供する。これにより、本開示の一実施形態に係る複数の情報処理装置1を備える拡張現実システムによれば、ARを利用したオンラインでのゲーム等の各種情報処理の実行が可能になる。なお、仮想空間に現実画像を反映させた複合現実(MR;Mixed Reality)や仮想空間の画像のみの仮想現実(VR;Virtual Reality)を提供するようにしてもよい。
In this way, the augmented reality system including multiple
ここで、2台以上の情報処理装置1が、ARを利用したゲーム等の各種情報処理を実行するに際し、各情報処理装置1は撮像された画像に基づいて情報処理装置1内で仮想的にAR空間を構築する。AR空間とは、情報処理装置1において処理される空間であって、実空間に対してオブジェクトの配置等何らかの情報が付加される空間をいう。
When two or more
AR空間内でのオブジェクト等の位置や姿勢は、情報処理装置1によって認識されたAR空間内で用いられる座標系に基づいて規定される。座標系は、例えば3次元の直交座標系であり、直行する3本の座標軸(x軸、y軸、z軸)と、3本の座標軸が交わる原点を有する。
The positions and orientations of objects, etc. in the AR space are defined based on a coordinate system used in the AR space recognized by the
以下に、それぞれ別の実空間に位置する2台の情報処理装置1(例えば図2、3の第1装置1A及び第2装置1B)の間で情報の授受を行い、ARを利用したゲーム等の各種情報処理を実行する場合について説明する。なお、2台の情報処理装置1が「別の実空間に位置する」とは、例えば2台の情報処理装置1がそれぞれ別の建物に位置する場合、または、同一の建物の別の部屋に位置する場合等を含む。なお、2台の情報処理装置1が同一空間(例えば同一建物の同一の部屋)にあった場合でも、本例と同様の情報処理を行うことで、複数の情報処理装置1がARを利用したゲーム等の各種情報処理を適切に実行可能である。つまり、複数の情報処理装置1が同一の実空間にあるか否かに関わらず、また、実空間で他情報処理装置1が視認できるか否かに関わらず、本開示によれば、複数の情報処理装置1間での各種情報処理が可能となる。
Below, a case will be described in which information is exchanged between two information processing devices 1 (for example, the
ここで、例えば親機と子機からなる2台の情報処理装置1が、ARを利用したゲーム等の各種情報処理を実行するに際し、情報処理装置1のそれぞれは、各自のAR空間内に主座標系を設定する。
Here, when two
図2に示すように、親機としての第1装置1Aは実空間である部屋等の第1空間R1に位置し、子機としての第2装置1Bは、実空間である他の部屋等の第2空間R2に位置する。なお、第1空間R1における第1装置1Aの位置及び向き(姿勢)は図示例に限定されず、同様に第2空間R2における第2装置1Bの位置及び向き(姿勢)は図示例に限定されない。なお、本例では第1装置1Aを親機とし、第2装置1Bを子機としているが、これに限られるものではなく、第2装置1Bを親機とし、第1装置1Aを子機としてもよい。
As shown in FIG. 2, the
第1装置1A(第1の情報処理装置)は、座標系設定手段と、自分位置決定手段と、送信手段と、受信手段と、相手位置決定手段と、を有する。
The
座標系設定手段は、第1の仮想空間(AR空間SP1)に第1の座標系(座標系ax1)を設定する。座標系設定手段は、例えば後述する座標系設定部51とすることができる。座標系の設定は、例えばSLAM(Simultaneous Localization and Mapping)を動かす等して、空間を認識することによって行うことができるが、これに限られない。
The coordinate system setting means sets a first coordinate system (coordinate system ax1) in the first virtual space (AR space SP1). The coordinate system setting means can be, for example, a coordinate
自分位置決定手段は、第1の座標系(座標系ax1)における第1の情報処理装置の第1の位置を決定する。自分位置決定手段は、例えば後述する位置決定部52とすることができる。
The self-position determining means determines a first position of the first information processing device in the first coordinate system (coordinate system ax1). The self-position determining means can be, for example, the
送信手段は、第1の位置を前記第2の情報処理装置(第2装置1B)に送信する。送信手段は、例えば後述する通信部30とすることができる。
The transmission means transmits the first position to the second information processing device (
受信手段は、第2の情報処理装置(第2装置1B)から第2の位置を受信する。受信手段は、例えば後述する通信部30とすることができる。なお、本例では送信手段と受信手段との両方の機能を有する通信部30を設けているが、これに限られるものではない。例えば、送信手段としての機能を有する送信部と受信手段としての機能を有する受信部とを別々に設けてもよい。
The receiving means receives the second position from the second information processing device (
相手位置決定手段は、第1の座標系(座標系ax1)上での第2の位置を第2の情報処理装置(第2装置1B)の位置として決定する。相手位置決定手段は、例えば後述する位置決定部52とすることができる。なお、本例では自分位置決定手段と相手位置決定手段との両方の機能を有する位置決定部52を設けているが、これに限られるものではない。例えば、送信手段としての機能を有する送信部と受信手段としての機能を有する受信部とを別々に設けてもよい。
The other party position determination means determines the second position on the first coordinate system (coordinate system ax1) as the position of the second information processing device (
第2装置1B(第2の情報処理装置)は、座標系設定手段と、自分位置決定手段と、送信手段と、受信手段と、相手位置決定手段と、を有する。座標系設定手段は、例えば後述する座標系設定部51とすることができる。自分位置決定手段及び相手位置決定手段は、例えば後述する位置決定部52とすることができる。送信手段及び受信手段は、例えば後述する通信部30とすることができる。
The
座標系設定手段は、第2の仮想空間(AR空間SP2)に第2の座標系(座標系ax2)を設定するとともに、第2の座標系(座標系ax2)の原点から離れた位置に第3の座標系(座標系ax3)の原点が位置するように第3の座標系(座標系ax3)を設定する。 The coordinate system setting means sets a second coordinate system (coordinate system ax2) in the second virtual space (AR space SP2), and also sets a third coordinate system (coordinate system ax3) so that the origin of the third coordinate system (coordinate system ax3) is located at a position away from the origin of the second coordinate system (coordinate system ax2).
自分位置決定手段は、第3の座標系(座標系ax3)における第2の情報処理装置の第3の位置を決定する。自分位置決定手段が第3の座標系(後述する副座標系)における第2の情報処理装置の第3の位置を決定する方法としては、特に限定されないが、例えば、第2の座標系(後述する主座標系)上の位置を取得して、それを座標変換することにより、第3の座標系における第2の情報処理装置の第3の位置を決定することができる。あるいは、SLAMの環境マップ(点群)に基づいて位置を計算する場合に、所定距離Lの移動(シフト)及び向き変更(回転)が考慮されるように予めパラメータ設定(キャリブレーション)するようにしてもよい(例えば、iOS(登録商標)のARKit(登録商標)で提供されているsetWorldOrigin関数を用いることにより実現することができる。)。 The self-position determining means determines the third position of the second information processing device in the third coordinate system (coordinate system ax3). There is no particular limitation on the method by which the self-position determining means determines the third position of the second information processing device in the third coordinate system (sub-coordinate system described later), but for example, the third position of the second information processing device in the third coordinate system can be determined by acquiring a position on the second coordinate system (main coordinate system described later) and converting the coordinates of the acquired position. Alternatively, when calculating the position based on the SLAM environment map (point cloud), parameters may be set (calibrated) in advance so that a movement (shift) of a predetermined distance L and a change in orientation (rotation) are taken into account (for example, this can be achieved by using the setWorldOrigin function provided in ARKit (registered trademark) of iOS (registered trademark).).
送信手段は、第3の位置(座標系ax3上での第2装置1Bの位置)を第2の位置として第1の情報処理装置(第1装置1A)に送信する。
The transmitting means transmits the third position (the position of the
受信手段は、第1の情報処理装置(第1装置1A)から第1の位置を受信する。
The receiving means receives the first position from the first information processing device (
相手位置決定手段は、第3の座標系(座標系ax3)上での第1の位置を第1の情報処理装置(第1装置1A)の位置として決定する。
The other party position determination means determines the first position on the third coordinate system (coordinate system ax3) as the position of the first information processing device (
上記のように、子機としての第2装置1Bは、親機としての第1装置1A(他情報処理装置)との間で情報の授受を行う情報処理装置であって、
AR空間SP2(所定空間)に座標系ax2(主座標系、第2の座標系)を設定するとともに、座標系ax2の原点O2から離れた位置に座標系ax3(副座標系、第3の座標系)の原点O3が位置するようにAR空間SP2に座標系ax3を設定する座標系設定手段と、
第1装置1Aから受け取った座標系ax2上での第1装置1Aの位置を示す位置情報に基づいて、AR空間SP2での他情報処理装置の位置を決定する相手位置決定手段と、を備える。
As described above, the
a coordinate system setting means for setting a coordinate system ax2 (primary coordinate system, second coordinate system) in the AR space SP2 (predetermined space) and setting a coordinate system ax3 (secondary coordinate system, third coordinate system) in the AR space SP2 such that an origin O3 of the coordinate system ax3 is located at a position away from an origin O2 of the coordinate system ax2;
and a partner position determination means for determining the position of the other information processing device in the AR space SP2 based on position information indicating the position of the
上記のように、子機としての第2装置1Bは、座標系ax3(副座標系)上の位置を第2装置1Bの位置として第1装置1Aに送信する送信手段と、を備える。
As described above, the
上記の通り、第1装置1Aと第2装置1Bのそれぞれは、各自のAR空間において自分の位置と相手の位置を決定することができる。
As described above, each of the
また、第1装置1Aと第2装置1Bのそれぞれは、相手装置から受信した情報に基づき、相手装置の向き(姿勢)を決定することも可能である。各情報処理装置の向き(姿勢)は、例えばカメラ等の撮像部28が指向する向きとすることができる。この場合、第1装置1Aと第2装置1Bのそれぞれは、自分の向きを示す情報を、位置情報(座標)とともに、または位置情報とは別に相手装置に送信することができる。なお、各座標系におけるz軸(及びx軸)は水平方向に延在し、y軸が鉛直方向に延在していることが好ましい。
Each of the
また、第2装置1BがAR空間SP2において座標系ax3を設定する際には、例えば、座標系ax2の原点O2から、座標系ax2のz軸の正方向に、所定の距離Lだけ離れた位置に座標系ax3の原点O3を設定(配置)することができる。このように、AR空間SP2において座標系ax2とは異なる位置に座標系ax3を設定し、座標系ax3に基づき自分(第2装置1B)の位置を決定することで、AR空間SP2上で自分の位置と相手装置の位置とを最初から離れた状態に配置し易くなる。その結果、例えばゲームの開始時から相手装置を示すオブジェクトが離れた位置に設定されるので、当該相手装置のオブジェクトの位置を視認(確認)し易くなる。
Furthermore, when the
また、第2装置1BがAR空間SP2において座標系ax3を設定する際には、例えばy軸を中心(回転軸)としてx軸とz軸とが反転(180度回転)するように座標系ax2を設定することができる。この場合、AR空間SP2において、座標系ax2と座標系ax3とが(特に、z軸正方向同士が)互いに向かい合うこととなる。その結果、例えばAR空間SP2において各座標系ax2、ax3の原点O2,O3にそれぞれ位置する相手装置を最初の段階から容易に確認することができる。同様に、AR空間SP1においても相手装置を最初の段階から容易に確認することができる。そのため、例えば第1装置1Aと第2装置1BとがAR空間で互いに向かい合って対戦するゲーム等に適している。AR空間SP2での座標系ax2と座標系ax3の原点同士の距離L、及び相対的な向きは、AR空間SP2及びAR空間SP1での初期状態における第1装置1Aと第2装置1Bとの距離及び相対的な向きに対応する。なお、AR空間SP2での座標系ax2と座標系ax3の原点同士の距離L、及び相対的な向きは特に限定されず、適宜変更可能である。AR空間SP2での座標系ax2と座標系ax3の原点同士の距離L、及び相対的な向きは、予め設定された規定値であってもよいし、例えば2台以上の情報処理装置1間で情報の授受が開始された(セッションが開始された)時、またはその後の所定のタイミングに決定されるようにしてもよいし、情報処理装置1によって適宜選択可能なものとしてもよい。
When the
第1装置1Aは、上記のように自分のAR空間SP1に自分の座標系ax1を設定した後、第2装置1Bから、座標系ax3上での第2装置1Bの位置を示す位置情報(例えば座標(Xb', Yb', Zb'))及び必要に応じて第2装置1Bの向きを示す情報を受け取る。第1装置1Aは、この位置情報に基づいて、AR空間SP1上での第2装置1Bの位置を決定する。第1装置1Aは、座標系ax1に座標系ax3を重ねて配置した(原点位置と向きを一致させた)場合の第2装置1Bの位置を、AR空間SP1における第2装置1Bの位置と決定する。また、第1装置1Aは、例えば第2装置1Bから所定の時間間隔で繰返し位置情報を受け取り続けることで、AR空間SP1における第2装置1Bの位置を把握し続けることができる。これにより、第1装置1Aは、例えば、AR空間SP1に第2装置1Bを示すオブジェクトを配置することができる。そして、第1装置1Aは、撮像した実空間の画像に、上記第2装置1Bを示すオブジェクトの画像を重畳表示させることができる。なお、オブジェクトの形状は特に限定されず、任意の形状を採用可能である。
After setting its own coordinate system ax1 in its AR space SP1 as described above, the
また、第1装置1Aは、座標系ax3上での第2装置1Bの向きを示す情報を受け取り、当該情報に基づいて、AR空間SP1上での第2装置1Bの向きを決定することも可能である。
The
第2装置1Bは、第1装置1A(他情報処理装置)から受け取った座標系ax1上での第1装置1Aの位置を示す位置情報(例えば座標(Xb, Yb, Zb))に基づいて、AR空間SP2における座標系ax3上での第1装置1Aの位置を決定することができる。第2装置1Bは、座標系ax3に座標系ax1を重ねて配置した(原点位置と向きを一致させた)場合の第1装置1Aの位置を、AR空間SP2における第1装置1Aの位置と決定する。第2装置1Bは、例えば第1装置1Aから所定の時間間隔で繰返し位置情報を受け取り続けることで、AR空間SP2における第1装置1Aの位置を把握し続けることができる。これにより、第2装置1Bは、例えば、AR空間SP2に第1装置1Aを示すオブジェクトを配置することができる。そして、第2装置1Bは、撮像した実空間の画像に、上記第1装置1Aを示すオブジェクトの画像を重畳表示させることができる。
The
また、第2装置1Bは、座標系ax1上での第1装置1Aの向きを示す情報を受け取り、当該情報に基づいて、AR空間SP2上での第1装置1Aの向きを決定することも可能である。
The
第1装置1Aと第2装置1Bとは、上記のようにして、各自のAR空間SP1、SP2に仮想的に相手を配置する(相手の位置(及び向き)を決定する)ことができる。即ち、第1装置1Aは、最初に設定したAR空間SP1における座標系ax1を用いて、各種情報を処理する。一方、第2装置1Bは、最初に設定したAR空間SP2における座標系ax2と座標系ax3を用いて、各種情報を処理する。
The
第1装置1Aと第2装置1Bとは、互いの位置情報等の各種情報を、P2P(peer-to-peer)で相互に授受する。
The
以上説明した第1装置1Aと第2装置1Bとにおける一連の処理は、第1装置1Aと第2装置1Bとのそれぞれにおけるハードウェアとソフトウェアの協働により実現される。この場合、第1装置1Aと第2装置1Bとは、例えば図4に示す機能的構成を有することができる。図4は、第1装置1Aと第2装置1Bとのそれぞれにおける機能的構成のうち、上記座標系の設定と、位置決定とを含む一連の処理が実行される際の機能的構成の一例を示す機能ブロック図である。
The series of processes in the
図4に示すように、第1装置1AのCPU21においては、座標系設定部51(座標系設定手段)と、位置決定部52(位置決定手段)と、通信制御部53(通信制御手段)とが機能する。同様に、第2装置1BのCPU21においても、座標系設定部51(座標系設定手段)と、位置決定部52(位置決定手段)と、通信制御部53(通信制御手段)とが機能する。なお、第1装置1A及び/又は第2装置1BのCPU21には、例えばマーカ画像を生成するマーカ画像生成部、及びマーカ画像を表示部に表示させるマーカ画像表示制御部等が設けられていてもよい。
As shown in FIG. 4, in the
以下、図5を適宜参照しつつ、第1装置1Aと第2装置1Bの各機能ブロックの詳細について説明する。
The following describes in detail each of the functional blocks of the
図5は、図4の機能的構成を有する第1装置1Aと第2装置1Bとの間で実行される一連の処理の一例を説明するアローチャートである。
Figure 5 is an arrow chart illustrating an example of a series of processes executed between a
ステップS11において、第1装置1Aの座標系設定部51は、撮像部28により撮像された実空間の撮像画像のデータに基づいて空間認識を行い、構築したAR空間SP1に座標系ax1(図2)を設定する。次いでステップS12において、第1装置1Aの位置決定部52は、AR空間SP1における座標系ax1に基づく自分の位置を決定する。位置決定部52は、例えば、初期状態において座標系ax1の原点O1を自分の位置として決定する。
In step S11, the coordinate
上記ステップS11と同様に、ステップS21において、第2装置1Bの座標系設定部51は、撮像部28により撮像された実空間の撮像画像のデータに基づいて空間認識を行い、構築したAR空間SP2に座標系ax2(図2)を設定する。次いでステップS22において、第2装置1Bの座標系設定部51は、AR空間SP2における座標系ax2から所定距離Lだけ離れた位置にの原点O3が位置するように座標系ax3(図3)を設定する。この時、座標系ax3の向きは、座標系ax2の向きに対してy軸を中心として反転した向きに設定することができる。次いでステップS23において、第2装置1Bの位置決定部52は、AR空間SP2における座標系ax3に基づく自分の位置を決定する。位置決定部52は、例えば、初期状態において座標系ax2の原点O2を自分の位置として決定する。つまり、座標系ax3の原点O3から距離Lだけ離れた位置を、自分の位置をAR空間SP2における自分の位置と決定する。本例においてステップS11、S21、S22は座標系設定ステップを構成し、ステップS12、S23は、自分位置決定ステップを構成する。
In the same manner as in step S11, in step S21, the coordinate
ステップS13、S24において、第1装置1A及び第2装置1Bは、互いに情報の授受を行う。具体的に、ステップS13において、第1装置1Aの通信制御部53は、座標系ax1における第1装置1Aの位置情報(及び必要に応じて向きの情報等)を、通信部30を介して第2装置1Bに送信し、第2装置1Bは通信部30を介して当該情報を受信する。同様に、第2装置1Bは、ステップS24において、座標系ax3における第2装置1Bの位置情報等を、通信部30を介して第1装置1Aに送信し、第1装置1Aは通信部30を介して当該情報を受信する。なお、ステップS13とステップS24は同時であってもよいし、互いに異なるタイミングであってもよい。互いに異なるタイミングである場合、ステップS13とステップS24はどちらが先でもよい。
In steps S13 and S24, the
ステップS14において、第1装置1Aは、ステップS13(S24)において第2装置1Bから受け取った座標系ax3上での第2装置1Bの位置を示す位置情報に基づいて、AR空間SP1での第2装置1Bの位置を決定する。
In step S14, the
ステップS25において、第2装置1Bは、ステップS24(S13)において第1装置1Aから受け取った座標系ax1上での第1装置1Aの位置を示す位置情報に基づいて、AR空間SP2での第1装置1Aの位置を決定する。本例においてステップS13、S24及びステップS14、S25は相手位置決定ステップを構成する。
In step S25, the
ステップS12~S14及びステップS23~S25は、例えばゲームが終了するまで、継続的に繰り返し行われる。これにより、第1装置1A及び第2装置1Bはそれぞれ、各自のAR空間SP1、SP2での自分の位置(及び向き)と相手の位置(及び向き)を、例えばゲームが終了するまで把握し続けることができる。
Steps S12 to S14 and steps S23 to S25 are continuously repeated until, for example, the game ends. This allows the
上記のように、第1装置1Aと第2装置1Bのそれぞれは、各自の実空間に基づくAR空間に、仮想的に相手装置(他情報処理装置)を配置することができる(図3参照)。
As described above, each of the
また、複数の情報処理装置が各自のAR空間において互いに離れた位置から、ARを用いたゲーム等を開始することができる。その結果、ゲーム開始時に各自が相手の位置を確認し易くなる。 In addition, multiple information processing devices can start a game using AR from positions distant from each other in their own AR spaces. As a result, it becomes easier for each person to confirm the position of the other person when starting the game.
上記の通り、複数の情報処理装置がARを利用したゲーム等の各種情報処理を適切に実行できるようになる。 As described above, multiple information processing devices will be able to appropriately execute various types of information processing, such as games that use AR.
なお、各情報処理装置1のAR空間における各座標系の位置と向きは、情報処理装置1間での情報の授受を開始した時(セッション開始時)の各情報処理装置1の位置(初期位置)と向き(初期方向)に基づいて設定することができる。また、上記の座標系設定の処理(座標系設定ステップ)は、初期設定として、ゲームの開始前に行われることが好ましいが、座標系設定ステップのタイミングはこれに限られるものではない。
The position and orientation of each coordinate system in the AR space of each
また、本実施形態にあっては、AR空間SP2において、座標系ax2と座標系ax3とを異なる向きに設定することが好ましい。これによれば、座標系ax2と座標系ax3とを同一の向きに設定した場合に比べて、他情報処理装置の座標系の原点を視認し易くなる。つまり、初期設定としてゲーム開始前に座標系設定ステップを行う場合、ゲーム開始時からAR空間において相手オブジェクトを視認(確認)し易くなる。また、AR空間SP1、SP2での座標系ax1の原点O1と座標系ax2の原点O2との距離Lは、例えば0.5m以上5m以下とすることができ、好適には1m以上4m以下とすることができるが、これに限定されない。またAR空間SP2において、必ずしも異なる向きとなるように座標系ax2と座標系ax3とを設定する必要はなく、座標系ax2と座標系ax3とが同じ向きとなるように設定してもよい。 In addition, in this embodiment, it is preferable to set the coordinate system ax2 and the coordinate system ax3 in the AR space SP2 in different directions. This makes it easier to visually recognize the origin of the coordinate system of the other information processing device compared to when the coordinate system ax2 and the coordinate system ax3 are set in the same direction. In other words, when the coordinate system setting step is performed as the initial setting before the start of the game, it becomes easier to visually recognize (confirm) the opponent object in the AR space from the start of the game. In addition, the distance L between the origin O1 of the coordinate system ax1 and the origin O2 of the coordinate system ax2 in the AR space SP1 and SP2 can be, for example, 0.5 m or more and 5 m or less, and preferably 1 m or more and 4 m or less, but is not limited thereto. In addition, in the AR space SP2, it is not necessary to set the coordinate system ax2 and the coordinate system ax3 to be in different directions, and the coordinate system ax2 and the coordinate system ax3 may be set to be in the same direction.
上記のように子機としての情報処理装置1が各自のAR空間において主座標系から離れた位置に副座標系を設定する際、例えば座標変換を利用することができる。座標変換は、例えば主座標系の原点位置及び向きを基準に座標変換行列Tを用いた演算処理を行うことで実現される。これにより、各自のAR空間において主座標系の原点から副座標系の原点を所定の距離だけ離間させることができ、また必要に応じて副座標系の向きを主座標系から所定角度回転させた向きに設定することができる。
As described above, when the
ここで、例えば、子機としての情報処理装置1がAR空間において副座標系を設定せずに、自分の装置の位置、及び他の装置の位置を決定しようとした場合には、座標変換行列Tを用いて自分の装置の位置(Xb,Yb,Zb)を相手のAR空間に対応するように座標変換した、T*(Xb,Yb,Zb)のような変換位置情報を相手に送り続けなければならない。そのため、各情報処理装置(特に親機)における情報処理量が膨大となる虞がある。
For example, if the
これに対して、本例のように、副座標系を子機のAR空間に設定する場合には、副座標系上での子機の位置(例えば、(Xb', Yb', Zb')等)をそのまま相手装置(親機等)に送るだけで、相手装置は相手装置のAR空間での子機の位置を決定することができる。同様に、相手装置の座標系に基づく位置情報を相手装置から受け取るだけで、自分のAR空間における相手装置の位置を把握することができる。そのため、各情報処理装置1における情報処理量が上記の場合(子機のAR空間において副座標系を設定しない場合)に比べて格段に小さくなり、各情報処理装置1の処理負荷を軽減することができる。
In contrast, when a secondary coordinate system is set in the AR space of the child device as in this example, the child device can determine the position of the child device in the AR space of the child device by simply sending the child device's position on the secondary coordinate system (e.g., (Xb', Yb', Zb', etc.) to the other device (parent device, etc.). Similarly, the position of the other device in one's AR space can be ascertained by simply receiving position information based on the other device's coordinate system from the other device. Therefore, the amount of information processing in each
以上本発明の一実施形態について説明したが、本発明は、上述の実施形態に限定されるものではなく、本発明の目的を達成できる範囲での変形、改良等は本発明に含まれるものである。 Although one embodiment of the present invention has been described above, the present invention is not limited to the above-mentioned embodiment, and modifications and improvements that can achieve the object of the present invention are included in the present invention.
例えば、3台以上の情報処理装置1間でARを利用したゲーム等の各種情報処理を実行することも可能である。3台の情報処理装置1間でARを利用したゲーム等の各種情報処理を実行する場合、例えば1台を親機とし、他の全て(2台)を子機とすることができる。例えば、AR空間において、正三角形等の仮想の三角形の各頂点となる位置に各情報処理装置1が配置され、当該三角形の中心に向けて各情報処理装置1が向くように設定することができる。あるいは、仮想の円の輪郭線上に、等間隔で各情報処理装置1が配置され、当該仮想の円の中心に向けて各情報処理装置1が向くように設定することができる。このような構成により、各情報処理装置1の各AR空間においてバランスよく各座標系を設定することができる。
For example, it is also possible to execute various information processing such as games using AR between three or more
図6は、第1装置1A、第2装置1B、第3装置1C及び第4装置1Dからなる4台の情報処理装置1間でARを利用したゲーム等の各種情報処理を実行する場合における座標系の設定方法の一例を示している。本例において、第1装置1A、第2装置1B、第3装置1C及び第4装置1Dはそれぞれ別の実空間に位置しているものとしている。
Figure 6 shows an example of a method for setting a coordinate system when various information processes, such as games using AR, are executed between four
図6に示すように、親機としての第1装置1Aは実空間である部屋等の第1空間R1に位置している。第1装置1Aは、上述の例と同様に、第1空間R1に基づいて第1装置1A内で構築されるAR空間SP1において、まず座標系ax1を設定し、また、AR空間SP1における自分の位置を決定する。初期状態での自分の位置は、例えば座標系ax1の原点O1とすることができる。
As shown in FIG. 6, the
また、子機としての第2装置1B、第3装置1C、及び第4装置1Dは、それぞれの実空間に基づいて各装置内で構築される各AR空間において、主座標系と、(主座標系とは異なる位置にある)副座標系を設定し、また、各AR空間における副座標系上での自分の位置を決定する。この時、各AR空間上で子機同士の初期位置が重ならないように、第2装置1B、第3装置1C、及び第4装置1Dは、主座標系に対する副座標系の位置をそれぞれ別の位置に設定することが好ましい。
The
そして、第1装置1A、第2装置1B、第3装置1C及び第4装置1D間で情報の授受を行うことにより、各AR空間上に自分と他の3台の装置の位置(及び必要に応じて向き)を決定することができる。親機としての第1装置1Aは、AR空間SP1の座標系ax1上での自分の位置を示す位置情報を他の3台の子機に送信し、3台の子機は、それぞれの副座標系上での自分の位置を示す位置情報を親機及び他の2台の子機に送信する。
The
例えば図6に示すように、第1装置1AのAR空間SP1における第2装置1Bの仮想の位置は、座標系ax1の原点O1からz軸の正方向にL1だけ離れた位置に設定される。また、AR空間SP1における第3装置1Cの位置は、座標系ax1の原点O1からx軸の正方向にL2だけ離れた位置に設定される。また、AR空間SP1における第4装置1Dの位置は、座標系ax1の原点O1からz軸の正方向にL1だけ離れ、且つ、x軸の正方向にL2だけ離れた位置に設定される。AR空間SP1における第2装置1B、第3装置1C及び第4装置1Dの位置は、各装置が設定したそれぞれの主座標系に対する副座標系の位置に対応している。第2装置1B、第3装置1C及び第4装置1Dのそれぞれも、各自のAR空間において各自の副座標系における自分の装置の位置と、他の3台の装置の位置とをそれぞれ設定する。
For example, as shown in FIG. 6, the virtual position of the
図6に示す例では、第2装置1Bは第1装置1Aと向かい合うように設定され、第3装置1Cは第4装置1Dと向かい合うように設定される。また、第1装置1Aと第3装置1Cとは同一の方向を向いており(平行であり)、第2装置1Bと第4装置1Dとは同一の方向を向いている(平行である)。
In the example shown in FIG. 6, the
このような構成とした場合、例えばAR空間SP1において同一の方向を向く第1装置1Aと第3装置1Cとを第1のチームとし、第2装置1Bと第4装置1Dとを第2のチームとして、チーム同士で対戦することが容易となる。
With this configuration, for example, the
図7は、3台以上の情報処理装置1のうちの、何れかの2台以上の情報処理装置1が同一の実空間にある場合の一例を示している。より具体的に、図7は、4台の情報処理装置1間でARを利用したゲーム等の各種情報処理を実行する場合であって、同一の実空間に2台の情報処理装置1が位置する場合の一例を示している。図7に示すように、第1装置1Aと第3装置1Cとが、同一の実空間(第1空間R1)に位置しており、第2装置1B及び第4装置1Dはそれぞれ(または共に)別の実空間に位置している。
Figure 7 shows an example of a case where two or more of three or more
このような場合には、同一の実空間(第1空間R1)に位置する第1装置1Aと第3装置1Cとが、例えばAR空間SP1を共有することができる。例えば、第1装置1Aと第3装置1Cとは、第1装置1Aの座標系ax1に第3装置1Cの座標系ax3を一致させる(原点の位置と3本の軸の向きを一致させる)ことで、AR空間SP1の共有を図ることができる。同一の実空間(第1空間R1)に位置する第1装置1Aと第3装置1Cとの座標系を一致させる際には、例えば第1装置1Aの表示部に表示させたマーカ画像等のマーカを第3装置1Cの撮像部で読み取ること等により行うことができる。
In such a case, the
また、図7に示す場合、第1装置1Aは、先の実施例と同様に、AR空間SP1において座標系ax1を設定するとともに、自分の位置を決定する。また、第1装置1Aは、第2装置1B及び第4装置1Dからそれぞれ受け取った位置情報に基づいて、AR空間SP1における第2装置1B及び第4装置1Dのそれぞれの位置を決定する。第3装置1Cは、AR空間SP1における自分の位置を決定する。また、第3装置1Cは、第2装置1B及び第4装置1Dからそれぞれ受け取った位置情報に基づいて、AR空間SP1における第2装置1B及び第4装置1Dのそれぞれの位置を決定する。第2装置1B及び第4装置1Dはそれぞれ、各自のAR空間に主座標系と副座標系とを設定し、副座標系上での各自の位置を決定するとともに、他装置から受け取った位置情報に基づいて、各副座標系での他の3台の装置の位置を決定する。
In the case shown in FIG. 7, the
これにより、図7に示すように、AR空間SP1において4台の情報処理装置1を図6と同様に仮想的に配置することができる。よって、例えばAR空間SP1において同一の方向を向く第1装置1Aと第3装置1Cとを第1のチームとし、第2装置1Bと第4装置1Dとを第2のチームとして、チーム同士で対戦することも容易となる。
As a result, as shown in FIG. 7, four
また、図7に示す場合において、第3装置1Cが、自分の位置情報を他情報処理装置(第2装置1Bと第4装置1D)に送信する際には、AR空間SP1における座標系ax1上での位置を利用することができる。このように、同一の実空間(第1空間R1)に位置する第1装置1Aと第3装置1Cとは、共通のAR空間SP1及び共通の座標系ax1を用いることができる。なお、本例では、第1装置1Aを親機として第2装置1B、第3装置1C及び第4装置1Dを子機としていたが、これに限られない。また、親機を決定する方法としては、例えば、共有される座標系ax1を最初に設定した情報処理装置1(図7の例では第1装置1A)を親機とし、親機以外の情報処理装置1(図7の例では第2装置1B、第3装置1C及び第4装置1D)を子機とすることができる。
In the case shown in FIG. 7, when the
なお、以下のような構成も本開示の技術的範囲に属する。
(項目1)
第1の情報処理装置と、前記第1の情報処理装置と通信可能に接続される第2の情報処理装置とを備え、
前記第1の情報処理装置は、
第1の仮想空間に第1の座標系を設定する座標系設定手段と、
前記第1の座標系における前記第1の情報処理装置の第1の位置を決定する自分位置決定手段と、
前記第1の位置を前記第2の情報処理装置に送信する送信手段と、
前記第2の情報処理装置から第2の位置を受信する受信手段と、
前記第1の座標系上での前記第2の位置を前記第2の情報処理装置の位置として決定する相手位置決定手段と、を有し、
前記第2の情報処理装置は、
第2の仮想空間に第2の座標系を設定するとともに、前記第2の座標系の原点から離れた位置に第3の座標系の原点が位置するように前記第3の座標系を設定する座標系設定手段と、
前記第3の座標系における前記第2の情報処理装置の第3の位置を決定する自分位置決定手段と、
前記第3の位置を前記第2の位置として前記第1の情報処理装置に送信する送信手段と、
前記第1の情報処理装置から前記第1の位置を受信する受信手段と、
前記第3の座標系上での前記第1の位置を前記第1の情報処理装置の位置として決定する相手位置決定手段と、を有することを特徴とする情報処理システム。
(項目2)
他情報処理装置との間で情報の授受を行う情報処理装置であって、
所定空間に主座標系を設定するとともに、該主座標系の原点から離れた位置に副座標系の原点が位置するように前記所定空間に該副座標系を設定する座標系設定手段と、
前記他情報処理装置から受け取った前記他情報処理装置の位置を示す位置情報に基づいて、前記所定空間における前記副座標系上での前記他情報処理装置の位置を決定する相手位置決定手段と、を備える情報処理装置。
(項目3)
他情報処理装置との間で情報の授受を行う情報処理装置であって、
所定空間に主座標系を設定するとともに、該主座標系の原点から離れた位置に副座標系の原点が位置するように前記所定空間に該副座標系を設定する座標系設定手段と、
前記所定空間における前記副座標系上の前記情報処理装置の位置を取得する自分位置決定手段と、
前記副座標系上の位置を前記情報処理装置の位置として前記他情報処理装置に送信する送信手段と、を備える情報処理装置。
(項目4)
前記座標系設定手段は、前記所定空間において、前記副座標系の向きを前記主座標系とは異なる向きに設定する、項目2又は3に記載の情報処理装置。
(項目5)
実空間を撮影した現実画像に前記他情報処理装置からの前記位置情報に基づく付加画像を重畳表示させた拡張現実画像を生成する画像生成手段をさらに備える、項目2~4の何れか一項に記載の情報処理装置。
(項目6)
他情報処理装置との間で情報の授受を行う情報処理装置が実行する情報処理方法において、
所定空間に主座標系を設定するとともに、該主座標系の原点から離れた位置に副座標系の原点が位置するように前記所定空間に該副座標系を設定する座標系設定ステップと、
前記他情報処理装置から受け取った前記他情報処理装置の位置を示す位置情報に基づいて、前記所定空間における前記副座標系上での前記他情報処理装置の位置を決定する相手位置決定ステップと、を含む情報処理方法。
(項目7)
他情報処理装置との間で情報の授受を行う情報処理装置を制御するコンピュータに、
所定空間に主座標系を設定するとともに、該主座標系の原点から離れた位置に副座標系の原点が位置するように前記所定空間に該副座標系を設定する座標系設定ステップと、
前記他情報処理装置から受け取った前記他情報処理装置の位置を示す位置情報に基づいて、前記所定空間における前記副座標系上での前記他情報処理装置の位置を決定する相手位置決定ステップと、を含む制御処理を実行させるプログラム。
Note that the following configurations also fall within the technical scope of the present disclosure.
(Item 1)
A first information processing device and a second information processing device communicably connected to the first information processing device,
The first information processing device,
a coordinate system setting means for setting a first coordinate system in a first virtual space;
a self-position determining means for determining a first position of the first information processing device in the first coordinate system;
a transmitting means for transmitting the first location to the second information processing device;
receiving means for receiving a second position from the second information processing device;
a counterpart position determining means for determining the second position on the first coordinate system as a position of the second information processing device,
The second information processing device is
a coordinate system setting means for setting a second coordinate system in a second virtual space and setting a third coordinate system so that the origin of the third coordinate system is located at a position away from the origin of the second coordinate system;
a self-position determining means for determining a third position of the second information processing device in the third coordinate system;
a transmitting means for transmitting the third location as the second location to the first information processing device;
a receiving means for receiving the first position from the first information processing device;
and a partner position determining means for determining the first position on the third coordinate system as the position of the first information processing device.
(Item 2)
An information processing device that transmits and receives information to and from another information processing device,
a coordinate system setting means for setting a main coordinate system in a predetermined space and setting a secondary coordinate system in the predetermined space so that the origin of the secondary coordinate system is located at a position away from the origin of the main coordinate system;
an other position determining means for determining a position of the other information processing device on the sub coordinate system in the specified space based on position information indicating a position of the other information processing device received from the other information processing device.
(Item 3)
An information processing device that transmits and receives information to and from another information processing device,
a coordinate system setting means for setting a main coordinate system in a predetermined space and setting a secondary coordinate system in the predetermined space so that the origin of the secondary coordinate system is located at a position away from the origin of the main coordinate system;
a self-position determining means for acquiring a position of the information processing device on the sub-coordinate system in the predetermined space;
a transmitting means for transmitting the position on the secondary coordinate system as the position of the information processing device to the other information processing device.
(Item 4)
4. The information processing device according to item 2 or 3, wherein the coordinate system setting means sets an orientation of the sub coordinate system in a different orientation from that of the main coordinate system in the specified space.
(Item 5)
The information processing device according to any one of items 2 to 4, further comprising an image generating means for generating an augmented reality image in which an additional image based on the position information from the other information processing device is superimposed on a real image captured in a real space.
(Item 6)
An information processing method executed by an information processing device that transmits and receives information to and from another information processing device,
a coordinate system setting step of setting a main coordinate system in a predetermined space and setting a secondary coordinate system in the predetermined space such that the origin of the secondary coordinate system is located at a position away from the origin of the main coordinate system;
and a partner position determination step of determining a position of the other information processing device on the sub coordinate system in the specified space based on position information indicating the position of the other information processing device received from the other information processing device.
(Item 7)
A computer that controls an information processing device that transmits and receives information to and from another information processing device,
a coordinate system setting step of setting a main coordinate system in a predetermined space and setting a secondary coordinate system in the predetermined space such that the origin of the secondary coordinate system is located at a position away from the origin of the main coordinate system;
A program for executing a control process including a partner position determination step for determining the position of the other information processing device on the sub-coordinate system in the specified space based on position information indicating the position of the other information processing device received from the other information processing device.
以下に、他の実施形態について説明する。なお、先の実施形態と共通する構成については適宜説明を省略する。他の実施形態において、2台以上の情報処理装置1が、ARを利用したゲーム等の各種情報処理を実行するに際し、情報処理装置1のそれぞれは、各自のAR空間内に各自の情報処理装置1の座標系(第1座標系)と他情報処理装置1の座標系(第2座標系)とを設定する。これにより、2台以上の情報処理装置1間で仮想的にAR空間を互いに共有することができる。
Other embodiments are described below. Note that descriptions of configurations common to the previous embodiment are omitted as appropriate. In other embodiments, when two or more
なお、2台以上の情報処理装置1の何れか1台の情報処理装置1を親機として、他の情報処理装置1を全て子機と設定するようにしてもよい。この場合、例えば、子機となる1台または2台以上の情報処理装置1をゲーム等に招待した情報処理装置1を親機と設定することができる。
In addition, one of the two or more
図2に示すように、第1装置1Aは実空間である部屋等の第1空間R1に位置し、第2装置1Bは、実空間である他の部屋等の第2空間R2に位置する。なお、第1空間R1における第1装置1Aの位置及び向き(姿勢)は図示例に限定されず、同様に第2空間R2における第2装置1Bの位置及び向き(姿勢)は図示例に限定されない。
As shown in FIG. 2, the
第1装置1A及び第2装置1Bのそれぞれは、それぞれのAR空間(所定空間)において各自の第1座標系を設定するとともに、相手(他情報処理装置)の第2座標系を設定する。
Each of the
具体的に、第1空間R1に位置する第1装置1Aは、第1装置1AのAR空間SP1において自分(第1装置1A)の座標系ax1(第1座標系)を設定する。また第1装置1Aは、AR空間SP1において、座標系ax1とは原点が離れた位置となるように第2装置1Bに利用される座標系ax2(第2座標系)を設定する。このような座標系の設定は、例えばSLAM(Simultaneous Localization and Mapping)を動かす等して、空間を認識することによって行うことができるが、これに限られない。
Specifically, the
これにより、図8に示すように第1装置1Aは、第1装置1Aの座標系ax1から見た第2装置1Bの座標系ax2の位置及び向き(姿勢)を設定することができる。この時、所定空間における第1装置1Aの位置を座標系ax1の原点O1とすることができ、第1装置1Aの向き(例えばカメラ等の撮像部が指向する向き)を座標系ax1におけるz軸の正方向の向き(原点O1を始点とするz軸の正方向ベクトル)とすることができる。この場合、座標系ax1におけるz軸(及びx軸)は水平方向に延在し、y軸が鉛直方向に延在していることが好ましい。
As a result, as shown in FIG. 8, the
また、第1装置1AがAR空間SP1において第2装置1Bの座標系ax2を設定する際、例えば座標系ax1の原点O1から、座標系ax1のz軸の正方向に、所定の距離Lだけ離れた位置に座標系ax2の原点O2を設定(配置)することができる。このように、AR空間SP1において座標系ax1とは異なる位置に座標系ax2を配置することで、座標系ax1の原点O1から座標系ax2の原点O2が視認(確認)し易くなる。
In addition, when the
また、第1装置1AがAR空間SP1において第2装置1Bの座標系ax2を設定する際、例えばy軸を中心(回転軸)としてx軸とz軸とが反転(180度回転)するように座標系ax2を設定することができる。この場合、AR空間SP1(SP2)において、座標系ax1と座標系ax2とが(特に、z軸同士が)互いに向かい合うこととなり、各座標系ax1、ax2の原点O1,O2にそれぞれ位置する相手装置を最初の段階から容易に確認することができる。そのため、例えば第1装置1Aと第2装置1BとがAR空間で互いに向かい合って対戦するゲーム等に適している。なお、AR空間SP1での座標系ax1と座標系ax2の原点同士の距離L、及び相対的な向きは特に限定されず、適宜変更可能である。AR空間SP1での座標系ax1と座標系ax2の原点同士の距離L、及び相対的な向きは、予め設定された規定値であってもよいし、例えば2台以上の情報処理装置1間で情報の授受が開始された(セッションが開始された)時、またはその後の所定のタイミングに決定されるようにしてもよいし、情報処理装置1によって適宜選択可能なものとしてもよい。
In addition, when the
上記第1装置1Aの処理と同様に、第2空間R2に位置する第2装置1Bは、第2装置1Bが位置する実空間(第2空間R2)に基づく独自のAR空間SP2において自分(第2装置1B)の座標系ax2(第1座標系)を設定する。また、第2装置1BはAR空間SP2において第1装置1Aの座標系ax1(第2座標系)を設定する。AR空間SP2での座標系ax2の原点O2と座標系ax1の原点O1との距離L、及び座標系ax2に対する座標系ax1の相対的な向きは、AR空間SP1での座標系ax1と座標系ax2の原点同士の距離L、及び座標系ax1に対する座標系ax2の相対的な向きに少なくとも対応しており、好ましくは一致している。
Similar to the processing of the
このように、第1装置1Aと第2装置1Bのそれぞれは、それぞれが位置する実空間に基づくそれぞれの仮想空間に、自分の座標系と相手の座標系とを設定する。これにより、第1装置1Aと第2装置1Bのそれぞれは、図8に示すように、各自のAR空間に仮想的に相手装置(他情報処理装置)を配置することができる。
In this way, each of the
なお、各情報処理装置1のAR空間における各座標系の位置と向きは、情報処理装置1間での情報の授受を開始した時(セッション開始時)の各情報処理装置1の位置(初期位置)と向き(初期方向)に基づいて設定することができる。また、上記の座標系設定の処理(座標系設定ステップ)は、初期設定として、ゲームの開始前に行われることが好ましいが、座標系設定ステップのタイミングはこれに限られるものではない。
The position and orientation of each coordinate system in the AR space of each
各AR空間SP1、SP2において、座標系ax1と座標系ax2とを異なる向きに設定することが好ましい。これによれば、座標系ax1と座標系ax2とを同一の向きに設定した場合に比べて、他情報処理装置の座標系の原点を視認し易くなる。つまり、初期設定としてゲーム開始前に座標系設定ステップを行う場合、ゲーム開始時からAR空間において相手オブジェクトを視認(確認)し易くなる。また、AR空間SP1、SP2での座標系ax1の原点O1と座標系ax2の原点O2との距離Lは、例えば0.5m以上5m以下とすることができ、好適には1m以上4m以下とすることができるが、これに限定されない。また各AR空間SP1、SP2において、必ずしも異なる向きとなるように座標系ax1と座標系ax2とを設定する必要はなく、座標系ax1と座標系ax2とが同じ向きとなるように設定してもよい。 In each of the AR spaces SP1 and SP2, it is preferable to set the coordinate system ax1 and the coordinate system ax2 in different directions. This makes it easier to visually recognize the origin of the coordinate system of the other information processing device compared to when the coordinate system ax1 and the coordinate system ax2 are set in the same direction. In other words, when a coordinate system setting step is performed as an initial setting before the start of the game, it becomes easier to visually recognize (confirm) the opponent object in the AR space from the start of the game. In addition, the distance L between the origin O1 of the coordinate system ax1 and the origin O2 of the coordinate system ax2 in the AR spaces SP1 and SP2 can be, for example, 0.5 m or more and 5 m or less, and preferably 1 m or more and 4 m or less, but is not limited thereto. In addition, in each of the AR spaces SP1 and SP2, it is not necessary to set the coordinate system ax1 and the coordinate system ax2 to have different directions, and the coordinate system ax1 and the coordinate system ax2 may be set to have the same direction.
このような構成により、例えばAR空間において互いに離れた位置から、ARを用いたゲーム等を開始することができる。その結果、ゲーム開始時に各自が相手の位置を確認し易くなる。 With this configuration, for example, players can start a game using AR from positions far apart in the AR space. As a result, it becomes easier for each player to confirm the other player's position when the game starts.
上記のように各情報処理装置が各自のAR空間において第1座標系から離れた位置に第2座標系を設定する際、例えば座標変換を利用することができる。座標変換は、例えば第1座標系の原点位置及び向きを基準に座標変換行列Tを用いた演算処理を行うことで実現される。これにより、各自のAR空間において第1座標系の原点から第2座標系の原点を所定の距離だけ離間させることができ、また必要に応じて第2座標系の向きを第1座標系から所定角度回転させた向きに設定することができる。その結果、各自のAR空間に第1座標系と第2座標系とをそれぞれ設定することができる。 As described above, when each information processing device sets the second coordinate system at a position away from the first coordinate system in its own AR space, it can use coordinate transformation, for example. The coordinate transformation is realized, for example, by performing calculation processing using a coordinate transformation matrix T based on the origin position and orientation of the first coordinate system. This makes it possible to separate the origin of the second coordinate system from the origin of the first coordinate system by a predetermined distance in each AR space, and also makes it possible to set the orientation of the second coordinate system to an orientation rotated a predetermined angle from the first coordinate system, if necessary. As a result, the first coordinate system and the second coordinate system can be set in each AR space.
ここで、例えば、各自のAR空間において相手装置(他情報処理装置)の第2座標系を設定せずに、(各自のAR空間における)相手装置の位置を決定しようとした場合には、座標変換行列Tを用いて自分の装置の位置(Xb,Yb,Zb)を相手のAR空間に対応するように座標変換した、T*(Xb,Yb,Zb)のような変換位置情報を相手に送り続けなければならない。そのため、各情報処理装置における情報処理量が膨大となる虞がある。 Here, for example, if one tries to determine the position of a partner device (in their own AR space) without setting a second coordinate system for the partner device (other information processing device) in their own AR space, it is necessary to continuously send to the partner transformed position information such as T*(Xb, Yb, Zb), which is the coordinate transformation matrix T used to transform the position (Xb, Yb, Zb) of one's own device so that it corresponds to the partner's AR space. This could result in an enormous amount of information processing on each information processing device.
これに対して、本例のように、相手装置(他情報処理装置)が利用する第2座標系を各自のAR空間に設定する場合には、第2座標系における位置(例えば、(Xb', Yb', Zb')等)をそのまま相手装置から受け取るだけで、自分のAR空間における相手装置の位置を決定することができる。同様に自分の座標系に基づく位置情報を相手装置に送るだけで、相手のAR空間における自分の装置の位置を伝え、把握させることができる。そのため、各情報処理装置1における情報処理量が上記の場合(各自のAR空間において相手装置の第2座標系を設定しない場合)に比べて格段に小さくなり、各情報処理装置1の処理負荷を軽減することができる。
In contrast, in this example, when the second coordinate system used by the other device (other information processing device) is set in each device's AR space, the position of the other device in one's AR space can be determined simply by receiving the position in the second coordinate system (e.g., (Xb', Yb', Zb', etc.) directly from the other device. Similarly, the position of one's device in the other device's AR space can be communicated and understood simply by sending position information based on one's coordinate system to the other device. Therefore, the amount of information processing in each
上記の通り、第1装置1Aと第2装置1Bのそれぞれは、各自のAR空間(所定空間)に第1座標系を設定するとともに、他情報処理装置により利用される第2座標系の原点が第1座標系の原点から離れた位置となるように所定空間に第2座標系を設定することができる。
As described above, each of the
また、第1装置1Aと第2装置1Bのそれぞれは、他情報処理装置から受け取った第2座標系上での他情報処理装置の位置を示す位置情報に基づいて、所定空間での他情報処理装置の位置を決定することができる。
Furthermore, each of the
第1装置1Aは、上記のように自分のAR空間SP1に2つの座標系を設定した後、第2装置1B(他情報処理装置)から、座標系ax2(第2座標系)上での第2装置1Bの位置を示す位置情報(例えば座標(Xb', Yb', Zb'))を受け取る。第1装置1Aは、この位置情報に基づいて、AR空間SP1上での第2装置1Bの位置を決定する。第1装置1Aは、例えば第2装置1Bから所定の時間間隔で繰返し位置情報を受け取り続けることで、AR空間SP1における第2装置1Bの位置を把握し続けることができる。これにより、第1装置1Aは、例えば、AR空間SP1に第2装置1Bを示すオブジェクトを配置することができる。そして、第1装置1Aは、撮像した実空間の画像に、上記第2装置1Bを示すオブジェクトの画像を重畳表示させることができる。なお、オブジェクトの形状は特に限定されず、任意の形状を採用可能である。
After setting two coordinate systems in its own AR space SP1 as described above, the
同様に、第2装置1Bは、第1装置1A(他情報処理装置)から受け取った座標系ax1(第2座標系)上での第1装置1Aの位置を示す位置情報(例えば座標(Xb'', Yb'', Zb''))に基づいて、AR空間SP2上での第1装置1Aの位置を決定することができる。第2装置1Bは、例えば第1装置1Aから所定の時間間隔で繰返し位置情報を受け取り続けることで、AR空間SP2における第1装置1Aの位置を把握し続けることができる。これにより、第2装置1Bは、例えば、AR空間SP2に第1装置1Aを示すオブジェクトを配置することができる。そして、第2装置1Bは、撮像した実空間の画像に、上記第1装置1Aを示すオブジェクトの画像を重畳表示させることができる。
Similarly, the
第1装置1Aと第2装置1Bとは、上記のようにして、各自のAR空間SP1、SP2に自分の座標系と相手の座標系を設定することができ、また、各自のAR空間SP1、SP2に仮想的に相手を配置する(相手の位置を決定する)ことができる。即ち、第1装置1Aは、最初に設定したAR空間SP1における座標系ax1と座標系ax2を用いて、各種情報を処理する。一方、第2装置1Bは、最初に設定したAR空間SP2における座標系ax2と座標系ax1を用いて、各種情報を処理する。
The
第1装置1Aと第2装置1Bとは、互いの位置情報等の各種情報を、P2P(peer-to-peer)で相互に授受する。
The
以上説明した第1装置1Aと第2装置1Bとにおける一連の処理は、第1装置1Aと第2装置1Bとのそれぞれにおけるハードウェアとソフトウェアの協働により実現される。この場合、第1装置1Aと第2装置1Bとは、例えば図4に示す機能的構成を有することができる。図4は、第1装置1Aと第2装置1Bとのそれぞれにおける機能的構成のうち、上記座標系の設定と、位置決定とを含む一連の処理が実行される際の機能的構成の一例を示す機能ブロック図である。
The series of processes in the
図4に示すように、第1装置1AのCPU21においては、座標系設定部51(座標系設定手段)と、位置決定部52(位置決定手段)と、通信制御部53(通信制御手段)とが機能する。同様に、第2装置1BのCPU21においても、座標系設定部51(座標系設定手段)と、位置決定部52(位置決定手段)と、通信制御部53(通信制御手段)とが機能する。なお、第1装置1A及び/又は第2装置1BのCPU21には、例えばマーカ画像を生成するマーカ画像生成部、及びマーカ画像を表示部に表示させるマーカ画像表示制御部等が設けられていてもよい。
As shown in FIG. 4, in the
以下、図9を適宜参照しつつ、第1装置1Aと第2装置1Bの各機能ブロックの詳細について説明する。
The following describes in detail each of the functional blocks of the
図9は、図4の機能的構成を有する第1装置1Aと第2装置1Bとの間で実行される一連の処理の一例を説明するアローチャートである。
Figure 9 is an arrow chart illustrating an example of a series of processes executed between a
ステップS111において、第1装置1Aの座標系設定部51は、撮像部28により撮像された実空間の撮像画像のデータに基づいて空間認識を行い、構築したAR空間SP1に座標系ax1(図2)を設定する。次いでステップS112において、第1装置1Aの座標系設定部51は、AR空間SP1における座標系ax1から所定距離Lだけ離れた位置に座標系ax2(図8)を設定する。
In step S111, the coordinate
上記ステップS111と同様に、ステップS121において、第2装置1Bの座標系設定部51は、撮像部28により撮像された実空間の撮像画像のデータに基づいて空間認識を行い、構築したAR空間SP2に座標系ax2(図2)を設定する。次いでステップS122において、上記ステップS112と同様に、第2装置1Bの座標系設定部51は、AR空間SP2における座標系ax2から所定距離Lだけ離れた位置に座標系ax1(図8)を設定する。これにより、第1装置1Aと第2装置1BとはそれぞれのAR空間SP1、SP2に、仮想的に相手装置を(離れた位置に)配置することができる。本例においてステップS111、S112、S121、S122は座標系設定ステップを構成する。
As in step S111 above, in step S121, the coordinate
ステップS113、S123において、第1装置1A及び第2装置1Bは、互いに情報の授受を行う。具体的に、ステップS113において、第1装置1Aの通信制御部53は、座標系ax1における第1装置1Aの位置情報(座標)等を、通信部30を介して第2装置1Bに送信し、第2装置1Bは通信部30を介して当該情報を受信する。同様に、第2装置1Bは、ステップS123において、座標系ax2における第2装置1Bの位置情報(座標)等を、通信部30を介して第1装置1Aに送信し、第1装置1Aは通信部30を介して当該情報を受信する。なお、ステップS113とステップS123は同時であってもよいし、互いに異なるタイミングであってもよい。互いに異なるタイミングである場合、ステップS113とステップS123はどちらが先でもよい。
In steps S113 and S123, the
ステップS114において、第1装置1Aは、ステップS123において第2装置1Bから受け取った座標系ax2上での第2装置1Bの位置を示す位置情報に基づいて、AR空間SP1での第2装置1Bの位置を決定する。
In step S114, the
ステップS124において、第2装置1Bは、ステップS113において第1装置1Aから受け取った座標系ax1上での第1装置1Aの位置を示す位置情報に基づいて、AR空間SP2での第1装置1Aの位置を決定する。
In step S124, the
ステップS113、S123及びステップS114、S124は、例えばゲームが終了するまで、継続的に繰り返し行われる。これにより、第1装置1A及び第2装置1Bはそれぞれ、各自のAR空間SP1、SP2での相手の位置を(例えばゲームが終了するまで)把握し続けることができる。本例においてステップS113、S123及びステップS114、S124は位置決定ステップを構成する。
Steps S113, S123 and steps S114, S124 are continuously repeated until, for example, the game ends. This allows the
以上本発明の一実施形態について説明したが、本発明は、上述の実施形態に限定されるものではなく、本発明の目的を達成できる範囲での変形、改良等は本発明に含まれるものである。 Although one embodiment of the present invention has been described above, the present invention is not limited to the above-mentioned embodiment, and modifications and improvements that can achieve the object of the present invention are included in the present invention.
例えば、3台以上の情報処理装置1間でARを利用したゲーム等の各種情報処理を実行することも可能である。3台の情報処理装置1間でARを利用したゲーム等の各種情報処理を実行する場合、情報処理装置1のそれぞれは、各自のAR空間内に各自の情報処理装置1の座標系(第1座標系)を設定し、また各自のAR空間内に、他の2台の情報処理装置1の座標系(第2座標系)をそれぞれ設定する。この場合、例えば、正三角形等の仮想の三角形の各頂点となる位置に各座標系の原点を配置し、当該三角形の中心に向けて各座標系のz軸の正方向が向かうように設定することができる。あるいは、3台以上の情報処理装置1間でARを利用したゲーム等の各種情報処理を実行する場合、仮想の円の輪郭線上に、等間隔で各座標系の原点を配置し、当該円の中心に向けて各座標系のz軸の正方向が向かうように設定することも可能である。このような構成により、各情報処理装置1の各AR空間においてバランスよく各座標系を設定することができる。
For example, it is also possible to execute various information processing such as games using AR between three or more
図10は、第1装置1A、第2装置1B、第3装置1C及び第4装置1Dからなる4台の情報処理装置1間でARを利用したゲーム等の各種情報処理を実行する場合における座標系の設定方法の一例を示している。本例において、第1装置1A、第2装置1B、第3装置1C及び第4装置1Dはそれぞれ別の実空間に位置しているものとしている。
Figure 10 shows an example of a method for setting a coordinate system when various information processes, such as games using AR, are executed between four
図10に示すように、第1装置1Aは実空間である部屋等の第1空間R1に位置している。第1装置1Aは、第1空間R1に基づいて第1装置1A内で構築されるAR空間SP1において、まず座標系ax1を設定し、次いで第2装置1Bに利用される座標系ax2、第3装置1Cに利用される座標系ax3及び第4装置1Dに利用される座標系ax4を設定する。座標系ax2の原点O2は、座標系ax1の原点O1からz軸の正方向にL1だけ離れた位置に設定される。座標系ax3の原点O3は、座標系ax1の原点O1からx軸の正方向にL2だけ離れた位置に設定される。また、座標系ax4の原点O4は、座標系ax1の原点O1からz軸の正方向にL1だけ離れ、且つ、x軸の正方向にL2だけ離れた位置に設定される。なお、第2装置1B、第3装置1C及び第4装置1Dのそれぞれも、各自のAR空間において自分の座標系と、他の3台に対応する3つの座標系とをそれぞれ設定する。
As shown in FIG. 10, the
図10に示す例では、座標系ax2は座標系ax1と向かい合うように設定され、座標系ax3は座標系ax4と向かい合うように設定される。また、座標系ax1と座標系ax3とは同一の方向を向いており、座標系ax2と座標系ax4とは同一の方向を向いている。 In the example shown in FIG. 10, coordinate system ax2 is set to face coordinate system ax1, and coordinate system ax3 is set to face coordinate system ax4. Furthermore, coordinate systems ax1 and ax3 face in the same direction, and coordinate systems ax2 and ax4 face in the same direction.
このような構成とした場合、例えばAR空間SP1において同一の方向を向く第1装置1A(座標系ax1)と第3装置1C(座標系ax3)とを第1のチームとし、第2装置1B(座標系ax2)と第4装置1D(座標系ax4)とを第2のチームとして、チーム同士で対戦することが容易となる。
With this configuration, for example, the
図11は、3台以上の情報処理装置1のうちの、何れかの2台以上の情報処理装置1が同一の実空間にある場合の一例を示している。より具体的に、図11は、4台の情報処理装置1間でARを利用したゲーム等の各種情報処理を実行する場合であって、同一実空間に2台の情報処理装置1が位置する場合の一例を示している。図11に示すように、第1装置1Aと第3装置1Cとが、同一の実空間(第1空間R1)に位置しており、第2装置1B及び第4装置1Dはそれぞれ別の実空間に位置している。
Figure 11 shows an example of a case where two or more of three or more
このような場合には、同一の実空間(第1空間R1)に位置する第1装置1Aと第3装置1Cとが、例えばAR空間SP1を共有することができる。例えば、第1装置1Aと第3装置1Cとは、第1装置1Aの座標系ax1に第3装置1Cの座標系ax3を一致させる(原点の位置と3本の軸の向きを一致させる)ことで、AR空間SP1の共有を図ることができる。同一の実空間(第1空間R1)に位置する第1装置1Aと第3装置1Cとの座標系を一致させる際には、例えば第1装置1Aの表示部に表示させたマーカ画像等のマーカを第3装置1Cの撮像部で読み取ること等により行うことができる。
In such a case, the
また、図11に示す場合、第1装置1Aは、先の実施例と同様に、AR空間SP1において座標系ax1を設定するとともに、第2装置1Bに利用される座標系ax2、及び第4装置1Dに利用される座標系ax4を設定する。第2装置1Bは、自分のAR空間に座標系ax2を設定し、また、第1装置1A及び第3装置1Cに利用される座標系ax1、及び第4装置1Dに利用される座標系ax4を設定する。同様に、第4装置1Dは、自分のAR空間に座標系ax4を設定し、また、第1装置1A及び第3装置1Cに利用される座標系ax1、及び第2装置1Bに利用される座標系ax2を設定する。これにより、図11に示すように、AR空間SP1において4台の情報処理装置1を図10と同様に仮想的に配置することができる。よって、例えばAR空間SP1において同一の方向を向く第1装置1Aと第3装置1Cとを第1のチームとし、第2装置1Bと第4装置1Dとを第2のチームとして、チーム同士で対戦することが容易となる。
11, the
また、図11に示す場合において、第3装置1Cが、自分の位置情報を他情報処理装置(第2装置1Bと第4装置1D)に送信する際には、AR空間SP1における座標系ax1上での位置を利用することができる。このように、同一の実空間(第1空間R1)に位置する第1装置1Aと第3装置1Cとは、共通のAR空間SP1及び共通の座標系ax1を使用することができる。なお、この場合、第1装置1A及び第3装置1Cの何れか一方を親機、他方を子機とすることができる。親機は共有される座標系ax1を最初に設定した情報処理装置1(図11の例では第1装置1A)とすることができ、子機は親機以外の情報処理装置1(図11の例では第3装置1C)とすることができる。
In the case shown in FIG. 11, when the
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。 Although the preferred embodiment of the present disclosure has been described in detail above with reference to the attached drawings, the technical scope of the present disclosure is not limited to such examples. It is clear that a person with ordinary knowledge in the technical field of the present disclosure can conceive of various modified or revised examples within the scope of the technical ideas described in the claims, and it is understood that these also naturally fall within the technical scope of the present disclosure.
本明細書において説明した装置は、単独の装置として実現されてもよく、一部または全部がネットワークで接続された複数の装置(例えばクラウドサーバ)等により実現されてもよい。 The devices described in this specification may be implemented as standalone devices, or may be implemented as multiple devices (e.g., cloud servers) some or all of which are connected via a network.
また、本開示に係る拡張現実システムは、座標系においてユーザの向いている方向を取得する方向取得部を備えることができる。また拡張現実システムは、情報処理装置1の位置及び姿勢を取得する検知部を備えることができる。検知部は、例えば、GPS情報や3軸加速度センサなどのデータに基づいてコンピュータの位置及び姿勢を把握することができる。
The augmented reality system according to the present disclosure may also include a direction acquisition unit that acquires the direction in which the user is facing in a coordinate system. The augmented reality system may also include a detection unit that acquires the position and orientation of the
本明細書において説明した装置による一連の処理は、ソフトウェア、ハードウェア、及びソフトウェアとハードウェアとの組合せのいずれを用いて実現されてもよい。本実施形態に係る情報処理装置1の各機能を実現するためのコンピュータプログラムを作製し、PC等に実装することが可能である。また、このようなコンピュータプログラムが格納された、コンピュータで読み取り可能な記録媒体も提供することができる。記録媒体は、例えば、磁気ディスク、光ディスク、光磁気ディスク、フラッシュメモリ等である。また、上記のコンピュータプログラムは、記録媒体を用いずに、例えばネットワークを介して配信されてもよい。
The series of processes performed by the device described in this specification may be realized using software, hardware, or a combination of software and hardware. A computer program for realizing each function of the
また、本明細書においてフローチャート図を用いて説明した処理は、必ずしも図示された順序で実行されなくてもよい。いくつかの処理ステップは、並列的に実行されてもよい。また、追加的な処理ステップが採用されてもよく、一部の処理ステップが省略されてもよい。 In addition, the processes described in this specification using flowchart diagrams do not necessarily have to be performed in the order shown. Some processing steps may be performed in parallel. Also, additional processing steps may be employed, and some processing steps may be omitted.
また、本明細書に記載された効果は、あくまで説明的または例示的なものであって限定的ではない。つまり、本開示に係る技術は、上記の効果とともに、または上記の効果に代えて、本明細書の記載から当業者には明らかな他の効果を奏しうる。 Furthermore, the effects described in this specification are merely descriptive or exemplary and are not limiting. In other words, the technology disclosed herein may achieve other effects that are apparent to a person skilled in the art from the description in this specification, in addition to or in place of the above effects.
なお、以下のような構成も本開示の技術的範囲に属する。
(項目1)
他情報処理装置との間で情報の授受を行う情報処理装置において、
所定空間に第1座標系を設定するとともに、前記他情報処理装置により利用される第2座標系の原点が前記第1座標系の原点から離れた位置となるように前記所定空間に前記第2座標系を設定する座標系設定手段と、
前記他情報処理装置から受け取った前記第2座標系上での前記他情報処理装置の位置を示す位置情報に基づいて、前記所定空間での前記他情報処理装置の位置を決定する位置決定手段と、を備える情報処理装置。
(項目2)
前記座標系設定手段は、前記所定空間において、前記第2座標系の向きを前記第1座標系とは異なる向きに設定する、項目1に記載の情報処理装置。
(項目3)
実空間を撮影した現実画像に前記他情報処理装置からの前記位置情報に基づく付加画像を重畳表示させた拡張現実画像を生成する画像生成手段をさらに備える、項目1又は2に記載の情報処理装置。
(項目4)
他情報処理装置との間で情報の授受を行う情報処理装置が実行する情報処理方法において、
所定空間に第1座標系を設定するとともに、前記他情報処理装置により利用される第2座標系の原点が前記第1座標系の原点から離れた位置となるように前記所定空間に前記第2座標系を設定する座標系設定ステップと、
前記他情報処理装置から受け取った前記第2座標系上での前記他情報処理装置の位置を示す位置情報に基づいて、前記所定空間での前記他情報処理装置の位置を決定する位置決定ステップと、を含む情報処理方法。
(項目5)
他情報処理装置との間で情報の授受を行う情報処理装置を制御するコンピュータに、
所定空間に第1座標系を設定するとともに、前記他情報処理装置により利用される第2座標系の原点が前記第1座標系の原点から離れた位置となるように前記所定空間に前記第2座標系を設定する座標系設定ステップと、
前記他情報処理装置から受け取った前記第2座標系上での前記他情報処理装置の位置を示す位置情報に基づいて、前記所定空間での前記他情報処理装置の位置を決定する位置決定ステップと、を含む制御処理を実行させるプログラム。
Note that the following configurations also fall within the technical scope of the present disclosure.
(Item 1)
In an information processing device which transmits and receives information to and from another information processing device,
a coordinate system setting means for setting a first coordinate system in a predetermined space, and for setting a second coordinate system in the predetermined space so that the origin of the second coordinate system used by the other information processing device is located at a position away from the origin of the first coordinate system;
and a position determination means for determining a position of the other information processing device in the specified space based on position information indicating a position of the other information processing device on the second coordinate system received from the other information processing device.
(Item 2)
2. The information processing device according to
(Item 3)
3. The information processing device according to
(Item 4)
An information processing method executed by an information processing device that transmits and receives information to and from another information processing device,
a coordinate system setting step of setting a first coordinate system in a predetermined space and setting a second coordinate system in the predetermined space so that the origin of the second coordinate system used by the other information processing device is located at a position away from the origin of the first coordinate system;
and a position determination step of determining a position of the other information processing device in the specified space based on position information indicating the position of the other information processing device on the second coordinate system received from the other information processing device.
(Item 5)
A computer that controls an information processing device that transmits and receives information to and from another information processing device,
a coordinate system setting step of setting a first coordinate system in a predetermined space and setting a second coordinate system in the predetermined space so that the origin of the second coordinate system used by the other information processing device is located at a position away from the origin of the first coordinate system;
and a position determination step of determining a position of the other information processing device in the specified space based on position information indicating the position of the other information processing device on the second coordinate system received from the other information processing device.
1 情報処理装置
21 CPU
51 座標系設定部(座標系設定手段)
52 位置決定部(位置決定手段)
53 通信制御部
1
51 Coordinate system setting unit (coordinate system setting means)
52 Position determination unit (position determination means)
53 Communication control unit
Claims (7)
前記第1の情報処理装置は、
第1の仮想空間に第1の座標系を設定する座標系設定手段と、
前記第1の座標系における前記第1の情報処理装置の第1の位置を決定する自分位置決定手段と、
前記第1の位置を前記第2の情報処理装置に送信する送信手段と、
前記第2の情報処理装置から第2の位置を受信する受信手段と、
前記第1の座標系上での前記第2の位置を前記第2の情報処理装置の位置として決定する相手位置決定手段と、を有し、
前記第2の情報処理装置は、
前記第1の情報処理装置との間で情報の授受を開始したセッション開始時の該第2の情報処理装置の位置と方向に基づいて、第2の仮想空間に第2の座標系を設定するとともに、前記第2の座標系の原点から離れた位置に第3の座標系の原点が位置するように前記第3の座標系を設定する座標系設定手段と、
前記第3の座標系における前記第2の情報処理装置の第3の位置を決定する自分位置決定手段と、
前記第3の位置を前記第2の位置として前記第1の情報処理装置に送信する送信手段と、
前記第1の情報処理装置から前記第1の位置を受信する受信手段と、
前記第3の座標系上での前記第1の位置を前記第1の情報処理装置の位置として決定する相手位置決定手段と、を有することを特徴とする情報処理システム。 A first information processing device and a second information processing device communicably connected to the first information processing device,
The first information processing device,
a coordinate system setting means for setting a first coordinate system in a first virtual space;
a self-position determining means for determining a first position of the first information processing device in the first coordinate system;
a transmitting means for transmitting the first location to the second information processing device;
receiving means for receiving a second position from the second information processing device;
a counterpart position determining means for determining the second position on the first coordinate system as a position of the second information processing device,
The second information processing device is
a coordinate system setting means for setting a second coordinate system in a second virtual space based on a position and a direction of the second information processing device at the start of a session in which information is exchanged between the second information processing device and the first information processing device, and for setting the third coordinate system so that the origin of the third coordinate system is located at a position away from the origin of the second coordinate system;
a self-position determining means for determining a third position of the second information processing device in the third coordinate system;
a transmitting means for transmitting the third location as the second location to the first information processing device;
a receiving means for receiving the first position from the first information processing device;
and a partner position determining means for determining the first position on the third coordinate system as the position of the first information processing device.
前記他情報処理装置との間で情報の授受を開始したセッション開始時の該情報処理装置の位置と方向に基づいて、所定空間に主座標系を設定するとともに、該主座標系の原点から離れた位置に副座標系の原点が位置するように前記所定空間に該副座標系を設定する座標系設定手段と、
前記他情報処理装置から受け取った前記他情報処理装置の位置を示す位置情報に基づいて、前記所定空間における前記副座標系上での前記他情報処理装置の位置を決定する相手位置決定手段と、を備える情報処理装置。 An information processing device that transmits and receives information to and from another information processing device,
a coordinate system setting means for setting a main coordinate system in a predetermined space based on a position and a direction of the information processing device at the start of a session in which information is exchanged between the information processing device and the other information processing device, and for setting a sub-coordinate system in the predetermined space so that the origin of the sub-coordinate system is located at a position away from the origin of the main coordinate system;
an other position determining means for determining a position of the other information processing device on the sub coordinate system in the specified space based on position information indicating a position of the other information processing device received from the other information processing device.
前記他情報処理装置との間で情報の授受を開始したセッション開始時の該情報処理装置の位置と方向に基づいて、所定空間に主座標系を設定するとともに、該主座標系の原点から離れた位置に副座標系の原点が位置するように前記所定空間に該副座標系を設定する座標系設定手段と、
前記所定空間における前記副座標系上の前記情報処理装置の位置を取得する自分位置決定手段と、
前記副座標系上の位置を前記情報処理装置の位置として前記他情報処理装置に送信する送信手段と、を備える情報処理装置。 An information processing device that transmits and receives information to and from another information processing device,
a coordinate system setting means for setting a main coordinate system in a predetermined space based on a position and a direction of the information processing device at the start of a session in which information is exchanged between the information processing device and the other information processing device, and for setting a sub-coordinate system in the predetermined space so that the origin of the sub-coordinate system is located at a position away from the origin of the main coordinate system;
a self-position determining means for acquiring a position of the information processing device on the sub-coordinate system in the predetermined space;
a transmitting means for transmitting the position on the secondary coordinate system as the position of the information processing device to the other information processing device.
前記他情報処理装置との間で情報の授受を開始したセッション開始時の該情報処理装置の位置と方向に基づいて、所定空間に主座標系を設定するとともに、該主座標系の原点から離れた位置に副座標系の原点が位置するように前記所定空間に該副座標系を設定する座標系設定ステップと、
前記他情報処理装置から受け取った前記他情報処理装置の位置を示す位置情報に基づいて、前記所定空間における前記副座標系上での前記他情報処理装置の位置を決定する相手位置決定ステップと、を含む情報処理方法。 An information processing method executed by an information processing device that transmits and receives information to and from another information processing device,
a coordinate system setting step of setting a main coordinate system in a predetermined space based on a position and a direction of the information processing device at the start of a session in which information is exchanged between the information processing device and the other information processing device, and setting a secondary coordinate system in the predetermined space so that the origin of the secondary coordinate system is located at a position away from the origin of the main coordinate system;
and a partner position determination step of determining a position of the other information processing device on the sub coordinate system in the specified space based on position information indicating the position of the other information processing device received from the other information processing device.
前記他情報処理装置との間で情報の授受を開始したセッション開始時の該情報処理装置の位置と方向に基づいて、所定空間に主座標系を設定するとともに、該主座標系の原点から離れた位置に副座標系の原点が位置するように前記所定空間に該副座標系を設定する座標系設定ステップと、
前記他情報処理装置から受け取った前記他情報処理装置の位置を示す位置情報に基づいて、前記所定空間における前記副座標系上での前記他情報処理装置の位置を決定する相手位置決定ステップと、を含む制御処理を実行させるプログラム。
A computer that controls an information processing device that transmits and receives information to and from another information processing device,
a coordinate system setting step of setting a main coordinate system in a predetermined space based on a position and a direction of the information processing device at the start of a session in which information is exchanged between the information processing device and the other information processing device, and setting a sub-coordinate system in the predetermined space so that the origin of the sub-coordinate system is located at a position away from the origin of the main coordinate system;
A program for executing a control process including a partner position determination step for determining the position of the other information processing device on the sub-coordinate system in the specified space based on position information indicating the position of the other information processing device received from the other information processing device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020162850A JP7486180B2 (en) | 2020-07-04 | 2020-09-29 | Information processing system, information processing device, information processing method, and program |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020116020 | 2020-07-04 | ||
JP2020162850A JP7486180B2 (en) | 2020-07-04 | 2020-09-29 | Information processing system, information processing device, information processing method, and program |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020116020 Division | 2020-07-04 | 2020-07-04 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2022013547A JP2022013547A (en) | 2022-01-18 |
JP7486180B2 true JP7486180B2 (en) | 2024-05-17 |
Family
ID=79553050
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020162850A Active JP7486180B2 (en) | 2020-07-04 | 2020-09-29 | Information processing system, information processing device, information processing method, and program |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP7486180B2 (en) |
WO (1) | WO2022009723A1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011107893A (en) | 2009-11-16 | 2011-06-02 | Sony Corp | Information processor, information processing method, program, and information processing system |
WO2013145614A1 (en) | 2012-03-27 | 2013-10-03 | パナソニック株式会社 | Information processing device, server device, information processing method and program |
WO2021053805A1 (en) | 2019-09-20 | 2021-03-25 | マクセル株式会社 | Information terminal device and positional recognition sharing method |
-
2020
- 2020-09-29 JP JP2020162850A patent/JP7486180B2/en active Active
-
2021
- 2021-06-28 WO PCT/JP2021/024403 patent/WO2022009723A1/en active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011107893A (en) | 2009-11-16 | 2011-06-02 | Sony Corp | Information processor, information processing method, program, and information processing system |
WO2013145614A1 (en) | 2012-03-27 | 2013-10-03 | パナソニック株式会社 | Information processing device, server device, information processing method and program |
WO2021053805A1 (en) | 2019-09-20 | 2021-03-25 | マクセル株式会社 | Information terminal device and positional recognition sharing method |
Non-Patent Citations (1)
Title |
---|
岡嶋雄太 他3名,遠隔ユーザの注意を作業物体上に反映するMR遠隔コラボレーション,日本バーチャルリアリティ学会論文誌,2009年06月30日,Vol.14, No.2,pp.185-192 |
Also Published As
Publication number | Publication date |
---|---|
JP2022013547A (en) | 2022-01-18 |
WO2022009723A1 (en) | 2022-01-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109643161B (en) | Dynamic entry and exit from virtual reality environments browsed by different HMD users | |
KR101637990B1 (en) | Spatially correlated rendering of three-dimensional content on display components having arbitrary positions | |
US11190904B2 (en) | Relative spatial localization of mobile devices | |
US10777006B2 (en) | VR body tracking without external sensors | |
CN104010706B (en) | The direction input of video-game | |
US8275834B2 (en) | Multi-modal, geo-tempo communications systems | |
US8246467B2 (en) | Interactive gaming with co-located, networked direction and location aware devices | |
Frank et al. | Mobile mixed-reality interfaces that enhance human–robot interaction in shared spaces | |
WO2016041088A1 (en) | System and method for tracking wearable peripherals in augmented reality and virtual reality applications | |
US20120210254A1 (en) | Information processing apparatus, information sharing method, program, and terminal device | |
JP2011175439A (en) | Image processing apparatus, image processing method, program, and image processing system | |
Huo et al. | SynchronizAR: Instant Synchronization for Spontaneous and Spatial Collaborations in Augmented Reality. | |
JP6986003B2 (en) | Tracking system and its tracking method | |
KR101734520B1 (en) | User Interfacing system based on movement patterns recognition by gyro sensor | |
US20230214005A1 (en) | Information processing apparatus, method, program, and information processing system | |
US20210263587A1 (en) | Split-type head-mounted display system and interaction method | |
JP6730577B2 (en) | Information processing apparatus, information processing system, control method thereof, and program | |
JP7486180B2 (en) | Information processing system, information processing device, information processing method, and program | |
JP7453383B2 (en) | Positioning and mapping using 3D line joints | |
CN110096134A (en) | A kind of VR handle ray shake antidote, device, terminal and medium | |
US20150084848A1 (en) | Interaction between generic interaction devices and an interactive display | |
CN110568927A (en) | Augmented reality information interaction method and device, electronic equipment and storage medium | |
KR20130050061A (en) | Method for providing game uniting on-line with off-line based on location based service | |
WO2018116377A1 (en) | Processing device, method, program, and processing system for superposing object on image obtained by capturing real space | |
US20230256332A1 (en) | Massively multiplayer local co-op and competitive gaming |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230524 |
|
TRDD | Decision of grant or rejection written | ||
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20240327 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20240328 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240425 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7486180 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |