JP2020187778A - Information processing device, information processing system, control method therefor, and program - Google Patents

Information processing device, information processing system, control method therefor, and program Download PDF

Info

Publication number
JP2020187778A
JP2020187778A JP2020121313A JP2020121313A JP2020187778A JP 2020187778 A JP2020187778 A JP 2020187778A JP 2020121313 A JP2020121313 A JP 2020121313A JP 2020121313 A JP2020121313 A JP 2020121313A JP 2020187778 A JP2020187778 A JP 2020187778A
Authority
JP
Japan
Prior art keywords
model
real object
orientation
contact
determined
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.)
Pending
Application number
JP2020121313A
Other languages
Japanese (ja)
Other versions
JP2020187778A5 (en
Inventor
伸敏 難波
Nobutoshi Namba
伸敏 難波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Marketing Japan Inc
Canon IT Solutions Inc
Original Assignee
Canon Marketing Japan Inc
Canon IT Solutions Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Marketing Japan Inc, Canon IT Solutions Inc filed Critical Canon Marketing Japan Inc
Priority to JP2020121313A priority Critical patent/JP2020187778A/en
Publication of JP2020187778A publication Critical patent/JP2020187778A/en
Publication of JP2020187778A5 publication Critical patent/JP2020187778A5/ja
Pending legal-status Critical Current

Links

Images

Abstract

To provide an information processing device for easily confirming result of verification of a work space on a design object that is displayed by using mixed reality (MR), and a system, a control method, and a program.SOLUTION: Confirmation processing includes the steps of: storing a position-posture of a three-dimensional model; storing a first model to be a work object and a second model indicating a tool for performing work on the first model in correlation to each other; detecting a real object; determining whether a position of the detected real object and a position of the first model are within prescribed distance; specifying the second model that corresponds to the first model when it is determined that both positions are within the prescribed distance; determining a spatial position-posture of the second model in accordance with the position-posture of the real object; determining, when it is detected that the real object made a prescribed motion, whether the second model whose position-posture was determined has contacted another three-dimensional model in accordance with the real object having made the prescribed motion or the position-posture of the real object; and when it is determined that the second model has contacted, controlling so as to display information indicating the fact of contact on a display screen.SELECTED DRAWING: Figure 5

Description

本発明は、情報処理装置、情報処理システム、その制御方法及びプログラムに関する。 The present invention relates to an information processing device, an information processing system, a control method and a program thereof.

近年、複合現実(Mixed Reality/以下、MRと記載)の技術が普及している。MR技術を用いて、ヘッドマウントディスプレイ(以下、HMDと記載)を装着したユーザに対し、現実物体とCGモデルを配置した空間の疑似体験を提供できる。MR空間(現実空間と仮想空間とを合成した複合現実空間)を生成するにあたり、仮想空間を現実空間の位置合わせに用いられる位置指標として、マーカを用いる場合がある。 In recent years, mixed reality (hereinafter referred to as MR) technology has become widespread. MR technology can be used to provide a user wearing a head-mounted display (hereinafter referred to as HMD) with a simulated experience of a space in which a real object and a CG model are arranged. In generating MR space (mixed reality space in which real space and virtual space are combined), a marker may be used as a position index used for alignment of virtual space in real space.

特許文献1には、当該マーカの存在をユーザに意識させないために、マーカを検出した場合に、当該マーカを隠した画像を描画する技術が記載されている。また、特許文献2では、光学センサを用いてHMDの位置姿勢を検出する技術について記載されている。 Patent Document 1 describes a technique for drawing an image in which the marker is hidden when the marker is detected so that the user is not aware of the existence of the marker. Further, Patent Document 2 describes a technique for detecting the position and orientation of the HMD using an optical sensor.

MRの技術はしばしば、製品のデザイン検証や、工事・作業現場での作業のシミュレーション等を、HMDの装着者にリアルに体験、視認させるために用いられる。 MR technology is often used to allow HMD wearers to experience and visually recognize product design verification, construction / work site work simulation, and so on.

特開2000−350860号公報Japanese Unexamined Patent Publication No. 2000-350860 特開2006−301924号公報Japanese Unexamined Patent Publication No. 2006-301924 特開平08−185431号公報Japanese Unexamined Patent Publication No. 08-185431

製品の形状設計にあたり、設計対象物の中において作業者が部品を組み立てたり作業したりするスペースが必要になることがある。例えば特許文献3では、これらの作業スペースが十分に確保されているかを検討するために、工具や手の形状データを予め複数用意しておき、装置上で手動で選択された部品に対応する工具の大きさ、部品の取り付け方向を特定して、画面上に工具の画像やその動きを表示し、作業スペースが十分か確認させることが行われている。 When designing the shape of a product, it may be necessary for a worker to have a space for assembling and working on parts in the design object. For example, in Patent Document 3, in order to examine whether these work spaces are sufficiently secured, a plurality of tool and hand shape data are prepared in advance, and a tool corresponding to a part manually selected on the apparatus is provided. The size of the tool and the mounting direction of the parts are specified, and the image of the tool and its movement are displayed on the screen to confirm whether the work space is sufficient.

一方、実際の設計現場においては、設計者は必ずしも部品の作業方向を把握しているわけではない。よって、どの方向から工具を差し込み、どのくらい工具の振り幅があれば作業ができるか等の情報を、製品設計者やシステム設計者がシステム上に一律に記憶・設定しておいたとしても、実態と設定とに差があれば結局設計を修正しなければならない。 On the other hand, in an actual design site, the designer does not always know the working direction of the part. Therefore, even if the product designer or system designer uniformly stores and sets information on the system, such as from which direction the tool is inserted and how much the tool swing width is required for work, the actual situation is If there is a difference between the setting and the setting, the design must be modified after all.

よって、実際の現場においては、これらの作業のノウハウを持つ、部品の組立等の作業をする作業者に製品の作業スペースが十分かの検証を依頼し、検証結果をフィードバックしてもらうことが行われている。 Therefore, in the actual field, it is possible to ask a worker who has the know-how of these works to perform work such as assembling parts to verify whether the work space of the product is sufficient and to have the verification result fed back. It has been.

本発明は、MRを用いて表示した設計物上の作業スペースの検証結果を容易に確認可能にする仕組みを提供することを目的とする。 An object of the present invention is to provide a mechanism that makes it possible to easily confirm the verification result of a work space on a design object displayed by using MR.

本発明の情報処理装置は、空間上の3次元モデルの位置姿勢に基づいて現実画像と3次元モデルを重畳した複合現実画像を表示する表示装置と通信可能な、当該3次元モデルの位置姿勢を記憶する情報処理装置であって、前記3次元モデルのうち、作業対象となる第1のモデルと、当該第1のモデルに対する作業を行うための道具を示す第2のモデルを対応付けて記憶する記憶手段と、現実物体を検出する現実物体検出手段と、前記現実物体検出手段で検出された現実物体の位置と、前記第1のモデルの位置とが所定距離内にあるか判定する判定手段と、前記判定手段で、前記現実物体の位置と前記第1のモデルの位置とが所定距離内にあると判定された場合に、前記第1のモデルに対応する前記第2のモデルを特定する特定手段と、前記特定手段で特定された第2のモデルの空間上の位置姿勢を、前記現実物体の位置姿勢に従って決定する決定手段と、前記検出手段で検出された現実物体が所定の動きをしたことを検知する動き検知手段と、前記動き検知手段で当該現実物体が所定の動きをしたと検知した場合に、当該所定の動きをしている現実物体又は当該現実物体の位置姿勢に応じて前記決定手段で位置姿勢が決定された前記第2のモデルが、他の3次元モデルに接触したか判定する接触判定手段と、前記接触判定手段で接触したと判定された場合に、当該接触した旨を示す情報を前記表示装置の表示画面に表示すべく制御する表示制御手段と、を備えることを特徴とする。 The information processing device of the present invention can communicate with a display device that displays a composite real image in which a real image and a three-dimensional model are superimposed based on the position and orientation of the three-dimensional model in space. It is an information processing apparatus to be stored, and among the three-dimensional models, a first model to be worked on and a second model indicating a tool for performing work on the first model are stored in association with each other. A storage means, a real object detecting means for detecting a real object, a determining means for determining whether the position of the real object detected by the real object detecting means, and the position of the first model are within a predetermined distance. When the determination means determines that the position of the real object and the position of the first model are within a predetermined distance, the identification of specifying the second model corresponding to the first model. The means, the determining means for determining the position and orientation in space of the second model specified by the specific means according to the position and orientation of the real object, and the real object detected by the detecting means move in a predetermined manner. When the motion detecting means for detecting this and the motion detecting means detect that the real object has made a predetermined movement, the real object making the predetermined movement or the position / orientation of the real object is described. When it is determined that the second model whose position and orientation have been determined by the determining means has contacted the contact determining means for determining whether or not it has contacted another three-dimensional model, and the contact determining means has contacted the contact. It is characterized by including a display control means for controlling the information indicating the above to be displayed on the display screen of the display device.

本発明によれば、MRを用いて表示した設計物上の作業スペースの検証結果を容易に確認可能にする仕組みを提供することができる。 According to the present invention, it is possible to provide a mechanism that makes it possible to easily confirm the verification result of the work space on the design object displayed by using MR.

本発明の実施形態における、情報処理システムの構成の一例を示す図である。It is a figure which shows an example of the structure of the information processing system in embodiment of this invention. 本発明の実施形態における、各種装置のハードウェア構成の一例を示す図である。It is a figure which shows an example of the hardware configuration of various devices in embodiment of this invention. 本発明の実施形態における、各種装置の機能構成の一例を示す図である。It is a figure which shows an example of the functional structure of various devices in embodiment of this invention. 本発明の実施形態における、ナットに合わせたスパナのモデル表示処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the model display process of the spanner which matched with a nut in embodiment of this invention. 本発明の実施形態における、可動範囲の確認処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the confirmation process of the movable range in embodiment of this invention. 本発明の実施形態における、距離特定処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the distance specifying process in embodiment of this invention. 本発明の実施形態における、各種データ構成の一例を示す図である。It is a figure which shows an example of various data structures in embodiment of this invention. 本発明の実施形態における、現実空間と仮想空間を重ね合わせた場合のユーザ及びCGの位置の一例を示す図である。It is a figure which shows an example of the position of the user and CG when the real space and the virtual space are superposed in the embodiment of this invention. 本発明の実施形態における、可動範囲の確認表示の一例を示す図である。It is a figure which shows an example of the confirmation display of the movable range in embodiment of this invention. 本発明の実施形態における、可動範囲の確認表示の一例を示す図である。It is a figure which shows an example of the confirmation display of the movable range in embodiment of this invention. 本発明の実施形態における、距離表示の一例を示す図である。It is a figure which shows an example of the distance display in embodiment of this invention.

以下、図面を参照して、本発明の実施の形態の一例について説明する。 Hereinafter, an example of the embodiment of the present invention will be described with reference to the drawings.

まず図1を参照して、本発明の実施形態における情報処理システムの構成の一例について説明する。 First, an example of the configuration of the information processing system according to the embodiment of the present invention will be described with reference to FIG.

PC200は、ネットワーク150(例えばLAN)で、光学センサや、HMD101(ヘッドマウントディスプレイ)と通信可能に接続されている。PC200は、HMD101のカメラで撮像した現実画像に重畳する仮想物体(CG/3次元モデル)の形状、大きさ、仮想空間上の位置姿勢の情報を記憶しており、光学センサから得られるHMD101の位置姿勢を用いて、HMD101と同じ位置姿勢において同じ画角のカメラを用いて撮影した場合に得られる仮想空間の画像(仮想空間上に前述した位置姿勢で配置された仮想物体の画像)を生成して、現実画像と重畳し、複合現実画像(MR画像)を生成してHMD101に表示するべく出力する。 The PC 200 is communicably connected to an optical sensor and an HMD 101 (head-mounted display) via a network 150 (for example, LAN). The PC200 stores information on the shape, size, and position / orientation of a virtual object (CG / 3D model) superimposed on the real image captured by the camera of the HMD101, and the HMD101 obtained from the optical sensor. Using the position and orientation, generate an image of the virtual space (an image of a virtual object arranged in the above-mentioned position and orientation on the virtual space) obtained when the image is taken with a camera having the same angle of view in the same position and orientation as the HMD 101. Then, it is superimposed on the real image to generate a composite real image (MR image) and output it for display on the HMD 101.

HMD101は当該MR画像を表示画面に表示する。また光学センサは、HMD101に設置された光マーカを追跡してHMD101の現実空間上の位置姿勢を特定して、PC200に送信する。 The HMD 101 displays the MR image on the display screen. Further, the optical sensor tracks the optical marker installed in the HMD 101, identifies the position and orientation of the HMD 101 in the real space, and transmits the position and orientation to the PC 200.

また、PC200は、HMD101を装着したMRの体験者であるユーザの持つ現実物体が、所定の動きをしたか判定し、所定の動きをした場合に動きの範囲を特定して、当該動きの範囲と仮想物体とが接触しているか(当該動きによる作業のための空きスペース(空間)が十分にあるか)判定し、ユーザに通知する。例えば、図9の910に示すようなMR画像を生成してHMD101に送信する。910の詳細については図9の説明で後述する。以上が図1の説明である。 Further, the PC 200 determines whether or not a real object possessed by a user who has experienced MR wearing the HMD 101 has made a predetermined movement, specifies a range of movement when the movement has a predetermined movement, and has a range of the movement. It is determined whether the virtual object is in contact with the virtual object (whether there is sufficient free space (space) for the work due to the movement), and the user is notified. For example, an MR image as shown in 910 of FIG. 9 is generated and transmitted to the HMD 101. Details of 910 will be described later in the description of FIG. The above is the description of FIG.

次に図2を参照して、本発明の実施形態における各種装置のハードウェア構成の一例について説明する。 Next, an example of the hardware configuration of various devices according to the embodiment of the present invention will be described with reference to FIG.

CPU201は、システムバス204に接続される各デバイスやコントローラを統括的に制御する。 The CPU 201 comprehensively controls each device and controller connected to the system bus 204.

また、ROM202には、CPU201の制御プログラムであるBIOS(Basic Input / OutputSystem)やオペレーティングシステム(OS)、その他各種装置の実行する機能を実現するために必要な各種プログラムが記憶されている。 Further, the ROM 202 stores various programs necessary for realizing the functions executed by the BIOS (Basic Input / Output System), which is the control program of the CPU 201, the operating system (OS), and other various devices.

RAM203は、CPU201の主メモリ、ワークエリア等として機能する。CPU201は、処理の実行に際して必要なプログラム等をRAM203にロードして、プログラムを実行することで各種動作を実現するものである。 The RAM 203 functions as a main memory, a work area, and the like of the CPU 201. The CPU 201 realizes various operations by loading a program or the like necessary for executing a process into the RAM 203 and executing the program.

本発明のPC200が後述する各種処理を実行するために用いられる各種プログラム等は外部メモリ211に記録されており、必要に応じてRAM203にロードされることによりCPU201によって実行されるものである。さらに、本発明に係わるプログラムが用いる定義ファイルや各種情報テーブルは外部メモリ211に格納されている。 Various programs and the like used by the PC 200 of the present invention to execute various processes described later are recorded in the external memory 211, and are executed by the CPU 201 by being loaded into the RAM 203 as needed. Further, the definition file and various information tables used by the program according to the present invention are stored in the external memory 211.

入力コントローラ(入力C)205は、キーボードやマウス等のポインティングデバイス(入力デバイス210)からの入力を制御する。 The input controller (input C) 205 controls the input from a pointing device (input device 210) such as a keyboard and a mouse.

ビデオコントローラ(VC)206は、HMD101が備える右目・左目ディスプレイ222等の表示器への表示を制御する。右目・左目ディスプレイ222に対しては、例えば外部出力端子(例えば、Digital Visual Interface)を用いて出力される。また、右目・左目ディスプレイ222は、右目用のディスプレイと左目用のディスプレイとから構成されている。 The video controller (VC) 206 controls the display on the display such as the right-eye / left-eye display 222 included in the HMD 101. For the right-eye / left-eye display 222, for example, an external output terminal (for example, Digital Visual Interface) is used for output. The right-eye / left-eye display 222 is composed of a display for the right eye and a display for the left eye.

メモリコントローラ(MC)207は、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク(HD)やフレキシブルディスク(FD)或いはPCMCIAカードスロットにアダプタを介して接続されるカード型メモリ等の外部メモリ211へのアクセスを制御する。 The memory controller (MC) 207 is an adapter to a hard disk (HD), a flexible disk (FD), or a PCMCIA card slot for storing boot programs, browser software, various applications, font data, user files, edit files, various data, and the like. Controls access to an external memory 211 such as a card-type memory connected via.

通信I/Fコントローラ(通信I/FC)208は、ネットワークを介して、外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、TCP/IPを用いたインターネット通信等が可能である。また、通信I/Fコントローラ208は、ギガビットイーサネット(登録商標)等を通じて光学式センサ(光学センサ)との通信も制御する。 The communication I / F controller (communication I / FC) 208 connects and communicates with an external device via a network, and executes communication control processing on the network. For example, Internet communication using TCP / IP is possible. The communication I / F controller 208 also controls communication with an optical sensor (optical sensor) through Gigabit Ethernet (registered trademark) or the like.

汎用バス209は、HMD101の右目・左目ビデオカメラ221からの映像を取り込むために使用される。右目・左目ビデオカメラ221からは、外部入力端子(例えば、IEEE1394端子)を用いて入力される。右目・左目ビデオカメラ221は、右目用のビデオカメラと左目用のビデオカメラとから構成されている。 The general-purpose bus 209 is used to capture images from the right-eye / left-eye video camera 221 of the HMD 101. Input is performed from the right-eye / left-eye video camera 221 using an external input terminal (for example, an IEEE1394 terminal). The right-eye / left-eye video camera 221 is composed of a video camera for the right eye and a video camera for the left eye.

尚、CPU201は、例えばRAM203内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、ディスプレイ上での表示を可能としている。また、CPU201は、ディスプレイ上の不図示のマウスカーソル等でのユーザ指示を可能とする。以上が図2の説明である。 The CPU 201 can display the outline font on the display by executing the outline font expansion (rasterization) process on the display information area in the RAM 203, for example. Further, the CPU 201 enables a user instruction with a mouse cursor or the like (not shown) on the display. The above is the description of FIG.

次に図3を参照して、本発明の実施形態における、各種装置の機能構成について説明する。 Next, with reference to FIG. 3, the functional configurations of various devices according to the embodiment of the present invention will be described.

撮像部311は、現実画像を撮像する撮像部(カメラ)である。撮像画像送信部312は、撮像した現実画像をPC200に送信する送信部である。 The image pickup unit 311 is an image pickup unit (camera) that captures a real image. The captured image transmission unit 312 is a transmission unit that transmits the captured real image to the PC 200.

撮像画像記憶部321は、HMD101から受信した現実画像(撮像画像)を記憶する記憶部である。HMD位置姿勢記憶部322は、HMD101の位置姿勢を記憶する記憶部である。例えば光学センサからHMD101の位置姿勢を取得して記憶する。 The captured image storage unit 321 is a storage unit that stores a real image (captured image) received from the HMD 101. The HMD position / posture storage unit 322 is a storage unit that stores the position / posture of the HMD 101. For example, the position and orientation of the HMD 101 are acquired from an optical sensor and stored.

モデル情報記憶部323は、3次元モデルの位置姿勢を記憶する記憶部である。例えば図7の説明で後述するモデル情報720を記憶する。MR画像生成部324は、HMD101の位置姿勢と、3次元モデルの位置姿勢とを用いて、HMD101の位置から見た現実画像とHMD101の位置から見た3次元モデルの画像とを重畳したMR画像(複合現実画像)を生成する生成部である。MR画像送信部325は、MR画像をHMD101に送信する送信部(表示制御部)である。 The model information storage unit 323 is a storage unit that stores the position and orientation of the three-dimensional model. For example, the model information 720 described later in the description of FIG. 7 is stored. The MR image generation unit 324 uses the position and orientation of the HMD 101 and the position and orientation of the three-dimensional model to superimpose the actual image viewed from the position of the HMD 101 and the image of the three-dimensional model viewed from the position of the HMD 101. It is a generation unit that generates (composite reality image). The MR image transmission unit 325 is a transmission unit (display control unit) that transmits an MR image to the HMD 101.

MR画像受信部313は、MR画像を受信する受信部であり、MR画像表示部314は、受信したMR画像を表示する表示部である。 The MR image receiving unit 313 is a receiving unit that receives an MR image, and the MR image display unit 314 is a display unit that displays the received MR image.

現実物体検出部326は、現実物体を検出して、検出した現実物体の位置姿勢を特定して記憶部に記憶する処理部である。現実物体とは、例えば2次元マーカの貼りつけられた物体(例:図8の801)である。PC200のCPU201は、現実画像の中にある2次元マーカの画像から特定される2次元マーカの識別情報、形状、大きさ、角度、HMD101の位置姿勢の情報から、当該2次元マーカの貼り付けられた現実物体の位置姿勢を特定する。 The real object detection unit 326 is a processing unit that detects a real object, identifies the position and orientation of the detected real object, and stores it in the storage unit. The real object is, for example, an object to which a two-dimensional marker is attached (example: 801 in FIG. 8). The CPU 201 of the PC 200 is pasted with the two-dimensional marker based on the identification information, shape, size, angle, and position / orientation information of the two-dimensional marker specified from the image of the two-dimensional marker in the real image. Identify the position and orientation of the actual object.

マーカの形状は問わないが、例えば正方形であり、全て同じサイズであるものとする。各マーカにはユニークなマーカ番号が埋め込まれているものとする。そして、HMD101に設けられたカメラで撮像した際に、個々のマーカが識別でき、デコードした際に、そのマーカ番号が得られるものとする。撮像した画像中の位置検出用マーカそれぞれのサイズから、HMD101からそれぞれのマーカまでの距離を求める。(3つのマーカから求めた3つの距離が重なる位置がHMD101の位置である。)なお、マーカの法線方向に視点があるとき、そのマーカ画像が正方形に見えることになる。そして、視点が法線方向からずれると、そのずれの度合いに応じて正方形が歪んで見える。つまり、この歪みから、視点の軸に対するマーカで規定される平面の向きが判明し、マーカのサイズから視点とマーカ間の距離を検出でき、マーカが貼り付けられた平面が規定できる。また、実施形態では、マーカには、互いに識別できる2つの印が設けられ、マーカの中心位置を原点とし、マーカで規定される上記の平面上の、原点からその印に向かう2つのベクトルを2軸、マーカの中心位置から法線方向の1軸で、局所的(ローカル)な3次元座標を規定する3軸を規定しているものとする。 The shape of the markers does not matter, but for example, they are square and all have the same size. It is assumed that a unique marker number is embedded in each marker. Then, it is assumed that each marker can be identified when the image is taken by the camera provided in the HMD 101, and the marker number is obtained when the marker is decoded. The distance from the HMD 101 to each marker is obtained from the size of each position detection marker in the captured image. (The position where the three distances obtained from the three markers overlap is the position of the HMD 101.) When the viewpoint is in the normal direction of the markers, the marker image looks like a square. Then, when the viewpoint deviates from the normal direction, the square appears distorted according to the degree of the deviation. That is, from this distortion, the orientation of the plane defined by the marker with respect to the axis of the viewpoint can be found, the distance between the viewpoint and the marker can be detected from the size of the marker, and the plane to which the marker is attached can be defined. Further, in the embodiment, the markers are provided with two marks that can be distinguished from each other, the center position of the markers is set as the origin, and two vectors from the origin to the marks on the above plane defined by the markers are set to 2. It is assumed that one axis in the normal direction from the center position of the axis and the marker defines three axes that define local (local) three-dimensional coordinates.

距離判定部327は、現実物体と、所定の3次元モデルとの距離が所定距離以内か判定する判定部である。例えば、ナットのモデルの位置と、ユーザが手に持つ現実物体801(ターゲット801)との距離が所定距離以内か判定する。当該所定距離の情報(例えば所定距離740)はPC200の外部メモリに予め記憶されているものとする。 The distance determination unit 327 is a determination unit that determines whether the distance between the real object and the predetermined three-dimensional model is within the predetermined distance. For example, it is determined whether the distance between the position of the nut model and the real object 801 (target 801) held by the user is within a predetermined distance. It is assumed that the information of the predetermined distance (for example, the predetermined distance 740) is stored in advance in the external memory of the PC 200.

工具モデル特定部328は、ナットのモデルと現実物体が所定距離以内にあると判定された場合に、当該ナットの種類を特定して、特定したナットの種類に対応する工具の3次元モデルを特定する特定部である。 When it is determined that the nut model and the actual object are within a predetermined distance, the tool model specifying unit 328 specifies the type of the nut and specifies the three-dimensional model of the tool corresponding to the specified nut type. It is a specific part to do.

可動範囲判定部329は、工具モデル特定部328でナットに対応する工具として特定され、現実物体に重畳して配置・表示された工具の3次元モデル(工具モデル)の可動範囲が十分にあるか判定する判定部である。具体的には、ユーザがナットのモデルと所定距離内に現実物体を位置させたまま、所定の動きを検知した場合に(例えば予めPC200の外部メモリに記憶されているナットを締める動作とモーションの値が所定範囲内の動作/ナットを締める動作と判定される動作を検知した場合に)、ナットの位置・方向を軸とした当該工具モデルの可動の範囲を示すモデルが、他の3次元モデルと接触することを示しているか判定する。 The movable range determination unit 329 is specified as a tool corresponding to the nut by the tool model specifying unit 328, and is the movable range of the three-dimensional model (tool model) of the tool arranged and displayed superimposed on the real object is sufficient? It is a judgment unit for judging. Specifically, when the user detects a predetermined movement while keeping the real object positioned within a predetermined distance from the nut model (for example, the operation and motion of tightening the nut stored in the external memory of the PC200 in advance). Another 3D model is a model that shows the range of movement of the tool model centered on the position and direction of the nut (when an operation whose value is determined to be within a predetermined range / operation of tightening the nut is detected). Determine if it indicates contact with.

通知部330は、工具モデルの可動範囲が十分でないと判定された場合に、当該工具モデルの可動範囲が十分でない旨をユーザに通知する通知部である。例えば、図9の910のように、工具モデルを稼動させた場合に他の3次元モデルに接触する旨を示すMR画像を生成して、HMD101に送信して表示させる表示制御部である。以上が図3の説明である。 The notification unit 330 is a notification unit that notifies the user that the movable range of the tool model is not sufficient when it is determined that the movable range of the tool model is not sufficient. For example, as shown in 910 of FIG. 9, it is a display control unit that generates an MR image indicating that the tool model is in contact with another three-dimensional model when the tool model is operated, and transmits the MR image to the HMD 101 for display. The above is the description of FIG.

次に図4を参照して、本発明の実施形態における、ナットに合わせたスパナのモデル表示処理の流れについて説明する。図4は、所定のモデルに対応する工具モデルの特定、配置、表示処理の流れを示すフローチャートである。PC200のCPU201は、ステップS401〜S408の処理を、HMD101及びPC200が起動してから、PC200の不図示のMR画像表示開始・終了指示受付画面において、MR画像の生成・表示の終了操作を受け付けるまで繰り返し実行する。 Next, with reference to FIG. 4, the flow of the model display processing of the spanner according to the nut in the embodiment of the present invention will be described. FIG. 4 is a flowchart showing a flow of identification, arrangement, and display processing of a tool model corresponding to a predetermined model. The CPU 201 of the PC 200 performs the processes of steps S401 to S408 from the start of the HMD 101 and the PC 200 to the reception of the MR image generation / display end operation on the MR image display start / end instruction reception screen (not shown) of the PC 200. Execute repeatedly.

PC200のCPU201は、光学センサからHMD101の位置姿勢の情報を取得して、外部メモリに記憶する(ステップS401)。具体的には、図7のHMD情報700に、当該位置姿勢を取得したHMD101の識別情報であるHMD ID701、当該HMD101の現実空間上の位置702、姿勢703を記憶する(ステップS402)。 The CPU 201 of the PC 200 acquires the position / orientation information of the HMD 101 from the optical sensor and stores it in the external memory (step S401). Specifically, the HMD information 700 of FIG. 7 stores the HMD ID 701, which is the identification information of the HMD 101 that has acquired the position / orientation, the position 702 of the HMD 101 in the real space, and the attitude 703 (step S402).

PC200のCPU201は、HMD101のカメラで撮像された現実画像を取得してメモリ上に記憶する。そして、当該現実画像中の2次元マーカを検出することにより検出された現実物体の位置姿勢を特定し、記憶する(ステップS403)。例えば、図7のマーカ情報710における、現実画像中から検出したマーカの位置姿勢を位置713、姿勢714に上書き・更新する。尚、マーカID711は2次元マーカの識別情報であり、大きさ712は2次元マーカの大きさ(サイズ)を示す。マーカID711、大きさ712は予めPC200の外部メモリに記憶されているものとする。 The CPU 201 of the PC 200 acquires a real image captured by the camera of the HMD 101 and stores it in the memory. Then, the position and orientation of the detected real object is specified and stored by detecting the two-dimensional marker in the real image (step S403). For example, in the marker information 710 of FIG. 7, the position / orientation of the marker detected in the real image is overwritten / updated to the position 713 and the attitude 714. The marker ID 711 is the identification information of the two-dimensional marker, and the size 712 indicates the size (size) of the two-dimensional marker. It is assumed that the marker ID 711 and the size 712 are stored in the external memory of the PC 200 in advance.

また、PC200のCPU201は、ステップS403で検出した2次元マーカ(2次元マーカの貼付された現実物体)の検出中フラグ715を1に更新する。検出中フラグ715は、当該フラグに対応するマーカが検出中か否かを示すフラグであり、検出中フラグ715=1の場合には検出中であり、検出中フラグ715=0の場合には検出していない状態であることを示す。 Further, the CPU 201 of the PC 200 updates the detecting flag 715 of the two-dimensional marker (a real object to which the two-dimensional marker is attached) detected in step S403 to 1. The detecting flag 715 is a flag indicating whether or not the marker corresponding to the flag is being detected, is being detected when the detecting flag 715 = 1, and is detected when the detecting flag 715 = 0. Indicates that it is not in the state.

PC200のCPU201は、ステップS403で検出したターゲット801(図8:2次元マーカが貼り付けられた現実物体)から所定距離内に、所定の種類の3次元モデル(例えばナットのモデル)があるか判定する(ステップS404)。図8に、現実空間と仮想空間を重ね合わせた場合のユーザ及びCGの位置の一例を示す。 The CPU 201 of the PC 200 determines whether or not there is a predetermined type of 3D model (for example, a nut model) within a predetermined distance from the target 801 (FIG. 8: a real object to which a 2D marker is attached) detected in step S403. (Step S404). FIG. 8 shows an example of the positions of the user and CG when the real space and the virtual space are superimposed.

3次元モデルの位置姿勢、種類は図7のモデル情報720、配置中モデル情報730等に記憶されている。 The position / orientation and type of the three-dimensional model are stored in the model information 720, the arranging model information 730, and the like in FIG.

図7を参照して、本発明の実施形態におけるモデル情報について説明する。 The model information in the embodiment of the present invention will be described with reference to FIG. 7.

モデル情報720は、PC200の外部メモリに予め記憶されている3次元モデルの情報である。モデル名721は3次元モデルの識別情報であるモデルのファイル名である。モデルファイルは、PC200の外部メモリ上の所定のフォルダに記憶されているものとする。種類722は、3次元モデルの種類を示す。例えば、natはモデルの種類=ナットであることを示し、spanner01はモデルの種類=スパナ(工具)、move01はモデルの種類=工具に対応する工具の可動範囲、realはモデルの種類=現実物体に重畳する現実物体と同じ形状・大きさのモデルであることを示す。なお、nat01とnat02は、ナットの中でも別の種類のナットである。 The model information 720 is information on the three-dimensional model stored in advance in the external memory of the PC 200. The model name 721 is a file name of the model which is the identification information of the three-dimensional model. It is assumed that the model file is stored in a predetermined folder on the external memory of the PC200. Type 722 indicates the type of 3D model. For example, nat indicates the model type = nut, spanner01 indicates the model type = spanner (tool), move01 indicates the model type = the movable range of the tool corresponding to the tool, and real indicates the model type = the actual object. It is shown that the model has the same shape and size as the superposed real object. Note that nat01 and nat02 are different types of nuts.

対応モデル723は、種類722に示す種類に対応するモデルの種類である。例えば、種類722=ナットであれば、対応モデル723には当該対応モデル723のナットに対応する工具(スパナ)のモデルの種類が記憶されている。種類722=スパナであれば、対応モデル723には当該種類722のスパナに対応するナットのモデル(部品のモデル/工具による作業対象のモデル)の種類が記憶されている。また、種類722=可動範囲であれば、対応モデル723には当該種類722の可動範囲に対応するスパナのモデルの種類が記憶されている。 The corresponding model 723 is a type of model corresponding to the type shown in the type 722. For example, if type 722 = nut, the corresponding model 723 stores the type of tool (spanner) corresponding to the nut of the corresponding model 723. If type 722 = spanner, the corresponding model 723 stores the type of nut model (part model / model to be worked with a tool) corresponding to the spanner of the type 722. Further, if the type 722 = movable range, the corresponding model 723 stores the type of the spanner model corresponding to the movable range of the type 722.

可動範囲724は、種類722=スパナであるモデル(工具・道具のモデル)に対応付けて記憶される、当該工具の可動範囲を示すモデルの種類である(例えば図9でいう921)。マーカID725は、2次元マーカの識別情報である。 The movable range 724 is a type of model indicating the movable range of the tool, which is stored in association with a model (tool / tool model) of type 722 = spanner (for example, 921 in FIG. 9). The marker ID 725 is identification information of the two-dimensional marker.

配置中モデル情報730(配置中モデル情報730A、730B,730C)は、PC200の外部メモリに記憶される、仮想空間上に配置されているモデルの情報を記憶する。 The placed model information 730 (placed model information 730A, 730B, 730C) stores the information of the model placed in the virtual space stored in the external memory of the PC 200.

マーカID731は、モデル名732のモデルが、2次元マーカの位置を基準として配置される場合に記憶される。例えば、工具(スパナ)のモデルの場合には、仮想空間上に当該モデルが配置されるにあたり、当該配置の基準位置を示すマーカの識別情報が記憶される。 The marker ID 731 is stored when the model with the model name 732 is arranged with reference to the position of the two-dimensional marker. For example, in the case of a tool (spanner) model, when the model is placed in the virtual space, the identification information of the marker indicating the reference position of the placement is stored.

位置733、姿勢734は、モデル名732のモデルの仮想空間上における位置姿勢を示す。 The position 733 and the posture 734 indicate the position and posture of the model of the model name 732 in the virtual space.

ステップS404では、PC200のCPU201は、種類722=ナットのモデルの位置733と、現実物体の位置733(種類722=real01のモデルの位置)とが所定距離740以内か判定する。具体的には、PC200のCPU201は、現実物体に貼付された2次元マーカから特定された当該現実物体の現実空間上の位置に対応する仮想空間上の位置に、予め外部メモリ上に用意しておいた当該現実物体と同じ大きさ・形状をしたモデル(種類722=real01のモデル)を配置して、当該モデルの外面上の点の中でナットのモデルの位置と最短距離にある点と、当該ナットのモデルの位置との距離が、所定距離740以内か判定する。 In step S404, the CPU 201 of the PC 200 determines whether the position 733 of the model of type 722 = nut and the position 733 of the real object (position of the model of type 722 = real01) are within a predetermined distance of 740. Specifically, the CPU 201 of the PC 200 is prepared in advance on the external memory at a position in the virtual space corresponding to the position in the real space of the real object specified from the two-dimensional marker attached to the real object. Place a model (type 722 = real01 model) that has the same size and shape as the actual object, and place the point on the outer surface of the model that is the shortest distance from the position of the nut model. It is determined whether the distance of the nut from the model position is within a predetermined distance of 740.

ナットのモデルと現実物体が所定距離内にあると判定された場合、現実物体から最も近い位置にあるナットのモデルを特定し(ステップS405)、特定したナットのモデルの種類722を参照して当該種類に対応する工具のモデル(対応モデル723のモデル)をメモリから取得する(ステップS406)。 When it is determined that the nut model and the real object are within a predetermined distance, the nut model closest to the real object is specified (step S405), and the specified nut model type 722 is referred to. The model of the tool corresponding to the type (model of the corresponding model 723) is acquired from the memory (step S406).

そして、取得した工具のモデルを、ナットと所定距離以内にある現実物体の位置(ナットとの距離判定に用いられた現実物体を示す3次元モデルが参照しているマーカID731を基準とした仮想空間上の位置)をモデルの配置位置として決定して、配置する(ステップS407)。つまり、図7の730Bに示すように、マーカID731のマーカの位置姿勢と同じ位置姿勢を位置733、姿勢734に挿入して記憶する。 Then, the acquired tool model is used as a virtual space based on the position of the real object within a predetermined distance between the nut and the marker ID 731 referred to by the three-dimensional model indicating the real object used for determining the distance between the nut and the nut. The upper position) is determined as the placement position of the model and is placed (step S407). That is, as shown in 730B of FIG. 7, the same position and orientation as the position and orientation of the marker of the marker ID 731 are inserted and stored in the position 733 and the attitude 734.

PC200のCPU201は、HMD101から取得した現実画像に配置中モデル情報730に示す、仮想空間上に配置されている3次元モデルの画像であって、HMD101の位置姿勢から見た仮想空間内の画像(仮想画像)を重畳したMR画像を生成して、HMD101の表示画面に表示すべくHMD101に送信する(ステップS408)。例えば、図9の910に示すように、ターゲット801の位置に重畳して工具モデル911を配置したMR画像を生成する。なお、図9の900は工具モデル911配置前のターゲット801、3次元モデル802の状態を示す。HMD101は当該MR画像を受信して表示画面に表示する。以上が図4の説明である。 The CPU 201 of the PC 200 is an image of a three-dimensional model arranged in the virtual space shown in the model information 730 being arranged in the real image acquired from the HMD 101, and is an image in the virtual space seen from the position and orientation of the HMD 101. An MR image on which a virtual image) is superimposed is generated and transmitted to the HMD 101 so as to be displayed on the display screen of the HMD 101 (step S408). For example, as shown in 910 of FIG. 9, an MR image in which the tool model 911 is arranged is generated by superimposing the position on the target 801. Note that 900 in FIG. 9 shows the state of the target 801 and the three-dimensional model 802 before the tool model 911 is arranged. The HMD 101 receives the MR image and displays it on the display screen. The above is the description of FIG.

次に図5を参照して、本発明の実施形態における、可動範囲の確認処理の流れについて説明する。 Next, with reference to FIG. 5, the flow of the movable range confirmation process in the embodiment of the present invention will be described.

PC200のCPU201は、PC100の表示画面上に表示される不図示のシミュレーション開始画面において、「シミュレーション開始」ボタンの押下指示を受け付け(ステップS501)、ステップS502以降の処理を実行する。 The CPU 201 of the PC 200 receives an instruction to press the "simulation start" button on the simulation start screen (not shown) displayed on the display screen of the PC 100 (step S501), and executes the processes after step S502.

PC200のCPU201は、ナットのモデルと工具のモデルが接触したか判定する(ステップS502)。モデル同士の接触の判定は、配置中モデル情報730の各モデルの位置姿勢と、モデル名732のモデルファイルの中に記憶されている、各モデルの形状・大きさを用いて判定する。 The CPU 201 of the PC 200 determines whether the nut model and the tool model are in contact with each other (step S502). The contact between the models is determined by using the position and orientation of each model in the placed model information 730 and the shape and size of each model stored in the model file of the model name 732.

PC200のCPU201は、ナットのモデルと工具のモデルが接触していないと判定した場合には図5の処理を終了する。ナットのモデルと工具のモデルが接触していると判定した場合には、現実物体が所定の動きをしたか判定する(ステップS503)。当該現実物体が所定の動きをしたか否かの判定は、例えばHMD101に設置されているカメラと、公知のモーション検知の技術(例:特開2012−008772等に記載の技術)を用いて実行するものとする。なお、所定の動きの情報は、別途PC200の外部メモリに記憶されているものとする。ここでいう所定の動きとは、ナットのモデルの位置・向き(ナットの軸方向)を軸として、ナットを締めるような動きであるものとする。 When the CPU 201 of the PC 200 determines that the nut model and the tool model are not in contact with each other, the CPU 201 ends the process of FIG. When it is determined that the nut model and the tool model are in contact with each other, it is determined whether or not the real object has made a predetermined movement (step S503). Judgment as to whether or not the real object has made a predetermined movement is executed by using, for example, a camera installed in the HMD 101 and a known motion detection technique (eg, a technique described in Japanese Patent Application Laid-Open No. 2012-008772). It shall be. It is assumed that the information on the predetermined movement is separately stored in the external memory of the PC 200. The predetermined movement referred to here is a movement for tightening the nut with the position and orientation of the nut model (axial direction of the nut) as the axis.

所定の動きをしていない場合図5の処理を終了する。所定の動きをしていると判定された場合には、当該所定の動きをしている現実物体に重畳された工具の3次元モデルに対応する可動範囲724のモデルを取得する(ステップS504)。これは工具を使ってナットを回す/締めるのに工具を動かす範囲を示す図9の921のようなモデルである。PC200のCPU201は当該取得した可動範囲を示すモデルを、工具のモデルと同じ位置姿勢で仮想空間上に配置する。具体的には、図7の730Cに示すように配置中モデル情報730に、可動範囲のモデル(M004.vrml)を追加し、スパナのモデル(M003.vrml)と同じ位置姿勢の値を記憶する(ステップS505)。 When the predetermined movement is not performed, the process of FIG. 5 is terminated. When it is determined that the tool is moving in a predetermined manner, a model having a movable range of 724 corresponding to the three-dimensional model of the tool superimposed on the real object in the predetermined motion is acquired (step S504). This is a model such as 921 in FIG. 9 showing the range in which the tool is moved to turn / tighten the nut with the tool. The CPU 201 of the PC 200 arranges the model showing the acquired movable range in the virtual space in the same position and posture as the model of the tool. Specifically, as shown in 730C of FIG. 7, a movable range model (M004.vrml) is added to the arranging model information 730, and the same position / orientation value as the spanner model (M003.vrml) is stored. (Step S505).

PC200のCPU201は、当該可動範囲を示すモデルが、ナット以外の3次元モデルと接触しているか判定する(ステップS506)。ナットのモデル以外の3次元モデルと接触している例を図9の930に示す。ナットのモデル以外の3次元モデルと接触していない例を図9の920に示す。 The CPU 201 of the PC 200 determines whether the model showing the movable range is in contact with a three-dimensional model other than the nut (step S506). An example of contact with a three-dimensional model other than the nut model is shown in FIG. 930. An example of no contact with a three-dimensional model other than the nut model is shown in FIG. 920.

可動範囲を示すモデルがナット以外の3次元モデルと接触していない場合、図9の920の「OK」オブジェクト922に示すように、可動範囲を示すモデルがナット以外の3次元モデルと接触していない旨を示す情報を、HMD101の表示画面に表示させる処理を行う(ステップS509)。具体的には、工具の可動範囲を示すモデルから所定距離離れた仮想空間上の位置に図9の922に示すような3次元モデルを配置してMR画像を生成し、HMD101に送信する。HMD101はこれを受信して表示する。そして、可動範囲を示すモデルがナット以外の3次元モデルと接触していないと判定された際の、可動範囲のモデルの位置(例えば図9の923に示すような可動範囲のモデルの頂点が位置する仮想空間上の位置)と、当該接触していないと判定された時間をメモリに記憶する(ステップS510/図7の判定位置情報750のOK位置751、日時752)。 When the model showing the movable range is not in contact with the 3D model other than the nut, the model showing the movable range is in contact with the 3D model other than the nut, as shown in the “OK” object 922 of FIG. A process of displaying information indicating that there is no such information on the display screen of the HMD 101 is performed (step S509). Specifically, an MR image is generated by arranging a three-dimensional model as shown in 922 of FIG. 9 at a position on a virtual space separated from the model showing the movable range of the tool by a predetermined distance, and transmitted to the HMD 101. The HMD 101 receives and displays this. Then, when it is determined that the model showing the movable range is not in contact with the three-dimensional model other than the nut, the position of the model of the movable range (for example, the apex of the model of the movable range as shown in 923 of FIG. 9 is the position). The position on the virtual space) and the time when it is determined that the contact is not made are stored in the memory (OK position 751 of the determination position information 750 in step S510 / FIG. 7, date and time 752).

一方、ステップS506で、可動範囲を示すモデルがナット以外の3次元モデルと接触していると判定された場合、図9の930の「NG」オブジェクト932に示すように、可動範囲を示すモデルがナット以外の3次元モデルと接触している旨を示す情報をHMD101の表示画面に表示する処理を行う(ステップS507)。具体的には、工具の可動範囲を示すモデルから所定距離離れた仮想空間上の位置に図9の932に示すような3次元モデルを配置し、また、各モデルが接触している位置を示す931に示すようなモデルを生成して、各モデルが接触している位置(接触位置)に配置してMR画像を生成し、HMD101に送信する。HMD101はこれを受信して表示する。 On the other hand, when it is determined in step S506 that the model showing the movable range is in contact with the three-dimensional model other than the nut, the model showing the movable range is as shown in the “NG” object 932 of FIG. 9 930. A process of displaying information indicating contact with a three-dimensional model other than the nut on the display screen of the HMD 101 is performed (step S507). Specifically, a three-dimensional model as shown in 932 of FIG. 9 is placed at a position on the virtual space separated from the model showing the movable range of the tool by a predetermined distance, and the position where each model is in contact is shown. A model as shown in 931 is generated, arranged at a position (contact position) where each model is in contact, an MR image is generated, and the model is transmitted to the HMD 101. The HMD 101 receives and displays this.

そして、可動範囲を示すモデルがナット以外の3次元モデルと接触していると判定された際の、可動範囲のモデルの位置と、当該接触していると判定した時間とをメモリに記憶する(ステップS508/図7の判定位置情報750のNG位置753、日時754/位置記憶手段に該当)。そして、工具のモデルが接触しているナットのモデルが配置されている位置にある(ナットのモデルが合致している/設置されている)モデルを特定し、当該モデル上の、当該ナットのモデルと接触しているナットの設置位置を特定する(ステップS511)。例えば、ナットの中心点と最も近い位置にある、当該ナットが接触しているモデルの面上の点を、当該設置位置として特定する。 Then, when it is determined that the model showing the movable range is in contact with a three-dimensional model other than the nut, the position of the model in the movable range and the time determined to be in contact are stored in the memory ( Step S508 / NG position 753 of the determination position information 750 in FIG. 7, date and time 754 / corresponding to the position storage means). Then, the model in which the nut model to which the tool model is in contact is located (the nut model matches / is installed) is specified, and the nut model on the model is specified. The installation position of the nut in contact with the nut is specified (step S511). For example, a point on the surface of the model in contact with the nut, which is closest to the center point of the nut, is specified as the installation position.

PC200のCPU201は、ナットと接触しているモデル(例:3次元モデル802に示すモデル)のファイルを所定のフォルダにコピーして、当該コピーしたファイルのモデル上の前記設置位置に、当該設置位置を示す球のモデルを生成・配置して、上書き保存する(ステップS512)。つまり、尚、ステップS506で、可動範囲を示すモデルが他の3次元モデル(例:3次元モデル802に示すモデル)と接触していると判定されている場合には、赤の球を生成して配置し、可動範囲を示すモデルが他の3次元モデルと接触していないと判定されている場合には、青の球を生成して配置するものとする。これにより、各球が、当該点を基準位置とした工具の可動範囲が十分か否かを、容易に確認可能とする。以上が図5の説明である。 The CPU 201 of the PC 200 copies a file of a model in contact with the nut (eg, the model shown in the three-dimensional model 802) to a predetermined folder, and places the copied file at the installation position on the model. A model of a sphere showing the above is generated and arranged, and overwritten and saved (step S512). That is, if it is determined in step S506 that the model showing the movable range is in contact with another three-dimensional model (eg, the model shown in the three-dimensional model 802), a red sphere is generated. If it is determined that the model showing the movable range is not in contact with other 3D models, a blue sphere shall be generated and placed. This makes it possible for each ball to easily confirm whether or not the movable range of the tool with the point as the reference position is sufficient. The above is the description of FIG.

なお、ステップS512において、コピーしたモデルファイル上に可動範囲を示すモデル921とモデル802の接触位置を示すモデルや、可動範囲を示すモデル921そのものを生成して、仮想空間上において、モデル802接触したと判定された時点におけるモデル802との相対位置に配置するようにしてもよい。 In step S512, a model showing the contact position between the model 921 and the model 802 showing the movable range and the model 921 itself showing the movable range were generated on the copied model file, and the model 802 was contacted in the virtual space. It may be arranged at a position relative to the model 802 at the time when it is determined to be.

また、ステップS506における判定において、ナットが設置されている面を除いて、工具の可動範囲を示すモデルとの接触判定を行うようにしてもよい。 Further, in the determination in step S506, the contact determination with the model indicating the movable range of the tool may be performed except for the surface on which the nut is installed.

また、ステップS512の処理の直後に、HMD101に表示されている画像(例えばステップS507、又はS509で生成したMR画像)をキャプチャして、所定のフォルダに出力、保存するようにしてもよい。 Further, immediately after the process of step S512, the image displayed on the HMD 101 (for example, the MR image generated in step S507 or S509) may be captured, output to a predetermined folder, and saved.

当該コピーファイルの出力、キャプチャ画像の出力、保存により、当該コピーファイルを他のユーザが確認可能となる。よって例えば、HMD101を装着した作業者が検討していた、作業スペース(工具の可動範囲)が十分か否かの情報を、他のユーザである設計者に容易に手渡すことができる状態となる。また、容易に確認させることができる By outputting the copy file, outputting the captured image, and saving the copy file, other users can check the copy file. Therefore, for example, the information on whether or not the work space (movable range of the tool) considered by the worker wearing the HMD 101 is sufficient can be easily handed over to the designer who is another user. Also, it can be easily confirmed.

図5の処理によれば、現実物体の位置と、現実物体と所定距離内にあるモデルの位置とを用いて、当該モデルに対応する適切なモデルを選出し、表示させることができる。 According to the process of FIG. 5, an appropriate model corresponding to the model can be selected and displayed by using the position of the real object and the position of the model within a predetermined distance from the real object.

また、当該工具のモデルに対応する可動範囲のモデルを取得して配置することで、当該工具を用いた作業範囲が十分に確保されているかを目視で確認することができる。 In addition, by acquiring and arranging a model of a movable range corresponding to the model of the tool, it is possible to visually confirm whether or not a sufficient working range using the tool is secured.

次に図6を参照して、本発明の実施形態における、本発明の実施形態における、距離特定処理の流れについて説明する。 Next, with reference to FIG. 6, the flow of the distance specifying process in the embodiment of the present invention will be described.

図6の処理は、例えばHMD101を装着して、作業スペース(工具の可動範囲)が十分に確保されているかをMRを用いて検証している作業者が、現在ナットが存在する場所では作業スペースが十分でないことが分かったため、モデル上のどの位置にナット(ナットを用いて締めるボルト)を移動すればよいかを検証した検証結果を表示する処理である。 In the process of FIG. 6, for example, a worker who wears the HMD 101 and verifies whether the work space (movable range of the tool) is sufficiently secured by using MR is a work space in a place where a nut currently exists. Is not enough, so it is a process to display the verification result that verified to which position on the model the nut (bolt to be tightened with the nut) should be moved.

例えば、図10の1000における1001の位置でスパナを左右に振る動作を行い、その後、図10の1010における1011の位置にスパナを移動させた場合に、図11に示すように、1001の位置から1011の位置の間の距離を識別可能にするものである。以下、詳細を説明する。 For example, when the spanner is swung left and right at the position 1001 in 1000 of FIG. 10 and then the spanner is moved to the position 1011 in 1010 of FIG. 10, as shown in FIG. 11, from the position of 1001. It makes the distance between the positions of 1011 identifiable. The details will be described below.

PC200のCPU201は、工具のモデルと、ナット以外のモデルの面が接触しているか判定し、接触していると判定した場合に、当該接触している時間が所定時間以上か判定する(ステップS601)。所定時間の情報は、PC200の外部メモリに予め記憶されているものとする。 The CPU 201 of the PC 200 determines whether the model of the tool and the surface of the model other than the nut are in contact with each other, and if it is determined that they are in contact with each other, determines whether the contact time is equal to or longer than a predetermined time (step S601). ). It is assumed that the information at the predetermined time is stored in advance in the external memory of the PC 200.

接触している時間が所定時間未満の場合には図6の処理を終了する。所定時間以上接触していると判定した場合には、当該工具のモデルに対応する可動範囲のモデルを取得して、当該工具のモデルの位置姿勢と同じ位置姿勢で、当該可動範囲のモデルを仮想空間上に配置する(ステップS602)。 If the contact time is less than a predetermined time, the process of FIG. 6 is terminated. If it is determined that the tool has been in contact for a predetermined time or longer, a model of the movable range corresponding to the model of the tool is acquired, and the model of the movable range is virtualized in the same position and posture as the model of the tool. Arrange in space (step S602).

そして、当該可動範囲のモデルが、工具が接触している面以外のモデルの面と接触しているか判定する(ステップS603)。工具が接触している面以外のモデルの面と接触している場合には処理を終了する。工具が接触している面以外のモデルの面と接触していない場合には、処理をステップS604に移行し、当該工具のモデルと接触しているモデル上の点を特定してメモリ上に記憶する(ステップ604)。例えば、工具のモデルがスパナの場合、スパナのナットを締めるヘッド部分の中心点(例:図10の1011)の位置を特定する。 Then, it is determined whether the model of the movable range is in contact with a surface of the model other than the surface with which the tool is in contact (step S603). If the tool is in contact with a surface of the model other than the surface it is in contact with, the process ends. If the tool is not in contact with a surface of the model other than the surface in contact, the process proceeds to step S604, a point on the model in contact with the model of the tool is specified, and the point is stored in the memory. (Step 604). For example, when the model of the tool is a spanner, the position of the center point (example: 1011 in FIG. 10) of the head portion for tightening the nut of the spanner is specified.

そして、過去所定時間内に、工具の可動範囲のモデルとナット以外のモデルが接触しているか判定する(ステップS605)。具体的には、図7の日時754とPC200が自装置の時計機能で特定可能な現在日時との差の時間が、外部メモリに予め記憶されている不図示の所定時間内か判定するものである。 Then, it is determined whether the model of the movable range of the tool and the model other than the nut are in contact within the past predetermined time (step S605). Specifically, it is determined whether the time difference between the date and time 754 in FIG. 7 and the current date and time that can be specified by the clock function of the PC 200 is within a predetermined time (not shown) stored in advance in the external memory. is there.

過去所定時間内に、工具の可動範囲のモデルとナット以外のモデルが接触している記録があった場合には、当該記録(NG位置753)の示す位置から、ステップS604でメモリ上に記憶した位置との距離を算出する(ステップS606)。 If there is a record that the model of the movable range of the tool and the model other than the nut are in contact within the past predetermined time, the model is stored in the memory in step S604 from the position indicated by the record (NG position 753). The distance to the position is calculated (step S606).

そして、当該距離を示す3次元モデルを生成する(ステップS607)。例えば図11の1100に示す、モデル1101や1102に示すような、2つの点同士の距離を示す3次元モデルである。 Then, a three-dimensional model showing the distance is generated (step S607). For example, it is a three-dimensional model showing the distance between two points as shown in models 1101 and 1102 shown in 1100 of FIG.

PC200のCPU201は、当該距離を示すモデルを、NG位置753の示す位置から、ステップS604でメモリ上に記憶した位置の間に、2つの位置の示す2つの点を結ぶように配置して(ステップS608)、HMD101から取得した現実画像に重畳してMR画像を生成し(2つの点の相対位置/相対関係を示す相対関係画像生成手段に該当)、HMD101に送信する(ステップS609)。HMD101は当該MR画像を受信して、図11の1100のようなMR画像を表示画面に表示する。以上が図6の説明である。 The CPU 201 of the PC 200 arranges the model indicating the distance between the position indicated by the NG position 753 and the position stored in the memory in step S604 so as to connect the two points indicated by the two positions (step). S608), an MR image is generated by superimposing it on the real image acquired from the HMD 101 (corresponding to the relative relationship image generation means indicating the relative position / relative relationship of the two points), and transmitted to the HMD 101 (step S609). The HMD 101 receives the MR image and displays the MR image as shown by 1100 in FIG. 11 on the display screen. The above is the description of FIG.

なお、前述した距離を示すモデルは図11の1101や1102の形状に限るものではない。例えば図11の1110に示すモデル1111のような形状のモデルを生成するようにしてもよい。 The model showing the distance described above is not limited to the shapes 1101 and 1102 in FIG. For example, a model having a shape like the model 1111 shown in 1110 of FIG. 11 may be generated.

また、PC200のCPU201が、ステップS609の後に、モデル802のファイルを所定のフォルダにコピーして保存し、前記距離のモデルで結ばれたモデル802上の2つの点(NG位置753の示す位置と、ステップS604でメモリ上に記憶した位置の点)、及び当該2つの点の間の距離を示す3次元モデルを、当該コピーしたモデルファイル上で生成して配置、上書き保存するようにしてもよい。つまり、前記距離のモデルで結ばれたモデル802上の2つの点(NG位置753の示す位置と、ステップS604でメモリ上に記憶した位置の点)、及び当該2つの点の間の距離を示す3次元モデルを対応付けて記憶する処理を行うものである。 Further, after step S609, the CPU 201 of the PC 200 copies and saves the file of the model 802 to a predetermined folder, and two points on the model 802 connected by the model of the distance (the position indicated by the NG position 753). , The point of the position stored in the memory in step S604), and a three-dimensional model indicating the distance between the two points may be generated, arranged, and overwritten on the copied model file. .. That is, the two points on the model 802 connected by the model of the distance (the position indicated by the NG position 753 and the point of the position stored in the memory in step S604) and the distance between the two points are shown. The process of associating and storing the three-dimensional model is performed.

また、ステップS609の直後に、HMD101に表示されている画像(例えばステップS609で生成したMR画像)をキャプチャして、所定のフォルダに出力、保存するようにしてもよい。 Further, immediately after step S609, the image displayed on the HMD 101 (for example, the MR image generated in step S609) may be captured, output to a predetermined folder, and saved.

当該コピーファイルの出力、キャプチャ画像の出力、保存により、当該コピーファイルを他のユーザが確認可能となる。よって例えば、HMD101を装着した作業者が検討していた、作業スペース(工具の可動範囲)が十分か否かの情報を、他のユーザである設計者に容易に手渡すことができる状態となる。また、容易に確認させることができる。 By outputting the copy file, outputting the captured image, and saving the copy file, other users can check the copy file. Therefore, for example, the information on whether or not the work space (movable range of the tool) considered by the worker wearing the HMD 101 is sufficient can be easily handed over to the designer who is another user. Moreover, it can be easily confirmed.

例えば、どの位置にナット(ナットを使って締めるボルト)を移動させた設計をすれば作業スペースが十分に確保できるかを、設計者に容易に伝達可能となる。 For example, it is possible to easily inform the designer to which position the nut (bolt to be tightened with the nut) should be moved to secure a sufficient work space.

なお、ステップS601において、工具のモデルとナット以外のモデルの面が所定時間以上接触しているか判定するものとしたが、例えば、図5のS503と同じように、工具のモデルと同じ位置にある現実物体が所定の動きをしているか判定し、所定の動きをしていると判定した場合には処理をステップS602に移行するようにしてもよい。こうすることでユーザは、作業スペースが十分でないと判断されたナットの位置とは別の位置で、ナット等の部品を締めるような直感的な動作をするだけで、作業スペースが十分でないと判断されたナットの位置から、作業スペースが十分であると判断されたモデル上の位置までの距離を知ることができる。また、当該情報を出力することができるようになる。 In step S601, it is determined whether the surface of the model of the tool and the surface of the model other than the nut are in contact with each other for a predetermined time or longer. For example, as in S503 of FIG. 5, the model is in the same position as the model of the tool. It may be determined whether or not the real object is making a predetermined movement, and if it is determined that the real object is making a predetermined movement, the process may be shifted to step S602. By doing so, the user determines that the work space is not sufficient simply by performing an intuitive operation such as tightening a part such as a nut at a position different from the position of the nut that is determined to have insufficient work space. It is possible to know the distance from the position of the nut to the position on the model where the work space is judged to be sufficient. In addition, the information can be output.

以上説明したように、本発明によれば、MRを用いて表示した設計物上の作業スペースの検証結果を容易に確認可能にする仕組みを提供することができる。 As described above, according to the present invention, it is possible to provide a mechanism that makes it possible to easily confirm the verification result of the work space on the design object displayed by using MR.

尚、上述した実施形態においては、HMD101に設置されたカメラと、PC200の外部メモリに記憶された所定の動きの情報を用いて、現実物体(ターゲット801)が所定の動きをしたか判定するものとしたが、例えば、ターゲット801と同じ位置、姿勢に配置された現実物体を示すモデルの位置姿勢の履歴を記憶し、当該位置姿勢の履歴と、別途PC200の外部メモリに記憶された所定の動きの情報を照らし合わせて、現実物体が所定の動きをしたか否か判定するようにしてもよい。 In the above-described embodiment, it is determined whether or not the real object (target 801) has made a predetermined movement by using the camera installed in the HMD 101 and the information of the predetermined movement stored in the external memory of the PC200. However, for example, the history of the position and orientation of the model indicating the real object arranged at the same position and orientation as the target 801 is stored, and the history of the position and orientation and the predetermined movement separately stored in the external memory of the PC 200 are stored. It is also possible to judge whether or not the real object has made a predetermined movement by comparing the information of.

また、上述した実施形態においては、工具の例をスパナ、部品の例をナットとしたが、工具、部品のモデルはこれに限るものではない。例えば部品の種類としてネジやボルトを示す値を挿入したモデルを記憶しておき、ナットの代わりに用いるようにしてもよい。また、工具の種類としてレンチやドライバを示す値を挿入したモデルを記憶しておき、スパナの代わりに用いるようにしてもよい。 Further, in the above-described embodiment, the example of the tool is a spanner and the example of a part is a nut, but the model of the tool and the part is not limited to this. For example, a model in which a value indicating a screw or a bolt is inserted as a part type may be stored and used instead of a nut. Further, a model in which a value indicating a wrench or a driver is inserted as a tool type may be stored and used instead of a spanner.

また、可動範囲を示すモデル(move)は、予め外部メモリ上に記憶されているものとしたが、例えば、図5のS503や図6のS601で所定の動きをしたと判定された現実物体に重畳されている(ターゲットのマーカM111の位置に配置されている)工具のモデルの所定時間内の位置姿勢の履歴を記憶して置き、当該履歴を参照して、例えば、当該履歴から特定される、当該工具のモデルが過去5秒間の間に通った軌跡を示す座標値を取得して、当該座標値から特定されるモ工具のモデルが通った軌跡を示す形状のモデル(所定の動きを示すモデル)を生成して、S505やS602で仮想空間上に配置するようにしてもよい。実際の工具のモデルの動きを用いることで、より現実的な作業スペース有無の検証が可能となる。 Further, the model (move) showing the movable range is assumed to be stored in the external memory in advance, but for example, a real object determined to have made a predetermined movement in S503 of FIG. 5 or S601 of FIG. The history of the position and orientation of the superimposed tool model (located at the position of the target marker M111) within a predetermined time is stored and stored, and the history is referred to, for example, specified from the history. , A model having a shape (showing a predetermined movement) showing a trajectory that the model of the tool specified from the coordinate values has passed by acquiring a coordinate value indicating the trajectory that the model of the tool has passed in the past 5 seconds. A model) may be generated and arranged in the virtual space in S505 or S602. By using the movement of the actual tool model, it is possible to verify the existence of a more realistic work space.

尚、本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、1つの機器からなる装置に適用してもよい。 The present invention can be, for example, an embodiment as a system, an apparatus, a method, a program, a storage medium, or the like, and specifically, may be applied to a system composed of a plurality of devices. It may be applied to a device consisting of one device.

なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システム或いは装置に直接、或いは遠隔から供給するものを含む。そして、そのシステム或いは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合も本発明に含まれる。 The present invention includes a software program that realizes the functions of the above-described embodiments, which is directly or remotely supplied to the system or device. The present invention also includes cases where the computer of the system or device can also read and execute the supplied program code.

したがって、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。 Therefore, in order to realize the functional processing of the present invention on a computer, the program code itself installed on the computer also realizes the present invention. That is, the present invention also includes a computer program itself for realizing the functional processing of the present invention.

プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RWなどがある。また、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などもある。 Recording media for supplying programs include, for example, flexible disks, hard disks, optical disks, magneto-optical disks, MOs, CD-ROMs, CD-Rs, CD-RWs, and the like. There are also magnetic tapes, non-volatile memory cards, ROMs, DVDs (DVD-ROM, DVD-R) and the like.

その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、前記ホームページから本発明のコンピュータプログラムそのもの、若しくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。 In addition, as a program supply method, a browser of a client computer is used to connect to an Internet homepage. Then, the computer program itself of the present invention or a compressed file including the automatic installation function can be supplied 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 different homepages. That is, the present invention also includes 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.

また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、ダウンロードした鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。 In addition, the program of the present invention is encrypted, stored in a storage medium such as a CD-ROM, and distributed to users, and the key information for decrypting the encryption is downloaded from the homepage to the user who clears the predetermined conditions. Let me. Then, by using the downloaded key information, it is also possible to execute an encrypted program and install it on a computer.

また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。 Further, the function of the above-described embodiment is realized by the computer executing the read program. In addition, based on the instruction of the program, the OS or the like running on the computer performs a part or all of the actual processing, and the function of the above-described embodiment can be realized by the processing.

さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。 Further, the program read from the recording medium is written to the memory provided in the function expansion board inserted in the computer or the function expansion unit connected to the computer. After that, based on the instruction of the program, the function expansion board, the CPU provided in the function expansion unit, or the like performs a part or all of the actual processing, and the function of the above-described embodiment is also realized by the processing.

尚、前述した実施形態は、本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。
即ち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
It should be noted that the above-described embodiments merely show examples of embodiment in carrying out the present invention, and the technical scope of the present invention should not be construed in a limited manner by these.
That is, the present invention can be implemented in various forms without departing from the technical idea or its main features.

101 HMD
150 ネットワーク
200 PC

101 HMD
150 network 200 PC

Claims (9)

空間上の3次元モデルの位置姿勢に基づいて現実画像と3次元モデルを重畳した複合現実画像を表示する表示装置と通信可能な、当該3次元モデルの位置姿勢を記憶する情報処理装置であって、
前記3次元モデルのうち、作業対象となる第1のモデルと、当該第1のモデルに対する作業を行うための道具を示す第2のモデルを対応付けて記憶する記憶手段と、
現実物体を検出する現実物体検出手段と、
前記現実物体検出手段で検出された現実物体の位置と、前記第1のモデルの位置とが所定距離内にあるか判定する判定手段と、
前記判定手段で、前記現実物体の位置と前記第1のモデルの位置とが所定距離内にあると判定された場合に、前記第1のモデルに対応する前記第2のモデルを特定する特定手段と、
前記特定手段で特定された第2のモデルの空間上の位置姿勢を、前記現実物体の位置姿勢に従って決定する決定手段と、
前記検出手段で検出された現実物体が所定の動きをしたことを検知する動き検知手段と、
前記動き検知手段で当該現実物体が所定の動きをしたと検知した場合に、当該所定の動きをしている現実物体又は当該現実物体の位置姿勢に応じて前記決定手段で位置姿勢が決定された前記第2のモデルが、他の3次元モデルに接触したか判定する接触判定手段と、
前記接触判定手段で接触したと判定された場合に、当該接触した旨を示す情報を前記表示装置の表示画面に表示すべく制御する表示制御手段と、
を備えることを特徴とする情報処理装置。
An information processing device that stores the position and orientation of the 3D model that can communicate with a display device that displays a mixed reality image in which a real image and a 3D model are superimposed based on the position and orientation of the 3D model in space. ,
Among the three-dimensional models, a storage means for storing the first model to be worked on and the second model indicating a tool for performing work on the first model in association with each other.
Real object detection means for detecting real objects and
A determining means for determining whether the position of the real object detected by the real object detecting means and the position of the first model are within a predetermined distance.
Specific means for identifying the second model corresponding to the first model when the determination means determines that the position of the real object and the position of the first model are within a predetermined distance. When,
A determination means for determining the position and orientation of the second model in space specified by the specific means according to the position and orientation of the real object.
A motion detecting means for detecting that a real object detected by the detecting means has made a predetermined movement,
When the motion detecting means detects that the real object has made a predetermined movement, the position / orientation is determined by the determining means according to the position / orientation of the real object making the predetermined movement or the real object. A contact determination means for determining whether the second model has contacted another three-dimensional model,
A display control means that controls to display information indicating the contact on the display screen of the display device when it is determined that the contact is made by the contact determination means.
An information processing device characterized by being equipped with.
前記接触判定手段で、前記現実物体又は当該現実物体の位置姿勢に応じて前記決定手段で位置姿勢が決定された前記第2のモデルが他の3次元モデルに接触したと判定された場合に、前記表示装置に表示する複合現実画像をキャプチャする第1のキャプチャ手段と、
を備えることを特徴とする請求項1に記載の情報処理装置。
When the contact determination means determines that the real object or the second model whose position and orientation have been determined by the determination means in accordance with the position and orientation of the real object has come into contact with another three-dimensional model. A first capturing means for capturing a mixed reality image to be displayed on the display device,
The information processing apparatus according to claim 1, further comprising.
前記動き検知手段で前記現実物体が所定の動きをしたことが検知された場合であって、前記接触判定手段で所定の動きをしている現実物体又は当該現実物体の位置姿勢に応じて前記決定手段で位置姿勢が決定された前記第2のモデルが、他の3次元モデルに接触したと判定された場合に、前記特定手段による当該第2のモデルの特定に用いられた前記第1のモデルの位置を記憶する第1の位置記憶手段と、
前記動き検知手段で前記現実物体が所定の動きをしたことが検知された場合であって、前記接触判定手段で所定の動きをしている現実物体及び当該現実物体の位置姿勢に応じて前記決定手段で位置姿勢が決定された前記第2のモデルが、他の3次元モデルに接触しなかったと判定された場合に、当該現実物体から所定の距離にある位置を記憶する第2の位置記憶手段と、
前記第1の位置記憶手段で記憶された第1の位置と、前記第2の位置記憶手段で記憶された第2の位置との相対関係を示す前記複合現実画像を生成する相対関係画像生成手段と、
を備え、
前記表示制御手段は、前記相対関係画像生成手段で生成された前記第1の位置と第2の位置の相対関係を示す複合現実画像を、前記表示装置に表示すべく送信することを特徴とする請求項1又は2に記載の情報処理装置。
When the movement detecting means detects that the real object has made a predetermined movement, the contact determination means determines the real object or the real object according to the position and orientation of the real object. The first model used to identify the second model by the specific means when it is determined that the second model whose position and orientation are determined by the means is in contact with another three-dimensional model. The first position storage means for storing the position of
When the movement detecting means detects that the real object has made a predetermined movement, the contact determination means determines the real object making the predetermined movement and the position / posture of the real object. A second position storage means for storing a position at a predetermined distance from the real object when it is determined that the second model whose position and orientation have been determined by the means did not come into contact with another three-dimensional model. When,
A relative relationship image generation means for generating the mixed reality image showing the relative relationship between the first position stored in the first position storage means and the second position stored in the second position storage means. When,
With
The display control means is characterized in that a mixed reality image showing the relative relationship between the first position and the second position generated by the relative relationship image generation means is transmitted to be displayed on the display device. The information processing device according to claim 1 or 2.
前記接触判定手段で、前記現実物体及び当該現実物体の位置姿勢に応じて前記決定手段で位置姿勢が決定された前記第2のモデルが他の3次元モデルに接触しなかったと判定された場合に、前記表示装置に表示する複合現実画像である前記相対関係画像をキャプチャする第2のキャプチャ手段と、
を備えることを特徴とする請求項3に記載の情報処理装置。
When it is determined by the contact determination means that the second model whose position and orientation have been determined by the determination means does not contact another three-dimensional model according to the position and orientation of the real object and the real object. A second capturing means for capturing the relative image, which is a composite reality image to be displayed on the display device.
The information processing apparatus according to claim 3, further comprising.
前記接触判定手段で、前記現実物体又は当該現実物体の位置姿勢に応じて前記決定手段で位置姿勢が決定された前記第2のモデルが他の3次元モデルに接触したと判定された後に、前記接触判定手段で、前記現実物体及び当該現実物体の位置姿勢に応じて前記決定手段で位置姿勢が決定された前記第2のモデルが他の3次元モデルに接触しなかったと判定された場合に、接触したと判定された他の3次元モデルと、前記第1の位置と、前記第2の位置とを対応付けて記憶する第3の位置記憶手段と、
を備えることを特徴とする請求項3又は4に記載の情報処理装置。
After it is determined by the contact determination means that the second model whose position and orientation have been determined by the determination means according to the position and orientation of the real object or the real object has come into contact with another three-dimensional model, the above. When it is determined by the contact determination means that the second model whose position and orientation have been determined by the determination means does not contact another three-dimensional model according to the position and orientation of the real object and the real object. A third position storage means for storing the first position and the second position in association with another three-dimensional model determined to be in contact with each other.
The information processing apparatus according to claim 3 or 4, wherein the information processing apparatus is provided with.
前記相対関係画像生成手段は、前記第1の位置と、前記第2の位置との距離を示す情報を含む複合現実画像を、前記相対関係画像として生成することを特徴とする請求項3乃至5のいずれか1項に記載の情報処理装置。 Claims 3 to 5 characterized in that the relative relationship image generation means generates a mixed reality image including information indicating a distance between the first position and the second position as the relative relationship image. The information processing apparatus according to any one of the above items. 空間上の3次元モデルの位置姿勢に基づいて現実画像と3次元モデルを重畳した複合現実画像を表示する表示装置と通信可能な、当該3次元モデルの位置姿勢を記憶する情報処理装置の制御方法であって、
前記3次元モデルのうち、作業対象となる第1のモデルと、当該第1のモデルに対する作業を行うための道具を示す第2のモデルを対応付けて記憶する記憶工程と、
現実物体を検出する現実物体検出工程と、
前記現実物体検出工程で検出された現実物体の位置と、前記第1のモデルの位置とが所定距離内にあるか判定する判定工程と、
前記判定工程で、前記現実物体の位置と前記第1のモデルの位置とが所定距離内にあると判定された場合に、前記第1のモデルに対応する前記第2のモデルを特定する特定工程と、
前記特定工程で特定された第2のモデルの空間上の位置姿勢を、前記現実物体の位置姿勢に従って決定する決定工程と、
前記検出工程で検出された現実物体が所定の動きをしたことを検知する動き検知工程と、
前記動き検知工程で当該現実物体が所定の動きをしたと検知した場合に、当該所定の動きをしている現実物体又は当該現実物体の位置姿勢に応じて前記決定工程で位置姿勢が決定された前記第2のモデルが、他の3次元モデルに接触したか判定する接触判定工程と、
前記接触判定工程で接触したと判定された場合に、当該接触した旨を示す情報を前記表示装置の表示画面に表示すべく制御する表示制御工程と、
を含むことを特徴とする情報処理装置の制御方法。
A control method for an information processing device that stores the position and orientation of the 3D model, which can communicate with a display device that displays a composite reality image in which a real image and a 3D model are superimposed based on the position and orientation of the 3D model in space. And
Among the three-dimensional models, a storage process of associating and storing a first model to be worked on and a second model indicating a tool for performing work on the first model.
A real object detection process that detects a real object,
A determination step of determining whether the position of the real object detected in the real object detection step and the position of the first model are within a predetermined distance.
A specific step of specifying the second model corresponding to the first model when it is determined in the determination step that the position of the real object and the position of the first model are within a predetermined distance. When,
A determination step of determining the position and orientation of the second model in space specified in the specific step according to the position and orientation of the real object.
A motion detection process for detecting that a real object detected in the detection process has made a predetermined motion,
When it is detected that the real object has made a predetermined movement in the motion detection step, the position / posture is determined in the determination step according to the position / orientation of the real object having the predetermined movement or the real object. A contact determination step of determining whether the second model has contacted another three-dimensional model, and
A display control step of controlling to display information indicating the contact on the display screen of the display device when it is determined that the contact is made in the contact determination step.
A control method for an information processing device, which comprises.
空間上の3次元モデルの位置姿勢に基づいて現実画像と3次元モデルを重畳した複合現実画像を表示する表示装置と通信可能な、当該3次元モデルの位置姿勢を記憶する情報処理装置で実行が可能なプログラムであって、
前記情報処理装置を、
前記3次元モデルのうち、作業対象となる第1のモデルと、当該第1のモデルに対する作業を行うための道具を示す第2のモデルを対応付けて記憶する記憶手段と、
現実物体を検出する現実物体検出手段と、
前記現実物体検出手段で検出された現実物体の位置と、前記第1のモデルの位置とが所定距離内にあるか判定する判定手段と、
前記判定手段で、前記現実物体の位置と前記第1のモデルの位置とが所定距離内にあると判定された場合に、前記第1のモデルに対応する前記第2のモデルを特定する特定手段と、
前記特定手段で特定された第2のモデルの空間上の位置姿勢を、前記現実物体の位置姿勢に従って決定する決定手段と、
前記検出手段で検出された現実物体が所定の動きをしたことを検知する動き検知手段と、
前記動き検知手段で当該現実物体が所定の動きをしたと検知した場合に、当該所定の動きをしている現実物体又は当該現実物体の位置姿勢に応じて前記決定手段で位置姿勢が決定された前記第2のモデルが、他の3次元モデルに接触したか判定する接触判定手段と、
前記接触判定手段で接触したと判定された場合に、当該接触した旨を示す情報を前記表示装置の表示画面に表示すべく制御する表示制御手段として機能させることを特徴とする情報処理装置のプログラム。
Execution is performed by an information processing device that stores the position and orientation of the 3D model, which can communicate with a display device that displays a composite reality image in which the reality image and the 3D model are superimposed based on the position and orientation of the 3D model in space. It ’s a possible program,
The information processing device
Among the three-dimensional models, a storage means for storing the first model to be worked on and the second model indicating a tool for performing work on the first model in association with each other.
Real object detection means for detecting real objects and
A determining means for determining whether the position of the real object detected by the real object detecting means and the position of the first model are within a predetermined distance.
Specific means for identifying the second model corresponding to the first model when the determination means determines that the position of the real object and the position of the first model are within a predetermined distance. When,
A determination means for determining the position and orientation of the second model in space specified by the specific means according to the position and orientation of the real object.
A motion detecting means for detecting that a real object detected by the detecting means has made a predetermined movement,
When the motion detecting means detects that the real object has made a predetermined movement, the position / orientation is determined by the determining means according to the position / orientation of the real object making the predetermined movement or the real object. A contact determination means for determining whether the second model has contacted another three-dimensional model,
A program of an information processing device characterized in that when it is determined by the contact determination means that the contact is made, the information indicating that the contact is made is made to function as a display control means for controlling display on the display screen of the display device. ..
空間上の3次元モデルの位置姿勢に基づいて現実画像と3次元モデルを重畳した複合現実画像を表示する表示装置と、当該3次元モデルの位置姿勢を記憶する情報処理装置とを含む情報処理システムであって、
前記3次元モデルのうち、作業対象となる第1のモデルと、当該第1のモデルに対する作業を行うための道具を示す第2のモデルを対応付けて記憶する記憶手段と、
現実物体を検出する現実物体検出手段と、
前記現実物体検出手段で検出された現実物体の位置と、前記第1のモデルの位置とが所定距離内にあるか判定する判定手段と、
前記判定手段で、前記現実物体の位置と前記第1のモデルの位置とが所定距離内にあると判定された場合に、前記第1のモデルに対応する前記第2のモデルを特定する特定手段と、
前記特定手段で特定された第2のモデルの空間上の位置姿勢を、前記現実物体の位置姿勢に従って決定する決定手段と、
前記検出手段で検出された現実物体が所定の動きをしたことを検知する動き検知手段と、
前記動き検知手段で当該現実物体が所定の動きをしたと検知した場合に、当該所定の動きをしている現実物体又は当該現実物体の位置姿勢に応じて前記決定手段で位置姿勢が決定された前記第2のモデルが、他の3次元モデルに接触したか判定する接触判定手段と、
前記接触判定手段で接触したと判定された場合に、当該接触した旨を示す情報を前記表示装置の表示画面に表示すべく制御する表示制御手段と、
を備えることを特徴とする情報処理システム。
An information processing system including a display device that displays a composite real image in which a real image and a three-dimensional model are superimposed based on the position and orientation of the three-dimensional model in space, and an information processing device that stores the position and orientation of the three-dimensional model. And
Among the three-dimensional models, a storage means for storing the first model to be worked on and the second model indicating a tool for performing work on the first model in association with each other.
Real object detection means for detecting real objects and
A determining means for determining whether the position of the real object detected by the real object detecting means and the position of the first model are within a predetermined distance.
Specific means for identifying the second model corresponding to the first model when the determination means determines that the position of the real object and the position of the first model are within a predetermined distance. When,
A determination means for determining the position and orientation of the second model in space specified by the specific means according to the position and orientation of the real object.
A motion detecting means for detecting that a real object detected by the detecting means has made a predetermined movement,
When the motion detecting means detects that the real object has made a predetermined movement, the position / orientation is determined by the determining means according to the position / orientation of the real object making the predetermined movement or the real object. A contact determination means for determining whether the second model has contacted another three-dimensional model,
A display control means that controls to display information indicating the contact on the display screen of the display device when it is determined that the contact is made by the contact determination means.
An information processing system characterized by being equipped with.
JP2020121313A 2020-07-15 2020-07-15 Information processing device, information processing system, control method therefor, and program Pending JP2020187778A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020121313A JP2020187778A (en) 2020-07-15 2020-07-15 Information processing device, information processing system, control method therefor, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020121313A JP2020187778A (en) 2020-07-15 2020-07-15 Information processing device, information processing system, control method therefor, and program

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2015239856A Division JP6738007B2 (en) 2015-12-09 2015-12-09 Information processing apparatus, information processing system, control method thereof, and program

Publications (2)

Publication Number Publication Date
JP2020187778A true JP2020187778A (en) 2020-11-19
JP2020187778A5 JP2020187778A5 (en) 2021-04-15

Family

ID=73221919

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020121313A Pending JP2020187778A (en) 2020-07-15 2020-07-15 Information processing device, information processing system, control method therefor, and program

Country Status (1)

Country Link
JP (1) JP2020187778A (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007004713A (en) * 2005-06-27 2007-01-11 Canon Inc Image processing method and image processor
JP2007179483A (en) * 2005-12-28 2007-07-12 Canon Inc Unit and method for information processing
JP2007293413A (en) * 2006-04-21 2007-11-08 Canon Inc Information processing method and apparatus
JP2008123061A (en) * 2006-11-08 2008-05-29 Canon Inc Force sense presentation device and mixed reality system
JP2009266221A (en) * 2008-04-21 2009-11-12 Mori Seiki Co Ltd Machining simulation method and machining simulation apparatus
JP2010079366A (en) * 2008-09-24 2010-04-08 Mazda Motor Corp Vehicle design support system
JP2015049548A (en) * 2013-08-29 2015-03-16 キヤノンマーケティングジャパン株式会社 Information processor, control method therefor and program
JP2017010387A (en) * 2015-06-24 2017-01-12 キヤノン株式会社 System, mixed-reality display device, information processing method, and program

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007004713A (en) * 2005-06-27 2007-01-11 Canon Inc Image processing method and image processor
JP2007179483A (en) * 2005-12-28 2007-07-12 Canon Inc Unit and method for information processing
JP2007293413A (en) * 2006-04-21 2007-11-08 Canon Inc Information processing method and apparatus
JP2008123061A (en) * 2006-11-08 2008-05-29 Canon Inc Force sense presentation device and mixed reality system
JP2009266221A (en) * 2008-04-21 2009-11-12 Mori Seiki Co Ltd Machining simulation method and machining simulation apparatus
JP2010079366A (en) * 2008-09-24 2010-04-08 Mazda Motor Corp Vehicle design support system
JP2015049548A (en) * 2013-08-29 2015-03-16 キヤノンマーケティングジャパン株式会社 Information processor, control method therefor and program
JP2017010387A (en) * 2015-06-24 2017-01-12 キヤノン株式会社 System, mixed-reality display device, information processing method, and program

Similar Documents

Publication Publication Date Title
JP6738007B2 (en) Information processing apparatus, information processing system, control method thereof, and program
JP6978701B2 (en) Information processing system, its control method, and program, and information processing device, its control method, and program.
JP6730642B2 (en) Information processing apparatus, information processing system, control method thereof, and program
JP4434890B2 (en) Image composition method and apparatus
US7589747B2 (en) Mixed reality space image generation method and mixed reality system
US7440691B2 (en) 360-° image photographing apparatus
US7542051B2 (en) Calibration method and apparatus
JP2015125641A (en) Information processing device, control method therefor, and program
US10424122B2 (en) Augmented reality simulation device which displays a virtual object on a machine tool and computer-readable medium
JP6920057B2 (en) Image processing equipment, image processing method, computer program
JP6160290B2 (en) Information processing apparatus, determination method, and determination program
KR102104326B1 (en) Maintenance training system and method based on augmented reality
JP6677890B2 (en) Information processing system, its control method and program, and information processing apparatus, its control method and program
JP6730577B2 (en) Information processing apparatus, information processing system, control method thereof, and program
JP6364389B2 (en) Inspection method and inspection system
JP6725827B2 (en) Information processing apparatus, information processing system, control method thereof, and program
JP2018022242A (en) Composite system and target marker
US20160357880A1 (en) Computer-readable storage medium, design apparatus, and design method
JP2020187778A (en) Information processing device, information processing system, control method therefor, and program
JP6152888B2 (en) Information processing apparatus, control method and program thereof, and information processing system, control method and program thereof
JP6683919B2 (en) Information processing apparatus, information processing system, control method thereof, and program
JP7078834B2 (en) Information processing equipment, information processing system, its control method and program
JP7279113B2 (en) IMAGE PROCESSING APPARATUS, IMAGE PROCESSING METHOD, COMPUTER PROGRAM
JP7029087B2 (en) Information processing equipment, information processing system, its control method and program
WO2021176645A1 (en) Machine fastening work method using augmented reality

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200806

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210204

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210422

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210427

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210625

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211109

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20220426