JP7273284B2 - Data generation method, device and program - Google Patents

Data generation method, device and program Download PDF

Info

Publication number
JP7273284B2
JP7273284B2 JP2018181300A JP2018181300A JP7273284B2 JP 7273284 B2 JP7273284 B2 JP 7273284B2 JP 2018181300 A JP2018181300 A JP 2018181300A JP 2018181300 A JP2018181300 A JP 2018181300A JP 7273284 B2 JP7273284 B2 JP 7273284B2
Authority
JP
Japan
Prior art keywords
data
dimensional
image
camera
subject
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018181300A
Other languages
Japanese (ja)
Other versions
JP2020052719A (en
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2018181300A priority Critical patent/JP7273284B2/en
Publication of JP2020052719A publication Critical patent/JP2020052719A/en
Application granted granted Critical
Publication of JP7273284B2 publication Critical patent/JP7273284B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Analysis (AREA)

Description

本発明は、データ生成方法、装置およびプログラムに関する。 The present invention relates to a data generation method, device and program.

近年、仮想現実(Virtual Reality:VR)技術が様々な分野に応用されつつある。例えば、現実空間を各種のセンサを用いて三次元モデル化し、その三次元モデルを用いて現実空間を仮想化した仮想空間の画像を表示させることで、ある場所の環境を遠隔地において立体的に再現できる。遠隔地のユーザが、自分の位置や向きを検出可能なセンサを備えたヘッドマウントディスプレイ(Head Mounted Display:HMD)を装着し、仮想空間の画像を表示させながら歩くことで、ユーザはあたかも現実空間を歩いているような体験をすることができる。このような技術は、エンターテインメント分野だけでなく、各種の業務や作業を支援するための技術としても開発が進められている。 In recent years, virtual reality (VR) technology has been applied to various fields. For example, by creating a three-dimensional model of the real space using various sensors and displaying an image of a virtual space in which the real space is virtualized using the three-dimensional model, the environment of a certain place can be viewed three-dimensionally at a remote location. Reproducible. A remote user wears a head-mounted display (HMD) equipped with a sensor capable of detecting his/her own position and orientation, and walks while displaying an image of a virtual space. You can have an experience like walking through the Such technology is being developed not only in the entertainment field but also as a technology for supporting various tasks and tasks.

また、三次元モデルを用いてより現実空間に近い三次元画像を表示できるようにする技術として、テクスチャマッピングがある。この技術に関し、視点の異なる複数の撮像画像から、三次元画像のパッチごとに最も解像度の高い画像をそのパッチのテクスチャ画像として選択する三次元画像生成装置が提案されている。また、背景的要素となるオブジェクトに適用されるビルボード技術に対するテクスチャマッピングに関し、次のような画像生成装置が提案されている。この画像生成装置は、オブジェクトを複数の方位から眺めたテクスチャ画像をあらかじめ記憶し、板ポリゴンの基準方向と、板ポリゴンから視点への方向との関係に基づいて、板ポリゴンに対応するテクスチャ画像を特定する。 Also, there is texture mapping as a technique for displaying a three-dimensional image closer to the real space using a three-dimensional model. With regard to this technique, a 3D image generating apparatus has been proposed that selects an image with the highest resolution for each patch of a 3D image from a plurality of captured images from different viewpoints as the texture image of that patch. In addition, the following image generating apparatus has been proposed with regard to texture mapping for billboard technology applied to objects that serve as background elements. This image generation device pre-stores texture images obtained by viewing an object from a plurality of directions, and generates a texture image corresponding to the plate polygon based on the relationship between the reference direction of the plate polygon and the direction from the plate polygon to the viewpoint. Identify.

特開2002-24850号公報JP-A-2002-24850 特開2004-287504号公報JP 2004-287504 A

ところで、仮想空間に作業現場の環境を三次元モデルによって再現する技術を作業の訓練や教育の用途で用いる場合には、主たる作業対象物だけでなく、その周囲に存在する物体の形状も仮想空間に再現されることが好ましい場合がある。これにより、再現された画像の閲覧者は、作業対象物とその周囲に存在する物体との位置関係を正確に把握できるようになる。 By the way, when the technology that reproduces the environment of the work site in the virtual space by using a three-dimensional model is used for work training and education, not only the main work object but also the shapes of the objects existing around it are included in the virtual space. may be preferred to be reproduced in As a result, the viewer of the reproduced image can accurately grasp the positional relationship between the work object and the objects existing around it.

例えば、クレーンを操作して荷物(作業対象物)を昇降させる作業を行う場合に、クレーンの稼働範囲内に存在する荷物以外の物体との接触を防ぐためには、荷物の位置や形状を認識できるだけでは不十分である。この作業では、荷物の昇降場所の周囲の状況をできるだけ詳しく、立体的に認識できることが好ましい。 For example, when operating a crane to raise and lower a load (work target), in order to prevent contact with objects other than the load within the crane's operating range, it is necessary to recognize the position and shape of the load as much as possible. is not sufficient. In this work, it is preferable to be able to three-dimensionally recognize the situation around the loading/unloading place in as much detail as possible.

ここで、物体の形状を示す三次元データは、例えば、距離センサ(デプスセンサ)を備えた三次元スキャナを用いて、比較的高精度に取得可能である。しかし、このような三次元スキャナを用いて、作業対象物だけでなくその周囲に存在する物体の形状を示す三次元データも取得しようとすると、離れた位置の物体の三次元形状を計測可能な高性能かつ高価な三次元スキャナが必要となる。このため、コスト低減のために安価な三次元スキャナを用い、作業対象物の形状を示す三次元データだけを取得することが現実的となる。 Here, three-dimensional data representing the shape of an object can be obtained with relatively high accuracy using, for example, a three-dimensional scanner equipped with a distance sensor (depth sensor). However, using such a 3D scanner to acquire 3D data representing the shape of not only the object to be worked on but also the objects existing around it, it is possible to measure the 3D shape of the object at a distant position. A high-performance and expensive three-dimensional scanner is required. Therefore, it is practical to use an inexpensive three-dimensional scanner to obtain only three-dimensional data representing the shape of the work object in order to reduce costs.

また、作業対象物の形状を示す三次元データだけが取得される場合には、作業対象物の周囲の環境を、撮像された画像を用いて簡易的に再現する方法が考えられる。例えば、前述のビルボード技術を用いる方法や、作業対象物を中心とする球体の内面に周囲環境の画像を貼り付ける方法が考えられる。しかし、この方法では、仮想空間において、周囲の物体の形状が立体的に描画されないことから、作業対象物とその周囲の物体との位置関係が正確に再現されないという問題がある。 Further, when only three-dimensional data representing the shape of the work object is acquired, a method of simply reproducing the environment around the work object using the captured image is conceivable. For example, a method using the aforementioned billboard technique, or a method of pasting an image of the surrounding environment onto the inner surface of a sphere centered on the work object can be considered. However, in this method, since the shape of the surrounding object is not drawn in three dimensions in the virtual space, there is a problem that the positional relationship between the work object and the surrounding objects cannot be accurately reproduced.

1つの側面では、本発明は、三次元データを取得済みの被写体との位置関係を正確に再現できる別の被写体の三次元データを生成可能なデータ生成方法、装置およびプログラムを提供することを目的とする。 In one aspect, an object of the present invention is to provide a data generation method, apparatus, and program capable of generating three-dimensional data of another subject that can accurately reproduce the positional relationship with a subject for which three-dimensional data has already been acquired. and

1つの案では、コンピュータが、複数の位置から撮像された複数の撮像画像と、複数の撮像画像に含まれる第1の被写体における各点の三次元位置を示す第1の三次元データとを取得し、複数の撮像画像に基づき、第1の被写体からの距離が所定の閾値以下である第2の被写体における各点の、第1の三次元データが示す三次元位置と同一の座標空間における三次元位置を示す第2の三次元データを生成する、データ生成方法が提供される。 In one proposal, a computer acquires a plurality of captured images captured from a plurality of positions and first three-dimensional data indicating the three-dimensional position of each point on a first subject included in the plurality of captured images. Then, based on a plurality of captured images, each point in the second subject whose distance from the first subject is equal to or less than a predetermined threshold, in the same coordinate space as the three-dimensional position indicated by the first three-dimensional data A data generation method is provided for generating second three-dimensional data indicating an original position.

また、1つの案では、コンピュータが、複数の位置から撮像された複数の撮像画像と、複数の撮像画像に含まれるいずれかの被写体上の各部の位置情報とを取得し、取得した位置情報に基づき、いずれかの被写体の三次元形状に応じた第1の表示モデルを生成し、取得した複数の撮像画像に基づき、複数の撮像画像に含まれる、いずれかの被写体からの距離が閾値以下である他の被写体の三次元形状に応じた第2の表示モデルを生成し、生成した第1の表示モデルと、生成した第2の表示モデルと、第1の表示モデルおよび第2の表示モデル間の位置関係を示す位置関係情報とを含む表示データを生成する、データ生成方法が提供される。 In one proposal, a computer acquires a plurality of captured images captured from a plurality of positions and positional information of each part on any of the subjects included in the plurality of captured images, and uses the acquired positional information. a first display model corresponding to the three-dimensional shape of one of the subjects, and based on the acquired plurality of captured images, the distance from one of the subjects included in the plurality of captured images is equal to or less than a threshold; A second display model is generated according to the three-dimensional shape of a certain other subject, and between the generated first display model, the generated second display model, and the first display model and the second display model There is provided a data generation method for generating display data including positional relationship information indicating a positional relationship between.

さらに、1つの案では、上記のデータ生成方法と同様の処理を実行するデータ生成装置が提供される。
また、1つの案では、上記のデータ生成方法と同様の処理をコンピュータに実行させるデータ生成プログラムが提供される。
Furthermore, one proposal provides a data generation device that performs processing similar to the data generation method described above.
In one proposal, a data generation program is provided that causes a computer to execute processing similar to the data generation method described above.

1つの側面では、三次元データを取得済みの被写体との位置関係を正確に再現可能な別の被写体の三次元データを生成できる。 In one aspect, it is possible to generate three-dimensional data of another subject that can accurately reproduce the positional relationship with the subject for which three-dimensional data has already been acquired.

第1の実施の形態に係るデータ生成装置の構成例および処理例を示す図である。1A and 1B are diagrams illustrating a configuration example and a processing example of a data generation device according to a first embodiment; FIG. 第2の実施の形態に係る情報処理システムの構成例を示す図である。It is a figure which shows the structural example of the information processing system which concerns on 2nd Embodiment. サーバのハードウェア構成例を示す図である。It is a figure which shows the hardware structural example of a server. 情報処理システムの各装置が備える処理機能の構成例を示すブロック図である。2 is a block diagram showing a configuration example of processing functions provided in each device of the information processing system; FIG. 作業現場の例を示す斜視図である。1 is a perspective view showing an example of a work site; FIG. 作業現場の例を示す平面図である。1 is a plan view showing an example of a work site; FIG. 計測者による計測作業について説明するための図である。It is a figure for demonstrating the measurement work by a measurer. ポリゴンに対応するテクスチャ画像の生成について説明するための図である。FIG. 4 is a diagram for explaining generation of a texture image corresponding to polygons; 対象物データの生成処理手順を示すフローチャートの例(その1)である。FIG. 11 is an example (part 1) of a flowchart showing a procedure for generating target object data; FIG. 対象物データの生成処理手順を示すフローチャートの例(その2)である。FIG. 11 is an example of a flowchart (part 2) showing a procedure for generating target object data; FIG. 対応点の絞り込みについて説明するための図である。It is a figure for demonstrating narrowing down of corresponding points. 対応点までの距離の算出について説明するための図である。It is a figure for demonstrating calculation of the distance to a corresponding point. 中間背景物データの生成処理手順を示すフローチャートの例である。FIG. 10 is an example of a flowchart showing a procedure for generating intermediate background object data; FIG. 外周の三次元形状の例を示す図である。It is a figure which shows the example of the three-dimensional shape of an outer periphery. 外周データの生成処理手順を示すフローチャートの例である。It is an example of the flowchart which shows the production|generation process procedure of outer periphery data. 仮想空間を描画した画像の例を示す図である。FIG. 10 is a diagram showing an example of an image in which a virtual space is drawn; 中間背景物の位置補正処理で用いられる変換グラフの例を示す図である。FIG. 10 is a diagram showing an example of a conversion graph used in position correction processing for an intermediate background object; 中間背景物の位置補正の処理手順を示すフローチャートの例である。FIG. 10 is an example of a flowchart showing a processing procedure for position correction of an intermediate background object; FIG. 仮想空間における三次元形状の補完領域について説明するための図である。It is a figure for demonstrating the complementary area|region of a three-dimensional shape in virtual space. 三次元形状の補完処理についての第1の例を示す図である。It is a figure which shows the 1st example about the complementation process of a three-dimensional shape. 三次元形状の補完処理についての第2の例を示す図である。It is a figure which shows the 2nd example about the complementation process of a three-dimensional shape. 三次元形状の補完処理の手順を示すフローチャートの例である。It is an example of the flowchart which shows the procedure of a three-dimensional shape complementation process.

以下、本発明の実施の形態について図面を参照して説明する。
〔第1の実施の形態〕
図1は、第1の実施の形態に係るデータ生成装置の構成例および処理例を示す図である。
BEST MODE FOR CARRYING OUT THE INVENTION Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[First embodiment]
FIG. 1 is a diagram illustrating a configuration example and a processing example of a data generation device according to a first embodiment.

図1に示すデータ生成装置1は、記憶部1aと処理部1bを有する。記憶部1aは、例えば、データ生成装置1が備える図示しない記憶装置として実現される。処理部1bは、例えば、データ生成装置1が備える図示しないプロセッサとして実現される。 The data generation device 1 shown in FIG. 1 has a storage unit 1a and a processing unit 1b. The storage unit 1a is realized, for example, as a storage device (not shown) included in the data generation device 1. FIG. The processing unit 1b is realized, for example, as a processor (not shown) included in the data generation device 1. FIG.

処理部1bは、複数の位置のそれぞれから撮像された撮像画像2a,2b,・・・と、撮像画像2a,2b,・・・に含まれる第1の被写体3aにおける各点の三次元位置を示す第1の三次元データ4aとを取得する(ステップS1)。処理部1bは、取得された撮像画像2a,2b,・・・と第1の三次元データ4aを、記憶部1aに格納する。 The processing unit 1b calculates the three-dimensional position of each point on the first subject 3a included in the captured images 2a, 2b, . The first three-dimensional data 4a shown is obtained (step S1). The processing unit 1b stores the acquired captured images 2a, 2b, . . . and the first three-dimensional data 4a in the storage unit 1a.

現実空間には、撮像画像2a,2b,・・・に写り得る被写体として、上記の第1の被写体3aと、第1の被写体3aからの距離が所定の閾値以下である第2の被写体3bとが存在している。第1の被写体3aは、主たる撮像対象の被写体であり、基本的には取得される撮像画像2a,2b,・・・のすべてに写っている。例えば、撮像画像2a,2b,・・・は、例えば、第1の被写体3aの周囲を周回しながらカメラ5によって第1の被写体3aを複数回撮像することによって取得される。 In the physical space, as subjects that can be captured in the captured images 2a, 2b, . exists. The first subject 3a is the main subject to be imaged, and basically appears in all of the captured images 2a, 2b, . . . For example, the captured images 2a, 2b, .

なお、例えば、現実空間において所定の作業が行われる場合、第1の被写体3aは、作業の対象となる物体に相当する。第2の被写体3bは、第1の被写体3aの周囲に存在する物体に相当する。 Note that, for example, when a predetermined work is performed in the physical space, the first subject 3a corresponds to an object that is the work target. The second subject 3b corresponds to an object existing around the first subject 3a.

第1の三次元データ4aは、例えば、距離センサ(デプスセンサ)を用いてカメラ5の位置から第1の被写体3aまでの距離を複数回計測して得られた計測結果に基づいて、取得される。第1の三次元データ4aを用いることで、仮想空間において、第1の被写体3aの形状を立体的に描画できる。 The first three-dimensional data 4a is obtained, for example, based on measurement results obtained by measuring the distance from the position of the camera 5 to the first subject 3a multiple times using a distance sensor (depth sensor). . By using the first three-dimensional data 4a, it is possible to stereoscopically draw the shape of the first subject 3a in the virtual space.

次に、処理部1bは、取得された撮像画像2a,2b,・・・に基づき、第2の被写体3bにおける各点の三次元位置を示す第2の三次元データ4bを生成し、記憶部1aに格納する(ステップS2)。第2の三次元データ4bは、例えば、取得された撮像画像2a,2b,・・・のうち、第2の被写体3bが写っている複数の撮像画像を用い、それらの撮像画像における第2の被写体3bの特徴点の位置に基づいて算出される。第2の三次元データ4bを用いることで、仮想空間において、第2の被写体3bの形状を立体的に描画できる。 Next, the processing unit 1b generates second three-dimensional data 4b indicating the three-dimensional position of each point on the second subject 3b based on the captured images 2a, 2b, . 1a (step S2). For the second three-dimensional data 4b, for example, among the captured images 2a, 2b, . It is calculated based on the positions of the feature points of the subject 3b. By using the second three-dimensional data 4b, it is possible to stereoscopically draw the shape of the second subject 3b in the virtual space.

この第2の三次元データ4bが示す各点の三次元位置は、第1の三次元データ4aが示す三次元位置と同一の座標空間における三次元位置を示す。このため、第1の三次元データ4aと第2の三次元データ4bを用いることで、第1の被写体3aの三次元形状と第2の被写体3bの三次元形状との位置関係を、上記の座標空間(仮想空間)上で正確に再現できる。 The three-dimensional position of each point indicated by the second three-dimensional data 4b indicates the three-dimensional position in the same coordinate space as the three-dimensional position indicated by the first three-dimensional data 4a. Therefore, by using the first three-dimensional data 4a and the second three-dimensional data 4b, the positional relationship between the three-dimensional shape of the first subject 3a and the three-dimensional shape of the second subject 3b can be determined as described above. It can be reproduced accurately in the coordinate space (virtual space).

以上のデータ生成装置1によれば、第1の被写体3aに対応する第1の三次元データ4aしか取得されていない状況でも、撮像画像2a,2b,・・・を用いて第2の被写体3bに対応する第2の三次元データ4bを生成できる。例えば、第2の被写体3bが、距離センサなどを用いてその三次元データを取得できない範囲であるが、第1の被写体3aからの距離が比較的近い位置にある場合が考えられる。このような場合に、データ生成装置1は、撮像画像2a,2b,・・・を用いて第2の被写体3bに対応する第2の三次元データ4bを生成できる。そして、データ生成装置1は、取得された第1の三次元データ4aと、生成された第2の三次元データ4bとを用いて、第1の被写体3aの三次元形状と第2の被写体3bの三次元形状との位置関係を正確に再現した画像を生成し、表示させることができる。 According to the data generating apparatus 1 described above, even in a situation where only the first three-dimensional data 4a corresponding to the first subject 3a is acquired, the second subject 3b is generated using the captured images 2a, 2b, . can generate the second three-dimensional data 4b corresponding to . For example, the second subject 3b may be located relatively close to the first subject 3a, even though the three-dimensional data of the second subject 3b cannot be acquired using a distance sensor or the like. In such a case, the data generation device 1 can generate the second three-dimensional data 4b corresponding to the second subject 3b using the captured images 2a, 2b, . Then, the data generation device 1 uses the obtained first three-dimensional data 4a and the generated second three-dimensional data 4b to determine the three-dimensional shape of the first subject 3a and the second subject 3b. An image that accurately reproduces the positional relationship with the three-dimensional shape of the object can be generated and displayed.

例えば、第1の被写体3aが作業の対象物である場合、第1の被写体3aの三次元形状に加えて、第1の被写体3aの周囲に存在する第2の被写体3bの三次元形状が、作業の現場とは別の場所で、仮想空間の画像として再現される。このとき、画像の閲覧者は、作業の現場とは別の場所において、作業対象である第1の被写体3aと、その周囲に存在する第2の被写体3bとの位置関係を正確に把握できるようになる。したがって、例えば作業の訓練や教育に役立てることができる有用な三次元データを生成できる。 For example, when the first subject 3a is a work object, in addition to the three-dimensional shape of the first subject 3a, the three-dimensional shape of the second subject 3b existing around the first subject 3a is It is reproduced as an image in a virtual space in a place other than the work site. At this time, the viewer of the image can accurately grasp the positional relationship between the first subject 3a, which is the work target, and the second subject 3b, which exists around the first subject 3a, at a place other than the work site. become. Therefore, it is possible to generate useful three-dimensional data that can be used, for example, for work training and education.

〔第2の実施の形態〕
次に、第2の実施の形態として、図1に示したデータ生成装置1を含む情報処理システムを例示する。
[Second embodiment]
Next, as a second embodiment, an information processing system including the data generation device 1 shown in FIG. 1 will be exemplified.

図2は、第2の実施の形態に係る情報処理システムの構成例を示す図である。
図2に示す情報処理システムは、作業現場100の環境を三次元モデル化し、その三次元モデルを用いて、作業現場100の環境を仮想化した仮想空間を示す画像を遠隔地において再現するためのシステムである。図2では、遠隔地としてオフィス200が例示されている。また、この情報処理システムは、サーバ300を含む。サーバ300は、図1に示したデータ生成装置1の一例である。
FIG. 2 is a diagram illustrating a configuration example of an information processing system according to the second embodiment.
The information processing system shown in FIG. 2 creates a three-dimensional model of the environment of the work site 100, and uses the three-dimensional model to reproduce, at a remote location, an image showing a virtual space in which the environment of the work site 100 is virtualized. System. In FIG. 2, an office 200 is illustrated as the remote location. This information processing system also includes a server 300 . The server 300 is an example of the data generation device 1 shown in FIG.

作業現場100では、作業対象物に対して所定の作業が行われる。例えば、作業者の操作に応じて、クレーンやフォークリフトなどの建設機械によって荷物が昇降され、運搬される。この場合、荷物が作業対象物となる。以下、このような作業現場100での作業対象物に対する作業者の作業を「現場作業」と記載する。 At the work site 100, a predetermined work is performed on a work target. For example, a load is lifted and transported by a construction machine such as a crane or a forklift according to an operator's operation. In this case, the load is the object to be worked on. Hereinafter, the work performed by the worker on the work target at the work site 100 is referred to as "field work".

また、作業現場100では、作業対象物やその周囲の環境の三次元形状を計測するための計測作業が、計測者によって行われる。図2に示すように、計測作業用のデバイスとしては、空間認識センサ101、カメラ102および位置・方向センサ103が用いられる。 Moreover, at the work site 100, a measurement worker performs a measurement work for measuring the three-dimensional shape of a work target and its surrounding environment. As shown in FIG. 2, a space recognition sensor 101, a camera 102, and a position/direction sensor 103 are used as devices for measurement work.

空間認識センサ101は、作業現場100の空間を三次元的に認識可能なセンサである。このようなセンサとしては、例えば、物体との間のデプス(距離)を計測するデプスセンサがある。デプスセンサは、例えば、赤外線照射装置と赤外線受光装置とを備え、TOF(Time Of Flight)方式などによって画素ごとのデプスを計測する。 The space recognition sensor 101 is a sensor that can three-dimensionally recognize the space of the work site 100 . As such a sensor, for example, there is a depth sensor that measures the depth (distance) to an object. The depth sensor includes, for example, an infrared irradiation device and an infrared light reception device, and measures the depth of each pixel using a TOF (Time Of Flight) method or the like.

カメラ102は、RGB(Red Green Blue)画像を撮像可能なデバイスである。カメラ102は、その位置と方向が空間認識センサ101と可能な限り一致するように配置される。カメラ102によって撮像された画像は、主として、空間認識センサ101の計測結果に基づいて三次元モデル化された物体を、仮想空間上でよりリアルに見せるために使用される。 The camera 102 is a device capable of capturing an RGB (Red Green Blue) image. The camera 102 is arranged so that its position and direction coincide with the spatial recognition sensor 101 as much as possible. The image captured by the camera 102 is mainly used to make the object three-dimensionally modeled based on the measurement result of the space recognition sensor 101 appear more realistic in the virtual space.

位置・方向センサ103は、空間認識センサ101およびカメラ102の位置および方向(姿勢)を認識可能なセンサである。このようなセンサとしては、例えば、加速度センサと角速度センサ(ジャイロ)とを組み合わせて用いることができる。また、加速度センサと角速度センサに対して、さらに方位センサが組み合わされてもよい。 The position/direction sensor 103 is a sensor capable of recognizing the position and direction (orientation) of the space recognition sensor 101 and the camera 102 . As such a sensor, for example, an acceleration sensor and an angular velocity sensor (gyro) can be used in combination. A direction sensor may be further combined with the acceleration sensor and the angular velocity sensor.

作業現場100において、計測者は、例えば、作業対象物の周囲を周回しながら、上記の各センサを用いた計測作業を行う。このとき、複数の箇所において、各センサによるセンサデータが取り込まれる。この計測作業では、上記のように、空間認識センサ101とカメラ102の位置と方向が可能な限り一致するように、作業が行われる。例えば、空間認識センサ101、カメラ102および位置・方向センサ103が搭載されたヘッドマウントユニットを、計測者が頭部に装着した状態で計測作業が行われる。 At the work site 100, for example, the measurer performs the measurement work using the above-described sensors while circling the object to be worked. At this time, sensor data from each sensor is captured at a plurality of locations. In this measurement work, as described above, the work is performed so that the positions and directions of the space recognition sensor 101 and the camera 102 match as much as possible. For example, the measurement work is performed with the head mounted unit equipped with the space recognition sensor 101, the camera 102, and the position/direction sensor 103 mounted on the head of the measurement person.

このようにして得られたセンサデータは、サーバ300に送信される。サーバ300は、受信したセンサデータに基づいて、作業現場100の空間の三次元形状を示す三次元データ301を生成する。三次元データ301は、作業現場100の空間から検出された各特徴点の三次元座標を示す点群データを含む。この点群データは、各特徴点によって生成されるポリゴンの頂点の位置を示すデータであってもよい。なお、点群データは、作業現場100に配置された情報処理機器によって算出されて、サーバ300に送信されてもよい。さらに、三次元データ301は、点群データに基づく各ポリゴンに貼り付けられるテクスチャ画像のデータを含む。テクスチャ画像は、カメラ102によるセンサデータ(すなわち、画像データ)を基に生成される。 The sensor data obtained in this manner is transmitted to the server 300 . The server 300 generates three-dimensional data 301 representing the three-dimensional shape of the space of the work site 100 based on the received sensor data. The three-dimensional data 301 includes point cloud data indicating three-dimensional coordinates of feature points detected from the space of the work site 100 . This point group data may be data indicating the positions of vertices of polygons generated by each feature point. Note that the point cloud data may be calculated by an information processing device arranged at the work site 100 and transmitted to the server 300 . Furthermore, the three-dimensional data 301 includes texture image data pasted on each polygon based on the point cloud data. A texture image is generated based on sensor data (that is, image data) from the camera 102 .

一方、オフィス200においては、閲覧者がHMD201を装着している。HMD201には、ディスプレイに加えて、閲覧者の位置と方向を検出するデバイスが搭載され、閲覧者の位置と方向がサーバ300に送信される。サーバ300は、三次元データ301と閲覧者の位置および方向とに基づいて、作業現場100の空間(現実空間)を仮想化した仮想空間を示す画像を描画し、その画像をHMD201に表示させる。 On the other hand, in the office 200, the viewer is wearing the HMD 201. FIG. In addition to the display, the HMD 201 is equipped with a device that detects the position and direction of the viewer, and transmits the position and direction of the viewer to the server 300 . Based on the three-dimensional data 301 and the position and direction of the viewer, the server 300 draws an image representing a virtual space (real space) of the work site 100 and causes the HMD 201 to display the image.

この画像表示では、閲覧者の位置と方向が仮想空間の座標上に関連づけられ、閲覧者の位置と方向の検出結果に基づき、閲覧者の視点から見た仮想空間の状況が画像上に再現される。例えば、三次元モデル化された物体は、閲覧者の位置と方向に応じた位置と姿勢で仮想空間に配置される。また、閲覧者の位置や視線方向が変化した場合、その変化に応じて仮想空間上の物体の位置や姿勢も変化する。これにより、閲覧者は、あたかも作業現場100に実際に存在し、作業現場100で移動しながらその環境を視認しているような体験をすることができる。 In this image display, the position and direction of the viewer are associated with the coordinates of the virtual space, and the situation of the virtual space seen from the viewer's viewpoint is reproduced on the image based on the detection result of the position and direction of the viewer. be. For example, a three-dimensional modeled object is arranged in a virtual space at a position and orientation according to the position and direction of the viewer. In addition, when the position and line-of-sight direction of the viewer change, the position and orientation of the object in the virtual space also change according to the change. As a result, the viewer can experience as if he or she actually exists at the work site 100 and visually recognizes the environment while moving on the work site 100 .

このような情報処理システムにより、閲覧者は、作業現場100に実際に赴くことなく、作業現場100の状況を詳しく把握できる。これにより、作業現場100における作業についての教育や訓練を、オフィス200のような作業現場100とは別の場所で閲覧者に受けさせることができる。 With such an information processing system, a viewer can grasp the situation of the work site 100 in detail without actually visiting the work site 100 . This allows the viewer to receive education and training on the work at the work site 100 at a location such as the office 200 that is separate from the work site 100 .

また、作業現場100に音声デバイス104が配置されるとともに、HMD201が音声の入出力機能を備えていてもよい。この場合、オフィス200の閲覧者が作業現場100の仮想空間を視認している間、作業現場100の作業者と音声によってコミュニケーションをとることができる。 Further, the audio device 104 may be arranged at the work site 100, and the HMD 201 may have an audio input/output function. In this case, while the viewer of the office 200 is viewing the virtual space of the work site 100, he/she can communicate with the worker of the work site 100 by voice.

また、オフィス200においては、それぞれHMD201を装着した複数の閲覧者が、作業現場100の仮想空間の画像を視認してもよい。この場合、サーバ300の処理により、個々の閲覧者のHMD201には閲覧者ごとの位置と方向に応じた画像が表示される。また、サーバ300の処理により、仮想空間の画像上には、他方の閲覧者の位置および方向の検出結果に応じてこの閲覧者を示すアバターが表示されてもよい。 Also, in the office 200 , a plurality of viewers each wearing an HMD 201 may view the virtual space image of the work site 100 . In this case, an image corresponding to the position and direction of each viewer is displayed on the HMD 201 of each viewer by the processing of the server 300 . Further, by the processing of the server 300, an avatar representing the other viewer may be displayed on the image in the virtual space according to the detection result of the position and direction of the other viewer.

さらに、オフィス200が複数設置されて、各オフィス200においてHMD201を装着した閲覧者が作業現場100の仮想空間の画像を視認してもよい。この場合でも、個々の閲覧者のHMD201には閲覧者ごとの位置と方向に応じた画像が表示される。また、仮想空間の画像上には、他方の閲覧者の位置および方向の検出結果に応じてこの閲覧者を示すアバターが表示されてもよい。さらに、閲覧者同士が音声によってコミュニケーションできるようにしてもよい。 Furthermore, a plurality of offices 200 may be installed, and a viewer wearing an HMD 201 in each office 200 may visually recognize an image of the virtual space of the work site 100 . Even in this case, an image corresponding to the position and direction of each viewer is displayed on the HMD 201 of each viewer. Also, an avatar representing the other viewer may be displayed on the image of the virtual space according to the detection result of the position and direction of the other viewer. Further, the viewers may communicate with each other by voice.

このように、本実施の形態に係る情報処理システムにより、作業現場100の三次元形状が、オフィス200のような遠隔地において仮想的に再現される。これにより、例えば、作業現場100の状況を示す写真や動画像を遠隔地の閲覧者が閲覧する場合と比較して、閲覧者は作業現場100の状況を正確に把握できる。このため、この情報処理システムを遠隔地における現場作業の教育や訓練に用いることで、その教育や訓練の有用性を高めることができる。 Thus, the information processing system according to the present embodiment virtually reproduces the three-dimensional shape of work site 100 at a remote location such as office 200 . As a result, the viewer can grasp the situation of the work site 100 more accurately than, for example, when a viewer at a remote location views a photograph or moving image showing the situation of the work site 100 . Therefore, by using this information processing system for on-site work education and training at remote locations, the usefulness of the education and training can be enhanced.

図3は、サーバのハードウェア構成例を示す図である。サーバ300は、例えば、図3に示すようなコンピュータとして実現される。図3に示すサーバ300は、プロセッサ311、RAM(Random Access Memory)312、HDD(Hard Disk Drive)313、グラフィック処理装置314、入力インタフェース(I/F)315、読み取り装置316および通信インタフェース(I/F)317を有する。 FIG. 3 is a diagram illustrating a hardware configuration example of a server; The server 300 is implemented as a computer as shown in FIG. 3, for example. The server 300 shown in FIG. 3 includes a processor 311, a RAM (Random Access Memory) 312, a HDD (Hard Disk Drive) 313, a graphic processing device 314, an input interface (I/F) 315, a reader 316 and a communication interface (I/ F) has 317.

プロセッサ311は、サーバ300全体を統括的に制御する。プロセッサ311は、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)またはPLD(Programmable Logic Device)である。また、プロセッサ311は、CPU、MPU、DSP、ASIC、PLDのうちの2以上の要素の組み合わせであってもよい。 The processor 311 centrally controls the server 300 as a whole. The processor 311 is, for example, a CPU (Central Processing Unit), MPU (Micro Processing Unit), DSP (Digital Signal Processor), ASIC (Application Specific Integrated Circuit), or PLD (Programmable Logic Device). Processor 311 may also be a combination of two or more of CPU, MPU, DSP, ASIC, and PLD.

RAM312は、サーバ300の主記憶装置として使用される。RAM312には、プロセッサ311に実行させるOS(Operating System)プログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、RAM312には、プロセッサ311による処理に必要な各種データが格納される。 A RAM 312 is used as the main storage device of the server 300 . The RAM 312 temporarily stores at least part of an OS (Operating System) program and application programs to be executed by the processor 311 . Also, the RAM 312 stores various data necessary for processing by the processor 311 .

HDD313は、サーバ300の補助記憶装置として使用される。HDD313には、OSプログラム、アプリケーションプログラム、および各種データが格納される。なお、補助記憶装置としては、SSD(Solid State Drive)などの他の種類の不揮発性記憶装置を使用することもできる。 HDD 313 is used as an auxiliary storage device for server 300 . The HDD 313 stores an OS program, application programs, and various data. Other types of non-volatile storage devices such as SSDs (Solid State Drives) can also be used as auxiliary storage devices.

グラフィック処理装置314には、表示装置314aが接続されている。グラフィック処理装置314は、プロセッサ311からの命令にしたがって、画像を表示装置314aに表示させる。表示装置としては、液晶ディスプレイや有機EL(Electroluminescence)ディスプレイなどがある。 A display device 314 a is connected to the graphics processing device 314 . The graphics processing unit 314 causes the display device 314a to display images according to instructions from the processor 311 . Display devices include a liquid crystal display and an organic EL (Electroluminescence) display.

入力インタフェース315には、入力装置315aが接続されている。入力インタフェース315は、入力装置315aから出力される信号をプロセッサ311に送信する。入力装置315aとしては、キーボードやポインティングデバイスなどがある。ポインティングデバイスとしては、マウス、タッチパネル、タブレット、タッチパッド、トラックボールなどがある。 An input device 315 a is connected to the input interface 315 . The input interface 315 transmits signals output from the input device 315 a to the processor 311 . The input device 315a includes a keyboard, pointing device, and the like. Pointing devices include mice, touch panels, tablets, touch pads, trackballs, and the like.

読み取り装置316には、可搬型記録媒体316aが脱着される。読み取り装置316は、可搬型記録媒体316aに記録されたデータを読み取ってプロセッサ311に送信する。可搬型記録媒体316aとしては、光ディスク、光磁気ディスク、半導体メモリなどがある。 A portable recording medium 316 a is attached to and detached from the reading device 316 . The reading device 316 reads data recorded on the portable recording medium 316 a and transmits the read data to the processor 311 . The portable recording medium 316a includes an optical disk, a magneto-optical disk, a semiconductor memory, and the like.

通信インタフェース317は、ネットワーク317aを介して他の装置との間でデータの送受信を行う。
以上のようなハードウェア構成によって、サーバ300の処理機能を実現することができる。
A communication interface 317 transmits and receives data to and from another device via a network 317a.
The processing functions of the server 300 can be realized by the hardware configuration as described above.

図4は、情報処理システムの各装置が備える処理機能の構成例を示すブロック図である。
まず、図4を用いて、作業現場100で用いられる計測用のセンサの具体例について説明する。作業現場100には、このようなセンサとして、三次元スキャナ110と全天球カメラ120が配置される。
FIG. 4 is a block diagram showing a configuration example of processing functions provided in each device of the information processing system.
First, with reference to FIG. 4, a specific example of the measurement sensor used at the work site 100 will be described. At the work site 100, a three-dimensional scanner 110 and an omnidirectional camera 120 are arranged as such sensors.

三次元スキャナ110は、デプスセンサ111、慣性計測ユニット(Inertial Measurement Unit:IMU)112および三次元データ計算部113を備える。デプスセンサ111は、図2の空間認識センサ101の機能を実現するデバイスであり、計測対象の物体とのデプス(距離)を画素ごとに検出する。慣性計測ユニット112は、図2の位置・方向センサ103の機能を実現するデバイスであり、加速度センサ、角速度センサ、方位センサを備えて、これらのセンサデータに基づいて三次元スキャナ110の位置と方向を検出する。 The three-dimensional scanner 110 includes a depth sensor 111 , an inertial measurement unit (IMU) 112 and a three-dimensional data calculator 113 . The depth sensor 111 is a device that realizes the function of the space recognition sensor 101 in FIG. 2, and detects the depth (distance) to the object to be measured for each pixel. The inertial measurement unit 112 is a device that realizes the function of the position/direction sensor 103 in FIG. to detect

三次元データ計算部113は、例えばCPU、DSPなどのプロセッサとして実現される。三次元データ計算部113は、デプスセンサ111と慣性計測ユニット112の検出結果に基づいて、計測対象の空間の三次元モデルを示す点群データを算出する。また、三次元データ計算部113はさらに、点群データに含まれる各特徴点によってポリゴンを生成し、生成されたポリゴンを示すポリゴンデータをサーバ300に出力する。ポリゴンデータには、各ポリゴンの頂点の三次元座標が含まれる。さらに、三次元データ計算部113は、デプスセンサ111によってデプスが計測されるたびに、慣性計測ユニット112による位置と方向の検出結果をサーバ300に出力する。 The three-dimensional data calculation unit 113 is implemented as a processor such as a CPU or DSP, for example. The three-dimensional data calculation unit 113 calculates point cloud data representing a three-dimensional model of the space to be measured based on the detection results of the depth sensor 111 and the inertial measurement unit 112 . The three-dimensional data calculation unit 113 further generates polygons from each feature point included in the point cloud data, and outputs polygon data representing the generated polygons to the server 300 . Polygon data includes three-dimensional coordinates of vertices of each polygon. Furthermore, the three-dimensional data calculation unit 113 outputs the position and direction detection results of the inertial measurement unit 112 to the server 300 each time the depth sensor 111 measures the depth.

全天球カメラ120は、図2のカメラ102の機能を実現するデバイスであり、所定の基準方向を中心として360°の方向の画像を撮像し、得られた全天球画像のデータをサーバ300に出力する。全天球カメラ120は、その基準方向がデプスセンサ111の計測方向と一致するように配置される。また、これらのセンサは同じ位置と見なされるように近接して配置される。また、全天球カメラ120による撮像動作は、デプスセンサ111によるデプスの計測動作と同期して行われる。これにより、全天球画像が撮像されたタイミングで慣性計測ユニット112では位置と方向とが検出されることから、検出された位置と方向を全天球画像の撮像時のカメラ位置とカメラ方向としてそれぞれ用いることが可能となる。 The omnidirectional camera 120 is a device that implements the functions of the camera 102 in FIG. output to The omnidirectional camera 120 is arranged such that its reference direction coincides with the measurement direction of the depth sensor 111 . Also, these sensors are placed in close proximity to be considered the same location. The imaging operation by the omnidirectional camera 120 is performed in synchronization with the depth measurement operation by the depth sensor 111 . As a result, the inertial measurement unit 112 detects the position and direction at the timing when the omnidirectional image is captured, so the detected position and direction are used as the camera position and camera direction when the omnidirectional image is captured Each can be used.

上記の三次元スキャナ110と全天球カメラ120は、例えば、ヘッドマウントユニットに搭載される。そして、このヘッドマウントユニットを頭部に装着した計測者によって、計測作業が行われる。この計測作業は、作業現場100に存在する物体のうち、現場作業の対象である作業対象物の三次元データを取得することを主な目的とする。このため、計測者は、作業対象物の周囲において三次元スキャナ110と全天球カメラ120を作業対象物の方向に向けながら、デプスの計測と全天球画像の撮像とを複数回行う。具体的な例としては、計測者は、作業対象物の周囲を移動しながらデプスの計測と全天球画像の撮像とを複数回行う。これにより、各撮像タイミングでの全天球画像のデータと、それらの撮像時における位置と方向のデータと、ポリゴンデータとがサーバ300に送信される。 The three-dimensional scanner 110 and the omnidirectional camera 120 described above are mounted on, for example, a head mount unit. Then, a measurement work is performed by a measurement person who wears this head-mounted unit on the head. The main purpose of this measurement work is to acquire three-dimensional data of a work target, which is a target of field work, among the objects existing in the work site 100 . For this reason, the measurer performs depth measurement and omnidirectional image capturing multiple times while directing the three-dimensional scanner 110 and the omnidirectional camera 120 in the direction of the work object around the work object. As a specific example, the measurer performs depth measurement and omnidirectional image capturing multiple times while moving around the work object. As a result, omnidirectional image data at each imaging timing, position and direction data at the time of imaging, and polygon data are transmitted to the server 300 .

なお、三次元データ計算部113の処理の少なくとも一部は、サーバ300において実行されてもよい。例えば、三次元データ計算部113の処理のうち、点群データの算出が三次元データ計算部113で実行され、点群データに基づくポリゴンデータの生成がサーバ300で実行されてもよい。あるいは、デプスセンサ111と慣性計測ユニット112の検出結果がサーバ300に送信され、これらの検出結果に基づく三次元データ計算部113の処理がサーバ300で実行されてもよい。 Note that at least part of the processing of the three-dimensional data calculation unit 113 may be executed by the server 300 . For example, among the processes of the three-dimensional data calculation unit 113, calculation of point cloud data may be performed by the three-dimensional data calculation unit 113, and generation of polygon data based on the point cloud data may be performed by the server 300. Alternatively, the detection results of the depth sensor 111 and the inertial measurement unit 112 may be transmitted to the server 300, and the server 300 may execute the processing of the three-dimensional data calculation section 113 based on these detection results.

ところで、三次元スキャナ110による計測では、主にデプスセンサ111の性能から、一定以上の精度で三次元形状を計測可能な計測対象との距離の上限値が存在する。計測者による計測作業は、作業対象物がこの距離の上限値以内の範囲に確実に含まれるように行われる。このため、サーバに送信されるポリゴンデータには、作業対象物の三次元形状を示すデータが含まれているが、それより遠い位置に存在する物体の三次元形状を示すデータは含まれない。 By the way, in the measurement by the three-dimensional scanner 110, mainly due to the performance of the depth sensor 111, there is an upper limit value of the distance from the measurement target at which the three-dimensional shape can be measured with a certain level of accuracy. The measurement work by the measurer is performed so that the work target is surely included in the range within the upper limit of this distance. For this reason, the polygon data transmitted to the server includes data indicating the three-dimensional shape of the work object, but does not include data indicating the three-dimensional shape of an object located farther away.

そこで、サーバ300は、全天球画像のデータと撮像時の位置および方向のデータとに基づき、作業対象物の周囲に存在し、かつ作業対象物から一定の距離範囲内に存在する物体の三次元形状を計測する。以下、このような物体を「中間背景物」と記載する。サーバ300は、中間背景物の三次元形状を示す三次元データを生成する。 Therefore, based on the omnidirectional image data and the data of the position and direction at the time of imaging, the server 300 performs a three-dimensional measurement of an object existing around the work target and within a certain distance range from the work target. Measure the original shape. Hereinafter, such an object will be referred to as an "intermediate background object". The server 300 generates 3D data representing the 3D shape of the intermediate background object.

さらに、サーバ300は、仮想空間において、作業対象物から見て中間背景物よりさらに遠くの位置に、作業対象物を中心とする球形の三次元モデルを生成する。そして、サーバ300は、全天球画像のデータに基づき、現実空間における中間背景物より遠い領域の状況を示す画像を、球形の三次元モデルの内面にテクスチャ画像として貼り付ける。これにより、作業現場100の現実空間のほぼ全体についての三次元形状を示す三次元データが得られる。なお、以下の説明では、上記のような球形の三次元モデルの内面を「外周」と記載する。 Furthermore, the server 300 generates a spherical three-dimensional model centered on the work object at a position farther from the work object than the intermediate background object in the virtual space. Based on the omnidirectional image data, the server 300 then pastes an image representing the situation of an area farther from the intermediate background object in the real space onto the inner surface of the spherical three-dimensional model as a texture image. As a result, three-dimensional data representing the three-dimensional shape of substantially the entire physical space of the work site 100 is obtained. In the following description, the inner surface of the spherical three-dimensional model as described above will be referred to as the "periphery".

以下、図4を用いて、サーバ300が備える処理機能について説明する。
サーバ300は、ポリゴンデータ取得部321、画像データ取得部322、対象物データ生成部323、中間背景物データ生成部324、外周データ生成部325、中間背景物位置補正部326、補完処理部327、三次元データ記憶部330および画像データ記憶部340を有する。
Processing functions of the server 300 will be described below with reference to FIG.
The server 300 includes a polygon data acquisition unit 321, an image data acquisition unit 322, an object data generation unit 323, an intermediate background object data generation unit 324, an outer circumference data generation unit 325, an intermediate background object position correction unit 326, a complement processing unit 327, It has a three-dimensional data storage unit 330 and an image data storage unit 340 .

ポリゴンデータ取得部321、画像データ取得部322、対象物データ生成部323、中間背景物データ生成部324、外周データ生成部325、中間背景物位置補正部326および補完処理部327の処理は、例えば、プロセッサ311が所定のプログラムを実行することで実現される。三次元データ記憶部330および画像データ記憶部340は、例えば、RAM312やHDD313などのサーバ300が備える記憶装置の記憶領域によって実現される。 The processes of the polygon data acquisition unit 321, the image data acquisition unit 322, the object data generation unit 323, the intermediate background object data generation unit 324, the perimeter data generation unit 325, the intermediate background object position correction unit 326, and the complement processing unit 327 are, for example, , is implemented by the processor 311 executing a predetermined program. The three-dimensional data storage unit 330 and the image data storage unit 340 are implemented by, for example, storage areas of a storage device provided in the server 300 such as the RAM 312 and the HDD 313 .

ポリゴンデータ取得部321は、三次元スキャナ110の三次元データ計算部113から、三次元スキャンの結果としてのポリゴンデータを受信する。前述のように、このポリゴンデータには、作業対象物の三次元形状を示すデータが含まれる。 The polygon data acquisition unit 321 receives polygon data as a result of 3D scanning from the 3D data calculation unit 113 of the 3D scanner 110 . As described above, this polygon data includes data representing the three-dimensional shape of the work object.

画像データ取得部322は、全天球カメラ120から全天球画像のデータを受信し、画像データ記憶部340に格納する。これにより、全天球カメラ120によって撮像された全天球画像341が画像データ記憶部340に保存される。また、画像データ取得部322は、三次元スキャナ110の三次元データ計算部113から、全天球画像341のそれぞれの撮像タイミングにおける位置と方向を示すデータを受信する。画像データ取得部322は、受信した位置と方向のデータを、全天球画像341のそれぞれの撮像時のカメラ位置とカメラ方向とを示すデータとして、全天球画像341に付加して画像データ記憶部340に格納する。 The image data acquisition unit 322 receives omnidirectional image data from the omnidirectional camera 120 and stores it in the image data storage unit 340 . Thereby, the omnidirectional image 341 captured by the omnidirectional camera 120 is saved in the image data storage unit 340 . The image data acquisition unit 322 also receives data indicating the position and direction of each imaging timing of the omnidirectional image 341 from the three-dimensional data calculation unit 113 of the three-dimensional scanner 110 . The image data acquisition unit 322 adds the received position and direction data to the omnidirectional image 341 as data indicating the camera position and camera direction when each omnidirectional image 341 was captured, and stores the image data. Stored in section 340 .

対象物データ生成部323は、画像データ記憶部340に記憶された全天球画像341を用いて、ポリゴンデータ取得部321が取得したポリゴンデータの各ポリゴンに貼り付けるテクスチャ画像を生成する。対象物データ生成部323は、ポリゴンデータにテクスチャ画像のデータが付加されたテクスチャ画像付きポリゴンデータを、対象物データ331として三次元データ記憶部330に格納する。なお、この対象物データ331には、少なくとも作業対象物の三次元形状を示すポリゴンとテクスチャ画像の各データが含まれている。 The object data generation unit 323 uses the omnidirectional image 341 stored in the image data storage unit 340 to generate a texture image to be pasted on each polygon of the polygon data acquired by the polygon data acquisition unit 321 . The target object data generation unit 323 stores polygon data with a texture image, which is obtained by adding texture image data to polygon data, in the three-dimensional data storage unit 330 as target object data 331 . The object data 331 includes at least polygon and texture image data representing the three-dimensional shape of the work object.

中間背景物データ生成部324は、画像データ記憶部340に記憶された全天球画像341と、これらに付加されたカメラ位置およびカメラ方向に基づいて、各全天球画像341における中間背景物とカメラ位置との距離を算出する。中間背景物データ生成部324は、算出された距離とカメラ位置およびカメラ方向とに基づいて、中間背景物の三次元モデルを示す点群データを算出する。中間背景物データ生成部324は、算出された点群データに含まれる各特徴点によってポリゴンを生成するとともに、全天球画像341を用いてポリゴンに貼り付けるテクスチャ画像を生成する。中間背景物データ生成部324は、このようにして生成された中間背景物についてのテクスチャ画像付きポリゴンデータを、中間背景物データ332として三次元データ記憶部330に格納する。 The intermediate background object data generator 324 generates an intermediate background object in each omnidirectional image 341 based on the omnidirectional images 341 stored in the image data storage unit 340 and the camera position and camera direction added thereto. Calculate the distance to the camera position. The intermediate background object data generator 324 calculates point cloud data representing a three-dimensional model of the intermediate background object based on the calculated distance, camera position, and camera direction. The intermediate background object data generation unit 324 generates polygons from each feature point included in the calculated point cloud data, and generates a texture image to be attached to the polygons using the omnidirectional image 341 . The intermediate background object data generation unit 324 stores the polygon data with texture image for the intermediate background object thus generated in the three-dimensional data storage unit 330 as the intermediate background object data 332 .

外周データ生成部325は、外周(作業対象物を中心とした所定半径の球形三次元モデルの内面)のポリゴンを生成し、画像データ記憶部340に記憶された全天球画像341を用いて、外周のポリゴンに対応するテクスチャ画像を生成する。外周データ生成部325は、このようにして生成された外周についてのテクスチャ画像付きポリゴンデータを、外周データ333として三次元データ記憶部330に格納する。 The outer circumference data generation unit 325 generates polygons of the outer circumference (the inner surface of a spherical three-dimensional model with a predetermined radius centered on the work object), and uses the omnidirectional image 341 stored in the image data storage unit 340, Generate a texture image corresponding to the outer polygons. The perimeter data generator 325 stores the generated polygon data with a texture image for the perimeter as perimeter data 333 in the three-dimensional data storage unit 330 .

中間背景物位置補正部326は、現実空間における作業対象物と中間背景物との距離に応じて、仮想空間における中間背景物の位置を補正する。
補完処理部327は、現実空間の三次元形状のうち、対象物データ331、中間背景物データ332、外周データ333のいずれによっても表されない三次元形状を補完し、補完された三次元形状を示すデータを出力する。この補完処理により、例えば、作業対象物と中間背景物との間の領域や、中間背景物と外周との間の領域の三次元形状を示すデータが、簡易的に生成される。補完処理部327は、これらの領域についてのテクスチャ画像付きポリゴンデータを、補完データ334として三次元データ記憶部330に格納する。
The intermediate background object position correction unit 326 corrects the position of the intermediate background object in the virtual space according to the distance between the work object and the intermediate background object in the real space.
The complement processing unit 327 complements a three-dimensional shape that is not represented by any of the target object data 331, the intermediate background object data 332, and the outer circumference data 333 among the three-dimensional shapes in the real space, and displays the complemented three-dimensional shape. Output data. By this complementing process, for example, data indicating the three-dimensional shape of the area between the work object and the intermediate background object and the area between the intermediate background object and the outer circumference is easily generated. The complement processing unit 327 stores polygon data with texture images for these regions as complementary data 334 in the three-dimensional data storage unit 330 .

このようにして、三次元データ記憶部330には、作業現場100の環境を仮想空間に再現するためのデータが記憶される。三次元データ記憶部330に記憶されるこれらのデータが、図2の三次元データ301に相当する。 In this manner, the three-dimensional data storage unit 330 stores data for reproducing the environment of the work site 100 in virtual space. These data stored in the three-dimensional data storage unit 330 correspond to the three-dimensional data 301 in FIG.

次に、図5、図6を用いて、作業現場100の例について説明する。
図5は、作業現場の例を示す斜視図である。また、図6は、作業現場の例を示す平面図である。図5、図6に示すように、作業現場100には、物体131~136が存在する。これらのうち、物体131が、現場作業の対象となる作業対象物である。物体132,133は、物体131から比較的近くに位置している。一方、物体134~136は、物体132,133と比較して、物体131から遠くに位置している。
Next, an example of the work site 100 will be described with reference to FIGS. 5 and 6. FIG.
FIG. 5 is a perspective view showing an example of a work site. Also, FIG. 6 is a plan view showing an example of a work site. As shown in FIGS. 5 and 6, there are objects 131 to 136 on the work site 100. FIG. Among these, the object 131 is a work target for field work. Objects 132 and 133 are located relatively close to object 131 . On the other hand, the objects 134 to 136 are located farther from the object 131 than the objects 132 and 133 are.

図7は、計測者による計測作業について説明するための図である。
図7の左側に示すように、作業現場100において、三次元スキャナ110と全天球カメラ120とを備えたヘッドマウントユニットを頭部に装着した計測者は、作業対象物である物体131の方を見ながら、矢印141に示すように物体131の周囲を周回する。計測者は、その周回中にデプスの計測と全天球カメラ120の撮像とを略一定の間隔を置いて複数回行う。また、計測者は、例えば、ヘッドマウントユニットの高さや角度を変えながら、物体131の周囲を複数回周回して上記の計測を行ってもよい。
FIG. 7 is a diagram for explaining the measurement work performed by the measurer.
As shown on the left side of FIG. 7, in a work site 100, a measurer wearing a head-mounted unit having a three-dimensional scanner 110 and an omnidirectional camera 120 on his head moves toward an object 131, which is a work target. , the object 131 is circled as indicated by an arrow 141 . The measurer performs depth measurement and imaging with the omnidirectional camera 120 a plurality of times at substantially regular intervals during the orbit. Further, the measurer may perform the above measurement by going around the object 131 multiple times while changing the height and angle of the head mounted unit, for example.

三次元スキャナ110の三次元データ計算部113は、各計測位置で計測されたデプス、位置および方向に基づいて、デプスを計測可能な範囲における現実空間の三次元モデル331aの点群データを算出する。三次元データ計算部113は、算出された点群データに含まれる各特徴点によってポリゴンを生成し、生成されたポリゴンを示すポリゴンデータをサーバ300に出力する。図7の右上では、生成されたポリゴンの集合としての三次元モデル331aを示している。なお、ポリゴン(パッチ)の形状は、図7の例のように四角形でなくてもよく、例えば三角形などの他の形状の多角形であってもよい。 The 3D data calculation unit 113 of the 3D scanner 110 calculates point cloud data of the 3D model 331a of the physical space in the depth measurable range based on the depth, position, and direction measured at each measurement position. . The three-dimensional data calculation unit 113 generates polygons from each feature point included in the calculated point cloud data, and outputs polygon data representing the generated polygons to the server 300 . The upper right of FIG. 7 shows a three-dimensional model 331a as a set of generated polygons. Note that the shape of the polygon (patch) may not be a quadrangle as in the example of FIG. 7, but may be a polygon of another shape such as a triangle.

このようにして三次元スキャナ110によって生成されたポリゴンによる三次元モデル331aは、作業対象物である物体131の三次元形状を含んでいる。そこで、以下の説明では、三次元スキャナ110によって生成されたポリゴンを、単に「作業対象物のポリゴン」と記載する。 The polygonal three-dimensional model 331a generated by the three-dimensional scanner 110 in this manner includes the three-dimensional shape of the object 131, which is the work target. Therefore, in the following description, the polygons generated by the three-dimensional scanner 110 are simply referred to as "work object polygons".

一方、全天球カメラ120は、図7の右下に示すように、上記の各計測位置で撮像された全天球画像341a,341b,・・・を、サーバ300に出力する。前述のように、サーバ300では、画像データ取得部322の処理により、全天球画像341a,341b,・・・のそれぞれに対して、撮像時のカメラ位置とカメラ方向とが対応付けられる。 On the other hand, the omnidirectional camera 120 outputs omnidirectional images 341a, 341b, . As described above, in the server 300, the camera position and camera direction at the time of imaging are associated with each of the omnidirectional images 341a, 341b, . . .

次に、図8~図10を用いて、対象物データ331の生成処理について説明する。
図8は、ポリゴンに対応するテクスチャ画像の生成について説明するための図である。前述のように、対象物データ生成部323は、画像データ記憶部340に記憶された全天球画像341を用いて、ポリゴンデータ取得部321が取得したポリゴンデータの各ポリゴンに貼り付けるテクスチャ画像を生成する。
Next, the processing for generating the object data 331 will be described with reference to FIGS. 8 to 10. FIG.
FIG. 8 is a diagram for explaining generation of texture images corresponding to polygons. As described above, the target object data generation unit 323 uses the omnidirectional image 341 stored in the image data storage unit 340 to create a texture image to be pasted on each polygon of the polygon data acquired by the polygon data acquisition unit 321. Generate.

具体的には、対象物データ生成部323は、ポリゴンを1つ選択し、そのポリゴンの各頂点の三次元座標に基づいて、ポリゴンの表面(ポリゴン面)の法線ベクトルを算出する。図8では例として、三次元モデル331aのポリゴンの中からポリゴン151が選択され、ポリゴン151のポリゴン面の法線ベクトルVが算出されている。 Specifically, the object data generator 323 selects one polygon and calculates the normal vector of the surface of the polygon (polygon surface) based on the three-dimensional coordinates of each vertex of the polygon. In FIG. 8, as an example, the polygon 151 is selected from the polygons of the three-dimensional model 331a, and the normal vector V of the polygon surface of the polygon 151 is calculated.

また、対象物データ生成部323は、画像データ記憶部340に記憶された全天球画像341の中から、ポリゴン151のポリゴン面が写っている全天球画像341を選択する。対象物データ生成部323は、ポリゴン面の中心から、選択された全天球画像341のそれぞれのカメラ位置に対するベクトルを算出する。図8の例では、カメラ位置152aに対するベクトルVaと、カメラ位置152bに対するベクトルVbと、カメラ位置152cに対するベクトルVcとが算出されている。 Further, the object data generation unit 323 selects the omnidirectional image 341 in which the polygon surface of the polygon 151 is shown from the omnidirectional images 341 stored in the image data storage unit 340 . The target object data generation unit 323 calculates a vector for each camera position of the selected omnidirectional image 341 from the center of the polygon surface. In the example of FIG. 8, vector Va for camera position 152a, vector Vb for camera position 152b, and vector Vc for camera position 152c are calculated.

対象物データ生成部323は、算出されたベクトルVa,Vb,Vcの中から、法線ベクトルVとの間で方向の差が最小のベクトルを選択する。対象物データ生成部323は、選択されたベクトルに対応する全天球画像341を特定し、特定された全天球画像341におけるポリゴン151の領域の画像を、ポリゴン151に対応するテクスチャ画像とする。 The target object data generator 323 selects the vector having the smallest difference in direction from the normal vector V from among the calculated vectors Va, Vb, and Vc. The object data generator 323 identifies the omnidirectional image 341 corresponding to the selected vector, and sets the image of the area of the polygon 151 in the identified omnidirectional image 341 as the texture image corresponding to the polygon 151. .

このような処理がすべてのポリゴンについて実行されることで、各ポリゴンに対してテクスチャ画像が対応付けられる。図8の下側に示すように、仮想空間の画像を表示する際には、各ポリゴンに対応するテクスチャ画像が描画されることで、現実空間での見た目に近いリアルな作業対象物の画像331bが表示される。 By executing such processing for all polygons, a texture image is associated with each polygon. As shown in the lower part of FIG. 8, when displaying the image of the virtual space, a texture image corresponding to each polygon is drawn, so that a realistic image 331b of the work object that is close to the appearance in the real space is displayed. is displayed.

図9、図10は、対象物データの生成処理手順を示すフローチャートの例である。
[ステップS11]ポリゴンデータ取得部321は、三次元スキャナ110から、作業対象物のポリゴンデータを受信する。また、画像データ取得部322は、全天球カメラ120から全天球画像のデータを受信するとともに、各全天球画像の撮像時における位置と方向(すなわち、カメラ位置とカメラ方向)を受信する。画像データ取得部322は、各全天球画像のデータを画像データ記憶部340に格納するとともに、カメラ位置とカメラ方向とを対応する全天球画像のデータに付加して画像データ記憶部340に格納する。
9 and 10 are examples of flowcharts showing the processing procedure for generating object data.
[Step S<b>11 ] The polygon data acquisition unit 321 receives polygon data of a work object from the three-dimensional scanner 110 . In addition, the image data acquisition unit 322 receives omnidirectional image data from the omnidirectional camera 120, and also receives the position and direction (that is, camera position and camera direction) at the time each omnidirectional image was captured. . The image data acquisition unit 322 stores the data of each omnidirectional image in the image data storage unit 340, adds the camera position and camera direction to the data of the corresponding omnidirectional image, and stores the data in the image data storage unit 340. Store.

[ステップS12]対象物データ生成部323は、作業対象物のポリゴンデータから、ポリゴンを1つ選択する。
[ステップS13]対象物データ生成部323は、画像データ記憶部340に記憶された全天球画像の中から、1つを選択する。
[Step S12] The object data generator 323 selects one polygon from the polygon data of the work object.
[Step S<b>13 ] The target object data generation unit 323 selects one of the omnidirectional images stored in the image data storage unit 340 .

[ステップS14]対象物データ生成部323は、ステップS12で選択されたポリゴンの表面(ポリゴン面)の部分が、ステップS13で選択された全天球画像の中に含まれるかを判定する。この判定は、ステップS12で選択されたポリゴンの各頂点の座標と、ステップS13で選択された全天球画像のカメラ位置およびカメラ方向とに基づいて行われる。対象物データ生成部323は、ポリゴン面の部分が全天球画像に含まれる場合、ステップS15の処理を実行し、含まれない場合、ステップS17の処理を実行する。 [Step S14] The target object data generation unit 323 determines whether the surface of the polygon (polygon surface) selected in step S12 is included in the omnidirectional image selected in step S13. This determination is made based on the coordinates of each vertex of the polygon selected in step S12 and the camera position and camera direction of the omnidirectional image selected in step S13. The target object data generator 323 executes the process of step S15 if the polygon surface portion is included in the omnidirectional image, and executes the process of step S17 if not included.

[ステップS15]対象物データ生成部323は、ステップS13で選択された全天球画像におけるポリゴン面に対応する部分の画像を、ステップS12で選択されたポリゴンに対応するテクスチャ画像候補としてRAM312に一時的に保存する。このとき、対象物データ生成部323は、テクスチャ画像候補に対して、対応する全天球画像のカメラ位置を付加しておく。 [Step S15] The object data generator 323 temporarily stores the image of the portion corresponding to the polygon surface in the omnidirectional image selected in step S13 in the RAM 312 as a texture image candidate corresponding to the polygon selected in step S12. Save as desired. At this time, the object data generation unit 323 adds the camera position of the corresponding omnidirectional image to the texture image candidate.

[ステップS16]対象物データ生成部323は、ステップS13で選択された全天球画像から、ステップS15でテクスチャ画像候補として特定された部分の画像を削除する。これにより、全天球画像のデータの中から、削除された部分の画像データが消去される。 [Step S16] The target object data generator 323 deletes the image of the portion specified as the texture image candidate in step S15 from the omnidirectional image selected in step S13. As a result, the image data of the deleted portion is erased from the omnidirectional image data.

[ステップS17]対象物データ生成部323は、画像データ記憶部340の中に、ステップS13で選択されていない全天球画像があるかを判定する。対象物データ生成部323は、未選択の全天球画像がある場合、処理をステップS13に進め、未選択の全天球画像の中から1つを選択する。一方、対象物データ生成部323は、すべての全天球画像が選択済みの場合、ステップS18の処理を実行する。 [Step S17] The object data generation unit 323 determines whether or not the image data storage unit 340 contains an omnidirectional image that has not been selected in step S13. If there is an unselected omnidirectional image, the object data generator 323 advances the process to step S13, and selects one of the unselected omnidirectional images. On the other hand, when all spherical images have been selected, the target object data generator 323 executes the process of step S18.

[ステップS18]対象物データ生成部323は、ポリゴンデータの中に、ステップS12で選択されていないポリゴンがあるかを判定する。対象物データ生成部323は、未選択のポリゴンがある場合、処理をステップS12に進め、未選択のポリゴンの中から1つを選択する。この場合、画像データ記憶部340に記憶されたすべての全天球画像がステップS13で未選択であることを示すように、全天球画像の選択ステータスがリセットされる。一方、対象物データ生成部323は、すべてのポリゴンが選択済みの場合、図10のステップS21の処理を実行する。 [Step S18] The object data generator 323 determines whether or not there is a polygon that has not been selected in step S12 in the polygon data. If there are unselected polygons, the object data generator 323 advances the process to step S12 and selects one of the unselected polygons. In this case, the selection status of the omnidirectional images is reset to indicate that all the omnidirectional images stored in the image data storage unit 340 have not been selected in step S13. On the other hand, when all polygons have been selected, the target object data generator 323 executes the process of step S21 in FIG.

以下、図10を用いて説明を続ける。
[ステップS21]対象物データ生成部323は、作業対象物のポリゴンデータから、ポリゴンを1つ選択する。
The description will be continued below with reference to FIG.
[Step S21] The object data generator 323 selects one polygon from the polygon data of the work object.

[ステップS22]対象物データ生成部323は、選択されたポリゴンの各頂点の座標に基づいて、ポリゴン面fの法線ベクトルvを算出する。
[ステップS23]対象物データ生成部323は、図9のステップS15において保存された、選択されたポリゴンに対応するテクスチャ画像候補のそれぞれについて、ポリゴン面fの中心からカメラ位置に対するベクトルを算出する。このカメラ位置とは、図9のステップS15において対応するテクスチャ画像候補に付加された情報であり、このテクスチャ画像候補が抽出された全天球画像のカメラ位置を示す。
[Step S22] The object data generator 323 calculates the normal vector v of the polygon face f based on the coordinates of each vertex of the selected polygon.
[Step S23] The target object data generator 323 calculates a vector from the center of the polygon surface f to the camera position for each of the texture image candidates corresponding to the selected polygon, which was saved in step S15 of FIG. This camera position is information added to the corresponding texture image candidate in step S15 of FIG. 9, and indicates the camera position of the omnidirectional image from which this texture image candidate is extracted.

[ステップS24]対象物データ生成部323は、ステップS23で算出されたベクトルの中から、ステップS22で算出された法線ベクトルvとの間で方向の差が最小のベクトルを特定する。対象物データ生成部323は、特定されたベクトルに対応するテクスチャ画像候補を、ステップS21で選択されたポリゴンに対応するテクスチャ画像に決定する。 [Step S24] The object data generation unit 323 identifies a vector having the smallest difference in direction from the normal vector v calculated in step S22 from among the vectors calculated in step S23. The target object data generation unit 323 determines texture image candidates corresponding to the specified vectors as texture images corresponding to the polygons selected in step S21.

ステップS24の初回実行時には、対象物データ生成部323は、対象物データ331を新規に生成して三次元データ記憶部330に格納する。そして、対象物データ生成部323は、選択されたポリゴンを示すデータと対応するテクスチャ画像を示すデータとを、対象物データ331に含める。ポリゴンを示すデータには、ポリゴンの各頂点の座標データが含まれる。一方、ステップS24の2回目以降の実行時には、対象物データ生成部323は、選択されたポリゴンを示すデータと対応するテクスチャ画像を示すデータとを、既存の対象物データ331に含める。 When step S<b>24 is executed for the first time, the target object data generation unit 323 newly generates target object data 331 and stores it in the three-dimensional data storage unit 330 . Then, the target object data generator 323 includes the data representing the selected polygon and the data representing the corresponding texture image in the target object data 331 . Data representing a polygon includes coordinate data of each vertex of the polygon. On the other hand, when step S24 is executed for the second and subsequent times, the target object data generator 323 includes the data representing the selected polygon and the data representing the corresponding texture image in the existing target object data 331. FIG.

[ステップS25]対象物データ生成部323は、ポリゴンデータの中に、ステップS21で選択されていないポリゴンがあるかを判定する。対象物データ生成部323は、未選択のポリゴンがある場合、処理をステップS21に進め、未選択のポリゴンの中から1つを選択する。一方、対象物データ生成部323は、すべてのポリゴンが選択済みの場合、対象物データ331の生成処理を終了する。 [Step S25] The target object data generator 323 determines whether or not there is a polygon that has not been selected in step S21 in the polygon data. If there are unselected polygons, the target object data generator 323 advances the process to step S21 and selects one of the unselected polygons. On the other hand, if all polygons have been selected, the target object data generator 323 ends the process of generating the target object data 331 .

以上の処理が終了した時点では、すべてのポリゴンを示すデータと、各ポリゴンに対応するテクスチャ画像を示すデータとを含む対象物データ331が、三次元データ記憶部330に保存された状態となる。また、画像データ記憶部340に記憶された全天球画像については、対象物データ331として三次元モデル化された被写体(主に作業対象物)が写っている部分が抜き取られた状態になっている。 When the above processing is completed, object data 331 including data representing all polygons and data representing texture images corresponding to the polygons is stored in the three-dimensional data storage unit 330. In addition, the omnidirectional image stored in the image data storage unit 340 is in a state in which the part showing the subject (mainly the work target) that has been three-dimensionally modeled as the target object data 331 is extracted. there is

次に、図11~図13を用いて、中間背景物データ生成部324による中間背景物データ332の生成処理について説明する。
中間背景物データ生成部324は、まず、画像データ記憶部340に記憶された各全天球画像の方向を揃える。この処理では、各全天球画像を写したカメラの撮像位置(カメラ位置)と撮像方向(方位)が同じになるように、各全天球画像が変換される。この変換処理は、各全天球画像に付加されたカメラ位置とカメラ方向に基づいて、あるいは、全天球画像間のマッチングによって行われる。次に、中間背景物データ生成部324は、変換後の各全天球画像から特徴点を抽出し、全天球画像間での同一特徴点を示す対応点を抽出する。
Next, generation processing of the intermediate background object data 332 by the intermediate background object data generation unit 324 will be described with reference to FIGS. 11 to 13. FIG.
The intermediate background object data generation unit 324 first aligns the directions of the omnidirectional images stored in the image data storage unit 340 . In this process, each omnidirectional image is transformed so that the imaging position (camera position) and the imaging direction (azimuth) of the camera that captured each omnidirectional image are the same. This conversion processing is performed based on the camera position and camera direction added to each omnidirectional image, or by matching between omnidirectional images. Next, the intermediate background object data generation unit 324 extracts feature points from each of the converted omnidirectional images, and extracts corresponding points indicating the same feature points between the omnidirectional images.

各全天球画像において、中間背景物に対応する被写体は、作業対象物に対応する被写体より奥側に写っている。このため、中間背景物は、全天球カメラ120のカメラ位置からある程度離れた距離に位置している。そこで、中間背景物データ生成部324は、まず、全天球画像間の特徴点のマッチングによって対応点を抽出する。その後、中間背景物データ生成部324は、次の図11に示す処理により、抽出された対応点の中からカメラ位置に近いと推定されるものを除外し、カメラ位置からある程度離れた距離に位置する対応点だけに絞り込む。 In each omnidirectional image, the subject corresponding to the intermediate background object appears on the far side of the subject corresponding to the work object. Therefore, the intermediate background object is located at a certain distance from the camera position of the omnidirectional camera 120 . Therefore, the intermediate background object data generation unit 324 first extracts corresponding points by matching feature points between spherical images. After that, the intermediate background object data generation unit 324 performs the following processing shown in FIG. The corresponding points are narrowed down to the corresponding points.

図11は、対応点の絞り込みについて説明するための図である。図11では、カメラ位置161から撮像された画像161aと、カメラ位置162から撮像された画像162aの両方において、被写体上の特徴点163,164が写っているものとする。すなわち、特徴点163,164は、いずれも画像162aと画像163aとの間の対応点として抽出されている。また、カメラ位置161,162から特徴点163までの距離より、カメラ位置161,162から特徴点164までの距離の方が長いものとする。 FIG. 11 is a diagram for explaining narrowing down of corresponding points. In FIG. 11, both the image 161a taken from the camera position 161 and the image 162a taken from the camera position 162 include feature points 163 and 164 on the subject. That is, the feature points 163 and 164 are both extracted as corresponding points between the image 162a and the image 163a. It is also assumed that the distance from the camera positions 161 and 162 to the feature point 164 is longer than the distance from the camera positions 161 and 162 to the feature point 163 .

ここで、通常、カメラ位置が変化すると、撮像された画像における同一の特徴点(対応点)の位置が移動する。カメラ位置の変化量が同じ場合、カメラ位置から特徴点までの距離が長いほど、画像における特徴点の移動量(位置ズレ量)が小さくなる。図11の場合では、画像161a,162aのそれぞれにおける特徴点164の位置の移動量より、画像161a,162aのそれぞれにおける特徴点163の位置の移動量の方が大きい。 Here, when the camera position changes, the position of the same feature point (corresponding point) in the imaged image usually moves. When the amount of change in the camera position is the same, the longer the distance from the camera position to the feature point, the smaller the amount of movement (positional deviation amount) of the feature point in the image. In the case of FIG. 11, the amount of movement of the position of the feature point 163 in each of the images 161a and 162a is larger than the amount of movement of the position of the feature point 164 in each of the images 161a and 162a.

そこで、中間背景物データ生成部324は、全天球画像間の対応点の移動量(二次元座標に基づく距離)が所定量以下の場合に、その対応点をそのまま残す一方、移動量が所定量を超える場合、その対応点がカメラ位置に近すぎると判断して、その対応点を除外する。これにより、対応点をカメラ位置からある程度離れた距離に位置するものだけに絞り込むことができる。全天球画像においては、作業対象物やこれに近接する物体の画像部分はすでに抜き取られているものの、このような画像部分の一部が残っている場合、上記の絞り込みによってこのような画像部分から抽出された対応点を除外できる。図11の例では、特徴点164に対応する対応点はそのまま残され、特徴点163に対応する対応点は除外される。 Therefore, when the amount of movement (distance based on two-dimensional coordinates) of the corresponding points between the omnidirectional images is equal to or less than a predetermined amount, the intermediate background object data generation unit 324 leaves the corresponding points as they are, while leaving the corresponding points as they are. If the quantity is exceeded, it is determined that the corresponding point is too close to the camera position and the corresponding point is excluded. As a result, the corresponding points can be narrowed down to those located at a certain distance from the camera position. In the omnidirectional image, although the image portion of the work object and objects close to it has already been extracted, if a part of such an image portion remains, such an image portion can exclude corresponding points extracted from In the example of FIG. 11, the corresponding points corresponding to the feature point 164 are left as they are, and the corresponding points corresponding to the feature point 163 are excluded.

この後、中間背景物データ生成部324は、絞り込まれた対応点の全天球画像における位置と、全天球画像のカメラ位置およびカメラ方向とに基づいて、カメラ位置から対応点までの距離を算出する。ただし、距離の算出精度はカメラ位置から対応点までの距離が長いほど低下する。そこで、中間背景物データ生成部324は、上記の方法で絞り込まれた対応点を、さらにカメラ位置からの距離が一定値以下のものだけに絞り込む。なお、このときに除外された対応点に対応する被写体の特徴点は、外周において描画されることになる。 After that, the intermediate background object data generation unit 324 calculates the distance from the camera position to the corresponding point based on the position of the narrowed down corresponding point in the omnidirectional image and the camera position and camera direction of the omnidirectional image. calculate. However, the distance calculation accuracy decreases as the distance from the camera position to the corresponding point increases. Therefore, the intermediate background object data generation unit 324 further narrows down the corresponding points narrowed down by the above method to only those whose distance from the camera position is equal to or less than a certain value. Note that feature points of the object corresponding to the corresponding points excluded at this time are drawn on the outer circumference.

図12は、対応点までの距離の算出について説明するための図である。図12では、カメラ位置171aから撮像された画像と、カメラ位置171bから撮像された画像の両方に、対応点172が写っているものとする。また、カメラ位置171aとカメラ位置171bとの距離をLとする。さらに、カメラ位置171aとカメラ位置171bとを結ぶ直線と、カメラ位置171aと対応点172とを結ぶ直線とが、角度θaをなすものとする。また、カメラ位置171aとカメラ位置171bとを結ぶ直線と、カメラ位置171bと対応点172とを結ぶ直線とが、角度θbをなすものとする。 FIG. 12 is a diagram for explaining calculation of distances to corresponding points. In FIG. 12, it is assumed that the corresponding point 172 appears in both the image captured from the camera position 171a and the image captured from the camera position 171b. Also, let L be the distance between the camera positions 171a and 171b. Further, a straight line connecting the camera positions 171a and 171b and a straight line connecting the camera positions 171a and the corresponding point 172 form an angle θa. A straight line connecting the camera positions 171a and 171b and a straight line connecting the camera positions 171b and the corresponding point 172 form an angle θb.

なお、距離Lは、カメラ位置171a,171bのそれぞれから撮像された全天球画像に付加されたカメラ位置に基づいて算出される。また、角度θa,θbは、カメラ位置171a,171bのそれぞれから撮像された全天球画像に付加されたカメラ位置およびカメラ方向に基づいて算出される。 Note that the distance L is calculated based on the camera positions added to the omnidirectional images captured from each of the camera positions 171a and 171b. Also, the angles θa and θb are calculated based on the camera position and camera direction added to the omnidirectional images captured from the camera positions 171a and 171b, respectively.

中間背景物データ生成部324は、距離Lと角度θa,θbを用いて、下記の式(1)にしたがってカメラ位置から対応点172までの距離Dを算出する。中間背景物データ生成部324は、算出された距離Dに基づいて、カメラ位置171a,171bのそれぞれから対応点172までの距離を算出する。 The intermediate background object data generator 324 calculates the distance D from the camera position to the corresponding point 172 according to the following equation (1) using the distance L and the angles θa and θb. The intermediate background object data generator 324 calculates the distance from each of the camera positions 171a and 171b to the corresponding point 172 based on the calculated distance D. FIG.

D={(sinθa*sinθb)/sin(θa+θb)}*L ・・・(1)
中間背景物データ生成部324は、以上の手順により、対応点が写った全天球画像のカメラ位置と対応点との距離を算出する。中間背景物データ生成部324は、全天球画像に付加されたカメラ位置およびカメラ方向と対応点の距離とに基づいて、対応点の三次元位置を算出する。これにより、中間背景物の点群データが得られる。中間背景物データ生成部324は、さらに、点群データに基づく各ポリゴンに対応するテクスチャ画像を、全天球画像を用いて生成する。これにより、中間背景物についてのテクスチャ画像付きポリゴンデータが生成され、中間背景物データ332として三次元データ記憶部330に格納される。
D={(sin θa*sin θb)/sin (θa+θb)}*L (1)
The intermediate background object data generation unit 324 calculates the distance between the camera position of the omnidirectional image in which the corresponding point is captured and the corresponding point by the above procedure. The intermediate background object data generation unit 324 calculates the three-dimensional position of the corresponding point based on the camera position and camera direction added to the omnidirectional image and the distance between the corresponding points. As a result, point cloud data of the intermediate background object is obtained. The intermediate background object data generation unit 324 further generates a texture image corresponding to each polygon based on the point cloud data using the omnidirectional image. As a result, polygon data with a texture image for the intermediate background object is generated and stored as intermediate background object data 332 in the three-dimensional data storage unit 330 .

図13は、中間背景物データの生成処理手順を示すフローチャートの例である。
[ステップS31]中間背景物データ生成部324は、画像データ記憶部340に記憶された各全天球画像の方向を揃える。この処理では、各全天球画像を写したカメラの撮像位置(カメラ位置)と撮像方向(方位)が同じになるように、各全天球画像が変換される。
FIG. 13 is an example of a flowchart showing a procedure for generating intermediate background object data.
[Step S31] The intermediate background object data generator 324 aligns the directions of the omnidirectional images stored in the image data storage unit 340 . In this process, each omnidirectional image is transformed so that the imaging position (camera position) and the imaging direction (azimuth) of the camera that captured each omnidirectional image are the same.

[ステップS32]中間背景物データ生成部324は、ステップS31で変換された各全天球画像から特徴点を抽出し、全天球画像間での同一特徴点を示す対応点を抽出する。この処理では、多数の特徴点のそれぞれについて、2つ以上の全天球画像の間で対応点が抽出される。また、図9のステップS16の処理により全天球画像からは作業対象物に対応する画像部分が削除されている。そのため、ステップS32では、作業対象物以外の被写体における特徴点だけが抽出される可能性が高くなる。 [Step S32] The intermediate background object data generator 324 extracts feature points from each omnidirectional image converted in step S31, and extracts corresponding points representing the same feature points between the omnidirectional images. In this processing, corresponding points are extracted between two or more omnidirectional images for each of a large number of feature points. Further, the image portion corresponding to the work object is deleted from the omnidirectional image by the processing of step S16 in FIG. Therefore, in step S32, there is a high possibility that only the feature points of the subject other than the work subject will be extracted.

[ステップS33]中間背景物データ生成部324は、抽出された対応点(すなわち、同一の特徴点)を1つ選択する。
[ステップS34]中間背景物データ生成部324は、全天球画像間での対応点の移動量(二次元座標に基づく距離)を算出する。この処理では、選択された対応点が写っている全天球画像の組み合わせごとに、対応点の移動量が算出される。なお、例えば、移動量の計算のためにある全天球画像に対して組み合わされる他の全天球画像としては、カメラ位置間の距離が最短のもののみが選択されればよい。
[Step S33] The intermediate background object data generator 324 selects one of the extracted corresponding points (that is, the same feature point).
[Step S34] The intermediate background object data generator 324 calculates the amount of movement (distance based on two-dimensional coordinates) of the corresponding points between the omnidirectional images. In this process, the amount of movement of the corresponding points is calculated for each combination of omnidirectional images in which the selected corresponding points are captured. For example, as another omnidirectional image to be combined with a given omnidirectional image for calculating the amount of movement, only the one with the shortest distance between camera positions should be selected.

[ステップS35]中間背景物データ生成部324は、算出された移動量が所定の閾値TH1以下かを判定し、閾値TH1以下の場合はステップS36の処理を実行し、閾値TH1を超える場合はステップS38の処理を実行する。 [Step S35] The intermediate background object data generation unit 324 determines whether the calculated movement amount is equal to or less than a predetermined threshold TH1. The process of S38 is executed.

この判定では、例えば、対応点が写っている全天球画像の組み合わせごとに算出された移動量の平均値が算出され、平均値が閾値TH1以下の場合に「移動量が閾値TH1以下」と判定される。あるいは、全天球画像の組み合わせごとに算出された移動量のうちの最長値が閾値TH1以下の場合に、「移動量が閾値TH1以下」と判定されてもよい。 In this determination, for example, an average value of the movement amounts calculated for each combination of omnidirectional images in which corresponding points are shown is calculated, and when the average value is equal to or less than the threshold TH1, it is determined that "the movement amount is equal to or less than the threshold TH1". be judged. Alternatively, when the longest value among the movement amounts calculated for each combination of omnidirectional images is equal to or less than the threshold TH1, it may be determined that "the movement amount is equal to or less than the threshold TH1".

[ステップS36]中間背景物データ生成部324は、対応点が写っている全天球画像のカメラ位置と対応点との距離を、上記の式(1)を用いて算出する。中間背景物データ生成部324は、カメラ位置からの対応点の距離が閾値TH2以下かを判定し、閾値TH2以下の場合はステップS37の処理を実行し、閾値TH2を超える場合はステップS38の処理を実行する。 [Step S36] The intermediate background object data generator 324 calculates the distance between the camera position of the omnidirectional image in which the corresponding point is captured and the corresponding point using the above equation (1). The intermediate background object data generation unit 324 determines whether the distance of the corresponding point from the camera position is equal to or less than the threshold TH2. If the distance is equal to or less than the threshold TH2, the process of step S37 is executed. to run.

この判定では、例えば、対応点が写っている全天球画像ごとに算出された対応点との距離の平均値が算出され、平均値が閾値TH2以下の場合に「距離が閾値TH2以下」と判定される。あるいは、全天球画像ごとに算出された距離のうちの最長値が閾値TH2以下の場合に、「距離が閾値TH2以下」と判定されてもよい。 In this determination, for example, the average value of the distances to the corresponding points calculated for each omnidirectional image in which the corresponding points are captured is calculated, and when the average value is equal to or less than the threshold TH2, it is determined that "the distance is equal to or less than the threshold TH2". be judged. Alternatively, when the longest value among the distances calculated for each omnidirectional image is equal to or less than the threshold TH2, it may be determined that "the distance is equal to or less than the threshold TH2".

[ステップS37]中間背景物データ生成部324は、対応点が写っている全天球画像ごとに算出された距離と、各全天球画像に付加されたカメラ位置およびカメラ方向とに基づいて、対応点の三次元座標を算出する。中間背景物データ生成部324は、対応点の三次元座標をRAM312に一時的に保存する。 [Step S37] Based on the distance calculated for each omnidirectional image in which the corresponding point is captured, and the camera position and camera direction added to each omnidirectional image, the intermediate background object data generation unit 324 Calculate the three-dimensional coordinates of the corresponding points. The intermediate background object data generator 324 temporarily stores the three-dimensional coordinates of the corresponding points in the RAM 312 .

[ステップS38]中間背景物データ生成部324は、ステップS33で選択されていない対応点があるかを判定する。中間背景物データ生成部324は、未選択の対応点がある場合、処理をステップS33に進め、未選択の対応点の中から1つを選択する。一方、中間背景物データ生成部324は、すべての対応点を選択済みの場合、ステップS39の処理を実行する。 [Step S38] The intermediate background object data generator 324 determines whether there is a corresponding point that has not been selected in step S33. If there are unselected corresponding points, the intermediate background object data generator 324 advances the process to step S33 and selects one of the unselected corresponding points. On the other hand, if all the corresponding points have been selected, the intermediate background object data generator 324 executes the process of step S39.

上記のステップS33~S38の処理により、抽出された対応点のうち、カメラ位置から略一定の距離d1以上離れており、かつ、その距離d1より長い距離d2(閾値TH2に相当)以内の位置に存在する対応点が特定される。したがって、閾値TH1,TH2は、カメラ位置からの距離が上記の条件を満たすような対応点が特定されるように、設定される。 Among the corresponding points extracted by the above steps S33 to S38, the positions that are separated from the camera position by a substantially constant distance d1 or more and are within a distance d2 (equivalent to the threshold TH2) longer than the distance d1 Corresponding points that exist are identified. Therefore, the thresholds TH1 and TH2 are set so as to identify corresponding points whose distance from the camera position satisfies the above conditions.

距離d1としては、三次元スキャナ110が一定以上の精度で三次元形状を計測可能な距離の上限値に設定可能である。この上限値は、デプスセンサ111が一定以上の精度でデプス(距離)を計測可能な距離の上限値ということもできる。この距離d1と、計測者が計測のために作業対象物を周回する際に作業対象物からどの程度離れるか、どのような間隔でデプスの計測および全天球カメラの撮像を行うかという条件とから、閾値TH1が決定されればよい。 The distance d1 can be set to the upper limit of the distance at which the three-dimensional scanner 110 can measure the three-dimensional shape with a certain level of accuracy. This upper limit value can also be said to be the upper limit value of the distance at which the depth sensor 111 can measure the depth (distance) with a certain degree of accuracy or higher. This distance d1, the distance from the work object when the measurer goes around the work object for measurement, and the conditions at which depth measurement and omnidirectional camera imaging are performed. , the threshold TH1 may be determined.

一方、閾値TH2は、作業対象物の位置(例えば、その重心)からどの程度離れている物体を作業対象物として検出するかによって決定されればよい。これは、例えば、作業対象物に対して作業を行う際に、作業対象物からどのような距離に位置する物体がその作業に影響を与えるかによって決まる。 On the other hand, the threshold TH2 may be determined depending on how far an object is to be detected as a work object from the position (for example, its center of gravity) of the work object. This is determined, for example, by what distance an object positioned from the work object affects the work when the work is performed on the work object.

なお、このような点を考慮すると、ステップS35,S36では、作業対象物の位置からの対応点の距離がd1以上d2以下(ただし、d1<d2)であるか否かを擬似的に判定している、と見なすことができる。 Considering these points, in steps S35 and S36, it is determined whether or not the distance of the corresponding point from the position of the work object is d1 or more and d2 or less (however, d1<d2). can be assumed to be

[ステップS39]中間背景物データ生成部324は、ステップS37でRAM312に保存された各対応点の三次元座標、すなわち中間背景物の点群データに基づいて、中間背景物のポリゴンを生成する。 [Step S39] The intermediate background object data generation unit 324 generates intermediate background object polygons based on the three-dimensional coordinates of the corresponding points stored in the RAM 312 in step S37, that is, the point cloud data of the intermediate background object.

[ステップS40]中間背景物データ生成部324は、画像データ記憶部340に記憶された全天球画像を用いて、生成された各ポリゴンに貼り付けるテクスチャ画像を決定する。この決定処理は、各ポリゴンについて図10のステップS21~S25の処理を実行することで実行可能である。中間背景物データ生成部324は、各ポリゴンを示すデータにテクスチャ画像のデータを付加したテクスチャ画像付きポリゴンデータを、中間背景物データ332として三次元データ記憶部330に格納する。 [Step S40] The intermediate background object data generation unit 324 uses the omnidirectional images stored in the image data storage unit 340 to determine a texture image to be pasted on each generated polygon. This determination process can be executed by executing the processes of steps S21 to S25 in FIG. 10 for each polygon. The intermediate background object data generating unit 324 stores polygon data with texture images obtained by adding texture image data to data representing each polygon as intermediate background object data 332 in the three-dimensional data storage unit 330 .

次に、図14、図15を用いて、外周データ生成部325による外周データ333の生成処理について説明する。
図14は、外周の三次元形状の例を示す図である。図14に示すように、外周データ生成部325は、仮想空間において、作業対象物の三次元モデル331c上の所定の基準点331dを中心とした所定の半径Rを有する球形の三次元モデルを生成し、その内面を外周333aとする。基準点331dは、例えば、作業対象物の三次元モデル331c(正確には、対象物データ331に基づく三次元モデル)の重心、あるいは、この三次元モデル331cと地表面とが接している領域の中心として設定される。
Next, the process of generating the outer circumference data 333 by the outer circumference data generator 325 will be described with reference to FIGS. 14 and 15. FIG.
FIG. 14 is a diagram showing an example of a three-dimensional shape of the outer circumference. As shown in FIG. 14, the outer circumference data generation unit 325 generates a spherical three-dimensional model having a predetermined radius R centered on a predetermined reference point 331d on the three-dimensional model 331c of the work object in the virtual space. and the inner surface thereof is defined as the outer periphery 333a. The reference point 331d is, for example, the center of gravity of the three-dimensional model 331c of the work object (more precisely, the three-dimensional model based on the object data 331), or the area where the three-dimensional model 331c and the ground surface are in contact. Set as center.

半径Rは、外周333aが作業対象物の三次元モデル331cの外縁部から所定の距離(例えば、50m)だけ離れるように設定される。また、半径Rは、基準点331dを中心として上記の中間背景物が抽出される距離の上限値(すなわち、図13で説明した距離d2)より所定値だけ大きくなるように設定される。 The radius R is set so that the outer circumference 333a is separated from the outer edge of the three-dimensional model 331c of the work object by a predetermined distance (for example, 50 m). Also, the radius R is set to be larger than the upper limit of the distance at which the intermediate background object is extracted from the reference point 331d by a predetermined value (that is, the distance d2 described with reference to FIG. 13).

外周データ生成部325は、外周333aの三次元モデルに基づくポリゴンを生成し、画像データ記憶部340に記憶された全天球画像を用いて、各ポリゴンに貼り付けるテクスチャ画像を生成する。外周データ生成部325は、このようにして生成された外周についてのテクスチャ画像付きポリゴンデータを、外周データ333として三次元データ記憶部330に格納する。 The perimeter data generation unit 325 generates polygons based on the three-dimensional model of the perimeter 333a, and uses the omnidirectional image stored in the image data storage unit 340 to generate a texture image to be attached to each polygon. The perimeter data generator 325 stores the generated polygon data with a texture image for the perimeter as perimeter data 333 in the three-dimensional data storage unit 330 .

図15は、外周データの生成処理手順を示すフローチャートの例である。
[ステップS51]外周データ生成部325は、仮想空間において、作業対象物の三次元モデル上の基準点を中心とした所定の半径を有する球形の三次元モデルを生成する。外周データ生成部325は、生成された三次元モデルの点群データに基づき、球形の内面のポリゴン(すなわち、外周のポリゴン)を生成する。
FIG. 15 is an example of a flow chart showing a procedure for generating outer circumference data.
[Step S51] The perimeter data generator 325 generates a spherical three-dimensional model having a predetermined radius centered on a reference point on the three-dimensional model of the work object in virtual space. The perimeter data generator 325 generates spherical inner surface polygons (that is, outer perimeter polygons) based on the generated point cloud data of the three-dimensional model.

[ステップS52]外周データ生成部325は、図13のステップS31と同様の手順で、画像データ記憶部340に記憶されている各全天球画像の方向を揃える。この処理では、各全天球画像を写したカメラの撮像位置(カメラ位置)と撮像方向(方位)が同じになるように、各全天球画像が変換される。 [Step S52] The perimeter data generation unit 325 aligns the directions of the omnidirectional images stored in the image data storage unit 340 in the same procedure as in step S31 of FIG. In this process, each omnidirectional image is transformed so that the imaging position (camera position) and the imaging direction (azimuth) of the camera that captured each omnidirectional image are the same.

[ステップS53]外周データ生成部325は、方向が揃えられた全天球画像を用いて、外周の各ポリゴンに貼り付けるテクスチャ画像を決定する。
この処理では、外周データ生成部325は、ステップS52で方向が揃えられる際に基準となった全天球画像(方向が変更されなかった全天球画像)のカメラ位置とカメラ方向を特定する。このカメラ方向は、方向が揃えられた後の全天球画像のそれぞれのカメラ方向を表している。外周データ生成部325は、特定されたカメラ位置とカメラ方向に基づいて、全天球画像における各ポリゴンに対応する画像領域を、全天球画像ごとに特定する。外周データ生成部325は、ポリゴンごとに、各全天球画像から特定された画像領域のデータの論理和(OR)を計算し、その結果として算出された画像をポリゴンに対応するテクスチャ画像に決定する。
[Step S53] The perimeter data generation unit 325 determines a texture image to be pasted on each polygon on the perimeter using the omnidirectional images aligned in direction.
In this process, the outer circumference data generation unit 325 identifies the camera position and camera direction of the omnidirectional image (the omnidirectional image whose direction was not changed) that was used as a reference when the directions were aligned in step S52. The camera directions represent respective camera directions of the omnidirectional images after direction alignment. The perimeter data generator 325 identifies an image region corresponding to each polygon in the omnidirectional image for each omnidirectional image based on the identified camera position and camera direction. The perimeter data generation unit 325 calculates the logical sum (OR) of the data of the image area specified from each omnidirectional image for each polygon, and determines the resulting image as the texture image corresponding to the polygon. do.

図9のステップS16および図13のステップS40の処理により、全天球画像からは作業対象物および中間背景物に対応する画像部分が削除されている。そのため、ステップS53では、全天球画像から作業対象物および中間背景物が写っている部分を抽出して削除することなく、これら以外の被写体が写っている画像だけを用いてテクスチャ画像を容易に決定できる。 9 and step S40 in FIG. 13, the image portions corresponding to the work object and the intermediate background object are deleted from the omnidirectional image. Therefore, in step S53, the texture image can be easily generated by using only the image in which the object other than these objects appears, without extracting and deleting the portion in which the work object and the intermediate background object appear from the omnidirectional image. can decide.

外周データ生成部325は、このようにして生成された外周についてのテクスチャ画像付きポリゴンデータを、外周データ333として三次元データ記憶部330に格納する。
ここで、以上の処理によって生成された対象物データ331、中間背景物データ332および外周データ333を用いて描画した仮想空間の画像の例を、図16に示す。
The perimeter data generator 325 stores the generated polygon data with a texture image for the perimeter as perimeter data 333 in the three-dimensional data storage unit 330 .
FIG. 16 shows an example of a virtual space image drawn using the object data 331, the intermediate background object data 332, and the perimeter data 333 generated by the above processing.

図16は、仮想空間を描画した画像の例を示す図である。図16に示すように、仮想空間において、対象物データ331に基づいて、作業対象物である物体131を示す三次元モデル131aが描画される。また、中間背景物データ332に基づいて、中間背景物である物体132,133をそれぞれ示す三次元モデル132a,133aが描画される。三次元モデル131a,132a,133aは、テクスチャ画像付きの状態で表示される。一方、作業対象物から遠方にある物体134~136をそれぞれ示す像134a~136aは、外周333b(すなわち、球体の内面)に画像として貼り付けた状態で描画される。 FIG. 16 is a diagram showing an example of an image in which the virtual space is rendered. As shown in FIG. 16, a three-dimensional model 131a representing an object 131, which is a work object, is rendered in virtual space based on object data 331. FIG. Based on the intermediate background object data 332, three-dimensional models 132a and 133a are drawn that respectively represent objects 132 and 133, which are intermediate background objects. The three-dimensional models 131a, 132a, and 133a are displayed with texture images. On the other hand, images 134a to 136a respectively representing objects 134 to 136 far from the work object are drawn in a state of being attached as an image to the outer circumference 333b (that is, the inner surface of the sphere).

三次元モデル131a,132a,133aは、それぞれ三次元データに基づいて描画されるので、視点の位置と方向、すなわち閲覧者の位置と方向に応じた位置と角度で表示される。したがって、閲覧者は、三次元モデル131aと三次元モデル132a,133aとの位置関係、すなわち、仮想空間での作業対象物と中間背景物との位置関係を、比較的正確に把握できる。また、外周333bに描画される物体も、視点の位置と方向に応じた位置と角度で表示される。しかし、作業対象物と中間背景物との位置関係と比較して、作業対象物と外周333bにおける物体の像との位置関係の精度は低い。したがって、外周333bの描画は、作業対象物から遠方における状況を、距離の算出などを伴わない軽負荷の処理によって簡易的に描画して、作業現場の雰囲気を再現することを目的として行われる。 Since the three-dimensional models 131a, 132a, and 133a are drawn based on three-dimensional data, they are displayed at positions and angles corresponding to the position and direction of the viewpoint, that is, the position and direction of the viewer. Therefore, the viewer can relatively accurately grasp the positional relationship between the three-dimensional model 131a and the three-dimensional models 132a and 133a, that is, the positional relationship between the work object and the intermediate background object in the virtual space. An object drawn on the outer circumference 333b is also displayed at a position and angle corresponding to the position and direction of the viewpoint. However, compared to the positional relationship between the work target and the intermediate background object, the accuracy of the positional relationship between the work target and the image of the object on the outer circumference 333b is low. Therefore, the drawing of the outer circumference 333b is performed for the purpose of reproducing the atmosphere of the work site by simply drawing the situation far from the work object by light-load processing that does not involve calculation of the distance.

ここで、本実施の形態に係る情報処理システムを現場作業の訓練や教育に利用する場合、直接的な作業対象となる作業対象物だけでなく、その周囲に存在する物体の位置や形状を把握できる方が好ましい場合がある。例えば、クレーンを操作して荷物(作業対象物)を昇降させる作業を行う場合に、クレーンの稼働範囲内に存在する荷物以外の物体との接触を防ぐためには、荷物の位置や形状を認識できるだけでは不十分である。この作業では、荷物の昇降場所の周囲の状況をできるだけ詳しく、立体的に認識できることが好ましい。 Here, when the information processing system according to the present embodiment is used for on-site work training and education, it is possible to grasp the positions and shapes of not only the work target that is the direct work target, but also the objects that exist around it. Sometimes it is preferable to be able to For example, when operating a crane to raise and lower a load (work target), in order to prevent contact with objects other than the load within the crane's operating range, it is necessary to recognize the position and shape of the load as much as possible. is not sufficient. In this work, it is preferable to be able to three-dimensionally recognize the situation around the loading/unloading place in as much detail as possible.

このような目的を達成する方法としては、三次元スキャナ110などの空間認識センサ101として、一定以上の精度で三次元形状を計測可能な距離の上限値が大きいものを使用する方法が考えられる。しかし、この方法では、計測用の高性能で高価なデバイスが必要となり、コストが増大してしまう。一方、周囲の状況をすべて外周333bに描画する方法では、閲覧者が移動したときに作業対象物とその周囲の物体との位置関係の再現性が低く、現場作業の訓練や教育における有用性が低下してしまう。 As a method for achieving such an object, it is conceivable to use a space recognition sensor 101 such as the 3D scanner 110 that has a large upper limit of the distance at which the 3D shape can be measured with a certain degree of accuracy or higher. However, this method requires high-performance and expensive devices for measurement, increasing costs. On the other hand, in the method of drawing all the surrounding conditions on the outer circumference 333b, the reproducibility of the positional relationship between the work object and the surrounding objects is low when the viewer moves, and the usefulness in field work training and education is low. will decline.

このような問題に対して、サーバ300の上記処理によれば、全天球カメラ120などのカメラ102を用いて撮像された画像を用いて、作業対象物の周囲に存在する中間背景物の三次元形状が計測される。これにより、空間認識センサ101として、最低限、作業対象物を含む範囲のみ三次元形状を計測可能な比較的低コストのデバイスを用いて、作業対象物の周囲の状況を立体的に認識できる。中間背景物の計測精度は、専用の空間認識センサ101を用いて計測された作業対象物の計測精度より低くなる可能性がある。しかし、中間背景物は、仮想空間において作業者に対応する閲覧者のすぐ近くに存在する物体ではないので、作業対象物ほど三次元形状や位置が正確に再現されなくてもよい。すなわち、サーバ300の処理により、閲覧者は、作業の訓練や教育のための有用性が十分得られる範囲で、作業対象物とその周囲の物体との位置関係を、立体的に認識できるようになる。 To solve such a problem, according to the above-described processing of the server 300, an image captured by the camera 102 such as the omnidirectional camera 120 is used to obtain a three-dimensional image of an intermediate background existing around the work target. The original shape is measured. As a result, as the space recognition sensor 101, a relatively low-cost device capable of measuring the three-dimensional shape of at least a range including the work object can be used to three-dimensionally recognize the situation around the work object. The measurement accuracy of the intermediate background object may be lower than the measurement accuracy of the work object measured using the dedicated space recognition sensor 101 . However, since the intermediate background object is not an object that exists in the immediate vicinity of the viewer corresponding to the worker in the virtual space, the three-dimensional shape and position may not be reproduced as accurately as the work object. That is, the processing of the server 300 allows the viewer to stereoscopically recognize the positional relationship between the work object and its surrounding objects within a range in which usefulness for work training and education can be sufficiently obtained. Become.

一方、作業対象物から中間背景物よりさらに遠くの物体については、外周333bにおいて簡易的に描画される。これにより、三次元データの算出や三次元モデルの描画の際の処理負荷を軽減しつつ、作業現場から遠くの状況を閲覧者に認識させ、仮想空間の画像のリアリティを高めることができる。 On the other hand, an object farther from the work object than the intermediate background object is simply drawn on the outer circumference 333b. As a result, while reducing the processing load when calculating 3D data and drawing a 3D model, it is possible to make the viewer aware of the situation far from the work site, and increase the reality of the image in the virtual space.

なお、対象物データ331を用いて描画される物体としては、作業の対象となる物体だけでなく、作業に使用される機材が含まれてもよい。例えば、クレーンを用いた作業の場合、クレーンの操作パネルや操作レバー、これらが設置された操作室などの三次元形状が、対象物データ331としてデータ化され、この対象物データ331を用いて描画されてもよい。 Objects drawn using the target object data 331 may include not only objects to be worked on but also equipment used for the work. For example, in the case of work using a crane, the three-dimensional shape of the crane's operation panel, operation lever, operation room in which these are installed, etc. is converted into data as object data 331, and drawing is performed using this object data 331. may be

次に、図17、図18を用いて、中間背景物位置補正部326による中間背景物の位置補正処理について説明する。
図17は、中間背景物の位置補正処理で用いられる変換グラフの例を示す図である。外周の半径を、作業対象物の位置から中間背景物が検出される上限の距離より短く設定することができる。その場合、中間背景物位置補正部326は、仮想空間における作業対象物から中間背景物の各特徴点までの距離を、外周の半径以内に変換する。
Next, intermediate background object position correction processing by the intermediate background object position corrector 326 will be described with reference to FIGS. 17 and 18. FIG.
FIG. 17 is a diagram showing an example of a conversion graph used in the intermediate background object position correction process. The radius of the outer circumference can be set shorter than the upper limit distance at which intermediate background objects can be detected from the position of the work object. In that case, the intermediate background object position correction unit 326 converts the distance from the work target in the virtual space to each feature point of the intermediate background object within the radius of the outer circumference.

図17は、このような変換で用いられる変換グラフの一例である。図17のグラフによれば、作業対象物の基準点(図14の基準点331dに相当する位置)から中間背景物の各特徴点までの現実空間における0m~1000mの距離が、仮想空間における0m~50mの距離に変換される。このとき、現実空間における距離を仮想空間の距離にリニアに変換するのでなく、図17の例のように現実空間の距離が長いほど変換の倍率を低くすることで、仮想空間において中間背景物を自然に見せることができる。 FIG. 17 is an example of a conversion graph used in such conversion. According to the graph of FIG. 17, the distance from 0 m to 1000 m in the real space from the reference point of the work object (the position corresponding to the reference point 331d in FIG. 14) to each feature point of the intermediate background is 0 m in the virtual space. Converts to a distance of ~50m. At this time, instead of linearly converting the distance in the real space to the distance in the virtual space, the longer the distance in the real space, the lower the conversion magnification, as in the example of FIG. You can make it look natural.

図18は、中間背景物の位置補正の処理手順を示すフローチャートの例である。
[ステップS61]中間背景物位置補正部326は、中間背景物が複数検出されている場合、それらの中から中間背景物を1つ選択する。
FIG. 18 is an example of a flowchart showing a processing procedure for correcting the position of an intermediate background object.
[Step S61] When a plurality of intermediate background objects are detected, the intermediate background object position correction unit 326 selects one intermediate background object from among them.

[ステップS62]中間背景物位置補正部326は、中間背景物データ332に基づき、選択された中間背景物におけるポリゴンの頂点(特徴点)を1つ選択する。
[ステップS63]中間背景物位置補正部326は、選択された頂点と、作業対象物の基準点との距離を算出する。基準点としては、図14に示した基準点331dを用いることができる。
[Step S62] Based on the intermediate background object data 332, the intermediate background object position correction unit 326 selects one polygon vertex (feature point) of the selected intermediate background object.
[Step S63] The intermediate background object position correction unit 326 calculates the distance between the selected vertex and the reference point of the work object. As the reference point, the reference point 331d shown in FIG. 14 can be used.

[ステップS64]中間背景物位置補正部326は、図17に示したグラフにしたがい、算出された距離を変換する。中間背景物位置補正部326は、変換後の距離に応じて、選択された頂点の仮想空間における座標を変換する。すなわち、この変換では、選択された頂点と作業対象物の基準点との距離が、変換後の距離になるように、選択された頂点の座標を変換する。 [Step S64] The intermediate background object position corrector 326 converts the calculated distance according to the graph shown in FIG. The intermediate background object position correction unit 326 transforms the coordinates of the selected vertex in the virtual space according to the distance after transformation. That is, in this transformation, the coordinates of the selected vertex are transformed so that the distance between the selected vertex and the reference point of the work object is the distance after transformation.

[ステップS65]中間背景物位置補正部326は、選択された中間背景物におけるポリゴンの頂点の中に、ステップS62で未選択の頂点があるかを判定する。中間背景物位置補正部326は、未選択の頂点がある場合、処理をステップS62に進め、未選択の頂点を1つ選択する。一方、中間背景物位置補正部326は、すべての頂点を選択済みの場合、ステップS66の処理を実行する。 [Step S65] The intermediate background object position correction unit 326 determines whether there is a vertex that has not been selected in step S62 among the polygon vertices of the selected intermediate background object. If there is an unselected vertex, the intermediate background object position correction unit 326 advances the process to step S62 and selects one unselected vertex. On the other hand, if all the vertices have been selected, the intermediate background object position correction unit 326 executes the process of step S66.

[ステップS66]中間背景物位置補正部326は、ステップS61で未選択の中間背景物があるかを判定する。中間背景物位置補正部326は、未選択の中間背景物がある場合、処理をステップS61に進め、未選択の中間背景物を1つ選択する。一方、中間背景物位置補正部326は、すべての中間背景物を選択済みの場合、処理を終了する。 [Step S66] The intermediate background object position correction unit 326 determines whether there is an intermediate background object that has not been selected in step S61. If there is an unselected intermediate background object, the intermediate background object position correction unit 326 advances the process to step S61 and selects one unselected intermediate background object. On the other hand, if all the intermediate background objects have been selected, the intermediate background object position correction unit 326 ends the process.

次に、図19~図22を用いて、補完処理部327による三次元形状の補完処理について説明する。
図19は、仮想空間における三次元形状の補完領域について説明するための図である。図19Aは、仮想空間の平面図を示し、図19Bは、仮想空間の側面図を示す。
Next, the three-dimensional shape complementing process by the complementing processor 327 will be described with reference to FIGS. 19 to 22. FIG.
FIG. 19 is a diagram for explaining a three-dimensional complementary region in virtual space. FIG. 19A shows a plan view of the virtual space, and FIG. 19B shows a side view of the virtual space.

ここまでの処理で、対象物データ331、中間背景物データ332および外周データ333が生成されている。これにより、仮想空間において作業対象物、中間背景物および外周を描画できる状態となっている。図19の例では、作業対象物の三次元モデル131a、中間背景物の三次元モデル132a,133a、外周333bが描画されている。 Object data 331, intermediate background object data 332, and perimeter data 333 have been generated by the processing up to this point. As a result, the work object, the intermediate background object, and the periphery can be drawn in the virtual space. In the example of FIG. 19, a three-dimensional model 131a of the work object, three-dimensional models 132a and 133a of intermediate background objects, and an outer circumference 333b are drawn.

しかし、このままでは、作業対象物と中間背景物との間や、中間背景物と外周との間に、三次元モデルが生成されていないために何も描画されない領域(データ不足領域)が発生し得る。図19の例では、データ不足領域334aを網掛けで示しており、このデータ不足領域334aで何も描画されない。そこで、補完処理部327は、現状で生成済みの対象物データ331、中間背景物データ332および外周データ333を用いて、上記のようなデータ不足領域334aの三次元モデルを簡易的に生成する。 However, if this is left as it is, there will be areas where nothing is drawn (data-deficient areas) between the work object and the intermediate background, or between the intermediate background and the outer periphery, because the 3D model has not been generated. obtain. In the example of FIG. 19, the data-deficient area 334a is shaded, and nothing is drawn in this data-deficient area 334a. Therefore, the complementary processing unit 327 simply generates the three-dimensional model of the data-deficient area 334a as described above using the object data 331, the intermediate background object data 332, and the perimeter data 333 that have already been generated.

図20は、三次元形状の補完処理についての第1の例を示す図である。図20は、仮想空間の側面図の例を示している。作業対象物の三次元モデル131aと中間背景物の三次元モデル132aとの間にデータ不足領域334bが存在し、中間背景物の三次元モデル132aと外周333bとの間にデータ不足領域334cが存在している。 FIG. 20 is a diagram showing a first example of a three-dimensional shape complementing process. FIG. 20 shows an example of a side view of virtual space. A data-deficient region 334b exists between the three-dimensional model 131a of the work object and the three-dimensional model 132a of the intermediate background object, and a data-deficient region 334c exists between the three-dimensional model 132a of the intermediate background object and the outer circumference 333b. are doing.

補完処理部327は、作業対象物の三次元モデル131aにおける外側(三次元モデル131aの基準点に対する外側)の端部131bを通る垂線L1を引き、その端部131bから垂線L1に対して45°外側に傾けた直線L2を引く。また、補完処理部327は、中間背景物の三次元モデル132aにおける内側の端部132cを通る垂線L3を引き、その端部132cから垂線L3に対して45°内側に傾けた直線L4を引く。 The complementary processing unit 327 draws a perpendicular line L1 passing through the outer (outer to the reference point of the three-dimensional model 131a) end 131b in the three-dimensional model 131a of the work object, and draws a 45° angle from the end 131b to the perpendicular L1. A straight line L2 inclined outward is drawn. The complementary processing unit 327 also draws a perpendicular line L3 passing through the inner end 132c of the three-dimensional model 132a of the intermediate background object, and draws a straight line L4 from the end 132c inclined inward at 45° with respect to the perpendicular L3.

そして、補完処理部327は、直線L2と直線L4で挟まれた領域においてこれらの交点P1の側に湾曲するように端部131bと端部132cとをなだらかに結ぶ曲線L5を生成する。補完処理部327は、曲線L5を通る曲面を示す三次元モデルを生成する。これにより、データ不足領域334bの三次元形状が補完される。 Then, the complementary processing unit 327 generates a curve L5 gently connecting the end portions 131b and 132c so as to curve toward the intersection point P1 in the region sandwiched between the straight lines L2 and L4. Complementary processing unit 327 generates a three-dimensional model representing a curved surface passing through curve L5. As a result, the three-dimensional shape of the data-deficient region 334b is complemented.

また、データ不足領域334cについても同様の補完処理が行われる。補完処理部327は、中間背景物の三次元モデル132aにおける外側の端部132dを通る垂線L6を引き、その端部132dから垂線L6に対して45°外側に傾けた直線L7を引く。また、補完処理部327は、外周333bにおける最も外側の端部333c(基準点を通る平面と外周との交点)を通る垂線L8を引き、その端部333cから垂線L8に対して45°内側に傾けた直線L9を引く。 A similar complementing process is also performed on the data-deficient area 334c. The complementary processing unit 327 draws a perpendicular line L6 passing through the outer edge 132d of the three-dimensional model 132a of the intermediate background object, and draws a straight line L7 from the edge 132d inclined outward by 45° with respect to the perpendicular L6. In addition, the complementary processing unit 327 draws a perpendicular line L8 passing through the outermost end 333c (the intersection of the plane passing through the reference point and the outer circumference) of the outer circumference 333b, and draws a line 45° inward from the perpendicular L8 from the end 333c. Draw an inclined straight line L9.

そして、補完処理部327は、直線L7と直線L9で挟まれた領域においてこれらの交点P2の側に湾曲するように端部132dと端部333cとをなだらかに結ぶ曲線L10を生成する。補完処理部327は、曲線L10を通る曲面を示す三次元モデルを生成する。これにより、データ不足領域334cの三次元形状が補完される。 Then, the complementary processing unit 327 generates a curve L10 gently connecting the ends 132d and 333c so as to curve toward the intersection point P2 in the region between the straight lines L7 and L9. Complementary processing unit 327 generates a three-dimensional model representing a curved surface passing through curve L10. Thereby, the three-dimensional shape of the data-deficient area 334c is complemented.

補完処理部327はさらに、曲線L5,L10をそれぞれ通る曲面の三次元モデルに対して貼り付けるテクスチャ画像を生成する。テクスチャ画像は、例えば、曲線の両端部の色を用い、一端から他端まで前者の色から後者の色に徐々に変化していくようなグラデーション画像として生成される。例えば、曲線L5を通る曲面の三次元モデルには、端部131bから端部132cに対し、端部131bの色から端部132cの色に徐々に変化していくようなグラデーション画像が貼り付けられる。また、曲線L10を通る曲面の三次元モデルには、端部132dから端部333cに対し、端部132dの色から端部333cの色に徐々に変化していくようなグラデーション画像が貼り付けられる。 The interpolation processing unit 327 further generates a texture image to be pasted on the three-dimensional model of the curved surface passing through the curves L5 and L10. The texture image is generated, for example, as a gradation image that uses the colors at both ends of the curve and gradually changes from the former color to the latter color from one end to the other end. For example, a gradation image that gradually changes from the color of the end portion 131b to the color of the end portion 132c from the end portion 131b to the end portion 132c is pasted on the three-dimensional model of the curved surface passing through the curve L5. . In addition, a gradation image that gradually changes from the color of the end portion 132d to the color of the end portion 333c from the end portion 132d to the end portion 333c is pasted on the three-dimensional model of the curved surface passing through the curve L10. .

以上の処理によって生成されたデータ不足領域の三次元モデルを示すテクスチャ画像付きポリゴンデータが、補完データ334として三次元データ記憶部330に格納される。
図21は、三次元形状の補完処理についての第2の例を示す図である。図21は、仮想空間の側面図の例を示している。図20と同様に、作業対象物の三次元モデル131aと中間背景物の三次元モデル132aとの間にデータ不足領域334bが存在し、中間背景物の三次元モデル132aと外周333bとの間にデータ不足領域334cが存在している。
Polygon data with a texture image representing the three-dimensional model of the data-deficient region generated by the above processing is stored in the three-dimensional data storage unit 330 as complementary data 334 .
FIG. 21 is a diagram showing a second example of the three-dimensional shape complementing process. FIG. 21 shows an example of a side view of virtual space. As in FIG. 20, a data-deficient area 334b exists between the three-dimensional model 131a of the work object and the three-dimensional model 132a of the intermediate background, and between the three-dimensional model 132a of the intermediate background and the perimeter 333b. A data-deficient area 334c exists.

作業現場を含む領域について、緯度・経度データ、標高データおよび航空写真を含む地図データが存在する場合がある。この場合には、地図データを用いてデータ不足領域の三次元形状を補完し、補完された領域のテクスチャ画像を生成できる。 Map data, including latitude/longitude data, elevation data and aerial photographs, may exist for areas that include work sites. In this case, map data can be used to interpolate the three-dimensional shape of the data-deficient area, and the texture image of the interpolated area can be generated.

補完処理部327は、データ不足領域334bに対応する緯度・経度データと標高データを用いて、データ不足領域334bのポリゴンを生成する。これにより、データ不足領域334cの三次元形状が補完される。このとき、補完処理部327は、図18に示した変換グラフを用いた方法により、作業対象物の基準点から地図上の各部の位置への距離を補正する。図21に示す曲線L11は、このようにして生成されたポリゴンの断面を示す。また、補完処理部327は、航空写真におけるポリゴンに対応する部分の画像を、生成されたポリゴンに貼り付けるテクスチャ画像に決定する。 The complement processing unit 327 uses the latitude/longitude data and altitude data corresponding to the data-missing area 334b to generate a polygon of the data-missing area 334b. Thereby, the three-dimensional shape of the data-deficient area 334c is complemented. At this time, the complement processing unit 327 corrects the distance from the reference point of the work object to each position on the map by the method using the conversion graph shown in FIG. A curve L11 shown in FIG. 21 indicates the cross section of the polygon generated in this way. Further, the complement processing unit 327 determines the image of the portion corresponding to the polygon in the aerial photograph as the texture image to be pasted on the generated polygon.

データ不足領域334cについても、上記と同様の手順によって、ポリゴンと対応するテクスチャ画像とが生成される。図21に示す曲線L12は、生成されたポリゴンの断面を示す。補完処理部327は、このようにして生成されたデータ不足領域の三次元モデルを示すテクスチャ画像付きポリゴンデータを、補完データ334として三次元データ記憶部330に格納する。 For the data-deficient region 334c, polygons and corresponding texture images are generated by the same procedure as above. A curve L12 shown in FIG. 21 indicates the cross section of the generated polygon. The complement processing unit 327 stores the polygon data with a texture image representing the three-dimensional model of the data-deficient area thus generated in the three-dimensional data storage unit 330 as complement data 334 .

図22は、三次元形状の補完処理の手順を示すフローチャートの例である。
[ステップS71]補完処理部327は、作業現場を含む領域についての地図データがあるかを判定する。補完処理部327は、地図データがない場合、ステップS72の処理を実行し、地図データがある場合、ステップS73の処理を実行する。
FIG. 22 is an example of a flowchart showing the procedure of the three-dimensional shape complementing process.
[Step S71] The complement processing unit 327 determines whether there is map data for an area including the work site. The complement processing unit 327 executes the process of step S72 when there is no map data, and executes the process of step S73 when there is map data.

[ステップS72]補完処理部327は、既存のテクスチャ画像付きポリゴンデータ、すなわち、対象物データ331、中間背景物データ332および外周データ333を用いて、データ不足領域の三次元形状を補完する。また、補完処理部327は、グラデーション処理によって、補完された三次元形状のポリゴンに対応するテクスチャ画像を生成する。補完処理部327は、生成されたデータ不足領域の三次元モデルを示すテクスチャ画像付きポリゴンデータを、補完データ334として三次元データ記憶部330に格納する。 [Step S72] The complementing processing unit 327 complements the three-dimensional shape of the data-deficient region using the existing polygon data with texture images, that is, the target object data 331, the intermediate background object data 332, and the perimeter data 333. In addition, the complement processing unit 327 generates a texture image corresponding to the complemented three-dimensional polygon by gradation processing. The complementary processing unit 327 stores the generated polygon data with a texture image representing the three-dimensional model of the data-deficient area in the three-dimensional data storage unit 330 as complementary data 334 .

[ステップS73]補完処理部327は、地図データに含まれる緯度・経度データと標高データを用いて、データ不足領域の三次元形状を補完する。また、補完処理部327は、地図データに含まれる航空写真を用いて、補完された三次元形状のポリゴンに対応するテクスチャ画像を生成する。補完処理部327は、生成されたデータ不足領域の三次元モデルを示すテクスチャ画像付きポリゴンデータを、補完データ334として三次元データ記憶部330に格納する。 [Step S73] The complementing processing unit 327 complements the three-dimensional shape of the data-deficient area using the latitude/longitude data and altitude data included in the map data. Further, the complement processing unit 327 generates a texture image corresponding to the complemented three-dimensional polygon using the aerial photograph included in the map data. The complementary processing unit 327 stores the generated polygon data with a texture image representing the three-dimensional model of the data-deficient area in the three-dimensional data storage unit 330 as complementary data 334 .

以上説明したサーバ300の処理によって生成された対象物データ331、中間背景物データ332、外周データ333および補完データ334を用いることで、オフィス200における閲覧者が視認する空間全体の環境が、仮想空間上に再現される。対象物データ331と中間背景物データ332によって、作業対象物と中間背景物が立体的に描画され、かつ、それらの位置関係が正確に描画される。また、外周データ333を用いて、遠景の状況が簡易な処理によって描画され、画像のリアリティが高められる。さらに、補完データ334によって、作業対象物、中間背景物、外周以外の領域の画像が簡易的に描画され、何も描画されない不自然な領域をなくすことができる。 By using the target object data 331, the intermediate background object data 332, the perimeter data 333, and the complementary data 334 generated by the processing of the server 300 described above, the environment of the entire space visually recognized by the viewer in the office 200 can be transformed into a virtual space. reproduced above. Based on the object data 331 and the intermediate background object data 332, the work object and the intermediate background object are drawn three-dimensionally, and their positional relationship is accurately drawn. In addition, using the outer circumference data 333, the situation of the distant view is drawn by simple processing, and the reality of the image is enhanced. Furthermore, by the supplementary data 334, images of areas other than the work object, the intermediate background object, and the outer periphery can be simply drawn, and the unnatural area where nothing is drawn can be eliminated.

したがって、このような仮想空間の描画を現場作業の訓練や教育に利用する場合、空間全体が描画されることで、閲覧者の違和感を軽減できる。また、閲覧者にとって重要な物体のみが立体形状で描画され、それ以外の物体や風景が簡易的に描画される。これにより、描画のための処理負荷が増大することを防止しつつ、閲覧者に対して現場作業の訓練や教育に有用な画像を閲覧させることができる。 Therefore, when drawing such a virtual space is used for on-site work training or education, the viewer's discomfort can be reduced by drawing the entire space. Also, only objects that are important to the viewer are drawn in a three-dimensional shape, and other objects and scenery are simply drawn. As a result, it is possible to prevent the processing load for drawing from increasing and allow the viewer to view images that are useful for on-site work training and education.

なお、上記の各実施の形態に示した装置(例えば、データ生成装置1、サーバ300)の処理機能は、コンピュータによって実現することができる。その場合、各装置が有すべき機能の処理内容を記述したプログラムが提供され、そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記憶装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記憶装置には、ハードディスク装置(HDD)、磁気テープなどがある。光ディスクには、CD(Compact Disc)、DVD(Digital Versatile Disc)、ブルーレイディスク(Blu-ray Disc:BD、登録商標)などがある。光磁気記録媒体には、MO(Magneto-Optical disk)などがある。 Note that the processing functions of the devices (for example, the data generation device 1 and the server 300) described in the above embodiments can be realized by a computer. In that case, a program describing the processing contents of the functions that each device should have is provided, and the above processing functions are realized on the computer by executing the program on the computer. A program describing the processing content can be recorded in a computer-readable recording medium. Computer-readable recording media include magnetic storage devices, optical disks, magneto-optical recording media, and semiconductor memories. Magnetic storage devices include hard disk drives (HDD) and magnetic tapes. Optical discs include CDs (Compact Discs), DVDs (Digital Versatile Discs), Blu-ray Discs (BD, registered trademark), and the like. Magneto-optical recording media include MO (Magneto-Optical disk).

プログラムを流通させる場合には、例えば、そのプログラムが記録されたDVD、CDなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。 When distributing a program, for example, portable recording media such as DVDs and CDs on which the program is recorded are sold. It is also possible to store the program in the storage device of the server computer and transfer the program from the server computer to another computer via the network.

プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムまたはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムにしたがった処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムにしたがった処理を実行することもできる。また、コンピュータは、ネットワークを介して接続されたサーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムにしたがった処理を実行することもできる。 A computer that executes a program stores, for example, a program recorded on a portable recording medium or a program transferred from a server computer in its own storage device. The computer then reads the program from its own storage device and executes processing according to the program. The computer can also read the program directly from the portable recording medium and execute processing according to the program. Also, the computer can execute processing according to the received program every time the program is transferred from a server computer connected via a network.

1 データ生成装置
1a 記憶部
1b 処理部
2a,2b 撮像画像
3a 第1の被写体
3b 第2の被写体
4a 第1の三次元データ
4b 第2の三次元データ
5 カメラ
S1,S2 ステップ
1 data generation device 1a storage unit 1b processing unit 2a, 2b captured image 3a first subject 3b second subject 4a first three-dimensional data 4b second three-dimensional data 5 camera S1, S2 Step

Claims (10)

コンピュータが、
複数の位置からカメラによって撮像された複数の撮像画像と、前記複数の位置から前記複数の撮像画像に含まれる第1の被写体までの距離を距離センサによって計測した計測結果、前記複数の位置の位置情報、および前記複数の位置からの前記カメラの方向を基に算出された、前記第1の被写体における各点の三次元位置を示す第1の三次元データとを取得し、
前記複数の撮像画像のうち2以上の撮像画像の間で、前記第1の被写体からの距離が所定の閾値以下である第2の被写体における同一の特徴点を示す対応点の位置と、前記2以上の撮像画像の撮像時におけるカメラ位置およびカメラ方向とに基づいて、前記カメラ位置から前記対応点までの距離を算出し、算出された距離と前記カメラ位置および前記カメラ方向とに基づいて、前記第2の被写体における各点の、前記第1の三次元データが示す三次元位置と同一の座標空間における三次元位置を示す第2の三次元データを生成する、
データ生成方法。
the computer
a plurality of captured images captured by a camera from a plurality of positions; measurement results of distances from the plurality of positions to a first subject included in the plurality of captured images measured by a distance sensor; and positions of the plurality of positions. Acquiring information and first three-dimensional data indicating the three-dimensional position of each point in the first subject calculated based on the directions of the camera from the plurality of positions;
a position of a corresponding point indicating the same feature point in a second subject whose distance from the first subject is equal to or less than a predetermined threshold between two or more captured images among the plurality of captured images; A distance from the camera position to the corresponding point is calculated based on the camera position and the camera direction at the time of capturing the above captured image, and based on the calculated distance, the camera position and the camera direction, the generating second three-dimensional data indicating the three-dimensional position of each point in the second object in the same coordinate space as the three-dimensional position indicated by the first three-dimensional data;
Data generation method.
前記コンピュータが、
前記複数の撮像画像のそれぞれから前記第1の被写体に対応する第1の領域を抽出し、前記第1の領域の画像を前記第1の三次元データが示す第1の三次元モデルのテクスチャ画像として用いて前記第1の三次元モデルを生成し、
前記複数の撮像画像のそれぞれから前記第1の領域の画像が削除された撮像画像のそれぞれから、前記第2の被写体に対応する第2の領域を抽出し、前記第2の領域の画像を前記第2の三次元データが示す第2の三次元モデルのテクスチャ画像として用いて前記第2の三次元モデルを生成する、
処理をさらに含む請求項1記載のデータ生成方法。
the computer
A first area corresponding to the first subject is extracted from each of the plurality of captured images, and a texture image of a first three-dimensional model in which the image of the first area is represented by the first three-dimensional data. generating the first three-dimensional model using as
extracting a second region corresponding to the second subject from each of the captured images obtained by deleting the image of the first region from each of the plurality of captured images; generating the second three-dimensional model by using it as a texture image of the second three-dimensional model indicated by the second three-dimensional data;
2. The data generation method of claim 1, further comprising processing.
前記コンピュータが、
前記座標空間において、前記第1の三次元モデル上の所定の基準点を中心とした球形を示す第3の三次元モデルを生成し、
前記複数の撮像画像のそれぞれから前記第1の領域の画像と前記第2の領域の画像とが削除された撮像画像を、テクスチャ画像として前記第3の三次元モデルの内面に貼り付ける、
請求項記載のデータ生成方法。
the computer
generating a third three-dimensional model representing a sphere centered at a predetermined reference point on the first three-dimensional model in the coordinate space;
pasting, as a texture image, the captured image obtained by deleting the image of the first region and the image of the second region from each of the plurality of captured images on the inner surface of the third three-dimensional model;
3. The data generation method according to claim 2 .
前記コンピュータが、
前記座標空間において、前記第1の三次元データが示す第1の三次元モデル上の所定の基準点を中心とした球形を示す第2の三次元モデルを生成し、
前記複数の撮像画像の一部をテクスチャ画像として前記第2の三次元モデルの内面に貼り付ける、
処理をさらに含む請求項1記載のデータ生成方法。
the computer
generating, in the coordinate space, a second three-dimensional model representing a sphere centered on a predetermined reference point on the first three-dimensional model represented by the first three-dimensional data;
Paste a part of the plurality of captured images as a texture image on the inner surface of the second three-dimensional model;
2. The data generation method of claim 1, further comprising processing.
前記コンピュータが、
前記座標空間のうち、前記第1の三次元モデルと前記第2の三次元データが示す第3の三次元モデルとの間の第1の空間の三次元モデルを、前記第1の三次元モデルの前記第1の空間側の形状と前記第3の三次元モデルの前記第1の空間側の形状とに基づいて補完し、前記第2の三次元モデルと前記第3の三次元モデルとの間の第2の空間の三次元モデルを、前記第2の三次元モデルの前記第2の空間側の形状と前記第3の三次元モデルの前記第2の空間側の形状とに基づいて補完する、
処理をさらに含む請求項記載のデータ生成方法。
the computer
A three-dimensional model of a first space between the first three-dimensional model and a third three-dimensional model indicated by the second three-dimensional data in the coordinate space is defined as the first three-dimensional model. Complement based on the shape of the first space side of the and the shape of the third three-dimensional model on the first space side, and the second three-dimensional model and the third three-dimensional model Based on the shape of the second three-dimensional model on the second space side and the shape of the third three-dimensional model on the second space side, a three-dimensional model of the second space between Complement,
5. The data generation method of claim 4 , further comprising processing.
前記コンピュータが、
前記第1の三次元データに基づいて前記第1の被写体を描画した第1の表示モデルと、前記第2の三次元データに基づいて前記第2の被写体を描画した第2の表示モデルと、前記第1の表示モデルおよび前記第2の表示モデル間の位置関係を示す位置関係情報とを含む表示データを生成する、
処理をさらに含む請求項1乃至のいずれか1項に記載のデータ生成方法。
the computer
a first display model that renders the first subject based on the first three-dimensional data; a second display model that renders the second subject based on the second three-dimensional data; generating display data including positional relationship information indicating a positional relationship between the first display model and the second display model;
6. The data generation method according to any one of claims 1 to 5 , further comprising processing.
記憶部と、
複数の位置からカメラによって撮像された複数の撮像画像と、前記複数の位置から前記複数の撮像画像に含まれる第1の被写体までの距離を距離センサによって計測した計測結果、前記複数の位置の位置情報、および前記複数の位置からの前記カメラの方向を基に算出された、前記第1の被写体における各点の三次元位置を示す第1の三次元データとを取得して、前記記憶部に格納し、前記複数の撮像画像のうち2以上の撮像画像の間で、前記第1の被写体からの距離が所定の閾値以下である第2の被写体における同一の特徴点を示す対応点の位置と、前記2以上の撮像画像の撮像時におけるカメラ位置およびカメラ方向とに基づいて、前記カメラ位置から前記対応点までの距離を算出し、算出された距離と前記カメラ位置および前記カメラ方向とに基づいて、前記第2の被写体における各点の、前記第1の三次元データが示す三次元位置と同一の座標空間における三次元位置を示す第2の三次元データを生成して、前記記憶部に格納する処理部と、
を有するデータ生成装置。
a storage unit;
a plurality of captured images captured by a camera from a plurality of positions; measurement results of distances from the plurality of positions to a first subject included in the plurality of captured images measured by a distance sensor; and positions of the plurality of positions. information and first three-dimensional data indicating the three-dimensional position of each point on the first object calculated based on the directions of the camera from the plurality of positions, and stored in the storage unit position of a corresponding point indicating the same feature point in a second subject whose distance from the first subject is equal to or less than a predetermined threshold between two or more captured images among the plurality of captured images; , calculating a distance from the camera position to the corresponding point based on the camera position and the camera direction when the two or more captured images are captured, and based on the calculated distance and the camera position and the camera direction; second three-dimensional data indicating the three-dimensional position of each point on the second subject in the same coordinate space as the three-dimensional position indicated by the first three-dimensional data, and storing the second three-dimensional data in the storage unit a processing unit that stores
A data generation device having
前記処理部は、
前記第1の三次元データに基づいて前記第1の被写体を描画した第1の表示モデルと、前記第2の三次元データに基づいて前記第2の被写体を描画した第2の表示モデルと、前記第1の表示モデルおよび前記第2の表示モデル間の位置関係を示す位置関係情報とを含む表示データを生成する、
請求項記載のデータ生成装置。
The processing unit is
a first display model that renders the first subject based on the first three-dimensional data; a second display model that renders the second subject based on the second three-dimensional data; generating display data including positional relationship information indicating a positional relationship between the first display model and the second display model;
8. The data generation device according to claim 7 .
コンピュータに、
複数の位置からカメラによって撮像された複数の撮像画像と、前記複数の位置から前記複数の撮像画像に含まれる第1の被写体までの距離を距離センサによって計測した計測結果、前記複数の位置の位置情報、および前記複数の位置からの前記カメラの方向を基に算出された、前記第1の被写体における各点の三次元位置を示す第1の三次元データとを取得し、
前記複数の撮像画像のうち2以上の撮像画像の間で、前記第1の被写体からの距離が所定の閾値以下である第2の被写体における同一の特徴点を示す対応点の位置と、前記2以上の撮像画像の撮像時におけるカメラ位置およびカメラ方向とに基づいて、前記カメラ位置から前記対応点までの距離を算出し、算出された距離と前記カメラ位置および前記カメラ方向とに基づいて、前記第2の被写体における各点の、前記第1の三次元データが示す三次元位置と同一の座標空間における三次元位置を示す第2の三次元データを生成する、
処理を実行させるデータ生成プログラム。
to the computer,
a plurality of captured images captured by a camera from a plurality of positions; measurement results of distances from the plurality of positions to a first subject included in the plurality of captured images measured by a distance sensor; and positions of the plurality of positions. Acquiring information and first three-dimensional data indicating the three-dimensional position of each point in the first subject calculated based on the directions of the camera from the plurality of positions;
a position of a corresponding point indicating the same feature point in a second subject whose distance from the first subject is equal to or less than a predetermined threshold between two or more captured images among the plurality of captured images; A distance from the camera position to the corresponding point is calculated based on the camera position and the camera direction at the time of capturing the above captured image, and based on the calculated distance, the camera position and the camera direction, the generating second three-dimensional data indicating the three-dimensional position of each point in the second object in the same coordinate space as the three-dimensional position indicated by the first three-dimensional data;
A data generation program that causes processing to occur.
前記コンピュータに、
前記第1の三次元データに基づいて前記第1の被写体を描画した第1の表示モデルと、前記第2の三次元データに基づいて前記第2の被写体を描画した第2の表示モデルと、前記第1の表示モデルおよび前記第2の表示モデル間の位置関係を示す位置関係情報とを含む表示データを生成する、
処理をさらに実行させる請求項記載のデータ生成プログラム。
to the computer;
a first display model that renders the first subject based on the first three-dimensional data; a second display model that renders the second subject based on the second three-dimensional data; generating display data including positional relationship information indicating a positional relationship between the first display model and the second display model;
10. The data generation program according to claim 9 , further causing a process to be executed.
JP2018181300A 2018-09-27 2018-09-27 Data generation method, device and program Active JP7273284B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018181300A JP7273284B2 (en) 2018-09-27 2018-09-27 Data generation method, device and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018181300A JP7273284B2 (en) 2018-09-27 2018-09-27 Data generation method, device and program

Publications (2)

Publication Number Publication Date
JP2020052719A JP2020052719A (en) 2020-04-02
JP7273284B2 true JP7273284B2 (en) 2023-05-15

Family

ID=69997245

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018181300A Active JP7273284B2 (en) 2018-09-27 2018-09-27 Data generation method, device and program

Country Status (1)

Country Link
JP (1) JP7273284B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102398580B1 (en) * 2021-06-21 2022-05-17 주식회사 호인스컴퍼니 Sensory object creation system using a mobile terminal
US11704835B2 (en) 2021-07-29 2023-07-18 Summer Robotics, Inc. Dynamic calibration of 3D acquisition systems
WO2023177692A1 (en) * 2022-03-14 2023-09-21 Summer Robotics, Inc. Stage studio for immersive 3-d video capture
US11974055B1 (en) 2022-10-17 2024-04-30 Summer Robotics, Inc. Perceiving scene features using event sensors and image sensors

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005258792A (en) 2004-03-11 2005-09-22 Olympus Corp Apparatus, method and program for generating image

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005258792A (en) 2004-03-11 2005-09-22 Olympus Corp Apparatus, method and program for generating image

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
望月 研二 Kenji Mochizuki,3次元空間共有コミュニケーション技術の研究開発 -実写画像をベースとしたマルチメディア・アンビアンスコミュニケーションの実現に向けて- Investigation of 3D Shared Space Communication-Approaching to Photo Realistic Image-based Multimedia Ambiance Communication-,電子情報通信学会技術研究報告 Vol.100 No.633 IEICE Technical Report,日本,社団法人電子情報通信学会 The Institute of Electronics,Information and Communication Engineers,2001年02月15日,第100巻,p.47-54

Also Published As

Publication number Publication date
JP2020052719A (en) 2020-04-02

Similar Documents

Publication Publication Date Title
JP7273284B2 (en) Data generation method, device and program
CN106993181B (en) More VR/AR equipment collaboration systems and Synergistic method
JP6687204B2 (en) Projection image generation method and apparatus, and mapping method between image pixels and depth values
KR102003813B1 (en) Automated 3D Model Generation
JP5592011B2 (en) Multi-scale 3D orientation
CN104904200B (en) Catch the unit and system of moving scene
US10674135B2 (en) Handheld portable optical scanner and method of using
CN101911128B (en) Method and system for serving three dimension web map service using augmented reality
JP5799521B2 (en) Information processing apparatus, authoring method, and program
KR100953931B1 (en) System for constructing mixed reality and Method thereof
CN113396442A (en) System and method for rendering digital assets in an artificial environment through a loosely coupled relocation service and asset management service
JP7058277B2 (en) Reconstruction method and reconfiguration device
TW201709718A (en) Method and apparatus for displaying a light field based image on a user&#39;s device, and corresponding computer program product
WO2017203774A1 (en) Information processing device, information processing method, and storage medium
JP6310149B2 (en) Image generation apparatus, image generation system, and image generation method
EP2987322A1 (en) Handheld portable optical scanner and method of using
JP2016006627A (en) Image processor and image processing method
JP2010109783A (en) Electronic camera
US11373329B2 (en) Method of generating 3-dimensional model data
KR20120017783A (en) Method and apparatus for presenting location information on augmented reality
Zennaro Evaluation of Microsoft Kinect 360 and Microsoft Kinect One for robotics and computer vision applications
US10783170B2 (en) Geotagging a landscape photograph
JP2021523488A (en) Methods for calculating spatial coordinates of regions of interest, systems and non-transient computer-readable recording media
JP2019207531A (en) Image processing program, image processing method, and image processing apparatus
CN109710054B (en) Virtual object presenting method and device for head-mounted display equipment

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210610

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20210614

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20210614

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220518

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220705

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220831

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221227

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230222

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230224

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230328

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230410

R150 Certificate of patent or registration of utility model

Ref document number: 7273284

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150