JP2024055512A - Display method and system - Google Patents

Display method and system Download PDF

Info

Publication number
JP2024055512A
JP2024055512A JP2022162511A JP2022162511A JP2024055512A JP 2024055512 A JP2024055512 A JP 2024055512A JP 2022162511 A JP2022162511 A JP 2022162511A JP 2022162511 A JP2022162511 A JP 2022162511A JP 2024055512 A JP2024055512 A JP 2024055512A
Authority
JP
Japan
Prior art keywords
energy
reference position
information
display method
user
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
JP2022162511A
Other languages
Japanese (ja)
Inventor
契 宇都木
貴之 藤原
洋輝 大橋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2022162511A priority Critical patent/JP2024055512A/en
Priority to PCT/JP2023/036404 priority patent/WO2024075817A1/en
Publication of JP2024055512A publication Critical patent/JP2024055512A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/38Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory with means for controlling the display position

Abstract

Figure 2024055512000001

【課題】情報の配置を簡便に決定できる。
【解決手段】表示方法は、三次元空間内の親物体に関連付けられた登録情報を親物体とともに観察者の主観視点で表示する表示方法であって、1または複数の観察者のそれぞれの視点位置において、登録情報の配置に適した領域を示す二次元平面に関するデータであるエネルギーマップを1または複数作成するエネルギーマップ生成処理と、エネルギーマップにおいて、第一の位置に比してエネルギーが低い第二の位置に登録情報を表示する基準位置を設定する基準位置決定処理と、親物体および基準位置を含む領域に描画される登録情報を観察者の主観視点で描画する描画処理と、を含む。
【選択図】図1

Figure 2024055512000001

The arrangement of information can be easily determined.
[Solution] The display method displays registration information associated with a parent object in three-dimensional space together with the parent object from the subjective viewpoint of an observer, and includes an energy map generation process that creates one or more energy maps, which are data on two-dimensional planes that indicate areas suitable for placing the registration information, at the respective viewpoint positions of one or more observers, a reference position determination process that sets a reference position for displaying the registration information at a second position in the energy map that has lower energy than the first position, and a drawing process that draws the registration information drawn in an area including the parent object and the reference position from the subjective viewpoint of the observer.
[Selected Figure] Figure 1

Description

本発明は、表示方法、および表示システムに関する。 The present invention relates to a display method and a display system.

三次元空間内の物体と情報を同時に閲覧する構成が広く知られている。特許文献1には、表示領域に表示されるコンテンツ画像に含まれるオブジェクトに関連するテキスト情報で表される文字列の表示を制御する制御部を備え、前記制御部は、前記表示領域に対する前記オブジェクトの位置に基づいて、前記表示領域において前記文字列が配置される配置領域を決定する情報処理装置が開示されている。 Configurations for simultaneously viewing objects and information in a three-dimensional space are widely known. Patent Document 1 discloses an information processing device that includes a control unit that controls the display of a character string represented by text information related to an object included in a content image displayed in a display area, and the control unit determines a placement area in the display area in which the character string is placed based on the position of the object relative to the display area.

国際公開第2019/181488号International Publication No. 2019/181488

特許文献1に記載されている発明では、情報の表示位置の決定方法に改善の余地がある。 The invention described in Patent Document 1 leaves room for improvement in the method for determining the display position of information.

本発明の第1の態様による表示方法は、三次元空間内の親物体に関連付けられた登録情報を前記親物体とともに観察者の主観視点で表示する表示方法であって、1または複数の前記観察者のそれぞれの視点位置において、前記登録情報の配置に適した領域を示す二次元平面に関するデータであるエネルギーマップを1または複数作成するエネルギーマップ生成処理と、前記エネルギーマップにおいて、第一の位置に比してエネルギーが低い第二の位置に前記登録情報を表示する基準位置を設定する基準位置決定処理と、前記親物体および前記基準位置を含む領域に描画される前記登録情報を前記観察者の主観視点で描画する描画処理と、を含む。
本発明の第2の態様による表示システムは、三次元空間内の親物体に関連付けられた登録情報を前記親物体とともに観察者の主観視点で表示する表示システムであって、1または複数の前記観察者のそれぞれの視点位置において、前記登録情報の配置に適した領域を示す二次元平面に関するデータであるエネルギーマップを1または複数作成するエネルギーマップ生成部と、前記エネルギーマップにおいて、第一の位置に比してエネルギーが低い第二の位置に前記登録情報を表示する基準位置を設定する基準位置決定部と、前記親物体および前記基準位置を含む領域に描画される前記登録情報を前記観察者の主観視点で描画する映像生成部と、を含む表示方法。
A display method according to a first aspect of the present invention is a display method for displaying registration information associated with a parent object in a three-dimensional space together with the parent object from an observer's subjective viewpoint, and includes an energy map generation process for creating one or more energy maps, which are data on a two-dimensional plane indicating an area suitable for arranging the registration information, at each of the viewpoint positions of one or more of the observers, a reference position determination process for setting a reference position for displaying the registration information at a second position in the energy map having lower energy than a first position, and a drawing process for drawing the registration information drawn in an area including the parent object and the reference position from the observer's subjective viewpoint.
A display system according to a second aspect of the present invention is a display system that displays registration information associated with a parent object in a three-dimensional space together with the parent object from an observer's subjective viewpoint, and includes: an energy map generation unit that creates one or more energy maps, which are data on a two-dimensional plane that indicates an area suitable for arranging the registration information, at each viewpoint position of one or more of the observers; a reference position determination unit that sets a reference position for displaying the registration information at a second position in the energy map that has lower energy than a first position; and an image generation unit that renders the registration information drawn in an area including the parent object and the reference position from the observer's subjective viewpoint.

本発明によれば、情報の配置を簡便に決定できる。 The present invention makes it easy to determine the placement of information.

情報提示システムの全体構成図Overall configuration of the information presentation system 物体テーブルの一例を示す図FIG. 1 shows an example of an object table. 情報テーブルおよびユーザテーブルの一例を示す図FIG. 1 is a diagram showing an example of an information table and a user table. サーバおよびクライアントを代表する演算装置のハードウエア構成図Hardware configuration diagram of a computing device representing a server and a client エネルギー画像の説明の前提となる状況設定を説明する図A diagram explaining the situational setting that is the premise for explaining energy images. エネルギー画像を説明する図Diagram explaining energy images 情報配置部の処理を示すフローチャートFlowchart showing the process of the information placement unit エネルギー画像生成処理を示すフローチャートFlowchart showing energy image generation processing 基準位置決定処理を示すフローチャートFlowchart showing reference position determination processing 個別ベクトル算出処理を示すフローチャートFlowchart showing individual vector calculation processing 評価エネルギー算出処理を示すフローチャートFlowchart showing the evaluation energy calculation process 変形例1における情報提示システムの全体構成図Overall configuration diagram of an information presentation system according to a first modified example 変形例2における情報提示システムの全体構成図Overall configuration diagram of an information presentation system according to a second modified example 第2の実施の形態における情報提示システムの全体構成図1 is a diagram showing an overall configuration of an information presentation system according to a second embodiment of the present invention; 作業者の様子を示す図A diagram showing the worker 作業者の頭部を示す図Diagram showing the worker's head 第2の実施の形態における情報提示システムの処理の概要を示すフローチャート11 is a flowchart showing an overview of a process performed by an information presentation system according to a second embodiment of the present invention. 作業記録テーブルの一例を示す図FIG. 13 is a diagram showing an example of a work record table. 画像テーブルおよび音声テーブルの一例を示す図FIG. 1 shows an example of an image table and an audio table. 手順テーブルおよび作業姿勢テーブルの一例を示す図FIG. 1 shows an example of a procedure table and a work posture table. 記録部および事後分析部の詳細構成図Detailed configuration diagram of the recording section and post-mortem analysis section リスク判断プログラムによるリスク算出処理を示すフローチャートA flowchart showing a risk calculation process by a risk judgment program. 第2の実施の形態の閲覧フェーズにおける登録情報の表示を示す図FIG. 13 is a diagram showing a display of registration information in a browsing phase according to the second embodiment; 表示テンプレートの一例を示す図A diagram showing an example of a display template 作業者の背後からの視点で見たリプレイ説明映像を示す図A diagram showing the replay explanation video seen from behind the worker 作業者の側面からの視点で見たリプレイ説明映像を示す図A diagram showing the replay explanation video from the worker's side perspective. 第3の実施の形態における情報提示システムの処理概要を示すフローチャート13 is a flowchart showing an outline of a process performed by an information presentation system according to a third embodiment.

―第1の実施の形態―
以下、図1~図11を参照して、表示方法の第1の実施の形態を説明する。
-First embodiment-
A first embodiment of the display method will be described below with reference to FIGS.

本実施の形態では、一人称視点で仮想空間を閲覧する場合における情報の提示方法を説明する。ただし後述する変形例に示すように、いわゆる拡張現実と呼ばれる、現実世界の映像にコンピュータ画像を重畳する場合にも有効である。また本実施の形態では、ユーザに提示する情報である登録情報は情報提示ウィンドウと呼ぶ領域に表示する。ただしこの名称は便宜的なものであり、ウィンドウは透過させて登録情報のみを表示してもよい。また説明の便宜のために情報提示ウィンドウは矩形として説明するが、多角形や楕円形でもよい。 In this embodiment, a method of presenting information when viewing a virtual space from a first-person perspective is described. However, as shown in a modified example described later, this is also effective in cases where a computer image is superimposed on a real-world image, a so-called augmented reality. In this embodiment, the registration information presented to the user is displayed in an area called an information presentation window. However, this name is for convenience, and the window may be made transparent to display only the registration information. For ease of explanation, the information presentation window is described as rectangular, but it may also be polygonal or elliptical.

(全体構成)
図1は、情報提示システム1の全体構成図である。情報提示システム1は、サーバ10と、1または複数のクライアント20と、を含む。サーバ10とそれぞれのクライアント20は、無線または有線のネットワークにより接続される。サーバ10とクライアント20との距離は不問であり、たとえば同一の部屋にあってもよいし数千km離れていてもよい。クライアント20同士の距離も不問である。なお図1ではクライアント202を3つ記載しユーザUを一人のみ記載しているが、情報提示システム1に含まれるクライアント20およびユーザUの数に制限はない。クライアント20とユーザUは情報提示システム1に同じ数だけ含まれる。なお以下では、ユーザUを「観察者」とも呼ぶ。
(overall structure)
FIG. 1 is an overall configuration diagram of an information presentation system 1. The information presentation system 1 includes a server 10 and one or more clients 20. The server 10 and each client 20 are connected by a wireless or wired network. The distance between the server 10 and the clients 20 does not matter, and they may be in the same room or several thousand km apart. The distance between the clients 20 does not matter either. Although three clients 202 and only one user U are shown in FIG. 1, there is no limit to the number of clients 20 and users U included in the information presentation system 1. The same number of clients 20 and users U are included in the information presentation system 1. In the following, the user U is also called an "observer."

それぞれのクライアント20は、入力装置961および映像表示装置962を使用する個別のユーザUにより使用される。ユーザUは、サーバ10が生成する仮想空間(以下、「特定空間」とも呼ぶ)を自由に移動して閲覧する。すなわちサーバ10は、ユーザUごとの視点、すなわちユーザUの一人称視点における仮想空間の映像を生成して各クライアント20に送信する。クライアント20は、ユーザUによる移動指令および視点操作指令をサーバ10に送信する。サーバ10は、クライアント20から送信される移動指令および視点操作指令に基づき各ユーザの位置および視線方向を更新し、更新後の視点に対応する仮想空間の映像を生成して各クライアント20に送信する。 Each client 20 is used by an individual user U who uses an input device 961 and an image display device 962. The user U freely moves around and views the virtual space (hereinafter also referred to as a "specific space") generated by the server 10. That is, the server 10 generates an image of the virtual space from the viewpoint of each user U, i.e., the first-person viewpoint of the user U, and transmits it to each client 20. The client 20 transmits movement commands and viewpoint operation commands by the user U to the server 10. The server 10 updates the position and line of sight of each user based on the movement commands and viewpoint operation commands transmitted from the client 20, and generates an image of the virtual space corresponding to the updated viewpoint and transmits it to each client 20.

サーバ10は、テーブル更新部11と、情報配置部12と、映像生成部13と、記憶装置14とを備える。記憶装置14には、物体テーブル1000、情報テーブル1100、およびユーザテーブル1200が格納される。記憶装置14に格納されるデータは、ユーザテーブル1200における視点位置1204および視線方向1205を除き、すべて予め記録されたものである。テーブル更新部11は、クライアント20から送信される移動指令および視線操作指令に基づきユーザテーブル1200を更新する。 The server 10 comprises a table update unit 11, an information placement unit 12, an image generation unit 13, and a storage device 14. An object table 1000, an information table 1100, and a user table 1200 are stored in the storage device 14. All data stored in the storage device 14 is pre-recorded, except for the viewpoint position 1204 and line of sight direction 1205 in the user table 1200. The table update unit 11 updates the user table 1200 based on movement commands and line of sight operation commands sent from the client 20.

情報配置部12は、情報テーブル1100に格納されている登録情報を仮想空間に配置する。情報配置部12は、エネルギーマップ生成部12aおよび基準位置決定部12bを含む。情報配置部12の詳しい動作は後述する。映像生成部13は、ユーザUごとの視点位置および視線方向に基づき、仮想空間の映像を生成してそれぞれのクライアント20に送信する。 The information placement unit 12 places the registration information stored in the information table 1100 in the virtual space. The information placement unit 12 includes an energy map generation unit 12a and a reference position determination unit 12b. The detailed operation of the information placement unit 12 will be described later. The image generation unit 13 generates an image of the virtual space based on the viewpoint position and line of sight direction of each user U and transmits it to each client 20.

記憶装置14は、ハードディスクドライブなどの不揮発性の情報記憶装置である。物体テーブル1000には、仮想空間内に存在する物体の位置、大きさ、および外観などのデータが格納される。物体テーブル1000に格納されたデータは、映像生成部13により読み込まれる。情報テーブル1100には、仮想空間内の様々な情報が登録情報として格納される。情報テーブル1100に格納されたデータは、情報配置部12により仮想空間に配置された場合に映像生成部13により読み込まれる。すなわち、物体テーブル1000に格納されたデータは各ユーザUの視界に入っていれば、映像生成部13のレンダリング処理に用いられる。 The storage device 14 is a non-volatile information storage device such as a hard disk drive. The object table 1000 stores data such as the position, size, and appearance of objects that exist in the virtual space. The data stored in the object table 1000 is read by the image generation unit 13. The information table 1100 stores various pieces of information in the virtual space as registered information. The data stored in the information table 1100 is read by the image generation unit 13 when it is placed in the virtual space by the information placement unit 12. In other words, if the data stored in the object table 1000 is within the field of view of each user U, it is used for the rendering process of the image generation unit 13.

ユーザテーブル1200には、ユーザUごとの仮想空間における外見であるアバターや、視点位置、および視点方向などのデータが格納される。ユーザテーブル1200における視点位置および視点方向は、テーブル更新部11により適宜更新される。なおユーザUの視野角は所定の固定値を採用するので、視点位置および視点方向からユーザUの視野は算出できる。物体テーブル1000、情報テーブル1100、およびユーザテーブル1200の具体例は後述する。 The user table 1200 stores data such as an avatar, which is the appearance in the virtual space for each user U, and the viewpoint position and viewpoint direction. The viewpoint position and viewpoint direction in the user table 1200 are updated as appropriate by the table update unit 11. Note that a predetermined fixed value is adopted as the viewing angle of the user U, so that the field of view of the user U can be calculated from the viewpoint position and viewpoint direction. Specific examples of the object table 1000, the information table 1100, and the user table 1200 will be described later.

クライアント20は、指令送信部21と、映像出力部22とを備える。指令送信部21は、ユーザUが操作する入力装置961の出力に基づき、移動指令および視線操作指令をサーバ10に送信する。映像出力部22は、サーバ10から仮想空間の映像を受信し、受信した映像を入力装置961に出力する。 The client 20 includes a command transmission unit 21 and a video output unit 22. The command transmission unit 21 transmits movement commands and gaze operation commands to the server 10 based on the output of an input device 961 operated by the user U. The video output unit 22 receives an image of the virtual space from the server 10 and outputs the received image to the input device 961.

ユーザUは、入力装置961および映像表示装置962を操作する。入力装置961は、仮想空間におけるユーザUの移動および視線の操作指令をクライアント20に送信する。入力装置961は、マウスとキーボードの組み合わせ、ジョイスティック、または外部カメラおよび演算器である。マウスとキーボードを用いる場合には、ユーザUがキーボードの所定のキーを押下すると前後左右の移動指令がクライアント20に出力され、ユーザUがマウスを操作することにより視線の移動を指令がクライアント20に出力される。ジョイスティックを用いる場合には、ジョイスティックに備えられる2つのアナログスティックの傾き方向により、移動指令および視線の移動がクライアント20に出力される。 The user U operates the input device 961 and the image display device 962. The input device 961 transmits operation commands for the user U's movement and gaze in the virtual space to the client 20. The input device 961 is a combination of a mouse and keyboard, a joystick, or an external camera and computing unit. When a mouse and keyboard are used, when the user U presses a specific key on the keyboard, a command to move forward, backward, left, or right is output to the client 20, and when the user U operates the mouse, a command to move the gaze is output to the client 20. When a joystick is used, the movement command and gaze movement are output to the client 20 depending on the tilt direction of the two analog sticks provided on the joystick.

外部カメラおよび演算器を用いる場合には、ユーザUの動きを観察するカメラがユーザUの移動およびユーザUの頭部の動きを認識して、移動指令および視線の移動がクライアント20に出力される。なおこの場合はカメラはユーザUと一体に取り付けられてもよいし、ユーザUを撮影可能な位置に固定されてもよい。映像表示装置962はたとえば、据え置き型の液晶ディスプレイ、またはヘッドマウントディスプレイである。なおここで説明した演算器の機能をクライアント20に実現させてもよい。 When an external camera and computing unit are used, the camera observing the movements of user U recognizes the movements of user U and the movements of the user U's head, and movement commands and gaze movements are output to client 20. In this case, the camera may be attached integrally to user U, or may be fixed in a position where it can capture an image of user U. The image display device 962 is, for example, a stationary liquid crystal display or a head-mounted display. The functions of the computing unit described here may be realized by client 20.

(テーブル)
図2は、物体テーブル1000の一例を示す図である。物体テーブル1000は複数のレコードを有し、各レコードは要素モデルID1001、3Dモデルデータ1002、物品名称1003、バウンディングボックス1004、中心位置1005、重要度1006、関連キーワードタグ1007、および保存情報ID1008のフィールドを有する。要素モデルID1001には物体に固有の識別子である要素モデルIDが格納される。3Dモデルデータ1002には、物品の3Dモデルが保存されている場所を示すURIが格納される。物品名称1003には物体の名称が格納される。すなわち、物体テーブル1000において物品名称1003が同一のレコードが複数存在する場合はあるが、要素モデルID1001が同一のレコードは存在しない。
(table)
2 is a diagram showing an example of an object table 1000. The object table 1000 has a plurality of records, and each record has fields of an element model ID 1001, 3D model data 1002, an item name 1003, a bounding box 1004, a center position 1005, an importance 1006, a related keyword tag 1007, and a saved information ID 1008. The element model ID 1001 stores an element model ID that is an identifier unique to an object. The 3D model data 1002 stores a URI indicating a location where a 3D model of the object is saved. The item name 1003 stores a name of the object. That is, although there may be a plurality of records with the same item name 1003 in the object table 1000, there are no records with the same element model ID 1001.

バウンディングボックス1004には、物体を内包する直方体領域の対角である2つの三次元座標が格納される。中心位置1005には、物体の中心位置である三次元座標が格納される。重要度1006には、物体の重要度が格納される。なお本実施の形態では、重要度1006は整数値で表しており数値が大きいほど重要であることを示すが、重要度1006は「A」、「B」、「C」などのランク分け結果でもよい。関連キーワードタグ1007には、物体に関連するキーワードが格納される。関連保存情報ID1007には、物体に関連する保存情報の識別子である保存情報IDが格納される。 The bounding box 1004 stores two three-dimensional coordinates that are diagonals of a rectangular parallelepiped region that contains the object. The center position 1005 stores the three-dimensional coordinates that are the center position of the object. The importance 1006 stores the importance of the object. Note that in this embodiment, the importance 1006 is expressed as an integer value, with a larger value indicating greater importance, but the importance 1006 may also be a ranking result such as "A", "B", or "C". The related keyword tag 1007 stores keywords related to the object. The related saved information ID 1007 stores a saved information ID that is an identifier for saved information related to the object.

図3は、情報テーブル1100およびユーザテーブル1200の一例を示す図である。情報テーブル1100は複数のレコードを有し、各レコードは保存情報ID1101、重要度1102、テンプレートID1103、キーワードリスト1104、説明文1105、画像1106、関連保存情報1107、および親モデルID1108のフィールドを有する。保存情報ID1101には、登録情報の識別子が格納される。重要度1102には、登録情報の重要度が格納される。 Figure 3 shows an example of the information table 1100 and the user table 1200. The information table 1100 has multiple records, and each record has fields for a saved information ID 1101, importance 1102, template ID 1103, keyword list 1104, description 1105, image 1106, related saved information 1107, and parent model ID 1108. The saved information ID 1101 stores an identifier for registered information. The importance 1102 stores the importance of the registered information.

テンプレートID1103には、登録情報を表示する際のテンプレートの識別子が格納される。キーワードリスト1104には、登録情報に関するキーサイトが格納される。説明文1105には、登録情報を説明する文章が格納される。画像1106には、登録情報に関連する画像が保存されている場所を示すURIが格納される。関連保存情報1107には、その登録情報に関連する他の登録情報の保存情報IDが格納される。親モデルID1108には、登録情報が関連付けられた物体の要素モデルID1001が格納される。 Template ID 1103 stores the identifier of the template when displaying the registered information. Keyword list 1104 stores key sites related to the registered information. Description 1105 stores text that explains the registered information. Image 1106 stores a URI indicating the location where an image related to the registered information is saved. Related saved information 1107 stores the saved information ID of other registered information related to that registered information. Parent model ID 1108 stores the element model ID 1001 of the object with which the registered information is associated.

ユーザテーブル1200は複数のレコードを有し、各レコードはユーザID1201、ユーザ名1202、アバターモデル1203、視点位置1204、視線方向1205、および奥行き嗜好1206のフィールドを有する。ユーザID1201には、ユーザを識別する識別子が格納される。ユーザ名1202には、ユーザの名称が格納される。アバターモデル1203には、ユーザの外見を示す3Dモデルが保存されている場所を示すURIが格納される。視点位置1204には、ユーザの最新の視点位置を示す三次元座標が格納される。視線方向1205には、ユーザUの最新の視線方向をしめすデータ、たとえば所定の姿勢を基準とするヨー角、ロール角、およびピッチ角が格納される。奥行き嗜好1206には、それぞれのユーザUが情報の表示を好む距離が格納される。 The user table 1200 has multiple records, and each record has fields for a user ID 1201, a user name 1202, an avatar model 1203, a viewpoint position 1204, a line of sight direction 1205, and a depth preference 1206. The user ID 1201 stores an identifier for identifying the user. The user name 1202 stores the name of the user. The avatar model 1203 stores a URI indicating the location where a 3D model showing the user's appearance is saved. The viewpoint position 1204 stores three-dimensional coordinates indicating the user's latest viewpoint position. The line of sight direction 1205 stores data indicating the latest line of sight direction of the user U, such as the yaw angle, roll angle, and pitch angle based on a specified posture. The depth preference 1206 stores the distance at which each user U prefers to display information.

(ハードウエア構成)
図4は、サーバ10およびクライアント20を代表する演算装置40のハードウエア構成図である。サーバ10およびクライアント20のハードウエア構成は必ずしも同一ではないが、サーバ10およびクライアント20は以下に説明する演算装置40のハードウエアを備える点は共通する。演算装置40は、中央演算装置であるCPU41、読み出し専用の記憶装置であるROM42、読み書き可能な記憶装置であるRAM43、ユーザインタフェースとの接点である入出力インタフェース44、および通信装置45を備える。CPU41がROM42に格納されるプログラムをRAM43に展開して実行することで様々な演算を行う。
(Hardware configuration)
4 is a hardware configuration diagram of a computing device 40 representing the server 10 and the client 20. Although the hardware configurations of the server 10 and the client 20 are not necessarily the same, the server 10 and the client 20 have in common the hardware of the computing device 40 described below. The computing device 40 includes a CPU 41 which is a central processing unit, a ROM 42 which is a read-only storage device, a RAM 43 which is a readable and writable storage device, an input/output interface 44 which is a contact point with a user interface, and a communication device 45. The CPU 41 loads a program stored in the ROM 42 into the RAM 43 and executes it to perform various calculations.

演算装置40は、CPU41、ROM42、およびRAM43の組み合わせの代わりに書き換え可能な論理回路であるFPGA(Field Programmable Gate Array)や特定用途向け集積回路であるASIC(Application Specific Integrated Circuit)により実現されてもよい。また演算装置40は、CPU41、ROM42、およびRAM43の組み合わせの代わりに、異なる構成の組み合わせ、たとえばCPU41、ROM42、RAM43とFPGAの組み合わせにより実現されてもよい。 The arithmetic unit 40 may be realized by a field programmable gate array (FPGA), which is a rewritable logic circuit, or an application specific integrated circuit (ASIC), which is an integrated circuit for a specific application, instead of the combination of the CPU 41, ROM 42, and RAM 43. The arithmetic unit 40 may also be realized by a combination of different configurations, for example, a combination of the CPU 41, ROM 42, RAM 43, and an FPGA, instead of the combination of the CPU 41, ROM 42, and RAM 43.

入出力インタフェース44は、汎用の通信ポートおよび映像信号出力装置であり様々な周辺機器が接続できる。入出力インタフェース44にはたとえば、マウス、キーボード、ジョイスティック、カメラ、ディスプレイなどが接続できる。通信装置45は、たとえばIEEE802.3やIEEE802.11に対応する通信モジュールである。サーバ10のテーブル更新部11および情報配置部12は、CPU41が実行するプログラムにより実現される。映像生成部13は、CPU41が実行するプログラムおよび通信装置45により実現される。クライアント20の指令送信部21は、CPU41が実行するプログラム、入出力インタフェース44、および通信装置45により実現される。映像出力部22も同様に、CPU41が実行するプログラム、入出力インタフェース44、および通信装置45により実現される。 The input/output interface 44 is a general-purpose communication port and video signal output device to which various peripheral devices can be connected. For example, a mouse, keyboard, joystick, camera, display, etc. can be connected to the input/output interface 44. The communication device 45 is a communication module compatible with, for example, IEEE802.3 or IEEE802.11. The table update unit 11 and information placement unit 12 of the server 10 are realized by a program executed by the CPU 41. The video generation unit 13 is realized by a program executed by the CPU 41 and the communication device 45. The command transmission unit 21 of the client 20 is realized by a program executed by the CPU 41, the input/output interface 44, and the communication device 45. Similarly, the video output unit 22 is realized by a program executed by the CPU 41, the input/output interface 44, and the communication device 45.

(エネルギー画像)
図5および図6を参照してエネルギー画像を説明する。具体的には、図5はエネルギー画像の説明の前提となる状況設定を説明する図であり、図6はエネルギー画像を説明する図である。図5では、仮想空間におけるユーザuの視線の先に物体901が配され、左側方に物体902が配されている。また、物体901の右側方には物体901に関する情報が提示されている情報提示ウィンドウ904が配されている。なお図5では、破線は仮想空間におけるユーザuの視野を示している。この場合に映像生成部13は、仮想空間におけるユーザuの主観視点で図5の下部に示す場面画像905を生成した。この場面画像905が生成された直後に、情報配置部12が情報提示ウィンドウ904に関連する別の情報提示ウィンドウを配置する状況を想定し、次の図6を参照してエネルギー画像を説明する。
(Energy image)
The energy image will be described with reference to Fig. 5 and Fig. 6. Specifically, Fig. 5 is a diagram for explaining a situation setting that is a premise for explaining the energy image, and Fig. 6 is a diagram for explaining the energy image. In Fig. 5, an object 901 is arranged in front of the line of sight of the user u in the virtual space, and an object 902 is arranged on the left side. Also, an information presentation window 904 in which information related to the object 901 is presented is arranged on the right side of the object 901. In Fig. 5, the dashed line indicates the field of view of the user u in the virtual space. In this case, the image generation unit 13 generated the scene image 905 shown in the lower part of Fig. 5 from the subjective viewpoint of the user u in the virtual space. Assuming a situation in which the information placement unit 12 places another information presentation window related to the information presentation window 904 immediately after this scene image 905 is generated, the energy image will be described with reference to the next Fig. 6.

エネルギー画像80は、それぞれのユーザUの視点において、次に情報提示ウィンドウを表示する位置を決める計算に用いる画像である。エネルギー画像80は、格子状の各領域のデータの集合体である。ただしエネルギー画像は便宜的に「画像」と呼んでいるにすぎず、ビットマップやJPEGなどの画像ファイルそのものでなくてよい。エネルギー画像80は「エネルギーマップ」とも呼ぶことができる。本実施の形態では、エネルギー画像の各画素はたとえば-100~+100の値を有する。各画素の数値を「エネルギー量」と呼ぶ。エネルギー画像は、画素の数値が小さいほど、すなわちエネルギー量が低いほど情報提示ウィンドウの配置に適していることを示す。たとえば、エネルギー量がゼロの位置よりもエネルギー量が-10の位置の方が情報提示ウィンドウの配置に適している。 The energy image 80 is an image used in calculations to determine the position at which the next information presentation window will be displayed from the viewpoint of each user U. The energy image 80 is a collection of data for each grid-like region. However, the energy image is merely called an "image" for convenience, and does not have to be an image file such as a bitmap or JPEG. The energy image 80 can also be called an "energy map." In this embodiment, each pixel in the energy image has a value of, for example, -100 to +100. The numerical value of each pixel is called the "energy amount." The energy image indicates that the smaller the pixel's numerical value, i.e., the lower the energy amount, the more suitable it is for arranging an information presentation window. For example, a position with an energy amount of -10 is more suitable for arranging an information presentation window than a position with an energy amount of zero.

エネルギー画像80は、物体マップ81と、対象物マップ82と、調整マップ83と、に基づいて作成される。図6では、特に色がない領域は初期値のゼロを示し、正の値を斜線のハッチングで示し、負の値を点群のハッチングで示す。なお点群のハッチングは、「点の塗りつぶし」や「ドットハッチング」とも呼ばれる。エネルギー画像80、物体マップ81、対象物マップ82、および調整マップ83のピクセル数は同一である。 The energy image 80 is created based on the object map 81, the target map 82, and the adjustment map 83. In FIG. 6, areas without color indicate the initial value of zero, positive values are indicated by diagonal hatching, and negative values are indicated by point cloud hatching. Note that point cloud hatching is also called "point filling" or "dot hatching." The number of pixels in the energy image 80, the object map 81, the target map 82, and the adjustment map 83 are the same.

物体マップ81は、視界に存在する物体であって重要度が所定の閾値よりも高い物体の存在領域に正の大きな値が設定されたマップである。ただしここで言う物体には、既存の情報提示ウィンドウも含まれる。図6に示す物体マップ81は、場面画像905において各物体が配されていた位置に大きなプラスの値が設定される。物体マップ81は正のエネルギー量を定義しているので、新たに配置される情報提示ウィンドウは、物体マップ81で設定された領域を避けて配置される。 The object map 81 is a map in which a large positive value is set in the area where an object that is present in the field of view and has an importance higher than a predetermined threshold value is present. However, the objects referred to here also include existing information presentation windows. In the object map 81 shown in FIG. 6, a large positive value is set in the position where each object was located in the scene image 905. Since the object map 81 defines a positive amount of energy, a newly placed information presentation window is placed so as to avoid the area set in the object map 81.

対象物マップ82は、新に配置する情報提示ウィンドウが関連する物体にマイナスの値が設定されたマップである。たとえば、関連する物体の中央を中心とし、その物体を包含する真円または楕円にマイナスの値を設定する。なお、図6に示す対象物マップ82における星印は、物体901の中央を示す。対象物マップ82により、新たな情報提示ウィンドウは関連する物体の近くに配置される。 The object map 82 is a map in which a negative value is set for an object to which a newly placed information presentation window is related. For example, a negative value is set for a perfect circle or ellipse that is centered on the center of the related object and that contains the object. Note that the star in the object map 82 shown in Figure 6 indicates the center of the object 901. The object map 82 allows the new information presentation window to be placed near the related object.

調整マップ83は、新たな情報提示ウィンドウが既存の他の情報提示ウィンドウに関連する場合に設定される。調整マップ83では、関連する既存の情報提示ウィンドウ904の上下左右にマイナスの値が設定される。情報提示ウィンドウ904の位置には特段の値は設定されず、初期値のゼロのままである。調整マップ83により、新たな情報提示ウィンドウが既存の他の情報提示ウィンドウの近傍、具体的には上下左右のいずれかに配されやすくなる。 The adjustment map 83 is set when a new information presentation window is related to another existing information presentation window. In the adjustment map 83, negative values are set to the top, bottom, left, and right of the related existing information presentation window 904. No particular value is set for the position of the information presentation window 904, which remains at the initial value of zero. The adjustment map 83 makes it easier for the new information presentation window to be positioned near the other existing information presentation window, specifically above, below, left, or right.

なお、調整マップ83において設定されるマイナスの値は同一でなくてもよい。たとえば、既存の情報提示ウィンドウの右側を最も大きなマイナスの値、左側を次に大きなマイナスの値、上方を3番目に大きなマイナスの値、下方を最も小さなマイナスの値としてもよい。この傾斜配分では新たな情報提示ウィンドウは、既存の情報提示ウィンドウの上下左右のうち下方に最も配されやすくなる。 The negative values set in the adjustment map 83 do not have to be the same. For example, the right side of the existing information presentation window may be set to the largest negative value, the left side to the next largest negative value, the top to the third largest negative value, and the bottom to the smallest negative value. With this skewed distribution, the new information presentation window is most likely to be placed at the bottom of the existing information presentation window among the top, bottom, left, and right.

これら3つのマップ、具体的には物体マップ81、対象物マップ82、および調整マップ83を重ね合わせ、さらにぼかし処理を加えたものがエネルギー画像80である。なお、新たな情報提示ウィンドウが既存の他の情報提示ウィンドウに関連しない場合には調整マップ83が存在しないので、物体マップ81および対象物マップ82を重ね合わせてぼかし処理を施したものがエネルギー画像80となる。ただし図6では、作図の都合によりエネルギー画像80におけるぼかし処理が表現できていない。なおマップ同士の重ね合わせとは、対応する画素の値を足し合わせることである。ぼかし処理は、たとえばガウスぼかしを用いることができる。 These three maps, specifically the object map 81, target map 82, and adjustment map 83, are superimposed and then blurred to form the energy image 80. Note that if the new information presentation window is not related to any other existing information presentation window, there is no adjustment map 83, so the object map 81 and target map 82 are superimposed and blurred to form the energy image 80. However, due to drawing restrictions, the blurring process in the energy image 80 cannot be shown in Figure 6. Note that superimposing maps means adding up the values of corresponding pixels. The blurring process can be performed using Gaussian blur, for example.

エネルギー画像80の下部に示すエネルギーグラフ911は、エネルギー画像80における一点鎖線910の位置におけるエネルギー量を示す図である。エネルギーグラフ911における符号912~915は、図示横方向の各領域を示す符号である。領域912は、エネルギー画像80の対応する領域は白、すなわちゼロである。しかし隣接する領域913は物体マップ81において大きな正の値が設定されているので、ぼかし処理により領域912から領域913にかけて滑らかに増加する。領域914は、物体マップ81では大きな正の値、対象物マップ82では負の値、調整マップ83でも負の値が設定されていたので、領域913よりも小さなエネルギー量となる。 Energy graph 911 shown at the bottom of energy image 80 is a diagram showing the amount of energy at the position of dashed line 910 in energy image 80. Reference characters 912 to 915 in energy graph 911 are reference characters indicating each region in the horizontal direction in the figure. The corresponding region in energy image 80 for region 912 is white, i.e., zero. However, adjacent region 913 is set to a large positive value in object map 81, so the blurring process causes a smooth increase from region 912 to region 913. Region 914 is set to a large positive value in object map 81, a negative value in target object map 82, and a negative value in adjustment map 83, so the energy amount is smaller than that of region 913.

(フローチャート)
図7は、情報配置部12の処理を示すフローチャートである。まずステップS301において情報配置部12は、現在の場面、すなわち場所と関連するユーザを特定する。情報配置部12は、たとえば外部から仮想空間の特定の範囲を現在の場所として指定され、ユーザテーブル1200における視点位置1204がその範囲内に入っているユーザが特定される。続くステップS302では情報配置部12は、表示する登録情報を列挙する。
(flowchart)
7 is a flowchart showing the processing of the information placement unit 12. First, in step S301, the information placement unit 12 identifies the current scene, i.e., the location and the users associated with it. For example, a specific range in the virtual space is designated as the current location from outside, and the information placement unit 12 identifies users whose viewpoint positions 1204 in the user table 1200 are within that range. In the following step S302, the information placement unit 12 lists the registered information to be displayed.

表示する登録情報の数に上限はないが、たとえばステップS301において特定した場所に配置されている物体の登録情報のうち、重要度が最も高い10個を列挙する。情報配置部12は、重要度1102が所定の閾値よりも高く、かつ親オブジェクトがユーザUの現在位置から所定距離以内にある全ての登録情報を列挙してもよい。続くステップS303では情報配置部12は、ステップS302において列挙した登録情報のうち、未処理の登録情報の1つを処理対象情報として選択する。続くステップS304では情報配置部12は、ステップS301において特定されたユーザを列挙する。 There is no upper limit to the number of registration information items to be displayed, but for example, the 10 most important items are listed among the registration information items of objects located at the location identified in step S301. The information placement unit 12 may list all registration information items whose importance 1102 is higher than a predetermined threshold and whose parent object is within a predetermined distance from the current location of the user U. In the following step S303, the information placement unit 12 selects one of the unprocessed registration information items from the registration information items listed in step S302 as information to be processed. In the following step S304, the information placement unit 12 lists the users identified in step S301.

続くステップS305では情報配置部12は、ステップS304において列挙したユーザのうち、未処理のユーザの一人を処理対象ユーザとして選択してステップS306に進む。ステップS306では情報配置部12のエネルギーマップ生成部12aは、エネルギー画像生成処理を行ってステップS307に進む。エネルギー画像生成処理の詳細は図8を参照して後述する。ステップS307では情報配置部12は、ステップS304において列挙した全ユーザが処理済みであるか否かを判断する。情報配置部12は、全ユーザが処理済であると判断する場合はステップS308に進み、未処理のユーザがいると判断する場合はステップS305に戻る。 In the following step S305, the information placement unit 12 selects one of the unprocessed users from among the users listed in step S304 as a user to be processed, and proceeds to step S306. In step S306, the energy map generation unit 12a of the information placement unit 12 performs an energy image generation process, and proceeds to step S307. Details of the energy image generation process will be described later with reference to FIG. 8. In step S307, the information placement unit 12 determines whether all users listed in step S304 have been processed. If the information placement unit 12 determines that all users have been processed, it proceeds to step S308, and if it determines that there is an unprocessed user, it returns to step S305.

ステップS308では情報配置部12の基準位置決定部12bは、基準位置決定処理を実行してステップS309に進む。ステップS309では情報配置部12は、ステップS803において決定した基準位置に基づき、ユーザUごとに情報提示ウィンドウを配置する。ただし情報配置部12は、全てのユーザUに対して情報提示ウィンドウを同一の位置および同一の向きにする必要はなく、空間的な広がりを有する情報提示ウィンドウが基準位置を含むように配されればよい。すなわち情報提示ウィンドウの法線はそれぞれのユーザUの視線方向と平行または一致してよいし、ユーザUごとのエネルギー画像を参照して位置を調整してよい。 In step S308, the reference position determination unit 12b of the information placement unit 12 executes a reference position determination process and proceeds to step S309. In step S309, the information placement unit 12 places an information presentation window for each user U based on the reference position determined in step S803. However, the information placement unit 12 does not need to place the information presentation window in the same position and in the same orientation for all users U, as long as the information presentation window having a spatial extent is placed so as to include the reference position. In other words, the normal of the information presentation window may be parallel to or coincident with the line of sight of each user U, and the position may be adjusted by referring to the energy image for each user U.

続くステップS310では情報配置部12は、ステップS302において列挙したすべての登録情報が処理済であるか否かを判断する。情報配置部12は、列挙した全ての登録情報が処理済であると判断する場合は図7に示す処理を終了し、未処理の登録情報があると判断する場合はステップS303に戻る。 In the next step S310, the information placement unit 12 determines whether all of the registered information listed in step S302 has been processed. If the information placement unit 12 determines that all of the registered information listed has been processed, it ends the process shown in FIG. 7, and if it determines that there is unprocessed registered information, it returns to step S303.

図8は、情報配置部12によるエネルギー画像生成処理を示すフローチャートであり、図7のステップS306の詳細を示す図でもある。本フローチャートは、処理対象ユーザおよび処理対象情報が特定されている状態で実行される。換言すると、図8に示す処理は処理対象ユーザの数と処理対象情報の数の積の回数実行される。本フローチャートは、情報配置部12のエネルギーマップ生成部12aにより実行される。まずステップS321において情報配置部12は、ユーザテーブル1200を参照して処理対象ユーザの視点位置と視線の方向を特定する。続くステップS322では情報配置部12は、ステップS321において特定した視点位置および視線の方向に基づき、仮想空間における処理対象ユーザの視線を示す射影行列を算出する。 Figure 8 is a flowchart showing the energy image generation process by the information placement unit 12, and also shows details of step S306 in Figure 7. This flowchart is executed in a state where the target user and the target information have been specified. In other words, the process shown in Figure 8 is executed a number of times equal to the product of the number of target users and the number of target information. This flowchart is executed by the energy map generation unit 12a of the information placement unit 12. First, in step S321, the information placement unit 12 refers to the user table 1200 to specify the viewpoint position and line of sight direction of the target user. In the following step S322, the information placement unit 12 calculates a projection matrix indicating the line of sight of the target user in the virtual space based on the viewpoint position and line of sight direction specified in step S321.

続くステップS323では情報配置部12は、重要度が高い物体を避けるための物体マップ81を生成する。具体的には情報配置部12は、ステップS301において特定した場所に存在する物体であって、重要度1006が所定の閾値よりも高い物体のバウンディングボックス1004に射影行列を適用し、その領域に正の大きな値を設定した物体マップ81を生成する。なおそれぞれの物体の射影位置に設定する値は、各物体の重要度が高いほど大きな値に設定してもよい。続くステップS324では情報配置部12は、処理対象情報の親オブジェクトに近づけるための対象物マップ82を生成する。具体的には情報配置部12は、処理対象情報の親モデルID1108の値を要素モデルID1001として持つ物体の中心位置1005に射影行列を適用し、その射影された位置を中心とする真円または楕円の領域に負値を設定した対象物マップ82を生成する。 In the next step S323, the information placement unit 12 generates an object map 81 for avoiding objects with high importance. Specifically, the information placement unit 12 applies a projection matrix to the bounding box 1004 of an object that exists at the location specified in step S301 and has an importance 1006 higher than a predetermined threshold, and generates an object map 81 in which a large positive value is set in that area. Note that the value set in the projection position of each object may be set to a larger value as the importance of each object increases. In the next step S324, the information placement unit 12 generates an object map 82 for approaching the parent object of the processing target information. Specifically, the information placement unit 12 applies a projection matrix to the center position 1005 of an object that has the value of the parent model ID 1108 of the processing target information as the element model ID 1001, and generates an object map 82 in which a negative value is set in a perfect circle or ellipse area centered on the projected position.

続くステップS325では情報配置部12は、既存の親ウィンドウとの位置調整のための調整マップ83を生成する。具体的には情報配置部12は、処理対象情報における関連保存情報ID1107を参照して親ウィンドウを特定し、その表示位置の上下左右にマイナスの値を設定する。続くステップS326では情報配置部12は、ステップS323~S325において生成した3つのマップを重ね合わせ、さらにぼかし処理を加えることでエネルギー画像80を生成して図8に示す処理を終了する。以下では、本ステップで生成したエネルギー画像80をEuwとして呼び出す。添え字の「u」はユーザの識別子であり、添え字の「w」は情報提示ウィンドウの識別子である。なおステップS323~S326の具体例は図6に示したとおりである。 In the next step S325, the information placement unit 12 generates an adjustment map 83 for adjusting the position with the existing parent window. Specifically, the information placement unit 12 identifies the parent window by referring to the related saved information ID 1107 in the information to be processed, and sets negative values to the top, bottom, left, and right of the display position. In the next step S326, the information placement unit 12 overlays the three maps generated in steps S323 to S325, and further applies a blurring process to generate an energy image 80, and ends the process shown in FIG. 8. In the following, the energy image 80 generated in this step is called Euw. The subscript "u" is the user identifier, and the subscript "w" is the identifier of the information presentation window. Note that a specific example of steps S323 to S326 is as shown in FIG. 6.

図9は、情報配置部12による基準位置決定処理を示すフローチャートであり、図7のステップS308の詳細を示す図でもある。本フローチャートは、情報配置部12の基準位置決定部12bにより実行される。まずステップS330において情報配置部12は、処理対象情報がすでに表示されている場合に、現在の基準位置である三次元座標を過去表示位置p_oldとして記録する。処理対象情報がまだ表示されていない場合には処理を行わない。続くステップS331では情報配置部12は、仮基準位置を初期位置に設定する。この初期位置は、処理対象情報がすでに表示されている場合にはその基準位置であり、処理対象情報がまだ表示されていない場合には原点(0,0,0)や、処理対象提示情報の親オブジェクトの中心位置1005などに設定される。続くステップS332では情報配置部12は、ステップS301において特定されたユーザを列挙する。 9 is a flowchart showing the reference position determination process by the information placement unit 12, and is also a diagram showing details of step S308 in FIG. 7. This flowchart is executed by the reference position determination unit 12b of the information placement unit 12. First, in step S330, if the information to be processed is already displayed, the information placement unit 12 records the three-dimensional coordinates that are the current reference position as the past display position p_old. If the information to be processed is not yet displayed, no processing is performed. In the following step S331, the information placement unit 12 sets the tentative reference position to the initial position. If the information to be processed is already displayed, this initial position is the reference position, and if the information to be processed is not yet displayed, the initial position is set to the origin (0,0,0) or the center position 1005 of the parent object of the presentation information to be processed. In the following step S332, the information placement unit 12 lists the users identified in step S301.

続くステップS333では情報配置部12は、ステップS333において列挙したユーザのうち、未処理のユーザの一人を処理対象ユーザとして選択してステップS334に進む。ステップS334では情報配置部12は、後述する個別ベクトル算出処理を実行する。個別ベクトル算出処理では、ユーザごとに最適な仮基準位置を移動させる三次元ベクトルが算出される。続くステップS335では情報配置部12は、ステップS332において列挙したすべての登録情報が処理済であるか否かを判断する。情報配置部12は、列挙した全ての登録情報が処理済であると判断する場合はステップS336に進み、未処理の登録情報があると判断する場合はステップS333に戻る。 In the following step S333, the information placement unit 12 selects one of the unprocessed users from the users listed in step S333 as a user to be processed, and proceeds to step S334. In step S334, the information placement unit 12 executes an individual vector calculation process, which will be described later. In the individual vector calculation process, a three-dimensional vector that moves the optimal provisional reference position for each user is calculated. In the following step S335, the information placement unit 12 determines whether all of the registered information listed in step S332 has been processed. If the information placement unit 12 determines that all of the registered information listed has been processed, the process proceeds to step S336, and if the information placement unit 12 determines that there is unprocessed registered information, the process returns to step S333.

ステップS336では情報配置部12は、全てのユーザUの個別ベクトルを合算する。前述のステップS334において、処理対象ユーザごとに個別ベクトルとして三次元ベクトルが算出されるので、本ステップでは単純にその三次元ベクトル同士を足し合わせる。続くステップS337では情報配置部12は、仮基準位置をステップS336における合算結果に従って移動させる。たとえばステップS337を実行する直前の仮基準位置が(100,50,10)であり、ステップS336の合算結果が(0.2、-0.3,0.1)の場合には新たな仮基準位置は(100.2,49.7,10.1)となる。 In step S336, the information placement unit 12 adds up the individual vectors of all users U. In the above-mentioned step S334, a three-dimensional vector is calculated as an individual vector for each user to be processed, so in this step, these three-dimensional vectors are simply added together. In the following step S337, the information placement unit 12 moves the tentative reference position according to the summation result in step S336. For example, if the tentative reference position immediately before executing step S337 is (100, 50, 10) and the summation result in step S336 is (0.2, -0.3, 0.1), the new tentative reference position will be (100.2, 49.7, 10.1).

続くステップS338では情報配置部12は、新たな仮基準位置における評価エネルギーEnを算出する。ただしステップS338の初回の実行、かつ処理対象情報がすでに表示されている場合には、過去表示位置p_oldにおける評価エネルギーE0も算出する。評価エネルギーEnの算出方法は後述する。続くステップS339では情報配置部12は、評価エネルギーEnの変化量、すなわち前回の仮基準位置における評価エネルギーと今回の仮基準位置における評価エネルギーの差の絶対値が閾値以下であるか否かを判断する。情報配置部12は、評価エネルギーEnの変化量が所定の閾値以下であると判断する場合には計算が終息したと判断して図9に示す処理を終了し、仮基準位置の移動量が所定の閾値よりも大きいと判断する場合はステップS332に戻る。 In the next step S338, the information placement unit 12 calculates the evaluation energy En at the new tentative reference position. However, if this is the first time step S338 is executed and the information to be processed is already displayed, the information placement unit 12 also calculates the evaluation energy E0 at the previous display position p_old. The method of calculating the evaluation energy En will be described later. In the next step S339, the information placement unit 12 determines whether the amount of change in the evaluation energy En, i.e., the absolute value of the difference between the evaluation energy at the previous tentative reference position and the evaluation energy at the current tentative reference position, is equal to or less than a threshold value. If the information placement unit 12 determines that the amount of change in the evaluation energy En is equal to or less than a predetermined threshold value, it determines that the calculation has ended and ends the process shown in FIG. 9, but if it determines that the amount of movement of the tentative reference position is greater than the predetermined threshold value, it returns to step S332.

図10は、個別ベクトル算出処理を示すフローチャートであり、図9のステップS334の詳細を示す図でもある。まずステップS341において情報配置部12は、処理対象ユーザのエネルギー画像における仮基準位置を算出する。この算出には、前述の射影行列が利用できる。続くステップS342では情報配置部12は、算出された仮基準位置がエネルギー画像内に存在するか否かを判断する。情報配置部12は、仮基準位置がエネルギー画像80内に存在すると判断する場合はステップS343に進み、仮基準位置がエネルギー画像80内に存在しないと判断する場合はステップS350に進む。 Figure 10 is a flowchart showing the individual vector calculation process, and also shows details of step S334 in Figure 9. First, in step S341, the information placement unit 12 calculates a tentative reference position in the energy image of the user to be processed. The above-mentioned projection matrix can be used for this calculation. In the following step S342, the information placement unit 12 determines whether the calculated tentative reference position exists in the energy image. If the information placement unit 12 determines that the tentative reference position exists in the energy image 80, the process proceeds to step S343, and if the information placement unit 12 determines that the tentative reference position does not exist in the energy image 80, the process proceeds to step S350.

ステップS343では情報配置部12は、エネルギー画像80における仮基準位置のエネルギー量を読み取り、現在値Ecとして記録する。続くステップS344では情報配置部12は、エネルギー画像80における仮基準位置を複数方向に微小距離移動させ、移動後の位置におけるエネルギー量を読み取る。この複数方向とはたとえば、エネルギー画像80における上下左右およびそれぞれの中間である斜めを含む全8方向である。続くステップS345では情報配置部12は、ステップS344において読み取ったエネルギー量のうち、最小のエネルギー量となる方向を最適移動方向に決定し、減少率dEを算出する。減少率dEは、ステップS344において読み取ったエネルギー量の最小値をEmとする場合に、次の式1により算出される。 In step S343, the information placement unit 12 reads the amount of energy at the tentative reference position in the energy image 80 and records it as a current value Ec. In the following step S344, the information placement unit 12 moves the tentative reference position in the energy image 80 by small distances in multiple directions and reads the amount of energy at the position after the movement. These multiple directions are, for example, a total of eight directions including up, down, left, right, and diagonal directions in between in the energy image 80. In the following step S345, the information placement unit 12 determines the direction that results in the smallest amount of energy among the amounts of energy read in step S344 as the optimal direction of movement, and calculates the reduction rate dE. The reduction rate dE is calculated by the following formula 1, where Em is the minimum value of the amount of energy read in step S344.

dE = (Ec-Em)/Ec ・・・(式1) dE = (Ec-Em)/Ec... (Equation 1)

続くステップS346では情報配置部12は、仮基準位置から処理対象情報の親オブジェクトまでの距離d_tgtを算出する。具体的には距離d_tgtは、視点位置1204と、処理対象情報の親オブジェクトのバウンディングボックス1004との間の最も短い距離である。続くステップS347では情報配置部12は、次の式2~式4を用いて評価距離Edを算出する。 In the next step S346, the information placement unit 12 calculates the distance d_tgt from the tentative reference position to the parent object of the information to be processed. Specifically, the distance d_tgt is the shortest distance between the viewpoint position 1204 and the bounding box 1004 of the parent object of the information to be processed. In the next step S347, the information placement unit 12 calculates the evaluation distance Ed using the following Equations 2 to 4.

Ed = E_0 * (d_pref - d) ・・・(式2) Ed = E_0 * (d_pref - d) ... (Formula 2)

Ed += E_1 if d < d_min ・・・(式3) Ed += E_1 if d < d_min ... (Equation 3)

Ed -= E_2 if d > (d_tgt - D_tgt_near) ・・・(式4) Ed - = E_2 if d > (d_tgt - D_tgt_near) ... (Equation 4)

ただし式2~式4において、E_0~E_2は予め定められた定数であり、dは視点位置1204とステップS331において初期値を設定しステップS337において移動された仮基準位置との距離であり、d_prefはユーザテーブル1200における奥行き嗜好1206の値であり、d_minは予め定められた近距離制限のための閾値である。また式4におけるD_tgt_nearは、視点位置1204から見て処理対象情報の親オブジェクトよりも手前に存在する他の物体までの距離である。式2~式4は次のように説明できる。すなわち、評価距離Edのおおよその値は式2で決まり、dがd_minよりも小さい場合に式3の修正が行われ、dがd_tgtとD_tgt_nearの差よりも大きい場合に式4の修正が行われる。 In equations 2 to 4, E_0 to E_2 are predetermined constants, d is the distance between the viewpoint position 1204 and the provisional reference position to which the initial value was set in step S331 and which was moved in step S337, d_pref is the value of depth preference 1206 in user table 1200, and d_min is a predetermined threshold value for limiting close distances. Also, D_tgt_near in equation 4 is the distance to another object that is closer to the parent object of the information to be processed than is seen from the viewpoint position 1204. Equations 2 to 4 can be explained as follows. That is, the approximate value of the evaluation distance Ed is determined by equation 2, and if d is smaller than d_min, equation 3 is corrected, and if d is larger than the difference between d_tgt and D_tgt_near, equation 4 is corrected.

続くステップS348では情報配置部12は、ユーザテーブル1200における処理対象ユーザの視点位置から処理対象情報の親オブジェクトへ向かうベクトルVzを算出する。続くステップS349では情報配置部12は、個別ベクトルを算出する。この個別ベクトルVbestは、次の式2により算出して図10に示す処理を終了する。なお式5における単独の「x」は、積を示す演算記号として記載している。 In the next step S348, the information placement unit 12 calculates a vector Vz pointing from the viewpoint position of the processing target user in the user table 1200 to the parent object of the processing target information. In the next step S349, the information placement unit 12 calculates an individual vector. This individual vector Vbest is calculated using the following formula 2, and the process shown in FIG. 10 is terminated. Note that the single "x" in formula 5 is written as an operation symbol indicating multiplication.

Vbest = dE x Vxy + Ed x Vz ・・・(式5) Vbest = dE x Vxy + Ed x Vz ... (Equation 5)

ステップS350では情報配置部12は、個別ベクトルをゼロに設定して図10に示す処理を終了する。 In step S350, the information placement unit 12 sets the individual vectors to zero and ends the process shown in FIG. 10.

図11は、評価エネルギー算出処理を示すフローチャートであり、図9のステップS338の詳細を示す図でもある。まずステップS361において情報配置部12は、変数UEをゼロで初期化する。続くステップS362では情報配置部12は、ステップS301において特定されたユーザを列挙する。続くステップS363では情報配置部12は、ステップS362において列挙したユーザのうち、未処理のユーザの一人を処理対象ユーザとして選択してステップS364に進む。ステップS364では情報配置部12は、処理対象ユーザのエネルギー画像上における仮基準位置を特定する。 Figure 11 is a flowchart showing the evaluation energy calculation process, and also shows details of step S338 in Figure 9. First, in step S361, the information placement unit 12 initializes a variable UE to zero. In the following step S362, the information placement unit 12 lists the users identified in step S301. In the following step S363, the information placement unit 12 selects one of the unprocessed users from the users listed in step S362 as a user to be processed, and proceeds to step S364. In step S364, the information placement unit 12 identifies a tentative reference position on the energy image for the user to be processed.

続くステップS365では情報配置部12は、仮基準位置のエネルギーを変数EUに加算する。すなわち変数EUには、各ユーザの仮基準位置におけるエネルギーが足し合わされることになる。続くステップS366では情報配置部12は、全ユーザが処理済であるか否かを判断し、全ユーザが処理済であると判断する場合はステップS367に進み、未処理のユーザがいると判断する場合はステップS363に戻る。 In the next step S365, the information placement unit 12 adds the energy of the tentative reference position to the variable EU. That is, the energy of each user at the tentative reference position is added to the variable EU. In the next step S366, the information placement unit 12 determines whether or not all users have been processed, and if it is determined that all users have been processed, the process proceeds to step S367, and if it is determined that there is an unprocessed user, the process returns to step S363.

ステップS367では情報配置部12は、過去表示位置が存在するか否かを判断する。本ステップの判断は、処理対象情報がすでに表示されているか否かの判断でもある。情報配置部12は、過去表示位置が存在すると判断する場合はステップS368に進み、過去表示位置が存在しないと判断する場合はステップS369に進む。ステップS368では情報配置部12は、ステップS365において加算を繰り返した変数EUと、式6で示される関数Eとの和を評価エネルギーEnとして図11に示す処理を終了する。 In step S367, the information placement unit 12 determines whether or not a past display position exists. The determination in this step is also a determination of whether or not the information to be processed has already been displayed. If the information placement unit 12 determines that a past display position exists, the process proceeds to step S368, and if it determines that a past display position does not exist, the process proceeds to step S369. In step S368, the information placement unit 12 sets the sum of the variable EU, which was repeatedly added in step S365, and the function E shown in Equation 6 as the evaluation energy En, and ends the process shown in FIG. 11.

E(p_new, p_old) =(p_new - p_old)^2 x E_constant ・・・(式6) E(p_new, p_old) = (p_new - p_old)^2 x E_constant ... (Equation 6)

ただし式6においてp_newは仮基準位置であり、p_oldは過去表示位置である。すなわち式6では、仮基準位置と過去表示位置の三次元空間における距離の二乗に所定の定数を乗じている。ステップS369では情報配置部12は、ステップS365において加算を繰り返した変数EUそのものを評価エネルギーEnとして図11に示す処理を終了する。 In equation 6, p_new is the tentative reference position, and p_old is the previously displayed position. That is, equation 6 multiplies the square of the distance in three-dimensional space between the tentative reference position and the previously displayed position by a predetermined constant. In step S369, the information placement unit 12 sets the variable EU, which was repeatedly added in step S365, itself as the evaluation energy En, and ends the process shown in FIG. 11.

上述した第1の実施の形態によれば、次の作用効果が得られる。
(1)情報提示システム1が実行する表示方法は、三次元空間内の物体に関連付けられた、登録情報テーブル1100に登録された登録情報を物体とともに観察者の主観視点で表示する。この表示方法は、1または複数のユーザUのそれぞれの視点位置において、登録情報の配置に適した領域を示す二次元平面に関するデータであるエネルギー画像を1または複数作成するエネルギーマップ生成処理(図8)と、エネルギー画像において、第一の位置に比してエネルギーが低い第二の位置に登録情報を表示する基準位置を設定する基準位置決定処理(図9)と、映像生成部13が実行する、親物体および基準位置を含む領域に描画される登録情報を観察者の主観視点で描画する描画処理と、を含む。そのため、登録情報の配置を簡便に決定できる。
According to the above-described first embodiment, the following advantageous effects can be obtained.
(1) The display method executed by the information presentation system 1 displays registration information registered in the registration information table 1100, associated with an object in a three-dimensional space, together with the object from the subjective viewpoint of the observer. This display method includes an energy map generation process ( FIG. 8 ) for creating one or more energy images, which are data on a two-dimensional plane showing an area suitable for arranging the registration information, at the viewpoint positions of one or more users U, a reference position determination process ( FIG. 9 ) for setting a reference position for displaying the registration information at a second position in the energy image that has lower energy than the first position, and a drawing process executed by the image generation unit 13 for drawing the registration information drawn in an area including the parent object and the reference position from the subjective viewpoint of the observer. Therefore, the arrangement of the registration information can be easily determined.

(2)エネルギーマップ生成処理では、物体マップ81に示すように親物体の領域に対して正のエネルギー量が付与されることでエネルギー量が高く設定され、対象物マップ82に示すように親物体の周辺に対して負のエネルギー量が付与されることでエネルギー量が低く設定される。(3)エネルギーマップ生成処理では、物体マップ81に示すようにすでに表示されている他の登録情報の領域に正のエネルギー量が付与されることでエネルギー量が高く設定される。(4)エネルギーマップ生成処理では、調整マップ83に示すように当該登録情報に関連する他の登録情報がすでに表示されている領域の近傍の領域に対し負のエネルギー量が付与されることでエネルギー量が低く設定される。(5)エネルギーマップ生成処理では、親物体以外の物体であって、設定された重要度が所定の閾値よりも大きい物体の領域のエネルギーが高く設定される。そのため、登録情報を重畳して表示させたくない箇所のエネルギーを高く設定し、登録情報を表示させたい箇所のエネルギーを低く設定することで登録情報の配置を簡便に決定できる。 (2) In the energy map generation process, the amount of energy is set high by assigning a positive amount of energy to the area of the parent object as shown in the object map 81, and the amount of energy is set low by assigning a negative amount of energy to the periphery of the parent object as shown in the target object map 82. (3) In the energy map generation process, the amount of energy is set high by assigning a positive amount of energy to the area of other registered information that is already displayed as shown in the object map 81. (4) In the energy map generation process, the amount of energy is set low by assigning a negative amount of energy to the area near the area where other registered information related to the registered information is already displayed as shown in the adjustment map 83. (5) In the energy map generation process, the energy of the area of an object other than the parent object and whose set importance is greater than a predetermined threshold is set high. Therefore, the arrangement of the registered information can be easily determined by setting the energy high in the area where the registered information is not to be displayed by superimposing it and setting the energy low in the area where the registered information is to be displayed.

(6)基準位置決定処理では、それぞれのエネルギーマップの基準位置におけるエネルギー量の合計が小さくなるように基準位置が決定される。具体的には、図10のステップS343~S345においてエネルギーマップごとに仮基準位置を移動させる望ましい方向が決定され、このベクトル量が図9のS336において合算されて仮基準位置が移動される。 (6) In the reference position determination process, the reference position is determined so that the sum of the energy amounts at the reference positions of each energy map is minimized. Specifically, in steps S343 to S345 of FIG. 10, a desired direction in which to move the tentative reference position is determined for each energy map, and this vector amount is added up in S336 of FIG. 9 to move the tentative reference position.

(7)基準位置決定処理は、三次元座標を有する仮基準位置をあらかじめ設定し(S331)、仮基準位置に対応するそれぞれのエネルギーマップ上の位置を特定し(S341)、それぞれのエネルギーマップにおいて、仮基準位置に対応する位置のエネルギー量の合計が小さくなるように仮基準位置の移動ベクトルを設定する(S345)。さらに基準位置決定処理では、仮基準位置に対して、それぞれのエネルギーマップにおいて算出した移動ベクトルを合算することで仮基準位置を更新(S336、S337)し、仮基準位置を更新する前後における、仮基準位置に対応する位置のエネルギー量の合計の変化が閾値以下になった(S339:YES)際の仮基準位置を基準位置とする繰り返し計算を行う。 (7) In the reference position determination process, a tentative reference position having three-dimensional coordinates is set in advance (S331), a position on each energy map corresponding to the tentative reference position is identified (S341), and a movement vector of the tentative reference position is set in each energy map so that the total energy amount at the position corresponding to the tentative reference position is reduced (S345). Furthermore, in the reference position determination process, the tentative reference position is updated by adding up the movement vectors calculated in each energy map for the tentative reference position (S336, S337), and repeated calculations are performed with the tentative reference position being the reference position when the change in the total energy amount at the position corresponding to the tentative reference position before and after updating the tentative reference position becomes equal to or less than a threshold (S339: YES).

(8)基準位置決定処理では、視点位置から基準位置までの距離dと観察者が好む距離d_prefとの差に基づく評価距離Edと、視点位置から親物体に向かうベクトルVzを考慮して基準位置が決定される。そのため、ユーザUごとに基準位置との距離方向も調整できる。 (8) In the reference position determination process, the reference position is determined taking into consideration an evaluation distance Ed based on the difference between the distance d from the viewpoint position to the reference position and the distance d_pref preferred by the observer, and a vector Vz pointing from the viewpoint position toward the parent object. Therefore, the distance direction from the reference position can also be adjusted for each user U.

(9)当該登録情報がすでに基準位置である前回基準位置を基準として表示されている場合には(S367:YES)、基準位置決定処理において、それぞれのエネルギーマップの基準位置におけるエネルギー量の合計と、前回基準位置と基準位置の距離に基づく値との合計値が小さくなるように基準位置が決定される(S368)。そのため、既存の情報提示ウィンドウの表示位置が大きく変化することを防止できる。 (9) If the registered information is already displayed based on the previous reference position (S367: YES), in the reference position determination process, the reference position is determined so that the sum of the energy amounts at the reference positions of each energy map and the value based on the distance between the previous reference position and the reference position is small (S368). This makes it possible to prevent the display position of the existing information presentation window from changing significantly.

(変形例1)
上述した第1の実施の形態では、サーバ10はクライアント20ごとの映像のレンダリングを行った。しかしサーバ10は、レンダリングまでは行わずに情報提示ウィンドウの基準位置を各クライアント20に送信し、各クライアント20がレンダリングを行ってもよい。
(Variation 1)
In the first embodiment described above, the server 10 renders the video for each client 20. However, the server 10 may transmit the reference position of the information presentation window to each client 20 without performing the rendering, and each client 20 may perform the rendering.

図12は、変形例1における情報提示システム1Aの全体構成図である。省機能サーバ10Aは、第1の実施の形態におけるサーバ10の機能から映像生成部13が削除されている。この変形例1によれば、省機能サーバ10Aからクライアント20への通信量を低減できる。 Figure 12 is an overall configuration diagram of an information presentation system 1A in Modification 1. In the function-saving server 10A, the image generator 13 is removed from the functions of the server 10 in the first embodiment. According to Modification 1, the amount of communication from the function-saving server 10A to the client 20 can be reduced.

(変形例2)
図13は、変形例2における情報提示システム1Bの全体構成図である。情報提示システム1Bは複数の第2拡張クライアント20Bから構成され、第2拡張クライアント20Bのそれぞれは第1の実施の形態におけるクライアント20の機能だけでなく、サーバ10の機能を備える。ただし指令送信部21は、サーバ10ではなく他の第2拡張クライアント20Bに各ユーザの位置情報を送信する。その他の構成および処理は第1の実施の形態と同様なので説明を省略する。この変形例2によれば、データを集約するサーバ10が不要となる。
(Variation 2)
13 is an overall configuration diagram of an information presentation system 1B in Modification 2. The information presentation system 1B is composed of a plurality of second extended clients 20B, and each of the second extended clients 20B has not only the function of the client 20 in the first embodiment but also the function of the server 10. However, the command transmission unit 21 transmits the position information of each user to the other second extended clients 20B, not to the server 10. The other configurations and processes are the same as those in the first embodiment, and therefore will not be described. According to Modification 2, the server 10 that aggregates data is not required.

(変形例3)
個別ベクトル算出処理では、エネルギー画像に対する奥行き方向の移動は考慮しなくてもよい。この場合は図10におけるステップS346~S348を省略し、ステップS349ではVbestがdEとVxyの積として算出される。
(Variation 3)
In the individual vector calculation process, movement in the depth direction relative to the energy image does not need to be taken into consideration. In this case, steps S346 to S348 in Fig. 10 are omitted, and Vbest is calculated as the product of dE and Vxy in step S349.

(変形例4)
情報配置部12は、ステップS347において式2~式4を用いて評価距離Edを算出した。しかし情報配置部12は、式3および式4を用いずに式2のみを用いて評価距離Edを算出してもよい。
(Variation 4)
In step S347, the information placement unit 12 calculates the evaluation distance Ed using Equations 2 to 4. However, the information placement unit 12 may calculate the evaluation distance Ed using only Equation 2 without using Equations 3 and 4.

(変形例5)
上述した第1の実施の形態では、仮想空間を閲覧する例を説明した。しかし第1の実施の形態において説明した構成を用いて現実空間を閲覧し、現実世界の映像にコンピュータ画像を重畳する、いわゆる拡張現実に適用してもよい。ただし本変形例における入力装置961は、現実世界におけるユーザUの動きを検出する装置である。具体的には入力装置961は、ユーザUの移動を検出する加速度計、およびユーザUの体に装着され関節の動きを検出するモーションセンサである。ただしユーザUを遠方から撮影する固定カメラを入力装置961として利用してもよい。また本変形例では、映像生成部13は物体の描画は不要であり、登録情報を描画すればよい。また本変形例では映像表示装置962は、背後が視認できる透過型のディスプレイである。
(Variation 5)
In the above-described first embodiment, an example of viewing a virtual space has been described. However, the configuration described in the first embodiment may be used to view a real space and superimpose a computer image on a real-world image, so-called augmented reality. However, the input device 961 in this modification is a device that detects the movement of the user U in the real world. Specifically, the input device 961 is an accelerometer that detects the movement of the user U, and a motion sensor that is attached to the body of the user U and detects the movement of the joints. However, a fixed camera that photographs the user U from a distance may be used as the input device 961. In this modification, the image generating unit 13 does not need to draw an object, and only needs to draw the registration information. In this modification, the image display device 962 is a transparent display that allows the back to be seen.

(変形例6)
上述した第1の実施の形態では、エネルギー画像80はユーザUごとに同一時刻では1つのみ生成された。しかし、同一時刻におけるユーザUのエネルギー画像80が複数作成されてもよい。すなわち、情報配置部12がユーザテーブル1200における視点位置1204の時系列変化に基づき、所定時間後、たとえば5秒後のユーザUの位置および視線方向を推定し、推定した移動先におけるユーザUの視点位置に基づきエネルギー画像80をさらに作成してもよい。このエネルギー画像80は基準位置決定処理(S308)にも用いられるので、ユーザUの将来の位置も考慮して基準位置が決定される。
(Variation 6)
In the first embodiment described above, only one energy image 80 is generated for each user U at the same time. However, multiple energy images 80 of the user U at the same time may be created. That is, the information placement unit 12 may estimate the position and gaze direction of the user U after a predetermined time, for example, 5 seconds, based on the time-series change of the viewpoint position 1204 in the user table 1200, and further create an energy image 80 based on the viewpoint position of the user U at the estimated destination. This energy image 80 is also used in the reference position determination process (S308), so the reference position is determined taking into consideration the future position of the user U.

本変形例によれば次の作用効果が得られる。
(10)エネルギーマップ生成処理では、ユーザUの移動を推定し、推定した移動先における観察者の視点位置に基づくエネルギーマップを生成する。そのため、ユーザUが移動した場合に基準位置が大きく変化せず、ユーザUは快適に登録情報を参照できる。
According to this modified example, the following effects can be obtained.
(10) In the energy map generation process, the movement of the user U is estimated, and an energy map is generated based on the viewpoint position of the observer at the estimated destination. Therefore, when the user U moves, the reference position does not change significantly, and the user U can comfortably refer to the registration information.

―第2の実施の形態―
図14~図26を参照して、情報提示システムの第2の実施の形態を説明する。以下の説明では、第1の実施の形態と同じ構成要素には同じ符号を付して相違点を主に説明する。特に説明しない点については、第1の実施の形態と同じである。本実施の形態では、主に、データの記録も行う点で、第1の実施の形態と異なる。
--Second embodiment--
A second embodiment of the information presentation system will be described with reference to Figures 14 to 26. In the following description, the same components as in the first embodiment are given the same reference numerals, and differences will be mainly described. Points that are not specifically described are the same as in the first embodiment. This embodiment differs from the first embodiment mainly in that data recording is also performed.

図14は、第2の実施の形態における情報提示システム1Cの全体構成図である。第1の実施の形態における情報提示システム1の構成に加えて、固定カメラ971、マイク972、イヤホン973、ウエアラブルカメラ974を備える。またサーバ10Cは、記録部16、事後分析部17、およびコンテクスト評価部18をさらに備え、記憶装置14にはさらに、作業記録テーブル1300、画像テーブル1400、音声テーブル1500、および手順テーブル1600が格納される。 Figure 14 is an overall configuration diagram of an information presentation system 1C in the second embodiment. In addition to the configuration of the information presentation system 1 in the first embodiment, it includes a fixed camera 971, a microphone 972, earphones 973, and a wearable camera 974. The server 10C further includes a recording unit 16, a post-analysis unit 17, and a context evaluation unit 18, and the storage device 14 further stores a work record table 1300, an image table 1400, an audio table 1500, and a procedure table 1600.

マイク972、イヤホン973、およびウエアラブルカメラ974を身に着ける作業者Wは、ユーザUと同一でもよいし異なってもよい。ここでは説明の便宜のために、データの記録が行われる際に特定空間に居る人間を作業者Wと呼ぶ。図14では、作図の都合により作業者Wは一人しか記載していないが、二人以上の作業者Wが存在してもよい。記録部16、事後分析部17、およびコンテクスト評価部18は、テーブル更新部11などと同様に、CPU41がROM42に格納されるプログラムをRAM43に展開して実行することで実現される。 The worker W wearing the microphone 972, earphones 973, and wearable camera 974 may be the same as or different from the user U. For ease of explanation, the person who is in the specific space when data is recorded is referred to as the worker W. For convenience of drawing, only one worker W is shown in FIG. 14, but there may be two or more workers W. The recording unit 16, the post-mortem analysis unit 17, and the context evaluation unit 18 are realized by the CPU 41 expanding a program stored in the ROM 42 into the RAM 43 and executing it, similar to the table update unit 11, etc.

物体テーブル1000および手順テーブル1600は、あらかじめ記憶装置14に格納される。登録情報テーブル1100は、記録部16および事後分析部17により作成される。作業記録テーブル1300、画像テーブル1400、音声テーブル1500、および作業姿勢テーブル1700は、記録部16により作成される。ユーザテーブル1200の視点位置1204および視線方向1205はテーブル更新部11により更新され、ユーザテーブル1200の他の情報は予め作成される。 The object table 1000 and the procedure table 1600 are stored in advance in the storage device 14. The registration information table 1100 is created by the recording unit 16 and the post-analysis unit 17. The work record table 1300, the image table 1400, the audio table 1500, and the work posture table 1700 are created by the recording unit 16. The viewpoint position 1204 and the line of sight direction 1205 of the user table 1200 are updated by the table update unit 11, and other information of the user table 1200 is created in advance.

作業者Wは、物体テーブル1000に記載された物体が存在する空間である特定空間において作業を行う。特定空間はたとえば、建物の室内、バス、電車、乗用車、船舶などの内部である。ウエアラブルカメラ974はたとえば、スマートグラスや作業者Wが装着するヘルメットに設置されたアクションカメラである。ウエアラブルカメラ974は、奥行き方向の距離である深度情報を算出する機能をさらに備えてもよい。深度情報は、レーザ距離計とカメラの組み合わせにより実現されてもよいし、所定のベースライン距離だけ離して設置された複数のカメラの撮影画像を用いて実現されてもよいし、いわゆる1つのカメラが異なる時刻に撮影した複数の撮影画像を用いて実現されてもよい。 The worker W performs work in a specific space, which is a space in which the objects listed on the object table 1000 exist. The specific space is, for example, the interior of a building, a bus, a train, a passenger car, a ship, etc. The wearable camera 974 is, for example, an action camera attached to smart glasses or a helmet worn by the worker W. The wearable camera 974 may further include a function for calculating depth information, which is distance in the depth direction. The depth information may be realized by a combination of a laser range finder and a camera, may be realized using images captured by multiple cameras installed at a predetermined baseline distance apart, or may be realized using multiple images captured by a single camera at different times.

固定カメラ971は、1または複数のカメラである。固定カメラ971が撮影して得られた画像を以下では「固定カメラ画像」と呼ぶ。固定カメラ971は物体テーブル1000に記載された物体が存在する空間に配される。固定カメラ971の設置位置および設置角度は既知である。マイク972が録音した音声データ、およびウエアラブルカメラ974が撮影して得られた画像(以下、「主観画像」と呼ぶ)はサーバ10Cに送付される。サーバ10Cはイヤホン973に対して音声を出力できる。マイク972、イヤホン973、およびウエアラブルカメラ974は、使用する作業者Wとあらかじめ紐づけられている。たとえばサーバ10Cはマイク972から音声データを受信すると、どの作業者Wの音声であるかを判別できる。なお、固定カメラ画像および主観画像は、静止画像と動画のいずれでもよい。 The fixed camera 971 is one or more cameras. The image captured by the fixed camera 971 is hereinafter referred to as a "fixed camera image." The fixed camera 971 is placed in a space where the object described on the object table 1000 exists. The installation position and installation angle of the fixed camera 971 are known. The voice data recorded by the microphone 972 and the image captured by the wearable camera 974 (hereinafter referred to as a "subjective image") are sent to the server 10C. The server 10C can output voice to the earphone 973. The microphone 972, the earphone 973, and the wearable camera 974 are linked in advance to the worker W who uses them. For example, when the server 10C receives voice data from the microphone 972, it can determine which worker W the voice belongs to. The fixed camera image and the subjective image may be either a still image or a video.

図15は、作業者Wの様子を示す図であり後述する登録フェーズに対応する。図15は作業者Wが電車の中に居り、作業対象物に手で触れて作業をしている。図15では作図の都合により記載できていないが、作業者Wは頭部にマイク972、イヤホン973、およびウエアラブルカメラ974を固定している。作業者Wの左右上部には固定カメラ971が配されており、作業者Wを撮影している。 Figure 15 shows the appearance of worker W, and corresponds to the registration phase described below. In Figure 15, worker W is on a train, working by touching a work object with his or her hands. Although it is not shown in Figure 15 due to drawing limitations, worker W has a microphone 972, earphones 973, and a wearable camera 974 fixed to his or her head. Fixed cameras 971 are placed on the upper left and right sides of worker W, and capture images of worker W.

図16は、作業者Wの頭部を示す図である。前述のとおり作業者Wは、頭部にマイク972、イヤホン973、およびウエアラブルカメラ974を固定している。図16では、ウエアラブルカメラ974では作業者Wの主観視点での画像、すなわち手を伸ばして作業対象物に触れている様子が撮影される。 Figure 16 is a diagram showing the head of worker W. As described above, worker W has a microphone 972, earphones 973, and a wearable camera 974 fixed to his head. In Figure 16, the wearable camera 974 captures an image from the subjective viewpoint of worker W, that is, an image of worker W reaching out his hand to touch the work object.

図17は、第2の実施の形態における情報提示システム1Cの処理の概要を示すフローチャートである。第2の実施の形態では、まず記録部16が作業者Wの作業を記録し(S401)、データベース、すなわち記憶装置14への作業ログを登録する(S402)。作業の記録および記憶装置14への登録は作業者Wによる作業が終了するまで繰り返される。作業者Wによる作業が終了すると(S403:YES)、要注意項目の検出と評価KPIの割り当てが行われ(S404)、その結果が記憶装置14に書き込まれる(S405)。以下では、S401~S405を登録フェーズと呼ぶ。登録フェーズが完了すると、表示情報の絞り込み(S406)と要注意項目の表示(S407)を繰り返す。 Figure 17 is a flowchart showing an overview of the processing of the information presentation system 1C in the second embodiment. In the second embodiment, the recording unit 16 first records the work of the worker W (S401) and registers the work log in the database, i.e., the storage device 14 (S402). Recording of the work and registration in the storage device 14 are repeated until the work by the worker W is completed. When the work by the worker W is completed (S403: YES), detection of items requiring attention and assignment of evaluation KPIs are performed (S404), and the results are written to the storage device 14 (S405). Below, S401 to S405 are referred to as the registration phase. When the registration phase is completed, narrowing of the displayed information (S406) and display of items requiring attention (S407) are repeated.

図18は、作業記録テーブル1300の一例を示す図である。作業記録テーブル1300は複数のレコードを有し、各レコードは作業クラス1301、作業名称1302、作業実施登録ID1303、対象物クラス1304、対象3Dモデル1305、対象の個別ID1306、対象の個別設置位置1307、対象の配置角度1308、作業者1309、着手時刻1310、終了時刻1311、中断時間リスト1312、画像リスト1313、作業音声データ1314、および作業音声コマンド1315のフィールドを有する。 Figure 18 is a diagram showing an example of a work record table 1300. The work record table 1300 has multiple records, and each record has fields for work class 1301, work name 1302, work implementation registration ID 1303, object class 1304, object 3D model 1305, individual object ID 1306, individual object installation position 1307, object placement angle 1308, worker 1309, start time 1310, end time 1311, interruption time list 1312, image list 1313, work voice data 1314, and work voice command 1315.

作業クラス1301には、作業の内容を示す作業クラス番号が格納される。作業名称1302には、作業の名称が格納される。作業実施登録ID1303には、作業記録の識別子が格納される。すなわち、同種の作業が行われた場合には前述の作業クラス1301および作業名称1302には同一の値が格納されるが、作業実施登録ID1303は1回の作業ごとに異なる値が設定される。 Work class 1301 stores a work class number indicating the content of the work. Work name 1302 stores the name of the work. Work execution registration ID 1303 stores an identifier for the work record. In other words, when the same type of work is performed, the same values are stored in the aforementioned work class 1301 and work name 1302, but a different value is set for work execution registration ID 1303 for each work.

対象物クラス1304には、作業の対象物のクラスが格納される。対象3Dモデル1305には、作業対象物の3Dモデルの名称、またはファイル名が格納される。対象の個別ID1306には作業対象物の個別IDが格納される。対象の個別設置位置307には作業対象物の設置位置が格納される。対象の配置角度1308には、作業対象物の配置角度が格納される。作業者1309には、作業者の名前または氏名が格納される。着手時刻1310には作業を開始した時刻が格納される。終了時刻1311には、作業が終了した時刻が格納される。中断時間リスト1312には、作業を中断した時間のリストが格納される。画像リスト1313には、作業中に撮影した画像の画像IDのリストが格納される。作業音声データ1314には、作業中に録音された音声データの音声IDが格納される。作業音声コマンド1315には、作業音声のコマンドの識別子が格納される。 The object class 1304 stores the class of the object of the work. The object 3D model 1305 stores the name of the 3D model of the object to be worked on or the file name. The object individual ID 1306 stores the individual ID of the object to be worked on. The object individual installation position 307 stores the installation position of the object to be worked on. The object placement angle 1308 stores the placement angle of the object to be worked on. The worker 1309 stores the name or full name of the worker. The start time 1310 stores the time when the work started. The end time 1311 stores the time when the work ended. The interruption time list 1312 stores a list of the times when the work was interrupted. The image list 1313 stores a list of image IDs of images taken during work. The work voice data 1314 stores the voice ID of the voice data recorded during work. The work voice command 1315 stores the identifier of the work voice command.

図19は、画像テーブル1400および音声テーブル1500の一例を示す図である。画像テーブル1400は複数のレコードを有し、各レコードは画像ID1401、画像URL1402、画像種別1403、撮影機器ID1404、撮影ユーザID1405、撮影時刻1406、および作業クラス1407のフィールドを有する。画像ID1401には、画像の識別子が格納される。作業記録テーブル1300における画像リスト1313のフィールドに含まれる画像ID1401により作業実施登録ID1303と画像ID1401の対応付けができる。 Figure 19 shows an example of an image table 1400 and an audio table 1500. The image table 1400 has multiple records, and each record has fields for an image ID 1401, an image URL 1402, an image type 1403, a photographing device ID 1404, a photographing user ID 1405, a photographing time 1406, and a work class 1407. The image ID 1401 stores an image identifier. The work implementation registration ID 1303 and the image ID 1401 can be associated with each other by the image ID 1401 contained in the image list 1313 field in the work record table 1300.

画像URL1402には、画像が保存されているURLが格納される。画像種別1403には、画像の種別が格納される。撮影機器ID1404には、画像の撮影に用いられた機器の識別子が格納される。撮影ユーザID1405には、画像を撮影したユーザのIDが格納される。撮影時刻1406には、画像が撮影された時刻が格納される。作業クラス1407には、作業の内容を示す作業クラス番号が格納される。作業クラス1407は作業記録テーブル1300における作業クラス1301と同種の情報である。 Image URL 1402 stores the URL where the image is saved. Image type 1403 stores the type of image. Photography device ID 1404 stores the identifier of the device used to photograph the image. Photography user ID 1405 stores the ID of the user who photographed the image. Photography time 1406 stores the time the image was photographed. Work class 1407 stores a work class number indicating the content of the work. Work class 1407 is the same type of information as work class 1301 in work record table 1300.

音声テーブル1500は複数のレコードを有し、各レコードは音声ID1501、音声URL1502、音声種別1503、録音機器ID1504、録音ユーザID1505、録音時刻1506、作業音声コマンド1507のフィールドを有する。音声ID1501には、音声データの識別子が格納される。作業記録テーブル1300における作業音声データ1314のフィールドに含まれる音声ID1501により作業実施登録ID1303と音声ID1501の対応付けができる。音声URL1502には、音声データが保存されているURLが格納される。 The audio table 1500 has multiple records, and each record has fields for audio ID 1501, audio URL 1502, audio type 1503, recording device ID 1504, recording user ID 1505, recording time 1506, and work audio command 1507. The audio ID 1501 stores an identifier for the audio data. The audio ID 1501 included in the work audio data 1314 field in the work record table 1300 allows the work execution registration ID 1303 to be associated with the audio ID 1501. The audio URL 1502 stores the URL where the audio data is saved.

音声種別1503には、音声データの種別が格納される。録音機器ID1504には、音声データの記録に用いた機器の識別子が格納される。録音ユーザID1505には、音声データを記録したユーザのIDが格納される。録音時刻1506には、音声データを記録した時刻が格納される。なお録音時刻1506には、録音を開始した時刻、録音が終了した時刻、録音を開始した時刻および録音が終了した時刻、のいずれが格納されてもよい。作業音声コマンド1507には、作業音声のコマンドの識別子が格納される。 Audio type 1503 stores the type of audio data. Recording device ID 1504 stores the identifier of the device used to record the audio data. Recording user ID 1505 stores the ID of the user who recorded the audio data. Recording time 1506 stores the time when the audio data was recorded. Note that recording time 1506 may store any of the time when recording started, the time when recording ended, or the time when recording started and ended. Work audio command 1507 stores an identifier of the command for the work audio.

図20は、手順テーブル1600および作業姿勢テーブル1700の一例を示す図である。手順テーブル1600は複数のレコードを有し、各レコードは作業クラス1601、作業名称1602、開始条件1603、対象箇所1604、およびCADモデル変化1605のフィールドを有する。作業クラス1601には、作業の内容を示す作業クラス番号が格納される。作業名称1602には、作業の名称が格納される。開始条件1603には、作業を開始するために事前に完了すべき作業クラスが格納される。事前に完了すべき作業クラスが存在しない場合には、「なし」が格納される。対象箇所1604には、作業の対象箇所を示す**が格納される。CADモデル変化1605には、作業により変化するCADモデルの前後のデータが格納される。 Figure 20 shows an example of a procedure table 1600 and a work posture table 1700. The procedure table 1600 has multiple records, and each record has fields for work class 1601, work name 1602, start condition 1603, target location 1604, and CAD model change 1605. The work class number indicating the content of the work is stored in the work class 1601. The name of the work is stored in the work name 1602. The start condition 1603 stores the work class that must be completed before the work can be started. If there is no work class that must be completed beforehand, "none" is stored. The target location 1604 stores ** indicating the target location of the work. The CAD model change 1605 stores data before and after the CAD model that changes due to the work.

作業姿勢テーブル1700は複数のレコードを有し、各レコードはユーザID1701、取得時刻1702、作業ID1703、位置1704、基本角度1705、推定動作作業1706、関節第1情報1707、および関節第2情報1708のフィールドを有する。ユーザID1701には、作業者であるユーザの識別子が格納される。取得時刻1702には、姿勢情報を取得した時刻が格納される。作業ID1703には、作業の識別子である作業記録テーブル1300の作業実施登録ID1303が格納される。 The work posture table 1700 has multiple records, and each record has fields for a user ID 1701, acquisition time 1702, a work ID 1703, a position 1704, a base angle 1705, an estimated motion work 1706, first joint information 1707, and second joint information 1708. The user ID 1701 stores the identifier of the user who is the worker. The acquisition time 1702 stores the time when the posture information was acquired. The work ID 1703 stores the work implementation registration ID 1303 of the work record table 1300, which is an identifier of the work.

位置1704には、ユーザの位置が格納される。基本角度1705には、基本となる角度が格納される。推定動作作業1706には、ユーザが実行していると推定される作業の名称が格納される。関節第1情報1707および関節第2情報1708には、それぞれの関節の角度情報が格納される。すなわち作業姿勢テーブル1700には、ある作業者Wが1つの作業を行った際の1以上の時刻における位置や姿勢などが格納される。 Position 1704 stores the user's position. Base angle 1705 stores a base angle. Estimated motion task 1706 stores the name of the task that is estimated to be performed by the user. First joint information 1707 and second joint information 1708 store angle information of each joint. That is, task posture table 1700 stores the position and posture at one or more times when a worker W performs a task.

(登録フェーズ)
図21は、記録部16および事後分析部17の詳細構成図である。記録部16は、手姿勢抽出プログラム161、対象部品推定プログラム162、作業内容推定プログラム163、ユーザ位置姿勢推定プログラム164、および固定カメラ位置角度推定プログラム165を含む。手姿勢抽出プログラム161は、主観画像から手の姿勢を抽出する。対象部品推定プログラム162は、主観画像から対象部品を推定する。作業内容推定プログラム163は、主観画像における推定対象物、手の姿勢、および奥行き距離から作業内容を推定する。ユーザ位置姿勢推定プログラム164は、固定カメラ画像から作業中の作業者Wの位置と姿勢を推定して作業姿勢テーブル1700に記録する。固定カメラ位置角度推定プログラム165は、固定カメラ971の位置と対象部品の位置から主観画像の撮影位置と角度を推定する。
(Registration phase)
21 is a detailed configuration diagram of the recording unit 16 and the post-analysis unit 17. The recording unit 16 includes a hand posture extraction program 161, a target part estimation program 162, a task content estimation program 163, a user position and posture estimation program 164, and a fixed camera position and angle estimation program 165. The hand posture extraction program 161 extracts the posture of the hand from the subjective image. The target part estimation program 162 estimates the target part from the subjective image. The task content estimation program 163 estimates the task content from the estimated object, the posture of the hand, and the depth distance in the subjective image. The user position and posture estimation program 164 estimates the position and posture of the worker W during the task from the fixed camera image and records it in the task posture table 1700. The fixed camera position and angle estimation program 165 estimates the shooting position and angle of the subjective image from the position of the fixed camera 971 and the position of the target part.

さらに記録部16は、主観撮影画像を用いて作業の開始および作業の終了を検出し、その時刻を作業記録テーブル1300に記録する。その際に記録部16は、作業者Wのイヤホン973から次のように音声を出力してもよい。すなわち、作業の開始を検出した際には、「作業対象:ddd、開始時刻:dddで作業開始を確認しました」と出力し、作業の終了を検出した際には「作業対象:ddd、開始時刻:dddで作業終了を確認しました」と出力する。作業者Wがマイク972に向かって「作業対象ddd、ddd作業を開始」や「作業を終了」と発話し、記録部16は音声認識により発話内容を認識して、発話された時刻を作業記録テーブル1300に記録してもよい。 Furthermore, the recording unit 16 detects the start and end of work using the subjectively photographed images and records the times in the work record table 1300. At this time, the recording unit 16 may output a voice from the earphones 973 of the worker W as follows. That is, when the start of work is detected, the recording unit 16 outputs "Work start confirmed at work object: ddd, start time: ddd", and when the end of work is detected, the recording unit 16 outputs "Work end confirmed at work object: ddd, start time: ddd". The worker W may speak into the microphone 972, "Work object ddd, start work on ddd" or "Finish work", and the recording unit 16 may recognize the content of the speech by voice recognition and record the time of the speech in the work record table 1300.

事後分析部17は、KPI生成プログラム171、リスク判断プログラム172、および作業異常判断プログラム173を含む。KPI生成プログラム171は、作業グループに登録されたセンシングデータからKPI(Key Performance Indicator:重要業績評価指標)を生成する。リスク判断プログラム172は、KPIを用いて登録されたリスクの有無判断を行う。作業異常判断プログラム173は、KPIを用いて作業の異常値判断を行う。 The post-analysis unit 17 includes a KPI generation program 171, a risk judgment program 172, and a work abnormality judgment program 173. The KPI generation program 171 generates KPIs (Key Performance Indicators) from the sensing data registered in the work group. The risk judgment program 172 uses the KPIs to judge the presence or absence of registered risks. The work abnormality judgment program 173 uses the KPIs to judge abnormal values of work.

事後分析部17のKPI生成プログラム171は、記録されたデータを用いてKPIを作成する。KPIはたとえば以下の8つのいずれかを用いることができる。(1)作業所要時間。(2)作業内で複数の工程に分かれている場合には工程ごとの作業時間。(3)対象物の色形による他事例との類似性。(4)対象物のIDが定められている場合はそのID。(5)対象物の処理失敗が確認された場合の失敗回数。(6)対象物の作業位置の誤差。(7)別センサなどを用いて作業中のトルク変動が計算できる場合には、その最大値、最小値、変化率などの値。(8)作業中の音スペクトルを解析した値。ただしKPIの算出方法はこれに限定されない。 The KPI generation program 171 of the post-analysis unit 17 creates KPIs using the recorded data. For example, any of the following eight can be used as KPIs: (1) Time required for the task. (2) Task time for each step, if the task is divided into multiple steps. (3) Similarity with other cases based on the color and shape of the object. (4) ID of the object, if one has been set. (5) Number of failures when processing of the object is confirmed. (6) Error in the task position of the object. (7) Maximum, minimum, rate of change, and other values of torque fluctuation during the task, if it can be calculated using a separate sensor, etc. (8) Values obtained by analyzing the sound spectrum during the task. However, the method of calculating KPIs is not limited to these.

これらの算出方法うち、画像からKPIを求める方法については、画像処理や深層学習などを用いることができる。また、このKPIに影響した画像要素部分を色づける方法(Explainable)などが知られている。事後分析部17は、これまでの説明内容に限定されず、公知の様々な手法を用いてKPIを算出できる。 Of these calculation methods, image processing and deep learning can be used to find KPIs from images. Also known is a method of coloring image elements that have influenced the KPI (Explainable). The post-analysis unit 17 is not limited to the content described so far, and can calculate KPIs using various known methods.

事後分析部17のリスク判断プログラム172は、このKPIを用いて、以下の二つのいずれかの手法により潜在リスクを計算し、登録情報テーブル1100の重要度1102の欄に潜在リスクの値を記載する。第1の手法は、クラスタリングによるイレギュラー検出である。この場合は、まず同一または類似する作業をグルーピングし、同一のグループ内で評価対象のKPIが他の事例と大きく異なっている場合に、作業結果が問題を含んでいるリスクがあると判断する。リスクの大きさは外れ値の偏差の大きさで評価できる。 The risk judgment program 172 of the post-analysis unit 17 uses this KPI to calculate the potential risk using one of the following two methods, and enters the value of the potential risk in the importance 1102 column of the registration information table 1100. The first method is irregularity detection by clustering. In this case, the same or similar tasks are first grouped, and if the KPI being evaluated is significantly different from other cases within the same group, it is determined that there is a risk that the work results contain problems. The magnitude of the risk can be evaluated by the size of the deviation of the outlier.

第2の手法は、教師付きモデルによるリスク検出である。この場合は、評価対象のKPIが問題を起こした事例と類似しているクラスに含まれる場合に、作業結果が問題を含んでいるリスクがあると判断する。具体的には、同一または類似の作業をグルーピングし、作業結果のうち、問題要素を含む事例をピックアップする。そして、問題事例を問題事例グループのタグに応じてグルーピングする。さらに、問題事例に含まれたケースと、問題事例に含まれなかったケースを切り分ける判別機を作成する。この判別機には、サポートベクタマシン、ランダムフォレスト、深層学習など任意の判別手法を用いることができる。またこの判別機では、判別の確からしさを含む指標を計算することができる。新しいサンプルが得られると、判別機を用いて問題事例グループに含まれるか否かを判別する。 The second method is risk detection using a supervised model. In this case, if the KPI to be evaluated is included in a class similar to the problematic cases, it is determined that there is a risk that the work results contain problems. Specifically, identical or similar work is grouped, and cases that contain problem elements are picked out from the work results. The problematic cases are then grouped according to the problematic case group tags. Furthermore, a discriminator is created that separates cases that are included in the problematic cases from cases that are not included in the problematic cases. Any discrimination method such as support vector machines, random forests, and deep learning can be used for this discriminator. This discriminator can also calculate an index including the accuracy of the discrimination. When a new sample is obtained, the discriminator is used to determine whether or not it is included in the problematic case group.

図22は、リスク判断プログラム172によるリスク算出処理を示すフローチャートである。図22に示す処理は、リスクを判断すべき作業結果(以下、「判断対象結果」と呼ぶ)が特定された状態で実行される。リスク判断プログラム172は、まずステップS381において第1手法と第2手法のいずれを用いるかを決定する。リスク判断プログラム172は、第1手法を用いる場合にはステップS382に進み、第2手法を用いる場合にはステップS387に進む。ステップS382ではリスク判断プログラム172は、判断対象結果と同一または類似するグループに分類されたデータを呼び出す。 Figure 22 is a flowchart showing the risk calculation process by the risk judgment program 172. The process shown in Figure 22 is executed in a state where the work result for which the risk is to be judged (hereinafter referred to as the "judgment target result") has been identified. The risk judgment program 172 first determines whether to use the first method or the second method in step S381. If the risk judgment program 172 uses the first method, it proceeds to step S382, and if the risk judgment program 172 uses the second method, it proceeds to step S387. In step S382, the risk judgment program 172 calls up data classified into a group that is the same as or similar to the judgment target result.

続くステップS383ではリスク判断プログラム172は、判断対象結果のKPIがグループのKPI、すなわちステップSS382において呼び出した他のデータのKPIから逸脱するか否かを判断する。リスク判断プログラム172は、判断対象結果のKPIがグループのKPIから逸脱していると判断する場合はステップS384に進み、判断対象結果のKPIがグループのKPIから逸脱しないと判断する場合はステップS386に進む。ステップS384ではリスク判断プログラム172は、リスクの大きさを外れ値の偏差の大きさとする。具体的には、そのKPIに割り当てられた固定値とKPIの標準偏差の積をリスクの大きさとする。 In the next step S383, the risk judgment program 172 judges whether the KPI of the judgment result deviates from the group's KPI, i.e., the KPI of the other data called up in step S382. If the risk judgment program 172 judges that the KPI of the judgment result deviates from the group's KPI, it proceeds to step S384, and if it judges that the KPI of the judgment result does not deviate from the group's KPI, it proceeds to step S386. In step S384, the risk judgment program 172 determines the magnitude of the risk as the magnitude of the deviation of the outlier. Specifically, it determines the magnitude of the risk as the product of the fixed value assigned to that KPI and the standard deviation of the KPI.

続くステップS385ではリスク判断プログラム172は、登録情報テーブル1100に新たなレコードを追加して図22に示す処理を終了する。なおこの新たなレコードにおける重要度1102の欄には、ステップS384において算出したリスクの大きさが格納される。ステップS386ではリスク判断プログラム172は、判断対象結果はリスクなしと判断して登録情報テーブル1100には追記を行わずに図22に示す処理を終了する。 In the next step S385, the risk judgment program 172 adds a new record to the registration information table 1100 and ends the process shown in FIG. 22. The magnitude of risk calculated in step S384 is stored in the importance 1102 column of this new record. In step S386, the risk judgment program 172 determines that there is no risk in the judgment target result, and ends the process shown in FIG. 22 without adding any information to the registration information table 1100.

ステップS387ではリスク判断プログラム172は、前述の判別機を用いて判断対象結果を分類し、判断対象結果が類似すると分類されたグループのデータを呼び出す。続くステップS388ではリスク判断プログラム172は、呼び出されたグループが問題を有するグループであるか否かを判断する。リスク判断プログラム172は、問題のあるグループである場合にはステップS389に進み、問題のないグループの場合にはステップS386に進む。ステップS389ではリスク判断プログラム172は、判別機が出力する判別の確からしさの指標をリスクの大きさとする。続くステップS390ではリスク判断プログラム172は、登録情報テーブル1100に新たなレコードを追加して図22に示す処理を終了する。なおこの新たなレコードにおける重要度1102の欄には、ステップS389において算出したリスクの大きさが格納される。 In step S387, the risk judgment program 172 classifies the judgment target results using the discriminator described above, and calls up the data of the group classified as having similar judgment target results. In the following step S388, the risk judgment program 172 judges whether the called group is a problematic group. If the group is a problematic group, the risk judgment program 172 proceeds to step S389, and if the group is not a problematic group, the risk judgment program 172 proceeds to step S386. In step S389, the risk judgment program 172 sets the index of the accuracy of the judgment output by the discriminator as the magnitude of risk. In the following step S390, the risk judgment program 172 adds a new record to the registration information table 1100 and ends the process shown in FIG. 22. The magnitude of risk calculated in step S389 is stored in the importance 1102 column of this new record.

なお、登録情報テーブル1100に登録される情報のうち、説明文1105には、機械学習を用いた場合には、テストデータに関連付けられた説明文の内容が利用される。また、クラスタリングによって特定のKPIに異常値があったことによる判断をした場合には、同KPIの名称とKPIの変動幅を文字列として記録する。この文字列とはたとえば、「所要時間 100秒以上」などである。機械学習システムが警告文の自動生成機能を有する場合には、事後分析部17は生成された警告文を説明文1105に保存する。関連するリスク説明が複数のウィンドウにまたがっている場合には、事後分析部17は表示ウィンドウに親子関係を設定し、関連保存情報ID1107に関連する保存情報IDを記載する。 When machine learning is used, the content of the description associated with the test data is used for the description 1105 among the information registered in the registration information table 1100. When a determination is made by clustering that a specific KPI has an abnormal value, the name of the KPI and the fluctuation range of the KPI are recorded as a character string. An example of this character string is "Time required: 100 seconds or more." When the machine learning system has a function for automatically generating warning messages, the post-mortem analysis unit 17 saves the generated warning message in the description 1105. When the related risk description spans multiple windows, the post-mortem analysis unit 17 sets a parent-child relationship in the display window and enters the related saved information ID in the related saved information ID 1107.

(閲覧フェーズ)
閲覧フェーズではたとえば、閲覧者であるユーザUが登録情報テーブル1100などを参照して検査が必要な個所を表示する。この作業は開発後の品証活動や、メンテナンス時の検査活動に利用できる。ただし登録情報テーブル1100には多数の情報が登録されうるので選択が必要となる。ユーザUが明示的に表示する登録情報を選択してもよいし、コンテクスト評価部18がコンテクストを評価してユーザUによる明示の選択なしに映像生成部13が登録情報を表示をしてもよい。登録情報を即座に表示する代わりに、登録情報の存在をマーカでユーザUに報知し、ユーザUがマーカを選択した場合に登録情報を表示してもよい。
(Browse phase)
In the viewing phase, for example, the user U, who is the viewer, refers to the registered information table 1100 and displays the areas that require inspection. This operation can be used for quality assurance activities after development and inspection activities during maintenance. However, since a large amount of information can be registered in the registered information table 1100, selection is necessary. The user U may explicitly select the registered information to be displayed, or the context evaluation unit 18 may evaluate the context and the image generation unit 13 may display the registered information without the user U making an explicit selection. Instead of immediately displaying the registered information, the presence of the registered information may be notified to the user U with a marker, and the registered information may be displayed when the user U selects the marker.

図23は、第2の実施の形態の閲覧フェーズにおける登録情報の表示を示す図である。図23では特定空間内に存在する物体の3D CADモデルと、登録情報とが表示されている。この登録情報は、登録フェーズにおいて行われた分析結果とも言える。重要度が高い登録情報は、強調処理をおこなってもよい。具体的には、赤など目立つ色で表示してもよいし、マーカの形状を異ならせてもよいし、マーカのサイズを大きくしてもよい。登録情報は、次に説明する表示テンプレートを利用して表示されてもよい。 Figure 23 is a diagram showing the display of registered information in the browsing phase of the second embodiment. In Figure 23, a 3D CAD model of an object existing in a specific space and registered information are displayed. This registered information can be considered as the analysis result performed in the registration phase. Registered information with high importance may be emphasized. Specifically, it may be displayed in a conspicuous color such as red, the shape of the marker may be changed, or the size of the marker may be increased. The registered information may be displayed using a display template, which will be described next.

図24は、表示テンプレートの一例を示す図である。表示テンプレートには、保存情報ID表示欄981、潜在リスク表示欄982、説明文表示欄983、関連キーワード表示欄984、画像表示領域985、および選択肢表示欄986が含まれる。映像生成部13は、登録情報テーブル1100から必要な情報を読み取って表示テンプレートに当てはめる。たとえば、クラスタリングから推定されたリスクの場合は、説明文表示欄983に「KPI{値}が{値}の状態になっています。これは一般事例から{値}σ分乖離した状態です。」と表示する。また、機械学習から推定されたリスクの場合には、「KPI{値}が{値}の状態になっています。これは問題事例{値}の状態に分類される可能性があります。(信頼度{値})」と表示する。 24 is a diagram showing an example of a display template. The display template includes a saved information ID display field 981, a potential risk display field 982, an explanatory text display field 983, a related keyword display field 984, an image display area 985, and an option display field 986. The image generating unit 13 reads necessary information from the registered information table 1100 and applies it to the display template. For example, in the case of a risk estimated from clustering, the explanatory text display field 983 displays "KPI {value} is in {value} state. This state is {value} σ away from the general case." In addition, in the case of a risk estimated from machine learning, the following is displayed: "KPI {value} is in {value} state. This may be classified as a problem case {value} state. (Confidence {value})."

なおそれぞれの登録情報を表示するウィンドウは、別の情報を参照するためのボタンをさらに備えてもよい。すなわち、関連する画像を確認するためのボタン、KPIの分離グラフを表示するためのボタン、類似事例と比較表示するためのボタンである。さらに、同一の物体の異なる時刻の画像を画像表示領域985に表示するためのボタンが備えられてもよい。 The window displaying each piece of registered information may further include buttons for referencing other information. That is, a button for checking related images, a button for displaying a separation graph of KPIs, and a button for displaying a comparison with similar cases. Furthermore, a button may be provided for displaying images of the same object taken at different times in the image display area 985.

コンテクスト評価部18は、ユーザUの現在位置の付近に親オブジェクトを有する登録情報や、ユーザUの発話内容に関連する登録情報の重要度1102を、情報描画処理のステップS302において列挙される閾値よりも大きくしてもよい。コンテクスト評価部18はたとえば、ユーザUの音声を取得して、機械学習手法でテキストに変換したデータを検索し、キーワードリスト1104に登録されたキーワードに一致した内容があった場合には、各キーワードに関連付けられた重みに対応する値だけ重要度1102を増加させる。また、事前にユーザUが発話内容とキーワードの関連付けを行い、その関連付けられた対応関係を正解データとして会話データに対して機械学習を行い、ユーザUの発話を適切に解釈する機械学習モデルを作成してもよい。 The context evaluation unit 18 may increase the importance 1102 of registered information having a parent object near the current location of the user U or registered information related to the content of the user U's utterance above the threshold value listed in step S302 of the information drawing process. For example, the context evaluation unit 18 acquires the voice of the user U, searches for data converted into text by a machine learning method, and if there is content that matches a keyword registered in the keyword list 1104, increases the importance 1102 by a value corresponding to the weight associated with each keyword. In addition, the user U may associate the content of the utterance with the keywords in advance, and machine learning may be performed on the conversation data using the associated correspondence as correct answer data to create a machine learning model that appropriately interprets the utterance of the user U.

ユーザが仮想空間内を移動し、マーカのいずれかに近づくと、マーカの要約サブタイトルを表示する。サブタイトルはたとえば、問題事例のクラス名、外れ値を示すKPIの種類などである。さらにこのどれかをユーザがポインティングデバイスや視線入力で明示的な選択した場合や、会話のコンテクストとキーワードリスト1104との一致度が一定の値を超えた場合には、サマリ画面を表示する。このサマリ画面にはたとえば、前述の表示テンプレートを利用できる。サマリ画面は3D空間内の比較的小規模な領域に収まるサイズのウィンドウで表示することができ、ユーザが指定した場合には、読み上げなどの処理を行うことができる。サマリ画面の表示場所は、第1の実施の形態で示した手法を用いる。 When the user moves within the virtual space and approaches one of the markers, a summary subtitle of the marker is displayed. The subtitle can be, for example, the class name of the problem case, or the type of KPI that indicates an outlier. Furthermore, if the user explicitly selects one of these using a pointing device or eye-gaze input, or if the degree of match between the conversation context and keyword list 1104 exceeds a certain value, a summary screen is displayed. For example, the above-mentioned display template can be used for this summary screen. The summary screen can be displayed in a window that fits into a relatively small area in the 3D space, and can perform processing such as reading aloud if specified by the user. The location where the summary screen is displayed uses the method shown in the first embodiment.

さらに、ユーザUがいずれかのサマリ画面を対象として、ポインティングデバイスや視線入力で明示的な選択をした場合や、会話のコンテクスト一致度が一定の値を超えた場合には、関連ウィンドウを開く。この関連ウィンドウは、図24のようなテンプレート画面をHTMLのテンプレートとして用意し、必要部分に1100に登録された文字情報や数値情報を埋めることで警告ウィンドウを作成する。ウィンドウ内には、類似事例や関連情報の詳細表示を呼び出すためのボタンを配置する。 Furthermore, if user U explicitly selects one of the summary screens using a pointing device or eye gaze input, or if the conversation context match exceeds a certain value, a related window is opened. For this related window, a template screen like that shown in FIG. 24 is prepared as an HTML template, and a warning window is created by filling in the necessary parts with the character information and numerical information registered in 1100. Within the window, a button is placed to call up a detailed display of similar cases and related information.

図25は作業者Wの背後からの視点で見たリプレイ説明映像を示す図であり、図26は作業者Wの側面からの視点で見たリプレイ説明映像を示す図である。ユーザUが詳細情報の提示を選択した場合には、図25および図26に示すように、作業表示の再現モデルを仮想空間内に表示する。 Figure 25 is a diagram showing a replay explanation video seen from a viewpoint behind the worker W, and Figure 26 is a diagram showing a replay explanation video seen from a viewpoint from the side of the worker W. If the user U selects to present detailed information, a reproduced model of the work display is displayed in the virtual space, as shown in Figures 25 and 26.

映像生成部13は、作業姿勢テーブル1700に記録されたデータを用いて作業者Wの姿勢を再現した3Dモデルを表示する。また映像生成部13は、この3D表示する作業者モデルに関節情報を反映した3Dモデルを用いてもよいし、固定カメラの深度マップを元にしたポイントクラウドデータ、すなわち点群データを用いてもよい。作業者Wにより撮影された主観画像は、図25で示すように、どこの位置から撮影した映像かを明らかにして表示する。この表示には撮影位置を頂点とした四角推を半透明で表示し、その底面に主観撮影画像を提示することによって、対象の位置と撮影方向を表現する。 The image generating unit 13 uses the data recorded in the working posture table 1700 to display a 3D model that reproduces the posture of the worker W. The image generating unit 13 may also use a 3D model that reflects joint information in this 3D displayed worker model, or may use point cloud data based on a depth map of a fixed camera, i.e., point group data. The subjective image captured by the worker W is displayed, as shown in FIG. 25, making it clear from which position the image was captured. This display shows a semi-transparent square with the shooting positions as its vertices, and presents the subjectively captured image at the bottom to express the target position and shooting direction.

ただし、この四角推が他の物体と重畳して見にくくなる場合や、映像サイズが小さすぎて見えない、または大きすぎて見えない場合には、情報を表示するウィンドウを第1の実施の形態において説明した手法を用いてエネルギーの低い位置に配置する。図25に示すように、本来の撮影位置と異なる位置に疑似撮影位置である四角推の頂点を設定し、疑似撮影位置から真の撮影位置を参照する引き出し線を描画する。 However, if this rectangle overlaps with other objects and becomes difficult to see, or if the image size is too small or too large to see, a window displaying the information is placed at a low energy position using the method described in the first embodiment. As shown in Figure 25, the vertices of the rectangle, which are pseudo shooting positions, are set at positions different from the actual shooting positions, and leader lines are drawn from the pseudo shooting positions to reference the true shooting positions.

上述した第2の実施の形態によれば、次の作用効果が得られる。
(11)情報提示システム1Cが実行する表示方法は、コンテクスト評価部18が実行するユーザUの発話内容およびユーザUから親物体までの距離に基づき表示対象の登録情報を選択する選択処理、を含む。そのため、膨大な登録情報からユーザUに負担をかけることなく必要な情報を提示できる。
According to the above-described second embodiment, the following advantageous effects can be obtained.
(11) The display method executed by the information presentation system 1C includes a selection process executed by the context evaluation unit 18 to select registered information to be displayed based on the content of the user U's utterance and the distance from the user U to the parent object. Therefore, necessary information can be presented from a huge amount of registered information without imposing a burden on the user U.

(第2の実施の形態の変形例)
登録情報テーブル1100に記録された重要度1102が固定値であり、ユーザUの現在の利用意図を示すコンテクストとの関連度を動的に計算する機構を持ち、重要度と関連度の高さと情報対象との距離に応じて情報表示の表示粒度を調整して表示してもよい。また、各表示粒度の形態をとった際に配置位置に占める表示ウィンドウの大きさと、ユーザUにとっての表示ウィンドウの見かけ上の大きさを加味して、情報の表示粒度を決定してもよい。
(Modification of the second embodiment)
The importance 1102 recorded in the registration information table 1100 may be a fixed value, and a mechanism may be provided for dynamically calculating the relevance with a context indicating the current intention of the user U to use the information, and the display granularity of the information display may be adjusted according to the importance, relevance, and distance from the information target. The display granularity of the information may be determined taking into account the size of the display window that occupies the arrangement position when each display granularity is adopted, and the apparent size of the display window for the user U.

―第3の実施の形態―
図27を参照して、情報提示システムの第3の実施の形態を説明する。以下の説明では、第2の実施の形態と同じ構成要素には同じ符号を付して相違点を主に説明する。特に説明しない点については、第2の実施の形態と同じである。本実施の形態では、主に、特定空間を訪れた第三者もデータの記録も行う点で、第1の実施の形態と異なる。本実施の形態では、前述の作業者WやユーザUと区別するために、この第三者を訪問者Vと呼ぶ。
--Third embodiment--
A third embodiment of the information presentation system will be described with reference to FIG. 27. In the following description, the same components as those in the second embodiment are given the same reference numerals, and differences will be mainly described. Points that are not particularly described are the same as those in the second embodiment. This embodiment differs from the first embodiment mainly in that a third party who visits a specific space also records data. In this embodiment, this third party is called a visitor V to distinguish him from the worker W and user U described above.

本実施の形態における情報提示システムの構成は第2の実施の形態と同様である。特定空間を訪れた訪問者Vは、ある箇所(以下、「注目箇所」と呼ぶ)に故障や傷などの何らかの発見をした際に、記憶装置14に格納される登録情報テーブル1100にデータを追加する。訪問者Vはたとえば、自身が保有するスマートフォンの記録アプリを起動し、注目箇所の撮影を行い、コメントを音声またはテキストで入力し、撮影箇所の情報を登録情報テーブル1100に登録する。注目箇所を特定して記録する方法を3つ説明する。 The configuration of the information presentation system in this embodiment is the same as that in the second embodiment. When a visitor V who visits a specific space discovers something, such as a malfunction or a scratch, in a certain location (hereinafter referred to as a "location of interest"), the visitor V adds data to the registration information table 1100 stored in the storage device 14. For example, the visitor V starts a recording app on his or her smartphone, takes a photo of the location of interest, inputs a comment by voice or text, and registers information about the location of the photo in the registration information table 1100. Three methods for identifying and recording locations of interest are explained below.

第1の手法では、訪問者Vに3Dモデルと説明図を与えて、注目箇所を訪問者V自身が手動で登録情報テーブル1100に入力する。すなわち情報提示システムの機能として、注目箇所を特定する処理は行わない。 In the first method, a 3D model and an explanatory diagram are provided to the visitor V, and the visitor V himself/herself manually inputs the points of interest into the registration information table 1100. In other words, the information presentation system does not perform a process to identify points of interest.

第2の手法では、特定空間の内部を撮影する固定カメラが存在しており、第2の実施の形態において作業者Wを識別した手法により撮影画像中の訪問者Vが特定される。記録アプリは、固定カメラが撮影している間に訪問者Vにスマートフォンを動かす指示を出し、訪問者Vはスマートフォンを動かす。記録アプリはスマートフォンに内蔵された加速度センサの出力を取得し、スマートフォンが動かされたタイミングを特定して固定カメラの映像を処理する装置に出力する。その装置は、スマートフォンの加速度が変化したタイミングにおいて映像内でスマートフォンを動かしている人間を訪問者Vとして特定し、その訪問者Vが所持しているスマートフォンの位置および姿勢から注目箇所を特定する。 In the second technique, a fixed camera is present that captures images of the interior of a specific space, and a visitor V in the captured images is identified by the technique used to identify a worker W in the second embodiment. The recording app instructs the visitor V to move their smartphone while the fixed camera is capturing images, and the visitor V moves the smartphone. The recording app obtains the output of an acceleration sensor built into the smartphone, identifies the timing at which the smartphone was moved, and outputs the output to a device that processes the images from the fixed camera. The device identifies the person moving the smartphone in the image at the timing when the acceleration of the smartphone changes as visitor V, and identifies the point of interest from the position and orientation of the smartphone held by visitor V.

第3の手法では、まず映像から位置を一意に特定できるマーカ、たとえば座席番号を示す文字列、ARマーカ、二次元コードなどを特定空間内に設定しておく。このマーカの位置は記録アプリに予め記録されている。訪問者Vは、記録アプリを用いて当該箇所の近くにあるマーカを撮影し、そこから問題位置までカメラを動かして撮影する。記録アプリは、撮影結果の映像変化からカメラパラメータ変化の追跡を行い、撮影箇所を推定する。 In the third method, a marker whose position can be uniquely identified from the image is first set in a specific space, such as a character string indicating a seat number, an AR marker, or a two-dimensional code. The position of this marker is recorded in advance in a recording app. Visitor V uses the recording app to capture a picture of the marker near the location in question, and then moves the camera from there to the problem position to capture another picture. The recording app tracks changes in the camera parameters from changes in the captured image, and estimates the location where the picture was taken.

図27は、第3の実施の形態における情報提示システムの処理概要を示すフローチャートである。まず訪問者Vが記録アプリを起動し(S411)、注目箇所の記録および撮影を行い(S412)撮影位置を登録する(S413)。そしてこれらのデータを記憶装置14に記録する。注目箇所を特定して記録する具体的な方法は、上記の3つのいずれを用いてもよい。訪問者Vは、注目箇所を何か所でも登録可能であり、記録が完了すると(S415:YES)第2の実施の形態と同様に次の処理が行われる。すなわち、要注意項目の検出と評価値KPIの割当(S416)、およびデータベースの更新(S417)を行い、図27に示す処理を終了する。 Figure 27 is a flowchart showing an outline of the processing of the information presentation system in the third embodiment. First, the visitor V starts the recording application (S411), records and photographs the points of interest (S412), and registers the photographing location (S413). These data are then recorded in the storage device 14. Any of the above three methods may be used as a specific method for identifying and recording points of interest. The visitor V can register any number of points of interest, and when recording is completed (S415: YES), the next process is performed in the same manner as in the second embodiment. That is, attention-requiring items are detected and assigned evaluation value KPIs (S416), and the database is updated (S417), and the process shown in Figure 27 ends.

上述した第3の実施の形態によれば、特定空間を訪問した訪問者Vが新たなデータを登録情報テーブル1100に追加できる。 According to the third embodiment described above, a visitor V who visits a specific space can add new data to the registration information table 1100.

上述した各実施の形態および変形例において、機能ブロックの構成は一例に過ぎない。別々の機能ブロックとして示したいくつかの機能構成を一体に構成してもよいし、1つの機能ブロック図で表した構成を2以上の機能に分割してもよい。また各機能ブロックが有する機能の一部を他の機能ブロックが備える構成としてもよい。 In each of the above-described embodiments and variations, the functional block configurations are merely examples. Several functional configurations shown as separate functional blocks may be configured together, or a configuration shown in a single functional block diagram may be divided into two or more functions. In addition, some of the functions of each functional block may be provided by other functional blocks.

上述した各実施の形態および変形例において、プログラムは記憶装置14に格納されていてもよい。また、演算装置40が不図示の入出力インタフェースを備え、必要なときに入出力インタフェースと演算装置40が利用可能な媒体を介して、他の装置からプログラムが読み込まれてもよい。ここで媒体とは、例えば入出力インタフェースに着脱可能な記憶媒体、または通信媒体、すなわち有線、無線、光などのネットワーク、または当該ネットワークを伝搬する搬送波やディジタル信号、を指す。また、プログラムにより実現される機能の一部または全部がハードウエア回路やFPGAにより実現されてもよい。 In each of the above-described embodiments and variations, the program may be stored in the storage device 14. The calculation device 40 may also be provided with an input/output interface (not shown), and the program may be loaded from another device when necessary via the input/output interface and a medium available to the calculation device 40. Here, the medium refers to, for example, a storage medium that is detachable from the input/output interface, or a communication medium, i.e., a network such as a wired, wireless, or optical network, or a carrier wave or digital signal that propagates through the network. Also, some or all of the functions realized by the program may be realized by a hardware circuit or FPGA.

上述した各実施の形態および変形例は、それぞれ組み合わせてもよい。上記では、種々の実施の形態および変形例を説明したが、本発明はこれらの内容に限定されるものではない。本発明の技術的思想の範囲内で考えられるその他の態様も本発明の範囲内に含まれる。 The above-mentioned embodiments and modifications may be combined with each other. Although various embodiments and modifications have been described above, the present invention is not limited to these. Other aspects that are conceivable within the scope of the technical concept of the present invention are also included within the scope of the present invention.

1、1A、1B、1C … 情報提示システム
10 … サーバ
11 … テーブル更新部
12 … 情報配置部
12a … エネルギーマップ生成部
12b … 基準位置決定部
13 … 映像生成部
20 … クライアント
U … ユーザ
V … 訪問者
REFERENCE SIGNS LIST 1, 1A, 1B, 1C... Information presentation system 10... Server 11... Table update unit 12... Information placement unit 12a... Energy map generation unit 12b... Reference position determination unit 13... Image generation unit 20... Client U... User V... Visitor

Claims (11)

三次元空間内の親物体に関連付けられた登録情報を前記親物体とともに観察者の主観視点で表示する表示方法であって、
1または複数の前記観察者のそれぞれの視点位置において、前記登録情報の配置に適した領域を示す二次元平面に関するデータであるエネルギーマップを1または複数作成するエネルギーマップ生成処理と、
前記エネルギーマップにおいて、第一の位置に比してエネルギー量が低い第二の位置に前記登録情報を表示する基準位置を設定する基準位置決定処理と、
前記親物体および前記基準位置を含む領域に描画される前記登録情報を前記観察者の主観視点で描画する描画処理と、を含む表示方法。
A display method for displaying registration information associated with a parent object in a three-dimensional space together with the parent object from a subjective viewpoint of an observer, comprising:
an energy map generation process for generating one or more energy maps, which are data relating to a two-dimensional plane indicating an area suitable for arranging the registration information, at each of the viewpoint positions of the one or more observers;
a reference position determination process for setting a reference position for displaying the registration information at a second position in the energy map, the second position having a lower energy amount than a first position;
a rendering process for rendering the registration information rendered in an area including the parent object and the reference position from a subjective viewpoint of the observer.
請求項1に記載の表示方法において、
前記エネルギーマップ生成処理では、前記親物体の領域に対して正のエネルギー量が付与され、前記親物体の周辺のに対して不のエネルギー量が付与される、表示方法。
The display method according to claim 1,
In the energy map generation process, a positive amount of energy is assigned to an area of the parent object, and a negative amount of energy is assigned to an area around the parent object.
請求項1に記載の表示方法において、
前記エネルギーマップ生成処理では、すでに表示されている他の前記登録情報の領域に対して正のエネルギー量が付与される、表示方法。
The display method according to claim 1,
In the energy map generation process, a positive energy amount is assigned to an area of other registered information that is already displayed.
請求項1に記載の表示方法において、
前記エネルギーマップ生成処理では、当該登録情報に関連する他の前記登録情報がすでに表示されている領域の近傍の領域に対して負のエネルギー量が付与される、表示方法。
The display method according to claim 1,
In the energy map generation process, a negative amount of energy is assigned to an area adjacent to an area in which other registered information related to the registered information is already displayed.
請求項1に記載の表示方法において、
前記基準位置決定処理では、それぞれの前記エネルギーマップの前記基準位置におけるエネルギー量の合計が小さくなるように前記基準位置が決定される、表示方法。
The display method according to claim 1,
A display method, wherein in the reference position determination process, the reference positions are determined so that a sum of energy amounts at the reference positions of each of the energy maps is small.
請求項5に記載の表示方法において、
前記基準位置決定処理は、
三次元座標を有する仮基準位置をあらかじめ設定し、
前記仮基準位置に対応するそれぞれの前記エネルギーマップ上の位置を特定し、
それぞれの前記エネルギーマップにおいて、前記仮基準位置に対応する位置のエネルギー量の合計が小さくなるように前記仮基準位置の移動ベクトルを設定し、
前記仮基準位置に、それぞれの前記エネルギーマップにおいて算出した前記移動ベクトルを合算することで前記仮基準位置を更新し、
前記仮基準位置を更新する前後における、前記仮基準位置に対応する位置のエネルギー量の合計の変化が閾値以下になった際の前記仮基準位置を前記基準位置とする繰り返し計算を行う、表示方法。
The display method according to claim 5,
The reference position determination process includes:
A temporary reference position having three-dimensional coordinates is set in advance;
identifying positions on the energy map corresponding to the tentative reference positions;
a movement vector of the tentative reference position is set so that a total energy amount of a position corresponding to the tentative reference position is reduced in each of the energy maps;
updating the tentative reference position by adding up the movement vectors calculated in each of the energy maps to the tentative reference position;
a display method for performing repeated calculations with the tentative reference position set as the reference position when a change in the total amount of energy at a position corresponding to the tentative reference position before and after updating the tentative reference position becomes equal to or smaller than a threshold value.
請求項5に記載の表示方法において、
前記基準位置決定処理ではさらに、前記視点位置から前記基準位置までの距離と前記観察者が好む距離との差に基づく距離と、前記視点位置から前記親物体に向かうベクトルを考慮して前記基準位置が決定される、表示方法。
The display method according to claim 5,
A display method in which the reference position determination process further determines the reference position by taking into account a distance based on the difference between the distance from the viewpoint position to the reference position and a distance preferred by the observer, and a vector from the viewpoint position toward the parent object.
請求項5に記載の表示方法において、
当該登録情報がすでに前記基準位置である前回基準位置を基準として表示されている場合には、前記基準位置決定処理において、それぞれの前記エネルギーマップの前記基準位置におけるエネルギー量の合計と、前記前回基準位置と前記基準位置の距離に基づく値との合計値が小さくなるように前記基準位置が決定される、表示方法。
The display method according to claim 5,
a display method in which, when the registered information is already displayed based on a previous reference position which is the reference position, in the reference position determination process, the reference position is determined so that the sum of the sum of the energy amounts at the reference positions of each of the energy maps and a value based on the distance between the previous reference position and the reference position is small.
請求項1に記載の表示方法において、
前記エネルギーマップ生成処理はさらに、前記観察者の移動を推定し、推定した移動先における前記観察者の前記視点位置に基づく前記エネルギーマップをさらに生成する、表示方法。
The display method according to claim 1,
The energy map generating process further includes estimating a movement of the observer, and further generating the energy map based on the viewpoint position of the observer at the estimated movement destination.
請求項1に記載の表示方法において、
コンテクストを生成するコンテクスト生成処理と、
前記コンテクストおよび前記観察者から前記親物体までの距離に基づき表示対象の前記登録情報を選択する選択処理と、をさらに含む表示方法。
The display method according to claim 1,
a context generation process for generating a context;
A display method further comprising a selection process for selecting the registration information to be displayed based on the context and the distance from the observer to the parent object.
三次元空間内の親物体に関連付けられた登録情報を前記親物体とともに観察者の主観視点で表示する表示システムであって、
1または複数の前記観察者のそれぞれの視点位置において、前記登録情報の配置に適した領域を示す二次元平面に関するデータであるエネルギーマップを1または複数作成するエネルギーマップ生成部と、
前記エネルギーマップにおいて、第一の位置に比してエネルギー量が低い第二の位置に前記登録情報を表示する基準位置を設定する基準位置決定部と、
前記親物体および前記基準位置を含む領域に描画される前記登録情報を前記観察者の主観視点で描画する映像生成部と、を含む表示システム。
A display system that displays registration information associated with a parent object in a three-dimensional space together with the parent object from a subjective viewpoint of an observer,
an energy map generating unit that generates one or more energy maps, which are data relating to a two-dimensional plane that indicates an area suitable for arranging the registration information, at each of the viewpoint positions of the one or more observers;
a reference position determination unit that sets a reference position for displaying the registration information at a second position in the energy map that has a lower energy amount than a first position;
an image generating unit that renders the registration information rendered in an area including the parent object and the reference position from a subjective viewpoint of the observer.
JP2022162511A 2022-10-07 2022-10-07 Display method and system Pending JP2024055512A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2022162511A JP2024055512A (en) 2022-10-07 2022-10-07 Display method and system
PCT/JP2023/036404 WO2024075817A1 (en) 2022-10-07 2023-10-05 Display method and display system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022162511A JP2024055512A (en) 2022-10-07 2022-10-07 Display method and system

Publications (1)

Publication Number Publication Date
JP2024055512A true JP2024055512A (en) 2024-04-18

Family

ID=90608436

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022162511A Pending JP2024055512A (en) 2022-10-07 2022-10-07 Display method and system

Country Status (2)

Country Link
JP (1) JP2024055512A (en)
WO (1) WO2024075817A1 (en)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5328810B2 (en) * 2008-12-25 2013-10-30 パナソニック株式会社 Information display device and information display method
JP6501501B2 (en) * 2014-11-12 2019-04-17 キヤノン株式会社 INFORMATION PROCESSING APPARATUS, INFORMATION PROCESSING METHOD, INFORMATION PROCESSING SYSTEM, AND PROGRAM
EP3296944A4 (en) * 2015-05-11 2018-11-07 Sony Corporation Information processing device, information processing method, and program
JP2019114078A (en) * 2017-12-25 2019-07-11 ソニー株式会社 Information processing device, information processing method and program
JPWO2019181488A1 (en) * 2018-03-20 2021-04-08 ソニー株式会社 Information processing equipment, information processing methods, and programs

Also Published As

Publication number Publication date
WO2024075817A1 (en) 2024-04-11

Similar Documents

Publication Publication Date Title
US10674142B2 (en) Optimized object scanning using sensor fusion
CN112926428B (en) Method and system for training object detection algorithm using composite image and storage medium
JP2021082310A (en) Systems and methods for augmented reality and virtual reality
CN110716645A (en) Augmented reality data presentation method and device, electronic equipment and storage medium
KR20170031733A (en) Technologies for adjusting a perspective of a captured image for display
JP2016522463A5 (en)
WO2023093217A1 (en) Data labeling method and apparatus, and computer device, storage medium and program
US11574424B2 (en) Augmented reality map curation
KR101181967B1 (en) 3D street view system using identification information.
US11586841B2 (en) Method and system for generating user driven adaptive object visualizations using generative adversarial network models
US11189103B2 (en) Visual search refinement for computer generated rendering environments
US10685457B2 (en) Systems and methods for visualizing eyewear on a user
US20210048972A1 (en) Systems and methods for virtual and augmented reality
US20210383097A1 (en) Object scanning for subsequent object detection
CN111291746A (en) Image processing system and image processing method
JPWO2018025825A1 (en) Imaging system
CN114930798A (en) Shooting object switching method and device, and image processing method and device
CN112400148A (en) Method and system for performing eye tracking using off-axis cameras
WO2024075817A1 (en) Display method and display system
JP6934806B2 (en) Display device, control method of display device
JP6858007B2 (en) Image processing system, image processing method
JP6765846B2 (en) Information processing equipment, information processing methods, and programs
JP2019185475A (en) Specification program, specification method, and information processing device
JP6371547B2 (en) Image processing apparatus, method, and program
JP7094759B2 (en) System, information processing method and program