JP5874698B2 - Information processing apparatus, control method thereof, and program - Google Patents
Information processing apparatus, control method thereof, and program Download PDFInfo
- Publication number
- JP5874698B2 JP5874698B2 JP2013178715A JP2013178715A JP5874698B2 JP 5874698 B2 JP5874698 B2 JP 5874698B2 JP 2013178715 A JP2013178715 A JP 2013178715A JP 2013178715 A JP2013178715 A JP 2013178715A JP 5874698 B2 JP5874698 B2 JP 5874698B2
- Authority
- JP
- Japan
- Prior art keywords
- dimensional model
- processing apparatus
- information processing
- image
- virtual space
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Processing Or Creating Images (AREA)
- User Interface Of Digital Computer (AREA)
Description
本発明は、ユーザが保持する物体に追従して移動する3次元モデルと、当該3次元モデルとは異なる3次元モデルとの接触をユーザに認識させることの可能な情報処理装置、その制御方法、及びプログラムに関する。
The present invention relates to an information processing apparatus capable of causing a user to recognize contact between a three-dimensional model that moves following an object held by the user and a three-dimensional model different from the three-dimensional model, a control method thereof, And the program.
従来、ヘッドマウントディスプレイ(HMD)やスマートフォンで撮影した現実の世界(以下、現実空間)の画像に、コンピュータで生成された仮想の世界(以下、仮想空間)の画像を重畳させて、HMDやスマートフォンの画面に表示する技術が存在する。例えば、複合現実感(Mixed Reality、以下、MR)技術や拡張現実感(Augmented Reality)技術などがある。 Conventionally, an image of a virtual world (hereinafter referred to as a virtual space) generated by a computer is superimposed on an image of a real world (hereinafter referred to as a real space) taken by a head mounted display (HMD) or a smartphone, and then the HMD or smartphone. There are technologies to display on the screen. For example, there are mixed reality (hereinafter referred to as MR) technology and augmented reality technology.
特にMR技術は、ユーザが装着したHMDに現実空間の画像と仮想空間の画像とを重畳して表示するので、目の前に仮想空間の情報が表示されているかのように見え、臨場感が非常に高い。そのため、MR技術を用いた様々な活用方法が考えられている。 In particular, the MR technology superimposes and displays the real space image and the virtual space image on the HMD worn by the user, so that it appears as if the virtual space information is displayed in front of the eyes, and there is a sense of presence. Very expensive. Therefore, various utilization methods using MR technology are considered.
例えば下記の特許文献1では、仮想のペットを育成する複合現実感提示装置において、ユーザの所定部位による所定動作により、仮想のペットを示す3次元モデルの内部状態を遷移させることで、仮想物体の存在感の認知を容易にする技術が開示されている。
For example, in
ところで、このMR技術を使用して、仮想空間に配置された3次元モデルをユーザが移動させる場合がある。例えば、MR技術によって表現されたモデルルームにおいて、家具を移動する場合である。 By the way, there are cases where a user moves a three-dimensional model arranged in a virtual space using this MR technique. For example, when moving furniture in a model room expressed by MR technology.
より具体的には、現実空間の画像と、モデルルームを3次元モデルで表現した仮想空間の画像とを重畳させ、重畳された画像をHMDを通じて表示することにより、実際に建築される室内を再現する。そして、表示されたモデルルーム内には、3次元モデルで表現された椅子や机といった家具が配置されており、ユーザはマウス等のデバイスを通じて、この家具を自由に持ち運ぶことができる。こうすることで、好きな位置に好きな家具をレイアウトしながら、モデルルームを体験することができる。 More specifically, the image of the real space and the image of the virtual space in which the model room is represented by a three-dimensional model are superimposed, and the superimposed image is displayed through the HMD, thereby reproducing the actually constructed room. To do. In the displayed model room, furniture such as a chair and a desk expressed in a three-dimensional model is arranged, and the user can freely carry this furniture through a device such as a mouse. By doing this, you can experience the model room while laying out your favorite furniture in your favorite position.
しかしながら、このようなモデルルームで家具を移動させる場合、モデルルームも家具も3次元モデルで表現されているので、家具を移動する際に壁を貫通して移動させることができてしまう。本来であれば、現実空間と同様に、3次元モデル同士が重なり合うことのないように制御するべきである。しかしながら、従来は、仮想空間内の指定された位置に3次元モデルを表示するようになっているので、3次元モデル同士が重なっていたとしても、そのまま指定された位置に表示されてしまう問題がある。つまり、より現実空間と同様な、リアルな動作をMR技術で実現することが求められている。 However, when furniture is moved in such a model room, the model room and the furniture are both represented by a three-dimensional model, and therefore, the furniture can be moved through the wall. Originally, control should be performed so that the three-dimensional models do not overlap as in the real space. However, conventionally, since a 3D model is displayed at a specified position in a virtual space, there is a problem that even if 3D models overlap each other, they are displayed as they are at a specified position. is there. That is, it is required to realize a realistic operation similar to that in the real space with the MR technology.
本発明は、ユーザが保持する物体に追従して移動する3次元モデルと、当該3次元モデルとは異なる3次元モデルとの接触をユーザに認識させることの可能な仕組みを提供することを目的とする。
This onset Ming, to provide a three-dimensional model which moves following the object Yoo over THE holds, a possible mechanism allowing the user to recognize contact with a different 3-dimensional model with the three-dimensional model For the purpose .
上記の目的を達成するために、本発明の情報処理装置は、現実空間を撮像した画像である現実空間画像に、仮想空間を撮像した画像である仮想空間画像を重畳した複合現実画像を、ユーザに対して提示するための情報処理装置であって、前記現実空間画像の入力を受け付ける現実空間画像入力受付手段と、前記複合現実画像を提示するユーザの位置及び姿勢の入力を受け付ける位置姿勢入力受付手段と、ユーザからの第1の指示に応じて、仮想空間に配置された3次元モデルが、前記現実空間においてユーザが保持する物体の動きに追従するように設定する設定手段と、前記設定手段で設定された3次元モデルを、前記物体の動きに追従するように移動させる3次元モデル移動手段と、前記3次元モデル移動手段で移動された3次元モデルを含む仮想空間を、前記位置姿勢入力受付手段で入力を受け付けた位置及び姿勢の少なくとも一方に基づいて撮像することにより、前記仮想空間画像を生成する仮想空間画像生成手段と、前記現実空間画像入力受付手段で入力を受け付けた現実空間画像に、前記仮想空間画像生成手段で生成された仮想空間画像を重畳し、前記複合現実画像を生成する複合現実画像生成手段とを備え、前記設定手段は、前記物体の動きに追従して移動させた3次元モデルが、当該3次元モデルとは異なる3次元モデルと接触した場合に、当該設定手段で設定された前記物体の動きに追従する設定を解除し、前記3次元モデル移動手段は、前記設定手段で前記物体の動きに追従する設定が解除されたことに応じて、移動させた3次元モデルを、前記ユーザが保持する物体の動きに追従させず、当該3次元モデルとは異なる3次元モデルと接触した位置で停止することを特徴とする。
In order to achieve the above object, the information processing apparatus of the present invention provides a mixed reality image obtained by superimposing a virtual space image, which is an image obtained by capturing a virtual space, on a real space image, which is an image obtained by capturing the real space, An information processing apparatus for presenting a real space image, and a real space image input receiving means for receiving an input of the real space image, and a position / posture input reception for receiving an input of a position and posture of a user presenting the mixed reality image And a setting unit configured to set the three-dimensional model arranged in the virtual space to follow the movement of the object held by the user in the real space in response to a first instruction from the user; 3D model which has been set in a 3-dimensional model moving means for moving so as to follow the movement of the object, a three-dimensional model that has been moved in the three-dimensional model moving means A virtual space image generating means for generating the virtual space image by capturing an image of the virtual space based on at least one of the position and orientation received by the position / orientation input receiving means, and the real space image input receiving A virtual reality image generated by the virtual space image generation means is superimposed on the real space image received by the means to generate the mixed reality image, and the setting means includes the setting means When the three-dimensional model moved following the movement of the object comes into contact with a three-dimensional model different from the three-dimensional model, the setting for following the movement of the object set by the setting unit is canceled, the three-dimensional model moving means, in response to the setting to follow the motion of the object by the setting means is canceled, the three-dimensional model is moved, the user to hold Not follow the movement of the object, characterized in that stop at a position come in contact with different three-dimensional model with the three-dimensional model.
本発明によれば、ユーザが保持する物体に追従して移動する3次元モデルと、当該3次元モデルとは異なる3次元モデルとの接触をユーザに認識させることが可能となる。
According to the present invention, it is possible to recognize a user contact with a different 3-dimensional models and three-dimensional model which moves following the object Yoo over THE holds, with the 3-dimensional model.
以下、図面を参照しながら、本発明の実施形態の一例について説明する。 Hereinafter, an example of an embodiment of the present invention will be described with reference to the drawings.
図1から図3は、MRシステム100のシステム構成の一例を示す図である。図1から図3に示すMRシステム100は、情報処理装置101、HMD102が相互にデータ通信可能に接続されている。情報処理装置101とHMD102との接続は、有線接続であってもよいし、無線接続であってもよい。尚、図1から図3のシステム上に接続される各種端末の構成は一例であり、用途や目的に応じて様々な構成例がある。
1 to 3 are diagrams showing an example of the system configuration of the MR system 100. FIG. In an MR system 100 shown in FIGS. 1 to 3, an
情報処理装置101は、パーソナルコンピュータやサーバのような装置である。情報処理装置101は、HMD102で撮影(撮像)された現実空間の画像(以下、現実空間画像)と、情報処理装置101で生成された仮想空間の画像(以下、仮想空間画像)とを重畳した画像(以下、複合現実画像)を生成し、HMD102に送信する。
The
HMD102は、いわゆるヘッドマウントディスプレイである。HMD102は、ユーザの頭部に装着するディスプレイ装置であり、右目用と左目用のビデオカメラと、右目用と左目用のディスプレイを備えている。HMD102は、HMD102のビデオカメラで撮影された現実空間画像を情報処理装置101に送信する。そして、情報処理装置101から送信されてきた複合現実画像を受信し、ディスプレイに表示する。更に、右目用と左目用のビデオカメラとディスプレイを設けているので、視差によって立体感を得ることができる。尚、HMD102で撮影する現実空間画像、及び表示する複合現実画像は、動画形式が望ましいが、所定の間隔で撮影された画像であってもよい。
The HMD 102 is a so-called head mounted display. The HMD 102 is a display device worn on the user's head, and includes a right-eye and left-eye video camera, and a right-eye and left-eye display. The HMD 102 transmits a real space image captured by the video camera of the HMD 102 to the
まず、図1のMRシステム100は、一意に識別可能なマーカー103が所定の場所に設置されており、HMD102から送信される現実空間画像に含まれるマーカー103を情報処理装置101が識別することで、HMD102の位置や姿勢を特定する形態のシステムである。より具体的には、仮想空間における所定の位置と、所定のマーカー103とを紐づけておき、現実空間画像から当該マーカー103が検出された場合には、そのマーカー103の大きさや傾きから、HMD102が仮想空間上のどの位置にいるのか、及びどの姿勢であるのかを特定する。尚、MRシステム100では、HMD102がどの方向を向いても、いずれかのマーカー103が検出できるように、マーカー103を配置しておくのがよい。
First, in the MR system 100 of FIG. 1, a uniquely
次に、図2のMRシステム100は、磁場を発生させるトランスミッター201を用いて、HMD102の位置や姿勢を特定する形態のシステムである。トランスミッター201は磁場を発生し、発生した磁場をHMD102に備えられたレシーバ202が受信する。受信した磁場に関する情報を情報処理装置101に送信すると、磁場の強さからHMD102の位置や姿勢を情報処理装置101が特定する。
Next, the MR system 100 of FIG. 2 is a system that identifies the position and orientation of the
そして、図3のMRシステム100は、赤外線カメラ301(センサ)を用いて、HMD102の位置や姿勢を特定する形態のシステムである。HMD102には、オプティカルマーカー302という光マーカーを備えており、赤外線カメラ301を用いて撮影し、撮影した結果を情報処理装置101に送信すると、オプティカルマーカー302を検出して、HMD102の位置姿勢を特定する。オプティカルマーカー302が撮影できるように、赤外線カメラ301を複数台設置することが望ましい。
The MR system 100 in FIG. 3 is a system that identifies the position and orientation of the
このように、HMD102の位置や姿勢を特定するためには、マーカーやセンサーを用いる必要がある。HMD102の位置や姿勢を特定できれば、どのような形態でも構わない。本実施形態では、図3のシステム構成を例に説明を行う。
Thus, in order to specify the position and orientation of the
図4は、本実施形態で用いるマウス401の一例である。マウス401は、ポインティングデバイスであり、情報処理装置101とデータ通信可能に接続されている。マウス401と情報処理装置101との接続は、有線接続であってもよいし、無線接続であってもよい。また、マウス401は第1のボタン402と第2のボタン403を備える。更に、マウス401にもHMD102と同様のオプティカルマーカー302を備える。このオプティカルマーカー302によって、HMD102だけでなく、マウス401の位置や姿勢も特定することができる。
FIG. 4 is an example of a
図5は、本発明の実施形態における情報処理装置101、HMD102のハードウェア構成を示す図である。尚、図5の情報処理装置101とHMD102のハードウェアの構成は一例であり、用途や目的に応じて様々な構成例がある。
FIG. 5 is a diagram illustrating a hardware configuration of the
まず、情報処理装置101は、CPU501、ROM502、RAM503、システムバス504、入力コントローラ505、ビデオコントローラ506、メモリコントローラ507、通信I/Fコントローラ508、入力デバイス509、ディスプレイ510、外部メモリ511等を備える。
First, the
CPU501は、システムバス504に接続される各デバイスやコントローラを統括的に制御する。
The
また、ROM502あるいは外部メモリ511には、CPU501の制御プログラムであるBIOS(Basic Input / OutputSystem)やオペレーティングシステムや、各種装置の実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。RAM503は、CPU501の主メモリ、ワークエリア等として機能する。
The
CPU501は、処理の実行に際して必要なプログラム等をRAM503にロードして、プログラムを実行することで各種動作を実現するものである。
The
また、入力コントローラ(入力C)505は、キーボードやマウス401等のポインティングデバイスからの入力を制御する。
An input controller (input C) 505 controls input from a pointing device such as a keyboard or
ビデオコントローラ(VC)506は、ディスプレイ510等の表示器への表示を制御する。表示器は液晶ディスプレイでもCRTでも構わない。
A video controller (VC) 506 controls display on a display device such as the
メモリコントローラ(MC)507は、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク(HD)やフレキシブルディスク(FD)或いはPCMCIAカードスロットにアダプタを介して接続されるカード型メモリ等の外部メモリ511へのアクセスを制御する。
The memory controller (MC) 507 is an adapter to a hard disk (HD), flexible disk (FD) or PCMCIA card slot for storing boot programs, browser software, various applications, font data, user files, editing files, various data, and the like. Controls access to an
通信I/Fコントローラ(通信I/FC)508は、ネットワークを介して、外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、TCP/IPを用いたインターネット通信等が可能である。通信I/Fコントローラ508は、トランスミッター201から磁場を受信したレシーバ202との通信と、赤外線カメラ301との通信も制御する。
A communication I / F controller (communication I / FC) 508 connects and communicates with an external device via a network, and executes communication control processing in the network. For example, Internet communication using TCP / IP is possible. The communication I /
尚、CPU501は、例えばRAM503内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、ディスプレイ510上での表示を可能としている。また、CPU501は、ディスプレイ510上の不図示のマウスカーソル等でのユーザ指示を可能とする。
The
本発明の情報処理装置101が後述する各種処理を実行するために用いられる各種プログラム等は外部メモリ511に記録されており、必要に応じてRAM503にロードされることによりCPU501によって実行されるものである。さらに、本発明に係わるプログラムが用いる定義ファイルや各種情報テーブルは外部メモリ511に格納されている。
Various programs used by the
次に、HMD102は、右目ビデオカメラ521、左目ビデオカメラ522、右目ディスプレイ523、左目ディスプレイ524、コントローラ525等を備える。
Next, the
右目ビデオカメラ521と、左目ビデオカメラ522は、現実世界を撮影するビデオカメラである。右目ビデオカメラ521は、右目ディスプレイ523に表示するための画像を撮影し、左目ビデオカメラ522は、左目ディスプレイ524に表示するための画像を撮影する。撮影された画像(現実空間画像)は、コントローラ525が情報処理装置101に送信し、通信I/Fコントローラ508を通じて情報処理装置101が受信する。
The right-
情報処理装置101から通信I/Fコントローラ508を通じて複合現実画像が送信されると、コントローラ525が受信し、受信した複合現実画像を右目ディスプレイ523と左目ディスプレイ524に表示させる。この時、右目ビデオカメラ521で撮影された現実空間画像に基づいて生成された複合現実画像は、右目ディスプレイ523に表示し、左目ビデオカメラ522で撮影された現実空間画像に基づいて生成された複合現実画像は、左目ディスプレイ524に表示する。
When the mixed reality image is transmitted from the
尚、図2のようなシステム構成の場合、レシーバ202がHMD102に設置されており、レシーバ202が受け取った磁場の情報をレシーバ202から情報処理装置101に送信する。
In the case of the system configuration as shown in FIG. 2, the
図6は、情報処理装置101のモジュール構成を示す機能構成図である。尚、図6の情報処理装置101のモジュール構成は一例であり、用途や目的に応じて様々な構成例がある。
FIG. 6 is a functional configuration diagram illustrating a module configuration of the
情報処理装置101は、オペレーティングシステム600、MRプラットフォーム610、MRアプリケーション620から構成される。
The
オペレーティングシステム600は、通信モジュール601、入力デバイス制御モジュール602を備える。通信モジュール601は、HMD102やレシーバ202、赤外線カメラ301と通信するためのモジュールである。通信モジュール601は、通信I/Fコントローラ508を通じて、各種装置と情報の通信を行う。入力デバイス制御モジュール602は、マウス401等の入力デバイス509からの信号を受信し、情報処理装置101において各種制御を行うモジュールである。
The operating system 600 includes a
MRプラットフォーム610は、キャリブレーションモジュール611、画像処理モジュール612、マーカー検知モジュール613、磁場解析モジュール614、赤外線情報解析モジュール615、位置姿勢特定モジュール616、色検知モジュール617から構成される。
The MR platform 610 includes a
キャリブレーションモジュール611は、現実空間と仮想空間の位置合わせを行うためのモジュールである。HMD102で撮影された現実空間画像や各種センサーからの情報により、現実空間と仮想空間の位置合わせを行う。
The
画像処理モジュール612は、HMD102で撮影された現実空間画像からマーカー103等を抽出するために画像処理を実行するモジュールである。画像処理の内容は特に問わない。現実空間画像から必要な情報を抽出しやすくなる画像処理であれば、何でもよい。
The
マーカー検知モジュール613は、HMD102で撮影され、画像処理モジュール612で画像処理された現実空間画像から、マーカー103を検知するためのモジュールである。現実空間画像からマーカー103の特徴点を抽出し、更にマーカー103の大きさや傾きを検出する。検知したマーカー103の情報は、後述する位置姿勢特定モジュール616に渡す。
The
磁場解析モジュール614は、レシーバ202で送信された、トランスミッター201で発生する磁場を解析するためのモジュールである。磁場の強さや変化を解析し、後述する位置姿勢特定モジュール616に渡す。
The magnetic field analysis module 614 is a module for analyzing the magnetic field generated by the
赤外線情報解析モジュール615は、赤外線カメラ301から送信された赤外線の電気信号(以下、赤外線情報)を解析するためのモジュールである。赤外線情報からオプティカルマーカー302を検出し、検出した情報を後述する位置姿勢特定モジュール616に渡す。
The infrared
位置姿勢特定モジュール616は、マーカー検知モジュール613、磁場解析モジュール614、赤外線情報解析モジュール615から渡された各種情報に基づいて、HMD102またはマウス401の位置と姿勢を特定するモジュールである。キャリブレーションモジュール611によって現実空間と仮想空間の位置合わせが行われているので、現実空間における位置から仮想空間における位置を特定できる。
The position /
色検知モジュール617は、HMD102から送信された現実空間画像から所定の色を検知するためのモジュールである。特に、後述するマスク設定モジュール622において、3次元モデルによってユーザの手が隠れないようにするために、肌色の画素を検知する。RGB(Red−Green−Blue color model)で肌色に近い色の値を設定し、それと同じまたは同様の色を肌色と判定すればよい。
The
MRアプリケーション620は、仮想カメラ制御モジュール621、マスク設定モジュール622、仮想オブジェクト管理モジュール623、重畳画像生成モジュール624から構成される。
The MR application 620 includes a virtual
仮想カメラ制御モジュール621は、位置姿勢特定モジュール616で特定された仮想空間における位置と姿勢に基づいて、仮想空間におけるカメラの位置と姿勢を制御するモジュールである。仮想空間におけるカメラは、仮想空間を撮影するためのカメラである。つまり、仮想空間におけるユーザの視点である。このカメラで撮影された仮想空間画像と、HMD102から送信された現実空間画像とを重畳させることで、複合現実画像が生成される。
The virtual
マスク設定モジュール622は、仮想空間画像と現実空間画像を重畳させる際に、現実空間画像を構成する画素のうち、仮想空間画像を重畳させない画素に対してマスクを設定するモジュールである。マスクが設定された画素には、仮想空間画像が重畳されない。特に、色検知モジュール617で検知された色の画素にマスクを設定する。肌色が検知されているのであれば、肌色の画素の部分にマスクを設定し、ユーザの手はいつでも見えるようにできる。
The
仮想オブジェクト管理モジュール623は、仮想空間に配置される3次元モデル(以下、仮想オブジェクト)を管理するためのモジュールである。仮想空間における仮想オブジェクトの配置位置の管理や、仮想オブジェクトの表示、移動、非表示、仮想オブジェクト同士の紐付け、仮想オブジェクト同士の接触判定等を行う。
The virtual
重畳画像生成モジュール624は、HMD102から送信された現実空間画像と、仮想カメラ制御モジュール621で制御された仮想空間のカメラで撮影された仮想空間画像とを重畳させ、複合現実画像を生成するためのモジュールである。この時、マスク設定モジュール622でマスクが設定された現実空間画像の画素には、仮想空間画像を重畳しない。また、重畳画像生成モジュール624では、右目ビデオカメラ521と左目ビデオカメラ522でそれぞれ撮影された現実空間画像に対応する複合現実画像を生成する。尚、情報処理装置101が備える各種モジュールが、右目ビデオカメラ521で撮影された現実空間画像と左目ビデオカメラ522で撮影された現実空間画像に対して実行する処理はどちらも同様である。
The superimposed
次に、本発明の実施形態における情報処理装置101によって行われる一連の処理について、図7に示すフローチャートを用いて説明する。
Next, a series of processing performed by the
ステップS701では、情報処理装置101のCPU501は、ユーザからの指示に応じて、外部メモリ511に記憶されたMRプラットフォーム610とMRアプリケーション620を起動し、HMD102と赤外線カメラ301からの情報の送信を受け付ける。
In step S701, the
ステップS702では、HMD102のコントローラ525は、右目ビデオカメラ521及び左目ビデオカメラ522で現実空間を撮影する。そして、ステップS703では、HMD102のコントローラ525は、撮影された現実世界の画像(現実空間画像)を情報処理装置101に送信する。尚、本実施形態では右目ビデオカメラ521及び左目ビデオカメラ522で撮影された画像は静止画でも動画でもよい。よりリアリティのある複合現実感を体感するためには、動画のほうがよい。
In step S <b> 702, the
ステップS704では、情報処理装置101のCPU501は、通信モジュール601を用いて、HMD102から送信された現実空間画像を受信し、RAM503に記憶する(現実空間画像入力受付手段)。
In step S704, the
一方、ステップS705では、赤外線カメラ301は、現実空間を撮影する。この時、赤外線カメラ301は、赤外光を撮影するので、前述したHMD102とマウス401に付されたオプティカルマーカー302を撮影することとなる。そして、ステップS706では、赤外線カメラ301は、撮影された赤外線の電気信号(赤外線情報)を情報処理装置101に送信する。
On the other hand, in step S705, the
ステップS707では、情報処理装置101のCPU501は、通信モジュール601を用いて、赤外線カメラ301から送信された赤外線情報を受信し、RAM503に記憶する(位置姿勢入力受付手段)。赤外線情報は、HMD102やマウス401に付されたオプティカルマーカー302の位置や姿勢を示す情報であるので、HMD102を装着するユーザやマウス401の位置や姿勢の入力を情報処理装置101が受け付けているのと同義である。
In step S <b> 707, the
ステップS708では、情報処理装置101のCPU501は、入力デバイス制御モジュール602を用いて、マウス401からの操作信号を受信する。より具体的には、マウス401が備えるボタンが押下(クリック)された場合に、押下されたボタンに関する操作信号がマウス401から情報処理装置101に対して送信され、情報処理装置101が入力デバイス制御モジュール602を通じてこれを受信する。尚、本実施形態では、マウス401の備える第1のボタン402と第2のボタン403を用いるが、これ以外のボタンを用いてもよい。
In step S <b> 708, the
ステップS709では、情報処理装置101のCPU501は、ユーザからMRプラットフォーム610やMRアプリケーション620に対する終了指示があったか否かを判定する。MRプラットフォーム610やMRアプリケーション620を終了するメニューがユーザから選択された場合に終了指示があったと判定してもよいし、それ以外でもよい。終了指示があったと判定された場合には、ステップS719に処理を進める。終了指示があったと判定されなかった場合には、ステップS710に処理を進める。
In step S <b> 709, the
ステップS710では、情報処理装置101のCPU501は、赤外線情報解析モジュール615を用いて、ステップS707で受信した赤外線情報からHMD102とマウス401に備えられたオプティカルマーカー302の位置や姿勢を検出する。尚、赤外線情報から検出する方法については、既存の技術を用いるため、詳細な説明は省略する。
In step S710, the
ステップS711では、情報処理装置101のCPU501は、位置姿勢特定モジュール616を用いて、ステップS710で検出したHMD102とマウス401のオプティカルマーカー302の位置や姿勢から、仮想空間上におけるHMD102とマウス401の位置や姿勢を特定する。つまり、HMD102を装着するユーザとそのユーザが操作するマウス401の現実空間における位置と姿勢を特定することになる。キャリブレーションモジュール611によって、現実空間における所定の位置と仮想空間における所定の位置とが一致するように、あらかじめ調整されている。そのため、現実空間における位置や姿勢が特定できれば、仮想空間における位置や姿勢も特定できる。
In step S711, the
ステップS712では、情報処理装置101のCPU501は、ステップS708で受信したマウスの操作信号と、ステップS711で特定したHMD102とマウス401の仮想空間上の位置や姿勢に基づいて、ステップS704で受信した現実空間画像に重畳する仮想空間を生成する処理を実行する。仮想空間生成処理の詳細は、図8で後述する。
In
ステップS713では、情報処理装置101のCPU501は、仮想カメラ制御モジュール621を用いて、仮想空間における仮想カメラの位置と向きを制御し、仮想空間を撮影する(仮想空間画像生成手段)。そして、撮影により生成された仮想空間画像をRAM503に記憶する。
In step S713, the
より具体的には、ステップS711で特定されたHMD102の位置や姿勢からHMD102が仮想空間のどの位置でどの方向を向いているのかを特定し、その特定された位置と方向に仮想カメラを設置する。仮想カメラは、仮想空間内に設置され、仮想空間を撮影する仮想的な撮影部である。仮想空間は仮想オブジェクトから形成される仮想的な3次元空間であるので、これをHMD102に表示させるために2次元の画像にしなければならない。そのため、3次元空間を仮想カメラから撮影することにより、2次元画像を取得する。尚、ここでいう撮影は仮想空間をキャプチャすることである。キャプチャする際には、仮想空間に存在する仮想オブジェクトのみをキャプチャする。そのため、背景は透過されている。
More specifically, the position and orientation of the
また、仮想カメラから見て、仮想オブジェクトの手前にマスクオブジェクトが配置されている場合にも、当該マスクオブジェクトが重なっている部分の仮想オブジェクトは透過される。マスクオブジェクトは、ユーザによって仮想空間に設置される仮想オブジェクトの1つである。マスクオブジェクトを配置することにより、仮想オブジェクトが常に最前面に表示される問題を防ぐことができる。例えば、現実空間に配置された物体の向こう側に仮想オブジェクトを表示したい場合がある。このとき、マスクオブジェクトを配置しないと、後述するステップS715で現実空間画像の上に仮想空間画像を重畳することになるので、仮想オブジェクトが物体よりも手前に表示されてしまう。そこで、当該物体の位置に相当する仮想空間上の位置にマスクオブジェクトを設定する。こうすると、仮想カメラから見て当該マスクオブジェクトよりも奥にある仮想オブジェクトは、そのマスクオブジェクトと重なる部分が透過する。これにより、現実空間画像の上に仮想空間画像を重畳しても、物体よりも奥に仮想オブジェクトが表示されているように見える。 Further, even when a mask object is arranged in front of the virtual object when viewed from the virtual camera, the virtual object in the portion where the mask object overlaps is transmitted. The mask object is one of virtual objects that are installed in the virtual space by the user. By arranging the mask object, the problem that the virtual object is always displayed in the foreground can be prevented. For example, there is a case where a virtual object is desired to be displayed beyond an object placed in the real space. At this time, if the mask object is not arranged, the virtual space image is superimposed on the real space image in step S715 described later, so that the virtual object is displayed in front of the object. Therefore, a mask object is set at a position in the virtual space corresponding to the position of the object. In this way, a portion of the virtual object that is behind the mask object as viewed from the virtual camera passes through the portion overlapping the mask object. Thereby, even if the virtual space image is superimposed on the real space image, it appears that the virtual object is displayed behind the object.
ステップS714では、情報処理装置101のCPU501は、仮想カメラ制御モジュール621を用いて、ステップS713で撮影された仮想空間画像をRAM503から取得する。
In step S <b> 714, the
そして、ステップS715では、情報処理装置101のCPU501は、重畳画像生成モジュール624を用いて、ステップS704で受信した現実空間画像に、ステップS714で取得した仮想空間画像を重畳し、複合現実画像を生成する(複合現実画像生成手段)。この時、情報処理装置101のCPU501は、色検知モジュール617を用いて、現実空間画像から所定の色を含む画素を検知し、更にマスク設定モジュール622を用いて、検知した画素には仮想空間画像が重畳されないように制御する。例えば、ユーザの手の肌色を検知し、その検知した部分には仮想空間画像が重畳されないようにする。こうすれば、ユーザの手が仮想オブジェクトよりも手前に表示されるように見える。
In step S715, the
ステップS716では、情報処理装置101のCPU501は、通信モジュール601を用いて、ステップS715で生成された複合現実画像をHMD102に送信する(複合現実画像送信手段)。そして、ステップS704に処理を戻し、ステップS709で終了指示があるまでステップS702乃至ステップS718の処理を繰り返す。
In step S716, the
ステップS717では、HMD102のコントローラ525は、ステップS716で送信された複合現実画像を受信する。そして、ステップS718では、HMD102のコントローラ525は、ステップS717で受信した複合現実画像を、右目ディスプレイ523と左目ディスプレイ524に表示し、ユーザに複合現実画像を提示する(表示手段)。前述した処理においては説明を省略したが、複合現実画像は右目ディスプレイ523に表示するものと、左目ディスプレイ524に表示するものの2つが生成されている。右目ディスプレイ523に表示するものは、右目ビデオカメラ521から取得した現実空間画像を用いて生成された複合現実画像を表示する。一方、左目ディスプレイ524に表示するものは、左目ビデオカメラ522から取得した現実空間画像を用いて生成された複合現実画像を表示する。
In step S717, the
このように、ステップS702乃至ステップS718を繰り返し実行することで、リアルタイムに複合現実感をユーザに体感させることができる。また、前述したステップS709で終了指示があったと判定された場合には、ステップS719に処理を進め、ステップS719では、情報処理装置101のCPU501は、MRプラットフォーム610とMRアプリケーション620を終了させる。
Thus, by repeatedly executing Steps S702 to S718, the user can experience mixed reality in real time. If it is determined in step S709 that an instruction for termination has been given, the process proceeds to step S719. In step S719, the
次に、本発明の実施形態における情報処理装置101によって行われる仮想空間生成処理について、図8に示すフローチャートを用いて説明する。
Next, virtual space generation processing performed by the
本発明における仮想空間生成処理は、仮想オブジェクトから成る仮想空間を生成する処理であって、マウス401を通じてユーザから指示された内容に応じて、仮想空間における仮想オブジェクトの位置や動作を制御する処理である。
The virtual space generation process in the present invention is a process for generating a virtual space composed of virtual objects, and is a process for controlling the position and movement of the virtual object in the virtual space in accordance with the contents instructed by the user through the
図8の処理の概要について、図10、図11を用いて説明する。まず、図10の1000について説明する。1000は、仮想空間に仮想オブジェクトが配置された初期状態である。ユーザ1001は、HMD102を装着し、複合現実画像を閲覧しているユーザである。仮想オブジェクト1002と仮想オブジェクト1003は、仮想空間に配置された仮想オブジェクトである。カーソルオブジェクト901は、後述するステップS802で配置されるカーソルオブジェクトである。カーソルオブジェクトとは、仮想オブジェクトとの接触を検知するための3次元モデルである。カーソルオブジェクトは、図9のカーソルオブジェクト901に示すように、マウス401に重畳するように表示される。後述する処理において、このカーソルオブジェクト901と接触している仮想オブジェクトを操作することができる。ユーザ1001は、HMD102の右目ディスプレイ523と左目ディスプレイ524を通じて、現実空間画像に重畳されたカーソルオブジェクト901、仮想オブジェクト1002、仮想オブジェクト1003を閲覧している状態である。
An overview of the processing in FIG. 8 will be described with reference to FIGS. 10 and 11. First, 1000 in FIG. 10 will be described.
まず、ユーザ1001が移動してマウス401を仮想オブジェクトに近づけて、カーソルオブジェクト901と仮想オブジェクトとを接触させる。そして、接触している状態でマウス401の第1のボタン402をユーザ1001が押下する。すると、押下されたことを情報処理装置101のCPU501が検知し、接触している仮想オブジェクトをカーソルオブジェクト901に追従するように制御する。図10の1010は、カーソルオブジェクト901を仮想オブジェクト1002に接触させた状態で第1のボタン402を押下し、仮想オブジェクト1002を持ち上げた図である。このように第1のボタン402の押下を情報処理装置101のCPU501が検知し続けている間は、仮想オブジェクト1002をカーソルオブジェクト901に追従するように移動させることができる。
First, the
次に、ユーザ1001がマウス401で第1のボタン402を押下したまま移動し、仮想オブジェクト1003を通り抜けた場合、本実施形態では、図11の1100に示すように、マウス401のカーソルオブジェクト901に追従していた仮想オブジェクト1002が仮想オブジェクト1003に接触した状態で追従を停止する。これは、たとえ仮想オブジェクトであっても、より現実空間に近い動作をさせることで、リアリティのある仮想空間を提示するためである。
Next, when the
従来の複合現実感技術では、仮想オブジェクトはあくまでデータであるので、仮想オブジェクト同士が重なり合うことができていた。これは、情報処理装置101のCPU501が、仮想オブジェクトごとに指定された座標値の位置に当該仮想オブジェクトを配置していたからである。つまり、仮想オブジェクト同士の干渉は考慮せずに、指定された位置に表示していたということである。しかしながら、自動車等の設計を複合現実感技術で行う場合には、仮想オブジェクトである部品同士の干渉をチェックしないと、本当に当該部品が組み込めるのかどうかわからない。また別のケースとして、モデルルームを複合現実感技術で提示した時に、仮想オブジェクトである家具を部屋の中に持ち運ぼうとした時に、部屋の扉を家具が通過できるかどうかをチェックしないと、現実味のないシミュレーションとなってしまう。
In the conventional mixed reality technology, since virtual objects are data only, virtual objects can overlap each other. This is because the
そのため、ユーザ1001が移動させる仮想オブジェクト1002が、他の仮想オブジェクト1003に接触したときには、仮想オブジェクト1002を停止することにより、移動している仮想オブジェクト1002が他の仮想オブジェクト1003に接触してしまったことをユーザに通知している。
Therefore, when the
また、図11の1110に示すように、1100のように仮想オブジェクト同士が接触し、マウス401の第1のボタン402が押下されている状態で、更にマウス401の第2のボタン403が押下されると、仮想オブジェクト1002がカーソルオブジェクト901に対する追従を再開する。仮想オブジェクト1002の追従が停止してしまった場合に、ユーザ1001は、再度仮想オブジェクト1002を取りに行く手間が生じる。そのため、容易に仮想オブジェクト1002を移動させるために、第1のボタン402を押下したまま、第2のボタン403が押下されると、カーソルオブジェクト901に対する追従を再開する。
以下、この一連の処理について説明を行う。
Further, as indicated by 1110 in FIG. 11, when the virtual objects are in contact with each other as in 1100 and the
Hereinafter, this series of processes will be described.
まず、ステップS801では、情報処理装置101のCPU501は、仮想オブジェクト管理モジュールを用いて、仮想空間の所定の位置に仮想オブジェクトを配置する。仮想空間上のどの位置にどの仮想オブジェクトを配置するのかは、あらかじめユーザによって指定されている。そのため、その指定に応じた位置に所定の仮想オブジェクトを配置する。仮想オブジェクトは複数あってもよい。
First, in step S801, the
ステップS802では、情報処理装置101のCPU501は、前述したステップS711で特定されたマウス401の位置に対応する仮想空間の位置に、カーソルオブジェクト901を配置する。
In step S802, the
ステップS803では、情報処理装置101のCPU501は、入力デバイス制御モジュール602を用いて、マウス401に備える第1のボタン402(第1の指示)または第2のボタン403(第2の指示)が押下されているか否かを判定する。より具体的には、第1のボタン402または第2のボタン403が押下されていることを示す信号を検知したか否かによって判定する。第1のボタン402または第2のボタン403が押下されていると判定された場合には、ステップS403に処理を進める。第1のボタン402および第2のボタン403のどちらも押下されていないと判定された場合には、ステップS819に処理を進める。
In step S803, the
ステップS804では、情報処理装置101のCPU501は、仮想オブジェクト管理モジュール623を用いて、カーソルオブジェクト901に子要素があるか否かを判定する。子要素とは、前述した仮想オブジェクト1002のように、カーソルオブジェクト901に追従する仮想オブジェクトのことである。つまり、ユーザからの指示に応じてカーソルオブジェクト901で移動させている仮想オブジェクトがあるか否かを判定する。子要素があると判定された場合には、ステップS805に処理を進める。子要素がないと判定された場合には、ステップS807に処理を進める。
In step S <b> 804, the
ステップS805では、情報処理装置101のCPU501は、仮想オブジェクト管理モジュール623を用いて、カーソルオブジェクト901が当該カーソルオブジェクト901に追従させる仮想オブジェクト(以下、ObjX)と接触しているか否かを判定する。つまり、第1のボタン402または第2のボタン403がユーザから押下されて、ObjXを移動させようとしているか否かを判定することになる。カーソルオブジェクト901がObjXと接触していると判定された場合には、ステップS806に処理を進める。カーソルオブジェクト901がObjXと接触していないと判定された場合には、ステップS814に処理を進める。
In step S805, the
ステップS806では、情報処理装置101のCPU501は、仮想オブジェクト管理モジュール623を用いて、接触しているObjXをカーソルオブジェクト901の子要素に設定する。つまり、ObjXをカーソルオブジェクト901に追従(移動)するように制御する(3次元モデル移動手段)。子要素となったObjXは、カーソルオブジェクト901に追従するので、ユーザが自由にObjXの位置を移動させることができる。
In step S <b> 806, the
ステップS807では、情報処理装置101のCPU501は、入力デバイス制御モジュール602を用いて、マウス401の第1のボタン402が押下されているか否かを判定する。第1のボタン402が押下されていると判定された場合には、ステップS808に処理を進める。第1のボタン402が押下されておらず、第2のボタン403が押下されていると判定された場合には、仮想空間生成処理を終了し、ステップS713に処理を進める。
In step S807, the
ステップS808では、情報処理装置101のCPU501は、仮想オブジェクト管理モジュール623を用いて、前述したステップS806でカーソルオブジェクト901の子要素となったObjXの仮想空間上の座標値を取得する。ここで取得する座標値は、後述するステップS812で使用する。
In step S808, the
ステップS809では、情報処理装置101のCPU501は、仮想オブジェクト管理モジュール623を用いて、カーソルオブジェクト901の子要素であるObjXと、当該ObjXとは異なる仮想オブジェクト(以下、ObjY)とが接触しているかどうかを判定する。ステップS806でカーソルオブジェクト901の子要素となったObjXは、前述した通り、カーソルオブジェクト901に追従している。つまり、ユーザがカーソルオブジェクト901でObjXを移動させた結果、ObjXが他の仮想オブジェクトであるObjYと接触してしまう可能性がある。前述した図11の1100に示すように、本実施形態では、カーソルオブジェクト901で移動させている仮想オブジェクト1002(ObjX)が他の仮想オブジェクト1003(ObjY)に接触した場合には、仮想オブジェクト1002(ObjX)を接触した位置で停止し、カーソルオブジェクト901に対する追従を終了する必要がある。そのため、ステップS809では、カーソルオブジェクト901の子要素であるObjXと、ObjYとが接触しているかどうかを判定している。また、接触の判定をする際には、更にObjXの移動方向にObjYがあるかどうかも判定する。つまり、ObjYの方にObjXが向かっているのであれば、接触した際に停止する必要があるが、そうでない場合(ObjYのある面に対して平行にObjXを移動する場合)には接触していたとしても停止する必要はない。そのため、ObjXの移動方向も考慮して、接触判定を行う。ObjXとObjYとが接触していると判定された場合には、ステップS810に処理を進める。ObjXとObjYとが接触していないと判定された場合には、仮想空間生成処理を終了し、ステップS713に処理を進める。
In step S809, the
ステップS810では、情報処理装置101のCPU501は、仮想オブジェクト管理モジュール623を用いて、ObjXとObjYとが接触している箇所を識別表示する。
In step S810, the
ユーザは、仮想オブジェクト同士の接触を気にせずにObjXを移動させていることが想定される。そのため、ObjXが急に追従してこなくなった場合、ユーザに不安感を与えてしまう。そこで、ObjXとObjYとが接触していることをユーザに通知することで、このような問題点を解決している。 It is assumed that the user moves ObjX without worrying about contact between virtual objects. For this reason, when ObjX suddenly stops following, the user feels uneasy. Therefore, such a problem is solved by notifying the user that ObjX and ObjY are in contact with each other.
また、ユーザにとっては、どの部分が接触しているのかを知りたいことがある。例えば、製品設計において、部品が他の部品と接触していないかどうか確認しないと、故障につながってしまう可能性がある。そこで、ObjXのどの部分がObjYと接触しているのかをユーザに対して識別表示することで、このような問題点を解決している。図11の1100では、この識別表示の一例を示している。図11の1100では、仮想オブジェクト1002(ObjX)の左面と、仮想オブジェクト1003(ObjY)の右面とが接触しているので、接触している部分を示すように吹き出しを表示させている。この他にも、接触している部分の色を変えてもよいし、不図示のスピーカーから音を出して通知してもよい。通知の方法はどのような方法でもよい。 Also, the user may want to know which part is in contact. For example, in product design, failure to check whether a part is in contact with other parts may lead to failure. Therefore, such a problem is solved by identifying to the user which part of ObjX is in contact with ObjY. An example of this identification display is shown at 1100 in FIG. In 1100 of FIG. 11, since the left surface of the virtual object 1002 (ObjX) and the right surface of the virtual object 1003 (ObjY) are in contact, a balloon is displayed to indicate the contacted portion. In addition to this, the color of the contacted part may be changed, or a sound may be emitted from a not-shown speaker. Any method of notification may be used.
ステップS811では、情報処理装置101のCPU501は、仮想オブジェクト管理モジュール623を用いて、カーソルオブジェクト901から子要素であるObjXを当該カーソルオブジェクト901から切り離す。つまり、子要素でなくす。そして、ステップS812では、情報処理装置101のCPU501は、仮想オブジェクト管理モジュール623を用いて、ステップS808で取得した座標値をObjXに代入する。つまり、ObjXはカーソルオブジェクト901の子要素ではなくなったので、追従を終了して、接触した位置で停止する必要がある。そこで、ステップS808で取得した座標値をObjXの表示位置として使用する。
In step S811, the
ステップS813では、情報処理装置101のCPU501は、仮想オブジェクト管理モジュール623を用いて、第1ボタン押下中フラグを「0」から「1」に変更する。第1のボタン押下中フラグは、マウス401の第1のボタン402が押下中であることを示すフラグである。第1のボタン押下中フラグは、後述するステップS814で使用する。ステップS813の処理が終了すると、仮想空間生成処理を終了し、ステップS713に処理を進める。
In step S813, the
このように、ユーザはカーソルオブジェクト901をObjXに接触させた状態で第1のボタン402または第2のボタン403を押下することで、ObjXを移動させることができ、第1のボタン402でObjXを移動させている場合に、ObjXが他の仮想オブジェクトであるObjYと接触した場合には、ObjXを接触した位置で停止させることができる。そのため、より現実空間に近い動作をユーザに提示することができる。また、第2のボタン403でObjXを移動させている場合には、ステップS808乃至ステップS813を実行しないため、従来通り、ObjXがObjYと接触した位置で停止させずに、ObjXがObjYを貫通して移動させることができる。つまり、ユーザは状況に応じて、所望の移動方法を選択することができる。
In this manner, the user can move ObjX by pressing the
一方、ステップS805でObjXとカーソルオブジェクト901が接触しないと判定された場合には、ステップS814では、情報処理装置101のCPU501は、仮想オブジェクト管理モジュール623を用いて、第1のボタン押下中フラグが「1」であるか否かを判定する。つまり、ステップS808乃至ステップS813の処理が実行された後も第1のボタン402が押下中であるか否かを判定する。第1のボタン押下中フラグが「1」であると判定された場合には、ステップS815に処理を進める。第1のボタン押下中フラグが「0」であると判定された場合には、仮想空間生成処理を終了し、ステップS713に処理を進める。
On the other hand, if it is determined in step S805 that ObjX does not contact the
ステップS815では、情報処理装置101のCPU501は、入力デバイス制御モジュール602を用いて、更に第2のボタン403も押下されたか否かを判定する。第2のボタン403も押下されたと判定された場合には、ステップS816に処理を進める。第2のボタン403が押下されなかった場合には、仮想空間生成処理を終了し、ステップS713に処理を進める。
In step S815, the
ステップS816では、情報処理装置101のCPU501は、仮想オブジェクト管理モジュール623を用いて、カーソルオブジェクト901の仮想空間上の座標値を取得する。そして、ステップS817では、情報処理装置101のCPU501は、仮想オブジェクト管理モジュール623を用いて、ステップS816で取得した座標値をObjXの座標値として代入する。つまり、前述したステップS812で接触した位置で停止したObjXをカーソルオブジェクト901の位置に呼び戻す。
In step S <b> 816, the
ステップS818では、情報処理装置101のCPU501は、仮想オブジェクト管理モジュール623を用いて、前述したステップS806と同様に、ObjXをカーソルオブジェクト901の子要素とする。このように、ObjXがObjYに接触することによりカーソルオブジェクト901から切り離され、停止した場合であっても、第1のボタン402の押下を継続したまま、更に第2のボタン403を押下することで、ObjXを呼び戻すことができる。すなわち、ObjXの追従動作を再開することができる。これにより、わざわざユーザがObjXを取りに行く手間を軽減することができる。
In step S818, the
ステップS803で第1のボタン402または第2のボタン403が第1のボタン402および第2のボタン403のどちらも押下されていないと判定された場合には、ステップS819では、情報処理装置101のCPU501は、仮想オブジェクト管理モジュール623を用いて、カーソルオブジェクト901に子要素のObjXがあるか否かを判定する。つまり、第1のボタン402の押下が終了したため、ObjXをカーソルオブジェクト901から切り離さなければならない。そこで、ステップS819においてこのような判定を行っている。カーソルオブジェクト901に子要素があると判定された場合には、ステップS820に処理を進める。カーソルオブジェクト901に子要素がないと判定された場合には、ステップS823に処理を進める。
If it is determined in step S803 that neither the
ステップS820では、情報処理装置101のCPU501は、仮想オブジェクト管理モジュール623を用いて、前述したステップS808と同様に、カーソルオブジェクト901に追従しているObjXの仮想空間上の座標値を取得する。そして、ステップS821では、情報処理装置101のCPU501は、前述したステップS811と同様に、仮想オブジェクト管理モジュール623を用いて、カーソルオブジェクト901からObjXを切り離す。そして、ステップS822では、情報処理装置101のCPU501は、仮想オブジェクト管理モジュール623を用いて、前述したステップS812と同様に、ステップS820で取得した座標値をObjXの座標値に代入する。こうすることで、ObjXの追従動作を終了する。
In step S820, the
ステップS823では、情報処理装置101のCPU501は、仮想オブジェクト管理モジュール623を用いて、第1のボタン押下中フラグを「0」にする。つまり、第1のボタン押下中フラグを初期化する。
In step S823, the
以上のようにすることで、ユーザからマウス401を通じて操作された仮想オブジェクトで仮想空間を生成し、前述したステップS713以降の処理に備える。
As described above, a virtual space is generated with the virtual object operated by the user through the
このように、ユーザから操作された仮想空間上の3次元モデルが当該3次元モデルとは異なる3次元モデルと接触した場合に、ユーザから操作された3次元モデルを停止することが可能となるので、よりリアルな動作を提示できる効果を奏する。 As described above, when the 3D model in the virtual space operated by the user comes into contact with a 3D model different from the 3D model, the 3D model operated by the user can be stopped. The effect which can show more realistic operation is produced.
本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、1つの機器からなる装置に適用してもよい。 The present invention can be implemented as a system, apparatus, method, program, storage medium, or the like, and can be applied to a system including a plurality of devices. You may apply to the apparatus which consists of one apparatus.
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システム或いは装置に直接、或いは遠隔から供給するものを含む。そして、そのシステム或いは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合も本発明に含まれる。 Note that the present invention includes a software program that implements the functions of the above-described embodiments directly or remotely from a system or apparatus. The present invention also includes a case where the system or the computer of the apparatus is achieved by reading and executing the supplied program code.
したがって、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。 Accordingly, since the functions of the present invention are implemented by computer, the program code installed in the computer also implements the present invention. In other words, the present invention includes a computer program itself for realizing the functional processing of the present invention.
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であってもよい。 In that case, as long as it has the function of a program, it may be in the form of object code, a program executed by an interpreter, script data supplied to the OS, and the like.
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RWなどがある。また、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などもある。 Examples of the recording medium for supplying the program include a flexible disk, hard disk, optical disk, magneto-optical disk, MO, CD-ROM, CD-R, and CD-RW. In addition, there are magnetic tape, nonvolatile memory card, ROM, DVD (DVD-ROM, DVD-R), and the like.
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、前記ホームページから本発明のコンピュータプログラムそのもの、若しくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。 As another program supply method, a browser on a client computer is used to connect to an Internet home page. The computer program itself of the present invention or a compressed file including an automatic installation function can be downloaded from the homepage by downloading it to a recording medium such as a hard disk.
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。 It can also be realized by dividing the program code constituting the program of the present invention into a plurality of files and downloading each file from a different homepage. That is, a WWW server that allows a plurality of users to download a program file for realizing the functional processing of the present invention on a computer is also included in the present invention.
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、ダウンロードした鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。 In addition, the program of the present invention is encrypted, stored in a storage medium such as a CD-ROM, distributed to users, and key information for decryption is downloaded from a homepage via the Internet to users who have cleared predetermined conditions. Let It is also possible to execute the encrypted program by using the downloaded key information and install the program on a computer.
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。 Further, the functions of the above-described embodiments are realized by the computer executing the read program. In addition, based on the instructions of the program, an OS or the like running on the computer performs part or all of the actual processing, and the functions of the above-described embodiments can also be realized by the processing.
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。 Further, the program read from the recording medium is written in a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer. Thereafter, the CPU of the function expansion board or function expansion unit performs part or all of the actual processing based on the instructions of the program, and the functions of the above-described embodiments are realized by the processing.
なお、前述した実施形態は、本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。 Note that the above-described embodiments are merely examples of implementation in carrying out the present invention, and the technical scope of the present invention should not be construed in a limited manner. That is, the present invention can be implemented in various forms without departing from the technical idea or the main features thereof.
100 MRシステム
101 情報処理装置
102 HMD
103 マーカー
201 トランスミッター
202 レシーバ
301 赤外線カメラ
302 オプティカルマーカー
401 マウス
501 CPU
502 ROM
503 RAM
504 システムバス
505 入力コントローラ
506 ビデオコントローラ
507 メモリコントローラ
508 通信I/Fコントローラ
509 入力デバイス
510 ディスプレイ
511 外部メモリ
521 右目ビデオカメラ
522 左目ビデオカメラ
523 右目ディスプレイ
524 左目ディスプレイ
525 コントローラ
100
103
502 ROM
503 RAM
504
Claims (9)
前記現実空間画像の入力を受け付ける現実空間画像入力受付手段と、
前記複合現実画像を提示するユーザの位置及び姿勢の入力を受け付ける位置姿勢入力受付手段と、
ユーザからの第1の指示に応じて、仮想空間に配置された3次元モデルが、前記現実空間においてユーザが保持する物体の動きに追従するように設定する設定手段と、
前記設定手段で設定された3次元モデルを、前記物体の動きに追従するように移動させる3次元モデル移動手段と、
前記3次元モデル移動手段で移動された3次元モデルを含む仮想空間を、前記位置姿勢入力受付手段で入力を受け付けた位置及び姿勢の少なくとも一方に基づいて撮像することにより、前記仮想空間画像を生成する仮想空間画像生成手段と、
前記現実空間画像入力受付手段で入力を受け付けた現実空間画像に、前記仮想空間画像生成手段で生成された仮想空間画像を重畳し、前記複合現実画像を生成する複合現実画像生成手段と
を備え、
前記設定手段は、前記物体の動きに追従して移動させた3次元モデルが、当該3次元モデルとは異なる3次元モデルと接触した場合に、当該設定手段で設定された前記物体の動きに追従する設定を解除し、
前記3次元モデル移動手段は、前記設定手段で前記物体の動きに追従する設定が解除されたことに応じて、移動させた3次元モデルを、前記ユーザが保持する物体の動きに追従させず、当該3次元モデルとは異なる3次元モデルと接触した位置で停止することを特徴とする情報処理装置。 An information processing apparatus for presenting to a user a mixed reality image in which a virtual space image that is an image obtained by imaging a virtual space is superimposed on a real space image that is an image obtained by imaging a real space,
A real space image input receiving means for receiving an input of the real space image;
Position and orientation input accepting means for accepting input of the position and orientation of the user presenting the mixed reality image;
A setting unit configured to set the three-dimensional model arranged in the virtual space to follow the movement of the object held by the user in the real space in response to a first instruction from the user;
3D model set by the setting means, and a three-dimensional model moving means for moving so as to follow the movement of the object,
The virtual space image is generated by imaging the virtual space including the three-dimensional model moved by the three-dimensional model moving unit based on at least one of the position and the posture received by the position and posture input receiving unit. Virtual space image generation means for
Mixed reality image generating means for generating the mixed reality image by superimposing the virtual space image generated by the virtual space image generating means on the real space image received by the real space image input receiving means;
The setting means follows the movement of the object set by the setting means when a three-dimensional model moved following the movement of the object contacts a three-dimensional model different from the three-dimensional model. Cancel the setting to
The three-dimensional model moving unit does not cause the moved three-dimensional model to follow the movement of the object held by the user in response to the setting of the setting unit canceling the setting of following the movement of the object. the information processing apparatus which is characterized in that stop at a position come in contact with different three-dimensional model with the three-dimensional model.
前記3次元モデル移動手段は、前記第1の指示とは異なる第2の指示を検知した場合には、前記3次元モデル移動手段で移動を停止させた3次元モデルを前記物体の位置に移動させると共に、前記物体の動きに追従するように移動を再開させることを特徴とする請求項1に記載の情報処理装置。 When the setting means detects a second instruction different from the first instruction, the setting means again causes the three-dimensional model stopped by the three-dimensional model moving means to follow the movement of the object. Set,
The three-dimensional model moving means moves said when examined knowledge of different second instruction from the first instruction, the 3D model obtained by stopping the movement in the three-dimensional model moving means to a position of the object It causes the information processing apparatus according to claim 1, characterized in that makes resume movement to follow the movement of the object.
前記位置姿勢入力受付手段は、前記入力デバイスの位置及び姿勢の入力を更に受け付け、
前記3次元モデル移動手段は、前記位置姿勢入力受付手段で入力を受け付けた前記入力デバイスの位置及び姿勢に基づいて特定される3次元モデルを移動させることを特徴とする請求項1または2に記載の情報処理装置。 The object is an input device that is communicably connected to the information processing apparatus,
Wherein the position and orientation input accepting unit further accepts an input of the position and orientation of the entering force device,
The three-dimensional model moving means according to claim 1 and feature a user to move the three-dimensional model which is specified based on the position and orientation of the input device, the input of which is accepted by the position and orientation input receiving means or 2. The information processing apparatus according to 2.
前記現実空間画像入力受付手段は、前記ヘッドマウントディスプレイで撮像された前記現実空間画像の入力を受け付け、
前記情報処理装置は、
前記複合現実画像生成手段で生成された複合現実画像を前記ヘッドマウントディスプレイに送信する複合現実画像送信手段を更に備え、
前記ヘッドマウントディスプレイは、
前記情報処理装置から送信された複合現実画像を表示する表示手段を備えることを特徴とする請求項1乃至6のいずれか1項に記載の情報処理装置。 The information processing apparatus is communicably connected to a head mounted display capable of imaging a real space,
The real space image input receiving means receives the input of the real space image captured by the head mounted display,
The information processing apparatus includes:
A mixed reality image transmitting means for transmitting the mixed reality image generated by the mixed reality image generating means to the head mounted display;
The head mounted display is
The information processing apparatus according to claim 1, further comprising display means for displaying a mixed reality image transmitted from the information processing apparatus.
前記情報処理装置の現実空間画像入力受付手段が、前記現実空間画像の入力を受け付ける現実空間画像入力受付ステップと、
前記情報処理装置の位置姿勢入力受付手段が、前記複合現実画像を提示するユーザの位置及び姿勢の入力を受け付ける位置姿勢入力受付ステップと、
前記情報処理装置の設定手段が、ユーザからの指示に応じて、仮想空間に配置された3次元モデルが、前記現実空間においてユーザが保持する物体の動きに追従するように設定する設定ステップと、
前記情報処理装置の3次元モデル移動手段が、前記設定ステップで設定された3次元モデルを、前記物体の動きに追従するように移動させる3次元モデル移動ステップと、
前記情報処理装置の仮想空間画像生成手段が、前記3次元モデル移動ステップで移動された3次元モデルを含む仮想空間を、前記位置姿勢入力受付ステップで入力を受け付けた位置及び姿勢の少なくとも一方に基づいて撮像することにより、前記仮想空間画像を生成する仮想空間画像生成ステップと、
前記情報処理装置の複合現実画像生成手段が、前記現実空間画像入力受付ステップで入力を受け付けた現実空間画像に、前記仮想空間画像生成ステップで生成された仮想空間画像を重畳し、前記複合現実画像を生成する複合現実画像生成ステップと
を備え、
前記設定ステップは、前記物体の動きに追従して移動させた3次元モデルが、当該3次元モデルとは異なる3次元モデルと接触した場合に、当該設定ステップで設定された前記物体の動きに追従する設定を解除し、
前記3次元モデル移動ステップは、前記設定ステップで前記物体の動きに追従する設定が解除されたことに応じて、移動させた3次元モデルを、前記ユーザが保持する物体の動きに追従させず、当該3次元モデルとは異なる3次元モデルと接触した位置で停止することを特徴とする情報処理装置の制御方法。 A control method of an information processing apparatus for presenting a mixed reality image in which a virtual space image that is an image obtained by imaging a virtual space is superimposed on a real space image that is an image obtained by imaging a real space to a user,
A real space image input receiving unit of the information processing apparatus for receiving an input of the real space image;
A position / orientation input receiving step in which a position / orientation input receiving unit of the information processing apparatus receives an input of a position and posture of a user presenting the mixed reality image;
A setting step in which the setting unit of the information processing apparatus sets the three-dimensional model arranged in the virtual space to follow the movement of the object held by the user in the real space in accordance with an instruction from the user;
3D model moving means of the information processing apparatus, a three-dimensional model that has been set in the setting step, the three-dimensional model moving step of moving so as to follow the movement of the object,
The virtual space image generation means of the information processing apparatus is based on at least one of the position and the posture of the virtual space including the three-dimensional model moved in the three-dimensional model moving step. A virtual space image generation step of generating the virtual space image by imaging
The mixed reality image generating means of the information processing apparatus superimposes the virtual space image generated in the virtual space image generating step on the real space image received in the real space image input receiving step, and the mixed reality image A mixed reality image generation step for generating
The setting step follows the movement of the object set in the setting step when a three-dimensional model moved following the movement of the object contacts a three-dimensional model different from the three-dimensional model. Cancel the setting to
The three-dimensional model moving step does not cause the moved three-dimensional model to follow the movement of the object held by the user in response to the cancellation of the setting to follow the movement of the object in the setting step. the control method of an information processing apparatus, characterized in that the stop at a position come in contact with different three-dimensional model with the three-dimensional model.
前記情報処理装置を、
前記現実空間画像の入力を受け付ける現実空間画像入力受付手段と、
前記複合現実画像を提示するユーザの位置及び姿勢の入力を受け付ける位置姿勢入力受付手段と、
ユーザからの指示に応じて、仮想空間に配置された3次元モデルが、前記現実空間においてユーザが保持する物体の動きに追従するように設定する設定手段と、
前記設定手段で設定された3次元モデルを、前記物体の動きに追従するように移動させる3次元モデル移動手段と、
前記3次元モデル移動手段で移動された3次元モデルを含む仮想空間を、前記位置姿勢入力受付手段で入力を受け付けた位置及び姿勢の少なくとも一方に基づいて撮像することにより、前記仮想空間画像を生成する仮想空間画像生成手段と、
前記現実空間画像入力受付手段で入力を受け付けた現実空間画像に、前記仮想空間画像生成手段で生成された仮想空間画像を重畳し、前記複合現実画像を生成する複合現実画像生成手段
として機能させ、
前記設定手段は、前記物体の動きに追従して移動させた3次元モデルが、当該3次元モデルとは異なる3次元モデルと接触した場合に、当該設定手段で設定された前記物体の動きに追従する設定を解除し、
前記3次元モデル移動手段は、前記設定手段で前記物体の動きに追従する設定が解除されたことに応じて、移動させた3次元モデルを、前記ユーザが保持する物体の動きに追従させず、当該3次元モデルとは異なる3次元モデルと接触した位置で停止することを特徴とするプログラム。
An information processing apparatus control method for presenting to a user a mixed reality image obtained by superimposing a virtual space image, which is an image obtained by imaging a virtual space, on a real space image, which is an image obtained by imaging the real space, is executable. A program,
The information processing apparatus;
A real space image input receiving means for receiving an input of the real space image;
Position and orientation input accepting means for accepting input of the position and orientation of the user presenting the mixed reality image;
A setting unit configured to set a three-dimensional model arranged in the virtual space to follow the movement of the object held by the user in the real space in response to an instruction from the user;
3D model set by the setting means, and a three-dimensional model moving means for moving so as to follow the movement of the object,
The virtual space image is generated by imaging the virtual space including the three-dimensional model moved by the three-dimensional model moving unit based on at least one of the position and the posture received by the position and posture input receiving unit. Virtual space image generation means for
Superimposing the virtual space image generated by the virtual space image generation means on the real space image received by the real space image input reception means, and functioning as a mixed reality image generation means for generating the mixed reality image;
The setting means follows the movement of the object set by the setting means when a three-dimensional model moved following the movement of the object contacts a three-dimensional model different from the three-dimensional model. Cancel the setting to
The three-dimensional model moving unit does not cause the moved three-dimensional model to follow the movement of the object held by the user in response to the setting of the setting unit canceling the setting of following the movement of the object. a program characterized by stop at a position come in contact with different three-dimensional model with the three-dimensional model.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2013178715A JP5874698B2 (en) | 2013-08-29 | 2013-08-29 | Information processing apparatus, control method thereof, and program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2013178715A JP5874698B2 (en) | 2013-08-29 | 2013-08-29 | Information processing apparatus, control method thereof, and program |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2015049548A JP2015049548A (en) | 2015-03-16 |
| JP5874698B2 true JP5874698B2 (en) | 2016-03-02 |
Family
ID=52699560
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2013178715A Expired - Fee Related JP5874698B2 (en) | 2013-08-29 | 2013-08-29 | Information processing apparatus, control method thereof, and program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP5874698B2 (en) |
Families Citing this family (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP6362631B2 (en) * | 2016-01-15 | 2018-07-25 | 株式会社meleap | Image display system, image display system control method, image distribution system, and head-mounted display |
| WO2020059277A1 (en) * | 2018-09-20 | 2020-03-26 | 富士フイルム株式会社 | Information processing device, information processing system, information processing method, and program |
| JP2020187778A (en) * | 2020-07-15 | 2020-11-19 | キヤノンマーケティングジャパン株式会社 | Information processing device, information processing system, control method therefor, and program |
| JP7694549B2 (en) * | 2022-12-14 | 2025-06-18 | 株式会社デンソー | Processing system, processing method, and processing program |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0520403A (en) * | 1991-07-10 | 1993-01-29 | Sanyo Electric Co Ltd | Automatic interference check system |
| JP3148489B2 (en) * | 1993-12-14 | 2001-03-19 | 松下電器産業株式会社 | 3D object placement device |
| JP3378726B2 (en) * | 1996-05-24 | 2003-02-17 | 富士通株式会社 | Machine design / manufacturing process support device |
| JP2006343954A (en) * | 2005-06-08 | 2006-12-21 | Canon Inc | Image processing method and image processing apparatus |
-
2013
- 2013-08-29 JP JP2013178715A patent/JP5874698B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2015049548A (en) | 2015-03-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11557134B2 (en) | Methods and systems for training an object detection algorithm using synthetic images | |
| EP3619599B1 (en) | Virtual content displayed with shared anchor | |
| EP3345073B1 (en) | Localizing devices in an augmented reality environment | |
| KR101927150B1 (en) | 3d display apparatus and method for providing user interface | |
| JP5843340B2 (en) | 3D environment sharing system and 3D environment sharing method | |
| JP2020024752A (en) | Information processing apparatus, control method therefor, and program | |
| JP2015125641A (en) | Information processing device, control method therefor, and program | |
| US11288871B2 (en) | Web-based remote assistance system with context and content-aware 3D hand gesture visualization | |
| JP2016122392A (en) | Information processing apparatus, information processing system, control method and program of the same | |
| JP2017120650A (en) | Information processing system, control method thereof, program, information processor, control method thereof, and program | |
| US20150138301A1 (en) | Apparatus and method for generating telepresence | |
| JP6070676B2 (en) | Information processing apparatus, information processing system, control method thereof, and program | |
| JP5874698B2 (en) | Information processing apparatus, control method thereof, and program | |
| JP2018142230A (en) | Information processor, information processing system, information processing method, and program | |
| JP6357412B2 (en) | Information processing apparatus, information processing system, information processing method, and program | |
| JP6164177B2 (en) | Information processing apparatus, information processing system, control method thereof, and program | |
| JP2016115230A (en) | Information processing apparatus, information processing system, control method thereof, and program | |
| JP7279113B2 (en) | IMAGE PROCESSING APPARATUS, IMAGE PROCESSING METHOD, COMPUTER PROGRAM | |
| JP6011567B2 (en) | Information processing apparatus, control method thereof, and program | |
| JP6152888B2 (en) | Information processing apparatus, control method and program thereof, and information processing system, control method and program thereof | |
| US20210263308A1 (en) | Apparatus configured to display shared information on plurality of display apparatuses and method thereof | |
| US12477040B2 (en) | Systems, methods, and media for controlling shared extended reality presentations | |
| JP6372131B2 (en) | Information processing apparatus, control method thereof, and program | |
| JP2017084215A (en) | Information processing system, control method thereof, and program | |
| GB2639137A (en) | Electronic device |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20150410 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150925 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150929 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20151130 |
|
| 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: 20151222 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160104 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 5874698 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| LAPS | Cancellation because of no payment of annual fees |